From 196a6eb59341e4ee1f8c03ad68ad9550bf9957ae Mon Sep 17 00:00:00 2001 From: Sean Usick Date: Wed, 6 Aug 2014 14:38:10 -0500 Subject: [PATCH] add a character tokenizer for substring searches --- .gitignore | 2 + Makefile | 13 +- c/character_tokenizer.c | 204 + c/character_tokenizer.h | 35 + c/fts3_tokenizer.h | 161 + coffee/api.coffee | 6 +- coffee/exports.coffee | 3 + exported_functions | 3 +- js/api.js | 730 + js/sql-debug.js | 461001 ++++++++++++---------- js/sql-optimized.js | 519 + js/sql.js | 965 +- test-mocha/character-tokenizer.test.js | 41 + 13 files changed, 255907 insertions(+), 207776 deletions(-) create mode 100644 c/character_tokenizer.c create mode 100644 c/character_tokenizer.h create mode 100644 c/fts3_tokenizer.h create mode 100644 js/api.js create mode 100644 js/sql-optimized.js create mode 100644 test-mocha/character-tokenizer.test.js diff --git a/.gitignore b/.gitignore index a33a71fe..4a0fe3fa 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,4 @@ node_modules/ *~ +*.o +*.bc diff --git a/Makefile b/Makefile index 8d88b37c..5404a4a1 100644 --- a/Makefile +++ b/Makefile @@ -2,16 +2,16 @@ EMSCRIPTEN?=/usr/bin -EMCC=$(EMSCRIPTEN)/emcc +EMCC=emcc -CFLAGS=-DSQLITE_OMIT_LOAD_EXTENSION -DSQLITE_DISABLE_LFS -DLONGDOUBLE_TYPE=double -DSQLITE_INT64_TYPE="long long int" -DSQLITE_THREADSAFE=0 +CFLAGS=-DSQLITE_ENABLE_FTS4 -DSQLITE_OMIT_LOAD_EXTENSION -DSQLITE_DISABLE_LFS -DLONGDOUBLE_TYPE=double -DSQLITE_INT64_TYPE="long long int" -DSQLITE_THREADSAFE=0 all: js/sql.js -debug: EMFLAGS= -O1 -g -s INLINING_LIMIT=10 +debug: EMFLAGS= -O1 -g -s INLINING_LIMIT=10 -s ASSERTIONS=1 debug: js/sql-debug.js -optimized: EMFLAGS= --closure 1 -O3 -s INLINING_LIMIT=50 +optimized: EMFLAGS= --closure 1 -O3 -s INLINING_LIMIT=50 -s OUTLINING_LIMIT=20000 optimized: js/sql-optimized.js js/sql.js: optimized @@ -36,11 +36,10 @@ js/worker.sql.js: js/sql.js js/worker.js c/sqlite3.bc: c/sqlite3.c # Generate llvm bitcode - $(EMCC) $(CFLAGS) c/sqlite3.c -o c/sqlite3.bc + $(EMCC) $(CFLAGS) c/character_tokenizer.c c/sqlite3.c -o c/sqlite3.bc module.tar.gz: test package.json AUTHORS README.md js/sql.js tar --create --gzip $^ > $@ clean: - rm -rf js/sql*.js js/api.js js/sql*-raw.js c/sqlite3.bc - + rm -rf js/sql*.js c/*.o js/api.js js/sql*-raw.js c/sqlite3.bc diff --git a/c/character_tokenizer.c b/c/character_tokenizer.c new file mode 100644 index 00000000..6f1fcf72 --- /dev/null +++ b/c/character_tokenizer.c @@ -0,0 +1,204 @@ +// +// character_tokenizer.c +// +// Created by Hai Feng Kao on 4/6/13. +// All rights reserved. +// +// 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. +// +// Implementation of the "simple" full-text-search tokenizer. + +#include "sqlite3.h" +#include //for tolower +#include //for memset +#import "character_tokenizer.h" + +typedef struct character_tokenizer { + sqlite3_tokenizer base; +} character_tokenizer; + +typedef struct character_tokenizer_cursor { + sqlite3_tokenizer_cursor base; + const char *pInput; // input we are tokenizing + int nBytes; // size of the input + int iPosition; // current position in pInput + int iToken; // index of next token to be returned + char *pToken; // storage for current token +} character_tokenizer_cursor; + +static int characterCreate( + int argc, const char * const *argv, + sqlite3_tokenizer **ppTokenizer + ){ + character_tokenizer *t; + t = (character_tokenizer *) sqlite3_malloc(sizeof(*t)); + if( t == NULL + ) return SQLITE_NOMEM; + memset(t, 0, sizeof(*t)); + + *ppTokenizer = &t->base; + return SQLITE_OK; +} + +static int characterDestroy(sqlite3_tokenizer *pTokenizer){ + sqlite3_free(pTokenizer); + return SQLITE_OK; +} + +static int characterOpen( + sqlite3_tokenizer *pTokenizer, /* The tokenizer */ + const char *pInput, int nBytes, /* String to be tokenized */ + sqlite3_tokenizer_cursor **ppCursor /* OUT: Tokenization cursor */ + ){ + character_tokenizer_cursor *c; + if(pInput == 0){ + nBytes = 0; + }else if(nBytes < 0){ + nBytes = (int)strlen(pInput); + } + c = (character_tokenizer_cursor *) sqlite3_malloc(sizeof(*c)); + if(c == NULL){ + return SQLITE_NOMEM; + } + c->iToken = c->iPosition = 0; + c->pToken = NULL; + c->nBytes = nBytes; + c->pInput = pInput; + *ppCursor = &c->base; + return SQLITE_OK; +} + +static int characterClose(sqlite3_tokenizer_cursor *pCursor){ + character_tokenizer_cursor *c = (character_tokenizer_cursor *) pCursor; + + if(c->pToken != NULL){ + sqlite3_free(c->pToken); + c->pToken = NULL; + } + + sqlite3_free(c); + return SQLITE_OK; +} + +static int characterNext( + sqlite3_tokenizer_cursor *pCursor, /* Cursor returned by cusOpen */ + const char **ppToken, /* OUT: *ppToken is the token text */ + int *pnBytes, /* OUT: Number of bytes in token */ + int *piStartOffset, /* OUT: Starting offset of token */ + int *piEndOffset, /* OUT: Ending offset of token */ + int *piPosition /* OUT: Position integer of token */ + ){ + character_tokenizer_cursor *c = (character_tokenizer_cursor *) pCursor; + if(c->pToken != NULL){ + sqlite3_free(c->pToken); + c->pToken = NULL; + } + + if (c->iPosition >= c->nBytes) { + return SQLITE_DONE; + } + + int length = 1; // the size of current character, which can be at most 4 bytes + + const char* token = &(c->pInput[c->iPosition]); + *piStartOffset = c->iPosition; + + // find the beginning of next utf8 character + c->iPosition++; + while (c->iPosition < c->nBytes) { + char byte = c->pInput[c->iPosition]; + if (((byte & 0x80) == 0) || ((byte & 0xc0) == 0xc0)) { + // we have reached the first byte of next utf8 character + break; + } + length++; + c->iPosition++; + } + + c->pToken = (char *)sqlite3_malloc(length+1); + if(c->pToken == NULL){ + return SQLITE_NOMEM; + } + + c->pToken[length] = 0; + memcpy(c->pToken, token, length); + + for (int i = 0; i < length; ++i) { + unsigned char byte = c->pToken[i]; + + if (byte < 0x80) { + // ascii character, make it case-insensitive + c->pToken[i] = tolower(byte); + } + } + + *ppToken = c->pToken; + *pnBytes = length; + + *piEndOffset = *piStartOffset+length; + *piPosition = c->iToken++; + return SQLITE_OK; +} + +static const sqlite3_tokenizer_module characterTokenizerModule = { + 0, + characterCreate, + characterDestroy, + characterOpen, + characterClose, + characterNext, +}; + +void get_character_tokenizer_module(const sqlite3_tokenizer_module **ppModule){ + *ppModule = &characterTokenizerModule; +} + + +static int registerTokenizer( + sqlite3 *db, + char *zName, + const sqlite3_tokenizer_module *p + ){ + int rc; + sqlite3_stmt *pStmt; + const char *zSql = "SELECT fts3_tokenizer(?, ?)"; + + rc = sqlite3_prepare_v2(db, zSql, -1, &pStmt, 0); + if( rc!=SQLITE_OK ){ + return rc; + } + + sqlite3_bind_text(pStmt, 1, zName, -1, SQLITE_STATIC); + sqlite3_bind_blob(pStmt, 2, &p, sizeof(p), SQLITE_STATIC); + sqlite3_step(pStmt); + + return sqlite3_finalize(pStmt); +} + +int register_character_tokenizer(sqlite3 *db) { + const sqlite3_tokenizer_module *ptr; + char token_name[] = "character"; + + // get the tokenizer + get_character_tokenizer_module(&ptr); + + // register character tokenizer, note that you need to register it everytime the database is opened + return registerTokenizer(db, token_name, ptr); + +} diff --git a/c/character_tokenizer.h b/c/character_tokenizer.h new file mode 100644 index 00000000..2f3f7142 --- /dev/null +++ b/c/character_tokenizer.h @@ -0,0 +1,35 @@ +// +// character_tokenizer.h +// +// Created by Hai Feng Kao on 4/6/13. +// All rights reserved. +// +// 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. +// + +#ifndef SQLITE_CHARACTERTOKENIZER_H +#define SQLITE_CHARACTERTOKENIZER_H + +#include "fts3_tokenizer.h" + +void get_character_tokenizer_module(const sqlite3_tokenizer_module **ppModule); + +int register_character_tokenizer(sqlite3 *db); + +#endif diff --git a/c/fts3_tokenizer.h b/c/fts3_tokenizer.h new file mode 100644 index 00000000..c3f091b5 --- /dev/null +++ b/c/fts3_tokenizer.h @@ -0,0 +1,161 @@ +/* + ** 2006 July 10 + ** + ** The author disclaims copyright to this source code. + ** + ************************************************************************* + ** Defines the interface to tokenizers used by fulltext-search. There + ** are three basic components: + ** + ** sqlite3_tokenizer_module is a singleton defining the tokenizer + ** interface functions. This is essentially the class structure for + ** tokenizers. + ** + ** sqlite3_tokenizer is used to define a particular tokenizer, perhaps + ** including customization information defined at creation time. + ** + ** sqlite3_tokenizer_cursor is generated by a tokenizer to generate + ** tokens from a particular input. + */ +#ifndef _FTS3_TOKENIZER_H_ +#define _FTS3_TOKENIZER_H_ + +/* TODO(shess) Only used for SQLITE_OK and SQLITE_DONE at this time. + ** If tokenizers are to be allowed to call sqlite3_*() functions, then + ** we will need a way to register the API consistently. + */ +#include "sqlite3.h" + +/* + ** Structures used by the tokenizer interface. When a new tokenizer + ** implementation is registered, the caller provides a pointer to + ** an sqlite3_tokenizer_module containing pointers to the callback + ** functions that make up an implementation. + ** + ** When an fts3 table is created, it passes any arguments passed to + ** the tokenizer clause of the CREATE VIRTUAL TABLE statement to the + ** sqlite3_tokenizer_module.xCreate() function of the requested tokenizer + ** implementation. The xCreate() function in turn returns an + ** sqlite3_tokenizer structure representing the specific tokenizer to + ** be used for the fts3 table (customized by the tokenizer clause arguments). + ** + ** To tokenize an input buffer, the sqlite3_tokenizer_module.xOpen() + ** method is called. It returns an sqlite3_tokenizer_cursor object + ** that may be used to tokenize a specific input buffer based on + ** the tokenization rules supplied by a specific sqlite3_tokenizer + ** object. + */ +typedef struct sqlite3_tokenizer_module sqlite3_tokenizer_module; +typedef struct sqlite3_tokenizer sqlite3_tokenizer; +typedef struct sqlite3_tokenizer_cursor sqlite3_tokenizer_cursor; + +struct sqlite3_tokenizer_module { + + /* + ** Structure version. Should always be set to 0 or 1. + */ + int iVersion; + + /* + ** Create a new tokenizer. The values in the argv[] array are the + ** arguments passed to the "tokenizer" clause of the CREATE VIRTUAL + ** TABLE statement that created the fts3 table. For example, if + ** the following SQL is executed: + ** + ** CREATE .. USING fts3( ... , tokenizer arg1 arg2) + ** + ** then argc is set to 2, and the argv[] array contains pointers + ** to the strings "arg1" and "arg2". + ** + ** This method should return either SQLITE_OK (0), or an SQLite error + ** code. If SQLITE_OK is returned, then *ppTokenizer should be set + ** to point at the newly created tokenizer structure. The generic + ** sqlite3_tokenizer.pModule variable should not be initialized by + ** this callback. The caller will do so. + */ + int (*xCreate)( + int argc, /* Size of argv array */ + const char *const*argv, /* Tokenizer argument strings */ + sqlite3_tokenizer **ppTokenizer /* OUT: Created tokenizer */ + ); + + /* + ** Destroy an existing tokenizer. The fts3 module calls this method + ** exactly once for each successful call to xCreate(). + */ + int (*xDestroy)(sqlite3_tokenizer *pTokenizer); + + /* + ** Create a tokenizer cursor to tokenize an input buffer. The caller + ** is responsible for ensuring that the input buffer remains valid + ** until the cursor is closed (using the xClose() method). + */ + int (*xOpen)( + sqlite3_tokenizer *pTokenizer, /* Tokenizer object */ + const char *pInput, int nBytes, /* Input buffer */ + sqlite3_tokenizer_cursor **ppCursor /* OUT: Created tokenizer cursor */ + ); + + /* + ** Destroy an existing tokenizer cursor. The fts3 module calls this + ** method exactly once for each successful call to xOpen(). + */ + int (*xClose)(sqlite3_tokenizer_cursor *pCursor); + + /* + ** Retrieve the next token from the tokenizer cursor pCursor. This + ** method should either return SQLITE_OK and set the values of the + ** "OUT" variables identified below, or SQLITE_DONE to indicate that + ** the end of the buffer has been reached, or an SQLite error code. + ** + ** *ppToken should be set to point at a buffer containing the + ** normalized version of the token (i.e. after any case-folding and/or + ** stemming has been performed). *pnBytes should be set to the length + ** of this buffer in bytes. The input text that generated the token is + ** identified by the byte offsets returned in *piStartOffset and + ** *piEndOffset. *piStartOffset should be set to the index of the first + ** byte of the token in the input buffer. *piEndOffset should be set + ** to the index of the first byte just past the end of the token in + ** the input buffer. + ** + ** The buffer *ppToken is set to point at is managed by the tokenizer + ** implementation. It is only required to be valid until the next call + ** to xNext() or xClose(). + */ + /* TODO(shess) current implementation requires pInput to be + ** nul-terminated. This should either be fixed, or pInput/nBytes + ** should be converted to zInput. + */ + int (*xNext)( + sqlite3_tokenizer_cursor *pCursor, /* Tokenizer cursor */ + const char **ppToken, int *pnBytes, /* OUT: Normalized text for token */ + int *piStartOffset, /* OUT: Byte offset of token in input buffer */ + int *piEndOffset, /* OUT: Byte offset of end of token in input buffer */ + int *piPosition /* OUT: Number of tokens returned before this one */ + ); + + /*********************************************************************** + ** Methods below this point are only available if iVersion>=1. + */ + + /* + ** Configure the language id of a tokenizer cursor. + */ + int (*xLanguageid)(sqlite3_tokenizer_cursor *pCsr, int iLangid); +}; + +struct sqlite3_tokenizer { + const sqlite3_tokenizer_module *pModule; /* The module for this tokenizer */ + /* Tokenizer implementations will typically add additional fields */ +}; + +struct sqlite3_tokenizer_cursor { + sqlite3_tokenizer *pTokenizer; /* Tokenizer for this cursor. */ + /* Tokenizer implementations will typically add additional fields */ +}; + +int fts3_global_term_cnt(int iTerm, int iCol); +int fts3_term_cnt(int iTerm, int iCol); + + +#endif /* _FTS3_TOKENIZER_H_ */ \ No newline at end of file diff --git a/coffee/api.coffee b/coffee/api.coffee index 9de8cacc..bd0fa6d5 100644 --- a/coffee/api.coffee +++ b/coffee/api.coffee @@ -266,6 +266,10 @@ class Database @handleError sqlite3_exec @db, sql, 0, 0, apiTemp return @ + 'register_character_tokenizer' : () -> + if not @db then throw "Database closed" + register_character_tokenizer @db + ### Execute an SQL query, and returns the result. This is a wrapper against Database.prepare, Statement.step, Statement.get, @@ -331,7 +335,7 @@ class Database @param sql [String] A string of SQL text. Can contain placeholders that will be bound to the parameters given as the second argument - @param params [Array] (*optional*) Parameters to bind + @param params [Array] (*optional*) Parameters to bind to the query @param callback [Function(Object)] A function that will be called on each row of result @param done [Function] A function that will be called when all rows have been retrieved diff --git a/coffee/exports.coffee b/coffee/exports.coffee index 3290fe1a..54fa2ea0 100644 --- a/coffee/exports.coffee +++ b/coffee/exports.coffee @@ -1,5 +1,8 @@ sqlite3_open = Module['cwrap'] 'sqlite3_open', 'number', ['string', 'number'] sqlite3_close_v2 = Module['cwrap'] 'sqlite3_close_v2', 'number', ['number'] + +register_character_tokenizer = Module['cwrap'] 'register_character_tokenizer', 'number', ['number'] + sqlite3_exec = Module['cwrap'] 'sqlite3_exec', 'number', ['number', 'string', 'number', 'number', 'number'] sqlite3_free = Module['cwrap'] 'sqlite3_free', '', ['number'] diff --git a/exported_functions b/exported_functions index 7492fe5f..1e9e1e92 100644 --- a/exported_functions +++ b/exported_functions @@ -22,5 +22,6 @@ "_sqlite3_reset", "_sqlite3_clear_bindings", "_sqlite3_finalize", - "_sqlite3_close_v2" + "_sqlite3_close_v2", + "_register_character_tokenizer" ] diff --git a/js/api.js b/js/api.js new file mode 100644 index 00000000..a15a45fa --- /dev/null +++ b/js/api.js @@ -0,0 +1,730 @@ +// Generated by CoffeeScript 1.6.4 +var Database, NULL, SQLite, Statement, apiTemp, i, register_character_tokenizer, sqlite3_bind_blob, sqlite3_bind_double, sqlite3_bind_int, sqlite3_bind_parameter_index, sqlite3_bind_text, sqlite3_clear_bindings, sqlite3_close_v2, sqlite3_column_blob, sqlite3_column_bytes, sqlite3_column_double, sqlite3_column_name, sqlite3_column_text, sqlite3_column_type, sqlite3_data_count, sqlite3_errmsg, sqlite3_exec, sqlite3_finalize, sqlite3_free, sqlite3_open, sqlite3_prepare_v2, sqlite3_reset, sqlite3_step; + +apiTemp = Runtime.stackAlloc(4); + +SQLite = {}; + + +/* Represents an prepared statement. + +Prepared statements allow you to have a template sql string, +that you can execute multiple times with different parameters. + +You can't instantiate this class directly, you have to use a [Database](Database.html) +object in order to create a statement. + +**Warning**: When you close a database (using db.close()), all its statements are +closed too and become unusable. + +@see Database.html#prepare-dynamic +@see https://en.wikipedia.org/wiki/Prepared_statement + */ + +Statement = (function() { + function Statement(stmt, db) { + this.stmt = stmt; + this.db = db; + this.pos = 1; + this.allocatedmem = []; + } + + + /* Bind values to the parameters, after having reseted the statement + + SQL statements can have parameters, named *'?', '?NNN', ':VVV', '@VVV', '$VVV'*, + where NNN is a number and VVV a string. + This function binds these parameters to the given values. + + *Warning*: ':', '@', and '$' are included in the parameters names + + *# Binding values to named parameters + @example Bind values to named parameters + var stmt = db.prepare("UPDATE test SET a=@newval WHERE id BETWEEN $mini AND $maxi"); + stmt.bind({$mini:10, $maxi:20, '@newval':5}); + - Create a statement that contains parameters like '$VVV', ':VVV', '@VVV' + - Call Statement.bind with an object as parameter + + *# Binding values to parameters + @example Bind values to anonymous parameters + var stmt = db.prepare("UPDATE test SET a=? WHERE id BETWEEN ? AND ?"); + stmt.bind([5, 10, 20]); + - Create a statement that contains parameters like '?', '?NNN' + - Call Statement.bind with an array as parameter + + *# Value types + Javascript type | SQLite type + --- | --- + number | REAL, INTEGER + boolean | INTEGER + string | TEXT + Array, Uint8Array | BLOB + null | NULL + @see http://www.sqlite.org/datatype3.html + + @see http://www.sqlite.org/lang_expr.html#varparam + @param values [Array,Object] The values to bind + @return [Boolean] true if it worked + @throw [String] SQLite Error + */ + + Statement.prototype['bind'] = function(values) { + this['reset'](); + if (Array.isArray(values)) { + return this.bindFromArray(values); + } else { + return this.bindFromObject(values); + } + }; + + + /* Execute the statement, fetching the the next line of result, + that can be retrieved with [Statement.get()](#get-dynamic) . + + @return [Boolean] true if a row of result available + @throw [String] SQLite Error + */ + + Statement.prototype['step'] = function() { + var ret; + if (!this.stmt) { + throw "Statement closed"; + } + this.pos = 1; + switch (ret = sqlite3_step(this.stmt)) { + case SQLite.ROW: + return true; + case SQLite.DONE: + return false; + default: + return this.db.handleError(ret); + } + }; + + Statement.prototype.getNumber = function(pos) { + if (pos == null) { + pos = this.pos++; + } + return sqlite3_column_double(this.stmt, pos); + }; + + Statement.prototype.getString = function(pos) { + if (pos == null) { + pos = this.pos++; + } + return sqlite3_column_text(this.stmt, pos); + }; + + Statement.prototype.getBlob = function(pos) { + var i, ptr, result, size, _i; + if (pos == null) { + pos = this.pos++; + } + size = sqlite3_column_bytes(this.stmt, pos); + ptr = sqlite3_column_blob(this.stmt, pos); + result = new Uint8Array(size); + for (i = _i = 0; 0 <= size ? _i < size : _i > size; i = 0 <= size ? ++_i : --_i) { + result[i] = HEAP8[ptr + i]; + } + return result; + }; + + + /* Get one row of results of a statement. + If the first parameter is not provided, step must have been called before get. + @param [Array,Object] Optional: If set, the values will be bound to the statement, and it will be executed + @return [Array] One row of result + + @example Print all the rows of the table test to the console + + var stmt = db.prepare("SELECT * FROM test"); + while (stmt.step()) console.log(stmt.get()); + */ + + Statement.prototype['get'] = function(params) { + var field, _i, _ref, _results; + if (params != null) { + this['bind'](params) && this['step'](); + } + _results = []; + for (field = _i = 0, _ref = sqlite3_data_count(this.stmt); 0 <= _ref ? _i < _ref : _i > _ref; field = 0 <= _ref ? ++_i : --_i) { + switch (sqlite3_column_type(this.stmt, field)) { + case SQLite.INTEGER: + case SQLite.FLOAT: + _results.push(this.getNumber(field)); + break; + case SQLite.TEXT: + _results.push(this.getString(field)); + break; + case SQLite.BLOB: + _results.push(this.getBlob(field)); + break; + default: + _results.push(null); + } + } + return _results; + }; + + + /* Get the list of column names of a row of result of a statement. + @return [Array] The names of the columns + @example + + var stmt = db.prepare("SELECT 5 AS nbr, x'616200' AS data, NULL AS nothing;"); + stmt.step(); // Execute the statement + console.log(stmt.getColumnNames()); // Will print ['nbr','data','nothing'] + */ + + Statement.prototype['getColumnNames'] = function() { + var i, _i, _ref, _results; + _results = []; + for (i = _i = 0, _ref = sqlite3_data_count(this.stmt); 0 <= _ref ? _i < _ref : _i > _ref; i = 0 <= _ref ? ++_i : --_i) { + _results.push(sqlite3_column_name(this.stmt, i)); + } + return _results; + }; + + + /* Get one row of result as a javascript object, associating column names with + their value in the current row. + @param [Array,Object] Optional: If set, the values will be bound to the statement, and it will be executed + @return [Object] The row of result + @see [Statement.get](#get-dynamic) + + @example + + var stmt = db.prepare("SELECT 5 AS nbr, x'616200' AS data, NULL AS nothing;"); + stmt.step(); // Execute the statement + console.log(stmt.getAsObject()); // Will print {nbr:5, data: Uint8Array([1,2,3]), nothing:null} + */ + + Statement.prototype['getAsObject'] = function(params) { + var i, name, names, rowObject, values, _i, _len; + values = this['get'](params); + names = this['getColumnNames'](); + rowObject = {}; + for (i = _i = 0, _len = names.length; _i < _len; i = ++_i) { + name = names[i]; + rowObject[name] = values[i]; + } + return rowObject; + }; + + + /* Shorthand for bind + step + reset + Bind the values, execute the statement, ignoring the rows it returns, and resets it + @param [Array,Object] Value to bind to the statement + */ + + Statement.prototype['run'] = function(values) { + if (values != null) { + this['bind'](values); + } + this['step'](); + return this['reset'](); + }; + + Statement.prototype.bindString = function(string, pos) { + var bytes, strptr; + if (pos == null) { + pos = this.pos++; + } + bytes = intArrayFromString(string); + this.allocatedmem.push(strptr = allocate(bytes, 'i8', ALLOC_NORMAL)); + this.db.handleError(sqlite3_bind_text(this.stmt, pos, strptr, bytes.length - 1, 0)); + return true; + }; + + Statement.prototype.bindBlob = function(array, pos) { + var blobptr; + if (pos == null) { + pos = this.pos++; + } + this.allocatedmem.push(blobptr = allocate(array, 'i8', ALLOC_NORMAL)); + this.db.handleError(sqlite3_bind_blob(this.stmt, pos, blobptr, array.length, 0)); + return true; + }; + + Statement.prototype.bindNumber = function(num, pos) { + var bindfunc; + if (pos == null) { + pos = this.pos++; + } + bindfunc = num === (num | 0) ? sqlite3_bind_int : sqlite3_bind_double; + this.db.handleError(bindfunc(this.stmt, pos, num)); + return true; + }; + + Statement.prototype.bindNull = function(pos) { + if (pos == null) { + pos = this.pos++; + } + return sqlite3_bind_blob(this.stmt, pos, 0, 0, 0) === SQLite.OK; + }; + + Statement.prototype.bindValue = function(val, pos) { + if (pos == null) { + pos = this.pos++; + } + switch (typeof val) { + case "string": + return this.bindString(val, pos); + case "number": + case "boolean": + return this.bindNumber(val + 0, pos); + case "object": + if (val === null) { + this.bindNull(pos); + } + if (val.length != null) { + return this.bindBlob(val, pos); + } else { + throw "Wrong API use : tried to bind a value of an unknown type (" + val + ")."; + } + } + }; + + + /* Bind names and values of an object to the named parameters of the statement + @param [Object] + @private + @nodoc + */ + + Statement.prototype.bindFromObject = function(valuesObj) { + var name, num, value; + for (name in valuesObj) { + value = valuesObj[name]; + num = sqlite3_bind_parameter_index(this.stmt, name); + if (num !== 0) { + this.bindValue(value, num); + } + } + return true; + }; + + + /* Bind values to numbered parameters + @param [Array] + @private + @nodoc + */ + + Statement.prototype.bindFromArray = function(values) { + var num, value, _i, _len; + for (num = _i = 0, _len = values.length; _i < _len; num = ++_i) { + value = values[num]; + this.bindValue(value, num + 1); + } + return true; + }; + + + /* Reset a statement, so that it's parameters can be bound to new values + It also clears all previous bindings, freeing the memory used by bound parameters. + */ + + Statement.prototype['reset'] = function() { + this.freemem(); + return sqlite3_clear_bindings(this.stmt) === SQLite.OK && sqlite3_reset(this.stmt) === SQLite.OK; + }; + + + /* Free the memory allocated during parameter binding + */ + + Statement.prototype.freemem = function() { + var mem; + while (mem = this.allocatedmem.pop()) { + _free(mem); + } + return null; + }; + + + /* Free the memory used by the statement + @return [Boolean] true in case of success + */ + + Statement.prototype['free'] = function() { + var res; + this.freemem(); + res = sqlite3_finalize(this.stmt) === SQLite.OK; + delete this.db.statements[this.stmt]; + this.stmt = NULL; + return res; + }; + + return Statement; + +})(); + +Database = (function() { + function Database(data) { + this.filename = 'dbfile_' + (0xffffffff * Math.random() >>> 0); + if (data != null) { + FS.createDataFile('/', this.filename, data, true, true); + } + this.handleError(sqlite3_open(this.filename, apiTemp)); + this.db = getValue(apiTemp, 'i32'); + this.statements = {}; + } + + + /* Execute an SQL query, ignoring the rows it returns. + + @param sql [String] a string containing some SQL text to execute + @param params [Array] (*optional*) When the SQL statement contains placeholders, you can pass them in here. They will be bound to the statement before it is executed. + + If you use the params argument, you **cannot** provide an sql string that contains several + queries (separated by ';') + + @example Insert values in a table + db.run("INSERT INTO test VALUES (:age, :name)", {':age':18, ':name':'John'}); + + @return [Database] The database object (usefull for method chaining) + */ + + Database.prototype['run'] = function(sql, params) { + var stmt; + if (!this.db) { + throw "Database closed"; + } + if (params) { + stmt = this['prepare'](sql, params); + stmt['step'](); + stmt['free'](); + } else { + this.handleError(sqlite3_exec(this.db, sql, 0, 0, apiTemp)); + } + return this; + }; + + Database.prototype['register_character_tokenizer'] = function() { + if (!this.db) { + throw "Database closed"; + } + return register_character_tokenizer(this.db); + }; + + + /* Execute an SQL query, and returns the result. + + This is a wrapper against Database.prepare, Statement.step, Statement.get, + and Statement.free. + + The result is an array of result elements. There are as many result elements + as the number of statements in your sql string (statements are separated by a semicolon) + + Each result element is an object with two properties: + 'columns' : the name of the columns of the result (as returned by Statement.getColumnNames()) + 'values' : an array of rows. Each row is itself an array of values + + *# Example use + We have the following table, named *test* : + + | id | age | name | + |:--:|:---:|:------:| + | 1 | 1 | Ling | + | 2 | 18 | Paul | + | 3 | 3 | Markus | + + + We query it like that: + ```javascript + var db = new SQL.Database(); + var res = db.exec("SELECT id FROM test; SELECT age,name FROM test;"); + ``` + + `res` is now : + ```javascript + [ + {columns: ['id'], values:[[1],[2],[3]]}, + {columns: ['age','name'], values:[[1,'Ling'],[18,'Paul'],[3,'Markus']]} + ] + ``` + + @param sql [String] a string containing some SQL text to execute + @return [Array] An array of results. + */ + + Database.prototype['exec'] = function(sql) { + var curresult, err, results, sqlstr, stmt, _i, _len, _ref; + if (!this.db) { + throw "Database closed"; + } + results = []; + _ref = sql.split(';'); + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + sqlstr = _ref[_i]; + try { + stmt = this['prepare'](sqlstr); + } catch (_error) { + err = _error; + if (err === 'Nothing to prepare') { + continue; + } else { + throw err; + } + } + curresult = null; + while (stmt['step']()) { + if (curresult === null) { + curresult = { + 'columns': stmt['getColumnNames'](), + 'values': [] + }; + results.push(curresult); + } + curresult['values'].push(stmt['get']()); + } + stmt['free'](); + } + return results; + }; + + + /* Execute an sql statement, and call a callback for each row of result. + + **Currently** this method is synchronous, it will not return until the callback has + been called on every row of the result. But this might change. + + @param sql [String] A string of SQL text. Can contain placeholders that will be + bound to the parameters given as the second argument + @param params [Array] (*optional*) Parameters to bind + to the query + @param callback [Function(Object)] A function that will be called on each row of result + @param done [Function] A function that will be called when all rows have been retrieved + + @return [Database] The database object. Usefull for method chaining + + @example Read values from a table + db.each("SELECT name,age FROM users WHERE age >= $majority", + {$majority:18}, + function(row){console.log(row.name + " is a grown-up.")} + ); + */ + + Database.prototype['each'] = function(sql, params, callback, done) { + var stmt; + if (typeof params === 'function') { + done = callback; + callback = params; + params = void 0; + } + stmt = this['prepare'](sql, params); + while (stmt['step']()) { + callback(stmt['getAsObject']()); + } + stmt['free'](); + if (typeof done === 'function') { + return done(); + } + }; + + + /* Prepare an SQL statement + @param sql [String] a string of SQL, that can contain placeholders ('?', ':VVV', ':AAA', '@AAA') + @param params [Array] (*optional*) values to bind to placeholders + @return [Statement] the resulting statement + @throw [String] SQLite error + */ + + Database.prototype['prepare'] = function(sql, params) { + var pStmt, stmt; + setValue(apiTemp, 0, 'i32'); + this.handleError(sqlite3_prepare_v2(this.db, sql, -1, apiTemp, NULL)); + pStmt = getValue(apiTemp, 'i32'); + if (pStmt === NULL) { + throw 'Nothing to prepare'; + } + stmt = new Statement(pStmt, this); + if (params != null) { + stmt.bind(params); + } + this.statements[pStmt] = stmt; + return stmt; + }; + + + /* Exports the contents of the database to a binary array + @return [Uint8Array] An array of bytes of the SQLite3 database file + */ + + Database.prototype['export'] = function() { + return new Uint8Array(FS.root.contents[this.filename].contents); + }; + + + /* Close the database, and all associated prepared statements. + + The memory associated to the database and all associated statements + will be freed. + + **Warning**: A statement belonging to a database that has been closed cannot + be used anymore. + + Databases **must** be closed, when you're finished with them, or the + memory consumption will grow forever + */ + + Database.prototype['close'] = function() { + var stmt, _, _ref; + _ref = this.statements; + for (_ in _ref) { + stmt = _ref[_]; + stmt['free'](); + } + this.handleError(sqlite3_close_v2(this.db)); + FS.unlink('/' + this.filename); + return this.db = null; + }; + + + /* Analyze a result code, return null if no error occured, and throw + an error with a descriptive message otherwise + @nodoc + */ + + Database.prototype.handleError = function(returnCode) { + var errmsg; + if (returnCode === SQLite.OK) { + return null; + } else { + errmsg = sqlite3_errmsg(this.db); + throw new Error(errmsg); + } + }; + + return Database; + +})(); + +sqlite3_open = Module['cwrap']('sqlite3_open', 'number', ['string', 'number']); + +sqlite3_close_v2 = Module['cwrap']('sqlite3_close_v2', 'number', ['number']); + +register_character_tokenizer = Module['cwrap']('register_character_tokenizer', 'number', ['number']); + +sqlite3_exec = Module['cwrap']('sqlite3_exec', 'number', ['number', 'string', 'number', 'number', 'number']); + +sqlite3_free = Module['cwrap']('sqlite3_free', '', ['number']); + +sqlite3_prepare_v2 = Module['cwrap']('sqlite3_prepare_v2', 'number', ['number', 'string', 'number', 'number', 'number']); + +sqlite3_bind_text = Module['cwrap']('sqlite3_bind_text', 'number', ['number', 'number', 'number', 'number', 'number']); + +sqlite3_bind_blob = Module['cwrap']('sqlite3_bind_blob', 'number', ['number', 'number', 'number', 'number', 'number']); + +sqlite3_bind_double = Module['cwrap']('sqlite3_bind_double', 'number', ['number', 'number', 'number']); + +sqlite3_bind_int = Module['cwrap']('sqlite3_bind_int', 'number', ['number', 'number', 'number']); + +sqlite3_bind_parameter_index = Module['cwrap']('sqlite3_bind_parameter_index', 'number', ['number', 'string']); + +sqlite3_step = Module['cwrap']('sqlite3_step', 'number', ['number']); + +sqlite3_errmsg = Module['cwrap']('sqlite3_errmsg', 'string', ['number']); + +sqlite3_data_count = Module['cwrap']('sqlite3_data_count', 'number', ['number']); + +sqlite3_column_double = Module['cwrap']('sqlite3_column_double', 'number', ['number', 'number']); + +sqlite3_column_text = Module['cwrap']('sqlite3_column_text', 'string', ['number', 'number']); + +sqlite3_column_blob = Module['cwrap']('sqlite3_column_blob', 'number', ['number', 'number']); + +sqlite3_column_bytes = Module['cwrap']('sqlite3_column_bytes', 'number', ['number', 'number']); + +sqlite3_column_type = Module['cwrap']('sqlite3_column_type', 'number', ['number', 'number']); + +sqlite3_column_name = Module['cwrap']('sqlite3_column_name', 'string', ['number', 'number']); + +sqlite3_reset = Module['cwrap']('sqlite3_reset', 'number', ['number']); + +sqlite3_clear_bindings = Module['cwrap']('sqlite3_clear_bindings', 'number', ['number']); + +sqlite3_finalize = Module['cwrap']('sqlite3_finalize', 'number', ['number']); + +this['SQL'] = { + 'Database': Database +}; + +for (i in this['SQL']) { + Module[i] = this['SQL'][i]; +} + +NULL = 0; + +SQLite.OK = 0; + +SQLite.ERROR = 1; + +SQLite.INTERNAL = 2; + +SQLite.PERM = 3; + +SQLite.ABORT = 4; + +SQLite.BUSY = 5; + +SQLite.LOCKED = 6; + +SQLite.NOMEM = 7; + +SQLite.READONLY = 8; + +SQLite.INTERRUPT = 9; + +SQLite.IOERR = 10; + +SQLite.CORRUPT = 11; + +SQLite.NOTFOUND = 12; + +SQLite.FULL = 13; + +SQLite.CANTOPEN = 14; + +SQLite.PROTOCOL = 15; + +SQLite.EMPTY = 16; + +SQLite.SCHEMA = 17; + +SQLite.TOOBIG = 18; + +SQLite.CONSTRAINT = 19; + +SQLite.MISMATCH = 20; + +SQLite.MISUSE = 21; + +SQLite.NOLFS = 22; + +SQLite.AUTH = 23; + +SQLite.FORMAT = 24; + +SQLite.RANGE = 25; + +SQLite.NOTADB = 26; + +SQLite.NOTICE = 27; + +SQLite.WARNING = 28; + +SQLite.ROW = 100; + +SQLite.DONE = 101; + +SQLite.INTEGER = 1; + +SQLite.FLOAT = 2; + +SQLite.TEXT = 3; + +SQLite.BLOB = 4; + +SQLite.NULL = 5; diff --git a/js/sql-debug.js b/js/sql-debug.js index 4d13aa45..6ec350f6 100644 --- a/js/sql-debug.js +++ b/js/sql-debug.js @@ -1,207321 +1,253690 @@ // This prevents pollution of the global namespace var SQL = (function () { -// The Module object: Our interface to the outside world. We import -// and export values on it, and do the work to get that through -// closure compiler if necessary. There are various ways Module can be used: -// 1. Not defined. We create it here -// 2. A function parameter, function(Module) { ..generated code.. } -// 3. pre-run appended it, var Module = {}; ..generated code.. -// 4. External script tag defines var Module. -// We need to do an eval in order to handle the closure compiler -// case, where this code here is minified but Module was defined -// elsewhere (e.g. case 4 above). We also need to check if Module -// already exists (e.g. case 3 above). -// Note that if you want to run closure, and also to use Module -// after the generated code, you will need to define var Module = {}; -// before the code. Then that object will be used in the code, and you -// can continue to use Module afterwards as well. -var Module; -if (!Module) Module = (typeof Module !== 'undefined' ? Module : null) || {}; - -// Sometimes an existing Module object exists with properties -// meant to overwrite the default module functionality. Here -// we collect those properties and reapply _after_ we configure -// the current environment's defaults to avoid having to be so -// defensive during initialization. -var moduleOverrides = {}; -for (var key in Module) { - if (Module.hasOwnProperty(key)) { - moduleOverrides[key] = Module[key]; - } -} - -// The environment setup code below is customized to use Module. -// *** Environment setup code *** -var ENVIRONMENT_IS_NODE = typeof process === 'object' && typeof require === 'function'; -var ENVIRONMENT_IS_WEB = typeof window === 'object'; -var ENVIRONMENT_IS_WORKER = typeof importScripts === 'function'; -var ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER; - -if (ENVIRONMENT_IS_NODE) { - // Expose functionality in the same simple way that the shells work - // Note that we pollute the global namespace here, otherwise we break in node - if (!Module['print']) Module['print'] = function print(x) { - process['stdout'].write(x + '\n'); - }; - if (!Module['printErr']) Module['printErr'] = function printErr(x) { - process['stderr'].write(x + '\n'); - }; - - var nodeFS = require('fs'); - var nodePath = require('path'); - - Module['read'] = function read(filename, binary) { - filename = nodePath['normalize'](filename); - var ret = nodeFS['readFileSync'](filename); - // The path is absolute if the normalized version is the same as the resolved. - if (!ret && filename != nodePath['resolve'](filename)) { - filename = path.join(__dirname, '..', 'src', filename); - ret = nodeFS['readFileSync'](filename); - } - if (ret && !binary) ret = ret.toString(); - return ret; - }; - - Module['readBinary'] = function readBinary(filename) { return Module['read'](filename, true) }; - - Module['load'] = function load(f) { - globalEval(read(f)); - }; - - Module['thisProgram'] = process['argv'][1]; - Module['arguments'] = process['argv'].slice(2); - - module['exports'] = Module; -} -else if (ENVIRONMENT_IS_SHELL) { - if (!Module['print']) Module['print'] = print; - if (typeof printErr != 'undefined') Module['printErr'] = printErr; // not present in v8 or older sm - - if (typeof read != 'undefined') { - Module['read'] = read; - } else { - Module['read'] = function read() { throw 'no read() available (jsc?)' }; - } - - Module['readBinary'] = function readBinary(f) { - return read(f, 'binary'); - }; - - if (typeof scriptArgs != 'undefined') { - Module['arguments'] = scriptArgs; - } else if (typeof arguments != 'undefined') { - Module['arguments'] = arguments; - } - - this['Module'] = Module; - -} -else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { - Module['read'] = function read(url) { - var xhr = new XMLHttpRequest(); - xhr.open('GET', url, false); - xhr.send(null); - return xhr.responseText; - }; - - if (typeof arguments != 'undefined') { - Module['arguments'] = arguments; - } - - if (typeof console !== 'undefined') { - if (!Module['print']) Module['print'] = function print(x) { - console.log(x); - }; - if (!Module['printErr']) Module['printErr'] = function printErr(x) { - console.log(x); - }; - } else { - // Probably a worker, and without console.log. We can do very little here... - var TRY_USE_DUMP = false; - if (!Module['print']) Module['print'] = (TRY_USE_DUMP && (typeof(dump) !== "undefined") ? (function(x) { - dump(x); - }) : (function(x) { - // self.postMessage(x); // enable this if you want stdout to be sent as messages - })); - } - - if (ENVIRONMENT_IS_WEB) { - window['Module'] = Module; - } else { - Module['load'] = importScripts; - } -} -else { - // Unreachable because SHELL is dependant on the others - throw 'Unknown runtime environment. Where are we?'; -} - -function globalEval(x) { - eval.call(null, x); -} -if (!Module['load'] == 'undefined' && Module['read']) { - Module['load'] = function load(f) { - globalEval(Module['read'](f)); - }; -} -if (!Module['print']) { - Module['print'] = function(){}; -} -if (!Module['printErr']) { - Module['printErr'] = Module['print']; -} -if (!Module['arguments']) { - Module['arguments'] = []; -} -// *** Environment setup code *** - -// Closure helpers -Module.print = Module['print']; -Module.printErr = Module['printErr']; - -// Callbacks -Module['preRun'] = []; -Module['postRun'] = []; - -// Merge back in the overrides -for (var key in moduleOverrides) { - if (moduleOverrides.hasOwnProperty(key)) { - Module[key] = moduleOverrides[key]; - } -} - - - -// === Auto-generated preamble library stuff === - -//======================================== -// Runtime code shared with compiler -//======================================== - -var Runtime = { - setTempRet0: function (value) { - tempRet0 = value; - }, - getTempRet0: function () { - return tempRet0; - }, - stackSave: function () { - return STACKTOP; - }, - stackRestore: function (stackTop) { - STACKTOP = stackTop; - }, - forceAlign: function (target, quantum) { - quantum = quantum || 4; - if (quantum == 1) return target; - if (isNumber(target) && isNumber(quantum)) { - return Math.ceil(target/quantum)*quantum; - } else if (isNumber(quantum) && isPowerOfTwo(quantum)) { - return '(((' +target + ')+' + (quantum-1) + ')&' + -quantum + ')'; - } - return 'Math.ceil((' + target + ')/' + quantum + ')*' + quantum; - }, - isNumberType: function (type) { - return type in Runtime.INT_TYPES || type in Runtime.FLOAT_TYPES; - }, - isPointerType: function isPointerType(type) { - return type[type.length-1] == '*'; -}, - isStructType: function isStructType(type) { - if (isPointerType(type)) return false; - if (isArrayType(type)) return true; - if (/?/.test(type)) return true; // { i32, i8 } etc. - anonymous struct types - // See comment in isStructPointerType() - return type[0] == '%'; -}, - INT_TYPES: {"i1":0,"i8":0,"i16":0,"i32":0,"i64":0}, - FLOAT_TYPES: {"float":0,"double":0}, - or64: function (x, y) { - var l = (x | 0) | (y | 0); - var h = (Math.round(x / 4294967296) | Math.round(y / 4294967296)) * 4294967296; - return l + h; - }, - and64: function (x, y) { - var l = (x | 0) & (y | 0); - var h = (Math.round(x / 4294967296) & Math.round(y / 4294967296)) * 4294967296; - return l + h; - }, - xor64: function (x, y) { - var l = (x | 0) ^ (y | 0); - var h = (Math.round(x / 4294967296) ^ Math.round(y / 4294967296)) * 4294967296; - return l + h; - }, - getNativeTypeSize: function (type) { - switch (type) { - case 'i1': case 'i8': return 1; - case 'i16': return 2; - case 'i32': return 4; - case 'i64': return 8; - case 'float': return 4; - case 'double': return 8; - default: { - if (type[type.length-1] === '*') { - return Runtime.QUANTUM_SIZE; // A pointer - } else if (type[0] === 'i') { - var bits = parseInt(type.substr(1)); - assert(bits % 8 === 0); - return bits/8; - } else { - return 0; - } - } - } - }, - getNativeFieldSize: function (type) { - return Math.max(Runtime.getNativeTypeSize(type), Runtime.QUANTUM_SIZE); - }, - dedup: function dedup(items, ident) { - var seen = {}; - if (ident) { - return items.filter(function(item) { - if (seen[item[ident]]) return false; - seen[item[ident]] = true; - return true; - }); - } else { - return items.filter(function(item) { - if (seen[item]) return false; - seen[item] = true; - return true; - }); - } -}, - set: function set() { - var args = typeof arguments[0] === 'object' ? arguments[0] : arguments; - var ret = {}; - for (var i = 0; i < args.length; i++) { - ret[args[i]] = 0; - } - return ret; -}, - STACK_ALIGN: 8, - getAlignSize: function (type, size, vararg) { - // we align i64s and doubles on 64-bit boundaries, unlike x86 - if (!vararg && (type == 'i64' || type == 'double')) return 8; - if (!type) return Math.min(size, 8); // align structures internally to 64 bits - return Math.min(size || (type ? Runtime.getNativeFieldSize(type) : 0), Runtime.QUANTUM_SIZE); - }, - calculateStructAlignment: function calculateStructAlignment(type) { - type.flatSize = 0; - type.alignSize = 0; - var diffs = []; - var prev = -1; - var index = 0; - type.flatIndexes = type.fields.map(function(field) { - index++; - var size, alignSize; - if (Runtime.isNumberType(field) || Runtime.isPointerType(field)) { - size = Runtime.getNativeTypeSize(field); // pack char; char; in structs, also char[X]s. - alignSize = Runtime.getAlignSize(field, size); - } else if (Runtime.isStructType(field)) { - if (field[1] === '0') { - // this is [0 x something]. When inside another structure like here, it must be at the end, - // and it adds no size - // XXX this happens in java-nbody for example... assert(index === type.fields.length, 'zero-length in the middle!'); - size = 0; - if (Types.types[field]) { - alignSize = Runtime.getAlignSize(null, Types.types[field].alignSize); - } else { - alignSize = type.alignSize || QUANTUM_SIZE; - } - } else { - size = Types.types[field].flatSize; - alignSize = Runtime.getAlignSize(null, Types.types[field].alignSize); - } - } else if (field[0] == 'b') { - // bN, large number field, like a [N x i8] - size = field.substr(1)|0; - alignSize = 1; - } else if (field[0] === '<') { - // vector type - size = alignSize = Types.types[field].flatSize; // fully aligned - } else if (field[0] === 'i') { - // illegal integer field, that could not be legalized because it is an internal structure field - // it is ok to have such fields, if we just use them as markers of field size and nothing more complex - size = alignSize = parseInt(field.substr(1))/8; - assert(size % 1 === 0, 'cannot handle non-byte-size field ' + field); - } else { - assert(false, 'invalid type for calculateStructAlignment'); - } - if (type.packed) alignSize = 1; - type.alignSize = Math.max(type.alignSize, alignSize); - var curr = Runtime.alignMemory(type.flatSize, alignSize); // if necessary, place this on aligned memory - type.flatSize = curr + size; - if (prev >= 0) { - diffs.push(curr-prev); - } - prev = curr; - return curr; - }); - if (type.name_ && type.name_[0] === '[') { - // arrays have 2 elements, so we get the proper difference. then we scale here. that way we avoid - // allocating a potentially huge array for [999999 x i8] etc. - type.flatSize = parseInt(type.name_.substr(1))*type.flatSize/2; - } - type.flatSize = Runtime.alignMemory(type.flatSize, type.alignSize); - if (diffs.length == 0) { - type.flatFactor = type.flatSize; - } else if (Runtime.dedup(diffs).length == 1) { - type.flatFactor = diffs[0]; - } - type.needsFlattening = (type.flatFactor != 1); - return type.flatIndexes; - }, - generateStructInfo: function (struct, typeName, offset) { - var type, alignment; - if (typeName) { - offset = offset || 0; - type = (typeof Types === 'undefined' ? Runtime.typeInfo : Types.types)[typeName]; - if (!type) return null; - if (type.fields.length != struct.length) { - printErr('Number of named fields must match the type for ' + typeName + ': possibly duplicate struct names. Cannot return structInfo'); - return null; - } - alignment = type.flatIndexes; - } else { - var type = { fields: struct.map(function(item) { return item[0] }) }; - alignment = Runtime.calculateStructAlignment(type); - } - var ret = { - __size__: type.flatSize - }; - if (typeName) { - struct.forEach(function(item, i) { - if (typeof item === 'string') { - ret[item] = alignment[i] + offset; - } else { - // embedded struct - var key; - for (var k in item) key = k; - ret[key] = Runtime.generateStructInfo(item[key], type.fields[i], alignment[i]); - } - }); - } else { - struct.forEach(function(item, i) { - ret[item[1]] = alignment[i]; - }); - } - return ret; - }, - dynCall: function (sig, ptr, args) { - if (args && args.length) { - if (!args.splice) args = Array.prototype.slice.call(args); - args.splice(0, 0, ptr); - return Module['dynCall_' + sig].apply(null, args); - } else { - return Module['dynCall_' + sig].call(null, ptr); - } - }, - functionPointers: [], - addFunction: function (func) { - for (var i = 0; i < Runtime.functionPointers.length; i++) { - if (!Runtime.functionPointers[i]) { - Runtime.functionPointers[i] = func; - return 2*(1 + i); - } - } - throw 'Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS.'; - }, - removeFunction: function (index) { - Runtime.functionPointers[(index-2)/2] = null; - }, - getAsmConst: function (code, numArgs) { - // code is a constant string on the heap, so we can cache these - if (!Runtime.asmConstCache) Runtime.asmConstCache = {}; - var func = Runtime.asmConstCache[code]; - if (func) return func; - var args = []; - for (var i = 0; i < numArgs; i++) { - args.push(String.fromCharCode(36) + i); // $0, $1 etc - } - var source = Pointer_stringify(code); - if (source[0] === '"') { - // tolerate EM_ASM("..code..") even though EM_ASM(..code..) is correct - if (source.indexOf('"', 1) === source.length-1) { - source = source.substr(1, source.length-2); - } else { - // something invalid happened, e.g. EM_ASM("..code($0)..", input) - abort('invalid EM_ASM input |' + source + '|. Please use EM_ASM(..code..) (no quotes) or EM_ASM({ ..code($0).. }, input) (to input values)'); - } - } - try { - var evalled = eval('(function(' + args.join(',') + '){ ' + source + ' })'); // new Function does not allow upvars in node - } catch(e) { - Module.printErr('error in executing inline EM_ASM code: ' + e + ' on: \n\n' + source + '\n\nwith args |' + args + '| (make sure to use the right one out of EM_ASM, EM_ASM_ARGS, etc.)'); - throw e; - } - return Runtime.asmConstCache[code] = evalled; - }, - warnOnce: function (text) { - if (!Runtime.warnOnce.shown) Runtime.warnOnce.shown = {}; - if (!Runtime.warnOnce.shown[text]) { - Runtime.warnOnce.shown[text] = 1; - Module.printErr(text); - } - }, - funcWrappers: {}, - getFuncWrapper: function (func, sig) { - assert(sig); - if (!Runtime.funcWrappers[func]) { - Runtime.funcWrappers[func] = function dynCall_wrapper() { - return Runtime.dynCall(sig, func, arguments); - }; - } - return Runtime.funcWrappers[func]; - }, - UTF8Processor: function () { - var buffer = []; - var needed = 0; - this.processCChar = function (code) { - code = code & 0xFF; - - if (buffer.length == 0) { - if ((code & 0x80) == 0x00) { // 0xxxxxxx - return String.fromCharCode(code); - } - buffer.push(code); - if ((code & 0xE0) == 0xC0) { // 110xxxxx - needed = 1; - } else if ((code & 0xF0) == 0xE0) { // 1110xxxx - needed = 2; - } else { // 11110xxx - needed = 3; - } - return ''; - } - - if (needed) { - buffer.push(code); - needed--; - if (needed > 0) return ''; - } - - var c1 = buffer[0]; - var c2 = buffer[1]; - var c3 = buffer[2]; - var c4 = buffer[3]; - var ret; - if (buffer.length == 2) { - ret = String.fromCharCode(((c1 & 0x1F) << 6) | (c2 & 0x3F)); - } else if (buffer.length == 3) { - ret = String.fromCharCode(((c1 & 0x0F) << 12) | ((c2 & 0x3F) << 6) | (c3 & 0x3F)); - } else { - // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae - var codePoint = ((c1 & 0x07) << 18) | ((c2 & 0x3F) << 12) | - ((c3 & 0x3F) << 6) | (c4 & 0x3F); - ret = String.fromCharCode( - Math.floor((codePoint - 0x10000) / 0x400) + 0xD800, - (codePoint - 0x10000) % 0x400 + 0xDC00); - } - buffer.length = 0; - return ret; - } - this.processJSString = function processJSString(string) { - /* TODO: use TextEncoder when present, - var encoder = new TextEncoder(); - encoder['encoding'] = "utf-8"; - var utf8Array = encoder['encode'](aMsg.data); - */ - string = unescape(encodeURIComponent(string)); - var ret = []; - for (var i = 0; i < string.length; i++) { - ret.push(string.charCodeAt(i)); - } - return ret; - } - }, - getCompilerSetting: function (name) { - throw 'You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work'; - }, - stackAlloc: function (size) { var ret = STACKTOP;STACKTOP = (STACKTOP + size)|0;STACKTOP = (((STACKTOP)+7)&-8); return ret; }, - staticAlloc: function (size) { var ret = STATICTOP;STATICTOP = (STATICTOP + size)|0;STATICTOP = (((STATICTOP)+7)&-8); return ret; }, - dynamicAlloc: function (size) { var ret = DYNAMICTOP;DYNAMICTOP = (DYNAMICTOP + size)|0;DYNAMICTOP = (((DYNAMICTOP)+7)&-8); if (DYNAMICTOP >= TOTAL_MEMORY) enlargeMemory();; return ret; }, - alignMemory: function (size,quantum) { var ret = size = Math.ceil((size)/(quantum ? quantum : 8))*(quantum ? quantum : 8); return ret; }, - makeBigInt: function (low,high,unsigned) { var ret = (unsigned ? ((+((low>>>0)))+((+((high>>>0)))*4294967296.0)) : ((+((low>>>0)))+((+((high|0)))*4294967296.0))); return ret; }, - GLOBAL_BASE: 8, - QUANTUM_SIZE: 4, - __dummy__: 0 -} - - -Module['Runtime'] = Runtime; - - - - - - - - - -//======================================== -// Runtime essentials -//======================================== - -var __THREW__ = 0; // Used in checking for thrown exceptions. - -var ABORT = false; // whether we are quitting the application. no code should run after this. set in exit() and abort() -var EXITSTATUS = 0; - -var undef = 0; -// tempInt is used for 32-bit signed values or smaller. tempBigInt is used -// for 32-bit unsigned values or more than 32 bits. TODO: audit all uses of tempInt -var tempValue, tempInt, tempBigInt, tempInt2, tempBigInt2, tempPair, tempBigIntI, tempBigIntR, tempBigIntS, tempBigIntP, tempBigIntD, tempDouble, tempFloat; -var tempI64, tempI64b; -var tempRet0, tempRet1, tempRet2, tempRet3, tempRet4, tempRet5, tempRet6, tempRet7, tempRet8, tempRet9; - -function assert(condition, text) { - if (!condition) { - abort('Assertion failed: ' + text); - } -} - -var globalScope = this; - -// Returns the C function with a specified identifier (for C++, you need to do manual name mangling) -function getCFunc(ident) { - var func = Module['_' + ident]; // closure exported function - if (!func) { - try { - func = eval('_' + ident); // explicit lookup - } catch(e) {} - } - assert(func, 'Cannot call unknown function ' + ident + ' (perhaps LLVM optimizations or closure removed it?)'); - return func; -} - -var cwrap, ccall; -(function(){ - var stack = 0; - var JSfuncs = { - 'stackSave' : function() { - stack = Runtime.stackSave(); - }, - 'stackRestore' : function() { - Runtime.stackRestore(stack); - }, - // type conversion from js to c - 'arrayToC' : function(arr) { - var ret = Runtime.stackAlloc(arr.length); - writeArrayToMemory(arr, ret); - return ret; - }, - 'stringToC' : function(str) { - var ret = 0; - if (str !== null && str !== undefined && str !== 0) { // null string - ret = Runtime.stackAlloc(str.length + 1); // +1 for the trailing '\0' - writeStringToMemory(str, ret); - } - return ret; - } - }; - // For fast lookup of conversion functions - var toC = {'string' : JSfuncs['stringToC'], 'array' : JSfuncs['arrayToC']}; - - // C calling interface. A convenient way to call C functions (in C files, or - // defined with extern "C"). - // - // Note: ccall/cwrap use the C stack for temporary values. If you pass a string - // then it is only alive until the call is complete. If the code being - // called saves the pointer to be used later, it may point to invalid - // data. If you need a string to live forever, you can create it (and - // must later delete it manually!) using malloc and writeStringToMemory, - // for example. - // - // Note: LLVM optimizations can inline and remove functions, after which you will not be - // able to call them. Closure can also do so. To avoid that, add your function to - // the exports using something like - // - // -s EXPORTED_FUNCTIONS='["_main", "_myfunc"]' - // - // @param ident The name of the C function (note that C++ functions will be name-mangled - use extern "C") - // @param returnType The return type of the function, one of the JS types 'number', 'string' or 'array' (use 'number' for any C pointer, and - // 'array' for JavaScript arrays and typed arrays; note that arrays are 8-bit). - // @param argTypes An array of the types of arguments for the function (if there are no arguments, this can be ommitted). Types are as in returnType, - // except that 'array' is not possible (there is no way for us to know the length of the array) - // @param args An array of the arguments to the function, as native JS values (as in returnType) - // Note that string arguments will be stored on the stack (the JS string will become a C string on the stack). - // @return The return value, as a native JS value (as in returnType) - ccall = function ccallFunc(ident, returnType, argTypes, args) { - var func = getCFunc(ident); - var cArgs = []; - if (args) { - for (var i = 0; i < args.length; i++) { - var converter = toC[argTypes[i]]; - if (converter) { - if (stack === 0) stack = Runtime.stackSave(); - cArgs[i] = converter(args[i]); - } else { - cArgs[i] = args[i]; - } - } - } - var ret = func.apply(null, cArgs); - if (returnType === 'string') ret = Pointer_stringify(ret); - if (stack !== 0) JSfuncs['stackRestore'](); - return ret; - } - - var sourceRegex = /^function\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/; - function parseJSFunc(jsfunc) { - // Match the body and the return value of a javascript function source - var parsed = jsfunc.toString().match(sourceRegex).slice(1); - return {arguments : parsed[0], body : parsed[1], returnValue: parsed[2]} - } - var JSsource = {}; - for (var fun in JSfuncs) { - if (JSfuncs.hasOwnProperty(fun)) { - // Elements of toCsource are arrays of three items: - // the code, and the return value - JSsource[fun] = parseJSFunc(JSfuncs[fun]); - } - } - // Returns a native JS wrapper for a C function. This is similar to ccall, but - // returns a function you can call repeatedly in a normal way. For example: - // - // var my_function = cwrap('my_c_function', 'number', ['number', 'number']); - // alert(my_function(5, 22)); - // alert(my_function(99, 12)); - // - cwrap = function cwrap(ident, returnType, argTypes) { - var cfunc = getCFunc(ident); - // When the function takes numbers and returns a number, we can just return - // the original function - var numericArgs = argTypes.every(function(type){ return type === 'number'}); - var numericRet = (returnType !== 'string'); - if ( numericRet && numericArgs) { - return cfunc; - } - // Creation of the arguments list (["$1","$2",...,"$nargs"]) - var argNames = argTypes.map(function(x,i){return '$'+i}); - var funcstr = "(function(" + argNames.join(',') + ") {"; - var nargs = argTypes.length; - if (!numericArgs) { - // Generate the code needed to convert the arguments from javascript - // values to pointers - funcstr += JSsource['stackSave'].body + ';'; - for (var i = 0; i < nargs; i++) { - var arg = argNames[i], type = argTypes[i]; - if (type === 'number') continue; - var convertCode = JSsource[type + 'ToC']; // [code, return] - funcstr += 'var ' + convertCode.arguments + ' = ' + arg + ';'; - funcstr += convertCode.body + ';'; - funcstr += arg + '=' + convertCode.returnValue + ';'; - } - } - - // When the code is compressed, the name of cfunc is not literally 'cfunc' anymore - var cfuncname = parseJSFunc(function(){return cfunc}).returnValue; - // Call the function - funcstr += 'var ret = ' + cfuncname + '(' + argNames.join(',') + ');'; - if (!numericRet) { // Return type can only by 'string' or 'number' - // Convert the result to a string - var strgfy = parseJSFunc(function(){return Pointer_stringify}).returnValue; - funcstr += 'ret = ' + strgfy + '(ret);'; - } - if (!numericArgs) { - // If we had a stack, restore it - funcstr += JSsource['stackRestore'].body + ';'; - } - funcstr += 'return ret})'; - return eval(funcstr); - }; -})(); -Module["cwrap"] = cwrap; -Module["ccall"] = ccall; - -// Sets a value in memory in a dynamic way at run-time. Uses the -// type data. This is the same as makeSetValue, except that -// makeSetValue is done at compile-time and generates the needed -// code then, whereas this function picks the right code at -// run-time. -// Note that setValue and getValue only do *aligned* writes and reads! -// Note that ccall uses JS types as for defining types, while setValue and -// getValue need LLVM types ('i8', 'i32') - this is a lower-level operation -function setValue(ptr, value, type, noSafe) { - type = type || 'i8'; - if (type.charAt(type.length-1) === '*') type = 'i32'; // pointers are 32-bit - switch(type) { - case 'i1': HEAP8[((ptr)>>0)]=value; break; - case 'i8': HEAP8[((ptr)>>0)]=value; break; - case 'i16': HEAP16[((ptr)>>1)]=value; break; - case 'i32': HEAP32[((ptr)>>2)]=value; break; - case 'i64': (tempI64 = [value>>>0,(tempDouble=value,(+(Math_abs(tempDouble))) >= 1.0 ? (tempDouble > 0.0 ? ((Math_min((+(Math_floor((tempDouble)/4294967296.0))), 4294967295.0))|0)>>>0 : (~~((+(Math_ceil((tempDouble - +(((~~(tempDouble)))>>>0))/4294967296.0)))))>>>0) : 0)],HEAP32[((ptr)>>2)]=tempI64[0],HEAP32[(((ptr)+(4))>>2)]=tempI64[1]); break; - case 'float': HEAPF32[((ptr)>>2)]=value; break; - case 'double': HEAPF64[((ptr)>>3)]=value; break; - default: abort('invalid type for setValue: ' + type); - } -} -Module['setValue'] = setValue; - -// Parallel to setValue. -function getValue(ptr, type, noSafe) { - type = type || 'i8'; - if (type.charAt(type.length-1) === '*') type = 'i32'; // pointers are 32-bit - switch(type) { - case 'i1': return HEAP8[((ptr)>>0)]; - case 'i8': return HEAP8[((ptr)>>0)]; - case 'i16': return HEAP16[((ptr)>>1)]; - case 'i32': return HEAP32[((ptr)>>2)]; - case 'i64': return HEAP32[((ptr)>>2)]; - case 'float': return HEAPF32[((ptr)>>2)]; - case 'double': return HEAPF64[((ptr)>>3)]; - default: abort('invalid type for setValue: ' + type); - } - return null; -} -Module['getValue'] = getValue; - -var ALLOC_NORMAL = 0; // Tries to use _malloc() -var ALLOC_STACK = 1; // Lives for the duration of the current function call -var ALLOC_STATIC = 2; // Cannot be freed -var ALLOC_DYNAMIC = 3; // Cannot be freed except through sbrk -var ALLOC_NONE = 4; // Do not allocate -Module['ALLOC_NORMAL'] = ALLOC_NORMAL; -Module['ALLOC_STACK'] = ALLOC_STACK; -Module['ALLOC_STATIC'] = ALLOC_STATIC; -Module['ALLOC_DYNAMIC'] = ALLOC_DYNAMIC; -Module['ALLOC_NONE'] = ALLOC_NONE; - -// allocate(): This is for internal use. You can use it yourself as well, but the interface -// is a little tricky (see docs right below). The reason is that it is optimized -// for multiple syntaxes to save space in generated code. So you should -// normally not use allocate(), and instead allocate memory using _malloc(), -// initialize it with setValue(), and so forth. -// @slab: An array of data, or a number. If a number, then the size of the block to allocate, -// in *bytes* (note that this is sometimes confusing: the next parameter does not -// affect this!) -// @types: Either an array of types, one for each byte (or 0 if no type at that position), -// or a single type which is used for the entire block. This only matters if there -// is initial data - if @slab is a number, then this does not matter at all and is -// ignored. -// @allocator: How to allocate memory, see ALLOC_* -function allocate(slab, types, allocator, ptr) { - var zeroinit, size; - if (typeof slab === 'number') { - zeroinit = true; - size = slab; - } else { - zeroinit = false; - size = slab.length; - } - - var singleType = typeof types === 'string' ? types : null; - - var ret; - if (allocator == ALLOC_NONE) { - ret = ptr; - } else { - ret = [_malloc, Runtime.stackAlloc, Runtime.staticAlloc, Runtime.dynamicAlloc][allocator === undefined ? ALLOC_STATIC : allocator](Math.max(size, singleType ? 1 : types.length)); - } - - if (zeroinit) { - var ptr = ret, stop; - assert((ret & 3) == 0); - stop = ret + (size & ~3); - for (; ptr < stop; ptr += 4) { - HEAP32[((ptr)>>2)]=0; - } - stop = ret + size; - while (ptr < stop) { - HEAP8[((ptr++)>>0)]=0; - } - return ret; - } - - if (singleType === 'i8') { - if (slab.subarray || slab.slice) { - HEAPU8.set(slab, ret); - } else { - HEAPU8.set(new Uint8Array(slab), ret); - } - return ret; - } - - var i = 0, type, typeSize, previousType; - while (i < size) { - var curr = slab[i]; - - if (typeof curr === 'function') { - curr = Runtime.getFunctionIndex(curr); - } - - type = singleType || types[i]; - if (type === 0) { - i++; - continue; - } - - if (type == 'i64') type = 'i32'; // special case: we have one i32 here, and one i32 later - - setValue(ret+i, curr, type); - - // no need to look up size unless type changes, so cache it - if (previousType !== type) { - typeSize = Runtime.getNativeTypeSize(type); - previousType = type; - } - i += typeSize; - } - - return ret; -} -Module['allocate'] = allocate; - -function Pointer_stringify(ptr, /* optional */ length) { - // TODO: use TextDecoder - // Find the length, and check for UTF while doing so - var hasUtf = false; - var t; - var i = 0; - while (1) { - t = HEAPU8[(((ptr)+(i))>>0)]; - if (t >= 128) hasUtf = true; - else if (t == 0 && !length) break; - i++; - if (length && i == length) break; - } - if (!length) length = i; - - var ret = ''; - - if (!hasUtf) { - var MAX_CHUNK = 1024; // split up into chunks, because .apply on a huge string can overflow the stack - var curr; - while (length > 0) { - curr = String.fromCharCode.apply(String, HEAPU8.subarray(ptr, ptr + Math.min(length, MAX_CHUNK))); - ret = ret ? ret + curr : curr; - ptr += MAX_CHUNK; - length -= MAX_CHUNK; - } - return ret; - } - - var utf8 = new Runtime.UTF8Processor(); - for (i = 0; i < length; i++) { - t = HEAPU8[(((ptr)+(i))>>0)]; - ret += utf8.processCChar(t); - } - return ret; -} -Module['Pointer_stringify'] = Pointer_stringify; - -// Given a pointer 'ptr' to a null-terminated UTF16LE-encoded string in the emscripten HEAP, returns -// a copy of that string as a Javascript String object. -function UTF16ToString(ptr) { - var i = 0; - - var str = ''; - while (1) { - var codeUnit = HEAP16[(((ptr)+(i*2))>>1)]; - if (codeUnit == 0) - return str; - ++i; - // fromCharCode constructs a character from a UTF-16 code unit, so we can pass the UTF16 string right through. - str += String.fromCharCode(codeUnit); - } -} -Module['UTF16ToString'] = UTF16ToString; - -// Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', -// null-terminated and encoded in UTF16LE form. The copy will require at most (str.length*2+1)*2 bytes of space in the HEAP. -function stringToUTF16(str, outPtr) { - for(var i = 0; i < str.length; ++i) { - // charCodeAt returns a UTF-16 encoded code unit, so it can be directly written to the HEAP. - var codeUnit = str.charCodeAt(i); // possibly a lead surrogate - HEAP16[(((outPtr)+(i*2))>>1)]=codeUnit; - } - // Null-terminate the pointer to the HEAP. - HEAP16[(((outPtr)+(str.length*2))>>1)]=0; -} -Module['stringToUTF16'] = stringToUTF16; - -// Given a pointer 'ptr' to a null-terminated UTF32LE-encoded string in the emscripten HEAP, returns -// a copy of that string as a Javascript String object. -function UTF32ToString(ptr) { - var i = 0; - - var str = ''; - while (1) { - var utf32 = HEAP32[(((ptr)+(i*4))>>2)]; - if (utf32 == 0) - return str; - ++i; - // Gotcha: fromCharCode constructs a character from a UTF-16 encoded code (pair), not from a Unicode code point! So encode the code point to UTF-16 for constructing. - if (utf32 >= 0x10000) { - var ch = utf32 - 0x10000; - str += String.fromCharCode(0xD800 | (ch >> 10), 0xDC00 | (ch & 0x3FF)); - } else { - str += String.fromCharCode(utf32); - } - } -} -Module['UTF32ToString'] = UTF32ToString; - -// Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', -// null-terminated and encoded in UTF32LE form. The copy will require at most (str.length+1)*4 bytes of space in the HEAP, -// but can use less, since str.length does not return the number of characters in the string, but the number of UTF-16 code units in the string. -function stringToUTF32(str, outPtr) { - var iChar = 0; - for(var iCodeUnit = 0; iCodeUnit < str.length; ++iCodeUnit) { - // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! We must decode the string to UTF-32 to the heap. - var codeUnit = str.charCodeAt(iCodeUnit); // possibly a lead surrogate - if (codeUnit >= 0xD800 && codeUnit <= 0xDFFF) { - var trailSurrogate = str.charCodeAt(++iCodeUnit); - codeUnit = 0x10000 + ((codeUnit & 0x3FF) << 10) | (trailSurrogate & 0x3FF); - } - HEAP32[(((outPtr)+(iChar*4))>>2)]=codeUnit; - ++iChar; - } - // Null-terminate the pointer to the HEAP. - HEAP32[(((outPtr)+(iChar*4))>>2)]=0; -} -Module['stringToUTF32'] = stringToUTF32; - -function demangle(func) { - var i = 3; - // params, etc. - var basicTypes = { - 'v': 'void', - 'b': 'bool', - 'c': 'char', - 's': 'short', - 'i': 'int', - 'l': 'long', - 'f': 'float', - 'd': 'double', - 'w': 'wchar_t', - 'a': 'signed char', - 'h': 'unsigned char', - 't': 'unsigned short', - 'j': 'unsigned int', - 'm': 'unsigned long', - 'x': 'long long', - 'y': 'unsigned long long', - 'z': '...' - }; - var subs = []; - var first = true; - function dump(x) { - //return; - if (x) Module.print(x); - Module.print(func); - var pre = ''; - for (var a = 0; a < i; a++) pre += ' '; - Module.print (pre + '^'); - } - function parseNested() { - i++; - if (func[i] === 'K') i++; // ignore const - var parts = []; - while (func[i] !== 'E') { - if (func[i] === 'S') { // substitution - i++; - var next = func.indexOf('_', i); - var num = func.substring(i, next) || 0; - parts.push(subs[num] || '?'); - i = next+1; - continue; - } - if (func[i] === 'C') { // constructor - parts.push(parts[parts.length-1]); - i += 2; - continue; - } - var size = parseInt(func.substr(i)); - var pre = size.toString().length; - if (!size || !pre) { i--; break; } // counter i++ below us - var curr = func.substr(i + pre, size); - parts.push(curr); - subs.push(curr); - i += pre + size; - } - i++; // skip E - return parts; - } - function parse(rawList, limit, allowVoid) { // main parser - limit = limit || Infinity; - var ret = '', list = []; - function flushList() { - return '(' + list.join(', ') + ')'; - } - var name; - if (func[i] === 'N') { - // namespaced N-E - name = parseNested().join('::'); - limit--; - if (limit === 0) return rawList ? [name] : name; - } else { - // not namespaced - if (func[i] === 'K' || (first && func[i] === 'L')) i++; // ignore const and first 'L' - var size = parseInt(func.substr(i)); - if (size) { - var pre = size.toString().length; - name = func.substr(i + pre, size); - i += pre + size; - } - } - first = false; - if (func[i] === 'I') { - i++; - var iList = parse(true); - var iRet = parse(true, 1, true); - ret += iRet[0] + ' ' + name + '<' + iList.join(', ') + '>'; - } else { - ret = name; - } - paramLoop: while (i < func.length && limit-- > 0) { - //dump('paramLoop'); - var c = func[i++]; - if (c in basicTypes) { - list.push(basicTypes[c]); - } else { - switch (c) { - case 'P': list.push(parse(true, 1, true)[0] + '*'); break; // pointer - case 'R': list.push(parse(true, 1, true)[0] + '&'); break; // reference - case 'L': { // literal - i++; // skip basic type - var end = func.indexOf('E', i); - var size = end - i; - list.push(func.substr(i, size)); - i += size + 2; // size + 'EE' - break; - } - case 'A': { // array - var size = parseInt(func.substr(i)); - i += size.toString().length; - if (func[i] !== '_') throw '?'; - i++; // skip _ - list.push(parse(true, 1, true)[0] + ' [' + size + ']'); - break; - } - case 'E': break paramLoop; - default: ret += '?' + c; break paramLoop; - } - } - } - if (!allowVoid && list.length === 1 && list[0] === 'void') list = []; // avoid (void) - if (rawList) { - if (ret) { - list.push(ret + '?'); - } - return list; - } else { - return ret + flushList(); - } - } - try { - // Special-case the entry point, since its name differs from other name mangling. - if (func == 'Object._main' || func == '_main') { - return 'main()'; - } - if (typeof func === 'number') func = Pointer_stringify(func); - if (func[0] !== '_') return func; - if (func[1] !== '_') return func; // C function - if (func[2] !== 'Z') return func; - switch (func[3]) { - case 'n': return 'operator new()'; - case 'd': return 'operator delete()'; - } - return parse(); - } catch(e) { - return func; - } -} - -function demangleAll(text) { - return text.replace(/__Z[\w\d_]+/g, function(x) { var y = demangle(x); return x === y ? x : (x + ' [' + y + ']') }); -} - -function stackTrace() { - var stack = new Error().stack; - return stack ? demangleAll(stack) : '(no stack trace available)'; // Stack trace is not available at least on IE10 and Safari 6. -} - -// Memory management - -var PAGE_SIZE = 4096; -function alignMemoryPage(x) { - return (x+4095)&-4096; -} - -var HEAP; -var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; - -var STATIC_BASE = 0, STATICTOP = 0, staticSealed = false; // static area -var STACK_BASE = 0, STACKTOP = 0, STACK_MAX = 0; // stack area -var DYNAMIC_BASE = 0, DYNAMICTOP = 0; // dynamic area handled by sbrk - -function enlargeMemory() { - abort('Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value ' + TOTAL_MEMORY + ', (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.'); -} - -var TOTAL_STACK = Module['TOTAL_STACK'] || 5242880; -var TOTAL_MEMORY = Module['TOTAL_MEMORY'] || 16777216; -var FAST_MEMORY = Module['FAST_MEMORY'] || 2097152; - -var totalMemory = 4096; -while (totalMemory < TOTAL_MEMORY || totalMemory < 2*TOTAL_STACK) { - if (totalMemory < 16*1024*1024) { - totalMemory *= 2; - } else { - totalMemory += 16*1024*1024 - } -} -if (totalMemory !== TOTAL_MEMORY) { - Module.printErr('increasing TOTAL_MEMORY to ' + totalMemory + ' to be more reasonable'); - TOTAL_MEMORY = totalMemory; -} - -// Initialize the runtime's memory -// check for full engine support (use string 'subarray' to avoid closure compiler confusion) -assert(typeof Int32Array !== 'undefined' && typeof Float64Array !== 'undefined' && !!(new Int32Array(1)['subarray']) && !!(new Int32Array(1)['set']), - 'JS engine does not provide full typed array support'); - -var buffer = new ArrayBuffer(TOTAL_MEMORY); -HEAP8 = new Int8Array(buffer); -HEAP16 = new Int16Array(buffer); -HEAP32 = new Int32Array(buffer); -HEAPU8 = new Uint8Array(buffer); -HEAPU16 = new Uint16Array(buffer); -HEAPU32 = new Uint32Array(buffer); -HEAPF32 = new Float32Array(buffer); -HEAPF64 = new Float64Array(buffer); - -// Endianness check (note: assumes compiler arch was little-endian) -HEAP32[0] = 255; -assert(HEAPU8[0] === 255 && HEAPU8[3] === 0, 'Typed arrays 2 must be run on a little-endian system'); - -Module['HEAP'] = HEAP; -Module['HEAP8'] = HEAP8; -Module['HEAP16'] = HEAP16; -Module['HEAP32'] = HEAP32; -Module['HEAPU8'] = HEAPU8; -Module['HEAPU16'] = HEAPU16; -Module['HEAPU32'] = HEAPU32; -Module['HEAPF32'] = HEAPF32; -Module['HEAPF64'] = HEAPF64; - -function callRuntimeCallbacks(callbacks) { - while(callbacks.length > 0) { - var callback = callbacks.shift(); - if (typeof callback == 'function') { - callback(); - continue; - } - var func = callback.func; - if (typeof func === 'number') { - if (callback.arg === undefined) { - Runtime.dynCall('v', func); - } else { - Runtime.dynCall('vi', func, [callback.arg]); - } - } else { - func(callback.arg === undefined ? null : callback.arg); - } - } -} - -var __ATPRERUN__ = []; // functions called before the runtime is initialized -var __ATINIT__ = []; // functions called during startup -var __ATMAIN__ = []; // functions called when main() is to be run -var __ATEXIT__ = []; // functions called during shutdown -var __ATPOSTRUN__ = []; // functions called after the runtime has exited - -var runtimeInitialized = false; - -function preRun() { - // compatibility - merge in anything from Module['preRun'] at this time - if (Module['preRun']) { - if (typeof Module['preRun'] == 'function') Module['preRun'] = [Module['preRun']]; - while (Module['preRun'].length) { - addOnPreRun(Module['preRun'].shift()); - } - } - callRuntimeCallbacks(__ATPRERUN__); -} - -function ensureInitRuntime() { - if (runtimeInitialized) return; - runtimeInitialized = true; - callRuntimeCallbacks(__ATINIT__); -} - -function preMain() { - callRuntimeCallbacks(__ATMAIN__); -} - -function exitRuntime() { - callRuntimeCallbacks(__ATEXIT__); -} - -function postRun() { - // compatibility - merge in anything from Module['postRun'] at this time - 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); -} -Module['addOnPreRun'] = Module.addOnPreRun = addOnPreRun; - -function addOnInit(cb) { - __ATINIT__.unshift(cb); -} -Module['addOnInit'] = Module.addOnInit = addOnInit; - -function addOnPreMain(cb) { - __ATMAIN__.unshift(cb); -} -Module['addOnPreMain'] = Module.addOnPreMain = addOnPreMain; - -function addOnExit(cb) { - __ATEXIT__.unshift(cb); -} -Module['addOnExit'] = Module.addOnExit = addOnExit; - -function addOnPostRun(cb) { - __ATPOSTRUN__.unshift(cb); -} -Module['addOnPostRun'] = Module.addOnPostRun = addOnPostRun; - -// Tools - -// This processes a JS string into a C-line array of numbers, 0-terminated. -// For LLVM-originating strings, see parser.js:parseLLVMString function -function intArrayFromString(stringy, dontAddNull, length /* optional */) { - var ret = (new Runtime.UTF8Processor()).processJSString(stringy); - if (length) { - ret.length = length; - } - if (!dontAddNull) { - ret.push(0); - } - return ret; -} -Module['intArrayFromString'] = intArrayFromString; - -function intArrayToString(array) { - var ret = []; - for (var i = 0; i < array.length; i++) { - var chr = array[i]; - if (chr > 0xFF) { - chr &= 0xFF; - } - ret.push(String.fromCharCode(chr)); - } - return ret.join(''); -} -Module['intArrayToString'] = intArrayToString; - -// Write a Javascript array to somewhere in the heap -function writeStringToMemory(string, buffer, dontAddNull) { - var array = intArrayFromString(string, dontAddNull); - var i = 0; - while (i < array.length) { - var chr = array[i]; - HEAP8[(((buffer)+(i))>>0)]=chr; - i = i + 1; - } -} -Module['writeStringToMemory'] = writeStringToMemory; - -function writeArrayToMemory(array, buffer) { - for (var i = 0; i < array.length; i++) { - HEAP8[(((buffer)+(i))>>0)]=array[i]; - } -} -Module['writeArrayToMemory'] = writeArrayToMemory; - -function writeAsciiToMemory(str, buffer, dontAddNull) { - for (var i = 0; i < str.length; i++) { - HEAP8[(((buffer)+(i))>>0)]=str.charCodeAt(i); - } - if (!dontAddNull) HEAP8[(((buffer)+(str.length))>>0)]=0; -} -Module['writeAsciiToMemory'] = writeAsciiToMemory; - -function unSign(value, bits, ignore) { - if (value >= 0) { - return value; - } - return bits <= 32 ? 2*Math.abs(1 << (bits-1)) + value // Need some trickery, since if bits == 32, we are right at the limit of the bits JS uses in bitshifts - : Math.pow(2, bits) + value; -} -function reSign(value, bits, ignore) { - if (value <= 0) { - return value; - } - var half = bits <= 32 ? Math.abs(1 << (bits-1)) // abs is needed if bits == 32 - : Math.pow(2, bits-1); - if (value >= half && (bits <= 32 || value > half)) { // for huge values, we can hit the precision limit and always get true here. so don't do that - // but, in general there is no perfect solution here. With 64-bit ints, we get rounding and errors - // TODO: In i64 mode 1, resign the two parts separately and safely - value = -2*half + value; // Cannot bitshift half, as it may be at the limit of the bits JS uses in bitshifts - } - return value; -} - -// check for imul support, and also for correctness ( https://bugs.webkit.org/show_bug.cgi?id=126345 ) -if (!Math['imul'] || Math['imul'](0xffffffff, 5) !== -5) Math['imul'] = function imul(a, b) { - var ah = a >>> 16; - var al = a & 0xffff; - var bh = b >>> 16; - var bl = b & 0xffff; - return (al*bl + ((ah*bl + al*bh) << 16))|0; -}; -Math.imul = Math['imul']; - - -var Math_abs = Math.abs; -var Math_cos = Math.cos; -var Math_sin = Math.sin; -var Math_tan = Math.tan; -var Math_acos = Math.acos; -var Math_asin = Math.asin; -var Math_atan = Math.atan; -var Math_atan2 = Math.atan2; -var Math_exp = Math.exp; -var Math_log = Math.log; -var Math_sqrt = Math.sqrt; -var Math_ceil = Math.ceil; -var Math_floor = Math.floor; -var Math_pow = Math.pow; -var Math_imul = Math.imul; -var Math_fround = Math.fround; -var Math_min = Math.min; - -// A counter of dependencies for calling run(). If we need to -// do asynchronous work before running, increment this and -// decrement it. Incrementing must happen in a place like -// PRE_RUN_ADDITIONS (used by emcc to add file preloading). -// Note that you can add dependencies in preRun, even though -// it happens right before run - run will be postponed until -// the dependencies are met. -var runDependencies = 0; -var runDependencyWatcher = null; -var dependenciesFulfilled = null; // overridden to take different actions when all run dependencies are fulfilled - -function addRunDependency(id) { - runDependencies++; - if (Module['monitorRunDependencies']) { - Module['monitorRunDependencies'](runDependencies); - } -} -Module['addRunDependency'] = addRunDependency; -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(); // can add another dependenciesFulfilled - } - } -} -Module['removeRunDependency'] = removeRunDependency; - -Module["preloadedImages"] = {}; // maps url to image data -Module["preloadedAudios"] = {}; // maps url to audio data - - -var memoryInitializer = null; - -// === Body === - - - - - -STATIC_BASE = 8; - -STATICTOP = STATIC_BASE + Runtime.alignMemory(39363); - /* global initializers */ __ATINIT__.push(); - - -/* memory initializer */ allocate([51,46,56,46,53,0,0,0,83,81,76,73,84,69,95,0,128,151,0,0,144,151,0,0,160,151,0,0,184,151,0,0,200,151,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,10,10,10,10,10,10,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,64,0,42,42,42,42,42,42,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,0,0,0,0,0,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,24,5,0,0,32,5,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,40,5,0,0,56,5,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,64,5,0,0,80,5,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,88,5,0,0,32,5,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,117,110,105,120,0,0,0,0,6,0,0,0,0,0,0,0,117,110,105,120,45,110,111,110,101,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,117,110,105,120,45,100,111,116,102,105,108,101,0,0,0,0,8,0,0,0,0,0,0,0,117,110,105,120,45,101,120,99,108,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,1,0,0,0,0,0,0,0,4,5,3,5,1,5,1,5,2,5,2,5,1,5,1,5,4,5,3,5,1,5,1,5,2,5,2,5,1,5,1,5,115,116,114,105,110,103,32,111,114,32,98,108,111,98,32,116,111,111,32,98,105,103,0,0,37,115,0,0,0,0,0,0,42,63,91,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,114,105,103,103,101,114,0,116,101,109,112,0,0,0,0,50,48,49,52,45,48,54,45,48,52,32,49,52,58,48,54,58,51,52,32,98,49,101,100,52,102,50,97,51,52,98,97,54,54,99,50,57,98,49,51,48,102,56,100,49,51,101,57,48,57,50,55,53,56,48,49,57,50,49,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,100,97,116,97,98,97,115,101,58,32,37,115,0,0,0,0,0,202,154,59,0,202,154,59,208,7,0,0,232,3,0,0,244,1,0,0,168,97,0,0,127,0,0,0,10,0,0,0,80,195,0,0,231,3,0,0,232,3,0,0,0,0,0,0,57,50,50,51,51,55,50,48,51,54,56,53,52,55,55,53,56,48,0,0,0,0,0,0,111,110,111,102,102,97,108,115,101,121,101,115,116,114,117,101,102,117,108,108,0,0,0,0,0,1,2,4,9,12,16,0,2,2,3,5,3,4,4,0,1,0,0,0,1,1,2,0,82,69,73,78,68,69,88,69,68,69,83,67,65,80,69,65,67,72,69,67,75,69,89,66,69,70,79,82,69,73,71,78,79,82,69,71,69,88,80,76,65,73,78,83,84,69,65,68,68,65,84,65,66,65,83,69,76,69,67,84,65,66,76,69,70,84,72,69,78,68,69,70,69,82,82,65,66,76,69,76,83,69,88,67,69,80,84,82,65,78,83,65,67,84,73,79,78,65,84,85,82,65,76,84,69,82,65,73,83,69,88,67,76,85,83,73,86,69,88,73,83,84,83,65,86,69,80,79,73,78,84,69,82,83,69,67,84,82,73,71,71,69,82,69,70,69,82,69,78,67,69,83,67,79,78,83,84,82,65,73,78,84,79,70,70,83,69,84,69,77,80,79,82,65,82,89,85,78,73,81,85,69,82,89,87,73,84,72,79,85,84,69,82,69,76,69,65,83,69,65,84,84,65,67,72,65,86,73,78,71,82,79,85,80,68,65,84,69,66,69,71,73,78,78,69,82,69,67,85,82,83,73,86,69,66,69,84,87,69,69,78,79,84,78,85,76,76,73,75,69,67,65,83,67,65,68,69,76,69,84,69,67,65,83,69,67,79,76,76,65,84,69,67,82,69,65,84,69,67,85,82,82,69,78,84,95,68,65,84,69,68,69,84,65,67,72,73,77,77,69,68,73,65,84,69,74,79,73,78,83,69,82,84,77,65,84,67,72,80,76,65,78,65,76,89,90,69,80,82,65,71,77,65,66,79,82,84,86,65,76,85,69,83,86,73,82,84,85,65,76,73,77,73,84,87,72,69,78,87,72,69,82,69,78,65,77,69,65,70,84,69,82,69,80,76,65,67,69,65,78,68,69,70,65,85,76,84,65,85,84,79,73,78,67,82,69,77,69,78,84,67,65,83,84,67,79,76,85,77,78,67,79,77,77,73,84,67,79,78,70,76,73,67,84,67,82,79,83,83,67,85,82,82,69,78,84,95,84,73,77,69,83,84,65,77,80,82,73,77,65,82,89,68,69,70,69,82,82,69,68,73,83,84,73,78,67,84,68,82,79,80,70,65,73,76,70,82,79,77,70,85,76,76,71,76,79,66,89,73,70,73,83,78,85,76,76,79,82,68,69,82,69,83,84,82,73,67,84,82,73,71,72,84,82,79,76,76,66,65,67,75,82,79,87,85,78,73,79,78,85,83,73,78,71,86,65,67,85,85,77,86,73,69,87,73,78,73,84,73,65,76,76,89,0,0,0,0,0,0,0,76,105,117,74,0,45,0,0,82,0,77,0,0,42,12,78,15,0,116,85,54,112,0,19,0,0,121,0,119,115,0,22,93,0,9,0,0,70,71,0,69,6,0,48,90,102,0,118,101,0,0,44,0,103,24,0,17,0,122,53,23,0,5,110,25,96,0,0,124,106,60,123,57,28,55,0,91,0,100,26,0,99,0,0,0,95,92,97,88,109,14,39,108,0,81,0,18,89,111,32,0,120,80,113,62,46,84,0,0,94,40,59,114,0,36,0,0,29,0,86,63,64,0,20,61,0,56,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,13,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,33,0,21,0,0,0,0,0,50,0,43,3,47,0,0,0,0,30,0,58,0,38,0,0,0,1,66,0,0,67,0,41,0,0,0,0,0,0,49,65,0,0,0,0,31,52,16,34,10,0,0,0,0,0,0,0,11,72,79,0,8,0,104,98,0,107,0,87,0,75,51,0,27,37,73,83,0,35,68,0,0,0,0,0,0,7,7,5,4,6,4,5,3,6,7,3,6,6,7,7,3,8,2,6,5,4,4,3,10,4,6,11,6,2,7,5,5,9,6,9,9,7,10,10,4,6,2,3,9,4,2,6,5,7,4,5,7,6,6,5,6,5,5,9,7,7,3,2,4,4,7,3,6,4,7,6,12,6,9,4,6,5,4,7,6,5,6,7,5,4,5,6,5,7,3,7,13,2,2,4,6,6,8,5,17,12,7,8,8,2,4,4,4,4,4,2,2,6,5,8,5,8,3,5,5,6,4,9,3,0,0,0,0,0,0,2,0,2,0,8,0,9,0,14,0,16,0,20,0,23,0,25,0,25,0,29,0,33,0,36,0,41,0,46,0,48,0,53,0,54,0,59,0,62,0,65,0,67,0,69,0,78,0,81,0,86,0,91,0,95,0,96,0,101,0,105,0,109,0,117,0,122,0,128,0,136,0,142,0,152,0,159,0,162,0,162,0,165,0,167,0,167,0,171,0,176,0,179,0,184,0,184,0,188,0,192,0,199,0,204,0,209,0,212,0,218,0,221,0,225,0,234,0,240,0,240,0,240,0,243,0,246,0,250,0,251,0,255,0,5,1,9,1,16,1,22,1,34,1,40,1,49,1,51,1,57,1,62,1,64,1,71,1,76,1,81,1,87,1,93,1,98,1,102,1,105,1,111,1,115,1,122,1,124,1,131,1,133,1,135,1,144,1,148,1,154,1,160,1,168,1,173,1,173,1,189,1,196,1,203,1,204,1,211,1,215,1,219,1,223,1,227,1,230,1,232,1,234,1,240,1,244,1,252,1,1,2,9,2,12,2,17,2,22,2,28,2,32,2,37,2,67,28,140,42,84,44,104,53,35,113,46,47,50,2,49,142,41,24,119,16,98,138,11,112,139,117,6,30,107,98,141,57,9,20,13,118,62,105,99,131,55,54,111,21,21,71,103,3,25,66,98,14,34,128,127,110,5,98,58,74,77,19,52,101,50,37,33,109,136,95,17,69,43,8,124,108,51,4,32,56,29,120,65,129,137,130,68,31,59,72,100,106,15,75,38,39,10,40,98,69,69,102,7,121,73,114,45,123,98,50,36,18,76,126,60,98,12,61,115,125,63,64,48,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,109,105,115,117,115,101,32,97,116,32,108,105,110,101,32,37,100,32,111,102,32,91,37,46,49,48,115,93,0,0,0,0,117,110,97,98,108,101,32,116,111,32,100,101,108,101,116,101,47,109,111,100,105,102,121,32,99,111,108,108,97,116,105,111,110,32,115,101,113,117,101,110,99,101,32,100,117,101,32,116,111,32,97,99,116,105,118,101,32,115,116,97,116,101,109,101,110,116,115,0,0,0,0,0,66,73,78,65,82,89,0,0,82,84,82,73,77,0,0,0,78,79,67,65,83,69,0,0,109,97,105,110,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,117,116,111,109,97,116,105,99,32,101,120,116,101,110,115,105,111,110,32,108,111,97,100,105,110,103,32,102,97,105,108,101,100,58,32,37,115,0,0,77,65,84,67,72,0,0,0,58,109,101,109,111,114,121,58,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,5,0,0,0,9,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,101,99,111,118,101,114,101,100,32,37,100,32,112,97,103,101,115,32,102,114,111,109,32,37,115,0,0,0,0,0,0,217,213,5,249,32,161,99,215,100,97,116,97,98,97,115,101,32,99,111,114,114,117,112,116,105,111,110,32,97,116,32,108,105,110,101,32,37,100,32,111,102,32,91,37,46,49,48,115,93,0,0,0,0,0,0,0,99,97,110,110,111,116,32,108,105,109,105,116,32,87,65,76,32,115,105,122,101,58,32,37,115,0,0,0,0,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,102,105,108,101,32,97,116,32,108,105,110,101,32,37,100,32,111,102,32,91,37,46,49,48,115,93,0,0,114,101,99,111,118,101,114,101,100,32,37,100,32,102,114,97,109,101,115,32,102,114,111,109,32,87,65,76,32,102,105,108,101,32,37,115,0,0,0,0,45,106,111,117,114,110,97,108,0,0,0,0,0,0,0,0,45,119,97,108,0,0,0,0,110,111,108,111,99,107,0,0,105,109,109,117,116,97,98,108,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102,105,108,101,58,0,0,0,108,111,99,97,108,104,111,115,116,0,0,0,0,0,0,0,105,110,118,97,108,105,100,32,117,114,105,32,97,117,116,104,111,114,105,116,121,58,32,37,46,42,115,0,0,0,0,0,118,102,115,0,0,0,0,0,99,97,99,104,101,0,0,0,48,18,0,0,0,0,2,0,56,18,0,0,0,0,4,0,0,0,0,0,0,0,0,0,115,104,97,114,101,100,0,0,112,114,105,118,97,116,101,0,109,111,100,101,0,0,0,0,112,18,0,0,1,0,0,0,120,18,0,0,2,0,0,0,128,18,0,0,6,0,0,0,136,18,0,0,128,0,0,0,0,0,0,0,0,0,0,0,114,111,0,0,0,0,0,0,114,119,0,0,0,0,0,0,114,119,99,0,0,0,0,0,109,101,109,111,114,121,0,0,97,99,99,101,115,115,0,0,110,111,32,115,117,99,104,32,37,115,32,109,111,100,101,58,32,37,115,0,0,0,0,0,37,115,32,109,111,100,101,32,110,111,116,32,97,108,108,111,119,101,100,58,32,37,115,0,110,111,32,115,117,99,104,32,118,102,115,58,32,37,115,0,105,110,118,97,108,105,100,0,65,80,73,32,99,97,108,108,32,119,105,116,104,32,37,115,32,100,97,116,97,98,97,115,101,32,99,111,110,110,101,99,116,105,111,110,32,112,111,105,110,116,101,114,0,0,0,0,117,110,97,98,108,101,32,116,111,32,117,115,101,32,102,117,110,99,116,105,111,110,32,37,115,32,105,110,32,116,104,101,32,114,101,113,117,101,115,116,101,100,32,99,111,110,116,101,120,116,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,0,1,2,3,4,5,6,7,0,1,2,3,0,1,0,0,117,110,97,98,108,101,32,116,111,32,100,101,108,101,116,101,47,109,111,100,105,102,121,32,117,115,101,114,45,102,117,110,99,116,105,111,110,32,100,117,101,32,116,111,32,97,99,116,105,118,101,32,115,116,97,116,101,109,101,110,116,115,0,0,56,20,0,0,72,20,0,0,0,0,0,0,112,20,0,0,144,20,0,0,176,20,0,0,200,20,0,0,232,20,0,0,248,20,0,0,32,21,0,0,48,21,0,0,64,21,0,0,104,21,0,0,128,21,0,0,160,21,0,0,192,21,0,0,216,21,0,0,240,21,0,0,152,5,0,0,16,22,0,0,40,22,0,0,64,22,0,0,104,22,0,0,136,22,0,0,160,22,0,0,192,22,0,0,232,22,0,0,0,0,0,0,110,111,116,32,97,110,32,101,114,114,111,114,0,0,0,0,83,81,76,32,108,111,103,105,99,32,101,114,114,111,114,32,111,114,32,109,105,115,115,105,110,103,32,100,97,116,97,98,97,115,101,0,0,0,0,0,97,99,99,101,115,115,32,112,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,0,0,0,0,0,0,0,99,97,108,108,98,97,99,107,32,114,101,113,117,101,115,116,101,100,32,113,117,101,114,121,32,97,98,111,114,116,0,0,100,97,116,97,98,97,115,101,32,105,115,32,108,111,99,107,101,100,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,116,97,98,108,101,32,105,115,32,108,111,99,107,101,100,0,0,0,0,0,0,0,0,111,117,116,32,111,102,32,109,101,109,111,114,121,0,0,0,97,116,116,101,109,112,116,32,116,111,32,119,114,105,116,101,32,97,32,114,101,97,100,111,110,108,121,32,100,97,116,97,98,97,115,101,0,0,0,0,105,110,116,101,114,114,117,112,116,101,100,0,0,0,0,0,100,105,115,107,32,73,47,79,32,101,114,114,111,114,0,0,100,97,116,97,98,97,115,101,32,100,105,115,107,32,105,109,97,103,101,32,105,115,32,109,97,108,102,111,114,109,101,100,0,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,111,112,101,114,97,116,105,111,110,0,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,111,114,32,100,105,115,107,32,105,115,32,102,117,108,108,0,0,0,0,0,0,0,0,117,110,97,98,108,101,32,116,111,32,111,112,101,110,32,100,97,116,97,98,97,115,101,32,102,105,108,101,0,0,0,0,108,111,99,107,105,110,103,32,112,114,111,116,111,99,111,108,0,0,0,0,0,0,0,0,116,97,98,108,101,32,99,111,110,116,97,105,110,115,32,110,111,32,100,97,116,97,0,0,100,97,116,97,98,97,115,101,32,115,99,104,101,109,97,32,104,97,115,32,99,104,97,110,103,101,100,0,0,0,0,0,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,0,0,0,0,0,0,0,100,97,116,97,116,121,112,101,32,109,105,115,109,97,116,99,104,0,0,0,0,0,0,0,108,105,98,114,97,114,121,32,114,111,117,116,105,110,101,32,99,97,108,108,101,100,32,111,117,116,32,111,102,32,115,101,113,117,101,110,99,101,0,0,108,97,114,103,101,32,102,105,108,101,32,115,117,112,112,111,114,116,32,105,115,32,100,105,115,97,98,108,101,100,0,0,97,117,116,104,111,114,105,122,97,116,105,111,110,32,100,101,110,105,101,100,0,0,0,0,97,117,120,105,108,105,97,114,121,32,100,97,116,97,98,97,115,101,32,102,111,114,109,97,116,32,101,114,114,111,114,0,98,105,110,100,32,111,114,32,99,111,108,117,109,110,32,105,110,100,101,120,32,111,117,116,32,111,102,32,114,97,110,103,101,0,0,0,0,0,0,0,102,105,108,101,32,105,115,32,101,110,99,114,121,112,116,101,100,32,111,114,32,105,115,32,110,111,116,32,97,32,100,97,116,97,98,97,115,101,0,0,117,110,107,110,111,119,110,32,101,114,114,111,114,0,0,0,97,98,111,114,116,32,100,117,101,32,116,111,32,82,79,76,76,66,65,67,75,0,0,0,117,110,97,98,108,101,32,116,111,32,99,108,111,115,101,32,100,117,101,32,116,111,32,117,110,102,105,110,97,108,105,122,101,100,32,115,116,97,116,101,109,101,110,116,115,32,111,114,32,117,110,102,105,110,105,115,104,101,100,32,98,97,99,107,117,112,115,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,6,0,0,0,1,0,0,0,3,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,11,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,5,0,0,0,0,0,0,0,102,97,105,108,101,100,32,109,101,109,111,114,121,32,114,101,115,105,122,101,32,37,117,32,116,111,32,37,117,32,98,121,116,101,115,0,0,0,0,0,102,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,37,117,32,98,121,116,101,115,32,111,102,32,109,101,109,111,114,121,0,0,0,1,0,1,8,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,32,0,0,0,0,0,0,0,0,0,0,2,0,1,8,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,2,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,32,0,0,0,0,0,0,0,0,0,0,2,0,1,8,2,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,3,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,24,32,0,0,0,0,0,0,0,0,0,0,2,0,1,8,3,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,24,32,0,0,0,0,0,0,0,0,0,0,255,255,33,8,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,32,32,0,0,0,0,0,0,0,0,0,0,0,0,33,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,32,0,0,0,0,0,0,0,0,0,0,1,0,33,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,32,32,0,0,0,0,0,0,0,0,0,0,255,255,33,8,1,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,40,32,0,0,0,0,0,0,0,0,0,0,0,0,33,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,32,0,0,0,0,0,0,0,0,0,0,1,0,33,0,1,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,40,32,0,0,0,0,0,0,0,0,0,0,1,0,129,8,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,48,32,0,0,0,0,0,0,0,0,0,0,1,0,65,8,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,56,32,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,64,32,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,72,32,0,0,0,0,0,0,0,0,0,0,3,0,1,8,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,72,32,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,80,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,88,32,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,96,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,104,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,112,32,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,112,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,120,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,128,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,32,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,32,0,0,0,0,0,0,0,0,0,0,255,255,1,10,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,136,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,152,32,0,0,0,0,0,0,0,0,0,0,2,0,1,10,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,160,32,0,0,0,0,0,0,0,0,0,0,1,0,1,12,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,168,32,0,0,0,0,0,0,0,0,0,0,2,0,1,12,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,184,32,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,200,32,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,208,32,0,0,0,0,0,0,0,0,0,0,2,0,33,8,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,224,32,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,232,32,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,248,32,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,16,33,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,23,0,0,0,0,0,0,0,0,0,0,0,32,33,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,64,33,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,25,0,0,0,0,0,0,0,0,0,0,0,96,33,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,26,0,0,0,0,0,0,0,0,0,0,0,104,33,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,128,33,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,0,0,0,0,136,33,0,0,0,0,0,0,0,0,0,0,3,0,1,8,0,0,0,0,0,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,152,33,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,160,33,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,7,0,0,0,176,33,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,8,0,0,0,184,33,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,9,0,0,0,192,33,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,10,0,0,0,200,33,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,10,0,0,0,200,33,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,11,0,0,0,208,33,0,0,0,0,0,0,0,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,11,0,0,0,208,33,0,0,0,0,0,0,0,0,0,0,2,0,13,8,184,5,0,0,0,0,0,0,34,0,0,0,0,0,0,0,0,0,0,0,224,33,0,0,0,0,0,0,0,0,0,0,2,0,5,8,232,33,0,0,0,0,0,0,34,0,0,0,0,0,0,0,0,0,0,0,240,33,0,0,0,0,0,0,0,0,0,0,3,0,5,8,232,33,0,0,0,0,0,0,34,0,0,0,0,0,0,0,0,0,0,0,240,33,0,0,0,0,0,0,0,0,0,0,108,116,114,105,109,0,0,0,114,116,114,105,109,0,0,0,116,114,105,109,0,0,0,0,109,105,110,0,0,0,0,0,109,97,120,0,0,0,0,0,116,121,112,101,111,102,0,0,108,101,110,103,116,104,0,0,105,110,115,116,114,0,0,0,115,117,98,115,116,114,0,0,112,114,105,110,116,102,0,0,117,110,105,99,111,100,101,0,99,104,97,114,0,0,0,0,97,98,115,0,0,0,0,0,114,111,117,110,100,0,0,0,117,112,112,101,114,0,0,0,108,111,119,101,114,0,0,0,99,111,97,108,101,115,99,101,0,0,0,0,0,0,0,0,104,101,120,0,0,0,0,0,105,102,110,117,108,108,0,0,117,110,108,105,107,101,108,121,0,0,0,0,0,0,0,0,108,105,107,101,108,105,104,111,111,100,0,0,0,0,0,0,114,97,110,100,111,109,0,0,114,97,110,100,111,109,98,108,111,98,0,0,0,0,0,0,110,117,108,108,105,102,0,0,115,113,108,105,116,101,95,118,101,114,115,105,111,110,0,0,115,113,108,105,116,101,95,115,111,117,114,99,101,95,105,100,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,108,111,103,0,0,0,0,0,0,115,113,108,105,116,101,95,99,111,109,112,105,108,101,111,112,116,105,111,110,95,117,115,101,100,0,0,0,0,0,0,0,115,113,108,105,116,101,95,99,111,109,112,105,108,101,111,112,116,105,111,110,95,103,101,116,0,0,0,0,0,0,0,0,113,117,111,116,101,0,0,0,108,97,115,116,95,105,110,115,101,114,116,95,114,111,119,105,100,0,0,0,0,0,0,0,99,104,97,110,103,101,115,0,116,111,116,97,108,95,99,104,97,110,103,101,115,0,0,0,114,101,112,108,97,99,101,0,122,101,114,111,98,108,111,98,0,0,0,0,0,0,0,0,115,117,109,0,0,0,0,0,116,111,116,97,108,0,0,0,97,118,103,0,0,0,0,0,99,111,117,110,116,0,0,0,103,114,111,117,112,95,99,111,110,99,97,116,0,0,0,0,103,108,111,98,0,0,0,0,37,95,0,1,0,0,0,0,108,105,107,101,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,35,0,0,0,0,0,0,0,0,0,0,0,104,34,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,128,34,0,0,0,0,0,0,0,0,0,0,3,0,1,8,0,0,0,0,0,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,152,34,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,97,98,108,101,0,0,0,0,0,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,114,105,103,103,101,114,0,0,0,115,113,108,105,116,101,95,114,101,110,97,109,101,95,112,97,114,101,110,116,0,0,0,0,37,115,37,46,42,115,34,37,119,34,0,0,0,0,0,0,37,115,37,115,0,0,0,0,37,46,42,115,34,37,119,34,37,115,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,248,35,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,8,36,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0,16,36,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,24,36,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,42,0,0,0,0,0,0,0,0,0,0,0,40,36,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,43,0,0,0,0,0,0,0,0,0,0,0,56,36,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,72,36,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,96,36,0,0,0,0,0,0,0,0,0,0,106,117,108,105,97,110,100,97,121,0,0,0,0,0,0,0,100,97,116,101,0,0,0,0,116,105,109,101,0,0,0,0,100,97,116,101,116,105,109,101,0,0,0,0,0,0,0,0,115,116,114,102,116,105,109,101,0,0,0,0,0,0,0,0,99,117,114,114,101,110,116,95,116,105,109,101,0,0,0,0,99,117,114,114,101,110,116,95,116,105,109,101,115,116,97,109,112,0,0,0,0,0,0,0,99,117,114,114,101,110,116,95,100,97,116,101,0,0,0,0,37,48,50,100,0,0,0,0,37,48,54,46,51,102,0,0,37,48,51,100,0,0,0,0,37,46,49,54,103,0,0,0,37,108,108,100,0,0,0,0,37,48,52,100,0,0,0,0,108,111,99,97,108,116,105,109,101,0,0,0,0,0,0,0,117,110,105,120,101,112,111,99,104,0,0,0,0,0,0,0,117,116,99,0,0,0,0,0,119,101,101,107,100,97,121,32,0,0,0,0,0,0,0,0,115,116,97,114,116,32,111,102,32,0,0,0,0,0,0,0,109,111,110,116,104,0,0,0,121,101,97,114,0,0,0,0,100,97,121,0,0,0,0,0,104,111,117,114,0,0,0,0,109,105,110,117,116,101,0,0,115,101,99,111,110,100,0,0,108,111,99,97,108,32,116,105,109,101,32,117,110,97,118,97,105,108,97,98,108,101,0,0,110,111,119,0,0,0,0,0,37,48,52,100,45,37,48,50,100,45,37,48,50,100,32,37,48,50,100,58,37,48,50,100,58,37,48,50,100,0,0,0,37,48,50,100,58,37,48,50,100,58,37,48,50,100,0,0,37,48,52,100,45,37,48,50,100,45,37,48,50,100,0,0,76,73,75,69,32,111,114,32,71,76,79,66,32,112,97,116,116,101,114,110,32,116,111,111,32,99,111,109,112,108,101,120,0,0,0,0,0,0,0,0,69,83,67,65,80,69,32,101,120,112,114,101,115,115,105,111,110,32,109,117,115,116,32,98,101,32,97,32,115,105,110,103,108,101,32,99,104,97,114,97,99,116,101,114,0,0,0,0,44,0,0,0,0,0,0,0,105,110,116,101,103,101,114,32,111,118,101,114,102,108,111,119,0,0,0,0,0,0,0,0,37,33,46,49,53,103,0,0,37,33,46,50,48,101,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,78,85,76,76,0,0,0,0,37,46,42,102,0,0,0,0,105,110,116,101,103,101,114,0,116,101,120,116,0,0,0,0,114,101,97,108,0,0,0,0,98,108,111,98,0,0,0,0,110,117,108,108,0,0,0,0,1,0,0,0,0,0,0,0,88,38,0,0,0,0,0,0,32,0,0,0,0,0,0,0,105,110,116,101,114,114,117,112,116,0,0,0,0,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,116,111,107,101,110,58,32,34,37,84,34,0,0,0,0,0,0,0,0,110,101,97,114,32,34,37,84,34,58,32,115,121,110,116,97,120,32,101,114,114,111,114,0,114,111,119,105,100,0,0,0,117,110,107,110,111,119,110,32,116,97,98,108,101,32,111,112,116,105,111,110,58,32,37,46,42,115,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,116,101,114,109,115,32,105,110,32,99,111,109,112,111,117,110,100,32,83,69,76,69,67,84,0,0,0,0,0,0,0,115,101,116,32,108,105,115,116,0,0,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,97,114,103,117,109,101,110,116,115,32,111,110,32,102,117,110,99,116,105,111,110,32,37,84,0,0,0,0,0,0,0,104,90,0,0,1,0,0,0,208,72,0,0,1,0,0,0,105,110,100,101,120,0,0,0,113,117,97,108,105,102,105,101,100,32,116,97,98,108,101,32,110,97,109,101,115,32,97,114,101,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,73,78,83,69,82,84,44,32,85,80,68,65,84,69,44,32,97,110,100,32,68,69,76,69,84,69,32,115,116,97,116,101,109,101,110,116,115,32,119,105,116,104,105,110,32,116,114,105,103,103,101,114,115,0,0,116,104,101,32,73,78,68,69,88,69,68,32,66,89,32,99,108,97,117,115,101,32,105,115,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,85,80,68,65,84,69,32,111,114,32,68,69,76,69,84,69,32,115,116,97,116,101,109,101,110,116,115,32,119,105,116,104], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE); -/* memory initializer */ allocate([105,110,32,116,114,105,103,103,101,114,115,0,0,0,0,0,116,104,101,32,78,79,84,32,73,78,68,69,88,69,68,32,99,108,97,117,115,101,32,105,115,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,85,80,68,65,84,69,32,111,114,32,68,69,76,69,84,69,32,115,116,97,116,101,109,101,110,116,115,32,119,105,116,104,105,110,32,116,114,105,103,103,101,114,115,0,0,0,0,144,1,145,2,145,1,146,1,146,3,147,0,147,1,147,3,148,1,149,3,151,0,151,1,151,2,150,0,150,1,150,1,150,1,149,2,149,2,149,2,153,1,153,0,149,2,149,3,149,5,149,2,154,6,156,1,158,0,158,3,157,1,157,0,155,5,155,2,162,0,162,2,160,3,160,1,164,3,165,1,152,1,152,1,152,1,166,0,166,1,168,1,168,4,168,6,169,1,169,2,170,1,170,1,167,2,167,0,173,2,173,2,173,4,173,3,173,3,173,2,173,2,173,3,173,5,173,2,173,4,173,4,173,1,173,2,178,0,178,1,180,0,180,2,182,2,182,3,182,3,182,3,183,2,183,2,183,1,183,1,183,2,181,3,181,2,184,0,184,2,184,2,161,0,161,2,185,3,185,1,186,1,186,0,187,2,187,7,187,5,187,5,187,10,189,0,189,1,176,0,176,3,190,0,190,2,191,1,191,1,191,1,149,4,193,2,193,0,149,8,149,4,149,1,163,2,195,1,195,3,198,1,198,2,198,1,196,9,196,1,207,4,207,5,199,1,199,1,199,0,210,2,210,0,200,3,200,2,200,4,211,2,211,1,211,0,201,0,201,2,213,2,213,0,212,7,212,7,212,7,159,0,159,2,194,2,214,1,214,2,214,3,214,4,216,2,216,0,215,0,215,3,215,2,217,4,217,0,205,0,205,3,220,4,220,2,177,1,177,1,177,0,203,0,203,3,204,0,204,2,206,0,206,2,206,4,206,4,149,6,202,0,202,2,149,8,221,5,221,3,149,6,149,7,222,2,222,1,223,0,223,3,219,3,219,1,175,1,175,3,174,1,175,1,175,1,175,3,175,5,174,1,174,1,175,1,175,3,175,6,175,5,175,4,174,1,175,3,175,3,175,3,175,3,175,3,175,3,175,3,175,3,224,1,224,2,175,3,175,5,175,2,175,3,175,3,175,4,175,2,175,2,175,2,175,2,225,1,225,2,175,5,226,1,226,2,175,5,175,3,175,5,175,4,175,4,175,5,228,5,228,4,229,2,229,0,227,1,227,0,209,1,209,0,208,3,208,1,149,12,230,1,230,0,179,0,179,3,188,5,188,3,231,0,231,2,149,4,149,1,149,2,149,3,149,5,149,6,149,5,149,6,232,1,232,1,232,1,232,1,232,1,171,2,171,1,172,2,149,5,233,11,235,1,235,1,235,2,235,0,236,1,236,1,236,3,237,0,237,3,238,0,238,2,234,3,234,2,240,1,240,3,241,0,241,3,241,2,239,7,239,5,239,5,239,1,175,4,175,6,192,1,192,1,192,1,149,4,149,6,149,3,243,0,243,2,242,1,242,0,149,1,149,3,149,1,149,3,149,6,149,6,244,1,245,0,245,1,149,1,149,4,246,8,247,1,247,3,248,0,248,2,249,1,249,3,250,1,251,0,251,4,251,2,197,0,197,2,197,3,252,6,252,8,0,0,238,0,186,3,213,0,33,1,54,1,234,0,144,0,61,1,147,255,126,1,121,1,47,1,205,1,133,1,122,1,112,1,46,1,38,1,253,0,139,1,37,1,68,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,254,3,244,3,237,3,230,3,195,3,193,3,191,3,189,3,182,3,179,3,162,3,144,3,105,3,93,3,55,3,42,3,3,3,247,2,208,2,196,2,158,2,145,2,107,2,102,2,100,2,98,2,96,2,94,2,92,2,86,2,83,2,81,2,68,2,30,2,28,2,25,2,23,2,21,2,19,2,17,2,15,2,247,1,130,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,95,0,191,1,82,0,78,1,248,1,211,1,147,1,221,1,208,1,147,1,147,1,147,1,147,1,92,3,235,2,232,2,17,3,126,2,126,2,158,3,123,3,132,3,131,3,119,3,76,3,72,3,67,3,80,3,62,3,75,3,61,3,24,3,71,3,58,3,225,2,70,3,27,3,21,3,47,0,222,2,18,2,184,2,9,3,199,2,165,2,221,2,218,2,217,2,216,2,215,2,115,2,192,1,64,0,187,0,25,5,22,5,228,4,10,5,249,4,43,5,42,5,41,5,39,5,38,5,36,5,35,5,34,5,33,5,32,5,31,5,30,5,28,5,27,5,24,5,23,5,21,5,18,5,14,5,12,5,9,5,242,4,240,4,235,4,8,5,7,5,214,4,5,5,1,5,0,5,255,4,254,4,227,4,253,4,252,4,251,4,249,4,244,4,243,4,241,4,239,4,237,4,233,4,224,4,213,4,223,4,222,4,219,4,214,4,216,4,211,4,225,4,210,4,209,4,206,4,196,4,190,4,186,4,201,4,195,4,208,4,207,4,173,4,171,4,203,4,200,4,177,4,184,4,218,4,113,4,212,4,205,4,169,4,157,4,197,4,153,4,172,4,155,4,167,4,166,4,162,4,158,4,194,4,192,4,152,4,138,4,159,4,156,4,136,4,175,4,179,4,109,4,71,4,174,4,170,4,164,4,168,4,147,4,145,4,144,4,149,4,150,4,142,4,135,4,117,4,146,4,134,4,143,4,133,4,108,4,121,4,119,4,100,4,104,4,79,4,78,4,76,4,72,4,126,4,125,4,61,4,101,4,56,4,40,4,96,4,73,4,58,4,54,4,49,4,43,4,85,4,83,4,95,4,93,4,92,4,89,4,87,4,84,4,239,3,232,3,234,3,52,4,51,4,57,4,0,0,0,0,50,1,212,0,176,1,187,3,127,2,191,0,187,3,39,1,47,2,88,0,88,0,88,0,88,0,81,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,185,0,184,0,183,0,123,2,123,2,36,1,94,2,94,2,88,0,88,0,88,0,88,0,171,2,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,16,0,180,1,85,2,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,172,2,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,47,2,84,0,84,0,84,0,83,0,74,1,65,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,123,2,123,2,122,2,121,2,182,0,170,2,38,2,123,1,120,1,119,1,17,0,66,1,94,2,94,2,115,1,198,0,223,1,91,0,118,1,82,0,79,0,165,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,86,2,123,2,123,2,107,0,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,186,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,82,2,82,2,142,0,72,1,71,1,228,1,249,0,88,1,238,0,123,2,123,2,122,2,121,2,73,2,192,1,14,2,13,2,229,0,132,1,1,0,138,1,194,1,72,2,193,1,123,2,123,2,123,2,123,2,63,1,139,1,94,2,94,2,199,0,157,0,17,1,126,1,12,1,125,1,187,0,123,2,123,2,122,2,121,2,55,1,43,2,10,1,81,2,81,2,10,1,91,1,76,2,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,222,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,16,1,24,2,122,2,121,2,146,0,98,2,197,0,54,1,63,2,182,0,226,1,15,1,123,1,120,1,119,1,250,1,21,0,122,2,121,2,122,2,121,2,123,2,123,2,118,1,99,2,62,2,36,2,184,1,111,0,51,2,94,2,94,2,122,2,121,2,68,1,223,1,96,2,96,2,96,2,44,1,179,1,61,2,119,0,151,1,210,0,162,0,50,2,115,3,80,2,80,2,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,250,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,108,2,111,0,123,2,123,2,105,1,94,2,94,2,102,1,249,0,93,1,248,0,177,1,243,0,223,1,74,2,122,2,121,2,195,0,99,2,93,0,119,0,221,0,63,2,241,1,22,2,22,2,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,62,2,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,77,0,173,1,126,2,61,2,77,2,18,2,240,0,230,0,242,0,105,0,249,0,93,1,248,0,3,2,76,2,208,0,204,1,17,2,52,2,173,0,122,2,121,2,202,3,144,0,174,1,2,0,168,1,228,0,124,1,45,2,94,2,94,2,190,0,153,0,159,0,158,0,2,2,51,0,120,2,119,2,118,2,71,0,24,2,176,1,186,3,196,0,98,2,186,3,102,2,45,0,18,0,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,5,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,96,2,96,2,96,2,30,2,168,1,146,1,129,1,241,0,250,1,195,1,64,1,211,0,31,2,164,0,180,1,130,1,37,1,195,1,75,2,108,0,240,1,111,0,78,1,135,1,79,2,168,1,102,2,27,0,196,1,197,1,94,2,94,2,72,0,1,1,70,0,3,1,196,1,83,1,86,1,52,2,70,2,68,0,159,1,213,1,72,1,71,1,62,0,102,2,45,0,110,0,137,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,152,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,110,0,243,1,8,2,26,2,146,1,133,1,168,1,110,0,54,2,244,1,81,2,81,2,198,1,82,0,79,0,165,0,168,1,79,2,128,1,52,2,84,1,103,2,188,0,162,0,168,1,94,1,104,2,168,1,102,2,44,0,94,2,94,2,189,1,70,2,44,1,178,1,151,0,19,0,102,2,9,0,56,2,68,2,92,1,103,2,213,1,55,2,102,2,26,0,104,2,102,2,45,0,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,155,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,67,2,110,0,66,2,9,2,26,1,177,1,142,1,144,1,255,0,230,1,82,0,79,0,165,0,231,1,164,0,82,0,79,0,165,0,232,1,232,1,108,1,131,1,168,1,32,2,32,2,253,1,94,1,106,1,155,0,191,0,94,2,94,2,47,2,130,2,128,2,77,1,82,0,79,0,165,0,49,1,52,2,251,1,56,1,101,1,102,2,45,0,73,1,84,2,83,2,194,0,81,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,20,0,67,1,150,0,7,1,211,0,31,2,165,1,84,2,83,2,102,2,22,0,168,1,193,0,168,1,28,1,168,1,135,1,168,1,253,1,168,1,65,2,168,1,186,0,79,1,168,1,47,2,168,1,57,1,120,0,34,2,94,2,94,2,67,0,102,2,47,0,102,2,50,0,102,2,48,0,102,2,100,0,102,2,99,0,102,2,101,0,64,2,102,2,102,0,102,2,109,0,70,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,168,1,55,1,168,1,73,2,54,0,168,1,4,2,5,2,78,2,102,2,112,0,168,1,72,2,168,1,60,2,168,1,195,0,168,1,59,2,168,1,67,0,168,1,102,2,94,0,102,2,98,0,168,1,102,2,97,0,8,1,94,2,94,2,195,0,102,2,46,0,102,2,96,0,102,2,30,0,102,2,49,0,102,2,115,0,102,2,114,0,162,1,229,0,132,1,102,2,113,0,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,119,0,168,1,78,2,110,0,116,1,94,2,94,2,195,0,53,0,250,0,102,2,29,0,195,0,216,1,182,1,217,2,190,0,46,1,242,1,14,0,11,2,129,2,2,0,102,2,43,0,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,168,1,101,2,196,3,196,3,98,1,94,2,94,2,164,1,56,1,64,0,102,2,42,0,135,1,99,1,27,1,181,1,45,1,255,0,158,1,154,1,239,1,236,1,102,2,28,0,215,1,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,168,1,110,0,110,0,110,0,110,0,94,2,94,2,110,0,254,0,13,0,102,2,41,0,20,2,19,2,27,1,225,1,19,2,201,1,28,1,119,0,49,2,100,1,102,2,40,0,28,1,50,1,89,0,78,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,110,0,168,1,85,1,220,0,43,2,94,2,94,2,95,1,43,2,62,1,102,2,95,0,157,1,255,0,83,0,74,1,28,1,28,1,255,0,128,2,77,1,100,1,255,0,102,2,39,0,50,1,100,1,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,168,1,61,1,60,1,141,0,209,1,94,2,94,2,219,0,107,2,207,1,102,2,10,0,161,1,206,1,255,0,189,0,254,1,41,2,95,1,207,0,107,1,161,0,102,2,38,0,59,1,218,0,255,0,255,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,76,0,163,1,255,0,3,0,110,3,205,1,168,1,247,0,75,1,75,1,102,2,37,0,217,0,76,0,163,1,134,1,3,0,216,0,215,0,166,1,4,0,75,1,75,1,168,1,35,2,12,0,168,1,33,2,102,2,36,0,168,1,29,2,166,1,168,1,28,2,168,1,214,0,168,1,152,1,168,1,27,2,147,1,93,2,93,2,237,0,102,2,25,0,119,0,102,2,24,0,76,2,152,1,102,2,45,0,118,0,102,2,35,0,102,2,34,0,102,2,33,0,102,2,23,0,76,2,60,0,223,0,91,2,90,2,1,2,122,1,73,0,74,0,140,0,139,0,168,1,110,0,9,1,75,0,170,1,169,1,59,0,168,1,98,2,73,0,74,0,37,2,146,1,148,1,168,1,117,1,75,0,170,1,169,1,92,2,138,0,98,2,102,2,11,0,136,1,76,0,163,1,181,0,3,0,102,2,32,0,15,1,113,1,75,1,75,1,237,1,102,2,31,0,149,0,96,2,96,2,96,2,95,2,15,0,166,1,109,1,102,2,8,0,137,0,233,1,136,0,190,0,96,2,96,2,96,2,95,2,15,0,229,1,176,0,135,0,7,0,252,0,221,1,152,1,174,0,133,0,175,0,218,1,57,0,56,0,132,0,130,0,119,0,76,0,163,1,76,2,3,0,212,1,245,0,208,1,171,0,75,1,75,1,125,0,123,0,200,1,191,1,122,0,190,1,104,0,80,1,231,0,166,1,166,0,154,0,73,0,74,0,76,1,116,0,175,1,121,0,53,1,75,0,170,1,169,1,222,0,106,0,98,2,52,1,125,2,204,0,152,1,117,2,115,2,116,2,6,0,200,0,172,1,171,1,34,1,203,0,110,2,201,0,76,2,62,0,63,0,33,1,66,0,163,1,143,1,3,0,145,1,32,1,92,0,143,0,75,1,75,1,31,1,96,2,96,2,96,2,95,2,15,0,73,0,74,0,227,0,166,1,69,1,69,0,160,1,75,0,170,1,169,1,100,2,156,1,98,2,192,0,61,0,57,2,209,0,140,1,226,0,22,1,225,0,127,1,152,1,15,2,46,2,20,1,21,2,40,2,16,2,65,1,11,2,114,1,252,1,180,0,76,2,238,1,179,0,110,1,117,0,253,0,13,1,10,2,247,1,96,2,96,2,96,2,95,2,15,0,39,2,246,1,58,0,18,1,12,2,178,0,73,0,74,0,48,1,245,1,112,1,47,1,206,0,75,0,170,1,169,1,235,1,104,1,98,2,213,0,177,0,227,1,131,0,89,1,42,1,41,1,40,1,202,0,38,1,224,1,234,1,210,1,134,0,172,0,129,0,188,1,90,1,214,1,128,0,58,1,203,1,103,0,127,0,126,0,148,0,124,0,167,0,187,1,235,0,96,2,96,2,96,2,95,2,15,0,186,1,183,1,111,2,234,0,43,1,145,0,71,2,35,1,121,1,69,2,160,0,119,0,156,0,14,1,124,2,203,3,169,0,23,1,114,2,8,2,113,2,217,1,112,2,170,0,109,2,106,2,119,0,168,0,55,0,153,1,167,1,25,2,97,2,30,1,29,1,149,1,58,2,48,2,44,2,5,0,52,0,202,1,42,2,147,0,11,1,7,2,248,1,6,2,150,1,6,1,239,0,4,1,0,2,87,1,255,1,2,1,97,1,53,2,0,1,224,0,251,0,103,1,21,1,19,1,220,1,219,1,246,0,96,1,244,0,211,1,199,1,236,0,233,0,232,0,51,1,185,1,25,1,205,0,163,0,141,1,24,1,23,2,249,1,74,1,105,2,203,3,203,3,203,3,203,3,111,1,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,82,1,0,0,0,0,0,0,100,117,112,108,105,99,97,116,101,32,87,73,84,72,32,116,97,98,108,101,32,110,97,109,101,58,32,37,115,0,0,0,110,111,116,32,97,117,116,104,111,114,105,122,101,100,0,0,97,117,116,104,111,114,105,122,101,114,32,109,97,108,102,117,110,99,116,105,111,110,0,0,67,82,69,65,84,69,32,86,73,82,84,85,65,76,32,84,65,66,76,69,32,37,84,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,116,121,112,101,61,39,116,97,98,108,101,39,44,32,110,97,109,101,61,37,81,44,32,116,98,108,95,110,97,109,101,61,37,81,44,32,114,111,111,116,112,97,103,101,61,48,44,32,115,113,108,61,37,81,32,87,72,69,82,69,32,114,111,119,105,100,61,35,37,100,0,115,113,108,105,116,101,95,116,101,109,112,95,109,97,115,116,101,114,0,0,0,0,0,0,115,113,108,105,116,101,95,109,97,115,116,101,114,0,0,0,110,97,109,101,61,39,37,113,39,32,65,78,68,32,116,121,112,101,61,39,116,97,98,108,101,39,0,0,0,0,0,0,118,105,114,116,117,97,108,32,116,97,98,108,101,115,32,109,97,121,32,110,111,116,32,98,101,32,97,108,116,101,114,101,100,0,0,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,99,111,108,117,109,110,32,116,111,32,97,32,118,105,101,119,0,0,0,115,113,108,105,116,101,95,97,108,116,101,114,116,97,98,95,37,115,0,0,0,0,0,0,117,110,97,98,108,101,32,116,111,32,111,112,101,110,32,97,32,116,101,109,112,111,114,97,114,121,32,100,97,116,97,98,97,115,101,32,102,105,108,101,32,102,111,114,32,115,116,111,114,105,110,103,32,116,101,109,112,111,114,97,114,121,32,116,97,98,108,101,115,0,0,0,115,113,108,105,116,101,95,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,97,108,116,101,114,101,100,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,80,82,73,77,65,82,89,32,75,69,89,32,99,111,108,117,109,110,0,67,97,110,110,111,116,32,97,100,100,32,97,32,85,78,73,81,85,69,32,99,111,108,117,109,110,0,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,82,69,70,69,82,69,78,67,69,83,32,99,111,108,117,109,110,32,119,105,116,104,32,110,111,110,45,78,85,76,76,32,100,101,102,97,117,108,116,32,118,97,108,117,101,0,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,78,79,84,32,78,85,76,76,32,99,111,108,117,109,110,32,119,105,116,104,32,100,101,102,97,117,108,116,32,118,97,108,117,101,32,78,85,76,76,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,99,111,108,117,109,110,32,119,105,116,104,32,110,111,110,45,99,111,110,115,116,97,110,116,32,100,101,102,97,117,108,116,0,0,0,85,80,68,65,84,69,32,34,37,119,34,46,37,115,32,83,69,84,32,115,113,108,32,61,32,115,117,98,115,116,114,40,115,113,108,44,49,44,37,100,41,32,124,124,32,39,44,32,39,32,124,124,32,37,81,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,37,100,41,32,87,72,69,82,69,32,116,121,112,101,32,61,32,39,116,97,98,108,101,39,32,65,78,68,32,110,97,109,101,32,61,32,37,81,0,0,0,0,116,98,108,95,110,97,109,101,61,37,81,0,0,0,0,0,116,121,112,101,61,39,116,114,105,103,103,101,114,39,32,65,78,68,32,40,37,115,41,0,110,97,109,101,61,37,81,0,37,115,32,79,82,32,110,97,109,101,61,37,81,0,0,0,45,0,0,0,0,0,0,0,116,104,101,114,101,32,105,115,32,97,108,114,101,97,100,121,32,97,110,111,116,104,101,114,32,116,97,98,108,101,32,111,114,32,105,110,100,101,120,32,119,105,116,104,32,116,104,105,115,32,110,97,109,101,58,32,37,115,0,0,0,0,0,0,118,105,101,119,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,97,108,116,101,114,101,100,0,0,0,0,0,0,85,80,68,65,84,69,32,34,37,119,34,46,37,115,32,83,69,84,32,115,113,108,32,61,32,115,113,108,105,116,101,95,114,101,110,97,109,101,95,112,97,114,101,110,116,40,115,113,108,44,32,37,81,44,32,37,81,41,32,87,72,69,82,69,32,37,115,59,0,0,0,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,115,113,108,32,61,32,67,65,83,69,32,87,72,69,78,32,116,121,112,101,32,61,32,39,116,114,105,103,103,101,114,39,32,84,72,69,78,32,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,114,105,103,103,101,114,40,115,113,108,44,32,37,81,41,69,76,83,69,32,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,97,98,108,101,40,115,113,108,44,32,37,81,41,32,69,78,68,44,32,116,98,108,95,110,97,109,101,32,61,32,37,81,44,32,110,97,109,101,32,61,32,67,65,83,69,32,87,72,69,78,32,116,121,112,101,61,39,116,97,98,108,101,39,32,84,72,69,78,32,37,81,32,87,72,69,78,32,110,97,109,101,32,76,73,75,69,32,39,115,113,108,105,116,101,95,97,117,116,111,105,110,100,101,120,37,37,39,32,65,78,68,32,116,121,112,101,61,39,105,110,100,101,120,39,32,84,72,69,78,32,39,115,113,108,105,116,101,95,97,117,116,111,105,110,100,101,120,95,39,32,124,124,32,37,81,32,124,124,32,115,117,98,115,116,114,40,110,97,109,101,44,37,100,43,49,56,41,32,69,76,83,69,32,110,97,109,101,32,69,78,68,32,87,72,69,82,69,32,116,98,108,95,110,97,109,101,61,37,81,32,67,79,76,76,65,84,69,32,110,111,99,97,115,101,32,65,78,68,32,40,116,121,112,101,61,39,116,97,98,108,101,39,32,79,82,32,116,121,112,101,61,39,105,110,100,101,120,39,32,79,82,32,116,121,112,101,61,39,116,114,105,103,103,101,114,39,41,59,0,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,0,85,80,68,65,84,69,32,34,37,119,34,46,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,32,115,101,116,32,110,97,109,101,32,61,32,37,81,32,87,72,69,82,69,32,110,97,109,101,32,61,32,37,81,0,0,0,0,0,0,0,85,80,68,65,84,69,32,115,113,108,105,116,101,95,116,101,109,112,95,109,97,115,116,101,114,32,83,69,84,32,115,113,108,32,61,32,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,114,105,103,103,101,114,40,115,113,108,44,32,37,81,41,44,32,116,98,108,95,110,97,109,101,32,61,32,37,81,32,87,72,69,82,69,32,37,115,59,0,0,0,0,0,118,105,101,119,32,37,115,32,105,115,32,99,105,114,99,117,108,97,114,108,121,32,100,101,102,105,110,101,100,0,0,0,0,0,2,0,3,0,5,0,6,0,7,0,8,0,9,0,110,111,32,115,117,99,104,32,99,111,108,108,97,116,105,111,110,32,115,101,113,117,101,110,99,101,58,32,37,115,0,0,3,2,1,0,0,0,0,0,73,78,84,69,71,69,82,0,37,115,58,37,100,0,0,0,97,32,71,82,79,85,80,32,66,89,32,99,108,97,117,115,101,32,105,115,32,114,101,113,117,105,114,101,100,32,98,101,102,111,114,101,32,72,65,86,73,78,71,0,0,0,0,0,79,82,68,69,82,0,0,0,71,82,79,85,80,0,0,0,97,103,103,114,101,103,97,116,101,32,102,117,110,99,116,105,111,110,115,32,97,114,101,32,110,111,116,32,97,108,108,111,119,101,100,32,105,110,32,116,104,101,32,71,82,79,85,80,32,66,89,32,99,108,97,117,115,101,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,116,101,114,109,115,32,105,110,32,79,82,68,69,82,32,66,89,32,99,108,97,117,115,101,0,0,0,0,0,0,0,37,114,32,79,82,68,69,82,32,66,89,32,116,101,114,109,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,97,110,121,32,99,111,108,117,109,110,32,105,110,32,116,104,101,32,114,101,115,117,108,116,32,115,101,116,0,0,0,0,37,114,32,37,115,32,66,89,32,116,101,114,109,32,111,117,116,32,111,102,32,114,97,110,103,101,32,45,32,115,104,111,117,108,100,32,98,101,32,98,101,116,119,101,101,110,32,49,32,97,110,100,32,37,100,0,116,111,111,32,109,97,110,121,32,116,101,114,109,115,32,105,110,32,37,115,32,66,89,32,99,108,97,117,115,101,0,0,69,120,112,114,101,115,115,105,111,110,32,116,114,101,101,32,105,115,32,116,111,111,32,108,97,114,103,101,32,40,109,97,120,105,109,117,109,32,100,101,112,116,104,32,37,100,41,0,102,117,110,99,116,105,111,110,115,0,0,0,0,0,0,0,115,101,99,111,110,100,32,97,114,103,117,109,101,110,116,32,116,111,32,108,105,107,101,108,105,104,111,111,100,40,41,32,109,117,115,116,32,98,101,32,97,32,99,111,110,115,116,97,110,116,32,98,101,116,119,101,101,110,32,48,46,48,32,97,110,100,32,49,46,48,0,0,110,111,116,32,97,117,116,104,111,114,105,122,101,100,32,116,111,32,117,115,101,32,102,117,110,99,116,105,111,110,58,32,37,115,0,0,0,0,0,0,109,105,115,117,115,101,32,111,102,32,97,103,103,114,101,103,97,116,101,32,102,117,110,99,116,105,111,110,32,37,46,42,115,40,41,0,0,0,0,0,110,111,32,115,117,99,104,32,102,117,110,99,116,105,111,110,58,32,37,46,42,115,0,0,119,114,111,110,103,32,110,117,109,98,101,114,32,111,102,32,97,114,103,117,109,101,110,116,115,32,116,111,32,102,117,110,99,116,105,111,110,32,37,46,42,115,40,41,0,0,0,0,115,117,98,113,117,101,114,105,101,115,0,0,0,0,0,0,112,97,114,97,109,101,116,101,114,115,0,0,0,0,0,0,37,115,32,112,114,111,104,105,98,105,116,101,100,32,105,110,32,67,72,69,67,75,32,99,111,110,115,116,114,97,105,110,116,115,0,0,0,0,0,0,37,115,32,112,114,111,104,105,98,105,116,101,100,32,105,110,32,112,97,114,116,105,97,108,32,105,110,100,101,120,32,87,72,69,82,69,32,99,108,97,117,115,101,115,0,0,0,0,110,101,119,0,0,0,0,0,111,108,100,0,0,0,0,0,109,105,115,117,115,101,32,111,102,32,97,108,105,97,115,101,100,32,97,103,103,114,101,103,97,116,101,32,37,115,0,0,110,111,32,115,117,99,104,32,99,111,108,117,109,110,0,0,97,109,98,105,103,117,111,117,115,32,99,111,108,117,109,110,32,110,97,109,101,0,0,0,37,115,58,32,37,115,46,37,115,46,37,115,0,0,0,0,37,115,58,32,37,115,46,37,115,0,0,0,0,0,0,0,37,115,58,32,37,115,0,0,82,79,87,73,68,0,0,0,97,99,99,101,115,115,32,116,111,32,37,115,46,37,115,46,37,115,32,105,115,32,112,114,111,104,105,98,105,116,101,100,0,0,0,0,0,0,0,0,97,99,99,101,115,115,32,116,111,32,37,115,46,37,115,32,105,115,32,112,114,111,104,105,98,105,116,101,100,0,0,0,95,82,79,87,73,68,95,0,79,73,68,0,0,0,0,0,115,113,108,105,116,101,95,115,113,95,37,112,0,0,0,0,116,111,111,32,109,97,110,121,32,114,101,102,101,114,101,110,99,101,115,32,116,111,32,34,37,115,34,58,32,109,97,120,32,54,53,53,51,53,0,0,42,0,0,0,0,0,0,0,37,115,46,37,115,0,0,0,37,115,46,37,115,46,37,115,0,0,0,0,0,0,0,0,110,111,32,115,117,99,104,32,116,97,98,108,101,58,32,37,115,0,0,0,0,0,0,0,110,111,32,116,97,98,108,101,115,32,115,112,101,99,105,102,105,101,100,0,0,0,0,0,116,111,111,32,109,97,110,121,32,99,111,108,117,109,110,115,32,105,110,32,114,101,115,117,108,116,32,115,101,116,0,0,97,32,78,65,84,85,82,65,76,32,106,111,105,110,32,109,97,121,32,110,111,116,32,104,97,118,101,32,97,110,32,79,78,32,111,114,32,85,83,73,78,71,32,99,108,97,117,115,101,0,0,0,0,0,0,0,99,97,110,110,111,116,32,104,97,118,101,32,98,111,116,104,32,79,78,32,97,110,100,32,85,83,73,78,71,32,99,108,97,117,115,101,115,32,105,110,32,116,104,101,32,115,97,109,101,32,106,111,105,110,0,0,99,97,110,110,111,116,32,106,111,105,110,32,117,115,105,110,103,32,99,111,108,117,109,110,32,37,115,32,45,32,99,111,108,117,109,110,32,110,111,116,32,112,114,101,115,101,110,116,32,105,110,32,98,111,116,104,32,116,97,98,108,101,115,0,110,111,32,115,117,99,104,32,105,110,100,101,120,58,32,37,115,0,0,0,0,0,0,0,109,117,108,116,105,112,108,101,32,114,101,102,101,114,101,110,99,101,115,32,116,111,32,114,101,99,117,114,115,105,118,101,32,116,97,98,108,101,58,32,37,115,0,0,0,0,0,0,99,105,114,99,117,108,97,114,32,114,101,102,101,114,101,110,99,101,58,32,37,115,0,0,116,97,98,108,101,32,37,115,32,104,97,115,32,37,100,32,118,97,108,117,101,115,32,102,111,114,32,37,100,32,99,111,108,117,109,110,115,0,0,0,109,117,108,116,105,112,108,101,32,114,101,99,117,114,115,105,118,101,32,114,101,102,101,114,101,110,99,101,115,58,32,37,115,0,0,0,0,0,0,0,114,101,99,117,114,115,105,118,101,32,114,101,102,101,114,101,110,99,101,32,105,110,32,97,32,115,117,98,113,117,101,114,121,58,32,37,115,0,0,0,110,111,32,115,117,99,104,32,109,111,100,117,108,101,58,32,37,115,0,0,0,0,0,0,118,116,97,98,108,101,32,99,111,110,115,116,114,117,99,116,111,114,32,102,97,105,108,101,100,58,32,37,115,0,0,0,118,116,97,98,108,101,32,99,111,110,115,116,114,117,99,116,111,114,32,100,105,100,32,110,111,116,32,100,101,99,108,97,114,101,32,115,99,104,101,109,97,58,32,37,115,0,0,0,104,105,100,100,101,110,0,0,32,104,105,100,100,101,110,0,111,98,106,101,99,116,32,110,97,109,101,32,114,101,115,101,114,118,101,100,32,102,111,114,32,105,110,116,101,114,110,97,108,32,117,115,101,58,32,37,115,0,0,0,0,0,0,0,99,111,114,114,117,112,116,32,100,97,116,97,98,97,115,101,0,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,100,97,116,97,98,97,115,101,32,37,84,0,0,0,0,0,105,100,120,0,0,0,0,0,116,98,108,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,46,0,0,0,0,0,0,0,0,0,0,0,80,71,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,47,0,0,0,0,0,0,0,0,0,0,0,64,71,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,97,97,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,32,71,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,116,97,116,95,103,101,116,0,0,0,0,0,0,0,0,37,108,108,117,0,0,0,0,32,37,108,108,117,0,0,0,115,116,97,116,95,112,117,115,104,0,0,0,0,0,0,0,115,116,97,116,95,105,110,105,116,0,0,0,0,0,0,0,120,71,0,0,136,71,0,0,152,71,0,0,0,0,0,0,168,71,0,0,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,49,0,0,0,0,116,98,108,44,105,100,120,44,115,116,97,116,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,51,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,52,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,37,115,40,37,115,41,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,37,115,32,87,72,69,82,69,32,37,115,61,37,81,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,115,113,108,105,116,101,95,109,97,115,116,101,114,40,10,32,32,116,121,112,101,32,116,101,120,116,44,10,32,32,110,97,109,101,32,116,101,120,116,44,10,32,32,116,98,108,95,110,97,109,101,32,116,101,120,116,44,10,32,32,114,111,111,116,112,97,103,101,32,105,110,116,101,103,101,114,44,10,32,32,115,113,108,32,116,101,120,116,10,41,0,67,82,69,65,84,69,32,84,69,77,80,32,84,65,66,76,69,32,115,113,108,105,116,101,95,116,101,109,112,95,109,97,115,116,101,114,40,10,32,32,116,121,112,101,32,116,101,120,116,44,10,32,32,110,97,109,101,32,116,101,120,116,44,10,32,32,116,98,108,95,110,97,109,101,32,116,101,120,116,44,10,32,32,114,111,111,116,112,97,103,101,32,105,110,116,101,103,101,114,44,10,32,32,115,113,108,32,116,101,120,116,10,41,0,0,0,0,0,0,0,49,0,0,0,0,0,0,0,97,116,116,97,99,104,101,100,32,100,97,116,97,98,97,115,101,115,32,109,117,115,116,32,117,115,101,32,116,104,101,32,115,97,109,101,32,116,101,120,116,32,101,110,99,111,100,105,110,103,32,97,115,32,109,97,105,110,32,100,97,116,97,98,97,115,101,0,0,0,0,0,117,110,115,117,112,112,111,114,116,101,100,32,102,105,108,101,32,102,111,114,109,97,116,0,83,69,76,69,67,84,32,110,97,109,101,44,32,114,111,111,116,112,97,103,101,44,32,115,113,108,32,70,82,79,77,32,39,37,113,39,46,37,115,32,79,82,68,69,82,32,66,89,32,114,111,119,105,100,0,0,83,69,76,69,67,84,32,116,98,108,44,105,100,120,44,115,116,97,116,32,70,82,79,77,32,37,81,46,115,113,108,105,116,101,95,115,116,97,116,49,0,0,0,0,0,0,0,0,117,110,111,114,100,101,114,101,100,0,0,0,0,0,0,0,115,122,61,91,48,45,57,93,42,0,0,0,0,0,0,0,33,0,32,0,30,0,28,0,26,0,0,0,0,0,0,0,105,110,118,97,108,105,100,32,114,111,111,116,112,97,103,101,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,109,97,108,102,111,114,109,101,100,32,100,97,116,97,98,97,115,101,32,115,99,104,101,109,97,32,40,37,115,41,0,0,37,115,32,45,32,37,115,0,117,110,97,98,108,101,32,116,111,32,105,100,101,110,116,105,102,121,32,116,104,101,32,111,98,106,101,99,116,32,116,111,32,98,101,32,114,101,105,110,100,101,120,101,100,0,0,0,44,32,0,0,0,0,0,0,46,0,0,0,0,0,0,0,109,105,115,117,115,101,32,111,102,32,97,103,103,114,101,103,97,116,101,58,32,37,115,40,41,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,102,117,110,99,116,105,111,110,58,32,37,46,42,115,40,41,0,0,0,0,0,0,0,0,82,65,73,83,69,40,41,32,109,97,121,32,111,110,108,121,32,98,101,32,117,115,101,100,32,119,105,116,104,105,110,32,97,32,116,114,105,103,103,101,114,45,112,114,111,103,114,97,109,0,0,0,0,0,0,0,69,88,69,67,85,84,69,32,37,115,37,115,32,83,85,66,81,85,69,82,89,32,37,100,0,0,0,0,0,0,0,0,67,79,82,82,69,76,65,84,69,68,32,0,0,0,0,0,76,73,83,84,0,0,0,0,83,67,65,76,65,82,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,80,75,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,100,101,116,97,99,104,0,0,0,110,111,32,115,117,99,104,32,100,97,116,97,98,97,115,101,58,32,37,115,0,0,0,0,99,97,110,110,111,116,32,100,101,116,97,99,104,32,100,97,116,97,98,97,115,101,32,37,115,0,0,0,0,0,0,0,99,97,110,110,111,116,32,68,69,84,65,67,72,32,100,97,116,97,98,97,115,101,32,119,105,116,104,105,110,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,37,115,32,105,115,32,108,111,99,107,101,100,0,0,0,3,0,1,0,0,0,0,0,0,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,8,76,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,97,116,116,97,99,104,0,0,0,116,111,111,32,109,97,110,121,32,97,116,116,97,99,104,101,100,32,100,97,116,97,98,97,115,101,115,32,45,32,109,97,120,32,37,100,0,0,0,0,99,97,110,110,111,116,32,65,84,84,65,67,72,32,100,97,116,97,98,97,115,101,32,119,105,116,104,105,110,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,37,115,32,105,115,32,97,108,114,101,97,100,121,32,105,110,32,117,115,101,0,0,0,100,97,116,97,98,97,115,101,32,105,115,32,97,108,114,101,97,100,121,32,97,116,116,97,99,104,101,100,0,0,0,0,117,110,97,98,108,101,32,116,111,32,111,112,101,110,32,100,97,116,97,98,97,115,101,58,32,37,115,0,0,0,0,0,110,111,32,115,117,99,104,32,116,114,105,103,103,101,114,58,32,37,83,0,0,0,0,0,105,0,246,0,97,0,1,0,46,0,1,2,78,2,247,1,97,0,1,0,46,0,0,2,78,2,247,1,74,0,0,0,9,0,254,0,0,0,0,0,116,101,109,112,111,114,97,114,121,32,116,114,105,103,103,101,114,32,109,97,121,32,110,111,116,32,104,97,118,101,32,113,117,97,108,105,102,105,101,100,32,110,97,109,101,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,116,114,105,103,103,101,114,115,32,111,110,32,118,105,114,116,117,97,108,32,116,97,98,108,101,115,0,0,0,0,0,0,0,0,116,114,105,103,103,101,114,32,37,84,32,97,108,114,101,97,100,121,32,101,120,105,115,116,115,0,0,0,0,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,116,114,105,103,103,101,114,32,111,110,32,115,121,115,116,101,109,32,116,97,98,108,101,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,37,115,32,116,114,105,103,103,101,114,32,111,110,32,118,105,101,119,58,32,37,83,0,0,0,0,66,69,70,79,82,69,0,0,65,70,84,69,82,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,73,78,83,84,69,65,68,32,79,70,32,116,114,105,103,103,101,114,32,111,110,32,116,97,98,108,101,58,32,37,83,0,0,0,37,115,32,37,84,32,99,97,110,110,111,116,32,114,101,102,101,114,101,110,99,101,32,111,98,106,101,99,116,115,32,105,110,32,100,97,116,97,98,97,115,101,32,37,115,0,0,0,37,115,32,99,97,110,110,111,116,32,117,115,101,32,118,97,114,105,97,98,108,101,115,0,73,78,83,69,82,84,32,73,78,84,79,32,37,81,46,37,115,32,86,65,76,85,69,83,40,39,116,114,105,103,103,101,114,39,44,37,81,44,37,81,44,48,44,39,67,82,69,65,84,69,32,84,82,73,71,71,69,82,32,37,113,39,41,0,116,121,112,101,61,39,116,114,105,103,103,101,114,39,32,65,78,68,32,110,97,109,101,61,39,37,113,39,0,0,0,0,45,37,84,0,0,0,0,0,114,101,115,117,108,116,0,0,144,86,0,0,0,0,0,0,0,0,0,0,8,82,0,0,1,1,0,0,0,0,0,0,160,86,0,0,2,0,0,0,0,0,16,0,176,86,0,0,3,0,0,0,0,0,0,0,136,81,0,0,4,1,0,0,0,0,0,0,192,86,0,0,2,0,0,0,16,0,0,0,208,86,0,0,5,0,0,0,0,0,0,0,232,86,0,0,2,0,0,0,8,0,0,0,0,87,0,0,6,0,0,0,0,0,0,0,16,87,0,0,7,0,0,0,0,0,0,0,32,87,0,0,2,0,0,0,128,0,0,0,48,87,0,0,9,1,0,0,0,0,0,0,64,87,0,0,10,1,0,0,0,0,0,0,88,87,0,0,2,0,0,0,0,0,0,1,112,87,0,0,2,0,0,0,0,1,0,0,176,84,0,0,11,0,0,0,0,0,0,0,136,87,0,0,12,1,0,0,0,0,0,0,160,87,0,0,13,1,0,0,0,0,0,0,184,87,0,0,2,0,0,0,0,0,8,0,200,87,0,0,0,0,0,0,0,0,0,0,216,87,0,0,2,0,0,0,32,0,0,0,240,87,0,0,2,0,0,0,4,0,0,0,0,88,0,0,2,0,0,0,0,32,0,0,32,88,0,0,14,1,0,0,0,0,0,0,56,88,0,0,15,1,0,0,0,0,0,0,72,88], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE+10240); -/* memory initializer */ allocate([16,1,0,0,0,0,0,0,168,83,0,0,17,1,0,0,0,0,0,0,224,81,0,0,18,1,0,0,0,0,0,0,240,81,0,0,19,0,0,0,0,0,0,0,88,88,0,0,2,0,0,0,0,128,0,0,208,81,0,0,21,0,0,0,0,0,0,0,112,88,0,0,22,1,0,0,0,0,0,0,48,82,0,0,23,0,0,0,0,0,0,0,128,88,0,0,22,1,0,0,0,0,0,0,152,81,0,0,24,0,0,0,0,0,0,0,144,88,0,0,2,0,0,0,0,0,0,2,160,88,0,0,17,1,0,0,0,0,0,0,176,88,0,0,2,0,0,0,0,64,0,0,200,88,0,0,2,0,0,0,0,0,4,0,224,88,0,0,2,0,0,0,0,0,2,0,0,89,0,0,0,0,0,0,0,0,0,0,168,81,0,0,25,0,0,0,0,0,0,0,16,89,0,0,2,0,0,0,64,0,0,0,40,89,0,0,26,0,0,0,0,0,0,0,96,85,0,0,27,0,0,0,0,0,0,0,56,89,0,0,28,1,0,0,0,0,0,0,136,82,0,0,29,1,0,0,0,0,0,0,64,89,0,0,30,1,0,0,0,0,0,0,64,82,0,0,31,0,0,0,0,0,0,0,80,82,0,0,32,0,0,0,0,0,0,0,80,89,0,0,0,0,0,0,0,0,0,0,64,85,0,0,33,0,0,0,0,0,0,0,96,89,0,0,34,1,0,0,0,0,0,0,112,89,0,0,2,0,0,0,0,8,1,0,4,0,0,0,50,0,1,3,134,1,8,0,25,0,2,0,90,1,2,1,134,1,8,0,25,0,1,0,156,0,0,0,35,1,1,0,0,0,0,0,99,97,99,104,101,95,115,105,122,101,0,0,0,0,0,0,112,97,103,101,95,115,105,122,101,0,0,0,0,0,0,0,115,101,99,117,114,101,95,100,101,108,101,116,101,0,0,0,110,111,114,109,97,108,0,0,101,120,99,108,117,115,105,118,101,0,0,0,0,0,0,0,108,111,99,107,105,110,103,95,109,111,100,101,0,0,0,0,106,111,117,114,110,97,108,95,109,111,100,101,0,0,0,0,106,111,117,114,110,97,108,95,115,105,122,101,95,108,105,109,105,116,0,0,0,0,0,0,97,117,116,111,95,118,97,99,117,117,109,0,0,0,0,0,4,0,1,0,50,0,1,4,44,1,0,0,24,0,2,0,25,0,1,0,51,0,7,1,109,109,97,112,95,115,105,122,101,0,0,0,0,0,0,0,116,101,109,112,95,115,116,111,114,101,0,0,0,0,0,0,116,101,109,112,95,115,116,111,114,101,95,100,105,114,101,99,116,111,114,121,0,0,0,0,110,111,116,32,97,32,119,114,105,116,97,98,108,101,32,100,105,114,101,99,116,111,114,121,0,0,0,0,0,0,0,0,115,121,110,99,104,114,111,110,111,117,115,0,0,0,0,0,83,97,102,101,116,121,32,108,101,118,101,108,32,109,97,121,32,110,111,116,32,98,101,32,99,104,97,110,103,101,100,32,105,110,115,105,100,101,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,99,105,100,0,0,0,0,0,110,97,109,101,0,0,0,0,116,121,112,101,0,0,0,0,110,111,116,110,117,108,108,0,100,102,108,116,95,118,97,108,117,101,0,0,0,0,0,0,112,107,0,0,0,0,0,0,116,97,98,108,101,0,0,0,119,105,100,116,104,0,0,0,104,101,105,103,104,116,0,0,115,101,113,110,111,0,0,0,115,101,113,0,0,0,0,0,117,110,105,113,117,101,0,0,102,105,108,101,0,0,0,0,105,100,0,0,0,0,0,0,102,114,111,109,0,0,0,0,116,111,0,0,0,0,0,0,111,110,95,117,112,100,97,116,101,0,0,0,0,0,0,0,111,110,95,100,101,108,101,116,101,0,0,0,0,0,0,0,109,97,116,99,104,0,0,0,78,79,78,69,0,0,0,0,112,97,114,101,110,116,0,0,102,107,105,100,0,0,0,0,37,1,0,0,135,1,0,0,97,0,3,0,35,3,1,0,105,110,116,101,103,114,105,116,121,95,99,104,101,99,107,0,42,42,42,32,105,110,32,100,97,116,97,98,97,115,101,32,37,115,32,42,42,42,10,0,114,111,119,32,0,0,0,0,32,109,105,115,115,105,110,103,32,102,114,111,109,32,105,110,100,101,120,32,0,0,0,0,119,114,111,110,103,32,35,32,111,102,32,101,110,116,114,105,101,115,32,105,110,32,105,110,100,101,120,32,0,0,0,0,111,107,0,0,0,0,0,0,96,84,0,0,1,0,0,0,104,84,0,0,1,0,0,0,112,84,0,0,2,0,0,0,128,84,0,0,3,0,0,0,144,84,0,0,2,0,0,0,152,84,0,0,3,0,0,0,160,84,0,0,0,0,0,0,168,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,84,70,56,0,0,0,0,85,84,70,45,56,0,0,0,85,84,70,45,49,54,108,101,0,0,0,0,0,0,0,0,85,84,70,45,49,54,98,101,0,0,0,0,0,0,0,0,85,84,70,49,54,108,101,0,85,84,70,49,54,98,101,0,85,84,70,45,49,54,0,0,85,84,70,49,54,0,0,0,101,110,99,111,100,105,110,103,0,0,0,0,0,0,0,0,117,110,115,117,112,112,111,114,116,101,100,32,101,110,99,111,100,105,110,103,58,32,37,115,0,0,0,0,0,0,0,0,4,0,1,0,25,0,1,0,51,0,0,1,0,0,0,0,4,0,0,0,50,0,1,0,35,1,1,0,0,0,0,0,99,111,109,112,105,108,101,95,111,112,116,105,111,110,0,0,102,117,108,108,0,0,0,0,114,101,115,116,97,114,116,0,98,117,115,121,0,0,0,0,108,111,103,0,0,0,0,0,99,104,101,99,107,112,111,105,110,116,101,100,0,0,0,0,119,97,108,95,97,117,116,111,99,104,101,99,107,112,111,105,110,116,0,0,0,0,0,0,116,105,109,101,111,117,116,0,115,111,102,116,95,104,101,97,112,95,108,105,109,105,116,0,37,95,0,0,0,0,0,0,102,111,114,101,105,103,110,32,107,101,121,32,109,105,115,109,97,116,99,104,32,45,32,34,37,119,34,32,114,101,102,101,114,101,110,99,105,110,103,32,34,37,119,34,0,0,0,0,83,69,84,32,78,85,76,76,0,0,0,0,0,0,0,0,83,69,84,32,68,69,70,65,85,76,84,0,0,0,0,0,67,65,83,67,65,68,69,0,82,69,83,84,82,73,67,84,0,0,0,0,0,0,0,0,78,79,32,65,67,84,73,79,78,0,0,0,0,0,0,0,116,101,109,112,111,114,97,114,121,32,115,116,111,114,97,103,101,32,99,97,110,110,111,116,32,98,101,32,99,104,97,110,103,101,100,32,102,114,111,109,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,110,111,110,101,0,0,0,0,105,110,99,114,101,109,101,110,116,97,108,0,0,0,0,0,96,86,0,0,104,86,0,0,112,86,0,0,120,86,0,0,136,18,0,0,136,86,0,0,100,101,108,101,116,101,0,0,112,101,114,115,105,115,116,0,111,102,102,0,0,0,0,0,116,114,117,110,99,97,116,101,0,0,0,0,0,0,0,0,119,97,108,0,0,0,0,0,97,112,112,108,105,99,97,116,105,111,110,95,105,100,0,0,97,117,116,111,109,97,116,105,99,95,105,110,100,101,120,0,98,117,115,121,95,116,105,109,101,111,117,116,0,0,0,0,99,97,99,104,101,95,115,112,105,108,108,0,0,0,0,0,99,97,115,101,95,115,101,110,115,105,116,105,118,101,95,108,105,107,101,0,0,0,0,0,99,104,101,99,107,112,111,105,110,116,95,102,117,108,108,102,115,121,110,99,0,0,0,0,99,111,108,108,97,116,105,111,110,95,108,105,115,116,0,0,99,111,109,112,105,108,101,95,111,112,116,105,111,110,115,0,99,111,117,110,116,95,99,104,97,110,103,101,115,0,0,0,100,97,116,97,98,97,115,101,95,108,105,115,116,0,0,0,100,101,102,97,117,108,116,95,99,97,99,104,101,95,115,105,122,101,0,0,0,0,0,0,100,101,102,101,114,95,102,111,114,101,105,103,110,95,107,101,121,115,0,0,0,0,0,0,101,109,112,116,121,95,114,101,115,117,108,116,95,99,97,108,108,98,97,99,107,115,0,0,102,111,114,101,105,103,110,95,107,101,121,95,99,104,101,99,107,0,0,0,0,0,0,0,102,111,114,101,105,103,110,95,107,101,121,95,108,105,115,116,0,0,0,0,0,0,0,0,102,111,114,101,105,103,110,95,107,101,121,115,0,0,0,0,102,114,101,101,108,105,115,116,95,99,111,117,110,116,0,0,102,117,108,108,95,99,111,108,117,109,110,95,110,97,109,101,115,0,0,0,0,0,0,0,102,117,108,108,102,115,121,110,99,0,0,0,0,0,0,0,105,103,110,111,114,101,95,99,104,101,99,107,95,99,111,110,115,116,114,97,105,110,116,115,0,0,0,0,0,0,0,0,105,110,99,114,101,109,101,110,116,97,108,95,118,97,99,117,117,109,0,0,0,0,0,0,105,110,100,101,120,95,105,110,102,111,0,0,0,0,0,0,105,110,100,101,120,95,108,105,115,116,0,0,0,0,0,0,108,101,103,97,99,121,95,102,105,108,101,95,102,111,114,109,97,116,0,0,0,0,0,0,109,97,120,95,112,97,103,101,95,99,111,117,110,116,0,0,112,97,103,101,95,99,111,117,110,116,0,0,0,0,0,0,113,117,101,114,121,95,111,110,108,121,0,0,0,0,0,0,113,117,105,99,107,95,99,104,101,99,107,0,0,0,0,0,114,101,97,100,95,117,110,99,111,109,109,105,116,116,101,100,0,0,0,0,0,0,0,0,114,101,99,117,114,115,105,118,101,95,116,114,105,103,103,101,114,115,0,0,0,0,0,0,114,101,118,101,114,115,101,95,117,110,111,114,100,101,114,101,100,95,115,101,108,101,99,116,115,0,0,0,0,0,0,0,115,99,104,101,109,97,95,118,101,114,115,105,111,110,0,0,115,104,111,114,116,95,99,111,108,117,109,110,95,110,97,109,101,115,0,0,0,0,0,0,115,104,114,105,110,107,95,109,101,109,111,114,121,0,0,0,115,116,97,116,115,0,0,0,116,97,98,108,101,95,105,110,102,111,0,0,0,0,0,0,117,115,101,114,95,118,101,114,115,105,111,110,0,0,0,0,119,97,108,95,99,104,101,99,107,112,111,105,110,116,0,0,119,114,105,116,97,98,108,101,95,115,99,104,101,109,97,0,110,111,32,115,117,99,104,32,105,110,100,101,120,58,32,37,83,0,0,0,0,0,0,0,105,110,100,101,120,32,97,115,115,111,99,105,97,116,101,100,32,119,105,116,104,32,85,78,73,81,85,69,32,111,114,32,80,82,73,77,65,82,89,32,75,69,89,32,99,111,110,115,116,114,97,105,110,116,32,99,97,110,110,111,116,32,98,101,32,100,114,111,112,112,101,100,0,0,0,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,37,115,32,87,72,69,82,69,32,110,97,109,101,61,37,81,32,65,78,68,32,116,121,112,101,61,39,105,110,100,101,120,39,0,0,0,0,0,0,0,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,114,111,111,116,112,97,103,101,61,37,100,32,87,72,69,82,69,32,35,37,100,32,65,78,68,32,114,111,111,116,112,97,103,101,61,35,37,100,0,115,113,108,105,116,101,95,115,116,97,116,37,100,0,0,0,48,0,0,0,0,0,0,0,118,97,114,105,97,98,108,101,32,110,117,109,98,101,114,32,109,117,115,116,32,98,101,32,98,101,116,119,101,101,110,32,63,49,32,97,110,100,32,63,37,100,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,83,81,76,32,118,97,114,105,97,98,108,101,115,0,0,116,97,98,108,101,32,37,83,32,104,97,115,32,110,111,32,99,111,108,117,109,110,32,110,97,109,101,100,32,37,115,0,116,97,98,108,101,32,37,83,32,104,97,115,32,37,100,32,99,111,108,117,109,110,115,32,98,117,116,32,37,100,32,118,97,108,117,101,115,32,119,101,114,101,32,115,117,112,112,108,105,101,100,0,0,0,0,0,37,100,32,118,97,108,117,101,115,32,102,111,114,32,37,100,32,99,111,108,117,109,110,115,0,0,0,0,0,0,0,0,114,111,119,115,32,105,110,115,101,114,116,101,100,0,0,0,97,116,32,109,111,115,116,32,37,100,32,116,97,98,108,101,115,32,105,110,32,97,32,106,111,105,110,0,0,0,0,0,62,60,59,61,0,0,0,0,0,0,105,102,62,59,61,60,113,111,110,112,0,0,0,0,9,8,0,0,0,0,0,0,105,102,0,0,0,0,0,0,83,69,65,82,67,72,0,0,83,67,65,78,0,0,0,0,37,115,32,83,85,66,81,85,69,82,89,32,37,100,0,0,37,115,32,84,65,66,76,69,32,37,115,0,0,0,0,0,37,115,32,65,83,32,37,115,0,0,0,0,0,0,0,0,37,115,32,85,83,73,78,71,32,80,82,73,77,65,82,89,32,75,69,89,37,46,48,115,37,115,0,0,0,0,0,0,37,115,37,46,48,115,37,115,0,0,0,0,0,0,0,0,37,115,32,85,83,73,78,71,32,65,85,84,79,77,65,84,73,67,32,67,79,86,69,82,73,78,71,32,73,78,68,69,88,37,46,48,115,37,115,0,37,115,32,85,83,73,78,71,32,67,79,86,69,82,73,78,71,32,73,78,68,69,88,32,37,115,37,115,0,0,0,0,37,115,32,85,83,73,78,71,32,73,78,68,69,88,32,37,115,37,115,0,0,0,0,0,37,115,32,85,83,73,78,71,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,0,0,0,0,37,115,32,40,114,111,119,105,100,61,63,41,0,0,0,0,37,115,32,40,114,111,119,105,100,62,63,32,65,78,68,32,114,111,119,105,100,60,63,41,0,0,0,0,0,0,0,0,37,115,32,40,114,111,119,105,100,62,63,41,0,0,0,0,37,115,32,40,114,111,119,105,100,60,63,41,0,0,0,0,37,115,32,86,73,82,84,85,65,76,32,84,65,66,76,69,32,73,78,68,69,88,32,37,100,58,37,115,0,0,0,0,32,40,0,0,0,0,0,0,61,0,0,0,0,0,0,0,32,65,78,68,32,0,0,0,65,78,89,40,0,0,0,0,41,0,0,0,0,0,0,0,62,0,0,0,0,0,0,0,60,0,0,0,0,0,0,0,97,117,116,111,109,97,116,105,99,32,105,110,100,101,120,32,111,110,32,37,115,40,37,115,41,0,0,0,0,0,0,0,97,117,116,111,45,105,110,100,101,120,0,0,0,0,0,0,110,111,32,113,117,101,114,121,32,115,111,108,117,116,105,111,110,0,0,0,0,0,0,0,10,10,9,9,8,8,7,7,7,6,6,6,5,5,5,4,4,4,4,3,3,3,3,3,3,2,2,2,2,2,2,2,37,115,46,120,66,101,115,116,73,110,100,101,120,40,41,32,109,97,108,102,117,110,99,116,105,111,110,0,0,0,0,0,116,97,98,108,101,32,37,115,58,32,120,66,101,115,116,73,110,100,101,120,32,114,101,116,117,114,110,101,100,32,97,110,32,105,110,118,97,108,105,100,32,112,108,97,110,0,0,0,83,81,0,0,0,0,0,0,45,45,32,84,82,73,71,71,69,82,32,37,115,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,2,0,1,0,1,1,4,36,1,4,5,16,0,2,2,2,2,0,2,2,0,0,32,0,0,4,5,4,0,0,1,1,5,5,0,0,0,2,2,16,0,0,0,0,0,0,0,17,17,17,17,8,17,17,17,17,2,2,0,76,76,0,0,0,5,5,21,21,21,21,21,21,0,76,76,76,76,76,76,76,76,76,76,0,36,2,0,0,2,0,1,1,1,1,8,8,0,2,1,1,1,1,2,0,0,2,2,0,0,0,0,0,0,12,69,21,1,2,0,1,8,2,5,5,5,0,1,0,0,0,0,4,4,4,4,4,0,0,0,1,0,2,2,1,0,0,0,0,16,16,2,16,0,0,0,0,0,1,2,3,4,6,8,8,0,0,0,0,0,0,0,0,176,66,0,0,3,0,0,0,168,66,0,0,3,0,0,0,111,105,100,0,0,0,0,0,70,79,82,69,73,71,78,32,75,69,89,32,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,0,0,0,37,115,46,114,111,119,105,100,0,0,0,0,0,0,0,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,109,111,100,105,102,105,101,100,0,0,0,0,99,97,110,110,111,116,32,109,111,100,105,102,121,32,37,115,32,98,101,99,97,117,115,101,32,105,116,32,105,115,32,97,32,118,105,101,119,0,0,0,110,111,32,115,117,99,104,32,99,111,108,117,109,110,58,32,37,115,0,0,0,0,0,0,114,111,119,115,32,117,112,100,97,116,101,100,0,0,0,0,95,114,111,119,105,100,95,0,116,111,111,32,109,97,110,121,32,99,111,108,117,109,110,115,32,105,110,32,37,115,0,0,114,111,119,115,32,100,101,108,101,116,101,100,0,0,0,0,110,97,116,117,114,97,108,101,102,116,111,117,116,101,114,105,103,104,116,102,117,108,108,105,110,110,101,114,99,114,111,115,115,0,0,0,0,0,0,0,0,7,4,6,4,40,10,5,32,14,5,48,19,4,56,23,5,1,28,5,3,0,0,0,117,110,107,110,111,119,110,32,111,114,32,117,110,115,117,112,112,111,114,116,101,100,32,106,111,105,110,32,116,121,112,101,58,32,37,84,32,37,84,37,115,37,84,0,0,0,0,0,82,73,71,72,84,32,97,110,100,32,70,85,76,76,32,79,85,84,69,82,32,74,79,73,78,115,32,97,114,101,32,110,111,116,32,99,117,114,114,101,110,116,108,121,32,115,117,112,112,111,114,116,101,100,0,0,97,32,74,79,73,78,32,99,108,97,117,115,101,32,105,115,32,114,101,113,117,105,114,101,100,32,98,101,102,111,114,101,32,37,115,0,0,0,0,0,79,78,0,0,0,0,0,0,85,83,73,78,71,0,0,0,68,73,83,84,73,78,67,84,0,0,0,0,0,0,0,0,71,82,79,85,80,32,66,89,0,0,0,0,0,0,0,0,82,73,71,72,84,32,80,65,82,84,32,79,70,32,79,82,68,69,82,32,66,89,0,0,79,82,68,69,82,32,66,89,0,0,0,0,0,0,0,0,99,111,108,117,109,110,37,100,0,0,0,0,0,0,0,0,83,67,65,78,32,84,65,66,76,69,32,37,115,37,115,37,115,0,0,0,0,0,0,0,32,85,83,73,78,71,32,67,79,86,69,82,73,78,71,32,73,78,68,69,88,32,0,0,68,73,83,84,73,78,67,84,32,97,103,103,114,101,103,97,116,101,115,32,109,117,115,116,32,104,97,118,101,32,101,120,97,99,116,108,121,32,111,110,101,32,97,114,103,117,109,101,110,116,0,0,0,0,0,0,85,83,69,32,84,69,77,80,32,66,45,84,82,69,69,32,70,79,82,32,37,115,0,0,79,82,68,69,82,32,66,89,32,99,108,97,117,115,101,32,115,104,111,117,108,100,32,99,111,109,101,32,97,102,116,101,114,32,37,115,32,110,111,116,32,98,101,102,111,114,101,0,76,73,77,73,84,32,99,108,97,117,115,101,32,115,104,111,117,108,100,32,99,111,109,101,32,97,102,116,101,114,32,37,115,32,110,111,116,32,98,101,102,111,114,101,0,0,0,0,97,108,108,32,86,65,76,85,69,83,32,109,117,115,116,32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,116,101,114,109,115,0,0,0,83,69,76,69,67,84,115,32,116,111,32,116,104,101,32,108,101,102,116,32,97,110,100,32,114,105,103,104,116,32,111,102,32,37,115,32,100,111,32,110,111,116,32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,117,108,116,32,99,111,108,117,109,110,115,0,0,0,0,0,0,0,67,79,77,80,79,85,78,68,32,83,85,66,81,85,69,82,73,69,83,32,37,100,32,65,78,68,32,37,100,32,37,115,40,37,115,41,0,0,0,0,85,83,73,78,71,32,84,69,77,80,32,66,45,84,82,69,69,32,0,0,0,0,0,0,85,78,73,79,78,32,65,76,76,0,0,0,0,0,0,0,73,78,84,69,82,83,69,67,84,0,0,0,0,0,0,0,69,88,67,69,80,84,0,0,85,78,73,79,78,0,0,0,111,110,108,121,32,97,32,115,105,110,103,108,101,32,114,101,115,117,108,116,32,97,108,108,111,119,101,100,32,102,111,114,32,97,32,83,69,76,69,67,84,32,116,104,97,116,32,105,115,32,112,97,114,116,32,111,102,32,97,110,32,101,120,112,114,101,115,115,105,111,110,0,112,97,114,97,109,101,116,101,114,115,32,97,114,101,32,110,111,116,32,97,108,108,111,119,101,100,32,105,110,32,118,105,101,119,115,0,0,0,0,0,118,105,101,119,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,0,0,0,0,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,100,114,111,112,112,101,100,0,0,0,0,0,117,115,101,32,68,82,79,80,32,84,65,66,76,69,32,116,111,32,100,101,108,101,116,101,32,116,97,98,108,101,32,37,115,0,0,0,0,0,0,0,117,115,101,32,68,82,79,80,32,86,73,69,87,32,116,111,32,100,101,108,101,116,101,32,118,105,101,119,32,37,115,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,32,87,72,69,82,69,32,110,97,109,101,61,37,81,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,37,115,32,87,72,69,82,69,32,116,98,108,95,110,97,109,101,61,37,81,32,97,110,100,32,116,121,112,101,33,61,39,116,114,105,103,103,101,114,39,0,102,111,114,101,105,103,110,32,107,101,121,32,111,110,32,37,115,32,115,104,111,117,108,100,32,114,101,102,101,114,101,110,99,101,32,111,110,108,121,32,111,110,101,32,99,111,108,117,109,110,32,111,102,32,116,97,98,108,101,32,37,84,0,0,110,117,109,98,101,114,32,111,102,32,99,111,108,117,109,110,115,32,105,110,32,102,111,114,101,105,103,110,32,107,101,121,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,99,111,108,117,109,110,115,32,105,110,32,116,104,101,32,114,101,102,101,114,101,110,99,101,100,32,116,97,98,108,101,0,0,0,117,110,107,110,111,119,110,32,99,111,108,117,109,110,32,34,37,115,34,32,105,110,32,102,111,114,101,105,103,110,32,107,101,121,32,100,101,102,105,110,105,116,105,111,110,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,97,32,84,69,77,80,32,105,110,100,101,120,32,111,110,32,110,111,110,45,84,69,77,80,32,116,97,98,108,101,32,34,37,115,34,0,0,0,0,0,0,0,97,108,116,101,114,116,97,98,95,0,0,0,0,0,0,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,105,110,100,101,120,101,100,0,0,0,0,0,118,105,101,119,115,32,109,97,121,32,110,111,116,32,98,101,32,105,110,100,101,120,101,100,0,0,0,0,0,0,0,0,118,105,114,116,117,97,108,32,116,97,98,108,101,115,32,109,97,121,32,110,111,116,32,98,101,32,105,110,100,101,120,101,100,0,0,0,0,0,0,0,116,104,101,114,101,32,105,115,32,97,108,114,101,97,100,121,32,97,32,116,97,98,108,101,32,110,97,109,101,100,32,37,115,0,0,0,0,0,0,0,105,110,100,101,120,32,37,115,32,97,108,114,101,97,100,121,32,101,120,105,115,116,115,0,115,113,108,105,116,101,95,97,117,116,111,105,110,100,101,120,95,37,115,95,37,100,0,0,116,97,98,108,101,32,37,115,32,104,97,115,32,110,111,32,99,111,108,117,109,110,32,110,97,109,101,100,32,37,115,0,99,111,110,102,108,105,99,116,105,110,103,32,79,78,32,67,79,78,70,76,73,67,84,32,99,108,97,117,115,101,115,32,115,112,101,99,105,102,105,101,100,0,0,0,0,0,0,0,67,82,69,65,84,69,37,115,32,73,78,68,69,88,32,37,46,42,115,0,0,0,0,0,32,85,78,73,81,85,69,0,73,78,83,69,82,84,32,73,78,84,79,32,37,81,46,37,115,32,86,65,76,85,69,83,40,39,105,110,100,101,120,39,44,37,81,44,37,81,44,35,37,100,44,37,81,41,59,0,110,97,109,101,61,39,37,113,39,32,65,78,68,32,116,121,112,101,61,39,105,110,100,101,120,39,0,0,0,0,0,0,116,97,98,108,101,32,34,37,115,34,32,104,97,115,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,112,114,105,109,97,114,121,32,107,101,121,0,0,0,0,0,0,0,0,65,85,84,79,73,78,67,82,69,77,69,78,84,32,105,115,32,111,110,108,121,32,97,108,108,111,119,101,100,32,111,110,32,97,110,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,0,100,101,102,97,117,108,116,32,118,97,108,117,101,32,111,102,32,99,111,108,117,109,110,32,91,37,115,93,32,105,115,32,110,111,116,32,99,111,110,115,116,97,110,116,0,0,0,0,116,111,111,32,109,97,110,121,32,99,111,108,117,109,110,115,32,111,110,32,37,115,0,0,100,117,112,108,105,99,97,116,101,32,99,111,108,117,109,110,32,110,97,109,101,58,32,37,115,0,0,0,0,0,0,0,65,85,84,79,73,78,67,82,69,77,69,78,84,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,87,73,84,72,79,85,84,32,82,79,87,73,68,32,116,97,98,108,101,115,0,0,0,0,0,0,0,80,82,73,77,65,82,89,32,75,69,89,32,109,105,115,115,105,110,103,32,111,110,32,116,97,98,108,101,32,37,115,0,84,65,66,76,69,0,0,0,86,73,69,87,0,0,0,0,67,82,69,65,84,69,32,37,115,32,37,46,42,115,0,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,116,121,112,101,61,39,37,115,39,44,32,110,97,109,101,61,37,81,44,32,116,98,108,95,110,97,109,101,61,37,81,44,32,114,111,111,116,112,97,103,101,61,35,37,100,44,32,115,113,108,61,37,81,32,87,72,69,82,69,32,114,111,119,105,100,61,35,37,100,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,40,110,97,109,101,44,115,101,113,41,0,0,0,0,0,0,0,116,98,108,95,110,97,109,101,61,39,37,113,39,32,65,78,68,32,116,121,112,101,33,61,39,116,114,105,103,103,101,114,39,0,0,0,0,0,0,0,10,32,32,0,0,0,0,0,44,10,32,32,0,0,0,0,10,41,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,0,0,0,200,104,0,0,192,5,0,0,208,104,0,0,216,104,0,0,224,104,0,0,0,0,0,0,32,84,69,88,84,0,0,0,32,78,85,77,0,0,0,0,32,73,78,84,0,0,0,0,32,82,69,65,76,0,0,0,116,101,109,112,111,114,97,114,121,32,116,97,98,108,101,32,110,97,109,101,32,109,117,115,116,32,98,101,32,117,110,113,117,97,108,105,102,105,101,100,0,0,0,0,0,0,0,0,116,97,98,108,101,32,37,84,32,97,108,114,101,97,100,121,32,101,120,105,115,116,115,0,116,104,101,114,101,32,105,115,32,97,108,114,101,97,100,121,32,97,110,32,105,110,100,101,120,32,110,97,109,101,100,32,37,115,0,0,0,0,0,0,104,105,0,0,112,105,0,0,120,105,0,0,0,0,0,0,66,69,71,73,78,0,0,0,82,69,76,69,65,83,69,0,82,79,76,76,66,65,67,75,0,0,0,0,0,0,0,0,67,79,77,77,73,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,97,114,115,101,114,32,115,116,97,99,107,32,111,118,101,114,102,108,111,119,0,0,0,224,3,33,4,75,5,132,4,180,4,180,4,1,0,6,1,237,255,135,0,135,0,8,3,180,4,180,4,180,4,180,4,69,0,69,0,53,0,208,0,27,1,243,2,58,0,213,2,136,2,59,2,238,1,161,1,84,1,7,1,212,0,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,110,3,59,3,161,3,212,3,212,3,46,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,234,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,185,255,209,255,209,255,209,255,209,255,209,255,0,0,29,0,244,255,27,1,27,1,139,0,91,0,136,1,136,1,126,3,160,2,214,2,103,5,170,255,170,255,170,255,88,0,62,1,62,1,99,0,125,1,236,255,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,112,2,108,3,214,2,160,2,60,5,60,5,60,5,60,5,60,5,60,5,170,255,170,255,170,255,49,1,136,0,136,0,142,0,167,0,226,0,154,0,137,0,152,0,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,80,1,80,1,80,1,27,1,27,1,96,1,27,1,27,1,27,1,27,1,27,1,228,0,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,245,1,57,2,84,2,84,2,84,2,251,1,241,1,185,1,135,1,97,1,156,0,156,0,89,3,97,1,89,3,223,2,45,3,127,2,203,2,156,0,76,1,203,2,203,2,240,1,163,1,134,2,77,5,160,4,160,4,55,5,55,5,160,4,61,5,236,4,120,4,66,5,66,5,66,5,66,5,160,4,26,5,120,4,61,5,236,4,236,4,120,4,160,4,26,5,182,4,4,5,160,4,160,4,26,5,160,4,26,5,160,4,26,5,238,4,183,4,183,4,183,4,250,4,238,4,183,4,193,4,183,4,250,4,183,4,183,4,161,4,176,4,161,4,176,4,161,4,176,4,160,4,160,4,137,4,238,4,178,4,178,4,238,4,130,4,131,4,123,4,128,4,120,4,217,4,215,4,226,4,226,4,230,4,230,4,230,4,230,4,170,255,170,255,170,255,170,255,170,255,170,255,44,4,48,1,14,2,249,0,152,1,173,255,178,1,44,3,27,0,43,3,39,3,34,3,239,2,77,2,139,2,163,0,131,0,162,2,110,1,194,1,43,1,148,0,23,0,102,0,229,0,235,255,221,4,220,4,198,4,75,4,204,4,148,4,199,4,191,4,189,4,91,4,82,4,99,4,86,4,185,4,81,4,188,4,202,4,74,4,65,4,116,4,115,4,80,4,165,4,154,4,70,4,187,4,181,4,163,4,77,4,47,4,129,4,151,4,122,4,114,4,127,4,67,4,140,4,141,4,139,4,45,4,48,4,124,4,88,4,110,4,103,4,105,4,102,4,68,4,90,4,94,4,64,4,66,4,69,4,63,4,60,4,219,3,55,4,53,4,50,4,41,4,156,3,253,3,246,3,236,3,238,3,51,3,227,2,128,3,87,3,36,3,227,2,228,2,224,2,178,2,142,2,153,2,106,2,70,2,56,2,16,2,42,2,123,1,20,2,223,1,199,1,123,1,176,1,115,1,85,1,28,0,82,1,116,0,245,255,199,255,171,255,7,0,248,255,3,0,0,0,0,0,135,2,196,3,196,3,196,3,110,3,110,3,201,3,196,3,6,3,34,3,34,3,170,3,201,3,201,3,201,3,108,3,201,3,201,3,201,3,196,3,201,3,10,3,40,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,169,3,171,3,48,3,47,3,150,3,21,3,45,3,38,3,42,3,111,3,104,3,105,3,103,3,107,3,112,3,201,3,41,3,73,3,88,3,72,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,82,3,87,3,94,3,86,3,83,3,75,3,74,3,76,3,77,3,201,3,201,3,161,2,227,2,201,3,201,3,78,3,201,3,173,2,79,3,91,3,90,3,89,3,168,2,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,135,2,196,3,201,3,201,3,196,3,196,3,196,3,196,3,196,3,196,3,188,3,10,3,0,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,176,3,174,3,201,3,123,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,141,2,201,3,143,3,6,3,6,3,6,3,8,3,242,2,254,2,143,2,44,3,23,3,23,3,155,3,44,3,155,3,198,2,221,2,195,2,34,3,23,3,106,3,34,3,34,3,7,3,254,2,201,3,181,3,14,3,14,3,173,3,173,3,14,3,53,3,231,2,44,3,238,2,238,2,238,2,238,2,14,3,158,2,44,3,53,3,231,2,231,2,44,3,14,3,158,2,149,3,147,3,14,3,14,3,158,2,14,3,158,2,14,3,158,2,116,3,229,2,229,2,229,2,213,2,116,3,229,2,198,2,229,2,213,2,229,2,229,2,27,3,22,3,27,3,22,3,27,3,22,3,14,3,14,3,201,3,116,3,120,3,120,3,116,3,39,3,28,3,37,3,35,3,44,3,164,2,216,2,151,2,151,2,140,2,140,2,140,2,140,2,193,3,193,3,188,3,200,2,200,2,183,2,201,3,201,3,201,3,201,3,201,3,201,3,175,2,201,3,125,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,60,3,201,3,136,2,183,3,201,3,201,3,180,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,153,3,201,3,201,3,201,3,201,3,201,3,201,3,146,3,145,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,245,2,201,3,201,3,201,3,249,2,201,3,201,3,201,3,201,3,201,3,201,3,36,3,201,3,29,3,201,3,109,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,198,3,201,3,201,3,201,3,197,3,201,3,201,3,201,3,201,3,201,3,62,3,201,3,61,3,65,3,201,3,149,2,201,3,132,2,137,2,192,3,195,3,194,3,191,3,190,3,189,3,184,3,182,3,179,3,178,3,177,3,175,3,172,3,168,3,129,3,127,3,134,3,133,3,132,3,131,3,130,3,128,3,126,3,124,3,50,3,49,3,46,3,43,3,241,2,167,3,122,3,240,2,237,2,236,2,157,2,185,3,152,3,161,3,160,3,159,3,54,3,158,3,157,3,156,3,154,3,151,3,138,3,52,3,51,3,232,2,114,3,113,3,160,2,142,3,141,3,140,3,144,3,148,3,139,3,16,3,239,2,159,2,156,2,163,2,167,2,219,2,220,2,228,2,226,2,225,2,224,2,223,2,222,2,218,2,169,2,174,2,212,2,197,2,196,2,205,2,204,2,210,2,209,2,208,2,207,2,206,2,203,2,202,2,201,2,194,2,193,2,199,2,192,2,215,2,214,2,211,2,191,2,235,2,234,2,233,2,230,2,190,2,189,2,188,2,65,3,187,2,186,2,70,3,69,3,98,3,58,3,243,2,247,2,246,2,250,2,251,2,3,3,2,3,1,3,12,3,13,3,25,3,24,3,56,3,55,3,26,3,11,3,5,3,4,3,20,3,19,3,18,3,17,3,9,3,255,2,31,3,30,3,100,3,15,3,99,3,97,3,166,3,165,3,164,3,163,3,162,3,102,3,199,3,200,3,119,3,121,3,118,3,33,3,32,3,117,3,101,3,71,3,68,3,178,2,179,2,137,3,136,3,135,3,181,2,180,2,177,2,176,2,95,3,92,3,84,3,96,3,93,3,85,3,81,3,80,3,66,3,64,3,63,3,59,3,67,3,248,2,244,2,57,3,253,2,252,2,185,2,184,2,182,2,166,2,165,2,162,2,155,2,153,2,152,2,154,2,150,2,148,2,147,2,146,2,145,2,144,2,172,2,171,2,170,2,142,2,139,2,138,2,134,2,133,2,131,2,0,0,0,0,19,22,22,23,1,24,26,15,27,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,108,109,110,27,28,23,50,51,80,81,82,83,122,85,86,87,88,89,90,91,92,93,94,95,22,70,23,71,72,73,74,75,76,77,78,79,80,81,82,83,122,85,86,87,88,89,90,91,92,93,94,95,19,97,91,92,93,94,95,26,85,86,87,88,89,90,91,92,93,94,95,27,28,97,98,99,122,211,102,103,104,79,19,50,51,19,122,59,55,113,224,225,226,89,90,91,92,93,94,95,23,27,28,26,71,72,73,74,75,76,77,78,79,80,81,82,83,51,85,86,87,88,89,90,91,92,93,94,95,19,132,133,58,89,90,21,108,109,110,27,28,97,98,33,100,7,8,119,120,22,19,107,42,109,27,28,27,28,95,28,50,51,99,100,101,102,103,104,105,27,28,97,98,107,152,112,132,133,112,65,69,71,72,73,74,75,76,77,78,79,80,81,82,83,11,85,86,87,88,89,90,91,92,93,94,95,19,101,97,97,98,24,101,122,157,12,99,103,112,102,103,104,152,22,97,98,97,98,27,28,113,27,29,91,164,165,124,50,51,97,98,219,59,132,133,134,22,23,45,66,47,212,213,124,140,132,133,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,164,165,27,28,230,50,51,233,108,109,110,70,16,59,23,97,98,26,97,22,66,185,12,187,27,28,71,72,73,74,75,76,77,78,79,80,81,82,83,29,85,86,87,88,89,90,91,92,93,94,95,19,22,148,149,45,23,47,62,154,64,156,108,109,110,37,69,23,163,59,26,26,97,98,144,145,146,147,152,200,52,23,50,51,26,22,89,90,60,210,7,8,9,138,97,22,23,26,101,26,174,175,197,71,72,73,74,75,76,77,78,79,80,81,82,83,16,85,86,87,88,89,90,91,92,93,94,95,19,132,133,134,23,152,208,209,140,152,152,111,195,196,98,70,163,160,152,23,22,164,165,246,207,27,152,174,175,171,172,50,51,137,62,139,64,171,172,222,124,27,138,24,163,89,90,130,174,175,197,163,71,72,73,74,75,76,77,78,79,80,81,82,83,22,85,86,87,88,89,90,91,92,93,94,95,19,197,181,182,23,208,209,152,197,26,189,132,133,232,224,225,226,152,97,91,26,232,116,212,213,152,222,121,152,174,175,50,51,243,97,22,23,22,234,174,175,177,23,239,116,163,177,174,175,121,174,175,71,72,73,74,75,76,77,78,79,80,81,82,83,24,85,86,87,88,89,90,91,92,93,94,95,19,23,197,11,23,227,70,208,220,152,31,224,225,226,35,98,224,225,226,108,109,110,115,152,117,118,27,222,49,123,24,50,51,27,0,1,2,224,225,226,166,124,168,169,239,174,175,170,171,172,22,194,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,19,22,208,24,23,195,196,170,171,172,174,175,152,26,152,152,152,207,152,97,152,23,152,51,244,152,97,152,247,248,23,50,51,26,174,175,174,175,174,175,174,175,174,175,174,175,23,174,175,174,175,188,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,19,152,107,152,33,24,152,100,101,27,174,175,152,42,152,23,152,26,152,23,152,26,152,174,175,174,175,152,174,175,23,50,51,26,174,175,174,175,174,175,174,175,174,175,174,175,163,119,120,174,175,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,66,152,97,197,23,50,51,26,53,23,174,175,26,23,23,23,26,26,26,36,106,146,147,174,175,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,152,196,119,120,19,50,51,168,169,26,174,175,207,28,152,249,250,152,163,163,163,163,174,175,163,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,152,197,197,197,197,50,51,197,194,36,174,175,191,192,152,191,192,163,152,66,124,152,174,175,152,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,197,152,100,188,152,50,51,152,152,188,174,175,252,152,94,95,152,152,152,1,2,152,152,174,175,19,152,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,152,188,188,22,194,50,51,240,173,194,174,175,252,194,152,36,181,28,152,23,219,122,174,175,219,221,152,152,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,19,20,152,22,23,194,152,240,27,28,174,175,240,19,20,26,22,194,194,38,22,27,28,152,23,22,152,116,174,175,152,23,38,152,23,152,221,152,57,152,23,163,50,51,194,174,175,66,174,175,69,57,174,175,40,174,175,174,175,174,175,174,175,69,22,53,74,75,30,53,89,90,22,22,152,197,23,96,97,98,22,152,101,89,90,91,208,209,152,53,96,97,98,101,22,101,174,175,152,19,20,105,22,174,175,112,19,27,28,20,174,175,24,132,133,134,135,136,38,44,174,175,107,61,54,26,132,133,134,135,136,54,107,22,5,140,1,57,36,111,122,28,79,79,131,123,66,19,20,69,22,1,16,20,125,27,28,123,111,120,23,131,23,16,68,142,38,15,22,89,90,3,167,4,248,251,96,97,98,180,180,101,251,151,6,57,151,13,151,26,25,151,161,202,153,162,153,69,130,128,203,19,20,127,22,126,204,129,22,27,28,205,132,133,134,135,136,89,90,231,38,95,137,179,96,97,98,206,179,101,122,107,159,159,125,231,216,228,107,57,184,217,216,176,217,176,48,106,18,184,158,69,159,158,46,71,237,176,176,176,132,133,134,135,136,217,176,137,216,178,158,89,90,179,176,159,179,159,96,97,98,159,159,101,5,158,202,22,18,10,11,12,13,14,190,238,17,190,158,193,41,159,202,193,159,202,245,193,193,223,190,32,159,34,132,133,134,135,136,159,39,155,43,150,223,177,201,178,177,186,66,199,177,152,253,56,215,152,182,152,202,152,63,152,152,66,67,242,229,152,174,152,152,152,152,152,152,152,199,242,202,152,198,152,152,152,183,192,152,215,152,183,215,183,152,241,214,152,211,152,152,211,211,152,152,241,152,152,152,152,152,152,152,114,152,152,235,152,152,152,174,187,95,174,253,253,253,253,236,253,253,253,253,253,253,253,253,253,253,253,141,0,0,0,0,0,0,0,0,0,27,27,27,27,0,27], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE+20480); -/* memory initializer */ allocate([27,27,0,27,27,27,27,0,0,0,27,0,0,27,0,0,0,27,0,0,0,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,0,0,100,97,116,97,98,97,115,101,32,115,99,104,101,109,97,32,105,115,32,108,111,99,107,101,100,58,32,37,115,0,0,0,115,116,97,116,101,109,101,110,116,32,116,111,111,32,108,111,110,103,0,0,0,0,0,0,176,120,0,0,184,120,0,0,192,120,0,0,200,120,0,0,208,120,0,0,216,120,0,0,224,120,0,0,232,120,0,0,240,120,0,0,0,121,0,0,72,83,0,0,8,121,0,0,97,100,100,114,0,0,0,0,111,112,99,111,100,101,0,0,112,49,0,0,0,0,0,0,112,50,0,0,0,0,0,0,112,51,0,0,0,0,0,0,112,52,0,0,0,0,0,0,112,53,0,0,0,0,0,0,99,111,109,109,101,110,116,0,115,101,108,101,99,116,105,100,0,0,0,0,0,0,0,0,111,114,100,101,114,0,0,0,100,101,116,97,105,108,0,0,117,110,111,112,101,110,101,100,0,0,0,0,0,0,0,0,110,111,32,115,117,99,104,32,118,105,101,119,0,0,0,0,110,111,32,115,117,99,104,32,116,97,98,108,101,0,0,0,98,105,110,100,32,111,110,32,97,32,98,117,115,121,32,112,114,101,112,97,114,101,100,32,115,116,97,116,101,109,101,110,116,58,32,91,37,115,93,0,0,0,0,0,192,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,160,121,0,0,176,121,0,0,184,121,0,0,192,121,0,0,78,79,84,32,78,85,76,76,0,0,0,0,0,0,0,0,85,78,73,81,85,69,0,0,67,72,69,67,75,0,0,0,70,79,82,69,73,71,78,32,75,69,89,0,0,0,0,0,97,98,111,114,116,32,97,116,32,37,100,32,105,110,32,91,37,115,93,58,32,37,115,0,37,115,32,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,58,32,37,115,0,0,0,0,0,0,0,0,37,115,32,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,0,0,0,0,0,0,0,0,1,2,0,2,2,0,0,0,0,0,0,0,0,1,2,1,1,1,2,1,2,0,0,0,0,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,115,97,118,101,112,111,105,110,116,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114,101,115,115,0,0,0,0,0,0,110,111,32,115,117,99,104,32,115,97,118,101,112,111,105,110,116,58,32,37,115,0,0,0,99,97,110,110,111,116,32,114,101,108,101,97,115,101,32,115,97,118,101,112,111,105,110,116,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114,101,115,115,0,0,0,99,97,110,110,111,116,32,99,111,109,109,105,116,32,116,114,97,110,115,97,99,116,105,111,110,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114,101,115,115,0,0,99,97,110,110,111,116,32,115,116,97,114,116,32,97,32,116,114,97,110,115,97,99,116,105,111,110,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,99,97,110,110,111,116,32,114,111,108,108,98,97,99,107,32,45,32,110,111,32,116,114,97,110,115,97,99,116,105,111,110,32,105,115,32,97,99,116,105,118,101,0,0,0,0,0,0,99,97,110,110,111,116,32,99,111,109,109,105,116,32,45,32,110,111,32,116,114,97,110,115,97,99,116,105,111,110,32,105,115,32,97,99,116,105,118,101,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,110,97,109,101,44,32,114,111,111,116,112,97,103,101,44,32,115,113,108,32,70,82,79,77,32,39,37,113,39,46,37,115,32,87,72,69,82,69,32,37,115,32,79,82,68,69,82,32,66,89,32,114,111,119,105,100,0,116,111,111,32,109,97,110,121,32,108,101,118,101,108,115,32,111,102,32,116,114,105,103,103,101,114,32,114,101,99,117,114,115,105,111,110,0,0,0,0,99,97,110,110,111,116,32,99,104,97,110,103,101,32,37,115,32,119,97,108,32,109,111,100,101,32,102,114,111,109,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,105,110,116,111,0,0,0,0,111,117,116,32,111,102,0,0,100,97,116,97,98,97,115,101,32,116,97,98,108,101,32,105,115,32,108,111,99,107,101,100,58,32,37,115,0,0,0,0,115,116,97,116,101,109,101,110,116,32,97,98,111,114,116,115,32,97,116,32,37,100,58,32,91,37,115,93,32,37,115,0,45,45,32,0,0,0,0,0,39,37,46,42,113,39,0,0,122,101,114,111,98,108,111,98,40,37,100,41,0,0,0,0,120,39,0,0,0,0,0,0,37,48,50,120,0,0,0,0,39,0,0,0,0,0,0,0,99,97,110,110,111,116,32,86,65,67,85,85,77,32,102,114,111,109,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,99,97,110,110,111,116,32,86,65,67,85,85,77,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114,101,115,115,0,0,0,0,0,0,65,84,84,65,67,72,32,39,58,109,101,109,111,114,121,58,39,32,65,83,32,118,97,99,117,117,109,95,100,98,59,0,65,84,84,65,67,72,32,39,39,32,65,83,32,118,97,99,117,117,109,95,100,98,59,0,80,82,65,71,77,65,32,118,97,99,117,117,109,95,100,98,46,115,121,110,99,104,114,111,110,111,117,115,61,79,70,70,0,0,0,0,0,0,0,0,66,69,71,73,78,59,0,0,83,69,76,69,67,84,32,39,67,82,69,65,84,69,32,84,65,66,76,69,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,49,52,41,32,32,32,70,82,79,77,32,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,116,121,112,101,61,39,116,97,98,108,101,39,32,65,78,68,32,110,97,109,101,33,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,32,32,32,65,78,68,32,99,111,97,108,101,115,99,101,40,114,111,111,116,112,97,103,101,44,49,41,62,48,0,0,0,0,0,83,69,76,69,67,84,32,39,67,82,69,65,84,69,32,73,78,68,69,88,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,49,52,41,32,32,70,82,79,77,32,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,115,113,108,32,76,73,75,69,32,39,67,82,69,65,84,69,32,73,78,68,69,88,32,37,39,32,0,83,69,76,69,67,84,32,39,67,82,69,65,84,69,32,85,78,73,81,85,69,32,73,78,68,69,88,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,50,49,41,32,32,32,70,82,79,77,32,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,115,113,108,32,76,73,75,69,32,39,67,82,69,65,84,69,32,85,78,73,81,85,69,32,73,78,68,69,88,32,37,39,0,0,0,83,69,76,69,67,84,32,39,73,78,83,69,82,84,32,73,78,84,79,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,32,83,69,76,69,67,84,32,42,32,70,82,79,77,32,109,97,105,110,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,59,39,70,82,79,77,32,109,97,105,110,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,116,121,112,101,32,61,32,39,116,97,98,108,101,39,32,65,78,68,32,110,97,109,101,33,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,32,32,32,65,78,68,32,99,111,97,108,101,115,99,101,40,114,111,111,116,112,97,103,101,44,49,41,62,48,0,0,0,0,0,83,69,76,69,67,84,32,39,68,69,76,69,84,69,32,70,82,79,77,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,59,39,32,70,82,79,77,32,118,97,99,117,117,109,95,100,98,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,110,97,109,101,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,32,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,39,73,78,83,69,82,84,32,73,78,84,79,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,32,83,69,76,69,67,84,32,42,32,70,82,79,77,32,109,97,105,110,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,59,39,32,70,82,79,77,32,118,97,99,117,117,109,95,100,98,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,110,97,109,101,61,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,59,0,0,0,0,0,0,73,78,83,69,82,84,32,73,78,84,79,32,118,97,99,117,117,109,95,100,98,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,32,32,83,69,76,69,67,84,32,116,121,112,101,44,32,110,97,109,101,44,32,116,98,108,95,110,97,109,101,44,32,114,111,111,116,112,97,103,101,44,32,115,113,108,32,32,32,32,70,82,79,77,32,109,97,105,110,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,32,32,87,72,69,82,69,32,116,121,112,101,61,39,118,105,101,119,39,32,79,82,32,116,121,112,101,61,39,116,114,105,103,103,101,114,39,32,32,32,32,32,32,79,82,32,40,116,121,112,101,61,39,116,97,98,108,101,39,32,65,78,68,32,114,111,111,116,112,97,103,101,61,48,41,0,1,1,3,0,5,0,6,0,8,0,0,0,0,0,0,0,77,97,105,110,32,102,114,101,101,108,105,115,116,58,32,0,76,105,115,116,32,111,102,32,116,114,101,101,32,114,111,111,116,115,58,32,0,0,0,0,80,97,103,101,32,37,100,32,105,115,32,110,101,118,101,114,32,117,115,101,100,0,0,0,80,111,105,110,116,101,114,32,109,97,112,32,112,97,103,101,32,37,100,32,105,115,32,114,101,102,101,114,101,110,99,101,100,0,0,0,0,0,0,0,79,117,116,115,116,97,110,100,105,110,103,32,112,97,103,101,32,99,111,117,110,116,32,103,111,101,115,32,102,114,111,109,32,37,100,32,116,111,32,37,100,32,100,117,114,105,110,103,32,116,104,105,115,32,97,110,97,108,121,115,105,115,0,0,10,0,0,0,0,0,0,0,80,97,103,101,32,37,100,58,32,0,0,0,0,0,0,0,117,110,97,98,108,101,32,116,111,32,103,101,116,32,116,104,101,32,112,97,103,101,46,32,101,114,114,111,114,32,99,111,100,101,61,37,100,0,0,0,98,116,114,101,101,73,110,105,116,80,97,103,101,40,41,32,114,101,116,117,114,110,115,32,101,114,114,111,114,32,99,111,100,101,32,37,100,0,0,0,79,110,32,116,114,101,101,32,112,97,103,101,32,37,100,32,99,101,108,108,32,37,100,58,32,0,0,0,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,112,114,101,118,105,111,117,115,32,119,97,115,32,37,108,108,100,41,0,0,0,0,0,67,104,105,108,100,32,112,97,103,101,32,100,101,112,116,104,32,100,105,102,102,101,114,115,0,0,0,0,0,0,0,0,79,110,32,112,97,103,101,32,37,100,32,97,116,32,114,105,103,104,116,32,99,104,105,108,100,58,32,0,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,97,120,32,108,97,114,103,101,114,32,116,104,97,110,32,112,97,114,101,110,116,32,109,105,110,32,111,102,32,37,108,108,100,41,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,105,110,32,108,101,115,115,32,116,104,97,110,32,112,97,114,101,110,116,32,109,105,110,32,111,102,32,37,108,108,100,41,0,0,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,97,120,32,108,97,114,103,101,114,32,116,104,97,110,32,112,97,114,101,110,116,32,109,97,120,32,111,102,32,37,108,108,100,41,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,105,110,32,108,101,115,115,32,116,104,97,110,32,112,97,114,101,110,116,32,109,97,120,32,111,102,32,37,108,108,100,41,0,0,0,0,0,0,67,111,114,114,117,112,116,105,111,110,32,100,101,116,101,99,116,101,100,32,105,110,32,99,101,108,108,32,37,100,32,111,110,32,112,97,103,101,32,37,100,0,0,0,0,0,0,0,77,117,108,116,105,112,108,101,32,117,115,101,115,32,102,111,114,32,98,121,116,101,32,37,100,32,111,102,32,112,97,103,101,32,37,100,0,0,0,0,70,114,97,103,109,101,110,116,97,116,105,111,110,32,111,102,32,37,100,32,98,121,116,101,115,32,114,101,112,111,114,116,101,100,32,97,115,32,37,100,32,111,110,32,112,97,103,101,32,37,100,0,0,0,0,0,105,110,118,97,108,105,100,32,112,97,103,101,32,110,117,109,98,101,114,32,37,100,0,0,50,110,100,32,114,101,102,101,114,101,110,99,101,32,116,111,32,112,97,103,101,32,37,100,0,0,0,0,0,0,0,0,70,97,105,108,101,100,32,116,111,32,114,101,97,100,32,112,116,114,109,97,112,32,107,101,121,61,37,100,0,0,0,0,66,97,100,32,112,116,114,32,109,97,112,32,101,110,116,114,121,32,107,101,121,61,37,100,32,101,120,112,101,99,116,101,100,61,40,37,100,44,37,100,41,32,103,111,116,61,40,37,100,44,37,100,41,0,0,0,37,100,32,111,102,32,37,100,32,112,97,103,101,115,32,109,105,115,115,105,110,103,32,102,114,111,109,32,111,118,101,114,102,108,111,119,32,108,105,115,116,32,115,116,97,114,116,105,110,103,32,97,116,32,37,100,0,0,0,0,0,0,0,0,102,97,105,108,101,100,32,116,111,32,103,101,116,32,112,97,103,101,32,37,100,0,0,0,102,114,101,101,108,105,115,116,32,108,101,97,102,32,99,111,117,110,116,32,116,111,111,32,98,105,103,32,111,110,32,112,97,103,101,32,37,100,0,0,83,81,76,105,116,101,32,102,111,114,109,97,116,32,51,0,37,115,45,109,106,88,88,88,88,88,88,57,88,88,122,0,77,74,32,100,101,108,101,116,101,58,32,37,115,0,0,0,77,74,32,99,111,108,108,105,100,101,58,32,37,115,0,0,45,109,106,37,48,54,88,57,37,48,50,88,0,0,0,0,37,46,50,120,0,0,0,0,107,40,37,100,0,0,0,0,110,105,108,0,0,0,0,0,66,0,0,0,0,0,0,0,44,46,46,46,0,0,0,0,40,37,46,50,48,115,41,0,37,115,40,37,100,41,0,0,37,100,0,0,0,0,0,0,40,98,108,111,98,41,0,0,118,116,97,98,58,37,112,58,37,112,0,0,0,0,0,0,105,110,116,97,114,114,97,121,0,0,0,0,0,0,0,0,112,114,111,103,114,97,109,0,232,73,0,0,16,137,0,0,32,137,0,0,48,137,0,0,64,137,0,0,80,137,0,0,96,137,0,0,112,137,0,0,128,137,0,0,136,137,0,0,144,137,0,0,152,137,0,0,168,137,0,0,184,137,0,0,192,137,0,0,200,137,0,0,208,137,0,0,216,137,0,0,224,137,0,0,232,137,0,0,240,137,0,0,0,138,0,0,16,138,0,0,24,138,0,0,40,138,0,0,48,138,0,0,56,138,0,0,64,138,0,0,72,138,0,0,80,138,0,0,96,138,0,0,104,138,0,0,120,138,0,0,128,138,0,0,136,138,0,0,144,138,0,0,160,138,0,0,168,138,0,0,176,138,0,0,192,138,0,0,208,138,0,0,224,138,0,0,232,138,0,0,240,138,0,0,248,138,0,0,0,139,0,0,8,139,0,0,16,139,0,0,32,139,0,0,48,139,0,0,56,139,0,0,72,139,0,0,88,139,0,0,104,139,0,0,120,139,0,0,136,139,0,0,152,139,0,0,168,139,0,0,184,139,0,0,192,139,0,0,200,139,0,0,208,139,0,0,216,139,0,0,224,139,0,0,232,139,0,0,248,139,0,0,8,140,0,0,16,140,0,0,32,140,0,0,48,140,0,0,64,140,0,0,72,140,0,0,80,140,0,0,88,140,0,0,104,140,0,0,112,140,0,0,128,140,0,0,136,140,0,0,144,140,0,0,152,140,0,0,160,140,0,0,168,140,0,0,176,140,0,0,184,140,0,0,192,140,0,0,208,140,0,0,216,140,0,0,224,140,0,0,240,140,0,0,0,141,0,0,8,141,0,0,24,141,0,0,40,141,0,0,48,141,0,0,64,141,0,0,72,141,0,0,88,141,0,0,96,141,0,0,104,141,0,0,112,141,0,0,120,141,0,0,128,141,0,0,136,141,0,0,144,141,0,0,160,141,0,0,168,141,0,0,176,141,0,0,192,141,0,0,208,141,0,0,224,141,0,0,240,141,0,0,248,141,0,0,0,142,0,0,8,142,0,0,16,142,0,0,24,142,0,0,32,142,0,0,48,142,0,0,64,142,0,0,80,142,0,0,96,142,0,0,112,142,0,0,128,142,0,0,144,142,0,0,160,142,0,0,176,142,0,0,192,142,0,0,208,142,0,0,224,142,0,0,232,142,0,0,240,142,0,0,0,143,0,0,16,143,0,0,24,143,0,0,32,143,0,0,40,143,0,0,48,143,0,0,56,143,0,0,72,143,0,0,88,143,0,0,96,143,0,0,112,143,0,0,120,143,0,0,128,143,0,0,136,143,0,0,144,143,0,0,160,143,0,0,168,143,0,0,176,143,0,0,192,143,0,0,200,143,0,0,208,143,0,0,216,143,0,0,224,143,0,0,240,143,0,0,0,144,0,0,8,144,0,0,16,144,0,0,70,117,110,99,116,105,111,110,0,0,0,0,0,0,0,0,83,97,118,101,112,111,105,110,116,0,0,0,0,0,0,0,65,117,116,111,67,111,109,109,105,116,0,0,0,0,0,0,84,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,83,111,114,116,101,114,78,101,120,116,0,0,0,0,0,0,80,114,101,118,73,102,79,112,101,110,0,0,0,0,0,0,78,101,120,116,73,102,79,112,101,110,0,0,0,0,0,0,80,114,101,118,0,0,0,0,78,101,120,116,0,0,0,0,65,103,103,83,116,101,112,0,67,104,101,99,107,112,111,105,110,116,0,0,0,0,0,0,74,111,117,114,110,97,108,77,111,100,101,0,0,0,0,0,86,97,99,117,117,109,0,0,86,70,105,108,116,101,114,0,86,85,112,100,97,116,101,0,71,111,116,111,0,0,0,0,71,111,115,117,98,0,0,0,82,101,116,117,114,110,0,0,78,111,116,0,0,0,0,0,73,110,105,116,67,111,114,111,117,116,105,110,101,0,0,0,69,110,100,67,111,114,111,117,116,105,110,101,0,0,0,0,89,105,101,108,100,0,0,0,72,97,108,116,73,102,78,117,108,108,0,0,0,0,0,0,72,97,108,116,0,0,0,0,73,110,116,101,103,101,114,0,73,110,116,54,52,0,0,0,83,116,114,105,110,103,0,0,78,117,108,108,0,0,0,0,83,111,102,116,78,117,108,108,0,0,0,0,0,0,0,0,66,108,111,98,0,0,0,0,86,97,114,105,97,98,108,101,0,0,0,0,0,0,0,0,77,111,118,101,0,0,0,0,67,111,112,121,0,0,0,0,83,67,111,112,121,0,0,0,82,101,115,117,108,116,82,111,119,0,0,0,0,0,0,0,67,111,108,108,83,101,113,0,65,100,100,73,109,109,0,0,77,117,115,116,66,101,73,110,116,0,0,0,0,0,0,0,82,101,97,108,65,102,102,105,110,105,116,121,0,0,0,0,80,101,114,109,117,116,97,116,105,111,110,0,0,0,0,0,67,111,109,112,97,114,101,0,74,117,109,112,0,0,0,0,79,110,99,101,0,0,0,0,73,102,0,0,0,0,0,0,73,102,78,111,116,0,0,0,67,111,108,117,109,110,0,0,65,102,102,105,110,105,116,121,0,0,0,0,0,0,0,0,77,97,107,101,82,101,99,111,114,100,0,0,0,0,0,0,67,111,117,110,116,0,0,0,82,101,97,100,67,111,111,107,105,101,0,0,0,0,0,0,83,101,116,67,111,111,107,105,101,0,0,0,0,0,0,0,79,112,101,110,82,101,97,100,0,0,0,0,0,0,0,0,79,112,101,110,87,114,105,116,101,0,0,0,0,0,0,0,79,112,101,110,65,117,116,111,105,110,100,101,120,0,0,0,79,112,101,110,69,112,104,101,109,101,114,97,108,0,0,0,83,111,114,116,101,114,79,112,101,110,0,0,0,0,0,0,79,112,101,110,80,115,101,117,100,111,0,0,0,0,0,0,67,108,111,115,101,0,0,0,83,101,101,107,76,84,0,0,83,101,101,107,76,69,0,0,83,101,101,107,71,69,0,0,83,101,101,107,71,84,0,0,83,101,101,107,0,0,0,0,78,111,67,111,110,102,108,105,99,116,0,0,0,0,0,0,78,111,116,70,111,117,110,100,0,0,0,0,0,0,0,0,70,111,117,110,100,0,0,0,78,111,116,69,120,105,115,116,115,0,0,0,0,0,0,0,83,101,113,117,101,110,99,101,0,0,0,0,0,0,0,0,78,101,119,82,111,119,105,100,0,0,0,0,0,0,0,0,73,110,115,101,114,116,0,0,79,114,0,0,0,0,0,0,65,110,100,0,0,0,0,0,73,110,115,101,114,116,73,110,116,0,0,0,0,0,0,0,68,101,108,101,116,101,0,0,82,101,115,101,116,67,111,117,110,116,0,0,0,0,0,0,73,115,78,117,108,108,0,0,78,111,116,78,117,108,108,0,78,101,0,0,0,0,0,0,69,113,0,0,0,0,0,0,71,116,0,0,0,0,0,0,76,101,0,0,0,0,0,0,76,116,0,0,0,0,0,0,71,101,0,0,0,0,0,0,83,111,114,116,101,114,67,111,109,112,97,114,101,0,0,0,66,105,116,65,110,100,0,0,66,105,116,79,114,0,0,0,83,104,105,102,116,76,101,102,116,0,0,0,0,0,0,0,83,104,105,102,116,82,105,103,104,116,0,0,0,0,0,0,65,100,100,0,0,0,0,0,83,117,98,116,114,97,99,116,0,0,0,0,0,0,0,0,77,117,108,116,105,112,108,121,0,0,0,0,0,0,0,0,68,105,118,105,100,101,0,0,82,101,109,97,105,110,100,101,114,0,0,0,0,0,0,0,67,111,110,99,97,116,0,0,83,111,114,116,101,114,68,97,116,97,0,0,0,0,0,0,66,105,116,78,111,116,0,0,83,116,114,105,110,103,56,0,82,111,119,75,101,121,0,0,82,111,119,68,97,116,97,0,82,111,119,105,100,0,0,0,78,117,108,108,82,111,119,0,76,97,115,116,0,0,0,0,83,111,114,116,101,114,83,111,114,116,0,0,0,0,0,0,83,111,114,116,0,0,0,0,82,101,119,105,110,100,0,0,83,111,114,116,101,114,73,110,115,101,114,116,0,0,0,0,73,100,120,73,110,115,101,114,116,0,0,0,0,0,0,0,73,100,120,68,101,108,101,116,101,0,0,0,0,0,0,0,73,100,120,82,111,119,105,100,0,0,0,0,0,0,0,0,73,100,120,76,69,0,0,0,73,100,120,71,84,0,0,0,73,100,120,76,84,0,0,0,73,100,120,71,69,0,0,0,68,101,115,116,114,111,121,0,67,108,101,97,114,0,0,0,82,101,115,101,116,83,111,114,116,101,114,0,0,0,0,0,67,114,101,97,116,101,73,110,100,101,120,0,0,0,0,0,67,114,101,97,116,101,84,97,98,108,101,0,0,0,0,0,80,97,114,115,101,83,99,104,101,109,97,0,0,0,0,0,76,111,97,100,65,110,97,108,121,115,105,115,0,0,0,0,68,114,111,112,84,97,98,108,101,0,0,0,0,0,0,0,68,114,111,112,73,110,100,101,120,0,0,0,0,0,0,0,68,114,111,112,84,114,105,103,103,101,114,0,0,0,0,0,73,110,116,101,103,114,105,116,121,67,107,0,0,0,0,0,82,111,119,83,101,116,65,100,100,0,0,0,0,0,0,0,82,111,119,83,101,116,82,101,97,100,0,0,0,0,0,0,82,111,119,83,101,116,84,101,115,116,0,0,0,0,0,0,80,114,111,103,114,97,109,0,80,97,114,97,109,0,0,0,70,107,67,111,117,110,116,101,114,0,0,0,0,0,0,0,70,107,73,102,90,101,114,111,0,0,0,0,0,0,0,0,77,101,109,77,97,120,0,0,82,101,97,108,0,0,0,0,73,102,80,111,115,0,0,0,73,102,78,101,103,0,0,0,73,102,90,101,114,111,0,0,65,103,103,70,105,110,97,108,0,0,0,0,0,0,0,0,73,110,99,114,86,97,99,117,117,109,0,0,0,0,0,0,69,120,112,105,114,101,0,0,84,97,98,108,101,76,111,99,107,0,0,0,0,0,0,0,86,66,101,103,105,110,0,0,86,67,114,101,97,116,101,0,84,111,84,101,120,116,0,0,84,111,66,108,111,98,0,0,84,111,78,117,109,101,114,105,99,0,0,0,0,0,0,0,84,111,73,110,116,0,0,0,84,111,82,101,97,108,0,0,86,68,101,115,116,114,111,121,0,0,0,0,0,0,0,0,86,79,112,101,110,0,0,0,86,67,111,108,117,109,110,0,86,78,101,120,116,0,0,0,86,82,101,110,97,109,101,0,80,97,103,101,99,111,117,110,116,0,0,0,0,0,0,0,77,97,120,80,103,99,110,116,0,0,0,0,0,0,0,0,73,110,105,116,0,0,0,0,78,111,111,112,0,0,0,0,69,120,112,108,97,105,110,0,65,80,73,32,99,97,108,108,101,100,32,119,105,116,104,32,78,85,76,76,32,112,114,101,112,97,114,101,100,32,115,116,97,116,101,109,101,110,116,0,65,80,73,32,99,97,108,108,101,100,32,119,105,116,104,32,102,105,110,97,108,105,122,101,100,32,112,114,101,112,97,114,101,100,32,115,116,97,116,101,109,101,110,116,0,0,0,0,64,32,32,0,0,0,0,0,1,0,0,0,8,0,0,0,4,0,0,0,5,0,0,0,8,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,9,0,0,0,9,0,0,0,10,0,0,0,6,0,0,0,3,0,0,0,12,0,0,0,17,0,0,0,7,0,0,0,4,0,0,0,0,0,0,0,32,146,0,0,10,0,0,0,0,0,0,0,248,145,0,0,11,0,0,0,0,0,0,0,144,18,0,0,18,0,0,0,0,0,0,0,40,146,0,0,19,0,0,0,0,0,0,0,48,146,0,0,20,0,0,0,0,0,0,0,56,146,0,0,21,0,0,0,0,0,0,0,64,146,0,0,22,0,0,0,0,0,0,0,80,146,0,0,11,0,0,0,0,0,0,0,88,146,0,0,12,0,0,0,0,0,0,0,96,146,0,0,0,0,0,0,0,0,0,0,104,146,0,0,0,0,0,0,0,0,0,0,112,146,0,0,13,0,0,0,0,0,0,0,120,146,0,0,0,0,0,0,0,0,0,0,128,146,0,0,0,0,0,0,0,0,0,0,144,146,0,0,23,0,0,0,0,0,0,0,152,146,0,0,0,0,0,0,0,0,0,0,168,146,0,0,12,0,0,0,0,0,0,0,176,146,0,0,24,0,0,0,0,0,0,0,192,146,0,0,25,0,0,0,0,0,0,0,200,146,0,0,13,0,0,0,0,0,0,0,208,146,0,0,14,0,0,0,0,0,0,0,216,146,0,0,1,0,0,0,0,0,0,0,224,146,0,0,26,0,0,0,0,0,0,0,232,146,0,0,0,0,0,0,0,0,0,0,240,146,0,0,1,0,0,0,0,0,0,0,0,0,0,0,99,108,111,115,101,0,0,0,111,115,95,117,110,105,120,46,99,58,37,100,58,32,40,37,100,41,32,37,115,40,37,115,41,32,45,32,37,115,0,0,111,112,101,110,0,0,0,0,103,101,116,99,119,100,0,0,115,116,97,116,0,0,0,0,102,115,116,97,116,0,0,0,102,116,114,117,110,99,97,116,101,0,0,0,0,0,0,0,102,99,110,116,108,0,0,0,114,101,97,100,0,0,0,0,112,114,101,97,100,0,0,0,112,114,101,97,100,54,52,0,119,114,105,116,101,0,0,0,112,119,114,105,116,101,0,0,112,119,114,105,116,101,54,52,0,0,0,0,0,0,0,0,102,99,104,109,111,100,0,0,102,97,108,108,111,99,97,116,101,0,0,0,0,0,0,0,117,110,108,105,110,107,0,0,111,112,101,110,68,105,114,101,99,116,111,114,121,0,0,0,109,107,100,105,114,0,0,0,114,109,100,105,114,0,0,0,102,99,104,111,119,110,0,0,109,109,97,112,0,0,0,0,109,117,110,109,97,112,0,0,109,114,101,109,97,112,0,0,103,101,116,112,97,103,101,115,105,122,101,0,0,0,0,0,97,116,116,101,109,112,116,32,116,111,32,111,112,101,110,32,34,37,115,34,32,97,115,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,37,100,0,0,0,0,0,0,47,100,101,118,47,110,117,108,108,0,0,0,0,0,0,0,37,115,45,115,104,109,0,0,114,101,97,100,111,110,108,121,95,115,104,109,0,0,0,0,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,48,49,50,51,52,53,54,55,56,57,0,0,37,115,47,101,116,105,108,113,115,95,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,147,0,0,216,147,0,0,232,147,0,0,0,0,0,0,0,0,0,0,47,118,97,114,47,116,109,112,0,0,0,0,0,0,0,0,47,117,115,114,47,116,109,112,0,0,0,0,0,0,0,0,47,116,109,112,0,0,0,0,83,81,76,73,84,69,95,84,77,80,68,73,82,0,0,0,84,77,80,68,73,82,0,0,102,117,108,108,95,102,115,121,110,99,0,0,0,0,0,0,1,0,0,0,14,0,0,0,4,0,0,0,5,0,0,0,8,0,0,0,12,0,0,0,13,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,9,0,0,0,9,0,0,0,10,0,0,0,6,0,0,0,3,0,0,0,12,0,0,0,17,0,0,0,7,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,100,101,118,47,117,114,97,110,100,111,109,0,0,0,0,47,37,115,0,0,0,0,0,102,115,121,110,99,0,0,0,112,115,111,119,0,0,0,0,3,0,0,0,15,0,0,0,4,0,0,0,5,0,0,0,8,0,0,0,12,0,0,0,13,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,9,0,0,0,9,0,0,0,10,0,0,0,6,0,0,0,3,0,0,0,12,0,0,0,17,0,0,0,7,0,0,0,4,0,0,0,0,0,0,0,37,115,46,108,111,99,107,0,99,97,110,110,111,116,32,102,115,116,97,116,32,100,98,32,102,105,108,101,32,37,115,0,102,105,108,101,32,117,110,108,105,110,107,101,100,32,119,104,105,108,101,32,111,112,101,110,58,32,37,115,0,0,0,0,109,117,108,116,105,112,108,101,32,108,105,110,107,115,32,116,111,32,102,105,108,101,58,32,37,115,0,0,0,0,0,0,102,105,108,101,32,114,101,110,97,109,101,100,32,119,104,105,108,101,32,111,112,101,110,58,32,37,115,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,0,0,0,0,100,10,1,1,0,0,115,0,4,6,0,0,103,0,1,4,30,0,122,0,4,7,0,0,113,0,4,10,0,0,81,0,4,11,0,0,119,0,4,15,0,0,99,0,0,9,0,0,111,8,0,1,0,2,117,10,0,1,0,0,120,16,0,1,16,1,88,16,0,1,0,4,102,0,1,2,0,0,101,0,1,3,30,0,69,0,1,3,14,0,71,0,1,4,14,0,105,10,1,1,0,0,110,0,0,5,0,0,37,0,0,8,0,0,112,16,0,14,0,1,84,0,2,12,0,0,83,0,2,13,0,0,114,10,3,16,0,0,0,0,0,0,0,0,116,104,115,116,110,100,114,100,0,0,0,0,0,0,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0,0,0,0,0,0,0,0,45,120,48,0,88,48,0,0,78,97,78,0,0,0,0,0,45,73,110,102,0,0,0,0,43,73,110,102,0,0,0,0,73,110,102,0,0,0,0,0,40,78,85,76,76,41,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,254,255,255,127,0,0,0,0,128,0,0,0,244,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,73,83,65,66,76,69,95,76,70,83,0,0,0,0,0,73,78,84,54,52,95,84,89,80,69,0,0,0,0,0,0,79,77,73,84,95,76,79,65,68,95,69,88,84,69,78,83,73,79,78,0,0,0,0,0,83,89,83,84,69,77,95,77,65,76,76,79,67,0,0,0,84,72,82,69,65,68,83,65,70,69,61,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE+30720); - - - - -var tempDoublePtr = Runtime.alignMemory(allocate(12, "i8", ALLOC_STATIC), 8); - -assert(tempDoublePtr % 8 == 0); - -function copyTempFloat(ptr) { // functions, because inlining this code increases code size too much - - HEAP8[tempDoublePtr] = HEAP8[ptr]; - - HEAP8[tempDoublePtr+1] = HEAP8[ptr+1]; - - HEAP8[tempDoublePtr+2] = HEAP8[ptr+2]; - - HEAP8[tempDoublePtr+3] = HEAP8[ptr+3]; - -} - -function copyTempDouble(ptr) { - - HEAP8[tempDoublePtr] = HEAP8[ptr]; - - HEAP8[tempDoublePtr+1] = HEAP8[ptr+1]; - - HEAP8[tempDoublePtr+2] = HEAP8[ptr+2]; - - HEAP8[tempDoublePtr+3] = HEAP8[ptr+3]; - - HEAP8[tempDoublePtr+4] = HEAP8[ptr+4]; - - HEAP8[tempDoublePtr+5] = HEAP8[ptr+5]; - - HEAP8[tempDoublePtr+6] = HEAP8[ptr+6]; - - HEAP8[tempDoublePtr+7] = HEAP8[ptr+7]; - -} - - - - - var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86}; - - var ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"}; - - - var ___errno_state=0;function ___setErrNo(value) { - // For convenient setting and returning of errno. - HEAP32[((___errno_state)>>2)]=value; - return value; - } - - var PATH={splitPath:function (filename) { - var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; - return splitPathRe.exec(filename).slice(1); - },normalizeArray:function (parts, allowAboveRoot) { - // if the path tries to go above the root, `up` ends up > 0 - 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 the path is allowed to go above the root, restore leading ..s - if (allowAboveRoot) { - for (; up--; up) { - parts.unshift('..'); - } - } - return parts; - },normalize:function (path) { - var isAbsolute = path.charAt(0) === '/', - trailingSlash = path.substr(-1) === '/'; - // Normalize the path - 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) { - // No dirname whatsoever - return '.'; - } - if (dir) { - // It has a dirname, strip trailing slash - dir = dir.substr(0, dir.length - 1); - } - return root + dir; - },basename:function (path) { - // EMSCRIPTEN return '/'' for '/', not an empty string - if (path === '/') return '/'; - var lastSlash = path.lastIndexOf('/'); - if (lastSlash === -1) return path; - return path.substr(lastSlash+1); - },extname:function (path) { - return PATH.splitPath(path)[3]; - },join:function () { - var paths = Array.prototype.slice.call(arguments, 0); - return PATH.normalize(paths.join('/')); - },join2:function (l, r) { - return PATH.normalize(l + '/' + r); - },resolve:function () { - var resolvedPath = '', - resolvedAbsolute = false; - for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { - var path = (i >= 0) ? arguments[i] : FS.cwd(); - // Skip empty and invalid entries - if (typeof path !== 'string') { - throw new TypeError('Arguments to path.resolve must be strings'); - } else if (!path) { - continue; - } - resolvedPath = path + '/' + resolvedPath; - resolvedAbsolute = path.charAt(0) === '/'; - } - // At this point the path should be resolved to a full absolute path, but - // handle relative paths to be safe (might happen when process.cwd() fails) - resolvedPath = PATH.normalizeArray(resolvedPath.split('/').filter(function(p) { - return !!p; - }), !resolvedAbsolute).join('/'); - return ((resolvedAbsolute ? '/' : '') + resolvedPath) || '.'; - },relative:function (from, to) { - from = PATH.resolve(from).substr(1); - to = PATH.resolve(to).substr(1); - function trim(arr) { - var start = 0; - for (; start < 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('/'); - }}; - - var TTY={ttys:[],init:function () { - // https://github.com/kripken/emscripten/pull/1555 - // if (ENVIRONMENT_IS_NODE) { - // // currently, FS.init does not distinguish if process.stdin is a file or TTY - // // device, it always assumes it's a TTY device. because of this, we're forcing - // // process.stdin to UTF8 encoding to at least make stdin reading compatible - // // with text files until FS.init can be refactored. - // process['stdin']['setEncoding']('utf8'); - // } - },shutdown:function () { - // https://github.com/kripken/emscripten/pull/1555 - // if (ENVIRONMENT_IS_NODE) { - // // inolen: any idea as to why node -e 'process.stdin.read()' wouldn't exit immediately (with process.stdin being a tty)? - // // isaacs: because now it's reading from the stream, you've expressed interest in it, so that read() kicks off a _read() which creates a ReadReq operation - // // inolen: I thought read() in that case was a synchronous operation that just grabbed some amount of buffered data if it exists? - // // isaacs: it is. but it also triggers a _read() call, which calls readStart() on the handle - // // isaacs: do process.stdin.pause() and i'd think it'd probably close the pending call - // process['stdin']['pause'](); - // } - },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(ERRNO_CODES.ENODEV); - } - stream.tty = tty; - stream.seekable = false; - },close:function (stream) { - // flush any pending line data - if (stream.tty.output.length) { - stream.tty.ops.put_char(stream.tty, 10); - } - },read:function (stream, buffer, offset, length, pos /* ignored */) { - if (!stream.tty || !stream.tty.ops.get_char) { - throw new FS.ErrnoError(ERRNO_CODES.ENXIO); - } - 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(ERRNO_CODES.EIO); - } - if (result === undefined && bytesRead === 0) { - throw new FS.ErrnoError(ERRNO_CODES.EAGAIN); - } - 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(ERRNO_CODES.ENXIO); - } - for (var i = 0; i < length; i++) { - try { - stream.tty.ops.put_char(stream.tty, buffer[offset+i]); - } catch (e) { - throw new FS.ErrnoError(ERRNO_CODES.EIO); - } - } - 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) { - result = process['stdin']['read'](); - if (!result) { - if (process['stdin']['_readableState'] && process['stdin']['_readableState']['ended']) { - return null; // EOF - } - return undefined; // no data available - } - } else if (typeof window != 'undefined' && - typeof window.prompt == 'function') { - // Browser. - result = window.prompt('Input: '); // returns null on cancel - if (result !== null) { - result += '\n'; - } - } else if (typeof readline == 'function') { - // Command line. - result = readline(); - if (result !== null) { - result += '\n'; - } - } - if (!result) { - return null; - } - tty.input = intArrayFromString(result, true); - } - return tty.input.shift(); - },put_char:function (tty, val) { - if (val === null || val === 10) { - Module['print'](tty.output.join('')); - tty.output = []; - } else { - tty.output.push(TTY.utf8.processCChar(val)); - } - }},default_tty1_ops:{put_char:function (tty, val) { - if (val === null || val === 10) { - Module['printErr'](tty.output.join('')); - tty.output = []; - } else { - tty.output.push(TTY.utf8.processCChar(val)); - } - }}}; - - var MEMFS={ops_table:null,mount:function (mount) { - return MEMFS.createNode(null, '/', 16384 | 511 /* 0777 */, 0); - },createNode:function (parent, name, mode, dev) { - if (FS.isBlkdev(mode) || FS.isFIFO(mode)) { - // no supported - throw new FS.ErrnoError(ERRNO_CODES.EPERM); - } - if (!MEMFS.ops_table) { - MEMFS.ops_table = { - dir: { - node: { - getattr: MEMFS.node_ops.getattr, - setattr: MEMFS.node_ops.setattr, - lookup: MEMFS.node_ops.lookup, - mknod: MEMFS.node_ops.mknod, - rename: MEMFS.node_ops.rename, - unlink: MEMFS.node_ops.unlink, - rmdir: MEMFS.node_ops.rmdir, - readdir: MEMFS.node_ops.readdir, - symlink: MEMFS.node_ops.symlink - }, - stream: { - llseek: MEMFS.stream_ops.llseek - } - }, - file: { - node: { - getattr: MEMFS.node_ops.getattr, - setattr: MEMFS.node_ops.setattr - }, - stream: { - llseek: MEMFS.stream_ops.llseek, - read: MEMFS.stream_ops.read, - write: MEMFS.stream_ops.write, - allocate: MEMFS.stream_ops.allocate, - mmap: MEMFS.stream_ops.mmap - } - }, - 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; // The actual number of bytes used in the typed array, as opposed to contents.buffer.byteLength which gives the whole capacity. - // When the byte data of the file is populated, this will point to either a typed array, or a normal JS array. Typed arrays are preferred - // for performance, and used by default. However, typed arrays are not resizable like normal JS arrays are, so there is a small disk size - // penalty involved for appending file writes that continuously grow a file similar to std::vector capacity vs used -scheme. - 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(); - // add the new node to the parent - if (parent) { - parent.contents[name] = node; - } - return node; - },getFileDataAsRegularArray:function (node) { - if (node.contents && node.contents.subarray) { - var arr = []; - for (var i = 0; i < node.usedBytes; ++i) arr.push(node.contents[i]); - return arr; // Returns a copy of the original data. - } - return node.contents; // No-op, the file contents are already in a JS array. Return as-is. - },getFileDataAsTypedArray:function (node) { - if (node.contents && node.contents.subarray) return node.contents.subarray(0, node.usedBytes); // Make sure to not return excess unused bytes. - return new Uint8Array(node.contents); - },expandFileStorage:function (node, newCapacity) { - - // If we are asked to expand the size of a file that already exists, revert to using a standard JS array to store the file - // instead of a typed array. This makes resizing the array more flexible because we can just .push() elements at the back to - // increase the size. - if (node.contents && node.contents.subarray && newCapacity > node.contents.length) { - node.contents = MEMFS.getFileDataAsRegularArray(node); - node.usedBytes = node.contents.length; // We might be writing to a lazy-loaded file which had overridden this property, so force-reset it. - } - - if (!node.contents || node.contents.subarray) { // Keep using a typed array if creating a new storage, or if old one was a typed array as well. - var prevCapacity = node.contents ? node.contents.buffer.byteLength : 0; - if (prevCapacity >= newCapacity) return; // No need to expand, the storage was already large enough. - // Don't expand strictly to the given requested limit if it's only a very small increase, but instead geometrically grow capacity. - // For small filesizes (<1MB), perform size*2 geometric increase, but for large sizes, do a much more conservative size*1.125 increase to - // avoid overshooting the allocation cap by a very large margin. - var CAPACITY_DOUBLING_MAX = 1024 * 1024; - newCapacity = Math.max(newCapacity, (prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2.0 : 1.125)) | 0); - if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256); // At minimum allocate 256b for each file when expanding. - var oldContents = node.contents; - node.contents = new Uint8Array(newCapacity); // Allocate new storage. - if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, node.usedBytes), 0); // Copy old data over to the new storage. - return; - } - // Not using a typed array to back the file storage. Use a standard JS array instead. - if (!node.contents && newCapacity > 0) node.contents = []; - while (node.contents.length < newCapacity) node.contents.push(0); - },resizeFileStorage:function (node, newSize) { - if (node.usedBytes == newSize) return; - if (newSize == 0) { - node.contents = null; // Fully decommit when requesting a resize to zero. - node.usedBytes = 0; - return; - } - - if (!node.contents || node.contents.subarray) { // Resize a typed array if that is being used as the backing store. - var oldContents = node.contents; - node.contents = new Uint8Array(new ArrayBuffer(newSize)); // Allocate new storage. - node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes))); // Copy old data over to the new storage. - node.usedBytes = newSize; - return; - } - // Backing with a JS array. - if (!node.contents) node.contents = []; - if (node.contents.length > newSize) node.contents.length = newSize; - else while (node.contents.length < newSize) node.contents.push(0); - node.usedBytes = newSize; - },node_ops:{getattr:function (node) { - var attr = {}; - // device numbers reuse inode numbers. - 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); - // NOTE: In our implementation, st_blocks = Math.ceil(st_size/st_blksize), - // but this is not required by the standard. - 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[ERRNO_CODES.ENOENT]; - },mknod:function (parent, name, mode, dev) { - return MEMFS.createNode(parent, name, mode, dev); - },rename:function (old_node, new_dir, new_name) { - // if we're overwriting a directory at new_name, make sure it's empty. - 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(ERRNO_CODES.ENOTEMPTY); - } - } - } - // do the internal rewiring - delete old_node.parent.contents[old_node.name]; - old_node.name = new_name; - new_dir.contents[new_name] = old_node; - old_node.parent = new_dir; - },unlink:function (parent, name) { - delete parent.contents[name]; - },rmdir:function (parent, name) { - var node = FS.lookupNode(parent, name); - for (var i in node.contents) { - throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY); - } - delete parent.contents[name]; - },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 /* 0777 */ | 40960, 0); - node.link = oldpath; - return node; - },readlink:function (node) { - if (!FS.isLink(node.mode)) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - 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); - assert(size >= 0); - if (size > 8 && contents.subarray) { // non-trivial, and typed array - 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)) { // This write is from a typed array to a typed array? - if (canOwn) { // Can we just reuse the buffer we are given? - node.contents = buffer.subarray(offset, offset + length); - node.usedBytes = length; - return length; - } else if (node.usedBytes === 0 && position === 0) { // If this is a simple first write to an empty file, do a fast set since we don't need to care about old data. - node.contents = new Uint8Array(buffer.subarray(offset, offset + length)); - node.usedBytes = length; - return length; - } else if (position + length <= node.usedBytes) { // Writing to an already allocated and used subrange of the file? - node.contents.set(buffer.subarray(offset, offset + length), position); - return length; - } - } - // Appending to an existing file and we need to reallocate, or source data did not come as a typed array. - MEMFS.expandFileStorage(node, position+length); - if (node.contents.subarray && buffer.subarray) node.contents.set(buffer.subarray(offset, offset + length), position); // Use typed array write if available. - else - for (var i = 0; i < length; i++) { - node.contents[position + i] = buffer[offset + i]; // Or fall back to manual write if not. - } - node.usedBytes = Math.max(node.usedBytes, position+length); - return length; - },llseek:function (stream, offset, whence) { - var position = offset; - if (whence === 1) { // SEEK_CUR. - position += stream.position; - } else if (whence === 2) { // SEEK_END. - if (FS.isFile(stream.node.mode)) { - position += stream.node.usedBytes; - } - } - if (position < 0) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - stream.ungotten = []; - stream.position = position; - 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, buffer, offset, length, position, prot, flags) { - if (!FS.isFile(stream.node.mode)) { - throw new FS.ErrnoError(ERRNO_CODES.ENODEV); - } - var ptr; - var allocated; - var contents = stream.node.contents; - // Only make a new copy when MAP_PRIVATE is specified. - if ( !(flags & 2) && - (contents.buffer === buffer || contents.buffer === buffer.buffer) ) { - // We can't emulate MAP_SHARED when the file is not backed by the buffer - // we're mapping to (e.g. the HEAP buffer). - allocated = false; - ptr = contents.byteOffset; - } else { - // Try to avoid unnecessary slices. - if (position > 0 || position + length < stream.node.usedBytes) { - if (contents.subarray) { - contents = contents.subarray(position, position + length); - } else { - contents = Array.prototype.slice.call(contents, position, position + length); - } - } - allocated = true; - ptr = _malloc(length); - if (!ptr) { - throw new FS.ErrnoError(ERRNO_CODES.ENOMEM); - } - buffer.set(contents, ptr); - } - return { ptr: ptr, allocated: allocated }; - }}}; - - var IDBFS={dbs:{},indexedDB:function () { - return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; - },DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:function (mount) { - // reuse all of the core MEMFS functionality - return MEMFS.mount.apply(null, arguments); - },syncfs:function (mount, populate, callback) { - IDBFS.getLocalSet(mount, function(err, local) { - if (err) return callback(err); - - IDBFS.getRemoteSet(mount, function(err, remote) { - if (err) return callback(err); - - var src = populate ? remote : local; - var dst = populate ? local : remote; - - IDBFS.reconcile(src, dst, callback); - }); - }); - },getDB:function (name, callback) { - // check the cache first - var db = IDBFS.dbs[name]; - if (db) { - return callback(null, db); - } - - var req; - try { - req = IDBFS.indexedDB().open(name, IDBFS.DB_VERSION); - } catch (e) { - return callback(e); - } - req.onupgradeneeded = function(e) { - var db = e.target.result; - var transaction = e.target.transaction; - - var fileStore; - - if (db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)) { - fileStore = transaction.objectStore(IDBFS.DB_STORE_NAME); - } else { - fileStore = db.createObjectStore(IDBFS.DB_STORE_NAME); - } - - fileStore.createIndex('timestamp', 'timestamp', { unique: false }); - }; - req.onsuccess = function() { - db = req.result; - - // add to the cache - IDBFS.dbs[name] = db; - callback(null, db); - }; - req.onerror = function() { - callback(this.error); - }; - },getLocalSet:function (mount, callback) { - var entries = {}; - - function isRealDir(p) { - return p !== '.' && p !== '..'; - }; - function toAbsolute(root) { - return function(p) { - return PATH.join2(root, p); - } - }; - - var check = FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint)); - - while (check.length) { - var path = check.pop(); - var stat; - - try { - stat = FS.stat(path); - } catch (e) { - return callback(e); - } - - if (FS.isDir(stat.mode)) { - check.push.apply(check, FS.readdir(path).filter(isRealDir).map(toAbsolute(path))); - } - - entries[path] = { timestamp: stat.mtime }; - } - - return callback(null, { type: 'local', entries: entries }); - },getRemoteSet:function (mount, callback) { - var entries = {}; - - IDBFS.getDB(mount.mountpoint, function(err, db) { - if (err) return callback(err); - - var transaction = db.transaction([IDBFS.DB_STORE_NAME], 'readonly'); - transaction.onerror = function() { callback(this.error); }; - - var store = transaction.objectStore(IDBFS.DB_STORE_NAME); - var index = store.index('timestamp'); - - index.openKeyCursor().onsuccess = function(event) { - var cursor = event.target.result; - - if (!cursor) { - return callback(null, { type: 'remote', db: db, entries: entries }); - } - - entries[cursor.primaryKey] = { timestamp: cursor.key }; - - cursor.continue(); - }; - }); - },loadLocalEntry:function (path, callback) { - var stat, node; - - try { - var lookup = FS.lookupPath(path); - node = lookup.node; - stat = FS.stat(path); - } catch (e) { - return callback(e); - } - - if (FS.isDir(stat.mode)) { - return callback(null, { timestamp: stat.mtime, mode: stat.mode }); - } else if (FS.isFile(stat.mode)) { - // Performance consideration: storing a normal JavaScript array to a IndexedDB is much slower than storing a typed array. - // Therefore always convert the file contents to a typed array first before writing the data to IndexedDB. - node.contents = MEMFS.getFileDataAsTypedArray(node); - return callback(null, { timestamp: stat.mtime, mode: stat.mode, contents: node.contents }); - } else { - return callback(new Error('node type not supported')); - } - },storeLocalEntry:function (path, entry, callback) { - try { - if (FS.isDir(entry.mode)) { - FS.mkdir(path, entry.mode); - } else if (FS.isFile(entry.mode)) { - FS.writeFile(path, entry.contents, { encoding: 'binary', canOwn: true }); - } else { - return callback(new Error('node type not supported')); - } - - FS.utime(path, entry.timestamp, entry.timestamp); - } catch (e) { - return callback(e); - } - - callback(null); - },removeLocalEntry:function (path, callback) { - try { - var lookup = FS.lookupPath(path); - var stat = FS.stat(path); - - if (FS.isDir(stat.mode)) { - FS.rmdir(path); - } else if (FS.isFile(stat.mode)) { - FS.unlink(path); - } - } catch (e) { - return callback(e); - } - - callback(null); - },loadRemoteEntry:function (store, path, callback) { - var req = store.get(path); - req.onsuccess = function(event) { callback(null, event.target.result); }; - req.onerror = function() { callback(this.error); }; - },storeRemoteEntry:function (store, path, entry, callback) { - var req = store.put(entry, path); - req.onsuccess = function() { callback(null); }; - req.onerror = function() { callback(this.error); }; - },removeRemoteEntry:function (store, path, callback) { - var req = store.delete(path); - req.onsuccess = function() { callback(null); }; - req.onerror = function() { callback(this.error); }; - },reconcile:function (src, dst, callback) { - var total = 0; - - var create = []; - Object.keys(src.entries).forEach(function (key) { - var e = src.entries[key]; - var e2 = dst.entries[key]; - if (!e2 || e.timestamp > e2.timestamp) { - create.push(key); - total++; - } - }); - - var remove = []; - Object.keys(dst.entries).forEach(function (key) { - var e = dst.entries[key]; - var e2 = src.entries[key]; - if (!e2) { - remove.push(key); - total++; - } - }); - - if (!total) { - return callback(null); - } - - var errored = false; - var completed = 0; - var db = src.type === 'remote' ? src.db : dst.db; - var transaction = db.transaction([IDBFS.DB_STORE_NAME], 'readwrite'); - var store = transaction.objectStore(IDBFS.DB_STORE_NAME); - - function done(err) { - if (err) { - if (!done.errored) { - done.errored = true; - return callback(err); - } - return; - } - if (++completed >= total) { - return callback(null); - } - }; - - transaction.onerror = function() { done(this.error); }; - - // sort paths in ascending order so directory entries are created - // before the files inside them - create.sort().forEach(function (path) { - if (dst.type === 'local') { - IDBFS.loadRemoteEntry(store, path, function (err, entry) { - if (err) return done(err); - IDBFS.storeLocalEntry(path, entry, done); - }); - } else { - IDBFS.loadLocalEntry(path, function (err, entry) { - if (err) return done(err); - IDBFS.storeRemoteEntry(store, path, entry, done); - }); - } - }); - - // sort paths in descending order so files are deleted before their - // parent directories - remove.sort().reverse().forEach(function(path) { - if (dst.type === 'local') { - IDBFS.removeLocalEntry(path, done); - } else { - IDBFS.removeRemoteEntry(store, path, done); - } - }); - }}; - - var NODEFS={isWindows:false,staticInit:function () { - NODEFS.isWindows = !!process.platform.match(/^win/); - },mount:function (mount) { - assert(ENVIRONMENT_IS_NODE); - return NODEFS.createNode(null, '/', NODEFS.getMode(mount.opts.root), 0); - },createNode:function (parent, name, mode, dev) { - if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - var node = FS.createNode(parent, name, mode); - node.node_ops = NODEFS.node_ops; - node.stream_ops = NODEFS.stream_ops; - return node; - },getMode:function (path) { - var stat; - try { - stat = fs.lstatSync(path); - if (NODEFS.isWindows) { - // On Windows, directories return permission bits 'rw-rw-rw-', even though they have 'rwxrwxrwx', so - // propagate write bits to execute bits. - stat.mode = stat.mode | ((stat.mode & 146) >> 1); - } - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(ERRNO_CODES[e.code]); - } - return stat.mode; - },realPath:function (node) { - var parts = []; - while (node.parent !== node) { - parts.push(node.name); - node = node.parent; - } - parts.push(node.mount.opts.root); - parts.reverse(); - return PATH.join.apply(null, parts); - },flagsToPermissionStringMap:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},flagsToPermissionString:function (flags) { - if (flags in NODEFS.flagsToPermissionStringMap) { - return NODEFS.flagsToPermissionStringMap[flags]; - } else { - return flags; - } - },node_ops:{getattr:function (node) { - var path = NODEFS.realPath(node); - var stat; - try { - stat = fs.lstatSync(path); - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(ERRNO_CODES[e.code]); - } - // node.js v0.10.20 doesn't report blksize and blocks on Windows. Fake them with default blksize of 4096. - // See http://support.microsoft.com/kb/140365 - if (NODEFS.isWindows && !stat.blksize) { - stat.blksize = 4096; - } - if (NODEFS.isWindows && !stat.blocks) { - stat.blocks = (stat.size+stat.blksize-1)/stat.blksize|0; - } - return { - dev: stat.dev, - ino: stat.ino, - mode: stat.mode, - nlink: stat.nlink, - uid: stat.uid, - gid: stat.gid, - rdev: stat.rdev, - size: stat.size, - atime: stat.atime, - mtime: stat.mtime, - ctime: stat.ctime, - blksize: stat.blksize, - blocks: stat.blocks - }; - },setattr:function (node, attr) { - var path = NODEFS.realPath(node); - try { - if (attr.mode !== undefined) { - fs.chmodSync(path, attr.mode); - // update the common node structure mode as well - node.mode = attr.mode; - } - if (attr.timestamp !== undefined) { - var date = new Date(attr.timestamp); - fs.utimesSync(path, date, date); - } - if (attr.size !== undefined) { - fs.truncateSync(path, attr.size); - } - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(ERRNO_CODES[e.code]); - } - },lookup:function (parent, name) { - var path = PATH.join2(NODEFS.realPath(parent), name); - var mode = NODEFS.getMode(path); - return NODEFS.createNode(parent, name, mode); - },mknod:function (parent, name, mode, dev) { - var node = NODEFS.createNode(parent, name, mode, dev); - // create the backing node for this in the fs root as well - var path = NODEFS.realPath(node); - try { - if (FS.isDir(node.mode)) { - fs.mkdirSync(path, node.mode); - } else { - fs.writeFileSync(path, '', { mode: node.mode }); - } - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(ERRNO_CODES[e.code]); - } - return node; - },rename:function (oldNode, newDir, newName) { - var oldPath = NODEFS.realPath(oldNode); - var newPath = PATH.join2(NODEFS.realPath(newDir), newName); - try { - fs.renameSync(oldPath, newPath); - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(ERRNO_CODES[e.code]); - } - },unlink:function (parent, name) { - var path = PATH.join2(NODEFS.realPath(parent), name); - try { - fs.unlinkSync(path); - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(ERRNO_CODES[e.code]); - } - },rmdir:function (parent, name) { - var path = PATH.join2(NODEFS.realPath(parent), name); - try { - fs.rmdirSync(path); - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(ERRNO_CODES[e.code]); - } - },readdir:function (node) { - var path = NODEFS.realPath(node); - try { - return fs.readdirSync(path); - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(ERRNO_CODES[e.code]); - } - },symlink:function (parent, newName, oldPath) { - var newPath = PATH.join2(NODEFS.realPath(parent), newName); - try { - fs.symlinkSync(oldPath, newPath); - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(ERRNO_CODES[e.code]); - } - },readlink:function (node) { - var path = NODEFS.realPath(node); - try { - return fs.readlinkSync(path); - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(ERRNO_CODES[e.code]); - } - }},stream_ops:{open:function (stream) { - var path = NODEFS.realPath(stream.node); - try { - if (FS.isFile(stream.node.mode)) { - stream.nfd = fs.openSync(path, NODEFS.flagsToPermissionString(stream.flags)); - } - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(ERRNO_CODES[e.code]); - } - },close:function (stream) { - try { - if (FS.isFile(stream.node.mode) && stream.nfd) { - fs.closeSync(stream.nfd); - } - } catch (e) { - if (!e.code) throw e; - throw new FS.ErrnoError(ERRNO_CODES[e.code]); - } - },read:function (stream, buffer, offset, length, position) { - // FIXME this is terrible. - var nbuffer = new Buffer(length); - var res; - try { - res = fs.readSync(stream.nfd, nbuffer, 0, length, position); - } catch (e) { - throw new FS.ErrnoError(ERRNO_CODES[e.code]); - } - if (res > 0) { - for (var i = 0; i < res; i++) { - buffer[offset + i] = nbuffer[i]; - } - } - return res; - },write:function (stream, buffer, offset, length, position) { - // FIXME this is terrible. - var nbuffer = new Buffer(buffer.subarray(offset, offset + length)); - var res; - try { - res = fs.writeSync(stream.nfd, nbuffer, 0, length, position); - } catch (e) { - throw new FS.ErrnoError(ERRNO_CODES[e.code]); - } - return res; - },llseek:function (stream, offset, whence) { - var position = offset; - if (whence === 1) { // SEEK_CUR. - position += stream.position; - } else if (whence === 2) { // SEEK_END. - if (FS.isFile(stream.node.mode)) { - try { - var stat = fs.fstatSync(stream.nfd); - position += stat.size; - } catch (e) { - throw new FS.ErrnoError(ERRNO_CODES[e.code]); - } - } - } - - if (position < 0) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - - stream.position = position; - return position; - }}}; - - var _stdin=allocate(1, "i32*", ALLOC_STATIC); - - var _stdout=allocate(1, "i32*", ALLOC_STATIC); - - var _stderr=allocate(1, "i32*", ALLOC_STATIC); - - function _fflush(stream) { - // int fflush(FILE *stream); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/fflush.html - // we don't currently perform any user-space buffering of data - }var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},handleFSError:function (e) { - if (!(e instanceof FS.ErrnoError)) throw e + ' : ' + stackTrace(); - return ___setErrNo(e.errno); - },lookupPath:function (path, opts) { - path = PATH.resolve(FS.cwd(), path); - opts = opts || {}; - - var defaults = { - follow_mount: true, - recurse_count: 0 - }; - for (var key in defaults) { - if (opts[key] === undefined) { - opts[key] = defaults[key]; - } - } - - if (opts.recurse_count > 8) { // max recursive lookup of 8 - throw new FS.ErrnoError(ERRNO_CODES.ELOOP); - } - - // split the path - var parts = PATH.normalizeArray(path.split('/').filter(function(p) { - return !!p; - }), false); - - // start at the root - 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) { - // stop resolving - break; - } - - current = FS.lookupNode(current, parts[i]); - current_path = PATH.join2(current_path, parts[i]); - - // jump to the mount's root node if this is a mountpoint - if (FS.isMountpoint(current)) { - if (!islast || (islast && opts.follow_mount)) { - current = current.mounted.root; - } - } - - // by default, lookupPath will not follow a symlink if it is the final path component. - // setting opts.follow = true will override this behavior. - if (!islast || opts.follow) { - var count = 0; - while (FS.isLink(current.mode)) { - var link = FS.readlink(current_path); - current_path = PATH.resolve(PATH.dirname(current_path), link); - - var lookup = FS.lookupPath(current_path, { recurse_count: opts.recurse_count }); - current = lookup.node; - - if (count++ > 40) { // limit max consecutive symlinks to 40 (SYMLOOP_MAX). - throw new FS.ErrnoError(ERRNO_CODES.ELOOP); - } - } - } - } - - return { path: current_path, node: current }; - },getPath:function (node) { - var path; - while (true) { - if (FS.isRoot(node)) { - var mount = node.mount.mountpoint; - if (!path) return mount; - return mount[mount.length-1] !== '/' ? mount + '/' + path : mount + path; - } - path = path ? node.name + '/' + path : node.name; - node = node.parent; - } - },hashName:function (parentid, name) { - var hash = 0; - - - for (var i = 0; i < name.length; i++) { - hash = ((hash << 5) - hash + name.charCodeAt(i)) | 0; - } - return ((parentid + hash) >>> 0) % FS.nameTable.length; - },hashAddNode:function (node) { - var hash = FS.hashName(node.parent.id, node.name); - node.name_next = FS.nameTable[hash]; - FS.nameTable[hash] = node; - },hashRemoveNode:function (node) { - var hash = FS.hashName(node.parent.id, node.name); - if (FS.nameTable[hash] === node) { - FS.nameTable[hash] = node.name_next; - } else { - var current = FS.nameTable[hash]; - while (current) { - if (current.name_next === node) { - current.name_next = node.name_next; - break; - } - current = current.name_next; - } - } - },lookupNode:function (parent, name) { - var err = FS.mayLookup(parent); - if (err) { - throw new FS.ErrnoError(err); - } - 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; - } - } - // if we failed to find it in the cache, call into the VFS - return FS.lookup(parent, name); - },createNode:function (parent, name, mode, rdev) { - if (!FS.FSNode) { - FS.FSNode = function(parent, name, mode, rdev) { - if (!parent) { - parent = this; // root node sets parent to itself - } - this.parent = parent; - this.mount = parent.mount; - this.mounted = null; - this.id = FS.nextInode++; - this.name = name; - this.mode = mode; - this.node_ops = {}; - this.stream_ops = {}; - this.rdev = rdev; - }; - - FS.FSNode.prototype = {}; - - // compatibility - var readMode = 292 | 73; - var writeMode = 146; - - // NOTE we must use Object.defineProperties instead of individual calls to - // Object.defineProperty in order to make closure compiler happy - Object.defineProperties(FS.FSNode.prototype, { - read: { - get: function() { return (this.mode & readMode) === readMode; }, - set: function(val) { val ? this.mode |= readMode : this.mode &= ~readMode; } - }, - write: { - get: function() { return (this.mode & writeMode) === writeMode; }, - set: function(val) { val ? this.mode |= writeMode : this.mode &= ~writeMode; } - }, - isFolder: { - get: function() { return FS.isDir(this.mode); }, - }, - isDevice: { - get: function() { return FS.isChrdev(this.mode); }, - }, - }); - } - - var node = new FS.FSNode(parent, name, mode, rdev); - - FS.hashAddNode(node); - - return node; - },destroyNode:function (node) { - FS.hashRemoveNode(node); - },isRoot:function (node) { - return node === node.parent; - },isMountpoint:function (node) { - return !!node.mounted; - },isFile:function (mode) { - return (mode & 61440) === 32768; - },isDir:function (mode) { - return (mode & 61440) === 16384; - },isLink:function (mode) { - return (mode & 61440) === 40960; - },isChrdev:function (mode) { - return (mode & 61440) === 8192; - },isBlkdev:function (mode) { - return (mode & 61440) === 24576; - },isFIFO:function (mode) { - return (mode & 61440) === 4096; - },isSocket:function (mode) { - return (mode & 49152) === 49152; - },flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function (str) { - var flags = FS.flagModes[str]; - if (typeof flags === 'undefined') { - throw new Error('Unknown file open mode: ' + str); - } - return flags; - },flagsToPermissionString:function (flag) { - var accmode = flag & 2097155; - var perms = ['r', 'w', 'rw'][accmode]; - if ((flag & 512)) { - perms += 'w'; - } - return perms; - },nodePermissions:function (node, perms) { - if (FS.ignorePermissions) { - return 0; - } - // return 0 if any user, group or owner bits are set. - if (perms.indexOf('r') !== -1 && !(node.mode & 292)) { - return ERRNO_CODES.EACCES; - } else if (perms.indexOf('w') !== -1 && !(node.mode & 146)) { - return ERRNO_CODES.EACCES; - } else if (perms.indexOf('x') !== -1 && !(node.mode & 73)) { - return ERRNO_CODES.EACCES; - } - return 0; - },mayLookup:function (dir) { - return FS.nodePermissions(dir, 'x'); - },mayCreate:function (dir, name) { - try { - var node = FS.lookupNode(dir, name); - return ERRNO_CODES.EEXIST; - } catch (e) { - } - return FS.nodePermissions(dir, 'wx'); - },mayDelete:function (dir, name, isdir) { - var node; - try { - node = FS.lookupNode(dir, name); - } catch (e) { - return e.errno; - } - var err = FS.nodePermissions(dir, 'wx'); - if (err) { - return err; - } - if (isdir) { - if (!FS.isDir(node.mode)) { - return ERRNO_CODES.ENOTDIR; - } - if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) { - return ERRNO_CODES.EBUSY; - } - } else { - if (FS.isDir(node.mode)) { - return ERRNO_CODES.EISDIR; - } - } - return 0; - },mayOpen:function (node, flags) { - if (!node) { - return ERRNO_CODES.ENOENT; - } - if (FS.isLink(node.mode)) { - return ERRNO_CODES.ELOOP; - } else if (FS.isDir(node.mode)) { - if ((flags & 2097155) !== 0 || // opening for write - (flags & 512)) { - return ERRNO_CODES.EISDIR; - } - } - return FS.nodePermissions(node, FS.flagsToPermissionString(flags)); - },MAX_OPEN_FDS:4096,nextfd:function (fd_start, fd_end) { - fd_start = fd_start || 0; - fd_end = fd_end || FS.MAX_OPEN_FDS; - for (var fd = fd_start; fd <= fd_end; fd++) { - if (!FS.streams[fd]) { - return fd; - } - } - throw new FS.ErrnoError(ERRNO_CODES.EMFILE); - },getStream:function (fd) { - return FS.streams[fd]; - },createStream:function (stream, fd_start, fd_end) { - if (!FS.FSStream) { - FS.FSStream = function(){}; - FS.FSStream.prototype = {}; - // compatibility - Object.defineProperties(FS.FSStream.prototype, { - object: { - get: function() { return this.node; }, - set: function(val) { this.node = val; } - }, - isRead: { - get: function() { return (this.flags & 2097155) !== 1; } - }, - isWrite: { - get: function() { return (this.flags & 2097155) !== 0; } - }, - isAppend: { - get: function() { return (this.flags & 1024); } - } - }); - } - // clone it, so we can return an instance of FSStream - var newStream = new FS.FSStream(); - for (var p in stream) { - newStream[p] = stream[p]; - } - stream = newStream; - var fd = FS.nextfd(fd_start, fd_end); - stream.fd = fd; - FS.streams[fd] = stream; - return stream; - },closeStream:function (fd) { - FS.streams[fd] = null; - },getStreamFromPtr:function (ptr) { - return FS.streams[ptr - 1]; - },getPtrForStream:function (stream) { - return stream ? stream.fd + 1 : 0; - },chrdev_stream_ops:{open:function (stream) { - var device = FS.getDevice(stream.node.rdev); - // override node's stream ops with the device's - stream.stream_ops = device.stream_ops; - // forward the open call - if (stream.stream_ops.open) { - stream.stream_ops.open(stream); - } - },llseek:function () { - throw new FS.ErrnoError(ERRNO_CODES.ESPIPE); - }},major:function (dev) { - return ((dev) >> 8); - },minor:function (dev) { - return ((dev) & 0xff); - },makedev:function (ma, mi) { - return ((ma) << 8 | (mi)); - },registerDevice:function (dev, ops) { - FS.devices[dev] = { stream_ops: ops }; - },getDevice:function (dev) { - return FS.devices[dev]; - },getMounts:function (mount) { - var mounts = []; - var check = [mount]; - - while (check.length) { - var m = check.pop(); - - mounts.push(m); - - check.push.apply(check, m.mounts); - } - - return mounts; - },syncfs:function (populate, callback) { - if (typeof(populate) === 'function') { - callback = populate; - populate = false; - } - - var mounts = FS.getMounts(FS.root.mount); - var completed = 0; - - function done(err) { - if (err) { - if (!done.errored) { - done.errored = true; - return callback(err); - } - return; - } - if (++completed >= mounts.length) { - callback(null); - } - }; - - // sync all mounts - mounts.forEach(function (mount) { - if (!mount.type.syncfs) { - return done(null); - } - mount.type.syncfs(mount, populate, done); - }); - },mount:function (type, opts, mountpoint) { - var root = mountpoint === '/'; - var pseudo = !mountpoint; - var node; - - if (root && FS.root) { - throw new FS.ErrnoError(ERRNO_CODES.EBUSY); - } else if (!root && !pseudo) { - var lookup = FS.lookupPath(mountpoint, { follow_mount: false }); - - mountpoint = lookup.path; // use the absolute path - node = lookup.node; - - if (FS.isMountpoint(node)) { - throw new FS.ErrnoError(ERRNO_CODES.EBUSY); - } - - if (!FS.isDir(node.mode)) { - throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR); - } - } - - var mount = { - type: type, - opts: opts, - mountpoint: mountpoint, - mounts: [] - }; - - // create a root node for the fs - var mountRoot = type.mount(mount); - mountRoot.mount = mount; - mount.root = mountRoot; - - if (root) { - FS.root = mountRoot; - } else if (node) { - // set as a mountpoint - node.mounted = mount; - - // add the new mount to the current mount's children - if (node.mount) { - node.mount.mounts.push(mount); - } - } - - return mountRoot; - },unmount:function (mountpoint) { - var lookup = FS.lookupPath(mountpoint, { follow_mount: false }); - - if (!FS.isMountpoint(lookup.node)) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - - // destroy the nodes for this mount, and all its child mounts - var node = lookup.node; - var mount = node.mounted; - var mounts = FS.getMounts(mount); - - Object.keys(FS.nameTable).forEach(function (hash) { - var current = FS.nameTable[hash]; - - while (current) { - var next = current.name_next; - - if (mounts.indexOf(current.mount) !== -1) { - FS.destroyNode(current); - } - - current = next; - } - }); - - // no longer a mountpoint - node.mounted = null; - - // remove this mount from the child mounts - var idx = node.mount.mounts.indexOf(mount); - assert(idx !== -1); - node.mount.mounts.splice(idx, 1); - },lookup:function (parent, name) { - return parent.node_ops.lookup(parent, name); - },mknod:function (path, mode, dev) { - var lookup = FS.lookupPath(path, { parent: true }); - var parent = lookup.node; - var name = PATH.basename(path); - var err = FS.mayCreate(parent, name); - if (err) { - throw new FS.ErrnoError(err); - } - if (!parent.node_ops.mknod) { - throw new FS.ErrnoError(ERRNO_CODES.EPERM); - } - return parent.node_ops.mknod(parent, name, mode, dev); - },create:function (path, mode) { - mode = mode !== undefined ? mode : 438 /* 0666 */; - mode &= 4095; - mode |= 32768; - return FS.mknod(path, mode, 0); - },mkdir:function (path, mode) { - mode = mode !== undefined ? mode : 511 /* 0777 */; - mode &= 511 | 512; - mode |= 16384; - return FS.mknod(path, mode, 0); - },mkdev:function (path, mode, dev) { - if (typeof(dev) === 'undefined') { - dev = mode; - mode = 438 /* 0666 */; - } - mode |= 8192; - return FS.mknod(path, mode, dev); - },symlink:function (oldpath, newpath) { - var lookup = FS.lookupPath(newpath, { parent: true }); - var parent = lookup.node; - var newname = PATH.basename(newpath); - var err = FS.mayCreate(parent, newname); - if (err) { - throw new FS.ErrnoError(err); - } - if (!parent.node_ops.symlink) { - throw new FS.ErrnoError(ERRNO_CODES.EPERM); - } - return parent.node_ops.symlink(parent, newname, oldpath); - },rename:function (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); - // parents must exist - var lookup, old_dir, new_dir; - try { - lookup = FS.lookupPath(old_path, { parent: true }); - old_dir = lookup.node; - lookup = FS.lookupPath(new_path, { parent: true }); - new_dir = lookup.node; - } catch (e) { - throw new FS.ErrnoError(ERRNO_CODES.EBUSY); - } - // need to be part of the same mount - if (old_dir.mount !== new_dir.mount) { - throw new FS.ErrnoError(ERRNO_CODES.EXDEV); - } - // source must exist - var old_node = FS.lookupNode(old_dir, old_name); - // old path should not be an ancestor of the new path - var relative = PATH.relative(old_path, new_dirname); - if (relative.charAt(0) !== '.') { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - // new path should not be an ancestor of the old path - relative = PATH.relative(new_path, old_dirname); - if (relative.charAt(0) !== '.') { - throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY); - } - // see if the new path already exists - var new_node; - try { - new_node = FS.lookupNode(new_dir, new_name); - } catch (e) { - // not fatal - } - // early out if nothing needs to change - if (old_node === new_node) { - return; - } - // we'll need to delete the old entry - var isdir = FS.isDir(old_node.mode); - var err = FS.mayDelete(old_dir, old_name, isdir); - if (err) { - throw new FS.ErrnoError(err); - } - // need delete permissions if we'll be overwriting. - // need create permissions if new doesn't already exist. - err = new_node ? - FS.mayDelete(new_dir, new_name, isdir) : - FS.mayCreate(new_dir, new_name); - if (err) { - throw new FS.ErrnoError(err); - } - if (!old_dir.node_ops.rename) { - throw new FS.ErrnoError(ERRNO_CODES.EPERM); - } - if (FS.isMountpoint(old_node) || (new_node && FS.isMountpoint(new_node))) { - throw new FS.ErrnoError(ERRNO_CODES.EBUSY); - } - // if we are going to change the parent, check write permissions - if (new_dir !== old_dir) { - err = FS.nodePermissions(old_dir, 'w'); - if (err) { - throw new FS.ErrnoError(err); - } - } - try { - if (FS.trackingDelegate['willMovePath']) { - FS.trackingDelegate['willMovePath'](old_path, new_path); - } - } catch(e) { - console.log("FS.trackingDelegate['willMovePath']('"+old_path+"', '"+new_path+"') threw an exception: " + e.message); - } - // remove the node from the lookup hash - FS.hashRemoveNode(old_node); - // do the underlying fs rename - try { - old_dir.node_ops.rename(old_node, new_dir, new_name); - } catch (e) { - throw e; - } finally { - // add the node back to the hash (in case node_ops.rename - // changed its name) - FS.hashAddNode(old_node); - } - try { - if (FS.trackingDelegate['onMovePath']) FS.trackingDelegate['onMovePath'](old_path, new_path); - } catch(e) { - console.log("FS.trackingDelegate['onMovePath']('"+old_path+"', '"+new_path+"') threw an exception: " + e.message); - } - },rmdir:function (path) { - var lookup = FS.lookupPath(path, { parent: true }); - var parent = lookup.node; - var name = PATH.basename(path); - var node = FS.lookupNode(parent, name); - var err = FS.mayDelete(parent, name, true); - if (err) { - throw new FS.ErrnoError(err); - } - if (!parent.node_ops.rmdir) { - throw new FS.ErrnoError(ERRNO_CODES.EPERM); - } - if (FS.isMountpoint(node)) { - throw new FS.ErrnoError(ERRNO_CODES.EBUSY); - } - try { - if (FS.trackingDelegate['willDeletePath']) { - FS.trackingDelegate['willDeletePath'](path); - } - } catch(e) { - console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: " + e.message); - } - parent.node_ops.rmdir(parent, name); - FS.destroyNode(node); - try { - if (FS.trackingDelegate['onDeletePath']) FS.trackingDelegate['onDeletePath'](path); - } catch(e) { - console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: " + e.message); - } - },readdir:function (path) { - var lookup = FS.lookupPath(path, { follow: true }); - var node = lookup.node; - if (!node.node_ops.readdir) { - throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR); - } - return node.node_ops.readdir(node); - },unlink:function (path) { - var lookup = FS.lookupPath(path, { parent: true }); - var parent = lookup.node; - var name = PATH.basename(path); - var node = FS.lookupNode(parent, name); - var err = FS.mayDelete(parent, name, false); - if (err) { - // POSIX says unlink should set EPERM, not EISDIR - if (err === ERRNO_CODES.EISDIR) err = ERRNO_CODES.EPERM; - throw new FS.ErrnoError(err); - } - if (!parent.node_ops.unlink) { - throw new FS.ErrnoError(ERRNO_CODES.EPERM); - } - if (FS.isMountpoint(node)) { - throw new FS.ErrnoError(ERRNO_CODES.EBUSY); - } - try { - if (FS.trackingDelegate['willDeletePath']) { - FS.trackingDelegate['willDeletePath'](path); - } - } catch(e) { - console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: " + e.message); - } - parent.node_ops.unlink(parent, name); - FS.destroyNode(node); - try { - if (FS.trackingDelegate['onDeletePath']) FS.trackingDelegate['onDeletePath'](path); - } catch(e) { - console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: " + e.message); - } - },readlink:function (path) { - var lookup = FS.lookupPath(path); - var link = lookup.node; - if (!link.node_ops.readlink) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - return link.node_ops.readlink(link); - },stat:function (path, dontFollow) { - var lookup = FS.lookupPath(path, { follow: !dontFollow }); - var node = lookup.node; - if (!node.node_ops.getattr) { - throw new FS.ErrnoError(ERRNO_CODES.EPERM); - } - return node.node_ops.getattr(node); - },lstat:function (path) { - return FS.stat(path, true); - },chmod:function (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(ERRNO_CODES.EPERM); - } - node.node_ops.setattr(node, { - mode: (mode & 4095) | (node.mode & ~4095), - timestamp: Date.now() - }); - },lchmod:function (path, mode) { - FS.chmod(path, mode, true); - },fchmod:function (fd, mode) { - var stream = FS.getStream(fd); - if (!stream) { - throw new FS.ErrnoError(ERRNO_CODES.EBADF); - } - FS.chmod(stream.node, mode); - },chown:function (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(ERRNO_CODES.EPERM); - } - node.node_ops.setattr(node, { - timestamp: Date.now() - // we ignore the uid / gid for now - }); - },lchown:function (path, uid, gid) { - FS.chown(path, uid, gid, true); - },fchown:function (fd, uid, gid) { - var stream = FS.getStream(fd); - if (!stream) { - throw new FS.ErrnoError(ERRNO_CODES.EBADF); - } - FS.chown(stream.node, uid, gid); - },truncate:function (path, len) { - if (len < 0) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - 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(ERRNO_CODES.EPERM); - } - if (FS.isDir(node.mode)) { - throw new FS.ErrnoError(ERRNO_CODES.EISDIR); - } - if (!FS.isFile(node.mode)) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - var err = FS.nodePermissions(node, 'w'); - if (err) { - throw new FS.ErrnoError(err); - } - node.node_ops.setattr(node, { - size: len, - timestamp: Date.now() - }); - },ftruncate:function (fd, len) { - var stream = FS.getStream(fd); - if (!stream) { - throw new FS.ErrnoError(ERRNO_CODES.EBADF); - } - if ((stream.flags & 2097155) === 0) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - FS.truncate(stream.node, len); - },utime:function (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:function (path, flags, mode, fd_start, fd_end) { - if (path === "") { - throw new FS.ErrnoError(ERRNO_CODES.ENOENT); - } - flags = typeof flags === 'string' ? FS.modeStringToFlags(flags) : flags; - mode = typeof mode === 'undefined' ? 438 /* 0666 */ : 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) { - // ignore - } - } - // perhaps we need to create the node - if ((flags & 64)) { - if (node) { - // if O_CREAT and O_EXCL are set, error out if the node already exists - if ((flags & 128)) { - throw new FS.ErrnoError(ERRNO_CODES.EEXIST); - } - } else { - // node doesn't exist, try to create it - node = FS.mknod(path, mode, 0); - } - } - if (!node) { - throw new FS.ErrnoError(ERRNO_CODES.ENOENT); - } - // can't truncate a device - if (FS.isChrdev(node.mode)) { - flags &= ~512; - } - // check permissions - var err = FS.mayOpen(node, flags); - if (err) { - throw new FS.ErrnoError(err); - } - // do truncation if necessary - if ((flags & 512)) { - FS.truncate(node, 0); - } - // we've already handled these, don't pass down to the underlying vfs - flags &= ~(128 | 512); - - // register the stream with the filesystem - var stream = FS.createStream({ - node: node, - path: FS.getPath(node), // we want the absolute path to the node - flags: flags, - seekable: true, - position: 0, - stream_ops: node.stream_ops, - // used by the file family libc calls (fopen, fwrite, ferror, etc.) - ungotten: [], - error: false - }, fd_start, fd_end); - // call the new stream's open function - 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; - Module['printErr']('read file: ' + path); - } - } - try { - if (FS.trackingDelegate['onOpenFile']) { - var trackingFlags = 0; - if ((flags & 2097155) !== 1) { - trackingFlags |= FS.tracking.openFlags.READ; - } - if ((flags & 2097155) !== 0) { - trackingFlags |= FS.tracking.openFlags.WRITE; - } - FS.trackingDelegate['onOpenFile'](path, trackingFlags); - } - } catch(e) { - console.log("FS.trackingDelegate['onOpenFile']('"+path+"', flags) threw an exception: " + e.message); - } - return stream; - },close:function (stream) { - try { - if (stream.stream_ops.close) { - stream.stream_ops.close(stream); - } - } catch (e) { - throw e; - } finally { - FS.closeStream(stream.fd); - } - },llseek:function (stream, offset, whence) { - if (!stream.seekable || !stream.stream_ops.llseek) { - throw new FS.ErrnoError(ERRNO_CODES.ESPIPE); - } - return stream.stream_ops.llseek(stream, offset, whence); - },read:function (stream, buffer, offset, length, position) { - if (length < 0 || position < 0) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - if ((stream.flags & 2097155) === 1) { - throw new FS.ErrnoError(ERRNO_CODES.EBADF); - } - if (FS.isDir(stream.node.mode)) { - throw new FS.ErrnoError(ERRNO_CODES.EISDIR); - } - if (!stream.stream_ops.read) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - var seeking = true; - if (typeof position === 'undefined') { - position = stream.position; - seeking = false; - } else if (!stream.seekable) { - throw new FS.ErrnoError(ERRNO_CODES.ESPIPE); - } - var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position); - if (!seeking) stream.position += bytesRead; - return bytesRead; - },write:function (stream, buffer, offset, length, position, canOwn) { - if (length < 0 || position < 0) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - if ((stream.flags & 2097155) === 0) { - throw new FS.ErrnoError(ERRNO_CODES.EBADF); - } - if (FS.isDir(stream.node.mode)) { - throw new FS.ErrnoError(ERRNO_CODES.EISDIR); - } - if (!stream.stream_ops.write) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - if (stream.flags & 1024) { - // seek to the end before writing in append mode - FS.llseek(stream, 0, 2); - } - var seeking = true; - if (typeof position === 'undefined') { - position = stream.position; - seeking = false; - } else if (!stream.seekable) { - throw new FS.ErrnoError(ERRNO_CODES.ESPIPE); - } - var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn); - if (!seeking) stream.position += bytesWritten; - try { - if (stream.path && FS.trackingDelegate['onWriteToFile']) FS.trackingDelegate['onWriteToFile'](stream.path); - } catch(e) { - console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: " + e.message); - } - return bytesWritten; - },allocate:function (stream, offset, length) { - if (offset < 0 || length <= 0) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - if ((stream.flags & 2097155) === 0) { - throw new FS.ErrnoError(ERRNO_CODES.EBADF); - } - if (!FS.isFile(stream.node.mode) && !FS.isDir(node.mode)) { - throw new FS.ErrnoError(ERRNO_CODES.ENODEV); - } - if (!stream.stream_ops.allocate) { - throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP); - } - stream.stream_ops.allocate(stream, offset, length); - },mmap:function (stream, buffer, offset, length, position, prot, flags) { - // TODO if PROT is PROT_WRITE, make sure we have write access - if ((stream.flags & 2097155) === 1) { - throw new FS.ErrnoError(ERRNO_CODES.EACCES); - } - if (!stream.stream_ops.mmap) { - throw new FS.ErrnoError(ERRNO_CODES.ENODEV); - } - return stream.stream_ops.mmap(stream, buffer, offset, length, position, prot, flags); - },ioctl:function (stream, cmd, arg) { - if (!stream.stream_ops.ioctl) { - throw new FS.ErrnoError(ERRNO_CODES.ENOTTY); - } - return stream.stream_ops.ioctl(stream, cmd, arg); - },readFile:function (path, opts) { - opts = opts || {}; - opts.flags = opts.flags || 'r'; - 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 = ''; - var utf8 = new Runtime.UTF8Processor(); - for (var i = 0; i < length; i++) { - ret += utf8.processCChar(buf[i]); - } - } else if (opts.encoding === 'binary') { - ret = buf; - } - FS.close(stream); - return ret; - },writeFile:function (path, data, opts) { - opts = opts || {}; - opts.flags = opts.flags || 'w'; - opts.encoding = opts.encoding || 'utf8'; - if (opts.encoding !== 'utf8' && opts.encoding !== 'binary') { - throw new Error('Invalid encoding type "' + opts.encoding + '"'); - } - var stream = FS.open(path, opts.flags, opts.mode); - if (opts.encoding === 'utf8') { - var utf8 = new Runtime.UTF8Processor(); - var buf = new Uint8Array(utf8.processJSString(data)); - FS.write(stream, buf, 0, buf.length, 0, opts.canOwn); - } else if (opts.encoding === 'binary') { - FS.write(stream, data, 0, data.length, 0, opts.canOwn); - } - FS.close(stream); - },cwd:function () { - return FS.currentPath; - },chdir:function (path) { - var lookup = FS.lookupPath(path, { follow: true }); - if (!FS.isDir(lookup.node.mode)) { - throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR); - } - var err = FS.nodePermissions(lookup.node, 'x'); - if (err) { - throw new FS.ErrnoError(err); - } - FS.currentPath = lookup.path; - },createDefaultDirectories:function () { - FS.mkdir('/tmp'); - },createDefaultDevices:function () { - // create /dev - FS.mkdir('/dev'); - // setup /dev/null - FS.registerDevice(FS.makedev(1, 3), { - read: function() { return 0; }, - write: function() { return 0; } - }); - FS.mkdev('/dev/null', FS.makedev(1, 3)); - // setup /dev/tty and /dev/tty1 - // stderr needs to print output using Module['printErr'] - // so we register a second tty just for it. - 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)); - // setup /dev/[u]random - FS.createDevice('/dev', 'random', function() { return Math.floor(Math.random()*256); }); - FS.createDevice('/dev', 'urandom', function() { return Math.floor(Math.random()*256); }); - // we're not going to emulate the actual shm device, - // just create the tmp dirs that reside in it commonly - FS.mkdir('/dev/shm'); - FS.mkdir('/dev/shm/tmp'); - },createStandardStreams:function () { - // TODO deprecate the old functionality of a single - // input / output callback and that utilizes FS.createDevice - // and instead require a unique set of stream ops - - // by default, we symlink the standard streams to the - // default tty devices. however, if the standard streams - // have been overwritten we create a unique device for - // them instead. - 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'); - } - - // open default streams for the stdin, stdout and stderr devices - var stdin = FS.open('/dev/stdin', 'r'); - HEAP32[((_stdin)>>2)]=FS.getPtrForStream(stdin); - assert(stdin.fd === 0, 'invalid handle for stdin (' + stdin.fd + ')'); - - var stdout = FS.open('/dev/stdout', 'w'); - HEAP32[((_stdout)>>2)]=FS.getPtrForStream(stdout); - assert(stdout.fd === 1, 'invalid handle for stdout (' + stdout.fd + ')'); - - var stderr = FS.open('/dev/stderr', 'w'); - HEAP32[((_stderr)>>2)]=FS.getPtrForStream(stderr); - assert(stderr.fd === 2, 'invalid handle for stderr (' + stderr.fd + ')'); - },ensureErrnoError:function () { - if (FS.ErrnoError) return; - FS.ErrnoError = function ErrnoError(errno) { - this.errno = errno; - for (var key in ERRNO_CODES) { - if (ERRNO_CODES[key] === errno) { - this.code = key; - break; - } - } - this.message = ERRNO_MESSAGES[errno]; - }; - FS.ErrnoError.prototype = new Error(); - FS.ErrnoError.prototype.constructor = FS.ErrnoError; - // Some errors may happen quite a bit, to avoid overhead we reuse them (and suffer a lack of stack info) - [ERRNO_CODES.ENOENT].forEach(function(code) { - FS.genericErrors[code] = new FS.ErrnoError(code); - FS.genericErrors[code].stack = ''; - }); - },staticInit:function () { - FS.ensureErrnoError(); - - FS.nameTable = new Array(4096); - - FS.mount(MEMFS, {}, '/'); - - FS.createDefaultDirectories(); - FS.createDefaultDevices(); - },init:function (input, output, error) { - assert(!FS.init.initialized, 'FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)'); - FS.init.initialized = true; - - FS.ensureErrnoError(); - - // Allow Module.stdin etc. to provide defaults, if none explicitly passed to us here - Module['stdin'] = input || Module['stdin']; - Module['stdout'] = output || Module['stdout']; - Module['stderr'] = error || Module['stderr']; - - FS.createStandardStreams(); - },quit:function () { - 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:function (canRead, canWrite) { - var mode = 0; - if (canRead) mode |= 292 | 73; - if (canWrite) mode |= 146; - return mode; - },joinPath:function (parts, forceRelative) { - var path = PATH.join.apply(null, parts); - if (forceRelative && path[0] == '/') path = path.substr(1); - return path; - },absolutePath:function (relative, base) { - return PATH.resolve(base, relative); - },standardizePath:function (path) { - return PATH.normalize(path); - },findObject:function (path, dontResolveLastLink) { - var ret = FS.analyzePath(path, dontResolveLastLink); - if (ret.exists) { - return ret.object; - } else { - ___setErrNo(ret.error); - return null; - } - },analyzePath:function (path, dontResolveLastLink) { - // operate from within the context of the symlink's target - 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; - },createFolder:function (parent, name, canRead, canWrite) { - var path = PATH.join2(typeof parent === 'string' ? parent : FS.getPath(parent), name); - var mode = FS.getMode(canRead, canWrite); - return FS.mkdir(path, mode); - },createPath:function (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) { - // ignore EEXIST - } - parent = current; - } - return current; - },createFile:function (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:function (parent, name, data, canRead, canWrite, canOwn) { - var path = name ? PATH.join2(typeof parent === 'string' ? parent : FS.getPath(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; - } - // make sure we can write to the file - FS.chmod(node, mode | 146); - var stream = FS.open(node, 'w'); - FS.write(stream, data, 0, data.length, 0, canOwn); - FS.close(stream); - FS.chmod(node, mode); - } - return node; - },createDevice:function (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); - // Create a fake device that a set of stream ops to emulate - // the old behavior. - FS.registerDevice(dev, { - open: function(stream) { - stream.seekable = false; - }, - close: function(stream) { - // flush any pending line data - if (output && output.buffer && output.buffer.length) { - output(10); - } - }, - read: function(stream, buffer, offset, length, pos /* ignored */) { - var bytesRead = 0; - for (var i = 0; i < length; i++) { - var result; - try { - result = input(); - } catch (e) { - throw new FS.ErrnoError(ERRNO_CODES.EIO); - } - if (result === undefined && bytesRead === 0) { - throw new FS.ErrnoError(ERRNO_CODES.EAGAIN); - } - 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) { - for (var i = 0; i < length; i++) { - try { - output(buffer[offset+i]); - } catch (e) { - throw new FS.ErrnoError(ERRNO_CODES.EIO); - } - } - if (length) { - stream.node.timestamp = Date.now(); - } - return i; - } - }); - return FS.mkdev(path, mode, dev); - },createLink:function (parent, name, target, canRead, canWrite) { - var path = PATH.join2(typeof parent === 'string' ? parent : FS.getPath(parent), name); - return FS.symlink(target, path); - },forceLoadFile:function (obj) { - if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true; - var success = 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 (Module['read']) { - // Command-line. - try { - // WARNING: Can't read binary files in V8's d8 or tracemonkey's js, as - // read() will try to parse UTF8. - obj.contents = intArrayFromString(Module['read'](obj.url), true); - obj.usedBytes = obj.contents.length; - } catch (e) { - success = false; - } - } else { - throw new Error('Cannot load without read() or XMLHttpRequest.'); - } - if (!success) ___setErrNo(ERRNO_CODES.EIO); - return success; - },createLazyFile:function (parent, name, url, canRead, canWrite) { - // Lazy chunked Uint8Array (implements get and length from Uint8Array). Actual getting is abstracted away for eventual reuse. - function LazyUint8Array() { - this.lengthKnown = false; - this.chunks = []; // Loaded chunks. Index is the chunk number - } - LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) { - if (idx > this.length-1 || idx < 0) { - return undefined; - } - var chunkOffset = idx % this.chunkSize; - var chunkNum = Math.floor(idx / this.chunkSize); - return this.getter(chunkNum)[chunkOffset]; - } - LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) { - this.getter = getter; - } - LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() { - // Find length - 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 chunkSize = 1024*1024; // Chunk size in bytes - - if (!hasByteServing) chunkSize = datalength; - - // Function to get a range from the remote URL. - var doXHR = (function(from, to) { - if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!"); - if (to > datalength-1) throw new Error("only " + datalength + " bytes available! programmer error!"); - - // TODO: Use mozResponseArrayBuffer, responseStream, etc. if available. - var xhr = new XMLHttpRequest(); - xhr.open('GET', url, false); - if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to); - - // Some hints to the browser that we want binary data. - if (typeof Uint8Array != 'undefined') xhr.responseType = 'arraybuffer'; - if (xhr.overrideMimeType) { - xhr.overrideMimeType('text/plain; charset=x-user-defined'); - } - - xhr.send(null); - if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); - if (xhr.response !== undefined) { - return new Uint8Array(xhr.response || []); - } else { - return intArrayFromString(xhr.responseText || '', true); - } - }); - var lazyArray = this; - lazyArray.setDataGetter(function(chunkNum) { - var start = chunkNum * chunkSize; - var end = (chunkNum+1) * chunkSize - 1; // including this byte - end = Math.min(end, datalength-1); // if datalength-1 is selected, this is the last block - 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]; - }); - - 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.defineProperty(lazyArray, "length", { - get: function() { - if(!this.lengthKnown) { - this.cacheLength(); - } - return this._length; - } - }); - Object.defineProperty(lazyArray, "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); - // This is a total hack, but I want to get this lazy file code out of the - // core of MEMFS. If we want to keep this lazy file concept I feel it should - // be its own thin LAZYFS proxying calls to MEMFS. - if (properties.contents) { - node.contents = properties.contents; - } else if (properties.url) { - node.contents = null; - node.url = properties.url; - } - // Add a function that defers querying the file size until it is asked the first time. - Object.defineProperty(node, "usedBytes", { - get: function() { return this.contents.length; } - }); - // override each stream op with one that tries to force load the lazy file first - var stream_ops = {}; - var keys = Object.keys(node.stream_ops); - keys.forEach(function(key) { - var fn = node.stream_ops[key]; - stream_ops[key] = function forceLoadLazyFile() { - if (!FS.forceLoadFile(node)) { - throw new FS.ErrnoError(ERRNO_CODES.EIO); - } - return fn.apply(null, arguments); - }; - }); - // use a custom read function - stream_ops.read = function stream_ops_read(stream, buffer, offset, length, position) { - if (!FS.forceLoadFile(node)) { - throw new FS.ErrnoError(ERRNO_CODES.EIO); - } - var contents = stream.node.contents; - if (position >= contents.length) - return 0; - var size = Math.min(contents.length - position, length); - assert(size >= 0); - if (contents.slice) { // normal array - for (var i = 0; i < size; i++) { - buffer[offset + i] = contents[position + i]; - } - } else { - for (var i = 0; i < size; i++) { // LazyUint8Array from sync binary XHR - buffer[offset + i] = contents.get(position + i); - } - } - return size; - }; - node.stream_ops = stream_ops; - return node; - },createPreloadedFile:function (parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn) { - Browser.init(); - // TODO we should allow people to just pass in a complete filename instead - // of parent and name being that we just join them anyways - var fullname = name ? PATH.resolve(PATH.join2(parent, name)) : parent; - function processData(byteArray) { - function finish(byteArray) { - if (!dontCreateFile) { - FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn); - } - if (onload) onload(); - removeRunDependency('cp ' + fullname); - } - var handled = false; - Module['preloadPlugins'].forEach(function(plugin) { - if (handled) return; - if (plugin['canHandle'](fullname)) { - plugin['handle'](byteArray, fullname, finish, function() { - if (onerror) onerror(); - removeRunDependency('cp ' + fullname); - }); - handled = true; - } - }); - if (!handled) finish(byteArray); - } - addRunDependency('cp ' + fullname); - if (typeof url == 'string') { - Browser.asyncLoad(url, function(byteArray) { - processData(byteArray); - }, onerror); - } else { - processData(url); - } - },indexedDB:function () { - return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; - },DB_NAME:function () { - return 'EM_FS_' + window.location.pathname; - },DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:function (paths, onload, onerror) { - onload = onload || function(){}; - onerror = onerror || function(){}; - var indexedDB = FS.indexedDB(); - try { - var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION); - } catch (e) { - return onerror(e); - } - openRequest.onupgradeneeded = function openRequest_onupgradeneeded() { - console.log('creating db'); - var db = openRequest.result; - db.createObjectStore(FS.DB_STORE_NAME); - }; - openRequest.onsuccess = function 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(function(path) { - var putRequest = files.put(FS.analyzePath(path).object.contents, path); - putRequest.onsuccess = function putRequest_onsuccess() { ok++; if (ok + fail == total) finish() }; - putRequest.onerror = function putRequest_onerror() { fail++; if (ok + fail == total) finish() }; - }); - transaction.onerror = onerror; - }; - openRequest.onerror = onerror; - },loadFilesFromDB:function (paths, onload, onerror) { - onload = onload || function(){}; - onerror = onerror || function(){}; - var indexedDB = FS.indexedDB(); - try { - var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION); - } catch (e) { - return onerror(e); - } - openRequest.onupgradeneeded = onerror; // no database to load from - openRequest.onsuccess = function 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(function(path) { - var getRequest = files.get(path); - getRequest.onsuccess = function 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 = function getRequest_onerror() { fail++; if (ok + fail == total) finish() }; - }); - transaction.onerror = onerror; - }; - openRequest.onerror = onerror; - }};function _lseek(fildes, offset, whence) { - // off_t lseek(int fildes, off_t offset, int whence); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/lseek.html - var stream = FS.getStream(fildes); - if (!stream) { - ___setErrNo(ERRNO_CODES.EBADF); - return -1; - } - try { - return FS.llseek(stream, offset, whence); - } catch (e) { - FS.handleFSError(e); - return -1; - } - } - - - Module["_i64Subtract"] = _i64Subtract; - - var _DtoILow=true; - - function _sysconf(name) { - // long sysconf(int name); - // http://pubs.opengroup.org/onlinepubs/009695399/functions/sysconf.html - switch(name) { - case 30: return PAGE_SIZE; - case 132: - case 133: - case 12: - case 137: - case 138: - case 15: - case 235: - case 16: - case 17: - case 18: - case 19: - case 20: - case 149: - case 13: - case 10: - case 236: - case 153: - case 9: - case 21: - case 22: - case 159: - case 154: - case 14: - case 77: - case 78: - case 139: - case 80: - case 81: - case 79: - case 82: - case 68: - case 67: - case 164: - case 11: - case 29: - case 47: - case 48: - case 95: - case 52: - case 51: - case 46: - return 200809; - case 27: - case 246: - case 127: - case 128: - case 23: - case 24: - case 160: - case 161: - case 181: - case 182: - case 242: - case 183: - case 184: - case 243: - case 244: - case 245: - case 165: - case 178: - case 179: - case 49: - case 50: - case 168: - case 169: - case 175: - case 170: - case 171: - case 172: - case 97: - case 76: - case 32: - case 173: - case 35: - return -1; - case 176: - case 177: - case 7: - case 155: - case 8: - case 157: - case 125: - case 126: - case 92: - case 93: - case 129: - case 130: - case 131: - case 94: - case 91: - return 1; - case 74: - case 60: - case 69: - case 70: - case 4: - return 1024; - case 31: - case 42: - case 72: - return 32; - case 87: - case 26: - case 33: - return 2147483647; - case 34: - case 1: - return 47839; - case 38: - case 36: - return 99; - case 43: - case 37: - return 2048; - case 0: return 2097152; - case 3: return 65536; - case 28: return 32768; - case 44: return 32767; - case 75: return 16384; - case 39: return 1000; - case 89: return 700; - case 71: return 256; - case 40: return 255; - case 2: return 100; - case 180: return 64; - case 25: return 20; - case 5: return 16; - case 6: return 6; - case 73: return 4; - case 84: return 1; - } - ___setErrNo(ERRNO_CODES.EINVAL); - return -1; - } - - var _SItoD=true; - - - Module["_memset"] = _memset; - - function _stat(path, buf, dontResolveLastLink) { - // http://pubs.opengroup.org/onlinepubs/7908799/xsh/stat.html - // int stat(const char *path, struct stat *buf); - // NOTE: dontResolveLastLink is a shortcut for lstat(). It should never be - // used in client code. - path = typeof path !== 'string' ? Pointer_stringify(path) : path; - try { - var stat = dontResolveLastLink ? FS.lstat(path) : FS.stat(path); - 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; - HEAP32[(((buf)+(36))>>2)]=stat.size; - HEAP32[(((buf)+(40))>>2)]=4096; - HEAP32[(((buf)+(44))>>2)]=stat.blocks; - HEAP32[(((buf)+(48))>>2)]=Math.floor(stat.atime.getTime() / 1000); - HEAP32[(((buf)+(52))>>2)]=0; - HEAP32[(((buf)+(56))>>2)]=Math.floor(stat.mtime.getTime() / 1000); - HEAP32[(((buf)+(60))>>2)]=0; - HEAP32[(((buf)+(64))>>2)]=Math.floor(stat.ctime.getTime() / 1000); - HEAP32[(((buf)+(68))>>2)]=0; - HEAP32[(((buf)+(72))>>2)]=stat.ino; - return 0; - } catch (e) { - FS.handleFSError(e); - return -1; - } - } - - var _DtoIHigh=true; - - - Module["_bitshift64Shl"] = _bitshift64Shl; - - function _abort() { - Module['abort'](); - } - - - function _usleep(useconds) { - // int usleep(useconds_t useconds); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/usleep.html - // We're single-threaded, so use a busy loop. Super-ugly. - var msec = useconds / 1000; - if (ENVIRONMENT_IS_WEB && window['performance'] && window['performance']['now']) { - var start = window['performance']['now'](); - while (window['performance']['now']() - start < msec) { - // Do nothing. - } - } else { - var start = Date.now(); - while (Date.now() - start < msec) { - // Do nothing. - } - } - return 0; - }function _sleep(seconds) { - // unsigned sleep(unsigned seconds); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/sleep.html - return _usleep(seconds * 1e6); - } - - function _close(fildes) { - // int close(int fildes); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/close.html - var stream = FS.getStream(fildes); - if (!stream) { - ___setErrNo(ERRNO_CODES.EBADF); - return -1; - } - try { - FS.close(stream); - return 0; - } catch (e) { - FS.handleFSError(e); - return -1; - } - } - - - Module["_strlen"] = _strlen; - - function _access(path, amode) { - // int access(const char *path, int amode); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/access.html - path = Pointer_stringify(path); - if (amode & ~7) { - // need a valid mode - ___setErrNo(ERRNO_CODES.EINVAL); - return -1; - } - var node; - try { - var lookup = FS.lookupPath(path, { follow: true }); - node = lookup.node; - } catch (e) { - FS.handleFSError(e); - return -1; - } - var perms = ''; - if (amode & 4) perms += 'r'; - if (amode & 2) perms += 'w'; - if (amode & 1) perms += 'x'; - if (perms /* otherwise, they've just passed F_OK */ && FS.nodePermissions(node, perms)) { - ___setErrNo(ERRNO_CODES.EACCES); - return -1; - } - return 0; - } - - function _unlink(path) { - // int unlink(const char *path); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/unlink.html - path = Pointer_stringify(path); - try { - FS.unlink(path); - return 0; - } catch (e) { - FS.handleFSError(e); - return -1; - } - } - - - Module["_i64Add"] = _i64Add; - - function _open(path, oflag, varargs) { - // int open(const char *path, int oflag, ...); - // http://pubs.opengroup.org/onlinepubs/009695399/functions/open.html - var mode = HEAP32[((varargs)>>2)]; - path = Pointer_stringify(path); - try { - var stream = FS.open(path, oflag, mode); - return stream.fd; - } catch (e) { - FS.handleFSError(e); - return -1; - } - } - - - function _getgid() { - // gid_t getgid(void); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/getgid.html - // We have just one process/group/user, all with ID 0. - return 0; - }function _geteuid() { - return _getgid.apply(null, arguments) - } - - - function _mknod(path, mode, dev) { - // int mknod(const char *path, mode_t mode, dev_t dev); - // http://pubs.opengroup.org/onlinepubs/7908799/xsh/mknod.html - path = Pointer_stringify(path); - // we don't want this in the JS API as the JS API - // uses mknod to create all nodes. - switch (mode & 61440) { - case 32768: - case 8192: - case 24576: - case 4096: - case 49152: - break; - default: - ___setErrNo(ERRNO_CODES.EINVAL); - return -1; - } - try { - FS.mknod(path, mode, dev); - return 0; - } catch (e) { - FS.handleFSError(e); - return -1; - } - }function _mkdir(path, mode) { - // int mkdir(const char *path, mode_t mode); - // http://pubs.opengroup.org/onlinepubs/7908799/xsh/mkdir.html - path = Pointer_stringify(path); - // remove a trailing slash, if one - /a/b/ has basename of '', but - // we want to create b in the context of this function - if (path[path.length-1] === '/') path = path.substr(0, path.length-1); - try { - FS.mkdir(path, mode, 0); - return 0; - } catch (e) { - FS.handleFSError(e); - return -1; - } - } - - - - - function _mkport() { throw 'TODO' }var SOCKFS={mount:function (mount) { - return FS.createNode(null, '/', 16384 | 511 /* 0777 */, 0); - },createSocket:function (family, type, protocol) { - var streaming = type == 1; - if (protocol) { - assert(streaming == (protocol == 6)); // if SOCK_STREAM, must be tcp - } - - // create our internal socket structure - var sock = { - family: family, - type: type, - protocol: protocol, - server: null, - peers: {}, - pending: [], - recv_queue: [], - sock_ops: SOCKFS.websocket_sock_ops - }; - - // create the filesystem node to store the socket structure - var name = SOCKFS.nextname(); - var node = FS.createNode(SOCKFS.root, name, 49152, 0); - node.sock = sock; - - // and the wrapping stream that enables library functions such - // as read and write to indirectly interact with the socket - var stream = FS.createStream({ - path: name, - node: node, - flags: FS.modeStringToFlags('r+'), - seekable: false, - stream_ops: SOCKFS.stream_ops - }); - - // map the new stream to the socket structure (sockets have a 1:1 - // relationship with a stream) - sock.stream = stream; - - return sock; - },getSocket:function (fd) { - var stream = FS.getStream(fd); - if (!stream || !FS.isSocket(stream.node.mode)) { - return null; - } - return stream.node.sock; - },stream_ops:{poll:function (stream) { - var sock = stream.node.sock; - return sock.sock_ops.poll(sock); - },ioctl:function (stream, request, varargs) { - var sock = stream.node.sock; - return sock.sock_ops.ioctl(sock, request, varargs); - },read:function (stream, buffer, offset, length, position /* ignored */) { - var sock = stream.node.sock; - var msg = sock.sock_ops.recvmsg(sock, length); - if (!msg) { - // socket is closed - return 0; - } - buffer.set(msg.buffer, offset); - return msg.buffer.length; - },write:function (stream, buffer, offset, length, position /* ignored */) { - var sock = stream.node.sock; - return sock.sock_ops.sendmsg(sock, buffer, offset, length); - },close:function (stream) { - var sock = stream.node.sock; - sock.sock_ops.close(sock); - }},nextname:function () { - if (!SOCKFS.nextname.current) { - SOCKFS.nextname.current = 0; - } - return 'socket[' + (SOCKFS.nextname.current++) + ']'; - },websocket_sock_ops:{createPeer:function (sock, addr, port) { - var ws; - - if (typeof addr === 'object') { - ws = addr; - addr = null; - port = null; - } - - if (ws) { - // for sockets that've already connected (e.g. we're the server) - // we can inspect the _socket property for the address - if (ws._socket) { - addr = ws._socket.remoteAddress; - port = ws._socket.remotePort; - } - // if we're just now initializing a connection to the remote, - // inspect the url property - else { - var result = /ws[s]?:\/\/([^:]+):(\d+)/.exec(ws.url); - if (!result) { - throw new Error('WebSocket URL must be in the format ws(s)://address:port'); - } - addr = result[1]; - port = parseInt(result[2], 10); - } - } else { - // create the actual websocket object and connect - try { - // runtimeConfig gets set to true if WebSocket runtime configuration is available. - var runtimeConfig = (Module['websocket'] && ('object' === typeof Module['websocket'])); - - // The default value is 'ws://' the replace is needed because the compiler replaces "//" comments with '#' - // comments without checking context, so we'd end up with ws:#, the replace swaps the "#" for "//" again. - var url = 'ws:#'.replace('#', '//'); - - if (runtimeConfig) { - if ('string' === typeof Module['websocket']['url']) { - url = Module['websocket']['url']; // Fetch runtime WebSocket URL config. - } - } - - if (url === 'ws://' || url === 'wss://') { // Is the supplied URL config just a prefix, if so complete it. - url = url + addr + ':' + port; - } - - // Make the WebSocket subprotocol (Sec-WebSocket-Protocol) default to binary if no configuration is set. - var subProtocols = 'binary'; // The default value is 'binary' - - if (runtimeConfig) { - if ('string' === typeof Module['websocket']['subprotocol']) { - subProtocols = Module['websocket']['subprotocol']; // Fetch runtime WebSocket subprotocol config. - } - } - - // The regex trims the string (removes spaces at the beginning and end, then splits the string by - // , into an Array. Whitespace removal is important for Websockify and ws. - subProtocols = subProtocols.replace(/^ +| +$/g,"").split(/ *, */); - - // The node ws library API for specifying optional subprotocol is slightly different than the browser's. - var opts = ENVIRONMENT_IS_NODE ? {'protocol': subProtocols.toString()} : subProtocols; - - // If node we use the ws library. - var WebSocket = ENVIRONMENT_IS_NODE ? require('ws') : window['WebSocket']; - ws = new WebSocket(url, opts); - ws.binaryType = 'arraybuffer'; - } catch (e) { - throw new FS.ErrnoError(ERRNO_CODES.EHOSTUNREACH); - } - } - - - var peer = { - addr: addr, - port: port, - socket: ws, - dgram_send_queue: [] - }; - - SOCKFS.websocket_sock_ops.addPeer(sock, peer); - SOCKFS.websocket_sock_ops.handlePeerEvents(sock, peer); - - // if this is a bound dgram socket, send the port number first to allow - // us to override the ephemeral port reported to us by remotePort on the - // remote end. - if (sock.type === 2 && typeof sock.sport !== 'undefined') { - peer.dgram_send_queue.push(new Uint8Array([ - 255, 255, 255, 255, - 'p'.charCodeAt(0), 'o'.charCodeAt(0), 'r'.charCodeAt(0), 't'.charCodeAt(0), - ((sock.sport & 0xff00) >> 8) , (sock.sport & 0xff) - ])); - } - - return peer; - },getPeer:function (sock, addr, port) { - return sock.peers[addr + ':' + port]; - },addPeer:function (sock, peer) { - sock.peers[peer.addr + ':' + peer.port] = peer; - },removePeer:function (sock, peer) { - delete sock.peers[peer.addr + ':' + peer.port]; - },handlePeerEvents:function (sock, peer) { - var first = true; - - var handleOpen = function () { - try { - var queued = peer.dgram_send_queue.shift(); - while (queued) { - peer.socket.send(queued); - queued = peer.dgram_send_queue.shift(); - } - } catch (e) { - // not much we can do here in the way of proper error handling as we've already - // lied and said this data was sent. shut it down. - peer.socket.close(); - } - }; - - function handleMessage(data) { - assert(typeof data !== 'string' && data.byteLength !== undefined); // must receive an ArrayBuffer - data = new Uint8Array(data); // make a typed array view on the array buffer - - - // if this is the port message, override the peer's port with it - var wasfirst = first; - first = false; - if (wasfirst && - data.length === 10 && - data[0] === 255 && data[1] === 255 && data[2] === 255 && data[3] === 255 && - data[4] === 'p'.charCodeAt(0) && data[5] === 'o'.charCodeAt(0) && data[6] === 'r'.charCodeAt(0) && data[7] === 't'.charCodeAt(0)) { - // update the peer's port and it's key in the peer map - var newport = ((data[8] << 8) | data[9]); - SOCKFS.websocket_sock_ops.removePeer(sock, peer); - peer.port = newport; - SOCKFS.websocket_sock_ops.addPeer(sock, peer); - return; - } - - sock.recv_queue.push({ addr: peer.addr, port: peer.port, data: data }); - }; - - if (ENVIRONMENT_IS_NODE) { - peer.socket.on('open', handleOpen); - peer.socket.on('message', function(data, flags) { - if (!flags.binary) { - return; - } - handleMessage((new Uint8Array(data)).buffer); // copy from node Buffer -> ArrayBuffer - }); - peer.socket.on('error', function() { - // don't throw - }); - } else { - peer.socket.onopen = handleOpen; - peer.socket.onmessage = function peer_socket_onmessage(event) { - handleMessage(event.data); - }; - } - },poll:function (sock) { - if (sock.type === 1 && sock.server) { - // listen sockets should only say they're available for reading - // if there are pending clients. - return sock.pending.length ? (64 | 1) : 0; - } - - var mask = 0; - var dest = sock.type === 1 ? // we only care about the socket state for connection-based sockets - SOCKFS.websocket_sock_ops.getPeer(sock, sock.daddr, sock.dport) : - null; - - if (sock.recv_queue.length || - !dest || // connection-less sockets are always ready to read - (dest && dest.socket.readyState === dest.socket.CLOSING) || - (dest && dest.socket.readyState === dest.socket.CLOSED)) { // let recv return 0 once closed - mask |= (64 | 1); - } - - if (!dest || // connection-less sockets are always ready to write - (dest && dest.socket.readyState === dest.socket.OPEN)) { - mask |= 4; - } - - if ((dest && dest.socket.readyState === dest.socket.CLOSING) || - (dest && dest.socket.readyState === dest.socket.CLOSED)) { - mask |= 16; - } - - return mask; - },ioctl:function (sock, request, arg) { - switch (request) { - case 21531: - var bytes = 0; - if (sock.recv_queue.length) { - bytes = sock.recv_queue[0].data.length; - } - HEAP32[((arg)>>2)]=bytes; - return 0; - default: - return ERRNO_CODES.EINVAL; - } - },close:function (sock) { - // if we've spawned a listen server, close it - if (sock.server) { - try { - sock.server.close(); - } catch (e) { - } - sock.server = null; - } - // close any peer connections - var peers = Object.keys(sock.peers); - for (var i = 0; i < peers.length; i++) { - var peer = sock.peers[peers[i]]; - try { - peer.socket.close(); - } catch (e) { - } - SOCKFS.websocket_sock_ops.removePeer(sock, peer); - } - return 0; - },bind:function (sock, addr, port) { - if (typeof sock.saddr !== 'undefined' || typeof sock.sport !== 'undefined') { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); // already bound - } - sock.saddr = addr; - sock.sport = port || _mkport(); - // in order to emulate dgram sockets, we need to launch a listen server when - // binding on a connection-less socket - // note: this is only required on the server side - if (sock.type === 2) { - // close the existing server if it exists - if (sock.server) { - sock.server.close(); - sock.server = null; - } - // swallow error operation not supported error that occurs when binding in the - // browser where this isn't supported - try { - sock.sock_ops.listen(sock, 0); - } catch (e) { - if (!(e instanceof FS.ErrnoError)) throw e; - if (e.errno !== ERRNO_CODES.EOPNOTSUPP) throw e; - } - } - },connect:function (sock, addr, port) { - if (sock.server) { - throw new FS.ErrnoError(ERRNO_CODS.EOPNOTSUPP); - } - - // TODO autobind - // if (!sock.addr && sock.type == 2) { - // } - - // early out if we're already connected / in the middle of connecting - if (typeof sock.daddr !== 'undefined' && typeof sock.dport !== 'undefined') { - var dest = SOCKFS.websocket_sock_ops.getPeer(sock, sock.daddr, sock.dport); - if (dest) { - if (dest.socket.readyState === dest.socket.CONNECTING) { - throw new FS.ErrnoError(ERRNO_CODES.EALREADY); - } else { - throw new FS.ErrnoError(ERRNO_CODES.EISCONN); - } - } - } - - // add the socket to our peer list and set our - // destination address / port to match - var peer = SOCKFS.websocket_sock_ops.createPeer(sock, addr, port); - sock.daddr = peer.addr; - sock.dport = peer.port; - - // always "fail" in non-blocking mode - throw new FS.ErrnoError(ERRNO_CODES.EINPROGRESS); - },listen:function (sock, backlog) { - if (!ENVIRONMENT_IS_NODE) { - throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP); - } - if (sock.server) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); // already listening - } - var WebSocketServer = require('ws').Server; - var host = sock.saddr; - sock.server = new WebSocketServer({ - host: host, - port: sock.sport - // TODO support backlog - }); - - sock.server.on('connection', function(ws) { - if (sock.type === 1) { - var newsock = SOCKFS.createSocket(sock.family, sock.type, sock.protocol); - - // create a peer on the new socket - var peer = SOCKFS.websocket_sock_ops.createPeer(newsock, ws); - newsock.daddr = peer.addr; - newsock.dport = peer.port; - - // push to queue for accept to pick up - sock.pending.push(newsock); - } else { - // create a peer on the listen socket so calling sendto - // with the listen socket and an address will resolve - // to the correct client - SOCKFS.websocket_sock_ops.createPeer(sock, ws); - } - }); - sock.server.on('closed', function() { - sock.server = null; - }); - sock.server.on('error', function() { - // don't throw - }); - },accept:function (listensock) { - if (!listensock.server) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - var newsock = listensock.pending.shift(); - newsock.stream.flags = listensock.stream.flags; - return newsock; - },getname:function (sock, peer) { - var addr, port; - if (peer) { - if (sock.daddr === undefined || sock.dport === undefined) { - throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN); - } - addr = sock.daddr; - port = sock.dport; - } else { - // TODO saddr and sport will be set for bind()'d UDP sockets, but what - // should we be returning for TCP sockets that've been connect()'d? - addr = sock.saddr || 0; - port = sock.sport || 0; - } - return { addr: addr, port: port }; - },sendmsg:function (sock, buffer, offset, length, addr, port) { - if (sock.type === 2) { - // connection-less sockets will honor the message address, - // and otherwise fall back to the bound destination address - if (addr === undefined || port === undefined) { - addr = sock.daddr; - port = sock.dport; - } - // if there was no address to fall back to, error out - if (addr === undefined || port === undefined) { - throw new FS.ErrnoError(ERRNO_CODES.EDESTADDRREQ); - } - } else { - // connection-based sockets will only use the bound - addr = sock.daddr; - port = sock.dport; - } - - // find the peer for the destination address - var dest = SOCKFS.websocket_sock_ops.getPeer(sock, addr, port); - - // early out if not connected with a connection-based socket - if (sock.type === 1) { - if (!dest || dest.socket.readyState === dest.socket.CLOSING || dest.socket.readyState === dest.socket.CLOSED) { - throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN); - } else if (dest.socket.readyState === dest.socket.CONNECTING) { - throw new FS.ErrnoError(ERRNO_CODES.EAGAIN); - } - } - - // create a copy of the incoming data to send, as the WebSocket API - // doesn't work entirely with an ArrayBufferView, it'll just send - // the entire underlying buffer - var data; - if (buffer instanceof Array || buffer instanceof ArrayBuffer) { - data = buffer.slice(offset, offset + length); - } else { // ArrayBufferView - data = buffer.buffer.slice(buffer.byteOffset + offset, buffer.byteOffset + offset + length); - } - - // if we're emulating a connection-less dgram socket and don't have - // a cached connection, queue the buffer to send upon connect and - // lie, saying the data was sent now. - if (sock.type === 2) { - if (!dest || dest.socket.readyState !== dest.socket.OPEN) { - // if we're not connected, open a new connection - if (!dest || dest.socket.readyState === dest.socket.CLOSING || dest.socket.readyState === dest.socket.CLOSED) { - dest = SOCKFS.websocket_sock_ops.createPeer(sock, addr, port); - } - dest.dgram_send_queue.push(data); - return length; - } - } - - try { - // send the actual data - dest.socket.send(data); - return length; - } catch (e) { - throw new FS.ErrnoError(ERRNO_CODES.EINVAL); - } - },recvmsg:function (sock, length) { - // http://pubs.opengroup.org/onlinepubs/7908799/xns/recvmsg.html - if (sock.type === 1 && sock.server) { - // tcp servers should not be recv()'ing on the listen socket - throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN); - } - - var queued = sock.recv_queue.shift(); - if (!queued) { - if (sock.type === 1) { - var dest = SOCKFS.websocket_sock_ops.getPeer(sock, sock.daddr, sock.dport); - - if (!dest) { - // if we have a destination address but are not connected, error out - throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN); - } - else if (dest.socket.readyState === dest.socket.CLOSING || dest.socket.readyState === dest.socket.CLOSED) { - // return null if the socket has closed - return null; - } - else { - // else, our socket is in a valid state but truly has nothing available - throw new FS.ErrnoError(ERRNO_CODES.EAGAIN); - } - } else { - throw new FS.ErrnoError(ERRNO_CODES.EAGAIN); - } - } - - // queued.data will be an ArrayBuffer if it's unadulterated, but if it's - // requeued TCP data it'll be an ArrayBufferView - var queuedLength = queued.data.byteLength || queued.data.length; - var queuedOffset = queued.data.byteOffset || 0; - var queuedBuffer = queued.data.buffer || queued.data; - var bytesRead = Math.min(length, queuedLength); - var res = { - buffer: new Uint8Array(queuedBuffer, queuedOffset, bytesRead), - addr: queued.addr, - port: queued.port - }; - - - // push back any unread data for TCP connections - if (sock.type === 1 && bytesRead < queuedLength) { - var bytesRemaining = queuedLength - bytesRead; - queued.data = new Uint8Array(queuedBuffer, queuedOffset + bytesRead, bytesRemaining); - sock.recv_queue.unshift(queued); - } - - return res; - }}};function _send(fd, buf, len, flags) { - var sock = SOCKFS.getSocket(fd); - if (!sock) { - ___setErrNo(ERRNO_CODES.EBADF); - return -1; - } - // TODO honor flags - return _write(fd, buf, len); - } - - function _pwrite(fildes, buf, nbyte, offset) { - // ssize_t pwrite(int fildes, const void *buf, size_t nbyte, off_t offset); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/write.html - var stream = FS.getStream(fildes); - if (!stream) { - ___setErrNo(ERRNO_CODES.EBADF); - return -1; - } - try { - var slab = HEAP8; - return FS.write(stream, slab, buf, nbyte, offset); - } catch (e) { - FS.handleFSError(e); - return -1; - } - }function _write(fildes, buf, nbyte) { - // ssize_t write(int fildes, const void *buf, size_t nbyte); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/write.html - var stream = FS.getStream(fildes); - if (!stream) { - ___setErrNo(ERRNO_CODES.EBADF); - return -1; - } - - - try { - var slab = HEAP8; - return FS.write(stream, slab, buf, nbyte); - } catch (e) { - FS.handleFSError(e); - return -1; - } - } - - - function _chmod(path, mode, dontResolveLastLink) { - // int chmod(const char *path, mode_t mode); - // http://pubs.opengroup.org/onlinepubs/7908799/xsh/chmod.html - // NOTE: dontResolveLastLink is a shortcut for lchmod(). It should never be - // used in client code. - path = typeof path !== 'string' ? Pointer_stringify(path) : path; - try { - FS.chmod(path, mode); - return 0; - } catch (e) { - FS.handleFSError(e); - return -1; - } - }function _fchmod(fildes, mode) { - // int fchmod(int fildes, mode_t mode); - // http://pubs.opengroup.org/onlinepubs/7908799/xsh/fchmod.html - try { - FS.fchmod(fildes, mode); - return 0; - } catch (e) { - FS.handleFSError(e); - return -1; - } - } - - var Browser={mainLoop:{scheduler:null,method:"",shouldPause:false,paused:false,queue:[],pause:function () { - Browser.mainLoop.shouldPause = true; - },resume:function () { - if (Browser.mainLoop.paused) { - Browser.mainLoop.paused = false; - Browser.mainLoop.scheduler(); - } - Browser.mainLoop.shouldPause = false; - },updateStatus:function () { - if (Module['setStatus']) { - var message = Module['statusMessage'] || 'Please wait...'; - var remaining = Browser.mainLoop.remainingBlockers; - var expected = Browser.mainLoop.expectedBlockers; - if (remaining) { - if (remaining < expected) { - Module['setStatus'](message + ' (' + (expected - remaining) + '/' + expected + ')'); - } else { - Module['setStatus'](message); - } - } else { - Module['setStatus'](''); - } - } - },runIter:function (func) { - if (ABORT) return; - if (Module['preMainLoop']) { - var preRet = Module['preMainLoop'](); - if (preRet === false) { - return; // |return false| skips a frame - } - } - try { - func(); - } catch (e) { - if (e instanceof ExitStatus) { - return; - } else { - if (e && typeof e === 'object' && e.stack) Module.printErr('exception thrown: ' + [e, e.stack]); - throw e; - } - } - if (Module['postMainLoop']) Module['postMainLoop'](); - }},isFullScreen:false,pointerLock:false,moduleContextCreatedCallbacks:[],workers:[],init:function () { - if (!Module["preloadPlugins"]) Module["preloadPlugins"] = []; // needs to exist even in workers - - if (Browser.initted || ENVIRONMENT_IS_WORKER) return; // workers do not support Image and Audio elements - Browser.initted = true; - - try { - new Blob(); - Browser.hasBlobConstructor = true; - } catch(e) { - Browser.hasBlobConstructor = false; - console.log("warning: no blob constructor, cannot create blobs with mimetypes"); - } - Browser.BlobBuilder = typeof MozBlobBuilder != "undefined" ? MozBlobBuilder : (typeof WebKitBlobBuilder != "undefined" ? WebKitBlobBuilder : (!Browser.hasBlobConstructor ? console.log("warning: no BlobBuilder") : null)); - Browser.URLObject = typeof window != "undefined" ? (window.URL ? window.URL : window.webkitURL) : undefined; - if (!Module.noImageDecoding && typeof Browser.URLObject === 'undefined') { - console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."); - Module.noImageDecoding = true; - } - - // Support for plugins that can process preloaded files. You can add more of these to - // your app by creating and appending to Module.preloadPlugins. - // - // Each plugin is asked if it can handle a file based on the file's name. If it can, - // it is given the file's raw data. When it is done, it calls a callback with the file's - // (possibly modified) data. For example, a plugin might decompress a file, or it - // might create some side data structure for use later (like an Image element, etc.). - - var imagePlugin = {}; - imagePlugin['canHandle'] = function imagePlugin_canHandle(name) { - return !Module.noImageDecoding && /\.(jpg|jpeg|png|bmp)$/i.test(name); - }; - imagePlugin['handle'] = function imagePlugin_handle(byteArray, name, onload, onerror) { - var b = null; - if (Browser.hasBlobConstructor) { - try { - b = new Blob([byteArray], { type: Browser.getMimetype(name) }); - if (b.size !== byteArray.length) { // Safari bug #118630 - // Safari's Blob can only take an ArrayBuffer - b = new Blob([(new Uint8Array(byteArray)).buffer], { type: Browser.getMimetype(name) }); - } - } catch(e) { - Runtime.warnOnce('Blob constructor present but fails: ' + e + '; falling back to blob builder'); - } - } - if (!b) { - var bb = new Browser.BlobBuilder(); - bb.append((new Uint8Array(byteArray)).buffer); // we need to pass a buffer, and must copy the array to get the right data range - b = bb.getBlob(); - } - var url = Browser.URLObject.createObjectURL(b); - var img = new Image(); - img.onload = function img_onload() { - assert(img.complete, 'Image ' + name + ' could not be decoded'); - var canvas = document.createElement('canvas'); - canvas.width = img.width; - canvas.height = img.height; - var ctx = canvas.getContext('2d'); - ctx.drawImage(img, 0, 0); - Module["preloadedImages"][name] = canvas; - Browser.URLObject.revokeObjectURL(url); - if (onload) onload(byteArray); - }; - img.onerror = function img_onerror(event) { - console.log('Image ' + url + ' could not be decoded'); - if (onerror) onerror(); - }; - img.src = url; - }; - Module['preloadPlugins'].push(imagePlugin); - - var audioPlugin = {}; - audioPlugin['canHandle'] = function audioPlugin_canHandle(name) { - return !Module.noAudioDecoding && name.substr(-4) in { '.ogg': 1, '.wav': 1, '.mp3': 1 }; - }; - audioPlugin['handle'] = function audioPlugin_handle(byteArray, name, onload, onerror) { - var done = false; - function finish(audio) { - if (done) return; - done = true; - Module["preloadedAudios"][name] = audio; - if (onload) onload(byteArray); - } - function fail() { - if (done) return; - done = true; - Module["preloadedAudios"][name] = new Audio(); // empty shim - if (onerror) onerror(); - } - if (Browser.hasBlobConstructor) { - try { - var b = new Blob([byteArray], { type: Browser.getMimetype(name) }); - } catch(e) { - return fail(); - } - var url = Browser.URLObject.createObjectURL(b); // XXX we never revoke this! - var audio = new Audio(); - audio.addEventListener('canplaythrough', function() { finish(audio) }, false); // use addEventListener due to chromium bug 124926 - audio.onerror = function audio_onerror(event) { - if (done) return; - console.log('warning: browser could not fully decode audio ' + name + ', trying slower base64 approach'); - function encode64(data) { - var BASE = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; - var PAD = '='; - var ret = ''; - var leftchar = 0; - var leftbits = 0; - for (var i = 0; i < data.length; i++) { - leftchar = (leftchar << 8) | data[i]; - leftbits += 8; - while (leftbits >= 6) { - var curr = (leftchar >> (leftbits-6)) & 0x3f; - leftbits -= 6; - ret += BASE[curr]; - } - } - if (leftbits == 2) { - ret += BASE[(leftchar&3) << 4]; - ret += PAD + PAD; - } else if (leftbits == 4) { - ret += BASE[(leftchar&0xf) << 2]; - ret += PAD; - } - return ret; - } - audio.src = 'data:audio/x-' + name.substr(-3) + ';base64,' + encode64(byteArray); - finish(audio); // we don't wait for confirmation this worked - but it's worth trying - }; - audio.src = url; - // workaround for chrome bug 124926 - we do not always get oncanplaythrough or onerror - Browser.safeSetTimeout(function() { - finish(audio); // try to use it even though it is not necessarily ready to play - }, 10000); - } else { - return fail(); - } - }; - Module['preloadPlugins'].push(audioPlugin); - - // Canvas event setup - - var canvas = Module['canvas']; - function pointerLockChange() { - Browser.pointerLock = document['pointerLockElement'] === canvas || - document['mozPointerLockElement'] === canvas || - document['webkitPointerLockElement'] === canvas || - document['msPointerLockElement'] === canvas; - } - if (canvas) { - // forced aspect ratio can be enabled by defining 'forcedAspectRatio' on Module - // Module['forcedAspectRatio'] = 4 / 3; - - canvas.requestPointerLock = canvas['requestPointerLock'] || - canvas['mozRequestPointerLock'] || - canvas['webkitRequestPointerLock'] || - canvas['msRequestPointerLock'] || - function(){}; - canvas.exitPointerLock = document['exitPointerLock'] || - document['mozExitPointerLock'] || - document['webkitExitPointerLock'] || - document['msExitPointerLock'] || - function(){}; // no-op if function does not exist - canvas.exitPointerLock = canvas.exitPointerLock.bind(document); - - - document.addEventListener('pointerlockchange', pointerLockChange, false); - document.addEventListener('mozpointerlockchange', pointerLockChange, false); - document.addEventListener('webkitpointerlockchange', pointerLockChange, false); - document.addEventListener('mspointerlockchange', pointerLockChange, false); - - if (Module['elementPointerLock']) { - canvas.addEventListener("click", function(ev) { - if (!Browser.pointerLock && canvas.requestPointerLock) { - canvas.requestPointerLock(); - ev.preventDefault(); - } - }, false); - } - } - },createContext:function (canvas, useWebGL, setInModule, webGLContextAttributes) { - if (useWebGL && Module.ctx) return Module.ctx; // no need to recreate singleton GL context - - var ctx; - var errorInfo = '?'; - function onContextCreationError(event) { - errorInfo = event.statusMessage || errorInfo; - } - try { - if (useWebGL) { - var contextAttributes = { - antialias: false, - alpha: false - }; - - if (webGLContextAttributes) { - for (var attribute in webGLContextAttributes) { - contextAttributes[attribute] = webGLContextAttributes[attribute]; - } - } - - - canvas.addEventListener('webglcontextcreationerror', onContextCreationError, false); - try { - ['experimental-webgl', 'webgl'].some(function(webglId) { - return ctx = canvas.getContext(webglId, contextAttributes); - }); - } finally { - canvas.removeEventListener('webglcontextcreationerror', onContextCreationError, false); - } - } else { - ctx = canvas.getContext('2d'); - } - if (!ctx) throw ':('; - } catch (e) { - Module.print('Could not create canvas: ' + [errorInfo, e]); - return null; - } - if (useWebGL) { - // possible GL_DEBUG entry point: ctx = wrapDebugGL(ctx); - - // Set the background of the WebGL canvas to black - canvas.style.backgroundColor = "black"; - } - if (setInModule) { - if (!useWebGL) assert(typeof GLctx === 'undefined', 'cannot set in module if GLctx is used, but we are a non-GL context that would replace it'); - Module.ctx = ctx; - if (useWebGL) GLctx = ctx; - Module.useWebGL = useWebGL; - Browser.moduleContextCreatedCallbacks.forEach(function(callback) { callback() }); - Browser.init(); - } - return ctx; - },destroyContext:function (canvas, useWebGL, setInModule) {},fullScreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullScreen:function (lockPointer, resizeCanvas) { - Browser.lockPointer = lockPointer; - Browser.resizeCanvas = resizeCanvas; - if (typeof Browser.lockPointer === 'undefined') Browser.lockPointer = true; - if (typeof Browser.resizeCanvas === 'undefined') Browser.resizeCanvas = false; - - var canvas = Module['canvas']; - function fullScreenChange() { - Browser.isFullScreen = false; - var canvasContainer = canvas.parentNode; - if ((document['webkitFullScreenElement'] || document['webkitFullscreenElement'] || - document['mozFullScreenElement'] || document['mozFullscreenElement'] || - document['fullScreenElement'] || document['fullscreenElement'] || - document['msFullScreenElement'] || document['msFullscreenElement'] || - document['webkitCurrentFullScreenElement']) === canvasContainer) { - canvas.cancelFullScreen = document['cancelFullScreen'] || - document['mozCancelFullScreen'] || - document['webkitCancelFullScreen'] || - document['msExitFullscreen'] || - document['exitFullscreen'] || - function() {}; - canvas.cancelFullScreen = canvas.cancelFullScreen.bind(document); - if (Browser.lockPointer) canvas.requestPointerLock(); - Browser.isFullScreen = true; - if (Browser.resizeCanvas) Browser.setFullScreenCanvasSize(); - } else { - - // remove the full screen specific parent of the canvas again to restore the HTML structure from before going full screen - canvasContainer.parentNode.insertBefore(canvas, canvasContainer); - canvasContainer.parentNode.removeChild(canvasContainer); - - if (Browser.resizeCanvas) Browser.setWindowedCanvasSize(); - } - if (Module['onFullScreen']) Module['onFullScreen'](Browser.isFullScreen); - Browser.updateCanvasDimensions(canvas); - } - - if (!Browser.fullScreenHandlersInstalled) { - Browser.fullScreenHandlersInstalled = true; - document.addEventListener('fullscreenchange', fullScreenChange, false); - document.addEventListener('mozfullscreenchange', fullScreenChange, false); - document.addEventListener('webkitfullscreenchange', fullScreenChange, false); - document.addEventListener('MSFullscreenChange', fullScreenChange, false); - } - - // create a new parent to ensure the canvas has no siblings. this allows browsers to optimize full screen performance when its parent is the full screen root - var canvasContainer = document.createElement("div"); - canvas.parentNode.insertBefore(canvasContainer, canvas); - canvasContainer.appendChild(canvas); - - // use parent of canvas as full screen root to allow aspect ratio correction (Firefox stretches the root to screen size) - canvasContainer.requestFullScreen = canvasContainer['requestFullScreen'] || - canvasContainer['mozRequestFullScreen'] || - canvasContainer['msRequestFullscreen'] || - (canvasContainer['webkitRequestFullScreen'] ? function() { canvasContainer['webkitRequestFullScreen'](Element['ALLOW_KEYBOARD_INPUT']) } : null); - canvasContainer.requestFullScreen(); - },nextRAF:0,fakeRequestAnimationFrame:function (func) { - // try to keep 60fps between calls to here - var now = Date.now(); - if (Browser.nextRAF === 0) { - Browser.nextRAF = now + 1000/60; - } else { - while (now + 2 >= Browser.nextRAF) { // fudge a little, to avoid timer jitter causing us to do lots of delay:0 - Browser.nextRAF += 1000/60; - } - } - var delay = Math.max(Browser.nextRAF - now, 0); - setTimeout(func, delay); - },requestAnimationFrame:function requestAnimationFrame(func) { - if (typeof window === 'undefined') { // Provide fallback to setTimeout if window is undefined (e.g. in Node.js) - Browser.fakeRequestAnimationFrame(func); - } else { - if (!window.requestAnimationFrame) { - window.requestAnimationFrame = window['requestAnimationFrame'] || - window['mozRequestAnimationFrame'] || - window['webkitRequestAnimationFrame'] || - window['msRequestAnimationFrame'] || - window['oRequestAnimationFrame'] || - Browser.fakeRequestAnimationFrame; - } - window.requestAnimationFrame(func); - } - },safeCallback:function (func) { - return function() { - if (!ABORT) return func.apply(null, arguments); - }; - },safeRequestAnimationFrame:function (func) { - return Browser.requestAnimationFrame(function() { - if (!ABORT) func(); - }); - },safeSetTimeout:function (func, timeout) { - Module['noExitRuntime'] = true; - return setTimeout(function() { - if (!ABORT) func(); - }, timeout); - },safeSetInterval:function (func, timeout) { - Module['noExitRuntime'] = true; - return setInterval(function() { - if (!ABORT) func(); - }, timeout); - },getMimetype:function (name) { - return { - 'jpg': 'image/jpeg', - 'jpeg': 'image/jpeg', - 'png': 'image/png', - 'bmp': 'image/bmp', - 'ogg': 'audio/ogg', - 'wav': 'audio/wav', - 'mp3': 'audio/mpeg' - }[name.substr(name.lastIndexOf('.')+1)]; - },getUserMedia:function (func) { - if(!window.getUserMedia) { - window.getUserMedia = navigator['getUserMedia'] || - navigator['mozGetUserMedia']; - } - window.getUserMedia(func); - },getMovementX:function (event) { - return event['movementX'] || - event['mozMovementX'] || - event['webkitMovementX'] || - 0; - },getMovementY:function (event) { - return event['movementY'] || - event['mozMovementY'] || - event['webkitMovementY'] || - 0; - },getMouseWheelDelta:function (event) { - var delta = 0; - switch (event.type) { - case 'DOMMouseScroll': - delta = event.detail; - break; - case 'mousewheel': - delta = -event.wheelDelta; - break; - case 'wheel': - delta = event.deltaY; - break; - default: - throw 'unrecognized mouse wheel event: ' + event.type; - } - return Math.max(-1, Math.min(1, delta)); - },mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function (event) { // event should be mousemove, mousedown or mouseup - if (Browser.pointerLock) { - // When the pointer is locked, calculate the coordinates - // based on the movement of the mouse. - // Workaround for Firefox bug 764498 - if (event.type != 'mousemove' && - ('mozMovementX' in event)) { - Browser.mouseMovementX = Browser.mouseMovementY = 0; - } else { - Browser.mouseMovementX = Browser.getMovementX(event); - Browser.mouseMovementY = Browser.getMovementY(event); - } - - // check if SDL is available - if (typeof SDL != "undefined") { - Browser.mouseX = SDL.mouseX + Browser.mouseMovementX; - Browser.mouseY = SDL.mouseY + Browser.mouseMovementY; - } else { - // just add the mouse delta to the current absolut mouse position - // FIXME: ideally this should be clamped against the canvas size and zero - Browser.mouseX += Browser.mouseMovementX; - Browser.mouseY += Browser.mouseMovementY; - } - } else { - // Otherwise, calculate the movement based on the changes - // in the coordinates. - var rect = Module["canvas"].getBoundingClientRect(); - var cw = Module["canvas"].width; - var ch = Module["canvas"].height; - - // Neither .scrollX or .pageXOffset are defined in a spec, but - // we prefer .scrollX because it is currently in a spec draft. - // (see: http://www.w3.org/TR/2013/WD-cssom-view-20131217/) - var scrollX = ((typeof window.scrollX !== 'undefined') ? window.scrollX : window.pageXOffset); - var scrollY = ((typeof window.scrollY !== 'undefined') ? window.scrollY : window.pageYOffset); - - if (event.type === 'touchstart' || event.type === 'touchend' || event.type === 'touchmove') { - var touch = event.touch; - if (touch === undefined) { - return; // the "touch" property is only defined in SDL - - } - var adjustedX = touch.pageX - (scrollX + rect.left); - var adjustedY = touch.pageY - (scrollY + rect.top); - - adjustedX = adjustedX * (cw / rect.width); - adjustedY = adjustedY * (ch / rect.height); - - var coords = { x: adjustedX, y: adjustedY }; - - if (event.type === 'touchstart') { - Browser.lastTouches[touch.identifier] = coords; - Browser.touches[touch.identifier] = coords; - } else if (event.type === 'touchend' || event.type === 'touchmove') { - Browser.lastTouches[touch.identifier] = Browser.touches[touch.identifier]; - Browser.touches[touch.identifier] = { x: adjustedX, y: adjustedY }; - } - return; - } - - var x = event.pageX - (scrollX + rect.left); - var y = event.pageY - (scrollY + rect.top); - - // the canvas might be CSS-scaled compared to its backbuffer; - // SDL-using content will want mouse coordinates in terms - // of backbuffer units. - x = x * (cw / rect.width); - y = y * (ch / rect.height); - - Browser.mouseMovementX = x - Browser.mouseX; - Browser.mouseMovementY = y - Browser.mouseY; - Browser.mouseX = x; - Browser.mouseY = y; - } - },xhrLoad:function (url, onload, onerror) { - var xhr = new XMLHttpRequest(); - xhr.open('GET', url, true); - xhr.responseType = 'arraybuffer'; - xhr.onload = function xhr_onload() { - if (xhr.status == 200 || (xhr.status == 0 && xhr.response)) { // file URLs can return 0 - onload(xhr.response); - } else { - onerror(); - } - }; - xhr.onerror = onerror; - xhr.send(null); - },asyncLoad:function (url, onload, onerror, noRunDep) { - Browser.xhrLoad(url, function(arrayBuffer) { - assert(arrayBuffer, 'Loading data file "' + url + '" failed (no arrayBuffer).'); - onload(new Uint8Array(arrayBuffer)); - if (!noRunDep) removeRunDependency('al ' + url); - }, function(event) { - if (onerror) { - onerror(); - } else { - throw 'Loading data file "' + url + '" failed.'; - } - }); - if (!noRunDep) addRunDependency('al ' + url); - },resizeListeners:[],updateResizeListeners:function () { - var canvas = Module['canvas']; - Browser.resizeListeners.forEach(function(listener) { - listener(canvas.width, canvas.height); - }); - },setCanvasSize:function (width, height, noUpdates) { - var canvas = Module['canvas']; - Browser.updateCanvasDimensions(canvas, width, height); - if (!noUpdates) Browser.updateResizeListeners(); - },windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:function () { - // check if SDL is available - if (typeof SDL != "undefined") { - var flags = HEAPU32[((SDL.screen+Runtime.QUANTUM_SIZE*0)>>2)]; - flags = flags | 0x00800000; // set SDL_FULLSCREEN flag - HEAP32[((SDL.screen+Runtime.QUANTUM_SIZE*0)>>2)]=flags - } - Browser.updateResizeListeners(); - },setWindowedCanvasSize:function () { - // check if SDL is available - if (typeof SDL != "undefined") { - var flags = HEAPU32[((SDL.screen+Runtime.QUANTUM_SIZE*0)>>2)]; - flags = flags & ~0x00800000; // clear SDL_FULLSCREEN flag - HEAP32[((SDL.screen+Runtime.QUANTUM_SIZE*0)>>2)]=flags - } - Browser.updateResizeListeners(); - },updateCanvasDimensions:function (canvas, wNative, hNative) { - if (wNative && hNative) { - canvas.widthNative = wNative; - canvas.heightNative = hNative; - } else { - wNative = canvas.widthNative; - hNative = canvas.heightNative; - } - var w = wNative; - var h = hNative; - if (Module['forcedAspectRatio'] && Module['forcedAspectRatio'] > 0) { - if (w/h < Module['forcedAspectRatio']) { - w = Math.round(h * Module['forcedAspectRatio']); - } else { - h = Math.round(w / Module['forcedAspectRatio']); - } - } - if (((document['webkitFullScreenElement'] || document['webkitFullscreenElement'] || - document['mozFullScreenElement'] || document['mozFullscreenElement'] || - document['fullScreenElement'] || document['fullscreenElement'] || - document['msFullScreenElement'] || document['msFullscreenElement'] || - document['webkitCurrentFullScreenElement']) === canvas.parentNode) && (typeof screen != 'undefined')) { - var factor = Math.min(screen.width / w, screen.height / h); - w = Math.round(w * factor); - h = Math.round(h * factor); - } - if (Browser.resizeCanvas) { - if (canvas.width != w) canvas.width = w; - if (canvas.height != h) canvas.height = h; - if (typeof canvas.style != 'undefined') { - canvas.style.removeProperty( "width"); - canvas.style.removeProperty("height"); - } - } else { - if (canvas.width != wNative) canvas.width = wNative; - if (canvas.height != hNative) canvas.height = hNative; - if (typeof canvas.style != 'undefined') { - if (w != wNative || h != hNative) { - canvas.style.setProperty( "width", w + "px", "important"); - canvas.style.setProperty("height", h + "px", "important"); - } else { - canvas.style.removeProperty( "width"); - canvas.style.removeProperty("height"); - } - } - } - }}; - - function _rmdir(path) { - // int rmdir(const char *path); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/rmdir.html - path = Pointer_stringify(path); - try { - FS.rmdir(path); - return 0; - } catch (e) { - FS.handleFSError(e); - return -1; - } - } - - function _munmap(start, num) { - if (!_mmap.mappings) _mmap.mappings = {}; - // TODO: support unmmap'ing parts of allocations - var info = _mmap.mappings[start]; - if (!info) return 0; - if (num == info.num) { - _mmap.mappings[start] = null; - if (info.allocated) { - _free(info.malloc); - } - } - return 0; - } - - function _fstat(fildes, buf) { - // int fstat(int fildes, struct stat *buf); - // http://pubs.opengroup.org/onlinepubs/7908799/xsh/fstat.html - var stream = FS.getStream(fildes); - if (!stream) { - ___setErrNo(ERRNO_CODES.EBADF); - return -1; - } - return _stat(stream.path, buf); - } - - - function _malloc(bytes) { - /* Over-allocate to make sure it is byte-aligned by 8. - * This will leak memory, but this is only the dummy - * implementation (replaced by dlmalloc normally) so - * not an issue. - */ - var ptr = Runtime.dynamicAlloc(bytes + 8); - return (ptr+8) & 0xFFFFFFF8; - } - Module["_malloc"] = _malloc; - - var ___tm_current=allocate(44, "i8", ALLOC_STATIC); - - - var ___tm_timezone=allocate(intArrayFromString("GMT"), "i8", ALLOC_STATIC); - - - var _tzname=allocate(8, "i32*", ALLOC_STATIC); - - var _daylight=allocate(1, "i32*", ALLOC_STATIC); - - var _timezone=allocate(1, "i32*", ALLOC_STATIC);function _tzset() { - // TODO: Use (malleable) environment variables instead of system settings. - if (_tzset.called) return; - _tzset.called = true; - - HEAP32[((_timezone)>>2)]=-(new Date()).getTimezoneOffset() * 60; - - var winter = new Date(2000, 0, 1); - var summer = new Date(2000, 6, 1); - HEAP32[((_daylight)>>2)]=Number(winter.getTimezoneOffset() != summer.getTimezoneOffset()); - - var winterName = 'GMT'; // XXX do not rely on browser timezone info, it is very unpredictable | winter.toString().match(/\(([A-Z]+)\)/)[1]; - var summerName = 'GMT'; // XXX do not rely on browser timezone info, it is very unpredictable | summer.toString().match(/\(([A-Z]+)\)/)[1]; - var winterNamePtr = allocate(intArrayFromString(winterName), 'i8', ALLOC_NORMAL); - var summerNamePtr = allocate(intArrayFromString(summerName), 'i8', ALLOC_NORMAL); - HEAP32[((_tzname)>>2)]=winterNamePtr; - HEAP32[(((_tzname)+(4))>>2)]=summerNamePtr; - }function _localtime_r(time, tmPtr) { - _tzset(); - var date = new Date(HEAP32[((time)>>2)]*1000); - HEAP32[((tmPtr)>>2)]=date.getSeconds(); - HEAP32[(((tmPtr)+(4))>>2)]=date.getMinutes(); - HEAP32[(((tmPtr)+(8))>>2)]=date.getHours(); - HEAP32[(((tmPtr)+(12))>>2)]=date.getDate(); - HEAP32[(((tmPtr)+(16))>>2)]=date.getMonth(); - HEAP32[(((tmPtr)+(20))>>2)]=date.getFullYear()-1900; - HEAP32[(((tmPtr)+(24))>>2)]=date.getDay(); - - var start = new Date(date.getFullYear(), 0, 1); - var yday = Math.floor((date.getTime() - start.getTime()) / (1000 * 60 * 60 * 24)); - HEAP32[(((tmPtr)+(28))>>2)]=yday; - HEAP32[(((tmPtr)+(36))>>2)]=start.getTimezoneOffset() * 60; - - var dst = Number(start.getTimezoneOffset() != date.getTimezoneOffset()); - HEAP32[(((tmPtr)+(32))>>2)]=dst; - - HEAP32[(((tmPtr)+(40))>>2)]=___tm_timezone; - - return tmPtr; - }function _localtime(time) { - return _localtime_r(time, ___tm_current); - } - - function _fcntl(fildes, cmd, varargs, dup2) { - // int fcntl(int fildes, int cmd, ...); - // http://pubs.opengroup.org/onlinepubs/009695399/functions/fcntl.html - var stream = FS.getStream(fildes); - if (!stream) { - ___setErrNo(ERRNO_CODES.EBADF); - return -1; - } - switch (cmd) { - case 0: - var arg = HEAP32[((varargs)>>2)]; - if (arg < 0) { - ___setErrNo(ERRNO_CODES.EINVAL); - return -1; - } - var newStream; - try { - newStream = FS.open(stream.path, stream.flags, 0, arg); - } catch (e) { - FS.handleFSError(e); - return -1; - } - return newStream.fd; - case 1: - case 2: - return 0; // FD_CLOEXEC makes no sense for a single process. - case 3: - return stream.flags; - case 4: - var arg = HEAP32[((varargs)>>2)]; - stream.flags |= arg; - return 0; - case 12: - case 12: - var arg = HEAP32[((varargs)>>2)]; - var offset = 0; - // We're always unlocked. - HEAP16[(((arg)+(offset))>>1)]=2; - return 0; - case 13: - case 14: - case 13: - case 14: - // Pretend that the locking is successful. - return 0; - case 8: - case 9: - // These are for sockets. We don't have them fully implemented yet. - ___setErrNo(ERRNO_CODES.EINVAL); - return -1; - default: - ___setErrNo(ERRNO_CODES.EINVAL); - return -1; - } - // Should never be reached. Only to silence strict warnings. - return -1; - } - - - Module["_bitshift64Lshr"] = _bitshift64Lshr; - - - function _recv(fd, buf, len, flags) { - var sock = SOCKFS.getSocket(fd); - if (!sock) { - ___setErrNo(ERRNO_CODES.EBADF); - return -1; - } - // TODO honor flags - return _read(fd, buf, len); - } - - function _pread(fildes, buf, nbyte, offset) { - // ssize_t pread(int fildes, void *buf, size_t nbyte, off_t offset); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/read.html - var stream = FS.getStream(fildes); - if (!stream) { - ___setErrNo(ERRNO_CODES.EBADF); - return -1; - } - try { - var slab = HEAP8; - return FS.read(stream, slab, buf, nbyte, offset); - } catch (e) { - FS.handleFSError(e); - return -1; - } - }function _read(fildes, buf, nbyte) { - // ssize_t read(int fildes, void *buf, size_t nbyte); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/read.html - var stream = FS.getStream(fildes); - if (!stream) { - ___setErrNo(ERRNO_CODES.EBADF); - return -1; - } - - - try { - var slab = HEAP8; - return FS.read(stream, slab, buf, nbyte); - } catch (e) { - FS.handleFSError(e); - return -1; - } - } - - function _time(ptr) { - var ret = Math.floor(Date.now()/1000); - if (ptr) { - HEAP32[((ptr)>>2)]=ret; - } - return ret; - } - - function _getcwd(buf, size) { - // char *getcwd(char *buf, size_t size); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/getcwd.html - if (size == 0) { - ___setErrNo(ERRNO_CODES.EINVAL); - return 0; - } - var cwd = FS.cwd(); - if (size < cwd.length + 1) { - ___setErrNo(ERRNO_CODES.ERANGE); - return 0; - } else { - writeAsciiToMemory(cwd, buf); - return buf; - } - } - - function _getpid() { - return _getgid.apply(null, arguments) - } - - - - - - var _environ=allocate(1, "i32*", ALLOC_STATIC);var ___environ=_environ;function ___buildEnvironment(env) { - // WARNING: Arbitrary limit! - var MAX_ENV_VALUES = 64; - var TOTAL_ENV_SIZE = 1024; - - // Statically allocate memory for the environment. - var poolPtr; - var envPtr; - if (!___buildEnvironment.called) { - ___buildEnvironment.called = true; - // Set default values. Use string keys for Closure Compiler compatibility. - ENV['USER'] = 'root'; - ENV['PATH'] = '/'; - ENV['PWD'] = '/'; - ENV['HOME'] = '/home/emscripten'; - ENV['LANG'] = 'en_US.UTF-8'; - ENV['_'] = './this.program'; - // Allocate memory. - poolPtr = allocate(TOTAL_ENV_SIZE, 'i8', ALLOC_STATIC); - envPtr = allocate(MAX_ENV_VALUES * 4, - 'i8*', ALLOC_STATIC); - HEAP32[((envPtr)>>2)]=poolPtr; - HEAP32[((_environ)>>2)]=envPtr; - } else { - envPtr = HEAP32[((_environ)>>2)]; - poolPtr = HEAP32[((envPtr)>>2)]; - } - - // Collect key=value lines. - var strings = []; - var totalSize = 0; - for (var key in env) { - if (typeof env[key] === 'string') { - var line = key + '=' + env[key]; - strings.push(line); - totalSize += line.length; - } - } - if (totalSize > TOTAL_ENV_SIZE) { - throw new Error('Environment size exceeded TOTAL_ENV_SIZE!'); - } - - // Make new. - var ptrSize = 4; - for (var i = 0; i < strings.length; i++) { - var line = strings[i]; - writeAsciiToMemory(line, poolPtr); - HEAP32[(((envPtr)+(i * ptrSize))>>2)]=poolPtr; - poolPtr += line.length + 1; - } - HEAP32[(((envPtr)+(strings.length * ptrSize))>>2)]=0; - }var ENV={};function _getenv(name) { - // char *getenv(const char *name); - // http://pubs.opengroup.org/onlinepubs/009695399/functions/getenv.html - if (name === 0) return 0; - name = Pointer_stringify(name); - if (!ENV.hasOwnProperty(name)) return 0; - - if (_getenv.ret) _free(_getenv.ret); - _getenv.ret = allocate(intArrayFromString(ENV[name]), 'i8', ALLOC_NORMAL); - return _getenv.ret; - } - - function _gettimeofday(ptr) { - var now = Date.now(); - HEAP32[((ptr)>>2)]=Math.floor(now/1000); // seconds - HEAP32[(((ptr)+(4))>>2)]=Math.floor((now-1000*Math.floor(now/1000))*1000); // microseconds - return 0; - } - - - function _chown(path, owner, group, dontResolveLastLink) { - // int chown(const char *path, uid_t owner, gid_t group); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/chown.html - // We don't support multiple users, so changing ownership makes no sense. - // NOTE: The path argument may be a string, to simplify fchown(). - // NOTE: dontResolveLastLink is a shortcut for lchown(). It should never be - // used in client code. - if (typeof path !== 'string') path = Pointer_stringify(path); - try { - FS.chown(path, owner, group); - return 0; - } catch (e) { - FS.handleFSError(e); - return -1; - } - }function _fchown(fildes, owner, group) { - // int fchown(int fildes, uid_t owner, gid_t group); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/fchown.html - try { - FS.fchown(fildes, owner, group); - return 0; - } catch (e) { - FS.handleFSError(e); - return -1; - } - } - - - function _emscripten_memcpy_big(dest, src, num) { - HEAPU8.set(HEAPU8.subarray(src, src+num), dest); - return dest; - } - Module["_memcpy"] = _memcpy; - - function _fsync(fildes) { - // int fsync(int fildes); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/fsync.html - var stream = FS.getStream(fildes); - if (stream) { - // We write directly to the file system, so there's nothing to do here. - return 0; - } else { - ___setErrNo(ERRNO_CODES.EBADF); - return -1; - } - } - - function _sbrk(bytes) { - // Implement a Linux-like 'memory area' for our 'process'. - // Changes the size of the memory area by |bytes|; returns the - // address of the previous top ('break') of the memory area - // We control the "dynamic" memory - DYNAMIC_BASE to DYNAMICTOP - var self = _sbrk; - if (!self.called) { - DYNAMICTOP = alignMemoryPage(DYNAMICTOP); // make sure we start out aligned - self.called = true; - assert(Runtime.dynamicAlloc); - self.alloc = Runtime.dynamicAlloc; - Runtime.dynamicAlloc = function() { abort('cannot dynamically allocate, sbrk now has control') }; - } - var ret = DYNAMICTOP; - if (bytes != 0) self.alloc(bytes); - return ret; // Previous break location. - } - - - Module["_memmove"] = _memmove; - - function ___errno_location() { - return ___errno_state; - } - - - function _strerror_r(errnum, strerrbuf, buflen) { - if (errnum in ERRNO_MESSAGES) { - if (ERRNO_MESSAGES[errnum].length > buflen - 1) { - return ___setErrNo(ERRNO_CODES.ERANGE); - } else { - var msg = ERRNO_MESSAGES[errnum]; - writeAsciiToMemory(msg, strerrbuf); - return 0; - } - } else { - return ___setErrNo(ERRNO_CODES.EINVAL); - } - }function _strerror(errnum) { - if (!_strerror.buffer) _strerror.buffer = _malloc(256); - _strerror_r(errnum, _strerror.buffer, 256); - return _strerror.buffer; - } - - function _mmap(start, num, prot, flags, fd, offset) { - /* FIXME: Since mmap is normally implemented at the kernel level, - * this implementation simply uses malloc underneath the call to - * mmap. - */ - var MAP_PRIVATE = 2; - var ptr; - var allocated = false; - - if (!_mmap.mappings) _mmap.mappings = {}; - - if (fd == -1) { - ptr = _malloc(num); - if (!ptr) return -1; - _memset(ptr, 0, num); - allocated = true; - } else { - var info = FS.getStream(fd); - if (!info) return -1; - try { - var res = FS.mmap(info, HEAPU8, start, num, offset, prot, flags); - ptr = res.ptr; - allocated = res.allocated; - } catch (e) { - FS.handleFSError(e); - return -1; - } - } - - _mmap.mappings[ptr] = { malloc: ptr, num: num, allocated: allocated }; - return ptr; - } - - - function _truncate(path, length) { - // int truncate(const char *path, off_t length); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/truncate.html - // NOTE: The path argument may be a string, to simplify ftruncate(). - if (typeof path !== 'string') path = Pointer_stringify(path); - try { - FS.truncate(path, length); - return 0; - } catch (e) { - FS.handleFSError(e); - return -1; - } - }function _ftruncate(fildes, length) { - // int ftruncate(int fildes, off_t length); - // http://pubs.opengroup.org/onlinepubs/000095399/functions/ftruncate.html - try { - FS.ftruncate(fildes, length); - return 0; - } catch (e) { - FS.handleFSError(e); - return -1; - } - } - - function _utimes() { throw 'utimes not implemented' } -FS.staticInit();__ATINIT__.unshift({ func: function() { if (!Module["noFSInit"] && !FS.init.initialized) FS.init() } });__ATMAIN__.push({ func: function() { FS.ignorePermissions = false } });__ATEXIT__.push({ func: function() { FS.quit() } });Module["FS_createFolder"] = FS.createFolder;Module["FS_createPath"] = FS.createPath;Module["FS_createDataFile"] = FS.createDataFile;Module["FS_createPreloadedFile"] = FS.createPreloadedFile;Module["FS_createLazyFile"] = FS.createLazyFile;Module["FS_createLink"] = FS.createLink;Module["FS_createDevice"] = FS.createDevice; -___errno_state = Runtime.staticAlloc(4); HEAP32[((___errno_state)>>2)]=0; -__ATINIT__.unshift({ func: function() { TTY.init() } });__ATEXIT__.push({ func: function() { TTY.shutdown() } });TTY.utf8 = new Runtime.UTF8Processor(); -if (ENVIRONMENT_IS_NODE) { var fs = require("fs"); NODEFS.staticInit(); } -__ATINIT__.push({ func: function() { SOCKFS.root = FS.mount(SOCKFS, {}, null); } }); -Module["requestFullScreen"] = function Module_requestFullScreen(lockPointer, resizeCanvas) { Browser.requestFullScreen(lockPointer, resizeCanvas) }; - Module["requestAnimationFrame"] = function Module_requestAnimationFrame(func) { Browser.requestAnimationFrame(func) }; - Module["setCanvasSize"] = function Module_setCanvasSize(width, height, noUpdates) { Browser.setCanvasSize(width, height, noUpdates) }; - Module["pauseMainLoop"] = function Module_pauseMainLoop() { Browser.mainLoop.pause() }; - Module["resumeMainLoop"] = function Module_resumeMainLoop() { Browser.mainLoop.resume() }; - Module["getUserMedia"] = function Module_getUserMedia() { Browser.getUserMedia() } -___buildEnvironment(ENV); -STACK_BASE = STACKTOP = Runtime.alignMemory(STATICTOP); - -staticSealed = true; // seal the static portion of memory - -STACK_MAX = STACK_BASE + 5242880; - -DYNAMIC_BASE = DYNAMICTOP = Runtime.alignMemory(STACK_MAX); - -assert(DYNAMIC_BASE < TOTAL_MEMORY, "TOTAL_MEMORY not big enough for stack"); - - var ctlz_i8 = allocate([8,7,6,6,5,5,5,5,4,4,4,4,4,4,4,4,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_DYNAMIC); - var cttz_i8 = allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0], "i8", ALLOC_DYNAMIC); - - var Math_min = Math.min; -function invoke_iiii(index,a1,a2,a3) { - try { - return Module["dynCall_iiii"](index,a1,a2,a3); - } catch(e) { - if (typeof e !== 'number' && e !== 'longjmp') throw e; - asm["setThrew"](1, 0); - } -} - -function invoke_i(index) { - try { - return Module["dynCall_i"](index); - } catch(e) { - if (typeof e !== 'number' && e !== 'longjmp') throw e; - asm["setThrew"](1, 0); - } -} - -function invoke_vi(index,a1) { - try { - Module["dynCall_vi"](index,a1); - } catch(e) { - if (typeof e !== 'number' && e !== 'longjmp') throw e; - asm["setThrew"](1, 0); - } -} - -function invoke_vii(index,a1,a2) { - try { - Module["dynCall_vii"](index,a1,a2); - } catch(e) { - if (typeof e !== 'number' && e !== 'longjmp') throw e; - asm["setThrew"](1, 0); - } -} - -function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6) { - try { - return Module["dynCall_iiiiiii"](index,a1,a2,a3,a4,a5,a6); - } catch(e) { - if (typeof e !== 'number' && e !== 'longjmp') throw e; - asm["setThrew"](1, 0); - } -} - -function invoke_ii(index,a1) { - try { - return Module["dynCall_ii"](index,a1); - } catch(e) { - if (typeof e !== 'number' && e !== 'longjmp') throw e; - asm["setThrew"](1, 0); - } -} - -function invoke_viii(index,a1,a2,a3) { - try { - Module["dynCall_viii"](index,a1,a2,a3); - } catch(e) { - if (typeof e !== 'number' && e !== 'longjmp') throw e; - asm["setThrew"](1, 0); - } -} - -function invoke_v(index) { - try { - Module["dynCall_v"](index); - } catch(e) { - if (typeof e !== 'number' && e !== 'longjmp') throw e; - asm["setThrew"](1, 0); - } -} - -function invoke_iiiii(index,a1,a2,a3,a4) { - try { - return Module["dynCall_iiiii"](index,a1,a2,a3,a4); - } catch(e) { - if (typeof e !== 'number' && e !== 'longjmp') throw e; - asm["setThrew"](1, 0); - } -} - -function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6) { - try { - Module["dynCall_viiiiii"](index,a1,a2,a3,a4,a5,a6); - } catch(e) { - if (typeof e !== 'number' && e !== 'longjmp') throw e; - asm["setThrew"](1, 0); - } -} - -function invoke_iii(index,a1,a2) { - try { - return Module["dynCall_iii"](index,a1,a2); - } catch(e) { - if (typeof e !== 'number' && e !== 'longjmp') throw e; - asm["setThrew"](1, 0); - } -} - -function invoke_iiiiii(index,a1,a2,a3,a4,a5) { - try { - return Module["dynCall_iiiiii"](index,a1,a2,a3,a4,a5); - } catch(e) { - if (typeof e !== 'number' && e !== 'longjmp') throw e; - asm["setThrew"](1, 0); - } -} - -function invoke_viiii(index,a1,a2,a3,a4) { - try { - Module["dynCall_viiii"](index,a1,a2,a3,a4); - } catch(e) { - if (typeof e !== 'number' && e !== 'longjmp') throw e; - asm["setThrew"](1, 0); - } -} - - function asmPrintInt(x, y) { - Module.print('int ' + x + ',' + y);// + ' ' + new Error().stack); - } - function asmPrintFloat(x, y) { - Module.print('float ' + x + ',' + y);// + ' ' + new Error().stack); - } - // EMSCRIPTEN_START_ASM - var asm = (function(global, env, buffer) { - 'use asm'; - var HEAP8 = new global.Int8Array(buffer); - var HEAP16 = new global.Int16Array(buffer); - var HEAP32 = new global.Int32Array(buffer); - var HEAPU8 = new global.Uint8Array(buffer); - var HEAPU16 = new global.Uint16Array(buffer); - var HEAPU32 = new global.Uint32Array(buffer); - var HEAPF32 = new global.Float32Array(buffer); - var HEAPF64 = new global.Float64Array(buffer); - - var STACKTOP=env.STACKTOP|0; - var STACK_MAX=env.STACK_MAX|0; - var tempDoublePtr=env.tempDoublePtr|0; - var ABORT=env.ABORT|0; - var cttz_i8=env.cttz_i8|0; - var ctlz_i8=env.ctlz_i8|0; - - var __THREW__ = 0; - var threwValue = 0; - var setjmpId = 0; - var undef = 0; - var nan = +env.NaN, inf = +env.Infinity; - var tempInt = 0, tempBigInt = 0, tempBigIntP = 0, tempBigIntS = 0, tempBigIntR = 0.0, tempBigIntI = 0, tempBigIntD = 0, tempValue = 0, tempDouble = 0.0; - - var tempRet0 = 0; - var tempRet1 = 0; - var tempRet2 = 0; - var tempRet3 = 0; - var tempRet4 = 0; - var tempRet5 = 0; - var tempRet6 = 0; - var tempRet7 = 0; - var tempRet8 = 0; - var tempRet9 = 0; - var Math_floor=global.Math.floor; - var Math_abs=global.Math.abs; - var Math_sqrt=global.Math.sqrt; - var Math_pow=global.Math.pow; - var Math_cos=global.Math.cos; - var Math_sin=global.Math.sin; - var Math_tan=global.Math.tan; - var Math_acos=global.Math.acos; - var Math_asin=global.Math.asin; - var Math_atan=global.Math.atan; - var Math_atan2=global.Math.atan2; - var Math_exp=global.Math.exp; - var Math_log=global.Math.log; - var Math_ceil=global.Math.ceil; - var Math_imul=global.Math.imul; - var abort=env.abort; - var assert=env.assert; - var asmPrintInt=env.asmPrintInt; - var asmPrintFloat=env.asmPrintFloat; - var Math_min=env.min; - var invoke_iiii=env.invoke_iiii; - var invoke_i=env.invoke_i; - var invoke_vi=env.invoke_vi; - var invoke_vii=env.invoke_vii; - var invoke_iiiiiii=env.invoke_iiiiiii; - var invoke_ii=env.invoke_ii; - var invoke_viii=env.invoke_viii; - var invoke_v=env.invoke_v; - var invoke_iiiii=env.invoke_iiiii; - var invoke_viiiiii=env.invoke_viiiiii; - var invoke_iii=env.invoke_iii; - var invoke_iiiiii=env.invoke_iiiiii; - var invoke_viiii=env.invoke_viiii; - var _getgid=env._getgid; - var _sleep=env._sleep; - var _send=env._send; - var _getcwd=env._getcwd; - var _chown=env._chown; - var _lseek=env._lseek; - var ___setErrNo=env.___setErrNo; - var _access=env._access; - var _fstat=env._fstat; - var _chmod=env._chmod; - var _rmdir=env._rmdir; - var _truncate=env._truncate; - var _usleep=env._usleep; - var _utimes=env._utimes; - var ___buildEnvironment=env.___buildEnvironment; - var _fflush=env._fflush; - var _pwrite=env._pwrite; - var _strerror_r=env._strerror_r; - var _localtime_r=env._localtime_r; - var _tzset=env._tzset; - var _open=env._open; - var _getpid=env._getpid; - var _sbrk=env._sbrk; - var _fcntl=env._fcntl; - var _emscripten_memcpy_big=env._emscripten_memcpy_big; - var _unlink=env._unlink; - var _sysconf=env._sysconf; - var _fchmod=env._fchmod; - var _close=env._close; - var _ftruncate=env._ftruncate; - var _gettimeofday=env._gettimeofday; - var _munmap=env._munmap; - var _pread=env._pread; - var _getenv=env._getenv; - var _write=env._write; - var _fsync=env._fsync; - var ___errno_location=env.___errno_location; - var _stat=env._stat; - var _recv=env._recv; - var _geteuid=env._geteuid; - var _fchown=env._fchown; - var _read=env._read; - var _abort=env._abort; - var _time=env._time; - var _mkport=env._mkport; - var _strerror=env._strerror; - var _mknod=env._mknod; - var _mkdir=env._mkdir; - var _mmap=env._mmap; - var _localtime=env._localtime; - var tempFloat = 0.0; - - // EMSCRIPTEN_START_FUNCS - function stackAlloc(size) { - size = size|0; - var ret = 0; - ret = STACKTOP; - STACKTOP = (STACKTOP + size)|0; - STACKTOP = (STACKTOP + 7)&-8; - return ret|0; - } - function stackSave() { - return STACKTOP|0; - } - function stackRestore(top) { - top = top|0; - STACKTOP = top; - } - function setThrew(threw, value) { - threw = threw|0; - value = value|0; - if ((__THREW__|0) == 0) { - __THREW__ = threw; - threwValue = value; - } - } - function copyTempFloat(ptr) { - ptr = ptr|0; - HEAP8[tempDoublePtr>>0] = HEAP8[ptr>>0]; - HEAP8[tempDoublePtr+1>>0] = HEAP8[ptr+1>>0]; - HEAP8[tempDoublePtr+2>>0] = HEAP8[ptr+2>>0]; - HEAP8[tempDoublePtr+3>>0] = HEAP8[ptr+3>>0]; - } - function copyTempDouble(ptr) { - ptr = ptr|0; - HEAP8[tempDoublePtr>>0] = HEAP8[ptr>>0]; - HEAP8[tempDoublePtr+1>>0] = HEAP8[ptr+1>>0]; - HEAP8[tempDoublePtr+2>>0] = HEAP8[ptr+2>>0]; - HEAP8[tempDoublePtr+3>>0] = HEAP8[ptr+3>>0]; - HEAP8[tempDoublePtr+4>>0] = HEAP8[ptr+4>>0]; - HEAP8[tempDoublePtr+5>>0] = HEAP8[ptr+5>>0]; - HEAP8[tempDoublePtr+6>>0] = HEAP8[ptr+6>>0]; - HEAP8[tempDoublePtr+7>>0] = HEAP8[ptr+7>>0]; - } - function setTempRet0(value) { - value = value|0; - tempRet0 = value; - } - function getTempRet0() { - return tempRet0|0; - } - -function _sqlite3_compileoption_used($zOptName) { - $zOptName = $zOptName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $n = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $i = sp + 4|0; - $n = sp; - HEAP32[$1>>2] = $zOptName; - $2 = HEAP32[$1>>2]|0; - $3 = (_sqlite3_strnicmp($2,16,7)|0); - $4 = ($3|0)==(0); - if ($4) { - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 7|0); - HEAP32[$1>>2] = $6; - } - $7 = HEAP32[$1>>2]|0; - $8 = (_sqlite3Strlen30($7)|0); - HEAP32[$n>>2] = $8; - HEAP32[$i>>2] = 0; - while(1) { - $9 = HEAP32[$i>>2]|0; - $10 = ($9|0)<(5); - if (!($10)) { - label = 9; - break; - } - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$i>>2]|0; - $13 = (24 + ($12<<2)|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$n>>2]|0; - $16 = (_sqlite3_strnicmp($11,$14,$15)|0); - $17 = ($16|0)==(0); - if ($17) { - $18 = HEAP32[$n>>2]|0; - $19 = HEAP32[$i>>2]|0; - $20 = (24 + ($19<<2)|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + ($18)|0); - $23 = HEAP8[$22>>0]|0; - $24 = $23&255; - $25 = (48 + ($24)|0); - $26 = HEAP8[$25>>0]|0; - $27 = $26&255; - $28 = ($27|0)==(0); - if ($28) { - label = 7; - break; - } - } - $29 = HEAP32[$i>>2]|0; - $30 = (($29) + 1)|0; - HEAP32[$i>>2] = $30; - } - if ((label|0) == 7) { - HEAP32[$0>>2] = 1; - $31 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($31|0); - } - else if ((label|0) == 9) { - HEAP32[$0>>2] = 0; - $31 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($31|0); - } - return 0|0; -} -function _sqlite3_strnicmp($zLeft,$zRight,$N) { - $zLeft = $zLeft|0; - $zRight = $zRight|0; - $N = $N|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $b = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $a = sp + 4|0; - $b = sp; - HEAP32[$0>>2] = $zLeft; - HEAP32[$1>>2] = $zRight; - HEAP32[$2>>2] = $N; - $3 = HEAP32[$0>>2]|0; - HEAP32[$a>>2] = $3; - $4 = HEAP32[$1>>2]|0; - HEAP32[$b>>2] = $4; - while(1) { - $5 = HEAP32[$2>>2]|0; - $6 = (($5) + -1)|0; - HEAP32[$2>>2] = $6; - $7 = ($5|0)>(0); - if (!($7)) { - break; - } - $8 = HEAP32[$a>>2]|0; - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - $11 = ($10|0)!=(0); - if (!($11)) { - break; - } - $12 = HEAP32[$a>>2]|0; - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - $15 = (696 + ($14)|0); - $16 = HEAP8[$15>>0]|0; - $17 = $16&255; - $18 = HEAP32[$b>>2]|0; - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = (696 + ($20)|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = ($17|0)==($23|0); - if (!($24)) { - break; - } - $25 = HEAP32[$a>>2]|0; - $26 = (($25) + 1|0); - HEAP32[$a>>2] = $26; - $27 = HEAP32[$b>>2]|0; - $28 = (($27) + 1|0); - HEAP32[$b>>2] = $28; - } - $29 = HEAP32[$2>>2]|0; - $30 = ($29|0)<(0); - if ($30) { - $44 = 0; - STACKTOP = sp;return ($44|0); - } - $31 = HEAP32[$a>>2]|0; - $32 = HEAP8[$31>>0]|0; - $33 = $32&255; - $34 = (696 + ($33)|0); - $35 = HEAP8[$34>>0]|0; - $36 = $35&255; - $37 = HEAP32[$b>>2]|0; - $38 = HEAP8[$37>>0]|0; - $39 = $38&255; - $40 = (696 + ($39)|0); - $41 = HEAP8[$40>>0]|0; - $42 = $41&255; - $43 = (($36) - ($42))|0; - $44 = $43; - STACKTOP = sp;return ($44|0); -} -function _sqlite3Strlen30($z) { - $z = $z|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $z2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $z2 = sp; - HEAP32[$1>>2] = $z; - $2 = HEAP32[$1>>2]|0; - HEAP32[$z2>>2] = $2; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - HEAP32[$0>>2] = 0; - $15 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($15|0); - } - while(1) { - $5 = HEAP32[$z2>>2]|0; - $6 = HEAP8[$5>>0]|0; - $7 = ($6<<24>>24)!=(0); - $8 = HEAP32[$z2>>2]|0; - if (!($7)) { - break; - } - $9 = (($8) + 1|0); - HEAP32[$z2>>2] = $9; - } - $10 = HEAP32[$1>>2]|0; - $11 = $8; - $12 = $10; - $13 = (($11) - ($12))|0; - $14 = 1073741823 & $13; - HEAP32[$0>>2] = $14; - $15 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($15|0); -} -function _sqlite3_compileoption_get($N) { - $N = $N|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $N; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)>=(0); - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)<(5); - $or$cond = $3 & $5; - if ($or$cond) { - $6 = HEAP32[$1>>2]|0; - $7 = (24 + ($6<<2)|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$0>>2] = $8; - $9 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($9|0); - } else { - HEAP32[$0>>2] = 0; - $9 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($9|0); - } - return 0|0; -} -function _sqlite3_status($op,$pCurrent,$pHighwater,$resetFlag) { - $op = $op|0; - $pCurrent = $pCurrent|0; - $pHighwater = $pHighwater|0; - $resetFlag = $resetFlag|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $4 = sp; - HEAP32[$1>>2] = $op; - HEAP32[$2>>2] = $pCurrent; - HEAP32[$3>>2] = $pHighwater; - HEAP32[$4>>2] = $resetFlag; - $5 = HEAP32[$1>>2]|0; - $6 = ($5|0)<(0); - $7 = HEAP32[$1>>2]|0; - $8 = ($7|0)>=(10); - $or$cond = $6 | $8; - if ($or$cond) { - $9 = (_sqlite3MisuseError(14363)|0); - HEAP32[$0>>2] = $9; - $25 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($25|0); - } - $10 = HEAP32[$1>>2]|0; - $11 = (304 + ($10<<2)|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$2>>2]|0; - HEAP32[$13>>2] = $12; - $14 = HEAP32[$1>>2]|0; - $15 = (((304 + 40|0)) + ($14<<2)|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$3>>2]|0; - HEAP32[$17>>2] = $16; - $18 = HEAP32[$4>>2]|0; - $19 = ($18|0)!=(0); - if ($19) { - $20 = HEAP32[$1>>2]|0; - $21 = (304 + ($20<<2)|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (((304 + 40|0)) + ($23<<2)|0); - HEAP32[$24>>2] = $22; - } - HEAP32[$0>>2] = 0; - $25 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($25|0); -} -function _sqlite3MisuseError($lineno) { - $lineno = $lineno|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 8|0; - HEAP32[$0>>2] = $lineno; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3_sourceid()|0); - $3 = (($2) + 20|0); - HEAP32[$vararg_buffer>>2] = $1; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $3; - _sqlite3_log(21,3216,$vararg_buffer); - STACKTOP = sp;return 21; -} -function _sqlite3BtreeEnterAll($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $i = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $db; - HEAP32[$i>>2] = 0; - while(1) { - $1 = HEAP32[$i>>2]|0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 20|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($1|0)<($4|0); - if (!($5)) { - break; - } - $6 = HEAP32[$i>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 16|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + ($6<<4)|0); - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$p>>2] = $12; - $13 = HEAP32[$p>>2]|0; - $14 = ($13|0)!=(0|0); - if ($14) { - $15 = HEAP32[$p>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$p>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($19) + 4|0); - HEAP32[$20>>2] = $16; - } - $21 = HEAP32[$i>>2]|0; - $22 = (($21) + 1)|0; - HEAP32[$i>>2] = $22; - } - STACKTOP = sp;return; -} -function _sqlite3BtreePager($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - STACKTOP = sp;return ($4|0); -} -function _sqlite3MallocSize($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[((38512 + 48|0))>>2]|0; - $2 = HEAP32[$0>>2]|0; - $3 = (FUNCTION_TABLE_ii[$1 & 31]($2)|0); - STACKTOP = sp;return ($3|0); -} -function _sqlite3DeleteTrigger($db,$pTrigger) { - $db = $db|0; - $pTrigger = $pTrigger|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pTrigger; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0|0); - if ($3) { - STACKTOP = sp;return; - } - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 28|0); - $7 = HEAP32[$6>>2]|0; - _sqlite3DeleteTriggerStep($4,$7); - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$9>>2]|0; - _sqlite3DbFree($8,$10); - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - _sqlite3DbFree($11,$14); - $15 = HEAP32[$0>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 12|0); - $18 = HEAP32[$17>>2]|0; - _sqlite3ExprDelete($15,$18); - $19 = HEAP32[$0>>2]|0; - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 16|0); - $22 = HEAP32[$21>>2]|0; - _sqlite3IdListDelete($19,$22); - $23 = HEAP32[$0>>2]|0; - $24 = HEAP32[$1>>2]|0; - _sqlite3DbFree($23,$24); - STACKTOP = sp;return; -} -function _sqlite3DeleteTable($db,$pTable) { - $db = $db|0; - $pTable = $pTable|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $pIndex = 0, $pNext = 0, $zName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $pIndex = sp + 8|0; - $pNext = sp + 4|0; - $zName = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pTable; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - STACKTOP = sp;return; - } - $4 = HEAP32[$0>>2]|0; - $5 = ($4|0)!=(0|0); - if ($5) { - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 512|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)==(0|0); - if ($9) { - label = 4; - } - } else { - label = 4; - } - if ((label|0) == 4) { - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 40|0); - $12 = HEAP16[$11>>1]|0; - $13 = (($12) + -1)<<16>>16; - HEAP16[$11>>1] = $13; - $14 = $13&65535; - $15 = ($14|0)>(0); - if ($15) { - STACKTOP = sp;return; - } - } - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 8|0); - $18 = HEAP32[$17>>2]|0; - HEAP32[$pIndex>>2] = $18; - while(1) { - $19 = HEAP32[$pIndex>>2]|0; - $20 = ($19|0)!=(0|0); - if (!($20)) { - break; - } - $21 = HEAP32[$pIndex>>2]|0; - $22 = (($21) + 20|0); - $23 = HEAP32[$22>>2]|0; - HEAP32[$pNext>>2] = $23; - $24 = HEAP32[$0>>2]|0; - $25 = ($24|0)!=(0|0); - if ($25) { - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 512|0); - $28 = HEAP32[$27>>2]|0; - $29 = ($28|0)==(0|0); - if ($29) { - label = 9; - } - } else { - label = 9; - } - if ((label|0) == 9) { - label = 0; - $30 = HEAP32[$pIndex>>2]|0; - $31 = HEAP32[$30>>2]|0; - HEAP32[$zName>>2] = $31; - $32 = HEAP32[$pIndex>>2]|0; - $33 = (($32) + 24|0); - $34 = HEAP32[$33>>2]|0; - $35 = (($34) + 24|0); - $36 = HEAP32[$zName>>2]|0; - $37 = HEAP32[$zName>>2]|0; - $38 = (_sqlite3Strlen30($37)|0); - (_sqlite3HashInsert($35,$36,$38,0)|0); - } - $39 = HEAP32[$0>>2]|0; - $40 = HEAP32[$pIndex>>2]|0; - _freeIndex($39,$40); - $41 = HEAP32[$pNext>>2]|0; - HEAP32[$pIndex>>2] = $41; - } - $42 = HEAP32[$0>>2]|0; - $43 = HEAP32[$1>>2]|0; - _sqlite3FkDelete($42,$43); - $44 = HEAP32[$0>>2]|0; - $45 = HEAP32[$1>>2]|0; - _sqliteDeleteColumnNames($44,$45); - $46 = HEAP32[$0>>2]|0; - $47 = HEAP32[$1>>2]|0; - $48 = HEAP32[$47>>2]|0; - _sqlite3DbFree($46,$48); - $49 = HEAP32[$0>>2]|0; - $50 = HEAP32[$1>>2]|0; - $51 = (($50) + 20|0); - $52 = HEAP32[$51>>2]|0; - _sqlite3DbFree($49,$52); - $53 = HEAP32[$0>>2]|0; - $54 = HEAP32[$1>>2]|0; - $55 = (($54) + 12|0); - $56 = HEAP32[$55>>2]|0; - _sqlite3SelectDelete($53,$56); - $57 = HEAP32[$0>>2]|0; - $58 = HEAP32[$1>>2]|0; - $59 = (($58) + 24|0); - $60 = HEAP32[$59>>2]|0; - _sqlite3ExprListDelete($57,$60); - $61 = HEAP32[$0>>2]|0; - $62 = HEAP32[$1>>2]|0; - _sqlite3VtabClear($61,$62); - $63 = HEAP32[$0>>2]|0; - $64 = HEAP32[$1>>2]|0; - _sqlite3DbFree($63,$64); - STACKTOP = sp;return; -} -function _sqlite3VdbeClearObject($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pNext = 0, $pSub = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $pSub = sp + 8|0; - $pNext = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 60|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 68|0); - $7 = HEAP16[$6>>1]|0; - $8 = $7 << 16 >> 16; - _releaseMemArray($4,$8); - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 16|0); - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 84|0); - $14 = HEAP16[$13>>1]|0; - $15 = $14&65535; - $16 = $15<<1; - _releaseMemArray($11,$16); - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 192|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$pSub>>2] = $19; - while(1) { - $20 = HEAP32[$pSub>>2]|0; - $21 = ($20|0)!=(0|0); - if (!($21)) { - break; - } - $22 = HEAP32[$pSub>>2]|0; - $23 = (($22) + 24|0); - $24 = HEAP32[$23>>2]|0; - HEAP32[$pNext>>2] = $24; - $25 = HEAP32[$0>>2]|0; - $26 = HEAP32[$pSub>>2]|0; - $27 = HEAP32[$26>>2]|0; - $28 = HEAP32[$pSub>>2]|0; - $29 = (($28) + 4|0); - $30 = HEAP32[$29>>2]|0; - _vdbeFreeOpArray($25,$27,$30); - $31 = HEAP32[$0>>2]|0; - $32 = HEAP32[$pSub>>2]|0; - _sqlite3DbFree($31,$32); - $33 = HEAP32[$pNext>>2]|0; - HEAP32[$pSub>>2] = $33; - } - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 70|0); - $36 = HEAP16[$35>>1]|0; - $37 = $36 << 16 >> 16; - $38 = (($37) - 1)|0; - HEAP32[$i>>2] = $38; - while(1) { - $39 = HEAP32[$i>>2]|0; - $40 = ($39|0)>=(0); - $41 = HEAP32[$0>>2]|0; - if (!($40)) { - break; - } - $42 = HEAP32[$i>>2]|0; - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + 64|0); - $45 = HEAP32[$44>>2]|0; - $46 = (($45) + ($42<<2)|0); - $47 = HEAP32[$46>>2]|0; - _sqlite3DbFree($41,$47); - $48 = HEAP32[$i>>2]|0; - $49 = (($48) + -1)|0; - HEAP32[$i>>2] = $49; - } - $50 = HEAP32[$1>>2]|0; - $51 = (($50) + 4|0); - $52 = HEAP32[$51>>2]|0; - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + 32|0); - $55 = HEAP32[$54>>2]|0; - _vdbeFreeOpArray($41,$52,$55); - $56 = HEAP32[$0>>2]|0; - $57 = HEAP32[$1>>2]|0; - $58 = (($57) + 16|0); - $59 = HEAP32[$58>>2]|0; - _sqlite3DbFree($56,$59); - $60 = HEAP32[$0>>2]|0; - $61 = HEAP32[$1>>2]|0; - $62 = (($61) + 168|0); - $63 = HEAP32[$62>>2]|0; - _sqlite3DbFree($60,$63); - $64 = HEAP32[$0>>2]|0; - $65 = HEAP32[$1>>2]|0; - $66 = (($65) + 172|0); - $67 = HEAP32[$66>>2]|0; - _sqlite3DbFree($64,$67); - STACKTOP = sp;return; -} -function _sqlite3DbFree($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBuf = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pBuf = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0|0); - if ($3) { - STACKTOP = sp;return; - } - $4 = HEAP32[$0>>2]|0; - $5 = ($4|0)!=(0|0); - if ($5) { - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 512|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)!=(0|0); - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$1>>2]|0; - if ($9) { - $12 = (_sqlite3DbMallocSize($10,$11)|0); - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 512|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + ($12))|0; - HEAP32[$15>>2] = $17; - STACKTOP = sp;return; - } - $18 = (_isLookaside($10,$11)|0); - $19 = ($18|0)!=(0); - if ($19) { - $20 = HEAP32[$1>>2]|0; - HEAP32[$pBuf>>2] = $20; - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 240|0); - $23 = (($22) + 24|0); - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$pBuf>>2]|0; - HEAP32[$25>>2] = $24; - $26 = HEAP32[$pBuf>>2]|0; - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 240|0); - $29 = (($28) + 24|0); - HEAP32[$29>>2] = $26; - $30 = HEAP32[$0>>2]|0; - $31 = (($30) + 240|0); - $32 = (($31) + 4|0); - $33 = HEAP32[$32>>2]|0; - $34 = (($33) + -1)|0; - HEAP32[$32>>2] = $34; - STACKTOP = sp;return; - } - } - $35 = HEAP32[$1>>2]|0; - _sqlite3_free($35); - STACKTOP = sp;return; -} -function _sqlite3_vfs_find($zVfs) { - $zVfs = $zVfs|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $pVfs = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $pVfs = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $zVfs; - HEAP32[$pVfs>>2] = 0; - $2 = (_sqlite3_initialize()|0); - HEAP32[$rc>>2] = $2; - $3 = HEAP32[$rc>>2]|0; - $4 = ($3|0)!=(0); - if ($4) { - HEAP32[$0>>2] = 0; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); - } - $5 = HEAP32[384>>2]|0; - HEAP32[$pVfs>>2] = $5; - while(1) { - $6 = HEAP32[$pVfs>>2]|0; - $7 = ($6|0)!=(0|0); - if (!($7)) { - break; - } - $8 = HEAP32[$1>>2]|0; - $9 = ($8|0)==(0|0); - if ($9) { - break; - } - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$pVfs>>2]|0; - $12 = (($11) + 16|0); - $13 = HEAP32[$12>>2]|0; - $14 = (_strcmp($10,$13)|0); - $15 = ($14|0)==(0); - if ($15) { - break; - } - $16 = HEAP32[$pVfs>>2]|0; - $17 = (($16) + 12|0); - $18 = HEAP32[$17>>2]|0; - HEAP32[$pVfs>>2] = $18; - } - $19 = HEAP32[$pVfs>>2]|0; - HEAP32[$0>>2] = $19; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); -} -function _sqlite3_initialize() { - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pHash = 0, $rc = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $rc = sp + 4|0; - $pHash = sp; - $1 = HEAP32[((38512 + 224|0))>>2]|0; - $2 = ($1|0)!=(0); - if ($2) { - HEAP32[$0>>2] = 0; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); - } - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$rc>>2]|0; - $4 = ($3|0)!=(0); - if ($4) { - $5 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $5; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); - } - HEAP32[((38512 + 232|0))>>2] = 1; - $6 = HEAP32[((38512 + 236|0))>>2]|0; - $7 = ($6|0)!=(0); - if (!($7)) { - $8 = (_sqlite3MallocInit()|0); - HEAP32[$rc>>2] = $8; - } - $9 = HEAP32[$rc>>2]|0; - $10 = ($9|0)==(0); - if ($10) { - HEAP32[((38512 + 236|0))>>2] = 1; - $11 = HEAP32[((38512 + 248|0))>>2]|0; - $12 = ($11|0)!=(0|0); - if (!($12)) { - HEAP32[((38512 + 248|0))>>2] = (8); - $13 = HEAP32[((38512 + 4|0))>>2]|0; - $14 = ($13|0)!=(0); - if ($14) { - $15 = HEAP32[((38512 + 248|0))>>2]|0; - $16 = ($15|0)!=(0|0); - if (!($16)) { - HEAP32[$rc>>2] = 7; - } - } - } - } - $17 = HEAP32[$rc>>2]|0; - $18 = ($17|0)==(0); - if ($18) { - $19 = HEAP32[((38512 + 244|0))>>2]|0; - $20 = (($19) + 1)|0; - HEAP32[((38512 + 244|0))>>2] = $20; - } - $21 = HEAP32[$rc>>2]|0; - $22 = ($21|0)!=(0); - if ($22) { - $23 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $23; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); - } - $24 = HEAP32[((38512 + 224|0))>>2]|0; - $25 = ($24|0)==(0); - if ($25) { - $26 = HEAP32[((38512 + 228|0))>>2]|0; - $27 = ($26|0)==(0); - if ($27) { - HEAP32[$pHash>>2] = 1576; - HEAP32[((38512 + 228|0))>>2] = 1; - $28 = HEAP32[$pHash>>2]|0; - dest=$28+0|0; stop=dest+92|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - _sqlite3RegisterGlobalFunctions(); - $29 = HEAP32[((38512 + 240|0))>>2]|0; - $30 = ($29|0)==(0); - if ($30) { - $31 = (_sqlite3PcacheInitialize()|0); - HEAP32[$rc>>2] = $31; - } - $32 = HEAP32[$rc>>2]|0; - $33 = ($32|0)==(0); - if ($33) { - HEAP32[((38512 + 240|0))>>2] = 1; - $34 = (_sqlite3OsInit()|0); - HEAP32[$rc>>2] = $34; - } - $35 = HEAP32[$rc>>2]|0; - $36 = ($35|0)==(0); - if ($36) { - $37 = HEAP32[((38512 + 204|0))>>2]|0; - $38 = HEAP32[((38512 + 208|0))>>2]|0; - $39 = HEAP32[((38512 + 212|0))>>2]|0; - _sqlite3PCacheBufferSetup($37,$38,$39); - HEAP32[((38512 + 224|0))>>2] = 1; - } - HEAP32[((38512 + 228|0))>>2] = 0; - } - } - $40 = HEAP32[((38512 + 244|0))>>2]|0; - $41 = (($40) + -1)|0; - HEAP32[((38512 + 244|0))>>2] = $41; - $42 = HEAP32[((38512 + 244|0))>>2]|0; - $43 = ($42|0)<=(0); - if ($43) { - HEAP32[((38512 + 248|0))>>2] = 0; - } - $44 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $44; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); -} -function _sqlite3_vfs_register($pVfs,$makeDflt) { - $pVfs = $pVfs|0; - $makeDflt = $makeDflt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pVfs; - HEAP32[$2>>2] = $makeDflt; - $3 = (_sqlite3_initialize()|0); - HEAP32[$rc>>2] = $3; - $4 = HEAP32[$rc>>2]|0; - $5 = ($4|0)!=(0); - if ($5) { - $6 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $6; - $23 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($23|0); - } - $7 = HEAP32[$1>>2]|0; - _vfsUnlink($7); - $8 = HEAP32[$2>>2]|0; - $9 = ($8|0)!=(0); - $10 = HEAP32[384>>2]|0; - $11 = ($10|0)==(0|0); - $or$cond = $9 | $11; - $12 = HEAP32[384>>2]|0; - if ($or$cond) { - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 12|0); - HEAP32[$14>>2] = $12; - $15 = HEAP32[$1>>2]|0; - HEAP32[384>>2] = $15; - } else { - $16 = (($12) + 12|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 12|0); - HEAP32[$19>>2] = $17; - $20 = HEAP32[$1>>2]|0; - $21 = HEAP32[384>>2]|0; - $22 = (($21) + 12|0); - HEAP32[$22>>2] = $20; - } - HEAP32[$0>>2] = 0; - $23 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($23|0); -} -function _vfsUnlink($pVfs) { - $pVfs = $pVfs|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pVfs; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)==(0|0); - if ($2) { - STACKTOP = sp;return; - } - $3 = HEAP32[384>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = ($3|0)==($4|0); - if ($5) { - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 12|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[384>>2] = $8; - STACKTOP = sp;return; - } - $9 = HEAP32[384>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - STACKTOP = sp;return; - } - $11 = HEAP32[384>>2]|0; - HEAP32[$p>>2] = $11; - while(1) { - $12 = HEAP32[$p>>2]|0; - $13 = (($12) + 12|0); - $14 = HEAP32[$13>>2]|0; - $15 = ($14|0)!=(0|0); - if ($15) { - $16 = HEAP32[$p>>2]|0; - $17 = (($16) + 12|0); - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$0>>2]|0; - $20 = ($18|0)!=($19|0); - $31 = $20; - } else { - $31 = 0; - } - $21 = HEAP32[$p>>2]|0; - $22 = (($21) + 12|0); - $23 = HEAP32[$22>>2]|0; - if (!($31)) { - break; - } - HEAP32[$p>>2] = $23; - } - $24 = HEAP32[$0>>2]|0; - $25 = ($23|0)==($24|0); - if (!($25)) { - STACKTOP = sp;return; - } - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 12|0); - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$p>>2]|0; - $30 = (($29) + 12|0); - HEAP32[$30>>2] = $28; - STACKTOP = sp;return; -} -function _sqlite3_release_memory($n) { - $n = $n|0; - var $0 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $n; - STACKTOP = sp;return 0; -} -function _sqlite3MemoryAlarm($xCallback,$pArg,$0,$1) { - $xCallback = $xCallback|0; - $pArg = $pArg|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nUsed = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp; - $nUsed = sp + 8|0; - HEAP32[$2>>2] = $xCallback; - HEAP32[$3>>2] = $pArg; - $5 = $4; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - $9 = HEAP32[$2>>2]|0; - HEAP32[((392 + 16|0))>>2] = $9; - $10 = HEAP32[$3>>2]|0; - HEAP32[((392 + 20|0))>>2] = $10; - $11 = $4; - $12 = $11; - $13 = HEAP32[$12>>2]|0; - $14 = (($11) + 4)|0; - $15 = $14; - $16 = HEAP32[$15>>2]|0; - $17 = ((392 + 8|0)); - $18 = $17; - HEAP32[$18>>2] = $13; - $19 = (($17) + 4)|0; - $20 = $19; - HEAP32[$20>>2] = $16; - $21 = (_sqlite3StatusValue(0)|0); - HEAP32[$nUsed>>2] = $21; - $22 = $4; - $23 = $22; - $24 = HEAP32[$23>>2]|0; - $25 = (($22) + 4)|0; - $26 = $25; - $27 = HEAP32[$26>>2]|0; - $28 = ($27|0)>(0); - $29 = ($27|0)==(0); - $30 = ($24>>>0)>(0); - $31 = $29 & $30; - $32 = $28 | $31; - if (!($32)) { - $48 = 0; - $47 = $48&1; - HEAP32[((392 + 36|0))>>2] = $47; - STACKTOP = sp;return 0; - } - $33 = $4; - $34 = $33; - $35 = HEAP32[$34>>2]|0; - $36 = (($33) + 4)|0; - $37 = $36; - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$nUsed>>2]|0; - $40 = ($39|0)<(0); - $41 = $40 << 31 >> 31; - $42 = ($38|0)<($41|0); - $43 = ($38|0)==($41|0); - $44 = ($35>>>0)<=($39>>>0); - $45 = $43 & $44; - $46 = $42 | $45; - $48 = $46; - $47 = $48&1; - HEAP32[((392 + 36|0))>>2] = $47; - STACKTOP = sp;return 0; -} -function _sqlite3_soft_heap_limit64($0,$1) { - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; - var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; - var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; - var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; - var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; - var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $excess = 0, $priorLimit = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $2 = sp + 24|0; - $3 = sp + 16|0; - $priorLimit = sp + 8|0; - $excess = sp; - $rc = sp + 32|0; - $4 = $3; - $5 = $4; - HEAP32[$5>>2] = $0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = $1; - $8 = (_sqlite3_initialize()|0); - HEAP32[$rc>>2] = $8; - $9 = HEAP32[$rc>>2]|0; - $10 = ($9|0)!=(0); - if ($10) { - $11 = $2; - $12 = $11; - HEAP32[$12>>2] = -1; - $13 = (($11) + 4)|0; - $14 = $13; - HEAP32[$14>>2] = -1; - $101 = $2; - $102 = $101; - $103 = HEAP32[$102>>2]|0; - $104 = (($101) + 4)|0; - $105 = $104; - $106 = HEAP32[$105>>2]|0; - tempRet0 = $106; - STACKTOP = sp;return ($103|0); - } - $15 = ((392 + 8|0)); - $16 = $15; - $17 = HEAP32[$16>>2]|0; - $18 = (($15) + 4)|0; - $19 = $18; - $20 = HEAP32[$19>>2]|0; - $21 = $priorLimit; - $22 = $21; - HEAP32[$22>>2] = $17; - $23 = (($21) + 4)|0; - $24 = $23; - HEAP32[$24>>2] = $20; - $25 = $3; - $26 = $25; - $27 = HEAP32[$26>>2]|0; - $28 = (($25) + 4)|0; - $29 = $28; - $30 = HEAP32[$29>>2]|0; - $31 = ($30|0)<(0); - if ($31) { - $32 = $priorLimit; - $33 = $32; - $34 = HEAP32[$33>>2]|0; - $35 = (($32) + 4)|0; - $36 = $35; - $37 = HEAP32[$36>>2]|0; - $38 = $2; - $39 = $38; - HEAP32[$39>>2] = $34; - $40 = (($38) + 4)|0; - $41 = $40; - HEAP32[$41>>2] = $37; - $101 = $2; - $102 = $101; - $103 = HEAP32[$102>>2]|0; - $104 = (($101) + 4)|0; - $105 = $104; - $106 = HEAP32[$105>>2]|0; - tempRet0 = $106; - STACKTOP = sp;return ($103|0); - } - $42 = $3; - $43 = $42; - $44 = HEAP32[$43>>2]|0; - $45 = (($42) + 4)|0; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = ($47|0)>(0); - $49 = ($47|0)==(0); - $50 = ($44>>>0)>(0); - $51 = $49 & $50; - $52 = $48 | $51; - if ($52) { - $53 = $3; - $54 = $53; - $55 = HEAP32[$54>>2]|0; - $56 = (($53) + 4)|0; - $57 = $56; - $58 = HEAP32[$57>>2]|0; - (_sqlite3MemoryAlarm(2,0,$55,$58)|0); - } else { - (_sqlite3MemoryAlarm(0,0,0,0)|0); - } - $59 = (_sqlite3_memory_used()|0); - $60 = tempRet0; - $61 = $3; - $62 = $61; - $63 = HEAP32[$62>>2]|0; - $64 = (($61) + 4)|0; - $65 = $64; - $66 = HEAP32[$65>>2]|0; - $67 = (_i64Subtract(($59|0),($60|0),($63|0),($66|0))|0); - $68 = tempRet0; - $69 = $excess; - $70 = $69; - HEAP32[$70>>2] = $67; - $71 = (($69) + 4)|0; - $72 = $71; - HEAP32[$72>>2] = $68; - $73 = $excess; - $74 = $73; - $75 = HEAP32[$74>>2]|0; - $76 = (($73) + 4)|0; - $77 = $76; - $78 = HEAP32[$77>>2]|0; - $79 = ($78|0)>(0); - $80 = ($78|0)==(0); - $81 = ($75>>>0)>(0); - $82 = $80 & $81; - $83 = $79 | $82; - if ($83) { - $84 = $excess; - $85 = $84; - $86 = HEAP32[$85>>2]|0; - $87 = (($84) + 4)|0; - $88 = $87; - $89 = HEAP32[$88>>2]|0; - $90 = $86 & 2147483647; - (_sqlite3_release_memory($90)|0); - } - $91 = $priorLimit; - $92 = $91; - $93 = HEAP32[$92>>2]|0; - $94 = (($91) + 4)|0; - $95 = $94; - $96 = HEAP32[$95>>2]|0; - $97 = $2; - $98 = $97; - HEAP32[$98>>2] = $93; - $99 = (($97) + 4)|0; - $100 = $99; - HEAP32[$100>>2] = $96; - $101 = $2; - $102 = $101; - $103 = HEAP32[$102>>2]|0; - $104 = (($101) + 4)|0; - $105 = $104; - $106 = HEAP32[$105>>2]|0; - tempRet0 = $106; - STACKTOP = sp;return ($103|0); -} -function _softHeapLimitEnforcer($NotUsed,$0,$1,$allocSize) { - $NotUsed = $NotUsed|0; - $0 = $0|0; - $1 = $1|0; - $allocSize = $allocSize|0; - var $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $2 = sp + 12|0; - $3 = sp; - $4 = sp + 8|0; - HEAP32[$2>>2] = $NotUsed; - $5 = $3; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - HEAP32[$4>>2] = $allocSize; - $9 = HEAP32[$4>>2]|0; - (_sqlite3_release_memory($9)|0); - STACKTOP = sp;return; -} -function _sqlite3_memory_used() { - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mx = 0, $n = 0, $res = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $n = sp + 12|0; - $mx = sp + 8|0; - $res = sp; - (_sqlite3_status(0,$n,$mx,0)|0); - $0 = HEAP32[$n>>2]|0; - $1 = ($0|0)<(0); - $2 = $1 << 31 >> 31; - $3 = $res; - $4 = $3; - HEAP32[$4>>2] = $0; - $5 = (($3) + 4)|0; - $6 = $5; - HEAP32[$6>>2] = $2; - $7 = $res; - $8 = $7; - $9 = HEAP32[$8>>2]|0; - $10 = (($7) + 4)|0; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - tempRet0 = $12; - STACKTOP = sp;return ($9|0); -} -function _sqlite3_malloc($n) { - $n = $n|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $n; - $2 = (_sqlite3_initialize()|0); - $3 = ($2|0)!=(0); - if ($3) { - HEAP32[$0>>2] = 0; - } else { - $4 = HEAP32[$1>>2]|0; - $5 = (_sqlite3Malloc($4)|0); - HEAP32[$0>>2] = $5; - } - $6 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($6|0); -} -function _sqlite3Malloc($n) { - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $n; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)<=(0); - $3 = HEAP32[$0>>2]|0; - $4 = ($3|0)>=(2147483392); - $or$cond = $2 | $4; - do { - if ($or$cond) { - HEAP32[$p>>2] = 0; - } else { - $5 = HEAP32[38512>>2]|0; - $6 = ($5|0)!=(0); - if ($6) { - $7 = HEAP32[$0>>2]|0; - (_mallocWithAlarm($7,$p)|0); - break; - } else { - $8 = HEAP32[((38512 + 36|0))>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = (FUNCTION_TABLE_ii[$8 & 31]($9)|0); - HEAP32[$p>>2] = $10; - break; - } - } - } while(0); - $11 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($11|0); -} -function _sqlite3_free($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)==(0|0); - if ($2) { - STACKTOP = sp;return; - } - $3 = HEAP32[38512>>2]|0; - $4 = ($3|0)!=(0); - if ($4) { - $5 = HEAP32[$0>>2]|0; - $6 = (_sqlite3MallocSize($5)|0); - $7 = (0 - ($6))|0; - _sqlite3StatusAdd(0,$7); - _sqlite3StatusAdd(9,-1); - $8 = HEAP32[((38512 + 40|0))>>2]|0; - $9 = HEAP32[$0>>2]|0; - FUNCTION_TABLE_vi[$8 & 31]($9); - STACKTOP = sp;return; - } else { - $10 = HEAP32[((38512 + 40|0))>>2]|0; - $11 = HEAP32[$0>>2]|0; - FUNCTION_TABLE_vi[$10 & 31]($11); - STACKTOP = sp;return; - } -} -function _sqlite3StatusAdd($op,$N) { - $op = $op|0; - $N = $N|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $op; - HEAP32[$1>>2] = $N; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (304 + ($3<<2)|0); - $5 = HEAP32[$4>>2]|0; - $6 = (($5) + ($2))|0; - HEAP32[$4>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = (304 + ($7<<2)|0); - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = (((304 + 40|0)) + ($10<<2)|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($9|0)>($12|0); - if (!($13)) { - STACKTOP = sp;return; - } - $14 = HEAP32[$0>>2]|0; - $15 = (304 + ($14<<2)|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$0>>2]|0; - $18 = (((304 + 40|0)) + ($17<<2)|0); - HEAP32[$18>>2] = $16; - STACKTOP = sp;return; -} -function _sqlite3_realloc($pOld,$n) { - $pOld = $pOld|0; - $n = $n|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$1>>2] = $pOld; - HEAP32[$2>>2] = $n; - $3 = (_sqlite3_initialize()|0); - $4 = ($3|0)!=(0); - if ($4) { - HEAP32[$0>>2] = 0; - $8 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($8|0); - } else { - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = (_sqlite3Realloc($5,$6)|0); - HEAP32[$0>>2] = $7; - $8 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($8|0); - } - return 0|0; -} -function _sqlite3Realloc($pOld,$nBytes) { - $pOld = $pOld|0; - $nBytes = $nBytes|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $8 = 0, $9 = 0, $nDiff = 0, $nNew = 0, $nOld = 0, $or$cond = 0, $pNew = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $nOld = sp + 12|0; - $nNew = sp + 8|0; - $nDiff = sp + 4|0; - $pNew = sp; - HEAP32[$1>>2] = $pOld; - HEAP32[$2>>2] = $nBytes; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)==(0|0); - $5 = HEAP32[$2>>2]|0; - if ($4) { - $6 = (_sqlite3Malloc($5)|0); - HEAP32[$0>>2] = $6; - $71 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($71|0); - } - $7 = ($5|0)<=(0); - if ($7) { - $8 = HEAP32[$1>>2]|0; - _sqlite3_free($8); - HEAP32[$0>>2] = 0; - $71 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($71|0); - } - $9 = HEAP32[$2>>2]|0; - $10 = ($9|0)>=(2147483392); - if ($10) { - HEAP32[$0>>2] = 0; - $71 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($71|0); - } - $11 = HEAP32[$1>>2]|0; - $12 = (_sqlite3MallocSize($11)|0); - HEAP32[$nOld>>2] = $12; - $13 = HEAP32[((38512 + 52|0))>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = (FUNCTION_TABLE_ii[$13 & 31]($14)|0); - HEAP32[$nNew>>2] = $15; - $16 = HEAP32[$nOld>>2]|0; - $17 = HEAP32[$nNew>>2]|0; - $18 = ($16|0)==($17|0); - do { - if ($18) { - $19 = HEAP32[$1>>2]|0; - HEAP32[$pNew>>2] = $19; - } else { - $20 = HEAP32[38512>>2]|0; - $21 = ($20|0)!=(0); - if (!($21)) { - $66 = HEAP32[((38512 + 44|0))>>2]|0; - $67 = HEAP32[$1>>2]|0; - $68 = HEAP32[$nNew>>2]|0; - $69 = (FUNCTION_TABLE_iii[$66 & 63]($67,$68)|0); - HEAP32[$pNew>>2] = $69; - break; - } - $22 = HEAP32[$2>>2]|0; - _sqlite3StatusSet(5,$22); - $23 = HEAP32[$nNew>>2]|0; - $24 = HEAP32[$nOld>>2]|0; - $25 = (($23) - ($24))|0; - HEAP32[$nDiff>>2] = $25; - $26 = (_sqlite3StatusValue(0)|0); - $27 = ($26|0)<(0); - $28 = $27 << 31 >> 31; - $29 = ((392 + 8|0)); - $30 = $29; - $31 = HEAP32[$30>>2]|0; - $32 = (($29) + 4)|0; - $33 = $32; - $34 = HEAP32[$33>>2]|0; - $35 = HEAP32[$nDiff>>2]|0; - $36 = ($35|0)<(0); - $37 = $36 << 31 >> 31; - $38 = (_i64Subtract(($31|0),($34|0),($35|0),($37|0))|0); - $39 = tempRet0; - $40 = ($28|0)>($39|0); - $41 = ($28|0)==($39|0); - $42 = ($26>>>0)>=($38>>>0); - $43 = $41 & $42; - $44 = $40 | $43; - if ($44) { - $45 = HEAP32[$nDiff>>2]|0; - _sqlite3MallocAlarm($45); - } - $46 = HEAP32[((38512 + 44|0))>>2]|0; - $47 = HEAP32[$1>>2]|0; - $48 = HEAP32[$nNew>>2]|0; - $49 = (FUNCTION_TABLE_iii[$46 & 63]($47,$48)|0); - HEAP32[$pNew>>2] = $49; - $50 = HEAP32[$pNew>>2]|0; - $51 = ($50|0)==(0|0); - $52 = HEAP32[((392 + 16|0))>>2]|0; - $53 = ($52|0)!=(0|0); - $or$cond = $51 & $53; - if ($or$cond) { - $54 = HEAP32[$2>>2]|0; - _sqlite3MallocAlarm($54); - $55 = HEAP32[((38512 + 44|0))>>2]|0; - $56 = HEAP32[$1>>2]|0; - $57 = HEAP32[$nNew>>2]|0; - $58 = (FUNCTION_TABLE_iii[$55 & 63]($56,$57)|0); - HEAP32[$pNew>>2] = $58; - } - $59 = HEAP32[$pNew>>2]|0; - $60 = ($59|0)!=(0|0); - if ($60) { - $61 = HEAP32[$pNew>>2]|0; - $62 = (_sqlite3MallocSize($61)|0); - HEAP32[$nNew>>2] = $62; - $63 = HEAP32[$nNew>>2]|0; - $64 = HEAP32[$nOld>>2]|0; - $65 = (($63) - ($64))|0; - _sqlite3StatusAdd(0,$65); - } - } - } while(0); - $70 = HEAP32[$pNew>>2]|0; - HEAP32[$0>>2] = $70; - $71 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($71|0); -} -function _sqlite3_vmprintf($zFormat,$ap) { - $zFormat = $zFormat|0; - $ap = $ap|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $acc = 0, $z = 0, $zBase = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $z = sp + 28|0; - $zBase = sp + 44|0; - $acc = sp; - HEAP32[$1>>2] = $zFormat; - HEAP32[$2>>2] = $ap; - $3 = (_sqlite3_initialize()|0); - $4 = ($3|0)!=(0); - if ($4) { - HEAP32[$0>>2] = 0; - $10 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($10|0); - } else { - _sqlite3StrAccumInit($acc,$zBase,70,1000000000); - $5 = (($acc) + 24|0); - HEAP8[$5>>0] = 2; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$2>>2]|0; - _sqlite3VXPrintf($acc,0,$6,$7); - $8 = (_sqlite3StrAccumFinish($acc)|0); - HEAP32[$z>>2] = $8; - $9 = HEAP32[$z>>2]|0; - HEAP32[$0>>2] = $9; - $10 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($10|0); - } - return 0|0; -} -function _sqlite3StrAccumInit($p,$zBase,$n,$mx) { - $p = $p|0; - $zBase = $zBase|0; - $n = $n|0; - $mx = $mx|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $zBase; - HEAP32[$2>>2] = $n; - HEAP32[$3>>2] = $mx; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 4|0); - HEAP32[$6>>2] = $4; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 8|0); - HEAP32[$8>>2] = $4; - $9 = HEAP32[$0>>2]|0; - HEAP32[$9>>2] = 0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 12|0); - HEAP32[$11>>2] = 0; - $12 = HEAP32[$2>>2]|0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 16|0); - HEAP32[$14>>2] = $12; - $15 = HEAP32[$3>>2]|0; - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 20|0); - HEAP32[$17>>2] = $15; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 24|0); - HEAP8[$19>>0] = 1; - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 25|0); - HEAP8[$21>>0] = 0; - STACKTOP = sp;return; -} -function _sqlite3VXPrintf($pAccum,$bFlags,$fmt,$ap) { - $pAccum = $pAccum|0; - $bFlags = $bFlags|0; - $fmt = $fmt|0; - $ap = $ap|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0.0, $438 = 0, $439 = 0.0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0.0, $443 = 0, $444 = 0.0, $445 = 0.0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0.0, $463 = 0.0, $464 = 0, $465 = 0, $466 = 0, $467 = 0.0, $468 = 0.0, $469 = 0.0, $47 = 0, $470 = 0.0, $471 = 0, $472 = 0, $473 = 0.0, $474 = 0, $475 = 0.0, $476 = 0.0; - var $477 = 0.0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0.0, $482 = 0.0, $483 = 0, $484 = 0, $485 = 0.0, $486 = 0.0, $487 = 0.0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0.0, $492 = 0.0, $493 = 0, $494 = 0; - var $495 = 0.0, $496 = 0.0, $497 = 0.0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0.0, $502 = 0.0, $503 = 0, $504 = 0, $505 = 0.0, $506 = 0.0, $507 = 0.0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0.0; - var $512 = 0.0, $513 = 0, $514 = 0, $515 = 0.0, $516 = 0.0, $517 = 0.0, $518 = 0, $519 = 0.0, $52 = 0, $520 = 0.0, $521 = 0, $522 = 0, $523 = 0.0, $524 = 0, $525 = 0.0, $526 = 0.0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; - var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0.0, $543 = 0.0, $544 = 0.0, $545 = 0.0, $546 = 0, $547 = 0.0, $548 = 0.0; - var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; - var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; - var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; - var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; - var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; - var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; - var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; - var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0; - var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0; - var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0; - var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0; - var $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0; - var $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0; - var $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0; - var $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0; - var $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0; - var $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0; - var $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0; - var $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0; - var $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0; - var $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0; - var $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0; - var $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0; - var $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $98 = 0, $99 = 0, $arglist_current = 0, $arglist_current13 = 0, $arglist_current16 = 0, $arglist_current19 = 0, $arglist_current22 = 0; - var $arglist_current25 = 0, $arglist_current28 = 0, $arglist_current31 = 0, $arglist_current34 = 0, $arglist_current37 = 0, $arglist_current40 = 0, $arglist_current43 = 0, $arglist_current46 = 0, $arglist_current49 = 0, $arglist_current52 = 0, $arglist_next = 0, $arglist_next14 = 0, $arglist_next17 = 0, $arglist_next20 = 0, $arglist_next23 = 0, $arglist_next26 = 0, $arglist_next29 = 0, $arglist_next32 = 0, $arglist_next35 = 0, $arglist_next38 = 0; - var $arglist_next41 = 0, $arglist_next44 = 0, $arglist_next47 = 0, $arglist_next50 = 0, $arglist_next53 = 0, $bArgList = 0, $base = 0, $buf = 0, $bufpt = 0, $c = 0, $ch = 0, $cset = 0, $done = 0, $e2 = 0, $escarg = 0, $exp = 0, $flag_alternateform = 0, $flag_altform2 = 0, $flag_blanksign = 0, $flag_dp = 0; - var $flag_leftjustify = 0, $flag_long = 0, $flag_longlong = 0, $flag_plussign = 0, $flag_rtz = 0, $flag_zeropad = 0, $i = 0, $i2 = 0, $idx = 0, $infop = 0, $isnull = 0, $j = 0, $k = 0, $k3 = 0, $length = 0, $longvalue = 0, $n = 0, $nOut = 0, $nPad = 0, $needQuote = 0; - var $nsd = 0, $or$cond = 0, $or$cond11 = 0, $pArgList = 0, $pItem = 0, $pSrc = 0, $pToken = 0, $pre = 0, $precision = 0, $prefix = 0, $q = 0, $realvalue = 0, $rounder = 0, $scale = 0, $useIntern = 0, $v = 0, $width = 0, $x = 0, $x1 = 0, $xtype = 0; - var $zExtra = 0, $zOut = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 272|0; - $0 = sp + 172|0; - $1 = sp + 168|0; - $2 = sp + 164|0; - $3 = sp + 160|0; - $c = sp + 156|0; - $bufpt = sp + 152|0; - $precision = sp + 148|0; - $length = sp + 144|0; - $idx = sp + 140|0; - $width = sp + 136|0; - $flag_leftjustify = sp + 264|0; - $flag_plussign = sp + 263|0; - $flag_blanksign = sp + 262|0; - $flag_alternateform = sp + 261|0; - $flag_altform2 = sp + 260|0; - $flag_zeropad = sp + 259|0; - $flag_long = sp + 258|0; - $flag_longlong = sp + 257|0; - $done = sp + 256|0; - $xtype = sp + 255|0; - $bArgList = sp + 254|0; - $useIntern = sp + 253|0; - $prefix = sp + 252|0; - $longvalue = sp + 32|0; - $realvalue = sp + 24|0; - $infop = sp + 132|0; - $zOut = sp + 128|0; - $nOut = sp + 124|0; - $zExtra = sp + 120|0; - $exp = sp + 116|0; - $e2 = sp + 112|0; - $nsd = sp + 108|0; - $rounder = sp + 16|0; - $flag_dp = sp + 251|0; - $flag_rtz = sp + 250|0; - $pArgList = sp + 104|0; - $buf = sp + 180|0; - $v = sp + 8|0; - $x = sp + 100|0; - $cset = sp + 96|0; - $base = sp + 179|0; - $pre = sp + 92|0; - $x1 = sp + 178|0; - $scale = sp; - $i = sp + 88|0; - $nPad = sp + 84|0; - $i2 = sp + 80|0; - $j = sp + 76|0; - $k = sp + 72|0; - $n = sp + 68|0; - $isnull = sp + 64|0; - $needQuote = sp + 60|0; - $ch = sp + 177|0; - $q = sp + 176|0; - $escarg = sp + 56|0; - $pToken = sp + 52|0; - $pSrc = sp + 48|0; - $k3 = sp + 44|0; - $pItem = sp + 40|0; - HEAP32[$0>>2] = $pAccum; - HEAP32[$1>>2] = $bFlags; - HEAP32[$2>>2] = $fmt; - HEAP32[$3>>2] = $ap; - HEAP8[$xtype>>0] = 0; - HEAP32[$pArgList>>2] = 0; - HEAP32[$bufpt>>2] = 0; - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)!=(0); - if ($5) { - $6 = HEAP32[$1>>2]|0; - $7 = $6 & 2; - $8 = $7&255; - HEAP8[$bArgList>>0] = $8; - $9 = $8&255; - $10 = ($9|0)!=(0); - if ($10) { - $11 = HEAP32[$3>>2]|0; - $arglist_current = HEAP32[$11>>2]|0; - $12 = HEAP32[$arglist_current>>2]|0; - $arglist_next = (($arglist_current) + 4|0); - HEAP32[$11>>2] = $arglist_next; - HEAP32[$pArgList>>2] = $12; - } - $13 = HEAP32[$1>>2]|0; - $14 = $13 & 1; - $15 = $14&255; - HEAP8[$useIntern>>0] = $15; - } else { - HEAP8[$useIntern>>0] = 0; - HEAP8[$bArgList>>0] = 0; - } - L7: while(1) { - $16 = HEAP32[$2>>2]|0; - $17 = HEAP8[$16>>0]|0; - $18 = $17 << 24 >> 24; - HEAP32[$c>>2] = $18; - $19 = ($18|0)!=(0); - if (!($19)) { - label = 283; - break; - } - $20 = HEAP32[$c>>2]|0; - $21 = ($20|0)!=(37); - if ($21) { - $22 = HEAP32[$2>>2]|0; - HEAP32[$bufpt>>2] = $22; - while(1) { - $23 = HEAP32[$2>>2]|0; - $24 = (($23) + 1|0); - HEAP32[$2>>2] = $24; - $25 = HEAP8[$24>>0]|0; - $26 = $25 << 24 >> 24; - HEAP32[$c>>2] = $26; - $27 = ($26|0)!=(37); - if (!($27)) { - break; - } - $28 = HEAP32[$c>>2]|0; - $29 = ($28|0)!=(0); - if (!($29)) { - break; - } - } - $30 = HEAP32[$0>>2]|0; - $31 = HEAP32[$bufpt>>2]|0; - $32 = HEAP32[$2>>2]|0; - $33 = HEAP32[$bufpt>>2]|0; - $34 = $32; - $35 = $33; - $36 = (($34) - ($35))|0; - _sqlite3StrAccumAppend($30,$31,$36); - $37 = HEAP32[$c>>2]|0; - $38 = ($37|0)==(0); - if ($38) { - label = 283; - break; - } - } - $39 = HEAP32[$2>>2]|0; - $40 = (($39) + 1|0); - HEAP32[$2>>2] = $40; - $41 = HEAP8[$40>>0]|0; - $42 = $41 << 24 >> 24; - HEAP32[$c>>2] = $42; - $43 = ($42|0)==(0); - if ($43) { - label = 13; - break; - } - HEAP8[$flag_zeropad>>0] = 0; - HEAP8[$flag_altform2>>0] = 0; - HEAP8[$flag_alternateform>>0] = 0; - HEAP8[$flag_blanksign>>0] = 0; - HEAP8[$flag_plussign>>0] = 0; - HEAP8[$flag_leftjustify>>0] = 0; - HEAP8[$done>>0] = 0; - while(1) { - $45 = HEAP32[$c>>2]|0; - switch ($45|0) { - case 45: { - HEAP8[$flag_leftjustify>>0] = 1; - break; - } - case 43: { - HEAP8[$flag_plussign>>0] = 1; - break; - } - case 32: { - HEAP8[$flag_blanksign>>0] = 1; - break; - } - case 35: { - HEAP8[$flag_alternateform>>0] = 1; - break; - } - case 33: { - HEAP8[$flag_altform2>>0] = 1; - break; - } - case 48: { - HEAP8[$flag_zeropad>>0] = 1; - break; - } - default: { - HEAP8[$done>>0] = 1; - } - } - $46 = HEAP8[$done>>0]|0; - $47 = ($46<<24>>24)!=(0); - if ($47) { - break; - } - $48 = HEAP32[$2>>2]|0; - $49 = (($48) + 1|0); - HEAP32[$2>>2] = $49; - $50 = HEAP8[$49>>0]|0; - $51 = $50 << 24 >> 24; - HEAP32[$c>>2] = $51; - $52 = ($51|0)!=(0); - if (!($52)) { - break; - } - } - HEAP32[$width>>2] = 0; - $53 = HEAP32[$c>>2]|0; - $54 = ($53|0)==(42); - L31: do { - if ($54) { - $55 = HEAP8[$bArgList>>0]|0; - $56 = ($55<<24>>24)!=(0); - if ($56) { - $57 = HEAP32[$pArgList>>2]|0; - $58 = (_getIntArg($57)|0); - $59 = tempRet0; - HEAP32[$width>>2] = $58; - } else { - $60 = HEAP32[$3>>2]|0; - $arglist_current13 = HEAP32[$60>>2]|0; - $61 = HEAP32[$arglist_current13>>2]|0; - $arglist_next14 = (($arglist_current13) + 4|0); - HEAP32[$60>>2] = $arglist_next14; - HEAP32[$width>>2] = $61; - } - $62 = HEAP32[$width>>2]|0; - $63 = ($62|0)<(0); - if ($63) { - HEAP8[$flag_leftjustify>>0] = 1; - $64 = HEAP32[$width>>2]|0; - $65 = (0 - ($64))|0; - HEAP32[$width>>2] = $65; - } - $66 = HEAP32[$2>>2]|0; - $67 = (($66) + 1|0); - HEAP32[$2>>2] = $67; - $68 = HEAP8[$67>>0]|0; - $69 = $68 << 24 >> 24; - HEAP32[$c>>2] = $69; - } else { - while(1) { - $70 = HEAP32[$c>>2]|0; - $71 = ($70|0)>=(48); - $72 = HEAP32[$c>>2]|0; - $73 = ($72|0)<=(57); - $or$cond = $71 & $73; - if (!($or$cond)) { - break L31; - } - $74 = HEAP32[$width>>2]|0; - $75 = ($74*10)|0; - $76 = HEAP32[$c>>2]|0; - $77 = (($75) + ($76))|0; - $78 = (($77) - 48)|0; - HEAP32[$width>>2] = $78; - $79 = HEAP32[$2>>2]|0; - $80 = (($79) + 1|0); - HEAP32[$2>>2] = $80; - $81 = HEAP8[$80>>0]|0; - $82 = $81 << 24 >> 24; - HEAP32[$c>>2] = $82; - } - } - } while(0); - $83 = HEAP32[$c>>2]|0; - $84 = ($83|0)==(46); - L44: do { - if ($84) { - HEAP32[$precision>>2] = 0; - $85 = HEAP32[$2>>2]|0; - $86 = (($85) + 1|0); - HEAP32[$2>>2] = $86; - $87 = HEAP8[$86>>0]|0; - $88 = $87 << 24 >> 24; - HEAP32[$c>>2] = $88; - $89 = HEAP32[$c>>2]|0; - $90 = ($89|0)==(42); - if (!($90)) { - while(1) { - $106 = HEAP32[$c>>2]|0; - $107 = ($106|0)>=(48); - $108 = HEAP32[$c>>2]|0; - $109 = ($108|0)<=(57); - $or$cond11 = $107 & $109; - if (!($or$cond11)) { - break L44; - } - $110 = HEAP32[$precision>>2]|0; - $111 = ($110*10)|0; - $112 = HEAP32[$c>>2]|0; - $113 = (($111) + ($112))|0; - $114 = (($113) - 48)|0; - HEAP32[$precision>>2] = $114; - $115 = HEAP32[$2>>2]|0; - $116 = (($115) + 1|0); - HEAP32[$2>>2] = $116; - $117 = HEAP8[$116>>0]|0; - $118 = $117 << 24 >> 24; - HEAP32[$c>>2] = $118; - } - } - $91 = HEAP8[$bArgList>>0]|0; - $92 = ($91<<24>>24)!=(0); - if ($92) { - $93 = HEAP32[$pArgList>>2]|0; - $94 = (_getIntArg($93)|0); - $95 = tempRet0; - HEAP32[$precision>>2] = $94; - } else { - $96 = HEAP32[$3>>2]|0; - $arglist_current16 = HEAP32[$96>>2]|0; - $97 = HEAP32[$arglist_current16>>2]|0; - $arglist_next17 = (($arglist_current16) + 4|0); - HEAP32[$96>>2] = $arglist_next17; - HEAP32[$precision>>2] = $97; - } - $98 = HEAP32[$precision>>2]|0; - $99 = ($98|0)<(0); - if ($99) { - $100 = HEAP32[$precision>>2]|0; - $101 = (0 - ($100))|0; - HEAP32[$precision>>2] = $101; - } - $102 = HEAP32[$2>>2]|0; - $103 = (($102) + 1|0); - HEAP32[$2>>2] = $103; - $104 = HEAP8[$103>>0]|0; - $105 = $104 << 24 >> 24; - HEAP32[$c>>2] = $105; - } else { - HEAP32[$precision>>2] = -1; - } - } while(0); - $119 = HEAP32[$c>>2]|0; - $120 = ($119|0)==(108); - do { - if ($120) { - HEAP8[$flag_long>>0] = 1; - $121 = HEAP32[$2>>2]|0; - $122 = (($121) + 1|0); - HEAP32[$2>>2] = $122; - $123 = HEAP8[$122>>0]|0; - $124 = $123 << 24 >> 24; - HEAP32[$c>>2] = $124; - $125 = HEAP32[$c>>2]|0; - $126 = ($125|0)==(108); - if ($126) { - HEAP8[$flag_longlong>>0] = 1; - $127 = HEAP32[$2>>2]|0; - $128 = (($127) + 1|0); - HEAP32[$2>>2] = $128; - $129 = HEAP8[$128>>0]|0; - $130 = $129 << 24 >> 24; - HEAP32[$c>>2] = $130; - break; - } else { - HEAP8[$flag_longlong>>0] = 0; - break; - } - } else { - HEAP8[$flag_longlong>>0] = 0; - HEAP8[$flag_long>>0] = 0; - } - } while(0); - HEAP32[$infop>>2] = 38264; - HEAP8[$xtype>>0] = 0; - HEAP32[$idx>>2] = 0; - while(1) { - $131 = HEAP32[$idx>>2]|0; - $132 = ($131|0)<(23); - if (!($132)) { - break; - } - $133 = HEAP32[$c>>2]|0; - $134 = HEAP32[$idx>>2]|0; - $135 = (38264 + (($134*6)|0)|0); - $136 = HEAP8[$135>>0]|0; - $137 = $136 << 24 >> 24; - $138 = ($133|0)==($137|0); - $139 = HEAP32[$idx>>2]|0; - if ($138) { - label = 53; - break; - } - $153 = (($139) + 1)|0; - HEAP32[$idx>>2] = $153; - } - if ((label|0) == 53) { - label = 0; - $140 = (38264 + (($139*6)|0)|0); - HEAP32[$infop>>2] = $140; - $141 = HEAP8[$useIntern>>0]|0; - $142 = $141&255; - $143 = ($142|0)!=(0); - if (!($143)) { - $144 = HEAP32[$infop>>2]|0; - $145 = (($144) + 2|0); - $146 = HEAP8[$145>>0]|0; - $147 = $146&255; - $148 = $147 & 2; - $149 = ($148|0)==(0); - if (!($149)) { - label = 283; - break; - } - } - $150 = HEAP32[$infop>>2]|0; - $151 = (($150) + 3|0); - $152 = HEAP8[$151>>0]|0; - HEAP8[$xtype>>0] = $152; - } - HEAP32[$zExtra>>2] = 0; - $154 = HEAP8[$xtype>>0]|0; - $155 = $154&255; - L77: do { - switch ($155|0) { - case 14: { - HEAP8[$flag_longlong>>0] = 0; - HEAP8[$flag_long>>0] = 1; - label = 59; - break; - } - case 1: case 16: { - label = 59; - break; - } - case 4: case 3: case 2: { - $434 = HEAP8[$bArgList>>0]|0; - $435 = ($434<<24>>24)!=(0); - if ($435) { - $436 = HEAP32[$pArgList>>2]|0; - $437 = (+_getDoubleArg($436)); - HEAPF64[$realvalue>>3] = $437; - } else { - $438 = HEAP32[$3>>2]|0; - $arglist_current31 = HEAP32[$438>>2]|0; - HEAP32[tempDoublePtr>>2]=HEAP32[$arglist_current31>>2];HEAP32[tempDoublePtr+4>>2]=HEAP32[$arglist_current31+4>>2];$439 = +HEAPF64[tempDoublePtr>>3]; - $arglist_next32 = (($arglist_current31) + 8|0); - HEAP32[$438>>2] = $arglist_next32; - HEAPF64[$realvalue>>3] = $439; - } - $440 = HEAP32[$precision>>2]|0; - $441 = ($440|0)<(0); - if ($441) { - HEAP32[$precision>>2] = 6; - } - $442 = +HEAPF64[$realvalue>>3]; - $443 = $442 < 0.0; - do { - if ($443) { - $444 = +HEAPF64[$realvalue>>3]; - $445 = -$444; - HEAPF64[$realvalue>>3] = $445; - HEAP8[$prefix>>0] = 45; - } else { - $446 = HEAP8[$flag_plussign>>0]|0; - $447 = ($446<<24>>24)!=(0); - if ($447) { - HEAP8[$prefix>>0] = 43; - break; - } - $448 = HEAP8[$flag_blanksign>>0]|0; - $449 = ($448<<24>>24)!=(0); - if ($449) { - HEAP8[$prefix>>0] = 32; - break; - } else { - HEAP8[$prefix>>0] = 0; - break; - } - } - } while(0); - $450 = HEAP8[$xtype>>0]|0; - $451 = $450&255; - $452 = ($451|0)==(4); - if ($452) { - $453 = HEAP32[$precision>>2]|0; - $454 = ($453|0)>(0); - if ($454) { - $455 = HEAP32[$precision>>2]|0; - $456 = (($455) + -1)|0; - HEAP32[$precision>>2] = $456; - } - } - $457 = HEAP32[$precision>>2]|0; - HEAP32[$idx>>2] = $457; - HEAPF64[$rounder>>3] = 0.5; - while(1) { - $458 = HEAP32[$idx>>2]|0; - $459 = ($458|0)>(0); - if (!($459)) { - break; - } - $460 = HEAP32[$idx>>2]|0; - $461 = (($460) + -1)|0; - HEAP32[$idx>>2] = $461; - $462 = +HEAPF64[$rounder>>3]; - $463 = $462 * 0.100000000000000005551; - HEAPF64[$rounder>>3] = $463; - } - $464 = HEAP8[$xtype>>0]|0; - $465 = $464&255; - $466 = ($465|0)==(2); - if ($466) { - $467 = +HEAPF64[$rounder>>3]; - $468 = +HEAPF64[$realvalue>>3]; - $469 = $468 + $467; - HEAPF64[$realvalue>>3] = $469; - } - HEAP32[$exp>>2] = 0; - $470 = +HEAPF64[$realvalue>>3]; - $471 = (_sqlite3IsNaN($470)|0); - $472 = ($471|0)!=(0); - if ($472) { - HEAP32[$bufpt>>2] = 38472; - HEAP32[$length>>2] = 3; - break L77; - } - $473 = +HEAPF64[$realvalue>>3]; - $474 = $473 > 0.0; - if ($474) { - HEAPF64[$scale>>3] = 1.0; - while(1) { - $475 = +HEAPF64[$realvalue>>3]; - $476 = +HEAPF64[$scale>>3]; - $477 = 1.0000000000000000159E+100 * $476; - $478 = $475 >= $477; - if (!($478)) { - break; - } - $479 = HEAP32[$exp>>2]|0; - $480 = ($479|0)<=(350); - if (!($480)) { - break; - } - $481 = +HEAPF64[$scale>>3]; - $482 = $481 * 1.0000000000000000159E+100; - HEAPF64[$scale>>3] = $482; - $483 = HEAP32[$exp>>2]|0; - $484 = (($483) + 100)|0; - HEAP32[$exp>>2] = $484; - } - while(1) { - $485 = +HEAPF64[$realvalue>>3]; - $486 = +HEAPF64[$scale>>3]; - $487 = 1.00000000000000002132E+64 * $486; - $488 = $485 >= $487; - if (!($488)) { - break; - } - $489 = HEAP32[$exp>>2]|0; - $490 = ($489|0)<=(350); - if (!($490)) { - break; - } - $491 = +HEAPF64[$scale>>3]; - $492 = $491 * 1.00000000000000002132E+64; - HEAPF64[$scale>>3] = $492; - $493 = HEAP32[$exp>>2]|0; - $494 = (($493) + 64)|0; - HEAP32[$exp>>2] = $494; - } - while(1) { - $495 = +HEAPF64[$realvalue>>3]; - $496 = +HEAPF64[$scale>>3]; - $497 = 1.0E+8 * $496; - $498 = $495 >= $497; - if (!($498)) { - break; - } - $499 = HEAP32[$exp>>2]|0; - $500 = ($499|0)<=(350); - if (!($500)) { - break; - } - $501 = +HEAPF64[$scale>>3]; - $502 = $501 * 1.0E+8; - HEAPF64[$scale>>3] = $502; - $503 = HEAP32[$exp>>2]|0; - $504 = (($503) + 8)|0; - HEAP32[$exp>>2] = $504; - } - while(1) { - $505 = +HEAPF64[$realvalue>>3]; - $506 = +HEAPF64[$scale>>3]; - $507 = 10.0 * $506; - $508 = $505 >= $507; - if ($508) { - $509 = HEAP32[$exp>>2]|0; - $510 = ($509|0)<=(350); - $974 = $510; - } else { - $974 = 0; - } - $511 = +HEAPF64[$scale>>3]; - if (!($974)) { - break; - } - $512 = $511 * 10.0; - HEAPF64[$scale>>3] = $512; - $513 = HEAP32[$exp>>2]|0; - $514 = (($513) + 1)|0; - HEAP32[$exp>>2] = $514; - } - $515 = +HEAPF64[$realvalue>>3]; - $516 = $515 / $511; - HEAPF64[$realvalue>>3] = $516; - while(1) { - $517 = +HEAPF64[$realvalue>>3]; - $518 = $517 < 1.00000000000000002092E-8; - if (!($518)) { - break; - } - $519 = +HEAPF64[$realvalue>>3]; - $520 = $519 * 1.0E+8; - HEAPF64[$realvalue>>3] = $520; - $521 = HEAP32[$exp>>2]|0; - $522 = (($521) - 8)|0; - HEAP32[$exp>>2] = $522; - } - while(1) { - $523 = +HEAPF64[$realvalue>>3]; - $524 = $523 < 1.0; - if (!($524)) { - break; - } - $525 = +HEAPF64[$realvalue>>3]; - $526 = $525 * 10.0; - HEAPF64[$realvalue>>3] = $526; - $527 = HEAP32[$exp>>2]|0; - $528 = (($527) + -1)|0; - HEAP32[$exp>>2] = $528; - } - $529 = HEAP32[$exp>>2]|0; - $530 = ($529|0)>(350); - if ($530) { - $531 = HEAP8[$prefix>>0]|0; - $532 = $531 << 24 >> 24; - $533 = ($532|0)==(45); - do { - if ($533) { - HEAP32[$bufpt>>2] = 38480; - } else { - $534 = HEAP8[$prefix>>0]|0; - $535 = $534 << 24 >> 24; - $536 = ($535|0)==(43); - if ($536) { - HEAP32[$bufpt>>2] = 38488; - break; - } else { - HEAP32[$bufpt>>2] = 38496; - break; - } - } - } while(0); - $537 = HEAP32[$bufpt>>2]|0; - $538 = (_sqlite3Strlen30($537)|0); - HEAP32[$length>>2] = $538; - break L77; - } - } - HEAP32[$bufpt>>2] = $buf; - $539 = HEAP8[$xtype>>0]|0; - $540 = $539&255; - $541 = ($540|0)!=(2); - if ($541) { - $542 = +HEAPF64[$rounder>>3]; - $543 = +HEAPF64[$realvalue>>3]; - $544 = $543 + $542; - HEAPF64[$realvalue>>3] = $544; - $545 = +HEAPF64[$realvalue>>3]; - $546 = $545 >= 10.0; - if ($546) { - $547 = +HEAPF64[$realvalue>>3]; - $548 = $547 * 0.100000000000000005551; - HEAPF64[$realvalue>>3] = $548; - $549 = HEAP32[$exp>>2]|0; - $550 = (($549) + 1)|0; - HEAP32[$exp>>2] = $550; - } - } - $551 = HEAP8[$xtype>>0]|0; - $552 = $551&255; - $553 = ($552|0)==(4); - L152: do { - if ($553) { - $554 = HEAP8[$flag_alternateform>>0]|0; - $555 = ($554<<24>>24)!=(0); - $556 = $555 ^ 1; - $557 = $556&1; - $558 = $557&255; - HEAP8[$flag_rtz>>0] = $558; - $559 = HEAP32[$exp>>2]|0; - $560 = ($559|0)<(-4); - do { - if (!($560)) { - $561 = HEAP32[$exp>>2]|0; - $562 = HEAP32[$precision>>2]|0; - $563 = ($561|0)>($562|0); - if ($563) { - break; - } - $564 = HEAP32[$precision>>2]|0; - $565 = HEAP32[$exp>>2]|0; - $566 = (($564) - ($565))|0; - HEAP32[$precision>>2] = $566; - HEAP8[$xtype>>0] = 2; - break L152; - } - } while(0); - HEAP8[$xtype>>0] = 3; - } else { - $567 = HEAP8[$flag_altform2>>0]|0; - HEAP8[$flag_rtz>>0] = $567; - } - } while(0); - $568 = HEAP8[$xtype>>0]|0; - $569 = $568&255; - $570 = ($569|0)==(3); - if ($570) { - HEAP32[$e2>>2] = 0; - } else { - $571 = HEAP32[$exp>>2]|0; - HEAP32[$e2>>2] = $571; - } - $572 = HEAP32[$e2>>2]|0; - $573 = ($572|0)>(0); - $574 = HEAP32[$e2>>2]|0; - $575 = $573 ? $574 : 0; - $576 = HEAP32[$precision>>2]|0; - $577 = (($575) + ($576))|0; - $578 = HEAP32[$width>>2]|0; - $579 = (($577) + ($578))|0; - $580 = ($579|0)>(55); - if ($580) { - $581 = HEAP32[$e2>>2]|0; - $582 = ($581|0)>(0); - $583 = HEAP32[$e2>>2]|0; - $584 = $582 ? $583 : 0; - $585 = HEAP32[$precision>>2]|0; - $586 = (($584) + ($585))|0; - $587 = HEAP32[$width>>2]|0; - $588 = (($586) + ($587))|0; - $589 = (($588) + 15)|0; - $590 = (_sqlite3Malloc($589)|0); - HEAP32[$zExtra>>2] = $590; - HEAP32[$bufpt>>2] = $590; - $591 = HEAP32[$bufpt>>2]|0; - $592 = ($591|0)==(0|0); - if ($592) { - label = 171; - break L7; - } - } - $594 = HEAP32[$bufpt>>2]|0; - HEAP32[$zOut>>2] = $594; - $595 = HEAP8[$flag_altform2>>0]|0; - $596 = $595&255; - $597 = ($596*10)|0; - $598 = (16 + ($597))|0; - HEAP32[$nsd>>2] = $598; - $599 = HEAP32[$precision>>2]|0; - $600 = ($599|0)>(0); - $601 = $600 ? 1 : 0; - $602 = HEAP8[$flag_alternateform>>0]|0; - $603 = $602&255; - $604 = $601 | $603; - $605 = HEAP8[$flag_altform2>>0]|0; - $606 = $605&255; - $607 = $604 | $606; - $608 = $607&255; - HEAP8[$flag_dp>>0] = $608; - $609 = HEAP8[$prefix>>0]|0; - $610 = ($609<<24>>24)!=(0); - if ($610) { - $611 = HEAP8[$prefix>>0]|0; - $612 = HEAP32[$bufpt>>2]|0; - $613 = (($612) + 1|0); - HEAP32[$bufpt>>2] = $613; - HEAP8[$612>>0] = $611; - } - $614 = HEAP32[$e2>>2]|0; - $615 = ($614|0)<(0); - L170: do { - if ($615) { - $616 = HEAP32[$bufpt>>2]|0; - $617 = (($616) + 1|0); - HEAP32[$bufpt>>2] = $617; - HEAP8[$616>>0] = 48; - } else { - while(1) { - $618 = HEAP32[$e2>>2]|0; - $619 = ($618|0)>=(0); - if (!($619)) { - break L170; - } - $620 = (_et_getdigit($realvalue,$nsd)|0); - $621 = HEAP32[$bufpt>>2]|0; - $622 = (($621) + 1|0); - HEAP32[$bufpt>>2] = $622; - HEAP8[$621>>0] = $620; - $623 = HEAP32[$e2>>2]|0; - $624 = (($623) + -1)|0; - HEAP32[$e2>>2] = $624; - } - } - } while(0); - $625 = HEAP8[$flag_dp>>0]|0; - $626 = ($625<<24>>24)!=(0); - if ($626) { - $627 = HEAP32[$bufpt>>2]|0; - $628 = (($627) + 1|0); - HEAP32[$bufpt>>2] = $628; - HEAP8[$627>>0] = 46; - } - $629 = HEAP32[$e2>>2]|0; - $630 = (($629) + 1)|0; - HEAP32[$e2>>2] = $630; - while(1) { - $631 = HEAP32[$e2>>2]|0; - $632 = ($631|0)<(0); - if (!($632)) { - break; - } - $633 = HEAP32[$bufpt>>2]|0; - $634 = (($633) + 1|0); - HEAP32[$bufpt>>2] = $634; - HEAP8[$633>>0] = 48; - $635 = HEAP32[$precision>>2]|0; - $636 = (($635) + -1)|0; - HEAP32[$precision>>2] = $636; - $637 = HEAP32[$e2>>2]|0; - $638 = (($637) + 1)|0; - HEAP32[$e2>>2] = $638; - } - while(1) { - $639 = HEAP32[$precision>>2]|0; - $640 = (($639) + -1)|0; - HEAP32[$precision>>2] = $640; - $641 = ($639|0)>(0); - if (!($641)) { - break; - } - $642 = (_et_getdigit($realvalue,$nsd)|0); - $643 = HEAP32[$bufpt>>2]|0; - $644 = (($643) + 1|0); - HEAP32[$bufpt>>2] = $644; - HEAP8[$643>>0] = $642; - } - $645 = HEAP8[$flag_rtz>>0]|0; - $646 = $645&255; - $647 = ($646|0)!=(0); - do { - if ($647) { - $648 = HEAP8[$flag_dp>>0]|0; - $649 = $648&255; - $650 = ($649|0)!=(0); - if (!($650)) { - break; - } - while(1) { - $651 = HEAP32[$bufpt>>2]|0; - $652 = (($651) + -1|0); - $653 = HEAP8[$652>>0]|0; - $654 = $653 << 24 >> 24; - $655 = ($654|0)==(48); - $656 = HEAP32[$bufpt>>2]|0; - $657 = (($656) + -1|0); - if (!($655)) { - break; - } - HEAP32[$bufpt>>2] = $657; - HEAP8[$657>>0] = 0; - } - $658 = HEAP8[$657>>0]|0; - $659 = $658 << 24 >> 24; - $660 = ($659|0)==(46); - if (!($660)) { - break; - } - $661 = HEAP8[$flag_altform2>>0]|0; - $662 = ($661<<24>>24)!=(0); - $663 = HEAP32[$bufpt>>2]|0; - if ($662) { - $664 = (($663) + 1|0); - HEAP32[$bufpt>>2] = $664; - HEAP8[$663>>0] = 48; - break; - } else { - $665 = (($663) + -1|0); - HEAP32[$bufpt>>2] = $665; - HEAP8[$665>>0] = 0; - break; - } - } - } while(0); - $666 = HEAP8[$xtype>>0]|0; - $667 = $666&255; - $668 = ($667|0)==(3); - if ($668) { - $669 = HEAP32[$infop>>2]|0; - $670 = (($669) + 4|0); - $671 = HEAP8[$670>>0]|0; - $672 = $671&255; - $673 = (38424 + ($672)|0); - $674 = HEAP8[$673>>0]|0; - $675 = HEAP32[$bufpt>>2]|0; - $676 = (($675) + 1|0); - HEAP32[$bufpt>>2] = $676; - HEAP8[$675>>0] = $674; - $677 = HEAP32[$exp>>2]|0; - $678 = ($677|0)<(0); - $679 = HEAP32[$bufpt>>2]|0; - $680 = (($679) + 1|0); - HEAP32[$bufpt>>2] = $680; - if ($678) { - HEAP8[$679>>0] = 45; - $681 = HEAP32[$exp>>2]|0; - $682 = (0 - ($681))|0; - HEAP32[$exp>>2] = $682; - } else { - HEAP8[$679>>0] = 43; - } - $683 = HEAP32[$exp>>2]|0; - $684 = ($683|0)>=(100); - if ($684) { - $685 = HEAP32[$exp>>2]|0; - $686 = (($685|0) / 100)&-1; - $687 = (($686) + 48)|0; - $688 = $687&255; - $689 = HEAP32[$bufpt>>2]|0; - $690 = (($689) + 1|0); - HEAP32[$bufpt>>2] = $690; - HEAP8[$689>>0] = $688; - $691 = HEAP32[$exp>>2]|0; - $692 = (($691|0) % 100)&-1; - HEAP32[$exp>>2] = $692; - } - $693 = HEAP32[$exp>>2]|0; - $694 = (($693|0) / 10)&-1; - $695 = (($694) + 48)|0; - $696 = $695&255; - $697 = HEAP32[$bufpt>>2]|0; - $698 = (($697) + 1|0); - HEAP32[$bufpt>>2] = $698; - HEAP8[$697>>0] = $696; - $699 = HEAP32[$exp>>2]|0; - $700 = (($699|0) % 10)&-1; - $701 = (($700) + 48)|0; - $702 = $701&255; - $703 = HEAP32[$bufpt>>2]|0; - $704 = (($703) + 1|0); - HEAP32[$bufpt>>2] = $704; - HEAP8[$703>>0] = $702; - } - $705 = HEAP32[$bufpt>>2]|0; - HEAP8[$705>>0] = 0; - $706 = HEAP32[$bufpt>>2]|0; - $707 = HEAP32[$zOut>>2]|0; - $708 = $706; - $709 = $707; - $710 = (($708) - ($709))|0; - HEAP32[$length>>2] = $710; - $711 = HEAP32[$zOut>>2]|0; - HEAP32[$bufpt>>2] = $711; - $712 = HEAP8[$flag_zeropad>>0]|0; - $713 = $712&255; - $714 = ($713|0)!=(0); - if (!($714)) { - break L77; - } - $715 = HEAP8[$flag_leftjustify>>0]|0; - $716 = ($715<<24>>24)!=(0); - if ($716) { - break L77; - } - $717 = HEAP32[$length>>2]|0; - $718 = HEAP32[$width>>2]|0; - $719 = ($717|0)<($718|0); - if (!($719)) { - break L77; - } - $720 = HEAP32[$width>>2]|0; - $721 = HEAP32[$length>>2]|0; - $722 = (($720) - ($721))|0; - HEAP32[$nPad>>2] = $722; - $723 = HEAP32[$width>>2]|0; - HEAP32[$i>>2] = $723; - while(1) { - $724 = HEAP32[$i>>2]|0; - $725 = HEAP32[$nPad>>2]|0; - $726 = ($724|0)>=($725|0); - if (!($726)) { - break; - } - $727 = HEAP32[$i>>2]|0; - $728 = HEAP32[$nPad>>2]|0; - $729 = (($727) - ($728))|0; - $730 = HEAP32[$bufpt>>2]|0; - $731 = (($730) + ($729)|0); - $732 = HEAP8[$731>>0]|0; - $733 = HEAP32[$i>>2]|0; - $734 = HEAP32[$bufpt>>2]|0; - $735 = (($734) + ($733)|0); - HEAP8[$735>>0] = $732; - $736 = HEAP32[$i>>2]|0; - $737 = (($736) + -1)|0; - HEAP32[$i>>2] = $737; - } - $738 = HEAP8[$prefix>>0]|0; - $739 = $738 << 24 >> 24; - $740 = ($739|0)!=(0); - $741 = $740&1; - HEAP32[$i>>2] = $741; - while(1) { - $742 = HEAP32[$nPad>>2]|0; - $743 = (($742) + -1)|0; - HEAP32[$nPad>>2] = $743; - $744 = ($742|0)!=(0); - if (!($744)) { - break; - } - $745 = HEAP32[$i>>2]|0; - $746 = (($745) + 1)|0; - HEAP32[$i>>2] = $746; - $747 = HEAP32[$bufpt>>2]|0; - $748 = (($747) + ($745)|0); - HEAP8[$748>>0] = 48; - } - $749 = HEAP32[$width>>2]|0; - HEAP32[$length>>2] = $749; - break; - } - case 5: { - $750 = HEAP8[$bArgList>>0]|0; - $751 = ($750<<24>>24)!=(0); - if (!($751)) { - $752 = HEAP32[$0>>2]|0; - $753 = (($752) + 12|0); - $754 = HEAP32[$753>>2]|0; - $755 = HEAP32[$3>>2]|0; - $arglist_current34 = HEAP32[$755>>2]|0; - $756 = HEAP32[$arglist_current34>>2]|0; - $arglist_next35 = (($arglist_current34) + 4|0); - HEAP32[$755>>2] = $arglist_next35; - HEAP32[$756>>2] = $754; - } - HEAP32[$width>>2] = 0; - HEAP32[$length>>2] = 0; - break; - } - case 8: { - HEAP8[$buf>>0] = 37; - HEAP32[$bufpt>>2] = $buf; - HEAP32[$length>>2] = 1; - break; - } - case 9: { - $757 = HEAP8[$bArgList>>0]|0; - $758 = ($757<<24>>24)!=(0); - if ($758) { - $759 = HEAP32[$pArgList>>2]|0; - $760 = (_getTextArg($759)|0); - HEAP32[$bufpt>>2] = $760; - $761 = HEAP32[$bufpt>>2]|0; - $762 = ($761|0)!=(0|0); - if ($762) { - $763 = HEAP32[$bufpt>>2]|0; - $764 = HEAP8[$763>>0]|0; - $765 = $764 << 24 >> 24; - $766 = $765; - } else { - $766 = 0; - } - HEAP32[$c>>2] = $766; - } else { - $767 = HEAP32[$3>>2]|0; - $arglist_current37 = HEAP32[$767>>2]|0; - $768 = HEAP32[$arglist_current37>>2]|0; - $arglist_next38 = (($arglist_current37) + 4|0); - HEAP32[$767>>2] = $arglist_next38; - HEAP32[$c>>2] = $768; - } - $769 = HEAP32[$c>>2]|0; - $770 = $769&255; - HEAP8[$buf>>0] = $770; - $771 = HEAP32[$precision>>2]|0; - $772 = ($771|0)>=(0); - if ($772) { - HEAP32[$idx>>2] = 1; - while(1) { - $773 = HEAP32[$idx>>2]|0; - $774 = HEAP32[$precision>>2]|0; - $775 = ($773|0)<($774|0); - if (!($775)) { - break; - } - $776 = HEAP32[$c>>2]|0; - $777 = $776&255; - $778 = HEAP32[$idx>>2]|0; - $779 = (($buf) + ($778)|0); - HEAP8[$779>>0] = $777; - $780 = HEAP32[$idx>>2]|0; - $781 = (($780) + 1)|0; - HEAP32[$idx>>2] = $781; - } - $782 = HEAP32[$precision>>2]|0; - HEAP32[$length>>2] = $782; - } else { - HEAP32[$length>>2] = 1; - } - HEAP32[$bufpt>>2] = $buf; - break; - } - case 7: case 6: { - $783 = HEAP8[$bArgList>>0]|0; - $784 = ($783<<24>>24)!=(0); - if ($784) { - $785 = HEAP32[$pArgList>>2]|0; - $786 = (_getTextArg($785)|0); - HEAP32[$bufpt>>2] = $786; - } else { - $787 = HEAP32[$3>>2]|0; - $arglist_current40 = HEAP32[$787>>2]|0; - $788 = HEAP32[$arglist_current40>>2]|0; - $arglist_next41 = (($arglist_current40) + 4|0); - HEAP32[$787>>2] = $arglist_next41; - HEAP32[$bufpt>>2] = $788; - } - $789 = HEAP32[$bufpt>>2]|0; - $790 = ($789|0)==(0|0); - if ($790) { - HEAP32[$bufpt>>2] = 1472; - } else { - $791 = HEAP8[$xtype>>0]|0; - $792 = $791&255; - $793 = ($792|0)==(7); - if ($793) { - $794 = HEAP8[$bArgList>>0]|0; - $795 = ($794<<24>>24)!=(0); - if (!($795)) { - $796 = HEAP32[$bufpt>>2]|0; - HEAP32[$zExtra>>2] = $796; - } - } - } - $797 = HEAP32[$precision>>2]|0; - $798 = ($797|0)>=(0); - if (!($798)) { - $810 = HEAP32[$bufpt>>2]|0; - $811 = (_sqlite3Strlen30($810)|0); - HEAP32[$length>>2] = $811; - break L77; - } - HEAP32[$length>>2] = 0; - while(1) { - $799 = HEAP32[$length>>2]|0; - $800 = HEAP32[$precision>>2]|0; - $801 = ($799|0)<($800|0); - if (!($801)) { - break L77; - } - $802 = HEAP32[$length>>2]|0; - $803 = HEAP32[$bufpt>>2]|0; - $804 = (($803) + ($802)|0); - $805 = HEAP8[$804>>0]|0; - $806 = $805 << 24 >> 24; - $807 = ($806|0)!=(0); - if (!($807)) { - break L77; - } - $808 = HEAP32[$length>>2]|0; - $809 = (($808) + 1)|0; - HEAP32[$length>>2] = $809; - } - break; - } - case 15: case 11: case 10: { - $812 = HEAP8[$xtype>>0]|0; - $813 = $812&255; - $814 = ($813|0)==(15); - $815 = $814 ? 34 : 39; - $816 = $815&255; - HEAP8[$q>>0] = $816; - $817 = HEAP8[$bArgList>>0]|0; - $818 = ($817<<24>>24)!=(0); - if ($818) { - $819 = HEAP32[$pArgList>>2]|0; - $820 = (_getTextArg($819)|0); - HEAP32[$escarg>>2] = $820; - } else { - $821 = HEAP32[$3>>2]|0; - $arglist_current43 = HEAP32[$821>>2]|0; - $822 = HEAP32[$arglist_current43>>2]|0; - $arglist_next44 = (($arglist_current43) + 4|0); - HEAP32[$821>>2] = $arglist_next44; - HEAP32[$escarg>>2] = $822; - } - $823 = HEAP32[$escarg>>2]|0; - $824 = ($823|0)==(0|0); - $825 = $824&1; - HEAP32[$isnull>>2] = $825; - $826 = HEAP32[$isnull>>2]|0; - $827 = ($826|0)!=(0); - if ($827) { - $828 = HEAP8[$xtype>>0]|0; - $829 = $828&255; - $830 = ($829|0)==(11); - $831 = $830 ? 9744 : 38504; - HEAP32[$escarg>>2] = $831; - } - $832 = HEAP32[$precision>>2]|0; - HEAP32[$k>>2] = $832; - HEAP32[$n>>2] = 0; - HEAP32[$i2>>2] = 0; - while(1) { - $833 = HEAP32[$k>>2]|0; - $834 = ($833|0)!=(0); - if (!($834)) { - break; - } - $835 = HEAP32[$i2>>2]|0; - $836 = HEAP32[$escarg>>2]|0; - $837 = (($836) + ($835)|0); - $838 = HEAP8[$837>>0]|0; - HEAP8[$ch>>0] = $838; - $839 = $838 << 24 >> 24; - $840 = ($839|0)!=(0); - if (!($840)) { - break; - } - $841 = HEAP8[$ch>>0]|0; - $842 = $841 << 24 >> 24; - $843 = HEAP8[$q>>0]|0; - $844 = $843 << 24 >> 24; - $845 = ($842|0)==($844|0); - if ($845) { - $846 = HEAP32[$n>>2]|0; - $847 = (($846) + 1)|0; - HEAP32[$n>>2] = $847; - } - $848 = HEAP32[$i2>>2]|0; - $849 = (($848) + 1)|0; - HEAP32[$i2>>2] = $849; - $850 = HEAP32[$k>>2]|0; - $851 = (($850) + -1)|0; - HEAP32[$k>>2] = $851; - } - $852 = HEAP32[$isnull>>2]|0; - $853 = ($852|0)!=(0); - if ($853) { - $858 = 0; - } else { - $854 = HEAP8[$xtype>>0]|0; - $855 = $854&255; - $856 = ($855|0)==(11); - $858 = $856; - } - $857 = $858&1; - HEAP32[$needQuote>>2] = $857; - $859 = HEAP32[$i2>>2]|0; - $860 = (($859) + 1)|0; - $861 = HEAP32[$needQuote>>2]|0; - $862 = $861<<1; - $863 = (($860) + ($862))|0; - $864 = HEAP32[$n>>2]|0; - $865 = (($864) + ($863))|0; - HEAP32[$n>>2] = $865; - $866 = HEAP32[$n>>2]|0; - $867 = ($866|0)>(70); - if ($867) { - $868 = HEAP32[$n>>2]|0; - $869 = (_sqlite3Malloc($868)|0); - HEAP32[$zExtra>>2] = $869; - HEAP32[$bufpt>>2] = $869; - $870 = HEAP32[$bufpt>>2]|0; - $871 = ($870|0)==(0|0); - if ($871) { - label = 255; - break L7; - } - } else { - HEAP32[$bufpt>>2] = $buf; - } - HEAP32[$j>>2] = 0; - $873 = HEAP32[$needQuote>>2]|0; - $874 = ($873|0)!=(0); - if ($874) { - $875 = HEAP8[$q>>0]|0; - $876 = HEAP32[$j>>2]|0; - $877 = (($876) + 1)|0; - HEAP32[$j>>2] = $877; - $878 = HEAP32[$bufpt>>2]|0; - $879 = (($878) + ($876)|0); - HEAP8[$879>>0] = $875; - } - $880 = HEAP32[$i2>>2]|0; - HEAP32[$k>>2] = $880; - HEAP32[$i2>>2] = 0; - while(1) { - $881 = HEAP32[$i2>>2]|0; - $882 = HEAP32[$k>>2]|0; - $883 = ($881|0)<($882|0); - if (!($883)) { - break; - } - $884 = HEAP32[$i2>>2]|0; - $885 = HEAP32[$escarg>>2]|0; - $886 = (($885) + ($884)|0); - $887 = HEAP8[$886>>0]|0; - HEAP8[$ch>>0] = $887; - $888 = HEAP32[$j>>2]|0; - $889 = (($888) + 1)|0; - HEAP32[$j>>2] = $889; - $890 = HEAP32[$bufpt>>2]|0; - $891 = (($890) + ($888)|0); - HEAP8[$891>>0] = $887; - $892 = HEAP8[$ch>>0]|0; - $893 = $892 << 24 >> 24; - $894 = HEAP8[$q>>0]|0; - $895 = $894 << 24 >> 24; - $896 = ($893|0)==($895|0); - if ($896) { - $897 = HEAP8[$ch>>0]|0; - $898 = HEAP32[$j>>2]|0; - $899 = (($898) + 1)|0; - HEAP32[$j>>2] = $899; - $900 = HEAP32[$bufpt>>2]|0; - $901 = (($900) + ($898)|0); - HEAP8[$901>>0] = $897; - } - $902 = HEAP32[$i2>>2]|0; - $903 = (($902) + 1)|0; - HEAP32[$i2>>2] = $903; - } - $904 = HEAP32[$needQuote>>2]|0; - $905 = ($904|0)!=(0); - if ($905) { - $906 = HEAP8[$q>>0]|0; - $907 = HEAP32[$j>>2]|0; - $908 = (($907) + 1)|0; - HEAP32[$j>>2] = $908; - $909 = HEAP32[$bufpt>>2]|0; - $910 = (($909) + ($907)|0); - HEAP8[$910>>0] = $906; - } - $911 = HEAP32[$j>>2]|0; - $912 = HEAP32[$bufpt>>2]|0; - $913 = (($912) + ($911)|0); - HEAP8[$913>>0] = 0; - $914 = HEAP32[$j>>2]|0; - HEAP32[$length>>2] = $914; - break; - } - case 12: { - $915 = HEAP32[$3>>2]|0; - $arglist_current46 = HEAP32[$915>>2]|0; - $916 = HEAP32[$arglist_current46>>2]|0; - $arglist_next47 = (($arglist_current46) + 4|0); - HEAP32[$915>>2] = $arglist_next47; - HEAP32[$pToken>>2] = $916; - $917 = HEAP32[$pToken>>2]|0; - $918 = ($917|0)!=(0|0); - if ($918) { - $919 = HEAP32[$pToken>>2]|0; - $920 = (($919) + 4|0); - $921 = HEAP32[$920>>2]|0; - $922 = ($921|0)!=(0); - if ($922) { - $923 = HEAP32[$0>>2]|0; - $924 = HEAP32[$pToken>>2]|0; - $925 = HEAP32[$924>>2]|0; - $926 = HEAP32[$pToken>>2]|0; - $927 = (($926) + 4|0); - $928 = HEAP32[$927>>2]|0; - _sqlite3StrAccumAppend($923,$925,$928); - } - } - HEAP32[$width>>2] = 0; - HEAP32[$length>>2] = 0; - break; - } - case 13: { - $929 = HEAP32[$3>>2]|0; - $arglist_current49 = HEAP32[$929>>2]|0; - $930 = HEAP32[$arglist_current49>>2]|0; - $arglist_next50 = (($arglist_current49) + 4|0); - HEAP32[$929>>2] = $arglist_next50; - HEAP32[$pSrc>>2] = $930; - $931 = HEAP32[$3>>2]|0; - $arglist_current52 = HEAP32[$931>>2]|0; - $932 = HEAP32[$arglist_current52>>2]|0; - $arglist_next53 = (($arglist_current52) + 4|0); - HEAP32[$931>>2] = $arglist_next53; - HEAP32[$k3>>2] = $932; - $933 = HEAP32[$k3>>2]|0; - $934 = HEAP32[$pSrc>>2]|0; - $935 = (($934) + 8|0); - $936 = (($935) + (($933*72)|0)|0); - HEAP32[$pItem>>2] = $936; - $937 = HEAP32[$pItem>>2]|0; - $938 = (($937) + 4|0); - $939 = HEAP32[$938>>2]|0; - $940 = ($939|0)!=(0|0); - if ($940) { - $941 = HEAP32[$0>>2]|0; - $942 = HEAP32[$pItem>>2]|0; - $943 = (($942) + 4|0); - $944 = HEAP32[$943>>2]|0; - _sqlite3StrAccumAppendAll($941,$944); - $945 = HEAP32[$0>>2]|0; - _sqlite3StrAccumAppend($945,19024,1); - } - $946 = HEAP32[$0>>2]|0; - $947 = HEAP32[$pItem>>2]|0; - $948 = (($947) + 8|0); - $949 = HEAP32[$948>>2]|0; - _sqlite3StrAccumAppendAll($946,$949); - HEAP32[$width>>2] = 0; - HEAP32[$length>>2] = 0; - break; - } - default: { - label = 283; - break L7; - } - } - } while(0); - if ((label|0) == 59) { - label = 0; - $156 = HEAP32[$infop>>2]|0; - $157 = (($156) + 2|0); - $158 = HEAP8[$157>>0]|0; - $159 = $158&255; - $160 = $159 & 1; - $161 = ($160|0)!=(0); - $162 = HEAP8[$bArgList>>0]|0; - $163 = ($162<<24>>24)!=(0); - do { - if ($161) { - do { - if ($163) { - $164 = HEAP32[$pArgList>>2]|0; - $165 = (_getIntArg($164)|0); - $166 = tempRet0; - $167 = $v; - $168 = $167; - HEAP32[$168>>2] = $165; - $169 = (($167) + 4)|0; - $170 = $169; - HEAP32[$170>>2] = $166; - } else { - $171 = HEAP8[$flag_longlong>>0]|0; - $172 = ($171<<24>>24)!=(0); - $173 = HEAP32[$3>>2]|0; - if ($172) { - $arglist_current19 = HEAP32[$173>>2]|0; - $174 = $arglist_current19; - $175 = $174; - $176 = HEAP32[$175>>2]|0; - $177 = (($174) + 4)|0; - $178 = $177; - $179 = HEAP32[$178>>2]|0; - $arglist_next20 = (($arglist_current19) + 8|0); - HEAP32[$173>>2] = $arglist_next20; - $180 = $v; - $181 = $180; - HEAP32[$181>>2] = $176; - $182 = (($180) + 4)|0; - $183 = $182; - HEAP32[$183>>2] = $179; - break; - } else { - $arglist_current22 = HEAP32[$173>>2]|0; - $184 = HEAP32[$arglist_current22>>2]|0; - $arglist_next23 = (($arglist_current22) + 4|0); - HEAP32[$173>>2] = $arglist_next23; - $185 = ($184|0)<(0); - $186 = $185 << 31 >> 31; - $187 = $v; - $188 = $187; - HEAP32[$188>>2] = $184; - $189 = (($187) + 4)|0; - $190 = $189; - HEAP32[$190>>2] = $186; - break; - } - } - } while(0); - $191 = $v; - $192 = $191; - $193 = HEAP32[$192>>2]|0; - $194 = (($191) + 4)|0; - $195 = $194; - $196 = HEAP32[$195>>2]|0; - $197 = ($196|0)<(0); - $198 = $v; - $199 = $198; - $200 = HEAP32[$199>>2]|0; - $201 = (($198) + 4)|0; - $202 = $201; - $203 = HEAP32[$202>>2]|0; - if ($197) { - $204 = ($200|0)==(0); - $205 = ($203|0)==(-2147483648); - $206 = $204 & $205; - if ($206) { - $207 = $longvalue; - $208 = $207; - HEAP32[$208>>2] = 0; - $209 = (($207) + 4)|0; - $210 = $209; - HEAP32[$210>>2] = -2147483648; - } else { - $211 = $v; - $212 = $211; - $213 = HEAP32[$212>>2]|0; - $214 = (($211) + 4)|0; - $215 = $214; - $216 = HEAP32[$215>>2]|0; - $217 = (_i64Subtract(0,0,($213|0),($216|0))|0); - $218 = tempRet0; - $219 = $longvalue; - $220 = $219; - HEAP32[$220>>2] = $217; - $221 = (($219) + 4)|0; - $222 = $221; - HEAP32[$222>>2] = $218; - } - HEAP8[$prefix>>0] = 45; - break; - } - $223 = $longvalue; - $224 = $223; - HEAP32[$224>>2] = $200; - $225 = (($223) + 4)|0; - $226 = $225; - HEAP32[$226>>2] = $203; - $227 = HEAP8[$flag_plussign>>0]|0; - $228 = ($227<<24>>24)!=(0); - if ($228) { - HEAP8[$prefix>>0] = 43; - break; - } - $229 = HEAP8[$flag_blanksign>>0]|0; - $230 = ($229<<24>>24)!=(0); - if ($230) { - HEAP8[$prefix>>0] = 32; - break; - } else { - HEAP8[$prefix>>0] = 0; - break; - } - } else { - do { - if ($163) { - $231 = HEAP32[$pArgList>>2]|0; - $232 = (_getIntArg($231)|0); - $233 = tempRet0; - $234 = $longvalue; - $235 = $234; - HEAP32[$235>>2] = $232; - $236 = (($234) + 4)|0; - $237 = $236; - HEAP32[$237>>2] = $233; - } else { - $238 = HEAP8[$flag_longlong>>0]|0; - $239 = ($238<<24>>24)!=(0); - $240 = HEAP32[$3>>2]|0; - if ($239) { - $arglist_current25 = HEAP32[$240>>2]|0; - $241 = $arglist_current25; - $242 = $241; - $243 = HEAP32[$242>>2]|0; - $244 = (($241) + 4)|0; - $245 = $244; - $246 = HEAP32[$245>>2]|0; - $arglist_next26 = (($arglist_current25) + 8|0); - HEAP32[$240>>2] = $arglist_next26; - $247 = $longvalue; - $248 = $247; - HEAP32[$248>>2] = $243; - $249 = (($247) + 4)|0; - $250 = $249; - HEAP32[$250>>2] = $246; - break; - } else { - $arglist_current28 = HEAP32[$240>>2]|0; - $251 = HEAP32[$arglist_current28>>2]|0; - $arglist_next29 = (($arglist_current28) + 4|0); - HEAP32[$240>>2] = $arglist_next29; - $252 = $longvalue; - $253 = $252; - HEAP32[$253>>2] = $251; - $254 = (($252) + 4)|0; - $255 = $254; - HEAP32[$255>>2] = 0; - break; - } - } - } while(0); - HEAP8[$prefix>>0] = 0; - } - } while(0); - $256 = $longvalue; - $257 = $256; - $258 = HEAP32[$257>>2]|0; - $259 = (($256) + 4)|0; - $260 = $259; - $261 = HEAP32[$260>>2]|0; - $262 = ($258|0)==(0); - $263 = ($261|0)==(0); - $264 = $262 & $263; - if ($264) { - HEAP8[$flag_alternateform>>0] = 0; - } - $265 = HEAP8[$flag_zeropad>>0]|0; - $266 = $265&255; - $267 = ($266|0)!=(0); - if ($267) { - $268 = HEAP32[$precision>>2]|0; - $269 = HEAP32[$width>>2]|0; - $270 = HEAP8[$prefix>>0]|0; - $271 = $270 << 24 >> 24; - $272 = ($271|0)!=(0); - $273 = $272&1; - $274 = (($269) - ($273))|0; - $275 = ($268|0)<($274|0); - if ($275) { - $276 = HEAP32[$width>>2]|0; - $277 = HEAP8[$prefix>>0]|0; - $278 = $277 << 24 >> 24; - $279 = ($278|0)!=(0); - $280 = $279&1; - $281 = (($276) - ($280))|0; - HEAP32[$precision>>2] = $281; - } - } - $282 = HEAP32[$precision>>2]|0; - $283 = ($282|0)<(60); - if ($283) { - HEAP32[$nOut>>2] = 70; - HEAP32[$zOut>>2] = $buf; - } else { - $284 = HEAP32[$precision>>2]|0; - $285 = (($284) + 10)|0; - HEAP32[$nOut>>2] = $285; - $286 = HEAP32[$nOut>>2]|0; - $287 = (_sqlite3Malloc($286)|0); - HEAP32[$zExtra>>2] = $287; - HEAP32[$zOut>>2] = $287; - $288 = HEAP32[$zOut>>2]|0; - $289 = ($288|0)==(0|0); - if ($289) { - label = 89; - break; - } - } - $291 = HEAP32[$nOut>>2]|0; - $292 = (($291) - 1)|0; - $293 = HEAP32[$zOut>>2]|0; - $294 = (($293) + ($292)|0); - HEAP32[$bufpt>>2] = $294; - $295 = HEAP8[$xtype>>0]|0; - $296 = $295&255; - $297 = ($296|0)==(16); - if ($297) { - $298 = $longvalue; - $299 = $298; - $300 = HEAP32[$299>>2]|0; - $301 = (($298) + 4)|0; - $302 = $301; - $303 = HEAP32[$302>>2]|0; - $304 = (___uremdi3(($300|0),($303|0),10,0)|0); - $305 = tempRet0; - HEAP32[$x>>2] = $304; - $306 = HEAP32[$x>>2]|0; - $307 = ($306|0)>=(4); - if ($307) { - label = 93; - } else { - $308 = $longvalue; - $309 = $308; - $310 = HEAP32[$309>>2]|0; - $311 = (($308) + 4)|0; - $312 = $311; - $313 = HEAP32[$312>>2]|0; - $314 = (___udivdi3(($310|0),($313|0),10,0)|0); - $315 = tempRet0; - $316 = (___uremdi3(($314|0),($315|0),10,0)|0); - $317 = tempRet0; - $318 = ($316|0)==(1); - $319 = ($317|0)==(0); - $320 = $318 & $319; - if ($320) { - label = 93; - } - } - if ((label|0) == 93) { - label = 0; - HEAP32[$x>>2] = 0; - } - $321 = HEAP32[$x>>2]|0; - $322 = $321<<1; - $323 = (($322) + 1)|0; - $324 = (38408 + ($323)|0); - $325 = HEAP8[$324>>0]|0; - $326 = HEAP32[$bufpt>>2]|0; - $327 = (($326) + -1|0); - HEAP32[$bufpt>>2] = $327; - HEAP8[$327>>0] = $325; - $328 = HEAP32[$x>>2]|0; - $329 = $328<<1; - $330 = (38408 + ($329)|0); - $331 = HEAP8[$330>>0]|0; - $332 = HEAP32[$bufpt>>2]|0; - $333 = (($332) + -1|0); - HEAP32[$bufpt>>2] = $333; - HEAP8[$333>>0] = $331; - } - $334 = HEAP32[$infop>>2]|0; - $335 = (($334) + 4|0); - $336 = HEAP8[$335>>0]|0; - $337 = $336&255; - $338 = (38424 + ($337)|0); - HEAP32[$cset>>2] = $338; - $339 = HEAP32[$infop>>2]|0; - $340 = (($339) + 1|0); - $341 = HEAP8[$340>>0]|0; - HEAP8[$base>>0] = $341; - while(1) { - $342 = $longvalue; - $343 = $342; - $344 = HEAP32[$343>>2]|0; - $345 = (($342) + 4)|0; - $346 = $345; - $347 = HEAP32[$346>>2]|0; - $348 = HEAP8[$base>>0]|0; - $349 = $348&255; - $350 = (___uremdi3(($344|0),($347|0),($349|0),0)|0); - $351 = tempRet0; - $352 = HEAP32[$cset>>2]|0; - $353 = (($352) + ($350)|0); - $354 = HEAP8[$353>>0]|0; - $355 = HEAP32[$bufpt>>2]|0; - $356 = (($355) + -1|0); - HEAP32[$bufpt>>2] = $356; - HEAP8[$356>>0] = $354; - $357 = $longvalue; - $358 = $357; - $359 = HEAP32[$358>>2]|0; - $360 = (($357) + 4)|0; - $361 = $360; - $362 = HEAP32[$361>>2]|0; - $363 = HEAP8[$base>>0]|0; - $364 = $363&255; - $365 = (___udivdi3(($359|0),($362|0),($364|0),0)|0); - $366 = tempRet0; - $367 = $longvalue; - $368 = $367; - HEAP32[$368>>2] = $365; - $369 = (($367) + 4)|0; - $370 = $369; - HEAP32[$370>>2] = $366; - $371 = $longvalue; - $372 = $371; - $373 = HEAP32[$372>>2]|0; - $374 = (($371) + 4)|0; - $375 = $374; - $376 = HEAP32[$375>>2]|0; - $377 = ($376>>>0)>(0); - $378 = ($376|0)==(0); - $379 = ($373>>>0)>(0); - $380 = $378 & $379; - $381 = $377 | $380; - if (!($381)) { - break; - } - } - $382 = HEAP32[$nOut>>2]|0; - $383 = (($382) - 1)|0; - $384 = HEAP32[$zOut>>2]|0; - $385 = (($384) + ($383)|0); - $386 = HEAP32[$bufpt>>2]|0; - $387 = $385; - $388 = $386; - $389 = (($387) - ($388))|0; - HEAP32[$length>>2] = $389; - $390 = HEAP32[$precision>>2]|0; - $391 = HEAP32[$length>>2]|0; - $392 = (($390) - ($391))|0; - HEAP32[$idx>>2] = $392; - while(1) { - $393 = HEAP32[$idx>>2]|0; - $394 = ($393|0)>(0); - if (!($394)) { - break; - } - $395 = HEAP32[$bufpt>>2]|0; - $396 = (($395) + -1|0); - HEAP32[$bufpt>>2] = $396; - HEAP8[$396>>0] = 48; - $397 = HEAP32[$idx>>2]|0; - $398 = (($397) + -1)|0; - HEAP32[$idx>>2] = $398; - } - $399 = HEAP8[$prefix>>0]|0; - $400 = ($399<<24>>24)!=(0); - if ($400) { - $401 = HEAP8[$prefix>>0]|0; - $402 = HEAP32[$bufpt>>2]|0; - $403 = (($402) + -1|0); - HEAP32[$bufpt>>2] = $403; - HEAP8[$403>>0] = $401; - } - $404 = HEAP8[$flag_alternateform>>0]|0; - $405 = $404&255; - $406 = ($405|0)!=(0); - L364: do { - if ($406) { - $407 = HEAP32[$infop>>2]|0; - $408 = (($407) + 5|0); - $409 = HEAP8[$408>>0]|0; - $410 = $409&255; - $411 = ($410|0)!=(0); - if ($411) { - $412 = HEAP32[$infop>>2]|0; - $413 = (($412) + 5|0); - $414 = HEAP8[$413>>0]|0; - $415 = $414&255; - $416 = (38464 + ($415)|0); - HEAP32[$pre>>2] = $416; - while(1) { - $417 = HEAP32[$pre>>2]|0; - $418 = HEAP8[$417>>0]|0; - HEAP8[$x1>>0] = $418; - $419 = $418 << 24 >> 24; - $420 = ($419|0)!=(0); - if (!($420)) { - break L364; - } - $421 = HEAP8[$x1>>0]|0; - $422 = HEAP32[$bufpt>>2]|0; - $423 = (($422) + -1|0); - HEAP32[$bufpt>>2] = $423; - HEAP8[$423>>0] = $421; - $424 = HEAP32[$pre>>2]|0; - $425 = (($424) + 1|0); - HEAP32[$pre>>2] = $425; - } - } - } - } while(0); - $426 = HEAP32[$nOut>>2]|0; - $427 = (($426) - 1)|0; - $428 = HEAP32[$zOut>>2]|0; - $429 = (($428) + ($427)|0); - $430 = HEAP32[$bufpt>>2]|0; - $431 = $429; - $432 = $430; - $433 = (($431) - ($432))|0; - HEAP32[$length>>2] = $433; - } - $950 = HEAP32[$length>>2]|0; - $951 = HEAP32[$width>>2]|0; - $952 = (($951) - ($950))|0; - HEAP32[$width>>2] = $952; - $953 = HEAP32[$width>>2]|0; - $954 = ($953|0)>(0); - if ($954) { - $955 = HEAP8[$flag_leftjustify>>0]|0; - $956 = ($955<<24>>24)!=(0); - if (!($956)) { - $957 = HEAP32[$0>>2]|0; - $958 = HEAP32[$width>>2]|0; - _sqlite3AppendSpace($957,$958); - } - } - $959 = HEAP32[$0>>2]|0; - $960 = HEAP32[$bufpt>>2]|0; - $961 = HEAP32[$length>>2]|0; - _sqlite3StrAccumAppend($959,$960,$961); - $962 = HEAP32[$width>>2]|0; - $963 = ($962|0)>(0); - if ($963) { - $964 = HEAP8[$flag_leftjustify>>0]|0; - $965 = $964&255; - $966 = ($965|0)!=(0); - if ($966) { - $967 = HEAP32[$0>>2]|0; - $968 = HEAP32[$width>>2]|0; - _sqlite3AppendSpace($967,$968); - } - } - $969 = HEAP32[$zExtra>>2]|0; - $970 = ($969|0)!=(0|0); - if ($970) { - $971 = HEAP32[$zExtra>>2]|0; - _sqlite3_free($971); - } - $972 = HEAP32[$2>>2]|0; - $973 = (($972) + 1|0); - HEAP32[$2>>2] = $973; - } - if ((label|0) == 13) { - $44 = HEAP32[$0>>2]|0; - _sqlite3StrAccumAppend($44,38256,1); - STACKTOP = sp;return; - } - else if ((label|0) == 89) { - $290 = HEAP32[$0>>2]|0; - _setStrAccumError($290,1); - STACKTOP = sp;return; - } - else if ((label|0) == 171) { - $593 = HEAP32[$0>>2]|0; - _setStrAccumError($593,1); - STACKTOP = sp;return; - } - else if ((label|0) == 255) { - $872 = HEAP32[$0>>2]|0; - _setStrAccumError($872,1); - STACKTOP = sp;return; - } - else if ((label|0) == 283) { - STACKTOP = sp;return; - } -} -function _sqlite3StrAccumFinish($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; - var $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - do { - if ($4) { - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 12|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 8|0); - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + ($7)|0); - HEAP8[$11>>0] = 0; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 24|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14&255; - $16 = ($15|0)!=(0); - if ($16) { - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 8|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 4|0); - $22 = HEAP32[$21>>2]|0; - $23 = ($19|0)==($22|0); - if ($23) { - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 24|0); - $26 = HEAP8[$25>>0]|0; - $27 = $26&255; - $28 = ($27|0)==(1); - $29 = HEAP32[$0>>2]|0; - if ($28) { - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 12|0); - $33 = HEAP32[$32>>2]|0; - $34 = (($33) + 1)|0; - $35 = (_sqlite3DbMallocRaw($30,$34)|0); - $36 = HEAP32[$0>>2]|0; - $37 = (($36) + 8|0); - HEAP32[$37>>2] = $35; - } else { - $38 = (($29) + 12|0); - $39 = HEAP32[$38>>2]|0; - $40 = (($39) + 1)|0; - $41 = (_sqlite3_malloc($40)|0); - $42 = HEAP32[$0>>2]|0; - $43 = (($42) + 8|0); - HEAP32[$43>>2] = $41; - } - $44 = HEAP32[$0>>2]|0; - $45 = (($44) + 8|0); - $46 = HEAP32[$45>>2]|0; - $47 = ($46|0)!=(0|0); - $48 = HEAP32[$0>>2]|0; - if ($47) { - $49 = (($48) + 8|0); - $50 = HEAP32[$49>>2]|0; - $51 = HEAP32[$0>>2]|0; - $52 = (($51) + 4|0); - $53 = HEAP32[$52>>2]|0; - $54 = HEAP32[$0>>2]|0; - $55 = (($54) + 12|0); - $56 = HEAP32[$55>>2]|0; - $57 = (($56) + 1)|0; - _memcpy(($50|0),($53|0),($57|0))|0; - break; - } else { - _setStrAccumError($48,1); - break; - } - } - } - } - } while(0); - $58 = HEAP32[$0>>2]|0; - $59 = (($58) + 8|0); - $60 = HEAP32[$59>>2]|0; - STACKTOP = sp;return ($60|0); -} -function _sqlite3_mprintf($zFormat,$varargs) { - $zFormat = $zFormat|0; - $varargs = $varargs|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $ap = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $ap = sp + 8|0; - $z = sp; - HEAP32[$1>>2] = $zFormat; - $2 = (_sqlite3_initialize()|0); - $3 = ($2|0)!=(0); - if ($3) { - HEAP32[$0>>2] = 0; - $7 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($7|0); - } else { - HEAP32[$ap>>2] = $varargs; - $4 = HEAP32[$1>>2]|0; - $5 = (_sqlite3_vmprintf($4,$ap)|0); - HEAP32[$z>>2] = $5; - $6 = HEAP32[$z>>2]|0; - HEAP32[$0>>2] = $6; - $7 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($7|0); - } - return 0|0; -} -function _sqlite3_vsnprintf($n,$zBuf,$zFormat,$ap) { - $n = $n|0; - $zBuf = $zBuf|0; - $zFormat = $zFormat|0; - $ap = $ap|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $acc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $4 = sp + 28|0; - $acc = sp; - HEAP32[$1>>2] = $n; - HEAP32[$2>>2] = $zBuf; - HEAP32[$3>>2] = $zFormat; - HEAP32[$4>>2] = $ap; - $5 = HEAP32[$1>>2]|0; - $6 = ($5|0)<=(0); - $7 = HEAP32[$2>>2]|0; - if ($6) { - HEAP32[$0>>2] = $7; - $13 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($13|0); - } else { - $8 = HEAP32[$1>>2]|0; - _sqlite3StrAccumInit($acc,$7,$8,0); - $9 = (($acc) + 24|0); - HEAP8[$9>>0] = 0; - $10 = HEAP32[$3>>2]|0; - $11 = HEAP32[$4>>2]|0; - _sqlite3VXPrintf($acc,0,$10,$11); - $12 = (_sqlite3StrAccumFinish($acc)|0); - HEAP32[$0>>2] = $12; - $13 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($13|0); - } - return 0|0; -} -function _sqlite3_snprintf($n,$zBuf,$zFormat,$varargs) { - $n = $n|0; - $zBuf = $zBuf|0; - $zFormat = $zFormat|0; - $varargs = $varargs|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $ap = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $z = sp + 16|0; - $ap = sp; - HEAP32[$0>>2] = $n; - HEAP32[$1>>2] = $zBuf; - HEAP32[$2>>2] = $zFormat; - HEAP32[$ap>>2] = $varargs; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = (_sqlite3_vsnprintf($3,$4,$5,$ap)|0); - HEAP32[$z>>2] = $6; - $7 = HEAP32[$z>>2]|0; - STACKTOP = sp;return ($7|0); -} -function _sqlite3_log($iErrCode,$zFormat,$varargs) { - $iErrCode = $iErrCode|0; - $zFormat = $zFormat|0; - $varargs = $varargs|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $ap = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $ap = sp; - HEAP32[$0>>2] = $iErrCode; - HEAP32[$1>>2] = $zFormat; - $2 = HEAP32[((38512 + 252|0))>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - STACKTOP = sp;return; - } - HEAP32[$ap>>2] = $varargs; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$1>>2]|0; - _renderLogMsg($4,$5,$ap); - STACKTOP = sp;return; -} -function _renderLogMsg($iErrCode,$zFormat,$ap) { - $iErrCode = $iErrCode|0; - $zFormat = $zFormat|0; - $ap = $ap|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $acc = 0, $zMsg = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 256|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $acc = sp; - $zMsg = sp + 40|0; - HEAP32[$0>>2] = $iErrCode; - HEAP32[$1>>2] = $zFormat; - HEAP32[$2>>2] = $ap; - _sqlite3StrAccumInit($acc,$zMsg,210,0); - $3 = (($acc) + 24|0); - HEAP8[$3>>0] = 0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - _sqlite3VXPrintf($acc,0,$4,$5); - $6 = HEAP32[((38512 + 252|0))>>2]|0; - $7 = HEAP32[((38512 + 256|0))>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (_sqlite3StrAccumFinish($acc)|0); - FUNCTION_TABLE_viii[$6 & 63]($7,$8,$9); - STACKTOP = sp;return; -} -function _sqlite3_randomness($N,$pBuf) { - $N = $N|0; - $pBuf = $pBuf|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $i = 0, $k = 0, $t = 0, $zBuf = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 288|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $t = sp + 272|0; - $zBuf = sp + 4|0; - $i = sp; - $k = sp + 16|0; - HEAP32[$0>>2] = $N; - HEAP32[$1>>2] = $pBuf; - $2 = HEAP32[$1>>2]|0; - HEAP32[$zBuf>>2] = $2; - $3 = HEAP32[$0>>2]|0; - $4 = ($3|0)<=(0); - if ($4) { - HEAP8[432>>0] = 0; - STACKTOP = sp;return; - } - $5 = HEAP8[432>>0]|0; - $6 = ($5<<24>>24)!=(0); - if (!($6)) { - HEAP8[((432 + 2|0))>>0] = 0; - HEAP8[((432 + 1|0))>>0] = 0; - $7 = (_sqlite3_vfs_find(0)|0); - (_sqlite3OsRandomness($7,256,$k)|0); - HEAP32[$i>>2] = 0; - while(1) { - $8 = HEAP32[$i>>2]|0; - $9 = ($8|0)<(256); - if (!($9)) { - break; - } - $10 = HEAP32[$i>>2]|0; - $11 = $10&255; - $12 = HEAP32[$i>>2]|0; - $13 = (((432 + 3|0)) + ($12)|0); - HEAP8[$13>>0] = $11; - $14 = HEAP32[$i>>2]|0; - $15 = (($14) + 1)|0; - HEAP32[$i>>2] = $15; - } - HEAP32[$i>>2] = 0; - while(1) { - $16 = HEAP32[$i>>2]|0; - $17 = ($16|0)<(256); - if (!($17)) { - break; - } - $18 = HEAP32[$i>>2]|0; - $19 = (((432 + 3|0)) + ($18)|0); - $20 = HEAP8[$19>>0]|0; - $21 = $20&255; - $22 = HEAP32[$i>>2]|0; - $23 = (($k) + ($22)|0); - $24 = HEAP8[$23>>0]|0; - $25 = $24 << 24 >> 24; - $26 = (($21) + ($25))|0; - $27 = HEAP8[((432 + 2|0))>>0]|0; - $28 = $27&255; - $29 = (($28) + ($26))|0; - $30 = $29&255; - HEAP8[((432 + 2|0))>>0] = $30; - $31 = HEAP8[((432 + 2|0))>>0]|0; - $32 = $31&255; - $33 = (((432 + 3|0)) + ($32)|0); - $34 = HEAP8[$33>>0]|0; - HEAP8[$t>>0] = $34; - $35 = HEAP32[$i>>2]|0; - $36 = (((432 + 3|0)) + ($35)|0); - $37 = HEAP8[$36>>0]|0; - $38 = HEAP8[((432 + 2|0))>>0]|0; - $39 = $38&255; - $40 = (((432 + 3|0)) + ($39)|0); - HEAP8[$40>>0] = $37; - $41 = HEAP8[$t>>0]|0; - $42 = HEAP32[$i>>2]|0; - $43 = (((432 + 3|0)) + ($42)|0); - HEAP8[$43>>0] = $41; - $44 = HEAP32[$i>>2]|0; - $45 = (($44) + 1)|0; - HEAP32[$i>>2] = $45; - } - HEAP8[432>>0] = 1; - } - while(1) { - $46 = HEAP8[((432 + 1|0))>>0]|0; - $47 = (($46) + 1)<<24>>24; - HEAP8[((432 + 1|0))>>0] = $47; - $48 = HEAP8[((432 + 1|0))>>0]|0; - $49 = $48&255; - $50 = (((432 + 3|0)) + ($49)|0); - $51 = HEAP8[$50>>0]|0; - HEAP8[$t>>0] = $51; - $52 = HEAP8[$t>>0]|0; - $53 = $52&255; - $54 = HEAP8[((432 + 2|0))>>0]|0; - $55 = $54&255; - $56 = (($55) + ($53))|0; - $57 = $56&255; - HEAP8[((432 + 2|0))>>0] = $57; - $58 = HEAP8[((432 + 2|0))>>0]|0; - $59 = $58&255; - $60 = (((432 + 3|0)) + ($59)|0); - $61 = HEAP8[$60>>0]|0; - $62 = HEAP8[((432 + 1|0))>>0]|0; - $63 = $62&255; - $64 = (((432 + 3|0)) + ($63)|0); - HEAP8[$64>>0] = $61; - $65 = HEAP8[$t>>0]|0; - $66 = HEAP8[((432 + 2|0))>>0]|0; - $67 = $66&255; - $68 = (((432 + 3|0)) + ($67)|0); - HEAP8[$68>>0] = $65; - $69 = HEAP8[((432 + 1|0))>>0]|0; - $70 = $69&255; - $71 = (((432 + 3|0)) + ($70)|0); - $72 = HEAP8[$71>>0]|0; - $73 = $72&255; - $74 = HEAP8[$t>>0]|0; - $75 = $74&255; - $76 = (($75) + ($73))|0; - $77 = $76&255; - HEAP8[$t>>0] = $77; - $78 = HEAP8[$t>>0]|0; - $79 = $78&255; - $80 = (((432 + 3|0)) + ($79)|0); - $81 = HEAP8[$80>>0]|0; - $82 = HEAP32[$zBuf>>2]|0; - $83 = (($82) + 1|0); - HEAP32[$zBuf>>2] = $83; - HEAP8[$82>>0] = $81; - $84 = HEAP32[$0>>2]|0; - $85 = (($84) + -1)|0; - HEAP32[$0>>2] = $85; - $86 = ($85|0)!=(0); - if (!($86)) { - break; - } - } - STACKTOP = sp;return; -} -function _sqlite3OsRandomness($pVfs,$nByte,$zBufOut) { - $pVfs = $pVfs|0; - $nByte = $nByte|0; - $zBufOut = $zBufOut|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $pVfs; - HEAP32[$1>>2] = $nByte; - HEAP32[$2>>2] = $zBufOut; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 56|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = (FUNCTION_TABLE_iiii[$5 & 15]($6,$7,$8)|0); - STACKTOP = sp;return ($9|0); -} -function _sqlite3_stricmp($zLeft,$zRight) { - $zLeft = $zLeft|0; - $zRight = $zRight|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $b = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $a = sp + 4|0; - $b = sp; - HEAP32[$0>>2] = $zLeft; - HEAP32[$1>>2] = $zRight; - $2 = HEAP32[$0>>2]|0; - HEAP32[$a>>2] = $2; - $3 = HEAP32[$1>>2]|0; - HEAP32[$b>>2] = $3; - while(1) { - $4 = HEAP32[$a>>2]|0; - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = ($6|0)!=(0); - if ($7) { - $8 = HEAP32[$a>>2]|0; - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - $11 = (696 + ($10)|0); - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = HEAP32[$b>>2]|0; - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - $17 = (696 + ($16)|0); - $18 = HEAP8[$17>>0]|0; - $19 = $18&255; - $20 = ($13|0)==($19|0); - $37 = $20; - } else { - $37 = 0; - } - $21 = HEAP32[$a>>2]|0; - if (!($37)) { - break; - } - $22 = (($21) + 1|0); - HEAP32[$a>>2] = $22; - $23 = HEAP32[$b>>2]|0; - $24 = (($23) + 1|0); - HEAP32[$b>>2] = $24; - } - $25 = HEAP8[$21>>0]|0; - $26 = $25&255; - $27 = (696 + ($26)|0); - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = HEAP32[$b>>2]|0; - $31 = HEAP8[$30>>0]|0; - $32 = $31&255; - $33 = (696 + ($32)|0); - $34 = HEAP8[$33>>0]|0; - $35 = $34&255; - $36 = (($29) - ($35))|0; - STACKTOP = sp;return ($36|0); -} -function _sqlite3_os_init() { - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $i = sp; - HEAP32[$i>>2] = 0; - while(1) { - $0 = HEAP32[$i>>2]|0; - $1 = ($0>>>0)<(4); - if (!($1)) { - break; - } - $2 = HEAP32[$i>>2]|0; - $3 = (952 + (($2*88)|0)|0); - $4 = HEAP32[$i>>2]|0; - $5 = ($4|0)==(0); - $6 = $5&1; - (_sqlite3_vfs_register($3,$6)|0); - $7 = HEAP32[$i>>2]|0; - $8 = (($7) + 1)|0; - HEAP32[$i>>2] = $8; - } - STACKTOP = sp;return 0; -} -function _unixOpen($pVfs,$zPath,$pFile,$flags,$pOutFlags) { - $pVfs = $pVfs|0; - $zPath = $zPath|0; - $pFile = $pFile|0; - $flags = $flags|0; - $pOutFlags = $pOutFlags|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; - var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; - var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; - var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; - var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $ctrlFlags = 0, $eType = 0, $fd = 0, $gid = 0, $isCreate = 0, $isDelete = 0, $isExclusive = 0; - var $isReadWrite = 0, $isReadonly = 0, $noLock = 0, $openFlags = 0, $openMode = 0, $or$cond = 0, $p = 0, $pUnused = 0, $rc = 0, $syncDir = 0, $uid = 0, $zName = 0, $zTmpname = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 624|0; - $0 = sp + 92|0; - $1 = sp + 88|0; - $2 = sp + 84|0; - $3 = sp + 80|0; - $4 = sp + 76|0; - $5 = sp + 72|0; - $p = sp + 68|0; - $fd = sp + 64|0; - $openFlags = sp + 60|0; - $eType = sp + 56|0; - $noLock = sp + 52|0; - $rc = sp + 48|0; - $ctrlFlags = sp + 44|0; - $isExclusive = sp + 40|0; - $isDelete = sp + 36|0; - $isCreate = sp + 32|0; - $isReadonly = sp + 28|0; - $isReadWrite = sp + 24|0; - $syncDir = sp + 20|0; - $zTmpname = sp + 96|0; - $zName = sp + 16|0; - $pUnused = sp + 12|0; - $openMode = sp + 8|0; - $uid = sp + 4|0; - $gid = sp; - HEAP32[$1>>2] = $pVfs; - HEAP32[$2>>2] = $zPath; - HEAP32[$3>>2] = $pFile; - HEAP32[$4>>2] = $flags; - HEAP32[$5>>2] = $pOutFlags; - $6 = HEAP32[$3>>2]|0; - HEAP32[$p>>2] = $6; - HEAP32[$fd>>2] = -1; - HEAP32[$openFlags>>2] = 0; - $7 = HEAP32[$4>>2]|0; - $8 = $7 & -256; - HEAP32[$eType>>2] = $8; - HEAP32[$rc>>2] = 0; - HEAP32[$ctrlFlags>>2] = 0; - $9 = HEAP32[$4>>2]|0; - $10 = $9 & 16; - HEAP32[$isExclusive>>2] = $10; - $11 = HEAP32[$4>>2]|0; - $12 = $11 & 8; - HEAP32[$isDelete>>2] = $12; - $13 = HEAP32[$4>>2]|0; - $14 = $13 & 4; - HEAP32[$isCreate>>2] = $14; - $15 = HEAP32[$4>>2]|0; - $16 = $15 & 1; - HEAP32[$isReadonly>>2] = $16; - $17 = HEAP32[$4>>2]|0; - $18 = $17 & 2; - HEAP32[$isReadWrite>>2] = $18; - $19 = HEAP32[$isCreate>>2]|0; - $20 = ($19|0)!=(0); - if ($20) { - $21 = HEAP32[$eType>>2]|0; - $22 = ($21|0)==(16384); - $23 = HEAP32[$eType>>2]|0; - $24 = ($23|0)==(2048); - $or$cond = $22 | $24; - if ($or$cond) { - $28 = 1; - } else { - $25 = HEAP32[$eType>>2]|0; - $26 = ($25|0)==(524288); - $28 = $26; - } - } else { - $28 = 0; - } - $27 = $28&1; - HEAP32[$syncDir>>2] = $27; - $29 = HEAP32[$2>>2]|0; - HEAP32[$zName>>2] = $29; - $30 = HEAP32[37992>>2]|0; - $31 = (_getpid()|0); - $32 = ($30|0)!=($31|0); - if ($32) { - $33 = (_getpid()|0); - HEAP32[37992>>2] = $33; - _sqlite3_randomness(0,0); - } - $34 = HEAP32[$p>>2]|0; - dest=$34+0|0; stop=dest+44|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $35 = HEAP32[$eType>>2]|0; - $36 = ($35|0)==(256); - $37 = HEAP32[$zName>>2]|0; - do { - if ($36) { - $38 = HEAP32[$4>>2]|0; - $39 = (_findReusableFd($37,$38)|0); - HEAP32[$pUnused>>2] = $39; - $40 = HEAP32[$pUnused>>2]|0; - $41 = ($40|0)!=(0|0); - if ($41) { - $42 = HEAP32[$pUnused>>2]|0; - $43 = HEAP32[$42>>2]|0; - HEAP32[$fd>>2] = $43; - } else { - $44 = (_sqlite3_malloc(12)|0); - HEAP32[$pUnused>>2] = $44; - $45 = HEAP32[$pUnused>>2]|0; - $46 = ($45|0)!=(0|0); - if (!($46)) { - HEAP32[$0>>2] = 7; - $172 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($172|0); - } - } - $47 = HEAP32[$pUnused>>2]|0; - $48 = HEAP32[$p>>2]|0; - $49 = (($48) + 28|0); - HEAP32[$49>>2] = $47; - } else { - $50 = ($37|0)!=(0|0); - if (!($50)) { - $51 = (_unixGetTempname(514,$zTmpname)|0); - HEAP32[$rc>>2] = $51; - $52 = HEAP32[$rc>>2]|0; - $53 = ($52|0)!=(0); - if (!($53)) { - HEAP32[$zName>>2] = $zTmpname; - break; - } - $54 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $54; - $172 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($172|0); - } - } - } while(0); - $55 = HEAP32[$isReadonly>>2]|0; - $56 = ($55|0)!=(0); - if ($56) { - $57 = HEAP32[$openFlags>>2]|0; - HEAP32[$openFlags>>2] = $57; - } - $58 = HEAP32[$isReadWrite>>2]|0; - $59 = ($58|0)!=(0); - if ($59) { - $60 = HEAP32[$openFlags>>2]|0; - $61 = $60 | 2; - HEAP32[$openFlags>>2] = $61; - } - $62 = HEAP32[$isCreate>>2]|0; - $63 = ($62|0)!=(0); - if ($63) { - $64 = HEAP32[$openFlags>>2]|0; - $65 = $64 | 64; - HEAP32[$openFlags>>2] = $65; - } - $66 = HEAP32[$isExclusive>>2]|0; - $67 = ($66|0)!=(0); - if ($67) { - $68 = HEAP32[$openFlags>>2]|0; - $69 = $68 | 131200; - HEAP32[$openFlags>>2] = $69; - } - $70 = HEAP32[$openFlags>>2]|0; - HEAP32[$openFlags>>2] = $70; - $71 = HEAP32[$fd>>2]|0; - $72 = ($71|0)<(0); - do { - if ($72) { - $73 = HEAP32[$zName>>2]|0; - $74 = HEAP32[$4>>2]|0; - $75 = (_findCreateFileMode($73,$74,$openMode,$uid,$gid)|0); - HEAP32[$rc>>2] = $75; - $76 = HEAP32[$rc>>2]|0; - $77 = ($76|0)!=(0); - if ($77) { - $78 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $78; - $172 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($172|0); - } - $79 = HEAP32[$zName>>2]|0; - $80 = HEAP32[$openFlags>>2]|0; - $81 = HEAP32[$openMode>>2]|0; - $82 = (_robust_open($79,$80,$81)|0); - HEAP32[$fd>>2] = $82; - $83 = HEAP32[$fd>>2]|0; - $84 = ($83|0)<(0); - if ($84) { - $85 = (___errno_location()|0); - $86 = HEAP32[$85>>2]|0; - $87 = ($86|0)!=(21); - if ($87) { - $88 = HEAP32[$isReadWrite>>2]|0; - $89 = ($88|0)!=(0); - if ($89) { - $90 = HEAP32[$isExclusive>>2]|0; - $91 = ($90|0)!=(0); - if (!($91)) { - $92 = HEAP32[$4>>2]|0; - $93 = $92 & -7; - HEAP32[$4>>2] = $93; - $94 = HEAP32[$openFlags>>2]|0; - $95 = $94 & -67; - HEAP32[$openFlags>>2] = $95; - $96 = HEAP32[$4>>2]|0; - $97 = $96 | 1; - HEAP32[$4>>2] = $97; - $98 = HEAP32[$openFlags>>2]|0; - HEAP32[$openFlags>>2] = $98; - HEAP32[$isReadonly>>2] = 1; - $99 = HEAP32[$zName>>2]|0; - $100 = HEAP32[$openFlags>>2]|0; - $101 = HEAP32[$openMode>>2]|0; - $102 = (_robust_open($99,$100,$101)|0); - HEAP32[$fd>>2] = $102; - } - } - } - } - $103 = HEAP32[$fd>>2]|0; - $104 = ($103|0)<(0); - if ($104) { - $105 = (_sqlite3CantopenError(29678)|0); - $106 = HEAP32[$zName>>2]|0; - $107 = (_unixLogErrorAtLine($105,37408,$106,29678)|0); - HEAP32[$rc>>2] = $107; - break; - } - $108 = HEAP32[$4>>2]|0; - $109 = $108 & 526336; - $110 = ($109|0)!=(0); - if ($110) { - $111 = HEAP32[((37064 + 244|0))>>2]|0; - $112 = HEAP32[$fd>>2]|0; - $113 = HEAP32[$uid>>2]|0; - $114 = HEAP32[$gid>>2]|0; - (FUNCTION_TABLE_iiii[$111 & 15]($112,$113,$114)|0); - label = 36; - } else { - label = 36; - } - } else { - label = 36; - } - } while(0); - if ((label|0) == 36) { - $115 = HEAP32[$5>>2]|0; - $116 = ($115|0)!=(0|0); - if ($116) { - $117 = HEAP32[$4>>2]|0; - $118 = HEAP32[$5>>2]|0; - HEAP32[$118>>2] = $117; - } - $119 = HEAP32[$p>>2]|0; - $120 = (($119) + 28|0); - $121 = HEAP32[$120>>2]|0; - $122 = ($121|0)!=(0|0); - if ($122) { - $123 = HEAP32[$fd>>2]|0; - $124 = HEAP32[$p>>2]|0; - $125 = (($124) + 28|0); - $126 = HEAP32[$125>>2]|0; - HEAP32[$126>>2] = $123; - $127 = HEAP32[$4>>2]|0; - $128 = HEAP32[$p>>2]|0; - $129 = (($128) + 28|0); - $130 = HEAP32[$129>>2]|0; - $131 = (($130) + 4|0); - HEAP32[$131>>2] = $127; - } - $132 = HEAP32[$isDelete>>2]|0; - $133 = ($132|0)!=(0); - if ($133) { - $134 = HEAP32[((37064 + 196|0))>>2]|0; - $135 = HEAP32[$zName>>2]|0; - (FUNCTION_TABLE_ii[$134 & 31]($135)|0); - } - $136 = HEAP32[$eType>>2]|0; - $137 = ($136|0)!=(256); - $138 = $137&1; - HEAP32[$noLock>>2] = $138; - $139 = HEAP32[$isDelete>>2]|0; - $140 = ($139|0)!=(0); - if ($140) { - $141 = HEAP32[$ctrlFlags>>2]|0; - $142 = $141 | 32; - HEAP32[$ctrlFlags>>2] = $142; - } - $143 = HEAP32[$isReadonly>>2]|0; - $144 = ($143|0)!=(0); - if ($144) { - $145 = HEAP32[$ctrlFlags>>2]|0; - $146 = $145 | 2; - HEAP32[$ctrlFlags>>2] = $146; - } - $147 = HEAP32[$noLock>>2]|0; - $148 = ($147|0)!=(0); - if ($148) { - $149 = HEAP32[$ctrlFlags>>2]|0; - $150 = $149 | 128; - HEAP32[$ctrlFlags>>2] = $150; - } - $151 = HEAP32[$syncDir>>2]|0; - $152 = ($151|0)!=(0); - if ($152) { - $153 = HEAP32[$ctrlFlags>>2]|0; - $154 = $153 | 8; - HEAP32[$ctrlFlags>>2] = $154; - } - $155 = HEAP32[$4>>2]|0; - $156 = $155 & 64; - $157 = ($156|0)!=(0); - if ($157) { - $158 = HEAP32[$ctrlFlags>>2]|0; - $159 = $158 | 64; - HEAP32[$ctrlFlags>>2] = $159; - } - $160 = HEAP32[$1>>2]|0; - $161 = HEAP32[$fd>>2]|0; - $162 = HEAP32[$3>>2]|0; - $163 = HEAP32[$2>>2]|0; - $164 = HEAP32[$ctrlFlags>>2]|0; - $165 = (_fillInUnixFile($160,$161,$162,$163,$164)|0); - HEAP32[$rc>>2] = $165; - } - $166 = HEAP32[$rc>>2]|0; - $167 = ($166|0)!=(0); - if ($167) { - $168 = HEAP32[$p>>2]|0; - $169 = (($168) + 28|0); - $170 = HEAP32[$169>>2]|0; - _sqlite3_free($170); - } - $171 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $171; - $172 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($172|0); -} -function _unixDelete($NotUsed,$zPath,$dirSync) { - $NotUsed = $NotUsed|0; - $zPath = $zPath|0; - $dirSync = $dirSync|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $fd = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $rc = sp + 4|0; - $fd = sp; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $zPath; - HEAP32[$3>>2] = $dirSync; - HEAP32[$rc>>2] = 0; - $4 = HEAP32[((37064 + 196|0))>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = (FUNCTION_TABLE_ii[$4 & 31]($5)|0); - $7 = ($6|0)==(-1); - if ($7) { - $8 = (___errno_location()|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)==(2); - if ($10) { - HEAP32[$rc>>2] = 5898; - } else { - $11 = HEAP32[$2>>2]|0; - $12 = (_unixLogErrorAtLine(2570,37544,$11,29806)|0); - HEAP32[$rc>>2] = $12; - } - $13 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $13; - $31 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($31|0); - } - $14 = HEAP32[$3>>2]|0; - $15 = $14 & 1; - $16 = ($15|0)!=(0); - do { - if ($16) { - $17 = HEAP32[((37064 + 208|0))>>2]|0; - $18 = HEAP32[$2>>2]|0; - $19 = (FUNCTION_TABLE_iii[$17 & 63]($18,$fd)|0); - HEAP32[$rc>>2] = $19; - $20 = HEAP32[$rc>>2]|0; - $21 = ($20|0)==(0); - if (!($21)) { - $28 = HEAP32[$rc>>2]|0; - $29 = ($28|0)==(14); - if (!($29)) { - break; - } - HEAP32[$rc>>2] = 0; - break; - } - $22 = HEAP32[$fd>>2]|0; - $23 = (_fsync(($22|0))|0); - $24 = ($23|0)!=(0); - if ($24) { - $25 = HEAP32[$2>>2]|0; - $26 = (_unixLogErrorAtLine(1290,38024,$25,29821)|0); - HEAP32[$rc>>2] = $26; - } - $27 = HEAP32[$fd>>2]|0; - _robust_close(0,$27,29823); - } - } while(0); - $30 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $30; - $31 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($31|0); -} -function _unixAccess($NotUsed,$zPath,$flags,$pResOut) { - $NotUsed = $NotUsed|0; - $zPath = $zPath|0; - $flags = $flags|0; - $pResOut = $pResOut|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $amode = 0, $buf = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $0 = sp + 92|0; - $1 = sp + 88|0; - $2 = sp + 84|0; - $3 = sp + 80|0; - $amode = sp + 76|0; - $buf = sp; - HEAP32[$0>>2] = $NotUsed; - HEAP32[$1>>2] = $zPath; - HEAP32[$2>>2] = $flags; - HEAP32[$3>>2] = $pResOut; - HEAP32[$amode>>2] = 0; - $4 = HEAP32[$2>>2]|0; - if ((($4|0) == 1)) { - HEAP32[$amode>>2] = 6; - } else if ((($4|0) == 0)) { - HEAP32[$amode>>2] = 0; - } else if ((($4|0) == 2)) { - HEAP32[$amode>>2] = 4; - } - $5 = HEAP32[((37064 + 28|0))>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$amode>>2]|0; - $8 = (FUNCTION_TABLE_iii[$5 & 63]($6,$7)|0); - $9 = ($8|0)==(0); - $10 = $9&1; - $11 = HEAP32[$3>>2]|0; - HEAP32[$11>>2] = $10; - $12 = HEAP32[$2>>2]|0; - $13 = ($12|0)==(0); - if (!($13)) { - STACKTOP = sp;return 0; - } - $14 = HEAP32[$3>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = ($15|0)!=(0); - if (!($16)) { - STACKTOP = sp;return 0; - } - $17 = HEAP32[((37064 + 52|0))>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (FUNCTION_TABLE_iii[$17 & 63]($18,$buf)|0); - $20 = (0)==($19|0); - if (!($20)) { - STACKTOP = sp;return 0; - } - $21 = (($buf) + 36|0); - $22 = HEAP32[$21>>2]|0; - $23 = ($22|0)==(0); - if (!($23)) { - STACKTOP = sp;return 0; - } - $24 = HEAP32[$3>>2]|0; - HEAP32[$24>>2] = 0; - STACKTOP = sp;return 0; -} -function _unixFullPathname($pVfs,$zPath,$nOut,$zOut) { - $pVfs = $pVfs|0; - $zPath = $zPath|0; - $nOut = $nOut|0; - $zOut = $zOut|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nCwd = 0, $vararg_buffer1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer1 = sp; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $nCwd = sp + 4|0; - HEAP32[$1>>2] = $pVfs; - HEAP32[$2>>2] = $zPath; - HEAP32[$3>>2] = $nOut; - HEAP32[$4>>2] = $zOut; - $5 = HEAP32[$3>>2]|0; - $6 = (($5) - 1)|0; - $7 = HEAP32[$4>>2]|0; - $8 = (($7) + ($6)|0); - HEAP8[$8>>0] = 0; - $9 = HEAP32[$2>>2]|0; - $10 = HEAP8[$9>>0]|0; - $11 = $10 << 24 >> 24; - $12 = ($11|0)==(47); - do { - if ($12) { - $13 = HEAP32[$3>>2]|0; - $14 = HEAP32[$4>>2]|0; - $15 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer1>>2] = $15; - (_sqlite3_snprintf($13,$14,1456,$vararg_buffer1)|0); - } else { - $16 = HEAP32[((37064 + 40|0))>>2]|0; - $17 = HEAP32[$4>>2]|0; - $18 = HEAP32[$3>>2]|0; - $19 = (($18) - 1)|0; - $20 = (FUNCTION_TABLE_iii[$16 & 63]($17,$19)|0); - $21 = ($20|0)==(0|0); - if (!($21)) { - $25 = HEAP32[$4>>2]|0; - $26 = (_strlen(($25|0))|0); - HEAP32[$nCwd>>2] = $26; - $27 = HEAP32[$3>>2]|0; - $28 = HEAP32[$nCwd>>2]|0; - $29 = (($27) - ($28))|0; - $30 = HEAP32[$nCwd>>2]|0; - $31 = HEAP32[$4>>2]|0; - $32 = (($31) + ($30)|0); - $33 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer1>>2] = $33; - (_sqlite3_snprintf($29,$32,38016,$vararg_buffer1)|0); - break; - } - $22 = (_sqlite3CantopenError(29908)|0); - $23 = HEAP32[$2>>2]|0; - $24 = (_unixLogErrorAtLine($22,37416,$23,29908)|0); - HEAP32[$0>>2] = $24; - $34 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($34|0); - } - } while(0); - HEAP32[$0>>2] = 0; - $34 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($34|0); -} -function _unixRandomness($NotUsed,$nBuf,$zBuf) { - $NotUsed = $NotUsed|0; - $nBuf = $nBuf|0; - $zBuf = $zBuf|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $fd = 0, $got = 0, $t = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $fd = sp + 8|0; - $got = sp + 4|0; - $t = sp; - HEAP32[$0>>2] = $NotUsed; - HEAP32[$1>>2] = $nBuf; - HEAP32[$2>>2] = $zBuf; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$1>>2]|0; - _memset(($3|0),0,($4|0))|0; - $5 = (_getpid()|0); - HEAP32[37992>>2] = $5; - $6 = (_robust_open(38000,0,0)|0); - HEAP32[$fd>>2] = $6; - $7 = HEAP32[$fd>>2]|0; - $8 = ($7|0)<(0); - if ($8) { - (_time(($t|0))|0); - $9 = HEAP32[$2>>2]|0; - ;HEAP8[$9+0>>0]=HEAP8[$t+0>>0]|0;HEAP8[$9+1>>0]=HEAP8[$t+1>>0]|0;HEAP8[$9+2>>0]=HEAP8[$t+2>>0]|0;HEAP8[$9+3>>0]=HEAP8[$t+3>>0]|0; - $10 = HEAP32[$2>>2]|0; - $11 = (($10) + 4|0); - ;HEAP8[$11+0>>0]=HEAP8[37992+0>>0]|0;HEAP8[$11+1>>0]=HEAP8[37992+1>>0]|0;HEAP8[$11+2>>0]=HEAP8[37992+2>>0]|0;HEAP8[$11+3>>0]=HEAP8[37992+3>>0]|0; - HEAP32[$1>>2] = 8; - $23 = HEAP32[$1>>2]|0; - STACKTOP = sp;return ($23|0); - } - while(1) { - $12 = HEAP32[((37064 + 100|0))>>2]|0; - $13 = HEAP32[$fd>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = (FUNCTION_TABLE_iiii[$12 & 15]($13,$14,$15)|0); - HEAP32[$got>>2] = $16; - $17 = HEAP32[$got>>2]|0; - $18 = ($17|0)<(0); - if (!($18)) { - break; - } - $19 = (___errno_location()|0); - $20 = HEAP32[$19>>2]|0; - $21 = ($20|0)==(4); - if (!($21)) { - break; - } - } - $22 = HEAP32[$fd>>2]|0; - _robust_close(0,$22,30013); - $23 = HEAP32[$1>>2]|0; - STACKTOP = sp;return ($23|0); -} -function _unixSleep($NotUsed,$microseconds) { - $NotUsed = $NotUsed|0; - $microseconds = $microseconds|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $seconds = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $seconds = sp; - HEAP32[$0>>2] = $NotUsed; - HEAP32[$1>>2] = $microseconds; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 999999)|0; - $4 = (($3|0) / 1000000)&-1; - HEAP32[$seconds>>2] = $4; - $5 = HEAP32[$seconds>>2]|0; - (_sleep(($5|0))|0); - $6 = HEAP32[$seconds>>2]|0; - $7 = ($6*1000000)|0; - STACKTOP = sp;return ($7|0); -} -function _unixCurrentTime($NotUsed,$prNow) { - $NotUsed = $NotUsed|0; - $prNow = $prNow|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0.0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $rc = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $i = sp; - $rc = sp + 8|0; - HEAP32[$0>>2] = $NotUsed; - HEAP32[$1>>2] = $prNow; - $2 = $i; - $3 = $2; - HEAP32[$3>>2] = 0; - $4 = (($2) + 4)|0; - $5 = $4; - HEAP32[$5>>2] = 0; - $6 = (_unixCurrentTimeInt64(0,$i)|0); - HEAP32[$rc>>2] = $6; - $7 = $i; - $8 = $7; - $9 = HEAP32[$8>>2]|0; - $10 = (($7) + 4)|0; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = (+($9>>>0)) + (4294967296.0*(+($12|0))); - $14 = $13 / 8.64E+7; - $15 = HEAP32[$1>>2]|0; - HEAPF64[$15>>3] = $14; - $16 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($16|0); -} -function _unixGetLastError($NotUsed,$NotUsed2,$NotUsed3) { - $NotUsed = $NotUsed|0; - $NotUsed2 = $NotUsed2|0; - $NotUsed3 = $NotUsed3|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $NotUsed; - HEAP32[$1>>2] = $NotUsed2; - HEAP32[$2>>2] = $NotUsed3; - STACKTOP = sp;return 0; -} -function _unixCurrentTimeInt64($NotUsed,$piNow) { - $NotUsed = $NotUsed|0; - $piNow = $piNow|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $sNow = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $rc = sp + 8|0; - $sNow = sp; - HEAP32[$0>>2] = $NotUsed; - HEAP32[$1>>2] = $piNow; - HEAP32[$rc>>2] = 0; - $2 = (_gettimeofday(($sNow|0),(0|0))|0); - $3 = ($2|0)==(0); - if ($3) { - $4 = HEAP32[$sNow>>2]|0; - $5 = ($4|0)<(0); - $6 = $5 << 31 >> 31; - $7 = (___muldi3(1000,0,($4|0),($6|0))|0); - $8 = tempRet0; - $9 = (_i64Add(1045635584,49096,($7|0),($8|0))|0); - $10 = tempRet0; - $11 = (($sNow) + 4|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12|0) / 1000)&-1; - $14 = ($13|0)<(0); - $15 = $14 << 31 >> 31; - $16 = (_i64Add(($9|0),($10|0),($13|0),($15|0))|0); - $17 = tempRet0; - $18 = HEAP32[$1>>2]|0; - $19 = $18; - $20 = $19; - HEAP32[$20>>2] = $16; - $21 = (($19) + 4)|0; - $22 = $21; - HEAP32[$22>>2] = $17; - $23 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($23|0); - } else { - HEAP32[$rc>>2] = 1; - $23 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($23|0); - } - return 0|0; -} -function _unixSetSystemCall($pNotUsed,$zName,$pNewFunc) { - $pNotUsed = $pNotUsed|0; - $zName = $zName|0; - $pNewFunc = $pNewFunc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $i = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pNotUsed; - HEAP32[$1>>2] = $zName; - HEAP32[$2>>2] = $pNewFunc; - HEAP32[$rc>>2] = 12; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - HEAP32[$rc>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $5 = HEAP32[$i>>2]|0; - $6 = ($5>>>0)<(25); - if (!($6)) { - break; - } - $7 = HEAP32[$i>>2]|0; - $8 = (37064 + (($7*12)|0)|0); - $9 = (($8) + 8|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)!=(0|0); - if ($11) { - $12 = HEAP32[$i>>2]|0; - $13 = (37064 + (($12*12)|0)|0); - $14 = (($13) + 8|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$i>>2]|0; - $17 = (37064 + (($16*12)|0)|0); - $18 = (($17) + 4|0); - HEAP32[$18>>2] = $15; - } - $19 = HEAP32[$i>>2]|0; - $20 = (($19) + 1)|0; - HEAP32[$i>>2] = $20; - } - $52 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($52|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $21 = HEAP32[$i>>2]|0; - $22 = ($21>>>0)<(25); - if (!($22)) { - label = 16; - break; - } - $23 = HEAP32[$1>>2]|0; - $24 = HEAP32[$i>>2]|0; - $25 = (37064 + (($24*12)|0)|0); - $26 = HEAP32[$25>>2]|0; - $27 = (_strcmp($23,$26)|0); - $28 = ($27|0)==(0); - $29 = HEAP32[$i>>2]|0; - if ($28) { - break; - } - $51 = (($29) + 1)|0; - HEAP32[$i>>2] = $51; - } - if ((label|0) == 16) { - $52 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($52|0); - } - $30 = (37064 + (($29*12)|0)|0); - $31 = (($30) + 8|0); - $32 = HEAP32[$31>>2]|0; - $33 = ($32|0)==(0|0); - if ($33) { - $34 = HEAP32[$i>>2]|0; - $35 = (37064 + (($34*12)|0)|0); - $36 = (($35) + 4|0); - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$i>>2]|0; - $39 = (37064 + (($38*12)|0)|0); - $40 = (($39) + 8|0); - HEAP32[$40>>2] = $37; - } - HEAP32[$rc>>2] = 0; - $41 = HEAP32[$2>>2]|0; - $42 = ($41|0)==(0|0); - if ($42) { - $43 = HEAP32[$i>>2]|0; - $44 = (37064 + (($43*12)|0)|0); - $45 = (($44) + 8|0); - $46 = HEAP32[$45>>2]|0; - HEAP32[$2>>2] = $46; - } - $47 = HEAP32[$2>>2]|0; - $48 = HEAP32[$i>>2]|0; - $49 = (37064 + (($48*12)|0)|0); - $50 = (($49) + 4|0); - HEAP32[$50>>2] = $47; - $52 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($52|0); -} -function _unixGetSystemCall($pNotUsed,$zName) { - $pNotUsed = $pNotUsed|0; - $zName = $zName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $i = sp; - HEAP32[$1>>2] = $pNotUsed; - HEAP32[$2>>2] = $zName; - HEAP32[$i>>2] = 0; - while(1) { - $3 = HEAP32[$i>>2]|0; - $4 = ($3>>>0)<(25); - if (!($4)) { - label = 6; - break; - } - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$i>>2]|0; - $7 = (37064 + (($6*12)|0)|0); - $8 = HEAP32[$7>>2]|0; - $9 = (_strcmp($5,$8)|0); - $10 = ($9|0)==(0); - $11 = HEAP32[$i>>2]|0; - if ($10) { - label = 4; - break; - } - $15 = (($11) + 1)|0; - HEAP32[$i>>2] = $15; - } - if ((label|0) == 4) { - $12 = (37064 + (($11*12)|0)|0); - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$0>>2] = $14; - $16 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($16|0); - } - else if ((label|0) == 6) { - HEAP32[$0>>2] = 0; - $16 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($16|0); - } - return 0|0; -} -function _unixNextSystemCall($p,$zName) { - $p = $p|0; - $zName = $zName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $i = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $zName; - HEAP32[$i>>2] = -1; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - L1: do { - if ($4) { - HEAP32[$i>>2] = 0; - while(1) { - $5 = HEAP32[$i>>2]|0; - $6 = ($5|0)<(24); - if (!($6)) { - break L1; - } - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$i>>2]|0; - $9 = (37064 + (($8*12)|0)|0); - $10 = HEAP32[$9>>2]|0; - $11 = (_strcmp($7,$10)|0); - $12 = ($11|0)==(0); - if ($12) { - break L1; - } - $13 = HEAP32[$i>>2]|0; - $14 = (($13) + 1)|0; - HEAP32[$i>>2] = $14; - } - } - } while(0); - $15 = HEAP32[$i>>2]|0; - $16 = (($15) + 1)|0; - HEAP32[$i>>2] = $16; - while(1) { - $17 = HEAP32[$i>>2]|0; - $18 = ($17|0)<(25); - if (!($18)) { - label = 11; - break; - } - $19 = HEAP32[$i>>2]|0; - $20 = (37064 + (($19*12)|0)|0); - $21 = (($20) + 4|0); - $22 = HEAP32[$21>>2]|0; - $23 = ($22|0)!=(0|0); - $24 = HEAP32[$i>>2]|0; - if ($23) { - label = 9; - break; - } - $27 = (($24) + 1)|0; - HEAP32[$i>>2] = $27; - } - if ((label|0) == 9) { - $25 = (37064 + (($24*12)|0)|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$0>>2] = $26; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); - } - else if ((label|0) == 11) { - HEAP32[$0>>2] = 0; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); - } - return 0|0; -} -function _sqlite3Error($db,$err_code,$zFormat,$varargs) { - $db = $db|0; - $err_code = $err_code|0; - $zFormat = $zFormat|0; - $varargs = $varargs|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ap = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $z = sp + 16|0; - $ap = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $err_code; - HEAP32[$2>>2] = $zFormat; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 52|0); - HEAP32[$5>>2] = $3; - $6 = HEAP32[$2>>2]|0; - $7 = ($6|0)!=(0|0); - do { - if ($7) { - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 224|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)!=(0|0); - if (!($11)) { - $12 = HEAP32[$0>>2]|0; - $13 = (_sqlite3ValueNew($12)|0); - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 224|0); - HEAP32[$15>>2] = $13; - $16 = ($13|0)!=(0|0); - if (!($16)) { - break; - } - } - HEAP32[$ap>>2] = $varargs; - $17 = HEAP32[$0>>2]|0; - $18 = HEAP32[$2>>2]|0; - $19 = (_sqlite3VMPrintf($17,$18,$ap)|0); - HEAP32[$z>>2] = $19; - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 224|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$z>>2]|0; - _sqlite3ValueSetStr($22,-1,$23,1,16); - STACKTOP = sp;return; - } - } while(0); - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 224|0); - $26 = HEAP32[$25>>2]|0; - $27 = ($26|0)!=(0|0); - if (!($27)) { - STACKTOP = sp;return; - } - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 224|0); - $30 = HEAP32[$29>>2]|0; - _sqlite3ValueSetNull($30); - STACKTOP = sp;return; -} -function _sqlite3MallocZero($n) { - $n = $n|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $n; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3Malloc($1)|0); - HEAP32[$p>>2] = $2; - $3 = HEAP32[$p>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - $7 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($7|0); - } - $5 = HEAP32[$p>>2]|0; - $6 = HEAP32[$0>>2]|0; - _memset(($5|0),0,($6|0))|0; - $7 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($7|0); -} -function _sqlite3_backup_step($p,$nPage) { - $p = $p|0; - $nPage = $nPage|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; - var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; - var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; - var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; - var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; - var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; - var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; - var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; - var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; - var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; - var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0; - var $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0; - var $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0; - var $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0; - var $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0; - var $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0; - var $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0; - var $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; - var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; - var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; - var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bCloseTrans = 0, $destMode = 0, $iEnd = 0, $iOff = 0, $iPg = 0; - var $iSize = 0, $iSrcPg = 0, $iSrcPg2 = 0, $ii = 0, $nDestTruncate = 0, $nDstPage = 0, $nSrcPage = 0, $or$cond = 0, $pDestPager = 0, $pFile = 0, $pPg = 0, $pSrcPager = 0, $pSrcPg = 0, $pSrcPg1 = 0, $pgszDest = 0, $pgszSrc = 0, $ratio = 0, $rc = 0, $zData = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 112|0; - $0 = sp + 108|0; - $1 = sp + 104|0; - $rc = sp + 100|0; - $destMode = sp + 96|0; - $pgszSrc = sp + 92|0; - $pgszDest = sp + 88|0; - $pSrcPager = sp + 84|0; - $pDestPager = sp + 80|0; - $ii = sp + 76|0; - $nSrcPage = sp + 72|0; - $bCloseTrans = sp + 68|0; - $iSrcPg = sp + 64|0; - $pSrcPg = sp + 60|0; - $nDestTruncate = sp + 56|0; - $ratio = sp + 52|0; - $iSize = sp + 16|0; - $pFile = sp + 48|0; - $iPg = sp + 44|0; - $nDstPage = sp + 40|0; - $iOff = sp + 8|0; - $iEnd = sp; - $pPg = sp + 36|0; - $pSrcPg1 = sp + 32|0; - $iSrcPg2 = sp + 28|0; - $zData = sp + 24|0; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $nPage; - HEAP32[$pgszSrc>>2] = 0; - HEAP32[$pgszDest>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 24|0); - $4 = HEAP32[$3>>2]|0; - _sqlite3BtreeEnter($4); - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 28|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$rc>>2] = $7; - $8 = HEAP32[$rc>>2]|0; - $9 = (_isFatalError($8)|0); - $10 = ($9|0)!=(0); - if ($10) { - $413 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($413|0); - } - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 24|0); - $13 = HEAP32[$12>>2]|0; - $14 = (_sqlite3BtreePager($13)|0); - HEAP32[$pSrcPager>>2] = $14; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - $18 = (_sqlite3BtreePager($17)|0); - HEAP32[$pDestPager>>2] = $18; - HEAP32[$nSrcPage>>2] = -1; - HEAP32[$bCloseTrans>>2] = 0; - $19 = HEAP32[$0>>2]|0; - $20 = HEAP32[$19>>2]|0; - $21 = ($20|0)!=(0|0); - if ($21) { - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 24|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + 4|0); - $26 = HEAP32[$25>>2]|0; - $27 = (($26) + 20|0); - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = ($29|0)==(2); - if ($30) { - HEAP32[$rc>>2] = 5; - } else { - label = 5; - } - } else { - label = 5; - } - if ((label|0) == 5) { - HEAP32[$rc>>2] = 0; - } - $31 = HEAP32[$rc>>2]|0; - $32 = (0)==($31|0); - if ($32) { - $33 = HEAP32[$0>>2]|0; - $34 = (($33) + 12|0); - $35 = HEAP32[$34>>2]|0; - $36 = ($35|0)==(0); - if ($36) { - $37 = HEAP32[$0>>2]|0; - $38 = (($37) + 4|0); - $39 = HEAP32[$38>>2]|0; - $40 = (_sqlite3BtreeBeginTrans($39,2)|0); - HEAP32[$rc>>2] = $40; - $41 = (0)==($40|0); - if ($41) { - $42 = HEAP32[$0>>2]|0; - $43 = (($42) + 12|0); - HEAP32[$43>>2] = 1; - $44 = HEAP32[$0>>2]|0; - $45 = (($44) + 4|0); - $46 = HEAP32[$45>>2]|0; - $47 = HEAP32[$0>>2]|0; - $48 = (($47) + 8|0); - _sqlite3BtreeGetMeta($46,1,$48); - } - } - } - $49 = HEAP32[$rc>>2]|0; - $50 = ($49|0)==(0); - if ($50) { - $51 = HEAP32[$0>>2]|0; - $52 = (($51) + 24|0); - $53 = HEAP32[$52>>2]|0; - $54 = (_sqlite3BtreeIsInReadTrans($53)|0); - $55 = (0)==($54|0); - if ($55) { - $56 = HEAP32[$0>>2]|0; - $57 = (($56) + 24|0); - $58 = HEAP32[$57>>2]|0; - $59 = (_sqlite3BtreeBeginTrans($58,0)|0); - HEAP32[$rc>>2] = $59; - HEAP32[$bCloseTrans>>2] = 1; - } - } - $60 = HEAP32[$0>>2]|0; - $61 = (($60) + 24|0); - $62 = HEAP32[$61>>2]|0; - $63 = (_sqlite3BtreeGetPageSize($62)|0); - HEAP32[$pgszSrc>>2] = $63; - $64 = HEAP32[$0>>2]|0; - $65 = (($64) + 4|0); - $66 = HEAP32[$65>>2]|0; - $67 = (_sqlite3BtreeGetPageSize($66)|0); - HEAP32[$pgszDest>>2] = $67; - $68 = HEAP32[$0>>2]|0; - $69 = (($68) + 4|0); - $70 = HEAP32[$69>>2]|0; - $71 = (_sqlite3BtreePager($70)|0); - $72 = (_sqlite3PagerGetJournalMode($71)|0); - HEAP32[$destMode>>2] = $72; - $73 = HEAP32[$rc>>2]|0; - $74 = (0)==($73|0); - if ($74) { - $75 = HEAP32[$destMode>>2]|0; - $76 = ($75|0)==(5); - if ($76) { - $77 = HEAP32[$pgszSrc>>2]|0; - $78 = HEAP32[$pgszDest>>2]|0; - $79 = ($77|0)!=($78|0); - if ($79) { - HEAP32[$rc>>2] = 8; - } - } - } - $80 = HEAP32[$0>>2]|0; - $81 = (($80) + 24|0); - $82 = HEAP32[$81>>2]|0; - $83 = (_sqlite3BtreeLastPage($82)|0); - HEAP32[$nSrcPage>>2] = $83; - HEAP32[$ii>>2] = 0; - while(1) { - $84 = HEAP32[$1>>2]|0; - $85 = ($84|0)<(0); - if (!($85)) { - $86 = HEAP32[$ii>>2]|0; - $87 = HEAP32[$1>>2]|0; - $88 = ($86|0)<($87|0); - if (!($88)) { - break; - } - } - $89 = HEAP32[$0>>2]|0; - $90 = (($89) + 16|0); - $91 = HEAP32[$90>>2]|0; - $92 = HEAP32[$nSrcPage>>2]|0; - $93 = ($91>>>0)<=($92>>>0); - if (!($93)) { - break; - } - $94 = HEAP32[$rc>>2]|0; - $95 = ($94|0)!=(0); - $96 = $95 ^ 1; - if (!($96)) { - break; - } - $97 = HEAP32[$0>>2]|0; - $98 = (($97) + 16|0); - $99 = HEAP32[$98>>2]|0; - HEAP32[$iSrcPg>>2] = $99; - $100 = HEAP32[$iSrcPg>>2]|0; - $101 = HEAP32[1384>>2]|0; - $102 = HEAP32[$0>>2]|0; - $103 = (($102) + 24|0); - $104 = HEAP32[$103>>2]|0; - $105 = (($104) + 4|0); - $106 = HEAP32[$105>>2]|0; - $107 = (($106) + 32|0); - $108 = HEAP32[$107>>2]|0; - $109 = (($101>>>0) / ($108>>>0))&-1; - $110 = (($109) + 1)|0; - $111 = ($100|0)!=($110|0); - if ($111) { - $112 = HEAP32[$pSrcPager>>2]|0; - $113 = HEAP32[$iSrcPg>>2]|0; - $114 = (_sqlite3PagerAcquire($112,$113,$pSrcPg,2)|0); - HEAP32[$rc>>2] = $114; - $115 = HEAP32[$rc>>2]|0; - $116 = ($115|0)==(0); - if ($116) { - $117 = HEAP32[$0>>2]|0; - $118 = HEAP32[$iSrcPg>>2]|0; - $119 = HEAP32[$pSrcPg>>2]|0; - $120 = (_sqlite3PagerGetData($119)|0); - $121 = (_backupOnePage($117,$118,$120,0)|0); - HEAP32[$rc>>2] = $121; - $122 = HEAP32[$pSrcPg>>2]|0; - _sqlite3PagerUnref($122); - } - } - $123 = HEAP32[$0>>2]|0; - $124 = (($123) + 16|0); - $125 = HEAP32[$124>>2]|0; - $126 = (($125) + 1)|0; - HEAP32[$124>>2] = $126; - $127 = HEAP32[$ii>>2]|0; - $128 = (($127) + 1)|0; - HEAP32[$ii>>2] = $128; - } - $129 = HEAP32[$rc>>2]|0; - $130 = ($129|0)==(0); - do { - if ($130) { - $131 = HEAP32[$nSrcPage>>2]|0; - $132 = HEAP32[$0>>2]|0; - $133 = (($132) + 36|0); - HEAP32[$133>>2] = $131; - $134 = HEAP32[$nSrcPage>>2]|0; - $135 = (($134) + 1)|0; - $136 = HEAP32[$0>>2]|0; - $137 = (($136) + 16|0); - $138 = HEAP32[$137>>2]|0; - $139 = (($135) - ($138))|0; - $140 = HEAP32[$0>>2]|0; - $141 = (($140) + 32|0); - HEAP32[$141>>2] = $139; - $142 = HEAP32[$0>>2]|0; - $143 = (($142) + 16|0); - $144 = HEAP32[$143>>2]|0; - $145 = HEAP32[$nSrcPage>>2]|0; - $146 = ($144>>>0)>($145>>>0); - if ($146) { - HEAP32[$rc>>2] = 101; - break; - } - $147 = HEAP32[$0>>2]|0; - $148 = (($147) + 40|0); - $149 = HEAP32[$148>>2]|0; - $150 = ($149|0)!=(0); - if (!($150)) { - $151 = HEAP32[$0>>2]|0; - _attachBackupObject($151); - } - } - } while(0); - $152 = HEAP32[$rc>>2]|0; - $153 = ($152|0)==(101); - if ($153) { - $154 = HEAP32[$nSrcPage>>2]|0; - $155 = ($154|0)==(0); - if ($155) { - $156 = HEAP32[$0>>2]|0; - $157 = (($156) + 4|0); - $158 = HEAP32[$157>>2]|0; - $159 = (_sqlite3BtreeNewDb($158)|0); - HEAP32[$rc>>2] = $159; - HEAP32[$nSrcPage>>2] = 1; - } - $160 = HEAP32[$rc>>2]|0; - $161 = ($160|0)==(0); - $162 = HEAP32[$rc>>2]|0; - $163 = ($162|0)==(101); - $or$cond = $161 | $163; - if ($or$cond) { - $164 = HEAP32[$0>>2]|0; - $165 = (($164) + 4|0); - $166 = HEAP32[$165>>2]|0; - $167 = HEAP32[$0>>2]|0; - $168 = (($167) + 8|0); - $169 = HEAP32[$168>>2]|0; - $170 = (($169) + 1)|0; - $171 = (_sqlite3BtreeUpdateMeta($166,1,$170)|0); - HEAP32[$rc>>2] = $171; - } - $172 = HEAP32[$rc>>2]|0; - $173 = ($172|0)==(0); - if ($173) { - $174 = HEAP32[$0>>2]|0; - $175 = HEAP32[$174>>2]|0; - $176 = ($175|0)!=(0|0); - if ($176) { - $177 = HEAP32[$0>>2]|0; - $178 = HEAP32[$177>>2]|0; - _sqlite3ResetAllSchemasOfConnection($178); - } - $179 = HEAP32[$destMode>>2]|0; - $180 = ($179|0)==(5); - if ($180) { - $181 = HEAP32[$0>>2]|0; - $182 = (($181) + 4|0); - $183 = HEAP32[$182>>2]|0; - $184 = (_sqlite3BtreeSetVersion($183,2)|0); - HEAP32[$rc>>2] = $184; - } - } - $185 = HEAP32[$rc>>2]|0; - $186 = ($185|0)==(0); - if ($186) { - $187 = HEAP32[$pgszSrc>>2]|0; - $188 = HEAP32[$pgszDest>>2]|0; - $189 = ($187|0)<($188|0); - if ($189) { - $190 = HEAP32[$pgszDest>>2]|0; - $191 = HEAP32[$pgszSrc>>2]|0; - $192 = (($190|0) / ($191|0))&-1; - HEAP32[$ratio>>2] = $192; - $193 = HEAP32[$nSrcPage>>2]|0; - $194 = HEAP32[$ratio>>2]|0; - $195 = (($193) + ($194))|0; - $196 = (($195) - 1)|0; - $197 = HEAP32[$ratio>>2]|0; - $198 = (($196|0) / ($197|0))&-1; - HEAP32[$nDestTruncate>>2] = $198; - $199 = HEAP32[$nDestTruncate>>2]|0; - $200 = HEAP32[1384>>2]|0; - $201 = HEAP32[$0>>2]|0; - $202 = (($201) + 4|0); - $203 = HEAP32[$202>>2]|0; - $204 = (($203) + 4|0); - $205 = HEAP32[$204>>2]|0; - $206 = (($205) + 32|0); - $207 = HEAP32[$206>>2]|0; - $208 = (($200>>>0) / ($207>>>0))&-1; - $209 = (($208) + 1)|0; - $210 = ($199|0)==($209|0); - if ($210) { - $211 = HEAP32[$nDestTruncate>>2]|0; - $212 = (($211) + -1)|0; - HEAP32[$nDestTruncate>>2] = $212; - } - } else { - $213 = HEAP32[$nSrcPage>>2]|0; - $214 = HEAP32[$pgszSrc>>2]|0; - $215 = HEAP32[$pgszDest>>2]|0; - $216 = (($214|0) / ($215|0))&-1; - $217 = Math_imul($213, $216)|0; - HEAP32[$nDestTruncate>>2] = $217; - } - $218 = HEAP32[$pgszSrc>>2]|0; - $219 = HEAP32[$pgszDest>>2]|0; - $220 = ($218|0)<($219|0); - if ($220) { - $221 = HEAP32[$pgszSrc>>2]|0; - $222 = ($221|0)<(0); - $223 = $222 << 31 >> 31; - $224 = HEAP32[$nSrcPage>>2]|0; - $225 = ($224|0)<(0); - $226 = $225 << 31 >> 31; - $227 = (___muldi3(($221|0),($223|0),($224|0),($226|0))|0); - $228 = tempRet0; - $229 = $iSize; - $230 = $229; - HEAP32[$230>>2] = $227; - $231 = (($229) + 4)|0; - $232 = $231; - HEAP32[$232>>2] = $228; - $233 = HEAP32[$pDestPager>>2]|0; - $234 = (_sqlite3PagerFile($233)|0); - HEAP32[$pFile>>2] = $234; - $235 = HEAP32[$pDestPager>>2]|0; - _sqlite3PagerPagecount($235,$nDstPage); - $236 = HEAP32[$nDestTruncate>>2]|0; - HEAP32[$iPg>>2] = $236; - while(1) { - $237 = HEAP32[$rc>>2]|0; - $238 = ($237|0)==(0); - if (!($238)) { - break; - } - $239 = HEAP32[$iPg>>2]|0; - $240 = HEAP32[$nDstPage>>2]|0; - $241 = ($239>>>0)<=($240>>>0); - if (!($241)) { - break; - } - $242 = HEAP32[$iPg>>2]|0; - $243 = HEAP32[1384>>2]|0; - $244 = HEAP32[$0>>2]|0; - $245 = (($244) + 4|0); - $246 = HEAP32[$245>>2]|0; - $247 = (($246) + 4|0); - $248 = HEAP32[$247>>2]|0; - $249 = (($248) + 32|0); - $250 = HEAP32[$249>>2]|0; - $251 = (($243>>>0) / ($250>>>0))&-1; - $252 = (($251) + 1)|0; - $253 = ($242|0)!=($252|0); - do { - if ($253) { - $254 = HEAP32[$pDestPager>>2]|0; - $255 = HEAP32[$iPg>>2]|0; - $256 = (_sqlite3PagerAcquire($254,$255,$pPg,0)|0); - HEAP32[$rc>>2] = $256; - $257 = HEAP32[$rc>>2]|0; - $258 = ($257|0)==(0); - if (!($258)) { - break; - } - $259 = HEAP32[$pPg>>2]|0; - $260 = (_sqlite3PagerWrite($259)|0); - HEAP32[$rc>>2] = $260; - $261 = HEAP32[$pPg>>2]|0; - _sqlite3PagerUnref($261); - } - } while(0); - $262 = HEAP32[$iPg>>2]|0; - $263 = (($262) + 1)|0; - HEAP32[$iPg>>2] = $263; - } - $264 = HEAP32[$rc>>2]|0; - $265 = ($264|0)==(0); - if ($265) { - $266 = HEAP32[$pDestPager>>2]|0; - $267 = (_sqlite3PagerCommitPhaseOne($266,0,1)|0); - HEAP32[$rc>>2] = $267; - } - $268 = HEAP32[1384>>2]|0; - $269 = HEAP32[$pgszDest>>2]|0; - $270 = (($268) + ($269))|0; - $271 = ($270|0)<(0); - $272 = $271 << 31 >> 31; - $273 = $iSize; - $274 = $273; - $275 = HEAP32[$274>>2]|0; - $276 = (($273) + 4)|0; - $277 = $276; - $278 = HEAP32[$277>>2]|0; - $279 = ($272|0)<($278|0); - $280 = ($272|0)==($278|0); - $281 = ($270>>>0)<($275>>>0); - $282 = $280 & $281; - $283 = $279 | $282; - if ($283) { - $284 = HEAP32[1384>>2]|0; - $285 = HEAP32[$pgszDest>>2]|0; - $286 = (($284) + ($285))|0; - $287 = ($286|0)<(0); - $288 = $287 << 31 >> 31; - $297 = $286;$300 = $288; - } else { - $289 = $iSize; - $290 = $289; - $291 = HEAP32[$290>>2]|0; - $292 = (($289) + 4)|0; - $293 = $292; - $294 = HEAP32[$293>>2]|0; - $297 = $291;$300 = $294; - } - $295 = $iEnd; - $296 = $295; - HEAP32[$296>>2] = $297; - $298 = (($295) + 4)|0; - $299 = $298; - HEAP32[$299>>2] = $300; - $301 = HEAP32[1384>>2]|0; - $302 = HEAP32[$pgszSrc>>2]|0; - $303 = (($301) + ($302))|0; - $304 = ($303|0)<(0); - $305 = $304 << 31 >> 31; - $306 = $iOff; - $307 = $306; - HEAP32[$307>>2] = $303; - $308 = (($306) + 4)|0; - $309 = $308; - HEAP32[$309>>2] = $305; - while(1) { - $310 = HEAP32[$rc>>2]|0; - $311 = ($310|0)==(0); - if (!($311)) { - break; - } - $312 = $iOff; - $313 = $312; - $314 = HEAP32[$313>>2]|0; - $315 = (($312) + 4)|0; - $316 = $315; - $317 = HEAP32[$316>>2]|0; - $318 = $iEnd; - $319 = $318; - $320 = HEAP32[$319>>2]|0; - $321 = (($318) + 4)|0; - $322 = $321; - $323 = HEAP32[$322>>2]|0; - $324 = ($317|0)<($323|0); - $325 = ($317|0)==($323|0); - $326 = ($314>>>0)<($320>>>0); - $327 = $325 & $326; - $328 = $324 | $327; - if (!($328)) { - break; - } - HEAP32[$pSrcPg1>>2] = 0; - $329 = $iOff; - $330 = $329; - $331 = HEAP32[$330>>2]|0; - $332 = (($329) + 4)|0; - $333 = $332; - $334 = HEAP32[$333>>2]|0; - $335 = HEAP32[$pgszSrc>>2]|0; - $336 = ($335|0)<(0); - $337 = $336 << 31 >> 31; - $338 = (___divdi3(($331|0),($334|0),($335|0),($337|0))|0); - $339 = tempRet0; - $340 = (_i64Add(($338|0),($339|0),1,0)|0); - $341 = tempRet0; - HEAP32[$iSrcPg2>>2] = $340; - $342 = HEAP32[$pSrcPager>>2]|0; - $343 = HEAP32[$iSrcPg2>>2]|0; - $344 = (_sqlite3PagerAcquire($342,$343,$pSrcPg1,0)|0); - HEAP32[$rc>>2] = $344; - $345 = HEAP32[$rc>>2]|0; - $346 = ($345|0)==(0); - if ($346) { - $347 = HEAP32[$pSrcPg1>>2]|0; - $348 = (_sqlite3PagerGetData($347)|0); - HEAP32[$zData>>2] = $348; - $349 = HEAP32[$pFile>>2]|0; - $350 = HEAP32[$zData>>2]|0; - $351 = HEAP32[$pgszSrc>>2]|0; - $352 = $iOff; - $353 = $352; - $354 = HEAP32[$353>>2]|0; - $355 = (($352) + 4)|0; - $356 = $355; - $357 = HEAP32[$356>>2]|0; - $358 = (_sqlite3OsWrite($349,$350,$351,$354,$357)|0); - HEAP32[$rc>>2] = $358; - } - $359 = HEAP32[$pSrcPg1>>2]|0; - _sqlite3PagerUnref($359); - $360 = HEAP32[$pgszSrc>>2]|0; - $361 = ($360|0)<(0); - $362 = $361 << 31 >> 31; - $363 = $iOff; - $364 = $363; - $365 = HEAP32[$364>>2]|0; - $366 = (($363) + 4)|0; - $367 = $366; - $368 = HEAP32[$367>>2]|0; - $369 = (_i64Add(($365|0),($368|0),($360|0),($362|0))|0); - $370 = tempRet0; - $371 = $iOff; - $372 = $371; - HEAP32[$372>>2] = $369; - $373 = (($371) + 4)|0; - $374 = $373; - HEAP32[$374>>2] = $370; - } - $375 = HEAP32[$rc>>2]|0; - $376 = ($375|0)==(0); - if ($376) { - $377 = HEAP32[$pFile>>2]|0; - $378 = $iSize; - $379 = $378; - $380 = HEAP32[$379>>2]|0; - $381 = (($378) + 4)|0; - $382 = $381; - $383 = HEAP32[$382>>2]|0; - $384 = (_backupTruncateFile($377,$380,$383)|0); - HEAP32[$rc>>2] = $384; - } - $385 = HEAP32[$rc>>2]|0; - $386 = ($385|0)==(0); - if ($386) { - $387 = HEAP32[$pDestPager>>2]|0; - $388 = (_sqlite3PagerSync($387,0)|0); - HEAP32[$rc>>2] = $388; - } - } else { - $389 = HEAP32[$pDestPager>>2]|0; - $390 = HEAP32[$nDestTruncate>>2]|0; - _sqlite3PagerTruncateImage($389,$390); - $391 = HEAP32[$pDestPager>>2]|0; - $392 = (_sqlite3PagerCommitPhaseOne($391,0,0)|0); - HEAP32[$rc>>2] = $392; - } - $393 = HEAP32[$rc>>2]|0; - $394 = (0)==($393|0); - if ($394) { - $395 = HEAP32[$0>>2]|0; - $396 = (($395) + 4|0); - $397 = HEAP32[$396>>2]|0; - $398 = (_sqlite3BtreeCommitPhaseTwo($397,0)|0); - HEAP32[$rc>>2] = $398; - $399 = (0)==($398|0); - $$ = $399 ? 101 : $398; - HEAP32[$rc>>2] = $$; - } - } - } - $400 = HEAP32[$bCloseTrans>>2]|0; - $401 = ($400|0)!=(0); - if ($401) { - $402 = HEAP32[$0>>2]|0; - $403 = (($402) + 24|0); - $404 = HEAP32[$403>>2]|0; - (_sqlite3BtreeCommitPhaseOne($404,0)|0); - $405 = HEAP32[$0>>2]|0; - $406 = (($405) + 24|0); - $407 = HEAP32[$406>>2]|0; - (_sqlite3BtreeCommitPhaseTwo($407,0)|0); - } - $408 = HEAP32[$rc>>2]|0; - $409 = ($408|0)==(3082); - if ($409) { - HEAP32[$rc>>2] = 7; - } - $410 = HEAP32[$rc>>2]|0; - $411 = HEAP32[$0>>2]|0; - $412 = (($411) + 28|0); - HEAP32[$412>>2] = $410; - $413 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($413|0); -} -function _sqlite3BtreeEnter($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 4|0); - $5 = HEAP32[$4>>2]|0; - $6 = (($5) + 4|0); - HEAP32[$6>>2] = $2; - STACKTOP = sp;return; -} -function _isFatalError($rc) { - $rc = $rc|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $or$cond = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $rc; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0); - $3 = HEAP32[$0>>2]|0; - $4 = ($3|0)!=(5); - $or$cond = $2 & $4; - if (!($or$cond)) { - $8 = 0; - $7 = $8&1; - STACKTOP = sp;return ($7|0); - } - $5 = HEAP32[$0>>2]|0; - $6 = ($5|0)!=(6); - $8 = $6; - $7 = $8&1; - STACKTOP = sp;return ($7|0); -} -function _sqlite3BtreeBeginTrans($p,$wrflag) { - $p = $p|0; - $wrflag = $wrflag|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; - var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; - var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; - var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; - var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $pBlock = 0, $pBt = 0, $pIter = 0, $pPage1 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $pBlock = sp + 16|0; - $pBt = sp + 12|0; - $rc = sp + 8|0; - $pIter = sp + 4|0; - $pPage1 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $wrflag; - HEAP32[$pBlock>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pBt>>2] = $4; - HEAP32[$rc>>2] = 0; - $5 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($5); - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 8|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - $10 = ($9|0)==(2); - do { - if (!($10)) { - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 8|0); - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - $15 = ($14|0)==(1); - if ($15) { - $16 = HEAP32[$1>>2]|0; - $17 = ($16|0)!=(0); - if (!($17)) { - break; - } - } - $18 = HEAP32[$pBt>>2]|0; - $19 = (($18) + 22|0); - $20 = HEAP16[$19>>1]|0; - $21 = $20&65535; - $22 = $21 & 1; - $23 = ($22|0)!=(0); - if ($23) { - $24 = HEAP32[$1>>2]|0; - $25 = ($24|0)!=(0); - if ($25) { - HEAP32[$rc>>2] = 8; - break; - } - } - $26 = HEAP32[$1>>2]|0; - $27 = ($26|0)!=(0); - if ($27) { - $28 = HEAP32[$pBt>>2]|0; - $29 = (($28) + 20|0); - $30 = HEAP8[$29>>0]|0; - $31 = $30&255; - $32 = ($31|0)==(2); - if ($32) { - label = 10; - } else { - label = 9; - } - } else { - label = 9; - } - L12: do { - if ((label|0) == 9) { - $33 = HEAP32[$pBt>>2]|0; - $34 = (($33) + 22|0); - $35 = HEAP16[$34>>1]|0; - $36 = $35&65535; - $37 = $36 & 64; - $38 = ($37|0)!=(0); - if ($38) { - label = 10; - } else { - $43 = HEAP32[$1>>2]|0; - $44 = ($43|0)>(1); - if ($44) { - $45 = HEAP32[$pBt>>2]|0; - $46 = (($45) + 72|0); - $47 = HEAP32[$46>>2]|0; - HEAP32[$pIter>>2] = $47; - while(1) { - $48 = HEAP32[$pIter>>2]|0; - $49 = ($48|0)!=(0|0); - if (!($49)) { - break L12; - } - $50 = HEAP32[$pIter>>2]|0; - $51 = HEAP32[$50>>2]|0; - $52 = HEAP32[$0>>2]|0; - $53 = ($51|0)!=($52|0); - $54 = HEAP32[$pIter>>2]|0; - if ($53) { - break; - } - $57 = (($54) + 12|0); - $58 = HEAP32[$57>>2]|0; - HEAP32[$pIter>>2] = $58; - } - $55 = HEAP32[$54>>2]|0; - $56 = HEAP32[$55>>2]|0; - HEAP32[$pBlock>>2] = $56; - } - } - } - } while(0); - if ((label|0) == 10) { - $39 = HEAP32[$pBt>>2]|0; - $40 = (($39) + 76|0); - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$41>>2]|0; - HEAP32[$pBlock>>2] = $42; - } - $59 = HEAP32[$pBlock>>2]|0; - $60 = ($59|0)!=(0|0); - if ($60) { - HEAP32[$rc>>2] = 262; - break; - } - $61 = HEAP32[$0>>2]|0; - $62 = (_querySharedCacheTableLock($61,1,1)|0); - HEAP32[$rc>>2] = $62; - $63 = HEAP32[$rc>>2]|0; - $64 = (0)!=($63|0); - if (!($64)) { - $65 = HEAP32[$pBt>>2]|0; - $66 = (($65) + 22|0); - $67 = HEAP16[$66>>1]|0; - $68 = $67&65535; - $69 = $68 & -9; - $70 = $69&65535; - HEAP16[$66>>1] = $70; - $71 = HEAP32[$pBt>>2]|0; - $72 = (($71) + 44|0); - $73 = HEAP32[$72>>2]|0; - $74 = ($73|0)==(0); - if ($74) { - $75 = HEAP32[$pBt>>2]|0; - $76 = (($75) + 22|0); - $77 = HEAP16[$76>>1]|0; - $78 = $77&65535; - $79 = $78 | 8; - $80 = $79&65535; - HEAP16[$76>>1] = $80; - } - while(1) { - $81 = HEAP32[$pBt>>2]|0; - $82 = (($81) + 12|0); - $83 = HEAP32[$82>>2]|0; - $84 = ($83|0)==(0|0); - if ($84) { - $85 = HEAP32[$pBt>>2]|0; - $86 = (_lockBtree($85)|0); - HEAP32[$rc>>2] = $86; - $87 = (0)==($86|0); - if ($87) { - continue; - } - } - $88 = HEAP32[$rc>>2]|0; - $89 = ($88|0)==(0); - do { - if ($89) { - $90 = HEAP32[$1>>2]|0; - $91 = ($90|0)!=(0); - if ($91) { - $92 = HEAP32[$pBt>>2]|0; - $93 = (($92) + 22|0); - $94 = HEAP16[$93>>1]|0; - $95 = $94&65535; - $96 = $95 & 1; - $97 = ($96|0)!=(0); - if ($97) { - HEAP32[$rc>>2] = 8; - break; - } - $98 = HEAP32[$pBt>>2]|0; - $99 = HEAP32[$98>>2]|0; - $100 = HEAP32[$1>>2]|0; - $101 = ($100|0)>(1); - $102 = $101&1; - $103 = HEAP32[$0>>2]|0; - $104 = HEAP32[$103>>2]|0; - $105 = (_sqlite3TempInMemory($104)|0); - $106 = (_sqlite3PagerBegin($99,$102,$105)|0); - HEAP32[$rc>>2] = $106; - $107 = HEAP32[$rc>>2]|0; - $108 = ($107|0)==(0); - if ($108) { - $109 = HEAP32[$pBt>>2]|0; - $110 = (_newDatabase($109)|0); - HEAP32[$rc>>2] = $110; - } - } - } - } while(0); - $111 = HEAP32[$rc>>2]|0; - $112 = ($111|0)!=(0); - if ($112) { - $113 = HEAP32[$pBt>>2]|0; - _unlockBtreeIfUnused($113); - } - $114 = HEAP32[$rc>>2]|0; - $115 = $114 & 255; - $116 = ($115|0)==(5); - if (!($116)) { - break; - } - $117 = HEAP32[$pBt>>2]|0; - $118 = (($117) + 20|0); - $119 = HEAP8[$118>>0]|0; - $120 = $119&255; - $121 = ($120|0)==(0); - if (!($121)) { - break; - } - $122 = HEAP32[$pBt>>2]|0; - $123 = (_btreeInvokeBusyHandler($122)|0); - $124 = ($123|0)!=(0); - if (!($124)) { - break; - } - } - $125 = HEAP32[$rc>>2]|0; - $126 = ($125|0)==(0); - if ($126) { - $127 = HEAP32[$0>>2]|0; - $128 = (($127) + 8|0); - $129 = HEAP8[$128>>0]|0; - $130 = $129&255; - $131 = ($130|0)==(0); - if ($131) { - $132 = HEAP32[$pBt>>2]|0; - $133 = (($132) + 40|0); - $134 = HEAP32[$133>>2]|0; - $135 = (($134) + 1)|0; - HEAP32[$133>>2] = $135; - $136 = HEAP32[$0>>2]|0; - $137 = (($136) + 9|0); - $138 = HEAP8[$137>>0]|0; - $139 = ($138<<24>>24)!=(0); - if ($139) { - $140 = HEAP32[$0>>2]|0; - $141 = (($140) + 28|0); - $142 = (($141) + 8|0); - HEAP8[$142>>0] = 1; - $143 = HEAP32[$pBt>>2]|0; - $144 = (($143) + 72|0); - $145 = HEAP32[$144>>2]|0; - $146 = HEAP32[$0>>2]|0; - $147 = (($146) + 28|0); - $148 = (($147) + 12|0); - HEAP32[$148>>2] = $145; - $149 = HEAP32[$0>>2]|0; - $150 = (($149) + 28|0); - $151 = HEAP32[$pBt>>2]|0; - $152 = (($151) + 72|0); - HEAP32[$152>>2] = $150; - } - } - $153 = HEAP32[$1>>2]|0; - $154 = ($153|0)!=(0); - $155 = $154 ? 2 : 1; - $156 = $155&255; - $157 = HEAP32[$0>>2]|0; - $158 = (($157) + 8|0); - HEAP8[$158>>0] = $156; - $159 = HEAP32[$0>>2]|0; - $160 = (($159) + 8|0); - $161 = HEAP8[$160>>0]|0; - $162 = $161&255; - $163 = HEAP32[$pBt>>2]|0; - $164 = (($163) + 20|0); - $165 = HEAP8[$164>>0]|0; - $166 = $165&255; - $167 = ($162|0)>($166|0); - if ($167) { - $168 = HEAP32[$0>>2]|0; - $169 = (($168) + 8|0); - $170 = HEAP8[$169>>0]|0; - $171 = HEAP32[$pBt>>2]|0; - $172 = (($171) + 20|0); - HEAP8[$172>>0] = $170; - } - $173 = HEAP32[$1>>2]|0; - $174 = ($173|0)!=(0); - if ($174) { - $175 = HEAP32[$pBt>>2]|0; - $176 = (($175) + 12|0); - $177 = HEAP32[$176>>2]|0; - HEAP32[$pPage1>>2] = $177; - $178 = HEAP32[$0>>2]|0; - $179 = HEAP32[$pBt>>2]|0; - $180 = (($179) + 76|0); - HEAP32[$180>>2] = $178; - $181 = HEAP32[$pBt>>2]|0; - $182 = (($181) + 22|0); - $183 = HEAP16[$182>>1]|0; - $184 = $183&65535; - $185 = $184 & -33; - $186 = $185&65535; - HEAP16[$182>>1] = $186; - $187 = HEAP32[$1>>2]|0; - $188 = ($187|0)>(1); - if ($188) { - $189 = HEAP32[$pBt>>2]|0; - $190 = (($189) + 22|0); - $191 = HEAP16[$190>>1]|0; - $192 = $191&65535; - $193 = $192 | 32; - $194 = $193&65535; - HEAP16[$190>>1] = $194; - } - $195 = HEAP32[$pBt>>2]|0; - $196 = (($195) + 44|0); - $197 = HEAP32[$196>>2]|0; - $198 = HEAP32[$pPage1>>2]|0; - $199 = (($198) + 56|0); - $200 = HEAP32[$199>>2]|0; - $201 = (($200) + 28|0); - $202 = (_sqlite3Get4byte($201)|0); - $203 = ($197|0)!=($202|0); - if ($203) { - $204 = HEAP32[$pPage1>>2]|0; - $205 = (($204) + 68|0); - $206 = HEAP32[$205>>2]|0; - $207 = (_sqlite3PagerWrite($206)|0); - HEAP32[$rc>>2] = $207; - $208 = HEAP32[$rc>>2]|0; - $209 = ($208|0)==(0); - if ($209) { - $210 = HEAP32[$pPage1>>2]|0; - $211 = (($210) + 56|0); - $212 = HEAP32[$211>>2]|0; - $213 = (($212) + 28|0); - $214 = HEAP32[$pBt>>2]|0; - $215 = (($214) + 44|0); - $216 = HEAP32[$215>>2]|0; - _sqlite3Put4byte($213,$216); - } - } - } - } - } - } - } while(0); - $217 = HEAP32[$rc>>2]|0; - $218 = ($217|0)==(0); - if (!($218)) { - $228 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($228|0); - } - $219 = HEAP32[$1>>2]|0; - $220 = ($219|0)!=(0); - if (!($220)) { - $228 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($228|0); - } - $221 = HEAP32[$pBt>>2]|0; - $222 = HEAP32[$221>>2]|0; - $223 = HEAP32[$0>>2]|0; - $224 = HEAP32[$223>>2]|0; - $225 = (($224) + 488|0); - $226 = HEAP32[$225>>2]|0; - $227 = (_sqlite3PagerOpenSavepoint($222,$226)|0); - HEAP32[$rc>>2] = $227; - $228 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($228|0); -} -function _sqlite3BtreeGetMeta($p,$idx,$pMeta) { - $p = $p|0; - $idx = $idx|0; - $pMeta = $pMeta|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pBt = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $idx; - HEAP32[$2>>2] = $pMeta; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 4|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pBt>>2] = $5; - $6 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($6); - $7 = HEAP32[$1>>2]|0; - $8 = $7<<2; - $9 = (36 + ($8))|0; - $10 = HEAP32[$pBt>>2]|0; - $11 = (($10) + 12|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + 56|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + ($9)|0); - $16 = (_sqlite3Get4byte($15)|0); - $17 = HEAP32[$2>>2]|0; - HEAP32[$17>>2] = $16; - STACKTOP = sp;return; -} -function _sqlite3BtreeIsInReadTrans($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - $5 = ($4|0)!=(0); - $6 = $5&1; - STACKTOP = sp;return ($6|0); -} -function _sqlite3BtreeGetPageSize($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 32|0); - $5 = HEAP32[$4>>2]|0; - STACKTOP = sp;return ($5|0); -} -function _sqlite3PagerGetJournalMode($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 5|0); - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - STACKTOP = sp;return ($4|0); -} -function _sqlite3BtreeLastPage($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - $4 = (_btreePagecount($3)|0); - STACKTOP = sp;return ($4|0); -} -function _sqlite3PagerAcquire($pPager,$pgno,$ppPage,$flags) { - $pPager = $pPager|0; - $pgno = $pgno|0; - $ppPage = $ppPage|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; - var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; - var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; - var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; - var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bMmapOk = 0, $iFrame = 0, $noContent = 0, $pData = 0, $pPg = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $4 = sp + 24|0; - $rc = sp + 20|0; - $pPg = sp + 16|0; - $iFrame = sp + 12|0; - $noContent = sp + 8|0; - $bMmapOk = sp + 4|0; - $pData = sp; - HEAP32[$1>>2] = $pPager; - HEAP32[$2>>2] = $pgno; - HEAP32[$3>>2] = $ppPage; - HEAP32[$4>>2] = $flags; - HEAP32[$rc>>2] = 0; - HEAP32[$pPg>>2] = 0; - HEAP32[$iFrame>>2] = 0; - $5 = HEAP32[$4>>2]|0; - $6 = $5 & 1; - HEAP32[$noContent>>2] = $6; - $7 = 0; - HEAP32[$bMmapOk>>2] = $7; - $8 = HEAP32[$2>>2]|0; - $9 = ($8|0)==(0); - if ($9) { - $10 = (_sqlite3CorruptError(45156)|0); - HEAP32[$0>>2] = $10; - $191 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($191|0); - } - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 40|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)!=(0); - do { - if ($14) { - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 40|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$rc>>2] = $17; - label = 21; - } else { - $18 = HEAP32[$bMmapOk>>2]|0; - $19 = ($18|0)!=(0); - if ($19) { - $20 = HEAP32[$1>>2]|0; - $21 = (_pagerUseWal($20)|0); - $22 = ($21|0)!=(0); - if ($22) { - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 208|0); - $25 = HEAP32[$24>>2]|0; - $26 = HEAP32[$2>>2]|0; - $27 = (_sqlite3WalFindFrame($25,$26,$iFrame)|0); - HEAP32[$rc>>2] = $27; - $28 = HEAP32[$rc>>2]|0; - $29 = ($28|0)!=(0); - if ($29) { - break; - } - } - } - $30 = HEAP32[$bMmapOk>>2]|0; - $31 = ($30|0)!=(0); - if ($31) { - $32 = HEAP32[$iFrame>>2]|0; - $33 = ($32|0)==(0); - if ($33) { - HEAP32[$pData>>2] = 0; - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 60|0); - $36 = HEAP32[$35>>2]|0; - $37 = HEAP32[$2>>2]|0; - $38 = (($37) - 1)|0; - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 152|0); - $41 = HEAP32[$40>>2]|0; - $42 = ($41|0)<(0); - $43 = $42 << 31 >> 31; - $44 = (___muldi3(($38|0),0,($41|0),($43|0))|0); - $45 = tempRet0; - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 152|0); - $48 = HEAP32[$47>>2]|0; - $49 = (_sqlite3OsFetch($36,$44,$45,$48,$pData)|0); - HEAP32[$rc>>2] = $49; - $50 = HEAP32[$rc>>2]|0; - $51 = ($50|0)==(0); - if ($51) { - $52 = HEAP32[$pData>>2]|0; - $53 = ($52|0)!=(0|0); - if ($53) { - $54 = HEAP32[$1>>2]|0; - $55 = (($54) + 16|0); - $56 = HEAP8[$55>>0]|0; - $57 = $56&255; - $58 = ($57|0)>(1); - if ($58) { - $59 = HEAP32[$1>>2]|0; - $60 = (($59) + 204|0); - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$2>>2]|0; - (_sqlite3PcacheFetch($61,$62,0,$pPg)|0); - } - $63 = HEAP32[$pPg>>2]|0; - $64 = ($63|0)==(0|0); - $65 = HEAP32[$1>>2]|0; - if ($64) { - $66 = HEAP32[$2>>2]|0; - $67 = HEAP32[$pData>>2]|0; - $68 = (_pagerAcquireMapPage($65,$66,$67,$pPg)|0); - HEAP32[$rc>>2] = $68; - } else { - $69 = (($65) + 60|0); - $70 = HEAP32[$69>>2]|0; - $71 = HEAP32[$2>>2]|0; - $72 = (($71) - 1)|0; - $73 = HEAP32[$1>>2]|0; - $74 = (($73) + 152|0); - $75 = HEAP32[$74>>2]|0; - $76 = ($75|0)<(0); - $77 = $76 << 31 >> 31; - $78 = (___muldi3(($72|0),0,($75|0),($77|0))|0); - $79 = tempRet0; - $80 = HEAP32[$pData>>2]|0; - (_sqlite3OsUnfetch($70,$78,$79,$80)|0); - } - $81 = HEAP32[$pPg>>2]|0; - $82 = ($81|0)!=(0|0); - if ($82) { - $83 = HEAP32[$pPg>>2]|0; - $84 = HEAP32[$3>>2]|0; - HEAP32[$84>>2] = $83; - HEAP32[$0>>2] = 0; - $191 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($191|0); - } - } - } - $85 = HEAP32[$rc>>2]|0; - $86 = ($85|0)!=(0); - if ($86) { - break; - } - } - } - $87 = HEAP32[$1>>2]|0; - $88 = (($87) + 204|0); - $89 = HEAP32[$88>>2]|0; - $90 = HEAP32[$2>>2]|0; - $91 = HEAP32[$3>>2]|0; - $92 = (_sqlite3PcacheFetch($89,$90,1,$91)|0); - HEAP32[$rc>>2] = $92; - label = 21; - } - } while(0); - do { - if ((label|0) == 21) { - $93 = HEAP32[$rc>>2]|0; - $94 = ($93|0)!=(0); - if ($94) { - HEAP32[$pPg>>2] = 0; - break; - } - $95 = HEAP32[$3>>2]|0; - $96 = HEAP32[$95>>2]|0; - $97 = (($96) + 16|0); - $98 = HEAP32[$97>>2]|0; - $99 = ($98|0)!=(0|0); - if ($99) { - $100 = HEAP32[$noContent>>2]|0; - $101 = ($100|0)!=(0); - if (!($101)) { - $102 = HEAP32[$1>>2]|0; - $103 = (($102) + 184|0); - $104 = HEAP32[$103>>2]|0; - $105 = (($104) + 1)|0; - HEAP32[$103>>2] = $105; - HEAP32[$0>>2] = 0; - $191 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($191|0); - } - } - $106 = HEAP32[$3>>2]|0; - $107 = HEAP32[$106>>2]|0; - HEAP32[$pPg>>2] = $107; - $108 = HEAP32[$1>>2]|0; - $109 = HEAP32[$pPg>>2]|0; - $110 = (($109) + 16|0); - HEAP32[$110>>2] = $108; - $111 = HEAP32[$2>>2]|0; - $112 = ($111>>>0)>(2147483647); - if (!($112)) { - $113 = HEAP32[$2>>2]|0; - $114 = HEAP32[1384>>2]|0; - $115 = HEAP32[$1>>2]|0; - $116 = (($115) + 152|0); - $117 = HEAP32[$116>>2]|0; - $118 = (($114|0) / ($117|0))&-1; - $119 = (($118) + 1)|0; - $120 = ($113|0)==($119|0); - if (!($120)) { - $122 = HEAP32[$1>>2]|0; - $123 = (($122) + 15|0); - $124 = HEAP8[$123>>0]|0; - $125 = $124&255; - $126 = ($125|0)!=(0); - if ($126) { - label = 33; - } else { - $127 = HEAP32[$1>>2]|0; - $128 = (($127) + 24|0); - $129 = HEAP32[$128>>2]|0; - $130 = HEAP32[$2>>2]|0; - $131 = ($129>>>0)<($130>>>0); - if ($131) { - label = 33; - } else { - $132 = HEAP32[$noContent>>2]|0; - $133 = ($132|0)!=(0); - if ($133) { - label = 33; - } else { - $134 = HEAP32[$1>>2]|0; - $135 = (($134) + 60|0); - $136 = HEAP32[$135>>2]|0; - $137 = HEAP32[$136>>2]|0; - $138 = ($137|0)!=(0|0); - if ($138) { - $163 = HEAP32[$1>>2]|0; - $164 = (_pagerUseWal($163)|0); - $165 = ($164|0)!=(0); - if ($165) { - $166 = HEAP32[$bMmapOk>>2]|0; - $167 = ($166|0)==(0); - if ($167) { - $168 = HEAP32[$1>>2]|0; - $169 = (($168) + 208|0); - $170 = HEAP32[$169>>2]|0; - $171 = HEAP32[$2>>2]|0; - $172 = (_sqlite3WalFindFrame($170,$171,$iFrame)|0); - HEAP32[$rc>>2] = $172; - $173 = HEAP32[$rc>>2]|0; - $174 = ($173|0)!=(0); - if ($174) { - break; - } - } - } - $175 = HEAP32[$1>>2]|0; - $176 = (($175) + 184|0); - $177 = (($176) + 4|0); - $178 = HEAP32[$177>>2]|0; - $179 = (($178) + 1)|0; - HEAP32[$177>>2] = $179; - $180 = HEAP32[$pPg>>2]|0; - $181 = HEAP32[$iFrame>>2]|0; - $182 = (_readDbPage($180,$181)|0); - HEAP32[$rc>>2] = $182; - $183 = HEAP32[$rc>>2]|0; - $184 = ($183|0)!=(0); - if ($184) { - break; - } - } else { - label = 33; - } - } - } - } - if ((label|0) == 33) { - $139 = HEAP32[$2>>2]|0; - $140 = HEAP32[$1>>2]|0; - $141 = (($140) + 156|0); - $142 = HEAP32[$141>>2]|0; - $143 = ($139>>>0)>($142>>>0); - if ($143) { - HEAP32[$rc>>2] = 13; - break; - } - $144 = HEAP32[$noContent>>2]|0; - $145 = ($144|0)!=(0); - if ($145) { - _sqlite3BeginBenignMalloc(); - $146 = HEAP32[$2>>2]|0; - $147 = HEAP32[$1>>2]|0; - $148 = (($147) + 28|0); - $149 = HEAP32[$148>>2]|0; - $150 = ($146>>>0)<=($149>>>0); - if ($150) { - $151 = HEAP32[$1>>2]|0; - $152 = (($151) + 56|0); - $153 = HEAP32[$152>>2]|0; - $154 = HEAP32[$2>>2]|0; - (_sqlite3BitvecSet($153,$154)|0); - } - $155 = HEAP32[$1>>2]|0; - $156 = HEAP32[$2>>2]|0; - (_addToSavepointBitvecs($155,$156)|0); - _sqlite3EndBenignMalloc(); - } - $157 = HEAP32[$pPg>>2]|0; - $158 = (($157) + 4|0); - $159 = HEAP32[$158>>2]|0; - $160 = HEAP32[$1>>2]|0; - $161 = (($160) + 152|0); - $162 = HEAP32[$161>>2]|0; - _memset(($159|0),0,($162|0))|0; - } - HEAP32[$0>>2] = 0; - $191 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($191|0); - } - } - $121 = (_sqlite3CorruptError(45227)|0); - HEAP32[$rc>>2] = $121; - } - } while(0); - $185 = HEAP32[$pPg>>2]|0; - $186 = ($185|0)!=(0|0); - if ($186) { - $187 = HEAP32[$pPg>>2]|0; - _sqlite3PcacheDrop($187); - } - $188 = HEAP32[$1>>2]|0; - _pagerUnlockIfUnused($188); - $189 = HEAP32[$3>>2]|0; - HEAP32[$189>>2] = 0; - $190 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $190; - $191 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($191|0); -} -function _backupOnePage($p,$iSrcPg,$zSrcData,$bUpdate) { - $p = $p|0; - $iSrcPg = $iSrcPg|0; - $zSrcData = $zSrcData|0; - $bUpdate = $bUpdate|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; - var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; - var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; - var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; - var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iDest = 0, $iEnd = 0, $iOff = 0, $nCopy = 0, $nDestPgsz = 0, $nSrcPgsz = 0, $pDestPager = 0, $pDestPg = 0, $rc = 0, $zDestData = 0; - var $zIn = 0, $zOut = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 68|0; - $1 = sp + 64|0; - $2 = sp + 60|0; - $3 = sp + 56|0; - $pDestPager = sp + 52|0; - $nSrcPgsz = sp + 48|0; - $nDestPgsz = sp + 44|0; - $nCopy = sp + 40|0; - $iEnd = sp + 8|0; - $rc = sp + 36|0; - $iOff = sp; - $pDestPg = sp + 32|0; - $iDest = sp + 28|0; - $zIn = sp + 24|0; - $zDestData = sp + 20|0; - $zOut = sp + 16|0; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $iSrcPg; - HEAP32[$2>>2] = $zSrcData; - HEAP32[$3>>2] = $bUpdate; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - $7 = (_sqlite3BtreePager($6)|0); - HEAP32[$pDestPager>>2] = $7; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 24|0); - $10 = HEAP32[$9>>2]|0; - $11 = (_sqlite3BtreeGetPageSize($10)|0); - HEAP32[$nSrcPgsz>>2] = $11; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - $15 = (_sqlite3BtreeGetPageSize($14)|0); - HEAP32[$nDestPgsz>>2] = $15; - $16 = HEAP32[$nSrcPgsz>>2]|0; - $17 = HEAP32[$nDestPgsz>>2]|0; - $18 = ($16|0)<($17|0); - $19 = HEAP32[$nSrcPgsz>>2]|0; - $20 = HEAP32[$nDestPgsz>>2]|0; - $21 = $18 ? $19 : $20; - HEAP32[$nCopy>>2] = $21; - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$nSrcPgsz>>2]|0; - $24 = ($23|0)<(0); - $25 = $24 << 31 >> 31; - $26 = (___muldi3(($22|0),0,($23|0),($25|0))|0); - $27 = tempRet0; - $28 = $iEnd; - $29 = $28; - HEAP32[$29>>2] = $26; - $30 = (($28) + 4)|0; - $31 = $30; - HEAP32[$31>>2] = $27; - HEAP32[$rc>>2] = 0; - $32 = HEAP32[$nSrcPgsz>>2]|0; - $33 = HEAP32[$nDestPgsz>>2]|0; - $34 = ($32|0)!=($33|0); - if ($34) { - $35 = HEAP32[$pDestPager>>2]|0; - $36 = (_sqlite3PagerIsMemdb($35)|0); - $37 = ($36|0)!=(0); - if ($37) { - HEAP32[$rc>>2] = 8; - } - } - $38 = $iEnd; - $39 = $38; - $40 = HEAP32[$39>>2]|0; - $41 = (($38) + 4)|0; - $42 = $41; - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$nSrcPgsz>>2]|0; - $45 = ($44|0)<(0); - $46 = $45 << 31 >> 31; - $47 = (_i64Subtract(($40|0),($43|0),($44|0),($46|0))|0); - $48 = tempRet0; - $49 = $iOff; - $50 = $49; - HEAP32[$50>>2] = $47; - $51 = (($49) + 4)|0; - $52 = $51; - HEAP32[$52>>2] = $48; - while(1) { - $53 = HEAP32[$rc>>2]|0; - $54 = ($53|0)==(0); - if (!($54)) { - label = 15; - break; - } - $55 = $iOff; - $56 = $55; - $57 = HEAP32[$56>>2]|0; - $58 = (($55) + 4)|0; - $59 = $58; - $60 = HEAP32[$59>>2]|0; - $61 = $iEnd; - $62 = $61; - $63 = HEAP32[$62>>2]|0; - $64 = (($61) + 4)|0; - $65 = $64; - $66 = HEAP32[$65>>2]|0; - $67 = ($60|0)<($66|0); - $68 = ($60|0)==($66|0); - $69 = ($57>>>0)<($63>>>0); - $70 = $68 & $69; - $71 = $67 | $70; - if (!($71)) { - label = 15; - break; - } - HEAP32[$pDestPg>>2] = 0; - $72 = $iOff; - $73 = $72; - $74 = HEAP32[$73>>2]|0; - $75 = (($72) + 4)|0; - $76 = $75; - $77 = HEAP32[$76>>2]|0; - $78 = HEAP32[$nDestPgsz>>2]|0; - $79 = ($78|0)<(0); - $80 = $79 << 31 >> 31; - $81 = (___divdi3(($74|0),($77|0),($78|0),($80|0))|0); - $82 = tempRet0; - $83 = (($81) + 1)|0; - HEAP32[$iDest>>2] = $83; - $84 = HEAP32[$iDest>>2]|0; - $85 = HEAP32[1384>>2]|0; - $86 = HEAP32[$0>>2]|0; - $87 = (($86) + 4|0); - $88 = HEAP32[$87>>2]|0; - $89 = (($88) + 4|0); - $90 = HEAP32[$89>>2]|0; - $91 = (($90) + 32|0); - $92 = HEAP32[$91>>2]|0; - $93 = (($85>>>0) / ($92>>>0))&-1; - $94 = (($93) + 1)|0; - $95 = ($84|0)==($94|0); - if (!($95)) { - $96 = HEAP32[$pDestPager>>2]|0; - $97 = HEAP32[$iDest>>2]|0; - $98 = (_sqlite3PagerAcquire($96,$97,$pDestPg,0)|0); - HEAP32[$rc>>2] = $98; - $99 = (0)==($98|0); - if ($99) { - $100 = HEAP32[$pDestPg>>2]|0; - $101 = (_sqlite3PagerWrite($100)|0); - HEAP32[$rc>>2] = $101; - $102 = (0)==($101|0); - if ($102) { - $103 = $iOff; - $104 = $103; - $105 = HEAP32[$104>>2]|0; - $106 = (($103) + 4)|0; - $107 = $106; - $108 = HEAP32[$107>>2]|0; - $109 = HEAP32[$nSrcPgsz>>2]|0; - $110 = ($109|0)<(0); - $111 = $110 << 31 >> 31; - $112 = (___remdi3(($105|0),($108|0),($109|0),($111|0))|0); - $113 = tempRet0; - $114 = HEAP32[$2>>2]|0; - $115 = (($114) + ($112)|0); - HEAP32[$zIn>>2] = $115; - $116 = HEAP32[$pDestPg>>2]|0; - $117 = (_sqlite3PagerGetData($116)|0); - HEAP32[$zDestData>>2] = $117; - $118 = $iOff; - $119 = $118; - $120 = HEAP32[$119>>2]|0; - $121 = (($118) + 4)|0; - $122 = $121; - $123 = HEAP32[$122>>2]|0; - $124 = HEAP32[$nDestPgsz>>2]|0; - $125 = ($124|0)<(0); - $126 = $125 << 31 >> 31; - $127 = (___remdi3(($120|0),($123|0),($124|0),($126|0))|0); - $128 = tempRet0; - $129 = HEAP32[$zDestData>>2]|0; - $130 = (($129) + ($127)|0); - HEAP32[$zOut>>2] = $130; - $131 = HEAP32[$zOut>>2]|0; - $132 = HEAP32[$zIn>>2]|0; - $133 = HEAP32[$nCopy>>2]|0; - _memcpy(($131|0),($132|0),($133|0))|0; - $134 = HEAP32[$pDestPg>>2]|0; - $135 = (_sqlite3PagerGetExtra($134)|0); - HEAP8[$135>>0] = 0; - $136 = $iOff; - $137 = $136; - $138 = HEAP32[$137>>2]|0; - $139 = (($136) + 4)|0; - $140 = $139; - $141 = HEAP32[$140>>2]|0; - $142 = ($138|0)==(0); - $143 = ($141|0)==(0); - $144 = $142 & $143; - if ($144) { - $145 = HEAP32[$3>>2]|0; - $146 = ($145|0)==(0); - if ($146) { - $147 = HEAP32[$zOut>>2]|0; - $148 = (($147) + 28|0); - $149 = HEAP32[$0>>2]|0; - $150 = (($149) + 24|0); - $151 = HEAP32[$150>>2]|0; - $152 = (_sqlite3BtreeLastPage($151)|0); - _sqlite3Put4byte($148,$152); - } - } - } - } - $153 = HEAP32[$pDestPg>>2]|0; - _sqlite3PagerUnref($153); - } - $154 = HEAP32[$nDestPgsz>>2]|0; - $155 = ($154|0)<(0); - $156 = $155 << 31 >> 31; - $157 = $iOff; - $158 = $157; - $159 = HEAP32[$158>>2]|0; - $160 = (($157) + 4)|0; - $161 = $160; - $162 = HEAP32[$161>>2]|0; - $163 = (_i64Add(($159|0),($162|0),($154|0),($156|0))|0); - $164 = tempRet0; - $165 = $iOff; - $166 = $165; - HEAP32[$166>>2] = $163; - $167 = (($165) + 4)|0; - $168 = $167; - HEAP32[$168>>2] = $164; - } - if ((label|0) == 15) { - $169 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($169|0); - } - return 0|0; -} -function _sqlite3PagerGetData($pPg) { - $pPg = $pPg|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPg; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _sqlite3PagerUnref($pPg) { - $pPg = $pPg|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPg; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if (!($2)) { - STACKTOP = sp;return; - } - $3 = HEAP32[$0>>2]|0; - _sqlite3PagerUnrefNotNull($3); - STACKTOP = sp;return; -} -function _attachBackupObject($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pp = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 24|0); - $3 = HEAP32[$2>>2]|0; - $4 = (_sqlite3BtreePager($3)|0); - $5 = (_sqlite3PagerBackupPtr($4)|0); - HEAP32[$pp>>2] = $5; - $6 = HEAP32[$pp>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 44|0); - HEAP32[$9>>2] = $7; - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$pp>>2]|0; - HEAP32[$11>>2] = $10; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 40|0); - HEAP32[$13>>2] = 1; - STACKTOP = sp;return; -} -function _sqlite3BtreeNewDb($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($1); - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - $5 = (($4) + 44|0); - HEAP32[$5>>2] = 0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - $9 = (_newDatabase($8)|0); - HEAP32[$rc>>2] = $9; - $10 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($10|0); -} -function _sqlite3BtreeUpdateMeta($p,$idx,$iMeta) { - $p = $p|0; - $idx = $idx|0; - $iMeta = $iMeta|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $pP1 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $pBt = sp + 8|0; - $pP1 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $idx; - HEAP32[$2>>2] = $iMeta; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 4|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pBt>>2] = $5; - $6 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($6); - $7 = HEAP32[$pBt>>2]|0; - $8 = (($7) + 12|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + 56|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$pP1>>2] = $11; - $12 = HEAP32[$pBt>>2]|0; - $13 = (($12) + 12|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + 68|0); - $16 = HEAP32[$15>>2]|0; - $17 = (_sqlite3PagerWrite($16)|0); - HEAP32[$rc>>2] = $17; - $18 = HEAP32[$rc>>2]|0; - $19 = ($18|0)==(0); - if (!($19)) { - $32 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($32|0); - } - $20 = HEAP32[$1>>2]|0; - $21 = $20<<2; - $22 = (36 + ($21))|0; - $23 = HEAP32[$pP1>>2]|0; - $24 = (($23) + ($22)|0); - $25 = HEAP32[$2>>2]|0; - _sqlite3Put4byte($24,$25); - $26 = HEAP32[$1>>2]|0; - $27 = ($26|0)==(7); - if (!($27)) { - $32 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($32|0); - } - $28 = HEAP32[$2>>2]|0; - $29 = $28&255; - $30 = HEAP32[$pBt>>2]|0; - $31 = (($30) + 18|0); - HEAP8[$31>>0] = $29; - $32 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($32|0); -} -function _sqlite3ResetAllSchemasOfConnection($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pDb = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $i = sp + 4|0; - $pDb = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnterAll($1); - HEAP32[$i>>2] = 0; - while(1) { - $2 = HEAP32[$i>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 20|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($2|0)<($5|0); - if (!($6)) { - break; - } - $7 = HEAP32[$i>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 16|0); - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + ($7<<4)|0); - HEAP32[$pDb>>2] = $11; - $12 = HEAP32[$pDb>>2]|0; - $13 = (($12) + 12|0); - $14 = HEAP32[$13>>2]|0; - $15 = ($14|0)!=(0|0); - if ($15) { - $16 = HEAP32[$pDb>>2]|0; - $17 = (($16) + 12|0); - $18 = HEAP32[$17>>2]|0; - _sqlite3SchemaClear($18); - } - $19 = HEAP32[$i>>2]|0; - $20 = (($19) + 1)|0; - HEAP32[$i>>2] = $20; - } - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 24|0); - $23 = HEAP32[$22>>2]|0; - $24 = $23 & -3; - HEAP32[$22>>2] = $24; - $25 = HEAP32[$0>>2]|0; - _sqlite3VtabUnlockList($25); - $26 = HEAP32[$0>>2]|0; - _sqlite3CollapseDatabaseArray($26); - STACKTOP = sp;return; -} -function _sqlite3BtreeSetVersion($pBtree,$iVersion) { - $pBtree = $pBtree|0; - $iVersion = $iVersion|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $aData = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $pBt = sp + 8|0; - $rc = sp + 4|0; - $aData = sp; - HEAP32[$0>>2] = $pBtree; - HEAP32[$1>>2] = $iVersion; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pBt>>2] = $4; - $5 = HEAP32[$pBt>>2]|0; - $6 = (($5) + 22|0); - $7 = HEAP16[$6>>1]|0; - $8 = $7&65535; - $9 = $8 & -17; - $10 = $9&65535; - HEAP16[$6>>1] = $10; - $11 = HEAP32[$1>>2]|0; - $12 = ($11|0)==(1); - if ($12) { - $13 = HEAP32[$pBt>>2]|0; - $14 = (($13) + 22|0); - $15 = HEAP16[$14>>1]|0; - $16 = $15&65535; - $17 = $16 | 16; - $18 = $17&65535; - HEAP16[$14>>1] = $18; - } - $19 = HEAP32[$0>>2]|0; - $20 = (_sqlite3BtreeBeginTrans($19,0)|0); - HEAP32[$rc>>2] = $20; - $21 = HEAP32[$rc>>2]|0; - $22 = ($21|0)==(0); - do { - if ($22) { - $23 = HEAP32[$pBt>>2]|0; - $24 = (($23) + 12|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + 56|0); - $27 = HEAP32[$26>>2]|0; - HEAP32[$aData>>2] = $27; - $28 = HEAP32[$aData>>2]|0; - $29 = (($28) + 18|0); - $30 = HEAP8[$29>>0]|0; - $31 = $30&255; - $32 = HEAP32[$1>>2]|0; - $33 = $32&255; - $34 = $33&255; - $35 = ($31|0)!=($34|0); - if (!($35)) { - $36 = HEAP32[$aData>>2]|0; - $37 = (($36) + 19|0); - $38 = HEAP8[$37>>0]|0; - $39 = $38&255; - $40 = HEAP32[$1>>2]|0; - $41 = $40&255; - $42 = $41&255; - $43 = ($39|0)!=($42|0); - if (!($43)) { - break; - } - } - $44 = HEAP32[$0>>2]|0; - $45 = (_sqlite3BtreeBeginTrans($44,2)|0); - HEAP32[$rc>>2] = $45; - $46 = HEAP32[$rc>>2]|0; - $47 = ($46|0)==(0); - if ($47) { - $48 = HEAP32[$pBt>>2]|0; - $49 = (($48) + 12|0); - $50 = HEAP32[$49>>2]|0; - $51 = (($50) + 68|0); - $52 = HEAP32[$51>>2]|0; - $53 = (_sqlite3PagerWrite($52)|0); - HEAP32[$rc>>2] = $53; - $54 = HEAP32[$rc>>2]|0; - $55 = ($54|0)==(0); - if ($55) { - $56 = HEAP32[$1>>2]|0; - $57 = $56&255; - $58 = HEAP32[$aData>>2]|0; - $59 = (($58) + 18|0); - HEAP8[$59>>0] = $57; - $60 = HEAP32[$1>>2]|0; - $61 = $60&255; - $62 = HEAP32[$aData>>2]|0; - $63 = (($62) + 19|0); - HEAP8[$63>>0] = $61; - } - } - } - } while(0); - $64 = HEAP32[$pBt>>2]|0; - $65 = (($64) + 22|0); - $66 = HEAP16[$65>>1]|0; - $67 = $66&65535; - $68 = $67 & -17; - $69 = $68&65535; - HEAP16[$65>>1] = $69; - $70 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($70|0); -} -function _sqlite3PagerFile($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 60|0); - $3 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _sqlite3PagerPagecount($pPager,$pnPage) { - $pPager = $pPager|0; - $pnPage = $pnPage|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $pnPage; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 24|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$1>>2]|0; - HEAP32[$5>>2] = $4; - STACKTOP = sp;return; -} -function _sqlite3PagerWrite($pDbPage) { - $pDbPage = $pDbPage|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; - var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; - var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; - var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; - var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; - var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $ii = 0, $nPage = 0, $nPageCount = 0, $nPagePerSector = 0, $needSync = 0, $pPage = 0, $pPage1 = 0, $pPager = 0, $pPg = 0, $pg = 0, $pg1 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 48|0; - $rc = sp + 44|0; - $pPg = sp + 40|0; - $pPager = sp + 36|0; - $nPageCount = sp + 32|0; - $pg1 = sp + 28|0; - $nPage = sp + 24|0; - $ii = sp + 20|0; - $needSync = sp + 16|0; - $nPagePerSector = sp + 12|0; - $pg = sp + 8|0; - $pPage = sp + 4|0; - $pPage1 = sp; - HEAP32[$0>>2] = $pDbPage; - HEAP32[$rc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - HEAP32[$pPg>>2] = $1; - $2 = HEAP32[$pPg>>2]|0; - $3 = (($2) + 16|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pPager>>2] = $4; - $5 = HEAP32[$pPager>>2]|0; - $6 = (($5) + 148|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$pPager>>2]|0; - $9 = (($8) + 152|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($7>>>0)>($10>>>0); - if (!($11)) { - $142 = HEAP32[$0>>2]|0; - $143 = (_pager_write($142)|0); - HEAP32[$rc>>2] = $143; - $144 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($144|0); - } - HEAP32[$nPage>>2] = 0; - HEAP32[$needSync>>2] = 0; - $12 = HEAP32[$pPager>>2]|0; - $13 = (($12) + 148|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$pPager>>2]|0; - $16 = (($15) + 152|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($14>>>0) / ($17>>>0))&-1; - HEAP32[$nPagePerSector>>2] = $18; - $19 = HEAP32[$pPager>>2]|0; - $20 = (($19) + 20|0); - $21 = HEAP8[$20>>0]|0; - $22 = $21&255; - $23 = $22 | 4; - $24 = $23&255; - HEAP8[$20>>0] = $24; - $25 = HEAP32[$pPg>>2]|0; - $26 = (($25) + 20|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) - 1)|0; - $29 = HEAP32[$nPagePerSector>>2]|0; - $30 = (($29) - 1)|0; - $31 = $30 ^ -1; - $32 = $28 & $31; - $33 = (($32) + 1)|0; - HEAP32[$pg1>>2] = $33; - $34 = HEAP32[$pPager>>2]|0; - $35 = (($34) + 24|0); - $36 = HEAP32[$35>>2]|0; - HEAP32[$nPageCount>>2] = $36; - $37 = HEAP32[$pPg>>2]|0; - $38 = (($37) + 20|0); - $39 = HEAP32[$38>>2]|0; - $40 = HEAP32[$nPageCount>>2]|0; - $41 = ($39>>>0)>($40>>>0); - do { - if ($41) { - $42 = HEAP32[$pPg>>2]|0; - $43 = (($42) + 20|0); - $44 = HEAP32[$43>>2]|0; - $45 = HEAP32[$pg1>>2]|0; - $46 = (($44) - ($45))|0; - $47 = (($46) + 1)|0; - HEAP32[$nPage>>2] = $47; - } else { - $48 = HEAP32[$pg1>>2]|0; - $49 = HEAP32[$nPagePerSector>>2]|0; - $50 = (($48) + ($49))|0; - $51 = (($50) - 1)|0; - $52 = HEAP32[$nPageCount>>2]|0; - $53 = ($51>>>0)>($52>>>0); - if ($53) { - $54 = HEAP32[$nPageCount>>2]|0; - $55 = (($54) + 1)|0; - $56 = HEAP32[$pg1>>2]|0; - $57 = (($55) - ($56))|0; - HEAP32[$nPage>>2] = $57; - break; - } else { - $58 = HEAP32[$nPagePerSector>>2]|0; - HEAP32[$nPage>>2] = $58; - break; - } - } - } while(0); - HEAP32[$ii>>2] = 0; - while(1) { - $59 = HEAP32[$ii>>2]|0; - $60 = HEAP32[$nPage>>2]|0; - $61 = ($59|0)<($60|0); - if (!($61)) { - break; - } - $62 = HEAP32[$rc>>2]|0; - $63 = ($62|0)==(0); - if (!($63)) { - break; - } - $64 = HEAP32[$pg1>>2]|0; - $65 = HEAP32[$ii>>2]|0; - $66 = (($64) + ($65))|0; - HEAP32[$pg>>2] = $66; - $67 = HEAP32[$pg>>2]|0; - $68 = HEAP32[$pPg>>2]|0; - $69 = (($68) + 20|0); - $70 = HEAP32[$69>>2]|0; - $71 = ($67|0)==($70|0); - if ($71) { - label = 12; - } else { - $72 = HEAP32[$pPager>>2]|0; - $73 = (($72) + 56|0); - $74 = HEAP32[$73>>2]|0; - $75 = HEAP32[$pg>>2]|0; - $76 = (_sqlite3BitvecTest($74,$75)|0); - $77 = ($76|0)!=(0); - if ($77) { - $100 = HEAP32[$pPager>>2]|0; - $101 = HEAP32[$pg>>2]|0; - $102 = (_pager_lookup($100,$101)|0); - HEAP32[$pPage>>2] = $102; - $103 = ($102|0)!=(0|0); - if ($103) { - $104 = HEAP32[$pPage>>2]|0; - $105 = (($104) + 24|0); - $106 = HEAP16[$105>>1]|0; - $107 = $106&65535; - $108 = $107 & 4; - $109 = ($108|0)!=(0); - if ($109) { - HEAP32[$needSync>>2] = 1; - } - $110 = HEAP32[$pPage>>2]|0; - _sqlite3PagerUnrefNotNull($110); - } - } else { - label = 12; - } - } - if ((label|0) == 12) { - label = 0; - $78 = HEAP32[$pg>>2]|0; - $79 = HEAP32[1384>>2]|0; - $80 = HEAP32[$pPager>>2]|0; - $81 = (($80) + 152|0); - $82 = HEAP32[$81>>2]|0; - $83 = (($79|0) / ($82|0))&-1; - $84 = (($83) + 1)|0; - $85 = ($78|0)!=($84|0); - if ($85) { - $86 = HEAP32[$pPager>>2]|0; - $87 = HEAP32[$pg>>2]|0; - $88 = (_sqlite3PagerAcquire($86,$87,$pPage,0)|0); - HEAP32[$rc>>2] = $88; - $89 = HEAP32[$rc>>2]|0; - $90 = ($89|0)==(0); - if ($90) { - $91 = HEAP32[$pPage>>2]|0; - $92 = (_pager_write($91)|0); - HEAP32[$rc>>2] = $92; - $93 = HEAP32[$pPage>>2]|0; - $94 = (($93) + 24|0); - $95 = HEAP16[$94>>1]|0; - $96 = $95&65535; - $97 = $96 & 4; - $98 = ($97|0)!=(0); - if ($98) { - HEAP32[$needSync>>2] = 1; - } - $99 = HEAP32[$pPage>>2]|0; - _sqlite3PagerUnrefNotNull($99); - } - } - } - $111 = HEAP32[$ii>>2]|0; - $112 = (($111) + 1)|0; - HEAP32[$ii>>2] = $112; - } - $113 = HEAP32[$rc>>2]|0; - $114 = ($113|0)==(0); - L32: do { - if ($114) { - $115 = HEAP32[$needSync>>2]|0; - $116 = ($115|0)!=(0); - if ($116) { - HEAP32[$ii>>2] = 0; - while(1) { - $117 = HEAP32[$ii>>2]|0; - $118 = HEAP32[$nPage>>2]|0; - $119 = ($117|0)<($118|0); - if (!($119)) { - break L32; - } - $120 = HEAP32[$pPager>>2]|0; - $121 = HEAP32[$pg1>>2]|0; - $122 = HEAP32[$ii>>2]|0; - $123 = (($121) + ($122))|0; - $124 = (_pager_lookup($120,$123)|0); - HEAP32[$pPage1>>2] = $124; - $125 = HEAP32[$pPage1>>2]|0; - $126 = ($125|0)!=(0|0); - if ($126) { - $127 = HEAP32[$pPage1>>2]|0; - $128 = (($127) + 24|0); - $129 = HEAP16[$128>>1]|0; - $130 = $129&65535; - $131 = $130 | 4; - $132 = $131&65535; - HEAP16[$128>>1] = $132; - $133 = HEAP32[$pPage1>>2]|0; - _sqlite3PagerUnrefNotNull($133); - } - $134 = HEAP32[$ii>>2]|0; - $135 = (($134) + 1)|0; - HEAP32[$ii>>2] = $135; - } - } - } - } while(0); - $136 = HEAP32[$pPager>>2]|0; - $137 = (($136) + 20|0); - $138 = HEAP8[$137>>0]|0; - $139 = $138&255; - $140 = $139 & -5; - $141 = $140&255; - HEAP8[$137>>0] = $141; - $144 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($144|0); -} -function _sqlite3PagerCommitPhaseOne($pPager,$zMaster,$noSync) { - $pPager = $pPager|0; - $zMaster = $zMaster|0; - $noSync = $noSync|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $12 = 0, $13 = 0, $14 = 0; - var $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; - var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; - var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; - var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; - var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $nNew = 0, $pList = 0, $pPageOne = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $rc = sp + 12|0; - $pList = sp + 8|0; - $pPageOne = sp + 4|0; - $nNew = sp; - HEAP32[$1>>2] = $pPager; - HEAP32[$2>>2] = $zMaster; - HEAP32[$3>>2] = $noSync; - HEAP32[$rc>>2] = 0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 40|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0); - $8 = HEAP32[$1>>2]|0; - if ($7) { - $9 = (($8) + 40|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$0>>2] = $10; - $112 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($112|0); - } - $11 = (($8) + 16|0); - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = ($13|0)<(3); - if ($14) { - HEAP32[$0>>2] = 0; - $112 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($112|0); - } - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 15|0); - $17 = HEAP8[$16>>0]|0; - $18 = ($17<<24>>24)!=(0); - $19 = HEAP32[$1>>2]|0; - do { - if ($18) { - $20 = (($19) + 88|0); - $21 = HEAP32[$20>>2]|0; - _sqlite3BackupRestart($21); - } else { - $22 = (_pagerUseWal($19)|0); - $23 = ($22|0)!=(0); - $24 = HEAP32[$1>>2]|0; - if ($23) { - $25 = (($24) + 204|0); - $26 = HEAP32[$25>>2]|0; - $27 = (_sqlite3PcacheDirtyList($26)|0); - HEAP32[$pList>>2] = $27; - HEAP32[$pPageOne>>2] = 0; - $28 = HEAP32[$pList>>2]|0; - $29 = ($28|0)==(0|0); - if ($29) { - $30 = HEAP32[$1>>2]|0; - $31 = (_sqlite3PagerAcquire($30,1,$pPageOne,0)|0); - HEAP32[$rc>>2] = $31; - $32 = HEAP32[$pPageOne>>2]|0; - HEAP32[$pList>>2] = $32; - $33 = HEAP32[$pList>>2]|0; - $34 = (($33) + 12|0); - HEAP32[$34>>2] = 0; - } - $35 = HEAP32[$pList>>2]|0; - $36 = ($35|0)!=(0|0); - if ($36) { - $37 = HEAP32[$1>>2]|0; - $38 = HEAP32[$pList>>2]|0; - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 24|0); - $41 = HEAP32[$40>>2]|0; - $42 = (_pagerWalFrames($37,$38,$41,1)|0); - HEAP32[$rc>>2] = $42; - } - $43 = HEAP32[$pPageOne>>2]|0; - _sqlite3PagerUnref($43); - $44 = HEAP32[$rc>>2]|0; - $45 = ($44|0)==(0); - if (!($45)) { - break; - } - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 204|0); - $48 = HEAP32[$47>>2]|0; - _sqlite3PcacheCleanAll($48); - break; - } - $49 = (_pager_incr_changecounter($24,0)|0); - HEAP32[$rc>>2] = $49; - $50 = HEAP32[$rc>>2]|0; - $51 = ($50|0)!=(0); - if (!($51)) { - $52 = HEAP32[$1>>2]|0; - $53 = HEAP32[$2>>2]|0; - $54 = (_writeMasterJournal($52,$53)|0); - HEAP32[$rc>>2] = $54; - $55 = HEAP32[$rc>>2]|0; - $56 = ($55|0)!=(0); - if (!($56)) { - $57 = HEAP32[$1>>2]|0; - $58 = (_syncJournal($57,0)|0); - HEAP32[$rc>>2] = $58; - $59 = HEAP32[$rc>>2]|0; - $60 = ($59|0)!=(0); - if (!($60)) { - $61 = HEAP32[$1>>2]|0; - $62 = HEAP32[$1>>2]|0; - $63 = (($62) + 204|0); - $64 = HEAP32[$63>>2]|0; - $65 = (_sqlite3PcacheDirtyList($64)|0); - $66 = (_pager_write_pagelist($61,$65)|0); - HEAP32[$rc>>2] = $66; - $67 = HEAP32[$rc>>2]|0; - $68 = ($67|0)!=(0); - if (!($68)) { - $69 = HEAP32[$1>>2]|0; - $70 = (($69) + 204|0); - $71 = HEAP32[$70>>2]|0; - _sqlite3PcacheCleanAll($71); - $72 = HEAP32[$1>>2]|0; - $73 = (($72) + 24|0); - $74 = HEAP32[$73>>2]|0; - $75 = HEAP32[$1>>2]|0; - $76 = (($75) + 32|0); - $77 = HEAP32[$76>>2]|0; - $78 = ($74>>>0)>($77>>>0); - if ($78) { - $79 = HEAP32[$1>>2]|0; - $80 = (($79) + 24|0); - $81 = HEAP32[$80>>2]|0; - $82 = HEAP32[$1>>2]|0; - $83 = (($82) + 24|0); - $84 = HEAP32[$83>>2]|0; - $85 = HEAP32[1384>>2]|0; - $86 = HEAP32[$1>>2]|0; - $87 = (($86) + 152|0); - $88 = HEAP32[$87>>2]|0; - $89 = (($85|0) / ($88|0))&-1; - $90 = (($89) + 1)|0; - $91 = ($84|0)==($90|0); - $92 = $91&1; - $93 = (($81) - ($92))|0; - HEAP32[$nNew>>2] = $93; - $94 = HEAP32[$1>>2]|0; - $95 = HEAP32[$nNew>>2]|0; - $96 = (_pager_truncate($94,$95)|0); - HEAP32[$rc>>2] = $96; - $97 = HEAP32[$rc>>2]|0; - $98 = ($97|0)!=(0); - if ($98) { - break; - } - } - $99 = HEAP32[$3>>2]|0; - $100 = ($99|0)!=(0); - if (!($100)) { - $101 = HEAP32[$1>>2]|0; - $102 = HEAP32[$2>>2]|0; - $103 = (_sqlite3PagerSync($101,$102)|0); - HEAP32[$rc>>2] = $103; - } - } - } - } - } - } - } while(0); - $104 = HEAP32[$rc>>2]|0; - $105 = ($104|0)==(0); - if ($105) { - $106 = HEAP32[$1>>2]|0; - $107 = (_pagerUseWal($106)|0); - $108 = ($107|0)!=(0); - if (!($108)) { - $109 = HEAP32[$1>>2]|0; - $110 = (($109) + 16|0); - HEAP8[$110>>0] = 5; - } - } - $111 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $111; - $112 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($112|0); -} -function _sqlite3OsWrite($id,$pBuf,$amt,$0,$1) { - $id = $id|0; - $pBuf = $pBuf|0; - $amt = $amt|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $5 = sp; - HEAP32[$2>>2] = $id; - HEAP32[$3>>2] = $pBuf; - HEAP32[$4>>2] = $amt; - $6 = $5; - $7 = $6; - HEAP32[$7>>2] = $0; - $8 = (($6) + 4)|0; - $9 = $8; - HEAP32[$9>>2] = $1; - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + 12|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$3>>2]|0; - $16 = HEAP32[$4>>2]|0; - $17 = $5; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = (($17) + 4)|0; - $21 = $20; - $22 = HEAP32[$21>>2]|0; - $23 = (FUNCTION_TABLE_iiiiii[$13 & 15]($14,$15,$16,$19,$22)|0); - STACKTOP = sp;return ($23|0); -} -function _backupTruncateFile($pFile,$0,$1) { - $pFile = $pFile|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iCurrent = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 20|0; - $3 = sp + 8|0; - $iCurrent = sp; - $rc = sp + 16|0; - HEAP32[$2>>2] = $pFile; - $4 = $3; - $5 = $4; - HEAP32[$5>>2] = $0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = $1; - $8 = HEAP32[$2>>2]|0; - $9 = (_sqlite3OsFileSize($8,$iCurrent)|0); - HEAP32[$rc>>2] = $9; - $10 = HEAP32[$rc>>2]|0; - $11 = ($10|0)==(0); - if (!($11)) { - $37 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($37|0); - } - $12 = $iCurrent; - $13 = $12; - $14 = HEAP32[$13>>2]|0; - $15 = (($12) + 4)|0; - $16 = $15; - $17 = HEAP32[$16>>2]|0; - $18 = $3; - $19 = $18; - $20 = HEAP32[$19>>2]|0; - $21 = (($18) + 4)|0; - $22 = $21; - $23 = HEAP32[$22>>2]|0; - $24 = ($17|0)>($23|0); - $25 = ($17|0)==($23|0); - $26 = ($14>>>0)>($20>>>0); - $27 = $25 & $26; - $28 = $24 | $27; - if (!($28)) { - $37 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($37|0); - } - $29 = HEAP32[$2>>2]|0; - $30 = $3; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $33 = (($30) + 4)|0; - $34 = $33; - $35 = HEAP32[$34>>2]|0; - $36 = (_sqlite3OsTruncate($29,$32,$35)|0); - HEAP32[$rc>>2] = $36; - $37 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($37|0); -} -function _sqlite3PagerSync($pPager,$zMaster) { - $pPager = $pPager|0; - $zMaster = $zMaster|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pArg = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $rc = sp + 4|0; - $pArg = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $zMaster; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 60|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0|0); - if ($6) { - $7 = HEAP32[$1>>2]|0; - HEAP32[$pArg>>2] = $7; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 60|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$pArg>>2]|0; - $12 = (_sqlite3OsFileControl($10,21,$11)|0); - HEAP32[$rc>>2] = $12; - $13 = HEAP32[$rc>>2]|0; - $14 = ($13|0)==(12); - $$ = $14 ? 0 : $12; - HEAP32[$rc>>2] = $$; - } - $15 = HEAP32[$rc>>2]|0; - $16 = ($15|0)==(0); - if (!($16)) { - $29 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($29|0); - } - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 7|0); - $19 = HEAP8[$18>>0]|0; - $20 = ($19<<24>>24)!=(0); - if ($20) { - $29 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($29|0); - } - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 60|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 11|0); - $26 = HEAP8[$25>>0]|0; - $27 = $26&255; - $28 = (_sqlite3OsSync($23,$27)|0); - HEAP32[$rc>>2] = $28; - $29 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($29|0); -} -function _sqlite3PagerTruncateImage($pPager,$nPage) { - $pPager = $pPager|0; - $nPage = $nPage|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $nPage; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 24|0); - HEAP32[$4>>2] = $2; - STACKTOP = sp;return; -} -function _sqlite3BtreeCommitPhaseTwo($p,$bCleanup) { - $p = $p|0; - $bCleanup = $bCleanup|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $rc = sp + 4|0; - $pBt = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $bCleanup; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 8|0); - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = ($6|0)==(0); - if ($7) { - HEAP32[$0>>2] = 0; - $29 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($29|0); - } - $8 = HEAP32[$1>>2]|0; - _sqlite3BtreeEnter($8); - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 8|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = ($12|0)==(2); - if ($13) { - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 4|0); - $16 = HEAP32[$15>>2]|0; - HEAP32[$pBt>>2] = $16; - $17 = HEAP32[$pBt>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = (_sqlite3PagerCommitPhaseTwo($18)|0); - HEAP32[$rc>>2] = $19; - $20 = HEAP32[$rc>>2]|0; - $21 = ($20|0)!=(0); - if ($21) { - $22 = HEAP32[$2>>2]|0; - $23 = ($22|0)==(0); - if ($23) { - $24 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $24; - $29 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($29|0); - } - } - $25 = HEAP32[$pBt>>2]|0; - $26 = (($25) + 20|0); - HEAP8[$26>>0] = 1; - $27 = HEAP32[$pBt>>2]|0; - _btreeClearHasContent($27); - } - $28 = HEAP32[$1>>2]|0; - _btreeEndTransaction($28); - HEAP32[$0>>2] = 0; - $29 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($29|0); -} -function _sqlite3BtreeCommitPhaseOne($p,$zMaster) { - $p = $p|0; - $zMaster = $zMaster|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $rc = sp + 4|0; - $pBt = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $zMaster; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 8|0); - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = ($6|0)==(2); - if ($7) { - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$pBt>>2] = $10; - $11 = HEAP32[$1>>2]|0; - _sqlite3BtreeEnter($11); - $12 = HEAP32[$pBt>>2]|0; - $13 = (($12) + 17|0); - $14 = HEAP8[$13>>0]|0; - $15 = ($14<<24>>24)!=(0); - if ($15) { - $16 = HEAP32[$pBt>>2]|0; - $17 = (_autoVacuumCommit($16)|0); - HEAP32[$rc>>2] = $17; - $18 = HEAP32[$rc>>2]|0; - $19 = ($18|0)!=(0); - if ($19) { - $20 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $20; - $35 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($35|0); - } - } - $21 = HEAP32[$pBt>>2]|0; - $22 = (($21) + 19|0); - $23 = HEAP8[$22>>0]|0; - $24 = ($23<<24>>24)!=(0); - if ($24) { - $25 = HEAP32[$pBt>>2]|0; - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$pBt>>2]|0; - $28 = (($27) + 44|0); - $29 = HEAP32[$28>>2]|0; - _sqlite3PagerTruncateImage($26,$29); - } - $30 = HEAP32[$pBt>>2]|0; - $31 = HEAP32[$30>>2]|0; - $32 = HEAP32[$2>>2]|0; - $33 = (_sqlite3PagerCommitPhaseOne($31,$32,0)|0); - HEAP32[$rc>>2] = $33; - } - $34 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $34; - $35 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($35|0); -} -function _sqlite3_backup_finish($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $pSrcDb = 0, $pp = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 20|0; - $1 = sp + 16|0; - $pp = sp + 12|0; - $pSrcDb = sp + 8|0; - $rc = sp + 4|0; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0|0); - if ($3) { - HEAP32[$0>>2] = 0; - $64 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($64|0); - } - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 20|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$pSrcDb>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 24|0); - $9 = HEAP32[$8>>2]|0; - _sqlite3BtreeEnter($9); - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)!=(0|0); - if ($12) { - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 24|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + 16|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + -1)|0; - HEAP32[$16>>2] = $18; - } - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 40|0); - $21 = HEAP32[$20>>2]|0; - $22 = ($21|0)!=(0); - if ($22) { - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 24|0); - $25 = HEAP32[$24>>2]|0; - $26 = (_sqlite3BtreePager($25)|0); - $27 = (_sqlite3PagerBackupPtr($26)|0); - HEAP32[$pp>>2] = $27; - while(1) { - $28 = HEAP32[$pp>>2]|0; - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$1>>2]|0; - $31 = ($29|0)!=($30|0); - if (!($31)) { - break; - } - $32 = HEAP32[$pp>>2]|0; - $33 = HEAP32[$32>>2]|0; - $34 = (($33) + 44|0); - HEAP32[$pp>>2] = $34; - } - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 44|0); - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$pp>>2]|0; - HEAP32[$38>>2] = $37; - } - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 4|0); - $41 = HEAP32[$40>>2]|0; - (_sqlite3BtreeRollback($41,0)|0); - $42 = HEAP32[$1>>2]|0; - $43 = (($42) + 28|0); - $44 = HEAP32[$43>>2]|0; - $45 = ($44|0)==(101); - if ($45) { - $49 = 0; - } else { - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 28|0); - $48 = HEAP32[$47>>2]|0; - $49 = $48; - } - HEAP32[$rc>>2] = $49; - $50 = HEAP32[$1>>2]|0; - $51 = HEAP32[$50>>2]|0; - $52 = ($51|0)!=(0|0); - if ($52) { - $53 = HEAP32[$1>>2]|0; - $54 = HEAP32[$53>>2]|0; - $55 = HEAP32[$rc>>2]|0; - _sqlite3Error($54,$55,0,$vararg_buffer); - $56 = HEAP32[$1>>2]|0; - $57 = HEAP32[$56>>2]|0; - _sqlite3LeaveMutexAndCloseZombie($57); - } - $58 = HEAP32[$1>>2]|0; - $59 = HEAP32[$58>>2]|0; - $60 = ($59|0)!=(0|0); - if ($60) { - $61 = HEAP32[$1>>2]|0; - _sqlite3_free($61); - } - $62 = HEAP32[$pSrcDb>>2]|0; - _sqlite3LeaveMutexAndCloseZombie($62); - $63 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $63; - $64 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($64|0); -} -function _sqlite3PagerBackupPtr($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 88|0); - STACKTOP = sp;return ($2|0); -} -function _sqlite3BtreeRollback($p,$tripCode) { - $p = $p|0; - $tripCode = $tripCode|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nPage = 0, $pBt = 0, $pPage1 = 0, $rc = 0, $rc2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $rc = sp + 16|0; - $pBt = sp + 12|0; - $pPage1 = sp + 8|0; - $rc2 = sp + 4|0; - $nPage = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $tripCode; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pBt>>2] = $4; - $5 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($5); - $6 = HEAP32[$1>>2]|0; - $7 = ($6|0)==(0); - if ($7) { - $8 = HEAP32[$pBt>>2]|0; - $9 = (_saveAllCursors($8,0,0)|0); - HEAP32[$1>>2] = $9; - HEAP32[$rc>>2] = $9; - } else { - HEAP32[$rc>>2] = 0; - } - $10 = HEAP32[$1>>2]|0; - $11 = ($10|0)!=(0); - if ($11) { - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$1>>2]|0; - _sqlite3BtreeTripAllCursors($12,$13); - } - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 8|0); - $16 = HEAP8[$15>>0]|0; - $17 = $16&255; - $18 = ($17|0)==(2); - if (!($18)) { - $44 = HEAP32[$0>>2]|0; - _btreeEndTransaction($44); - $45 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($45|0); - } - $19 = HEAP32[$pBt>>2]|0; - $20 = HEAP32[$19>>2]|0; - $21 = (_sqlite3PagerRollback($20)|0); - HEAP32[$rc2>>2] = $21; - $22 = HEAP32[$rc2>>2]|0; - $23 = ($22|0)!=(0); - if ($23) { - $24 = HEAP32[$rc2>>2]|0; - HEAP32[$rc>>2] = $24; - } - $25 = HEAP32[$pBt>>2]|0; - $26 = (_btreeGetPage($25,1,$pPage1,0)|0); - $27 = ($26|0)==(0); - if ($27) { - $28 = HEAP32[$pPage1>>2]|0; - $29 = (($28) + 56|0); - $30 = HEAP32[$29>>2]|0; - $31 = (($30) + 28|0); - $32 = (_sqlite3Get4byte($31)|0); - HEAP32[$nPage>>2] = $32; - $33 = HEAP32[$nPage>>2]|0; - $34 = ($33|0)==(0); - if ($34) { - $35 = HEAP32[$pBt>>2]|0; - $36 = HEAP32[$35>>2]|0; - _sqlite3PagerPagecount($36,$nPage); - } - $37 = HEAP32[$nPage>>2]|0; - $38 = HEAP32[$pBt>>2]|0; - $39 = (($38) + 44|0); - HEAP32[$39>>2] = $37; - $40 = HEAP32[$pPage1>>2]|0; - _releasePage($40); - } - $41 = HEAP32[$pBt>>2]|0; - $42 = (($41) + 20|0); - HEAP8[$42>>0] = 1; - $43 = HEAP32[$pBt>>2]|0; - _btreeClearHasContent($43); - $44 = HEAP32[$0>>2]|0; - _btreeEndTransaction($44); - $45 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($45|0); -} -function _sqlite3LeaveMutexAndCloseZombie($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $i = 0, $j = 0, $p = 0, $pColl = 0, $pDb = 0, $pHash = 0, $pMod = 0, $pNext = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 36|0; - $i = sp + 32|0; - $j = sp + 28|0; - $pDb = sp + 24|0; - $pNext = sp + 20|0; - $pHash = sp + 16|0; - $p = sp + 12|0; - $pColl = sp + 8|0; - $pMod = sp + 4|0; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 76|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(1691352191); - if ($4) { - STACKTOP = sp;return; - } - $5 = HEAP32[$0>>2]|0; - $6 = (_connectionIsBusy($5)|0); - $7 = ($6|0)!=(0); - if ($7) { - STACKTOP = sp;return; - } - $8 = HEAP32[$0>>2]|0; - _sqlite3RollbackAll($8,0); - $9 = HEAP32[$0>>2]|0; - _sqlite3CloseSavepoints($9); - HEAP32[$j>>2] = 0; - while(1) { - $10 = HEAP32[$j>>2]|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 20|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($10|0)<($13|0); - if (!($14)) { - break; - } - $15 = HEAP32[$j>>2]|0; - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 16|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + ($15<<4)|0); - HEAP32[$pDb>>2] = $19; - $20 = HEAP32[$pDb>>2]|0; - $21 = (($20) + 4|0); - $22 = HEAP32[$21>>2]|0; - $23 = ($22|0)!=(0|0); - if ($23) { - $24 = HEAP32[$pDb>>2]|0; - $25 = (($24) + 4|0); - $26 = HEAP32[$25>>2]|0; - (_sqlite3BtreeClose($26)|0); - $27 = HEAP32[$pDb>>2]|0; - $28 = (($27) + 4|0); - HEAP32[$28>>2] = 0; - $29 = HEAP32[$j>>2]|0; - $30 = ($29|0)!=(1); - if ($30) { - $31 = HEAP32[$pDb>>2]|0; - $32 = (($31) + 12|0); - HEAP32[$32>>2] = 0; - } - } - $33 = HEAP32[$j>>2]|0; - $34 = (($33) + 1)|0; - HEAP32[$j>>2] = $34; - } - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + 16|0); - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + 16|0); - $39 = (($38) + 12|0); - $40 = HEAP32[$39>>2]|0; - $41 = ($40|0)!=(0|0); - if ($41) { - $42 = HEAP32[$0>>2]|0; - $43 = (($42) + 16|0); - $44 = HEAP32[$43>>2]|0; - $45 = (($44) + 16|0); - $46 = (($45) + 12|0); - $47 = HEAP32[$46>>2]|0; - _sqlite3SchemaClear($47); - } - $48 = HEAP32[$0>>2]|0; - _sqlite3VtabUnlockList($48); - $49 = HEAP32[$0>>2]|0; - _sqlite3CollapseDatabaseArray($49); - HEAP32[$j>>2] = 0; - while(1) { - $50 = HEAP32[$j>>2]|0; - $51 = ($50|0)<(23); - if (!($51)) { - break; - } - $52 = HEAP32[$j>>2]|0; - $53 = HEAP32[$0>>2]|0; - $54 = (($53) + 328|0); - $55 = (($54) + ($52<<2)|0); - $56 = HEAP32[$55>>2]|0; - HEAP32[$p>>2] = $56; - while(1) { - $57 = HEAP32[$p>>2]|0; - $58 = ($57|0)!=(0|0); - if (!($58)) { - break; - } - $59 = HEAP32[$p>>2]|0; - $60 = (($59) + 28|0); - $61 = HEAP32[$60>>2]|0; - HEAP32[$pHash>>2] = $61; - while(1) { - $62 = HEAP32[$p>>2]|0; - $63 = ($62|0)!=(0|0); - if (!($63)) { - break; - } - $64 = HEAP32[$0>>2]|0; - $65 = HEAP32[$p>>2]|0; - _functionDestroy($64,$65); - $66 = HEAP32[$p>>2]|0; - $67 = (($66) + 8|0); - $68 = HEAP32[$67>>2]|0; - HEAP32[$pNext>>2] = $68; - $69 = HEAP32[$0>>2]|0; - $70 = HEAP32[$p>>2]|0; - _sqlite3DbFree($69,$70); - $71 = HEAP32[$pNext>>2]|0; - HEAP32[$p>>2] = $71; - } - $72 = HEAP32[$pHash>>2]|0; - HEAP32[$p>>2] = $72; - } - $73 = HEAP32[$j>>2]|0; - $74 = (($73) + 1)|0; - HEAP32[$j>>2] = $74; - } - $75 = HEAP32[$0>>2]|0; - $76 = (($75) + 420|0); - $77 = (($76) + 8|0); - $78 = HEAP32[$77>>2]|0; - HEAP32[$i>>2] = $78; - while(1) { - $79 = HEAP32[$i>>2]|0; - $80 = ($79|0)!=(0|0); - if (!($80)) { - break; - } - $81 = HEAP32[$i>>2]|0; - $82 = (($81) + 8|0); - $83 = HEAP32[$82>>2]|0; - HEAP32[$pColl>>2] = $83; - HEAP32[$j>>2] = 0; - while(1) { - $84 = HEAP32[$j>>2]|0; - $85 = ($84|0)<(3); - if (!($85)) { - break; - } - $86 = HEAP32[$j>>2]|0; - $87 = HEAP32[$pColl>>2]|0; - $88 = (($87) + (($86*20)|0)|0); - $89 = (($88) + 16|0); - $90 = HEAP32[$89>>2]|0; - $91 = ($90|0)!=(0|0); - if ($91) { - $92 = HEAP32[$j>>2]|0; - $93 = HEAP32[$pColl>>2]|0; - $94 = (($93) + (($92*20)|0)|0); - $95 = (($94) + 16|0); - $96 = HEAP32[$95>>2]|0; - $97 = HEAP32[$j>>2]|0; - $98 = HEAP32[$pColl>>2]|0; - $99 = (($98) + (($97*20)|0)|0); - $100 = (($99) + 8|0); - $101 = HEAP32[$100>>2]|0; - FUNCTION_TABLE_vi[$96 & 31]($101); - } - $102 = HEAP32[$j>>2]|0; - $103 = (($102) + 1)|0; - HEAP32[$j>>2] = $103; - } - $104 = HEAP32[$0>>2]|0; - $105 = HEAP32[$pColl>>2]|0; - _sqlite3DbFree($104,$105); - $106 = HEAP32[$i>>2]|0; - $107 = HEAP32[$106>>2]|0; - HEAP32[$i>>2] = $107; - } - $108 = HEAP32[$0>>2]|0; - $109 = (($108) + 420|0); - _sqlite3HashClear($109); - $110 = HEAP32[$0>>2]|0; - $111 = (($110) + 300|0); - $112 = (($111) + 8|0); - $113 = HEAP32[$112>>2]|0; - HEAP32[$i>>2] = $113; - while(1) { - $114 = HEAP32[$i>>2]|0; - $115 = ($114|0)!=(0|0); - if (!($115)) { - break; - } - $116 = HEAP32[$i>>2]|0; - $117 = (($116) + 8|0); - $118 = HEAP32[$117>>2]|0; - HEAP32[$pMod>>2] = $118; - $119 = HEAP32[$pMod>>2]|0; - $120 = (($119) + 12|0); - $121 = HEAP32[$120>>2]|0; - $122 = ($121|0)!=(0|0); - if ($122) { - $123 = HEAP32[$pMod>>2]|0; - $124 = (($123) + 12|0); - $125 = HEAP32[$124>>2]|0; - $126 = HEAP32[$pMod>>2]|0; - $127 = (($126) + 8|0); - $128 = HEAP32[$127>>2]|0; - FUNCTION_TABLE_vi[$125 & 31]($128); - } - $129 = HEAP32[$0>>2]|0; - $130 = HEAP32[$pMod>>2]|0; - _sqlite3DbFree($129,$130); - $131 = HEAP32[$i>>2]|0; - $132 = HEAP32[$131>>2]|0; - HEAP32[$i>>2] = $132; - } - $133 = HEAP32[$0>>2]|0; - $134 = (($133) + 300|0); - _sqlite3HashClear($134); - $135 = HEAP32[$0>>2]|0; - _sqlite3Error($135,0,0,$vararg_buffer); - $136 = HEAP32[$0>>2]|0; - $137 = (($136) + 224|0); - $138 = HEAP32[$137>>2]|0; - _sqlite3ValueFree($138); - $139 = HEAP32[$0>>2]|0; - $140 = (($139) + 76|0); - HEAP32[$140>>2] = -1254786768; - $141 = HEAP32[$0>>2]|0; - $142 = HEAP32[$0>>2]|0; - $143 = (($142) + 16|0); - $144 = HEAP32[$143>>2]|0; - $145 = (($144) + 16|0); - $146 = (($145) + 12|0); - $147 = HEAP32[$146>>2]|0; - _sqlite3DbFree($141,$147); - $148 = HEAP32[$0>>2]|0; - $149 = (($148) + 76|0); - HEAP32[$149>>2] = -1623446221; - $150 = HEAP32[$0>>2]|0; - $151 = (($150) + 240|0); - $152 = (($151) + 3|0); - $153 = HEAP8[$152>>0]|0; - $154 = ($153<<24>>24)!=(0); - if ($154) { - $155 = HEAP32[$0>>2]|0; - $156 = (($155) + 240|0); - $157 = (($156) + 28|0); - $158 = HEAP32[$157>>2]|0; - _sqlite3_free($158); - } - $159 = HEAP32[$0>>2]|0; - _sqlite3_free($159); - STACKTOP = sp;return; -} -function _sqlite3_sql($pStmt) { - $pStmt = $pStmt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pStmt; - $1 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $1; - $2 = HEAP32[$p>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - $14 = 0; - STACKTOP = sp;return ($14|0); - } - $4 = HEAP32[$p>>2]|0; - $5 = (($4) + 88|0); - $6 = HEAP16[$5>>1]|0; - $7 = ($6&65535) >>> 10; - $8 = $7 & 1; - $9 = $8&65535; - $10 = ($9|0)!=(0); - if (!($10)) { - $14 = 0; - STACKTOP = sp;return ($14|0); - } - $11 = HEAP32[$p>>2]|0; - $12 = (($11) + 168|0); - $13 = HEAP32[$12>>2]|0; - $14 = $13; - STACKTOP = sp;return ($14|0); -} -function _sqlite3_finalize($pStmt) { - $pStmt = $pStmt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0; - var $rc = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $rc = sp + 8|0; - $v = sp + 4|0; - $db = sp; - HEAP32[$1>>2] = $pStmt; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0|0); - do { - if ($3) { - HEAP32[$rc>>2] = 0; - } else { - $4 = HEAP32[$1>>2]|0; - HEAP32[$v>>2] = $4; - $5 = HEAP32[$v>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$v>>2]|0; - $8 = (_vdbeSafety($7)|0); - $9 = ($8|0)!=(0); - if (!($9)) { - $11 = HEAP32[$v>>2]|0; - $12 = (_sqlite3VdbeFinalize($11)|0); - HEAP32[$rc>>2] = $12; - $13 = HEAP32[$db>>2]|0; - $14 = HEAP32[$rc>>2]|0; - $15 = (_sqlite3ApiExit($13,$14)|0); - HEAP32[$rc>>2] = $15; - $16 = HEAP32[$db>>2]|0; - _sqlite3LeaveMutexAndCloseZombie($16); - break; - } - $10 = (_sqlite3MisuseError(65817)|0); - HEAP32[$0>>2] = $10; - $18 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($18|0); - } - } while(0); - $17 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $17; - $18 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($18|0); -} -function _vdbeSafety($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 8|0; - $1 = sp + 4|0; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - _sqlite3_log(21,36928,$vararg_buffer); - HEAP32[$0>>2] = 1; - $5 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($5|0); - } else { - HEAP32[$0>>2] = 0; - $5 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($5|0); - } - return 0|0; -} -function _sqlite3VdbeFinalize($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $p; - HEAP32[$rc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 40|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)==(-1108210269); - if ($4) { - label = 3; - } else { - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 40|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)==(1369188723); - if ($8) { - label = 3; - } - } - if ((label|0) == 3) { - $9 = HEAP32[$0>>2]|0; - $10 = (_sqlite3VdbeReset($9)|0); - HEAP32[$rc>>2] = $10; - } - $11 = HEAP32[$0>>2]|0; - _sqlite3VdbeDelete($11); - $12 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($12|0); -} -function _sqlite3ApiExit($db,$rc) { - $db = $db|0; - $rc = $rc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 8|0; - $1 = sp + 4|0; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $rc; - $2 = HEAP32[$0>>2]|0; - $3 = ($2|0)!=(0|0); - do { - if ($3) { - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 64|0); - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - $8 = ($7|0)!=(0); - if (!($8)) { - $9 = HEAP32[$1>>2]|0; - $10 = ($9|0)==(3082); - if (!($10)) { - break; - } - } - $11 = HEAP32[$0>>2]|0; - _sqlite3Error($11,7,0,$vararg_buffer); - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 64|0); - HEAP8[$13>>0] = 0; - HEAP32[$1>>2] = 7; - } - } while(0); - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = ($15|0)!=(0|0); - if (!($16)) { - $21 = 255; - $20 = $14 & $21; - STACKTOP = sp;return ($20|0); - } - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 56|0); - $19 = HEAP32[$18>>2]|0; - $21 = $19; - $20 = $14 & $21; - STACKTOP = sp;return ($20|0); -} -function _sqlite3_reset($pStmt) { - $pStmt = $pStmt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $rc = sp + 4|0; - $v = sp; - HEAP32[$0>>2] = $pStmt; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)==(0|0); - if ($2) { - HEAP32[$rc>>2] = 0; - $11 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($11|0); - } else { - $3 = HEAP32[$0>>2]|0; - HEAP32[$v>>2] = $3; - $4 = HEAP32[$v>>2]|0; - $5 = (_sqlite3VdbeReset($4)|0); - HEAP32[$rc>>2] = $5; - $6 = HEAP32[$v>>2]|0; - _sqlite3VdbeRewind($6); - $7 = HEAP32[$v>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$rc>>2]|0; - $10 = (_sqlite3ApiExit($8,$9)|0); - HEAP32[$rc>>2] = $10; - $11 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($11|0); - } - return 0|0; -} -function _sqlite3VdbeReset($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $db = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 8|0; - $db = sp + 4|0; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$db>>2] = $2; - $3 = HEAP32[$0>>2]|0; - (_sqlite3VdbeHalt($3)|0); - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 76|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)>=(0); - $8 = HEAP32[$0>>2]|0; - if ($7) { - (_sqlite3VdbeTransferError($8)|0); - $9 = HEAP32[$db>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 44|0); - $12 = HEAP32[$11>>2]|0; - _sqlite3DbFree($9,$12); - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 44|0); - HEAP32[$14>>2] = 0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 88|0); - $17 = HEAP16[$16>>1]|0; - $18 = ($17&65535) >>> 6; - $19 = $18 & 1; - $20 = $19&65535; - $21 = ($20|0)!=(0); - if ($21) { - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 88|0); - $24 = HEAP16[$23>>1]|0; - $25 = $24 & -33; - $26 = $25 | 32; - HEAP16[$23>>1] = $26; - } - } else { - $27 = (($8) + 80|0); - $28 = HEAP32[$27>>2]|0; - $29 = ($28|0)!=(0); - if ($29) { - $30 = HEAP32[$0>>2]|0; - $31 = (($30) + 88|0); - $32 = HEAP16[$31>>1]|0; - $33 = ($32&65535) >>> 5; - $34 = $33 & 1; - $35 = $34&65535; - $36 = ($35|0)!=(0); - if ($36) { - $37 = HEAP32[$db>>2]|0; - $38 = HEAP32[$0>>2]|0; - $39 = (($38) + 80|0); - $40 = HEAP32[$39>>2]|0; - $41 = HEAP32[$0>>2]|0; - $42 = (($41) + 44|0); - $43 = HEAP32[$42>>2]|0; - $44 = ($43|0)!=(0|0); - $45 = $44 ? 1456 : 0; - $46 = HEAP32[$0>>2]|0; - $47 = (($46) + 44|0); - $48 = HEAP32[$47>>2]|0; - HEAP32[$vararg_buffer>>2] = $48; - _sqlite3Error($37,$40,$45,$vararg_buffer); - $49 = HEAP32[$db>>2]|0; - $50 = HEAP32[$0>>2]|0; - $51 = (($50) + 44|0); - $52 = HEAP32[$51>>2]|0; - _sqlite3DbFree($49,$52); - $53 = HEAP32[$0>>2]|0; - $54 = (($53) + 44|0); - HEAP32[$54>>2] = 0; - } - } - } - $55 = HEAP32[$0>>2]|0; - _Cleanup($55); - $56 = HEAP32[$0>>2]|0; - $57 = (($56) + 136|0); - $58 = $57; - $59 = $58; - HEAP32[$59>>2] = 0; - $60 = (($58) + 4)|0; - $61 = $60; - HEAP32[$61>>2] = 0; - $62 = HEAP32[$0>>2]|0; - $63 = (($62) + 40|0); - HEAP32[$63>>2] = 649915045; - $64 = HEAP32[$0>>2]|0; - $65 = (($64) + 80|0); - $66 = HEAP32[$65>>2]|0; - $67 = HEAP32[$db>>2]|0; - $68 = (($67) + 56|0); - $69 = HEAP32[$68>>2]|0; - $70 = $66 & $69; - STACKTOP = sp;return ($70|0); -} -function _sqlite3VdbeRewind($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 40|0); - HEAP32[$2>>2] = -1108210269; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 76|0); - HEAP32[$4>>2] = -1; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 80|0); - HEAP32[$6>>2] = 0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 86|0); - HEAP8[$8>>0] = 2; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 40|0); - HEAP32[$10>>2] = -1108210269; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 92|0); - HEAP32[$12>>2] = 0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 72|0); - HEAP32[$14>>2] = 1; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 87|0); - HEAP8[$16>>0] = -1; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 104|0); - HEAP32[$18>>2] = 0; - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 144|0); - $21 = $20; - $22 = $21; - HEAP32[$22>>2] = 0; - $23 = (($21) + 4)|0; - $24 = $23; - HEAP32[$24>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3_clear_bindings($pStmt) { - $pStmt = $pStmt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0; - var $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $i = sp + 8|0; - $rc = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pStmt; - HEAP32[$rc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $1; - HEAP32[$i>>2] = 0; - while(1) { - $2 = HEAP32[$i>>2]|0; - $3 = HEAP32[$p>>2]|0; - $4 = (($3) + 68|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5 << 16 >> 16; - $7 = ($2|0)<($6|0); - if (!($7)) { - break; - } - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[$p>>2]|0; - $10 = (($9) + 60|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + (($8*40)|0)|0); - _sqlite3VdbeMemRelease($12); - $13 = HEAP32[$i>>2]|0; - $14 = HEAP32[$p>>2]|0; - $15 = (($14) + 60|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + (($13*40)|0)|0); - $18 = (($17) + 28|0); - HEAP16[$18>>1] = 1; - $19 = HEAP32[$i>>2]|0; - $20 = (($19) + 1)|0; - HEAP32[$i>>2] = $20; - } - $21 = HEAP32[$p>>2]|0; - $22 = (($21) + 88|0); - $23 = HEAP16[$22>>1]|0; - $24 = ($23&65535) >>> 10; - $25 = $24 & 1; - $26 = $25&65535; - $27 = ($26|0)!=(0); - if (!($27)) { - $37 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($37|0); - } - $28 = HEAP32[$p>>2]|0; - $29 = (($28) + 188|0); - $30 = HEAP32[$29>>2]|0; - $31 = ($30|0)!=(0); - if (!($31)) { - $37 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($37|0); - } - $32 = HEAP32[$p>>2]|0; - $33 = (($32) + 88|0); - $34 = HEAP16[$33>>1]|0; - $35 = $34 & -33; - $36 = $35 | 32; - HEAP16[$33>>1] = $36; - $37 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($37|0); -} -function _sqlite3VdbeMemRelease($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 28|0); - $3 = HEAP16[$2>>1]|0; - $4 = $3&65535; - $5 = $4 & 9312; - $6 = ($5|0)!=(0); - if ($6) { - $7 = HEAP32[$0>>2]|0; - _sqlite3VdbeMemReleaseExternal($7); - } - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 36|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)!=(0|0); - if (!($11)) { - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 4|0); - HEAP32[$20>>2] = 0; - STACKTOP = sp;return; - } - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 36|0); - $16 = HEAP32[$15>>2]|0; - _sqlite3DbFree($13,$16); - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 36|0); - HEAP32[$18>>2] = 0; - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 4|0); - HEAP32[$20>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3_value_blob($pVal) { - $pVal = $pVal|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $p = sp; - HEAP32[$1>>2] = $pVal; - $2 = HEAP32[$1>>2]|0; - HEAP32[$p>>2] = $2; - $3 = HEAP32[$p>>2]|0; - $4 = (($3) + 28|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5&65535; - $7 = $6 & 18; - $8 = ($7|0)!=(0); - if (!($8)) { - $24 = HEAP32[$1>>2]|0; - $25 = (_sqlite3_value_text($24)|0); - HEAP32[$0>>2] = $25; - $26 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($26|0); - } - $9 = HEAP32[$p>>2]|0; - (_sqlite3VdbeMemExpandBlob($9)|0); - $10 = HEAP32[$p>>2]|0; - $11 = (($10) + 28|0); - $12 = HEAP16[$11>>1]|0; - $13 = $12&65535; - $14 = $13 | 16; - $15 = $14&65535; - HEAP16[$11>>1] = $15; - $16 = HEAP32[$p>>2]|0; - $17 = (($16) + 24|0); - $18 = HEAP32[$17>>2]|0; - $19 = ($18|0)!=(0); - if ($19) { - $20 = HEAP32[$p>>2]|0; - $21 = (($20) + 4|0); - $22 = HEAP32[$21>>2]|0; - $23 = $22; - } else { - $23 = 0; - } - HEAP32[$0>>2] = $23; - $26 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($26|0); -} -function _sqlite3VdbeMemExpandBlob($pMem) { - $pMem = $pMem|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nByte = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $nByte = sp; - HEAP32[$1>>2] = $pMem; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 28|0); - $4 = HEAP16[$3>>1]|0; - $5 = $4&65535; - $6 = $5 & 16384; - $7 = ($6|0)!=(0); - do { - if ($7) { - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 24|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 16|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($10) + ($13))|0; - HEAP32[$nByte>>2] = $14; - $15 = HEAP32[$nByte>>2]|0; - $16 = ($15|0)<=(0); - $$ = $16 ? 1 : $14; - HEAP32[$nByte>>2] = $$; - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$nByte>>2]|0; - $19 = (_sqlite3VdbeMemGrow($17,$18,1)|0); - $20 = ($19|0)!=(0); - if (!($20)) { - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 24|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 4|0); - $26 = HEAP32[$25>>2]|0; - $27 = (($26) + ($23)|0); - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 16|0); - $30 = HEAP32[$29>>2]|0; - _memset(($27|0),0,($30|0))|0; - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 16|0); - $33 = HEAP32[$32>>2]|0; - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 24|0); - $36 = HEAP32[$35>>2]|0; - $37 = (($36) + ($33))|0; - HEAP32[$35>>2] = $37; - $38 = HEAP32[$1>>2]|0; - $39 = (($38) + 28|0); - $40 = HEAP16[$39>>1]|0; - $41 = $40&65535; - $42 = $41 & -16897; - $43 = $42&65535; - HEAP16[$39>>1] = $43; - break; - } - HEAP32[$0>>2] = 7; - $44 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($44|0); - } - } while(0); - HEAP32[$0>>2] = 0; - $44 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($44|0); -} -function _sqlite3_value_text($pVal) { - $pVal = $pVal|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pVal; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3ValueText($1,1)|0); - STACKTOP = sp;return ($2|0); -} -function _sqlite3_value_bytes($pVal) { - $pVal = $pVal|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pVal; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3ValueBytes($1,1)|0); - STACKTOP = sp;return ($2|0); -} -function _sqlite3ValueBytes($pVal,$enc) { - $pVal = $pVal|0; - $enc = $enc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp + 12|0; - $p = sp; - HEAP32[$1>>2] = $pVal; - HEAP8[$2>>0] = $enc; - $3 = HEAP32[$1>>2]|0; - HEAP32[$p>>2] = $3; - $4 = HEAP32[$p>>2]|0; - $5 = (($4) + 28|0); - $6 = HEAP16[$5>>1]|0; - $7 = $6&65535; - $8 = $7 & 16; - $9 = ($8|0)!=(0); - if (!($9)) { - $10 = HEAP32[$1>>2]|0; - $11 = HEAP8[$2>>0]|0; - $12 = (_sqlite3ValueText($10,$11)|0); - $13 = ($12|0)!=(0|0); - if (!($13)) { - HEAP32[$0>>2] = 0; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); - } - } - $14 = HEAP32[$p>>2]|0; - $15 = (($14) + 28|0); - $16 = HEAP16[$15>>1]|0; - $17 = $16&65535; - $18 = $17 & 16384; - $19 = ($18|0)!=(0); - $20 = HEAP32[$p>>2]|0; - $21 = (($20) + 24|0); - $22 = HEAP32[$21>>2]|0; - if ($19) { - $23 = HEAP32[$p>>2]|0; - $24 = (($23) + 16|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($22) + ($25))|0; - HEAP32[$0>>2] = $26; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); - } else { - HEAP32[$0>>2] = $22; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); - } - return 0|0; -} -function _sqlite3_value_double($pVal) { - $pVal = $pVal|0; - var $0 = 0, $1 = 0, $2 = 0.0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pVal; - $1 = HEAP32[$0>>2]|0; - $2 = (+_sqlite3VdbeRealValue($1)); - STACKTOP = sp;return (+$2); -} -function _sqlite3VdbeRealValue($pMem) { - $pMem = $pMem|0; - var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0.0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $val = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 8|0; - $1 = sp + 16|0; - $val = sp; - HEAP32[$1>>2] = $pMem; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 28|0); - $4 = HEAP16[$3>>1]|0; - $5 = $4&65535; - $6 = $5 & 8; - $7 = ($6|0)!=(0); - $8 = HEAP32[$1>>2]|0; - if ($7) { - $9 = (($8) + 8|0); - $10 = +HEAPF64[$9>>3]; - HEAPF64[$0>>3] = $10; - $40 = +HEAPF64[$0>>3]; - STACKTOP = sp;return (+$40); - } - $11 = (($8) + 28|0); - $12 = HEAP16[$11>>1]|0; - $13 = $12&65535; - $14 = $13 & 4; - $15 = ($14|0)!=(0); - $16 = HEAP32[$1>>2]|0; - if ($15) { - $17 = (($16) + 16|0); - $18 = $17; - $19 = $18; - $20 = HEAP32[$19>>2]|0; - $21 = (($18) + 4)|0; - $22 = $21; - $23 = HEAP32[$22>>2]|0; - $24 = (+($20>>>0)) + (4294967296.0*(+($23|0))); - HEAPF64[$0>>3] = $24; - $40 = +HEAPF64[$0>>3]; - STACKTOP = sp;return (+$40); - } - $25 = (($16) + 28|0); - $26 = HEAP16[$25>>1]|0; - $27 = $26&65535; - $28 = $27 & 18; - $29 = ($28|0)!=(0); - if ($29) { - HEAPF64[$val>>3] = 0.0; - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 4|0); - $32 = HEAP32[$31>>2]|0; - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 24|0); - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$1>>2]|0; - $37 = (($36) + 30|0); - $38 = HEAP8[$37>>0]|0; - (_sqlite3AtoF($32,$val,$35,$38)|0); - $39 = +HEAPF64[$val>>3]; - HEAPF64[$0>>3] = $39; - $40 = +HEAPF64[$0>>3]; - STACKTOP = sp;return (+$40); - } else { - HEAPF64[$0>>3] = 0.0; - $40 = +HEAPF64[$0>>3]; - STACKTOP = sp;return (+$40); - } - return +0; -} -function _sqlite3_value_int($pVal) { - $pVal = $pVal|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pVal; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3VdbeIntValue($1)|0); - $3 = tempRet0; - STACKTOP = sp;return ($2|0); -} -function _sqlite3VdbeIntValue($pMem) { - $pMem = $pMem|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0.0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $flags = 0, $value = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 8|0; - $1 = sp + 20|0; - $flags = sp + 16|0; - $value = sp; - HEAP32[$1>>2] = $pMem; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 28|0); - $4 = HEAP16[$3>>1]|0; - $5 = $4&65535; - HEAP32[$flags>>2] = $5; - $6 = HEAP32[$flags>>2]|0; - $7 = $6 & 4; - $8 = ($7|0)!=(0); - do { - if ($8) { - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 16|0); - $11 = $10; - $12 = $11; - $13 = HEAP32[$12>>2]|0; - $14 = (($11) + 4)|0; - $15 = $14; - $16 = HEAP32[$15>>2]|0; - $17 = $0; - $18 = $17; - HEAP32[$18>>2] = $13; - $19 = (($17) + 4)|0; - $20 = $19; - HEAP32[$20>>2] = $16; - } else { - $21 = HEAP32[$flags>>2]|0; - $22 = $21 & 8; - $23 = ($22|0)!=(0); - if ($23) { - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 8|0); - $26 = +HEAPF64[$25>>3]; - $27 = (_doubleToInt64($26)|0); - $28 = tempRet0; - $29 = $0; - $30 = $29; - HEAP32[$30>>2] = $27; - $31 = (($29) + 4)|0; - $32 = $31; - HEAP32[$32>>2] = $28; - break; - } - $33 = HEAP32[$flags>>2]|0; - $34 = $33 & 18; - $35 = ($34|0)!=(0); - if ($35) { - $36 = $value; - $37 = $36; - HEAP32[$37>>2] = 0; - $38 = (($36) + 4)|0; - $39 = $38; - HEAP32[$39>>2] = 0; - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 4|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + 24|0); - $45 = HEAP32[$44>>2]|0; - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 30|0); - $48 = HEAP8[$47>>0]|0; - (_sqlite3Atoi64($42,$value,$45,$48)|0); - $49 = $value; - $50 = $49; - $51 = HEAP32[$50>>2]|0; - $52 = (($49) + 4)|0; - $53 = $52; - $54 = HEAP32[$53>>2]|0; - $55 = $0; - $56 = $55; - HEAP32[$56>>2] = $51; - $57 = (($55) + 4)|0; - $58 = $57; - HEAP32[$58>>2] = $54; - break; - } else { - $59 = $0; - $60 = $59; - HEAP32[$60>>2] = 0; - $61 = (($59) + 4)|0; - $62 = $61; - HEAP32[$62>>2] = 0; - break; - } - } - } while(0); - $63 = $0; - $64 = $63; - $65 = HEAP32[$64>>2]|0; - $66 = (($63) + 4)|0; - $67 = $66; - $68 = HEAP32[$67>>2]|0; - tempRet0 = $68; - STACKTOP = sp;return ($65|0); -} -function _sqlite3_value_int64($pVal) { - $pVal = $pVal|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pVal; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3VdbeIntValue($1)|0); - $3 = tempRet0; - tempRet0 = $3; - STACKTOP = sp;return ($2|0); -} -function _sqlite3ValueText($pVal,$enc) { - $pVal = $pVal|0; - $enc = $enc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - $2 = sp + 8|0; - HEAP32[$1>>2] = $pVal; - HEAP8[$2>>0] = $enc; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - HEAP32[$0>>2] = 0; - $65 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($65|0); - } - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 28|0); - $7 = HEAP16[$6>>1]|0; - $8 = $7&65535; - $9 = $8 & 1; - $10 = ($9|0)!=(0); - if ($10) { - HEAP32[$0>>2] = 0; - $65 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($65|0); - } - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 28|0); - $13 = HEAP16[$12>>1]|0; - $14 = $13&65535; - $15 = $14 & 16; - $16 = $15 >> 3; - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 28|0); - $19 = HEAP16[$18>>1]|0; - $20 = $19&65535; - $21 = $20 | $16; - $22 = $21&65535; - HEAP16[$18>>1] = $22; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 28|0); - $25 = HEAP16[$24>>1]|0; - $26 = $25&65535; - $27 = $26 & 16384; - $28 = ($27|0)!=(0); - if ($28) { - $29 = HEAP32[$1>>2]|0; - (_sqlite3VdbeMemExpandBlob($29)|0); - } - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 28|0); - $32 = HEAP16[$31>>1]|0; - $33 = $32&65535; - $34 = $33 & 2; - $35 = ($34|0)!=(0); - $36 = HEAP32[$1>>2]|0; - $37 = HEAP8[$2>>0]|0; - $38 = $37&255; - if ($35) { - $39 = $38 & -9; - (_sqlite3VdbeChangeEncoding($36,$39)|0); - $40 = HEAP8[$2>>0]|0; - $41 = $40&255; - $42 = $41 & 8; - $43 = ($42|0)!=(0); - if ($43) { - $44 = HEAP32[$1>>2]|0; - $45 = (($44) + 4|0); - $46 = HEAP32[$45>>2]|0; - $47 = $46; - $48 = 1 & $47; - $49 = (1)==($48|0); - if ($49) { - $50 = HEAP32[$1>>2]|0; - $51 = (_sqlite3VdbeMemMakeWriteable($50)|0); - $52 = ($51|0)!=(0); - if ($52) { - HEAP32[$0>>2] = 0; - $65 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($65|0); - } - } - } - $53 = HEAP32[$1>>2]|0; - (_sqlite3VdbeMemNulTerminate($53)|0); - } else { - (_sqlite3VdbeMemStringify($36,$38)|0); - } - $54 = HEAP32[$1>>2]|0; - $55 = (($54) + 30|0); - $56 = HEAP8[$55>>0]|0; - $57 = $56&255; - $58 = HEAP8[$2>>0]|0; - $59 = $58&255; - $60 = $59 & -9; - $61 = ($57|0)==($60|0); - if ($61) { - $62 = HEAP32[$1>>2]|0; - $63 = (($62) + 4|0); - $64 = HEAP32[$63>>2]|0; - HEAP32[$0>>2] = $64; - $65 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($65|0); - } else { - HEAP32[$0>>2] = 0; - $65 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($65|0); - } - return 0|0; -} -function _sqlite3_value_type($pVal) { - $pVal = $pVal|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pVal; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 28|0); - $3 = HEAP16[$2>>1]|0; - $4 = $3&65535; - $5 = $4 & 31; - $6 = (1400 + ($5)|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - STACKTOP = sp;return ($8|0); -} -function _sqlite3_result_blob($pCtx,$z,$n,$xDel) { - $pCtx = $pCtx|0; - $z = $z|0; - $n = $n|0; - $xDel = $xDel|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$0>>2] = $pCtx; - HEAP32[$1>>2] = $z; - HEAP32[$2>>2] = $n; - HEAP32[$3>>2] = $xDel; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$3>>2]|0; - _setResultStrOrError($4,$5,$6,0,$7); - STACKTOP = sp;return; -} -function _setResultStrOrError($pCtx,$z,$n,$enc,$xDel) { - $pCtx = $pCtx|0; - $z = $z|0; - $n = $n|0; - $enc = $enc|0; - $xDel = $xDel|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp + 16|0; - $4 = sp; - HEAP32[$0>>2] = $pCtx; - HEAP32[$1>>2] = $z; - HEAP32[$2>>2] = $n; - HEAP8[$3>>0] = $enc; - HEAP32[$4>>2] = $xDel; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 8|0); - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = HEAP8[$3>>0]|0; - $10 = HEAP32[$4>>2]|0; - $11 = (_sqlite3VdbeMemSetStr($6,$7,$8,$9,$10)|0); - $12 = ($11|0)==(18); - if (!($12)) { - STACKTOP = sp;return; - } - $13 = HEAP32[$0>>2]|0; - _sqlite3_result_error_toobig($13); - STACKTOP = sp;return; -} -function _sqlite3_result_double($pCtx,$rVal) { - $pCtx = $pCtx|0; - $rVal = +$rVal; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0.0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp; - HEAP32[$0>>2] = $pCtx; - HEAPF64[$1>>3] = $rVal; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 8|0); - $4 = +HEAPF64[$1>>3]; - _sqlite3VdbeMemSetDouble($3,$4); - STACKTOP = sp;return; -} -function _sqlite3VdbeMemSetDouble($pMem,$val) { - $pMem = $pMem|0; - $val = +$val; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0.0, $3 = 0, $4 = 0, $5 = 0, $6 = 0.0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp; - HEAP32[$0>>2] = $pMem; - HEAPF64[$1>>3] = $val; - $2 = +HEAPF64[$1>>3]; - $3 = (_sqlite3IsNaN($2)|0); - $4 = ($3|0)!=(0); - $5 = HEAP32[$0>>2]|0; - if ($4) { - _sqlite3VdbeMemSetNull($5); - STACKTOP = sp;return; - } else { - _sqlite3VdbeMemRelease($5); - $6 = +HEAPF64[$1>>3]; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 8|0); - HEAPF64[$8>>3] = $6; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 28|0); - HEAP16[$10>>1] = 8; - STACKTOP = sp;return; - } -} -function _sqlite3_result_error($pCtx,$z,$n) { - $pCtx = $pCtx|0; - $z = $z|0; - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $pCtx; - HEAP32[$1>>2] = $z; - HEAP32[$2>>2] = $n; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 64|0); - HEAP32[$4>>2] = 1; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 69|0); - HEAP8[$6>>0] = 1; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 8|0); - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$2>>2]|0; - (_sqlite3VdbeMemSetStr($8,$9,$10,1,(-1))|0); - STACKTOP = sp;return; -} -function _sqlite3VdbeMemSetStr($pMem,$z,$n,$enc,$xDel) { - $pMem = $pMem|0; - $z = $z|0; - $n = $n|0; - $enc = $enc|0; - $xDel = $xDel|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $14 = 0, $15 = 0, $16 = 0; - var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; - var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; - var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; - var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; - var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $flags = 0, $iLimit = 0, $nAlloc = 0, $nByte = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 34|0; - $5 = sp + 12|0; - $nByte = sp + 8|0; - $iLimit = sp + 4|0; - $flags = sp + 32|0; - $nAlloc = sp; - HEAP32[$1>>2] = $pMem; - HEAP32[$2>>2] = $z; - HEAP32[$3>>2] = $n; - HEAP8[$4>>0] = $enc; - HEAP32[$5>>2] = $xDel; - $6 = HEAP32[$3>>2]|0; - HEAP32[$nByte>>2] = $6; - HEAP16[$flags>>1] = 0; - $7 = HEAP32[$2>>2]|0; - $8 = ($7|0)!=(0|0); - $9 = HEAP32[$1>>2]|0; - if (!($8)) { - _sqlite3VdbeMemSetNull($9); - HEAP32[$0>>2] = 0; - $130 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($130|0); - } - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)!=(0|0); - if ($11) { - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + 88|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$iLimit>>2] = $15; - } else { - HEAP32[$iLimit>>2] = 1000000000; - } - $16 = HEAP8[$4>>0]|0; - $17 = $16&255; - $18 = ($17|0)==(0); - $19 = $18 ? 16 : 2; - $20 = $19&65535; - HEAP16[$flags>>1] = $20; - $21 = HEAP32[$nByte>>2]|0; - $22 = ($21|0)<(0); - if ($22) { - $23 = HEAP8[$4>>0]|0; - $24 = $23&255; - $25 = ($24|0)==(1); - HEAP32[$nByte>>2] = 0; - L11: do { - if ($25) { - while(1) { - $26 = HEAP32[$nByte>>2]|0; - $27 = HEAP32[$iLimit>>2]|0; - $28 = ($26|0)<=($27|0); - if (!($28)) { - break L11; - } - $29 = HEAP32[$nByte>>2]|0; - $30 = HEAP32[$2>>2]|0; - $31 = (($30) + ($29)|0); - $32 = HEAP8[$31>>0]|0; - $33 = $32 << 24 >> 24; - $34 = ($33|0)!=(0); - if (!($34)) { - break L11; - } - $35 = HEAP32[$nByte>>2]|0; - $36 = (($35) + 1)|0; - HEAP32[$nByte>>2] = $36; - } - } else { - while(1) { - $37 = HEAP32[$nByte>>2]|0; - $38 = HEAP32[$iLimit>>2]|0; - $39 = ($37|0)<=($38|0); - if (!($39)) { - break L11; - } - $40 = HEAP32[$nByte>>2]|0; - $41 = HEAP32[$2>>2]|0; - $42 = (($41) + ($40)|0); - $43 = HEAP8[$42>>0]|0; - $44 = $43 << 24 >> 24; - $45 = HEAP32[$nByte>>2]|0; - $46 = (($45) + 1)|0; - $47 = HEAP32[$2>>2]|0; - $48 = (($47) + ($46)|0); - $49 = HEAP8[$48>>0]|0; - $50 = $49 << 24 >> 24; - $51 = $44 | $50; - $52 = ($51|0)!=(0); - if (!($52)) { - break L11; - } - $53 = HEAP32[$nByte>>2]|0; - $54 = (($53) + 2)|0; - HEAP32[$nByte>>2] = $54; - } - } - } while(0); - $55 = HEAP16[$flags>>1]|0; - $56 = $55&65535; - $57 = $56 | 512; - $58 = $57&65535; - HEAP16[$flags>>1] = $58; - } - $59 = HEAP32[$5>>2]|0; - $60 = ($59|0)==((-1)|0); - do { - if ($60) { - $61 = HEAP32[$nByte>>2]|0; - HEAP32[$nAlloc>>2] = $61; - $62 = HEAP16[$flags>>1]|0; - $63 = $62&65535; - $64 = $63 & 512; - $65 = ($64|0)!=(0); - if ($65) { - $66 = HEAP8[$4>>0]|0; - $67 = $66&255; - $68 = ($67|0)==(1); - $69 = $68 ? 1 : 2; - $70 = HEAP32[$nAlloc>>2]|0; - $71 = (($70) + ($69))|0; - HEAP32[$nAlloc>>2] = $71; - } - $72 = HEAP32[$nByte>>2]|0; - $73 = HEAP32[$iLimit>>2]|0; - $74 = ($72|0)>($73|0); - if ($74) { - HEAP32[$0>>2] = 18; - $130 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($130|0); - } - $75 = HEAP32[$1>>2]|0; - $76 = HEAP32[$nAlloc>>2]|0; - $77 = (_sqlite3VdbeMemGrow($75,$76,0)|0); - $78 = ($77|0)!=(0); - if (!($78)) { - $79 = HEAP32[$1>>2]|0; - $80 = (($79) + 4|0); - $81 = HEAP32[$80>>2]|0; - $82 = HEAP32[$2>>2]|0; - $83 = HEAP32[$nAlloc>>2]|0; - _memcpy(($81|0),($82|0),($83|0))|0; - break; - } - HEAP32[$0>>2] = 7; - $130 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($130|0); - } else { - $84 = HEAP32[$5>>2]|0; - $85 = ($84|0)==(16|0); - $86 = HEAP32[$1>>2]|0; - _sqlite3VdbeMemRelease($86); - $87 = HEAP32[$2>>2]|0; - $88 = HEAP32[$1>>2]|0; - $89 = (($88) + 4|0); - HEAP32[$89>>2] = $87; - if ($85) { - $90 = HEAP32[$1>>2]|0; - $91 = (($90) + 36|0); - HEAP32[$91>>2] = $87; - $92 = HEAP32[$1>>2]|0; - $93 = (($92) + 32|0); - HEAP32[$93>>2] = 0; - break; - } else { - $94 = HEAP32[$5>>2]|0; - $95 = HEAP32[$1>>2]|0; - $96 = (($95) + 32|0); - HEAP32[$96>>2] = $94; - $97 = HEAP32[$5>>2]|0; - $98 = ($97|0)==(0|0); - $99 = $98 ? 2048 : 1024; - $100 = HEAP16[$flags>>1]|0; - $101 = $100&65535; - $102 = $101 | $99; - $103 = $102&65535; - HEAP16[$flags>>1] = $103; - break; - } - } - } while(0); - $104 = HEAP32[$nByte>>2]|0; - $105 = HEAP32[$1>>2]|0; - $106 = (($105) + 24|0); - HEAP32[$106>>2] = $104; - $107 = HEAP16[$flags>>1]|0; - $108 = HEAP32[$1>>2]|0; - $109 = (($108) + 28|0); - HEAP16[$109>>1] = $107; - $110 = HEAP8[$4>>0]|0; - $111 = $110&255; - $112 = ($111|0)==(0); - if ($112) { - $116 = 1; - } else { - $113 = HEAP8[$4>>0]|0; - $114 = $113&255; - $116 = $114; - } - $115 = $116&255; - $117 = HEAP32[$1>>2]|0; - $118 = (($117) + 30|0); - HEAP8[$118>>0] = $115; - $119 = HEAP32[$1>>2]|0; - $120 = (($119) + 30|0); - $121 = HEAP8[$120>>0]|0; - $122 = $121&255; - $123 = ($122|0)!=(1); - if ($123) { - $124 = HEAP32[$1>>2]|0; - $125 = (_sqlite3VdbeMemHandleBom($124)|0); - $126 = ($125|0)!=(0); - if ($126) { - HEAP32[$0>>2] = 7; - $130 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($130|0); - } - } - $127 = HEAP32[$nByte>>2]|0; - $128 = HEAP32[$iLimit>>2]|0; - $129 = ($127|0)>($128|0); - if ($129) { - HEAP32[$0>>2] = 18; - $130 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($130|0); - } else { - HEAP32[$0>>2] = 0; - $130 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($130|0); - } - return 0|0; -} -function _sqlite3_result_int($pCtx,$iVal) { - $pCtx = $pCtx|0; - $iVal = $iVal|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pCtx; - HEAP32[$1>>2] = $iVal; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 8|0); - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)<(0); - $6 = $5 << 31 >> 31; - _sqlite3VdbeMemSetInt64($3,$4,$6); - STACKTOP = sp;return; -} -function _sqlite3VdbeMemSetInt64($pMem,$0,$1) { - $pMem = $pMem|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $2 = sp + 8|0; - $3 = sp; - HEAP32[$2>>2] = $pMem; - $4 = $3; - $5 = $4; - HEAP32[$5>>2] = $0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = $1; - $8 = HEAP32[$2>>2]|0; - _sqlite3VdbeMemRelease($8); - $9 = $3; - $10 = $9; - $11 = HEAP32[$10>>2]|0; - $12 = (($9) + 4)|0; - $13 = $12; - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = (($15) + 16|0); - $17 = $16; - $18 = $17; - HEAP32[$18>>2] = $11; - $19 = (($17) + 4)|0; - $20 = $19; - HEAP32[$20>>2] = $14; - $21 = HEAP32[$2>>2]|0; - $22 = (($21) + 28|0); - HEAP16[$22>>1] = 4; - STACKTOP = sp;return; -} -function _sqlite3_result_int64($pCtx,$0,$1) { - $pCtx = $pCtx|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $2 = sp + 8|0; - $3 = sp; - HEAP32[$2>>2] = $pCtx; - $4 = $3; - $5 = $4; - HEAP32[$5>>2] = $0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = $1; - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + 8|0); - $10 = $3; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = (($10) + 4)|0; - $14 = $13; - $15 = HEAP32[$14>>2]|0; - _sqlite3VdbeMemSetInt64($9,$12,$15); - STACKTOP = sp;return; -} -function _sqlite3_result_null($pCtx) { - $pCtx = $pCtx|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pCtx; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - _sqlite3VdbeMemSetNull($2); - STACKTOP = sp;return; -} -function _sqlite3VdbeMemSetNull($pMem) { - $pMem = $pMem|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pFrame = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pFrame = sp; - HEAP32[$0>>2] = $pMem; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 28|0); - $3 = HEAP16[$2>>1]|0; - $4 = $3&65535; - $5 = $4 & 64; - $6 = ($5|0)!=(0); - if ($6) { - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 16|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$pFrame>>2] = $9; - $10 = HEAP32[$pFrame>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + 180|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$pFrame>>2]|0; - $15 = (($14) + 4|0); - HEAP32[$15>>2] = $13; - $16 = HEAP32[$pFrame>>2]|0; - $17 = HEAP32[$pFrame>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + 180|0); - HEAP32[$19>>2] = $16; - } - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 28|0); - $22 = HEAP16[$21>>1]|0; - $23 = $22&65535; - $24 = $23 & 32; - $25 = ($24|0)!=(0); - if ($25) { - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 16|0); - $28 = HEAP32[$27>>2]|0; - _sqlite3RowSetClear($28); - } - $29 = HEAP32[$0>>2]|0; - $30 = (($29) + 28|0); - $31 = HEAP16[$30>>1]|0; - $32 = $31&65535; - $33 = $32 & -16896; - $34 = $33 | 1; - $35 = $34&65535; - $36 = HEAP32[$0>>2]|0; - $37 = (($36) + 28|0); - HEAP16[$37>>1] = $35; - STACKTOP = sp;return; -} -function _sqlite3_result_text($pCtx,$z,$n,$xDel) { - $pCtx = $pCtx|0; - $z = $z|0; - $n = $n|0; - $xDel = $xDel|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$0>>2] = $pCtx; - HEAP32[$1>>2] = $z; - HEAP32[$2>>2] = $n; - HEAP32[$3>>2] = $xDel; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$3>>2]|0; - _setResultStrOrError($4,$5,$6,1,$7); - STACKTOP = sp;return; -} -function _sqlite3_result_value($pCtx,$pValue) { - $pCtx = $pCtx|0; - $pValue = $pValue|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pCtx; - HEAP32[$1>>2] = $pValue; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 8|0); - $4 = HEAP32[$1>>2]|0; - (_sqlite3VdbeMemCopy($3,$4)|0); - STACKTOP = sp;return; -} -function _sqlite3VdbeMemCopy($pTo,$pFrom) { - $pTo = $pTo|0; - $pFrom = $pFrom|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $rc = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pTo; - HEAP32[$1>>2] = $pFrom; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 28|0); - $4 = HEAP16[$3>>1]|0; - $5 = $4&65535; - $6 = $5 & 9312; - $7 = ($6|0)!=(0); - if ($7) { - $8 = HEAP32[$0>>2]|0; - _sqlite3VdbeMemReleaseExternal($8); - } - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$1>>2]|0; - dest=$9+0|0; src=$10+0|0; stop=dest+36|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 28|0); - $13 = HEAP16[$12>>1]|0; - $14 = $13&65535; - $15 = $14 & -1025; - $16 = $15&65535; - HEAP16[$12>>1] = $16; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 32|0); - HEAP32[$18>>2] = 0; - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 28|0); - $21 = HEAP16[$20>>1]|0; - $22 = $21&65535; - $23 = $22 & 18; - $24 = ($23|0)!=(0); - if (!($24)) { - $39 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($39|0); - } - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 28|0); - $27 = HEAP16[$26>>1]|0; - $28 = $27&65535; - $29 = $28 & 2048; - $30 = (0)==($29|0); - if (!($30)) { - $39 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($39|0); - } - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 28|0); - $33 = HEAP16[$32>>1]|0; - $34 = $33&65535; - $35 = $34 | 4096; - $36 = $35&65535; - HEAP16[$32>>1] = $36; - $37 = HEAP32[$0>>2]|0; - $38 = (_sqlite3VdbeMemMakeWriteable($37)|0); - HEAP32[$rc>>2] = $38; - $39 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($39|0); -} -function _sqlite3_result_zeroblob($pCtx,$n) { - $pCtx = $pCtx|0; - $n = $n|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pCtx; - HEAP32[$1>>2] = $n; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 8|0); - $4 = HEAP32[$1>>2]|0; - _sqlite3VdbeMemSetZeroBlob($3,$4); - STACKTOP = sp;return; -} -function _sqlite3VdbeMemSetZeroBlob($pMem,$n) { - $pMem = $pMem|0; - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pMem; - HEAP32[$1>>2] = $n; - $2 = HEAP32[$0>>2]|0; - _sqlite3VdbeMemRelease($2); - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 28|0); - HEAP16[$4>>1] = 16400; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 24|0); - HEAP32[$6>>2] = 0; - $7 = HEAP32[$1>>2]|0; - $8 = ($7|0)<(0); - if ($8) { - HEAP32[$1>>2] = 0; - } - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 16|0); - HEAP32[$11>>2] = $9; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 30|0); - HEAP8[$13>>0] = 1; - STACKTOP = sp;return; -} -function _sqlite3_result_error_code($pCtx,$errCode) { - $pCtx = $pCtx|0; - $errCode = $errCode|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pCtx; - HEAP32[$1>>2] = $errCode; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 64|0); - HEAP32[$4>>2] = $2; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 69|0); - HEAP8[$6>>0] = 1; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 8|0); - $9 = (($8) + 28|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10&65535; - $12 = $11 & 1; - $13 = ($12|0)!=(0); - if (!($13)) { - STACKTOP = sp;return; - } - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 8|0); - $16 = HEAP32[$1>>2]|0; - $17 = (_sqlite3ErrStr($16)|0); - (_sqlite3VdbeMemSetStr($15,$17,-1,1,0)|0); - STACKTOP = sp;return; -} -function _sqlite3ErrStr($rc) { - $rc = $rc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cond = 0, $or$cond = 0, $zErr = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $zErr = sp; - HEAP32[$0>>2] = $rc; - HEAP32[$zErr>>2] = 5904; - $1 = HEAP32[$0>>2]|0; - $cond = ($1|0)==(516); - if ($cond) { - HEAP32[$zErr>>2] = 5920; - } else { - $2 = HEAP32[$0>>2]|0; - $3 = $2 & 255; - HEAP32[$0>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = ($4|0)>=(0); - $6 = HEAP32[$0>>2]|0; - $7 = ($6|0)<(27); - $or$cond = $5 & $7; - if ($or$cond) { - $8 = HEAP32[$0>>2]|0; - $9 = (5064 + ($8<<2)|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)!=(0|0); - if ($11) { - $12 = HEAP32[$0>>2]|0; - $13 = (5064 + ($12<<2)|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$zErr>>2] = $14; - } - } - } - $15 = HEAP32[$zErr>>2]|0; - STACKTOP = sp;return ($15|0); -} -function _sqlite3_result_error_toobig($pCtx) { - $pCtx = $pCtx|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pCtx; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 64|0); - HEAP32[$2>>2] = 18; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 69|0); - HEAP8[$4>>0] = 1; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 8|0); - (_sqlite3VdbeMemSetStr($6,1432,-1,1,0)|0); - STACKTOP = sp;return; -} -function _sqlite3_result_error_nomem($pCtx) { - $pCtx = $pCtx|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pCtx; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - _sqlite3VdbeMemSetNull($2); - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 64|0); - HEAP32[$4>>2] = 7; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 69|0); - HEAP8[$6>>0] = 1; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 8|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + 64|0); - HEAP8[$10>>0] = 1; - STACKTOP = sp;return; -} -function _sqlite3_step($pStmt) { - $pStmt = $pStmt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cnt = 0; - var $db = 0, $rc = 0, $rc2 = 0, $v = 0, $zErr = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $rc = sp + 20|0; - $rc2 = sp + 16|0; - $v = sp + 12|0; - $cnt = sp + 8|0; - $db = sp + 4|0; - $zErr = sp; - HEAP32[$1>>2] = $pStmt; - HEAP32[$rc>>2] = 0; - HEAP32[$rc2>>2] = 0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$v>>2] = $2; - HEAP32[$cnt>>2] = 0; - $3 = HEAP32[$v>>2]|0; - $4 = (_vdbeSafetyNotNull($3)|0); - $5 = ($4|0)!=(0); - if ($5) { - $6 = (_sqlite3MisuseError(66253)|0); - HEAP32[$0>>2] = $6; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); - } - $7 = HEAP32[$v>>2]|0; - $8 = HEAP32[$7>>2]|0; - HEAP32[$db>>2] = $8; - $9 = HEAP32[$v>>2]|0; - $10 = (($9) + 88|0); - $11 = HEAP16[$10>>1]|0; - $12 = $11 & -2049; - HEAP16[$10>>1] = $12; - while(1) { - $13 = HEAP32[$v>>2]|0; - $14 = (_sqlite3Step($13)|0); - HEAP32[$rc>>2] = $14; - $15 = ($14|0)==(17); - if (!($15)) { - break; - } - $16 = HEAP32[$cnt>>2]|0; - $17 = (($16) + 1)|0; - HEAP32[$cnt>>2] = $17; - $18 = ($16|0)<(50); - if (!($18)) { - break; - } - $19 = HEAP32[$v>>2]|0; - $20 = (_sqlite3Reprepare($19)|0); - HEAP32[$rc>>2] = $20; - HEAP32[$rc2>>2] = $20; - $21 = ($20|0)==(0); - if (!($21)) { - break; - } - $22 = HEAP32[$1>>2]|0; - (_sqlite3_reset($22)|0); - $23 = HEAP32[$v>>2]|0; - $24 = (($23) + 88|0); - $25 = HEAP16[$24>>1]|0; - $26 = $25 & -2049; - $27 = $26 | 2048; - HEAP16[$24>>1] = $27; - } - $28 = HEAP32[$rc2>>2]|0; - $29 = ($28|0)!=(0); - do { - if ($29) { - $30 = HEAP32[$db>>2]|0; - $31 = (($30) + 224|0); - $32 = HEAP32[$31>>2]|0; - $33 = (_sqlite3_value_text($32)|0); - HEAP32[$zErr>>2] = $33; - $34 = HEAP32[$db>>2]|0; - $35 = HEAP32[$v>>2]|0; - $36 = (($35) + 44|0); - $37 = HEAP32[$36>>2]|0; - _sqlite3DbFree($34,$37); - $38 = HEAP32[$db>>2]|0; - $39 = (($38) + 64|0); - $40 = HEAP8[$39>>0]|0; - $41 = ($40<<24>>24)!=(0); - if ($41) { - $50 = HEAP32[$v>>2]|0; - $51 = (($50) + 44|0); - HEAP32[$51>>2] = 0; - HEAP32[$rc>>2] = 7; - $52 = HEAP32[$v>>2]|0; - $53 = (($52) + 80|0); - HEAP32[$53>>2] = 7; - break; - } else { - $42 = HEAP32[$db>>2]|0; - $43 = HEAP32[$zErr>>2]|0; - $44 = (_sqlite3DbStrDup($42,$43)|0); - $45 = HEAP32[$v>>2]|0; - $46 = (($45) + 44|0); - HEAP32[$46>>2] = $44; - $47 = HEAP32[$rc2>>2]|0; - $48 = HEAP32[$v>>2]|0; - $49 = (($48) + 80|0); - HEAP32[$49>>2] = $47; - break; - } - } - } while(0); - $54 = HEAP32[$db>>2]|0; - $55 = HEAP32[$rc>>2]|0; - $56 = (_sqlite3ApiExit($54,$55)|0); - HEAP32[$rc>>2] = $56; - $57 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $57; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); -} -function _vdbeSafetyNotNull($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 8|0; - $1 = sp + 4|0; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0|0); - if ($3) { - _sqlite3_log(21,36888,$vararg_buffer); - HEAP32[$0>>2] = 1; - $6 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($6|0); - } else { - $4 = HEAP32[$1>>2]|0; - $5 = (_vdbeSafety($4)|0); - HEAP32[$0>>2] = $5; - $6 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($6|0); - } - return 0|0; -} -function _sqlite3Step($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; - var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; - var $99 = 0, $db = 0, $iNow = 0, $or$cond = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $db = sp + 12|0; - $rc = sp + 8|0; - $iNow = sp; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 40|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(-1108210269); - if ($5) { - $6 = HEAP32[$1>>2]|0; - (_sqlite3_reset($6)|0); - } - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$7>>2]|0; - HEAP32[$db>>2] = $8; - $9 = HEAP32[$db>>2]|0; - $10 = (($9) + 64|0); - $11 = HEAP8[$10>>0]|0; - $12 = ($11<<24>>24)!=(0); - $13 = HEAP32[$1>>2]|0; - if ($12) { - $14 = (($13) + 80|0); - HEAP32[$14>>2] = 7; - HEAP32[$0>>2] = 7; - $180 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($180|0); - } - $15 = (($13) + 76|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($16|0)<=(0); - if ($17) { - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 88|0); - $20 = HEAP16[$19>>1]|0; - $21 = ($20&65535) >>> 5; - $22 = $21 & 1; - $23 = $22&65535; - $24 = ($23|0)!=(0); - if ($24) { - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 80|0); - HEAP32[$26>>2] = 17; - HEAP32[$rc>>2] = 1; - } else { - label = 8; - } - } else { - label = 8; - } - if ((label|0) == 8) { - $27 = HEAP32[$1>>2]|0; - $28 = (($27) + 76|0); - $29 = HEAP32[$28>>2]|0; - $30 = ($29|0)<(0); - if ($30) { - $31 = HEAP32[$db>>2]|0; - $32 = (($31) + 140|0); - $33 = HEAP32[$32>>2]|0; - $34 = ($33|0)==(0); - if ($34) { - $35 = HEAP32[$db>>2]|0; - $36 = (($35) + 232|0); - HEAP32[$36>>2] = 0; - } - $37 = HEAP32[$db>>2]|0; - $38 = (($37) + 172|0); - $39 = HEAP32[$38>>2]|0; - $40 = ($39|0)!=(0|0); - if ($40) { - $41 = HEAP32[$db>>2]|0; - $42 = (($41) + 132|0); - $43 = (($42) + 5|0); - $44 = HEAP8[$43>>0]|0; - $45 = ($44<<24>>24)!=(0); - if (!($45)) { - $46 = HEAP32[$db>>2]|0; - $47 = HEAP32[$46>>2]|0; - $48 = HEAP32[$1>>2]|0; - $49 = (($48) + 128|0); - (_sqlite3OsCurrentTimeInt64($47,$49)|0); - } - } - $50 = HEAP32[$db>>2]|0; - $51 = (($50) + 140|0); - $52 = HEAP32[$51>>2]|0; - $53 = (($52) + 1)|0; - HEAP32[$51>>2] = $53; - $54 = HEAP32[$1>>2]|0; - $55 = (($54) + 88|0); - $56 = HEAP16[$55>>1]|0; - $57 = ($56&65535) >>> 8; - $58 = $57 & 1; - $59 = $58&65535; - $60 = ($59|0)==(0); - if ($60) { - $61 = HEAP32[$db>>2]|0; - $62 = (($61) + 148|0); - $63 = HEAP32[$62>>2]|0; - $64 = (($63) + 1)|0; - HEAP32[$62>>2] = $64; - } - $65 = HEAP32[$1>>2]|0; - $66 = (($65) + 88|0); - $67 = HEAP16[$66>>1]|0; - $68 = ($67&65535) >>> 9; - $69 = $68 & 1; - $70 = $69&65535; - $71 = ($70|0)!=(0); - if ($71) { - $72 = HEAP32[$db>>2]|0; - $73 = (($72) + 144|0); - $74 = HEAP32[$73>>2]|0; - $75 = (($74) + 1)|0; - HEAP32[$73>>2] = $75; - } - $76 = HEAP32[$1>>2]|0; - $77 = (($76) + 76|0); - HEAP32[$77>>2] = 0; - } - $78 = HEAP32[$1>>2]|0; - $79 = (($78) + 88|0); - $80 = HEAP16[$79>>1]|0; - $81 = $80 & 3; - $82 = $81&65535; - $83 = ($82|0)!=(0); - if ($83) { - $84 = HEAP32[$1>>2]|0; - $85 = (_sqlite3VdbeList($84)|0); - HEAP32[$rc>>2] = $85; - } else { - $86 = HEAP32[$db>>2]|0; - $87 = (($86) + 152|0); - $88 = HEAP32[$87>>2]|0; - $89 = (($88) + 1)|0; - HEAP32[$87>>2] = $89; - $90 = HEAP32[$1>>2]|0; - $91 = (_sqlite3VdbeExec($90)|0); - HEAP32[$rc>>2] = $91; - $92 = HEAP32[$db>>2]|0; - $93 = (($92) + 152|0); - $94 = HEAP32[$93>>2]|0; - $95 = (($94) + -1)|0; - HEAP32[$93>>2] = $95; - } - $96 = HEAP32[$rc>>2]|0; - $97 = ($96|0)!=(100); - if ($97) { - $98 = HEAP32[$db>>2]|0; - $99 = (($98) + 172|0); - $100 = HEAP32[$99>>2]|0; - $101 = ($100|0)!=(0|0); - if ($101) { - $102 = HEAP32[$db>>2]|0; - $103 = (($102) + 132|0); - $104 = (($103) + 5|0); - $105 = HEAP8[$104>>0]|0; - $106 = ($105<<24>>24)!=(0); - if (!($106)) { - $107 = HEAP32[$1>>2]|0; - $108 = (($107) + 168|0); - $109 = HEAP32[$108>>2]|0; - $110 = ($109|0)!=(0|0); - if ($110) { - $111 = HEAP32[$db>>2]|0; - $112 = HEAP32[$111>>2]|0; - (_sqlite3OsCurrentTimeInt64($112,$iNow)|0); - $113 = HEAP32[$db>>2]|0; - $114 = (($113) + 172|0); - $115 = HEAP32[$114>>2]|0; - $116 = HEAP32[$db>>2]|0; - $117 = (($116) + 176|0); - $118 = HEAP32[$117>>2]|0; - $119 = HEAP32[$1>>2]|0; - $120 = (($119) + 168|0); - $121 = HEAP32[$120>>2]|0; - $122 = $iNow; - $123 = $122; - $124 = HEAP32[$123>>2]|0; - $125 = (($122) + 4)|0; - $126 = $125; - $127 = HEAP32[$126>>2]|0; - $128 = HEAP32[$1>>2]|0; - $129 = (($128) + 128|0); - $130 = $129; - $131 = $130; - $132 = HEAP32[$131>>2]|0; - $133 = (($130) + 4)|0; - $134 = $133; - $135 = HEAP32[$134>>2]|0; - $136 = (_i64Subtract(($124|0),($127|0),($132|0),($135|0))|0); - $137 = tempRet0; - $138 = (___muldi3(($136|0),($137|0),1000000,0)|0); - $139 = tempRet0; - FUNCTION_TABLE_viiii[$115 & 3]($118,$121,$138,$139); - } - } - } - } - $140 = HEAP32[$rc>>2]|0; - $141 = ($140|0)==(101); - if ($141) { - $142 = HEAP32[$db>>2]|0; - $143 = (_doWalCallbacks($142)|0); - $144 = HEAP32[$1>>2]|0; - $145 = (($144) + 80|0); - HEAP32[$145>>2] = $143; - $146 = HEAP32[$1>>2]|0; - $147 = (($146) + 80|0); - $148 = HEAP32[$147>>2]|0; - $149 = ($148|0)!=(0); - if ($149) { - HEAP32[$rc>>2] = 1; - } - } - $150 = HEAP32[$rc>>2]|0; - $151 = HEAP32[$db>>2]|0; - $152 = (($151) + 52|0); - HEAP32[$152>>2] = $150; - $153 = HEAP32[$1>>2]|0; - $154 = HEAP32[$153>>2]|0; - $155 = HEAP32[$1>>2]|0; - $156 = (($155) + 80|0); - $157 = HEAP32[$156>>2]|0; - $158 = (_sqlite3ApiExit($154,$157)|0); - $159 = (7)==($158|0); - if ($159) { - $160 = HEAP32[$1>>2]|0; - $161 = (($160) + 80|0); - HEAP32[$161>>2] = 7; - } - } - $162 = HEAP32[$1>>2]|0; - $163 = (($162) + 88|0); - $164 = HEAP16[$163>>1]|0; - $165 = ($164&65535) >>> 10; - $166 = $165 & 1; - $167 = $166&65535; - $168 = ($167|0)!=(0); - if ($168) { - $169 = HEAP32[$rc>>2]|0; - $170 = ($169|0)!=(100); - $171 = HEAP32[$rc>>2]|0; - $172 = ($171|0)!=(101); - $or$cond = $170 & $172; - if ($or$cond) { - $173 = HEAP32[$1>>2]|0; - $174 = (_sqlite3VdbeTransferError($173)|0); - HEAP32[$rc>>2] = $174; - } - } - $175 = HEAP32[$rc>>2]|0; - $176 = HEAP32[$db>>2]|0; - $177 = (($176) + 56|0); - $178 = HEAP32[$177>>2]|0; - $179 = $175 & $178; - HEAP32[$0>>2] = $179; - $180 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($180|0); -} -function _sqlite3Reprepare($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $pNew = 0, $rc = 0, $zSql = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $rc = sp + 12|0; - $pNew = sp + 8|0; - $zSql = sp + 4|0; - $db = sp; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = (_sqlite3_sql($2)|0); - HEAP32[$zSql>>2] = $3; - $4 = HEAP32[$1>>2]|0; - $5 = (_sqlite3VdbeDb($4)|0); - HEAP32[$db>>2] = $5; - $6 = HEAP32[$db>>2]|0; - $7 = HEAP32[$zSql>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = (_sqlite3LockAndPrepare($6,$7,-1,0,$8,$pNew,0)|0); - HEAP32[$rc>>2] = $9; - $10 = HEAP32[$rc>>2]|0; - $11 = ($10|0)!=(0); - if (!($11)) { - $17 = HEAP32[$pNew>>2]|0; - $18 = HEAP32[$1>>2]|0; - _sqlite3VdbeSwap($17,$18); - $19 = HEAP32[$pNew>>2]|0; - $20 = HEAP32[$1>>2]|0; - (_sqlite3TransferBindings($19,$20)|0); - $21 = HEAP32[$pNew>>2]|0; - _sqlite3VdbeResetStepResult($21); - $22 = HEAP32[$pNew>>2]|0; - (_sqlite3VdbeFinalize($22)|0); - HEAP32[$0>>2] = 0; - $23 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($23|0); - } - $12 = HEAP32[$rc>>2]|0; - $13 = ($12|0)==(7); - if ($13) { - $14 = HEAP32[$db>>2]|0; - $15 = (($14) + 64|0); - HEAP8[$15>>0] = 1; - } - $16 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $16; - $23 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($23|0); -} -function _sqlite3DbStrDup($db,$z) { - $db = $db|0; - $z = $z|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, $zNew = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $zNew = sp + 4|0; - $n = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $z; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - HEAP32[$0>>2] = 0; - $17 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($17|0); - } - $5 = HEAP32[$2>>2]|0; - $6 = (_sqlite3Strlen30($5)|0); - $7 = (($6) + 1)|0; - HEAP32[$n>>2] = $7; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$n>>2]|0; - $10 = (_sqlite3DbMallocRaw($8,$9)|0); - HEAP32[$zNew>>2] = $10; - $11 = HEAP32[$zNew>>2]|0; - $12 = ($11|0)!=(0|0); - if ($12) { - $13 = HEAP32[$zNew>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$n>>2]|0; - _memcpy(($13|0),($14|0),($15|0))|0; - } - $16 = HEAP32[$zNew>>2]|0; - HEAP32[$0>>2] = $16; - $17 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($17|0); -} -function _sqlite3_user_data($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - STACKTOP = sp;return ($4|0); -} -function _sqlite3_context_db_handle($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _sqlite3_aggregate_context($p,$nByte) { - $p = $p|0; - $nByte = $nByte|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pMem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pMem = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $nByte; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 48|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pMem>>2] = $4; - $5 = HEAP32[$pMem>>2]|0; - $6 = (($5) + 28|0); - $7 = HEAP16[$6>>1]|0; - $8 = $7&65535; - $9 = $8 & 8192; - $10 = ($9|0)==(0); - do { - if ($10) { - $11 = HEAP32[$1>>2]|0; - $12 = ($11|0)<=(0); - $13 = HEAP32[$pMem>>2]|0; - if ($12) { - _sqlite3VdbeMemReleaseExternal($13); - $14 = HEAP32[$pMem>>2]|0; - $15 = (($14) + 28|0); - HEAP16[$15>>1] = 1; - $16 = HEAP32[$pMem>>2]|0; - $17 = (($16) + 4|0); - HEAP32[$17>>2] = 0; - break; - } - $18 = HEAP32[$1>>2]|0; - (_sqlite3VdbeMemGrow($13,$18,0)|0); - $19 = HEAP32[$pMem>>2]|0; - $20 = (($19) + 28|0); - HEAP16[$20>>1] = 8192; - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$pMem>>2]|0; - $24 = (($23) + 16|0); - HEAP32[$24>>2] = $22; - $25 = HEAP32[$pMem>>2]|0; - $26 = (($25) + 4|0); - $27 = HEAP32[$26>>2]|0; - $28 = ($27|0)!=(0|0); - if ($28) { - $29 = HEAP32[$pMem>>2]|0; - $30 = (($29) + 4|0); - $31 = HEAP32[$30>>2]|0; - $32 = HEAP32[$1>>2]|0; - _memset(($31|0),0,($32|0))|0; - } - } - } while(0); - $33 = HEAP32[$pMem>>2]|0; - $34 = (($33) + 4|0); - $35 = HEAP32[$34>>2]|0; - STACKTOP = sp;return ($35|0); -} -function _sqlite3VdbeMemReleaseExternal($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 28|0); - $3 = HEAP16[$2>>1]|0; - $4 = $3&65535; - $5 = $4 & 8192; - $6 = ($5|0)!=(0); - $7 = HEAP32[$0>>2]|0; - if ($6) { - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 16|0); - $10 = HEAP32[$9>>2]|0; - (_sqlite3VdbeMemFinalize($7,$10)|0); - $11 = HEAP32[$0>>2]|0; - _sqlite3VdbeMemRelease($11); - STACKTOP = sp;return; - } - $12 = (($7) + 28|0); - $13 = HEAP16[$12>>1]|0; - $14 = $13&65535; - $15 = $14 & 1024; - $16 = ($15|0)!=(0); - $17 = HEAP32[$0>>2]|0; - if ($16) { - $18 = (($17) + 32|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 4|0); - $22 = HEAP32[$21>>2]|0; - FUNCTION_TABLE_vi[$19 & 31]($22); - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 32|0); - HEAP32[$24>>2] = 0; - STACKTOP = sp;return; - } - $25 = (($17) + 28|0); - $26 = HEAP16[$25>>1]|0; - $27 = $26&65535; - $28 = $27 & 32; - $29 = ($28|0)!=(0); - $30 = HEAP32[$0>>2]|0; - if ($29) { - $31 = (($30) + 16|0); - $32 = HEAP32[$31>>2]|0; - _sqlite3RowSetClear($32); - STACKTOP = sp;return; - } - $33 = (($30) + 28|0); - $34 = HEAP16[$33>>1]|0; - $35 = $34&65535; - $36 = $35 & 64; - $37 = ($36|0)!=(0); - if (!($37)) { - STACKTOP = sp;return; - } - $38 = HEAP32[$0>>2]|0; - _sqlite3VdbeMemSetNull($38); - STACKTOP = sp;return; -} -function _sqlite3VdbeMemGrow($pMem,$n,$bPreserve) { - $pMem = $pMem|0; - $n = $n|0; - $bPreserve = $bPreserve|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0; - var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; - var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; - var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; - var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; - var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$1>>2] = $pMem; - HEAP32[$2>>2] = $n; - HEAP32[$3>>2] = $bPreserve; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 36|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)==(0|0); - if ($7) { - label = 3; - } else { - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 36|0); - $12 = HEAP32[$11>>2]|0; - $13 = (_sqlite3DbMallocSize($9,$12)|0); - $14 = HEAP32[$2>>2]|0; - $15 = ($13|0)<($14|0); - if ($15) { - label = 3; - } - } - if ((label|0) == 3) { - $16 = HEAP32[$2>>2]|0; - $17 = ($16|0)<(32); - if ($17) { - HEAP32[$2>>2] = 32; - } - $18 = HEAP32[$3>>2]|0; - $19 = ($18|0)!=(0); - if ($19) { - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 4|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 36|0); - $25 = HEAP32[$24>>2]|0; - $26 = ($22|0)==($25|0); - if ($26) { - $27 = HEAP32[$1>>2]|0; - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$1>>2]|0; - $30 = (($29) + 4|0); - $31 = HEAP32[$30>>2]|0; - $32 = HEAP32[$2>>2]|0; - $33 = (_sqlite3DbReallocOrFree($28,$31,$32)|0); - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 36|0); - HEAP32[$35>>2] = $33; - $36 = HEAP32[$1>>2]|0; - $37 = (($36) + 4|0); - HEAP32[$37>>2] = $33; - HEAP32[$3>>2] = 0; - } else { - label = 8; - } - } else { - label = 8; - } - if ((label|0) == 8) { - $38 = HEAP32[$1>>2]|0; - $39 = HEAP32[$38>>2]|0; - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 36|0); - $42 = HEAP32[$41>>2]|0; - _sqlite3DbFree($39,$42); - $43 = HEAP32[$1>>2]|0; - $44 = HEAP32[$43>>2]|0; - $45 = HEAP32[$2>>2]|0; - $46 = (_sqlite3DbMallocRaw($44,$45)|0); - $47 = HEAP32[$1>>2]|0; - $48 = (($47) + 36|0); - HEAP32[$48>>2] = $46; - } - $49 = HEAP32[$1>>2]|0; - $50 = (($49) + 36|0); - $51 = HEAP32[$50>>2]|0; - $52 = ($51|0)==(0|0); - if ($52) { - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + 28|0); - $55 = HEAP16[$54>>1]|0; - $56 = $55&65535; - $57 = $56 & 9312; - $58 = ($57|0)!=(0); - if ($58) { - $59 = HEAP32[$1>>2]|0; - _sqlite3VdbeMemReleaseExternal($59); - } - $60 = HEAP32[$1>>2]|0; - $61 = (($60) + 4|0); - HEAP32[$61>>2] = 0; - $62 = HEAP32[$1>>2]|0; - $63 = (($62) + 28|0); - HEAP16[$63>>1] = 1; - HEAP32[$0>>2] = 7; - $111 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($111|0); - } - } - $64 = HEAP32[$1>>2]|0; - $65 = (($64) + 4|0); - $66 = HEAP32[$65>>2]|0; - $67 = ($66|0)!=(0|0); - if ($67) { - $68 = HEAP32[$3>>2]|0; - $69 = ($68|0)!=(0); - if ($69) { - $70 = HEAP32[$1>>2]|0; - $71 = (($70) + 4|0); - $72 = HEAP32[$71>>2]|0; - $73 = HEAP32[$1>>2]|0; - $74 = (($73) + 36|0); - $75 = HEAP32[$74>>2]|0; - $76 = ($72|0)!=($75|0); - if ($76) { - $77 = HEAP32[$1>>2]|0; - $78 = (($77) + 36|0); - $79 = HEAP32[$78>>2]|0; - $80 = HEAP32[$1>>2]|0; - $81 = (($80) + 4|0); - $82 = HEAP32[$81>>2]|0; - $83 = HEAP32[$1>>2]|0; - $84 = (($83) + 24|0); - $85 = HEAP32[$84>>2]|0; - _memcpy(($79|0),($82|0),($85|0))|0; - } - } - } - $86 = HEAP32[$1>>2]|0; - $87 = (($86) + 28|0); - $88 = HEAP16[$87>>1]|0; - $89 = $88&65535; - $90 = $89 & 1024; - $91 = ($90|0)!=(0); - if ($91) { - $92 = HEAP32[$1>>2]|0; - $93 = (($92) + 32|0); - $94 = HEAP32[$93>>2]|0; - $95 = HEAP32[$1>>2]|0; - $96 = (($95) + 4|0); - $97 = HEAP32[$96>>2]|0; - FUNCTION_TABLE_vi[$94 & 31]($97); - } - $98 = HEAP32[$1>>2]|0; - $99 = (($98) + 36|0); - $100 = HEAP32[$99>>2]|0; - $101 = HEAP32[$1>>2]|0; - $102 = (($101) + 4|0); - HEAP32[$102>>2] = $100; - $103 = HEAP32[$1>>2]|0; - $104 = (($103) + 28|0); - $105 = HEAP16[$104>>1]|0; - $106 = $105&65535; - $107 = $106 & -7169; - $108 = $107&65535; - HEAP16[$104>>1] = $108; - $109 = HEAP32[$1>>2]|0; - $110 = (($109) + 32|0); - HEAP32[$110>>2] = 0; - HEAP32[$0>>2] = 0; - $111 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($111|0); -} -function _sqlite3DbMallocZero($db,$n) { - $db = $db|0; - $n = $n|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $n; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_sqlite3DbMallocRaw($2,$3)|0); - HEAP32[$p>>2] = $4; - $5 = HEAP32[$p>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - $9 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($9|0); - } - $7 = HEAP32[$p>>2]|0; - $8 = HEAP32[$1>>2]|0; - _memset(($7|0),0,($8|0))|0; - $9 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($9|0); -} -function _sqlite3_column_count($pStmt) { - $pStmt = $pStmt|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $pVm = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pVm = sp; - HEAP32[$0>>2] = $pStmt; - $1 = HEAP32[$0>>2]|0; - HEAP32[$pVm>>2] = $1; - $2 = HEAP32[$pVm>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - $8 = 0; - STACKTOP = sp;return ($8|0); - } - $4 = HEAP32[$pVm>>2]|0; - $5 = (($4) + 84|0); - $6 = HEAP16[$5>>1]|0; - $7 = $6&65535; - $8 = $7; - STACKTOP = sp;return ($8|0); -} -function _sqlite3_data_count($pStmt) { - $pStmt = $pStmt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pVm = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pVm = sp; - HEAP32[$1>>2] = $pStmt; - $2 = HEAP32[$1>>2]|0; - HEAP32[$pVm>>2] = $2; - $3 = HEAP32[$pVm>>2]|0; - $4 = ($3|0)==(0|0); - if (!($4)) { - $5 = HEAP32[$pVm>>2]|0; - $6 = (($5) + 20|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)==(0|0); - if (!($8)) { - $9 = HEAP32[$pVm>>2]|0; - $10 = (($9) + 84|0); - $11 = HEAP16[$10>>1]|0; - $12 = $11&65535; - HEAP32[$0>>2] = $12; - $13 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($13|0); - } - } - HEAP32[$0>>2] = 0; - $13 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($13|0); -} -function _sqlite3_column_blob($pStmt,$i) { - $pStmt = $pStmt|0; - $i = $i|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $val = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $val = sp; - HEAP32[$0>>2] = $pStmt; - HEAP32[$1>>2] = $i; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_columnMem($2,$3)|0); - $5 = (_sqlite3_value_blob($4)|0); - HEAP32[$val>>2] = $5; - $6 = HEAP32[$0>>2]|0; - _columnMallocFailure($6); - $7 = HEAP32[$val>>2]|0; - STACKTOP = sp;return ($7|0); -} -function _columnMem($pStmt,$i) { - $pStmt = $pStmt|0; - $i = $i|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $pOut = 0, $pVm = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 16|0; - $1 = sp + 12|0; - $pVm = sp + 8|0; - $pOut = sp + 4|0; - HEAP32[$0>>2] = $pStmt; - HEAP32[$1>>2] = $i; - $2 = HEAP32[$0>>2]|0; - HEAP32[$pVm>>2] = $2; - $3 = HEAP32[$pVm>>2]|0; - $4 = ($3|0)!=(0|0); - if ($4) { - $5 = HEAP32[$pVm>>2]|0; - $6 = (($5) + 20|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)!=(0|0); - if ($8) { - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$pVm>>2]|0; - $11 = (($10) + 84|0); - $12 = HEAP16[$11>>1]|0; - $13 = $12&65535; - $14 = ($9|0)<($13|0); - $15 = HEAP32[$1>>2]|0; - $16 = ($15|0)>=(0); - $or$cond = $14 & $16; - if ($or$cond) { - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$pVm>>2]|0; - $19 = (($18) + 20|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($20) + (($17*40)|0)|0); - HEAP32[$pOut>>2] = $21; - $30 = HEAP32[$pOut>>2]|0; - STACKTOP = sp;return ($30|0); - } - } - } - $22 = HEAP32[$pVm>>2]|0; - $23 = ($22|0)!=(0|0); - if ($23) { - $24 = HEAP32[$pVm>>2]|0; - $25 = HEAP32[$24>>2]|0; - $26 = ($25|0)!=(0|0); - if ($26) { - $27 = HEAP32[$pVm>>2]|0; - $28 = HEAP32[$27>>2]|0; - _sqlite3Error($28,25,0,$vararg_buffer); - } - } - $29 = (_columnNullValue()|0); - HEAP32[$pOut>>2] = $29; - $30 = HEAP32[$pOut>>2]|0; - STACKTOP = sp;return ($30|0); -} -function _columnMallocFailure($pStmt) { - $pStmt = $pStmt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pStmt; - $1 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $1; - $2 = HEAP32[$p>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - STACKTOP = sp;return; - } - $4 = HEAP32[$p>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$p>>2]|0; - $7 = (($6) + 80|0); - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3ApiExit($5,$8)|0); - $10 = HEAP32[$p>>2]|0; - $11 = (($10) + 80|0); - HEAP32[$11>>2] = $9; - STACKTOP = sp;return; -} -function _sqlite3_column_bytes($pStmt,$i) { - $pStmt = $pStmt|0; - $i = $i|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $val = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $val = sp; - HEAP32[$0>>2] = $pStmt; - HEAP32[$1>>2] = $i; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_columnMem($2,$3)|0); - $5 = (_sqlite3_value_bytes($4)|0); - HEAP32[$val>>2] = $5; - $6 = HEAP32[$0>>2]|0; - _columnMallocFailure($6); - $7 = HEAP32[$val>>2]|0; - STACKTOP = sp;return ($7|0); -} -function _sqlite3_column_double($pStmt,$i) { - $pStmt = $pStmt|0; - $i = $i|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0.0, $6 = 0, $7 = 0.0, $val = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $val = sp; - HEAP32[$0>>2] = $pStmt; - HEAP32[$1>>2] = $i; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_columnMem($2,$3)|0); - $5 = (+_sqlite3_value_double($4)); - HEAPF64[$val>>3] = $5; - $6 = HEAP32[$0>>2]|0; - _columnMallocFailure($6); - $7 = +HEAPF64[$val>>3]; - STACKTOP = sp;return (+$7); -} -function _sqlite3_column_text($pStmt,$i) { - $pStmt = $pStmt|0; - $i = $i|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $val = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $val = sp; - HEAP32[$0>>2] = $pStmt; - HEAP32[$1>>2] = $i; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_columnMem($2,$3)|0); - $5 = (_sqlite3_value_text($4)|0); - HEAP32[$val>>2] = $5; - $6 = HEAP32[$0>>2]|0; - _columnMallocFailure($6); - $7 = HEAP32[$val>>2]|0; - STACKTOP = sp;return ($7|0); -} -function _sqlite3_column_type($pStmt,$i) { - $pStmt = $pStmt|0; - $i = $i|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $iType = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $iType = sp; - HEAP32[$0>>2] = $pStmt; - HEAP32[$1>>2] = $i; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_columnMem($2,$3)|0); - $5 = (_sqlite3_value_type($4)|0); - HEAP32[$iType>>2] = $5; - $6 = HEAP32[$0>>2]|0; - _columnMallocFailure($6); - $7 = HEAP32[$iType>>2]|0; - STACKTOP = sp;return ($7|0); -} -function _sqlite3_column_name($pStmt,$N) { - $pStmt = $pStmt|0; - $N = $N|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pStmt; - HEAP32[$1>>2] = $N; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_columnName($2,$3,17,0)|0); - STACKTOP = sp;return ($4|0); -} -function _columnName($pStmt,$N,$xFunc,$useType) { - $pStmt = $pStmt|0; - $N = $N|0; - $xFunc = $xFunc|0; - $useType = $useType|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $n = 0, $or$cond = 0, $p = 0, $ret = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $ret = sp + 12|0; - $p = sp + 8|0; - $n = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $pStmt; - HEAP32[$1>>2] = $N; - HEAP32[$2>>2] = $xFunc; - HEAP32[$3>>2] = $useType; - HEAP32[$ret>>2] = 0; - $4 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $4; - $5 = HEAP32[$p>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = (_sqlite3_column_count($7)|0); - HEAP32[$n>>2] = $8; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$n>>2]|0; - $11 = ($9|0)<($10|0); - $12 = HEAP32[$1>>2]|0; - $13 = ($12|0)>=(0); - $or$cond = $11 & $13; - if (!($or$cond)) { - $32 = HEAP32[$ret>>2]|0; - STACKTOP = sp;return ($32|0); - } - $14 = HEAP32[$3>>2]|0; - $15 = HEAP32[$n>>2]|0; - $16 = Math_imul($14, $15)|0; - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + ($16))|0; - HEAP32[$1>>2] = $18; - $19 = HEAP32[$2>>2]|0; - $20 = HEAP32[$1>>2]|0; - $21 = HEAP32[$p>>2]|0; - $22 = (($21) + 16|0); - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + (($20*40)|0)|0); - $25 = (FUNCTION_TABLE_ii[$19 & 31]($24)|0); - HEAP32[$ret>>2] = $25; - $26 = HEAP32[$db>>2]|0; - $27 = (($26) + 64|0); - $28 = HEAP8[$27>>0]|0; - $29 = ($28<<24>>24)!=(0); - if (!($29)) { - $32 = HEAP32[$ret>>2]|0; - STACKTOP = sp;return ($32|0); - } - $30 = HEAP32[$db>>2]|0; - $31 = (($30) + 64|0); - HEAP8[$31>>0] = 0; - HEAP32[$ret>>2] = 0; - $32 = HEAP32[$ret>>2]|0; - STACKTOP = sp;return ($32|0); -} -function _sqlite3_bind_blob($pStmt,$i,$zData,$nData,$xDel) { - $pStmt = $pStmt|0; - $i = $i|0; - $zData = $zData|0; - $nData = $nData|0; - $xDel = $xDel|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $4 = sp; - HEAP32[$0>>2] = $pStmt; - HEAP32[$1>>2] = $i; - HEAP32[$2>>2] = $zData; - HEAP32[$3>>2] = $nData; - HEAP32[$4>>2] = $xDel; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$3>>2]|0; - $9 = HEAP32[$4>>2]|0; - $10 = (_bindText($5,$6,$7,$8,$9,0)|0); - STACKTOP = sp;return ($10|0); -} -function _bindText($pStmt,$i,$zData,$nData,$xDel,$encoding) { - $pStmt = $pStmt|0; - $i = $i|0; - $zData = $zData|0; - $nData = $nData|0; - $xDel = $xDel|0; - $encoding = $encoding|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $p = 0, $pVar = 0, $rc = 0; - var $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $4 = sp + 16|0; - $5 = sp + 36|0; - $p = sp + 12|0; - $pVar = sp + 8|0; - $rc = sp + 4|0; - HEAP32[$0>>2] = $pStmt; - HEAP32[$1>>2] = $i; - HEAP32[$2>>2] = $zData; - HEAP32[$3>>2] = $nData; - HEAP32[$4>>2] = $xDel; - HEAP8[$5>>0] = $encoding; - $6 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $6; - $7 = HEAP32[$p>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = (_vdbeUnbind($7,$8)|0); - HEAP32[$rc>>2] = $9; - $10 = HEAP32[$rc>>2]|0; - $11 = ($10|0)==(0); - if (!($11)) { - $49 = HEAP32[$4>>2]|0; - $50 = ($49|0)!=(0|0); - $51 = HEAP32[$4>>2]|0; - $52 = ($51|0)!=((-1)|0); - $or$cond = $50 & $52; - if (!($or$cond)) { - $55 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($55|0); - } - $53 = HEAP32[$4>>2]|0; - $54 = HEAP32[$2>>2]|0; - FUNCTION_TABLE_vi[$53 & 31]($54); - $55 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($55|0); - } - $12 = HEAP32[$2>>2]|0; - $13 = ($12|0)!=(0|0); - if (!($13)) { - $55 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($55|0); - } - $14 = HEAP32[$1>>2]|0; - $15 = (($14) - 1)|0; - $16 = HEAP32[$p>>2]|0; - $17 = (($16) + 60|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + (($15*40)|0)|0); - HEAP32[$pVar>>2] = $19; - $20 = HEAP32[$pVar>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = HEAP32[$3>>2]|0; - $23 = HEAP8[$5>>0]|0; - $24 = HEAP32[$4>>2]|0; - $25 = (_sqlite3VdbeMemSetStr($20,$21,$22,$23,$24)|0); - HEAP32[$rc>>2] = $25; - $26 = HEAP32[$rc>>2]|0; - $27 = ($26|0)==(0); - if ($27) { - $28 = HEAP8[$5>>0]|0; - $29 = $28&255; - $30 = ($29|0)!=(0); - if ($30) { - $31 = HEAP32[$pVar>>2]|0; - $32 = HEAP32[$p>>2]|0; - $33 = HEAP32[$32>>2]|0; - $34 = (($33) + 16|0); - $35 = HEAP32[$34>>2]|0; - $36 = (($35) + 12|0); - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + 77|0); - $39 = HEAP8[$38>>0]|0; - $40 = $39&255; - $41 = (_sqlite3VdbeChangeEncoding($31,$40)|0); - HEAP32[$rc>>2] = $41; - } - } - $42 = HEAP32[$p>>2]|0; - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$rc>>2]|0; - _sqlite3Error($43,$44,0,$vararg_buffer); - $45 = HEAP32[$p>>2]|0; - $46 = HEAP32[$45>>2]|0; - $47 = HEAP32[$rc>>2]|0; - $48 = (_sqlite3ApiExit($46,$47)|0); - HEAP32[$rc>>2] = $48; - $55 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($55|0); -} -function _sqlite3_bind_double($pStmt,$i,$rValue) { - $pStmt = $pStmt|0; - $i = $i|0; - $rValue = +$rValue; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0.0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $rc = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp; - $rc = sp + 12|0; - $p = sp + 8|0; - HEAP32[$0>>2] = $pStmt; - HEAP32[$1>>2] = $i; - HEAPF64[$2>>3] = $rValue; - $3 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $3; - $4 = HEAP32[$p>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = (_vdbeUnbind($4,$5)|0); - HEAP32[$rc>>2] = $6; - $7 = HEAP32[$rc>>2]|0; - $8 = ($7|0)==(0); - if (!($8)) { - $16 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($16|0); - } - $9 = HEAP32[$1>>2]|0; - $10 = (($9) - 1)|0; - $11 = HEAP32[$p>>2]|0; - $12 = (($11) + 60|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + (($10*40)|0)|0); - $15 = +HEAPF64[$2>>3]; - _sqlite3VdbeMemSetDouble($14,$15); - $16 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($16|0); -} -function _vdbeUnbind($p,$i) { - $p = $p|0; - $i = $i|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $pVar = 0, $vararg_buffer5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer5 = sp; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $pVar = sp + 4|0; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $i; - $3 = HEAP32[$1>>2]|0; - $4 = (_vdbeSafetyNotNull($3)|0); - $5 = ($4|0)!=(0); - if ($5) { - $6 = (_sqlite3MisuseError(66775)|0); - HEAP32[$0>>2] = $6; - $68 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($68|0); - } - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 40|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)!=(-1108210269); - if (!($10)) { - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 76|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)>=(0); - if (!($14)) { - $21 = HEAP32[$2>>2]|0; - $22 = ($21|0)<(1); - if (!($22)) { - $23 = HEAP32[$2>>2]|0; - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 68|0); - $26 = HEAP16[$25>>1]|0; - $27 = $26 << 16 >> 16; - $28 = ($23|0)>($27|0); - if (!($28)) { - $31 = HEAP32[$2>>2]|0; - $32 = (($31) + -1)|0; - HEAP32[$2>>2] = $32; - $33 = HEAP32[$2>>2]|0; - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 60|0); - $36 = HEAP32[$35>>2]|0; - $37 = (($36) + (($33*40)|0)|0); - HEAP32[$pVar>>2] = $37; - $38 = HEAP32[$pVar>>2]|0; - _sqlite3VdbeMemRelease($38); - $39 = HEAP32[$pVar>>2]|0; - $40 = (($39) + 28|0); - HEAP16[$40>>1] = 1; - $41 = HEAP32[$1>>2]|0; - $42 = HEAP32[$41>>2]|0; - _sqlite3Error($42,0,0,$vararg_buffer5); - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + 88|0); - $45 = HEAP16[$44>>1]|0; - $46 = ($45&65535) >>> 10; - $47 = $46 & 1; - $48 = $47&65535; - $49 = ($48|0)!=(0); - do { - if ($49) { - $50 = HEAP32[$2>>2]|0; - $51 = ($50|0)<(32); - if ($51) { - $52 = HEAP32[$1>>2]|0; - $53 = (($52) + 188|0); - $54 = HEAP32[$53>>2]|0; - $55 = HEAP32[$2>>2]|0; - $56 = 1 << $55; - $57 = $54 & $56; - $58 = ($57|0)!=(0); - if (!($58)) { - label = 12; - } - } else { - label = 12; - } - if ((label|0) == 12) { - $59 = HEAP32[$1>>2]|0; - $60 = (($59) + 188|0); - $61 = HEAP32[$60>>2]|0; - $62 = ($61|0)==(-1); - if (!($62)) { - break; - } - } - $63 = HEAP32[$1>>2]|0; - $64 = (($63) + 88|0); - $65 = HEAP16[$64>>1]|0; - $66 = $65 & -33; - $67 = $66 | 32; - HEAP16[$64>>1] = $67; - } - } while(0); - HEAP32[$0>>2] = 0; - $68 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($68|0); - } - } - $29 = HEAP32[$1>>2]|0; - $30 = HEAP32[$29>>2]|0; - _sqlite3Error($30,25,0,$vararg_buffer5); - HEAP32[$0>>2] = 25; - $68 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($68|0); - } - } - $15 = HEAP32[$1>>2]|0; - $16 = HEAP32[$15>>2]|0; - _sqlite3Error($16,21,0,$vararg_buffer5); - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 168|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$vararg_buffer5>>2] = $19; - _sqlite3_log(21,31040,$vararg_buffer5); - $20 = (_sqlite3MisuseError(66783)|0); - HEAP32[$0>>2] = $20; - $68 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($68|0); -} -function _sqlite3_bind_int($p,$i,$iValue) { - $p = $p|0; - $i = $i|0; - $iValue = $iValue|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $i; - HEAP32[$2>>2] = $iValue; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = ($5|0)<(0); - $7 = $6 << 31 >> 31; - $8 = (_sqlite3_bind_int64($3,$4,$5,$7)|0); - STACKTOP = sp;return ($8|0); -} -function _sqlite3_bind_int64($pStmt,$i,$0,$1) { - $pStmt = $pStmt|0; - $i = $i|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp; - $rc = sp + 12|0; - $p = sp + 8|0; - HEAP32[$2>>2] = $pStmt; - HEAP32[$3>>2] = $i; - $5 = $4; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - $9 = HEAP32[$2>>2]|0; - HEAP32[$p>>2] = $9; - $10 = HEAP32[$p>>2]|0; - $11 = HEAP32[$3>>2]|0; - $12 = (_vdbeUnbind($10,$11)|0); - HEAP32[$rc>>2] = $12; - $13 = HEAP32[$rc>>2]|0; - $14 = ($13|0)==(0); - if (!($14)) { - $27 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($27|0); - } - $15 = HEAP32[$3>>2]|0; - $16 = (($15) - 1)|0; - $17 = HEAP32[$p>>2]|0; - $18 = (($17) + 60|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($19) + (($16*40)|0)|0); - $21 = $4; - $22 = $21; - $23 = HEAP32[$22>>2]|0; - $24 = (($21) + 4)|0; - $25 = $24; - $26 = HEAP32[$25>>2]|0; - _sqlite3VdbeMemSetInt64($20,$23,$26); - $27 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($27|0); -} -function _sqlite3_bind_text($pStmt,$i,$zData,$nData,$xDel) { - $pStmt = $pStmt|0; - $i = $i|0; - $zData = $zData|0; - $nData = $nData|0; - $xDel = $xDel|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $4 = sp; - HEAP32[$0>>2] = $pStmt; - HEAP32[$1>>2] = $i; - HEAP32[$2>>2] = $zData; - HEAP32[$3>>2] = $nData; - HEAP32[$4>>2] = $xDel; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$3>>2]|0; - $9 = HEAP32[$4>>2]|0; - $10 = (_bindText($5,$6,$7,$8,$9,1)|0); - STACKTOP = sp;return ($10|0); -} -function _sqlite3_bind_parameter_index($pStmt,$zName) { - $pStmt = $pStmt|0; - $zName = $zName|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pStmt; - HEAP32[$1>>2] = $zName; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (_sqlite3Strlen30($4)|0); - $6 = (_sqlite3VdbeParameterIndex($2,$3,$5)|0); - STACKTOP = sp;return ($6|0); -} -function _sqlite3VdbeParameterIndex($p,$zName,$nName) { - $p = $p|0; - $zName = $zName|0; - $nName = $nName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $z = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $i = sp + 4|0; - $z = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $zName; - HEAP32[$3>>2] = $nName; - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)==(0|0); - if ($5) { - HEAP32[$0>>2] = 0; - $37 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($37|0); - } - $6 = HEAP32[$2>>2]|0; - $7 = ($6|0)!=(0|0); - L5: do { - if ($7) { - HEAP32[$i>>2] = 0; - while(1) { - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 70|0); - $11 = HEAP16[$10>>1]|0; - $12 = $11 << 16 >> 16; - $13 = ($8|0)<($12|0); - if (!($13)) { - break L5; - } - $14 = HEAP32[$i>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 64|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + ($14<<2)|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$z>>2] = $19; - $20 = HEAP32[$z>>2]|0; - $21 = ($20|0)!=(0|0); - if ($21) { - $22 = HEAP32[$z>>2]|0; - $23 = HEAP32[$2>>2]|0; - $24 = HEAP32[$3>>2]|0; - $25 = (_strncmp($22,$23,$24)|0); - $26 = ($25|0)==(0); - if ($26) { - $27 = HEAP32[$3>>2]|0; - $28 = HEAP32[$z>>2]|0; - $29 = (($28) + ($27)|0); - $30 = HEAP8[$29>>0]|0; - $31 = $30 << 24 >> 24; - $32 = ($31|0)==(0); - if ($32) { - break; - } - } - } - $35 = HEAP32[$i>>2]|0; - $36 = (($35) + 1)|0; - HEAP32[$i>>2] = $36; - } - $33 = HEAP32[$i>>2]|0; - $34 = (($33) + 1)|0; - HEAP32[$0>>2] = $34; - $37 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($37|0); - } - } while(0); - HEAP32[$0>>2] = 0; - $37 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($37|0); -} -function _sqlite3TransferBindings($pFromStmt,$pToStmt) { - $pFromStmt = $pFromStmt|0; - $pToStmt = $pToStmt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $i = 0, $pFrom = 0, $pTo = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $pFrom = sp + 8|0; - $pTo = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $pFromStmt; - HEAP32[$1>>2] = $pToStmt; - $2 = HEAP32[$0>>2]|0; - HEAP32[$pFrom>>2] = $2; - $3 = HEAP32[$1>>2]|0; - HEAP32[$pTo>>2] = $3; - HEAP32[$i>>2] = 0; - while(1) { - $4 = HEAP32[$i>>2]|0; - $5 = HEAP32[$pFrom>>2]|0; - $6 = (($5) + 68|0); - $7 = HEAP16[$6>>1]|0; - $8 = $7 << 16 >> 16; - $9 = ($4|0)<($8|0); - if (!($9)) { - break; - } - $10 = HEAP32[$i>>2]|0; - $11 = HEAP32[$pTo>>2]|0; - $12 = (($11) + 60|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + (($10*40)|0)|0); - $15 = HEAP32[$i>>2]|0; - $16 = HEAP32[$pFrom>>2]|0; - $17 = (($16) + 60|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + (($15*40)|0)|0); - _sqlite3VdbeMemMove($14,$19); - $20 = HEAP32[$i>>2]|0; - $21 = (($20) + 1)|0; - HEAP32[$i>>2] = $21; - } - STACKTOP = sp;return 0; -} -function _sqlite3_value_numeric_type($pVal) { - $pVal = $pVal|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $eType = 0, $pMem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $eType = sp + 4|0; - $pMem = sp; - HEAP32[$0>>2] = $pVal; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3_value_type($1)|0); - HEAP32[$eType>>2] = $2; - $3 = HEAP32[$eType>>2]|0; - $4 = ($3|0)==(3); - if (!($4)) { - $9 = HEAP32[$eType>>2]|0; - STACKTOP = sp;return ($9|0); - } - $5 = HEAP32[$0>>2]|0; - HEAP32[$pMem>>2] = $5; - $6 = HEAP32[$pMem>>2]|0; - _applyNumericAffinity($6); - $7 = HEAP32[$0>>2]|0; - $8 = (_sqlite3_value_type($7)|0); - HEAP32[$eType>>2] = $8; - $9 = HEAP32[$eType>>2]|0; - STACKTOP = sp;return ($9|0); -} -function _applyNumericAffinity($pRec) { - $pRec = $pRec|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0.0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; - var $9 = 0, $enc = 0, $iValue = 0, $rValue = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $rValue = sp + 8|0; - $iValue = sp; - $enc = sp + 20|0; - HEAP32[$0>>2] = $pRec; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 28|0); - $3 = HEAP16[$2>>1]|0; - $4 = $3&65535; - $5 = $4 & 12; - $6 = ($5|0)==(0); - if (!($6)) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 30|0); - $9 = HEAP8[$8>>0]|0; - HEAP8[$enc>>0] = $9; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 28|0); - $12 = HEAP16[$11>>1]|0; - $13 = $12&65535; - $14 = $13 & 2; - $15 = ($14|0)==(0); - if ($15) { - STACKTOP = sp;return; - } - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 4|0); - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 24|0); - $21 = HEAP32[$20>>2]|0; - $22 = HEAP8[$enc>>0]|0; - $23 = (_sqlite3AtoF($18,$rValue,$21,$22)|0); - $24 = ($23|0)==(0); - if ($24) { - STACKTOP = sp;return; - } - $25 = HEAP32[$0>>2]|0; - $26 = (($25) + 4|0); - $27 = HEAP32[$26>>2]|0; - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 24|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP8[$enc>>0]|0; - $32 = (_sqlite3Atoi64($27,$iValue,$30,$31)|0); - $33 = (0)==($32|0); - if ($33) { - $34 = $iValue; - $35 = $34; - $36 = HEAP32[$35>>2]|0; - $37 = (($34) + 4)|0; - $38 = $37; - $39 = HEAP32[$38>>2]|0; - $40 = HEAP32[$0>>2]|0; - $41 = (($40) + 16|0); - $42 = $41; - $43 = $42; - HEAP32[$43>>2] = $36; - $44 = (($42) + 4)|0; - $45 = $44; - HEAP32[$45>>2] = $39; - $46 = HEAP32[$0>>2]|0; - $47 = (($46) + 28|0); - $48 = HEAP16[$47>>1]|0; - $49 = $48&65535; - $50 = $49 | 4; - $51 = $50&65535; - HEAP16[$47>>1] = $51; - STACKTOP = sp;return; - } else { - $52 = +HEAPF64[$rValue>>3]; - $53 = HEAP32[$0>>2]|0; - $54 = (($53) + 8|0); - HEAPF64[$54>>3] = $52; - $55 = HEAP32[$0>>2]|0; - $56 = (($55) + 28|0); - $57 = HEAP16[$56>>1]|0; - $58 = $57&65535; - $59 = $58 | 8; - $60 = $59&65535; - HEAP16[$56>>1] = $60; - STACKTOP = sp;return; - } -} -function _sqlite3DbMallocRaw($db,$n) { - $db = $db|0; - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $8 = 0, $9 = 0, $p = 0, $pBuf = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $p = sp + 4|0; - $pBuf = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $n; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)!=(0|0); - do { - if ($4) { - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 64|0); - $7 = HEAP8[$6>>0]|0; - $8 = ($7<<24>>24)!=(0); - if ($8) { - HEAP32[$0>>2] = 0; - $76 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($76|0); - } - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 240|0); - $11 = (($10) + 2|0); - $12 = HEAP8[$11>>0]|0; - $13 = ($12<<24>>24)!=(0); - if ($13) { - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 240|0); - $17 = HEAP16[$16>>1]|0; - $18 = $17&65535; - $19 = ($14|0)>($18|0); - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 240|0); - if ($19) { - $22 = (($21) + 12|0); - $23 = (($22) + 4|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + 1)|0; - HEAP32[$23>>2] = $25; - break; - } - $26 = (($21) + 24|0); - $27 = HEAP32[$26>>2]|0; - HEAP32[$pBuf>>2] = $27; - $28 = ($27|0)==(0|0); - if ($28) { - $29 = HEAP32[$1>>2]|0; - $30 = (($29) + 240|0); - $31 = (($30) + 12|0); - $32 = (($31) + 8|0); - $33 = HEAP32[$32>>2]|0; - $34 = (($33) + 1)|0; - HEAP32[$32>>2] = $34; - break; - } - $35 = HEAP32[$pBuf>>2]|0; - $36 = HEAP32[$35>>2]|0; - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 240|0); - $39 = (($38) + 24|0); - HEAP32[$39>>2] = $36; - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 240|0); - $42 = (($41) + 4|0); - $43 = HEAP32[$42>>2]|0; - $44 = (($43) + 1)|0; - HEAP32[$42>>2] = $44; - $45 = HEAP32[$1>>2]|0; - $46 = (($45) + 240|0); - $47 = (($46) + 12|0); - $48 = HEAP32[$47>>2]|0; - $49 = (($48) + 1)|0; - HEAP32[$47>>2] = $49; - $50 = HEAP32[$1>>2]|0; - $51 = (($50) + 240|0); - $52 = (($51) + 4|0); - $53 = HEAP32[$52>>2]|0; - $54 = HEAP32[$1>>2]|0; - $55 = (($54) + 240|0); - $56 = (($55) + 8|0); - $57 = HEAP32[$56>>2]|0; - $58 = ($53|0)>($57|0); - if ($58) { - $59 = HEAP32[$1>>2]|0; - $60 = (($59) + 240|0); - $61 = (($60) + 4|0); - $62 = HEAP32[$61>>2]|0; - $63 = HEAP32[$1>>2]|0; - $64 = (($63) + 240|0); - $65 = (($64) + 8|0); - HEAP32[$65>>2] = $62; - } - $66 = HEAP32[$pBuf>>2]|0; - HEAP32[$0>>2] = $66; - $76 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($76|0); - } - } - } while(0); - $67 = HEAP32[$2>>2]|0; - $68 = (_sqlite3Malloc($67)|0); - HEAP32[$p>>2] = $68; - $69 = HEAP32[$p>>2]|0; - $70 = ($69|0)!=(0|0); - if (!($70)) { - $71 = HEAP32[$1>>2]|0; - $72 = ($71|0)!=(0|0); - if ($72) { - $73 = HEAP32[$1>>2]|0; - $74 = (($73) + 64|0); - HEAP8[$74>>0] = 1; - } - } - $75 = HEAP32[$p>>2]|0; - HEAP32[$0>>2] = $75; - $76 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($76|0); -} -function _sqlite3LocateTable($pParse,$isView,$zName,$zDbase) { - $pParse = $pParse|0; - $isView = $isView|0; - $zName = $zName|0; - $zDbase = $zDbase|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $vararg_buffer3 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr6 = 0, $zMsg = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer3 = sp; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $4 = sp + 20|0; - $p = sp + 16|0; - $zMsg = sp + 12|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $isView; - HEAP32[$3>>2] = $zName; - HEAP32[$4>>2] = $zDbase; - $5 = HEAP32[$1>>2]|0; - $6 = (_sqlite3ReadSchema($5)|0); - $7 = (0)!=($6|0); - if ($7) { - HEAP32[$0>>2] = 0; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); - } - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$3>>2]|0; - $11 = HEAP32[$4>>2]|0; - $12 = (_sqlite3FindTable($9,$10,$11)|0); - HEAP32[$p>>2] = $12; - $13 = HEAP32[$p>>2]|0; - $14 = ($13|0)==(0|0); - if ($14) { - $15 = HEAP32[$2>>2]|0; - $16 = ($15|0)!=(0); - $17 = $16 ? 31008 : 31024; - HEAP32[$zMsg>>2] = $17; - $18 = HEAP32[$4>>2]|0; - $19 = ($18|0)!=(0|0); - $20 = HEAP32[$1>>2]|0; - $21 = HEAP32[$zMsg>>2]|0; - if ($19) { - $22 = HEAP32[$4>>2]|0; - $23 = HEAP32[$3>>2]|0; - HEAP32[$vararg_buffer3>>2] = $21; - $vararg_ptr1 = (($vararg_buffer3) + 4|0); - HEAP32[$vararg_ptr1>>2] = $22; - $vararg_ptr2 = (($vararg_buffer3) + 8|0); - HEAP32[$vararg_ptr2>>2] = $23; - _sqlite3ErrorMsg($20,17168,$vararg_buffer3); - } else { - $24 = HEAP32[$3>>2]|0; - HEAP32[$vararg_buffer3>>2] = $21; - $vararg_ptr6 = (($vararg_buffer3) + 4|0); - HEAP32[$vararg_ptr6>>2] = $24; - _sqlite3ErrorMsg($20,17184,$vararg_buffer3); - } - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 17|0); - HEAP8[$26>>0] = 1; - } - $27 = HEAP32[$p>>2]|0; - HEAP32[$0>>2] = $27; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); -} -function _sqlite3ErrorMsg($pParse,$zFormat,$varargs) { - $pParse = $pParse|0; - $zFormat = $zFormat|0; - $varargs = $varargs|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ap = 0, $db = 0, $zMsg = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $zMsg = sp + 24|0; - $ap = sp + 8|0; - $db = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $zFormat; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - HEAP32[$ap>>2] = $varargs; - $4 = HEAP32[$db>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = (_sqlite3VMPrintf($4,$5,$ap)|0); - HEAP32[$zMsg>>2] = $6; - $7 = HEAP32[$db>>2]|0; - $8 = (($7) + 67|0); - $9 = HEAP8[$8>>0]|0; - $10 = ($9<<24>>24)!=(0); - if ($10) { - $11 = HEAP32[$db>>2]|0; - $12 = HEAP32[$zMsg>>2]|0; - _sqlite3DbFree($11,$12); - STACKTOP = sp;return; - } else { - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 64|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + 1)|0; - HEAP32[$14>>2] = $16; - $17 = HEAP32[$db>>2]|0; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 4|0); - $20 = HEAP32[$19>>2]|0; - _sqlite3DbFree($17,$20); - $21 = HEAP32[$zMsg>>2]|0; - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 4|0); - HEAP32[$23>>2] = $21; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 12|0); - HEAP32[$25>>2] = 1; - STACKTOP = sp;return; - } -} -function _sqlite3MPrintf($db,$zFormat,$varargs) { - $db = $db|0; - $zFormat = $zFormat|0; - $varargs = $varargs|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $ap = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $ap = sp + 8|0; - $z = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $zFormat; - HEAP32[$ap>>2] = $varargs; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_sqlite3VMPrintf($2,$3,$ap)|0); - HEAP32[$z>>2] = $4; - $5 = HEAP32[$z>>2]|0; - STACKTOP = sp;return ($5|0); -} -function _sqlite3VdbeCreate($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $db = sp + 4|0; - $p = sp; - HEAP32[$1>>2] = $pParse; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$db>>2]|0; - $5 = (_sqlite3DbMallocZero($4,208)|0); - HEAP32[$p>>2] = $5; - $6 = HEAP32[$p>>2]|0; - $7 = ($6|0)==(0|0); - if ($7) { - HEAP32[$0>>2] = 0; - $35 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($35|0); - } - $8 = HEAP32[$db>>2]|0; - $9 = HEAP32[$p>>2]|0; - HEAP32[$9>>2] = $8; - $10 = HEAP32[$db>>2]|0; - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)!=(0|0); - if ($13) { - $14 = HEAP32[$p>>2]|0; - $15 = HEAP32[$db>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + 48|0); - HEAP32[$18>>2] = $14; - } - $19 = HEAP32[$db>>2]|0; - $20 = (($19) + 4|0); - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$p>>2]|0; - $23 = (($22) + 52|0); - HEAP32[$23>>2] = $21; - $24 = HEAP32[$p>>2]|0; - $25 = (($24) + 48|0); - HEAP32[$25>>2] = 0; - $26 = HEAP32[$p>>2]|0; - $27 = HEAP32[$db>>2]|0; - $28 = (($27) + 4|0); - HEAP32[$28>>2] = $26; - $29 = HEAP32[$p>>2]|0; - $30 = (($29) + 40|0); - HEAP32[$30>>2] = 649915045; - $31 = HEAP32[$1>>2]|0; - $32 = HEAP32[$p>>2]|0; - $33 = (($32) + 24|0); - HEAP32[$33>>2] = $31; - $34 = HEAP32[$p>>2]|0; - HEAP32[$0>>2] = $34; - $35 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($35|0); -} -function _sqlite3SchemaToIndex($db,$pSchema) { - $db = $db|0; - $pSchema = $pSchema|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pSchema; - HEAP32[$i>>2] = -1000000; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - $20 = HEAP32[$i>>2]|0; - STACKTOP = sp;return ($20|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $4 = HEAP32[$i>>2]|0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 20|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($4|0)<($7|0); - if (!($8)) { - label = 6; - break; - } - $9 = HEAP32[$i>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 16|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + ($9<<4)|0); - $14 = (($13) + 12|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = ($15|0)==($16|0); - if ($17) { - label = 6; - break; - } - $18 = HEAP32[$i>>2]|0; - $19 = (($18) + 1)|0; - HEAP32[$i>>2] = $19; - } - if ((label|0) == 6) { - $20 = HEAP32[$i>>2]|0; - STACKTOP = sp;return ($20|0); - } - return 0|0; -} -function _sqlite3VdbeAddOp4Int($p,$op,$p1,$p2,$p3,$p4) { - $p = $p|0; - $op = $op|0; - $p1 = $p1|0; - $p2 = $p2|0; - $p3 = $p3|0; - $p4 = $p4|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $addr = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $5 = sp + 4|0; - $addr = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $op; - HEAP32[$2>>2] = $p1; - HEAP32[$3>>2] = $p2; - HEAP32[$4>>2] = $p3; - HEAP32[$5>>2] = $p4; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$3>>2]|0; - $10 = HEAP32[$4>>2]|0; - $11 = (_sqlite3VdbeAddOp3($6,$7,$8,$9,$10)|0); - HEAP32[$addr>>2] = $11; - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$addr>>2]|0; - $14 = HEAP32[$5>>2]|0; - $15 = $14; - _sqlite3VdbeChangeP4($12,$13,$15,-14); - $16 = HEAP32[$addr>>2]|0; - STACKTOP = sp;return ($16|0); -} -function _sqlite3VdbeChangeP5($p,$val) { - $p = $p|0; - $val = $val|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - $1 = sp + 4|0; - HEAP32[$0>>2] = $p; - HEAP8[$1>>0] = $val; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - STACKTOP = sp;return; - } - $6 = HEAP8[$1>>0]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 32|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) - 1)|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 4|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + (($10*20)|0)|0); - $15 = (($14) + 3|0); - HEAP8[$15>>0] = $6; - STACKTOP = sp;return; -} -function _sqlite3VdbeAddOpList($p,$nOp,$aOp,$iLineno) { - $p = $p|0; - $nOp = $nOp|0; - $aOp = $aOp|0; - $iLineno = $iLineno|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $9 = 0, $addr = 0, $i = 0, $p2 = 0, $pIn = 0, $pOut = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $4 = sp + 20|0; - $addr = sp + 16|0; - $i = sp + 12|0; - $pIn = sp + 8|0; - $p2 = sp + 4|0; - $pOut = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $nOp; - HEAP32[$3>>2] = $aOp; - HEAP32[$4>>2] = $iLineno; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 32|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = (($7) + ($8))|0; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 24|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + 84|0); - $14 = HEAP32[$13>>2]|0; - $15 = ($9|0)>($14|0); - if ($15) { - $16 = HEAP32[$1>>2]|0; - $17 = (_growOpArray($16)|0); - $18 = ($17|0)!=(0); - if ($18) { - HEAP32[$0>>2] = 0; - $81 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($81|0); - } - } - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 32|0); - $21 = HEAP32[$20>>2]|0; - HEAP32[$addr>>2] = $21; - $22 = HEAP32[$2>>2]|0; - $23 = ($22|0)>(0); - if ($23) { - $24 = HEAP32[$3>>2]|0; - HEAP32[$pIn>>2] = $24; - HEAP32[$i>>2] = 0; - while(1) { - $25 = HEAP32[$i>>2]|0; - $26 = HEAP32[$2>>2]|0; - $27 = ($25|0)<($26|0); - if (!($27)) { - break; - } - $28 = HEAP32[$pIn>>2]|0; - $29 = (($28) + 2|0); - $30 = HEAP8[$29>>0]|0; - $31 = $30 << 24 >> 24; - HEAP32[$p2>>2] = $31; - $32 = HEAP32[$i>>2]|0; - $33 = HEAP32[$addr>>2]|0; - $34 = (($32) + ($33))|0; - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 4|0); - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + (($34*20)|0)|0); - HEAP32[$pOut>>2] = $38; - $39 = HEAP32[$pIn>>2]|0; - $40 = HEAP8[$39>>0]|0; - $41 = HEAP32[$pOut>>2]|0; - HEAP8[$41>>0] = $40; - $42 = HEAP32[$pIn>>2]|0; - $43 = (($42) + 1|0); - $44 = HEAP8[$43>>0]|0; - $45 = $44 << 24 >> 24; - $46 = HEAP32[$pOut>>2]|0; - $47 = (($46) + 4|0); - HEAP32[$47>>2] = $45; - $48 = HEAP32[$p2>>2]|0; - $49 = ($48|0)<(0); - if ($49) { - $50 = HEAP32[$addr>>2]|0; - $51 = HEAP32[$p2>>2]|0; - $52 = (-1 - ($51))|0; - $53 = (($50) + ($52))|0; - $54 = HEAP32[$pOut>>2]|0; - $55 = (($54) + 8|0); - HEAP32[$55>>2] = $53; - } else { - $56 = HEAP32[$p2>>2]|0; - $57 = HEAP32[$pOut>>2]|0; - $58 = (($57) + 8|0); - HEAP32[$58>>2] = $56; - } - $59 = HEAP32[$pIn>>2]|0; - $60 = (($59) + 3|0); - $61 = HEAP8[$60>>0]|0; - $62 = $61 << 24 >> 24; - $63 = HEAP32[$pOut>>2]|0; - $64 = (($63) + 12|0); - HEAP32[$64>>2] = $62; - $65 = HEAP32[$pOut>>2]|0; - $66 = (($65) + 1|0); - HEAP8[$66>>0] = 0; - $67 = HEAP32[$pOut>>2]|0; - $68 = (($67) + 16|0); - HEAP32[$68>>2] = 0; - $69 = HEAP32[$pOut>>2]|0; - $70 = (($69) + 3|0); - HEAP8[$70>>0] = 0; - $71 = HEAP32[$i>>2]|0; - $72 = (($71) + 1)|0; - HEAP32[$i>>2] = $72; - $73 = HEAP32[$pIn>>2]|0; - $74 = (($73) + 4|0); - HEAP32[$pIn>>2] = $74; - } - $75 = HEAP32[$2>>2]|0; - $76 = HEAP32[$1>>2]|0; - $77 = (($76) + 32|0); - $78 = HEAP32[$77>>2]|0; - $79 = (($78) + ($75))|0; - HEAP32[$77>>2] = $79; - } - $80 = HEAP32[$addr>>2]|0; - HEAP32[$0>>2] = $80; - $81 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($81|0); -} -function _sqlite3VdbeUsesBtree($p,$i) { - $p = $p|0; - $i = $i|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $i; - $2 = HEAP32[$1>>2]|0; - $3 = 1 << $2; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 96|0); - $6 = HEAP32[$5>>2]|0; - $7 = $6 | $3; - HEAP32[$5>>2] = $7; - STACKTOP = sp;return; -} -function _sqlite3VdbeChangeP1($p,$addr,$val) { - $p = $p|0; - $addr = $addr|0; - $val = $val|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $addr; - HEAP32[$2>>2] = $val; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 32|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = ($5>>>0)>($6>>>0); - if (!($7)) { - STACKTOP = sp;return; - } - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + (($9*20)|0)|0); - $14 = (($13) + 4|0); - HEAP32[$14>>2] = $8; - STACKTOP = sp;return; -} -function _sqlite3VdbeChangeP2($p,$addr,$val) { - $p = $p|0; - $addr = $addr|0; - $val = $val|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $addr; - HEAP32[$2>>2] = $val; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 32|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = ($5>>>0)>($6>>>0); - if (!($7)) { - STACKTOP = sp;return; - } - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + (($9*20)|0)|0); - $14 = (($13) + 8|0); - HEAP32[$14>>2] = $8; - STACKTOP = sp;return; -} -function _sqlite3VdbeChangeP3($p,$addr,$val) { - $p = $p|0; - $addr = $addr|0; - $val = $val|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $addr; - HEAP32[$2>>2] = $val; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 32|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = ($5>>>0)>($6>>>0); - if (!($7)) { - STACKTOP = sp;return; - } - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + (($9*20)|0)|0); - $14 = (($13) + 12|0); - HEAP32[$14>>2] = $8; - STACKTOP = sp;return; -} -function _sqlite3VdbeChangeP4($p,$addr,$zP4,$n) { - $p = $p|0; - $addr = $addr|0; - $zP4 = $zP4|0; - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $db = 0, $pOp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $pOp = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $addr; - HEAP32[$2>>2] = $zP4; - HEAP32[$3>>2] = $n; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)==(0|0); - if (!($9)) { - $10 = HEAP32[$db>>2]|0; - $11 = (($10) + 64|0); - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = ($13|0)!=(0); - if (!($14)) { - $20 = HEAP32[$1>>2]|0; - $21 = ($20|0)<(0); - if ($21) { - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 32|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) - 1)|0; - HEAP32[$1>>2] = $25; - } - $26 = HEAP32[$1>>2]|0; - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 4|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + (($26*20)|0)|0); - HEAP32[$pOp>>2] = $30; - $31 = HEAP32[$db>>2]|0; - $32 = HEAP32[$pOp>>2]|0; - $33 = (($32) + 1|0); - $34 = HEAP8[$33>>0]|0; - $35 = $34 << 24 >> 24; - $36 = HEAP32[$pOp>>2]|0; - $37 = (($36) + 16|0); - $38 = HEAP32[$37>>2]|0; - _freeP4($31,$35,$38); - $39 = HEAP32[$pOp>>2]|0; - $40 = (($39) + 16|0); - HEAP32[$40>>2] = 0; - $41 = HEAP32[$3>>2]|0; - $42 = ($41|0)==(-14); - $43 = HEAP32[$2>>2]|0; - if ($42) { - $44 = $43; - $45 = HEAP32[$pOp>>2]|0; - $46 = (($45) + 16|0); - HEAP32[$46>>2] = $44; - $47 = HEAP32[$pOp>>2]|0; - $48 = (($47) + 1|0); - HEAP8[$48>>0] = -14; - STACKTOP = sp;return; - } - $49 = ($43|0)==(0|0); - if ($49) { - $50 = HEAP32[$pOp>>2]|0; - $51 = (($50) + 16|0); - HEAP32[$51>>2] = 0; - $52 = HEAP32[$pOp>>2]|0; - $53 = (($52) + 1|0); - HEAP8[$53>>0] = 0; - STACKTOP = sp;return; - } - $54 = HEAP32[$3>>2]|0; - $55 = ($54|0)==(-6); - if ($55) { - $56 = HEAP32[$2>>2]|0; - $57 = HEAP32[$pOp>>2]|0; - $58 = (($57) + 16|0); - HEAP32[$58>>2] = $56; - $59 = HEAP32[$pOp>>2]|0; - $60 = (($59) + 1|0); - HEAP8[$60>>0] = -6; - STACKTOP = sp;return; - } - $61 = HEAP32[$3>>2]|0; - $62 = ($61|0)==(-10); - if ($62) { - $63 = HEAP32[$2>>2]|0; - $64 = HEAP32[$pOp>>2]|0; - $65 = (($64) + 16|0); - HEAP32[$65>>2] = $63; - $66 = HEAP32[$pOp>>2]|0; - $67 = (($66) + 1|0); - HEAP8[$67>>0] = -10; - $68 = HEAP32[$2>>2]|0; - _sqlite3VtabLock($68); - STACKTOP = sp;return; - } - $69 = HEAP32[$3>>2]|0; - $70 = ($69|0)<(0); - if ($70) { - $71 = HEAP32[$2>>2]|0; - $72 = HEAP32[$pOp>>2]|0; - $73 = (($72) + 16|0); - HEAP32[$73>>2] = $71; - $74 = HEAP32[$3>>2]|0; - $75 = $74&255; - $76 = HEAP32[$pOp>>2]|0; - $77 = (($76) + 1|0); - HEAP8[$77>>0] = $75; - STACKTOP = sp;return; - } - $78 = HEAP32[$3>>2]|0; - $79 = ($78|0)==(0); - if ($79) { - $80 = HEAP32[$2>>2]|0; - $81 = (_sqlite3Strlen30($80)|0); - HEAP32[$3>>2] = $81; - } - $82 = HEAP32[$0>>2]|0; - $83 = HEAP32[$82>>2]|0; - $84 = HEAP32[$2>>2]|0; - $85 = HEAP32[$3>>2]|0; - $86 = (_sqlite3DbStrNDup($83,$84,$85)|0); - $87 = HEAP32[$pOp>>2]|0; - $88 = (($87) + 16|0); - HEAP32[$88>>2] = $86; - $89 = HEAP32[$pOp>>2]|0; - $90 = (($89) + 1|0); - HEAP8[$90>>0] = -1; - STACKTOP = sp;return; - } - } - $15 = HEAP32[$3>>2]|0; - $16 = ($15|0)!=(-10); - if (!($16)) { - STACKTOP = sp;return; - } - $17 = HEAP32[$db>>2]|0; - $18 = HEAP32[$3>>2]|0; - $19 = HEAP32[$2>>2]|0; - _freeP4($17,$18,$19); - STACKTOP = sp;return; -} -function _sqlite3VdbeChangeToNoop($p,$addr) { - $p = $p|0; - $addr = $addr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $pOp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $pOp = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $addr; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - STACKTOP = sp;return; - } - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + (($6*20)|0)|0); - HEAP32[$pOp>>2] = $10; - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$11>>2]|0; - HEAP32[$db>>2] = $12; - $13 = HEAP32[$db>>2]|0; - $14 = HEAP32[$pOp>>2]|0; - $15 = (($14) + 1|0); - $16 = HEAP8[$15>>0]|0; - $17 = $16 << 24 >> 24; - $18 = HEAP32[$pOp>>2]|0; - $19 = (($18) + 16|0); - $20 = HEAP32[$19>>2]|0; - _freeP4($13,$17,$20); - $21 = HEAP32[$pOp>>2]|0; - ;HEAP32[$21+0>>2]=0|0;HEAP32[$21+4>>2]=0|0;HEAP32[$21+8>>2]=0|0;HEAP32[$21+12>>2]=0|0;HEAP32[$21+16>>2]=0|0; - $22 = HEAP32[$pOp>>2]|0; - HEAP8[$22>>0] = -100; - $23 = HEAP32[$1>>2]|0; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 32|0); - $26 = HEAP32[$25>>2]|0; - $27 = (($26) - 1)|0; - $28 = ($23|0)==($27|0); - if (!($28)) { - STACKTOP = sp;return; - } - $29 = HEAP32[$0>>2]|0; - $30 = (($29) + 32|0); - $31 = HEAP32[$30>>2]|0; - $32 = (($31) + -1)|0; - HEAP32[$30>>2] = $32; - STACKTOP = sp;return; -} -function _sqlite3VdbeMakeReady($p,$pParse) { - $p = $p|0; - $pParse = $pParse|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; - var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; - var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; - var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; - var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; - var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; - var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; - var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; - var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; - var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; - var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; - var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; - var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $n = 0, $nArg = 0; - var $nByte = 0, $nCursor = 0, $nMem = 0, $nOnce = 0, $nVar = 0, $zCsr = 0, $zEnd = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $db = sp + 36|0; - $nVar = sp + 32|0; - $nMem = sp + 28|0; - $nCursor = sp + 24|0; - $nArg = sp + 20|0; - $nOnce = sp + 16|0; - $n = sp + 12|0; - $zCsr = sp + 8|0; - $zEnd = sp + 4|0; - $nByte = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $pParse; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 440|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$nVar>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 72|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$nMem>>2] = $9; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 68|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$nCursor>>2] = $12; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 392|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$nArg>>2] = $15; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 80|0); - $18 = HEAP32[$17>>2]|0; - HEAP32[$nOnce>>2] = $18; - $19 = HEAP32[$nOnce>>2]|0; - $20 = ($19|0)==(0); - $$ = $20 ? 1 : $18; - HEAP32[$nOnce>>2] = $$; - $21 = HEAP32[$nCursor>>2]|0; - $22 = HEAP32[$nMem>>2]|0; - $23 = (($22) + ($21))|0; - HEAP32[$nMem>>2] = $23; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 32|0); - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 4|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + (($26*20)|0)|0); - HEAP32[$zCsr>>2] = $30; - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 84|0); - $33 = HEAP32[$32>>2]|0; - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 4|0); - $36 = HEAP32[$35>>2]|0; - $37 = (($36) + (($33*20)|0)|0); - HEAP32[$zEnd>>2] = $37; - $38 = HEAP32[$0>>2]|0; - _resolveP2Values($38,$nArg); - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 20|0); - $41 = HEAP8[$40>>0]|0; - $42 = $41&255; - $43 = ($42|0)!=(0); - if ($43) { - $44 = HEAP32[$1>>2]|0; - $45 = (($44) + 21|0); - $46 = HEAP8[$45>>0]|0; - $47 = $46&255; - $48 = ($47|0)!=(0); - $50 = $48; - } else { - $50 = 0; - } - $49 = $50&1; - $51 = $49&255; - $52 = $51&255; - $53 = HEAP32[$0>>2]|0; - $54 = (($53) + 88|0); - $55 = $52&65535; - $56 = HEAP16[$54>>1]|0; - $57 = $55 & 1; - $58 = ($57 << 7)&65535; - $59 = $56 & -129; - $60 = $59 | $58; - HEAP16[$54>>1] = $60; - $61 = HEAP32[$1>>2]|0; - $62 = (($61) + 450|0); - $63 = HEAP8[$62>>0]|0; - $64 = $63&255; - $65 = ($64|0)!=(0); - if ($65) { - $66 = HEAP32[$nMem>>2]|0; - $67 = ($66|0)<(10); - if ($67) { - HEAP32[$nMem>>2] = 10; - } - } - $68 = HEAP32[$zCsr>>2]|0; - $69 = HEAP32[$zEnd>>2]|0; - $70 = HEAP32[$zCsr>>2]|0; - $71 = $69; - $72 = $70; - $73 = (($71) - ($72))|0; - _memset(($68|0),0,($73|0))|0; - $74 = HEAP32[$zCsr>>2]|0; - $75 = $74; - $76 = (($75) - 0)|0; - $77 = $76 & 7; - $78 = HEAP32[$zCsr>>2]|0; - $79 = (($78) + ($77)|0); - HEAP32[$zCsr>>2] = $79; - $80 = HEAP32[$0>>2]|0; - $81 = (($80) + 88|0); - $82 = HEAP16[$81>>1]|0; - $83 = $82 & -33; - HEAP16[$81>>1] = $83; - while(1) { - HEAP32[$nByte>>2] = 0; - $84 = HEAP32[$0>>2]|0; - $85 = (($84) + 8|0); - $86 = HEAP32[$85>>2]|0; - $87 = HEAP32[$nMem>>2]|0; - $88 = ($87*40)|0; - $89 = HEAP32[$zEnd>>2]|0; - $90 = (_allocSpace($86,$88,$zCsr,$89,$nByte)|0); - $91 = HEAP32[$0>>2]|0; - $92 = (($91) + 8|0); - HEAP32[$92>>2] = $90; - $93 = HEAP32[$0>>2]|0; - $94 = (($93) + 60|0); - $95 = HEAP32[$94>>2]|0; - $96 = HEAP32[$nVar>>2]|0; - $97 = ($96*40)|0; - $98 = HEAP32[$zEnd>>2]|0; - $99 = (_allocSpace($95,$97,$zCsr,$98,$nByte)|0); - $100 = HEAP32[$0>>2]|0; - $101 = (($100) + 60|0); - HEAP32[$101>>2] = $99; - $102 = HEAP32[$0>>2]|0; - $103 = (($102) + 12|0); - $104 = HEAP32[$103>>2]|0; - $105 = HEAP32[$nArg>>2]|0; - $106 = $105<<2; - $107 = HEAP32[$zEnd>>2]|0; - $108 = (_allocSpace($104,$106,$zCsr,$107,$nByte)|0); - $109 = HEAP32[$0>>2]|0; - $110 = (($109) + 12|0); - HEAP32[$110>>2] = $108; - $111 = HEAP32[$0>>2]|0; - $112 = (($111) + 64|0); - $113 = HEAP32[$112>>2]|0; - $114 = HEAP32[$nVar>>2]|0; - $115 = $114<<2; - $116 = HEAP32[$zEnd>>2]|0; - $117 = (_allocSpace($113,$115,$zCsr,$116,$nByte)|0); - $118 = HEAP32[$0>>2]|0; - $119 = (($118) + 64|0); - HEAP32[$119>>2] = $117; - $120 = HEAP32[$0>>2]|0; - $121 = (($120) + 56|0); - $122 = HEAP32[$121>>2]|0; - $123 = HEAP32[$nCursor>>2]|0; - $124 = $123<<2; - $125 = HEAP32[$zEnd>>2]|0; - $126 = (_allocSpace($122,$124,$zCsr,$125,$nByte)|0); - $127 = HEAP32[$0>>2]|0; - $128 = (($127) + 56|0); - HEAP32[$128>>2] = $126; - $129 = HEAP32[$0>>2]|0; - $130 = (($129) + 200|0); - $131 = HEAP32[$130>>2]|0; - $132 = HEAP32[$nOnce>>2]|0; - $133 = HEAP32[$zEnd>>2]|0; - $134 = (_allocSpace($131,$132,$zCsr,$133,$nByte)|0); - $135 = HEAP32[$0>>2]|0; - $136 = (($135) + 200|0); - HEAP32[$136>>2] = $134; - $137 = HEAP32[$nByte>>2]|0; - $138 = ($137|0)!=(0); - if ($138) { - $139 = HEAP32[$db>>2]|0; - $140 = HEAP32[$nByte>>2]|0; - $141 = (_sqlite3DbMallocZero($139,$140)|0); - $142 = HEAP32[$0>>2]|0; - $143 = (($142) + 172|0); - HEAP32[$143>>2] = $141; - } - $144 = HEAP32[$0>>2]|0; - $145 = (($144) + 172|0); - $146 = HEAP32[$145>>2]|0; - HEAP32[$zCsr>>2] = $146; - $147 = HEAP32[$nByte>>2]|0; - $148 = HEAP32[$zCsr>>2]|0; - $149 = (($148) + ($147)|0); - HEAP32[$zEnd>>2] = $149; - $150 = HEAP32[$nByte>>2]|0; - $151 = ($150|0)!=(0); - if (!($151)) { - break; - } - $152 = HEAP32[$db>>2]|0; - $153 = (($152) + 64|0); - $154 = HEAP8[$153>>0]|0; - $155 = ($154<<24>>24)!=(0); - $156 = $155 ^ 1; - if (!($156)) { - break; - } - } - $157 = HEAP32[$nCursor>>2]|0; - $158 = HEAP32[$0>>2]|0; - $159 = (($158) + 36|0); - HEAP32[$159>>2] = $157; - $160 = HEAP32[$nOnce>>2]|0; - $161 = HEAP32[$0>>2]|0; - $162 = (($161) + 196|0); - HEAP32[$162>>2] = $160; - $163 = HEAP32[$0>>2]|0; - $164 = (($163) + 60|0); - $165 = HEAP32[$164>>2]|0; - $166 = ($165|0)!=(0|0); - L15: do { - if ($166) { - $167 = HEAP32[$nVar>>2]|0; - $168 = $167&65535; - $169 = HEAP32[$0>>2]|0; - $170 = (($169) + 68|0); - HEAP16[$170>>1] = $168; - HEAP32[$n>>2] = 0; - while(1) { - $171 = HEAP32[$n>>2]|0; - $172 = HEAP32[$nVar>>2]|0; - $173 = ($171|0)<($172|0); - if (!($173)) { - break L15; - } - $174 = HEAP32[$n>>2]|0; - $175 = HEAP32[$0>>2]|0; - $176 = (($175) + 60|0); - $177 = HEAP32[$176>>2]|0; - $178 = (($177) + (($174*40)|0)|0); - $179 = (($178) + 28|0); - HEAP16[$179>>1] = 1; - $180 = HEAP32[$db>>2]|0; - $181 = HEAP32[$n>>2]|0; - $182 = HEAP32[$0>>2]|0; - $183 = (($182) + 60|0); - $184 = HEAP32[$183>>2]|0; - $185 = (($184) + (($181*40)|0)|0); - HEAP32[$185>>2] = $180; - $186 = HEAP32[$n>>2]|0; - $187 = (($186) + 1)|0; - HEAP32[$n>>2] = $187; - } - } - } while(0); - $188 = HEAP32[$0>>2]|0; - $189 = (($188) + 64|0); - $190 = HEAP32[$189>>2]|0; - $191 = ($190|0)!=(0|0); - if ($191) { - $192 = HEAP32[$1>>2]|0; - $193 = (($192) + 444|0); - $194 = HEAP32[$193>>2]|0; - $195 = $194&65535; - $196 = HEAP32[$0>>2]|0; - $197 = (($196) + 70|0); - HEAP16[$197>>1] = $195; - $198 = HEAP32[$0>>2]|0; - $199 = (($198) + 64|0); - $200 = HEAP32[$199>>2]|0; - $201 = HEAP32[$1>>2]|0; - $202 = (($201) + 472|0); - $203 = HEAP32[$202>>2]|0; - $204 = HEAP32[$0>>2]|0; - $205 = (($204) + 70|0); - $206 = HEAP16[$205>>1]|0; - $207 = $206 << 16 >> 16; - $208 = $207<<2; - _memcpy(($200|0),($203|0),($208|0))|0; - $209 = HEAP32[$1>>2]|0; - $210 = (($209) + 472|0); - $211 = HEAP32[$210>>2]|0; - $212 = HEAP32[$1>>2]|0; - $213 = (($212) + 444|0); - $214 = HEAP32[$213>>2]|0; - $215 = $214<<2; - _memset(($211|0),0,($215|0))|0; - } - $216 = HEAP32[$0>>2]|0; - $217 = (($216) + 8|0); - $218 = HEAP32[$217>>2]|0; - $219 = ($218|0)!=(0|0); - if (!($219)) { - $244 = HEAP32[$1>>2]|0; - $245 = (($244) + 450|0); - $246 = HEAP8[$245>>0]|0; - $247 = $246&255; - $248 = HEAP32[$0>>2]|0; - $249 = (($248) + 88|0); - $250 = $247&65535; - $251 = HEAP16[$249>>1]|0; - $252 = $250 & 3; - $253 = $251 & -4; - $254 = $253 | $252; - HEAP16[$249>>1] = $254; - $255 = HEAP32[$0>>2]|0; - _sqlite3VdbeRewind($255); - STACKTOP = sp;return; - } - $220 = HEAP32[$0>>2]|0; - $221 = (($220) + 8|0); - $222 = HEAP32[$221>>2]|0; - $223 = (($222) + -40|0); - HEAP32[$221>>2] = $223; - $224 = HEAP32[$nMem>>2]|0; - $225 = HEAP32[$0>>2]|0; - $226 = (($225) + 28|0); - HEAP32[$226>>2] = $224; - HEAP32[$n>>2] = 1; - while(1) { - $227 = HEAP32[$n>>2]|0; - $228 = HEAP32[$nMem>>2]|0; - $229 = ($227|0)<=($228|0); - if (!($229)) { - break; - } - $230 = HEAP32[$n>>2]|0; - $231 = HEAP32[$0>>2]|0; - $232 = (($231) + 8|0); - $233 = HEAP32[$232>>2]|0; - $234 = (($233) + (($230*40)|0)|0); - $235 = (($234) + 28|0); - HEAP16[$235>>1] = 128; - $236 = HEAP32[$db>>2]|0; - $237 = HEAP32[$n>>2]|0; - $238 = HEAP32[$0>>2]|0; - $239 = (($238) + 8|0); - $240 = HEAP32[$239>>2]|0; - $241 = (($240) + (($237*40)|0)|0); - HEAP32[$241>>2] = $236; - $242 = HEAP32[$n>>2]|0; - $243 = (($242) + 1)|0; - HEAP32[$n>>2] = $243; - } - $244 = HEAP32[$1>>2]|0; - $245 = (($244) + 450|0); - $246 = HEAP8[$245>>0]|0; - $247 = $246&255; - $248 = HEAP32[$0>>2]|0; - $249 = (($248) + 88|0); - $250 = $247&65535; - $251 = HEAP16[$249>>1]|0; - $252 = $250 & 3; - $253 = $251 & -4; - $254 = $253 | $252; - HEAP16[$249>>1] = $254; - $255 = HEAP32[$0>>2]|0; - _sqlite3VdbeRewind($255); - STACKTOP = sp;return; -} -function _sqlite3ParserReset($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if (!($2)) { - STACKTOP = sp;return; - } - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - $5 = HEAP32[$db>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 112|0); - $8 = HEAP32[$7>>2]|0; - _sqlite3DbFree($5,$8); - $9 = HEAP32[$db>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 316|0); - $12 = HEAP32[$11>>2]|0; - _sqlite3ExprListDelete($9,$12); - STACKTOP = sp;return; -} -function _sqlite3BtreeData($pCur,$offset,$amt,$pBuf) { - $pCur = $pCur|0; - $offset = $offset|0; - $amt = $amt|0; - $pBuf = $pBuf|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pCur; - HEAP32[$2>>2] = $offset; - HEAP32[$3>>2] = $amt; - HEAP32[$4>>2] = $pBuf; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 81|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = ($8|0)==(0); - if ($9) { - HEAP32[$0>>2] = 4; - $26 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($26|0); - } - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 81|0); - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = ($13|0)>=(3); - if ($14) { - $15 = HEAP32[$1>>2]|0; - $16 = (_btreeRestoreCursorPosition($15)|0); - $17 = $16; - } else { - $17 = 0; - } - HEAP32[$rc>>2] = $17; - $18 = HEAP32[$rc>>2]|0; - $19 = ($18|0)==(0); - if ($19) { - $20 = HEAP32[$1>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = HEAP32[$3>>2]|0; - $23 = HEAP32[$4>>2]|0; - $24 = (_accessPayload($20,$21,$22,$23,0)|0); - HEAP32[$rc>>2] = $24; - } - $25 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $25; - $26 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($26|0); -} -function _sqlite3ExpirePreparedStatements($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$p>>2] = $3; - while(1) { - $4 = HEAP32[$p>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - break; - } - $6 = HEAP32[$p>>2]|0; - $7 = (($6) + 88|0); - $8 = HEAP16[$7>>1]|0; - $9 = $8 & -33; - $10 = $9 | 32; - HEAP16[$7>>1] = $10; - $11 = HEAP32[$p>>2]|0; - $12 = (($11) + 52|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$p>>2] = $13; - } - STACKTOP = sp;return; -} -function _sqlite3_strglob($zGlobPattern,$zString) { - $zGlobPattern = $zGlobPattern|0; - $zString = $zString|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $zGlobPattern; - HEAP32[$1>>2] = $zString; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_patternCompare($2,$3,1464,0)|0); - $5 = ($4|0)==(0); - $6 = $5&1; - STACKTOP = sp;return ($6|0); -} -function _patternCompare($zPattern,$zString,$pInfo,$esc) { - $zPattern = $zPattern|0; - $zString = $zString|0; - $pInfo = $pInfo|0; - $esc = $esc|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; - var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; - var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; - var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; - var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $c2 = 0, $invert = 0, $matchAll = 0, $matchOne = 0, $matchSet = 0, $noCase = 0, $prevEscape = 0; - var $prior_c = 0, $seen = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $4 = sp + 24|0; - $c = sp + 20|0; - $c2 = sp + 16|0; - $invert = sp + 12|0; - $seen = sp + 8|0; - $matchOne = sp + 47|0; - $matchAll = sp + 46|0; - $matchSet = sp + 45|0; - $noCase = sp + 44|0; - $prevEscape = sp + 4|0; - $prior_c = sp; - HEAP32[$1>>2] = $zPattern; - HEAP32[$2>>2] = $zString; - HEAP32[$3>>2] = $pInfo; - HEAP32[$4>>2] = $esc; - $5 = HEAP32[$3>>2]|0; - $6 = (($5) + 1|0); - $7 = HEAP8[$6>>0]|0; - HEAP8[$matchOne>>0] = $7; - $8 = HEAP32[$3>>2]|0; - $9 = HEAP8[$8>>0]|0; - HEAP8[$matchAll>>0] = $9; - $10 = HEAP32[$3>>2]|0; - $11 = (($10) + 2|0); - $12 = HEAP8[$11>>0]|0; - HEAP8[$matchSet>>0] = $12; - $13 = HEAP32[$3>>2]|0; - $14 = (($13) + 3|0); - $15 = HEAP8[$14>>0]|0; - HEAP8[$noCase>>0] = $15; - HEAP32[$prevEscape>>2] = 0; - while(1) { - $16 = (_sqlite3Utf8Read($1)|0); - HEAP32[$c>>2] = $16; - $17 = ($16|0)!=(0); - if (!($17)) { - label = 84; - break; - } - $18 = HEAP32[$c>>2]|0; - $19 = HEAP8[$matchAll>>0]|0; - $20 = $19&255; - $21 = ($18|0)==($20|0); - if ($21) { - $22 = HEAP32[$prevEscape>>2]|0; - $23 = ($22|0)!=(0); - if (!($23)) { - label = 5; - break; - } - } - $121 = HEAP32[$c>>2]|0; - $122 = HEAP8[$matchOne>>0]|0; - $123 = $122&255; - $124 = ($121|0)==($123|0); - if ($124) { - $125 = HEAP32[$prevEscape>>2]|0; - $126 = ($125|0)!=(0); - if (!($126)) { - $127 = (_sqlite3Utf8Read($2)|0); - $128 = ($127|0)==(0); - if ($128) { - label = 45; - break; - } else { - continue; - } - } - } - $129 = HEAP32[$c>>2]|0; - $130 = HEAP8[$matchSet>>0]|0; - $131 = $130&255; - $132 = ($129|0)==($131|0); - if (!($132)) { - $178 = HEAP32[$4>>2]|0; - $179 = HEAP32[$c>>2]|0; - $180 = ($178|0)==($179|0); - if ($180) { - $181 = HEAP32[$prevEscape>>2]|0; - $182 = ($181|0)!=(0); - if (!($182)) { - HEAP32[$prevEscape>>2] = 1; - continue; - } - } - $183 = (_sqlite3Utf8Read($2)|0); - HEAP32[$c2>>2] = $183; - $184 = HEAP8[$noCase>>0]|0; - $185 = ($184<<24>>24)!=(0); - if ($185) { - $186 = HEAP32[$c>>2]|0; - $187 = $186 & -128; - $188 = ($187|0)!=(0); - if (!($188)) { - $189 = HEAP32[$c>>2]|0; - $190 = (696 + ($189)|0); - $191 = HEAP8[$190>>0]|0; - $192 = $191&255; - HEAP32[$c>>2] = $192; - } - $193 = HEAP32[$c2>>2]|0; - $194 = $193 & -128; - $195 = ($194|0)!=(0); - if (!($195)) { - $196 = HEAP32[$c2>>2]|0; - $197 = (696 + ($196)|0); - $198 = HEAP8[$197>>0]|0; - $199 = $198&255; - HEAP32[$c2>>2] = $199; - } - } - $200 = HEAP32[$c>>2]|0; - $201 = HEAP32[$c2>>2]|0; - $202 = ($200|0)!=($201|0); - if ($202) { - label = 82; - break; - } - HEAP32[$prevEscape>>2] = 0; - continue; - } - HEAP32[$prior_c>>2] = 0; - HEAP32[$seen>>2] = 0; - HEAP32[$invert>>2] = 0; - $133 = (_sqlite3Utf8Read($2)|0); - HEAP32[$c>>2] = $133; - $134 = HEAP32[$c>>2]|0; - $135 = ($134|0)==(0); - if ($135) { - label = 48; - break; - } - $136 = (_sqlite3Utf8Read($1)|0); - HEAP32[$c2>>2] = $136; - $137 = HEAP32[$c2>>2]|0; - $138 = ($137|0)==(94); - if ($138) { - HEAP32[$invert>>2] = 1; - $139 = (_sqlite3Utf8Read($1)|0); - HEAP32[$c2>>2] = $139; - } - $140 = HEAP32[$c2>>2]|0; - $141 = ($140|0)==(93); - if ($141) { - $142 = HEAP32[$c>>2]|0; - $143 = ($142|0)==(93); - if ($143) { - HEAP32[$seen>>2] = 1; - } - $144 = (_sqlite3Utf8Read($1)|0); - HEAP32[$c2>>2] = $144; - } - while(1) { - $145 = HEAP32[$c2>>2]|0; - $146 = ($145|0)!=(0); - if ($146) { - $147 = HEAP32[$c2>>2]|0; - $148 = ($147|0)!=(93); - $211 = $148; - } else { - $211 = 0; - } - $149 = HEAP32[$c2>>2]|0; - if (!($211)) { - break; - } - $150 = ($149|0)==(45); - if ($150) { - $151 = HEAP32[$1>>2]|0; - $152 = HEAP8[$151>>0]|0; - $153 = $152&255; - $154 = ($153|0)!=(93); - if ($154) { - $155 = HEAP32[$1>>2]|0; - $156 = HEAP8[$155>>0]|0; - $157 = $156&255; - $158 = ($157|0)!=(0); - if ($158) { - $159 = HEAP32[$prior_c>>2]|0; - $160 = ($159>>>0)>(0); - if ($160) { - $161 = (_sqlite3Utf8Read($1)|0); - HEAP32[$c2>>2] = $161; - $162 = HEAP32[$c>>2]|0; - $163 = HEAP32[$prior_c>>2]|0; - $164 = ($162>>>0)>=($163>>>0); - if ($164) { - $165 = HEAP32[$c>>2]|0; - $166 = HEAP32[$c2>>2]|0; - $167 = ($165>>>0)<=($166>>>0); - if ($167) { - HEAP32[$seen>>2] = 1; - } - } - HEAP32[$prior_c>>2] = 0; - } else { - label = 66; - } - } else { - label = 66; - } - } else { - label = 66; - } - } else { - label = 66; - } - if ((label|0) == 66) { - label = 0; - $168 = HEAP32[$c>>2]|0; - $169 = HEAP32[$c2>>2]|0; - $170 = ($168|0)==($169|0); - if ($170) { - HEAP32[$seen>>2] = 1; - } - $171 = HEAP32[$c2>>2]|0; - HEAP32[$prior_c>>2] = $171; - } - $172 = (_sqlite3Utf8Read($1)|0); - HEAP32[$c2>>2] = $172; - } - $173 = ($149|0)==(0); - if ($173) { - label = 72; - break; - } - $174 = HEAP32[$seen>>2]|0; - $175 = HEAP32[$invert>>2]|0; - $176 = $174 ^ $175; - $177 = ($176|0)==(0); - if ($177) { - label = 72; - break; - } - } - if ((label|0) == 5) { - while(1) { - label = 0; - $24 = (_sqlite3Utf8Read($1)|0); - HEAP32[$c>>2] = $24; - $25 = HEAP8[$matchAll>>0]|0; - $26 = $25&255; - $27 = ($24|0)==($26|0); - if ($27) { - $209 = 1; - } else { - $28 = HEAP32[$c>>2]|0; - $29 = HEAP8[$matchOne>>0]|0; - $30 = $29&255; - $31 = ($28|0)==($30|0); - $209 = $31; - } - $32 = HEAP32[$c>>2]|0; - if (!($209)) { - break; - } - $33 = HEAP8[$matchOne>>0]|0; - $34 = $33&255; - $35 = ($32|0)==($34|0); - if (!($35)) { - label = 5; - continue; - } - $36 = (_sqlite3Utf8Read($2)|0); - $37 = ($36|0)==(0); - if ($37) { - label = 10; - break; - } else { - label = 5; - } - } - if ((label|0) == 10) { - HEAP32[$0>>2] = 0; - $208 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($208|0); - } - $38 = ($32|0)==(0); - if ($38) { - HEAP32[$0>>2] = 1; - $208 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($208|0); - } - $39 = HEAP32[$c>>2]|0; - $40 = HEAP32[$4>>2]|0; - $41 = ($39|0)==($40|0); - if ($41) { - $42 = (_sqlite3Utf8Read($1)|0); - HEAP32[$c>>2] = $42; - $43 = HEAP32[$c>>2]|0; - $44 = ($43|0)==(0); - if ($44) { - HEAP32[$0>>2] = 0; - $208 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($208|0); - } - } else { - $45 = HEAP32[$c>>2]|0; - $46 = HEAP8[$matchSet>>0]|0; - $47 = $46&255; - $48 = ($45|0)==($47|0); - if ($48) { - L76: while(1) { - $49 = HEAP32[$2>>2]|0; - $50 = HEAP8[$49>>0]|0; - $51 = $50&255; - $52 = ($51|0)!=(0); - if ($52) { - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + -1|0); - $55 = HEAP32[$2>>2]|0; - $56 = HEAP32[$3>>2]|0; - $57 = HEAP32[$4>>2]|0; - $58 = (_patternCompare($54,$55,$56,$57)|0); - $59 = ($58|0)==(0); - $210 = $59; - } else { - $210 = 0; - } - $60 = HEAP32[$2>>2]|0; - if (!($210)) { - break; - } - $61 = (($60) + 1|0); - HEAP32[$2>>2] = $61; - $62 = HEAP8[$60>>0]|0; - $63 = $62&255; - $64 = ($63|0)>=(192); - if (!($64)) { - continue; - } - while(1) { - $65 = HEAP32[$2>>2]|0; - $66 = HEAP8[$65>>0]|0; - $67 = $66&255; - $68 = $67 & 192; - $69 = ($68|0)==(128); - if (!($69)) { - continue L76; - } - $70 = HEAP32[$2>>2]|0; - $71 = (($70) + 1|0); - HEAP32[$2>>2] = $71; - } - } - $72 = HEAP8[$60>>0]|0; - $73 = $72&255; - $74 = ($73|0)!=(0); - $75 = $74&1; - HEAP32[$0>>2] = $75; - $208 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($208|0); - } - } - while(1) { - $76 = (_sqlite3Utf8Read($2)|0); - HEAP32[$c2>>2] = $76; - $77 = ($76|0)!=(0); - if (!($77)) { - label = 41; - break; - } - $78 = HEAP8[$noCase>>0]|0; - $79 = ($78<<24>>24)!=(0); - L93: do { - if ($79) { - $80 = HEAP32[$c2>>2]|0; - $81 = $80 & -128; - $82 = ($81|0)!=(0); - if (!($82)) { - $83 = HEAP32[$c2>>2]|0; - $84 = (696 + ($83)|0); - $85 = HEAP8[$84>>0]|0; - $86 = $85&255; - HEAP32[$c2>>2] = $86; - } - $87 = HEAP32[$c>>2]|0; - $88 = $87 & -128; - $89 = ($88|0)!=(0); - if (!($89)) { - $90 = HEAP32[$c>>2]|0; - $91 = (696 + ($90)|0); - $92 = HEAP8[$91>>0]|0; - $93 = $92&255; - HEAP32[$c>>2] = $93; - } - while(1) { - $94 = HEAP32[$c2>>2]|0; - $95 = ($94|0)!=(0); - if (!($95)) { - break L93; - } - $96 = HEAP32[$c2>>2]|0; - $97 = HEAP32[$c>>2]|0; - $98 = ($96|0)!=($97|0); - if (!($98)) { - break L93; - } - $99 = (_sqlite3Utf8Read($2)|0); - HEAP32[$c2>>2] = $99; - $100 = HEAP32[$c2>>2]|0; - $101 = $100 & -128; - $102 = ($101|0)!=(0); - if ($102) { - continue; - } - $103 = HEAP32[$c2>>2]|0; - $104 = (696 + ($103)|0); - $105 = HEAP8[$104>>0]|0; - $106 = $105&255; - HEAP32[$c2>>2] = $106; - } - } else { - while(1) { - $107 = HEAP32[$c2>>2]|0; - $108 = ($107|0)!=(0); - if (!($108)) { - break L93; - } - $109 = HEAP32[$c2>>2]|0; - $110 = HEAP32[$c>>2]|0; - $111 = ($109|0)!=($110|0); - if (!($111)) { - break L93; - } - $112 = (_sqlite3Utf8Read($2)|0); - HEAP32[$c2>>2] = $112; - } - } - } while(0); - $113 = HEAP32[$c2>>2]|0; - $114 = ($113|0)==(0); - if ($114) { - label = 38; - break; - } - $115 = HEAP32[$1>>2]|0; - $116 = HEAP32[$2>>2]|0; - $117 = HEAP32[$3>>2]|0; - $118 = HEAP32[$4>>2]|0; - $119 = (_patternCompare($115,$116,$117,$118)|0); - $120 = ($119|0)!=(0); - if ($120) { - label = 40; - break; - } - } - if ((label|0) == 38) { - HEAP32[$0>>2] = 0; - $208 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($208|0); - } - else if ((label|0) == 40) { - HEAP32[$0>>2] = 1; - $208 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($208|0); - } - else if ((label|0) == 41) { - HEAP32[$0>>2] = 0; - $208 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($208|0); - } - } - else if ((label|0) == 45) { - HEAP32[$0>>2] = 0; - $208 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($208|0); - } - else if ((label|0) == 48) { - HEAP32[$0>>2] = 0; - $208 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($208|0); - } - else if ((label|0) == 72) { - HEAP32[$0>>2] = 0; - $208 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($208|0); - } - else if ((label|0) == 82) { - HEAP32[$0>>2] = 0; - $208 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($208|0); - } - else if ((label|0) == 84) { - $203 = HEAP32[$2>>2]|0; - $204 = HEAP8[$203>>0]|0; - $205 = $204&255; - $206 = ($205|0)==(0); - $207 = $206&1; - HEAP32[$0>>2] = $207; - $208 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($208|0); - } - return 0|0; -} -function _sqlite3_exec($db,$zSql,$xCallback,$pArg,$pzErrMsg) { - $db = $db|0; - $zSql = $zSql|0; - $xCallback = $xCallback|0; - $pArg = $pArg|0; - $pzErrMsg = $pzErrMsg|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; - var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; - var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; - var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; - var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $azCols = 0, $azVals = 0, $callbackIsInit = 0, $i = 0, $nCol = 0; - var $nErrMsg = 0, $pStmt = 0, $rc = 0, $vararg_buffer3 = 0, $zLeftover = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer3 = sp; - $0 = sp + 60|0; - $1 = sp + 56|0; - $2 = sp + 52|0; - $3 = sp + 48|0; - $4 = sp + 44|0; - $5 = sp + 40|0; - $rc = sp + 36|0; - $zLeftover = sp + 32|0; - $pStmt = sp + 28|0; - $azCols = sp + 24|0; - $callbackIsInit = sp + 20|0; - $nCol = sp + 16|0; - $azVals = sp + 12|0; - $i = sp + 8|0; - $nErrMsg = sp + 4|0; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $zSql; - HEAP32[$3>>2] = $xCallback; - HEAP32[$4>>2] = $pArg; - HEAP32[$5>>2] = $pzErrMsg; - HEAP32[$rc>>2] = 0; - HEAP32[$pStmt>>2] = 0; - HEAP32[$azCols>>2] = 0; - $6 = HEAP32[$1>>2]|0; - $7 = (_sqlite3SafetyCheckOk($6)|0); - $8 = ($7|0)!=(0); - if (!($8)) { - $9 = (_sqlite3MisuseError(96044)|0); - HEAP32[$0>>2] = $9; - $154 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($154|0); - } - $10 = HEAP32[$2>>2]|0; - $11 = ($10|0)==(0|0); - if ($11) { - HEAP32[$2>>2] = 1472; - } - $12 = HEAP32[$1>>2]|0; - _sqlite3Error($12,0,0,$vararg_buffer3); - L8: while(1) { - $13 = HEAP32[$rc>>2]|0; - $14 = ($13|0)==(0); - if (!($14)) { - break; - } - $15 = HEAP32[$2>>2]|0; - $16 = HEAP8[$15>>0]|0; - $17 = $16 << 24 >> 24; - $18 = ($17|0)!=(0); - if (!($18)) { - break; - } - HEAP32[$azVals>>2] = 0; - HEAP32[$pStmt>>2] = 0; - $19 = HEAP32[$1>>2]|0; - $20 = HEAP32[$2>>2]|0; - $21 = (_sqlite3_prepare_v2($19,$20,-1,$pStmt,$zLeftover)|0); - HEAP32[$rc>>2] = $21; - $22 = HEAP32[$rc>>2]|0; - $23 = ($22|0)!=(0); - if ($23) { - continue; - } - $24 = HEAP32[$pStmt>>2]|0; - $25 = ($24|0)!=(0|0); - if (!($25)) { - $26 = HEAP32[$zLeftover>>2]|0; - HEAP32[$2>>2] = $26; - continue; - } - HEAP32[$callbackIsInit>>2] = 0; - $27 = HEAP32[$pStmt>>2]|0; - $28 = (_sqlite3_column_count($27)|0); - HEAP32[$nCol>>2] = $28; - while(1) { - $29 = HEAP32[$pStmt>>2]|0; - $30 = (_sqlite3_step($29)|0); - HEAP32[$rc>>2] = $30; - $31 = HEAP32[$3>>2]|0; - $32 = ($31|0)!=(0|0); - do { - if ($32) { - $33 = HEAP32[$rc>>2]|0; - $34 = (100)==($33|0); - if (!($34)) { - $35 = HEAP32[$rc>>2]|0; - $36 = (101)==($35|0); - if (!($36)) { - break; - } - $37 = HEAP32[$callbackIsInit>>2]|0; - $38 = ($37|0)!=(0); - if ($38) { - break; - } - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 24|0); - $41 = HEAP32[$40>>2]|0; - $42 = $41 & 256; - $43 = ($42|0)!=(0); - if (!($43)) { - break; - } - } - $44 = HEAP32[$callbackIsInit>>2]|0; - $45 = ($44|0)!=(0); - if (!($45)) { - $46 = HEAP32[$1>>2]|0; - $47 = HEAP32[$nCol>>2]|0; - $48 = $47<<1; - $49 = $48<<2; - $50 = (($49) + 1)|0; - $51 = (_sqlite3DbMallocZero($46,$50)|0); - HEAP32[$azCols>>2] = $51; - $52 = HEAP32[$azCols>>2]|0; - $53 = ($52|0)==(0|0); - if ($53) { - break L8; - } - HEAP32[$i>>2] = 0; - while(1) { - $54 = HEAP32[$i>>2]|0; - $55 = HEAP32[$nCol>>2]|0; - $56 = ($54|0)<($55|0); - if (!($56)) { - break; - } - $57 = HEAP32[$pStmt>>2]|0; - $58 = HEAP32[$i>>2]|0; - $59 = (_sqlite3_column_name($57,$58)|0); - $60 = HEAP32[$i>>2]|0; - $61 = HEAP32[$azCols>>2]|0; - $62 = (($61) + ($60<<2)|0); - HEAP32[$62>>2] = $59; - $63 = HEAP32[$i>>2]|0; - $64 = (($63) + 1)|0; - HEAP32[$i>>2] = $64; - } - HEAP32[$callbackIsInit>>2] = 1; - } - $65 = HEAP32[$rc>>2]|0; - $66 = ($65|0)==(100); - L33: do { - if ($66) { - $67 = HEAP32[$nCol>>2]|0; - $68 = HEAP32[$azCols>>2]|0; - $69 = (($68) + ($67<<2)|0); - HEAP32[$azVals>>2] = $69; - HEAP32[$i>>2] = 0; - while(1) { - $70 = HEAP32[$i>>2]|0; - $71 = HEAP32[$nCol>>2]|0; - $72 = ($70|0)<($71|0); - if (!($72)) { - break L33; - } - $73 = HEAP32[$pStmt>>2]|0; - $74 = HEAP32[$i>>2]|0; - $75 = (_sqlite3_column_text($73,$74)|0); - $76 = HEAP32[$i>>2]|0; - $77 = HEAP32[$azVals>>2]|0; - $78 = (($77) + ($76<<2)|0); - HEAP32[$78>>2] = $75; - $79 = HEAP32[$i>>2]|0; - $80 = HEAP32[$azVals>>2]|0; - $81 = (($80) + ($79<<2)|0); - $82 = HEAP32[$81>>2]|0; - $83 = ($82|0)!=(0|0); - if (!($83)) { - $84 = HEAP32[$pStmt>>2]|0; - $85 = HEAP32[$i>>2]|0; - $86 = (_sqlite3_column_type($84,$85)|0); - $87 = ($86|0)!=(5); - if ($87) { - label = 28; - break L8; - } - } - $90 = HEAP32[$i>>2]|0; - $91 = (($90) + 1)|0; - HEAP32[$i>>2] = $91; - } - } - } while(0); - $92 = HEAP32[$3>>2]|0; - $93 = HEAP32[$4>>2]|0; - $94 = HEAP32[$nCol>>2]|0; - $95 = HEAP32[$azVals>>2]|0; - $96 = HEAP32[$azCols>>2]|0; - $97 = (FUNCTION_TABLE_iiiii[$92 & 15]($93,$94,$95,$96)|0); - $98 = ($97|0)!=(0); - if ($98) { - label = 31; - break L8; - } - } - } while(0); - $101 = HEAP32[$rc>>2]|0; - $102 = ($101|0)!=(100); - if ($102) { - break; - } - } - $103 = HEAP32[$pStmt>>2]|0; - $104 = (_sqlite3VdbeFinalize($103)|0); - HEAP32[$rc>>2] = $104; - HEAP32[$pStmt>>2] = 0; - $105 = HEAP32[$zLeftover>>2]|0; - HEAP32[$2>>2] = $105; - while(1) { - $106 = HEAP32[$2>>2]|0; - $107 = HEAP8[$106>>0]|0; - $108 = $107&255; - $109 = (48 + ($108)|0); - $110 = HEAP8[$109>>0]|0; - $111 = $110&255; - $112 = $111 & 1; - $113 = ($112|0)!=(0); - if (!($113)) { - break; - } - $114 = HEAP32[$2>>2]|0; - $115 = (($114) + 1|0); - HEAP32[$2>>2] = $115; - } - $116 = HEAP32[$1>>2]|0; - $117 = HEAP32[$azCols>>2]|0; - _sqlite3DbFree($116,$117); - HEAP32[$azCols>>2] = 0; - } - if ((label|0) == 28) { - $88 = HEAP32[$1>>2]|0; - $89 = (($88) + 64|0); - HEAP8[$89>>0] = 1; - } - else if ((label|0) == 31) { - HEAP32[$rc>>2] = 4; - $99 = HEAP32[$pStmt>>2]|0; - (_sqlite3VdbeFinalize($99)|0); - HEAP32[$pStmt>>2] = 0; - $100 = HEAP32[$1>>2]|0; - _sqlite3Error($100,4,0,$vararg_buffer3); - } - $118 = HEAP32[$pStmt>>2]|0; - $119 = ($118|0)!=(0|0); - if ($119) { - $120 = HEAP32[$pStmt>>2]|0; - (_sqlite3VdbeFinalize($120)|0); - } - $121 = HEAP32[$1>>2]|0; - $122 = HEAP32[$azCols>>2]|0; - _sqlite3DbFree($121,$122); - $123 = HEAP32[$1>>2]|0; - $124 = HEAP32[$rc>>2]|0; - $125 = (_sqlite3ApiExit($123,$124)|0); - HEAP32[$rc>>2] = $125; - $126 = HEAP32[$rc>>2]|0; - $127 = ($126|0)!=(0); - do { - if ($127) { - $128 = HEAP32[$rc>>2]|0; - $129 = HEAP32[$1>>2]|0; - $130 = (_sqlite3_errcode($129)|0); - $131 = ($128|0)==($130|0); - if ($131) { - $132 = HEAP32[$5>>2]|0; - $133 = ($132|0)!=(0|0); - if ($133) { - $134 = HEAP32[$1>>2]|0; - $135 = (_sqlite3_errmsg($134)|0); - $136 = (_sqlite3Strlen30($135)|0); - $137 = (1 + ($136))|0; - HEAP32[$nErrMsg>>2] = $137; - $138 = HEAP32[$nErrMsg>>2]|0; - $139 = (_sqlite3Malloc($138)|0); - $140 = HEAP32[$5>>2]|0; - HEAP32[$140>>2] = $139; - $141 = HEAP32[$5>>2]|0; - $142 = HEAP32[$141>>2]|0; - $143 = ($142|0)!=(0|0); - if ($143) { - $144 = HEAP32[$5>>2]|0; - $145 = HEAP32[$144>>2]|0; - $146 = HEAP32[$1>>2]|0; - $147 = (_sqlite3_errmsg($146)|0); - $148 = HEAP32[$nErrMsg>>2]|0; - _memcpy(($145|0),($147|0),($148|0))|0; - break; - } else { - HEAP32[$rc>>2] = 7; - $149 = HEAP32[$1>>2]|0; - _sqlite3Error($149,7,0,$vararg_buffer3); - break; - } - } else { - label = 45; - } - } else { - label = 45; - } - } else { - label = 45; - } - } while(0); - if ((label|0) == 45) { - $150 = HEAP32[$5>>2]|0; - $151 = ($150|0)!=(0|0); - if ($151) { - $152 = HEAP32[$5>>2]|0; - HEAP32[$152>>2] = 0; - } - } - $153 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $153; - $154 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($154|0); -} -function _sqlite3SafetyCheckOk($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $magic = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $magic = sp; - HEAP32[$1>>2] = $db; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0|0); - do { - if ($3) { - _logBadConnection(9744); - HEAP32[$0>>2] = 0; - } else { - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 76|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$magic>>2] = $6; - $7 = HEAP32[$magic>>2]|0; - $8 = ($7|0)!=(-1607883113); - if (!($8)) { - HEAP32[$0>>2] = 1; - break; - } - $9 = HEAP32[$1>>2]|0; - $10 = (_sqlite3SafetyCheckSickOrOk($9)|0); - $11 = ($10|0)!=(0); - if ($11) { - _logBadConnection(30992); - } - HEAP32[$0>>2] = 0; - } - } while(0); - $12 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($12|0); -} -function _sqlite3_prepare_v2($db,$zSql,$nBytes,$ppStmt,$pzTail) { - $db = $db|0; - $zSql = $zSql|0; - $nBytes = $nBytes|0; - $ppStmt = $ppStmt|0; - $pzTail = $pzTail|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $zSql; - HEAP32[$2>>2] = $nBytes; - HEAP32[$3>>2] = $ppStmt; - HEAP32[$4>>2] = $pzTail; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$3>>2]|0; - $9 = HEAP32[$4>>2]|0; - $10 = (_sqlite3LockAndPrepare($5,$6,$7,1,0,$8,$9)|0); - HEAP32[$rc>>2] = $10; - $11 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($11|0); -} -function _sqlite3_errcode($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $db; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if ($3) { - $4 = HEAP32[$1>>2]|0; - $5 = (_sqlite3SafetyCheckSickOrOk($4)|0); - $6 = ($5|0)!=(0); - if (!($6)) { - $7 = (_sqlite3MisuseError(123013)|0); - HEAP32[$0>>2] = $7; - $22 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($22|0); - } - } - $8 = HEAP32[$1>>2]|0; - $9 = ($8|0)!=(0|0); - if ($9) { - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 64|0); - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = ($13|0)!=(0); - if (!($14)) { - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 52|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 56|0); - $20 = HEAP32[$19>>2]|0; - $21 = $17 & $20; - HEAP32[$0>>2] = $21; - $22 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($22|0); - } - } - HEAP32[$0>>2] = 7; - $22 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($22|0); -} -function _sqlite3_errmsg($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $z = sp; - HEAP32[$1>>2] = $db; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - $4 = (_sqlite3ErrStr(7)|0); - HEAP32[$0>>2] = $4; - $26 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($26|0); - } - $5 = HEAP32[$1>>2]|0; - $6 = (_sqlite3SafetyCheckSickOrOk($5)|0); - $7 = ($6|0)!=(0); - if (!($7)) { - $8 = (_sqlite3MisuseError(122944)|0); - $9 = (_sqlite3ErrStr($8)|0); - HEAP32[$0>>2] = $9; - $26 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($26|0); - } - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 64|0); - $12 = HEAP8[$11>>0]|0; - $13 = ($12<<24>>24)!=(0); - if ($13) { - $14 = (_sqlite3ErrStr(7)|0); - HEAP32[$z>>2] = $14; - } else { - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 224|0); - $17 = HEAP32[$16>>2]|0; - $18 = (_sqlite3_value_text($17)|0); - HEAP32[$z>>2] = $18; - $19 = HEAP32[$z>>2]|0; - $20 = ($19|0)==(0|0); - if ($20) { - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 52|0); - $23 = HEAP32[$22>>2]|0; - $24 = (_sqlite3ErrStr($23)|0); - HEAP32[$z>>2] = $24; - } - } - $25 = HEAP32[$z>>2]|0; - HEAP32[$0>>2] = $25; - $26 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($26|0); -} -function _sqlite3_prepare($db,$zSql,$nBytes,$ppStmt,$pzTail) { - $db = $db|0; - $zSql = $zSql|0; - $nBytes = $nBytes|0; - $ppStmt = $ppStmt|0; - $pzTail = $pzTail|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $zSql; - HEAP32[$2>>2] = $nBytes; - HEAP32[$3>>2] = $ppStmt; - HEAP32[$4>>2] = $pzTail; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$3>>2]|0; - $9 = HEAP32[$4>>2]|0; - $10 = (_sqlite3LockAndPrepare($5,$6,$7,0,0,$8,$9)|0); - HEAP32[$rc>>2] = $10; - $11 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($11|0); -} -function _sqlite3LockAndPrepare($db,$zSql,$nBytes,$saveSqlFlag,$pOld,$ppStmt,$pzTail) { - $db = $db|0; - $zSql = $zSql|0; - $nBytes = $nBytes|0; - $saveSqlFlag = $saveSqlFlag|0; - $pOld = $pOld|0; - $ppStmt = $ppStmt|0; - $pzTail = $pzTail|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $4 = sp + 16|0; - $5 = sp + 12|0; - $6 = sp + 8|0; - $7 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $zSql; - HEAP32[$3>>2] = $nBytes; - HEAP32[$4>>2] = $saveSqlFlag; - HEAP32[$5>>2] = $pOld; - HEAP32[$6>>2] = $ppStmt; - HEAP32[$7>>2] = $pzTail; - $8 = HEAP32[$6>>2]|0; - HEAP32[$8>>2] = 0; - $9 = HEAP32[$1>>2]|0; - $10 = (_sqlite3SafetyCheckOk($9)|0); - $11 = ($10|0)!=(0); - if (!($11)) { - $12 = (_sqlite3MisuseError(100422)|0); - HEAP32[$0>>2] = $12; - $35 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($35|0); - } - $13 = HEAP32[$1>>2]|0; - _sqlite3BtreeEnterAll($13); - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = HEAP32[$3>>2]|0; - $17 = HEAP32[$4>>2]|0; - $18 = HEAP32[$5>>2]|0; - $19 = HEAP32[$6>>2]|0; - $20 = HEAP32[$7>>2]|0; - $21 = (_sqlite3Prepare($14,$15,$16,$17,$18,$19,$20)|0); - HEAP32[$rc>>2] = $21; - $22 = HEAP32[$rc>>2]|0; - $23 = ($22|0)==(17); - if ($23) { - $24 = HEAP32[$6>>2]|0; - $25 = HEAP32[$24>>2]|0; - (_sqlite3_finalize($25)|0); - $26 = HEAP32[$1>>2]|0; - $27 = HEAP32[$2>>2]|0; - $28 = HEAP32[$3>>2]|0; - $29 = HEAP32[$4>>2]|0; - $30 = HEAP32[$5>>2]|0; - $31 = HEAP32[$6>>2]|0; - $32 = HEAP32[$7>>2]|0; - $33 = (_sqlite3Prepare($26,$27,$28,$29,$30,$31,$32)|0); - HEAP32[$rc>>2] = $33; - } - $34 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $34; - $35 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($35|0); -} -function _sqlite3RunParser($pParse,$zSql,$pzErrMsg) { - $pParse = $pParse|0; - $zSql = $zSql|0; - $pzErrMsg = $pzErrMsg|0; - var $$byval_copy10 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; - var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; - var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; - var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; - var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; - var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; - var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; - var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; - var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; - var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; - var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; - var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; - var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; - var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; - var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $enableLookaside = 0, $i = 0, $lastTokenParsed = 0, $mxSqlLen = 0, $nErr = 0, $p = 0, $p1 = 0, $pEngine = 0, $tokenType = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $$byval_copy10 = sp; - $0 = sp + 56|0; - $1 = sp + 52|0; - $2 = sp + 48|0; - $3 = sp + 44|0; - $nErr = sp + 40|0; - $i = sp + 36|0; - $pEngine = sp + 32|0; - $tokenType = sp + 28|0; - $lastTokenParsed = sp + 24|0; - $enableLookaside = sp + 60|0; - $db = sp + 20|0; - $mxSqlLen = sp + 16|0; - $p = sp + 12|0; - $p1 = sp + 8|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $zSql; - HEAP32[$3>>2] = $pzErrMsg; - HEAP32[$nErr>>2] = 0; - HEAP32[$lastTokenParsed>>2] = -1; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$db>>2]|0; - $7 = (($6) + 88|0); - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$mxSqlLen>>2] = $9; - $10 = HEAP32[$db>>2]|0; - $11 = (($10) + 140|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)==(0); - if ($13) { - $14 = HEAP32[$db>>2]|0; - $15 = (($14) + 232|0); - HEAP32[$15>>2] = 0; - } - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 12|0); - HEAP32[$17>>2] = 0; - $18 = HEAP32[$2>>2]|0; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 480|0); - HEAP32[$20>>2] = $18; - HEAP32[$i>>2] = 0; - $21 = (_sqlite3ParserAlloc(18)|0); - HEAP32[$pEngine>>2] = $21; - $22 = HEAP32[$pEngine>>2]|0; - $23 = ($22|0)==(0|0); - $24 = HEAP32[$db>>2]|0; - if ($23) { - $25 = (($24) + 64|0); - HEAP8[$25>>0] = 1; - HEAP32[$0>>2] = 7; - $285 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($285|0); - } - $26 = (($24) + 240|0); - $27 = (($26) + 2|0); - $28 = HEAP8[$27>>0]|0; - HEAP8[$enableLookaside>>0] = $28; - $29 = HEAP32[$db>>2]|0; - $30 = (($29) + 240|0); - $31 = (($30) + 28|0); - $32 = HEAP32[$31>>2]|0; - $33 = ($32|0)!=(0|0); - if ($33) { - $34 = HEAP32[$db>>2]|0; - $35 = (($34) + 240|0); - $36 = (($35) + 2|0); - HEAP8[$36>>0] = 1; - } - while(1) { - $37 = HEAP32[$db>>2]|0; - $38 = (($37) + 64|0); - $39 = HEAP8[$38>>0]|0; - $40 = ($39<<24>>24)!=(0); - if ($40) { - break; - } - $41 = HEAP32[$i>>2]|0; - $42 = HEAP32[$2>>2]|0; - $43 = (($42) + ($41)|0); - $44 = HEAP8[$43>>0]|0; - $45 = $44 << 24 >> 24; - $46 = ($45|0)!=(0); - if (!($46)) { - break; - } - $47 = HEAP32[$i>>2]|0; - $48 = HEAP32[$2>>2]|0; - $49 = (($48) + ($47)|0); - $50 = HEAP32[$1>>2]|0; - $51 = (($50) + 504|0); - HEAP32[$51>>2] = $49; - $52 = HEAP32[$i>>2]|0; - $53 = HEAP32[$2>>2]|0; - $54 = (($53) + ($52)|0); - $55 = (_sqlite3GetToken($54,$tokenType)|0); - $56 = HEAP32[$1>>2]|0; - $57 = (($56) + 504|0); - $58 = (($57) + 4|0); - HEAP32[$58>>2] = $55; - $59 = HEAP32[$1>>2]|0; - $60 = (($59) + 504|0); - $61 = (($60) + 4|0); - $62 = HEAP32[$61>>2]|0; - $63 = HEAP32[$i>>2]|0; - $64 = (($63) + ($62))|0; - HEAP32[$i>>2] = $64; - $65 = HEAP32[$i>>2]|0; - $66 = HEAP32[$mxSqlLen>>2]|0; - $67 = ($65|0)>($66|0); - if ($67) { - label = 10; - break; - } - $70 = HEAP32[$tokenType>>2]|0; - if ((($70|0) == 151)) { - $71 = HEAP32[$db>>2]|0; - $72 = (($71) + 232|0); - $73 = HEAP32[$72>>2]|0; - $74 = ($73|0)!=(0); - if ($74) { - label = 13; - break; - } else { - continue; - } - } else if ((($70|0) == 150)) { - label = 14; - break; - } else if ((($70|0) == 1)) { - $88 = HEAP32[$i>>2]|0; - $89 = HEAP32[$2>>2]|0; - $90 = (($89) + ($88)|0); - $91 = HEAP32[$1>>2]|0; - $92 = (($91) + 480|0); - HEAP32[$92>>2] = $90; - } - $93 = HEAP32[$pEngine>>2]|0; - $94 = HEAP32[$tokenType>>2]|0; - $95 = HEAP32[$1>>2]|0; - $96 = (($95) + 504|0); - $97 = HEAP32[$1>>2]|0; - ;HEAP32[$$byval_copy10+0>>2]=HEAP32[$96+0>>2]|0;HEAP32[$$byval_copy10+4>>2]=HEAP32[$96+4>>2]|0; - _sqlite3Parser($93,$94,$$byval_copy10,$97); - $98 = HEAP32[$tokenType>>2]|0; - HEAP32[$lastTokenParsed>>2] = $98; - $99 = HEAP32[$1>>2]|0; - $100 = (($99) + 12|0); - $101 = HEAP32[$100>>2]|0; - $102 = ($101|0)!=(0); - if ($102) { - break; - } - } - if ((label|0) == 10) { - $68 = HEAP32[$1>>2]|0; - $69 = (($68) + 12|0); - HEAP32[$69>>2] = 18; - } - else if ((label|0) == 13) { - $75 = HEAP32[$1>>2]|0; - _sqlite3ErrorMsg($75,9824,$$byval_copy10); - $76 = HEAP32[$1>>2]|0; - $77 = (($76) + 12|0); - HEAP32[$77>>2] = 9; - } - else if ((label|0) == 14) { - $78 = HEAP32[$db>>2]|0; - $79 = HEAP32[$3>>2]|0; - $80 = HEAP32[$79>>2]|0; - _sqlite3DbFree($78,$80); - $81 = HEAP32[$db>>2]|0; - $82 = HEAP32[$1>>2]|0; - $83 = (($82) + 504|0); - HEAP32[$$byval_copy10>>2] = $83; - $84 = (_sqlite3MPrintf($81,9840,$$byval_copy10)|0); - $85 = HEAP32[$3>>2]|0; - HEAP32[$85>>2] = $84; - $86 = HEAP32[$nErr>>2]|0; - $87 = (($86) + 1)|0; - HEAP32[$nErr>>2] = $87; - } - $103 = HEAP32[$i>>2]|0; - $104 = HEAP32[$2>>2]|0; - $105 = (($104) + ($103)|0); - $106 = HEAP8[$105>>0]|0; - $107 = $106 << 24 >> 24; - $108 = ($107|0)==(0); - if ($108) { - $109 = HEAP32[$nErr>>2]|0; - $110 = ($109|0)==(0); - if ($110) { - $111 = HEAP32[$1>>2]|0; - $112 = (($111) + 12|0); - $113 = HEAP32[$112>>2]|0; - $114 = ($113|0)==(0); - if ($114) { - $115 = HEAP32[$lastTokenParsed>>2]|0; - $116 = ($115|0)!=(1); - if ($116) { - $117 = HEAP32[$pEngine>>2]|0; - $118 = HEAP32[$1>>2]|0; - $119 = (($118) + 504|0); - $120 = HEAP32[$1>>2]|0; - ;HEAP32[$$byval_copy10+0>>2]=HEAP32[$119+0>>2]|0;HEAP32[$$byval_copy10+4>>2]=HEAP32[$119+4>>2]|0; - _sqlite3Parser($117,1,$$byval_copy10,$120); - $121 = HEAP32[$i>>2]|0; - $122 = HEAP32[$2>>2]|0; - $123 = (($122) + ($121)|0); - $124 = HEAP32[$1>>2]|0; - $125 = (($124) + 480|0); - HEAP32[$125>>2] = $123; - } - $126 = HEAP32[$pEngine>>2]|0; - $127 = HEAP32[$1>>2]|0; - $128 = (($127) + 504|0); - $129 = HEAP32[$1>>2]|0; - ;HEAP32[$$byval_copy10+0>>2]=HEAP32[$128+0>>2]|0;HEAP32[$$byval_copy10+4>>2]=HEAP32[$128+4>>2]|0; - _sqlite3Parser($126,0,$$byval_copy10,$129); - } - } - } - $130 = HEAP32[$pEngine>>2]|0; - _sqlite3ParserFree($130,13); - $131 = HEAP8[$enableLookaside>>0]|0; - $132 = HEAP32[$db>>2]|0; - $133 = (($132) + 240|0); - $134 = (($133) + 2|0); - HEAP8[$134>>0] = $131; - $135 = HEAP32[$db>>2]|0; - $136 = (($135) + 64|0); - $137 = HEAP8[$136>>0]|0; - $138 = ($137<<24>>24)!=(0); - if ($138) { - $139 = HEAP32[$1>>2]|0; - $140 = (($139) + 12|0); - HEAP32[$140>>2] = 7; - } - $141 = HEAP32[$1>>2]|0; - $142 = (($141) + 12|0); - $143 = HEAP32[$142>>2]|0; - $144 = ($143|0)!=(0); - if ($144) { - $145 = HEAP32[$1>>2]|0; - $146 = (($145) + 12|0); - $147 = HEAP32[$146>>2]|0; - $148 = ($147|0)!=(101); - if ($148) { - $149 = HEAP32[$1>>2]|0; - $150 = (($149) + 4|0); - $151 = HEAP32[$150>>2]|0; - $152 = ($151|0)==(0|0); - if ($152) { - $153 = HEAP32[$1>>2]|0; - $154 = (($153) + 4|0); - $155 = HEAP32[$db>>2]|0; - $156 = HEAP32[$1>>2]|0; - $157 = (($156) + 12|0); - $158 = HEAP32[$157>>2]|0; - $159 = (_sqlite3ErrStr($158)|0); - HEAP32[$$byval_copy10>>2] = $159; - _sqlite3SetString($154,$155,1456,$$byval_copy10); - } - } - } - $160 = HEAP32[$1>>2]|0; - $161 = (($160) + 4|0); - $162 = HEAP32[$161>>2]|0; - $163 = ($162|0)!=(0|0); - if ($163) { - $164 = HEAP32[$1>>2]|0; - $165 = (($164) + 4|0); - $166 = HEAP32[$165>>2]|0; - $167 = HEAP32[$3>>2]|0; - HEAP32[$167>>2] = $166; - $168 = HEAP32[$1>>2]|0; - $169 = (($168) + 12|0); - $170 = HEAP32[$169>>2]|0; - $171 = HEAP32[$3>>2]|0; - $172 = HEAP32[$171>>2]|0; - HEAP32[$$byval_copy10>>2] = $172; - _sqlite3_log($170,1456,$$byval_copy10); - $173 = HEAP32[$1>>2]|0; - $174 = (($173) + 4|0); - HEAP32[$174>>2] = 0; - $175 = HEAP32[$nErr>>2]|0; - $176 = (($175) + 1)|0; - HEAP32[$nErr>>2] = $176; - } - $177 = HEAP32[$1>>2]|0; - $178 = (($177) + 8|0); - $179 = HEAP32[$178>>2]|0; - $180 = ($179|0)!=(0|0); - if ($180) { - $181 = HEAP32[$1>>2]|0; - $182 = (($181) + 64|0); - $183 = HEAP32[$182>>2]|0; - $184 = ($183|0)>(0); - if ($184) { - $185 = HEAP32[$1>>2]|0; - $186 = (($185) + 18|0); - $187 = HEAP8[$186>>0]|0; - $188 = $187&255; - $189 = ($188|0)==(0); - if ($189) { - $190 = HEAP32[$1>>2]|0; - $191 = (($190) + 8|0); - $192 = HEAP32[$191>>2]|0; - _sqlite3VdbeDelete($192); - $193 = HEAP32[$1>>2]|0; - $194 = (($193) + 8|0); - HEAP32[$194>>2] = 0; - } - } - } - $195 = HEAP32[$1>>2]|0; - $196 = (($195) + 18|0); - $197 = HEAP8[$196>>0]|0; - $198 = $197&255; - $199 = ($198|0)==(0); - if ($199) { - $200 = HEAP32[$db>>2]|0; - $201 = HEAP32[$1>>2]|0; - $202 = (($201) + 400|0); - $203 = HEAP32[$202>>2]|0; - _sqlite3DbFree($200,$203); - $204 = HEAP32[$1>>2]|0; - $205 = (($204) + 400|0); - HEAP32[$205>>2] = 0; - $206 = HEAP32[$1>>2]|0; - $207 = (($206) + 396|0); - HEAP32[$207>>2] = 0; - } - $208 = HEAP32[$1>>2]|0; - $209 = (($208) + 520|0); - $210 = HEAP32[$209>>2]|0; - _sqlite3_free($210); - $211 = HEAP32[$1>>2]|0; - $212 = (($211) + 451|0); - $213 = HEAP8[$212>>0]|0; - $214 = ($213<<24>>24)!=(0); - if (!($214)) { - $215 = HEAP32[$db>>2]|0; - $216 = HEAP32[$1>>2]|0; - $217 = (($216) + 484|0); - $218 = HEAP32[$217>>2]|0; - _sqlite3DeleteTable($215,$218); - } - $219 = HEAP32[$1>>2]|0; - $220 = (($219) + 449|0); - $221 = HEAP8[$220>>0]|0; - $222 = ($221<<24>>24)!=(0); - if ($222) { - $223 = HEAP32[$db>>2]|0; - $224 = HEAP32[$1>>2]|0; - $225 = (($224) + 532|0); - $226 = HEAP32[$225>>2]|0; - _sqlite3WithDelete($223,$226); - } - $227 = HEAP32[$db>>2]|0; - $228 = HEAP32[$1>>2]|0; - $229 = (($228) + 488|0); - $230 = HEAP32[$229>>2]|0; - _sqlite3DeleteTrigger($227,$230); - $231 = HEAP32[$1>>2]|0; - $232 = (($231) + 444|0); - $233 = HEAP32[$232>>2]|0; - $234 = (($233) - 1)|0; - HEAP32[$i>>2] = $234; - while(1) { - $235 = HEAP32[$i>>2]|0; - $236 = ($235|0)>=(0); - $237 = HEAP32[$db>>2]|0; - if (!($236)) { - break; - } - $238 = HEAP32[$i>>2]|0; - $239 = HEAP32[$1>>2]|0; - $240 = (($239) + 472|0); - $241 = HEAP32[$240>>2]|0; - $242 = (($241) + ($238<<2)|0); - $243 = HEAP32[$242>>2]|0; - _sqlite3DbFree($237,$243); - $244 = HEAP32[$i>>2]|0; - $245 = (($244) + -1)|0; - HEAP32[$i>>2] = $245; - } - $246 = HEAP32[$1>>2]|0; - $247 = (($246) + 472|0); - $248 = HEAP32[$247>>2]|0; - _sqlite3DbFree($237,$248); - while(1) { - $249 = HEAP32[$1>>2]|0; - $250 = (($249) + 404|0); - $251 = HEAP32[$250>>2]|0; - $252 = ($251|0)!=(0|0); - if (!($252)) { - break; - } - $253 = HEAP32[$1>>2]|0; - $254 = (($253) + 404|0); - $255 = HEAP32[$254>>2]|0; - HEAP32[$p>>2] = $255; - $256 = HEAP32[$p>>2]|0; - $257 = HEAP32[$256>>2]|0; - $258 = HEAP32[$1>>2]|0; - $259 = (($258) + 404|0); - HEAP32[$259>>2] = $257; - $260 = HEAP32[$db>>2]|0; - $261 = HEAP32[$p>>2]|0; - _sqlite3DbFree($260,$261); - } - while(1) { - $262 = HEAP32[$1>>2]|0; - $263 = (($262) + 524|0); - $264 = HEAP32[$263>>2]|0; - $265 = ($264|0)!=(0|0); - if (!($265)) { - break; - } - $266 = HEAP32[$1>>2]|0; - $267 = (($266) + 524|0); - $268 = HEAP32[$267>>2]|0; - HEAP32[$p1>>2] = $268; - $269 = HEAP32[$p1>>2]|0; - $270 = (($269) + 72|0); - $271 = HEAP32[$270>>2]|0; - $272 = HEAP32[$1>>2]|0; - $273 = (($272) + 524|0); - HEAP32[$273>>2] = $271; - $274 = HEAP32[$db>>2]|0; - $275 = HEAP32[$p1>>2]|0; - _sqlite3DeleteTable($274,$275); - } - $276 = HEAP32[$nErr>>2]|0; - $277 = ($276|0)>(0); - if ($277) { - $278 = HEAP32[$1>>2]|0; - $279 = (($278) + 12|0); - $280 = HEAP32[$279>>2]|0; - $281 = ($280|0)==(0); - if ($281) { - $282 = HEAP32[$1>>2]|0; - $283 = (($282) + 12|0); - HEAP32[$283>>2] = 1; - } - } - $284 = HEAP32[$nErr>>2]|0; - HEAP32[$0>>2] = $284; - $285 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($285|0); -} -function _sqlite3ValueNew($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3DbMallocZero($1,40)|0); - HEAP32[$p>>2] = $2; - $3 = HEAP32[$p>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - $9 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($9|0); - } - $5 = HEAP32[$p>>2]|0; - $6 = (($5) + 28|0); - HEAP16[$6>>1] = 1; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$p>>2]|0; - HEAP32[$8>>2] = $7; - $9 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($9|0); -} -function _sqlite3ValueSetStr($v,$n,$z,$enc,$xDel) { - $v = $v|0; - $n = $n|0; - $z = $z|0; - $enc = $enc|0; - $xDel = $xDel|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp + 16|0; - $4 = sp; - HEAP32[$0>>2] = $v; - HEAP32[$1>>2] = $n; - HEAP32[$2>>2] = $z; - HEAP8[$3>>0] = $enc; - HEAP32[$4>>2] = $xDel; - $5 = HEAP32[$0>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP8[$3>>0]|0; - $11 = HEAP32[$4>>2]|0; - (_sqlite3VdbeMemSetStr($7,$8,$9,$10,$11)|0); - STACKTOP = sp;return; -} -function _sqlite3ValueFree($v) { - $v = $v|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $v; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if (!($2)) { - STACKTOP = sp;return; - } - $3 = HEAP32[$0>>2]|0; - _sqlite3VdbeMemRelease($3); - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$0>>2]|0; - _sqlite3DbFree($5,$6); - STACKTOP = sp;return; -} -function _sqlite3_libversion() { - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = sp;return (8|0); -} -function _sqlite3_sourceid() { - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = sp;return (1504|0); -} -function _sqlite3MallocInit() { - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $i = 0, $n = 0, $pSlot = 0, $sz = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $i = sp + 12|0; - $n = sp + 8|0; - $sz = sp + 4|0; - $pSlot = sp; - $0 = HEAP32[((38512 + 36|0))>>2]|0; - $1 = ($0|0)==(0|0); - if ($1) { - _sqlite3MemSetDefault(); - } - dest=392+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $2 = HEAP32[((38512 + 4|0))>>2]|0; - $3 = ($2|0)!=(0); - if ($3) { - HEAP32[392>>2] = (8); - } - $4 = HEAP32[((38512 + 192|0))>>2]|0; - $5 = ($4|0)!=(0|0); - if ($5) { - $6 = HEAP32[((38512 + 196|0))>>2]|0; - $7 = ($6|0)>=(100); - if ($7) { - $8 = HEAP32[((38512 + 200|0))>>2]|0; - $9 = ($8|0)>(0); - if ($9) { - $10 = HEAP32[((38512 + 196|0))>>2]|0; - $11 = $10 & -8; - HEAP32[$sz>>2] = $11; - $12 = HEAP32[$sz>>2]|0; - HEAP32[((38512 + 196|0))>>2] = $12; - $13 = HEAP32[((38512 + 192|0))>>2]|0; - HEAP32[$pSlot>>2] = $13; - $14 = HEAP32[((38512 + 200|0))>>2]|0; - HEAP32[$n>>2] = $14; - $15 = HEAP32[$pSlot>>2]|0; - HEAP32[((392 + 28|0))>>2] = $15; - $16 = HEAP32[$n>>2]|0; - HEAP32[((392 + 32|0))>>2] = $16; - HEAP32[$i>>2] = 0; - while(1) { - $17 = HEAP32[$i>>2]|0; - $18 = HEAP32[$n>>2]|0; - $19 = (($18) - 1)|0; - $20 = ($17|0)<($19|0); - if (!($20)) { - break; - } - $21 = HEAP32[$sz>>2]|0; - $22 = HEAP32[$pSlot>>2]|0; - $23 = (($22) + ($21)|0); - $24 = HEAP32[$pSlot>>2]|0; - HEAP32[$24>>2] = $23; - $25 = HEAP32[$pSlot>>2]|0; - $26 = HEAP32[$25>>2]|0; - HEAP32[$pSlot>>2] = $26; - $27 = HEAP32[$i>>2]|0; - $28 = (($27) + 1)|0; - HEAP32[$i>>2] = $28; - } - $29 = HEAP32[$pSlot>>2]|0; - HEAP32[$29>>2] = 0; - $30 = HEAP32[$pSlot>>2]|0; - $31 = (($30) + 4|0); - HEAP32[((392 + 24|0))>>2] = $31; - } else { - label = 12; - } - } else { - label = 12; - } - } else { - label = 12; - } - if ((label|0) == 12) { - HEAP32[((392 + 24|0))>>2] = 0; - HEAP32[((38512 + 192|0))>>2] = 0; - HEAP32[((38512 + 196|0))>>2] = 0; - HEAP32[((38512 + 200|0))>>2] = 0; - } - $32 = HEAP32[((38512 + 204|0))>>2]|0; - $33 = ($32|0)==(0|0); - if (!($33)) { - $34 = HEAP32[((38512 + 208|0))>>2]|0; - $35 = ($34|0)<(512); - if (!($35)) { - $36 = HEAP32[((38512 + 212|0))>>2]|0; - $37 = ($36|0)<(1); - if (!($37)) { - $38 = HEAP32[((38512 + 56|0))>>2]|0; - $39 = HEAP32[((38512 + 64|0))>>2]|0; - $40 = (FUNCTION_TABLE_ii[$38 & 31]($39)|0); - STACKTOP = sp;return ($40|0); - } - } - } - HEAP32[((38512 + 204|0))>>2] = 0; - HEAP32[((38512 + 208|0))>>2] = 0; - HEAP32[((38512 + 212|0))>>2] = 0; - $38 = HEAP32[((38512 + 56|0))>>2]|0; - $39 = HEAP32[((38512 + 64|0))>>2]|0; - $40 = (FUNCTION_TABLE_ii[$38 & 31]($39)|0); - STACKTOP = sp;return ($40|0); -} -function _sqlite3RegisterGlobalFunctions() { - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $aFunc = 0, $i = 0, $pHash = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $i = sp + 8|0; - $pHash = sp + 4|0; - $aFunc = sp; - HEAP32[$pHash>>2] = 1576; - HEAP32[$aFunc>>2] = 6184; - HEAP32[$i>>2] = 0; - while(1) { - $0 = HEAP32[$i>>2]|0; - $1 = ($0|0)<(56); - if (!($1)) { - break; - } - $2 = HEAP32[$pHash>>2]|0; - $3 = HEAP32[$i>>2]|0; - $4 = HEAP32[$aFunc>>2]|0; - $5 = (($4) + (($3*36)|0)|0); - _sqlite3FuncDefInsert($2,$5); - $6 = HEAP32[$i>>2]|0; - $7 = (($6) + 1)|0; - HEAP32[$i>>2] = $7; - } - _sqlite3RegisterDateTimeFunctions(); - _sqlite3AlterFunctions(); - STACKTOP = sp;return; -} -function _sqlite3PcacheInitialize() { - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - $0 = HEAP32[((38512 + 112|0))>>2]|0; - $1 = ($0|0)==(0|0); - if ($1) { - _sqlite3PCacheSetDefault(); - } - $2 = HEAP32[((38512 + 112|0))>>2]|0; - $3 = HEAP32[((38512 + 108|0))>>2]|0; - $4 = (FUNCTION_TABLE_ii[$2 & 31]($3)|0); - STACKTOP = sp;return ($4|0); -} -function _sqlite3OsInit() { - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - $1 = (_sqlite3_malloc(10)|0); - HEAP32[$p>>2] = $1; - $2 = HEAP32[$p>>2]|0; - $3 = ($2|0)==(0|0); - if ($3) { - HEAP32[$0>>2] = 7; - $6 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($6|0); - } else { - $4 = HEAP32[$p>>2]|0; - _sqlite3_free($4); - $5 = (_sqlite3_os_init()|0); - HEAP32[$0>>2] = $5; - $6 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($6|0); - } - return 0|0; -} -function _sqlite3PCacheBufferSetup($pBuf,$sz,$n) { - $pBuf = $pBuf|0; - $sz = $sz|0; - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pBuf; - HEAP32[$1>>2] = $sz; - HEAP32[$2>>2] = $n; - $3 = HEAP32[((3136 + 28|0))>>2]|0; - $4 = ($3|0)!=(0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$1>>2]|0; - $6 = $5 & -8; - HEAP32[$1>>2] = $6; - $7 = HEAP32[$1>>2]|0; - HEAP32[((3136 + 32|0))>>2] = $7; - $8 = HEAP32[$2>>2]|0; - HEAP32[((3136 + 60|0))>>2] = $8; - HEAP32[((3136 + 36|0))>>2] = $8; - $9 = HEAP32[$2>>2]|0; - $10 = ($9|0)>(90); - if ($10) { - $14 = 10; - } else { - $11 = HEAP32[$2>>2]|0; - $12 = (($11|0) / 10)&-1; - $13 = (($12) + 1)|0; - $14 = $13; - } - HEAP32[((3136 + 40|0))>>2] = $14; - $15 = HEAP32[$0>>2]|0; - HEAP32[((3136 + 44|0))>>2] = $15; - HEAP32[((3136 + 56|0))>>2] = 0; - HEAP32[((3136 + 64|0))>>2] = 0; - while(1) { - $16 = HEAP32[$2>>2]|0; - $17 = (($16) + -1)|0; - HEAP32[$2>>2] = $17; - $18 = ($16|0)!=(0); - $19 = HEAP32[$0>>2]|0; - if (!($18)) { - break; - } - HEAP32[$p>>2] = $19; - $20 = HEAP32[((3136 + 56|0))>>2]|0; - $21 = HEAP32[$p>>2]|0; - HEAP32[$21>>2] = $20; - $22 = HEAP32[$p>>2]|0; - HEAP32[((3136 + 56|0))>>2] = $22; - $23 = HEAP32[$1>>2]|0; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + ($23)|0); - HEAP32[$0>>2] = $25; - } - HEAP32[((3136 + 48|0))>>2] = $19; - STACKTOP = sp;return; -} -function _sqlite3_config($op,$varargs) { - $op = $op|0; - $varargs = $varargs|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $14 = 0, $15 = 0, $16 = 0; - var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; - var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; - var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; - var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; - var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $ap = 0, $arglist_current = 0, $arglist_current12 = 0, $arglist_current15 = 0, $arglist_current18 = 0, $arglist_current21 = 0, $arglist_current24 = 0, $arglist_current27 = 0, $arglist_current3 = 0; - var $arglist_current30 = 0, $arglist_current33 = 0, $arglist_current36 = 0, $arglist_current39 = 0, $arglist_current42 = 0, $arglist_current45 = 0, $arglist_current48 = 0, $arglist_current51 = 0, $arglist_current54 = 0, $arglist_current6 = 0, $arglist_current9 = 0, $arglist_next = 0, $arglist_next10 = 0, $arglist_next13 = 0, $arglist_next16 = 0, $arglist_next19 = 0, $arglist_next22 = 0, $arglist_next25 = 0, $arglist_next28 = 0, $arglist_next31 = 0; - var $arglist_next34 = 0, $arglist_next37 = 0, $arglist_next4 = 0, $arglist_next40 = 0, $arglist_next43 = 0, $arglist_next46 = 0, $arglist_next49 = 0, $arglist_next52 = 0, $arglist_next55 = 0, $arglist_next7 = 0, $mxMmap = 0, $or$cond = 0, $rc = 0, $szMmap = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $ap = sp + 24|0; - $rc = sp + 16|0; - $szMmap = sp + 8|0; - $mxMmap = sp; - HEAP32[$1>>2] = $op; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[((38512 + 224|0))>>2]|0; - $3 = ($2|0)!=(0); - if ($3) { - $4 = (_sqlite3MisuseError(121405)|0); - HEAP32[$0>>2] = $4; - $130 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($130|0); - } - HEAP32[$ap>>2] = $varargs; - $5 = HEAP32[$1>>2]|0; - do { - switch ($5|0) { - case 16: { - $arglist_current39 = HEAP32[$ap>>2]|0; - $23 = HEAP32[$arglist_current39>>2]|0; - $arglist_next40 = (($arglist_current39) + 4|0); - HEAP32[$ap>>2] = $arglist_next40; - HEAP32[((38512 + 252|0))>>2] = $23; - $arglist_current42 = HEAP32[$ap>>2]|0; - $24 = HEAP32[$arglist_current42>>2]|0; - $arglist_next43 = (($arglist_current42) + 4|0); - HEAP32[$ap>>2] = $arglist_next43; - HEAP32[((38512 + 256|0))>>2] = $24; - break; - } - case 6: { - $arglist_current9 = HEAP32[$ap>>2]|0; - $11 = HEAP32[$arglist_current9>>2]|0; - $arglist_next10 = (($arglist_current9) + 4|0); - HEAP32[$ap>>2] = $arglist_next10; - HEAP32[((38512 + 192|0))>>2] = $11; - $arglist_current12 = HEAP32[$ap>>2]|0; - $12 = HEAP32[$arglist_current12>>2]|0; - $arglist_next13 = (($arglist_current12) + 4|0); - HEAP32[$ap>>2] = $arglist_next13; - HEAP32[((38512 + 196|0))>>2] = $12; - $arglist_current15 = HEAP32[$ap>>2]|0; - $13 = HEAP32[$arglist_current15>>2]|0; - $arglist_next16 = (($arglist_current15) + 4|0); - HEAP32[$ap>>2] = $arglist_next16; - HEAP32[((38512 + 200|0))>>2] = $13; - break; - } - case 9: { - $arglist_current6 = HEAP32[$ap>>2]|0; - $10 = HEAP32[$arglist_current6>>2]|0; - $arglist_next7 = (($arglist_current6) + 4|0); - HEAP32[$ap>>2] = $arglist_next7; - HEAP32[38512>>2] = $10; - break; - } - case 13: { - $arglist_current33 = HEAP32[$ap>>2]|0; - $21 = HEAP32[$arglist_current33>>2]|0; - $arglist_next34 = (($arglist_current33) + 4|0); - HEAP32[$ap>>2] = $arglist_next34; - HEAP32[((38512 + 28|0))>>2] = $21; - $arglist_current36 = HEAP32[$ap>>2]|0; - $22 = HEAP32[$arglist_current36>>2]|0; - $arglist_next37 = (($arglist_current36) + 4|0); - HEAP32[$ap>>2] = $arglist_next37; - HEAP32[((38512 + 32|0))>>2] = $22; - break; - } - case 20: { - $arglist_current48 = HEAP32[$ap>>2]|0; - $26 = HEAP32[$arglist_current48>>2]|0; - $arglist_next49 = (($arglist_current48) + 4|0); - HEAP32[$ap>>2] = $arglist_next49; - HEAP32[((38512 + 16|0))>>2] = $26; - break; - } - case 22: { - $arglist_current51 = HEAP32[$ap>>2]|0; - $27 = $arglist_current51; - $28 = $27; - $29 = HEAP32[$28>>2]|0; - $30 = (($27) + 4)|0; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $arglist_next52 = (($arglist_current51) + 8|0); - HEAP32[$ap>>2] = $arglist_next52; - $33 = $szMmap; - $34 = $33; - HEAP32[$34>>2] = $29; - $35 = (($33) + 4)|0; - $36 = $35; - HEAP32[$36>>2] = $32; - $arglist_current54 = HEAP32[$ap>>2]|0; - $37 = $arglist_current54; - $38 = $37; - $39 = HEAP32[$38>>2]|0; - $40 = (($37) + 4)|0; - $41 = $40; - $42 = HEAP32[$41>>2]|0; - $arglist_next55 = (($arglist_current54) + 8|0); - HEAP32[$ap>>2] = $arglist_next55; - $43 = $mxMmap; - $44 = $43; - HEAP32[$44>>2] = $39; - $45 = (($43) + 4)|0; - $46 = $45; - HEAP32[$46>>2] = $42; - $47 = $mxMmap; - $48 = $47; - $49 = HEAP32[$48>>2]|0; - $50 = (($47) + 4)|0; - $51 = $50; - $52 = HEAP32[$51>>2]|0; - $53 = ($52|0)<(0); - $54 = $mxMmap; - $55 = $54; - $56 = HEAP32[$55>>2]|0; - $57 = (($54) + 4)|0; - $58 = $57; - $59 = HEAP32[$58>>2]|0; - $60 = ($59|0)>(0); - $61 = ($59|0)==(0); - $62 = ($56>>>0)>(0); - $63 = $61 & $62; - $64 = $60 | $63; - $or$cond = $53 | $64; - $65 = $or$cond ? 0 : $39; - $66 = $or$cond ? 0 : $42; - $67 = $mxMmap; - $68 = $67; - HEAP32[$68>>2] = $65; - $69 = (($67) + 4)|0; - $70 = $69; - HEAP32[$70>>2] = $66; - $71 = $mxMmap; - $72 = $71; - $73 = HEAP32[$72>>2]|0; - $74 = (($71) + 4)|0; - $75 = $74; - $76 = HEAP32[$75>>2]|0; - $77 = ((38512 + 184|0)); - $78 = $77; - HEAP32[$78>>2] = $73; - $79 = (($77) + 4)|0; - $80 = $79; - HEAP32[$80>>2] = $76; - $81 = $szMmap; - $82 = $81; - $83 = HEAP32[$82>>2]|0; - $84 = (($81) + 4)|0; - $85 = $84; - $86 = HEAP32[$85>>2]|0; - $87 = ($86|0)<(0); - if ($87) { - $88 = $szMmap; - $89 = $88; - HEAP32[$89>>2] = 0; - $90 = (($88) + 4)|0; - $91 = $90; - HEAP32[$91>>2] = 0; - } - $92 = $szMmap; - $93 = $92; - $94 = HEAP32[$93>>2]|0; - $95 = (($92) + 4)|0; - $96 = $95; - $97 = HEAP32[$96>>2]|0; - $98 = $mxMmap; - $99 = $98; - $100 = HEAP32[$99>>2]|0; - $101 = (($98) + 4)|0; - $102 = $101; - $103 = HEAP32[$102>>2]|0; - $104 = ($97|0)>($103|0); - $105 = ($97|0)==($103|0); - $106 = ($94>>>0)>($100>>>0); - $107 = $105 & $106; - $108 = $104 | $107; - if ($108) { - $109 = $mxMmap; - $110 = $109; - $111 = HEAP32[$110>>2]|0; - $112 = (($109) + 4)|0; - $113 = $112; - $114 = HEAP32[$113>>2]|0; - $115 = $szMmap; - $116 = $115; - HEAP32[$116>>2] = $111; - $117 = (($115) + 4)|0; - $118 = $117; - HEAP32[$118>>2] = $114; - } - $119 = $szMmap; - $120 = $119; - $121 = HEAP32[$120>>2]|0; - $122 = (($119) + 4)|0; - $123 = $122; - $124 = HEAP32[$123>>2]|0; - $125 = ((38512 + 176|0)); - $126 = $125; - HEAP32[$126>>2] = $121; - $127 = (($125) + 4)|0; - $128 = $127; - HEAP32[$128>>2] = $124; - break; - } - case 15: { - HEAP32[$rc>>2] = 1; - break; - } - case 19: { - $18 = HEAP32[((38512 + 112|0))>>2]|0; - $19 = ($18|0)==(0|0); - if ($19) { - _sqlite3PCacheSetDefault(); - } - $arglist_current30 = HEAP32[$ap>>2]|0; - $20 = HEAP32[$arglist_current30>>2]|0; - $arglist_next31 = (($arglist_current30) + 4|0); - HEAP32[$ap>>2] = $arglist_next31; - dest=$20+0|0; src=((38512 + 104|0))+0|0; stop=dest+52|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - break; - } - case 17: { - $arglist_current45 = HEAP32[$ap>>2]|0; - $25 = HEAP32[$arglist_current45>>2]|0; - $arglist_next46 = (($arglist_current45) + 4|0); - HEAP32[$ap>>2] = $arglist_next46; - HEAP32[((38512 + 12|0))>>2] = $25; - break; - } - case 18: { - $arglist_current27 = HEAP32[$ap>>2]|0; - $17 = HEAP32[$arglist_current27>>2]|0; - $arglist_next28 = (($arglist_current27) + 4|0); - HEAP32[$ap>>2] = $arglist_next28; - dest=((38512 + 104|0))+0|0; src=$17+0|0; stop=dest+52|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - break; - } - case 7: { - $arglist_current18 = HEAP32[$ap>>2]|0; - $14 = HEAP32[$arglist_current18>>2]|0; - $arglist_next19 = (($arglist_current18) + 4|0); - HEAP32[$ap>>2] = $arglist_next19; - HEAP32[((38512 + 204|0))>>2] = $14; - $arglist_current21 = HEAP32[$ap>>2]|0; - $15 = HEAP32[$arglist_current21>>2]|0; - $arglist_next22 = (($arglist_current21) + 4|0); - HEAP32[$ap>>2] = $arglist_next22; - HEAP32[((38512 + 208|0))>>2] = $15; - $arglist_current24 = HEAP32[$ap>>2]|0; - $16 = HEAP32[$arglist_current24>>2]|0; - $arglist_next25 = (($arglist_current24) + 4|0); - HEAP32[$ap>>2] = $arglist_next25; - HEAP32[((38512 + 212|0))>>2] = $16; - break; - } - case 14: { - break; - } - case 4: { - $arglist_current = HEAP32[$ap>>2]|0; - $6 = HEAP32[$arglist_current>>2]|0; - $arglist_next = (($arglist_current) + 4|0); - HEAP32[$ap>>2] = $arglist_next; - ;HEAP32[((38512 + 36|0))+0>>2]=HEAP32[$6+0>>2]|0;HEAP32[((38512 + 36|0))+4>>2]=HEAP32[$6+4>>2]|0;HEAP32[((38512 + 36|0))+8>>2]=HEAP32[$6+8>>2]|0;HEAP32[((38512 + 36|0))+12>>2]=HEAP32[$6+12>>2]|0;HEAP32[((38512 + 36|0))+16>>2]=HEAP32[$6+16>>2]|0;HEAP32[((38512 + 36|0))+20>>2]=HEAP32[$6+20>>2]|0;HEAP32[((38512 + 36|0))+24>>2]=HEAP32[$6+24>>2]|0;HEAP32[((38512 + 36|0))+28>>2]=HEAP32[$6+28>>2]|0; - break; - } - case 5: { - $7 = HEAP32[((38512 + 36|0))>>2]|0; - $8 = ($7|0)==(0|0); - if ($8) { - _sqlite3MemSetDefault(); - } - $arglist_current3 = HEAP32[$ap>>2]|0; - $9 = HEAP32[$arglist_current3>>2]|0; - $arglist_next4 = (($arglist_current3) + 4|0); - HEAP32[$ap>>2] = $arglist_next4; - ;HEAP32[$9+0>>2]=HEAP32[((38512 + 36|0))+0>>2]|0;HEAP32[$9+4>>2]=HEAP32[((38512 + 36|0))+4>>2]|0;HEAP32[$9+8>>2]=HEAP32[((38512 + 36|0))+8>>2]|0;HEAP32[$9+12>>2]=HEAP32[((38512 + 36|0))+12>>2]|0;HEAP32[$9+16>>2]=HEAP32[((38512 + 36|0))+16>>2]|0;HEAP32[$9+20>>2]=HEAP32[((38512 + 36|0))+20>>2]|0;HEAP32[$9+24>>2]=HEAP32[((38512 + 36|0))+24>>2]|0;HEAP32[$9+28>>2]=HEAP32[((38512 + 36|0))+28>>2]|0; - break; - } - default: { - HEAP32[$rc>>2] = 1; - } - } - } while(0); - $129 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $129; - $130 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($130|0); -} -function _sqlite3MemSetDefault() { - var $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - HEAP32[$vararg_buffer>>2] = 6072; - (_sqlite3_config(4,$vararg_buffer)|0); - STACKTOP = sp;return; -} -function _sqlite3PCacheSetDefault() { - var $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - HEAP32[$vararg_buffer>>2] = 6016; - (_sqlite3_config(18,$vararg_buffer)|0); - STACKTOP = sp;return; -} -function _sqlite3_db_release_memory($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $i = 0, $pBt = 0, $pPager = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $i = sp + 8|0; - $pBt = sp + 4|0; - $pPager = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnterAll($1); - HEAP32[$i>>2] = 0; - while(1) { - $2 = HEAP32[$i>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 20|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($2|0)<($5|0); - if (!($6)) { - break; - } - $7 = HEAP32[$i>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 16|0); - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + ($7<<4)|0); - $12 = (($11) + 4|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pBt>>2] = $13; - $14 = HEAP32[$pBt>>2]|0; - $15 = ($14|0)!=(0|0); - if ($15) { - $16 = HEAP32[$pBt>>2]|0; - $17 = (_sqlite3BtreePager($16)|0); - HEAP32[$pPager>>2] = $17; - $18 = HEAP32[$pPager>>2]|0; - _sqlite3PagerShrink($18); - } - $19 = HEAP32[$i>>2]|0; - $20 = (($19) + 1)|0; - HEAP32[$i>>2] = $20; - } - STACKTOP = sp;return 0; -} -function _sqlite3PagerShrink($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 204|0); - $3 = HEAP32[$2>>2]|0; - _sqlite3PcacheShrink($3); - STACKTOP = sp;return; -} -function _setupLookaside($db,$pBuf,$sz,$cnt) { - $db = $db|0; - $pBuf = $pBuf|0; - $sz = $sz|0; - $cnt = $cnt|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; - var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; - var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; - var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; - var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; - var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $p = 0, $pStart = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $pStart = sp + 8|0; - $i = sp + 4|0; - $p = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pBuf; - HEAP32[$3>>2] = $sz; - HEAP32[$4>>2] = $cnt; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 240|0); - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)!=(0); - if ($9) { - HEAP32[$0>>2] = 5; - $102 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($102|0); - } - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 240|0); - $12 = (($11) + 3|0); - $13 = HEAP8[$12>>0]|0; - $14 = ($13<<24>>24)!=(0); - if ($14) { - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 240|0); - $17 = (($16) + 28|0); - $18 = HEAP32[$17>>2]|0; - _sqlite3_free($18); - } - $19 = HEAP32[$3>>2]|0; - $20 = $19 & -8; - HEAP32[$3>>2] = $20; - $21 = HEAP32[$3>>2]|0; - $22 = ($21|0)<=(4); - $$ = $22 ? 0 : $20; - HEAP32[$3>>2] = $$; - $23 = HEAP32[$4>>2]|0; - $24 = ($23|0)<(0); - if ($24) { - HEAP32[$4>>2] = 0; - } - $25 = HEAP32[$3>>2]|0; - $26 = ($25|0)==(0); - do { - if ($26) { - label = 9; - } else { - $27 = HEAP32[$4>>2]|0; - $28 = ($27|0)==(0); - if ($28) { - label = 9; - } else { - $29 = HEAP32[$2>>2]|0; - $30 = ($29|0)==(0|0); - if (!($30)) { - $41 = HEAP32[$2>>2]|0; - HEAP32[$pStart>>2] = $41; - break; - } - _sqlite3BeginBenignMalloc(); - $31 = HEAP32[$3>>2]|0; - $32 = HEAP32[$4>>2]|0; - $33 = Math_imul($31, $32)|0; - $34 = (_sqlite3Malloc($33)|0); - HEAP32[$pStart>>2] = $34; - _sqlite3EndBenignMalloc(); - $35 = HEAP32[$pStart>>2]|0; - $36 = ($35|0)!=(0|0); - if ($36) { - $37 = HEAP32[$pStart>>2]|0; - $38 = (_sqlite3MallocSize($37)|0); - $39 = HEAP32[$3>>2]|0; - $40 = (($38|0) / ($39|0))&-1; - HEAP32[$4>>2] = $40; - } - } - } - } while(0); - if ((label|0) == 9) { - HEAP32[$3>>2] = 0; - HEAP32[$pStart>>2] = 0; - } - $42 = HEAP32[$pStart>>2]|0; - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + 240|0); - $45 = (($44) + 28|0); - HEAP32[$45>>2] = $42; - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 240|0); - $48 = (($47) + 24|0); - HEAP32[$48>>2] = 0; - $49 = HEAP32[$3>>2]|0; - $50 = $49&65535; - $51 = HEAP32[$1>>2]|0; - $52 = (($51) + 240|0); - HEAP16[$52>>1] = $50; - $53 = HEAP32[$pStart>>2]|0; - $54 = ($53|0)!=(0|0); - if ($54) { - $55 = HEAP32[$pStart>>2]|0; - HEAP32[$p>>2] = $55; - $56 = HEAP32[$4>>2]|0; - $57 = (($56) - 1)|0; - HEAP32[$i>>2] = $57; - while(1) { - $58 = HEAP32[$i>>2]|0; - $59 = ($58|0)>=(0); - if (!($59)) { - break; - } - $60 = HEAP32[$1>>2]|0; - $61 = (($60) + 240|0); - $62 = (($61) + 24|0); - $63 = HEAP32[$62>>2]|0; - $64 = HEAP32[$p>>2]|0; - HEAP32[$64>>2] = $63; - $65 = HEAP32[$p>>2]|0; - $66 = HEAP32[$1>>2]|0; - $67 = (($66) + 240|0); - $68 = (($67) + 24|0); - HEAP32[$68>>2] = $65; - $69 = HEAP32[$3>>2]|0; - $70 = HEAP32[$p>>2]|0; - $71 = (($70) + ($69)|0); - HEAP32[$p>>2] = $71; - $72 = HEAP32[$i>>2]|0; - $73 = (($72) + -1)|0; - HEAP32[$i>>2] = $73; - } - $74 = HEAP32[$p>>2]|0; - $75 = HEAP32[$1>>2]|0; - $76 = (($75) + 240|0); - $77 = (($76) + 32|0); - HEAP32[$77>>2] = $74; - $78 = HEAP32[$1>>2]|0; - $79 = (($78) + 240|0); - $80 = (($79) + 2|0); - HEAP8[$80>>0] = 1; - $81 = HEAP32[$2>>2]|0; - $82 = ($81|0)==(0|0); - $83 = $82 ? 1 : 0; - $84 = $83&255; - $85 = HEAP32[$1>>2]|0; - $86 = (($85) + 240|0); - $87 = (($86) + 3|0); - HEAP8[$87>>0] = $84; - } else { - $88 = HEAP32[$1>>2]|0; - $89 = HEAP32[$1>>2]|0; - $90 = (($89) + 240|0); - $91 = (($90) + 28|0); - HEAP32[$91>>2] = $88; - $92 = HEAP32[$1>>2]|0; - $93 = HEAP32[$1>>2]|0; - $94 = (($93) + 240|0); - $95 = (($94) + 32|0); - HEAP32[$95>>2] = $92; - $96 = HEAP32[$1>>2]|0; - $97 = (($96) + 240|0); - $98 = (($97) + 2|0); - HEAP8[$98>>0] = 0; - $99 = HEAP32[$1>>2]|0; - $100 = (($99) + 240|0); - $101 = (($100) + 3|0); - HEAP8[$101>>0] = 0; - } - HEAP32[$0>>2] = 0; - $102 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($102|0); -} -function _sqlite3_last_insert_rowid($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 32|0); - $3 = $2; - $4 = $3; - $5 = HEAP32[$4>>2]|0; - $6 = (($3) + 4)|0; - $7 = $6; - $8 = HEAP32[$7>>2]|0; - tempRet0 = $8; - STACKTOP = sp;return ($5|0); -} -function _sqlite3_changes($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 80|0); - $3 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _sqlite3_total_changes($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 84|0); - $3 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _sqlite3_close($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3Close($1,0)|0); - STACKTOP = sp;return ($2|0); -} -function _sqlite3Close($db,$forceZombie) { - $db = $db|0; - $forceZombie = $forceZombie|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $forceZombie; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - HEAP32[$0>>2] = 0; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); - } - $5 = HEAP32[$1>>2]|0; - $6 = (_sqlite3SafetyCheckSickOrOk($5)|0); - $7 = ($6|0)!=(0); - if (!($7)) { - $8 = (_sqlite3MisuseError(121912)|0); - HEAP32[$0>>2] = $8; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); - } - $9 = HEAP32[$1>>2]|0; - _disconnectAllVtab($9); - $10 = HEAP32[$1>>2]|0; - (_sqlite3VtabRollback($10)|0); - $11 = HEAP32[$2>>2]|0; - $12 = ($11|0)!=(0); - if (!($12)) { - $13 = HEAP32[$1>>2]|0; - $14 = (_connectionIsBusy($13)|0); - $15 = ($14|0)!=(0); - if ($15) { - $16 = HEAP32[$1>>2]|0; - _sqlite3Error($16,5,5944,$vararg_buffer); - HEAP32[$0>>2] = 5; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); - } - } - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 76|0); - HEAP32[$18>>2] = 1691352191; - $19 = HEAP32[$1>>2]|0; - _sqlite3LeaveMutexAndCloseZombie($19); - HEAP32[$0>>2] = 0; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); -} -function _sqlite3_close_v2($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3Close($1,1)|0); - STACKTOP = sp;return ($2|0); -} -function _sqlite3_busy_handler($db,$xBusy,$pArg) { - $db = $db|0; - $xBusy = $xBusy|0; - $pArg = $pArg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $xBusy; - HEAP32[$2>>2] = $pArg; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 436|0); - HEAP32[$5>>2] = $3; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 436|0); - $9 = (($8) + 4|0); - HEAP32[$9>>2] = $6; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 436|0); - $12 = (($11) + 8|0); - HEAP32[$12>>2] = 0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 484|0); - HEAP32[$14>>2] = 0; - STACKTOP = sp;return 0; -} -function _sqlite3_busy_timeout($db,$ms) { - $db = $db|0; - $ms = $ms|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $ms; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)>(0); - $4 = HEAP32[$0>>2]|0; - if ($3) { - $5 = HEAP32[$0>>2]|0; - (_sqlite3_busy_handler($4,33,$5)|0); - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 484|0); - HEAP32[$8>>2] = $6; - STACKTOP = sp;return 0; - } else { - (_sqlite3_busy_handler($4,0,0)|0); - STACKTOP = sp;return 0; - } - return 0|0; -} -function _sqliteDefaultBusyCallback($ptr,$count) { - $ptr = $ptr|0; - $count = $count|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $timeout = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $db = sp + 4|0; - $timeout = sp; - HEAP32[$1>>2] = $ptr; - HEAP32[$2>>2] = $count; - $3 = HEAP32[$1>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 484|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$timeout>>2] = $6; - $7 = HEAP32[$2>>2]|0; - $8 = (($7) + 1)|0; - $9 = ($8*1000)|0; - $10 = HEAP32[$timeout>>2]|0; - $11 = ($9|0)>($10|0); - if ($11) { - HEAP32[$0>>2] = 0; - $14 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($14|0); - } else { - $12 = HEAP32[$db>>2]|0; - $13 = HEAP32[$12>>2]|0; - (_sqlite3OsSleep($13,1000000)|0); - HEAP32[$0>>2] = 1; - $14 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($14|0); - } - return 0|0; -} -function _sqlite3CreateFunc($db,$zFunctionName,$nArg,$enc,$pUserData,$xFunc,$xStep,$xFinal,$pDestructor) { - $db = $db|0; - $zFunctionName = $zFunctionName|0; - $nArg = $nArg|0; - $enc = $enc|0; - $pUserData = $pUserData|0; - $xFunc = $xFunc|0; - $xStep = $xStep|0; - $xFinal = $xFinal|0; - $pDestructor = $pDestructor|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; - var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; - var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; - var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; - var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; - var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $extraFlags = 0, $nName = 0, $or$cond = 0, $p = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer = sp; - $0 = sp + 56|0; - $1 = sp + 52|0; - $2 = sp + 48|0; - $3 = sp + 44|0; - $4 = sp + 40|0; - $5 = sp + 36|0; - $6 = sp + 32|0; - $7 = sp + 28|0; - $8 = sp + 24|0; - $9 = sp + 20|0; - $p = sp + 16|0; - $nName = sp + 12|0; - $extraFlags = sp + 8|0; - $rc = sp + 4|0; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $zFunctionName; - HEAP32[$3>>2] = $nArg; - HEAP32[$4>>2] = $enc; - HEAP32[$5>>2] = $pUserData; - HEAP32[$6>>2] = $xFunc; - HEAP32[$7>>2] = $xStep; - HEAP32[$8>>2] = $xFinal; - HEAP32[$9>>2] = $pDestructor; - $10 = HEAP32[$2>>2]|0; - $11 = ($10|0)==(0|0); - do { - if (!($11)) { - $12 = HEAP32[$6>>2]|0; - $13 = ($12|0)!=(0|0); - if ($13) { - $14 = HEAP32[$8>>2]|0; - $15 = ($14|0)!=(0|0); - if ($15) { - break; - } - $16 = HEAP32[$7>>2]|0; - $17 = ($16|0)!=(0|0); - if ($17) { - break; - } - } - $18 = HEAP32[$6>>2]|0; - $19 = ($18|0)!=(0|0); - if (!($19)) { - $20 = HEAP32[$8>>2]|0; - $21 = ($20|0)!=(0|0); - if ($21) { - $22 = HEAP32[$7>>2]|0; - $23 = ($22|0)!=(0|0); - if (!($23)) { - break; - } - } - } - $24 = HEAP32[$6>>2]|0; - $25 = ($24|0)!=(0|0); - if (!($25)) { - $26 = HEAP32[$8>>2]|0; - $27 = ($26|0)!=(0|0); - if (!($27)) { - $28 = HEAP32[$7>>2]|0; - $29 = ($28|0)!=(0|0); - if ($29) { - break; - } - } - } - $30 = HEAP32[$3>>2]|0; - $31 = ($30|0)<(-1); - $32 = HEAP32[$3>>2]|0; - $33 = ($32|0)>(127); - $or$cond = $31 | $33; - if (!($or$cond)) { - $34 = HEAP32[$2>>2]|0; - $35 = (_sqlite3Strlen30($34)|0); - HEAP32[$nName>>2] = $35; - $36 = (255)<($35|0); - if (!($36)) { - $38 = HEAP32[$4>>2]|0; - $39 = $38 & 2048; - HEAP32[$extraFlags>>2] = $39; - $40 = HEAP32[$4>>2]|0; - $41 = $40 & 7; - HEAP32[$4>>2] = $41; - $42 = HEAP32[$4>>2]|0; - $43 = ($42|0)==(4); - do { - if ($43) { - $44 = HEAP8[1392>>0]|0; - $45 = $44 << 24 >> 24; - $46 = ($45|0)==(0); - $47 = $46 ? 3 : 2; - HEAP32[$4>>2] = $47; - } else { - $48 = HEAP32[$4>>2]|0; - $49 = ($48|0)==(5); - if ($49) { - $50 = HEAP32[$1>>2]|0; - $51 = HEAP32[$2>>2]|0; - $52 = HEAP32[$3>>2]|0; - $53 = HEAP32[$extraFlags>>2]|0; - $54 = 1 | $53; - $55 = HEAP32[$5>>2]|0; - $56 = HEAP32[$6>>2]|0; - $57 = HEAP32[$7>>2]|0; - $58 = HEAP32[$8>>2]|0; - $59 = HEAP32[$9>>2]|0; - $60 = (_sqlite3CreateFunc($50,$51,$52,$54,$55,$56,$57,$58,$59)|0); - HEAP32[$rc>>2] = $60; - $61 = HEAP32[$rc>>2]|0; - $62 = ($61|0)==(0); - if ($62) { - $63 = HEAP32[$1>>2]|0; - $64 = HEAP32[$2>>2]|0; - $65 = HEAP32[$3>>2]|0; - $66 = HEAP32[$extraFlags>>2]|0; - $67 = 2 | $66; - $68 = HEAP32[$5>>2]|0; - $69 = HEAP32[$6>>2]|0; - $70 = HEAP32[$7>>2]|0; - $71 = HEAP32[$8>>2]|0; - $72 = HEAP32[$9>>2]|0; - $73 = (_sqlite3CreateFunc($63,$64,$65,$67,$68,$69,$70,$71,$72)|0); - HEAP32[$rc>>2] = $73; - } - $74 = HEAP32[$rc>>2]|0; - $75 = ($74|0)!=(0); - if (!($75)) { - HEAP32[$4>>2] = 3; - break; - } - $76 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $76; - $147 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($147|0); - } - } - } while(0); - $77 = HEAP32[$1>>2]|0; - $78 = HEAP32[$2>>2]|0; - $79 = HEAP32[$nName>>2]|0; - $80 = HEAP32[$3>>2]|0; - $81 = HEAP32[$4>>2]|0; - $82 = $81&255; - $83 = (_sqlite3FindFunction($77,$78,$79,$80,$82,0)|0); - HEAP32[$p>>2] = $83; - $84 = HEAP32[$p>>2]|0; - $85 = ($84|0)!=(0|0); - do { - if ($85) { - $86 = HEAP32[$p>>2]|0; - $87 = (($86) + 2|0); - $88 = HEAP16[$87>>1]|0; - $89 = $88&65535; - $90 = $89 & 3; - $91 = HEAP32[$4>>2]|0; - $92 = ($90|0)==($91|0); - if ($92) { - $93 = HEAP32[$p>>2]|0; - $94 = HEAP16[$93>>1]|0; - $95 = $94 << 16 >> 16; - $96 = HEAP32[$3>>2]|0; - $97 = ($95|0)==($96|0); - if ($97) { - $98 = HEAP32[$1>>2]|0; - $99 = (($98) + 140|0); - $100 = HEAP32[$99>>2]|0; - $101 = ($100|0)!=(0); - $102 = HEAP32[$1>>2]|0; - if (!($101)) { - _sqlite3ExpirePreparedStatements($102); - break; - } - _sqlite3Error($102,5,5000,$vararg_buffer); - HEAP32[$0>>2] = 5; - $147 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($147|0); - } - } - } - } while(0); - $103 = HEAP32[$1>>2]|0; - $104 = HEAP32[$2>>2]|0; - $105 = HEAP32[$nName>>2]|0; - $106 = HEAP32[$3>>2]|0; - $107 = HEAP32[$4>>2]|0; - $108 = $107&255; - $109 = (_sqlite3FindFunction($103,$104,$105,$106,$108,1)|0); - HEAP32[$p>>2] = $109; - $110 = HEAP32[$p>>2]|0; - $111 = ($110|0)!=(0|0); - if (!($111)) { - HEAP32[$0>>2] = 7; - $147 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($147|0); - } - $112 = HEAP32[$1>>2]|0; - $113 = HEAP32[$p>>2]|0; - _functionDestroy($112,$113); - $114 = HEAP32[$9>>2]|0; - $115 = ($114|0)!=(0|0); - if ($115) { - $116 = HEAP32[$9>>2]|0; - $117 = HEAP32[$116>>2]|0; - $118 = (($117) + 1)|0; - HEAP32[$116>>2] = $118; - } - $119 = HEAP32[$9>>2]|0; - $120 = HEAP32[$p>>2]|0; - $121 = (($120) + 32|0); - HEAP32[$121>>2] = $119; - $122 = HEAP32[$p>>2]|0; - $123 = (($122) + 2|0); - $124 = HEAP16[$123>>1]|0; - $125 = $124&65535; - $126 = $125 & 3; - $127 = HEAP32[$extraFlags>>2]|0; - $128 = $126 | $127; - $129 = $128&65535; - $130 = HEAP32[$p>>2]|0; - $131 = (($130) + 2|0); - HEAP16[$131>>1] = $129; - $132 = HEAP32[$6>>2]|0; - $133 = HEAP32[$p>>2]|0; - $134 = (($133) + 12|0); - HEAP32[$134>>2] = $132; - $135 = HEAP32[$7>>2]|0; - $136 = HEAP32[$p>>2]|0; - $137 = (($136) + 16|0); - HEAP32[$137>>2] = $135; - $138 = HEAP32[$8>>2]|0; - $139 = HEAP32[$p>>2]|0; - $140 = (($139) + 20|0); - HEAP32[$140>>2] = $138; - $141 = HEAP32[$5>>2]|0; - $142 = HEAP32[$p>>2]|0; - $143 = (($142) + 4|0); - HEAP32[$143>>2] = $141; - $144 = HEAP32[$3>>2]|0; - $145 = $144&65535; - $146 = HEAP32[$p>>2]|0; - HEAP16[$146>>1] = $145; - HEAP32[$0>>2] = 0; - $147 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($147|0); - } - } - } - } while(0); - $37 = (_sqlite3MisuseError(122454)|0); - HEAP32[$0>>2] = $37; - $147 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($147|0); -} -function _sqlite3_overload_function($db,$zName,$nArg) { - $db = $db|0; - $zName = $zName|0; - $nArg = $nArg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nName = 0; - var $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $nName = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $zName; - HEAP32[$2>>2] = $nArg; - $3 = HEAP32[$1>>2]|0; - $4 = (_sqlite3Strlen30($3)|0); - HEAP32[$nName>>2] = $4; - HEAP32[$rc>>2] = 0; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$nName>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = (_sqlite3FindFunction($5,$6,$7,$8,1,0)|0); - $10 = ($9|0)==(0|0); - if ($10) { - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = (_sqlite3CreateFunc($11,$12,$13,1,0,51,0,0,0)|0); - HEAP32[$rc>>2] = $14; - } - $15 = HEAP32[$0>>2]|0; - $16 = HEAP32[$rc>>2]|0; - $17 = (_sqlite3ApiExit($15,$16)|0); - HEAP32[$rc>>2] = $17; - $18 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($18|0); -} -function _sqlite3FindFunction($db,$zName,$nName,$nArg,$enc,$createFlag) { - $db = $db|0; - $zName = $zName|0; - $nName = $nName|0; - $nArg = $nArg|0; - $enc = $enc|0; - $createFlag = $createFlag|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $12 = 0, $13 = 0; - var $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; - var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; - var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; - var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; - var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bestScore = 0, $h = 0, $p = 0, $pBest = 0, $pHash = 0, $score = 0; - var $score1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $4 = sp + 28|0; - $5 = sp + 49|0; - $6 = sp + 48|0; - $p = sp + 24|0; - $pBest = sp + 20|0; - $bestScore = sp + 16|0; - $h = sp + 12|0; - $score = sp + 8|0; - $pHash = sp + 4|0; - $score1 = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $zName; - HEAP32[$3>>2] = $nName; - HEAP32[$4>>2] = $nArg; - HEAP8[$5>>0] = $enc; - HEAP8[$6>>0] = $createFlag; - HEAP32[$pBest>>2] = 0; - HEAP32[$bestScore>>2] = 0; - $7 = HEAP32[$2>>2]|0; - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - $10 = (696 + ($9)|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = HEAP32[$3>>2]|0; - $14 = (($12) + ($13))|0; - $15 = (($14|0) % 23)&-1; - HEAP32[$h>>2] = $15; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 328|0); - $18 = HEAP32[$h>>2]|0; - $19 = HEAP32[$2>>2]|0; - $20 = HEAP32[$3>>2]|0; - $21 = (_functionSearch($17,$18,$19,$20)|0); - HEAP32[$p>>2] = $21; - while(1) { - $22 = HEAP32[$p>>2]|0; - $23 = ($22|0)!=(0|0); - if (!($23)) { - break; - } - $24 = HEAP32[$p>>2]|0; - $25 = HEAP32[$4>>2]|0; - $26 = HEAP8[$5>>0]|0; - $27 = (_matchQuality($24,$25,$26)|0); - HEAP32[$score>>2] = $27; - $28 = HEAP32[$score>>2]|0; - $29 = HEAP32[$bestScore>>2]|0; - $30 = ($28|0)>($29|0); - if ($30) { - $31 = HEAP32[$p>>2]|0; - HEAP32[$pBest>>2] = $31; - $32 = HEAP32[$score>>2]|0; - HEAP32[$bestScore>>2] = $32; - } - $33 = HEAP32[$p>>2]|0; - $34 = (($33) + 8|0); - $35 = HEAP32[$34>>2]|0; - HEAP32[$p>>2] = $35; - } - $36 = HEAP8[$6>>0]|0; - $37 = ($36<<24>>24)!=(0); - L8: do { - if (!($37)) { - $38 = HEAP32[$pBest>>2]|0; - $39 = ($38|0)==(0|0); - if (!($39)) { - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 24|0); - $42 = HEAP32[$41>>2]|0; - $43 = $42 & 2097152; - $44 = ($43|0)!=(0); - if (!($44)) { - break; - } - } - HEAP32[$pHash>>2] = 1576; - HEAP32[$bestScore>>2] = 0; - $45 = HEAP32[$pHash>>2]|0; - $46 = HEAP32[$h>>2]|0; - $47 = HEAP32[$2>>2]|0; - $48 = HEAP32[$3>>2]|0; - $49 = (_functionSearch($45,$46,$47,$48)|0); - HEAP32[$p>>2] = $49; - while(1) { - $50 = HEAP32[$p>>2]|0; - $51 = ($50|0)!=(0|0); - if (!($51)) { - break L8; - } - $52 = HEAP32[$p>>2]|0; - $53 = HEAP32[$4>>2]|0; - $54 = HEAP8[$5>>0]|0; - $55 = (_matchQuality($52,$53,$54)|0); - HEAP32[$score1>>2] = $55; - $56 = HEAP32[$score1>>2]|0; - $57 = HEAP32[$bestScore>>2]|0; - $58 = ($56|0)>($57|0); - if ($58) { - $59 = HEAP32[$p>>2]|0; - HEAP32[$pBest>>2] = $59; - $60 = HEAP32[$score1>>2]|0; - HEAP32[$bestScore>>2] = $60; - } - $61 = HEAP32[$p>>2]|0; - $62 = (($61) + 8|0); - $63 = HEAP32[$62>>2]|0; - HEAP32[$p>>2] = $63; - } - } - } while(0); - $64 = HEAP8[$6>>0]|0; - $65 = $64&255; - $66 = ($65|0)!=(0); - if ($66) { - $67 = HEAP32[$bestScore>>2]|0; - $68 = ($67|0)<(6); - if ($68) { - $69 = HEAP32[$1>>2]|0; - $70 = HEAP32[$3>>2]|0; - $71 = (36 + ($70))|0; - $72 = (($71) + 1)|0; - $73 = (_sqlite3DbMallocZero($69,$72)|0); - HEAP32[$pBest>>2] = $73; - $74 = ($73|0)!=(0|0); - if ($74) { - $75 = HEAP32[$pBest>>2]|0; - $76 = (($75) + 36|0); - $77 = HEAP32[$pBest>>2]|0; - $78 = (($77) + 24|0); - HEAP32[$78>>2] = $76; - $79 = HEAP32[$4>>2]|0; - $80 = $79&65535; - $81 = HEAP32[$pBest>>2]|0; - HEAP16[$81>>1] = $80; - $82 = HEAP8[$5>>0]|0; - $83 = $82&255; - $84 = HEAP32[$pBest>>2]|0; - $85 = (($84) + 2|0); - HEAP16[$85>>1] = $83; - $86 = HEAP32[$pBest>>2]|0; - $87 = (($86) + 24|0); - $88 = HEAP32[$87>>2]|0; - $89 = HEAP32[$2>>2]|0; - $90 = HEAP32[$3>>2]|0; - _memcpy(($88|0),($89|0),($90|0))|0; - $91 = HEAP32[$3>>2]|0; - $92 = HEAP32[$pBest>>2]|0; - $93 = (($92) + 24|0); - $94 = HEAP32[$93>>2]|0; - $95 = (($94) + ($91)|0); - HEAP8[$95>>0] = 0; - $96 = HEAP32[$1>>2]|0; - $97 = (($96) + 328|0); - $98 = HEAP32[$pBest>>2]|0; - _sqlite3FuncDefInsert($97,$98); - } - } - } - $99 = HEAP32[$pBest>>2]|0; - $100 = ($99|0)!=(0|0); - do { - if ($100) { - $101 = HEAP32[$pBest>>2]|0; - $102 = (($101) + 16|0); - $103 = HEAP32[$102>>2]|0; - $104 = ($103|0)!=(0|0); - if (!($104)) { - $105 = HEAP32[$pBest>>2]|0; - $106 = (($105) + 12|0); - $107 = HEAP32[$106>>2]|0; - $108 = ($107|0)!=(0|0); - if (!($108)) { - $109 = HEAP8[$6>>0]|0; - $110 = $109&255; - $111 = ($110|0)!=(0); - if (!($111)) { - break; - } - } - } - $112 = HEAP32[$pBest>>2]|0; - HEAP32[$0>>2] = $112; - $113 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($113|0); - } - } while(0); - HEAP32[$0>>2] = 0; - $113 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($113|0); -} -function _sqlite3InvalidFunction($context,$NotUsed,$NotUsed2) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $NotUsed2 = $NotUsed2|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $zErr = 0, $zName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $zName = sp + 8|0; - $zErr = sp + 4|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $NotUsed2; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (($4) + 24|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$zName>>2] = $6; - $7 = HEAP32[$zName>>2]|0; - HEAP32[$vararg_buffer>>2] = $7; - $8 = (_sqlite3_mprintf(4880,$vararg_buffer)|0); - HEAP32[$zErr>>2] = $8; - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$zErr>>2]|0; - _sqlite3_result_error($9,$10,-1); - $11 = HEAP32[$zErr>>2]|0; - _sqlite3_free($11); - STACKTOP = sp;return; -} -function _sqlite3_wal_autocheckpoint($db,$nFrame) { - $db = $db|0; - $nFrame = $nFrame|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $nFrame; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)>(0); - $4 = HEAP32[$0>>2]|0; - if ($3) { - $5 = HEAP32[$1>>2]|0; - $6 = $5; - (_sqlite3_wal_hook($4,5,$6)|0); - STACKTOP = sp;return 0; - } else { - (_sqlite3_wal_hook($4,0,0)|0); - STACKTOP = sp;return 0; - } - return 0|0; -} -function _sqlite3_wal_hook($db,$xCallback,$pArg) { - $db = $db|0; - $xCallback = $xCallback|0; - $pArg = $pArg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pRet = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pRet = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $xCallback; - HEAP32[$2>>2] = $pArg; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 208|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pRet>>2] = $5; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 204|0); - HEAP32[$8>>2] = $6; - $9 = HEAP32[$2>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 208|0); - HEAP32[$11>>2] = $9; - $12 = HEAP32[$pRet>>2]|0; - STACKTOP = sp;return ($12|0); -} -function _sqlite3WalDefaultHook($pClientData,$db,$zDb,$nFrame) { - $pClientData = $pClientData|0; - $db = $db|0; - $zDb = $zDb|0; - $nFrame = $nFrame|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$0>>2] = $pClientData; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $zDb; - HEAP32[$3>>2] = $nFrame; - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$0>>2]|0; - $6 = $5; - $7 = ($4|0)>=($6|0); - if (!($7)) { - STACKTOP = sp;return 0; - } - _sqlite3BeginBenignMalloc(); - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$2>>2]|0; - (_sqlite3_wal_checkpoint($8,$9)|0); - _sqlite3EndBenignMalloc(); - STACKTOP = sp;return 0; -} -function _sqlite3_wal_checkpoint_v2($db,$zDb,$eMode,$pnLog,$pnCkpt) { - $db = $db|0; - $zDb = $zDb|0; - $eMode = $eMode|0; - $pnLog = $pnLog|0; - $pnCkpt = $pnCkpt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $iDb = 0, $or$cond = 0, $rc = 0, $vararg_buffer2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer2 = sp; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $4 = sp + 16|0; - $5 = sp + 12|0; - $rc = sp + 8|0; - $iDb = sp + 4|0; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $zDb; - HEAP32[$3>>2] = $eMode; - HEAP32[$4>>2] = $pnLog; - HEAP32[$5>>2] = $pnCkpt; - HEAP32[$iDb>>2] = 10; - $6 = HEAP32[$4>>2]|0; - $7 = ($6|0)!=(0|0); - if ($7) { - $8 = HEAP32[$4>>2]|0; - HEAP32[$8>>2] = -1; - } - $9 = HEAP32[$5>>2]|0; - $10 = ($9|0)!=(0|0); - if ($10) { - $11 = HEAP32[$5>>2]|0; - HEAP32[$11>>2] = -1; - } - $12 = HEAP32[$3>>2]|0; - $13 = ($12|0)<(0); - $14 = HEAP32[$3>>2]|0; - $15 = ($14|0)>(2); - $or$cond = $13 | $15; - if ($or$cond) { - HEAP32[$0>>2] = 21; - $41 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($41|0); - } - $16 = HEAP32[$2>>2]|0; - $17 = ($16|0)!=(0|0); - if ($17) { - $18 = HEAP32[$2>>2]|0; - $19 = HEAP8[$18>>0]|0; - $20 = $19 << 24 >> 24; - $21 = ($20|0)!=(0); - if ($21) { - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$2>>2]|0; - $24 = (_sqlite3FindDbName($22,$23)|0); - HEAP32[$iDb>>2] = $24; - } - } - $25 = HEAP32[$iDb>>2]|0; - $26 = ($25|0)<(0); - if ($26) { - HEAP32[$rc>>2] = 1; - $27 = HEAP32[$1>>2]|0; - $28 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer2>>2] = $28; - _sqlite3Error($27,1,1672,$vararg_buffer2); - } else { - $29 = HEAP32[$1>>2]|0; - $30 = HEAP32[$iDb>>2]|0; - $31 = HEAP32[$3>>2]|0; - $32 = HEAP32[$4>>2]|0; - $33 = HEAP32[$5>>2]|0; - $34 = (_sqlite3Checkpoint($29,$30,$31,$32,$33)|0); - HEAP32[$rc>>2] = $34; - $35 = HEAP32[$1>>2]|0; - $36 = HEAP32[$rc>>2]|0; - _sqlite3Error($35,$36,0,$vararg_buffer2); - } - $37 = HEAP32[$1>>2]|0; - $38 = HEAP32[$rc>>2]|0; - $39 = (_sqlite3ApiExit($37,$38)|0); - HEAP32[$rc>>2] = $39; - $40 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $40; - $41 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($41|0); -} -function _sqlite3FindDbName($db,$zName) { - $db = $db|0; - $zName = $zName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $n = 0, $pDb = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $i = sp + 8|0; - $pDb = sp + 4|0; - $n = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $zName; - HEAP32[$i>>2] = -1; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - $31 = HEAP32[$i>>2]|0; - STACKTOP = sp;return ($31|0); - } - $4 = HEAP32[$1>>2]|0; - $5 = (_sqlite3Strlen30($4)|0); - HEAP32[$n>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 20|0); - $8 = HEAP32[$7>>2]|0; - $9 = (($8) - 1)|0; - HEAP32[$i>>2] = $9; - $10 = HEAP32[$i>>2]|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 16|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + ($10<<4)|0); - HEAP32[$pDb>>2] = $14; - while(1) { - $15 = HEAP32[$i>>2]|0; - $16 = ($15|0)>=(0); - if (!($16)) { - label = 7; - break; - } - $17 = HEAP32[$n>>2]|0; - $18 = HEAP32[$pDb>>2]|0; - $19 = HEAP32[$18>>2]|0; - $20 = (_sqlite3Strlen30($19)|0); - $21 = ($17|0)==($20|0); - if ($21) { - $22 = HEAP32[$pDb>>2]|0; - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$1>>2]|0; - $25 = (_sqlite3_stricmp($23,$24)|0); - $26 = (0)==($25|0); - if ($26) { - label = 7; - break; - } - } - $27 = HEAP32[$i>>2]|0; - $28 = (($27) + -1)|0; - HEAP32[$i>>2] = $28; - $29 = HEAP32[$pDb>>2]|0; - $30 = (($29) + -16|0); - HEAP32[$pDb>>2] = $30; - } - if ((label|0) == 7) { - $31 = HEAP32[$i>>2]|0; - STACKTOP = sp;return ($31|0); - } - return 0|0; -} -function _sqlite3Checkpoint($db,$iDb,$eMode,$pnLog,$pnCkpt) { - $db = $db|0; - $iDb = $iDb|0; - $eMode = $eMode|0; - $pnLog = $pnLog|0; - $pnCkpt = $pnCkpt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $bBusy = 0, $i = 0; - var $or$cond = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $rc = sp + 8|0; - $i = sp + 4|0; - $bBusy = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $iDb; - HEAP32[$2>>2] = $eMode; - HEAP32[$3>>2] = $pnLog; - HEAP32[$4>>2] = $pnCkpt; - HEAP32[$rc>>2] = 0; - HEAP32[$bBusy>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $5 = HEAP32[$i>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 20|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($5|0)<($8|0); - if (!($9)) { - break; - } - $10 = HEAP32[$rc>>2]|0; - $11 = ($10|0)==(0); - if (!($11)) { - break; - } - $12 = HEAP32[$i>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = ($12|0)==($13|0); - $15 = HEAP32[$1>>2]|0; - $16 = ($15|0)==(10); - $or$cond = $14 | $16; - if ($or$cond) { - $17 = HEAP32[$i>>2]|0; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 16|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($20) + ($17<<4)|0); - $22 = (($21) + 4|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$2>>2]|0; - $25 = HEAP32[$3>>2]|0; - $26 = HEAP32[$4>>2]|0; - $27 = (_sqlite3BtreeCheckpoint($23,$24,$25,$26)|0); - HEAP32[$rc>>2] = $27; - HEAP32[$3>>2] = 0; - HEAP32[$4>>2] = 0; - $28 = HEAP32[$rc>>2]|0; - $29 = ($28|0)==(5); - if ($29) { - HEAP32[$bBusy>>2] = 1; - HEAP32[$rc>>2] = 0; - } - } - $30 = HEAP32[$i>>2]|0; - $31 = (($30) + 1)|0; - HEAP32[$i>>2] = $31; - } - $32 = HEAP32[$rc>>2]|0; - $33 = ($32|0)==(0); - if ($33) { - $34 = HEAP32[$bBusy>>2]|0; - $35 = ($34|0)!=(0); - if ($35) { - $37 = 5; - STACKTOP = sp;return ($37|0); - } - } - $36 = HEAP32[$rc>>2]|0; - $37 = $36; - STACKTOP = sp;return ($37|0); -} -function _sqlite3_wal_checkpoint($db,$zDb) { - $db = $db|0; - $zDb = $zDb|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $zDb; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_sqlite3_wal_checkpoint_v2($2,$3,0,0,0)|0); - STACKTOP = sp;return ($4|0); -} -function _sqlite3SafetyCheckSickOrOk($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $magic = 0, $or$cond = 0, $or$cond3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $magic = sp; - HEAP32[$1>>2] = $db; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 76|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$magic>>2] = $4; - $5 = HEAP32[$magic>>2]|0; - $6 = ($5|0)!=(1266094736); - $7 = HEAP32[$magic>>2]|0; - $8 = ($7|0)!=(-1607883113); - $or$cond = $6 & $8; - $9 = HEAP32[$magic>>2]|0; - $10 = ($9|0)!=(-264537850); - $or$cond3 = $or$cond & $10; - if ($or$cond3) { - _logBadConnection(4824); - HEAP32[$0>>2] = 0; - $11 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($11|0); - } else { - HEAP32[$0>>2] = 1; - $11 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($11|0); - } - return 0|0; -} -function _sqlite3_open($zFilename,$ppDb) { - $zFilename = $zFilename|0; - $ppDb = $ppDb|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $zFilename; - HEAP32[$1>>2] = $ppDb; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_openDatabase($2,$3,6,0)|0); - STACKTOP = sp;return ($4|0); -} -function _openDatabase($zFilename,$ppDb,$flags,$zVfs) { - $zFilename = $zFilename|0; - $ppDb = $ppDb|0; - $flags = $flags|0; - $zVfs = $zVfs|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; - var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; - var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; - var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; - var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $isThreadsafe = 0, $rc = 0, $vararg_buffer5 = 0, $zErrMsg = 0, $zOpen = 0, dest = 0, label = 0, sp = 0, src = 0; - var stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer5 = sp; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $4 = sp + 24|0; - $db = sp + 20|0; - $rc = sp + 16|0; - $isThreadsafe = sp + 12|0; - $zOpen = sp + 8|0; - $zErrMsg = sp + 4|0; - HEAP32[$1>>2] = $zFilename; - HEAP32[$2>>2] = $ppDb; - HEAP32[$3>>2] = $flags; - HEAP32[$4>>2] = $zVfs; - HEAP32[$zOpen>>2] = 0; - HEAP32[$zErrMsg>>2] = 0; - $5 = HEAP32[$2>>2]|0; - HEAP32[$5>>2] = 0; - $6 = (_sqlite3_initialize()|0); - HEAP32[$rc>>2] = $6; - $7 = HEAP32[$rc>>2]|0; - $8 = ($7|0)!=(0); - if ($8) { - $9 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $9; - $209 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($209|0); - } - $10 = HEAP32[$3>>2]|0; - $11 = $10 & 7; - $12 = 1 << $11; - $13 = $12 & 70; - $14 = ($13|0)==(0); - if ($14) { - $15 = (_sqlite3MisuseError(123516)|0); - HEAP32[$0>>2] = $15; - $209 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($209|0); - } - $16 = HEAP32[((38512 + 4|0))>>2]|0; - $17 = ($16|0)==(0); - do { - if ($17) { - HEAP32[$isThreadsafe>>2] = 0; - } else { - $18 = HEAP32[$3>>2]|0; - $19 = $18 & 32768; - $20 = ($19|0)!=(0); - if ($20) { - HEAP32[$isThreadsafe>>2] = 0; - break; - } - $21 = HEAP32[$3>>2]|0; - $22 = $21 & 65536; - $23 = ($22|0)!=(0); - if ($23) { - HEAP32[$isThreadsafe>>2] = 1; - break; - } else { - $24 = HEAP32[((38512 + 8|0))>>2]|0; - HEAP32[$isThreadsafe>>2] = $24; - break; - } - } - } while(0); - $25 = HEAP32[$3>>2]|0; - $26 = $25 & 262144; - $27 = ($26|0)!=(0); - if ($27) { - $28 = HEAP32[$3>>2]|0; - $29 = $28 & -131073; - HEAP32[$3>>2] = $29; - } else { - $30 = HEAP32[((38512 + 220|0))>>2]|0; - $31 = ($30|0)!=(0); - if ($31) { - $32 = HEAP32[$3>>2]|0; - $33 = $32 | 131072; - HEAP32[$3>>2] = $33; - } - } - $34 = HEAP32[$3>>2]|0; - $35 = $34 & -655129; - HEAP32[$3>>2] = $35; - $36 = (_sqlite3MallocZero(520)|0); - HEAP32[$db>>2] = $36; - $37 = HEAP32[$db>>2]|0; - $38 = ($37|0)==(0|0); - do { - if (!($38)) { - $39 = HEAP32[$isThreadsafe>>2]|0; - $40 = ($39|0)!=(0); - if ($40) { - $41 = HEAP32[$db>>2]|0; - $42 = (($41) + 12|0); - HEAP32[$42>>2] = (8); - $43 = HEAP32[$db>>2]|0; - $44 = (($43) + 12|0); - $45 = HEAP32[$44>>2]|0; - $46 = ($45|0)==(0|0); - if ($46) { - $47 = HEAP32[$db>>2]|0; - _sqlite3_free($47); - HEAP32[$db>>2] = 0; - break; - } - } - $48 = HEAP32[$db>>2]|0; - $49 = (($48) + 56|0); - HEAP32[$49>>2] = 255; - $50 = HEAP32[$db>>2]|0; - $51 = (($50) + 20|0); - HEAP32[$51>>2] = 2; - $52 = HEAP32[$db>>2]|0; - $53 = (($52) + 76|0); - HEAP32[$53>>2] = -264537850; - $54 = HEAP32[$db>>2]|0; - $55 = (($54) + 448|0); - $56 = HEAP32[$db>>2]|0; - $57 = (($56) + 16|0); - HEAP32[$57>>2] = $55; - $58 = HEAP32[$db>>2]|0; - $59 = (($58) + 88|0); - dest=$59+0|0; src=1696+0|0; stop=dest+44|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $60 = HEAP32[$db>>2]|0; - $61 = (($60) + 62|0); - HEAP8[$61>>0] = 1; - $62 = HEAP32[$db>>2]|0; - $63 = (($62) + 66|0); - HEAP8[$63>>0] = -1; - $64 = ((38512 + 176|0)); - $65 = $64; - $66 = HEAP32[$65>>2]|0; - $67 = (($64) + 4)|0; - $68 = $67; - $69 = HEAP32[$68>>2]|0; - $70 = HEAP32[$db>>2]|0; - $71 = (($70) + 40|0); - $72 = $71; - $73 = $72; - HEAP32[$73>>2] = $66; - $74 = (($72) + 4)|0; - $75 = $74; - HEAP32[$75>>2] = $69; - $76 = HEAP32[$db>>2]|0; - $77 = (($76) + 72|0); - HEAP32[$77>>2] = 0; - $78 = HEAP32[$db>>2]|0; - $79 = (($78) + 24|0); - $80 = HEAP32[$79>>2]|0; - $81 = $80 | 9437264; - HEAP32[$79>>2] = $81; - $82 = HEAP32[$db>>2]|0; - $83 = (($82) + 420|0); - _sqlite3HashInit($83); - $84 = HEAP32[$db>>2]|0; - $85 = (($84) + 300|0); - _sqlite3HashInit($85); - $86 = HEAP32[$db>>2]|0; - (_createCollation($86,3320,1,0,8,0)|0); - $87 = HEAP32[$db>>2]|0; - (_createCollation($87,3320,3,0,8,0)|0); - $88 = HEAP32[$db>>2]|0; - (_createCollation($88,3320,2,0,8,0)|0); - $89 = HEAP32[$db>>2]|0; - (_createCollation($89,3328,1,(1),8,0)|0); - $90 = HEAP32[$db>>2]|0; - $91 = (($90) + 64|0); - $92 = HEAP8[$91>>0]|0; - $93 = ($92<<24>>24)!=(0); - if (!($93)) { - $94 = HEAP32[$db>>2]|0; - $95 = (_sqlite3FindCollSeq($94,1,3320,0)|0); - $96 = HEAP32[$db>>2]|0; - $97 = (($96) + 8|0); - HEAP32[$97>>2] = $95; - $98 = HEAP32[$db>>2]|0; - (_createCollation($98,3336,1,0,9,0)|0); - $99 = HEAP32[$3>>2]|0; - $100 = HEAP32[$db>>2]|0; - $101 = (($100) + 48|0); - HEAP32[$101>>2] = $99; - $102 = HEAP32[$4>>2]|0; - $103 = HEAP32[$1>>2]|0; - $104 = HEAP32[$db>>2]|0; - $105 = (_sqlite3ParseUri($102,$103,$3,$104,$zOpen,$zErrMsg)|0); - HEAP32[$rc>>2] = $105; - $106 = HEAP32[$rc>>2]|0; - $107 = ($106|0)!=(0); - if ($107) { - $108 = HEAP32[$rc>>2]|0; - $109 = ($108|0)==(7); - if ($109) { - $110 = HEAP32[$db>>2]|0; - $111 = (($110) + 64|0); - HEAP8[$111>>0] = 1; - } - $112 = HEAP32[$db>>2]|0; - $113 = HEAP32[$rc>>2]|0; - $114 = HEAP32[$zErrMsg>>2]|0; - $115 = ($114|0)!=(0|0); - $116 = $115 ? 1456 : 0; - $117 = HEAP32[$zErrMsg>>2]|0; - HEAP32[$vararg_buffer5>>2] = $117; - _sqlite3Error($112,$113,$116,$vararg_buffer5); - $118 = HEAP32[$zErrMsg>>2]|0; - _sqlite3_free($118); - break; - } - $119 = HEAP32[$db>>2]|0; - $120 = HEAP32[$119>>2]|0; - $121 = HEAP32[$zOpen>>2]|0; - $122 = HEAP32[$db>>2]|0; - $123 = HEAP32[$db>>2]|0; - $124 = (($123) + 16|0); - $125 = HEAP32[$124>>2]|0; - $126 = (($125) + 4|0); - $127 = HEAP32[$3>>2]|0; - $128 = $127 | 256; - $129 = (_sqlite3BtreeOpen($120,$121,$122,$126,0,$128)|0); - HEAP32[$rc>>2] = $129; - $130 = HEAP32[$rc>>2]|0; - $131 = ($130|0)!=(0); - if ($131) { - $132 = HEAP32[$rc>>2]|0; - $133 = ($132|0)==(3082); - if ($133) { - HEAP32[$rc>>2] = 7; - } - $134 = HEAP32[$db>>2]|0; - $135 = HEAP32[$rc>>2]|0; - _sqlite3Error($134,$135,0,$vararg_buffer5); - break; - } - $136 = HEAP32[$db>>2]|0; - $137 = HEAP32[$db>>2]|0; - $138 = (($137) + 16|0); - $139 = HEAP32[$138>>2]|0; - $140 = (($139) + 4|0); - $141 = HEAP32[$140>>2]|0; - $142 = (_sqlite3SchemaGet($136,$141)|0); - $143 = HEAP32[$db>>2]|0; - $144 = (($143) + 16|0); - $145 = HEAP32[$144>>2]|0; - $146 = (($145) + 12|0); - HEAP32[$146>>2] = $142; - $147 = HEAP32[$db>>2]|0; - $148 = (_sqlite3SchemaGet($147,0)|0); - $149 = HEAP32[$db>>2]|0; - $150 = (($149) + 16|0); - $151 = HEAP32[$150>>2]|0; - $152 = (($151) + 16|0); - $153 = (($152) + 12|0); - HEAP32[$153>>2] = $148; - $154 = HEAP32[$db>>2]|0; - $155 = (($154) + 16|0); - $156 = HEAP32[$155>>2]|0; - HEAP32[$156>>2] = 3344; - $157 = HEAP32[$db>>2]|0; - $158 = (($157) + 16|0); - $159 = HEAP32[$158>>2]|0; - $160 = (($159) + 8|0); - HEAP8[$160>>0] = 3; - $161 = HEAP32[$db>>2]|0; - $162 = (($161) + 16|0); - $163 = HEAP32[$162>>2]|0; - $164 = (($163) + 16|0); - HEAP32[$164>>2] = 1496; - $165 = HEAP32[$db>>2]|0; - $166 = (($165) + 16|0); - $167 = HEAP32[$166>>2]|0; - $168 = (($167) + 16|0); - $169 = (($168) + 8|0); - HEAP8[$169>>0] = 1; - $170 = HEAP32[$db>>2]|0; - $171 = (($170) + 76|0); - HEAP32[$171>>2] = -1607883113; - $172 = HEAP32[$db>>2]|0; - $173 = (($172) + 64|0); - $174 = HEAP8[$173>>0]|0; - $175 = ($174<<24>>24)!=(0); - if (!($175)) { - $176 = HEAP32[$db>>2]|0; - _sqlite3Error($176,0,0,$vararg_buffer5); - $177 = HEAP32[$db>>2]|0; - _sqlite3RegisterBuiltinFunctions($177); - $178 = HEAP32[$db>>2]|0; - $179 = (_sqlite3_errcode($178)|0); - HEAP32[$rc>>2] = $179; - $180 = HEAP32[$rc>>2]|0; - $181 = ($180|0)==(0); - if ($181) { - $182 = HEAP32[$db>>2]|0; - _sqlite3AutoLoadExtensions($182); - $183 = HEAP32[$db>>2]|0; - $184 = (_sqlite3_errcode($183)|0); - HEAP32[$rc>>2] = $184; - $185 = HEAP32[$rc>>2]|0; - $186 = ($185|0)!=(0); - if ($186) { - break; - } - } - $187 = HEAP32[$rc>>2]|0; - $188 = ($187|0)!=(0); - if ($188) { - $189 = HEAP32[$db>>2]|0; - $190 = HEAP32[$rc>>2]|0; - _sqlite3Error($189,$190,0,$vararg_buffer5); - } - $191 = HEAP32[$db>>2]|0; - $192 = HEAP32[((38512 + 28|0))>>2]|0; - $193 = HEAP32[((38512 + 32|0))>>2]|0; - (_setupLookaside($191,0,$192,$193)|0); - $194 = HEAP32[$db>>2]|0; - (_sqlite3_wal_autocheckpoint($194,1000)|0); - } - } - } - } while(0); - $195 = HEAP32[$zOpen>>2]|0; - _sqlite3_free($195); - $196 = HEAP32[$db>>2]|0; - $197 = (_sqlite3_errcode($196)|0); - HEAP32[$rc>>2] = $197; - $198 = HEAP32[$rc>>2]|0; - $199 = ($198|0)==(7); - if ($199) { - $200 = HEAP32[$db>>2]|0; - (_sqlite3_close($200)|0); - HEAP32[$db>>2] = 0; - } else { - $201 = HEAP32[$rc>>2]|0; - $202 = ($201|0)!=(0); - if ($202) { - $203 = HEAP32[$db>>2]|0; - $204 = (($203) + 76|0); - HEAP32[$204>>2] = 1266094736; - } - } - $205 = HEAP32[$db>>2]|0; - $206 = HEAP32[$2>>2]|0; - HEAP32[$206>>2] = $205; - $207 = HEAP32[$rc>>2]|0; - $208 = (_sqlite3ApiExit(0,$207)|0); - HEAP32[$0>>2] = $208; - $209 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($209|0); -} -function _createCollation($db,$zName,$enc,$pCtx,$xCompare,$xDel) { - $db = $db|0; - $zName = $zName|0; - $enc = $enc|0; - $pCtx = $pCtx|0; - $xCompare = $xCompare|0; - $xDel = $xDel|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; - var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; - var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; - var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; - var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; - var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aColl = 0, $enc2 = 0, $j = 0, $nName = 0, $or$cond = 0, $or$cond3 = 0, $p = 0, $pColl = 0, $vararg_buffer4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer4 = sp; - $0 = sp + 48|0; - $1 = sp + 44|0; - $2 = sp + 40|0; - $3 = sp + 52|0; - $4 = sp + 36|0; - $5 = sp + 32|0; - $6 = sp + 28|0; - $pColl = sp + 24|0; - $enc2 = sp + 20|0; - $nName = sp + 16|0; - $aColl = sp + 12|0; - $j = sp + 8|0; - $p = sp + 4|0; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $zName; - HEAP8[$3>>0] = $enc; - HEAP32[$4>>2] = $pCtx; - HEAP32[$5>>2] = $xCompare; - HEAP32[$6>>2] = $xDel; - $7 = HEAP32[$2>>2]|0; - $8 = (_sqlite3Strlen30($7)|0); - HEAP32[$nName>>2] = $8; - $9 = HEAP8[$3>>0]|0; - $10 = $9&255; - HEAP32[$enc2>>2] = $10; - $11 = HEAP32[$enc2>>2]|0; - $12 = ($11|0)==(4); - $13 = HEAP32[$enc2>>2]|0; - $14 = ($13|0)==(8); - $or$cond = $12 | $14; - if ($or$cond) { - $15 = HEAP8[1392>>0]|0; - $16 = $15 << 24 >> 24; - $17 = ($16|0)==(0); - $18 = $17 ? 3 : 2; - HEAP32[$enc2>>2] = $18; - } - $19 = HEAP32[$enc2>>2]|0; - $20 = ($19|0)<(1); - $21 = HEAP32[$enc2>>2]|0; - $22 = ($21|0)>(3); - $or$cond3 = $20 | $22; - if ($or$cond3) { - $23 = (_sqlite3MisuseError(123094)|0); - HEAP32[$0>>2] = $23; - $106 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($106|0); - } - $24 = HEAP32[$1>>2]|0; - $25 = HEAP32[$enc2>>2]|0; - $26 = $25&255; - $27 = HEAP32[$2>>2]|0; - $28 = (_sqlite3FindCollSeq($24,$26,$27,0)|0); - HEAP32[$pColl>>2] = $28; - $29 = HEAP32[$pColl>>2]|0; - $30 = ($29|0)!=(0|0); - L8: do { - if ($30) { - $31 = HEAP32[$pColl>>2]|0; - $32 = (($31) + 12|0); - $33 = HEAP32[$32>>2]|0; - $34 = ($33|0)!=(0|0); - if ($34) { - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 140|0); - $37 = HEAP32[$36>>2]|0; - $38 = ($37|0)!=(0); - $39 = HEAP32[$1>>2]|0; - if ($38) { - _sqlite3Error($39,5,3248,$vararg_buffer4); - HEAP32[$0>>2] = 5; - $106 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($106|0); - } - _sqlite3ExpirePreparedStatements($39); - $40 = HEAP32[$1>>2]|0; - _invalidateCachedKeyInfo($40); - $41 = HEAP32[$pColl>>2]|0; - $42 = (($41) + 4|0); - $43 = HEAP8[$42>>0]|0; - $44 = $43&255; - $45 = $44 & -9; - $46 = HEAP32[$enc2>>2]|0; - $47 = ($45|0)==($46|0); - if ($47) { - $48 = HEAP32[$1>>2]|0; - $49 = (($48) + 420|0); - $50 = HEAP32[$2>>2]|0; - $51 = HEAP32[$nName>>2]|0; - $52 = (_sqlite3HashFind($49,$50,$51)|0); - HEAP32[$aColl>>2] = $52; - HEAP32[$j>>2] = 0; - while(1) { - $53 = HEAP32[$j>>2]|0; - $54 = ($53|0)<(3); - if (!($54)) { - break L8; - } - $55 = HEAP32[$j>>2]|0; - $56 = HEAP32[$aColl>>2]|0; - $57 = (($56) + (($55*20)|0)|0); - HEAP32[$p>>2] = $57; - $58 = HEAP32[$p>>2]|0; - $59 = (($58) + 4|0); - $60 = HEAP8[$59>>0]|0; - $61 = $60&255; - $62 = HEAP32[$pColl>>2]|0; - $63 = (($62) + 4|0); - $64 = HEAP8[$63>>0]|0; - $65 = $64&255; - $66 = ($61|0)==($65|0); - if ($66) { - $67 = HEAP32[$p>>2]|0; - $68 = (($67) + 16|0); - $69 = HEAP32[$68>>2]|0; - $70 = ($69|0)!=(0|0); - if ($70) { - $71 = HEAP32[$p>>2]|0; - $72 = (($71) + 16|0); - $73 = HEAP32[$72>>2]|0; - $74 = HEAP32[$p>>2]|0; - $75 = (($74) + 8|0); - $76 = HEAP32[$75>>2]|0; - FUNCTION_TABLE_vi[$73 & 31]($76); - } - $77 = HEAP32[$p>>2]|0; - $78 = (($77) + 12|0); - HEAP32[$78>>2] = 0; - } - $79 = HEAP32[$j>>2]|0; - $80 = (($79) + 1)|0; - HEAP32[$j>>2] = $80; - } - } - } - } - } while(0); - $81 = HEAP32[$1>>2]|0; - $82 = HEAP32[$enc2>>2]|0; - $83 = $82&255; - $84 = HEAP32[$2>>2]|0; - $85 = (_sqlite3FindCollSeq($81,$83,$84,1)|0); - HEAP32[$pColl>>2] = $85; - $86 = HEAP32[$pColl>>2]|0; - $87 = ($86|0)==(0|0); - if ($87) { - HEAP32[$0>>2] = 7; - $106 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($106|0); - } else { - $88 = HEAP32[$5>>2]|0; - $89 = HEAP32[$pColl>>2]|0; - $90 = (($89) + 12|0); - HEAP32[$90>>2] = $88; - $91 = HEAP32[$4>>2]|0; - $92 = HEAP32[$pColl>>2]|0; - $93 = (($92) + 8|0); - HEAP32[$93>>2] = $91; - $94 = HEAP32[$6>>2]|0; - $95 = HEAP32[$pColl>>2]|0; - $96 = (($95) + 16|0); - HEAP32[$96>>2] = $94; - $97 = HEAP32[$enc2>>2]|0; - $98 = HEAP8[$3>>0]|0; - $99 = $98&255; - $100 = $99 & 8; - $101 = $97 | $100; - $102 = $101&255; - $103 = HEAP32[$pColl>>2]|0; - $104 = (($103) + 4|0); - HEAP8[$104>>0] = $102; - $105 = HEAP32[$1>>2]|0; - _sqlite3Error($105,0,0,$vararg_buffer4); - HEAP32[$0>>2] = 0; - $106 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($106|0); - } - return 0|0; -} -function _sqlite3OsSleep($pVfs,$nMicro) { - $pVfs = $pVfs|0; - $nMicro = $nMicro|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pVfs; - HEAP32[$1>>2] = $nMicro; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 60|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = (FUNCTION_TABLE_iii[$4 & 63]($5,$6)|0); - STACKTOP = sp;return ($7|0); -} -function _sqlite3_file_control($db,$zDbName,$op,$pArg) { - $db = $db|0; - $zDbName = $zDbName|0; - $op = $op|0; - $pArg = $pArg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $fd = 0, $pBtree = 0, $pPager = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $rc = sp + 12|0; - $pBtree = sp + 8|0; - $pPager = sp + 4|0; - $fd = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $zDbName; - HEAP32[$2>>2] = $op; - HEAP32[$3>>2] = $pArg; - HEAP32[$rc>>2] = 1; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = (_sqlite3DbNameToBtree($4,$5)|0); - HEAP32[$pBtree>>2] = $6; - $7 = HEAP32[$pBtree>>2]|0; - $8 = ($7|0)!=(0|0); - if (!($8)) { - $24 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($24|0); - } - $9 = HEAP32[$pBtree>>2]|0; - _sqlite3BtreeEnter($9); - $10 = HEAP32[$pBtree>>2]|0; - $11 = (_sqlite3BtreePager($10)|0); - HEAP32[$pPager>>2] = $11; - $12 = HEAP32[$pPager>>2]|0; - $13 = (_sqlite3PagerFile($12)|0); - HEAP32[$fd>>2] = $13; - $14 = HEAP32[$2>>2]|0; - $15 = ($14|0)==(7); - $16 = HEAP32[$fd>>2]|0; - if ($15) { - $17 = HEAP32[$3>>2]|0; - HEAP32[$17>>2] = $16; - HEAP32[$rc>>2] = 0; - $24 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($24|0); - } - $18 = HEAP32[$16>>2]|0; - $19 = ($18|0)!=(0|0); - if ($19) { - $20 = HEAP32[$fd>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = HEAP32[$3>>2]|0; - $23 = (_sqlite3OsFileControl($20,$21,$22)|0); - HEAP32[$rc>>2] = $23; - $24 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($24|0); - } else { - HEAP32[$rc>>2] = 12; - $24 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($24|0); - } - return 0|0; -} -function _sqlite3DbNameToBtree($db,$zDbName) { - $db = $db|0; - $zDbName = $zDbName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $i = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $zDbName; - HEAP32[$i>>2] = 0; - while(1) { - $3 = HEAP32[$i>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 20|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($3|0)<($6|0); - if (!($7)) { - label = 8; - break; - } - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 16|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + ($8<<4)|0); - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - $15 = ($14|0)!=(0|0); - if ($15) { - $16 = HEAP32[$2>>2]|0; - $17 = ($16|0)==(0|0); - if ($17) { - label = 6; - break; - } - $18 = HEAP32[$2>>2]|0; - $19 = HEAP32[$i>>2]|0; - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 16|0); - $22 = HEAP32[$21>>2]|0; - $23 = (($22) + ($19<<4)|0); - $24 = HEAP32[$23>>2]|0; - $25 = (_sqlite3_stricmp($18,$24)|0); - $26 = ($25|0)==(0); - if ($26) { - label = 6; - break; - } - } - $34 = HEAP32[$i>>2]|0; - $35 = (($34) + 1)|0; - HEAP32[$i>>2] = $35; - } - if ((label|0) == 6) { - $27 = HEAP32[$i>>2]|0; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 16|0); - $30 = HEAP32[$29>>2]|0; - $31 = (($30) + ($27<<4)|0); - $32 = (($31) + 4|0); - $33 = HEAP32[$32>>2]|0; - HEAP32[$0>>2] = $33; - $36 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($36|0); - } - else if ((label|0) == 8) { - HEAP32[$0>>2] = 0; - $36 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($36|0); - } - return 0|0; -} -function _sqlite3OsFileControl($id,$op,$pArg) { - $id = $id|0; - $op = $op|0; - $pArg = $pArg|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $id; - HEAP32[$1>>2] = $op; - HEAP32[$2>>2] = $pArg; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (($4) + 40|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$2>>2]|0; - $10 = (FUNCTION_TABLE_iiii[$6 & 15]($7,$8,$9)|0); - STACKTOP = sp;return ($10|0); -} -function _sqlite3BtreeSetPageSize($p,$pageSize,$nReserve,$iFix) { - $p = $p|0; - $pageSize = $pageSize|0; - $nReserve = $nReserve|0; - $iFix = $iFix|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0; - var $8 = 0, $9 = 0, $or$cond = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $rc = sp + 4|0; - $pBt = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $pageSize; - HEAP32[$3>>2] = $nReserve; - HEAP32[$4>>2] = $iFix; - HEAP32[$rc>>2] = 0; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 4|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pBt>>2] = $7; - $8 = HEAP32[$1>>2]|0; - _sqlite3BtreeEnter($8); - $9 = HEAP32[$pBt>>2]|0; - $10 = (($9) + 22|0); - $11 = HEAP16[$10>>1]|0; - $12 = $11&65535; - $13 = $12 & 2; - $14 = ($13|0)!=(0); - if ($14) { - HEAP32[$0>>2] = 8; - $61 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($61|0); - } - $15 = HEAP32[$3>>2]|0; - $16 = ($15|0)<(0); - if ($16) { - $17 = HEAP32[$pBt>>2]|0; - $18 = (($17) + 32|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$pBt>>2]|0; - $21 = (($20) + 36|0); - $22 = HEAP32[$21>>2]|0; - $23 = (($19) - ($22))|0; - HEAP32[$3>>2] = $23; - } - $24 = HEAP32[$2>>2]|0; - $25 = ($24|0)>=(512); - $26 = HEAP32[$2>>2]|0; - $27 = ($26|0)<=(65536); - $or$cond = $25 & $27; - if ($or$cond) { - $28 = HEAP32[$2>>2]|0; - $29 = (($28) - 1)|0; - $30 = HEAP32[$2>>2]|0; - $31 = $29 & $30; - $32 = ($31|0)==(0); - if ($32) { - $33 = HEAP32[$2>>2]|0; - $34 = HEAP32[$pBt>>2]|0; - $35 = (($34) + 32|0); - HEAP32[$35>>2] = $33; - $36 = HEAP32[$pBt>>2]|0; - _freeTempSpace($36); - } - } - $37 = HEAP32[$pBt>>2]|0; - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$pBt>>2]|0; - $40 = (($39) + 32|0); - $41 = HEAP32[$3>>2]|0; - $42 = (_sqlite3PagerSetPagesize($38,$40,$41)|0); - HEAP32[$rc>>2] = $42; - $43 = HEAP32[$pBt>>2]|0; - $44 = (($43) + 32|0); - $45 = HEAP32[$44>>2]|0; - $46 = HEAP32[$3>>2]|0; - $47 = $46&65535; - $48 = $47&65535; - $49 = (($45) - ($48))|0; - $50 = HEAP32[$pBt>>2]|0; - $51 = (($50) + 36|0); - HEAP32[$51>>2] = $49; - $52 = HEAP32[$4>>2]|0; - $53 = ($52|0)!=(0); - if ($53) { - $54 = HEAP32[$pBt>>2]|0; - $55 = (($54) + 22|0); - $56 = HEAP16[$55>>1]|0; - $57 = $56&65535; - $58 = $57 | 2; - $59 = $58&65535; - HEAP16[$55>>1] = $59; - } - $60 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $60; - $61 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($61|0); -} -function _sqlite3KeywordCode($z,$n) { - $z = $z|0; - $n = $n|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $z; - HEAP32[$1>>2] = $n; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_keywordCode($2,$3)|0); - STACKTOP = sp;return ($4|0); -} -function _sqlite3ScratchMalloc($n) { - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $n; - $1 = HEAP32[((392 + 32|0))>>2]|0; - $2 = ($1|0)!=(0); - if ($2) { - $3 = HEAP32[((38512 + 196|0))>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = ($3|0)>=($4|0); - if ($5) { - $6 = HEAP32[((392 + 28|0))>>2]|0; - HEAP32[$p>>2] = $6; - $7 = HEAP32[((392 + 28|0))>>2]|0; - $8 = HEAP32[$7>>2]|0; - HEAP32[((392 + 28|0))>>2] = $8; - $9 = HEAP32[((392 + 32|0))>>2]|0; - $10 = (($9) + -1)|0; - HEAP32[((392 + 32|0))>>2] = $10; - _sqlite3StatusAdd(3,1); - $11 = HEAP32[$0>>2]|0; - _sqlite3StatusSet(8,$11); - $23 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($23|0); - } - } - $12 = HEAP32[38512>>2]|0; - $13 = ($12|0)!=(0); - if (!($13)) { - $20 = HEAP32[((38512 + 36|0))>>2]|0; - $21 = HEAP32[$0>>2]|0; - $22 = (FUNCTION_TABLE_ii[$20 & 31]($21)|0); - HEAP32[$p>>2] = $22; - $23 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($23|0); - } - $14 = HEAP32[$0>>2]|0; - _sqlite3StatusSet(8,$14); - $15 = HEAP32[$0>>2]|0; - $16 = (_mallocWithAlarm($15,$p)|0); - HEAP32[$0>>2] = $16; - $17 = HEAP32[$p>>2]|0; - $18 = ($17|0)!=(0|0); - if (!($18)) { - $23 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($23|0); - } - $19 = HEAP32[$0>>2]|0; - _sqlite3StatusAdd(4,$19); - $23 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($23|0); -} -function _sqlite3ScratchFree($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iSize = 0, $pSlot = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $pSlot = sp + 4|0; - $iSize = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if (!($2)) { - STACKTOP = sp;return; - } - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[((38512 + 192|0))>>2]|0; - $5 = ($3>>>0)>=($4>>>0); - if ($5) { - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[((392 + 24|0))>>2]|0; - $8 = ($6>>>0)<($7>>>0); - if ($8) { - $9 = HEAP32[$0>>2]|0; - HEAP32[$pSlot>>2] = $9; - $10 = HEAP32[((392 + 28|0))>>2]|0; - $11 = HEAP32[$pSlot>>2]|0; - HEAP32[$11>>2] = $10; - $12 = HEAP32[$pSlot>>2]|0; - HEAP32[((392 + 28|0))>>2] = $12; - $13 = HEAP32[((392 + 32|0))>>2]|0; - $14 = (($13) + 1)|0; - HEAP32[((392 + 32|0))>>2] = $14; - _sqlite3StatusAdd(3,-1); - STACKTOP = sp;return; - } - } - $15 = HEAP32[38512>>2]|0; - $16 = ($15|0)!=(0); - if ($16) { - $17 = HEAP32[$0>>2]|0; - $18 = (_sqlite3MallocSize($17)|0); - HEAP32[$iSize>>2] = $18; - $19 = HEAP32[$iSize>>2]|0; - $20 = (0 - ($19))|0; - _sqlite3StatusAdd(4,$20); - $21 = HEAP32[$iSize>>2]|0; - $22 = (0 - ($21))|0; - _sqlite3StatusAdd(0,$22); - _sqlite3StatusAdd(9,-1); - $23 = HEAP32[((38512 + 40|0))>>2]|0; - $24 = HEAP32[$0>>2]|0; - FUNCTION_TABLE_vi[$23 & 31]($24); - STACKTOP = sp;return; - } else { - $25 = HEAP32[((38512 + 40|0))>>2]|0; - $26 = HEAP32[$0>>2]|0; - FUNCTION_TABLE_vi[$25 & 31]($26); - STACKTOP = sp;return; - } -} -function _sqlite3_uri_parameter($zFilename,$zParam) { - $zFilename = $zFilename|0; - $zParam = $zParam|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $x = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $x = sp; - HEAP32[$1>>2] = $zFilename; - HEAP32[$2>>2] = $zParam; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - HEAP32[$0>>2] = 0; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); - } - $5 = HEAP32[$1>>2]|0; - $6 = (_sqlite3Strlen30($5)|0); - $7 = (($6) + 1)|0; - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + ($7)|0); - HEAP32[$1>>2] = $9; - while(1) { - $10 = HEAP32[$1>>2]|0; - $11 = HEAP8[$10>>0]|0; - $12 = ($11<<24>>24)!=(0); - if (!($12)) { - label = 8; - break; - } - $13 = HEAP32[$1>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = (_strcmp($13,$14)|0); - HEAP32[$x>>2] = $15; - $16 = HEAP32[$1>>2]|0; - $17 = (_sqlite3Strlen30($16)|0); - $18 = (($17) + 1)|0; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + ($18)|0); - HEAP32[$1>>2] = $20; - $21 = HEAP32[$x>>2]|0; - $22 = ($21|0)==(0); - $23 = HEAP32[$1>>2]|0; - if ($22) { - label = 6; - break; - } - $24 = (_sqlite3Strlen30($23)|0); - $25 = (($24) + 1)|0; - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + ($25)|0); - HEAP32[$1>>2] = $27; - } - if ((label|0) == 6) { - HEAP32[$0>>2] = $23; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); - } - else if ((label|0) == 8) { - HEAP32[$0>>2] = 0; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); - } - return 0|0; -} -function _sqlite3_uri_boolean($zFilename,$zParam,$bDflt) { - $zFilename = $zFilename|0; - $zParam = $zParam|0; - $bDflt = $bDflt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $z = sp; - HEAP32[$0>>2] = $zFilename; - HEAP32[$1>>2] = $zParam; - HEAP32[$2>>2] = $bDflt; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (_sqlite3_uri_parameter($3,$4)|0); - HEAP32[$z>>2] = $5; - $6 = HEAP32[$2>>2]|0; - $7 = ($6|0)!=(0); - $8 = $7&1; - HEAP32[$2>>2] = $8; - $9 = HEAP32[$z>>2]|0; - $10 = ($9|0)!=(0|0); - if ($10) { - $11 = HEAP32[$z>>2]|0; - $12 = HEAP32[$2>>2]|0; - $13 = (_sqlite3GetBoolean($11,$12)|0); - $14 = $13&255; - $16 = $14; - STACKTOP = sp;return ($16|0); - } else { - $15 = HEAP32[$2>>2]|0; - $16 = $15; - STACKTOP = sp;return ($16|0); - } - return 0|0; -} -function _sqlite3GetBoolean($z,$dflt) { - $z = $z|0; - $dflt = $dflt|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $z; - HEAP32[$1>>2] = $dflt; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_getSafetyLevel($2,1,$3)|0); - $5 = $4&255; - $6 = ($5|0)!=(0); - $7 = $6&1; - $8 = $7&255; - STACKTOP = sp;return ($8|0); -} -function _sqlite3Atoi64($zNum,$pNum,$length,$enc) { - $zNum = $zNum|0; - $pNum = $pNum|0; - $length = $length|0; - $enc = $enc|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $19 = 0; - var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; - var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; - var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; - var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; - var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $i = 0, $incr = 0, $neg = 0, $nonNum = 0, $u = 0, $zEnd = 0, $zStart = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 48|0; - $1 = sp + 44|0; - $2 = sp + 40|0; - $3 = sp + 36|0; - $4 = sp + 52|0; - $incr = sp + 32|0; - $u = sp; - $neg = sp + 28|0; - $i = sp + 24|0; - $c = sp + 20|0; - $nonNum = sp + 16|0; - $zStart = sp + 12|0; - $zEnd = sp + 8|0; - HEAP32[$1>>2] = $zNum; - HEAP32[$2>>2] = $pNum; - HEAP32[$3>>2] = $length; - HEAP8[$4>>0] = $enc; - $5 = $u; - $6 = $5; - HEAP32[$6>>2] = 0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = 0; - HEAP32[$neg>>2] = 0; - HEAP32[$c>>2] = 0; - HEAP32[$nonNum>>2] = 0; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$3>>2]|0; - $11 = (($9) + ($10)|0); - HEAP32[$zEnd>>2] = $11; - $12 = HEAP8[$4>>0]|0; - $13 = $12&255; - $14 = ($13|0)==(1); - if ($14) { - HEAP32[$incr>>2] = 1; - } else { - HEAP32[$incr>>2] = 2; - $15 = HEAP8[$4>>0]|0; - $16 = $15&255; - $17 = (3 - ($16))|0; - HEAP32[$i>>2] = $17; - while(1) { - $18 = HEAP32[$i>>2]|0; - $19 = HEAP32[$3>>2]|0; - $20 = ($18|0)<($19|0); - if (!($20)) { - break; - } - $21 = HEAP32[$i>>2]|0; - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + ($21)|0); - $24 = HEAP8[$23>>0]|0; - $25 = $24 << 24 >> 24; - $26 = ($25|0)==(0); - if (!($26)) { - break; - } - $27 = HEAP32[$i>>2]|0; - $28 = (($27) + 2)|0; - HEAP32[$i>>2] = $28; - } - $29 = HEAP32[$i>>2]|0; - $30 = HEAP32[$3>>2]|0; - $31 = ($29|0)<($30|0); - $32 = $31&1; - HEAP32[$nonNum>>2] = $32; - $33 = HEAP32[$1>>2]|0; - $34 = HEAP32[$i>>2]|0; - $35 = (($33) + ($34)|0); - $36 = HEAP8[$4>>0]|0; - $37 = $36&255; - $38 = (($35) + ($37)|0); - $39 = (($38) + -3|0); - HEAP32[$zEnd>>2] = $39; - $40 = HEAP8[$4>>0]|0; - $41 = $40&255; - $42 = $41 & 1; - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + ($42)|0); - HEAP32[$1>>2] = $44; - } - while(1) { - $45 = HEAP32[$1>>2]|0; - $46 = HEAP32[$zEnd>>2]|0; - $47 = ($45>>>0)<($46>>>0); - if (!($47)) { - break; - } - $48 = HEAP32[$1>>2]|0; - $49 = HEAP8[$48>>0]|0; - $50 = $49&255; - $51 = (48 + ($50)|0); - $52 = HEAP8[$51>>0]|0; - $53 = $52&255; - $54 = $53 & 1; - $55 = ($54|0)!=(0); - if (!($55)) { - break; - } - $56 = HEAP32[$incr>>2]|0; - $57 = HEAP32[$1>>2]|0; - $58 = (($57) + ($56)|0); - HEAP32[$1>>2] = $58; - } - $59 = HEAP32[$1>>2]|0; - $60 = HEAP32[$zEnd>>2]|0; - $61 = ($59>>>0)<($60>>>0); - do { - if ($61) { - $62 = HEAP32[$1>>2]|0; - $63 = HEAP8[$62>>0]|0; - $64 = $63 << 24 >> 24; - $65 = ($64|0)==(45); - if ($65) { - HEAP32[$neg>>2] = 1; - $66 = HEAP32[$incr>>2]|0; - $67 = HEAP32[$1>>2]|0; - $68 = (($67) + ($66)|0); - HEAP32[$1>>2] = $68; - break; - } - $69 = HEAP32[$1>>2]|0; - $70 = HEAP8[$69>>0]|0; - $71 = $70 << 24 >> 24; - $72 = ($71|0)==(43); - if ($72) { - $73 = HEAP32[$incr>>2]|0; - $74 = HEAP32[$1>>2]|0; - $75 = (($74) + ($73)|0); - HEAP32[$1>>2] = $75; - } - } - } while(0); - $76 = HEAP32[$1>>2]|0; - HEAP32[$zStart>>2] = $76; - while(1) { - $77 = HEAP32[$1>>2]|0; - $78 = HEAP32[$zEnd>>2]|0; - $79 = ($77>>>0)<($78>>>0); - if (!($79)) { - break; - } - $80 = HEAP32[$1>>2]|0; - $81 = HEAP8[$80>>0]|0; - $82 = $81 << 24 >> 24; - $83 = ($82|0)==(48); - if (!($83)) { - break; - } - $84 = HEAP32[$incr>>2]|0; - $85 = HEAP32[$1>>2]|0; - $86 = (($85) + ($84)|0); - HEAP32[$1>>2] = $86; - } - HEAP32[$i>>2] = 0; - while(1) { - $87 = HEAP32[$i>>2]|0; - $88 = HEAP32[$1>>2]|0; - $89 = (($88) + ($87)|0); - $90 = HEAP32[$zEnd>>2]|0; - $91 = ($89>>>0)<($90>>>0); - if ($91) { - $92 = HEAP32[$i>>2]|0; - $93 = HEAP32[$1>>2]|0; - $94 = (($93) + ($92)|0); - $95 = HEAP8[$94>>0]|0; - $96 = $95 << 24 >> 24; - HEAP32[$c>>2] = $96; - $97 = ($96|0)>=(48); - if ($97) { - $98 = HEAP32[$c>>2]|0; - $99 = ($98|0)<=(57); - $187 = $99; - } else { - $187 = 0; - } - } else { - $187 = 0; - } - $100 = $u; - $101 = $100; - $102 = HEAP32[$101>>2]|0; - $103 = (($100) + 4)|0; - $104 = $103; - $105 = HEAP32[$104>>2]|0; - if (!($187)) { - break; - } - $106 = (___muldi3(($102|0),($105|0),10,0)|0); - $107 = tempRet0; - $108 = HEAP32[$c>>2]|0; - $109 = ($108|0)<(0); - $110 = $109 << 31 >> 31; - $111 = (_i64Add(($106|0),($107|0),($108|0),($110|0))|0); - $112 = tempRet0; - $113 = (_i64Subtract(($111|0),($112|0),48,0)|0); - $114 = tempRet0; - $115 = $u; - $116 = $115; - HEAP32[$116>>2] = $113; - $117 = (($115) + 4)|0; - $118 = $117; - HEAP32[$118>>2] = $114; - $119 = HEAP32[$incr>>2]|0; - $120 = HEAP32[$i>>2]|0; - $121 = (($120) + ($119))|0; - HEAP32[$i>>2] = $121; - } - $122 = ($105>>>0)>(2147483647); - $123 = ($105|0)==(2147483647); - $124 = ($102>>>0)>(4294967295); - $125 = $123 & $124; - $126 = $122 | $125; - $127 = HEAP32[$neg>>2]|0; - $128 = ($127|0)!=(0); - do { - if ($126) { - $129 = $128 ? 0 : -1; - $130 = $128 ? -2147483648 : 2147483647; - $131 = HEAP32[$2>>2]|0; - $132 = $131; - $133 = $132; - HEAP32[$133>>2] = $129; - $134 = (($132) + 4)|0; - $135 = $134; - HEAP32[$135>>2] = $130; - } else { - $136 = $u; - $137 = $136; - $138 = HEAP32[$137>>2]|0; - $139 = (($136) + 4)|0; - $140 = $139; - $141 = HEAP32[$140>>2]|0; - if ($128) { - $142 = (_i64Subtract(0,0,($138|0),($141|0))|0); - $143 = tempRet0; - $144 = HEAP32[$2>>2]|0; - $145 = $144; - $146 = $145; - HEAP32[$146>>2] = $142; - $147 = (($145) + 4)|0; - $148 = $147; - HEAP32[$148>>2] = $143; - break; - } else { - $149 = HEAP32[$2>>2]|0; - $150 = $149; - $151 = $150; - HEAP32[$151>>2] = $138; - $152 = (($150) + 4)|0; - $153 = $152; - HEAP32[$153>>2] = $141; - break; - } - } - } while(0); - $154 = HEAP32[$c>>2]|0; - $155 = ($154|0)!=(0); - if ($155) { - $156 = HEAP32[$i>>2]|0; - $157 = HEAP32[$1>>2]|0; - $158 = (($157) + ($156)|0); - $159 = HEAP32[$zEnd>>2]|0; - $160 = ($158>>>0)<($159>>>0); - if (!($160)) { - label = 33; - } - } else { - label = 33; - } - do { - if ((label|0) == 33) { - $161 = HEAP32[$i>>2]|0; - $162 = ($161|0)==(0); - if ($162) { - $163 = HEAP32[$zStart>>2]|0; - $164 = HEAP32[$1>>2]|0; - $165 = ($163|0)==($164|0); - if ($165) { - break; - } - } - $166 = HEAP32[$i>>2]|0; - $167 = HEAP32[$incr>>2]|0; - $168 = ($167*19)|0; - $169 = ($166|0)>($168|0); - if (!($169)) { - $170 = HEAP32[$nonNum>>2]|0; - $171 = ($170|0)!=(0); - if (!($171)) { - $172 = HEAP32[$i>>2]|0; - $173 = HEAP32[$incr>>2]|0; - $174 = ($173*19)|0; - $175 = ($172|0)<($174|0); - if ($175) { - HEAP32[$0>>2] = 0; - $186 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($186|0); - } - $176 = HEAP32[$1>>2]|0; - $177 = HEAP32[$incr>>2]|0; - $178 = (_compare2pow63($176,$177)|0); - HEAP32[$c>>2] = $178; - $179 = HEAP32[$c>>2]|0; - $180 = ($179|0)<(0); - if ($180) { - HEAP32[$0>>2] = 0; - $186 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($186|0); - } - $181 = HEAP32[$c>>2]|0; - $182 = ($181|0)>(0); - if ($182) { - HEAP32[$0>>2] = 1; - $186 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($186|0); - } else { - $183 = HEAP32[$neg>>2]|0; - $184 = ($183|0)!=(0); - $185 = $184 ? 0 : 2; - HEAP32[$0>>2] = $185; - $186 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($186|0); - } - } - } - } - } while(0); - HEAP32[$0>>2] = 1; - $186 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($186|0); -} -function _sqlite3BtreeGetFilename($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3PagerFilename($4,1)|0); - STACKTOP = sp;return ($5|0); -} -function _sqlite3BtreeIsReadonly($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 22|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5&65535; - $7 = $6 & 1; - $8 = ($7|0)!=(0); - $9 = $8&1; - STACKTOP = sp;return ($9|0); -} -function _sqlite3PagerFilename($pPager,$nullIfMemDb) { - $pPager = $pPager|0; - $nullIfMemDb = $nullIfMemDb|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $nullIfMemDb; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0); - if ($3) { - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 15|0); - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - $8 = ($7|0)!=(0); - if ($8) { - $12 = 1472; - STACKTOP = sp;return ($12|0); - } - } - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 168|0); - $11 = HEAP32[$10>>2]|0; - $12 = $11; - STACKTOP = sp;return ($12|0); -} -function _compare2pow63($zNum,$incr) { - $zNum = $zNum|0; - $incr = $incr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, $i = 0, $pow63 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $c = sp + 8|0; - $i = sp + 4|0; - $pow63 = sp; - HEAP32[$0>>2] = $zNum; - HEAP32[$1>>2] = $incr; - HEAP32[$c>>2] = 0; - HEAP32[$pow63>>2] = 1744; - HEAP32[$i>>2] = 0; - while(1) { - $2 = HEAP32[$c>>2]|0; - $3 = ($2|0)==(0); - if (!($3)) { - break; - } - $4 = HEAP32[$i>>2]|0; - $5 = ($4|0)<(18); - if (!($5)) { - break; - } - $6 = HEAP32[$i>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = Math_imul($6, $7)|0; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + ($8)|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11 << 24 >> 24; - $13 = HEAP32[$i>>2]|0; - $14 = HEAP32[$pow63>>2]|0; - $15 = (($14) + ($13)|0); - $16 = HEAP8[$15>>0]|0; - $17 = $16 << 24 >> 24; - $18 = (($12) - ($17))|0; - $19 = ($18*10)|0; - HEAP32[$c>>2] = $19; - $20 = HEAP32[$i>>2]|0; - $21 = (($20) + 1)|0; - HEAP32[$i>>2] = $21; - } - $22 = HEAP32[$c>>2]|0; - $23 = ($22|0)==(0); - if (!($23)) { - $31 = HEAP32[$c>>2]|0; - STACKTOP = sp;return ($31|0); - } - $24 = HEAP32[$1>>2]|0; - $25 = ($24*18)|0; - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + ($25)|0); - $28 = HEAP8[$27>>0]|0; - $29 = $28 << 24 >> 24; - $30 = (($29) - 56)|0; - HEAP32[$c>>2] = $30; - $31 = HEAP32[$c>>2]|0; - STACKTOP = sp;return ($31|0); -} -function _getSafetyLevel($z,$omitFull,$dflt) { - $z = $z|0; - $omitFull = $omitFull|0; - $dflt = $dflt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $i = 0, $n = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $i = sp + 4|0; - $n = sp; - HEAP32[$1>>2] = $z; - HEAP32[$2>>2] = $omitFull; - HEAP32[$3>>2] = $dflt; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = (48 + ($6)|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - $10 = $9 & 4; - $11 = ($10|0)!=(0); - $12 = HEAP32[$1>>2]|0; - if ($11) { - $13 = (_sqlite3Atoi($12)|0); - $14 = $13&255; - HEAP8[$0>>0] = $14; - $42 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($42|0); - } - $15 = (_sqlite3Strlen30($12)|0); - HEAP32[$n>>2] = $15; - HEAP32[$i>>2] = 0; - while(1) { - $16 = HEAP32[$i>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = (7 - ($17))|0; - $19 = ($16|0)<($18|0); - if (!($19)) { - label = 9; - break; - } - $20 = HEAP32[$i>>2]|0; - $21 = (1800 + ($20)|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = HEAP32[$n>>2]|0; - $25 = ($23|0)==($24|0); - if ($25) { - $26 = HEAP32[$i>>2]|0; - $27 = (1792 + ($26)|0); - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = (1768 + ($29)|0); - $31 = HEAP32[$1>>2]|0; - $32 = HEAP32[$n>>2]|0; - $33 = (_sqlite3_strnicmp($30,$31,$32)|0); - $34 = ($33|0)==(0); - if ($34) { - label = 7; - break; - } - } - $38 = HEAP32[$i>>2]|0; - $39 = (($38) + 1)|0; - HEAP32[$i>>2] = $39; - } - if ((label|0) == 7) { - $35 = HEAP32[$i>>2]|0; - $36 = (1808 + ($35)|0); - $37 = HEAP8[$36>>0]|0; - HEAP8[$0>>0] = $37; - $42 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($42|0); - } - else if ((label|0) == 9) { - $40 = HEAP32[$3>>2]|0; - $41 = $40&255; - HEAP8[$0>>0] = $41; - $42 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($42|0); - } - return 0|0; -} -function _sqlite3Atoi($z) { - $z = $z|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $x = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $x = sp; - HEAP32[$0>>2] = $z; - HEAP32[$x>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if ($2) { - $3 = HEAP32[$0>>2]|0; - (_sqlite3GetInt32($3,$x)|0); - } - $4 = HEAP32[$x>>2]|0; - STACKTOP = sp;return ($4|0); -} -function _sqlite3GetInt32($zNum,$pValue) { - $zNum = $zNum|0; - $pValue = $pValue|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $c = 0, $i = 0, $neg = 0, $v = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $v = sp; - $i = sp + 16|0; - $c = sp + 12|0; - $neg = sp + 8|0; - HEAP32[$1>>2] = $zNum; - HEAP32[$2>>2] = $pValue; - $3 = $v; - $4 = $3; - HEAP32[$4>>2] = 0; - $5 = (($3) + 4)|0; - $6 = $5; - HEAP32[$6>>2] = 0; - HEAP32[$neg>>2] = 0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP8[$7>>0]|0; - $9 = $8 << 24 >> 24; - $10 = ($9|0)==(45); - if ($10) { - HEAP32[$neg>>2] = 1; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 1|0); - HEAP32[$1>>2] = $12; - } else { - $13 = HEAP32[$1>>2]|0; - $14 = HEAP8[$13>>0]|0; - $15 = $14 << 24 >> 24; - $16 = ($15|0)==(43); - if ($16) { - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 1|0); - HEAP32[$1>>2] = $18; - } - } - while(1) { - $19 = HEAP32[$1>>2]|0; - $20 = HEAP8[$19>>0]|0; - $21 = $20 << 24 >> 24; - $22 = ($21|0)==(48); - if (!($22)) { - break; - } - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 1|0); - HEAP32[$1>>2] = $24; - } - HEAP32[$i>>2] = 0; - while(1) { - $25 = HEAP32[$i>>2]|0; - $26 = ($25|0)<(11); - if (!($26)) { - break; - } - $27 = HEAP32[$i>>2]|0; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + ($27)|0); - $30 = HEAP8[$29>>0]|0; - $31 = $30 << 24 >> 24; - $32 = (($31) - 48)|0; - HEAP32[$c>>2] = $32; - $33 = ($32|0)>=(0); - if (!($33)) { - break; - } - $34 = HEAP32[$c>>2]|0; - $35 = ($34|0)<=(9); - if (!($35)) { - break; - } - $36 = $v; - $37 = $36; - $38 = HEAP32[$37>>2]|0; - $39 = (($36) + 4)|0; - $40 = $39; - $41 = HEAP32[$40>>2]|0; - $42 = (___muldi3(($38|0),($41|0),10,0)|0); - $43 = tempRet0; - $44 = HEAP32[$c>>2]|0; - $45 = ($44|0)<(0); - $46 = $45 << 31 >> 31; - $47 = (_i64Add(($42|0),($43|0),($44|0),($46|0))|0); - $48 = tempRet0; - $49 = $v; - $50 = $49; - HEAP32[$50>>2] = $47; - $51 = (($49) + 4)|0; - $52 = $51; - HEAP32[$52>>2] = $48; - $53 = HEAP32[$i>>2]|0; - $54 = (($53) + 1)|0; - HEAP32[$i>>2] = $54; - } - $55 = HEAP32[$i>>2]|0; - $56 = ($55|0)>(10); - if ($56) { - HEAP32[$0>>2] = 0; - $94 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($94|0); - } - $57 = $v; - $58 = $57; - $59 = HEAP32[$58>>2]|0; - $60 = (($57) + 4)|0; - $61 = $60; - $62 = HEAP32[$61>>2]|0; - $63 = HEAP32[$neg>>2]|0; - $64 = ($63|0)<(0); - $65 = $64 << 31 >> 31; - $66 = (_i64Subtract(($59|0),($62|0),($63|0),($65|0))|0); - $67 = tempRet0; - $68 = ($67|0)>(0); - $69 = ($67|0)==(0); - $70 = ($66>>>0)>(2147483647); - $71 = $69 & $70; - $72 = $68 | $71; - if ($72) { - HEAP32[$0>>2] = 0; - $94 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($94|0); - } - $73 = HEAP32[$neg>>2]|0; - $74 = ($73|0)!=(0); - if ($74) { - $75 = $v; - $76 = $75; - $77 = HEAP32[$76>>2]|0; - $78 = (($75) + 4)|0; - $79 = $78; - $80 = HEAP32[$79>>2]|0; - $81 = (_i64Subtract(0,0,($77|0),($80|0))|0); - $82 = tempRet0; - $83 = $v; - $84 = $83; - HEAP32[$84>>2] = $81; - $85 = (($83) + 4)|0; - $86 = $85; - HEAP32[$86>>2] = $82; - } - $87 = $v; - $88 = $87; - $89 = HEAP32[$88>>2]|0; - $90 = (($87) + 4)|0; - $91 = $90; - $92 = HEAP32[$91>>2]|0; - $93 = HEAP32[$2>>2]|0; - HEAP32[$93>>2] = $89; - HEAP32[$0>>2] = 1; - $94 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($94|0); -} -function _sqlite3StatusSet($op,$X) { - $op = $op|0; - $X = $X|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $op; - HEAP32[$1>>2] = $X; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (304 + ($3<<2)|0); - HEAP32[$4>>2] = $2; - $5 = HEAP32[$0>>2]|0; - $6 = (304 + ($5<<2)|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (((304 + 40|0)) + ($8<<2)|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($7|0)>($10|0); - if (!($11)) { - STACKTOP = sp;return; - } - $12 = HEAP32[$0>>2]|0; - $13 = (304 + ($12<<2)|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (((304 + 40|0)) + ($15<<2)|0); - HEAP32[$16>>2] = $14; - STACKTOP = sp;return; -} -function _mallocWithAlarm($n,$pp) { - $n = $n|0; - $pp = $pp|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $nFull = 0, $nUsed = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $nFull = sp + 8|0; - $p = sp + 4|0; - $nUsed = sp; - HEAP32[$0>>2] = $n; - HEAP32[$1>>2] = $pp; - $2 = HEAP32[((38512 + 52|0))>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (FUNCTION_TABLE_ii[$2 & 31]($3)|0); - HEAP32[$nFull>>2] = $4; - $5 = HEAP32[$0>>2]|0; - _sqlite3StatusSet(5,$5); - $6 = HEAP32[((392 + 16|0))>>2]|0; - $7 = ($6|0)!=(0|0); - do { - if ($7) { - $8 = (_sqlite3StatusValue(0)|0); - HEAP32[$nUsed>>2] = $8; - $9 = HEAP32[$nUsed>>2]|0; - $10 = ($9|0)<(0); - $11 = $10 << 31 >> 31; - $12 = ((392 + 8|0)); - $13 = $12; - $14 = HEAP32[$13>>2]|0; - $15 = (($12) + 4)|0; - $16 = $15; - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$nFull>>2]|0; - $19 = ($18|0)<(0); - $20 = $19 << 31 >> 31; - $21 = (_i64Subtract(($14|0),($17|0),($18|0),($20|0))|0); - $22 = tempRet0; - $23 = ($11|0)>($22|0); - $24 = ($11|0)==($22|0); - $25 = ($9>>>0)>=($21>>>0); - $26 = $24 & $25; - $27 = $23 | $26; - if ($27) { - HEAP32[((392 + 36|0))>>2] = 1; - $28 = HEAP32[$nFull>>2]|0; - _sqlite3MallocAlarm($28); - break; - } else { - HEAP32[((392 + 36|0))>>2] = 0; - break; - } - } - } while(0); - $29 = HEAP32[((38512 + 36|0))>>2]|0; - $30 = HEAP32[$nFull>>2]|0; - $31 = (FUNCTION_TABLE_ii[$29 & 31]($30)|0); - HEAP32[$p>>2] = $31; - $32 = HEAP32[$p>>2]|0; - $33 = ($32|0)!=(0|0); - if (!($33)) { - $37 = HEAP32[$p>>2]|0; - $38 = HEAP32[$1>>2]|0; - HEAP32[$38>>2] = $37; - $39 = HEAP32[$nFull>>2]|0; - STACKTOP = sp;return ($39|0); - } - $34 = HEAP32[$p>>2]|0; - $35 = (_sqlite3MallocSize($34)|0); - HEAP32[$nFull>>2] = $35; - $36 = HEAP32[$nFull>>2]|0; - _sqlite3StatusAdd(0,$36); - _sqlite3StatusAdd(9,1); - $37 = HEAP32[$p>>2]|0; - $38 = HEAP32[$1>>2]|0; - HEAP32[$38>>2] = $37; - $39 = HEAP32[$nFull>>2]|0; - STACKTOP = sp;return ($39|0); -} -function _sqlite3StatusValue($op) { - $op = $op|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $op; - $1 = HEAP32[$0>>2]|0; - $2 = (304 + ($1<<2)|0); - $3 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _sqlite3MallocAlarm($nByte) { - $nByte = $nByte|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $nowUsed = 0, $pArg = 0, $xCallback = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $xCallback = sp + 12|0; - $nowUsed = sp; - $pArg = sp + 8|0; - HEAP32[$0>>2] = $nByte; - $1 = HEAP32[((392 + 16|0))>>2]|0; - $2 = ($1|0)==(0|0); - if ($2) { - STACKTOP = sp;return; - } - $3 = HEAP32[((392 + 16|0))>>2]|0; - HEAP32[$xCallback>>2] = $3; - $4 = (_sqlite3StatusValue(0)|0); - $5 = ($4|0)<(0); - $6 = $5 << 31 >> 31; - $7 = $nowUsed; - $8 = $7; - HEAP32[$8>>2] = $4; - $9 = (($7) + 4)|0; - $10 = $9; - HEAP32[$10>>2] = $6; - $11 = HEAP32[((392 + 20|0))>>2]|0; - HEAP32[$pArg>>2] = $11; - HEAP32[((392 + 16|0))>>2] = 0; - $12 = HEAP32[$xCallback>>2]|0; - $13 = HEAP32[$pArg>>2]|0; - $14 = $nowUsed; - $15 = $14; - $16 = HEAP32[$15>>2]|0; - $17 = (($14) + 4)|0; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$0>>2]|0; - FUNCTION_TABLE_viiii[$12 & 3]($13,$16,$19,$20); - $21 = HEAP32[$xCallback>>2]|0; - HEAP32[((392 + 16|0))>>2] = $21; - $22 = HEAP32[$pArg>>2]|0; - HEAP32[((392 + 20|0))>>2] = $22; - STACKTOP = sp;return; -} -function _keywordCode($z,$n) { - $z = $z|0; - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $h = 0, $i = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $h = sp + 4|0; - $i = sp; - HEAP32[$1>>2] = $z; - HEAP32[$2>>2] = $n; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)<(2); - if ($4) { - HEAP32[$0>>2] = 27; - $57 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($57|0); - } - $5 = HEAP32[$1>>2]|0; - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - $8 = (696 + ($7)|0); - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - $11 = $10<<2; - $12 = HEAP32[$2>>2]|0; - $13 = (($12) - 1)|0; - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + ($13)|0); - $16 = HEAP8[$15>>0]|0; - $17 = $16&255; - $18 = (696 + ($17)|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = ($20*3)|0; - $22 = $11 ^ $21; - $23 = HEAP32[$2>>2]|0; - $24 = $22 ^ $23; - $25 = (($24|0) % 127)&-1; - HEAP32[$h>>2] = $25; - $26 = HEAP32[$h>>2]|0; - $27 = (2376 + ($26)|0); - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = (($29) - 1)|0; - HEAP32[$i>>2] = $30; - while(1) { - $31 = HEAP32[$i>>2]|0; - $32 = ($31|0)>=(0); - if (!($32)) { - label = 9; - break; - } - $33 = HEAP32[$i>>2]|0; - $34 = (2632 + ($33)|0); - $35 = HEAP8[$34>>0]|0; - $36 = $35&255; - $37 = HEAP32[$2>>2]|0; - $38 = ($36|0)==($37|0); - if ($38) { - $39 = HEAP32[$i>>2]|0; - $40 = (2760 + ($39<<1)|0); - $41 = HEAP16[$40>>1]|0; - $42 = $41&65535; - $43 = (1816 + ($42)|0); - $44 = HEAP32[$1>>2]|0; - $45 = HEAP32[$2>>2]|0; - $46 = (_sqlite3_strnicmp($43,$44,$45)|0); - $47 = ($46|0)==(0); - if ($47) { - label = 7; - break; - } - } - $52 = HEAP32[$i>>2]|0; - $53 = (2504 + ($52)|0); - $54 = HEAP8[$53>>0]|0; - $55 = $54&255; - $56 = (($55) - 1)|0; - HEAP32[$i>>2] = $56; - } - if ((label|0) == 7) { - $48 = HEAP32[$i>>2]|0; - $49 = (3008 + ($48)|0); - $50 = HEAP8[$49>>0]|0; - $51 = $50&255; - HEAP32[$0>>2] = $51; - $57 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($57|0); - } - else if ((label|0) == 9) { - HEAP32[$0>>2] = 27; - $57 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($57|0); - } - return 0|0; -} -function _freeTempSpace($pBt) { - $pBt = $pBt|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pBt; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 80|0); - $3 = HEAP32[$2>>2]|0; - _sqlite3PageFree($3); - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 80|0); - HEAP32[$5>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3PagerSetPagesize($pPager,$pPageSize,$nReserve) { - $pPager = $pPager|0; - $pPageSize = $pPageSize|0; - $nReserve = $nReserve|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $nByte = 0, $pNew = 0, $pageSize = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $rc = sp + 16|0; - $pageSize = sp + 12|0; - $pNew = sp + 8|0; - $nByte = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $pPageSize; - HEAP32[$2>>2] = $nReserve; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$pageSize>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 15|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = ($8|0)==(0); - if ($9) { - label = 3; - } else { - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 24|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)==(0); - if ($13) { - label = 3; - } - } - if ((label|0) == 3) { - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 204|0); - $16 = HEAP32[$15>>2]|0; - $17 = (_sqlite3PcacheRefCount($16)|0); - $18 = ($17|0)==(0); - if ($18) { - $19 = HEAP32[$pageSize>>2]|0; - $20 = ($19|0)!=(0); - if ($20) { - $21 = HEAP32[$pageSize>>2]|0; - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 152|0); - $24 = HEAP32[$23>>2]|0; - $25 = ($21|0)!=($24|0); - if ($25) { - HEAP32[$pNew>>2] = 0; - $26 = $nByte; - $27 = $26; - HEAP32[$27>>2] = 0; - $28 = (($26) + 4)|0; - $29 = $28; - HEAP32[$29>>2] = 0; - $30 = HEAP32[$0>>2]|0; - $31 = (($30) + 16|0); - $32 = HEAP8[$31>>0]|0; - $33 = $32&255; - $34 = ($33|0)>(0); - if ($34) { - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + 60|0); - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$37>>2]|0; - $39 = ($38|0)!=(0|0); - if ($39) { - $40 = HEAP32[$0>>2]|0; - $41 = (($40) + 60|0); - $42 = HEAP32[$41>>2]|0; - $43 = (_sqlite3OsFileSize($42,$nByte)|0); - HEAP32[$rc>>2] = $43; - } - } - $44 = HEAP32[$rc>>2]|0; - $45 = ($44|0)==(0); - if ($45) { - $46 = HEAP32[$pageSize>>2]|0; - $47 = (_sqlite3PageMalloc($46)|0); - HEAP32[$pNew>>2] = $47; - $48 = HEAP32[$pNew>>2]|0; - $49 = ($48|0)!=(0|0); - if (!($49)) { - HEAP32[$rc>>2] = 7; - } - } - $50 = HEAP32[$rc>>2]|0; - $51 = ($50|0)==(0); - if ($51) { - $52 = HEAP32[$0>>2]|0; - _pager_reset($52); - $53 = $nByte; - $54 = $53; - $55 = HEAP32[$54>>2]|0; - $56 = (($53) + 4)|0; - $57 = $56; - $58 = HEAP32[$57>>2]|0; - $59 = HEAP32[$pageSize>>2]|0; - $60 = (_i64Add(($55|0),($58|0),($59|0),0)|0); - $61 = tempRet0; - $62 = (_i64Subtract(($60|0),($61|0),1,0)|0); - $63 = tempRet0; - $64 = HEAP32[$pageSize>>2]|0; - $65 = (___divdi3(($62|0),($63|0),($64|0),0)|0); - $66 = tempRet0; - $67 = HEAP32[$0>>2]|0; - $68 = (($67) + 24|0); - HEAP32[$68>>2] = $65; - $69 = HEAP32[$pageSize>>2]|0; - $70 = HEAP32[$0>>2]|0; - $71 = (($70) + 152|0); - HEAP32[$71>>2] = $69; - $72 = HEAP32[$0>>2]|0; - $73 = (($72) + 200|0); - $74 = HEAP32[$73>>2]|0; - _sqlite3PageFree($74); - $75 = HEAP32[$pNew>>2]|0; - $76 = HEAP32[$0>>2]|0; - $77 = (($76) + 200|0); - HEAP32[$77>>2] = $75; - $78 = HEAP32[$0>>2]|0; - $79 = (($78) + 204|0); - $80 = HEAP32[$79>>2]|0; - $81 = HEAP32[$pageSize>>2]|0; - _sqlite3PcacheSetPageSize($80,$81); - } - } - } - } - } - $82 = HEAP32[$0>>2]|0; - $83 = (($82) + 152|0); - $84 = HEAP32[$83>>2]|0; - $85 = HEAP32[$1>>2]|0; - HEAP32[$85>>2] = $84; - $86 = HEAP32[$rc>>2]|0; - $87 = ($86|0)==(0); - if (!($87)) { - $99 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($99|0); - } - $88 = HEAP32[$2>>2]|0; - $89 = ($88|0)<(0); - if ($89) { - $90 = HEAP32[$0>>2]|0; - $91 = (($90) + 142|0); - $92 = HEAP16[$91>>1]|0; - $93 = $92 << 16 >> 16; - HEAP32[$2>>2] = $93; - } - $94 = HEAP32[$2>>2]|0; - $95 = $94&65535; - $96 = HEAP32[$0>>2]|0; - $97 = (($96) + 142|0); - HEAP16[$97>>1] = $95; - $98 = HEAP32[$0>>2]|0; - _pagerFixMaplimit($98); - $99 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($99|0); -} -function _sqlite3PcacheRefCount($pCache) { - $pCache = $pCache|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pCache; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 12|0); - $3 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _sqlite3OsFileSize($id,$pSize) { - $id = $id|0; - $pSize = $pSize|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $id; - HEAP32[$1>>2] = $pSize; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 24|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (FUNCTION_TABLE_iii[$5 & 63]($6,$7)|0); - STACKTOP = sp;return ($8|0); -} -function _sqlite3PageMalloc($sz) { - $sz = $sz|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $sz; - $1 = HEAP32[$0>>2]|0; - $2 = (_pcache1Alloc($1)|0); - STACKTOP = sp;return ($2|0); -} -function _pager_reset($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 88|0); - $3 = HEAP32[$2>>2]|0; - _sqlite3BackupRestart($3); - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 204|0); - $6 = HEAP32[$5>>2]|0; - _sqlite3PcacheClear($6); - STACKTOP = sp;return; -} -function _sqlite3PageFree($p) { - $p = $p|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - (_pcache1Free($1)|0); - STACKTOP = sp;return; -} -function _sqlite3PcacheSetPageSize($pCache,$szPage) { - $pCache = $pCache|0; - $szPage = $szPage|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pCache; - HEAP32[$1>>2] = $szPage; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 40|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0|0); - if ($5) { - $6 = HEAP32[((38512 + 148|0))>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 40|0); - $9 = HEAP32[$8>>2]|0; - FUNCTION_TABLE_vi[$6 & 31]($9); - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 40|0); - HEAP32[$11>>2] = 0; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 44|0); - HEAP32[$13>>2] = 0; - } - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 20|0); - HEAP32[$16>>2] = $14; - STACKTOP = sp;return; -} -function _pagerFixMaplimit($pPager) { - $pPager = $pPager|0; - var $0 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - STACKTOP = sp;return; -} -function _pcache1Free($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nFreed = 0, $pSlot = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $nFreed = sp + 4|0; - $pSlot = sp; - HEAP32[$1>>2] = $p; - HEAP32[$nFreed>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0|0); - if ($3) { - HEAP32[$0>>2] = 0; - $26 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($26|0); - } - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[((3136 + 44|0))>>2]|0; - $6 = ($4>>>0)>=($5>>>0); - if ($6) { - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[((3136 + 48|0))>>2]|0; - $9 = ($7>>>0)<($8>>>0); - if ($9) { - _sqlite3StatusAdd(1,-1); - $10 = HEAP32[$1>>2]|0; - HEAP32[$pSlot>>2] = $10; - $11 = HEAP32[((3136 + 56|0))>>2]|0; - $12 = HEAP32[$pSlot>>2]|0; - HEAP32[$12>>2] = $11; - $13 = HEAP32[$pSlot>>2]|0; - HEAP32[((3136 + 56|0))>>2] = $13; - $14 = HEAP32[((3136 + 60|0))>>2]|0; - $15 = (($14) + 1)|0; - HEAP32[((3136 + 60|0))>>2] = $15; - $16 = HEAP32[((3136 + 60|0))>>2]|0; - $17 = HEAP32[((3136 + 40|0))>>2]|0; - $18 = ($16|0)<($17|0); - $19 = $18&1; - HEAP32[((3136 + 64|0))>>2] = $19; - } else { - label = 6; - } - } else { - label = 6; - } - if ((label|0) == 6) { - $20 = HEAP32[$1>>2]|0; - $21 = (_sqlite3MallocSize($20)|0); - HEAP32[$nFreed>>2] = $21; - $22 = HEAP32[$nFreed>>2]|0; - $23 = (0 - ($22))|0; - _sqlite3StatusAdd(2,$23); - $24 = HEAP32[$1>>2]|0; - _sqlite3_free($24); - } - $25 = HEAP32[$nFreed>>2]|0; - HEAP32[$0>>2] = $25; - $26 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($26|0); -} -function _sqlite3BackupRestart($pBackup) { - $pBackup = $pBackup|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pBackup; - $1 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $1; - while(1) { - $2 = HEAP32[$p>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - break; - } - $4 = HEAP32[$p>>2]|0; - $5 = (($4) + 16|0); - HEAP32[$5>>2] = 1; - $6 = HEAP32[$p>>2]|0; - $7 = (($6) + 44|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$p>>2] = $8; - } - STACKTOP = sp;return; -} -function _sqlite3PcacheClear($pCache) { - $pCache = $pCache|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pCache; - $1 = HEAP32[$0>>2]|0; - _sqlite3PcacheTruncate($1,0); - STACKTOP = sp;return; -} -function _sqlite3PcacheTruncate($pCache,$pgno) { - $pCache = $pCache|0; - $pgno = $pgno|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $p = 0, $pNext = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $p = sp + 4|0; - $pNext = sp; - HEAP32[$0>>2] = $pCache; - HEAP32[$1>>2] = $pgno; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 40|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - STACKTOP = sp;return; - } - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$p>>2] = $7; - while(1) { - $8 = HEAP32[$p>>2]|0; - $9 = ($8|0)!=(0|0); - if (!($9)) { - break; - } - $10 = HEAP32[$p>>2]|0; - $11 = (($10) + 32|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$pNext>>2] = $12; - $13 = HEAP32[$p>>2]|0; - $14 = (($13) + 20|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = ($15>>>0)>($16>>>0); - if ($17) { - $18 = HEAP32[$p>>2]|0; - _sqlite3PcacheMakeClean($18); - } - $19 = HEAP32[$pNext>>2]|0; - HEAP32[$p>>2] = $19; - } - $20 = HEAP32[$1>>2]|0; - $21 = ($20|0)==(0); - if ($21) { - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 44|0); - $24 = HEAP32[$23>>2]|0; - $25 = ($24|0)!=(0|0); - if ($25) { - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 44|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + 4|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 20|0); - $33 = HEAP32[$32>>2]|0; - _memset(($30|0),0,($33|0))|0; - HEAP32[$1>>2] = 1; - } - } - $34 = HEAP32[((38512 + 144|0))>>2]|0; - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + 40|0); - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$1>>2]|0; - $39 = (($38) + 1)|0; - FUNCTION_TABLE_vii[$34 & 7]($37,$39); - STACKTOP = sp;return; -} -function _sqlite3PcacheMakeClean($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 24|0); - $3 = HEAP16[$2>>1]|0; - $4 = $3&65535; - $5 = $4 & 2; - $6 = ($5|0)!=(0); - if (!($6)) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - _pcacheRemoveFromDirtyList($7); - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 24|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10&65535; - $12 = $11 & -7; - $13 = $12&65535; - HEAP16[$9>>1] = $13; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 26|0); - $16 = HEAP16[$15>>1]|0; - $17 = $16 << 16 >> 16; - $18 = ($17|0)==(0); - if (!($18)) { - STACKTOP = sp;return; - } - $19 = HEAP32[$0>>2]|0; - _pcacheUnpin($19); - STACKTOP = sp;return; -} -function _pcacheRemoveFromDirtyList($pPage) { - $pPage = $pPage|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pSynced = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $p = sp + 4|0; - $pSynced = sp; - HEAP32[$0>>2] = $pPage; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 28|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$p>>2] = $3; - $4 = HEAP32[$p>>2]|0; - $5 = (($4) + 8|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = ($6|0)==($7|0); - if ($8) { - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 36|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$pSynced>>2] = $11; - while(1) { - $12 = HEAP32[$pSynced>>2]|0; - $13 = ($12|0)!=(0|0); - if ($13) { - $14 = HEAP32[$pSynced>>2]|0; - $15 = (($14) + 24|0); - $16 = HEAP16[$15>>1]|0; - $17 = $16&65535; - $18 = $17 & 4; - $19 = ($18|0)!=(0); - $64 = $19; - } else { - $64 = 0; - } - $20 = HEAP32[$pSynced>>2]|0; - if (!($64)) { - break; - } - $21 = (($20) + 36|0); - $22 = HEAP32[$21>>2]|0; - HEAP32[$pSynced>>2] = $22; - } - $23 = HEAP32[$p>>2]|0; - $24 = (($23) + 8|0); - HEAP32[$24>>2] = $20; - } - $25 = HEAP32[$0>>2]|0; - $26 = (($25) + 32|0); - $27 = HEAP32[$26>>2]|0; - $28 = ($27|0)!=(0|0); - $29 = HEAP32[$0>>2]|0; - $30 = (($29) + 36|0); - $31 = HEAP32[$30>>2]|0; - if ($28) { - $32 = HEAP32[$0>>2]|0; - $33 = (($32) + 32|0); - $34 = HEAP32[$33>>2]|0; - $35 = (($34) + 36|0); - HEAP32[$35>>2] = $31; - } else { - $36 = HEAP32[$p>>2]|0; - $37 = (($36) + 4|0); - HEAP32[$37>>2] = $31; - } - $38 = HEAP32[$0>>2]|0; - $39 = (($38) + 36|0); - $40 = HEAP32[$39>>2]|0; - $41 = ($40|0)!=(0|0); - $42 = HEAP32[$0>>2]|0; - $43 = (($42) + 32|0); - $44 = HEAP32[$43>>2]|0; - if ($41) { - $45 = HEAP32[$0>>2]|0; - $46 = (($45) + 36|0); - $47 = HEAP32[$46>>2]|0; - $48 = (($47) + 32|0); - HEAP32[$48>>2] = $44; - } else { - $49 = HEAP32[$p>>2]|0; - HEAP32[$49>>2] = $44; - $50 = HEAP32[$p>>2]|0; - $51 = HEAP32[$50>>2]|0; - $52 = ($51|0)==(0|0); - if ($52) { - $53 = HEAP32[$p>>2]|0; - $54 = (($53) + 28|0); - $55 = HEAP8[$54>>0]|0; - $56 = $55&255; - $57 = ($56|0)!=(0); - if ($57) { - $58 = HEAP32[$p>>2]|0; - $59 = (($58) + 29|0); - HEAP8[$59>>0] = 2; - } - } - } - $60 = HEAP32[$0>>2]|0; - $61 = (($60) + 32|0); - HEAP32[$61>>2] = 0; - $62 = HEAP32[$0>>2]|0; - $63 = (($62) + 36|0); - HEAP32[$63>>2] = 0; - STACKTOP = sp;return; -} -function _pcacheUnpin($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $pCache = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pCache = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 28|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pCache>>2] = $3; - $4 = HEAP32[$pCache>>2]|0; - $5 = (($4) + 28|0); - $6 = HEAP8[$5>>0]|0; - $7 = ($6<<24>>24)!=(0); - if (!($7)) { - STACKTOP = sp;return; - } - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 20|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)==(1); - if ($11) { - $12 = HEAP32[$pCache>>2]|0; - $13 = (($12) + 44|0); - HEAP32[$13>>2] = 0; - } - $14 = HEAP32[((38512 + 136|0))>>2]|0; - $15 = HEAP32[$pCache>>2]|0; - $16 = (($15) + 40|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$18>>2]|0; - FUNCTION_TABLE_viii[$14 & 63]($17,$19,0); - STACKTOP = sp;return; -} -function _pcache1Alloc($nByte) { - $nByte = $nByte|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $sz = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $p = sp + 4|0; - $sz = sp; - HEAP32[$0>>2] = $nByte; - HEAP32[$p>>2] = 0; - $1 = HEAP32[$0>>2]|0; - _sqlite3StatusSet(7,$1); - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[((3136 + 32|0))>>2]|0; - $4 = ($2|0)<=($3|0); - if ($4) { - $5 = HEAP32[((3136 + 56|0))>>2]|0; - HEAP32[$p>>2] = $5; - $6 = HEAP32[$p>>2]|0; - $7 = ($6|0)!=(0|0); - if ($7) { - $8 = HEAP32[((3136 + 56|0))>>2]|0; - $9 = HEAP32[$8>>2]|0; - HEAP32[((3136 + 56|0))>>2] = $9; - $10 = HEAP32[((3136 + 60|0))>>2]|0; - $11 = (($10) + -1)|0; - HEAP32[((3136 + 60|0))>>2] = $11; - $12 = HEAP32[((3136 + 60|0))>>2]|0; - $13 = HEAP32[((3136 + 40|0))>>2]|0; - $14 = ($12|0)<($13|0); - $15 = $14&1; - HEAP32[((3136 + 64|0))>>2] = $15; - _sqlite3StatusAdd(1,1); - } - } - $16 = HEAP32[$p>>2]|0; - $17 = ($16|0)==(0|0); - if (!($17)) { - $25 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($25|0); - } - $18 = HEAP32[$0>>2]|0; - $19 = (_sqlite3Malloc($18)|0); - HEAP32[$p>>2] = $19; - $20 = HEAP32[$p>>2]|0; - $21 = ($20|0)!=(0|0); - if (!($21)) { - $25 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($25|0); - } - $22 = HEAP32[$p>>2]|0; - $23 = (_sqlite3MallocSize($22)|0); - HEAP32[$sz>>2] = $23; - $24 = HEAP32[$sz>>2]|0; - _sqlite3StatusAdd(2,$24); - $25 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($25|0); -} -function _sqlite3BitvecCreate($iSize) { - $iSize = $iSize|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $iSize; - $1 = (_sqlite3MallocZero(512)|0); - HEAP32[$p>>2] = $1; - $2 = HEAP32[$p>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - $6 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($6|0); - } - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$p>>2]|0; - HEAP32[$5>>2] = $4; - $6 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($6|0); -} -function _sqlite3BitvecSet($p,$i) { - $p = $p|0; - $i = $i|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; - var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; - var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; - var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; - var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aiValues = 0, $bin = 0, $h = 0, $j = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $h = sp + 16|0; - $bin = sp + 12|0; - $j = sp + 8|0; - $rc = sp + 4|0; - $aiValues = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $i; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - HEAP32[$0>>2] = 0; - $144 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($144|0); - } - $5 = HEAP32[$2>>2]|0; - $6 = (($5) + -1)|0; - HEAP32[$2>>2] = $6; - while(1) { - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = ($8>>>0)>(4000); - if (!($9)) { - break; - } - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 8|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)!=(0); - if (!($13)) { - break; - } - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 8|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($14>>>0) / ($17>>>0))&-1; - HEAP32[$bin>>2] = $18; - $19 = HEAP32[$2>>2]|0; - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 8|0); - $22 = HEAP32[$21>>2]|0; - $23 = (($19>>>0) % ($22>>>0))&-1; - HEAP32[$2>>2] = $23; - $24 = HEAP32[$bin>>2]|0; - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 12|0); - $27 = (($26) + ($24<<2)|0); - $28 = HEAP32[$27>>2]|0; - $29 = ($28|0)==(0|0); - if ($29) { - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 8|0); - $32 = HEAP32[$31>>2]|0; - $33 = (_sqlite3BitvecCreate($32)|0); - $34 = HEAP32[$bin>>2]|0; - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 12|0); - $37 = (($36) + ($34<<2)|0); - HEAP32[$37>>2] = $33; - $38 = HEAP32[$bin>>2]|0; - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 12|0); - $41 = (($40) + ($38<<2)|0); - $42 = HEAP32[$41>>2]|0; - $43 = ($42|0)==(0|0); - if ($43) { - label = 8; - break; - } - } - $44 = HEAP32[$bin>>2]|0; - $45 = HEAP32[$1>>2]|0; - $46 = (($45) + 12|0); - $47 = (($46) + ($44<<2)|0); - $48 = HEAP32[$47>>2]|0; - HEAP32[$1>>2] = $48; - } - if ((label|0) == 8) { - HEAP32[$0>>2] = 7; - $144 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($144|0); - } - $49 = HEAP32[$1>>2]|0; - $50 = HEAP32[$49>>2]|0; - $51 = ($50>>>0)<=(4000); - $52 = HEAP32[$2>>2]|0; - if ($51) { - $53 = $52 & 7; - $54 = 1 << $53; - $55 = HEAP32[$2>>2]|0; - $56 = (($55>>>0) / 8)&-1; - $57 = HEAP32[$1>>2]|0; - $58 = (($57) + 12|0); - $59 = (($58) + ($56)|0); - $60 = HEAP8[$59>>0]|0; - $61 = $60&255; - $62 = $61 | $54; - $63 = $62&255; - HEAP8[$59>>0] = $63; - HEAP32[$0>>2] = 0; - $144 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($144|0); - } - $64 = (($52) + 1)|0; - HEAP32[$2>>2] = $64; - $65 = $52; - $66 = (($65>>>0) % 125)&-1; - HEAP32[$h>>2] = $66; - $67 = HEAP32[$h>>2]|0; - $68 = HEAP32[$1>>2]|0; - $69 = (($68) + 12|0); - $70 = (($69) + ($67<<2)|0); - $71 = HEAP32[$70>>2]|0; - $72 = ($71|0)!=(0); - L20: do { - if ($72) { - while(1) { - $77 = HEAP32[$h>>2]|0; - $78 = HEAP32[$1>>2]|0; - $79 = (($78) + 12|0); - $80 = (($79) + ($77<<2)|0); - $81 = HEAP32[$80>>2]|0; - $82 = HEAP32[$2>>2]|0; - $83 = ($81|0)==($82|0); - if ($83) { - break; - } - $84 = HEAP32[$h>>2]|0; - $85 = (($84) + 1)|0; - HEAP32[$h>>2] = $85; - $86 = HEAP32[$h>>2]|0; - $87 = ($86>>>0)>=(125); - $$ = $87 ? 0 : $85; - HEAP32[$h>>2] = $$; - $88 = HEAP32[$h>>2]|0; - $89 = HEAP32[$1>>2]|0; - $90 = (($89) + 12|0); - $91 = (($90) + ($88<<2)|0); - $92 = HEAP32[$91>>2]|0; - $93 = ($92|0)!=(0); - if (!($93)) { - label = 17; - break L20; - } - } - HEAP32[$0>>2] = 0; - $144 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($144|0); - } else { - $73 = HEAP32[$1>>2]|0; - $74 = (($73) + 4|0); - $75 = HEAP32[$74>>2]|0; - $76 = ($75>>>0)<(124); - if (!($76)) { - label = 17; - } - } - } while(0); - if ((label|0) == 17) { - $94 = HEAP32[$1>>2]|0; - $95 = (($94) + 4|0); - $96 = HEAP32[$95>>2]|0; - $97 = ($96>>>0)>=(62); - if ($97) { - $98 = (_sqlite3DbMallocRaw(0,500)|0); - HEAP32[$aiValues>>2] = $98; - $99 = HEAP32[$aiValues>>2]|0; - $100 = ($99|0)==(0|0); - if ($100) { - HEAP32[$0>>2] = 7; - $144 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($144|0); - } - $101 = HEAP32[$aiValues>>2]|0; - $102 = HEAP32[$1>>2]|0; - $103 = (($102) + 12|0); - _memcpy(($101|0),($103|0),500)|0; - $104 = HEAP32[$1>>2]|0; - $105 = (($104) + 12|0); - _memset(($105|0),0,500)|0; - $106 = HEAP32[$1>>2]|0; - $107 = HEAP32[$106>>2]|0; - $108 = (($107) + 125)|0; - $109 = (($108) - 1)|0; - $110 = (($109>>>0) / 125)&-1; - $111 = HEAP32[$1>>2]|0; - $112 = (($111) + 8|0); - HEAP32[$112>>2] = $110; - $113 = HEAP32[$1>>2]|0; - $114 = HEAP32[$2>>2]|0; - $115 = (_sqlite3BitvecSet($113,$114)|0); - HEAP32[$rc>>2] = $115; - HEAP32[$j>>2] = 0; - while(1) { - $116 = HEAP32[$j>>2]|0; - $117 = ($116>>>0)<(125); - if (!($117)) { - break; - } - $118 = HEAP32[$j>>2]|0; - $119 = HEAP32[$aiValues>>2]|0; - $120 = (($119) + ($118<<2)|0); - $121 = HEAP32[$120>>2]|0; - $122 = ($121|0)!=(0); - if ($122) { - $123 = HEAP32[$1>>2]|0; - $124 = HEAP32[$j>>2]|0; - $125 = HEAP32[$aiValues>>2]|0; - $126 = (($125) + ($124<<2)|0); - $127 = HEAP32[$126>>2]|0; - $128 = (_sqlite3BitvecSet($123,$127)|0); - $129 = HEAP32[$rc>>2]|0; - $130 = $129 | $128; - HEAP32[$rc>>2] = $130; - } - $131 = HEAP32[$j>>2]|0; - $132 = (($131) + 1)|0; - HEAP32[$j>>2] = $132; - } - $133 = HEAP32[$aiValues>>2]|0; - _sqlite3DbFree(0,$133); - $134 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $134; - $144 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($144|0); - } - } - $135 = HEAP32[$1>>2]|0; - $136 = (($135) + 4|0); - $137 = HEAP32[$136>>2]|0; - $138 = (($137) + 1)|0; - HEAP32[$136>>2] = $138; - $139 = HEAP32[$2>>2]|0; - $140 = HEAP32[$h>>2]|0; - $141 = HEAP32[$1>>2]|0; - $142 = (($141) + 12|0); - $143 = (($142) + ($140<<2)|0); - HEAP32[$143>>2] = $139; - HEAP32[$0>>2] = 0; - $144 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($144|0); -} -function _sqlite3BitvecClear($p,$i,$pBuf) { - $p = $p|0; - $i = $i|0; - $pBuf = $pBuf|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; - var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $aiValues = 0, $bin = 0; - var $h = 0, $j = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $bin = sp + 12|0; - $j = sp + 8|0; - $aiValues = sp + 4|0; - $h = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $i; - HEAP32[$2>>2] = $pBuf; - $3 = HEAP32[$0>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - STACKTOP = sp;return; - } - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + -1)|0; - HEAP32[$1>>2] = $6; - while(1) { - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 8|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)!=(0); - if (!($10)) { - break; - } - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 8|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($11>>>0) / ($14>>>0))&-1; - HEAP32[$bin>>2] = $15; - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 8|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($16>>>0) % ($19>>>0))&-1; - HEAP32[$1>>2] = $20; - $21 = HEAP32[$bin>>2]|0; - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 12|0); - $24 = (($23) + ($21<<2)|0); - $25 = HEAP32[$24>>2]|0; - HEAP32[$0>>2] = $25; - $26 = HEAP32[$0>>2]|0; - $27 = ($26|0)!=(0|0); - if (!($27)) { - label = 16; - break; - } - } - if ((label|0) == 16) { - STACKTOP = sp;return; - } - $28 = HEAP32[$0>>2]|0; - $29 = HEAP32[$28>>2]|0; - $30 = ($29>>>0)<=(4000); - if ($30) { - $31 = HEAP32[$1>>2]|0; - $32 = $31 & 7; - $33 = 1 << $32; - $34 = $33 ^ -1; - $35 = HEAP32[$1>>2]|0; - $36 = (($35>>>0) / 8)&-1; - $37 = HEAP32[$0>>2]|0; - $38 = (($37) + 12|0); - $39 = (($38) + ($36)|0); - $40 = HEAP8[$39>>0]|0; - $41 = $40&255; - $42 = $41 & $34; - $43 = $42&255; - HEAP8[$39>>0] = $43; - STACKTOP = sp;return; - } - $44 = HEAP32[$2>>2]|0; - HEAP32[$aiValues>>2] = $44; - $45 = HEAP32[$aiValues>>2]|0; - $46 = HEAP32[$0>>2]|0; - $47 = (($46) + 12|0); - _memcpy(($45|0),($47|0),500)|0; - $48 = HEAP32[$0>>2]|0; - $49 = (($48) + 12|0); - _memset(($49|0),0,500)|0; - $50 = HEAP32[$0>>2]|0; - $51 = (($50) + 4|0); - HEAP32[$51>>2] = 0; - HEAP32[$j>>2] = 0; - while(1) { - $52 = HEAP32[$j>>2]|0; - $53 = ($52>>>0)<(125); - if (!($53)) { - break; - } - $54 = HEAP32[$j>>2]|0; - $55 = HEAP32[$aiValues>>2]|0; - $56 = (($55) + ($54<<2)|0); - $57 = HEAP32[$56>>2]|0; - $58 = ($57|0)!=(0); - if ($58) { - $59 = HEAP32[$j>>2]|0; - $60 = HEAP32[$aiValues>>2]|0; - $61 = (($60) + ($59<<2)|0); - $62 = HEAP32[$61>>2]|0; - $63 = HEAP32[$1>>2]|0; - $64 = (($63) + 1)|0; - $65 = ($62|0)!=($64|0); - if ($65) { - $66 = HEAP32[$j>>2]|0; - $67 = HEAP32[$aiValues>>2]|0; - $68 = (($67) + ($66<<2)|0); - $69 = HEAP32[$68>>2]|0; - $70 = (($69) - 1)|0; - $71 = $70; - $72 = (($71>>>0) % 125)&-1; - HEAP32[$h>>2] = $72; - $73 = HEAP32[$0>>2]|0; - $74 = (($73) + 4|0); - $75 = HEAP32[$74>>2]|0; - $76 = (($75) + 1)|0; - HEAP32[$74>>2] = $76; - while(1) { - $77 = HEAP32[$h>>2]|0; - $78 = HEAP32[$0>>2]|0; - $79 = (($78) + 12|0); - $80 = (($79) + ($77<<2)|0); - $81 = HEAP32[$80>>2]|0; - $82 = ($81|0)!=(0); - if (!($82)) { - break; - } - $83 = HEAP32[$h>>2]|0; - $84 = (($83) + 1)|0; - HEAP32[$h>>2] = $84; - $85 = HEAP32[$h>>2]|0; - $86 = ($85>>>0)>=(125); - $$ = $86 ? 0 : $84; - HEAP32[$h>>2] = $$; - } - $87 = HEAP32[$j>>2]|0; - $88 = HEAP32[$aiValues>>2]|0; - $89 = (($88) + ($87<<2)|0); - $90 = HEAP32[$89>>2]|0; - $91 = HEAP32[$h>>2]|0; - $92 = HEAP32[$0>>2]|0; - $93 = (($92) + 12|0); - $94 = (($93) + ($91<<2)|0); - HEAP32[$94>>2] = $90; - } - } - $95 = HEAP32[$j>>2]|0; - $96 = (($95) + 1)|0; - HEAP32[$j>>2] = $96; - } - STACKTOP = sp;return; -} -function _sqlite3BitvecTest($p,$i) { - $p = $p|0; - $i = $i|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $bin = 0, $h = 0, $or$cond = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $bin = sp + 4|0; - $h = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $i; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - HEAP32[$0>>2] = 0; - $69 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($69|0); - } - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = ($5>>>0)>($7>>>0); - $9 = HEAP32[$2>>2]|0; - $10 = ($9|0)==(0); - $or$cond = $8 | $10; - if ($or$cond) { - HEAP32[$0>>2] = 0; - $69 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($69|0); - } - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + -1)|0; - HEAP32[$2>>2] = $12; - while(1) { - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 8|0); - $15 = HEAP32[$14>>2]|0; - $16 = ($15|0)!=(0); - if (!($16)) { - break; - } - $17 = HEAP32[$2>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 8|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($17>>>0) / ($20>>>0))&-1; - HEAP32[$bin>>2] = $21; - $22 = HEAP32[$2>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 8|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($22>>>0) % ($25>>>0))&-1; - HEAP32[$2>>2] = $26; - $27 = HEAP32[$bin>>2]|0; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 12|0); - $30 = (($29) + ($27<<2)|0); - $31 = HEAP32[$30>>2]|0; - HEAP32[$1>>2] = $31; - $32 = HEAP32[$1>>2]|0; - $33 = ($32|0)!=(0|0); - if (!($33)) { - label = 8; - break; - } - } - if ((label|0) == 8) { - HEAP32[$0>>2] = 0; - $69 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($69|0); - } - $34 = HEAP32[$1>>2]|0; - $35 = HEAP32[$34>>2]|0; - $36 = ($35>>>0)<=(4000); - $37 = HEAP32[$2>>2]|0; - if ($36) { - $38 = (($37>>>0) / 8)&-1; - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 12|0); - $41 = (($40) + ($38)|0); - $42 = HEAP8[$41>>0]|0; - $43 = $42&255; - $44 = HEAP32[$2>>2]|0; - $45 = $44 & 7; - $46 = 1 << $45; - $47 = $43 & $46; - $48 = ($47|0)!=(0); - $49 = $48&1; - HEAP32[$0>>2] = $49; - $69 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($69|0); - } - $50 = (($37) + 1)|0; - HEAP32[$2>>2] = $50; - $51 = $37; - $52 = (($51>>>0) % 125)&-1; - HEAP32[$h>>2] = $52; - while(1) { - $53 = HEAP32[$h>>2]|0; - $54 = HEAP32[$1>>2]|0; - $55 = (($54) + 12|0); - $56 = (($55) + ($53<<2)|0); - $57 = HEAP32[$56>>2]|0; - $58 = ($57|0)!=(0); - if (!($58)) { - label = 16; - break; - } - $59 = HEAP32[$h>>2]|0; - $60 = HEAP32[$1>>2]|0; - $61 = (($60) + 12|0); - $62 = (($61) + ($59<<2)|0); - $63 = HEAP32[$62>>2]|0; - $64 = HEAP32[$2>>2]|0; - $65 = ($63|0)==($64|0); - if ($65) { - label = 14; - break; - } - $66 = HEAP32[$h>>2]|0; - $67 = (($66) + 1)|0; - $68 = (($67>>>0) % 125)&-1; - HEAP32[$h>>2] = $68; - } - if ((label|0) == 14) { - HEAP32[$0>>2] = 1; - $69 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($69|0); - } - else if ((label|0) == 16) { - HEAP32[$0>>2] = 0; - $69 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($69|0); - } - return 0|0; -} -function _sqlite3BitvecSize($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - STACKTOP = sp;return ($2|0); -} -function _sqlite3BitvecDestroy($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)==(0|0); - if ($2) { - STACKTOP = sp;return; - } - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 8|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0); - L4: do { - if ($6) { - HEAP32[$i>>2] = 0; - while(1) { - $7 = HEAP32[$i>>2]|0; - $8 = ($7>>>0)<(125); - if (!($8)) { - break L4; - } - $9 = HEAP32[$i>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 12|0); - $12 = (($11) + ($9<<2)|0); - $13 = HEAP32[$12>>2]|0; - _sqlite3BitvecDestroy($13); - $14 = HEAP32[$i>>2]|0; - $15 = (($14) + 1)|0; - HEAP32[$i>>2] = $15; - } - } - } while(0); - $16 = HEAP32[$0>>2]|0; - _sqlite3_free($16); - STACKTOP = sp;return; -} -function _sqlite3FindCollSeq($db,$enc,$zName,$create) { - $db = $db|0; - $enc = $enc|0; - $zName = $zName|0; - $create = $create|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $pColl = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 12|0; - $1 = sp + 16|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $pColl = sp; - HEAP32[$0>>2] = $db; - HEAP8[$1>>0] = $enc; - HEAP32[$2>>2] = $zName; - HEAP32[$3>>2] = $create; - $4 = HEAP32[$2>>2]|0; - $5 = ($4|0)!=(0|0); - $6 = HEAP32[$0>>2]|0; - if ($5) { - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$3>>2]|0; - $9 = (_findCollSeqEntry($6,$7,$8)|0); - HEAP32[$pColl>>2] = $9; - } else { - $10 = (($6) + 8|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$pColl>>2] = $11; - } - $12 = HEAP32[$pColl>>2]|0; - $13 = ($12|0)!=(0|0); - if (!($13)) { - $19 = HEAP32[$pColl>>2]|0; - STACKTOP = sp;return ($19|0); - } - $14 = HEAP8[$1>>0]|0; - $15 = $14&255; - $16 = (($15) - 1)|0; - $17 = HEAP32[$pColl>>2]|0; - $18 = (($17) + (($16*20)|0)|0); - HEAP32[$pColl>>2] = $18; - $19 = HEAP32[$pColl>>2]|0; - STACKTOP = sp;return ($19|0); -} -function _invalidateCachedKeyInfo($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iDb = 0, $k = 0, $pDb = 0; - var $pIdx = 0, $pTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $pDb = sp + 16|0; - $iDb = sp + 12|0; - $k = sp + 8|0; - $pTab = sp + 4|0; - $pIdx = sp; - HEAP32[$0>>2] = $db; - HEAP32[$iDb>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 16|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pDb>>2] = $3; - while(1) { - $4 = HEAP32[$iDb>>2]|0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 20|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($4|0)<($7|0); - if (!($8)) { - break; - } - $9 = HEAP32[$pDb>>2]|0; - $10 = (($9) + 4|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)==(0|0); - L4: do { - if (!($12)) { - $13 = HEAP32[$pDb>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - _sqlite3BtreeEnter($15); - $16 = HEAP32[$pDb>>2]|0; - $17 = (($16) + 12|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + 8|0); - $20 = (($19) + 8|0); - $21 = HEAP32[$20>>2]|0; - HEAP32[$k>>2] = $21; - while(1) { - $22 = HEAP32[$k>>2]|0; - $23 = ($22|0)!=(0|0); - if (!($23)) { - break L4; - } - $24 = HEAP32[$k>>2]|0; - $25 = (($24) + 8|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$pTab>>2] = $26; - $27 = HEAP32[$pTab>>2]|0; - $28 = (($27) + 8|0); - $29 = HEAP32[$28>>2]|0; - HEAP32[$pIdx>>2] = $29; - while(1) { - $30 = HEAP32[$pIdx>>2]|0; - $31 = ($30|0)!=(0|0); - if (!($31)) { - break; - } - $32 = HEAP32[$pIdx>>2]|0; - $33 = (($32) + 40|0); - $34 = HEAP32[$33>>2]|0; - $35 = ($34|0)!=(0|0); - if ($35) { - $36 = HEAP32[$pIdx>>2]|0; - $37 = (($36) + 40|0); - $38 = HEAP32[$37>>2]|0; - $39 = (($38) + 12|0); - $40 = HEAP32[$39>>2]|0; - $41 = HEAP32[$0>>2]|0; - $42 = ($40|0)==($41|0); - if ($42) { - $43 = HEAP32[$pIdx>>2]|0; - $44 = (($43) + 40|0); - $45 = HEAP32[$44>>2]|0; - _sqlite3KeyInfoUnref($45); - $46 = HEAP32[$pIdx>>2]|0; - $47 = (($46) + 40|0); - HEAP32[$47>>2] = 0; - } - } - $48 = HEAP32[$pIdx>>2]|0; - $49 = (($48) + 20|0); - $50 = HEAP32[$49>>2]|0; - HEAP32[$pIdx>>2] = $50; - } - $51 = HEAP32[$k>>2]|0; - $52 = HEAP32[$51>>2]|0; - HEAP32[$k>>2] = $52; - } - } - } while(0); - $53 = HEAP32[$iDb>>2]|0; - $54 = (($53) + 1)|0; - HEAP32[$iDb>>2] = $54; - $55 = HEAP32[$pDb>>2]|0; - $56 = (($55) + 16|0); - HEAP32[$pDb>>2] = $56; - } - STACKTOP = sp;return; -} -function _sqlite3HashFind($pH,$pKey,$nKey) { - $pH = $pH|0; - $pKey = $pKey|0; - $nKey = $nKey|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $elem = 0, $h = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $elem = sp + 4|0; - $h = sp; - HEAP32[$0>>2] = $pH; - HEAP32[$1>>2] = $pKey; - HEAP32[$2>>2] = $nKey; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 12|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0|0); - if ($6) { - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = (_strHash($7,$8)|0); - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = (($9>>>0) % ($11>>>0))&-1; - HEAP32[$h>>2] = $12; - } else { - HEAP32[$h>>2] = 0; - } - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = HEAP32[$h>>2]|0; - $17 = (_findElementGivenHash($13,$14,$15,$16)|0); - HEAP32[$elem>>2] = $17; - $18 = HEAP32[$elem>>2]|0; - $19 = ($18|0)!=(0|0); - if (!($19)) { - $23 = 0; - STACKTOP = sp;return ($23|0); - } - $20 = HEAP32[$elem>>2]|0; - $21 = (($20) + 8|0); - $22 = HEAP32[$21>>2]|0; - $23 = $22; - STACKTOP = sp;return ($23|0); -} -function _strHash($z,$nKey) { - $z = $z|0; - $nKey = $nKey|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $h = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $h = sp; - HEAP32[$0>>2] = $z; - HEAP32[$1>>2] = $nKey; - HEAP32[$h>>2] = 0; - while(1) { - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)>(0); - $4 = HEAP32[$h>>2]|0; - if (!($3)) { - break; - } - $5 = $4 << 3; - $6 = HEAP32[$h>>2]|0; - $7 = $5 ^ $6; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 1|0); - HEAP32[$0>>2] = $9; - $10 = HEAP8[$8>>0]|0; - $11 = $10&255; - $12 = (696 + ($11)|0); - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - $15 = $7 ^ $14; - HEAP32[$h>>2] = $15; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + -1)|0; - HEAP32[$1>>2] = $17; - } - STACKTOP = sp;return ($4|0); -} -function _findElementGivenHash($pH,$pKey,$nKey,$h) { - $pH = $pH|0; - $pKey = $pKey|0; - $nKey = $nKey|0; - $h = $h|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $count = 0, $elem = 0, $pEntry = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $elem = sp + 8|0; - $count = sp + 4|0; - $pEntry = sp; - HEAP32[$1>>2] = $pH; - HEAP32[$2>>2] = $pKey; - HEAP32[$3>>2] = $nKey; - HEAP32[$4>>2] = $h; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 12|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)!=(0|0); - if ($8) { - $9 = HEAP32[$4>>2]|0; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 12|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + ($9<<3)|0); - HEAP32[$pEntry>>2] = $13; - $14 = HEAP32[$pEntry>>2]|0; - $15 = (($14) + 4|0); - $16 = HEAP32[$15>>2]|0; - HEAP32[$elem>>2] = $16; - $17 = HEAP32[$pEntry>>2]|0; - $18 = HEAP32[$17>>2]|0; - HEAP32[$count>>2] = $18; - } else { - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 8|0); - $21 = HEAP32[$20>>2]|0; - HEAP32[$elem>>2] = $21; - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 4|0); - $24 = HEAP32[$23>>2]|0; - HEAP32[$count>>2] = $24; - } - while(1) { - $25 = HEAP32[$count>>2]|0; - $26 = (($25) + -1)|0; - HEAP32[$count>>2] = $26; - $27 = ($25|0)!=(0); - if (!($27)) { - label = 10; - break; - } - $28 = HEAP32[$elem>>2]|0; - $29 = ($28|0)!=(0|0); - if (!($29)) { - label = 10; - break; - } - $30 = HEAP32[$elem>>2]|0; - $31 = (($30) + 16|0); - $32 = HEAP32[$31>>2]|0; - $33 = HEAP32[$3>>2]|0; - $34 = ($32|0)==($33|0); - if ($34) { - $35 = HEAP32[$elem>>2]|0; - $36 = (($35) + 12|0); - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$2>>2]|0; - $39 = HEAP32[$3>>2]|0; - $40 = (_sqlite3_strnicmp($37,$38,$39)|0); - $41 = ($40|0)==(0); - if ($41) { - label = 8; - break; - } - } - $43 = HEAP32[$elem>>2]|0; - $44 = HEAP32[$43>>2]|0; - HEAP32[$elem>>2] = $44; - } - if ((label|0) == 8) { - $42 = HEAP32[$elem>>2]|0; - HEAP32[$0>>2] = $42; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); - } - else if ((label|0) == 10) { - HEAP32[$0>>2] = 0; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); - } - return 0|0; -} -function _sqlite3KeyInfoUnref($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if (!($2)) { - STACKTOP = sp;return; - } - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (($4) + -1)|0; - HEAP32[$3>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)==(0); - if (!($8)) { - STACKTOP = sp;return; - } - $9 = HEAP32[$0>>2]|0; - _sqlite3DbFree(0,$9); - STACKTOP = sp;return; -} -function _findCollSeqEntry($db,$zName,$create) { - $db = $db|0; - $zName = $zName|0; - $create = $create|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0; - var $8 = 0, $9 = 0, $nName = 0, $pColl = 0, $pDel = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $pColl = sp + 8|0; - $nName = sp + 4|0; - $pDel = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $zName; - HEAP32[$2>>2] = $create; - $3 = HEAP32[$1>>2]|0; - $4 = (_sqlite3Strlen30($3)|0); - HEAP32[$nName>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 420|0); - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$nName>>2]|0; - $9 = (_sqlite3HashFind($6,$7,$8)|0); - HEAP32[$pColl>>2] = $9; - $10 = HEAP32[$pColl>>2]|0; - $11 = (0|0)==($10|0); - if (!($11)) { - $61 = HEAP32[$pColl>>2]|0; - STACKTOP = sp;return ($61|0); - } - $12 = HEAP32[$2>>2]|0; - $13 = ($12|0)!=(0); - if (!($13)) { - $61 = HEAP32[$pColl>>2]|0; - STACKTOP = sp;return ($61|0); - } - $14 = HEAP32[$0>>2]|0; - $15 = HEAP32[$nName>>2]|0; - $16 = (60 + ($15))|0; - $17 = (($16) + 1)|0; - $18 = (_sqlite3DbMallocZero($14,$17)|0); - HEAP32[$pColl>>2] = $18; - $19 = HEAP32[$pColl>>2]|0; - $20 = ($19|0)!=(0|0); - if (!($20)) { - $61 = HEAP32[$pColl>>2]|0; - STACKTOP = sp;return ($61|0); - } - HEAP32[$pDel>>2] = 0; - $21 = HEAP32[$pColl>>2]|0; - $22 = (($21) + 60|0); - $23 = HEAP32[$pColl>>2]|0; - HEAP32[$23>>2] = $22; - $24 = HEAP32[$pColl>>2]|0; - $25 = (($24) + 4|0); - HEAP8[$25>>0] = 1; - $26 = HEAP32[$pColl>>2]|0; - $27 = (($26) + 60|0); - $28 = HEAP32[$pColl>>2]|0; - $29 = (($28) + 20|0); - HEAP32[$29>>2] = $27; - $30 = HEAP32[$pColl>>2]|0; - $31 = (($30) + 20|0); - $32 = (($31) + 4|0); - HEAP8[$32>>0] = 2; - $33 = HEAP32[$pColl>>2]|0; - $34 = (($33) + 60|0); - $35 = HEAP32[$pColl>>2]|0; - $36 = (($35) + 40|0); - HEAP32[$36>>2] = $34; - $37 = HEAP32[$pColl>>2]|0; - $38 = (($37) + 40|0); - $39 = (($38) + 4|0); - HEAP8[$39>>0] = 3; - $40 = HEAP32[$pColl>>2]|0; - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$1>>2]|0; - $43 = HEAP32[$nName>>2]|0; - _memcpy(($41|0),($42|0),($43|0))|0; - $44 = HEAP32[$nName>>2]|0; - $45 = HEAP32[$pColl>>2]|0; - $46 = HEAP32[$45>>2]|0; - $47 = (($46) + ($44)|0); - HEAP8[$47>>0] = 0; - $48 = HEAP32[$0>>2]|0; - $49 = (($48) + 420|0); - $50 = HEAP32[$pColl>>2]|0; - $51 = HEAP32[$50>>2]|0; - $52 = HEAP32[$nName>>2]|0; - $53 = HEAP32[$pColl>>2]|0; - $54 = (_sqlite3HashInsert($49,$51,$52,$53)|0); - HEAP32[$pDel>>2] = $54; - $55 = HEAP32[$pDel>>2]|0; - $56 = ($55|0)!=(0|0); - if (!($56)) { - $61 = HEAP32[$pColl>>2]|0; - STACKTOP = sp;return ($61|0); - } - $57 = HEAP32[$0>>2]|0; - $58 = (($57) + 64|0); - HEAP8[$58>>0] = 1; - $59 = HEAP32[$0>>2]|0; - $60 = HEAP32[$pDel>>2]|0; - _sqlite3DbFree($59,$60); - HEAP32[$pColl>>2] = 0; - $61 = HEAP32[$pColl>>2]|0; - STACKTOP = sp;return ($61|0); -} -function _sqlite3HashInsert($pH,$pKey,$nKey,$data) { - $pH = $pH|0; - $pKey = $pKey|0; - $nKey = $nKey|0; - $data = $data|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $elem = 0, $h = 0, $new_elem = 0, $old_data = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $4 = sp + 16|0; - $h = sp + 12|0; - $elem = sp + 8|0; - $new_elem = sp + 4|0; - $old_data = sp; - HEAP32[$1>>2] = $pH; - HEAP32[$2>>2] = $pKey; - HEAP32[$3>>2] = $nKey; - HEAP32[$4>>2] = $data; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0); - if ($7) { - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$3>>2]|0; - $10 = (_strHash($8,$9)|0); - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = (($10>>>0) % ($12>>>0))&-1; - HEAP32[$h>>2] = $13; - } else { - HEAP32[$h>>2] = 0; - } - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = HEAP32[$3>>2]|0; - $17 = HEAP32[$h>>2]|0; - $18 = (_findElementGivenHash($14,$15,$16,$17)|0); - HEAP32[$elem>>2] = $18; - $19 = HEAP32[$elem>>2]|0; - $20 = ($19|0)!=(0|0); - if ($20) { - $21 = HEAP32[$elem>>2]|0; - $22 = (($21) + 8|0); - $23 = HEAP32[$22>>2]|0; - HEAP32[$old_data>>2] = $23; - $24 = HEAP32[$4>>2]|0; - $25 = ($24|0)==(0|0); - if ($25) { - $26 = HEAP32[$1>>2]|0; - $27 = HEAP32[$elem>>2]|0; - $28 = HEAP32[$h>>2]|0; - _removeElementGivenHash($26,$27,$28); - } else { - $29 = HEAP32[$4>>2]|0; - $30 = HEAP32[$elem>>2]|0; - $31 = (($30) + 8|0); - HEAP32[$31>>2] = $29; - $32 = HEAP32[$2>>2]|0; - $33 = HEAP32[$elem>>2]|0; - $34 = (($33) + 12|0); - HEAP32[$34>>2] = $32; - } - $35 = HEAP32[$old_data>>2]|0; - HEAP32[$0>>2] = $35; - $91 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($91|0); - } - $36 = HEAP32[$4>>2]|0; - $37 = ($36|0)==(0|0); - if ($37) { - HEAP32[$0>>2] = 0; - $91 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($91|0); - } - $38 = (_sqlite3Malloc(20)|0); - HEAP32[$new_elem>>2] = $38; - $39 = HEAP32[$new_elem>>2]|0; - $40 = ($39|0)==(0|0); - if ($40) { - $41 = HEAP32[$4>>2]|0; - HEAP32[$0>>2] = $41; - $91 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($91|0); - } - $42 = HEAP32[$2>>2]|0; - $43 = HEAP32[$new_elem>>2]|0; - $44 = (($43) + 12|0); - HEAP32[$44>>2] = $42; - $45 = HEAP32[$3>>2]|0; - $46 = HEAP32[$new_elem>>2]|0; - $47 = (($46) + 16|0); - HEAP32[$47>>2] = $45; - $48 = HEAP32[$4>>2]|0; - $49 = HEAP32[$new_elem>>2]|0; - $50 = (($49) + 8|0); - HEAP32[$50>>2] = $48; - $51 = HEAP32[$1>>2]|0; - $52 = (($51) + 4|0); - $53 = HEAP32[$52>>2]|0; - $54 = (($53) + 1)|0; - HEAP32[$52>>2] = $54; - $55 = HEAP32[$1>>2]|0; - $56 = (($55) + 4|0); - $57 = HEAP32[$56>>2]|0; - $58 = ($57>>>0)>=(10); - if ($58) { - $59 = HEAP32[$1>>2]|0; - $60 = (($59) + 4|0); - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$1>>2]|0; - $63 = HEAP32[$62>>2]|0; - $64 = $63<<1; - $65 = ($61>>>0)>($64>>>0); - if ($65) { - $66 = HEAP32[$1>>2]|0; - $67 = HEAP32[$1>>2]|0; - $68 = (($67) + 4|0); - $69 = HEAP32[$68>>2]|0; - $70 = $69<<1; - $71 = (_rehash($66,$70)|0); - $72 = ($71|0)!=(0); - if ($72) { - $73 = HEAP32[$2>>2]|0; - $74 = HEAP32[$3>>2]|0; - $75 = (_strHash($73,$74)|0); - $76 = HEAP32[$1>>2]|0; - $77 = HEAP32[$76>>2]|0; - $78 = (($75>>>0) % ($77>>>0))&-1; - HEAP32[$h>>2] = $78; - } - } - } - $79 = HEAP32[$1>>2]|0; - $80 = (($79) + 12|0); - $81 = HEAP32[$80>>2]|0; - $82 = ($81|0)!=(0|0); - $83 = HEAP32[$1>>2]|0; - if ($82) { - $84 = HEAP32[$h>>2]|0; - $85 = HEAP32[$1>>2]|0; - $86 = (($85) + 12|0); - $87 = HEAP32[$86>>2]|0; - $88 = (($87) + ($84<<3)|0); - $89 = HEAP32[$new_elem>>2]|0; - _insertElement($83,$88,$89); - } else { - $90 = HEAP32[$new_elem>>2]|0; - _insertElement($83,0,$90); - } - HEAP32[$0>>2] = 0; - $91 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($91|0); -} -function _removeElementGivenHash($pH,$elem,$h) { - $pH = $pH|0; - $elem = $elem|0; - $h = $h|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pEntry = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pEntry = sp; - HEAP32[$0>>2] = $pH; - HEAP32[$1>>2] = $elem; - HEAP32[$2>>2] = $h; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 4|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0|0); - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$7>>2]|0; - if ($6) { - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 4|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$11>>2] = $8; - } else { - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 8|0); - HEAP32[$13>>2] = $8; - } - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = ($15|0)!=(0|0); - if ($16) { - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$1>>2]|0; - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + 4|0); - HEAP32[$22>>2] = $19; - } - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 12|0); - $25 = HEAP32[$24>>2]|0; - $26 = ($25|0)!=(0|0); - if ($26) { - $27 = HEAP32[$2>>2]|0; - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 12|0); - $30 = HEAP32[$29>>2]|0; - $31 = (($30) + ($27<<3)|0); - HEAP32[$pEntry>>2] = $31; - $32 = HEAP32[$pEntry>>2]|0; - $33 = (($32) + 4|0); - $34 = HEAP32[$33>>2]|0; - $35 = HEAP32[$1>>2]|0; - $36 = ($34|0)==($35|0); - if ($36) { - $37 = HEAP32[$1>>2]|0; - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$pEntry>>2]|0; - $40 = (($39) + 4|0); - HEAP32[$40>>2] = $38; - } - $41 = HEAP32[$pEntry>>2]|0; - $42 = HEAP32[$41>>2]|0; - $43 = (($42) + -1)|0; - HEAP32[$41>>2] = $43; - } - $44 = HEAP32[$1>>2]|0; - _sqlite3_free($44); - $45 = HEAP32[$0>>2]|0; - $46 = (($45) + 4|0); - $47 = HEAP32[$46>>2]|0; - $48 = (($47) + -1)|0; - HEAP32[$46>>2] = $48; - $49 = HEAP32[$0>>2]|0; - $50 = (($49) + 4|0); - $51 = HEAP32[$50>>2]|0; - $52 = ($51|0)==(0); - if (!($52)) { - STACKTOP = sp;return; - } - $53 = HEAP32[$0>>2]|0; - _sqlite3HashClear($53); - STACKTOP = sp;return; -} -function _rehash($pH,$new_size) { - $pH = $pH|0; - $new_size = $new_size|0; - var $$new_size = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $elem = 0, $h = 0, $new_ht = 0, $next_elem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $new_ht = sp + 12|0; - $elem = sp + 8|0; - $next_elem = sp + 4|0; - $h = sp; - HEAP32[$1>>2] = $pH; - HEAP32[$2>>2] = $new_size; - $3 = HEAP32[$2>>2]|0; - $4 = $3<<3; - $5 = ($4>>>0)>(1024); - $$new_size = $5 ? 128 : $new_size; - HEAP32[$2>>2] = $$new_size; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = ($6|0)==($8|0); - if ($9) { - HEAP32[$0>>2] = 0; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); - } - _sqlite3BeginBenignMalloc(); - $10 = HEAP32[$2>>2]|0; - $11 = $10<<3; - $12 = (_sqlite3Malloc($11)|0); - HEAP32[$new_ht>>2] = $12; - _sqlite3EndBenignMalloc(); - $13 = HEAP32[$new_ht>>2]|0; - $14 = ($13|0)==(0|0); - if ($14) { - HEAP32[$0>>2] = 0; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); - } - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 12|0); - $17 = HEAP32[$16>>2]|0; - _sqlite3_free($17); - $18 = HEAP32[$new_ht>>2]|0; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 12|0); - HEAP32[$20>>2] = $18; - $21 = HEAP32[$new_ht>>2]|0; - $22 = (_sqlite3MallocSize($21)|0); - $23 = (($22>>>0) / 8)&-1; - HEAP32[$2>>2] = $23; - $24 = HEAP32[$1>>2]|0; - HEAP32[$24>>2] = $23; - $25 = HEAP32[$new_ht>>2]|0; - $26 = HEAP32[$2>>2]|0; - $27 = $26<<3; - _memset(($25|0),0,($27|0))|0; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 8|0); - $30 = HEAP32[$29>>2]|0; - HEAP32[$elem>>2] = $30; - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 8|0); - HEAP32[$32>>2] = 0; - while(1) { - $33 = HEAP32[$elem>>2]|0; - $34 = ($33|0)!=(0|0); - if (!($34)) { - break; - } - $35 = HEAP32[$elem>>2]|0; - $36 = (($35) + 12|0); - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$elem>>2]|0; - $39 = (($38) + 16|0); - $40 = HEAP32[$39>>2]|0; - $41 = (_strHash($37,$40)|0); - $42 = HEAP32[$2>>2]|0; - $43 = (($41>>>0) % ($42>>>0))&-1; - HEAP32[$h>>2] = $43; - $44 = HEAP32[$elem>>2]|0; - $45 = HEAP32[$44>>2]|0; - HEAP32[$next_elem>>2] = $45; - $46 = HEAP32[$1>>2]|0; - $47 = HEAP32[$h>>2]|0; - $48 = HEAP32[$new_ht>>2]|0; - $49 = (($48) + ($47<<3)|0); - $50 = HEAP32[$elem>>2]|0; - _insertElement($46,$49,$50); - $51 = HEAP32[$next_elem>>2]|0; - HEAP32[$elem>>2] = $51; - } - HEAP32[$0>>2] = 1; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); -} -function _insertElement($pH,$pEntry,$pNew) { - $pH = $pH|0; - $pEntry = $pEntry|0; - $pNew = $pNew|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pHead = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pHead = sp; - HEAP32[$0>>2] = $pH; - HEAP32[$1>>2] = $pEntry; - HEAP32[$2>>2] = $pNew; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)!=(0|0); - if ($4) { - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0); - if ($7) { - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - $11 = $10; - } else { - $11 = 0; - } - HEAP32[$pHead>>2] = $11; - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + 1)|0; - HEAP32[$12>>2] = $14; - $15 = HEAP32[$2>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 4|0); - HEAP32[$17>>2] = $15; - } else { - HEAP32[$pHead>>2] = 0; - } - $18 = HEAP32[$pHead>>2]|0; - $19 = ($18|0)!=(0|0); - if (!($19)) { - $40 = HEAP32[$0>>2]|0; - $41 = (($40) + 8|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$2>>2]|0; - HEAP32[$43>>2] = $42; - $44 = HEAP32[$0>>2]|0; - $45 = (($44) + 8|0); - $46 = HEAP32[$45>>2]|0; - $47 = ($46|0)!=(0|0); - if ($47) { - $48 = HEAP32[$2>>2]|0; - $49 = HEAP32[$0>>2]|0; - $50 = (($49) + 8|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + 4|0); - HEAP32[$52>>2] = $48; - } - $53 = HEAP32[$2>>2]|0; - $54 = (($53) + 4|0); - HEAP32[$54>>2] = 0; - $55 = HEAP32[$2>>2]|0; - $56 = HEAP32[$0>>2]|0; - $57 = (($56) + 8|0); - HEAP32[$57>>2] = $55; - STACKTOP = sp;return; - } - $20 = HEAP32[$pHead>>2]|0; - $21 = HEAP32[$2>>2]|0; - HEAP32[$21>>2] = $20; - $22 = HEAP32[$pHead>>2]|0; - $23 = (($22) + 4|0); - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$2>>2]|0; - $26 = (($25) + 4|0); - HEAP32[$26>>2] = $24; - $27 = HEAP32[$pHead>>2]|0; - $28 = (($27) + 4|0); - $29 = HEAP32[$28>>2]|0; - $30 = ($29|0)!=(0|0); - $31 = HEAP32[$2>>2]|0; - if ($30) { - $32 = HEAP32[$pHead>>2]|0; - $33 = (($32) + 4|0); - $34 = HEAP32[$33>>2]|0; - HEAP32[$34>>2] = $31; - } else { - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + 8|0); - HEAP32[$36>>2] = $31; - } - $37 = HEAP32[$2>>2]|0; - $38 = HEAP32[$pHead>>2]|0; - $39 = (($38) + 4|0); - HEAP32[$39>>2] = $37; - STACKTOP = sp;return; -} -function _sqlite3BeginBenignMalloc() { - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - $0 = HEAP32[3208>>2]|0; - $1 = ($0|0)!=(0|0); - if (!($1)) { - STACKTOP = sp;return; - } - $2 = HEAP32[3208>>2]|0; - FUNCTION_TABLE_v[$2 & 0](); - STACKTOP = sp;return; -} -function _sqlite3EndBenignMalloc() { - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - $0 = HEAP32[((3208 + 4|0))>>2]|0; - $1 = ($0|0)!=(0|0); - if (!($1)) { - STACKTOP = sp;return; - } - $2 = HEAP32[((3208 + 4|0))>>2]|0; - FUNCTION_TABLE_v[$2 & 0](); - STACKTOP = sp;return; -} -function _sqlite3HashClear($pH) { - $pH = $pH|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $elem = 0, $next_elem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $elem = sp + 4|0; - $next_elem = sp; - HEAP32[$0>>2] = $pH; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$elem>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 8|0); - HEAP32[$5>>2] = 0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 12|0); - $8 = HEAP32[$7>>2]|0; - _sqlite3_free($8); - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 12|0); - HEAP32[$10>>2] = 0; - $11 = HEAP32[$0>>2]|0; - HEAP32[$11>>2] = 0; - while(1) { - $12 = HEAP32[$elem>>2]|0; - $13 = ($12|0)!=(0|0); - if (!($13)) { - break; - } - $14 = HEAP32[$elem>>2]|0; - $15 = HEAP32[$14>>2]|0; - HEAP32[$next_elem>>2] = $15; - $16 = HEAP32[$elem>>2]|0; - _sqlite3_free($16); - $17 = HEAP32[$next_elem>>2]|0; - HEAP32[$elem>>2] = $17; - } - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 4|0); - HEAP32[$19>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3HashInit($pNew) { - $pNew = $pNew|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pNew; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - HEAP32[$2>>2] = 0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 4|0); - HEAP32[$4>>2] = 0; - $5 = HEAP32[$0>>2]|0; - HEAP32[$5>>2] = 0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 12|0); - HEAP32[$7>>2] = 0; - STACKTOP = sp;return; -} -function _binCollFunc($padFlag,$nKey1,$pKey1,$nKey2,$pKey2) { - $padFlag = $padFlag|0; - $nKey1 = $nKey1|0; - $pKey1 = $pKey1|0; - $nKey2 = $nKey2|0; - $pKey2 = $pKey2|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0; - var $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $rc = sp + 4|0; - $n = sp; - HEAP32[$0>>2] = $padFlag; - HEAP32[$1>>2] = $nKey1; - HEAP32[$2>>2] = $pKey1; - HEAP32[$3>>2] = $nKey2; - HEAP32[$4>>2] = $pKey2; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$3>>2]|0; - $7 = ($5|0)<($6|0); - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$3>>2]|0; - $10 = $7 ? $8 : $9; - HEAP32[$n>>2] = $10; - $11 = HEAP32[$2>>2]|0; - $12 = HEAP32[$4>>2]|0; - $13 = HEAP32[$n>>2]|0; - $14 = (_memcmp($11,$12,$13)|0); - HEAP32[$rc>>2] = $14; - $15 = HEAP32[$rc>>2]|0; - $16 = ($15|0)==(0); - if (!($16)) { - $38 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($38|0); - } - $17 = HEAP32[$0>>2]|0; - $18 = ($17|0)!=(0|0); - if ($18) { - $19 = HEAP32[$2>>2]|0; - $20 = HEAP32[$n>>2]|0; - $21 = (($19) + ($20)|0); - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$n>>2]|0; - $24 = (($22) - ($23))|0; - $25 = (_allSpaces($21,$24)|0); - $26 = ($25|0)!=(0); - if ($26) { - $27 = HEAP32[$4>>2]|0; - $28 = HEAP32[$n>>2]|0; - $29 = (($27) + ($28)|0); - $30 = HEAP32[$3>>2]|0; - $31 = HEAP32[$n>>2]|0; - $32 = (($30) - ($31))|0; - $33 = (_allSpaces($29,$32)|0); - $34 = ($33|0)!=(0); - if ($34) { - $38 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($38|0); - } - } - } - $35 = HEAP32[$1>>2]|0; - $36 = HEAP32[$3>>2]|0; - $37 = (($35) - ($36))|0; - HEAP32[$rc>>2] = $37; - $38 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($38|0); -} -function _nocaseCollatingFunc($NotUsed,$nKey1,$pKey1,$nKey2,$pKey2) { - $NotUsed = $NotUsed|0; - $nKey1 = $nKey1|0; - $pKey1 = $pKey1|0; - $nKey2 = $nKey2|0; - $pKey2 = $pKey2|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $r = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $r = sp; - HEAP32[$0>>2] = $NotUsed; - HEAP32[$1>>2] = $nKey1; - HEAP32[$2>>2] = $pKey1; - HEAP32[$3>>2] = $nKey2; - HEAP32[$4>>2] = $pKey2; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$4>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$3>>2]|0; - $9 = ($7|0)<($8|0); - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$3>>2]|0; - $12 = $9 ? $10 : $11; - $13 = (_sqlite3_strnicmp($5,$6,$12)|0); - HEAP32[$r>>2] = $13; - $14 = HEAP32[$r>>2]|0; - $15 = (0)==($14|0); - if (!($15)) { - $19 = HEAP32[$r>>2]|0; - STACKTOP = sp;return ($19|0); - } - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$3>>2]|0; - $18 = (($16) - ($17))|0; - HEAP32[$r>>2] = $18; - $19 = HEAP32[$r>>2]|0; - STACKTOP = sp;return ($19|0); -} -function _sqlite3ParseUri($zDefaultVfs,$zUri,$pFlags,$ppVfs,$pzFile,$pzErrMsg) { - $zDefaultVfs = $zDefaultVfs|0; - $zUri = $zUri|0; - $pFlags = $pFlags|0; - $ppVfs = $ppVfs|0; - $pzFile = $pzFile|0; - $pzErrMsg = $pzErrMsg|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; - var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; - var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; - var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; - var $97 = 0, $98 = 0, $99 = 0, $aMode = 0, $c = 0, $eState = 0, $flags = 0, $i = 0, $iIn = 0, $iOut = 0, $limit = 0, $mask = 0, $mode = 0, $nByte = 0, $nOpt = 0, $nUri = 0, $nVal = 0, $octet = 0, $rc = 0, $vararg_buffer18 = 0; - var $vararg_ptr13 = 0, $vararg_ptr17 = 0, $vararg_ptr9 = 0, $z = 0, $zFile = 0, $zModeType = 0, $zOpt = 0, $zVal = 0, $zVfs = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $vararg_buffer18 = sp; - $0 = sp + 116|0; - $1 = sp + 112|0; - $2 = sp + 108|0; - $3 = sp + 104|0; - $4 = sp + 100|0; - $5 = sp + 96|0; - $6 = sp + 92|0; - $rc = sp + 88|0; - $flags = sp + 84|0; - $zVfs = sp + 80|0; - $zFile = sp + 76|0; - $c = sp + 120|0; - $nUri = sp + 72|0; - $zOpt = sp + 68|0; - $eState = sp + 64|0; - $iIn = sp + 60|0; - $iOut = sp + 56|0; - $nByte = sp + 52|0; - $octet = sp + 48|0; - $nOpt = sp + 44|0; - $zVal = sp + 40|0; - $nVal = sp + 36|0; - $aMode = sp + 32|0; - $zModeType = sp + 28|0; - $mask = sp + 24|0; - $limit = sp + 20|0; - $i = sp + 16|0; - $mode = sp + 12|0; - $z = sp + 8|0; - HEAP32[$1>>2] = $zDefaultVfs; - HEAP32[$2>>2] = $zUri; - HEAP32[$3>>2] = $pFlags; - HEAP32[$4>>2] = $ppVfs; - HEAP32[$5>>2] = $pzFile; - HEAP32[$6>>2] = $pzErrMsg; - HEAP32[$rc>>2] = 0; - $7 = HEAP32[$3>>2]|0; - $8 = HEAP32[$7>>2]|0; - HEAP32[$flags>>2] = $8; - $9 = HEAP32[$1>>2]|0; - HEAP32[$zVfs>>2] = $9; - $10 = HEAP32[$2>>2]|0; - $11 = (_sqlite3Strlen30($10)|0); - HEAP32[$nUri>>2] = $11; - $12 = HEAP32[$flags>>2]|0; - $13 = $12 & 64; - $14 = ($13|0)!=(0); - if ($14) { - label = 3; - } else { - $15 = HEAP32[((38512 + 12|0))>>2]|0; - $16 = ($15|0)!=(0); - if ($16) { - label = 3; - } else { - label = 83; - } - } - L3: do { - if ((label|0) == 3) { - $17 = HEAP32[$nUri>>2]|0; - $18 = ($17|0)>=(5); - if ($18) { - $19 = HEAP32[$2>>2]|0; - $20 = (_memcmp($19,4560,5)|0); - $21 = ($20|0)==(0); - if ($21) { - HEAP32[$iOut>>2] = 0; - $22 = HEAP32[$nUri>>2]|0; - $23 = (($22) + 2)|0; - HEAP32[$nByte>>2] = $23; - $24 = HEAP32[$flags>>2]|0; - $25 = $24 | 64; - HEAP32[$flags>>2] = $25; - HEAP32[$iIn>>2] = 0; - while(1) { - $26 = HEAP32[$iIn>>2]|0; - $27 = HEAP32[$nUri>>2]|0; - $28 = ($26|0)<($27|0); - if (!($28)) { - break; - } - $29 = HEAP32[$iIn>>2]|0; - $30 = HEAP32[$2>>2]|0; - $31 = (($30) + ($29)|0); - $32 = HEAP8[$31>>0]|0; - $33 = $32 << 24 >> 24; - $34 = ($33|0)==(38); - $35 = $34&1; - $36 = HEAP32[$nByte>>2]|0; - $37 = (($36) + ($35))|0; - HEAP32[$nByte>>2] = $37; - $38 = HEAP32[$iIn>>2]|0; - $39 = (($38) + 1)|0; - HEAP32[$iIn>>2] = $39; - } - $40 = HEAP32[$nByte>>2]|0; - $41 = (_sqlite3_malloc($40)|0); - HEAP32[$zFile>>2] = $41; - $42 = HEAP32[$zFile>>2]|0; - $43 = ($42|0)!=(0|0); - if (!($43)) { - HEAP32[$0>>2] = 7; - $361 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($361|0); - } - HEAP32[$iIn>>2] = 5; - $44 = HEAP32[$2>>2]|0; - $45 = (($44) + 5|0); - $46 = HEAP8[$45>>0]|0; - $47 = $46 << 24 >> 24; - $48 = ($47|0)==(47); - do { - if ($48) { - $49 = HEAP32[$2>>2]|0; - $50 = (($49) + 6|0); - $51 = HEAP8[$50>>0]|0; - $52 = $51 << 24 >> 24; - $53 = ($52|0)==(47); - if ($53) { - HEAP32[$iIn>>2] = 7; - while(1) { - $54 = HEAP32[$iIn>>2]|0; - $55 = HEAP32[$2>>2]|0; - $56 = (($55) + ($54)|0); - $57 = HEAP8[$56>>0]|0; - $58 = $57 << 24 >> 24; - $59 = ($58|0)!=(0); - if ($59) { - $60 = HEAP32[$iIn>>2]|0; - $61 = HEAP32[$2>>2]|0; - $62 = (($61) + ($60)|0); - $63 = HEAP8[$62>>0]|0; - $64 = $63 << 24 >> 24; - $65 = ($64|0)!=(47); - $362 = $65; - } else { - $362 = 0; - } - $66 = HEAP32[$iIn>>2]|0; - if (!($362)) { - break; - } - $67 = (($66) + 1)|0; - HEAP32[$iIn>>2] = $67; - } - $68 = ($66|0)!=(7); - if ($68) { - $69 = HEAP32[$iIn>>2]|0; - $70 = ($69|0)!=(16); - if (!($70)) { - $71 = HEAP32[$2>>2]|0; - $72 = (($71) + 7|0); - $73 = (_memcmp(4568,$72,9)|0); - $74 = ($73|0)!=(0); - if (!($74)) { - break; - } - } - $75 = HEAP32[$iIn>>2]|0; - $76 = (($75) - 7)|0; - $77 = HEAP32[$2>>2]|0; - $78 = (($77) + 7|0); - HEAP32[$vararg_buffer18>>2] = $76; - $vararg_ptr9 = (($vararg_buffer18) + 4|0); - HEAP32[$vararg_ptr9>>2] = $78; - $79 = (_sqlite3_mprintf(4584,$vararg_buffer18)|0); - $80 = HEAP32[$6>>2]|0; - HEAP32[$80>>2] = $79; - HEAP32[$rc>>2] = 1; - break L3; - } - } - } - } while(0); - HEAP32[$eState>>2] = 0; - L30: while(1) { - $81 = HEAP32[$iIn>>2]|0; - $82 = HEAP32[$2>>2]|0; - $83 = (($82) + ($81)|0); - $84 = HEAP8[$83>>0]|0; - HEAP8[$c>>0] = $84; - $85 = $84 << 24 >> 24; - $86 = ($85|0)!=(0); - if (!($86)) { - break; - } - $87 = HEAP8[$c>>0]|0; - $88 = $87 << 24 >> 24; - $89 = ($88|0)!=(35); - if (!($89)) { - break; - } - $90 = HEAP32[$iIn>>2]|0; - $91 = (($90) + 1)|0; - HEAP32[$iIn>>2] = $91; - $92 = HEAP8[$c>>0]|0; - $93 = $92 << 24 >> 24; - $94 = ($93|0)==(37); - do { - if ($94) { - $95 = HEAP32[$iIn>>2]|0; - $96 = HEAP32[$2>>2]|0; - $97 = (($96) + ($95)|0); - $98 = HEAP8[$97>>0]|0; - $99 = $98&255; - $100 = (48 + ($99)|0); - $101 = HEAP8[$100>>0]|0; - $102 = $101&255; - $103 = $102 & 8; - $104 = ($103|0)!=(0); - if ($104) { - $105 = HEAP32[$iIn>>2]|0; - $106 = (($105) + 1)|0; - $107 = HEAP32[$2>>2]|0; - $108 = (($107) + ($106)|0); - $109 = HEAP8[$108>>0]|0; - $110 = $109&255; - $111 = (48 + ($110)|0); - $112 = HEAP8[$111>>0]|0; - $113 = $112&255; - $114 = $113 & 8; - $115 = ($114|0)!=(0); - if ($115) { - $116 = HEAP32[$iIn>>2]|0; - $117 = (($116) + 1)|0; - HEAP32[$iIn>>2] = $117; - $118 = HEAP32[$2>>2]|0; - $119 = (($118) + ($116)|0); - $120 = HEAP8[$119>>0]|0; - $121 = $120 << 24 >> 24; - $122 = (_sqlite3HexToInt($121)|0); - $123 = $122&255; - $124 = $123 << 4; - HEAP32[$octet>>2] = $124; - $125 = HEAP32[$iIn>>2]|0; - $126 = (($125) + 1)|0; - HEAP32[$iIn>>2] = $126; - $127 = HEAP32[$2>>2]|0; - $128 = (($127) + ($125)|0); - $129 = HEAP8[$128>>0]|0; - $130 = $129 << 24 >> 24; - $131 = (_sqlite3HexToInt($130)|0); - $132 = $131&255; - $133 = HEAP32[$octet>>2]|0; - $134 = (($133) + ($132))|0; - HEAP32[$octet>>2] = $134; - $135 = HEAP32[$octet>>2]|0; - $136 = ($135|0)==(0); - if (!($136)) { - $166 = HEAP32[$octet>>2]|0; - $167 = $166&255; - HEAP8[$c>>0] = $167; - break; - } - while(1) { - $137 = HEAP32[$iIn>>2]|0; - $138 = HEAP32[$2>>2]|0; - $139 = (($138) + ($137)|0); - $140 = HEAP8[$139>>0]|0; - HEAP8[$c>>0] = $140; - $141 = $140 << 24 >> 24; - $142 = ($141|0)!=(0); - if (!($142)) { - continue L30; - } - $143 = HEAP8[$c>>0]|0; - $144 = $143 << 24 >> 24; - $145 = ($144|0)!=(35); - if (!($145)) { - continue L30; - } - $146 = HEAP32[$eState>>2]|0; - $147 = ($146|0)!=(0); - if (!($147)) { - $148 = HEAP8[$c>>0]|0; - $149 = $148 << 24 >> 24; - $150 = ($149|0)!=(63); - if (!($150)) { - continue L30; - } - } - $151 = HEAP32[$eState>>2]|0; - $152 = ($151|0)!=(1); - if (!($152)) { - $153 = HEAP8[$c>>0]|0; - $154 = $153 << 24 >> 24; - $155 = ($154|0)!=(61); - if (!($155)) { - continue L30; - } - $156 = HEAP8[$c>>0]|0; - $157 = $156 << 24 >> 24; - $158 = ($157|0)!=(38); - if (!($158)) { - continue L30; - } - } - $159 = HEAP32[$eState>>2]|0; - $160 = ($159|0)!=(2); - if (!($160)) { - $161 = HEAP8[$c>>0]|0; - $162 = $161 << 24 >> 24; - $163 = ($162|0)!=(38); - if (!($163)) { - continue L30; - } - } - $164 = HEAP32[$iIn>>2]|0; - $165 = (($164) + 1)|0; - HEAP32[$iIn>>2] = $165; - } - } else { - label = 39; - } - } else { - label = 39; - } - } else { - label = 39; - } - } while(0); - L54: do { - if ((label|0) == 39) { - label = 0; - $168 = HEAP32[$eState>>2]|0; - $169 = ($168|0)==(1); - do { - if ($169) { - $170 = HEAP8[$c>>0]|0; - $171 = $170 << 24 >> 24; - $172 = ($171|0)==(38); - if (!($172)) { - $173 = HEAP8[$c>>0]|0; - $174 = $173 << 24 >> 24; - $175 = ($174|0)==(61); - if (!($175)) { - break; - } - } - $176 = HEAP32[$iOut>>2]|0; - $177 = (($176) - 1)|0; - $178 = HEAP32[$zFile>>2]|0; - $179 = (($178) + ($177)|0); - $180 = HEAP8[$179>>0]|0; - $181 = $180 << 24 >> 24; - $182 = ($181|0)==(0); - if ($182) { - while(1) { - $183 = HEAP32[$iIn>>2]|0; - $184 = HEAP32[$2>>2]|0; - $185 = (($184) + ($183)|0); - $186 = HEAP8[$185>>0]|0; - $187 = $186 << 24 >> 24; - $188 = ($187|0)!=(0); - if (!($188)) { - continue L30; - } - $189 = HEAP32[$iIn>>2]|0; - $190 = HEAP32[$2>>2]|0; - $191 = (($190) + ($189)|0); - $192 = HEAP8[$191>>0]|0; - $193 = $192 << 24 >> 24; - $194 = ($193|0)!=(35); - if (!($194)) { - continue L30; - } - $195 = HEAP32[$iIn>>2]|0; - $196 = (($195) - 1)|0; - $197 = HEAP32[$2>>2]|0; - $198 = (($197) + ($196)|0); - $199 = HEAP8[$198>>0]|0; - $200 = $199 << 24 >> 24; - $201 = ($200|0)!=(38); - if (!($201)) { - continue L30; - } - $202 = HEAP32[$iIn>>2]|0; - $203 = (($202) + 1)|0; - HEAP32[$iIn>>2] = $203; - } - } else { - $204 = HEAP8[$c>>0]|0; - $205 = $204 << 24 >> 24; - $206 = ($205|0)==(38); - if ($206) { - $207 = HEAP32[$iOut>>2]|0; - $208 = (($207) + 1)|0; - HEAP32[$iOut>>2] = $208; - $209 = HEAP32[$zFile>>2]|0; - $210 = (($209) + ($207)|0); - HEAP8[$210>>0] = 0; - } else { - HEAP32[$eState>>2] = 2; - } - HEAP8[$c>>0] = 0; - break L54; - } - } - } while(0); - $211 = HEAP32[$eState>>2]|0; - $212 = ($211|0)==(0); - if ($212) { - $213 = HEAP8[$c>>0]|0; - $214 = $213 << 24 >> 24; - $215 = ($214|0)==(63); - if (!($215)) { - label = 53; - } - } else { - label = 53; - } - if ((label|0) == 53) { - label = 0; - $216 = HEAP32[$eState>>2]|0; - $217 = ($216|0)==(2); - if (!($217)) { - break; - } - $218 = HEAP8[$c>>0]|0; - $219 = $218 << 24 >> 24; - $220 = ($219|0)==(38); - if (!($220)) { - break; - } - } - HEAP8[$c>>0] = 0; - HEAP32[$eState>>2] = 1; - } - } while(0); - $221 = HEAP8[$c>>0]|0; - $222 = HEAP32[$iOut>>2]|0; - $223 = (($222) + 1)|0; - HEAP32[$iOut>>2] = $223; - $224 = HEAP32[$zFile>>2]|0; - $225 = (($224) + ($222)|0); - HEAP8[$225>>0] = $221; - } - $226 = HEAP32[$eState>>2]|0; - $227 = ($226|0)==(1); - if ($227) { - $228 = HEAP32[$iOut>>2]|0; - $229 = (($228) + 1)|0; - HEAP32[$iOut>>2] = $229; - $230 = HEAP32[$zFile>>2]|0; - $231 = (($230) + ($228)|0); - HEAP8[$231>>0] = 0; - } - $232 = HEAP32[$iOut>>2]|0; - $233 = (($232) + 1)|0; - HEAP32[$iOut>>2] = $233; - $234 = HEAP32[$zFile>>2]|0; - $235 = (($234) + ($232)|0); - HEAP8[$235>>0] = 0; - $236 = HEAP32[$iOut>>2]|0; - $237 = (($236) + 1)|0; - HEAP32[$iOut>>2] = $237; - $238 = HEAP32[$zFile>>2]|0; - $239 = (($238) + ($236)|0); - HEAP8[$239>>0] = 0; - $240 = HEAP32[$zFile>>2]|0; - $241 = (_sqlite3Strlen30($240)|0); - $242 = (($241) + 1)|0; - $243 = HEAP32[$zFile>>2]|0; - $244 = (($243) + ($242)|0); - HEAP32[$zOpt>>2] = $244; - while(1) { - $245 = HEAP32[$zOpt>>2]|0; - $246 = HEAP8[$245>>0]|0; - $247 = ($246<<24>>24)!=(0); - if (!($247)) { - label = 86; - break L3; - } - $248 = HEAP32[$zOpt>>2]|0; - $249 = (_sqlite3Strlen30($248)|0); - HEAP32[$nOpt>>2] = $249; - $250 = HEAP32[$nOpt>>2]|0; - $251 = (($250) + 1)|0; - $252 = HEAP32[$zOpt>>2]|0; - $253 = (($252) + ($251)|0); - HEAP32[$zVal>>2] = $253; - $254 = HEAP32[$zVal>>2]|0; - $255 = (_sqlite3Strlen30($254)|0); - HEAP32[$nVal>>2] = $255; - $256 = HEAP32[$nOpt>>2]|0; - $257 = ($256|0)==(3); - if ($257) { - $258 = HEAP32[$zOpt>>2]|0; - $259 = (_memcmp(4616,$258,3)|0); - $260 = ($259|0)==(0); - if ($260) { - $261 = HEAP32[$zVal>>2]|0; - HEAP32[$zVfs>>2] = $261; - } else { - label = 64; - } - } else { - label = 64; - } - if ((label|0) == 64) { - label = 0; - HEAP32[$aMode>>2] = 0; - HEAP32[$zModeType>>2] = 0; - HEAP32[$mask>>2] = 0; - HEAP32[$limit>>2] = 0; - $262 = HEAP32[$nOpt>>2]|0; - $263 = ($262|0)==(5); - if ($263) { - $264 = HEAP32[$zOpt>>2]|0; - $265 = (_memcmp(4624,$264,5)|0); - $266 = ($265|0)==(0); - if ($266) { - HEAP32[$mask>>2] = 393216; - HEAP32[$aMode>>2] = 4632; - $267 = HEAP32[$mask>>2]|0; - HEAP32[$limit>>2] = $267; - HEAP32[$zModeType>>2] = 4624; - } - } - $268 = HEAP32[$nOpt>>2]|0; - $269 = ($268|0)==(4); - if ($269) { - $270 = HEAP32[$zOpt>>2]|0; - $271 = (_memcmp(4672,$270,4)|0); - $272 = ($271|0)==(0); - if ($272) { - HEAP32[$mask>>2] = 135; - HEAP32[$aMode>>2] = 4680; - $273 = HEAP32[$mask>>2]|0; - $274 = HEAP32[$flags>>2]|0; - $275 = $273 & $274; - HEAP32[$limit>>2] = $275; - HEAP32[$zModeType>>2] = 4752; - } - } - $276 = HEAP32[$aMode>>2]|0; - $277 = ($276|0)!=(0|0); - if ($277) { - HEAP32[$mode>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $278 = HEAP32[$i>>2]|0; - $279 = HEAP32[$aMode>>2]|0; - $280 = (($279) + ($278<<3)|0); - $281 = HEAP32[$280>>2]|0; - $282 = ($281|0)!=(0|0); - if (!($282)) { - break; - } - $283 = HEAP32[$i>>2]|0; - $284 = HEAP32[$aMode>>2]|0; - $285 = (($284) + ($283<<3)|0); - $286 = HEAP32[$285>>2]|0; - HEAP32[$z>>2] = $286; - $287 = HEAP32[$nVal>>2]|0; - $288 = HEAP32[$z>>2]|0; - $289 = (_sqlite3Strlen30($288)|0); - $290 = ($287|0)==($289|0); - if ($290) { - $291 = HEAP32[$zVal>>2]|0; - $292 = HEAP32[$z>>2]|0; - $293 = HEAP32[$nVal>>2]|0; - $294 = (_memcmp($291,$292,$293)|0); - $295 = (0)==($294|0); - if ($295) { - label = 75; - break; - } - } - $301 = HEAP32[$i>>2]|0; - $302 = (($301) + 1)|0; - HEAP32[$i>>2] = $302; - } - if ((label|0) == 75) { - label = 0; - $296 = HEAP32[$i>>2]|0; - $297 = HEAP32[$aMode>>2]|0; - $298 = (($297) + ($296<<3)|0); - $299 = (($298) + 4|0); - $300 = HEAP32[$299>>2]|0; - HEAP32[$mode>>2] = $300; - } - $303 = HEAP32[$mode>>2]|0; - $304 = ($303|0)==(0); - if ($304) { - label = 78; - break; - } - $309 = HEAP32[$mode>>2]|0; - $310 = $309 & -129; - $311 = HEAP32[$limit>>2]|0; - $312 = ($310|0)>($311|0); - if ($312) { - label = 80; - break; - } - $317 = HEAP32[$flags>>2]|0; - $318 = HEAP32[$mask>>2]|0; - $319 = $318 ^ -1; - $320 = $317 & $319; - $321 = HEAP32[$mode>>2]|0; - $322 = $320 | $321; - HEAP32[$flags>>2] = $322; - } - } - $323 = HEAP32[$nVal>>2]|0; - $324 = (($323) + 1)|0; - $325 = HEAP32[$zVal>>2]|0; - $326 = (($325) + ($324)|0); - HEAP32[$zOpt>>2] = $326; - } - if ((label|0) == 78) { - $305 = HEAP32[$zModeType>>2]|0; - $306 = HEAP32[$zVal>>2]|0; - HEAP32[$vararg_buffer18>>2] = $305; - $vararg_ptr13 = (($vararg_buffer18) + 4|0); - HEAP32[$vararg_ptr13>>2] = $306; - $307 = (_sqlite3_mprintf(4760,$vararg_buffer18)|0); - $308 = HEAP32[$6>>2]|0; - HEAP32[$308>>2] = $307; - HEAP32[$rc>>2] = 1; - break; - } - else if ((label|0) == 80) { - $313 = HEAP32[$zModeType>>2]|0; - $314 = HEAP32[$zVal>>2]|0; - HEAP32[$vararg_buffer18>>2] = $313; - $vararg_ptr17 = (($vararg_buffer18) + 4|0); - HEAP32[$vararg_ptr17>>2] = $314; - $315 = (_sqlite3_mprintf(4784,$vararg_buffer18)|0); - $316 = HEAP32[$6>>2]|0; - HEAP32[$316>>2] = $315; - HEAP32[$rc>>2] = 3; - break; - } - } else { - label = 83; - } - } else { - label = 83; - } - } - } while(0); - do { - if ((label|0) == 83) { - $327 = HEAP32[$nUri>>2]|0; - $328 = (($327) + 2)|0; - $329 = (_sqlite3_malloc($328)|0); - HEAP32[$zFile>>2] = $329; - $330 = HEAP32[$zFile>>2]|0; - $331 = ($330|0)!=(0|0); - if ($331) { - $332 = HEAP32[$zFile>>2]|0; - $333 = HEAP32[$2>>2]|0; - $334 = HEAP32[$nUri>>2]|0; - _memcpy(($332|0),($333|0),($334|0))|0; - $335 = HEAP32[$nUri>>2]|0; - $336 = HEAP32[$zFile>>2]|0; - $337 = (($336) + ($335)|0); - HEAP8[$337>>0] = 0; - $338 = HEAP32[$nUri>>2]|0; - $339 = (($338) + 1)|0; - $340 = HEAP32[$zFile>>2]|0; - $341 = (($340) + ($339)|0); - HEAP8[$341>>0] = 0; - $342 = HEAP32[$flags>>2]|0; - $343 = $342 & -65; - HEAP32[$flags>>2] = $343; - label = 86; - break; - } - HEAP32[$0>>2] = 7; - $361 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($361|0); - } - } while(0); - if ((label|0) == 86) { - $344 = HEAP32[$zVfs>>2]|0; - $345 = (_sqlite3_vfs_find($344)|0); - $346 = HEAP32[$4>>2]|0; - HEAP32[$346>>2] = $345; - $347 = HEAP32[$4>>2]|0; - $348 = HEAP32[$347>>2]|0; - $349 = ($348|0)==(0|0); - if ($349) { - $350 = HEAP32[$zVfs>>2]|0; - HEAP32[$vararg_buffer18>>2] = $350; - $351 = (_sqlite3_mprintf(4808,$vararg_buffer18)|0); - $352 = HEAP32[$6>>2]|0; - HEAP32[$352>>2] = $351; - HEAP32[$rc>>2] = 1; - } - } - $353 = HEAP32[$rc>>2]|0; - $354 = ($353|0)!=(0); - if ($354) { - $355 = HEAP32[$zFile>>2]|0; - _sqlite3_free($355); - HEAP32[$zFile>>2] = 0; - } - $356 = HEAP32[$flags>>2]|0; - $357 = HEAP32[$3>>2]|0; - HEAP32[$357>>2] = $356; - $358 = HEAP32[$zFile>>2]|0; - $359 = HEAP32[$5>>2]|0; - HEAP32[$359>>2] = $358; - $360 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $360; - $361 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($361|0); -} -function _sqlite3BtreeOpen($pVfs,$zFilename,$db,$ppBtree,$flags,$vfsFlags) { - $pVfs = $pVfs|0; - $zFilename = $zFilename|0; - $db = $db|0; - $ppBtree = $ppBtree|0; - $flags = $flags|0; - $vfsFlags = $vfsFlags|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; - var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; - var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; - var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iDb = 0, $isMemdb = 0, $isTempDb = 0, $mutexOpen = 0, $nFullPathname = 0, $nReserve = 0, $p = 0, $pBt = 0, $pExisting = 0, $pSib = 0; - var $rc = 0, $zDbHeader = 0, $zFullPathname = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 192|0; - $0 = sp + 72|0; - $1 = sp + 68|0; - $2 = sp + 64|0; - $3 = sp + 60|0; - $4 = sp + 56|0; - $5 = sp + 52|0; - $6 = sp + 48|0; - $pBt = sp + 44|0; - $p = sp + 40|0; - $mutexOpen = sp + 36|0; - $rc = sp + 32|0; - $nReserve = sp + 176|0; - $zDbHeader = sp + 76|0; - $isTempDb = sp + 28|0; - $isMemdb = sp + 24|0; - $nFullPathname = sp + 20|0; - $zFullPathname = sp + 16|0; - $iDb = sp + 12|0; - $pExisting = sp + 8|0; - $i = sp + 4|0; - $pSib = sp; - HEAP32[$1>>2] = $pVfs; - HEAP32[$2>>2] = $zFilename; - HEAP32[$3>>2] = $db; - HEAP32[$4>>2] = $ppBtree; - HEAP32[$5>>2] = $flags; - HEAP32[$6>>2] = $vfsFlags; - HEAP32[$pBt>>2] = 0; - HEAP32[$mutexOpen>>2] = 0; - HEAP32[$rc>>2] = 0; - $7 = HEAP32[$2>>2]|0; - $8 = ($7|0)==(0|0); - if ($8) { - $14 = 1; - } else { - $9 = HEAP32[$2>>2]|0; - $10 = HEAP8[$9>>0]|0; - $11 = $10 << 24 >> 24; - $12 = ($11|0)==(0); - $14 = $12; - } - $13 = $14&1; - HEAP32[$isTempDb>>2] = $13; - $15 = HEAP32[$2>>2]|0; - $16 = ($15|0)!=(0|0); - if ($16) { - $17 = HEAP32[$2>>2]|0; - $18 = (_strcmp($17,4168)|0); - $19 = ($18|0)==(0); - if ($19) { - $29 = 1; - } else { - label = 5; - } - } else { - label = 5; - } - do { - if ((label|0) == 5) { - $20 = HEAP32[$isTempDb>>2]|0; - $21 = ($20|0)!=(0); - if ($21) { - $22 = HEAP32[$3>>2]|0; - $23 = (_sqlite3TempInMemory($22)|0); - $24 = ($23|0)!=(0); - if ($24) { - $29 = 1; - break; - } - } - $25 = HEAP32[$6>>2]|0; - $26 = $25 & 128; - $27 = ($26|0)!=(0); - $29 = $27; - } - } while(0); - $28 = $29&1; - HEAP32[$isMemdb>>2] = $28; - $30 = HEAP32[$isMemdb>>2]|0; - $31 = ($30|0)!=(0); - if ($31) { - $32 = HEAP32[$5>>2]|0; - $33 = $32 | 2; - HEAP32[$5>>2] = $33; - } - $34 = HEAP32[$6>>2]|0; - $35 = $34 & 256; - $36 = ($35|0)!=(0); - do { - if ($36) { - $37 = HEAP32[$isMemdb>>2]|0; - $38 = ($37|0)!=(0); - if (!($38)) { - $39 = HEAP32[$isTempDb>>2]|0; - $40 = ($39|0)!=(0); - if (!($40)) { - break; - } - } - $41 = HEAP32[$6>>2]|0; - $42 = $41 & -257; - $43 = $42 | 512; - HEAP32[$6>>2] = $43; - } - } while(0); - $44 = (_sqlite3MallocZero(44)|0); - HEAP32[$p>>2] = $44; - $45 = HEAP32[$p>>2]|0; - $46 = ($45|0)!=(0|0); - if (!($46)) { - HEAP32[$0>>2] = 7; - $387 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($387|0); - } - $47 = HEAP32[$p>>2]|0; - $48 = (($47) + 8|0); - HEAP8[$48>>0] = 0; - $49 = HEAP32[$3>>2]|0; - $50 = HEAP32[$p>>2]|0; - HEAP32[$50>>2] = $49; - $51 = HEAP32[$p>>2]|0; - $52 = HEAP32[$p>>2]|0; - $53 = (($52) + 28|0); - HEAP32[$53>>2] = $51; - $54 = HEAP32[$p>>2]|0; - $55 = (($54) + 28|0); - $56 = (($55) + 4|0); - HEAP32[$56>>2] = 1; - $57 = HEAP32[$isTempDb>>2]|0; - $58 = ($57|0)==(0); - do { - if ($58) { - $59 = HEAP32[$isMemdb>>2]|0; - $60 = ($59|0)==(0); - if (!($60)) { - $61 = HEAP32[$6>>2]|0; - $62 = $61 & 64; - $63 = ($62|0)!=(0); - if (!($63)) { - break; - } - } - $64 = HEAP32[$6>>2]|0; - $65 = $64 & 131072; - $66 = ($65|0)!=(0); - if ($66) { - $67 = HEAP32[$1>>2]|0; - $68 = (($67) + 8|0); - $69 = HEAP32[$68>>2]|0; - $70 = (($69) + 1)|0; - HEAP32[$nFullPathname>>2] = $70; - $71 = HEAP32[$nFullPathname>>2]|0; - $72 = (_sqlite3Malloc($71)|0); - HEAP32[$zFullPathname>>2] = $72; - $73 = HEAP32[$p>>2]|0; - $74 = (($73) + 9|0); - HEAP8[$74>>0] = 1; - $75 = HEAP32[$zFullPathname>>2]|0; - $76 = ($75|0)!=(0|0); - if (!($76)) { - $77 = HEAP32[$p>>2]|0; - _sqlite3_free($77); - HEAP32[$0>>2] = 7; - $387 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($387|0); - } - $78 = HEAP32[$isMemdb>>2]|0; - $79 = ($78|0)!=(0); - if ($79) { - $80 = HEAP32[$zFullPathname>>2]|0; - $81 = HEAP32[$2>>2]|0; - $82 = HEAP32[$2>>2]|0; - $83 = (_sqlite3Strlen30($82)|0); - $84 = (($83) + 1)|0; - _memcpy(($80|0),($81|0),($84|0))|0; - } else { - $85 = HEAP32[$1>>2]|0; - $86 = HEAP32[$2>>2]|0; - $87 = HEAP32[$nFullPathname>>2]|0; - $88 = HEAP32[$zFullPathname>>2]|0; - $89 = (_sqlite3OsFullPathname($85,$86,$87,$88)|0); - HEAP32[$rc>>2] = $89; - $90 = HEAP32[$rc>>2]|0; - $91 = ($90|0)!=(0); - if ($91) { - $92 = HEAP32[$zFullPathname>>2]|0; - _sqlite3_free($92); - $93 = HEAP32[$p>>2]|0; - _sqlite3_free($93); - $94 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $94; - $387 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($387|0); - } - } - $95 = HEAP32[4184>>2]|0; - HEAP32[$pBt>>2] = $95; - while(1) { - $96 = HEAP32[$pBt>>2]|0; - $97 = ($96|0)!=(0|0); - if (!($97)) { - break; - } - $98 = HEAP32[$zFullPathname>>2]|0; - $99 = HEAP32[$pBt>>2]|0; - $100 = HEAP32[$99>>2]|0; - $101 = (_sqlite3PagerFilename($100,0)|0); - $102 = (_strcmp($98,$101)|0); - $103 = (0)==($102|0); - if ($103) { - $104 = HEAP32[$pBt>>2]|0; - $105 = HEAP32[$104>>2]|0; - $106 = (_sqlite3PagerVfs($105)|0); - $107 = HEAP32[$1>>2]|0; - $108 = ($106|0)==($107|0); - if ($108) { - label = 30; - break; - } - } - $140 = HEAP32[$pBt>>2]|0; - $141 = (($140) + 68|0); - $142 = HEAP32[$141>>2]|0; - HEAP32[$pBt>>2] = $142; - } - do { - if ((label|0) == 30) { - $109 = HEAP32[$3>>2]|0; - $110 = (($109) + 20|0); - $111 = HEAP32[$110>>2]|0; - $112 = (($111) - 1)|0; - HEAP32[$iDb>>2] = $112; - while(1) { - $113 = HEAP32[$iDb>>2]|0; - $114 = ($113|0)>=(0); - if (!($114)) { - label = 36; - break; - } - $115 = HEAP32[$iDb>>2]|0; - $116 = HEAP32[$3>>2]|0; - $117 = (($116) + 16|0); - $118 = HEAP32[$117>>2]|0; - $119 = (($118) + ($115<<4)|0); - $120 = (($119) + 4|0); - $121 = HEAP32[$120>>2]|0; - HEAP32[$pExisting>>2] = $121; - $122 = HEAP32[$pExisting>>2]|0; - $123 = ($122|0)!=(0|0); - if ($123) { - $124 = HEAP32[$pExisting>>2]|0; - $125 = (($124) + 4|0); - $126 = HEAP32[$125>>2]|0; - $127 = HEAP32[$pBt>>2]|0; - $128 = ($126|0)==($127|0); - if ($128) { - break; - } - } - $131 = HEAP32[$iDb>>2]|0; - $132 = (($131) + -1)|0; - HEAP32[$iDb>>2] = $132; - } - if ((label|0) == 36) { - $133 = HEAP32[$pBt>>2]|0; - $134 = HEAP32[$p>>2]|0; - $135 = (($134) + 4|0); - HEAP32[$135>>2] = $133; - $136 = HEAP32[$pBt>>2]|0; - $137 = (($136) + 64|0); - $138 = HEAP32[$137>>2]|0; - $139 = (($138) + 1)|0; - HEAP32[$137>>2] = $139; - break; - } - $129 = HEAP32[$zFullPathname>>2]|0; - _sqlite3_free($129); - $130 = HEAP32[$p>>2]|0; - _sqlite3_free($130); - HEAP32[$0>>2] = 19; - $387 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($387|0); - } - } while(0); - $143 = HEAP32[$zFullPathname>>2]|0; - _sqlite3_free($143); - } - } - } while(0); - $144 = HEAP32[$pBt>>2]|0; - $145 = ($144|0)==(0|0); - do { - if ($145) { - $146 = (_sqlite3MallocZero(84)|0); - HEAP32[$pBt>>2] = $146; - $147 = HEAP32[$pBt>>2]|0; - $148 = ($147|0)==(0|0); - if ($148) { - HEAP32[$rc>>2] = 7; - break; - } - $149 = HEAP32[$1>>2]|0; - $150 = HEAP32[$pBt>>2]|0; - $151 = HEAP32[$2>>2]|0; - $152 = HEAP32[$5>>2]|0; - $153 = HEAP32[$6>>2]|0; - $154 = (_sqlite3PagerOpen($149,$150,$151,76,$152,$153,14)|0); - HEAP32[$rc>>2] = $154; - $155 = HEAP32[$rc>>2]|0; - $156 = ($155|0)==(0); - if ($156) { - $157 = HEAP32[$pBt>>2]|0; - $158 = HEAP32[$157>>2]|0; - $159 = HEAP32[$3>>2]|0; - $160 = (($159) + 40|0); - $161 = $160; - $162 = $161; - $163 = HEAP32[$162>>2]|0; - $164 = (($161) + 4)|0; - $165 = $164; - $166 = HEAP32[$165>>2]|0; - _sqlite3PagerSetMmapLimit($158,$163,$166); - $167 = HEAP32[$pBt>>2]|0; - $168 = HEAP32[$167>>2]|0; - $169 = (_sqlite3PagerReadFileheader($168,100,$zDbHeader)|0); - HEAP32[$rc>>2] = $169; - } - $170 = HEAP32[$rc>>2]|0; - $171 = ($170|0)!=(0); - if (!($171)) { - $172 = HEAP32[$5>>2]|0; - $173 = $172&255; - $174 = HEAP32[$pBt>>2]|0; - $175 = (($174) + 16|0); - HEAP8[$175>>0] = $173; - $176 = HEAP32[$3>>2]|0; - $177 = HEAP32[$pBt>>2]|0; - $178 = (($177) + 4|0); - HEAP32[$178>>2] = $176; - $179 = HEAP32[$pBt>>2]|0; - $180 = HEAP32[$179>>2]|0; - $181 = HEAP32[$pBt>>2]|0; - _sqlite3PagerSetBusyhandler($180,19,$181); - $182 = HEAP32[$pBt>>2]|0; - $183 = HEAP32[$p>>2]|0; - $184 = (($183) + 4|0); - HEAP32[$184>>2] = $182; - $185 = HEAP32[$pBt>>2]|0; - $186 = (($185) + 8|0); - HEAP32[$186>>2] = 0; - $187 = HEAP32[$pBt>>2]|0; - $188 = (($187) + 12|0); - HEAP32[$188>>2] = 0; - $189 = HEAP32[$pBt>>2]|0; - $190 = HEAP32[$189>>2]|0; - $191 = (_sqlite3PagerIsreadonly($190)|0); - $192 = ($191<<24>>24)!=(0); - if ($192) { - $193 = HEAP32[$pBt>>2]|0; - $194 = (($193) + 22|0); - $195 = HEAP16[$194>>1]|0; - $196 = $195&65535; - $197 = $196 | 1; - $198 = $197&65535; - HEAP16[$194>>1] = $198; - } - $199 = (($zDbHeader) + 16|0); - $200 = HEAP8[$199>>0]|0; - $201 = $200&255; - $202 = $201 << 8; - $203 = (($zDbHeader) + 17|0); - $204 = HEAP8[$203>>0]|0; - $205 = $204&255; - $206 = $205 << 16; - $207 = $202 | $206; - $208 = HEAP32[$pBt>>2]|0; - $209 = (($208) + 32|0); - HEAP32[$209>>2] = $207; - $210 = HEAP32[$pBt>>2]|0; - $211 = (($210) + 32|0); - $212 = HEAP32[$211>>2]|0; - $213 = ($212>>>0)<(512); - if ($213) { - label = 50; - } else { - $214 = HEAP32[$pBt>>2]|0; - $215 = (($214) + 32|0); - $216 = HEAP32[$215>>2]|0; - $217 = ($216>>>0)>(65536); - if ($217) { - label = 50; - } else { - $218 = HEAP32[$pBt>>2]|0; - $219 = (($218) + 32|0); - $220 = HEAP32[$219>>2]|0; - $221 = (($220) - 1)|0; - $222 = HEAP32[$pBt>>2]|0; - $223 = (($222) + 32|0); - $224 = HEAP32[$223>>2]|0; - $225 = $221 & $224; - $226 = ($225|0)!=(0); - if ($226) { - label = 50; - } else { - $237 = (($zDbHeader) + 20|0); - $238 = HEAP8[$237>>0]|0; - HEAP8[$nReserve>>0] = $238; - $239 = HEAP32[$pBt>>2]|0; - $240 = (($239) + 22|0); - $241 = HEAP16[$240>>1]|0; - $242 = $241&65535; - $243 = $242 | 2; - $244 = $243&65535; - HEAP16[$240>>1] = $244; - $245 = (($zDbHeader) + 52|0); - $246 = (_sqlite3Get4byte($245)|0); - $247 = ($246|0)!=(0); - $248 = $247 ? 1 : 0; - $249 = $248&255; - $250 = HEAP32[$pBt>>2]|0; - $251 = (($250) + 17|0); - HEAP8[$251>>0] = $249; - $252 = (($zDbHeader) + 64|0); - $253 = (_sqlite3Get4byte($252)|0); - $254 = ($253|0)!=(0); - $255 = $254 ? 1 : 0; - $256 = $255&255; - $257 = HEAP32[$pBt>>2]|0; - $258 = (($257) + 18|0); - HEAP8[$258>>0] = $256; - } - } - } - if ((label|0) == 50) { - $227 = HEAP32[$pBt>>2]|0; - $228 = (($227) + 32|0); - HEAP32[$228>>2] = 0; - $229 = HEAP32[$2>>2]|0; - $230 = ($229|0)!=(0|0); - if ($230) { - $231 = HEAP32[$isMemdb>>2]|0; - $232 = ($231|0)!=(0); - if (!($232)) { - $233 = HEAP32[$pBt>>2]|0; - $234 = (($233) + 17|0); - HEAP8[$234>>0] = 0; - $235 = HEAP32[$pBt>>2]|0; - $236 = (($235) + 18|0); - HEAP8[$236>>0] = 0; - } - } - HEAP8[$nReserve>>0] = 0; - } - $259 = HEAP32[$pBt>>2]|0; - $260 = HEAP32[$259>>2]|0; - $261 = HEAP32[$pBt>>2]|0; - $262 = (($261) + 32|0); - $263 = HEAP8[$nReserve>>0]|0; - $264 = $263&255; - $265 = (_sqlite3PagerSetPagesize($260,$262,$264)|0); - HEAP32[$rc>>2] = $265; - $266 = HEAP32[$rc>>2]|0; - $267 = ($266|0)!=(0); - if (!($267)) { - $268 = HEAP32[$pBt>>2]|0; - $269 = (($268) + 32|0); - $270 = HEAP32[$269>>2]|0; - $271 = HEAP8[$nReserve>>0]|0; - $272 = $271&255; - $273 = (($270) - ($272))|0; - $274 = HEAP32[$pBt>>2]|0; - $275 = (($274) + 36|0); - HEAP32[$275>>2] = $273; - $276 = HEAP32[$p>>2]|0; - $277 = (($276) + 9|0); - $278 = HEAP8[$277>>0]|0; - $279 = ($278<<24>>24)!=(0); - if ($279) { - $280 = HEAP32[$pBt>>2]|0; - $281 = (($280) + 64|0); - HEAP32[$281>>2] = 1; - $282 = HEAP32[4184>>2]|0; - $283 = HEAP32[$pBt>>2]|0; - $284 = (($283) + 68|0); - HEAP32[$284>>2] = $282; - $285 = HEAP32[$pBt>>2]|0; - HEAP32[4184>>2] = $285; - label = 58; - } else { - label = 58; - } - } - } - } else { - label = 58; - } - } while(0); - if ((label|0) == 58) { - $286 = HEAP32[$p>>2]|0; - $287 = (($286) + 9|0); - $288 = HEAP8[$287>>0]|0; - $289 = ($288<<24>>24)!=(0); - L88: do { - if ($289) { - HEAP32[$i>>2] = 0; - while(1) { - $290 = HEAP32[$i>>2]|0; - $291 = HEAP32[$3>>2]|0; - $292 = (($291) + 20|0); - $293 = HEAP32[$292>>2]|0; - $294 = ($290|0)<($293|0); - if (!($294)) { - break L88; - } - $295 = HEAP32[$i>>2]|0; - $296 = HEAP32[$3>>2]|0; - $297 = (($296) + 16|0); - $298 = HEAP32[$297>>2]|0; - $299 = (($298) + ($295<<4)|0); - $300 = (($299) + 4|0); - $301 = HEAP32[$300>>2]|0; - HEAP32[$pSib>>2] = $301; - $302 = ($301|0)!=(0|0); - if ($302) { - $303 = HEAP32[$pSib>>2]|0; - $304 = (($303) + 9|0); - $305 = HEAP8[$304>>0]|0; - $306 = $305&255; - $307 = ($306|0)!=(0); - if ($307) { - break; - } - } - $363 = HEAP32[$i>>2]|0; - $364 = (($363) + 1)|0; - HEAP32[$i>>2] = $364; - } - while(1) { - $308 = HEAP32[$pSib>>2]|0; - $309 = (($308) + 24|0); - $310 = HEAP32[$309>>2]|0; - $311 = ($310|0)!=(0|0); - if (!($311)) { - break; - } - $312 = HEAP32[$pSib>>2]|0; - $313 = (($312) + 24|0); - $314 = HEAP32[$313>>2]|0; - HEAP32[$pSib>>2] = $314; - } - $315 = HEAP32[$p>>2]|0; - $316 = (($315) + 4|0); - $317 = HEAP32[$316>>2]|0; - $318 = HEAP32[$pSib>>2]|0; - $319 = (($318) + 4|0); - $320 = HEAP32[$319>>2]|0; - $321 = ($317>>>0)<($320>>>0); - if ($321) { - $322 = HEAP32[$pSib>>2]|0; - $323 = HEAP32[$p>>2]|0; - $324 = (($323) + 20|0); - HEAP32[$324>>2] = $322; - $325 = HEAP32[$p>>2]|0; - $326 = (($325) + 24|0); - HEAP32[$326>>2] = 0; - $327 = HEAP32[$p>>2]|0; - $328 = HEAP32[$pSib>>2]|0; - $329 = (($328) + 24|0); - HEAP32[$329>>2] = $327; - break; - } - while(1) { - $330 = HEAP32[$pSib>>2]|0; - $331 = (($330) + 20|0); - $332 = HEAP32[$331>>2]|0; - $333 = ($332|0)!=(0|0); - if ($333) { - $334 = HEAP32[$pSib>>2]|0; - $335 = (($334) + 20|0); - $336 = HEAP32[$335>>2]|0; - $337 = (($336) + 4|0); - $338 = HEAP32[$337>>2]|0; - $339 = HEAP32[$p>>2]|0; - $340 = (($339) + 4|0); - $341 = HEAP32[$340>>2]|0; - $342 = ($338>>>0)<($341>>>0); - $388 = $342; - } else { - $388 = 0; - } - $343 = HEAP32[$pSib>>2]|0; - $344 = (($343) + 20|0); - $345 = HEAP32[$344>>2]|0; - if (!($388)) { - break; - } - HEAP32[$pSib>>2] = $345; - } - $346 = HEAP32[$p>>2]|0; - $347 = (($346) + 20|0); - HEAP32[$347>>2] = $345; - $348 = HEAP32[$pSib>>2]|0; - $349 = HEAP32[$p>>2]|0; - $350 = (($349) + 24|0); - HEAP32[$350>>2] = $348; - $351 = HEAP32[$p>>2]|0; - $352 = (($351) + 20|0); - $353 = HEAP32[$352>>2]|0; - $354 = ($353|0)!=(0|0); - if ($354) { - $355 = HEAP32[$p>>2]|0; - $356 = HEAP32[$p>>2]|0; - $357 = (($356) + 20|0); - $358 = HEAP32[$357>>2]|0; - $359 = (($358) + 24|0); - HEAP32[$359>>2] = $355; - } - $360 = HEAP32[$p>>2]|0; - $361 = HEAP32[$pSib>>2]|0; - $362 = (($361) + 20|0); - HEAP32[$362>>2] = $360; - } - } while(0); - $365 = HEAP32[$p>>2]|0; - $366 = HEAP32[$4>>2]|0; - HEAP32[$366>>2] = $365; - } - $367 = HEAP32[$rc>>2]|0; - $368 = ($367|0)!=(0); - if ($368) { - $369 = HEAP32[$pBt>>2]|0; - $370 = ($369|0)!=(0|0); - if ($370) { - $371 = HEAP32[$pBt>>2]|0; - $372 = HEAP32[$371>>2]|0; - $373 = ($372|0)!=(0|0); - if ($373) { - $374 = HEAP32[$pBt>>2]|0; - $375 = HEAP32[$374>>2]|0; - (_sqlite3PagerClose($375)|0); - } - } - $376 = HEAP32[$pBt>>2]|0; - _sqlite3_free($376); - $377 = HEAP32[$p>>2]|0; - _sqlite3_free($377); - $378 = HEAP32[$4>>2]|0; - HEAP32[$378>>2] = 0; - } else { - $379 = HEAP32[$p>>2]|0; - $380 = (_sqlite3BtreeSchema($379,0,0)|0); - $381 = ($380|0)==(0|0); - if ($381) { - $382 = HEAP32[$p>>2]|0; - $383 = (($382) + 4|0); - $384 = HEAP32[$383>>2]|0; - $385 = HEAP32[$384>>2]|0; - _sqlite3PagerSetCachesize($385,2000); - } - } - $386 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $386; - $387 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($387|0); -} -function _sqlite3SchemaGet($db,$pBt) { - $db = $db|0; - $pBt = $pBt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pBt; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if ($3) { - $4 = HEAP32[$1>>2]|0; - $5 = (_sqlite3BtreeSchema($4,84,15)|0); - HEAP32[$p>>2] = $5; - } else { - $6 = (_sqlite3DbMallocZero(0,84)|0); - HEAP32[$p>>2] = $6; - } - $7 = HEAP32[$p>>2]|0; - $8 = ($7|0)!=(0|0); - if (!($8)) { - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 64|0); - HEAP8[$10>>0] = 1; - $26 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($26|0); - } - $11 = HEAP32[$p>>2]|0; - $12 = (($11) + 76|0); - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - $15 = (0)==($14|0); - if (!($15)) { - $26 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($26|0); - } - $16 = HEAP32[$p>>2]|0; - $17 = (($16) + 8|0); - _sqlite3HashInit($17); - $18 = HEAP32[$p>>2]|0; - $19 = (($18) + 24|0); - _sqlite3HashInit($19); - $20 = HEAP32[$p>>2]|0; - $21 = (($20) + 40|0); - _sqlite3HashInit($21); - $22 = HEAP32[$p>>2]|0; - $23 = (($22) + 56|0); - _sqlite3HashInit($23); - $24 = HEAP32[$p>>2]|0; - $25 = (($24) + 77|0); - HEAP8[$25>>0] = 1; - $26 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($26|0); -} -function _sqlite3RegisterBuiltinFunctions($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3_overload_function($1,4160,2)|0); - HEAP32[$rc>>2] = $2; - $3 = HEAP32[$rc>>2]|0; - $4 = ($3|0)==(7); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 64|0); - HEAP8[$6>>0] = 1; - STACKTOP = sp;return; -} -function _sqlite3AutoLoadExtensions($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $go = 0, $i = 0, $rc = 0, $vararg_buffer = 0, $xInit = 0, $zErrmsg = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 24|0; - $i = sp + 20|0; - $go = sp + 16|0; - $rc = sp + 12|0; - $xInit = sp + 8|0; - $zErrmsg = sp + 4|0; - HEAP32[$0>>2] = $db; - HEAP32[$go>>2] = 1; - $1 = HEAP32[1480>>2]|0; - $2 = ($1|0)==(0); - if ($2) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $3 = HEAP32[$go>>2]|0; - $4 = ($3|0)!=(0); - if (!($4)) { - break; - } - $5 = HEAP32[$i>>2]|0; - $6 = HEAP32[1480>>2]|0; - $7 = ($5|0)>=($6|0); - if ($7) { - HEAP32[$xInit>>2] = 0; - HEAP32[$go>>2] = 0; - } else { - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[((1480 + 4|0))>>2]|0; - $10 = (($9) + ($8<<2)|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$xInit>>2] = $11; - } - HEAP32[$zErrmsg>>2] = 0; - $12 = HEAP32[$xInit>>2]|0; - $13 = ($12|0)!=(0|0); - if ($13) { - $14 = HEAP32[$xInit>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (FUNCTION_TABLE_iiii[$14 & 15]($15,$zErrmsg,3352)|0); - HEAP32[$rc>>2] = $16; - $17 = ($16|0)!=(0); - if ($17) { - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$rc>>2]|0; - $20 = HEAP32[$zErrmsg>>2]|0; - HEAP32[$vararg_buffer>>2] = $20; - _sqlite3Error($18,$19,4120,$vararg_buffer); - HEAP32[$go>>2] = 0; - } - } - $21 = HEAP32[$zErrmsg>>2]|0; - _sqlite3_free($21); - $22 = HEAP32[$i>>2]|0; - $23 = (($22) + 1)|0; - HEAP32[$i>>2] = $23; - } - STACKTOP = sp;return; -} -function _sqlite3BtreeSchema($p,$nBytes,$xFree) { - $p = $p|0; - $nBytes = $nBytes|0; - $xFree = $xFree|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $pBt = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pBt = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $nBytes; - HEAP32[$2>>2] = $xFree; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 4|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pBt>>2] = $5; - $6 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($6); - $7 = HEAP32[$pBt>>2]|0; - $8 = (($7) + 48|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - $11 = HEAP32[$1>>2]|0; - $12 = ($11|0)!=(0); - if ($12) { - $13 = HEAP32[$1>>2]|0; - $14 = (_sqlite3DbMallocZero(0,$13)|0); - $15 = HEAP32[$pBt>>2]|0; - $16 = (($15) + 48|0); - HEAP32[$16>>2] = $14; - $17 = HEAP32[$2>>2]|0; - $18 = HEAP32[$pBt>>2]|0; - $19 = (($18) + 52|0); - HEAP32[$19>>2] = $17; - } - } - $20 = HEAP32[$pBt>>2]|0; - $21 = (($20) + 48|0); - $22 = HEAP32[$21>>2]|0; - STACKTOP = sp;return ($22|0); -} -function _sqlite3SchemaClear($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pElem = 0, $pSchema = 0, $pTab = 0, $temp1 = 0, $temp2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 48|0; - $temp1 = sp + 32|0; - $temp2 = sp + 16|0; - $pElem = sp + 8|0; - $pSchema = sp + 4|0; - $pTab = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - HEAP32[$pSchema>>2] = $1; - $2 = HEAP32[$pSchema>>2]|0; - $3 = (($2) + 8|0); - ;HEAP32[$temp1+0>>2]=HEAP32[$3+0>>2]|0;HEAP32[$temp1+4>>2]=HEAP32[$3+4>>2]|0;HEAP32[$temp1+8>>2]=HEAP32[$3+8>>2]|0;HEAP32[$temp1+12>>2]=HEAP32[$3+12>>2]|0; - $4 = HEAP32[$pSchema>>2]|0; - $5 = (($4) + 40|0); - ;HEAP32[$temp2+0>>2]=HEAP32[$5+0>>2]|0;HEAP32[$temp2+4>>2]=HEAP32[$5+4>>2]|0;HEAP32[$temp2+8>>2]=HEAP32[$5+8>>2]|0;HEAP32[$temp2+12>>2]=HEAP32[$5+12>>2]|0; - $6 = HEAP32[$pSchema>>2]|0; - $7 = (($6) + 40|0); - _sqlite3HashInit($7); - $8 = HEAP32[$pSchema>>2]|0; - $9 = (($8) + 24|0); - _sqlite3HashClear($9); - $10 = (($temp2) + 8|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$pElem>>2] = $11; - while(1) { - $12 = HEAP32[$pElem>>2]|0; - $13 = ($12|0)!=(0|0); - if (!($13)) { - break; - } - $14 = HEAP32[$pElem>>2]|0; - $15 = (($14) + 8|0); - $16 = HEAP32[$15>>2]|0; - _sqlite3DeleteTrigger(0,$16); - $17 = HEAP32[$pElem>>2]|0; - $18 = HEAP32[$17>>2]|0; - HEAP32[$pElem>>2] = $18; - } - _sqlite3HashClear($temp2); - $19 = HEAP32[$pSchema>>2]|0; - $20 = (($19) + 8|0); - _sqlite3HashInit($20); - $21 = (($temp1) + 8|0); - $22 = HEAP32[$21>>2]|0; - HEAP32[$pElem>>2] = $22; - while(1) { - $23 = HEAP32[$pElem>>2]|0; - $24 = ($23|0)!=(0|0); - if (!($24)) { - break; - } - $25 = HEAP32[$pElem>>2]|0; - $26 = (($25) + 8|0); - $27 = HEAP32[$26>>2]|0; - HEAP32[$pTab>>2] = $27; - $28 = HEAP32[$pTab>>2]|0; - _sqlite3DeleteTable(0,$28); - $29 = HEAP32[$pElem>>2]|0; - $30 = HEAP32[$29>>2]|0; - HEAP32[$pElem>>2] = $30; - } - _sqlite3HashClear($temp1); - $31 = HEAP32[$pSchema>>2]|0; - $32 = (($31) + 56|0); - _sqlite3HashClear($32); - $33 = HEAP32[$pSchema>>2]|0; - $34 = (($33) + 72|0); - HEAP32[$34>>2] = 0; - $35 = HEAP32[$pSchema>>2]|0; - $36 = (($35) + 78|0); - $37 = HEAP16[$36>>1]|0; - $38 = $37&65535; - $39 = $38 & 1; - $40 = ($39|0)!=(0); - if (!($40)) { - STACKTOP = sp;return; - } - $41 = HEAP32[$pSchema>>2]|0; - $42 = (($41) + 4|0); - $43 = HEAP32[$42>>2]|0; - $44 = (($43) + 1)|0; - HEAP32[$42>>2] = $44; - $45 = HEAP32[$pSchema>>2]|0; - $46 = (($45) + 78|0); - $47 = HEAP16[$46>>1]|0; - $48 = $47&65535; - $49 = $48 & -2; - $50 = $49&65535; - HEAP16[$46>>1] = $50; - STACKTOP = sp;return; -} -function _sqlite3TempInMemory($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 63|0); - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - $5 = ($4|0)==(2); - $6 = $5&1; - STACKTOP = sp;return ($6|0); -} -function _sqlite3OsFullPathname($pVfs,$zPath,$nPathOut,$zPathOut) { - $pVfs = $pVfs|0; - $zPath = $zPath|0; - $nPathOut = $nPathOut|0; - $zPathOut = $zPathOut|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$0>>2] = $pVfs; - HEAP32[$1>>2] = $zPath; - HEAP32[$2>>2] = $nPathOut; - HEAP32[$3>>2] = $zPathOut; - $4 = HEAP32[$3>>2]|0; - HEAP8[$4>>0] = 0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 36|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$3>>2]|0; - $12 = (FUNCTION_TABLE_iiiii[$7 & 15]($8,$9,$10,$11)|0); - STACKTOP = sp;return ($12|0); -} -function _sqlite3PagerVfs($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - STACKTOP = sp;return ($2|0); -} -function _sqlite3PagerOpen($pVfs,$ppPager,$zFilename,$nExtra,$flags,$vfsFlags,$xReinit) { - $pVfs = $pVfs|0; - $ppPager = $ppPager|0; - $zFilename = $zFilename|0; - $nExtra = $nExtra|0; - $flags = $flags|0; - $vfsFlags = $vfsFlags|0; - $xReinit = $xReinit|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; - var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $fout = 0, $iDc = 0; - var $journalFileSize = 0, $memDb = 0, $nPathname = 0, $nUri = 0, $pPager = 0, $pPtr = 0, $pcacheSize = 0, $rc = 0, $readOnly = 0, $szPageDflt = 0, $tempFile = 0, $useJournal = 0, $z = 0, $zPathname = 0, $zUri = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 112|0; - $0 = sp + 96|0; - $1 = sp + 92|0; - $2 = sp + 88|0; - $3 = sp + 84|0; - $4 = sp + 80|0; - $5 = sp + 76|0; - $6 = sp + 72|0; - $7 = sp + 68|0; - $pPtr = sp + 64|0; - $pPager = sp + 60|0; - $rc = sp + 56|0; - $tempFile = sp + 52|0; - $memDb = sp + 48|0; - $readOnly = sp + 44|0; - $journalFileSize = sp + 40|0; - $zPathname = sp + 36|0; - $nPathname = sp + 32|0; - $useJournal = sp + 28|0; - $pcacheSize = sp + 24|0; - $szPageDflt = sp + 20|0; - $zUri = sp + 16|0; - $nUri = sp + 12|0; - $z = sp + 8|0; - $fout = sp + 4|0; - $iDc = sp; - HEAP32[$1>>2] = $pVfs; - HEAP32[$2>>2] = $ppPager; - HEAP32[$3>>2] = $zFilename; - HEAP32[$4>>2] = $nExtra; - HEAP32[$5>>2] = $flags; - HEAP32[$6>>2] = $vfsFlags; - HEAP32[$7>>2] = $xReinit; - HEAP32[$pPager>>2] = 0; - HEAP32[$rc>>2] = 0; - HEAP32[$tempFile>>2] = 0; - HEAP32[$memDb>>2] = 0; - HEAP32[$readOnly>>2] = 0; - HEAP32[$zPathname>>2] = 0; - HEAP32[$nPathname>>2] = 0; - $8 = HEAP32[$5>>2]|0; - $9 = $8 & 1; - $10 = ($9|0)==(0); - $11 = $10&1; - HEAP32[$useJournal>>2] = $11; - $12 = (_sqlite3PcacheSize()|0); - HEAP32[$pcacheSize>>2] = $12; - HEAP32[$szPageDflt>>2] = 1024; - HEAP32[$zUri>>2] = 0; - HEAP32[$nUri>>2] = 0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - $16 = (_sqlite3MemJournalSize()|0); - $17 = ($15|0)>($16|0); - if ($17) { - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 4|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($20) + 7)|0; - $22 = $21 & -8; - HEAP32[$journalFileSize>>2] = $22; - } else { - $23 = (_sqlite3MemJournalSize()|0); - $24 = (($23) + 7)|0; - $25 = $24 & -8; - HEAP32[$journalFileSize>>2] = $25; - } - $26 = HEAP32[$2>>2]|0; - HEAP32[$26>>2] = 0; - $27 = HEAP32[$5>>2]|0; - $28 = $27 & 2; - $29 = ($28|0)!=(0); - do { - if ($29) { - HEAP32[$memDb>>2] = 1; - $30 = HEAP32[$3>>2]|0; - $31 = ($30|0)!=(0|0); - if ($31) { - $32 = HEAP32[$3>>2]|0; - $33 = HEAP8[$32>>0]|0; - $34 = $33 << 24 >> 24; - $35 = ($34|0)!=(0); - if ($35) { - $36 = HEAP32[$3>>2]|0; - $37 = (_sqlite3DbStrDup(0,$36)|0); - HEAP32[$zPathname>>2] = $37; - $38 = HEAP32[$zPathname>>2]|0; - $39 = ($38|0)==(0|0); - if (!($39)) { - $40 = HEAP32[$zPathname>>2]|0; - $41 = (_sqlite3Strlen30($40)|0); - HEAP32[$nPathname>>2] = $41; - HEAP32[$3>>2] = 0; - break; - } - HEAP32[$0>>2] = 7; - $377 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($377|0); - } - } - } - } while(0); - $42 = HEAP32[$3>>2]|0; - $43 = ($42|0)!=(0|0); - if ($43) { - $44 = HEAP32[$3>>2]|0; - $45 = HEAP8[$44>>0]|0; - $46 = $45 << 24 >> 24; - $47 = ($46|0)!=(0); - if ($47) { - $48 = HEAP32[$1>>2]|0; - $49 = (($48) + 8|0); - $50 = HEAP32[$49>>2]|0; - $51 = (($50) + 1)|0; - HEAP32[$nPathname>>2] = $51; - $52 = HEAP32[$nPathname>>2]|0; - $53 = $52<<1; - $54 = (_sqlite3DbMallocRaw(0,$53)|0); - HEAP32[$zPathname>>2] = $54; - $55 = HEAP32[$zPathname>>2]|0; - $56 = ($55|0)==(0|0); - if ($56) { - HEAP32[$0>>2] = 7; - $377 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($377|0); - } - $57 = HEAP32[$zPathname>>2]|0; - HEAP8[$57>>0] = 0; - $58 = HEAP32[$1>>2]|0; - $59 = HEAP32[$3>>2]|0; - $60 = HEAP32[$nPathname>>2]|0; - $61 = HEAP32[$zPathname>>2]|0; - $62 = (_sqlite3OsFullPathname($58,$59,$60,$61)|0); - HEAP32[$rc>>2] = $62; - $63 = HEAP32[$zPathname>>2]|0; - $64 = (_sqlite3Strlen30($63)|0); - HEAP32[$nPathname>>2] = $64; - $65 = HEAP32[$3>>2]|0; - $66 = (_sqlite3Strlen30($65)|0); - $67 = (($66) + 1)|0; - $68 = HEAP32[$3>>2]|0; - $69 = (($68) + ($67)|0); - HEAP32[$zUri>>2] = $69; - HEAP32[$z>>2] = $69; - while(1) { - $70 = HEAP32[$z>>2]|0; - $71 = HEAP8[$70>>0]|0; - $72 = ($71<<24>>24)!=(0); - $73 = HEAP32[$z>>2]|0; - if (!($72)) { - break; - } - $74 = (_sqlite3Strlen30($73)|0); - $75 = (($74) + 1)|0; - $76 = HEAP32[$z>>2]|0; - $77 = (($76) + ($75)|0); - HEAP32[$z>>2] = $77; - $78 = HEAP32[$z>>2]|0; - $79 = (_sqlite3Strlen30($78)|0); - $80 = (($79) + 1)|0; - $81 = HEAP32[$z>>2]|0; - $82 = (($81) + ($80)|0); - HEAP32[$z>>2] = $82; - } - $83 = (($73) + 1|0); - $84 = HEAP32[$zUri>>2]|0; - $85 = $83; - $86 = $84; - $87 = (($85) - ($86))|0; - HEAP32[$nUri>>2] = $87; - $88 = HEAP32[$rc>>2]|0; - $89 = ($88|0)==(0); - if ($89) { - $90 = HEAP32[$nPathname>>2]|0; - $91 = (($90) + 8)|0; - $92 = HEAP32[$1>>2]|0; - $93 = (($92) + 8|0); - $94 = HEAP32[$93>>2]|0; - $95 = ($91|0)>($94|0); - if ($95) { - $96 = (_sqlite3CantopenError(44459)|0); - HEAP32[$rc>>2] = $96; - } - } - $97 = HEAP32[$rc>>2]|0; - $98 = ($97|0)!=(0); - if ($98) { - $99 = HEAP32[$zPathname>>2]|0; - _sqlite3DbFree(0,$99); - $100 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $100; - $377 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($377|0); - } - } - } - $101 = HEAP32[$pcacheSize>>2]|0; - $102 = (($101) + 7)|0; - $103 = $102 & -8; - $104 = (216 + ($103))|0; - $105 = HEAP32[$1>>2]|0; - $106 = (($105) + 4|0); - $107 = HEAP32[$106>>2]|0; - $108 = (($107) + 7)|0; - $109 = $108 & -8; - $110 = (($104) + ($109))|0; - $111 = HEAP32[$journalFileSize>>2]|0; - $112 = $111<<1; - $113 = (($110) + ($112))|0; - $114 = HEAP32[$nPathname>>2]|0; - $115 = (($113) + ($114))|0; - $116 = (($115) + 1)|0; - $117 = HEAP32[$nUri>>2]|0; - $118 = (($116) + ($117))|0; - $119 = HEAP32[$nPathname>>2]|0; - $120 = (($118) + ($119))|0; - $121 = (($120) + 8)|0; - $122 = (($121) + 2)|0; - $123 = HEAP32[$nPathname>>2]|0; - $124 = (($122) + ($123))|0; - $125 = (($124) + 4)|0; - $126 = (($125) + 2)|0; - $127 = (_sqlite3MallocZero($126)|0); - HEAP32[$pPtr>>2] = $127; - $128 = HEAP32[$pPtr>>2]|0; - $129 = ($128|0)!=(0|0); - if (!($129)) { - $130 = HEAP32[$zPathname>>2]|0; - _sqlite3DbFree(0,$130); - HEAP32[$0>>2] = 7; - $377 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($377|0); - } - $131 = HEAP32[$pPtr>>2]|0; - HEAP32[$pPager>>2] = $131; - $132 = HEAP32[$pPtr>>2]|0; - $133 = (($132) + 216|0); - HEAP32[$pPtr>>2] = $133; - $134 = HEAP32[$pPager>>2]|0; - $135 = (($134) + 204|0); - HEAP32[$135>>2] = $133; - $136 = HEAP32[$pcacheSize>>2]|0; - $137 = (($136) + 7)|0; - $138 = $137 & -8; - $139 = HEAP32[$pPtr>>2]|0; - $140 = (($139) + ($138)|0); - HEAP32[$pPtr>>2] = $140; - $141 = HEAP32[$pPager>>2]|0; - $142 = (($141) + 60|0); - HEAP32[$142>>2] = $140; - $143 = HEAP32[$1>>2]|0; - $144 = (($143) + 4|0); - $145 = HEAP32[$144>>2]|0; - $146 = (($145) + 7)|0; - $147 = $146 & -8; - $148 = HEAP32[$pPtr>>2]|0; - $149 = (($148) + ($147)|0); - HEAP32[$pPtr>>2] = $149; - $150 = HEAP32[$pPager>>2]|0; - $151 = (($150) + 68|0); - HEAP32[$151>>2] = $149; - $152 = HEAP32[$journalFileSize>>2]|0; - $153 = HEAP32[$pPtr>>2]|0; - $154 = (($153) + ($152)|0); - HEAP32[$pPtr>>2] = $154; - $155 = HEAP32[$pPager>>2]|0; - $156 = (($155) + 64|0); - HEAP32[$156>>2] = $154; - $157 = HEAP32[$journalFileSize>>2]|0; - $158 = HEAP32[$pPtr>>2]|0; - $159 = (($158) + ($157)|0); - HEAP32[$pPtr>>2] = $159; - $160 = HEAP32[$pPager>>2]|0; - $161 = (($160) + 168|0); - HEAP32[$161>>2] = $159; - $162 = HEAP32[$zPathname>>2]|0; - $163 = ($162|0)!=(0|0); - if ($163) { - $164 = HEAP32[$nPathname>>2]|0; - $165 = (($164) + 1)|0; - $166 = HEAP32[$nUri>>2]|0; - $167 = (($165) + ($166))|0; - $168 = HEAP32[$pPtr>>2]|0; - $169 = (($168) + ($167)|0); - HEAP32[$pPtr>>2] = $169; - $170 = HEAP32[$pPager>>2]|0; - $171 = (($170) + 172|0); - HEAP32[$171>>2] = $169; - $172 = HEAP32[$pPager>>2]|0; - $173 = (($172) + 168|0); - $174 = HEAP32[$173>>2]|0; - $175 = HEAP32[$zPathname>>2]|0; - $176 = HEAP32[$nPathname>>2]|0; - _memcpy(($174|0),($175|0),($176|0))|0; - $177 = HEAP32[$nUri>>2]|0; - $178 = ($177|0)!=(0); - if ($178) { - $179 = HEAP32[$nPathname>>2]|0; - $180 = (($179) + 1)|0; - $181 = HEAP32[$pPager>>2]|0; - $182 = (($181) + 168|0); - $183 = HEAP32[$182>>2]|0; - $184 = (($183) + ($180)|0); - $185 = HEAP32[$zUri>>2]|0; - $186 = HEAP32[$nUri>>2]|0; - _memcpy(($184|0),($185|0),($186|0))|0; - } - $187 = HEAP32[$pPager>>2]|0; - $188 = (($187) + 172|0); - $189 = HEAP32[$188>>2]|0; - $190 = HEAP32[$zPathname>>2]|0; - $191 = HEAP32[$nPathname>>2]|0; - _memcpy(($189|0),($190|0),($191|0))|0; - $192 = HEAP32[$nPathname>>2]|0; - $193 = HEAP32[$pPager>>2]|0; - $194 = (($193) + 172|0); - $195 = HEAP32[$194>>2]|0; - $196 = (($195) + ($192)|0); - dest=$196+0|0; src=4504+0|0; stop=dest+10|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); - $197 = HEAP32[$nPathname>>2]|0; - $198 = (($197) + 8)|0; - $199 = (($198) + 1)|0; - $200 = HEAP32[$pPager>>2]|0; - $201 = (($200) + 172|0); - $202 = HEAP32[$201>>2]|0; - $203 = (($202) + ($199)|0); - $204 = HEAP32[$pPager>>2]|0; - $205 = (($204) + 212|0); - HEAP32[$205>>2] = $203; - $206 = HEAP32[$pPager>>2]|0; - $207 = (($206) + 212|0); - $208 = HEAP32[$207>>2]|0; - $209 = HEAP32[$zPathname>>2]|0; - $210 = HEAP32[$nPathname>>2]|0; - _memcpy(($208|0),($209|0),($210|0))|0; - $211 = HEAP32[$nPathname>>2]|0; - $212 = HEAP32[$pPager>>2]|0; - $213 = (($212) + 212|0); - $214 = HEAP32[$213>>2]|0; - $215 = (($214) + ($211)|0); - ;HEAP8[$215+0>>0]=HEAP8[4520+0>>0]|0;HEAP8[$215+1>>0]=HEAP8[4520+1>>0]|0;HEAP8[$215+2>>0]=HEAP8[4520+2>>0]|0;HEAP8[$215+3>>0]=HEAP8[4520+3>>0]|0;HEAP8[$215+4>>0]=HEAP8[4520+4>>0]|0; - $216 = HEAP32[$zPathname>>2]|0; - _sqlite3DbFree(0,$216); - } - $217 = HEAP32[$1>>2]|0; - $218 = HEAP32[$pPager>>2]|0; - HEAP32[$218>>2] = $217; - $219 = HEAP32[$6>>2]|0; - $220 = HEAP32[$pPager>>2]|0; - $221 = (($220) + 144|0); - HEAP32[$221>>2] = $219; - $222 = HEAP32[$3>>2]|0; - $223 = ($222|0)!=(0|0); - do { - if ($223) { - $224 = HEAP32[$3>>2]|0; - $225 = HEAP8[$224>>0]|0; - $226 = $225 << 24 >> 24; - $227 = ($226|0)!=(0); - if ($227) { - HEAP32[$fout>>2] = 0; - $228 = HEAP32[$1>>2]|0; - $229 = HEAP32[$pPager>>2]|0; - $230 = (($229) + 168|0); - $231 = HEAP32[$230>>2]|0; - $232 = HEAP32[$pPager>>2]|0; - $233 = (($232) + 60|0); - $234 = HEAP32[$233>>2]|0; - $235 = HEAP32[$6>>2]|0; - $236 = (_sqlite3OsOpen($228,$231,$234,$235,$fout)|0); - HEAP32[$rc>>2] = $236; - $237 = HEAP32[$fout>>2]|0; - $238 = $237 & 1; - HEAP32[$readOnly>>2] = $238; - $239 = HEAP32[$rc>>2]|0; - $240 = ($239|0)==(0); - if ($240) { - $241 = HEAP32[$pPager>>2]|0; - $242 = (($241) + 60|0); - $243 = HEAP32[$242>>2]|0; - $244 = (_sqlite3OsDeviceCharacteristics($243)|0); - HEAP32[$iDc>>2] = $244; - $245 = HEAP32[$readOnly>>2]|0; - $246 = ($245|0)!=(0); - do { - if (!($246)) { - $247 = HEAP32[$pPager>>2]|0; - _setSectorSize($247); - $248 = HEAP32[$szPageDflt>>2]|0; - $249 = HEAP32[$pPager>>2]|0; - $250 = (($249) + 148|0); - $251 = HEAP32[$250>>2]|0; - $252 = ($248>>>0)<($251>>>0); - if ($252) { - $253 = HEAP32[$pPager>>2]|0; - $254 = (($253) + 148|0); - $255 = HEAP32[$254>>2]|0; - $256 = ($255>>>0)>(8192); - if ($256) { - HEAP32[$szPageDflt>>2] = 8192; - break; - } else { - $257 = HEAP32[$pPager>>2]|0; - $258 = (($257) + 148|0); - $259 = HEAP32[$258>>2]|0; - HEAP32[$szPageDflt>>2] = $259; - break; - } - } - } - } while(0); - $260 = HEAP32[$3>>2]|0; - $261 = (_sqlite3_uri_boolean($260,4528,0)|0); - $262 = $261&255; - $263 = HEAP32[$pPager>>2]|0; - $264 = (($263) + 13|0); - HEAP8[$264>>0] = $262; - $265 = HEAP32[$iDc>>2]|0; - $266 = $265 & 8192; - $267 = ($266|0)!=(0); - if (!($267)) { - $268 = HEAP32[$3>>2]|0; - $269 = (_sqlite3_uri_boolean($268,4536,0)|0); - $270 = ($269|0)!=(0); - if (!($270)) { - break; - } - } - $271 = HEAP32[$6>>2]|0; - $272 = $271 | 1; - HEAP32[$6>>2] = $272; - label = 39; - } - } else { - label = 39; - } - } else { - label = 39; - } - } while(0); - if ((label|0) == 39) { - HEAP32[$tempFile>>2] = 1; - $273 = HEAP32[$pPager>>2]|0; - $274 = (($273) + 16|0); - HEAP8[$274>>0] = 1; - $275 = HEAP32[$pPager>>2]|0; - $276 = (($275) + 17|0); - HEAP8[$276>>0] = 4; - $277 = HEAP32[$pPager>>2]|0; - $278 = (($277) + 13|0); - HEAP8[$278>>0] = 1; - $279 = HEAP32[$6>>2]|0; - $280 = $279 & 1; - HEAP32[$readOnly>>2] = $280; - } - $281 = HEAP32[$rc>>2]|0; - $282 = ($281|0)==(0); - if ($282) { - $283 = HEAP32[$pPager>>2]|0; - $284 = (_sqlite3PagerSetPagesize($283,$szPageDflt,-1)|0); - HEAP32[$rc>>2] = $284; - } - $285 = HEAP32[$rc>>2]|0; - $286 = ($285|0)!=(0); - if ($286) { - $287 = HEAP32[$pPager>>2]|0; - $288 = (($287) + 60|0); - $289 = HEAP32[$288>>2]|0; - (_sqlite3OsClose($289)|0); - $290 = HEAP32[$pPager>>2]|0; - _sqlite3_free($290); - $291 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $291; - $377 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($377|0); - } - $292 = HEAP32[$4>>2]|0; - $293 = (($292) + 7)|0; - $294 = $293 & -8; - HEAP32[$4>>2] = $294; - $295 = HEAP32[$szPageDflt>>2]|0; - $296 = HEAP32[$4>>2]|0; - $297 = HEAP32[$memDb>>2]|0; - $298 = ($297|0)!=(0); - $299 = $298 ^ 1; - $300 = $299&1; - $301 = HEAP32[$memDb>>2]|0; - $302 = ($301|0)!=(0); - $303 = $302 ^ 1; - $304 = $303 ? 34 : 0; - $305 = HEAP32[$pPager>>2]|0; - $306 = HEAP32[$pPager>>2]|0; - $307 = (($306) + 204|0); - $308 = HEAP32[$307>>2]|0; - _sqlite3PcacheOpen($295,$296,$300,$304,$305,$308); - $309 = HEAP32[$useJournal>>2]|0; - $310 = $309&255; - $311 = HEAP32[$pPager>>2]|0; - $312 = (($311) + 6|0); - HEAP8[$312>>0] = $310; - $313 = HEAP32[$pPager>>2]|0; - $314 = (($313) + 156|0); - HEAP32[$314>>2] = 1073741823; - $315 = HEAP32[$tempFile>>2]|0; - $316 = $315&255; - $317 = HEAP32[$pPager>>2]|0; - $318 = (($317) + 12|0); - HEAP8[$318>>0] = $316; - $319 = HEAP32[$tempFile>>2]|0; - $320 = $319&255; - $321 = HEAP32[$pPager>>2]|0; - $322 = (($321) + 4|0); - HEAP8[$322>>0] = $320; - $323 = HEAP32[$pPager>>2]|0; - $324 = (($323) + 12|0); - $325 = HEAP8[$324>>0]|0; - $326 = HEAP32[$pPager>>2]|0; - $327 = (($326) + 18|0); - HEAP8[$327>>0] = $325; - $328 = HEAP32[$memDb>>2]|0; - $329 = $328&255; - $330 = HEAP32[$pPager>>2]|0; - $331 = (($330) + 15|0); - HEAP8[$331>>0] = $329; - $332 = HEAP32[$readOnly>>2]|0; - $333 = $332&255; - $334 = HEAP32[$pPager>>2]|0; - $335 = (($334) + 14|0); - HEAP8[$335>>0] = $333; - $336 = HEAP32[$pPager>>2]|0; - $337 = (($336) + 12|0); - $338 = HEAP8[$337>>0]|0; - $339 = HEAP32[$pPager>>2]|0; - $340 = (($339) + 7|0); - HEAP8[$340>>0] = $338; - $341 = HEAP32[$pPager>>2]|0; - $342 = (($341) + 7|0); - $343 = HEAP8[$342>>0]|0; - $344 = ($343<<24>>24)!=(0); - if (!($344)) { - $345 = HEAP32[$pPager>>2]|0; - $346 = (($345) + 8|0); - HEAP8[$346>>0] = 1; - $347 = HEAP32[$pPager>>2]|0; - $348 = (($347) + 11|0); - HEAP8[$348>>0] = 2; - $349 = HEAP32[$pPager>>2]|0; - $350 = (($349) + 10|0); - HEAP8[$350>>0] = 34; - $351 = HEAP32[$pPager>>2]|0; - $352 = (($351) + 9|0); - HEAP8[$352>>0] = 2; - } - $353 = HEAP32[$4>>2]|0; - $354 = $353&65535; - $355 = HEAP32[$pPager>>2]|0; - $356 = (($355) + 140|0); - HEAP16[$356>>1] = $354; - $357 = HEAP32[$pPager>>2]|0; - $358 = (($357) + 160|0); - $359 = $358; - $360 = $359; - HEAP32[$360>>2] = -1; - $361 = (($359) + 4)|0; - $362 = $361; - HEAP32[$362>>2] = -1; - $363 = HEAP32[$pPager>>2]|0; - _setSectorSize($363); - $364 = HEAP32[$useJournal>>2]|0; - $365 = ($364|0)!=(0); - if ($365) { - $368 = HEAP32[$memDb>>2]|0; - $369 = ($368|0)!=(0); - if ($369) { - $370 = HEAP32[$pPager>>2]|0; - $371 = (($370) + 5|0); - HEAP8[$371>>0] = 4; - } - } else { - $366 = HEAP32[$pPager>>2]|0; - $367 = (($366) + 5|0); - HEAP8[$367>>0] = 2; - } - $372 = HEAP32[$7>>2]|0; - $373 = HEAP32[$pPager>>2]|0; - $374 = (($373) + 196|0); - HEAP32[$374>>2] = $372; - $375 = HEAP32[$pPager>>2]|0; - $376 = HEAP32[$2>>2]|0; - HEAP32[$376>>2] = $375; - HEAP32[$0>>2] = 0; - $377 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($377|0); -} -function _pageReinit($pData) { - $pData = $pData|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pPage = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pPage = sp; - HEAP32[$0>>2] = $pData; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3PagerGetExtra($1)|0); - HEAP32[$pPage>>2] = $2; - $3 = HEAP32[$pPage>>2]|0; - $4 = HEAP8[$3>>0]|0; - $5 = ($4<<24>>24)!=(0); - if (!($5)) { - STACKTOP = sp;return; - } - $6 = HEAP32[$pPage>>2]|0; - HEAP8[$6>>0] = 0; - $7 = HEAP32[$0>>2]|0; - $8 = (_sqlite3PagerPageRefcount($7)|0); - $9 = ($8|0)>(1); - if (!($9)) { - STACKTOP = sp;return; - } - $10 = HEAP32[$pPage>>2]|0; - (_btreeInitPage($10)|0); - STACKTOP = sp;return; -} -function _sqlite3PagerSetMmapLimit($pPager,$0,$1) { - $pPager = $pPager|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $2 = sp + 8|0; - $3 = sp; - HEAP32[$2>>2] = $pPager; - $4 = $3; - $5 = $4; - HEAP32[$5>>2] = $0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = $1; - $8 = $3; - $9 = $8; - $10 = HEAP32[$9>>2]|0; - $11 = (($8) + 4)|0; - $12 = $11; - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = (($14) + 128|0); - $16 = $15; - $17 = $16; - HEAP32[$17>>2] = $10; - $18 = (($16) + 4)|0; - $19 = $18; - HEAP32[$19>>2] = $13; - $20 = HEAP32[$2>>2]|0; - _pagerFixMaplimit($20); - STACKTOP = sp;return; -} -function _sqlite3PagerReadFileheader($pPager,$N,$pDest) { - $pPager = $pPager|0; - $N = $N|0; - $pDest = $pDest|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $N; - HEAP32[$2>>2] = $pDest; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$1>>2]|0; - _memset(($3|0),0,($4|0))|0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 60|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)!=(0|0); - if (!($9)) { - $18 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($18|0); - } - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 60|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = (_sqlite3OsRead($12,$13,$14,0,0)|0); - HEAP32[$rc>>2] = $15; - $16 = HEAP32[$rc>>2]|0; - $17 = ($16|0)==(522); - $$ = $17 ? 0 : $15; - HEAP32[$rc>>2] = $$; - $18 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($18|0); -} -function _sqlite3PagerSetBusyhandler($pPager,$xBusyHandler,$pBusyHandlerArg) { - $pPager = $pPager|0; - $xBusyHandler = $xBusyHandler|0; - $pBusyHandlerArg = $pBusyHandlerArg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $ap = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $ap = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $xBusyHandler; - HEAP32[$2>>2] = $pBusyHandlerArg; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 176|0); - HEAP32[$5>>2] = $3; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 180|0); - HEAP32[$8>>2] = $6; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 60|0); - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)!=(0|0); - if (!($13)) { - STACKTOP = sp;return; - } - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 176|0); - HEAP32[$ap>>2] = $15; - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 60|0); - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$ap>>2]|0; - _sqlite3OsFileControlHint($18,15,$19); - STACKTOP = sp;return; -} -function _btreeInvokeBusyHandler($pArg) { - $pArg = $pArg|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $pBt = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pBt = sp; - HEAP32[$0>>2] = $pArg; - $1 = HEAP32[$0>>2]|0; - HEAP32[$pBt>>2] = $1; - $2 = HEAP32[$pBt>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - $5 = (($4) + 436|0); - $6 = (_sqlite3InvokeBusyHandler($5)|0); - STACKTOP = sp;return ($6|0); -} -function _sqlite3PagerIsreadonly($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 14|0); - $3 = HEAP8[$2>>0]|0; - STACKTOP = sp;return ($3|0); -} -function _sqlite3Get4byte($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP8[$1>>0]|0; - $3 = $2&255; - $4 = $3 << 24; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 1|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = $8 << 16; - $10 = $4 | $9; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 2|0); - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - $15 = $14 << 8; - $16 = $10 | $15; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 3|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = $16 | $20; - STACKTOP = sp;return ($21|0); -} -function _sqlite3PagerClose($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTmp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pTmp = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 200|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pTmp>>2] = $3; - _sqlite3BeginBenignMalloc(); - $4 = HEAP32[$0>>2]|0; - _pagerFreeMapHdrs($4); - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 4|0); - HEAP8[$6>>0] = 0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 208|0); - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 9|0); - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 152|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$pTmp>>2]|0; - (_sqlite3WalClose($9,$13,$16,$17)|0); - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 208|0); - HEAP32[$19>>2] = 0; - $20 = HEAP32[$0>>2]|0; - _pager_reset($20); - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 15|0); - $23 = HEAP8[$22>>0]|0; - $24 = ($23<<24>>24)!=(0); - $25 = HEAP32[$0>>2]|0; - if ($24) { - _pager_unlock($25); - } else { - $26 = (($25) + 64|0); - $27 = HEAP32[$26>>2]|0; - $28 = HEAP32[$27>>2]|0; - $29 = ($28|0)!=(0|0); - if ($29) { - $30 = HEAP32[$0>>2]|0; - $31 = HEAP32[$0>>2]|0; - $32 = (_pagerSyncHotJournal($31)|0); - (_pager_error($30,$32)|0); - } - $33 = HEAP32[$0>>2]|0; - _pagerUnlockAndRollback($33); - } - _sqlite3EndBenignMalloc(); - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 64|0); - $36 = HEAP32[$35>>2]|0; - (_sqlite3OsClose($36)|0); - $37 = HEAP32[$0>>2]|0; - $38 = (($37) + 60|0); - $39 = HEAP32[$38>>2]|0; - (_sqlite3OsClose($39)|0); - $40 = HEAP32[$pTmp>>2]|0; - _sqlite3PageFree($40); - $41 = HEAP32[$0>>2]|0; - $42 = (($41) + 204|0); - $43 = HEAP32[$42>>2]|0; - _sqlite3PcacheClose($43); - $44 = HEAP32[$0>>2]|0; - _sqlite3_free($44); - STACKTOP = sp;return 0; -} -function _sqlite3PagerSetCachesize($pPager,$mxPage) { - $pPager = $pPager|0; - $mxPage = $mxPage|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $mxPage; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 204|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$1>>2]|0; - _sqlite3PcacheSetCachesize($4,$5); - STACKTOP = sp;return; -} -function _sqlite3PcacheSetCachesize($pCache,$mxPage) { - $pCache = $pCache|0; - $mxPage = $mxPage|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pCache; - HEAP32[$1>>2] = $mxPage; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 16|0); - HEAP32[$4>>2] = $2; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 40|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)!=(0|0); - if (!($8)) { - STACKTOP = sp;return; - } - $9 = HEAP32[((38512 + 124|0))>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 40|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$0>>2]|0; - $14 = (_numberOfCachePages($13)|0); - FUNCTION_TABLE_vii[$9 & 7]($12,$14); - STACKTOP = sp;return; -} -function _numberOfCachePages($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 16|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)>=(0); - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 16|0); - $8 = HEAP32[$7>>2]|0; - if ($5) { - HEAP32[$0>>2] = $8; - $24 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($24|0); - } else { - $9 = ($8|0)<(0); - $10 = $9 << 31 >> 31; - $11 = (___muldi3(-1024,-1,($8|0),($10|0))|0); - $12 = tempRet0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 20|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 24|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($15) + ($18))|0; - $20 = ($19|0)<(0); - $21 = $20 << 31 >> 31; - $22 = (___divdi3(($11|0),($12|0),($19|0),($21|0))|0); - $23 = tempRet0; - HEAP32[$0>>2] = $22; - $24 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($24|0); - } - return 0|0; -} -function _pagerFreeMapHdrs($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pNext = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $p = sp + 4|0; - $pNext = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 136|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$p>>2] = $3; - while(1) { - $4 = HEAP32[$p>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - break; - } - $6 = HEAP32[$p>>2]|0; - $7 = (($6) + 12|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pNext>>2] = $8; - $9 = HEAP32[$p>>2]|0; - _sqlite3_free($9); - $10 = HEAP32[$pNext>>2]|0; - HEAP32[$p>>2] = $10; - } - STACKTOP = sp;return; -} -function _sqlite3WalClose($pWal,$sync_flags,$nBuf,$zBuf) { - $pWal = $pWal|0; - $sync_flags = $sync_flags|0; - $nBuf = $nBuf|0; - $zBuf = $zBuf|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0; - var $8 = 0, $9 = 0, $bPersist = 0, $isDelete = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $rc = sp + 8|0; - $isDelete = sp + 4|0; - $bPersist = sp; - HEAP32[$0>>2] = $pWal; - HEAP32[$1>>2] = $sync_flags; - HEAP32[$2>>2] = $nBuf; - HEAP32[$3>>2] = $zBuf; - HEAP32[$rc>>2] = 0; - $4 = HEAP32[$0>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - $61 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($61|0); - } - HEAP32[$isDelete>>2] = 0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3OsLock($8,4)|0); - HEAP32[$rc>>2] = $9; - $10 = HEAP32[$rc>>2]|0; - $11 = ($10|0)==(0); - do { - if ($11) { - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 43|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14&255; - $16 = ($15|0)==(0); - if ($16) { - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 43|0); - HEAP8[$18>>0] = 1; - } - $19 = HEAP32[$0>>2]|0; - $20 = HEAP32[$1>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = HEAP32[$3>>2]|0; - $23 = (_sqlite3WalCheckpoint($19,0,0,0,$20,$21,$22,0,0)|0); - HEAP32[$rc>>2] = $23; - $24 = HEAP32[$rc>>2]|0; - $25 = ($24|0)==(0); - if ($25) { - HEAP32[$bPersist>>2] = -1; - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 4|0); - $28 = HEAP32[$27>>2]|0; - _sqlite3OsFileControlHint($28,10,$bPersist); - $29 = HEAP32[$bPersist>>2]|0; - $30 = ($29|0)!=(1); - if ($30) { - HEAP32[$isDelete>>2] = 1; - break; - } - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 16|0); - $33 = $32; - $34 = $33; - $35 = HEAP32[$34>>2]|0; - $36 = (($33) + 4)|0; - $37 = $36; - $38 = HEAP32[$37>>2]|0; - $39 = ($38|0)>(0); - $40 = ($38|0)==(0); - $41 = ($35>>>0)>=(0); - $42 = $40 & $41; - $43 = $39 | $42; - if ($43) { - $44 = HEAP32[$0>>2]|0; - _walLimitSize($44,0,0); - } - } - } - } while(0); - $45 = HEAP32[$0>>2]|0; - $46 = HEAP32[$isDelete>>2]|0; - _walIndexClose($45,$46); - $47 = HEAP32[$0>>2]|0; - $48 = (($47) + 8|0); - $49 = HEAP32[$48>>2]|0; - (_sqlite3OsClose($49)|0); - $50 = HEAP32[$isDelete>>2]|0; - $51 = ($50|0)!=(0); - if ($51) { - _sqlite3BeginBenignMalloc(); - $52 = HEAP32[$0>>2]|0; - $53 = HEAP32[$52>>2]|0; - $54 = HEAP32[$0>>2]|0; - $55 = (($54) + 100|0); - $56 = HEAP32[$55>>2]|0; - (_sqlite3OsDelete($53,$56,0)|0); - _sqlite3EndBenignMalloc(); - } - $57 = HEAP32[$0>>2]|0; - $58 = (($57) + 32|0); - $59 = HEAP32[$58>>2]|0; - _sqlite3_free($59); - $60 = HEAP32[$0>>2]|0; - _sqlite3_free($60); - $61 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($61|0); -} -function _pager_unlock($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $9 = 0, $iDc = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $rc = sp + 4|0; - $iDc = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 56|0); - $3 = HEAP32[$2>>2]|0; - _sqlite3BitvecDestroy($3); - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 56|0); - HEAP32[$5>>2] = 0; - $6 = HEAP32[$0>>2]|0; - _releaseAllSavepoints($6); - $7 = HEAP32[$0>>2]|0; - $8 = (_pagerUseWal($7)|0); - $9 = ($8|0)!=(0); - $10 = HEAP32[$0>>2]|0; - if ($9) { - $11 = (($10) + 208|0); - $12 = HEAP32[$11>>2]|0; - _sqlite3WalEndReadTransaction($12); - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 16|0); - HEAP8[$14>>0] = 0; - } else { - $15 = (($10) + 4|0); - $16 = HEAP8[$15>>0]|0; - $17 = ($16<<24>>24)!=(0); - if (!($17)) { - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 60|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$20>>2]|0; - $22 = ($21|0)!=(0|0); - if ($22) { - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 60|0); - $25 = HEAP32[$24>>2]|0; - $26 = (_sqlite3OsDeviceCharacteristics($25)|0); - $27 = $26; - } else { - $27 = 0; - } - HEAP32[$iDc>>2] = $27; - $28 = HEAP32[$iDc>>2]|0; - $29 = $28 & 2048; - $30 = (0)==($29|0); - if ($30) { - label = 8; - } else { - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 5|0); - $33 = HEAP8[$32>>0]|0; - $34 = $33&255; - $35 = $34 & 5; - $36 = (1)!=($35|0); - if ($36) { - label = 8; - } - } - if ((label|0) == 8) { - $37 = HEAP32[$0>>2]|0; - $38 = (($37) + 64|0); - $39 = HEAP32[$38>>2]|0; - (_sqlite3OsClose($39)|0); - } - $40 = HEAP32[$0>>2]|0; - $41 = (_pagerUnlockDb($40,0)|0); - HEAP32[$rc>>2] = $41; - $42 = HEAP32[$rc>>2]|0; - $43 = ($42|0)!=(0); - if ($43) { - $44 = HEAP32[$0>>2]|0; - $45 = (($44) + 16|0); - $46 = HEAP8[$45>>0]|0; - $47 = $46&255; - $48 = ($47|0)==(6); - if ($48) { - $49 = HEAP32[$0>>2]|0; - $50 = (($49) + 17|0); - HEAP8[$50>>0] = 5; - } - } - $51 = HEAP32[$0>>2]|0; - $52 = (($51) + 18|0); - HEAP8[$52>>0] = 0; - $53 = HEAP32[$0>>2]|0; - $54 = (($53) + 16|0); - HEAP8[$54>>0] = 0; - } - } - $55 = HEAP32[$0>>2]|0; - $56 = (($55) + 40|0); - $57 = HEAP32[$56>>2]|0; - $58 = ($57|0)!=(0); - if (!($58)) { - $69 = HEAP32[$0>>2]|0; - $70 = (($69) + 72|0); - $71 = $70; - $72 = $71; - HEAP32[$72>>2] = 0; - $73 = (($71) + 4)|0; - $74 = $73; - HEAP32[$74>>2] = 0; - $75 = HEAP32[$0>>2]|0; - $76 = (($75) + 80|0); - $77 = $76; - $78 = $77; - HEAP32[$78>>2] = 0; - $79 = (($77) + 4)|0; - $80 = $79; - HEAP32[$80>>2] = 0; - $81 = HEAP32[$0>>2]|0; - $82 = (($81) + 19|0); - HEAP8[$82>>0] = 0; - STACKTOP = sp;return; - } - $59 = HEAP32[$0>>2]|0; - _pager_reset($59); - $60 = HEAP32[$0>>2]|0; - $61 = (($60) + 12|0); - $62 = HEAP8[$61>>0]|0; - $63 = HEAP32[$0>>2]|0; - $64 = (($63) + 18|0); - HEAP8[$64>>0] = $62; - $65 = HEAP32[$0>>2]|0; - $66 = (($65) + 16|0); - HEAP8[$66>>0] = 0; - $67 = HEAP32[$0>>2]|0; - $68 = (($67) + 40|0); - HEAP32[$68>>2] = 0; - $69 = HEAP32[$0>>2]|0; - $70 = (($69) + 72|0); - $71 = $70; - $72 = $71; - HEAP32[$72>>2] = 0; - $73 = (($71) + 4)|0; - $74 = $73; - HEAP32[$74>>2] = 0; - $75 = HEAP32[$0>>2]|0; - $76 = (($75) + 80|0); - $77 = $76; - $78 = $77; - HEAP32[$78>>2] = 0; - $79 = (($77) + 4)|0; - $80 = $79; - HEAP32[$80>>2] = 0; - $81 = HEAP32[$0>>2]|0; - $82 = (($81) + 19|0); - HEAP8[$82>>0] = 0; - STACKTOP = sp;return; -} -function _pager_error($pPager,$rc) { - $pPager = $pPager|0; - $rc = $rc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $rc2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $rc2 = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $rc; - $2 = HEAP32[$1>>2]|0; - $3 = $2 & 255; - HEAP32[$rc2>>2] = $3; - $4 = HEAP32[$rc2>>2]|0; - $5 = ($4|0)==(13); - $6 = HEAP32[$rc2>>2]|0; - $7 = ($6|0)==(10); - $or$cond = $5 | $7; - if (!($or$cond)) { - $13 = HEAP32[$1>>2]|0; - STACKTOP = sp;return ($13|0); - } - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 40|0); - HEAP32[$10>>2] = $8; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 16|0); - HEAP8[$12>>0] = 6; - $13 = HEAP32[$1>>2]|0; - STACKTOP = sp;return ($13|0); -} -function _pagerSyncHotJournal($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$rc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 7|0); - $3 = HEAP8[$2>>0]|0; - $4 = ($3<<24>>24)!=(0); - if (!($4)) { - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 64|0); - $7 = HEAP32[$6>>2]|0; - $8 = (_sqlite3OsSync($7,2)|0); - HEAP32[$rc>>2] = $8; - } - $9 = HEAP32[$rc>>2]|0; - $10 = ($9|0)==(0); - if (!($10)) { - $17 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($17|0); - } - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 64|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 80|0); - $16 = (_sqlite3OsFileSize($13,$15)|0); - HEAP32[$rc>>2] = $16; - $17 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($17|0); -} -function _pagerUnlockAndRollback($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 16|0); - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - $5 = ($4|0)!=(6); - do { - if ($5) { - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 16|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - $10 = ($9|0)!=(0); - if ($10) { - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 16|0); - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - $15 = ($14|0)>=(2); - if ($15) { - _sqlite3BeginBenignMalloc(); - $16 = HEAP32[$0>>2]|0; - (_sqlite3PagerRollback($16)|0); - _sqlite3EndBenignMalloc(); - break; - } - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP8[$18>>0]|0; - $20 = ($19<<24>>24)!=(0); - if (!($20)) { - $21 = HEAP32[$0>>2]|0; - (_pager_end_transaction($21,0,0)|0); - } - } - } - } while(0); - $22 = HEAP32[$0>>2]|0; - _pager_unlock($22); - STACKTOP = sp;return; -} -function _sqlite3OsClose($pId) { - $pId = $pId|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pId; - HEAP32[$rc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - $11 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($11|0); - } - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = (($5) + 4|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (FUNCTION_TABLE_ii[$7 & 31]($8)|0); - HEAP32[$rc>>2] = $9; - $10 = HEAP32[$0>>2]|0; - HEAP32[$10>>2] = 0; - $11 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($11|0); -} -function _sqlite3PcacheClose($pCache) { - $pCache = $pCache|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pCache; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 40|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[((38512 + 148|0))>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 40|0); - $8 = HEAP32[$7>>2]|0; - FUNCTION_TABLE_vi[$5 & 31]($8); - STACKTOP = sp;return; -} -function _sqlite3PagerRollback($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $eState = 0, $rc = 0, $rc2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $rc = sp + 8|0; - $rc2 = sp + 4|0; - $eState = sp; - HEAP32[$1>>2] = $pPager; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 16|0); - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - $6 = ($5|0)==(6); - $7 = HEAP32[$1>>2]|0; - if ($6) { - $8 = (($7) + 40|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$0>>2] = $9; - $59 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($59|0); - } - $10 = (($7) + 16|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = ($12|0)<=(1); - if ($13) { - HEAP32[$0>>2] = 0; - $59 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($59|0); - } - $14 = HEAP32[$1>>2]|0; - $15 = (_pagerUseWal($14)|0); - $16 = ($15|0)!=(0); - $17 = HEAP32[$1>>2]|0; - do { - if ($16) { - $18 = (_sqlite3PagerSavepoint($17,2,-1)|0); - HEAP32[$rc>>2] = $18; - $19 = HEAP32[$1>>2]|0; - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 19|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = (_pager_end_transaction($19,$23,0)|0); - HEAP32[$rc2>>2] = $24; - $25 = HEAP32[$rc>>2]|0; - $26 = ($25|0)==(0); - if ($26) { - $27 = HEAP32[$rc2>>2]|0; - HEAP32[$rc>>2] = $27; - } - } else { - $28 = (($17) + 64|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$29>>2]|0; - $31 = ($30|0)!=(0|0); - if ($31) { - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 16|0); - $34 = HEAP8[$33>>0]|0; - $35 = $34&255; - $36 = ($35|0)==(2); - if (!($36)) { - $54 = HEAP32[$1>>2]|0; - $55 = (_pager_playback($54,0)|0); - HEAP32[$rc>>2] = $55; - break; - } - } - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 16|0); - $39 = HEAP8[$38>>0]|0; - $40 = $39&255; - HEAP32[$eState>>2] = $40; - $41 = HEAP32[$1>>2]|0; - $42 = (_pager_end_transaction($41,0,0)|0); - HEAP32[$rc>>2] = $42; - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + 15|0); - $45 = HEAP8[$44>>0]|0; - $46 = ($45<<24>>24)!=(0); - if (!($46)) { - $47 = HEAP32[$eState>>2]|0; - $48 = ($47|0)>(2); - if ($48) { - $49 = HEAP32[$1>>2]|0; - $50 = (($49) + 40|0); - HEAP32[$50>>2] = 4; - $51 = HEAP32[$1>>2]|0; - $52 = (($51) + 16|0); - HEAP8[$52>>0] = 6; - $53 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $53; - $59 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($59|0); - } - } - } - } while(0); - $56 = HEAP32[$1>>2]|0; - $57 = HEAP32[$rc>>2]|0; - $58 = (_pager_error($56,$57)|0); - HEAP32[$0>>2] = $58; - $59 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($59|0); -} -function _pager_end_transaction($pPager,$hasMaster,$bCommit) { - $pPager = $pPager|0; - $hasMaster = $hasMaster|0; - $bCommit = $bCommit|0; - var $$ = 0, $$1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; - var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; - var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; - var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; - var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; - var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; - var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; - var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; - var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bDelete = 0, $rc = 0, $rc2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $rc = sp + 8|0; - $rc2 = sp + 4|0; - $bDelete = sp; - HEAP32[$1>>2] = $pPager; - HEAP32[$2>>2] = $hasMaster; - HEAP32[$3>>2] = $bCommit; - HEAP32[$rc>>2] = 0; - HEAP32[$rc2>>2] = 0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 16|0); - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - $8 = ($7|0)<(2); - if ($8) { - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 17|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = ($12|0)<(2); - if ($13) { - HEAP32[$0>>2] = 0; - $171 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($171|0); - } - } - $14 = HEAP32[$1>>2]|0; - _releaseAllSavepoints($14); - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 64|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = ($18|0)!=(0|0); - L6: do { - if ($19) { - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 64|0); - $22 = HEAP32[$21>>2]|0; - $23 = (_sqlite3IsMemJournal($22)|0); - $24 = ($23|0)!=(0); - $25 = HEAP32[$1>>2]|0; - if ($24) { - $26 = (($25) + 64|0); - $27 = HEAP32[$26>>2]|0; - (_sqlite3OsClose($27)|0); - break; - } - $28 = (($25) + 5|0); - $29 = HEAP8[$28>>0]|0; - $30 = $29&255; - $31 = ($30|0)==(3); - $32 = HEAP32[$1>>2]|0; - if ($31) { - $33 = (($32) + 72|0); - $34 = $33; - $35 = $34; - $36 = HEAP32[$35>>2]|0; - $37 = (($34) + 4)|0; - $38 = $37; - $39 = HEAP32[$38>>2]|0; - $40 = ($36|0)==(0); - $41 = ($39|0)==(0); - $42 = $40 & $41; - if ($42) { - HEAP32[$rc>>2] = 0; - } else { - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + 64|0); - $45 = HEAP32[$44>>2]|0; - $46 = (_sqlite3OsTruncate($45,0,0)|0); - HEAP32[$rc>>2] = $46; - } - $47 = HEAP32[$1>>2]|0; - $48 = (($47) + 72|0); - $49 = $48; - $50 = $49; - HEAP32[$50>>2] = 0; - $51 = (($49) + 4)|0; - $52 = $51; - HEAP32[$52>>2] = 0; - break; - } - $53 = (($32) + 5|0); - $54 = HEAP8[$53>>0]|0; - $55 = $54&255; - $56 = ($55|0)==(1); - do { - if (!($56)) { - $57 = HEAP32[$1>>2]|0; - $58 = (($57) + 4|0); - $59 = HEAP8[$58>>0]|0; - $60 = $59&255; - $61 = ($60|0)!=(0); - if ($61) { - $62 = HEAP32[$1>>2]|0; - $63 = (($62) + 5|0); - $64 = HEAP8[$63>>0]|0; - $65 = $64&255; - $66 = ($65|0)!=(5); - if ($66) { - break; - } - } - $76 = HEAP32[$1>>2]|0; - $77 = (($76) + 12|0); - $78 = HEAP8[$77>>0]|0; - $79 = ($78<<24>>24)!=(0); - $$ = $79 ? 0 : 1; - $80 = $$&1; - HEAP32[$bDelete>>2] = $80; - $81 = HEAP32[$1>>2]|0; - $82 = (($81) + 64|0); - $83 = HEAP32[$82>>2]|0; - (_sqlite3OsClose($83)|0); - $84 = HEAP32[$bDelete>>2]|0; - $85 = ($84|0)!=(0); - if (!($85)) { - break L6; - } - $86 = HEAP32[$1>>2]|0; - $87 = HEAP32[$86>>2]|0; - $88 = HEAP32[$1>>2]|0; - $89 = (($88) + 172|0); - $90 = HEAP32[$89>>2]|0; - $91 = (_sqlite3OsDelete($87,$90,0)|0); - HEAP32[$rc>>2] = $91; - break L6; - } - } while(0); - $67 = HEAP32[$1>>2]|0; - $68 = HEAP32[$2>>2]|0; - $69 = (_zeroJournalHdr($67,$68)|0); - HEAP32[$rc>>2] = $69; - $70 = HEAP32[$1>>2]|0; - $71 = (($70) + 72|0); - $72 = $71; - $73 = $72; - HEAP32[$73>>2] = 0; - $74 = (($72) + 4)|0; - $75 = $74; - HEAP32[$75>>2] = 0; - } - } while(0); - $92 = HEAP32[$1>>2]|0; - $93 = (($92) + 56|0); - $94 = HEAP32[$93>>2]|0; - _sqlite3BitvecDestroy($94); - $95 = HEAP32[$1>>2]|0; - $96 = (($95) + 56|0); - HEAP32[$96>>2] = 0; - $97 = HEAP32[$1>>2]|0; - $98 = (($97) + 44|0); - HEAP32[$98>>2] = 0; - $99 = HEAP32[$1>>2]|0; - $100 = (($99) + 204|0); - $101 = HEAP32[$100>>2]|0; - _sqlite3PcacheCleanAll($101); - $102 = HEAP32[$1>>2]|0; - $103 = (($102) + 204|0); - $104 = HEAP32[$103>>2]|0; - $105 = HEAP32[$1>>2]|0; - $106 = (($105) + 24|0); - $107 = HEAP32[$106>>2]|0; - _sqlite3PcacheTruncate($104,$107); - $108 = HEAP32[$1>>2]|0; - $109 = (_pagerUseWal($108)|0); - $110 = ($109|0)!=(0); - if ($110) { - $111 = HEAP32[$1>>2]|0; - $112 = (($111) + 208|0); - $113 = HEAP32[$112>>2]|0; - $114 = (_sqlite3WalEndWriteTransaction($113)|0); - HEAP32[$rc2>>2] = $114; - } else { - $115 = HEAP32[$rc>>2]|0; - $116 = ($115|0)==(0); - if ($116) { - $117 = HEAP32[$3>>2]|0; - $118 = ($117|0)!=(0); - if ($118) { - $119 = HEAP32[$1>>2]|0; - $120 = (($119) + 32|0); - $121 = HEAP32[$120>>2]|0; - $122 = HEAP32[$1>>2]|0; - $123 = (($122) + 24|0); - $124 = HEAP32[$123>>2]|0; - $125 = ($121>>>0)>($124>>>0); - if ($125) { - $126 = HEAP32[$1>>2]|0; - $127 = HEAP32[$1>>2]|0; - $128 = (($127) + 24|0); - $129 = HEAP32[$128>>2]|0; - $130 = (_pager_truncate($126,$129)|0); - HEAP32[$rc>>2] = $130; - } - } - } - } - $131 = HEAP32[$rc>>2]|0; - $132 = ($131|0)==(0); - if ($132) { - $133 = HEAP32[$3>>2]|0; - $134 = ($133|0)!=(0); - if ($134) { - $135 = HEAP32[$1>>2]|0; - $136 = (($135) + 60|0); - $137 = HEAP32[$136>>2]|0; - $138 = HEAP32[$137>>2]|0; - $139 = ($138|0)!=(0|0); - if ($139) { - $140 = HEAP32[$1>>2]|0; - $141 = (($140) + 60|0); - $142 = HEAP32[$141>>2]|0; - $143 = (_sqlite3OsFileControl($142,22,0)|0); - HEAP32[$rc>>2] = $143; - $144 = HEAP32[$rc>>2]|0; - $145 = ($144|0)==(12); - $$1 = $145 ? 0 : $143; - HEAP32[$rc>>2] = $$1; - } - } - } - $146 = HEAP32[$1>>2]|0; - $147 = (($146) + 4|0); - $148 = HEAP8[$147>>0]|0; - $149 = ($148<<24>>24)!=(0); - do { - if (!($149)) { - $150 = HEAP32[$1>>2]|0; - $151 = (_pagerUseWal($150)|0); - $152 = ($151|0)!=(0); - if ($152) { - $153 = HEAP32[$1>>2]|0; - $154 = (($153) + 208|0); - $155 = HEAP32[$154>>2]|0; - $156 = (_sqlite3WalExclusiveMode($155,0)|0); - $157 = ($156|0)!=(0); - if (!($157)) { - break; - } - } - $158 = HEAP32[$1>>2]|0; - $159 = (_pagerUnlockDb($158,1)|0); - HEAP32[$rc2>>2] = $159; - $160 = HEAP32[$1>>2]|0; - $161 = (($160) + 18|0); - HEAP8[$161>>0] = 0; - } - } while(0); - $162 = HEAP32[$1>>2]|0; - $163 = (($162) + 16|0); - HEAP8[$163>>0] = 1; - $164 = HEAP32[$1>>2]|0; - $165 = (($164) + 19|0); - HEAP8[$165>>0] = 0; - $166 = HEAP32[$rc>>2]|0; - $167 = ($166|0)==(0); - $168 = HEAP32[$rc2>>2]|0; - $169 = HEAP32[$rc>>2]|0; - $170 = $167 ? $168 : $169; - HEAP32[$0>>2] = $170; - $171 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($171|0); -} -function _releaseAllSavepoints($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ii = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $ii = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$ii>>2] = 0; - while(1) { - $1 = HEAP32[$ii>>2]|0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 96|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($1|0)<($4|0); - if (!($5)) { - break; - } - $6 = HEAP32[$ii>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 92|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + (($6*48)|0)|0); - $11 = (($10) + 16|0); - $12 = HEAP32[$11>>2]|0; - _sqlite3BitvecDestroy($12); - $13 = HEAP32[$ii>>2]|0; - $14 = (($13) + 1)|0; - HEAP32[$ii>>2] = $14; - } - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP8[$16>>0]|0; - $18 = ($17<<24>>24)!=(0); - if ($18) { - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 68|0); - $21 = HEAP32[$20>>2]|0; - $22 = (_sqlite3IsMemJournal($21)|0); - $23 = ($22|0)!=(0); - if ($23) { - label = 6; - } - } else { - label = 6; - } - if ((label|0) == 6) { - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 68|0); - $26 = HEAP32[$25>>2]|0; - (_sqlite3OsClose($26)|0); - } - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 92|0); - $29 = HEAP32[$28>>2]|0; - _sqlite3_free($29); - $30 = HEAP32[$0>>2]|0; - $31 = (($30) + 92|0); - HEAP32[$31>>2] = 0; - $32 = HEAP32[$0>>2]|0; - $33 = (($32) + 96|0); - HEAP32[$33>>2] = 0; - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 52|0); - HEAP32[$35>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3IsMemJournal($pJfd) { - $pJfd = $pJfd|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pJfd; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(4224|0); - $4 = $3&1; - STACKTOP = sp;return ($4|0); -} -function _sqlite3OsTruncate($id,$0,$1) { - $id = $id|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $2 = sp + 8|0; - $3 = sp; - HEAP32[$2>>2] = $id; - $4 = $3; - $5 = $4; - HEAP32[$5>>2] = $0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = $1; - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + 16|0); - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$2>>2]|0; - $13 = $3; - $14 = $13; - $15 = HEAP32[$14>>2]|0; - $16 = (($13) + 4)|0; - $17 = $16; - $18 = HEAP32[$17>>2]|0; - $19 = (FUNCTION_TABLE_iiii[$11 & 15]($12,$15,$18)|0); - STACKTOP = sp;return ($19|0); -} -function _zeroJournalHdr($pPager,$doTruncate) { - $pPager = $pPager|0; - $doTruncate = $doTruncate|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; - var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; - var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iLimit = 0, $rc = 0, $sz = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $rc = sp + 16|0; - $iLimit = sp + 8|0; - $sz = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $doTruncate; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 72|0); - $4 = $3; - $5 = $4; - $6 = HEAP32[$5>>2]|0; - $7 = (($4) + 4)|0; - $8 = $7; - $9 = HEAP32[$8>>2]|0; - $10 = ($6|0)!=(0); - $11 = ($9|0)!=(0); - $12 = $10 | $11; - if (!($12)) { - $105 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($105|0); - } - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 160|0); - $15 = $14; - $16 = $15; - $17 = HEAP32[$16>>2]|0; - $18 = (($15) + 4)|0; - $19 = $18; - $20 = HEAP32[$19>>2]|0; - $21 = $iLimit; - $22 = $21; - HEAP32[$22>>2] = $17; - $23 = (($21) + 4)|0; - $24 = $23; - HEAP32[$24>>2] = $20; - $25 = HEAP32[$1>>2]|0; - $26 = ($25|0)!=(0); - if ($26) { - label = 4; - } else { - $27 = $iLimit; - $28 = $27; - $29 = HEAP32[$28>>2]|0; - $30 = (($27) + 4)|0; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $33 = ($29|0)==(0); - $34 = ($32|0)==(0); - $35 = $33 & $34; - if ($35) { - label = 4; - } else { - $40 = HEAP32[$0>>2]|0; - $41 = (($40) + 64|0); - $42 = HEAP32[$41>>2]|0; - $43 = (_sqlite3OsWrite($42,4192,28,0,0)|0); - HEAP32[$rc>>2] = $43; - } - } - if ((label|0) == 4) { - $36 = HEAP32[$0>>2]|0; - $37 = (($36) + 64|0); - $38 = HEAP32[$37>>2]|0; - $39 = (_sqlite3OsTruncate($38,0,0)|0); - HEAP32[$rc>>2] = $39; - } - $44 = HEAP32[$rc>>2]|0; - $45 = ($44|0)==(0); - if ($45) { - $46 = HEAP32[$0>>2]|0; - $47 = (($46) + 7|0); - $48 = HEAP8[$47>>0]|0; - $49 = ($48<<24>>24)!=(0); - if (!($49)) { - $50 = HEAP32[$0>>2]|0; - $51 = (($50) + 64|0); - $52 = HEAP32[$51>>2]|0; - $53 = HEAP32[$0>>2]|0; - $54 = (($53) + 11|0); - $55 = HEAP8[$54>>0]|0; - $56 = $55&255; - $57 = 16 | $56; - $58 = (_sqlite3OsSync($52,$57)|0); - HEAP32[$rc>>2] = $58; - } - } - $59 = HEAP32[$rc>>2]|0; - $60 = ($59|0)==(0); - if (!($60)) { - $105 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($105|0); - } - $61 = $iLimit; - $62 = $61; - $63 = HEAP32[$62>>2]|0; - $64 = (($61) + 4)|0; - $65 = $64; - $66 = HEAP32[$65>>2]|0; - $67 = ($66|0)>(0); - $68 = ($66|0)==(0); - $69 = ($63>>>0)>(0); - $70 = $68 & $69; - $71 = $67 | $70; - if (!($71)) { - $105 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($105|0); - } - $72 = HEAP32[$0>>2]|0; - $73 = (($72) + 64|0); - $74 = HEAP32[$73>>2]|0; - $75 = (_sqlite3OsFileSize($74,$sz)|0); - HEAP32[$rc>>2] = $75; - $76 = HEAP32[$rc>>2]|0; - $77 = ($76|0)==(0); - if (!($77)) { - $105 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($105|0); - } - $78 = $sz; - $79 = $78; - $80 = HEAP32[$79>>2]|0; - $81 = (($78) + 4)|0; - $82 = $81; - $83 = HEAP32[$82>>2]|0; - $84 = $iLimit; - $85 = $84; - $86 = HEAP32[$85>>2]|0; - $87 = (($84) + 4)|0; - $88 = $87; - $89 = HEAP32[$88>>2]|0; - $90 = ($83|0)>($89|0); - $91 = ($83|0)==($89|0); - $92 = ($80>>>0)>($86>>>0); - $93 = $91 & $92; - $94 = $90 | $93; - if (!($94)) { - $105 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($105|0); - } - $95 = HEAP32[$0>>2]|0; - $96 = (($95) + 64|0); - $97 = HEAP32[$96>>2]|0; - $98 = $iLimit; - $99 = $98; - $100 = HEAP32[$99>>2]|0; - $101 = (($98) + 4)|0; - $102 = $101; - $103 = HEAP32[$102>>2]|0; - $104 = (_sqlite3OsTruncate($97,$100,$103)|0); - HEAP32[$rc>>2] = $104; - $105 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($105|0); -} -function _sqlite3OsDelete($pVfs,$zPath,$dirSync) { - $pVfs = $pVfs|0; - $zPath = $zPath|0; - $dirSync = $dirSync|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $pVfs; - HEAP32[$1>>2] = $zPath; - HEAP32[$2>>2] = $dirSync; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 28|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = (FUNCTION_TABLE_iiii[$5 & 15]($6,$7,$8)|0); - STACKTOP = sp;return ($9|0); -} -function _sqlite3PcacheCleanAll($pCache) { - $pCache = $pCache|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pCache; - while(1) { - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$p>>2] = $2; - $3 = ($2|0)!=(0|0); - if (!($3)) { - break; - } - $4 = HEAP32[$p>>2]|0; - _sqlite3PcacheMakeClean($4); - } - STACKTOP = sp;return; -} -function _pagerUseWal($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 208|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - $5 = $4&1; - STACKTOP = sp;return ($5|0); -} -function _sqlite3WalEndWriteTransaction($pWal) { - $pWal = $pWal|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pWal; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 44|0); - $3 = HEAP8[$2>>0]|0; - $4 = ($3<<24>>24)!=(0); - if (!($4)) { - STACKTOP = sp;return 0; - } - $5 = HEAP32[$0>>2]|0; - _walUnlockExclusive($5,0,1); - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 44|0); - HEAP8[$7>>0] = 0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 47|0); - HEAP8[$9>>0] = 0; - STACKTOP = sp;return 0; -} -function _pager_truncate($pPager,$nPage) { - $pPager = $pPager|0; - $nPage = $nPage|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; - var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; - var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; - var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; - var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; - var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $currentSize = 0, $newSize = 0, $pTmp = 0, $rc = 0, $szPage = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $rc = sp + 24|0; - $currentSize = sp + 8|0; - $newSize = sp; - $szPage = sp + 20|0; - $pTmp = sp + 16|0; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $nPage; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 60|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - $127 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($127|0); - } - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 16|0); - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - $11 = ($10|0)>=(4); - if (!($11)) { - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 16|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14&255; - $16 = ($15|0)==(0); - if (!($16)) { - $127 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($127|0); - } - } - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 152|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$szPage>>2] = $19; - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 60|0); - $22 = HEAP32[$21>>2]|0; - $23 = (_sqlite3OsFileSize($22,$currentSize)|0); - HEAP32[$rc>>2] = $23; - $24 = HEAP32[$szPage>>2]|0; - $25 = ($24|0)<(0); - $26 = $25 << 31 >> 31; - $27 = HEAP32[$1>>2]|0; - $28 = (___muldi3(($24|0),($26|0),($27|0),0)|0); - $29 = tempRet0; - $30 = $newSize; - $31 = $30; - HEAP32[$31>>2] = $28; - $32 = (($30) + 4)|0; - $33 = $32; - HEAP32[$33>>2] = $29; - $34 = HEAP32[$rc>>2]|0; - $35 = ($34|0)==(0); - if (!($35)) { - $127 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($127|0); - } - $36 = $currentSize; - $37 = $36; - $38 = HEAP32[$37>>2]|0; - $39 = (($36) + 4)|0; - $40 = $39; - $41 = HEAP32[$40>>2]|0; - $42 = $newSize; - $43 = $42; - $44 = HEAP32[$43>>2]|0; - $45 = (($42) + 4)|0; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = ($38|0)!=($44|0); - $49 = ($41|0)!=($47|0); - $50 = $48 | $49; - if (!($50)) { - $127 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($127|0); - } - $51 = $currentSize; - $52 = $51; - $53 = HEAP32[$52>>2]|0; - $54 = (($51) + 4)|0; - $55 = $54; - $56 = HEAP32[$55>>2]|0; - $57 = $newSize; - $58 = $57; - $59 = HEAP32[$58>>2]|0; - $60 = (($57) + 4)|0; - $61 = $60; - $62 = HEAP32[$61>>2]|0; - $63 = ($56|0)>($62|0); - $64 = ($56|0)==($62|0); - $65 = ($53>>>0)>($59>>>0); - $66 = $64 & $65; - $67 = $63 | $66; - if ($67) { - $68 = HEAP32[$0>>2]|0; - $69 = (($68) + 60|0); - $70 = HEAP32[$69>>2]|0; - $71 = $newSize; - $72 = $71; - $73 = HEAP32[$72>>2]|0; - $74 = (($71) + 4)|0; - $75 = $74; - $76 = HEAP32[$75>>2]|0; - $77 = (_sqlite3OsTruncate($70,$73,$76)|0); - HEAP32[$rc>>2] = $77; - } else { - $78 = $currentSize; - $79 = $78; - $80 = HEAP32[$79>>2]|0; - $81 = (($78) + 4)|0; - $82 = $81; - $83 = HEAP32[$82>>2]|0; - $84 = HEAP32[$szPage>>2]|0; - $85 = ($84|0)<(0); - $86 = $85 << 31 >> 31; - $87 = (_i64Add(($80|0),($83|0),($84|0),($86|0))|0); - $88 = tempRet0; - $89 = $newSize; - $90 = $89; - $91 = HEAP32[$90>>2]|0; - $92 = (($89) + 4)|0; - $93 = $92; - $94 = HEAP32[$93>>2]|0; - $95 = ($88|0)<($94|0); - $96 = ($88|0)==($94|0); - $97 = ($87>>>0)<=($91>>>0); - $98 = $96 & $97; - $99 = $95 | $98; - if ($99) { - $100 = HEAP32[$0>>2]|0; - $101 = (($100) + 200|0); - $102 = HEAP32[$101>>2]|0; - HEAP32[$pTmp>>2] = $102; - $103 = HEAP32[$pTmp>>2]|0; - $104 = HEAP32[$szPage>>2]|0; - _memset(($103|0),0,($104|0))|0; - $105 = HEAP32[$0>>2]|0; - $106 = (($105) + 60|0); - $107 = HEAP32[$106>>2]|0; - $108 = HEAP32[$pTmp>>2]|0; - $109 = HEAP32[$szPage>>2]|0; - $110 = $newSize; - $111 = $110; - $112 = HEAP32[$111>>2]|0; - $113 = (($110) + 4)|0; - $114 = $113; - $115 = HEAP32[$114>>2]|0; - $116 = HEAP32[$szPage>>2]|0; - $117 = ($116|0)<(0); - $118 = $117 << 31 >> 31; - $119 = (_i64Subtract(($112|0),($115|0),($116|0),($118|0))|0); - $120 = tempRet0; - $121 = (_sqlite3OsWrite($107,$108,$109,$119,$120)|0); - HEAP32[$rc>>2] = $121; - } - } - $122 = HEAP32[$rc>>2]|0; - $123 = ($122|0)==(0); - if (!($123)) { - $127 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($127|0); - } - $124 = HEAP32[$1>>2]|0; - $125 = HEAP32[$0>>2]|0; - $126 = (($125) + 32|0); - HEAP32[$126>>2] = $124; - $127 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($127|0); -} -function _sqlite3WalExclusiveMode($pWal,$op) { - $pWal = $pWal|0; - $op = $op|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pWal; - HEAP32[$1>>2] = $op; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0); - if (!($3)) { - $26 = HEAP32[$1>>2]|0; - $27 = ($26|0)>(0); - $28 = HEAP32[$0>>2]|0; - if ($27) { - $29 = HEAP32[$0>>2]|0; - $30 = (($29) + 40|0); - $31 = HEAP16[$30>>1]|0; - $32 = $31 << 16 >> 16; - $33 = (3 + ($32))|0; - _walUnlockShared($28,$33); - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 43|0); - HEAP8[$35>>0] = 1; - HEAP32[$rc>>2] = 1; - $41 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($41|0); - } else { - $36 = (($28) + 43|0); - $37 = HEAP8[$36>>0]|0; - $38 = $37&255; - $39 = ($38|0)==(0); - $40 = $39&1; - HEAP32[$rc>>2] = $40; - $41 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($41|0); - } - } - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 43|0); - $6 = HEAP8[$5>>0]|0; - $7 = ($6<<24>>24)!=(0); - if (!($7)) { - HEAP32[$rc>>2] = 0; - $41 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($41|0); - } - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 43|0); - HEAP8[$9>>0] = 0; - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 40|0); - $13 = HEAP16[$12>>1]|0; - $14 = $13 << 16 >> 16; - $15 = (3 + ($14))|0; - $16 = (_walLockShared($10,$15)|0); - $17 = ($16|0)!=(0); - if ($17) { - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 43|0); - HEAP8[$19>>0] = 1; - } - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 43|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = ($23|0)==(0); - $25 = $24&1; - HEAP32[$rc>>2] = $25; - $41 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($41|0); -} -function _pagerUnlockDb($pPager,$eLock) { - $pPager = $pPager|0; - $eLock = $eLock|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $eLock; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 60|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - $27 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($27|0); - } - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 13|0); - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - $11 = ($10|0)!=(0); - if ($11) { - $17 = 0; - } else { - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 60|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = (_sqlite3OsUnlock($14,$15)|0); - $17 = $16; - } - HEAP32[$rc>>2] = $17; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 17|0); - $20 = HEAP8[$19>>0]|0; - $21 = $20&255; - $22 = ($21|0)!=(5); - if (!($22)) { - $27 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($27|0); - } - $23 = HEAP32[$1>>2]|0; - $24 = $23&255; - $25 = HEAP32[$0>>2]|0; - $26 = (($25) + 17|0); - HEAP8[$26>>0] = $24; - $27 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($27|0); -} -function _sqlite3OsUnlock($id,$lockType) { - $id = $id|0; - $lockType = $lockType|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $id; - HEAP32[$1>>2] = $lockType; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 32|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (FUNCTION_TABLE_iii[$5 & 63]($6,$7)|0); - STACKTOP = sp;return ($8|0); -} -function _walLockShared($pWal,$lockIdx) { - $pWal = $pWal|0; - $lockIdx = $lockIdx|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pWal; - HEAP32[$2>>2] = $lockIdx; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 43|0); - $5 = HEAP8[$4>>0]|0; - $6 = ($5<<24>>24)!=(0); - if ($6) { - HEAP32[$0>>2] = 0; - $13 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($13|0); - } else { - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$2>>2]|0; - $11 = (_sqlite3OsShmLock($9,$10,1,6)|0); - HEAP32[$rc>>2] = $11; - $12 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $12; - $13 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($13|0); - } - return 0|0; -} -function _walUnlockShared($pWal,$lockIdx) { - $pWal = $pWal|0; - $lockIdx = $lockIdx|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pWal; - HEAP32[$1>>2] = $lockIdx; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 43|0); - $4 = HEAP8[$3>>0]|0; - $5 = ($4<<24>>24)!=(0); - if ($5) { - STACKTOP = sp;return; - } - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$1>>2]|0; - (_sqlite3OsShmLock($8,$9,1,5)|0); - STACKTOP = sp;return; -} -function _sqlite3OsShmLock($id,$offset,$n,$flags) { - $id = $id|0; - $offset = $offset|0; - $n = $n|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$0>>2] = $id; - HEAP32[$1>>2] = $offset; - HEAP32[$2>>2] = $n; - HEAP32[$3>>2] = $flags; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = (($5) + 56|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$3>>2]|0; - $12 = (FUNCTION_TABLE_iiiii[$7 & 15]($8,$9,$10,$11)|0); - STACKTOP = sp;return ($12|0); -} -function _walUnlockExclusive($pWal,$lockIdx,$n) { - $pWal = $pWal|0; - $lockIdx = $lockIdx|0; - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $pWal; - HEAP32[$1>>2] = $lockIdx; - HEAP32[$2>>2] = $n; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 43|0); - $5 = HEAP8[$4>>0]|0; - $6 = ($5<<24>>24)!=(0); - if ($6) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$2>>2]|0; - (_sqlite3OsShmLock($9,$10,$11,9)|0); - STACKTOP = sp;return; -} -function _sqlite3OsSync($id,$flags) { - $id = $id|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $id; - HEAP32[$1>>2] = $flags; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 20|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (FUNCTION_TABLE_iii[$5 & 63]($6,$7)|0); - STACKTOP = sp;return ($8|0); -} -function _memjrnlClose($pJfd) { - $pJfd = $pJfd|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pJfd; - $1 = HEAP32[$0>>2]|0; - (_memjrnlTruncate($1,0,0)|0); - STACKTOP = sp;return 0; -} -function _memjrnlRead($pJfd,$zBuf,$iAmt,$0,$1) { - $pJfd = $pJfd|0; - $zBuf = $zBuf|0; - $iAmt = $iAmt|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; - var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; - var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; - var $99 = 0, $iChunkOffset = 0, $iOff = 0, $iSpace = 0, $nCopy = 0, $nRead = 0, $or$cond = 0, $p = 0, $pChunk = 0, $zOut = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $2 = sp + 52|0; - $3 = sp + 48|0; - $4 = sp + 44|0; - $5 = sp + 8|0; - $p = sp + 40|0; - $zOut = sp + 36|0; - $nRead = sp + 32|0; - $iChunkOffset = sp + 28|0; - $pChunk = sp + 24|0; - $iOff = sp; - $iSpace = sp + 20|0; - $nCopy = sp + 16|0; - HEAP32[$2>>2] = $pJfd; - HEAP32[$3>>2] = $zBuf; - HEAP32[$4>>2] = $iAmt; - $6 = $5; - $7 = $6; - HEAP32[$7>>2] = $0; - $8 = (($6) + 4)|0; - $9 = $8; - HEAP32[$9>>2] = $1; - $10 = HEAP32[$2>>2]|0; - HEAP32[$p>>2] = $10; - $11 = HEAP32[$3>>2]|0; - HEAP32[$zOut>>2] = $11; - $12 = HEAP32[$4>>2]|0; - HEAP32[$nRead>>2] = $12; - $13 = HEAP32[$p>>2]|0; - $14 = (($13) + 24|0); - $15 = $14; - $16 = $15; - $17 = HEAP32[$16>>2]|0; - $18 = (($15) + 4)|0; - $19 = $18; - $20 = HEAP32[$19>>2]|0; - $21 = $5; - $22 = $21; - $23 = HEAP32[$22>>2]|0; - $24 = (($21) + 4)|0; - $25 = $24; - $26 = HEAP32[$25>>2]|0; - $27 = ($17|0)!=($23|0); - $28 = ($20|0)!=($26|0); - $29 = $27 | $28; - $30 = $5; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $33 = (($30) + 4)|0; - $34 = $33; - $35 = HEAP32[$34>>2]|0; - $36 = ($32|0)==(0); - $37 = ($35|0)==(0); - $38 = $36 & $37; - $or$cond = $29 | $38; - L1: do { - if ($or$cond) { - $39 = $iOff; - $40 = $39; - HEAP32[$40>>2] = 0; - $41 = (($39) + 4)|0; - $42 = $41; - HEAP32[$42>>2] = 0; - $43 = HEAP32[$p>>2]|0; - $44 = (($43) + 4|0); - $45 = HEAP32[$44>>2]|0; - HEAP32[$pChunk>>2] = $45; - while(1) { - $46 = HEAP32[$pChunk>>2]|0; - $47 = ($46|0)!=(0|0); - if (!($47)) { - break L1; - } - $48 = $iOff; - $49 = $48; - $50 = HEAP32[$49>>2]|0; - $51 = (($48) + 4)|0; - $52 = $51; - $53 = HEAP32[$52>>2]|0; - $54 = (_i64Add(($50|0),($53|0),1020,0)|0); - $55 = tempRet0; - $56 = $5; - $57 = $56; - $58 = HEAP32[$57>>2]|0; - $59 = (($56) + 4)|0; - $60 = $59; - $61 = HEAP32[$60>>2]|0; - $62 = ($55|0)<($61|0); - $63 = ($55|0)==($61|0); - $64 = ($54>>>0)<=($58>>>0); - $65 = $63 & $64; - $66 = $62 | $65; - if (!($66)) { - break L1; - } - $67 = $iOff; - $68 = $67; - $69 = HEAP32[$68>>2]|0; - $70 = (($67) + 4)|0; - $71 = $70; - $72 = HEAP32[$71>>2]|0; - $73 = (_i64Add(($69|0),($72|0),1020,0)|0); - $74 = tempRet0; - $75 = $iOff; - $76 = $75; - HEAP32[$76>>2] = $73; - $77 = (($75) + 4)|0; - $78 = $77; - HEAP32[$78>>2] = $74; - $79 = HEAP32[$pChunk>>2]|0; - $80 = HEAP32[$79>>2]|0; - HEAP32[$pChunk>>2] = $80; - } - } else { - $81 = HEAP32[$p>>2]|0; - $82 = (($81) + 24|0); - $83 = (($82) + 8|0); - $84 = HEAP32[$83>>2]|0; - HEAP32[$pChunk>>2] = $84; - } - } while(0); - $85 = $5; - $86 = $85; - $87 = HEAP32[$86>>2]|0; - $88 = (($85) + 4)|0; - $89 = $88; - $90 = HEAP32[$89>>2]|0; - $91 = (___remdi3(($87|0),($90|0),1020,0)|0); - $92 = tempRet0; - HEAP32[$iChunkOffset>>2] = $91; - while(1) { - $93 = HEAP32[$iChunkOffset>>2]|0; - $94 = (1020 - ($93))|0; - HEAP32[$iSpace>>2] = $94; - $95 = HEAP32[$nRead>>2]|0; - $96 = HEAP32[$iChunkOffset>>2]|0; - $97 = (1020 - ($96))|0; - $98 = ($95|0)<($97|0); - if ($98) { - $99 = HEAP32[$nRead>>2]|0; - $102 = $99; - } else { - $100 = HEAP32[$iChunkOffset>>2]|0; - $101 = (1020 - ($100))|0; - $102 = $101; - } - HEAP32[$nCopy>>2] = $102; - $103 = HEAP32[$zOut>>2]|0; - $104 = HEAP32[$iChunkOffset>>2]|0; - $105 = HEAP32[$pChunk>>2]|0; - $106 = (($105) + 4|0); - $107 = (($106) + ($104)|0); - $108 = HEAP32[$nCopy>>2]|0; - _memcpy(($103|0),($107|0),($108|0))|0; - $109 = HEAP32[$nCopy>>2]|0; - $110 = HEAP32[$zOut>>2]|0; - $111 = (($110) + ($109)|0); - HEAP32[$zOut>>2] = $111; - $112 = HEAP32[$iSpace>>2]|0; - $113 = HEAP32[$nRead>>2]|0; - $114 = (($113) - ($112))|0; - HEAP32[$nRead>>2] = $114; - HEAP32[$iChunkOffset>>2] = 0; - $115 = HEAP32[$nRead>>2]|0; - $116 = ($115|0)>=(0); - if (!($116)) { - break; - } - $117 = HEAP32[$pChunk>>2]|0; - $118 = HEAP32[$117>>2]|0; - HEAP32[$pChunk>>2] = $118; - $119 = ($118|0)!=(0|0); - if (!($119)) { - break; - } - $120 = HEAP32[$nRead>>2]|0; - $121 = ($120|0)>(0); - if (!($121)) { - break; - } - } - $122 = $5; - $123 = $122; - $124 = HEAP32[$123>>2]|0; - $125 = (($122) + 4)|0; - $126 = $125; - $127 = HEAP32[$126>>2]|0; - $128 = HEAP32[$4>>2]|0; - $129 = ($128|0)<(0); - $130 = $129 << 31 >> 31; - $131 = (_i64Add(($124|0),($127|0),($128|0),($130|0))|0); - $132 = tempRet0; - $133 = HEAP32[$p>>2]|0; - $134 = (($133) + 24|0); - $135 = $134; - $136 = $135; - HEAP32[$136>>2] = $131; - $137 = (($135) + 4)|0; - $138 = $137; - HEAP32[$138>>2] = $132; - $139 = HEAP32[$pChunk>>2]|0; - $140 = HEAP32[$p>>2]|0; - $141 = (($140) + 24|0); - $142 = (($141) + 8|0); - HEAP32[$142>>2] = $139; - STACKTOP = sp;return 0; -} -function _memjrnlWrite($pJfd,$zBuf,$iAmt,$0,$1) { - $pJfd = $pJfd|0; - $zBuf = $zBuf|0; - $iAmt = $iAmt|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; - var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $iChunkOffset = 0, $iSpace = 0, $nWrite = 0, $p = 0, $pChunk = 0, $pNew = 0, $zWrite = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $2 = sp + 48|0; - $3 = sp + 44|0; - $4 = sp + 40|0; - $5 = sp + 36|0; - $6 = sp; - $p = sp + 32|0; - $nWrite = sp + 28|0; - $zWrite = sp + 24|0; - $pChunk = sp + 20|0; - $iChunkOffset = sp + 16|0; - $iSpace = sp + 12|0; - $pNew = sp + 8|0; - HEAP32[$3>>2] = $pJfd; - HEAP32[$4>>2] = $zBuf; - HEAP32[$5>>2] = $iAmt; - $7 = $6; - $8 = $7; - HEAP32[$8>>2] = $0; - $9 = (($7) + 4)|0; - $10 = $9; - HEAP32[$10>>2] = $1; - $11 = HEAP32[$3>>2]|0; - HEAP32[$p>>2] = $11; - $12 = HEAP32[$5>>2]|0; - HEAP32[$nWrite>>2] = $12; - $13 = HEAP32[$4>>2]|0; - HEAP32[$zWrite>>2] = $13; - while(1) { - $14 = HEAP32[$nWrite>>2]|0; - $15 = ($14|0)>(0); - if (!($15)) { - label = 14; - break; - } - $16 = HEAP32[$p>>2]|0; - $17 = (($16) + 8|0); - $18 = (($17) + 8|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$pChunk>>2] = $19; - $20 = HEAP32[$p>>2]|0; - $21 = (($20) + 8|0); - $22 = $21; - $23 = $22; - $24 = HEAP32[$23>>2]|0; - $25 = (($22) + 4)|0; - $26 = $25; - $27 = HEAP32[$26>>2]|0; - $28 = (___remdi3(($24|0),($27|0),1020,0)|0); - $29 = tempRet0; - HEAP32[$iChunkOffset>>2] = $28; - $30 = HEAP32[$nWrite>>2]|0; - $31 = HEAP32[$iChunkOffset>>2]|0; - $32 = (1020 - ($31))|0; - $33 = ($30|0)<($32|0); - if ($33) { - $34 = HEAP32[$nWrite>>2]|0; - $37 = $34; - } else { - $35 = HEAP32[$iChunkOffset>>2]|0; - $36 = (1020 - ($35))|0; - $37 = $36; - } - HEAP32[$iSpace>>2] = $37; - $38 = HEAP32[$iChunkOffset>>2]|0; - $39 = ($38|0)==(0); - if ($39) { - $40 = (_sqlite3_malloc(1024)|0); - HEAP32[$pNew>>2] = $40; - $41 = HEAP32[$pNew>>2]|0; - $42 = ($41|0)!=(0|0); - if (!($42)) { - label = 8; - break; - } - $43 = HEAP32[$pNew>>2]|0; - HEAP32[$43>>2] = 0; - $44 = HEAP32[$pChunk>>2]|0; - $45 = ($44|0)!=(0|0); - $46 = HEAP32[$pNew>>2]|0; - if ($45) { - $47 = HEAP32[$pChunk>>2]|0; - HEAP32[$47>>2] = $46; - } else { - $48 = HEAP32[$p>>2]|0; - $49 = (($48) + 4|0); - HEAP32[$49>>2] = $46; - } - $50 = HEAP32[$pNew>>2]|0; - $51 = HEAP32[$p>>2]|0; - $52 = (($51) + 8|0); - $53 = (($52) + 8|0); - HEAP32[$53>>2] = $50; - } - $54 = HEAP32[$iChunkOffset>>2]|0; - $55 = HEAP32[$p>>2]|0; - $56 = (($55) + 8|0); - $57 = (($56) + 8|0); - $58 = HEAP32[$57>>2]|0; - $59 = (($58) + 4|0); - $60 = (($59) + ($54)|0); - $61 = HEAP32[$zWrite>>2]|0; - $62 = HEAP32[$iSpace>>2]|0; - _memcpy(($60|0),($61|0),($62|0))|0; - $63 = HEAP32[$iSpace>>2]|0; - $64 = HEAP32[$zWrite>>2]|0; - $65 = (($64) + ($63)|0); - HEAP32[$zWrite>>2] = $65; - $66 = HEAP32[$iSpace>>2]|0; - $67 = HEAP32[$nWrite>>2]|0; - $68 = (($67) - ($66))|0; - HEAP32[$nWrite>>2] = $68; - $69 = HEAP32[$iSpace>>2]|0; - $70 = ($69|0)<(0); - $71 = $70 << 31 >> 31; - $72 = HEAP32[$p>>2]|0; - $73 = (($72) + 8|0); - $74 = $73; - $75 = $74; - $76 = HEAP32[$75>>2]|0; - $77 = (($74) + 4)|0; - $78 = $77; - $79 = HEAP32[$78>>2]|0; - $80 = (_i64Add(($76|0),($79|0),($69|0),($71|0))|0); - $81 = tempRet0; - $82 = $73; - $83 = $82; - HEAP32[$83>>2] = $80; - $84 = (($82) + 4)|0; - $85 = $84; - HEAP32[$85>>2] = $81; - } - if ((label|0) == 8) { - HEAP32[$2>>2] = 3082; - $86 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($86|0); - } - else if ((label|0) == 14) { - HEAP32[$2>>2] = 0; - $86 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($86|0); - } - return 0|0; -} -function _memjrnlTruncate($pJfd,$0,$1) { - $pJfd = $pJfd|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pChunk = 0, $pTmp = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 20|0; - $3 = sp; - $p = sp + 16|0; - $pChunk = sp + 12|0; - $pTmp = sp + 8|0; - HEAP32[$2>>2] = $pJfd; - $4 = $3; - $5 = $4; - HEAP32[$5>>2] = $0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = $1; - $8 = HEAP32[$2>>2]|0; - HEAP32[$p>>2] = $8; - $9 = HEAP32[$p>>2]|0; - $10 = (($9) + 4|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$pChunk>>2] = $11; - while(1) { - $12 = HEAP32[$pChunk>>2]|0; - $13 = ($12|0)!=(0|0); - if (!($13)) { - break; - } - $14 = HEAP32[$pChunk>>2]|0; - HEAP32[$pTmp>>2] = $14; - $15 = HEAP32[$pChunk>>2]|0; - $16 = HEAP32[$15>>2]|0; - HEAP32[$pChunk>>2] = $16; - $17 = HEAP32[$pTmp>>2]|0; - _sqlite3_free($17); - } - $18 = HEAP32[$2>>2]|0; - _sqlite3MemJournalOpen($18); - STACKTOP = sp;return 0; -} -function _memjrnlSync($NotUsed,$NotUsed2) { - $NotUsed = $NotUsed|0; - $NotUsed2 = $NotUsed2|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $NotUsed; - HEAP32[$1>>2] = $NotUsed2; - STACKTOP = sp;return 0; -} -function _memjrnlFileSize($pJfd,$pSize) { - $pJfd = $pJfd|0; - $pSize = $pSize|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pJfd; - HEAP32[$1>>2] = $pSize; - $2 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $2; - $3 = HEAP32[$p>>2]|0; - $4 = (($3) + 8|0); - $5 = $4; - $6 = $5; - $7 = HEAP32[$6>>2]|0; - $8 = (($5) + 4)|0; - $9 = $8; - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = $11; - $13 = $12; - HEAP32[$13>>2] = $7; - $14 = (($12) + 4)|0; - $15 = $14; - HEAP32[$15>>2] = $10; - STACKTOP = sp;return 0; -} -function _sqlite3MemJournalOpen($pJfd) { - $pJfd = $pJfd|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pJfd; - $1 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $1; - $2 = HEAP32[$p>>2]|0; - $3 = (_sqlite3MemJournalSize()|0); - _memset(($2|0),0,($3|0))|0; - $4 = HEAP32[$p>>2]|0; - HEAP32[$4>>2] = 4224; - STACKTOP = sp;return; -} -function _sqlite3MemJournalSize() { - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = sp;return 40; -} -function _sqlite3PagerSavepoint($pPager,$op,$iSavepoint) { - $pPager = $pPager|0; - $op = $op|0; - $iSavepoint = $iSavepoint|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $8 = 0, $9 = 0, $ii = 0, $nNew = 0, $pSavepoint = 0; - var $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $rc = sp + 12|0; - $ii = sp + 8|0; - $nNew = sp + 4|0; - $pSavepoint = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $op; - HEAP32[$2>>2] = $iSavepoint; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 40|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$rc>>2] = $5; - $6 = HEAP32[$rc>>2]|0; - $7 = ($6|0)==(0); - if (!($7)) { - $76 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($76|0); - } - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 96|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($8|0)<($11|0); - if (!($12)) { - $76 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($76|0); - } - $13 = HEAP32[$2>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = ($14|0)==(1); - $16 = $15 ? 0 : 1; - $17 = (($13) + ($16))|0; - HEAP32[$nNew>>2] = $17; - $18 = HEAP32[$nNew>>2]|0; - HEAP32[$ii>>2] = $18; - while(1) { - $19 = HEAP32[$ii>>2]|0; - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 96|0); - $22 = HEAP32[$21>>2]|0; - $23 = ($19|0)<($22|0); - if (!($23)) { - break; - } - $24 = HEAP32[$ii>>2]|0; - $25 = HEAP32[$0>>2]|0; - $26 = (($25) + 92|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + (($24*48)|0)|0); - $29 = (($28) + 16|0); - $30 = HEAP32[$29>>2]|0; - _sqlite3BitvecDestroy($30); - $31 = HEAP32[$ii>>2]|0; - $32 = (($31) + 1)|0; - HEAP32[$ii>>2] = $32; - } - $33 = HEAP32[$nNew>>2]|0; - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 96|0); - HEAP32[$35>>2] = $33; - $36 = HEAP32[$1>>2]|0; - $37 = ($36|0)==(1); - if (!($37)) { - $56 = HEAP32[$0>>2]|0; - $57 = (_pagerUseWal($56)|0); - $58 = ($57|0)!=(0); - if (!($58)) { - $59 = HEAP32[$0>>2]|0; - $60 = (($59) + 64|0); - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$61>>2]|0; - $63 = ($62|0)!=(0|0); - if (!($63)) { - $76 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($76|0); - } - } - $64 = HEAP32[$nNew>>2]|0; - $65 = ($64|0)==(0); - if ($65) { - $72 = 0; - } else { - $66 = HEAP32[$nNew>>2]|0; - $67 = (($66) - 1)|0; - $68 = HEAP32[$0>>2]|0; - $69 = (($68) + 92|0); - $70 = HEAP32[$69>>2]|0; - $71 = (($70) + (($67*48)|0)|0); - $72 = $71; - } - HEAP32[$pSavepoint>>2] = $72; - $73 = HEAP32[$0>>2]|0; - $74 = HEAP32[$pSavepoint>>2]|0; - $75 = (_pagerPlaybackSavepoint($73,$74)|0); - HEAP32[$rc>>2] = $75; - $76 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($76|0); - } - $38 = HEAP32[$nNew>>2]|0; - $39 = ($38|0)==(0); - if (!($39)) { - $76 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($76|0); - } - $40 = HEAP32[$0>>2]|0; - $41 = (($40) + 68|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$42>>2]|0; - $44 = ($43|0)!=(0|0); - if (!($44)) { - $76 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($76|0); - } - $45 = HEAP32[$0>>2]|0; - $46 = (($45) + 68|0); - $47 = HEAP32[$46>>2]|0; - $48 = (_sqlite3IsMemJournal($47)|0); - $49 = ($48|0)!=(0); - if ($49) { - $50 = HEAP32[$0>>2]|0; - $51 = (($50) + 68|0); - $52 = HEAP32[$51>>2]|0; - $53 = (_sqlite3OsTruncate($52,0,0)|0); - HEAP32[$rc>>2] = $53; - } - $54 = HEAP32[$0>>2]|0; - $55 = (($54) + 52|0); - HEAP32[$55>>2] = 0; - $76 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($76|0); -} -function _pager_playback($pPager,$isHot) { - $pPager = $pPager|0; - $isHot = $isHot|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; - var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; - var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; - var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; - var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $mxPg = 0, $nPlayback = 0, $nRec = 0, $needPagerReset = 0, $pVfs = 0, $rc = 0, $res = 0, $szJ = 0, $u = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $zMaster = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer = sp + 8|0; - $0 = sp + 56|0; - $1 = sp + 52|0; - $pVfs = sp + 48|0; - $szJ = sp; - $nRec = sp + 44|0; - $u = sp + 40|0; - $mxPg = sp + 36|0; - $rc = sp + 32|0; - $res = sp + 28|0; - $zMaster = sp + 24|0; - $needPagerReset = sp + 20|0; - $nPlayback = sp + 16|0; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $isHot; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$pVfs>>2] = $3; - HEAP32[$mxPg>>2] = 0; - HEAP32[$res>>2] = 1; - HEAP32[$zMaster>>2] = 0; - HEAP32[$nPlayback>>2] = 0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 64|0); - $6 = HEAP32[$5>>2]|0; - $7 = (_sqlite3OsFileSize($6,$szJ)|0); - HEAP32[$rc>>2] = $7; - $8 = HEAP32[$rc>>2]|0; - $9 = ($8|0)!=(0); - L1: do { - if (!($9)) { - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 200|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$zMaster>>2] = $12; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 64|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$zMaster>>2]|0; - $17 = HEAP32[$0>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + 8|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($20) + 1)|0; - $22 = (_readMasterJournal($15,$16,$21)|0); - HEAP32[$rc>>2] = $22; - $23 = HEAP32[$rc>>2]|0; - $24 = ($23|0)==(0); - if ($24) { - $25 = HEAP32[$zMaster>>2]|0; - $26 = HEAP8[$25>>0]|0; - $27 = $26 << 24 >> 24; - $28 = ($27|0)!=(0); - if ($28) { - $29 = HEAP32[$pVfs>>2]|0; - $30 = HEAP32[$zMaster>>2]|0; - $31 = (_sqlite3OsAccess($29,$30,0,$res)|0); - HEAP32[$rc>>2] = $31; - } - } - HEAP32[$zMaster>>2] = 0; - $32 = HEAP32[$rc>>2]|0; - $33 = ($32|0)!=(0); - if (!($33)) { - $34 = HEAP32[$res>>2]|0; - $35 = ($34|0)!=(0); - if ($35) { - $36 = HEAP32[$0>>2]|0; - $37 = (($36) + 72|0); - $38 = $37; - $39 = $38; - HEAP32[$39>>2] = 0; - $40 = (($38) + 4)|0; - $41 = $40; - HEAP32[$41>>2] = 0; - $42 = HEAP32[$1>>2]|0; - HEAP32[$needPagerReset>>2] = $42; - L9: while(1) { - $43 = HEAP32[$0>>2]|0; - $44 = HEAP32[$1>>2]|0; - $45 = $szJ; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = (($45) + 4)|0; - $49 = $48; - $50 = HEAP32[$49>>2]|0; - $51 = (_readJournalHdr($43,$44,$47,$50,$nRec,$mxPg)|0); - HEAP32[$rc>>2] = $51; - $52 = HEAP32[$rc>>2]|0; - $53 = ($52|0)!=(0); - if ($53) { - label = 9; - break; - } - $56 = HEAP32[$nRec>>2]|0; - $57 = ($56|0)==(-1); - if ($57) { - $58 = $szJ; - $59 = $58; - $60 = HEAP32[$59>>2]|0; - $61 = (($58) + 4)|0; - $62 = $61; - $63 = HEAP32[$62>>2]|0; - $64 = HEAP32[$0>>2]|0; - $65 = (($64) + 148|0); - $66 = HEAP32[$65>>2]|0; - $67 = (_i64Subtract(($60|0),($63|0),($66|0),0)|0); - $68 = tempRet0; - $69 = HEAP32[$0>>2]|0; - $70 = (($69) + 152|0); - $71 = HEAP32[$70>>2]|0; - $72 = (($71) + 8)|0; - $73 = ($72|0)<(0); - $74 = $73 << 31 >> 31; - $75 = (___divdi3(($67|0),($68|0),($72|0),($74|0))|0); - $76 = tempRet0; - HEAP32[$nRec>>2] = $75; - } - $77 = HEAP32[$nRec>>2]|0; - $78 = ($77|0)==(0); - if ($78) { - $79 = HEAP32[$1>>2]|0; - $80 = ($79|0)!=(0); - if (!($80)) { - $81 = HEAP32[$0>>2]|0; - $82 = (($81) + 80|0); - $83 = $82; - $84 = $83; - $85 = HEAP32[$84>>2]|0; - $86 = (($83) + 4)|0; - $87 = $86; - $88 = HEAP32[$87>>2]|0; - $89 = HEAP32[$0>>2]|0; - $90 = (($89) + 148|0); - $91 = HEAP32[$90>>2]|0; - $92 = (_i64Add(($85|0),($88|0),($91|0),0)|0); - $93 = tempRet0; - $94 = HEAP32[$0>>2]|0; - $95 = (($94) + 72|0); - $96 = $95; - $97 = $96; - $98 = HEAP32[$97>>2]|0; - $99 = (($96) + 4)|0; - $100 = $99; - $101 = HEAP32[$100>>2]|0; - $102 = ($92|0)==($98|0); - $103 = ($93|0)==($101|0); - $104 = $102 & $103; - if ($104) { - $105 = $szJ; - $106 = $105; - $107 = HEAP32[$106>>2]|0; - $108 = (($105) + 4)|0; - $109 = $108; - $110 = HEAP32[$109>>2]|0; - $111 = HEAP32[$0>>2]|0; - $112 = (($111) + 72|0); - $113 = $112; - $114 = $113; - $115 = HEAP32[$114>>2]|0; - $116 = (($113) + 4)|0; - $117 = $116; - $118 = HEAP32[$117>>2]|0; - $119 = (_i64Subtract(($107|0),($110|0),($115|0),($118|0))|0); - $120 = tempRet0; - $121 = HEAP32[$0>>2]|0; - $122 = (($121) + 152|0); - $123 = HEAP32[$122>>2]|0; - $124 = (($123) + 8)|0; - $125 = ($124|0)<(0); - $126 = $125 << 31 >> 31; - $127 = (___divdi3(($119|0),($120|0),($124|0),($126|0))|0); - $128 = tempRet0; - HEAP32[$nRec>>2] = $127; - } - } - } - $129 = HEAP32[$0>>2]|0; - $130 = (($129) + 72|0); - $131 = $130; - $132 = $131; - $133 = HEAP32[$132>>2]|0; - $134 = (($131) + 4)|0; - $135 = $134; - $136 = HEAP32[$135>>2]|0; - $137 = HEAP32[$0>>2]|0; - $138 = (($137) + 148|0); - $139 = HEAP32[$138>>2]|0; - $140 = ($133|0)==($139|0); - $141 = ($136|0)==(0); - $142 = $140 & $141; - if ($142) { - $143 = HEAP32[$0>>2]|0; - $144 = HEAP32[$mxPg>>2]|0; - $145 = (_pager_truncate($143,$144)|0); - HEAP32[$rc>>2] = $145; - $146 = HEAP32[$rc>>2]|0; - $147 = ($146|0)!=(0); - if ($147) { - break L1; - } - $148 = HEAP32[$mxPg>>2]|0; - $149 = HEAP32[$0>>2]|0; - $150 = (($149) + 24|0); - HEAP32[$150>>2] = $148; - } - HEAP32[$u>>2] = 0; - while(1) { - $151 = HEAP32[$u>>2]|0; - $152 = HEAP32[$nRec>>2]|0; - $153 = ($151>>>0)<($152>>>0); - if (!($153)) { - continue L9; - } - $154 = HEAP32[$needPagerReset>>2]|0; - $155 = ($154|0)!=(0); - if ($155) { - $156 = HEAP32[$0>>2]|0; - _pager_reset($156); - HEAP32[$needPagerReset>>2] = 0; - } - $157 = HEAP32[$0>>2]|0; - $158 = HEAP32[$0>>2]|0; - $159 = (($158) + 72|0); - $160 = (_pager_playback_one_page($157,$159,0,1,0)|0); - HEAP32[$rc>>2] = $160; - $161 = HEAP32[$rc>>2]|0; - $162 = ($161|0)==(0); - if (!($162)) { - break; - } - $163 = HEAP32[$nPlayback>>2]|0; - $164 = (($163) + 1)|0; - HEAP32[$nPlayback>>2] = $164; - $165 = HEAP32[$u>>2]|0; - $166 = (($165) + 1)|0; - HEAP32[$u>>2] = $166; - } - $167 = HEAP32[$rc>>2]|0; - $168 = ($167|0)==(101); - if (!($168)) { - label = 28; - break; - } - $169 = $szJ; - $170 = $169; - $171 = HEAP32[$170>>2]|0; - $172 = (($169) + 4)|0; - $173 = $172; - $174 = HEAP32[$173>>2]|0; - $175 = HEAP32[$0>>2]|0; - $176 = (($175) + 72|0); - $177 = $176; - $178 = $177; - HEAP32[$178>>2] = $171; - $179 = (($177) + 4)|0; - $180 = $179; - HEAP32[$180>>2] = $174; - } - if ((label|0) == 9) { - $54 = HEAP32[$rc>>2]|0; - $55 = ($54|0)==(101); - if (!($55)) { - break; - } - HEAP32[$rc>>2] = 0; - break; - } - else if ((label|0) == 28) { - $181 = HEAP32[$rc>>2]|0; - $182 = ($181|0)==(522); - if (!($182)) { - break; - } - HEAP32[$rc>>2] = 0; - break; - } - } - } - } - } while(0); - $183 = HEAP32[$0>>2]|0; - $184 = (($183) + 12|0); - $185 = HEAP8[$184>>0]|0; - $186 = HEAP32[$0>>2]|0; - $187 = (($186) + 18|0); - HEAP8[$187>>0] = $185; - $188 = HEAP32[$rc>>2]|0; - $189 = ($188|0)==(0); - if ($189) { - $190 = HEAP32[$0>>2]|0; - $191 = (($190) + 200|0); - $192 = HEAP32[$191>>2]|0; - HEAP32[$zMaster>>2] = $192; - $193 = HEAP32[$0>>2]|0; - $194 = (($193) + 64|0); - $195 = HEAP32[$194>>2]|0; - $196 = HEAP32[$zMaster>>2]|0; - $197 = HEAP32[$0>>2]|0; - $198 = HEAP32[$197>>2]|0; - $199 = (($198) + 8|0); - $200 = HEAP32[$199>>2]|0; - $201 = (($200) + 1)|0; - $202 = (_readMasterJournal($195,$196,$201)|0); - HEAP32[$rc>>2] = $202; - } - $203 = HEAP32[$rc>>2]|0; - $204 = ($203|0)==(0); - do { - if ($204) { - $205 = HEAP32[$0>>2]|0; - $206 = (($205) + 16|0); - $207 = HEAP8[$206>>0]|0; - $208 = $207&255; - $209 = ($208|0)>=(4); - if (!($209)) { - $210 = HEAP32[$0>>2]|0; - $211 = (($210) + 16|0); - $212 = HEAP8[$211>>0]|0; - $213 = $212&255; - $214 = ($213|0)==(0); - if (!($214)) { - break; - } - } - $215 = HEAP32[$0>>2]|0; - $216 = (_sqlite3PagerSync($215,0)|0); - HEAP32[$rc>>2] = $216; - } - } while(0); - $217 = HEAP32[$rc>>2]|0; - $218 = ($217|0)==(0); - if ($218) { - $219 = HEAP32[$0>>2]|0; - $220 = HEAP32[$zMaster>>2]|0; - $221 = HEAP8[$220>>0]|0; - $222 = $221 << 24 >> 24; - $223 = ($222|0)!=(0); - $224 = $223&1; - $225 = (_pager_end_transaction($219,$224,0)|0); - HEAP32[$rc>>2] = $225; - } - $226 = HEAP32[$rc>>2]|0; - $227 = ($226|0)==(0); - if ($227) { - $228 = HEAP32[$zMaster>>2]|0; - $229 = HEAP8[$228>>0]|0; - $230 = $229 << 24 >> 24; - $231 = ($230|0)!=(0); - if ($231) { - $232 = HEAP32[$res>>2]|0; - $233 = ($232|0)!=(0); - if ($233) { - $234 = HEAP32[$0>>2]|0; - $235 = HEAP32[$zMaster>>2]|0; - $236 = (_pager_delmaster($234,$235)|0); - HEAP32[$rc>>2] = $236; - } - } - } - $237 = HEAP32[$1>>2]|0; - $238 = ($237|0)!=(0); - if (!($238)) { - $245 = HEAP32[$0>>2]|0; - _setSectorSize($245); - $246 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($246|0); - } - $239 = HEAP32[$nPlayback>>2]|0; - $240 = ($239|0)!=(0); - if (!($240)) { - $245 = HEAP32[$0>>2]|0; - _setSectorSize($245); - $246 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($246|0); - } - $241 = HEAP32[$nPlayback>>2]|0; - $242 = HEAP32[$0>>2]|0; - $243 = (($242) + 172|0); - $244 = HEAP32[$243>>2]|0; - HEAP32[$vararg_buffer>>2] = $241; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $244; - _sqlite3_log(539,4304,$vararg_buffer); - $245 = HEAP32[$0>>2]|0; - _setSectorSize($245); - $246 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($246|0); -} -function _readMasterJournal($pJrnl,$zMaster,$nMaster) { - $pJrnl = $pJrnl|0; - $zMaster = $zMaster|0; - $nMaster = $nMaster|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $aMagic = 0, $cksum = 0, $len = 0, $or$cond = 0, $or$cond3 = 0, $rc = 0; - var $szJ = 0, $u = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $rc = sp + 20|0; - $len = sp + 16|0; - $szJ = sp; - $cksum = sp + 12|0; - $u = sp + 8|0; - $aMagic = sp + 40|0; - HEAP32[$1>>2] = $pJrnl; - HEAP32[$2>>2] = $zMaster; - HEAP32[$3>>2] = $nMaster; - $4 = HEAP32[$2>>2]|0; - HEAP8[$4>>0] = 0; - $5 = HEAP32[$1>>2]|0; - $6 = (_sqlite3OsFileSize($5,$szJ)|0); - HEAP32[$rc>>2] = $6; - $7 = (0)!=($6|0); - $8 = $szJ; - $9 = $8; - $10 = HEAP32[$9>>2]|0; - $11 = (($8) + 4)|0; - $12 = $11; - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)<(0); - $15 = ($13|0)==(0); - $16 = ($10>>>0)<(16); - $17 = $15 & $16; - $18 = $14 | $17; - $or$cond = $7 | $18; - if (!($or$cond)) { - $19 = HEAP32[$1>>2]|0; - $20 = $szJ; - $21 = $20; - $22 = HEAP32[$21>>2]|0; - $23 = (($20) + 4)|0; - $24 = $23; - $25 = HEAP32[$24>>2]|0; - $26 = (_i64Subtract(($22|0),($25|0),16,0)|0); - $27 = tempRet0; - $28 = (_read32bits($19,$26,$27,$len)|0); - HEAP32[$rc>>2] = $28; - $29 = (0)!=($28|0); - if (!($29)) { - $30 = HEAP32[$len>>2]|0; - $31 = HEAP32[$3>>2]|0; - $32 = ($30>>>0)>=($31>>>0); - $33 = HEAP32[$len>>2]|0; - $34 = ($33|0)==(0); - $or$cond3 = $32 | $34; - if (!($or$cond3)) { - $35 = HEAP32[$1>>2]|0; - $36 = $szJ; - $37 = $36; - $38 = HEAP32[$37>>2]|0; - $39 = (($36) + 4)|0; - $40 = $39; - $41 = HEAP32[$40>>2]|0; - $42 = (_i64Subtract(($38|0),($41|0),12,0)|0); - $43 = tempRet0; - $44 = (_read32bits($35,$42,$43,$cksum)|0); - HEAP32[$rc>>2] = $44; - $45 = (0)!=($44|0); - if (!($45)) { - $46 = HEAP32[$1>>2]|0; - $47 = $szJ; - $48 = $47; - $49 = HEAP32[$48>>2]|0; - $50 = (($47) + 4)|0; - $51 = $50; - $52 = HEAP32[$51>>2]|0; - $53 = (_i64Subtract(($49|0),($52|0),8,0)|0); - $54 = tempRet0; - $55 = (_sqlite3OsRead($46,$aMagic,8,$53,$54)|0); - HEAP32[$rc>>2] = $55; - $56 = (0)!=($55|0); - if (!($56)) { - $57 = (_memcmp($aMagic,4336,8)|0); - $58 = ($57|0)!=(0); - if (!($58)) { - $59 = HEAP32[$1>>2]|0; - $60 = HEAP32[$2>>2]|0; - $61 = HEAP32[$len>>2]|0; - $62 = $szJ; - $63 = $62; - $64 = HEAP32[$63>>2]|0; - $65 = (($62) + 4)|0; - $66 = $65; - $67 = HEAP32[$66>>2]|0; - $68 = (_i64Subtract(($64|0),($67|0),16,0)|0); - $69 = tempRet0; - $70 = HEAP32[$len>>2]|0; - $71 = (_i64Subtract(($68|0),($69|0),($70|0),0)|0); - $72 = tempRet0; - $73 = (_sqlite3OsRead($59,$60,$61,$71,$72)|0); - HEAP32[$rc>>2] = $73; - $74 = (0)!=($73|0); - if (!($74)) { - HEAP32[$u>>2] = 0; - while(1) { - $76 = HEAP32[$u>>2]|0; - $77 = HEAP32[$len>>2]|0; - $78 = ($76>>>0)<($77>>>0); - if (!($78)) { - break; - } - $79 = HEAP32[$u>>2]|0; - $80 = HEAP32[$2>>2]|0; - $81 = (($80) + ($79)|0); - $82 = HEAP8[$81>>0]|0; - $83 = $82 << 24 >> 24; - $84 = HEAP32[$cksum>>2]|0; - $85 = (($84) - ($83))|0; - HEAP32[$cksum>>2] = $85; - $86 = HEAP32[$u>>2]|0; - $87 = (($86) + 1)|0; - HEAP32[$u>>2] = $87; - } - $88 = HEAP32[$cksum>>2]|0; - $89 = ($88|0)!=(0); - if ($89) { - HEAP32[$len>>2] = 0; - } - $90 = HEAP32[$len>>2]|0; - $91 = HEAP32[$2>>2]|0; - $92 = (($91) + ($90)|0); - HEAP8[$92>>0] = 0; - HEAP32[$0>>2] = 0; - $93 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($93|0); - } - } - } - } - } - } - } - $75 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $75; - $93 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($93|0); -} -function _sqlite3OsAccess($pVfs,$zPath,$flags,$pResOut) { - $pVfs = $pVfs|0; - $zPath = $zPath|0; - $flags = $flags|0; - $pResOut = $pResOut|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$0>>2] = $pVfs; - HEAP32[$1>>2] = $zPath; - HEAP32[$2>>2] = $flags; - HEAP32[$3>>2] = $pResOut; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 32|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$2>>2]|0; - $10 = HEAP32[$3>>2]|0; - $11 = (FUNCTION_TABLE_iiiii[$6 & 15]($7,$8,$9,$10)|0); - STACKTOP = sp;return ($11|0); -} -function _readJournalHdr($pPager,$isHot,$0,$1,$pNRec,$pDbSize) { - $pPager = $pPager|0; - $isHot = $isHot|0; - $0 = $0|0; - $1 = $1|0; - $pNRec = $pNRec|0; - $pDbSize = $pDbSize|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; - var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; - var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; - var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; - var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; - var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; - var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aMagic = 0, $iHdrOff = 0; - var $iPageSize = 0, $iSectorSize = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $2 = sp + 44|0; - $3 = sp + 40|0; - $4 = sp + 36|0; - $5 = sp + 8|0; - $6 = sp + 32|0; - $7 = sp + 28|0; - $rc = sp + 24|0; - $aMagic = sp + 48|0; - $iHdrOff = sp; - $iPageSize = sp + 20|0; - $iSectorSize = sp + 16|0; - HEAP32[$3>>2] = $pPager; - HEAP32[$4>>2] = $isHot; - $8 = $5; - $9 = $8; - HEAP32[$9>>2] = $0; - $10 = (($8) + 4)|0; - $11 = $10; - HEAP32[$11>>2] = $1; - HEAP32[$6>>2] = $pNRec; - HEAP32[$7>>2] = $pDbSize; - $12 = HEAP32[$3>>2]|0; - $13 = (_journalHdrOffset($12)|0); - $14 = tempRet0; - $15 = HEAP32[$3>>2]|0; - $16 = (($15) + 72|0); - $17 = $16; - $18 = $17; - HEAP32[$18>>2] = $13; - $19 = (($17) + 4)|0; - $20 = $19; - HEAP32[$20>>2] = $14; - $21 = HEAP32[$3>>2]|0; - $22 = (($21) + 72|0); - $23 = $22; - $24 = $23; - $25 = HEAP32[$24>>2]|0; - $26 = (($23) + 4)|0; - $27 = $26; - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$3>>2]|0; - $30 = (($29) + 148|0); - $31 = HEAP32[$30>>2]|0; - $32 = (_i64Add(($25|0),($28|0),($31|0),0)|0); - $33 = tempRet0; - $34 = $5; - $35 = $34; - $36 = HEAP32[$35>>2]|0; - $37 = (($34) + 4)|0; - $38 = $37; - $39 = HEAP32[$38>>2]|0; - $40 = ($33|0)>($39|0); - $41 = ($33|0)==($39|0); - $42 = ($32>>>0)>($36>>>0); - $43 = $41 & $42; - $44 = $40 | $43; - if ($44) { - HEAP32[$2>>2] = 101; - $219 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($219|0); - } - $45 = HEAP32[$3>>2]|0; - $46 = (($45) + 72|0); - $47 = $46; - $48 = $47; - $49 = HEAP32[$48>>2]|0; - $50 = (($47) + 4)|0; - $51 = $50; - $52 = HEAP32[$51>>2]|0; - $53 = $iHdrOff; - $54 = $53; - HEAP32[$54>>2] = $49; - $55 = (($53) + 4)|0; - $56 = $55; - HEAP32[$56>>2] = $52; - $57 = HEAP32[$4>>2]|0; - $58 = ($57|0)!=(0); - if ($58) { - label = 5; - } else { - $59 = $iHdrOff; - $60 = $59; - $61 = HEAP32[$60>>2]|0; - $62 = (($59) + 4)|0; - $63 = $62; - $64 = HEAP32[$63>>2]|0; - $65 = HEAP32[$3>>2]|0; - $66 = (($65) + 80|0); - $67 = $66; - $68 = $67; - $69 = HEAP32[$68>>2]|0; - $70 = (($67) + 4)|0; - $71 = $70; - $72 = HEAP32[$71>>2]|0; - $73 = ($61|0)!=($69|0); - $74 = ($64|0)!=($72|0); - $75 = $73 | $74; - if ($75) { - label = 5; - } - } - if ((label|0) == 5) { - $76 = HEAP32[$3>>2]|0; - $77 = (($76) + 64|0); - $78 = HEAP32[$77>>2]|0; - $79 = $iHdrOff; - $80 = $79; - $81 = HEAP32[$80>>2]|0; - $82 = (($79) + 4)|0; - $83 = $82; - $84 = HEAP32[$83>>2]|0; - $85 = (_sqlite3OsRead($78,$aMagic,8,$81,$84)|0); - HEAP32[$rc>>2] = $85; - $86 = HEAP32[$rc>>2]|0; - $87 = ($86|0)!=(0); - if ($87) { - $88 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $88; - $219 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($219|0); - } - $89 = (_memcmp($aMagic,4336,8)|0); - $90 = ($89|0)!=(0); - if ($90) { - HEAP32[$2>>2] = 101; - $219 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($219|0); - } - } - $91 = HEAP32[$3>>2]|0; - $92 = (($91) + 64|0); - $93 = HEAP32[$92>>2]|0; - $94 = $iHdrOff; - $95 = $94; - $96 = HEAP32[$95>>2]|0; - $97 = (($94) + 4)|0; - $98 = $97; - $99 = HEAP32[$98>>2]|0; - $100 = (_i64Add(($96|0),($99|0),8,0)|0); - $101 = tempRet0; - $102 = HEAP32[$6>>2]|0; - $103 = (_read32bits($93,$100,$101,$102)|0); - HEAP32[$rc>>2] = $103; - $104 = (0)!=($103|0); - if (!($104)) { - $105 = HEAP32[$3>>2]|0; - $106 = (($105) + 64|0); - $107 = HEAP32[$106>>2]|0; - $108 = $iHdrOff; - $109 = $108; - $110 = HEAP32[$109>>2]|0; - $111 = (($108) + 4)|0; - $112 = $111; - $113 = HEAP32[$112>>2]|0; - $114 = (_i64Add(($110|0),($113|0),12,0)|0); - $115 = tempRet0; - $116 = HEAP32[$3>>2]|0; - $117 = (($116) + 48|0); - $118 = (_read32bits($107,$114,$115,$117)|0); - HEAP32[$rc>>2] = $118; - $119 = (0)!=($118|0); - if (!($119)) { - $120 = HEAP32[$3>>2]|0; - $121 = (($120) + 64|0); - $122 = HEAP32[$121>>2]|0; - $123 = $iHdrOff; - $124 = $123; - $125 = HEAP32[$124>>2]|0; - $126 = (($123) + 4)|0; - $127 = $126; - $128 = HEAP32[$127>>2]|0; - $129 = (_i64Add(($125|0),($128|0),16,0)|0); - $130 = tempRet0; - $131 = HEAP32[$7>>2]|0; - $132 = (_read32bits($122,$129,$130,$131)|0); - HEAP32[$rc>>2] = $132; - $133 = (0)!=($132|0); - if (!($133)) { - $135 = HEAP32[$3>>2]|0; - $136 = (($135) + 72|0); - $137 = $136; - $138 = $137; - $139 = HEAP32[$138>>2]|0; - $140 = (($137) + 4)|0; - $141 = $140; - $142 = HEAP32[$141>>2]|0; - $143 = ($139|0)==(0); - $144 = ($142|0)==(0); - $145 = $143 & $144; - do { - if ($145) { - $146 = HEAP32[$3>>2]|0; - $147 = (($146) + 64|0); - $148 = HEAP32[$147>>2]|0; - $149 = $iHdrOff; - $150 = $149; - $151 = HEAP32[$150>>2]|0; - $152 = (($149) + 4)|0; - $153 = $152; - $154 = HEAP32[$153>>2]|0; - $155 = (_i64Add(($151|0),($154|0),20,0)|0); - $156 = tempRet0; - $157 = (_read32bits($148,$155,$156,$iSectorSize)|0); - HEAP32[$rc>>2] = $157; - $158 = (0)!=($157|0); - if (!($158)) { - $159 = HEAP32[$3>>2]|0; - $160 = (($159) + 64|0); - $161 = HEAP32[$160>>2]|0; - $162 = $iHdrOff; - $163 = $162; - $164 = HEAP32[$163>>2]|0; - $165 = (($162) + 4)|0; - $166 = $165; - $167 = HEAP32[$166>>2]|0; - $168 = (_i64Add(($164|0),($167|0),24,0)|0); - $169 = tempRet0; - $170 = (_read32bits($161,$168,$169,$iPageSize)|0); - HEAP32[$rc>>2] = $170; - $171 = (0)!=($170|0); - if (!($171)) { - $173 = HEAP32[$iPageSize>>2]|0; - $174 = ($173|0)==(0); - if ($174) { - $175 = HEAP32[$3>>2]|0; - $176 = (($175) + 152|0); - $177 = HEAP32[$176>>2]|0; - HEAP32[$iPageSize>>2] = $177; - } - $178 = HEAP32[$iPageSize>>2]|0; - $179 = ($178>>>0)<(512); - if (!($179)) { - $180 = HEAP32[$iSectorSize>>2]|0; - $181 = ($180>>>0)<(32); - if (!($181)) { - $182 = HEAP32[$iPageSize>>2]|0; - $183 = ($182>>>0)>(65536); - if (!($183)) { - $184 = HEAP32[$iSectorSize>>2]|0; - $185 = ($184>>>0)>(65536); - if (!($185)) { - $186 = HEAP32[$iPageSize>>2]|0; - $187 = (($186) - 1)|0; - $188 = HEAP32[$iPageSize>>2]|0; - $189 = $187 & $188; - $190 = ($189|0)!=(0); - if (!($190)) { - $191 = HEAP32[$iSectorSize>>2]|0; - $192 = (($191) - 1)|0; - $193 = HEAP32[$iSectorSize>>2]|0; - $194 = $192 & $193; - $195 = ($194|0)!=(0); - if (!($195)) { - $196 = HEAP32[$3>>2]|0; - $197 = (_sqlite3PagerSetPagesize($196,$iPageSize,-1)|0); - HEAP32[$rc>>2] = $197; - $198 = HEAP32[$iSectorSize>>2]|0; - $199 = HEAP32[$3>>2]|0; - $200 = (($199) + 148|0); - HEAP32[$200>>2] = $198; - break; - } - } - } - } - } - } - HEAP32[$2>>2] = 101; - $219 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($219|0); - } - } - $172 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $172; - $219 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($219|0); - } - } while(0); - $201 = HEAP32[$3>>2]|0; - $202 = (($201) + 148|0); - $203 = HEAP32[$202>>2]|0; - $204 = HEAP32[$3>>2]|0; - $205 = (($204) + 72|0); - $206 = $205; - $207 = $206; - $208 = HEAP32[$207>>2]|0; - $209 = (($206) + 4)|0; - $210 = $209; - $211 = HEAP32[$210>>2]|0; - $212 = (_i64Add(($208|0),($211|0),($203|0),0)|0); - $213 = tempRet0; - $214 = $205; - $215 = $214; - HEAP32[$215>>2] = $212; - $216 = (($214) + 4)|0; - $217 = $216; - HEAP32[$217>>2] = $213; - $218 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $218; - $219 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($219|0); - } - } - } - $134 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $134; - $219 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($219|0); -} -function _pager_playback_one_page($pPager,$pOffset,$pDone,$isMainJrnl,$isSavepnt) { - $pPager = $pPager|0; - $pOffset = $pOffset|0; - $pDone = $pDone|0; - $isMainJrnl = $isMainJrnl|0; - $isSavepnt = $isSavepnt|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; - var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; - var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; - var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aData = 0; - var $cksum = 0, $isSynced = 0, $jfd = 0, $ofst = 0, $pData = 0, $pPg = 0, $pgno = 0, $rc = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 60|0; - $1 = sp + 56|0; - $2 = sp + 52|0; - $3 = sp + 48|0; - $4 = sp + 44|0; - $5 = sp + 40|0; - $rc = sp + 36|0; - $pPg = sp + 32|0; - $pgno = sp + 28|0; - $cksum = sp + 24|0; - $aData = sp + 20|0; - $jfd = sp + 16|0; - $isSynced = sp + 12|0; - $ofst = sp; - $pData = sp + 8|0; - HEAP32[$1>>2] = $pPager; - HEAP32[$2>>2] = $pOffset; - HEAP32[$3>>2] = $pDone; - HEAP32[$4>>2] = $isMainJrnl; - HEAP32[$5>>2] = $isSavepnt; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 200|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$aData>>2] = $8; - $9 = HEAP32[$4>>2]|0; - $10 = ($9|0)!=(0); - $11 = HEAP32[$1>>2]|0; - if ($10) { - $12 = (($11) + 64|0); - $13 = HEAP32[$12>>2]|0; - $16 = $13; - } else { - $14 = (($11) + 68|0); - $15 = HEAP32[$14>>2]|0; - $16 = $15; - } - HEAP32[$jfd>>2] = $16; - $17 = HEAP32[$jfd>>2]|0; - $18 = HEAP32[$2>>2]|0; - $19 = $18; - $20 = $19; - $21 = HEAP32[$20>>2]|0; - $22 = (($19) + 4)|0; - $23 = $22; - $24 = HEAP32[$23>>2]|0; - $25 = (_read32bits($17,$21,$24,$pgno)|0); - HEAP32[$rc>>2] = $25; - $26 = HEAP32[$rc>>2]|0; - $27 = ($26|0)!=(0); - if ($27) { - $28 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $28; - $318 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($318|0); - } - $29 = HEAP32[$jfd>>2]|0; - $30 = HEAP32[$aData>>2]|0; - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 152|0); - $33 = HEAP32[$32>>2]|0; - $34 = HEAP32[$2>>2]|0; - $35 = $34; - $36 = $35; - $37 = HEAP32[$36>>2]|0; - $38 = (($35) + 4)|0; - $39 = $38; - $40 = HEAP32[$39>>2]|0; - $41 = (_i64Add(($37|0),($40|0),4,0)|0); - $42 = tempRet0; - $43 = (_sqlite3OsRead($29,$30,$33,$41,$42)|0); - HEAP32[$rc>>2] = $43; - $44 = HEAP32[$rc>>2]|0; - $45 = ($44|0)!=(0); - if ($45) { - $46 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $46; - $318 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($318|0); - } - $47 = HEAP32[$1>>2]|0; - $48 = (($47) + 152|0); - $49 = HEAP32[$48>>2]|0; - $50 = (($49) + 4)|0; - $51 = HEAP32[$4>>2]|0; - $52 = $51<<2; - $53 = (($50) + ($52))|0; - $54 = ($53|0)<(0); - $55 = $54 << 31 >> 31; - $56 = HEAP32[$2>>2]|0; - $57 = $56; - $58 = $57; - $59 = HEAP32[$58>>2]|0; - $60 = (($57) + 4)|0; - $61 = $60; - $62 = HEAP32[$61>>2]|0; - $63 = (_i64Add(($59|0),($62|0),($53|0),($55|0))|0); - $64 = tempRet0; - $65 = $56; - $66 = $65; - HEAP32[$66>>2] = $63; - $67 = (($65) + 4)|0; - $68 = $67; - HEAP32[$68>>2] = $64; - $69 = HEAP32[$pgno>>2]|0; - $70 = ($69|0)==(0); - if (!($70)) { - $71 = HEAP32[$pgno>>2]|0; - $72 = HEAP32[1384>>2]|0; - $73 = HEAP32[$1>>2]|0; - $74 = (($73) + 152|0); - $75 = HEAP32[$74>>2]|0; - $76 = (($72|0) / ($75|0))&-1; - $77 = (($76) + 1)|0; - $78 = ($71|0)==($77|0); - if (!($78)) { - $79 = HEAP32[$pgno>>2]|0; - $80 = HEAP32[$1>>2]|0; - $81 = (($80) + 24|0); - $82 = HEAP32[$81>>2]|0; - $83 = ($79>>>0)>($82>>>0); - if (!($83)) { - $84 = HEAP32[$3>>2]|0; - $85 = HEAP32[$pgno>>2]|0; - $86 = (_sqlite3BitvecTest($84,$85)|0); - $87 = ($86|0)!=(0); - if (!($87)) { - $88 = HEAP32[$4>>2]|0; - $89 = ($88|0)!=(0); - if ($89) { - $90 = HEAP32[$jfd>>2]|0; - $91 = HEAP32[$2>>2]|0; - $92 = $91; - $93 = $92; - $94 = HEAP32[$93>>2]|0; - $95 = (($92) + 4)|0; - $96 = $95; - $97 = HEAP32[$96>>2]|0; - $98 = (_i64Subtract(($94|0),($97|0),4,0)|0); - $99 = tempRet0; - $100 = (_read32bits($90,$98,$99,$cksum)|0); - HEAP32[$rc>>2] = $100; - $101 = HEAP32[$rc>>2]|0; - $102 = ($101|0)!=(0); - if ($102) { - $103 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $103; - $318 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($318|0); - } - $104 = HEAP32[$5>>2]|0; - $105 = ($104|0)!=(0); - if (!($105)) { - $106 = HEAP32[$1>>2]|0; - $107 = HEAP32[$aData>>2]|0; - $108 = (_pager_cksum($106,$107)|0); - $109 = HEAP32[$cksum>>2]|0; - $110 = ($108|0)!=($109|0); - if ($110) { - HEAP32[$0>>2] = 101; - $318 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($318|0); - } - } - } - $111 = HEAP32[$3>>2]|0; - $112 = ($111|0)!=(0|0); - if ($112) { - $113 = HEAP32[$3>>2]|0; - $114 = HEAP32[$pgno>>2]|0; - $115 = (_sqlite3BitvecSet($113,$114)|0); - HEAP32[$rc>>2] = $115; - $116 = ($115|0)!=(0); - if ($116) { - $117 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $117; - $318 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($318|0); - } - } - $118 = HEAP32[$pgno>>2]|0; - $119 = ($118|0)==(1); - if ($119) { - $120 = HEAP32[$1>>2]|0; - $121 = (($120) + 142|0); - $122 = HEAP16[$121>>1]|0; - $123 = $122 << 16 >> 16; - $124 = HEAP32[$aData>>2]|0; - $125 = (($124) + 20|0); - $126 = HEAP8[$125>>0]|0; - $127 = $126&255; - $128 = ($123|0)!=($127|0); - if ($128) { - $129 = HEAP32[$aData>>2]|0; - $130 = (($129) + 20|0); - $131 = HEAP8[$130>>0]|0; - $132 = $131&255; - $133 = HEAP32[$1>>2]|0; - $134 = (($133) + 142|0); - HEAP16[$134>>1] = $132; - } - } - $135 = HEAP32[$1>>2]|0; - $136 = (_pagerUseWal($135)|0); - $137 = ($136|0)!=(0); - if ($137) { - HEAP32[$pPg>>2] = 0; - } else { - $138 = HEAP32[$1>>2]|0; - $139 = HEAP32[$pgno>>2]|0; - $140 = (_pager_lookup($138,$139)|0); - HEAP32[$pPg>>2] = $140; - } - $141 = HEAP32[$4>>2]|0; - $142 = ($141|0)!=(0); - if ($142) { - $143 = HEAP32[$1>>2]|0; - $144 = (($143) + 7|0); - $145 = HEAP8[$144>>0]|0; - $146 = $145&255; - $147 = ($146|0)!=(0); - if ($147) { - $169 = 1; - } else { - $148 = HEAP32[$2>>2]|0; - $149 = $148; - $150 = $149; - $151 = HEAP32[$150>>2]|0; - $152 = (($149) + 4)|0; - $153 = $152; - $154 = HEAP32[$153>>2]|0; - $155 = HEAP32[$1>>2]|0; - $156 = (($155) + 80|0); - $157 = $156; - $158 = $157; - $159 = HEAP32[$158>>2]|0; - $160 = (($157) + 4)|0; - $161 = $160; - $162 = HEAP32[$161>>2]|0; - $163 = ($154|0)<($162|0); - $164 = ($154|0)==($162|0); - $165 = ($151>>>0)<=($159>>>0); - $166 = $164 & $165; - $167 = $163 | $166; - $169 = $167; - } - $168 = $169&1; - HEAP32[$isSynced>>2] = $168; - } else { - $170 = HEAP32[$pPg>>2]|0; - $171 = ($170|0)==(0|0); - if ($171) { - $179 = 1; - } else { - $172 = HEAP32[$pPg>>2]|0; - $173 = (($172) + 24|0); - $174 = HEAP16[$173>>1]|0; - $175 = $174&65535; - $176 = $175 & 4; - $177 = (0)==($176|0); - $179 = $177; - } - $178 = $179&1; - HEAP32[$isSynced>>2] = $178; - } - $180 = HEAP32[$1>>2]|0; - $181 = (($180) + 60|0); - $182 = HEAP32[$181>>2]|0; - $183 = HEAP32[$182>>2]|0; - $184 = ($183|0)!=(0|0); - do { - if ($184) { - $185 = HEAP32[$1>>2]|0; - $186 = (($185) + 16|0); - $187 = HEAP8[$186>>0]|0; - $188 = $187&255; - $189 = ($188|0)>=(4); - if (!($189)) { - $190 = HEAP32[$1>>2]|0; - $191 = (($190) + 16|0); - $192 = HEAP8[$191>>0]|0; - $193 = $192&255; - $194 = ($193|0)==(0); - if (!($194)) { - label = 44; - break; - } - } - $195 = HEAP32[$isSynced>>2]|0; - $196 = ($195|0)!=(0); - if ($196) { - $197 = HEAP32[$pgno>>2]|0; - $198 = (($197) - 1)|0; - $199 = HEAP32[$1>>2]|0; - $200 = (($199) + 152|0); - $201 = HEAP32[$200>>2]|0; - $202 = ($201|0)<(0); - $203 = $202 << 31 >> 31; - $204 = (___muldi3(($198|0),0,($201|0),($203|0))|0); - $205 = tempRet0; - $206 = $ofst; - $207 = $206; - HEAP32[$207>>2] = $204; - $208 = (($206) + 4)|0; - $209 = $208; - HEAP32[$209>>2] = $205; - $210 = HEAP32[$1>>2]|0; - $211 = (($210) + 60|0); - $212 = HEAP32[$211>>2]|0; - $213 = HEAP32[$aData>>2]|0; - $214 = HEAP32[$1>>2]|0; - $215 = (($214) + 152|0); - $216 = HEAP32[$215>>2]|0; - $217 = $ofst; - $218 = $217; - $219 = HEAP32[$218>>2]|0; - $220 = (($217) + 4)|0; - $221 = $220; - $222 = HEAP32[$221>>2]|0; - $223 = (_sqlite3OsWrite($212,$213,$216,$219,$222)|0); - HEAP32[$rc>>2] = $223; - $224 = HEAP32[$pgno>>2]|0; - $225 = HEAP32[$1>>2]|0; - $226 = (($225) + 32|0); - $227 = HEAP32[$226>>2]|0; - $228 = ($224>>>0)>($227>>>0); - if ($228) { - $229 = HEAP32[$pgno>>2]|0; - $230 = HEAP32[$1>>2]|0; - $231 = (($230) + 32|0); - HEAP32[$231>>2] = $229; - } - $232 = HEAP32[$1>>2]|0; - $233 = (($232) + 88|0); - $234 = HEAP32[$233>>2]|0; - $235 = ($234|0)!=(0|0); - if ($235) { - $236 = HEAP32[$1>>2]|0; - $237 = (($236) + 88|0); - $238 = HEAP32[$237>>2]|0; - $239 = HEAP32[$pgno>>2]|0; - $240 = HEAP32[$aData>>2]|0; - _sqlite3BackupUpdate($238,$239,$240); - $241 = HEAP32[$aData>>2]|0; - HEAP32[$aData>>2] = $241; - } - } else { - label = 44; - } - } else { - label = 44; - } - } while(0); - do { - if ((label|0) == 44) { - $242 = HEAP32[$4>>2]|0; - $243 = ($242|0)!=(0); - if (!($243)) { - $244 = HEAP32[$pPg>>2]|0; - $245 = ($244|0)==(0|0); - if ($245) { - $246 = HEAP32[$1>>2]|0; - $247 = (($246) + 20|0); - $248 = HEAP8[$247>>0]|0; - $249 = $248&255; - $250 = $249 | 2; - $251 = $250&255; - HEAP8[$247>>0] = $251; - $252 = HEAP32[$1>>2]|0; - $253 = HEAP32[$pgno>>2]|0; - $254 = (_sqlite3PagerAcquire($252,$253,$pPg,1)|0); - HEAP32[$rc>>2] = $254; - $255 = HEAP32[$1>>2]|0; - $256 = (($255) + 20|0); - $257 = HEAP8[$256>>0]|0; - $258 = $257&255; - $259 = $258 & -3; - $260 = $259&255; - HEAP8[$256>>0] = $260; - $261 = HEAP32[$rc>>2]|0; - $262 = ($261|0)!=(0); - if (!($262)) { - $264 = HEAP32[$pPg>>2]|0; - $265 = (($264) + 24|0); - $266 = HEAP16[$265>>1]|0; - $267 = $266&65535; - $268 = $267 & -9; - $269 = $268&65535; - HEAP16[$265>>1] = $269; - $270 = HEAP32[$pPg>>2]|0; - _sqlite3PcacheMakeDirty($270); - break; - } - $263 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $263; - $318 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($318|0); - } - } - } - } while(0); - $271 = HEAP32[$pPg>>2]|0; - $272 = ($271|0)!=(0|0); - if ($272) { - $273 = HEAP32[$pPg>>2]|0; - $274 = (($273) + 4|0); - $275 = HEAP32[$274>>2]|0; - HEAP32[$pData>>2] = $275; - $276 = HEAP32[$pData>>2]|0; - $277 = HEAP32[$aData>>2]|0; - $278 = HEAP32[$1>>2]|0; - $279 = (($278) + 152|0); - $280 = HEAP32[$279>>2]|0; - _memcpy(($276|0),($277|0),($280|0))|0; - $281 = HEAP32[$1>>2]|0; - $282 = (($281) + 196|0); - $283 = HEAP32[$282>>2]|0; - $284 = HEAP32[$pPg>>2]|0; - FUNCTION_TABLE_vi[$283 & 31]($284); - $285 = HEAP32[$4>>2]|0; - $286 = ($285|0)!=(0); - do { - if ($286) { - $287 = HEAP32[$5>>2]|0; - $288 = ($287|0)!=(0); - if ($288) { - $289 = HEAP32[$2>>2]|0; - $290 = $289; - $291 = $290; - $292 = HEAP32[$291>>2]|0; - $293 = (($290) + 4)|0; - $294 = $293; - $295 = HEAP32[$294>>2]|0; - $296 = HEAP32[$1>>2]|0; - $297 = (($296) + 80|0); - $298 = $297; - $299 = $298; - $300 = HEAP32[$299>>2]|0; - $301 = (($298) + 4)|0; - $302 = $301; - $303 = HEAP32[$302>>2]|0; - $304 = ($295|0)<($303|0); - $305 = ($295|0)==($303|0); - $306 = ($292>>>0)<=($300>>>0); - $307 = $305 & $306; - $308 = $304 | $307; - if (!($308)) { - break; - } - } - $309 = HEAP32[$pPg>>2]|0; - _sqlite3PcacheMakeClean($309); - } - } while(0); - $310 = HEAP32[$pgno>>2]|0; - $311 = ($310|0)==(1); - if ($311) { - $312 = HEAP32[$1>>2]|0; - $313 = (($312) + 100|0); - $314 = HEAP32[$pData>>2]|0; - $315 = (($314) + 24|0); - dest=$313+0|0; src=$315+0|0; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); - } - $316 = HEAP32[$pPg>>2]|0; - _sqlite3PcacheRelease($316); - } - $317 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $317; - $318 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($318|0); - } - } - HEAP32[$0>>2] = 0; - $318 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($318|0); - } - } - HEAP32[$0>>2] = 101; - $318 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($318|0); -} -function _pager_delmaster($pPager,$zMaster) { - $pPager = $pPager|0; - $zMaster = $zMaster|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; - var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $exists = 0; - var $flags = 0, $flags1 = 0, $nMasterJournal = 0, $nMasterPtr = 0, $pJournal = 0, $pMaster = 0, $pVfs = 0, $rc = 0, $zJournal = 0, $zMasterJournal = 0, $zMasterPtr = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 60|0; - $1 = sp + 56|0; - $pVfs = sp + 52|0; - $rc = sp + 48|0; - $pMaster = sp + 44|0; - $pJournal = sp + 40|0; - $zMasterJournal = sp + 36|0; - $nMasterJournal = sp; - $zJournal = sp + 32|0; - $zMasterPtr = sp + 28|0; - $nMasterPtr = sp + 24|0; - $flags = sp + 20|0; - $exists = sp + 16|0; - $c = sp + 12|0; - $flags1 = sp + 8|0; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $zMaster; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$pVfs>>2] = $3; - HEAP32[$zMasterJournal>>2] = 0; - $4 = HEAP32[$pVfs>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - $7 = $6<<1; - $8 = (_sqlite3MallocZero($7)|0); - HEAP32[$pMaster>>2] = $8; - $9 = HEAP32[$pMaster>>2]|0; - $10 = HEAP32[$pVfs>>2]|0; - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($9) + ($12)|0); - HEAP32[$pJournal>>2] = $13; - $14 = HEAP32[$pMaster>>2]|0; - $15 = ($14|0)!=(0|0); - if ($15) { - HEAP32[$flags>>2] = 16385; - $16 = HEAP32[$pVfs>>2]|0; - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$pMaster>>2]|0; - $19 = (_sqlite3OsOpen($16,$17,$18,16385,0)|0); - HEAP32[$rc>>2] = $19; - } else { - HEAP32[$rc>>2] = 7; - } - $20 = HEAP32[$rc>>2]|0; - $21 = ($20|0)!=(0); - L5: do { - if (!($21)) { - $22 = HEAP32[$pMaster>>2]|0; - $23 = (_sqlite3OsFileSize($22,$nMasterJournal)|0); - HEAP32[$rc>>2] = $23; - $24 = HEAP32[$rc>>2]|0; - $25 = ($24|0)!=(0); - if (!($25)) { - $26 = HEAP32[$pVfs>>2]|0; - $27 = (($26) + 8|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + 1)|0; - HEAP32[$nMasterPtr>>2] = $29; - $30 = $nMasterJournal; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $33 = (($30) + 4)|0; - $34 = $33; - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$nMasterPtr>>2]|0; - $37 = (($32) + ($36))|0; - $38 = (($37) + 1)|0; - $39 = (_sqlite3Malloc($38)|0); - HEAP32[$zMasterJournal>>2] = $39; - $40 = HEAP32[$zMasterJournal>>2]|0; - $41 = ($40|0)!=(0|0); - if (!($41)) { - HEAP32[$rc>>2] = 7; - break; - } - $42 = $nMasterJournal; - $43 = $42; - $44 = HEAP32[$43>>2]|0; - $45 = (($42) + 4)|0; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = (_i64Add(($44|0),($47|0),1,0)|0); - $49 = tempRet0; - $50 = HEAP32[$zMasterJournal>>2]|0; - $51 = (($50) + ($48)|0); - HEAP32[$zMasterPtr>>2] = $51; - $52 = HEAP32[$pMaster>>2]|0; - $53 = HEAP32[$zMasterJournal>>2]|0; - $54 = $nMasterJournal; - $55 = $54; - $56 = HEAP32[$55>>2]|0; - $57 = (($54) + 4)|0; - $58 = $57; - $59 = HEAP32[$58>>2]|0; - $60 = (_sqlite3OsRead($52,$53,$56,0,0)|0); - HEAP32[$rc>>2] = $60; - $61 = HEAP32[$rc>>2]|0; - $62 = ($61|0)!=(0); - if (!($62)) { - $63 = $nMasterJournal; - $64 = $63; - $65 = HEAP32[$64>>2]|0; - $66 = (($63) + 4)|0; - $67 = $66; - $68 = HEAP32[$67>>2]|0; - $69 = HEAP32[$zMasterJournal>>2]|0; - $70 = (($69) + ($65)|0); - HEAP8[$70>>0] = 0; - $71 = HEAP32[$zMasterJournal>>2]|0; - HEAP32[$zJournal>>2] = $71; - while(1) { - $72 = HEAP32[$zJournal>>2]|0; - $73 = HEAP32[$zMasterJournal>>2]|0; - $74 = $72; - $75 = $73; - $76 = (($74) - ($75))|0; - $77 = ($76|0)<(0); - $78 = $77 << 31 >> 31; - $79 = $nMasterJournal; - $80 = $79; - $81 = HEAP32[$80>>2]|0; - $82 = (($79) + 4)|0; - $83 = $82; - $84 = HEAP32[$83>>2]|0; - $85 = ($78|0)<($84|0); - $86 = ($78|0)==($84|0); - $87 = ($76>>>0)<($81>>>0); - $88 = $86 & $87; - $89 = $85 | $88; - if (!($89)) { - break; - } - $90 = HEAP32[$pVfs>>2]|0; - $91 = HEAP32[$zJournal>>2]|0; - $92 = (_sqlite3OsAccess($90,$91,0,$exists)|0); - HEAP32[$rc>>2] = $92; - $93 = HEAP32[$rc>>2]|0; - $94 = ($93|0)!=(0); - if ($94) { - break L5; - } - $95 = HEAP32[$exists>>2]|0; - $96 = ($95|0)!=(0); - if ($96) { - HEAP32[$flags1>>2] = 2049; - $97 = HEAP32[$pVfs>>2]|0; - $98 = HEAP32[$zJournal>>2]|0; - $99 = HEAP32[$pJournal>>2]|0; - $100 = HEAP32[$flags1>>2]|0; - $101 = (_sqlite3OsOpen($97,$98,$99,$100,0)|0); - HEAP32[$rc>>2] = $101; - $102 = HEAP32[$rc>>2]|0; - $103 = ($102|0)!=(0); - if ($103) { - break L5; - } - $104 = HEAP32[$pJournal>>2]|0; - $105 = HEAP32[$zMasterPtr>>2]|0; - $106 = HEAP32[$nMasterPtr>>2]|0; - $107 = (_readMasterJournal($104,$105,$106)|0); - HEAP32[$rc>>2] = $107; - $108 = HEAP32[$pJournal>>2]|0; - (_sqlite3OsClose($108)|0); - $109 = HEAP32[$rc>>2]|0; - $110 = ($109|0)!=(0); - if ($110) { - break L5; - } - $111 = HEAP32[$zMasterPtr>>2]|0; - $112 = HEAP8[$111>>0]|0; - $113 = $112 << 24 >> 24; - $114 = ($113|0)!=(0); - if ($114) { - $115 = HEAP32[$zMasterPtr>>2]|0; - $116 = HEAP32[$1>>2]|0; - $117 = (_strcmp($115,$116)|0); - $118 = ($117|0)==(0); - $120 = $118; - } else { - $120 = 0; - } - $119 = $120&1; - HEAP32[$c>>2] = $119; - $121 = HEAP32[$c>>2]|0; - $122 = ($121|0)!=(0); - if ($122) { - break L5; - } - } - $123 = HEAP32[$zJournal>>2]|0; - $124 = (_sqlite3Strlen30($123)|0); - $125 = (($124) + 1)|0; - $126 = HEAP32[$zJournal>>2]|0; - $127 = (($126) + ($125)|0); - HEAP32[$zJournal>>2] = $127; - } - $128 = HEAP32[$pMaster>>2]|0; - (_sqlite3OsClose($128)|0); - $129 = HEAP32[$pVfs>>2]|0; - $130 = HEAP32[$1>>2]|0; - $131 = (_sqlite3OsDelete($129,$130,0)|0); - HEAP32[$rc>>2] = $131; - } - } - } - } while(0); - $132 = HEAP32[$zMasterJournal>>2]|0; - _sqlite3_free($132); - $133 = HEAP32[$pMaster>>2]|0; - $134 = ($133|0)!=(0|0); - if (!($134)) { - $137 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($137|0); - } - $135 = HEAP32[$pMaster>>2]|0; - (_sqlite3OsClose($135)|0); - $136 = HEAP32[$pMaster>>2]|0; - _sqlite3_free($136); - $137 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($137|0); -} -function _setSectorSize($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 12|0); - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - $5 = ($4|0)!=(0); - if (!($5)) { - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 60|0); - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3OsDeviceCharacteristics($8)|0); - $10 = $9 & 4096; - $11 = ($10|0)!=(0); - if (!($11)) { - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 60|0); - $16 = HEAP32[$15>>2]|0; - $17 = (_sqlite3SectorSize($16)|0); - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 148|0); - HEAP32[$19>>2] = $17; - STACKTOP = sp;return; - } - } - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 148|0); - HEAP32[$13>>2] = 512; - STACKTOP = sp;return; -} -function _sqlite3OsDeviceCharacteristics($id) { - $id = $id|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $id; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 48|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$0>>2]|0; - $6 = (FUNCTION_TABLE_ii[$4 & 31]($5)|0); - STACKTOP = sp;return ($6|0); -} -function _sqlite3SectorSize($pFile) { - $pFile = $pFile|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $iRet = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $iRet = sp; - HEAP32[$0>>2] = $pFile; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3OsSectorSize($1)|0); - HEAP32[$iRet>>2] = $2; - $3 = HEAP32[$iRet>>2]|0; - $4 = ($3|0)<(32); - if ($4) { - HEAP32[$iRet>>2] = 512; - } else { - $5 = HEAP32[$iRet>>2]|0; - $6 = ($5|0)>(65536); - if ($6) { - HEAP32[$iRet>>2] = 65536; - } - } - $7 = HEAP32[$iRet>>2]|0; - STACKTOP = sp;return ($7|0); -} -function _sqlite3OsSectorSize($id) { - $id = $id|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $xSectorSize = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $xSectorSize = sp; - HEAP32[$0>>2] = $id; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 44|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$xSectorSize>>2] = $4; - $5 = HEAP32[$xSectorSize>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - $10 = 4096; - STACKTOP = sp;return ($10|0); - } - $7 = HEAP32[$xSectorSize>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (FUNCTION_TABLE_ii[$7 & 31]($8)|0); - $10 = $9; - STACKTOP = sp;return ($10|0); -} -function _sqlite3OsOpen($pVfs,$zPath,$pFile,$flags,$pFlagsOut) { - $pVfs = $pVfs|0; - $zPath = $zPath|0; - $pFile = $pFile|0; - $flags = $flags|0; - $pFlagsOut = $pFlagsOut|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pVfs; - HEAP32[$1>>2] = $zPath; - HEAP32[$2>>2] = $pFile; - HEAP32[$3>>2] = $flags; - HEAP32[$4>>2] = $pFlagsOut; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 24|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$3>>2]|0; - $12 = $11 & 556927; - $13 = HEAP32[$4>>2]|0; - $14 = (FUNCTION_TABLE_iiiiii[$7 & 15]($8,$9,$10,$12,$13)|0); - HEAP32[$rc>>2] = $14; - $15 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($15|0); -} -function _sqlite3OsRead($id,$pBuf,$amt,$0,$1) { - $id = $id|0; - $pBuf = $pBuf|0; - $amt = $amt|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $5 = sp; - HEAP32[$2>>2] = $id; - HEAP32[$3>>2] = $pBuf; - HEAP32[$4>>2] = $amt; - $6 = $5; - $7 = $6; - HEAP32[$7>>2] = $0; - $8 = (($6) + 4)|0; - $9 = $8; - HEAP32[$9>>2] = $1; - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + 8|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$3>>2]|0; - $16 = HEAP32[$4>>2]|0; - $17 = $5; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = (($17) + 4)|0; - $21 = $20; - $22 = HEAP32[$21>>2]|0; - $23 = (FUNCTION_TABLE_iiiiii[$13 & 15]($14,$15,$16,$19,$22)|0); - STACKTOP = sp;return ($23|0); -} -function _read32bits($fd,$0,$1,$pRes) { - $fd = $fd|0; - $0 = $0|0; - $1 = $1|0; - $pRes = $pRes|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $ac = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 16|0; - $3 = sp; - $4 = sp + 12|0; - $ac = sp + 20|0; - $rc = sp + 8|0; - HEAP32[$2>>2] = $fd; - $5 = $3; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - HEAP32[$4>>2] = $pRes; - $9 = HEAP32[$2>>2]|0; - $10 = $3; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = (($10) + 4)|0; - $14 = $13; - $15 = HEAP32[$14>>2]|0; - $16 = (_sqlite3OsRead($9,$ac,4,$12,$15)|0); - HEAP32[$rc>>2] = $16; - $17 = HEAP32[$rc>>2]|0; - $18 = ($17|0)==(0); - if (!($18)) { - $21 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($21|0); - } - $19 = (_sqlite3Get4byte($ac)|0); - $20 = HEAP32[$4>>2]|0; - HEAP32[$20>>2] = $19; - $21 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($21|0); -} -function _pager_cksum($pPager,$aData) { - $pPager = $pPager|0; - $aData = $aData|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $cksum = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $cksum = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $aData; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 48|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$cksum>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 152|0); - $7 = HEAP32[$6>>2]|0; - $8 = (($7) - 200)|0; - HEAP32[$i>>2] = $8; - while(1) { - $9 = HEAP32[$i>>2]|0; - $10 = ($9|0)>(0); - if (!($10)) { - break; - } - $11 = HEAP32[$i>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + ($11)|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14&255; - $16 = HEAP32[$cksum>>2]|0; - $17 = (($16) + ($15))|0; - HEAP32[$cksum>>2] = $17; - $18 = HEAP32[$i>>2]|0; - $19 = (($18) - 200)|0; - HEAP32[$i>>2] = $19; - } - $20 = HEAP32[$cksum>>2]|0; - STACKTOP = sp;return ($20|0); -} -function _pager_lookup($pPager,$pgno) { - $pPager = $pPager|0; - $pgno = $pgno|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $pgno; - HEAP32[$p>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 204|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$1>>2]|0; - (_sqlite3PcacheFetch($4,$5,0,$p)|0); - $6 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($6|0); -} -function _sqlite3BackupUpdate($pBackup,$iPage,$aData) { - $pBackup = $pBackup|0; - $iPage = $iPage|0; - $aData = $aData|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $p = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pBackup; - HEAP32[$1>>2] = $iPage; - HEAP32[$2>>2] = $aData; - $3 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $3; - while(1) { - $4 = HEAP32[$p>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - break; - } - $6 = HEAP32[$p>>2]|0; - $7 = (($6) + 28|0); - $8 = HEAP32[$7>>2]|0; - $9 = (_isFatalError($8)|0); - $10 = ($9|0)!=(0); - if (!($10)) { - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$p>>2]|0; - $13 = (($12) + 16|0); - $14 = HEAP32[$13>>2]|0; - $15 = ($11>>>0)<($14>>>0); - if ($15) { - $16 = HEAP32[$p>>2]|0; - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$2>>2]|0; - $19 = (_backupOnePage($16,$17,$18,1)|0); - HEAP32[$rc>>2] = $19; - $20 = HEAP32[$rc>>2]|0; - $21 = ($20|0)!=(0); - if ($21) { - $22 = HEAP32[$rc>>2]|0; - $23 = HEAP32[$p>>2]|0; - $24 = (($23) + 28|0); - HEAP32[$24>>2] = $22; - } - } - } - $25 = HEAP32[$p>>2]|0; - $26 = (($25) + 44|0); - $27 = HEAP32[$26>>2]|0; - HEAP32[$p>>2] = $27; - } - STACKTOP = sp;return; -} -function _sqlite3PcacheMakeDirty($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 24|0); - $3 = HEAP16[$2>>1]|0; - $4 = $3&65535; - $5 = $4 & -33; - $6 = $5&65535; - HEAP16[$2>>1] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 24|0); - $9 = HEAP16[$8>>1]|0; - $10 = $9&65535; - $11 = $10 & 2; - $12 = (0)==($11|0); - if (!($12)) { - STACKTOP = sp;return; - } - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 24|0); - $15 = HEAP16[$14>>1]|0; - $16 = $15&65535; - $17 = $16 | 2; - $18 = $17&65535; - HEAP16[$14>>1] = $18; - $19 = HEAP32[$0>>2]|0; - _pcacheAddToDirtyList($19); - STACKTOP = sp;return; -} -function _sqlite3PcacheRelease($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pCache = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 26|0); - $3 = HEAP16[$2>>1]|0; - $4 = (($3) + -1)<<16>>16; - HEAP16[$2>>1] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 26|0); - $7 = HEAP16[$6>>1]|0; - $8 = $7 << 16 >> 16; - $9 = ($8|0)==(0); - if (!($9)) { - STACKTOP = sp;return; - } - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 28|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$pCache>>2] = $12; - $13 = HEAP32[$pCache>>2]|0; - $14 = (($13) + 12|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + -1)|0; - HEAP32[$14>>2] = $16; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 24|0); - $19 = HEAP16[$18>>1]|0; - $20 = $19&65535; - $21 = $20 & 2; - $22 = ($21|0)==(0); - $23 = HEAP32[$0>>2]|0; - if ($22) { - _pcacheUnpin($23); - STACKTOP = sp;return; - } else { - _pcacheRemoveFromDirtyList($23); - $24 = HEAP32[$0>>2]|0; - _pcacheAddToDirtyList($24); - STACKTOP = sp;return; - } -} -function _pcacheAddToDirtyList($pPage) { - $pPage = $pPage|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pPage; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 28|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$p>>2] = $3; - $4 = HEAP32[$p>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 32|0); - HEAP32[$7>>2] = $5; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 32|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)!=(0|0); - if ($11) { - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 32|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + 36|0); - HEAP32[$16>>2] = $12; - } else { - $17 = HEAP32[$p>>2]|0; - $18 = (($17) + 28|0); - $19 = HEAP8[$18>>0]|0; - $20 = ($19<<24>>24)!=(0); - if ($20) { - $21 = HEAP32[$p>>2]|0; - $22 = (($21) + 29|0); - HEAP8[$22>>0] = 1; - } - } - $23 = HEAP32[$0>>2]|0; - $24 = HEAP32[$p>>2]|0; - HEAP32[$24>>2] = $23; - $25 = HEAP32[$p>>2]|0; - $26 = (($25) + 4|0); - $27 = HEAP32[$26>>2]|0; - $28 = ($27|0)!=(0|0); - if (!($28)) { - $29 = HEAP32[$0>>2]|0; - $30 = HEAP32[$p>>2]|0; - $31 = (($30) + 4|0); - HEAP32[$31>>2] = $29; - } - $32 = HEAP32[$p>>2]|0; - $33 = (($32) + 8|0); - $34 = HEAP32[$33>>2]|0; - $35 = ($34|0)!=(0|0); - if ($35) { - STACKTOP = sp;return; - } - $36 = HEAP32[$0>>2]|0; - $37 = (($36) + 24|0); - $38 = HEAP16[$37>>1]|0; - $39 = $38&65535; - $40 = $39 & 4; - $41 = (0)==($40|0); - if (!($41)) { - STACKTOP = sp;return; - } - $42 = HEAP32[$0>>2]|0; - $43 = HEAP32[$p>>2]|0; - $44 = (($43) + 8|0); - HEAP32[$44>>2] = $42; - STACKTOP = sp;return; -} -function _sqlite3PcacheFetch($pCache,$pgno,$createFlag,$ppPage) { - $pCache = $pCache|0; - $pgno = $pgno|0; - $createFlag = $createFlag|0; - $ppPage = $ppPage|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $17 = 0, $18 = 0, $19 = 0; - var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; - var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; - var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; - var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; - var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $eCreate = 0, $or$cond = 0, $p = 0, $pPage = 0, $pPg = 0, $pPgHdr = 0, $rc = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $4 = sp + 24|0; - $pPage = sp + 20|0; - $pPgHdr = sp + 16|0; - $eCreate = sp + 12|0; - $p = sp + 8|0; - $pPg = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pCache; - HEAP32[$2>>2] = $pgno; - HEAP32[$3>>2] = $createFlag; - HEAP32[$4>>2] = $ppPage; - HEAP32[$pPgHdr>>2] = 0; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 40|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)!=(0|0); - do { - if (!($8)) { - $9 = HEAP32[$3>>2]|0; - $10 = ($9|0)!=(0); - if (!($10)) { - $11 = HEAP32[$4>>2]|0; - HEAP32[$11>>2] = 0; - HEAP32[$0>>2] = 0; - $167 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($167|0); - } - $12 = HEAP32[((38512 + 120|0))>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 20|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 24|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + 40)|0; - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 28|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = (FUNCTION_TABLE_iiii[$12 & 15]($15,$19,$23)|0); - HEAP32[$p>>2] = $24; - $25 = HEAP32[$p>>2]|0; - $26 = ($25|0)!=(0|0); - if ($26) { - $27 = HEAP32[((38512 + 124|0))>>2]|0; - $28 = HEAP32[$p>>2]|0; - $29 = HEAP32[$1>>2]|0; - $30 = (_numberOfCachePages($29)|0); - FUNCTION_TABLE_vii[$27 & 7]($28,$30); - $31 = HEAP32[$p>>2]|0; - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 40|0); - HEAP32[$33>>2] = $31; - break; - } - HEAP32[$0>>2] = 7; - $167 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($167|0); - } - } while(0); - $34 = HEAP32[$3>>2]|0; - $35 = ($34|0)==(0); - if ($35) { - $40 = 0; - } else { - $36 = HEAP32[$1>>2]|0; - $37 = (($36) + 29|0); - $38 = HEAP8[$37>>0]|0; - $39 = $38&255; - $40 = $39; - } - HEAP32[$eCreate>>2] = $40; - $41 = HEAP32[((38512 + 132|0))>>2]|0; - $42 = HEAP32[$1>>2]|0; - $43 = (($42) + 40|0); - $44 = HEAP32[$43>>2]|0; - $45 = HEAP32[$2>>2]|0; - $46 = HEAP32[$eCreate>>2]|0; - $47 = (FUNCTION_TABLE_iiii[$41 & 15]($44,$45,$46)|0); - HEAP32[$pPage>>2] = $47; - $48 = HEAP32[$pPage>>2]|0; - $49 = ($48|0)!=(0|0); - if (!($49)) { - $50 = HEAP32[$eCreate>>2]|0; - $51 = ($50|0)==(1); - if ($51) { - $52 = HEAP32[$1>>2]|0; - $53 = (($52) + 8|0); - $54 = HEAP32[$53>>2]|0; - HEAP32[$pPg>>2] = $54; - while(1) { - $55 = HEAP32[$pPg>>2]|0; - $56 = ($55|0)!=(0|0); - if (!($56)) { - break; - } - $57 = HEAP32[$pPg>>2]|0; - $58 = (($57) + 26|0); - $59 = HEAP16[$58>>1]|0; - $60 = $59 << 16 >> 16; - $61 = ($60|0)!=(0); - if (!($61)) { - $62 = HEAP32[$pPg>>2]|0; - $63 = (($62) + 24|0); - $64 = HEAP16[$63>>1]|0; - $65 = $64&65535; - $66 = $65 & 4; - $67 = ($66|0)!=(0); - if (!($67)) { - break; - } - } - $68 = HEAP32[$pPg>>2]|0; - $69 = (($68) + 36|0); - $70 = HEAP32[$69>>2]|0; - HEAP32[$pPg>>2] = $70; - } - $71 = HEAP32[$pPg>>2]|0; - $72 = HEAP32[$1>>2]|0; - $73 = (($72) + 8|0); - HEAP32[$73>>2] = $71; - $74 = HEAP32[$pPg>>2]|0; - $75 = ($74|0)!=(0|0); - L25: do { - if (!($75)) { - $76 = HEAP32[$1>>2]|0; - $77 = (($76) + 4|0); - $78 = HEAP32[$77>>2]|0; - HEAP32[$pPg>>2] = $78; - while(1) { - $79 = HEAP32[$pPg>>2]|0; - $80 = ($79|0)!=(0|0); - if (!($80)) { - break L25; - } - $81 = HEAP32[$pPg>>2]|0; - $82 = (($81) + 26|0); - $83 = HEAP16[$82>>1]|0; - $84 = $83 << 16 >> 16; - $85 = ($84|0)!=(0); - if (!($85)) { - break L25; - } - $86 = HEAP32[$pPg>>2]|0; - $87 = (($86) + 36|0); - $88 = HEAP32[$87>>2]|0; - HEAP32[$pPg>>2] = $88; - } - } - } while(0); - $89 = HEAP32[$pPg>>2]|0; - $90 = ($89|0)!=(0|0); - if ($90) { - $91 = HEAP32[$1>>2]|0; - $92 = (($91) + 32|0); - $93 = HEAP32[$92>>2]|0; - $94 = HEAP32[$1>>2]|0; - $95 = (($94) + 36|0); - $96 = HEAP32[$95>>2]|0; - $97 = HEAP32[$pPg>>2]|0; - $98 = (FUNCTION_TABLE_iii[$93 & 63]($96,$97)|0); - HEAP32[$rc>>2] = $98; - $99 = HEAP32[$rc>>2]|0; - $100 = ($99|0)!=(0); - $101 = HEAP32[$rc>>2]|0; - $102 = ($101|0)!=(5); - $or$cond = $100 & $102; - if ($or$cond) { - $103 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $103; - $167 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($167|0); - } - } - $104 = HEAP32[((38512 + 132|0))>>2]|0; - $105 = HEAP32[$1>>2]|0; - $106 = (($105) + 40|0); - $107 = HEAP32[$106>>2]|0; - $108 = HEAP32[$2>>2]|0; - $109 = (FUNCTION_TABLE_iiii[$104 & 15]($107,$108,2)|0); - HEAP32[$pPage>>2] = $109; - } - } - $110 = HEAP32[$pPage>>2]|0; - $111 = ($110|0)!=(0|0); - if ($111) { - $112 = HEAP32[$pPage>>2]|0; - $113 = (($112) + 4|0); - $114 = HEAP32[$113>>2]|0; - HEAP32[$pPgHdr>>2] = $114; - $115 = HEAP32[$pPgHdr>>2]|0; - $116 = HEAP32[$115>>2]|0; - $117 = ($116|0)!=(0|0); - if (!($117)) { - $118 = HEAP32[$pPgHdr>>2]|0; - dest=$118+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $119 = HEAP32[$pPage>>2]|0; - $120 = HEAP32[$pPgHdr>>2]|0; - HEAP32[$120>>2] = $119; - $121 = HEAP32[$pPage>>2]|0; - $122 = HEAP32[$121>>2]|0; - $123 = HEAP32[$pPgHdr>>2]|0; - $124 = (($123) + 4|0); - HEAP32[$124>>2] = $122; - $125 = HEAP32[$pPgHdr>>2]|0; - $126 = (($125) + 40|0); - $127 = HEAP32[$pPgHdr>>2]|0; - $128 = (($127) + 8|0); - HEAP32[$128>>2] = $126; - $129 = HEAP32[$pPgHdr>>2]|0; - $130 = (($129) + 8|0); - $131 = HEAP32[$130>>2]|0; - $132 = HEAP32[$1>>2]|0; - $133 = (($132) + 24|0); - $134 = HEAP32[$133>>2]|0; - _memset(($131|0),0,($134|0))|0; - $135 = HEAP32[$1>>2]|0; - $136 = HEAP32[$pPgHdr>>2]|0; - $137 = (($136) + 28|0); - HEAP32[$137>>2] = $135; - $138 = HEAP32[$2>>2]|0; - $139 = HEAP32[$pPgHdr>>2]|0; - $140 = (($139) + 20|0); - HEAP32[$140>>2] = $138; - } - $141 = HEAP32[$pPgHdr>>2]|0; - $142 = (($141) + 26|0); - $143 = HEAP16[$142>>1]|0; - $144 = $143 << 16 >> 16; - $145 = (0)==($144|0); - if ($145) { - $146 = HEAP32[$1>>2]|0; - $147 = (($146) + 12|0); - $148 = HEAP32[$147>>2]|0; - $149 = (($148) + 1)|0; - HEAP32[$147>>2] = $149; - } - $150 = HEAP32[$pPgHdr>>2]|0; - $151 = (($150) + 26|0); - $152 = HEAP16[$151>>1]|0; - $153 = (($152) + 1)<<16>>16; - HEAP16[$151>>1] = $153; - $154 = HEAP32[$2>>2]|0; - $155 = ($154|0)==(1); - if ($155) { - $156 = HEAP32[$pPgHdr>>2]|0; - $157 = HEAP32[$1>>2]|0; - $158 = (($157) + 44|0); - HEAP32[$158>>2] = $156; - } - } - $159 = HEAP32[$pPgHdr>>2]|0; - $160 = HEAP32[$4>>2]|0; - HEAP32[$160>>2] = $159; - $161 = HEAP32[$pPgHdr>>2]|0; - $162 = ($161|0)==(0|0); - if ($162) { - $163 = HEAP32[$eCreate>>2]|0; - $164 = ($163|0)!=(0); - $166 = $164; - } else { - $166 = 0; - } - $165 = $166 ? 7 : 0; - HEAP32[$0>>2] = $165; - $167 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($167|0); -} -function _journalHdrOffset($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, $offset = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $offset = sp + 8|0; - $c = sp; - HEAP32[$0>>2] = $pPager; - $1 = $offset; - $2 = $1; - HEAP32[$2>>2] = 0; - $3 = (($1) + 4)|0; - $4 = $3; - HEAP32[$4>>2] = 0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 72|0); - $7 = $6; - $8 = $7; - $9 = HEAP32[$8>>2]|0; - $10 = (($7) + 4)|0; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = $c; - $14 = $13; - HEAP32[$14>>2] = $9; - $15 = (($13) + 4)|0; - $16 = $15; - HEAP32[$16>>2] = $12; - $17 = $c; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = (($17) + 4)|0; - $21 = $20; - $22 = HEAP32[$21>>2]|0; - $23 = ($19|0)!=(0); - $24 = ($22|0)!=(0); - $25 = $23 | $24; - if (!($25)) { - $50 = $offset; - $51 = $50; - $52 = HEAP32[$51>>2]|0; - $53 = (($50) + 4)|0; - $54 = $53; - $55 = HEAP32[$54>>2]|0; - tempRet0 = $55; - STACKTOP = sp;return ($52|0); - } - $26 = $c; - $27 = $26; - $28 = HEAP32[$27>>2]|0; - $29 = (($26) + 4)|0; - $30 = $29; - $31 = HEAP32[$30>>2]|0; - $32 = (_i64Subtract(($28|0),($31|0),1,0)|0); - $33 = tempRet0; - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 148|0); - $36 = HEAP32[$35>>2]|0; - $37 = (___divdi3(($32|0),($33|0),($36|0),0)|0); - $38 = tempRet0; - $39 = (_i64Add(($37|0),($38|0),1,0)|0); - $40 = tempRet0; - $41 = HEAP32[$0>>2]|0; - $42 = (($41) + 148|0); - $43 = HEAP32[$42>>2]|0; - $44 = (___muldi3(($39|0),($40|0),($43|0),0)|0); - $45 = tempRet0; - $46 = $offset; - $47 = $46; - HEAP32[$47>>2] = $44; - $48 = (($46) + 4)|0; - $49 = $48; - HEAP32[$49>>2] = $45; - $50 = $offset; - $51 = $50; - $52 = HEAP32[$51>>2]|0; - $53 = (($50) + 4)|0; - $54 = $53; - $55 = HEAP32[$54>>2]|0; - tempRet0 = $55; - STACKTOP = sp;return ($52|0); -} -function _pagerPlaybackSavepoint($pPager,$pSavepoint) { - $pPager = $pPager|0; - $pSavepoint = $pSavepoint|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $3 = 0, $30 = 0; - var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; - var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; - var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; - var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $dummy = 0, $iHdrOff = 0, $ii = 0, $ii1 = 0, $nJRec = 0; - var $offset = 0, $pDone = 0, $rc = 0, $szJ = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 56|0; - $1 = sp + 52|0; - $2 = sp + 48|0; - $szJ = sp + 16|0; - $iHdrOff = sp + 8|0; - $rc = sp + 44|0; - $pDone = sp + 40|0; - $ii = sp + 36|0; - $nJRec = sp + 32|0; - $dummy = sp + 28|0; - $ii1 = sp + 24|0; - $offset = sp; - HEAP32[$1>>2] = $pPager; - HEAP32[$2>>2] = $pSavepoint; - HEAP32[$rc>>2] = 0; - HEAP32[$pDone>>2] = 0; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - if ($4) { - $5 = HEAP32[$2>>2]|0; - $6 = (($5) + 20|0); - $7 = HEAP32[$6>>2]|0; - $8 = (_sqlite3BitvecCreate($7)|0); - HEAP32[$pDone>>2] = $8; - $9 = HEAP32[$pDone>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - HEAP32[$0>>2] = 7; - $294 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($294|0); - } - } - $11 = HEAP32[$2>>2]|0; - $12 = ($11|0)!=(0|0); - if ($12) { - $13 = HEAP32[$2>>2]|0; - $14 = (($13) + 20|0); - $15 = HEAP32[$14>>2]|0; - $21 = $15; - } else { - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 28|0); - $18 = HEAP32[$17>>2]|0; - $21 = $18; - } - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 24|0); - HEAP32[$20>>2] = $21; - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 12|0); - $24 = HEAP8[$23>>0]|0; - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 18|0); - HEAP8[$26>>0] = $24; - $27 = HEAP32[$2>>2]|0; - $28 = ($27|0)!=(0|0); - if (!($28)) { - $29 = HEAP32[$1>>2]|0; - $30 = (_pagerUseWal($29)|0); - $31 = ($30|0)!=(0); - if ($31) { - $32 = HEAP32[$1>>2]|0; - $33 = (_pagerRollbackWal($32)|0); - HEAP32[$0>>2] = $33; - $294 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($294|0); - } - } - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 72|0); - $36 = $35; - $37 = $36; - $38 = HEAP32[$37>>2]|0; - $39 = (($36) + 4)|0; - $40 = $39; - $41 = HEAP32[$40>>2]|0; - $42 = $szJ; - $43 = $42; - HEAP32[$43>>2] = $38; - $44 = (($42) + 4)|0; - $45 = $44; - HEAP32[$45>>2] = $41; - $46 = HEAP32[$2>>2]|0; - $47 = ($46|0)!=(0|0); - L15: do { - if ($47) { - $48 = HEAP32[$1>>2]|0; - $49 = (_pagerUseWal($48)|0); - $50 = ($49|0)!=(0); - if ($50) { - label = 19; - } else { - $51 = HEAP32[$2>>2]|0; - $52 = (($51) + 8|0); - $53 = $52; - $54 = $53; - $55 = HEAP32[$54>>2]|0; - $56 = (($53) + 4)|0; - $57 = $56; - $58 = HEAP32[$57>>2]|0; - $59 = ($55|0)!=(0); - $60 = ($58|0)!=(0); - $61 = $59 | $60; - if ($61) { - $62 = HEAP32[$2>>2]|0; - $63 = (($62) + 8|0); - $64 = $63; - $65 = $64; - $66 = HEAP32[$65>>2]|0; - $67 = (($64) + 4)|0; - $68 = $67; - $69 = HEAP32[$68>>2]|0; - $78 = $66;$81 = $69; - } else { - $70 = $szJ; - $71 = $70; - $72 = HEAP32[$71>>2]|0; - $73 = (($70) + 4)|0; - $74 = $73; - $75 = HEAP32[$74>>2]|0; - $78 = $72;$81 = $75; - } - $76 = $iHdrOff; - $77 = $76; - HEAP32[$77>>2] = $78; - $79 = (($76) + 4)|0; - $80 = $79; - HEAP32[$80>>2] = $81; - $82 = HEAP32[$2>>2]|0; - $83 = $82; - $84 = $83; - $85 = HEAP32[$84>>2]|0; - $86 = (($83) + 4)|0; - $87 = $86; - $88 = HEAP32[$87>>2]|0; - $89 = HEAP32[$1>>2]|0; - $90 = (($89) + 72|0); - $91 = $90; - $92 = $91; - HEAP32[$92>>2] = $85; - $93 = (($91) + 4)|0; - $94 = $93; - HEAP32[$94>>2] = $88; - while(1) { - $95 = HEAP32[$rc>>2]|0; - $96 = ($95|0)==(0); - if (!($96)) { - break L15; - } - $97 = HEAP32[$1>>2]|0; - $98 = (($97) + 72|0); - $99 = $98; - $100 = $99; - $101 = HEAP32[$100>>2]|0; - $102 = (($99) + 4)|0; - $103 = $102; - $104 = HEAP32[$103>>2]|0; - $105 = $iHdrOff; - $106 = $105; - $107 = HEAP32[$106>>2]|0; - $108 = (($105) + 4)|0; - $109 = $108; - $110 = HEAP32[$109>>2]|0; - $111 = ($104|0)<($110|0); - $112 = ($104|0)==($110|0); - $113 = ($101>>>0)<($107>>>0); - $114 = $112 & $113; - $115 = $111 | $114; - if (!($115)) { - break L15; - } - $116 = HEAP32[$1>>2]|0; - $117 = HEAP32[$1>>2]|0; - $118 = (($117) + 72|0); - $119 = HEAP32[$pDone>>2]|0; - $120 = (_pager_playback_one_page($116,$118,$119,1,1)|0); - HEAP32[$rc>>2] = $120; - } - } - } else { - label = 19; - } - } while(0); - if ((label|0) == 19) { - $121 = HEAP32[$1>>2]|0; - $122 = (($121) + 72|0); - $123 = $122; - $124 = $123; - HEAP32[$124>>2] = 0; - $125 = (($123) + 4)|0; - $126 = $125; - HEAP32[$126>>2] = 0; - } - L28: while(1) { - $127 = HEAP32[$rc>>2]|0; - $128 = ($127|0)==(0); - if (!($128)) { - break; - } - $129 = HEAP32[$1>>2]|0; - $130 = (($129) + 72|0); - $131 = $130; - $132 = $131; - $133 = HEAP32[$132>>2]|0; - $134 = (($131) + 4)|0; - $135 = $134; - $136 = HEAP32[$135>>2]|0; - $137 = $szJ; - $138 = $137; - $139 = HEAP32[$138>>2]|0; - $140 = (($137) + 4)|0; - $141 = $140; - $142 = HEAP32[$141>>2]|0; - $143 = ($136|0)<($142|0); - $144 = ($136|0)==($142|0); - $145 = ($133>>>0)<($139>>>0); - $146 = $144 & $145; - $147 = $143 | $146; - if (!($147)) { - break; - } - HEAP32[$nJRec>>2] = 0; - $148 = HEAP32[$1>>2]|0; - $149 = $szJ; - $150 = $149; - $151 = HEAP32[$150>>2]|0; - $152 = (($149) + 4)|0; - $153 = $152; - $154 = HEAP32[$153>>2]|0; - $155 = (_readJournalHdr($148,0,$151,$154,$nJRec,$dummy)|0); - HEAP32[$rc>>2] = $155; - $156 = HEAP32[$nJRec>>2]|0; - $157 = ($156|0)==(0); - if ($157) { - $158 = HEAP32[$1>>2]|0; - $159 = (($158) + 80|0); - $160 = $159; - $161 = $160; - $162 = HEAP32[$161>>2]|0; - $163 = (($160) + 4)|0; - $164 = $163; - $165 = HEAP32[$164>>2]|0; - $166 = HEAP32[$1>>2]|0; - $167 = (($166) + 148|0); - $168 = HEAP32[$167>>2]|0; - $169 = (_i64Add(($162|0),($165|0),($168|0),0)|0); - $170 = tempRet0; - $171 = HEAP32[$1>>2]|0; - $172 = (($171) + 72|0); - $173 = $172; - $174 = $173; - $175 = HEAP32[$174>>2]|0; - $176 = (($173) + 4)|0; - $177 = $176; - $178 = HEAP32[$177>>2]|0; - $179 = ($169|0)==($175|0); - $180 = ($170|0)==($178|0); - $181 = $179 & $180; - if ($181) { - $182 = $szJ; - $183 = $182; - $184 = HEAP32[$183>>2]|0; - $185 = (($182) + 4)|0; - $186 = $185; - $187 = HEAP32[$186>>2]|0; - $188 = HEAP32[$1>>2]|0; - $189 = (($188) + 72|0); - $190 = $189; - $191 = $190; - $192 = HEAP32[$191>>2]|0; - $193 = (($190) + 4)|0; - $194 = $193; - $195 = HEAP32[$194>>2]|0; - $196 = (_i64Subtract(($184|0),($187|0),($192|0),($195|0))|0); - $197 = tempRet0; - $198 = HEAP32[$1>>2]|0; - $199 = (($198) + 152|0); - $200 = HEAP32[$199>>2]|0; - $201 = (($200) + 8)|0; - $202 = ($201|0)<(0); - $203 = $202 << 31 >> 31; - $204 = (___divdi3(($196|0),($197|0),($201|0),($203|0))|0); - $205 = tempRet0; - HEAP32[$nJRec>>2] = $204; - } - } - HEAP32[$ii>>2] = 0; - while(1) { - $206 = HEAP32[$rc>>2]|0; - $207 = ($206|0)==(0); - if (!($207)) { - continue L28; - } - $208 = HEAP32[$ii>>2]|0; - $209 = HEAP32[$nJRec>>2]|0; - $210 = ($208>>>0)<($209>>>0); - if (!($210)) { - continue L28; - } - $211 = HEAP32[$1>>2]|0; - $212 = (($211) + 72|0); - $213 = $212; - $214 = $213; - $215 = HEAP32[$214>>2]|0; - $216 = (($213) + 4)|0; - $217 = $216; - $218 = HEAP32[$217>>2]|0; - $219 = $szJ; - $220 = $219; - $221 = HEAP32[$220>>2]|0; - $222 = (($219) + 4)|0; - $223 = $222; - $224 = HEAP32[$223>>2]|0; - $225 = ($218|0)<($224|0); - $226 = ($218|0)==($224|0); - $227 = ($215>>>0)<($221>>>0); - $228 = $226 & $227; - $229 = $225 | $228; - if (!($229)) { - continue L28; - } - $230 = HEAP32[$1>>2]|0; - $231 = HEAP32[$1>>2]|0; - $232 = (($231) + 72|0); - $233 = HEAP32[$pDone>>2]|0; - $234 = (_pager_playback_one_page($230,$232,$233,1,1)|0); - HEAP32[$rc>>2] = $234; - $235 = HEAP32[$ii>>2]|0; - $236 = (($235) + 1)|0; - HEAP32[$ii>>2] = $236; - } - } - $237 = HEAP32[$2>>2]|0; - $238 = ($237|0)!=(0|0); - L42: do { - if ($238) { - $239 = HEAP32[$2>>2]|0; - $240 = (($239) + 24|0); - $241 = HEAP32[$240>>2]|0; - $242 = HEAP32[$1>>2]|0; - $243 = (($242) + 152|0); - $244 = HEAP32[$243>>2]|0; - $245 = (4 + ($244))|0; - $246 = ($245|0)<(0); - $247 = $246 << 31 >> 31; - $248 = (___muldi3(($241|0),0,($245|0),($247|0))|0); - $249 = tempRet0; - $250 = $offset; - $251 = $250; - HEAP32[$251>>2] = $248; - $252 = (($250) + 4)|0; - $253 = $252; - HEAP32[$253>>2] = $249; - $254 = HEAP32[$1>>2]|0; - $255 = (_pagerUseWal($254)|0); - $256 = ($255|0)!=(0); - if ($256) { - $257 = HEAP32[$1>>2]|0; - $258 = (($257) + 208|0); - $259 = HEAP32[$258>>2]|0; - $260 = HEAP32[$2>>2]|0; - $261 = (($260) + 28|0); - $262 = (_sqlite3WalSavepointUndo($259,$261)|0); - HEAP32[$rc>>2] = $262; - } - $263 = HEAP32[$2>>2]|0; - $264 = (($263) + 24|0); - $265 = HEAP32[$264>>2]|0; - HEAP32[$ii1>>2] = $265; - while(1) { - $266 = HEAP32[$rc>>2]|0; - $267 = ($266|0)==(0); - if (!($267)) { - break L42; - } - $268 = HEAP32[$ii1>>2]|0; - $269 = HEAP32[$1>>2]|0; - $270 = (($269) + 52|0); - $271 = HEAP32[$270>>2]|0; - $272 = ($268>>>0)<($271>>>0); - if (!($272)) { - break L42; - } - $273 = HEAP32[$1>>2]|0; - $274 = HEAP32[$pDone>>2]|0; - $275 = (_pager_playback_one_page($273,$offset,$274,0,1)|0); - HEAP32[$rc>>2] = $275; - $276 = HEAP32[$ii1>>2]|0; - $277 = (($276) + 1)|0; - HEAP32[$ii1>>2] = $277; - } - } - } while(0); - $278 = HEAP32[$pDone>>2]|0; - _sqlite3BitvecDestroy($278); - $279 = HEAP32[$rc>>2]|0; - $280 = ($279|0)==(0); - if ($280) { - $281 = $szJ; - $282 = $281; - $283 = HEAP32[$282>>2]|0; - $284 = (($281) + 4)|0; - $285 = $284; - $286 = HEAP32[$285>>2]|0; - $287 = HEAP32[$1>>2]|0; - $288 = (($287) + 72|0); - $289 = $288; - $290 = $289; - HEAP32[$290>>2] = $283; - $291 = (($289) + 4)|0; - $292 = $291; - HEAP32[$292>>2] = $286; - } - $293 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $293; - $294 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($294|0); -} -function _pagerRollbackWal($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pList = 0, $pNext = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $rc = sp + 8|0; - $pList = sp + 4|0; - $pNext = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 28|0); - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 24|0); - HEAP32[$5>>2] = $3; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 208|0); - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = (_sqlite3WalUndo($8,35,$9)|0); - HEAP32[$rc>>2] = $10; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 204|0); - $13 = HEAP32[$12>>2]|0; - $14 = (_sqlite3PcacheDirtyList($13)|0); - HEAP32[$pList>>2] = $14; - while(1) { - $15 = HEAP32[$pList>>2]|0; - $16 = ($15|0)!=(0|0); - if (!($16)) { - label = 5; - break; - } - $17 = HEAP32[$rc>>2]|0; - $18 = ($17|0)==(0); - if (!($18)) { - label = 5; - break; - } - $19 = HEAP32[$pList>>2]|0; - $20 = (($19) + 12|0); - $21 = HEAP32[$20>>2]|0; - HEAP32[$pNext>>2] = $21; - $22 = HEAP32[$0>>2]|0; - $23 = HEAP32[$pList>>2]|0; - $24 = (($23) + 20|0); - $25 = HEAP32[$24>>2]|0; - $26 = (_pagerUndoCallback($22,$25)|0); - HEAP32[$rc>>2] = $26; - $27 = HEAP32[$pNext>>2]|0; - HEAP32[$pList>>2] = $27; - } - if ((label|0) == 5) { - $28 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($28|0); - } - return 0|0; -} -function _sqlite3WalSavepointUndo($pWal,$aWalData) { - $pWal = $pWal|0; - $aWalData = $aWalData|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pWal; - HEAP32[$1>>2] = $aWalData; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 12|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 104|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($4|0)!=($7|0); - if ($8) { - $9 = HEAP32[$1>>2]|0; - HEAP32[$9>>2] = 0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 104|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 12|0); - HEAP32[$14>>2] = $12; - } - $15 = HEAP32[$1>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 52|0); - $19 = (($18) + 16|0); - $20 = HEAP32[$19>>2]|0; - $21 = ($16>>>0)<($20>>>0); - if (!($21)) { - $41 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($41|0); - } - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 52|0); - $26 = (($25) + 16|0); - HEAP32[$26>>2] = $23; - $27 = HEAP32[$1>>2]|0; - $28 = (($27) + 4|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$0>>2]|0; - $31 = (($30) + 52|0); - $32 = (($31) + 24|0); - HEAP32[$32>>2] = $29; - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 8|0); - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$0>>2]|0; - $37 = (($36) + 52|0); - $38 = (($37) + 24|0); - $39 = (($38) + 4|0); - HEAP32[$39>>2] = $35; - $40 = HEAP32[$0>>2]|0; - _walCleanupHash($40); - $41 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($41|0); -} -function _walCleanupHash($pWal) { - $pWal = $pWal|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aHash = 0, $aPgno = 0, $i = 0, $iLimit = 0, $iZero = 0, $nByte = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $aHash = sp + 20|0; - $aPgno = sp + 16|0; - $iZero = sp + 12|0; - $iLimit = sp + 8|0; - $nByte = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $pWal; - HEAP32[$aHash>>2] = 0; - HEAP32[$aPgno>>2] = 0; - HEAP32[$iZero>>2] = 0; - HEAP32[$iLimit>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 52|0); - $3 = (($2) + 16|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)==(0); - if ($5) { - STACKTOP = sp;return; - } - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 52|0); - $9 = (($8) + 16|0); - $10 = HEAP32[$9>>2]|0; - $11 = (_walFramePage($10)|0); - (_walHashGet($6,$11,$aHash,$aPgno,$iZero)|0); - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 52|0); - $14 = (($13) + 16|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$iZero>>2]|0; - $17 = (($15) - ($16))|0; - HEAP32[$iLimit>>2] = $17; - HEAP32[$i>>2] = 0; - while(1) { - $18 = HEAP32[$i>>2]|0; - $19 = ($18|0)<(8192); - if (!($19)) { - break; - } - $20 = HEAP32[$i>>2]|0; - $21 = HEAP32[$aHash>>2]|0; - $22 = (($21) + ($20<<1)|0); - $23 = HEAP16[$22>>1]|0; - $24 = $23&65535; - $25 = HEAP32[$iLimit>>2]|0; - $26 = ($24|0)>($25|0); - if ($26) { - $27 = HEAP32[$i>>2]|0; - $28 = HEAP32[$aHash>>2]|0; - $29 = (($28) + ($27<<1)|0); - HEAP16[$29>>1] = 0; - } - $30 = HEAP32[$i>>2]|0; - $31 = (($30) + 1)|0; - HEAP32[$i>>2] = $31; - } - $32 = HEAP32[$aHash>>2]|0; - $33 = HEAP32[$iLimit>>2]|0; - $34 = (($33) + 1)|0; - $35 = HEAP32[$aPgno>>2]|0; - $36 = (($35) + ($34<<2)|0); - $37 = $32; - $38 = $36; - $39 = (($37) - ($38))|0; - HEAP32[$nByte>>2] = $39; - $40 = HEAP32[$iLimit>>2]|0; - $41 = (($40) + 1)|0; - $42 = HEAP32[$aPgno>>2]|0; - $43 = (($42) + ($41<<2)|0); - $44 = HEAP32[$nByte>>2]|0; - _memset(($43|0),0,($44|0))|0; - STACKTOP = sp;return; -} -function _walHashGet($pWal,$iHash,$paHash,$paPgno,$piZero) { - $pWal = $pWal|0; - $iHash = $iHash|0; - $paHash = $paHash|0; - $paPgno = $paPgno|0; - $piZero = $piZero|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aHash = 0, $aPgno = 0, $iZero = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $4 = sp + 16|0; - $rc = sp + 12|0; - $aPgno = sp + 8|0; - $iZero = sp + 4|0; - $aHash = sp; - HEAP32[$0>>2] = $pWal; - HEAP32[$1>>2] = $iHash; - HEAP32[$2>>2] = $paHash; - HEAP32[$3>>2] = $paPgno; - HEAP32[$4>>2] = $piZero; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = (_walIndexPage($5,$6,$aPgno)|0); - HEAP32[$rc>>2] = $7; - $8 = HEAP32[$rc>>2]|0; - $9 = ($8|0)==(0); - if (!($9)) { - $27 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($27|0); - } - $10 = HEAP32[$aPgno>>2]|0; - $11 = (($10) + 16384|0); - HEAP32[$aHash>>2] = $11; - $12 = HEAP32[$1>>2]|0; - $13 = ($12|0)==(0); - if ($13) { - $14 = HEAP32[$aPgno>>2]|0; - $15 = (($14) + 136|0); - HEAP32[$aPgno>>2] = $15; - HEAP32[$iZero>>2] = 0; - } else { - $16 = HEAP32[$1>>2]|0; - $17 = (($16) - 1)|0; - $18 = $17<<12; - $19 = (4062 + ($18))|0; - HEAP32[$iZero>>2] = $19; - } - $20 = HEAP32[$aPgno>>2]|0; - $21 = (($20) + -4|0); - $22 = HEAP32[$3>>2]|0; - HEAP32[$22>>2] = $21; - $23 = HEAP32[$aHash>>2]|0; - $24 = HEAP32[$2>>2]|0; - HEAP32[$24>>2] = $23; - $25 = HEAP32[$iZero>>2]|0; - $26 = HEAP32[$4>>2]|0; - HEAP32[$26>>2] = $25; - $27 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($27|0); -} -function _walFramePage($iFrame) { - $iFrame = $iFrame|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $iHash = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $iHash = sp; - HEAP32[$0>>2] = $iFrame; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4096)|0; - $3 = (($2) - 4062)|0; - $4 = (($3) - 1)|0; - $5 = (($4>>>0) / 4096)&-1; - HEAP32[$iHash>>2] = $5; - $6 = HEAP32[$iHash>>2]|0; - STACKTOP = sp;return ($6|0); -} -function _walIndexPage($pWal,$iPage,$ppPage) { - $pWal = $pWal|0; - $iPage = $iPage|0; - $ppPage = $ppPage|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $apNew = 0, $nByte = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $rc = sp + 8|0; - $nByte = sp + 4|0; - $apNew = sp; - HEAP32[$1>>2] = $pWal; - HEAP32[$2>>2] = $iPage; - HEAP32[$3>>2] = $ppPage; - HEAP32[$rc>>2] = 0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 24|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$2>>2]|0; - $8 = ($6|0)<=($7|0); - do { - if ($8) { - $9 = HEAP32[$2>>2]|0; - $10 = (($9) + 1)|0; - $11 = $10<<2; - HEAP32[$nByte>>2] = $11; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 32|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$nByte>>2]|0; - $16 = (_sqlite3_realloc($14,$15)|0); - HEAP32[$apNew>>2] = $16; - $17 = HEAP32[$apNew>>2]|0; - $18 = ($17|0)!=(0|0); - if ($18) { - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 24|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$apNew>>2]|0; - $24 = (($23) + ($22<<2)|0); - $25 = HEAP32[$2>>2]|0; - $26 = (($25) + 1)|0; - $27 = HEAP32[$1>>2]|0; - $28 = (($27) + 24|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($26) - ($29))|0; - $31 = $30<<2; - _memset(($24|0),0,($31|0))|0; - $32 = HEAP32[$apNew>>2]|0; - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 32|0); - HEAP32[$34>>2] = $32; - $35 = HEAP32[$2>>2]|0; - $36 = (($35) + 1)|0; - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 24|0); - HEAP32[$38>>2] = $36; - break; - } - $19 = HEAP32[$3>>2]|0; - HEAP32[$19>>2] = 0; - HEAP32[$0>>2] = 7; - $94 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($94|0); - } - } while(0); - $39 = HEAP32[$2>>2]|0; - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 32|0); - $42 = HEAP32[$41>>2]|0; - $43 = (($42) + ($39<<2)|0); - $44 = HEAP32[$43>>2]|0; - $45 = ($44|0)==(0|0); - do { - if ($45) { - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 43|0); - $48 = HEAP8[$47>>0]|0; - $49 = $48&255; - $50 = ($49|0)==(2); - if ($50) { - $51 = (_sqlite3MallocZero(32768)|0); - $52 = HEAP32[$2>>2]|0; - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + 32|0); - $55 = HEAP32[$54>>2]|0; - $56 = (($55) + ($52<<2)|0); - HEAP32[$56>>2] = $51; - $57 = HEAP32[$2>>2]|0; - $58 = HEAP32[$1>>2]|0; - $59 = (($58) + 32|0); - $60 = HEAP32[$59>>2]|0; - $61 = (($60) + ($57<<2)|0); - $62 = HEAP32[$61>>2]|0; - $63 = ($62|0)!=(0|0); - if ($63) { - break; - } - HEAP32[$rc>>2] = 7; - break; - } else { - $64 = HEAP32[$1>>2]|0; - $65 = (($64) + 4|0); - $66 = HEAP32[$65>>2]|0; - $67 = HEAP32[$2>>2]|0; - $68 = HEAP32[$1>>2]|0; - $69 = (($68) + 44|0); - $70 = HEAP8[$69>>0]|0; - $71 = $70&255; - $72 = HEAP32[$2>>2]|0; - $73 = HEAP32[$1>>2]|0; - $74 = (($73) + 32|0); - $75 = HEAP32[$74>>2]|0; - $76 = (($75) + ($72<<2)|0); - $77 = (_sqlite3OsShmMap($66,$67,32768,$71,$76)|0); - HEAP32[$rc>>2] = $77; - $78 = HEAP32[$rc>>2]|0; - $79 = ($78|0)==(8); - if (!($79)) { - break; - } - $80 = HEAP32[$1>>2]|0; - $81 = (($80) + 46|0); - $82 = HEAP8[$81>>0]|0; - $83 = $82&255; - $84 = $83 | 2; - $85 = $84&255; - HEAP8[$81>>0] = $85; - HEAP32[$rc>>2] = 0; - break; - } - } - } while(0); - $86 = HEAP32[$2>>2]|0; - $87 = HEAP32[$1>>2]|0; - $88 = (($87) + 32|0); - $89 = HEAP32[$88>>2]|0; - $90 = (($89) + ($86<<2)|0); - $91 = HEAP32[$90>>2]|0; - $92 = HEAP32[$3>>2]|0; - HEAP32[$92>>2] = $91; - $93 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $93; - $94 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($94|0); -} -function _sqlite3OsShmMap($id,$iPage,$pgsz,$bExtend,$pp) { - $id = $id|0; - $iPage = $iPage|0; - $pgsz = $pgsz|0; - $bExtend = $bExtend|0; - $pp = $pp|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $4 = sp; - HEAP32[$0>>2] = $id; - HEAP32[$1>>2] = $iPage; - HEAP32[$2>>2] = $pgsz; - HEAP32[$3>>2] = $bExtend; - HEAP32[$4>>2] = $pp; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + 52|0); - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = HEAP32[$3>>2]|0; - $13 = HEAP32[$4>>2]|0; - $14 = (FUNCTION_TABLE_iiiiii[$8 & 15]($9,$10,$11,$12,$13)|0); - STACKTOP = sp;return ($14|0); -} -function _sqlite3WalUndo($pWal,$xUndo,$pUndoCtx) { - $pWal = $pWal|0; - $xUndo = $xUndo|0; - $pUndoCtx = $pUndoCtx|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $iFrame = 0, $iMax = 0, $rc = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $rc = sp + 8|0; - $iMax = sp + 4|0; - $iFrame = sp; - HEAP32[$0>>2] = $pWal; - HEAP32[$1>>2] = $xUndo; - HEAP32[$2>>2] = $pUndoCtx; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 44|0); - $5 = HEAP8[$4>>0]|0; - $6 = ($5<<24>>24)!=(0); - if (!($6)) { - $40 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($40|0); - } - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 52|0); - $9 = (($8) + 16|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$iMax>>2] = $10; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 52|0); - $13 = HEAP32[$0>>2]|0; - $14 = (_walIndexHdr($13)|0); - dest=$12+0|0; src=$14+0|0; stop=dest+48|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 52|0); - $17 = (($16) + 16|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + 1)|0; - HEAP32[$iFrame>>2] = $19; - while(1) { - $20 = HEAP32[$rc>>2]|0; - $21 = ($20|0)==(0); - if (!($21)) { - break; - } - $22 = HEAP32[$iFrame>>2]|0; - $23 = HEAP32[$iMax>>2]|0; - $24 = ($22>>>0)<=($23>>>0); - if (!($24)) { - break; - } - $25 = HEAP32[$1>>2]|0; - $26 = HEAP32[$2>>2]|0; - $27 = HEAP32[$0>>2]|0; - $28 = HEAP32[$iFrame>>2]|0; - $29 = (_walFramePgno($27,$28)|0); - $30 = (FUNCTION_TABLE_iii[$25 & 63]($26,$29)|0); - HEAP32[$rc>>2] = $30; - $31 = HEAP32[$iFrame>>2]|0; - $32 = (($31) + 1)|0; - HEAP32[$iFrame>>2] = $32; - } - $33 = HEAP32[$iMax>>2]|0; - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 52|0); - $36 = (($35) + 16|0); - $37 = HEAP32[$36>>2]|0; - $38 = ($33|0)!=($37|0); - if (!($38)) { - $40 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($40|0); - } - $39 = HEAP32[$0>>2]|0; - _walCleanupHash($39); - $40 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($40|0); -} -function _pagerUndoCallback($pCtx,$iPg) { - $pCtx = $pCtx|0; - $iPg = $iPg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iFrame = 0, $pPager = 0, $pPg = 0, $rc = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $rc = sp + 12|0; - $pPager = sp + 8|0; - $pPg = sp + 4|0; - $iFrame = sp; - HEAP32[$0>>2] = $pCtx; - HEAP32[$1>>2] = $iPg; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$0>>2]|0; - HEAP32[$pPager>>2] = $2; - $3 = HEAP32[$pPager>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (_sqlite3PagerLookup($3,$4)|0); - HEAP32[$pPg>>2] = $5; - $6 = HEAP32[$pPg>>2]|0; - $7 = ($6|0)!=(0|0); - do { - if ($7) { - $8 = HEAP32[$pPg>>2]|0; - $9 = (_sqlite3PcachePageRefcount($8)|0); - $10 = ($9|0)==(1); - if ($10) { - $11 = HEAP32[$pPg>>2]|0; - _sqlite3PcacheDrop($11); - break; - } - HEAP32[$iFrame>>2] = 0; - $12 = HEAP32[$pPager>>2]|0; - $13 = (($12) + 208|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$pPg>>2]|0; - $16 = (($15) + 20|0); - $17 = HEAP32[$16>>2]|0; - $18 = (_sqlite3WalFindFrame($14,$17,$iFrame)|0); - HEAP32[$rc>>2] = $18; - $19 = HEAP32[$rc>>2]|0; - $20 = ($19|0)==(0); - if ($20) { - $21 = HEAP32[$pPg>>2]|0; - $22 = HEAP32[$iFrame>>2]|0; - $23 = (_readDbPage($21,$22)|0); - HEAP32[$rc>>2] = $23; - } - $24 = HEAP32[$rc>>2]|0; - $25 = ($24|0)==(0); - if ($25) { - $26 = HEAP32[$pPager>>2]|0; - $27 = (($26) + 196|0); - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$pPg>>2]|0; - FUNCTION_TABLE_vi[$28 & 31]($29); - } - $30 = HEAP32[$pPg>>2]|0; - _sqlite3PagerUnrefNotNull($30); - } - } while(0); - $31 = HEAP32[$pPager>>2]|0; - $32 = (($31) + 88|0); - $33 = HEAP32[$32>>2]|0; - _sqlite3BackupRestart($33); - $34 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($34|0); -} -function _sqlite3PcacheDirtyList($pCache) { - $pCache = $pCache|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pCache; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$p>>2] = $2; - while(1) { - $3 = HEAP32[$p>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - break; - } - $5 = HEAP32[$p>>2]|0; - $6 = (($5) + 32|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$p>>2]|0; - $9 = (($8) + 12|0); - HEAP32[$9>>2] = $7; - $10 = HEAP32[$p>>2]|0; - $11 = (($10) + 32|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$p>>2] = $12; - } - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = (_pcacheSortDirtyList($14)|0); - STACKTOP = sp;return ($15|0); -} -function _pcacheSortDirtyList($pIn) { - $pIn = $pIn|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $i = 0, $p = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 144|0; - $0 = sp + 136|0; - $a = sp + 8|0; - $p = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $pIn; - dest=$a+0|0; stop=dest+128|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - while(1) { - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if (!($2)) { - break; - } - $3 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $3; - $4 = HEAP32[$p>>2]|0; - $5 = (($4) + 12|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$0>>2] = $6; - $7 = HEAP32[$p>>2]|0; - $8 = (($7) + 12|0); - HEAP32[$8>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $9 = HEAP32[$i>>2]|0; - $10 = ($9|0)<(31); - if (!($10)) { - break; - } - $11 = HEAP32[$i>>2]|0; - $12 = (($a) + ($11<<2)|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)==(0|0); - if ($14) { - label = 6; - break; - } - $18 = HEAP32[$i>>2]|0; - $19 = (($a) + ($18<<2)|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$p>>2]|0; - $22 = (_pcacheMergeDirtyList($20,$21)|0); - HEAP32[$p>>2] = $22; - $23 = HEAP32[$i>>2]|0; - $24 = (($a) + ($23<<2)|0); - HEAP32[$24>>2] = 0; - $25 = HEAP32[$i>>2]|0; - $26 = (($25) + 1)|0; - HEAP32[$i>>2] = $26; - } - if ((label|0) == 6) { - label = 0; - $15 = HEAP32[$p>>2]|0; - $16 = HEAP32[$i>>2]|0; - $17 = (($a) + ($16<<2)|0); - HEAP32[$17>>2] = $15; - } - $27 = HEAP32[$i>>2]|0; - $28 = ($27|0)==(31); - if (!($28)) { - continue; - } - $29 = HEAP32[$i>>2]|0; - $30 = (($a) + ($29<<2)|0); - $31 = HEAP32[$30>>2]|0; - $32 = HEAP32[$p>>2]|0; - $33 = (_pcacheMergeDirtyList($31,$32)|0); - $34 = HEAP32[$i>>2]|0; - $35 = (($a) + ($34<<2)|0); - HEAP32[$35>>2] = $33; - } - $36 = HEAP32[$a>>2]|0; - HEAP32[$p>>2] = $36; - HEAP32[$i>>2] = 1; - while(1) { - $37 = HEAP32[$i>>2]|0; - $38 = ($37|0)<(32); - $39 = HEAP32[$p>>2]|0; - if (!($38)) { - break; - } - $40 = HEAP32[$i>>2]|0; - $41 = (($a) + ($40<<2)|0); - $42 = HEAP32[$41>>2]|0; - $43 = (_pcacheMergeDirtyList($39,$42)|0); - HEAP32[$p>>2] = $43; - $44 = HEAP32[$i>>2]|0; - $45 = (($44) + 1)|0; - HEAP32[$i>>2] = $45; - } - STACKTOP = sp;return ($39|0); -} -function _pcacheMergeDirtyList($pA,$pB) { - $pA = $pA|0; - $pB = $pB|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $pTail = 0, $result = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 52|0; - $1 = sp + 48|0; - $result = sp + 8|0; - $pTail = sp; - HEAP32[$0>>2] = $pA; - HEAP32[$1>>2] = $pB; - HEAP32[$pTail>>2] = $result; - while(1) { - $2 = HEAP32[$0>>2]|0; - $3 = ($2|0)!=(0|0); - if ($3) { - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)!=(0|0); - $40 = $5; - } else { - $40 = 0; - } - $6 = HEAP32[$0>>2]|0; - if (!($40)) { - break; - } - $7 = (($6) + 20|0); - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 20|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($8>>>0)<($11>>>0); - if ($12) { - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$pTail>>2]|0; - $15 = (($14) + 12|0); - HEAP32[$15>>2] = $13; - $16 = HEAP32[$0>>2]|0; - HEAP32[$pTail>>2] = $16; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 12|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$0>>2] = $19; - continue; - } else { - $20 = HEAP32[$1>>2]|0; - $21 = HEAP32[$pTail>>2]|0; - $22 = (($21) + 12|0); - HEAP32[$22>>2] = $20; - $23 = HEAP32[$1>>2]|0; - HEAP32[$pTail>>2] = $23; - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 12|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$1>>2] = $26; - continue; - } - } - $27 = ($6|0)!=(0|0); - if ($27) { - $28 = HEAP32[$0>>2]|0; - $29 = HEAP32[$pTail>>2]|0; - $30 = (($29) + 12|0); - HEAP32[$30>>2] = $28; - $38 = (($result) + 12|0); - $39 = HEAP32[$38>>2]|0; - STACKTOP = sp;return ($39|0); - } - $31 = HEAP32[$1>>2]|0; - $32 = ($31|0)!=(0|0); - if ($32) { - $33 = HEAP32[$1>>2]|0; - $34 = HEAP32[$pTail>>2]|0; - $35 = (($34) + 12|0); - HEAP32[$35>>2] = $33; - $38 = (($result) + 12|0); - $39 = HEAP32[$38>>2]|0; - STACKTOP = sp;return ($39|0); - } else { - $36 = HEAP32[$pTail>>2]|0; - $37 = (($36) + 12|0); - HEAP32[$37>>2] = 0; - $38 = (($result) + 12|0); - $39 = HEAP32[$38>>2]|0; - STACKTOP = sp;return ($39|0); - } - return 0|0; -} -function _sqlite3PagerLookup($pPager,$pgno) { - $pPager = $pPager|0; - $pgno = $pgno|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $pPg = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pPg = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $pgno; - HEAP32[$pPg>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 204|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$1>>2]|0; - (_sqlite3PcacheFetch($4,$5,0,$pPg)|0); - $6 = HEAP32[$pPg>>2]|0; - STACKTOP = sp;return ($6|0); -} -function _sqlite3PcachePageRefcount($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 26|0); - $3 = HEAP16[$2>>1]|0; - $4 = $3 << 16 >> 16; - STACKTOP = sp;return ($4|0); -} -function _sqlite3PcacheDrop($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pCache = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 24|0); - $3 = HEAP16[$2>>1]|0; - $4 = $3&65535; - $5 = $4 & 2; - $6 = ($5|0)!=(0); - if ($6) { - $7 = HEAP32[$0>>2]|0; - _pcacheRemoveFromDirtyList($7); - } - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 28|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$pCache>>2] = $10; - $11 = HEAP32[$pCache>>2]|0; - $12 = (($11) + 12|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + -1)|0; - HEAP32[$12>>2] = $14; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 20|0); - $17 = HEAP32[$16>>2]|0; - $18 = ($17|0)==(1); - if ($18) { - $19 = HEAP32[$pCache>>2]|0; - $20 = (($19) + 44|0); - HEAP32[$20>>2] = 0; - } - $21 = HEAP32[((38512 + 136|0))>>2]|0; - $22 = HEAP32[$pCache>>2]|0; - $23 = (($22) + 40|0); - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$0>>2]|0; - $26 = HEAP32[$25>>2]|0; - FUNCTION_TABLE_viii[$21 & 63]($24,$26,1); - STACKTOP = sp;return; -} -function _sqlite3WalFindFrame($pWal,$pgno,$piRead) { - $pWal = $pWal|0; - $pgno = $pgno|0; - $piRead = $piRead|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $aHash = 0, $aPgno = 0, $iFrame = 0, $iHash = 0, $iKey = 0, $iLast = 0, $iRead = 0, $iZero = 0, $nCollide = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 52|0; - $1 = sp + 48|0; - $2 = sp + 44|0; - $3 = sp + 40|0; - $iRead = sp + 36|0; - $iLast = sp + 32|0; - $iHash = sp + 28|0; - $aHash = sp + 24|0; - $aPgno = sp + 20|0; - $iZero = sp + 16|0; - $iKey = sp + 12|0; - $nCollide = sp + 8|0; - $rc = sp + 4|0; - $iFrame = sp; - HEAP32[$1>>2] = $pWal; - HEAP32[$2>>2] = $pgno; - HEAP32[$3>>2] = $piRead; - HEAP32[$iRead>>2] = 0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 52|0); - $6 = (($5) + 16|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$iLast>>2] = $7; - $8 = HEAP32[$iLast>>2]|0; - $9 = ($8|0)==(0); - if (!($9)) { - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 40|0); - $12 = HEAP16[$11>>1]|0; - $13 = $12 << 16 >> 16; - $14 = ($13|0)==(0); - if (!($14)) { - $16 = HEAP32[$iLast>>2]|0; - $17 = (_walFramePage($16)|0); - HEAP32[$iHash>>2] = $17; - L4: while(1) { - $18 = HEAP32[$iHash>>2]|0; - $19 = ($18|0)>=(0); - if (!($19)) { - label = 18; - break; - } - $20 = HEAP32[$iRead>>2]|0; - $21 = ($20|0)==(0); - if (!($21)) { - label = 18; - break; - } - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$iHash>>2]|0; - $24 = (_walHashGet($22,$23,$aHash,$aPgno,$iZero)|0); - HEAP32[$rc>>2] = $24; - $25 = HEAP32[$rc>>2]|0; - $26 = ($25|0)!=(0); - if ($26) { - label = 8; - break; - } - HEAP32[$nCollide>>2] = 8192; - $28 = HEAP32[$2>>2]|0; - $29 = (_walHash($28)|0); - HEAP32[$iKey>>2] = $29; - while(1) { - $30 = HEAP32[$iKey>>2]|0; - $31 = HEAP32[$aHash>>2]|0; - $32 = (($31) + ($30<<1)|0); - $33 = HEAP16[$32>>1]|0; - $34 = ($33<<16>>16)!=(0); - if (!($34)) { - break; - } - $35 = HEAP32[$iKey>>2]|0; - $36 = HEAP32[$aHash>>2]|0; - $37 = (($36) + ($35<<1)|0); - $38 = HEAP16[$37>>1]|0; - $39 = $38&65535; - $40 = HEAP32[$iZero>>2]|0; - $41 = (($39) + ($40))|0; - HEAP32[$iFrame>>2] = $41; - $42 = HEAP32[$iFrame>>2]|0; - $43 = HEAP32[$iLast>>2]|0; - $44 = ($42>>>0)<=($43>>>0); - if ($44) { - $45 = HEAP32[$iKey>>2]|0; - $46 = HEAP32[$aHash>>2]|0; - $47 = (($46) + ($45<<1)|0); - $48 = HEAP16[$47>>1]|0; - $49 = $48&65535; - $50 = HEAP32[$aPgno>>2]|0; - $51 = (($50) + ($49<<2)|0); - $52 = HEAP32[$51>>2]|0; - $53 = HEAP32[$2>>2]|0; - $54 = ($52|0)==($53|0); - if ($54) { - $55 = HEAP32[$iFrame>>2]|0; - HEAP32[$iRead>>2] = $55; - } - } - $56 = HEAP32[$nCollide>>2]|0; - $57 = (($56) + -1)|0; - HEAP32[$nCollide>>2] = $57; - $58 = ($56|0)==(0); - if ($58) { - label = 15; - break L4; - } - $60 = HEAP32[$iKey>>2]|0; - $61 = (_walNextHash($60)|0); - HEAP32[$iKey>>2] = $61; - } - $62 = HEAP32[$iHash>>2]|0; - $63 = (($62) + -1)|0; - HEAP32[$iHash>>2] = $63; - } - if ((label|0) == 8) { - $27 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $27; - $66 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($66|0); - } - else if ((label|0) == 15) { - $59 = (_sqlite3CorruptError(49462)|0); - HEAP32[$0>>2] = $59; - $66 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($66|0); - } - else if ((label|0) == 18) { - $64 = HEAP32[$iRead>>2]|0; - $65 = HEAP32[$3>>2]|0; - HEAP32[$65>>2] = $64; - HEAP32[$0>>2] = 0; - $66 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($66|0); - } - } - } - $15 = HEAP32[$3>>2]|0; - HEAP32[$15>>2] = 0; - HEAP32[$0>>2] = 0; - $66 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($66|0); -} -function _readDbPage($pPg,$iFrame) { - $pPg = $pPg|0; - $iFrame = $iFrame|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $dbFileVers = 0, $iOffset = 0, $pPager = 0, $pgno = 0, $pgsz = 0, $rc = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $pPager = sp + 24|0; - $pgno = sp + 20|0; - $rc = sp + 16|0; - $pgsz = sp + 12|0; - $iOffset = sp; - $dbFileVers = sp + 8|0; - HEAP32[$0>>2] = $pPg; - HEAP32[$1>>2] = $iFrame; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 16|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pPager>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 20|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pgno>>2] = $7; - HEAP32[$rc>>2] = 0; - $8 = HEAP32[$pPager>>2]|0; - $9 = (($8) + 152|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$pgsz>>2] = $10; - $11 = HEAP32[$1>>2]|0; - $12 = ($11|0)!=(0); - if ($12) { - $13 = HEAP32[$pPager>>2]|0; - $14 = (($13) + 208|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$pgsz>>2]|0; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 4|0); - $20 = HEAP32[$19>>2]|0; - $21 = (_sqlite3WalReadFrame($15,$16,$17,$20)|0); - HEAP32[$rc>>2] = $21; - } else { - $22 = HEAP32[$pgno>>2]|0; - $23 = (($22) - 1)|0; - $24 = HEAP32[$pPager>>2]|0; - $25 = (($24) + 152|0); - $26 = HEAP32[$25>>2]|0; - $27 = ($26|0)<(0); - $28 = $27 << 31 >> 31; - $29 = (___muldi3(($23|0),0,($26|0),($28|0))|0); - $30 = tempRet0; - $31 = $iOffset; - $32 = $31; - HEAP32[$32>>2] = $29; - $33 = (($31) + 4)|0; - $34 = $33; - HEAP32[$34>>2] = $30; - $35 = HEAP32[$pPager>>2]|0; - $36 = (($35) + 60|0); - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$0>>2]|0; - $39 = (($38) + 4|0); - $40 = HEAP32[$39>>2]|0; - $41 = HEAP32[$pgsz>>2]|0; - $42 = $iOffset; - $43 = $42; - $44 = HEAP32[$43>>2]|0; - $45 = (($42) + 4)|0; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = (_sqlite3OsRead($37,$40,$41,$44,$47)|0); - HEAP32[$rc>>2] = $48; - $49 = HEAP32[$rc>>2]|0; - $50 = ($49|0)==(522); - $$ = $50 ? 0 : $48; - HEAP32[$rc>>2] = $$; - } - $51 = HEAP32[$pgno>>2]|0; - $52 = ($51|0)==(1); - if (!($52)) { - $64 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($64|0); - } - $53 = HEAP32[$rc>>2]|0; - $54 = ($53|0)!=(0); - if ($54) { - $55 = HEAP32[$pPager>>2]|0; - $56 = (($55) + 100|0); - dest=$56+0|0; stop=dest+16|0; do { HEAP8[dest>>0]=255|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); - $64 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($64|0); - } else { - $57 = HEAP32[$0>>2]|0; - $58 = (($57) + 4|0); - $59 = HEAP32[$58>>2]|0; - $60 = (($59) + 24|0); - HEAP32[$dbFileVers>>2] = $60; - $61 = HEAP32[$pPager>>2]|0; - $62 = (($61) + 100|0); - $63 = HEAP32[$dbFileVers>>2]|0; - dest=$62+0|0; src=$63+0|0; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); - $64 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($64|0); - } - return 0|0; -} -function _sqlite3PagerUnrefNotNull($pPg) { - $pPg = $pPg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pPager = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pPager = sp; - HEAP32[$0>>2] = $pPg; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 16|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pPager>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 24|0); - $6 = HEAP16[$5>>1]|0; - $7 = $6&65535; - $8 = $7 & 64; - $9 = ($8|0)!=(0); - $10 = HEAP32[$0>>2]|0; - if ($9) { - _pagerReleaseMapPage($10); - $11 = HEAP32[$pPager>>2]|0; - _pagerUnlockIfUnused($11); - STACKTOP = sp;return; - } else { - _sqlite3PcacheRelease($10); - $11 = HEAP32[$pPager>>2]|0; - _pagerUnlockIfUnused($11); - STACKTOP = sp;return; - } -} -function _pagerReleaseMapPage($pPg) { - $pPg = $pPg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pPager = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pPager = sp; - HEAP32[$0>>2] = $pPg; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 16|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pPager>>2] = $3; - $4 = HEAP32[$pPager>>2]|0; - $5 = (($4) + 120|0); - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + -1)|0; - HEAP32[$5>>2] = $7; - $8 = HEAP32[$pPager>>2]|0; - $9 = (($8) + 136|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 12|0); - HEAP32[$12>>2] = $10; - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$pPager>>2]|0; - $15 = (($14) + 136|0); - HEAP32[$15>>2] = $13; - $16 = HEAP32[$pPager>>2]|0; - $17 = (($16) + 60|0); - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 20|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) - 1)|0; - $23 = HEAP32[$pPager>>2]|0; - $24 = (($23) + 152|0); - $25 = HEAP32[$24>>2]|0; - $26 = ($25|0)<(0); - $27 = $26 << 31 >> 31; - $28 = (___muldi3(($22|0),0,($25|0),($27|0))|0); - $29 = tempRet0; - $30 = HEAP32[$0>>2]|0; - $31 = (($30) + 4|0); - $32 = HEAP32[$31>>2]|0; - (_sqlite3OsUnfetch($18,$28,$29,$32)|0); - STACKTOP = sp;return; -} -function _pagerUnlockIfUnused($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 120|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)==(0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 204|0); - $7 = HEAP32[$6>>2]|0; - $8 = (_sqlite3PcacheRefCount($7)|0); - $9 = ($8|0)==(0); - if (!($9)) { - STACKTOP = sp;return; - } - $10 = HEAP32[$0>>2]|0; - _pagerUnlockAndRollback($10); - STACKTOP = sp;return; -} -function _sqlite3OsUnfetch($id,$0,$1,$p) { - $id = $id|0; - $0 = $0|0; - $1 = $1|0; - $p = $p|0; - var $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $2 = sp + 12|0; - $3 = sp; - $4 = sp + 8|0; - HEAP32[$2>>2] = $id; - $5 = $3; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - HEAP32[$4>>2] = $p; - STACKTOP = sp;return 0; -} -function _sqlite3WalReadFrame($pWal,$iRead,$nOut,$pOut) { - $pWal = $pWal|0; - $iRead = $iRead|0; - $nOut = $nOut|0; - $pOut = $pOut|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iOffset = 0, $sz = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $sz = sp + 8|0; - $iOffset = sp; - HEAP32[$0>>2] = $pWal; - HEAP32[$1>>2] = $iRead; - HEAP32[$2>>2] = $nOut; - HEAP32[$3>>2] = $pOut; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 52|0); - $6 = (($5) + 14|0); - $7 = HEAP16[$6>>1]|0; - $8 = $7&65535; - HEAP32[$sz>>2] = $8; - $9 = HEAP32[$sz>>2]|0; - $10 = $9 & 65024; - $11 = HEAP32[$sz>>2]|0; - $12 = $11 & 1; - $13 = $12 << 16; - $14 = (($10) + ($13))|0; - HEAP32[$sz>>2] = $14; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) - 1)|0; - $17 = HEAP32[$sz>>2]|0; - $18 = (($17) + 24)|0; - $19 = ($18|0)<(0); - $20 = $19 << 31 >> 31; - $21 = (___muldi3(($16|0),0,($18|0),($20|0))|0); - $22 = tempRet0; - $23 = (_i64Add(32,0,($21|0),($22|0))|0); - $24 = tempRet0; - $25 = (_i64Add(($23|0),($24|0),24,0)|0); - $26 = tempRet0; - $27 = $iOffset; - $28 = $27; - HEAP32[$28>>2] = $25; - $29 = (($27) + 4)|0; - $30 = $29; - HEAP32[$30>>2] = $26; - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 8|0); - $33 = HEAP32[$32>>2]|0; - $34 = HEAP32[$3>>2]|0; - $35 = HEAP32[$2>>2]|0; - $36 = HEAP32[$sz>>2]|0; - $37 = ($35|0)>($36|0); - $38 = HEAP32[$sz>>2]|0; - $39 = HEAP32[$2>>2]|0; - $40 = $37 ? $38 : $39; - $41 = $iOffset; - $42 = $41; - $43 = HEAP32[$42>>2]|0; - $44 = (($41) + 4)|0; - $45 = $44; - $46 = HEAP32[$45>>2]|0; - $47 = (_sqlite3OsRead($33,$34,$40,$43,$46)|0); - STACKTOP = sp;return ($47|0); -} -function _walHash($iPage) { - $iPage = $iPage|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $iPage; - $1 = HEAP32[$0>>2]|0; - $2 = ($1*383)|0; - $3 = $2 & 8191; - STACKTOP = sp;return ($3|0); -} -function _sqlite3CorruptError($lineno) { - $lineno = $lineno|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 8|0; - HEAP32[$0>>2] = $lineno; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3_sourceid()|0); - $3 = (($2) + 20|0); - HEAP32[$vararg_buffer>>2] = $1; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $3; - _sqlite3_log(11,4344,$vararg_buffer); - STACKTOP = sp;return 11; -} -function _walNextHash($iPriorHash) { - $iPriorHash = $iPriorHash|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $iPriorHash; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 1)|0; - $3 = $2 & 8191; - STACKTOP = sp;return ($3|0); -} -function _walIndexHdr($pWal) { - $pWal = $pWal|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pWal; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 32|0); - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - STACKTOP = sp;return ($4|0); -} -function _walFramePgno($pWal,$iFrame) { - $pWal = $pWal|0; - $iFrame = $iFrame|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iHash = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $iHash = sp; - HEAP32[$1>>2] = $pWal; - HEAP32[$2>>2] = $iFrame; - $3 = HEAP32[$2>>2]|0; - $4 = (_walFramePage($3)|0); - HEAP32[$iHash>>2] = $4; - $5 = HEAP32[$iHash>>2]|0; - $6 = ($5|0)==(0); - $7 = HEAP32[$2>>2]|0; - if ($6) { - $8 = (34 + ($7))|0; - $9 = (($8) - 1)|0; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 32|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + ($9<<2)|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$0>>2] = $15; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); - } else { - $16 = (($7) - 1)|0; - $17 = (($16) - 4062)|0; - $18 = (($17>>>0) % 4096)&-1; - $19 = HEAP32[$iHash>>2]|0; - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 32|0); - $22 = HEAP32[$21>>2]|0; - $23 = (($22) + ($19<<2)|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + ($18<<2)|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$0>>2] = $26; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); - } - return 0|0; -} -function _sqlite3WalEndReadTransaction($pWal) { - $pWal = $pWal|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pWal; - $1 = HEAP32[$0>>2]|0; - (_sqlite3WalEndWriteTransaction($1)|0); - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 40|0); - $4 = HEAP16[$3>>1]|0; - $5 = $4 << 16 >> 16; - $6 = ($5|0)>=(0); - if (!($6)) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 40|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10 << 16 >> 16; - $12 = (3 + ($11))|0; - _walUnlockShared($7,$12); - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 40|0); - HEAP16[$14>>1] = -1; - STACKTOP = sp;return; -} -function _sqlite3OsLock($id,$lockType) { - $id = $id|0; - $lockType = $lockType|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $id; - HEAP32[$1>>2] = $lockType; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 28|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (FUNCTION_TABLE_iii[$5 & 63]($6,$7)|0); - STACKTOP = sp;return ($8|0); -} -function _sqlite3WalCheckpoint($pWal,$eMode,$xBusy,$pBusyArg,$sync_flags,$nBuf,$zBuf,$pnLog,$pnCkpt) { - $pWal = $pWal|0; - $eMode = $eMode|0; - $xBusy = $xBusy|0; - $pBusyArg = $pBusyArg|0; - $sync_flags = $sync_flags|0; - $nBuf = $nBuf|0; - $zBuf = $zBuf|0; - $pnLog = $pnLog|0; - $pnCkpt = $pnCkpt|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; - var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; - var $99 = 0, $eMode2 = 0, $isChanged = 0, $or$cond = 0, $rc = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 48|0; - $1 = sp + 44|0; - $2 = sp + 40|0; - $3 = sp + 36|0; - $4 = sp + 32|0; - $5 = sp + 28|0; - $6 = sp + 24|0; - $7 = sp + 20|0; - $8 = sp + 16|0; - $9 = sp + 12|0; - $rc = sp + 8|0; - $isChanged = sp + 4|0; - $eMode2 = sp; - HEAP32[$1>>2] = $pWal; - HEAP32[$2>>2] = $eMode; - HEAP32[$3>>2] = $xBusy; - HEAP32[$4>>2] = $pBusyArg; - HEAP32[$5>>2] = $sync_flags; - HEAP32[$6>>2] = $nBuf; - HEAP32[$7>>2] = $zBuf; - HEAP32[$8>>2] = $pnLog; - HEAP32[$9>>2] = $pnCkpt; - HEAP32[$isChanged>>2] = 0; - $10 = HEAP32[$2>>2]|0; - HEAP32[$eMode2>>2] = $10; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 46|0); - $13 = HEAP8[$12>>0]|0; - $14 = ($13<<24>>24)!=(0); - if ($14) { - HEAP32[$0>>2] = 8; - $100 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($100|0); - } - $15 = HEAP32[$1>>2]|0; - $16 = (_walLockExclusive($15,1,1)|0); - HEAP32[$rc>>2] = $16; - $17 = HEAP32[$rc>>2]|0; - $18 = ($17|0)!=(0); - if ($18) { - $19 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $19; - $100 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($100|0); - } - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 45|0); - HEAP8[$21>>0] = 1; - $22 = HEAP32[$2>>2]|0; - $23 = ($22|0)!=(0); - do { - if ($23) { - $24 = HEAP32[$1>>2]|0; - $25 = HEAP32[$3>>2]|0; - $26 = HEAP32[$4>>2]|0; - $27 = (_walBusyLock($24,$25,$26,0,1)|0); - HEAP32[$rc>>2] = $27; - $28 = HEAP32[$rc>>2]|0; - $29 = ($28|0)==(0); - if ($29) { - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 44|0); - HEAP8[$31>>0] = 1; - break; - } - $32 = HEAP32[$rc>>2]|0; - $33 = ($32|0)==(5); - if ($33) { - HEAP32[$eMode2>>2] = 0; - HEAP32[$rc>>2] = 0; - } - } - } while(0); - $34 = HEAP32[$rc>>2]|0; - $35 = ($34|0)==(0); - if ($35) { - $36 = HEAP32[$1>>2]|0; - $37 = (_walIndexReadHdr($36,$isChanged)|0); - HEAP32[$rc>>2] = $37; - $38 = HEAP32[$isChanged>>2]|0; - $39 = ($38|0)!=(0); - if ($39) { - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 4|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$43>>2]|0; - $45 = ($44|0)>=(3); - if ($45) { - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 4|0); - $48 = HEAP32[$47>>2]|0; - (_sqlite3OsUnfetch($48,0,0,0)|0); - } - } - } - $49 = HEAP32[$rc>>2]|0; - $50 = ($49|0)==(0); - if ($50) { - $51 = HEAP32[$1>>2]|0; - $52 = (($51) + 52|0); - $53 = (($52) + 16|0); - $54 = HEAP32[$53>>2]|0; - $55 = ($54|0)!=(0); - if ($55) { - $56 = HEAP32[$1>>2]|0; - $57 = (_walPagesize($56)|0); - $58 = HEAP32[$6>>2]|0; - $59 = ($57|0)!=($58|0); - if ($59) { - $60 = (_sqlite3CorruptError(50063)|0); - HEAP32[$rc>>2] = $60; - } else { - label = 18; - } - } else { - label = 18; - } - if ((label|0) == 18) { - $61 = HEAP32[$1>>2]|0; - $62 = HEAP32[$eMode2>>2]|0; - $63 = HEAP32[$3>>2]|0; - $64 = HEAP32[$4>>2]|0; - $65 = HEAP32[$5>>2]|0; - $66 = HEAP32[$7>>2]|0; - $67 = (_walCheckpoint($61,$62,$63,$64,$65,$66)|0); - HEAP32[$rc>>2] = $67; - } - $68 = HEAP32[$rc>>2]|0; - $69 = ($68|0)==(0); - $70 = HEAP32[$rc>>2]|0; - $71 = ($70|0)==(5); - $or$cond = $69 | $71; - if ($or$cond) { - $72 = HEAP32[$8>>2]|0; - $73 = ($72|0)!=(0|0); - if ($73) { - $74 = HEAP32[$1>>2]|0; - $75 = (($74) + 52|0); - $76 = (($75) + 16|0); - $77 = HEAP32[$76>>2]|0; - $78 = HEAP32[$8>>2]|0; - HEAP32[$78>>2] = $77; - } - $79 = HEAP32[$9>>2]|0; - $80 = ($79|0)!=(0|0); - if ($80) { - $81 = HEAP32[$1>>2]|0; - $82 = (_walCkptInfo($81)|0); - $83 = HEAP32[$82>>2]|0; - $84 = HEAP32[$9>>2]|0; - HEAP32[$84>>2] = $83; - } - } - } - $85 = HEAP32[$isChanged>>2]|0; - $86 = ($85|0)!=(0); - if ($86) { - $87 = HEAP32[$1>>2]|0; - $88 = (($87) + 52|0); - dest=$88+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - } - $89 = HEAP32[$1>>2]|0; - (_sqlite3WalEndWriteTransaction($89)|0); - $90 = HEAP32[$1>>2]|0; - _walUnlockExclusive($90,1,1); - $91 = HEAP32[$1>>2]|0; - $92 = (($91) + 45|0); - HEAP8[$92>>0] = 0; - $93 = HEAP32[$rc>>2]|0; - $94 = ($93|0)==(0); - if ($94) { - $95 = HEAP32[$2>>2]|0; - $96 = HEAP32[$eMode2>>2]|0; - $97 = ($95|0)!=($96|0); - if ($97) { - $99 = 5; - } else { - label = 28; - } - } else { - label = 28; - } - if ((label|0) == 28) { - $98 = HEAP32[$rc>>2]|0; - $99 = $98; - } - HEAP32[$0>>2] = $99; - $100 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($100|0); -} -function _sqlite3OsFileControlHint($id,$op,$pArg) { - $id = $id|0; - $op = $op|0; - $pArg = $pArg|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $id; - HEAP32[$1>>2] = $op; - HEAP32[$2>>2] = $pArg; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (($4) + 40|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$2>>2]|0; - (FUNCTION_TABLE_iiii[$6 & 15]($7,$8,$9)|0); - STACKTOP = sp;return; -} -function _walLimitSize($pWal,$0,$1) { - $pWal = $pWal|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rx = 0, $sz = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp + 16|0; - $2 = sp + 24|0; - $3 = sp + 8|0; - $sz = sp; - $rx = sp + 20|0; - HEAP32[$2>>2] = $pWal; - $4 = $3; - $5 = $4; - HEAP32[$5>>2] = $0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = $1; - _sqlite3BeginBenignMalloc(); - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + 8|0); - $10 = HEAP32[$9>>2]|0; - $11 = (_sqlite3OsFileSize($10,$sz)|0); - HEAP32[$rx>>2] = $11; - $12 = HEAP32[$rx>>2]|0; - $13 = ($12|0)==(0); - if ($13) { - $14 = $sz; - $15 = $14; - $16 = HEAP32[$15>>2]|0; - $17 = (($14) + 4)|0; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = $3; - $21 = $20; - $22 = HEAP32[$21>>2]|0; - $23 = (($20) + 4)|0; - $24 = $23; - $25 = HEAP32[$24>>2]|0; - $26 = ($19|0)>($25|0); - $27 = ($19|0)==($25|0); - $28 = ($16>>>0)>($22>>>0); - $29 = $27 & $28; - $30 = $26 | $29; - if ($30) { - $31 = HEAP32[$2>>2]|0; - $32 = (($31) + 8|0); - $33 = HEAP32[$32>>2]|0; - $34 = $3; - $35 = $34; - $36 = HEAP32[$35>>2]|0; - $37 = (($34) + 4)|0; - $38 = $37; - $39 = HEAP32[$38>>2]|0; - $40 = (_sqlite3OsTruncate($33,$36,$39)|0); - HEAP32[$rx>>2] = $40; - } - } - _sqlite3EndBenignMalloc(); - $41 = HEAP32[$rx>>2]|0; - $42 = ($41|0)!=(0); - if (!($42)) { - STACKTOP = sp;return; - } - $43 = HEAP32[$rx>>2]|0; - $44 = HEAP32[$2>>2]|0; - $45 = (($44) + 100|0); - $46 = HEAP32[$45>>2]|0; - HEAP32[$vararg_buffer>>2] = $46; - _sqlite3_log($43,4392,$vararg_buffer); - STACKTOP = sp;return; -} -function _walIndexClose($pWal,$isDelete) { - $pWal = $pWal|0; - $isDelete = $isDelete|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $pWal; - HEAP32[$1>>2] = $isDelete; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 43|0); - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - $6 = ($5|0)==(2); - if (!($6)) { - $25 = HEAP32[$0>>2]|0; - $26 = (($25) + 4|0); - $27 = HEAP32[$26>>2]|0; - $28 = HEAP32[$1>>2]|0; - (_sqlite3OsShmUnmap($27,$28)|0); - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $7 = HEAP32[$i>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 24|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($7|0)<($10|0); - if (!($11)) { - break; - } - $12 = HEAP32[$i>>2]|0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 32|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + ($12<<2)|0); - $17 = HEAP32[$16>>2]|0; - _sqlite3_free($17); - $18 = HEAP32[$i>>2]|0; - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 32|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + ($18<<2)|0); - HEAP32[$22>>2] = 0; - $23 = HEAP32[$i>>2]|0; - $24 = (($23) + 1)|0; - HEAP32[$i>>2] = $24; - } - STACKTOP = sp;return; -} -function _sqlite3OsShmUnmap($id,$deleteFlag) { - $id = $id|0; - $deleteFlag = $deleteFlag|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $id; - HEAP32[$1>>2] = $deleteFlag; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 64|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (FUNCTION_TABLE_iii[$5 & 63]($6,$7)|0); - STACKTOP = sp;return ($8|0); -} -function _walLockExclusive($pWal,$lockIdx,$n) { - $pWal = $pWal|0; - $lockIdx = $lockIdx|0; - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pWal; - HEAP32[$2>>2] = $lockIdx; - HEAP32[$3>>2] = $n; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 43|0); - $6 = HEAP8[$5>>0]|0; - $7 = ($6<<24>>24)!=(0); - if ($7) { - HEAP32[$0>>2] = 0; - $15 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($15|0); - } else { - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = HEAP32[$3>>2]|0; - $13 = (_sqlite3OsShmLock($10,$11,$12,10)|0); - HEAP32[$rc>>2] = $13; - $14 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $14; - $15 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($15|0); - } - return 0|0; -} -function _walBusyLock($pWal,$xBusy,$pBusyArg,$lockIdx,$n) { - $pWal = $pWal|0; - $xBusy = $xBusy|0; - $pBusyArg = $pBusyArg|0; - $lockIdx = $lockIdx|0; - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pWal; - HEAP32[$1>>2] = $xBusy; - HEAP32[$2>>2] = $pBusyArg; - HEAP32[$3>>2] = $lockIdx; - HEAP32[$4>>2] = $n; - while(1) { - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$3>>2]|0; - $7 = HEAP32[$4>>2]|0; - $8 = (_walLockExclusive($5,$6,$7)|0); - HEAP32[$rc>>2] = $8; - $9 = HEAP32[$1>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - label = 5; - break; - } - $11 = HEAP32[$rc>>2]|0; - $12 = ($11|0)==(5); - if (!($12)) { - label = 5; - break; - } - $13 = HEAP32[$1>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = (FUNCTION_TABLE_ii[$13 & 31]($14)|0); - $16 = ($15|0)!=(0); - if (!($16)) { - label = 5; - break; - } - } - if ((label|0) == 5) { - $17 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($17|0); - } - return 0|0; -} -function _walIndexReadHdr($pWal,$pChanged) { - $pWal = $pWal|0; - $pChanged = $pChanged|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $badHdr = 0, $page0 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $rc = sp + 8|0; - $badHdr = sp + 4|0; - $page0 = sp; - HEAP32[$1>>2] = $pWal; - HEAP32[$2>>2] = $pChanged; - $3 = HEAP32[$1>>2]|0; - $4 = (_walIndexPage($3,0,$page0)|0); - HEAP32[$rc>>2] = $4; - $5 = HEAP32[$rc>>2]|0; - $6 = ($5|0)!=(0); - if ($6) { - $7 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $7; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); - } - $8 = HEAP32[$page0>>2]|0; - $9 = ($8|0)!=(0|0); - if ($9) { - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = (_walIndexTryHdr($10,$11)|0); - $13 = $12; - } else { - $13 = 1; - } - HEAP32[$badHdr>>2] = $13; - $14 = HEAP32[$badHdr>>2]|0; - $15 = ($14|0)!=(0); - do { - if ($15) { - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 46|0); - $18 = HEAP8[$17>>0]|0; - $19 = $18&255; - $20 = $19 & 2; - $21 = ($20|0)!=(0); - $22 = HEAP32[$1>>2]|0; - if ($21) { - $23 = (_walLockShared($22,0)|0); - HEAP32[$rc>>2] = $23; - $24 = (0)==($23|0); - if (!($24)) { - break; - } - $25 = HEAP32[$1>>2]|0; - _walUnlockShared($25,0); - HEAP32[$rc>>2] = 264; - break; - } - $26 = (_walLockExclusive($22,0,1)|0); - HEAP32[$rc>>2] = $26; - $27 = (0)==($26|0); - if ($27) { - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 44|0); - HEAP8[$29>>0] = 1; - $30 = HEAP32[$1>>2]|0; - $31 = (_walIndexPage($30,0,$page0)|0); - HEAP32[$rc>>2] = $31; - $32 = (0)==($31|0); - if ($32) { - $33 = HEAP32[$1>>2]|0; - $34 = HEAP32[$2>>2]|0; - $35 = (_walIndexTryHdr($33,$34)|0); - HEAP32[$badHdr>>2] = $35; - $36 = HEAP32[$badHdr>>2]|0; - $37 = ($36|0)!=(0); - if ($37) { - $38 = HEAP32[$1>>2]|0; - $39 = (_walIndexRecover($38)|0); - HEAP32[$rc>>2] = $39; - $40 = HEAP32[$2>>2]|0; - HEAP32[$40>>2] = 1; - } - } - $41 = HEAP32[$1>>2]|0; - $42 = (($41) + 44|0); - HEAP8[$42>>0] = 0; - $43 = HEAP32[$1>>2]|0; - _walUnlockExclusive($43,0,1); - } - } - } while(0); - $44 = HEAP32[$badHdr>>2]|0; - $45 = ($44|0)==(0); - if ($45) { - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 52|0); - $48 = HEAP32[$47>>2]|0; - $49 = ($48|0)!=(3007000); - if ($49) { - $50 = (_sqlite3CantopenError(49109)|0); - HEAP32[$rc>>2] = $50; - } - } - $51 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $51; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); -} -function _walPagesize($pWal) { - $pWal = $pWal|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pWal; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 52|0); - $3 = (($2) + 14|0); - $4 = HEAP16[$3>>1]|0; - $5 = $4&65535; - $6 = $5 & 65024; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 52|0); - $9 = (($8) + 14|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10&65535; - $12 = $11 & 1; - $13 = $12 << 16; - $14 = (($6) + ($13))|0; - STACKTOP = sp;return ($14|0); -} -function _walCheckpoint($pWal,$eMode,$xBusyCall,$pBusyArg,$sync_flags,$zBuf) { - $pWal = $pWal|0; - $eMode = $eMode|0; - $xBusyCall = $xBusyCall|0; - $pBusyArg = $pBusyArg|0; - $sync_flags = $sync_flags|0; - $zBuf = $zBuf|0; - var $$old = 0, $$old1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; - var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; - var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; - var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; - var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0; - var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0; - var $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0; - var $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0; - var $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0; - var $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; - var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; - var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; - var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; - var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iDbpage = 0, $iFrame = 0, $iOffset = 0, $mxPage = 0, $mxSafeFrame = 0, $nBackfill = 0, $nReq = 0, $nSize = 0, $or$cond = 0, $pInfo = 0, $pIter = 0, $rc = 0, $szDb = 0, $szPage = 0; - var $xBusy = 0, $y = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 112|0; - $0 = sp + 104|0; - $1 = sp + 100|0; - $2 = sp + 96|0; - $3 = sp + 92|0; - $4 = sp + 88|0; - $5 = sp + 84|0; - $6 = sp + 80|0; - $rc = sp + 76|0; - $szPage = sp + 72|0; - $pIter = sp + 68|0; - $iDbpage = sp + 64|0; - $iFrame = sp + 60|0; - $mxSafeFrame = sp + 56|0; - $mxPage = sp + 52|0; - $i = sp + 48|0; - $pInfo = sp + 44|0; - $xBusy = sp + 40|0; - $y = sp + 36|0; - $nSize = sp + 24|0; - $nBackfill = sp + 32|0; - $nReq = sp + 16|0; - $iOffset = sp + 8|0; - $szDb = sp; - HEAP32[$1>>2] = $pWal; - HEAP32[$2>>2] = $eMode; - HEAP32[$3>>2] = $xBusyCall; - HEAP32[$4>>2] = $pBusyArg; - HEAP32[$5>>2] = $sync_flags; - HEAP32[$6>>2] = $zBuf; - HEAP32[$pIter>>2] = 0; - HEAP32[$iDbpage>>2] = 0; - HEAP32[$iFrame>>2] = 0; - HEAP32[$xBusy>>2] = 0; - $7 = HEAP32[$1>>2]|0; - $8 = (_walPagesize($7)|0); - HEAP32[$szPage>>2] = $8; - $9 = HEAP32[$1>>2]|0; - $10 = (_walCkptInfo($9)|0); - HEAP32[$pInfo>>2] = $10; - $11 = HEAP32[$pInfo>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 52|0); - $15 = (($14) + 16|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($12>>>0)>=($16>>>0); - if ($17) { - HEAP32[$0>>2] = 0; - $262 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($262|0); - } - $18 = HEAP32[$1>>2]|0; - $19 = (_walIteratorInit($18,$pIter)|0); - HEAP32[$rc>>2] = $19; - $20 = HEAP32[$rc>>2]|0; - $21 = ($20|0)!=(0); - if ($21) { - $22 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $22; - $262 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($262|0); - } - $23 = HEAP32[$2>>2]|0; - $24 = ($23|0)!=(0); - if ($24) { - $25 = HEAP32[$3>>2]|0; - HEAP32[$xBusy>>2] = $25; - } - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 52|0); - $28 = (($27) + 16|0); - $29 = HEAP32[$28>>2]|0; - HEAP32[$mxSafeFrame>>2] = $29; - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 52|0); - $32 = (($31) + 20|0); - $33 = HEAP32[$32>>2]|0; - HEAP32[$mxPage>>2] = $33; - HEAP32[$i>>2] = 1; - L12: while(1) { - $34 = HEAP32[$i>>2]|0; - $35 = ($34|0)<(5); - if (!($35)) { - label = 15; - break; - } - $36 = HEAP32[$i>>2]|0; - $37 = HEAP32[$pInfo>>2]|0; - $38 = (($37) + 4|0); - $39 = (($38) + ($36<<2)|0); - $40 = HEAP32[$39>>2]|0; - HEAP32[$y>>2] = $40; - $41 = HEAP32[$mxSafeFrame>>2]|0; - $42 = HEAP32[$y>>2]|0; - $43 = ($41>>>0)>($42>>>0); - do { - if ($43) { - $44 = HEAP32[$1>>2]|0; - $45 = HEAP32[$xBusy>>2]|0; - $46 = HEAP32[$4>>2]|0; - $47 = HEAP32[$i>>2]|0; - $48 = (3 + ($47))|0; - $49 = (_walBusyLock($44,$45,$46,$48,1)|0); - HEAP32[$rc>>2] = $49; - $50 = HEAP32[$rc>>2]|0; - $51 = ($50|0)==(0); - if ($51) { - $52 = HEAP32[$i>>2]|0; - $53 = ($52|0)==(1); - $54 = HEAP32[$mxSafeFrame>>2]|0; - $55 = $53 ? $54 : -1; - $56 = HEAP32[$i>>2]|0; - $57 = HEAP32[$pInfo>>2]|0; - $58 = (($57) + 4|0); - $59 = (($58) + ($56<<2)|0); - HEAP32[$59>>2] = $55; - $60 = HEAP32[$1>>2]|0; - $61 = HEAP32[$i>>2]|0; - $62 = (3 + ($61))|0; - _walUnlockExclusive($60,$62,1); - break; - } - $63 = HEAP32[$rc>>2]|0; - $64 = ($63|0)==(5); - if (!($64)) { - break L12; - } - $65 = HEAP32[$y>>2]|0; - HEAP32[$mxSafeFrame>>2] = $65; - HEAP32[$xBusy>>2] = 0; - } - } while(0); - $66 = HEAP32[$i>>2]|0; - $67 = (($66) + 1)|0; - HEAP32[$i>>2] = $67; - } - do { - if ((label|0) == 15) { - $68 = HEAP32[$pInfo>>2]|0; - $69 = HEAP32[$68>>2]|0; - $70 = HEAP32[$mxSafeFrame>>2]|0; - $71 = ($69>>>0)<($70>>>0); - if ($71) { - $72 = HEAP32[$1>>2]|0; - $73 = HEAP32[$xBusy>>2]|0; - $74 = HEAP32[$4>>2]|0; - $75 = (_walBusyLock($72,$73,$74,3,1)|0); - HEAP32[$rc>>2] = $75; - $76 = ($75|0)==(0); - if ($76) { - $77 = HEAP32[$pInfo>>2]|0; - $78 = HEAP32[$77>>2]|0; - HEAP32[$nBackfill>>2] = $78; - $79 = HEAP32[$5>>2]|0; - $80 = ($79|0)!=(0); - if ($80) { - $81 = HEAP32[$1>>2]|0; - $82 = (($81) + 8|0); - $83 = HEAP32[$82>>2]|0; - $84 = HEAP32[$5>>2]|0; - $85 = (_sqlite3OsSync($83,$84)|0); - HEAP32[$rc>>2] = $85; - } - $86 = HEAP32[$rc>>2]|0; - $87 = ($86|0)==(0); - if ($87) { - $88 = HEAP32[$mxPage>>2]|0; - $89 = HEAP32[$szPage>>2]|0; - $90 = ($89|0)<(0); - $91 = $90 << 31 >> 31; - $92 = (___muldi3(($88|0),0,($89|0),($91|0))|0); - $93 = tempRet0; - $94 = $nReq; - $95 = $94; - HEAP32[$95>>2] = $92; - $96 = (($94) + 4)|0; - $97 = $96; - HEAP32[$97>>2] = $93; - $98 = HEAP32[$1>>2]|0; - $99 = (($98) + 4|0); - $100 = HEAP32[$99>>2]|0; - $101 = (_sqlite3OsFileSize($100,$nSize)|0); - HEAP32[$rc>>2] = $101; - $102 = HEAP32[$rc>>2]|0; - $103 = ($102|0)==(0); - if ($103) { - $104 = $nSize; - $105 = $104; - $106 = HEAP32[$105>>2]|0; - $107 = (($104) + 4)|0; - $108 = $107; - $109 = HEAP32[$108>>2]|0; - $110 = $nReq; - $111 = $110; - $112 = HEAP32[$111>>2]|0; - $113 = (($110) + 4)|0; - $114 = $113; - $115 = HEAP32[$114>>2]|0; - $116 = ($109|0)<($115|0); - $117 = ($109|0)==($115|0); - $118 = ($106>>>0)<($112>>>0); - $119 = $117 & $118; - $120 = $116 | $119; - if ($120) { - $121 = HEAP32[$1>>2]|0; - $122 = (($121) + 4|0); - $123 = HEAP32[$122>>2]|0; - _sqlite3OsFileControlHint($123,5,$nReq); - } - } - } - L34: while(1) { - $$old = HEAP32[$rc>>2]|0; - $$old1 = ($$old|0)==(0); - if (!($$old1)) { - break; - } - while(1) { - $124 = HEAP32[$pIter>>2]|0; - $125 = (_walIteratorNext($124,$iDbpage,$iFrame)|0); - $126 = (0)==($125|0); - if (!($126)) { - break L34; - } - $127 = HEAP32[$iFrame>>2]|0; - $128 = HEAP32[$nBackfill>>2]|0; - $129 = ($127>>>0)<=($128>>>0); - if ($129) { - continue L34; - } - $130 = HEAP32[$iFrame>>2]|0; - $131 = HEAP32[$mxSafeFrame>>2]|0; - $132 = ($130>>>0)>($131>>>0); - if ($132) { - continue L34; - } - $133 = HEAP32[$iDbpage>>2]|0; - $134 = HEAP32[$mxPage>>2]|0; - $135 = ($133>>>0)>($134>>>0); - if ($135) { - continue L34; - } - $136 = HEAP32[$iFrame>>2]|0; - $137 = (($136) - 1)|0; - $138 = HEAP32[$szPage>>2]|0; - $139 = (($138) + 24)|0; - $140 = ($139|0)<(0); - $141 = $140 << 31 >> 31; - $142 = (___muldi3(($137|0),0,($139|0),($141|0))|0); - $143 = tempRet0; - $144 = (_i64Add(32,0,($142|0),($143|0))|0); - $145 = tempRet0; - $146 = (_i64Add(($144|0),($145|0),24,0)|0); - $147 = tempRet0; - $148 = $iOffset; - $149 = $148; - HEAP32[$149>>2] = $146; - $150 = (($148) + 4)|0; - $151 = $150; - HEAP32[$151>>2] = $147; - $152 = HEAP32[$1>>2]|0; - $153 = (($152) + 8|0); - $154 = HEAP32[$153>>2]|0; - $155 = HEAP32[$6>>2]|0; - $156 = HEAP32[$szPage>>2]|0; - $157 = $iOffset; - $158 = $157; - $159 = HEAP32[$158>>2]|0; - $160 = (($157) + 4)|0; - $161 = $160; - $162 = HEAP32[$161>>2]|0; - $163 = (_sqlite3OsRead($154,$155,$156,$159,$162)|0); - HEAP32[$rc>>2] = $163; - $164 = HEAP32[$rc>>2]|0; - $165 = ($164|0)!=(0); - if ($165) { - break L34; - } - $166 = HEAP32[$iDbpage>>2]|0; - $167 = (($166) - 1)|0; - $168 = HEAP32[$szPage>>2]|0; - $169 = ($168|0)<(0); - $170 = $169 << 31 >> 31; - $171 = (___muldi3(($167|0),0,($168|0),($170|0))|0); - $172 = tempRet0; - $173 = $iOffset; - $174 = $173; - HEAP32[$174>>2] = $171; - $175 = (($173) + 4)|0; - $176 = $175; - HEAP32[$176>>2] = $172; - $177 = HEAP32[$1>>2]|0; - $178 = (($177) + 4|0); - $179 = HEAP32[$178>>2]|0; - $180 = HEAP32[$6>>2]|0; - $181 = HEAP32[$szPage>>2]|0; - $182 = $iOffset; - $183 = $182; - $184 = HEAP32[$183>>2]|0; - $185 = (($182) + 4)|0; - $186 = $185; - $187 = HEAP32[$186>>2]|0; - $188 = (_sqlite3OsWrite($179,$180,$181,$184,$187)|0); - HEAP32[$rc>>2] = $188; - $189 = HEAP32[$rc>>2]|0; - $190 = ($189|0)==(0); - $191 = HEAP32[$rc>>2]|0; - $192 = ($191|0)==(0); - $or$cond = $190 & $192; - if (!($or$cond)) { - break L34; - } - } - } - $193 = HEAP32[$rc>>2]|0; - $194 = ($193|0)==(0); - if ($194) { - $195 = HEAP32[$mxSafeFrame>>2]|0; - $196 = HEAP32[$1>>2]|0; - $197 = (_walIndexHdr($196)|0); - $198 = (($197) + 16|0); - $199 = HEAP32[$198>>2]|0; - $200 = ($195|0)==($199|0); - if ($200) { - $201 = HEAP32[$1>>2]|0; - $202 = (($201) + 52|0); - $203 = (($202) + 20|0); - $204 = HEAP32[$203>>2]|0; - $205 = HEAP32[$szPage>>2]|0; - $206 = ($205|0)<(0); - $207 = $206 << 31 >> 31; - $208 = (___muldi3(($204|0),0,($205|0),($207|0))|0); - $209 = tempRet0; - $210 = $szDb; - $211 = $210; - HEAP32[$211>>2] = $208; - $212 = (($210) + 4)|0; - $213 = $212; - HEAP32[$213>>2] = $209; - $214 = HEAP32[$1>>2]|0; - $215 = (($214) + 4|0); - $216 = HEAP32[$215>>2]|0; - $217 = $szDb; - $218 = $217; - $219 = HEAP32[$218>>2]|0; - $220 = (($217) + 4)|0; - $221 = $220; - $222 = HEAP32[$221>>2]|0; - $223 = (_sqlite3OsTruncate($216,$219,$222)|0); - HEAP32[$rc>>2] = $223; - $224 = HEAP32[$rc>>2]|0; - $225 = ($224|0)==(0); - if ($225) { - $226 = HEAP32[$5>>2]|0; - $227 = ($226|0)!=(0); - if ($227) { - $228 = HEAP32[$1>>2]|0; - $229 = (($228) + 4|0); - $230 = HEAP32[$229>>2]|0; - $231 = HEAP32[$5>>2]|0; - $232 = (_sqlite3OsSync($230,$231)|0); - HEAP32[$rc>>2] = $232; - } - } - } - $233 = HEAP32[$rc>>2]|0; - $234 = ($233|0)==(0); - if ($234) { - $235 = HEAP32[$mxSafeFrame>>2]|0; - $236 = HEAP32[$pInfo>>2]|0; - HEAP32[$236>>2] = $235; - } - } - $237 = HEAP32[$1>>2]|0; - _walUnlockExclusive($237,3,1); - } - } - $238 = HEAP32[$rc>>2]|0; - $239 = ($238|0)==(5); - if ($239) { - HEAP32[$rc>>2] = 0; - } - $240 = HEAP32[$rc>>2]|0; - $241 = ($240|0)==(0); - if ($241) { - $242 = HEAP32[$2>>2]|0; - $243 = ($242|0)!=(0); - if ($243) { - $244 = HEAP32[$pInfo>>2]|0; - $245 = HEAP32[$244>>2]|0; - $246 = HEAP32[$1>>2]|0; - $247 = (($246) + 52|0); - $248 = (($247) + 16|0); - $249 = HEAP32[$248>>2]|0; - $250 = ($245>>>0)<($249>>>0); - if ($250) { - HEAP32[$rc>>2] = 5; - break; - } - $251 = HEAP32[$2>>2]|0; - $252 = ($251|0)==(2); - if ($252) { - $253 = HEAP32[$1>>2]|0; - $254 = HEAP32[$xBusy>>2]|0; - $255 = HEAP32[$4>>2]|0; - $256 = (_walBusyLock($253,$254,$255,4,4)|0); - HEAP32[$rc>>2] = $256; - $257 = HEAP32[$rc>>2]|0; - $258 = ($257|0)==(0); - if ($258) { - $259 = HEAP32[$1>>2]|0; - _walUnlockExclusive($259,4,4); - } - } - } - } - } - } while(0); - $260 = HEAP32[$pIter>>2]|0; - _walIteratorFree($260); - $261 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $261; - $262 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($262|0); -} -function _walCkptInfo($pWal) { - $pWal = $pWal|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pWal; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 32|0); - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (($4) + 96|0); - STACKTOP = sp;return ($5|0); -} -function _walIteratorInit($pWal,$pp) { - $pWal = $pWal|0; - $pp = $pp|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; - var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; - var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; - var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; - var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aHash = 0, $aIndex = 0, $aPgno = 0, $aTmp = 0; - var $i = 0, $iLast = 0, $iZero = 0, $j = 0, $nByte = 0, $nEntry = 0, $nSegment = 0, $p = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 60|0; - $1 = sp + 56|0; - $2 = sp + 52|0; - $p = sp + 48|0; - $nSegment = sp + 44|0; - $iLast = sp + 40|0; - $nByte = sp + 36|0; - $i = sp + 32|0; - $aTmp = sp + 28|0; - $rc = sp + 24|0; - $aHash = sp + 20|0; - $iZero = sp + 16|0; - $aPgno = sp + 12|0; - $j = sp + 8|0; - $nEntry = sp + 4|0; - $aIndex = sp; - HEAP32[$1>>2] = $pWal; - HEAP32[$2>>2] = $pp; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 52|0); - $5 = (($4) + 16|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$iLast>>2] = $6; - $7 = HEAP32[$iLast>>2]|0; - $8 = (_walFramePage($7)|0); - $9 = (($8) + 1)|0; - HEAP32[$nSegment>>2] = $9; - $10 = HEAP32[$nSegment>>2]|0; - $11 = (($10) - 1)|0; - $12 = ($11*20)|0; - $13 = (28 + ($12))|0; - $14 = HEAP32[$iLast>>2]|0; - $15 = $14<<1; - $16 = (($13) + ($15))|0; - HEAP32[$nByte>>2] = $16; - $17 = HEAP32[$nByte>>2]|0; - $18 = (_sqlite3ScratchMalloc($17)|0); - HEAP32[$p>>2] = $18; - $19 = HEAP32[$p>>2]|0; - $20 = ($19|0)!=(0|0); - if (!($20)) { - HEAP32[$0>>2] = 7; - $115 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($115|0); - } - $21 = HEAP32[$p>>2]|0; - $22 = HEAP32[$nByte>>2]|0; - _memset(($21|0),0,($22|0))|0; - $23 = HEAP32[$nSegment>>2]|0; - $24 = HEAP32[$p>>2]|0; - $25 = (($24) + 4|0); - HEAP32[$25>>2] = $23; - $26 = HEAP32[$iLast>>2]|0; - $27 = ($26>>>0)>(4096); - $28 = HEAP32[$iLast>>2]|0; - $29 = $27 ? 4096 : $28; - $30 = $29<<1; - $31 = (_sqlite3ScratchMalloc($30)|0); - HEAP32[$aTmp>>2] = $31; - $32 = HEAP32[$aTmp>>2]|0; - $33 = ($32|0)!=(0|0); - if (!($33)) { - HEAP32[$rc>>2] = 7; - } - HEAP32[$i>>2] = 0; - while(1) { - $34 = HEAP32[$rc>>2]|0; - $35 = ($34|0)==(0); - if (!($35)) { - break; - } - $36 = HEAP32[$i>>2]|0; - $37 = HEAP32[$nSegment>>2]|0; - $38 = ($36|0)<($37|0); - if (!($38)) { - break; - } - $39 = HEAP32[$1>>2]|0; - $40 = HEAP32[$i>>2]|0; - $41 = (_walHashGet($39,$40,$aHash,$aPgno,$iZero)|0); - HEAP32[$rc>>2] = $41; - $42 = HEAP32[$rc>>2]|0; - $43 = ($42|0)==(0); - if ($43) { - $44 = HEAP32[$aPgno>>2]|0; - $45 = (($44) + 4|0); - HEAP32[$aPgno>>2] = $45; - $46 = HEAP32[$i>>2]|0; - $47 = (($46) + 1)|0; - $48 = HEAP32[$nSegment>>2]|0; - $49 = ($47|0)==($48|0); - if ($49) { - $50 = HEAP32[$iLast>>2]|0; - $51 = HEAP32[$iZero>>2]|0; - $52 = (($50) - ($51))|0; - HEAP32[$nEntry>>2] = $52; - } else { - $53 = HEAP32[$aHash>>2]|0; - $54 = HEAP32[$aPgno>>2]|0; - $55 = $53; - $56 = $54; - $57 = (($55) - ($56))|0; - $58 = (($57|0) / 4)&-1; - HEAP32[$nEntry>>2] = $58; - } - $59 = HEAP32[$iZero>>2]|0; - $60 = HEAP32[$p>>2]|0; - $61 = (($60) + 4|0); - $62 = HEAP32[$61>>2]|0; - $63 = HEAP32[$p>>2]|0; - $64 = (($63) + 8|0); - $65 = (($64) + (($62*20)|0)|0); - $66 = (($65) + ($59<<1)|0); - HEAP32[$aIndex>>2] = $66; - $67 = HEAP32[$iZero>>2]|0; - $68 = (($67) + 1)|0; - HEAP32[$iZero>>2] = $68; - HEAP32[$j>>2] = 0; - while(1) { - $69 = HEAP32[$j>>2]|0; - $70 = HEAP32[$nEntry>>2]|0; - $71 = ($69|0)<($70|0); - if (!($71)) { - break; - } - $72 = HEAP32[$j>>2]|0; - $73 = $72&65535; - $74 = HEAP32[$j>>2]|0; - $75 = HEAP32[$aIndex>>2]|0; - $76 = (($75) + ($74<<1)|0); - HEAP16[$76>>1] = $73; - $77 = HEAP32[$j>>2]|0; - $78 = (($77) + 1)|0; - HEAP32[$j>>2] = $78; - } - $79 = HEAP32[$aPgno>>2]|0; - $80 = HEAP32[$aTmp>>2]|0; - $81 = HEAP32[$aIndex>>2]|0; - _walMergesort($79,$80,$81,$nEntry); - $82 = HEAP32[$iZero>>2]|0; - $83 = HEAP32[$i>>2]|0; - $84 = HEAP32[$p>>2]|0; - $85 = (($84) + 8|0); - $86 = (($85) + (($83*20)|0)|0); - $87 = (($86) + 16|0); - HEAP32[$87>>2] = $82; - $88 = HEAP32[$nEntry>>2]|0; - $89 = HEAP32[$i>>2]|0; - $90 = HEAP32[$p>>2]|0; - $91 = (($90) + 8|0); - $92 = (($91) + (($89*20)|0)|0); - $93 = (($92) + 12|0); - HEAP32[$93>>2] = $88; - $94 = HEAP32[$aIndex>>2]|0; - $95 = HEAP32[$i>>2]|0; - $96 = HEAP32[$p>>2]|0; - $97 = (($96) + 8|0); - $98 = (($97) + (($95*20)|0)|0); - $99 = (($98) + 4|0); - HEAP32[$99>>2] = $94; - $100 = HEAP32[$aPgno>>2]|0; - $101 = HEAP32[$i>>2]|0; - $102 = HEAP32[$p>>2]|0; - $103 = (($102) + 8|0); - $104 = (($103) + (($101*20)|0)|0); - $105 = (($104) + 8|0); - HEAP32[$105>>2] = $100; - } - $106 = HEAP32[$i>>2]|0; - $107 = (($106) + 1)|0; - HEAP32[$i>>2] = $107; - } - $108 = HEAP32[$aTmp>>2]|0; - _sqlite3ScratchFree($108); - $109 = HEAP32[$rc>>2]|0; - $110 = ($109|0)!=(0); - if ($110) { - $111 = HEAP32[$p>>2]|0; - _walIteratorFree($111); - } - $112 = HEAP32[$p>>2]|0; - $113 = HEAP32[$2>>2]|0; - HEAP32[$113>>2] = $112; - $114 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $114; - $115 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($115|0); -} -function _walIteratorNext($p,$piPage,$piFrame) { - $p = $p|0; - $piPage = $piPage|0; - $piFrame = $piFrame|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $iMin = 0, $iPg = 0, $iRet = 0, $pSegment = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $iMin = sp + 16|0; - $iRet = sp + 12|0; - $i = sp + 8|0; - $pSegment = sp + 4|0; - $iPg = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $piPage; - HEAP32[$2>>2] = $piFrame; - HEAP32[$iRet>>2] = -1; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$iMin>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 4|0); - $7 = HEAP32[$6>>2]|0; - $8 = (($7) - 1)|0; - HEAP32[$i>>2] = $8; - while(1) { - $9 = HEAP32[$i>>2]|0; - $10 = ($9|0)>=(0); - if (!($10)) { - break; - } - $11 = HEAP32[$i>>2]|0; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 8|0); - $14 = (($13) + (($11*20)|0)|0); - HEAP32[$pSegment>>2] = $14; - while(1) { - $15 = HEAP32[$pSegment>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$pSegment>>2]|0; - $18 = (($17) + 12|0); - $19 = HEAP32[$18>>2]|0; - $20 = ($16|0)<($19|0); - if (!($20)) { - break; - } - $21 = HEAP32[$pSegment>>2]|0; - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$pSegment>>2]|0; - $24 = (($23) + 4|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + ($22<<1)|0); - $27 = HEAP16[$26>>1]|0; - $28 = $27&65535; - $29 = HEAP32[$pSegment>>2]|0; - $30 = (($29) + 8|0); - $31 = HEAP32[$30>>2]|0; - $32 = (($31) + ($28<<2)|0); - $33 = HEAP32[$32>>2]|0; - HEAP32[$iPg>>2] = $33; - $34 = HEAP32[$iPg>>2]|0; - $35 = HEAP32[$iMin>>2]|0; - $36 = ($34>>>0)>($35>>>0); - if ($36) { - label = 6; - break; - } - $54 = HEAP32[$pSegment>>2]|0; - $55 = HEAP32[$54>>2]|0; - $56 = (($55) + 1)|0; - HEAP32[$54>>2] = $56; - } - if ((label|0) == 6) { - label = 0; - $37 = HEAP32[$iPg>>2]|0; - $38 = HEAP32[$iRet>>2]|0; - $39 = ($37>>>0)<($38>>>0); - if ($39) { - $40 = HEAP32[$iPg>>2]|0; - HEAP32[$iRet>>2] = $40; - $41 = HEAP32[$pSegment>>2]|0; - $42 = (($41) + 16|0); - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$pSegment>>2]|0; - $45 = HEAP32[$44>>2]|0; - $46 = HEAP32[$pSegment>>2]|0; - $47 = (($46) + 4|0); - $48 = HEAP32[$47>>2]|0; - $49 = (($48) + ($45<<1)|0); - $50 = HEAP16[$49>>1]|0; - $51 = $50&65535; - $52 = (($43) + ($51))|0; - $53 = HEAP32[$2>>2]|0; - HEAP32[$53>>2] = $52; - } - } - $57 = HEAP32[$i>>2]|0; - $58 = (($57) + -1)|0; - HEAP32[$i>>2] = $58; - } - $59 = HEAP32[$iRet>>2]|0; - $60 = HEAP32[$0>>2]|0; - HEAP32[$60>>2] = $59; - $61 = HEAP32[$1>>2]|0; - HEAP32[$61>>2] = $59; - $62 = HEAP32[$iRet>>2]|0; - $63 = ($62|0)==(-1); - $64 = $63&1; - STACKTOP = sp;return ($64|0); -} -function _walIteratorFree($p) { - $p = $p|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - _sqlite3ScratchFree($1); - STACKTOP = sp;return; -} -function _walMergesort($aContent,$aBuffer,$aList,$pnList) { - $aContent = $aContent|0; - $aBuffer = $aBuffer|0; - $aList = $aList|0; - $pnList = $pnList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aMerge = 0; - var $aSub = 0, $iList = 0, $iSub = 0, $nList = 0, $nMerge = 0, $p = 0, $p1 = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 160|0; - $0 = sp + 144|0; - $1 = sp + 140|0; - $2 = sp + 136|0; - $3 = sp + 132|0; - $nList = sp + 128|0; - $nMerge = sp + 124|0; - $aMerge = sp + 120|0; - $iList = sp + 116|0; - $iSub = sp + 112|0; - $aSub = sp + 8|0; - $p = sp + 4|0; - $p1 = sp; - HEAP32[$0>>2] = $aContent; - HEAP32[$1>>2] = $aBuffer; - HEAP32[$2>>2] = $aList; - HEAP32[$3>>2] = $pnList; - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$nList>>2] = $5; - HEAP32[$nMerge>>2] = 0; - HEAP32[$aMerge>>2] = 0; - HEAP32[$iSub>>2] = 0; - dest=$aSub+0|0; stop=dest+104|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - HEAP32[$iList>>2] = 0; - while(1) { - $6 = HEAP32[$iList>>2]|0; - $7 = HEAP32[$nList>>2]|0; - $8 = ($6|0)<($7|0); - if (!($8)) { - break; - } - HEAP32[$nMerge>>2] = 1; - $9 = HEAP32[$iList>>2]|0; - $10 = HEAP32[$2>>2]|0; - $11 = (($10) + ($9<<1)|0); - HEAP32[$aMerge>>2] = $11; - HEAP32[$iSub>>2] = 0; - while(1) { - $12 = HEAP32[$iList>>2]|0; - $13 = HEAP32[$iSub>>2]|0; - $14 = 1 << $13; - $15 = $12 & $14; - $16 = ($15|0)!=(0); - if (!($16)) { - break; - } - $17 = HEAP32[$iSub>>2]|0; - $18 = (($aSub) + ($17<<3)|0); - HEAP32[$p>>2] = $18; - $19 = HEAP32[$0>>2]|0; - $20 = HEAP32[$p>>2]|0; - $21 = (($20) + 4|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$p>>2]|0; - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$1>>2]|0; - _walMerge($19,$22,$24,$aMerge,$nMerge,$25); - $26 = HEAP32[$iSub>>2]|0; - $27 = (($26) + 1)|0; - HEAP32[$iSub>>2] = $27; - } - $28 = HEAP32[$aMerge>>2]|0; - $29 = HEAP32[$iSub>>2]|0; - $30 = (($aSub) + ($29<<3)|0); - $31 = (($30) + 4|0); - HEAP32[$31>>2] = $28; - $32 = HEAP32[$nMerge>>2]|0; - $33 = HEAP32[$iSub>>2]|0; - $34 = (($aSub) + ($33<<3)|0); - HEAP32[$34>>2] = $32; - $35 = HEAP32[$iList>>2]|0; - $36 = (($35) + 1)|0; - HEAP32[$iList>>2] = $36; - } - $37 = HEAP32[$iSub>>2]|0; - $38 = (($37) + 1)|0; - HEAP32[$iSub>>2] = $38; - while(1) { - $39 = HEAP32[$iSub>>2]|0; - $40 = ($39|0)<(13); - if (!($40)) { - break; - } - $41 = HEAP32[$nList>>2]|0; - $42 = HEAP32[$iSub>>2]|0; - $43 = 1 << $42; - $44 = $41 & $43; - $45 = ($44|0)!=(0); - if ($45) { - $46 = HEAP32[$iSub>>2]|0; - $47 = (($aSub) + ($46<<3)|0); - HEAP32[$p1>>2] = $47; - $48 = HEAP32[$0>>2]|0; - $49 = HEAP32[$p1>>2]|0; - $50 = (($49) + 4|0); - $51 = HEAP32[$50>>2]|0; - $52 = HEAP32[$p1>>2]|0; - $53 = HEAP32[$52>>2]|0; - $54 = HEAP32[$1>>2]|0; - _walMerge($48,$51,$53,$aMerge,$nMerge,$54); - } - $55 = HEAP32[$iSub>>2]|0; - $56 = (($55) + 1)|0; - HEAP32[$iSub>>2] = $56; - } - $57 = HEAP32[$nMerge>>2]|0; - $58 = HEAP32[$3>>2]|0; - HEAP32[$58>>2] = $57; - STACKTOP = sp;return; -} -function _walMerge($aContent,$aLeft,$nLeft,$paRight,$pnRight,$aTmp) { - $aContent = $aContent|0; - $aLeft = $aLeft|0; - $nLeft = $nLeft|0; - $paRight = $paRight|0; - $pnRight = $pnRight|0; - $aTmp = $aTmp|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $9 = 0, $aRight = 0, $dbpage = 0, $iLeft = 0, $iOut = 0, $iRight = 0, $logpage = 0, $nRight = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $4 = sp + 28|0; - $5 = sp + 24|0; - $iLeft = sp + 20|0; - $iRight = sp + 16|0; - $iOut = sp + 12|0; - $nRight = sp + 8|0; - $aRight = sp + 4|0; - $logpage = sp + 48|0; - $dbpage = sp; - HEAP32[$0>>2] = $aContent; - HEAP32[$1>>2] = $aLeft; - HEAP32[$2>>2] = $nLeft; - HEAP32[$3>>2] = $paRight; - HEAP32[$4>>2] = $pnRight; - HEAP32[$5>>2] = $aTmp; - HEAP32[$iLeft>>2] = 0; - HEAP32[$iRight>>2] = 0; - HEAP32[$iOut>>2] = 0; - $6 = HEAP32[$4>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$nRight>>2] = $7; - $8 = HEAP32[$3>>2]|0; - $9 = HEAP32[$8>>2]|0; - HEAP32[$aRight>>2] = $9; - while(1) { - $10 = HEAP32[$iRight>>2]|0; - $11 = HEAP32[$nRight>>2]|0; - $12 = ($10|0)<($11|0); - if (!($12)) { - $13 = HEAP32[$iLeft>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = ($13|0)<($14|0); - if (!($15)) { - break; - } - } - $16 = HEAP32[$iLeft>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = ($16|0)<($17|0); - do { - if ($18) { - $19 = HEAP32[$iRight>>2]|0; - $20 = HEAP32[$nRight>>2]|0; - $21 = ($19|0)>=($20|0); - if (!($21)) { - $22 = HEAP32[$iLeft>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + ($22<<1)|0); - $25 = HEAP16[$24>>1]|0; - $26 = $25&65535; - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + ($26<<2)|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$iRight>>2]|0; - $31 = HEAP32[$aRight>>2]|0; - $32 = (($31) + ($30<<1)|0); - $33 = HEAP16[$32>>1]|0; - $34 = $33&65535; - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + ($34<<2)|0); - $37 = HEAP32[$36>>2]|0; - $38 = ($29>>>0)<($37>>>0); - if (!($38)) { - label = 8; - break; - } - } - $39 = HEAP32[$iLeft>>2]|0; - $40 = (($39) + 1)|0; - HEAP32[$iLeft>>2] = $40; - $41 = HEAP32[$1>>2]|0; - $42 = (($41) + ($39<<1)|0); - $43 = HEAP16[$42>>1]|0; - HEAP16[$logpage>>1] = $43; - } else { - label = 8; - } - } while(0); - if ((label|0) == 8) { - label = 0; - $44 = HEAP32[$iRight>>2]|0; - $45 = (($44) + 1)|0; - HEAP32[$iRight>>2] = $45; - $46 = HEAP32[$aRight>>2]|0; - $47 = (($46) + ($44<<1)|0); - $48 = HEAP16[$47>>1]|0; - HEAP16[$logpage>>1] = $48; - } - $49 = HEAP16[$logpage>>1]|0; - $50 = $49&65535; - $51 = HEAP32[$0>>2]|0; - $52 = (($51) + ($50<<2)|0); - $53 = HEAP32[$52>>2]|0; - HEAP32[$dbpage>>2] = $53; - $54 = HEAP16[$logpage>>1]|0; - $55 = HEAP32[$iOut>>2]|0; - $56 = (($55) + 1)|0; - HEAP32[$iOut>>2] = $56; - $57 = HEAP32[$5>>2]|0; - $58 = (($57) + ($55<<1)|0); - HEAP16[$58>>1] = $54; - $59 = HEAP32[$iLeft>>2]|0; - $60 = HEAP32[$2>>2]|0; - $61 = ($59|0)<($60|0); - if (!($61)) { - continue; - } - $62 = HEAP32[$iLeft>>2]|0; - $63 = HEAP32[$1>>2]|0; - $64 = (($63) + ($62<<1)|0); - $65 = HEAP16[$64>>1]|0; - $66 = $65&65535; - $67 = HEAP32[$0>>2]|0; - $68 = (($67) + ($66<<2)|0); - $69 = HEAP32[$68>>2]|0; - $70 = HEAP32[$dbpage>>2]|0; - $71 = ($69|0)==($70|0); - if (!($71)) { - continue; - } - $72 = HEAP32[$iLeft>>2]|0; - $73 = (($72) + 1)|0; - HEAP32[$iLeft>>2] = $73; - } - $74 = HEAP32[$1>>2]|0; - $75 = HEAP32[$3>>2]|0; - HEAP32[$75>>2] = $74; - $76 = HEAP32[$iOut>>2]|0; - $77 = HEAP32[$4>>2]|0; - HEAP32[$77>>2] = $76; - $78 = HEAP32[$1>>2]|0; - $79 = HEAP32[$5>>2]|0; - $80 = HEAP32[$iOut>>2]|0; - $81 = $80<<1; - _memcpy(($78|0),($79|0),($81|0))|0; - STACKTOP = sp;return; -} -function _walIndexTryHdr($pWal,$pChanged) { - $pWal = $pWal|0; - $pChanged = $pChanged|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aCksum = 0, $aHdr = 0, $h1 = 0, $h2 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $0 = sp + 120|0; - $1 = sp + 116|0; - $2 = sp + 112|0; - $aCksum = sp + 104|0; - $h1 = sp + 56|0; - $h2 = sp + 8|0; - $aHdr = sp; - HEAP32[$1>>2] = $pWal; - HEAP32[$2>>2] = $pChanged; - $3 = HEAP32[$1>>2]|0; - $4 = (_walIndexHdr($3)|0); - HEAP32[$aHdr>>2] = $4; - $5 = HEAP32[$aHdr>>2]|0; - dest=$h1+0|0; src=$5+0|0; stop=dest+48|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); - $6 = HEAP32[$1>>2]|0; - _walShmBarrier($6); - $7 = HEAP32[$aHdr>>2]|0; - $8 = (($7) + 48|0); - dest=$h2+0|0; src=$8+0|0; stop=dest+48|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); - $9 = (_memcmp($h1,$h2,48)|0); - $10 = ($9|0)!=(0); - if ($10) { - HEAP32[$0>>2] = 1; - $48 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($48|0); - } - $11 = (($h1) + 12|0); - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = ($13|0)==(0); - if ($14) { - HEAP32[$0>>2] = 1; - $48 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($48|0); - } - _walChecksumBytes(1,$h1,40,0,$aCksum); - $15 = HEAP32[$aCksum>>2]|0; - $16 = (($h1) + 40|0); - $17 = HEAP32[$16>>2]|0; - $18 = ($15|0)!=($17|0); - if (!($18)) { - $19 = (($aCksum) + 4|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($h1) + 40|0); - $22 = (($21) + 4|0); - $23 = HEAP32[$22>>2]|0; - $24 = ($20|0)!=($23|0); - if (!($24)) { - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 52|0); - $27 = (_memcmp($26,$h1,48)|0); - $28 = ($27|0)!=(0); - if ($28) { - $29 = HEAP32[$2>>2]|0; - HEAP32[$29>>2] = 1; - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 52|0); - dest=$31+0|0; src=$h1+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 52|0); - $34 = (($33) + 14|0); - $35 = HEAP16[$34>>1]|0; - $36 = $35&65535; - $37 = $36 & 65024; - $38 = HEAP32[$1>>2]|0; - $39 = (($38) + 52|0); - $40 = (($39) + 14|0); - $41 = HEAP16[$40>>1]|0; - $42 = $41&65535; - $43 = $42 & 1; - $44 = $43 << 16; - $45 = (($37) + ($44))|0; - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 36|0); - HEAP32[$47>>2] = $45; - } - HEAP32[$0>>2] = 0; - $48 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($48|0); - } - } - HEAP32[$0>>2] = 1; - $48 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($48|0); -} -function _walIndexRecover($pWal) { - $pWal = $pWal|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; - var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; - var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; - var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; - var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aBuf = 0, $aData = 0, $aFrame = 0, $aFrameCksum = 0, $i = 0, $iFrame = 0, $iLock = 0, $iOffset = 0, $isValid = 0, $magic = 0, $nLock = 0; - var $nSize = 0, $nTruncate = 0, $or$cond = 0, $or$cond3 = 0, $pInfo = 0, $pgno = 0, $rc = 0, $szFrame = 0, $szPage = 0, $vararg_buffer = 0, $vararg_ptr4 = 0, $version = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 144|0; - $vararg_buffer = sp + 16|0; - $0 = sp + 96|0; - $1 = sp + 92|0; - $rc = sp + 88|0; - $nSize = sp + 8|0; - $aFrameCksum = sp + 80|0; - $iLock = sp + 76|0; - $nLock = sp + 72|0; - $aBuf = sp + 104|0; - $aFrame = sp + 68|0; - $szFrame = sp + 64|0; - $aData = sp + 60|0; - $iFrame = sp + 56|0; - $iOffset = sp; - $szPage = sp + 52|0; - $magic = sp + 48|0; - $version = sp + 44|0; - $isValid = sp + 40|0; - $pgno = sp + 36|0; - $nTruncate = sp + 32|0; - $pInfo = sp + 28|0; - $i = sp + 24|0; - HEAP32[$1>>2] = $pWal; - ;HEAP32[$aFrameCksum+0>>2]=0|0;HEAP32[$aFrameCksum+4>>2]=0|0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 45|0); - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - $6 = (1 + ($5))|0; - HEAP32[$iLock>>2] = $6; - $7 = HEAP32[$iLock>>2]|0; - $8 = (8 - ($7))|0; - HEAP32[$nLock>>2] = $8; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$iLock>>2]|0; - $11 = HEAP32[$nLock>>2]|0; - $12 = (_walLockExclusive($9,$10,$11)|0); - HEAP32[$rc>>2] = $12; - $13 = HEAP32[$rc>>2]|0; - $14 = ($13|0)!=(0); - if ($14) { - $15 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $15; - $268 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($268|0); - } - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 52|0); - dest=$17+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 8|0); - $20 = HEAP32[$19>>2]|0; - $21 = (_sqlite3OsFileSize($20,$nSize)|0); - HEAP32[$rc>>2] = $21; - $22 = HEAP32[$rc>>2]|0; - $23 = ($22|0)!=(0); - L5: do { - if (!($23)) { - $24 = $nSize; - $25 = $24; - $26 = HEAP32[$25>>2]|0; - $27 = (($24) + 4)|0; - $28 = $27; - $29 = HEAP32[$28>>2]|0; - $30 = ($29|0)>(0); - $31 = ($29|0)==(0); - $32 = ($26>>>0)>(32); - $33 = $31 & $32; - $34 = $30 | $33; - do { - if ($34) { - HEAP32[$aFrame>>2] = 0; - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 8|0); - $37 = HEAP32[$36>>2]|0; - $38 = (_sqlite3OsRead($37,$aBuf,32,0,0)|0); - HEAP32[$rc>>2] = $38; - $39 = HEAP32[$rc>>2]|0; - $40 = ($39|0)!=(0); - if ($40) { - break L5; - } - $41 = (_sqlite3Get4byte($aBuf)|0); - HEAP32[$magic>>2] = $41; - $42 = (($aBuf) + 8|0); - $43 = (_sqlite3Get4byte($42)|0); - HEAP32[$szPage>>2] = $43; - $44 = HEAP32[$magic>>2]|0; - $45 = $44 & -2; - $46 = ($45|0)!=(931071618); - if (!($46)) { - $47 = HEAP32[$szPage>>2]|0; - $48 = HEAP32[$szPage>>2]|0; - $49 = (($48) - 1)|0; - $50 = $47 & $49; - $51 = ($50|0)!=(0); - $52 = HEAP32[$szPage>>2]|0; - $53 = ($52|0)>(65536); - $or$cond = $51 | $53; - $54 = HEAP32[$szPage>>2]|0; - $55 = ($54|0)<(512); - $or$cond3 = $or$cond | $55; - if (!($or$cond3)) { - $56 = HEAP32[$magic>>2]|0; - $57 = $56 & 1; - $58 = $57&255; - $59 = HEAP32[$1>>2]|0; - $60 = (($59) + 52|0); - $61 = (($60) + 13|0); - HEAP8[$61>>0] = $58; - $62 = HEAP32[$szPage>>2]|0; - $63 = HEAP32[$1>>2]|0; - $64 = (($63) + 36|0); - HEAP32[$64>>2] = $62; - $65 = (($aBuf) + 12|0); - $66 = (_sqlite3Get4byte($65)|0); - $67 = HEAP32[$1>>2]|0; - $68 = (($67) + 104|0); - HEAP32[$68>>2] = $66; - $69 = HEAP32[$1>>2]|0; - $70 = (($69) + 52|0); - $71 = (($70) + 32|0); - $72 = (($aBuf) + 16|0); - ;HEAP8[$71+0>>0]=HEAP8[$72+0>>0]|0;HEAP8[$71+1>>0]=HEAP8[$72+1>>0]|0;HEAP8[$71+2>>0]=HEAP8[$72+2>>0]|0;HEAP8[$71+3>>0]=HEAP8[$72+3>>0]|0;HEAP8[$71+4>>0]=HEAP8[$72+4>>0]|0;HEAP8[$71+5>>0]=HEAP8[$72+5>>0]|0;HEAP8[$71+6>>0]=HEAP8[$72+6>>0]|0;HEAP8[$71+7>>0]=HEAP8[$72+7>>0]|0; - $73 = HEAP32[$1>>2]|0; - $74 = (($73) + 52|0); - $75 = (($74) + 13|0); - $76 = HEAP8[$75>>0]|0; - $77 = $76&255; - $78 = HEAP8[1392>>0]|0; - $79 = $78 << 24 >> 24; - $80 = ($79|0)==(0); - $81 = $80&1; - $82 = ($77|0)==($81|0); - $83 = $82&1; - $84 = HEAP32[$1>>2]|0; - $85 = (($84) + 52|0); - $86 = (($85) + 24|0); - _walChecksumBytes($83,$aBuf,24,0,$86); - $87 = HEAP32[$1>>2]|0; - $88 = (($87) + 52|0); - $89 = (($88) + 24|0); - $90 = HEAP32[$89>>2]|0; - $91 = (($aBuf) + 24|0); - $92 = (_sqlite3Get4byte($91)|0); - $93 = ($90|0)!=($92|0); - if (!($93)) { - $94 = HEAP32[$1>>2]|0; - $95 = (($94) + 52|0); - $96 = (($95) + 24|0); - $97 = (($96) + 4|0); - $98 = HEAP32[$97>>2]|0; - $99 = (($aBuf) + 28|0); - $100 = (_sqlite3Get4byte($99)|0); - $101 = ($98|0)!=($100|0); - if (!($101)) { - $102 = (($aBuf) + 4|0); - $103 = (_sqlite3Get4byte($102)|0); - HEAP32[$version>>2] = $103; - $104 = HEAP32[$version>>2]|0; - $105 = ($104|0)!=(3007000); - if ($105) { - $106 = (_sqlite3CantopenError(48238)|0); - HEAP32[$rc>>2] = $106; - break; - } - $107 = HEAP32[$szPage>>2]|0; - $108 = (($107) + 24)|0; - HEAP32[$szFrame>>2] = $108; - $109 = HEAP32[$szFrame>>2]|0; - $110 = (_sqlite3_malloc($109)|0); - HEAP32[$aFrame>>2] = $110; - $111 = HEAP32[$aFrame>>2]|0; - $112 = ($111|0)!=(0|0); - if (!($112)) { - HEAP32[$rc>>2] = 7; - break L5; - } - $113 = HEAP32[$aFrame>>2]|0; - $114 = (($113) + 24|0); - HEAP32[$aData>>2] = $114; - HEAP32[$iFrame>>2] = 0; - $115 = $iOffset; - $116 = $115; - HEAP32[$116>>2] = 32; - $117 = (($115) + 4)|0; - $118 = $117; - HEAP32[$118>>2] = 0; - while(1) { - $119 = $iOffset; - $120 = $119; - $121 = HEAP32[$120>>2]|0; - $122 = (($119) + 4)|0; - $123 = $122; - $124 = HEAP32[$123>>2]|0; - $125 = HEAP32[$szFrame>>2]|0; - $126 = ($125|0)<(0); - $127 = $126 << 31 >> 31; - $128 = (_i64Add(($121|0),($124|0),($125|0),($127|0))|0); - $129 = tempRet0; - $130 = $nSize; - $131 = $130; - $132 = HEAP32[$131>>2]|0; - $133 = (($130) + 4)|0; - $134 = $133; - $135 = HEAP32[$134>>2]|0; - $136 = ($129|0)<($135|0); - $137 = ($129|0)==($135|0); - $138 = ($128>>>0)<=($132>>>0); - $139 = $137 & $138; - $140 = $136 | $139; - if (!($140)) { - break; - } - $141 = HEAP32[$iFrame>>2]|0; - $142 = (($141) + 1)|0; - HEAP32[$iFrame>>2] = $142; - $143 = HEAP32[$1>>2]|0; - $144 = (($143) + 8|0); - $145 = HEAP32[$144>>2]|0; - $146 = HEAP32[$aFrame>>2]|0; - $147 = HEAP32[$szFrame>>2]|0; - $148 = $iOffset; - $149 = $148; - $150 = HEAP32[$149>>2]|0; - $151 = (($148) + 4)|0; - $152 = $151; - $153 = HEAP32[$152>>2]|0; - $154 = (_sqlite3OsRead($145,$146,$147,$150,$153)|0); - HEAP32[$rc>>2] = $154; - $155 = HEAP32[$rc>>2]|0; - $156 = ($155|0)!=(0); - if ($156) { - break; - } - $157 = HEAP32[$1>>2]|0; - $158 = HEAP32[$aData>>2]|0; - $159 = HEAP32[$aFrame>>2]|0; - $160 = (_walDecodeFrame($157,$pgno,$nTruncate,$158,$159)|0); - HEAP32[$isValid>>2] = $160; - $161 = HEAP32[$isValid>>2]|0; - $162 = ($161|0)!=(0); - if (!($162)) { - break; - } - $163 = HEAP32[$1>>2]|0; - $164 = HEAP32[$iFrame>>2]|0; - $165 = HEAP32[$pgno>>2]|0; - $166 = (_walIndexAppend($163,$164,$165)|0); - HEAP32[$rc>>2] = $166; - $167 = HEAP32[$rc>>2]|0; - $168 = ($167|0)!=(0); - if ($168) { - break; - } - $169 = HEAP32[$nTruncate>>2]|0; - $170 = ($169|0)!=(0); - if ($170) { - $171 = HEAP32[$iFrame>>2]|0; - $172 = HEAP32[$1>>2]|0; - $173 = (($172) + 52|0); - $174 = (($173) + 16|0); - HEAP32[$174>>2] = $171; - $175 = HEAP32[$nTruncate>>2]|0; - $176 = HEAP32[$1>>2]|0; - $177 = (($176) + 52|0); - $178 = (($177) + 20|0); - HEAP32[$178>>2] = $175; - $179 = HEAP32[$szPage>>2]|0; - $180 = $179 & 65280; - $181 = HEAP32[$szPage>>2]|0; - $182 = $181 >> 16; - $183 = $180 | $182; - $184 = $183&65535; - $185 = HEAP32[$1>>2]|0; - $186 = (($185) + 52|0); - $187 = (($186) + 14|0); - HEAP16[$187>>1] = $184; - $188 = HEAP32[$1>>2]|0; - $189 = (($188) + 52|0); - $190 = (($189) + 24|0); - $191 = HEAP32[$190>>2]|0; - HEAP32[$aFrameCksum>>2] = $191; - $192 = HEAP32[$1>>2]|0; - $193 = (($192) + 52|0); - $194 = (($193) + 24|0); - $195 = (($194) + 4|0); - $196 = HEAP32[$195>>2]|0; - $197 = (($aFrameCksum) + 4|0); - HEAP32[$197>>2] = $196; - } - $198 = HEAP32[$szFrame>>2]|0; - $199 = ($198|0)<(0); - $200 = $199 << 31 >> 31; - $201 = $iOffset; - $202 = $201; - $203 = HEAP32[$202>>2]|0; - $204 = (($201) + 4)|0; - $205 = $204; - $206 = HEAP32[$205>>2]|0; - $207 = (_i64Add(($203|0),($206|0),($198|0),($200|0))|0); - $208 = tempRet0; - $209 = $iOffset; - $210 = $209; - HEAP32[$210>>2] = $207; - $211 = (($209) + 4)|0; - $212 = $211; - HEAP32[$212>>2] = $208; - } - $213 = HEAP32[$aFrame>>2]|0; - _sqlite3_free($213); - } - } - } - } - } - } while(0); - $214 = HEAP32[$rc>>2]|0; - $215 = ($214|0)==(0); - if ($215) { - $216 = HEAP32[$aFrameCksum>>2]|0; - $217 = HEAP32[$1>>2]|0; - $218 = (($217) + 52|0); - $219 = (($218) + 24|0); - HEAP32[$219>>2] = $216; - $220 = (($aFrameCksum) + 4|0); - $221 = HEAP32[$220>>2]|0; - $222 = HEAP32[$1>>2]|0; - $223 = (($222) + 52|0); - $224 = (($223) + 24|0); - $225 = (($224) + 4|0); - HEAP32[$225>>2] = $221; - $226 = HEAP32[$1>>2]|0; - _walIndexWriteHdr($226); - $227 = HEAP32[$1>>2]|0; - $228 = (_walCkptInfo($227)|0); - HEAP32[$pInfo>>2] = $228; - $229 = HEAP32[$pInfo>>2]|0; - HEAP32[$229>>2] = 0; - $230 = HEAP32[$pInfo>>2]|0; - $231 = (($230) + 4|0); - HEAP32[$231>>2] = 0; - HEAP32[$i>>2] = 1; - while(1) { - $232 = HEAP32[$i>>2]|0; - $233 = ($232|0)<(5); - if (!($233)) { - break; - } - $234 = HEAP32[$i>>2]|0; - $235 = HEAP32[$pInfo>>2]|0; - $236 = (($235) + 4|0); - $237 = (($236) + ($234<<2)|0); - HEAP32[$237>>2] = -1; - $238 = HEAP32[$i>>2]|0; - $239 = (($238) + 1)|0; - HEAP32[$i>>2] = $239; - } - $240 = HEAP32[$1>>2]|0; - $241 = (($240) + 52|0); - $242 = (($241) + 16|0); - $243 = HEAP32[$242>>2]|0; - $244 = ($243|0)!=(0); - if ($244) { - $245 = HEAP32[$1>>2]|0; - $246 = (($245) + 52|0); - $247 = (($246) + 16|0); - $248 = HEAP32[$247>>2]|0; - $249 = HEAP32[$pInfo>>2]|0; - $250 = (($249) + 4|0); - $251 = (($250) + 4|0); - HEAP32[$251>>2] = $248; - } - $252 = HEAP32[$1>>2]|0; - $253 = (($252) + 52|0); - $254 = (($253) + 20|0); - $255 = HEAP32[$254>>2]|0; - $256 = ($255|0)!=(0); - if ($256) { - $257 = HEAP32[$1>>2]|0; - $258 = (($257) + 52|0); - $259 = (($258) + 16|0); - $260 = HEAP32[$259>>2]|0; - $261 = HEAP32[$1>>2]|0; - $262 = (($261) + 100|0); - $263 = HEAP32[$262>>2]|0; - HEAP32[$vararg_buffer>>2] = $260; - $vararg_ptr4 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr4>>2] = $263; - _sqlite3_log(283,4464,$vararg_buffer); - } - } - } - } while(0); - $264 = HEAP32[$1>>2]|0; - $265 = HEAP32[$iLock>>2]|0; - $266 = HEAP32[$nLock>>2]|0; - _walUnlockExclusive($264,$265,$266); - $267 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $267; - $268 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($268|0); -} -function _sqlite3CantopenError($lineno) { - $lineno = $lineno|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 8|0; - HEAP32[$0>>2] = $lineno; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3_sourceid()|0); - $3 = (($2) + 20|0); - HEAP32[$vararg_buffer>>2] = $1; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $3; - _sqlite3_log(14,4424,$vararg_buffer); - STACKTOP = sp;return 14; -} -function _walChecksumBytes($nativeCksum,$a,$nByte,$aIn,$aOut) { - $nativeCksum = $nativeCksum|0; - $a = $a|0; - $nByte = $nByte|0; - $aIn = $aIn|0; - $aOut = $aOut|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $aData = 0, $aEnd = 0, $s1 = 0, $s2 = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $4 = sp + 16|0; - $s1 = sp + 12|0; - $s2 = sp + 8|0; - $aData = sp + 4|0; - $aEnd = sp; - HEAP32[$0>>2] = $nativeCksum; - HEAP32[$1>>2] = $a; - HEAP32[$2>>2] = $nByte; - HEAP32[$3>>2] = $aIn; - HEAP32[$4>>2] = $aOut; - $5 = HEAP32[$1>>2]|0; - HEAP32[$aData>>2] = $5; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + ($6)|0); - HEAP32[$aEnd>>2] = $8; - $9 = HEAP32[$3>>2]|0; - $10 = ($9|0)!=(0|0); - if ($10) { - $11 = HEAP32[$3>>2]|0; - $12 = HEAP32[$11>>2]|0; - HEAP32[$s1>>2] = $12; - $13 = HEAP32[$3>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$s2>>2] = $15; - } else { - HEAP32[$s2>>2] = 0; - HEAP32[$s1>>2] = 0; - } - $16 = HEAP32[$0>>2]|0; - $17 = ($16|0)!=(0); - if ($17) { - while(1) { - $18 = HEAP32[$aData>>2]|0; - $19 = (($18) + 4|0); - HEAP32[$aData>>2] = $19; - $20 = HEAP32[$18>>2]|0; - $21 = HEAP32[$s2>>2]|0; - $22 = (($20) + ($21))|0; - $23 = HEAP32[$s1>>2]|0; - $24 = (($23) + ($22))|0; - HEAP32[$s1>>2] = $24; - $25 = HEAP32[$aData>>2]|0; - $26 = (($25) + 4|0); - HEAP32[$aData>>2] = $26; - $27 = HEAP32[$25>>2]|0; - $28 = HEAP32[$s1>>2]|0; - $29 = (($27) + ($28))|0; - $30 = HEAP32[$s2>>2]|0; - $31 = (($30) + ($29))|0; - HEAP32[$s2>>2] = $31; - $32 = HEAP32[$aData>>2]|0; - $33 = HEAP32[$aEnd>>2]|0; - $34 = ($32>>>0)<($33>>>0); - if (!($34)) { - break; - } - } - $90 = HEAP32[$s1>>2]|0; - $91 = HEAP32[$4>>2]|0; - HEAP32[$91>>2] = $90; - $92 = HEAP32[$s2>>2]|0; - $93 = HEAP32[$4>>2]|0; - $94 = (($93) + 4|0); - HEAP32[$94>>2] = $92; - STACKTOP = sp;return; - } else { - while(1) { - $35 = HEAP32[$aData>>2]|0; - $36 = HEAP32[$35>>2]|0; - $37 = $36 & 255; - $38 = $37 << 24; - $39 = HEAP32[$aData>>2]|0; - $40 = HEAP32[$39>>2]|0; - $41 = $40 & 65280; - $42 = $41 << 8; - $43 = (($38) + ($42))|0; - $44 = HEAP32[$aData>>2]|0; - $45 = HEAP32[$44>>2]|0; - $46 = $45 & 16711680; - $47 = $46 >>> 8; - $48 = (($43) + ($47))|0; - $49 = HEAP32[$aData>>2]|0; - $50 = HEAP32[$49>>2]|0; - $51 = $50 & -16777216; - $52 = $51 >>> 24; - $53 = (($48) + ($52))|0; - $54 = HEAP32[$s2>>2]|0; - $55 = (($53) + ($54))|0; - $56 = HEAP32[$s1>>2]|0; - $57 = (($56) + ($55))|0; - HEAP32[$s1>>2] = $57; - $58 = HEAP32[$aData>>2]|0; - $59 = (($58) + 4|0); - $60 = HEAP32[$59>>2]|0; - $61 = $60 & 255; - $62 = $61 << 24; - $63 = HEAP32[$aData>>2]|0; - $64 = (($63) + 4|0); - $65 = HEAP32[$64>>2]|0; - $66 = $65 & 65280; - $67 = $66 << 8; - $68 = (($62) + ($67))|0; - $69 = HEAP32[$aData>>2]|0; - $70 = (($69) + 4|0); - $71 = HEAP32[$70>>2]|0; - $72 = $71 & 16711680; - $73 = $72 >>> 8; - $74 = (($68) + ($73))|0; - $75 = HEAP32[$aData>>2]|0; - $76 = (($75) + 4|0); - $77 = HEAP32[$76>>2]|0; - $78 = $77 & -16777216; - $79 = $78 >>> 24; - $80 = (($74) + ($79))|0; - $81 = HEAP32[$s1>>2]|0; - $82 = (($80) + ($81))|0; - $83 = HEAP32[$s2>>2]|0; - $84 = (($83) + ($82))|0; - HEAP32[$s2>>2] = $84; - $85 = HEAP32[$aData>>2]|0; - $86 = (($85) + 8|0); - HEAP32[$aData>>2] = $86; - $87 = HEAP32[$aData>>2]|0; - $88 = HEAP32[$aEnd>>2]|0; - $89 = ($87>>>0)<($88>>>0); - if (!($89)) { - break; - } - } - $90 = HEAP32[$s1>>2]|0; - $91 = HEAP32[$4>>2]|0; - HEAP32[$91>>2] = $90; - $92 = HEAP32[$s2>>2]|0; - $93 = HEAP32[$4>>2]|0; - $94 = (($93) + 4|0); - HEAP32[$94>>2] = $92; - STACKTOP = sp;return; - } -} -function _walDecodeFrame($pWal,$piPage,$pnTruncate,$aData,$aFrame) { - $pWal = $pWal|0; - $piPage = $piPage|0; - $pnTruncate = $pnTruncate|0; - $aData = $aData|0; - $aFrame = $aFrame|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0; - var $8 = 0, $9 = 0, $aCksum = 0, $nativeCksum = 0, $pgno = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $4 = sp + 16|0; - $5 = sp + 12|0; - $nativeCksum = sp + 8|0; - $aCksum = sp + 4|0; - $pgno = sp; - HEAP32[$1>>2] = $pWal; - HEAP32[$2>>2] = $piPage; - HEAP32[$3>>2] = $pnTruncate; - HEAP32[$4>>2] = $aData; - HEAP32[$5>>2] = $aFrame; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 52|0); - $8 = (($7) + 24|0); - HEAP32[$aCksum>>2] = $8; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 52|0); - $11 = (($10) + 32|0); - $12 = HEAP32[$5>>2]|0; - $13 = (($12) + 8|0); - $14 = (_memcmp($11,$13,8)|0); - $15 = ($14|0)!=(0); - if ($15) { - HEAP32[$0>>2] = 0; - $61 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($61|0); - } - $16 = HEAP32[$5>>2]|0; - $17 = (_sqlite3Get4byte($16)|0); - HEAP32[$pgno>>2] = $17; - $18 = HEAP32[$pgno>>2]|0; - $19 = ($18|0)==(0); - if ($19) { - HEAP32[$0>>2] = 0; - $61 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($61|0); - } - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 52|0); - $22 = (($21) + 13|0); - $23 = HEAP8[$22>>0]|0; - $24 = $23&255; - $25 = HEAP8[1392>>0]|0; - $26 = $25 << 24 >> 24; - $27 = ($26|0)==(0); - $28 = $27&1; - $29 = ($24|0)==($28|0); - $30 = $29&1; - HEAP32[$nativeCksum>>2] = $30; - $31 = HEAP32[$nativeCksum>>2]|0; - $32 = HEAP32[$5>>2]|0; - $33 = HEAP32[$aCksum>>2]|0; - $34 = HEAP32[$aCksum>>2]|0; - _walChecksumBytes($31,$32,8,$33,$34); - $35 = HEAP32[$nativeCksum>>2]|0; - $36 = HEAP32[$4>>2]|0; - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 36|0); - $39 = HEAP32[$38>>2]|0; - $40 = HEAP32[$aCksum>>2]|0; - $41 = HEAP32[$aCksum>>2]|0; - _walChecksumBytes($35,$36,$39,$40,$41); - $42 = HEAP32[$aCksum>>2]|0; - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$5>>2]|0; - $45 = (($44) + 16|0); - $46 = (_sqlite3Get4byte($45)|0); - $47 = ($43|0)!=($46|0); - if (!($47)) { - $48 = HEAP32[$aCksum>>2]|0; - $49 = (($48) + 4|0); - $50 = HEAP32[$49>>2]|0; - $51 = HEAP32[$5>>2]|0; - $52 = (($51) + 20|0); - $53 = (_sqlite3Get4byte($52)|0); - $54 = ($50|0)!=($53|0); - if (!($54)) { - $55 = HEAP32[$pgno>>2]|0; - $56 = HEAP32[$2>>2]|0; - HEAP32[$56>>2] = $55; - $57 = HEAP32[$5>>2]|0; - $58 = (($57) + 4|0); - $59 = (_sqlite3Get4byte($58)|0); - $60 = HEAP32[$3>>2]|0; - HEAP32[$60>>2] = $59; - HEAP32[$0>>2] = 1; - $61 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($61|0); - } - } - HEAP32[$0>>2] = 0; - $61 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($61|0); -} -function _walIndexAppend($pWal,$iFrame,$iPage) { - $pWal = $pWal|0; - $iFrame = $iFrame|0; - $iPage = $iPage|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aHash = 0, $aPgno = 0, $iKey = 0, $iZero = 0; - var $idx = 0, $nByte = 0, $nCollide = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $rc = sp + 28|0; - $iZero = sp + 24|0; - $aPgno = sp + 20|0; - $aHash = sp + 16|0; - $iKey = sp + 12|0; - $idx = sp + 8|0; - $nCollide = sp + 4|0; - $nByte = sp; - HEAP32[$1>>2] = $pWal; - HEAP32[$2>>2] = $iFrame; - HEAP32[$3>>2] = $iPage; - HEAP32[$iZero>>2] = 0; - HEAP32[$aPgno>>2] = 0; - HEAP32[$aHash>>2] = 0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = (_walFramePage($5)|0); - $7 = (_walHashGet($4,$6,$aHash,$aPgno,$iZero)|0); - HEAP32[$rc>>2] = $7; - $8 = HEAP32[$rc>>2]|0; - $9 = ($8|0)==(0); - do { - if ($9) { - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$iZero>>2]|0; - $12 = (($10) - ($11))|0; - HEAP32[$idx>>2] = $12; - $13 = HEAP32[$idx>>2]|0; - $14 = ($13|0)==(1); - if ($14) { - $15 = HEAP32[$aHash>>2]|0; - $16 = (($15) + 16384|0); - $17 = HEAP32[$aPgno>>2]|0; - $18 = (($17) + 4|0); - $19 = $16; - $20 = $18; - $21 = (($19) - ($20))|0; - HEAP32[$nByte>>2] = $21; - $22 = HEAP32[$aPgno>>2]|0; - $23 = (($22) + 4|0); - $24 = HEAP32[$nByte>>2]|0; - _memset(($23|0),0,($24|0))|0; - } - $25 = HEAP32[$idx>>2]|0; - $26 = HEAP32[$aPgno>>2]|0; - $27 = (($26) + ($25<<2)|0); - $28 = HEAP32[$27>>2]|0; - $29 = ($28|0)!=(0); - if ($29) { - $30 = HEAP32[$1>>2]|0; - _walCleanupHash($30); - } - $31 = HEAP32[$idx>>2]|0; - HEAP32[$nCollide>>2] = $31; - $32 = HEAP32[$3>>2]|0; - $33 = (_walHash($32)|0); - HEAP32[$iKey>>2] = $33; - while(1) { - $34 = HEAP32[$iKey>>2]|0; - $35 = HEAP32[$aHash>>2]|0; - $36 = (($35) + ($34<<1)|0); - $37 = HEAP16[$36>>1]|0; - $38 = ($37<<16>>16)!=(0); - if (!($38)) { - label = 11; - break; - } - $39 = HEAP32[$nCollide>>2]|0; - $40 = (($39) + -1)|0; - HEAP32[$nCollide>>2] = $40; - $41 = ($39|0)==(0); - if ($41) { - break; - } - $43 = HEAP32[$iKey>>2]|0; - $44 = (_walNextHash($43)|0); - HEAP32[$iKey>>2] = $44; - } - if ((label|0) == 11) { - $45 = HEAP32[$3>>2]|0; - $46 = HEAP32[$idx>>2]|0; - $47 = HEAP32[$aPgno>>2]|0; - $48 = (($47) + ($46<<2)|0); - HEAP32[$48>>2] = $45; - $49 = HEAP32[$idx>>2]|0; - $50 = $49&65535; - $51 = HEAP32[$iKey>>2]|0; - $52 = HEAP32[$aHash>>2]|0; - $53 = (($52) + ($51<<1)|0); - HEAP16[$53>>1] = $50; - break; - } - $42 = (_sqlite3CorruptError(48107)|0); - HEAP32[$0>>2] = $42; - $55 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($55|0); - } - } while(0); - $54 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $54; - $55 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($55|0); -} -function _walIndexWriteHdr($pWal) { - $pWal = $pWal|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $aHdr = 0, $nCksum = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $aHdr = sp + 4|0; - $nCksum = sp; - HEAP32[$0>>2] = $pWal; - $1 = HEAP32[$0>>2]|0; - $2 = (_walIndexHdr($1)|0); - HEAP32[$aHdr>>2] = $2; - HEAP32[$nCksum>>2] = 40; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 52|0); - $5 = (($4) + 12|0); - HEAP8[$5>>0] = 1; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 52|0); - HEAP32[$7>>2] = 3007000; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 52|0); - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 52|0); - $12 = (($11) + 40|0); - _walChecksumBytes(1,$9,40,0,$12); - $13 = HEAP32[$aHdr>>2]|0; - $14 = (($13) + 48|0); - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 52|0); - dest=$14+0|0; src=$16+0|0; stop=dest+48|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); - $17 = HEAP32[$0>>2]|0; - _walShmBarrier($17); - $18 = HEAP32[$aHdr>>2]|0; - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 52|0); - dest=$18+0|0; src=$20+0|0; stop=dest+48|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); - STACKTOP = sp;return; -} -function _walShmBarrier($pWal) { - $pWal = $pWal|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pWal; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 43|0); - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - $5 = ($4|0)!=(2); - if (!($5)) { - STACKTOP = sp;return; - } - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - _sqlite3OsShmBarrier($8); - STACKTOP = sp;return; -} -function _sqlite3OsShmBarrier($id) { - $id = $id|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $id; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 60|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$0>>2]|0; - FUNCTION_TABLE_vi[$4 & 31]($5); - STACKTOP = sp;return; -} -function _sqlite3InvokeBusyHandler($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0|0); - if (!($3)) { - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)==(0|0); - if (!($6)) { - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 8|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)<(0); - if (!($10)) { - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 8|0); - $18 = HEAP32[$17>>2]|0; - $19 = (FUNCTION_TABLE_iii[$12 & 63]($15,$18)|0); - HEAP32[$rc>>2] = $19; - $20 = HEAP32[$rc>>2]|0; - $21 = ($20|0)==(0); - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 8|0); - if ($21) { - HEAP32[$23>>2] = -1; - } else { - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + 1)|0; - HEAP32[$23>>2] = $25; - } - $26 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $26; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); - } - } - } - HEAP32[$0>>2] = 0; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); -} -function _sqlite3PagerGetExtra($pPg) { - $pPg = $pPg|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPg; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _sqlite3PagerPageRefcount($pPage) { - $pPage = $pPage|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPage; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3PcachePageRefcount($1)|0); - STACKTOP = sp;return ($2|0); -} -function _btreeInitPage($pPage) { - $pPage = $pPage|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; - var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; - var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; - var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; - var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cellOffset = 0, $data = 0, $hdr = 0, $iCellFirst = 0, $iCellLast = 0, $nFree = 0, $next = 0, $pBt = 0, $pc = 0, $size = 0; - var $top = 0, $usableSize = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $pc = sp + 42|0; - $hdr = sp + 44|0; - $data = sp + 24|0; - $pBt = sp + 20|0; - $usableSize = sp + 16|0; - $cellOffset = sp + 40|0; - $nFree = sp + 12|0; - $top = sp + 8|0; - $iCellFirst = sp + 4|0; - $iCellLast = sp; - $next = sp + 38|0; - $size = sp + 36|0; - HEAP32[$1>>2] = $pPage; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP8[$2>>0]|0; - $4 = ($3<<24>>24)!=(0); - do { - if (!($4)) { - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 52|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pBt>>2] = $7; - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 5|0); - $10 = HEAP8[$9>>0]|0; - HEAP8[$hdr>>0] = $10; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 56|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$data>>2] = $13; - $14 = HEAP32[$1>>2]|0; - $15 = HEAP8[$hdr>>0]|0; - $16 = $15&255; - $17 = HEAP32[$data>>2]|0; - $18 = (($17) + ($16)|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = (_decodeFlags($14,$20)|0); - $22 = ($21|0)!=(0); - if ($22) { - $23 = (_sqlite3CorruptError(52602)|0); - HEAP32[$0>>2] = $23; - $229 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($229|0); - } - $24 = HEAP32[$pBt>>2]|0; - $25 = (($24) + 32|0); - $26 = HEAP32[$25>>2]|0; - $27 = (($26) - 1)|0; - $28 = $27&65535; - $29 = HEAP32[$1>>2]|0; - $30 = (($29) + 18|0); - HEAP16[$30>>1] = $28; - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 1|0); - HEAP8[$32>>0] = 0; - $33 = HEAP32[$pBt>>2]|0; - $34 = (($33) + 36|0); - $35 = HEAP32[$34>>2]|0; - HEAP32[$usableSize>>2] = $35; - $36 = HEAP8[$hdr>>0]|0; - $37 = $36&255; - $38 = (($37) + 12)|0; - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 3|0); - $41 = HEAP8[$40>>0]|0; - $42 = $41&255; - $43 = $42<<2; - $44 = (($38) - ($43))|0; - $45 = $44&65535; - HEAP16[$cellOffset>>1] = $45; - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 12|0); - HEAP16[$47>>1] = $45; - $48 = HEAP32[$usableSize>>2]|0; - $49 = HEAP32[$data>>2]|0; - $50 = (($49) + ($48)|0); - $51 = HEAP32[$1>>2]|0; - $52 = (($51) + 60|0); - HEAP32[$52>>2] = $50; - $53 = HEAP16[$cellOffset>>1]|0; - $54 = $53&65535; - $55 = HEAP32[$data>>2]|0; - $56 = (($55) + ($54)|0); - $57 = HEAP32[$1>>2]|0; - $58 = (($57) + 64|0); - HEAP32[$58>>2] = $56; - $59 = HEAP8[$hdr>>0]|0; - $60 = $59&255; - $61 = (($60) + 5)|0; - $62 = HEAP32[$data>>2]|0; - $63 = (($62) + ($61)|0); - $64 = HEAP8[$63>>0]|0; - $65 = $64&255; - $66 = $65 << 8; - $67 = HEAP8[$hdr>>0]|0; - $68 = $67&255; - $69 = (($68) + 5)|0; - $70 = HEAP32[$data>>2]|0; - $71 = (($70) + ($69)|0); - $72 = (($71) + 1|0); - $73 = HEAP8[$72>>0]|0; - $74 = $73&255; - $75 = $66 | $74; - $76 = (($75) - 1)|0; - $77 = $76 & 65535; - $78 = (($77) + 1)|0; - HEAP32[$top>>2] = $78; - $79 = HEAP8[$hdr>>0]|0; - $80 = $79&255; - $81 = (($80) + 3)|0; - $82 = HEAP32[$data>>2]|0; - $83 = (($82) + ($81)|0); - $84 = HEAP8[$83>>0]|0; - $85 = $84&255; - $86 = $85 << 8; - $87 = HEAP8[$hdr>>0]|0; - $88 = $87&255; - $89 = (($88) + 3)|0; - $90 = HEAP32[$data>>2]|0; - $91 = (($90) + ($89)|0); - $92 = (($91) + 1|0); - $93 = HEAP8[$92>>0]|0; - $94 = $93&255; - $95 = $86 | $94; - $96 = $95&65535; - $97 = HEAP32[$1>>2]|0; - $98 = (($97) + 16|0); - HEAP16[$98>>1] = $96; - $99 = HEAP32[$1>>2]|0; - $100 = (($99) + 16|0); - $101 = HEAP16[$100>>1]|0; - $102 = $101&65535; - $103 = HEAP32[$pBt>>2]|0; - $104 = (($103) + 32|0); - $105 = HEAP32[$104>>2]|0; - $106 = (($105) - 8)|0; - $107 = (($106>>>0) / 6)&-1; - $108 = ($102>>>0)>($107>>>0); - if ($108) { - $109 = (_sqlite3CorruptError(52614)|0); - HEAP32[$0>>2] = $109; - $229 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($229|0); - } - $110 = HEAP16[$cellOffset>>1]|0; - $111 = $110&65535; - $112 = HEAP32[$1>>2]|0; - $113 = (($112) + 16|0); - $114 = HEAP16[$113>>1]|0; - $115 = $114&65535; - $116 = $115<<1; - $117 = (($111) + ($116))|0; - HEAP32[$iCellFirst>>2] = $117; - $118 = HEAP32[$usableSize>>2]|0; - $119 = (($118) - 4)|0; - HEAP32[$iCellLast>>2] = $119; - $120 = HEAP8[$hdr>>0]|0; - $121 = $120&255; - $122 = (($121) + 1)|0; - $123 = HEAP32[$data>>2]|0; - $124 = (($123) + ($122)|0); - $125 = HEAP8[$124>>0]|0; - $126 = $125&255; - $127 = $126 << 8; - $128 = HEAP8[$hdr>>0]|0; - $129 = $128&255; - $130 = (($129) + 1)|0; - $131 = HEAP32[$data>>2]|0; - $132 = (($131) + ($130)|0); - $133 = (($132) + 1|0); - $134 = HEAP8[$133>>0]|0; - $135 = $134&255; - $136 = $127 | $135; - $137 = $136&65535; - HEAP16[$pc>>1] = $137; - $138 = HEAP8[$hdr>>0]|0; - $139 = $138&255; - $140 = (($139) + 7)|0; - $141 = HEAP32[$data>>2]|0; - $142 = (($141) + ($140)|0); - $143 = HEAP8[$142>>0]|0; - $144 = $143&255; - $145 = HEAP32[$top>>2]|0; - $146 = (($144) + ($145))|0; - HEAP32[$nFree>>2] = $146; - while(1) { - $147 = HEAP16[$pc>>1]|0; - $148 = $147&65535; - $149 = ($148|0)>(0); - if (!($149)) { - label = 16; - break; - } - $150 = HEAP16[$pc>>1]|0; - $151 = $150&65535; - $152 = HEAP32[$iCellFirst>>2]|0; - $153 = ($151|0)<($152|0); - if ($153) { - label = 10; - break; - } - $154 = HEAP16[$pc>>1]|0; - $155 = $154&65535; - $156 = HEAP32[$iCellLast>>2]|0; - $157 = ($155|0)>($156|0); - if ($157) { - label = 10; - break; - } - $159 = HEAP16[$pc>>1]|0; - $160 = $159&65535; - $161 = HEAP32[$data>>2]|0; - $162 = (($161) + ($160)|0); - $163 = HEAP8[$162>>0]|0; - $164 = $163&255; - $165 = $164 << 8; - $166 = HEAP16[$pc>>1]|0; - $167 = $166&65535; - $168 = HEAP32[$data>>2]|0; - $169 = (($168) + ($167)|0); - $170 = (($169) + 1|0); - $171 = HEAP8[$170>>0]|0; - $172 = $171&255; - $173 = $165 | $172; - $174 = $173&65535; - HEAP16[$next>>1] = $174; - $175 = HEAP16[$pc>>1]|0; - $176 = $175&65535; - $177 = (($176) + 2)|0; - $178 = HEAP32[$data>>2]|0; - $179 = (($178) + ($177)|0); - $180 = HEAP8[$179>>0]|0; - $181 = $180&255; - $182 = $181 << 8; - $183 = HEAP16[$pc>>1]|0; - $184 = $183&65535; - $185 = (($184) + 2)|0; - $186 = HEAP32[$data>>2]|0; - $187 = (($186) + ($185)|0); - $188 = (($187) + 1|0); - $189 = HEAP8[$188>>0]|0; - $190 = $189&255; - $191 = $182 | $190; - $192 = $191&65535; - HEAP16[$size>>1] = $192; - $193 = HEAP16[$next>>1]|0; - $194 = $193&65535; - $195 = ($194|0)>(0); - if ($195) { - $196 = HEAP16[$next>>1]|0; - $197 = $196&65535; - $198 = HEAP16[$pc>>1]|0; - $199 = $198&65535; - $200 = HEAP16[$size>>1]|0; - $201 = $200&65535; - $202 = (($199) + ($201))|0; - $203 = (($202) + 3)|0; - $204 = ($197|0)<=($203|0); - if ($204) { - label = 14; - break; - } - } - $205 = HEAP16[$pc>>1]|0; - $206 = $205&65535; - $207 = HEAP16[$size>>1]|0; - $208 = $207&65535; - $209 = (($206) + ($208))|0; - $210 = HEAP32[$usableSize>>2]|0; - $211 = ($209|0)>($210|0); - if ($211) { - label = 14; - break; - } - $213 = HEAP32[$nFree>>2]|0; - $214 = HEAP16[$size>>1]|0; - $215 = $214&65535; - $216 = (($213) + ($215))|0; - HEAP32[$nFree>>2] = $216; - $217 = HEAP16[$next>>1]|0; - HEAP16[$pc>>1] = $217; - } - if ((label|0) == 10) { - $158 = (_sqlite3CorruptError(52657)|0); - HEAP32[$0>>2] = $158; - $229 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($229|0); - } - else if ((label|0) == 14) { - $212 = (_sqlite3CorruptError(52664)|0); - HEAP32[$0>>2] = $212; - $229 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($229|0); - } - else if ((label|0) == 16) { - $218 = HEAP32[$nFree>>2]|0; - $219 = HEAP32[$usableSize>>2]|0; - $220 = ($218|0)>($219|0); - if (!($220)) { - $222 = HEAP32[$nFree>>2]|0; - $223 = HEAP32[$iCellFirst>>2]|0; - $224 = (($222) - ($223))|0; - $225 = $224&65535; - $226 = HEAP32[$1>>2]|0; - $227 = (($226) + 14|0); - HEAP16[$227>>1] = $225; - $228 = HEAP32[$1>>2]|0; - HEAP8[$228>>0] = 1; - break; - } - $221 = (_sqlite3CorruptError(52678)|0); - HEAP32[$0>>2] = $221; - $229 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($229|0); - } - } - } while(0); - HEAP32[$0>>2] = 0; - $229 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($229|0); -} -function _decodeFlags($pPage,$flagByte) { - $pPage = $pPage|0; - $flagByte = $flagByte|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pBt = sp; - HEAP32[$1>>2] = $pPage; - HEAP32[$2>>2] = $flagByte; - $3 = HEAP32[$2>>2]|0; - $4 = $3 >> 3; - $5 = $4&255; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 3|0); - HEAP8[$7>>0] = $5; - $8 = HEAP32[$2>>2]|0; - $9 = $8 & -9; - HEAP32[$2>>2] = $9; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 3|0); - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = $13<<2; - $15 = (4 - ($14))|0; - $16 = $15&255; - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 6|0); - HEAP8[$18>>0] = $16; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 52|0); - $21 = HEAP32[$20>>2]|0; - HEAP32[$pBt>>2] = $21; - $22 = HEAP32[$2>>2]|0; - $23 = ($22|0)==(5); - do { - if ($23) { - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 2|0); - HEAP8[$25>>0] = 1; - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 3|0); - $28 = HEAP8[$27>>0]|0; - $29 = HEAP32[$1>>2]|0; - $30 = (($29) + 4|0); - HEAP8[$30>>0] = $28; - $31 = HEAP32[$pBt>>2]|0; - $32 = (($31) + 28|0); - $33 = HEAP16[$32>>1]|0; - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 8|0); - HEAP16[$35>>1] = $33; - $36 = HEAP32[$pBt>>2]|0; - $37 = (($36) + 30|0); - $38 = HEAP16[$37>>1]|0; - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 10|0); - HEAP16[$40>>1] = $38; - } else { - $41 = HEAP32[$2>>2]|0; - $42 = ($41|0)==(2); - if ($42) { - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + 2|0); - HEAP8[$44>>0] = 0; - $45 = HEAP32[$1>>2]|0; - $46 = (($45) + 4|0); - HEAP8[$46>>0] = 0; - $47 = HEAP32[$pBt>>2]|0; - $48 = (($47) + 24|0); - $49 = HEAP16[$48>>1]|0; - $50 = HEAP32[$1>>2]|0; - $51 = (($50) + 8|0); - HEAP16[$51>>1] = $49; - $52 = HEAP32[$pBt>>2]|0; - $53 = (($52) + 26|0); - $54 = HEAP16[$53>>1]|0; - $55 = HEAP32[$1>>2]|0; - $56 = (($55) + 10|0); - HEAP16[$56>>1] = $54; - break; - } - $57 = (_sqlite3CorruptError(52563)|0); - HEAP32[$0>>2] = $57; - $63 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($63|0); - } - } while(0); - $58 = HEAP32[$pBt>>2]|0; - $59 = (($58) + 21|0); - $60 = HEAP8[$59>>0]|0; - $61 = HEAP32[$1>>2]|0; - $62 = (($61) + 7|0); - HEAP8[$62>>0] = $60; - HEAP32[$0>>2] = 0; - $63 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($63|0); -} -function _sqlite3PcacheSize() { - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = sp;return 48; -} -function _sqlite3PcacheOpen($szPage,$szExtra,$bPurgeable,$xStress,$pStress,$p) { - $szPage = $szPage|0; - $szExtra = $szExtra|0; - $bPurgeable = $bPurgeable|0; - $xStress = $xStress|0; - $pStress = $pStress|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $5 = sp; - HEAP32[$0>>2] = $szPage; - HEAP32[$1>>2] = $szExtra; - HEAP32[$2>>2] = $bPurgeable; - HEAP32[$3>>2] = $xStress; - HEAP32[$4>>2] = $pStress; - HEAP32[$5>>2] = $p; - $6 = HEAP32[$5>>2]|0; - dest=$6+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$5>>2]|0; - $9 = (($8) + 20|0); - HEAP32[$9>>2] = $7; - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$5>>2]|0; - $12 = (($11) + 24|0); - HEAP32[$12>>2] = $10; - $13 = HEAP32[$2>>2]|0; - $14 = $13&255; - $15 = HEAP32[$5>>2]|0; - $16 = (($15) + 28|0); - HEAP8[$16>>0] = $14; - $17 = HEAP32[$5>>2]|0; - $18 = (($17) + 29|0); - HEAP8[$18>>0] = 2; - $19 = HEAP32[$3>>2]|0; - $20 = HEAP32[$5>>2]|0; - $21 = (($20) + 32|0); - HEAP32[$21>>2] = $19; - $22 = HEAP32[$4>>2]|0; - $23 = HEAP32[$5>>2]|0; - $24 = (($23) + 36|0); - HEAP32[$24>>2] = $22; - $25 = HEAP32[$5>>2]|0; - $26 = (($25) + 16|0); - HEAP32[$26>>2] = 100; - STACKTOP = sp;return; -} -function _pagerStress($p,$pPg) { - $p = $p|0; - $pPg = $pPg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $8 = 0, $9 = 0, $pPager = 0, $rc = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $pPager = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $pPg; - $3 = HEAP32[$1>>2]|0; - HEAP32[$pPager>>2] = $3; - HEAP32[$rc>>2] = 0; - $4 = HEAP32[$pPager>>2]|0; - $5 = (($4) + 40|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0); - if ($7) { - HEAP32[$0>>2] = 0; - $77 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($77|0); - } - $8 = HEAP32[$pPager>>2]|0; - $9 = (($8) + 20|0); - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - $12 = ($11|0)!=(0); - do { - if ($12) { - $13 = HEAP32[$pPager>>2]|0; - $14 = (($13) + 20|0); - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - $17 = $16 & 3; - $18 = ($17|0)!=(0); - if (!($18)) { - $19 = HEAP32[$2>>2]|0; - $20 = (($19) + 24|0); - $21 = HEAP16[$20>>1]|0; - $22 = $21&65535; - $23 = $22 & 4; - $24 = ($23|0)!=(0); - if (!($24)) { - break; - } - } - HEAP32[$0>>2] = 0; - $77 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($77|0); - } - } while(0); - $25 = HEAP32[$2>>2]|0; - $26 = (($25) + 12|0); - HEAP32[$26>>2] = 0; - $27 = HEAP32[$pPager>>2]|0; - $28 = (_pagerUseWal($27)|0); - $29 = ($28|0)!=(0); - $30 = HEAP32[$2>>2]|0; - if ($29) { - $31 = (_subjRequiresPage($30)|0); - $32 = ($31|0)!=(0); - if ($32) { - $33 = HEAP32[$2>>2]|0; - $34 = (_subjournalPage($33)|0); - HEAP32[$rc>>2] = $34; - } - $35 = HEAP32[$rc>>2]|0; - $36 = ($35|0)==(0); - if ($36) { - $37 = HEAP32[$pPager>>2]|0; - $38 = HEAP32[$2>>2]|0; - $39 = (_pagerWalFrames($37,$38,0,0)|0); - HEAP32[$rc>>2] = $39; - } - } else { - $40 = (($30) + 24|0); - $41 = HEAP16[$40>>1]|0; - $42 = $41&65535; - $43 = $42 & 4; - $44 = ($43|0)!=(0); - if ($44) { - label = 14; - } else { - $45 = HEAP32[$pPager>>2]|0; - $46 = (($45) + 16|0); - $47 = HEAP8[$46>>0]|0; - $48 = $47&255; - $49 = ($48|0)==(3); - if ($49) { - label = 14; - } - } - if ((label|0) == 14) { - $50 = HEAP32[$pPager>>2]|0; - $51 = (_syncJournal($50,1)|0); - HEAP32[$rc>>2] = $51; - } - $52 = HEAP32[$rc>>2]|0; - $53 = ($52|0)==(0); - if ($53) { - $54 = HEAP32[$2>>2]|0; - $55 = (($54) + 20|0); - $56 = HEAP32[$55>>2]|0; - $57 = HEAP32[$pPager>>2]|0; - $58 = (($57) + 24|0); - $59 = HEAP32[$58>>2]|0; - $60 = ($56>>>0)>($59>>>0); - if ($60) { - $61 = HEAP32[$2>>2]|0; - $62 = (_subjRequiresPage($61)|0); - $63 = ($62|0)!=(0); - if ($63) { - $64 = HEAP32[$2>>2]|0; - $65 = (_subjournalPage($64)|0); - HEAP32[$rc>>2] = $65; - } - } - } - $66 = HEAP32[$rc>>2]|0; - $67 = ($66|0)==(0); - if ($67) { - $68 = HEAP32[$pPager>>2]|0; - $69 = HEAP32[$2>>2]|0; - $70 = (_pager_write_pagelist($68,$69)|0); - HEAP32[$rc>>2] = $70; - } - } - $71 = HEAP32[$rc>>2]|0; - $72 = ($71|0)==(0); - if ($72) { - $73 = HEAP32[$2>>2]|0; - _sqlite3PcacheMakeClean($73); - } - $74 = HEAP32[$pPager>>2]|0; - $75 = HEAP32[$rc>>2]|0; - $76 = (_pager_error($74,$75)|0); - HEAP32[$0>>2] = $76; - $77 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($77|0); -} -function _subjRequiresPage($pPg) { - $pPg = $pPg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, $pPager = 0, $pgno = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $pPager = sp + 12|0; - $p = sp + 8|0; - $pgno = sp + 4|0; - $i = sp; - HEAP32[$1>>2] = $pPg; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 16|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pPager>>2] = $4; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 20|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pgno>>2] = $7; - HEAP32[$i>>2] = 0; - while(1) { - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[$pPager>>2]|0; - $10 = (($9) + 96|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($8|0)<($11|0); - if (!($12)) { - label = 7; - break; - } - $13 = HEAP32[$i>>2]|0; - $14 = HEAP32[$pPager>>2]|0; - $15 = (($14) + 92|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + (($13*48)|0)|0); - HEAP32[$p>>2] = $17; - $18 = HEAP32[$p>>2]|0; - $19 = (($18) + 20|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$pgno>>2]|0; - $22 = ($20>>>0)>=($21>>>0); - if ($22) { - $23 = HEAP32[$p>>2]|0; - $24 = (($23) + 16|0); - $25 = HEAP32[$24>>2]|0; - $26 = HEAP32[$pgno>>2]|0; - $27 = (_sqlite3BitvecTest($25,$26)|0); - $28 = (0)==($27|0); - if ($28) { - label = 5; - break; - } - } - $29 = HEAP32[$i>>2]|0; - $30 = (($29) + 1)|0; - HEAP32[$i>>2] = $30; - } - if ((label|0) == 5) { - HEAP32[$0>>2] = 1; - $31 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($31|0); - } - else if ((label|0) == 7) { - HEAP32[$0>>2] = 0; - $31 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($31|0); - } - return 0|0; -} -function _subjournalPage($pPg) { - $pPg = $pPg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $8 = 0, $9 = 0, $offset = 0, $pData = 0, $pData2 = 0, $pPager = 0, $rc = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $rc = sp + 20|0; - $pPager = sp + 16|0; - $pData = sp + 12|0; - $offset = sp; - $pData2 = sp + 8|0; - HEAP32[$0>>2] = $pPg; - HEAP32[$rc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 16|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pPager>>2] = $3; - $4 = HEAP32[$pPager>>2]|0; - $5 = (($4) + 5|0); - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - $8 = ($7|0)!=(2); - if ($8) { - $9 = HEAP32[$pPager>>2]|0; - $10 = (_openSubJournal($9)|0); - HEAP32[$rc>>2] = $10; - $11 = HEAP32[$rc>>2]|0; - $12 = ($11|0)==(0); - if ($12) { - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$pData>>2] = $15; - $16 = HEAP32[$pPager>>2]|0; - $17 = (($16) + 52|0); - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$pPager>>2]|0; - $20 = (($19) + 152|0); - $21 = HEAP32[$20>>2]|0; - $22 = (4 + ($21))|0; - $23 = ($22|0)<(0); - $24 = $23 << 31 >> 31; - $25 = (___muldi3(($18|0),0,($22|0),($24|0))|0); - $26 = tempRet0; - $27 = $offset; - $28 = $27; - HEAP32[$28>>2] = $25; - $29 = (($27) + 4)|0; - $30 = $29; - HEAP32[$30>>2] = $26; - $31 = HEAP32[$pData>>2]|0; - HEAP32[$pData2>>2] = $31; - $32 = HEAP32[$pPager>>2]|0; - $33 = (($32) + 68|0); - $34 = HEAP32[$33>>2]|0; - $35 = $offset; - $36 = $35; - $37 = HEAP32[$36>>2]|0; - $38 = (($35) + 4)|0; - $39 = $38; - $40 = HEAP32[$39>>2]|0; - $41 = HEAP32[$0>>2]|0; - $42 = (($41) + 20|0); - $43 = HEAP32[$42>>2]|0; - $44 = (_write32bits($34,$37,$40,$43)|0); - HEAP32[$rc>>2] = $44; - $45 = HEAP32[$rc>>2]|0; - $46 = ($45|0)==(0); - if ($46) { - $47 = HEAP32[$pPager>>2]|0; - $48 = (($47) + 68|0); - $49 = HEAP32[$48>>2]|0; - $50 = HEAP32[$pData2>>2]|0; - $51 = HEAP32[$pPager>>2]|0; - $52 = (($51) + 152|0); - $53 = HEAP32[$52>>2]|0; - $54 = $offset; - $55 = $54; - $56 = HEAP32[$55>>2]|0; - $57 = (($54) + 4)|0; - $58 = $57; - $59 = HEAP32[$58>>2]|0; - $60 = (_i64Add(($56|0),($59|0),4,0)|0); - $61 = tempRet0; - $62 = (_sqlite3OsWrite($49,$50,$53,$60,$61)|0); - HEAP32[$rc>>2] = $62; - } - } - } - $63 = HEAP32[$rc>>2]|0; - $64 = ($63|0)==(0); - if (!($64)) { - $74 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($74|0); - } - $65 = HEAP32[$pPager>>2]|0; - $66 = (($65) + 52|0); - $67 = HEAP32[$66>>2]|0; - $68 = (($67) + 1)|0; - HEAP32[$66>>2] = $68; - $69 = HEAP32[$pPager>>2]|0; - $70 = HEAP32[$0>>2]|0; - $71 = (($70) + 20|0); - $72 = HEAP32[$71>>2]|0; - $73 = (_addToSavepointBitvecs($69,$72)|0); - HEAP32[$rc>>2] = $73; - $74 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($74|0); -} -function _pagerWalFrames($pPager,$pList,$nTruncate,$isCommit) { - $pPager = $pPager|0; - $pList = $pList|0; - $nTruncate = $nTruncate|0; - $isCommit = $isCommit|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $nList = 0, $p = 0, $p1 = 0, $ppNext = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $rc = sp + 16|0; - $nList = sp + 12|0; - $p = sp + 8|0; - $ppNext = sp + 4|0; - $p1 = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $pList; - HEAP32[$2>>2] = $nTruncate; - HEAP32[$3>>2] = $isCommit; - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0); - L1: do { - if ($5) { - HEAP32[$ppNext>>2] = $1; - HEAP32[$nList>>2] = 0; - $6 = HEAP32[$1>>2]|0; - HEAP32[$p>>2] = $6; - while(1) { - $7 = HEAP32[$p>>2]|0; - $8 = HEAP32[$ppNext>>2]|0; - HEAP32[$8>>2] = $7; - $9 = ($7|0)!=(0|0); - if (!($9)) { - break L1; - } - $10 = HEAP32[$p>>2]|0; - $11 = (($10) + 20|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = ($12>>>0)<=($13>>>0); - if ($14) { - $15 = HEAP32[$p>>2]|0; - $16 = (($15) + 12|0); - HEAP32[$ppNext>>2] = $16; - $17 = HEAP32[$nList>>2]|0; - $18 = (($17) + 1)|0; - HEAP32[$nList>>2] = $18; - } - $19 = HEAP32[$p>>2]|0; - $20 = (($19) + 12|0); - $21 = HEAP32[$20>>2]|0; - HEAP32[$p>>2] = $21; - } - } else { - HEAP32[$nList>>2] = 1; - } - } while(0); - $22 = HEAP32[$nList>>2]|0; - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 184|0); - $25 = (($24) + 8|0); - $26 = HEAP32[$25>>2]|0; - $27 = (($26) + ($22))|0; - HEAP32[$25>>2] = $27; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 20|0); - $30 = HEAP32[$29>>2]|0; - $31 = ($30|0)==(1); - if ($31) { - $32 = HEAP32[$1>>2]|0; - _pager_write_changecounter($32); - } - $33 = HEAP32[$0>>2]|0; - $34 = (($33) + 208|0); - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$0>>2]|0; - $37 = (($36) + 152|0); - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$1>>2]|0; - $40 = HEAP32[$2>>2]|0; - $41 = HEAP32[$3>>2]|0; - $42 = HEAP32[$0>>2]|0; - $43 = (($42) + 10|0); - $44 = HEAP8[$43>>0]|0; - $45 = $44&255; - $46 = (_sqlite3WalFrames($35,$38,$39,$40,$41,$45)|0); - HEAP32[$rc>>2] = $46; - $47 = HEAP32[$rc>>2]|0; - $48 = ($47|0)==(0); - if (!($48)) { - $68 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($68|0); - } - $49 = HEAP32[$0>>2]|0; - $50 = (($49) + 88|0); - $51 = HEAP32[$50>>2]|0; - $52 = ($51|0)!=(0|0); - if (!($52)) { - $68 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($68|0); - } - $53 = HEAP32[$1>>2]|0; - HEAP32[$p1>>2] = $53; - while(1) { - $54 = HEAP32[$p1>>2]|0; - $55 = ($54|0)!=(0|0); - if (!($55)) { - break; - } - $56 = HEAP32[$0>>2]|0; - $57 = (($56) + 88|0); - $58 = HEAP32[$57>>2]|0; - $59 = HEAP32[$p1>>2]|0; - $60 = (($59) + 20|0); - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$p1>>2]|0; - $63 = (($62) + 4|0); - $64 = HEAP32[$63>>2]|0; - _sqlite3BackupUpdate($58,$61,$64); - $65 = HEAP32[$p1>>2]|0; - $66 = (($65) + 12|0); - $67 = HEAP32[$66>>2]|0; - HEAP32[$p1>>2] = $67; - } - $68 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($68|0); -} -function _syncJournal($pPager,$newHdr) { - $pPager = $pPager|0; - $newHdr = $newHdr|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; - var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; - var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; - var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; - var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aMagic = 0, $iDc = 0, $iNextHdrOffset = 0, $or$cond = 0, $rc = 0, $zHeader = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $rc = sp + 12|0; - $iDc = sp + 8|0; - $iNextHdrOffset = sp; - $aMagic = sp + 40|0; - $zHeader = sp + 28|0; - HEAP32[$1>>2] = $pPager; - HEAP32[$2>>2] = $newHdr; - $3 = HEAP32[$1>>2]|0; - $4 = (_sqlite3PagerExclusiveLock($3)|0); - HEAP32[$rc>>2] = $4; - $5 = HEAP32[$rc>>2]|0; - $6 = ($5|0)!=(0); - if ($6) { - $7 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $7; - $169 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($169|0); - } - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 7|0); - $10 = HEAP8[$9>>0]|0; - $11 = ($10<<24>>24)!=(0); - do { - if (!($11)) { - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 64|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = ($15|0)!=(0|0); - if ($16) { - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 5|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = ($20|0)!=(4); - if ($21) { - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 60|0); - $24 = HEAP32[$23>>2]|0; - $25 = (_sqlite3OsDeviceCharacteristics($24)|0); - HEAP32[$iDc>>2] = $25; - $26 = HEAP32[$iDc>>2]|0; - $27 = $26 & 512; - $28 = (0)==($27|0); - if ($28) { - ;HEAP8[$zHeader+0>>0]=HEAP8[4336+0>>0]|0;HEAP8[$zHeader+1>>0]=HEAP8[4336+1>>0]|0;HEAP8[$zHeader+2>>0]=HEAP8[4336+2>>0]|0;HEAP8[$zHeader+3>>0]=HEAP8[4336+3>>0]|0;HEAP8[$zHeader+4>>0]=HEAP8[4336+4>>0]|0;HEAP8[$zHeader+5>>0]=HEAP8[4336+5>>0]|0;HEAP8[$zHeader+6>>0]=HEAP8[4336+6>>0]|0;HEAP8[$zHeader+7>>0]=HEAP8[4336+7>>0]|0; - $29 = (($zHeader) + 8|0); - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 44|0); - $32 = HEAP32[$31>>2]|0; - _sqlite3Put4byte($29,$32); - $33 = HEAP32[$1>>2]|0; - $34 = (_journalHdrOffset($33)|0); - $35 = tempRet0; - $36 = $iNextHdrOffset; - $37 = $36; - HEAP32[$37>>2] = $34; - $38 = (($36) + 4)|0; - $39 = $38; - HEAP32[$39>>2] = $35; - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 64|0); - $42 = HEAP32[$41>>2]|0; - $43 = $iNextHdrOffset; - $44 = $43; - $45 = HEAP32[$44>>2]|0; - $46 = (($43) + 4)|0; - $47 = $46; - $48 = HEAP32[$47>>2]|0; - $49 = (_sqlite3OsRead($42,$aMagic,8,$45,$48)|0); - HEAP32[$rc>>2] = $49; - $50 = HEAP32[$rc>>2]|0; - $51 = ($50|0)==(0); - if ($51) { - $52 = (_memcmp($aMagic,4336,8)|0); - $53 = (0)==($52|0); - if ($53) { - $54 = HEAP32[$1>>2]|0; - $55 = (($54) + 64|0); - $56 = HEAP32[$55>>2]|0; - $57 = $iNextHdrOffset; - $58 = $57; - $59 = HEAP32[$58>>2]|0; - $60 = (($57) + 4)|0; - $61 = $60; - $62 = HEAP32[$61>>2]|0; - $63 = (_sqlite3OsWrite($56,4552,1,$59,$62)|0); - HEAP32[$rc>>2] = $63; - } - } - $64 = HEAP32[$rc>>2]|0; - $65 = ($64|0)!=(0); - $66 = HEAP32[$rc>>2]|0; - $67 = ($66|0)!=(522); - $or$cond = $65 & $67; - if ($or$cond) { - $68 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $68; - $169 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($169|0); - } - $69 = HEAP32[$1>>2]|0; - $70 = (($69) + 8|0); - $71 = HEAP8[$70>>0]|0; - $72 = $71&255; - $73 = ($72|0)!=(0); - if ($73) { - $74 = HEAP32[$iDc>>2]|0; - $75 = $74 & 1024; - $76 = (0)==($75|0); - if ($76) { - $77 = HEAP32[$1>>2]|0; - $78 = (($77) + 64|0); - $79 = HEAP32[$78>>2]|0; - $80 = HEAP32[$1>>2]|0; - $81 = (($80) + 11|0); - $82 = HEAP8[$81>>0]|0; - $83 = $82&255; - $84 = (_sqlite3OsSync($79,$83)|0); - HEAP32[$rc>>2] = $84; - $85 = HEAP32[$rc>>2]|0; - $86 = ($85|0)!=(0); - if ($86) { - $87 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $87; - $169 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($169|0); - } - } - } - $88 = HEAP32[$1>>2]|0; - $89 = (($88) + 64|0); - $90 = HEAP32[$89>>2]|0; - $91 = HEAP32[$1>>2]|0; - $92 = (($91) + 80|0); - $93 = $92; - $94 = $93; - $95 = HEAP32[$94>>2]|0; - $96 = (($93) + 4)|0; - $97 = $96; - $98 = HEAP32[$97>>2]|0; - $99 = (_sqlite3OsWrite($90,$zHeader,12,$95,$98)|0); - HEAP32[$rc>>2] = $99; - $100 = HEAP32[$rc>>2]|0; - $101 = ($100|0)!=(0); - if ($101) { - $102 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $102; - $169 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($169|0); - } - } - $103 = HEAP32[$iDc>>2]|0; - $104 = $103 & 1024; - $105 = (0)==($104|0); - if ($105) { - $106 = HEAP32[$1>>2]|0; - $107 = (($106) + 64|0); - $108 = HEAP32[$107>>2]|0; - $109 = HEAP32[$1>>2]|0; - $110 = (($109) + 11|0); - $111 = HEAP8[$110>>0]|0; - $112 = $111&255; - $113 = HEAP32[$1>>2]|0; - $114 = (($113) + 11|0); - $115 = HEAP8[$114>>0]|0; - $116 = $115&255; - $117 = ($116|0)==(3); - $118 = $117 ? 16 : 0; - $119 = $112 | $118; - $120 = (_sqlite3OsSync($108,$119)|0); - HEAP32[$rc>>2] = $120; - $121 = HEAP32[$rc>>2]|0; - $122 = ($121|0)!=(0); - if ($122) { - $123 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $123; - $169 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($169|0); - } - } - $124 = HEAP32[$1>>2]|0; - $125 = (($124) + 72|0); - $126 = $125; - $127 = $126; - $128 = HEAP32[$127>>2]|0; - $129 = (($126) + 4)|0; - $130 = $129; - $131 = HEAP32[$130>>2]|0; - $132 = HEAP32[$1>>2]|0; - $133 = (($132) + 80|0); - $134 = $133; - $135 = $134; - HEAP32[$135>>2] = $128; - $136 = (($134) + 4)|0; - $137 = $136; - HEAP32[$137>>2] = $131; - $138 = HEAP32[$2>>2]|0; - $139 = ($138|0)!=(0); - if (!($139)) { - break; - } - $140 = HEAP32[$iDc>>2]|0; - $141 = $140 & 512; - $142 = (0)==($141|0); - if (!($142)) { - break; - } - $143 = HEAP32[$1>>2]|0; - $144 = (($143) + 44|0); - HEAP32[$144>>2] = 0; - $145 = HEAP32[$1>>2]|0; - $146 = (_writeJournalHdr($145)|0); - HEAP32[$rc>>2] = $146; - $147 = HEAP32[$rc>>2]|0; - $148 = ($147|0)!=(0); - if (!($148)) { - break; - } - $149 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $149; - $169 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($169|0); - } - } - $150 = HEAP32[$1>>2]|0; - $151 = (($150) + 72|0); - $152 = $151; - $153 = $152; - $154 = HEAP32[$153>>2]|0; - $155 = (($152) + 4)|0; - $156 = $155; - $157 = HEAP32[$156>>2]|0; - $158 = HEAP32[$1>>2]|0; - $159 = (($158) + 80|0); - $160 = $159; - $161 = $160; - HEAP32[$161>>2] = $154; - $162 = (($160) + 4)|0; - $163 = $162; - HEAP32[$163>>2] = $157; - } - } while(0); - $164 = HEAP32[$1>>2]|0; - $165 = (($164) + 204|0); - $166 = HEAP32[$165>>2]|0; - _sqlite3PcacheClearSyncFlags($166); - $167 = HEAP32[$1>>2]|0; - $168 = (($167) + 16|0); - HEAP8[$168>>0] = 4; - HEAP32[$0>>2] = 0; - $169 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($169|0); -} -function _pager_write_pagelist($pPager,$pList) { - $pPager = $pPager|0; - $pList = $pList|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $offset = 0, $pData = 0, $pgno = 0, $rc = 0, $szFile = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $rc = sp + 24|0; - $szFile = sp + 8|0; - $pgno = sp + 20|0; - $offset = sp; - $pData = sp + 16|0; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $pList; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 60|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 60|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 144|0); - $13 = HEAP32[$12>>2]|0; - $14 = (_pagerOpentemp($7,$10,$13)|0); - HEAP32[$rc>>2] = $14; - } - $15 = HEAP32[$rc>>2]|0; - $16 = ($15|0)==(0); - do { - if ($16) { - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 36|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 24|0); - $22 = HEAP32[$21>>2]|0; - $23 = ($19>>>0)<($22>>>0); - if ($23) { - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 12|0); - $26 = HEAP32[$25>>2]|0; - $27 = ($26|0)!=(0|0); - if (!($27)) { - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 20|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 36|0); - $33 = HEAP32[$32>>2]|0; - $34 = ($30>>>0)>($33>>>0); - if (!($34)) { - break; - } - } - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + 152|0); - $37 = HEAP32[$36>>2]|0; - $38 = ($37|0)<(0); - $39 = $38 << 31 >> 31; - $40 = HEAP32[$0>>2]|0; - $41 = (($40) + 24|0); - $42 = HEAP32[$41>>2]|0; - $43 = (___muldi3(($37|0),($39|0),($42|0),0)|0); - $44 = tempRet0; - $45 = $szFile; - $46 = $45; - HEAP32[$46>>2] = $43; - $47 = (($45) + 4)|0; - $48 = $47; - HEAP32[$48>>2] = $44; - $49 = HEAP32[$0>>2]|0; - $50 = (($49) + 60|0); - $51 = HEAP32[$50>>2]|0; - _sqlite3OsFileControlHint($51,5,$szFile); - $52 = HEAP32[$0>>2]|0; - $53 = (($52) + 24|0); - $54 = HEAP32[$53>>2]|0; - $55 = HEAP32[$0>>2]|0; - $56 = (($55) + 36|0); - HEAP32[$56>>2] = $54; - } - } - } while(0); - while(1) { - $57 = HEAP32[$rc>>2]|0; - $58 = ($57|0)==(0); - if (!($58)) { - label = 20; - break; - } - $59 = HEAP32[$1>>2]|0; - $60 = ($59|0)!=(0|0); - if (!($60)) { - label = 20; - break; - } - $61 = HEAP32[$1>>2]|0; - $62 = (($61) + 20|0); - $63 = HEAP32[$62>>2]|0; - HEAP32[$pgno>>2] = $63; - $64 = HEAP32[$pgno>>2]|0; - $65 = HEAP32[$0>>2]|0; - $66 = (($65) + 24|0); - $67 = HEAP32[$66>>2]|0; - $68 = ($64>>>0)<=($67>>>0); - if ($68) { - $69 = HEAP32[$1>>2]|0; - $70 = (($69) + 24|0); - $71 = HEAP16[$70>>1]|0; - $72 = $71&65535; - $73 = $72 & 32; - $74 = (0)==($73|0); - if ($74) { - $75 = HEAP32[$pgno>>2]|0; - $76 = (($75) - 1)|0; - $77 = HEAP32[$0>>2]|0; - $78 = (($77) + 152|0); - $79 = HEAP32[$78>>2]|0; - $80 = ($79|0)<(0); - $81 = $80 << 31 >> 31; - $82 = (___muldi3(($76|0),0,($79|0),($81|0))|0); - $83 = tempRet0; - $84 = $offset; - $85 = $84; - HEAP32[$85>>2] = $82; - $86 = (($84) + 4)|0; - $87 = $86; - HEAP32[$87>>2] = $83; - $88 = HEAP32[$1>>2]|0; - $89 = (($88) + 20|0); - $90 = HEAP32[$89>>2]|0; - $91 = ($90|0)==(1); - if ($91) { - $92 = HEAP32[$1>>2]|0; - _pager_write_changecounter($92); - } - $93 = HEAP32[$1>>2]|0; - $94 = (($93) + 4|0); - $95 = HEAP32[$94>>2]|0; - HEAP32[$pData>>2] = $95; - $96 = HEAP32[$0>>2]|0; - $97 = (($96) + 60|0); - $98 = HEAP32[$97>>2]|0; - $99 = HEAP32[$pData>>2]|0; - $100 = HEAP32[$0>>2]|0; - $101 = (($100) + 152|0); - $102 = HEAP32[$101>>2]|0; - $103 = $offset; - $104 = $103; - $105 = HEAP32[$104>>2]|0; - $106 = (($103) + 4)|0; - $107 = $106; - $108 = HEAP32[$107>>2]|0; - $109 = (_sqlite3OsWrite($98,$99,$102,$105,$108)|0); - HEAP32[$rc>>2] = $109; - $110 = HEAP32[$pgno>>2]|0; - $111 = ($110|0)==(1); - if ($111) { - $112 = HEAP32[$0>>2]|0; - $113 = (($112) + 100|0); - $114 = HEAP32[$pData>>2]|0; - $115 = (($114) + 24|0); - dest=$113+0|0; src=$115+0|0; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); - } - $116 = HEAP32[$pgno>>2]|0; - $117 = HEAP32[$0>>2]|0; - $118 = (($117) + 32|0); - $119 = HEAP32[$118>>2]|0; - $120 = ($116>>>0)>($119>>>0); - if ($120) { - $121 = HEAP32[$pgno>>2]|0; - $122 = HEAP32[$0>>2]|0; - $123 = (($122) + 32|0); - HEAP32[$123>>2] = $121; - } - $124 = HEAP32[$0>>2]|0; - $125 = (($124) + 184|0); - $126 = (($125) + 8|0); - $127 = HEAP32[$126>>2]|0; - $128 = (($127) + 1)|0; - HEAP32[$126>>2] = $128; - $129 = HEAP32[$0>>2]|0; - $130 = (($129) + 88|0); - $131 = HEAP32[$130>>2]|0; - $132 = HEAP32[$pgno>>2]|0; - $133 = HEAP32[$1>>2]|0; - $134 = (($133) + 4|0); - $135 = HEAP32[$134>>2]|0; - _sqlite3BackupUpdate($131,$132,$135); - } - } - $136 = HEAP32[$1>>2]|0; - $137 = (($136) + 12|0); - $138 = HEAP32[$137>>2]|0; - HEAP32[$1>>2] = $138; - } - if ((label|0) == 20) { - $139 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($139|0); - } - return 0|0; -} -function _pagerOpentemp($pPager,$pFile,$vfsFlags) { - $pPager = $pPager|0; - $pFile = $pFile|0; - $vfsFlags = $vfsFlags|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $pFile; - HEAP32[$2>>2] = $vfsFlags; - $3 = HEAP32[$2>>2]|0; - $4 = $3 | 30; - HEAP32[$2>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = (_sqlite3OsOpen($6,0,$7,$8,0)|0); - HEAP32[$rc>>2] = $9; - $10 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($10|0); -} -function _pager_write_changecounter($pPg) { - $pPg = $pPg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $change_counter = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $change_counter = sp; - HEAP32[$0>>2] = $pPg; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 16|0); - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 100|0); - $5 = (_sqlite3Get4byte($4)|0); - $6 = (($5) + 1)|0; - HEAP32[$change_counter>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + 24|0); - $11 = HEAP32[$change_counter>>2]|0; - _sqlite3Put4byte($10,$11); - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + 92|0); - $16 = HEAP32[$change_counter>>2]|0; - _sqlite3Put4byte($15,$16); - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($19) + 96|0); - _sqlite3Put4byte($20,3008005); - STACKTOP = sp;return; -} -function _sqlite3Put4byte($p,$v) { - $p = $p|0; - $v = $v|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $v; - $2 = HEAP32[$1>>2]|0; - $3 = $2 >>> 24; - $4 = $3&255; - $5 = HEAP32[$0>>2]|0; - HEAP8[$5>>0] = $4; - $6 = HEAP32[$1>>2]|0; - $7 = $6 >>> 16; - $8 = $7&255; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 1|0); - HEAP8[$10>>0] = $8; - $11 = HEAP32[$1>>2]|0; - $12 = $11 >>> 8; - $13 = $12&255; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 2|0); - HEAP8[$15>>0] = $13; - $16 = HEAP32[$1>>2]|0; - $17 = $16&255; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 3|0); - HEAP8[$19>>0] = $17; - STACKTOP = sp;return; -} -function _sqlite3PagerExclusiveLock($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$rc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (_pagerUseWal($1)|0); - $3 = (0)==($2|0); - if (!($3)) { - $6 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($6|0); - } - $4 = HEAP32[$0>>2]|0; - $5 = (_pager_wait_on_lock($4,4)|0); - HEAP32[$rc>>2] = $5; - $6 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($6|0); -} -function _writeJournalHdr($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; - var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; - var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; - var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; - var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $ii = 0, $nHeader = 0, $nWrite = 0, $rc = 0; - var $zHeader = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $rc = sp + 16|0; - $zHeader = sp + 12|0; - $nHeader = sp + 8|0; - $nWrite = sp + 4|0; - $ii = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$rc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 200|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$zHeader>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 152|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$nHeader>>2] = $6; - $7 = HEAP32[$nHeader>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 148|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($7>>>0)>($10>>>0); - if ($11) { - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 148|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$nHeader>>2] = $14; - } - HEAP32[$ii>>2] = 0; - while(1) { - $15 = HEAP32[$ii>>2]|0; - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 96|0); - $18 = HEAP32[$17>>2]|0; - $19 = ($15|0)<($18|0); - if (!($19)) { - break; - } - $20 = HEAP32[$ii>>2]|0; - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 92|0); - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + (($20*48)|0)|0); - $25 = (($24) + 8|0); - $26 = $25; - $27 = $26; - $28 = HEAP32[$27>>2]|0; - $29 = (($26) + 4)|0; - $30 = $29; - $31 = HEAP32[$30>>2]|0; - $32 = ($28|0)==(0); - $33 = ($31|0)==(0); - $34 = $32 & $33; - if ($34) { - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + 72|0); - $37 = $36; - $38 = $37; - $39 = HEAP32[$38>>2]|0; - $40 = (($37) + 4)|0; - $41 = $40; - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$ii>>2]|0; - $44 = HEAP32[$0>>2]|0; - $45 = (($44) + 92|0); - $46 = HEAP32[$45>>2]|0; - $47 = (($46) + (($43*48)|0)|0); - $48 = (($47) + 8|0); - $49 = $48; - $50 = $49; - HEAP32[$50>>2] = $39; - $51 = (($49) + 4)|0; - $52 = $51; - HEAP32[$52>>2] = $42; - } - $53 = HEAP32[$ii>>2]|0; - $54 = (($53) + 1)|0; - HEAP32[$ii>>2] = $54; - } - $55 = HEAP32[$0>>2]|0; - $56 = (_journalHdrOffset($55)|0); - $57 = tempRet0; - $58 = HEAP32[$0>>2]|0; - $59 = (($58) + 72|0); - $60 = $59; - $61 = $60; - HEAP32[$61>>2] = $56; - $62 = (($60) + 4)|0; - $63 = $62; - HEAP32[$63>>2] = $57; - $64 = HEAP32[$0>>2]|0; - $65 = (($64) + 80|0); - $66 = $65; - $67 = $66; - HEAP32[$67>>2] = $56; - $68 = (($66) + 4)|0; - $69 = $68; - HEAP32[$69>>2] = $57; - $70 = HEAP32[$0>>2]|0; - $71 = (($70) + 7|0); - $72 = HEAP8[$71>>0]|0; - $73 = $72&255; - $74 = ($73|0)!=(0); - if ($74) { - label = 11; - } else { - $75 = HEAP32[$0>>2]|0; - $76 = (($75) + 5|0); - $77 = HEAP8[$76>>0]|0; - $78 = $77&255; - $79 = ($78|0)==(4); - if ($79) { - label = 11; - } else { - $80 = HEAP32[$0>>2]|0; - $81 = (($80) + 60|0); - $82 = HEAP32[$81>>2]|0; - $83 = (_sqlite3OsDeviceCharacteristics($82)|0); - $84 = $83 & 512; - $85 = ($84|0)!=(0); - if ($85) { - label = 11; - } else { - $89 = HEAP32[$zHeader>>2]|0; - dest=$89+0|0; stop=dest+12|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); - } - } - } - if ((label|0) == 11) { - $86 = HEAP32[$zHeader>>2]|0; - ;HEAP8[$86+0>>0]=HEAP8[4336+0>>0]|0;HEAP8[$86+1>>0]=HEAP8[4336+1>>0]|0;HEAP8[$86+2>>0]=HEAP8[4336+2>>0]|0;HEAP8[$86+3>>0]=HEAP8[4336+3>>0]|0;HEAP8[$86+4>>0]=HEAP8[4336+4>>0]|0;HEAP8[$86+5>>0]=HEAP8[4336+5>>0]|0;HEAP8[$86+6>>0]=HEAP8[4336+6>>0]|0;HEAP8[$86+7>>0]=HEAP8[4336+7>>0]|0; - $87 = HEAP32[$zHeader>>2]|0; - $88 = (($87) + 8|0); - _sqlite3Put4byte($88,-1); - } - $90 = HEAP32[$0>>2]|0; - $91 = (($90) + 48|0); - _sqlite3_randomness(4,$91); - $92 = HEAP32[$zHeader>>2]|0; - $93 = (($92) + 12|0); - $94 = HEAP32[$0>>2]|0; - $95 = (($94) + 48|0); - $96 = HEAP32[$95>>2]|0; - _sqlite3Put4byte($93,$96); - $97 = HEAP32[$zHeader>>2]|0; - $98 = (($97) + 16|0); - $99 = HEAP32[$0>>2]|0; - $100 = (($99) + 28|0); - $101 = HEAP32[$100>>2]|0; - _sqlite3Put4byte($98,$101); - $102 = HEAP32[$zHeader>>2]|0; - $103 = (($102) + 20|0); - $104 = HEAP32[$0>>2]|0; - $105 = (($104) + 148|0); - $106 = HEAP32[$105>>2]|0; - _sqlite3Put4byte($103,$106); - $107 = HEAP32[$zHeader>>2]|0; - $108 = (($107) + 24|0); - $109 = HEAP32[$0>>2]|0; - $110 = (($109) + 152|0); - $111 = HEAP32[$110>>2]|0; - _sqlite3Put4byte($108,$111); - $112 = HEAP32[$zHeader>>2]|0; - $113 = (($112) + 28|0); - $114 = HEAP32[$nHeader>>2]|0; - $115 = (($114) - 28)|0; - _memset(($113|0),0,($115|0))|0; - HEAP32[$nWrite>>2] = 0; - while(1) { - $116 = HEAP32[$rc>>2]|0; - $117 = ($116|0)==(0); - if (!($117)) { - label = 17; - break; - } - $118 = HEAP32[$nWrite>>2]|0; - $119 = HEAP32[$0>>2]|0; - $120 = (($119) + 148|0); - $121 = HEAP32[$120>>2]|0; - $122 = ($118>>>0)<($121>>>0); - if (!($122)) { - label = 17; - break; - } - $123 = HEAP32[$0>>2]|0; - $124 = (($123) + 64|0); - $125 = HEAP32[$124>>2]|0; - $126 = HEAP32[$zHeader>>2]|0; - $127 = HEAP32[$nHeader>>2]|0; - $128 = HEAP32[$0>>2]|0; - $129 = (($128) + 72|0); - $130 = $129; - $131 = $130; - $132 = HEAP32[$131>>2]|0; - $133 = (($130) + 4)|0; - $134 = $133; - $135 = HEAP32[$134>>2]|0; - $136 = (_sqlite3OsWrite($125,$126,$127,$132,$135)|0); - HEAP32[$rc>>2] = $136; - $137 = HEAP32[$nHeader>>2]|0; - $138 = HEAP32[$0>>2]|0; - $139 = (($138) + 72|0); - $140 = $139; - $141 = $140; - $142 = HEAP32[$141>>2]|0; - $143 = (($140) + 4)|0; - $144 = $143; - $145 = HEAP32[$144>>2]|0; - $146 = (_i64Add(($142|0),($145|0),($137|0),0)|0); - $147 = tempRet0; - $148 = $139; - $149 = $148; - HEAP32[$149>>2] = $146; - $150 = (($148) + 4)|0; - $151 = $150; - HEAP32[$151>>2] = $147; - $152 = HEAP32[$nHeader>>2]|0; - $153 = HEAP32[$nWrite>>2]|0; - $154 = (($153) + ($152))|0; - HEAP32[$nWrite>>2] = $154; - } - if ((label|0) == 17) { - $155 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($155|0); - } - return 0|0; -} -function _sqlite3PcacheClearSyncFlags($pCache) { - $pCache = $pCache|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pCache; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$p>>2] = $2; - while(1) { - $3 = HEAP32[$p>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - break; - } - $5 = HEAP32[$p>>2]|0; - $6 = (($5) + 24|0); - $7 = HEAP16[$6>>1]|0; - $8 = $7&65535; - $9 = $8 & -5; - $10 = $9&65535; - HEAP16[$6>>1] = $10; - $11 = HEAP32[$p>>2]|0; - $12 = (($11) + 32|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$p>>2] = $13; - } - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 4|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 8|0); - HEAP32[$18>>2] = $16; - STACKTOP = sp;return; -} -function _pager_wait_on_lock($pPager,$locktype) { - $pPager = $pPager|0; - $locktype = $locktype|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $locktype; - while(1) { - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_pagerLockDb($2,$3)|0); - HEAP32[$rc>>2] = $4; - $5 = HEAP32[$rc>>2]|0; - $6 = ($5|0)==(5); - if (!($6)) { - label = 4; - break; - } - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 176|0); - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 180|0); - $12 = HEAP32[$11>>2]|0; - $13 = (FUNCTION_TABLE_ii[$9 & 31]($12)|0); - $14 = ($13|0)!=(0); - if (!($14)) { - label = 4; - break; - } - } - if ((label|0) == 4) { - $15 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($15|0); - } - return 0|0; -} -function _pagerLockDb($pPager,$eLock) { - $pPager = $pPager|0; - $eLock = $eLock|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $eLock; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 17|0); - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - $6 = HEAP32[$1>>2]|0; - $7 = ($5|0)<($6|0); - if (!($7)) { - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 17|0); - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - $12 = ($11|0)==(5); - if (!($12)) { - $37 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($37|0); - } - } - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 13|0); - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - $17 = ($16|0)!=(0); - if ($17) { - $23 = 0; - } else { - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 60|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$1>>2]|0; - $22 = (_sqlite3OsLock($20,$21)|0); - $23 = $22; - } - HEAP32[$rc>>2] = $23; - $24 = HEAP32[$rc>>2]|0; - $25 = ($24|0)==(0); - if (!($25)) { - $37 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($37|0); - } - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 17|0); - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = ($29|0)!=(5); - if (!($30)) { - $31 = HEAP32[$1>>2]|0; - $32 = ($31|0)==(4); - if (!($32)) { - $37 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($37|0); - } - } - $33 = HEAP32[$1>>2]|0; - $34 = $33&255; - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + 17|0); - HEAP8[$36>>0] = $34; - $37 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($37|0); -} -function _sqlite3WalFrames($pWal,$szPage,$pList,$nTruncate,$isCommit,$sync_flags) { - $pWal = $pWal|0; - $szPage = $szPage|0; - $pList = $pList|0; - $nTruncate = $nTruncate|0; - $isCommit = $isCommit|0; - $sync_flags = $sync_flags|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; - var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; - var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; - var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; - var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; - var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; - var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; - var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; - var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; - var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; - var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0; - var $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0; - var $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0; - var $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0; - var $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0; - var $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0; - var $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0; - var $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; - var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; - var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; - var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aCksum = 0, $aWalHdr = 0, $iFrame = 0, $iOffset = 0, $nDbSize = 0, $nExtra = 0, $p = 0, $pLast = 0; - var $rc = 0, $sectorSize = 0, $sz = 0, $szFrame = 0, $w = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 144|0; - $0 = sp + 104|0; - $1 = sp + 100|0; - $2 = sp + 96|0; - $3 = sp + 92|0; - $4 = sp + 88|0; - $5 = sp + 84|0; - $6 = sp + 80|0; - $rc = sp + 76|0; - $iFrame = sp + 72|0; - $p = sp + 68|0; - $pLast = sp + 64|0; - $nExtra = sp + 60|0; - $szFrame = sp + 56|0; - $iOffset = sp + 32|0; - $w = sp + 8|0; - $aWalHdr = sp + 112|0; - $aCksum = sp + 48|0; - $nDbSize = sp + 44|0; - $sectorSize = sp + 40|0; - $sz = sp; - HEAP32[$1>>2] = $pWal; - HEAP32[$2>>2] = $szPage; - HEAP32[$3>>2] = $pList; - HEAP32[$4>>2] = $nTruncate; - HEAP32[$5>>2] = $isCommit; - HEAP32[$6>>2] = $sync_flags; - HEAP32[$pLast>>2] = 0; - HEAP32[$nExtra>>2] = 0; - $7 = HEAP32[$1>>2]|0; - $8 = (_walRestartLog($7)|0); - HEAP32[$rc>>2] = $8; - $9 = (0)!=($8|0); - if ($9) { - $10 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $10; - $410 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($410|0); - } - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 52|0); - $13 = (($12) + 16|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$iFrame>>2] = $14; - $15 = HEAP32[$iFrame>>2]|0; - $16 = ($15|0)==(0); - if ($16) { - $17 = HEAP8[1392>>0]|0; - $18 = $17 << 24 >> 24; - $19 = ($18|0)==(0); - $20 = $19&1; - $21 = 931071618 | $20; - _sqlite3Put4byte($aWalHdr,$21); - $22 = (($aWalHdr) + 4|0); - _sqlite3Put4byte($22,3007000); - $23 = (($aWalHdr) + 8|0); - $24 = HEAP32[$2>>2]|0; - _sqlite3Put4byte($23,$24); - $25 = (($aWalHdr) + 12|0); - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 104|0); - $28 = HEAP32[$27>>2]|0; - _sqlite3Put4byte($25,$28); - $29 = HEAP32[$1>>2]|0; - $30 = (($29) + 104|0); - $31 = HEAP32[$30>>2]|0; - $32 = ($31|0)==(0); - if ($32) { - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 52|0); - $35 = (($34) + 32|0); - _sqlite3_randomness(8,$35); - } - $36 = (($aWalHdr) + 16|0); - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 52|0); - $39 = (($38) + 32|0); - ;HEAP8[$36+0>>0]=HEAP8[$39+0>>0]|0;HEAP8[$36+1>>0]=HEAP8[$39+1>>0]|0;HEAP8[$36+2>>0]=HEAP8[$39+2>>0]|0;HEAP8[$36+3>>0]=HEAP8[$39+3>>0]|0;HEAP8[$36+4>>0]=HEAP8[$39+4>>0]|0;HEAP8[$36+5>>0]=HEAP8[$39+5>>0]|0;HEAP8[$36+6>>0]=HEAP8[$39+6>>0]|0;HEAP8[$36+7>>0]=HEAP8[$39+7>>0]|0; - _walChecksumBytes(1,$aWalHdr,24,0,$aCksum); - $40 = (($aWalHdr) + 24|0); - $41 = HEAP32[$aCksum>>2]|0; - _sqlite3Put4byte($40,$41); - $42 = (($aWalHdr) + 28|0); - $43 = (($aCksum) + 4|0); - $44 = HEAP32[$43>>2]|0; - _sqlite3Put4byte($42,$44); - $45 = HEAP32[$2>>2]|0; - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 36|0); - HEAP32[$47>>2] = $45; - $48 = HEAP8[1392>>0]|0; - $49 = $48 << 24 >> 24; - $50 = ($49|0)==(0); - $51 = $50&1; - $52 = $51&255; - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + 52|0); - $55 = (($54) + 13|0); - HEAP8[$55>>0] = $52; - $56 = HEAP32[$aCksum>>2]|0; - $57 = HEAP32[$1>>2]|0; - $58 = (($57) + 52|0); - $59 = (($58) + 24|0); - HEAP32[$59>>2] = $56; - $60 = (($aCksum) + 4|0); - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$1>>2]|0; - $63 = (($62) + 52|0); - $64 = (($63) + 24|0); - $65 = (($64) + 4|0); - HEAP32[$65>>2] = $61; - $66 = HEAP32[$1>>2]|0; - $67 = (($66) + 47|0); - HEAP8[$67>>0] = 1; - $68 = HEAP32[$1>>2]|0; - $69 = (($68) + 8|0); - $70 = HEAP32[$69>>2]|0; - $71 = (_sqlite3OsWrite($70,$aWalHdr,32,0,0)|0); - HEAP32[$rc>>2] = $71; - $72 = HEAP32[$rc>>2]|0; - $73 = ($72|0)!=(0); - if ($73) { - $74 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $74; - $410 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($410|0); - } - $75 = HEAP32[$1>>2]|0; - $76 = (($75) + 48|0); - $77 = HEAP8[$76>>0]|0; - $78 = $77&255; - $79 = ($78|0)!=(0); - if ($79) { - $80 = HEAP32[$6>>2]|0; - $81 = ($80|0)!=(0); - if ($81) { - $82 = HEAP32[$1>>2]|0; - $83 = (($82) + 8|0); - $84 = HEAP32[$83>>2]|0; - $85 = HEAP32[$6>>2]|0; - $86 = $85 & 19; - $87 = (_sqlite3OsSync($84,$86)|0); - HEAP32[$rc>>2] = $87; - $88 = HEAP32[$rc>>2]|0; - $89 = ($88|0)!=(0); - if ($89) { - $90 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $90; - $410 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($410|0); - } - } - } - } - $91 = HEAP32[$1>>2]|0; - HEAP32[$w>>2] = $91; - $92 = HEAP32[$1>>2]|0; - $93 = (($92) + 8|0); - $94 = HEAP32[$93>>2]|0; - $95 = (($w) + 4|0); - HEAP32[$95>>2] = $94; - $96 = (($w) + 8|0); - $97 = $96; - $98 = $97; - HEAP32[$98>>2] = 0; - $99 = (($97) + 4)|0; - $100 = $99; - HEAP32[$100>>2] = 0; - $101 = HEAP32[$6>>2]|0; - $102 = (($w) + 16|0); - HEAP32[$102>>2] = $101; - $103 = HEAP32[$2>>2]|0; - $104 = (($w) + 20|0); - HEAP32[$104>>2] = $103; - $105 = HEAP32[$iFrame>>2]|0; - $106 = (($105) + 1)|0; - $107 = (($106) - 1)|0; - $108 = HEAP32[$2>>2]|0; - $109 = (($108) + 24)|0; - $110 = ($109|0)<(0); - $111 = $110 << 31 >> 31; - $112 = (___muldi3(($107|0),0,($109|0),($111|0))|0); - $113 = tempRet0; - $114 = (_i64Add(32,0,($112|0),($113|0))|0); - $115 = tempRet0; - $116 = $iOffset; - $117 = $116; - HEAP32[$117>>2] = $114; - $118 = (($116) + 4)|0; - $119 = $118; - HEAP32[$119>>2] = $115; - $120 = HEAP32[$2>>2]|0; - $121 = (($120) + 24)|0; - HEAP32[$szFrame>>2] = $121; - $122 = HEAP32[$3>>2]|0; - HEAP32[$p>>2] = $122; - while(1) { - $123 = HEAP32[$p>>2]|0; - $124 = ($123|0)!=(0|0); - if (!($124)) { - break; - } - $125 = HEAP32[$iFrame>>2]|0; - $126 = (($125) + 1)|0; - HEAP32[$iFrame>>2] = $126; - $127 = HEAP32[$5>>2]|0; - $128 = ($127|0)!=(0); - if ($128) { - $129 = HEAP32[$p>>2]|0; - $130 = (($129) + 12|0); - $131 = HEAP32[$130>>2]|0; - $132 = ($131|0)==(0|0); - $133 = HEAP32[$4>>2]|0; - $$ = $132 ? $133 : 0; - $134 = $$; - } else { - $134 = 0; - } - HEAP32[$nDbSize>>2] = $134; - $135 = HEAP32[$p>>2]|0; - $136 = HEAP32[$nDbSize>>2]|0; - $137 = $iOffset; - $138 = $137; - $139 = HEAP32[$138>>2]|0; - $140 = (($137) + 4)|0; - $141 = $140; - $142 = HEAP32[$141>>2]|0; - $143 = (_walWriteOneFrame($w,$135,$136,$139,$142)|0); - HEAP32[$rc>>2] = $143; - $144 = HEAP32[$rc>>2]|0; - $145 = ($144|0)!=(0); - if ($145) { - label = 17; - break; - } - $147 = HEAP32[$p>>2]|0; - HEAP32[$pLast>>2] = $147; - $148 = HEAP32[$szFrame>>2]|0; - $149 = ($148|0)<(0); - $150 = $149 << 31 >> 31; - $151 = $iOffset; - $152 = $151; - $153 = HEAP32[$152>>2]|0; - $154 = (($151) + 4)|0; - $155 = $154; - $156 = HEAP32[$155>>2]|0; - $157 = (_i64Add(($153|0),($156|0),($148|0),($150|0))|0); - $158 = tempRet0; - $159 = $iOffset; - $160 = $159; - HEAP32[$160>>2] = $157; - $161 = (($159) + 4)|0; - $162 = $161; - HEAP32[$162>>2] = $158; - $163 = HEAP32[$p>>2]|0; - $164 = (($163) + 12|0); - $165 = HEAP32[$164>>2]|0; - HEAP32[$p>>2] = $165; - } - if ((label|0) == 17) { - $146 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $146; - $410 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($410|0); - } - $166 = HEAP32[$5>>2]|0; - $167 = ($166|0)!=(0); - L30: do { - if ($167) { - $168 = HEAP32[$6>>2]|0; - $169 = $168 & 32; - $170 = ($169|0)!=(0); - if ($170) { - $171 = HEAP32[$1>>2]|0; - $172 = (($171) + 49|0); - $173 = HEAP8[$172>>0]|0; - $174 = ($173<<24>>24)!=(0); - if (!($174)) { - $254 = (($w) + 4|0); - $255 = HEAP32[$254>>2]|0; - $256 = HEAP32[$6>>2]|0; - $257 = $256 & 19; - $258 = (_sqlite3OsSync($255,$257)|0); - HEAP32[$rc>>2] = $258; - break; - } - $175 = HEAP32[$1>>2]|0; - $176 = (($175) + 8|0); - $177 = HEAP32[$176>>2]|0; - $178 = (_sqlite3SectorSize($177)|0); - HEAP32[$sectorSize>>2] = $178; - $179 = $iOffset; - $180 = $179; - $181 = HEAP32[$180>>2]|0; - $182 = (($179) + 4)|0; - $183 = $182; - $184 = HEAP32[$183>>2]|0; - $185 = HEAP32[$sectorSize>>2]|0; - $186 = ($185|0)<(0); - $187 = $186 << 31 >> 31; - $188 = (_i64Add(($181|0),($184|0),($185|0),($187|0))|0); - $189 = tempRet0; - $190 = (_i64Subtract(($188|0),($189|0),1,0)|0); - $191 = tempRet0; - $192 = HEAP32[$sectorSize>>2]|0; - $193 = ($192|0)<(0); - $194 = $193 << 31 >> 31; - $195 = (___divdi3(($190|0),($191|0),($192|0),($194|0))|0); - $196 = tempRet0; - $197 = HEAP32[$sectorSize>>2]|0; - $198 = ($197|0)<(0); - $199 = $198 << 31 >> 31; - $200 = (___muldi3(($195|0),($196|0),($197|0),($199|0))|0); - $201 = tempRet0; - $202 = (($w) + 8|0); - $203 = $202; - $204 = $203; - HEAP32[$204>>2] = $200; - $205 = (($203) + 4)|0; - $206 = $205; - HEAP32[$206>>2] = $201; - while(1) { - $207 = $iOffset; - $208 = $207; - $209 = HEAP32[$208>>2]|0; - $210 = (($207) + 4)|0; - $211 = $210; - $212 = HEAP32[$211>>2]|0; - $213 = (($w) + 8|0); - $214 = $213; - $215 = $214; - $216 = HEAP32[$215>>2]|0; - $217 = (($214) + 4)|0; - $218 = $217; - $219 = HEAP32[$218>>2]|0; - $220 = ($212|0)<($219|0); - $221 = ($212|0)==($219|0); - $222 = ($209>>>0)<($216>>>0); - $223 = $221 & $222; - $224 = $220 | $223; - if (!($224)) { - break L30; - } - $225 = HEAP32[$pLast>>2]|0; - $226 = HEAP32[$4>>2]|0; - $227 = $iOffset; - $228 = $227; - $229 = HEAP32[$228>>2]|0; - $230 = (($227) + 4)|0; - $231 = $230; - $232 = HEAP32[$231>>2]|0; - $233 = (_walWriteOneFrame($w,$225,$226,$229,$232)|0); - HEAP32[$rc>>2] = $233; - $234 = HEAP32[$rc>>2]|0; - $235 = ($234|0)!=(0); - if ($235) { - break; - } - $237 = HEAP32[$szFrame>>2]|0; - $238 = ($237|0)<(0); - $239 = $238 << 31 >> 31; - $240 = $iOffset; - $241 = $240; - $242 = HEAP32[$241>>2]|0; - $243 = (($240) + 4)|0; - $244 = $243; - $245 = HEAP32[$244>>2]|0; - $246 = (_i64Add(($242|0),($245|0),($237|0),($239|0))|0); - $247 = tempRet0; - $248 = $iOffset; - $249 = $248; - HEAP32[$249>>2] = $246; - $250 = (($248) + 4)|0; - $251 = $250; - HEAP32[$251>>2] = $247; - $252 = HEAP32[$nExtra>>2]|0; - $253 = (($252) + 1)|0; - HEAP32[$nExtra>>2] = $253; - } - $236 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $236; - $410 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($410|0); - } - } - } while(0); - $259 = HEAP32[$5>>2]|0; - $260 = ($259|0)!=(0); - if ($260) { - $261 = HEAP32[$1>>2]|0; - $262 = (($261) + 47|0); - $263 = HEAP8[$262>>0]|0; - $264 = $263&255; - $265 = ($264|0)!=(0); - if ($265) { - $266 = HEAP32[$1>>2]|0; - $267 = (($266) + 16|0); - $268 = $267; - $269 = $268; - $270 = HEAP32[$269>>2]|0; - $271 = (($268) + 4)|0; - $272 = $271; - $273 = HEAP32[$272>>2]|0; - $274 = ($273|0)>(0); - $275 = ($273|0)==(0); - $276 = ($270>>>0)>=(0); - $277 = $275 & $276; - $278 = $274 | $277; - if ($278) { - $279 = HEAP32[$1>>2]|0; - $280 = (($279) + 16|0); - $281 = $280; - $282 = $281; - $283 = HEAP32[$282>>2]|0; - $284 = (($281) + 4)|0; - $285 = $284; - $286 = HEAP32[$285>>2]|0; - $287 = $sz; - $288 = $287; - HEAP32[$288>>2] = $283; - $289 = (($287) + 4)|0; - $290 = $289; - HEAP32[$290>>2] = $286; - $291 = HEAP32[$iFrame>>2]|0; - $292 = HEAP32[$nExtra>>2]|0; - $293 = (($291) + ($292))|0; - $294 = (($293) + 1)|0; - $295 = (($294) - 1)|0; - $296 = HEAP32[$2>>2]|0; - $297 = (($296) + 24)|0; - $298 = ($297|0)<(0); - $299 = $298 << 31 >> 31; - $300 = (___muldi3(($295|0),0,($297|0),($299|0))|0); - $301 = tempRet0; - $302 = (_i64Add(32,0,($300|0),($301|0))|0); - $303 = tempRet0; - $304 = HEAP32[$1>>2]|0; - $305 = (($304) + 16|0); - $306 = $305; - $307 = $306; - $308 = HEAP32[$307>>2]|0; - $309 = (($306) + 4)|0; - $310 = $309; - $311 = HEAP32[$310>>2]|0; - $312 = ($303|0)>($311|0); - $313 = ($303|0)==($311|0); - $314 = ($302>>>0)>($308>>>0); - $315 = $313 & $314; - $316 = $312 | $315; - if ($316) { - $317 = HEAP32[$iFrame>>2]|0; - $318 = HEAP32[$nExtra>>2]|0; - $319 = (($317) + ($318))|0; - $320 = (($319) + 1)|0; - $321 = (($320) - 1)|0; - $322 = HEAP32[$2>>2]|0; - $323 = (($322) + 24)|0; - $324 = ($323|0)<(0); - $325 = $324 << 31 >> 31; - $326 = (___muldi3(($321|0),0,($323|0),($325|0))|0); - $327 = tempRet0; - $328 = (_i64Add(32,0,($326|0),($327|0))|0); - $329 = tempRet0; - $330 = $sz; - $331 = $330; - HEAP32[$331>>2] = $328; - $332 = (($330) + 4)|0; - $333 = $332; - HEAP32[$333>>2] = $329; - } - $334 = HEAP32[$1>>2]|0; - $335 = $sz; - $336 = $335; - $337 = HEAP32[$336>>2]|0; - $338 = (($335) + 4)|0; - $339 = $338; - $340 = HEAP32[$339>>2]|0; - _walLimitSize($334,$337,$340); - $341 = HEAP32[$1>>2]|0; - $342 = (($341) + 47|0); - HEAP8[$342>>0] = 0; - } - } - } - $343 = HEAP32[$1>>2]|0; - $344 = (($343) + 52|0); - $345 = (($344) + 16|0); - $346 = HEAP32[$345>>2]|0; - HEAP32[$iFrame>>2] = $346; - $347 = HEAP32[$3>>2]|0; - HEAP32[$p>>2] = $347; - while(1) { - $348 = HEAP32[$p>>2]|0; - $349 = ($348|0)!=(0|0); - if (!($349)) { - break; - } - $350 = HEAP32[$rc>>2]|0; - $351 = ($350|0)==(0); - if (!($351)) { - break; - } - $352 = HEAP32[$iFrame>>2]|0; - $353 = (($352) + 1)|0; - HEAP32[$iFrame>>2] = $353; - $354 = HEAP32[$1>>2]|0; - $355 = HEAP32[$iFrame>>2]|0; - $356 = HEAP32[$p>>2]|0; - $357 = (($356) + 20|0); - $358 = HEAP32[$357>>2]|0; - $359 = (_walIndexAppend($354,$355,$358)|0); - HEAP32[$rc>>2] = $359; - $360 = HEAP32[$p>>2]|0; - $361 = (($360) + 12|0); - $362 = HEAP32[$361>>2]|0; - HEAP32[$p>>2] = $362; - } - while(1) { - $363 = HEAP32[$rc>>2]|0; - $364 = ($363|0)==(0); - if (!($364)) { - break; - } - $365 = HEAP32[$nExtra>>2]|0; - $366 = ($365|0)>(0); - if (!($366)) { - break; - } - $367 = HEAP32[$iFrame>>2]|0; - $368 = (($367) + 1)|0; - HEAP32[$iFrame>>2] = $368; - $369 = HEAP32[$nExtra>>2]|0; - $370 = (($369) + -1)|0; - HEAP32[$nExtra>>2] = $370; - $371 = HEAP32[$1>>2]|0; - $372 = HEAP32[$iFrame>>2]|0; - $373 = HEAP32[$pLast>>2]|0; - $374 = (($373) + 20|0); - $375 = HEAP32[$374>>2]|0; - $376 = (_walIndexAppend($371,$372,$375)|0); - HEAP32[$rc>>2] = $376; - } - $377 = HEAP32[$rc>>2]|0; - $378 = ($377|0)==(0); - if ($378) { - $379 = HEAP32[$2>>2]|0; - $380 = $379 & 65280; - $381 = HEAP32[$2>>2]|0; - $382 = $381 >> 16; - $383 = $380 | $382; - $384 = $383&65535; - $385 = HEAP32[$1>>2]|0; - $386 = (($385) + 52|0); - $387 = (($386) + 14|0); - HEAP16[$387>>1] = $384; - $388 = HEAP32[$iFrame>>2]|0; - $389 = HEAP32[$1>>2]|0; - $390 = (($389) + 52|0); - $391 = (($390) + 16|0); - HEAP32[$391>>2] = $388; - $392 = HEAP32[$5>>2]|0; - $393 = ($392|0)!=(0); - if ($393) { - $394 = HEAP32[$1>>2]|0; - $395 = (($394) + 52|0); - $396 = (($395) + 8|0); - $397 = HEAP32[$396>>2]|0; - $398 = (($397) + 1)|0; - HEAP32[$396>>2] = $398; - $399 = HEAP32[$4>>2]|0; - $400 = HEAP32[$1>>2]|0; - $401 = (($400) + 52|0); - $402 = (($401) + 20|0); - HEAP32[$402>>2] = $399; - } - $403 = HEAP32[$5>>2]|0; - $404 = ($403|0)!=(0); - if ($404) { - $405 = HEAP32[$1>>2]|0; - _walIndexWriteHdr($405); - $406 = HEAP32[$iFrame>>2]|0; - $407 = HEAP32[$1>>2]|0; - $408 = (($407) + 12|0); - HEAP32[$408>>2] = $406; - } - } - $409 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $409; - $410 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($410|0); -} -function _walRestartLog($pWal) { - $pWal = $pWal|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; - var $9 = 0, $aSalt = 0, $cnt = 0, $i = 0, $notUsed = 0, $pInfo = 0, $rc = 0, $salt1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $rc = sp + 24|0; - $cnt = sp + 20|0; - $pInfo = sp + 16|0; - $salt1 = sp + 12|0; - $i = sp + 8|0; - $aSalt = sp + 4|0; - $notUsed = sp; - HEAP32[$1>>2] = $pWal; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 40|0); - $4 = HEAP16[$3>>1]|0; - $5 = $4 << 16 >> 16; - $6 = ($5|0)==(0); - if ($6) { - $7 = HEAP32[$1>>2]|0; - $8 = (_walCkptInfo($7)|0); - HEAP32[$pInfo>>2] = $8; - $9 = HEAP32[$pInfo>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = ($10>>>0)>(0); - do { - if ($11) { - _sqlite3_randomness(4,$salt1); - $12 = HEAP32[$1>>2]|0; - $13 = (_walLockExclusive($12,4,4)|0); - HEAP32[$rc>>2] = $13; - $14 = HEAP32[$rc>>2]|0; - $15 = ($14|0)==(0); - if (!($15)) { - $47 = HEAP32[$rc>>2]|0; - $48 = ($47|0)!=(5); - if (!($48)) { - break; - } - $49 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $49; - $60 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($60|0); - } - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 52|0); - $18 = (($17) + 32|0); - HEAP32[$aSalt>>2] = $18; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 104|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + 1)|0; - HEAP32[$20>>2] = $22; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 52|0); - $25 = (($24) + 16|0); - HEAP32[$25>>2] = 0; - $26 = HEAP32[$aSalt>>2]|0; - $27 = HEAP32[$aSalt>>2]|0; - $28 = (_sqlite3Get4byte($27)|0); - $29 = (1 + ($28))|0; - _sqlite3Put4byte($26,$29); - $30 = HEAP32[$salt1>>2]|0; - $31 = HEAP32[$aSalt>>2]|0; - $32 = (($31) + 4|0); - HEAP32[$32>>2] = $30; - $33 = HEAP32[$1>>2]|0; - _walIndexWriteHdr($33); - $34 = HEAP32[$pInfo>>2]|0; - HEAP32[$34>>2] = 0; - $35 = HEAP32[$pInfo>>2]|0; - $36 = (($35) + 4|0); - $37 = (($36) + 4|0); - HEAP32[$37>>2] = 0; - HEAP32[$i>>2] = 2; - while(1) { - $38 = HEAP32[$i>>2]|0; - $39 = ($38|0)<(5); - if (!($39)) { - break; - } - $40 = HEAP32[$i>>2]|0; - $41 = HEAP32[$pInfo>>2]|0; - $42 = (($41) + 4|0); - $43 = (($42) + ($40<<2)|0); - HEAP32[$43>>2] = -1; - $44 = HEAP32[$i>>2]|0; - $45 = (($44) + 1)|0; - HEAP32[$i>>2] = $45; - } - $46 = HEAP32[$1>>2]|0; - _walUnlockExclusive($46,4,4); - } - } while(0); - $50 = HEAP32[$1>>2]|0; - _walUnlockShared($50,3); - $51 = HEAP32[$1>>2]|0; - $52 = (($51) + 40|0); - HEAP16[$52>>1] = -1; - HEAP32[$cnt>>2] = 0; - while(1) { - $53 = HEAP32[$1>>2]|0; - $54 = HEAP32[$cnt>>2]|0; - $55 = (($54) + 1)|0; - HEAP32[$cnt>>2] = $55; - $56 = (_walTryBeginRead($53,$notUsed,1,$55)|0); - HEAP32[$rc>>2] = $56; - $57 = HEAP32[$rc>>2]|0; - $58 = ($57|0)==(-1); - if (!($58)) { - break; - } - } - } - $59 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $59; - $60 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($60|0); -} -function _walWriteOneFrame($p,$pPage,$nTruncate,$0,$1) { - $p = $p|0; - $pPage = $pPage|0; - $nTruncate = $nTruncate|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aFrame = 0, $pData = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $4 = sp + 20|0; - $5 = sp + 16|0; - $6 = sp; - $rc = sp + 12|0; - $pData = sp + 8|0; - $aFrame = sp + 32|0; - HEAP32[$3>>2] = $p; - HEAP32[$4>>2] = $pPage; - HEAP32[$5>>2] = $nTruncate; - $7 = $6; - $8 = $7; - HEAP32[$8>>2] = $0; - $9 = (($7) + 4)|0; - $10 = $9; - HEAP32[$10>>2] = $1; - $11 = HEAP32[$4>>2]|0; - $12 = (($11) + 4|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pData>>2] = $13; - $14 = HEAP32[$3>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$4>>2]|0; - $17 = (($16) + 20|0); - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$5>>2]|0; - $20 = HEAP32[$pData>>2]|0; - _walEncodeFrame($15,$18,$19,$20,$aFrame); - $21 = HEAP32[$3>>2]|0; - $22 = $6; - $23 = $22; - $24 = HEAP32[$23>>2]|0; - $25 = (($22) + 4)|0; - $26 = $25; - $27 = HEAP32[$26>>2]|0; - $28 = (_walWriteToLog($21,$aFrame,24,$24,$27)|0); - HEAP32[$rc>>2] = $28; - $29 = HEAP32[$rc>>2]|0; - $30 = ($29|0)!=(0); - if ($30) { - $31 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $31; - $47 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($47|0); - } else { - $32 = HEAP32[$3>>2]|0; - $33 = HEAP32[$pData>>2]|0; - $34 = HEAP32[$3>>2]|0; - $35 = (($34) + 20|0); - $36 = HEAP32[$35>>2]|0; - $37 = $6; - $38 = $37; - $39 = HEAP32[$38>>2]|0; - $40 = (($37) + 4)|0; - $41 = $40; - $42 = HEAP32[$41>>2]|0; - $43 = (_i64Add(($39|0),($42|0),24,0)|0); - $44 = tempRet0; - $45 = (_walWriteToLog($32,$33,$36,$43,$44)|0); - HEAP32[$rc>>2] = $45; - $46 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $46; - $47 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($47|0); - } - return 0|0; -} -function _walEncodeFrame($pWal,$iPage,$nTruncate,$aData,$aFrame) { - $pWal = $pWal|0; - $iPage = $iPage|0; - $nTruncate = $nTruncate|0; - $aData = $aData|0; - $aFrame = $aFrame|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aCksum = 0, $nativeCksum = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $nativeCksum = sp + 4|0; - $aCksum = sp; - HEAP32[$0>>2] = $pWal; - HEAP32[$1>>2] = $iPage; - HEAP32[$2>>2] = $nTruncate; - HEAP32[$3>>2] = $aData; - HEAP32[$4>>2] = $aFrame; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 52|0); - $7 = (($6) + 24|0); - HEAP32[$aCksum>>2] = $7; - $8 = HEAP32[$4>>2]|0; - $9 = HEAP32[$1>>2]|0; - _sqlite3Put4byte($8,$9); - $10 = HEAP32[$4>>2]|0; - $11 = (($10) + 4|0); - $12 = HEAP32[$2>>2]|0; - _sqlite3Put4byte($11,$12); - $13 = HEAP32[$4>>2]|0; - $14 = (($13) + 8|0); - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 52|0); - $17 = (($16) + 32|0); - ;HEAP8[$14+0>>0]=HEAP8[$17+0>>0]|0;HEAP8[$14+1>>0]=HEAP8[$17+1>>0]|0;HEAP8[$14+2>>0]=HEAP8[$17+2>>0]|0;HEAP8[$14+3>>0]=HEAP8[$17+3>>0]|0;HEAP8[$14+4>>0]=HEAP8[$17+4>>0]|0;HEAP8[$14+5>>0]=HEAP8[$17+5>>0]|0;HEAP8[$14+6>>0]=HEAP8[$17+6>>0]|0;HEAP8[$14+7>>0]=HEAP8[$17+7>>0]|0; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 52|0); - $20 = (($19) + 13|0); - $21 = HEAP8[$20>>0]|0; - $22 = $21&255; - $23 = HEAP8[1392>>0]|0; - $24 = $23 << 24 >> 24; - $25 = ($24|0)==(0); - $26 = $25&1; - $27 = ($22|0)==($26|0); - $28 = $27&1; - HEAP32[$nativeCksum>>2] = $28; - $29 = HEAP32[$nativeCksum>>2]|0; - $30 = HEAP32[$4>>2]|0; - $31 = HEAP32[$aCksum>>2]|0; - $32 = HEAP32[$aCksum>>2]|0; - _walChecksumBytes($29,$30,8,$31,$32); - $33 = HEAP32[$nativeCksum>>2]|0; - $34 = HEAP32[$3>>2]|0; - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + 36|0); - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$aCksum>>2]|0; - $39 = HEAP32[$aCksum>>2]|0; - _walChecksumBytes($33,$34,$37,$38,$39); - $40 = HEAP32[$4>>2]|0; - $41 = (($40) + 16|0); - $42 = HEAP32[$aCksum>>2]|0; - $43 = HEAP32[$42>>2]|0; - _sqlite3Put4byte($41,$43); - $44 = HEAP32[$4>>2]|0; - $45 = (($44) + 20|0); - $46 = HEAP32[$aCksum>>2]|0; - $47 = (($46) + 4|0); - $48 = HEAP32[$47>>2]|0; - _sqlite3Put4byte($45,$48); - STACKTOP = sp;return; -} -function _walWriteToLog($p,$pContent,$iAmt,$0,$1) { - $p = $p|0; - $pContent = $pContent|0; - $iAmt = $iAmt|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $14 = 0, $15 = 0, $16 = 0; - var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; - var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; - var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; - var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; - var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iFirstAmt = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $4 = sp + 20|0; - $5 = sp + 16|0; - $6 = sp; - $rc = sp + 12|0; - $iFirstAmt = sp + 8|0; - HEAP32[$3>>2] = $p; - HEAP32[$4>>2] = $pContent; - HEAP32[$5>>2] = $iAmt; - $7 = $6; - $8 = $7; - HEAP32[$8>>2] = $0; - $9 = (($7) + 4)|0; - $10 = $9; - HEAP32[$10>>2] = $1; - $11 = $6; - $12 = $11; - $13 = HEAP32[$12>>2]|0; - $14 = (($11) + 4)|0; - $15 = $14; - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$3>>2]|0; - $18 = (($17) + 8|0); - $19 = $18; - $20 = $19; - $21 = HEAP32[$20>>2]|0; - $22 = (($19) + 4)|0; - $23 = $22; - $24 = HEAP32[$23>>2]|0; - $25 = ($16|0)<($24|0); - $26 = ($16|0)==($24|0); - $27 = ($13>>>0)<($21>>>0); - $28 = $26 & $27; - $29 = $25 | $28; - do { - if ($29) { - $30 = $6; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $33 = (($30) + 4)|0; - $34 = $33; - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$5>>2]|0; - $37 = ($36|0)<(0); - $38 = $37 << 31 >> 31; - $39 = (_i64Add(($32|0),($35|0),($36|0),($38|0))|0); - $40 = tempRet0; - $41 = HEAP32[$3>>2]|0; - $42 = (($41) + 8|0); - $43 = $42; - $44 = $43; - $45 = HEAP32[$44>>2]|0; - $46 = (($43) + 4)|0; - $47 = $46; - $48 = HEAP32[$47>>2]|0; - $49 = ($40|0)>($48|0); - $50 = ($40|0)==($48|0); - $51 = ($39>>>0)>=($45>>>0); - $52 = $50 & $51; - $53 = $49 | $52; - if ($53) { - $54 = HEAP32[$3>>2]|0; - $55 = (($54) + 8|0); - $56 = $55; - $57 = $56; - $58 = HEAP32[$57>>2]|0; - $59 = (($56) + 4)|0; - $60 = $59; - $61 = HEAP32[$60>>2]|0; - $62 = $6; - $63 = $62; - $64 = HEAP32[$63>>2]|0; - $65 = (($62) + 4)|0; - $66 = $65; - $67 = HEAP32[$66>>2]|0; - $68 = (_i64Subtract(($58|0),($61|0),($64|0),($67|0))|0); - $69 = tempRet0; - HEAP32[$iFirstAmt>>2] = $68; - $70 = HEAP32[$3>>2]|0; - $71 = (($70) + 4|0); - $72 = HEAP32[$71>>2]|0; - $73 = HEAP32[$4>>2]|0; - $74 = HEAP32[$iFirstAmt>>2]|0; - $75 = $6; - $76 = $75; - $77 = HEAP32[$76>>2]|0; - $78 = (($75) + 4)|0; - $79 = $78; - $80 = HEAP32[$79>>2]|0; - $81 = (_sqlite3OsWrite($72,$73,$74,$77,$80)|0); - HEAP32[$rc>>2] = $81; - $82 = HEAP32[$rc>>2]|0; - $83 = ($82|0)!=(0); - if ($83) { - $84 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $84; - $132 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($132|0); - } - $85 = HEAP32[$iFirstAmt>>2]|0; - $86 = ($85|0)<(0); - $87 = $86 << 31 >> 31; - $88 = $6; - $89 = $88; - $90 = HEAP32[$89>>2]|0; - $91 = (($88) + 4)|0; - $92 = $91; - $93 = HEAP32[$92>>2]|0; - $94 = (_i64Add(($90|0),($93|0),($85|0),($87|0))|0); - $95 = tempRet0; - $96 = $6; - $97 = $96; - HEAP32[$97>>2] = $94; - $98 = (($96) + 4)|0; - $99 = $98; - HEAP32[$99>>2] = $95; - $100 = HEAP32[$iFirstAmt>>2]|0; - $101 = HEAP32[$5>>2]|0; - $102 = (($101) - ($100))|0; - HEAP32[$5>>2] = $102; - $103 = HEAP32[$iFirstAmt>>2]|0; - $104 = HEAP32[$4>>2]|0; - $105 = (($104) + ($103)|0); - HEAP32[$4>>2] = $105; - $106 = HEAP32[$3>>2]|0; - $107 = (($106) + 4|0); - $108 = HEAP32[$107>>2]|0; - $109 = HEAP32[$3>>2]|0; - $110 = (($109) + 16|0); - $111 = HEAP32[$110>>2]|0; - $112 = $111 & 19; - $113 = (_sqlite3OsSync($108,$112)|0); - HEAP32[$rc>>2] = $113; - $114 = HEAP32[$5>>2]|0; - $115 = ($114|0)==(0); - if (!($115)) { - $116 = HEAP32[$rc>>2]|0; - $117 = ($116|0)!=(0); - if (!($117)) { - break; - } - } - $118 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $118; - $132 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($132|0); - } - } - } while(0); - $119 = HEAP32[$3>>2]|0; - $120 = (($119) + 4|0); - $121 = HEAP32[$120>>2]|0; - $122 = HEAP32[$4>>2]|0; - $123 = HEAP32[$5>>2]|0; - $124 = $6; - $125 = $124; - $126 = HEAP32[$125>>2]|0; - $127 = (($124) + 4)|0; - $128 = $127; - $129 = HEAP32[$128>>2]|0; - $130 = (_sqlite3OsWrite($121,$122,$123,$126,$129)|0); - HEAP32[$rc>>2] = $130; - $131 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $131; - $132 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($132|0); -} -function _walTryBeginRead($pWal,$pChanged,$useWal,$cnt) { - $pWal = $pWal|0; - $pChanged = $pChanged|0; - $useWal = $useWal|0; - $cnt = $cnt|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; - var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; - var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; - var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; - var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; - var $98 = 0, $99 = 0, $i = 0, $mxI = 0, $mxReadMark = 0, $nDelay = 0, $pInfo = 0, $rc = 0, $thisMark = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $4 = sp + 28|0; - $pInfo = sp + 24|0; - $mxReadMark = sp + 20|0; - $mxI = sp + 16|0; - $i = sp + 12|0; - $rc = sp + 8|0; - $nDelay = sp + 4|0; - $thisMark = sp; - HEAP32[$1>>2] = $pWal; - HEAP32[$2>>2] = $pChanged; - HEAP32[$3>>2] = $useWal; - HEAP32[$4>>2] = $cnt; - HEAP32[$rc>>2] = 0; - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)>(5); - if ($6) { - HEAP32[$nDelay>>2] = 1; - $7 = HEAP32[$4>>2]|0; - $8 = ($7|0)>(100); - if ($8) { - HEAP32[$0>>2] = 15; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - $9 = HEAP32[$4>>2]|0; - $10 = ($9|0)>=(10); - if ($10) { - $11 = HEAP32[$4>>2]|0; - $12 = (($11) - 9)|0; - $13 = ($12*238)|0; - HEAP32[$nDelay>>2] = $13; - } - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$nDelay>>2]|0; - (_sqlite3OsSleep($15,$16)|0); - } - $17 = HEAP32[$3>>2]|0; - $18 = ($17|0)!=(0); - if (!($18)) { - $19 = HEAP32[$1>>2]|0; - $20 = HEAP32[$2>>2]|0; - $21 = (_walIndexReadHdr($19,$20)|0); - HEAP32[$rc>>2] = $21; - $22 = HEAP32[$rc>>2]|0; - $23 = ($22|0)==(5); - do { - if ($23) { - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 32|0); - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$26>>2]|0; - $28 = ($27|0)==(0|0); - if ($28) { - HEAP32[$rc>>2] = -1; - break; - } - $29 = HEAP32[$1>>2]|0; - $30 = (_walLockShared($29,2)|0); - HEAP32[$rc>>2] = $30; - $31 = (0)==($30|0); - if ($31) { - $32 = HEAP32[$1>>2]|0; - _walUnlockShared($32,2); - HEAP32[$rc>>2] = -1; - break; - } - $33 = HEAP32[$rc>>2]|0; - $34 = ($33|0)==(5); - if ($34) { - HEAP32[$rc>>2] = 261; - } - } - } while(0); - $35 = HEAP32[$rc>>2]|0; - $36 = ($35|0)!=(0); - if ($36) { - $37 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $37; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - } - $38 = HEAP32[$1>>2]|0; - $39 = (_walCkptInfo($38)|0); - HEAP32[$pInfo>>2] = $39; - $40 = HEAP32[$3>>2]|0; - $41 = ($40|0)!=(0); - do { - if (!($41)) { - $42 = HEAP32[$pInfo>>2]|0; - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$1>>2]|0; - $45 = (($44) + 52|0); - $46 = (($45) + 16|0); - $47 = HEAP32[$46>>2]|0; - $48 = ($43|0)==($47|0); - if ($48) { - $49 = HEAP32[$1>>2]|0; - $50 = (_walLockShared($49,3)|0); - HEAP32[$rc>>2] = $50; - $51 = HEAP32[$1>>2]|0; - _walShmBarrier($51); - $52 = HEAP32[$rc>>2]|0; - $53 = ($52|0)==(0); - if (!($53)) { - $62 = HEAP32[$rc>>2]|0; - $63 = ($62|0)!=(5); - if (!($63)) { - break; - } - $64 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $64; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - $54 = HEAP32[$1>>2]|0; - $55 = (_walIndexHdr($54)|0); - $56 = HEAP32[$1>>2]|0; - $57 = (($56) + 52|0); - $58 = (_memcmp($55,$57,48)|0); - $59 = ($58|0)!=(0); - $60 = HEAP32[$1>>2]|0; - if ($59) { - _walUnlockShared($60,3); - HEAP32[$0>>2] = -1; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } else { - $61 = (($60) + 40|0); - HEAP16[$61>>1] = 0; - HEAP32[$0>>2] = 0; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - } - } - } while(0); - HEAP32[$mxReadMark>>2] = 0; - HEAP32[$mxI>>2] = 0; - HEAP32[$i>>2] = 1; - while(1) { - $65 = HEAP32[$i>>2]|0; - $66 = ($65|0)<(5); - if (!($66)) { - break; - } - $67 = HEAP32[$i>>2]|0; - $68 = HEAP32[$pInfo>>2]|0; - $69 = (($68) + 4|0); - $70 = (($69) + ($67<<2)|0); - $71 = HEAP32[$70>>2]|0; - HEAP32[$thisMark>>2] = $71; - $72 = HEAP32[$mxReadMark>>2]|0; - $73 = HEAP32[$thisMark>>2]|0; - $74 = ($72>>>0)<=($73>>>0); - if ($74) { - $75 = HEAP32[$thisMark>>2]|0; - $76 = HEAP32[$1>>2]|0; - $77 = (($76) + 52|0); - $78 = (($77) + 16|0); - $79 = HEAP32[$78>>2]|0; - $80 = ($75>>>0)<=($79>>>0); - if ($80) { - $81 = HEAP32[$thisMark>>2]|0; - HEAP32[$mxReadMark>>2] = $81; - $82 = HEAP32[$i>>2]|0; - HEAP32[$mxI>>2] = $82; - } - } - $83 = HEAP32[$i>>2]|0; - $84 = (($83) + 1)|0; - HEAP32[$i>>2] = $84; - } - $85 = HEAP32[$1>>2]|0; - $86 = (($85) + 46|0); - $87 = HEAP8[$86>>0]|0; - $88 = $87&255; - $89 = $88 & 2; - $90 = ($89|0)==(0); - L48: do { - if ($90) { - $91 = HEAP32[$mxReadMark>>2]|0; - $92 = HEAP32[$1>>2]|0; - $93 = (($92) + 52|0); - $94 = (($93) + 16|0); - $95 = HEAP32[$94>>2]|0; - $96 = ($91>>>0)<($95>>>0); - if (!($96)) { - $97 = HEAP32[$mxI>>2]|0; - $98 = ($97|0)==(0); - if (!($98)) { - break; - } - } - HEAP32[$i>>2] = 1; - while(1) { - $99 = HEAP32[$i>>2]|0; - $100 = ($99|0)<(5); - if (!($100)) { - break L48; - } - $101 = HEAP32[$1>>2]|0; - $102 = HEAP32[$i>>2]|0; - $103 = (3 + ($102))|0; - $104 = (_walLockExclusive($101,$103,1)|0); - HEAP32[$rc>>2] = $104; - $105 = HEAP32[$rc>>2]|0; - $106 = ($105|0)==(0); - if ($106) { - label = 37; - break; - } - $119 = HEAP32[$rc>>2]|0; - $120 = ($119|0)!=(5); - if ($120) { - break; - } - $122 = HEAP32[$i>>2]|0; - $123 = (($122) + 1)|0; - HEAP32[$i>>2] = $123; - } - if ((label|0) == 37) { - $107 = HEAP32[$1>>2]|0; - $108 = (($107) + 52|0); - $109 = (($108) + 16|0); - $110 = HEAP32[$109>>2]|0; - $111 = HEAP32[$i>>2]|0; - $112 = HEAP32[$pInfo>>2]|0; - $113 = (($112) + 4|0); - $114 = (($113) + ($111<<2)|0); - HEAP32[$114>>2] = $110; - HEAP32[$mxReadMark>>2] = $110; - $115 = HEAP32[$i>>2]|0; - HEAP32[$mxI>>2] = $115; - $116 = HEAP32[$1>>2]|0; - $117 = HEAP32[$i>>2]|0; - $118 = (3 + ($117))|0; - _walUnlockExclusive($116,$118,1); - break; - } - $121 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $121; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - } while(0); - $124 = HEAP32[$mxI>>2]|0; - $125 = ($124|0)==(0); - if ($125) { - $126 = HEAP32[$rc>>2]|0; - $127 = ($126|0)==(5); - $128 = $127 ? -1 : 520; - HEAP32[$0>>2] = $128; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - $129 = HEAP32[$1>>2]|0; - $130 = HEAP32[$mxI>>2]|0; - $131 = (3 + ($130))|0; - $132 = (_walLockShared($129,$131)|0); - HEAP32[$rc>>2] = $132; - $133 = HEAP32[$rc>>2]|0; - $134 = ($133|0)!=(0); - if ($134) { - $135 = HEAP32[$rc>>2]|0; - $136 = ($135|0)==(5); - $137 = HEAP32[$rc>>2]|0; - $138 = $136 ? -1 : $137; - HEAP32[$0>>2] = $138; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - $139 = HEAP32[$1>>2]|0; - _walShmBarrier($139); - $140 = HEAP32[$mxI>>2]|0; - $141 = HEAP32[$pInfo>>2]|0; - $142 = (($141) + 4|0); - $143 = (($142) + ($140<<2)|0); - $144 = HEAP32[$143>>2]|0; - $145 = HEAP32[$mxReadMark>>2]|0; - $146 = ($144|0)!=($145|0); - if (!($146)) { - $147 = HEAP32[$1>>2]|0; - $148 = (_walIndexHdr($147)|0); - $149 = HEAP32[$1>>2]|0; - $150 = (($149) + 52|0); - $151 = (_memcmp($148,$150,48)|0); - $152 = ($151|0)!=(0); - if (!($152)) { - $156 = HEAP32[$mxI>>2]|0; - $157 = $156&65535; - $158 = HEAP32[$1>>2]|0; - $159 = (($158) + 40|0); - HEAP16[$159>>1] = $157; - $160 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $160; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - } - $153 = HEAP32[$1>>2]|0; - $154 = HEAP32[$mxI>>2]|0; - $155 = (3 + ($154))|0; - _walUnlockShared($153,$155); - HEAP32[$0>>2] = -1; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); -} -function _openSubJournal($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$rc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 68|0); - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0|0); - if ($5) { - $24 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($24|0); - } - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 5|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - $10 = ($9|0)==(4); - if (!($10)) { - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 21|0); - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - $15 = ($14|0)!=(0); - if (!($15)) { - $19 = HEAP32[$0>>2]|0; - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 68|0); - $22 = HEAP32[$21>>2]|0; - $23 = (_pagerOpentemp($19,$22,8192)|0); - HEAP32[$rc>>2] = $23; - $24 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($24|0); - } - } - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 68|0); - $18 = HEAP32[$17>>2]|0; - _sqlite3MemJournalOpen($18); - $24 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($24|0); -} -function _write32bits($fd,$0,$1,$val) { - $fd = $fd|0; - $0 = $0|0; - $1 = $1|0; - $val = $val|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ac = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 12|0; - $3 = sp; - $4 = sp + 8|0; - $ac = sp + 16|0; - HEAP32[$2>>2] = $fd; - $5 = $3; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - HEAP32[$4>>2] = $val; - $9 = HEAP32[$4>>2]|0; - _sqlite3Put4byte($ac,$9); - $10 = HEAP32[$2>>2]|0; - $11 = $3; - $12 = $11; - $13 = HEAP32[$12>>2]|0; - $14 = (($11) + 4)|0; - $15 = $14; - $16 = HEAP32[$15>>2]|0; - $17 = (_sqlite3OsWrite($10,$ac,4,$13,$16)|0); - STACKTOP = sp;return ($17|0); -} -function _addToSavepointBitvecs($pPager,$pgno) { - $pPager = $pPager|0; - $pgno = $pgno|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ii = 0, $p = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $ii = sp + 8|0; - $rc = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $pgno; - HEAP32[$rc>>2] = 0; - HEAP32[$ii>>2] = 0; - while(1) { - $2 = HEAP32[$ii>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 96|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($2|0)<($5|0); - if (!($6)) { - break; - } - $7 = HEAP32[$ii>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 92|0); - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + (($7*48)|0)|0); - HEAP32[$p>>2] = $11; - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$p>>2]|0; - $14 = (($13) + 20|0); - $15 = HEAP32[$14>>2]|0; - $16 = ($12>>>0)<=($15>>>0); - if ($16) { - $17 = HEAP32[$p>>2]|0; - $18 = (($17) + 16|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$1>>2]|0; - $21 = (_sqlite3BitvecSet($19,$20)|0); - $22 = HEAP32[$rc>>2]|0; - $23 = $22 | $21; - HEAP32[$rc>>2] = $23; - } - $24 = HEAP32[$ii>>2]|0; - $25 = (($24) + 1)|0; - HEAP32[$ii>>2] = $25; - } - $26 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($26|0); -} -function _sqlite3HexToInt($h) { - $h = $h|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $h; - $1 = HEAP32[$0>>2]|0; - $2 = $1 >> 6; - $3 = 1 & $2; - $4 = ($3*9)|0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + ($4))|0; - HEAP32[$0>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = $7 & 15; - $9 = $8&255; - STACKTOP = sp;return ($9|0); -} -function _allSpaces($z,$n) { - $z = $z|0; - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $z; - HEAP32[$1>>2] = $n; - while(1) { - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)>(0); - if ($3) { - $4 = HEAP32[$1>>2]|0; - $5 = (($4) - 1)|0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + ($5)|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8 << 24 >> 24; - $10 = ($9|0)==(32); - $15 = $10; - } else { - $15 = 0; - } - $11 = HEAP32[$1>>2]|0; - if (!($15)) { - break; - } - $12 = (($11) + -1)|0; - HEAP32[$1>>2] = $12; - } - $13 = ($11|0)==(0); - $14 = $13&1; - STACKTOP = sp;return ($14|0); -} -function _logBadConnection($zType) { - $zType = $zType|0; - var $0 = 0, $1 = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 4|0; - HEAP32[$0>>2] = $zType; - $1 = HEAP32[$0>>2]|0; - HEAP32[$vararg_buffer>>2] = $1; - _sqlite3_log(21,4832,$vararg_buffer); - STACKTOP = sp;return; -} -function _sqlite3BtreeCheckpoint($p,$eMode,$pnLog,$pnCkpt) { - $p = $p|0; - $eMode = $eMode|0; - $pnLog = $pnLog|0; - $pnCkpt = $pnCkpt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $rc = sp + 4|0; - $pBt = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $eMode; - HEAP32[$2>>2] = $pnLog; - HEAP32[$3>>2] = $pnCkpt; - HEAP32[$rc>>2] = 0; - $4 = HEAP32[$0>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - $21 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($21|0); - } - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pBt>>2] = $8; - $9 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($9); - $10 = HEAP32[$pBt>>2]|0; - $11 = (($10) + 20|0); - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = ($13|0)!=(0); - if ($14) { - HEAP32[$rc>>2] = 6; - $21 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($21|0); - } else { - $15 = HEAP32[$pBt>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$2>>2]|0; - $19 = HEAP32[$3>>2]|0; - $20 = (_sqlite3PagerCheckpoint($16,$17,$18,$19)|0); - HEAP32[$rc>>2] = $20; - $21 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($21|0); - } - return 0|0; -} -function _sqlite3PagerCheckpoint($pPager,$eMode,$pnLog,$pnCkpt) { - $pPager = $pPager|0; - $eMode = $eMode|0; - $pnLog = $pnLog|0; - $pnCkpt = $pnCkpt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $eMode; - HEAP32[$2>>2] = $pnLog; - HEAP32[$3>>2] = $pnCkpt; - HEAP32[$rc>>2] = 0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 208|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0|0); - if (!($7)) { - $31 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($31|0); - } - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 208|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 176|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 180|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 9|0); - $20 = HEAP8[$19>>0]|0; - $21 = $20&255; - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 152|0); - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$0>>2]|0; - $26 = (($25) + 200|0); - $27 = HEAP32[$26>>2]|0; - $28 = HEAP32[$2>>2]|0; - $29 = HEAP32[$3>>2]|0; - $30 = (_sqlite3WalCheckpoint($10,$11,$14,$17,$21,$24,$27,$28,$29)|0); - HEAP32[$rc>>2] = $30; - $31 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($31|0); -} -function _functionSearch($pHash,$h,$zFunc,$nFunc) { - $pHash = $pHash|0; - $h = $h|0; - $zFunc = $zFunc|0; - $nFunc = $nFunc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $p = sp; - HEAP32[$1>>2] = $pHash; - HEAP32[$2>>2] = $h; - HEAP32[$3>>2] = $zFunc; - HEAP32[$4>>2] = $nFunc; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + ($5<<2)|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$p>>2] = $8; - while(1) { - $9 = HEAP32[$p>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - label = 7; - break; - } - $11 = HEAP32[$p>>2]|0; - $12 = (($11) + 24|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$3>>2]|0; - $15 = HEAP32[$4>>2]|0; - $16 = (_sqlite3_strnicmp($13,$14,$15)|0); - $17 = ($16|0)==(0); - if ($17) { - $18 = HEAP32[$4>>2]|0; - $19 = HEAP32[$p>>2]|0; - $20 = (($19) + 24|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + ($18)|0); - $23 = HEAP8[$22>>0]|0; - $24 = $23 << 24 >> 24; - $25 = ($24|0)==(0); - if ($25) { - label = 5; - break; - } - } - $27 = HEAP32[$p>>2]|0; - $28 = (($27) + 28|0); - $29 = HEAP32[$28>>2]|0; - HEAP32[$p>>2] = $29; - } - if ((label|0) == 5) { - $26 = HEAP32[$p>>2]|0; - HEAP32[$0>>2] = $26; - $30 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($30|0); - } - else if ((label|0) == 7) { - HEAP32[$0>>2] = 0; - $30 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($30|0); - } - return 0|0; -} -function _matchQuality($p,$nArg,$enc) { - $p = $p|0; - $nArg = $nArg|0; - $enc = $enc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $match = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp + 16|0; - $match = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $nArg; - HEAP8[$3>>0] = $enc; - $4 = HEAP32[$2>>2]|0; - $5 = ($4|0)==(-2); - $6 = HEAP32[$1>>2]|0; - if ($5) { - $7 = (($6) + 12|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)==(0|0); - if ($9) { - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 16|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)==(0|0); - $15 = $13; - } else { - $15 = 0; - } - $14 = $15 ? 0 : 6; - HEAP32[$0>>2] = $14; - $51 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($51|0); - } - $16 = HEAP16[$6>>1]|0; - $17 = $16 << 16 >> 16; - $18 = HEAP32[$2>>2]|0; - $19 = ($17|0)!=($18|0); - if ($19) { - $20 = HEAP32[$1>>2]|0; - $21 = HEAP16[$20>>1]|0; - $22 = $21 << 16 >> 16; - $23 = ($22|0)>=(0); - if ($23) { - HEAP32[$0>>2] = 0; - $51 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($51|0); - } - } - $24 = HEAP32[$1>>2]|0; - $25 = HEAP16[$24>>1]|0; - $26 = $25 << 16 >> 16; - $27 = HEAP32[$2>>2]|0; - $28 = ($26|0)==($27|0); - if ($28) { - HEAP32[$match>>2] = 4; - } else { - HEAP32[$match>>2] = 1; - } - $29 = HEAP8[$3>>0]|0; - $30 = $29&255; - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 2|0); - $33 = HEAP16[$32>>1]|0; - $34 = $33&65535; - $35 = $34 & 3; - $36 = ($30|0)==($35|0); - if ($36) { - $37 = HEAP32[$match>>2]|0; - $38 = (($37) + 2)|0; - HEAP32[$match>>2] = $38; - } else { - $39 = HEAP8[$3>>0]|0; - $40 = $39&255; - $41 = HEAP32[$1>>2]|0; - $42 = (($41) + 2|0); - $43 = HEAP16[$42>>1]|0; - $44 = $43&65535; - $45 = $40 & $44; - $46 = $45 & 2; - $47 = ($46|0)!=(0); - if ($47) { - $48 = HEAP32[$match>>2]|0; - $49 = (($48) + 1)|0; - HEAP32[$match>>2] = $49; - } - } - $50 = HEAP32[$match>>2]|0; - HEAP32[$0>>2] = $50; - $51 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($51|0); -} -function _sqlite3FuncDefInsert($pHash,$pDef) { - $pHash = $pHash|0; - $pDef = $pDef|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c1 = 0, $h = 0, $nName = 0, $pOther = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $pOther = sp + 8|0; - $nName = sp + 4|0; - $c1 = sp + 20|0; - $h = sp; - HEAP32[$0>>2] = $pHash; - HEAP32[$1>>2] = $pDef; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 24|0); - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3Strlen30($4)|0); - HEAP32[$nName>>2] = $5; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 24|0); - $8 = HEAP32[$7>>2]|0; - $9 = HEAP8[$8>>0]|0; - HEAP8[$c1>>0] = $9; - $10 = HEAP8[$c1>>0]|0; - $11 = $10&255; - $12 = (696 + ($11)|0); - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - $15 = HEAP32[$nName>>2]|0; - $16 = (($14) + ($15))|0; - $17 = (($16|0) % 23)&-1; - HEAP32[$h>>2] = $17; - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$h>>2]|0; - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 24|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$nName>>2]|0; - $24 = (_functionSearch($18,$19,$22,$23)|0); - HEAP32[$pOther>>2] = $24; - $25 = HEAP32[$pOther>>2]|0; - $26 = ($25|0)!=(0|0); - if ($26) { - $27 = HEAP32[$pOther>>2]|0; - $28 = (($27) + 8|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 8|0); - HEAP32[$31>>2] = $29; - $32 = HEAP32[$1>>2]|0; - $33 = HEAP32[$pOther>>2]|0; - $34 = (($33) + 8|0); - HEAP32[$34>>2] = $32; - STACKTOP = sp;return; - } else { - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 8|0); - HEAP32[$36>>2] = 0; - $37 = HEAP32[$h>>2]|0; - $38 = HEAP32[$0>>2]|0; - $39 = (($38) + ($37<<2)|0); - $40 = HEAP32[$39>>2]|0; - $41 = HEAP32[$1>>2]|0; - $42 = (($41) + 28|0); - HEAP32[$42>>2] = $40; - $43 = HEAP32[$1>>2]|0; - $44 = HEAP32[$h>>2]|0; - $45 = HEAP32[$0>>2]|0; - $46 = (($45) + ($44<<2)|0); - HEAP32[$46>>2] = $43; - STACKTOP = sp;return; - } -} -function _sqlite3VdbeChangeEncoding($pMem,$desiredEnc) { - $pMem = $pMem|0; - $desiredEnc = $desiredEnc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pMem; - HEAP32[$2>>2] = $desiredEnc; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 28|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5&65535; - $7 = $6 & 2; - $8 = ($7|0)!=(0); - if ($8) { - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 30|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = HEAP32[$2>>2]|0; - $14 = ($12|0)==($13|0); - if (!($14)) { - $15 = HEAP32[$1>>2]|0; - $16 = HEAP32[$2>>2]|0; - $17 = $16&255; - $18 = (_sqlite3VdbeMemTranslate($15,$17)|0); - HEAP32[$rc>>2] = $18; - $19 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $19; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); - } - } - HEAP32[$0>>2] = 0; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); -} -function _sqlite3VdbeMemTranslate($pMem,$desiredEnc) { - $pMem = $pMem|0; - $desiredEnc = $desiredEnc|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; - var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; - var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; - var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; - var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; - var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; - var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; - var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $c2 = 0, $c21 = 0, $len = 0, $or$cond = 0, $or$cond3 = 0, $rc = 0, $temp = 0, $z = 0, $zIn = 0, $zOut = 0, $zTerm = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 45|0; - $len = sp + 32|0; - $zOut = sp + 28|0; - $zIn = sp + 24|0; - $zTerm = sp + 20|0; - $z = sp + 16|0; - $c = sp + 12|0; - $temp = sp + 44|0; - $rc = sp + 8|0; - $c2 = sp + 4|0; - $c21 = sp; - HEAP32[$1>>2] = $pMem; - HEAP8[$2>>0] = $desiredEnc; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 30|0); - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = ($6|0)!=(1); - if ($7) { - $8 = HEAP8[$2>>0]|0; - $9 = $8&255; - $10 = ($9|0)!=(1); - if ($10) { - $11 = HEAP32[$1>>2]|0; - $12 = (_sqlite3VdbeMemMakeWriteable($11)|0); - HEAP32[$rc>>2] = $12; - $13 = HEAP32[$rc>>2]|0; - $14 = ($13|0)!=(0); - if ($14) { - HEAP32[$0>>2] = 7; - $542 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($542|0); - } - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$zIn>>2] = $17; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 24|0); - $20 = HEAP32[$19>>2]|0; - $21 = $20 & -2; - $22 = HEAP32[$zIn>>2]|0; - $23 = (($22) + ($21)|0); - HEAP32[$zTerm>>2] = $23; - while(1) { - $24 = HEAP32[$zIn>>2]|0; - $25 = HEAP32[$zTerm>>2]|0; - $26 = ($24>>>0)<($25>>>0); - if (!($26)) { - break; - } - $27 = HEAP32[$zIn>>2]|0; - $28 = HEAP8[$27>>0]|0; - HEAP8[$temp>>0] = $28; - $29 = HEAP32[$zIn>>2]|0; - $30 = (($29) + 1|0); - $31 = HEAP8[$30>>0]|0; - $32 = HEAP32[$zIn>>2]|0; - HEAP8[$32>>0] = $31; - $33 = HEAP32[$zIn>>2]|0; - $34 = (($33) + 1|0); - HEAP32[$zIn>>2] = $34; - $35 = HEAP8[$temp>>0]|0; - $36 = HEAP32[$zIn>>2]|0; - $37 = (($36) + 1|0); - HEAP32[$zIn>>2] = $37; - HEAP8[$36>>0] = $35; - } - $38 = HEAP8[$2>>0]|0; - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 30|0); - HEAP8[$40>>0] = $38; - } else { - label = 9; - } - } else { - label = 9; - } - if ((label|0) == 9) { - $41 = HEAP8[$2>>0]|0; - $42 = $41&255; - $43 = ($42|0)==(1); - $44 = HEAP32[$1>>2]|0; - $45 = (($44) + 24|0); - $46 = HEAP32[$45>>2]|0; - if ($43) { - $47 = $46 & -2; - HEAP32[$45>>2] = $47; - $48 = HEAP32[$1>>2]|0; - $49 = (($48) + 24|0); - $50 = HEAP32[$49>>2]|0; - $51 = $50<<1; - $52 = (($51) + 1)|0; - HEAP32[$len>>2] = $52; - } else { - $53 = $46<<1; - $54 = (($53) + 2)|0; - HEAP32[$len>>2] = $54; - } - $55 = HEAP32[$1>>2]|0; - $56 = (($55) + 4|0); - $57 = HEAP32[$56>>2]|0; - HEAP32[$zIn>>2] = $57; - $58 = HEAP32[$1>>2]|0; - $59 = (($58) + 24|0); - $60 = HEAP32[$59>>2]|0; - $61 = HEAP32[$zIn>>2]|0; - $62 = (($61) + ($60)|0); - HEAP32[$zTerm>>2] = $62; - $63 = HEAP32[$1>>2]|0; - $64 = HEAP32[$63>>2]|0; - $65 = HEAP32[$len>>2]|0; - $66 = (_sqlite3DbMallocRaw($64,$65)|0); - HEAP32[$zOut>>2] = $66; - $67 = HEAP32[$zOut>>2]|0; - $68 = ($67|0)!=(0|0); - if (!($68)) { - HEAP32[$0>>2] = 7; - $542 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($542|0); - } - $69 = HEAP32[$zOut>>2]|0; - HEAP32[$z>>2] = $69; - $70 = HEAP32[$1>>2]|0; - $71 = (($70) + 30|0); - $72 = HEAP8[$71>>0]|0; - $73 = $72&255; - $74 = ($73|0)==(1); - if ($74) { - $75 = HEAP8[$2>>0]|0; - $76 = $75&255; - $77 = ($76|0)==(2); - L24: do { - if ($77) { - while(1) { - $78 = HEAP32[$zIn>>2]|0; - $79 = HEAP32[$zTerm>>2]|0; - $80 = ($78>>>0)<($79>>>0); - if (!($80)) { - break L24; - } - $81 = HEAP32[$zIn>>2]|0; - $82 = (($81) + 1|0); - HEAP32[$zIn>>2] = $82; - $83 = HEAP8[$81>>0]|0; - $84 = $83&255; - HEAP32[$c>>2] = $84; - $85 = HEAP32[$c>>2]|0; - $86 = ($85>>>0)>=(192); - do { - if ($86) { - $87 = HEAP32[$c>>2]|0; - $88 = (($87) - 192)|0; - $89 = (4936 + ($88)|0); - $90 = HEAP8[$89>>0]|0; - $91 = $90&255; - HEAP32[$c>>2] = $91; - while(1) { - $92 = HEAP32[$zIn>>2]|0; - $93 = HEAP32[$zTerm>>2]|0; - $94 = ($92|0)!=($93|0); - if ($94) { - $95 = HEAP32[$zIn>>2]|0; - $96 = HEAP8[$95>>0]|0; - $97 = $96&255; - $98 = $97 & 192; - $99 = ($98|0)==(128); - $543 = $99; - } else { - $543 = 0; - } - $100 = HEAP32[$c>>2]|0; - if (!($543)) { - break; - } - $101 = $100 << 6; - $102 = HEAP32[$zIn>>2]|0; - $103 = (($102) + 1|0); - HEAP32[$zIn>>2] = $103; - $104 = HEAP8[$102>>0]|0; - $105 = $104&255; - $106 = 63 & $105; - $107 = (($101) + ($106))|0; - HEAP32[$c>>2] = $107; - } - $108 = ($100>>>0)<(128); - if (!($108)) { - $109 = HEAP32[$c>>2]|0; - $110 = $109 & -2048; - $111 = ($110|0)==(55296); - if (!($111)) { - $112 = HEAP32[$c>>2]|0; - $113 = $112 & -2; - $114 = ($113|0)==(65534); - if (!($114)) { - break; - } - } - } - HEAP32[$c>>2] = 65533; - } - } while(0); - $115 = HEAP32[$c>>2]|0; - $116 = ($115>>>0)<=(65535); - $117 = HEAP32[$c>>2]|0; - if ($116) { - $118 = $117 & 255; - $119 = $118&255; - $120 = HEAP32[$z>>2]|0; - $121 = (($120) + 1|0); - HEAP32[$z>>2] = $121; - HEAP8[$120>>0] = $119; - $122 = HEAP32[$c>>2]|0; - $123 = $122 >>> 8; - $124 = $123 & 255; - $125 = $124&255; - $126 = HEAP32[$z>>2]|0; - $127 = (($126) + 1|0); - HEAP32[$z>>2] = $127; - HEAP8[$126>>0] = $125; - continue; - } else { - $128 = $117 >>> 10; - $129 = $128 & 63; - $130 = HEAP32[$c>>2]|0; - $131 = (($130) - 65536)|0; - $132 = $131 >>> 10; - $133 = $132 & 192; - $134 = (($129) + ($133))|0; - $135 = $134&255; - $136 = HEAP32[$z>>2]|0; - $137 = (($136) + 1|0); - HEAP32[$z>>2] = $137; - HEAP8[$136>>0] = $135; - $138 = HEAP32[$c>>2]|0; - $139 = (($138) - 65536)|0; - $140 = $139 >>> 18; - $141 = $140 & 3; - $142 = (216 + ($141))|0; - $143 = $142&255; - $144 = HEAP32[$z>>2]|0; - $145 = (($144) + 1|0); - HEAP32[$z>>2] = $145; - HEAP8[$144>>0] = $143; - $146 = HEAP32[$c>>2]|0; - $147 = $146 & 255; - $148 = $147&255; - $149 = HEAP32[$z>>2]|0; - $150 = (($149) + 1|0); - HEAP32[$z>>2] = $150; - HEAP8[$149>>0] = $148; - $151 = HEAP32[$c>>2]|0; - $152 = $151 >>> 8; - $153 = $152 & 3; - $154 = (220 + ($153))|0; - $155 = $154&255; - $156 = HEAP32[$z>>2]|0; - $157 = (($156) + 1|0); - HEAP32[$z>>2] = $157; - HEAP8[$156>>0] = $155; - continue; - } - } - } else { - while(1) { - $158 = HEAP32[$zIn>>2]|0; - $159 = HEAP32[$zTerm>>2]|0; - $160 = ($158>>>0)<($159>>>0); - if (!($160)) { - break L24; - } - $161 = HEAP32[$zIn>>2]|0; - $162 = (($161) + 1|0); - HEAP32[$zIn>>2] = $162; - $163 = HEAP8[$161>>0]|0; - $164 = $163&255; - HEAP32[$c>>2] = $164; - $165 = HEAP32[$c>>2]|0; - $166 = ($165>>>0)>=(192); - do { - if ($166) { - $167 = HEAP32[$c>>2]|0; - $168 = (($167) - 192)|0; - $169 = (4936 + ($168)|0); - $170 = HEAP8[$169>>0]|0; - $171 = $170&255; - HEAP32[$c>>2] = $171; - while(1) { - $172 = HEAP32[$zIn>>2]|0; - $173 = HEAP32[$zTerm>>2]|0; - $174 = ($172|0)!=($173|0); - if ($174) { - $175 = HEAP32[$zIn>>2]|0; - $176 = HEAP8[$175>>0]|0; - $177 = $176&255; - $178 = $177 & 192; - $179 = ($178|0)==(128); - $544 = $179; - } else { - $544 = 0; - } - $180 = HEAP32[$c>>2]|0; - if (!($544)) { - break; - } - $181 = $180 << 6; - $182 = HEAP32[$zIn>>2]|0; - $183 = (($182) + 1|0); - HEAP32[$zIn>>2] = $183; - $184 = HEAP8[$182>>0]|0; - $185 = $184&255; - $186 = 63 & $185; - $187 = (($181) + ($186))|0; - HEAP32[$c>>2] = $187; - } - $188 = ($180>>>0)<(128); - if (!($188)) { - $189 = HEAP32[$c>>2]|0; - $190 = $189 & -2048; - $191 = ($190|0)==(55296); - if (!($191)) { - $192 = HEAP32[$c>>2]|0; - $193 = $192 & -2; - $194 = ($193|0)==(65534); - if (!($194)) { - break; - } - } - } - HEAP32[$c>>2] = 65533; - } - } while(0); - $195 = HEAP32[$c>>2]|0; - $196 = ($195>>>0)<=(65535); - $197 = HEAP32[$c>>2]|0; - if ($196) { - $198 = $197 >>> 8; - $199 = $198 & 255; - $200 = $199&255; - $201 = HEAP32[$z>>2]|0; - $202 = (($201) + 1|0); - HEAP32[$z>>2] = $202; - HEAP8[$201>>0] = $200; - $203 = HEAP32[$c>>2]|0; - $204 = $203 & 255; - $205 = $204&255; - $206 = HEAP32[$z>>2]|0; - $207 = (($206) + 1|0); - HEAP32[$z>>2] = $207; - HEAP8[$206>>0] = $205; - continue; - } else { - $208 = (($197) - 65536)|0; - $209 = $208 >>> 18; - $210 = $209 & 3; - $211 = (216 + ($210))|0; - $212 = $211&255; - $213 = HEAP32[$z>>2]|0; - $214 = (($213) + 1|0); - HEAP32[$z>>2] = $214; - HEAP8[$213>>0] = $212; - $215 = HEAP32[$c>>2]|0; - $216 = $215 >>> 10; - $217 = $216 & 63; - $218 = HEAP32[$c>>2]|0; - $219 = (($218) - 65536)|0; - $220 = $219 >>> 10; - $221 = $220 & 192; - $222 = (($217) + ($221))|0; - $223 = $222&255; - $224 = HEAP32[$z>>2]|0; - $225 = (($224) + 1|0); - HEAP32[$z>>2] = $225; - HEAP8[$224>>0] = $223; - $226 = HEAP32[$c>>2]|0; - $227 = $226 >>> 8; - $228 = $227 & 3; - $229 = (220 + ($228))|0; - $230 = $229&255; - $231 = HEAP32[$z>>2]|0; - $232 = (($231) + 1|0); - HEAP32[$z>>2] = $232; - HEAP8[$231>>0] = $230; - $233 = HEAP32[$c>>2]|0; - $234 = $233 & 255; - $235 = $234&255; - $236 = HEAP32[$z>>2]|0; - $237 = (($236) + 1|0); - HEAP32[$z>>2] = $237; - HEAP8[$236>>0] = $235; - continue; - } - } - } - } while(0); - $238 = HEAP32[$z>>2]|0; - $239 = HEAP32[$zOut>>2]|0; - $240 = $238; - $241 = $239; - $242 = (($240) - ($241))|0; - $243 = HEAP32[$1>>2]|0; - $244 = (($243) + 24|0); - HEAP32[$244>>2] = $242; - $245 = HEAP32[$z>>2]|0; - $246 = (($245) + 1|0); - HEAP32[$z>>2] = $246; - HEAP8[$245>>0] = 0; - } else { - $247 = HEAP32[$1>>2]|0; - $248 = (($247) + 30|0); - $249 = HEAP8[$248>>0]|0; - $250 = $249&255; - $251 = ($250|0)==(2); - L67: do { - if ($251) { - while(1) { - $252 = HEAP32[$zIn>>2]|0; - $253 = HEAP32[$zTerm>>2]|0; - $254 = ($252>>>0)<($253>>>0); - if (!($254)) { - break L67; - } - $255 = HEAP32[$zIn>>2]|0; - $256 = (($255) + 1|0); - HEAP32[$zIn>>2] = $256; - $257 = HEAP8[$255>>0]|0; - $258 = $257&255; - HEAP32[$c>>2] = $258; - $259 = HEAP32[$zIn>>2]|0; - $260 = (($259) + 1|0); - HEAP32[$zIn>>2] = $260; - $261 = HEAP8[$259>>0]|0; - $262 = $261&255; - $263 = $262 << 8; - $264 = HEAP32[$c>>2]|0; - $265 = (($264) + ($263))|0; - HEAP32[$c>>2] = $265; - $266 = HEAP32[$c>>2]|0; - $267 = ($266>>>0)>=(55296); - $268 = HEAP32[$c>>2]|0; - $269 = ($268>>>0)<(57344); - $or$cond = $267 & $269; - if ($or$cond) { - $270 = HEAP32[$zIn>>2]|0; - $271 = HEAP32[$zTerm>>2]|0; - $272 = ($270>>>0)<($271>>>0); - if ($272) { - $273 = HEAP32[$zIn>>2]|0; - $274 = (($273) + 1|0); - HEAP32[$zIn>>2] = $274; - $275 = HEAP8[$273>>0]|0; - $276 = $275&255; - HEAP32[$c2>>2] = $276; - $277 = HEAP32[$zIn>>2]|0; - $278 = (($277) + 1|0); - HEAP32[$zIn>>2] = $278; - $279 = HEAP8[$277>>0]|0; - $280 = $279&255; - $281 = $280 << 8; - $282 = HEAP32[$c2>>2]|0; - $283 = (($282) + ($281))|0; - HEAP32[$c2>>2] = $283; - $284 = HEAP32[$c2>>2]|0; - $285 = $284 & 1023; - $286 = HEAP32[$c>>2]|0; - $287 = $286 & 63; - $288 = $287 << 10; - $289 = (($285) + ($288))|0; - $290 = HEAP32[$c>>2]|0; - $291 = $290 & 960; - $292 = (($291) + 64)|0; - $293 = $292 << 10; - $294 = (($289) + ($293))|0; - HEAP32[$c>>2] = $294; - } - } - $295 = HEAP32[$c>>2]|0; - $296 = ($295>>>0)<(128); - $297 = HEAP32[$c>>2]|0; - if ($296) { - $298 = $297 & 255; - $299 = $298&255; - $300 = HEAP32[$z>>2]|0; - $301 = (($300) + 1|0); - HEAP32[$z>>2] = $301; - HEAP8[$300>>0] = $299; - continue; - } - $302 = ($297>>>0)<(2048); - $303 = HEAP32[$c>>2]|0; - if ($302) { - $304 = $303 >>> 6; - $305 = $304 & 31; - $306 = $305&255; - $307 = $306&255; - $308 = (192 + ($307))|0; - $309 = $308&255; - $310 = HEAP32[$z>>2]|0; - $311 = (($310) + 1|0); - HEAP32[$z>>2] = $311; - HEAP8[$310>>0] = $309; - $312 = HEAP32[$c>>2]|0; - $313 = $312 & 63; - $314 = $313&255; - $315 = $314&255; - $316 = (128 + ($315))|0; - $317 = $316&255; - $318 = HEAP32[$z>>2]|0; - $319 = (($318) + 1|0); - HEAP32[$z>>2] = $319; - HEAP8[$318>>0] = $317; - continue; - } - $320 = ($303>>>0)<(65536); - $321 = HEAP32[$c>>2]|0; - if ($320) { - $322 = $321 >>> 12; - $323 = $322 & 15; - $324 = $323&255; - $325 = $324&255; - $326 = (224 + ($325))|0; - $327 = $326&255; - $328 = HEAP32[$z>>2]|0; - $329 = (($328) + 1|0); - HEAP32[$z>>2] = $329; - HEAP8[$328>>0] = $327; - $330 = HEAP32[$c>>2]|0; - $331 = $330 >>> 6; - $332 = $331 & 63; - $333 = $332&255; - $334 = $333&255; - $335 = (128 + ($334))|0; - $336 = $335&255; - $337 = HEAP32[$z>>2]|0; - $338 = (($337) + 1|0); - HEAP32[$z>>2] = $338; - HEAP8[$337>>0] = $336; - $339 = HEAP32[$c>>2]|0; - $340 = $339 & 63; - $341 = $340&255; - $342 = $341&255; - $343 = (128 + ($342))|0; - $344 = $343&255; - $345 = HEAP32[$z>>2]|0; - $346 = (($345) + 1|0); - HEAP32[$z>>2] = $346; - HEAP8[$345>>0] = $344; - continue; - } else { - $347 = $321 >>> 18; - $348 = $347 & 7; - $349 = $348&255; - $350 = $349&255; - $351 = (240 + ($350))|0; - $352 = $351&255; - $353 = HEAP32[$z>>2]|0; - $354 = (($353) + 1|0); - HEAP32[$z>>2] = $354; - HEAP8[$353>>0] = $352; - $355 = HEAP32[$c>>2]|0; - $356 = $355 >>> 12; - $357 = $356 & 63; - $358 = $357&255; - $359 = $358&255; - $360 = (128 + ($359))|0; - $361 = $360&255; - $362 = HEAP32[$z>>2]|0; - $363 = (($362) + 1|0); - HEAP32[$z>>2] = $363; - HEAP8[$362>>0] = $361; - $364 = HEAP32[$c>>2]|0; - $365 = $364 >>> 6; - $366 = $365 & 63; - $367 = $366&255; - $368 = $367&255; - $369 = (128 + ($368))|0; - $370 = $369&255; - $371 = HEAP32[$z>>2]|0; - $372 = (($371) + 1|0); - HEAP32[$z>>2] = $372; - HEAP8[$371>>0] = $370; - $373 = HEAP32[$c>>2]|0; - $374 = $373 & 63; - $375 = $374&255; - $376 = $375&255; - $377 = (128 + ($376))|0; - $378 = $377&255; - $379 = HEAP32[$z>>2]|0; - $380 = (($379) + 1|0); - HEAP32[$z>>2] = $380; - HEAP8[$379>>0] = $378; - continue; - } - } - } else { - while(1) { - $381 = HEAP32[$zIn>>2]|0; - $382 = HEAP32[$zTerm>>2]|0; - $383 = ($381>>>0)<($382>>>0); - if (!($383)) { - break L67; - } - $384 = HEAP32[$zIn>>2]|0; - $385 = (($384) + 1|0); - HEAP32[$zIn>>2] = $385; - $386 = HEAP8[$384>>0]|0; - $387 = $386&255; - $388 = $387 << 8; - HEAP32[$c>>2] = $388; - $389 = HEAP32[$zIn>>2]|0; - $390 = (($389) + 1|0); - HEAP32[$zIn>>2] = $390; - $391 = HEAP8[$389>>0]|0; - $392 = $391&255; - $393 = HEAP32[$c>>2]|0; - $394 = (($393) + ($392))|0; - HEAP32[$c>>2] = $394; - $395 = HEAP32[$c>>2]|0; - $396 = ($395>>>0)>=(55296); - $397 = HEAP32[$c>>2]|0; - $398 = ($397>>>0)<(57344); - $or$cond3 = $396 & $398; - if ($or$cond3) { - $399 = HEAP32[$zIn>>2]|0; - $400 = HEAP32[$zTerm>>2]|0; - $401 = ($399>>>0)<($400>>>0); - if ($401) { - $402 = HEAP32[$zIn>>2]|0; - $403 = (($402) + 1|0); - HEAP32[$zIn>>2] = $403; - $404 = HEAP8[$402>>0]|0; - $405 = $404&255; - $406 = $405 << 8; - HEAP32[$c21>>2] = $406; - $407 = HEAP32[$zIn>>2]|0; - $408 = (($407) + 1|0); - HEAP32[$zIn>>2] = $408; - $409 = HEAP8[$407>>0]|0; - $410 = $409&255; - $411 = HEAP32[$c21>>2]|0; - $412 = (($411) + ($410))|0; - HEAP32[$c21>>2] = $412; - $413 = HEAP32[$c21>>2]|0; - $414 = $413 & 1023; - $415 = HEAP32[$c>>2]|0; - $416 = $415 & 63; - $417 = $416 << 10; - $418 = (($414) + ($417))|0; - $419 = HEAP32[$c>>2]|0; - $420 = $419 & 960; - $421 = (($420) + 64)|0; - $422 = $421 << 10; - $423 = (($418) + ($422))|0; - HEAP32[$c>>2] = $423; - } - } - $424 = HEAP32[$c>>2]|0; - $425 = ($424>>>0)<(128); - $426 = HEAP32[$c>>2]|0; - if ($425) { - $427 = $426 & 255; - $428 = $427&255; - $429 = HEAP32[$z>>2]|0; - $430 = (($429) + 1|0); - HEAP32[$z>>2] = $430; - HEAP8[$429>>0] = $428; - continue; - } - $431 = ($426>>>0)<(2048); - $432 = HEAP32[$c>>2]|0; - if ($431) { - $433 = $432 >>> 6; - $434 = $433 & 31; - $435 = $434&255; - $436 = $435&255; - $437 = (192 + ($436))|0; - $438 = $437&255; - $439 = HEAP32[$z>>2]|0; - $440 = (($439) + 1|0); - HEAP32[$z>>2] = $440; - HEAP8[$439>>0] = $438; - $441 = HEAP32[$c>>2]|0; - $442 = $441 & 63; - $443 = $442&255; - $444 = $443&255; - $445 = (128 + ($444))|0; - $446 = $445&255; - $447 = HEAP32[$z>>2]|0; - $448 = (($447) + 1|0); - HEAP32[$z>>2] = $448; - HEAP8[$447>>0] = $446; - continue; - } - $449 = ($432>>>0)<(65536); - $450 = HEAP32[$c>>2]|0; - if ($449) { - $451 = $450 >>> 12; - $452 = $451 & 15; - $453 = $452&255; - $454 = $453&255; - $455 = (224 + ($454))|0; - $456 = $455&255; - $457 = HEAP32[$z>>2]|0; - $458 = (($457) + 1|0); - HEAP32[$z>>2] = $458; - HEAP8[$457>>0] = $456; - $459 = HEAP32[$c>>2]|0; - $460 = $459 >>> 6; - $461 = $460 & 63; - $462 = $461&255; - $463 = $462&255; - $464 = (128 + ($463))|0; - $465 = $464&255; - $466 = HEAP32[$z>>2]|0; - $467 = (($466) + 1|0); - HEAP32[$z>>2] = $467; - HEAP8[$466>>0] = $465; - $468 = HEAP32[$c>>2]|0; - $469 = $468 & 63; - $470 = $469&255; - $471 = $470&255; - $472 = (128 + ($471))|0; - $473 = $472&255; - $474 = HEAP32[$z>>2]|0; - $475 = (($474) + 1|0); - HEAP32[$z>>2] = $475; - HEAP8[$474>>0] = $473; - continue; - } else { - $476 = $450 >>> 18; - $477 = $476 & 7; - $478 = $477&255; - $479 = $478&255; - $480 = (240 + ($479))|0; - $481 = $480&255; - $482 = HEAP32[$z>>2]|0; - $483 = (($482) + 1|0); - HEAP32[$z>>2] = $483; - HEAP8[$482>>0] = $481; - $484 = HEAP32[$c>>2]|0; - $485 = $484 >>> 12; - $486 = $485 & 63; - $487 = $486&255; - $488 = $487&255; - $489 = (128 + ($488))|0; - $490 = $489&255; - $491 = HEAP32[$z>>2]|0; - $492 = (($491) + 1|0); - HEAP32[$z>>2] = $492; - HEAP8[$491>>0] = $490; - $493 = HEAP32[$c>>2]|0; - $494 = $493 >>> 6; - $495 = $494 & 63; - $496 = $495&255; - $497 = $496&255; - $498 = (128 + ($497))|0; - $499 = $498&255; - $500 = HEAP32[$z>>2]|0; - $501 = (($500) + 1|0); - HEAP32[$z>>2] = $501; - HEAP8[$500>>0] = $499; - $502 = HEAP32[$c>>2]|0; - $503 = $502 & 63; - $504 = $503&255; - $505 = $504&255; - $506 = (128 + ($505))|0; - $507 = $506&255; - $508 = HEAP32[$z>>2]|0; - $509 = (($508) + 1|0); - HEAP32[$z>>2] = $509; - HEAP8[$508>>0] = $507; - continue; - } - } - } - } while(0); - $510 = HEAP32[$z>>2]|0; - $511 = HEAP32[$zOut>>2]|0; - $512 = $510; - $513 = $511; - $514 = (($512) - ($513))|0; - $515 = HEAP32[$1>>2]|0; - $516 = (($515) + 24|0); - HEAP32[$516>>2] = $514; - } - $517 = HEAP32[$z>>2]|0; - HEAP8[$517>>0] = 0; - $518 = HEAP32[$1>>2]|0; - _sqlite3VdbeMemRelease($518); - $519 = HEAP32[$1>>2]|0; - $520 = (($519) + 28|0); - $521 = HEAP16[$520>>1]|0; - $522 = $521&65535; - $523 = $522 & -7169; - $524 = $523&65535; - HEAP16[$520>>1] = $524; - $525 = HEAP8[$2>>0]|0; - $526 = HEAP32[$1>>2]|0; - $527 = (($526) + 30|0); - HEAP8[$527>>0] = $525; - $528 = HEAP32[$1>>2]|0; - $529 = (($528) + 28|0); - $530 = HEAP16[$529>>1]|0; - $531 = $530&65535; - $532 = $531 | 512; - $533 = $532&65535; - HEAP16[$529>>1] = $533; - $534 = HEAP32[$zOut>>2]|0; - $535 = HEAP32[$1>>2]|0; - $536 = (($535) + 4|0); - HEAP32[$536>>2] = $534; - $537 = HEAP32[$1>>2]|0; - $538 = (($537) + 4|0); - $539 = HEAP32[$538>>2]|0; - $540 = HEAP32[$1>>2]|0; - $541 = (($540) + 36|0); - HEAP32[$541>>2] = $539; - } - HEAP32[$0>>2] = 0; - $542 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($542|0); -} -function _sqlite3VdbeMemMakeWriteable($pMem) { - $pMem = $pMem|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $f = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $f = sp; - HEAP32[$1>>2] = $pMem; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 28|0); - $4 = HEAP16[$3>>1]|0; - $5 = $4&65535; - $6 = $5 & 16384; - $7 = ($6|0)!=(0); - if ($7) { - $8 = HEAP32[$1>>2]|0; - (_sqlite3VdbeMemExpandBlob($8)|0); - } - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 28|0); - $11 = HEAP16[$10>>1]|0; - $12 = $11&65535; - HEAP32[$f>>2] = $12; - $13 = HEAP32[$f>>2]|0; - $14 = $13 & 18; - $15 = ($14|0)!=(0); - do { - if ($15) { - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 4|0); - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 36|0); - $21 = HEAP32[$20>>2]|0; - $22 = ($18|0)!=($21|0); - if ($22) { - $23 = HEAP32[$1>>2]|0; - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 24|0); - $26 = HEAP32[$25>>2]|0; - $27 = (($26) + 2)|0; - $28 = (_sqlite3VdbeMemGrow($23,$27,1)|0); - $29 = ($28|0)!=(0); - if (!($29)) { - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 24|0); - $32 = HEAP32[$31>>2]|0; - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 4|0); - $35 = HEAP32[$34>>2]|0; - $36 = (($35) + ($32)|0); - HEAP8[$36>>0] = 0; - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 24|0); - $39 = HEAP32[$38>>2]|0; - $40 = (($39) + 1)|0; - $41 = HEAP32[$1>>2]|0; - $42 = (($41) + 4|0); - $43 = HEAP32[$42>>2]|0; - $44 = (($43) + ($40)|0); - HEAP8[$44>>0] = 0; - $45 = HEAP32[$1>>2]|0; - $46 = (($45) + 28|0); - $47 = HEAP16[$46>>1]|0; - $48 = $47&65535; - $49 = $48 | 512; - $50 = $49&65535; - HEAP16[$46>>1] = $50; - break; - } - HEAP32[$0>>2] = 7; - $51 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($51|0); - } - } - } while(0); - HEAP32[$0>>2] = 0; - $51 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($51|0); -} -function _functionDestroy($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $pDestructor = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pDestructor = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 32|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pDestructor>>2] = $4; - $5 = HEAP32[$pDestructor>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - STACKTOP = sp;return; - } - $7 = HEAP32[$pDestructor>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = (($8) + -1)|0; - HEAP32[$7>>2] = $9; - $10 = HEAP32[$pDestructor>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)==(0); - if (!($12)) { - STACKTOP = sp;return; - } - $13 = HEAP32[$pDestructor>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$pDestructor>>2]|0; - $17 = (($16) + 8|0); - $18 = HEAP32[$17>>2]|0; - FUNCTION_TABLE_vi[$15 & 31]($18); - $19 = HEAP32[$0>>2]|0; - $20 = HEAP32[$pDestructor>>2]|0; - _sqlite3DbFree($19,$20); - STACKTOP = sp;return; -} -function _connectionIsBusy($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $j = 0, $pBt = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $j = sp + 4|0; - $pBt = sp; - HEAP32[$1>>2] = $db; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0|0); - if ($5) { - HEAP32[$0>>2] = 1; - $25 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($25|0); - } - HEAP32[$j>>2] = 0; - while(1) { - $6 = HEAP32[$j>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 20|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($6|0)<($9|0); - if (!($10)) { - label = 9; - break; - } - $11 = HEAP32[$j>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 16|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + ($11<<4)|0); - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$pBt>>2] = $17; - $18 = HEAP32[$pBt>>2]|0; - $19 = ($18|0)!=(0|0); - if ($19) { - $20 = HEAP32[$pBt>>2]|0; - $21 = (_sqlite3BtreeIsInBackup($20)|0); - $22 = ($21|0)!=(0); - if ($22) { - label = 7; - break; - } - } - $23 = HEAP32[$j>>2]|0; - $24 = (($23) + 1)|0; - HEAP32[$j>>2] = $24; - } - if ((label|0) == 7) { - HEAP32[$0>>2] = 1; - $25 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($25|0); - } - else if ((label|0) == 9) { - HEAP32[$0>>2] = 0; - $25 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($25|0); - } - return 0|0; -} -function _sqlite3RollbackAll($db,$tripCode) { - $db = $db|0; - $tripCode = $tripCode|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $inTrans = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $i = sp + 8|0; - $inTrans = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $tripCode; - HEAP32[$inTrans>>2] = 0; - _sqlite3BeginBenignMalloc(); - $2 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnterAll($2); - HEAP32[$i>>2] = 0; - while(1) { - $3 = HEAP32[$i>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 20|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($3|0)<($6|0); - if (!($7)) { - break; - } - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 16|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + ($8<<4)|0); - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$p>>2] = $14; - $15 = HEAP32[$p>>2]|0; - $16 = ($15|0)!=(0|0); - if ($16) { - $17 = HEAP32[$p>>2]|0; - $18 = (_sqlite3BtreeIsInTrans($17)|0); - $19 = ($18|0)!=(0); - if ($19) { - HEAP32[$inTrans>>2] = 1; - } - $20 = HEAP32[$p>>2]|0; - $21 = HEAP32[$1>>2]|0; - (_sqlite3BtreeRollback($20,$21)|0); - } - $22 = HEAP32[$i>>2]|0; - $23 = (($22) + 1)|0; - HEAP32[$i>>2] = $23; - } - $24 = HEAP32[$0>>2]|0; - (_sqlite3VtabRollback($24)|0); - _sqlite3EndBenignMalloc(); - $25 = HEAP32[$0>>2]|0; - $26 = (($25) + 24|0); - $27 = HEAP32[$26>>2]|0; - $28 = $27 & 2; - $29 = ($28|0)!=(0); - if ($29) { - $30 = HEAP32[$0>>2]|0; - $31 = (($30) + 132|0); - $32 = (($31) + 5|0); - $33 = HEAP8[$32>>0]|0; - $34 = $33&255; - $35 = ($34|0)==(0); - if ($35) { - $36 = HEAP32[$0>>2]|0; - _sqlite3ExpirePreparedStatements($36); - $37 = HEAP32[$0>>2]|0; - _sqlite3ResetAllSchemasOfConnection($37); - } - } - $38 = HEAP32[$0>>2]|0; - $39 = (($38) + 496|0); - $40 = $39; - $41 = $40; - HEAP32[$41>>2] = 0; - $42 = (($40) + 4)|0; - $43 = $42; - HEAP32[$43>>2] = 0; - $44 = HEAP32[$0>>2]|0; - $45 = (($44) + 504|0); - $46 = $45; - $47 = $46; - HEAP32[$47>>2] = 0; - $48 = (($46) + 4)|0; - $49 = $48; - HEAP32[$49>>2] = 0; - $50 = HEAP32[$0>>2]|0; - $51 = (($50) + 24|0); - $52 = HEAP32[$51>>2]|0; - $53 = $52 & -16777217; - HEAP32[$51>>2] = $53; - $54 = HEAP32[$0>>2]|0; - $55 = (($54) + 192|0); - $56 = HEAP32[$55>>2]|0; - $57 = ($56|0)!=(0|0); - if (!($57)) { - STACKTOP = sp;return; - } - $58 = HEAP32[$inTrans>>2]|0; - $59 = ($58|0)!=(0); - if (!($59)) { - $60 = HEAP32[$0>>2]|0; - $61 = (($60) + 62|0); - $62 = HEAP8[$61>>0]|0; - $63 = ($62<<24>>24)!=(0); - if ($63) { - STACKTOP = sp;return; - } - } - $64 = HEAP32[$0>>2]|0; - $65 = (($64) + 192|0); - $66 = HEAP32[$65>>2]|0; - $67 = HEAP32[$0>>2]|0; - $68 = (($67) + 188|0); - $69 = HEAP32[$68>>2]|0; - FUNCTION_TABLE_vi[$66 & 31]($69); - STACKTOP = sp;return; -} -function _sqlite3CloseSavepoints($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $pTmp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pTmp = sp; - HEAP32[$0>>2] = $db; - while(1) { - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 480|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - $5 = HEAP32[$0>>2]|0; - if (!($4)) { - break; - } - $6 = (($5) + 480|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pTmp>>2] = $7; - $8 = HEAP32[$pTmp>>2]|0; - $9 = (($8) + 24|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 480|0); - HEAP32[$12>>2] = $10; - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$pTmp>>2]|0; - _sqlite3DbFree($13,$14); - } - $15 = (($5) + 488|0); - HEAP32[$15>>2] = 0; - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 492|0); - HEAP32[$17>>2] = 0; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 69|0); - HEAP8[$19>>0] = 0; - STACKTOP = sp;return; -} -function _sqlite3BtreeClose($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $pBt = 0, $pCur = 0, $pTmp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $pBt = sp + 8|0; - $pCur = sp + 4|0; - $pTmp = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pBt>>2] = $3; - $4 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($4); - $5 = HEAP32[$pBt>>2]|0; - $6 = (($5) + 8|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pCur>>2] = $7; - while(1) { - $8 = HEAP32[$pCur>>2]|0; - $9 = ($8|0)!=(0|0); - if (!($9)) { - break; - } - $10 = HEAP32[$pCur>>2]|0; - HEAP32[$pTmp>>2] = $10; - $11 = HEAP32[$pCur>>2]|0; - $12 = (($11) + 8|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pCur>>2] = $13; - $14 = HEAP32[$pTmp>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$0>>2]|0; - $17 = ($15|0)==($16|0); - if (!($17)) { - continue; - } - $18 = HEAP32[$pTmp>>2]|0; - (_sqlite3BtreeCloseCursor($18)|0); - } - $19 = HEAP32[$0>>2]|0; - (_sqlite3BtreeRollback($19,0)|0); - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 9|0); - $22 = HEAP8[$21>>0]|0; - $23 = ($22<<24>>24)!=(0); - if ($23) { - $24 = HEAP32[$pBt>>2]|0; - $25 = (_removeFromSharingList($24)|0); - $26 = ($25|0)!=(0); - if ($26) { - label = 7; - } - } else { - label = 7; - } - if ((label|0) == 7) { - $27 = HEAP32[$pBt>>2]|0; - $28 = HEAP32[$27>>2]|0; - (_sqlite3PagerClose($28)|0); - $29 = HEAP32[$pBt>>2]|0; - $30 = (($29) + 52|0); - $31 = HEAP32[$30>>2]|0; - $32 = ($31|0)!=(0|0); - if ($32) { - $33 = HEAP32[$pBt>>2]|0; - $34 = (($33) + 48|0); - $35 = HEAP32[$34>>2]|0; - $36 = ($35|0)!=(0|0); - if ($36) { - $37 = HEAP32[$pBt>>2]|0; - $38 = (($37) + 52|0); - $39 = HEAP32[$38>>2]|0; - $40 = HEAP32[$pBt>>2]|0; - $41 = (($40) + 48|0); - $42 = HEAP32[$41>>2]|0; - FUNCTION_TABLE_vi[$39 & 31]($42); - } - } - $43 = HEAP32[$pBt>>2]|0; - $44 = (($43) + 48|0); - $45 = HEAP32[$44>>2]|0; - _sqlite3DbFree(0,$45); - $46 = HEAP32[$pBt>>2]|0; - _freeTempSpace($46); - $47 = HEAP32[$pBt>>2]|0; - _sqlite3_free($47); - } - $48 = HEAP32[$0>>2]|0; - $49 = (($48) + 24|0); - $50 = HEAP32[$49>>2]|0; - $51 = ($50|0)!=(0|0); - if ($51) { - $52 = HEAP32[$0>>2]|0; - $53 = (($52) + 20|0); - $54 = HEAP32[$53>>2]|0; - $55 = HEAP32[$0>>2]|0; - $56 = (($55) + 24|0); - $57 = HEAP32[$56>>2]|0; - $58 = (($57) + 20|0); - HEAP32[$58>>2] = $54; - } - $59 = HEAP32[$0>>2]|0; - $60 = (($59) + 20|0); - $61 = HEAP32[$60>>2]|0; - $62 = ($61|0)!=(0|0); - if (!($62)) { - $70 = HEAP32[$0>>2]|0; - _sqlite3_free($70); - STACKTOP = sp;return 0; - } - $63 = HEAP32[$0>>2]|0; - $64 = (($63) + 24|0); - $65 = HEAP32[$64>>2]|0; - $66 = HEAP32[$0>>2]|0; - $67 = (($66) + 20|0); - $68 = HEAP32[$67>>2]|0; - $69 = (($68) + 24|0); - HEAP32[$69>>2] = $65; - $70 = HEAP32[$0>>2]|0; - _sqlite3_free($70); - STACKTOP = sp;return 0; -} -function _sqlite3VtabUnlockList($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pNext = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $p = sp + 4|0; - $pNext = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 324|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$p>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 324|0); - HEAP32[$5>>2] = 0; - $6 = HEAP32[$p>>2]|0; - $7 = ($6|0)!=(0|0); - if (!($7)) { - STACKTOP = sp;return; - } - $8 = HEAP32[$0>>2]|0; - _sqlite3ExpirePreparedStatements($8); - while(1) { - $9 = HEAP32[$p>>2]|0; - $10 = (($9) + 24|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$pNext>>2] = $11; - $12 = HEAP32[$p>>2]|0; - _sqlite3VtabUnlock($12); - $13 = HEAP32[$pNext>>2]|0; - HEAP32[$p>>2] = $13; - $14 = HEAP32[$p>>2]|0; - $15 = ($14|0)!=(0|0); - if (!($15)) { - break; - } - } - STACKTOP = sp;return; -} -function _sqlite3CollapseDatabaseArray($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $i = 0, $j = 0, $pDb = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $i = sp + 8|0; - $j = sp + 4|0; - $pDb = sp; - HEAP32[$0>>2] = $db; - HEAP32[$j>>2] = 2; - HEAP32[$i>>2] = 2; - while(1) { - $1 = HEAP32[$i>>2]|0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 20|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($1|0)<($4|0); - if (!($5)) { - break; - } - $6 = HEAP32[$i>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 16|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + ($6<<4)|0); - HEAP32[$pDb>>2] = $10; - $11 = HEAP32[$pDb>>2]|0; - $12 = (($11) + 4|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)==(0|0); - if ($14) { - $15 = HEAP32[$0>>2]|0; - $16 = HEAP32[$pDb>>2]|0; - $17 = HEAP32[$16>>2]|0; - _sqlite3DbFree($15,$17); - $18 = HEAP32[$pDb>>2]|0; - HEAP32[$18>>2] = 0; - } else { - $19 = HEAP32[$j>>2]|0; - $20 = HEAP32[$i>>2]|0; - $21 = ($19|0)<($20|0); - if ($21) { - $22 = HEAP32[$j>>2]|0; - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 16|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + ($22<<4)|0); - $27 = HEAP32[$i>>2]|0; - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 16|0); - $30 = HEAP32[$29>>2]|0; - $31 = (($30) + ($27<<4)|0); - ;HEAP32[$26+0>>2]=HEAP32[$31+0>>2]|0;HEAP32[$26+4>>2]=HEAP32[$31+4>>2]|0;HEAP32[$26+8>>2]=HEAP32[$31+8>>2]|0;HEAP32[$26+12>>2]=HEAP32[$31+12>>2]|0; - } - $32 = HEAP32[$j>>2]|0; - $33 = (($32) + 1)|0; - HEAP32[$j>>2] = $33; - } - $34 = HEAP32[$i>>2]|0; - $35 = (($34) + 1)|0; - HEAP32[$i>>2] = $35; - } - $36 = HEAP32[$j>>2]|0; - $37 = HEAP32[$0>>2]|0; - $38 = (($37) + 16|0); - $39 = HEAP32[$38>>2]|0; - $40 = (($39) + ($36<<4)|0); - $41 = HEAP32[$0>>2]|0; - $42 = (($41) + 20|0); - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$j>>2]|0; - $45 = (($43) - ($44))|0; - $46 = $45<<4; - _memset(($40|0),0,($46|0))|0; - $47 = HEAP32[$j>>2]|0; - $48 = HEAP32[$0>>2]|0; - $49 = (($48) + 20|0); - HEAP32[$49>>2] = $47; - $50 = HEAP32[$0>>2]|0; - $51 = (($50) + 20|0); - $52 = HEAP32[$51>>2]|0; - $53 = ($52|0)<=(2); - if (!($53)) { - STACKTOP = sp;return; - } - $54 = HEAP32[$0>>2]|0; - $55 = (($54) + 16|0); - $56 = HEAP32[$55>>2]|0; - $57 = HEAP32[$0>>2]|0; - $58 = (($57) + 448|0); - $59 = ($56|0)!=($58|0); - if (!($59)) { - STACKTOP = sp;return; - } - $60 = HEAP32[$0>>2]|0; - $61 = (($60) + 448|0); - $62 = HEAP32[$0>>2]|0; - $63 = (($62) + 16|0); - $64 = HEAP32[$63>>2]|0; - ;HEAP32[$61+0>>2]=HEAP32[$64+0>>2]|0;HEAP32[$61+4>>2]=HEAP32[$64+4>>2]|0;HEAP32[$61+8>>2]=HEAP32[$64+8>>2]|0;HEAP32[$61+12>>2]=HEAP32[$64+12>>2]|0;HEAP32[$61+16>>2]=HEAP32[$64+16>>2]|0;HEAP32[$61+20>>2]=HEAP32[$64+20>>2]|0;HEAP32[$61+24>>2]=HEAP32[$64+24>>2]|0;HEAP32[$61+28>>2]=HEAP32[$64+28>>2]|0; - $65 = HEAP32[$0>>2]|0; - $66 = HEAP32[$0>>2]|0; - $67 = (($66) + 16|0); - $68 = HEAP32[$67>>2]|0; - _sqlite3DbFree($65,$68); - $69 = HEAP32[$0>>2]|0; - $70 = (($69) + 448|0); - $71 = HEAP32[$0>>2]|0; - $72 = (($71) + 16|0); - HEAP32[$72>>2] = $70; - STACKTOP = sp;return; -} -function _sqlite3VtabUnlock($pVTab) { - $pVTab = $pVTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $db = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $db = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pVTab; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$db>>2] = $2; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 12|0); - $5 = HEAP32[$4>>2]|0; - $6 = (($5) + -1)|0; - HEAP32[$4>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 12|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)==(0); - if (!($10)) { - STACKTOP = sp;return; - } - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 8|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$p>>2] = $13; - $14 = HEAP32[$p>>2]|0; - $15 = ($14|0)!=(0|0); - if ($15) { - $16 = HEAP32[$p>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + 16|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$p>>2]|0; - (FUNCTION_TABLE_ii[$19 & 31]($20)|0); - } - $21 = HEAP32[$db>>2]|0; - $22 = HEAP32[$0>>2]|0; - _sqlite3DbFree($21,$22); - STACKTOP = sp;return; -} -function _sqlite3BtreeCloseCursor($pCur) { - $pCur = $pCur|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pBt = 0, $pBtree = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $pBtree = sp + 8|0; - $i = sp + 4|0; - $pBt = sp; - HEAP32[$0>>2] = $pCur; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$pBtree>>2] = $2; - $3 = HEAP32[$pBtree>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - STACKTOP = sp;return 0; - } - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 4|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pBt>>2] = $7; - $8 = HEAP32[$pBtree>>2]|0; - _sqlite3BtreeEnter($8); - $9 = HEAP32[$0>>2]|0; - _sqlite3BtreeClearCursor($9); - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 12|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)!=(0|0); - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 8|0); - $16 = HEAP32[$15>>2]|0; - if ($13) { - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 12|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($19) + 8|0); - HEAP32[$20>>2] = $16; - } else { - $21 = HEAP32[$pBt>>2]|0; - $22 = (($21) + 8|0); - HEAP32[$22>>2] = $16; - } - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 8|0); - $25 = HEAP32[$24>>2]|0; - $26 = ($25|0)!=(0|0); - if ($26) { - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 12|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$0>>2]|0; - $31 = (($30) + 8|0); - $32 = HEAP32[$31>>2]|0; - $33 = (($32) + 12|0); - HEAP32[$33>>2] = $29; - } - HEAP32[$i>>2] = 0; - while(1) { - $34 = HEAP32[$i>>2]|0; - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + 84|0); - $37 = HEAP16[$36>>1]|0; - $38 = $37 << 16 >> 16; - $39 = ($34|0)<=($38|0); - if (!($39)) { - break; - } - $40 = HEAP32[$i>>2]|0; - $41 = HEAP32[$0>>2]|0; - $42 = (($41) + 128|0); - $43 = (($42) + ($40<<2)|0); - $44 = HEAP32[$43>>2]|0; - _releasePage($44); - $45 = HEAP32[$i>>2]|0; - $46 = (($45) + 1)|0; - HEAP32[$i>>2] = $46; - } - $47 = HEAP32[$pBt>>2]|0; - _unlockBtreeIfUnused($47); - $48 = HEAP32[$pBtree>>2]|0; - $49 = HEAP32[$48>>2]|0; - $50 = HEAP32[$0>>2]|0; - $51 = (($50) + 20|0); - $52 = HEAP32[$51>>2]|0; - _sqlite3DbFree($49,$52); - STACKTOP = sp;return 0; -} -function _removeFromSharingList($pBt) { - $pBt = $pBt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pList = 0, $removed = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $pList = sp + 4|0; - $removed = sp; - HEAP32[$0>>2] = $pBt; - HEAP32[$removed>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 64|0); - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + -1)|0; - HEAP32[$2>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 64|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)<=(0); - if (!($8)) { - $32 = HEAP32[$removed>>2]|0; - STACKTOP = sp;return ($32|0); - } - $9 = HEAP32[4184>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = ($9|0)==($10|0); - if ($11) { - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 68|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[4184>>2] = $14; - } else { - $15 = HEAP32[4184>>2]|0; - HEAP32[$pList>>2] = $15; - while(1) { - $16 = HEAP32[$pList>>2]|0; - $17 = ($16|0)!=(0|0); - if ($17) { - $18 = HEAP32[$pList>>2]|0; - $19 = (($18) + 68|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$0>>2]|0; - $22 = ($20|0)!=($21|0); - $33 = $22; - } else { - $33 = 0; - } - $23 = HEAP32[$pList>>2]|0; - if (!($33)) { - break; - } - $24 = (($23) + 68|0); - $25 = HEAP32[$24>>2]|0; - HEAP32[$pList>>2] = $25; - } - $26 = ($23|0)!=(0|0); - if ($26) { - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 68|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$pList>>2]|0; - $31 = (($30) + 68|0); - HEAP32[$31>>2] = $29; - } - } - HEAP32[$removed>>2] = 1; - $32 = HEAP32[$removed>>2]|0; - STACKTOP = sp;return ($32|0); -} -function _sqlite3BtreeClearCursor($pCur) { - $pCur = $pCur|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pCur; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 64|0); - $3 = HEAP32[$2>>2]|0; - _sqlite3_free($3); - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 64|0); - HEAP32[$5>>2] = 0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 81|0); - HEAP8[$7>>0] = 0; - STACKTOP = sp;return; -} -function _releasePage($pPage) { - $pPage = $pPage|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPage; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if (!($2)) { - STACKTOP = sp;return; - } - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 68|0); - $5 = HEAP32[$4>>2]|0; - _sqlite3PagerUnrefNotNull($5); - STACKTOP = sp;return; -} -function _unlockBtreeIfUnused($pBt) { - $pBt = $pBt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pBt; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 20|0); - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - $5 = ($4|0)==(0); - if (!($5)) { - STACKTOP = sp;return; - } - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 12|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)!=(0|0); - if (!($9)) { - STACKTOP = sp;return; - } - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 12|0); - $12 = HEAP32[$11>>2]|0; - _releasePage($12); - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 12|0); - HEAP32[$14>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3BtreeIsInTrans($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if (!($2)) { - $9 = 0; - $8 = $9&1; - STACKTOP = sp;return ($8|0); - } - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 8|0); - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = ($6|0)==(2); - $9 = $7; - $8 = $9&1; - STACKTOP = sp;return ($8|0); -} -function _sqlite3VtabRollback($db) { - $db = $db|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - _callFinaliser($1,68); - STACKTOP = sp;return 0; -} -function _callFinaliser($db,$offset) { - $db = $db|0; - $offset = $offset|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, $pVTab = 0, $x = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $i = sp + 12|0; - $pVTab = sp + 8|0; - $p = sp + 4|0; - $x = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $offset; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 320|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $6 = HEAP32[$i>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 296|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($6|0)<($9|0); - if (!($10)) { - break; - } - $11 = HEAP32[$i>>2]|0; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 320|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + ($11<<2)|0); - $16 = HEAP32[$15>>2]|0; - HEAP32[$pVTab>>2] = $16; - $17 = HEAP32[$pVTab>>2]|0; - $18 = (($17) + 8|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$p>>2] = $19; - $20 = HEAP32[$p>>2]|0; - $21 = ($20|0)!=(0|0); - if ($21) { - $22 = HEAP32[$p>>2]|0; - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$1>>2]|0; - $25 = (($23) + ($24)|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$x>>2] = $26; - $27 = HEAP32[$x>>2]|0; - $28 = ($27|0)!=(0|0); - if ($28) { - $29 = HEAP32[$x>>2]|0; - $30 = HEAP32[$p>>2]|0; - (FUNCTION_TABLE_ii[$29 & 31]($30)|0); - } - } - $31 = HEAP32[$pVTab>>2]|0; - $32 = (($31) + 20|0); - HEAP32[$32>>2] = 0; - $33 = HEAP32[$pVTab>>2]|0; - _sqlite3VtabUnlock($33); - $34 = HEAP32[$i>>2]|0; - $35 = (($34) + 1)|0; - HEAP32[$i>>2] = $35; - } - $36 = HEAP32[$0>>2]|0; - $37 = HEAP32[$0>>2]|0; - $38 = (($37) + 320|0); - $39 = HEAP32[$38>>2]|0; - _sqlite3DbFree($36,$39); - $40 = HEAP32[$0>>2]|0; - $41 = (($40) + 296|0); - HEAP32[$41>>2] = 0; - $42 = HEAP32[$0>>2]|0; - $43 = (($42) + 320|0); - HEAP32[$43>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3BtreeIsInBackup($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 16|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0); - $5 = $4&1; - STACKTOP = sp;return ($5|0); -} -function _disconnectAllVtab($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, $pSchema = 0, $pTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $i = sp + 12|0; - $pSchema = sp + 8|0; - $p = sp + 4|0; - $pTab = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnterAll($1); - HEAP32[$i>>2] = 0; - while(1) { - $2 = HEAP32[$i>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 20|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($2|0)<($5|0); - if (!($6)) { - break; - } - $7 = HEAP32[$i>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 16|0); - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + ($7<<4)|0); - $12 = (($11) + 12|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pSchema>>2] = $13; - $14 = HEAP32[$i>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 16|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + ($14<<4)|0); - $19 = (($18) + 12|0); - $20 = HEAP32[$19>>2]|0; - $21 = ($20|0)!=(0|0); - L4: do { - if ($21) { - $22 = HEAP32[$pSchema>>2]|0; - $23 = (($22) + 8|0); - $24 = (($23) + 8|0); - $25 = HEAP32[$24>>2]|0; - HEAP32[$p>>2] = $25; - while(1) { - $26 = HEAP32[$p>>2]|0; - $27 = ($26|0)!=(0|0); - if (!($27)) { - break L4; - } - $28 = HEAP32[$p>>2]|0; - $29 = (($28) + 8|0); - $30 = HEAP32[$29>>2]|0; - HEAP32[$pTab>>2] = $30; - $31 = HEAP32[$pTab>>2]|0; - $32 = (($31) + 44|0); - $33 = HEAP8[$32>>0]|0; - $34 = $33&255; - $35 = $34 & 16; - $36 = ($35|0)!=(0); - if ($36) { - $37 = HEAP32[$0>>2]|0; - $38 = HEAP32[$pTab>>2]|0; - _sqlite3VtabDisconnect($37,$38); - } - $39 = HEAP32[$p>>2]|0; - $40 = HEAP32[$39>>2]|0; - HEAP32[$p>>2] = $40; - } - } - } while(0); - $41 = HEAP32[$i>>2]|0; - $42 = (($41) + 1)|0; - HEAP32[$i>>2] = $42; - } - $43 = HEAP32[$0>>2]|0; - _sqlite3VtabUnlockList($43); - STACKTOP = sp;return; -} -function _sqlite3VtabDisconnect($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $pVTab = 0, $ppVTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $ppVTab = sp + 4|0; - $pVTab = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 60|0); - HEAP32[$ppVTab>>2] = $3; - while(1) { - $4 = HEAP32[$ppVTab>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - label = 6; - break; - } - $7 = HEAP32[$ppVTab>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = ($9|0)==($10|0); - $12 = HEAP32[$ppVTab>>2]|0; - $13 = HEAP32[$12>>2]|0; - if ($11) { - break; - } - $19 = (($13) + 24|0); - HEAP32[$ppVTab>>2] = $19; - } - if ((label|0) == 6) { - STACKTOP = sp;return; - } - HEAP32[$pVTab>>2] = $13; - $14 = HEAP32[$pVTab>>2]|0; - $15 = (($14) + 24|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$ppVTab>>2]|0; - HEAP32[$17>>2] = $16; - $18 = HEAP32[$pVTab>>2]|0; - _sqlite3VtabUnlock($18); - STACKTOP = sp;return; -} -function _sqlite3PcacheShrink($pCache) { - $pCache = $pCache|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pCache; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 40|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[((38512 + 152|0))>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 40|0); - $8 = HEAP32[$7>>2]|0; - FUNCTION_TABLE_vi[$5 & 31]($8); - STACKTOP = sp;return; -} -function _pcache1Init($NotUsed) { - $NotUsed = $NotUsed|0; - var $0 = 0, $1 = 0, $2 = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $NotUsed; - dest=3136+0|0; stop=dest+68|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $1 = HEAP32[((38512 + 4|0))>>2]|0; - $2 = ($1|0)!=(0); - if ($2) { - HEAP32[3136>>2] = (8); - HEAP32[((3136 + 52|0))>>2] = (8); - } - HEAP32[((3136 + 12|0))>>2] = 10; - HEAP32[((3136 + 28|0))>>2] = 1; - STACKTOP = sp;return 0; -} -function _pcache1Shutdown($NotUsed) { - $NotUsed = $NotUsed|0; - var $0 = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $NotUsed; - dest=3136+0|0; stop=dest+68|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - STACKTOP = sp;return; -} -function _pcache1Create($szPage,$szExtra,$bPurgeable) { - $szPage = $szPage|0; - $szExtra = $szExtra|0; - $bPurgeable = $bPurgeable|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $pCache = 0, $pGroup = 0, $separateCache = 0, $sz = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $pCache = sp + 12|0; - $pGroup = sp + 8|0; - $sz = sp + 4|0; - $separateCache = sp; - HEAP32[$0>>2] = $szPage; - HEAP32[$1>>2] = $szExtra; - HEAP32[$2>>2] = $bPurgeable; - HEAP32[$separateCache>>2] = 0; - HEAP32[$sz>>2] = 48; - $3 = HEAP32[$sz>>2]|0; - $4 = (_sqlite3MallocZero($3)|0); - HEAP32[$pCache>>2] = $4; - $5 = HEAP32[$pCache>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - $41 = HEAP32[$pCache>>2]|0; - STACKTOP = sp;return ($41|0); - } - HEAP32[$pGroup>>2] = 3136; - $7 = HEAP32[$pGroup>>2]|0; - $8 = HEAP32[$pCache>>2]|0; - HEAP32[$8>>2] = $7; - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$pCache>>2]|0; - $11 = (($10) + 4|0); - HEAP32[$11>>2] = $9; - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$pCache>>2]|0; - $14 = (($13) + 8|0); - HEAP32[$14>>2] = $12; - $15 = HEAP32[$2>>2]|0; - $16 = ($15|0)!=(0); - $17 = $16 ? 1 : 0; - $18 = HEAP32[$pCache>>2]|0; - $19 = (($18) + 12|0); - HEAP32[$19>>2] = $17; - $20 = HEAP32[$2>>2]|0; - $21 = ($20|0)!=(0); - if (!($21)) { - $41 = HEAP32[$pCache>>2]|0; - STACKTOP = sp;return ($41|0); - } - $22 = HEAP32[$pCache>>2]|0; - $23 = (($22) + 16|0); - HEAP32[$23>>2] = 10; - $24 = HEAP32[$pCache>>2]|0; - $25 = (($24) + 16|0); - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$pGroup>>2]|0; - $28 = (($27) + 8|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + ($26))|0; - HEAP32[$28>>2] = $30; - $31 = HEAP32[$pGroup>>2]|0; - $32 = (($31) + 4|0); - $33 = HEAP32[$32>>2]|0; - $34 = (($33) + 10)|0; - $35 = HEAP32[$pGroup>>2]|0; - $36 = (($35) + 8|0); - $37 = HEAP32[$36>>2]|0; - $38 = (($34) - ($37))|0; - $39 = HEAP32[$pGroup>>2]|0; - $40 = (($39) + 12|0); - HEAP32[$40>>2] = $38; - $41 = HEAP32[$pCache>>2]|0; - STACKTOP = sp;return ($41|0); -} -function _pcache1Cachesize($p,$nMax) { - $p = $p|0; - $nMax = $nMax|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0; - var $pGroup = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $pCache = sp + 4|0; - $pGroup = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $nMax; - $2 = HEAP32[$0>>2]|0; - HEAP32[$pCache>>2] = $2; - $3 = HEAP32[$pCache>>2]|0; - $4 = (($3) + 12|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0); - if (!($6)) { - STACKTOP = sp;return; - } - $7 = HEAP32[$pCache>>2]|0; - $8 = HEAP32[$7>>2]|0; - HEAP32[$pGroup>>2] = $8; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$pCache>>2]|0; - $11 = (($10) + 20|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($9) - ($12))|0; - $14 = HEAP32[$pGroup>>2]|0; - $15 = (($14) + 4|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + ($13))|0; - HEAP32[$15>>2] = $17; - $18 = HEAP32[$pGroup>>2]|0; - $19 = (($18) + 4|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($20) + 10)|0; - $22 = HEAP32[$pGroup>>2]|0; - $23 = (($22) + 8|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($21) - ($24))|0; - $26 = HEAP32[$pGroup>>2]|0; - $27 = (($26) + 12|0); - HEAP32[$27>>2] = $25; - $28 = HEAP32[$1>>2]|0; - $29 = HEAP32[$pCache>>2]|0; - $30 = (($29) + 20|0); - HEAP32[$30>>2] = $28; - $31 = HEAP32[$pCache>>2]|0; - $32 = (($31) + 20|0); - $33 = HEAP32[$32>>2]|0; - $34 = ($33*9)|0; - $35 = (($34>>>0) / 10)&-1; - $36 = HEAP32[$pCache>>2]|0; - $37 = (($36) + 24|0); - HEAP32[$37>>2] = $35; - $38 = HEAP32[$pGroup>>2]|0; - _pcache1EnforceMaxPage($38); - STACKTOP = sp;return; -} -function _pcache1Pagecount($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $n = 0, $pCache = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $n = sp + 4|0; - $pCache = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - HEAP32[$pCache>>2] = $1; - $2 = HEAP32[$pCache>>2]|0; - $3 = (($2) + 36|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$n>>2] = $4; - $5 = HEAP32[$n>>2]|0; - STACKTOP = sp;return ($5|0); -} -function _pcache1Fetch($p,$iKey,$createFlag) { - $p = $p|0; - $iKey = $iKey|0; - $createFlag = $createFlag|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; - var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; - var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; - var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; - var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $h = 0, $h1 = 0, $nPinned = 0, $pCache = 0, $pGroup = 0, $pOther = 0, $pPage = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $nPinned = sp + 24|0; - $pCache = sp + 20|0; - $pGroup = sp + 16|0; - $pPage = sp + 12|0; - $h = sp + 8|0; - $pOther = sp + 4|0; - $h1 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $iKey; - HEAP32[$2>>2] = $createFlag; - $3 = HEAP32[$0>>2]|0; - HEAP32[$pCache>>2] = $3; - HEAP32[$pPage>>2] = 0; - $4 = HEAP32[$pCache>>2]|0; - $5 = (($4) + 40|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6>>>0)>(0); - L1: do { - if ($7) { - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$pCache>>2]|0; - $10 = (($9) + 40|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($8>>>0) % ($11>>>0))&-1; - HEAP32[$h>>2] = $12; - $13 = HEAP32[$h>>2]|0; - $14 = HEAP32[$pCache>>2]|0; - $15 = (($14) + 44|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + ($13<<2)|0); - $18 = HEAP32[$17>>2]|0; - HEAP32[$pPage>>2] = $18; - while(1) { - $19 = HEAP32[$pPage>>2]|0; - $20 = ($19|0)!=(0|0); - if (!($20)) { - break L1; - } - $21 = HEAP32[$pPage>>2]|0; - $22 = (($21) + 8|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$1>>2]|0; - $25 = ($23|0)!=($24|0); - if (!($25)) { - break L1; - } - $26 = HEAP32[$pPage>>2]|0; - $27 = (($26) + 16|0); - $28 = HEAP32[$27>>2]|0; - HEAP32[$pPage>>2] = $28; - } - } - } while(0); - $29 = HEAP32[$pPage>>2]|0; - $30 = ($29|0)!=(0|0); - do { - if ($30) { - $31 = HEAP32[$pPage>>2]|0; - $32 = (($31) + 12|0); - $33 = HEAP8[$32>>0]|0; - $34 = ($33<<24>>24)!=(0); - if (!($34)) { - $35 = HEAP32[$pPage>>2]|0; - _pcache1PinPage($35); - } - } else { - $36 = HEAP32[$2>>2]|0; - $37 = ($36|0)==(0); - if (!($37)) { - $38 = HEAP32[$pCache>>2]|0; - $39 = HEAP32[$38>>2]|0; - HEAP32[$pGroup>>2] = $39; - $40 = HEAP32[$pCache>>2]|0; - $41 = (($40) + 36|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$pCache>>2]|0; - $44 = (($43) + 32|0); - $45 = HEAP32[$44>>2]|0; - $46 = (($42) - ($45))|0; - HEAP32[$nPinned>>2] = $46; - $47 = HEAP32[$2>>2]|0; - $48 = ($47|0)==(1); - if ($48) { - $49 = HEAP32[$nPinned>>2]|0; - $50 = HEAP32[$pGroup>>2]|0; - $51 = (($50) + 12|0); - $52 = HEAP32[$51>>2]|0; - $53 = ($49>>>0)>=($52>>>0); - if ($53) { - break; - } - $54 = HEAP32[$nPinned>>2]|0; - $55 = HEAP32[$pCache>>2]|0; - $56 = (($55) + 24|0); - $57 = HEAP32[$56>>2]|0; - $58 = ($54>>>0)>=($57>>>0); - if ($58) { - break; - } - $59 = HEAP32[$pCache>>2]|0; - $60 = (_pcache1UnderMemoryPressure($59)|0); - $61 = ($60|0)!=(0); - if ($61) { - break; - } - } - $62 = HEAP32[$pCache>>2]|0; - $63 = (($62) + 36|0); - $64 = HEAP32[$63>>2]|0; - $65 = HEAP32[$pCache>>2]|0; - $66 = (($65) + 40|0); - $67 = HEAP32[$66>>2]|0; - $68 = ($64>>>0)>=($67>>>0); - if ($68) { - $69 = HEAP32[$pCache>>2]|0; - $70 = (_pcache1ResizeHash($69)|0); - $71 = ($70|0)!=(0); - if ($71) { - break; - } - } - $72 = HEAP32[$pCache>>2]|0; - $73 = (($72) + 12|0); - $74 = HEAP32[$73>>2]|0; - $75 = ($74|0)!=(0); - do { - if ($75) { - $76 = HEAP32[$pGroup>>2]|0; - $77 = (($76) + 24|0); - $78 = HEAP32[$77>>2]|0; - $79 = ($78|0)!=(0|0); - if ($79) { - $80 = HEAP32[$pCache>>2]|0; - $81 = (($80) + 36|0); - $82 = HEAP32[$81>>2]|0; - $83 = (($82) + 1)|0; - $84 = HEAP32[$pCache>>2]|0; - $85 = (($84) + 20|0); - $86 = HEAP32[$85>>2]|0; - $87 = ($83>>>0)>=($86>>>0); - if (!($87)) { - $88 = HEAP32[$pGroup>>2]|0; - $89 = (($88) + 16|0); - $90 = HEAP32[$89>>2]|0; - $91 = HEAP32[$pGroup>>2]|0; - $92 = (($91) + 4|0); - $93 = HEAP32[$92>>2]|0; - $94 = ($90>>>0)>=($93>>>0); - if (!($94)) { - $95 = HEAP32[$pCache>>2]|0; - $96 = (_pcache1UnderMemoryPressure($95)|0); - $97 = ($96|0)!=(0); - if (!($97)) { - break; - } - } - } - $98 = HEAP32[$pGroup>>2]|0; - $99 = (($98) + 24|0); - $100 = HEAP32[$99>>2]|0; - HEAP32[$pPage>>2] = $100; - $101 = HEAP32[$pPage>>2]|0; - _pcache1RemoveFromHash($101); - $102 = HEAP32[$pPage>>2]|0; - _pcache1PinPage($102); - $103 = HEAP32[$pPage>>2]|0; - $104 = (($103) + 20|0); - $105 = HEAP32[$104>>2]|0; - HEAP32[$pOther>>2] = $105; - $106 = HEAP32[$pOther>>2]|0; - $107 = (($106) + 4|0); - $108 = HEAP32[$107>>2]|0; - $109 = HEAP32[$pOther>>2]|0; - $110 = (($109) + 8|0); - $111 = HEAP32[$110>>2]|0; - $112 = (($108) + ($111))|0; - $113 = HEAP32[$pCache>>2]|0; - $114 = (($113) + 4|0); - $115 = HEAP32[$114>>2]|0; - $116 = HEAP32[$pCache>>2]|0; - $117 = (($116) + 8|0); - $118 = HEAP32[$117>>2]|0; - $119 = (($115) + ($118))|0; - $120 = ($112|0)!=($119|0); - if ($120) { - $121 = HEAP32[$pPage>>2]|0; - _pcache1FreePage($121); - HEAP32[$pPage>>2] = 0; - break; - } else { - $122 = HEAP32[$pOther>>2]|0; - $123 = (($122) + 12|0); - $124 = HEAP32[$123>>2]|0; - $125 = HEAP32[$pCache>>2]|0; - $126 = (($125) + 12|0); - $127 = HEAP32[$126>>2]|0; - $128 = (($124) - ($127))|0; - $129 = HEAP32[$pGroup>>2]|0; - $130 = (($129) + 16|0); - $131 = HEAP32[$130>>2]|0; - $132 = (($131) - ($128))|0; - HEAP32[$130>>2] = $132; - break; - } - } - } - } while(0); - $133 = HEAP32[$pPage>>2]|0; - $134 = ($133|0)!=(0|0); - if (!($134)) { - $135 = HEAP32[$2>>2]|0; - $136 = ($135|0)==(1); - if ($136) { - _sqlite3BeginBenignMalloc(); - } - $137 = HEAP32[$pCache>>2]|0; - $138 = (_pcache1AllocPage($137)|0); - HEAP32[$pPage>>2] = $138; - $139 = HEAP32[$2>>2]|0; - $140 = ($139|0)==(1); - if ($140) { - _sqlite3EndBenignMalloc(); - } - } - $141 = HEAP32[$pPage>>2]|0; - $142 = ($141|0)!=(0|0); - if ($142) { - $143 = HEAP32[$1>>2]|0; - $144 = HEAP32[$pCache>>2]|0; - $145 = (($144) + 40|0); - $146 = HEAP32[$145>>2]|0; - $147 = (($143>>>0) % ($146>>>0))&-1; - HEAP32[$h1>>2] = $147; - $148 = HEAP32[$pCache>>2]|0; - $149 = (($148) + 36|0); - $150 = HEAP32[$149>>2]|0; - $151 = (($150) + 1)|0; - HEAP32[$149>>2] = $151; - $152 = HEAP32[$1>>2]|0; - $153 = HEAP32[$pPage>>2]|0; - $154 = (($153) + 8|0); - HEAP32[$154>>2] = $152; - $155 = HEAP32[$h1>>2]|0; - $156 = HEAP32[$pCache>>2]|0; - $157 = (($156) + 44|0); - $158 = HEAP32[$157>>2]|0; - $159 = (($158) + ($155<<2)|0); - $160 = HEAP32[$159>>2]|0; - $161 = HEAP32[$pPage>>2]|0; - $162 = (($161) + 16|0); - HEAP32[$162>>2] = $160; - $163 = HEAP32[$pCache>>2]|0; - $164 = HEAP32[$pPage>>2]|0; - $165 = (($164) + 20|0); - HEAP32[$165>>2] = $163; - $166 = HEAP32[$pPage>>2]|0; - $167 = (($166) + 28|0); - HEAP32[$167>>2] = 0; - $168 = HEAP32[$pPage>>2]|0; - $169 = (($168) + 24|0); - HEAP32[$169>>2] = 0; - $170 = HEAP32[$pPage>>2]|0; - $171 = (($170) + 12|0); - HEAP8[$171>>0] = 1; - $172 = HEAP32[$pPage>>2]|0; - $173 = (($172) + 4|0); - $174 = HEAP32[$173>>2]|0; - HEAP32[$174>>2] = 0; - $175 = HEAP32[$pPage>>2]|0; - $176 = HEAP32[$h1>>2]|0; - $177 = HEAP32[$pCache>>2]|0; - $178 = (($177) + 44|0); - $179 = HEAP32[$178>>2]|0; - $180 = (($179) + ($176<<2)|0); - HEAP32[$180>>2] = $175; - } - } - } - } while(0); - $181 = HEAP32[$pPage>>2]|0; - $182 = ($181|0)!=(0|0); - if (!($182)) { - $191 = HEAP32[$pPage>>2]|0; - STACKTOP = sp;return ($191|0); - } - $183 = HEAP32[$1>>2]|0; - $184 = HEAP32[$pCache>>2]|0; - $185 = (($184) + 28|0); - $186 = HEAP32[$185>>2]|0; - $187 = ($183>>>0)>($186>>>0); - if (!($187)) { - $191 = HEAP32[$pPage>>2]|0; - STACKTOP = sp;return ($191|0); - } - $188 = HEAP32[$1>>2]|0; - $189 = HEAP32[$pCache>>2]|0; - $190 = (($189) + 28|0); - HEAP32[$190>>2] = $188; - $191 = HEAP32[$pPage>>2]|0; - STACKTOP = sp;return ($191|0); -} -function _pcache1Unpin($p,$pPg,$reuseUnlikely) { - $p = $p|0; - $pPg = $pPg|0; - $reuseUnlikely = $reuseUnlikely|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0, $pGroup = 0, $pPage = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $pCache = sp + 8|0; - $pPage = sp + 4|0; - $pGroup = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $pPg; - HEAP32[$2>>2] = $reuseUnlikely; - $3 = HEAP32[$0>>2]|0; - HEAP32[$pCache>>2] = $3; - $4 = HEAP32[$1>>2]|0; - HEAP32[$pPage>>2] = $4; - $5 = HEAP32[$pCache>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$pGroup>>2] = $6; - $7 = HEAP32[$2>>2]|0; - $8 = ($7|0)!=(0); - if (!($8)) { - $9 = HEAP32[$pGroup>>2]|0; - $10 = (($9) + 16|0); - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$pGroup>>2]|0; - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - $15 = ($11>>>0)>($14>>>0); - if (!($15)) { - $18 = HEAP32[$pGroup>>2]|0; - $19 = (($18) + 20|0); - $20 = HEAP32[$19>>2]|0; - $21 = ($20|0)!=(0|0); - $22 = HEAP32[$pPage>>2]|0; - $23 = HEAP32[$pGroup>>2]|0; - if ($21) { - $24 = (($23) + 20|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + 28|0); - HEAP32[$26>>2] = $22; - $27 = HEAP32[$pGroup>>2]|0; - $28 = (($27) + 20|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$pPage>>2]|0; - $31 = (($30) + 24|0); - HEAP32[$31>>2] = $29; - $32 = HEAP32[$pPage>>2]|0; - $33 = HEAP32[$pGroup>>2]|0; - $34 = (($33) + 20|0); - HEAP32[$34>>2] = $32; - } else { - $35 = (($23) + 24|0); - HEAP32[$35>>2] = $22; - $36 = HEAP32[$pPage>>2]|0; - $37 = HEAP32[$pGroup>>2]|0; - $38 = (($37) + 20|0); - HEAP32[$38>>2] = $36; - } - $39 = HEAP32[$pCache>>2]|0; - $40 = (($39) + 32|0); - $41 = HEAP32[$40>>2]|0; - $42 = (($41) + 1)|0; - HEAP32[$40>>2] = $42; - $43 = HEAP32[$pPage>>2]|0; - $44 = (($43) + 12|0); - HEAP8[$44>>0] = 0; - STACKTOP = sp;return; - } - } - $16 = HEAP32[$pPage>>2]|0; - _pcache1RemoveFromHash($16); - $17 = HEAP32[$pPage>>2]|0; - _pcache1FreePage($17); - STACKTOP = sp;return; -} -function _pcache1Rekey($p,$pPg,$iOld,$iNew) { - $p = $p|0; - $pPg = $pPg|0; - $iOld = $iOld|0; - $iNew = $iNew|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $h = 0, $pCache = 0, $pPage = 0; - var $pp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $pCache = sp + 12|0; - $pPage = sp + 8|0; - $pp = sp + 4|0; - $h = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $pPg; - HEAP32[$2>>2] = $iOld; - HEAP32[$3>>2] = $iNew; - $4 = HEAP32[$0>>2]|0; - HEAP32[$pCache>>2] = $4; - $5 = HEAP32[$1>>2]|0; - HEAP32[$pPage>>2] = $5; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$pCache>>2]|0; - $8 = (($7) + 40|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($6>>>0) % ($9>>>0))&-1; - HEAP32[$h>>2] = $10; - $11 = HEAP32[$h>>2]|0; - $12 = HEAP32[$pCache>>2]|0; - $13 = (($12) + 44|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + ($11<<2)|0); - HEAP32[$pp>>2] = $15; - while(1) { - $16 = HEAP32[$pp>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$pPage>>2]|0; - $19 = ($17|0)!=($18|0); - if (!($19)) { - break; - } - $20 = HEAP32[$pp>>2]|0; - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + 16|0); - HEAP32[$pp>>2] = $22; - } - $23 = HEAP32[$pPage>>2]|0; - $24 = (($23) + 16|0); - $25 = HEAP32[$24>>2]|0; - $26 = HEAP32[$pp>>2]|0; - HEAP32[$26>>2] = $25; - $27 = HEAP32[$3>>2]|0; - $28 = HEAP32[$pCache>>2]|0; - $29 = (($28) + 40|0); - $30 = HEAP32[$29>>2]|0; - $31 = (($27>>>0) % ($30>>>0))&-1; - HEAP32[$h>>2] = $31; - $32 = HEAP32[$3>>2]|0; - $33 = HEAP32[$pPage>>2]|0; - $34 = (($33) + 8|0); - HEAP32[$34>>2] = $32; - $35 = HEAP32[$h>>2]|0; - $36 = HEAP32[$pCache>>2]|0; - $37 = (($36) + 44|0); - $38 = HEAP32[$37>>2]|0; - $39 = (($38) + ($35<<2)|0); - $40 = HEAP32[$39>>2]|0; - $41 = HEAP32[$pPage>>2]|0; - $42 = (($41) + 16|0); - HEAP32[$42>>2] = $40; - $43 = HEAP32[$pPage>>2]|0; - $44 = HEAP32[$h>>2]|0; - $45 = HEAP32[$pCache>>2]|0; - $46 = (($45) + 44|0); - $47 = HEAP32[$46>>2]|0; - $48 = (($47) + ($44<<2)|0); - HEAP32[$48>>2] = $43; - $49 = HEAP32[$3>>2]|0; - $50 = HEAP32[$pCache>>2]|0; - $51 = (($50) + 28|0); - $52 = HEAP32[$51>>2]|0; - $53 = ($49>>>0)>($52>>>0); - if (!($53)) { - STACKTOP = sp;return; - } - $54 = HEAP32[$3>>2]|0; - $55 = HEAP32[$pCache>>2]|0; - $56 = (($55) + 28|0); - HEAP32[$56>>2] = $54; - STACKTOP = sp;return; -} -function _pcache1Truncate($p,$iLimit) { - $p = $p|0; - $iLimit = $iLimit|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pCache = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $iLimit; - $2 = HEAP32[$0>>2]|0; - HEAP32[$pCache>>2] = $2; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$pCache>>2]|0; - $5 = (($4) + 28|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($3>>>0)<=($6>>>0); - if (!($7)) { - STACKTOP = sp;return; - } - $8 = HEAP32[$pCache>>2]|0; - $9 = HEAP32[$1>>2]|0; - _pcache1TruncateUnsafe($8,$9); - $10 = HEAP32[$1>>2]|0; - $11 = (($10) - 1)|0; - $12 = HEAP32[$pCache>>2]|0; - $13 = (($12) + 28|0); - HEAP32[$13>>2] = $11; - STACKTOP = sp;return; -} -function _pcache1Destroy($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0, $pGroup = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $pCache = sp + 4|0; - $pGroup = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - HEAP32[$pCache>>2] = $1; - $2 = HEAP32[$pCache>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$pGroup>>2] = $3; - $4 = HEAP32[$pCache>>2]|0; - _pcache1TruncateUnsafe($4,0); - $5 = HEAP32[$pCache>>2]|0; - $6 = (($5) + 20|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$pGroup>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - $11 = (($10) - ($7))|0; - HEAP32[$9>>2] = $11; - $12 = HEAP32[$pCache>>2]|0; - $13 = (($12) + 16|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$pGroup>>2]|0; - $16 = (($15) + 8|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($17) - ($14))|0; - HEAP32[$16>>2] = $18; - $19 = HEAP32[$pGroup>>2]|0; - $20 = (($19) + 4|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + 10)|0; - $23 = HEAP32[$pGroup>>2]|0; - $24 = (($23) + 8|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($22) - ($25))|0; - $27 = HEAP32[$pGroup>>2]|0; - $28 = (($27) + 12|0); - HEAP32[$28>>2] = $26; - $29 = HEAP32[$pGroup>>2]|0; - _pcache1EnforceMaxPage($29); - $30 = HEAP32[$pCache>>2]|0; - $31 = (($30) + 44|0); - $32 = HEAP32[$31>>2]|0; - _sqlite3_free($32); - $33 = HEAP32[$pCache>>2]|0; - _sqlite3_free($33); - STACKTOP = sp;return; -} -function _pcache1Shrink($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0, $pGroup = 0, $savedMaxPage = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $pCache = sp + 8|0; - $pGroup = sp + 4|0; - $savedMaxPage = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - HEAP32[$pCache>>2] = $1; - $2 = HEAP32[$pCache>>2]|0; - $3 = (($2) + 12|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0); - if (!($5)) { - STACKTOP = sp;return; - } - $6 = HEAP32[$pCache>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$pGroup>>2] = $7; - $8 = HEAP32[$pGroup>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$savedMaxPage>>2] = $10; - $11 = HEAP32[$pGroup>>2]|0; - $12 = (($11) + 4|0); - HEAP32[$12>>2] = 0; - $13 = HEAP32[$pGroup>>2]|0; - _pcache1EnforceMaxPage($13); - $14 = HEAP32[$savedMaxPage>>2]|0; - $15 = HEAP32[$pGroup>>2]|0; - $16 = (($15) + 4|0); - HEAP32[$16>>2] = $14; - STACKTOP = sp;return; -} -function _pcache1EnforceMaxPage($pGroup) { - $pGroup = $pGroup|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pGroup; - while(1) { - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 16|0); - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($3>>>0)>($6>>>0); - if (!($7)) { - label = 5; - break; - } - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 24|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)!=(0|0); - if (!($11)) { - label = 5; - break; - } - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 24|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$p>>2] = $14; - $15 = HEAP32[$p>>2]|0; - _pcache1PinPage($15); - $16 = HEAP32[$p>>2]|0; - _pcache1RemoveFromHash($16); - $17 = HEAP32[$p>>2]|0; - _pcache1FreePage($17); - } - if ((label|0) == 5) { - STACKTOP = sp;return; - } -} -function _pcache1PinPage($pPage) { - $pPage = $pPage|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $pCache = 0, $pGroup = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $pCache = sp + 4|0; - $pGroup = sp; - HEAP32[$0>>2] = $pPage; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 20|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pCache>>2] = $3; - $4 = HEAP32[$pCache>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$pGroup>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 28|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)!=(0|0); - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 24|0); - $12 = HEAP32[$11>>2]|0; - if ($9) { - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 28|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + 24|0); - HEAP32[$16>>2] = $12; - } else { - $17 = HEAP32[$pGroup>>2]|0; - $18 = (($17) + 20|0); - HEAP32[$18>>2] = $12; - } - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 24|0); - $21 = HEAP32[$20>>2]|0; - $22 = ($21|0)!=(0|0); - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 28|0); - $25 = HEAP32[$24>>2]|0; - if ($22) { - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 24|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + 28|0); - HEAP32[$29>>2] = $25; - } else { - $30 = HEAP32[$pGroup>>2]|0; - $31 = (($30) + 24|0); - HEAP32[$31>>2] = $25; - } - $32 = HEAP32[$0>>2]|0; - $33 = (($32) + 24|0); - HEAP32[$33>>2] = 0; - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 28|0); - HEAP32[$35>>2] = 0; - $36 = HEAP32[$0>>2]|0; - $37 = (($36) + 12|0); - HEAP8[$37>>0] = 1; - $38 = HEAP32[$pCache>>2]|0; - $39 = (($38) + 32|0); - $40 = HEAP32[$39>>2]|0; - $41 = (($40) + -1)|0; - HEAP32[$39>>2] = $41; - STACKTOP = sp;return; -} -function _pcache1RemoveFromHash($pPage) { - $pPage = $pPage|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $h = 0, $pCache = 0, $pp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $h = sp + 8|0; - $pCache = sp + 4|0; - $pp = sp; - HEAP32[$0>>2] = $pPage; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 20|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pCache>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 8|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$pCache>>2]|0; - $8 = (($7) + 40|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($6>>>0) % ($9>>>0))&-1; - HEAP32[$h>>2] = $10; - $11 = HEAP32[$h>>2]|0; - $12 = HEAP32[$pCache>>2]|0; - $13 = (($12) + 44|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + ($11<<2)|0); - HEAP32[$pp>>2] = $15; - while(1) { - $16 = HEAP32[$pp>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$0>>2]|0; - $19 = ($17|0)!=($18|0); - $20 = HEAP32[$pp>>2]|0; - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + 16|0); - if (!($19)) { - break; - } - HEAP32[$pp>>2] = $22; - } - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$pp>>2]|0; - HEAP32[$24>>2] = $23; - $25 = HEAP32[$pCache>>2]|0; - $26 = (($25) + 36|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + -1)|0; - HEAP32[$26>>2] = $28; - STACKTOP = sp;return; -} -function _pcache1FreePage($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pCache = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if (!($2)) { - STACKTOP = sp;return; - } - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 20|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pCache>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$6>>2]|0; - (_pcache1Free($7)|0); - $8 = HEAP32[$pCache>>2]|0; - $9 = (($8) + 12|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)!=(0); - if (!($11)) { - STACKTOP = sp;return; - } - $12 = HEAP32[$pCache>>2]|0; - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + 16|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + -1)|0; - HEAP32[$14>>2] = $16; - STACKTOP = sp;return; -} -function _pcache1TruncateUnsafe($pCache,$iLimit) { - $pCache = $pCache|0; - $iLimit = $iLimit|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $h = 0, $pPage = 0; - var $pp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $h = sp + 8|0; - $pp = sp + 4|0; - $pPage = sp; - HEAP32[$0>>2] = $pCache; - HEAP32[$1>>2] = $iLimit; - HEAP32[$h>>2] = 0; - while(1) { - $2 = HEAP32[$h>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 40|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($2>>>0)<($5>>>0); - if (!($6)) { - break; - } - $7 = HEAP32[$h>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 44|0); - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + ($7<<2)|0); - HEAP32[$pp>>2] = $11; - while(1) { - $12 = HEAP32[$pp>>2]|0; - $13 = HEAP32[$12>>2]|0; - HEAP32[$pPage>>2] = $13; - $14 = ($13|0)!=(0|0); - if (!($14)) { - break; - } - $15 = HEAP32[$pPage>>2]|0; - $16 = (($15) + 8|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = ($17>>>0)>=($18>>>0); - if (!($19)) { - $34 = HEAP32[$pPage>>2]|0; - $35 = (($34) + 16|0); - HEAP32[$pp>>2] = $35; - continue; - } - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 36|0); - $22 = HEAP32[$21>>2]|0; - $23 = (($22) + -1)|0; - HEAP32[$21>>2] = $23; - $24 = HEAP32[$pPage>>2]|0; - $25 = (($24) + 16|0); - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$pp>>2]|0; - HEAP32[$27>>2] = $26; - $28 = HEAP32[$pPage>>2]|0; - $29 = (($28) + 12|0); - $30 = HEAP8[$29>>0]|0; - $31 = ($30<<24>>24)!=(0); - if (!($31)) { - $32 = HEAP32[$pPage>>2]|0; - _pcache1PinPage($32); - } - $33 = HEAP32[$pPage>>2]|0; - _pcache1FreePage($33); - } - $36 = HEAP32[$h>>2]|0; - $37 = (($36) + 1)|0; - HEAP32[$h>>2] = $37; - } - STACKTOP = sp;return; -} -function _pcache1UnderMemoryPressure($pCache) { - $pCache = $pCache|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $pCache; - $2 = HEAP32[((3136 + 36|0))>>2]|0; - $3 = ($2|0)!=(0); - if ($3) { - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 8|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($6) + ($9))|0; - $11 = HEAP32[((3136 + 32|0))>>2]|0; - $12 = ($10|0)<=($11|0); - if ($12) { - $13 = HEAP32[((3136 + 64|0))>>2]|0; - HEAP32[$0>>2] = $13; - $15 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($15|0); - } - } - $14 = (_sqlite3HeapNearlyFull()|0); - HEAP32[$0>>2] = $14; - $15 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($15|0); -} -function _pcache1ResizeHash($p) { - $p = $p|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $apNew = 0, $h = 0, $i = 0, $nNew = 0, $pNext = 0, $pPage = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $apNew = sp + 20|0; - $nNew = sp + 16|0; - $i = sp + 12|0; - $pPage = sp + 8|0; - $pNext = sp + 4|0; - $h = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 40|0); - $3 = HEAP32[$2>>2]|0; - $4 = $3<<1; - HEAP32[$nNew>>2] = $4; - $5 = HEAP32[$nNew>>2]|0; - $6 = ($5>>>0)<(256); - $$ = $6 ? 256 : $4; - HEAP32[$nNew>>2] = $$; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 40|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)!=(0); - if ($10) { - _sqlite3BeginBenignMalloc(); - } - $11 = HEAP32[$nNew>>2]|0; - $12 = $11<<2; - $13 = (_sqlite3MallocZero($12)|0); - HEAP32[$apNew>>2] = $13; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 40|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($16|0)!=(0); - if ($17) { - _sqlite3EndBenignMalloc(); - } - $18 = HEAP32[$apNew>>2]|0; - $19 = ($18|0)!=(0|0); - if (!($19)) { - $62 = HEAP32[$0>>2]|0; - $63 = (($62) + 44|0); - $64 = HEAP32[$63>>2]|0; - $65 = ($64|0)!=(0|0); - $66 = $65 ? 0 : 7; - STACKTOP = sp;return ($66|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $20 = HEAP32[$i>>2]|0; - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 40|0); - $23 = HEAP32[$22>>2]|0; - $24 = ($20>>>0)<($23>>>0); - if (!($24)) { - break; - } - $25 = HEAP32[$i>>2]|0; - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 44|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + ($25<<2)|0); - $30 = HEAP32[$29>>2]|0; - HEAP32[$pNext>>2] = $30; - while(1) { - $31 = HEAP32[$pNext>>2]|0; - HEAP32[$pPage>>2] = $31; - $32 = ($31|0)!=(0|0); - if (!($32)) { - break; - } - $33 = HEAP32[$pPage>>2]|0; - $34 = (($33) + 8|0); - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$nNew>>2]|0; - $37 = (($35>>>0) % ($36>>>0))&-1; - HEAP32[$h>>2] = $37; - $38 = HEAP32[$pPage>>2]|0; - $39 = (($38) + 16|0); - $40 = HEAP32[$39>>2]|0; - HEAP32[$pNext>>2] = $40; - $41 = HEAP32[$h>>2]|0; - $42 = HEAP32[$apNew>>2]|0; - $43 = (($42) + ($41<<2)|0); - $44 = HEAP32[$43>>2]|0; - $45 = HEAP32[$pPage>>2]|0; - $46 = (($45) + 16|0); - HEAP32[$46>>2] = $44; - $47 = HEAP32[$pPage>>2]|0; - $48 = HEAP32[$h>>2]|0; - $49 = HEAP32[$apNew>>2]|0; - $50 = (($49) + ($48<<2)|0); - HEAP32[$50>>2] = $47; - } - $51 = HEAP32[$i>>2]|0; - $52 = (($51) + 1)|0; - HEAP32[$i>>2] = $52; - } - $53 = HEAP32[$0>>2]|0; - $54 = (($53) + 44|0); - $55 = HEAP32[$54>>2]|0; - _sqlite3_free($55); - $56 = HEAP32[$apNew>>2]|0; - $57 = HEAP32[$0>>2]|0; - $58 = (($57) + 44|0); - HEAP32[$58>>2] = $56; - $59 = HEAP32[$nNew>>2]|0; - $60 = HEAP32[$0>>2]|0; - $61 = (($60) + 40|0); - HEAP32[$61>>2] = $59; - $62 = HEAP32[$0>>2]|0; - $63 = (($62) + 44|0); - $64 = HEAP32[$63>>2]|0; - $65 = ($64|0)!=(0|0); - $66 = $65 ? 0 : 7; - STACKTOP = sp;return ($66|0); -} -function _pcache1AllocPage($pCache) { - $pCache = $pCache|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pPg = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $p = sp + 4|0; - $pPg = sp; - HEAP32[$1>>2] = $pCache; - HEAP32[$p>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - $5 = (32 + ($4))|0; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 8|0); - $8 = HEAP32[$7>>2]|0; - $9 = (($5) + ($8))|0; - $10 = (_pcache1Alloc($9)|0); - HEAP32[$pPg>>2] = $10; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 4|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$pPg>>2]|0; - $15 = (($14) + ($13)|0); - HEAP32[$p>>2] = $15; - $16 = HEAP32[$pPg>>2]|0; - $17 = ($16|0)!=(0|0); - if (!($17)) { - HEAP32[$0>>2] = 0; - $34 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($34|0); - } - $18 = HEAP32[$pPg>>2]|0; - $19 = HEAP32[$p>>2]|0; - HEAP32[$19>>2] = $18; - $20 = HEAP32[$p>>2]|0; - $21 = (($20) + 32|0); - $22 = HEAP32[$p>>2]|0; - $23 = (($22) + 4|0); - HEAP32[$23>>2] = $21; - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 12|0); - $26 = HEAP32[$25>>2]|0; - $27 = ($26|0)!=(0); - if ($27) { - $28 = HEAP32[$1>>2]|0; - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + 16|0); - $31 = HEAP32[$30>>2]|0; - $32 = (($31) + 1)|0; - HEAP32[$30>>2] = $32; - } - $33 = HEAP32[$p>>2]|0; - HEAP32[$0>>2] = $33; - $34 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($34|0); -} -function _sqlite3HeapNearlyFull() { - var $0 = 0, label = 0, sp = 0; - sp = STACKTOP; - $0 = HEAP32[((392 + 36|0))>>2]|0; - STACKTOP = sp;return ($0|0); -} -function _sqlite3MemMalloc($nByte) { - $nByte = $nByte|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $p = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 8|0; - $p = sp + 4|0; - HEAP32[$0>>2] = $nByte; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 7)|0; - $3 = $2 & -8; - HEAP32[$0>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 8)|0; - $6 = (_malloc($5)|0); - HEAP32[$p>>2] = $6; - $7 = HEAP32[$p>>2]|0; - $8 = ($7|0)!=(0|0); - $9 = HEAP32[$0>>2]|0; - if ($8) { - $10 = ($9|0)<(0); - $11 = $10 << 31 >> 31; - $12 = HEAP32[$p>>2]|0; - $13 = $12; - $14 = $13; - HEAP32[$14>>2] = $9; - $15 = (($13) + 4)|0; - $16 = $15; - HEAP32[$16>>2] = $11; - $17 = HEAP32[$p>>2]|0; - $18 = (($17) + 8|0); - HEAP32[$p>>2] = $18; - $19 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($19|0); - } else { - HEAP32[$vararg_buffer>>2] = $9; - _sqlite3_log(7,6144,$vararg_buffer); - $19 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($19|0); - } - return 0|0; -} -function _sqlite3MemFree($pPrior) { - $pPrior = $pPrior|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pPrior; - $1 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $1; - $2 = HEAP32[$p>>2]|0; - $3 = (($2) + -8|0); - HEAP32[$p>>2] = $3; - $4 = HEAP32[$p>>2]|0; - _free($4); - STACKTOP = sp;return; -} -function _sqlite3MemRealloc($pPrior,$nByte) { - $pPrior = $pPrior|0; - $nByte = $nByte|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 16|0; - $1 = sp + 12|0; - $p = sp + 8|0; - HEAP32[$0>>2] = $pPrior; - HEAP32[$1>>2] = $nByte; - $2 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $2; - $3 = HEAP32[$p>>2]|0; - $4 = (($3) + -8|0); - HEAP32[$p>>2] = $4; - $5 = HEAP32[$p>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 8)|0; - $8 = (_realloc($5,$7)|0); - HEAP32[$p>>2] = $8; - $9 = HEAP32[$p>>2]|0; - $10 = ($9|0)!=(0|0); - if ($10) { - $11 = HEAP32[$1>>2]|0; - $12 = ($11|0)<(0); - $13 = $12 << 31 >> 31; - $14 = HEAP32[$p>>2]|0; - $15 = $14; - $16 = $15; - HEAP32[$16>>2] = $11; - $17 = (($15) + 4)|0; - $18 = $17; - HEAP32[$18>>2] = $13; - $19 = HEAP32[$p>>2]|0; - $20 = (($19) + 8|0); - HEAP32[$p>>2] = $20; - $24 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($24|0); - } else { - $21 = HEAP32[$0>>2]|0; - $22 = (_sqlite3MemSize($21)|0); - $23 = HEAP32[$1>>2]|0; - HEAP32[$vararg_buffer>>2] = $22; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $23; - _sqlite3_log(7,6104,$vararg_buffer); - $24 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($24|0); - } - return 0|0; -} -function _sqlite3MemSize($pPrior) { - $pPrior = $pPrior|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $p = sp; - HEAP32[$1>>2] = $pPrior; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0|0); - if ($3) { - HEAP32[$0>>2] = 0; - $14 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($14|0); - } else { - $4 = HEAP32[$1>>2]|0; - HEAP32[$p>>2] = $4; - $5 = HEAP32[$p>>2]|0; - $6 = (($5) + -8|0); - HEAP32[$p>>2] = $6; - $7 = HEAP32[$p>>2]|0; - $8 = $7; - $9 = $8; - $10 = HEAP32[$9>>2]|0; - $11 = (($8) + 4)|0; - $12 = $11; - $13 = HEAP32[$12>>2]|0; - HEAP32[$0>>2] = $10; - $14 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($14|0); - } - return 0|0; -} -function _sqlite3MemRoundup($n) { - $n = $n|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $n; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 7)|0; - $3 = $2 & -8; - STACKTOP = sp;return ($3|0); -} -function _sqlite3MemInit($NotUsed) { - $NotUsed = $NotUsed|0; - var $0 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $NotUsed; - STACKTOP = sp;return 0; -} -function _sqlite3MemShutdown($NotUsed) { - $NotUsed = $NotUsed|0; - var $0 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $NotUsed; - STACKTOP = sp;return; -} -function _trimFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; - var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; - var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; - var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; - var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aLen = 0, $azChar = 0, $flags = 0, $i = 0, $len = 0, $len1 = 0, $nChar = 0, $nIn = 0, $z = 0, $zCharSet = 0; - var $zIn = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 52|0; - $1 = sp + 48|0; - $2 = sp + 44|0; - $zIn = sp + 40|0; - $zCharSet = sp + 36|0; - $nIn = sp + 32|0; - $flags = sp + 28|0; - $i = sp + 24|0; - $aLen = sp + 20|0; - $azChar = sp + 16|0; - $nChar = sp + 12|0; - $z = sp + 8|0; - $len = sp + 4|0; - $len1 = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - HEAP32[$aLen>>2] = 0; - HEAP32[$azChar>>2] = 0; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_type($4)|0); - $6 = ($5|0)==(5); - if ($6) { - STACKTOP = sp;return; - } - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3_value_text($8)|0); - HEAP32[$zIn>>2] = $9; - $10 = HEAP32[$zIn>>2]|0; - $11 = ($10|0)==(0|0); - if ($11) { - STACKTOP = sp;return; - } - $12 = HEAP32[$2>>2]|0; - $13 = HEAP32[$12>>2]|0; - $14 = (_sqlite3_value_bytes($13)|0); - HEAP32[$nIn>>2] = $14; - $15 = HEAP32[$1>>2]|0; - $16 = ($15|0)==(1); - L7: do { - if ($16) { - HEAP32[$nChar>>2] = 1; - HEAP32[$aLen>>2] = 9800; - HEAP32[$azChar>>2] = 9808; - HEAP32[$zCharSet>>2] = 0; - } else { - $17 = HEAP32[$2>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - $20 = (_sqlite3_value_text($19)|0); - HEAP32[$zCharSet>>2] = $20; - $21 = ($20|0)==(0|0); - if ($21) { - STACKTOP = sp;return; - } - $22 = HEAP32[$zCharSet>>2]|0; - HEAP32[$z>>2] = $22; - HEAP32[$nChar>>2] = 0; - while(1) { - $23 = HEAP32[$z>>2]|0; - $24 = HEAP8[$23>>0]|0; - $25 = ($24<<24>>24)!=(0); - if (!($25)) { - break; - } - $26 = HEAP32[$z>>2]|0; - $27 = (($26) + 1|0); - HEAP32[$z>>2] = $27; - $28 = HEAP8[$26>>0]|0; - $29 = $28&255; - $30 = ($29|0)>=(192); - L16: do { - if ($30) { - while(1) { - $31 = HEAP32[$z>>2]|0; - $32 = HEAP8[$31>>0]|0; - $33 = $32&255; - $34 = $33 & 192; - $35 = ($34|0)==(128); - if (!($35)) { - break L16; - } - $36 = HEAP32[$z>>2]|0; - $37 = (($36) + 1|0); - HEAP32[$z>>2] = $37; - } - } - } while(0); - $38 = HEAP32[$nChar>>2]|0; - $39 = (($38) + 1)|0; - HEAP32[$nChar>>2] = $39; - } - $40 = HEAP32[$nChar>>2]|0; - $41 = ($40|0)>(0); - if ($41) { - $42 = HEAP32[$0>>2]|0; - $43 = HEAP32[$nChar>>2]|0; - $44 = ($43|0)<(0); - $45 = $44 << 31 >> 31; - $46 = (___muldi3(($43|0),($45|0),5,0)|0); - $47 = tempRet0; - $48 = (_contextMalloc($42,$46,$47)|0); - HEAP32[$azChar>>2] = $48; - $49 = HEAP32[$azChar>>2]|0; - $50 = ($49|0)==(0|0); - if ($50) { - STACKTOP = sp;return; - } - $51 = HEAP32[$nChar>>2]|0; - $52 = HEAP32[$azChar>>2]|0; - $53 = (($52) + ($51<<2)|0); - HEAP32[$aLen>>2] = $53; - $54 = HEAP32[$zCharSet>>2]|0; - HEAP32[$z>>2] = $54; - HEAP32[$nChar>>2] = 0; - while(1) { - $55 = HEAP32[$z>>2]|0; - $56 = HEAP8[$55>>0]|0; - $57 = ($56<<24>>24)!=(0); - if (!($57)) { - break L7; - } - $58 = HEAP32[$z>>2]|0; - $59 = HEAP32[$nChar>>2]|0; - $60 = HEAP32[$azChar>>2]|0; - $61 = (($60) + ($59<<2)|0); - HEAP32[$61>>2] = $58; - $62 = HEAP32[$z>>2]|0; - $63 = (($62) + 1|0); - HEAP32[$z>>2] = $63; - $64 = HEAP8[$62>>0]|0; - $65 = $64&255; - $66 = ($65|0)>=(192); - L29: do { - if ($66) { - while(1) { - $67 = HEAP32[$z>>2]|0; - $68 = HEAP8[$67>>0]|0; - $69 = $68&255; - $70 = $69 & 192; - $71 = ($70|0)==(128); - if (!($71)) { - break L29; - } - $72 = HEAP32[$z>>2]|0; - $73 = (($72) + 1|0); - HEAP32[$z>>2] = $73; - } - } - } while(0); - $74 = HEAP32[$z>>2]|0; - $75 = HEAP32[$nChar>>2]|0; - $76 = HEAP32[$azChar>>2]|0; - $77 = (($76) + ($75<<2)|0); - $78 = HEAP32[$77>>2]|0; - $79 = $74; - $80 = $78; - $81 = (($79) - ($80))|0; - $82 = $81&255; - $83 = HEAP32[$nChar>>2]|0; - $84 = HEAP32[$aLen>>2]|0; - $85 = (($84) + ($83)|0); - HEAP8[$85>>0] = $82; - $86 = HEAP32[$nChar>>2]|0; - $87 = (($86) + 1)|0; - HEAP32[$nChar>>2] = $87; - } - } - } - } while(0); - $88 = HEAP32[$nChar>>2]|0; - $89 = ($88|0)>(0); - if ($89) { - $90 = HEAP32[$0>>2]|0; - $91 = (_sqlite3_user_data($90)|0); - $92 = $91; - HEAP32[$flags>>2] = $92; - $93 = HEAP32[$flags>>2]|0; - $94 = $93 & 1; - $95 = ($94|0)!=(0); - L37: do { - if ($95) { - while(1) { - $96 = HEAP32[$nIn>>2]|0; - $97 = ($96|0)>(0); - if (!($97)) { - break L37; - } - HEAP32[$len>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $98 = HEAP32[$i>>2]|0; - $99 = HEAP32[$nChar>>2]|0; - $100 = ($98|0)<($99|0); - if (!($100)) { - break; - } - $101 = HEAP32[$i>>2]|0; - $102 = HEAP32[$aLen>>2]|0; - $103 = (($102) + ($101)|0); - $104 = HEAP8[$103>>0]|0; - $105 = $104&255; - HEAP32[$len>>2] = $105; - $106 = HEAP32[$len>>2]|0; - $107 = HEAP32[$nIn>>2]|0; - $108 = ($106|0)<=($107|0); - if ($108) { - $109 = HEAP32[$zIn>>2]|0; - $110 = HEAP32[$i>>2]|0; - $111 = HEAP32[$azChar>>2]|0; - $112 = (($111) + ($110<<2)|0); - $113 = HEAP32[$112>>2]|0; - $114 = HEAP32[$len>>2]|0; - $115 = (_memcmp($109,$113,$114)|0); - $116 = ($115|0)==(0); - if ($116) { - break; - } - } - $117 = HEAP32[$i>>2]|0; - $118 = (($117) + 1)|0; - HEAP32[$i>>2] = $118; - } - $119 = HEAP32[$i>>2]|0; - $120 = HEAP32[$nChar>>2]|0; - $121 = ($119|0)>=($120|0); - if ($121) { - break L37; - } - $122 = HEAP32[$len>>2]|0; - $123 = HEAP32[$zIn>>2]|0; - $124 = (($123) + ($122)|0); - HEAP32[$zIn>>2] = $124; - $125 = HEAP32[$len>>2]|0; - $126 = HEAP32[$nIn>>2]|0; - $127 = (($126) - ($125))|0; - HEAP32[$nIn>>2] = $127; - } - } - } while(0); - $128 = HEAP32[$flags>>2]|0; - $129 = $128 & 2; - $130 = ($129|0)!=(0); - L50: do { - if ($130) { - while(1) { - $131 = HEAP32[$nIn>>2]|0; - $132 = ($131|0)>(0); - if (!($132)) { - break L50; - } - HEAP32[$len1>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $133 = HEAP32[$i>>2]|0; - $134 = HEAP32[$nChar>>2]|0; - $135 = ($133|0)<($134|0); - if (!($135)) { - break; - } - $136 = HEAP32[$i>>2]|0; - $137 = HEAP32[$aLen>>2]|0; - $138 = (($137) + ($136)|0); - $139 = HEAP8[$138>>0]|0; - $140 = $139&255; - HEAP32[$len1>>2] = $140; - $141 = HEAP32[$len1>>2]|0; - $142 = HEAP32[$nIn>>2]|0; - $143 = ($141|0)<=($142|0); - if ($143) { - $144 = HEAP32[$nIn>>2]|0; - $145 = HEAP32[$len1>>2]|0; - $146 = (($144) - ($145))|0; - $147 = HEAP32[$zIn>>2]|0; - $148 = (($147) + ($146)|0); - $149 = HEAP32[$i>>2]|0; - $150 = HEAP32[$azChar>>2]|0; - $151 = (($150) + ($149<<2)|0); - $152 = HEAP32[$151>>2]|0; - $153 = HEAP32[$len1>>2]|0; - $154 = (_memcmp($148,$152,$153)|0); - $155 = ($154|0)==(0); - if ($155) { - break; - } - } - $156 = HEAP32[$i>>2]|0; - $157 = (($156) + 1)|0; - HEAP32[$i>>2] = $157; - } - $158 = HEAP32[$i>>2]|0; - $159 = HEAP32[$nChar>>2]|0; - $160 = ($158|0)>=($159|0); - if ($160) { - break L50; - } - $161 = HEAP32[$len1>>2]|0; - $162 = HEAP32[$nIn>>2]|0; - $163 = (($162) - ($161))|0; - HEAP32[$nIn>>2] = $163; - } - } - } while(0); - $164 = HEAP32[$zCharSet>>2]|0; - $165 = ($164|0)!=(0|0); - if ($165) { - $166 = HEAP32[$azChar>>2]|0; - _sqlite3_free($166); - } - } - $167 = HEAP32[$0>>2]|0; - $168 = HEAP32[$zIn>>2]|0; - $169 = HEAP32[$nIn>>2]|0; - _sqlite3_result_text($167,$168,$169,(-1)); - STACKTOP = sp;return; -} -function _minmaxFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $i = 0, $iBest = 0, $mask = 0, $pColl = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $i = sp + 12|0; - $mask = sp + 8|0; - $iBest = sp + 4|0; - $pColl = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3_user_data($3)|0); - $5 = ($4|0)==(0|0); - $6 = $5 ? 0 : -1; - HEAP32[$mask>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = (_sqlite3GetFuncCollSeq($7)|0); - HEAP32[$pColl>>2] = $8; - HEAP32[$iBest>>2] = 0; - $9 = HEAP32[$2>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = (_sqlite3_value_type($10)|0); - $12 = ($11|0)==(5); - if ($12) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 1; - while(1) { - $13 = HEAP32[$i>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = ($13|0)<($14|0); - if (!($15)) { - break; - } - $16 = HEAP32[$i>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = (($17) + ($16<<2)|0); - $19 = HEAP32[$18>>2]|0; - $20 = (_sqlite3_value_type($19)|0); - $21 = ($20|0)==(5); - if ($21) { - label = 9; - break; - } - $22 = HEAP32[$iBest>>2]|0; - $23 = HEAP32[$2>>2]|0; - $24 = (($23) + ($22<<2)|0); - $25 = HEAP32[$24>>2]|0; - $26 = HEAP32[$i>>2]|0; - $27 = HEAP32[$2>>2]|0; - $28 = (($27) + ($26<<2)|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$pColl>>2]|0; - $31 = (_sqlite3MemCompare($25,$29,$30)|0); - $32 = HEAP32[$mask>>2]|0; - $33 = $31 ^ $32; - $34 = ($33|0)>=(0); - if ($34) { - $35 = HEAP32[$i>>2]|0; - HEAP32[$iBest>>2] = $35; - } - $36 = HEAP32[$i>>2]|0; - $37 = (($36) + 1)|0; - HEAP32[$i>>2] = $37; - } - if ((label|0) == 9) { - STACKTOP = sp;return; - } - $38 = HEAP32[$0>>2]|0; - $39 = HEAP32[$iBest>>2]|0; - $40 = HEAP32[$2>>2]|0; - $41 = (($40) + ($39<<2)|0); - $42 = HEAP32[$41>>2]|0; - _sqlite3_result_value($38,$42); - STACKTOP = sp;return; -} -function _minmaxStep($context,$NotUsed,$argv) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $cmp = 0, $max = 0, $pArg = 0, $pBest = 0, $pColl = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $pArg = sp + 16|0; - $pBest = sp + 12|0; - $max = sp + 8|0; - $cmp = sp + 4|0; - $pColl = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$pArg>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (_sqlite3_aggregate_context($5,40)|0); - HEAP32[$pBest>>2] = $6; - $7 = HEAP32[$pBest>>2]|0; - $8 = ($7|0)!=(0|0); - if (!($8)) { - STACKTOP = sp;return; - } - $9 = HEAP32[$2>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = (_sqlite3_value_type($10)|0); - $12 = ($11|0)==(5); - $13 = HEAP32[$pBest>>2]|0; - $14 = (($13) + 28|0); - $15 = HEAP16[$14>>1]|0; - $16 = ($15<<16>>16)!=(0); - if ($12) { - if (!($16)) { - STACKTOP = sp;return; - } - $17 = HEAP32[$0>>2]|0; - _sqlite3SkipAccumulatorLoad($17); - STACKTOP = sp;return; - } - if (!($16)) { - $39 = HEAP32[$pBest>>2]|0; - $40 = HEAP32[$pArg>>2]|0; - (_sqlite3VdbeMemCopy($39,$40)|0); - STACKTOP = sp;return; - } - $18 = HEAP32[$0>>2]|0; - $19 = (_sqlite3GetFuncCollSeq($18)|0); - HEAP32[$pColl>>2] = $19; - $20 = HEAP32[$0>>2]|0; - $21 = (_sqlite3_user_data($20)|0); - $22 = ($21|0)!=(0|0); - $23 = $22&1; - HEAP32[$max>>2] = $23; - $24 = HEAP32[$pBest>>2]|0; - $25 = HEAP32[$pArg>>2]|0; - $26 = HEAP32[$pColl>>2]|0; - $27 = (_sqlite3MemCompare($24,$25,$26)|0); - HEAP32[$cmp>>2] = $27; - $28 = HEAP32[$max>>2]|0; - $29 = ($28|0)!=(0); - if ($29) { - $30 = HEAP32[$cmp>>2]|0; - $31 = ($30|0)<(0); - if (!($31)) { - label = 8; - } - } else { - label = 8; - } - do { - if ((label|0) == 8) { - $32 = HEAP32[$max>>2]|0; - $33 = ($32|0)!=(0); - if (!($33)) { - $34 = HEAP32[$cmp>>2]|0; - $35 = ($34|0)>(0); - if ($35) { - break; - } - } - $38 = HEAP32[$0>>2]|0; - _sqlite3SkipAccumulatorLoad($38); - STACKTOP = sp;return; - } - } while(0); - $36 = HEAP32[$pBest>>2]|0; - $37 = HEAP32[$pArg>>2]|0; - (_sqlite3VdbeMemCopy($36,$37)|0); - STACKTOP = sp;return; -} -function _minMaxFinalize($context) { - $context = $context|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pRes = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pRes = sp; - HEAP32[$0>>2] = $context; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3_aggregate_context($1,0)|0); - HEAP32[$pRes>>2] = $2; - $3 = HEAP32[$pRes>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$pRes>>2]|0; - $6 = (($5) + 28|0); - $7 = HEAP16[$6>>1]|0; - $8 = ($7<<16>>16)!=(0); - if ($8) { - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$pRes>>2]|0; - _sqlite3_result_value($9,$10); - } - $11 = HEAP32[$pRes>>2]|0; - _sqlite3VdbeMemRelease($11); - STACKTOP = sp;return; -} -function _typeofFunc($context,$NotUsed,$argv) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $z = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $argv; - HEAP32[$z>>2] = 0; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_type($4)|0); - if ((($5|0) == 3)) { - HEAP32[$z>>2] = 9768; - } else if ((($5|0) == 4)) { - HEAP32[$z>>2] = 9784; - } else if ((($5|0) == 2)) { - HEAP32[$z>>2] = 9776; - } else if ((($5|0) == 1)) { - HEAP32[$z>>2] = 9760; - } else { - HEAP32[$z>>2] = 9792; - } - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$z>>2]|0; - _sqlite3_result_text($6,$7,-1,0); - STACKTOP = sp;return; -} -function _lengthFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $len = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $len = sp + 4|0; - $z = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_type($4)|0); - if ((($5|0) == 2) | (($5|0) == 1) | (($5|0) == 4)) { - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3_value_bytes($8)|0); - _sqlite3_result_int($6,$9); - STACKTOP = sp;return; - } else if ((($5|0) == 3)) { - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = (_sqlite3_value_text($11)|0); - HEAP32[$z>>2] = $12; - $13 = HEAP32[$z>>2]|0; - $14 = ($13|0)==(0|0); - if ($14) { - STACKTOP = sp;return; - } - HEAP32[$len>>2] = 0; - L10: while(1) { - $15 = HEAP32[$z>>2]|0; - $16 = HEAP8[$15>>0]|0; - $17 = ($16<<24>>24)!=(0); - if (!($17)) { - break; - } - $18 = HEAP32[$len>>2]|0; - $19 = (($18) + 1)|0; - HEAP32[$len>>2] = $19; - $20 = HEAP32[$z>>2]|0; - $21 = (($20) + 1|0); - HEAP32[$z>>2] = $21; - $22 = HEAP8[$20>>0]|0; - $23 = $22&255; - $24 = ($23|0)>=(192); - if (!($24)) { - continue; - } - while(1) { - $25 = HEAP32[$z>>2]|0; - $26 = HEAP8[$25>>0]|0; - $27 = $26&255; - $28 = $27 & 192; - $29 = ($28|0)==(128); - if (!($29)) { - continue L10; - } - $30 = HEAP32[$z>>2]|0; - $31 = (($30) + 1|0); - HEAP32[$z>>2] = $31; - } - } - $32 = HEAP32[$0>>2]|0; - $33 = HEAP32[$len>>2]|0; - _sqlite3_result_int($32,$33); - STACKTOP = sp;return; - } else { - $34 = HEAP32[$0>>2]|0; - _sqlite3_result_null($34); - STACKTOP = sp;return; - } -} -function _instrFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $N = 0, $isText = 0, $nHaystack = 0, $nNeedle = 0, $typeHaystack = 0, $typeNeedle = 0, $zHaystack = 0, $zNeedle = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $zHaystack = sp + 28|0; - $zNeedle = sp + 24|0; - $nHaystack = sp + 20|0; - $nNeedle = sp + 16|0; - $typeHaystack = sp + 12|0; - $typeNeedle = sp + 8|0; - $N = sp + 4|0; - $isText = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - HEAP32[$N>>2] = 1; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_type($4)|0); - HEAP32[$typeHaystack>>2] = $5; - $6 = HEAP32[$2>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3_value_type($8)|0); - HEAP32[$typeNeedle>>2] = $9; - $10 = HEAP32[$typeHaystack>>2]|0; - $11 = ($10|0)==(5); - if ($11) { - STACKTOP = sp;return; - } - $12 = HEAP32[$typeNeedle>>2]|0; - $13 = ($12|0)==(5); - if ($13) { - STACKTOP = sp;return; - } - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = (_sqlite3_value_bytes($15)|0); - HEAP32[$nHaystack>>2] = $16; - $17 = HEAP32[$2>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - $20 = (_sqlite3_value_bytes($19)|0); - HEAP32[$nNeedle>>2] = $20; - $21 = HEAP32[$typeHaystack>>2]|0; - $22 = ($21|0)==(4); - if ($22) { - $23 = HEAP32[$typeNeedle>>2]|0; - $24 = ($23|0)==(4); - if ($24) { - $25 = HEAP32[$2>>2]|0; - $26 = HEAP32[$25>>2]|0; - $27 = (_sqlite3_value_blob($26)|0); - HEAP32[$zHaystack>>2] = $27; - $28 = HEAP32[$2>>2]|0; - $29 = (($28) + 4|0); - $30 = HEAP32[$29>>2]|0; - $31 = (_sqlite3_value_blob($30)|0); - HEAP32[$zNeedle>>2] = $31; - HEAP32[$isText>>2] = 0; - } else { - label = 6; - } - } else { - label = 6; - } - if ((label|0) == 6) { - $32 = HEAP32[$2>>2]|0; - $33 = HEAP32[$32>>2]|0; - $34 = (_sqlite3_value_text($33)|0); - HEAP32[$zHaystack>>2] = $34; - $35 = HEAP32[$2>>2]|0; - $36 = (($35) + 4|0); - $37 = HEAP32[$36>>2]|0; - $38 = (_sqlite3_value_text($37)|0); - HEAP32[$zNeedle>>2] = $38; - HEAP32[$isText>>2] = 1; - } - L12: while(1) { - $39 = HEAP32[$nNeedle>>2]|0; - $40 = HEAP32[$nHaystack>>2]|0; - $41 = ($39|0)<=($40|0); - if (!($41)) { - break; - } - $42 = HEAP32[$zHaystack>>2]|0; - $43 = HEAP32[$zNeedle>>2]|0; - $44 = HEAP32[$nNeedle>>2]|0; - $45 = (_memcmp($42,$43,$44)|0); - $46 = ($45|0)!=(0); - if (!($46)) { - break; - } - $47 = HEAP32[$N>>2]|0; - $48 = (($47) + 1)|0; - HEAP32[$N>>2] = $48; - while(1) { - $49 = HEAP32[$nHaystack>>2]|0; - $50 = (($49) + -1)|0; - HEAP32[$nHaystack>>2] = $50; - $51 = HEAP32[$zHaystack>>2]|0; - $52 = (($51) + 1|0); - HEAP32[$zHaystack>>2] = $52; - $53 = HEAP32[$isText>>2]|0; - $54 = ($53|0)!=(0); - if (!($54)) { - continue L12; - } - $55 = HEAP32[$zHaystack>>2]|0; - $56 = HEAP8[$55>>0]|0; - $57 = $56&255; - $58 = $57 & 192; - $59 = ($58|0)==(128); - if (!($59)) { - continue L12; - } - } - } - $60 = HEAP32[$nNeedle>>2]|0; - $61 = HEAP32[$nHaystack>>2]|0; - $62 = ($60|0)>($61|0); - if ($62) { - HEAP32[$N>>2] = 0; - } - $63 = HEAP32[$0>>2]|0; - $64 = HEAP32[$N>>2]|0; - _sqlite3_result_int($63,$64); - STACKTOP = sp;return; -} -function _substrFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; - var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; - var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; - var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $len = 0, $negP2 = 0, $p0type = 0, $p1 = 0, $p2 = 0; - var $z = 0, $z2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $z = sp + 32|0; - $z2 = sp + 28|0; - $len = sp + 24|0; - $p0type = sp + 20|0; - $p1 = sp + 8|0; - $p2 = sp; - $negP2 = sp + 16|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - HEAP32[$negP2>>2] = 0; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 4|0); - $5 = HEAP32[$4>>2]|0; - $6 = (_sqlite3_value_type($5)|0); - $7 = ($6|0)==(5); - if ($7) { - STACKTOP = sp;return; - } - $8 = HEAP32[$1>>2]|0; - $9 = ($8|0)==(3); - if ($9) { - $10 = HEAP32[$2>>2]|0; - $11 = (($10) + 8|0); - $12 = HEAP32[$11>>2]|0; - $13 = (_sqlite3_value_type($12)|0); - $14 = ($13|0)==(5); - if ($14) { - STACKTOP = sp;return; - } - } - $15 = HEAP32[$2>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = (_sqlite3_value_type($16)|0); - HEAP32[$p0type>>2] = $17; - $18 = HEAP32[$2>>2]|0; - $19 = (($18) + 4|0); - $20 = HEAP32[$19>>2]|0; - $21 = (_sqlite3_value_int($20)|0); - $22 = ($21|0)<(0); - $23 = $22 << 31 >> 31; - $24 = $p1; - $25 = $24; - HEAP32[$25>>2] = $21; - $26 = (($24) + 4)|0; - $27 = $26; - HEAP32[$27>>2] = $23; - $28 = HEAP32[$p0type>>2]|0; - $29 = ($28|0)==(4); - $30 = HEAP32[$2>>2]|0; - $31 = HEAP32[$30>>2]|0; - L8: do { - if ($29) { - $32 = (_sqlite3_value_bytes($31)|0); - HEAP32[$len>>2] = $32; - $33 = HEAP32[$2>>2]|0; - $34 = HEAP32[$33>>2]|0; - $35 = (_sqlite3_value_blob($34)|0); - HEAP32[$z>>2] = $35; - $36 = HEAP32[$z>>2]|0; - $37 = ($36|0)==(0|0); - if ($37) { - STACKTOP = sp;return; - } - } else { - $38 = (_sqlite3_value_text($31)|0); - HEAP32[$z>>2] = $38; - $39 = HEAP32[$z>>2]|0; - $40 = ($39|0)==(0|0); - if ($40) { - STACKTOP = sp;return; - } - HEAP32[$len>>2] = 0; - $41 = $p1; - $42 = $41; - $43 = HEAP32[$42>>2]|0; - $44 = (($41) + 4)|0; - $45 = $44; - $46 = HEAP32[$45>>2]|0; - $47 = ($46|0)<(0); - if ($47) { - $48 = HEAP32[$z>>2]|0; - HEAP32[$z2>>2] = $48; - while(1) { - $49 = HEAP32[$z2>>2]|0; - $50 = HEAP8[$49>>0]|0; - $51 = ($50<<24>>24)!=(0); - if (!($51)) { - break L8; - } - $52 = HEAP32[$z2>>2]|0; - $53 = (($52) + 1|0); - HEAP32[$z2>>2] = $53; - $54 = HEAP8[$52>>0]|0; - $55 = $54&255; - $56 = ($55|0)>=(192); - L17: do { - if ($56) { - while(1) { - $57 = HEAP32[$z2>>2]|0; - $58 = HEAP8[$57>>0]|0; - $59 = $58&255; - $60 = $59 & 192; - $61 = ($60|0)==(128); - if (!($61)) { - break L17; - } - $62 = HEAP32[$z2>>2]|0; - $63 = (($62) + 1|0); - HEAP32[$z2>>2] = $63; - } - } - } while(0); - $64 = HEAP32[$len>>2]|0; - $65 = (($64) + 1)|0; - HEAP32[$len>>2] = $65; - } - } - } - } while(0); - $66 = HEAP32[$1>>2]|0; - $67 = ($66|0)==(3); - if ($67) { - $68 = HEAP32[$2>>2]|0; - $69 = (($68) + 8|0); - $70 = HEAP32[$69>>2]|0; - $71 = (_sqlite3_value_int($70)|0); - $72 = ($71|0)<(0); - $73 = $72 << 31 >> 31; - $74 = $p2; - $75 = $74; - HEAP32[$75>>2] = $71; - $76 = (($74) + 4)|0; - $77 = $76; - HEAP32[$77>>2] = $73; - $78 = $p2; - $79 = $78; - $80 = HEAP32[$79>>2]|0; - $81 = (($78) + 4)|0; - $82 = $81; - $83 = HEAP32[$82>>2]|0; - $84 = ($83|0)<(0); - if ($84) { - $85 = $p2; - $86 = $85; - $87 = HEAP32[$86>>2]|0; - $88 = (($85) + 4)|0; - $89 = $88; - $90 = HEAP32[$89>>2]|0; - $91 = (_i64Subtract(0,0,($87|0),($90|0))|0); - $92 = tempRet0; - $93 = $p2; - $94 = $93; - HEAP32[$94>>2] = $91; - $95 = (($93) + 4)|0; - $96 = $95; - HEAP32[$96>>2] = $92; - HEAP32[$negP2>>2] = 1; - } - } else { - $97 = HEAP32[$0>>2]|0; - $98 = (_sqlite3_context_db_handle($97)|0); - $99 = (($98) + 88|0); - $100 = HEAP32[$99>>2]|0; - $101 = ($100|0)<(0); - $102 = $101 << 31 >> 31; - $103 = $p2; - $104 = $103; - HEAP32[$104>>2] = $100; - $105 = (($103) + 4)|0; - $106 = $105; - HEAP32[$106>>2] = $102; - } - $107 = $p1; - $108 = $107; - $109 = HEAP32[$108>>2]|0; - $110 = (($107) + 4)|0; - $111 = $110; - $112 = HEAP32[$111>>2]|0; - $113 = ($112|0)<(0); - do { - if ($113) { - $114 = HEAP32[$len>>2]|0; - $115 = ($114|0)<(0); - $116 = $115 << 31 >> 31; - $117 = $p1; - $118 = $117; - $119 = HEAP32[$118>>2]|0; - $120 = (($117) + 4)|0; - $121 = $120; - $122 = HEAP32[$121>>2]|0; - $123 = (_i64Add(($119|0),($122|0),($114|0),($116|0))|0); - $124 = tempRet0; - $125 = $p1; - $126 = $125; - HEAP32[$126>>2] = $123; - $127 = (($125) + 4)|0; - $128 = $127; - HEAP32[$128>>2] = $124; - $129 = $p1; - $130 = $129; - $131 = HEAP32[$130>>2]|0; - $132 = (($129) + 4)|0; - $133 = $132; - $134 = HEAP32[$133>>2]|0; - $135 = ($134|0)<(0); - if ($135) { - $136 = $p1; - $137 = $136; - $138 = HEAP32[$137>>2]|0; - $139 = (($136) + 4)|0; - $140 = $139; - $141 = HEAP32[$140>>2]|0; - $142 = $p2; - $143 = $142; - $144 = HEAP32[$143>>2]|0; - $145 = (($142) + 4)|0; - $146 = $145; - $147 = HEAP32[$146>>2]|0; - $148 = (_i64Add(($144|0),($147|0),($138|0),($141|0))|0); - $149 = tempRet0; - $150 = $p2; - $151 = $150; - HEAP32[$151>>2] = $148; - $152 = (($150) + 4)|0; - $153 = $152; - HEAP32[$153>>2] = $149; - $154 = $p2; - $155 = $154; - $156 = HEAP32[$155>>2]|0; - $157 = (($154) + 4)|0; - $158 = $157; - $159 = HEAP32[$158>>2]|0; - $160 = ($159|0)<(0); - $161 = $160 ? 0 : $148; - $162 = $160 ? 0 : $149; - $163 = $p2; - $164 = $163; - HEAP32[$164>>2] = $161; - $165 = (($163) + 4)|0; - $166 = $165; - HEAP32[$166>>2] = $162; - $167 = $p1; - $168 = $167; - HEAP32[$168>>2] = 0; - $169 = (($167) + 4)|0; - $170 = $169; - HEAP32[$170>>2] = 0; - } - } else { - $171 = $p1; - $172 = $171; - $173 = HEAP32[$172>>2]|0; - $174 = (($171) + 4)|0; - $175 = $174; - $176 = HEAP32[$175>>2]|0; - $177 = ($176|0)>(0); - $178 = ($176|0)==(0); - $179 = ($173>>>0)>(0); - $180 = $178 & $179; - $181 = $177 | $180; - if ($181) { - $182 = $p1; - $183 = $182; - $184 = HEAP32[$183>>2]|0; - $185 = (($182) + 4)|0; - $186 = $185; - $187 = HEAP32[$186>>2]|0; - $188 = (_i64Add(($184|0),($187|0),-1,-1)|0); - $189 = tempRet0; - $190 = $p1; - $191 = $190; - HEAP32[$191>>2] = $188; - $192 = (($190) + 4)|0; - $193 = $192; - HEAP32[$193>>2] = $189; - break; - } - $194 = $p2; - $195 = $194; - $196 = HEAP32[$195>>2]|0; - $197 = (($194) + 4)|0; - $198 = $197; - $199 = HEAP32[$198>>2]|0; - $200 = ($199|0)>(0); - $201 = ($199|0)==(0); - $202 = ($196>>>0)>(0); - $203 = $201 & $202; - $204 = $200 | $203; - if ($204) { - $205 = $p2; - $206 = $205; - $207 = HEAP32[$206>>2]|0; - $208 = (($205) + 4)|0; - $209 = $208; - $210 = HEAP32[$209>>2]|0; - $211 = (_i64Add(($207|0),($210|0),-1,-1)|0); - $212 = tempRet0; - $213 = $p2; - $214 = $213; - HEAP32[$214>>2] = $211; - $215 = (($213) + 4)|0; - $216 = $215; - HEAP32[$216>>2] = $212; - } - } - } while(0); - $217 = HEAP32[$negP2>>2]|0; - $218 = ($217|0)!=(0); - if ($218) { - $219 = $p2; - $220 = $219; - $221 = HEAP32[$220>>2]|0; - $222 = (($219) + 4)|0; - $223 = $222; - $224 = HEAP32[$223>>2]|0; - $225 = $p1; - $226 = $225; - $227 = HEAP32[$226>>2]|0; - $228 = (($225) + 4)|0; - $229 = $228; - $230 = HEAP32[$229>>2]|0; - $231 = (_i64Subtract(($227|0),($230|0),($221|0),($224|0))|0); - $232 = tempRet0; - $233 = $p1; - $234 = $233; - HEAP32[$234>>2] = $231; - $235 = (($233) + 4)|0; - $236 = $235; - HEAP32[$236>>2] = $232; - $237 = $p1; - $238 = $237; - $239 = HEAP32[$238>>2]|0; - $240 = (($237) + 4)|0; - $241 = $240; - $242 = HEAP32[$241>>2]|0; - $243 = ($242|0)<(0); - if ($243) { - $244 = $p1; - $245 = $244; - $246 = HEAP32[$245>>2]|0; - $247 = (($244) + 4)|0; - $248 = $247; - $249 = HEAP32[$248>>2]|0; - $250 = $p2; - $251 = $250; - $252 = HEAP32[$251>>2]|0; - $253 = (($250) + 4)|0; - $254 = $253; - $255 = HEAP32[$254>>2]|0; - $256 = (_i64Add(($252|0),($255|0),($246|0),($249|0))|0); - $257 = tempRet0; - $258 = $p2; - $259 = $258; - HEAP32[$259>>2] = $256; - $260 = (($258) + 4)|0; - $261 = $260; - HEAP32[$261>>2] = $257; - $262 = $p1; - $263 = $262; - HEAP32[$263>>2] = 0; - $264 = (($262) + 4)|0; - $265 = $264; - HEAP32[$265>>2] = 0; - } - } - $266 = HEAP32[$p0type>>2]|0; - $267 = ($266|0)!=(4); - if (!($267)) { - $349 = $p1; - $350 = $349; - $351 = HEAP32[$350>>2]|0; - $352 = (($349) + 4)|0; - $353 = $352; - $354 = HEAP32[$353>>2]|0; - $355 = $p2; - $356 = $355; - $357 = HEAP32[$356>>2]|0; - $358 = (($355) + 4)|0; - $359 = $358; - $360 = HEAP32[$359>>2]|0; - $361 = (_i64Add(($351|0),($354|0),($357|0),($360|0))|0); - $362 = tempRet0; - $363 = HEAP32[$len>>2]|0; - $364 = ($363|0)<(0); - $365 = $364 << 31 >> 31; - $366 = ($362|0)>($365|0); - $367 = ($362|0)==($365|0); - $368 = ($361>>>0)>($363>>>0); - $369 = $367 & $368; - $370 = $366 | $369; - if ($370) { - $371 = HEAP32[$len>>2]|0; - $372 = ($371|0)<(0); - $373 = $372 << 31 >> 31; - $374 = $p1; - $375 = $374; - $376 = HEAP32[$375>>2]|0; - $377 = (($374) + 4)|0; - $378 = $377; - $379 = HEAP32[$378>>2]|0; - $380 = (_i64Subtract(($371|0),($373|0),($376|0),($379|0))|0); - $381 = tempRet0; - $382 = $p2; - $383 = $382; - HEAP32[$383>>2] = $380; - $384 = (($382) + 4)|0; - $385 = $384; - HEAP32[$385>>2] = $381; - $386 = $p2; - $387 = $386; - $388 = HEAP32[$387>>2]|0; - $389 = (($386) + 4)|0; - $390 = $389; - $391 = HEAP32[$390>>2]|0; - $392 = ($391|0)<(0); - $393 = $392 ? 0 : $380; - $394 = $392 ? 0 : $381; - $395 = $p2; - $396 = $395; - HEAP32[$396>>2] = $393; - $397 = (($395) + 4)|0; - $398 = $397; - HEAP32[$398>>2] = $394; - } - $399 = HEAP32[$0>>2]|0; - $400 = $p1; - $401 = $400; - $402 = HEAP32[$401>>2]|0; - $403 = (($400) + 4)|0; - $404 = $403; - $405 = HEAP32[$404>>2]|0; - $406 = HEAP32[$z>>2]|0; - $407 = (($406) + ($402)|0); - $408 = $p2; - $409 = $408; - $410 = HEAP32[$409>>2]|0; - $411 = (($408) + 4)|0; - $412 = $411; - $413 = HEAP32[$412>>2]|0; - _sqlite3_result_blob($399,$407,$410,(-1)); - STACKTOP = sp;return; - } - while(1) { - $268 = HEAP32[$z>>2]|0; - $269 = HEAP8[$268>>0]|0; - $270 = $269&255; - $271 = ($270|0)!=(0); - if ($271) { - $272 = $p1; - $273 = $272; - $274 = HEAP32[$273>>2]|0; - $275 = (($272) + 4)|0; - $276 = $275; - $277 = HEAP32[$276>>2]|0; - $278 = ($274|0)!=(0); - $279 = ($277|0)!=(0); - $280 = $278 | $279; - $414 = $280; - } else { - $414 = 0; - } - $281 = HEAP32[$z>>2]|0; - if (!($414)) { - break; - } - $282 = (($281) + 1|0); - HEAP32[$z>>2] = $282; - $283 = HEAP8[$281>>0]|0; - $284 = $283&255; - $285 = ($284|0)>=(192); - L55: do { - if ($285) { - while(1) { - $286 = HEAP32[$z>>2]|0; - $287 = HEAP8[$286>>0]|0; - $288 = $287&255; - $289 = $288 & 192; - $290 = ($289|0)==(128); - if (!($290)) { - break L55; - } - $291 = HEAP32[$z>>2]|0; - $292 = (($291) + 1|0); - HEAP32[$z>>2] = $292; - } - } - } while(0); - $293 = $p1; - $294 = $293; - $295 = HEAP32[$294>>2]|0; - $296 = (($293) + 4)|0; - $297 = $296; - $298 = HEAP32[$297>>2]|0; - $299 = (_i64Add(($295|0),($298|0),-1,-1)|0); - $300 = tempRet0; - $301 = $p1; - $302 = $301; - HEAP32[$302>>2] = $299; - $303 = (($301) + 4)|0; - $304 = $303; - HEAP32[$304>>2] = $300; - } - HEAP32[$z2>>2] = $281; - while(1) { - $305 = HEAP32[$z2>>2]|0; - $306 = HEAP8[$305>>0]|0; - $307 = $306&255; - $308 = ($307|0)!=(0); - if (!($308)) { - break; - } - $309 = $p2; - $310 = $309; - $311 = HEAP32[$310>>2]|0; - $312 = (($309) + 4)|0; - $313 = $312; - $314 = HEAP32[$313>>2]|0; - $315 = ($311|0)!=(0); - $316 = ($314|0)!=(0); - $317 = $315 | $316; - if (!($317)) { - break; - } - $318 = HEAP32[$z2>>2]|0; - $319 = (($318) + 1|0); - HEAP32[$z2>>2] = $319; - $320 = HEAP8[$318>>0]|0; - $321 = $320&255; - $322 = ($321|0)>=(192); - L65: do { - if ($322) { - while(1) { - $323 = HEAP32[$z2>>2]|0; - $324 = HEAP8[$323>>0]|0; - $325 = $324&255; - $326 = $325 & 192; - $327 = ($326|0)==(128); - if (!($327)) { - break L65; - } - $328 = HEAP32[$z2>>2]|0; - $329 = (($328) + 1|0); - HEAP32[$z2>>2] = $329; - } - } - } while(0); - $330 = $p2; - $331 = $330; - $332 = HEAP32[$331>>2]|0; - $333 = (($330) + 4)|0; - $334 = $333; - $335 = HEAP32[$334>>2]|0; - $336 = (_i64Add(($332|0),($335|0),-1,-1)|0); - $337 = tempRet0; - $338 = $p2; - $339 = $338; - HEAP32[$339>>2] = $336; - $340 = (($338) + 4)|0; - $341 = $340; - HEAP32[$341>>2] = $337; - } - $342 = HEAP32[$0>>2]|0; - $343 = HEAP32[$z>>2]|0; - $344 = HEAP32[$z2>>2]|0; - $345 = HEAP32[$z>>2]|0; - $346 = $344; - $347 = $345; - $348 = (($346) - ($347))|0; - _sqlite3_result_text($342,$343,$348,(-1)); - STACKTOP = sp;return; -} -function _printfFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $n = 0, $str = 0, $vararg_buffer = 0, $x = 0, $zFormat = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer = sp; - $0 = sp + 60|0; - $1 = sp + 56|0; - $2 = sp + 52|0; - $x = sp + 40|0; - $str = sp + 12|0; - $zFormat = sp + 8|0; - $n = sp + 4|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)>=(1); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = (_sqlite3_value_text($6)|0); - HEAP32[$zFormat>>2] = $7; - $8 = ($7|0)!=(0|0); - if (!($8)) { - STACKTOP = sp;return; - } - $9 = HEAP32[$1>>2]|0; - $10 = (($9) - 1)|0; - HEAP32[$x>>2] = $10; - $11 = (($x) + 4|0); - HEAP32[$11>>2] = 0; - $12 = HEAP32[$2>>2]|0; - $13 = (($12) + 4|0); - $14 = (($x) + 8|0); - HEAP32[$14>>2] = $13; - _sqlite3StrAccumInit($str,0,0,1000000000); - $15 = HEAP32[$0>>2]|0; - $16 = (_sqlite3_context_db_handle($15)|0); - HEAP32[$str>>2] = $16; - $17 = HEAP32[$zFormat>>2]|0; - HEAP32[$vararg_buffer>>2] = $x; - _sqlite3XPrintf($str,2,$17,$vararg_buffer); - $18 = (($str) + 12|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$n>>2] = $19; - $20 = HEAP32[$0>>2]|0; - $21 = (_sqlite3StrAccumFinish($str)|0); - $22 = HEAP32[$n>>2]|0; - _sqlite3_result_text($20,$21,$22,16); - STACKTOP = sp;return; -} -function _unicodeFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $z = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_text($4)|0); - HEAP32[$z>>2] = $5; - $6 = HEAP32[$z>>2]|0; - $7 = ($6|0)!=(0|0); - if (!($7)) { - STACKTOP = sp;return; - } - $8 = HEAP32[$z>>2]|0; - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - $11 = ($10|0)!=(0); - if (!($11)) { - STACKTOP = sp;return; - } - $12 = HEAP32[$0>>2]|0; - $13 = (_sqlite3Utf8Read($z)|0); - _sqlite3_result_int($12,$13); - STACKTOP = sp;return; -} -function _charFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; - var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; - var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; - var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; - var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; - var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $i = 0, $or$cond = 0, $x = 0, $z = 0, $zOut = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $z = sp + 20|0; - $zOut = sp + 16|0; - $i = sp + 12|0; - $x = sp; - $c = sp + 8|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$1>>2]|0; - $4 = $3<<2; - $5 = (($4) + 1)|0; - $6 = (_sqlite3_malloc($5)|0); - HEAP32[$z>>2] = $6; - HEAP32[$zOut>>2] = $6; - $7 = HEAP32[$z>>2]|0; - $8 = ($7|0)==(0|0); - if ($8) { - $9 = HEAP32[$0>>2]|0; - _sqlite3_result_error_nomem($9); - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $10 = HEAP32[$i>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = ($10|0)<($11|0); - if (!($12)) { - break; - } - $13 = HEAP32[$i>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = (($14) + ($13<<2)|0); - $16 = HEAP32[$15>>2]|0; - $17 = (_sqlite3_value_int64($16)|0); - $18 = tempRet0; - $19 = $x; - $20 = $19; - HEAP32[$20>>2] = $17; - $21 = (($19) + 4)|0; - $22 = $21; - HEAP32[$22>>2] = $18; - $23 = $x; - $24 = $23; - $25 = HEAP32[$24>>2]|0; - $26 = (($23) + 4)|0; - $27 = $26; - $28 = HEAP32[$27>>2]|0; - $29 = ($28|0)<(0); - $30 = $x; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $33 = (($30) + 4)|0; - $34 = $33; - $35 = HEAP32[$34>>2]|0; - $36 = ($35|0)>(0); - $37 = ($35|0)==(0); - $38 = ($32>>>0)>(1114111); - $39 = $37 & $38; - $40 = $36 | $39; - $or$cond = $29 | $40; - $41 = $or$cond ? 65533 : $17; - $42 = $or$cond ? 0 : $18; - $43 = $x; - $44 = $43; - HEAP32[$44>>2] = $41; - $45 = (($43) + 4)|0; - $46 = $45; - HEAP32[$46>>2] = $42; - $47 = $x; - $48 = $47; - $49 = HEAP32[$48>>2]|0; - $50 = (($47) + 4)|0; - $51 = $50; - $52 = HEAP32[$51>>2]|0; - $53 = $49 & 2097151; - HEAP32[$c>>2] = $53; - $54 = HEAP32[$c>>2]|0; - $55 = ($54>>>0)<(128); - $56 = HEAP32[$c>>2]|0; - do { - if ($55) { - $57 = $56 & 255; - $58 = $57&255; - $59 = HEAP32[$zOut>>2]|0; - $60 = (($59) + 1|0); - HEAP32[$zOut>>2] = $60; - HEAP8[$59>>0] = $58; - } else { - $61 = ($56>>>0)<(2048); - $62 = HEAP32[$c>>2]|0; - if ($61) { - $63 = $62 >>> 6; - $64 = $63 & 31; - $65 = $64&255; - $66 = $65&255; - $67 = (192 + ($66))|0; - $68 = $67&255; - $69 = HEAP32[$zOut>>2]|0; - $70 = (($69) + 1|0); - HEAP32[$zOut>>2] = $70; - HEAP8[$69>>0] = $68; - $71 = HEAP32[$c>>2]|0; - $72 = $71 & 63; - $73 = $72&255; - $74 = $73&255; - $75 = (128 + ($74))|0; - $76 = $75&255; - $77 = HEAP32[$zOut>>2]|0; - $78 = (($77) + 1|0); - HEAP32[$zOut>>2] = $78; - HEAP8[$77>>0] = $76; - break; - } - $79 = ($62>>>0)<(65536); - $80 = HEAP32[$c>>2]|0; - if ($79) { - $81 = $80 >>> 12; - $82 = $81 & 15; - $83 = $82&255; - $84 = $83&255; - $85 = (224 + ($84))|0; - $86 = $85&255; - $87 = HEAP32[$zOut>>2]|0; - $88 = (($87) + 1|0); - HEAP32[$zOut>>2] = $88; - HEAP8[$87>>0] = $86; - $89 = HEAP32[$c>>2]|0; - $90 = $89 >>> 6; - $91 = $90 & 63; - $92 = $91&255; - $93 = $92&255; - $94 = (128 + ($93))|0; - $95 = $94&255; - $96 = HEAP32[$zOut>>2]|0; - $97 = (($96) + 1|0); - HEAP32[$zOut>>2] = $97; - HEAP8[$96>>0] = $95; - $98 = HEAP32[$c>>2]|0; - $99 = $98 & 63; - $100 = $99&255; - $101 = $100&255; - $102 = (128 + ($101))|0; - $103 = $102&255; - $104 = HEAP32[$zOut>>2]|0; - $105 = (($104) + 1|0); - HEAP32[$zOut>>2] = $105; - HEAP8[$104>>0] = $103; - break; - } else { - $106 = $80 >>> 18; - $107 = $106 & 7; - $108 = $107&255; - $109 = $108&255; - $110 = (240 + ($109))|0; - $111 = $110&255; - $112 = HEAP32[$zOut>>2]|0; - $113 = (($112) + 1|0); - HEAP32[$zOut>>2] = $113; - HEAP8[$112>>0] = $111; - $114 = HEAP32[$c>>2]|0; - $115 = $114 >>> 12; - $116 = $115 & 63; - $117 = $116&255; - $118 = $117&255; - $119 = (128 + ($118))|0; - $120 = $119&255; - $121 = HEAP32[$zOut>>2]|0; - $122 = (($121) + 1|0); - HEAP32[$zOut>>2] = $122; - HEAP8[$121>>0] = $120; - $123 = HEAP32[$c>>2]|0; - $124 = $123 >>> 6; - $125 = $124 & 63; - $126 = $125&255; - $127 = $126&255; - $128 = (128 + ($127))|0; - $129 = $128&255; - $130 = HEAP32[$zOut>>2]|0; - $131 = (($130) + 1|0); - HEAP32[$zOut>>2] = $131; - HEAP8[$130>>0] = $129; - $132 = HEAP32[$c>>2]|0; - $133 = $132 & 63; - $134 = $133&255; - $135 = $134&255; - $136 = (128 + ($135))|0; - $137 = $136&255; - $138 = HEAP32[$zOut>>2]|0; - $139 = (($138) + 1|0); - HEAP32[$zOut>>2] = $139; - HEAP8[$138>>0] = $137; - break; - } - } - } while(0); - $140 = HEAP32[$i>>2]|0; - $141 = (($140) + 1)|0; - HEAP32[$i>>2] = $141; - } - $142 = HEAP32[$0>>2]|0; - $143 = HEAP32[$z>>2]|0; - $144 = HEAP32[$zOut>>2]|0; - $145 = HEAP32[$z>>2]|0; - $146 = $144; - $147 = $145; - $148 = (($146) - ($147))|0; - _sqlite3_result_text($142,$143,$148,13); - STACKTOP = sp;return; -} -function _absFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0.0, $54 = 0.0, $55 = 0, $56 = 0.0, $57 = 0.0, $58 = 0, $59 = 0.0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $iVal = 0, $rVal = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $iVal = sp + 8|0; - $rVal = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_type($4)|0); - if ((($5|0) == 5)) { - $50 = HEAP32[$0>>2]|0; - _sqlite3_result_null($50); - STACKTOP = sp;return; - } else if ((($5|0) == 1)) { - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = (_sqlite3_value_int64($7)|0); - $9 = tempRet0; - $10 = $iVal; - $11 = $10; - HEAP32[$11>>2] = $8; - $12 = (($10) + 4)|0; - $13 = $12; - HEAP32[$13>>2] = $9; - $14 = $iVal; - $15 = $14; - $16 = HEAP32[$15>>2]|0; - $17 = (($14) + 4)|0; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = ($19|0)<(0); - do { - if ($20) { - $21 = $iVal; - $22 = $21; - $23 = HEAP32[$22>>2]|0; - $24 = (($21) + 4)|0; - $25 = $24; - $26 = HEAP32[$25>>2]|0; - $27 = ($23|0)==(0); - $28 = ($26|0)==(-2147483648); - $29 = $27 & $28; - if (!($29)) { - $31 = $iVal; - $32 = $31; - $33 = HEAP32[$32>>2]|0; - $34 = (($31) + 4)|0; - $35 = $34; - $36 = HEAP32[$35>>2]|0; - $37 = (_i64Subtract(0,0,($33|0),($36|0))|0); - $38 = tempRet0; - $39 = $iVal; - $40 = $39; - HEAP32[$40>>2] = $37; - $41 = (($39) + 4)|0; - $42 = $41; - HEAP32[$42>>2] = $38; - break; - } - $30 = HEAP32[$0>>2]|0; - _sqlite3_result_error($30,9688,-1); - STACKTOP = sp;return; - } - } while(0); - $43 = HEAP32[$0>>2]|0; - $44 = $iVal; - $45 = $44; - $46 = HEAP32[$45>>2]|0; - $47 = (($44) + 4)|0; - $48 = $47; - $49 = HEAP32[$48>>2]|0; - _sqlite3_result_int64($43,$46,$49); - STACKTOP = sp;return; - } else { - $51 = HEAP32[$2>>2]|0; - $52 = HEAP32[$51>>2]|0; - $53 = (+_sqlite3_value_double($52)); - HEAPF64[$rVal>>3] = $53; - $54 = +HEAPF64[$rVal>>3]; - $55 = $54 < 0.0; - if ($55) { - $56 = +HEAPF64[$rVal>>3]; - $57 = -$56; - HEAPF64[$rVal>>3] = $57; - } - $58 = HEAP32[$0>>2]|0; - $59 = +HEAPF64[$rVal>>3]; - _sqlite3_result_double($58,$59); - STACKTOP = sp;return; - } -} -function _roundFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $$ = 0, $$$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0.0; - var $25 = 0, $26 = 0, $27 = 0.0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0.0, $33 = 0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0, $38 = 0.0, $39 = 0, $4 = 0, $40 = 0.0, $41 = 0.0, $42 = 0; - var $43 = 0.0, $44 = 0.0, $45 = 0.0, $46 = 0, $47 = 0, $48 = 0.0, $49 = 0.0, $5 = 0, $50 = 0, $51 = 0.0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; - var $61 = 0.0, $7 = 0, $8 = 0, $9 = 0, $n = 0, $or$cond = 0, $r = 0, $vararg_buffer = 0, $vararg_ptr2 = 0, $zBuf = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp + 8|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $n = sp + 24|0; - $r = sp; - $zBuf = sp + 20|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - HEAP32[$n>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)==(2); - do { - if ($4) { - $5 = HEAP32[$2>>2]|0; - $6 = (($5) + 4|0); - $7 = HEAP32[$6>>2]|0; - $8 = (_sqlite3_value_type($7)|0); - $9 = (5)==($8|0); - if ($9) { - STACKTOP = sp;return; - } else { - $10 = HEAP32[$2>>2]|0; - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - $13 = (_sqlite3_value_int($12)|0); - HEAP32[$n>>2] = $13; - $14 = HEAP32[$n>>2]|0; - $15 = ($14|0)>(30); - $$ = $15 ? 30 : $13; - HEAP32[$n>>2] = $$; - $16 = HEAP32[$n>>2]|0; - $17 = ($16|0)<(0); - $$$ = $17 ? 0 : $$; - HEAP32[$n>>2] = $$$; - break; - } - } - } while(0); - $18 = HEAP32[$2>>2]|0; - $19 = HEAP32[$18>>2]|0; - $20 = (_sqlite3_value_type($19)|0); - $21 = ($20|0)==(5); - if ($21) { - STACKTOP = sp;return; - } - $22 = HEAP32[$2>>2]|0; - $23 = HEAP32[$22>>2]|0; - $24 = (+_sqlite3_value_double($23)); - HEAPF64[$r>>3] = $24; - $25 = HEAP32[$n>>2]|0; - $26 = ($25|0)==(0); - if ($26) { - $27 = +HEAPF64[$r>>3]; - $28 = $27 >= 0.0; - $29 = +HEAPF64[$r>>3]; - $30 = $29 < 9223372036854775808.0; - $or$cond = $28 & $30; - if ($or$cond) { - $31 = +HEAPF64[$r>>3]; - $32 = $31 + 0.5; - $33 = (~~$32)>>>0; - $34 = +Math_abs($32) >= 1.0 ? $32 > 0.0 ? (Math_min(+Math_floor($32 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($32 - +(~~$32 >>> 0)) / 4294967296.0) >>> 0 : 0; - $35 = (+($33>>>0)) + (4294967296.0*(+($34|0))); - HEAPF64[$r>>3] = $35; - } else { - label = 8; - } - } else { - label = 8; - } - do { - if ((label|0) == 8) { - $36 = HEAP32[$n>>2]|0; - $37 = ($36|0)==(0); - if ($37) { - $38 = +HEAPF64[$r>>3]; - $39 = $38 < 0.0; - if ($39) { - $40 = +HEAPF64[$r>>3]; - $41 = -$40; - $42 = $41 < 9223372036854775808.0; - if ($42) { - $43 = +HEAPF64[$r>>3]; - $44 = -$43; - $45 = $44 + 0.5; - $46 = (~~$45)>>>0; - $47 = +Math_abs($45) >= 1.0 ? $45 > 0.0 ? (Math_min(+Math_floor($45 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($45 - +(~~$45 >>> 0)) / 4294967296.0) >>> 0 : 0; - $48 = (+($46>>>0)) + (4294967296.0*(+($47|0))); - $49 = -$48; - HEAPF64[$r>>3] = $49; - break; - } - } - } - $50 = HEAP32[$n>>2]|0; - $51 = +HEAPF64[$r>>3]; - HEAP32[$vararg_buffer>>2] = $50; - $vararg_ptr2 = (($vararg_buffer) + 4|0); - HEAPF64[tempDoublePtr>>3]=$51;HEAP32[$vararg_ptr2>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_ptr2+4>>2]=HEAP32[tempDoublePtr+4>>2]; - $52 = (_sqlite3_mprintf(9752,$vararg_buffer)|0); - HEAP32[$zBuf>>2] = $52; - $53 = HEAP32[$zBuf>>2]|0; - $54 = ($53|0)==(0|0); - if (!($54)) { - $56 = HEAP32[$zBuf>>2]|0; - $57 = HEAP32[$zBuf>>2]|0; - $58 = (_sqlite3Strlen30($57)|0); - (_sqlite3AtoF($56,$r,$58,1)|0); - $59 = HEAP32[$zBuf>>2]|0; - _sqlite3_free($59); - break; - } - $55 = HEAP32[$0>>2]|0; - _sqlite3_result_error_nomem($55); - STACKTOP = sp;return; - } - } while(0); - $60 = HEAP32[$0>>2]|0; - $61 = +HEAPF64[$r>>3]; - _sqlite3_result_double($60,$61); - STACKTOP = sp;return; -} -function _upperFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $n = 0, $z1 = 0, $z2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $z1 = sp + 12|0; - $z2 = sp + 8|0; - $i = sp + 4|0; - $n = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_text($4)|0); - HEAP32[$z2>>2] = $5; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = (_sqlite3_value_bytes($7)|0); - HEAP32[$n>>2] = $8; - $9 = HEAP32[$z2>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - STACKTOP = sp;return; - } - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$n>>2]|0; - $13 = ($12|0)<(0); - $14 = $13 << 31 >> 31; - $15 = (_i64Add(($12|0),($14|0),1,0)|0); - $16 = tempRet0; - $17 = (_contextMalloc($11,$15,$16)|0); - HEAP32[$z1>>2] = $17; - $18 = HEAP32[$z1>>2]|0; - $19 = ($18|0)!=(0|0); - if (!($19)) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $20 = HEAP32[$i>>2]|0; - $21 = HEAP32[$n>>2]|0; - $22 = ($20|0)<($21|0); - if (!($22)) { - break; - } - $23 = HEAP32[$i>>2]|0; - $24 = HEAP32[$z2>>2]|0; - $25 = (($24) + ($23)|0); - $26 = HEAP8[$25>>0]|0; - $27 = $26 << 24 >> 24; - $28 = HEAP32[$i>>2]|0; - $29 = HEAP32[$z2>>2]|0; - $30 = (($29) + ($28)|0); - $31 = HEAP8[$30>>0]|0; - $32 = $31&255; - $33 = (48 + ($32)|0); - $34 = HEAP8[$33>>0]|0; - $35 = $34&255; - $36 = $35 & 32; - $37 = $36 ^ -1; - $38 = $27 & $37; - $39 = $38&255; - $40 = HEAP32[$i>>2]|0; - $41 = HEAP32[$z1>>2]|0; - $42 = (($41) + ($40)|0); - HEAP8[$42>>0] = $39; - $43 = HEAP32[$i>>2]|0; - $44 = (($43) + 1)|0; - HEAP32[$i>>2] = $44; - } - $45 = HEAP32[$0>>2]|0; - $46 = HEAP32[$z1>>2]|0; - $47 = HEAP32[$n>>2]|0; - _sqlite3_result_text($45,$46,$47,13); - STACKTOP = sp;return; -} -function _lowerFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $n = 0; - var $z1 = 0, $z2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $z1 = sp + 12|0; - $z2 = sp + 8|0; - $i = sp + 4|0; - $n = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_text($4)|0); - HEAP32[$z2>>2] = $5; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = (_sqlite3_value_bytes($7)|0); - HEAP32[$n>>2] = $8; - $9 = HEAP32[$z2>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - STACKTOP = sp;return; - } - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$n>>2]|0; - $13 = ($12|0)<(0); - $14 = $13 << 31 >> 31; - $15 = (_i64Add(($12|0),($14|0),1,0)|0); - $16 = tempRet0; - $17 = (_contextMalloc($11,$15,$16)|0); - HEAP32[$z1>>2] = $17; - $18 = HEAP32[$z1>>2]|0; - $19 = ($18|0)!=(0|0); - if (!($19)) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $20 = HEAP32[$i>>2]|0; - $21 = HEAP32[$n>>2]|0; - $22 = ($20|0)<($21|0); - if (!($22)) { - break; - } - $23 = HEAP32[$i>>2]|0; - $24 = HEAP32[$z2>>2]|0; - $25 = (($24) + ($23)|0); - $26 = HEAP8[$25>>0]|0; - $27 = $26&255; - $28 = (696 + ($27)|0); - $29 = HEAP8[$28>>0]|0; - $30 = HEAP32[$i>>2]|0; - $31 = HEAP32[$z1>>2]|0; - $32 = (($31) + ($30)|0); - HEAP8[$32>>0] = $29; - $33 = HEAP32[$i>>2]|0; - $34 = (($33) + 1)|0; - HEAP32[$i>>2] = $34; - } - $35 = HEAP32[$0>>2]|0; - $36 = HEAP32[$z1>>2]|0; - $37 = HEAP32[$n>>2]|0; - _sqlite3_result_text($35,$36,$37,13); - STACKTOP = sp;return; -} -function _versionFunc($context,$NotUsed,$NotUsed2) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $NotUsed2 = $NotUsed2|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $NotUsed2; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3_libversion()|0); - _sqlite3_result_text($3,$4,-1,0); - STACKTOP = sp;return; -} -function _hexFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, $i = 0, $n = 0, $pBlob = 0, $z = 0, $zHex = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $i = sp + 16|0; - $n = sp + 12|0; - $pBlob = sp + 8|0; - $zHex = sp + 4|0; - $z = sp; - $c = sp + 32|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_blob($4)|0); - HEAP32[$pBlob>>2] = $5; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = (_sqlite3_value_bytes($7)|0); - HEAP32[$n>>2] = $8; - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$n>>2]|0; - $11 = ($10|0)<(0); - $12 = $11 << 31 >> 31; - $13 = (___muldi3(($10|0),($12|0),2,0)|0); - $14 = tempRet0; - $15 = (_i64Add(($13|0),($14|0),1,0)|0); - $16 = tempRet0; - $17 = (_contextMalloc($9,$15,$16)|0); - HEAP32[$zHex>>2] = $17; - HEAP32[$z>>2] = $17; - $18 = HEAP32[$zHex>>2]|0; - $19 = ($18|0)!=(0|0); - if (!($19)) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $20 = HEAP32[$i>>2]|0; - $21 = HEAP32[$n>>2]|0; - $22 = ($20|0)<($21|0); - if (!($22)) { - break; - } - $23 = HEAP32[$pBlob>>2]|0; - $24 = HEAP8[$23>>0]|0; - HEAP8[$c>>0] = $24; - $25 = HEAP8[$c>>0]|0; - $26 = $25&255; - $27 = $26 >> 4; - $28 = $27 & 15; - $29 = (9728 + ($28)|0); - $30 = HEAP8[$29>>0]|0; - $31 = HEAP32[$z>>2]|0; - $32 = (($31) + 1|0); - HEAP32[$z>>2] = $32; - HEAP8[$31>>0] = $30; - $33 = HEAP8[$c>>0]|0; - $34 = $33&255; - $35 = $34 & 15; - $36 = (9728 + ($35)|0); - $37 = HEAP8[$36>>0]|0; - $38 = HEAP32[$z>>2]|0; - $39 = (($38) + 1|0); - HEAP32[$z>>2] = $39; - HEAP8[$38>>0] = $37; - $40 = HEAP32[$i>>2]|0; - $41 = (($40) + 1)|0; - HEAP32[$i>>2] = $41; - $42 = HEAP32[$pBlob>>2]|0; - $43 = (($42) + 1|0); - HEAP32[$pBlob>>2] = $43; - } - $44 = HEAP32[$z>>2]|0; - HEAP8[$44>>0] = 0; - $45 = HEAP32[$0>>2]|0; - $46 = HEAP32[$zHex>>2]|0; - $47 = HEAP32[$n>>2]|0; - $48 = $47<<1; - _sqlite3_result_text($45,$46,$48,13); - STACKTOP = sp;return; -} -function _randomFunc($context,$NotUsed,$NotUsed2) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $NotUsed2 = $NotUsed2|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $r = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $NotUsed2; - _sqlite3_randomness(8,$r); - $3 = $r; - $4 = $3; - $5 = HEAP32[$4>>2]|0; - $6 = (($3) + 4)|0; - $7 = $6; - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)<(0); - if ($9) { - $10 = $r; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = (($10) + 4)|0; - $14 = $13; - $15 = HEAP32[$14>>2]|0; - $16 = $15 & 2147483647; - $17 = (_i64Subtract(0,0,($12|0),($16|0))|0); - $18 = tempRet0; - $19 = $r; - $20 = $19; - HEAP32[$20>>2] = $17; - $21 = (($19) + 4)|0; - $22 = $21; - HEAP32[$22>>2] = $18; - } - $23 = HEAP32[$0>>2]|0; - $24 = $r; - $25 = $24; - $26 = HEAP32[$25>>2]|0; - $27 = (($24) + 4)|0; - $28 = $27; - $29 = HEAP32[$28>>2]|0; - _sqlite3_result_int64($23,$26,$29); - STACKTOP = sp;return; -} -function _randomBlob($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $n = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $n = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_int($4)|0); - HEAP32[$n>>2] = $5; - $6 = HEAP32[$n>>2]|0; - $7 = ($6|0)<(1); - $$ = $7 ? 1 : $5; - HEAP32[$n>>2] = $$; - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$n>>2]|0; - $10 = ($9|0)<(0); - $11 = $10 << 31 >> 31; - $12 = (_contextMalloc($8,$9,$11)|0); - HEAP32[$p>>2] = $12; - $13 = HEAP32[$p>>2]|0; - $14 = ($13|0)!=(0|0); - if (!($14)) { - STACKTOP = sp;return; - } - $15 = HEAP32[$n>>2]|0; - $16 = HEAP32[$p>>2]|0; - _sqlite3_randomness($15,$16); - $17 = HEAP32[$0>>2]|0; - $18 = HEAP32[$p>>2]|0; - $19 = HEAP32[$n>>2]|0; - _sqlite3_result_blob($17,$18,$19,13); - STACKTOP = sp;return; -} -function _nullifFunc($context,$NotUsed,$argv) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pColl = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pColl = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3GetFuncCollSeq($3)|0); - HEAP32[$pColl>>2] = $4; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$2>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$pColl>>2]|0; - $11 = (_sqlite3MemCompare($6,$9,$10)|0); - $12 = ($11|0)!=(0); - if (!($12)) { - STACKTOP = sp;return; - } - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$14>>2]|0; - _sqlite3_result_value($13,$15); - STACKTOP = sp;return; -} -function _sourceidFunc($context,$NotUsed,$NotUsed2) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $NotUsed2 = $NotUsed2|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $NotUsed2; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3_sourceid()|0); - _sqlite3_result_text($3,$4,-1,0); - STACKTOP = sp;return; -} -function _errlogFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_int($4)|0); - $6 = HEAP32[$2>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3_value_text($8)|0); - HEAP32[$vararg_buffer>>2] = $9; - _sqlite3_log($5,1456,$vararg_buffer); - STACKTOP = sp;return; -} -function _compileoptionusedFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $zOptName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $zOptName = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_text($4)|0); - HEAP32[$zOptName>>2] = $5; - $6 = ($5|0)!=(0|0); - if (!($6)) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$zOptName>>2]|0; - $9 = (_sqlite3_compileoption_used($8)|0); - _sqlite3_result_int($7,$9); - STACKTOP = sp;return; -} -function _compileoptiongetFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $n = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $n = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_int($4)|0); - HEAP32[$n>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$n>>2]|0; - $8 = (_sqlite3_compileoption_get($7)|0); - _sqlite3_result_text($6,$8,-1,0); - STACKTOP = sp;return; -} -function _quoteFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0.0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0.0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0.0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; - var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; - var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; - var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0.0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; - var $9 = 0.0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $i1 = 0, $j = 0, $n = 0, $nBlob = 0, $r1 = 0, $r2 = 0, $vararg_buffer1 = 0, $z = 0; - var $zArg = 0, $zBlob = 0, $zBuf = 0, $zText = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $vararg_buffer1 = sp + 24|0; - $0 = sp + 72|0; - $1 = sp + 68|0; - $2 = sp + 64|0; - $r1 = sp + 16|0; - $r2 = sp + 8|0; - $zBuf = sp + 76|0; - $zText = sp + 60|0; - $zBlob = sp + 56|0; - $nBlob = sp + 52|0; - $i = sp + 48|0; - $i1 = sp + 44|0; - $j = sp + 40|0; - $n = sp; - $zArg = sp + 36|0; - $z = sp + 32|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_type($4)|0); - if ((($5|0) == 4)) { - HEAP32[$zText>>2] = 0; - $18 = HEAP32[$2>>2]|0; - $19 = HEAP32[$18>>2]|0; - $20 = (_sqlite3_value_blob($19)|0); - HEAP32[$zBlob>>2] = $20; - $21 = HEAP32[$2>>2]|0; - $22 = HEAP32[$21>>2]|0; - $23 = (_sqlite3_value_bytes($22)|0); - HEAP32[$nBlob>>2] = $23; - $24 = HEAP32[$0>>2]|0; - $25 = HEAP32[$nBlob>>2]|0; - $26 = ($25|0)<(0); - $27 = $26 << 31 >> 31; - $28 = (___muldi3(2,0,($25|0),($27|0))|0); - $29 = tempRet0; - $30 = (_i64Add(($28|0),($29|0),4,0)|0); - $31 = tempRet0; - $32 = (_contextMalloc($24,$30,$31)|0); - HEAP32[$zText>>2] = $32; - $33 = HEAP32[$zText>>2]|0; - $34 = ($33|0)!=(0|0); - if (!($34)) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $35 = HEAP32[$i>>2]|0; - $36 = HEAP32[$nBlob>>2]|0; - $37 = ($35|0)<($36|0); - if (!($37)) { - break; - } - $38 = HEAP32[$i>>2]|0; - $39 = HEAP32[$zBlob>>2]|0; - $40 = (($39) + ($38)|0); - $41 = HEAP8[$40>>0]|0; - $42 = $41 << 24 >> 24; - $43 = $42 >> 4; - $44 = $43 & 15; - $45 = (9728 + ($44)|0); - $46 = HEAP8[$45>>0]|0; - $47 = HEAP32[$i>>2]|0; - $48 = $47<<1; - $49 = (($48) + 2)|0; - $50 = HEAP32[$zText>>2]|0; - $51 = (($50) + ($49)|0); - HEAP8[$51>>0] = $46; - $52 = HEAP32[$i>>2]|0; - $53 = HEAP32[$zBlob>>2]|0; - $54 = (($53) + ($52)|0); - $55 = HEAP8[$54>>0]|0; - $56 = $55 << 24 >> 24; - $57 = $56 & 15; - $58 = (9728 + ($57)|0); - $59 = HEAP8[$58>>0]|0; - $60 = HEAP32[$i>>2]|0; - $61 = $60<<1; - $62 = (($61) + 3)|0; - $63 = HEAP32[$zText>>2]|0; - $64 = (($63) + ($62)|0); - HEAP8[$64>>0] = $59; - $65 = HEAP32[$i>>2]|0; - $66 = (($65) + 1)|0; - HEAP32[$i>>2] = $66; - } - $67 = HEAP32[$nBlob>>2]|0; - $68 = $67<<1; - $69 = (($68) + 2)|0; - $70 = HEAP32[$zText>>2]|0; - $71 = (($70) + ($69)|0); - HEAP8[$71>>0] = 39; - $72 = HEAP32[$nBlob>>2]|0; - $73 = $72<<1; - $74 = (($73) + 3)|0; - $75 = HEAP32[$zText>>2]|0; - $76 = (($75) + ($74)|0); - HEAP8[$76>>0] = 0; - $77 = HEAP32[$zText>>2]|0; - HEAP8[$77>>0] = 88; - $78 = HEAP32[$zText>>2]|0; - $79 = (($78) + 1|0); - HEAP8[$79>>0] = 39; - $80 = HEAP32[$0>>2]|0; - $81 = HEAP32[$zText>>2]|0; - _sqlite3_result_text($80,$81,-1,(-1)); - $82 = HEAP32[$zText>>2]|0; - _sqlite3_free($82); - STACKTOP = sp;return; - } else if ((($5|0) == 2)) { - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = (+_sqlite3_value_double($7)); - HEAPF64[$r1>>3] = $8; - $9 = +HEAPF64[$r1>>3]; - HEAPF64[tempDoublePtr>>3]=$9;HEAP32[$vararg_buffer1>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_buffer1+4>>2]=HEAP32[tempDoublePtr+4>>2]; - (_sqlite3_snprintf(50,$zBuf,9712,$vararg_buffer1)|0); - (_sqlite3AtoF($zBuf,$r2,20,1)|0); - $10 = +HEAPF64[$r1>>3]; - $11 = +HEAPF64[$r2>>3]; - $12 = $10 != $11; - if ($12) { - $13 = +HEAPF64[$r1>>3]; - HEAPF64[tempDoublePtr>>3]=$13;HEAP32[$vararg_buffer1>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_buffer1+4>>2]=HEAP32[tempDoublePtr+4>>2]; - (_sqlite3_snprintf(50,$zBuf,9720,$vararg_buffer1)|0); - } - $14 = HEAP32[$0>>2]|0; - _sqlite3_result_text($14,$zBuf,-1,(-1)); - STACKTOP = sp;return; - } else if ((($5|0) == 3)) { - $83 = HEAP32[$2>>2]|0; - $84 = HEAP32[$83>>2]|0; - $85 = (_sqlite3_value_text($84)|0); - HEAP32[$zArg>>2] = $85; - $86 = HEAP32[$zArg>>2]|0; - $87 = ($86|0)==(0|0); - if ($87) { - STACKTOP = sp;return; - } - HEAP32[$i1>>2] = 0; - $88 = $n; - $89 = $88; - HEAP32[$89>>2] = 0; - $90 = (($88) + 4)|0; - $91 = $90; - HEAP32[$91>>2] = 0; - while(1) { - $92 = HEAP32[$i1>>2]|0; - $93 = HEAP32[$zArg>>2]|0; - $94 = (($93) + ($92)|0); - $95 = HEAP8[$94>>0]|0; - $96 = ($95<<24>>24)!=(0); - if (!($96)) { - break; - } - $97 = HEAP32[$i1>>2]|0; - $98 = HEAP32[$zArg>>2]|0; - $99 = (($98) + ($97)|0); - $100 = HEAP8[$99>>0]|0; - $101 = $100&255; - $102 = ($101|0)==(39); - if ($102) { - $103 = $n; - $104 = $103; - $105 = HEAP32[$104>>2]|0; - $106 = (($103) + 4)|0; - $107 = $106; - $108 = HEAP32[$107>>2]|0; - $109 = (_i64Add(($105|0),($108|0),1,0)|0); - $110 = tempRet0; - $111 = $n; - $112 = $111; - HEAP32[$112>>2] = $109; - $113 = (($111) + 4)|0; - $114 = $113; - HEAP32[$114>>2] = $110; - } - $115 = HEAP32[$i1>>2]|0; - $116 = (($115) + 1)|0; - HEAP32[$i1>>2] = $116; - } - $117 = HEAP32[$0>>2]|0; - $118 = HEAP32[$i1>>2]|0; - $119 = ($118|0)<(0); - $120 = $119 << 31 >> 31; - $121 = $n; - $122 = $121; - $123 = HEAP32[$122>>2]|0; - $124 = (($121) + 4)|0; - $125 = $124; - $126 = HEAP32[$125>>2]|0; - $127 = (_i64Add(($118|0),($120|0),($123|0),($126|0))|0); - $128 = tempRet0; - $129 = (_i64Add(($127|0),($128|0),3,0)|0); - $130 = tempRet0; - $131 = (_contextMalloc($117,$129,$130)|0); - HEAP32[$z>>2] = $131; - $132 = HEAP32[$z>>2]|0; - $133 = ($132|0)!=(0|0); - if (!($133)) { - STACKTOP = sp;return; - } - $134 = HEAP32[$z>>2]|0; - HEAP8[$134>>0] = 39; - HEAP32[$i1>>2] = 0; - HEAP32[$j>>2] = 1; - while(1) { - $135 = HEAP32[$i1>>2]|0; - $136 = HEAP32[$zArg>>2]|0; - $137 = (($136) + ($135)|0); - $138 = HEAP8[$137>>0]|0; - $139 = ($138<<24>>24)!=(0); - if (!($139)) { - break; - } - $140 = HEAP32[$i1>>2]|0; - $141 = HEAP32[$zArg>>2]|0; - $142 = (($141) + ($140)|0); - $143 = HEAP8[$142>>0]|0; - $144 = HEAP32[$j>>2]|0; - $145 = (($144) + 1)|0; - HEAP32[$j>>2] = $145; - $146 = HEAP32[$z>>2]|0; - $147 = (($146) + ($144)|0); - HEAP8[$147>>0] = $143; - $148 = HEAP32[$i1>>2]|0; - $149 = HEAP32[$zArg>>2]|0; - $150 = (($149) + ($148)|0); - $151 = HEAP8[$150>>0]|0; - $152 = $151&255; - $153 = ($152|0)==(39); - if ($153) { - $154 = HEAP32[$j>>2]|0; - $155 = (($154) + 1)|0; - HEAP32[$j>>2] = $155; - $156 = HEAP32[$z>>2]|0; - $157 = (($156) + ($154)|0); - HEAP8[$157>>0] = 39; - } - $158 = HEAP32[$i1>>2]|0; - $159 = (($158) + 1)|0; - HEAP32[$i1>>2] = $159; - } - $160 = HEAP32[$j>>2]|0; - $161 = (($160) + 1)|0; - HEAP32[$j>>2] = $161; - $162 = HEAP32[$z>>2]|0; - $163 = (($162) + ($160)|0); - HEAP8[$163>>0] = 39; - $164 = HEAP32[$j>>2]|0; - $165 = HEAP32[$z>>2]|0; - $166 = (($165) + ($164)|0); - HEAP8[$166>>0] = 0; - $167 = HEAP32[$0>>2]|0; - $168 = HEAP32[$z>>2]|0; - $169 = HEAP32[$j>>2]|0; - _sqlite3_result_text($167,$168,$169,13); - STACKTOP = sp;return; - } else if ((($5|0) == 1)) { - $15 = HEAP32[$0>>2]|0; - $16 = HEAP32[$2>>2]|0; - $17 = HEAP32[$16>>2]|0; - _sqlite3_result_value($15,$17); - STACKTOP = sp;return; - } else { - $170 = HEAP32[$0>>2]|0; - _sqlite3_result_text($170,9744,4,0); - STACKTOP = sp;return; - } -} -function _last_insert_rowid($context,$NotUsed,$NotUsed2) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $NotUsed2 = $NotUsed2|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $db = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $NotUsed2; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3_context_db_handle($3)|0); - HEAP32[$db>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$db>>2]|0; - $7 = (_sqlite3_last_insert_rowid($6)|0); - $8 = tempRet0; - _sqlite3_result_int64($5,$7,$8); - STACKTOP = sp;return; -} -function _changes($context,$NotUsed,$NotUsed2) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $NotUsed2 = $NotUsed2|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $db = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $NotUsed2; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3_context_db_handle($3)|0); - HEAP32[$db>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$db>>2]|0; - $7 = (_sqlite3_changes($6)|0); - _sqlite3_result_int($5,$7); - STACKTOP = sp;return; -} -function _total_changes($context,$NotUsed,$NotUsed2) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $NotUsed2 = $NotUsed2|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $db = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $NotUsed2; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3_context_db_handle($3)|0); - HEAP32[$db>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$db>>2]|0; - $7 = (_sqlite3_total_changes($6)|0); - _sqlite3_result_int($5,$7); - STACKTOP = sp;return; -} -function _replaceFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; - var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; - var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; - var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; - var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0, $j = 0, $loopLimit = 0, $nOut = 0, $nPattern = 0, $nRep = 0, $nStr = 0; - var $zOld = 0, $zOut = 0, $zPattern = 0, $zRep = 0, $zStr = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 64|0; - $1 = sp + 60|0; - $2 = sp + 56|0; - $zStr = sp + 52|0; - $zPattern = sp + 48|0; - $zRep = sp + 44|0; - $zOut = sp + 40|0; - $nStr = sp + 36|0; - $nPattern = sp + 32|0; - $nRep = sp + 28|0; - $nOut = sp; - $loopLimit = sp + 24|0; - $i = sp + 20|0; - $j = sp + 16|0; - $zOld = sp + 12|0; - $db = sp + 8|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_text($4)|0); - HEAP32[$zStr>>2] = $5; - $6 = HEAP32[$zStr>>2]|0; - $7 = ($6|0)==(0|0); - if ($7) { - STACKTOP = sp;return; - } - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = (_sqlite3_value_bytes($9)|0); - HEAP32[$nStr>>2] = $10; - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 4|0); - $13 = HEAP32[$12>>2]|0; - $14 = (_sqlite3_value_text($13)|0); - HEAP32[$zPattern>>2] = $14; - $15 = HEAP32[$zPattern>>2]|0; - $16 = ($15|0)==(0|0); - if ($16) { - STACKTOP = sp;return; - } - $17 = HEAP32[$zPattern>>2]|0; - $18 = HEAP8[$17>>0]|0; - $19 = $18&255; - $20 = ($19|0)==(0); - if ($20) { - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$2>>2]|0; - $23 = HEAP32[$22>>2]|0; - _sqlite3_result_value($21,$23); - STACKTOP = sp;return; - } - $24 = HEAP32[$2>>2]|0; - $25 = (($24) + 4|0); - $26 = HEAP32[$25>>2]|0; - $27 = (_sqlite3_value_bytes($26)|0); - HEAP32[$nPattern>>2] = $27; - $28 = HEAP32[$2>>2]|0; - $29 = (($28) + 8|0); - $30 = HEAP32[$29>>2]|0; - $31 = (_sqlite3_value_text($30)|0); - HEAP32[$zRep>>2] = $31; - $32 = HEAP32[$zRep>>2]|0; - $33 = ($32|0)==(0|0); - if ($33) { - STACKTOP = sp;return; - } - $34 = HEAP32[$2>>2]|0; - $35 = (($34) + 8|0); - $36 = HEAP32[$35>>2]|0; - $37 = (_sqlite3_value_bytes($36)|0); - HEAP32[$nRep>>2] = $37; - $38 = HEAP32[$nStr>>2]|0; - $39 = (($38) + 1)|0; - $40 = ($39|0)<(0); - $41 = $40 << 31 >> 31; - $42 = $nOut; - $43 = $42; - HEAP32[$43>>2] = $39; - $44 = (($42) + 4)|0; - $45 = $44; - HEAP32[$45>>2] = $41; - $46 = HEAP32[$0>>2]|0; - $47 = $nOut; - $48 = $47; - $49 = HEAP32[$48>>2]|0; - $50 = (($47) + 4)|0; - $51 = $50; - $52 = HEAP32[$51>>2]|0; - $53 = (_contextMalloc($46,$49,$52)|0); - HEAP32[$zOut>>2] = $53; - $54 = HEAP32[$zOut>>2]|0; - $55 = ($54|0)==(0|0); - if ($55) { - STACKTOP = sp;return; - } - $56 = HEAP32[$nStr>>2]|0; - $57 = HEAP32[$nPattern>>2]|0; - $58 = (($56) - ($57))|0; - HEAP32[$loopLimit>>2] = $58; - HEAP32[$j>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $59 = HEAP32[$i>>2]|0; - $60 = HEAP32[$loopLimit>>2]|0; - $61 = ($59|0)<=($60|0); - if (!($61)) { - label = 18; - break; - } - $62 = HEAP32[$i>>2]|0; - $63 = HEAP32[$zStr>>2]|0; - $64 = (($63) + ($62)|0); - $65 = HEAP8[$64>>0]|0; - $66 = $65&255; - $67 = HEAP32[$zPattern>>2]|0; - $68 = HEAP8[$67>>0]|0; - $69 = $68&255; - $70 = ($66|0)!=($69|0); - if ($70) { - label = 11; - } else { - $71 = HEAP32[$i>>2]|0; - $72 = HEAP32[$zStr>>2]|0; - $73 = (($72) + ($71)|0); - $74 = HEAP32[$zPattern>>2]|0; - $75 = HEAP32[$nPattern>>2]|0; - $76 = (_memcmp($73,$74,$75)|0); - $77 = ($76|0)!=(0); - if ($77) { - label = 11; - } else { - $86 = HEAP32[$0>>2]|0; - $87 = (_sqlite3_context_db_handle($86)|0); - HEAP32[$db>>2] = $87; - $88 = HEAP32[$nRep>>2]|0; - $89 = HEAP32[$nPattern>>2]|0; - $90 = (($88) - ($89))|0; - $91 = ($90|0)<(0); - $92 = $91 << 31 >> 31; - $93 = $nOut; - $94 = $93; - $95 = HEAP32[$94>>2]|0; - $96 = (($93) + 4)|0; - $97 = $96; - $98 = HEAP32[$97>>2]|0; - $99 = (_i64Add(($95|0),($98|0),($90|0),($92|0))|0); - $100 = tempRet0; - $101 = $nOut; - $102 = $101; - HEAP32[$102>>2] = $99; - $103 = (($101) + 4)|0; - $104 = $103; - HEAP32[$104>>2] = $100; - $105 = $nOut; - $106 = $105; - $107 = HEAP32[$106>>2]|0; - $108 = (($105) + 4)|0; - $109 = $108; - $110 = HEAP32[$109>>2]|0; - $111 = (_i64Subtract(($107|0),($110|0),1,0)|0); - $112 = tempRet0; - $113 = HEAP32[$db>>2]|0; - $114 = (($113) + 88|0); - $115 = HEAP32[$114>>2]|0; - $116 = ($115|0)<(0); - $117 = $116 << 31 >> 31; - $118 = ($112|0)>($117|0); - $119 = ($112|0)==($117|0); - $120 = ($111>>>0)>($115>>>0); - $121 = $119 & $120; - $122 = $118 | $121; - if ($122) { - label = 13; - break; - } - $125 = HEAP32[$zOut>>2]|0; - HEAP32[$zOld>>2] = $125; - $126 = HEAP32[$zOut>>2]|0; - $127 = $nOut; - $128 = $127; - $129 = HEAP32[$128>>2]|0; - $130 = (($127) + 4)|0; - $131 = $130; - $132 = HEAP32[$131>>2]|0; - $133 = (_sqlite3_realloc($126,$129)|0); - HEAP32[$zOut>>2] = $133; - $134 = HEAP32[$zOut>>2]|0; - $135 = ($134|0)==(0|0); - if ($135) { - label = 15; - break; - } - $138 = HEAP32[$j>>2]|0; - $139 = HEAP32[$zOut>>2]|0; - $140 = (($139) + ($138)|0); - $141 = HEAP32[$zRep>>2]|0; - $142 = HEAP32[$nRep>>2]|0; - _memcpy(($140|0),($141|0),($142|0))|0; - $143 = HEAP32[$nRep>>2]|0; - $144 = HEAP32[$j>>2]|0; - $145 = (($144) + ($143))|0; - HEAP32[$j>>2] = $145; - $146 = HEAP32[$nPattern>>2]|0; - $147 = (($146) - 1)|0; - $148 = HEAP32[$i>>2]|0; - $149 = (($148) + ($147))|0; - HEAP32[$i>>2] = $149; - } - } - if ((label|0) == 11) { - label = 0; - $78 = HEAP32[$i>>2]|0; - $79 = HEAP32[$zStr>>2]|0; - $80 = (($79) + ($78)|0); - $81 = HEAP8[$80>>0]|0; - $82 = HEAP32[$j>>2]|0; - $83 = (($82) + 1)|0; - HEAP32[$j>>2] = $83; - $84 = HEAP32[$zOut>>2]|0; - $85 = (($84) + ($82)|0); - HEAP8[$85>>0] = $81; - } - $150 = HEAP32[$i>>2]|0; - $151 = (($150) + 1)|0; - HEAP32[$i>>2] = $151; - } - if ((label|0) == 13) { - $123 = HEAP32[$0>>2]|0; - _sqlite3_result_error_toobig($123); - $124 = HEAP32[$zOut>>2]|0; - _sqlite3_free($124); - STACKTOP = sp;return; - } - else if ((label|0) == 15) { - $136 = HEAP32[$0>>2]|0; - _sqlite3_result_error_nomem($136); - $137 = HEAP32[$zOld>>2]|0; - _sqlite3_free($137); - STACKTOP = sp;return; - } - else if ((label|0) == 18) { - $152 = HEAP32[$j>>2]|0; - $153 = HEAP32[$zOut>>2]|0; - $154 = (($153) + ($152)|0); - $155 = HEAP32[$i>>2]|0; - $156 = HEAP32[$zStr>>2]|0; - $157 = (($156) + ($155)|0); - $158 = HEAP32[$nStr>>2]|0; - $159 = HEAP32[$i>>2]|0; - $160 = (($158) - ($159))|0; - _memcpy(($154|0),($157|0),($160|0))|0; - $161 = HEAP32[$nStr>>2]|0; - $162 = HEAP32[$i>>2]|0; - $163 = (($161) - ($162))|0; - $164 = HEAP32[$j>>2]|0; - $165 = (($164) + ($163))|0; - HEAP32[$j>>2] = $165; - $166 = HEAP32[$j>>2]|0; - $167 = HEAP32[$zOut>>2]|0; - $168 = (($167) + ($166)|0); - HEAP8[$168>>0] = 0; - $169 = HEAP32[$0>>2]|0; - $170 = HEAP32[$zOut>>2]|0; - $171 = HEAP32[$j>>2]|0; - _sqlite3_result_text($169,$170,$171,13); - STACKTOP = sp;return; - } -} -function _zeroblobFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $n = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $n = sp; - $db = sp + 8|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3_context_db_handle($3)|0); - HEAP32[$db>>2] = $4; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = (_sqlite3_value_int64($6)|0); - $8 = tempRet0; - $9 = $n; - $10 = $9; - HEAP32[$10>>2] = $7; - $11 = (($9) + 4)|0; - $12 = $11; - HEAP32[$12>>2] = $8; - $13 = $n; - $14 = $13; - $15 = HEAP32[$14>>2]|0; - $16 = (($13) + 4)|0; - $17 = $16; - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$db>>2]|0; - $20 = (($19) + 88|0); - $21 = HEAP32[$20>>2]|0; - $22 = ($21|0)<(0); - $23 = $22 << 31 >> 31; - $24 = ($18|0)>($23|0); - $25 = ($18|0)==($23|0); - $26 = ($15>>>0)>($21>>>0); - $27 = $25 & $26; - $28 = $24 | $27; - $29 = HEAP32[$0>>2]|0; - if ($28) { - _sqlite3_result_error_toobig($29); - STACKTOP = sp;return; - } else { - $30 = $n; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $33 = (($30) + 4)|0; - $34 = $33; - $35 = HEAP32[$34>>2]|0; - _sqlite3_result_zeroblob($29,$32); - STACKTOP = sp;return; - } -} -function _sumStep($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0.0, $43 = 0, $44 = 0.0; - var $45 = 0.0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0.0, $69 = 0, $7 = 0, $70 = 0.0, $71 = 0.0, $72 = 0, $73 = 0, $8 = 0, $9 = 0, $p = 0, $type = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $p = sp + 12|0; - $type = sp + 8|0; - $v = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3_aggregate_context($3,32)|0); - HEAP32[$p>>2] = $4; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = (_sqlite3_value_numeric_type($6)|0); - HEAP32[$type>>2] = $7; - $8 = HEAP32[$p>>2]|0; - $9 = ($8|0)!=(0|0); - if (!($9)) { - STACKTOP = sp;return; - } - $10 = HEAP32[$type>>2]|0; - $11 = ($10|0)!=(5); - if (!($11)) { - STACKTOP = sp;return; - } - $12 = HEAP32[$p>>2]|0; - $13 = (($12) + 16|0); - $14 = $13; - $15 = $14; - $16 = HEAP32[$15>>2]|0; - $17 = (($14) + 4)|0; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = (_i64Add(($16|0),($19|0),1,0)|0); - $21 = tempRet0; - $22 = $13; - $23 = $22; - HEAP32[$23>>2] = $20; - $24 = (($22) + 4)|0; - $25 = $24; - HEAP32[$25>>2] = $21; - $26 = HEAP32[$type>>2]|0; - $27 = ($26|0)==(1); - $28 = HEAP32[$2>>2]|0; - $29 = HEAP32[$28>>2]|0; - if (!($27)) { - $68 = (+_sqlite3_value_double($29)); - $69 = HEAP32[$p>>2]|0; - $70 = +HEAPF64[$69>>3]; - $71 = $70 + $68; - HEAPF64[$69>>3] = $71; - $72 = HEAP32[$p>>2]|0; - $73 = (($72) + 25|0); - HEAP8[$73>>0] = 1; - STACKTOP = sp;return; - } - $30 = (_sqlite3_value_int64($29)|0); - $31 = tempRet0; - $32 = $v; - $33 = $32; - HEAP32[$33>>2] = $30; - $34 = (($32) + 4)|0; - $35 = $34; - HEAP32[$35>>2] = $31; - $36 = $v; - $37 = $36; - $38 = HEAP32[$37>>2]|0; - $39 = (($36) + 4)|0; - $40 = $39; - $41 = HEAP32[$40>>2]|0; - $42 = (+($38>>>0)) + (4294967296.0*(+($41|0))); - $43 = HEAP32[$p>>2]|0; - $44 = +HEAPF64[$43>>3]; - $45 = $44 + $42; - HEAPF64[$43>>3] = $45; - $46 = HEAP32[$p>>2]|0; - $47 = (($46) + 25|0); - $48 = HEAP8[$47>>0]|0; - $49 = $48&255; - $50 = HEAP32[$p>>2]|0; - $51 = (($50) + 24|0); - $52 = HEAP8[$51>>0]|0; - $53 = $52&255; - $54 = $49 | $53; - $55 = ($54|0)==(0); - if (!($55)) { - STACKTOP = sp;return; - } - $56 = HEAP32[$p>>2]|0; - $57 = (($56) + 8|0); - $58 = $v; - $59 = $58; - $60 = HEAP32[$59>>2]|0; - $61 = (($58) + 4)|0; - $62 = $61; - $63 = HEAP32[$62>>2]|0; - $64 = (_sqlite3AddInt64($57,$60,$63)|0); - $65 = ($64|0)!=(0); - if (!($65)) { - STACKTOP = sp;return; - } - $66 = HEAP32[$p>>2]|0; - $67 = (($66) + 24|0); - HEAP8[$67>>0] = 1; - STACKTOP = sp;return; -} -function _sumFinalize($context) { - $context = $context|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $context; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3_aggregate_context($1,0)|0); - HEAP32[$p>>2] = $2; - $3 = HEAP32[$p>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$p>>2]|0; - $6 = (($5) + 16|0); - $7 = $6; - $8 = $7; - $9 = HEAP32[$8>>2]|0; - $10 = (($7) + 4)|0; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)>(0); - $14 = ($12|0)==(0); - $15 = ($9>>>0)>(0); - $16 = $14 & $15; - $17 = $13 | $16; - if (!($17)) { - STACKTOP = sp;return; - } - $18 = HEAP32[$p>>2]|0; - $19 = (($18) + 24|0); - $20 = HEAP8[$19>>0]|0; - $21 = ($20<<24>>24)!=(0); - if ($21) { - $22 = HEAP32[$0>>2]|0; - _sqlite3_result_error($22,9688,-1); - STACKTOP = sp;return; - } - $23 = HEAP32[$p>>2]|0; - $24 = (($23) + 25|0); - $25 = HEAP8[$24>>0]|0; - $26 = ($25<<24>>24)!=(0); - $27 = HEAP32[$0>>2]|0; - $28 = HEAP32[$p>>2]|0; - if ($26) { - $29 = +HEAPF64[$28>>3]; - _sqlite3_result_double($27,$29); - STACKTOP = sp;return; - } else { - $30 = (($28) + 8|0); - $31 = $30; - $32 = $31; - $33 = HEAP32[$32>>2]|0; - $34 = (($31) + 4)|0; - $35 = $34; - $36 = HEAP32[$35>>2]|0; - _sqlite3_result_int64($27,$33,$36); - STACKTOP = sp;return; - } -} -function _totalFinalize($context) { - $context = $context|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0.0, $8 = 0.0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $context; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3_aggregate_context($1,0)|0); - HEAP32[$p>>2] = $2; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$p>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - $8 = 0.0; - _sqlite3_result_double($3,$8); - STACKTOP = sp;return; - } - $6 = HEAP32[$p>>2]|0; - $7 = +HEAPF64[$6>>3]; - $8 = $7; - _sqlite3_result_double($3,$8); - STACKTOP = sp;return; -} -function _avgFinalize($context) { - $context = $context|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0.0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $context; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3_aggregate_context($1,0)|0); - HEAP32[$p>>2] = $2; - $3 = HEAP32[$p>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$p>>2]|0; - $6 = (($5) + 16|0); - $7 = $6; - $8 = $7; - $9 = HEAP32[$8>>2]|0; - $10 = (($7) + 4)|0; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)>(0); - $14 = ($12|0)==(0); - $15 = ($9>>>0)>(0); - $16 = $14 & $15; - $17 = $13 | $16; - if (!($17)) { - STACKTOP = sp;return; - } - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$p>>2]|0; - $20 = +HEAPF64[$19>>3]; - $21 = HEAP32[$p>>2]|0; - $22 = (($21) + 16|0); - $23 = $22; - $24 = $23; - $25 = HEAP32[$24>>2]|0; - $26 = (($23) + 4)|0; - $27 = $26; - $28 = HEAP32[$27>>2]|0; - $29 = (+($25>>>0)) + (4294967296.0*(+($28|0))); - $30 = $20 / $29; - _sqlite3_result_double($18,$30); - STACKTOP = sp;return; -} -function _countStep($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3_aggregate_context($3,8)|0); - HEAP32[$p>>2] = $4; - $5 = HEAP32[$1>>2]|0; - $6 = ($5|0)==(0); - if (!($6)) { - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3_value_type($8)|0); - $10 = (5)!=($9|0); - if (!($10)) { - STACKTOP = sp;return; - } - } - $11 = HEAP32[$p>>2]|0; - $12 = ($11|0)!=(0|0); - if (!($12)) { - STACKTOP = sp;return; - } - $13 = HEAP32[$p>>2]|0; - $14 = $13; - $15 = $14; - $16 = HEAP32[$15>>2]|0; - $17 = (($14) + 4)|0; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = (_i64Add(($16|0),($19|0),1,0)|0); - $21 = tempRet0; - $22 = $13; - $23 = $22; - HEAP32[$23>>2] = $20; - $24 = (($22) + 4)|0; - $25 = $24; - HEAP32[$25>>2] = $21; - STACKTOP = sp;return; -} -function _countFinalize($context) { - $context = $context|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $context; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3_aggregate_context($1,0)|0); - HEAP32[$p>>2] = $2; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$p>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - $13 = 0;$14 = 0; - _sqlite3_result_int64($3,$13,$14); - STACKTOP = sp;return; - } - $6 = HEAP32[$p>>2]|0; - $7 = $6; - $8 = $7; - $9 = HEAP32[$8>>2]|0; - $10 = (($7) + 4)|0; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = $9;$14 = $12; - _sqlite3_result_int64($3,$13,$14); - STACKTOP = sp;return; -} -function _groupConcatStep($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $firstTerm = 0, $nSep = 0, $nVal = 0, $pAccum = 0, $zSep = 0; - var $zVal = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $zVal = sp + 24|0; - $pAccum = sp + 20|0; - $zSep = sp + 16|0; - $nVal = sp + 12|0; - $nSep = sp + 8|0; - $db = sp + 4|0; - $firstTerm = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_type($4)|0); - $6 = ($5|0)==(5); - if ($6) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - $8 = (_sqlite3_aggregate_context($7,28)|0); - HEAP32[$pAccum>>2] = $8; - $9 = HEAP32[$pAccum>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - STACKTOP = sp;return; - } - $11 = HEAP32[$0>>2]|0; - $12 = (_sqlite3_context_db_handle($11)|0); - HEAP32[$db>>2] = $12; - $13 = HEAP32[$pAccum>>2]|0; - $14 = (($13) + 24|0); - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - $17 = ($16|0)==(0); - $18 = $17&1; - HEAP32[$firstTerm>>2] = $18; - $19 = HEAP32[$pAccum>>2]|0; - $20 = (($19) + 24|0); - HEAP8[$20>>0] = 2; - $21 = HEAP32[$db>>2]|0; - $22 = (($21) + 88|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$pAccum>>2]|0; - $25 = (($24) + 20|0); - HEAP32[$25>>2] = $23; - $26 = HEAP32[$firstTerm>>2]|0; - $27 = ($26|0)!=(0); - if (!($27)) { - $28 = HEAP32[$1>>2]|0; - $29 = ($28|0)==(2); - if ($29) { - $30 = HEAP32[$2>>2]|0; - $31 = (($30) + 4|0); - $32 = HEAP32[$31>>2]|0; - $33 = (_sqlite3_value_text($32)|0); - HEAP32[$zSep>>2] = $33; - $34 = HEAP32[$2>>2]|0; - $35 = (($34) + 4|0); - $36 = HEAP32[$35>>2]|0; - $37 = (_sqlite3_value_bytes($36)|0); - HEAP32[$nSep>>2] = $37; - } else { - HEAP32[$zSep>>2] = 9680; - HEAP32[$nSep>>2] = 1; - } - $38 = HEAP32[$nSep>>2]|0; - $39 = ($38|0)!=(0); - if ($39) { - $40 = HEAP32[$pAccum>>2]|0; - $41 = HEAP32[$zSep>>2]|0; - $42 = HEAP32[$nSep>>2]|0; - _sqlite3StrAccumAppend($40,$41,$42); - } - } - $43 = HEAP32[$2>>2]|0; - $44 = HEAP32[$43>>2]|0; - $45 = (_sqlite3_value_text($44)|0); - HEAP32[$zVal>>2] = $45; - $46 = HEAP32[$2>>2]|0; - $47 = HEAP32[$46>>2]|0; - $48 = (_sqlite3_value_bytes($47)|0); - HEAP32[$nVal>>2] = $48; - $49 = HEAP32[$zVal>>2]|0; - $50 = ($49|0)!=(0|0); - if (!($50)) { - STACKTOP = sp;return; - } - $51 = HEAP32[$pAccum>>2]|0; - $52 = HEAP32[$zVal>>2]|0; - $53 = HEAP32[$nVal>>2]|0; - _sqlite3StrAccumAppend($51,$52,$53); - STACKTOP = sp;return; -} -function _groupConcatFinalize($context) { - $context = $context|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pAccum = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pAccum = sp; - HEAP32[$0>>2] = $context; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3_aggregate_context($1,0)|0); - HEAP32[$pAccum>>2] = $2; - $3 = HEAP32[$pAccum>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$pAccum>>2]|0; - $6 = (($5) + 25|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = ($8|0)==(2); - if ($9) { - $10 = HEAP32[$0>>2]|0; - _sqlite3_result_error_toobig($10); - STACKTOP = sp;return; - } - $11 = HEAP32[$pAccum>>2]|0; - $12 = (($11) + 25|0); - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - $15 = ($14|0)==(1); - $16 = HEAP32[$0>>2]|0; - if ($15) { - _sqlite3_result_error_nomem($16); - STACKTOP = sp;return; - } else { - $17 = HEAP32[$pAccum>>2]|0; - $18 = (_sqlite3StrAccumFinish($17)|0); - _sqlite3_result_text($16,$18,-1,13); - STACKTOP = sp;return; - } -} -function _likeFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $escape = 0, $nPat = 0, $pInfo = 0, $zA = 0, $zB = 0, $zEsc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $zA = sp + 24|0; - $zB = sp + 20|0; - $escape = sp + 16|0; - $nPat = sp + 12|0; - $db = sp + 8|0; - $zEsc = sp + 4|0; - $pInfo = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - HEAP32[$escape>>2] = 0; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3_context_db_handle($3)|0); - HEAP32[$db>>2] = $4; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = (_sqlite3_value_text($6)|0); - HEAP32[$zB>>2] = $7; - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - $11 = (_sqlite3_value_text($10)|0); - HEAP32[$zA>>2] = $11; - $12 = HEAP32[$2>>2]|0; - $13 = HEAP32[$12>>2]|0; - $14 = (_sqlite3_value_bytes($13)|0); - HEAP32[$nPat>>2] = $14; - $15 = HEAP32[$nPat>>2]|0; - $16 = HEAP32[$db>>2]|0; - $17 = (($16) + 88|0); - $18 = (($17) + 32|0); - $19 = HEAP32[$18>>2]|0; - $20 = ($15|0)>($19|0); - if ($20) { - $21 = HEAP32[$0>>2]|0; - _sqlite3_result_error($21,9592,-1); - STACKTOP = sp;return; - } - $22 = HEAP32[$1>>2]|0; - $23 = ($22|0)==(3); - do { - if ($23) { - $24 = HEAP32[$2>>2]|0; - $25 = (($24) + 8|0); - $26 = HEAP32[$25>>2]|0; - $27 = (_sqlite3_value_text($26)|0); - HEAP32[$zEsc>>2] = $27; - $28 = HEAP32[$zEsc>>2]|0; - $29 = ($28|0)==(0|0); - if ($29) { - STACKTOP = sp;return; - } - $30 = HEAP32[$zEsc>>2]|0; - $31 = (_sqlite3Utf8CharLen($30,-1)|0); - $32 = ($31|0)!=(1); - if (!($32)) { - $34 = (_sqlite3Utf8Read($zEsc)|0); - HEAP32[$escape>>2] = $34; - break; - } - $33 = HEAP32[$0>>2]|0; - _sqlite3_result_error($33,9632,-1); - STACKTOP = sp;return; - } - } while(0); - $35 = HEAP32[$zA>>2]|0; - $36 = ($35|0)!=(0|0); - if (!($36)) { - STACKTOP = sp;return; - } - $37 = HEAP32[$zB>>2]|0; - $38 = ($37|0)!=(0|0); - if (!($38)) { - STACKTOP = sp;return; - } - $39 = HEAP32[$0>>2]|0; - $40 = (_sqlite3_user_data($39)|0); - HEAP32[$pInfo>>2] = $40; - $41 = HEAP32[$0>>2]|0; - $42 = HEAP32[$zB>>2]|0; - $43 = HEAP32[$zA>>2]|0; - $44 = HEAP32[$pInfo>>2]|0; - $45 = HEAP32[$escape>>2]|0; - $46 = (_patternCompare($42,$43,$44,$45)|0); - _sqlite3_result_int($41,$46); - STACKTOP = sp;return; -} -function _sqlite3RegisterDateTimeFunctions() { - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $aFunc = 0, $i = 0, $pHash = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $i = sp + 8|0; - $pHash = sp + 4|0; - $aFunc = sp; - HEAP32[$pHash>>2] = 1576; - HEAP32[$aFunc>>2] = 8920; - HEAP32[$i>>2] = 0; - while(1) { - $0 = HEAP32[$i>>2]|0; - $1 = ($0|0)<(8); - if (!($1)) { - break; - } - $2 = HEAP32[$pHash>>2]|0; - $3 = HEAP32[$i>>2]|0; - $4 = HEAP32[$aFunc>>2]|0; - $5 = (($4) + (($3*36)|0)|0); - _sqlite3FuncDefInsert($2,$5); - $6 = HEAP32[$i>>2]|0; - $7 = (($6) + 1)|0; - HEAP32[$i>>2] = $7; - } - STACKTOP = sp;return; -} -function _sqlite3AlterFunctions() { - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $aFunc = 0, $i = 0, $pHash = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $i = sp + 8|0; - $pHash = sp + 4|0; - $aFunc = sp; - HEAP32[$pHash>>2] = 1576; - HEAP32[$aFunc>>2] = 8696; - HEAP32[$i>>2] = 0; - while(1) { - $0 = HEAP32[$i>>2]|0; - $1 = ($0|0)<(3); - if (!($1)) { - break; - } - $2 = HEAP32[$pHash>>2]|0; - $3 = HEAP32[$i>>2]|0; - $4 = HEAP32[$aFunc>>2]|0; - $5 = (($4) + (($3*36)|0)|0); - _sqlite3FuncDefInsert($2,$5); - $6 = HEAP32[$i>>2]|0; - $7 = (($6) + 1)|0; - HEAP32[$i>>2] = $7; - } - STACKTOP = sp;return; -} -function _renameTableFunc($context,$NotUsed,$argv) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $len = 0, $or$cond = 0, $tname = 0, $token = 0, $vararg_buffer = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $zCsr = 0, $zRet = 0, $zSql = 0, $zTableName = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer = sp; - $0 = sp + 60|0; - $1 = sp + 56|0; - $2 = sp + 52|0; - $zSql = sp + 48|0; - $zTableName = sp + 44|0; - $token = sp + 40|0; - $tname = sp + 32|0; - $zCsr = sp + 28|0; - $len = sp + 24|0; - $zRet = sp + 20|0; - $db = sp + 16|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_text($4)|0); - HEAP32[$zSql>>2] = $5; - $6 = HEAP32[$2>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3_value_text($8)|0); - HEAP32[$zTableName>>2] = $9; - $10 = HEAP32[$zSql>>2]|0; - HEAP32[$zCsr>>2] = $10; - HEAP32[$len>>2] = 0; - $11 = HEAP32[$0>>2]|0; - $12 = (_sqlite3_context_db_handle($11)|0); - HEAP32[$db>>2] = $12; - $13 = HEAP32[$zSql>>2]|0; - $14 = ($13|0)!=(0|0); - if (!($14)) { - STACKTOP = sp;return; - } - while(1) { - $15 = HEAP32[$zCsr>>2]|0; - $16 = HEAP8[$15>>0]|0; - $17 = ($16<<24>>24)!=(0); - if (!($17)) { - label = 7; - break; - } - $18 = HEAP32[$zCsr>>2]|0; - HEAP32[$tname>>2] = $18; - $19 = HEAP32[$len>>2]|0; - $20 = (($tname) + 4|0); - HEAP32[$20>>2] = $19; - while(1) { - $21 = HEAP32[$len>>2]|0; - $22 = HEAP32[$zCsr>>2]|0; - $23 = (($22) + ($21)|0); - HEAP32[$zCsr>>2] = $23; - $24 = HEAP32[$zCsr>>2]|0; - $25 = (_sqlite3GetToken($24,$token)|0); - HEAP32[$len>>2] = $25; - $26 = HEAP32[$token>>2]|0; - $27 = ($26|0)==(151); - if (!($27)) { - break; - } - } - $28 = HEAP32[$token>>2]|0; - $29 = ($28|0)!=(22); - $30 = HEAP32[$token>>2]|0; - $31 = ($30|0)!=(125); - $or$cond = $29 & $31; - if (!($or$cond)) { - break; - } - } - if ((label|0) == 7) { - STACKTOP = sp;return; - } - $32 = HEAP32[$db>>2]|0; - $33 = HEAP32[$tname>>2]|0; - $34 = HEAP32[$zSql>>2]|0; - $35 = $33; - $36 = $34; - $37 = (($35) - ($36))|0; - $38 = HEAP32[$zSql>>2]|0; - $39 = HEAP32[$zTableName>>2]|0; - $40 = HEAP32[$tname>>2]|0; - $41 = (($tname) + 4|0); - $42 = HEAP32[$41>>2]|0; - $43 = (($40) + ($42)|0); - HEAP32[$vararg_buffer>>2] = $37; - $vararg_ptr2 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr2>>2] = $38; - $vararg_ptr3 = (($vararg_buffer) + 8|0); - HEAP32[$vararg_ptr3>>2] = $39; - $vararg_ptr4 = (($vararg_buffer) + 12|0); - HEAP32[$vararg_ptr4>>2] = $43; - $44 = (_sqlite3MPrintf($32,8904,$vararg_buffer)|0); - HEAP32[$zRet>>2] = $44; - $45 = HEAP32[$0>>2]|0; - $46 = HEAP32[$zRet>>2]|0; - _sqlite3_result_text($45,$46,-1,16); - STACKTOP = sp;return; -} -function _renameTriggerFunc($context,$NotUsed,$argv) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $argv = $argv|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $dist = 0; - var $len = 0, $or$cond = 0, $or$cond3 = 0, $or$cond6 = 0, $tname = 0, $token = 0, $vararg_buffer = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, $zCsr = 0, $zRet = 0, $zSql = 0, $zTableName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer = sp; - $0 = sp + 68|0; - $1 = sp + 64|0; - $2 = sp + 60|0; - $zSql = sp + 56|0; - $zTableName = sp + 52|0; - $token = sp + 48|0; - $tname = sp + 40|0; - $dist = sp + 32|0; - $zCsr = sp + 28|0; - $len = sp + 24|0; - $zRet = sp + 20|0; - $db = sp + 16|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_text($4)|0); - HEAP32[$zSql>>2] = $5; - $6 = HEAP32[$2>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3_value_text($8)|0); - HEAP32[$zTableName>>2] = $9; - HEAP32[$dist>>2] = 3; - $10 = HEAP32[$zSql>>2]|0; - HEAP32[$zCsr>>2] = $10; - HEAP32[$len>>2] = 0; - $11 = HEAP32[$0>>2]|0; - $12 = (_sqlite3_context_db_handle($11)|0); - HEAP32[$db>>2] = $12; - $13 = HEAP32[$zSql>>2]|0; - $14 = ($13|0)!=(0|0); - if (!($14)) { - STACKTOP = sp;return; - } - while(1) { - $15 = HEAP32[$zCsr>>2]|0; - $16 = HEAP8[$15>>0]|0; - $17 = ($16<<24>>24)!=(0); - if (!($17)) { - label = 8; - break; - } - $18 = HEAP32[$zCsr>>2]|0; - HEAP32[$tname>>2] = $18; - $19 = HEAP32[$len>>2]|0; - $20 = (($tname) + 4|0); - HEAP32[$20>>2] = $19; - while(1) { - $21 = HEAP32[$len>>2]|0; - $22 = HEAP32[$zCsr>>2]|0; - $23 = (($22) + ($21)|0); - HEAP32[$zCsr>>2] = $23; - $24 = HEAP32[$zCsr>>2]|0; - $25 = (_sqlite3GetToken($24,$token)|0); - HEAP32[$len>>2] = $25; - $26 = HEAP32[$token>>2]|0; - $27 = ($26|0)==(151); - if (!($27)) { - break; - } - } - $28 = HEAP32[$dist>>2]|0; - $29 = (($28) + 1)|0; - HEAP32[$dist>>2] = $29; - $30 = HEAP32[$token>>2]|0; - $31 = ($30|0)==(122); - $32 = HEAP32[$token>>2]|0; - $33 = ($32|0)==(107); - $or$cond = $31 | $33; - $$ = $or$cond ? 0 : $29; - HEAP32[$dist>>2] = $$; - $34 = HEAP32[$dist>>2]|0; - $35 = ($34|0)!=(2); - if ($35) { - continue; - } - $36 = HEAP32[$token>>2]|0; - $37 = ($36|0)!=(137); - $38 = HEAP32[$token>>2]|0; - $39 = ($38|0)!=(46); - $or$cond3 = $37 & $39; - $40 = HEAP32[$token>>2]|0; - $41 = ($40|0)!=(5); - $or$cond6 = $or$cond3 & $41; - if (!($or$cond6)) { - break; - } - } - if ((label|0) == 8) { - STACKTOP = sp;return; - } - $42 = HEAP32[$db>>2]|0; - $43 = HEAP32[$tname>>2]|0; - $44 = HEAP32[$zSql>>2]|0; - $45 = $43; - $46 = $44; - $47 = (($45) - ($46))|0; - $48 = HEAP32[$zSql>>2]|0; - $49 = HEAP32[$zTableName>>2]|0; - $50 = HEAP32[$tname>>2]|0; - $51 = (($tname) + 4|0); - $52 = HEAP32[$51>>2]|0; - $53 = (($50) + ($52)|0); - HEAP32[$vararg_buffer>>2] = $47; - $vararg_ptr7 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr7>>2] = $48; - $vararg_ptr8 = (($vararg_buffer) + 8|0); - HEAP32[$vararg_ptr8>>2] = $49; - $vararg_ptr9 = (($vararg_buffer) + 12|0); - HEAP32[$vararg_ptr9>>2] = $53; - $54 = (_sqlite3MPrintf($42,8904,$vararg_buffer)|0); - HEAP32[$zRet>>2] = $54; - $55 = HEAP32[$0>>2]|0; - $56 = HEAP32[$zRet>>2]|0; - _sqlite3_result_text($55,$56,-1,16); - STACKTOP = sp;return; -} -function _renameParentFunc($context,$NotUsed,$argv) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $9 = 0, $db = 0, $n = 0, $token = 0, $vararg_buffer4 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr7 = 0, $z = 0, $zInput = 0, $zNew = 0, $zOld = 0, $zOut = 0, $zOutput = 0, $zParent = 0, $zResult = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer4 = sp; - $0 = sp + 68|0; - $1 = sp + 64|0; - $2 = sp + 60|0; - $db = sp + 56|0; - $zOutput = sp + 52|0; - $zResult = sp + 48|0; - $zInput = sp + 44|0; - $zOld = sp + 40|0; - $zNew = sp + 36|0; - $z = sp + 32|0; - $n = sp + 28|0; - $token = sp + 24|0; - $zParent = sp + 20|0; - $zOut = sp + 16|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3_context_db_handle($3)|0); - HEAP32[$db>>2] = $4; - HEAP32[$zOutput>>2] = 0; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = (_sqlite3_value_text($6)|0); - HEAP32[$zInput>>2] = $7; - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - $11 = (_sqlite3_value_text($10)|0); - HEAP32[$zOld>>2] = $11; - $12 = HEAP32[$2>>2]|0; - $13 = (($12) + 8|0); - $14 = HEAP32[$13>>2]|0; - $15 = (_sqlite3_value_text($14)|0); - HEAP32[$zNew>>2] = $15; - $16 = HEAP32[$zInput>>2]|0; - $17 = ($16|0)==(0|0); - if ($17) { - STACKTOP = sp;return; - } - $18 = HEAP32[$zOld>>2]|0; - $19 = ($18|0)==(0|0); - if ($19) { - STACKTOP = sp;return; - } - $20 = HEAP32[$zInput>>2]|0; - HEAP32[$z>>2] = $20; - while(1) { - $21 = HEAP32[$z>>2]|0; - $22 = HEAP8[$21>>0]|0; - $23 = ($22<<24>>24)!=(0); - if (!($23)) { - break; - } - $24 = HEAP32[$z>>2]|0; - $25 = (_sqlite3GetToken($24,$token)|0); - HEAP32[$n>>2] = $25; - $26 = HEAP32[$token>>2]|0; - $27 = ($26|0)==(105); - if ($27) { - while(1) { - $28 = HEAP32[$n>>2]|0; - $29 = HEAP32[$z>>2]|0; - $30 = (($29) + ($28)|0); - HEAP32[$z>>2] = $30; - $31 = HEAP32[$z>>2]|0; - $32 = (_sqlite3GetToken($31,$token)|0); - HEAP32[$n>>2] = $32; - $33 = HEAP32[$token>>2]|0; - $34 = ($33|0)==(151); - if (!($34)) { - break; - } - } - $35 = HEAP32[$db>>2]|0; - $36 = HEAP32[$z>>2]|0; - $37 = HEAP32[$n>>2]|0; - $38 = (_sqlite3DbStrNDup($35,$36,$37)|0); - HEAP32[$zParent>>2] = $38; - $39 = HEAP32[$zParent>>2]|0; - $40 = ($39|0)==(0|0); - if ($40) { - break; - } - $41 = HEAP32[$zParent>>2]|0; - (_sqlite3Dequote($41)|0); - $42 = HEAP32[$zOld>>2]|0; - $43 = HEAP32[$zParent>>2]|0; - $44 = (_sqlite3_stricmp($42,$43)|0); - $45 = (0)==($44|0); - if ($45) { - $46 = HEAP32[$db>>2]|0; - $47 = HEAP32[$zOutput>>2]|0; - $48 = ($47|0)!=(0|0); - $49 = HEAP32[$zOutput>>2]|0; - $50 = $48 ? $49 : 1472; - $51 = HEAP32[$z>>2]|0; - $52 = HEAP32[$zInput>>2]|0; - $53 = $51; - $54 = $52; - $55 = (($53) - ($54))|0; - $56 = HEAP32[$zInput>>2]|0; - $57 = HEAP32[$zNew>>2]|0; - HEAP32[$vararg_buffer4>>2] = $50; - $vararg_ptr1 = (($vararg_buffer4) + 4|0); - HEAP32[$vararg_ptr1>>2] = $55; - $vararg_ptr2 = (($vararg_buffer4) + 8|0); - HEAP32[$vararg_ptr2>>2] = $56; - $vararg_ptr3 = (($vararg_buffer4) + 12|0); - HEAP32[$vararg_ptr3>>2] = $57; - $58 = (_sqlite3MPrintf($46,8880,$vararg_buffer4)|0); - HEAP32[$zOut>>2] = $58; - $59 = HEAP32[$db>>2]|0; - $60 = HEAP32[$zOutput>>2]|0; - _sqlite3DbFree($59,$60); - $61 = HEAP32[$zOut>>2]|0; - HEAP32[$zOutput>>2] = $61; - $62 = HEAP32[$n>>2]|0; - $63 = HEAP32[$z>>2]|0; - $64 = (($63) + ($62)|0); - HEAP32[$zInput>>2] = $64; - } - $65 = HEAP32[$db>>2]|0; - $66 = HEAP32[$zParent>>2]|0; - _sqlite3DbFree($65,$66); - } - $67 = HEAP32[$z>>2]|0; - $68 = HEAP32[$n>>2]|0; - $69 = (($67) + ($68)|0); - HEAP32[$z>>2] = $69; - } - $70 = HEAP32[$db>>2]|0; - $71 = HEAP32[$zOutput>>2]|0; - $72 = ($71|0)!=(0|0); - $73 = HEAP32[$zOutput>>2]|0; - $74 = $72 ? $73 : 1472; - $75 = HEAP32[$zInput>>2]|0; - HEAP32[$vararg_buffer4>>2] = $74; - $vararg_ptr7 = (($vararg_buffer4) + 4|0); - HEAP32[$vararg_ptr7>>2] = $75; - $76 = (_sqlite3MPrintf($70,8896,$vararg_buffer4)|0); - HEAP32[$zResult>>2] = $76; - $77 = HEAP32[$0>>2]|0; - $78 = HEAP32[$zResult>>2]|0; - _sqlite3_result_text($77,$78,-1,16); - $79 = HEAP32[$db>>2]|0; - $80 = HEAP32[$zOutput>>2]|0; - _sqlite3DbFree($79,$80); - STACKTOP = sp;return; -} -function _sqlite3GetToken($z,$tokenType) { - $z = $z|0; - $tokenType = $tokenType|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; - var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; - var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; - var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $delim = 0, $i = 0, $n = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $i = sp + 12|0; - $c = sp + 8|0; - $delim = sp + 4|0; - $n = sp; - HEAP32[$1>>2] = $z; - HEAP32[$2>>2] = $tokenType; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - do { - switch ($5|0) { - case 42: { - $42 = HEAP32[$2>>2]|0; - HEAP32[$42>>2] = 91; - HEAP32[$0>>2] = 1; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - break; - } - case 59: { - $40 = HEAP32[$2>>2]|0; - HEAP32[$40>>2] = 1; - HEAP32[$0>>2] = 1; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - break; - } - case 43: { - $41 = HEAP32[$2>>2]|0; - HEAP32[$41>>2] = 89; - HEAP32[$0>>2] = 1; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - break; - } - case 126: { - $124 = HEAP32[$2>>2]|0; - HEAP32[$124>>2] = 96; - HEAP32[$0>>2] = 1; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - break; - } - case 40: { - $38 = HEAP32[$2>>2]|0; - HEAP32[$38>>2] = 22; - HEAP32[$0>>2] = 1; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - break; - } - case 124: { - $116 = HEAP32[$1>>2]|0; - $117 = (($116) + 1|0); - $118 = HEAP8[$117>>0]|0; - $119 = $118&255; - $120 = ($119|0)!=(124); - $121 = HEAP32[$2>>2]|0; - if ($120) { - HEAP32[$121>>2] = 86; - HEAP32[$0>>2] = 1; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } else { - HEAP32[$121>>2] = 94; - HEAP32[$0>>2] = 2; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } - break; - } - case 62: { - $101 = HEAP32[$1>>2]|0; - $102 = (($101) + 1|0); - $103 = HEAP8[$102>>0]|0; - $104 = $103&255; - HEAP32[$c>>2] = $104; - $105 = ($104|0)==(61); - if ($105) { - $106 = HEAP32[$2>>2]|0; - HEAP32[$106>>2] = 83; - HEAP32[$0>>2] = 2; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } - $107 = HEAP32[$c>>2]|0; - $108 = ($107|0)==(62); - $109 = HEAP32[$2>>2]|0; - if ($108) { - HEAP32[$109>>2] = 88; - HEAP32[$0>>2] = 2; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } else { - HEAP32[$109>>2] = 80; - HEAP32[$0>>2] = 1; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } - break; - } - case 38: { - $123 = HEAP32[$2>>2]|0; - HEAP32[$123>>2] = 85; - HEAP32[$0>>2] = 1; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - break; - } - case 60: { - $89 = HEAP32[$1>>2]|0; - $90 = (($89) + 1|0); - $91 = HEAP8[$90>>0]|0; - $92 = $91&255; - HEAP32[$c>>2] = $92; - $93 = ($92|0)==(61); - if ($93) { - $94 = HEAP32[$2>>2]|0; - HEAP32[$94>>2] = 81; - HEAP32[$0>>2] = 2; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } - $95 = HEAP32[$c>>2]|0; - $96 = ($95|0)==(62); - if ($96) { - $97 = HEAP32[$2>>2]|0; - HEAP32[$97>>2] = 78; - HEAP32[$0>>2] = 2; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } - $98 = HEAP32[$c>>2]|0; - $99 = ($98|0)==(60); - $100 = HEAP32[$2>>2]|0; - if ($99) { - HEAP32[$100>>2] = 87; - HEAP32[$0>>2] = 2; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } else { - HEAP32[$100>>2] = 82; - HEAP32[$0>>2] = 1; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } - break; - } - case 91: { - HEAP32[$i>>2] = 1; - $280 = HEAP32[$1>>2]|0; - $281 = HEAP8[$280>>0]|0; - $282 = $281&255; - HEAP32[$c>>2] = $282; - while(1) { - $283 = HEAP32[$c>>2]|0; - $284 = ($283|0)!=(93); - if (!($284)) { - break; - } - $285 = HEAP32[$i>>2]|0; - $286 = HEAP32[$1>>2]|0; - $287 = (($286) + ($285)|0); - $288 = HEAP8[$287>>0]|0; - $289 = $288&255; - HEAP32[$c>>2] = $289; - $290 = ($289|0)!=(0); - if (!($290)) { - break; - } - $291 = HEAP32[$i>>2]|0; - $292 = (($291) + 1)|0; - HEAP32[$i>>2] = $292; - } - $293 = HEAP32[$c>>2]|0; - $294 = ($293|0)==(93); - $295 = $294 ? 27 : 150; - $296 = HEAP32[$2>>2]|0; - HEAP32[$296>>2] = $295; - $297 = HEAP32[$i>>2]|0; - HEAP32[$0>>2] = $297; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - break; - } - case 37: { - $80 = HEAP32[$2>>2]|0; - HEAP32[$80>>2] = 93; - HEAP32[$0>>2] = 1; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - break; - } - case 88: case 120: { - $372 = HEAP32[$1>>2]|0; - $373 = (($372) + 1|0); - $374 = HEAP8[$373>>0]|0; - $375 = $374&255; - $376 = ($375|0)==(39); - if ($376) { - $377 = HEAP32[$2>>2]|0; - HEAP32[$377>>2] = 134; - HEAP32[$i>>2] = 2; - while(1) { - $378 = HEAP32[$i>>2]|0; - $379 = HEAP32[$1>>2]|0; - $380 = (($379) + ($378)|0); - $381 = HEAP8[$380>>0]|0; - $382 = $381&255; - $383 = (48 + ($382)|0); - $384 = HEAP8[$383>>0]|0; - $385 = $384&255; - $386 = $385 & 8; - $387 = ($386|0)!=(0); - $388 = HEAP32[$i>>2]|0; - if (!($387)) { - break; - } - $389 = (($388) + 1)|0; - HEAP32[$i>>2] = $389; - } - $390 = HEAP32[$1>>2]|0; - $391 = (($390) + ($388)|0); - $392 = HEAP8[$391>>0]|0; - $393 = $392&255; - $394 = ($393|0)!=(39); - if ($394) { - label = 120; - } else { - $395 = HEAP32[$i>>2]|0; - $396 = (($395|0) % 2)&-1; - $397 = ($396|0)!=(0); - if ($397) { - label = 120; - } - } - L61: do { - if ((label|0) == 120) { - $398 = HEAP32[$2>>2]|0; - HEAP32[$398>>2] = 150; - while(1) { - $399 = HEAP32[$i>>2]|0; - $400 = HEAP32[$1>>2]|0; - $401 = (($400) + ($399)|0); - $402 = HEAP8[$401>>0]|0; - $403 = $402&255; - $404 = ($403|0)!=(0); - if (!($404)) { - break L61; - } - $405 = HEAP32[$i>>2]|0; - $406 = HEAP32[$1>>2]|0; - $407 = (($406) + ($405)|0); - $408 = HEAP8[$407>>0]|0; - $409 = $408&255; - $410 = ($409|0)!=(39); - if (!($410)) { - break L61; - } - $411 = HEAP32[$i>>2]|0; - $412 = (($411) + 1)|0; - HEAP32[$i>>2] = $412; - } - } - } while(0); - $413 = HEAP32[$i>>2]|0; - $414 = HEAP32[$1>>2]|0; - $415 = (($414) + ($413)|0); - $416 = HEAP8[$415>>0]|0; - $417 = ($416<<24>>24)!=(0); - if ($417) { - $418 = HEAP32[$i>>2]|0; - $419 = (($418) + 1)|0; - HEAP32[$i>>2] = $419; - } - $420 = HEAP32[$i>>2]|0; - HEAP32[$0>>2] = $420; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } else { - label = 127; - } - break; - } - case 45: { - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 1|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = ($23|0)==(45); - if (!($24)) { - $37 = HEAP32[$2>>2]|0; - HEAP32[$37>>2] = 90; - HEAP32[$0>>2] = 1; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } - HEAP32[$i>>2] = 2; - while(1) { - $25 = HEAP32[$i>>2]|0; - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + ($25)|0); - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - HEAP32[$c>>2] = $29; - $30 = ($29|0)!=(0); - if (!($30)) { - break; - } - $31 = HEAP32[$c>>2]|0; - $32 = ($31|0)!=(10); - if (!($32)) { - break; - } - $33 = HEAP32[$i>>2]|0; - $34 = (($33) + 1)|0; - HEAP32[$i>>2] = $34; - } - $35 = HEAP32[$2>>2]|0; - HEAP32[$35>>2] = 151; - $36 = HEAP32[$i>>2]|0; - HEAP32[$0>>2] = $36; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - break; - } - case 44: { - $122 = HEAP32[$2>>2]|0; - HEAP32[$122>>2] = 26; - HEAP32[$0>>2] = 1; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - break; - } - case 57: case 56: case 55: case 54: case 53: case 52: case 51: case 50: case 49: case 48: { - break; - } - case 34: case 39: case 96: { - $125 = HEAP32[$1>>2]|0; - $126 = HEAP8[$125>>0]|0; - $127 = $126&255; - HEAP32[$delim>>2] = $127; - HEAP32[$i>>2] = 1; - while(1) { - $128 = HEAP32[$i>>2]|0; - $129 = HEAP32[$1>>2]|0; - $130 = (($129) + ($128)|0); - $131 = HEAP8[$130>>0]|0; - $132 = $131&255; - HEAP32[$c>>2] = $132; - $133 = ($132|0)!=(0); - if (!($133)) { - break; - } - $134 = HEAP32[$c>>2]|0; - $135 = HEAP32[$delim>>2]|0; - $136 = ($134|0)==($135|0); - if ($136) { - $137 = HEAP32[$i>>2]|0; - $138 = (($137) + 1)|0; - $139 = HEAP32[$1>>2]|0; - $140 = (($139) + ($138)|0); - $141 = HEAP8[$140>>0]|0; - $142 = $141&255; - $143 = HEAP32[$delim>>2]|0; - $144 = ($142|0)==($143|0); - if (!($144)) { - break; - } - $145 = HEAP32[$i>>2]|0; - $146 = (($145) + 1)|0; - HEAP32[$i>>2] = $146; - } - $147 = HEAP32[$i>>2]|0; - $148 = (($147) + 1)|0; - HEAP32[$i>>2] = $148; - } - $149 = HEAP32[$c>>2]|0; - $150 = ($149|0)==(39); - if ($150) { - $151 = HEAP32[$2>>2]|0; - HEAP32[$151>>2] = 97; - $152 = HEAP32[$i>>2]|0; - $153 = (($152) + 1)|0; - HEAP32[$0>>2] = $153; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } - $154 = HEAP32[$c>>2]|0; - $155 = ($154|0)!=(0); - $156 = HEAP32[$2>>2]|0; - if ($155) { - HEAP32[$156>>2] = 27; - $157 = HEAP32[$i>>2]|0; - $158 = (($157) + 1)|0; - HEAP32[$0>>2] = $158; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } else { - HEAP32[$156>>2] = 150; - $159 = HEAP32[$i>>2]|0; - HEAP32[$0>>2] = $159; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } - break; - } - case 63: { - $298 = HEAP32[$2>>2]|0; - HEAP32[$298>>2] = 135; - HEAP32[$i>>2] = 1; - while(1) { - $299 = HEAP32[$i>>2]|0; - $300 = HEAP32[$1>>2]|0; - $301 = (($300) + ($299)|0); - $302 = HEAP8[$301>>0]|0; - $303 = $302&255; - $304 = (48 + ($303)|0); - $305 = HEAP8[$304>>0]|0; - $306 = $305&255; - $307 = $306 & 4; - $308 = ($307|0)!=(0); - $309 = HEAP32[$i>>2]|0; - if (!($308)) { - break; - } - $310 = (($309) + 1)|0; - HEAP32[$i>>2] = $310; - } - HEAP32[$0>>2] = $309; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - break; - } - case 58: case 35: case 64: case 36: { - HEAP32[$n>>2] = 0; - $311 = HEAP32[$2>>2]|0; - HEAP32[$311>>2] = 135; - HEAP32[$i>>2] = 1; - while(1) { - $312 = HEAP32[$i>>2]|0; - $313 = HEAP32[$1>>2]|0; - $314 = (($313) + ($312)|0); - $315 = HEAP8[$314>>0]|0; - $316 = $315&255; - HEAP32[$c>>2] = $316; - $317 = ($316|0)!=(0); - if (!($317)) { - break; - } - $318 = HEAP32[$c>>2]|0; - $319 = $318&255; - $320 = $319&255; - $321 = (48 + ($320)|0); - $322 = HEAP8[$321>>0]|0; - $323 = $322&255; - $324 = $323 & 70; - $325 = ($324|0)!=(0); - if ($325) { - $326 = HEAP32[$n>>2]|0; - $327 = (($326) + 1)|0; - HEAP32[$n>>2] = $327; - } else { - $328 = HEAP32[$c>>2]|0; - $329 = ($328|0)==(40); - if ($329) { - $330 = HEAP32[$n>>2]|0; - $331 = ($330|0)>(0); - if ($331) { - label = 101; - break; - } - } - $355 = HEAP32[$c>>2]|0; - $356 = ($355|0)==(58); - if (!($356)) { - break; - } - $357 = HEAP32[$i>>2]|0; - $358 = (($357) + 1)|0; - $359 = HEAP32[$1>>2]|0; - $360 = (($359) + ($358)|0); - $361 = HEAP8[$360>>0]|0; - $362 = $361&255; - $363 = ($362|0)==(58); - if (!($363)) { - break; - } - $364 = HEAP32[$i>>2]|0; - $365 = (($364) + 1)|0; - HEAP32[$i>>2] = $365; - } - $366 = HEAP32[$i>>2]|0; - $367 = (($366) + 1)|0; - HEAP32[$i>>2] = $367; - } - do { - if ((label|0) == 101) { - while(1) { - label = 0; - $332 = HEAP32[$i>>2]|0; - $333 = (($332) + 1)|0; - HEAP32[$i>>2] = $333; - $334 = HEAP32[$i>>2]|0; - $335 = HEAP32[$1>>2]|0; - $336 = (($335) + ($334)|0); - $337 = HEAP8[$336>>0]|0; - $338 = $337&255; - HEAP32[$c>>2] = $338; - $339 = ($338|0)!=(0); - if (!($339)) { - break; - } - $340 = HEAP32[$c>>2]|0; - $341 = $340&255; - $342 = $341&255; - $343 = (48 + ($342)|0); - $344 = HEAP8[$343>>0]|0; - $345 = $344&255; - $346 = $345 & 1; - $347 = ($346|0)!=(0); - if ($347) { - break; - } - $348 = HEAP32[$c>>2]|0; - $349 = ($348|0)!=(41); - if ($349) { - label = 101; - } else { - break; - } - } - $350 = HEAP32[$c>>2]|0; - $351 = ($350|0)==(41); - if ($351) { - $352 = HEAP32[$i>>2]|0; - $353 = (($352) + 1)|0; - HEAP32[$i>>2] = $353; - break; - } else { - $354 = HEAP32[$2>>2]|0; - HEAP32[$354>>2] = 150; - break; - } - } - } while(0); - $368 = HEAP32[$n>>2]|0; - $369 = ($368|0)==(0); - if ($369) { - $370 = HEAP32[$2>>2]|0; - HEAP32[$370>>2] = 150; - } - $371 = HEAP32[$i>>2]|0; - HEAP32[$0>>2] = $371; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - break; - } - case 33: { - $110 = HEAP32[$1>>2]|0; - $111 = (($110) + 1|0); - $112 = HEAP8[$111>>0]|0; - $113 = $112&255; - $114 = ($113|0)!=(61); - $115 = HEAP32[$2>>2]|0; - if ($114) { - HEAP32[$115>>2] = 150; - HEAP32[$0>>2] = 2; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } else { - HEAP32[$115>>2] = 78; - HEAP32[$0>>2] = 2; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } - break; - } - case 47: { - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + 1|0); - $45 = HEAP8[$44>>0]|0; - $46 = $45&255; - $47 = ($46|0)!=(42); - if (!($47)) { - $48 = HEAP32[$1>>2]|0; - $49 = (($48) + 2|0); - $50 = HEAP8[$49>>0]|0; - $51 = $50&255; - $52 = ($51|0)==(0); - if (!($52)) { - HEAP32[$i>>2] = 3; - $54 = HEAP32[$1>>2]|0; - $55 = (($54) + 2|0); - $56 = HEAP8[$55>>0]|0; - $57 = $56&255; - HEAP32[$c>>2] = $57; - while(1) { - $58 = HEAP32[$c>>2]|0; - $59 = ($58|0)!=(42); - if (!($59)) { - $60 = HEAP32[$i>>2]|0; - $61 = HEAP32[$1>>2]|0; - $62 = (($61) + ($60)|0); - $63 = HEAP8[$62>>0]|0; - $64 = $63&255; - $65 = ($64|0)!=(47); - if (!($65)) { - break; - } - } - $66 = HEAP32[$i>>2]|0; - $67 = HEAP32[$1>>2]|0; - $68 = (($67) + ($66)|0); - $69 = HEAP8[$68>>0]|0; - $70 = $69&255; - HEAP32[$c>>2] = $70; - $71 = ($70|0)!=(0); - if (!($71)) { - break; - } - $72 = HEAP32[$i>>2]|0; - $73 = (($72) + 1)|0; - HEAP32[$i>>2] = $73; - } - $74 = HEAP32[$c>>2]|0; - $75 = ($74|0)!=(0); - if ($75) { - $76 = HEAP32[$i>>2]|0; - $77 = (($76) + 1)|0; - HEAP32[$i>>2] = $77; - } - $78 = HEAP32[$2>>2]|0; - HEAP32[$78>>2] = 151; - $79 = HEAP32[$i>>2]|0; - HEAP32[$0>>2] = $79; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } - } - $53 = HEAP32[$2>>2]|0; - HEAP32[$53>>2] = 92; - HEAP32[$0>>2] = 1; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - break; - } - case 46: { - $160 = HEAP32[$1>>2]|0; - $161 = (($160) + 1|0); - $162 = HEAP8[$161>>0]|0; - $163 = $162&255; - $164 = (48 + ($163)|0); - $165 = HEAP8[$164>>0]|0; - $166 = $165&255; - $167 = $166 & 4; - $168 = ($167|0)!=(0); - if (!($168)) { - $169 = HEAP32[$2>>2]|0; - HEAP32[$169>>2] = 122; - HEAP32[$0>>2] = 1; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } - break; - } - case 61: { - $81 = HEAP32[$2>>2]|0; - HEAP32[$81>>2] = 79; - $82 = HEAP32[$1>>2]|0; - $83 = (($82) + 1|0); - $84 = HEAP8[$83>>0]|0; - $85 = $84&255; - $86 = ($85|0)==(61); - $87 = $86&1; - $88 = (1 + ($87))|0; - HEAP32[$0>>2] = $88; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - break; - } - case 41: { - $39 = HEAP32[$2>>2]|0; - HEAP32[$39>>2] = 23; - HEAP32[$0>>2] = 1; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - break; - } - case 13: case 12: case 10: case 9: case 32: { - HEAP32[$i>>2] = 1; - while(1) { - $6 = HEAP32[$i>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + ($6)|0); - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - $11 = (48 + ($10)|0); - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = $13 & 1; - $15 = ($14|0)!=(0); - if (!($15)) { - break; - } - $16 = HEAP32[$i>>2]|0; - $17 = (($16) + 1)|0; - HEAP32[$i>>2] = $17; - } - $18 = HEAP32[$2>>2]|0; - HEAP32[$18>>2] = 151; - $19 = HEAP32[$i>>2]|0; - HEAP32[$0>>2] = $19; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - break; - } - default: { - label = 127; - } - } - } while(0); - if ((label|0) == 127) { - $421 = HEAP32[$1>>2]|0; - $422 = HEAP8[$421>>0]|0; - $423 = $422&255; - $424 = (48 + ($423)|0); - $425 = HEAP8[$424>>0]|0; - $426 = $425&255; - $427 = $426 & 70; - $428 = ($427|0)!=(0); - if (!($428)) { - $446 = HEAP32[$2>>2]|0; - HEAP32[$446>>2] = 150; - HEAP32[$0>>2] = 1; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } - HEAP32[$i>>2] = 1; - while(1) { - $429 = HEAP32[$i>>2]|0; - $430 = HEAP32[$1>>2]|0; - $431 = (($430) + ($429)|0); - $432 = HEAP8[$431>>0]|0; - $433 = $432&255; - $434 = (48 + ($433)|0); - $435 = HEAP8[$434>>0]|0; - $436 = $435&255; - $437 = $436 & 70; - $438 = ($437|0)!=(0); - if (!($438)) { - break; - } - $439 = HEAP32[$i>>2]|0; - $440 = (($439) + 1)|0; - HEAP32[$i>>2] = $440; - } - $441 = HEAP32[$1>>2]|0; - $442 = HEAP32[$i>>2]|0; - $443 = (_keywordCode($441,$442)|0); - $444 = HEAP32[$2>>2]|0; - HEAP32[$444>>2] = $443; - $445 = HEAP32[$i>>2]|0; - HEAP32[$0>>2] = $445; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); - } - $170 = HEAP32[$2>>2]|0; - HEAP32[$170>>2] = 132; - HEAP32[$i>>2] = 0; - while(1) { - $171 = HEAP32[$i>>2]|0; - $172 = HEAP32[$1>>2]|0; - $173 = (($172) + ($171)|0); - $174 = HEAP8[$173>>0]|0; - $175 = $174&255; - $176 = (48 + ($175)|0); - $177 = HEAP8[$176>>0]|0; - $178 = $177&255; - $179 = $178 & 4; - $180 = ($179|0)!=(0); - $181 = HEAP32[$i>>2]|0; - if (!($180)) { - break; - } - $182 = (($181) + 1)|0; - HEAP32[$i>>2] = $182; - } - $183 = HEAP32[$1>>2]|0; - $184 = (($183) + ($181)|0); - $185 = HEAP8[$184>>0]|0; - $186 = $185&255; - $187 = ($186|0)==(46); - if ($187) { - $188 = HEAP32[$i>>2]|0; - $189 = (($188) + 1)|0; - HEAP32[$i>>2] = $189; - while(1) { - $190 = HEAP32[$i>>2]|0; - $191 = HEAP32[$1>>2]|0; - $192 = (($191) + ($190)|0); - $193 = HEAP8[$192>>0]|0; - $194 = $193&255; - $195 = (48 + ($194)|0); - $196 = HEAP8[$195>>0]|0; - $197 = $196&255; - $198 = $197 & 4; - $199 = ($198|0)!=(0); - if (!($199)) { - break; - } - $200 = HEAP32[$i>>2]|0; - $201 = (($200) + 1)|0; - HEAP32[$i>>2] = $201; - } - $202 = HEAP32[$2>>2]|0; - HEAP32[$202>>2] = 133; - } - $203 = HEAP32[$i>>2]|0; - $204 = HEAP32[$1>>2]|0; - $205 = (($204) + ($203)|0); - $206 = HEAP8[$205>>0]|0; - $207 = $206&255; - $208 = ($207|0)==(101); - if ($208) { - label = 75; - } else { - $209 = HEAP32[$i>>2]|0; - $210 = HEAP32[$1>>2]|0; - $211 = (($210) + ($209)|0); - $212 = HEAP8[$211>>0]|0; - $213 = $212&255; - $214 = ($213|0)==(69); - if ($214) { - label = 75; - } - } - do { - if ((label|0) == 75) { - $215 = HEAP32[$i>>2]|0; - $216 = (($215) + 1)|0; - $217 = HEAP32[$1>>2]|0; - $218 = (($217) + ($216)|0); - $219 = HEAP8[$218>>0]|0; - $220 = $219&255; - $221 = (48 + ($220)|0); - $222 = HEAP8[$221>>0]|0; - $223 = $222&255; - $224 = $223 & 4; - $225 = ($224|0)!=(0); - if (!($225)) { - $226 = HEAP32[$i>>2]|0; - $227 = (($226) + 1)|0; - $228 = HEAP32[$1>>2]|0; - $229 = (($228) + ($227)|0); - $230 = HEAP8[$229>>0]|0; - $231 = $230&255; - $232 = ($231|0)==(43); - if (!($232)) { - $233 = HEAP32[$i>>2]|0; - $234 = (($233) + 1)|0; - $235 = HEAP32[$1>>2]|0; - $236 = (($235) + ($234)|0); - $237 = HEAP8[$236>>0]|0; - $238 = $237&255; - $239 = ($238|0)==(45); - if (!($239)) { - break; - } - } - $240 = HEAP32[$i>>2]|0; - $241 = (($240) + 2)|0; - $242 = HEAP32[$1>>2]|0; - $243 = (($242) + ($241)|0); - $244 = HEAP8[$243>>0]|0; - $245 = $244&255; - $246 = (48 + ($245)|0); - $247 = HEAP8[$246>>0]|0; - $248 = $247&255; - $249 = $248 & 4; - $250 = ($249|0)!=(0); - if (!($250)) { - break; - } - } - $251 = HEAP32[$i>>2]|0; - $252 = (($251) + 2)|0; - HEAP32[$i>>2] = $252; - while(1) { - $253 = HEAP32[$i>>2]|0; - $254 = HEAP32[$1>>2]|0; - $255 = (($254) + ($253)|0); - $256 = HEAP8[$255>>0]|0; - $257 = $256&255; - $258 = (48 + ($257)|0); - $259 = HEAP8[$258>>0]|0; - $260 = $259&255; - $261 = $260 & 4; - $262 = ($261|0)!=(0); - if (!($262)) { - break; - } - $263 = HEAP32[$i>>2]|0; - $264 = (($263) + 1)|0; - HEAP32[$i>>2] = $264; - } - $265 = HEAP32[$2>>2]|0; - HEAP32[$265>>2] = 133; - } - } while(0); - while(1) { - $266 = HEAP32[$i>>2]|0; - $267 = HEAP32[$1>>2]|0; - $268 = (($267) + ($266)|0); - $269 = HEAP8[$268>>0]|0; - $270 = $269&255; - $271 = (48 + ($270)|0); - $272 = HEAP8[$271>>0]|0; - $273 = $272&255; - $274 = $273 & 70; - $275 = ($274|0)!=(0); - if (!($275)) { - break; - } - $276 = HEAP32[$2>>2]|0; - HEAP32[$276>>2] = 150; - $277 = HEAP32[$i>>2]|0; - $278 = (($277) + 1)|0; - HEAP32[$i>>2] = $278; - } - $279 = HEAP32[$i>>2]|0; - HEAP32[$0>>2] = $279; - $447 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($447|0); -} -function _sqlite3DbStrNDup($db,$z,$n) { - $db = $db|0; - $z = $z|0; - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $zNew = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $zNew = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $z; - HEAP32[$3>>2] = $n; - $4 = HEAP32[$2>>2]|0; - $5 = ($4|0)==(0|0); - if ($5) { - HEAP32[$0>>2] = 0; - $19 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($19|0); - } - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$3>>2]|0; - $8 = (($7) + 1)|0; - $9 = (_sqlite3DbMallocRaw($6,$8)|0); - HEAP32[$zNew>>2] = $9; - $10 = HEAP32[$zNew>>2]|0; - $11 = ($10|0)!=(0|0); - if ($11) { - $12 = HEAP32[$zNew>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = HEAP32[$3>>2]|0; - _memcpy(($12|0),($13|0),($14|0))|0; - $15 = HEAP32[$3>>2]|0; - $16 = HEAP32[$zNew>>2]|0; - $17 = (($16) + ($15)|0); - HEAP8[$17>>0] = 0; - } - $18 = HEAP32[$zNew>>2]|0; - HEAP32[$0>>2] = $18; - $19 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($19|0); -} -function _sqlite3Dequote($z) { - $z = $z|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $j = 0, $quote = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $quote = sp + 16|0; - $i = sp + 4|0; - $j = sp; - HEAP32[$1>>2] = $z; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0|0); - if ($3) { - HEAP32[$0>>2] = -1; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); - } - $4 = HEAP32[$1>>2]|0; - $5 = HEAP8[$4>>0]|0; - HEAP8[$quote>>0] = $5; - $6 = HEAP8[$quote>>0]|0; - $7 = $6 << 24 >> 24; - if ((($7|0) == 91)) { - HEAP8[$quote>>0] = 93; - } else if (!((($7|0) == 96) | (($7|0) == 34) | (($7|0) == 39))) { - HEAP32[$0>>2] = -1; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); - } - HEAP32[$i>>2] = 1; - HEAP32[$j>>2] = 0; - while(1) { - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + ($8)|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11 << 24 >> 24; - $13 = HEAP8[$quote>>0]|0; - $14 = $13 << 24 >> 24; - $15 = ($12|0)==($14|0); - $16 = HEAP32[$i>>2]|0; - if ($15) { - $17 = (($16) + 1)|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + ($17)|0); - $20 = HEAP8[$19>>0]|0; - $21 = $20 << 24 >> 24; - $22 = HEAP8[$quote>>0]|0; - $23 = $22 << 24 >> 24; - $24 = ($21|0)==($23|0); - if (!($24)) { - break; - } - $25 = HEAP8[$quote>>0]|0; - $26 = HEAP32[$j>>2]|0; - $27 = (($26) + 1)|0; - HEAP32[$j>>2] = $27; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + ($26)|0); - HEAP8[$29>>0] = $25; - $30 = HEAP32[$i>>2]|0; - $31 = (($30) + 1)|0; - HEAP32[$i>>2] = $31; - } else { - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + ($16)|0); - $34 = HEAP8[$33>>0]|0; - $35 = HEAP32[$j>>2]|0; - $36 = (($35) + 1)|0; - HEAP32[$j>>2] = $36; - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + ($35)|0); - HEAP8[$38>>0] = $34; - } - $39 = HEAP32[$i>>2]|0; - $40 = (($39) + 1)|0; - HEAP32[$i>>2] = $40; - } - $41 = HEAP32[$j>>2]|0; - $42 = HEAP32[$1>>2]|0; - $43 = (($42) + ($41)|0); - HEAP8[$43>>0] = 0; - $44 = HEAP32[$j>>2]|0; - HEAP32[$0>>2] = $44; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); -} -function _juliandayFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0.0, $16 = 0.0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $x = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 56|0; - $1 = sp + 52|0; - $2 = sp + 48|0; - $x = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = (_isDate($3,$4,$5,$x)|0); - $7 = ($6|0)==(0); - if (!($7)) { - STACKTOP = sp;return; - } - _computeJD($x); - $8 = HEAP32[$0>>2]|0; - $9 = $x; - $10 = $9; - $11 = HEAP32[$10>>2]|0; - $12 = (($9) + 4)|0; - $13 = $12; - $14 = HEAP32[$13>>2]|0; - $15 = (+($11>>>0)) + (4294967296.0*(+($14|0))); - $16 = $15 / 8.64E+7; - _sqlite3_result_double($8,$16); - STACKTOP = sp;return; -} -function _dateFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $x = 0, $zBuf = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 176|0; - $vararg_buffer = sp + 48|0; - $0 = sp + 68|0; - $1 = sp + 64|0; - $2 = sp + 60|0; - $x = sp; - $zBuf = sp + 72|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = (_isDate($3,$4,$5,$x)|0); - $7 = ($6|0)==(0); - if (!($7)) { - STACKTOP = sp;return; - } - _computeYMD($x); - $8 = (($x) + 8|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($x) + 12|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($x) + 16|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$vararg_buffer>>2] = $9; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $11; - $vararg_ptr2 = (($vararg_buffer) + 8|0); - HEAP32[$vararg_ptr2>>2] = $13; - (_sqlite3_snprintf(100,$zBuf,9576,$vararg_buffer)|0); - $14 = HEAP32[$0>>2]|0; - _sqlite3_result_text($14,$zBuf,-1,(-1)); - STACKTOP = sp;return; -} -function _timeFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $x = 0; - var $zBuf = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 176|0; - $vararg_buffer = sp + 48|0; - $0 = sp + 68|0; - $1 = sp + 64|0; - $2 = sp + 60|0; - $x = sp; - $zBuf = sp + 72|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = (_isDate($3,$4,$5,$x)|0); - $7 = ($6|0)==(0); - if (!($7)) { - STACKTOP = sp;return; - } - _computeHMS($x); - $8 = (($x) + 20|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($x) + 24|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($x) + 32|0); - $13 = +HEAPF64[$12>>3]; - $14 = (~~(($13))); - HEAP32[$vararg_buffer>>2] = $9; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $11; - $vararg_ptr2 = (($vararg_buffer) + 8|0); - HEAP32[$vararg_ptr2>>2] = $14; - (_sqlite3_snprintf(100,$zBuf,9560,$vararg_buffer)|0); - $15 = HEAP32[$0>>2]|0; - _sqlite3_result_text($15,$zBuf,-1,(-1)); - STACKTOP = sp;return; -} -function _datetimeFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $x = 0, $zBuf = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 192|0; - $vararg_buffer = sp + 48|0; - $0 = sp + 80|0; - $1 = sp + 76|0; - $2 = sp + 72|0; - $x = sp; - $zBuf = sp + 84|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = (_isDate($3,$4,$5,$x)|0); - $7 = ($6|0)==(0); - if (!($7)) { - STACKTOP = sp;return; - } - _computeYMD_HMS($x); - $8 = (($x) + 8|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($x) + 12|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($x) + 16|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($x) + 20|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($x) + 24|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($x) + 32|0); - $19 = +HEAPF64[$18>>3]; - $20 = (~~(($19))); - HEAP32[$vararg_buffer>>2] = $9; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $11; - $vararg_ptr2 = (($vararg_buffer) + 8|0); - HEAP32[$vararg_ptr2>>2] = $13; - $vararg_ptr3 = (($vararg_buffer) + 12|0); - HEAP32[$vararg_ptr3>>2] = $15; - $vararg_ptr4 = (($vararg_buffer) + 16|0); - HEAP32[$vararg_ptr4>>2] = $17; - $vararg_ptr5 = (($vararg_buffer) + 20|0); - HEAP32[$vararg_ptr5>>2] = $20; - (_sqlite3_snprintf(100,$zBuf,9528,$vararg_buffer)|0); - $21 = HEAP32[$0>>2]|0; - _sqlite3_result_text($21,$zBuf,-1,(-1)); - STACKTOP = sp;return; -} -function _strftimeFunc($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0.0, $187 = 0.0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0.0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0.0, $272 = 0.0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0.0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; - var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; - var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; - var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0, $j = 0, $n = 0, $nDay = 0, $s = 0, $vararg_buffer28 = 0, $wd = 0, $x = 0, $y = 0, $z = 0; - var $zBuf = 0, $zFmt = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 272|0; - $vararg_buffer28 = sp + 112|0; - $0 = sp + 156|0; - $1 = sp + 152|0; - $2 = sp + 148|0; - $x = sp + 64|0; - $n = sp + 56|0; - $i = sp + 144|0; - $j = sp + 140|0; - $z = sp + 136|0; - $db = sp + 132|0; - $zFmt = sp + 128|0; - $zBuf = sp + 160|0; - $s = sp + 48|0; - $nDay = sp + 124|0; - $y = sp; - $wd = sp + 120|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_text($4)|0); - HEAP32[$zFmt>>2] = $5; - $6 = HEAP32[$zFmt>>2]|0; - $7 = ($6|0)==(0|0); - if ($7) { - STACKTOP = sp;return; - } - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) - 1)|0; - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 4|0); - $13 = (_isDate($8,$10,$12,$x)|0); - $14 = ($13|0)!=(0); - if ($14) { - STACKTOP = sp;return; - } - $15 = HEAP32[$0>>2]|0; - $16 = (_sqlite3_context_db_handle($15)|0); - HEAP32[$db>>2] = $16; - HEAP32[$i>>2] = 0; - $17 = $n; - $18 = $17; - HEAP32[$18>>2] = 1; - $19 = (($17) + 4)|0; - $20 = $19; - HEAP32[$20>>2] = 0; - L7: while(1) { - $21 = HEAP32[$i>>2]|0; - $22 = HEAP32[$zFmt>>2]|0; - $23 = (($22) + ($21)|0); - $24 = HEAP8[$23>>0]|0; - $25 = ($24<<24>>24)!=(0); - if (!($25)) { - break; - } - $26 = HEAP32[$i>>2]|0; - $27 = HEAP32[$zFmt>>2]|0; - $28 = (($27) + ($26)|0); - $29 = HEAP8[$28>>0]|0; - $30 = $29 << 24 >> 24; - $31 = ($30|0)==(37); - if ($31) { - $32 = HEAP32[$i>>2]|0; - $33 = (($32) + 1)|0; - $34 = HEAP32[$zFmt>>2]|0; - $35 = (($34) + ($33)|0); - $36 = HEAP8[$35>>0]|0; - $37 = $36 << 24 >> 24; - switch ($37|0) { - case 74: case 115: { - $86 = $n; - $87 = $86; - $88 = HEAP32[$87>>2]|0; - $89 = (($86) + 4)|0; - $90 = $89; - $91 = HEAP32[$90>>2]|0; - $92 = (_i64Add(($88|0),($91|0),50,0)|0); - $93 = tempRet0; - $94 = $n; - $95 = $94; - HEAP32[$95>>2] = $92; - $96 = (($94) + 4)|0; - $97 = $96; - HEAP32[$97>>2] = $93; - break; - } - case 89: { - $74 = $n; - $75 = $74; - $76 = HEAP32[$75>>2]|0; - $77 = (($74) + 4)|0; - $78 = $77; - $79 = HEAP32[$78>>2]|0; - $80 = (_i64Add(($76|0),($79|0),8,0)|0); - $81 = tempRet0; - $82 = $n; - $83 = $82; - HEAP32[$83>>2] = $80; - $84 = (($82) + 4)|0; - $85 = $84; - HEAP32[$85>>2] = $81; - break; - } - case 87: case 83: case 77: case 109: case 72: case 100: { - $38 = $n; - $39 = $38; - $40 = HEAP32[$39>>2]|0; - $41 = (($38) + 4)|0; - $42 = $41; - $43 = HEAP32[$42>>2]|0; - $44 = (_i64Add(($40|0),($43|0),1,0)|0); - $45 = tempRet0; - $46 = $n; - $47 = $46; - HEAP32[$47>>2] = $44; - $48 = (($46) + 4)|0; - $49 = $48; - HEAP32[$49>>2] = $45; - break; - } - case 102: { - $50 = $n; - $51 = $50; - $52 = HEAP32[$51>>2]|0; - $53 = (($50) + 4)|0; - $54 = $53; - $55 = HEAP32[$54>>2]|0; - $56 = (_i64Add(($52|0),($55|0),8,0)|0); - $57 = tempRet0; - $58 = $n; - $59 = $58; - HEAP32[$59>>2] = $56; - $60 = (($58) + 4)|0; - $61 = $60; - HEAP32[$61>>2] = $57; - break; - } - case 37: case 119: { - break; - } - case 106: { - $62 = $n; - $63 = $62; - $64 = HEAP32[$63>>2]|0; - $65 = (($62) + 4)|0; - $66 = $65; - $67 = HEAP32[$66>>2]|0; - $68 = (_i64Add(($64|0),($67|0),3,0)|0); - $69 = tempRet0; - $70 = $n; - $71 = $70; - HEAP32[$71>>2] = $68; - $72 = (($70) + 4)|0; - $73 = $72; - HEAP32[$73>>2] = $69; - break; - } - default: { - label = 43; - break L7; - } - } - $98 = HEAP32[$i>>2]|0; - $99 = (($98) + 1)|0; - HEAP32[$i>>2] = $99; - } - $100 = HEAP32[$i>>2]|0; - $101 = (($100) + 1)|0; - HEAP32[$i>>2] = $101; - $102 = $n; - $103 = $102; - $104 = HEAP32[$103>>2]|0; - $105 = (($102) + 4)|0; - $106 = $105; - $107 = HEAP32[$106>>2]|0; - $108 = (_i64Add(($104|0),($107|0),1,0)|0); - $109 = tempRet0; - $110 = $n; - $111 = $110; - HEAP32[$111>>2] = $108; - $112 = (($110) + 4)|0; - $113 = $112; - HEAP32[$113>>2] = $109; - } - if ((label|0) == 43) { - STACKTOP = sp;return; - } - $114 = $n; - $115 = $114; - $116 = HEAP32[$115>>2]|0; - $117 = (($114) + 4)|0; - $118 = $117; - $119 = HEAP32[$118>>2]|0; - $120 = ($119>>>0)<(0); - $121 = ($119|0)==(0); - $122 = ($116>>>0)<(100); - $123 = $121 & $122; - $124 = $120 | $123; - if ($124) { - HEAP32[$z>>2] = $zBuf; - } else { - $125 = $n; - $126 = $125; - $127 = HEAP32[$126>>2]|0; - $128 = (($125) + 4)|0; - $129 = $128; - $130 = HEAP32[$129>>2]|0; - $131 = HEAP32[$db>>2]|0; - $132 = (($131) + 88|0); - $133 = HEAP32[$132>>2]|0; - $134 = ($133|0)<(0); - $135 = $134 << 31 >> 31; - $136 = ($130>>>0)>($135>>>0); - $137 = ($130|0)==($135|0); - $138 = ($127>>>0)>($133>>>0); - $139 = $137 & $138; - $140 = $136 | $139; - if ($140) { - $141 = HEAP32[$0>>2]|0; - _sqlite3_result_error_toobig($141); - STACKTOP = sp;return; - } - $142 = HEAP32[$db>>2]|0; - $143 = $n; - $144 = $143; - $145 = HEAP32[$144>>2]|0; - $146 = (($143) + 4)|0; - $147 = $146; - $148 = HEAP32[$147>>2]|0; - $149 = (_sqlite3DbMallocRaw($142,$145)|0); - HEAP32[$z>>2] = $149; - $150 = HEAP32[$z>>2]|0; - $151 = ($150|0)==(0|0); - if ($151) { - $152 = HEAP32[$0>>2]|0; - _sqlite3_result_error_nomem($152); - STACKTOP = sp;return; - } - } - _computeJD($x); - _computeYMD_HMS($x); - HEAP32[$j>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $153 = HEAP32[$i>>2]|0; - $154 = HEAP32[$zFmt>>2]|0; - $155 = (($154) + ($153)|0); - $156 = HEAP8[$155>>0]|0; - $157 = ($156<<24>>24)!=(0); - if (!($157)) { - break; - } - $158 = HEAP32[$i>>2]|0; - $159 = HEAP32[$zFmt>>2]|0; - $160 = (($159) + ($158)|0); - $161 = HEAP8[$160>>0]|0; - $162 = $161 << 24 >> 24; - $163 = ($162|0)!=(37); - $164 = HEAP32[$i>>2]|0; - L36: do { - if ($163) { - $165 = HEAP32[$zFmt>>2]|0; - $166 = (($165) + ($164)|0); - $167 = HEAP8[$166>>0]|0; - $168 = HEAP32[$j>>2]|0; - $169 = (($168) + 1)|0; - HEAP32[$j>>2] = $169; - $170 = HEAP32[$z>>2]|0; - $171 = (($170) + ($168)|0); - HEAP8[$171>>0] = $167; - } else { - $172 = (($164) + 1)|0; - HEAP32[$i>>2] = $172; - $173 = HEAP32[$i>>2]|0; - $174 = HEAP32[$zFmt>>2]|0; - $175 = (($174) + ($173)|0); - $176 = HEAP8[$175>>0]|0; - $177 = $176 << 24 >> 24; - do { - switch ($177|0) { - case 77: { - $286 = HEAP32[$j>>2]|0; - $287 = HEAP32[$z>>2]|0; - $288 = (($287) + ($286)|0); - $289 = (($x) + 24|0); - $290 = HEAP32[$289>>2]|0; - HEAP32[$vararg_buffer28>>2] = $290; - (_sqlite3_snprintf(3,$288,9328,$vararg_buffer28)|0); - $291 = HEAP32[$j>>2]|0; - $292 = (($291) + 2)|0; - HEAP32[$j>>2] = $292; - break L36; - break; - } - case 100: { - $178 = HEAP32[$j>>2]|0; - $179 = HEAP32[$z>>2]|0; - $180 = (($179) + ($178)|0); - $181 = (($x) + 16|0); - $182 = HEAP32[$181>>2]|0; - HEAP32[$vararg_buffer28>>2] = $182; - (_sqlite3_snprintf(3,$180,9328,$vararg_buffer28)|0); - $183 = HEAP32[$j>>2]|0; - $184 = (($183) + 2)|0; - HEAP32[$j>>2] = $184; - break L36; - break; - } - case 115: { - $293 = HEAP32[$j>>2]|0; - $294 = HEAP32[$z>>2]|0; - $295 = (($294) + ($293)|0); - $296 = $x; - $297 = $296; - $298 = HEAP32[$297>>2]|0; - $299 = (($296) + 4)|0; - $300 = $299; - $301 = HEAP32[$300>>2]|0; - $302 = (___divdi3(($298|0),($301|0),1000,0)|0); - $303 = tempRet0; - $304 = (_i64Subtract(($302|0),($303|0),413362496,49)|0); - $305 = tempRet0; - $306 = $vararg_buffer28; - $307 = $306; - HEAP32[$307>>2] = $304; - $308 = (($306) + 4)|0; - $309 = $308; - HEAP32[$309>>2] = $305; - (_sqlite3_snprintf(30,$295,9360,$vararg_buffer28)|0); - $310 = HEAP32[$j>>2]|0; - $311 = HEAP32[$z>>2]|0; - $312 = (($311) + ($310)|0); - $313 = (_sqlite3Strlen30($312)|0); - $314 = HEAP32[$j>>2]|0; - $315 = (($314) + ($313))|0; - HEAP32[$j>>2] = $315; - break L36; - break; - } - case 74: { - $262 = HEAP32[$j>>2]|0; - $263 = HEAP32[$z>>2]|0; - $264 = (($263) + ($262)|0); - $265 = $x; - $266 = $265; - $267 = HEAP32[$266>>2]|0; - $268 = (($265) + 4)|0; - $269 = $268; - $270 = HEAP32[$269>>2]|0; - $271 = (+($267>>>0)) + (4294967296.0*(+($270|0))); - $272 = $271 / 8.64E+7; - HEAPF64[tempDoublePtr>>3]=$272;HEAP32[$vararg_buffer28>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_buffer28+4>>2]=HEAP32[tempDoublePtr+4>>2]; - (_sqlite3_snprintf(20,$264,9352,$vararg_buffer28)|0); - $273 = HEAP32[$j>>2]|0; - $274 = HEAP32[$z>>2]|0; - $275 = (($274) + ($273)|0); - $276 = (_sqlite3Strlen30($275)|0); - $277 = HEAP32[$j>>2]|0; - $278 = (($277) + ($276))|0; - HEAP32[$j>>2] = $278; - break L36; - break; - } - case 89: { - $344 = HEAP32[$j>>2]|0; - $345 = HEAP32[$z>>2]|0; - $346 = (($345) + ($344)|0); - $347 = (($x) + 8|0); - $348 = HEAP32[$347>>2]|0; - HEAP32[$vararg_buffer28>>2] = $348; - (_sqlite3_snprintf(5,$346,9368,$vararg_buffer28)|0); - $349 = HEAP32[$j>>2]|0; - $350 = HEAP32[$z>>2]|0; - $351 = (($350) + ($349)|0); - $352 = (_sqlite3Strlen30($351)|0); - $353 = HEAP32[$j>>2]|0; - $354 = (($353) + ($352))|0; - HEAP32[$j>>2] = $354; - break L36; - break; - } - case 83: { - $316 = HEAP32[$j>>2]|0; - $317 = HEAP32[$z>>2]|0; - $318 = (($317) + ($316)|0); - $319 = (($x) + 32|0); - $320 = +HEAPF64[$319>>3]; - $321 = (~~(($320))); - HEAP32[$vararg_buffer28>>2] = $321; - (_sqlite3_snprintf(3,$318,9328,$vararg_buffer28)|0); - $322 = HEAP32[$j>>2]|0; - $323 = (($322) + 2)|0; - HEAP32[$j>>2] = $323; - break L36; - break; - } - case 72: { - $199 = HEAP32[$j>>2]|0; - $200 = HEAP32[$z>>2]|0; - $201 = (($200) + ($199)|0); - $202 = (($x) + 20|0); - $203 = HEAP32[$202>>2]|0; - HEAP32[$vararg_buffer28>>2] = $203; - (_sqlite3_snprintf(3,$201,9328,$vararg_buffer28)|0); - $204 = HEAP32[$j>>2]|0; - $205 = (($204) + 2)|0; - HEAP32[$j>>2] = $205; - break L36; - break; - } - case 119: { - $324 = $x; - $325 = $324; - $326 = HEAP32[$325>>2]|0; - $327 = (($324) + 4)|0; - $328 = $327; - $329 = HEAP32[$328>>2]|0; - $330 = (_i64Add(($326|0),($329|0),129600000,0)|0); - $331 = tempRet0; - $332 = (___divdi3(($330|0),($331|0),86400000,0)|0); - $333 = tempRet0; - $334 = (___remdi3(($332|0),($333|0),7,0)|0); - $335 = tempRet0; - $336 = $334&255; - $337 = $336 << 24 >> 24; - $338 = (($337) + 48)|0; - $339 = $338&255; - $340 = HEAP32[$j>>2]|0; - $341 = (($340) + 1)|0; - HEAP32[$j>>2] = $341; - $342 = HEAP32[$z>>2]|0; - $343 = (($342) + ($340)|0); - HEAP8[$343>>0] = $339; - break L36; - break; - } - case 109: { - $279 = HEAP32[$j>>2]|0; - $280 = HEAP32[$z>>2]|0; - $281 = (($280) + ($279)|0); - $282 = (($x) + 12|0); - $283 = HEAP32[$282>>2]|0; - HEAP32[$vararg_buffer28>>2] = $283; - (_sqlite3_snprintf(3,$281,9328,$vararg_buffer28)|0); - $284 = HEAP32[$j>>2]|0; - $285 = (($284) + 2)|0; - HEAP32[$j>>2] = $285; - break L36; - break; - } - case 106: case 87: { - dest=$y+0|0; src=$x+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $206 = (($y) + 42|0); - HEAP8[$206>>0] = 0; - $207 = (($y) + 12|0); - HEAP32[$207>>2] = 1; - $208 = (($y) + 16|0); - HEAP32[$208>>2] = 1; - _computeJD($y); - $209 = $x; - $210 = $209; - $211 = HEAP32[$210>>2]|0; - $212 = (($209) + 4)|0; - $213 = $212; - $214 = HEAP32[$213>>2]|0; - $215 = $y; - $216 = $215; - $217 = HEAP32[$216>>2]|0; - $218 = (($215) + 4)|0; - $219 = $218; - $220 = HEAP32[$219>>2]|0; - $221 = (_i64Subtract(($211|0),($214|0),($217|0),($220|0))|0); - $222 = tempRet0; - $223 = (_i64Add(($221|0),($222|0),43200000,0)|0); - $224 = tempRet0; - $225 = (___divdi3(($223|0),($224|0),86400000,0)|0); - $226 = tempRet0; - HEAP32[$nDay>>2] = $225; - $227 = HEAP32[$i>>2]|0; - $228 = HEAP32[$zFmt>>2]|0; - $229 = (($228) + ($227)|0); - $230 = HEAP8[$229>>0]|0; - $231 = $230 << 24 >> 24; - $232 = ($231|0)==(87); - if ($232) { - $233 = $x; - $234 = $233; - $235 = HEAP32[$234>>2]|0; - $236 = (($233) + 4)|0; - $237 = $236; - $238 = HEAP32[$237>>2]|0; - $239 = (_i64Add(($235|0),($238|0),43200000,0)|0); - $240 = tempRet0; - $241 = (___divdi3(($239|0),($240|0),86400000,0)|0); - $242 = tempRet0; - $243 = (___remdi3(($241|0),($242|0),7,0)|0); - $244 = tempRet0; - HEAP32[$wd>>2] = $243; - $245 = HEAP32[$j>>2]|0; - $246 = HEAP32[$z>>2]|0; - $247 = (($246) + ($245)|0); - $248 = HEAP32[$nDay>>2]|0; - $249 = (($248) + 7)|0; - $250 = HEAP32[$wd>>2]|0; - $251 = (($249) - ($250))|0; - $252 = (($251|0) / 7)&-1; - HEAP32[$vararg_buffer28>>2] = $252; - (_sqlite3_snprintf(3,$247,9328,$vararg_buffer28)|0); - $253 = HEAP32[$j>>2]|0; - $254 = (($253) + 2)|0; - HEAP32[$j>>2] = $254; - break L36; - } else { - $255 = HEAP32[$j>>2]|0; - $256 = HEAP32[$z>>2]|0; - $257 = (($256) + ($255)|0); - $258 = HEAP32[$nDay>>2]|0; - $259 = (($258) + 1)|0; - HEAP32[$vararg_buffer28>>2] = $259; - (_sqlite3_snprintf(4,$257,9344,$vararg_buffer28)|0); - $260 = HEAP32[$j>>2]|0; - $261 = (($260) + 3)|0; - HEAP32[$j>>2] = $261; - break L36; - } - break; - } - case 102: { - $185 = (($x) + 32|0); - $186 = +HEAPF64[$185>>3]; - HEAPF64[$s>>3] = $186; - $187 = +HEAPF64[$s>>3]; - $188 = $187 > 59.9990000000000023306; - if ($188) { - HEAPF64[$s>>3] = 59.9990000000000023306; - } - $189 = HEAP32[$j>>2]|0; - $190 = HEAP32[$z>>2]|0; - $191 = (($190) + ($189)|0); - $192 = +HEAPF64[$s>>3]; - HEAPF64[tempDoublePtr>>3]=$192;HEAP32[$vararg_buffer28>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_buffer28+4>>2]=HEAP32[tempDoublePtr+4>>2]; - (_sqlite3_snprintf(7,$191,9336,$vararg_buffer28)|0); - $193 = HEAP32[$j>>2]|0; - $194 = HEAP32[$z>>2]|0; - $195 = (($194) + ($193)|0); - $196 = (_sqlite3Strlen30($195)|0); - $197 = HEAP32[$j>>2]|0; - $198 = (($197) + ($196))|0; - HEAP32[$j>>2] = $198; - break L36; - break; - } - default: { - $355 = HEAP32[$j>>2]|0; - $356 = (($355) + 1)|0; - HEAP32[$j>>2] = $356; - $357 = HEAP32[$z>>2]|0; - $358 = (($357) + ($355)|0); - HEAP8[$358>>0] = 37; - break L36; - } - } - } while(0); - } - } while(0); - $359 = HEAP32[$i>>2]|0; - $360 = (($359) + 1)|0; - HEAP32[$i>>2] = $360; - } - $361 = HEAP32[$j>>2]|0; - $362 = HEAP32[$z>>2]|0; - $363 = (($362) + ($361)|0); - HEAP8[$363>>0] = 0; - $364 = HEAP32[$0>>2]|0; - $365 = HEAP32[$z>>2]|0; - $366 = HEAP32[$z>>2]|0; - $367 = ($366|0)==($zBuf|0); - $368 = $367 ? (-1) : 16; - _sqlite3_result_text($364,$365,-1,$368); - STACKTOP = sp;return; -} -function _ctimeFunc($context,$NotUsed,$NotUsed2) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $NotUsed2 = $NotUsed2|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $NotUsed2; - $3 = HEAP32[$0>>2]|0; - _timeFunc($3,0,0); - STACKTOP = sp;return; -} -function _ctimestampFunc($context,$NotUsed,$NotUsed2) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $NotUsed2 = $NotUsed2|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $NotUsed2; - $3 = HEAP32[$0>>2]|0; - _datetimeFunc($3,0,0); - STACKTOP = sp;return; -} -function _cdateFunc($context,$NotUsed,$NotUsed2) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $NotUsed2 = $NotUsed2|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $NotUsed2; - $3 = HEAP32[$0>>2]|0; - _dateFunc($3,0,0); - STACKTOP = sp;return; -} -function _isDate($context,$argc,$argv,$p) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0.0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $eType = 0; - var $i = 0, $z = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $i = sp + 8|0; - $z = sp + 4|0; - $eType = sp; - HEAP32[$1>>2] = $context; - HEAP32[$2>>2] = $argc; - HEAP32[$3>>2] = $argv; - HEAP32[$4>>2] = $p; - $5 = HEAP32[$4>>2]|0; - dest=$5+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $6 = HEAP32[$2>>2]|0; - $7 = ($6|0)==(0); - if ($7) { - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$4>>2]|0; - $10 = (_setDateTimeToCurrent($8,$9)|0); - HEAP32[$0>>2] = $10; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); - } - $11 = HEAP32[$3>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = (_sqlite3_value_type($12)|0); - HEAP32[$eType>>2] = $13; - $14 = ($13|0)==(2); - do { - if ($14) { - label = 5; - } else { - $15 = HEAP32[$eType>>2]|0; - $16 = ($15|0)==(1); - if ($16) { - label = 5; - } else { - $31 = HEAP32[$3>>2]|0; - $32 = HEAP32[$31>>2]|0; - $33 = (_sqlite3_value_text($32)|0); - HEAP32[$z>>2] = $33; - $34 = HEAP32[$z>>2]|0; - $35 = ($34|0)!=(0|0); - if ($35) { - $36 = HEAP32[$1>>2]|0; - $37 = HEAP32[$z>>2]|0; - $38 = HEAP32[$4>>2]|0; - $39 = (_parseDateOrTime($36,$37,$38)|0); - $40 = ($39|0)!=(0); - if (!($40)) { - break; - } - } - HEAP32[$0>>2] = 1; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); - } - } - } while(0); - if ((label|0) == 5) { - $17 = HEAP32[$3>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = (+_sqlite3_value_double($18)); - $20 = $19 * 8.64E+7; - $21 = $20 + 0.5; - $22 = (~~$21)>>>0; - $23 = +Math_abs($21) >= 1.0 ? $21 > 0.0 ? (Math_min(+Math_floor($21 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($21 - +(~~$21 >>> 0)) / 4294967296.0) >>> 0 : 0; - $24 = HEAP32[$4>>2]|0; - $25 = $24; - $26 = $25; - HEAP32[$26>>2] = $22; - $27 = (($25) + 4)|0; - $28 = $27; - HEAP32[$28>>2] = $23; - $29 = HEAP32[$4>>2]|0; - $30 = (($29) + 42|0); - HEAP8[$30>>0] = 1; - } - HEAP32[$i>>2] = 1; - while(1) { - $41 = HEAP32[$i>>2]|0; - $42 = HEAP32[$2>>2]|0; - $43 = ($41|0)<($42|0); - if (!($43)) { - label = 15; - break; - } - $44 = HEAP32[$i>>2]|0; - $45 = HEAP32[$3>>2]|0; - $46 = (($45) + ($44<<2)|0); - $47 = HEAP32[$46>>2]|0; - $48 = (_sqlite3_value_text($47)|0); - HEAP32[$z>>2] = $48; - $49 = HEAP32[$z>>2]|0; - $50 = ($49|0)==(0|0); - if ($50) { - label = 13; - break; - } - $51 = HEAP32[$1>>2]|0; - $52 = HEAP32[$z>>2]|0; - $53 = HEAP32[$4>>2]|0; - $54 = (_parseModifier($51,$52,$53)|0); - $55 = ($54|0)!=(0); - if ($55) { - label = 13; - break; - } - $56 = HEAP32[$i>>2]|0; - $57 = (($56) + 1)|0; - HEAP32[$i>>2] = $57; - } - if ((label|0) == 13) { - HEAP32[$0>>2] = 1; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); - } - else if ((label|0) == 15) { - HEAP32[$0>>2] = 0; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); - } - return 0|0; -} -function _computeJD($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; - var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; - var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0.0, $47 = 0.0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; - var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0.0, $76 = 0.0, $77 = 0, $78 = 0; - var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; - var $97 = 0, $98 = 0, $99 = 0, $A = 0, $B = 0, $D = 0, $M = 0, $X1 = 0, $X2 = 0, $Y = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $Y = sp + 24|0; - $M = sp + 20|0; - $D = sp + 16|0; - $A = sp + 12|0; - $B = sp + 8|0; - $X1 = sp + 4|0; - $X2 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 42|0); - $3 = HEAP8[$2>>0]|0; - $4 = ($3<<24>>24)!=(0); - if ($4) { - STACKTOP = sp;return; - } - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 40|0); - $7 = HEAP8[$6>>0]|0; - $8 = ($7<<24>>24)!=(0); - if ($8) { - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 8|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$Y>>2] = $11; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 12|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$M>>2] = $14; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 16|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$D>>2] = $17; - } else { - HEAP32[$Y>>2] = 2000; - HEAP32[$M>>2] = 1; - HEAP32[$D>>2] = 1; - } - $18 = HEAP32[$M>>2]|0; - $19 = ($18|0)<=(2); - if ($19) { - $20 = HEAP32[$Y>>2]|0; - $21 = (($20) + -1)|0; - HEAP32[$Y>>2] = $21; - $22 = HEAP32[$M>>2]|0; - $23 = (($22) + 12)|0; - HEAP32[$M>>2] = $23; - } - $24 = HEAP32[$Y>>2]|0; - $25 = (($24|0) / 100)&-1; - HEAP32[$A>>2] = $25; - $26 = HEAP32[$A>>2]|0; - $27 = (2 - ($26))|0; - $28 = HEAP32[$A>>2]|0; - $29 = (($28|0) / 4)&-1; - $30 = (($27) + ($29))|0; - HEAP32[$B>>2] = $30; - $31 = HEAP32[$Y>>2]|0; - $32 = (($31) + 4716)|0; - $33 = ($32*36525)|0; - $34 = (($33|0) / 100)&-1; - HEAP32[$X1>>2] = $34; - $35 = HEAP32[$M>>2]|0; - $36 = (($35) + 1)|0; - $37 = ($36*306001)|0; - $38 = (($37|0) / 10000)&-1; - HEAP32[$X2>>2] = $38; - $39 = HEAP32[$X1>>2]|0; - $40 = HEAP32[$X2>>2]|0; - $41 = (($39) + ($40))|0; - $42 = HEAP32[$D>>2]|0; - $43 = (($41) + ($42))|0; - $44 = HEAP32[$B>>2]|0; - $45 = (($43) + ($44))|0; - $46 = (+($45|0)); - $47 = $46 - 1524.5; - $48 = $47 * 8.64E+7; - $49 = (~~$48)>>>0; - $50 = +Math_abs($48) >= 1.0 ? $48 > 0.0 ? (Math_min(+Math_floor($48 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($48 - +(~~$48 >>> 0)) / 4294967296.0) >>> 0 : 0; - $51 = HEAP32[$0>>2]|0; - $52 = $51; - $53 = $52; - HEAP32[$53>>2] = $49; - $54 = (($52) + 4)|0; - $55 = $54; - HEAP32[$55>>2] = $50; - $56 = HEAP32[$0>>2]|0; - $57 = (($56) + 42|0); - HEAP8[$57>>0] = 1; - $58 = HEAP32[$0>>2]|0; - $59 = (($58) + 41|0); - $60 = HEAP8[$59>>0]|0; - $61 = ($60<<24>>24)!=(0); - if (!($61)) { - STACKTOP = sp;return; - } - $62 = HEAP32[$0>>2]|0; - $63 = (($62) + 20|0); - $64 = HEAP32[$63>>2]|0; - $65 = Math_imul($64, 3600000)|0; - $66 = HEAP32[$0>>2]|0; - $67 = (($66) + 24|0); - $68 = HEAP32[$67>>2]|0; - $69 = ($68*60000)|0; - $70 = (($65) + ($69))|0; - $71 = ($70|0)<(0); - $72 = $71 << 31 >> 31; - $73 = HEAP32[$0>>2]|0; - $74 = (($73) + 32|0); - $75 = +HEAPF64[$74>>3]; - $76 = $75 * 1000.0; - $77 = (~~$76)>>>0; - $78 = +Math_abs($76) >= 1.0 ? $76 > 0.0 ? (Math_min(+Math_floor($76 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($76 - +(~~$76 >>> 0)) / 4294967296.0) >>> 0 : 0; - $79 = (_i64Add(($70|0),($72|0),($77|0),($78|0))|0); - $80 = tempRet0; - $81 = HEAP32[$0>>2]|0; - $82 = $81; - $83 = $82; - $84 = HEAP32[$83>>2]|0; - $85 = (($82) + 4)|0; - $86 = $85; - $87 = HEAP32[$86>>2]|0; - $88 = (_i64Add(($84|0),($87|0),($79|0),($80|0))|0); - $89 = tempRet0; - $90 = $81; - $91 = $90; - HEAP32[$91>>2] = $88; - $92 = (($90) + 4)|0; - $93 = $92; - HEAP32[$93>>2] = $89; - $94 = HEAP32[$0>>2]|0; - $95 = (($94) + 43|0); - $96 = HEAP8[$95>>0]|0; - $97 = ($96<<24>>24)!=(0); - if (!($97)) { - STACKTOP = sp;return; - } - $98 = HEAP32[$0>>2]|0; - $99 = (($98) + 28|0); - $100 = HEAP32[$99>>2]|0; - $101 = ($100*60000)|0; - $102 = ($101|0)<(0); - $103 = $102 << 31 >> 31; - $104 = HEAP32[$0>>2]|0; - $105 = $104; - $106 = $105; - $107 = HEAP32[$106>>2]|0; - $108 = (($105) + 4)|0; - $109 = $108; - $110 = HEAP32[$109>>2]|0; - $111 = (_i64Subtract(($107|0),($110|0),($101|0),($103|0))|0); - $112 = tempRet0; - $113 = $104; - $114 = $113; - HEAP32[$114>>2] = $111; - $115 = (($113) + 4)|0; - $116 = $115; - HEAP32[$116>>2] = $112; - $117 = HEAP32[$0>>2]|0; - $118 = (($117) + 40|0); - HEAP8[$118>>0] = 0; - $119 = HEAP32[$0>>2]|0; - $120 = (($119) + 41|0); - HEAP8[$120>>0] = 0; - $121 = HEAP32[$0>>2]|0; - $122 = (($121) + 43|0); - HEAP8[$122>>0] = 0; - STACKTOP = sp;return; -} -function _computeYMD_HMS($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - _computeYMD($1); - $2 = HEAP32[$0>>2]|0; - _computeHMS($2); - STACKTOP = sp;return; -} -function _computeYMD($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0.0; - var $27 = 0.0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0.0, $41 = 0.0, $42 = 0.0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0.0, $52 = 0, $53 = 0, $54 = 0.0, $55 = 0.0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $9 = 0, $A = 0, $B = 0, $C = 0, $D = 0, $E = 0, $X1 = 0, $Z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $Z = sp + 24|0; - $A = sp + 20|0; - $B = sp + 16|0; - $C = sp + 12|0; - $D = sp + 8|0; - $E = sp + 4|0; - $X1 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 40|0); - $3 = HEAP8[$2>>0]|0; - $4 = ($3<<24>>24)!=(0); - if ($4) { - STACKTOP = sp;return; - } - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 42|0); - $7 = HEAP8[$6>>0]|0; - $8 = ($7<<24>>24)!=(0); - $9 = HEAP32[$0>>2]|0; - if ($8) { - $15 = $9; - $16 = $15; - $17 = HEAP32[$16>>2]|0; - $18 = (($15) + 4)|0; - $19 = $18; - $20 = HEAP32[$19>>2]|0; - $21 = (_i64Add(($17|0),($20|0),43200000,0)|0); - $22 = tempRet0; - $23 = (___divdi3(($21|0),($22|0),86400000,0)|0); - $24 = tempRet0; - HEAP32[$Z>>2] = $23; - $25 = HEAP32[$Z>>2]|0; - $26 = (+($25|0)); - $27 = $26 - 1867216.25; - $28 = $27 / 36524.25; - $29 = (~~(($28))); - HEAP32[$A>>2] = $29; - $30 = HEAP32[$Z>>2]|0; - $31 = (($30) + 1)|0; - $32 = HEAP32[$A>>2]|0; - $33 = (($31) + ($32))|0; - $34 = HEAP32[$A>>2]|0; - $35 = (($34|0) / 4)&-1; - $36 = (($33) - ($35))|0; - HEAP32[$A>>2] = $36; - $37 = HEAP32[$A>>2]|0; - $38 = (($37) + 1524)|0; - HEAP32[$B>>2] = $38; - $39 = HEAP32[$B>>2]|0; - $40 = (+($39|0)); - $41 = $40 - 122.099999999999994316; - $42 = $41 / 365.25; - $43 = (~~(($42))); - HEAP32[$C>>2] = $43; - $44 = HEAP32[$C>>2]|0; - $45 = ($44*36525)|0; - $46 = (($45|0) / 100)&-1; - HEAP32[$D>>2] = $46; - $47 = HEAP32[$B>>2]|0; - $48 = HEAP32[$D>>2]|0; - $49 = (($47) - ($48))|0; - $50 = (+($49|0)); - $51 = $50 / 30.600100000000001188; - $52 = (~~(($51))); - HEAP32[$E>>2] = $52; - $53 = HEAP32[$E>>2]|0; - $54 = (+($53|0)); - $55 = 30.600100000000001188 * $54; - $56 = (~~(($55))); - HEAP32[$X1>>2] = $56; - $57 = HEAP32[$B>>2]|0; - $58 = HEAP32[$D>>2]|0; - $59 = (($57) - ($58))|0; - $60 = HEAP32[$X1>>2]|0; - $61 = (($59) - ($60))|0; - $62 = HEAP32[$0>>2]|0; - $63 = (($62) + 16|0); - HEAP32[$63>>2] = $61; - $64 = HEAP32[$E>>2]|0; - $65 = ($64|0)<(14); - $66 = HEAP32[$E>>2]|0; - $67 = (($66) - 1)|0; - $68 = (($66) - 13)|0; - $69 = $65 ? $67 : $68; - $70 = HEAP32[$0>>2]|0; - $71 = (($70) + 12|0); - HEAP32[$71>>2] = $69; - $72 = HEAP32[$0>>2]|0; - $73 = (($72) + 12|0); - $74 = HEAP32[$73>>2]|0; - $75 = ($74|0)>(2); - $76 = HEAP32[$C>>2]|0; - $77 = (($76) - 4716)|0; - $78 = (($76) - 4715)|0; - $79 = $75 ? $77 : $78; - $80 = HEAP32[$0>>2]|0; - $81 = (($80) + 8|0); - HEAP32[$81>>2] = $79; - } else { - $10 = (($9) + 8|0); - HEAP32[$10>>2] = 2000; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 12|0); - HEAP32[$12>>2] = 1; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 16|0); - HEAP32[$14>>2] = 1; - } - $82 = HEAP32[$0>>2]|0; - $83 = (($82) + 40|0); - HEAP8[$83>>0] = 1; - STACKTOP = sp;return; -} -function _computeHMS($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0; - var $27 = 0.0, $28 = 0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0.0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0.0, $53 = 0, $54 = 0, $55 = 0.0, $56 = 0.0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $s = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $s = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 41|0); - $3 = HEAP8[$2>>0]|0; - $4 = ($3<<24>>24)!=(0); - if ($4) { - STACKTOP = sp;return; - } - $5 = HEAP32[$0>>2]|0; - _computeJD($5); - $6 = HEAP32[$0>>2]|0; - $7 = $6; - $8 = $7; - $9 = HEAP32[$8>>2]|0; - $10 = (($7) + 4)|0; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = (_i64Add(($9|0),($12|0),43200000,0)|0); - $14 = tempRet0; - $15 = (___remdi3(($13|0),($14|0),86400000,0)|0); - $16 = tempRet0; - HEAP32[$s>>2] = $15; - $17 = HEAP32[$s>>2]|0; - $18 = (+($17|0)); - $19 = $18 / 1000.0; - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 32|0); - HEAPF64[$21>>3] = $19; - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 32|0); - $24 = +HEAPF64[$23>>3]; - $25 = (~~(($24))); - HEAP32[$s>>2] = $25; - $26 = HEAP32[$s>>2]|0; - $27 = (+($26|0)); - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 32|0); - $30 = +HEAPF64[$29>>3]; - $31 = $30 - $27; - HEAPF64[$29>>3] = $31; - $32 = HEAP32[$s>>2]|0; - $33 = (($32|0) / 3600)&-1; - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 20|0); - HEAP32[$35>>2] = $33; - $36 = HEAP32[$0>>2]|0; - $37 = (($36) + 20|0); - $38 = HEAP32[$37>>2]|0; - $39 = ($38*3600)|0; - $40 = HEAP32[$s>>2]|0; - $41 = (($40) - ($39))|0; - HEAP32[$s>>2] = $41; - $42 = HEAP32[$s>>2]|0; - $43 = (($42|0) / 60)&-1; - $44 = HEAP32[$0>>2]|0; - $45 = (($44) + 24|0); - HEAP32[$45>>2] = $43; - $46 = HEAP32[$s>>2]|0; - $47 = HEAP32[$0>>2]|0; - $48 = (($47) + 24|0); - $49 = HEAP32[$48>>2]|0; - $50 = ($49*60)|0; - $51 = (($46) - ($50))|0; - $52 = (+($51|0)); - $53 = HEAP32[$0>>2]|0; - $54 = (($53) + 32|0); - $55 = +HEAPF64[$54>>3]; - $56 = $55 + $52; - HEAPF64[$54>>3] = $56; - $57 = HEAP32[$0>>2]|0; - $58 = (($57) + 41|0); - HEAP8[$58>>0] = 1; - STACKTOP = sp;return; -} -function _setDateTimeToCurrent($context,$p) { - $context = $context|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$1>>2] = $context; - HEAP32[$2>>2] = $p; - $3 = HEAP32[$1>>2]|0; - $4 = (_sqlite3StmtCurrentTime($3)|0); - $5 = tempRet0; - $6 = HEAP32[$2>>2]|0; - $7 = $6; - $8 = $7; - HEAP32[$8>>2] = $4; - $9 = (($7) + 4)|0; - $10 = $9; - HEAP32[$10>>2] = $5; - $11 = HEAP32[$2>>2]|0; - $12 = $11; - $13 = $12; - $14 = HEAP32[$13>>2]|0; - $15 = (($12) + 4)|0; - $16 = $15; - $17 = HEAP32[$16>>2]|0; - $18 = ($17|0)>(0); - $19 = ($17|0)==(0); - $20 = ($14>>>0)>(0); - $21 = $19 & $20; - $22 = $18 | $21; - if ($22) { - $23 = HEAP32[$2>>2]|0; - $24 = (($23) + 42|0); - HEAP8[$24>>0] = 1; - HEAP32[$0>>2] = 0; - $25 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($25|0); - } else { - HEAP32[$0>>2] = 1; - $25 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($25|0); - } - return 0|0; -} -function _parseDateOrTime($context,$zDate,$p) { - $context = $context|0; - $zDate = $zDate|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0.0, $24 = 0.0, $25 = 0.0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $r = sp; - HEAP32[$1>>2] = $context; - HEAP32[$2>>2] = $zDate; - HEAP32[$3>>2] = $p; - $4 = HEAP32[$2>>2]|0; - $5 = HEAP32[$3>>2]|0; - $6 = (_parseYyyyMmDd($4,$5)|0); - $7 = ($6|0)==(0); - if ($7) { - HEAP32[$0>>2] = 0; - $35 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($35|0); - } - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$3>>2]|0; - $10 = (_parseHhMmSs($8,$9)|0); - $11 = ($10|0)==(0); - if ($11) { - HEAP32[$0>>2] = 0; - $35 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($35|0); - } - $12 = HEAP32[$2>>2]|0; - $13 = (_sqlite3_stricmp($12,9520)|0); - $14 = ($13|0)==(0); - if ($14) { - $15 = HEAP32[$1>>2]|0; - $16 = HEAP32[$3>>2]|0; - $17 = (_setDateTimeToCurrent($15,$16)|0); - HEAP32[$0>>2] = $17; - $35 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($35|0); - } - $18 = HEAP32[$2>>2]|0; - $19 = HEAP32[$2>>2]|0; - $20 = (_sqlite3Strlen30($19)|0); - $21 = (_sqlite3AtoF($18,$r,$20,1)|0); - $22 = ($21|0)!=(0); - if ($22) { - $23 = +HEAPF64[$r>>3]; - $24 = $23 * 8.64E+7; - $25 = $24 + 0.5; - $26 = (~~$25)>>>0; - $27 = +Math_abs($25) >= 1.0 ? $25 > 0.0 ? (Math_min(+Math_floor($25 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($25 - +(~~$25 >>> 0)) / 4294967296.0) >>> 0 : 0; - $28 = HEAP32[$3>>2]|0; - $29 = $28; - $30 = $29; - HEAP32[$30>>2] = $26; - $31 = (($29) + 4)|0; - $32 = $31; - HEAP32[$32>>2] = $27; - $33 = HEAP32[$3>>2]|0; - $34 = (($33) + 42|0); - HEAP8[$34>>0] = 1; - HEAP32[$0>>2] = 0; - $35 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($35|0); - } else { - HEAP32[$0>>2] = 1; - $35 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($35|0); - } - return 0|0; -} -function _parseModifier($pCtx,$zMod,$p) { - $pCtx = $pCtx|0; - $zMod = $zMod|0; - $p = $p|0; - var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; - var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; - var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0.0, $147 = 0, $148 = 0.0, $149 = 0.0, $15 = 0, $150 = 0; - var $151 = 0, $152 = 0, $153 = 0.0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; - var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; - var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; - var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; - var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; - var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; - var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; - var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0; - var $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0; - var $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0; - var $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0; - var $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0; - var $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0; - var $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0; - var $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0; - var $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0.0, $428 = 0, $429 = 0.0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0.0, $436 = 0.0, $437 = 0.0, $438 = 0.0, $439 = 0; - var $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0; - var $458 = 0, $459 = 0.0, $46 = 0, $460 = 0.0, $461 = 0.0, $462 = 0.0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0; - var $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0.0, $484 = 0.0, $485 = 0.0, $486 = 0.0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0; - var $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0.0, $508 = 0.0, $509 = 0.0, $51 = 0, $510 = 0.0; - var $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0; - var $53 = 0, $530 = 0, $531 = 0, $532 = 0.0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0; - var $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0.0, $563 = 0, $564 = 0, $565 = 0.0; - var $566 = 0.0, $567 = 0, $568 = 0.0, $569 = 0, $57 = 0, $570 = 0.0, $571 = 0.0, $572 = 0.0, $573 = 0.0, $574 = 0.0, $575 = 0.0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0; - var $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0.0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0; - var $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0.0, $609 = 0.0, $61 = 0, $610 = 0, $611 = 0.0, $612 = 0, $613 = 0.0, $614 = 0.0, $615 = 0.0, $616 = 0.0, $617 = 0.0, $618 = 0.0, $619 = 0; - var $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; - var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $Z = 0, $c1 = 0; - var $day = 0, $n = 0, $or$cond = 0, $r = 0, $rRounder = 0, $rc = 0, $tx = 0, $x = 0, $y = 0, $y1 = 0, $z = 0, $z2 = 0, $zBuf = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 160|0; - $0 = sp + 124|0; - $1 = sp + 120|0; - $2 = sp + 116|0; - $rc = sp + 112|0; - $n = sp + 108|0; - $r = sp + 80|0; - $z = sp + 104|0; - $zBuf = sp + 128|0; - $c1 = sp + 72|0; - $Z = sp + 64|0; - $rRounder = sp + 56|0; - $z2 = sp + 100|0; - $tx = sp + 8|0; - $day = sp; - $x = sp + 96|0; - $y = sp + 92|0; - $y1 = sp + 88|0; - HEAP32[$0>>2] = $pCtx; - HEAP32[$1>>2] = $zMod; - HEAP32[$2>>2] = $p; - HEAP32[$rc>>2] = 1; - HEAP32[$z>>2] = $zBuf; - HEAP32[$n>>2] = 0; - while(1) { - $3 = HEAP32[$n>>2]|0; - $4 = ($3|0)<(29); - if ($4) { - $5 = HEAP32[$n>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + ($5)|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8 << 24 >> 24; - $10 = ($9|0)!=(0); - $636 = $10; - } else { - $636 = 0; - } - $11 = HEAP32[$n>>2]|0; - if (!($636)) { - break; - } - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + ($11)|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14&255; - $16 = (696 + ($15)|0); - $17 = HEAP8[$16>>0]|0; - $18 = HEAP32[$n>>2]|0; - $19 = HEAP32[$z>>2]|0; - $20 = (($19) + ($18)|0); - HEAP8[$20>>0] = $17; - $21 = HEAP32[$n>>2]|0; - $22 = (($21) + 1)|0; - HEAP32[$n>>2] = $22; - } - $23 = HEAP32[$z>>2]|0; - $24 = (($23) + ($11)|0); - HEAP8[$24>>0] = 0; - $25 = HEAP32[$z>>2]|0; - $26 = HEAP8[$25>>0]|0; - $27 = $26 << 24 >> 24; - switch ($27|0) { - case 117: { - $50 = HEAP32[$z>>2]|0; - $51 = (_strcmp($50,9392)|0); - $52 = ($51|0)==(0); - if ($52) { - $53 = HEAP32[$2>>2]|0; - $54 = (($53) + 42|0); - $55 = HEAP8[$54>>0]|0; - $56 = $55 << 24 >> 24; - $57 = ($56|0)!=(0); - if ($57) { - $58 = HEAP32[$2>>2]|0; - $59 = $58; - $60 = $59; - $61 = HEAP32[$60>>2]|0; - $62 = (($59) + 4)|0; - $63 = $62; - $64 = HEAP32[$63>>2]|0; - $65 = (_i64Add(($61|0),($64|0),43200,0)|0); - $66 = tempRet0; - $67 = (___divdi3(($65|0),($66|0),86400,0)|0); - $68 = tempRet0; - $69 = (_i64Add(($67|0),($68|0),1045635584,49096)|0); - $70 = tempRet0; - $71 = HEAP32[$2>>2]|0; - $72 = $71; - $73 = $72; - HEAP32[$73>>2] = $69; - $74 = (($72) + 4)|0; - $75 = $74; - HEAP32[$75>>2] = $70; - $76 = HEAP32[$2>>2]|0; - _clearYMD_HMS_TZ($76); - HEAP32[$rc>>2] = 0; - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - } - $77 = HEAP32[$z>>2]|0; - $78 = (_strcmp($77,9408)|0); - $79 = ($78|0)==(0); - if (!($79)) { - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - $80 = HEAP32[$2>>2]|0; - _computeJD($80); - $81 = HEAP32[$2>>2]|0; - $82 = HEAP32[$0>>2]|0; - $83 = (_localtimeOffset($81,$82,$rc)|0); - $84 = tempRet0; - $85 = $c1; - $86 = $85; - HEAP32[$86>>2] = $83; - $87 = (($85) + 4)|0; - $88 = $87; - HEAP32[$88>>2] = $84; - $89 = HEAP32[$rc>>2]|0; - $90 = ($89|0)==(0); - if (!($90)) { - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - $91 = $c1; - $92 = $91; - $93 = HEAP32[$92>>2]|0; - $94 = (($91) + 4)|0; - $95 = $94; - $96 = HEAP32[$95>>2]|0; - $97 = HEAP32[$2>>2]|0; - $98 = $97; - $99 = $98; - $100 = HEAP32[$99>>2]|0; - $101 = (($98) + 4)|0; - $102 = $101; - $103 = HEAP32[$102>>2]|0; - $104 = (_i64Subtract(($100|0),($103|0),($93|0),($96|0))|0); - $105 = tempRet0; - $106 = $97; - $107 = $106; - HEAP32[$107>>2] = $104; - $108 = (($106) + 4)|0; - $109 = $108; - HEAP32[$109>>2] = $105; - $110 = HEAP32[$2>>2]|0; - _clearYMD_HMS_TZ($110); - $111 = $c1; - $112 = $111; - $113 = HEAP32[$112>>2]|0; - $114 = (($111) + 4)|0; - $115 = $114; - $116 = HEAP32[$115>>2]|0; - $117 = HEAP32[$2>>2]|0; - $118 = HEAP32[$0>>2]|0; - $119 = (_localtimeOffset($117,$118,$rc)|0); - $120 = tempRet0; - $121 = (_i64Subtract(($113|0),($116|0),($119|0),($120|0))|0); - $122 = tempRet0; - $123 = HEAP32[$2>>2]|0; - $124 = $123; - $125 = $124; - $126 = HEAP32[$125>>2]|0; - $127 = (($124) + 4)|0; - $128 = $127; - $129 = HEAP32[$128>>2]|0; - $130 = (_i64Add(($126|0),($129|0),($121|0),($122|0))|0); - $131 = tempRet0; - $132 = $123; - $133 = $132; - HEAP32[$133>>2] = $130; - $134 = (($132) + 4)|0; - $135 = $134; - HEAP32[$135>>2] = $131; - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - break; - } - case 108: { - $28 = HEAP32[$z>>2]|0; - $29 = (_strcmp($28,9376)|0); - $30 = ($29|0)==(0); - if (!($30)) { - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - $31 = HEAP32[$2>>2]|0; - _computeJD($31); - $32 = HEAP32[$2>>2]|0; - $33 = HEAP32[$0>>2]|0; - $34 = (_localtimeOffset($32,$33,$rc)|0); - $35 = tempRet0; - $36 = HEAP32[$2>>2]|0; - $37 = $36; - $38 = $37; - $39 = HEAP32[$38>>2]|0; - $40 = (($37) + 4)|0; - $41 = $40; - $42 = HEAP32[$41>>2]|0; - $43 = (_i64Add(($39|0),($42|0),($34|0),($35|0))|0); - $44 = tempRet0; - $45 = $36; - $46 = $45; - HEAP32[$46>>2] = $43; - $47 = (($45) + 4)|0; - $48 = $47; - HEAP32[$48>>2] = $44; - $49 = HEAP32[$2>>2]|0; - _clearYMD_HMS_TZ($49); - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - break; - } - case 119: { - $136 = HEAP32[$z>>2]|0; - $137 = (_strncmp($136,9416,8)|0); - $138 = ($137|0)==(0); - if (!($138)) { - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - $139 = HEAP32[$z>>2]|0; - $140 = (($139) + 8|0); - $141 = HEAP32[$z>>2]|0; - $142 = (($141) + 8|0); - $143 = (_sqlite3Strlen30($142)|0); - $144 = (_sqlite3AtoF($140,$r,$143,1)|0); - $145 = ($144|0)!=(0); - if (!($145)) { - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - $146 = +HEAPF64[$r>>3]; - $147 = (~~(($146))); - HEAP32[$n>>2] = $147; - $148 = (+($147|0)); - $149 = +HEAPF64[$r>>3]; - $150 = $148 == $149; - if (!($150)) { - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - $151 = HEAP32[$n>>2]|0; - $152 = ($151|0)>=(0); - if (!($152)) { - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - $153 = +HEAPF64[$r>>3]; - $154 = $153 < 7.0; - if (!($154)) { - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - $155 = HEAP32[$2>>2]|0; - _computeYMD_HMS($155); - $156 = HEAP32[$2>>2]|0; - $157 = (($156) + 43|0); - HEAP8[$157>>0] = 0; - $158 = HEAP32[$2>>2]|0; - $159 = (($158) + 42|0); - HEAP8[$159>>0] = 0; - $160 = HEAP32[$2>>2]|0; - _computeJD($160); - $161 = HEAP32[$2>>2]|0; - $162 = $161; - $163 = $162; - $164 = HEAP32[$163>>2]|0; - $165 = (($162) + 4)|0; - $166 = $165; - $167 = HEAP32[$166>>2]|0; - $168 = (_i64Add(($164|0),($167|0),129600000,0)|0); - $169 = tempRet0; - $170 = (___divdi3(($168|0),($169|0),86400000,0)|0); - $171 = tempRet0; - $172 = (___remdi3(($170|0),($171|0),7,0)|0); - $173 = tempRet0; - $174 = $Z; - $175 = $174; - HEAP32[$175>>2] = $172; - $176 = (($174) + 4)|0; - $177 = $176; - HEAP32[$177>>2] = $173; - $178 = $Z; - $179 = $178; - $180 = HEAP32[$179>>2]|0; - $181 = (($178) + 4)|0; - $182 = $181; - $183 = HEAP32[$182>>2]|0; - $184 = HEAP32[$n>>2]|0; - $185 = ($184|0)<(0); - $186 = $185 << 31 >> 31; - $187 = ($183|0)>($186|0); - $188 = ($183|0)==($186|0); - $189 = ($180>>>0)>($184>>>0); - $190 = $188 & $189; - $191 = $187 | $190; - if ($191) { - $192 = $Z; - $193 = $192; - $194 = HEAP32[$193>>2]|0; - $195 = (($192) + 4)|0; - $196 = $195; - $197 = HEAP32[$196>>2]|0; - $198 = (_i64Subtract(($194|0),($197|0),7,0)|0); - $199 = tempRet0; - $200 = $Z; - $201 = $200; - HEAP32[$201>>2] = $198; - $202 = (($200) + 4)|0; - $203 = $202; - HEAP32[$203>>2] = $199; - } - $204 = HEAP32[$n>>2]|0; - $205 = ($204|0)<(0); - $206 = $205 << 31 >> 31; - $207 = $Z; - $208 = $207; - $209 = HEAP32[$208>>2]|0; - $210 = (($207) + 4)|0; - $211 = $210; - $212 = HEAP32[$211>>2]|0; - $213 = (_i64Subtract(($204|0),($206|0),($209|0),($212|0))|0); - $214 = tempRet0; - $215 = (___muldi3(($213|0),($214|0),86400000,0)|0); - $216 = tempRet0; - $217 = HEAP32[$2>>2]|0; - $218 = $217; - $219 = $218; - $220 = HEAP32[$219>>2]|0; - $221 = (($218) + 4)|0; - $222 = $221; - $223 = HEAP32[$222>>2]|0; - $224 = (_i64Add(($220|0),($223|0),($215|0),($216|0))|0); - $225 = tempRet0; - $226 = $217; - $227 = $226; - HEAP32[$227>>2] = $224; - $228 = (($226) + 4)|0; - $229 = $228; - HEAP32[$229>>2] = $225; - $230 = HEAP32[$2>>2]|0; - _clearYMD_HMS_TZ($230); - HEAP32[$rc>>2] = 0; - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - break; - } - case 115: { - $231 = HEAP32[$z>>2]|0; - $232 = (_strncmp($231,9432,9)|0); - $233 = ($232|0)!=(0); - if ($233) { - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - $234 = HEAP32[$z>>2]|0; - $235 = (($234) + 9|0); - HEAP32[$z>>2] = $235; - $236 = HEAP32[$2>>2]|0; - _computeYMD($236); - $237 = HEAP32[$2>>2]|0; - $238 = (($237) + 41|0); - HEAP8[$238>>0] = 1; - $239 = HEAP32[$2>>2]|0; - $240 = (($239) + 24|0); - HEAP32[$240>>2] = 0; - $241 = HEAP32[$2>>2]|0; - $242 = (($241) + 20|0); - HEAP32[$242>>2] = 0; - $243 = HEAP32[$2>>2]|0; - $244 = (($243) + 32|0); - HEAPF64[$244>>3] = 0.0; - $245 = HEAP32[$2>>2]|0; - $246 = (($245) + 43|0); - HEAP8[$246>>0] = 0; - $247 = HEAP32[$2>>2]|0; - $248 = (($247) + 42|0); - HEAP8[$248>>0] = 0; - $249 = HEAP32[$z>>2]|0; - $250 = (_strcmp($249,9448)|0); - $251 = ($250|0)==(0); - if ($251) { - $252 = HEAP32[$2>>2]|0; - $253 = (($252) + 16|0); - HEAP32[$253>>2] = 1; - HEAP32[$rc>>2] = 0; - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - $254 = HEAP32[$z>>2]|0; - $255 = (_strcmp($254,9456)|0); - $256 = ($255|0)==(0); - if ($256) { - $257 = HEAP32[$2>>2]|0; - _computeYMD($257); - $258 = HEAP32[$2>>2]|0; - $259 = (($258) + 12|0); - HEAP32[$259>>2] = 1; - $260 = HEAP32[$2>>2]|0; - $261 = (($260) + 16|0); - HEAP32[$261>>2] = 1; - HEAP32[$rc>>2] = 0; - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - $262 = HEAP32[$z>>2]|0; - $263 = (_strcmp($262,9464)|0); - $264 = ($263|0)==(0); - if (!($264)) { - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - HEAP32[$rc>>2] = 0; - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - break; - } - case 57: case 56: case 55: case 54: case 53: case 52: case 51: case 50: case 49: case 48: case 45: case 43: { - HEAP32[$n>>2] = 1; - while(1) { - $265 = HEAP32[$n>>2]|0; - $266 = HEAP32[$z>>2]|0; - $267 = (($266) + ($265)|0); - $268 = HEAP8[$267>>0]|0; - $269 = $268 << 24 >> 24; - $270 = ($269|0)!=(0); - if (!($270)) { - break; - } - $271 = HEAP32[$n>>2]|0; - $272 = HEAP32[$z>>2]|0; - $273 = (($272) + ($271)|0); - $274 = HEAP8[$273>>0]|0; - $275 = $274 << 24 >> 24; - $276 = ($275|0)!=(58); - if (!($276)) { - break; - } - $277 = HEAP32[$n>>2]|0; - $278 = HEAP32[$z>>2]|0; - $279 = (($278) + ($277)|0); - $280 = HEAP8[$279>>0]|0; - $281 = $280&255; - $282 = (48 + ($281)|0); - $283 = HEAP8[$282>>0]|0; - $284 = $283&255; - $285 = $284 & 1; - $286 = ($285|0)!=(0); - $287 = $286 ^ 1; - if (!($287)) { - break; - } - $288 = HEAP32[$n>>2]|0; - $289 = (($288) + 1)|0; - HEAP32[$n>>2] = $289; - } - $290 = HEAP32[$z>>2]|0; - $291 = HEAP32[$n>>2]|0; - $292 = (_sqlite3AtoF($290,$r,$291,1)|0); - $293 = ($292|0)!=(0); - if (!($293)) { - HEAP32[$rc>>2] = 1; - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - $294 = HEAP32[$n>>2]|0; - $295 = HEAP32[$z>>2]|0; - $296 = (($295) + ($294)|0); - $297 = HEAP8[$296>>0]|0; - $298 = $297 << 24 >> 24; - $299 = ($298|0)==(58); - if ($299) { - $300 = HEAP32[$z>>2]|0; - HEAP32[$z2>>2] = $300; - $301 = HEAP32[$z2>>2]|0; - $302 = HEAP8[$301>>0]|0; - $303 = $302&255; - $304 = (48 + ($303)|0); - $305 = HEAP8[$304>>0]|0; - $306 = $305&255; - $307 = $306 & 4; - $308 = ($307|0)!=(0); - if (!($308)) { - $309 = HEAP32[$z2>>2]|0; - $310 = (($309) + 1|0); - HEAP32[$z2>>2] = $310; - } - dest=$tx+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $311 = HEAP32[$z2>>2]|0; - $312 = (_parseHhMmSs($311,$tx)|0); - $313 = ($312|0)!=(0); - if ($313) { - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - _computeJD($tx); - $314 = $tx; - $315 = $314; - $316 = HEAP32[$315>>2]|0; - $317 = (($314) + 4)|0; - $318 = $317; - $319 = HEAP32[$318>>2]|0; - $320 = (_i64Subtract(($316|0),($319|0),43200000,0)|0); - $321 = tempRet0; - $322 = $tx; - $323 = $322; - HEAP32[$323>>2] = $320; - $324 = (($322) + 4)|0; - $325 = $324; - HEAP32[$325>>2] = $321; - $326 = $tx; - $327 = $326; - $328 = HEAP32[$327>>2]|0; - $329 = (($326) + 4)|0; - $330 = $329; - $331 = HEAP32[$330>>2]|0; - $332 = (___divdi3(($328|0),($331|0),86400000,0)|0); - $333 = tempRet0; - $334 = $day; - $335 = $334; - HEAP32[$335>>2] = $332; - $336 = (($334) + 4)|0; - $337 = $336; - HEAP32[$337>>2] = $333; - $338 = $day; - $339 = $338; - $340 = HEAP32[$339>>2]|0; - $341 = (($338) + 4)|0; - $342 = $341; - $343 = HEAP32[$342>>2]|0; - $344 = (___muldi3(($340|0),($343|0),86400000,0)|0); - $345 = tempRet0; - $346 = $tx; - $347 = $346; - $348 = HEAP32[$347>>2]|0; - $349 = (($346) + 4)|0; - $350 = $349; - $351 = HEAP32[$350>>2]|0; - $352 = (_i64Subtract(($348|0),($351|0),($344|0),($345|0))|0); - $353 = tempRet0; - $354 = $tx; - $355 = $354; - HEAP32[$355>>2] = $352; - $356 = (($354) + 4)|0; - $357 = $356; - HEAP32[$357>>2] = $353; - $358 = HEAP32[$z>>2]|0; - $359 = HEAP8[$358>>0]|0; - $360 = $359 << 24 >> 24; - $361 = ($360|0)==(45); - if ($361) { - $362 = $tx; - $363 = $362; - $364 = HEAP32[$363>>2]|0; - $365 = (($362) + 4)|0; - $366 = $365; - $367 = HEAP32[$366>>2]|0; - $368 = (_i64Subtract(0,0,($364|0),($367|0))|0); - $369 = tempRet0; - $370 = $tx; - $371 = $370; - HEAP32[$371>>2] = $368; - $372 = (($370) + 4)|0; - $373 = $372; - HEAP32[$373>>2] = $369; - } - $374 = HEAP32[$2>>2]|0; - _computeJD($374); - $375 = HEAP32[$2>>2]|0; - _clearYMD_HMS_TZ($375); - $376 = $tx; - $377 = $376; - $378 = HEAP32[$377>>2]|0; - $379 = (($376) + 4)|0; - $380 = $379; - $381 = HEAP32[$380>>2]|0; - $382 = HEAP32[$2>>2]|0; - $383 = $382; - $384 = $383; - $385 = HEAP32[$384>>2]|0; - $386 = (($383) + 4)|0; - $387 = $386; - $388 = HEAP32[$387>>2]|0; - $389 = (_i64Add(($385|0),($388|0),($378|0),($381|0))|0); - $390 = tempRet0; - $391 = $382; - $392 = $391; - HEAP32[$392>>2] = $389; - $393 = (($391) + 4)|0; - $394 = $393; - HEAP32[$394>>2] = $390; - HEAP32[$rc>>2] = 0; - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - $395 = HEAP32[$n>>2]|0; - $396 = HEAP32[$z>>2]|0; - $397 = (($396) + ($395)|0); - HEAP32[$z>>2] = $397; - while(1) { - $398 = HEAP32[$z>>2]|0; - $399 = HEAP8[$398>>0]|0; - $400 = $399&255; - $401 = (48 + ($400)|0); - $402 = HEAP8[$401>>0]|0; - $403 = $402&255; - $404 = $403 & 1; - $405 = ($404|0)!=(0); - $406 = HEAP32[$z>>2]|0; - if (!($405)) { - break; - } - $407 = (($406) + 1|0); - HEAP32[$z>>2] = $407; - } - $408 = (_sqlite3Strlen30($406)|0); - HEAP32[$n>>2] = $408; - $409 = HEAP32[$n>>2]|0; - $410 = ($409|0)>(10); - $411 = HEAP32[$n>>2]|0; - $412 = ($411|0)<(3); - $or$cond = $410 | $412; - if ($or$cond) { - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - $413 = HEAP32[$n>>2]|0; - $414 = (($413) - 1)|0; - $415 = HEAP32[$z>>2]|0; - $416 = (($415) + ($414)|0); - $417 = HEAP8[$416>>0]|0; - $418 = $417 << 24 >> 24; - $419 = ($418|0)==(115); - if ($419) { - $420 = HEAP32[$n>>2]|0; - $421 = (($420) - 1)|0; - $422 = HEAP32[$z>>2]|0; - $423 = (($422) + ($421)|0); - HEAP8[$423>>0] = 0; - $424 = HEAP32[$n>>2]|0; - $425 = (($424) + -1)|0; - HEAP32[$n>>2] = $425; - } - $426 = HEAP32[$2>>2]|0; - _computeJD($426); - HEAP32[$rc>>2] = 0; - $427 = +HEAPF64[$r>>3]; - $428 = $427 < 0.0; - $429 = $428 ? -0.5 : 0.5; - HEAPF64[$rRounder>>3] = $429; - $430 = HEAP32[$n>>2]|0; - $431 = ($430|0)==(3); - if ($431) { - $432 = HEAP32[$z>>2]|0; - $433 = (_strcmp($432,9464)|0); - $434 = ($433|0)==(0); - if ($434) { - $435 = +HEAPF64[$r>>3]; - $436 = $435 * 8.64E+7; - $437 = +HEAPF64[$rRounder>>3]; - $438 = $436 + $437; - $439 = (~~$438)>>>0; - $440 = +Math_abs($438) >= 1.0 ? $438 > 0.0 ? (Math_min(+Math_floor($438 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($438 - +(~~$438 >>> 0)) / 4294967296.0) >>> 0 : 0; - $441 = HEAP32[$2>>2]|0; - $442 = $441; - $443 = $442; - $444 = HEAP32[$443>>2]|0; - $445 = (($442) + 4)|0; - $446 = $445; - $447 = HEAP32[$446>>2]|0; - $448 = (_i64Add(($444|0),($447|0),($439|0),($440|0))|0); - $449 = tempRet0; - $450 = $441; - $451 = $450; - HEAP32[$451>>2] = $448; - $452 = (($450) + 4)|0; - $453 = $452; - HEAP32[$453>>2] = $449; - } else { - label = 53; - } - } else { - label = 53; - } - do { - if ((label|0) == 53) { - $454 = HEAP32[$n>>2]|0; - $455 = ($454|0)==(4); - if ($455) { - $456 = HEAP32[$z>>2]|0; - $457 = (_strcmp($456,9472)|0); - $458 = ($457|0)==(0); - if ($458) { - $459 = +HEAPF64[$r>>3]; - $460 = $459 * 3.6E+6; - $461 = +HEAPF64[$rRounder>>3]; - $462 = $460 + $461; - $463 = (~~$462)>>>0; - $464 = +Math_abs($462) >= 1.0 ? $462 > 0.0 ? (Math_min(+Math_floor($462 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($462 - +(~~$462 >>> 0)) / 4294967296.0) >>> 0 : 0; - $465 = HEAP32[$2>>2]|0; - $466 = $465; - $467 = $466; - $468 = HEAP32[$467>>2]|0; - $469 = (($466) + 4)|0; - $470 = $469; - $471 = HEAP32[$470>>2]|0; - $472 = (_i64Add(($468|0),($471|0),($463|0),($464|0))|0); - $473 = tempRet0; - $474 = $465; - $475 = $474; - HEAP32[$475>>2] = $472; - $476 = (($474) + 4)|0; - $477 = $476; - HEAP32[$477>>2] = $473; - break; - } - } - $478 = HEAP32[$n>>2]|0; - $479 = ($478|0)==(6); - if ($479) { - $480 = HEAP32[$z>>2]|0; - $481 = (_strcmp($480,9480)|0); - $482 = ($481|0)==(0); - if ($482) { - $483 = +HEAPF64[$r>>3]; - $484 = $483 * 6.0E+4; - $485 = +HEAPF64[$rRounder>>3]; - $486 = $484 + $485; - $487 = (~~$486)>>>0; - $488 = +Math_abs($486) >= 1.0 ? $486 > 0.0 ? (Math_min(+Math_floor($486 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($486 - +(~~$486 >>> 0)) / 4294967296.0) >>> 0 : 0; - $489 = HEAP32[$2>>2]|0; - $490 = $489; - $491 = $490; - $492 = HEAP32[$491>>2]|0; - $493 = (($490) + 4)|0; - $494 = $493; - $495 = HEAP32[$494>>2]|0; - $496 = (_i64Add(($492|0),($495|0),($487|0),($488|0))|0); - $497 = tempRet0; - $498 = $489; - $499 = $498; - HEAP32[$499>>2] = $496; - $500 = (($498) + 4)|0; - $501 = $500; - HEAP32[$501>>2] = $497; - break; - } - } - $502 = HEAP32[$n>>2]|0; - $503 = ($502|0)==(6); - if ($503) { - $504 = HEAP32[$z>>2]|0; - $505 = (_strcmp($504,9488)|0); - $506 = ($505|0)==(0); - if ($506) { - $507 = +HEAPF64[$r>>3]; - $508 = $507 * 1000.0; - $509 = +HEAPF64[$rRounder>>3]; - $510 = $508 + $509; - $511 = (~~$510)>>>0; - $512 = +Math_abs($510) >= 1.0 ? $510 > 0.0 ? (Math_min(+Math_floor($510 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($510 - +(~~$510 >>> 0)) / 4294967296.0) >>> 0 : 0; - $513 = HEAP32[$2>>2]|0; - $514 = $513; - $515 = $514; - $516 = HEAP32[$515>>2]|0; - $517 = (($514) + 4)|0; - $518 = $517; - $519 = HEAP32[$518>>2]|0; - $520 = (_i64Add(($516|0),($519|0),($511|0),($512|0))|0); - $521 = tempRet0; - $522 = $513; - $523 = $522; - HEAP32[$523>>2] = $520; - $524 = (($522) + 4)|0; - $525 = $524; - HEAP32[$525>>2] = $521; - break; - } - } - $526 = HEAP32[$n>>2]|0; - $527 = ($526|0)==(5); - if ($527) { - $528 = HEAP32[$z>>2]|0; - $529 = (_strcmp($528,9448)|0); - $530 = ($529|0)==(0); - if ($530) { - $531 = HEAP32[$2>>2]|0; - _computeYMD_HMS($531); - $532 = +HEAPF64[$r>>3]; - $533 = (~~(($532))); - $534 = HEAP32[$2>>2]|0; - $535 = (($534) + 12|0); - $536 = HEAP32[$535>>2]|0; - $537 = (($536) + ($533))|0; - HEAP32[$535>>2] = $537; - $538 = HEAP32[$2>>2]|0; - $539 = (($538) + 12|0); - $540 = HEAP32[$539>>2]|0; - $541 = ($540|0)>(0); - $542 = HEAP32[$2>>2]|0; - $543 = (($542) + 12|0); - $544 = HEAP32[$543>>2]|0; - $545 = (($544) - 1)|0; - $546 = (($544) - 12)|0; - $$sink = $541 ? $545 : $546; - $547 = (($$sink|0) / 12)&-1; - HEAP32[$x>>2] = $547; - $548 = HEAP32[$x>>2]|0; - $549 = HEAP32[$2>>2]|0; - $550 = (($549) + 8|0); - $551 = HEAP32[$550>>2]|0; - $552 = (($551) + ($548))|0; - HEAP32[$550>>2] = $552; - $553 = HEAP32[$x>>2]|0; - $554 = ($553*12)|0; - $555 = HEAP32[$2>>2]|0; - $556 = (($555) + 12|0); - $557 = HEAP32[$556>>2]|0; - $558 = (($557) - ($554))|0; - HEAP32[$556>>2] = $558; - $559 = HEAP32[$2>>2]|0; - $560 = (($559) + 42|0); - HEAP8[$560>>0] = 0; - $561 = HEAP32[$2>>2]|0; - _computeJD($561); - $562 = +HEAPF64[$r>>3]; - $563 = (~~(($562))); - HEAP32[$y>>2] = $563; - $564 = HEAP32[$y>>2]|0; - $565 = (+($564|0)); - $566 = +HEAPF64[$r>>3]; - $567 = $565 != $566; - if (!($567)) { - break; - } - $568 = +HEAPF64[$r>>3]; - $569 = HEAP32[$y>>2]|0; - $570 = (+($569|0)); - $571 = $568 - $570; - $572 = $571 * 30.0; - $573 = $572 * 8.64E+7; - $574 = +HEAPF64[$rRounder>>3]; - $575 = $573 + $574; - $576 = (~~$575)>>>0; - $577 = +Math_abs($575) >= 1.0 ? $575 > 0.0 ? (Math_min(+Math_floor($575 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($575 - +(~~$575 >>> 0)) / 4294967296.0) >>> 0 : 0; - $578 = HEAP32[$2>>2]|0; - $579 = $578; - $580 = $579; - $581 = HEAP32[$580>>2]|0; - $582 = (($579) + 4)|0; - $583 = $582; - $584 = HEAP32[$583>>2]|0; - $585 = (_i64Add(($581|0),($584|0),($576|0),($577|0))|0); - $586 = tempRet0; - $587 = $578; - $588 = $587; - HEAP32[$588>>2] = $585; - $589 = (($587) + 4)|0; - $590 = $589; - HEAP32[$590>>2] = $586; - break; - } - } - $591 = HEAP32[$n>>2]|0; - $592 = ($591|0)==(4); - if ($592) { - $593 = HEAP32[$z>>2]|0; - $594 = (_strcmp($593,9456)|0); - $595 = ($594|0)==(0); - if ($595) { - $596 = +HEAPF64[$r>>3]; - $597 = (~~(($596))); - HEAP32[$y1>>2] = $597; - $598 = HEAP32[$2>>2]|0; - _computeYMD_HMS($598); - $599 = HEAP32[$y1>>2]|0; - $600 = HEAP32[$2>>2]|0; - $601 = (($600) + 8|0); - $602 = HEAP32[$601>>2]|0; - $603 = (($602) + ($599))|0; - HEAP32[$601>>2] = $603; - $604 = HEAP32[$2>>2]|0; - $605 = (($604) + 42|0); - HEAP8[$605>>0] = 0; - $606 = HEAP32[$2>>2]|0; - _computeJD($606); - $607 = HEAP32[$y1>>2]|0; - $608 = (+($607|0)); - $609 = +HEAPF64[$r>>3]; - $610 = $608 != $609; - if (!($610)) { - break; - } - $611 = +HEAPF64[$r>>3]; - $612 = HEAP32[$y1>>2]|0; - $613 = (+($612|0)); - $614 = $611 - $613; - $615 = $614 * 365.0; - $616 = $615 * 8.64E+7; - $617 = +HEAPF64[$rRounder>>3]; - $618 = $616 + $617; - $619 = (~~$618)>>>0; - $620 = +Math_abs($618) >= 1.0 ? $618 > 0.0 ? (Math_min(+Math_floor($618 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($618 - +(~~$618 >>> 0)) / 4294967296.0) >>> 0 : 0; - $621 = HEAP32[$2>>2]|0; - $622 = $621; - $623 = $622; - $624 = HEAP32[$623>>2]|0; - $625 = (($622) + 4)|0; - $626 = $625; - $627 = HEAP32[$626>>2]|0; - $628 = (_i64Add(($624|0),($627|0),($619|0),($620|0))|0); - $629 = tempRet0; - $630 = $621; - $631 = $630; - HEAP32[$631>>2] = $628; - $632 = (($630) + 4)|0; - $633 = $632; - HEAP32[$633>>2] = $629; - break; - } - } - HEAP32[$rc>>2] = 1; - } - } while(0); - $634 = HEAP32[$2>>2]|0; - _clearYMD_HMS_TZ($634); - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - break; - } - default: { - $635 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($635|0); - } - } - return 0|0; -} -function _localtimeOffset($p,$pCtx,$pRc) { - $p = $p|0; - $pCtx = $pCtx|0; - $pRc = $pRc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $22 = 0.0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0.0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $s = 0, $sLocal = 0, $t = 0, $x = 0, $y = 0, dest = 0, label = 0; - var sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 176|0; - $0 = sp + 96|0; - $1 = sp + 164|0; - $2 = sp + 160|0; - $3 = sp + 156|0; - $x = sp + 48|0; - $y = sp; - $t = sp + 152|0; - $sLocal = sp + 108|0; - $s = sp + 104|0; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $pCtx; - HEAP32[$3>>2] = $pRc; - dest=$sLocal+0|0; stop=dest+44|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $4 = HEAP32[$1>>2]|0; - dest=$x+0|0; src=$4+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - _computeYMD_HMS($x); - $5 = (($x) + 8|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)<(1971); - if ($7) { - label = 3; - } else { - $8 = (($x) + 8|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)>=(2038); - if ($10) { - label = 3; - } else { - $17 = (($x) + 32|0); - $18 = +HEAPF64[$17>>3]; - $19 = $18 + 0.5; - $20 = (~~(($19))); - HEAP32[$s>>2] = $20; - $21 = HEAP32[$s>>2]|0; - $22 = (+($21|0)); - $23 = (($x) + 32|0); - HEAPF64[$23>>3] = $22; - } - } - if ((label|0) == 3) { - $11 = (($x) + 8|0); - HEAP32[$11>>2] = 2000; - $12 = (($x) + 12|0); - HEAP32[$12>>2] = 1; - $13 = (($x) + 16|0); - HEAP32[$13>>2] = 1; - $14 = (($x) + 20|0); - HEAP32[$14>>2] = 0; - $15 = (($x) + 24|0); - HEAP32[$15>>2] = 0; - $16 = (($x) + 32|0); - HEAPF64[$16>>3] = 0.0; - } - $24 = (($x) + 28|0); - HEAP32[$24>>2] = 0; - $25 = (($x) + 42|0); - HEAP8[$25>>0] = 0; - _computeJD($x); - $26 = $x; - $27 = $26; - $28 = HEAP32[$27>>2]|0; - $29 = (($26) + 4)|0; - $30 = $29; - $31 = HEAP32[$30>>2]|0; - $32 = (___divdi3(($28|0),($31|0),1000,0)|0); - $33 = tempRet0; - $34 = (_i64Subtract(($32|0),($33|0),413362496,49)|0); - $35 = tempRet0; - HEAP32[$t>>2] = $34; - $36 = (_osLocaltime($t,$sLocal)|0); - $37 = ($36|0)!=(0); - if ($37) { - $38 = HEAP32[$2>>2]|0; - _sqlite3_result_error($38,9496,-1); - $39 = HEAP32[$3>>2]|0; - HEAP32[$39>>2] = 1; - $40 = $0; - $41 = $40; - HEAP32[$41>>2] = 0; - $42 = (($40) + 4)|0; - $43 = $42; - HEAP32[$43>>2] = 0; - $87 = $0; - $88 = $87; - $89 = HEAP32[$88>>2]|0; - $90 = (($87) + 4)|0; - $91 = $90; - $92 = HEAP32[$91>>2]|0; - tempRet0 = $92; - STACKTOP = sp;return ($89|0); - } else { - $44 = (($sLocal) + 20|0); - $45 = HEAP32[$44>>2]|0; - $46 = (($45) + 1900)|0; - $47 = (($y) + 8|0); - HEAP32[$47>>2] = $46; - $48 = (($sLocal) + 16|0); - $49 = HEAP32[$48>>2]|0; - $50 = (($49) + 1)|0; - $51 = (($y) + 12|0); - HEAP32[$51>>2] = $50; - $52 = (($sLocal) + 12|0); - $53 = HEAP32[$52>>2]|0; - $54 = (($y) + 16|0); - HEAP32[$54>>2] = $53; - $55 = (($sLocal) + 8|0); - $56 = HEAP32[$55>>2]|0; - $57 = (($y) + 20|0); - HEAP32[$57>>2] = $56; - $58 = (($sLocal) + 4|0); - $59 = HEAP32[$58>>2]|0; - $60 = (($y) + 24|0); - HEAP32[$60>>2] = $59; - $61 = HEAP32[$sLocal>>2]|0; - $62 = (+($61|0)); - $63 = (($y) + 32|0); - HEAPF64[$63>>3] = $62; - $64 = (($y) + 40|0); - HEAP8[$64>>0] = 1; - $65 = (($y) + 41|0); - HEAP8[$65>>0] = 1; - $66 = (($y) + 42|0); - HEAP8[$66>>0] = 0; - $67 = (($y) + 43|0); - HEAP8[$67>>0] = 0; - _computeJD($y); - $68 = HEAP32[$3>>2]|0; - HEAP32[$68>>2] = 0; - $69 = $y; - $70 = $69; - $71 = HEAP32[$70>>2]|0; - $72 = (($69) + 4)|0; - $73 = $72; - $74 = HEAP32[$73>>2]|0; - $75 = $x; - $76 = $75; - $77 = HEAP32[$76>>2]|0; - $78 = (($75) + 4)|0; - $79 = $78; - $80 = HEAP32[$79>>2]|0; - $81 = (_i64Subtract(($71|0),($74|0),($77|0),($80|0))|0); - $82 = tempRet0; - $83 = $0; - $84 = $83; - HEAP32[$84>>2] = $81; - $85 = (($83) + 4)|0; - $86 = $85; - HEAP32[$86>>2] = $82; - $87 = $0; - $88 = $87; - $89 = HEAP32[$88>>2]|0; - $90 = (($87) + 4)|0; - $91 = $90; - $92 = HEAP32[$91>>2]|0; - tempRet0 = $92; - STACKTOP = sp;return ($89|0); - } - return 0|0; -} -function _clearYMD_HMS_TZ($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 40|0); - HEAP8[$2>>0] = 0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 41|0); - HEAP8[$4>>0] = 0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 43|0); - HEAP8[$6>>0] = 0; - STACKTOP = sp;return; -} -function _sqlite3AtoF($z,$pResult,$length,$enc) { - $z = $z|0; - $pResult = $pResult|0; - $length = $length|0; - $enc = $enc|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0.0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0.0, $408 = 0.0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0.0, $42 = 0, $420 = 0.0, $421 = 0.0; - var $422 = 0.0, $423 = 0.0, $424 = 0.0, $425 = 0.0, $426 = 0.0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0.0, $438 = 0.0, $439 = 0.0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0.0, $444 = 0.0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0.0, $45 = 0, $450 = 0.0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0.0, $462 = 0.0, $463 = 0.0, $464 = 0.0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0.0, $472 = 0.0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; - var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $d = 0, $e = 0, $eValid = 0, $esign = 0, $i = 0, $incr = 0, $nDigits = 0, $nonNum = 0, $or$cond = 0, $result = 0, $s = 0, $scale = 0, $sign = 0, $zEnd = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $0 = sp + 76|0; - $1 = sp + 72|0; - $2 = sp + 68|0; - $3 = sp + 64|0; - $4 = sp + 80|0; - $incr = sp + 60|0; - $zEnd = sp + 56|0; - $sign = sp + 52|0; - $s = sp + 16|0; - $d = sp + 48|0; - $esign = sp + 44|0; - $e = sp + 40|0; - $eValid = sp + 36|0; - $result = sp + 8|0; - $nDigits = sp + 32|0; - $nonNum = sp + 28|0; - $i = sp + 24|0; - $scale = sp; - HEAP32[$1>>2] = $z; - HEAP32[$2>>2] = $pResult; - HEAP32[$3>>2] = $length; - HEAP8[$4>>0] = $enc; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$3>>2]|0; - $7 = (($5) + ($6)|0); - HEAP32[$zEnd>>2] = $7; - HEAP32[$sign>>2] = 1; - $8 = $s; - $9 = $8; - HEAP32[$9>>2] = 0; - $10 = (($8) + 4)|0; - $11 = $10; - HEAP32[$11>>2] = 0; - HEAP32[$d>>2] = 0; - HEAP32[$esign>>2] = 1; - HEAP32[$e>>2] = 0; - HEAP32[$eValid>>2] = 1; - HEAP32[$nDigits>>2] = 0; - HEAP32[$nonNum>>2] = 0; - $12 = HEAP32[$2>>2]|0; - HEAPF64[$12>>3] = 0.0; - $13 = HEAP8[$4>>0]|0; - $14 = $13&255; - $15 = ($14|0)==(1); - if ($15) { - HEAP32[$incr>>2] = 1; - } else { - HEAP32[$incr>>2] = 2; - $16 = HEAP8[$4>>0]|0; - $17 = $16&255; - $18 = (3 - ($17))|0; - HEAP32[$i>>2] = $18; - while(1) { - $19 = HEAP32[$i>>2]|0; - $20 = HEAP32[$3>>2]|0; - $21 = ($19|0)<($20|0); - if (!($21)) { - break; - } - $22 = HEAP32[$i>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + ($22)|0); - $25 = HEAP8[$24>>0]|0; - $26 = $25 << 24 >> 24; - $27 = ($26|0)==(0); - if (!($27)) { - break; - } - $28 = HEAP32[$i>>2]|0; - $29 = (($28) + 2)|0; - HEAP32[$i>>2] = $29; - } - $30 = HEAP32[$i>>2]|0; - $31 = HEAP32[$3>>2]|0; - $32 = ($30|0)<($31|0); - $33 = $32&1; - HEAP32[$nonNum>>2] = $33; - $34 = HEAP32[$1>>2]|0; - $35 = HEAP32[$i>>2]|0; - $36 = (($34) + ($35)|0); - $37 = HEAP8[$4>>0]|0; - $38 = $37&255; - $39 = (($36) + ($38)|0); - $40 = (($39) + -3|0); - HEAP32[$zEnd>>2] = $40; - $41 = HEAP8[$4>>0]|0; - $42 = $41&255; - $43 = $42 & 1; - $44 = HEAP32[$1>>2]|0; - $45 = (($44) + ($43)|0); - HEAP32[$1>>2] = $45; - } - while(1) { - $46 = HEAP32[$1>>2]|0; - $47 = HEAP32[$zEnd>>2]|0; - $48 = ($46>>>0)<($47>>>0); - if (!($48)) { - break; - } - $49 = HEAP32[$1>>2]|0; - $50 = HEAP8[$49>>0]|0; - $51 = $50&255; - $52 = (48 + ($51)|0); - $53 = HEAP8[$52>>0]|0; - $54 = $53&255; - $55 = $54 & 1; - $56 = ($55|0)!=(0); - if (!($56)) { - break; - } - $57 = HEAP32[$incr>>2]|0; - $58 = HEAP32[$1>>2]|0; - $59 = (($58) + ($57)|0); - HEAP32[$1>>2] = $59; - } - $60 = HEAP32[$1>>2]|0; - $61 = HEAP32[$zEnd>>2]|0; - $62 = ($60>>>0)>=($61>>>0); - if ($62) { - HEAP32[$0>>2] = 0; - $485 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($485|0); - } - $63 = HEAP32[$1>>2]|0; - $64 = HEAP8[$63>>0]|0; - $65 = $64 << 24 >> 24; - $66 = ($65|0)==(45); - if ($66) { - HEAP32[$sign>>2] = -1; - $67 = HEAP32[$incr>>2]|0; - $68 = HEAP32[$1>>2]|0; - $69 = (($68) + ($67)|0); - HEAP32[$1>>2] = $69; - } else { - $70 = HEAP32[$1>>2]|0; - $71 = HEAP8[$70>>0]|0; - $72 = $71 << 24 >> 24; - $73 = ($72|0)==(43); - if ($73) { - $74 = HEAP32[$incr>>2]|0; - $75 = HEAP32[$1>>2]|0; - $76 = (($75) + ($74)|0); - HEAP32[$1>>2] = $76; - } - } - while(1) { - $77 = HEAP32[$1>>2]|0; - $78 = HEAP32[$zEnd>>2]|0; - $79 = ($77>>>0)<($78>>>0); - if (!($79)) { - break; - } - $80 = HEAP32[$1>>2]|0; - $81 = HEAP8[$80>>0]|0; - $82 = $81 << 24 >> 24; - $83 = ($82|0)==(48); - if (!($83)) { - break; - } - $84 = HEAP32[$incr>>2]|0; - $85 = HEAP32[$1>>2]|0; - $86 = (($85) + ($84)|0); - HEAP32[$1>>2] = $86; - $87 = HEAP32[$nDigits>>2]|0; - $88 = (($87) + 1)|0; - HEAP32[$nDigits>>2] = $88; - } - while(1) { - $89 = HEAP32[$1>>2]|0; - $90 = HEAP32[$zEnd>>2]|0; - $91 = ($89>>>0)<($90>>>0); - if (!($91)) { - break; - } - $92 = HEAP32[$1>>2]|0; - $93 = HEAP8[$92>>0]|0; - $94 = $93&255; - $95 = (48 + ($94)|0); - $96 = HEAP8[$95>>0]|0; - $97 = $96&255; - $98 = $97 & 4; - $99 = ($98|0)!=(0); - if (!($99)) { - break; - } - $100 = $s; - $101 = $100; - $102 = HEAP32[$101>>2]|0; - $103 = (($100) + 4)|0; - $104 = $103; - $105 = HEAP32[$104>>2]|0; - $106 = ($105|0)<(214748364); - $107 = ($105|0)==(214748364); - $108 = ($102>>>0)<(3435973835); - $109 = $107 & $108; - $110 = $106 | $109; - if (!($110)) { - break; - } - $111 = $s; - $112 = $111; - $113 = HEAP32[$112>>2]|0; - $114 = (($111) + 4)|0; - $115 = $114; - $116 = HEAP32[$115>>2]|0; - $117 = (___muldi3(($113|0),($116|0),10,0)|0); - $118 = tempRet0; - $119 = HEAP32[$1>>2]|0; - $120 = HEAP8[$119>>0]|0; - $121 = $120 << 24 >> 24; - $122 = (($121) - 48)|0; - $123 = ($122|0)<(0); - $124 = $123 << 31 >> 31; - $125 = (_i64Add(($117|0),($118|0),($122|0),($124|0))|0); - $126 = tempRet0; - $127 = $s; - $128 = $127; - HEAP32[$128>>2] = $125; - $129 = (($127) + 4)|0; - $130 = $129; - HEAP32[$130>>2] = $126; - $131 = HEAP32[$incr>>2]|0; - $132 = HEAP32[$1>>2]|0; - $133 = (($132) + ($131)|0); - HEAP32[$1>>2] = $133; - $134 = HEAP32[$nDigits>>2]|0; - $135 = (($134) + 1)|0; - HEAP32[$nDigits>>2] = $135; - } - while(1) { - $136 = HEAP32[$1>>2]|0; - $137 = HEAP32[$zEnd>>2]|0; - $138 = ($136>>>0)<($137>>>0); - if (!($138)) { - break; - } - $139 = HEAP32[$1>>2]|0; - $140 = HEAP8[$139>>0]|0; - $141 = $140&255; - $142 = (48 + ($141)|0); - $143 = HEAP8[$142>>0]|0; - $144 = $143&255; - $145 = $144 & 4; - $146 = ($145|0)!=(0); - if (!($146)) { - break; - } - $147 = HEAP32[$incr>>2]|0; - $148 = HEAP32[$1>>2]|0; - $149 = (($148) + ($147)|0); - HEAP32[$1>>2] = $149; - $150 = HEAP32[$nDigits>>2]|0; - $151 = (($150) + 1)|0; - HEAP32[$nDigits>>2] = $151; - $152 = HEAP32[$d>>2]|0; - $153 = (($152) + 1)|0; - HEAP32[$d>>2] = $153; - } - $154 = HEAP32[$1>>2]|0; - $155 = HEAP32[$zEnd>>2]|0; - $156 = ($154>>>0)>=($155>>>0); - L36: do { - if (!($156)) { - $157 = HEAP32[$1>>2]|0; - $158 = HEAP8[$157>>0]|0; - $159 = $158 << 24 >> 24; - $160 = ($159|0)==(46); - L38: do { - if ($160) { - $161 = HEAP32[$incr>>2]|0; - $162 = HEAP32[$1>>2]|0; - $163 = (($162) + ($161)|0); - HEAP32[$1>>2] = $163; - while(1) { - $164 = HEAP32[$1>>2]|0; - $165 = HEAP32[$zEnd>>2]|0; - $166 = ($164>>>0)<($165>>>0); - if (!($166)) { - break; - } - $167 = HEAP32[$1>>2]|0; - $168 = HEAP8[$167>>0]|0; - $169 = $168&255; - $170 = (48 + ($169)|0); - $171 = HEAP8[$170>>0]|0; - $172 = $171&255; - $173 = $172 & 4; - $174 = ($173|0)!=(0); - if (!($174)) { - break; - } - $175 = $s; - $176 = $175; - $177 = HEAP32[$176>>2]|0; - $178 = (($175) + 4)|0; - $179 = $178; - $180 = HEAP32[$179>>2]|0; - $181 = ($180|0)<(214748364); - $182 = ($180|0)==(214748364); - $183 = ($177>>>0)<(3435973835); - $184 = $182 & $183; - $185 = $181 | $184; - if (!($185)) { - break; - } - $186 = $s; - $187 = $186; - $188 = HEAP32[$187>>2]|0; - $189 = (($186) + 4)|0; - $190 = $189; - $191 = HEAP32[$190>>2]|0; - $192 = (___muldi3(($188|0),($191|0),10,0)|0); - $193 = tempRet0; - $194 = HEAP32[$1>>2]|0; - $195 = HEAP8[$194>>0]|0; - $196 = $195 << 24 >> 24; - $197 = (($196) - 48)|0; - $198 = ($197|0)<(0); - $199 = $198 << 31 >> 31; - $200 = (_i64Add(($192|0),($193|0),($197|0),($199|0))|0); - $201 = tempRet0; - $202 = $s; - $203 = $202; - HEAP32[$203>>2] = $200; - $204 = (($202) + 4)|0; - $205 = $204; - HEAP32[$205>>2] = $201; - $206 = HEAP32[$incr>>2]|0; - $207 = HEAP32[$1>>2]|0; - $208 = (($207) + ($206)|0); - HEAP32[$1>>2] = $208; - $209 = HEAP32[$nDigits>>2]|0; - $210 = (($209) + 1)|0; - HEAP32[$nDigits>>2] = $210; - $211 = HEAP32[$d>>2]|0; - $212 = (($211) + -1)|0; - HEAP32[$d>>2] = $212; - } - while(1) { - $213 = HEAP32[$1>>2]|0; - $214 = HEAP32[$zEnd>>2]|0; - $215 = ($213>>>0)<($214>>>0); - if (!($215)) { - break L38; - } - $216 = HEAP32[$1>>2]|0; - $217 = HEAP8[$216>>0]|0; - $218 = $217&255; - $219 = (48 + ($218)|0); - $220 = HEAP8[$219>>0]|0; - $221 = $220&255; - $222 = $221 & 4; - $223 = ($222|0)!=(0); - if (!($223)) { - break L38; - } - $224 = HEAP32[$incr>>2]|0; - $225 = HEAP32[$1>>2]|0; - $226 = (($225) + ($224)|0); - HEAP32[$1>>2] = $226; - $227 = HEAP32[$nDigits>>2]|0; - $228 = (($227) + 1)|0; - HEAP32[$nDigits>>2] = $228; - } - } - } while(0); - $229 = HEAP32[$1>>2]|0; - $230 = HEAP32[$zEnd>>2]|0; - $231 = ($229>>>0)>=($230>>>0); - if (!($231)) { - $232 = HEAP32[$1>>2]|0; - $233 = HEAP8[$232>>0]|0; - $234 = $233 << 24 >> 24; - $235 = ($234|0)==(101); - if ($235) { - label = 40; - } else { - $236 = HEAP32[$1>>2]|0; - $237 = HEAP8[$236>>0]|0; - $238 = $237 << 24 >> 24; - $239 = ($238|0)==(69); - if ($239) { - label = 40; - } - } - L53: do { - if ((label|0) == 40) { - $240 = HEAP32[$incr>>2]|0; - $241 = HEAP32[$1>>2]|0; - $242 = (($241) + ($240)|0); - HEAP32[$1>>2] = $242; - HEAP32[$eValid>>2] = 0; - $243 = HEAP32[$1>>2]|0; - $244 = HEAP32[$zEnd>>2]|0; - $245 = ($243>>>0)>=($244>>>0); - if ($245) { - break L36; - } - $246 = HEAP32[$1>>2]|0; - $247 = HEAP8[$246>>0]|0; - $248 = $247 << 24 >> 24; - $249 = ($248|0)==(45); - if ($249) { - HEAP32[$esign>>2] = -1; - $250 = HEAP32[$incr>>2]|0; - $251 = HEAP32[$1>>2]|0; - $252 = (($251) + ($250)|0); - HEAP32[$1>>2] = $252; - } else { - $253 = HEAP32[$1>>2]|0; - $254 = HEAP8[$253>>0]|0; - $255 = $254 << 24 >> 24; - $256 = ($255|0)==(43); - if ($256) { - $257 = HEAP32[$incr>>2]|0; - $258 = HEAP32[$1>>2]|0; - $259 = (($258) + ($257)|0); - HEAP32[$1>>2] = $259; - } - } - while(1) { - $260 = HEAP32[$1>>2]|0; - $261 = HEAP32[$zEnd>>2]|0; - $262 = ($260>>>0)<($261>>>0); - if (!($262)) { - break L53; - } - $263 = HEAP32[$1>>2]|0; - $264 = HEAP8[$263>>0]|0; - $265 = $264&255; - $266 = (48 + ($265)|0); - $267 = HEAP8[$266>>0]|0; - $268 = $267&255; - $269 = $268 & 4; - $270 = ($269|0)!=(0); - if (!($270)) { - break L53; - } - $271 = HEAP32[$e>>2]|0; - $272 = ($271|0)<(10000); - if ($272) { - $273 = HEAP32[$e>>2]|0; - $274 = ($273*10)|0; - $275 = HEAP32[$1>>2]|0; - $276 = HEAP8[$275>>0]|0; - $277 = $276 << 24 >> 24; - $278 = (($277) - 48)|0; - $279 = (($274) + ($278))|0; - $280 = $279; - } else { - $280 = 10000; - } - HEAP32[$e>>2] = $280; - $281 = HEAP32[$incr>>2]|0; - $282 = HEAP32[$1>>2]|0; - $283 = (($282) + ($281)|0); - HEAP32[$1>>2] = $283; - HEAP32[$eValid>>2] = 1; - } - } - } while(0); - $284 = HEAP32[$nDigits>>2]|0; - $285 = ($284|0)!=(0); - if ($285) { - $286 = HEAP32[$eValid>>2]|0; - $287 = ($286|0)!=(0); - if ($287) { - while(1) { - $288 = HEAP32[$1>>2]|0; - $289 = HEAP32[$zEnd>>2]|0; - $290 = ($288>>>0)<($289>>>0); - if (!($290)) { - break L36; - } - $291 = HEAP32[$1>>2]|0; - $292 = HEAP8[$291>>0]|0; - $293 = $292&255; - $294 = (48 + ($293)|0); - $295 = HEAP8[$294>>0]|0; - $296 = $295&255; - $297 = $296 & 1; - $298 = ($297|0)!=(0); - if (!($298)) { - break L36; - } - $299 = HEAP32[$incr>>2]|0; - $300 = HEAP32[$1>>2]|0; - $301 = (($300) + ($299)|0); - HEAP32[$1>>2] = $301; - } - } - } - } - } - } while(0); - $302 = HEAP32[$e>>2]|0; - $303 = HEAP32[$esign>>2]|0; - $304 = Math_imul($302, $303)|0; - $305 = HEAP32[$d>>2]|0; - $306 = (($304) + ($305))|0; - HEAP32[$e>>2] = $306; - $307 = HEAP32[$e>>2]|0; - $308 = ($307|0)<(0); - if ($308) { - HEAP32[$esign>>2] = -1; - $309 = HEAP32[$e>>2]|0; - $310 = Math_imul($309, -1)|0; - HEAP32[$e>>2] = $310; - } else { - HEAP32[$esign>>2] = 1; - } - $311 = $s; - $312 = $311; - $313 = HEAP32[$312>>2]|0; - $314 = (($311) + 4)|0; - $315 = $314; - $316 = HEAP32[$315>>2]|0; - $317 = ($313|0)!=(0); - $318 = ($316|0)!=(0); - $319 = $317 | $318; - do { - if ($319) { - $326 = HEAP32[$esign>>2]|0; - $327 = ($326|0)>(0); - L84: do { - if ($327) { - while(1) { - $328 = $s; - $329 = $328; - $330 = HEAP32[$329>>2]|0; - $331 = (($328) + 4)|0; - $332 = $331; - $333 = HEAP32[$332>>2]|0; - $334 = ($333|0)<(214748364); - $335 = ($333|0)==(214748364); - $336 = ($330>>>0)<(3435973836); - $337 = $335 & $336; - $338 = $334 | $337; - if (!($338)) { - break L84; - } - $339 = HEAP32[$e>>2]|0; - $340 = ($339|0)>(0); - if (!($340)) { - break L84; - } - $341 = HEAP32[$e>>2]|0; - $342 = (($341) + -1)|0; - HEAP32[$e>>2] = $342; - $343 = $s; - $344 = $343; - $345 = HEAP32[$344>>2]|0; - $346 = (($343) + 4)|0; - $347 = $346; - $348 = HEAP32[$347>>2]|0; - $349 = (___muldi3(($345|0),($348|0),10,0)|0); - $350 = tempRet0; - $351 = $s; - $352 = $351; - HEAP32[$352>>2] = $349; - $353 = (($351) + 4)|0; - $354 = $353; - HEAP32[$354>>2] = $350; - } - } else { - while(1) { - $355 = $s; - $356 = $355; - $357 = HEAP32[$356>>2]|0; - $358 = (($355) + 4)|0; - $359 = $358; - $360 = HEAP32[$359>>2]|0; - $361 = (___remdi3(($357|0),($360|0),10,0)|0); - $362 = tempRet0; - $363 = ($361|0)!=(0); - $364 = ($362|0)!=(0); - $365 = $363 | $364; - if ($365) { - break L84; - } - $366 = HEAP32[$e>>2]|0; - $367 = ($366|0)>(0); - if (!($367)) { - break L84; - } - $368 = HEAP32[$e>>2]|0; - $369 = (($368) + -1)|0; - HEAP32[$e>>2] = $369; - $370 = $s; - $371 = $370; - $372 = HEAP32[$371>>2]|0; - $373 = (($370) + 4)|0; - $374 = $373; - $375 = HEAP32[$374>>2]|0; - $376 = (___divdi3(($372|0),($375|0),10,0)|0); - $377 = tempRet0; - $378 = $s; - $379 = $378; - HEAP32[$379>>2] = $376; - $380 = (($378) + 4)|0; - $381 = $380; - HEAP32[$381>>2] = $377; - } - } - } while(0); - $382 = HEAP32[$sign>>2]|0; - $383 = ($382|0)<(0); - $384 = $s; - $385 = $384; - $386 = HEAP32[$385>>2]|0; - $387 = (($384) + 4)|0; - $388 = $387; - $389 = HEAP32[$388>>2]|0; - $390 = (_i64Subtract(0,0,($386|0),($389|0))|0); - $391 = tempRet0; - $392 = $383 ? $390 : $386; - $393 = $383 ? $391 : $389; - $394 = $s; - $395 = $394; - HEAP32[$395>>2] = $392; - $396 = (($394) + 4)|0; - $397 = $396; - HEAP32[$397>>2] = $393; - $398 = HEAP32[$e>>2]|0; - $399 = ($398|0)!=(0); - if (!($399)) { - $465 = $s; - $466 = $465; - $467 = HEAP32[$466>>2]|0; - $468 = (($465) + 4)|0; - $469 = $468; - $470 = HEAP32[$469>>2]|0; - $471 = (+($467>>>0)) + (4294967296.0*(+($470|0))); - HEAPF64[$result>>3] = $471; - break; - } - HEAPF64[$scale>>3] = 1.0; - $400 = HEAP32[$e>>2]|0; - $401 = ($400|0)>(307); - $402 = HEAP32[$e>>2]|0; - $403 = ($402|0)<(342); - $or$cond = $401 & $403; - if ($or$cond) { - while(1) { - $404 = HEAP32[$e>>2]|0; - $405 = (($404|0) % 308)&-1; - $406 = ($405|0)!=(0); - if (!($406)) { - break; - } - $407 = +HEAPF64[$scale>>3]; - $408 = $407 * 10.0; - HEAPF64[$scale>>3] = $408; - $409 = HEAP32[$e>>2]|0; - $410 = (($409) - 1)|0; - HEAP32[$e>>2] = $410; - } - $411 = HEAP32[$esign>>2]|0; - $412 = ($411|0)<(0); - $413 = $s; - $414 = $413; - $415 = HEAP32[$414>>2]|0; - $416 = (($413) + 4)|0; - $417 = $416; - $418 = HEAP32[$417>>2]|0; - $419 = (+($415>>>0)) + (4294967296.0*(+($418|0))); - $420 = +HEAPF64[$scale>>3]; - if ($412) { - $421 = $419 / $420; - HEAPF64[$result>>3] = $421; - $422 = +HEAPF64[$result>>3]; - $423 = $422 / 1.00000000000000001098E+308; - HEAPF64[$result>>3] = $423; - break; - } else { - $424 = $419 * $420; - HEAPF64[$result>>3] = $424; - $425 = +HEAPF64[$result>>3]; - $426 = $425 * 1.00000000000000001098E+308; - HEAPF64[$result>>3] = $426; - break; - } - } - $427 = HEAP32[$e>>2]|0; - $428 = ($427|0)>=(342); - if ($428) { - $429 = HEAP32[$esign>>2]|0; - $430 = ($429|0)<(0); - $431 = $s; - $432 = $431; - $433 = HEAP32[$432>>2]|0; - $434 = (($431) + 4)|0; - $435 = $434; - $436 = HEAP32[$435>>2]|0; - $437 = (+($433>>>0)) + (4294967296.0*(+($436|0))); - if ($430) { - $438 = 0.0 * $437; - HEAPF64[$result>>3] = $438; - break; - } else { - $439 = inf * $437; - HEAPF64[$result>>3] = $439; - break; - } - } - while(1) { - $440 = HEAP32[$e>>2]|0; - $441 = (($440|0) % 22)&-1; - $442 = ($441|0)!=(0); - if (!($442)) { - break; - } - $443 = +HEAPF64[$scale>>3]; - $444 = $443 * 10.0; - HEAPF64[$scale>>3] = $444; - $445 = HEAP32[$e>>2]|0; - $446 = (($445) - 1)|0; - HEAP32[$e>>2] = $446; - } - while(1) { - $447 = HEAP32[$e>>2]|0; - $448 = ($447|0)>(0); - if (!($448)) { - break; - } - $449 = +HEAPF64[$scale>>3]; - $450 = $449 * 1.0E+22; - HEAPF64[$scale>>3] = $450; - $451 = HEAP32[$e>>2]|0; - $452 = (($451) - 22)|0; - HEAP32[$e>>2] = $452; - } - $453 = HEAP32[$esign>>2]|0; - $454 = ($453|0)<(0); - $455 = $s; - $456 = $455; - $457 = HEAP32[$456>>2]|0; - $458 = (($455) + 4)|0; - $459 = $458; - $460 = HEAP32[$459>>2]|0; - $461 = (+($457>>>0)) + (4294967296.0*(+($460|0))); - $462 = +HEAPF64[$scale>>3]; - if ($454) { - $463 = $461 / $462; - HEAPF64[$result>>3] = $463; - break; - } else { - $464 = $461 * $462; - HEAPF64[$result>>3] = $464; - break; - } - } else { - $320 = HEAP32[$sign>>2]|0; - $321 = ($320|0)<(0); - if ($321) { - $322 = HEAP32[$nDigits>>2]|0; - $323 = ($322|0)!=(0); - $325 = $323; - } else { - $325 = 0; - } - $324 = $325 ? -0.0 : 0.0; - HEAPF64[$result>>3] = $324; - } - } while(0); - $472 = +HEAPF64[$result>>3]; - $473 = HEAP32[$2>>2]|0; - HEAPF64[$473>>3] = $472; - $474 = HEAP32[$1>>2]|0; - $475 = HEAP32[$zEnd>>2]|0; - $476 = ($474>>>0)>=($475>>>0); - if ($476) { - $477 = HEAP32[$nDigits>>2]|0; - $478 = ($477|0)>(0); - if ($478) { - $479 = HEAP32[$eValid>>2]|0; - $480 = ($479|0)!=(0); - if ($480) { - $481 = HEAP32[$nonNum>>2]|0; - $482 = ($481|0)==(0); - $484 = $482; - } else { - $484 = 0; - } - } else { - $484 = 0; - } - } else { - $484 = 0; - } - $483 = $484&1; - HEAP32[$0>>2] = $483; - $485 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($485|0); -} -function _parseHhMmSs($zDate,$p) { - $zDate = $zDate|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0.0, $43 = 0.0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0.0, $48 = 0.0, $49 = 0.0, $5 = 0, $50 = 0.0, $51 = 0.0, $52 = 0, $53 = 0, $54 = 0.0, $55 = 0.0, $56 = 0.0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0.0, $69 = 0.0, $7 = 0, $70 = 0.0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $9 = 0, $h = 0, $m = 0, $ms = 0, $rScale = 0, $s = 0, $vararg_buffer10 = 0, $vararg_ptr1 = 0, $vararg_ptr13 = 0, $vararg_ptr14 = 0, $vararg_ptr15 = 0, $vararg_ptr16 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0; - var $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer10 = sp + 16|0; - $0 = sp + 76|0; - $1 = sp + 72|0; - $2 = sp + 68|0; - $h = sp + 64|0; - $m = sp + 60|0; - $s = sp + 56|0; - $ms = sp + 8|0; - $rScale = sp; - HEAP32[$1>>2] = $zDate; - HEAP32[$2>>2] = $p; - HEAPF64[$ms>>3] = 0.0; - $3 = HEAP32[$1>>2]|0; - HEAP32[$vararg_buffer10>>2] = 2; - $vararg_ptr1 = (($vararg_buffer10) + 4|0); - HEAP32[$vararg_ptr1>>2] = 0; - $vararg_ptr2 = (($vararg_buffer10) + 8|0); - HEAP32[$vararg_ptr2>>2] = 24; - $vararg_ptr3 = (($vararg_buffer10) + 12|0); - HEAP32[$vararg_ptr3>>2] = 58; - $vararg_ptr4 = (($vararg_buffer10) + 16|0); - HEAP32[$vararg_ptr4>>2] = $h; - $vararg_ptr5 = (($vararg_buffer10) + 20|0); - HEAP32[$vararg_ptr5>>2] = 2; - $vararg_ptr6 = (($vararg_buffer10) + 24|0); - HEAP32[$vararg_ptr6>>2] = 0; - $vararg_ptr7 = (($vararg_buffer10) + 28|0); - HEAP32[$vararg_ptr7>>2] = 59; - $vararg_ptr8 = (($vararg_buffer10) + 32|0); - HEAP32[$vararg_ptr8>>2] = 0; - $vararg_ptr9 = (($vararg_buffer10) + 36|0); - HEAP32[$vararg_ptr9>>2] = $m; - $4 = (_getDigits($3,$vararg_buffer10)|0); - $5 = ($4|0)!=(2); - if ($5) { - HEAP32[$0>>2] = 1; - $85 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($85|0); - } - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 5|0); - HEAP32[$1>>2] = $7; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP8[$8>>0]|0; - $10 = $9 << 24 >> 24; - $11 = ($10|0)==(58); - if ($11) { - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 1|0); - HEAP32[$1>>2] = $13; - $14 = HEAP32[$1>>2]|0; - HEAP32[$vararg_buffer10>>2] = 2; - $vararg_ptr13 = (($vararg_buffer10) + 4|0); - HEAP32[$vararg_ptr13>>2] = 0; - $vararg_ptr14 = (($vararg_buffer10) + 8|0); - HEAP32[$vararg_ptr14>>2] = 59; - $vararg_ptr15 = (($vararg_buffer10) + 12|0); - HEAP32[$vararg_ptr15>>2] = 0; - $vararg_ptr16 = (($vararg_buffer10) + 16|0); - HEAP32[$vararg_ptr16>>2] = $s; - $15 = (_getDigits($14,$vararg_buffer10)|0); - $16 = ($15|0)!=(1); - if ($16) { - HEAP32[$0>>2] = 1; - $85 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($85|0); - } - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 2|0); - HEAP32[$1>>2] = $18; - $19 = HEAP32[$1>>2]|0; - $20 = HEAP8[$19>>0]|0; - $21 = $20 << 24 >> 24; - $22 = ($21|0)==(46); - if ($22) { - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 1|0); - $25 = HEAP8[$24>>0]|0; - $26 = $25&255; - $27 = (48 + ($26)|0); - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = $29 & 4; - $31 = ($30|0)!=(0); - if ($31) { - HEAPF64[$rScale>>3] = 1.0; - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 1|0); - HEAP32[$1>>2] = $33; - while(1) { - $34 = HEAP32[$1>>2]|0; - $35 = HEAP8[$34>>0]|0; - $36 = $35&255; - $37 = (48 + ($36)|0); - $38 = HEAP8[$37>>0]|0; - $39 = $38&255; - $40 = $39 & 4; - $41 = ($40|0)!=(0); - if (!($41)) { - break; - } - $42 = +HEAPF64[$ms>>3]; - $43 = $42 * 10.0; - $44 = HEAP32[$1>>2]|0; - $45 = HEAP8[$44>>0]|0; - $46 = $45 << 24 >> 24; - $47 = (+($46|0)); - $48 = $43 + $47; - $49 = $48 - 48.0; - HEAPF64[$ms>>3] = $49; - $50 = +HEAPF64[$rScale>>3]; - $51 = $50 * 10.0; - HEAPF64[$rScale>>3] = $51; - $52 = HEAP32[$1>>2]|0; - $53 = (($52) + 1|0); - HEAP32[$1>>2] = $53; - } - $54 = +HEAPF64[$rScale>>3]; - $55 = +HEAPF64[$ms>>3]; - $56 = $55 / $54; - HEAPF64[$ms>>3] = $56; - } - } - } else { - HEAP32[$s>>2] = 0; - } - $57 = HEAP32[$2>>2]|0; - $58 = (($57) + 42|0); - HEAP8[$58>>0] = 0; - $59 = HEAP32[$2>>2]|0; - $60 = (($59) + 41|0); - HEAP8[$60>>0] = 1; - $61 = HEAP32[$h>>2]|0; - $62 = HEAP32[$2>>2]|0; - $63 = (($62) + 20|0); - HEAP32[$63>>2] = $61; - $64 = HEAP32[$m>>2]|0; - $65 = HEAP32[$2>>2]|0; - $66 = (($65) + 24|0); - HEAP32[$66>>2] = $64; - $67 = HEAP32[$s>>2]|0; - $68 = (+($67|0)); - $69 = +HEAPF64[$ms>>3]; - $70 = $68 + $69; - $71 = HEAP32[$2>>2]|0; - $72 = (($71) + 32|0); - HEAPF64[$72>>3] = $70; - $73 = HEAP32[$1>>2]|0; - $74 = HEAP32[$2>>2]|0; - $75 = (_parseTimezone($73,$74)|0); - $76 = ($75|0)!=(0); - if ($76) { - HEAP32[$0>>2] = 1; - $85 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($85|0); - } else { - $77 = HEAP32[$2>>2]|0; - $78 = (($77) + 28|0); - $79 = HEAP32[$78>>2]|0; - $80 = ($79|0)!=(0); - $81 = $80 ? 1 : 0; - $82 = $81&255; - $83 = HEAP32[$2>>2]|0; - $84 = (($83) + 43|0); - HEAP8[$84>>0] = $82; - HEAP32[$0>>2] = 0; - $85 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($85|0); - } - return 0|0; -} -function _getDigits($zDate,$varargs) { - $zDate = $zDate|0; - $varargs = $varargs|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $N = 0, $ap = 0, $arglist_current = 0, $arglist_current11 = 0, $arglist_current2 = 0, $arglist_current5 = 0, $arglist_current8 = 0, $arglist_next = 0, $arglist_next12 = 0, $arglist_next3 = 0, $arglist_next6 = 0, $arglist_next9 = 0; - var $cnt = 0, $max = 0, $min = 0, $nextC = 0, $pVal = 0, $val = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 48|0; - $ap = sp + 32|0; - $val = sp + 24|0; - $N = sp + 20|0; - $min = sp + 16|0; - $max = sp + 12|0; - $nextC = sp + 8|0; - $pVal = sp + 4|0; - $cnt = sp; - HEAP32[$0>>2] = $zDate; - HEAP32[$cnt>>2] = 0; - HEAP32[$ap>>2] = $varargs; - L1: while(1) { - $arglist_current = HEAP32[$ap>>2]|0; - $1 = HEAP32[$arglist_current>>2]|0; - $arglist_next = (($arglist_current) + 4|0); - HEAP32[$ap>>2] = $arglist_next; - HEAP32[$N>>2] = $1; - $arglist_current2 = HEAP32[$ap>>2]|0; - $2 = HEAP32[$arglist_current2>>2]|0; - $arglist_next3 = (($arglist_current2) + 4|0); - HEAP32[$ap>>2] = $arglist_next3; - HEAP32[$min>>2] = $2; - $arglist_current5 = HEAP32[$ap>>2]|0; - $3 = HEAP32[$arglist_current5>>2]|0; - $arglist_next6 = (($arglist_current5) + 4|0); - HEAP32[$ap>>2] = $arglist_next6; - HEAP32[$max>>2] = $3; - $arglist_current8 = HEAP32[$ap>>2]|0; - $4 = HEAP32[$arglist_current8>>2]|0; - $arglist_next9 = (($arglist_current8) + 4|0); - HEAP32[$ap>>2] = $arglist_next9; - HEAP32[$nextC>>2] = $4; - $arglist_current11 = HEAP32[$ap>>2]|0; - $5 = HEAP32[$arglist_current11>>2]|0; - $arglist_next12 = (($arglist_current11) + 4|0); - HEAP32[$ap>>2] = $arglist_next12; - HEAP32[$pVal>>2] = $5; - HEAP32[$val>>2] = 0; - while(1) { - $6 = HEAP32[$N>>2]|0; - $7 = (($6) + -1)|0; - HEAP32[$N>>2] = $7; - $8 = ($6|0)!=(0); - if (!($8)) { - break; - } - $9 = HEAP32[$0>>2]|0; - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - $12 = (48 + ($11)|0); - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - $15 = $14 & 4; - $16 = ($15|0)!=(0); - if (!($16)) { - label = 11; - break L1; - } - $17 = HEAP32[$val>>2]|0; - $18 = ($17*10)|0; - $19 = HEAP32[$0>>2]|0; - $20 = HEAP8[$19>>0]|0; - $21 = $20 << 24 >> 24; - $22 = (($18) + ($21))|0; - $23 = (($22) - 48)|0; - HEAP32[$val>>2] = $23; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 1|0); - HEAP32[$0>>2] = $25; - } - $26 = HEAP32[$val>>2]|0; - $27 = HEAP32[$min>>2]|0; - $28 = ($26|0)<($27|0); - if ($28) { - label = 11; - break; - } - $29 = HEAP32[$val>>2]|0; - $30 = HEAP32[$max>>2]|0; - $31 = ($29|0)>($30|0); - if ($31) { - label = 11; - break; - } - $32 = HEAP32[$nextC>>2]|0; - $33 = ($32|0)!=(0); - if ($33) { - $34 = HEAP32[$nextC>>2]|0; - $35 = HEAP32[$0>>2]|0; - $36 = HEAP8[$35>>0]|0; - $37 = $36 << 24 >> 24; - $38 = ($34|0)!=($37|0); - if ($38) { - label = 11; - break; - } - } - $39 = HEAP32[$val>>2]|0; - $40 = HEAP32[$pVal>>2]|0; - HEAP32[$40>>2] = $39; - $41 = HEAP32[$0>>2]|0; - $42 = (($41) + 1|0); - HEAP32[$0>>2] = $42; - $43 = HEAP32[$cnt>>2]|0; - $44 = (($43) + 1)|0; - HEAP32[$cnt>>2] = $44; - $45 = HEAP32[$nextC>>2]|0; - $46 = ($45|0)!=(0); - if (!($46)) { - label = 11; - break; - } - } - if ((label|0) == 11) { - $47 = HEAP32[$cnt>>2]|0; - STACKTOP = sp;return ($47|0); - } - return 0|0; -} -function _parseTimezone($zDate,$p) { - $zDate = $zDate|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; - var $9 = 0, $c = 0, $nHr = 0, $nMn = 0, $or$cond = 0, $sgn = 0, $vararg_buffer = 0, $vararg_ptr10 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer = sp; - $0 = sp + 64|0; - $1 = sp + 60|0; - $2 = sp + 56|0; - $sgn = sp + 52|0; - $nHr = sp + 48|0; - $nMn = sp + 44|0; - $c = sp + 40|0; - HEAP32[$1>>2] = $zDate; - HEAP32[$2>>2] = $p; - HEAP32[$sgn>>2] = 0; - while(1) { - $3 = HEAP32[$1>>2]|0; - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - $6 = (48 + ($5)|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = $8 & 1; - $10 = ($9|0)!=(0); - if (!($10)) { - break; - } - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 1|0); - HEAP32[$1>>2] = $12; - } - $13 = HEAP32[$2>>2]|0; - $14 = (($13) + 28|0); - HEAP32[$14>>2] = 0; - $15 = HEAP32[$1>>2]|0; - $16 = HEAP8[$15>>0]|0; - $17 = $16 << 24 >> 24; - HEAP32[$c>>2] = $17; - $18 = HEAP32[$c>>2]|0; - $19 = ($18|0)==(45); - do { - if ($19) { - HEAP32[$sgn>>2] = -1; - label = 11; - } else { - $20 = HEAP32[$c>>2]|0; - $21 = ($20|0)==(43); - if ($21) { - HEAP32[$sgn>>2] = 1; - label = 11; - break; - } - $22 = HEAP32[$c>>2]|0; - $23 = ($22|0)==(90); - $24 = HEAP32[$c>>2]|0; - $25 = ($24|0)==(122); - $or$cond = $23 | $25; - if ($or$cond) { - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 1|0); - HEAP32[$1>>2] = $27; - break; - } - $28 = HEAP32[$c>>2]|0; - $29 = ($28|0)!=(0); - $30 = $29&1; - HEAP32[$0>>2] = $30; - $60 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($60|0); - } - } while(0); - do { - if ((label|0) == 11) { - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 1|0); - HEAP32[$1>>2] = $32; - $33 = HEAP32[$1>>2]|0; - HEAP32[$vararg_buffer>>2] = 2; - $vararg_ptr2 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr2>>2] = 0; - $vararg_ptr3 = (($vararg_buffer) + 8|0); - HEAP32[$vararg_ptr3>>2] = 14; - $vararg_ptr4 = (($vararg_buffer) + 12|0); - HEAP32[$vararg_ptr4>>2] = 58; - $vararg_ptr5 = (($vararg_buffer) + 16|0); - HEAP32[$vararg_ptr5>>2] = $nHr; - $vararg_ptr6 = (($vararg_buffer) + 20|0); - HEAP32[$vararg_ptr6>>2] = 2; - $vararg_ptr7 = (($vararg_buffer) + 24|0); - HEAP32[$vararg_ptr7>>2] = 0; - $vararg_ptr8 = (($vararg_buffer) + 28|0); - HEAP32[$vararg_ptr8>>2] = 59; - $vararg_ptr9 = (($vararg_buffer) + 32|0); - HEAP32[$vararg_ptr9>>2] = 0; - $vararg_ptr10 = (($vararg_buffer) + 36|0); - HEAP32[$vararg_ptr10>>2] = $nMn; - $34 = (_getDigits($33,$vararg_buffer)|0); - $35 = ($34|0)!=(2); - if (!($35)) { - $36 = HEAP32[$1>>2]|0; - $37 = (($36) + 5|0); - HEAP32[$1>>2] = $37; - $38 = HEAP32[$sgn>>2]|0; - $39 = HEAP32[$nMn>>2]|0; - $40 = HEAP32[$nHr>>2]|0; - $41 = ($40*60)|0; - $42 = (($39) + ($41))|0; - $43 = Math_imul($38, $42)|0; - $44 = HEAP32[$2>>2]|0; - $45 = (($44) + 28|0); - HEAP32[$45>>2] = $43; - break; - } - HEAP32[$0>>2] = 1; - $60 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($60|0); - } - } while(0); - while(1) { - $46 = HEAP32[$1>>2]|0; - $47 = HEAP8[$46>>0]|0; - $48 = $47&255; - $49 = (48 + ($48)|0); - $50 = HEAP8[$49>>0]|0; - $51 = $50&255; - $52 = $51 & 1; - $53 = ($52|0)!=(0); - $54 = HEAP32[$1>>2]|0; - if (!($53)) { - break; - } - $55 = (($54) + 1|0); - HEAP32[$1>>2] = $55; - } - $56 = HEAP8[$54>>0]|0; - $57 = $56 << 24 >> 24; - $58 = ($57|0)!=(0); - $59 = $58&1; - HEAP32[$0>>2] = $59; - $60 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($60|0); -} -function _osLocaltime($t,$pTm) { - $t = $t|0; - $pTm = $pTm|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pX = 0, $rc = 0, dest = 0, label = 0, sp = 0; - var src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $rc = sp + 4|0; - $pX = sp; - HEAP32[$0>>2] = $t; - HEAP32[$1>>2] = $pTm; - $2 = HEAP32[$0>>2]|0; - $3 = (_localtime(($2|0))|0); - HEAP32[$pX>>2] = $3; - $4 = HEAP32[((38512 + 264|0))>>2]|0; - $5 = ($4|0)!=(0); - $$ = $5 ? 0 : $3; - HEAP32[$pX>>2] = $$; - $6 = HEAP32[$pX>>2]|0; - $7 = ($6|0)!=(0|0); - if ($7) { - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$pX>>2]|0; - dest=$8+0|0; src=$9+0|0; stop=dest+44|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - } - $10 = HEAP32[$pX>>2]|0; - $11 = ($10|0)==(0|0); - $12 = $11&1; - HEAP32[$rc>>2] = $12; - $13 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($13|0); -} -function _parseYyyyMmDd($zDate,$p) { - $zDate = $zDate|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; - var $9 = 0, $D = 0, $M = 0, $Y = 0, $neg = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr12 = 0, $vararg_ptr13 = 0, $vararg_ptr14 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $vararg_buffer = sp; - $0 = sp + 84|0; - $1 = sp + 80|0; - $2 = sp + 76|0; - $Y = sp + 72|0; - $M = sp + 68|0; - $D = sp + 64|0; - $neg = sp + 60|0; - HEAP32[$1>>2] = $zDate; - HEAP32[$2>>2] = $p; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP8[$3>>0]|0; - $5 = $4 << 24 >> 24; - $6 = ($5|0)==(45); - if ($6) { - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 1|0); - HEAP32[$1>>2] = $8; - HEAP32[$neg>>2] = 1; - } else { - HEAP32[$neg>>2] = 0; - } - $9 = HEAP32[$1>>2]|0; - HEAP32[$vararg_buffer>>2] = 4; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = 0; - $vararg_ptr2 = (($vararg_buffer) + 8|0); - HEAP32[$vararg_ptr2>>2] = 9999; - $vararg_ptr3 = (($vararg_buffer) + 12|0); - HEAP32[$vararg_ptr3>>2] = 45; - $vararg_ptr4 = (($vararg_buffer) + 16|0); - HEAP32[$vararg_ptr4>>2] = $Y; - $vararg_ptr5 = (($vararg_buffer) + 20|0); - HEAP32[$vararg_ptr5>>2] = 2; - $vararg_ptr6 = (($vararg_buffer) + 24|0); - HEAP32[$vararg_ptr6>>2] = 1; - $vararg_ptr7 = (($vararg_buffer) + 28|0); - HEAP32[$vararg_ptr7>>2] = 12; - $vararg_ptr8 = (($vararg_buffer) + 32|0); - HEAP32[$vararg_ptr8>>2] = 45; - $vararg_ptr9 = (($vararg_buffer) + 36|0); - HEAP32[$vararg_ptr9>>2] = $M; - $vararg_ptr10 = (($vararg_buffer) + 40|0); - HEAP32[$vararg_ptr10>>2] = 2; - $vararg_ptr11 = (($vararg_buffer) + 44|0); - HEAP32[$vararg_ptr11>>2] = 1; - $vararg_ptr12 = (($vararg_buffer) + 48|0); - HEAP32[$vararg_ptr12>>2] = 31; - $vararg_ptr13 = (($vararg_buffer) + 52|0); - HEAP32[$vararg_ptr13>>2] = 0; - $vararg_ptr14 = (($vararg_buffer) + 56|0); - HEAP32[$vararg_ptr14>>2] = $D; - $10 = (_getDigits($9,$vararg_buffer)|0); - $11 = ($10|0)!=(3); - if ($11) { - HEAP32[$0>>2] = 1; - $59 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($59|0); - } - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 10|0); - HEAP32[$1>>2] = $13; - while(1) { - $14 = HEAP32[$1>>2]|0; - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - $17 = (48 + ($16)|0); - $18 = HEAP8[$17>>0]|0; - $19 = $18&255; - $20 = $19 & 1; - $21 = ($20|0)!=(0); - if ($21) { - $60 = 1; - } else { - $22 = HEAP32[$1>>2]|0; - $23 = HEAP8[$22>>0]|0; - $24 = $23&255; - $25 = (84)==($24|0); - $60 = $25; - } - $26 = HEAP32[$1>>2]|0; - if (!($60)) { - break; - } - $27 = (($26) + 1|0); - HEAP32[$1>>2] = $27; - } - $28 = HEAP32[$2>>2]|0; - $29 = (_parseHhMmSs($26,$28)|0); - $30 = ($29|0)==(0); - do { - if (!($30)) { - $31 = HEAP32[$1>>2]|0; - $32 = HEAP8[$31>>0]|0; - $33 = $32 << 24 >> 24; - $34 = ($33|0)==(0); - if ($34) { - $35 = HEAP32[$2>>2]|0; - $36 = (($35) + 41|0); - HEAP8[$36>>0] = 0; - break; - } - HEAP32[$0>>2] = 1; - $59 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($59|0); - } - } while(0); - $37 = HEAP32[$2>>2]|0; - $38 = (($37) + 42|0); - HEAP8[$38>>0] = 0; - $39 = HEAP32[$2>>2]|0; - $40 = (($39) + 40|0); - HEAP8[$40>>0] = 1; - $41 = HEAP32[$neg>>2]|0; - $42 = ($41|0)!=(0); - $43 = HEAP32[$Y>>2]|0; - $44 = (0 - ($43))|0; - $45 = $42 ? $44 : $43; - $46 = HEAP32[$2>>2]|0; - $47 = (($46) + 8|0); - HEAP32[$47>>2] = $45; - $48 = HEAP32[$M>>2]|0; - $49 = HEAP32[$2>>2]|0; - $50 = (($49) + 12|0); - HEAP32[$50>>2] = $48; - $51 = HEAP32[$D>>2]|0; - $52 = HEAP32[$2>>2]|0; - $53 = (($52) + 16|0); - HEAP32[$53>>2] = $51; - $54 = HEAP32[$2>>2]|0; - $55 = (($54) + 43|0); - $56 = HEAP8[$55>>0]|0; - $57 = ($56<<24>>24)!=(0); - if ($57) { - $58 = HEAP32[$2>>2]|0; - _computeJD($58); - } - HEAP32[$0>>2] = 0; - $59 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($59|0); -} -function _sqlite3StmtCurrentTime($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $v = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $v = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 56|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$v>>2] = $3; - $4 = HEAP32[$v>>2]|0; - $5 = (($4) + 136|0); - $6 = $5; - $7 = $6; - $8 = HEAP32[$7>>2]|0; - $9 = (($6) + 4)|0; - $10 = $9; - $11 = HEAP32[$10>>2]|0; - $12 = ($8|0)==(0); - $13 = ($11|0)==(0); - $14 = $12 & $13; - if ($14) { - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 8|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$v>>2]|0; - $20 = (($19) + 136|0); - $21 = (_sqlite3OsCurrentTimeInt64($18,$20)|0); - HEAP32[$rc>>2] = $21; - $22 = HEAP32[$rc>>2]|0; - $23 = ($22|0)!=(0); - if ($23) { - $24 = HEAP32[$v>>2]|0; - $25 = (($24) + 136|0); - $26 = $25; - $27 = $26; - HEAP32[$27>>2] = 0; - $28 = (($26) + 4)|0; - $29 = $28; - HEAP32[$29>>2] = 0; - } - } - $30 = HEAP32[$v>>2]|0; - $31 = (($30) + 136|0); - $32 = $31; - $33 = $32; - $34 = HEAP32[$33>>2]|0; - $35 = (($32) + 4)|0; - $36 = $35; - $37 = HEAP32[$36>>2]|0; - tempRet0 = $37; - STACKTOP = sp;return ($34|0); -} -function _sqlite3OsCurrentTimeInt64($pVfs,$pTimeOut) { - $pVfs = $pVfs|0; - $pTimeOut = $pTimeOut|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0.0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $rc = sp + 8|0; - $r = sp; - HEAP32[$0>>2] = $pVfs; - HEAP32[$1>>2] = $pTimeOut; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)>=(2); - if ($4) { - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 72|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)!=(0|0); - if ($8) { - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 72|0); - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (FUNCTION_TABLE_iii[$11 & 63]($12,$13)|0); - HEAP32[$rc>>2] = $14; - $29 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($29|0); - } - } - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 64|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$0>>2]|0; - $19 = (FUNCTION_TABLE_iii[$17 & 63]($18,$r)|0); - HEAP32[$rc>>2] = $19; - $20 = +HEAPF64[$r>>3]; - $21 = $20 * 8.64E+7; - $22 = (~~$21)>>>0; - $23 = +Math_abs($21) >= 1.0 ? $21 > 0.0 ? (Math_min(+Math_floor($21 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($21 - +(~~$21 >>> 0)) / 4294967296.0) >>> 0 : 0; - $24 = HEAP32[$1>>2]|0; - $25 = $24; - $26 = $25; - HEAP32[$26>>2] = $22; - $27 = (($25) + 4)|0; - $28 = $27; - HEAP32[$28>>2] = $23; - $29 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($29|0); -} -function _sqlite3Utf8CharLen($zIn,$nByte) { - $zIn = $zIn|0; - $nByte = $nByte|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r = 0, $z = 0, $zTerm = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $r = sp + 8|0; - $z = sp + 4|0; - $zTerm = sp; - HEAP32[$0>>2] = $zIn; - HEAP32[$1>>2] = $nByte; - HEAP32[$r>>2] = 0; - $2 = HEAP32[$0>>2]|0; - HEAP32[$z>>2] = $2; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)>=(0); - if ($4) { - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$z>>2]|0; - $7 = (($6) + ($5)|0); - HEAP32[$zTerm>>2] = $7; - } else { - HEAP32[$zTerm>>2] = (-1); - } - while(1) { - $8 = HEAP32[$z>>2]|0; - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - $11 = ($10|0)!=(0); - if (!($11)) { - label = 10; - break; - } - $12 = HEAP32[$z>>2]|0; - $13 = HEAP32[$zTerm>>2]|0; - $14 = ($12>>>0)<($13>>>0); - if (!($14)) { - label = 10; - break; - } - $15 = HEAP32[$z>>2]|0; - $16 = (($15) + 1|0); - HEAP32[$z>>2] = $16; - $17 = HEAP8[$15>>0]|0; - $18 = $17&255; - $19 = ($18|0)>=(192); - L8: do { - if ($19) { - while(1) { - $20 = HEAP32[$z>>2]|0; - $21 = HEAP8[$20>>0]|0; - $22 = $21&255; - $23 = $22 & 192; - $24 = ($23|0)==(128); - if (!($24)) { - break L8; - } - $25 = HEAP32[$z>>2]|0; - $26 = (($25) + 1|0); - HEAP32[$z>>2] = $26; - } - } - } while(0); - $27 = HEAP32[$r>>2]|0; - $28 = (($27) + 1)|0; - HEAP32[$r>>2] = $28; - } - if ((label|0) == 10) { - $29 = HEAP32[$r>>2]|0; - STACKTOP = sp;return ($29|0); - } - return 0|0; -} -function _sqlite3Utf8Read($pz) { - $pz = $pz|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $c = sp; - HEAP32[$0>>2] = $pz; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 1|0); - HEAP32[$1>>2] = $3; - $4 = HEAP8[$2>>0]|0; - $5 = $4&255; - HEAP32[$c>>2] = $5; - $6 = HEAP32[$c>>2]|0; - $7 = ($6>>>0)>=(192); - if (!($7)) { - $35 = HEAP32[$c>>2]|0; - STACKTOP = sp;return ($35|0); - } - $8 = HEAP32[$c>>2]|0; - $9 = (($8) - 192)|0; - $10 = (4936 + ($9)|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - HEAP32[$c>>2] = $12; - while(1) { - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - $17 = $16 & 192; - $18 = ($17|0)==(128); - $19 = HEAP32[$c>>2]|0; - if (!($18)) { - break; - } - $20 = $19 << 6; - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$21>>2]|0; - $23 = (($22) + 1|0); - HEAP32[$21>>2] = $23; - $24 = HEAP8[$22>>0]|0; - $25 = $24&255; - $26 = 63 & $25; - $27 = (($20) + ($26))|0; - HEAP32[$c>>2] = $27; - } - $28 = ($19>>>0)<(128); - if (!($28)) { - $29 = HEAP32[$c>>2]|0; - $30 = $29 & -2048; - $31 = ($30|0)==(55296); - if (!($31)) { - $32 = HEAP32[$c>>2]|0; - $33 = $32 & -2; - $34 = ($33|0)==(65534); - if (!($34)) { - $35 = HEAP32[$c>>2]|0; - STACKTOP = sp;return ($35|0); - } - } - } - HEAP32[$c>>2] = 65533; - $35 = HEAP32[$c>>2]|0; - STACKTOP = sp;return ($35|0); -} -function _sqlite3StrAccumAppend($p,$z,$N) { - $p = $p|0; - $z = $z|0; - $N = $N|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $z; - HEAP32[$2>>2] = $N; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 12|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = (($5) + ($6))|0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 16|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($7|0)>=($10|0); - $12 = HEAP32[$0>>2]|0; - if ($11) { - $13 = HEAP32[$1>>2]|0; - $14 = HEAP32[$2>>2]|0; - _enlargeAndAppend($12,$13,$14); - STACKTOP = sp;return; - } else { - $15 = (($12) + 12|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 8|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($19) + ($16)|0); - $21 = HEAP32[$1>>2]|0; - $22 = HEAP32[$2>>2]|0; - _memcpy(($20|0),($21|0),($22|0))|0; - $23 = HEAP32[$2>>2]|0; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 12|0); - $26 = HEAP32[$25>>2]|0; - $27 = (($26) + ($23))|0; - HEAP32[$25>>2] = $27; - STACKTOP = sp;return; - } -} -function _enlargeAndAppend($p,$z,$N) { - $p = $p|0; - $z = $z|0; - $N = $N|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $z; - HEAP32[$2>>2] = $N; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$2>>2]|0; - $5 = (_sqlite3StrAccumEnlarge($3,$4)|0); - HEAP32[$2>>2] = $5; - $6 = HEAP32[$2>>2]|0; - $7 = ($6|0)>(0); - if (!($7)) { - STACKTOP = sp;return; - } - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 12|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 8|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + ($10)|0); - $15 = HEAP32[$1>>2]|0; - $16 = HEAP32[$2>>2]|0; - _memcpy(($14|0),($15|0),($16|0))|0; - $17 = HEAP32[$2>>2]|0; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 12|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($20) + ($17))|0; - HEAP32[$19>>2] = $21; - STACKTOP = sp;return; -} -function _sqlite3StrAccumEnlarge($p,$N) { - $p = $p|0; - $N = $N|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; - var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; - var $99 = 0, $szNew = 0, $zNew = 0, $zOld = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $zNew = sp + 12|0; - $zOld = sp + 8|0; - $szNew = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $N; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 25|0); - $5 = HEAP8[$4>>0]|0; - $6 = ($5<<24>>24)!=(0); - if ($6) { - HEAP32[$0>>2] = 0; - $120 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($120|0); - } - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 24|0); - $9 = HEAP8[$8>>0]|0; - $10 = ($9<<24>>24)!=(0); - $11 = HEAP32[$1>>2]|0; - if (!($10)) { - $12 = (($11) + 16|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 12|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($13) - ($16))|0; - $18 = (($17) - 1)|0; - HEAP32[$2>>2] = $18; - $19 = HEAP32[$1>>2]|0; - _setStrAccumError($19,2); - $20 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $20; - $120 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($120|0); - } - $21 = (($11) + 8|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 4|0); - $25 = HEAP32[$24>>2]|0; - $26 = ($22|0)==($25|0); - if ($26) { - $30 = 0; - } else { - $27 = HEAP32[$1>>2]|0; - $28 = (($27) + 8|0); - $29 = HEAP32[$28>>2]|0; - $30 = $29; - } - HEAP32[$zOld>>2] = $30; - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 12|0); - $33 = HEAP32[$32>>2]|0; - $34 = ($33|0)<(0); - $35 = $34 << 31 >> 31; - $36 = $szNew; - $37 = $36; - HEAP32[$37>>2] = $33; - $38 = (($36) + 4)|0; - $39 = $38; - HEAP32[$39>>2] = $35; - $40 = HEAP32[$2>>2]|0; - $41 = (($40) + 1)|0; - $42 = ($41|0)<(0); - $43 = $42 << 31 >> 31; - $44 = $szNew; - $45 = $44; - $46 = HEAP32[$45>>2]|0; - $47 = (($44) + 4)|0; - $48 = $47; - $49 = HEAP32[$48>>2]|0; - $50 = (_i64Add(($46|0),($49|0),($41|0),($43|0))|0); - $51 = tempRet0; - $52 = $szNew; - $53 = $52; - HEAP32[$53>>2] = $50; - $54 = (($52) + 4)|0; - $55 = $54; - HEAP32[$55>>2] = $51; - $56 = $szNew; - $57 = $56; - $58 = HEAP32[$57>>2]|0; - $59 = (($56) + 4)|0; - $60 = $59; - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$1>>2]|0; - $63 = (($62) + 20|0); - $64 = HEAP32[$63>>2]|0; - $65 = ($64|0)<(0); - $66 = $65 << 31 >> 31; - $67 = ($61|0)>($66|0); - $68 = ($61|0)==($66|0); - $69 = ($58>>>0)>($64>>>0); - $70 = $68 & $69; - $71 = $67 | $70; - if ($71) { - $72 = HEAP32[$1>>2]|0; - _sqlite3StrAccumReset($72); - $73 = HEAP32[$1>>2]|0; - _setStrAccumError($73,2); - HEAP32[$0>>2] = 0; - $120 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($120|0); - } - $74 = $szNew; - $75 = $74; - $76 = HEAP32[$75>>2]|0; - $77 = (($74) + 4)|0; - $78 = $77; - $79 = HEAP32[$78>>2]|0; - $80 = HEAP32[$1>>2]|0; - $81 = (($80) + 16|0); - HEAP32[$81>>2] = $76; - $82 = HEAP32[$1>>2]|0; - $83 = (($82) + 24|0); - $84 = HEAP8[$83>>0]|0; - $85 = $84&255; - $86 = ($85|0)==(1); - if ($86) { - $87 = HEAP32[$1>>2]|0; - $88 = HEAP32[$87>>2]|0; - $89 = HEAP32[$zOld>>2]|0; - $90 = HEAP32[$1>>2]|0; - $91 = (($90) + 16|0); - $92 = HEAP32[$91>>2]|0; - $93 = (_sqlite3DbRealloc($88,$89,$92)|0); - HEAP32[$zNew>>2] = $93; - } else { - $94 = HEAP32[$zOld>>2]|0; - $95 = HEAP32[$1>>2]|0; - $96 = (($95) + 16|0); - $97 = HEAP32[$96>>2]|0; - $98 = (_sqlite3_realloc($94,$97)|0); - HEAP32[$zNew>>2] = $98; - } - $99 = HEAP32[$zNew>>2]|0; - $100 = ($99|0)!=(0|0); - if (!($100)) { - $118 = HEAP32[$1>>2]|0; - _sqlite3StrAccumReset($118); - $119 = HEAP32[$1>>2]|0; - _setStrAccumError($119,1); - HEAP32[$0>>2] = 0; - $120 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($120|0); - } - $101 = HEAP32[$zOld>>2]|0; - $102 = ($101|0)==(0|0); - if ($102) { - $103 = HEAP32[$1>>2]|0; - $104 = (($103) + 12|0); - $105 = HEAP32[$104>>2]|0; - $106 = ($105|0)>(0); - if ($106) { - $107 = HEAP32[$zNew>>2]|0; - $108 = HEAP32[$1>>2]|0; - $109 = (($108) + 8|0); - $110 = HEAP32[$109>>2]|0; - $111 = HEAP32[$1>>2]|0; - $112 = (($111) + 12|0); - $113 = HEAP32[$112>>2]|0; - _memcpy(($107|0),($110|0),($113|0))|0; - } - } - $114 = HEAP32[$zNew>>2]|0; - $115 = HEAP32[$1>>2]|0; - $116 = (($115) + 8|0); - HEAP32[$116>>2] = $114; - $117 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $117; - $120 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($120|0); -} -function _setStrAccumError($p,$eError) { - $p = $p|0; - $eError = $eError|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - $1 = sp + 4|0; - HEAP32[$0>>2] = $p; - HEAP8[$1>>0] = $eError; - $2 = HEAP8[$1>>0]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 25|0); - HEAP8[$4>>0] = $2; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 16|0); - HEAP32[$6>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3StrAccumReset($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($3|0)!=($6|0); - do { - if ($7) { - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 24|0); - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - $12 = ($11|0)==(1); - $13 = HEAP32[$0>>2]|0; - if ($12) { - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 8|0); - $17 = HEAP32[$16>>2]|0; - _sqlite3DbFree($14,$17); - break; - } else { - $18 = (($13) + 8|0); - $19 = HEAP32[$18>>2]|0; - _sqlite3_free($19); - break; - } - } - } while(0); - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 8|0); - HEAP32[$21>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3DbRealloc($db,$p,$n) { - $db = $db|0; - $p = $p|0; - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pNew = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $pNew = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $p; - HEAP32[$3>>2] = $n; - HEAP32[$pNew>>2] = 0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 64|0); - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - $8 = ($7|0)==(0); - do { - if ($8) { - $9 = HEAP32[$2>>2]|0; - $10 = ($9|0)==(0|0); - $11 = HEAP32[$1>>2]|0; - if ($10) { - $12 = HEAP32[$3>>2]|0; - $13 = (_sqlite3DbMallocRaw($11,$12)|0); - HEAP32[$0>>2] = $13; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); - } - $14 = HEAP32[$2>>2]|0; - $15 = (_isLookaside($11,$14)|0); - $16 = ($15|0)!=(0); - if (!($16)) { - $37 = HEAP32[$2>>2]|0; - $38 = HEAP32[$3>>2]|0; - $39 = (_sqlite3_realloc($37,$38)|0); - HEAP32[$pNew>>2] = $39; - $40 = HEAP32[$pNew>>2]|0; - $41 = ($40|0)!=(0|0); - if ($41) { - break; - } - $42 = HEAP32[$1>>2]|0; - $43 = (($42) + 64|0); - HEAP8[$43>>0] = 1; - break; - } - $17 = HEAP32[$3>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 240|0); - $20 = HEAP16[$19>>1]|0; - $21 = $20&65535; - $22 = ($17|0)<=($21|0); - if ($22) { - $23 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $23; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); - } else { - $24 = HEAP32[$1>>2]|0; - $25 = HEAP32[$3>>2]|0; - $26 = (_sqlite3DbMallocRaw($24,$25)|0); - HEAP32[$pNew>>2] = $26; - $27 = HEAP32[$pNew>>2]|0; - $28 = ($27|0)!=(0|0); - if (!($28)) { - break; - } - $29 = HEAP32[$pNew>>2]|0; - $30 = HEAP32[$2>>2]|0; - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 240|0); - $33 = HEAP16[$32>>1]|0; - $34 = $33&65535; - _memcpy(($29|0),($30|0),($34|0))|0; - $35 = HEAP32[$1>>2]|0; - $36 = HEAP32[$2>>2]|0; - _sqlite3DbFree($35,$36); - break; - } - } - } while(0); - $44 = HEAP32[$pNew>>2]|0; - HEAP32[$0>>2] = $44; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); -} -function _isLookaside($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 240|0); - $5 = (($4) + 28|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($2>>>0)>=($6>>>0); - if (!($7)) { - $15 = 0; - $14 = $15&1; - STACKTOP = sp;return ($14|0); - } - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 240|0); - $11 = (($10) + 32|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($8>>>0)<($12>>>0); - $15 = $13; - $14 = $15&1; - STACKTOP = sp;return ($14|0); -} -function _sqlite3AddInt64($pA,$0,$1) { - $pA = $pA|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; - var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; - var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; - var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; - var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; - var $97 = 0, $98 = 0, $99 = 0, $iA = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 8|0; - $iA = sp; - HEAP32[$3>>2] = $pA; - $5 = $4; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - $9 = HEAP32[$3>>2]|0; - $10 = $9; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = (($10) + 4)|0; - $14 = $13; - $15 = HEAP32[$14>>2]|0; - $16 = $iA; - $17 = $16; - HEAP32[$17>>2] = $12; - $18 = (($16) + 4)|0; - $19 = $18; - HEAP32[$19>>2] = $15; - $20 = $4; - $21 = $20; - $22 = HEAP32[$21>>2]|0; - $23 = (($20) + 4)|0; - $24 = $23; - $25 = HEAP32[$24>>2]|0; - $26 = ($25|0)>(0); - $27 = ($25|0)==(0); - $28 = ($22>>>0)>=(0); - $29 = $27 & $28; - $30 = $26 | $29; - $31 = $iA; - $32 = $31; - $33 = HEAP32[$32>>2]|0; - $34 = (($31) + 4)|0; - $35 = $34; - $36 = HEAP32[$35>>2]|0; - if ($30) { - $37 = ($36|0)>(0); - $38 = ($36|0)==(0); - $39 = ($33>>>0)>(0); - $40 = $38 & $39; - $41 = $37 | $40; - if ($41) { - $42 = $iA; - $43 = $42; - $44 = HEAP32[$43>>2]|0; - $45 = (($42) + 4)|0; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = (_i64Subtract(-1,2147483647,($44|0),($47|0))|0); - $49 = tempRet0; - $50 = $4; - $51 = $50; - $52 = HEAP32[$51>>2]|0; - $53 = (($50) + 4)|0; - $54 = $53; - $55 = HEAP32[$54>>2]|0; - $56 = ($49|0)<($55|0); - $57 = ($49|0)==($55|0); - $58 = ($48>>>0)<($52>>>0); - $59 = $57 & $58; - $60 = $56 | $59; - if ($60) { - HEAP32[$2>>2] = 1; - $104 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($104|0); - } - } - } else { - $61 = ($36|0)<(0); - if ($61) { - $62 = $iA; - $63 = $62; - $64 = HEAP32[$63>>2]|0; - $65 = (($62) + 4)|0; - $66 = $65; - $67 = HEAP32[$66>>2]|0; - $68 = (_i64Add(($64|0),($67|0),-1,2147483647)|0); - $69 = tempRet0; - $70 = (_i64Subtract(0,0,($68|0),($69|0))|0); - $71 = tempRet0; - $72 = $4; - $73 = $72; - $74 = HEAP32[$73>>2]|0; - $75 = (($72) + 4)|0; - $76 = $75; - $77 = HEAP32[$76>>2]|0; - $78 = (_i64Add(($74|0),($77|0),1,0)|0); - $79 = tempRet0; - $80 = ($71|0)>($79|0); - $81 = ($71|0)==($79|0); - $82 = ($70>>>0)>($78>>>0); - $83 = $81 & $82; - $84 = $80 | $83; - if ($84) { - HEAP32[$2>>2] = 1; - $104 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($104|0); - } - } - } - $85 = $4; - $86 = $85; - $87 = HEAP32[$86>>2]|0; - $88 = (($85) + 4)|0; - $89 = $88; - $90 = HEAP32[$89>>2]|0; - $91 = HEAP32[$3>>2]|0; - $92 = $91; - $93 = $92; - $94 = HEAP32[$93>>2]|0; - $95 = (($92) + 4)|0; - $96 = $95; - $97 = HEAP32[$96>>2]|0; - $98 = (_i64Add(($94|0),($97|0),($87|0),($90|0))|0); - $99 = tempRet0; - $100 = $91; - $101 = $100; - HEAP32[$101>>2] = $98; - $102 = (($100) + 4)|0; - $103 = $102; - HEAP32[$103>>2] = $99; - HEAP32[$2>>2] = 0; - $104 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($104|0); -} -function _contextMalloc($context,$0,$1) { - $context = $context|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 16|0; - $3 = sp; - $z = sp + 12|0; - $db = sp + 8|0; - HEAP32[$2>>2] = $context; - $4 = $3; - $5 = $4; - HEAP32[$5>>2] = $0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = $1; - $8 = HEAP32[$2>>2]|0; - $9 = (_sqlite3_context_db_handle($8)|0); - HEAP32[$db>>2] = $9; - $10 = $3; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = (($10) + 4)|0; - $14 = $13; - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$db>>2]|0; - $17 = (($16) + 88|0); - $18 = HEAP32[$17>>2]|0; - $19 = ($18|0)<(0); - $20 = $19 << 31 >> 31; - $21 = ($15|0)>($20|0); - $22 = ($15|0)==($20|0); - $23 = ($12>>>0)>($18>>>0); - $24 = $22 & $23; - $25 = $21 | $24; - if ($25) { - $26 = HEAP32[$2>>2]|0; - _sqlite3_result_error_toobig($26); - HEAP32[$z>>2] = 0; - $37 = HEAP32[$z>>2]|0; - STACKTOP = sp;return ($37|0); - } - $27 = $3; - $28 = $27; - $29 = HEAP32[$28>>2]|0; - $30 = (($27) + 4)|0; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $33 = (_sqlite3Malloc($29)|0); - HEAP32[$z>>2] = $33; - $34 = HEAP32[$z>>2]|0; - $35 = ($34|0)!=(0|0); - if ($35) { - $37 = HEAP32[$z>>2]|0; - STACKTOP = sp;return ($37|0); - } - $36 = HEAP32[$2>>2]|0; - _sqlite3_result_error_nomem($36); - $37 = HEAP32[$z>>2]|0; - STACKTOP = sp;return ($37|0); -} -function _sqlite3GetFuncCollSeq($context) { - $context = $context|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $context; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 52|0); - $3 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _sqlite3MemCompare($pMem1,$pMem2,$pColl) { - $pMem1 = $pMem1|0; - $pMem2 = $pMem2|0; - $pColl = $pColl|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0.0, $109 = 0.0, $11 = 0, $110 = 0.0, $111 = 0, $112 = 0.0, $113 = 0.0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; - var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; - var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; - var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0.0, $79 = 0; - var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0.0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0.0, $97 = 0; - var $98 = 0, $99 = 0, $combined_flags = 0, $f1 = 0, $f2 = 0, $r1 = 0, $r2 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $rc = sp + 28|0; - $f1 = sp + 24|0; - $f2 = sp + 20|0; - $combined_flags = sp + 16|0; - $r1 = sp + 8|0; - $r2 = sp; - HEAP32[$1>>2] = $pMem1; - HEAP32[$2>>2] = $pMem2; - HEAP32[$3>>2] = $pColl; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 28|0); - $6 = HEAP16[$5>>1]|0; - $7 = $6&65535; - HEAP32[$f1>>2] = $7; - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + 28|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10&65535; - HEAP32[$f2>>2] = $11; - $12 = HEAP32[$f1>>2]|0; - $13 = HEAP32[$f2>>2]|0; - $14 = $12 | $13; - HEAP32[$combined_flags>>2] = $14; - $15 = HEAP32[$combined_flags>>2]|0; - $16 = $15 & 1; - $17 = ($16|0)!=(0); - if ($17) { - $18 = HEAP32[$f2>>2]|0; - $19 = $18 & 1; - $20 = HEAP32[$f1>>2]|0; - $21 = $20 & 1; - $22 = (($19) - ($21))|0; - HEAP32[$0>>2] = $22; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - $23 = HEAP32[$combined_flags>>2]|0; - $24 = $23 & 12; - $25 = ($24|0)!=(0); - if (!($25)) { - $115 = HEAP32[$combined_flags>>2]|0; - $116 = $115 & 2; - $117 = ($116|0)!=(0); - if ($117) { - $118 = HEAP32[$f1>>2]|0; - $119 = $118 & 2; - $120 = ($119|0)==(0); - if ($120) { - HEAP32[$0>>2] = 1; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - $121 = HEAP32[$f2>>2]|0; - $122 = $121 & 2; - $123 = ($122|0)==(0); - if ($123) { - HEAP32[$0>>2] = -1; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - $124 = HEAP32[$3>>2]|0; - $125 = ($124|0)!=(0|0); - if ($125) { - $126 = HEAP32[$1>>2]|0; - $127 = HEAP32[$2>>2]|0; - $128 = HEAP32[$3>>2]|0; - $129 = (_vdbeCompareMemString($126,$127,$128)|0); - HEAP32[$0>>2] = $129; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - } - $130 = HEAP32[$1>>2]|0; - $131 = (($130) + 4|0); - $132 = HEAP32[$131>>2]|0; - $133 = HEAP32[$2>>2]|0; - $134 = (($133) + 4|0); - $135 = HEAP32[$134>>2]|0; - $136 = HEAP32[$1>>2]|0; - $137 = (($136) + 24|0); - $138 = HEAP32[$137>>2]|0; - $139 = HEAP32[$2>>2]|0; - $140 = (($139) + 24|0); - $141 = HEAP32[$140>>2]|0; - $142 = ($138|0)>($141|0); - if ($142) { - $143 = HEAP32[$2>>2]|0; - $144 = (($143) + 24|0); - $145 = HEAP32[$144>>2]|0; - $149 = $145; - } else { - $146 = HEAP32[$1>>2]|0; - $147 = (($146) + 24|0); - $148 = HEAP32[$147>>2]|0; - $149 = $148; - } - $150 = (_memcmp($132,$135,$149)|0); - HEAP32[$rc>>2] = $150; - $151 = HEAP32[$rc>>2]|0; - $152 = ($151|0)==(0); - if ($152) { - $153 = HEAP32[$1>>2]|0; - $154 = (($153) + 24|0); - $155 = HEAP32[$154>>2]|0; - $156 = HEAP32[$2>>2]|0; - $157 = (($156) + 24|0); - $158 = HEAP32[$157>>2]|0; - $159 = (($155) - ($158))|0; - HEAP32[$rc>>2] = $159; - } - $160 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $160; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - $26 = HEAP32[$f1>>2]|0; - $27 = HEAP32[$f2>>2]|0; - $28 = $26 & $27; - $29 = $28 & 4; - $30 = ($29|0)!=(0); - if ($30) { - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 16|0); - $33 = $32; - $34 = $33; - $35 = HEAP32[$34>>2]|0; - $36 = (($33) + 4)|0; - $37 = $36; - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$2>>2]|0; - $40 = (($39) + 16|0); - $41 = $40; - $42 = $41; - $43 = HEAP32[$42>>2]|0; - $44 = (($41) + 4)|0; - $45 = $44; - $46 = HEAP32[$45>>2]|0; - $47 = ($38|0)<($46|0); - $48 = ($38|0)==($46|0); - $49 = ($35>>>0)<($43>>>0); - $50 = $48 & $49; - $51 = $47 | $50; - if ($51) { - HEAP32[$0>>2] = -1; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - $52 = HEAP32[$1>>2]|0; - $53 = (($52) + 16|0); - $54 = $53; - $55 = $54; - $56 = HEAP32[$55>>2]|0; - $57 = (($54) + 4)|0; - $58 = $57; - $59 = HEAP32[$58>>2]|0; - $60 = HEAP32[$2>>2]|0; - $61 = (($60) + 16|0); - $62 = $61; - $63 = $62; - $64 = HEAP32[$63>>2]|0; - $65 = (($62) + 4)|0; - $66 = $65; - $67 = HEAP32[$66>>2]|0; - $68 = ($59|0)>($67|0); - $69 = ($59|0)==($67|0); - $70 = ($56>>>0)>($64>>>0); - $71 = $69 & $70; - $72 = $68 | $71; - if ($72) { - HEAP32[$0>>2] = 1; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } else { - HEAP32[$0>>2] = 0; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - } - $73 = HEAP32[$f1>>2]|0; - $74 = $73 & 8; - $75 = ($74|0)!=(0); - do { - if ($75) { - $76 = HEAP32[$1>>2]|0; - $77 = (($76) + 8|0); - $78 = +HEAPF64[$77>>3]; - HEAPF64[$r1>>3] = $78; - } else { - $79 = HEAP32[$f1>>2]|0; - $80 = $79 & 4; - $81 = ($80|0)!=(0); - if ($81) { - $82 = HEAP32[$1>>2]|0; - $83 = (($82) + 16|0); - $84 = $83; - $85 = $84; - $86 = HEAP32[$85>>2]|0; - $87 = (($84) + 4)|0; - $88 = $87; - $89 = HEAP32[$88>>2]|0; - $90 = (+($86>>>0)) + (4294967296.0*(+($89|0))); - HEAPF64[$r1>>3] = $90; - break; - } - HEAP32[$0>>2] = 1; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - } while(0); - $91 = HEAP32[$f2>>2]|0; - $92 = $91 & 8; - $93 = ($92|0)!=(0); - do { - if ($93) { - $94 = HEAP32[$2>>2]|0; - $95 = (($94) + 8|0); - $96 = +HEAPF64[$95>>3]; - HEAPF64[$r2>>3] = $96; - } else { - $97 = HEAP32[$f2>>2]|0; - $98 = $97 & 4; - $99 = ($98|0)!=(0); - if ($99) { - $100 = HEAP32[$2>>2]|0; - $101 = (($100) + 16|0); - $102 = $101; - $103 = $102; - $104 = HEAP32[$103>>2]|0; - $105 = (($102) + 4)|0; - $106 = $105; - $107 = HEAP32[$106>>2]|0; - $108 = (+($104>>>0)) + (4294967296.0*(+($107|0))); - HEAPF64[$r2>>3] = $108; - break; - } - HEAP32[$0>>2] = -1; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - } while(0); - $109 = +HEAPF64[$r1>>3]; - $110 = +HEAPF64[$r2>>3]; - $111 = $109 < $110; - if ($111) { - HEAP32[$0>>2] = -1; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - $112 = +HEAPF64[$r1>>3]; - $113 = +HEAPF64[$r2>>3]; - $114 = $112 > $113; - if ($114) { - HEAP32[$0>>2] = 1; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } else { - HEAP32[$0>>2] = 0; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - return 0|0; -} -function _vdbeCompareMemString($pMem1,$pMem2,$pColl) { - $pMem1 = $pMem1|0; - $pMem2 = $pMem2|0; - $pColl = $pColl|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $c1 = 0, $c2 = 0, $n1 = 0, $n2 = 0, $rc = 0, $v1 = 0, $v2 = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $0 = sp + 112|0; - $1 = sp + 108|0; - $2 = sp + 104|0; - $3 = sp + 100|0; - $rc = sp + 96|0; - $v1 = sp + 92|0; - $v2 = sp + 88|0; - $n1 = sp + 84|0; - $n2 = sp + 80|0; - $c1 = sp + 40|0; - $c2 = sp; - HEAP32[$1>>2] = $pMem1; - HEAP32[$2>>2] = $pMem2; - HEAP32[$3>>2] = $pColl; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 30|0); - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - $8 = HEAP32[$3>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - $12 = ($7|0)==($11|0); - if ($12) { - $13 = HEAP32[$3>>2]|0; - $14 = (($13) + 12|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$3>>2]|0; - $17 = (($16) + 8|0); - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 24|0); - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 4|0); - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$2>>2]|0; - $26 = (($25) + 24|0); - $27 = HEAP32[$26>>2]|0; - $28 = HEAP32[$2>>2]|0; - $29 = (($28) + 4|0); - $30 = HEAP32[$29>>2]|0; - $31 = (FUNCTION_TABLE_iiiiii[$15 & 15]($18,$21,$24,$27,$30)|0); - HEAP32[$0>>2] = $31; - $64 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($64|0); - } - dest=$c1+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - dest=$c2+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $32 = HEAP32[$1>>2]|0; - _sqlite3VdbeMemShallowCopy($c1,$32,4096); - $33 = HEAP32[$2>>2]|0; - _sqlite3VdbeMemShallowCopy($c2,$33,4096); - $34 = HEAP32[$3>>2]|0; - $35 = (($34) + 4|0); - $36 = HEAP8[$35>>0]|0; - $37 = (_sqlite3ValueText($c1,$36)|0); - HEAP32[$v1>>2] = $37; - $38 = HEAP32[$v1>>2]|0; - $39 = ($38|0)==(0|0); - if ($39) { - $42 = 0; - } else { - $40 = (($c1) + 24|0); - $41 = HEAP32[$40>>2]|0; - $42 = $41; - } - HEAP32[$n1>>2] = $42; - $43 = HEAP32[$3>>2]|0; - $44 = (($43) + 4|0); - $45 = HEAP8[$44>>0]|0; - $46 = (_sqlite3ValueText($c2,$45)|0); - HEAP32[$v2>>2] = $46; - $47 = HEAP32[$v2>>2]|0; - $48 = ($47|0)==(0|0); - if ($48) { - $51 = 0; - } else { - $49 = (($c2) + 24|0); - $50 = HEAP32[$49>>2]|0; - $51 = $50; - } - HEAP32[$n2>>2] = $51; - $52 = HEAP32[$3>>2]|0; - $53 = (($52) + 12|0); - $54 = HEAP32[$53>>2]|0; - $55 = HEAP32[$3>>2]|0; - $56 = (($55) + 8|0); - $57 = HEAP32[$56>>2]|0; - $58 = HEAP32[$n1>>2]|0; - $59 = HEAP32[$v1>>2]|0; - $60 = HEAP32[$n2>>2]|0; - $61 = HEAP32[$v2>>2]|0; - $62 = (FUNCTION_TABLE_iiiiii[$54 & 15]($57,$58,$59,$60,$61)|0); - HEAP32[$rc>>2] = $62; - _sqlite3VdbeMemRelease($c1); - _sqlite3VdbeMemRelease($c2); - $63 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $63; - $64 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($64|0); -} -function _sqlite3VdbeMemShallowCopy($pTo,$pFrom,$srcType) { - $pTo = $pTo|0; - $pFrom = $pFrom|0; - $srcType = $srcType|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $pTo; - HEAP32[$1>>2] = $pFrom; - HEAP32[$2>>2] = $srcType; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 28|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5&65535; - $7 = $6 & 9312; - $8 = ($7|0)!=(0); - if ($8) { - $9 = HEAP32[$0>>2]|0; - _sqlite3VdbeMemReleaseExternal($9); - } - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$1>>2]|0; - dest=$10+0|0; src=$11+0|0; stop=dest+36|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 32|0); - HEAP32[$13>>2] = 0; - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 28|0); - $16 = HEAP16[$15>>1]|0; - $17 = $16&65535; - $18 = $17 & 2048; - $19 = ($18|0)==(0); - if (!($19)) { - STACKTOP = sp;return; - } - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 28|0); - $22 = HEAP16[$21>>1]|0; - $23 = $22&65535; - $24 = $23 & -7169; - $25 = $24&65535; - HEAP16[$21>>1] = $25; - $26 = HEAP32[$2>>2]|0; - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 28|0); - $29 = HEAP16[$28>>1]|0; - $30 = $29&65535; - $31 = $30 | $26; - $32 = $31&65535; - HEAP16[$28>>1] = $32; - STACKTOP = sp;return; -} -function _sqlite3XPrintf($p,$bFlags,$zFormat,$varargs) { - $p = $p|0; - $bFlags = $bFlags|0; - $zFormat = $zFormat|0; - $varargs = $varargs|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $ap = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $ap = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $bFlags; - HEAP32[$2>>2] = $zFormat; - HEAP32[$ap>>2] = $varargs; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - _sqlite3VXPrintf($3,$4,$5,$ap); - STACKTOP = sp;return; -} -function _sqlite3SkipAccumulatorLoad($context) { - $context = $context|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $context; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 68|0); - HEAP8[$2>>0] = 1; - STACKTOP = sp;return; -} -function _sqlite3ParserAlloc($mallocProc) { - $mallocProc = $mallocProc|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $pParser = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pParser = sp; - HEAP32[$0>>2] = $mallocProc; - $1 = HEAP32[$0>>2]|0; - $2 = (FUNCTION_TABLE_ii[$1 & 31](1612)|0); - HEAP32[$pParser>>2] = $2; - $3 = HEAP32[$pParser>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - $6 = HEAP32[$pParser>>2]|0; - STACKTOP = sp;return ($6|0); - } - $5 = HEAP32[$pParser>>2]|0; - HEAP32[$5>>2] = -1; - $6 = HEAP32[$pParser>>2]|0; - STACKTOP = sp;return ($6|0); -} -function _sqlite3Parser($yyp,$yymajor,$yyminor,$pParse) { - $yyp = $yyp|0; - $yymajor = $yymajor|0; - $yyminor = $yyminor|0; - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $yyact = 0, $yyminorunion = 0, $yyminorunion$byval_copy = 0, $yypParser = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $yyminorunion$byval_copy = sp + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $yyminorunion = sp + 8|0; - $yyact = sp + 4|0; - $yypParser = sp; - HEAP32[$0>>2] = $yyp; - HEAP32[$1>>2] = $yymajor; - HEAP32[$2>>2] = $pParse; - $3 = HEAP32[$0>>2]|0; - HEAP32[$yypParser>>2] = $3; - $4 = HEAP32[$yypParser>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)<(0); - if ($6) { - $7 = HEAP32[$yypParser>>2]|0; - HEAP32[$7>>2] = 0; - $8 = HEAP32[$yypParser>>2]|0; - $9 = (($8) + 4|0); - HEAP32[$9>>2] = -1; - $10 = HEAP32[$yypParser>>2]|0; - $11 = (($10) + 12|0); - HEAP16[$11>>1] = 0; - $12 = HEAP32[$yypParser>>2]|0; - $13 = (($12) + 12|0); - $14 = (($13) + 2|0); - HEAP8[$14>>0] = 0; - } - ;HEAP32[$yyminorunion+0>>2]=HEAP32[$yyminor+0>>2]|0;HEAP32[$yyminorunion+4>>2]=HEAP32[$yyminor+4>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = HEAP32[$yypParser>>2]|0; - $17 = (($16) + 8|0); - HEAP32[$17>>2] = $15; - while(1) { - $18 = HEAP32[$yypParser>>2]|0; - $19 = HEAP32[$1>>2]|0; - $20 = $19&255; - $21 = (_yy_find_shift_action($18,$20)|0); - HEAP32[$yyact>>2] = $21; - $22 = HEAP32[$yyact>>2]|0; - $23 = ($22|0)<(642); - do { - if ($23) { - $24 = HEAP32[$yypParser>>2]|0; - $25 = HEAP32[$yyact>>2]|0; - $26 = HEAP32[$1>>2]|0; - _yy_shift($24,$25,$26,$yyminorunion); - $27 = HEAP32[$yypParser>>2]|0; - $28 = (($27) + 4|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + -1)|0; - HEAP32[$28>>2] = $30; - HEAP32[$1>>2] = 254; - } else { - $31 = HEAP32[$yyact>>2]|0; - $32 = ($31|0)<(969); - $33 = HEAP32[$yypParser>>2]|0; - if ($32) { - $34 = HEAP32[$yyact>>2]|0; - $35 = (($34) - 642)|0; - _yy_reduce($33,$35); - break; - } else { - $36 = HEAP32[$1>>2]|0; - ;HEAP32[$yyminorunion$byval_copy+0>>2]=HEAP32[$yyminorunion+0>>2]|0;HEAP32[$yyminorunion$byval_copy+4>>2]=HEAP32[$yyminorunion+4>>2]|0;HEAP32[$yyminorunion$byval_copy+8>>2]=HEAP32[$yyminorunion+8>>2]|0; - _yy_syntax_error($33,$36,$yyminorunion$byval_copy); - $37 = HEAP32[$yypParser>>2]|0; - $38 = HEAP32[$1>>2]|0; - $39 = $38&255; - _yy_destructor($37,$39,$yyminorunion); - HEAP32[$1>>2] = 254; - break; - } - } - } while(0); - $40 = HEAP32[$1>>2]|0; - $41 = ($40|0)!=(254); - if (!($41)) { - label = 11; - break; - } - $42 = HEAP32[$yypParser>>2]|0; - $43 = HEAP32[$42>>2]|0; - $44 = ($43|0)>=(0); - if (!($44)) { - label = 11; - break; - } - } - if ((label|0) == 11) { - STACKTOP = sp;return; - } -} -function _sqlite3ParserFree($p,$freeProc) { - $p = $p|0; - $freeProc = $freeProc|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pParser = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pParser = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $freeProc; - $2 = HEAP32[$0>>2]|0; - HEAP32[$pParser>>2] = $2; - $3 = HEAP32[$pParser>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - STACKTOP = sp;return; - } - while(1) { - $5 = HEAP32[$pParser>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)>=(0); - if (!($7)) { - break; - } - $8 = HEAP32[$pParser>>2]|0; - (_yy_pop_parser_stack($8)|0); - } - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$pParser>>2]|0; - FUNCTION_TABLE_vi[$9 & 31]($10); - STACKTOP = sp;return; -} -function _sqlite3SetString($pz,$db,$zFormat,$varargs) { - $pz = $pz|0; - $db = $db|0; - $zFormat = $zFormat|0; - $varargs = $varargs|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ap = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $ap = sp + 8|0; - $z = sp; - HEAP32[$0>>2] = $pz; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $zFormat; - HEAP32[$ap>>2] = $varargs; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$2>>2]|0; - $5 = (_sqlite3VMPrintf($3,$4,$ap)|0); - HEAP32[$z>>2] = $5; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$7>>2]|0; - _sqlite3DbFree($6,$8); - $9 = HEAP32[$z>>2]|0; - $10 = HEAP32[$0>>2]|0; - HEAP32[$10>>2] = $9; - STACKTOP = sp;return; -} -function _sqlite3VdbeDelete($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)==(0|0); - if ($2) { - STACKTOP = sp;return; - } - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - $5 = HEAP32[$db>>2]|0; - $6 = HEAP32[$0>>2]|0; - _sqlite3VdbeClearObject($5,$6); - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 48|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)!=(0|0); - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 52|0); - $13 = HEAP32[$12>>2]|0; - if ($10) { - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 48|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + 52|0); - HEAP32[$17>>2] = $13; - } else { - $18 = HEAP32[$db>>2]|0; - $19 = (($18) + 4|0); - HEAP32[$19>>2] = $13; - } - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 52|0); - $22 = HEAP32[$21>>2]|0; - $23 = ($22|0)!=(0|0); - if ($23) { - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 48|0); - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 52|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + 48|0); - HEAP32[$30>>2] = $26; - } - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 40|0); - HEAP32[$32>>2] = -1241070648; - $33 = HEAP32[$0>>2]|0; - HEAP32[$33>>2] = 0; - $34 = HEAP32[$db>>2]|0; - $35 = HEAP32[$0>>2]|0; - _sqlite3DbFree($34,$35); - STACKTOP = sp;return; -} -function _sqlite3WithDelete($db,$pWith) { - $db = $db|0; - $pWith = $pWith|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pCte = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $i = sp + 4|0; - $pCte = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pWith; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $4 = HEAP32[$i>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = ($4|0)<($6|0); - if (!($7)) { - break; - } - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 8|0); - $11 = (($10) + ($8<<4)|0); - HEAP32[$pCte>>2] = $11; - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$pCte>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - _sqlite3ExprListDelete($12,$15); - $16 = HEAP32[$0>>2]|0; - $17 = HEAP32[$pCte>>2]|0; - $18 = (($17) + 8|0); - $19 = HEAP32[$18>>2]|0; - _sqlite3SelectDelete($16,$19); - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$pCte>>2]|0; - $22 = HEAP32[$21>>2]|0; - _sqlite3DbFree($20,$22); - $23 = HEAP32[$i>>2]|0; - $24 = (($23) + 1)|0; - HEAP32[$i>>2] = $24; - } - $25 = HEAP32[$0>>2]|0; - $26 = HEAP32[$1>>2]|0; - _sqlite3DbFree($25,$26); - STACKTOP = sp;return; -} -function _sqlite3ExprListDelete($db,$pList) { - $db = $db|0; - $pList = $pList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pItem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $i = sp + 4|0; - $pItem = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pList; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0|0); - if ($3) { - STACKTOP = sp;return; - } - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$pItem>>2] = $6; - HEAP32[$i>>2] = 0; - while(1) { - $7 = HEAP32[$i>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = ($7|0)<($9|0); - $11 = HEAP32[$0>>2]|0; - if (!($10)) { - break; - } - $12 = HEAP32[$pItem>>2]|0; - $13 = HEAP32[$12>>2]|0; - _sqlite3ExprDelete($11,$13); - $14 = HEAP32[$0>>2]|0; - $15 = HEAP32[$pItem>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - _sqlite3DbFree($14,$17); - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$pItem>>2]|0; - $20 = (($19) + 8|0); - $21 = HEAP32[$20>>2]|0; - _sqlite3DbFree($18,$21); - $22 = HEAP32[$i>>2]|0; - $23 = (($22) + 1)|0; - HEAP32[$i>>2] = $23; - $24 = HEAP32[$pItem>>2]|0; - $25 = (($24) + 20|0); - HEAP32[$pItem>>2] = $25; - } - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 4|0); - $28 = HEAP32[$27>>2]|0; - _sqlite3DbFree($11,$28); - $29 = HEAP32[$0>>2]|0; - $30 = HEAP32[$1>>2]|0; - _sqlite3DbFree($29,$30); - STACKTOP = sp;return; -} -function _sqlite3SelectDelete($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - STACKTOP = sp;return; - } - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$1>>2]|0; - _clearSelect($4,$5); - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - _sqlite3DbFree($6,$7); - STACKTOP = sp;return; -} -function _clearSelect($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - _sqlite3ExprListDelete($2,$4); - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 32|0); - $8 = HEAP32[$7>>2]|0; - _sqlite3SrcListDelete($5,$8); - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 36|0); - $12 = HEAP32[$11>>2]|0; - _sqlite3ExprDelete($9,$12); - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 40|0); - $16 = HEAP32[$15>>2]|0; - _sqlite3ExprListDelete($13,$16); - $17 = HEAP32[$0>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 44|0); - $20 = HEAP32[$19>>2]|0; - _sqlite3ExprDelete($17,$20); - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 48|0); - $24 = HEAP32[$23>>2]|0; - _sqlite3ExprListDelete($21,$24); - $25 = HEAP32[$0>>2]|0; - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 52|0); - $28 = HEAP32[$27>>2]|0; - _sqlite3SelectDelete($25,$28); - $29 = HEAP32[$0>>2]|0; - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 60|0); - $32 = HEAP32[$31>>2]|0; - _sqlite3ExprDelete($29,$32); - $33 = HEAP32[$0>>2]|0; - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 64|0); - $36 = HEAP32[$35>>2]|0; - _sqlite3ExprDelete($33,$36); - $37 = HEAP32[$0>>2]|0; - $38 = HEAP32[$1>>2]|0; - $39 = (($38) + 68|0); - $40 = HEAP32[$39>>2]|0; - _sqlite3WithDelete($37,$40); - STACKTOP = sp;return; -} -function _sqlite3SrcListDelete($db,$pList) { - $db = $db|0; - $pList = $pList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pItem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $i = sp + 4|0; - $pItem = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pList; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0|0); - if ($3) { - STACKTOP = sp;return; - } - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 8|0); - HEAP32[$pItem>>2] = $5; - HEAP32[$i>>2] = 0; - while(1) { - $6 = HEAP32[$i>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = ($6|0)<($8|0); - $10 = HEAP32[$0>>2]|0; - if (!($9)) { - break; - } - $11 = HEAP32[$pItem>>2]|0; - $12 = (($11) + 4|0); - $13 = HEAP32[$12>>2]|0; - _sqlite3DbFree($10,$13); - $14 = HEAP32[$0>>2]|0; - $15 = HEAP32[$pItem>>2]|0; - $16 = (($15) + 8|0); - $17 = HEAP32[$16>>2]|0; - _sqlite3DbFree($14,$17); - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$pItem>>2]|0; - $20 = (($19) + 12|0); - $21 = HEAP32[$20>>2]|0; - _sqlite3DbFree($18,$21); - $22 = HEAP32[$0>>2]|0; - $23 = HEAP32[$pItem>>2]|0; - $24 = (($23) + 64|0); - $25 = HEAP32[$24>>2]|0; - _sqlite3DbFree($22,$25); - $26 = HEAP32[$0>>2]|0; - $27 = HEAP32[$pItem>>2]|0; - $28 = (($27) + 16|0); - $29 = HEAP32[$28>>2]|0; - _sqlite3DeleteTable($26,$29); - $30 = HEAP32[$0>>2]|0; - $31 = HEAP32[$pItem>>2]|0; - $32 = (($31) + 20|0); - $33 = HEAP32[$32>>2]|0; - _sqlite3SelectDelete($30,$33); - $34 = HEAP32[$0>>2]|0; - $35 = HEAP32[$pItem>>2]|0; - $36 = (($35) + 44|0); - $37 = HEAP32[$36>>2]|0; - _sqlite3ExprDelete($34,$37); - $38 = HEAP32[$0>>2]|0; - $39 = HEAP32[$pItem>>2]|0; - $40 = (($39) + 48|0); - $41 = HEAP32[$40>>2]|0; - _sqlite3IdListDelete($38,$41); - $42 = HEAP32[$i>>2]|0; - $43 = (($42) + 1)|0; - HEAP32[$i>>2] = $43; - $44 = HEAP32[$pItem>>2]|0; - $45 = (($44) + 72|0); - HEAP32[$pItem>>2] = $45; - } - $46 = HEAP32[$1>>2]|0; - _sqlite3DbFree($10,$46); - STACKTOP = sp;return; -} -function _sqlite3ExprDelete($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0|0); - if ($3) { - STACKTOP = sp;return; - } - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - $7 = $6 & 16384; - $8 = ($7|0)!=(0); - do { - if (!($8)) { - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 12|0); - $12 = HEAP32[$11>>2]|0; - _sqlite3ExprDelete($9,$12); - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 16|0); - $16 = HEAP32[$15>>2]|0; - _sqlite3ExprDelete($13,$16); - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - $20 = $19 & 65536; - $21 = ($20|0)!=(0); - if ($21) { - $22 = HEAP32[$0>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 8|0); - $25 = HEAP32[$24>>2]|0; - _sqlite3DbFree($22,$25); - } - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 4|0); - $28 = HEAP32[$27>>2]|0; - $29 = $28 & 2048; - $30 = ($29|0)!=(0); - $31 = HEAP32[$0>>2]|0; - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 20|0); - if ($30) { - $34 = HEAP32[$33>>2]|0; - _sqlite3SelectDelete($31,$34); - break; - } else { - $35 = HEAP32[$33>>2]|0; - _sqlite3ExprListDelete($31,$35); - break; - } - } - } while(0); - $36 = HEAP32[$1>>2]|0; - $37 = (($36) + 4|0); - $38 = HEAP32[$37>>2]|0; - $39 = $38 & 32768; - $40 = ($39|0)!=(0); - if ($40) { - STACKTOP = sp;return; - } - $41 = HEAP32[$0>>2]|0; - $42 = HEAP32[$1>>2]|0; - _sqlite3DbFree($41,$42); - STACKTOP = sp;return; -} -function _sqlite3IdListDelete($db,$pList) { - $db = $db|0; - $pList = $pList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pList; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0|0); - if ($3) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $4 = HEAP32[$i>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 4|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($4|0)<($7|0); - $9 = HEAP32[$0>>2]|0; - if (!($8)) { - break; - } - $10 = HEAP32[$i>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + ($10<<3)|0); - $14 = HEAP32[$13>>2]|0; - _sqlite3DbFree($9,$14); - $15 = HEAP32[$i>>2]|0; - $16 = (($15) + 1)|0; - HEAP32[$i>>2] = $16; - } - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$17>>2]|0; - _sqlite3DbFree($9,$18); - $19 = HEAP32[$0>>2]|0; - $20 = HEAP32[$1>>2]|0; - _sqlite3DbFree($19,$20); - STACKTOP = sp;return; -} -function _sqlite3VMPrintf($db,$zFormat,$ap) { - $db = $db|0; - $zFormat = $zFormat|0; - $ap = $ap|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $acc = 0, $z = 0, $zBase = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $z = sp + 28|0; - $zBase = sp + 44|0; - $acc = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $zFormat; - HEAP32[$2>>2] = $ap; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 88|0); - $5 = HEAP32[$4>>2]|0; - _sqlite3StrAccumInit($acc,$zBase,70,$5); - $6 = HEAP32[$0>>2]|0; - HEAP32[$acc>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$2>>2]|0; - _sqlite3VXPrintf($acc,1,$7,$8); - $9 = (_sqlite3StrAccumFinish($acc)|0); - HEAP32[$z>>2] = $9; - $10 = (($acc) + 25|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = ($12|0)==(1); - if (!($13)) { - $16 = HEAP32[$z>>2]|0; - STACKTOP = sp;return ($16|0); - } - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 64|0); - HEAP8[$15>>0] = 1; - $16 = HEAP32[$z>>2]|0; - STACKTOP = sp;return ($16|0); -} -function _yy_pop_parser_stack($pParser) { - $pParser = $pParser|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $yymajor = 0, $yytos = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $yymajor = sp + 12|0; - $yytos = sp; - HEAP32[$1>>2] = $pParser; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 12|0); - $6 = (($5) + ($3<<4)|0); - HEAP32[$yytos>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)<(0); - if ($9) { - HEAP32[$0>>2] = 0; - $22 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($22|0); - } else { - $10 = HEAP32[$yytos>>2]|0; - $11 = (($10) + 2|0); - $12 = HEAP8[$11>>0]|0; - HEAP8[$yymajor>>0] = $12; - $13 = HEAP32[$1>>2]|0; - $14 = HEAP8[$yymajor>>0]|0; - $15 = HEAP32[$yytos>>2]|0; - $16 = (($15) + 4|0); - _yy_destructor($13,$14,$16); - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + -1)|0; - HEAP32[$17>>2] = $19; - $20 = HEAP8[$yymajor>>0]|0; - $21 = $20&255; - HEAP32[$0>>2] = $21; - $22 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($22|0); - } - return 0|0; -} -function _yy_destructor($yypParser,$yymajor,$yypminor) { - $yypParser = $yypParser|0; - $yymajor = $yymajor|0; - $yypminor = $yypminor|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pParse = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 12|0; - $2 = sp + 4|0; - $pParse = sp; - HEAP32[$0>>2] = $yypParser; - HEAP8[$1>>0] = $yymajor; - HEAP32[$2>>2] = $yypminor; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 8|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pParse>>2] = $5; - $6 = HEAP8[$1>>0]|0; - $7 = $6&255; - do { - switch ($7|0) { - case 243: case 238: case 229: case 227: case 216: case 204: case 202: { - $28 = HEAP32[$pParse>>2]|0; - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$2>>2]|0; - $31 = HEAP32[$30>>2]|0; - _sqlite3ExprDelete($29,$31); - STACKTOP = sp;return; - break; - } - case 175: case 174: { - $12 = HEAP32[$pParse>>2]|0; - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$14>>2]|0; - _sqlite3ExprDelete($13,$15); - STACKTOP = sp;return; - break; - } - case 207: case 196: case 195: case 163: { - $8 = HEAP32[$pParse>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$10>>2]|0; - _sqlite3SelectDelete($9,$11); - STACKTOP = sp;return; - break; - } - case 236: { - $40 = HEAP32[$pParse>>2]|0; - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$2>>2]|0; - $43 = (($42) + 4|0); - $44 = HEAP32[$43>>2]|0; - _sqlite3IdListDelete($41,$44); - STACKTOP = sp;return; - break; - } - case 223: case 219: case 217: { - $32 = HEAP32[$pParse>>2]|0; - $33 = HEAP32[$32>>2]|0; - $34 = HEAP32[$2>>2]|0; - $35 = HEAP32[$34>>2]|0; - _sqlite3IdListDelete($33,$35); - STACKTOP = sp;return; - break; - } - case 213: case 212: case 201: case 194: { - $20 = HEAP32[$pParse>>2]|0; - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$2>>2]|0; - $23 = HEAP32[$22>>2]|0; - _sqlite3SrcListDelete($21,$23); - STACKTOP = sp;return; - break; - } - case 228: case 221: case 220: case 210: case 209: case 208: case 205: case 203: case 200: case 188: case 179: { - $16 = HEAP32[$pParse>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$2>>2]|0; - $19 = HEAP32[$18>>2]|0; - _sqlite3ExprListDelete($17,$19); - STACKTOP = sp;return; - break; - } - case 252: case 197: { - $24 = HEAP32[$pParse>>2]|0; - $25 = HEAP32[$24>>2]|0; - $26 = HEAP32[$2>>2]|0; - $27 = HEAP32[$26>>2]|0; - _sqlite3WithDelete($25,$27); - STACKTOP = sp;return; - break; - } - case 239: case 234: { - $36 = HEAP32[$pParse>>2]|0; - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$2>>2]|0; - $39 = HEAP32[$38>>2]|0; - _sqlite3DeleteTriggerStep($37,$39); - STACKTOP = sp;return; - break; - } - default: { - STACKTOP = sp;return; - } - } - } while(0); -} -function _sqlite3DeleteTriggerStep($db,$pTriggerStep) { - $db = $db|0; - $pTriggerStep = $pTriggerStep|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTmp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pTmp = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pTriggerStep; - while(1) { - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - break; - } - $4 = HEAP32[$1>>2]|0; - HEAP32[$pTmp>>2] = $4; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 32|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$1>>2] = $7; - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$pTmp>>2]|0; - $10 = (($9) + 20|0); - $11 = HEAP32[$10>>2]|0; - _sqlite3ExprDelete($8,$11); - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$pTmp>>2]|0; - $14 = (($13) + 24|0); - $15 = HEAP32[$14>>2]|0; - _sqlite3ExprListDelete($12,$15); - $16 = HEAP32[$0>>2]|0; - $17 = HEAP32[$pTmp>>2]|0; - $18 = (($17) + 8|0); - $19 = HEAP32[$18>>2]|0; - _sqlite3SelectDelete($16,$19); - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$pTmp>>2]|0; - $22 = (($21) + 28|0); - $23 = HEAP32[$22>>2]|0; - _sqlite3IdListDelete($20,$23); - $24 = HEAP32[$0>>2]|0; - $25 = HEAP32[$pTmp>>2]|0; - _sqlite3DbFree($24,$25); - } - STACKTOP = sp;return; -} -function _yy_find_shift_action($pParser,$iLookAhead) { - $pParser = $pParser|0; - $iLookAhead = $iLookAhead|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $8 = 0, $9 = 0, $i = 0, $iFallback = 0, $j = 0, $or$cond = 0; - var $stateno = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 21|0; - $i = sp + 8|0; - $stateno = sp + 4|0; - $iFallback = sp + 20|0; - $j = sp; - HEAP32[$1>>2] = $pParser; - HEAP8[$2>>0] = $iLookAhead; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 12|0); - $7 = (($6) + ($4<<4)|0); - $8 = HEAP16[$7>>1]|0; - $9 = $8&65535; - HEAP32[$stateno>>2] = $9; - $10 = HEAP32[$stateno>>2]|0; - $11 = ($10|0)>(429); - if (!($11)) { - $12 = HEAP32[$stateno>>2]|0; - $13 = (27064 + ($12<<1)|0); - $14 = HEAP16[$13>>1]|0; - $15 = $14 << 16 >> 16; - HEAP32[$i>>2] = $15; - $16 = ($15|0)==(-86); - if (!($16)) { - $21 = HEAP8[$2>>0]|0; - $22 = $21&255; - $23 = HEAP32[$i>>2]|0; - $24 = (($23) + ($22))|0; - HEAP32[$i>>2] = $24; - $25 = HEAP32[$i>>2]|0; - $26 = ($25|0)<(0); - $27 = HEAP32[$i>>2]|0; - $28 = ($27|0)>=(1497); - $or$cond = $26 | $28; - if (!($or$cond)) { - $29 = HEAP32[$i>>2]|0; - $30 = (29216 + ($29)|0); - $31 = HEAP8[$30>>0]|0; - $32 = $31&255; - $33 = HEAP8[$2>>0]|0; - $34 = $33&255; - $35 = ($32|0)!=($34|0); - if (!($35)) { - $71 = HEAP32[$i>>2]|0; - $72 = (11624 + ($71<<1)|0); - $73 = HEAP16[$72>>1]|0; - $74 = $73&65535; - HEAP32[$0>>2] = $74; - $75 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($75|0); - } - } - $36 = HEAP8[$2>>0]|0; - $37 = $36&255; - $38 = ($37|0)>(0); - if ($38) { - $39 = HEAP8[$2>>0]|0; - $40 = $39&255; - $41 = ($40>>>0)<(70); - if ($41) { - $42 = HEAP8[$2>>0]|0; - $43 = $42&255; - $44 = (30720 + ($43)|0); - $45 = HEAP8[$44>>0]|0; - HEAP8[$iFallback>>0] = $45; - $46 = $45&255; - $47 = ($46|0)!=(0); - if ($47) { - $48 = HEAP32[$1>>2]|0; - $49 = HEAP8[$iFallback>>0]|0; - $50 = (_yy_find_shift_action($48,$49)|0); - HEAP32[$0>>2] = $50; - $75 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($75|0); - } - } - $51 = HEAP32[$i>>2]|0; - $52 = HEAP8[$2>>0]|0; - $53 = $52&255; - $54 = (($51) - ($53))|0; - $55 = (($54) + 70)|0; - HEAP32[$j>>2] = $55; - $56 = HEAP32[$j>>2]|0; - $57 = ($56|0)>=(0); - if ($57) { - $58 = HEAP32[$j>>2]|0; - $59 = (29216 + ($58)|0); - $60 = HEAP8[$59>>0]|0; - $61 = $60&255; - $62 = ($61|0)==(70); - if ($62) { - $63 = HEAP32[$j>>2]|0; - $64 = (11624 + ($63<<1)|0); - $65 = HEAP16[$64>>1]|0; - $66 = $65&65535; - HEAP32[$0>>2] = $66; - $75 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($75|0); - } - } - } - $67 = HEAP32[$stateno>>2]|0; - $68 = (27928 + ($67<<1)|0); - $69 = HEAP16[$68>>1]|0; - $70 = $69&65535; - HEAP32[$0>>2] = $70; - $75 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($75|0); - } - } - $17 = HEAP32[$stateno>>2]|0; - $18 = (27928 + ($17<<1)|0); - $19 = HEAP16[$18>>1]|0; - $20 = $19&65535; - HEAP32[$0>>2] = $20; - $75 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($75|0); -} -function _yy_shift($yypParser,$yyNewState,$yyMajor,$yypMinor) { - $yypParser = $yypParser|0; - $yyNewState = $yyNewState|0; - $yyMajor = $yyMajor|0; - $yypMinor = $yypMinor|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $yytos = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $yytos = sp; - HEAP32[$0>>2] = $yypParser; - HEAP32[$1>>2] = $yyNewState; - HEAP32[$2>>2] = $yyMajor; - HEAP32[$3>>2] = $yypMinor; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = (($5) + 1)|0; - HEAP32[$4>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)>=(100); - $10 = HEAP32[$0>>2]|0; - if ($9) { - $11 = HEAP32[$3>>2]|0; - _yyStackOverflow($10,$11); - STACKTOP = sp;return; - } else { - $12 = HEAP32[$10>>2]|0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 12|0); - $15 = (($14) + ($12<<4)|0); - HEAP32[$yytos>>2] = $15; - $16 = HEAP32[$1>>2]|0; - $17 = $16&65535; - $18 = HEAP32[$yytos>>2]|0; - HEAP16[$18>>1] = $17; - $19 = HEAP32[$2>>2]|0; - $20 = $19&255; - $21 = HEAP32[$yytos>>2]|0; - $22 = (($21) + 2|0); - HEAP8[$22>>0] = $20; - $23 = HEAP32[$yytos>>2]|0; - $24 = (($23) + 4|0); - $25 = HEAP32[$3>>2]|0; - ;HEAP32[$24+0>>2]=HEAP32[$25+0>>2]|0;HEAP32[$24+4>>2]=HEAP32[$25+4>>2]|0;HEAP32[$24+8>>2]=HEAP32[$25+8>>2]|0; - STACKTOP = sp;return; - } -} -function _yy_reduce($yypParser,$yyruleno) { - $yypParser = $yypParser|0; - $yyruleno = $yyruleno|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0; - var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0; - var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0; - var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0; - var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0; - var $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0; - var $1105 = 0, $1106 = 0, $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0; - var $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0; - var $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0; - var $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0; - var $1178 = 0, $1179 = 0, $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0; - var $1196 = 0, $1197 = 0, $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0; - var $1213 = 0, $1214 = 0, $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0; - var $1231 = 0, $1232 = 0, $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0; - var $125 = 0, $1250 = 0, $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0, $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0; - var $1268 = 0, $1269 = 0, $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0, $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0; - var $1286 = 0, $1287 = 0, $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0, $1292 = 0, $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, $1299 = 0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0; - var $1303 = 0, $1304 = 0, $1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0, $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0; - var $1321 = 0, $1322 = 0, $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0, $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 0, $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0; - var $134 = 0, $1340 = 0, $1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 0, $1346 = 0, $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, $1352 = 0, $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0; - var $1358 = 0, $1359 = 0, $136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 0, $1364 = 0, $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, $1370 = 0, $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0; - var $1376 = 0, $1377 = 0, $1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 0, $1382 = 0, $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, $1389 = 0, $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0; - var $1394 = 0, $1395 = 0, $1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 0, $140 = 0, $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, $1406 = 0, $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0; - var $1411 = 0, $1412 = 0, $1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 0, $1418 = 0, $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, $1424 = 0, $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0; - var $143 = 0, $1430 = 0, $1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 0, $1436 = 0, $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, $1442 = 0, $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0; - var $1448 = 0, $1449 = 0, $145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 0, $1454 = 0, $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, $1460 = 0, $1461 = 0, $1462 = 0, $1463 = 0, $1464 = 0, $1465 = 0; - var $1466 = 0, $1467 = 0, $1468 = 0, $1469 = 0, $147 = 0, $1470 = 0, $1471 = 0, $1472 = 0, $1473 = 0, $1474 = 0, $1475 = 0, $1476 = 0, $1477 = 0, $1478 = 0, $1479 = 0, $148 = 0, $1480 = 0, $1481 = 0, $1482 = 0, $1483 = 0; - var $1484 = 0, $1485 = 0, $1486 = 0, $1487 = 0, $1488 = 0, $1489 = 0, $149 = 0, $1490 = 0, $1491 = 0, $1492 = 0, $1493 = 0, $1494 = 0, $1495 = 0, $1496 = 0, $1497 = 0, $1498 = 0, $1499 = 0, $15 = 0, $150 = 0, $1500 = 0; - var $1501 = 0, $1502 = 0, $1503 = 0, $1504 = 0, $1505 = 0, $1506 = 0, $1507 = 0, $1508 = 0, $1509 = 0, $151 = 0, $1510 = 0, $1511 = 0, $1512 = 0, $1513 = 0, $1514 = 0, $1515 = 0, $1516 = 0, $1517 = 0, $1518 = 0, $1519 = 0; - var $152 = 0, $1520 = 0, $1521 = 0, $1522 = 0, $1523 = 0, $1524 = 0, $1525 = 0, $1526 = 0, $1527 = 0, $1528 = 0, $1529 = 0, $153 = 0, $1530 = 0, $1531 = 0, $1532 = 0, $1533 = 0, $1534 = 0, $1535 = 0, $1536 = 0, $1537 = 0; - var $1538 = 0, $1539 = 0, $154 = 0, $1540 = 0, $1541 = 0, $1542 = 0, $1543 = 0, $1544 = 0, $1545 = 0, $1546 = 0, $1547 = 0, $1548 = 0, $1549 = 0, $155 = 0, $1550 = 0, $1551 = 0, $1552 = 0, $1553 = 0, $1554 = 0, $1555 = 0; - var $1556 = 0, $1557 = 0, $1558 = 0, $1559 = 0, $156 = 0, $1560 = 0, $1561 = 0, $1562 = 0, $1563 = 0, $1564 = 0, $1565 = 0, $1566 = 0, $1567 = 0, $1568 = 0, $1569 = 0, $157 = 0, $1570 = 0, $1571 = 0, $1572 = 0, $1573 = 0; - var $1574 = 0, $1575 = 0, $1576 = 0, $1577 = 0, $1578 = 0, $1579 = 0, $158 = 0, $1580 = 0, $1581 = 0, $1582 = 0, $1583 = 0, $1584 = 0, $1585 = 0, $1586 = 0, $1587 = 0, $1588 = 0, $1589 = 0, $159 = 0, $1590 = 0, $1591 = 0; - var $1592 = 0, $1593 = 0, $1594 = 0, $1595 = 0, $1596 = 0, $1597 = 0, $1598 = 0, $1599 = 0, $16 = 0, $160 = 0, $1600 = 0, $1601 = 0, $1602 = 0, $1603 = 0, $1604 = 0, $1605 = 0, $1606 = 0, $1607 = 0, $1608 = 0, $1609 = 0; - var $161 = 0, $1610 = 0, $1611 = 0, $1612 = 0, $1613 = 0, $1614 = 0, $1615 = 0, $1616 = 0, $1617 = 0, $1618 = 0, $1619 = 0, $162 = 0, $1620 = 0, $1621 = 0, $1622 = 0, $1623 = 0, $1624 = 0, $1625 = 0, $1626 = 0, $1627 = 0; - var $1628 = 0, $1629 = 0, $163 = 0, $1630 = 0, $1631 = 0, $1632 = 0, $1633 = 0, $1634 = 0, $1635 = 0, $1636 = 0, $1637 = 0, $1638 = 0, $1639 = 0, $164 = 0, $1640 = 0, $1641 = 0, $1642 = 0, $1643 = 0, $1644 = 0, $1645 = 0; - var $1646 = 0, $1647 = 0, $1648 = 0, $1649 = 0, $165 = 0, $1650 = 0, $1651 = 0, $1652 = 0, $1653 = 0, $1654 = 0, $1655 = 0, $1656 = 0, $1657 = 0, $1658 = 0, $1659 = 0, $166 = 0, $1660 = 0, $1661 = 0, $1662 = 0, $1663 = 0; - var $1664 = 0, $1665 = 0, $1666 = 0, $1667 = 0, $1668 = 0, $1669 = 0, $167 = 0, $1670 = 0, $1671 = 0, $1672 = 0, $1673 = 0, $1674 = 0, $1675 = 0, $1676 = 0, $1677 = 0, $1678 = 0, $1679 = 0, $168 = 0, $1680 = 0, $1681 = 0; - var $1682 = 0, $1683 = 0, $1684 = 0, $1685 = 0, $1686 = 0, $1687 = 0, $1688 = 0, $1689 = 0, $169 = 0, $1690 = 0, $1691 = 0, $1692 = 0, $1693 = 0, $1694 = 0, $1695 = 0, $1696 = 0, $1697 = 0, $1698 = 0, $1699 = 0, $17 = 0; - var $170 = 0, $1700 = 0, $1701 = 0, $1702 = 0, $1703 = 0, $1704 = 0, $1705 = 0, $1706 = 0, $1707 = 0, $1708 = 0, $1709 = 0, $171 = 0, $1710 = 0, $1711 = 0, $1712 = 0, $1713 = 0, $1714 = 0, $1715 = 0, $1716 = 0, $1717 = 0; - var $1718 = 0, $1719 = 0, $172 = 0, $1720 = 0, $1721 = 0, $1722 = 0, $1723 = 0, $1724 = 0, $1725 = 0, $1726 = 0, $1727 = 0, $1728 = 0, $1729 = 0, $173 = 0, $1730 = 0, $1731 = 0, $1732 = 0, $1733 = 0, $1734 = 0, $1735 = 0; - var $1736 = 0, $1737 = 0, $1738 = 0, $1739 = 0, $174 = 0, $1740 = 0, $1741 = 0, $1742 = 0, $1743 = 0, $1744 = 0, $1745 = 0, $1746 = 0, $1747 = 0, $1748 = 0, $1749 = 0, $175 = 0, $1750 = 0, $1751 = 0, $1752 = 0, $1753 = 0; - var $1754 = 0, $1755 = 0, $1756 = 0, $1757 = 0, $1758 = 0, $1759 = 0, $176 = 0, $1760 = 0, $1761 = 0, $1762 = 0, $1763 = 0, $1764 = 0, $1765 = 0, $1766 = 0, $1767 = 0, $1768 = 0, $1769 = 0, $177 = 0, $1770 = 0, $1771 = 0; - var $1772 = 0, $1773 = 0, $1774 = 0, $1775 = 0, $1776 = 0, $1777 = 0, $1778 = 0, $1779 = 0, $178 = 0, $1780 = 0, $1781 = 0, $1782 = 0, $1783 = 0, $1784 = 0, $1785 = 0, $1786 = 0, $1787 = 0, $1788 = 0, $1789 = 0, $179 = 0; - var $1790 = 0, $1791 = 0, $1792 = 0, $1793 = 0, $1794 = 0, $1795 = 0, $1796 = 0, $1797 = 0, $1798 = 0, $1799 = 0, $18 = 0, $180 = 0, $1800 = 0, $1801 = 0, $1802 = 0, $1803 = 0, $1804 = 0, $1805 = 0, $1806 = 0, $1807 = 0; - var $1808 = 0, $1809 = 0, $181 = 0, $1810 = 0, $1811 = 0, $1812 = 0, $1813 = 0, $1814 = 0, $1815 = 0, $1816 = 0, $1817 = 0, $1818 = 0, $1819 = 0, $182 = 0, $1820 = 0, $1821 = 0, $1822 = 0, $1823 = 0, $1824 = 0, $1825 = 0; - var $1826 = 0, $1827 = 0, $1828 = 0, $1829 = 0, $183 = 0, $1830 = 0, $1831 = 0, $1832 = 0, $1833 = 0, $1834 = 0, $1835 = 0, $1836 = 0, $1837 = 0, $1838 = 0, $1839 = 0, $184 = 0, $1840 = 0, $1841 = 0, $1842 = 0, $1843 = 0; - var $1844 = 0, $1845 = 0, $1846 = 0, $1847 = 0, $1848 = 0, $1849 = 0, $185 = 0, $1850 = 0, $1851 = 0, $1852 = 0, $1853 = 0, $1854 = 0, $1855 = 0, $1856 = 0, $1857 = 0, $1858 = 0, $1859 = 0, $186 = 0, $1860 = 0, $1861 = 0; - var $1862 = 0, $1863 = 0, $1864 = 0, $1865 = 0, $1866 = 0, $1867 = 0, $1868 = 0, $1869 = 0, $187 = 0, $1870 = 0, $1871 = 0, $1872 = 0, $1873 = 0, $1874 = 0, $1875 = 0, $1876 = 0, $1877 = 0, $1878 = 0, $1879 = 0, $188 = 0; - var $1880 = 0, $1881 = 0, $1882 = 0, $1883 = 0, $1884 = 0, $1885 = 0, $1886 = 0, $1887 = 0, $1888 = 0, $1889 = 0, $189 = 0, $1890 = 0, $1891 = 0, $1892 = 0, $1893 = 0, $1894 = 0, $1895 = 0, $1896 = 0, $1897 = 0, $1898 = 0; - var $1899 = 0, $19 = 0, $190 = 0, $1900 = 0, $1901 = 0, $1902 = 0, $1903 = 0, $1904 = 0, $1905 = 0, $1906 = 0, $1907 = 0, $1908 = 0, $1909 = 0, $191 = 0, $1910 = 0, $1911 = 0, $1912 = 0, $1913 = 0, $1914 = 0, $1915 = 0; - var $1916 = 0, $1917 = 0, $1918 = 0, $1919 = 0, $192 = 0, $1920 = 0, $1921 = 0, $1922 = 0, $1923 = 0, $1924 = 0, $1925 = 0, $1926 = 0, $1927 = 0, $1928 = 0, $1929 = 0, $193 = 0, $1930 = 0, $1931 = 0, $1932 = 0, $1933 = 0; - var $1934 = 0, $1935 = 0, $1936 = 0, $1937 = 0, $1938 = 0, $1939 = 0, $194 = 0, $1940 = 0, $1941 = 0, $1942 = 0, $1943 = 0, $1944 = 0, $1945 = 0, $1946 = 0, $1947 = 0, $1948 = 0, $1949 = 0, $195 = 0, $1950 = 0, $1951 = 0; - var $1952 = 0, $1953 = 0, $1954 = 0, $1955 = 0, $1956 = 0, $1957 = 0, $1958 = 0, $1959 = 0, $196 = 0, $1960 = 0, $1961 = 0, $1962 = 0, $1963 = 0, $1964 = 0, $1965 = 0, $1966 = 0, $1967 = 0, $1968 = 0, $1969 = 0, $197 = 0; - var $1970 = 0, $1971 = 0, $1972 = 0, $1973 = 0, $1974 = 0, $1975 = 0, $1976 = 0, $1977 = 0, $1978 = 0, $1979 = 0, $198 = 0, $1980 = 0, $1981 = 0, $1982 = 0, $1983 = 0, $1984 = 0, $1985 = 0, $1986 = 0, $1987 = 0, $1988 = 0; - var $1989 = 0, $199 = 0, $1990 = 0, $1991 = 0, $1992 = 0, $1993 = 0, $1994 = 0, $1995 = 0, $1996 = 0, $1997 = 0, $1998 = 0, $1999 = 0, $2 = 0, $20 = 0, $200 = 0, $2000 = 0, $2001 = 0, $2002 = 0, $2003 = 0, $2004 = 0; - var $2005 = 0, $2006 = 0, $2007 = 0, $2008 = 0, $2009 = 0, $201 = 0, $2010 = 0, $2011 = 0, $2012 = 0, $2013 = 0, $2014 = 0, $2015 = 0, $2016 = 0, $2017 = 0, $2018 = 0, $2019 = 0, $202 = 0, $2020 = 0, $2021 = 0, $2022 = 0; - var $2023 = 0, $2024 = 0, $2025 = 0, $2026 = 0, $2027 = 0, $2028 = 0, $2029 = 0, $203 = 0, $2030 = 0, $2031 = 0, $2032 = 0, $2033 = 0, $2034 = 0, $2035 = 0, $2036 = 0, $2037 = 0, $2038 = 0, $2039 = 0, $204 = 0, $2040 = 0; - var $2041 = 0, $2042 = 0, $2043 = 0, $2044 = 0, $2045 = 0, $2046 = 0, $2047 = 0, $2048 = 0, $2049 = 0, $205 = 0, $2050 = 0, $2051 = 0, $2052 = 0, $2053 = 0, $2054 = 0, $2055 = 0, $2056 = 0, $2057 = 0, $2058 = 0, $2059 = 0; - var $206 = 0, $2060 = 0, $2061 = 0, $2062 = 0, $2063 = 0, $2064 = 0, $2065 = 0, $2066 = 0, $2067 = 0, $2068 = 0, $2069 = 0, $207 = 0, $2070 = 0, $2071 = 0, $2072 = 0, $2073 = 0, $2074 = 0, $2075 = 0, $2076 = 0, $2077 = 0; - var $2078 = 0, $2079 = 0, $208 = 0, $2080 = 0, $2081 = 0, $2082 = 0, $2083 = 0, $2084 = 0, $2085 = 0, $2086 = 0, $2087 = 0, $2088 = 0, $2089 = 0, $209 = 0, $2090 = 0, $2091 = 0, $2092 = 0, $2093 = 0, $2094 = 0, $2095 = 0; - var $2096 = 0, $2097 = 0, $2098 = 0, $2099 = 0, $21 = 0, $210 = 0, $2100 = 0, $2101 = 0, $2102 = 0, $2103 = 0, $2104 = 0, $2105 = 0, $2106 = 0, $2107 = 0, $2108 = 0, $2109 = 0, $211 = 0, $2110 = 0, $2111 = 0, $2112 = 0; - var $2113 = 0, $2114 = 0, $2115 = 0, $2116 = 0, $2117 = 0, $2118 = 0, $2119 = 0, $212 = 0, $2120 = 0, $2121 = 0, $2122 = 0, $2123 = 0, $2124 = 0, $2125 = 0, $2126 = 0, $2127 = 0, $2128 = 0, $2129 = 0, $213 = 0, $2130 = 0; - var $2131 = 0, $2132 = 0, $2133 = 0, $2134 = 0, $2135 = 0, $2136 = 0, $2137 = 0, $2138 = 0, $2139 = 0, $214 = 0, $2140 = 0, $2141 = 0, $2142 = 0, $2143 = 0, $2144 = 0, $2145 = 0, $2146 = 0, $2147 = 0, $2148 = 0, $2149 = 0; - var $215 = 0, $2150 = 0, $2151 = 0, $2152 = 0, $2153 = 0, $2154 = 0, $2155 = 0, $2156 = 0, $2157 = 0, $2158 = 0, $2159 = 0, $216 = 0, $2160 = 0, $2161 = 0, $2162 = 0, $2163 = 0, $2164 = 0, $2165 = 0, $2166 = 0, $2167 = 0; - var $2168 = 0, $2169 = 0, $217 = 0, $2170 = 0, $2171 = 0, $2172 = 0, $2173 = 0, $2174 = 0, $2175 = 0, $2176 = 0, $2177 = 0, $2178 = 0, $2179 = 0, $218 = 0, $2180 = 0, $2181 = 0, $2182 = 0, $2183 = 0, $2184 = 0, $2185 = 0; - var $2186 = 0, $2187 = 0, $2188 = 0, $2189 = 0, $219 = 0, $2190 = 0, $2191 = 0, $2192 = 0, $2193 = 0, $2194 = 0, $2195 = 0, $2196 = 0, $2197 = 0, $2198 = 0, $2199 = 0, $22 = 0, $220 = 0, $2200 = 0, $2201 = 0, $2202 = 0; - var $2203 = 0, $2204 = 0, $2205 = 0, $2206 = 0, $2207 = 0, $2208 = 0, $2209 = 0, $221 = 0, $2210 = 0, $2211 = 0, $2212 = 0, $2213 = 0, $2214 = 0, $2215 = 0, $2216 = 0, $2217 = 0, $2218 = 0, $2219 = 0, $222 = 0, $2220 = 0; - var $2221 = 0, $2222 = 0, $2223 = 0, $2224 = 0, $2225 = 0, $2226 = 0, $2227 = 0, $2228 = 0, $2229 = 0, $223 = 0, $2230 = 0, $2231 = 0, $2232 = 0, $2233 = 0, $2234 = 0, $2235 = 0, $2236 = 0, $2237 = 0, $2238 = 0, $2239 = 0; - var $224 = 0, $2240 = 0, $2241 = 0, $2242 = 0, $2243 = 0, $2244 = 0, $2245 = 0, $2246 = 0, $2247 = 0, $2248 = 0, $2249 = 0, $225 = 0, $2250 = 0, $2251 = 0, $2252 = 0, $2253 = 0, $2254 = 0, $2255 = 0, $2256 = 0, $2257 = 0; - var $2258 = 0, $2259 = 0, $226 = 0, $2260 = 0, $2261 = 0, $2262 = 0, $2263 = 0, $2264 = 0, $2265 = 0, $2266 = 0, $2267 = 0, $2268 = 0, $2269 = 0, $227 = 0, $2270 = 0, $2271 = 0, $2272 = 0, $2273 = 0, $2274 = 0, $2275 = 0; - var $2276 = 0, $2277 = 0, $2278 = 0, $2279 = 0, $228 = 0, $2280 = 0, $2281 = 0, $2282 = 0, $2283 = 0, $2284 = 0, $2285 = 0, $2286 = 0, $2287 = 0, $2288 = 0, $2289 = 0, $229 = 0, $2290 = 0, $2291 = 0, $2292 = 0, $2293 = 0; - var $2294 = 0, $2295 = 0, $2296 = 0, $2297 = 0, $2298 = 0, $2299 = 0, $23 = 0, $230 = 0, $2300 = 0, $2301 = 0, $2302 = 0, $2303 = 0, $2304 = 0, $2305 = 0, $2306 = 0, $2307 = 0, $2308 = 0, $2309 = 0, $231 = 0, $2310 = 0; - var $2311 = 0, $2312 = 0, $2313 = 0, $2314 = 0, $2315 = 0, $2316 = 0, $2317 = 0, $2318 = 0, $2319 = 0, $232 = 0, $2320 = 0, $2321 = 0, $2322 = 0, $2323 = 0, $2324 = 0, $2325 = 0, $2326 = 0, $2327 = 0, $2328 = 0, $2329 = 0; - var $233 = 0, $2330 = 0, $2331 = 0, $2332 = 0, $2333 = 0, $2334 = 0, $2335 = 0, $2336 = 0, $2337 = 0, $2338 = 0, $2339 = 0, $234 = 0, $2340 = 0, $2341 = 0, $2342 = 0, $2343 = 0, $2344 = 0, $2345 = 0, $2346 = 0, $2347 = 0; - var $2348 = 0, $2349 = 0, $235 = 0, $2350 = 0, $2351 = 0, $2352 = 0, $2353 = 0, $2354 = 0, $2355 = 0, $2356 = 0, $2357 = 0, $2358 = 0, $2359 = 0, $236 = 0, $2360 = 0, $2361 = 0, $2362 = 0, $2363 = 0, $2364 = 0, $2365 = 0; - var $2366 = 0, $2367 = 0, $2368 = 0, $2369 = 0, $237 = 0, $2370 = 0, $2371 = 0, $2372 = 0, $2373 = 0, $2374 = 0, $2375 = 0, $2376 = 0, $2377 = 0, $2378 = 0, $2379 = 0, $238 = 0, $2380 = 0, $2381 = 0, $2382 = 0, $2383 = 0; - var $2384 = 0, $2385 = 0, $2386 = 0, $2387 = 0, $2388 = 0, $2389 = 0, $239 = 0, $2390 = 0, $2391 = 0, $2392 = 0, $2393 = 0, $2394 = 0, $2395 = 0, $2396 = 0, $2397 = 0, $2398 = 0, $2399 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; - var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; - var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; - var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; - var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; - var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; - var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; - var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; - var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; - var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; - var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; - var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; - var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0; - var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0; - var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0; - var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0; - var $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0; - var $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0; - var $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0; - var $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0; - var $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0; - var $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0; - var $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0; - var $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0; - var $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0; - var $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0; - var $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0; - var $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0; - var $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0; - var $981 = 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0; - var $all = 0, $cnt = 0, $dest = 0, $mxSelect = 0, $p = 0, $p10 = 0, $p2 = 0, $p8 = 0, $p9 = 0, $pDot = 0, $pFrom = 0, $pLeft = 0, $pList = 0, $pList6 = 0, $pList7 = 0, $pLoop = 0, $pNew = 0, $pNext = 0, $pOld = 0, $pParse = 0; - var $pRHS = 0, $pRhs = 0, $pRight = 0, $pRight3 = 0, $pSrc = 0, $pSubquery = 0, $temp1 = 0, $temp14 = 0, $temp2 = 0, $temp25 = 0, $temp3 = 0, $temp4 = 0, $v = 0, $v1 = 0, $vararg_buffer14 = 0, $vararg_ptr1 = 0, $x = 0, $yyact = 0, $yygoto = 0, $yygotominor = 0; - var $yymsp = 0, $yysize = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 224|0; - $vararg_buffer14 = sp; - $0 = sp + 220|0; - $1 = sp + 216|0; - $yygoto = sp + 212|0; - $yyact = sp + 208|0; - $yygotominor = sp + 196|0; - $yymsp = sp + 192|0; - $yysize = sp + 188|0; - $pParse = sp + 184|0; - $v = sp + 172|0; - $v1 = sp + 160|0; - $dest = sp + 140|0; - $p = sp + 136|0; - $pNext = sp + 132|0; - $pLoop = sp + 128|0; - $cnt = sp + 124|0; - $mxSelect = sp + 120|0; - $pRhs = sp + 116|0; - $pFrom = sp + 112|0; - $x = sp + 104|0; - $pRight = sp + 100|0; - $p2 = sp + 96|0; - $pRight3 = sp + 92|0; - $pLeft = sp + 88|0; - $pDot = sp + 84|0; - $pNew = sp + 80|0; - $pOld = sp + 76|0; - $pSubquery = sp + 72|0; - $temp1 = sp + 68|0; - $temp2 = sp + 64|0; - $temp14 = sp + 60|0; - $temp25 = sp + 56|0; - $temp3 = sp + 52|0; - $temp4 = sp + 48|0; - $pList = sp + 44|0; - $pList6 = sp + 40|0; - $pList7 = sp + 36|0; - $pRHS = sp + 32|0; - $pSrc = sp + 28|0; - $p8 = sp + 24|0; - $p9 = sp + 20|0; - $p10 = sp + 16|0; - $all = sp + 8|0; - HEAP32[$0>>2] = $yypParser; - HEAP32[$1>>2] = $yyruleno; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 8|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pParse>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 12|0); - $9 = (($8) + ($6<<4)|0); - HEAP32[$yymsp>>2] = $9; - ;HEAP32[$yygotominor+0>>2]=HEAP32[27024+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[27024+4>>2]|0;HEAP32[$yygotominor+8>>2]=HEAP32[27024+8>>2]|0; - $10 = HEAP32[$1>>2]|0; - L1: do { - switch ($10|0) { - case 58: { - $196 = HEAP32[$pParse>>2]|0; - $197 = HEAP32[$yymsp>>2]|0; - $198 = (($197) + 4|0); - $199 = HEAP32[$198>>2]|0; - $200 = (_sqlite3PExpr($196,157,$199,0,0)|0); - HEAP32[$v>>2] = $200; - $201 = HEAP32[$yymsp>>2]|0; - $202 = (($201) + -16|0); - $203 = (($202) + 4|0); - $204 = HEAP32[$203>>2]|0; - $205 = (($v) + 4|0); - HEAP32[$205>>2] = $204; - $206 = HEAP32[$yymsp>>2]|0; - $207 = (($206) + 4|0); - $208 = (($207) + 8|0); - $209 = HEAP32[$208>>2]|0; - $210 = (($v) + 8|0); - HEAP32[$210>>2] = $209; - $211 = HEAP32[$pParse>>2]|0; - _sqlite3AddDefaultValue($211,$v); - break; - } - case 110: { - $371 = HEAP32[$pParse>>2]|0; - $372 = HEAP32[$yymsp>>2]|0; - $373 = (($372) + 4|0); - $374 = HEAP32[$373>>2]|0; - $375 = HEAP32[$yymsp>>2]|0; - $376 = (($375) + -16|0); - $377 = (($376) + 4|0); - $378 = HEAP32[$377>>2]|0; - _sqlite3DropTable($371,$374,1,$378); - break; - } - case 111: { - ;HEAP32[$dest+0>>2]=HEAP32[9936+0>>2]|0;HEAP32[$dest+4>>2]=HEAP32[9936+4>>2]|0;HEAP32[$dest+8>>2]=HEAP32[9936+8>>2]|0;HEAP32[$dest+12>>2]=HEAP32[9936+12>>2]|0;HEAP32[$dest+16>>2]=HEAP32[9936+16>>2]|0; - $379 = HEAP32[$pParse>>2]|0; - $380 = HEAP32[$yymsp>>2]|0; - $381 = (($380) + 4|0); - $382 = HEAP32[$381>>2]|0; - (_sqlite3Select($379,$382,$dest)|0); - $383 = HEAP32[$pParse>>2]|0; - $384 = HEAP32[$383>>2]|0; - $385 = HEAP32[$yymsp>>2]|0; - $386 = (($385) + 4|0); - $387 = HEAP32[$386>>2]|0; - _sqlite3SelectDelete($384,$387); - break; - } - case 22: { - $26 = HEAP32[$pParse>>2]|0; - $27 = HEAP32[$yymsp>>2]|0; - $28 = (($27) + 4|0); - _sqlite3Savepoint($26,0,$28); - break; - } - case 64: { - $236 = HEAP32[$pParse>>2]|0; - $237 = HEAP32[$yymsp>>2]|0; - $238 = (($237) + -16|0); - $239 = (($238) + 4|0); - $240 = HEAP32[$239>>2]|0; - _sqlite3AddCheckConstraint($236,$240); - break; - } - case 18: case 17: { - $24 = HEAP32[$pParse>>2]|0; - _sqlite3CommitTransaction($24); - break; - } - case 24: { - $32 = HEAP32[$pParse>>2]|0; - $33 = HEAP32[$yymsp>>2]|0; - $34 = (($33) + 4|0); - _sqlite3Savepoint($32,2,$34); - break; - } - case 6: { - $12 = HEAP32[$pParse>>2]|0; - _sqlite3BeginParse($12,1); - break; - } - case 103: case 100: case 98: case 82: { - $283 = HEAP32[$yymsp>>2]|0; - $284 = (($283) + 4|0); - $285 = HEAP32[$284>>2]|0; - HEAP32[$yygotominor>>2] = $285; - break; - } - case 86: { - $286 = (($yygotominor) + 4|0); - HEAP32[$286>>2] = 0; - HEAP32[$yygotominor>>2] = 0; - break; - } - case 46: { - $125 = HEAP32[$yymsp>>2]|0; - $126 = (($125) + -48|0); - $127 = (($126) + 4|0); - $128 = HEAP32[$127>>2]|0; - HEAP32[$yygotominor>>2] = $128; - $129 = HEAP32[$yymsp>>2]|0; - $130 = (($129) + 4|0); - $131 = (($130) + 4|0); - $132 = HEAP32[$131>>2]|0; - $133 = HEAP32[$yymsp>>2]|0; - $134 = (($133) + 4|0); - $135 = HEAP32[$134>>2]|0; - $136 = (($135) + ($132)|0); - $137 = HEAP32[$yymsp>>2]|0; - $138 = (($137) + -48|0); - $139 = (($138) + 4|0); - $140 = HEAP32[$139>>2]|0; - $141 = $136; - $142 = $140; - $143 = (($141) - ($142))|0; - $144 = (($yygotominor) + 4|0); - HEAP32[$144>>2] = $143; - break; - } - case 279: case 263: case 262: case 261: case 260: case 259: case 258: case 257: case 256: case 247: case 150: case 141: case 131: case 130: case 48: case 45: case 42: case 41: case 40: { - $120 = HEAP32[$yymsp>>2]|0; - $121 = (($120) + 4|0); - ;HEAP32[$yygotominor+0>>2]=HEAP32[$121+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$121+4>>2]|0; - break; - } - case 65: { - $241 = HEAP32[$pParse>>2]|0; - $242 = HEAP32[$yymsp>>2]|0; - $243 = (($242) + -32|0); - $244 = (($243) + 4|0); - $245 = HEAP32[$yymsp>>2]|0; - $246 = (($245) + -16|0); - $247 = (($246) + 4|0); - $248 = HEAP32[$247>>2]|0; - $249 = HEAP32[$yymsp>>2]|0; - $250 = (($249) + 4|0); - $251 = HEAP32[$250>>2]|0; - _sqlite3CreateForeignKey($241,0,$244,$248,$251); - break; - } - case 94: { - $305 = HEAP32[$pParse>>2]|0; - $306 = HEAP32[$yymsp>>2]|0; - $307 = (($306) + -32|0); - $308 = (($307) + 4|0); - $309 = HEAP32[$308>>2]|0; - $310 = HEAP32[$yymsp>>2]|0; - $311 = (($310) + 4|0); - $312 = HEAP32[$311>>2]|0; - (_sqlite3CreateIndex($305,0,0,0,$309,$312,0,0,0,0)|0); - break; - } - case 39: { - $112 = HEAP32[$pParse>>2]|0; - $113 = HEAP32[$yymsp>>2]|0; - $114 = (($113) + 4|0); - _sqlite3AddColumn($112,$114); - $115 = HEAP32[$yymsp>>2]|0; - $116 = (($115) + 4|0); - ;HEAP32[$yygotominor+0>>2]=HEAP32[$116+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$116+4>>2]|0; - $117 = HEAP32[$pParse>>2]|0; - $118 = (($117) + 320|0); - $119 = (($118) + 4|0); - HEAP32[$119>>2] = 0; - break; - } - case 71: { - $259 = HEAP32[$yymsp>>2]|0; - $260 = (($259) + -16|0); - $261 = (($260) + 4|0); - $262 = HEAP32[$261>>2]|0; - $263 = HEAP32[$yymsp>>2]|0; - $264 = (($263) + 4|0); - $265 = (($264) + 4|0); - $266 = HEAP32[$265>>2]|0; - $267 = $266 ^ -1; - $268 = $262 & $267; - $269 = HEAP32[$yymsp>>2]|0; - $270 = (($269) + 4|0); - $271 = HEAP32[$270>>2]|0; - $272 = $268 | $271; - HEAP32[$yygotominor>>2] = $272; - break; - } - case 119: case 113: { - $439 = HEAP32[$yymsp>>2]|0; - $440 = (($439) + 4|0); - $441 = HEAP32[$440>>2]|0; - HEAP32[$yygotominor>>2] = $441; - break; - } - case 114: { - $442 = HEAP32[$yymsp>>2]|0; - $443 = (($442) + 4|0); - $444 = HEAP32[$443>>2]|0; - HEAP32[$pRhs>>2] = $444; - $445 = HEAP32[$pRhs>>2]|0; - $446 = ($445|0)!=(0|0); - if ($446) { - $447 = HEAP32[$pRhs>>2]|0; - $448 = (($447) + 52|0); - $449 = HEAP32[$448>>2]|0; - $450 = ($449|0)!=(0|0); - if ($450) { - $451 = (($x) + 4|0); - HEAP32[$451>>2] = 0; - $452 = HEAP32[$pParse>>2]|0; - $453 = HEAP32[$pRhs>>2]|0; - $454 = (_sqlite3SrcListAppendFromTerm($452,0,0,0,$x,$453,0,0)|0); - HEAP32[$pFrom>>2] = $454; - $455 = HEAP32[$pParse>>2]|0; - $456 = HEAP32[$pFrom>>2]|0; - $457 = (_sqlite3SelectNew($455,0,$456,0,0,0,0,0,0,0)|0); - HEAP32[$pRhs>>2] = $457; - } - } - $458 = HEAP32[$pRhs>>2]|0; - $459 = ($458|0)!=(0|0); - if ($459) { - $460 = HEAP32[$yymsp>>2]|0; - $461 = (($460) + -16|0); - $462 = (($461) + 4|0); - $463 = HEAP32[$462>>2]|0; - $464 = $463&255; - $465 = HEAP32[$pRhs>>2]|0; - $466 = (($465) + 4|0); - HEAP8[$466>>0] = $464; - $467 = HEAP32[$yymsp>>2]|0; - $468 = (($467) + -32|0); - $469 = (($468) + 4|0); - $470 = HEAP32[$469>>2]|0; - $471 = HEAP32[$pRhs>>2]|0; - $472 = (($471) + 52|0); - HEAP32[$472>>2] = $470; - $473 = HEAP32[$yymsp>>2]|0; - $474 = (($473) + -16|0); - $475 = (($474) + 4|0); - $476 = HEAP32[$475>>2]|0; - $477 = ($476|0)!=(116); - if ($477) { - $478 = HEAP32[$pParse>>2]|0; - $479 = (($478) + 22|0); - HEAP8[$479>>0] = 1; - } - } else { - $480 = HEAP32[$pParse>>2]|0; - $481 = HEAP32[$480>>2]|0; - $482 = HEAP32[$yymsp>>2]|0; - $483 = (($482) + -32|0); - $484 = (($483) + 4|0); - $485 = HEAP32[$484>>2]|0; - _sqlite3SelectDelete($481,$485); - } - $486 = HEAP32[$pRhs>>2]|0; - HEAP32[$yygotominor>>2] = $486; - break; - } - case 27: { - $49 = HEAP32[$pParse>>2]|0; - $50 = HEAP32[$49>>2]|0; - $51 = (($50) + 240|0); - $52 = (($51) + 2|0); - HEAP8[$52>>0] = 0; - $53 = HEAP32[$yymsp>>2]|0; - $54 = (($53) + 4|0); - ;HEAP32[$yygotominor+0>>2]=HEAP32[$54+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$54+4>>2]|0; - break; - } - case 32: { - $55 = HEAP32[$pParse>>2]|0; - $56 = HEAP32[$yymsp>>2]|0; - $57 = (($56) + -32|0); - $58 = (($57) + 4|0); - $59 = HEAP32[$yymsp>>2]|0; - $60 = (($59) + -16|0); - $61 = (($60) + 4|0); - $62 = HEAP32[$yymsp>>2]|0; - $63 = (($62) + 4|0); - $64 = HEAP8[$63>>0]|0; - _sqlite3EndTable($55,$58,$61,$64,0); - break; - } - case 34: { - HEAP8[$yygotominor>>0] = 0; - break; - } - case 102: { - $338 = HEAP32[$yymsp>>2]|0; - $339 = (($338) + 4|0); - $340 = HEAP32[$339>>2]|0; - $341 = $340&255; - HEAP8[$yygotominor>>0] = $341; - break; - } - case 104: { - HEAP32[$yygotominor>>2] = 4; - break; - } - case 105: { - HEAP32[$yygotominor>>2] = 5; - break; - } - case 109: { - $350 = HEAP32[$pParse>>2]|0; - $351 = HEAP32[$yymsp>>2]|0; - $352 = (($351) + -112|0); - $353 = (($352) + 4|0); - $354 = HEAP32[$yymsp>>2]|0; - $355 = (($354) + -48|0); - $356 = (($355) + 4|0); - $357 = HEAP32[$yymsp>>2]|0; - $358 = (($357) + -32|0); - $359 = (($358) + 4|0); - $360 = HEAP32[$yymsp>>2]|0; - $361 = (($360) + 4|0); - $362 = HEAP32[$361>>2]|0; - $363 = HEAP32[$yymsp>>2]|0; - $364 = (($363) + -96|0); - $365 = (($364) + 4|0); - $366 = HEAP32[$365>>2]|0; - $367 = HEAP32[$yymsp>>2]|0; - $368 = (($367) + -64|0); - $369 = (($368) + 4|0); - $370 = HEAP32[$369>>2]|0; - _sqlite3CreateView($350,$353,$356,$359,$362,$366,$370); - break; - } - case 73: case 72: { - HEAP32[$yygotominor>>2] = 0; - $273 = (($yygotominor) + 4|0); - HEAP32[$273>>2] = 0; - break; - } - case 74: { - $274 = HEAP32[$yymsp>>2]|0; - $275 = (($274) + 4|0); - $276 = HEAP32[$275>>2]|0; - HEAP32[$yygotominor>>2] = $276; - $277 = (($yygotominor) + 4|0); - HEAP32[$277>>2] = 255; - break; - } - case 59: { - $212 = HEAP32[$pParse>>2]|0; - $213 = HEAP32[$yymsp>>2]|0; - $214 = (($213) + 4|0); - _spanExpr($v1,$212,97,$214); - $215 = HEAP32[$pParse>>2]|0; - _sqlite3AddDefaultValue($215,$v1); - break; - } - case 221: case 218: case 108: case 97: case 85: case 83: case 81: case 68: case 31: case 28: { - HEAP32[$yygotominor>>2] = 0; - break; - } - case 33: { - $65 = HEAP32[$pParse>>2]|0; - $66 = HEAP32[$yymsp>>2]|0; - $67 = (($66) + 4|0); - $68 = HEAP32[$67>>2]|0; - _sqlite3EndTable($65,0,0,0,$68); - $69 = HEAP32[$pParse>>2]|0; - $70 = HEAP32[$69>>2]|0; - $71 = HEAP32[$yymsp>>2]|0; - $72 = (($71) + 4|0); - $73 = HEAP32[$72>>2]|0; - _sqlite3SelectDelete($70,$73); - break; - } - case 87: { - $287 = HEAP32[$yymsp>>2]|0; - $288 = (($287) + -16|0); - $289 = (($288) + 4|0); - ;HEAP32[$yygotominor+0>>2]=HEAP32[$289+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$289+4>>2]|0; - break; - } - case 90: { - $290 = HEAP32[$pParse>>2]|0; - $291 = (($290) + 320|0); - $292 = (($291) + 4|0); - HEAP32[$292>>2] = 0; - break; - } - case 57: case 55: { - $189 = HEAP32[$pParse>>2]|0; - $190 = HEAP32[$yymsp>>2]|0; - $191 = (($190) + 4|0); - _sqlite3AddDefaultValue($189,$191); - break; - } - case 122: { - HEAP16[$yygotominor>>1] = 1; - break; - } - case 124: case 123: { - HEAP16[$yygotominor>>1] = 0; - break; - } - case 243: case 125: { - $551 = HEAP32[$yymsp>>2]|0; - $552 = (($551) + -16|0); - $553 = (($552) + 4|0); - $554 = HEAP32[$553>>2]|0; - HEAP32[$yygotominor>>2] = $554; - break; - } - case 242: case 236: case 161: case 154: case 126: { - HEAP32[$yygotominor>>2] = 0; - break; - } - case 127: { - $555 = HEAP32[$pParse>>2]|0; - $556 = HEAP32[$yymsp>>2]|0; - $557 = (($556) + -32|0); - $558 = (($557) + 4|0); - $559 = HEAP32[$558>>2]|0; - $560 = HEAP32[$yymsp>>2]|0; - $561 = (($560) + -16|0); - $562 = (($561) + 4|0); - $563 = HEAP32[$562>>2]|0; - $564 = (_sqlite3ExprListAppend($555,$559,$563)|0); - HEAP32[$yygotominor>>2] = $564; - $565 = HEAP32[$yymsp>>2]|0; - $566 = (($565) + 4|0); - $567 = (($566) + 4|0); - $568 = HEAP32[$567>>2]|0; - $569 = ($568>>>0)>(0); - if ($569) { - $570 = HEAP32[$pParse>>2]|0; - $571 = HEAP32[$yygotominor>>2]|0; - $572 = HEAP32[$yymsp>>2]|0; - $573 = (($572) + 4|0); - _sqlite3ExprListSetName($570,$571,$573,1); - } - $574 = HEAP32[$pParse>>2]|0; - $575 = HEAP32[$yygotominor>>2]|0; - $576 = HEAP32[$yymsp>>2]|0; - $577 = (($576) + -16|0); - $578 = (($577) + 4|0); - _sqlite3ExprListSetSpan($574,$575,$578); - break; - } - case 118: { - $487 = HEAP32[$pParse>>2]|0; - $488 = HEAP32[$yymsp>>2]|0; - $489 = (($488) + -96|0); - $490 = (($489) + 4|0); - $491 = HEAP32[$490>>2]|0; - $492 = HEAP32[$yymsp>>2]|0; - $493 = (($492) + -80|0); - $494 = (($493) + 4|0); - $495 = HEAP32[$494>>2]|0; - $496 = HEAP32[$yymsp>>2]|0; - $497 = (($496) + -64|0); - $498 = (($497) + 4|0); - $499 = HEAP32[$498>>2]|0; - $500 = HEAP32[$yymsp>>2]|0; - $501 = (($500) + -48|0); - $502 = (($501) + 4|0); - $503 = HEAP32[$502>>2]|0; - $504 = HEAP32[$yymsp>>2]|0; - $505 = (($504) + -32|0); - $506 = (($505) + 4|0); - $507 = HEAP32[$506>>2]|0; - $508 = HEAP32[$yymsp>>2]|0; - $509 = (($508) + -16|0); - $510 = (($509) + 4|0); - $511 = HEAP32[$510>>2]|0; - $512 = HEAP32[$yymsp>>2]|0; - $513 = (($512) + -112|0); - $514 = (($513) + 4|0); - $515 = HEAP16[$514>>1]|0; - $516 = HEAP32[$yymsp>>2]|0; - $517 = (($516) + 4|0); - $518 = HEAP32[$517>>2]|0; - $519 = HEAP32[$yymsp>>2]|0; - $520 = (($519) + 4|0); - $521 = (($520) + 4|0); - $522 = HEAP32[$521>>2]|0; - $523 = (_sqlite3SelectNew($487,$491,$495,$499,$503,$507,$511,$515,$518,$522)|0); - HEAP32[$yygotominor>>2] = $523; - break; - } - case 120: { - $524 = HEAP32[$pParse>>2]|0; - $525 = HEAP32[$yymsp>>2]|0; - $526 = (($525) + -16|0); - $527 = (($526) + 4|0); - $528 = HEAP32[$527>>2]|0; - $529 = (_sqlite3SelectNew($524,$528,0,0,0,0,0,128,0,0)|0); - HEAP32[$yygotominor>>2] = $529; - break; - } - case 133: { - $610 = HEAP32[$pParse>>2]|0; - $611 = HEAP32[$610>>2]|0; - $612 = (_sqlite3DbMallocZero($611,80)|0); - HEAP32[$yygotominor>>2] = $612; - break; - } - case 134: { - $613 = HEAP32[$yymsp>>2]|0; - $614 = (($613) + 4|0); - $615 = HEAP32[$614>>2]|0; - HEAP32[$yygotominor>>2] = $615; - $616 = HEAP32[$yygotominor>>2]|0; - _sqlite3SrcListShiftJoinType($616); - break; - } - case 135: { - $617 = HEAP32[$yymsp>>2]|0; - $618 = (($617) + -16|0); - $619 = (($618) + 4|0); - $620 = HEAP32[$619>>2]|0; - HEAP32[$yygotominor>>2] = $620; - $621 = HEAP32[$yygotominor>>2]|0; - $622 = ($621|0)!=(0|0); - if ($622) { - $623 = HEAP32[$yygotominor>>2]|0; - $624 = HEAP32[$623>>2]|0; - $625 = ($624|0)>(0); - if ($625) { - $626 = HEAP32[$yymsp>>2]|0; - $627 = (($626) + 4|0); - $628 = HEAP32[$627>>2]|0; - $629 = $628&255; - $630 = HEAP32[$yygotominor>>2]|0; - $631 = HEAP32[$630>>2]|0; - $632 = (($631) - 1)|0; - $633 = HEAP32[$yygotominor>>2]|0; - $634 = (($633) + 8|0); - $635 = (($634) + (($632*72)|0)|0); - $636 = (($635) + 36|0); - HEAP8[$636>>0] = $629; - } - } - break; - } - case 121: { - $530 = HEAP32[$pParse>>2]|0; - $531 = HEAP32[$yymsp>>2]|0; - $532 = (($531) + -16|0); - $533 = (($532) + 4|0); - $534 = HEAP32[$533>>2]|0; - $535 = (_sqlite3SelectNew($530,$534,0,0,0,0,0,128,0,0)|0); - HEAP32[$pRight>>2] = $535; - $536 = HEAP32[$pRight>>2]|0; - $537 = ($536|0)!=(0|0); - if ($537) { - $538 = HEAP32[$pRight>>2]|0; - $539 = (($538) + 4|0); - HEAP8[$539>>0] = 116; - $540 = HEAP32[$yymsp>>2]|0; - $541 = (($540) + -64|0); - $542 = (($541) + 4|0); - $543 = HEAP32[$542>>2]|0; - $544 = HEAP32[$pRight>>2]|0; - $545 = (($544) + 52|0); - HEAP32[$545>>2] = $543; - $546 = HEAP32[$pRight>>2]|0; - HEAP32[$yygotominor>>2] = $546; - break L1; - } else { - $547 = HEAP32[$yymsp>>2]|0; - $548 = (($547) + -64|0); - $549 = (($548) + 4|0); - $550 = HEAP32[$549>>2]|0; - HEAP32[$yygotominor>>2] = $550; - break L1; - } - break; - } - case 95: { - $313 = HEAP32[$pParse>>2]|0; - $314 = HEAP32[$yymsp>>2]|0; - $315 = (($314) + -32|0); - $316 = (($315) + 4|0); - $317 = HEAP32[$316>>2]|0; - _sqlite3AddCheckConstraint($313,$317); - break; - } - case 26: { - $35 = HEAP32[$pParse>>2]|0; - $36 = HEAP32[$yymsp>>2]|0; - $37 = (($36) + -16|0); - $38 = (($37) + 4|0); - $39 = HEAP32[$yymsp>>2]|0; - $40 = (($39) + 4|0); - $41 = HEAP32[$yymsp>>2]|0; - $42 = (($41) + -64|0); - $43 = (($42) + 4|0); - $44 = HEAP32[$43>>2]|0; - $45 = HEAP32[$yymsp>>2]|0; - $46 = (($45) + -32|0); - $47 = (($46) + 4|0); - $48 = HEAP32[$47>>2]|0; - _sqlite3StartTable($35,$38,$40,$44,0,0,$48); - break; - } - case 19: { - $25 = HEAP32[$pParse>>2]|0; - _sqlite3RollbackTransaction($25); - break; - } - case 92: case 54: { - $185 = HEAP32[$pParse>>2]|0; - $186 = (($185) + 320|0); - $187 = HEAP32[$yymsp>>2]|0; - $188 = (($187) + 4|0); - ;HEAP32[$186+0>>2]=HEAP32[$188+0>>2]|0;HEAP32[$186+4>>2]=HEAP32[$188+4>>2]|0; - break; - } - case 56: { - $192 = HEAP32[$pParse>>2]|0; - $193 = HEAP32[$yymsp>>2]|0; - $194 = (($193) + -16|0); - $195 = (($194) + 4|0); - _sqlite3AddDefaultValue($192,$195); - break; - } - case 61: { - $216 = HEAP32[$pParse>>2]|0; - $217 = HEAP32[$yymsp>>2]|0; - $218 = (($217) + 4|0); - $219 = HEAP32[$218>>2]|0; - _sqlite3AddNotNull($216,$219); - break; - } - case 96: { - $318 = HEAP32[$pParse>>2]|0; - $319 = HEAP32[$yymsp>>2]|0; - $320 = (($319) + -96|0); - $321 = (($320) + 4|0); - $322 = HEAP32[$321>>2]|0; - $323 = HEAP32[$yymsp>>2]|0; - $324 = (($323) + -48|0); - $325 = (($324) + 4|0); - $326 = HEAP32[$yymsp>>2]|0; - $327 = (($326) + -32|0); - $328 = (($327) + 4|0); - $329 = HEAP32[$328>>2]|0; - $330 = HEAP32[$yymsp>>2]|0; - $331 = (($330) + -16|0); - $332 = (($331) + 4|0); - $333 = HEAP32[$332>>2]|0; - _sqlite3CreateForeignKey($318,$322,$325,$329,$333); - $334 = HEAP32[$pParse>>2]|0; - $335 = HEAP32[$yymsp>>2]|0; - $336 = (($335) + 4|0); - $337 = HEAP32[$336>>2]|0; - _sqlite3DeferForeignKey($334,$337); - break; - } - case 99: { - HEAP32[$yygotominor>>2] = 10; - break; - } - case 101: { - HEAP8[$yygotominor>>0] = 10; - break; - } - case 66: { - $252 = HEAP32[$pParse>>2]|0; - $253 = HEAP32[$yymsp>>2]|0; - $254 = (($253) + 4|0); - $255 = HEAP32[$254>>2]|0; - _sqlite3DeferForeignKey($252,$255); - break; - } - case 116: { - HEAP32[$yygotominor>>2] = 116; - break; - } - case 9: { - $15 = HEAP32[$pParse>>2]|0; - $16 = HEAP32[$yymsp>>2]|0; - $17 = (($16) + -16|0); - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - _sqlite3BeginTransaction($15,$19); - break; - } - case 117: case 115: case 16: case 15: case 14: { - $20 = HEAP32[$yymsp>>2]|0; - $21 = (($20) + 2|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - HEAP32[$yygotominor>>2] = $23; - break; - } - case 106: { - $342 = HEAP32[$pParse>>2]|0; - $343 = HEAP32[$yymsp>>2]|0; - $344 = (($343) + 4|0); - $345 = HEAP32[$344>>2]|0; - $346 = HEAP32[$yymsp>>2]|0; - $347 = (($346) + -16|0); - $348 = (($347) + 4|0); - $349 = HEAP32[$348>>2]|0; - _sqlite3DropTable($342,$345,0,$349); - break; - } - case 93: { - $293 = HEAP32[$pParse>>2]|0; - $294 = HEAP32[$yymsp>>2]|0; - $295 = (($294) + -48|0); - $296 = (($295) + 4|0); - $297 = HEAP32[$296>>2]|0; - $298 = HEAP32[$yymsp>>2]|0; - $299 = (($298) + 4|0); - $300 = HEAP32[$299>>2]|0; - $301 = HEAP32[$yymsp>>2]|0; - $302 = (($301) + -32|0); - $303 = (($302) + 4|0); - $304 = HEAP32[$303>>2]|0; - _sqlite3AddPrimaryKey($293,$297,$300,$304,0); - break; - } - case 128: { - $579 = HEAP32[$pParse>>2]|0; - $580 = HEAP32[$579>>2]|0; - $581 = (_sqlite3Expr($580,116,0)|0); - HEAP32[$p2>>2] = $581; - $582 = HEAP32[$pParse>>2]|0; - $583 = HEAP32[$yymsp>>2]|0; - $584 = (($583) + -16|0); - $585 = (($584) + 4|0); - $586 = HEAP32[$585>>2]|0; - $587 = HEAP32[$p2>>2]|0; - $588 = (_sqlite3ExprListAppend($582,$586,$587)|0); - HEAP32[$yygotominor>>2] = $588; - break; - } - case 132: { - $609 = (($yygotominor) + 4|0); - HEAP32[$609>>2] = 0; - break; - } - case 129: { - $589 = HEAP32[$pParse>>2]|0; - $590 = HEAP32[$yymsp>>2]|0; - $591 = (($590) + 4|0); - $592 = (_sqlite3PExpr($589,116,0,0,$591)|0); - HEAP32[$pRight3>>2] = $592; - $593 = HEAP32[$pParse>>2]|0; - $594 = HEAP32[$yymsp>>2]|0; - $595 = (($594) + -32|0); - $596 = (($595) + 4|0); - $597 = (_sqlite3PExpr($593,27,0,0,$596)|0); - HEAP32[$pLeft>>2] = $597; - $598 = HEAP32[$pParse>>2]|0; - $599 = HEAP32[$pLeft>>2]|0; - $600 = HEAP32[$pRight3>>2]|0; - $601 = (_sqlite3PExpr($598,122,$599,$600,0)|0); - HEAP32[$pDot>>2] = $601; - $602 = HEAP32[$pParse>>2]|0; - $603 = HEAP32[$yymsp>>2]|0; - $604 = (($603) + -48|0); - $605 = (($604) + 4|0); - $606 = HEAP32[$605>>2]|0; - $607 = HEAP32[$pDot>>2]|0; - $608 = (_sqlite3ExprListAppend($602,$606,$607)|0); - HEAP32[$yygotominor>>2] = $608; - break; - } - case 137: { - $637 = HEAP32[$pParse>>2]|0; - $638 = HEAP32[$yymsp>>2]|0; - $639 = (($638) + -96|0); - $640 = (($639) + 4|0); - $641 = HEAP32[$640>>2]|0; - $642 = HEAP32[$yymsp>>2]|0; - $643 = (($642) + -80|0); - $644 = (($643) + 4|0); - $645 = HEAP32[$yymsp>>2]|0; - $646 = (($645) + -64|0); - $647 = (($646) + 4|0); - $648 = HEAP32[$yymsp>>2]|0; - $649 = (($648) + -48|0); - $650 = (($649) + 4|0); - $651 = HEAP32[$yymsp>>2]|0; - $652 = (($651) + -16|0); - $653 = (($652) + 4|0); - $654 = HEAP32[$653>>2]|0; - $655 = HEAP32[$yymsp>>2]|0; - $656 = (($655) + 4|0); - $657 = HEAP32[$656>>2]|0; - $658 = (_sqlite3SrcListAppendFromTerm($637,$641,$644,$647,$650,0,$654,$657)|0); - HEAP32[$yygotominor>>2] = $658; - $659 = HEAP32[$pParse>>2]|0; - $660 = HEAP32[$yygotominor>>2]|0; - $661 = HEAP32[$yymsp>>2]|0; - $662 = (($661) + -32|0); - $663 = (($662) + 4|0); - _sqlite3SrcListIndexedBy($659,$660,$663); - break; - } - case 136: { - HEAP32[$yygotominor>>2] = 0; - break; - } - case 138: { - $664 = HEAP32[$pParse>>2]|0; - $665 = HEAP32[$yymsp>>2]|0; - $666 = (($665) + -96|0); - $667 = (($666) + 4|0); - $668 = HEAP32[$667>>2]|0; - $669 = HEAP32[$yymsp>>2]|0; - $670 = (($669) + -32|0); - $671 = (($670) + 4|0); - $672 = HEAP32[$yymsp>>2]|0; - $673 = (($672) + -64|0); - $674 = (($673) + 4|0); - $675 = HEAP32[$674>>2]|0; - $676 = HEAP32[$yymsp>>2]|0; - $677 = (($676) + -16|0); - $678 = (($677) + 4|0); - $679 = HEAP32[$678>>2]|0; - $680 = HEAP32[$yymsp>>2]|0; - $681 = (($680) + 4|0); - $682 = HEAP32[$681>>2]|0; - $683 = (_sqlite3SrcListAppendFromTerm($664,$668,0,0,$671,$675,$679,$682)|0); - HEAP32[$yygotominor>>2] = $683; - break; - } - case 139: { - $684 = HEAP32[$yymsp>>2]|0; - $685 = (($684) + -96|0); - $686 = (($685) + 4|0); - $687 = HEAP32[$686>>2]|0; - $688 = ($687|0)==(0|0); - if ($688) { - $689 = HEAP32[$yymsp>>2]|0; - $690 = (($689) + -32|0); - $691 = (($690) + 4|0); - $692 = (($691) + 4|0); - $693 = HEAP32[$692>>2]|0; - $694 = ($693|0)==(0); - if ($694) { - $695 = HEAP32[$yymsp>>2]|0; - $696 = (($695) + -16|0); - $697 = (($696) + 4|0); - $698 = HEAP32[$697>>2]|0; - $699 = ($698|0)==(0|0); - if ($699) { - $700 = HEAP32[$yymsp>>2]|0; - $701 = (($700) + 4|0); - $702 = HEAP32[$701>>2]|0; - $703 = ($702|0)==(0|0); - if ($703) { - $704 = HEAP32[$yymsp>>2]|0; - $705 = (($704) + -64|0); - $706 = (($705) + 4|0); - $707 = HEAP32[$706>>2]|0; - HEAP32[$yygotominor>>2] = $707; - break L1; - } - } - } - } - $708 = HEAP32[$yymsp>>2]|0; - $709 = (($708) + -64|0); - $710 = (($709) + 4|0); - $711 = HEAP32[$710>>2]|0; - $712 = HEAP32[$711>>2]|0; - $713 = ($712|0)==(1); - if (!($713)) { - $770 = HEAP32[$yymsp>>2]|0; - $771 = (($770) + -64|0); - $772 = (($771) + 4|0); - $773 = HEAP32[$772>>2]|0; - _sqlite3SrcListShiftJoinType($773); - $774 = HEAP32[$pParse>>2]|0; - $775 = HEAP32[$yymsp>>2]|0; - $776 = (($775) + -64|0); - $777 = (($776) + 4|0); - $778 = HEAP32[$777>>2]|0; - $779 = (_sqlite3SelectNew($774,0,$778,0,0,0,0,512,0,0)|0); - HEAP32[$pSubquery>>2] = $779; - $780 = HEAP32[$pParse>>2]|0; - $781 = HEAP32[$yymsp>>2]|0; - $782 = (($781) + -96|0); - $783 = (($782) + 4|0); - $784 = HEAP32[$783>>2]|0; - $785 = HEAP32[$yymsp>>2]|0; - $786 = (($785) + -32|0); - $787 = (($786) + 4|0); - $788 = HEAP32[$pSubquery>>2]|0; - $789 = HEAP32[$yymsp>>2]|0; - $790 = (($789) + -16|0); - $791 = (($790) + 4|0); - $792 = HEAP32[$791>>2]|0; - $793 = HEAP32[$yymsp>>2]|0; - $794 = (($793) + 4|0); - $795 = HEAP32[$794>>2]|0; - $796 = (_sqlite3SrcListAppendFromTerm($780,$784,0,0,$787,$788,$792,$795)|0); - HEAP32[$yygotominor>>2] = $796; - break L1; - } - $714 = HEAP32[$pParse>>2]|0; - $715 = HEAP32[$yymsp>>2]|0; - $716 = (($715) + -96|0); - $717 = (($716) + 4|0); - $718 = HEAP32[$717>>2]|0; - $719 = HEAP32[$yymsp>>2]|0; - $720 = (($719) + -32|0); - $721 = (($720) + 4|0); - $722 = HEAP32[$yymsp>>2]|0; - $723 = (($722) + -16|0); - $724 = (($723) + 4|0); - $725 = HEAP32[$724>>2]|0; - $726 = HEAP32[$yymsp>>2]|0; - $727 = (($726) + 4|0); - $728 = HEAP32[$727>>2]|0; - $729 = (_sqlite3SrcListAppendFromTerm($714,$718,0,0,$721,0,$725,$728)|0); - HEAP32[$yygotominor>>2] = $729; - $730 = HEAP32[$yygotominor>>2]|0; - $731 = ($730|0)!=(0|0); - if ($731) { - $732 = HEAP32[$yygotominor>>2]|0; - $733 = HEAP32[$732>>2]|0; - $734 = (($733) - 1)|0; - $735 = HEAP32[$yygotominor>>2]|0; - $736 = (($735) + 8|0); - $737 = (($736) + (($734*72)|0)|0); - HEAP32[$pNew>>2] = $737; - $738 = HEAP32[$yymsp>>2]|0; - $739 = (($738) + -64|0); - $740 = (($739) + 4|0); - $741 = HEAP32[$740>>2]|0; - $742 = (($741) + 8|0); - HEAP32[$pOld>>2] = $742; - $743 = HEAP32[$pOld>>2]|0; - $744 = (($743) + 8|0); - $745 = HEAP32[$744>>2]|0; - $746 = HEAP32[$pNew>>2]|0; - $747 = (($746) + 8|0); - HEAP32[$747>>2] = $745; - $748 = HEAP32[$pOld>>2]|0; - $749 = (($748) + 4|0); - $750 = HEAP32[$749>>2]|0; - $751 = HEAP32[$pNew>>2]|0; - $752 = (($751) + 4|0); - HEAP32[$752>>2] = $750; - $753 = HEAP32[$pOld>>2]|0; - $754 = (($753) + 20|0); - $755 = HEAP32[$754>>2]|0; - $756 = HEAP32[$pNew>>2]|0; - $757 = (($756) + 20|0); - HEAP32[$757>>2] = $755; - $758 = HEAP32[$pOld>>2]|0; - $759 = (($758) + 4|0); - HEAP32[$759>>2] = 0; - $760 = HEAP32[$pOld>>2]|0; - $761 = (($760) + 8|0); - HEAP32[$761>>2] = 0; - $762 = HEAP32[$pOld>>2]|0; - $763 = (($762) + 20|0); - HEAP32[$763>>2] = 0; - } - $764 = HEAP32[$pParse>>2]|0; - $765 = HEAP32[$764>>2]|0; - $766 = HEAP32[$yymsp>>2]|0; - $767 = (($766) + -64|0); - $768 = (($767) + 4|0); - $769 = HEAP32[$768>>2]|0; - _sqlite3SrcListDelete($765,$769); - break; - } - case 149: case 140: { - HEAP32[$yygotominor>>2] = 0; - $797 = (($yygotominor) + 4|0); - HEAP32[$797>>2] = 0; - break; - } - case 144: { - $806 = HEAP32[$pParse>>2]|0; - $807 = HEAP32[$yymsp>>2]|0; - $808 = (($807) + -16|0); - $809 = (($808) + 4|0); - $810 = (_sqlite3JoinType($806,$809,0,0)|0); - HEAP32[$yygotominor>>2] = $810; - break; - } - case 145: { - $811 = HEAP32[$pParse>>2]|0; - $812 = HEAP32[$yymsp>>2]|0; - $813 = (($812) + -32|0); - $814 = (($813) + 4|0); - $815 = HEAP32[$yymsp>>2]|0; - $816 = (($815) + -16|0); - $817 = (($816) + 4|0); - $818 = (_sqlite3JoinType($811,$814,$817,0)|0); - HEAP32[$yygotominor>>2] = $818; - break; - } - case 146: { - $819 = HEAP32[$pParse>>2]|0; - $820 = HEAP32[$yymsp>>2]|0; - $821 = (($820) + -48|0); - $822 = (($821) + 4|0); - $823 = HEAP32[$yymsp>>2]|0; - $824 = (($823) + -32|0); - $825 = (($824) + 4|0); - $826 = HEAP32[$yymsp>>2]|0; - $827 = (($826) + -16|0); - $828 = (($827) + 4|0); - $829 = (_sqlite3JoinType($819,$822,$825,$828)|0); - HEAP32[$yygotominor>>2] = $829; - break; - } - case 143: { - HEAP32[$yygotominor>>2] = 1; - break; - } - case 142: { - $798 = HEAP32[$pParse>>2]|0; - $799 = HEAP32[$798>>2]|0; - $800 = HEAP32[$yymsp>>2]|0; - $801 = (($800) + -16|0); - $802 = (($801) + 4|0); - $803 = HEAP32[$yymsp>>2]|0; - $804 = (($803) + 4|0); - $805 = (_sqlite3SrcListAppend($799,0,$802,$804)|0); - HEAP32[$yygotominor>>2] = $805; - break; - } - case 180: case 152: { - $834 = HEAP32[$yymsp>>2]|0; - $835 = (($834) + -16|0); - $836 = (($835) + 4|0); - $837 = HEAP32[$836>>2]|0; - HEAP32[$yygotominor>>2] = $837; - break; - } - case 179: case 153: { - HEAP32[$yygotominor>>2] = 0; - break; - } - case 235: case 162: case 155: { - $838 = HEAP32[$yymsp>>2]|0; - $839 = (($838) + 4|0); - $840 = HEAP32[$839>>2]|0; - HEAP32[$yygotominor>>2] = $840; - break; - } - case 156: { - $841 = HEAP32[$pParse>>2]|0; - $842 = HEAP32[$yymsp>>2]|0; - $843 = (($842) + -48|0); - $844 = (($843) + 4|0); - $845 = HEAP32[$844>>2]|0; - $846 = HEAP32[$yymsp>>2]|0; - $847 = (($846) + -16|0); - $848 = (($847) + 4|0); - $849 = HEAP32[$848>>2]|0; - $850 = (_sqlite3ExprListAppend($841,$845,$849)|0); - HEAP32[$yygotominor>>2] = $850; - $851 = HEAP32[$yygotominor>>2]|0; - $852 = ($851|0)!=(0|0); - if ($852) { - $853 = HEAP32[$yymsp>>2]|0; - $854 = (($853) + 4|0); - $855 = HEAP32[$854>>2]|0; - $856 = $855&255; - $857 = HEAP32[$yygotominor>>2]|0; - $858 = HEAP32[$857>>2]|0; - $859 = (($858) - 1)|0; - $860 = HEAP32[$yygotominor>>2]|0; - $861 = (($860) + 4|0); - $862 = HEAP32[$861>>2]|0; - $863 = (($862) + (($859*20)|0)|0); - $864 = (($863) + 12|0); - HEAP8[$864>>0] = $856; - } - break; - } - case 233: case 231: case 171: case 164: case 147: { - $830 = HEAP32[$yymsp>>2]|0; - $831 = (($830) + 4|0); - $832 = HEAP32[$831>>2]|0; - HEAP32[$yygotominor>>2] = $832; - break; - } - case 234: case 232: case 170: case 163: case 148: { - HEAP32[$yygotominor>>2] = 0; - break; - } - case 151: { - HEAP32[$yygotominor>>2] = 0; - $833 = (($yygotominor) + 4|0); - HEAP32[$833>>2] = 1; - break; - } - case 160: case 158: { - HEAP32[$yygotominor>>2] = 0; - break; - } - case 159: { - HEAP32[$yygotominor>>2] = 1; - break; - } - case 165: { - HEAP32[$yygotominor>>2] = 0; - $885 = (($yygotominor) + 4|0); - HEAP32[$885>>2] = 0; - break; - } - case 166: { - $886 = HEAP32[$yymsp>>2]|0; - $887 = (($886) + 4|0); - $888 = HEAP32[$887>>2]|0; - HEAP32[$yygotominor>>2] = $888; - $889 = (($yygotominor) + 4|0); - HEAP32[$889>>2] = 0; - break; - } - case 167: { - $890 = HEAP32[$yymsp>>2]|0; - $891 = (($890) + -32|0); - $892 = (($891) + 4|0); - $893 = HEAP32[$892>>2]|0; - HEAP32[$yygotominor>>2] = $893; - $894 = HEAP32[$yymsp>>2]|0; - $895 = (($894) + 4|0); - $896 = HEAP32[$895>>2]|0; - $897 = (($yygotominor) + 4|0); - HEAP32[$897>>2] = $896; - break; - } - case 157: { - $865 = HEAP32[$pParse>>2]|0; - $866 = HEAP32[$yymsp>>2]|0; - $867 = (($866) + -16|0); - $868 = (($867) + 4|0); - $869 = HEAP32[$868>>2]|0; - $870 = (_sqlite3ExprListAppend($865,0,$869)|0); - HEAP32[$yygotominor>>2] = $870; - $871 = HEAP32[$yygotominor>>2]|0; - $872 = ($871|0)!=(0|0); - if ($872) { - $873 = HEAP32[$yygotominor>>2]|0; - $874 = (($873) + 4|0); - $875 = HEAP32[$874>>2]|0; - $876 = ($875|0)!=(0|0); - if ($876) { - $877 = HEAP32[$yymsp>>2]|0; - $878 = (($877) + 4|0); - $879 = HEAP32[$878>>2]|0; - $880 = $879&255; - $881 = HEAP32[$yygotominor>>2]|0; - $882 = (($881) + 4|0); - $883 = HEAP32[$882>>2]|0; - $884 = (($883) + 12|0); - HEAP8[$884>>0] = $880; - } - } - break; - } - case 181: { - $1030 = HEAP32[$pParse>>2]|0; - $1031 = HEAP32[$1030>>2]|0; - $1032 = HEAP32[$yymsp>>2]|0; - $1033 = (($1032) + -32|0); - $1034 = (($1033) + 4|0); - $1035 = HEAP32[$1034>>2]|0; - $1036 = HEAP32[$yymsp>>2]|0; - $1037 = (($1036) + 4|0); - $1038 = (_sqlite3IdListAppend($1031,$1035,$1037)|0); - HEAP32[$yygotominor>>2] = $1038; - break; - } - case 182: { - $1039 = HEAP32[$pParse>>2]|0; - $1040 = HEAP32[$1039>>2]|0; - $1041 = HEAP32[$yymsp>>2]|0; - $1042 = (($1041) + 4|0); - $1043 = (_sqlite3IdListAppend($1040,0,$1042)|0); - HEAP32[$yygotominor>>2] = $1043; - break; - } - case 183: { - $1044 = HEAP32[$yymsp>>2]|0; - $1045 = (($1044) + 4|0); - ;HEAP32[$yygotominor+0>>2]=HEAP32[$1045+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$1045+4>>2]|0;HEAP32[$yygotominor+8>>2]=HEAP32[$1045+8>>2]|0; - break; - } - case 168: { - $898 = HEAP32[$yymsp>>2]|0; - $899 = (($898) + -32|0); - $900 = (($899) + 4|0); - $901 = HEAP32[$900>>2]|0; - $902 = (($yygotominor) + 4|0); - HEAP32[$902>>2] = $901; - $903 = HEAP32[$yymsp>>2]|0; - $904 = (($903) + 4|0); - $905 = HEAP32[$904>>2]|0; - HEAP32[$yygotominor>>2] = $905; - break; - } - case 169: { - $906 = HEAP32[$pParse>>2]|0; - $907 = HEAP32[$yymsp>>2]|0; - $908 = (($907) + -80|0); - $909 = (($908) + 4|0); - $910 = HEAP32[$909>>2]|0; - _sqlite3WithPush($906,$910,1); - $911 = HEAP32[$pParse>>2]|0; - $912 = HEAP32[$yymsp>>2]|0; - $913 = (($912) + -32|0); - $914 = (($913) + 4|0); - $915 = HEAP32[$914>>2]|0; - $916 = HEAP32[$yymsp>>2]|0; - $917 = (($916) + -16|0); - $918 = (($917) + 4|0); - _sqlite3SrcListIndexedBy($911,$915,$918); - $919 = HEAP32[$pParse>>2]|0; - $920 = HEAP32[$yymsp>>2]|0; - $921 = (($920) + -32|0); - $922 = (($921) + 4|0); - $923 = HEAP32[$922>>2]|0; - $924 = HEAP32[$yymsp>>2]|0; - $925 = (($924) + 4|0); - $926 = HEAP32[$925>>2]|0; - _sqlite3DeleteFrom($919,$923,$926); - break; - } - case 76: { - HEAP32[$yygotominor>>2] = 7; - break; - } - case 75: { - $278 = HEAP32[$yymsp>>2]|0; - $279 = (($278) + 4|0); - $280 = HEAP32[$279>>2]|0; - $281 = $280 << 8; - HEAP32[$yygotominor>>2] = $281; - $282 = (($yygotominor) + 4|0); - HEAP32[$282>>2] = 65280; - break; - } - case 77: { - HEAP32[$yygotominor>>2] = 8; - break; - } - case 78: { - HEAP32[$yygotominor>>2] = 9; - break; - } - case 79: { - HEAP32[$yygotominor>>2] = 6; - break; - } - case 80: { - HEAP32[$yygotominor>>2] = 0; - break; - } - case 47: { - $145 = HEAP32[$yymsp>>2]|0; - $146 = (($145) + -80|0); - $147 = (($146) + 4|0); - $148 = HEAP32[$147>>2]|0; - HEAP32[$yygotominor>>2] = $148; - $149 = HEAP32[$yymsp>>2]|0; - $150 = (($149) + 4|0); - $151 = (($150) + 4|0); - $152 = HEAP32[$151>>2]|0; - $153 = HEAP32[$yymsp>>2]|0; - $154 = (($153) + 4|0); - $155 = HEAP32[$154>>2]|0; - $156 = (($155) + ($152)|0); - $157 = HEAP32[$yymsp>>2]|0; - $158 = (($157) + -80|0); - $159 = (($158) + 4|0); - $160 = HEAP32[$159>>2]|0; - $161 = $156; - $162 = $160; - $163 = (($161) - ($162))|0; - $164 = (($yygotominor) + 4|0); - HEAP32[$164>>2] = $163; - break; - } - case 7: { - $13 = HEAP32[$pParse>>2]|0; - _sqlite3BeginParse($13,2); - break; - } - case 67: { - $256 = HEAP32[$pParse>>2]|0; - $257 = HEAP32[$yymsp>>2]|0; - $258 = (($257) + 4|0); - _sqlite3AddCollateType($256,$258); - break; - } - case 70: { - HEAP32[$yygotominor>>2] = 0; - break; - } - case 38: { - $92 = HEAP32[$yymsp>>2]|0; - $93 = (($92) + -32|0); - $94 = (($93) + 4|0); - $95 = HEAP32[$94>>2]|0; - HEAP32[$yygotominor>>2] = $95; - $96 = HEAP32[$pParse>>2]|0; - $97 = (($96) + 504|0); - $98 = HEAP32[$97>>2]|0; - $99 = HEAP32[$yymsp>>2]|0; - $100 = (($99) + -32|0); - $101 = (($100) + 4|0); - $102 = HEAP32[$101>>2]|0; - $103 = $98; - $104 = $102; - $105 = (($103) - ($104))|0; - $106 = HEAP32[$pParse>>2]|0; - $107 = (($106) + 504|0); - $108 = (($107) + 4|0); - $109 = HEAP32[$108>>2]|0; - $110 = (($105) + ($109))|0; - $111 = (($yygotominor) + 4|0); - HEAP32[$111>>2] = $110; - break; - } - case 222: case 219: case 107: case 84: case 69: case 30: case 29: { - HEAP32[$yygotominor>>2] = 1; - break; - } - case 62: { - $220 = HEAP32[$pParse>>2]|0; - $221 = HEAP32[$yymsp>>2]|0; - $222 = (($221) + -16|0); - $223 = (($222) + 4|0); - $224 = HEAP32[$223>>2]|0; - $225 = HEAP32[$yymsp>>2]|0; - $226 = (($225) + 4|0); - $227 = HEAP32[$226>>2]|0; - $228 = HEAP32[$yymsp>>2]|0; - $229 = (($228) + -32|0); - $230 = (($229) + 4|0); - $231 = HEAP32[$230>>2]|0; - _sqlite3AddPrimaryKey($220,0,$224,$227,$231); - break; - } - case 112: { - $388 = HEAP32[$yymsp>>2]|0; - $389 = (($388) + 4|0); - $390 = HEAP32[$389>>2]|0; - HEAP32[$p>>2] = $390; - $391 = HEAP32[$p>>2]|0; - $392 = ($391|0)!=(0|0); - if ($392) { - HEAP32[$cnt>>2] = 0; - $393 = HEAP32[$yymsp>>2]|0; - $394 = (($393) + -16|0); - $395 = (($394) + 4|0); - $396 = HEAP32[$395>>2]|0; - $397 = HEAP32[$p>>2]|0; - $398 = (($397) + 68|0); - HEAP32[$398>>2] = $396; - $399 = HEAP32[$p>>2]|0; - $400 = (($399) + 52|0); - $401 = HEAP32[$400>>2]|0; - $402 = ($401|0)!=(0|0); - if ($402) { - HEAP32[$pNext>>2] = 0; - $403 = HEAP32[$p>>2]|0; - HEAP32[$pLoop>>2] = $403; - while(1) { - $404 = HEAP32[$pLoop>>2]|0; - $405 = ($404|0)!=(0|0); - if (!($405)) { - break; - } - $406 = HEAP32[$pNext>>2]|0; - $407 = HEAP32[$pLoop>>2]|0; - $408 = (($407) + 56|0); - HEAP32[$408>>2] = $406; - $409 = HEAP32[$pLoop>>2]|0; - $410 = (($409) + 6|0); - $411 = HEAP16[$410>>1]|0; - $412 = $411&65535; - $413 = $412 | 4096; - $414 = $413&65535; - HEAP16[$410>>1] = $414; - $415 = HEAP32[$pLoop>>2]|0; - HEAP32[$pNext>>2] = $415; - $416 = HEAP32[$pLoop>>2]|0; - $417 = (($416) + 52|0); - $418 = HEAP32[$417>>2]|0; - HEAP32[$pLoop>>2] = $418; - $419 = HEAP32[$cnt>>2]|0; - $420 = (($419) + 1)|0; - HEAP32[$cnt>>2] = $420; - } - $421 = HEAP32[$pParse>>2]|0; - $422 = HEAP32[$421>>2]|0; - $423 = (($422) + 88|0); - $424 = (($423) + 16|0); - $425 = HEAP32[$424>>2]|0; - HEAP32[$mxSelect>>2] = $425; - $426 = HEAP32[$mxSelect>>2]|0; - $427 = ($426|0)!=(0); - if ($427) { - $428 = HEAP32[$cnt>>2]|0; - $429 = HEAP32[$mxSelect>>2]|0; - $430 = ($428|0)>($429|0); - if ($430) { - $431 = HEAP32[$pParse>>2]|0; - _sqlite3ErrorMsg($431,9960,$vararg_buffer14); - } - } - } - } else { - $432 = HEAP32[$pParse>>2]|0; - $433 = HEAP32[$432>>2]|0; - $434 = HEAP32[$yymsp>>2]|0; - $435 = (($434) + -16|0); - $436 = (($435) + 4|0); - $437 = HEAP32[$436>>2]|0; - _sqlite3WithDelete($433,$437); - } - $438 = HEAP32[$p>>2]|0; - HEAP32[$yygotominor>>2] = $438; - break; - } - case 23: { - $29 = HEAP32[$pParse>>2]|0; - $30 = HEAP32[$yymsp>>2]|0; - $31 = (($30) + 4|0); - _sqlite3Savepoint($29,1,$31); - break; - } - case 49: { - $165 = HEAP32[$yymsp>>2]|0; - $166 = (($165) + -16|0); - $167 = (($166) + 4|0); - $168 = HEAP32[$167>>2]|0; - HEAP32[$yygotominor>>2] = $168; - $169 = HEAP32[$yymsp>>2]|0; - $170 = (($169) + 4|0); - $171 = (($170) + 4|0); - $172 = HEAP32[$171>>2]|0; - $173 = HEAP32[$yymsp>>2]|0; - $174 = (($173) + 4|0); - $175 = HEAP32[$174>>2]|0; - $176 = HEAP32[$yymsp>>2]|0; - $177 = (($176) + -16|0); - $178 = (($177) + 4|0); - $179 = HEAP32[$178>>2]|0; - $180 = $175; - $181 = $179; - $182 = (($180) - ($181))|0; - $183 = (($172) + ($182))|0; - $184 = (($yygotominor) + 4|0); - HEAP32[$184>>2] = $183; - break; - } - case 8: { - $14 = HEAP32[$pParse>>2]|0; - _sqlite3FinishCoding($14); - break; - } - case 13: { - HEAP32[$yygotominor>>2] = 7; - break; - } - case 35: { - $74 = HEAP32[$yymsp>>2]|0; - $75 = (($74) + 4|0); - $76 = (($75) + 4|0); - $77 = HEAP32[$76>>2]|0; - $78 = ($77|0)==(5); - if ($78) { - $79 = HEAP32[$yymsp>>2]|0; - $80 = (($79) + 4|0); - $81 = HEAP32[$80>>2]|0; - $82 = (_sqlite3_strnicmp($81,9896,5)|0); - $83 = ($82|0)==(0); - if ($83) { - HEAP8[$yygotominor>>0] = 32; - break L1; - } - } - HEAP8[$yygotominor>>0] = 0; - $84 = HEAP32[$pParse>>2]|0; - $85 = HEAP32[$yymsp>>2]|0; - $86 = (($85) + 4|0); - $87 = (($86) + 4|0); - $88 = HEAP32[$87>>2]|0; - $89 = HEAP32[$yymsp>>2]|0; - $90 = (($89) + 4|0); - $91 = HEAP32[$90>>2]|0; - HEAP32[$vararg_buffer14>>2] = $88; - $vararg_ptr1 = (($vararg_buffer14) + 4|0); - HEAP32[$vararg_ptr1>>2] = $91; - _sqlite3ErrorMsg($84,9904,$vararg_buffer14); - break; - } - case 44: { - $122 = HEAP32[$pParse>>2]|0; - $123 = HEAP32[$yymsp>>2]|0; - $124 = (($123) + 4|0); - _sqlite3AddColumnType($122,$124); - break; - } - case 63: { - $232 = HEAP32[$pParse>>2]|0; - $233 = HEAP32[$yymsp>>2]|0; - $234 = (($233) + 4|0); - $235 = HEAP32[$234>>2]|0; - (_sqlite3CreateIndex($232,0,0,0,0,$235,0,0,0,0)|0); - break; - } - case 5: { - $11 = HEAP32[$pParse>>2]|0; - _sqlite3BeginParse($11,0); - break; - } - case 172: { - $927 = HEAP32[$pParse>>2]|0; - $928 = HEAP32[$yymsp>>2]|0; - $929 = (($928) + -112|0); - $930 = (($929) + 4|0); - $931 = HEAP32[$930>>2]|0; - _sqlite3WithPush($927,$931,1); - $932 = HEAP32[$pParse>>2]|0; - $933 = HEAP32[$yymsp>>2]|0; - $934 = (($933) + -64|0); - $935 = (($934) + 4|0); - $936 = HEAP32[$935>>2]|0; - $937 = HEAP32[$yymsp>>2]|0; - $938 = (($937) + -48|0); - $939 = (($938) + 4|0); - _sqlite3SrcListIndexedBy($932,$936,$939); - $940 = HEAP32[$pParse>>2]|0; - $941 = HEAP32[$yymsp>>2]|0; - $942 = (($941) + -16|0); - $943 = (($942) + 4|0); - $944 = HEAP32[$943>>2]|0; - _sqlite3ExprListCheckLength($940,$944,10000); - $945 = HEAP32[$pParse>>2]|0; - $946 = HEAP32[$yymsp>>2]|0; - $947 = (($946) + -64|0); - $948 = (($947) + 4|0); - $949 = HEAP32[$948>>2]|0; - $950 = HEAP32[$yymsp>>2]|0; - $951 = (($950) + -16|0); - $952 = (($951) + 4|0); - $953 = HEAP32[$952>>2]|0; - $954 = HEAP32[$yymsp>>2]|0; - $955 = (($954) + 4|0); - $956 = HEAP32[$955>>2]|0; - $957 = HEAP32[$yymsp>>2]|0; - $958 = (($957) + -80|0); - $959 = (($958) + 4|0); - $960 = HEAP8[$959>>0]|0; - $961 = $960&255; - _sqlite3Update($945,$949,$953,$956,$961); - break; - } - case 173: { - $962 = HEAP32[$pParse>>2]|0; - $963 = HEAP32[$yymsp>>2]|0; - $964 = (($963) + -64|0); - $965 = (($964) + 4|0); - $966 = HEAP32[$965>>2]|0; - $967 = HEAP32[$yymsp>>2]|0; - $968 = (($967) + 4|0); - $969 = HEAP32[$968>>2]|0; - $970 = (_sqlite3ExprListAppend($962,$966,$969)|0); - HEAP32[$yygotominor>>2] = $970; - $971 = HEAP32[$pParse>>2]|0; - $972 = HEAP32[$yygotominor>>2]|0; - $973 = HEAP32[$yymsp>>2]|0; - $974 = (($973) + -32|0); - $975 = (($974) + 4|0); - _sqlite3ExprListSetName($971,$972,$975,1); - break; - } - case 174: { - $976 = HEAP32[$pParse>>2]|0; - $977 = HEAP32[$yymsp>>2]|0; - $978 = (($977) + 4|0); - $979 = HEAP32[$978>>2]|0; - $980 = (_sqlite3ExprListAppend($976,0,$979)|0); - HEAP32[$yygotominor>>2] = $980; - $981 = HEAP32[$pParse>>2]|0; - $982 = HEAP32[$yygotominor>>2]|0; - $983 = HEAP32[$yymsp>>2]|0; - $984 = (($983) + -32|0); - $985 = (($984) + 4|0); - _sqlite3ExprListSetName($981,$982,$985,1); - break; - } - case 175: { - $986 = HEAP32[$pParse>>2]|0; - $987 = HEAP32[$yymsp>>2]|0; - $988 = (($987) + -80|0); - $989 = (($988) + 4|0); - $990 = HEAP32[$989>>2]|0; - _sqlite3WithPush($986,$990,1); - $991 = HEAP32[$pParse>>2]|0; - $992 = HEAP32[$yymsp>>2]|0; - $993 = (($992) + -32|0); - $994 = (($993) + 4|0); - $995 = HEAP32[$994>>2]|0; - $996 = HEAP32[$yymsp>>2]|0; - $997 = (($996) + 4|0); - $998 = HEAP32[$997>>2]|0; - $999 = HEAP32[$yymsp>>2]|0; - $1000 = (($999) + -16|0); - $1001 = (($1000) + 4|0); - $1002 = HEAP32[$1001>>2]|0; - $1003 = HEAP32[$yymsp>>2]|0; - $1004 = (($1003) + -64|0); - $1005 = (($1004) + 4|0); - $1006 = HEAP8[$1005>>0]|0; - $1007 = $1006&255; - _sqlite3Insert($991,$995,$998,$1002,$1007); - break; - } - case 176: { - $1008 = HEAP32[$pParse>>2]|0; - $1009 = HEAP32[$yymsp>>2]|0; - $1010 = (($1009) + -96|0); - $1011 = (($1010) + 4|0); - $1012 = HEAP32[$1011>>2]|0; - _sqlite3WithPush($1008,$1012,1); - $1013 = HEAP32[$pParse>>2]|0; - $1014 = HEAP32[$yymsp>>2]|0; - $1015 = (($1014) + -48|0); - $1016 = (($1015) + 4|0); - $1017 = HEAP32[$1016>>2]|0; - $1018 = HEAP32[$yymsp>>2]|0; - $1019 = (($1018) + -32|0); - $1020 = (($1019) + 4|0); - $1021 = HEAP32[$1020>>2]|0; - $1022 = HEAP32[$yymsp>>2]|0; - $1023 = (($1022) + -80|0); - $1024 = (($1023) + 4|0); - $1025 = HEAP8[$1024>>0]|0; - $1026 = $1025&255; - _sqlite3Insert($1013,$1017,0,$1021,$1026); - break; - } - case 177: { - $1027 = HEAP32[$yymsp>>2]|0; - $1028 = (($1027) + 4|0); - $1029 = HEAP8[$1028>>0]|0; - HEAP8[$yygotominor>>0] = $1029; - break; - } - case 178: { - HEAP8[$yygotominor>>0] = 5; - break; - } - case 184: { - $1046 = HEAP32[$yymsp>>2]|0; - $1047 = (($1046) + -16|0); - $1048 = (($1047) + 4|0); - $1049 = HEAP32[$1048>>2]|0; - HEAP32[$yygotominor>>2] = $1049; - $1050 = HEAP32[$yymsp>>2]|0; - $1051 = (($1050) + -32|0); - $1052 = (($1051) + 4|0); - $1053 = HEAP32[$yymsp>>2]|0; - $1054 = (($1053) + 4|0); - _spanSet($yygotominor,$1052,$1054); - break; - } - case 191: case 190: case 185: { - $1055 = HEAP32[$pParse>>2]|0; - $1056 = HEAP32[$yymsp>>2]|0; - $1057 = (($1056) + 2|0); - $1058 = HEAP8[$1057>>0]|0; - $1059 = $1058&255; - $1060 = HEAP32[$yymsp>>2]|0; - $1061 = (($1060) + 4|0); - _spanExpr($yygotominor,$1055,$1059,$1061); - break; - } - case 187: case 186: { - $1062 = HEAP32[$pParse>>2]|0; - $1063 = HEAP32[$yymsp>>2]|0; - $1064 = (($1063) + 4|0); - _spanExpr($yygotominor,$1062,27,$1064); - break; - } - case 188: { - $1065 = HEAP32[$pParse>>2]|0; - $1066 = HEAP32[$yymsp>>2]|0; - $1067 = (($1066) + -32|0); - $1068 = (($1067) + 4|0); - $1069 = (_sqlite3PExpr($1065,27,0,0,$1068)|0); - HEAP32[$temp1>>2] = $1069; - $1070 = HEAP32[$pParse>>2]|0; - $1071 = HEAP32[$yymsp>>2]|0; - $1072 = (($1071) + 4|0); - $1073 = (_sqlite3PExpr($1070,27,0,0,$1072)|0); - HEAP32[$temp2>>2] = $1073; - $1074 = HEAP32[$pParse>>2]|0; - $1075 = HEAP32[$temp1>>2]|0; - $1076 = HEAP32[$temp2>>2]|0; - $1077 = (_sqlite3PExpr($1074,122,$1075,$1076,0)|0); - HEAP32[$yygotominor>>2] = $1077; - $1078 = HEAP32[$yymsp>>2]|0; - $1079 = (($1078) + -32|0); - $1080 = (($1079) + 4|0); - $1081 = HEAP32[$yymsp>>2]|0; - $1082 = (($1081) + 4|0); - _spanSet($yygotominor,$1080,$1082); - break; - } - case 189: { - $1083 = HEAP32[$pParse>>2]|0; - $1084 = HEAP32[$yymsp>>2]|0; - $1085 = (($1084) + -64|0); - $1086 = (($1085) + 4|0); - $1087 = (_sqlite3PExpr($1083,27,0,0,$1086)|0); - HEAP32[$temp14>>2] = $1087; - $1088 = HEAP32[$pParse>>2]|0; - $1089 = HEAP32[$yymsp>>2]|0; - $1090 = (($1089) + -32|0); - $1091 = (($1090) + 4|0); - $1092 = (_sqlite3PExpr($1088,27,0,0,$1091)|0); - HEAP32[$temp25>>2] = $1092; - $1093 = HEAP32[$pParse>>2]|0; - $1094 = HEAP32[$yymsp>>2]|0; - $1095 = (($1094) + 4|0); - $1096 = (_sqlite3PExpr($1093,27,0,0,$1095)|0); - HEAP32[$temp3>>2] = $1096; - $1097 = HEAP32[$pParse>>2]|0; - $1098 = HEAP32[$temp25>>2]|0; - $1099 = HEAP32[$temp3>>2]|0; - $1100 = (_sqlite3PExpr($1097,122,$1098,$1099,0)|0); - HEAP32[$temp4>>2] = $1100; - $1101 = HEAP32[$pParse>>2]|0; - $1102 = HEAP32[$temp14>>2]|0; - $1103 = HEAP32[$temp4>>2]|0; - $1104 = (_sqlite3PExpr($1101,122,$1102,$1103,0)|0); - HEAP32[$yygotominor>>2] = $1104; - $1105 = HEAP32[$yymsp>>2]|0; - $1106 = (($1105) + -64|0); - $1107 = (($1106) + 4|0); - $1108 = HEAP32[$yymsp>>2]|0; - $1109 = (($1108) + 4|0); - _spanSet($yygotominor,$1107,$1109); - break; - } - case 192: { - $1110 = HEAP32[$yymsp>>2]|0; - $1111 = (($1110) + 4|0); - $1112 = (($1111) + 4|0); - $1113 = HEAP32[$1112>>2]|0; - $1114 = ($1113>>>0)>=(2); - do { - if ($1114) { - $1115 = HEAP32[$yymsp>>2]|0; - $1116 = (($1115) + 4|0); - $1117 = HEAP32[$1116>>2]|0; - $1118 = HEAP8[$1117>>0]|0; - $1119 = $1118 << 24 >> 24; - $1120 = ($1119|0)==(35); - if ($1120) { - $1121 = HEAP32[$yymsp>>2]|0; - $1122 = (($1121) + 4|0); - $1123 = HEAP32[$1122>>2]|0; - $1124 = (($1123) + 1|0); - $1125 = HEAP8[$1124>>0]|0; - $1126 = $1125&255; - $1127 = (48 + ($1126)|0); - $1128 = HEAP8[$1127>>0]|0; - $1129 = $1128&255; - $1130 = $1129 & 4; - $1131 = ($1130|0)!=(0); - if ($1131) { - $1132 = HEAP32[$pParse>>2]|0; - $1133 = (($1132) + 18|0); - $1134 = HEAP8[$1133>>0]|0; - $1135 = $1134&255; - $1136 = ($1135|0)==(0); - $1137 = HEAP32[$pParse>>2]|0; - $1138 = HEAP32[$yymsp>>2]|0; - $1139 = (($1138) + 4|0); - if ($1136) { - HEAP32[$vararg_buffer14>>2] = $1139; - _sqlite3ErrorMsg($1137,9872,$vararg_buffer14); - HEAP32[$yygotominor>>2] = 0; - break; - } - $1140 = (_sqlite3PExpr($1137,159,0,0,$1139)|0); - HEAP32[$yygotominor>>2] = $1140; - $1141 = HEAP32[$yygotominor>>2]|0; - $1142 = ($1141|0)!=(0|0); - if ($1142) { - $1143 = HEAP32[$yymsp>>2]|0; - $1144 = (($1143) + 4|0); - $1145 = HEAP32[$1144>>2]|0; - $1146 = (($1145) + 1|0); - $1147 = HEAP32[$yygotominor>>2]|0; - $1148 = (($1147) + 28|0); - (_sqlite3GetInt32($1146,$1148)|0); - } - } else { - label = 170; - } - } else { - label = 170; - } - } else { - label = 170; - } - } while(0); - if ((label|0) == 170) { - $1149 = HEAP32[$pParse>>2]|0; - $1150 = HEAP32[$yymsp>>2]|0; - $1151 = (($1150) + 4|0); - _spanExpr($yygotominor,$1149,135,$1151); - $1152 = HEAP32[$pParse>>2]|0; - $1153 = HEAP32[$yygotominor>>2]|0; - _sqlite3ExprAssignVarNumber($1152,$1153); - } - $1154 = HEAP32[$yymsp>>2]|0; - $1155 = (($1154) + 4|0); - $1156 = HEAP32[$yymsp>>2]|0; - $1157 = (($1156) + 4|0); - _spanSet($yygotominor,$1155,$1157); - break; - } - case 193: { - $1158 = HEAP32[$pParse>>2]|0; - $1159 = HEAP32[$yymsp>>2]|0; - $1160 = (($1159) + -32|0); - $1161 = (($1160) + 4|0); - $1162 = HEAP32[$1161>>2]|0; - $1163 = HEAP32[$yymsp>>2]|0; - $1164 = (($1163) + 4|0); - $1165 = (_sqlite3ExprAddCollateToken($1158,$1162,$1164)|0); - HEAP32[$yygotominor>>2] = $1165; - $1166 = HEAP32[$yymsp>>2]|0; - $1167 = (($1166) + -32|0); - $1168 = (($1167) + 4|0); - $1169 = (($1168) + 4|0); - $1170 = HEAP32[$1169>>2]|0; - $1171 = (($yygotominor) + 4|0); - HEAP32[$1171>>2] = $1170; - $1172 = HEAP32[$yymsp>>2]|0; - $1173 = (($1172) + 4|0); - $1174 = (($1173) + 4|0); - $1175 = HEAP32[$1174>>2]|0; - $1176 = HEAP32[$yymsp>>2]|0; - $1177 = (($1176) + 4|0); - $1178 = HEAP32[$1177>>2]|0; - $1179 = (($1178) + ($1175)|0); - $1180 = (($yygotominor) + 8|0); - HEAP32[$1180>>2] = $1179; - break; - } - case 194: { - $1181 = HEAP32[$pParse>>2]|0; - $1182 = HEAP32[$yymsp>>2]|0; - $1183 = (($1182) + -48|0); - $1184 = (($1183) + 4|0); - $1185 = HEAP32[$1184>>2]|0; - $1186 = HEAP32[$yymsp>>2]|0; - $1187 = (($1186) + -16|0); - $1188 = (($1187) + 4|0); - $1189 = (_sqlite3PExpr($1181,38,$1185,0,$1188)|0); - HEAP32[$yygotominor>>2] = $1189; - $1190 = HEAP32[$yymsp>>2]|0; - $1191 = (($1190) + -80|0); - $1192 = (($1191) + 4|0); - $1193 = HEAP32[$yymsp>>2]|0; - $1194 = (($1193) + 4|0); - _spanSet($yygotominor,$1192,$1194); - break; - } - case 195: { - $1195 = HEAP32[$yymsp>>2]|0; - $1196 = (($1195) + -16|0); - $1197 = (($1196) + 4|0); - $1198 = HEAP32[$1197>>2]|0; - $1199 = ($1198|0)!=(0|0); - if ($1199) { - $1200 = HEAP32[$yymsp>>2]|0; - $1201 = (($1200) + -16|0); - $1202 = (($1201) + 4|0); - $1203 = HEAP32[$1202>>2]|0; - $1204 = HEAP32[$1203>>2]|0; - $1205 = HEAP32[$pParse>>2]|0; - $1206 = HEAP32[$1205>>2]|0; - $1207 = (($1206) + 88|0); - $1208 = (($1207) + 24|0); - $1209 = HEAP32[$1208>>2]|0; - $1210 = ($1204|0)>($1209|0); - if ($1210) { - $1211 = HEAP32[$pParse>>2]|0; - $1212 = HEAP32[$yymsp>>2]|0; - $1213 = (($1212) + -64|0); - $1214 = (($1213) + 4|0); - HEAP32[$vararg_buffer14>>2] = $1214; - _sqlite3ErrorMsg($1211,10016,$vararg_buffer14); - } - } - $1215 = HEAP32[$pParse>>2]|0; - $1216 = HEAP32[$yymsp>>2]|0; - $1217 = (($1216) + -16|0); - $1218 = (($1217) + 4|0); - $1219 = HEAP32[$1218>>2]|0; - $1220 = HEAP32[$yymsp>>2]|0; - $1221 = (($1220) + -64|0); - $1222 = (($1221) + 4|0); - $1223 = (_sqlite3ExprFunction($1215,$1219,$1222)|0); - HEAP32[$yygotominor>>2] = $1223; - $1224 = HEAP32[$yymsp>>2]|0; - $1225 = (($1224) + -64|0); - $1226 = (($1225) + 4|0); - $1227 = HEAP32[$yymsp>>2]|0; - $1228 = (($1227) + 4|0); - _spanSet($yygotominor,$1226,$1228); - $1229 = HEAP32[$yymsp>>2]|0; - $1230 = (($1229) + -32|0); - $1231 = (($1230) + 4|0); - $1232 = HEAP16[$1231>>1]|0; - $1233 = $1232&65535; - $1234 = ($1233|0)!=(0); - if ($1234) { - $1235 = HEAP32[$yygotominor>>2]|0; - $1236 = ($1235|0)!=(0|0); - if ($1236) { - $1237 = HEAP32[$yygotominor>>2]|0; - $1238 = (($1237) + 4|0); - $1239 = HEAP32[$1238>>2]|0; - $1240 = $1239 | 16; - HEAP32[$1238>>2] = $1240; - } - } - break; - } - case 196: { - $1241 = HEAP32[$pParse>>2]|0; - $1242 = HEAP32[$yymsp>>2]|0; - $1243 = (($1242) + -48|0); - $1244 = (($1243) + 4|0); - $1245 = (_sqlite3ExprFunction($1241,0,$1244)|0); - HEAP32[$yygotominor>>2] = $1245; - $1246 = HEAP32[$yymsp>>2]|0; - $1247 = (($1246) + -48|0); - $1248 = (($1247) + 4|0); - $1249 = HEAP32[$yymsp>>2]|0; - $1250 = (($1249) + 4|0); - _spanSet($yygotominor,$1248,$1250); - break; - } - case 197: { - $1251 = HEAP32[$pParse>>2]|0; - $1252 = HEAP32[$yymsp>>2]|0; - $1253 = (($1252) + 4|0); - $1254 = (_sqlite3ExprFunction($1251,0,$1253)|0); - HEAP32[$yygotominor>>2] = $1254; - $1255 = HEAP32[$yymsp>>2]|0; - $1256 = (($1255) + 4|0); - $1257 = HEAP32[$yymsp>>2]|0; - $1258 = (($1257) + 4|0); - _spanSet($yygotominor,$1256,$1258); - break; - } - case 205: case 204: case 203: case 202: case 201: case 200: case 199: case 198: { - $1259 = HEAP32[$pParse>>2]|0; - $1260 = HEAP32[$yymsp>>2]|0; - $1261 = (($1260) + -16|0); - $1262 = (($1261) + 2|0); - $1263 = HEAP8[$1262>>0]|0; - $1264 = $1263&255; - $1265 = HEAP32[$yymsp>>2]|0; - $1266 = (($1265) + -32|0); - $1267 = (($1266) + 4|0); - $1268 = HEAP32[$yymsp>>2]|0; - $1269 = (($1268) + 4|0); - _spanBinaryExpr($yygotominor,$1259,$1264,$1267,$1269); - break; - } - case 206: { - $1270 = HEAP32[$yymsp>>2]|0; - $1271 = (($1270) + 4|0); - ;HEAP32[$yygotominor+0>>2]=HEAP32[$1271+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$1271+4>>2]|0; - $1272 = (($yygotominor) + 8|0); - HEAP32[$1272>>2] = 0; - break; - } - case 207: { - $1273 = HEAP32[$yymsp>>2]|0; - $1274 = (($1273) + 4|0); - ;HEAP32[$yygotominor+0>>2]=HEAP32[$1274+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$1274+4>>2]|0; - $1275 = (($yygotominor) + 8|0); - HEAP32[$1275>>2] = 1; - break; - } - case 208: { - $1276 = HEAP32[$pParse>>2]|0; - $1277 = HEAP32[$yymsp>>2]|0; - $1278 = (($1277) + 4|0); - $1279 = HEAP32[$1278>>2]|0; - $1280 = (_sqlite3ExprListAppend($1276,0,$1279)|0); - HEAP32[$pList>>2] = $1280; - $1281 = HEAP32[$pParse>>2]|0; - $1282 = HEAP32[$pList>>2]|0; - $1283 = HEAP32[$yymsp>>2]|0; - $1284 = (($1283) + -32|0); - $1285 = (($1284) + 4|0); - $1286 = HEAP32[$1285>>2]|0; - $1287 = (_sqlite3ExprListAppend($1281,$1282,$1286)|0); - HEAP32[$pList>>2] = $1287; - $1288 = HEAP32[$pParse>>2]|0; - $1289 = HEAP32[$pList>>2]|0; - $1290 = HEAP32[$yymsp>>2]|0; - $1291 = (($1290) + -16|0); - $1292 = (($1291) + 4|0); - $1293 = (_sqlite3ExprFunction($1288,$1289,$1292)|0); - HEAP32[$yygotominor>>2] = $1293; - $1294 = HEAP32[$yymsp>>2]|0; - $1295 = (($1294) + -16|0); - $1296 = (($1295) + 4|0); - $1297 = (($1296) + 8|0); - $1298 = HEAP32[$1297>>2]|0; - $1299 = ($1298|0)!=(0); - if ($1299) { - $1300 = HEAP32[$pParse>>2]|0; - $1301 = HEAP32[$yygotominor>>2]|0; - $1302 = (_sqlite3PExpr($1300,19,$1301,0,0)|0); - HEAP32[$yygotominor>>2] = $1302; - } - $1303 = HEAP32[$yymsp>>2]|0; - $1304 = (($1303) + -32|0); - $1305 = (($1304) + 4|0); - $1306 = (($1305) + 4|0); - $1307 = HEAP32[$1306>>2]|0; - $1308 = (($yygotominor) + 4|0); - HEAP32[$1308>>2] = $1307; - $1309 = HEAP32[$yymsp>>2]|0; - $1310 = (($1309) + 4|0); - $1311 = (($1310) + 8|0); - $1312 = HEAP32[$1311>>2]|0; - $1313 = (($yygotominor) + 8|0); - HEAP32[$1313>>2] = $1312; - $1314 = HEAP32[$yygotominor>>2]|0; - $1315 = ($1314|0)!=(0|0); - if ($1315) { - $1316 = HEAP32[$yygotominor>>2]|0; - $1317 = (($1316) + 4|0); - $1318 = HEAP32[$1317>>2]|0; - $1319 = $1318 | 128; - HEAP32[$1317>>2] = $1319; - } - break; - } - case 209: { - $1320 = HEAP32[$pParse>>2]|0; - $1321 = HEAP32[$yymsp>>2]|0; - $1322 = (($1321) + -32|0); - $1323 = (($1322) + 4|0); - $1324 = HEAP32[$1323>>2]|0; - $1325 = (_sqlite3ExprListAppend($1320,0,$1324)|0); - HEAP32[$pList6>>2] = $1325; - $1326 = HEAP32[$pParse>>2]|0; - $1327 = HEAP32[$pList6>>2]|0; - $1328 = HEAP32[$yymsp>>2]|0; - $1329 = (($1328) + -64|0); - $1330 = (($1329) + 4|0); - $1331 = HEAP32[$1330>>2]|0; - $1332 = (_sqlite3ExprListAppend($1326,$1327,$1331)|0); - HEAP32[$pList6>>2] = $1332; - $1333 = HEAP32[$pParse>>2]|0; - $1334 = HEAP32[$pList6>>2]|0; - $1335 = HEAP32[$yymsp>>2]|0; - $1336 = (($1335) + 4|0); - $1337 = HEAP32[$1336>>2]|0; - $1338 = (_sqlite3ExprListAppend($1333,$1334,$1337)|0); - HEAP32[$pList6>>2] = $1338; - $1339 = HEAP32[$pParse>>2]|0; - $1340 = HEAP32[$pList6>>2]|0; - $1341 = HEAP32[$yymsp>>2]|0; - $1342 = (($1341) + -48|0); - $1343 = (($1342) + 4|0); - $1344 = (_sqlite3ExprFunction($1339,$1340,$1343)|0); - HEAP32[$yygotominor>>2] = $1344; - $1345 = HEAP32[$yymsp>>2]|0; - $1346 = (($1345) + -48|0); - $1347 = (($1346) + 4|0); - $1348 = (($1347) + 8|0); - $1349 = HEAP32[$1348>>2]|0; - $1350 = ($1349|0)!=(0); - if ($1350) { - $1351 = HEAP32[$pParse>>2]|0; - $1352 = HEAP32[$yygotominor>>2]|0; - $1353 = (_sqlite3PExpr($1351,19,$1352,0,0)|0); - HEAP32[$yygotominor>>2] = $1353; - } - $1354 = HEAP32[$yymsp>>2]|0; - $1355 = (($1354) + -64|0); - $1356 = (($1355) + 4|0); - $1357 = (($1356) + 4|0); - $1358 = HEAP32[$1357>>2]|0; - $1359 = (($yygotominor) + 4|0); - HEAP32[$1359>>2] = $1358; - $1360 = HEAP32[$yymsp>>2]|0; - $1361 = (($1360) + 4|0); - $1362 = (($1361) + 8|0); - $1363 = HEAP32[$1362>>2]|0; - $1364 = (($yygotominor) + 8|0); - HEAP32[$1364>>2] = $1363; - $1365 = HEAP32[$yygotominor>>2]|0; - $1366 = ($1365|0)!=(0|0); - if ($1366) { - $1367 = HEAP32[$yygotominor>>2]|0; - $1368 = (($1367) + 4|0); - $1369 = HEAP32[$1368>>2]|0; - $1370 = $1369 | 128; - HEAP32[$1368>>2] = $1370; - } - break; - } - case 223: { - $1477 = HEAP32[$yymsp>>2]|0; - $1478 = (($1477) + -16|0); - $1479 = (($1478) + 4|0); - $1480 = HEAP32[$1479>>2]|0; - $1481 = ($1480|0)==(0|0); - do { - if ($1481) { - $1482 = HEAP32[$pParse>>2]|0; - $1483 = HEAP32[$yymsp>>2]|0; - $1484 = (($1483) + -48|0); - $1485 = (($1484) + 4|0); - $1486 = HEAP32[$1485>>2]|0; - $1487 = (10056 + ($1486<<3)|0); - $1488 = (_sqlite3PExpr($1482,132,0,0,$1487)|0); - HEAP32[$yygotominor>>2] = $1488; - $1489 = HEAP32[$pParse>>2]|0; - $1490 = HEAP32[$1489>>2]|0; - $1491 = HEAP32[$yymsp>>2]|0; - $1492 = (($1491) + -64|0); - $1493 = (($1492) + 4|0); - $1494 = HEAP32[$1493>>2]|0; - _sqlite3ExprDelete($1490,$1494); - } else { - $1495 = HEAP32[$yymsp>>2]|0; - $1496 = (($1495) + -16|0); - $1497 = (($1496) + 4|0); - $1498 = HEAP32[$1497>>2]|0; - $1499 = HEAP32[$1498>>2]|0; - $1500 = ($1499|0)==(1); - if ($1500) { - $1501 = HEAP32[$yymsp>>2]|0; - $1502 = (($1501) + -16|0); - $1503 = (($1502) + 4|0); - $1504 = HEAP32[$1503>>2]|0; - $1505 = (($1504) + 4|0); - $1506 = HEAP32[$1505>>2]|0; - $1507 = HEAP32[$1506>>2]|0; - HEAP32[$pRHS>>2] = $1507; - $1508 = HEAP32[$yymsp>>2]|0; - $1509 = (($1508) + -16|0); - $1510 = (($1509) + 4|0); - $1511 = HEAP32[$1510>>2]|0; - $1512 = (($1511) + 4|0); - $1513 = HEAP32[$1512>>2]|0; - HEAP32[$1513>>2] = 0; - $1514 = HEAP32[$pParse>>2]|0; - $1515 = HEAP32[$1514>>2]|0; - $1516 = HEAP32[$yymsp>>2]|0; - $1517 = (($1516) + -16|0); - $1518 = (($1517) + 4|0); - $1519 = HEAP32[$1518>>2]|0; - _sqlite3ExprListDelete($1515,$1519); - $1520 = HEAP32[$pRHS>>2]|0; - $1521 = ($1520|0)!=(0|0); - if ($1521) { - $1522 = HEAP32[$pRHS>>2]|0; - $1523 = (($1522) + 4|0); - $1524 = HEAP32[$1523>>2]|0; - $1525 = $1524 & -257; - HEAP32[$1523>>2] = $1525; - $1526 = HEAP32[$pRHS>>2]|0; - $1527 = (($1526) + 4|0); - $1528 = HEAP32[$1527>>2]|0; - $1529 = $1528 | 512; - HEAP32[$1527>>2] = $1529; - } - $1530 = HEAP32[$pParse>>2]|0; - $1531 = HEAP32[$yymsp>>2]|0; - $1532 = (($1531) + -48|0); - $1533 = (($1532) + 4|0); - $1534 = HEAP32[$1533>>2]|0; - $1535 = ($1534|0)!=(0); - $1536 = $1535 ? 78 : 79; - $1537 = HEAP32[$yymsp>>2]|0; - $1538 = (($1537) + -64|0); - $1539 = (($1538) + 4|0); - $1540 = HEAP32[$1539>>2]|0; - $1541 = HEAP32[$pRHS>>2]|0; - $1542 = (_sqlite3PExpr($1530,$1536,$1540,$1541,0)|0); - HEAP32[$yygotominor>>2] = $1542; - break; - } - $1543 = HEAP32[$pParse>>2]|0; - $1544 = HEAP32[$yymsp>>2]|0; - $1545 = (($1544) + -64|0); - $1546 = (($1545) + 4|0); - $1547 = HEAP32[$1546>>2]|0; - $1548 = (_sqlite3PExpr($1543,75,$1547,0,0)|0); - HEAP32[$yygotominor>>2] = $1548; - $1549 = HEAP32[$yygotominor>>2]|0; - $1550 = ($1549|0)!=(0|0); - if ($1550) { - $1551 = HEAP32[$yymsp>>2]|0; - $1552 = (($1551) + -16|0); - $1553 = (($1552) + 4|0); - $1554 = HEAP32[$1553>>2]|0; - $1555 = HEAP32[$yygotominor>>2]|0; - $1556 = (($1555) + 20|0); - HEAP32[$1556>>2] = $1554; - $1557 = HEAP32[$pParse>>2]|0; - $1558 = HEAP32[$yygotominor>>2]|0; - _sqlite3ExprSetHeight($1557,$1558); - } else { - $1559 = HEAP32[$pParse>>2]|0; - $1560 = HEAP32[$1559>>2]|0; - $1561 = HEAP32[$yymsp>>2]|0; - $1562 = (($1561) + -16|0); - $1563 = (($1562) + 4|0); - $1564 = HEAP32[$1563>>2]|0; - _sqlite3ExprListDelete($1560,$1564); - } - $1565 = HEAP32[$yymsp>>2]|0; - $1566 = (($1565) + -48|0); - $1567 = (($1566) + 4|0); - $1568 = HEAP32[$1567>>2]|0; - $1569 = ($1568|0)!=(0); - if ($1569) { - $1570 = HEAP32[$pParse>>2]|0; - $1571 = HEAP32[$yygotominor>>2]|0; - $1572 = (_sqlite3PExpr($1570,19,$1571,0,0)|0); - HEAP32[$yygotominor>>2] = $1572; - } - } - } while(0); - $1573 = HEAP32[$yymsp>>2]|0; - $1574 = (($1573) + -64|0); - $1575 = (($1574) + 4|0); - $1576 = (($1575) + 4|0); - $1577 = HEAP32[$1576>>2]|0; - $1578 = (($yygotominor) + 4|0); - HEAP32[$1578>>2] = $1577; - $1579 = HEAP32[$yymsp>>2]|0; - $1580 = (($1579) + 4|0); - $1581 = (($1580) + 4|0); - $1582 = HEAP32[$1581>>2]|0; - $1583 = HEAP32[$yymsp>>2]|0; - $1584 = (($1583) + 4|0); - $1585 = HEAP32[$1584>>2]|0; - $1586 = (($1585) + ($1582)|0); - $1587 = (($yygotominor) + 8|0); - HEAP32[$1587>>2] = $1586; - break; - } - case 210: { - $1371 = HEAP32[$pParse>>2]|0; - $1372 = HEAP32[$yymsp>>2]|0; - $1373 = (($1372) + 2|0); - $1374 = HEAP8[$1373>>0]|0; - $1375 = $1374&255; - $1376 = HEAP32[$yymsp>>2]|0; - $1377 = (($1376) + -16|0); - $1378 = (($1377) + 4|0); - $1379 = HEAP32[$yymsp>>2]|0; - $1380 = (($1379) + 4|0); - _spanUnaryPostfix($yygotominor,$1371,$1375,$1378,$1380); - break; - } - case 211: { - $1381 = HEAP32[$pParse>>2]|0; - $1382 = HEAP32[$yymsp>>2]|0; - $1383 = (($1382) + -32|0); - $1384 = (($1383) + 4|0); - $1385 = HEAP32[$yymsp>>2]|0; - $1386 = (($1385) + 4|0); - _spanUnaryPostfix($yygotominor,$1381,77,$1384,$1386); - break; - } - case 212: { - $1387 = HEAP32[$pParse>>2]|0; - $1388 = HEAP32[$yymsp>>2]|0; - $1389 = (($1388) + -32|0); - $1390 = (($1389) + 4|0); - $1391 = HEAP32[$yymsp>>2]|0; - $1392 = (($1391) + 4|0); - _spanBinaryExpr($yygotominor,$1387,73,$1390,$1392); - $1393 = HEAP32[$pParse>>2]|0; - $1394 = HEAP32[$yymsp>>2]|0; - $1395 = (($1394) + 4|0); - $1396 = HEAP32[$1395>>2]|0; - $1397 = HEAP32[$yygotominor>>2]|0; - _binaryToUnaryIfNull($1393,$1396,$1397,76); - break; - } - case 213: { - $1398 = HEAP32[$pParse>>2]|0; - $1399 = HEAP32[$yymsp>>2]|0; - $1400 = (($1399) + -48|0); - $1401 = (($1400) + 4|0); - $1402 = HEAP32[$yymsp>>2]|0; - $1403 = (($1402) + 4|0); - _spanBinaryExpr($yygotominor,$1398,148,$1401,$1403); - $1404 = HEAP32[$pParse>>2]|0; - $1405 = HEAP32[$yymsp>>2]|0; - $1406 = (($1405) + 4|0); - $1407 = HEAP32[$1406>>2]|0; - $1408 = HEAP32[$yygotominor>>2]|0; - _binaryToUnaryIfNull($1404,$1407,$1408,77); - break; - } - case 215: case 214: { - $1409 = HEAP32[$pParse>>2]|0; - $1410 = HEAP32[$yymsp>>2]|0; - $1411 = (($1410) + -16|0); - $1412 = (($1411) + 2|0); - $1413 = HEAP8[$1412>>0]|0; - $1414 = $1413&255; - $1415 = HEAP32[$yymsp>>2]|0; - $1416 = (($1415) + 4|0); - $1417 = HEAP32[$yymsp>>2]|0; - $1418 = (($1417) + -16|0); - $1419 = (($1418) + 4|0); - _spanUnaryPrefix($yygotominor,$1409,$1414,$1416,$1419); - break; - } - case 216: { - $1420 = HEAP32[$pParse>>2]|0; - $1421 = HEAP32[$yymsp>>2]|0; - $1422 = (($1421) + 4|0); - $1423 = HEAP32[$yymsp>>2]|0; - $1424 = (($1423) + -16|0); - $1425 = (($1424) + 4|0); - _spanUnaryPrefix($yygotominor,$1420,157,$1422,$1425); - break; - } - case 217: { - $1426 = HEAP32[$pParse>>2]|0; - $1427 = HEAP32[$yymsp>>2]|0; - $1428 = (($1427) + 4|0); - $1429 = HEAP32[$yymsp>>2]|0; - $1430 = (($1429) + -16|0); - $1431 = (($1430) + 4|0); - _spanUnaryPrefix($yygotominor,$1426,158,$1428,$1431); - break; - } - case 220: { - $1432 = HEAP32[$pParse>>2]|0; - $1433 = HEAP32[$yymsp>>2]|0; - $1434 = (($1433) + -32|0); - $1435 = (($1434) + 4|0); - $1436 = HEAP32[$1435>>2]|0; - $1437 = (_sqlite3ExprListAppend($1432,0,$1436)|0); - HEAP32[$pList7>>2] = $1437; - $1438 = HEAP32[$pParse>>2]|0; - $1439 = HEAP32[$pList7>>2]|0; - $1440 = HEAP32[$yymsp>>2]|0; - $1441 = (($1440) + 4|0); - $1442 = HEAP32[$1441>>2]|0; - $1443 = (_sqlite3ExprListAppend($1438,$1439,$1442)|0); - HEAP32[$pList7>>2] = $1443; - $1444 = HEAP32[$pParse>>2]|0; - $1445 = HEAP32[$yymsp>>2]|0; - $1446 = (($1445) + -64|0); - $1447 = (($1446) + 4|0); - $1448 = HEAP32[$1447>>2]|0; - $1449 = (_sqlite3PExpr($1444,74,$1448,0,0)|0); - HEAP32[$yygotominor>>2] = $1449; - $1450 = HEAP32[$yygotominor>>2]|0; - $1451 = ($1450|0)!=(0|0); - if ($1451) { - $1452 = HEAP32[$pList7>>2]|0; - $1453 = HEAP32[$yygotominor>>2]|0; - $1454 = (($1453) + 20|0); - HEAP32[$1454>>2] = $1452; - } else { - $1455 = HEAP32[$pParse>>2]|0; - $1456 = HEAP32[$1455>>2]|0; - $1457 = HEAP32[$pList7>>2]|0; - _sqlite3ExprListDelete($1456,$1457); - } - $1458 = HEAP32[$yymsp>>2]|0; - $1459 = (($1458) + -48|0); - $1460 = (($1459) + 4|0); - $1461 = HEAP32[$1460>>2]|0; - $1462 = ($1461|0)!=(0); - if ($1462) { - $1463 = HEAP32[$pParse>>2]|0; - $1464 = HEAP32[$yygotominor>>2]|0; - $1465 = (_sqlite3PExpr($1463,19,$1464,0,0)|0); - HEAP32[$yygotominor>>2] = $1465; - } - $1466 = HEAP32[$yymsp>>2]|0; - $1467 = (($1466) + -64|0); - $1468 = (($1467) + 4|0); - $1469 = (($1468) + 4|0); - $1470 = HEAP32[$1469>>2]|0; - $1471 = (($yygotominor) + 4|0); - HEAP32[$1471>>2] = $1470; - $1472 = HEAP32[$yymsp>>2]|0; - $1473 = (($1472) + 4|0); - $1474 = (($1473) + 8|0); - $1475 = HEAP32[$1474>>2]|0; - $1476 = (($yygotominor) + 8|0); - HEAP32[$1476>>2] = $1475; - break; - } - case 224: { - $1588 = HEAP32[$pParse>>2]|0; - $1589 = (_sqlite3PExpr($1588,119,0,0,0)|0); - HEAP32[$yygotominor>>2] = $1589; - $1590 = HEAP32[$yygotominor>>2]|0; - $1591 = ($1590|0)!=(0|0); - if ($1591) { - $1592 = HEAP32[$yymsp>>2]|0; - $1593 = (($1592) + -16|0); - $1594 = (($1593) + 4|0); - $1595 = HEAP32[$1594>>2]|0; - $1596 = HEAP32[$yygotominor>>2]|0; - $1597 = (($1596) + 20|0); - HEAP32[$1597>>2] = $1595; - $1598 = HEAP32[$yygotominor>>2]|0; - $1599 = (($1598) + 4|0); - $1600 = HEAP32[$1599>>2]|0; - $1601 = $1600 | 2048; - HEAP32[$1599>>2] = $1601; - $1602 = HEAP32[$pParse>>2]|0; - $1603 = HEAP32[$yygotominor>>2]|0; - _sqlite3ExprSetHeight($1602,$1603); - } else { - $1604 = HEAP32[$pParse>>2]|0; - $1605 = HEAP32[$1604>>2]|0; - $1606 = HEAP32[$yymsp>>2]|0; - $1607 = (($1606) + -16|0); - $1608 = (($1607) + 4|0); - $1609 = HEAP32[$1608>>2]|0; - _sqlite3SelectDelete($1605,$1609); - } - $1610 = HEAP32[$yymsp>>2]|0; - $1611 = (($1610) + -32|0); - $1612 = (($1611) + 4|0); - $1613 = HEAP32[$1612>>2]|0; - $1614 = (($yygotominor) + 4|0); - HEAP32[$1614>>2] = $1613; - $1615 = HEAP32[$yymsp>>2]|0; - $1616 = (($1615) + 4|0); - $1617 = (($1616) + 4|0); - $1618 = HEAP32[$1617>>2]|0; - $1619 = HEAP32[$yymsp>>2]|0; - $1620 = (($1619) + 4|0); - $1621 = HEAP32[$1620>>2]|0; - $1622 = (($1621) + ($1618)|0); - $1623 = (($yygotominor) + 8|0); - HEAP32[$1623>>2] = $1622; - break; - } - case 225: { - $1624 = HEAP32[$pParse>>2]|0; - $1625 = HEAP32[$yymsp>>2]|0; - $1626 = (($1625) + -64|0); - $1627 = (($1626) + 4|0); - $1628 = HEAP32[$1627>>2]|0; - $1629 = (_sqlite3PExpr($1624,75,$1628,0,0)|0); - HEAP32[$yygotominor>>2] = $1629; - $1630 = HEAP32[$yygotominor>>2]|0; - $1631 = ($1630|0)!=(0|0); - if ($1631) { - $1632 = HEAP32[$yymsp>>2]|0; - $1633 = (($1632) + -16|0); - $1634 = (($1633) + 4|0); - $1635 = HEAP32[$1634>>2]|0; - $1636 = HEAP32[$yygotominor>>2]|0; - $1637 = (($1636) + 20|0); - HEAP32[$1637>>2] = $1635; - $1638 = HEAP32[$yygotominor>>2]|0; - $1639 = (($1638) + 4|0); - $1640 = HEAP32[$1639>>2]|0; - $1641 = $1640 | 2048; - HEAP32[$1639>>2] = $1641; - $1642 = HEAP32[$pParse>>2]|0; - $1643 = HEAP32[$yygotominor>>2]|0; - _sqlite3ExprSetHeight($1642,$1643); - } else { - $1644 = HEAP32[$pParse>>2]|0; - $1645 = HEAP32[$1644>>2]|0; - $1646 = HEAP32[$yymsp>>2]|0; - $1647 = (($1646) + -16|0); - $1648 = (($1647) + 4|0); - $1649 = HEAP32[$1648>>2]|0; - _sqlite3SelectDelete($1645,$1649); - } - $1650 = HEAP32[$yymsp>>2]|0; - $1651 = (($1650) + -48|0); - $1652 = (($1651) + 4|0); - $1653 = HEAP32[$1652>>2]|0; - $1654 = ($1653|0)!=(0); - if ($1654) { - $1655 = HEAP32[$pParse>>2]|0; - $1656 = HEAP32[$yygotominor>>2]|0; - $1657 = (_sqlite3PExpr($1655,19,$1656,0,0)|0); - HEAP32[$yygotominor>>2] = $1657; - } - $1658 = HEAP32[$yymsp>>2]|0; - $1659 = (($1658) + -64|0); - $1660 = (($1659) + 4|0); - $1661 = (($1660) + 4|0); - $1662 = HEAP32[$1661>>2]|0; - $1663 = (($yygotominor) + 4|0); - HEAP32[$1663>>2] = $1662; - $1664 = HEAP32[$yymsp>>2]|0; - $1665 = (($1664) + 4|0); - $1666 = (($1665) + 4|0); - $1667 = HEAP32[$1666>>2]|0; - $1668 = HEAP32[$yymsp>>2]|0; - $1669 = (($1668) + 4|0); - $1670 = HEAP32[$1669>>2]|0; - $1671 = (($1670) + ($1667)|0); - $1672 = (($yygotominor) + 8|0); - HEAP32[$1672>>2] = $1671; - break; - } - case 226: { - $1673 = HEAP32[$pParse>>2]|0; - $1674 = HEAP32[$1673>>2]|0; - $1675 = HEAP32[$yymsp>>2]|0; - $1676 = (($1675) + -16|0); - $1677 = (($1676) + 4|0); - $1678 = HEAP32[$yymsp>>2]|0; - $1679 = (($1678) + 4|0); - $1680 = (_sqlite3SrcListAppend($1674,0,$1677,$1679)|0); - HEAP32[$pSrc>>2] = $1680; - $1681 = HEAP32[$pParse>>2]|0; - $1682 = HEAP32[$yymsp>>2]|0; - $1683 = (($1682) + -48|0); - $1684 = (($1683) + 4|0); - $1685 = HEAP32[$1684>>2]|0; - $1686 = (_sqlite3PExpr($1681,75,$1685,0,0)|0); - HEAP32[$yygotominor>>2] = $1686; - $1687 = HEAP32[$yygotominor>>2]|0; - $1688 = ($1687|0)!=(0|0); - $1689 = HEAP32[$pParse>>2]|0; - if ($1688) { - $1690 = HEAP32[$pSrc>>2]|0; - $1691 = (_sqlite3SelectNew($1689,0,$1690,0,0,0,0,0,0,0)|0); - $1692 = HEAP32[$yygotominor>>2]|0; - $1693 = (($1692) + 20|0); - HEAP32[$1693>>2] = $1691; - $1694 = HEAP32[$yygotominor>>2]|0; - $1695 = (($1694) + 4|0); - $1696 = HEAP32[$1695>>2]|0; - $1697 = $1696 | 2048; - HEAP32[$1695>>2] = $1697; - $1698 = HEAP32[$pParse>>2]|0; - $1699 = HEAP32[$yygotominor>>2]|0; - _sqlite3ExprSetHeight($1698,$1699); - } else { - $1700 = HEAP32[$1689>>2]|0; - $1701 = HEAP32[$pSrc>>2]|0; - _sqlite3SrcListDelete($1700,$1701); - } - $1702 = HEAP32[$yymsp>>2]|0; - $1703 = (($1702) + -32|0); - $1704 = (($1703) + 4|0); - $1705 = HEAP32[$1704>>2]|0; - $1706 = ($1705|0)!=(0); - if ($1706) { - $1707 = HEAP32[$pParse>>2]|0; - $1708 = HEAP32[$yygotominor>>2]|0; - $1709 = (_sqlite3PExpr($1707,19,$1708,0,0)|0); - HEAP32[$yygotominor>>2] = $1709; - } - $1710 = HEAP32[$yymsp>>2]|0; - $1711 = (($1710) + -48|0); - $1712 = (($1711) + 4|0); - $1713 = (($1712) + 4|0); - $1714 = HEAP32[$1713>>2]|0; - $1715 = (($yygotominor) + 4|0); - HEAP32[$1715>>2] = $1714; - $1716 = HEAP32[$yymsp>>2]|0; - $1717 = (($1716) + 4|0); - $1718 = HEAP32[$1717>>2]|0; - $1719 = ($1718|0)!=(0|0); - $1720 = HEAP32[$yymsp>>2]|0; - if ($1719) { - $1721 = (($1720) + 4|0); - $1722 = (($1721) + 4|0); - $1723 = HEAP32[$1722>>2]|0; - $1724 = HEAP32[$yymsp>>2]|0; - $1725 = (($1724) + 4|0); - $1726 = HEAP32[$1725>>2]|0; - $1727 = (($1726) + ($1723)|0); - $1738 = $1727; - } else { - $1728 = (($1720) + -16|0); - $1729 = (($1728) + 4|0); - $1730 = (($1729) + 4|0); - $1731 = HEAP32[$1730>>2]|0; - $1732 = HEAP32[$yymsp>>2]|0; - $1733 = (($1732) + -16|0); - $1734 = (($1733) + 4|0); - $1735 = HEAP32[$1734>>2]|0; - $1736 = (($1735) + ($1731)|0); - $1738 = $1736; - } - $1737 = (($yygotominor) + 8|0); - HEAP32[$1737>>2] = $1738; - break; - } - case 227: { - $1739 = HEAP32[$pParse>>2]|0; - $1740 = (_sqlite3PExpr($1739,20,0,0,0)|0); - HEAP32[$yygotominor>>2] = $1740; - HEAP32[$p8>>2] = $1740; - $1741 = HEAP32[$p8>>2]|0; - $1742 = ($1741|0)!=(0|0); - if ($1742) { - $1743 = HEAP32[$yymsp>>2]|0; - $1744 = (($1743) + -16|0); - $1745 = (($1744) + 4|0); - $1746 = HEAP32[$1745>>2]|0; - $1747 = HEAP32[$p8>>2]|0; - $1748 = (($1747) + 20|0); - HEAP32[$1748>>2] = $1746; - $1749 = HEAP32[$p8>>2]|0; - $1750 = (($1749) + 4|0); - $1751 = HEAP32[$1750>>2]|0; - $1752 = $1751 | 2048; - HEAP32[$1750>>2] = $1752; - $1753 = HEAP32[$pParse>>2]|0; - $1754 = HEAP32[$p8>>2]|0; - _sqlite3ExprSetHeight($1753,$1754); - } else { - $1755 = HEAP32[$pParse>>2]|0; - $1756 = HEAP32[$1755>>2]|0; - $1757 = HEAP32[$yymsp>>2]|0; - $1758 = (($1757) + -16|0); - $1759 = (($1758) + 4|0); - $1760 = HEAP32[$1759>>2]|0; - _sqlite3SelectDelete($1756,$1760); - } - $1761 = HEAP32[$yymsp>>2]|0; - $1762 = (($1761) + -48|0); - $1763 = (($1762) + 4|0); - $1764 = HEAP32[$1763>>2]|0; - $1765 = (($yygotominor) + 4|0); - HEAP32[$1765>>2] = $1764; - $1766 = HEAP32[$yymsp>>2]|0; - $1767 = (($1766) + 4|0); - $1768 = (($1767) + 4|0); - $1769 = HEAP32[$1768>>2]|0; - $1770 = HEAP32[$yymsp>>2]|0; - $1771 = (($1770) + 4|0); - $1772 = HEAP32[$1771>>2]|0; - $1773 = (($1772) + ($1769)|0); - $1774 = (($yygotominor) + 8|0); - HEAP32[$1774>>2] = $1773; - break; - } - case 228: { - $1775 = HEAP32[$pParse>>2]|0; - $1776 = HEAP32[$yymsp>>2]|0; - $1777 = (($1776) + -48|0); - $1778 = (($1777) + 4|0); - $1779 = HEAP32[$1778>>2]|0; - $1780 = (_sqlite3PExpr($1775,136,$1779,0,0)|0); - HEAP32[$yygotominor>>2] = $1780; - $1781 = HEAP32[$yygotominor>>2]|0; - $1782 = ($1781|0)!=(0|0); - if ($1782) { - $1783 = HEAP32[$yymsp>>2]|0; - $1784 = (($1783) + -16|0); - $1785 = (($1784) + 4|0); - $1786 = HEAP32[$1785>>2]|0; - $1787 = ($1786|0)!=(0|0); - if ($1787) { - $1788 = HEAP32[$pParse>>2]|0; - $1789 = HEAP32[$yymsp>>2]|0; - $1790 = (($1789) + -32|0); - $1791 = (($1790) + 4|0); - $1792 = HEAP32[$1791>>2]|0; - $1793 = HEAP32[$yymsp>>2]|0; - $1794 = (($1793) + -16|0); - $1795 = (($1794) + 4|0); - $1796 = HEAP32[$1795>>2]|0; - $1797 = (_sqlite3ExprListAppend($1788,$1792,$1796)|0); - $1804 = $1797; - } else { - $1798 = HEAP32[$yymsp>>2]|0; - $1799 = (($1798) + -32|0); - $1800 = (($1799) + 4|0); - $1801 = HEAP32[$1800>>2]|0; - $1804 = $1801; - } - $1802 = HEAP32[$yygotominor>>2]|0; - $1803 = (($1802) + 20|0); - HEAP32[$1803>>2] = $1804; - $1805 = HEAP32[$pParse>>2]|0; - $1806 = HEAP32[$yygotominor>>2]|0; - _sqlite3ExprSetHeight($1805,$1806); - } else { - $1807 = HEAP32[$pParse>>2]|0; - $1808 = HEAP32[$1807>>2]|0; - $1809 = HEAP32[$yymsp>>2]|0; - $1810 = (($1809) + -32|0); - $1811 = (($1810) + 4|0); - $1812 = HEAP32[$1811>>2]|0; - _sqlite3ExprListDelete($1808,$1812); - $1813 = HEAP32[$pParse>>2]|0; - $1814 = HEAP32[$1813>>2]|0; - $1815 = HEAP32[$yymsp>>2]|0; - $1816 = (($1815) + -16|0); - $1817 = (($1816) + 4|0); - $1818 = HEAP32[$1817>>2]|0; - _sqlite3ExprDelete($1814,$1818); - } - $1819 = HEAP32[$yymsp>>2]|0; - $1820 = (($1819) + -64|0); - $1821 = (($1820) + 4|0); - $1822 = HEAP32[$1821>>2]|0; - $1823 = (($yygotominor) + 4|0); - HEAP32[$1823>>2] = $1822; - $1824 = HEAP32[$yymsp>>2]|0; - $1825 = (($1824) + 4|0); - $1826 = (($1825) + 4|0); - $1827 = HEAP32[$1826>>2]|0; - $1828 = HEAP32[$yymsp>>2]|0; - $1829 = (($1828) + 4|0); - $1830 = HEAP32[$1829>>2]|0; - $1831 = (($1830) + ($1827)|0); - $1832 = (($yygotominor) + 8|0); - HEAP32[$1832>>2] = $1831; - break; - } - case 238: { - $1870 = HEAP32[$pParse>>2]|0; - $1871 = HEAP32[$yymsp>>2]|0; - $1872 = (($1871) + 4|0); - $1873 = HEAP32[$1872>>2]|0; - $1874 = (_sqlite3ExprListAppend($1870,0,$1873)|0); - HEAP32[$yygotominor>>2] = $1874; - break; - } - case 229: { - $1833 = HEAP32[$pParse>>2]|0; - $1834 = HEAP32[$yymsp>>2]|0; - $1835 = (($1834) + -64|0); - $1836 = (($1835) + 4|0); - $1837 = HEAP32[$1836>>2]|0; - $1838 = HEAP32[$yymsp>>2]|0; - $1839 = (($1838) + -32|0); - $1840 = (($1839) + 4|0); - $1841 = HEAP32[$1840>>2]|0; - $1842 = (_sqlite3ExprListAppend($1833,$1837,$1841)|0); - HEAP32[$yygotominor>>2] = $1842; - $1843 = HEAP32[$pParse>>2]|0; - $1844 = HEAP32[$yygotominor>>2]|0; - $1845 = HEAP32[$yymsp>>2]|0; - $1846 = (($1845) + 4|0); - $1847 = HEAP32[$1846>>2]|0; - $1848 = (_sqlite3ExprListAppend($1843,$1844,$1847)|0); - HEAP32[$yygotominor>>2] = $1848; - break; - } - case 230: { - $1849 = HEAP32[$pParse>>2]|0; - $1850 = HEAP32[$yymsp>>2]|0; - $1851 = (($1850) + -32|0); - $1852 = (($1851) + 4|0); - $1853 = HEAP32[$1852>>2]|0; - $1854 = (_sqlite3ExprListAppend($1849,0,$1853)|0); - HEAP32[$yygotominor>>2] = $1854; - $1855 = HEAP32[$pParse>>2]|0; - $1856 = HEAP32[$yygotominor>>2]|0; - $1857 = HEAP32[$yymsp>>2]|0; - $1858 = (($1857) + 4|0); - $1859 = HEAP32[$1858>>2]|0; - $1860 = (_sqlite3ExprListAppend($1855,$1856,$1859)|0); - HEAP32[$yygotominor>>2] = $1860; - break; - } - case 237: { - $1861 = HEAP32[$pParse>>2]|0; - $1862 = HEAP32[$yymsp>>2]|0; - $1863 = (($1862) + -32|0); - $1864 = (($1863) + 4|0); - $1865 = HEAP32[$1864>>2]|0; - $1866 = HEAP32[$yymsp>>2]|0; - $1867 = (($1866) + 4|0); - $1868 = HEAP32[$1867>>2]|0; - $1869 = (_sqlite3ExprListAppend($1861,$1865,$1868)|0); - HEAP32[$yygotominor>>2] = $1869; - break; - } - case 248: { - $1969 = HEAP32[$pParse>>2]|0; - $1970 = HEAP32[$yymsp>>2]|0; - $1971 = (($1970) + 4|0); - $1972 = HEAP32[$1971>>2]|0; - $1973 = HEAP32[$yymsp>>2]|0; - $1974 = (($1973) + -16|0); - $1975 = (($1974) + 4|0); - $1976 = HEAP32[$1975>>2]|0; - _sqlite3DropIndex($1969,$1972,$1976); - break; - } - case 250: case 249: { - $1977 = HEAP32[$pParse>>2]|0; - _sqlite3Vacuum($1977); - break; - } - case 251: { - $1978 = HEAP32[$pParse>>2]|0; - $1979 = HEAP32[$yymsp>>2]|0; - $1980 = (($1979) + -16|0); - $1981 = (($1980) + 4|0); - $1982 = HEAP32[$yymsp>>2]|0; - $1983 = (($1982) + 4|0); - _sqlite3Pragma($1978,$1981,$1983,0,0); - break; - } - case 252: { - $1984 = HEAP32[$pParse>>2]|0; - $1985 = HEAP32[$yymsp>>2]|0; - $1986 = (($1985) + -48|0); - $1987 = (($1986) + 4|0); - $1988 = HEAP32[$yymsp>>2]|0; - $1989 = (($1988) + -32|0); - $1990 = (($1989) + 4|0); - $1991 = HEAP32[$yymsp>>2]|0; - $1992 = (($1991) + 4|0); - _sqlite3Pragma($1984,$1987,$1990,$1992,0); - break; - } - case 291: case 240: { - HEAP32[$yygotominor>>2] = 2; - break; - } - case 241: { - HEAP32[$yygotominor>>2] = 0; - break; - } - case 239: { - $1875 = HEAP32[$pParse>>2]|0; - $1876 = HEAP32[$yymsp>>2]|0; - $1877 = (($1876) + -112|0); - $1878 = (($1877) + 4|0); - $1879 = HEAP32[$yymsp>>2]|0; - $1880 = (($1879) + -96|0); - $1881 = (($1880) + 4|0); - $1882 = HEAP32[$pParse>>2]|0; - $1883 = HEAP32[$1882>>2]|0; - $1884 = HEAP32[$yymsp>>2]|0; - $1885 = (($1884) + -64|0); - $1886 = (($1885) + 4|0); - $1887 = (_sqlite3SrcListAppend($1883,0,$1886,0)|0); - $1888 = HEAP32[$yymsp>>2]|0; - $1889 = (($1888) + -32|0); - $1890 = (($1889) + 4|0); - $1891 = HEAP32[$1890>>2]|0; - $1892 = HEAP32[$yymsp>>2]|0; - $1893 = (($1892) + -160|0); - $1894 = (($1893) + 4|0); - $1895 = HEAP32[$1894>>2]|0; - $1896 = HEAP32[$yymsp>>2]|0; - $1897 = (($1896) + -176|0); - $1898 = (($1897) + 4|0); - $1899 = HEAP32[$yymsp>>2]|0; - $1900 = (($1899) + 4|0); - $1901 = HEAP32[$1900>>2]|0; - $1902 = HEAP32[$yymsp>>2]|0; - $1903 = (($1902) + -128|0); - $1904 = (($1903) + 4|0); - $1905 = HEAP32[$1904>>2]|0; - (_sqlite3CreateIndex($1875,$1878,$1881,$1887,$1891,$1895,$1898,$1901,0,$1905)|0); - break; - } - case 244: { - $1906 = HEAP32[$pParse>>2]|0; - $1907 = HEAP32[$yymsp>>2]|0; - $1908 = (($1907) + -16|0); - $1909 = (($1908) + 4|0); - $1910 = (_sqlite3ExprAddCollateToken($1906,0,$1909)|0); - HEAP32[$p9>>2] = $1910; - $1911 = HEAP32[$pParse>>2]|0; - $1912 = HEAP32[$yymsp>>2]|0; - $1913 = (($1912) + -64|0); - $1914 = (($1913) + 4|0); - $1915 = HEAP32[$1914>>2]|0; - $1916 = HEAP32[$p9>>2]|0; - $1917 = (_sqlite3ExprListAppend($1911,$1915,$1916)|0); - HEAP32[$yygotominor>>2] = $1917; - $1918 = HEAP32[$pParse>>2]|0; - $1919 = HEAP32[$yygotominor>>2]|0; - $1920 = HEAP32[$yymsp>>2]|0; - $1921 = (($1920) + -32|0); - $1922 = (($1921) + 4|0); - _sqlite3ExprListSetName($1918,$1919,$1922,1); - $1923 = HEAP32[$pParse>>2]|0; - $1924 = HEAP32[$yygotominor>>2]|0; - _sqlite3ExprListCheckLength($1923,$1924,10072); - $1925 = HEAP32[$yygotominor>>2]|0; - $1926 = ($1925|0)!=(0|0); - if ($1926) { - $1927 = HEAP32[$yymsp>>2]|0; - $1928 = (($1927) + 4|0); - $1929 = HEAP32[$1928>>2]|0; - $1930 = $1929&255; - $1931 = HEAP32[$yygotominor>>2]|0; - $1932 = HEAP32[$1931>>2]|0; - $1933 = (($1932) - 1)|0; - $1934 = HEAP32[$yygotominor>>2]|0; - $1935 = (($1934) + 4|0); - $1936 = HEAP32[$1935>>2]|0; - $1937 = (($1936) + (($1933*20)|0)|0); - $1938 = (($1937) + 12|0); - HEAP8[$1938>>0] = $1930; - } - break; - } - case 245: { - $1939 = HEAP32[$pParse>>2]|0; - $1940 = HEAP32[$yymsp>>2]|0; - $1941 = (($1940) + -16|0); - $1942 = (($1941) + 4|0); - $1943 = (_sqlite3ExprAddCollateToken($1939,0,$1942)|0); - HEAP32[$p10>>2] = $1943; - $1944 = HEAP32[$pParse>>2]|0; - $1945 = HEAP32[$p10>>2]|0; - $1946 = (_sqlite3ExprListAppend($1944,0,$1945)|0); - HEAP32[$yygotominor>>2] = $1946; - $1947 = HEAP32[$pParse>>2]|0; - $1948 = HEAP32[$yygotominor>>2]|0; - $1949 = HEAP32[$yymsp>>2]|0; - $1950 = (($1949) + -32|0); - $1951 = (($1950) + 4|0); - _sqlite3ExprListSetName($1947,$1948,$1951,1); - $1952 = HEAP32[$pParse>>2]|0; - $1953 = HEAP32[$yygotominor>>2]|0; - _sqlite3ExprListCheckLength($1952,$1953,10072); - $1954 = HEAP32[$yygotominor>>2]|0; - $1955 = ($1954|0)!=(0|0); - if ($1955) { - $1956 = HEAP32[$yymsp>>2]|0; - $1957 = (($1956) + 4|0); - $1958 = HEAP32[$1957>>2]|0; - $1959 = $1958&255; - $1960 = HEAP32[$yygotominor>>2]|0; - $1961 = HEAP32[$1960>>2]|0; - $1962 = (($1961) - 1)|0; - $1963 = HEAP32[$yygotominor>>2]|0; - $1964 = (($1963) + 4|0); - $1965 = HEAP32[$1964>>2]|0; - $1966 = (($1965) + (($1962*20)|0)|0); - $1967 = (($1966) + 12|0); - HEAP8[$1967>>0] = $1959; - } - break; - } - case 246: { - HEAP32[$yygotominor>>2] = 0; - $1968 = (($yygotominor) + 4|0); - HEAP32[$1968>>2] = 0; - break; - } - case 297: case 276: { - $2102 = HEAP32[$yymsp>>2]|0; - $2103 = (($2102) + 4|0); - $2104 = HEAP32[$2103>>2]|0; - HEAP32[$yygotominor>>2] = $2104; - break; - } - case 277: { - $2105 = HEAP32[$yymsp>>2]|0; - $2106 = (($2105) + -16|0); - $2107 = (($2106) + 4|0); - $2108 = HEAP32[$2107>>2]|0; - $2109 = HEAP32[$yymsp>>2]|0; - $2110 = (($2109) + -32|0); - $2111 = (($2110) + 4|0); - $2112 = HEAP32[$2111>>2]|0; - $2113 = (($2112) + 36|0); - $2114 = HEAP32[$2113>>2]|0; - $2115 = (($2114) + 32|0); - HEAP32[$2115>>2] = $2108; - $2116 = HEAP32[$yymsp>>2]|0; - $2117 = (($2116) + -16|0); - $2118 = (($2117) + 4|0); - $2119 = HEAP32[$2118>>2]|0; - $2120 = HEAP32[$yymsp>>2]|0; - $2121 = (($2120) + -32|0); - $2122 = (($2121) + 4|0); - $2123 = HEAP32[$2122>>2]|0; - $2124 = (($2123) + 36|0); - HEAP32[$2124>>2] = $2119; - $2125 = HEAP32[$yymsp>>2]|0; - $2126 = (($2125) + -32|0); - $2127 = (($2126) + 4|0); - $2128 = HEAP32[$2127>>2]|0; - HEAP32[$yygotominor>>2] = $2128; - break; - } - case 253: { - $1993 = HEAP32[$pParse>>2]|0; - $1994 = HEAP32[$yymsp>>2]|0; - $1995 = (($1994) + -64|0); - $1996 = (($1995) + 4|0); - $1997 = HEAP32[$yymsp>>2]|0; - $1998 = (($1997) + -48|0); - $1999 = (($1998) + 4|0); - $2000 = HEAP32[$yymsp>>2]|0; - $2001 = (($2000) + -16|0); - $2002 = (($2001) + 4|0); - _sqlite3Pragma($1993,$1996,$1999,$2002,0); - break; - } - case 254: { - $2003 = HEAP32[$pParse>>2]|0; - $2004 = HEAP32[$yymsp>>2]|0; - $2005 = (($2004) + -48|0); - $2006 = (($2005) + 4|0); - $2007 = HEAP32[$yymsp>>2]|0; - $2008 = (($2007) + -32|0); - $2009 = (($2008) + 4|0); - $2010 = HEAP32[$yymsp>>2]|0; - $2011 = (($2010) + 4|0); - _sqlite3Pragma($2003,$2006,$2009,$2011,1); - break; - } - case 255: { - $2012 = HEAP32[$pParse>>2]|0; - $2013 = HEAP32[$yymsp>>2]|0; - $2014 = (($2013) + -64|0); - $2015 = (($2014) + 4|0); - $2016 = HEAP32[$yymsp>>2]|0; - $2017 = (($2016) + -48|0); - $2018 = (($2017) + 4|0); - $2019 = HEAP32[$yymsp>>2]|0; - $2020 = (($2019) + -16|0); - $2021 = (($2020) + 4|0); - _sqlite3Pragma($2012,$2015,$2018,$2021,1); - break; - } - case 264: { - $2022 = HEAP32[$yymsp>>2]|0; - $2023 = (($2022) + -48|0); - $2024 = (($2023) + 4|0); - $2025 = HEAP32[$2024>>2]|0; - HEAP32[$all>>2] = $2025; - $2026 = HEAP32[$yymsp>>2]|0; - $2027 = (($2026) + 4|0); - $2028 = HEAP32[$2027>>2]|0; - $2029 = HEAP32[$yymsp>>2]|0; - $2030 = (($2029) + -48|0); - $2031 = (($2030) + 4|0); - $2032 = HEAP32[$2031>>2]|0; - $2033 = $2028; - $2034 = $2032; - $2035 = (($2033) - ($2034))|0; - $2036 = HEAP32[$yymsp>>2]|0; - $2037 = (($2036) + 4|0); - $2038 = (($2037) + 4|0); - $2039 = HEAP32[$2038>>2]|0; - $2040 = (($2035) + ($2039))|0; - $2041 = (($all) + 4|0); - HEAP32[$2041>>2] = $2040; - $2042 = HEAP32[$pParse>>2]|0; - $2043 = HEAP32[$yymsp>>2]|0; - $2044 = (($2043) + -16|0); - $2045 = (($2044) + 4|0); - $2046 = HEAP32[$2045>>2]|0; - _sqlite3FinishTrigger($2042,$2046,$all); - break; - } - case 265: { - $2047 = HEAP32[$pParse>>2]|0; - $2048 = HEAP32[$yymsp>>2]|0; - $2049 = (($2048) + -112|0); - $2050 = (($2049) + 4|0); - $2051 = HEAP32[$yymsp>>2]|0; - $2052 = (($2051) + -96|0); - $2053 = (($2052) + 4|0); - $2054 = HEAP32[$yymsp>>2]|0; - $2055 = (($2054) + -80|0); - $2056 = (($2055) + 4|0); - $2057 = HEAP32[$2056>>2]|0; - $2058 = HEAP32[$yymsp>>2]|0; - $2059 = (($2058) + -64|0); - $2060 = (($2059) + 4|0); - $2061 = HEAP32[$2060>>2]|0; - $2062 = HEAP32[$yymsp>>2]|0; - $2063 = (($2062) + -64|0); - $2064 = (($2063) + 4|0); - $2065 = (($2064) + 4|0); - $2066 = HEAP32[$2065>>2]|0; - $2067 = HEAP32[$yymsp>>2]|0; - $2068 = (($2067) + -32|0); - $2069 = (($2068) + 4|0); - $2070 = HEAP32[$2069>>2]|0; - $2071 = HEAP32[$yymsp>>2]|0; - $2072 = (($2071) + 4|0); - $2073 = HEAP32[$2072>>2]|0; - $2074 = HEAP32[$yymsp>>2]|0; - $2075 = (($2074) + -160|0); - $2076 = (($2075) + 4|0); - $2077 = HEAP32[$2076>>2]|0; - $2078 = HEAP32[$yymsp>>2]|0; - $2079 = (($2078) + -128|0); - $2080 = (($2079) + 4|0); - $2081 = HEAP32[$2080>>2]|0; - _sqlite3BeginTrigger($2047,$2050,$2053,$2057,$2061,$2066,$2070,$2073,$2077,$2081); - $2082 = HEAP32[$yymsp>>2]|0; - $2083 = (($2082) + -96|0); - $2084 = (($2083) + 4|0); - $2085 = (($2084) + 4|0); - $2086 = HEAP32[$2085>>2]|0; - $2087 = ($2086|0)==(0); - $2088 = HEAP32[$yymsp>>2]|0; - if ($2087) { - $2089 = (($2088) + -112|0); - $2090 = (($2089) + 4|0); - ;HEAP32[$yygotominor+0>>2]=HEAP32[$2090+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$2090+4>>2]|0; - break L1; - } else { - $2091 = (($2088) + -96|0); - $2092 = (($2091) + 4|0); - ;HEAP32[$yygotominor+0>>2]=HEAP32[$2092+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$2092+4>>2]|0; - break L1; - } - break; - } - case 269: case 266: { - HEAP32[$yygotominor>>2] = 35; - break; - } - case 267: { - HEAP32[$yygotominor>>2] = 31; - break; - } - case 268: { - HEAP32[$yygotominor>>2] = 49; - break; - } - case 271: case 270: { - $2093 = HEAP32[$yymsp>>2]|0; - $2094 = (($2093) + 2|0); - $2095 = HEAP8[$2094>>0]|0; - $2096 = $2095&255; - HEAP32[$yygotominor>>2] = $2096; - $2097 = (($yygotominor) + 4|0); - HEAP32[$2097>>2] = 0; - break; - } - case 296: case 275: { - HEAP32[$yygotominor>>2] = 0; - break; - } - case 272: { - HEAP32[$yygotominor>>2] = 110; - $2098 = HEAP32[$yymsp>>2]|0; - $2099 = (($2098) + 4|0); - $2100 = HEAP32[$2099>>2]|0; - $2101 = (($yygotominor) + 4|0); - HEAP32[$2101>>2] = $2100; - break; - } - case 283: { - $2146 = HEAP32[$pParse>>2]|0; - _sqlite3ErrorMsg($2146,10264,$vararg_buffer14); - break; - } - case 284: { - $2147 = HEAP32[$pParse>>2]|0; - $2148 = HEAP32[$2147>>2]|0; - $2149 = HEAP32[$yymsp>>2]|0; - $2150 = (($2149) + -64|0); - $2151 = (($2150) + 4|0); - $2152 = HEAP32[$yymsp>>2]|0; - $2153 = (($2152) + -16|0); - $2154 = (($2153) + 4|0); - $2155 = HEAP32[$2154>>2]|0; - $2156 = HEAP32[$yymsp>>2]|0; - $2157 = (($2156) + 4|0); - $2158 = HEAP32[$2157>>2]|0; - $2159 = HEAP32[$yymsp>>2]|0; - $2160 = (($2159) + -80|0); - $2161 = (($2160) + 4|0); - $2162 = HEAP8[$2161>>0]|0; - $2163 = (_sqlite3TriggerUpdateStep($2148,$2151,$2155,$2158,$2162)|0); - HEAP32[$yygotominor>>2] = $2163; - break; - } - case 278: { - $2129 = HEAP32[$yymsp>>2]|0; - $2130 = (($2129) + -16|0); - $2131 = (($2130) + 4|0); - $2132 = HEAP32[$2131>>2]|0; - $2133 = HEAP32[$yymsp>>2]|0; - $2134 = (($2133) + -16|0); - $2135 = (($2134) + 4|0); - $2136 = HEAP32[$2135>>2]|0; - $2137 = (($2136) + 36|0); - HEAP32[$2137>>2] = $2132; - $2138 = HEAP32[$yymsp>>2]|0; - $2139 = (($2138) + -16|0); - $2140 = (($2139) + 4|0); - $2141 = HEAP32[$2140>>2]|0; - HEAP32[$yygotominor>>2] = $2141; - break; - } - case 282: { - $2145 = HEAP32[$pParse>>2]|0; - _sqlite3ErrorMsg($2145,10176,$vararg_buffer14); - break; - } - case 280: { - $2142 = HEAP32[$yymsp>>2]|0; - $2143 = (($2142) + 4|0); - ;HEAP32[$yygotominor+0>>2]=HEAP32[$2143+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$2143+4>>2]|0; - $2144 = HEAP32[$pParse>>2]|0; - _sqlite3ErrorMsg($2144,10080,$vararg_buffer14); - break; - } - case 287: { - $2190 = HEAP32[$pParse>>2]|0; - $2191 = HEAP32[$2190>>2]|0; - $2192 = HEAP32[$yymsp>>2]|0; - $2193 = (($2192) + 4|0); - $2194 = HEAP32[$2193>>2]|0; - $2195 = (_sqlite3TriggerSelectStep($2191,$2194)|0); - HEAP32[$yygotominor>>2] = $2195; - break; - } - case 288: { - $2196 = HEAP32[$pParse>>2]|0; - $2197 = (_sqlite3PExpr($2196,57,0,0,0)|0); - HEAP32[$yygotominor>>2] = $2197; - $2198 = HEAP32[$yygotominor>>2]|0; - $2199 = ($2198|0)!=(0|0); - if ($2199) { - $2200 = HEAP32[$yygotominor>>2]|0; - $2201 = (($2200) + 1|0); - HEAP8[$2201>>0] = 4; - } - $2202 = HEAP32[$yymsp>>2]|0; - $2203 = (($2202) + -48|0); - $2204 = (($2203) + 4|0); - $2205 = HEAP32[$2204>>2]|0; - $2206 = (($yygotominor) + 4|0); - HEAP32[$2206>>2] = $2205; - $2207 = HEAP32[$yymsp>>2]|0; - $2208 = (($2207) + 4|0); - $2209 = (($2208) + 4|0); - $2210 = HEAP32[$2209>>2]|0; - $2211 = HEAP32[$yymsp>>2]|0; - $2212 = (($2211) + 4|0); - $2213 = HEAP32[$2212>>2]|0; - $2214 = (($2213) + ($2210)|0); - $2215 = (($yygotominor) + 8|0); - HEAP32[$2215>>2] = $2214; - break; - } - case 285: { - $2164 = HEAP32[$pParse>>2]|0; - $2165 = HEAP32[$2164>>2]|0; - $2166 = HEAP32[$yymsp>>2]|0; - $2167 = (($2166) + -32|0); - $2168 = (($2167) + 4|0); - $2169 = HEAP32[$yymsp>>2]|0; - $2170 = (($2169) + -16|0); - $2171 = (($2170) + 4|0); - $2172 = HEAP32[$2171>>2]|0; - $2173 = HEAP32[$yymsp>>2]|0; - $2174 = (($2173) + 4|0); - $2175 = HEAP32[$2174>>2]|0; - $2176 = HEAP32[$yymsp>>2]|0; - $2177 = (($2176) + -64|0); - $2178 = (($2177) + 4|0); - $2179 = HEAP8[$2178>>0]|0; - $2180 = (_sqlite3TriggerInsertStep($2165,$2168,$2172,$2175,$2179)|0); - HEAP32[$yygotominor>>2] = $2180; - break; - } - case 286: { - $2181 = HEAP32[$pParse>>2]|0; - $2182 = HEAP32[$2181>>2]|0; - $2183 = HEAP32[$yymsp>>2]|0; - $2184 = (($2183) + -32|0); - $2185 = (($2184) + 4|0); - $2186 = HEAP32[$yymsp>>2]|0; - $2187 = (($2186) + 4|0); - $2188 = HEAP32[$2187>>2]|0; - $2189 = (_sqlite3TriggerDeleteStep($2182,$2185,$2188)|0); - HEAP32[$yygotominor>>2] = $2189; - break; - } - case 293: { - $2244 = HEAP32[$pParse>>2]|0; - $2245 = HEAP32[$yymsp>>2]|0; - $2246 = (($2245) + 4|0); - $2247 = HEAP32[$2246>>2]|0; - $2248 = HEAP32[$yymsp>>2]|0; - $2249 = (($2248) + -16|0); - $2250 = (($2249) + 4|0); - $2251 = HEAP32[$2250>>2]|0; - _sqlite3DropTrigger($2244,$2247,$2251); - break; - } - case 294: { - $2252 = HEAP32[$pParse>>2]|0; - $2253 = HEAP32[$yymsp>>2]|0; - $2254 = (($2253) + -48|0); - $2255 = (($2254) + 4|0); - $2256 = HEAP32[$2255>>2]|0; - $2257 = HEAP32[$yymsp>>2]|0; - $2258 = (($2257) + -16|0); - $2259 = (($2258) + 4|0); - $2260 = HEAP32[$2259>>2]|0; - $2261 = HEAP32[$yymsp>>2]|0; - $2262 = (($2261) + 4|0); - $2263 = HEAP32[$2262>>2]|0; - _sqlite3Attach($2252,$2256,$2260,$2263); - break; - } - case 295: { - $2264 = HEAP32[$pParse>>2]|0; - $2265 = HEAP32[$yymsp>>2]|0; - $2266 = (($2265) + 4|0); - $2267 = HEAP32[$2266>>2]|0; - _sqlite3Detach($2264,$2267); - break; - } - case 300: { - $2268 = HEAP32[$pParse>>2]|0; - _sqlite3Reindex($2268,0,0); - break; - } - case 289: { - $2216 = HEAP32[$pParse>>2]|0; - $2217 = HEAP32[$yymsp>>2]|0; - $2218 = (($2217) + -16|0); - $2219 = (($2218) + 4|0); - $2220 = (_sqlite3PExpr($2216,57,0,0,$2219)|0); - HEAP32[$yygotominor>>2] = $2220; - $2221 = HEAP32[$yygotominor>>2]|0; - $2222 = ($2221|0)!=(0|0); - if ($2222) { - $2223 = HEAP32[$yymsp>>2]|0; - $2224 = (($2223) + -48|0); - $2225 = (($2224) + 4|0); - $2226 = HEAP32[$2225>>2]|0; - $2227 = $2226&255; - $2228 = HEAP32[$yygotominor>>2]|0; - $2229 = (($2228) + 1|0); - HEAP8[$2229>>0] = $2227; - } - $2230 = HEAP32[$yymsp>>2]|0; - $2231 = (($2230) + -80|0); - $2232 = (($2231) + 4|0); - $2233 = HEAP32[$2232>>2]|0; - $2234 = (($yygotominor) + 4|0); - HEAP32[$2234>>2] = $2233; - $2235 = HEAP32[$yymsp>>2]|0; - $2236 = (($2235) + 4|0); - $2237 = (($2236) + 4|0); - $2238 = HEAP32[$2237>>2]|0; - $2239 = HEAP32[$yymsp>>2]|0; - $2240 = (($2239) + 4|0); - $2241 = HEAP32[$2240>>2]|0; - $2242 = (($2241) + ($2238)|0); - $2243 = (($yygotominor) + 8|0); - HEAP32[$2243>>2] = $2242; - break; - } - case 290: { - HEAP32[$yygotominor>>2] = 1; - break; - } - case 292: { - HEAP32[$yygotominor>>2] = 3; - break; - } - case 303: { - $2276 = HEAP32[$pParse>>2]|0; - $2277 = HEAP32[$yymsp>>2]|0; - $2278 = (($2277) + -16|0); - $2279 = (($2278) + 4|0); - $2280 = HEAP32[$yymsp>>2]|0; - $2281 = (($2280) + 4|0); - _sqlite3Analyze($2276,$2279,$2281); - break; - } - case 304: { - $2282 = HEAP32[$pParse>>2]|0; - $2283 = HEAP32[$yymsp>>2]|0; - $2284 = (($2283) + -48|0); - $2285 = (($2284) + 4|0); - $2286 = HEAP32[$2285>>2]|0; - $2287 = HEAP32[$yymsp>>2]|0; - $2288 = (($2287) + 4|0); - _sqlite3AlterRenameTable($2282,$2286,$2288); - break; - } - case 305: { - $2289 = HEAP32[$pParse>>2]|0; - $2290 = HEAP32[$yymsp>>2]|0; - $2291 = (($2290) + 4|0); - _sqlite3AlterFinishAddColumn($2289,$2291); - break; - } - case 306: { - $2292 = HEAP32[$pParse>>2]|0; - $2293 = HEAP32[$2292>>2]|0; - $2294 = (($2293) + 240|0); - $2295 = (($2294) + 2|0); - HEAP8[$2295>>0] = 0; - $2296 = HEAP32[$pParse>>2]|0; - $2297 = HEAP32[$yymsp>>2]|0; - $2298 = (($2297) + 4|0); - $2299 = HEAP32[$2298>>2]|0; - _sqlite3AlterBeginAddColumn($2296,$2299); - break; - } - case 301: { - $2269 = HEAP32[$pParse>>2]|0; - $2270 = HEAP32[$yymsp>>2]|0; - $2271 = (($2270) + -16|0); - $2272 = (($2271) + 4|0); - $2273 = HEAP32[$yymsp>>2]|0; - $2274 = (($2273) + 4|0); - _sqlite3Reindex($2269,$2272,$2274); - break; - } - case 302: { - $2275 = HEAP32[$pParse>>2]|0; - _sqlite3Analyze($2275,0,0); - break; - } - case 310: { - $2301 = HEAP32[$pParse>>2]|0; - $2302 = HEAP32[$yymsp>>2]|0; - $2303 = (($2302) + 4|0); - _sqlite3VtabFinishParse($2301,$2303); - break; - } - case 311: { - $2304 = HEAP32[$pParse>>2]|0; - $2305 = HEAP32[$yymsp>>2]|0; - $2306 = (($2305) + -48|0); - $2307 = (($2306) + 4|0); - $2308 = HEAP32[$yymsp>>2]|0; - $2309 = (($2308) + -32|0); - $2310 = (($2309) + 4|0); - $2311 = HEAP32[$yymsp>>2]|0; - $2312 = (($2311) + 4|0); - $2313 = HEAP32[$yymsp>>2]|0; - $2314 = (($2313) + -64|0); - $2315 = (($2314) + 4|0); - $2316 = HEAP32[$2315>>2]|0; - _sqlite3VtabBeginParse($2304,$2307,$2310,$2312,$2316); - break; - } - case 314: { - $2317 = HEAP32[$pParse>>2]|0; - _sqlite3VtabArgInit($2317); - break; - } - case 318: case 317: case 316: { - $2318 = HEAP32[$pParse>>2]|0; - $2319 = HEAP32[$yymsp>>2]|0; - $2320 = (($2319) + 4|0); - _sqlite3VtabArgExtend($2318,$2320); - break; - } - case 322: { - HEAP32[$yygotominor>>2] = 0; - break; - } - case 309: { - $2300 = HEAP32[$pParse>>2]|0; - _sqlite3VtabFinishParse($2300,0); - break; - } - case 324: case 323: { - $2321 = HEAP32[$yymsp>>2]|0; - $2322 = (($2321) + 4|0); - $2323 = HEAP32[$2322>>2]|0; - HEAP32[$yygotominor>>2] = $2323; - break; - } - case 325: { - $2324 = HEAP32[$pParse>>2]|0; - $2325 = HEAP32[$yymsp>>2]|0; - $2326 = (($2325) + -80|0); - $2327 = (($2326) + 4|0); - $2328 = HEAP32[$yymsp>>2]|0; - $2329 = (($2328) + -64|0); - $2330 = (($2329) + 4|0); - $2331 = HEAP32[$2330>>2]|0; - $2332 = HEAP32[$yymsp>>2]|0; - $2333 = (($2332) + -16|0); - $2334 = (($2333) + 4|0); - $2335 = HEAP32[$2334>>2]|0; - $2336 = (_sqlite3WithAdd($2324,0,$2327,$2331,$2335)|0); - HEAP32[$yygotominor>>2] = $2336; - break; - } - case 326: { - $2337 = HEAP32[$pParse>>2]|0; - $2338 = HEAP32[$yymsp>>2]|0; - $2339 = (($2338) + -112|0); - $2340 = (($2339) + 4|0); - $2341 = HEAP32[$2340>>2]|0; - $2342 = HEAP32[$yymsp>>2]|0; - $2343 = (($2342) + -80|0); - $2344 = (($2343) + 4|0); - $2345 = HEAP32[$yymsp>>2]|0; - $2346 = (($2345) + -64|0); - $2347 = (($2346) + 4|0); - $2348 = HEAP32[$2347>>2]|0; - $2349 = HEAP32[$yymsp>>2]|0; - $2350 = (($2349) + -16|0); - $2351 = (($2350) + 4|0); - $2352 = HEAP32[$2351>>2]|0; - $2353 = (_sqlite3WithAdd($2337,$2341,$2344,$2348,$2352)|0); - HEAP32[$yygotominor>>2] = $2353; - break; - } - default: { - } - } - } while(0); - $2354 = HEAP32[$1>>2]|0; - $2355 = (10352 + ($2354<<1)|0); - $2356 = HEAP8[$2355>>0]|0; - $2357 = $2356&255; - HEAP32[$yygoto>>2] = $2357; - $2358 = HEAP32[$1>>2]|0; - $2359 = (10352 + ($2358<<1)|0); - $2360 = (($2359) + 1|0); - $2361 = HEAP8[$2360>>0]|0; - $2362 = $2361&255; - HEAP32[$yysize>>2] = $2362; - $2363 = HEAP32[$yysize>>2]|0; - $2364 = HEAP32[$0>>2]|0; - $2365 = HEAP32[$2364>>2]|0; - $2366 = (($2365) - ($2363))|0; - HEAP32[$2364>>2] = $2366; - $2367 = HEAP32[$yysize>>2]|0; - $2368 = (0 - ($2367))|0; - $2369 = HEAP32[$yymsp>>2]|0; - $2370 = (($2369) + ($2368<<4)|0); - $2371 = HEAP16[$2370>>1]|0; - $2372 = $2371&65535; - $2373 = HEAP32[$yygoto>>2]|0; - $2374 = $2373&255; - $2375 = (_yy_find_reduce_action($2372,$2374)|0); - HEAP32[$yyact>>2] = $2375; - $2376 = HEAP32[$yyact>>2]|0; - $2377 = ($2376|0)<(642); - if (!($2377)) { - $2399 = HEAP32[$0>>2]|0; - _yy_accept($2399); - STACKTOP = sp;return; - } - $2378 = HEAP32[$yysize>>2]|0; - $2379 = ($2378|0)!=(0); - $2380 = HEAP32[$0>>2]|0; - if ($2379) { - $2381 = HEAP32[$2380>>2]|0; - $2382 = (($2381) + 1)|0; - HEAP32[$2380>>2] = $2382; - $2383 = HEAP32[$yysize>>2]|0; - $2384 = (($2383) - 1)|0; - $2385 = HEAP32[$yymsp>>2]|0; - $2386 = (0 - ($2384))|0; - $2387 = (($2385) + ($2386<<4)|0); - HEAP32[$yymsp>>2] = $2387; - $2388 = HEAP32[$yyact>>2]|0; - $2389 = $2388&65535; - $2390 = HEAP32[$yymsp>>2]|0; - HEAP16[$2390>>1] = $2389; - $2391 = HEAP32[$yygoto>>2]|0; - $2392 = $2391&255; - $2393 = HEAP32[$yymsp>>2]|0; - $2394 = (($2393) + 2|0); - HEAP8[$2394>>0] = $2392; - $2395 = HEAP32[$yymsp>>2]|0; - $2396 = (($2395) + 4|0); - ;HEAP32[$2396+0>>2]=HEAP32[$yygotominor+0>>2]|0;HEAP32[$2396+4>>2]=HEAP32[$yygotominor+4>>2]|0;HEAP32[$2396+8>>2]=HEAP32[$yygotominor+8>>2]|0; - STACKTOP = sp;return; - } else { - $2397 = HEAP32[$yyact>>2]|0; - $2398 = HEAP32[$yygoto>>2]|0; - _yy_shift($2380,$2397,$2398,$yygotominor); - STACKTOP = sp;return; - } -} -function _yy_syntax_error($yypParser,$yymajor,$yyminor) { - $yypParser = $yypParser|0; - $yymajor = $yymajor|0; - $yyminor = $yyminor|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $pParse = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 12|0; - $1 = sp + 8|0; - $pParse = sp + 4|0; - HEAP32[$0>>2] = $yypParser; - HEAP32[$1>>2] = $yymajor; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 8|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pParse>>2] = $4; - $5 = HEAP32[$pParse>>2]|0; - HEAP32[$vararg_buffer>>2] = $yyminor; - _sqlite3ErrorMsg($5,9872,$vararg_buffer); - $6 = HEAP32[$pParse>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 8|0); - HEAP32[$8>>2] = $6; - STACKTOP = sp;return; -} -function _sqlite3BeginParse($pParse,$explainFlag) { - $pParse = $pParse|0; - $explainFlag = $explainFlag|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $explainFlag; - $2 = HEAP32[$1>>2]|0; - $3 = $2&255; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 450|0); - HEAP8[$5>>0] = $3; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 440|0); - HEAP32[$7>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3FinishCoding($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; - var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; - var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; - var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; - var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0, $iDb = 0, $mask = 0, $pEL = 0, $v = 0, $vtab = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $db = sp + 24|0; - $v = sp + 20|0; - $mask = sp + 16|0; - $iDb = sp + 12|0; - $i = sp + 8|0; - $vtab = sp + 4|0; - $pEL = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$db>>2] = $2; - $3 = HEAP32[$db>>2]|0; - $4 = (($3) + 64|0); - $5 = HEAP8[$4>>0]|0; - $6 = ($5<<24>>24)!=(0); - if ($6) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 18|0); - $9 = HEAP8[$8>>0]|0; - $10 = ($9<<24>>24)!=(0); - if ($10) { - STACKTOP = sp;return; - } - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 64|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)!=(0); - if ($14) { - STACKTOP = sp;return; - } - $15 = HEAP32[$0>>2]|0; - $16 = (_sqlite3GetVdbe($15)|0); - HEAP32[$v>>2] = $16; - $17 = HEAP32[$v>>2]|0; - $18 = ($17|0)!=(0|0); - do { - if ($18) { - while(1) { - $19 = HEAP32[$v>>2]|0; - $20 = (_sqlite3VdbeDeletePriorOpcode($19,58)|0); - $21 = ($20|0)!=(0); - if (!($21)) { - break; - } - } - $22 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp0($22,24)|0); - $23 = HEAP32[$db>>2]|0; - $24 = (($23) + 64|0); - $25 = HEAP8[$24>>0]|0; - $26 = $25&255; - $27 = ($26|0)==(0); - if ($27) { - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 332|0); - $30 = HEAP32[$29>>2]|0; - $31 = ($30|0)!=(0); - if (!($31)) { - $32 = HEAP32[$0>>2]|0; - $33 = (($32) + 316|0); - $34 = HEAP32[$33>>2]|0; - $35 = ($34|0)!=(0|0); - if (!($35)) { - break; - } - } - $36 = HEAP32[$v>>2]|0; - _sqlite3VdbeJumpHere($36,0); - HEAP32[$iDb>>2] = 0; - HEAP32[$mask>>2] = 1; - while(1) { - $37 = HEAP32[$iDb>>2]|0; - $38 = HEAP32[$db>>2]|0; - $39 = (($38) + 20|0); - $40 = HEAP32[$39>>2]|0; - $41 = ($37|0)<($40|0); - if (!($41)) { - break; - } - $42 = HEAP32[$mask>>2]|0; - $43 = HEAP32[$0>>2]|0; - $44 = (($43) + 332|0); - $45 = HEAP32[$44>>2]|0; - $46 = $42 & $45; - $47 = ($46|0)==(0); - if (!($47)) { - $48 = HEAP32[$v>>2]|0; - $49 = HEAP32[$iDb>>2]|0; - _sqlite3VdbeUsesBtree($48,$49); - $50 = HEAP32[$v>>2]|0; - $51 = HEAP32[$iDb>>2]|0; - $52 = HEAP32[$mask>>2]|0; - $53 = HEAP32[$0>>2]|0; - $54 = (($53) + 328|0); - $55 = HEAP32[$54>>2]|0; - $56 = $52 & $55; - $57 = ($56|0)!=(0); - $58 = $57&1; - $59 = HEAP32[$iDb>>2]|0; - $60 = HEAP32[$0>>2]|0; - $61 = (($60) + 336|0); - $62 = (($61) + ($59<<2)|0); - $63 = HEAP32[$62>>2]|0; - $64 = HEAP32[$iDb>>2]|0; - $65 = HEAP32[$db>>2]|0; - $66 = (($65) + 16|0); - $67 = HEAP32[$66>>2]|0; - $68 = (($67) + ($64<<4)|0); - $69 = (($68) + 12|0); - $70 = HEAP32[$69>>2]|0; - $71 = (($70) + 4|0); - $72 = HEAP32[$71>>2]|0; - (_sqlite3VdbeAddOp4Int($50,4,$51,$58,$63,$72)|0); - $73 = HEAP32[$db>>2]|0; - $74 = (($73) + 132|0); - $75 = (($74) + 5|0); - $76 = HEAP8[$75>>0]|0; - $77 = $76&255; - $78 = ($77|0)==(0); - if ($78) { - $79 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($79,1); - } - } - $80 = HEAP32[$mask>>2]|0; - $81 = $80 << 1; - HEAP32[$mask>>2] = $81; - $82 = HEAP32[$iDb>>2]|0; - $83 = (($82) + 1)|0; - HEAP32[$iDb>>2] = $83; - } - HEAP32[$i>>2] = 0; - while(1) { - $84 = HEAP32[$i>>2]|0; - $85 = HEAP32[$0>>2]|0; - $86 = (($85) + 452|0); - $87 = HEAP32[$86>>2]|0; - $88 = ($84|0)<($87|0); - if (!($88)) { - break; - } - $89 = HEAP32[$db>>2]|0; - $90 = HEAP32[$i>>2]|0; - $91 = HEAP32[$0>>2]|0; - $92 = (($91) + 520|0); - $93 = HEAP32[$92>>2]|0; - $94 = (($93) + ($90<<2)|0); - $95 = HEAP32[$94>>2]|0; - $96 = (_sqlite3GetVTable($89,$95)|0); - HEAP32[$vtab>>2] = $96; - $97 = HEAP32[$v>>2]|0; - $98 = HEAP32[$vtab>>2]|0; - (_sqlite3VdbeAddOp4($97,141,0,0,0,$98,-10)|0); - $99 = HEAP32[$i>>2]|0; - $100 = (($99) + 1)|0; - HEAP32[$i>>2] = $100; - } - $101 = HEAP32[$0>>2]|0; - $102 = (($101) + 452|0); - HEAP32[$102>>2] = 0; - $103 = HEAP32[$0>>2]|0; - _codeTableLocks($103); - $104 = HEAP32[$0>>2]|0; - _sqlite3AutoincrementBegin($104); - $105 = HEAP32[$0>>2]|0; - $106 = (($105) + 316|0); - $107 = HEAP32[$106>>2]|0; - $108 = ($107|0)!=(0|0); - L30: do { - if ($108) { - $109 = HEAP32[$0>>2]|0; - $110 = (($109) + 316|0); - $111 = HEAP32[$110>>2]|0; - HEAP32[$pEL>>2] = $111; - $112 = HEAP32[$0>>2]|0; - $113 = (($112) + 23|0); - HEAP8[$113>>0] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $114 = HEAP32[$i>>2]|0; - $115 = HEAP32[$pEL>>2]|0; - $116 = HEAP32[$115>>2]|0; - $117 = ($114|0)<($116|0); - if (!($117)) { - break L30; - } - $118 = HEAP32[$0>>2]|0; - $119 = HEAP32[$i>>2]|0; - $120 = HEAP32[$pEL>>2]|0; - $121 = (($120) + 4|0); - $122 = HEAP32[$121>>2]|0; - $123 = (($122) + (($119*20)|0)|0); - $124 = HEAP32[$123>>2]|0; - $125 = HEAP32[$i>>2]|0; - $126 = HEAP32[$pEL>>2]|0; - $127 = (($126) + 4|0); - $128 = HEAP32[$127>>2]|0; - $129 = (($128) + (($125*20)|0)|0); - $130 = (($129) + 16|0); - $131 = HEAP32[$130>>2]|0; - _sqlite3ExprCode($118,$124,$131); - $132 = HEAP32[$i>>2]|0; - $133 = (($132) + 1)|0; - HEAP32[$i>>2] = $133; - } - } - } while(0); - $134 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($134,16,0,1)|0); - } - } - } while(0); - $135 = HEAP32[$v>>2]|0; - $136 = ($135|0)!=(0|0); - if ($136) { - $137 = HEAP32[$0>>2]|0; - $138 = (($137) + 64|0); - $139 = HEAP32[$138>>2]|0; - $140 = ($139|0)==(0); - if ($140) { - $141 = HEAP32[$db>>2]|0; - $142 = (($141) + 64|0); - $143 = HEAP8[$142>>0]|0; - $144 = ($143<<24>>24)!=(0); - if ($144) { - label = 30; - } else { - $145 = HEAP32[$0>>2]|0; - $146 = (($145) + 404|0); - $147 = HEAP32[$146>>2]|0; - $148 = ($147|0)!=(0|0); - if ($148) { - $149 = HEAP32[$0>>2]|0; - $150 = (($149) + 68|0); - $151 = HEAP32[$150>>2]|0; - $152 = ($151|0)==(0); - if ($152) { - $153 = HEAP32[$0>>2]|0; - $154 = (($153) + 68|0); - HEAP32[$154>>2] = 1; - } - } - $155 = HEAP32[$v>>2]|0; - $156 = HEAP32[$0>>2]|0; - _sqlite3VdbeMakeReady($155,$156); - $157 = HEAP32[$0>>2]|0; - $158 = (($157) + 12|0); - HEAP32[$158>>2] = 101; - $159 = HEAP32[$0>>2]|0; - $160 = (($159) + 16|0); - HEAP8[$160>>0] = 0; - } - } else { - label = 30; - } - } else { - label = 30; - } - if ((label|0) == 30) { - $161 = HEAP32[$0>>2]|0; - $162 = (($161) + 12|0); - HEAP32[$162>>2] = 1; - } - $163 = HEAP32[$0>>2]|0; - $164 = (($163) + 68|0); - HEAP32[$164>>2] = 0; - $165 = HEAP32[$0>>2]|0; - $166 = (($165) + 72|0); - HEAP32[$166>>2] = 0; - $167 = HEAP32[$0>>2]|0; - $168 = (($167) + 76|0); - HEAP32[$168>>2] = 0; - $169 = HEAP32[$0>>2]|0; - $170 = (($169) + 440|0); - HEAP32[$170>>2] = 0; - $171 = HEAP32[$0>>2]|0; - $172 = (($171) + 332|0); - HEAP32[$172>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3BeginTransaction($pParse,$type) { - $pParse = $pParse|0; - $type = $type|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $db = sp + 8|0; - $v = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $type; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (_sqlite3AuthCheck($4,22,26984,0,0)|0); - $6 = ($5|0)!=(0); - if ($6) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - $8 = (_sqlite3GetVdbe($7)|0); - HEAP32[$v>>2] = $8; - $9 = HEAP32[$v>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - STACKTOP = sp;return; - } - $11 = HEAP32[$1>>2]|0; - $12 = ($11|0)!=(7); - L7: do { - if ($12) { - HEAP32[$i>>2] = 0; - while(1) { - $13 = HEAP32[$i>>2]|0; - $14 = HEAP32[$db>>2]|0; - $15 = (($14) + 20|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($13|0)<($16|0); - if (!($17)) { - break L7; - } - $18 = HEAP32[$v>>2]|0; - $19 = HEAP32[$i>>2]|0; - $20 = HEAP32[$1>>2]|0; - $21 = ($20|0)==(9); - $22 = $21&1; - $23 = (($22) + 1)|0; - (_sqlite3VdbeAddOp2($18,4,$19,$23)|0); - $24 = HEAP32[$v>>2]|0; - $25 = HEAP32[$i>>2]|0; - _sqlite3VdbeUsesBtree($24,$25); - $26 = HEAP32[$i>>2]|0; - $27 = (($26) + 1)|0; - HEAP32[$i>>2] = $27; - } - } - } while(0); - $28 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($28,3,0,0)|0); - STACKTOP = sp;return; -} -function _sqlite3CommitTransaction($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $v = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3AuthCheck($1,22,27016,0,0)|0); - $3 = ($2|0)!=(0); - if ($3) { - STACKTOP = sp;return; - } - $4 = HEAP32[$0>>2]|0; - $5 = (_sqlite3GetVdbe($4)|0); - HEAP32[$v>>2] = $5; - $6 = HEAP32[$v>>2]|0; - $7 = ($6|0)!=(0|0); - if (!($7)) { - STACKTOP = sp;return; - } - $8 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($8,3,1,0)|0); - STACKTOP = sp;return; -} -function _sqlite3RollbackTransaction($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $v = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3AuthCheck($1,22,27000,0,0)|0); - $3 = ($2|0)!=(0); - if ($3) { - STACKTOP = sp;return; - } - $4 = HEAP32[$0>>2]|0; - $5 = (_sqlite3GetVdbe($4)|0); - HEAP32[$v>>2] = $5; - $6 = HEAP32[$v>>2]|0; - $7 = ($6|0)!=(0|0); - if (!($7)) { - STACKTOP = sp;return; - } - $8 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($8,3,1,1)|0); - STACKTOP = sp;return; -} -function _sqlite3Savepoint($pParse,$op,$pName) { - $pParse = $pParse|0; - $op = $op|0; - $pName = $pName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $v = 0, $zName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $zName = sp + 4|0; - $v = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $op; - HEAP32[$2>>2] = $pName; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = (_sqlite3NameFromToken($4,$5)|0); - HEAP32[$zName>>2] = $6; - $7 = HEAP32[$zName>>2]|0; - $8 = ($7|0)!=(0|0); - if (!($8)) { - STACKTOP = sp;return; - } - $9 = HEAP32[$0>>2]|0; - $10 = (_sqlite3GetVdbe($9)|0); - HEAP32[$v>>2] = $10; - $11 = HEAP32[$v>>2]|0; - $12 = ($11|0)!=(0|0); - if ($12) { - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = (26968 + ($14<<2)|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$zName>>2]|0; - $18 = (_sqlite3AuthCheck($13,32,$16,$17,0)|0); - $19 = ($18|0)!=(0); - if (!($19)) { - $23 = HEAP32[$v>>2]|0; - $24 = HEAP32[$1>>2]|0; - $25 = HEAP32[$zName>>2]|0; - (_sqlite3VdbeAddOp4($23,2,$24,0,0,$25,-1)|0); - STACKTOP = sp;return; - } - } - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$zName>>2]|0; - _sqlite3DbFree($21,$22); - STACKTOP = sp;return; -} -function _sqlite3StartTable($pParse,$pName1,$pName2,$isTemp,$isView,$isVirtual,$noErr) { - $pParse = $pParse|0; - $pName1 = $pName1|0; - $pName2 = $pName2|0; - $isTemp = $isTemp|0; - $isView = $isView|0; - $isVirtual = $isVirtual|0; - $noErr = $noErr|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; - var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; - var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; - var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; - var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $code = 0, $db = 0, $fileFormat = 0, $iDb = 0, $j1 = 0, $pName = 0, $pTable = 0; - var $reg1 = 0, $reg2 = 0, $reg3 = 0, $v = 0, $vararg_buffer3 = 0, $zDb = 0, $zDb1 = 0, $zName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $vararg_buffer3 = sp; - $0 = sp + 84|0; - $1 = sp + 80|0; - $2 = sp + 76|0; - $3 = sp + 72|0; - $4 = sp + 68|0; - $5 = sp + 64|0; - $6 = sp + 60|0; - $pTable = sp + 56|0; - $zName = sp + 52|0; - $db = sp + 48|0; - $v = sp + 44|0; - $iDb = sp + 40|0; - $pName = sp + 36|0; - $code = sp + 32|0; - $zDb = sp + 28|0; - $zDb1 = sp + 24|0; - $j1 = sp + 20|0; - $fileFormat = sp + 16|0; - $reg1 = sp + 12|0; - $reg2 = sp + 8|0; - $reg3 = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pName1; - HEAP32[$2>>2] = $pName2; - HEAP32[$3>>2] = $isTemp; - HEAP32[$4>>2] = $isView; - HEAP32[$5>>2] = $isVirtual; - HEAP32[$6>>2] = $noErr; - HEAP32[$zName>>2] = 0; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$7>>2]|0; - HEAP32[$db>>2] = $8; - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = (_sqlite3TwoPartName($9,$10,$11,$pName)|0); - HEAP32[$iDb>>2] = $12; - $13 = HEAP32[$iDb>>2]|0; - $14 = ($13|0)<(0); - if ($14) { - STACKTOP = sp;return; - } - $15 = HEAP32[$3>>2]|0; - $16 = ($15|0)!=(0); - if ($16) { - $17 = HEAP32[$2>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - $20 = ($19>>>0)>(0); - if ($20) { - $21 = HEAP32[$iDb>>2]|0; - $22 = ($21|0)!=(1); - if ($22) { - $23 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($23,26856,$vararg_buffer3); - STACKTOP = sp;return; - } - } - } - $24 = HEAP32[$3>>2]|0; - $25 = ($24|0)!=(0); - if ($25) { - HEAP32[$iDb>>2] = 1; - } - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 496|0); - $28 = HEAP32[$pName>>2]|0; - ;HEAP32[$27+0>>2]=HEAP32[$28+0>>2]|0;HEAP32[$27+4>>2]=HEAP32[$28+4>>2]|0; - $29 = HEAP32[$db>>2]|0; - $30 = HEAP32[$pName>>2]|0; - $31 = (_sqlite3NameFromToken($29,$30)|0); - HEAP32[$zName>>2] = $31; - $32 = HEAP32[$zName>>2]|0; - $33 = ($32|0)==(0|0); - if ($33) { - STACKTOP = sp;return; - } - $34 = HEAP32[$0>>2]|0; - $35 = HEAP32[$zName>>2]|0; - $36 = (_sqlite3CheckObjectName($34,$35)|0); - $37 = (0)!=($36|0); - L16: do { - if (!($37)) { - $38 = HEAP32[$db>>2]|0; - $39 = (($38) + 132|0); - $40 = (($39) + 4|0); - $41 = HEAP8[$40>>0]|0; - $42 = $41&255; - $43 = ($42|0)==(1); - if ($43) { - HEAP32[$3>>2] = 1; - } - $44 = HEAP32[$iDb>>2]|0; - $45 = HEAP32[$db>>2]|0; - $46 = (($45) + 16|0); - $47 = HEAP32[$46>>2]|0; - $48 = (($47) + ($44<<4)|0); - $49 = HEAP32[$48>>2]|0; - HEAP32[$zDb>>2] = $49; - $50 = HEAP32[$0>>2]|0; - $51 = HEAP32[$3>>2]|0; - $52 = ($51|0)==(1); - $53 = $52 ? 14808 : 14832; - $54 = HEAP32[$zDb>>2]|0; - $55 = (_sqlite3AuthCheck($50,18,$53,0,$54)|0); - $56 = ($55|0)!=(0); - if (!($56)) { - $57 = HEAP32[$4>>2]|0; - $58 = ($57|0)!=(0); - $59 = HEAP32[$3>>2]|0; - $60 = ($59|0)!=(0); - do { - if ($58) { - if ($60) { - HEAP32[$code>>2] = 6; - break; - } else { - HEAP32[$code>>2] = 8; - break; - } - } else { - if ($60) { - HEAP32[$code>>2] = 4; - break; - } else { - HEAP32[$code>>2] = 2; - break; - } - } - } while(0); - $61 = HEAP32[$5>>2]|0; - $62 = ($61|0)!=(0); - if (!($62)) { - $63 = HEAP32[$0>>2]|0; - $64 = HEAP32[$code>>2]|0; - $65 = HEAP32[$zName>>2]|0; - $66 = HEAP32[$zDb>>2]|0; - $67 = (_sqlite3AuthCheck($63,$64,$65,0,$66)|0); - $68 = ($67|0)!=(0); - if ($68) { - break; - } - } - $69 = HEAP32[$0>>2]|0; - $70 = (($69) + 451|0); - $71 = HEAP8[$70>>0]|0; - $72 = ($71<<24>>24)!=(0); - do { - if (!($72)) { - $73 = HEAP32[$iDb>>2]|0; - $74 = HEAP32[$db>>2]|0; - $75 = (($74) + 16|0); - $76 = HEAP32[$75>>2]|0; - $77 = (($76) + ($73<<4)|0); - $78 = HEAP32[$77>>2]|0; - HEAP32[$zDb1>>2] = $78; - $79 = HEAP32[$0>>2]|0; - $80 = (_sqlite3ReadSchema($79)|0); - $81 = (0)!=($80|0); - if ($81) { - break L16; - } - $82 = HEAP32[$db>>2]|0; - $83 = HEAP32[$zName>>2]|0; - $84 = HEAP32[$zDb1>>2]|0; - $85 = (_sqlite3FindTable($82,$83,$84)|0); - HEAP32[$pTable>>2] = $85; - $86 = HEAP32[$pTable>>2]|0; - $87 = ($86|0)!=(0|0); - if (!($87)) { - $93 = HEAP32[$db>>2]|0; - $94 = HEAP32[$zName>>2]|0; - $95 = HEAP32[$zDb1>>2]|0; - $96 = (_sqlite3FindIndex($93,$94,$95)|0); - $97 = ($96|0)!=(0|0); - if (!($97)) { - break; - } - $98 = HEAP32[$0>>2]|0; - $99 = HEAP32[$zName>>2]|0; - HEAP32[$vararg_buffer3>>2] = $99; - _sqlite3ErrorMsg($98,26928,$vararg_buffer3); - break L16; - } - $88 = HEAP32[$6>>2]|0; - $89 = ($88|0)!=(0); - $90 = HEAP32[$0>>2]|0; - if ($89) { - $92 = HEAP32[$iDb>>2]|0; - _sqlite3CodeVerifySchema($90,$92); - break L16; - } else { - $91 = HEAP32[$pName>>2]|0; - HEAP32[$vararg_buffer3>>2] = $91; - _sqlite3ErrorMsg($90,26904,$vararg_buffer3); - break L16; - } - } - } while(0); - $100 = HEAP32[$db>>2]|0; - $101 = (_sqlite3DbMallocZero($100,76)|0); - HEAP32[$pTable>>2] = $101; - $102 = HEAP32[$pTable>>2]|0; - $103 = ($102|0)==(0|0); - if ($103) { - $104 = HEAP32[$db>>2]|0; - $105 = (($104) + 64|0); - HEAP8[$105>>0] = 1; - $106 = HEAP32[$0>>2]|0; - $107 = (($106) + 12|0); - HEAP32[$107>>2] = 7; - $108 = HEAP32[$0>>2]|0; - $109 = (($108) + 64|0); - $110 = HEAP32[$109>>2]|0; - $111 = (($110) + 1)|0; - HEAP32[$109>>2] = $111; - break; - } - $112 = HEAP32[$zName>>2]|0; - $113 = HEAP32[$pTable>>2]|0; - HEAP32[$113>>2] = $112; - $114 = HEAP32[$pTable>>2]|0; - $115 = (($114) + 36|0); - HEAP16[$115>>1] = -1; - $116 = HEAP32[$iDb>>2]|0; - $117 = HEAP32[$db>>2]|0; - $118 = (($117) + 16|0); - $119 = HEAP32[$118>>2]|0; - $120 = (($119) + ($116<<4)|0); - $121 = (($120) + 12|0); - $122 = HEAP32[$121>>2]|0; - $123 = HEAP32[$pTable>>2]|0; - $124 = (($123) + 68|0); - HEAP32[$124>>2] = $122; - $125 = HEAP32[$pTable>>2]|0; - $126 = (($125) + 40|0); - HEAP16[$126>>1] = 1; - $127 = HEAP32[$pTable>>2]|0; - $128 = (($127) + 28|0); - HEAP16[$128>>1] = 200; - $129 = HEAP32[$pTable>>2]|0; - $130 = HEAP32[$0>>2]|0; - $131 = (($130) + 484|0); - HEAP32[$131>>2] = $129; - $132 = HEAP32[$0>>2]|0; - $133 = (($132) + 18|0); - $134 = HEAP8[$133>>0]|0; - $135 = ($134<<24>>24)!=(0); - if (!($135)) { - $136 = HEAP32[$zName>>2]|0; - $137 = (_strcmp($136,16056)|0); - $138 = ($137|0)==(0); - if ($138) { - $139 = HEAP32[$pTable>>2]|0; - $140 = HEAP32[$pTable>>2]|0; - $141 = (($140) + 68|0); - $142 = HEAP32[$141>>2]|0; - $143 = (($142) + 72|0); - HEAP32[$143>>2] = $139; - } - } - $144 = HEAP32[$db>>2]|0; - $145 = (($144) + 132|0); - $146 = (($145) + 5|0); - $147 = HEAP8[$146>>0]|0; - $148 = ($147<<24>>24)!=(0); - if ($148) { - STACKTOP = sp;return; - } - $149 = HEAP32[$0>>2]|0; - $150 = (_sqlite3GetVdbe($149)|0); - HEAP32[$v>>2] = $150; - $151 = ($150|0)!=(0|0); - if (!($151)) { - STACKTOP = sp;return; - } - $152 = HEAP32[$0>>2]|0; - $153 = HEAP32[$iDb>>2]|0; - _sqlite3BeginWriteOperation($152,0,$153); - $154 = HEAP32[$5>>2]|0; - $155 = ($154|0)!=(0); - if ($155) { - $156 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp0($156,141)|0); - } - $157 = HEAP32[$0>>2]|0; - $158 = (($157) + 72|0); - $159 = HEAP32[$158>>2]|0; - $160 = (($159) + 1)|0; - HEAP32[$158>>2] = $160; - $161 = HEAP32[$0>>2]|0; - $162 = (($161) + 384|0); - HEAP32[$162>>2] = $160; - HEAP32[$reg1>>2] = $160; - $163 = HEAP32[$0>>2]|0; - $164 = (($163) + 72|0); - $165 = HEAP32[$164>>2]|0; - $166 = (($165) + 1)|0; - HEAP32[$164>>2] = $166; - $167 = HEAP32[$0>>2]|0; - $168 = (($167) + 388|0); - HEAP32[$168>>2] = $166; - HEAP32[$reg2>>2] = $166; - $169 = HEAP32[$0>>2]|0; - $170 = (($169) + 72|0); - $171 = HEAP32[$170>>2]|0; - $172 = (($171) + 1)|0; - HEAP32[$170>>2] = $172; - HEAP32[$reg3>>2] = $172; - $173 = HEAP32[$v>>2]|0; - $174 = HEAP32[$iDb>>2]|0; - $175 = HEAP32[$reg3>>2]|0; - (_sqlite3VdbeAddOp3($173,50,$174,$175,2)|0); - $176 = HEAP32[$v>>2]|0; - $177 = HEAP32[$iDb>>2]|0; - _sqlite3VdbeUsesBtree($176,$177); - $178 = HEAP32[$v>>2]|0; - $179 = HEAP32[$reg3>>2]|0; - $180 = (_sqlite3VdbeAddOp1($178,44,$179)|0); - HEAP32[$j1>>2] = $180; - $181 = HEAP32[$db>>2]|0; - $182 = (($181) + 24|0); - $183 = HEAP32[$182>>2]|0; - $184 = $183 & 32768; - $185 = ($184|0)!=(0); - $186 = $185 ? 1 : 4; - HEAP32[$fileFormat>>2] = $186; - $187 = HEAP32[$v>>2]|0; - $188 = HEAP32[$fileFormat>>2]|0; - $189 = HEAP32[$reg3>>2]|0; - (_sqlite3VdbeAddOp2($187,25,$188,$189)|0); - $190 = HEAP32[$v>>2]|0; - $191 = HEAP32[$iDb>>2]|0; - $192 = HEAP32[$reg3>>2]|0; - (_sqlite3VdbeAddOp3($190,51,$191,2,$192)|0); - $193 = HEAP32[$v>>2]|0; - $194 = HEAP32[$db>>2]|0; - $195 = (($194) + 16|0); - $196 = HEAP32[$195>>2]|0; - $197 = (($196) + 12|0); - $198 = HEAP32[$197>>2]|0; - $199 = (($198) + 77|0); - $200 = HEAP8[$199>>0]|0; - $201 = $200&255; - $202 = HEAP32[$reg3>>2]|0; - (_sqlite3VdbeAddOp2($193,25,$201,$202)|0); - $203 = HEAP32[$v>>2]|0; - $204 = HEAP32[$iDb>>2]|0; - $205 = HEAP32[$reg3>>2]|0; - (_sqlite3VdbeAddOp3($203,51,$204,5,$205)|0); - $206 = HEAP32[$v>>2]|0; - $207 = HEAP32[$j1>>2]|0; - _sqlite3VdbeJumpHere($206,$207); - $208 = HEAP32[$4>>2]|0; - $209 = ($208|0)!=(0); - if ($209) { - label = 41; - } else { - $210 = HEAP32[$5>>2]|0; - $211 = ($210|0)!=(0); - if ($211) { - label = 41; - } else { - $214 = HEAP32[$v>>2]|0; - $215 = HEAP32[$iDb>>2]|0; - $216 = HEAP32[$reg2>>2]|0; - $217 = (_sqlite3VdbeAddOp2($214,118,$215,$216)|0); - $218 = HEAP32[$0>>2]|0; - $219 = (($218) + 416|0); - HEAP32[$219>>2] = $217; - } - } - if ((label|0) == 41) { - $212 = HEAP32[$v>>2]|0; - $213 = HEAP32[$reg2>>2]|0; - (_sqlite3VdbeAddOp2($212,25,0,$213)|0); - } - $220 = HEAP32[$0>>2]|0; - $221 = HEAP32[$iDb>>2]|0; - _sqlite3OpenMasterTable($220,$221); - $222 = HEAP32[$v>>2]|0; - $223 = HEAP32[$reg1>>2]|0; - (_sqlite3VdbeAddOp2($222,69,0,$223)|0); - $224 = HEAP32[$v>>2]|0; - $225 = HEAP32[$reg3>>2]|0; - (_sqlite3VdbeAddOp2($224,28,0,$225)|0); - $226 = HEAP32[$v>>2]|0; - $227 = HEAP32[$reg3>>2]|0; - $228 = HEAP32[$reg1>>2]|0; - (_sqlite3VdbeAddOp3($226,70,0,$227,$228)|0); - $229 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($229,8); - $230 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp0($230,58)|0); - STACKTOP = sp;return; - } - } - } while(0); - $231 = HEAP32[$db>>2]|0; - $232 = HEAP32[$zName>>2]|0; - _sqlite3DbFree($231,$232); - STACKTOP = sp;return; -} -function _sqlite3EndTable($pParse,$pCons,$pEnd,$tabOpts,$pSelect) { - $pParse = $pParse|0; - $pCons = $pCons|0; - $pEnd = $pEnd|0; - $tabOpts = $tabOpts|0; - $pSelect = $pSelect|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; - var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; - var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; - var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; - var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $dest = 0, $iDb = 0, $n = 0, $nName = 0, $p = 0; - var $pDb = 0, $pEnd2 = 0, $pIdx = 0, $pOld = 0, $pSchema = 0, $pSelTab = 0, $v = 0, $vararg_buffer21 = 0, $vararg_ptr11 = 0, $vararg_ptr12 = 0, $vararg_ptr13 = 0, $vararg_ptr14 = 0, $vararg_ptr15 = 0, $vararg_ptr16 = 0, $vararg_ptr17 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $zName = 0, $zStmt = 0, $zType = 0; - var $zType2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 144|0; - $vararg_buffer21 = sp; - $0 = sp + 128|0; - $1 = sp + 124|0; - $2 = sp + 120|0; - $3 = sp + 132|0; - $4 = sp + 116|0; - $p = sp + 112|0; - $db = sp + 108|0; - $iDb = sp + 104|0; - $pIdx = sp + 100|0; - $n = sp + 96|0; - $v = sp + 92|0; - $zType = sp + 88|0; - $zType2 = sp + 84|0; - $zStmt = sp + 80|0; - $dest = sp + 60|0; - $pSelTab = sp + 56|0; - $pEnd2 = sp + 52|0; - $pDb = sp + 48|0; - $pOld = sp + 44|0; - $pSchema = sp + 40|0; - $zName = sp + 36|0; - $nName = sp + 32|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pCons; - HEAP32[$2>>2] = $pEnd; - HEAP8[$3>>0] = $tabOpts; - HEAP32[$4>>2] = $pSelect; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$2>>2]|0; - $8 = ($7|0)==(0|0); - if ($8) { - $9 = HEAP32[$4>>2]|0; - $10 = ($9|0)==(0|0); - if ($10) { - STACKTOP = sp;return; - } - } - $11 = HEAP32[$db>>2]|0; - $12 = (($11) + 64|0); - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - $15 = ($14|0)!=(0); - if ($15) { - STACKTOP = sp;return; - } - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 484|0); - $18 = HEAP32[$17>>2]|0; - HEAP32[$p>>2] = $18; - $19 = HEAP32[$p>>2]|0; - $20 = ($19|0)==(0|0); - if ($20) { - STACKTOP = sp;return; - } - $21 = HEAP32[$db>>2]|0; - $22 = (($21) + 132|0); - $23 = (($22) + 5|0); - $24 = HEAP8[$23>>0]|0; - $25 = ($24<<24>>24)!=(0); - if ($25) { - $26 = HEAP32[$db>>2]|0; - $27 = (($26) + 132|0); - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$p>>2]|0; - $30 = (($29) + 32|0); - HEAP32[$30>>2] = $28; - } - $31 = HEAP8[$3>>0]|0; - $32 = $31&255; - $33 = $32 & 32; - $34 = ($33|0)!=(0); - do { - if ($34) { - $35 = HEAP32[$p>>2]|0; - $36 = (($35) + 44|0); - $37 = HEAP8[$36>>0]|0; - $38 = $37&255; - $39 = $38 & 8; - $40 = ($39|0)!=(0); - if ($40) { - $41 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($41,26464,$vararg_buffer21); - STACKTOP = sp;return; - } - $42 = HEAP32[$p>>2]|0; - $43 = (($42) + 44|0); - $44 = HEAP8[$43>>0]|0; - $45 = $44&255; - $46 = $45 & 4; - $47 = ($46|0)==(0); - if ($47) { - $48 = HEAP32[$0>>2]|0; - $49 = HEAP32[$p>>2]|0; - $50 = HEAP32[$49>>2]|0; - HEAP32[$vararg_buffer21>>2] = $50; - _sqlite3ErrorMsg($48,26520,$vararg_buffer21); - break; - } else { - $51 = HEAP32[$p>>2]|0; - $52 = (($51) + 44|0); - $53 = HEAP8[$52>>0]|0; - $54 = $53&255; - $55 = $54 | 32; - $56 = $55&255; - HEAP8[$52>>0] = $56; - $57 = HEAP32[$0>>2]|0; - $58 = HEAP32[$p>>2]|0; - _convertToWithoutRowidTable($57,$58); - break; - } - } - } while(0); - $59 = HEAP32[$db>>2]|0; - $60 = HEAP32[$p>>2]|0; - $61 = (($60) + 68|0); - $62 = HEAP32[$61>>2]|0; - $63 = (_sqlite3SchemaToIndex($59,$62)|0); - HEAP32[$iDb>>2] = $63; - $64 = HEAP32[$p>>2]|0; - $65 = (($64) + 24|0); - $66 = HEAP32[$65>>2]|0; - $67 = ($66|0)!=(0|0); - if ($67) { - $68 = HEAP32[$0>>2]|0; - $69 = HEAP32[$p>>2]|0; - $70 = HEAP32[$p>>2]|0; - $71 = (($70) + 24|0); - $72 = HEAP32[$71>>2]|0; - _sqlite3ResolveSelfReference($68,$69,4,0,$72); - } - $73 = HEAP32[$p>>2]|0; - _estimateTableWidth($73); - $74 = HEAP32[$p>>2]|0; - $75 = (($74) + 8|0); - $76 = HEAP32[$75>>2]|0; - HEAP32[$pIdx>>2] = $76; - while(1) { - $77 = HEAP32[$pIdx>>2]|0; - $78 = ($77|0)!=(0|0); - if (!($78)) { - break; - } - $79 = HEAP32[$pIdx>>2]|0; - _estimateIndexWidth($79); - $80 = HEAP32[$pIdx>>2]|0; - $81 = (($80) + 20|0); - $82 = HEAP32[$81>>2]|0; - HEAP32[$pIdx>>2] = $82; - } - $83 = HEAP32[$db>>2]|0; - $84 = (($83) + 132|0); - $85 = (($84) + 5|0); - $86 = HEAP8[$85>>0]|0; - $87 = ($86<<24>>24)!=(0); - if (!($87)) { - $88 = HEAP32[$0>>2]|0; - $89 = (_sqlite3GetVdbe($88)|0); - HEAP32[$v>>2] = $89; - $90 = HEAP32[$v>>2]|0; - $91 = ($90|0)==(0|0); - if ($91) { - STACKTOP = sp;return; - } - $92 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp1($92,58,0)|0); - $93 = HEAP32[$p>>2]|0; - $94 = (($93) + 12|0); - $95 = HEAP32[$94>>2]|0; - $96 = ($95|0)==(0|0); - if ($96) { - HEAP32[$zType>>2] = 21256; - HEAP32[$zType2>>2] = 26552; - } else { - HEAP32[$zType>>2] = 25360; - HEAP32[$zType2>>2] = 26560; - } - $97 = HEAP32[$4>>2]|0; - $98 = ($97|0)!=(0|0); - do { - if ($98) { - $99 = HEAP32[$v>>2]|0; - $100 = HEAP32[$0>>2]|0; - $101 = (($100) + 388|0); - $102 = HEAP32[$101>>2]|0; - $103 = HEAP32[$iDb>>2]|0; - (_sqlite3VdbeAddOp3($99,53,1,$102,$103)|0); - $104 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($104,2); - $105 = HEAP32[$0>>2]|0; - $106 = (($105) + 68|0); - HEAP32[$106>>2] = 2; - _sqlite3SelectDestInit($dest,14,1); - $107 = HEAP32[$0>>2]|0; - $108 = HEAP32[$4>>2]|0; - (_sqlite3Select($107,$108,$dest)|0); - $109 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp1($109,58,1)|0); - $110 = HEAP32[$0>>2]|0; - $111 = (($110) + 64|0); - $112 = HEAP32[$111>>2]|0; - $113 = ($112|0)==(0); - if ($113) { - $114 = HEAP32[$0>>2]|0; - $115 = HEAP32[$4>>2]|0; - $116 = (_sqlite3ResultSetOfSelect($114,$115)|0); - HEAP32[$pSelTab>>2] = $116; - $117 = HEAP32[$pSelTab>>2]|0; - $118 = ($117|0)==(0|0); - if ($118) { - STACKTOP = sp;return; - } else { - $119 = HEAP32[$pSelTab>>2]|0; - $120 = (($119) + 38|0); - $121 = HEAP16[$120>>1]|0; - $122 = HEAP32[$p>>2]|0; - $123 = (($122) + 38|0); - HEAP16[$123>>1] = $121; - $124 = HEAP32[$pSelTab>>2]|0; - $125 = (($124) + 4|0); - $126 = HEAP32[$125>>2]|0; - $127 = HEAP32[$p>>2]|0; - $128 = (($127) + 4|0); - HEAP32[$128>>2] = $126; - $129 = HEAP32[$pSelTab>>2]|0; - $130 = (($129) + 38|0); - HEAP16[$130>>1] = 0; - $131 = HEAP32[$pSelTab>>2]|0; - $132 = (($131) + 4|0); - HEAP32[$132>>2] = 0; - $133 = HEAP32[$db>>2]|0; - $134 = HEAP32[$pSelTab>>2]|0; - _sqlite3DeleteTable($133,$134); - break; - } - } - } - } while(0); - $135 = HEAP32[$4>>2]|0; - $136 = ($135|0)!=(0|0); - if ($136) { - $137 = HEAP32[$db>>2]|0; - $138 = HEAP32[$p>>2]|0; - $139 = (_createTableStmt($137,$138)|0); - HEAP32[$zStmt>>2] = $139; - } else { - $140 = HEAP8[$3>>0]|0; - $141 = $140&255; - $142 = ($141|0)!=(0); - if ($142) { - $143 = HEAP32[$0>>2]|0; - $144 = (($143) + 504|0); - $146 = $144; - } else { - $145 = HEAP32[$2>>2]|0; - $146 = $145; - } - HEAP32[$pEnd2>>2] = $146; - $147 = HEAP32[$pEnd2>>2]|0; - $148 = HEAP32[$147>>2]|0; - $149 = HEAP32[$0>>2]|0; - $150 = (($149) + 496|0); - $151 = HEAP32[$150>>2]|0; - $152 = $148; - $153 = $151; - $154 = (($152) - ($153))|0; - HEAP32[$n>>2] = $154; - $155 = HEAP32[$pEnd2>>2]|0; - $156 = HEAP32[$155>>2]|0; - $157 = HEAP8[$156>>0]|0; - $158 = $157 << 24 >> 24; - $159 = ($158|0)!=(59); - if ($159) { - $160 = HEAP32[$pEnd2>>2]|0; - $161 = (($160) + 4|0); - $162 = HEAP32[$161>>2]|0; - $163 = HEAP32[$n>>2]|0; - $164 = (($163) + ($162))|0; - HEAP32[$n>>2] = $164; - } - $165 = HEAP32[$db>>2]|0; - $166 = HEAP32[$zType2>>2]|0; - $167 = HEAP32[$n>>2]|0; - $168 = HEAP32[$0>>2]|0; - $169 = (($168) + 496|0); - $170 = HEAP32[$169>>2]|0; - HEAP32[$vararg_buffer21>>2] = $166; - $vararg_ptr6 = (($vararg_buffer21) + 4|0); - HEAP32[$vararg_ptr6>>2] = $167; - $vararg_ptr7 = (($vararg_buffer21) + 8|0); - HEAP32[$vararg_ptr7>>2] = $170; - $171 = (_sqlite3MPrintf($165,26568,$vararg_buffer21)|0); - HEAP32[$zStmt>>2] = $171; - } - $172 = HEAP32[$0>>2]|0; - $173 = HEAP32[$iDb>>2]|0; - $174 = HEAP32[$db>>2]|0; - $175 = (($174) + 16|0); - $176 = HEAP32[$175>>2]|0; - $177 = (($176) + ($173<<4)|0); - $178 = HEAP32[$177>>2]|0; - $179 = HEAP32[$iDb>>2]|0; - $180 = ($179|0)==(1); - $181 = $180 ? 14808 : 14832; - $182 = HEAP32[$zType>>2]|0; - $183 = HEAP32[$p>>2]|0; - $184 = HEAP32[$183>>2]|0; - $185 = HEAP32[$p>>2]|0; - $186 = HEAP32[$185>>2]|0; - $187 = HEAP32[$0>>2]|0; - $188 = (($187) + 388|0); - $189 = HEAP32[$188>>2]|0; - $190 = HEAP32[$zStmt>>2]|0; - $191 = HEAP32[$0>>2]|0; - $192 = (($191) + 384|0); - $193 = HEAP32[$192>>2]|0; - HEAP32[$vararg_buffer21>>2] = $178; - $vararg_ptr11 = (($vararg_buffer21) + 4|0); - HEAP32[$vararg_ptr11>>2] = $181; - $vararg_ptr12 = (($vararg_buffer21) + 8|0); - HEAP32[$vararg_ptr12>>2] = $182; - $vararg_ptr13 = (($vararg_buffer21) + 12|0); - HEAP32[$vararg_ptr13>>2] = $184; - $vararg_ptr14 = (($vararg_buffer21) + 16|0); - HEAP32[$vararg_ptr14>>2] = $186; - $vararg_ptr15 = (($vararg_buffer21) + 20|0); - HEAP32[$vararg_ptr15>>2] = $189; - $vararg_ptr16 = (($vararg_buffer21) + 24|0); - HEAP32[$vararg_ptr16>>2] = $190; - $vararg_ptr17 = (($vararg_buffer21) + 28|0); - HEAP32[$vararg_ptr17>>2] = $193; - _sqlite3NestedParse($172,26584,$vararg_buffer21); - $194 = HEAP32[$db>>2]|0; - $195 = HEAP32[$zStmt>>2]|0; - _sqlite3DbFree($194,$195); - $196 = HEAP32[$0>>2]|0; - $197 = HEAP32[$iDb>>2]|0; - _sqlite3ChangeCookie($196,$197); - $198 = HEAP32[$p>>2]|0; - $199 = (($198) + 44|0); - $200 = HEAP8[$199>>0]|0; - $201 = $200&255; - $202 = $201 & 8; - $203 = ($202|0)!=(0); - if ($203) { - $204 = HEAP32[$iDb>>2]|0; - $205 = HEAP32[$db>>2]|0; - $206 = (($205) + 16|0); - $207 = HEAP32[$206>>2]|0; - $208 = (($207) + ($204<<4)|0); - HEAP32[$pDb>>2] = $208; - $209 = HEAP32[$pDb>>2]|0; - $210 = (($209) + 12|0); - $211 = HEAP32[$210>>2]|0; - $212 = (($211) + 72|0); - $213 = HEAP32[$212>>2]|0; - $214 = ($213|0)==(0|0); - if ($214) { - $215 = HEAP32[$0>>2]|0; - $216 = HEAP32[$pDb>>2]|0; - $217 = HEAP32[$216>>2]|0; - HEAP32[$vararg_buffer21>>2] = $217; - _sqlite3NestedParse($215,26672,$vararg_buffer21); - } - } - $218 = HEAP32[$v>>2]|0; - $219 = HEAP32[$iDb>>2]|0; - $220 = HEAP32[$db>>2]|0; - $221 = HEAP32[$p>>2]|0; - $222 = HEAP32[$221>>2]|0; - HEAP32[$vararg_buffer21>>2] = $222; - $223 = (_sqlite3MPrintf($220,26720,$vararg_buffer21)|0); - _sqlite3VdbeAddParseSchemaOp($218,$219,$223); - } - $224 = HEAP32[$db>>2]|0; - $225 = (($224) + 132|0); - $226 = (($225) + 5|0); - $227 = HEAP8[$226>>0]|0; - $228 = ($227<<24>>24)!=(0); - if (!($228)) { - STACKTOP = sp;return; - } - $229 = HEAP32[$p>>2]|0; - $230 = (($229) + 68|0); - $231 = HEAP32[$230>>2]|0; - HEAP32[$pSchema>>2] = $231; - $232 = HEAP32[$pSchema>>2]|0; - $233 = (($232) + 8|0); - $234 = HEAP32[$p>>2]|0; - $235 = HEAP32[$234>>2]|0; - $236 = HEAP32[$p>>2]|0; - $237 = HEAP32[$236>>2]|0; - $238 = (_sqlite3Strlen30($237)|0); - $239 = HEAP32[$p>>2]|0; - $240 = (_sqlite3HashInsert($233,$235,$238,$239)|0); - HEAP32[$pOld>>2] = $240; - $241 = HEAP32[$pOld>>2]|0; - $242 = ($241|0)!=(0|0); - if ($242) { - $243 = HEAP32[$db>>2]|0; - $244 = (($243) + 64|0); - HEAP8[$244>>0] = 1; - STACKTOP = sp;return; - } - $245 = HEAP32[$0>>2]|0; - $246 = (($245) + 484|0); - HEAP32[$246>>2] = 0; - $247 = HEAP32[$db>>2]|0; - $248 = (($247) + 24|0); - $249 = HEAP32[$248>>2]|0; - $250 = $249 | 2; - HEAP32[$248>>2] = $250; - $251 = HEAP32[$p>>2]|0; - $252 = (($251) + 12|0); - $253 = HEAP32[$252>>2]|0; - $254 = ($253|0)!=(0|0); - if ($254) { - STACKTOP = sp;return; - } - $255 = HEAP32[$0>>2]|0; - $256 = (($255) + 496|0); - $257 = HEAP32[$256>>2]|0; - HEAP32[$zName>>2] = $257; - $258 = HEAP32[$1>>2]|0; - $259 = HEAP32[$258>>2]|0; - $260 = ($259|0)==(0|0); - if ($260) { - $261 = HEAP32[$2>>2]|0; - HEAP32[$1>>2] = $261; - } - $262 = HEAP32[$1>>2]|0; - $263 = HEAP32[$262>>2]|0; - $264 = HEAP32[$zName>>2]|0; - $265 = $263; - $266 = $264; - $267 = (($265) - ($266))|0; - HEAP32[$nName>>2] = $267; - $268 = HEAP32[$zName>>2]|0; - $269 = HEAP32[$nName>>2]|0; - $270 = (_sqlite3Utf8CharLen($268,$269)|0); - $271 = (13 + ($270))|0; - $272 = HEAP32[$p>>2]|0; - $273 = (($272) + 48|0); - HEAP32[$273>>2] = $271; - STACKTOP = sp;return; -} -function _sqlite3AddColumn($pParse,$pName) { - $pParse = $pParse|0; - $pName = $pName|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0; - var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; - var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; - var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; - var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; - var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aNew = 0, $db = 0, $i = 0, $p = 0, $pCol = 0, $vararg_buffer1 = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer1 = sp; - $0 = sp + 32|0; - $1 = sp + 28|0; - $p = sp + 24|0; - $i = sp + 20|0; - $z = sp + 16|0; - $pCol = sp + 12|0; - $db = sp + 8|0; - $aNew = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pName; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 484|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$p>>2] = $6; - $7 = ($6|0)==(0|0); - if ($7) { - STACKTOP = sp;return; - } - $8 = HEAP32[$p>>2]|0; - $9 = (($8) + 38|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10 << 16 >> 16; - $12 = (($11) + 1)|0; - $13 = HEAP32[$db>>2]|0; - $14 = (($13) + 88|0); - $15 = (($14) + 8|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($12|0)>($16|0); - if ($17) { - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$p>>2]|0; - $20 = HEAP32[$19>>2]|0; - HEAP32[$vararg_buffer1>>2] = $20; - _sqlite3ErrorMsg($18,26408,$vararg_buffer1); - STACKTOP = sp;return; - } - $21 = HEAP32[$db>>2]|0; - $22 = HEAP32[$1>>2]|0; - $23 = (_sqlite3NameFromToken($21,$22)|0); - HEAP32[$z>>2] = $23; - $24 = HEAP32[$z>>2]|0; - $25 = ($24|0)==(0|0); - if ($25) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $26 = HEAP32[$i>>2]|0; - $27 = HEAP32[$p>>2]|0; - $28 = (($27) + 38|0); - $29 = HEAP16[$28>>1]|0; - $30 = $29 << 16 >> 16; - $31 = ($26|0)<($30|0); - if (!($31)) { - break; - } - $32 = HEAP32[$z>>2]|0; - $33 = HEAP8[$32>>0]|0; - $34 = $33&255; - $35 = (696 + ($34)|0); - $36 = HEAP8[$35>>0]|0; - $37 = $36&255; - $38 = HEAP32[$i>>2]|0; - $39 = HEAP32[$p>>2]|0; - $40 = (($39) + 4|0); - $41 = HEAP32[$40>>2]|0; - $42 = (($41) + (($38*24)|0)|0); - $43 = HEAP32[$42>>2]|0; - $44 = HEAP8[$43>>0]|0; - $45 = $44&255; - $46 = (696 + ($45)|0); - $47 = HEAP8[$46>>0]|0; - $48 = $47&255; - $49 = ($37|0)==($48|0); - if ($49) { - $50 = HEAP32[$z>>2]|0; - $51 = (($50) + 1|0); - $52 = HEAP32[$i>>2]|0; - $53 = HEAP32[$p>>2]|0; - $54 = (($53) + 4|0); - $55 = HEAP32[$54>>2]|0; - $56 = (($55) + (($52*24)|0)|0); - $57 = HEAP32[$56>>2]|0; - $58 = (($57) + 1|0); - $59 = (_sqlite3_stricmp($51,$58)|0); - $60 = ($59|0)==(0); - if ($60) { - label = 9; - break; - } - } - $65 = HEAP32[$i>>2]|0; - $66 = (($65) + 1)|0; - HEAP32[$i>>2] = $66; - } - if ((label|0) == 9) { - $61 = HEAP32[$0>>2]|0; - $62 = HEAP32[$z>>2]|0; - HEAP32[$vararg_buffer1>>2] = $62; - _sqlite3ErrorMsg($61,26432,$vararg_buffer1); - $63 = HEAP32[$db>>2]|0; - $64 = HEAP32[$z>>2]|0; - _sqlite3DbFree($63,$64); - STACKTOP = sp;return; - } - $67 = HEAP32[$p>>2]|0; - $68 = (($67) + 38|0); - $69 = HEAP16[$68>>1]|0; - $70 = $69 << 16 >> 16; - $71 = $70 & 7; - $72 = ($71|0)==(0); - do { - if ($72) { - $73 = HEAP32[$db>>2]|0; - $74 = HEAP32[$p>>2]|0; - $75 = (($74) + 4|0); - $76 = HEAP32[$75>>2]|0; - $77 = HEAP32[$p>>2]|0; - $78 = (($77) + 38|0); - $79 = HEAP16[$78>>1]|0; - $80 = $79 << 16 >> 16; - $81 = (($80) + 8)|0; - $82 = ($81*24)|0; - $83 = (_sqlite3DbRealloc($73,$76,$82)|0); - HEAP32[$aNew>>2] = $83; - $84 = HEAP32[$aNew>>2]|0; - $85 = ($84|0)==(0|0); - if (!($85)) { - $88 = HEAP32[$aNew>>2]|0; - $89 = HEAP32[$p>>2]|0; - $90 = (($89) + 4|0); - HEAP32[$90>>2] = $88; - break; - } - $86 = HEAP32[$db>>2]|0; - $87 = HEAP32[$z>>2]|0; - _sqlite3DbFree($86,$87); - STACKTOP = sp;return; - } - } while(0); - $91 = HEAP32[$p>>2]|0; - $92 = (($91) + 38|0); - $93 = HEAP16[$92>>1]|0; - $94 = $93 << 16 >> 16; - $95 = HEAP32[$p>>2]|0; - $96 = (($95) + 4|0); - $97 = HEAP32[$96>>2]|0; - $98 = (($97) + (($94*24)|0)|0); - HEAP32[$pCol>>2] = $98; - $99 = HEAP32[$pCol>>2]|0; - ;HEAP32[$99+0>>2]=0|0;HEAP32[$99+4>>2]=0|0;HEAP32[$99+8>>2]=0|0;HEAP32[$99+12>>2]=0|0;HEAP32[$99+16>>2]=0|0;HEAP32[$99+20>>2]=0|0; - $100 = HEAP32[$z>>2]|0; - $101 = HEAP32[$pCol>>2]|0; - HEAP32[$101>>2] = $100; - $102 = HEAP32[$pCol>>2]|0; - $103 = (($102) + 21|0); - HEAP8[$103>>0] = 98; - $104 = HEAP32[$pCol>>2]|0; - $105 = (($104) + 22|0); - HEAP8[$105>>0] = 1; - $106 = HEAP32[$p>>2]|0; - $107 = (($106) + 38|0); - $108 = HEAP16[$107>>1]|0; - $109 = (($108) + 1)<<16>>16; - HEAP16[$107>>1] = $109; - STACKTOP = sp;return; -} -function _sqlite3AddColumnType($pParse,$pType) { - $pParse = $pParse|0; - $pType = $pType|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pCol = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $p = sp + 4|0; - $pCol = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pType; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 484|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$p>>2] = $4; - $5 = HEAP32[$p>>2]|0; - $6 = ($5|0)==(0|0); - if ($6) { - STACKTOP = sp;return; - } - $7 = HEAP32[$p>>2]|0; - $8 = (($7) + 38|0); - $9 = HEAP16[$8>>1]|0; - $10 = $9 << 16 >> 16; - $11 = ($10|0)<(1); - if ($11) { - STACKTOP = sp;return; - } - $12 = HEAP32[$p>>2]|0; - $13 = (($12) + 38|0); - $14 = HEAP16[$13>>1]|0; - $15 = $14 << 16 >> 16; - $16 = (($15) - 1)|0; - $17 = HEAP32[$p>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($19) + (($16*24)|0)|0); - HEAP32[$pCol>>2] = $20; - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (_sqlite3NameFromToken($22,$23)|0); - $25 = HEAP32[$pCol>>2]|0; - $26 = (($25) + 12|0); - HEAP32[$26>>2] = $24; - $27 = HEAP32[$pCol>>2]|0; - $28 = (($27) + 12|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$pCol>>2]|0; - $31 = (($30) + 22|0); - $32 = (_sqlite3AffinityType($29,$31)|0); - $33 = HEAP32[$pCol>>2]|0; - $34 = (($33) + 21|0); - HEAP8[$34>>0] = $32; - STACKTOP = sp;return; -} -function _sqlite3AddDefaultValue($pParse,$pSpan) { - $pParse = $pParse|0; - $pSpan = $pSpan|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $p = 0; - var $pCol = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 20|0; - $1 = sp + 16|0; - $p = sp + 12|0; - $pCol = sp + 8|0; - $db = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pSpan; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 484|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$p>>2] = $6; - $7 = HEAP32[$p>>2]|0; - $8 = ($7|0)!=(0|0); - if (!($8)) { - $55 = HEAP32[$db>>2]|0; - $56 = HEAP32[$1>>2]|0; - $57 = HEAP32[$56>>2]|0; - _sqlite3ExprDelete($55,$57); - STACKTOP = sp;return; - } - $9 = HEAP32[$p>>2]|0; - $10 = (($9) + 38|0); - $11 = HEAP16[$10>>1]|0; - $12 = $11 << 16 >> 16; - $13 = (($12) - 1)|0; - $14 = HEAP32[$p>>2]|0; - $15 = (($14) + 4|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + (($13*24)|0)|0); - HEAP32[$pCol>>2] = $17; - $18 = HEAP32[$1>>2]|0; - $19 = HEAP32[$18>>2]|0; - $20 = (_sqlite3ExprIsConstantOrFunction($19)|0); - $21 = ($20|0)!=(0); - if ($21) { - $25 = HEAP32[$db>>2]|0; - $26 = HEAP32[$pCol>>2]|0; - $27 = (($26) + 4|0); - $28 = HEAP32[$27>>2]|0; - _sqlite3ExprDelete($25,$28); - $29 = HEAP32[$db>>2]|0; - $30 = HEAP32[$1>>2]|0; - $31 = HEAP32[$30>>2]|0; - $32 = (_sqlite3ExprDup($29,$31,1)|0); - $33 = HEAP32[$pCol>>2]|0; - $34 = (($33) + 4|0); - HEAP32[$34>>2] = $32; - $35 = HEAP32[$db>>2]|0; - $36 = HEAP32[$pCol>>2]|0; - $37 = (($36) + 8|0); - $38 = HEAP32[$37>>2]|0; - _sqlite3DbFree($35,$38); - $39 = HEAP32[$db>>2]|0; - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 4|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + 8|0); - $45 = HEAP32[$44>>2]|0; - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 4|0); - $48 = HEAP32[$47>>2]|0; - $49 = $45; - $50 = $48; - $51 = (($49) - ($50))|0; - $52 = (_sqlite3DbStrNDup($39,$42,$51)|0); - $53 = HEAP32[$pCol>>2]|0; - $54 = (($53) + 8|0); - HEAP32[$54>>2] = $52; - $55 = HEAP32[$db>>2]|0; - $56 = HEAP32[$1>>2]|0; - $57 = HEAP32[$56>>2]|0; - _sqlite3ExprDelete($55,$57); - STACKTOP = sp;return; - } else { - $22 = HEAP32[$0>>2]|0; - $23 = HEAP32[$pCol>>2]|0; - $24 = HEAP32[$23>>2]|0; - HEAP32[$vararg_buffer>>2] = $24; - _sqlite3ErrorMsg($22,26360,$vararg_buffer); - $55 = HEAP32[$db>>2]|0; - $56 = HEAP32[$1>>2]|0; - $57 = HEAP32[$56>>2]|0; - _sqlite3ExprDelete($55,$57); - STACKTOP = sp;return; - } -} -function _sqlite3PExpr($pParse,$op,$pLeft,$pRight,$pToken) { - $pParse = $pParse|0; - $op = $op|0; - $pLeft = $pLeft|0; - $pRight = $pRight|0; - $pToken = $pToken|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $op; - HEAP32[$2>>2] = $pLeft; - HEAP32[$3>>2] = $pRight; - HEAP32[$4>>2] = $pToken; - $5 = HEAP32[$1>>2]|0; - $6 = ($5|0)==(72); - if ($6) { - $7 = HEAP32[$2>>2]|0; - $8 = ($7|0)!=(0|0); - if ($8) { - $9 = HEAP32[$3>>2]|0; - $10 = ($9|0)!=(0|0); - if ($10) { - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = HEAP32[$3>>2]|0; - $15 = (_sqlite3ExprAnd($12,$13,$14)|0); - HEAP32[$p>>2] = $15; - } else { - label = 5; - } - } else { - label = 5; - } - } else { - label = 5; - } - if ((label|0) == 5) { - $16 = HEAP32[$0>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = HEAP32[$4>>2]|0; - $20 = (_sqlite3ExprAlloc($17,$18,$19,1)|0); - HEAP32[$p>>2] = $20; - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$p>>2]|0; - $24 = HEAP32[$2>>2]|0; - $25 = HEAP32[$3>>2]|0; - _sqlite3ExprAttachSubtrees($22,$23,$24,$25); - } - $26 = HEAP32[$p>>2]|0; - $27 = ($26|0)!=(0|0); - if (!($27)) { - $32 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($32|0); - } - $28 = HEAP32[$0>>2]|0; - $29 = HEAP32[$p>>2]|0; - $30 = (($29) + 24|0); - $31 = HEAP32[$30>>2]|0; - (_sqlite3ExprCheckHeight($28,$31)|0); - $32 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($32|0); -} -function _spanExpr($pOut,$pParse,$op,$pValue) { - $pOut = $pOut|0; - $pParse = $pParse|0; - $op = $op|0; - $pValue = $pValue|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$0>>2] = $pOut; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $op; - HEAP32[$3>>2] = $pValue; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$3>>2]|0; - $7 = (_sqlite3PExpr($4,$5,0,0,$6)|0); - $8 = HEAP32[$0>>2]|0; - HEAP32[$8>>2] = $7; - $9 = HEAP32[$3>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 4|0); - HEAP32[$12>>2] = $10; - $13 = HEAP32[$3>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$3>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + ($15)|0); - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 8|0); - HEAP32[$20>>2] = $18; - STACKTOP = sp;return; -} -function _sqlite3AddNotNull($pParse,$onError) { - $pParse = $pParse|0; - $onError = $onError|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $onError; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 484|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$p>>2] = $4; - $5 = HEAP32[$p>>2]|0; - $6 = ($5|0)==(0|0); - if ($6) { - STACKTOP = sp;return; - } - $7 = HEAP32[$p>>2]|0; - $8 = (($7) + 38|0); - $9 = HEAP16[$8>>1]|0; - $10 = $9 << 16 >> 16; - $11 = ($10|0)<(1); - if ($11) { - STACKTOP = sp;return; - } - $12 = HEAP32[$1>>2]|0; - $13 = $12&255; - $14 = HEAP32[$p>>2]|0; - $15 = (($14) + 38|0); - $16 = HEAP16[$15>>1]|0; - $17 = $16 << 16 >> 16; - $18 = (($17) - 1)|0; - $19 = HEAP32[$p>>2]|0; - $20 = (($19) + 4|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + (($18*24)|0)|0); - $23 = (($22) + 20|0); - HEAP8[$23>>0] = $13; - STACKTOP = sp;return; -} -function _sqlite3AddPrimaryKey($pParse,$pList,$onError,$autoInc,$sortOrder) { - $pParse = $pParse|0; - $pList = $pList|0; - $onError = $onError|0; - $autoInc = $autoInc|0; - $sortOrder = $sortOrder|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; - var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; - var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iCol = 0, $nTerm = 0, $p = 0, $pTab = 0, $v = 0, $vararg_buffer1 = 0, $zType = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer1 = sp; - $0 = sp + 48|0; - $1 = sp + 44|0; - $2 = sp + 40|0; - $3 = sp + 36|0; - $4 = sp + 32|0; - $pTab = sp + 28|0; - $zType = sp + 24|0; - $iCol = sp + 20|0; - $i = sp + 16|0; - $nTerm = sp + 12|0; - $v = sp + 8|0; - $p = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pList; - HEAP32[$2>>2] = $onError; - HEAP32[$3>>2] = $autoInc; - HEAP32[$4>>2] = $sortOrder; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 484|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pTab>>2] = $7; - HEAP32[$zType>>2] = 0; - HEAP32[$iCol>>2] = -1; - $8 = HEAP32[$pTab>>2]|0; - $9 = ($8|0)==(0|0); - if ($9) { - $163 = HEAP32[$0>>2]|0; - $164 = HEAP32[$163>>2]|0; - $165 = HEAP32[$1>>2]|0; - _sqlite3ExprListDelete($164,$165); - STACKTOP = sp;return; - } - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 451|0); - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = ($13|0)!=(0); - if ($14) { - $163 = HEAP32[$0>>2]|0; - $164 = HEAP32[$163>>2]|0; - $165 = HEAP32[$1>>2]|0; - _sqlite3ExprListDelete($164,$165); - STACKTOP = sp;return; - } - $15 = HEAP32[$pTab>>2]|0; - $16 = (($15) + 44|0); - $17 = HEAP8[$16>>0]|0; - $18 = $17&255; - $19 = $18 & 4; - $20 = ($19|0)!=(0); - if ($20) { - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$pTab>>2]|0; - $23 = HEAP32[$22>>2]|0; - HEAP32[$vararg_buffer1>>2] = $23; - _sqlite3ErrorMsg($21,26256,$vararg_buffer1); - $163 = HEAP32[$0>>2]|0; - $164 = HEAP32[$163>>2]|0; - $165 = HEAP32[$1>>2]|0; - _sqlite3ExprListDelete($164,$165); - STACKTOP = sp;return; - } - $24 = HEAP32[$pTab>>2]|0; - $25 = (($24) + 44|0); - $26 = HEAP8[$25>>0]|0; - $27 = $26&255; - $28 = $27 | 4; - $29 = $28&255; - HEAP8[$25>>0] = $29; - $30 = HEAP32[$1>>2]|0; - $31 = ($30|0)==(0|0); - L11: do { - if ($31) { - $32 = HEAP32[$pTab>>2]|0; - $33 = (($32) + 38|0); - $34 = HEAP16[$33>>1]|0; - $35 = $34 << 16 >> 16; - $36 = (($35) - 1)|0; - HEAP32[$iCol>>2] = $36; - $37 = HEAP32[$iCol>>2]|0; - $38 = HEAP32[$pTab>>2]|0; - $39 = (($38) + 4|0); - $40 = HEAP32[$39>>2]|0; - $41 = (($40) + (($37*24)|0)|0); - $42 = (($41) + 23|0); - $43 = HEAP8[$42>>0]|0; - $44 = $43&255; - $45 = $44 | 1; - $46 = $45&255; - HEAP8[$42>>0] = $46; - $47 = HEAP32[$iCol>>2]|0; - $48 = HEAP32[$pTab>>2]|0; - $49 = (($48) + 4|0); - $50 = HEAP32[$49>>2]|0; - $51 = (($50) + (($47*24)|0)|0); - $52 = (($51) + 12|0); - $53 = HEAP32[$52>>2]|0; - HEAP32[$zType>>2] = $53; - HEAP32[$nTerm>>2] = 1; - } else { - $54 = HEAP32[$1>>2]|0; - $55 = HEAP32[$54>>2]|0; - HEAP32[$nTerm>>2] = $55; - HEAP32[$i>>2] = 0; - while(1) { - $56 = HEAP32[$i>>2]|0; - $57 = HEAP32[$nTerm>>2]|0; - $58 = ($56|0)<($57|0); - if (!($58)) { - break L11; - } - HEAP32[$iCol>>2] = 0; - while(1) { - $59 = HEAP32[$iCol>>2]|0; - $60 = HEAP32[$pTab>>2]|0; - $61 = (($60) + 38|0); - $62 = HEAP16[$61>>1]|0; - $63 = $62 << 16 >> 16; - $64 = ($59|0)<($63|0); - if (!($64)) { - break; - } - $65 = HEAP32[$i>>2]|0; - $66 = HEAP32[$1>>2]|0; - $67 = (($66) + 4|0); - $68 = HEAP32[$67>>2]|0; - $69 = (($68) + (($65*20)|0)|0); - $70 = (($69) + 4|0); - $71 = HEAP32[$70>>2]|0; - $72 = HEAP32[$iCol>>2]|0; - $73 = HEAP32[$pTab>>2]|0; - $74 = (($73) + 4|0); - $75 = HEAP32[$74>>2]|0; - $76 = (($75) + (($72*24)|0)|0); - $77 = HEAP32[$76>>2]|0; - $78 = (_sqlite3_stricmp($71,$77)|0); - $79 = ($78|0)==(0); - $80 = HEAP32[$iCol>>2]|0; - if ($79) { - label = 12; - break; - } - $97 = (($80) + 1)|0; - HEAP32[$iCol>>2] = $97; - } - if ((label|0) == 12) { - label = 0; - $81 = HEAP32[$pTab>>2]|0; - $82 = (($81) + 4|0); - $83 = HEAP32[$82>>2]|0; - $84 = (($83) + (($80*24)|0)|0); - $85 = (($84) + 23|0); - $86 = HEAP8[$85>>0]|0; - $87 = $86&255; - $88 = $87 | 1; - $89 = $88&255; - HEAP8[$85>>0] = $89; - $90 = HEAP32[$iCol>>2]|0; - $91 = HEAP32[$pTab>>2]|0; - $92 = (($91) + 4|0); - $93 = HEAP32[$92>>2]|0; - $94 = (($93) + (($90*24)|0)|0); - $95 = (($94) + 12|0); - $96 = HEAP32[$95>>2]|0; - HEAP32[$zType>>2] = $96; - } - $98 = HEAP32[$i>>2]|0; - $99 = (($98) + 1)|0; - HEAP32[$i>>2] = $99; - } - } - } while(0); - $100 = HEAP32[$nTerm>>2]|0; - $101 = ($100|0)==(1); - if ($101) { - $102 = HEAP32[$zType>>2]|0; - $103 = ($102|0)!=(0|0); - if ($103) { - $104 = HEAP32[$zType>>2]|0; - $105 = (_sqlite3_stricmp($104,16320)|0); - $106 = ($105|0)==(0); - if ($106) { - $107 = HEAP32[$4>>2]|0; - $108 = ($107|0)==(0); - if ($108) { - $109 = HEAP32[$iCol>>2]|0; - $110 = $109&65535; - $111 = HEAP32[$pTab>>2]|0; - $112 = (($111) + 36|0); - HEAP16[$112>>1] = $110; - $113 = HEAP32[$2>>2]|0; - $114 = $113&255; - $115 = HEAP32[$pTab>>2]|0; - $116 = (($115) + 45|0); - HEAP8[$116>>0] = $114; - $117 = HEAP32[$3>>2]|0; - $118 = $117<<3; - $119 = HEAP32[$pTab>>2]|0; - $120 = (($119) + 44|0); - $121 = HEAP8[$120>>0]|0; - $122 = $121&255; - $123 = $122 | $118; - $124 = $123&255; - HEAP8[$120>>0] = $124; - $125 = HEAP32[$1>>2]|0; - $126 = ($125|0)!=(0|0); - if (!($126)) { - $163 = HEAP32[$0>>2]|0; - $164 = HEAP32[$163>>2]|0; - $165 = HEAP32[$1>>2]|0; - _sqlite3ExprListDelete($164,$165); - STACKTOP = sp;return; - } - $127 = HEAP32[$1>>2]|0; - $128 = (($127) + 4|0); - $129 = HEAP32[$128>>2]|0; - $130 = (($129) + 12|0); - $131 = HEAP8[$130>>0]|0; - $132 = HEAP32[$0>>2]|0; - $133 = (($132) + 448|0); - HEAP8[$133>>0] = $131; - $163 = HEAP32[$0>>2]|0; - $164 = HEAP32[$163>>2]|0; - $165 = HEAP32[$1>>2]|0; - _sqlite3ExprListDelete($164,$165); - STACKTOP = sp;return; - } - } - } - } - $134 = HEAP32[$3>>2]|0; - $135 = ($134|0)!=(0); - $136 = HEAP32[$0>>2]|0; - if ($135) { - _sqlite3ErrorMsg($136,26304,$vararg_buffer1); - $163 = HEAP32[$0>>2]|0; - $164 = HEAP32[$163>>2]|0; - $165 = HEAP32[$1>>2]|0; - _sqlite3ExprListDelete($164,$165); - STACKTOP = sp;return; - } - $137 = (($136) + 8|0); - $138 = HEAP32[$137>>2]|0; - HEAP32[$v>>2] = $138; - $139 = HEAP32[$v>>2]|0; - $140 = ($139|0)!=(0|0); - if ($140) { - $141 = HEAP32[$v>>2]|0; - $142 = (_sqlite3VdbeAddOp0($141,156)|0); - $143 = HEAP32[$0>>2]|0; - $144 = (($143) + 420|0); - HEAP32[$144>>2] = $142; - } - $145 = HEAP32[$0>>2]|0; - $146 = HEAP32[$1>>2]|0; - $147 = HEAP32[$2>>2]|0; - $148 = HEAP32[$4>>2]|0; - $149 = (_sqlite3CreateIndex($145,0,0,0,$146,$147,0,0,$148,0)|0); - HEAP32[$p>>2] = $149; - $150 = HEAP32[$p>>2]|0; - $151 = ($150|0)!=(0|0); - if ($151) { - $152 = HEAP32[$p>>2]|0; - $153 = (($152) + 55|0); - $154 = HEAP8[$153>>0]|0; - $155 = $154 & -4; - $156 = $155 | 2; - HEAP8[$153>>0] = $156; - $157 = HEAP32[$v>>2]|0; - $158 = ($157|0)!=(0|0); - if ($158) { - $159 = HEAP32[$v>>2]|0; - $160 = HEAP32[$0>>2]|0; - $161 = (($160) + 420|0); - $162 = HEAP32[$161>>2]|0; - _sqlite3VdbeJumpHere($159,$162); - } - } - HEAP32[$1>>2] = 0; - $163 = HEAP32[$0>>2]|0; - $164 = HEAP32[$163>>2]|0; - $165 = HEAP32[$1>>2]|0; - _sqlite3ExprListDelete($164,$165); - STACKTOP = sp;return; -} -function _sqlite3CreateIndex($pParse,$pName1,$pName2,$pTblName,$pList,$onError,$pStart,$pPIWhere,$sortOrder,$ifNotExist) { - $pParse = $pParse|0; - $pName1 = $pName1|0; - $pName2 = $pName2|0; - $pTblName = $pTblName|0; - $pList = $pList|0; - $onError = $onError|0; - $pStart = $pStart|0; - $pPIWhere = $pPIWhere|0; - $sortOrder = $sortOrder|0; - $ifNotExist = $ifNotExist|0; - var $$ = 0, $$1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; - var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; - var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; - var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; - var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0; - var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0; - var $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0; - var $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0; - var $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0; - var $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0; - var $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0; - var $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0; - var $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0; - var $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0; - var $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0; - var $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0; - var $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0; - var $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0; - var $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0; - var $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0; - var $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0; - var $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0; - var $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0; - var $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0; - var $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0; - var $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0; - var $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0; - var $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0; - var $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0; - var $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0; - var $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0; - var $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0; - var $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0; - var $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0; - var $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0; - var $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0; - var $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0; - var $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0; - var $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0; - var $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0; - var $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; - var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0, $iDb = 0, $iMem = 0, $j = 0, $k = 0, $n = 0, $n1 = 0, $nColl = 0, $nExtra = 0, $nExtraCol = 0, $nName = 0, $p = 0; - var $pDb = 0, $pExpr = 0, $pIdx = 0, $pIndex = 0, $pListItem = 0, $pLoop = 0, $pName = 0, $pOther = 0, $pPk = 0, $pRet = 0, $pTab = 0, $pTabCol = 0, $requestedSortOrder = 0, $sFix = 0, $sortOrderMask = 0, $v = 0, $vararg_buffer39 = 0, $vararg_ptr18 = 0, $vararg_ptr22 = 0, $vararg_ptr29 = 0; - var $vararg_ptr30 = 0, $vararg_ptr34 = 0, $vararg_ptr35 = 0, $vararg_ptr36 = 0, $vararg_ptr37 = 0, $vararg_ptr38 = 0, $x = 0, $z1 = 0, $z2 = 0, $zColName = 0, $zColl = 0, $zDb = 0, $zExtra = 0, $zName = 0, $zStmt = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 240|0; - $vararg_buffer39 = sp; - $0 = sp + 232|0; - $1 = sp + 228|0; - $2 = sp + 224|0; - $3 = sp + 220|0; - $4 = sp + 216|0; - $5 = sp + 212|0; - $6 = sp + 208|0; - $7 = sp + 204|0; - $8 = sp + 200|0; - $9 = sp + 196|0; - $pRet = sp + 192|0; - $pTab = sp + 188|0; - $pIndex = sp + 184|0; - $zName = sp + 180|0; - $nName = sp + 176|0; - $i = sp + 172|0; - $j = sp + 168|0; - $sFix = sp + 144|0; - $sortOrderMask = sp + 140|0; - $db = sp + 136|0; - $pDb = sp + 132|0; - $iDb = sp + 128|0; - $pName = sp + 124|0; - $pListItem = sp + 120|0; - $pTabCol = sp + 116|0; - $nExtra = sp + 112|0; - $nExtraCol = sp + 108|0; - $zExtra = sp + 104|0; - $pPk = sp + 100|0; - $n = sp + 96|0; - $pLoop = sp + 92|0; - $zDb = sp + 88|0; - $pExpr = sp + 84|0; - $zColName = sp + 80|0; - $requestedSortOrder = sp + 76|0; - $zColl = sp + 72|0; - $nColl = sp + 68|0; - $x = sp + 64|0; - $pIdx = sp + 60|0; - $k = sp + 56|0; - $z1 = sp + 52|0; - $z2 = sp + 48|0; - $p = sp + 44|0; - $v = sp + 40|0; - $zStmt = sp + 36|0; - $iMem = sp + 32|0; - $n1 = sp + 28|0; - $pOther = sp + 24|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pName1; - HEAP32[$2>>2] = $pName2; - HEAP32[$3>>2] = $pTblName; - HEAP32[$4>>2] = $pList; - HEAP32[$5>>2] = $onError; - HEAP32[$6>>2] = $pStart; - HEAP32[$7>>2] = $pPIWhere; - HEAP32[$8>>2] = $sortOrder; - HEAP32[$9>>2] = $ifNotExist; - HEAP32[$pRet>>2] = 0; - HEAP32[$pTab>>2] = 0; - HEAP32[$pIndex>>2] = 0; - HEAP32[$zName>>2] = 0; - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$10>>2]|0; - HEAP32[$db>>2] = $11; - HEAP32[$pName>>2] = 0; - HEAP32[$nExtra>>2] = 0; - HEAP32[$zExtra>>2] = 0; - HEAP32[$pPk>>2] = 0; - $12 = HEAP32[$db>>2]|0; - $13 = (($12) + 64|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14&255; - $16 = ($15|0)!=(0); - L1: do { - if (!($16)) { - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 451|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = ($20|0)!=(0); - if (!($21)) { - $22 = HEAP32[$0>>2]|0; - $23 = (_sqlite3ReadSchema($22)|0); - $24 = (0)!=($23|0); - if (!($24)) { - $25 = HEAP32[$3>>2]|0; - $26 = ($25|0)!=(0|0); - $27 = HEAP32[$0>>2]|0; - if ($26) { - $28 = HEAP32[$1>>2]|0; - $29 = HEAP32[$2>>2]|0; - $30 = (_sqlite3TwoPartName($27,$28,$29,$pName)|0); - HEAP32[$iDb>>2] = $30; - $31 = HEAP32[$iDb>>2]|0; - $32 = ($31|0)<(0); - if ($32) { - break; - } - $33 = HEAP32[$db>>2]|0; - $34 = (($33) + 132|0); - $35 = (($34) + 5|0); - $36 = HEAP8[$35>>0]|0; - $37 = ($36<<24>>24)!=(0); - if (!($37)) { - $38 = HEAP32[$0>>2]|0; - $39 = HEAP32[$3>>2]|0; - $40 = (_sqlite3SrcListLookup($38,$39)|0); - HEAP32[$pTab>>2] = $40; - $41 = HEAP32[$2>>2]|0; - $42 = (($41) + 4|0); - $43 = HEAP32[$42>>2]|0; - $44 = ($43|0)==(0); - if ($44) { - $45 = HEAP32[$pTab>>2]|0; - $46 = ($45|0)!=(0|0); - if ($46) { - $47 = HEAP32[$pTab>>2]|0; - $48 = (($47) + 68|0); - $49 = HEAP32[$48>>2]|0; - $50 = HEAP32[$db>>2]|0; - $51 = (($50) + 16|0); - $52 = HEAP32[$51>>2]|0; - $53 = (($52) + 16|0); - $54 = (($53) + 12|0); - $55 = HEAP32[$54>>2]|0; - $56 = ($49|0)==($55|0); - if ($56) { - HEAP32[$iDb>>2] = 1; - } - } - } - } - $57 = HEAP32[$0>>2]|0; - $58 = HEAP32[$iDb>>2]|0; - $59 = HEAP32[$pName>>2]|0; - _sqlite3FixInit($sFix,$57,$58,10072,$59); - $60 = HEAP32[$3>>2]|0; - (_sqlite3FixSrcList($sFix,$60)|0); - $61 = HEAP32[$0>>2]|0; - $62 = HEAP32[$3>>2]|0; - $63 = (($62) + 8|0); - $64 = (_sqlite3LocateTableItem($61,0,$63)|0); - HEAP32[$pTab>>2] = $64; - $65 = HEAP32[$pTab>>2]|0; - $66 = ($65|0)==(0|0); - if ($66) { - break; - } - $67 = HEAP32[$iDb>>2]|0; - $68 = ($67|0)==(1); - if ($68) { - $69 = HEAP32[$iDb>>2]|0; - $70 = HEAP32[$db>>2]|0; - $71 = (($70) + 16|0); - $72 = HEAP32[$71>>2]|0; - $73 = (($72) + ($69<<4)|0); - $74 = (($73) + 12|0); - $75 = HEAP32[$74>>2]|0; - $76 = HEAP32[$pTab>>2]|0; - $77 = (($76) + 68|0); - $78 = HEAP32[$77>>2]|0; - $79 = ($75|0)!=($78|0); - if ($79) { - $80 = HEAP32[$0>>2]|0; - $81 = HEAP32[$pTab>>2]|0; - $82 = HEAP32[$81>>2]|0; - HEAP32[$vararg_buffer39>>2] = $82; - _sqlite3ErrorMsg($80,25800,$vararg_buffer39); - break; - } - } - $83 = HEAP32[$pTab>>2]|0; - $84 = (($83) + 44|0); - $85 = HEAP8[$84>>0]|0; - $86 = $85&255; - $87 = $86 & 32; - $88 = ($87|0)==(0); - if (!($88)) { - $89 = HEAP32[$pTab>>2]|0; - $90 = (_sqlite3PrimaryKeyIndex($89)|0); - HEAP32[$pPk>>2] = $90; - } - } else { - $91 = (($27) + 484|0); - $92 = HEAP32[$91>>2]|0; - HEAP32[$pTab>>2] = $92; - $93 = HEAP32[$pTab>>2]|0; - $94 = ($93|0)!=(0|0); - if (!($94)) { - break; - } - $95 = HEAP32[$db>>2]|0; - $96 = HEAP32[$pTab>>2]|0; - $97 = (($96) + 68|0); - $98 = HEAP32[$97>>2]|0; - $99 = (_sqlite3SchemaToIndex($95,$98)|0); - HEAP32[$iDb>>2] = $99; - } - $100 = HEAP32[$iDb>>2]|0; - $101 = HEAP32[$db>>2]|0; - $102 = (($101) + 16|0); - $103 = HEAP32[$102>>2]|0; - $104 = (($103) + ($100<<4)|0); - HEAP32[$pDb>>2] = $104; - $105 = HEAP32[$pTab>>2]|0; - $106 = HEAP32[$105>>2]|0; - $107 = (_sqlite3_strnicmp($106,15048,7)|0); - $108 = ($107|0)==(0); - if ($108) { - $109 = HEAP32[$pTab>>2]|0; - $110 = HEAP32[$109>>2]|0; - $111 = (($110) + 7|0); - $112 = (_sqlite3_strnicmp($111,25856,9)|0); - $113 = ($112|0)!=(0); - if ($113) { - $114 = HEAP32[$0>>2]|0; - $115 = HEAP32[$pTab>>2]|0; - $116 = HEAP32[$115>>2]|0; - HEAP32[$vararg_buffer39>>2] = $116; - _sqlite3ErrorMsg($114,25872,$vararg_buffer39); - break; - } - } - $117 = HEAP32[$pTab>>2]|0; - $118 = (($117) + 12|0); - $119 = HEAP32[$118>>2]|0; - $120 = ($119|0)!=(0|0); - if ($120) { - $121 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($121,25904,$vararg_buffer39); - break; - } - $122 = HEAP32[$pTab>>2]|0; - $123 = (($122) + 44|0); - $124 = HEAP8[$123>>0]|0; - $125 = $124&255; - $126 = $125 & 16; - $127 = ($126|0)!=(0); - if ($127) { - $128 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($128,25936,$vararg_buffer39); - break; - } - $129 = HEAP32[$pName>>2]|0; - $130 = ($129|0)!=(0|0); - if ($130) { - $131 = HEAP32[$db>>2]|0; - $132 = HEAP32[$pName>>2]|0; - $133 = (_sqlite3NameFromToken($131,$132)|0); - HEAP32[$zName>>2] = $133; - $134 = HEAP32[$zName>>2]|0; - $135 = ($134|0)==(0|0); - if ($135) { - break; - } - $136 = HEAP32[$0>>2]|0; - $137 = HEAP32[$zName>>2]|0; - $138 = (_sqlite3CheckObjectName($136,$137)|0); - $139 = (0)!=($138|0); - if ($139) { - break; - } - $140 = HEAP32[$db>>2]|0; - $141 = (($140) + 132|0); - $142 = (($141) + 5|0); - $143 = HEAP8[$142>>0]|0; - $144 = ($143<<24>>24)!=(0); - if (!($144)) { - $145 = HEAP32[$db>>2]|0; - $146 = HEAP32[$zName>>2]|0; - $147 = (_sqlite3FindTable($145,$146,0)|0); - $148 = ($147|0)!=(0|0); - if ($148) { - $149 = HEAP32[$0>>2]|0; - $150 = HEAP32[$zName>>2]|0; - HEAP32[$vararg_buffer39>>2] = $150; - _sqlite3ErrorMsg($149,25976,$vararg_buffer39); - break; - } - } - $151 = HEAP32[$db>>2]|0; - $152 = HEAP32[$zName>>2]|0; - $153 = HEAP32[$pDb>>2]|0; - $154 = HEAP32[$153>>2]|0; - $155 = (_sqlite3FindIndex($151,$152,$154)|0); - $156 = ($155|0)!=(0|0); - if ($156) { - $157 = HEAP32[$9>>2]|0; - $158 = ($157|0)!=(0); - $159 = HEAP32[$0>>2]|0; - if ($158) { - $161 = HEAP32[$iDb>>2]|0; - _sqlite3CodeVerifySchema($159,$161); - break; - } else { - $160 = HEAP32[$zName>>2]|0; - HEAP32[$vararg_buffer39>>2] = $160; - _sqlite3ErrorMsg($159,26016,$vararg_buffer39); - break; - } - } - } else { - $162 = HEAP32[$pTab>>2]|0; - $163 = (($162) + 8|0); - $164 = HEAP32[$163>>2]|0; - HEAP32[$pLoop>>2] = $164; - HEAP32[$n>>2] = 1; - while(1) { - $165 = HEAP32[$pLoop>>2]|0; - $166 = ($165|0)!=(0|0); - if (!($166)) { - break; - } - $167 = HEAP32[$pLoop>>2]|0; - $168 = (($167) + 20|0); - $169 = HEAP32[$168>>2]|0; - HEAP32[$pLoop>>2] = $169; - $170 = HEAP32[$n>>2]|0; - $171 = (($170) + 1)|0; - HEAP32[$n>>2] = $171; - } - $172 = HEAP32[$db>>2]|0; - $173 = HEAP32[$pTab>>2]|0; - $174 = HEAP32[$173>>2]|0; - $175 = HEAP32[$n>>2]|0; - HEAP32[$vararg_buffer39>>2] = $174; - $vararg_ptr18 = (($vararg_buffer39) + 4|0); - HEAP32[$vararg_ptr18>>2] = $175; - $176 = (_sqlite3MPrintf($172,26040,$vararg_buffer39)|0); - HEAP32[$zName>>2] = $176; - $177 = HEAP32[$zName>>2]|0; - $178 = ($177|0)==(0|0); - if ($178) { - break; - } - } - $179 = HEAP32[$pDb>>2]|0; - $180 = HEAP32[$179>>2]|0; - HEAP32[$zDb>>2] = $180; - $181 = HEAP32[$0>>2]|0; - $182 = HEAP32[$iDb>>2]|0; - $183 = ($182|0)==(1); - $184 = $183 ? 14808 : 14832; - $185 = HEAP32[$zDb>>2]|0; - $186 = (_sqlite3AuthCheck($181,18,$184,0,$185)|0); - $187 = ($186|0)!=(0); - if (!($187)) { - HEAP32[$i>>2] = 1; - $188 = HEAP32[$iDb>>2]|0; - $189 = ($188|0)==(1); - $$ = $189 ? 3 : 1; - HEAP32[$i>>2] = $$; - $190 = HEAP32[$0>>2]|0; - $191 = HEAP32[$i>>2]|0; - $192 = HEAP32[$zName>>2]|0; - $193 = HEAP32[$pTab>>2]|0; - $194 = HEAP32[$193>>2]|0; - $195 = HEAP32[$zDb>>2]|0; - $196 = (_sqlite3AuthCheck($190,$191,$192,$194,$195)|0); - $197 = ($196|0)!=(0); - if (!($197)) { - $198 = HEAP32[$4>>2]|0; - $199 = ($198|0)==(0|0); - if ($199) { - $200 = HEAP32[$0>>2]|0; - $201 = (_sqlite3ExprListAppend($200,0,0)|0); - HEAP32[$4>>2] = $201; - $202 = HEAP32[$4>>2]|0; - $203 = ($202|0)==(0|0); - if ($203) { - break; - } - $204 = HEAP32[$0>>2]|0; - $205 = HEAP32[$204>>2]|0; - $206 = HEAP32[$pTab>>2]|0; - $207 = (($206) + 38|0); - $208 = HEAP16[$207>>1]|0; - $209 = $208 << 16 >> 16; - $210 = (($209) - 1)|0; - $211 = HEAP32[$pTab>>2]|0; - $212 = (($211) + 4|0); - $213 = HEAP32[$212>>2]|0; - $214 = (($213) + (($210*24)|0)|0); - $215 = HEAP32[$214>>2]|0; - $216 = (_sqlite3DbStrDup($205,$215)|0); - $217 = HEAP32[$4>>2]|0; - $218 = (($217) + 4|0); - $219 = HEAP32[$218>>2]|0; - $220 = (($219) + 4|0); - HEAP32[$220>>2] = $216; - $221 = HEAP32[$8>>2]|0; - $222 = $221&255; - $223 = HEAP32[$4>>2]|0; - $224 = (($223) + 4|0); - $225 = HEAP32[$224>>2]|0; - $226 = (($225) + 12|0); - HEAP8[$226>>0] = $222; - } - HEAP32[$i>>2] = 0; - while(1) { - $227 = HEAP32[$i>>2]|0; - $228 = HEAP32[$4>>2]|0; - $229 = HEAP32[$228>>2]|0; - $230 = ($227|0)<($229|0); - if (!($230)) { - break; - } - $231 = HEAP32[$i>>2]|0; - $232 = HEAP32[$4>>2]|0; - $233 = (($232) + 4|0); - $234 = HEAP32[$233>>2]|0; - $235 = (($234) + (($231*20)|0)|0); - $236 = HEAP32[$235>>2]|0; - HEAP32[$pExpr>>2] = $236; - $237 = HEAP32[$pExpr>>2]|0; - $238 = ($237|0)!=(0|0); - if ($238) { - $239 = HEAP32[$pExpr>>2]|0; - $240 = (($239) + 8|0); - $241 = HEAP32[$240>>2]|0; - $242 = (_sqlite3Strlen30($241)|0); - $243 = (1 + ($242))|0; - $244 = HEAP32[$nExtra>>2]|0; - $245 = (($244) + ($243))|0; - HEAP32[$nExtra>>2] = $245; - } - $246 = HEAP32[$i>>2]|0; - $247 = (($246) + 1)|0; - HEAP32[$i>>2] = $247; - } - $248 = HEAP32[$zName>>2]|0; - $249 = (_sqlite3Strlen30($248)|0); - HEAP32[$nName>>2] = $249; - $250 = HEAP32[$pPk>>2]|0; - $251 = ($250|0)!=(0|0); - if ($251) { - $252 = HEAP32[$pPk>>2]|0; - $253 = (($252) + 50|0); - $254 = HEAP16[$253>>1]|0; - $255 = $254&65535; - $256 = $255; - } else { - $256 = 1; - } - HEAP32[$nExtraCol>>2] = $256; - $257 = HEAP32[$db>>2]|0; - $258 = HEAP32[$4>>2]|0; - $259 = HEAP32[$258>>2]|0; - $260 = HEAP32[$nExtraCol>>2]|0; - $261 = (($259) + ($260))|0; - $262 = $261&65535; - $263 = HEAP32[$nName>>2]|0; - $264 = HEAP32[$nExtra>>2]|0; - $265 = (($263) + ($264))|0; - $266 = (($265) + 1)|0; - $267 = (_sqlite3AllocateIndexObject($257,$262,$266,$zExtra)|0); - HEAP32[$pIndex>>2] = $267; - $268 = HEAP32[$db>>2]|0; - $269 = (($268) + 64|0); - $270 = HEAP8[$269>>0]|0; - $271 = ($270<<24>>24)!=(0); - if (!($271)) { - $272 = HEAP32[$zExtra>>2]|0; - $273 = HEAP32[$pIndex>>2]|0; - HEAP32[$273>>2] = $272; - $274 = HEAP32[$nName>>2]|0; - $275 = (($274) + 1)|0; - $276 = HEAP32[$zExtra>>2]|0; - $277 = (($276) + ($275)|0); - HEAP32[$zExtra>>2] = $277; - $278 = HEAP32[$pIndex>>2]|0; - $279 = HEAP32[$278>>2]|0; - $280 = HEAP32[$zName>>2]|0; - $281 = HEAP32[$nName>>2]|0; - $282 = (($281) + 1)|0; - _memcpy(($279|0),($280|0),($282|0))|0; - $283 = HEAP32[$pTab>>2]|0; - $284 = HEAP32[$pIndex>>2]|0; - $285 = (($284) + 12|0); - HEAP32[$285>>2] = $283; - $286 = HEAP32[$5>>2]|0; - $287 = $286&255; - $288 = HEAP32[$pIndex>>2]|0; - $289 = (($288) + 54|0); - HEAP8[$289>>0] = $287; - $290 = HEAP32[$5>>2]|0; - $291 = ($290|0)!=(0); - $292 = $291&1; - $293 = HEAP32[$pIndex>>2]|0; - $294 = (($293) + 55|0); - $295 = $292&255; - $296 = HEAP8[$294>>0]|0; - $297 = $295 & 1; - $298 = ($297 << 3)&255; - $299 = $296 & -9; - $300 = $299 | $298; - HEAP8[$294>>0] = $300; - $301 = HEAP32[$pName>>2]|0; - $302 = ($301|0)!=(0|0); - $303 = $302 ? 0 : 1; - $304 = HEAP32[$pIndex>>2]|0; - $305 = (($304) + 55|0); - $306 = $303&255; - $307 = HEAP8[$305>>0]|0; - $308 = $306 & 3; - $309 = $307 & -4; - $310 = $309 | $308; - HEAP8[$305>>0] = $310; - $311 = HEAP32[$iDb>>2]|0; - $312 = HEAP32[$db>>2]|0; - $313 = (($312) + 16|0); - $314 = HEAP32[$313>>2]|0; - $315 = (($314) + ($311<<4)|0); - $316 = (($315) + 12|0); - $317 = HEAP32[$316>>2]|0; - $318 = HEAP32[$pIndex>>2]|0; - $319 = (($318) + 24|0); - HEAP32[$319>>2] = $317; - $320 = HEAP32[$4>>2]|0; - $321 = HEAP32[$320>>2]|0; - $322 = $321&65535; - $323 = HEAP32[$pIndex>>2]|0; - $324 = (($323) + 50|0); - HEAP16[$324>>1] = $322; - $325 = HEAP32[$7>>2]|0; - $326 = ($325|0)!=(0|0); - if ($326) { - $327 = HEAP32[$0>>2]|0; - $328 = HEAP32[$pTab>>2]|0; - $329 = HEAP32[$7>>2]|0; - _sqlite3ResolveSelfReference($327,$328,16,$329,0); - $330 = HEAP32[$7>>2]|0; - $331 = HEAP32[$pIndex>>2]|0; - $332 = (($331) + 36|0); - HEAP32[$332>>2] = $330; - HEAP32[$7>>2] = 0; - } - $333 = HEAP32[$pDb>>2]|0; - $334 = (($333) + 12|0); - $335 = HEAP32[$334>>2]|0; - $336 = (($335) + 76|0); - $337 = HEAP8[$336>>0]|0; - $338 = $337&255; - $339 = ($338|0)>=(4); - if ($339) { - HEAP32[$sortOrderMask>>2] = -1; - } else { - HEAP32[$sortOrderMask>>2] = 0; - } - HEAP32[$i>>2] = 0; - $340 = HEAP32[$4>>2]|0; - $341 = (($340) + 4|0); - $342 = HEAP32[$341>>2]|0; - HEAP32[$pListItem>>2] = $342; - while(1) { - $343 = HEAP32[$i>>2]|0; - $344 = HEAP32[$4>>2]|0; - $345 = HEAP32[$344>>2]|0; - $346 = ($343|0)<($345|0); - if (!($346)) { - break; - } - $347 = HEAP32[$pListItem>>2]|0; - $348 = (($347) + 4|0); - $349 = HEAP32[$348>>2]|0; - HEAP32[$zColName>>2] = $349; - HEAP32[$j>>2] = 0; - $350 = HEAP32[$pTab>>2]|0; - $351 = (($350) + 4|0); - $352 = HEAP32[$351>>2]|0; - HEAP32[$pTabCol>>2] = $352; - while(1) { - $353 = HEAP32[$j>>2]|0; - $354 = HEAP32[$pTab>>2]|0; - $355 = (($354) + 38|0); - $356 = HEAP16[$355>>1]|0; - $357 = $356 << 16 >> 16; - $358 = ($353|0)<($357|0); - if (!($358)) { - break; - } - $359 = HEAP32[$zColName>>2]|0; - $360 = HEAP32[$pTabCol>>2]|0; - $361 = HEAP32[$360>>2]|0; - $362 = (_sqlite3_stricmp($359,$361)|0); - $363 = ($362|0)==(0); - if ($363) { - break; - } - $364 = HEAP32[$j>>2]|0; - $365 = (($364) + 1)|0; - HEAP32[$j>>2] = $365; - $366 = HEAP32[$pTabCol>>2]|0; - $367 = (($366) + 24|0); - HEAP32[$pTabCol>>2] = $367; - } - $368 = HEAP32[$j>>2]|0; - $369 = HEAP32[$pTab>>2]|0; - $370 = (($369) + 38|0); - $371 = HEAP16[$370>>1]|0; - $372 = $371 << 16 >> 16; - $373 = ($368|0)>=($372|0); - if ($373) { - label = 65; - break; - } - $380 = HEAP32[$j>>2]|0; - $381 = $380&65535; - $382 = HEAP32[$i>>2]|0; - $383 = HEAP32[$pIndex>>2]|0; - $384 = (($383) + 4|0); - $385 = HEAP32[$384>>2]|0; - $386 = (($385) + ($382<<1)|0); - HEAP16[$386>>1] = $381; - $387 = HEAP32[$pListItem>>2]|0; - $388 = HEAP32[$387>>2]|0; - $389 = ($388|0)!=(0|0); - if ($389) { - $390 = HEAP32[$pListItem>>2]|0; - $391 = HEAP32[$390>>2]|0; - $392 = (($391) + 8|0); - $393 = HEAP32[$392>>2]|0; - HEAP32[$zColl>>2] = $393; - $394 = HEAP32[$zColl>>2]|0; - $395 = (_sqlite3Strlen30($394)|0); - $396 = (($395) + 1)|0; - HEAP32[$nColl>>2] = $396; - $397 = HEAP32[$zExtra>>2]|0; - $398 = HEAP32[$zColl>>2]|0; - $399 = HEAP32[$nColl>>2]|0; - _memcpy(($397|0),($398|0),($399|0))|0; - $400 = HEAP32[$zExtra>>2]|0; - HEAP32[$zColl>>2] = $400; - $401 = HEAP32[$nColl>>2]|0; - $402 = HEAP32[$zExtra>>2]|0; - $403 = (($402) + ($401)|0); - HEAP32[$zExtra>>2] = $403; - $404 = HEAP32[$nColl>>2]|0; - $405 = HEAP32[$nExtra>>2]|0; - $406 = (($405) - ($404))|0; - HEAP32[$nExtra>>2] = $406; - } else { - $407 = HEAP32[$j>>2]|0; - $408 = HEAP32[$pTab>>2]|0; - $409 = (($408) + 4|0); - $410 = HEAP32[$409>>2]|0; - $411 = (($410) + (($407*24)|0)|0); - $412 = (($411) + 16|0); - $413 = HEAP32[$412>>2]|0; - HEAP32[$zColl>>2] = $413; - $414 = HEAP32[$zColl>>2]|0; - $415 = ($414|0)!=(0|0); - $$1 = $415 ? $413 : 3320; - HEAP32[$zColl>>2] = $$1; - } - $416 = HEAP32[$db>>2]|0; - $417 = (($416) + 132|0); - $418 = (($417) + 5|0); - $419 = HEAP8[$418>>0]|0; - $420 = ($419<<24>>24)!=(0); - if (!($420)) { - $421 = HEAP32[$0>>2]|0; - $422 = HEAP32[$zColl>>2]|0; - $423 = (_sqlite3LocateCollSeq($421,$422)|0); - $424 = ($423|0)!=(0|0); - if (!($424)) { - break L1; - } - } - $425 = HEAP32[$zColl>>2]|0; - $426 = HEAP32[$i>>2]|0; - $427 = HEAP32[$pIndex>>2]|0; - $428 = (($427) + 32|0); - $429 = HEAP32[$428>>2]|0; - $430 = (($429) + ($426<<2)|0); - HEAP32[$430>>2] = $425; - $431 = HEAP32[$pListItem>>2]|0; - $432 = (($431) + 12|0); - $433 = HEAP8[$432>>0]|0; - $434 = $433&255; - $435 = HEAP32[$sortOrderMask>>2]|0; - $436 = $434 & $435; - HEAP32[$requestedSortOrder>>2] = $436; - $437 = HEAP32[$requestedSortOrder>>2]|0; - $438 = $437&255; - $439 = HEAP32[$i>>2]|0; - $440 = HEAP32[$pIndex>>2]|0; - $441 = (($440) + 28|0); - $442 = HEAP32[$441>>2]|0; - $443 = (($442) + ($439)|0); - HEAP8[$443>>0] = $438; - $444 = HEAP32[$j>>2]|0; - $445 = HEAP32[$pTab>>2]|0; - $446 = (($445) + 4|0); - $447 = HEAP32[$446>>2]|0; - $448 = (($447) + (($444*24)|0)|0); - $449 = (($448) + 20|0); - $450 = HEAP8[$449>>0]|0; - $451 = $450&255; - $452 = ($451|0)==(0); - if ($452) { - $453 = HEAP32[$pIndex>>2]|0; - $454 = (($453) + 55|0); - $455 = HEAP8[$454>>0]|0; - $456 = $455 & -9; - HEAP8[$454>>0] = $456; - } - $457 = HEAP32[$i>>2]|0; - $458 = (($457) + 1)|0; - HEAP32[$i>>2] = $458; - $459 = HEAP32[$pListItem>>2]|0; - $460 = (($459) + 20|0); - HEAP32[$pListItem>>2] = $460; - } - if ((label|0) == 65) { - $374 = HEAP32[$0>>2]|0; - $375 = HEAP32[$pTab>>2]|0; - $376 = HEAP32[$375>>2]|0; - $377 = HEAP32[$zColName>>2]|0; - HEAP32[$vararg_buffer39>>2] = $376; - $vararg_ptr22 = (($vararg_buffer39) + 4|0); - HEAP32[$vararg_ptr22>>2] = $377; - _sqlite3ErrorMsg($374,26064,$vararg_buffer39); - $378 = HEAP32[$0>>2]|0; - $379 = (($378) + 17|0); - HEAP8[$379>>0] = 1; - break; - } - $461 = HEAP32[$pPk>>2]|0; - $462 = ($461|0)!=(0|0); - L97: do { - if ($462) { - HEAP32[$j>>2] = 0; - while(1) { - $463 = HEAP32[$j>>2]|0; - $464 = HEAP32[$pPk>>2]|0; - $465 = (($464) + 50|0); - $466 = HEAP16[$465>>1]|0; - $467 = $466&65535; - $468 = ($463|0)<($467|0); - if (!($468)) { - break L97; - } - $469 = HEAP32[$j>>2]|0; - $470 = HEAP32[$pPk>>2]|0; - $471 = (($470) + 4|0); - $472 = HEAP32[$471>>2]|0; - $473 = (($472) + ($469<<1)|0); - $474 = HEAP16[$473>>1]|0; - $475 = $474 << 16 >> 16; - HEAP32[$x>>2] = $475; - $476 = HEAP32[$pIndex>>2]|0; - $477 = (($476) + 4|0); - $478 = HEAP32[$477>>2]|0; - $479 = HEAP32[$pIndex>>2]|0; - $480 = (($479) + 50|0); - $481 = HEAP16[$480>>1]|0; - $482 = $481&65535; - $483 = HEAP32[$x>>2]|0; - $484 = (_hasColumn($478,$482,$483)|0); - $485 = ($484|0)!=(0); - if ($485) { - $486 = HEAP32[$pIndex>>2]|0; - $487 = (($486) + 52|0); - $488 = HEAP16[$487>>1]|0; - $489 = (($488) + -1)<<16>>16; - HEAP16[$487>>1] = $489; - } else { - $490 = HEAP32[$x>>2]|0; - $491 = $490&65535; - $492 = HEAP32[$i>>2]|0; - $493 = HEAP32[$pIndex>>2]|0; - $494 = (($493) + 4|0); - $495 = HEAP32[$494>>2]|0; - $496 = (($495) + ($492<<1)|0); - HEAP16[$496>>1] = $491; - $497 = HEAP32[$j>>2]|0; - $498 = HEAP32[$pPk>>2]|0; - $499 = (($498) + 32|0); - $500 = HEAP32[$499>>2]|0; - $501 = (($500) + ($497<<2)|0); - $502 = HEAP32[$501>>2]|0; - $503 = HEAP32[$i>>2]|0; - $504 = HEAP32[$pIndex>>2]|0; - $505 = (($504) + 32|0); - $506 = HEAP32[$505>>2]|0; - $507 = (($506) + ($503<<2)|0); - HEAP32[$507>>2] = $502; - $508 = HEAP32[$j>>2]|0; - $509 = HEAP32[$pPk>>2]|0; - $510 = (($509) + 28|0); - $511 = HEAP32[$510>>2]|0; - $512 = (($511) + ($508)|0); - $513 = HEAP8[$512>>0]|0; - $514 = HEAP32[$i>>2]|0; - $515 = HEAP32[$pIndex>>2]|0; - $516 = (($515) + 28|0); - $517 = HEAP32[$516>>2]|0; - $518 = (($517) + ($514)|0); - HEAP8[$518>>0] = $513; - $519 = HEAP32[$i>>2]|0; - $520 = (($519) + 1)|0; - HEAP32[$i>>2] = $520; - } - $521 = HEAP32[$j>>2]|0; - $522 = (($521) + 1)|0; - HEAP32[$j>>2] = $522; - } - } else { - $523 = HEAP32[$i>>2]|0; - $524 = HEAP32[$pIndex>>2]|0; - $525 = (($524) + 4|0); - $526 = HEAP32[$525>>2]|0; - $527 = (($526) + ($523<<1)|0); - HEAP16[$527>>1] = -1; - $528 = HEAP32[$i>>2]|0; - $529 = HEAP32[$pIndex>>2]|0; - $530 = (($529) + 32|0); - $531 = HEAP32[$530>>2]|0; - $532 = (($531) + ($528<<2)|0); - HEAP32[$532>>2] = 3320; - } - } while(0); - $533 = HEAP32[$pIndex>>2]|0; - _sqlite3DefaultRowEst($533); - $534 = HEAP32[$0>>2]|0; - $535 = (($534) + 484|0); - $536 = HEAP32[$535>>2]|0; - $537 = ($536|0)==(0|0); - if ($537) { - $538 = HEAP32[$pIndex>>2]|0; - _estimateIndexWidth($538); - } - $539 = HEAP32[$pTab>>2]|0; - $540 = HEAP32[$0>>2]|0; - $541 = (($540) + 484|0); - $542 = HEAP32[$541>>2]|0; - $543 = ($539|0)==($542|0); - L111: do { - if ($543) { - $544 = HEAP32[$pTab>>2]|0; - $545 = (($544) + 8|0); - $546 = HEAP32[$545>>2]|0; - HEAP32[$pIdx>>2] = $546; - while(1) { - $547 = HEAP32[$pIdx>>2]|0; - $548 = ($547|0)!=(0|0); - if (!($548)) { - break L111; - } - $549 = HEAP32[$pIdx>>2]|0; - $550 = (($549) + 50|0); - $551 = HEAP16[$550>>1]|0; - $552 = $551&65535; - $553 = HEAP32[$pIndex>>2]|0; - $554 = (($553) + 50|0); - $555 = HEAP16[$554>>1]|0; - $556 = $555&65535; - $557 = ($552|0)!=($556|0); - if (!($557)) { - HEAP32[$k>>2] = 0; - while(1) { - $558 = HEAP32[$k>>2]|0; - $559 = HEAP32[$pIdx>>2]|0; - $560 = (($559) + 50|0); - $561 = HEAP16[$560>>1]|0; - $562 = $561&65535; - $563 = ($558|0)<($562|0); - if (!($563)) { - break; - } - $564 = HEAP32[$k>>2]|0; - $565 = HEAP32[$pIdx>>2]|0; - $566 = (($565) + 4|0); - $567 = HEAP32[$566>>2]|0; - $568 = (($567) + ($564<<1)|0); - $569 = HEAP16[$568>>1]|0; - $570 = $569 << 16 >> 16; - $571 = HEAP32[$k>>2]|0; - $572 = HEAP32[$pIndex>>2]|0; - $573 = (($572) + 4|0); - $574 = HEAP32[$573>>2]|0; - $575 = (($574) + ($571<<1)|0); - $576 = HEAP16[$575>>1]|0; - $577 = $576 << 16 >> 16; - $578 = ($570|0)!=($577|0); - if ($578) { - break; - } - $579 = HEAP32[$k>>2]|0; - $580 = HEAP32[$pIdx>>2]|0; - $581 = (($580) + 32|0); - $582 = HEAP32[$581>>2]|0; - $583 = (($582) + ($579<<2)|0); - $584 = HEAP32[$583>>2]|0; - HEAP32[$z1>>2] = $584; - $585 = HEAP32[$k>>2]|0; - $586 = HEAP32[$pIndex>>2]|0; - $587 = (($586) + 32|0); - $588 = HEAP32[$587>>2]|0; - $589 = (($588) + ($585<<2)|0); - $590 = HEAP32[$589>>2]|0; - HEAP32[$z2>>2] = $590; - $591 = HEAP32[$z1>>2]|0; - $592 = HEAP32[$z2>>2]|0; - $593 = ($591|0)!=($592|0); - if ($593) { - $594 = HEAP32[$z1>>2]|0; - $595 = HEAP32[$z2>>2]|0; - $596 = (_sqlite3_stricmp($594,$595)|0); - $597 = ($596|0)!=(0); - if ($597) { - break; - } - } - $598 = HEAP32[$k>>2]|0; - $599 = (($598) + 1)|0; - HEAP32[$k>>2] = $599; - } - $600 = HEAP32[$k>>2]|0; - $601 = HEAP32[$pIdx>>2]|0; - $602 = (($601) + 50|0); - $603 = HEAP16[$602>>1]|0; - $604 = $603&65535; - $605 = ($600|0)==($604|0); - if ($605) { - break; - } - } - $636 = HEAP32[$pIdx>>2]|0; - $637 = (($636) + 20|0); - $638 = HEAP32[$637>>2]|0; - HEAP32[$pIdx>>2] = $638; - } - $606 = HEAP32[$pIdx>>2]|0; - $607 = (($606) + 54|0); - $608 = HEAP8[$607>>0]|0; - $609 = $608&255; - $610 = HEAP32[$pIndex>>2]|0; - $611 = (($610) + 54|0); - $612 = HEAP8[$611>>0]|0; - $613 = $612&255; - $614 = ($609|0)!=($613|0); - if (!($614)) { - break L1; - } - $615 = HEAP32[$pIdx>>2]|0; - $616 = (($615) + 54|0); - $617 = HEAP8[$616>>0]|0; - $618 = $617&255; - $619 = ($618|0)==(10); - do { - if (!($619)) { - $620 = HEAP32[$pIndex>>2]|0; - $621 = (($620) + 54|0); - $622 = HEAP8[$621>>0]|0; - $623 = $622&255; - $624 = ($623|0)==(10); - if ($624) { - break; - } - $625 = HEAP32[$0>>2]|0; - HEAP32[$vararg_buffer39>>2] = 0; - _sqlite3ErrorMsg($625,26096,$vararg_buffer39); - } - } while(0); - $626 = HEAP32[$pIdx>>2]|0; - $627 = (($626) + 54|0); - $628 = HEAP8[$627>>0]|0; - $629 = $628&255; - $630 = ($629|0)==(10); - if (!($630)) { - break L1; - } - $631 = HEAP32[$pIndex>>2]|0; - $632 = (($631) + 54|0); - $633 = HEAP8[$632>>0]|0; - $634 = HEAP32[$pIdx>>2]|0; - $635 = (($634) + 54|0); - HEAP8[$635>>0] = $633; - break L1; - } - } while(0); - $639 = HEAP32[$db>>2]|0; - $640 = (($639) + 132|0); - $641 = (($640) + 5|0); - $642 = HEAP8[$641>>0]|0; - $643 = ($642<<24>>24)!=(0); - do { - if ($643) { - $644 = HEAP32[$pIndex>>2]|0; - $645 = (($644) + 24|0); - $646 = HEAP32[$645>>2]|0; - $647 = (($646) + 24|0); - $648 = HEAP32[$pIndex>>2]|0; - $649 = HEAP32[$648>>2]|0; - $650 = HEAP32[$pIndex>>2]|0; - $651 = HEAP32[$650>>2]|0; - $652 = (_sqlite3Strlen30($651)|0); - $653 = HEAP32[$pIndex>>2]|0; - $654 = (_sqlite3HashInsert($647,$649,$652,$653)|0); - HEAP32[$p>>2] = $654; - $655 = HEAP32[$p>>2]|0; - $656 = ($655|0)!=(0|0); - $657 = HEAP32[$db>>2]|0; - if ($656) { - $658 = (($657) + 64|0); - HEAP8[$658>>0] = 1; - break L1; - } - $659 = (($657) + 24|0); - $660 = HEAP32[$659>>2]|0; - $661 = $660 | 2; - HEAP32[$659>>2] = $661; - $662 = HEAP32[$3>>2]|0; - $663 = ($662|0)!=(0|0); - if (!($663)) { - break; - } - $664 = HEAP32[$db>>2]|0; - $665 = (($664) + 132|0); - $666 = HEAP32[$665>>2]|0; - $667 = HEAP32[$pIndex>>2]|0; - $668 = (($667) + 44|0); - HEAP32[$668>>2] = $666; - } else { - $669 = HEAP32[$0>>2]|0; - $670 = (($669) + 64|0); - $671 = HEAP32[$670>>2]|0; - $672 = ($671|0)==(0); - if (!($672)) { - break; - } - $673 = HEAP32[$pTab>>2]|0; - $674 = (($673) + 44|0); - $675 = HEAP8[$674>>0]|0; - $676 = $675&255; - $677 = $676 & 32; - $678 = ($677|0)==(0); - if (!($678)) { - $679 = HEAP32[$3>>2]|0; - $680 = ($679|0)!=(0|0); - if (!($680)) { - break; - } - } - $681 = HEAP32[$0>>2]|0; - $682 = (($681) + 72|0); - $683 = HEAP32[$682>>2]|0; - $684 = (($683) + 1)|0; - HEAP32[$682>>2] = $684; - HEAP32[$iMem>>2] = $684; - $685 = HEAP32[$0>>2]|0; - $686 = (_sqlite3GetVdbe($685)|0); - HEAP32[$v>>2] = $686; - $687 = HEAP32[$v>>2]|0; - $688 = ($687|0)==(0|0); - if ($688) { - break L1; - } - $689 = HEAP32[$0>>2]|0; - $690 = HEAP32[$iDb>>2]|0; - _sqlite3BeginWriteOperation($689,1,$690); - $691 = HEAP32[$v>>2]|0; - $692 = HEAP32[$iDb>>2]|0; - $693 = HEAP32[$iMem>>2]|0; - (_sqlite3VdbeAddOp2($691,117,$692,$693)|0); - $694 = HEAP32[$6>>2]|0; - $695 = ($694|0)!=(0|0); - if ($695) { - $696 = HEAP32[$0>>2]|0; - $697 = (($696) + 504|0); - $698 = HEAP32[$697>>2]|0; - $699 = HEAP32[$pName>>2]|0; - $700 = HEAP32[$699>>2]|0; - $701 = $698; - $702 = $700; - $703 = (($701) - ($702))|0; - $704 = HEAP32[$0>>2]|0; - $705 = (($704) + 504|0); - $706 = (($705) + 4|0); - $707 = HEAP32[$706>>2]|0; - $708 = (($703) + ($707))|0; - HEAP32[$n1>>2] = $708; - $709 = HEAP32[$n1>>2]|0; - $710 = (($709) - 1)|0; - $711 = HEAP32[$pName>>2]|0; - $712 = HEAP32[$711>>2]|0; - $713 = (($712) + ($710)|0); - $714 = HEAP8[$713>>0]|0; - $715 = $714 << 24 >> 24; - $716 = ($715|0)==(59); - if ($716) { - $717 = HEAP32[$n1>>2]|0; - $718 = (($717) + -1)|0; - HEAP32[$n1>>2] = $718; - } - $719 = HEAP32[$db>>2]|0; - $720 = HEAP32[$5>>2]|0; - $721 = ($720|0)==(0); - $722 = $721 ? 1472 : 26168; - $723 = HEAP32[$n1>>2]|0; - $724 = HEAP32[$pName>>2]|0; - $725 = HEAP32[$724>>2]|0; - HEAP32[$vararg_buffer39>>2] = $722; - $vararg_ptr29 = (($vararg_buffer39) + 4|0); - HEAP32[$vararg_ptr29>>2] = $723; - $vararg_ptr30 = (($vararg_buffer39) + 8|0); - HEAP32[$vararg_ptr30>>2] = $725; - $726 = (_sqlite3MPrintf($719,26144,$vararg_buffer39)|0); - HEAP32[$zStmt>>2] = $726; - } else { - HEAP32[$zStmt>>2] = 0; - } - $727 = HEAP32[$0>>2]|0; - $728 = HEAP32[$iDb>>2]|0; - $729 = HEAP32[$db>>2]|0; - $730 = (($729) + 16|0); - $731 = HEAP32[$730>>2]|0; - $732 = (($731) + ($728<<4)|0); - $733 = HEAP32[$732>>2]|0; - $734 = HEAP32[$iDb>>2]|0; - $735 = ($734|0)==(1); - $736 = $735 ? 14808 : 14832; - $737 = HEAP32[$pIndex>>2]|0; - $738 = HEAP32[$737>>2]|0; - $739 = HEAP32[$pTab>>2]|0; - $740 = HEAP32[$739>>2]|0; - $741 = HEAP32[$iMem>>2]|0; - $742 = HEAP32[$zStmt>>2]|0; - HEAP32[$vararg_buffer39>>2] = $733; - $vararg_ptr34 = (($vararg_buffer39) + 4|0); - HEAP32[$vararg_ptr34>>2] = $736; - $vararg_ptr35 = (($vararg_buffer39) + 8|0); - HEAP32[$vararg_ptr35>>2] = $738; - $vararg_ptr36 = (($vararg_buffer39) + 12|0); - HEAP32[$vararg_ptr36>>2] = $740; - $vararg_ptr37 = (($vararg_buffer39) + 16|0); - HEAP32[$vararg_ptr37>>2] = $741; - $vararg_ptr38 = (($vararg_buffer39) + 20|0); - HEAP32[$vararg_ptr38>>2] = $742; - _sqlite3NestedParse($727,26176,$vararg_buffer39); - $743 = HEAP32[$db>>2]|0; - $744 = HEAP32[$zStmt>>2]|0; - _sqlite3DbFree($743,$744); - $745 = HEAP32[$3>>2]|0; - $746 = ($745|0)!=(0|0); - if (!($746)) { - break; - } - $747 = HEAP32[$0>>2]|0; - $748 = HEAP32[$pIndex>>2]|0; - $749 = HEAP32[$iMem>>2]|0; - _sqlite3RefillIndex($747,$748,$749); - $750 = HEAP32[$0>>2]|0; - $751 = HEAP32[$iDb>>2]|0; - _sqlite3ChangeCookie($750,$751); - $752 = HEAP32[$v>>2]|0; - $753 = HEAP32[$iDb>>2]|0; - $754 = HEAP32[$db>>2]|0; - $755 = HEAP32[$pIndex>>2]|0; - $756 = HEAP32[$755>>2]|0; - HEAP32[$vararg_buffer39>>2] = $756; - $757 = (_sqlite3MPrintf($754,26224,$vararg_buffer39)|0); - _sqlite3VdbeAddParseSchemaOp($752,$753,$757); - $758 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp1($758,139,0)|0); - } - } while(0); - $759 = HEAP32[$db>>2]|0; - $760 = (($759) + 132|0); - $761 = (($760) + 5|0); - $762 = HEAP8[$761>>0]|0; - $763 = $762&255; - $764 = ($763|0)!=(0); - if (!($764)) { - $765 = HEAP32[$3>>2]|0; - $766 = ($765|0)==(0|0); - if (!($766)) { - break; - } - } - $767 = HEAP32[$5>>2]|0; - $768 = ($767|0)!=(5); - do { - if ($768) { - label = 123; - } else { - $769 = HEAP32[$pTab>>2]|0; - $770 = (($769) + 8|0); - $771 = HEAP32[$770>>2]|0; - $772 = ($771|0)==(0|0); - if ($772) { - label = 123; - break; - } - $773 = HEAP32[$pTab>>2]|0; - $774 = (($773) + 8|0); - $775 = HEAP32[$774>>2]|0; - $776 = (($775) + 54|0); - $777 = HEAP8[$776>>0]|0; - $778 = $777&255; - $779 = ($778|0)==(5); - if ($779) { - label = 123; - break; - } - $788 = HEAP32[$pTab>>2]|0; - $789 = (($788) + 8|0); - $790 = HEAP32[$789>>2]|0; - HEAP32[$pOther>>2] = $790; - while(1) { - $791 = HEAP32[$pOther>>2]|0; - $792 = (($791) + 20|0); - $793 = HEAP32[$792>>2]|0; - $794 = ($793|0)!=(0|0); - if ($794) { - $795 = HEAP32[$pOther>>2]|0; - $796 = (($795) + 20|0); - $797 = HEAP32[$796>>2]|0; - $798 = (($797) + 54|0); - $799 = HEAP8[$798>>0]|0; - $800 = $799&255; - $801 = ($800|0)!=(5); - $824 = $801; - } else { - $824 = 0; - } - $802 = HEAP32[$pOther>>2]|0; - $803 = (($802) + 20|0); - $804 = HEAP32[$803>>2]|0; - if (!($824)) { - break; - } - HEAP32[$pOther>>2] = $804; - } - $805 = HEAP32[$pIndex>>2]|0; - $806 = (($805) + 20|0); - HEAP32[$806>>2] = $804; - $807 = HEAP32[$pIndex>>2]|0; - $808 = HEAP32[$pOther>>2]|0; - $809 = (($808) + 20|0); - HEAP32[$809>>2] = $807; - } - } while(0); - if ((label|0) == 123) { - $780 = HEAP32[$pTab>>2]|0; - $781 = (($780) + 8|0); - $782 = HEAP32[$781>>2]|0; - $783 = HEAP32[$pIndex>>2]|0; - $784 = (($783) + 20|0); - HEAP32[$784>>2] = $782; - $785 = HEAP32[$pIndex>>2]|0; - $786 = HEAP32[$pTab>>2]|0; - $787 = (($786) + 8|0); - HEAP32[$787>>2] = $785; - } - $810 = HEAP32[$pIndex>>2]|0; - HEAP32[$pRet>>2] = $810; - HEAP32[$pIndex>>2] = 0; - } - } - } - } - } - } - } while(0); - $811 = HEAP32[$pIndex>>2]|0; - $812 = ($811|0)!=(0|0); - if (!($812)) { - $815 = HEAP32[$db>>2]|0; - $816 = HEAP32[$7>>2]|0; - _sqlite3ExprDelete($815,$816); - $817 = HEAP32[$db>>2]|0; - $818 = HEAP32[$4>>2]|0; - _sqlite3ExprListDelete($817,$818); - $819 = HEAP32[$db>>2]|0; - $820 = HEAP32[$3>>2]|0; - _sqlite3SrcListDelete($819,$820); - $821 = HEAP32[$db>>2]|0; - $822 = HEAP32[$zName>>2]|0; - _sqlite3DbFree($821,$822); - $823 = HEAP32[$pRet>>2]|0; - STACKTOP = sp;return ($823|0); - } - $813 = HEAP32[$db>>2]|0; - $814 = HEAP32[$pIndex>>2]|0; - _freeIndex($813,$814); - $815 = HEAP32[$db>>2]|0; - $816 = HEAP32[$7>>2]|0; - _sqlite3ExprDelete($815,$816); - $817 = HEAP32[$db>>2]|0; - $818 = HEAP32[$4>>2]|0; - _sqlite3ExprListDelete($817,$818); - $819 = HEAP32[$db>>2]|0; - $820 = HEAP32[$3>>2]|0; - _sqlite3SrcListDelete($819,$820); - $821 = HEAP32[$db>>2]|0; - $822 = HEAP32[$zName>>2]|0; - _sqlite3DbFree($821,$822); - $823 = HEAP32[$pRet>>2]|0; - STACKTOP = sp;return ($823|0); -} -function _sqlite3AddCheckConstraint($pParse,$pCheckExpr) { - $pParse = $pParse|0; - $pCheckExpr = $pCheckExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $pTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $pTab = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pCheckExpr; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 484|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pTab>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$pTab>>2]|0; - $8 = ($7|0)!=(0|0); - if ($8) { - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 451|0); - $11 = HEAP8[$10>>0]|0; - $12 = ($11<<24>>24)!=(0); - if (!($12)) { - $13 = HEAP32[$db>>2]|0; - $14 = (($13) + 132|0); - $15 = (($14) + 4|0); - $16 = HEAP8[$15>>0]|0; - $17 = $16&255; - $18 = HEAP32[$db>>2]|0; - $19 = (($18) + 16|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($20) + ($17<<4)|0); - $22 = (($21) + 4|0); - $23 = HEAP32[$22>>2]|0; - $24 = (_sqlite3BtreeIsReadonly($23)|0); - $25 = ($24|0)!=(0); - if (!($25)) { - $26 = HEAP32[$0>>2]|0; - $27 = HEAP32[$pTab>>2]|0; - $28 = (($27) + 24|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$1>>2]|0; - $31 = (_sqlite3ExprListAppend($26,$29,$30)|0); - $32 = HEAP32[$pTab>>2]|0; - $33 = (($32) + 24|0); - HEAP32[$33>>2] = $31; - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 320|0); - $36 = (($35) + 4|0); - $37 = HEAP32[$36>>2]|0; - $38 = ($37|0)!=(0); - if (!($38)) { - STACKTOP = sp;return; - } - $39 = HEAP32[$0>>2]|0; - $40 = HEAP32[$pTab>>2]|0; - $41 = (($40) + 24|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$0>>2]|0; - $44 = (($43) + 320|0); - _sqlite3ExprListSetName($39,$42,$44,1); - STACKTOP = sp;return; - } - } - } - $45 = HEAP32[$0>>2]|0; - $46 = HEAP32[$45>>2]|0; - $47 = HEAP32[$1>>2]|0; - _sqlite3ExprDelete($46,$47); - STACKTOP = sp;return; -} -function _sqlite3CreateForeignKey($pParse,$pFromCol,$pTo,$pToCol,$flags) { - $pParse = $pParse|0; - $pFromCol = $pFromCol|0; - $pTo = $pTo|0; - $pToCol = $pToCol|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; - var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0; - var $iCol = 0, $j = 0, $n = 0, $nByte = 0, $nCol = 0, $p = 0, $pFKey = 0, $pNextTo = 0, $vararg_buffer4 = 0, $vararg_ptr1 = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer4 = sp; - $0 = sp + 68|0; - $1 = sp + 64|0; - $2 = sp + 60|0; - $3 = sp + 56|0; - $4 = sp + 52|0; - $db = sp + 48|0; - $pFKey = sp + 44|0; - $pNextTo = sp + 40|0; - $p = sp + 36|0; - $nByte = sp + 32|0; - $i = sp + 28|0; - $nCol = sp + 24|0; - $z = sp + 20|0; - $iCol = sp + 16|0; - $j = sp + 12|0; - $n = sp + 8|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pFromCol; - HEAP32[$2>>2] = $pTo; - HEAP32[$3>>2] = $pToCol; - HEAP32[$4>>2] = $flags; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - HEAP32[$pFKey>>2] = 0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 484|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$p>>2] = $9; - $10 = HEAP32[$p>>2]|0; - $11 = ($10|0)==(0|0); - L1: do { - if (!($11)) { - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 451|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14&255; - $16 = ($15|0)!=(0); - if (!($16)) { - $17 = HEAP32[$1>>2]|0; - $18 = ($17|0)==(0|0); - if ($18) { - $19 = HEAP32[$p>>2]|0; - $20 = (($19) + 38|0); - $21 = HEAP16[$20>>1]|0; - $22 = $21 << 16 >> 16; - $23 = (($22) - 1)|0; - HEAP32[$iCol>>2] = $23; - $24 = HEAP32[$iCol>>2]|0; - $25 = ($24|0)<(0); - if ($25) { - break; - } - $26 = HEAP32[$3>>2]|0; - $27 = ($26|0)!=(0|0); - if ($27) { - $28 = HEAP32[$3>>2]|0; - $29 = HEAP32[$28>>2]|0; - $30 = ($29|0)!=(1); - if ($30) { - $31 = HEAP32[$0>>2]|0; - $32 = HEAP32[$iCol>>2]|0; - $33 = HEAP32[$p>>2]|0; - $34 = (($33) + 4|0); - $35 = HEAP32[$34>>2]|0; - $36 = (($35) + (($32*24)|0)|0); - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer4>>2] = $37; - $vararg_ptr1 = (($vararg_buffer4) + 4|0); - HEAP32[$vararg_ptr1>>2] = $38; - _sqlite3ErrorMsg($31,25592,$vararg_buffer4); - break; - } - } - HEAP32[$nCol>>2] = 1; - } else { - $39 = HEAP32[$3>>2]|0; - $40 = ($39|0)!=(0|0); - if ($40) { - $41 = HEAP32[$3>>2]|0; - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$1>>2]|0; - $44 = HEAP32[$43>>2]|0; - $45 = ($42|0)!=($44|0); - if ($45) { - $46 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($46,25656,$vararg_buffer4); - break; - } - } - $47 = HEAP32[$1>>2]|0; - $48 = HEAP32[$47>>2]|0; - HEAP32[$nCol>>2] = $48; - } - $49 = HEAP32[$nCol>>2]|0; - $50 = (($49) - 1)|0; - $51 = $50<<3; - $52 = (44 + ($51))|0; - $53 = HEAP32[$2>>2]|0; - $54 = (($53) + 4|0); - $55 = HEAP32[$54>>2]|0; - $56 = (($52) + ($55))|0; - $57 = (($56) + 1)|0; - HEAP32[$nByte>>2] = $57; - $58 = HEAP32[$3>>2]|0; - $59 = ($58|0)!=(0|0); - L17: do { - if ($59) { - HEAP32[$i>>2] = 0; - while(1) { - $60 = HEAP32[$i>>2]|0; - $61 = HEAP32[$3>>2]|0; - $62 = HEAP32[$61>>2]|0; - $63 = ($60|0)<($62|0); - if (!($63)) { - break L17; - } - $64 = HEAP32[$i>>2]|0; - $65 = HEAP32[$3>>2]|0; - $66 = (($65) + 4|0); - $67 = HEAP32[$66>>2]|0; - $68 = (($67) + (($64*20)|0)|0); - $69 = (($68) + 4|0); - $70 = HEAP32[$69>>2]|0; - $71 = (_sqlite3Strlen30($70)|0); - $72 = (($71) + 1)|0; - $73 = HEAP32[$nByte>>2]|0; - $74 = (($73) + ($72))|0; - HEAP32[$nByte>>2] = $74; - $75 = HEAP32[$i>>2]|0; - $76 = (($75) + 1)|0; - HEAP32[$i>>2] = $76; - } - } - } while(0); - $77 = HEAP32[$db>>2]|0; - $78 = HEAP32[$nByte>>2]|0; - $79 = (_sqlite3DbMallocZero($77,$78)|0); - HEAP32[$pFKey>>2] = $79; - $80 = HEAP32[$pFKey>>2]|0; - $81 = ($80|0)==(0|0); - if (!($81)) { - $82 = HEAP32[$p>>2]|0; - $83 = HEAP32[$pFKey>>2]|0; - HEAP32[$83>>2] = $82; - $84 = HEAP32[$p>>2]|0; - $85 = (($84) + 16|0); - $86 = HEAP32[$85>>2]|0; - $87 = HEAP32[$pFKey>>2]|0; - $88 = (($87) + 4|0); - HEAP32[$88>>2] = $86; - $89 = HEAP32[$nCol>>2]|0; - $90 = HEAP32[$pFKey>>2]|0; - $91 = (($90) + 36|0); - $92 = (($91) + ($89<<3)|0); - HEAP32[$z>>2] = $92; - $93 = HEAP32[$z>>2]|0; - $94 = HEAP32[$pFKey>>2]|0; - $95 = (($94) + 8|0); - HEAP32[$95>>2] = $93; - $96 = HEAP32[$z>>2]|0; - $97 = HEAP32[$2>>2]|0; - $98 = HEAP32[$97>>2]|0; - $99 = HEAP32[$2>>2]|0; - $100 = (($99) + 4|0); - $101 = HEAP32[$100>>2]|0; - _memcpy(($96|0),($98|0),($101|0))|0; - $102 = HEAP32[$2>>2]|0; - $103 = (($102) + 4|0); - $104 = HEAP32[$103>>2]|0; - $105 = HEAP32[$z>>2]|0; - $106 = (($105) + ($104)|0); - HEAP8[$106>>0] = 0; - $107 = HEAP32[$z>>2]|0; - (_sqlite3Dequote($107)|0); - $108 = HEAP32[$2>>2]|0; - $109 = (($108) + 4|0); - $110 = HEAP32[$109>>2]|0; - $111 = (($110) + 1)|0; - $112 = HEAP32[$z>>2]|0; - $113 = (($112) + ($111)|0); - HEAP32[$z>>2] = $113; - $114 = HEAP32[$nCol>>2]|0; - $115 = HEAP32[$pFKey>>2]|0; - $116 = (($115) + 20|0); - HEAP32[$116>>2] = $114; - $117 = HEAP32[$1>>2]|0; - $118 = ($117|0)==(0|0); - L24: do { - if ($118) { - $119 = HEAP32[$p>>2]|0; - $120 = (($119) + 38|0); - $121 = HEAP16[$120>>1]|0; - $122 = $121 << 16 >> 16; - $123 = (($122) - 1)|0; - $124 = HEAP32[$pFKey>>2]|0; - $125 = (($124) + 36|0); - HEAP32[$125>>2] = $123; - } else { - HEAP32[$i>>2] = 0; - while(1) { - $126 = HEAP32[$i>>2]|0; - $127 = HEAP32[$nCol>>2]|0; - $128 = ($126|0)<($127|0); - if (!($128)) { - break L24; - } - HEAP32[$j>>2] = 0; - while(1) { - $129 = HEAP32[$j>>2]|0; - $130 = HEAP32[$p>>2]|0; - $131 = (($130) + 38|0); - $132 = HEAP16[$131>>1]|0; - $133 = $132 << 16 >> 16; - $134 = ($129|0)<($133|0); - if (!($134)) { - break; - } - $135 = HEAP32[$j>>2]|0; - $136 = HEAP32[$p>>2]|0; - $137 = (($136) + 4|0); - $138 = HEAP32[$137>>2]|0; - $139 = (($138) + (($135*24)|0)|0); - $140 = HEAP32[$139>>2]|0; - $141 = HEAP32[$i>>2]|0; - $142 = HEAP32[$1>>2]|0; - $143 = (($142) + 4|0); - $144 = HEAP32[$143>>2]|0; - $145 = (($144) + (($141*20)|0)|0); - $146 = (($145) + 4|0); - $147 = HEAP32[$146>>2]|0; - $148 = (_sqlite3_stricmp($140,$147)|0); - $149 = ($148|0)==(0); - $150 = HEAP32[$j>>2]|0; - if ($149) { - label = 25; - break; - } - $155 = (($150) + 1)|0; - HEAP32[$j>>2] = $155; - } - if ((label|0) == 25) { - label = 0; - $151 = HEAP32[$i>>2]|0; - $152 = HEAP32[$pFKey>>2]|0; - $153 = (($152) + 36|0); - $154 = (($153) + ($151<<3)|0); - HEAP32[$154>>2] = $150; - } - $156 = HEAP32[$j>>2]|0; - $157 = HEAP32[$p>>2]|0; - $158 = (($157) + 38|0); - $159 = HEAP16[$158>>1]|0; - $160 = $159 << 16 >> 16; - $161 = ($156|0)>=($160|0); - if ($161) { - break; - } - $170 = HEAP32[$i>>2]|0; - $171 = (($170) + 1)|0; - HEAP32[$i>>2] = $171; - } - $162 = HEAP32[$0>>2]|0; - $163 = HEAP32[$i>>2]|0; - $164 = HEAP32[$1>>2]|0; - $165 = (($164) + 4|0); - $166 = HEAP32[$165>>2]|0; - $167 = (($166) + (($163*20)|0)|0); - $168 = (($167) + 4|0); - $169 = HEAP32[$168>>2]|0; - HEAP32[$vararg_buffer4>>2] = $169; - _sqlite3ErrorMsg($162,25752,$vararg_buffer4); - break L1; - } - } while(0); - $172 = HEAP32[$3>>2]|0; - $173 = ($172|0)!=(0|0); - L40: do { - if ($173) { - HEAP32[$i>>2] = 0; - while(1) { - $174 = HEAP32[$i>>2]|0; - $175 = HEAP32[$nCol>>2]|0; - $176 = ($174|0)<($175|0); - if (!($176)) { - break L40; - } - $177 = HEAP32[$i>>2]|0; - $178 = HEAP32[$3>>2]|0; - $179 = (($178) + 4|0); - $180 = HEAP32[$179>>2]|0; - $181 = (($180) + (($177*20)|0)|0); - $182 = (($181) + 4|0); - $183 = HEAP32[$182>>2]|0; - $184 = (_sqlite3Strlen30($183)|0); - HEAP32[$n>>2] = $184; - $185 = HEAP32[$z>>2]|0; - $186 = HEAP32[$i>>2]|0; - $187 = HEAP32[$pFKey>>2]|0; - $188 = (($187) + 36|0); - $189 = (($188) + ($186<<3)|0); - $190 = (($189) + 4|0); - HEAP32[$190>>2] = $185; - $191 = HEAP32[$z>>2]|0; - $192 = HEAP32[$i>>2]|0; - $193 = HEAP32[$3>>2]|0; - $194 = (($193) + 4|0); - $195 = HEAP32[$194>>2]|0; - $196 = (($195) + (($192*20)|0)|0); - $197 = (($196) + 4|0); - $198 = HEAP32[$197>>2]|0; - $199 = HEAP32[$n>>2]|0; - _memcpy(($191|0),($198|0),($199|0))|0; - $200 = HEAP32[$n>>2]|0; - $201 = HEAP32[$z>>2]|0; - $202 = (($201) + ($200)|0); - HEAP8[$202>>0] = 0; - $203 = HEAP32[$n>>2]|0; - $204 = (($203) + 1)|0; - $205 = HEAP32[$z>>2]|0; - $206 = (($205) + ($204)|0); - HEAP32[$z>>2] = $206; - $207 = HEAP32[$i>>2]|0; - $208 = (($207) + 1)|0; - HEAP32[$i>>2] = $208; - } - } - } while(0); - $209 = HEAP32[$pFKey>>2]|0; - $210 = (($209) + 24|0); - HEAP8[$210>>0] = 0; - $211 = HEAP32[$4>>2]|0; - $212 = $211 & 255; - $213 = $212&255; - $214 = HEAP32[$pFKey>>2]|0; - $215 = (($214) + 25|0); - HEAP8[$215>>0] = $213; - $216 = HEAP32[$4>>2]|0; - $217 = $216 >> 8; - $218 = $217 & 255; - $219 = $218&255; - $220 = HEAP32[$pFKey>>2]|0; - $221 = (($220) + 25|0); - $222 = (($221) + 1|0); - HEAP8[$222>>0] = $219; - $223 = HEAP32[$p>>2]|0; - $224 = (($223) + 68|0); - $225 = HEAP32[$224>>2]|0; - $226 = (($225) + 56|0); - $227 = HEAP32[$pFKey>>2]|0; - $228 = (($227) + 8|0); - $229 = HEAP32[$228>>2]|0; - $230 = HEAP32[$pFKey>>2]|0; - $231 = (($230) + 8|0); - $232 = HEAP32[$231>>2]|0; - $233 = (_sqlite3Strlen30($232)|0); - $234 = HEAP32[$pFKey>>2]|0; - $235 = (_sqlite3HashInsert($226,$229,$233,$234)|0); - HEAP32[$pNextTo>>2] = $235; - $236 = HEAP32[$pNextTo>>2]|0; - $237 = HEAP32[$pFKey>>2]|0; - $238 = ($236|0)==($237|0); - if ($238) { - $239 = HEAP32[$db>>2]|0; - $240 = (($239) + 64|0); - HEAP8[$240>>0] = 1; - break; - } - $241 = HEAP32[$pNextTo>>2]|0; - $242 = ($241|0)!=(0|0); - if ($242) { - $243 = HEAP32[$pNextTo>>2]|0; - $244 = HEAP32[$pFKey>>2]|0; - $245 = (($244) + 12|0); - HEAP32[$245>>2] = $243; - $246 = HEAP32[$pFKey>>2]|0; - $247 = HEAP32[$pNextTo>>2]|0; - $248 = (($247) + 16|0); - HEAP32[$248>>2] = $246; - } - $249 = HEAP32[$pFKey>>2]|0; - $250 = HEAP32[$p>>2]|0; - $251 = (($250) + 16|0); - HEAP32[$251>>2] = $249; - HEAP32[$pFKey>>2] = 0; - } - } - } - } while(0); - $252 = HEAP32[$db>>2]|0; - $253 = HEAP32[$pFKey>>2]|0; - _sqlite3DbFree($252,$253); - $254 = HEAP32[$db>>2]|0; - $255 = HEAP32[$1>>2]|0; - _sqlite3ExprListDelete($254,$255); - $256 = HEAP32[$db>>2]|0; - $257 = HEAP32[$3>>2]|0; - _sqlite3ExprListDelete($256,$257); - STACKTOP = sp;return; -} -function _sqlite3DeferForeignKey($pParse,$isDeferred) { - $pParse = $pParse|0; - $isDeferred = $isDeferred|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pFKey = 0, $pTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $pTab = sp + 4|0; - $pFKey = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $isDeferred; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 484|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pTab>>2] = $4; - $5 = ($4|0)==(0|0); - if ($5) { - STACKTOP = sp;return; - } - $6 = HEAP32[$pTab>>2]|0; - $7 = (($6) + 16|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pFKey>>2] = $8; - $9 = ($8|0)==(0|0); - if ($9) { - STACKTOP = sp;return; - } - $10 = HEAP32[$1>>2]|0; - $11 = $10&255; - $12 = HEAP32[$pFKey>>2]|0; - $13 = (($12) + 24|0); - HEAP8[$13>>0] = $11; - STACKTOP = sp;return; -} -function _sqlite3AddCollateType($pParse,$pToken) { - $pParse = $pParse|0; - $pToken = $pToken|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $7 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $p = 0, $pIdx = 0, $zColl = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $p = sp + 16|0; - $i = sp + 12|0; - $zColl = sp + 8|0; - $db = sp + 4|0; - $pIdx = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pToken; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 484|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$p>>2] = $4; - $5 = ($4|0)==(0|0); - if ($5) { - STACKTOP = sp;return; - } - $6 = HEAP32[$p>>2]|0; - $7 = (($6) + 38|0); - $8 = HEAP16[$7>>1]|0; - $9 = $8 << 16 >> 16; - $10 = (($9) - 1)|0; - HEAP32[$i>>2] = $10; - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$11>>2]|0; - HEAP32[$db>>2] = $12; - $13 = HEAP32[$db>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = (_sqlite3NameFromToken($13,$14)|0); - HEAP32[$zColl>>2] = $15; - $16 = HEAP32[$zColl>>2]|0; - $17 = ($16|0)!=(0|0); - if (!($17)) { - STACKTOP = sp;return; - } - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$zColl>>2]|0; - $20 = (_sqlite3LocateCollSeq($18,$19)|0); - $21 = ($20|0)!=(0|0); - $22 = HEAP32[$db>>2]|0; - if (!($21)) { - $62 = HEAP32[$zColl>>2]|0; - _sqlite3DbFree($22,$62); - STACKTOP = sp;return; - } - $23 = HEAP32[$i>>2]|0; - $24 = HEAP32[$p>>2]|0; - $25 = (($24) + 4|0); - $26 = HEAP32[$25>>2]|0; - $27 = (($26) + (($23*24)|0)|0); - $28 = (($27) + 16|0); - $29 = HEAP32[$28>>2]|0; - _sqlite3DbFree($22,$29); - $30 = HEAP32[$zColl>>2]|0; - $31 = HEAP32[$i>>2]|0; - $32 = HEAP32[$p>>2]|0; - $33 = (($32) + 4|0); - $34 = HEAP32[$33>>2]|0; - $35 = (($34) + (($31*24)|0)|0); - $36 = (($35) + 16|0); - HEAP32[$36>>2] = $30; - $37 = HEAP32[$p>>2]|0; - $38 = (($37) + 8|0); - $39 = HEAP32[$38>>2]|0; - HEAP32[$pIdx>>2] = $39; - while(1) { - $40 = HEAP32[$pIdx>>2]|0; - $41 = ($40|0)!=(0|0); - if (!($41)) { - break; - } - $42 = HEAP32[$pIdx>>2]|0; - $43 = (($42) + 4|0); - $44 = HEAP32[$43>>2]|0; - $45 = HEAP16[$44>>1]|0; - $46 = $45 << 16 >> 16; - $47 = HEAP32[$i>>2]|0; - $48 = ($46|0)==($47|0); - if ($48) { - $49 = HEAP32[$i>>2]|0; - $50 = HEAP32[$p>>2]|0; - $51 = (($50) + 4|0); - $52 = HEAP32[$51>>2]|0; - $53 = (($52) + (($49*24)|0)|0); - $54 = (($53) + 16|0); - $55 = HEAP32[$54>>2]|0; - $56 = HEAP32[$pIdx>>2]|0; - $57 = (($56) + 32|0); - $58 = HEAP32[$57>>2]|0; - HEAP32[$58>>2] = $55; - } - $59 = HEAP32[$pIdx>>2]|0; - $60 = (($59) + 20|0); - $61 = HEAP32[$60>>2]|0; - HEAP32[$pIdx>>2] = $61; - } - STACKTOP = sp;return; -} -function _sqlite3DropTable($pParse,$pName,$isView,$noErr) { - $pParse = $pParse|0; - $pName = $pName|0; - $isView = $isView|0; - $noErr = $noErr|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; - var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; - var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $code = 0, $db = 0, $iDb = 0, $pTab = 0, $v = 0, $vararg_buffer4 = 0, $zArg2 = 0, $zDb = 0, $zTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer4 = sp; - $0 = sp + 48|0; - $1 = sp + 44|0; - $2 = sp + 40|0; - $3 = sp + 36|0; - $pTab = sp + 32|0; - $v = sp + 28|0; - $db = sp + 24|0; - $iDb = sp + 20|0; - $code = sp + 16|0; - $zTab = sp + 12|0; - $zDb = sp + 8|0; - $zArg2 = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pName; - HEAP32[$2>>2] = $isView; - HEAP32[$3>>2] = $noErr; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$db>>2]|0; - $7 = (($6) + 64|0); - $8 = HEAP8[$7>>0]|0; - $9 = ($8<<24>>24)!=(0); - do { - if (!($9)) { - $10 = HEAP32[$3>>2]|0; - $11 = ($10|0)!=(0); - if ($11) { - $12 = HEAP32[$db>>2]|0; - $13 = (($12) + 67|0); - $14 = HEAP8[$13>>0]|0; - $15 = (($14) + 1)<<24>>24; - HEAP8[$13>>0] = $15; - } - $16 = HEAP32[$0>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 8|0); - $20 = (_sqlite3LocateTableItem($16,$17,$19)|0); - HEAP32[$pTab>>2] = $20; - $21 = HEAP32[$3>>2]|0; - $22 = ($21|0)!=(0); - if ($22) { - $23 = HEAP32[$db>>2]|0; - $24 = (($23) + 67|0); - $25 = HEAP8[$24>>0]|0; - $26 = (($25) + -1)<<24>>24; - HEAP8[$24>>0] = $26; - } - $27 = HEAP32[$pTab>>2]|0; - $28 = ($27|0)==(0|0); - if ($28) { - $29 = HEAP32[$3>>2]|0; - $30 = ($29|0)!=(0); - if (!($30)) { - break; - } - $31 = HEAP32[$0>>2]|0; - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 8|0); - $34 = (($33) + 4|0); - $35 = HEAP32[$34>>2]|0; - _sqlite3CodeVerifyNamedSchema($31,$35); - break; - } - $36 = HEAP32[$db>>2]|0; - $37 = HEAP32[$pTab>>2]|0; - $38 = (($37) + 68|0); - $39 = HEAP32[$38>>2]|0; - $40 = (_sqlite3SchemaToIndex($36,$39)|0); - HEAP32[$iDb>>2] = $40; - $41 = HEAP32[$pTab>>2]|0; - $42 = (($41) + 44|0); - $43 = HEAP8[$42>>0]|0; - $44 = $43&255; - $45 = $44 & 16; - $46 = ($45|0)!=(0); - if ($46) { - $47 = HEAP32[$0>>2]|0; - $48 = HEAP32[$pTab>>2]|0; - $49 = (_sqlite3ViewGetColumnNames($47,$48)|0); - $50 = ($49|0)!=(0); - if ($50) { - break; - } - } - $51 = HEAP32[$iDb>>2]|0; - $52 = ($51|0)==(1); - $53 = $52 ? 14808 : 14832; - HEAP32[$zTab>>2] = $53; - $54 = HEAP32[$iDb>>2]|0; - $55 = HEAP32[$db>>2]|0; - $56 = (($55) + 16|0); - $57 = HEAP32[$56>>2]|0; - $58 = (($57) + ($54<<4)|0); - $59 = HEAP32[$58>>2]|0; - HEAP32[$zDb>>2] = $59; - HEAP32[$zArg2>>2] = 0; - $60 = HEAP32[$0>>2]|0; - $61 = HEAP32[$zTab>>2]|0; - $62 = HEAP32[$zDb>>2]|0; - $63 = (_sqlite3AuthCheck($60,9,$61,0,$62)|0); - $64 = ($63|0)!=(0); - if (!($64)) { - $65 = HEAP32[$2>>2]|0; - $66 = ($65|0)!=(0); - do { - if ($66) { - $67 = HEAP32[$iDb>>2]|0; - $68 = ($67|0)==(1); - if ($68) { - HEAP32[$code>>2] = 15; - break; - } else { - HEAP32[$code>>2] = 17; - break; - } - } else { - $69 = HEAP32[$pTab>>2]|0; - $70 = (($69) + 44|0); - $71 = HEAP8[$70>>0]|0; - $72 = $71&255; - $73 = $72 & 16; - $74 = ($73|0)!=(0); - if ($74) { - HEAP32[$code>>2] = 30; - $75 = HEAP32[$db>>2]|0; - $76 = HEAP32[$pTab>>2]|0; - $77 = (_sqlite3GetVTable($75,$76)|0); - $78 = (($77) + 4|0); - $79 = HEAP32[$78>>2]|0; - $80 = (($79) + 4|0); - $81 = HEAP32[$80>>2]|0; - HEAP32[$zArg2>>2] = $81; - break; - } - $82 = HEAP32[$iDb>>2]|0; - $83 = ($82|0)==(1); - if ($83) { - HEAP32[$code>>2] = 13; - break; - } else { - HEAP32[$code>>2] = 11; - break; - } - } - } while(0); - $84 = HEAP32[$0>>2]|0; - $85 = HEAP32[$code>>2]|0; - $86 = HEAP32[$pTab>>2]|0; - $87 = HEAP32[$86>>2]|0; - $88 = HEAP32[$zArg2>>2]|0; - $89 = HEAP32[$zDb>>2]|0; - $90 = (_sqlite3AuthCheck($84,$85,$87,$88,$89)|0); - $91 = ($90|0)!=(0); - if (!($91)) { - $92 = HEAP32[$0>>2]|0; - $93 = HEAP32[$pTab>>2]|0; - $94 = HEAP32[$93>>2]|0; - $95 = HEAP32[$zDb>>2]|0; - $96 = (_sqlite3AuthCheck($92,9,$94,0,$95)|0); - $97 = ($96|0)!=(0); - if (!($97)) { - $98 = HEAP32[$pTab>>2]|0; - $99 = HEAP32[$98>>2]|0; - $100 = (_sqlite3_strnicmp($99,15048,7)|0); - $101 = ($100|0)==(0); - if ($101) { - $102 = HEAP32[$pTab>>2]|0; - $103 = HEAP32[$102>>2]|0; - $104 = (_sqlite3_strnicmp($103,25368,11)|0); - $105 = ($104|0)!=(0); - if ($105) { - $106 = HEAP32[$0>>2]|0; - $107 = HEAP32[$pTab>>2]|0; - $108 = HEAP32[$107>>2]|0; - HEAP32[$vararg_buffer4>>2] = $108; - _sqlite3ErrorMsg($106,25384,$vararg_buffer4); - break; - } - } - $109 = HEAP32[$2>>2]|0; - $110 = ($109|0)!=(0); - if ($110) { - $111 = HEAP32[$pTab>>2]|0; - $112 = (($111) + 12|0); - $113 = HEAP32[$112>>2]|0; - $114 = ($113|0)==(0|0); - if ($114) { - $115 = HEAP32[$0>>2]|0; - $116 = HEAP32[$pTab>>2]|0; - $117 = HEAP32[$116>>2]|0; - HEAP32[$vararg_buffer4>>2] = $117; - _sqlite3ErrorMsg($115,25416,$vararg_buffer4); - break; - } - } - $118 = HEAP32[$2>>2]|0; - $119 = ($118|0)!=(0); - if (!($119)) { - $120 = HEAP32[$pTab>>2]|0; - $121 = (($120) + 12|0); - $122 = HEAP32[$121>>2]|0; - $123 = ($122|0)!=(0|0); - if ($123) { - $124 = HEAP32[$0>>2]|0; - $125 = HEAP32[$pTab>>2]|0; - $126 = HEAP32[$125>>2]|0; - HEAP32[$vararg_buffer4>>2] = $126; - _sqlite3ErrorMsg($124,25456,$vararg_buffer4); - break; - } - } - $127 = HEAP32[$0>>2]|0; - $128 = (_sqlite3GetVdbe($127)|0); - HEAP32[$v>>2] = $128; - $129 = HEAP32[$v>>2]|0; - $130 = ($129|0)!=(0|0); - if ($130) { - $131 = HEAP32[$0>>2]|0; - $132 = HEAP32[$iDb>>2]|0; - _sqlite3BeginWriteOperation($131,1,$132); - $133 = HEAP32[$0>>2]|0; - $134 = HEAP32[$iDb>>2]|0; - $135 = HEAP32[$pTab>>2]|0; - $136 = HEAP32[$135>>2]|0; - _sqlite3ClearStatTables($133,$134,18072,$136); - $137 = HEAP32[$0>>2]|0; - $138 = HEAP32[$1>>2]|0; - $139 = HEAP32[$pTab>>2]|0; - _sqlite3FkDropTable($137,$138,$139); - $140 = HEAP32[$0>>2]|0; - $141 = HEAP32[$pTab>>2]|0; - $142 = HEAP32[$iDb>>2]|0; - $143 = HEAP32[$2>>2]|0; - _sqlite3CodeDropTable($140,$141,$142,$143); - } - } - } - } - } - } while(0); - $144 = HEAP32[$db>>2]|0; - $145 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($144,$145); - STACKTOP = sp;return; -} -function _sqlite3CreateView($pParse,$pBegin,$pName1,$pName2,$pSelect,$isTemp,$noErr) { - $pParse = $pParse|0; - $pBegin = $pBegin|0; - $pName1 = $pName1|0; - $pName2 = $pName2|0; - $pSelect = $pSelect|0; - $isTemp = $isTemp|0; - $noErr = $noErr|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; - var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; - var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; - var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; - var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; - var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $iDb = 0, $n = 0, $p = 0, $pName = 0, $sEnd = 0, $sFix = 0, $vararg_buffer = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $vararg_buffer = sp; - $0 = sp + 84|0; - $1 = sp + 80|0; - $2 = sp + 76|0; - $3 = sp + 72|0; - $4 = sp + 68|0; - $5 = sp + 64|0; - $6 = sp + 60|0; - $p = sp + 56|0; - $n = sp + 52|0; - $z = sp + 48|0; - $sEnd = sp + 40|0; - $sFix = sp + 16|0; - $pName = sp + 12|0; - $iDb = sp + 8|0; - $db = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pBegin; - HEAP32[$2>>2] = $pName1; - HEAP32[$3>>2] = $pName2; - HEAP32[$4>>2] = $pSelect; - HEAP32[$5>>2] = $isTemp; - HEAP32[$6>>2] = $noErr; - HEAP32[$pName>>2] = 0; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$7>>2]|0; - HEAP32[$db>>2] = $8; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 440|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)>(0); - $13 = HEAP32[$0>>2]|0; - if ($12) { - _sqlite3ErrorMsg($13,25320,$vararg_buffer); - $14 = HEAP32[$db>>2]|0; - $15 = HEAP32[$4>>2]|0; - _sqlite3SelectDelete($14,$15); - STACKTOP = sp;return; - } - $16 = HEAP32[$2>>2]|0; - $17 = HEAP32[$3>>2]|0; - $18 = HEAP32[$5>>2]|0; - $19 = HEAP32[$6>>2]|0; - _sqlite3StartTable($13,$16,$17,$18,1,0,$19); - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 484|0); - $22 = HEAP32[$21>>2]|0; - HEAP32[$p>>2] = $22; - $23 = HEAP32[$p>>2]|0; - $24 = ($23|0)==(0|0); - if (!($24)) { - $25 = HEAP32[$0>>2]|0; - $26 = (($25) + 64|0); - $27 = HEAP32[$26>>2]|0; - $28 = ($27|0)!=(0); - if (!($28)) { - $31 = HEAP32[$0>>2]|0; - $32 = HEAP32[$2>>2]|0; - $33 = HEAP32[$3>>2]|0; - (_sqlite3TwoPartName($31,$32,$33,$pName)|0); - $34 = HEAP32[$db>>2]|0; - $35 = HEAP32[$p>>2]|0; - $36 = (($35) + 68|0); - $37 = HEAP32[$36>>2]|0; - $38 = (_sqlite3SchemaToIndex($34,$37)|0); - HEAP32[$iDb>>2] = $38; - $39 = HEAP32[$0>>2]|0; - $40 = HEAP32[$iDb>>2]|0; - $41 = HEAP32[$pName>>2]|0; - _sqlite3FixInit($sFix,$39,$40,25360,$41); - $42 = HEAP32[$4>>2]|0; - $43 = (_sqlite3FixSelect($sFix,$42)|0); - $44 = ($43|0)!=(0); - $45 = HEAP32[$db>>2]|0; - $46 = HEAP32[$4>>2]|0; - if ($44) { - _sqlite3SelectDelete($45,$46); - STACKTOP = sp;return; - } - $47 = (_sqlite3SelectDup($45,$46,1)|0); - $48 = HEAP32[$p>>2]|0; - $49 = (($48) + 12|0); - HEAP32[$49>>2] = $47; - $50 = HEAP32[$db>>2]|0; - $51 = HEAP32[$4>>2]|0; - _sqlite3SelectDelete($50,$51); - $52 = HEAP32[$db>>2]|0; - $53 = (($52) + 64|0); - $54 = HEAP8[$53>>0]|0; - $55 = ($54<<24>>24)!=(0); - if ($55) { - STACKTOP = sp;return; - } - $56 = HEAP32[$db>>2]|0; - $57 = (($56) + 132|0); - $58 = (($57) + 5|0); - $59 = HEAP8[$58>>0]|0; - $60 = ($59<<24>>24)!=(0); - if (!($60)) { - $61 = HEAP32[$0>>2]|0; - $62 = HEAP32[$p>>2]|0; - (_sqlite3ViewGetColumnNames($61,$62)|0); - } - $63 = HEAP32[$0>>2]|0; - $64 = (($63) + 504|0); - ;HEAP32[$sEnd+0>>2]=HEAP32[$64+0>>2]|0;HEAP32[$sEnd+4>>2]=HEAP32[$64+4>>2]|0; - $65 = HEAP32[$sEnd>>2]|0; - $66 = HEAP8[$65>>0]|0; - $67 = $66 << 24 >> 24; - $68 = ($67|0)!=(0); - if ($68) { - $69 = HEAP32[$sEnd>>2]|0; - $70 = HEAP8[$69>>0]|0; - $71 = $70 << 24 >> 24; - $72 = ($71|0)!=(59); - if ($72) { - $73 = (($sEnd) + 4|0); - $74 = HEAP32[$73>>2]|0; - $75 = HEAP32[$sEnd>>2]|0; - $76 = (($75) + ($74)|0); - HEAP32[$sEnd>>2] = $76; - } - } - $77 = (($sEnd) + 4|0); - HEAP32[$77>>2] = 0; - $78 = HEAP32[$sEnd>>2]|0; - $79 = HEAP32[$1>>2]|0; - $80 = HEAP32[$79>>2]|0; - $81 = $78; - $82 = $80; - $83 = (($81) - ($82))|0; - HEAP32[$n>>2] = $83; - $84 = HEAP32[$1>>2]|0; - $85 = HEAP32[$84>>2]|0; - HEAP32[$z>>2] = $85; - while(1) { - $86 = HEAP32[$n>>2]|0; - $87 = ($86|0)>(0); - if ($87) { - $88 = HEAP32[$n>>2]|0; - $89 = (($88) - 1)|0; - $90 = HEAP32[$z>>2]|0; - $91 = (($90) + ($89)|0); - $92 = HEAP8[$91>>0]|0; - $93 = $92&255; - $94 = (48 + ($93)|0); - $95 = HEAP8[$94>>0]|0; - $96 = $95&255; - $97 = $96 & 1; - $98 = ($97|0)!=(0); - $106 = $98; - } else { - $106 = 0; - } - $99 = HEAP32[$n>>2]|0; - if (!($106)) { - break; - } - $100 = (($99) + -1)|0; - HEAP32[$n>>2] = $100; - } - $101 = (($99) - 1)|0; - $102 = HEAP32[$z>>2]|0; - $103 = (($102) + ($101)|0); - HEAP32[$sEnd>>2] = $103; - $104 = (($sEnd) + 4|0); - HEAP32[$104>>2] = 1; - $105 = HEAP32[$0>>2]|0; - _sqlite3EndTable($105,0,$sEnd,0,0); - STACKTOP = sp;return; - } - } - $29 = HEAP32[$db>>2]|0; - $30 = HEAP32[$4>>2]|0; - _sqlite3SelectDelete($29,$30); - STACKTOP = sp;return; -} -function _sqlite3Select($pParse,$p,$pDest) { - $pParse = $pParse|0; - $p = $p|0; - $pDest = $pDest|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0; - var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0; - var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0; - var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0; - var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0; - var $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0; - var $1105 = 0, $1106 = 0, $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0; - var $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0; - var $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0; - var $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0; - var $1178 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0; - var $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0; - var $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0; - var $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0; - var $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0; - var $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0; - var $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0; - var $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0; - var $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0; - var $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0; - var $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0; - var $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0; - var $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0; - var $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0; - var $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0; - var $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0; - var $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0; - var $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0; - var $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0; - var $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0; - var $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0; - var $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 = 0; - var $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 = 0; - var $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 = 0; - var $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0, $567 = 0; - var $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0, $585 = 0; - var $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0; - var $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0, $620 = 0; - var $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0; - var $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0; - var $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0; - var $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0; - var $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0; - var $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0; - var $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0; - var $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0; - var $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0; - var $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0; - var $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0; - var $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0; - var $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0; - var $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0; - var $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0; - var $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0; - var $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0; - var $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0; - var $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0; - var $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0; - var $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $addrEnd = 0; - var $addrOutputRow = 0, $addrReset = 0, $addrSetAbort = 0, $addrSortingIdx = 0, $addrTop = 0, $addrTopOfLoop = 0, $db = 0, $dest = 0, $flag = 0, $groupBySort = 0, $i = 0, $iAMem = 0, $iAbortFlag = 0, $iBMem = 0, $iCsr = 0, $iDb = 0, $iEnd = 0, $iRestoreSelectId = 0, $iRoot = 0, $iUseFlag = 0; - var $isAgg = 0, $isAggSub = 0, $j = 0, $j1 = 0, $k = 0, $nCol = 0, $nGroupBy = 0, $onceAddr = 0, $orderByGrp = 0, $pBest = 0, $pCol = 0, $pDel = 0, $pEList = 0, $pGroupBy = 0, $pHaving = 0, $pIdx = 0, $pItem = 0, $pItem1 = 0, $pKeyInfo = 0, $pKeyInfo2 = 0; - var $pKeyInfo3 = 0, $pMinMax = 0, $pSub = 0, $pTab = 0, $pTabList = 0, $pWInfo = 0, $pWhere = 0, $r1 = 0, $r2 = 0, $rc = 0, $regBase = 0, $regOutputRow = 0, $regRecord = 0, $regReset = 0, $retAddr = 0, $sAggInfo = 0, $sDistinct = 0, $sNC = 0, $sSort = 0, $sortOut = 0; - var $sortPTab = 0, $topAddr = 0, $v = 0, $wctrlFlags = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 400|0; - $0 = sp + 384|0; - $1 = sp + 380|0; - $2 = sp + 376|0; - $3 = sp + 372|0; - $i = sp + 368|0; - $j = sp + 364|0; - $pWInfo = sp + 360|0; - $v = sp + 356|0; - $isAgg = sp + 352|0; - $pEList = sp + 348|0; - $pTabList = sp + 344|0; - $pWhere = sp + 340|0; - $pGroupBy = sp + 336|0; - $pHaving = sp + 332|0; - $rc = sp + 328|0; - $sDistinct = sp + 316|0; - $sSort = sp + 288|0; - $sAggInfo = sp + 240|0; - $iEnd = sp + 236|0; - $db = sp + 232|0; - $iRestoreSelectId = sp + 228|0; - $pItem = sp + 224|0; - $dest = sp + 204|0; - $pSub = sp + 200|0; - $isAggSub = sp + 196|0; - $addrTop = sp + 192|0; - $topAddr = sp + 188|0; - $onceAddr = sp + 184|0; - $retAddr = sp + 180|0; - $pKeyInfo = sp + 176|0; - $wctrlFlags = sp + 388|0; - $sNC = sp + 144|0; - $iAMem = sp + 140|0; - $iBMem = sp + 136|0; - $iUseFlag = sp + 132|0; - $iAbortFlag = sp + 128|0; - $groupBySort = sp + 124|0; - $addrEnd = sp + 120|0; - $sortPTab = sp + 116|0; - $sortOut = sp + 112|0; - $orderByGrp = sp + 108|0; - $k = sp + 104|0; - $pItem1 = sp + 100|0; - $pKeyInfo2 = sp + 96|0; - $j1 = sp + 92|0; - $addrOutputRow = sp + 88|0; - $regOutputRow = sp + 84|0; - $addrSetAbort = sp + 80|0; - $addrTopOfLoop = sp + 76|0; - $addrSortingIdx = sp + 72|0; - $addrReset = sp + 68|0; - $regReset = sp + 64|0; - $regBase = sp + 60|0; - $regRecord = sp + 56|0; - $nCol = sp + 52|0; - $nGroupBy = sp + 48|0; - $pCol = sp + 44|0; - $r1 = sp + 40|0; - $r2 = sp + 36|0; - $pDel = sp + 32|0; - $pTab = sp + 28|0; - $iDb = sp + 24|0; - $iCsr = sp + 20|0; - $pIdx = sp + 16|0; - $pKeyInfo3 = sp + 12|0; - $pBest = sp + 8|0; - $iRoot = sp + 4|0; - $pMinMax = sp; - $flag = sp + 390|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $p; - HEAP32[$3>>2] = $pDest; - HEAP32[$rc>>2] = 1; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 464|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$iRestoreSelectId>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 468|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + 1)|0; - HEAP32[$8>>2] = $10; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 464|0); - HEAP32[$12>>2] = $9; - $13 = HEAP32[$1>>2]|0; - $14 = HEAP32[$13>>2]|0; - HEAP32[$db>>2] = $14; - $15 = HEAP32[$2>>2]|0; - $16 = ($15|0)==(0|0); - if (!($16)) { - $17 = HEAP32[$db>>2]|0; - $18 = (($17) + 64|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = ($20|0)!=(0); - if (!($21)) { - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 64|0); - $24 = HEAP32[$23>>2]|0; - $25 = ($24|0)!=(0); - if (!($25)) { - $26 = HEAP32[$1>>2]|0; - $27 = (_sqlite3AuthCheck($26,21,0,0,0)|0); - $28 = ($27|0)!=(0); - if ($28) { - HEAP32[$0>>2] = 1; - $1178 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($1178|0); - } - dest=$sAggInfo+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $29 = HEAP32[$3>>2]|0; - $30 = HEAP8[$29>>0]|0; - $31 = $30&255; - $32 = ($31|0)<=(8); - if ($32) { - $33 = HEAP32[$db>>2]|0; - $34 = HEAP32[$2>>2]|0; - $35 = (($34) + 48|0); - $36 = HEAP32[$35>>2]|0; - _sqlite3ExprListDelete($33,$36); - $37 = HEAP32[$2>>2]|0; - $38 = (($37) + 48|0); - HEAP32[$38>>2] = 0; - $39 = HEAP32[$2>>2]|0; - $40 = (($39) + 6|0); - $41 = HEAP16[$40>>1]|0; - $42 = $41&65535; - $43 = $42 & -2; - $44 = $43&65535; - HEAP16[$40>>1] = $44; - } - $45 = HEAP32[$1>>2]|0; - $46 = HEAP32[$2>>2]|0; - _sqlite3SelectPrep($45,$46,0); - ;HEAP32[$sSort+0>>2]=0|0;HEAP32[$sSort+4>>2]=0|0;HEAP32[$sSort+8>>2]=0|0;HEAP32[$sSort+12>>2]=0|0;HEAP32[$sSort+16>>2]=0|0;HEAP32[$sSort+20>>2]=0|0;HEAP32[$sSort+24>>2]=0|0; - $47 = HEAP32[$2>>2]|0; - $48 = (($47) + 48|0); - $49 = HEAP32[$48>>2]|0; - HEAP32[$sSort>>2] = $49; - $50 = HEAP32[$2>>2]|0; - $51 = (($50) + 32|0); - $52 = HEAP32[$51>>2]|0; - HEAP32[$pTabList>>2] = $52; - $53 = HEAP32[$2>>2]|0; - $54 = HEAP32[$53>>2]|0; - HEAP32[$pEList>>2] = $54; - $55 = HEAP32[$1>>2]|0; - $56 = (($55) + 64|0); - $57 = HEAP32[$56>>2]|0; - $58 = ($57|0)!=(0); - L12: do { - if (!($58)) { - $59 = HEAP32[$db>>2]|0; - $60 = (($59) + 64|0); - $61 = HEAP8[$60>>0]|0; - $62 = $61&255; - $63 = ($62|0)!=(0); - if (!($63)) { - $64 = HEAP32[$2>>2]|0; - $65 = (($64) + 6|0); - $66 = HEAP16[$65>>1]|0; - $67 = $66&65535; - $68 = $67 & 4; - $69 = ($68|0)!=(0); - $70 = $69&1; - HEAP32[$isAgg>>2] = $70; - $71 = HEAP32[$1>>2]|0; - $72 = (_sqlite3GetVdbe($71)|0); - HEAP32[$v>>2] = $72; - $73 = HEAP32[$v>>2]|0; - $74 = ($73|0)==(0|0); - if (!($74)) { - $75 = HEAP32[$1>>2]|0; - $76 = HEAP32[$3>>2]|0; - $77 = HEAP32[$pEList>>2]|0; - $78 = HEAP32[$77>>2]|0; - $79 = (_checkForMultiColumnSelectError($75,$76,$78)|0); - $80 = ($79|0)!=(0); - if (!($80)) { - HEAP32[$i>>2] = 0; - while(1) { - $81 = HEAP32[$2>>2]|0; - $82 = (($81) + 52|0); - $83 = HEAP32[$82>>2]|0; - $84 = ($83|0)!=(0|0); - if ($84) { - break; - } - $85 = HEAP32[$i>>2]|0; - $86 = HEAP32[$pTabList>>2]|0; - $87 = HEAP32[$86>>2]|0; - $88 = ($85|0)<($87|0); - if (!($88)) { - break; - } - $89 = HEAP32[$i>>2]|0; - $90 = HEAP32[$pTabList>>2]|0; - $91 = (($90) + 8|0); - $92 = (($91) + (($89*72)|0)|0); - HEAP32[$pItem>>2] = $92; - $93 = HEAP32[$pItem>>2]|0; - $94 = (($93) + 20|0); - $95 = HEAP32[$94>>2]|0; - HEAP32[$pSub>>2] = $95; - $96 = HEAP32[$pSub>>2]|0; - $97 = ($96|0)==(0|0); - do { - if (!($97)) { - $98 = HEAP32[$pItem>>2]|0; - $99 = (($98) + 24|0); - $100 = HEAP32[$99>>2]|0; - $101 = ($100|0)!=(0); - if ($101) { - $102 = HEAP32[$pItem>>2]|0; - $103 = (($102) + 37|0); - $104 = HEAP8[$103>>0]|0; - $105 = ($104&255) >>> 2; - $106 = $105 & 1; - $107 = $106&255; - $108 = ($107|0)==(0); - if (!($108)) { - break; - } - $109 = HEAP32[$v>>2]|0; - $110 = HEAP32[$pItem>>2]|0; - $111 = (($110) + 28|0); - $112 = HEAP32[$111>>2]|0; - $113 = HEAP32[$pItem>>2]|0; - $114 = (($113) + 24|0); - $115 = HEAP32[$114>>2]|0; - (_sqlite3VdbeAddOp2($109,17,$112,$115)|0); - break; - } - $116 = HEAP32[$2>>2]|0; - $117 = (_sqlite3SelectExprHeight($116)|0); - $118 = HEAP32[$1>>2]|0; - $119 = (($118) + 460|0); - $120 = HEAP32[$119>>2]|0; - $121 = (($120) + ($117))|0; - HEAP32[$119>>2] = $121; - $122 = HEAP32[$pSub>>2]|0; - $123 = (($122) + 6|0); - $124 = HEAP16[$123>>1]|0; - $125 = $124&65535; - $126 = $125 & 4; - $127 = ($126|0)!=(0); - $128 = $127&1; - HEAP32[$isAggSub>>2] = $128; - $129 = HEAP32[$1>>2]|0; - $130 = HEAP32[$2>>2]|0; - $131 = HEAP32[$i>>2]|0; - $132 = HEAP32[$isAgg>>2]|0; - $133 = HEAP32[$isAggSub>>2]|0; - $134 = (_flattenSubquery($129,$130,$131,$132,$133)|0); - $135 = ($134|0)!=(0); - L27: do { - if ($135) { - $136 = HEAP32[$isAggSub>>2]|0; - $137 = ($136|0)!=(0); - if ($137) { - HEAP32[$isAgg>>2] = 1; - $138 = HEAP32[$2>>2]|0; - $139 = (($138) + 6|0); - $140 = HEAP16[$139>>1]|0; - $141 = $140&65535; - $142 = $141 | 4; - $143 = $142&65535; - HEAP16[$139>>1] = $143; - } - HEAP32[$i>>2] = -1; - } else { - $144 = HEAP32[$pTabList>>2]|0; - $145 = HEAP32[$144>>2]|0; - $146 = ($145|0)==(1); - do { - if ($146) { - $147 = HEAP32[$db>>2]|0; - $148 = (($147) + 60|0); - $149 = HEAP16[$148>>1]|0; - $150 = $149&65535; - $151 = $150 & 256; - $152 = ($151|0)==(0); - if (!($152)) { - break; - } - $153 = HEAP32[$v>>2]|0; - $154 = (_sqlite3VdbeCurrentAddr($153)|0); - $155 = (($154) + 1)|0; - HEAP32[$addrTop>>2] = $155; - $156 = HEAP32[$1>>2]|0; - $157 = (($156) + 72|0); - $158 = HEAP32[$157>>2]|0; - $159 = (($158) + 1)|0; - HEAP32[$157>>2] = $159; - $160 = HEAP32[$pItem>>2]|0; - $161 = (($160) + 28|0); - HEAP32[$161>>2] = $159; - $162 = HEAP32[$v>>2]|0; - $163 = HEAP32[$pItem>>2]|0; - $164 = (($163) + 28|0); - $165 = HEAP32[$164>>2]|0; - $166 = HEAP32[$addrTop>>2]|0; - (_sqlite3VdbeAddOp3($162,20,$165,0,$166)|0); - $167 = HEAP32[$addrTop>>2]|0; - $168 = HEAP32[$pItem>>2]|0; - $169 = (($168) + 24|0); - HEAP32[$169>>2] = $167; - $170 = HEAP32[$pItem>>2]|0; - $171 = (($170) + 28|0); - $172 = HEAP32[$171>>2]|0; - _sqlite3SelectDestInit($dest,13,$172); - $173 = HEAP32[$1>>2]|0; - $174 = (($173) + 468|0); - $175 = HEAP32[$174>>2]|0; - $176 = $175&255; - $177 = HEAP32[$pItem>>2]|0; - $178 = (($177) + 38|0); - HEAP8[$178>>0] = $176; - $179 = HEAP32[$1>>2]|0; - $180 = HEAP32[$pSub>>2]|0; - (_sqlite3Select($179,$180,$dest)|0); - $181 = HEAP32[$pSub>>2]|0; - $182 = (($181) + 24|0); - $183 = $182; - $184 = $183; - $185 = HEAP32[$184>>2]|0; - $186 = (($183) + 4)|0; - $187 = $186; - $188 = HEAP32[$187>>2]|0; - $189 = (_sqlite3LogEst($185,$188)|0); - $190 = HEAP32[$pItem>>2]|0; - $191 = (($190) + 16|0); - $192 = HEAP32[$191>>2]|0; - $193 = (($192) + 28|0); - HEAP16[$193>>1] = $189; - $194 = HEAP32[$pItem>>2]|0; - $195 = (($194) + 37|0); - $196 = HEAP8[$195>>0]|0; - $197 = $196 & -5; - $198 = $197 | 4; - HEAP8[$195>>0] = $198; - $199 = (($dest) + 8|0); - $200 = HEAP32[$199>>2]|0; - $201 = HEAP32[$pItem>>2]|0; - $202 = (($201) + 32|0); - HEAP32[$202>>2] = $200; - $203 = HEAP32[$v>>2]|0; - $204 = HEAP32[$pItem>>2]|0; - $205 = (($204) + 28|0); - $206 = HEAP32[$205>>2]|0; - (_sqlite3VdbeAddOp1($203,21,$206)|0); - $207 = HEAP32[$v>>2]|0; - $208 = HEAP32[$addrTop>>2]|0; - $209 = (($208) - 1)|0; - _sqlite3VdbeJumpHere($207,$209); - $210 = HEAP32[$1>>2]|0; - _sqlite3ClearTempRegCache($210); - break L27; - } - } while(0); - HEAP32[$onceAddr>>2] = 0; - $211 = HEAP32[$1>>2]|0; - $212 = (($211) + 72|0); - $213 = HEAP32[$212>>2]|0; - $214 = (($213) + 1)|0; - HEAP32[$212>>2] = $214; - $215 = HEAP32[$pItem>>2]|0; - $216 = (($215) + 28|0); - HEAP32[$216>>2] = $214; - $217 = HEAP32[$v>>2]|0; - $218 = HEAP32[$pItem>>2]|0; - $219 = (($218) + 28|0); - $220 = HEAP32[$219>>2]|0; - $221 = (_sqlite3VdbeAddOp2($217,25,0,$220)|0); - HEAP32[$topAddr>>2] = $221; - $222 = HEAP32[$topAddr>>2]|0; - $223 = (($222) + 1)|0; - $224 = HEAP32[$pItem>>2]|0; - $225 = (($224) + 24|0); - HEAP32[$225>>2] = $223; - $226 = HEAP32[$pItem>>2]|0; - $227 = (($226) + 37|0); - $228 = HEAP8[$227>>0]|0; - $229 = ($228&255) >>> 1; - $230 = $229 & 1; - $231 = $230&255; - $232 = ($231|0)==(0); - if ($232) { - $233 = HEAP32[$1>>2]|0; - $234 = (_sqlite3CodeOnce($233)|0); - HEAP32[$onceAddr>>2] = $234; - } - $235 = HEAP32[$pItem>>2]|0; - $236 = (($235) + 40|0); - $237 = HEAP32[$236>>2]|0; - _sqlite3SelectDestInit($dest,12,$237); - $238 = HEAP32[$1>>2]|0; - $239 = (($238) + 468|0); - $240 = HEAP32[$239>>2]|0; - $241 = $240&255; - $242 = HEAP32[$pItem>>2]|0; - $243 = (($242) + 38|0); - HEAP8[$243>>0] = $241; - $244 = HEAP32[$1>>2]|0; - $245 = HEAP32[$pSub>>2]|0; - (_sqlite3Select($244,$245,$dest)|0); - $246 = HEAP32[$pSub>>2]|0; - $247 = (($246) + 24|0); - $248 = $247; - $249 = $248; - $250 = HEAP32[$249>>2]|0; - $251 = (($248) + 4)|0; - $252 = $251; - $253 = HEAP32[$252>>2]|0; - $254 = (_sqlite3LogEst($250,$253)|0); - $255 = HEAP32[$pItem>>2]|0; - $256 = (($255) + 16|0); - $257 = HEAP32[$256>>2]|0; - $258 = (($257) + 28|0); - HEAP16[$258>>1] = $254; - $259 = HEAP32[$onceAddr>>2]|0; - $260 = ($259|0)!=(0); - if ($260) { - $261 = HEAP32[$v>>2]|0; - $262 = HEAP32[$onceAddr>>2]|0; - _sqlite3VdbeJumpHere($261,$262); - } - $263 = HEAP32[$v>>2]|0; - $264 = HEAP32[$pItem>>2]|0; - $265 = (($264) + 28|0); - $266 = HEAP32[$265>>2]|0; - $267 = (_sqlite3VdbeAddOp1($263,18,$266)|0); - HEAP32[$retAddr>>2] = $267; - $268 = HEAP32[$v>>2]|0; - $269 = HEAP32[$topAddr>>2]|0; - $270 = HEAP32[$retAddr>>2]|0; - _sqlite3VdbeChangeP1($268,$269,$270); - $271 = HEAP32[$1>>2]|0; - _sqlite3ClearTempRegCache($271); - } - } while(0); - $272 = HEAP32[$db>>2]|0; - $273 = (($272) + 64|0); - $274 = HEAP8[$273>>0]|0; - $275 = ($274<<24>>24)!=(0); - if ($275) { - break L12; - } - $276 = HEAP32[$2>>2]|0; - $277 = (_sqlite3SelectExprHeight($276)|0); - $278 = HEAP32[$1>>2]|0; - $279 = (($278) + 460|0); - $280 = HEAP32[$279>>2]|0; - $281 = (($280) - ($277))|0; - HEAP32[$279>>2] = $281; - $282 = HEAP32[$2>>2]|0; - $283 = (($282) + 32|0); - $284 = HEAP32[$283>>2]|0; - HEAP32[$pTabList>>2] = $284; - $285 = HEAP32[$3>>2]|0; - $286 = HEAP8[$285>>0]|0; - $287 = $286&255; - $288 = ($287|0)<=(8); - if (!($288)) { - $289 = HEAP32[$2>>2]|0; - $290 = (($289) + 48|0); - $291 = HEAP32[$290>>2]|0; - HEAP32[$sSort>>2] = $291; - } - } - } while(0); - $292 = HEAP32[$i>>2]|0; - $293 = (($292) + 1)|0; - HEAP32[$i>>2] = $293; - } - $294 = HEAP32[$2>>2]|0; - $295 = HEAP32[$294>>2]|0; - HEAP32[$pEList>>2] = $295; - $296 = HEAP32[$2>>2]|0; - $297 = (($296) + 36|0); - $298 = HEAP32[$297>>2]|0; - HEAP32[$pWhere>>2] = $298; - $299 = HEAP32[$2>>2]|0; - $300 = (($299) + 40|0); - $301 = HEAP32[$300>>2]|0; - HEAP32[$pGroupBy>>2] = $301; - $302 = HEAP32[$2>>2]|0; - $303 = (($302) + 44|0); - $304 = HEAP32[$303>>2]|0; - HEAP32[$pHaving>>2] = $304; - $305 = HEAP32[$2>>2]|0; - $306 = (($305) + 6|0); - $307 = HEAP16[$306>>1]|0; - $308 = $307&65535; - $309 = $308 & 1; - $310 = ($309|0)!=(0); - $311 = $310&1; - $312 = $311&255; - HEAP8[$sDistinct>>0] = $312; - $313 = HEAP32[$2>>2]|0; - $314 = (($313) + 52|0); - $315 = HEAP32[$314>>2]|0; - $316 = ($315|0)!=(0|0); - if ($316) { - $317 = HEAP32[$1>>2]|0; - $318 = HEAP32[$2>>2]|0; - $319 = HEAP32[$3>>2]|0; - $320 = (_multiSelect($317,$318,$319)|0); - HEAP32[$rc>>2] = $320; - $321 = HEAP32[$iRestoreSelectId>>2]|0; - $322 = HEAP32[$1>>2]|0; - $323 = (($322) + 464|0); - HEAP32[$323>>2] = $321; - $324 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $324; - $1178 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($1178|0); - } - $325 = HEAP32[$2>>2]|0; - $326 = (($325) + 6|0); - $327 = HEAP16[$326>>1]|0; - $328 = $327&65535; - $329 = $328 & 5; - $330 = ($329|0)==(1); - if ($330) { - $331 = HEAP32[$sSort>>2]|0; - $332 = HEAP32[$2>>2]|0; - $333 = HEAP32[$332>>2]|0; - $334 = (_sqlite3ExprListCompare($331,$333,-1)|0); - $335 = ($334|0)==(0); - if ($335) { - $336 = HEAP32[$2>>2]|0; - $337 = (($336) + 6|0); - $338 = HEAP16[$337>>1]|0; - $339 = $338&65535; - $340 = $339 & -2; - $341 = $340&65535; - HEAP16[$337>>1] = $341; - $342 = HEAP32[$db>>2]|0; - $343 = HEAP32[$2>>2]|0; - $344 = HEAP32[$343>>2]|0; - $345 = (_sqlite3ExprListDup($342,$344,0)|0); - $346 = HEAP32[$2>>2]|0; - $347 = (($346) + 40|0); - HEAP32[$347>>2] = $345; - $348 = HEAP32[$2>>2]|0; - $349 = (($348) + 40|0); - $350 = HEAP32[$349>>2]|0; - HEAP32[$pGroupBy>>2] = $350; - HEAP32[$sSort>>2] = 0; - } - } - $351 = HEAP32[$sSort>>2]|0; - $352 = ($351|0)!=(0|0); - if ($352) { - $353 = HEAP32[$1>>2]|0; - $354 = HEAP32[$sSort>>2]|0; - $355 = (_keyInfoFromExprList($353,$354,0,0)|0); - HEAP32[$pKeyInfo>>2] = $355; - $356 = HEAP32[$1>>2]|0; - $357 = (($356) + 68|0); - $358 = HEAP32[$357>>2]|0; - $359 = (($358) + 1)|0; - HEAP32[$357>>2] = $359; - $360 = (($sSort) + 8|0); - HEAP32[$360>>2] = $358; - $361 = HEAP32[$v>>2]|0; - $362 = (($sSort) + 8|0); - $363 = HEAP32[$362>>2]|0; - $364 = HEAP32[$sSort>>2]|0; - $365 = HEAP32[$364>>2]|0; - $366 = (($365) + 2)|0; - $367 = HEAP32[$pKeyInfo>>2]|0; - $368 = (_sqlite3VdbeAddOp4($361,55,$363,$366,0,$367,-6)|0); - $369 = (($sSort) + 20|0); - HEAP32[$369>>2] = $368; - } else { - $370 = (($sSort) + 20|0); - HEAP32[$370>>2] = -1; - } - $371 = HEAP32[$3>>2]|0; - $372 = HEAP8[$371>>0]|0; - $373 = $372&255; - $374 = ($373|0)==(12); - if ($374) { - $375 = HEAP32[$v>>2]|0; - $376 = HEAP32[$3>>2]|0; - $377 = (($376) + 4|0); - $378 = HEAP32[$377>>2]|0; - $379 = HEAP32[$pEList>>2]|0; - $380 = HEAP32[$379>>2]|0; - (_sqlite3VdbeAddOp2($375,55,$378,$380)|0); - } - $381 = HEAP32[$v>>2]|0; - $382 = (_sqlite3VdbeMakeLabel($381)|0); - HEAP32[$iEnd>>2] = $382; - $383 = HEAP32[$2>>2]|0; - $384 = (($383) + 24|0); - $385 = $384; - $386 = $385; - HEAP32[$386>>2] = -1; - $387 = (($385) + 4)|0; - $388 = $387; - HEAP32[$388>>2] = 2147483647; - $389 = HEAP32[$1>>2]|0; - $390 = HEAP32[$2>>2]|0; - $391 = HEAP32[$iEnd>>2]|0; - _computeLimitRegisters($389,$390,$391); - $392 = HEAP32[$2>>2]|0; - $393 = (($392) + 8|0); - $394 = HEAP32[$393>>2]|0; - $395 = ($394|0)==(0); - if ($395) { - $396 = (($sSort) + 20|0); - $397 = HEAP32[$396>>2]|0; - $398 = ($397|0)>=(0); - if ($398) { - $399 = HEAP32[$v>>2]|0; - $400 = (($sSort) + 20|0); - $401 = HEAP32[$400>>2]|0; - $402 = (_sqlite3VdbeGetOp($399,$401)|0); - HEAP8[$402>>0] = 56; - $403 = (($sSort) + 24|0); - $404 = HEAP8[$403>>0]|0; - $405 = $404&255; - $406 = $405 | 1; - $407 = $406&255; - HEAP8[$403>>0] = $407; - } - } - $408 = HEAP32[$2>>2]|0; - $409 = (($408) + 6|0); - $410 = HEAP16[$409>>1]|0; - $411 = $410&65535; - $412 = $411 & 1; - $413 = ($412|0)!=(0); - if ($413) { - $414 = HEAP32[$1>>2]|0; - $415 = (($414) + 68|0); - $416 = HEAP32[$415>>2]|0; - $417 = (($416) + 1)|0; - HEAP32[$415>>2] = $417; - $418 = (($sDistinct) + 4|0); - HEAP32[$418>>2] = $416; - $419 = HEAP32[$v>>2]|0; - $420 = (($sDistinct) + 4|0); - $421 = HEAP32[$420>>2]|0; - $422 = HEAP32[$1>>2]|0; - $423 = HEAP32[$2>>2]|0; - $424 = HEAP32[$423>>2]|0; - $425 = (_keyInfoFromExprList($422,$424,0,0)|0); - $426 = (_sqlite3VdbeAddOp4($419,55,$421,0,0,$425,-6)|0); - $427 = (($sDistinct) + 8|0); - HEAP32[$427>>2] = $426; - $428 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($428,8); - $429 = (($sDistinct) + 1|0); - HEAP8[$429>>0] = 3; - } else { - $430 = (($sDistinct) + 1|0); - HEAP8[$430>>0] = 0; - } - $431 = HEAP32[$isAgg>>2]|0; - $432 = ($431|0)!=(0); - if ($432) { - label = 67; - } else { - $433 = HEAP32[$pGroupBy>>2]|0; - $434 = ($433|0)==(0|0); - if ($434) { - $435 = HEAP8[$sDistinct>>0]|0; - $436 = $435&255; - $437 = ($436|0)!=(0); - $438 = $437 ? 1024 : 0; - $439 = $438&65535; - HEAP16[$wctrlFlags>>1] = $439; - $440 = HEAP32[$1>>2]|0; - $441 = HEAP32[$pTabList>>2]|0; - $442 = HEAP32[$pWhere>>2]|0; - $443 = HEAP32[$sSort>>2]|0; - $444 = HEAP32[$2>>2]|0; - $445 = HEAP32[$444>>2]|0; - $446 = HEAP16[$wctrlFlags>>1]|0; - $447 = (_sqlite3WhereBegin($440,$441,$442,$443,$445,$446,0)|0); - HEAP32[$pWInfo>>2] = $447; - $448 = HEAP32[$pWInfo>>2]|0; - $449 = ($448|0)==(0|0); - if ($449) { - break; - } - $450 = HEAP32[$pWInfo>>2]|0; - $451 = (_sqlite3WhereOutputRowCount($450)|0); - $452 = tempRet0; - $453 = HEAP32[$2>>2]|0; - $454 = (($453) + 24|0); - $455 = $454; - $456 = $455; - $457 = HEAP32[$456>>2]|0; - $458 = (($455) + 4)|0; - $459 = $458; - $460 = HEAP32[$459>>2]|0; - $461 = ($452>>>0)<($460>>>0); - $462 = ($452|0)==($460|0); - $463 = ($451>>>0)<($457>>>0); - $464 = $462 & $463; - $465 = $461 | $464; - if ($465) { - $466 = HEAP32[$pWInfo>>2]|0; - $467 = (_sqlite3WhereOutputRowCount($466)|0); - $468 = tempRet0; - $469 = HEAP32[$2>>2]|0; - $470 = (($469) + 24|0); - $471 = $470; - $472 = $471; - HEAP32[$472>>2] = $467; - $473 = (($471) + 4)|0; - $474 = $473; - HEAP32[$474>>2] = $468; - } - $475 = HEAP8[$sDistinct>>0]|0; - $476 = $475&255; - $477 = ($476|0)!=(0); - do { - if ($477) { - $478 = HEAP32[$pWInfo>>2]|0; - $479 = (_sqlite3WhereIsDistinct($478)|0); - $480 = ($479|0)!=(0); - if (!($480)) { - break; - } - $481 = HEAP32[$pWInfo>>2]|0; - $482 = (_sqlite3WhereIsDistinct($481)|0); - $483 = $482&255; - $484 = (($sDistinct) + 1|0); - HEAP8[$484>>0] = $483; - } - } while(0); - $485 = HEAP32[$sSort>>2]|0; - $486 = ($485|0)!=(0|0); - do { - if ($486) { - $487 = HEAP32[$pWInfo>>2]|0; - $488 = (_sqlite3WhereIsOrdered($487)|0); - $489 = (($sSort) + 4|0); - HEAP32[$489>>2] = $488; - $490 = (($sSort) + 4|0); - $491 = HEAP32[$490>>2]|0; - $492 = HEAP32[$sSort>>2]|0; - $493 = HEAP32[$492>>2]|0; - $494 = ($491|0)==($493|0); - if (!($494)) { - break; - } - HEAP32[$sSort>>2] = 0; - } - } while(0); - $495 = (($sSort) + 20|0); - $496 = HEAP32[$495>>2]|0; - $497 = ($496|0)>=(0); - do { - if ($497) { - $498 = HEAP32[$sSort>>2]|0; - $499 = ($498|0)==(0|0); - if (!($499)) { - break; - } - $500 = HEAP32[$v>>2]|0; - $501 = (($sSort) + 20|0); - $502 = HEAP32[$501>>2]|0; - _sqlite3VdbeChangeToNoop($500,$502); - } - } while(0); - $503 = HEAP32[$1>>2]|0; - $504 = HEAP32[$2>>2]|0; - $505 = HEAP32[$pEList>>2]|0; - $506 = HEAP32[$3>>2]|0; - $507 = HEAP32[$pWInfo>>2]|0; - $508 = (_sqlite3WhereContinueLabel($507)|0); - $509 = HEAP32[$pWInfo>>2]|0; - $510 = (_sqlite3WhereBreakLabel($509)|0); - _selectInnerLoop($503,$504,$505,-1,$sSort,$sDistinct,$506,$508,$510); - $511 = HEAP32[$pWInfo>>2]|0; - _sqlite3WhereEnd($511); - } else { - label = 67; - } - } - if ((label|0) == 67) { - HEAP32[$sortPTab>>2] = 0; - HEAP32[$sortOut>>2] = 0; - HEAP32[$orderByGrp>>2] = 0; - $512 = HEAP32[$pGroupBy>>2]|0; - $513 = ($512|0)!=(0|0); - $514 = HEAP32[$2>>2]|0; - do { - if ($513) { - $515 = HEAP32[$514>>2]|0; - $516 = HEAP32[$515>>2]|0; - HEAP32[$k>>2] = $516; - $517 = HEAP32[$2>>2]|0; - $518 = HEAP32[$517>>2]|0; - $519 = (($518) + 4|0); - $520 = HEAP32[$519>>2]|0; - HEAP32[$pItem1>>2] = $520; - while(1) { - $521 = HEAP32[$k>>2]|0; - $522 = ($521|0)>(0); - if (!($522)) { - break; - } - $523 = HEAP32[$pItem1>>2]|0; - $524 = (($523) + 16|0); - $525 = (($524) + 2|0); - HEAP16[$525>>1] = 0; - $526 = HEAP32[$k>>2]|0; - $527 = (($526) + -1)|0; - HEAP32[$k>>2] = $527; - $528 = HEAP32[$pItem1>>2]|0; - $529 = (($528) + 20|0); - HEAP32[$pItem1>>2] = $529; - } - $530 = HEAP32[$pGroupBy>>2]|0; - $531 = HEAP32[$530>>2]|0; - HEAP32[$k>>2] = $531; - $532 = HEAP32[$pGroupBy>>2]|0; - $533 = (($532) + 4|0); - $534 = HEAP32[$533>>2]|0; - HEAP32[$pItem1>>2] = $534; - while(1) { - $535 = HEAP32[$k>>2]|0; - $536 = ($535|0)>(0); - if (!($536)) { - break; - } - $537 = HEAP32[$pItem1>>2]|0; - $538 = (($537) + 16|0); - $539 = (($538) + 2|0); - HEAP16[$539>>1] = 0; - $540 = HEAP32[$k>>2]|0; - $541 = (($540) + -1)|0; - HEAP32[$k>>2] = $541; - $542 = HEAP32[$pItem1>>2]|0; - $543 = (($542) + 20|0); - HEAP32[$pItem1>>2] = $543; - } - $544 = HEAP32[$2>>2]|0; - $545 = (($544) + 24|0); - $546 = $545; - $547 = $546; - $548 = HEAP32[$547>>2]|0; - $549 = (($546) + 4)|0; - $550 = $549; - $551 = HEAP32[$550>>2]|0; - $552 = ($551>>>0)>(0); - $553 = ($551|0)==(0); - $554 = ($548>>>0)>(100); - $555 = $553 & $554; - $556 = $552 | $555; - if (!($556)) { - break; - } - $557 = HEAP32[$2>>2]|0; - $558 = (($557) + 24|0); - $559 = $558; - $560 = $559; - HEAP32[$560>>2] = 100; - $561 = (($559) + 4)|0; - $562 = $561; - HEAP32[$562>>2] = 0; - } else { - $563 = (($514) + 24|0); - $564 = $563; - $565 = $564; - HEAP32[$565>>2] = 1; - $566 = (($564) + 4)|0; - $567 = $566; - HEAP32[$567>>2] = 0; - } - } while(0); - $568 = HEAP32[$pGroupBy>>2]|0; - $569 = HEAP32[$sSort>>2]|0; - $570 = (_sqlite3ExprListCompare($568,$569,-1)|0); - $571 = ($570|0)==(0); - if ($571) { - HEAP32[$orderByGrp>>2] = 1; - } - $572 = HEAP32[$v>>2]|0; - $573 = (_sqlite3VdbeMakeLabel($572)|0); - HEAP32[$addrEnd>>2] = $573; - ;HEAP32[$sNC+0>>2]=0|0;HEAP32[$sNC+4>>2]=0|0;HEAP32[$sNC+8>>2]=0|0;HEAP32[$sNC+12>>2]=0|0;HEAP32[$sNC+16>>2]=0|0;HEAP32[$sNC+20>>2]=0|0;HEAP32[$sNC+24>>2]=0|0;HEAP32[$sNC+28>>2]=0|0; - $574 = HEAP32[$1>>2]|0; - HEAP32[$sNC>>2] = $574; - $575 = HEAP32[$pTabList>>2]|0; - $576 = (($sNC) + 4|0); - HEAP32[$576>>2] = $575; - $577 = (($sNC) + 12|0); - HEAP32[$577>>2] = $sAggInfo; - $578 = HEAP32[$1>>2]|0; - $579 = (($578) + 72|0); - $580 = HEAP32[$579>>2]|0; - $581 = (($580) + 1)|0; - $582 = (($sAggInfo) + 16|0); - HEAP32[$582>>2] = $581; - $583 = HEAP32[$pGroupBy>>2]|0; - $584 = ($583|0)!=(0|0); - if ($584) { - $585 = HEAP32[$pGroupBy>>2]|0; - $586 = HEAP32[$585>>2]|0; - $587 = (($586) + 1)|0; - $589 = $587; - } else { - $589 = 0; - } - $588 = (($sAggInfo) + 12|0); - HEAP32[$588>>2] = $589; - $590 = HEAP32[$pGroupBy>>2]|0; - $591 = (($sAggInfo) + 24|0); - HEAP32[$591>>2] = $590; - $592 = HEAP32[$pEList>>2]|0; - _sqlite3ExprAnalyzeAggList($sNC,$592); - $593 = HEAP32[$sSort>>2]|0; - _sqlite3ExprAnalyzeAggList($sNC,$593); - $594 = HEAP32[$pHaving>>2]|0; - $595 = ($594|0)!=(0|0); - if ($595) { - $596 = HEAP32[$pHaving>>2]|0; - _sqlite3ExprAnalyzeAggregates($sNC,$596); - } - $597 = (($sAggInfo) + 32|0); - $598 = HEAP32[$597>>2]|0; - $599 = (($sAggInfo) + 36|0); - HEAP32[$599>>2] = $598; - HEAP32[$i>>2] = 0; - while(1) { - $600 = HEAP32[$i>>2]|0; - $601 = (($sAggInfo) + 44|0); - $602 = HEAP32[$601>>2]|0; - $603 = ($600|0)<($602|0); - if (!($603)) { - break; - } - $604 = (($sNC) + 28|0); - $605 = HEAP8[$604>>0]|0; - $606 = $605&255; - $607 = $606 | 8; - $608 = $607&255; - HEAP8[$604>>0] = $608; - $609 = HEAP32[$i>>2]|0; - $610 = (($sAggInfo) + 40|0); - $611 = HEAP32[$610>>2]|0; - $612 = (($611) + ($609<<4)|0); - $613 = HEAP32[$612>>2]|0; - $614 = (($613) + 20|0); - $615 = HEAP32[$614>>2]|0; - _sqlite3ExprAnalyzeAggList($sNC,$615); - $616 = (($sNC) + 28|0); - $617 = HEAP8[$616>>0]|0; - $618 = $617&255; - $619 = $618 & -9; - $620 = $619&255; - HEAP8[$616>>0] = $620; - $621 = HEAP32[$i>>2]|0; - $622 = (($621) + 1)|0; - HEAP32[$i>>2] = $622; - } - $623 = HEAP32[$1>>2]|0; - $624 = (($623) + 72|0); - $625 = HEAP32[$624>>2]|0; - $626 = (($sAggInfo) + 20|0); - HEAP32[$626>>2] = $625; - $627 = HEAP32[$db>>2]|0; - $628 = (($627) + 64|0); - $629 = HEAP8[$628>>0]|0; - $630 = ($629<<24>>24)!=(0); - if ($630) { - break; - } - $631 = HEAP32[$pGroupBy>>2]|0; - $632 = ($631|0)!=(0|0); - if ($632) { - $633 = HEAP32[$1>>2]|0; - $634 = (($633) + 68|0); - $635 = HEAP32[$634>>2]|0; - $636 = (($635) + 1)|0; - HEAP32[$634>>2] = $636; - $637 = (($sAggInfo) + 4|0); - HEAP32[$637>>2] = $635; - $638 = HEAP32[$1>>2]|0; - $639 = HEAP32[$pGroupBy>>2]|0; - $640 = (_keyInfoFromExprList($638,$639,0,0)|0); - HEAP32[$pKeyInfo2>>2] = $640; - $641 = HEAP32[$v>>2]|0; - $642 = (($sAggInfo) + 4|0); - $643 = HEAP32[$642>>2]|0; - $644 = (($sAggInfo) + 12|0); - $645 = HEAP32[$644>>2]|0; - $646 = HEAP32[$pKeyInfo2>>2]|0; - $647 = (_sqlite3VdbeAddOp4($641,56,$643,$645,0,$646,-6)|0); - HEAP32[$addrSortingIdx>>2] = $647; - $648 = HEAP32[$1>>2]|0; - $649 = (($648) + 72|0); - $650 = HEAP32[$649>>2]|0; - $651 = (($650) + 1)|0; - HEAP32[$649>>2] = $651; - HEAP32[$iUseFlag>>2] = $651; - $652 = HEAP32[$1>>2]|0; - $653 = (($652) + 72|0); - $654 = HEAP32[$653>>2]|0; - $655 = (($654) + 1)|0; - HEAP32[$653>>2] = $655; - HEAP32[$iAbortFlag>>2] = $655; - $656 = HEAP32[$1>>2]|0; - $657 = (($656) + 72|0); - $658 = HEAP32[$657>>2]|0; - $659 = (($658) + 1)|0; - HEAP32[$657>>2] = $659; - HEAP32[$regOutputRow>>2] = $659; - $660 = HEAP32[$v>>2]|0; - $661 = (_sqlite3VdbeMakeLabel($660)|0); - HEAP32[$addrOutputRow>>2] = $661; - $662 = HEAP32[$1>>2]|0; - $663 = (($662) + 72|0); - $664 = HEAP32[$663>>2]|0; - $665 = (($664) + 1)|0; - HEAP32[$663>>2] = $665; - HEAP32[$regReset>>2] = $665; - $666 = HEAP32[$v>>2]|0; - $667 = (_sqlite3VdbeMakeLabel($666)|0); - HEAP32[$addrReset>>2] = $667; - $668 = HEAP32[$1>>2]|0; - $669 = (($668) + 72|0); - $670 = HEAP32[$669>>2]|0; - $671 = (($670) + 1)|0; - HEAP32[$iAMem>>2] = $671; - $672 = HEAP32[$pGroupBy>>2]|0; - $673 = HEAP32[$672>>2]|0; - $674 = HEAP32[$1>>2]|0; - $675 = (($674) + 72|0); - $676 = HEAP32[$675>>2]|0; - $677 = (($676) + ($673))|0; - HEAP32[$675>>2] = $677; - $678 = HEAP32[$1>>2]|0; - $679 = (($678) + 72|0); - $680 = HEAP32[$679>>2]|0; - $681 = (($680) + 1)|0; - HEAP32[$iBMem>>2] = $681; - $682 = HEAP32[$pGroupBy>>2]|0; - $683 = HEAP32[$682>>2]|0; - $684 = HEAP32[$1>>2]|0; - $685 = (($684) + 72|0); - $686 = HEAP32[$685>>2]|0; - $687 = (($686) + ($683))|0; - HEAP32[$685>>2] = $687; - $688 = HEAP32[$v>>2]|0; - $689 = HEAP32[$iAbortFlag>>2]|0; - (_sqlite3VdbeAddOp2($688,25,0,$689)|0); - $690 = HEAP32[$v>>2]|0; - $691 = HEAP32[$iUseFlag>>2]|0; - (_sqlite3VdbeAddOp2($690,25,0,$691)|0); - $692 = HEAP32[$v>>2]|0; - $693 = HEAP32[$iAMem>>2]|0; - $694 = HEAP32[$iAMem>>2]|0; - $695 = HEAP32[$pGroupBy>>2]|0; - $696 = HEAP32[$695>>2]|0; - $697 = (($694) + ($696))|0; - $698 = (($697) - 1)|0; - (_sqlite3VdbeAddOp3($692,28,0,$693,$698)|0); - $699 = HEAP32[$v>>2]|0; - $700 = HEAP32[$regReset>>2]|0; - $701 = HEAP32[$addrReset>>2]|0; - (_sqlite3VdbeAddOp2($699,17,$700,$701)|0); - $702 = HEAP32[$1>>2]|0; - $703 = HEAP32[$pTabList>>2]|0; - $704 = HEAP32[$pWhere>>2]|0; - $705 = HEAP32[$pGroupBy>>2]|0; - $706 = HEAP32[$orderByGrp>>2]|0; - $707 = ($706|0)!=(0); - $708 = $707 ? 2048 : 0; - $709 = 256 | $708; - $710 = $709&65535; - $711 = (_sqlite3WhereBegin($702,$703,$704,$705,0,$710,0)|0); - HEAP32[$pWInfo>>2] = $711; - $712 = HEAP32[$pWInfo>>2]|0; - $713 = ($712|0)==(0|0); - if ($713) { - break; - } - $714 = HEAP32[$pWInfo>>2]|0; - $715 = (_sqlite3WhereIsOrdered($714)|0); - $716 = HEAP32[$pGroupBy>>2]|0; - $717 = HEAP32[$716>>2]|0; - $718 = ($715|0)==($717|0); - if ($718) { - HEAP32[$groupBySort>>2] = 0; - } else { - $719 = HEAP32[$1>>2]|0; - $720 = HEAP8[$sDistinct>>0]|0; - $721 = $720&255; - $722 = ($721|0)!=(0); - if ($722) { - $723 = HEAP32[$2>>2]|0; - $724 = (($723) + 6|0); - $725 = HEAP16[$724>>1]|0; - $726 = $725&65535; - $727 = $726 & 1; - $728 = ($727|0)==(0); - $730 = $728; - } else { - $730 = 0; - } - $729 = $730 ? 24688 : 24704; - _explainTempTable($719,$729); - HEAP32[$groupBySort>>2] = 1; - $731 = HEAP32[$pGroupBy>>2]|0; - $732 = HEAP32[$731>>2]|0; - HEAP32[$nGroupBy>>2] = $732; - $733 = HEAP32[$nGroupBy>>2]|0; - $734 = (($733) + 1)|0; - HEAP32[$nCol>>2] = $734; - $735 = HEAP32[$nGroupBy>>2]|0; - $736 = (($735) + 1)|0; - HEAP32[$j>>2] = $736; - HEAP32[$i>>2] = 0; - while(1) { - $737 = HEAP32[$i>>2]|0; - $738 = (($sAggInfo) + 32|0); - $739 = HEAP32[$738>>2]|0; - $740 = ($737|0)<($739|0); - if (!($740)) { - break; - } - $741 = HEAP32[$i>>2]|0; - $742 = (($sAggInfo) + 28|0); - $743 = HEAP32[$742>>2]|0; - $744 = (($743) + (($741*24)|0)|0); - $745 = (($744) + 12|0); - $746 = HEAP32[$745>>2]|0; - $747 = HEAP32[$j>>2]|0; - $748 = ($746|0)>=($747|0); - if ($748) { - $749 = HEAP32[$nCol>>2]|0; - $750 = (($749) + 1)|0; - HEAP32[$nCol>>2] = $750; - $751 = HEAP32[$j>>2]|0; - $752 = (($751) + 1)|0; - HEAP32[$j>>2] = $752; - } - $753 = HEAP32[$i>>2]|0; - $754 = (($753) + 1)|0; - HEAP32[$i>>2] = $754; - } - $755 = HEAP32[$1>>2]|0; - $756 = HEAP32[$nCol>>2]|0; - $757 = (_sqlite3GetTempRange($755,$756)|0); - HEAP32[$regBase>>2] = $757; - $758 = HEAP32[$1>>2]|0; - _sqlite3ExprCacheClear($758); - $759 = HEAP32[$1>>2]|0; - $760 = HEAP32[$pGroupBy>>2]|0; - $761 = HEAP32[$regBase>>2]|0; - (_sqlite3ExprCodeExprList($759,$760,$761,0)|0); - $762 = HEAP32[$v>>2]|0; - $763 = (($sAggInfo) + 4|0); - $764 = HEAP32[$763>>2]|0; - $765 = HEAP32[$regBase>>2]|0; - $766 = HEAP32[$nGroupBy>>2]|0; - $767 = (($765) + ($766))|0; - (_sqlite3VdbeAddOp2($762,68,$764,$767)|0); - $768 = HEAP32[$nGroupBy>>2]|0; - $769 = (($768) + 1)|0; - HEAP32[$j>>2] = $769; - HEAP32[$i>>2] = 0; - while(1) { - $770 = HEAP32[$i>>2]|0; - $771 = (($sAggInfo) + 32|0); - $772 = HEAP32[$771>>2]|0; - $773 = ($770|0)<($772|0); - if (!($773)) { - break; - } - $774 = HEAP32[$i>>2]|0; - $775 = (($sAggInfo) + 28|0); - $776 = HEAP32[$775>>2]|0; - $777 = (($776) + (($774*24)|0)|0); - HEAP32[$pCol>>2] = $777; - $778 = HEAP32[$pCol>>2]|0; - $779 = (($778) + 12|0); - $780 = HEAP32[$779>>2]|0; - $781 = HEAP32[$j>>2]|0; - $782 = ($780|0)>=($781|0); - if ($782) { - $783 = HEAP32[$j>>2]|0; - $784 = HEAP32[$regBase>>2]|0; - $785 = (($783) + ($784))|0; - HEAP32[$r1>>2] = $785; - $786 = HEAP32[$1>>2]|0; - $787 = HEAP32[$pCol>>2]|0; - $788 = HEAP32[$787>>2]|0; - $789 = HEAP32[$pCol>>2]|0; - $790 = (($789) + 8|0); - $791 = HEAP32[$790>>2]|0; - $792 = HEAP32[$pCol>>2]|0; - $793 = (($792) + 4|0); - $794 = HEAP32[$793>>2]|0; - $795 = HEAP32[$r1>>2]|0; - $796 = (_sqlite3ExprCodeGetColumn($786,$788,$791,$794,$795,0)|0); - HEAP32[$r2>>2] = $796; - $797 = HEAP32[$r1>>2]|0; - $798 = HEAP32[$r2>>2]|0; - $799 = ($797|0)!=($798|0); - if ($799) { - $800 = HEAP32[$v>>2]|0; - $801 = HEAP32[$r2>>2]|0; - $802 = HEAP32[$r1>>2]|0; - (_sqlite3VdbeAddOp2($800,34,$801,$802)|0); - } - $803 = HEAP32[$j>>2]|0; - $804 = (($803) + 1)|0; - HEAP32[$j>>2] = $804; - } - $805 = HEAP32[$i>>2]|0; - $806 = (($805) + 1)|0; - HEAP32[$i>>2] = $806; - } - $807 = HEAP32[$1>>2]|0; - $808 = (_sqlite3GetTempReg($807)|0); - HEAP32[$regRecord>>2] = $808; - $809 = HEAP32[$v>>2]|0; - $810 = HEAP32[$regBase>>2]|0; - $811 = HEAP32[$nCol>>2]|0; - $812 = HEAP32[$regRecord>>2]|0; - (_sqlite3VdbeAddOp3($809,48,$810,$811,$812)|0); - $813 = HEAP32[$v>>2]|0; - $814 = (($sAggInfo) + 4|0); - $815 = HEAP32[$814>>2]|0; - $816 = HEAP32[$regRecord>>2]|0; - (_sqlite3VdbeAddOp2($813,106,$815,$816)|0); - $817 = HEAP32[$1>>2]|0; - $818 = HEAP32[$regRecord>>2]|0; - _sqlite3ReleaseTempReg($817,$818); - $819 = HEAP32[$1>>2]|0; - $820 = HEAP32[$regBase>>2]|0; - $821 = HEAP32[$nCol>>2]|0; - _sqlite3ReleaseTempRange($819,$820,$821); - $822 = HEAP32[$pWInfo>>2]|0; - _sqlite3WhereEnd($822); - $823 = HEAP32[$1>>2]|0; - $824 = (($823) + 68|0); - $825 = HEAP32[$824>>2]|0; - $826 = (($825) + 1)|0; - HEAP32[$824>>2] = $826; - HEAP32[$sortPTab>>2] = $825; - $827 = (($sAggInfo) + 8|0); - HEAP32[$827>>2] = $825; - $828 = HEAP32[$1>>2]|0; - $829 = (_sqlite3GetTempReg($828)|0); - HEAP32[$sortOut>>2] = $829; - $830 = HEAP32[$v>>2]|0; - $831 = HEAP32[$sortPTab>>2]|0; - $832 = HEAP32[$sortOut>>2]|0; - $833 = HEAP32[$nCol>>2]|0; - (_sqlite3VdbeAddOp3($830,57,$831,$832,$833)|0); - $834 = HEAP32[$v>>2]|0; - $835 = (($sAggInfo) + 4|0); - $836 = HEAP32[$835>>2]|0; - $837 = HEAP32[$addrEnd>>2]|0; - (_sqlite3VdbeAddOp2($834,103,$836,$837)|0); - $838 = (($sAggInfo) + 1|0); - HEAP8[$838>>0] = 1; - $839 = HEAP32[$1>>2]|0; - _sqlite3ExprCacheClear($839); - } - $840 = HEAP32[$orderByGrp>>2]|0; - $841 = ($840|0)!=(0); - do { - if ($841) { - $842 = HEAP32[$db>>2]|0; - $843 = (($842) + 60|0); - $844 = HEAP16[$843>>1]|0; - $845 = $844&65535; - $846 = $845 & 4; - $847 = ($846|0)==(0); - if (!($847)) { - break; - } - $848 = HEAP32[$groupBySort>>2]|0; - $849 = ($848|0)!=(0); - if (!($849)) { - $850 = HEAP32[$pWInfo>>2]|0; - $851 = (_sqlite3WhereIsSorted($850)|0); - $852 = ($851|0)!=(0); - if (!($852)) { - break; - } - } - HEAP32[$sSort>>2] = 0; - $853 = HEAP32[$v>>2]|0; - $854 = (($sSort) + 20|0); - $855 = HEAP32[$854>>2]|0; - _sqlite3VdbeChangeToNoop($853,$855); - } - } while(0); - $856 = HEAP32[$v>>2]|0; - $857 = (_sqlite3VdbeCurrentAddr($856)|0); - HEAP32[$addrTopOfLoop>>2] = $857; - $858 = HEAP32[$1>>2]|0; - _sqlite3ExprCacheClear($858); - $859 = HEAP32[$groupBySort>>2]|0; - $860 = ($859|0)!=(0); - if ($860) { - $861 = HEAP32[$v>>2]|0; - $862 = (($sAggInfo) + 4|0); - $863 = HEAP32[$862>>2]|0; - $864 = HEAP32[$sortOut>>2]|0; - (_sqlite3VdbeAddOp2($861,95,$863,$864)|0); - } - HEAP32[$j>>2] = 0; - while(1) { - $865 = HEAP32[$j>>2]|0; - $866 = HEAP32[$pGroupBy>>2]|0; - $867 = HEAP32[$866>>2]|0; - $868 = ($865|0)<($867|0); - if (!($868)) { - break; - } - $869 = HEAP32[$groupBySort>>2]|0; - $870 = ($869|0)!=(0); - do { - if ($870) { - $871 = HEAP32[$v>>2]|0; - $872 = HEAP32[$sortPTab>>2]|0; - $873 = HEAP32[$j>>2]|0; - $874 = HEAP32[$iBMem>>2]|0; - $875 = HEAP32[$j>>2]|0; - $876 = (($874) + ($875))|0; - (_sqlite3VdbeAddOp3($871,46,$872,$873,$876)|0); - $877 = HEAP32[$j>>2]|0; - $878 = ($877|0)==(0); - if (!($878)) { - break; - } - $879 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($879,32); - } else { - HEAP8[$sAggInfo>>0] = 1; - $880 = HEAP32[$1>>2]|0; - $881 = HEAP32[$j>>2]|0; - $882 = HEAP32[$pGroupBy>>2]|0; - $883 = (($882) + 4|0); - $884 = HEAP32[$883>>2]|0; - $885 = (($884) + (($881*20)|0)|0); - $886 = HEAP32[$885>>2]|0; - $887 = HEAP32[$iBMem>>2]|0; - $888 = HEAP32[$j>>2]|0; - $889 = (($887) + ($888))|0; - _sqlite3ExprCode($880,$886,$889); - } - } while(0); - $890 = HEAP32[$j>>2]|0; - $891 = (($890) + 1)|0; - HEAP32[$j>>2] = $891; - } - $892 = HEAP32[$v>>2]|0; - $893 = HEAP32[$iAMem>>2]|0; - $894 = HEAP32[$iBMem>>2]|0; - $895 = HEAP32[$pGroupBy>>2]|0; - $896 = HEAP32[$895>>2]|0; - $897 = HEAP32[$pKeyInfo2>>2]|0; - $898 = (_sqlite3KeyInfoRef($897)|0); - (_sqlite3VdbeAddOp4($892,41,$893,$894,$896,$898,-6)|0); - $899 = HEAP32[$v>>2]|0; - $900 = (_sqlite3VdbeCurrentAddr($899)|0); - HEAP32[$j1>>2] = $900; - $901 = HEAP32[$v>>2]|0; - $902 = HEAP32[$j1>>2]|0; - $903 = (($902) + 1)|0; - $904 = HEAP32[$j1>>2]|0; - $905 = (($904) + 1)|0; - (_sqlite3VdbeAddOp3($901,42,$903,0,$905)|0); - $906 = HEAP32[$1>>2]|0; - $907 = HEAP32[$iBMem>>2]|0; - $908 = HEAP32[$iAMem>>2]|0; - $909 = HEAP32[$pGroupBy>>2]|0; - $910 = HEAP32[$909>>2]|0; - _sqlite3ExprCodeMove($906,$907,$908,$910); - $911 = HEAP32[$v>>2]|0; - $912 = HEAP32[$regOutputRow>>2]|0; - $913 = HEAP32[$addrOutputRow>>2]|0; - (_sqlite3VdbeAddOp2($911,17,$912,$913)|0); - $914 = HEAP32[$v>>2]|0; - $915 = HEAP32[$iAbortFlag>>2]|0; - $916 = HEAP32[$addrEnd>>2]|0; - (_sqlite3VdbeAddOp2($914,134,$915,$916)|0); - $917 = HEAP32[$v>>2]|0; - $918 = HEAP32[$regReset>>2]|0; - $919 = HEAP32[$addrReset>>2]|0; - (_sqlite3VdbeAddOp2($917,17,$918,$919)|0); - $920 = HEAP32[$v>>2]|0; - $921 = HEAP32[$j1>>2]|0; - _sqlite3VdbeJumpHere($920,$921); - $922 = HEAP32[$1>>2]|0; - _updateAccumulator($922,$sAggInfo); - $923 = HEAP32[$v>>2]|0; - $924 = HEAP32[$iUseFlag>>2]|0; - (_sqlite3VdbeAddOp2($923,25,1,$924)|0); - $925 = HEAP32[$groupBySort>>2]|0; - $926 = ($925|0)!=(0); - if ($926) { - $927 = HEAP32[$v>>2]|0; - $928 = (($sAggInfo) + 4|0); - $929 = HEAP32[$928>>2]|0; - $930 = HEAP32[$addrTopOfLoop>>2]|0; - (_sqlite3VdbeAddOp2($927,5,$929,$930)|0); - } else { - $931 = HEAP32[$pWInfo>>2]|0; - _sqlite3WhereEnd($931); - $932 = HEAP32[$v>>2]|0; - $933 = HEAP32[$addrSortingIdx>>2]|0; - _sqlite3VdbeChangeToNoop($932,$933); - } - $934 = HEAP32[$v>>2]|0; - $935 = HEAP32[$regOutputRow>>2]|0; - $936 = HEAP32[$addrOutputRow>>2]|0; - (_sqlite3VdbeAddOp2($934,17,$935,$936)|0); - $937 = HEAP32[$v>>2]|0; - $938 = HEAP32[$addrEnd>>2]|0; - (_sqlite3VdbeAddOp2($937,16,0,$938)|0); - $939 = HEAP32[$v>>2]|0; - $940 = (_sqlite3VdbeCurrentAddr($939)|0); - HEAP32[$addrSetAbort>>2] = $940; - $941 = HEAP32[$v>>2]|0; - $942 = HEAP32[$iAbortFlag>>2]|0; - (_sqlite3VdbeAddOp2($941,25,1,$942)|0); - $943 = HEAP32[$v>>2]|0; - $944 = HEAP32[$regOutputRow>>2]|0; - (_sqlite3VdbeAddOp1($943,18,$944)|0); - $945 = HEAP32[$v>>2]|0; - $946 = HEAP32[$addrOutputRow>>2]|0; - _sqlite3VdbeResolveLabel($945,$946); - $947 = HEAP32[$v>>2]|0; - $948 = (_sqlite3VdbeCurrentAddr($947)|0); - HEAP32[$addrOutputRow>>2] = $948; - $949 = HEAP32[$v>>2]|0; - $950 = HEAP32[$iUseFlag>>2]|0; - $951 = HEAP32[$addrOutputRow>>2]|0; - $952 = (($951) + 2)|0; - (_sqlite3VdbeAddOp2($949,134,$950,$952)|0); - $953 = HEAP32[$v>>2]|0; - $954 = HEAP32[$regOutputRow>>2]|0; - (_sqlite3VdbeAddOp1($953,18,$954)|0); - $955 = HEAP32[$1>>2]|0; - _finalizeAggFunctions($955,$sAggInfo); - $956 = HEAP32[$1>>2]|0; - $957 = HEAP32[$pHaving>>2]|0; - $958 = HEAP32[$addrOutputRow>>2]|0; - $959 = (($958) + 1)|0; - _sqlite3ExprIfFalse($956,$957,$959,8); - $960 = HEAP32[$1>>2]|0; - $961 = HEAP32[$2>>2]|0; - $962 = HEAP32[$2>>2]|0; - $963 = HEAP32[$962>>2]|0; - $964 = HEAP32[$3>>2]|0; - $965 = HEAP32[$addrOutputRow>>2]|0; - $966 = (($965) + 1)|0; - $967 = HEAP32[$addrSetAbort>>2]|0; - _selectInnerLoop($960,$961,$963,-1,$sSort,$sDistinct,$964,$966,$967); - $968 = HEAP32[$v>>2]|0; - $969 = HEAP32[$regOutputRow>>2]|0; - (_sqlite3VdbeAddOp1($968,18,$969)|0); - $970 = HEAP32[$v>>2]|0; - $971 = HEAP32[$addrReset>>2]|0; - _sqlite3VdbeResolveLabel($970,$971); - $972 = HEAP32[$1>>2]|0; - _resetAccumulator($972,$sAggInfo); - $973 = HEAP32[$v>>2]|0; - $974 = HEAP32[$regReset>>2]|0; - (_sqlite3VdbeAddOp1($973,18,$974)|0); - } else { - HEAP32[$pDel>>2] = 0; - $975 = HEAP32[$2>>2]|0; - $976 = (_isSimpleCount($975,$sAggInfo)|0); - HEAP32[$pTab>>2] = $976; - $977 = ($976|0)!=(0|0); - if ($977) { - $978 = HEAP32[$1>>2]|0; - $979 = HEAP32[$978>>2]|0; - $980 = HEAP32[$pTab>>2]|0; - $981 = (($980) + 68|0); - $982 = HEAP32[$981>>2]|0; - $983 = (_sqlite3SchemaToIndex($979,$982)|0); - HEAP32[$iDb>>2] = $983; - $984 = HEAP32[$1>>2]|0; - $985 = (($984) + 68|0); - $986 = HEAP32[$985>>2]|0; - $987 = (($986) + 1)|0; - HEAP32[$985>>2] = $987; - HEAP32[$iCsr>>2] = $986; - HEAP32[$pKeyInfo3>>2] = 0; - HEAP32[$pBest>>2] = 0; - $988 = HEAP32[$pTab>>2]|0; - $989 = (($988) + 32|0); - $990 = HEAP32[$989>>2]|0; - HEAP32[$iRoot>>2] = $990; - $991 = HEAP32[$1>>2]|0; - $992 = HEAP32[$iDb>>2]|0; - _sqlite3CodeVerifySchema($991,$992); - $993 = HEAP32[$1>>2]|0; - $994 = HEAP32[$iDb>>2]|0; - $995 = HEAP32[$pTab>>2]|0; - $996 = (($995) + 32|0); - $997 = HEAP32[$996>>2]|0; - $998 = HEAP32[$pTab>>2]|0; - $999 = HEAP32[$998>>2]|0; - _sqlite3TableLock($993,$994,$997,0,$999); - $1000 = HEAP32[$pTab>>2]|0; - $1001 = (($1000) + 44|0); - $1002 = HEAP8[$1001>>0]|0; - $1003 = $1002&255; - $1004 = $1003 & 32; - $1005 = ($1004|0)==(0); - if (!($1005)) { - $1006 = HEAP32[$pTab>>2]|0; - $1007 = (_sqlite3PrimaryKeyIndex($1006)|0); - HEAP32[$pBest>>2] = $1007; - } - $1008 = HEAP32[$pTab>>2]|0; - $1009 = (($1008) + 8|0); - $1010 = HEAP32[$1009>>2]|0; - HEAP32[$pIdx>>2] = $1010; - while(1) { - $1011 = HEAP32[$pIdx>>2]|0; - $1012 = ($1011|0)!=(0|0); - if (!($1012)) { - break; - } - $1013 = HEAP32[$pIdx>>2]|0; - $1014 = (($1013) + 55|0); - $1015 = HEAP8[$1014>>0]|0; - $1016 = ($1015&255) >>> 2; - $1017 = $1016 & 1; - $1018 = $1017&255; - $1019 = ($1018|0)==(0); - do { - if ($1019) { - $1020 = HEAP32[$pIdx>>2]|0; - $1021 = (($1020) + 48|0); - $1022 = HEAP16[$1021>>1]|0; - $1023 = $1022 << 16 >> 16; - $1024 = HEAP32[$pTab>>2]|0; - $1025 = (($1024) + 42|0); - $1026 = HEAP16[$1025>>1]|0; - $1027 = $1026 << 16 >> 16; - $1028 = ($1023|0)<($1027|0); - if (!($1028)) { - break; - } - $1029 = HEAP32[$pIdx>>2]|0; - $1030 = (($1029) + 36|0); - $1031 = HEAP32[$1030>>2]|0; - $1032 = ($1031|0)==(0|0); - if (!($1032)) { - break; - } - $1033 = HEAP32[$pBest>>2]|0; - $1034 = ($1033|0)!=(0|0); - if ($1034) { - $1035 = HEAP32[$pIdx>>2]|0; - $1036 = (($1035) + 48|0); - $1037 = HEAP16[$1036>>1]|0; - $1038 = $1037 << 16 >> 16; - $1039 = HEAP32[$pBest>>2]|0; - $1040 = (($1039) + 48|0); - $1041 = HEAP16[$1040>>1]|0; - $1042 = $1041 << 16 >> 16; - $1043 = ($1038|0)<($1042|0); - if (!($1043)) { - break; - } - } - $1044 = HEAP32[$pIdx>>2]|0; - HEAP32[$pBest>>2] = $1044; - } - } while(0); - $1045 = HEAP32[$pIdx>>2]|0; - $1046 = (($1045) + 20|0); - $1047 = HEAP32[$1046>>2]|0; - HEAP32[$pIdx>>2] = $1047; - } - $1048 = HEAP32[$pBest>>2]|0; - $1049 = ($1048|0)!=(0|0); - if ($1049) { - $1050 = HEAP32[$pBest>>2]|0; - $1051 = (($1050) + 44|0); - $1052 = HEAP32[$1051>>2]|0; - HEAP32[$iRoot>>2] = $1052; - $1053 = HEAP32[$1>>2]|0; - $1054 = HEAP32[$pBest>>2]|0; - $1055 = (_sqlite3KeyInfoOfIndex($1053,$1054)|0); - HEAP32[$pKeyInfo3>>2] = $1055; - } - $1056 = HEAP32[$v>>2]|0; - $1057 = HEAP32[$iCsr>>2]|0; - $1058 = HEAP32[$iRoot>>2]|0; - $1059 = HEAP32[$iDb>>2]|0; - (_sqlite3VdbeAddOp4Int($1056,52,$1057,$1058,$1059,1)|0); - $1060 = HEAP32[$pKeyInfo3>>2]|0; - $1061 = ($1060|0)!=(0|0); - if ($1061) { - $1062 = HEAP32[$v>>2]|0; - $1063 = HEAP32[$pKeyInfo3>>2]|0; - _sqlite3VdbeChangeP4($1062,-1,$1063,-6); - } - $1064 = HEAP32[$v>>2]|0; - $1065 = HEAP32[$iCsr>>2]|0; - $1066 = (($sAggInfo) + 40|0); - $1067 = HEAP32[$1066>>2]|0; - $1068 = (($1067) + 8|0); - $1069 = HEAP32[$1068>>2]|0; - (_sqlite3VdbeAddOp2($1064,49,$1065,$1069)|0); - $1070 = HEAP32[$v>>2]|0; - $1071 = HEAP32[$iCsr>>2]|0; - (_sqlite3VdbeAddOp1($1070,58,$1071)|0); - $1072 = HEAP32[$1>>2]|0; - $1073 = HEAP32[$pTab>>2]|0; - $1074 = HEAP32[$pBest>>2]|0; - _explainSimpleCount($1072,$1073,$1074); - } else { - HEAP32[$pMinMax>>2] = 0; - HEAP8[$flag>>0] = 0; - $1075 = HEAP32[$2>>2]|0; - $1076 = (($1075) + 44|0); - $1077 = HEAP32[$1076>>2]|0; - $1078 = ($1077|0)==(0|0); - if ($1078) { - $1079 = (_minMaxQuery($sAggInfo,$pMinMax)|0); - HEAP8[$flag>>0] = $1079; - } - $1080 = HEAP8[$flag>>0]|0; - $1081 = ($1080<<24>>24)!=(0); - do { - if ($1081) { - $1082 = HEAP32[$db>>2]|0; - $1083 = HEAP32[$pMinMax>>2]|0; - $1084 = (_sqlite3ExprListDup($1082,$1083,0)|0); - HEAP32[$pMinMax>>2] = $1084; - $1085 = HEAP32[$pMinMax>>2]|0; - HEAP32[$pDel>>2] = $1085; - $1086 = HEAP32[$pMinMax>>2]|0; - $1087 = ($1086|0)!=(0|0); - if (!($1087)) { - break; - } - $1088 = HEAP32[$db>>2]|0; - $1089 = (($1088) + 64|0); - $1090 = HEAP8[$1089>>0]|0; - $1091 = ($1090<<24>>24)!=(0); - if ($1091) { - break; - } - $1092 = HEAP8[$flag>>0]|0; - $1093 = $1092&255; - $1094 = ($1093|0)!=(1); - $1095 = $1094 ? 1 : 0; - $1096 = $1095&255; - $1097 = HEAP32[$pMinMax>>2]|0; - $1098 = (($1097) + 4|0); - $1099 = HEAP32[$1098>>2]|0; - $1100 = (($1099) + 12|0); - HEAP8[$1100>>0] = $1096; - $1101 = HEAP32[$pMinMax>>2]|0; - $1102 = (($1101) + 4|0); - $1103 = HEAP32[$1102>>2]|0; - $1104 = HEAP32[$1103>>2]|0; - HEAP8[$1104>>0] = -102; - } - } while(0); - $1105 = HEAP32[$1>>2]|0; - _resetAccumulator($1105,$sAggInfo); - $1106 = HEAP32[$1>>2]|0; - $1107 = HEAP32[$pTabList>>2]|0; - $1108 = HEAP32[$pWhere>>2]|0; - $1109 = HEAP32[$pMinMax>>2]|0; - $1110 = HEAP8[$flag>>0]|0; - $1111 = $1110&255; - $1112 = (_sqlite3WhereBegin($1106,$1107,$1108,$1109,0,$1111,0)|0); - HEAP32[$pWInfo>>2] = $1112; - $1113 = HEAP32[$pWInfo>>2]|0; - $1114 = ($1113|0)==(0|0); - if ($1114) { - $1115 = HEAP32[$db>>2]|0; - $1116 = HEAP32[$pDel>>2]|0; - _sqlite3ExprListDelete($1115,$1116); - break; - } - $1117 = HEAP32[$1>>2]|0; - _updateAccumulator($1117,$sAggInfo); - $1118 = HEAP32[$pWInfo>>2]|0; - $1119 = (_sqlite3WhereIsOrdered($1118)|0); - $1120 = ($1119|0)>(0); - if ($1120) { - $1121 = HEAP32[$v>>2]|0; - $1122 = HEAP32[$pWInfo>>2]|0; - $1123 = (_sqlite3WhereBreakLabel($1122)|0); - (_sqlite3VdbeAddOp2($1121,16,0,$1123)|0); - } - $1124 = HEAP32[$pWInfo>>2]|0; - _sqlite3WhereEnd($1124); - $1125 = HEAP32[$1>>2]|0; - _finalizeAggFunctions($1125,$sAggInfo); - } - HEAP32[$sSort>>2] = 0; - $1126 = HEAP32[$1>>2]|0; - $1127 = HEAP32[$pHaving>>2]|0; - $1128 = HEAP32[$addrEnd>>2]|0; - _sqlite3ExprIfFalse($1126,$1127,$1128,8); - $1129 = HEAP32[$1>>2]|0; - $1130 = HEAP32[$2>>2]|0; - $1131 = HEAP32[$2>>2]|0; - $1132 = HEAP32[$1131>>2]|0; - $1133 = HEAP32[$3>>2]|0; - $1134 = HEAP32[$addrEnd>>2]|0; - $1135 = HEAP32[$addrEnd>>2]|0; - _selectInnerLoop($1129,$1130,$1132,-1,0,0,$1133,$1134,$1135); - $1136 = HEAP32[$db>>2]|0; - $1137 = HEAP32[$pDel>>2]|0; - _sqlite3ExprListDelete($1136,$1137); - } - $1138 = HEAP32[$v>>2]|0; - $1139 = HEAP32[$addrEnd>>2]|0; - _sqlite3VdbeResolveLabel($1138,$1139); - } - $1140 = (($sDistinct) + 1|0); - $1141 = HEAP8[$1140>>0]|0; - $1142 = $1141&255; - $1143 = ($1142|0)==(3); - if ($1143) { - $1144 = HEAP32[$1>>2]|0; - _explainTempTable($1144,24688); - } - $1145 = HEAP32[$sSort>>2]|0; - $1146 = ($1145|0)!=(0|0); - if ($1146) { - $1147 = HEAP32[$1>>2]|0; - $1148 = (($sSort) + 4|0); - $1149 = HEAP32[$1148>>2]|0; - $1150 = ($1149|0)>(0); - $1151 = $1150 ? 24720 : 24744; - _explainTempTable($1147,$1151); - $1152 = HEAP32[$1>>2]|0; - $1153 = HEAP32[$2>>2]|0; - $1154 = HEAP32[$pEList>>2]|0; - $1155 = HEAP32[$1154>>2]|0; - $1156 = HEAP32[$3>>2]|0; - _generateSortTail($1152,$1153,$sSort,$1155,$1156); - } - $1157 = HEAP32[$v>>2]|0; - $1158 = HEAP32[$iEnd>>2]|0; - _sqlite3VdbeResolveLabel($1157,$1158); - HEAP32[$rc>>2] = 0; - } - } - } - } - } while(0); - $1159 = HEAP32[$iRestoreSelectId>>2]|0; - $1160 = HEAP32[$1>>2]|0; - $1161 = (($1160) + 464|0); - HEAP32[$1161>>2] = $1159; - $1162 = HEAP32[$rc>>2]|0; - $1163 = ($1162|0)==(0); - if ($1163) { - $1164 = HEAP32[$3>>2]|0; - $1165 = HEAP8[$1164>>0]|0; - $1166 = $1165&255; - $1167 = ($1166|0)==(9); - if ($1167) { - $1168 = HEAP32[$1>>2]|0; - $1169 = HEAP32[$pTabList>>2]|0; - $1170 = HEAP32[$pEList>>2]|0; - _generateColumnNames($1168,$1169,$1170); - } - } - $1171 = HEAP32[$db>>2]|0; - $1172 = (($sAggInfo) + 28|0); - $1173 = HEAP32[$1172>>2]|0; - _sqlite3DbFree($1171,$1173); - $1174 = HEAP32[$db>>2]|0; - $1175 = (($sAggInfo) + 40|0); - $1176 = HEAP32[$1175>>2]|0; - _sqlite3DbFree($1174,$1176); - $1177 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $1177; - $1178 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($1178|0); - } - } - } - HEAP32[$0>>2] = 1; - $1178 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($1178|0); -} -function _sqlite3SrcListAppendFromTerm($pParse,$p,$pTable,$pDatabase,$pAlias,$pSubquery,$pOn,$pUsing) { - $pParse = $pParse|0; - $p = $p|0; - $pTable = $pTable|0; - $pDatabase = $pDatabase|0; - $pAlias = $pAlias|0; - $pSubquery = $pSubquery|0; - $pOn = $pOn|0; - $pUsing = $pUsing|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $7 = 0, $8 = 0, $9 = 0, $db = 0, $pItem = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $4 = sp + 28|0; - $5 = sp + 24|0; - $6 = sp + 20|0; - $7 = sp + 16|0; - $8 = sp + 12|0; - $pItem = sp + 8|0; - $db = sp + 4|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $p; - HEAP32[$3>>2] = $pTable; - HEAP32[$4>>2] = $pDatabase; - HEAP32[$5>>2] = $pAlias; - HEAP32[$6>>2] = $pSubquery; - HEAP32[$7>>2] = $pOn; - HEAP32[$8>>2] = $pUsing; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$9>>2]|0; - HEAP32[$db>>2] = $10; - $11 = HEAP32[$2>>2]|0; - $12 = ($11|0)!=(0|0); - do { - if ($12) { - label = 5; - } else { - $13 = HEAP32[$7>>2]|0; - $14 = ($13|0)!=(0|0); - if (!($14)) { - $15 = HEAP32[$8>>2]|0; - $16 = ($15|0)!=(0|0); - if (!($16)) { - label = 5; - break; - } - } - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$7>>2]|0; - $19 = ($18|0)!=(0|0); - $20 = $19 ? 24672 : 24680; - HEAP32[$vararg_buffer>>2] = $20; - _sqlite3ErrorMsg($17,24632,$vararg_buffer); - } - } while(0); - if ((label|0) == 5) { - $21 = HEAP32[$db>>2]|0; - $22 = HEAP32[$2>>2]|0; - $23 = HEAP32[$3>>2]|0; - $24 = HEAP32[$4>>2]|0; - $25 = (_sqlite3SrcListAppend($21,$22,$23,$24)|0); - HEAP32[$2>>2] = $25; - $26 = HEAP32[$2>>2]|0; - $27 = ($26|0)==(0|0); - if (!($27)) { - $28 = HEAP32[$2>>2]|0; - $29 = HEAP32[$28>>2]|0; - $30 = ($29|0)==(0); - if (!($30)) { - $31 = HEAP32[$2>>2]|0; - $32 = HEAP32[$31>>2]|0; - $33 = (($32) - 1)|0; - $34 = HEAP32[$2>>2]|0; - $35 = (($34) + 8|0); - $36 = (($35) + (($33*72)|0)|0); - HEAP32[$pItem>>2] = $36; - $37 = HEAP32[$5>>2]|0; - $38 = (($37) + 4|0); - $39 = HEAP32[$38>>2]|0; - $40 = ($39|0)!=(0); - if ($40) { - $41 = HEAP32[$db>>2]|0; - $42 = HEAP32[$5>>2]|0; - $43 = (_sqlite3NameFromToken($41,$42)|0); - $44 = HEAP32[$pItem>>2]|0; - $45 = (($44) + 12|0); - HEAP32[$45>>2] = $43; - } - $46 = HEAP32[$6>>2]|0; - $47 = HEAP32[$pItem>>2]|0; - $48 = (($47) + 20|0); - HEAP32[$48>>2] = $46; - $49 = HEAP32[$7>>2]|0; - $50 = HEAP32[$pItem>>2]|0; - $51 = (($50) + 44|0); - HEAP32[$51>>2] = $49; - $52 = HEAP32[$8>>2]|0; - $53 = HEAP32[$pItem>>2]|0; - $54 = (($53) + 48|0); - HEAP32[$54>>2] = $52; - $55 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $55; - $62 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($62|0); - } - } - } - $56 = HEAP32[$db>>2]|0; - $57 = HEAP32[$7>>2]|0; - _sqlite3ExprDelete($56,$57); - $58 = HEAP32[$db>>2]|0; - $59 = HEAP32[$8>>2]|0; - _sqlite3IdListDelete($58,$59); - $60 = HEAP32[$db>>2]|0; - $61 = HEAP32[$6>>2]|0; - _sqlite3SelectDelete($60,$61); - HEAP32[$0>>2] = 0; - $62 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($62|0); -} -function _sqlite3SelectNew($pParse,$pEList,$pSrc,$pWhere,$pGroupBy,$pHaving,$pOrderBy,$selFlags,$pLimit,$pOffset) { - $pParse = $pParse|0; - $pEList = $pEList|0; - $pSrc = $pSrc|0; - $pWhere = $pWhere|0; - $pGroupBy = $pGroupBy|0; - $pHaving = $pHaving|0; - $pOrderBy = $pOrderBy|0; - $selFlags = $selFlags|0; - $pLimit = $pLimit|0; - $pOffset = $pOffset|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $db = 0, $pNew = 0, $standin = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $0 = sp + 112|0; - $1 = sp + 108|0; - $2 = sp + 104|0; - $3 = sp + 100|0; - $4 = sp + 96|0; - $5 = sp + 92|0; - $6 = sp + 88|0; - $7 = sp + 116|0; - $8 = sp + 84|0; - $9 = sp + 80|0; - $pNew = sp + 76|0; - $standin = sp; - $db = sp + 72|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pEList; - HEAP32[$2>>2] = $pSrc; - HEAP32[$3>>2] = $pWhere; - HEAP32[$4>>2] = $pGroupBy; - HEAP32[$5>>2] = $pHaving; - HEAP32[$6>>2] = $pOrderBy; - HEAP16[$7>>1] = $selFlags; - HEAP32[$8>>2] = $pLimit; - HEAP32[$9>>2] = $pOffset; - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$10>>2]|0; - HEAP32[$db>>2] = $11; - $12 = HEAP32[$db>>2]|0; - $13 = (_sqlite3DbMallocZero($12,72)|0); - HEAP32[$pNew>>2] = $13; - $14 = HEAP32[$pNew>>2]|0; - $15 = ($14|0)==(0|0); - if ($15) { - HEAP32[$pNew>>2] = $standin; - $16 = HEAP32[$pNew>>2]|0; - dest=$16+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - } - $17 = HEAP32[$1>>2]|0; - $18 = ($17|0)==(0|0); - if ($18) { - $19 = HEAP32[$0>>2]|0; - $20 = HEAP32[$db>>2]|0; - $21 = (_sqlite3Expr($20,116,0)|0); - $22 = (_sqlite3ExprListAppend($19,0,$21)|0); - HEAP32[$1>>2] = $22; - } - $23 = HEAP32[$1>>2]|0; - $24 = HEAP32[$pNew>>2]|0; - HEAP32[$24>>2] = $23; - $25 = HEAP32[$2>>2]|0; - $26 = ($25|0)==(0|0); - if ($26) { - $27 = HEAP32[$db>>2]|0; - $28 = (_sqlite3DbMallocZero($27,80)|0); - HEAP32[$2>>2] = $28; - } - $29 = HEAP32[$2>>2]|0; - $30 = HEAP32[$pNew>>2]|0; - $31 = (($30) + 32|0); - HEAP32[$31>>2] = $29; - $32 = HEAP32[$3>>2]|0; - $33 = HEAP32[$pNew>>2]|0; - $34 = (($33) + 36|0); - HEAP32[$34>>2] = $32; - $35 = HEAP32[$4>>2]|0; - $36 = HEAP32[$pNew>>2]|0; - $37 = (($36) + 40|0); - HEAP32[$37>>2] = $35; - $38 = HEAP32[$5>>2]|0; - $39 = HEAP32[$pNew>>2]|0; - $40 = (($39) + 44|0); - HEAP32[$40>>2] = $38; - $41 = HEAP32[$6>>2]|0; - $42 = HEAP32[$pNew>>2]|0; - $43 = (($42) + 48|0); - HEAP32[$43>>2] = $41; - $44 = HEAP16[$7>>1]|0; - $45 = HEAP32[$pNew>>2]|0; - $46 = (($45) + 6|0); - HEAP16[$46>>1] = $44; - $47 = HEAP32[$pNew>>2]|0; - $48 = (($47) + 4|0); - HEAP8[$48>>0] = 119; - $49 = HEAP32[$8>>2]|0; - $50 = HEAP32[$pNew>>2]|0; - $51 = (($50) + 60|0); - HEAP32[$51>>2] = $49; - $52 = HEAP32[$9>>2]|0; - $53 = HEAP32[$pNew>>2]|0; - $54 = (($53) + 64|0); - HEAP32[$54>>2] = $52; - $55 = HEAP32[$pNew>>2]|0; - $56 = (($55) + 16|0); - HEAP32[$56>>2] = -1; - $57 = HEAP32[$pNew>>2]|0; - $58 = (($57) + 16|0); - $59 = (($58) + 4|0); - HEAP32[$59>>2] = -1; - $60 = HEAP32[$db>>2]|0; - $61 = (($60) + 64|0); - $62 = HEAP8[$61>>0]|0; - $63 = ($62<<24>>24)!=(0); - if (!($63)) { - $70 = HEAP32[$pNew>>2]|0; - STACKTOP = sp;return ($70|0); - } - $64 = HEAP32[$db>>2]|0; - $65 = HEAP32[$pNew>>2]|0; - _clearSelect($64,$65); - $66 = HEAP32[$pNew>>2]|0; - $67 = ($66|0)!=($standin|0); - if ($67) { - $68 = HEAP32[$db>>2]|0; - $69 = HEAP32[$pNew>>2]|0; - _sqlite3DbFree($68,$69); - } - HEAP32[$pNew>>2] = 0; - $70 = HEAP32[$pNew>>2]|0; - STACKTOP = sp;return ($70|0); -} -function _sqlite3ExprListAppend($pParse,$pList,$pExpr) { - $pParse = $pParse|0; - $pList = $pList|0; - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $db = 0, $pItem = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $db = sp + 8|0; - $a = sp + 4|0; - $pItem = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pList; - HEAP32[$3>>2] = $pExpr; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$2>>2]|0; - $7 = ($6|0)==(0|0); - if ($7) { - $8 = HEAP32[$db>>2]|0; - $9 = (_sqlite3DbMallocZero($8,8)|0); - HEAP32[$2>>2] = $9; - $10 = HEAP32[$2>>2]|0; - $11 = ($10|0)==(0|0); - if ($11) { - label = 8; - } else { - $12 = HEAP32[$db>>2]|0; - $13 = (_sqlite3DbMallocRaw($12,20)|0); - $14 = HEAP32[$2>>2]|0; - $15 = (($14) + 4|0); - HEAP32[$15>>2] = $13; - $16 = HEAP32[$2>>2]|0; - $17 = (($16) + 4|0); - $18 = HEAP32[$17>>2]|0; - $19 = ($18|0)==(0|0); - if ($19) { - label = 8; - } else { - label = 7; - } - } - } else { - $20 = HEAP32[$2>>2]|0; - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$2>>2]|0; - $23 = HEAP32[$22>>2]|0; - $24 = (($23) - 1)|0; - $25 = $21 & $24; - $26 = ($25|0)==(0); - if ($26) { - $27 = HEAP32[$db>>2]|0; - $28 = HEAP32[$2>>2]|0; - $29 = (($28) + 4|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$2>>2]|0; - $32 = HEAP32[$31>>2]|0; - $33 = $32<<1; - $34 = ($33*20)|0; - $35 = (_sqlite3DbRealloc($27,$30,$34)|0); - HEAP32[$a>>2] = $35; - $36 = HEAP32[$a>>2]|0; - $37 = ($36|0)==(0|0); - if ($37) { - label = 8; - } else { - $38 = HEAP32[$a>>2]|0; - $39 = HEAP32[$2>>2]|0; - $40 = (($39) + 4|0); - HEAP32[$40>>2] = $38; - label = 7; - } - } else { - label = 7; - } - } - if ((label|0) == 7) { - $41 = HEAP32[$2>>2]|0; - $42 = HEAP32[$41>>2]|0; - $43 = (($42) + 1)|0; - HEAP32[$41>>2] = $43; - $44 = HEAP32[$2>>2]|0; - $45 = (($44) + 4|0); - $46 = HEAP32[$45>>2]|0; - $47 = (($46) + (($42*20)|0)|0); - HEAP32[$pItem>>2] = $47; - $48 = HEAP32[$pItem>>2]|0; - ;HEAP32[$48+0>>2]=0|0;HEAP32[$48+4>>2]=0|0;HEAP32[$48+8>>2]=0|0;HEAP32[$48+12>>2]=0|0;HEAP32[$48+16>>2]=0|0; - $49 = HEAP32[$3>>2]|0; - $50 = HEAP32[$pItem>>2]|0; - HEAP32[$50>>2] = $49; - $51 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $51; - $56 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($56|0); - } - else if ((label|0) == 8) { - $52 = HEAP32[$db>>2]|0; - $53 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($52,$53); - $54 = HEAP32[$db>>2]|0; - $55 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($54,$55); - HEAP32[$0>>2] = 0; - $56 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($56|0); - } - return 0|0; -} -function _sqlite3ExprListSetName($pParse,$pList,$pName,$dequote) { - $pParse = $pParse|0; - $pList = $pList|0; - $pName = $pName|0; - $dequote = $dequote|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pItem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $pItem = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pList; - HEAP32[$2>>2] = $pName; - HEAP32[$3>>2] = $dequote; - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - STACKTOP = sp;return; - } - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = (($7) - 1)|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 4|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + (($8*20)|0)|0); - HEAP32[$pItem>>2] = $12; - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - $20 = (_sqlite3DbStrNDup($14,$16,$19)|0); - $21 = HEAP32[$pItem>>2]|0; - $22 = (($21) + 4|0); - HEAP32[$22>>2] = $20; - $23 = HEAP32[$3>>2]|0; - $24 = ($23|0)!=(0); - if (!($24)) { - STACKTOP = sp;return; - } - $25 = HEAP32[$pItem>>2]|0; - $26 = (($25) + 4|0); - $27 = HEAP32[$26>>2]|0; - $28 = ($27|0)!=(0|0); - if (!($28)) { - STACKTOP = sp;return; - } - $29 = HEAP32[$pItem>>2]|0; - $30 = (($29) + 4|0); - $31 = HEAP32[$30>>2]|0; - (_sqlite3Dequote($31)|0); - STACKTOP = sp;return; -} -function _sqlite3ExprListSetSpan($pParse,$pList,$pSpan) { - $pParse = $pParse|0; - $pList = $pList|0; - $pSpan = $pSpan|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $pItem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $db = sp + 4|0; - $pItem = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pList; - HEAP32[$2>>2] = $pSpan; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - $5 = HEAP32[$1>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - STACKTOP = sp;return; - } - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = (($8) - 1)|0; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + (($9*20)|0)|0); - HEAP32[$pItem>>2] = $13; - $14 = HEAP32[$db>>2]|0; - $15 = HEAP32[$pItem>>2]|0; - $16 = (($15) + 8|0); - $17 = HEAP32[$16>>2]|0; - _sqlite3DbFree($14,$17); - $18 = HEAP32[$db>>2]|0; - $19 = HEAP32[$2>>2]|0; - $20 = (($19) + 4|0); - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$2>>2]|0; - $23 = (($22) + 8|0); - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$2>>2]|0; - $26 = (($25) + 4|0); - $27 = HEAP32[$26>>2]|0; - $28 = $24; - $29 = $27; - $30 = (($28) - ($29))|0; - $31 = (_sqlite3DbStrNDup($18,$21,$30)|0); - $32 = HEAP32[$pItem>>2]|0; - $33 = (($32) + 8|0); - HEAP32[$33>>2] = $31; - STACKTOP = sp;return; -} -function _sqlite3Expr($db,$op,$zToken) { - $db = $db|0; - $op = $op|0; - $zToken = $zToken|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $x = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $x = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $op; - HEAP32[$2>>2] = $zToken; - $3 = HEAP32[$2>>2]|0; - HEAP32[$x>>2] = $3; - $4 = HEAP32[$2>>2]|0; - $5 = ($4|0)!=(0|0); - if ($5) { - $6 = HEAP32[$2>>2]|0; - $7 = (_sqlite3Strlen30($6)|0); - $9 = $7; - } else { - $9 = 0; - } - $8 = (($x) + 4|0); - HEAP32[$8>>2] = $9; - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = (_sqlite3ExprAlloc($10,$11,$x,0)|0); - STACKTOP = sp;return ($12|0); -} -function _sqlite3SrcListShiftJoinType($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if (!($2)) { - STACKTOP = sp;return; - } - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (($4) - 1)|0; - HEAP32[$i>>2] = $5; - while(1) { - $6 = HEAP32[$i>>2]|0; - $7 = ($6|0)>(0); - if (!($7)) { - break; - } - $8 = HEAP32[$i>>2]|0; - $9 = (($8) - 1)|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 8|0); - $12 = (($11) + (($9*72)|0)|0); - $13 = (($12) + 36|0); - $14 = HEAP8[$13>>0]|0; - $15 = HEAP32[$i>>2]|0; - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 8|0); - $18 = (($17) + (($15*72)|0)|0); - $19 = (($18) + 36|0); - HEAP8[$19>>0] = $14; - $20 = HEAP32[$i>>2]|0; - $21 = (($20) + -1)|0; - HEAP32[$i>>2] = $21; - } - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 8|0); - $24 = (($23) + 36|0); - HEAP8[$24>>0] = 0; - STACKTOP = sp;return; -} -function _sqlite3SrcListIndexedBy($pParse,$p,$pIndexedBy) { - $pParse = $pParse|0; - $p = $p|0; - $pIndexedBy = $pIndexedBy|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pItem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pItem = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $pIndexedBy; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)>(0); - if (!($7)) { - STACKTOP = sp;return; - } - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = (($9) - 1)|0; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 8|0); - $13 = (($12) + (($10*72)|0)|0); - HEAP32[$pItem>>2] = $13; - $14 = HEAP32[$2>>2]|0; - $15 = (($14) + 4|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($16|0)==(1); - if ($17) { - $18 = HEAP32[$2>>2]|0; - $19 = HEAP32[$18>>2]|0; - $20 = ($19|0)!=(0|0); - if (!($20)) { - $21 = HEAP32[$pItem>>2]|0; - $22 = (($21) + 37|0); - $23 = HEAP8[$22>>0]|0; - $24 = $23 & -2; - $25 = $24 | 1; - HEAP8[$22>>0] = $25; - STACKTOP = sp;return; - } - } - $26 = HEAP32[$0>>2]|0; - $27 = HEAP32[$26>>2]|0; - $28 = HEAP32[$2>>2]|0; - $29 = (_sqlite3NameFromToken($27,$28)|0); - $30 = HEAP32[$pItem>>2]|0; - $31 = (($30) + 64|0); - HEAP32[$31>>2] = $29; - STACKTOP = sp;return; -} -function _sqlite3SrcListAppend($db,$pList,$pTable,$pDatabase) { - $db = $db|0; - $pList = $pList|0; - $pTable = $pTable|0; - $pDatabase = $pDatabase|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pItem = 0, $pTemp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $pItem = sp + 4|0; - $pTemp = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pList; - HEAP32[$3>>2] = $pTable; - HEAP32[$4>>2] = $pDatabase; - $5 = HEAP32[$2>>2]|0; - $6 = ($5|0)==(0|0); - do { - if ($6) { - $7 = HEAP32[$1>>2]|0; - $8 = (_sqlite3DbMallocZero($7,80)|0); - HEAP32[$2>>2] = $8; - $9 = HEAP32[$2>>2]|0; - $10 = ($9|0)==(0|0); - if (!($10)) { - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 4|0); - HEAP32[$12>>2] = 1; - break; - } - HEAP32[$0>>2] = 0; - $51 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($51|0); - } - } while(0); - $13 = HEAP32[$1>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = (_sqlite3SrcListEnlarge($13,$14,1,$16)|0); - HEAP32[$2>>2] = $17; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 64|0); - $20 = HEAP8[$19>>0]|0; - $21 = ($20<<24>>24)!=(0); - if ($21) { - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$2>>2]|0; - _sqlite3SrcListDelete($22,$23); - HEAP32[$0>>2] = 0; - $51 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($51|0); - } - $24 = HEAP32[$2>>2]|0; - $25 = HEAP32[$24>>2]|0; - $26 = (($25) - 1)|0; - $27 = HEAP32[$2>>2]|0; - $28 = (($27) + 8|0); - $29 = (($28) + (($26*72)|0)|0); - HEAP32[$pItem>>2] = $29; - $30 = HEAP32[$4>>2]|0; - $31 = ($30|0)!=(0|0); - if ($31) { - $32 = HEAP32[$4>>2]|0; - $33 = HEAP32[$32>>2]|0; - $34 = ($33|0)==(0|0); - if ($34) { - HEAP32[$4>>2] = 0; - } - } - $35 = HEAP32[$4>>2]|0; - $36 = ($35|0)!=(0|0); - if ($36) { - $37 = HEAP32[$4>>2]|0; - HEAP32[$pTemp>>2] = $37; - $38 = HEAP32[$3>>2]|0; - HEAP32[$4>>2] = $38; - $39 = HEAP32[$pTemp>>2]|0; - HEAP32[$3>>2] = $39; - } - $40 = HEAP32[$1>>2]|0; - $41 = HEAP32[$3>>2]|0; - $42 = (_sqlite3NameFromToken($40,$41)|0); - $43 = HEAP32[$pItem>>2]|0; - $44 = (($43) + 8|0); - HEAP32[$44>>2] = $42; - $45 = HEAP32[$1>>2]|0; - $46 = HEAP32[$4>>2]|0; - $47 = (_sqlite3NameFromToken($45,$46)|0); - $48 = HEAP32[$pItem>>2]|0; - $49 = (($48) + 4|0); - HEAP32[$49>>2] = $47; - $50 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $50; - $51 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($51|0); -} -function _sqlite3JoinType($pParse,$pA,$pB,$pC) { - $pParse = $pParse|0; - $pA = $pA|0; - $pB = $pB|0; - $pC = $pC|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $8 = 0, $9 = 0, $apAll = 0; - var $i = 0, $j = 0, $jointype = 0, $p = 0, $vararg_buffer4 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $zSp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer4 = sp; - $0 = sp + 60|0; - $1 = sp + 56|0; - $2 = sp + 52|0; - $3 = sp + 48|0; - $jointype = sp + 44|0; - $apAll = sp + 32|0; - $p = sp + 28|0; - $i = sp + 24|0; - $j = sp + 20|0; - $zSp = sp + 16|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pA; - HEAP32[$2>>2] = $pB; - HEAP32[$3>>2] = $pC; - HEAP32[$jointype>>2] = 0; - $4 = HEAP32[$1>>2]|0; - HEAP32[$apAll>>2] = $4; - $5 = HEAP32[$2>>2]|0; - $6 = (($apAll) + 4|0); - HEAP32[$6>>2] = $5; - $7 = HEAP32[$3>>2]|0; - $8 = (($apAll) + 8|0); - HEAP32[$8>>2] = $7; - HEAP32[$i>>2] = 0; - while(1) { - $9 = HEAP32[$i>>2]|0; - $10 = ($9|0)<(3); - if (!($10)) { - break; - } - $11 = HEAP32[$i>>2]|0; - $12 = (($apAll) + ($11<<2)|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)!=(0|0); - if (!($14)) { - break; - } - $15 = HEAP32[$i>>2]|0; - $16 = (($apAll) + ($15<<2)|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$p>>2] = $17; - HEAP32[$j>>2] = 0; - while(1) { - $18 = HEAP32[$j>>2]|0; - $19 = ($18|0)<(7); - if (!($19)) { - break; - } - $20 = HEAP32[$p>>2]|0; - $21 = (($20) + 4|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$j>>2]|0; - $24 = (24504 + (($23*3)|0)|0); - $25 = (($24) + 1|0); - $26 = HEAP8[$25>>0]|0; - $27 = $26&255; - $28 = ($22|0)==($27|0); - if ($28) { - $29 = HEAP32[$p>>2]|0; - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$j>>2]|0; - $32 = (24504 + (($31*3)|0)|0); - $33 = HEAP8[$32>>0]|0; - $34 = $33&255; - $35 = (24464 + ($34)|0); - $36 = HEAP32[$p>>2]|0; - $37 = (($36) + 4|0); - $38 = HEAP32[$37>>2]|0; - $39 = (_sqlite3_strnicmp($30,$35,$38)|0); - $40 = ($39|0)==(0); - if ($40) { - label = 8; - break; - } - } - $48 = HEAP32[$j>>2]|0; - $49 = (($48) + 1)|0; - HEAP32[$j>>2] = $49; - } - if ((label|0) == 8) { - label = 0; - $41 = HEAP32[$j>>2]|0; - $42 = (24504 + (($41*3)|0)|0); - $43 = (($42) + 2|0); - $44 = HEAP8[$43>>0]|0; - $45 = $44&255; - $46 = HEAP32[$jointype>>2]|0; - $47 = $46 | $45; - HEAP32[$jointype>>2] = $47; - } - $50 = HEAP32[$j>>2]|0; - $51 = ($50|0)>=(7); - if ($51) { - label = 11; - break; - } - $54 = HEAP32[$i>>2]|0; - $55 = (($54) + 1)|0; - HEAP32[$i>>2] = $55; - } - if ((label|0) == 11) { - $52 = HEAP32[$jointype>>2]|0; - $53 = $52 | 64; - HEAP32[$jointype>>2] = $53; - } - $56 = HEAP32[$jointype>>2]|0; - $57 = $56 & 33; - $58 = ($57|0)==(33); - if (!($58)) { - $59 = HEAP32[$jointype>>2]|0; - $60 = $59 & 64; - $61 = ($60|0)!=(0); - if (!($61)) { - $71 = HEAP32[$jointype>>2]|0; - $72 = $71 & 32; - $73 = ($72|0)!=(0); - if (!($73)) { - $78 = HEAP32[$jointype>>2]|0; - STACKTOP = sp;return ($78|0); - } - $74 = HEAP32[$jointype>>2]|0; - $75 = $74 & 24; - $76 = ($75|0)!=(8); - if (!($76)) { - $78 = HEAP32[$jointype>>2]|0; - STACKTOP = sp;return ($78|0); - } - $77 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($77,24576,$vararg_buffer4); - HEAP32[$jointype>>2] = 1; - $78 = HEAP32[$jointype>>2]|0; - STACKTOP = sp;return ($78|0); - } - } - HEAP32[$zSp>>2] = 9816; - $62 = HEAP32[$3>>2]|0; - $63 = ($62|0)==(0|0); - if ($63) { - $64 = HEAP32[$zSp>>2]|0; - $65 = (($64) + 1|0); - HEAP32[$zSp>>2] = $65; - } - $66 = HEAP32[$0>>2]|0; - $67 = HEAP32[$1>>2]|0; - $68 = HEAP32[$2>>2]|0; - $69 = HEAP32[$zSp>>2]|0; - $70 = HEAP32[$3>>2]|0; - HEAP32[$vararg_buffer4>>2] = $67; - $vararg_ptr1 = (($vararg_buffer4) + 4|0); - HEAP32[$vararg_ptr1>>2] = $68; - $vararg_ptr2 = (($vararg_buffer4) + 8|0); - HEAP32[$vararg_ptr2>>2] = $69; - $vararg_ptr3 = (($vararg_buffer4) + 12|0); - HEAP32[$vararg_ptr3>>2] = $70; - _sqlite3ErrorMsg($66,24528,$vararg_buffer4); - HEAP32[$jointype>>2] = 1; - $78 = HEAP32[$jointype>>2]|0; - STACKTOP = sp;return ($78|0); -} -function _sqlite3WithPush($pParse,$pWith,$bFree) { - $pParse = $pParse|0; - $pWith = $pWith|0; - $bFree = $bFree|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - $2 = sp + 8|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pWith; - HEAP8[$2>>0] = $bFree; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 532|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 4|0); - HEAP32[$9>>2] = $7; - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 532|0); - HEAP32[$12>>2] = $10; - $13 = HEAP8[$2>>0]|0; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 449|0); - HEAP8[$15>>0] = $13; - STACKTOP = sp;return; -} -function _sqlite3DeleteFrom($pParse,$pTabList,$pWhere) { - $pParse = $pParse|0; - $pTabList = $pTabList|0; - $pWhere = $pWhere|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; - var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; - var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; - var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aToOpen = 0, $addrBypass = 0, $addrDelete = 0, $addrEphOpen = 0, $addrLoop = 0, $aiCurOnePass = 0, $count = 0, $db = 0, $i = 0; - var $iDataCur = 0, $iDb = 0, $iEphCur = 0, $iIdxCur = 0, $iKey = 0, $iPk = 0, $iRowSet = 0, $iTabCur = 0, $isView = 0, $memCnt = 0, $nIdx = 0, $nKey = 0, $nPk = 0, $okOnePass = 0, $pIdx = 0, $pPk = 0, $pTab = 0, $pTrigger = 0, $pVTab = 0, $pWInfo = 0; - var $rcauth = 0, $sContext = 0, $sNC = 0, $v = 0, $zDb = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 192|0; - $0 = sp + 172|0; - $1 = sp + 168|0; - $2 = sp + 164|0; - $v = sp + 160|0; - $pTab = sp + 156|0; - $zDb = sp + 152|0; - $i = sp + 148|0; - $pWInfo = sp + 144|0; - $pIdx = sp + 140|0; - $iTabCur = sp + 136|0; - $iDataCur = sp + 132|0; - $iIdxCur = sp + 128|0; - $nIdx = sp + 124|0; - $db = sp + 120|0; - $sContext = sp + 112|0; - $sNC = sp + 80|0; - $iDb = sp + 76|0; - $memCnt = sp + 72|0; - $rcauth = sp + 68|0; - $okOnePass = sp + 64|0; - $aiCurOnePass = sp + 56|0; - $aToOpen = sp + 52|0; - $pPk = sp + 48|0; - $iPk = sp + 44|0; - $nPk = sp + 178|0; - $iKey = sp + 40|0; - $nKey = sp + 176|0; - $iEphCur = sp + 36|0; - $iRowSet = sp + 32|0; - $addrBypass = sp + 28|0; - $addrLoop = sp + 24|0; - $addrDelete = sp + 20|0; - $addrEphOpen = sp + 16|0; - $isView = sp + 12|0; - $pTrigger = sp + 8|0; - $pVTab = sp + 4|0; - $count = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTabList; - HEAP32[$2>>2] = $pWhere; - HEAP32[$memCnt>>2] = -1; - HEAP32[$aToOpen>>2] = 0; - HEAP32[$iPk>>2] = 0; - HEAP16[$nPk>>1] = 1; - HEAP32[$iEphCur>>2] = 0; - HEAP32[$iRowSet>>2] = 0; - HEAP32[$addrBypass>>2] = 0; - HEAP32[$addrLoop>>2] = 0; - HEAP32[$addrDelete>>2] = 0; - HEAP32[$addrEphOpen>>2] = 0; - ;HEAP32[$sContext+0>>2]=0|0;HEAP32[$sContext+4>>2]=0|0; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 64|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)!=(0); - L1: do { - if (!($8)) { - $9 = HEAP32[$db>>2]|0; - $10 = (($9) + 64|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = ($12|0)!=(0); - if (!($13)) { - $14 = HEAP32[$0>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = (_sqlite3SrcListLookup($14,$15)|0); - HEAP32[$pTab>>2] = $16; - $17 = HEAP32[$pTab>>2]|0; - $18 = ($17|0)==(0|0); - if (!($18)) { - $19 = HEAP32[$0>>2]|0; - $20 = HEAP32[$pTab>>2]|0; - $21 = (_sqlite3TriggersExist($19,$20,109,0,0)|0); - HEAP32[$pTrigger>>2] = $21; - $22 = HEAP32[$pTab>>2]|0; - $23 = (($22) + 12|0); - $24 = HEAP32[$23>>2]|0; - $25 = ($24|0)!=(0|0); - $26 = $25&1; - HEAP32[$isView>>2] = $26; - $27 = HEAP32[$0>>2]|0; - $28 = HEAP32[$pTab>>2]|0; - $29 = (_sqlite3ViewGetColumnNames($27,$28)|0); - $30 = ($29|0)!=(0); - if (!($30)) { - $31 = HEAP32[$0>>2]|0; - $32 = HEAP32[$pTab>>2]|0; - $33 = HEAP32[$pTrigger>>2]|0; - $34 = ($33|0)!=(0|0); - $35 = $34 ? 1 : 0; - $36 = (_sqlite3IsReadOnly($31,$32,$35)|0); - $37 = ($36|0)!=(0); - if (!($37)) { - $38 = HEAP32[$db>>2]|0; - $39 = HEAP32[$pTab>>2]|0; - $40 = (($39) + 68|0); - $41 = HEAP32[$40>>2]|0; - $42 = (_sqlite3SchemaToIndex($38,$41)|0); - HEAP32[$iDb>>2] = $42; - $43 = HEAP32[$iDb>>2]|0; - $44 = HEAP32[$db>>2]|0; - $45 = (($44) + 16|0); - $46 = HEAP32[$45>>2]|0; - $47 = (($46) + ($43<<4)|0); - $48 = HEAP32[$47>>2]|0; - HEAP32[$zDb>>2] = $48; - $49 = HEAP32[$0>>2]|0; - $50 = HEAP32[$pTab>>2]|0; - $51 = HEAP32[$50>>2]|0; - $52 = HEAP32[$zDb>>2]|0; - $53 = (_sqlite3AuthCheck($49,9,$51,0,$52)|0); - HEAP32[$rcauth>>2] = $53; - $54 = HEAP32[$rcauth>>2]|0; - $55 = ($54|0)==(1); - if (!($55)) { - $56 = HEAP32[$0>>2]|0; - $57 = (($56) + 68|0); - $58 = HEAP32[$57>>2]|0; - $59 = (($58) + 1)|0; - HEAP32[$57>>2] = $59; - $60 = HEAP32[$1>>2]|0; - $61 = (($60) + 8|0); - $62 = (($61) + 40|0); - HEAP32[$62>>2] = $58; - HEAP32[$iTabCur>>2] = $58; - HEAP32[$nIdx>>2] = 0; - $63 = HEAP32[$pTab>>2]|0; - $64 = (($63) + 8|0); - $65 = HEAP32[$64>>2]|0; - HEAP32[$pIdx>>2] = $65; - while(1) { - $66 = HEAP32[$pIdx>>2]|0; - $67 = ($66|0)!=(0|0); - if (!($67)) { - break; - } - $68 = HEAP32[$0>>2]|0; - $69 = (($68) + 68|0); - $70 = HEAP32[$69>>2]|0; - $71 = (($70) + 1)|0; - HEAP32[$69>>2] = $71; - $72 = HEAP32[$pIdx>>2]|0; - $73 = (($72) + 20|0); - $74 = HEAP32[$73>>2]|0; - HEAP32[$pIdx>>2] = $74; - $75 = HEAP32[$nIdx>>2]|0; - $76 = (($75) + 1)|0; - HEAP32[$nIdx>>2] = $76; - } - $77 = HEAP32[$isView>>2]|0; - $78 = ($77|0)!=(0); - if ($78) { - $79 = HEAP32[$0>>2]|0; - $80 = HEAP32[$pTab>>2]|0; - $81 = HEAP32[$80>>2]|0; - _sqlite3AuthContextPush($79,$sContext,$81); - } - $82 = HEAP32[$0>>2]|0; - $83 = (_sqlite3GetVdbe($82)|0); - HEAP32[$v>>2] = $83; - $84 = HEAP32[$v>>2]|0; - $85 = ($84|0)==(0|0); - if (!($85)) { - $86 = HEAP32[$0>>2]|0; - $87 = (($86) + 18|0); - $88 = HEAP8[$87>>0]|0; - $89 = $88&255; - $90 = ($89|0)==(0); - if ($90) { - $91 = HEAP32[$v>>2]|0; - _sqlite3VdbeCountChanges($91); - } - $92 = HEAP32[$0>>2]|0; - $93 = HEAP32[$iDb>>2]|0; - _sqlite3BeginWriteOperation($92,1,$93); - $94 = HEAP32[$isView>>2]|0; - $95 = ($94|0)!=(0); - if ($95) { - $96 = HEAP32[$0>>2]|0; - $97 = HEAP32[$pTab>>2]|0; - $98 = HEAP32[$2>>2]|0; - $99 = HEAP32[$iTabCur>>2]|0; - _sqlite3MaterializeView($96,$97,$98,$99); - $100 = HEAP32[$iTabCur>>2]|0; - HEAP32[$iIdxCur>>2] = $100; - HEAP32[$iDataCur>>2] = $100; - } - ;HEAP32[$sNC+0>>2]=0|0;HEAP32[$sNC+4>>2]=0|0;HEAP32[$sNC+8>>2]=0|0;HEAP32[$sNC+12>>2]=0|0;HEAP32[$sNC+16>>2]=0|0;HEAP32[$sNC+20>>2]=0|0;HEAP32[$sNC+24>>2]=0|0;HEAP32[$sNC+28>>2]=0|0; - $101 = HEAP32[$0>>2]|0; - HEAP32[$sNC>>2] = $101; - $102 = HEAP32[$1>>2]|0; - $103 = (($sNC) + 4|0); - HEAP32[$103>>2] = $102; - $104 = HEAP32[$2>>2]|0; - $105 = (_sqlite3ResolveExprNames($sNC,$104)|0); - $106 = ($105|0)!=(0); - if (!($106)) { - $107 = HEAP32[$db>>2]|0; - $108 = (($107) + 24|0); - $109 = HEAP32[$108>>2]|0; - $110 = $109 & 128; - $111 = ($110|0)!=(0); - if ($111) { - $112 = HEAP32[$0>>2]|0; - $113 = (($112) + 72|0); - $114 = HEAP32[$113>>2]|0; - $115 = (($114) + 1)|0; - HEAP32[$113>>2] = $115; - HEAP32[$memCnt>>2] = $115; - $116 = HEAP32[$v>>2]|0; - $117 = HEAP32[$memCnt>>2]|0; - (_sqlite3VdbeAddOp2($116,25,0,$117)|0); - } - $118 = HEAP32[$rcauth>>2]|0; - $119 = ($118|0)==(0); - L26: do { - if ($119) { - $120 = HEAP32[$2>>2]|0; - $121 = ($120|0)==(0|0); - if ($121) { - $122 = HEAP32[$pTrigger>>2]|0; - $123 = ($122|0)!=(0|0); - if ($123) { - label = 30; - } else { - $124 = HEAP32[$pTab>>2]|0; - $125 = (($124) + 44|0); - $126 = HEAP8[$125>>0]|0; - $127 = $126&255; - $128 = $127 & 16; - $129 = ($128|0)!=(0); - if ($129) { - label = 30; - } else { - $130 = HEAP32[$0>>2]|0; - $131 = HEAP32[$pTab>>2]|0; - $132 = (_sqlite3FkRequired($130,$131,0,0)|0); - $133 = (0)==($132|0); - if ($133) { - $134 = HEAP32[$0>>2]|0; - $135 = HEAP32[$iDb>>2]|0; - $136 = HEAP32[$pTab>>2]|0; - $137 = (($136) + 32|0); - $138 = HEAP32[$137>>2]|0; - $139 = HEAP32[$pTab>>2]|0; - $140 = HEAP32[$139>>2]|0; - _sqlite3TableLock($134,$135,$138,1,$140); - $141 = HEAP32[$pTab>>2]|0; - $142 = (($141) + 44|0); - $143 = HEAP8[$142>>0]|0; - $144 = $143&255; - $145 = $144 & 32; - $146 = ($145|0)==(0); - if ($146) { - $147 = HEAP32[$v>>2]|0; - $148 = HEAP32[$pTab>>2]|0; - $149 = (($148) + 32|0); - $150 = HEAP32[$149>>2]|0; - $151 = HEAP32[$iDb>>2]|0; - $152 = HEAP32[$memCnt>>2]|0; - $153 = HEAP32[$pTab>>2]|0; - $154 = HEAP32[$153>>2]|0; - (_sqlite3VdbeAddOp4($147,115,$150,$151,$152,$154,-2)|0); - } - $155 = HEAP32[$pTab>>2]|0; - $156 = (($155) + 8|0); - $157 = HEAP32[$156>>2]|0; - HEAP32[$pIdx>>2] = $157; - while(1) { - $158 = HEAP32[$pIdx>>2]|0; - $159 = ($158|0)!=(0|0); - if (!($159)) { - break L26; - } - $160 = HEAP32[$v>>2]|0; - $161 = HEAP32[$pIdx>>2]|0; - $162 = (($161) + 44|0); - $163 = HEAP32[$162>>2]|0; - $164 = HEAP32[$iDb>>2]|0; - (_sqlite3VdbeAddOp2($160,115,$163,$164)|0); - $165 = HEAP32[$pIdx>>2]|0; - $166 = (($165) + 20|0); - $167 = HEAP32[$166>>2]|0; - HEAP32[$pIdx>>2] = $167; - } - } else { - label = 30; - } - } - } - } else { - label = 30; - } - } else { - label = 30; - } - } while(0); - L38: do { - if ((label|0) == 30) { - $168 = HEAP32[$pTab>>2]|0; - $169 = (($168) + 44|0); - $170 = HEAP8[$169>>0]|0; - $171 = $170&255; - $172 = $171 & 32; - $173 = ($172|0)==(0); - if ($173) { - HEAP32[$pPk>>2] = 0; - HEAP16[$nPk>>1] = 1; - $174 = HEAP32[$0>>2]|0; - $175 = (($174) + 72|0); - $176 = HEAP32[$175>>2]|0; - $177 = (($176) + 1)|0; - HEAP32[$175>>2] = $177; - HEAP32[$iRowSet>>2] = $177; - $178 = HEAP32[$v>>2]|0; - $179 = HEAP32[$iRowSet>>2]|0; - (_sqlite3VdbeAddOp2($178,28,0,$179)|0); - } else { - $180 = HEAP32[$pTab>>2]|0; - $181 = (_sqlite3PrimaryKeyIndex($180)|0); - HEAP32[$pPk>>2] = $181; - $182 = HEAP32[$pPk>>2]|0; - $183 = (($182) + 50|0); - $184 = HEAP16[$183>>1]|0; - HEAP16[$nPk>>1] = $184; - $185 = HEAP32[$0>>2]|0; - $186 = (($185) + 72|0); - $187 = HEAP32[$186>>2]|0; - $188 = (($187) + 1)|0; - HEAP32[$iPk>>2] = $188; - $189 = HEAP16[$nPk>>1]|0; - $190 = $189 << 16 >> 16; - $191 = HEAP32[$0>>2]|0; - $192 = (($191) + 72|0); - $193 = HEAP32[$192>>2]|0; - $194 = (($193) + ($190))|0; - HEAP32[$192>>2] = $194; - $195 = HEAP32[$0>>2]|0; - $196 = (($195) + 68|0); - $197 = HEAP32[$196>>2]|0; - $198 = (($197) + 1)|0; - HEAP32[$196>>2] = $198; - HEAP32[$iEphCur>>2] = $197; - $199 = HEAP32[$v>>2]|0; - $200 = HEAP32[$iEphCur>>2]|0; - $201 = HEAP16[$nPk>>1]|0; - $202 = $201 << 16 >> 16; - $203 = (_sqlite3VdbeAddOp2($199,55,$200,$202)|0); - HEAP32[$addrEphOpen>>2] = $203; - $204 = HEAP32[$0>>2]|0; - $205 = HEAP32[$pPk>>2]|0; - _sqlite3VdbeSetP4KeyInfo($204,$205); - } - $206 = HEAP32[$0>>2]|0; - $207 = HEAP32[$1>>2]|0; - $208 = HEAP32[$2>>2]|0; - $209 = HEAP32[$iTabCur>>2]|0; - $210 = (($209) + 1)|0; - $211 = (_sqlite3WhereBegin($206,$207,$208,0,0,12,$210)|0); - HEAP32[$pWInfo>>2] = $211; - $212 = HEAP32[$pWInfo>>2]|0; - $213 = ($212|0)==(0|0); - if ($213) { - break L1; - } - $214 = HEAP32[$pWInfo>>2]|0; - $215 = (_sqlite3WhereOkOnePass($214,$aiCurOnePass)|0); - HEAP32[$okOnePass>>2] = $215; - $216 = HEAP32[$db>>2]|0; - $217 = (($216) + 24|0); - $218 = HEAP32[$217>>2]|0; - $219 = $218 & 128; - $220 = ($219|0)!=(0); - if ($220) { - $221 = HEAP32[$v>>2]|0; - $222 = HEAP32[$memCnt>>2]|0; - (_sqlite3VdbeAddOp2($221,37,$222,1)|0); - } - $223 = HEAP32[$pPk>>2]|0; - $224 = ($223|0)!=(0|0); - do { - if ($224) { - HEAP32[$i>>2] = 0; - while(1) { - $225 = HEAP32[$i>>2]|0; - $226 = HEAP16[$nPk>>1]|0; - $227 = $226 << 16 >> 16; - $228 = ($225|0)<($227|0); - if (!($228)) { - break; - } - $229 = HEAP32[$v>>2]|0; - $230 = HEAP32[$pTab>>2]|0; - $231 = HEAP32[$iTabCur>>2]|0; - $232 = HEAP32[$i>>2]|0; - $233 = HEAP32[$pPk>>2]|0; - $234 = (($233) + 4|0); - $235 = HEAP32[$234>>2]|0; - $236 = (($235) + ($232<<1)|0); - $237 = HEAP16[$236>>1]|0; - $238 = $237 << 16 >> 16; - $239 = HEAP32[$iPk>>2]|0; - $240 = HEAP32[$i>>2]|0; - $241 = (($239) + ($240))|0; - _sqlite3ExprCodeGetColumnOfTable($229,$230,$231,$238,$241); - $242 = HEAP32[$i>>2]|0; - $243 = (($242) + 1)|0; - HEAP32[$i>>2] = $243; - } - $244 = HEAP32[$iPk>>2]|0; - HEAP32[$iKey>>2] = $244; - } else { - $245 = HEAP32[$0>>2]|0; - $246 = (($245) + 72|0); - $247 = HEAP32[$246>>2]|0; - $248 = (($247) + 1)|0; - HEAP32[$iKey>>2] = $248; - $249 = HEAP32[$0>>2]|0; - $250 = HEAP32[$pTab>>2]|0; - $251 = HEAP32[$iTabCur>>2]|0; - $252 = HEAP32[$iKey>>2]|0; - $253 = (_sqlite3ExprCodeGetColumn($249,$250,-1,$251,$252,0)|0); - HEAP32[$iKey>>2] = $253; - $254 = HEAP32[$iKey>>2]|0; - $255 = HEAP32[$0>>2]|0; - $256 = (($255) + 72|0); - $257 = HEAP32[$256>>2]|0; - $258 = ($254|0)>($257|0); - if (!($258)) { - break; - } - $259 = HEAP32[$iKey>>2]|0; - $260 = HEAP32[$0>>2]|0; - $261 = (($260) + 72|0); - HEAP32[$261>>2] = $259; - } - } while(0); - $262 = HEAP32[$okOnePass>>2]|0; - $263 = ($262|0)!=(0); - do { - if ($263) { - $264 = HEAP16[$nPk>>1]|0; - HEAP16[$nKey>>1] = $264; - $265 = HEAP32[$db>>2]|0; - $266 = HEAP32[$nIdx>>2]|0; - $267 = (($266) + 2)|0; - $268 = (_sqlite3DbMallocRaw($265,$267)|0); - HEAP32[$aToOpen>>2] = $268; - $269 = HEAP32[$aToOpen>>2]|0; - $270 = ($269|0)==(0|0); - if ($270) { - $271 = HEAP32[$pWInfo>>2]|0; - _sqlite3WhereEnd($271); - break L1; - } - $272 = HEAP32[$aToOpen>>2]|0; - $273 = HEAP32[$nIdx>>2]|0; - $274 = (($273) + 1)|0; - _memset(($272|0),1,($274|0))|0; - $275 = HEAP32[$nIdx>>2]|0; - $276 = (($275) + 1)|0; - $277 = HEAP32[$aToOpen>>2]|0; - $278 = (($277) + ($276)|0); - HEAP8[$278>>0] = 0; - $279 = HEAP32[$aiCurOnePass>>2]|0; - $280 = ($279|0)>=(0); - if ($280) { - $281 = HEAP32[$aiCurOnePass>>2]|0; - $282 = HEAP32[$iTabCur>>2]|0; - $283 = (($281) - ($282))|0; - $284 = HEAP32[$aToOpen>>2]|0; - $285 = (($284) + ($283)|0); - HEAP8[$285>>0] = 0; - } - $286 = (($aiCurOnePass) + 4|0); - $287 = HEAP32[$286>>2]|0; - $288 = ($287|0)>=(0); - if ($288) { - $289 = (($aiCurOnePass) + 4|0); - $290 = HEAP32[$289>>2]|0; - $291 = HEAP32[$iTabCur>>2]|0; - $292 = (($290) - ($291))|0; - $293 = HEAP32[$aToOpen>>2]|0; - $294 = (($293) + ($292)|0); - HEAP8[$294>>0] = 0; - } - $295 = HEAP32[$addrEphOpen>>2]|0; - $296 = ($295|0)!=(0); - if ($296) { - $297 = HEAP32[$v>>2]|0; - $298 = HEAP32[$addrEphOpen>>2]|0; - _sqlite3VdbeChangeToNoop($297,$298); - } - $299 = HEAP32[$v>>2]|0; - $300 = (_sqlite3VdbeAddOp0($299,16)|0); - HEAP32[$addrDelete>>2] = $300; - } else { - $301 = HEAP32[$pPk>>2]|0; - $302 = ($301|0)!=(0|0); - if ($302) { - $303 = HEAP32[$0>>2]|0; - $304 = (($303) + 72|0); - $305 = HEAP32[$304>>2]|0; - $306 = (($305) + 1)|0; - HEAP32[$304>>2] = $306; - HEAP32[$iKey>>2] = $306; - HEAP16[$nKey>>1] = 0; - $307 = HEAP32[$v>>2]|0; - $308 = HEAP32[$iPk>>2]|0; - $309 = HEAP16[$nPk>>1]|0; - $310 = $309 << 16 >> 16; - $311 = HEAP32[$iKey>>2]|0; - $312 = HEAP32[$v>>2]|0; - $313 = HEAP32[$pPk>>2]|0; - $314 = (_sqlite3IndexAffinityStr($312,$313)|0); - $315 = HEAP16[$nPk>>1]|0; - $316 = $315 << 16 >> 16; - (_sqlite3VdbeAddOp4($307,48,$308,$310,$311,$314,$316)|0); - $317 = HEAP32[$v>>2]|0; - $318 = HEAP32[$iEphCur>>2]|0; - $319 = HEAP32[$iKey>>2]|0; - (_sqlite3VdbeAddOp2($317,107,$318,$319)|0); - break; - } else { - HEAP16[$nKey>>1] = 1; - $320 = HEAP32[$v>>2]|0; - $321 = HEAP32[$iRowSet>>2]|0; - $322 = HEAP32[$iKey>>2]|0; - (_sqlite3VdbeAddOp2($320,125,$321,$322)|0); - break; - } - } - } while(0); - $323 = HEAP32[$pWInfo>>2]|0; - _sqlite3WhereEnd($323); - $324 = HEAP32[$okOnePass>>2]|0; - $325 = ($324|0)!=(0); - if ($325) { - $326 = HEAP32[$v>>2]|0; - $327 = (_sqlite3VdbeMakeLabel($326)|0); - HEAP32[$addrBypass>>2] = $327; - $328 = HEAP32[$v>>2]|0; - $329 = HEAP32[$addrBypass>>2]|0; - (_sqlite3VdbeAddOp2($328,16,0,$329)|0); - $330 = HEAP32[$v>>2]|0; - $331 = HEAP32[$addrDelete>>2]|0; - _sqlite3VdbeJumpHere($330,$331); - } - $332 = HEAP32[$isView>>2]|0; - $333 = ($332|0)!=(0); - if (!($333)) { - $334 = HEAP32[$0>>2]|0; - $335 = HEAP32[$pTab>>2]|0; - $336 = HEAP32[$iTabCur>>2]|0; - $337 = HEAP32[$aToOpen>>2]|0; - (_sqlite3OpenTableAndIndices($334,$335,53,$336,$337,$iDataCur,$iIdxCur)|0); - } - $338 = HEAP32[$okOnePass>>2]|0; - $339 = ($338|0)!=(0); - do { - if ($339) { - $340 = HEAP32[$iDataCur>>2]|0; - $341 = HEAP32[$iTabCur>>2]|0; - $342 = (($340) - ($341))|0; - $343 = HEAP32[$aToOpen>>2]|0; - $344 = (($343) + ($342)|0); - $345 = HEAP8[$344>>0]|0; - $346 = ($345<<24>>24)!=(0); - if (!($346)) { - break; - } - $347 = HEAP32[$v>>2]|0; - $348 = HEAP32[$iDataCur>>2]|0; - $349 = HEAP32[$addrBypass>>2]|0; - $350 = HEAP32[$iKey>>2]|0; - $351 = HEAP16[$nKey>>1]|0; - $352 = $351 << 16 >> 16; - (_sqlite3VdbeAddOp4Int($347,65,$348,$349,$350,$352)|0); - } else { - $353 = HEAP32[$pPk>>2]|0; - $354 = ($353|0)!=(0|0); - $355 = HEAP32[$v>>2]|0; - if ($354) { - $356 = HEAP32[$iEphCur>>2]|0; - $357 = (_sqlite3VdbeAddOp1($355,105,$356)|0); - HEAP32[$addrLoop>>2] = $357; - $358 = HEAP32[$v>>2]|0; - $359 = HEAP32[$iEphCur>>2]|0; - $360 = HEAP32[$iKey>>2]|0; - (_sqlite3VdbeAddOp2($358,98,$359,$360)|0); - break; - } else { - $361 = HEAP32[$iRowSet>>2]|0; - $362 = HEAP32[$iKey>>2]|0; - $363 = (_sqlite3VdbeAddOp3($355,126,$361,0,$362)|0); - HEAP32[$addrLoop>>2] = $363; - break; - } - } - } while(0); - $364 = HEAP32[$pTab>>2]|0; - $365 = (($364) + 44|0); - $366 = HEAP8[$365>>0]|0; - $367 = $366&255; - $368 = $367 & 16; - $369 = ($368|0)!=(0); - if ($369) { - $370 = HEAP32[$db>>2]|0; - $371 = HEAP32[$pTab>>2]|0; - $372 = (_sqlite3GetVTable($370,$371)|0); - HEAP32[$pVTab>>2] = $372; - $373 = HEAP32[$0>>2]|0; - $374 = HEAP32[$pTab>>2]|0; - _sqlite3VtabMakeWritable($373,$374); - $375 = HEAP32[$v>>2]|0; - $376 = HEAP32[$iKey>>2]|0; - $377 = HEAP32[$pVTab>>2]|0; - (_sqlite3VdbeAddOp4($375,15,0,1,$376,$377,-10)|0); - $378 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($378,2); - $379 = HEAP32[$0>>2]|0; - _sqlite3MayAbort($379); - } else { - $380 = HEAP32[$0>>2]|0; - $381 = (($380) + 18|0); - $382 = HEAP8[$381>>0]|0; - $383 = $382&255; - $384 = ($383|0)==(0); - $385 = $384&1; - HEAP32[$count>>2] = $385; - $386 = HEAP32[$0>>2]|0; - $387 = HEAP32[$pTab>>2]|0; - $388 = HEAP32[$pTrigger>>2]|0; - $389 = HEAP32[$iDataCur>>2]|0; - $390 = HEAP32[$iIdxCur>>2]|0; - $391 = HEAP32[$iKey>>2]|0; - $392 = HEAP16[$nKey>>1]|0; - $393 = HEAP32[$count>>2]|0; - $394 = $393&255; - $395 = HEAP32[$okOnePass>>2]|0; - $396 = $395&255; - _sqlite3GenerateRowDelete($386,$387,$388,$389,$390,$391,$392,$394,10,$396); - } - $397 = HEAP32[$okOnePass>>2]|0; - $398 = ($397|0)!=(0); - do { - if ($398) { - $399 = HEAP32[$v>>2]|0; - $400 = HEAP32[$addrBypass>>2]|0; - _sqlite3VdbeResolveLabel($399,$400); - } else { - $401 = HEAP32[$pPk>>2]|0; - $402 = ($401|0)!=(0|0); - $403 = HEAP32[$v>>2]|0; - if ($402) { - $404 = HEAP32[$iEphCur>>2]|0; - $405 = HEAP32[$addrLoop>>2]|0; - $406 = (($405) + 1)|0; - (_sqlite3VdbeAddOp2($403,9,$404,$406)|0); - $407 = HEAP32[$v>>2]|0; - $408 = HEAP32[$addrLoop>>2]|0; - _sqlite3VdbeJumpHere($407,$408); - break; - } else { - $409 = HEAP32[$addrLoop>>2]|0; - (_sqlite3VdbeAddOp2($403,16,0,$409)|0); - $410 = HEAP32[$v>>2]|0; - $411 = HEAP32[$addrLoop>>2]|0; - _sqlite3VdbeJumpHere($410,$411); - break; - } - } - } while(0); - $412 = HEAP32[$isView>>2]|0; - $413 = ($412|0)!=(0); - if ($413) { - break; - } - $414 = HEAP32[$pTab>>2]|0; - $415 = (($414) + 44|0); - $416 = HEAP8[$415>>0]|0; - $417 = $416&255; - $418 = $417 & 16; - $419 = ($418|0)!=(0); - if ($419) { - break; - } - $420 = HEAP32[$pPk>>2]|0; - $421 = ($420|0)!=(0|0); - if (!($421)) { - $422 = HEAP32[$v>>2]|0; - $423 = HEAP32[$iDataCur>>2]|0; - (_sqlite3VdbeAddOp1($422,58,$423)|0); - } - HEAP32[$i>>2] = 0; - $424 = HEAP32[$pTab>>2]|0; - $425 = (($424) + 8|0); - $426 = HEAP32[$425>>2]|0; - HEAP32[$pIdx>>2] = $426; - while(1) { - $427 = HEAP32[$pIdx>>2]|0; - $428 = ($427|0)!=(0|0); - if (!($428)) { - break L38; - } - $429 = HEAP32[$v>>2]|0; - $430 = HEAP32[$iIdxCur>>2]|0; - $431 = HEAP32[$i>>2]|0; - $432 = (($430) + ($431))|0; - (_sqlite3VdbeAddOp1($429,58,$432)|0); - $433 = HEAP32[$i>>2]|0; - $434 = (($433) + 1)|0; - HEAP32[$i>>2] = $434; - $435 = HEAP32[$pIdx>>2]|0; - $436 = (($435) + 20|0); - $437 = HEAP32[$436>>2]|0; - HEAP32[$pIdx>>2] = $437; - } - } - } while(0); - $438 = HEAP32[$0>>2]|0; - $439 = (($438) + 18|0); - $440 = HEAP8[$439>>0]|0; - $441 = $440&255; - $442 = ($441|0)==(0); - if ($442) { - $443 = HEAP32[$0>>2]|0; - $444 = (($443) + 412|0); - $445 = HEAP32[$444>>2]|0; - $446 = ($445|0)==(0|0); - if ($446) { - $447 = HEAP32[$0>>2]|0; - _sqlite3AutoincrementEnd($447); - } - } - $448 = HEAP32[$db>>2]|0; - $449 = (($448) + 24|0); - $450 = HEAP32[$449>>2]|0; - $451 = $450 & 128; - $452 = ($451|0)!=(0); - if ($452) { - $453 = HEAP32[$0>>2]|0; - $454 = (($453) + 18|0); - $455 = HEAP8[$454>>0]|0; - $456 = ($455<<24>>24)!=(0); - if (!($456)) { - $457 = HEAP32[$0>>2]|0; - $458 = (($457) + 412|0); - $459 = HEAP32[$458>>2]|0; - $460 = ($459|0)!=(0|0); - if (!($460)) { - $461 = HEAP32[$v>>2]|0; - $462 = HEAP32[$memCnt>>2]|0; - (_sqlite3VdbeAddOp2($461,35,$462,1)|0); - $463 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($463,1); - $464 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($464,0,0,24448,0)|0); - } - } - } - } - } - } - } - } - } - } - } - } while(0); - _sqlite3AuthContextPop($sContext); - $465 = HEAP32[$db>>2]|0; - $466 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($465,$466); - $467 = HEAP32[$db>>2]|0; - $468 = HEAP32[$2>>2]|0; - _sqlite3ExprDelete($467,$468); - $469 = HEAP32[$db>>2]|0; - $470 = HEAP32[$aToOpen>>2]|0; - _sqlite3DbFree($469,$470); - STACKTOP = sp;return; -} -function _sqlite3ExprListCheckLength($pParse,$pEList,$zObject) { - $pParse = $pParse|0; - $pEList = $pEList|0; - $zObject = $zObject|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mx = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $mx = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pEList; - HEAP32[$2>>2] = $zObject; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (($4) + 88|0); - $6 = (($5) + 8|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$mx>>2] = $7; - $8 = HEAP32[$1>>2]|0; - $9 = ($8|0)!=(0|0); - if (!($9)) { - STACKTOP = sp;return; - } - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$mx>>2]|0; - $13 = ($11|0)>($12|0); - if (!($13)) { - STACKTOP = sp;return; - } - $14 = HEAP32[$0>>2]|0; - $15 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer>>2] = $15; - _sqlite3ErrorMsg($14,24424,$vararg_buffer); - STACKTOP = sp;return; -} -function _sqlite3Update($pParse,$pTabList,$pChanges,$pWhere,$onError) { - $pParse = $pParse|0; - $pTabList = $pTabList|0; - $pChanges = $pChanges|0; - $pWhere = $pWhere|0; - $onError = $onError|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; - var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; - var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; - var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; - var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; - var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; - var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; - var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; - var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; - var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; - var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; - var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; - var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0; - var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0; - var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0; - var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0; - var $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0; - var $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0; - var $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0; - var $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0; - var $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0; - var $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0; - var $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0; - var $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0; - var $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0; - var $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0; - var $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0; - var $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0; - var $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0; - var $981 = 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $99 = 0, $aRegIdx = 0, $aToOpen = 0, $aXRef = 0, $addrOpen = 0, $addrTop = 0, $aiCurOnePass = 0, $bReplace = 0, $chngKey = 0, $chngPk = 0, $chngRowid = 0, $db = 0, $hasFK = 0; - var $i = 0, $iBaseCur = 0, $iDataCur = 0, $iDb = 0, $iEph = 0, $iIdxCur = 0, $iPk = 0, $isView = 0, $j = 0, $j1 = 0, $labelBreak = 0, $labelContinue = 0, $nIdx = 0, $nKey = 0, $nPk = 0, $newmask = 0, $okOnePass = 0, $oldmask = 0, $pIdx = 0, $pPk = 0; - var $pRowidExpr = 0, $pTab = 0, $pTrigger = 0, $pWInfo = 0, $rc = 0, $reg = 0, $regKey = 0, $regNew = 0, $regNewRowid = 0, $regOld = 0, $regOldRowid = 0, $regRowCount = 0, $regRowSet = 0, $sContext = 0, $sNC = 0, $tmask = 0, $v = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 256|0; - $vararg_buffer = sp; - $0 = sp + 244|0; - $1 = sp + 240|0; - $2 = sp + 236|0; - $3 = sp + 232|0; - $4 = sp + 228|0; - $i = sp + 224|0; - $j = sp + 220|0; - $pTab = sp + 216|0; - $addrTop = sp + 212|0; - $pWInfo = sp + 208|0; - $v = sp + 204|0; - $pIdx = sp + 200|0; - $pPk = sp + 196|0; - $nIdx = sp + 192|0; - $iBaseCur = sp + 188|0; - $iDataCur = sp + 184|0; - $iIdxCur = sp + 180|0; - $db = sp + 176|0; - $aRegIdx = sp + 172|0; - $aXRef = sp + 168|0; - $aToOpen = sp + 164|0; - $chngPk = sp + 252|0; - $chngRowid = sp + 251|0; - $chngKey = sp + 250|0; - $pRowidExpr = sp + 160|0; - $sContext = sp + 152|0; - $sNC = sp + 120|0; - $iDb = sp + 112|0; - $okOnePass = sp + 108|0; - $hasFK = sp + 104|0; - $labelBreak = sp + 100|0; - $labelContinue = sp + 96|0; - $isView = sp + 92|0; - $pTrigger = sp + 88|0; - $tmask = sp + 84|0; - $newmask = sp + 80|0; - $iEph = sp + 76|0; - $nKey = sp + 72|0; - $aiCurOnePass = sp + 64|0; - $regRowCount = sp + 56|0; - $regOldRowid = sp + 52|0; - $regNewRowid = sp + 48|0; - $regNew = sp + 44|0; - $regOld = sp + 40|0; - $regRowSet = sp + 36|0; - $regKey = sp + 32|0; - $rc = sp + 28|0; - $reg = sp + 24|0; - $iPk = sp + 20|0; - $nPk = sp + 248|0; - $addrOpen = sp + 16|0; - $oldmask = sp + 12|0; - $j1 = sp + 8|0; - $bReplace = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTabList; - HEAP32[$2>>2] = $pChanges; - HEAP32[$3>>2] = $pWhere; - HEAP32[$4>>2] = $onError; - HEAP32[$addrTop>>2] = 0; - HEAP32[$aRegIdx>>2] = 0; - HEAP32[$aXRef>>2] = 0; - HEAP32[$pRowidExpr>>2] = 0; - HEAP32[$iEph>>2] = 0; - HEAP32[$nKey>>2] = 0; - HEAP32[$regRowCount>>2] = 0; - HEAP32[$regOld>>2] = 0; - HEAP32[$regRowSet>>2] = 0; - HEAP32[$regKey>>2] = 0; - ;HEAP32[$sContext+0>>2]=0|0;HEAP32[$sContext+4>>2]=0|0; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 64|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)!=(0); - if ($10) { - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } - $11 = HEAP32[$db>>2]|0; - $12 = (($11) + 64|0); - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - $15 = ($14|0)!=(0); - if ($15) { - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } - $16 = HEAP32[$0>>2]|0; - $17 = HEAP32[$1>>2]|0; - $18 = (_sqlite3SrcListLookup($16,$17)|0); - HEAP32[$pTab>>2] = $18; - $19 = HEAP32[$pTab>>2]|0; - $20 = ($19|0)==(0|0); - if ($20) { - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$pTab>>2]|0; - $24 = (($23) + 68|0); - $25 = HEAP32[$24>>2]|0; - $26 = (_sqlite3SchemaToIndex($22,$25)|0); - HEAP32[$iDb>>2] = $26; - $27 = HEAP32[$0>>2]|0; - $28 = HEAP32[$pTab>>2]|0; - $29 = HEAP32[$2>>2]|0; - $30 = (_sqlite3TriggersExist($27,$28,110,$29,$tmask)|0); - HEAP32[$pTrigger>>2] = $30; - $31 = HEAP32[$pTab>>2]|0; - $32 = (($31) + 12|0); - $33 = HEAP32[$32>>2]|0; - $34 = ($33|0)!=(0|0); - $35 = $34&1; - HEAP32[$isView>>2] = $35; - $36 = HEAP32[$0>>2]|0; - $37 = HEAP32[$pTab>>2]|0; - $38 = (_sqlite3ViewGetColumnNames($36,$37)|0); - $39 = ($38|0)!=(0); - if ($39) { - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } - $40 = HEAP32[$0>>2]|0; - $41 = HEAP32[$pTab>>2]|0; - $42 = HEAP32[$tmask>>2]|0; - $43 = (_sqlite3IsReadOnly($40,$41,$42)|0); - $44 = ($43|0)!=(0); - if ($44) { - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } - $45 = HEAP32[$0>>2]|0; - $46 = (($45) + 68|0); - $47 = HEAP32[$46>>2]|0; - $48 = (($47) + 1)|0; - HEAP32[$46>>2] = $48; - HEAP32[$iDataCur>>2] = $47; - HEAP32[$iBaseCur>>2] = $47; - $49 = HEAP32[$1>>2]|0; - $50 = (($49) + 8|0); - $51 = (($50) + 40|0); - HEAP32[$51>>2] = $47; - $52 = HEAP32[$iDataCur>>2]|0; - $53 = (($52) + 1)|0; - HEAP32[$iIdxCur>>2] = $53; - $54 = HEAP32[$pTab>>2]|0; - $55 = (($54) + 44|0); - $56 = HEAP8[$55>>0]|0; - $57 = $56&255; - $58 = $57 & 32; - $59 = ($58|0)==(0); - if ($59) { - $62 = 0; - } else { - $60 = HEAP32[$pTab>>2]|0; - $61 = (_sqlite3PrimaryKeyIndex($60)|0); - $62 = $61; - } - HEAP32[$pPk>>2] = $62; - HEAP32[$nIdx>>2] = 0; - $63 = HEAP32[$pTab>>2]|0; - $64 = (($63) + 8|0); - $65 = HEAP32[$64>>2]|0; - HEAP32[$pIdx>>2] = $65; - while(1) { - $66 = HEAP32[$pIdx>>2]|0; - $67 = ($66|0)!=(0|0); - if (!($67)) { - break; - } - $68 = HEAP32[$pIdx>>2]|0; - $69 = (($68) + 55|0); - $70 = HEAP8[$69>>0]|0; - $71 = $70 & 3; - $72 = $71&255; - $73 = ($72|0)==(2); - if ($73) { - $74 = HEAP32[$pPk>>2]|0; - $75 = ($74|0)!=(0|0); - if ($75) { - $76 = HEAP32[$0>>2]|0; - $77 = (($76) + 68|0); - $78 = HEAP32[$77>>2]|0; - HEAP32[$iDataCur>>2] = $78; - $79 = HEAP32[$iDataCur>>2]|0; - $80 = HEAP32[$1>>2]|0; - $81 = (($80) + 8|0); - $82 = (($81) + 40|0); - HEAP32[$82>>2] = $79; - } - } - $83 = HEAP32[$0>>2]|0; - $84 = (($83) + 68|0); - $85 = HEAP32[$84>>2]|0; - $86 = (($85) + 1)|0; - HEAP32[$84>>2] = $86; - $87 = HEAP32[$pIdx>>2]|0; - $88 = (($87) + 20|0); - $89 = HEAP32[$88>>2]|0; - HEAP32[$pIdx>>2] = $89; - $90 = HEAP32[$nIdx>>2]|0; - $91 = (($90) + 1)|0; - HEAP32[$nIdx>>2] = $91; - } - $92 = HEAP32[$db>>2]|0; - $93 = HEAP32[$pTab>>2]|0; - $94 = (($93) + 38|0); - $95 = HEAP16[$94>>1]|0; - $96 = $95 << 16 >> 16; - $97 = HEAP32[$nIdx>>2]|0; - $98 = (($96) + ($97))|0; - $99 = $98<<2; - $100 = HEAP32[$nIdx>>2]|0; - $101 = (($99) + ($100))|0; - $102 = (($101) + 2)|0; - $103 = (_sqlite3DbMallocRaw($92,$102)|0); - HEAP32[$aXRef>>2] = $103; - $104 = HEAP32[$aXRef>>2]|0; - $105 = ($104|0)==(0|0); - if ($105) { - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } - $106 = HEAP32[$aXRef>>2]|0; - $107 = HEAP32[$pTab>>2]|0; - $108 = (($107) + 38|0); - $109 = HEAP16[$108>>1]|0; - $110 = $109 << 16 >> 16; - $111 = (($106) + ($110<<2)|0); - HEAP32[$aRegIdx>>2] = $111; - $112 = HEAP32[$aRegIdx>>2]|0; - $113 = HEAP32[$nIdx>>2]|0; - $114 = (($112) + ($113<<2)|0); - HEAP32[$aToOpen>>2] = $114; - $115 = HEAP32[$aToOpen>>2]|0; - $116 = HEAP32[$nIdx>>2]|0; - $117 = (($116) + 1)|0; - _memset(($115|0),1,($117|0))|0; - $118 = HEAP32[$nIdx>>2]|0; - $119 = (($118) + 1)|0; - $120 = HEAP32[$aToOpen>>2]|0; - $121 = (($120) + ($119)|0); - HEAP8[$121>>0] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $122 = HEAP32[$i>>2]|0; - $123 = HEAP32[$pTab>>2]|0; - $124 = (($123) + 38|0); - $125 = HEAP16[$124>>1]|0; - $126 = $125 << 16 >> 16; - $127 = ($122|0)<($126|0); - if (!($127)) { - break; - } - $128 = HEAP32[$i>>2]|0; - $129 = HEAP32[$aXRef>>2]|0; - $130 = (($129) + ($128<<2)|0); - HEAP32[$130>>2] = -1; - $131 = HEAP32[$i>>2]|0; - $132 = (($131) + 1)|0; - HEAP32[$i>>2] = $132; - } - ;HEAP32[$sNC+0>>2]=0|0;HEAP32[$sNC+4>>2]=0|0;HEAP32[$sNC+8>>2]=0|0;HEAP32[$sNC+12>>2]=0|0;HEAP32[$sNC+16>>2]=0|0;HEAP32[$sNC+20>>2]=0|0;HEAP32[$sNC+24>>2]=0|0;HEAP32[$sNC+28>>2]=0|0; - $133 = HEAP32[$0>>2]|0; - HEAP32[$sNC>>2] = $133; - $134 = HEAP32[$1>>2]|0; - $135 = (($sNC) + 4|0); - HEAP32[$135>>2] = $134; - HEAP8[$chngPk>>0] = 0; - HEAP8[$chngRowid>>0] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $136 = HEAP32[$i>>2]|0; - $137 = HEAP32[$2>>2]|0; - $138 = HEAP32[$137>>2]|0; - $139 = ($136|0)<($138|0); - if (!($139)) { - label = 42; - break; - } - $140 = HEAP32[$i>>2]|0; - $141 = HEAP32[$2>>2]|0; - $142 = (($141) + 4|0); - $143 = HEAP32[$142>>2]|0; - $144 = (($143) + (($140*20)|0)|0); - $145 = HEAP32[$144>>2]|0; - $146 = (_sqlite3ResolveExprNames($sNC,$145)|0); - $147 = ($146|0)!=(0); - if ($147) { - label = 193; - break; - } - HEAP32[$j>>2] = 0; - while(1) { - $148 = HEAP32[$j>>2]|0; - $149 = HEAP32[$pTab>>2]|0; - $150 = (($149) + 38|0); - $151 = HEAP16[$150>>1]|0; - $152 = $151 << 16 >> 16; - $153 = ($148|0)<($152|0); - if (!($153)) { - break; - } - $154 = HEAP32[$j>>2]|0; - $155 = HEAP32[$pTab>>2]|0; - $156 = (($155) + 4|0); - $157 = HEAP32[$156>>2]|0; - $158 = (($157) + (($154*24)|0)|0); - $159 = HEAP32[$158>>2]|0; - $160 = HEAP32[$i>>2]|0; - $161 = HEAP32[$2>>2]|0; - $162 = (($161) + 4|0); - $163 = HEAP32[$162>>2]|0; - $164 = (($163) + (($160*20)|0)|0); - $165 = (($164) + 4|0); - $166 = HEAP32[$165>>2]|0; - $167 = (_sqlite3_stricmp($159,$166)|0); - $168 = ($167|0)==(0); - $169 = HEAP32[$j>>2]|0; - if ($168) { - label = 24; - break; - } - $197 = (($169) + 1)|0; - HEAP32[$j>>2] = $197; - } - if ((label|0) == 24) { - label = 0; - $170 = HEAP32[$pTab>>2]|0; - $171 = (($170) + 36|0); - $172 = HEAP16[$171>>1]|0; - $173 = $172 << 16 >> 16; - $174 = ($169|0)==($173|0); - if ($174) { - HEAP8[$chngRowid>>0] = 1; - $175 = HEAP32[$i>>2]|0; - $176 = HEAP32[$2>>2]|0; - $177 = (($176) + 4|0); - $178 = HEAP32[$177>>2]|0; - $179 = (($178) + (($175*20)|0)|0); - $180 = HEAP32[$179>>2]|0; - HEAP32[$pRowidExpr>>2] = $180; - } else { - $181 = HEAP32[$pPk>>2]|0; - $182 = ($181|0)!=(0|0); - if ($182) { - $183 = HEAP32[$j>>2]|0; - $184 = HEAP32[$pTab>>2]|0; - $185 = (($184) + 4|0); - $186 = HEAP32[$185>>2]|0; - $187 = (($186) + (($183*24)|0)|0); - $188 = (($187) + 23|0); - $189 = HEAP8[$188>>0]|0; - $190 = $189&255; - $191 = $190 & 1; - $192 = ($191|0)!=(0); - if ($192) { - HEAP8[$chngPk>>0] = 1; - } - } - } - $193 = HEAP32[$i>>2]|0; - $194 = HEAP32[$j>>2]|0; - $195 = HEAP32[$aXRef>>2]|0; - $196 = (($195) + ($194<<2)|0); - HEAP32[$196>>2] = $193; - } - $198 = HEAP32[$j>>2]|0; - $199 = HEAP32[$pTab>>2]|0; - $200 = (($199) + 38|0); - $201 = HEAP16[$200>>1]|0; - $202 = $201 << 16 >> 16; - $203 = ($198|0)>=($202|0); - if ($203) { - $204 = HEAP32[$pPk>>2]|0; - $205 = ($204|0)==(0|0); - if (!($205)) { - label = 35; - break; - } - $206 = HEAP32[$i>>2]|0; - $207 = HEAP32[$2>>2]|0; - $208 = (($207) + 4|0); - $209 = HEAP32[$208>>2]|0; - $210 = (($209) + (($206*20)|0)|0); - $211 = (($210) + 4|0); - $212 = HEAP32[$211>>2]|0; - $213 = (_sqlite3IsRowid($212)|0); - $214 = ($213|0)!=(0); - if (!($214)) { - label = 35; - break; - } - HEAP32[$j>>2] = -1; - HEAP8[$chngRowid>>0] = 1; - $215 = HEAP32[$i>>2]|0; - $216 = HEAP32[$2>>2]|0; - $217 = (($216) + 4|0); - $218 = HEAP32[$217>>2]|0; - $219 = (($218) + (($215*20)|0)|0); - $220 = HEAP32[$219>>2]|0; - HEAP32[$pRowidExpr>>2] = $220; - } - $231 = HEAP32[$0>>2]|0; - $232 = HEAP32[$pTab>>2]|0; - $233 = HEAP32[$232>>2]|0; - $234 = HEAP32[$j>>2]|0; - $235 = ($234|0)<(0); - if ($235) { - $248 = 17192; - } else { - $236 = HEAP32[$j>>2]|0; - $237 = HEAP32[$pTab>>2]|0; - $238 = (($237) + 4|0); - $239 = HEAP32[$238>>2]|0; - $240 = (($239) + (($236*24)|0)|0); - $241 = HEAP32[$240>>2]|0; - $248 = $241; - } - $242 = HEAP32[$iDb>>2]|0; - $243 = HEAP32[$db>>2]|0; - $244 = (($243) + 16|0); - $245 = HEAP32[$244>>2]|0; - $246 = (($245) + ($242<<4)|0); - $247 = HEAP32[$246>>2]|0; - $249 = (_sqlite3AuthCheck($231,23,$233,$248,$247)|0); - HEAP32[$rc>>2] = $249; - $250 = HEAP32[$rc>>2]|0; - $251 = ($250|0)==(1); - if ($251) { - label = 193; - break; - } - $252 = HEAP32[$rc>>2]|0; - $253 = ($252|0)==(2); - if ($253) { - $254 = HEAP32[$j>>2]|0; - $255 = HEAP32[$aXRef>>2]|0; - $256 = (($255) + ($254<<2)|0); - HEAP32[$256>>2] = -1; - } - $257 = HEAP32[$i>>2]|0; - $258 = (($257) + 1)|0; - HEAP32[$i>>2] = $258; - } - if ((label|0) == 35) { - $221 = HEAP32[$0>>2]|0; - $222 = HEAP32[$i>>2]|0; - $223 = HEAP32[$2>>2]|0; - $224 = (($223) + 4|0); - $225 = HEAP32[$224>>2]|0; - $226 = (($225) + (($222*20)|0)|0); - $227 = (($226) + 4|0); - $228 = HEAP32[$227>>2]|0; - HEAP32[$vararg_buffer>>2] = $228; - _sqlite3ErrorMsg($221,24376,$vararg_buffer); - $229 = HEAP32[$0>>2]|0; - $230 = (($229) + 17|0); - HEAP8[$230>>0] = 1; - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } - else if ((label|0) == 42) { - $259 = HEAP8[$chngRowid>>0]|0; - $260 = $259&255; - $261 = HEAP8[$chngPk>>0]|0; - $262 = $261&255; - $263 = (($260) + ($262))|0; - $264 = $263&255; - HEAP8[$chngKey>>0] = $264; - $265 = HEAP32[$1>>2]|0; - $266 = (($265) + 8|0); - $267 = (($266) + 56|0); - $268 = $267; - $269 = $268; - HEAP32[$269>>2] = 0; - $270 = (($268) + 4)|0; - $271 = $270; - HEAP32[$271>>2] = 0; - $272 = HEAP32[$0>>2]|0; - $273 = HEAP32[$pTab>>2]|0; - $274 = HEAP32[$aXRef>>2]|0; - $275 = HEAP8[$chngKey>>0]|0; - $276 = $275&255; - $277 = (_sqlite3FkRequired($272,$273,$274,$276)|0); - HEAP32[$hasFK>>2] = $277; - HEAP32[$j>>2] = 0; - $278 = HEAP32[$pTab>>2]|0; - $279 = (($278) + 8|0); - $280 = HEAP32[$279>>2]|0; - HEAP32[$pIdx>>2] = $280; - while(1) { - $281 = HEAP32[$pIdx>>2]|0; - $282 = ($281|0)!=(0|0); - if (!($282)) { - break; - } - $283 = HEAP8[$chngKey>>0]|0; - $284 = $283&255; - $285 = ($284|0)!=(0); - L68: do { - if ($285) { - label = 48; - } else { - $286 = HEAP32[$hasFK>>2]|0; - $287 = ($286|0)!=(0); - if ($287) { - label = 48; - } else { - $288 = HEAP32[$pIdx>>2]|0; - $289 = (($288) + 36|0); - $290 = HEAP32[$289>>2]|0; - $291 = ($290|0)!=(0|0); - if ($291) { - label = 48; - } else { - $292 = HEAP32[$pIdx>>2]|0; - $293 = HEAP32[$pPk>>2]|0; - $294 = ($292|0)==($293|0); - if ($294) { - label = 48; - } else { - HEAP32[$reg>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $299 = HEAP32[$i>>2]|0; - $300 = HEAP32[$pIdx>>2]|0; - $301 = (($300) + 50|0); - $302 = HEAP16[$301>>1]|0; - $303 = $302&65535; - $304 = ($299|0)<($303|0); - if (!($304)) { - break L68; - } - $305 = HEAP32[$i>>2]|0; - $306 = HEAP32[$pIdx>>2]|0; - $307 = (($306) + 4|0); - $308 = HEAP32[$307>>2]|0; - $309 = (($308) + ($305<<1)|0); - $310 = HEAP16[$309>>1]|0; - $311 = $310 << 16 >> 16; - $312 = HEAP32[$aXRef>>2]|0; - $313 = (($312) + ($311<<2)|0); - $314 = HEAP32[$313>>2]|0; - $315 = ($314|0)>=(0); - if ($315) { - break; - } - $320 = HEAP32[$i>>2]|0; - $321 = (($320) + 1)|0; - HEAP32[$i>>2] = $321; - } - $316 = HEAP32[$0>>2]|0; - $317 = (($316) + 72|0); - $318 = HEAP32[$317>>2]|0; - $319 = (($318) + 1)|0; - HEAP32[$317>>2] = $319; - HEAP32[$reg>>2] = $319; - } - } - } - } - } while(0); - if ((label|0) == 48) { - label = 0; - $295 = HEAP32[$0>>2]|0; - $296 = (($295) + 72|0); - $297 = HEAP32[$296>>2]|0; - $298 = (($297) + 1)|0; - HEAP32[$296>>2] = $298; - HEAP32[$reg>>2] = $298; - } - $322 = HEAP32[$reg>>2]|0; - $323 = ($322|0)==(0); - if ($323) { - $324 = HEAP32[$j>>2]|0; - $325 = (($324) + 1)|0; - $326 = HEAP32[$aToOpen>>2]|0; - $327 = (($326) + ($325)|0); - HEAP8[$327>>0] = 0; - } - $328 = HEAP32[$reg>>2]|0; - $329 = HEAP32[$j>>2]|0; - $330 = HEAP32[$aRegIdx>>2]|0; - $331 = (($330) + ($329<<2)|0); - HEAP32[$331>>2] = $328; - $332 = HEAP32[$pIdx>>2]|0; - $333 = (($332) + 20|0); - $334 = HEAP32[$333>>2]|0; - HEAP32[$pIdx>>2] = $334; - $335 = HEAP32[$j>>2]|0; - $336 = (($335) + 1)|0; - HEAP32[$j>>2] = $336; - } - $337 = HEAP32[$0>>2]|0; - $338 = (_sqlite3GetVdbe($337)|0); - HEAP32[$v>>2] = $338; - $339 = HEAP32[$v>>2]|0; - $340 = ($339|0)==(0|0); - if ($340) { - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } - $341 = HEAP32[$0>>2]|0; - $342 = (($341) + 18|0); - $343 = HEAP8[$342>>0]|0; - $344 = $343&255; - $345 = ($344|0)==(0); - if ($345) { - $346 = HEAP32[$v>>2]|0; - _sqlite3VdbeCountChanges($346); - } - $347 = HEAP32[$0>>2]|0; - $348 = HEAP32[$iDb>>2]|0; - _sqlite3BeginWriteOperation($347,1,$348); - $349 = HEAP32[$pTab>>2]|0; - $350 = (($349) + 44|0); - $351 = HEAP8[$350>>0]|0; - $352 = $351&255; - $353 = $352 & 16; - $354 = ($353|0)!=(0); - $355 = HEAP32[$0>>2]|0; - if ($354) { - $356 = HEAP32[$1>>2]|0; - $357 = HEAP32[$pTab>>2]|0; - $358 = HEAP32[$2>>2]|0; - $359 = HEAP32[$pRowidExpr>>2]|0; - $360 = HEAP32[$aXRef>>2]|0; - $361 = HEAP32[$3>>2]|0; - $362 = HEAP32[$4>>2]|0; - _updateVirtualTable($355,$356,$357,$358,$359,$360,$361,$362); - HEAP32[$3>>2] = 0; - HEAP32[$1>>2] = 0; - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } - $363 = (($355) + 72|0); - $364 = HEAP32[$363>>2]|0; - $365 = (($364) + 1)|0; - HEAP32[$363>>2] = $365; - HEAP32[$regRowSet>>2] = $365; - $366 = HEAP32[$0>>2]|0; - $367 = (($366) + 72|0); - $368 = HEAP32[$367>>2]|0; - $369 = (($368) + 1)|0; - HEAP32[$367>>2] = $369; - HEAP32[$regNewRowid>>2] = $369; - HEAP32[$regOldRowid>>2] = $369; - $370 = HEAP8[$chngPk>>0]|0; - $371 = $370&255; - $372 = ($371|0)!=(0); - if ($372) { - label = 65; - } else { - $373 = HEAP32[$pTrigger>>2]|0; - $374 = ($373|0)!=(0|0); - if ($374) { - label = 65; - } else { - $375 = HEAP32[$hasFK>>2]|0; - $376 = ($375|0)!=(0); - if ($376) { - label = 65; - } - } - } - if ((label|0) == 65) { - $377 = HEAP32[$0>>2]|0; - $378 = (($377) + 72|0); - $379 = HEAP32[$378>>2]|0; - $380 = (($379) + 1)|0; - HEAP32[$regOld>>2] = $380; - $381 = HEAP32[$pTab>>2]|0; - $382 = (($381) + 38|0); - $383 = HEAP16[$382>>1]|0; - $384 = $383 << 16 >> 16; - $385 = HEAP32[$0>>2]|0; - $386 = (($385) + 72|0); - $387 = HEAP32[$386>>2]|0; - $388 = (($387) + ($384))|0; - HEAP32[$386>>2] = $388; - } - $389 = HEAP8[$chngKey>>0]|0; - $390 = $389&255; - $391 = ($390|0)!=(0); - if ($391) { - label = 69; - } else { - $392 = HEAP32[$pTrigger>>2]|0; - $393 = ($392|0)!=(0|0); - if ($393) { - label = 69; - } else { - $394 = HEAP32[$hasFK>>2]|0; - $395 = ($394|0)!=(0); - if ($395) { - label = 69; - } - } - } - if ((label|0) == 69) { - $396 = HEAP32[$0>>2]|0; - $397 = (($396) + 72|0); - $398 = HEAP32[$397>>2]|0; - $399 = (($398) + 1)|0; - HEAP32[$397>>2] = $399; - HEAP32[$regNewRowid>>2] = $399; - } - $400 = HEAP32[$0>>2]|0; - $401 = (($400) + 72|0); - $402 = HEAP32[$401>>2]|0; - $403 = (($402) + 1)|0; - HEAP32[$regNew>>2] = $403; - $404 = HEAP32[$pTab>>2]|0; - $405 = (($404) + 38|0); - $406 = HEAP16[$405>>1]|0; - $407 = $406 << 16 >> 16; - $408 = HEAP32[$0>>2]|0; - $409 = (($408) + 72|0); - $410 = HEAP32[$409>>2]|0; - $411 = (($410) + ($407))|0; - HEAP32[$409>>2] = $411; - $412 = HEAP32[$isView>>2]|0; - $413 = ($412|0)!=(0); - if ($413) { - $414 = HEAP32[$0>>2]|0; - $415 = HEAP32[$pTab>>2]|0; - $416 = HEAP32[$415>>2]|0; - _sqlite3AuthContextPush($414,$sContext,$416); - } - $417 = HEAP32[$isView>>2]|0; - $418 = ($417|0)!=(0); - if ($418) { - $419 = HEAP32[$0>>2]|0; - $420 = HEAP32[$pTab>>2]|0; - $421 = HEAP32[$3>>2]|0; - $422 = HEAP32[$iDataCur>>2]|0; - _sqlite3MaterializeView($419,$420,$421,$422); - } - $423 = HEAP32[$3>>2]|0; - $424 = (_sqlite3ResolveExprNames($sNC,$423)|0); - $425 = ($424|0)!=(0); - if ($425) { - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } - $426 = HEAP32[$pTab>>2]|0; - $427 = (($426) + 44|0); - $428 = HEAP8[$427>>0]|0; - $429 = $428&255; - $430 = $429 & 32; - $431 = ($430|0)==(0); - if ($431) { - $432 = HEAP32[$v>>2]|0; - $433 = HEAP32[$regRowSet>>2]|0; - $434 = HEAP32[$regOldRowid>>2]|0; - (_sqlite3VdbeAddOp3($432,28,0,$433,$434)|0); - $435 = HEAP32[$0>>2]|0; - $436 = HEAP32[$1>>2]|0; - $437 = HEAP32[$3>>2]|0; - $438 = HEAP32[$iIdxCur>>2]|0; - $439 = (_sqlite3WhereBegin($435,$436,$437,0,0,4,$438)|0); - HEAP32[$pWInfo>>2] = $439; - $440 = HEAP32[$pWInfo>>2]|0; - $441 = ($440|0)==(0|0); - if ($441) { - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } - $442 = HEAP32[$pWInfo>>2]|0; - $443 = (_sqlite3WhereOkOnePass($442,$aiCurOnePass)|0); - HEAP32[$okOnePass>>2] = $443; - $444 = HEAP32[$v>>2]|0; - $445 = HEAP32[$iDataCur>>2]|0; - $446 = HEAP32[$regOldRowid>>2]|0; - (_sqlite3VdbeAddOp2($444,100,$445,$446)|0); - $447 = HEAP32[$okOnePass>>2]|0; - $448 = ($447|0)!=(0); - if (!($448)) { - $449 = HEAP32[$v>>2]|0; - $450 = HEAP32[$regRowSet>>2]|0; - $451 = HEAP32[$regOldRowid>>2]|0; - (_sqlite3VdbeAddOp2($449,125,$450,$451)|0); - } - $452 = HEAP32[$pWInfo>>2]|0; - _sqlite3WhereEnd($452); - } else { - $453 = HEAP32[$pPk>>2]|0; - $454 = (($453) + 50|0); - $455 = HEAP16[$454>>1]|0; - HEAP16[$nPk>>1] = $455; - $456 = HEAP32[$0>>2]|0; - $457 = (($456) + 72|0); - $458 = HEAP32[$457>>2]|0; - $459 = (($458) + 1)|0; - HEAP32[$iPk>>2] = $459; - $460 = HEAP16[$nPk>>1]|0; - $461 = $460 << 16 >> 16; - $462 = HEAP32[$0>>2]|0; - $463 = (($462) + 72|0); - $464 = HEAP32[$463>>2]|0; - $465 = (($464) + ($461))|0; - HEAP32[$463>>2] = $465; - $466 = HEAP32[$0>>2]|0; - $467 = (($466) + 72|0); - $468 = HEAP32[$467>>2]|0; - $469 = (($468) + 1)|0; - HEAP32[$467>>2] = $469; - HEAP32[$regKey>>2] = $469; - $470 = HEAP32[$0>>2]|0; - $471 = (($470) + 68|0); - $472 = HEAP32[$471>>2]|0; - $473 = (($472) + 1)|0; - HEAP32[$471>>2] = $473; - HEAP32[$iEph>>2] = $472; - $474 = HEAP32[$v>>2]|0; - $475 = HEAP32[$iPk>>2]|0; - (_sqlite3VdbeAddOp2($474,28,0,$475)|0); - $476 = HEAP32[$v>>2]|0; - $477 = HEAP32[$iEph>>2]|0; - $478 = HEAP16[$nPk>>1]|0; - $479 = $478 << 16 >> 16; - $480 = (_sqlite3VdbeAddOp2($476,55,$477,$479)|0); - HEAP32[$addrOpen>>2] = $480; - $481 = HEAP32[$0>>2]|0; - $482 = HEAP32[$pPk>>2]|0; - _sqlite3VdbeSetP4KeyInfo($481,$482); - $483 = HEAP32[$0>>2]|0; - $484 = HEAP32[$1>>2]|0; - $485 = HEAP32[$3>>2]|0; - $486 = HEAP32[$iIdxCur>>2]|0; - $487 = (_sqlite3WhereBegin($483,$484,$485,0,0,4,$486)|0); - HEAP32[$pWInfo>>2] = $487; - $488 = HEAP32[$pWInfo>>2]|0; - $489 = ($488|0)==(0|0); - if ($489) { - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } - $490 = HEAP32[$pWInfo>>2]|0; - $491 = (_sqlite3WhereOkOnePass($490,$aiCurOnePass)|0); - HEAP32[$okOnePass>>2] = $491; - HEAP32[$i>>2] = 0; - while(1) { - $492 = HEAP32[$i>>2]|0; - $493 = HEAP16[$nPk>>1]|0; - $494 = $493 << 16 >> 16; - $495 = ($492|0)<($494|0); - if (!($495)) { - break; - } - $496 = HEAP32[$v>>2]|0; - $497 = HEAP32[$pTab>>2]|0; - $498 = HEAP32[$iDataCur>>2]|0; - $499 = HEAP32[$i>>2]|0; - $500 = HEAP32[$pPk>>2]|0; - $501 = (($500) + 4|0); - $502 = HEAP32[$501>>2]|0; - $503 = (($502) + ($499<<1)|0); - $504 = HEAP16[$503>>1]|0; - $505 = $504 << 16 >> 16; - $506 = HEAP32[$iPk>>2]|0; - $507 = HEAP32[$i>>2]|0; - $508 = (($506) + ($507))|0; - _sqlite3ExprCodeGetColumnOfTable($496,$497,$498,$505,$508); - $509 = HEAP32[$i>>2]|0; - $510 = (($509) + 1)|0; - HEAP32[$i>>2] = $510; - } - $511 = HEAP32[$okOnePass>>2]|0; - $512 = ($511|0)!=(0); - $513 = HEAP32[$v>>2]|0; - if ($512) { - $514 = HEAP32[$addrOpen>>2]|0; - _sqlite3VdbeChangeToNoop($513,$514); - $515 = HEAP16[$nPk>>1]|0; - $516 = $515 << 16 >> 16; - HEAP32[$nKey>>2] = $516; - $517 = HEAP32[$iPk>>2]|0; - HEAP32[$regKey>>2] = $517; - } else { - $518 = HEAP32[$iPk>>2]|0; - $519 = HEAP16[$nPk>>1]|0; - $520 = $519 << 16 >> 16; - $521 = HEAP32[$regKey>>2]|0; - $522 = HEAP32[$v>>2]|0; - $523 = HEAP32[$pPk>>2]|0; - $524 = (_sqlite3IndexAffinityStr($522,$523)|0); - $525 = HEAP16[$nPk>>1]|0; - $526 = $525 << 16 >> 16; - (_sqlite3VdbeAddOp4($513,48,$518,$520,$521,$524,$526)|0); - $527 = HEAP32[$v>>2]|0; - $528 = HEAP32[$iEph>>2]|0; - $529 = HEAP32[$regKey>>2]|0; - (_sqlite3VdbeAddOp2($527,107,$528,$529)|0); - } - $530 = HEAP32[$pWInfo>>2]|0; - _sqlite3WhereEnd($530); - } - $531 = HEAP32[$db>>2]|0; - $532 = (($531) + 24|0); - $533 = HEAP32[$532>>2]|0; - $534 = $533 & 128; - $535 = ($534|0)!=(0); - if ($535) { - $536 = HEAP32[$0>>2]|0; - $537 = (($536) + 412|0); - $538 = HEAP32[$537>>2]|0; - $539 = ($538|0)!=(0|0); - if (!($539)) { - $540 = HEAP32[$0>>2]|0; - $541 = (($540) + 72|0); - $542 = HEAP32[$541>>2]|0; - $543 = (($542) + 1)|0; - HEAP32[$541>>2] = $543; - HEAP32[$regRowCount>>2] = $543; - $544 = HEAP32[$v>>2]|0; - $545 = HEAP32[$regRowCount>>2]|0; - (_sqlite3VdbeAddOp2($544,25,0,$545)|0); - } - } - $546 = HEAP32[$v>>2]|0; - $547 = (_sqlite3VdbeMakeLabel($546)|0); - HEAP32[$labelBreak>>2] = $547; - $548 = HEAP32[$isView>>2]|0; - $549 = ($548|0)!=(0); - if (!($549)) { - $550 = HEAP32[$4>>2]|0; - $551 = ($550|0)==(5); - L143: do { - if ($551) { - $552 = HEAP32[$aToOpen>>2]|0; - $553 = HEAP32[$nIdx>>2]|0; - $554 = (($553) + 1)|0; - _memset(($552|0),1,($554|0))|0; - } else { - $555 = HEAP32[$pTab>>2]|0; - $556 = (($555) + 8|0); - $557 = HEAP32[$556>>2]|0; - HEAP32[$pIdx>>2] = $557; - while(1) { - $558 = HEAP32[$pIdx>>2]|0; - $559 = ($558|0)!=(0|0); - if (!($559)) { - break L143; - } - $560 = HEAP32[$pIdx>>2]|0; - $561 = (($560) + 54|0); - $562 = HEAP8[$561>>0]|0; - $563 = $562&255; - $564 = ($563|0)==(5); - if ($564) { - break; - } - $568 = HEAP32[$pIdx>>2]|0; - $569 = (($568) + 20|0); - $570 = HEAP32[$569>>2]|0; - HEAP32[$pIdx>>2] = $570; - } - $565 = HEAP32[$aToOpen>>2]|0; - $566 = HEAP32[$nIdx>>2]|0; - $567 = (($566) + 1)|0; - _memset(($565|0),1,($567|0))|0; - } - } while(0); - $571 = HEAP32[$okOnePass>>2]|0; - $572 = ($571|0)!=(0); - do { - if ($572) { - $573 = HEAP32[$aiCurOnePass>>2]|0; - $574 = ($573|0)>=(0); - if ($574) { - $575 = HEAP32[$aiCurOnePass>>2]|0; - $576 = HEAP32[$iBaseCur>>2]|0; - $577 = (($575) - ($576))|0; - $578 = HEAP32[$aToOpen>>2]|0; - $579 = (($578) + ($577)|0); - HEAP8[$579>>0] = 0; - } - $580 = (($aiCurOnePass) + 4|0); - $581 = HEAP32[$580>>2]|0; - $582 = ($581|0)>=(0); - if (!($582)) { - break; - } - $583 = (($aiCurOnePass) + 4|0); - $584 = HEAP32[$583>>2]|0; - $585 = HEAP32[$iBaseCur>>2]|0; - $586 = (($584) - ($585))|0; - $587 = HEAP32[$aToOpen>>2]|0; - $588 = (($587) + ($586)|0); - HEAP8[$588>>0] = 0; - } - } while(0); - $589 = HEAP32[$0>>2]|0; - $590 = HEAP32[$pTab>>2]|0; - $591 = HEAP32[$iBaseCur>>2]|0; - $592 = HEAP32[$aToOpen>>2]|0; - (_sqlite3OpenTableAndIndices($589,$590,53,$591,$592,0,0)|0); - } - $593 = HEAP32[$okOnePass>>2]|0; - $594 = ($593|0)!=(0); - do { - if ($594) { - $595 = HEAP32[$iDataCur>>2]|0; - $596 = HEAP32[$iBaseCur>>2]|0; - $597 = (($595) - ($596))|0; - $598 = HEAP32[$aToOpen>>2]|0; - $599 = (($598) + ($597)|0); - $600 = HEAP8[$599>>0]|0; - $601 = ($600<<24>>24)!=(0); - if ($601) { - $602 = HEAP32[$v>>2]|0; - $603 = HEAP32[$iDataCur>>2]|0; - $604 = HEAP32[$labelBreak>>2]|0; - $605 = HEAP32[$regKey>>2]|0; - $606 = HEAP32[$nKey>>2]|0; - (_sqlite3VdbeAddOp4Int($602,65,$603,$604,$605,$606)|0); - } - $607 = HEAP32[$labelBreak>>2]|0; - HEAP32[$labelContinue>>2] = $607; - $608 = HEAP32[$v>>2]|0; - $609 = HEAP32[$pPk>>2]|0; - $610 = ($609|0)!=(0|0); - $611 = HEAP32[$regKey>>2]|0; - $612 = HEAP32[$regOldRowid>>2]|0; - $613 = $610 ? $611 : $612; - $614 = HEAP32[$labelBreak>>2]|0; - (_sqlite3VdbeAddOp2($608,76,$613,$614)|0); - } else { - $615 = HEAP32[$pPk>>2]|0; - $616 = ($615|0)!=(0|0); - $617 = HEAP32[$v>>2]|0; - if ($616) { - $618 = (_sqlite3VdbeMakeLabel($617)|0); - HEAP32[$labelContinue>>2] = $618; - $619 = HEAP32[$v>>2]|0; - $620 = HEAP32[$iEph>>2]|0; - $621 = HEAP32[$labelBreak>>2]|0; - (_sqlite3VdbeAddOp2($619,105,$620,$621)|0); - $622 = HEAP32[$v>>2]|0; - $623 = HEAP32[$iEph>>2]|0; - $624 = HEAP32[$regKey>>2]|0; - $625 = (_sqlite3VdbeAddOp2($622,98,$623,$624)|0); - HEAP32[$addrTop>>2] = $625; - $626 = HEAP32[$v>>2]|0; - $627 = HEAP32[$iDataCur>>2]|0; - $628 = HEAP32[$labelContinue>>2]|0; - $629 = HEAP32[$regKey>>2]|0; - (_sqlite3VdbeAddOp4Int($626,65,$627,$628,$629,0)|0); - break; - } else { - $630 = HEAP32[$regRowSet>>2]|0; - $631 = HEAP32[$labelBreak>>2]|0; - $632 = HEAP32[$regOldRowid>>2]|0; - $633 = (_sqlite3VdbeAddOp3($617,126,$630,$631,$632)|0); - HEAP32[$labelContinue>>2] = $633; - $634 = HEAP32[$v>>2]|0; - $635 = HEAP32[$iDataCur>>2]|0; - $636 = HEAP32[$labelContinue>>2]|0; - $637 = HEAP32[$regOldRowid>>2]|0; - (_sqlite3VdbeAddOp3($634,67,$635,$636,$637)|0); - break; - } - } - } while(0); - $638 = HEAP8[$chngRowid>>0]|0; - $639 = ($638<<24>>24)!=(0); - if ($639) { - $640 = HEAP32[$0>>2]|0; - $641 = HEAP32[$pRowidExpr>>2]|0; - $642 = HEAP32[$regNewRowid>>2]|0; - _sqlite3ExprCode($640,$641,$642); - $643 = HEAP32[$v>>2]|0; - $644 = HEAP32[$regNewRowid>>2]|0; - (_sqlite3VdbeAddOp1($643,38,$644)|0); - } - $645 = HEAP8[$chngPk>>0]|0; - $646 = $645&255; - $647 = ($646|0)!=(0); - do { - if ($647) { - label = 117; - } else { - $648 = HEAP32[$hasFK>>2]|0; - $649 = ($648|0)!=(0); - if ($649) { - label = 117; - break; - } - $650 = HEAP32[$pTrigger>>2]|0; - $651 = ($650|0)!=(0|0); - if ($651) { - label = 117; - } - } - } while(0); - do { - if ((label|0) == 117) { - $652 = HEAP32[$hasFK>>2]|0; - $653 = ($652|0)!=(0); - if ($653) { - $654 = HEAP32[$0>>2]|0; - $655 = HEAP32[$pTab>>2]|0; - $656 = (_sqlite3FkOldmask($654,$655)|0); - $657 = $656; - } else { - $657 = 0; - } - HEAP32[$oldmask>>2] = $657; - $658 = HEAP32[$0>>2]|0; - $659 = HEAP32[$pTrigger>>2]|0; - $660 = HEAP32[$2>>2]|0; - $661 = HEAP32[$pTab>>2]|0; - $662 = HEAP32[$4>>2]|0; - $663 = (_sqlite3TriggerColmask($658,$659,$660,0,3,$661,$662)|0); - $664 = HEAP32[$oldmask>>2]|0; - $665 = $664 | $663; - HEAP32[$oldmask>>2] = $665; - HEAP32[$i>>2] = 0; - while(1) { - $666 = HEAP32[$i>>2]|0; - $667 = HEAP32[$pTab>>2]|0; - $668 = (($667) + 38|0); - $669 = HEAP16[$668>>1]|0; - $670 = $669 << 16 >> 16; - $671 = ($666|0)<($670|0); - if (!($671)) { - break; - } - $672 = HEAP32[$oldmask>>2]|0; - $673 = ($672|0)==(-1); - do { - if ($673) { - label = 125; - } else { - $674 = HEAP32[$i>>2]|0; - $675 = ($674|0)<(32); - if ($675) { - $676 = HEAP32[$oldmask>>2]|0; - $677 = HEAP32[$i>>2]|0; - $678 = 1 << $677; - $679 = $676 & $678; - $680 = ($679|0)!=(0); - if ($680) { - label = 125; - break; - } - } - $681 = HEAP32[$i>>2]|0; - $682 = HEAP32[$pTab>>2]|0; - $683 = (($682) + 4|0); - $684 = HEAP32[$683>>2]|0; - $685 = (($684) + (($681*24)|0)|0); - $686 = (($685) + 23|0); - $687 = HEAP8[$686>>0]|0; - $688 = $687&255; - $689 = $688 & 1; - $690 = ($689|0)!=(0); - if ($690) { - label = 125; - break; - } - $698 = HEAP32[$v>>2]|0; - $699 = HEAP32[$regOld>>2]|0; - $700 = HEAP32[$i>>2]|0; - $701 = (($699) + ($700))|0; - (_sqlite3VdbeAddOp2($698,28,0,$701)|0); - } - } while(0); - if ((label|0) == 125) { - label = 0; - $691 = HEAP32[$v>>2]|0; - $692 = HEAP32[$pTab>>2]|0; - $693 = HEAP32[$iDataCur>>2]|0; - $694 = HEAP32[$i>>2]|0; - $695 = HEAP32[$regOld>>2]|0; - $696 = HEAP32[$i>>2]|0; - $697 = (($695) + ($696))|0; - _sqlite3ExprCodeGetColumnOfTable($691,$692,$693,$694,$697); - } - $702 = HEAP32[$i>>2]|0; - $703 = (($702) + 1)|0; - HEAP32[$i>>2] = $703; - } - $704 = HEAP8[$chngRowid>>0]|0; - $705 = $704&255; - $706 = ($705|0)==(0); - if (!($706)) { - break; - } - $707 = HEAP32[$pPk>>2]|0; - $708 = ($707|0)==(0|0); - if (!($708)) { - break; - } - $709 = HEAP32[$v>>2]|0; - $710 = HEAP32[$regOldRowid>>2]|0; - $711 = HEAP32[$regNewRowid>>2]|0; - (_sqlite3VdbeAddOp2($709,33,$710,$711)|0); - } - } while(0); - $712 = HEAP32[$0>>2]|0; - $713 = HEAP32[$pTrigger>>2]|0; - $714 = HEAP32[$2>>2]|0; - $715 = HEAP32[$pTab>>2]|0; - $716 = HEAP32[$4>>2]|0; - $717 = (_sqlite3TriggerColmask($712,$713,$714,1,1,$715,$716)|0); - HEAP32[$newmask>>2] = $717; - HEAP32[$i>>2] = 0; - while(1) { - $718 = HEAP32[$i>>2]|0; - $719 = HEAP32[$pTab>>2]|0; - $720 = (($719) + 38|0); - $721 = HEAP16[$720>>1]|0; - $722 = $721 << 16 >> 16; - $723 = ($718|0)<($722|0); - if (!($723)) { - break; - } - $724 = HEAP32[$i>>2]|0; - $725 = HEAP32[$pTab>>2]|0; - $726 = (($725) + 36|0); - $727 = HEAP16[$726>>1]|0; - $728 = $727 << 16 >> 16; - $729 = ($724|0)==($728|0); - L200: do { - if ($729) { - $730 = HEAP32[$v>>2]|0; - $731 = HEAP32[$regNew>>2]|0; - $732 = HEAP32[$i>>2]|0; - $733 = (($731) + ($732))|0; - (_sqlite3VdbeAddOp2($730,28,0,$733)|0); - } else { - $734 = HEAP32[$i>>2]|0; - $735 = HEAP32[$aXRef>>2]|0; - $736 = (($735) + ($734<<2)|0); - $737 = HEAP32[$736>>2]|0; - HEAP32[$j>>2] = $737; - $738 = HEAP32[$j>>2]|0; - $739 = ($738|0)>=(0); - if ($739) { - $740 = HEAP32[$0>>2]|0; - $741 = HEAP32[$j>>2]|0; - $742 = HEAP32[$2>>2]|0; - $743 = (($742) + 4|0); - $744 = HEAP32[$743>>2]|0; - $745 = (($744) + (($741*20)|0)|0); - $746 = HEAP32[$745>>2]|0; - $747 = HEAP32[$regNew>>2]|0; - $748 = HEAP32[$i>>2]|0; - $749 = (($747) + ($748))|0; - _sqlite3ExprCode($740,$746,$749); - break; - } - $750 = HEAP32[$tmask>>2]|0; - $751 = $750 & 1; - $752 = (0)==($751|0); - do { - if (!($752)) { - $753 = HEAP32[$i>>2]|0; - $754 = ($753|0)>(31); - if ($754) { - break; - } - $755 = HEAP32[$newmask>>2]|0; - $756 = HEAP32[$i>>2]|0; - $757 = 1 << $756; - $758 = $755 & $757; - $759 = ($758|0)!=(0); - if ($759) { - break; - } - $767 = HEAP32[$v>>2]|0; - $768 = HEAP32[$regNew>>2]|0; - $769 = HEAP32[$i>>2]|0; - $770 = (($768) + ($769))|0; - (_sqlite3VdbeAddOp2($767,28,0,$770)|0); - break L200; - } - } while(0); - $760 = HEAP32[$v>>2]|0; - $761 = HEAP32[$pTab>>2]|0; - $762 = HEAP32[$iDataCur>>2]|0; - $763 = HEAP32[$i>>2]|0; - $764 = HEAP32[$regNew>>2]|0; - $765 = HEAP32[$i>>2]|0; - $766 = (($764) + ($765))|0; - _sqlite3ExprCodeGetColumnOfTable($760,$761,$762,$763,$766); - } - } while(0); - $771 = HEAP32[$i>>2]|0; - $772 = (($771) + 1)|0; - HEAP32[$i>>2] = $772; - } - $773 = HEAP32[$tmask>>2]|0; - $774 = $773 & 1; - $775 = ($774|0)!=(0); - L213: do { - if ($775) { - $776 = HEAP32[$v>>2]|0; - $777 = HEAP32[$pTab>>2]|0; - $778 = HEAP32[$regNew>>2]|0; - _sqlite3TableAffinity($776,$777,$778); - $779 = HEAP32[$0>>2]|0; - $780 = HEAP32[$pTrigger>>2]|0; - $781 = HEAP32[$2>>2]|0; - $782 = HEAP32[$pTab>>2]|0; - $783 = HEAP32[$regOldRowid>>2]|0; - $784 = HEAP32[$4>>2]|0; - $785 = HEAP32[$labelContinue>>2]|0; - _sqlite3CodeRowTrigger($779,$780,110,$781,1,$782,$783,$784,$785); - $786 = HEAP32[$pPk>>2]|0; - $787 = ($786|0)!=(0|0); - $788 = HEAP32[$v>>2]|0; - $789 = HEAP32[$iDataCur>>2]|0; - $790 = HEAP32[$labelContinue>>2]|0; - if ($787) { - $791 = HEAP32[$regKey>>2]|0; - $792 = HEAP32[$nKey>>2]|0; - (_sqlite3VdbeAddOp4Int($788,65,$789,$790,$791,$792)|0); - } else { - $793 = HEAP32[$regOldRowid>>2]|0; - (_sqlite3VdbeAddOp3($788,67,$789,$790,$793)|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $794 = HEAP32[$i>>2]|0; - $795 = HEAP32[$pTab>>2]|0; - $796 = (($795) + 38|0); - $797 = HEAP16[$796>>1]|0; - $798 = $797 << 16 >> 16; - $799 = ($794|0)<($798|0); - if (!($799)) { - break L213; - } - $800 = HEAP32[$i>>2]|0; - $801 = HEAP32[$aXRef>>2]|0; - $802 = (($801) + ($800<<2)|0); - $803 = HEAP32[$802>>2]|0; - $804 = ($803|0)<(0); - do { - if ($804) { - $805 = HEAP32[$i>>2]|0; - $806 = HEAP32[$pTab>>2]|0; - $807 = (($806) + 36|0); - $808 = HEAP16[$807>>1]|0; - $809 = $808 << 16 >> 16; - $810 = ($805|0)!=($809|0); - if (!($810)) { - break; - } - $811 = HEAP32[$v>>2]|0; - $812 = HEAP32[$pTab>>2]|0; - $813 = HEAP32[$iDataCur>>2]|0; - $814 = HEAP32[$i>>2]|0; - $815 = HEAP32[$regNew>>2]|0; - $816 = HEAP32[$i>>2]|0; - $817 = (($815) + ($816))|0; - _sqlite3ExprCodeGetColumnOfTable($811,$812,$813,$814,$817); - } - } while(0); - $818 = HEAP32[$i>>2]|0; - $819 = (($818) + 1)|0; - HEAP32[$i>>2] = $819; - } - } - } while(0); - $820 = HEAP32[$isView>>2]|0; - $821 = ($820|0)!=(0); - do { - if (!($821)) { - HEAP32[$j1>>2] = 0; - HEAP32[$bReplace>>2] = 0; - $822 = HEAP32[$0>>2]|0; - $823 = HEAP32[$pTab>>2]|0; - $824 = HEAP32[$aRegIdx>>2]|0; - $825 = HEAP32[$iDataCur>>2]|0; - $826 = HEAP32[$iIdxCur>>2]|0; - $827 = HEAP32[$regNewRowid>>2]|0; - $828 = HEAP32[$regOldRowid>>2]|0; - $829 = HEAP8[$chngKey>>0]|0; - $830 = HEAP32[$4>>2]|0; - $831 = $830&255; - $832 = HEAP32[$labelContinue>>2]|0; - _sqlite3GenerateConstraintChecks($822,$823,$824,$825,$826,$827,$828,$829,$831,$832,$bReplace); - $833 = HEAP32[$hasFK>>2]|0; - $834 = ($833|0)!=(0); - if ($834) { - $835 = HEAP32[$0>>2]|0; - $836 = HEAP32[$pTab>>2]|0; - $837 = HEAP32[$regOldRowid>>2]|0; - $838 = HEAP32[$aXRef>>2]|0; - $839 = HEAP8[$chngKey>>0]|0; - $840 = $839&255; - _sqlite3FkCheck($835,$836,$837,0,$838,$840); - } - $841 = HEAP32[$bReplace>>2]|0; - $842 = ($841|0)!=(0); - if ($842) { - label = 158; - } else { - $843 = HEAP8[$chngKey>>0]|0; - $844 = $843&255; - $845 = ($844|0)!=(0); - if ($845) { - label = 158; - } - } - do { - if ((label|0) == 158) { - $846 = HEAP32[$pPk>>2]|0; - $847 = ($846|0)!=(0|0); - $848 = HEAP32[$v>>2]|0; - $849 = HEAP32[$iDataCur>>2]|0; - if ($847) { - $850 = HEAP32[$regKey>>2]|0; - $851 = HEAP32[$nKey>>2]|0; - $852 = (_sqlite3VdbeAddOp4Int($848,65,$849,0,$850,$851)|0); - HEAP32[$j1>>2] = $852; - break; - } else { - $853 = HEAP32[$regOldRowid>>2]|0; - $854 = (_sqlite3VdbeAddOp3($848,67,$849,0,$853)|0); - HEAP32[$j1>>2] = $854; - break; - } - } - } while(0); - $855 = HEAP32[$0>>2]|0; - $856 = HEAP32[$pTab>>2]|0; - $857 = HEAP32[$iDataCur>>2]|0; - $858 = HEAP32[$iIdxCur>>2]|0; - $859 = HEAP32[$aRegIdx>>2]|0; - _sqlite3GenerateRowIndexDelete($855,$856,$857,$858,$859); - $860 = HEAP32[$hasFK>>2]|0; - $861 = ($860|0)!=(0); - do { - if ($861) { - label = 164; - } else { - $862 = HEAP8[$chngKey>>0]|0; - $863 = $862&255; - $864 = ($863|0)!=(0); - if ($864) { - label = 164; - break; - } - $865 = HEAP32[$pPk>>2]|0; - $866 = ($865|0)!=(0|0); - if ($866) { - label = 164; - } - } - } while(0); - if ((label|0) == 164) { - $867 = HEAP32[$v>>2]|0; - $868 = HEAP32[$iDataCur>>2]|0; - (_sqlite3VdbeAddOp2($867,74,$868,0)|0); - } - $869 = HEAP32[$bReplace>>2]|0; - $870 = ($869|0)!=(0); - if ($870) { - label = 167; - } else { - $871 = HEAP8[$chngKey>>0]|0; - $872 = $871&255; - $873 = ($872|0)!=(0); - if ($873) { - label = 167; - } - } - if ((label|0) == 167) { - $874 = HEAP32[$v>>2]|0; - $875 = HEAP32[$j1>>2]|0; - _sqlite3VdbeJumpHere($874,$875); - } - $876 = HEAP32[$hasFK>>2]|0; - $877 = ($876|0)!=(0); - if ($877) { - $878 = HEAP32[$0>>2]|0; - $879 = HEAP32[$pTab>>2]|0; - $880 = HEAP32[$regNewRowid>>2]|0; - $881 = HEAP32[$aXRef>>2]|0; - $882 = HEAP8[$chngKey>>0]|0; - $883 = $882&255; - _sqlite3FkCheck($878,$879,0,$880,$881,$883); - } - $884 = HEAP32[$0>>2]|0; - $885 = HEAP32[$pTab>>2]|0; - $886 = HEAP32[$iDataCur>>2]|0; - $887 = HEAP32[$iIdxCur>>2]|0; - $888 = HEAP32[$regNewRowid>>2]|0; - $889 = HEAP32[$aRegIdx>>2]|0; - _sqlite3CompleteInsertion($884,$885,$886,$887,$888,$889,1,0,0); - $890 = HEAP32[$hasFK>>2]|0; - $891 = ($890|0)!=(0); - if (!($891)) { - break; - } - $892 = HEAP32[$0>>2]|0; - $893 = HEAP32[$pTab>>2]|0; - $894 = HEAP32[$2>>2]|0; - $895 = HEAP32[$regOldRowid>>2]|0; - $896 = HEAP32[$aXRef>>2]|0; - $897 = HEAP8[$chngKey>>0]|0; - $898 = $897&255; - _sqlite3FkActions($892,$893,$894,$895,$896,$898); - } - } while(0); - $899 = HEAP32[$db>>2]|0; - $900 = (($899) + 24|0); - $901 = HEAP32[$900>>2]|0; - $902 = $901 & 128; - $903 = ($902|0)!=(0); - do { - if ($903) { - $904 = HEAP32[$0>>2]|0; - $905 = (($904) + 412|0); - $906 = HEAP32[$905>>2]|0; - $907 = ($906|0)!=(0|0); - if ($907) { - break; - } - $908 = HEAP32[$v>>2]|0; - $909 = HEAP32[$regRowCount>>2]|0; - (_sqlite3VdbeAddOp2($908,37,$909,1)|0); - } - } while(0); - $910 = HEAP32[$0>>2]|0; - $911 = HEAP32[$pTrigger>>2]|0; - $912 = HEAP32[$2>>2]|0; - $913 = HEAP32[$pTab>>2]|0; - $914 = HEAP32[$regOldRowid>>2]|0; - $915 = HEAP32[$4>>2]|0; - $916 = HEAP32[$labelContinue>>2]|0; - _sqlite3CodeRowTrigger($910,$911,110,$912,2,$913,$914,$915,$916); - $917 = HEAP32[$okOnePass>>2]|0; - $918 = ($917|0)!=(0); - do { - if (!($918)) { - $919 = HEAP32[$pPk>>2]|0; - $920 = ($919|0)!=(0|0); - $921 = HEAP32[$v>>2]|0; - $922 = HEAP32[$labelContinue>>2]|0; - if ($920) { - _sqlite3VdbeResolveLabel($921,$922); - $923 = HEAP32[$v>>2]|0; - $924 = HEAP32[$iEph>>2]|0; - $925 = HEAP32[$addrTop>>2]|0; - (_sqlite3VdbeAddOp2($923,9,$924,$925)|0); - break; - } else { - (_sqlite3VdbeAddOp2($921,16,0,$922)|0); - break; - } - } - } while(0); - $926 = HEAP32[$v>>2]|0; - $927 = HEAP32[$labelBreak>>2]|0; - _sqlite3VdbeResolveLabel($926,$927); - HEAP32[$i>>2] = 0; - $928 = HEAP32[$pTab>>2]|0; - $929 = (($928) + 8|0); - $930 = HEAP32[$929>>2]|0; - HEAP32[$pIdx>>2] = $930; - while(1) { - $931 = HEAP32[$pIdx>>2]|0; - $932 = ($931|0)!=(0|0); - if (!($932)) { - break; - } - $933 = HEAP32[$i>>2]|0; - $934 = (($933) + 1)|0; - $935 = HEAP32[$aToOpen>>2]|0; - $936 = (($935) + ($934)|0); - $937 = HEAP8[$936>>0]|0; - $938 = ($937<<24>>24)!=(0); - if ($938) { - $939 = HEAP32[$v>>2]|0; - $940 = HEAP32[$iIdxCur>>2]|0; - $941 = HEAP32[$i>>2]|0; - $942 = (($940) + ($941))|0; - (_sqlite3VdbeAddOp2($939,58,$942,0)|0); - } - $943 = HEAP32[$pIdx>>2]|0; - $944 = (($943) + 20|0); - $945 = HEAP32[$944>>2]|0; - HEAP32[$pIdx>>2] = $945; - $946 = HEAP32[$i>>2]|0; - $947 = (($946) + 1)|0; - HEAP32[$i>>2] = $947; - } - $948 = HEAP32[$iDataCur>>2]|0; - $949 = HEAP32[$iIdxCur>>2]|0; - $950 = ($948|0)<($949|0); - if ($950) { - $951 = HEAP32[$v>>2]|0; - $952 = HEAP32[$iDataCur>>2]|0; - (_sqlite3VdbeAddOp2($951,58,$952,0)|0); - } - $953 = HEAP32[$0>>2]|0; - $954 = (($953) + 18|0); - $955 = HEAP8[$954>>0]|0; - $956 = $955&255; - $957 = ($956|0)==(0); - do { - if ($957) { - $958 = HEAP32[$0>>2]|0; - $959 = (($958) + 412|0); - $960 = HEAP32[$959>>2]|0; - $961 = ($960|0)==(0|0); - if (!($961)) { - break; - } - $962 = HEAP32[$0>>2]|0; - _sqlite3AutoincrementEnd($962); - } - } while(0); - $963 = HEAP32[$db>>2]|0; - $964 = (($963) + 24|0); - $965 = HEAP32[$964>>2]|0; - $966 = $965 & 128; - $967 = ($966|0)!=(0); - if (!($967)) { - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } - $968 = HEAP32[$0>>2]|0; - $969 = (($968) + 412|0); - $970 = HEAP32[$969>>2]|0; - $971 = ($970|0)!=(0|0); - if ($971) { - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } - $972 = HEAP32[$0>>2]|0; - $973 = (($972) + 18|0); - $974 = HEAP8[$973>>0]|0; - $975 = ($974<<24>>24)!=(0); - if ($975) { - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } - $976 = HEAP32[$v>>2]|0; - $977 = HEAP32[$regRowCount>>2]|0; - (_sqlite3VdbeAddOp2($976,35,$977,1)|0); - $978 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($978,1); - $979 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($979,0,0,24400,0)|0); - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } - else if ((label|0) == 193) { - _sqlite3AuthContextPop($sContext); - $980 = HEAP32[$db>>2]|0; - $981 = HEAP32[$aXRef>>2]|0; - _sqlite3DbFree($980,$981); - $982 = HEAP32[$db>>2]|0; - $983 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($982,$983); - $984 = HEAP32[$db>>2]|0; - $985 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($984,$985); - $986 = HEAP32[$db>>2]|0; - $987 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($986,$987); - STACKTOP = sp;return; - } -} -function _sqlite3Insert($pParse,$pTabList,$pSelect,$pColumn,$onError) { - $pParse = $pParse|0; - $pTabList = $pTabList|0; - $pSelect = $pSelect|0; - $pColumn = $pColumn|0; - $onError = $onError|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; - var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; - var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; - var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; - var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; - var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; - var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; - var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; - var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; - var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; - var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; - var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; - var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0; - var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0; - var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0; - var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0; - var $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0; - var $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0; - var $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0; - var $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0; - var $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0; - var $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0; - var $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0; - var $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0; - var $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0; - var $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0; - var $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aRegIdx = 0, $addrCont = 0, $addrInsTop = 0, $addrL = 0, $addrTop = 0, $appendFlag = 0, $bIdListInOrder = 0; - var $db = 0, $dest = 0, $endOfLoop = 0, $i = 0, $iDataCur = 0, $iDb = 0, $iIdxCur = 0, $iRegStore = 0, $idx = 0, $ipkColumn = 0, $isReplace = 0, $isView = 0, $j = 0, $j1 = 0, $j11 = 0, $nColumn = 0, $nHidden = 0, $nIdx = 0, $pDb = 0, $pIdx = 0; - var $pList = 0, $pOp = 0, $pTab = 0, $pTrigger = 0, $pVTab = 0, $rc = 0, $regAutoinc = 0, $regCols = 0, $regData = 0, $regFromSelect = 0, $regIns = 0, $regRec = 0, $regRowCount = 0, $regRowid = 0, $regTempRowid = 0, $regYield = 0, $sNC = 0, $srcTab = 0, $tmask = 0, $useTempTable = 0; - var $v = 0, $vararg_buffer9 = 0, $vararg_ptr1 = 0, $vararg_ptr12 = 0, $vararg_ptr2 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $withoutRowid = 0, $zDb = 0, $zTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 272|0; - $vararg_buffer9 = sp; - $0 = sp + 264|0; - $1 = sp + 260|0; - $2 = sp + 256|0; - $3 = sp + 252|0; - $4 = sp + 248|0; - $db = sp + 244|0; - $pTab = sp + 240|0; - $zTab = sp + 236|0; - $zDb = sp + 232|0; - $i = sp + 228|0; - $j = sp + 224|0; - $idx = sp + 220|0; - $v = sp + 216|0; - $pIdx = sp + 212|0; - $nColumn = sp + 208|0; - $nHidden = sp + 204|0; - $iDataCur = sp + 200|0; - $iIdxCur = sp + 196|0; - $ipkColumn = sp + 192|0; - $endOfLoop = sp + 188|0; - $srcTab = sp + 184|0; - $addrInsTop = sp + 180|0; - $addrCont = sp + 176|0; - $dest = sp + 156|0; - $iDb = sp + 152|0; - $pDb = sp + 148|0; - $useTempTable = sp + 271|0; - $appendFlag = sp + 270|0; - $withoutRowid = sp + 269|0; - $bIdListInOrder = sp + 268|0; - $pList = sp + 144|0; - $regFromSelect = sp + 140|0; - $regAutoinc = sp + 136|0; - $regRowCount = sp + 132|0; - $regIns = sp + 128|0; - $regRowid = sp + 124|0; - $regData = sp + 120|0; - $aRegIdx = sp + 116|0; - $isView = sp + 112|0; - $pTrigger = sp + 108|0; - $tmask = sp + 104|0; - $regYield = sp + 100|0; - $addrTop = sp + 96|0; - $rc = sp + 92|0; - $regRec = sp + 88|0; - $regTempRowid = sp + 84|0; - $addrL = sp + 80|0; - $sNC = sp + 48|0; - $nIdx = sp + 44|0; - $regCols = sp + 40|0; - $j1 = sp + 36|0; - $pOp = sp + 32|0; - $j11 = sp + 28|0; - $iRegStore = sp + 24|0; - $pVTab = sp + 20|0; - $isReplace = sp + 16|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTabList; - HEAP32[$2>>2] = $pSelect; - HEAP32[$3>>2] = $pColumn; - HEAP32[$4>>2] = $onError; - HEAP32[$nHidden>>2] = 0; - HEAP32[$iDataCur>>2] = 0; - HEAP32[$iIdxCur>>2] = 0; - HEAP32[$ipkColumn>>2] = -1; - HEAP32[$srcTab>>2] = 0; - HEAP32[$addrInsTop>>2] = 0; - HEAP32[$addrCont>>2] = 0; - HEAP8[$useTempTable>>0] = 0; - HEAP8[$appendFlag>>0] = 0; - HEAP8[$bIdListInOrder>>0] = 1; - HEAP32[$pList>>2] = 0; - HEAP32[$regFromSelect>>2] = 0; - HEAP32[$regAutoinc>>2] = 0; - HEAP32[$regRowCount>>2] = 0; - HEAP32[$aRegIdx>>2] = 0; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - ;HEAP32[$dest+0>>2]=0|0;HEAP32[$dest+4>>2]=0|0;HEAP32[$dest+8>>2]=0|0;HEAP32[$dest+12>>2]=0|0;HEAP32[$dest+16>>2]=0|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 64|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)!=(0); - L1: do { - if (!($10)) { - $11 = HEAP32[$db>>2]|0; - $12 = (($11) + 64|0); - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - $15 = ($14|0)!=(0); - if (!($15)) { - $16 = HEAP32[$2>>2]|0; - $17 = ($16|0)!=(0|0); - if ($17) { - $18 = HEAP32[$2>>2]|0; - $19 = (($18) + 6|0); - $20 = HEAP16[$19>>1]|0; - $21 = $20&65535; - $22 = $21 & 128; - $23 = ($22|0)!=(0); - if ($23) { - $24 = HEAP32[$2>>2]|0; - $25 = (($24) + 52|0); - $26 = HEAP32[$25>>2]|0; - $27 = ($26|0)==(0|0); - if ($27) { - $28 = HEAP32[$2>>2]|0; - $29 = HEAP32[$28>>2]|0; - HEAP32[$pList>>2] = $29; - $30 = HEAP32[$2>>2]|0; - HEAP32[$30>>2] = 0; - $31 = HEAP32[$db>>2]|0; - $32 = HEAP32[$2>>2]|0; - _sqlite3SelectDelete($31,$32); - HEAP32[$2>>2] = 0; - } - } - } - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 8|0); - $35 = (($34) + 8|0); - $36 = HEAP32[$35>>2]|0; - HEAP32[$zTab>>2] = $36; - $37 = HEAP32[$zTab>>2]|0; - $38 = ($37|0)==(0|0); - if (!($38)) { - $39 = HEAP32[$0>>2]|0; - $40 = HEAP32[$1>>2]|0; - $41 = (_sqlite3SrcListLookup($39,$40)|0); - HEAP32[$pTab>>2] = $41; - $42 = HEAP32[$pTab>>2]|0; - $43 = ($42|0)==(0|0); - if (!($43)) { - $44 = HEAP32[$db>>2]|0; - $45 = HEAP32[$pTab>>2]|0; - $46 = (($45) + 68|0); - $47 = HEAP32[$46>>2]|0; - $48 = (_sqlite3SchemaToIndex($44,$47)|0); - HEAP32[$iDb>>2] = $48; - $49 = HEAP32[$iDb>>2]|0; - $50 = HEAP32[$db>>2]|0; - $51 = (($50) + 16|0); - $52 = HEAP32[$51>>2]|0; - $53 = (($52) + ($49<<4)|0); - HEAP32[$pDb>>2] = $53; - $54 = HEAP32[$pDb>>2]|0; - $55 = HEAP32[$54>>2]|0; - HEAP32[$zDb>>2] = $55; - $56 = HEAP32[$0>>2]|0; - $57 = HEAP32[$pTab>>2]|0; - $58 = HEAP32[$57>>2]|0; - $59 = HEAP32[$zDb>>2]|0; - $60 = (_sqlite3AuthCheck($56,18,$58,0,$59)|0); - $61 = ($60|0)!=(0); - if (!($61)) { - $62 = HEAP32[$pTab>>2]|0; - $63 = (($62) + 44|0); - $64 = HEAP8[$63>>0]|0; - $65 = $64&255; - $66 = $65 & 32; - $67 = ($66|0)==(0); - $68 = $67 ^ 1; - $69 = $68&1; - $70 = $69&255; - HEAP8[$withoutRowid>>0] = $70; - $71 = HEAP32[$0>>2]|0; - $72 = HEAP32[$pTab>>2]|0; - $73 = (_sqlite3TriggersExist($71,$72,108,0,$tmask)|0); - HEAP32[$pTrigger>>2] = $73; - $74 = HEAP32[$pTab>>2]|0; - $75 = (($74) + 12|0); - $76 = HEAP32[$75>>2]|0; - $77 = ($76|0)!=(0|0); - $78 = $77&1; - HEAP32[$isView>>2] = $78; - $79 = HEAP32[$0>>2]|0; - $80 = HEAP32[$pTab>>2]|0; - $81 = (_sqlite3ViewGetColumnNames($79,$80)|0); - $82 = ($81|0)!=(0); - if (!($82)) { - $83 = HEAP32[$0>>2]|0; - $84 = HEAP32[$pTab>>2]|0; - $85 = HEAP32[$tmask>>2]|0; - $86 = (_sqlite3IsReadOnly($83,$84,$85)|0); - $87 = ($86|0)!=(0); - if (!($87)) { - $88 = HEAP32[$0>>2]|0; - $89 = (_sqlite3GetVdbe($88)|0); - HEAP32[$v>>2] = $89; - $90 = HEAP32[$v>>2]|0; - $91 = ($90|0)==(0|0); - if (!($91)) { - $92 = HEAP32[$0>>2]|0; - $93 = (($92) + 18|0); - $94 = HEAP8[$93>>0]|0; - $95 = $94&255; - $96 = ($95|0)==(0); - if ($96) { - $97 = HEAP32[$v>>2]|0; - _sqlite3VdbeCountChanges($97); - } - $98 = HEAP32[$0>>2]|0; - $99 = HEAP32[$2>>2]|0; - $100 = ($99|0)!=(0|0); - if ($100) { - $104 = 1; - } else { - $101 = HEAP32[$pTrigger>>2]|0; - $102 = ($101|0)!=(0|0); - $104 = $102; - } - $103 = $104&1; - $105 = HEAP32[$iDb>>2]|0; - _sqlite3BeginWriteOperation($98,$103,$105); - $106 = HEAP32[$3>>2]|0; - $107 = ($106|0)==(0|0); - if ($107) { - $108 = HEAP32[$0>>2]|0; - $109 = HEAP32[$pTab>>2]|0; - $110 = HEAP32[$2>>2]|0; - $111 = HEAP32[$4>>2]|0; - $112 = HEAP32[$iDb>>2]|0; - $113 = (_xferOptimization($108,$109,$110,$111,$112)|0); - $114 = ($113|0)!=(0); - if (!($114)) { - label = 19; - } - } else { - label = 19; - } - L23: do { - if ((label|0) == 19) { - $115 = HEAP32[$0>>2]|0; - $116 = HEAP32[$iDb>>2]|0; - $117 = HEAP32[$pTab>>2]|0; - $118 = (_autoIncBegin($115,$116,$117)|0); - HEAP32[$regAutoinc>>2] = $118; - $119 = HEAP32[$0>>2]|0; - $120 = (($119) + 72|0); - $121 = HEAP32[$120>>2]|0; - $122 = (($121) + 1)|0; - HEAP32[$regIns>>2] = $122; - HEAP32[$regRowid>>2] = $122; - $123 = HEAP32[$pTab>>2]|0; - $124 = (($123) + 38|0); - $125 = HEAP16[$124>>1]|0; - $126 = $125 << 16 >> 16; - $127 = (($126) + 1)|0; - $128 = HEAP32[$0>>2]|0; - $129 = (($128) + 72|0); - $130 = HEAP32[$129>>2]|0; - $131 = (($130) + ($127))|0; - HEAP32[$129>>2] = $131; - $132 = HEAP32[$pTab>>2]|0; - $133 = (($132) + 44|0); - $134 = HEAP8[$133>>0]|0; - $135 = $134&255; - $136 = $135 & 16; - $137 = ($136|0)!=(0); - if ($137) { - $138 = HEAP32[$regRowid>>2]|0; - $139 = (($138) + 1)|0; - HEAP32[$regRowid>>2] = $139; - $140 = HEAP32[$0>>2]|0; - $141 = (($140) + 72|0); - $142 = HEAP32[$141>>2]|0; - $143 = (($142) + 1)|0; - HEAP32[$141>>2] = $143; - } - $144 = HEAP32[$regRowid>>2]|0; - $145 = (($144) + 1)|0; - HEAP32[$regData>>2] = $145; - $146 = HEAP32[$3>>2]|0; - $147 = ($146|0)!=(0|0); - L28: do { - if ($147) { - HEAP32[$i>>2] = 0; - while(1) { - $148 = HEAP32[$i>>2]|0; - $149 = HEAP32[$3>>2]|0; - $150 = (($149) + 4|0); - $151 = HEAP32[$150>>2]|0; - $152 = ($148|0)<($151|0); - if (!($152)) { - break; - } - $153 = HEAP32[$i>>2]|0; - $154 = HEAP32[$3>>2]|0; - $155 = HEAP32[$154>>2]|0; - $156 = (($155) + ($153<<3)|0); - $157 = (($156) + 4|0); - HEAP32[$157>>2] = -1; - $158 = HEAP32[$i>>2]|0; - $159 = (($158) + 1)|0; - HEAP32[$i>>2] = $159; - } - HEAP32[$i>>2] = 0; - while(1) { - $160 = HEAP32[$i>>2]|0; - $161 = HEAP32[$3>>2]|0; - $162 = (($161) + 4|0); - $163 = HEAP32[$162>>2]|0; - $164 = ($160|0)<($163|0); - if (!($164)) { - break L28; - } - HEAP32[$j>>2] = 0; - while(1) { - $165 = HEAP32[$j>>2]|0; - $166 = HEAP32[$pTab>>2]|0; - $167 = (($166) + 38|0); - $168 = HEAP16[$167>>1]|0; - $169 = $168 << 16 >> 16; - $170 = ($165|0)<($169|0); - if (!($170)) { - break; - } - $171 = HEAP32[$i>>2]|0; - $172 = HEAP32[$3>>2]|0; - $173 = HEAP32[$172>>2]|0; - $174 = (($173) + ($171<<3)|0); - $175 = HEAP32[$174>>2]|0; - $176 = HEAP32[$j>>2]|0; - $177 = HEAP32[$pTab>>2]|0; - $178 = (($177) + 4|0); - $179 = HEAP32[$178>>2]|0; - $180 = (($179) + (($176*24)|0)|0); - $181 = HEAP32[$180>>2]|0; - $182 = (_sqlite3_stricmp($175,$181)|0); - $183 = ($182|0)==(0); - $184 = HEAP32[$j>>2]|0; - if ($183) { - label = 30; - break; - } - $200 = (($184) + 1)|0; - HEAP32[$j>>2] = $200; - } - do { - if ((label|0) == 30) { - label = 0; - $185 = HEAP32[$i>>2]|0; - $186 = HEAP32[$3>>2]|0; - $187 = HEAP32[$186>>2]|0; - $188 = (($187) + ($185<<3)|0); - $189 = (($188) + 4|0); - HEAP32[$189>>2] = $184; - $190 = HEAP32[$i>>2]|0; - $191 = HEAP32[$j>>2]|0; - $192 = ($190|0)!=($191|0); - if ($192) { - HEAP8[$bIdListInOrder>>0] = 0; - } - $193 = HEAP32[$j>>2]|0; - $194 = HEAP32[$pTab>>2]|0; - $195 = (($194) + 36|0); - $196 = HEAP16[$195>>1]|0; - $197 = $196 << 16 >> 16; - $198 = ($193|0)==($197|0); - if (!($198)) { - break; - } - $199 = HEAP32[$i>>2]|0; - HEAP32[$ipkColumn>>2] = $199; - } - } while(0); - $201 = HEAP32[$j>>2]|0; - $202 = HEAP32[$pTab>>2]|0; - $203 = (($202) + 38|0); - $204 = HEAP16[$203>>1]|0; - $205 = $204 << 16 >> 16; - $206 = ($201|0)>=($205|0); - if ($206) { - $207 = HEAP32[$i>>2]|0; - $208 = HEAP32[$3>>2]|0; - $209 = HEAP32[$208>>2]|0; - $210 = (($209) + ($207<<3)|0); - $211 = HEAP32[$210>>2]|0; - $212 = (_sqlite3IsRowid($211)|0); - $213 = ($212|0)!=(0); - if (!($213)) { - break; - } - $214 = HEAP8[$withoutRowid>>0]|0; - $215 = ($214<<24>>24)!=(0); - if ($215) { - break; - } - $216 = HEAP32[$i>>2]|0; - HEAP32[$ipkColumn>>2] = $216; - HEAP8[$bIdListInOrder>>0] = 0; - } - $226 = HEAP32[$i>>2]|0; - $227 = (($226) + 1)|0; - HEAP32[$i>>2] = $227; - } - $217 = HEAP32[$0>>2]|0; - $218 = HEAP32[$1>>2]|0; - $219 = HEAP32[$i>>2]|0; - $220 = HEAP32[$3>>2]|0; - $221 = HEAP32[$220>>2]|0; - $222 = (($221) + ($219<<3)|0); - $223 = HEAP32[$222>>2]|0; - HEAP32[$vararg_buffer9>>2] = $218; - $vararg_ptr1 = (($vararg_buffer9) + 4|0); - HEAP32[$vararg_ptr1>>2] = 0; - $vararg_ptr2 = (($vararg_buffer9) + 8|0); - HEAP32[$vararg_ptr2>>2] = $223; - _sqlite3ErrorMsg($217,23224,$vararg_buffer9); - $224 = HEAP32[$0>>2]|0; - $225 = (($224) + 17|0); - HEAP8[$225>>0] = 1; - break L1; - } - } while(0); - $228 = HEAP32[$2>>2]|0; - $229 = ($228|0)!=(0|0); - L55: do { - if ($229) { - $230 = HEAP32[$0>>2]|0; - $231 = (($230) + 72|0); - $232 = HEAP32[$231>>2]|0; - $233 = (($232) + 1)|0; - HEAP32[$231>>2] = $233; - HEAP32[$regYield>>2] = $233; - $234 = HEAP32[$v>>2]|0; - $235 = (_sqlite3VdbeCurrentAddr($234)|0); - $236 = (($235) + 1)|0; - HEAP32[$addrTop>>2] = $236; - $237 = HEAP32[$v>>2]|0; - $238 = HEAP32[$regYield>>2]|0; - $239 = HEAP32[$addrTop>>2]|0; - (_sqlite3VdbeAddOp3($237,20,$238,0,$239)|0); - $240 = HEAP32[$regYield>>2]|0; - _sqlite3SelectDestInit($dest,13,$240); - $241 = HEAP8[$bIdListInOrder>>0]|0; - $242 = $241&255; - $243 = ($242|0)!=(0); - $244 = HEAP32[$regData>>2]|0; - $245 = $243 ? $244 : 0; - $246 = (($dest) + 8|0); - HEAP32[$246>>2] = $245; - $247 = HEAP32[$pTab>>2]|0; - $248 = (($247) + 38|0); - $249 = HEAP16[$248>>1]|0; - $250 = $249 << 16 >> 16; - $251 = (($dest) + 12|0); - HEAP32[$251>>2] = $250; - $252 = HEAP32[$0>>2]|0; - $253 = HEAP32[$2>>2]|0; - $254 = (_sqlite3Select($252,$253,$dest)|0); - HEAP32[$rc>>2] = $254; - $255 = (($dest) + 8|0); - $256 = HEAP32[$255>>2]|0; - HEAP32[$regFromSelect>>2] = $256; - $257 = HEAP32[$rc>>2]|0; - $258 = ($257|0)!=(0); - if ($258) { - break L1; - } - $259 = HEAP32[$db>>2]|0; - $260 = (($259) + 64|0); - $261 = HEAP8[$260>>0]|0; - $262 = $261&255; - $263 = ($262|0)!=(0); - if ($263) { - break L1; - } - $264 = HEAP32[$v>>2]|0; - $265 = HEAP32[$regYield>>2]|0; - (_sqlite3VdbeAddOp1($264,21,$265)|0); - $266 = HEAP32[$v>>2]|0; - $267 = HEAP32[$addrTop>>2]|0; - $268 = (($267) - 1)|0; - _sqlite3VdbeJumpHere($266,$268); - $269 = HEAP32[$2>>2]|0; - $270 = HEAP32[$269>>2]|0; - $271 = HEAP32[$270>>2]|0; - HEAP32[$nColumn>>2] = $271; - $272 = HEAP32[$pTrigger>>2]|0; - $273 = ($272|0)!=(0|0); - if ($273) { - label = 46; - } else { - $274 = HEAP32[$0>>2]|0; - $275 = HEAP32[$iDb>>2]|0; - $276 = HEAP32[$pTab>>2]|0; - $277 = (_readsTable($274,$275,$276)|0); - $278 = ($277|0)!=(0); - if ($278) { - label = 46; - } - } - if ((label|0) == 46) { - HEAP8[$useTempTable>>0] = 1; - } - $279 = HEAP8[$useTempTable>>0]|0; - $280 = ($279<<24>>24)!=(0); - if (!($280)) { - break; - } - $281 = HEAP32[$0>>2]|0; - $282 = (($281) + 68|0); - $283 = HEAP32[$282>>2]|0; - $284 = (($283) + 1)|0; - HEAP32[$282>>2] = $284; - HEAP32[$srcTab>>2] = $283; - $285 = HEAP32[$0>>2]|0; - $286 = (_sqlite3GetTempReg($285)|0); - HEAP32[$regRec>>2] = $286; - $287 = HEAP32[$0>>2]|0; - $288 = (_sqlite3GetTempReg($287)|0); - HEAP32[$regTempRowid>>2] = $288; - $289 = HEAP32[$v>>2]|0; - $290 = HEAP32[$srcTab>>2]|0; - $291 = HEAP32[$nColumn>>2]|0; - (_sqlite3VdbeAddOp2($289,55,$290,$291)|0); - $292 = HEAP32[$v>>2]|0; - $293 = (($dest) + 4|0); - $294 = HEAP32[$293>>2]|0; - $295 = (_sqlite3VdbeAddOp1($292,22,$294)|0); - HEAP32[$addrL>>2] = $295; - $296 = HEAP32[$v>>2]|0; - $297 = HEAP32[$regFromSelect>>2]|0; - $298 = HEAP32[$nColumn>>2]|0; - $299 = HEAP32[$regRec>>2]|0; - (_sqlite3VdbeAddOp3($296,48,$297,$298,$299)|0); - $300 = HEAP32[$v>>2]|0; - $301 = HEAP32[$srcTab>>2]|0; - $302 = HEAP32[$regTempRowid>>2]|0; - (_sqlite3VdbeAddOp2($300,69,$301,$302)|0); - $303 = HEAP32[$v>>2]|0; - $304 = HEAP32[$srcTab>>2]|0; - $305 = HEAP32[$regRec>>2]|0; - $306 = HEAP32[$regTempRowid>>2]|0; - (_sqlite3VdbeAddOp3($303,70,$304,$305,$306)|0); - $307 = HEAP32[$v>>2]|0; - $308 = HEAP32[$addrL>>2]|0; - (_sqlite3VdbeAddOp2($307,16,0,$308)|0); - $309 = HEAP32[$v>>2]|0; - $310 = HEAP32[$addrL>>2]|0; - _sqlite3VdbeJumpHere($309,$310); - $311 = HEAP32[$0>>2]|0; - $312 = HEAP32[$regRec>>2]|0; - _sqlite3ReleaseTempReg($311,$312); - $313 = HEAP32[$0>>2]|0; - $314 = HEAP32[$regTempRowid>>2]|0; - _sqlite3ReleaseTempReg($313,$314); - } else { - ;HEAP32[$sNC+0>>2]=0|0;HEAP32[$sNC+4>>2]=0|0;HEAP32[$sNC+8>>2]=0|0;HEAP32[$sNC+12>>2]=0|0;HEAP32[$sNC+16>>2]=0|0;HEAP32[$sNC+20>>2]=0|0;HEAP32[$sNC+24>>2]=0|0;HEAP32[$sNC+28>>2]=0|0; - $315 = HEAP32[$0>>2]|0; - HEAP32[$sNC>>2] = $315; - HEAP32[$srcTab>>2] = -1; - $316 = HEAP32[$pList>>2]|0; - $317 = ($316|0)!=(0|0); - if ($317) { - $318 = HEAP32[$pList>>2]|0; - $319 = HEAP32[$318>>2]|0; - $320 = $319; - } else { - $320 = 0; - } - HEAP32[$nColumn>>2] = $320; - HEAP32[$i>>2] = 0; - while(1) { - $321 = HEAP32[$i>>2]|0; - $322 = HEAP32[$nColumn>>2]|0; - $323 = ($321|0)<($322|0); - if (!($323)) { - break L55; - } - $324 = HEAP32[$i>>2]|0; - $325 = HEAP32[$pList>>2]|0; - $326 = (($325) + 4|0); - $327 = HEAP32[$326>>2]|0; - $328 = (($327) + (($324*20)|0)|0); - $329 = HEAP32[$328>>2]|0; - $330 = (_sqlite3ResolveExprNames($sNC,$329)|0); - $331 = ($330|0)!=(0); - if ($331) { - break L1; - } - $332 = HEAP32[$i>>2]|0; - $333 = (($332) + 1)|0; - HEAP32[$i>>2] = $333; - } - } - } while(0); - $334 = HEAP32[$3>>2]|0; - $335 = ($334|0)==(0|0); - if ($335) { - $336 = HEAP32[$nColumn>>2]|0; - $337 = ($336|0)>(0); - if ($337) { - $338 = HEAP32[$pTab>>2]|0; - $339 = (($338) + 36|0); - $340 = HEAP16[$339>>1]|0; - $341 = $340 << 16 >> 16; - HEAP32[$ipkColumn>>2] = $341; - } - } - $342 = HEAP32[$pTab>>2]|0; - $343 = (($342) + 44|0); - $344 = HEAP8[$343>>0]|0; - $345 = $344&255; - $346 = $345 & 16; - $347 = ($346|0)!=(0); - L78: do { - if ($347) { - HEAP32[$i>>2] = 0; - while(1) { - $348 = HEAP32[$i>>2]|0; - $349 = HEAP32[$pTab>>2]|0; - $350 = (($349) + 38|0); - $351 = HEAP16[$350>>1]|0; - $352 = $351 << 16 >> 16; - $353 = ($348|0)<($352|0); - if (!($353)) { - break L78; - } - $354 = HEAP32[$i>>2]|0; - $355 = HEAP32[$pTab>>2]|0; - $356 = (($355) + 4|0); - $357 = HEAP32[$356>>2]|0; - $358 = (($357) + (($354*24)|0)|0); - $359 = (($358) + 23|0); - $360 = HEAP8[$359>>0]|0; - $361 = $360&255; - $362 = $361 & 2; - $363 = ($362|0)!=(0); - $364 = $363 ? 1 : 0; - $365 = HEAP32[$nHidden>>2]|0; - $366 = (($365) + ($364))|0; - HEAP32[$nHidden>>2] = $366; - $367 = HEAP32[$i>>2]|0; - $368 = (($367) + 1)|0; - HEAP32[$i>>2] = $368; - } - } - } while(0); - $369 = HEAP32[$3>>2]|0; - $370 = ($369|0)==(0|0); - do { - if ($370) { - $371 = HEAP32[$nColumn>>2]|0; - $372 = ($371|0)!=(0); - if (!($372)) { - break; - } - $373 = HEAP32[$nColumn>>2]|0; - $374 = HEAP32[$pTab>>2]|0; - $375 = (($374) + 38|0); - $376 = HEAP16[$375>>1]|0; - $377 = $376 << 16 >> 16; - $378 = HEAP32[$nHidden>>2]|0; - $379 = (($377) - ($378))|0; - $380 = ($373|0)!=($379|0); - if (!($380)) { - break; - } - $381 = HEAP32[$0>>2]|0; - $382 = HEAP32[$1>>2]|0; - $383 = HEAP32[$pTab>>2]|0; - $384 = (($383) + 38|0); - $385 = HEAP16[$384>>1]|0; - $386 = $385 << 16 >> 16; - $387 = HEAP32[$nHidden>>2]|0; - $388 = (($386) - ($387))|0; - $389 = HEAP32[$nColumn>>2]|0; - HEAP32[$vararg_buffer9>>2] = $382; - $vararg_ptr6 = (($vararg_buffer9) + 4|0); - HEAP32[$vararg_ptr6>>2] = 0; - $vararg_ptr7 = (($vararg_buffer9) + 8|0); - HEAP32[$vararg_ptr7>>2] = $388; - $vararg_ptr8 = (($vararg_buffer9) + 12|0); - HEAP32[$vararg_ptr8>>2] = $389; - _sqlite3ErrorMsg($381,23256,$vararg_buffer9); - break L1; - } - } while(0); - $390 = HEAP32[$3>>2]|0; - $391 = ($390|0)!=(0|0); - do { - if ($391) { - $392 = HEAP32[$nColumn>>2]|0; - $393 = HEAP32[$3>>2]|0; - $394 = (($393) + 4|0); - $395 = HEAP32[$394>>2]|0; - $396 = ($392|0)!=($395|0); - if (!($396)) { - break; - } - $397 = HEAP32[$0>>2]|0; - $398 = HEAP32[$nColumn>>2]|0; - $399 = HEAP32[$3>>2]|0; - $400 = (($399) + 4|0); - $401 = HEAP32[$400>>2]|0; - HEAP32[$vararg_buffer9>>2] = $398; - $vararg_ptr12 = (($vararg_buffer9) + 4|0); - HEAP32[$vararg_ptr12>>2] = $401; - _sqlite3ErrorMsg($397,23312,$vararg_buffer9); - break L1; - } - } while(0); - $402 = HEAP32[$db>>2]|0; - $403 = (($402) + 24|0); - $404 = HEAP32[$403>>2]|0; - $405 = $404 & 128; - $406 = ($405|0)!=(0); - if ($406) { - $407 = HEAP32[$0>>2]|0; - $408 = (($407) + 72|0); - $409 = HEAP32[$408>>2]|0; - $410 = (($409) + 1)|0; - HEAP32[$408>>2] = $410; - HEAP32[$regRowCount>>2] = $410; - $411 = HEAP32[$v>>2]|0; - $412 = HEAP32[$regRowCount>>2]|0; - (_sqlite3VdbeAddOp2($411,25,0,$412)|0); - } - $413 = HEAP32[$isView>>2]|0; - $414 = ($413|0)!=(0); - L96: do { - if (!($414)) { - $415 = HEAP32[$0>>2]|0; - $416 = HEAP32[$pTab>>2]|0; - $417 = (_sqlite3OpenTableAndIndices($415,$416,53,-1,0,$iDataCur,$iIdxCur)|0); - HEAP32[$nIdx>>2] = $417; - $418 = HEAP32[$db>>2]|0; - $419 = HEAP32[$nIdx>>2]|0; - $420 = (($419) + 1)|0; - $421 = $420<<2; - $422 = (_sqlite3DbMallocRaw($418,$421)|0); - HEAP32[$aRegIdx>>2] = $422; - $423 = HEAP32[$aRegIdx>>2]|0; - $424 = ($423|0)==(0|0); - if ($424) { - break L1; - } - HEAP32[$i>>2] = 0; - while(1) { - $425 = HEAP32[$i>>2]|0; - $426 = HEAP32[$nIdx>>2]|0; - $427 = ($425|0)<($426|0); - if (!($427)) { - break L96; - } - $428 = HEAP32[$0>>2]|0; - $429 = (($428) + 72|0); - $430 = HEAP32[$429>>2]|0; - $431 = (($430) + 1)|0; - HEAP32[$429>>2] = $431; - $432 = HEAP32[$i>>2]|0; - $433 = HEAP32[$aRegIdx>>2]|0; - $434 = (($433) + ($432<<2)|0); - HEAP32[$434>>2] = $431; - $435 = HEAP32[$i>>2]|0; - $436 = (($435) + 1)|0; - HEAP32[$i>>2] = $436; - } - } - } while(0); - $437 = HEAP8[$useTempTable>>0]|0; - $438 = ($437<<24>>24)!=(0); - do { - if ($438) { - $439 = HEAP32[$v>>2]|0; - $440 = HEAP32[$srcTab>>2]|0; - $441 = (_sqlite3VdbeAddOp1($439,105,$440)|0); - HEAP32[$addrInsTop>>2] = $441; - $442 = HEAP32[$v>>2]|0; - $443 = (_sqlite3VdbeCurrentAddr($442)|0); - HEAP32[$addrCont>>2] = $443; - } else { - $444 = HEAP32[$2>>2]|0; - $445 = ($444|0)!=(0|0); - if (!($445)) { - break; - } - $446 = HEAP32[$v>>2]|0; - $447 = (($dest) + 4|0); - $448 = HEAP32[$447>>2]|0; - $449 = (_sqlite3VdbeAddOp1($446,22,$448)|0); - HEAP32[$addrCont>>2] = $449; - HEAP32[$addrInsTop>>2] = $449; - } - } while(0); - $450 = HEAP32[$v>>2]|0; - $451 = (_sqlite3VdbeMakeLabel($450)|0); - HEAP32[$endOfLoop>>2] = $451; - $452 = HEAP32[$tmask>>2]|0; - $453 = $452 & 1; - $454 = ($453|0)!=(0); - if ($454) { - $455 = HEAP32[$0>>2]|0; - $456 = HEAP32[$pTab>>2]|0; - $457 = (($456) + 38|0); - $458 = HEAP16[$457>>1]|0; - $459 = $458 << 16 >> 16; - $460 = (($459) + 1)|0; - $461 = (_sqlite3GetTempRange($455,$460)|0); - HEAP32[$regCols>>2] = $461; - $462 = HEAP32[$ipkColumn>>2]|0; - $463 = ($462|0)<(0); - if ($463) { - $464 = HEAP32[$v>>2]|0; - $465 = HEAP32[$regCols>>2]|0; - (_sqlite3VdbeAddOp2($464,25,-1,$465)|0); - } else { - $466 = HEAP8[$useTempTable>>0]|0; - $467 = ($466<<24>>24)!=(0); - if ($467) { - $468 = HEAP32[$v>>2]|0; - $469 = HEAP32[$srcTab>>2]|0; - $470 = HEAP32[$ipkColumn>>2]|0; - $471 = HEAP32[$regCols>>2]|0; - (_sqlite3VdbeAddOp3($468,46,$469,$470,$471)|0); - } else { - $472 = HEAP32[$0>>2]|0; - $473 = HEAP32[$ipkColumn>>2]|0; - $474 = HEAP32[$pList>>2]|0; - $475 = (($474) + 4|0); - $476 = HEAP32[$475>>2]|0; - $477 = (($476) + (($473*20)|0)|0); - $478 = HEAP32[$477>>2]|0; - $479 = HEAP32[$regCols>>2]|0; - _sqlite3ExprCode($472,$478,$479); - } - $480 = HEAP32[$v>>2]|0; - $481 = HEAP32[$regCols>>2]|0; - $482 = (_sqlite3VdbeAddOp1($480,77,$481)|0); - HEAP32[$j1>>2] = $482; - $483 = HEAP32[$v>>2]|0; - $484 = HEAP32[$regCols>>2]|0; - (_sqlite3VdbeAddOp2($483,25,-1,$484)|0); - $485 = HEAP32[$v>>2]|0; - $486 = HEAP32[$j1>>2]|0; - _sqlite3VdbeJumpHere($485,$486); - $487 = HEAP32[$v>>2]|0; - $488 = HEAP32[$regCols>>2]|0; - (_sqlite3VdbeAddOp1($487,38,$488)|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $489 = HEAP32[$i>>2]|0; - $490 = HEAP32[$pTab>>2]|0; - $491 = (($490) + 38|0); - $492 = HEAP16[$491>>1]|0; - $493 = $492 << 16 >> 16; - $494 = ($489|0)<($493|0); - if (!($494)) { - break; - } - $495 = HEAP32[$3>>2]|0; - $496 = ($495|0)==(0|0); - L121: do { - if ($496) { - $497 = HEAP32[$i>>2]|0; - HEAP32[$j>>2] = $497; - } else { - HEAP32[$j>>2] = 0; - while(1) { - $498 = HEAP32[$j>>2]|0; - $499 = HEAP32[$3>>2]|0; - $500 = (($499) + 4|0); - $501 = HEAP32[$500>>2]|0; - $502 = ($498|0)<($501|0); - if (!($502)) { - break L121; - } - $503 = HEAP32[$j>>2]|0; - $504 = HEAP32[$3>>2]|0; - $505 = HEAP32[$504>>2]|0; - $506 = (($505) + ($503<<3)|0); - $507 = (($506) + 4|0); - $508 = HEAP32[$507>>2]|0; - $509 = HEAP32[$i>>2]|0; - $510 = ($508|0)==($509|0); - if ($510) { - break L121; - } - $511 = HEAP32[$j>>2]|0; - $512 = (($511) + 1)|0; - HEAP32[$j>>2] = $512; - } - } - } while(0); - $513 = HEAP8[$useTempTable>>0]|0; - $514 = ($513<<24>>24)!=(0); - if ($514) { - label = 97; - } else { - $515 = HEAP32[$pList>>2]|0; - $516 = ($515|0)!=(0|0); - if ($516) { - label = 97; - } else { - label = 99; - } - } - do { - if ((label|0) == 97) { - label = 0; - $517 = HEAP32[$3>>2]|0; - $518 = ($517|0)!=(0|0); - if ($518) { - $519 = HEAP32[$j>>2]|0; - $520 = HEAP32[$3>>2]|0; - $521 = (($520) + 4|0); - $522 = HEAP32[$521>>2]|0; - $523 = ($519|0)>=($522|0); - if ($523) { - label = 99; - break; - } - } - $536 = HEAP8[$useTempTable>>0]|0; - $537 = ($536<<24>>24)!=(0); - if ($537) { - $538 = HEAP32[$v>>2]|0; - $539 = HEAP32[$srcTab>>2]|0; - $540 = HEAP32[$j>>2]|0; - $541 = HEAP32[$regCols>>2]|0; - $542 = HEAP32[$i>>2]|0; - $543 = (($541) + ($542))|0; - $544 = (($543) + 1)|0; - (_sqlite3VdbeAddOp3($538,46,$539,$540,$544)|0); - break; - } else { - $545 = HEAP32[$0>>2]|0; - $546 = HEAP32[$j>>2]|0; - $547 = HEAP32[$pList>>2]|0; - $548 = (($547) + 4|0); - $549 = HEAP32[$548>>2]|0; - $550 = (($549) + (($546*20)|0)|0); - $551 = HEAP32[$550>>2]|0; - $552 = HEAP32[$regCols>>2]|0; - $553 = HEAP32[$i>>2]|0; - $554 = (($552) + ($553))|0; - $555 = (($554) + 1)|0; - _sqlite3ExprCodeAndCache($545,$551,$555); - break; - } - } - } while(0); - if ((label|0) == 99) { - label = 0; - $524 = HEAP32[$0>>2]|0; - $525 = HEAP32[$i>>2]|0; - $526 = HEAP32[$pTab>>2]|0; - $527 = (($526) + 4|0); - $528 = HEAP32[$527>>2]|0; - $529 = (($528) + (($525*24)|0)|0); - $530 = (($529) + 4|0); - $531 = HEAP32[$530>>2]|0; - $532 = HEAP32[$regCols>>2]|0; - $533 = HEAP32[$i>>2]|0; - $534 = (($532) + ($533))|0; - $535 = (($534) + 1)|0; - _sqlite3ExprCode($524,$531,$535); - } - $556 = HEAP32[$i>>2]|0; - $557 = (($556) + 1)|0; - HEAP32[$i>>2] = $557; - } - $558 = HEAP32[$isView>>2]|0; - $559 = ($558|0)!=(0); - if (!($559)) { - $560 = HEAP32[$v>>2]|0; - $561 = HEAP32[$pTab>>2]|0; - $562 = HEAP32[$regCols>>2]|0; - $563 = (($562) + 1)|0; - _sqlite3TableAffinity($560,$561,$563); - } - $564 = HEAP32[$0>>2]|0; - $565 = HEAP32[$pTrigger>>2]|0; - $566 = HEAP32[$pTab>>2]|0; - $567 = HEAP32[$regCols>>2]|0; - $568 = HEAP32[$pTab>>2]|0; - $569 = (($568) + 38|0); - $570 = HEAP16[$569>>1]|0; - $571 = $570 << 16 >> 16; - $572 = (($567) - ($571))|0; - $573 = (($572) - 1)|0; - $574 = HEAP32[$4>>2]|0; - $575 = HEAP32[$endOfLoop>>2]|0; - _sqlite3CodeRowTrigger($564,$565,108,0,1,$566,$573,$574,$575); - $576 = HEAP32[$0>>2]|0; - $577 = HEAP32[$regCols>>2]|0; - $578 = HEAP32[$pTab>>2]|0; - $579 = (($578) + 38|0); - $580 = HEAP16[$579>>1]|0; - $581 = $580 << 16 >> 16; - $582 = (($581) + 1)|0; - _sqlite3ReleaseTempRange($576,$577,$582); - } - $583 = HEAP32[$isView>>2]|0; - $584 = ($583|0)!=(0); - do { - if (!($584)) { - $585 = HEAP32[$pTab>>2]|0; - $586 = (($585) + 44|0); - $587 = HEAP8[$586>>0]|0; - $588 = $587&255; - $589 = $588 & 16; - $590 = ($589|0)!=(0); - if ($590) { - $591 = HEAP32[$v>>2]|0; - $592 = HEAP32[$regIns>>2]|0; - (_sqlite3VdbeAddOp2($591,28,0,$592)|0); - } - $593 = HEAP32[$ipkColumn>>2]|0; - $594 = ($593|0)>=(0); - L152: do { - if ($594) { - $595 = HEAP8[$useTempTable>>0]|0; - $596 = ($595<<24>>24)!=(0); - do { - if ($596) { - $597 = HEAP32[$v>>2]|0; - $598 = HEAP32[$srcTab>>2]|0; - $599 = HEAP32[$ipkColumn>>2]|0; - $600 = HEAP32[$regRowid>>2]|0; - (_sqlite3VdbeAddOp3($597,46,$598,$599,$600)|0); - } else { - $601 = HEAP32[$2>>2]|0; - $602 = ($601|0)!=(0|0); - if ($602) { - $603 = HEAP32[$v>>2]|0; - $604 = HEAP32[$regFromSelect>>2]|0; - $605 = HEAP32[$ipkColumn>>2]|0; - $606 = (($604) + ($605))|0; - $607 = HEAP32[$regRowid>>2]|0; - (_sqlite3VdbeAddOp2($603,33,$606,$607)|0); - break; - } - $608 = HEAP32[$0>>2]|0; - $609 = HEAP32[$ipkColumn>>2]|0; - $610 = HEAP32[$pList>>2]|0; - $611 = (($610) + 4|0); - $612 = HEAP32[$611>>2]|0; - $613 = (($612) + (($609*20)|0)|0); - $614 = HEAP32[$613>>2]|0; - $615 = HEAP32[$regRowid>>2]|0; - _sqlite3ExprCode($608,$614,$615); - $616 = HEAP32[$v>>2]|0; - $617 = (_sqlite3VdbeGetOp($616,-1)|0); - HEAP32[$pOp>>2] = $617; - $618 = HEAP32[$pOp>>2]|0; - $619 = ($618|0)!=(0|0); - if (!($619)) { - break; - } - $620 = HEAP32[$pOp>>2]|0; - $621 = HEAP8[$620>>0]|0; - $622 = $621&255; - $623 = ($622|0)==(28); - if (!($623)) { - break; - } - $624 = HEAP32[$pTab>>2]|0; - $625 = (($624) + 44|0); - $626 = HEAP8[$625>>0]|0; - $627 = $626&255; - $628 = $627 & 16; - $629 = ($628|0)!=(0); - if ($629) { - break; - } - HEAP8[$appendFlag>>0] = 1; - $630 = HEAP32[$pOp>>2]|0; - HEAP8[$630>>0] = 69; - $631 = HEAP32[$iDataCur>>2]|0; - $632 = HEAP32[$pOp>>2]|0; - $633 = (($632) + 4|0); - HEAP32[$633>>2] = $631; - $634 = HEAP32[$regRowid>>2]|0; - $635 = HEAP32[$pOp>>2]|0; - $636 = (($635) + 8|0); - HEAP32[$636>>2] = $634; - $637 = HEAP32[$regAutoinc>>2]|0; - $638 = HEAP32[$pOp>>2]|0; - $639 = (($638) + 12|0); - HEAP32[$639>>2] = $637; - } - } while(0); - $640 = HEAP8[$appendFlag>>0]|0; - $641 = ($640<<24>>24)!=(0); - if ($641) { - break; - } - $642 = HEAP32[$pTab>>2]|0; - $643 = (($642) + 44|0); - $644 = HEAP8[$643>>0]|0; - $645 = $644&255; - $646 = $645 & 16; - $647 = ($646|0)!=(0); - $648 = HEAP32[$v>>2]|0; - if ($647) { - $657 = (_sqlite3VdbeCurrentAddr($648)|0); - HEAP32[$j11>>2] = $657; - $658 = HEAP32[$v>>2]|0; - $659 = HEAP32[$regRowid>>2]|0; - $660 = HEAP32[$j11>>2]|0; - $661 = (($660) + 2)|0; - (_sqlite3VdbeAddOp2($658,76,$659,$661)|0); - } else { - $649 = HEAP32[$regRowid>>2]|0; - $650 = (_sqlite3VdbeAddOp1($648,77,$649)|0); - HEAP32[$j11>>2] = $650; - $651 = HEAP32[$v>>2]|0; - $652 = HEAP32[$iDataCur>>2]|0; - $653 = HEAP32[$regRowid>>2]|0; - $654 = HEAP32[$regAutoinc>>2]|0; - (_sqlite3VdbeAddOp3($651,69,$652,$653,$654)|0); - $655 = HEAP32[$v>>2]|0; - $656 = HEAP32[$j11>>2]|0; - _sqlite3VdbeJumpHere($655,$656); - } - $662 = HEAP32[$v>>2]|0; - $663 = HEAP32[$regRowid>>2]|0; - (_sqlite3VdbeAddOp1($662,38,$663)|0); - } else { - $664 = HEAP32[$pTab>>2]|0; - $665 = (($664) + 44|0); - $666 = HEAP8[$665>>0]|0; - $667 = $666&255; - $668 = $667 & 16; - $669 = ($668|0)!=(0); - do { - if (!($669)) { - $670 = HEAP8[$withoutRowid>>0]|0; - $671 = $670&255; - $672 = ($671|0)!=(0); - if ($672) { - break; - } - $675 = HEAP32[$v>>2]|0; - $676 = HEAP32[$iDataCur>>2]|0; - $677 = HEAP32[$regRowid>>2]|0; - $678 = HEAP32[$regAutoinc>>2]|0; - (_sqlite3VdbeAddOp3($675,69,$676,$677,$678)|0); - HEAP8[$appendFlag>>0] = 1; - break L152; - } - } while(0); - $673 = HEAP32[$v>>2]|0; - $674 = HEAP32[$regRowid>>2]|0; - (_sqlite3VdbeAddOp2($673,28,0,$674)|0); - } - } while(0); - $679 = HEAP32[$0>>2]|0; - $680 = HEAP32[$regAutoinc>>2]|0; - $681 = HEAP32[$regRowid>>2]|0; - _autoIncStep($679,$680,$681); - HEAP32[$nHidden>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $682 = HEAP32[$i>>2]|0; - $683 = HEAP32[$pTab>>2]|0; - $684 = (($683) + 38|0); - $685 = HEAP16[$684>>1]|0; - $686 = $685 << 16 >> 16; - $687 = ($682|0)<($686|0); - if (!($687)) { - break; - } - $688 = HEAP32[$regRowid>>2]|0; - $689 = (($688) + 1)|0; - $690 = HEAP32[$i>>2]|0; - $691 = (($689) + ($690))|0; - HEAP32[$iRegStore>>2] = $691; - $692 = HEAP32[$i>>2]|0; - $693 = HEAP32[$pTab>>2]|0; - $694 = (($693) + 36|0); - $695 = HEAP16[$694>>1]|0; - $696 = $695 << 16 >> 16; - $697 = ($692|0)==($696|0); - L178: do { - if ($697) { - $698 = HEAP32[$v>>2]|0; - $699 = HEAP32[$iRegStore>>2]|0; - (_sqlite3VdbeAddOp1($698,29,$699)|0); - } else { - $700 = HEAP32[$3>>2]|0; - $701 = ($700|0)==(0|0); - L181: do { - if ($701) { - $702 = HEAP32[$i>>2]|0; - $703 = HEAP32[$pTab>>2]|0; - $704 = (($703) + 4|0); - $705 = HEAP32[$704>>2]|0; - $706 = (($705) + (($702*24)|0)|0); - $707 = (($706) + 23|0); - $708 = HEAP8[$707>>0]|0; - $709 = $708&255; - $710 = $709 & 2; - $711 = ($710|0)!=(0); - if ($711) { - HEAP32[$j>>2] = -1; - $712 = HEAP32[$nHidden>>2]|0; - $713 = (($712) + 1)|0; - HEAP32[$nHidden>>2] = $713; - break; - } else { - $714 = HEAP32[$i>>2]|0; - $715 = HEAP32[$nHidden>>2]|0; - $716 = (($714) - ($715))|0; - HEAP32[$j>>2] = $716; - break; - } - } else { - HEAP32[$j>>2] = 0; - while(1) { - $717 = HEAP32[$j>>2]|0; - $718 = HEAP32[$3>>2]|0; - $719 = (($718) + 4|0); - $720 = HEAP32[$719>>2]|0; - $721 = ($717|0)<($720|0); - if (!($721)) { - break L181; - } - $722 = HEAP32[$j>>2]|0; - $723 = HEAP32[$3>>2]|0; - $724 = HEAP32[$723>>2]|0; - $725 = (($724) + ($722<<3)|0); - $726 = (($725) + 4|0); - $727 = HEAP32[$726>>2]|0; - $728 = HEAP32[$i>>2]|0; - $729 = ($727|0)==($728|0); - if ($729) { - break L181; - } - $730 = HEAP32[$j>>2]|0; - $731 = (($730) + 1)|0; - HEAP32[$j>>2] = $731; - } - } - } while(0); - $732 = HEAP32[$j>>2]|0; - $733 = ($732|0)<(0); - do { - if (!($733)) { - $734 = HEAP32[$nColumn>>2]|0; - $735 = ($734|0)==(0); - if ($735) { - break; - } - $736 = HEAP32[$3>>2]|0; - $737 = ($736|0)!=(0|0); - if ($737) { - $738 = HEAP32[$j>>2]|0; - $739 = HEAP32[$3>>2]|0; - $740 = (($739) + 4|0); - $741 = HEAP32[$740>>2]|0; - $742 = ($738|0)>=($741|0); - if ($742) { - break; - } - } - $752 = HEAP8[$useTempTable>>0]|0; - $753 = ($752<<24>>24)!=(0); - if ($753) { - $754 = HEAP32[$v>>2]|0; - $755 = HEAP32[$srcTab>>2]|0; - $756 = HEAP32[$j>>2]|0; - $757 = HEAP32[$iRegStore>>2]|0; - (_sqlite3VdbeAddOp3($754,46,$755,$756,$757)|0); - break L178; - } - $758 = HEAP32[$2>>2]|0; - $759 = ($758|0)!=(0|0); - if (!($759)) { - $768 = HEAP32[$0>>2]|0; - $769 = HEAP32[$j>>2]|0; - $770 = HEAP32[$pList>>2]|0; - $771 = (($770) + 4|0); - $772 = HEAP32[$771>>2]|0; - $773 = (($772) + (($769*20)|0)|0); - $774 = HEAP32[$773>>2]|0; - $775 = HEAP32[$iRegStore>>2]|0; - _sqlite3ExprCode($768,$774,$775); - break L178; - } - $760 = HEAP32[$regFromSelect>>2]|0; - $761 = HEAP32[$regData>>2]|0; - $762 = ($760|0)!=($761|0); - if (!($762)) { - break L178; - } - $763 = HEAP32[$v>>2]|0; - $764 = HEAP32[$regFromSelect>>2]|0; - $765 = HEAP32[$j>>2]|0; - $766 = (($764) + ($765))|0; - $767 = HEAP32[$iRegStore>>2]|0; - (_sqlite3VdbeAddOp2($763,34,$766,$767)|0); - break L178; - } - } while(0); - $743 = HEAP32[$0>>2]|0; - $744 = HEAP32[$i>>2]|0; - $745 = HEAP32[$pTab>>2]|0; - $746 = (($745) + 4|0); - $747 = HEAP32[$746>>2]|0; - $748 = (($747) + (($744*24)|0)|0); - $749 = (($748) + 4|0); - $750 = HEAP32[$749>>2]|0; - $751 = HEAP32[$iRegStore>>2]|0; - _sqlite3ExprCodeFactorable($743,$750,$751); - } - } while(0); - $776 = HEAP32[$i>>2]|0; - $777 = (($776) + 1)|0; - HEAP32[$i>>2] = $777; - } - $778 = HEAP32[$pTab>>2]|0; - $779 = (($778) + 44|0); - $780 = HEAP8[$779>>0]|0; - $781 = $780&255; - $782 = $781 & 16; - $783 = ($782|0)!=(0); - if ($783) { - $784 = HEAP32[$db>>2]|0; - $785 = HEAP32[$pTab>>2]|0; - $786 = (_sqlite3GetVTable($784,$785)|0); - HEAP32[$pVTab>>2] = $786; - $787 = HEAP32[$0>>2]|0; - $788 = HEAP32[$pTab>>2]|0; - _sqlite3VtabMakeWritable($787,$788); - $789 = HEAP32[$v>>2]|0; - $790 = HEAP32[$pTab>>2]|0; - $791 = (($790) + 38|0); - $792 = HEAP16[$791>>1]|0; - $793 = $792 << 16 >> 16; - $794 = (($793) + 2)|0; - $795 = HEAP32[$regIns>>2]|0; - $796 = HEAP32[$pVTab>>2]|0; - (_sqlite3VdbeAddOp4($789,15,1,$794,$795,$796,-10)|0); - $797 = HEAP32[$v>>2]|0; - $798 = HEAP32[$4>>2]|0; - $799 = ($798|0)==(10); - $800 = HEAP32[$4>>2]|0; - $801 = $799 ? 2 : $800; - $802 = $801&255; - _sqlite3VdbeChangeP5($797,$802); - $803 = HEAP32[$0>>2]|0; - _sqlite3MayAbort($803); - break; - } else { - $804 = HEAP32[$0>>2]|0; - $805 = HEAP32[$pTab>>2]|0; - $806 = HEAP32[$aRegIdx>>2]|0; - $807 = HEAP32[$iDataCur>>2]|0; - $808 = HEAP32[$iIdxCur>>2]|0; - $809 = HEAP32[$regIns>>2]|0; - $810 = HEAP32[$ipkColumn>>2]|0; - $811 = ($810|0)>=(0); - $812 = $811&1; - $813 = $812&255; - $814 = HEAP32[$4>>2]|0; - $815 = $814&255; - $816 = HEAP32[$endOfLoop>>2]|0; - _sqlite3GenerateConstraintChecks($804,$805,$806,$807,$808,$809,0,$813,$815,$816,$isReplace); - $817 = HEAP32[$0>>2]|0; - $818 = HEAP32[$pTab>>2]|0; - $819 = HEAP32[$regIns>>2]|0; - _sqlite3FkCheck($817,$818,0,$819,0,0); - $820 = HEAP32[$0>>2]|0; - $821 = HEAP32[$pTab>>2]|0; - $822 = HEAP32[$iDataCur>>2]|0; - $823 = HEAP32[$iIdxCur>>2]|0; - $824 = HEAP32[$regIns>>2]|0; - $825 = HEAP32[$aRegIdx>>2]|0; - $826 = HEAP8[$appendFlag>>0]|0; - $827 = $826&255; - $828 = HEAP32[$isReplace>>2]|0; - $829 = ($828|0)==(0); - $830 = $829&1; - _sqlite3CompleteInsertion($820,$821,$822,$823,$824,$825,0,$827,$830); - break; - } - } - } while(0); - $831 = HEAP32[$db>>2]|0; - $832 = (($831) + 24|0); - $833 = HEAP32[$832>>2]|0; - $834 = $833 & 128; - $835 = ($834|0)!=(0); - if ($835) { - $836 = HEAP32[$v>>2]|0; - $837 = HEAP32[$regRowCount>>2]|0; - (_sqlite3VdbeAddOp2($836,37,$837,1)|0); - } - $838 = HEAP32[$pTrigger>>2]|0; - $839 = ($838|0)!=(0|0); - if ($839) { - $840 = HEAP32[$0>>2]|0; - $841 = HEAP32[$pTrigger>>2]|0; - $842 = HEAP32[$pTab>>2]|0; - $843 = HEAP32[$regData>>2]|0; - $844 = (($843) - 2)|0; - $845 = HEAP32[$pTab>>2]|0; - $846 = (($845) + 38|0); - $847 = HEAP16[$846>>1]|0; - $848 = $847 << 16 >> 16; - $849 = (($844) - ($848))|0; - $850 = HEAP32[$4>>2]|0; - $851 = HEAP32[$endOfLoop>>2]|0; - _sqlite3CodeRowTrigger($840,$841,108,0,2,$842,$849,$850,$851); - } - $852 = HEAP32[$v>>2]|0; - $853 = HEAP32[$endOfLoop>>2]|0; - _sqlite3VdbeResolveLabel($852,$853); - $854 = HEAP8[$useTempTable>>0]|0; - $855 = ($854<<24>>24)!=(0); - do { - if ($855) { - $856 = HEAP32[$v>>2]|0; - $857 = HEAP32[$srcTab>>2]|0; - $858 = HEAP32[$addrCont>>2]|0; - (_sqlite3VdbeAddOp2($856,9,$857,$858)|0); - $859 = HEAP32[$v>>2]|0; - $860 = HEAP32[$addrInsTop>>2]|0; - _sqlite3VdbeJumpHere($859,$860); - $861 = HEAP32[$v>>2]|0; - $862 = HEAP32[$srcTab>>2]|0; - (_sqlite3VdbeAddOp1($861,58,$862)|0); - } else { - $863 = HEAP32[$2>>2]|0; - $864 = ($863|0)!=(0|0); - if (!($864)) { - break; - } - $865 = HEAP32[$v>>2]|0; - $866 = HEAP32[$addrCont>>2]|0; - (_sqlite3VdbeAddOp2($865,16,0,$866)|0); - $867 = HEAP32[$v>>2]|0; - $868 = HEAP32[$addrInsTop>>2]|0; - _sqlite3VdbeJumpHere($867,$868); - } - } while(0); - $869 = HEAP32[$pTab>>2]|0; - $870 = (($869) + 44|0); - $871 = HEAP8[$870>>0]|0; - $872 = $871&255; - $873 = $872 & 16; - $874 = ($873|0)!=(0); - if ($874) { - break; - } - $875 = HEAP32[$isView>>2]|0; - $876 = ($875|0)!=(0); - if ($876) { - break; - } - $877 = HEAP32[$iDataCur>>2]|0; - $878 = HEAP32[$iIdxCur>>2]|0; - $879 = ($877|0)<($878|0); - if ($879) { - $880 = HEAP32[$v>>2]|0; - $881 = HEAP32[$iDataCur>>2]|0; - (_sqlite3VdbeAddOp1($880,58,$881)|0); - } - HEAP32[$idx>>2] = 0; - $882 = HEAP32[$pTab>>2]|0; - $883 = (($882) + 8|0); - $884 = HEAP32[$883>>2]|0; - HEAP32[$pIdx>>2] = $884; - while(1) { - $885 = HEAP32[$pIdx>>2]|0; - $886 = ($885|0)!=(0|0); - if (!($886)) { - break L23; - } - $887 = HEAP32[$v>>2]|0; - $888 = HEAP32[$idx>>2]|0; - $889 = HEAP32[$iIdxCur>>2]|0; - $890 = (($888) + ($889))|0; - (_sqlite3VdbeAddOp1($887,58,$890)|0); - $891 = HEAP32[$pIdx>>2]|0; - $892 = (($891) + 20|0); - $893 = HEAP32[$892>>2]|0; - HEAP32[$pIdx>>2] = $893; - $894 = HEAP32[$idx>>2]|0; - $895 = (($894) + 1)|0; - HEAP32[$idx>>2] = $895; - } - } - } while(0); - $896 = HEAP32[$0>>2]|0; - $897 = (($896) + 18|0); - $898 = HEAP8[$897>>0]|0; - $899 = $898&255; - $900 = ($899|0)==(0); - if ($900) { - $901 = HEAP32[$0>>2]|0; - $902 = (($901) + 412|0); - $903 = HEAP32[$902>>2]|0; - $904 = ($903|0)==(0|0); - if ($904) { - $905 = HEAP32[$0>>2]|0; - _sqlite3AutoincrementEnd($905); - } - } - $906 = HEAP32[$db>>2]|0; - $907 = (($906) + 24|0); - $908 = HEAP32[$907>>2]|0; - $909 = $908 & 128; - $910 = ($909|0)!=(0); - if ($910) { - $911 = HEAP32[$0>>2]|0; - $912 = (($911) + 18|0); - $913 = HEAP8[$912>>0]|0; - $914 = ($913<<24>>24)!=(0); - if (!($914)) { - $915 = HEAP32[$0>>2]|0; - $916 = (($915) + 412|0); - $917 = HEAP32[$916>>2]|0; - $918 = ($917|0)!=(0|0); - if (!($918)) { - $919 = HEAP32[$v>>2]|0; - $920 = HEAP32[$regRowCount>>2]|0; - (_sqlite3VdbeAddOp2($919,35,$920,1)|0); - $921 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($921,1); - $922 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($922,0,0,23344,0)|0); - } - } - } - } - } - } - } - } - } - } - } - } while(0); - $923 = HEAP32[$db>>2]|0; - $924 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($923,$924); - $925 = HEAP32[$db>>2]|0; - $926 = HEAP32[$pList>>2]|0; - _sqlite3ExprListDelete($925,$926); - $927 = HEAP32[$db>>2]|0; - $928 = HEAP32[$2>>2]|0; - _sqlite3SelectDelete($927,$928); - $929 = HEAP32[$db>>2]|0; - $930 = HEAP32[$3>>2]|0; - _sqlite3IdListDelete($929,$930); - $931 = HEAP32[$db>>2]|0; - $932 = HEAP32[$aRegIdx>>2]|0; - _sqlite3DbFree($931,$932); - STACKTOP = sp;return; -} -function _sqlite3IdListAppend($db,$pList,$pToken) { - $db = $db|0; - $pList = $pList|0; - $pToken = $pToken|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $i = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pList; - HEAP32[$3>>2] = $pToken; - $4 = HEAP32[$2>>2]|0; - $5 = ($4|0)==(0|0); - if ($5) { - $6 = HEAP32[$1>>2]|0; - $7 = (_sqlite3DbMallocZero($6,8)|0); - HEAP32[$2>>2] = $7; - $8 = HEAP32[$2>>2]|0; - $9 = ($8|0)==(0|0); - if ($9) { - HEAP32[$0>>2] = 0; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); - } - } - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = (($13) + 4|0); - $15 = (_sqlite3ArrayAllocate($10,$12,8,$14,$i)|0); - $16 = HEAP32[$2>>2]|0; - HEAP32[$16>>2] = $15; - $17 = HEAP32[$i>>2]|0; - $18 = ($17|0)<(0); - $19 = HEAP32[$1>>2]|0; - if ($18) { - $20 = HEAP32[$2>>2]|0; - _sqlite3IdListDelete($19,$20); - HEAP32[$0>>2] = 0; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); - } else { - $21 = HEAP32[$3>>2]|0; - $22 = (_sqlite3NameFromToken($19,$21)|0); - $23 = HEAP32[$i>>2]|0; - $24 = HEAP32[$2>>2]|0; - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + ($23<<3)|0); - HEAP32[$26>>2] = $22; - $27 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $27; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); - } - return 0|0; -} -function _spanSet($pOut,$pStart,$pEnd) { - $pOut = $pOut|0; - $pStart = $pStart|0; - $pEnd = $pEnd|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $pOut; - HEAP32[$1>>2] = $pStart; - HEAP32[$2>>2] = $pEnd; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 4|0); - HEAP32[$6>>2] = $4; - $7 = HEAP32[$2>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + ($9)|0); - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 8|0); - HEAP32[$14>>2] = $12; - STACKTOP = sp;return; -} -function _sqlite3ExprAssignVarNumber($pParse,$pExpr) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; - var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; - var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; - var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; - var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a = 0, $bOk = 0, $db = 0, $i = 0, $i1 = 0, $n = 0, $vararg_buffer1 = 0, $x = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer1 = sp + 8|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $db = sp + 28|0; - $z = sp + 24|0; - $x = sp + 42|0; - $n = sp + 20|0; - $i = sp; - $bOk = sp + 16|0; - $i1 = sp + 40|0; - $a = sp + 12|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pExpr; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)==(0|0); - if ($5) { - STACKTOP = sp;return; - } - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 8|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$z>>2] = $8; - $9 = HEAP32[$z>>2]|0; - $10 = (($9) + 1|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11 << 24 >> 24; - $13 = ($12|0)==(0); - do { - if ($13) { - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 440|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + 1)|0; - HEAP32[$15>>2] = $17; - $18 = $17&65535; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 32|0); - HEAP16[$20>>1] = $18; - } else { - HEAP16[$x>>1] = 0; - $21 = HEAP32[$z>>2]|0; - $22 = (_sqlite3Strlen30($21)|0); - HEAP32[$n>>2] = $22; - $23 = HEAP32[$z>>2]|0; - $24 = HEAP8[$23>>0]|0; - $25 = $24 << 24 >> 24; - $26 = ($25|0)==(63); - if ($26) { - $27 = HEAP32[$z>>2]|0; - $28 = (($27) + 1|0); - $29 = HEAP32[$n>>2]|0; - $30 = (($29) - 1)|0; - $31 = (_sqlite3Atoi64($28,$i,$30,1)|0); - $32 = (0)==($31|0); - $33 = $32&1; - HEAP32[$bOk>>2] = $33; - $34 = $i; - $35 = $34; - $36 = HEAP32[$35>>2]|0; - $37 = (($34) + 4)|0; - $38 = $37; - $39 = HEAP32[$38>>2]|0; - $40 = $36&65535; - HEAP16[$x>>1] = $40; - $41 = HEAP32[$1>>2]|0; - $42 = (($41) + 32|0); - HEAP16[$42>>1] = $40; - $43 = HEAP32[$bOk>>2]|0; - $44 = ($43|0)==(0); - if ($44) { - label = 8; - } else { - $45 = $i; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = (($45) + 4)|0; - $49 = $48; - $50 = HEAP32[$49>>2]|0; - $51 = ($50|0)<(0); - $52 = ($50|0)==(0); - $53 = ($47>>>0)<(1); - $54 = $52 & $53; - $55 = $51 | $54; - if ($55) { - label = 8; - } else { - $56 = $i; - $57 = $56; - $58 = HEAP32[$57>>2]|0; - $59 = (($56) + 4)|0; - $60 = $59; - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$db>>2]|0; - $63 = (($62) + 88|0); - $64 = (($63) + 36|0); - $65 = HEAP32[$64>>2]|0; - $66 = ($65|0)<(0); - $67 = $66 << 31 >> 31; - $68 = ($61|0)>($67|0); - $69 = ($61|0)==($67|0); - $70 = ($58>>>0)>($65>>>0); - $71 = $69 & $70; - $72 = $68 | $71; - if ($72) { - label = 8; - } - } - } - if ((label|0) == 8) { - $73 = HEAP32[$0>>2]|0; - $74 = HEAP32[$db>>2]|0; - $75 = (($74) + 88|0); - $76 = (($75) + 36|0); - $77 = HEAP32[$76>>2]|0; - HEAP32[$vararg_buffer1>>2] = $77; - _sqlite3ErrorMsg($73,23152,$vararg_buffer1); - HEAP16[$x>>1] = 0; - } - $78 = $i; - $79 = $78; - $80 = HEAP32[$79>>2]|0; - $81 = (($78) + 4)|0; - $82 = $81; - $83 = HEAP32[$82>>2]|0; - $84 = HEAP32[$0>>2]|0; - $85 = (($84) + 440|0); - $86 = HEAP32[$85>>2]|0; - $87 = ($86|0)<(0); - $88 = $87 << 31 >> 31; - $89 = ($83|0)>($88|0); - $90 = ($83|0)==($88|0); - $91 = ($80>>>0)>($86>>>0); - $92 = $90 & $91; - $93 = $89 | $92; - if ($93) { - $94 = $i; - $95 = $94; - $96 = HEAP32[$95>>2]|0; - $97 = (($94) + 4)|0; - $98 = $97; - $99 = HEAP32[$98>>2]|0; - $100 = HEAP32[$0>>2]|0; - $101 = (($100) + 440|0); - HEAP32[$101>>2] = $96; - } - } else { - HEAP16[$i1>>1] = 0; - while(1) { - $102 = HEAP16[$i1>>1]|0; - $103 = $102 << 16 >> 16; - $104 = HEAP32[$0>>2]|0; - $105 = (($104) + 444|0); - $106 = HEAP32[$105>>2]|0; - $107 = ($103|0)<($106|0); - if (!($107)) { - break; - } - $108 = HEAP16[$i1>>1]|0; - $109 = $108 << 16 >> 16; - $110 = HEAP32[$0>>2]|0; - $111 = (($110) + 472|0); - $112 = HEAP32[$111>>2]|0; - $113 = (($112) + ($109<<2)|0); - $114 = HEAP32[$113>>2]|0; - $115 = ($114|0)!=(0|0); - if ($115) { - $116 = HEAP16[$i1>>1]|0; - $117 = $116 << 16 >> 16; - $118 = HEAP32[$0>>2]|0; - $119 = (($118) + 472|0); - $120 = HEAP32[$119>>2]|0; - $121 = (($120) + ($117<<2)|0); - $122 = HEAP32[$121>>2]|0; - $123 = HEAP32[$z>>2]|0; - $124 = (_strcmp($122,$123)|0); - $125 = ($124|0)==(0); - if ($125) { - label = 15; - break; - } - } - $132 = HEAP16[$i1>>1]|0; - $133 = (($132) + 1)<<16>>16; - HEAP16[$i1>>1] = $133; - } - if ((label|0) == 15) { - $126 = HEAP16[$i1>>1]|0; - $127 = $126 << 16 >> 16; - $128 = (($127) + 1)|0; - $129 = $128&65535; - HEAP16[$x>>1] = $129; - $130 = HEAP32[$1>>2]|0; - $131 = (($130) + 32|0); - HEAP16[$131>>1] = $129; - } - $134 = HEAP16[$x>>1]|0; - $135 = $134 << 16 >> 16; - $136 = ($135|0)==(0); - if ($136) { - $137 = HEAP32[$0>>2]|0; - $138 = (($137) + 440|0); - $139 = HEAP32[$138>>2]|0; - $140 = (($139) + 1)|0; - HEAP32[$138>>2] = $140; - $141 = $140&65535; - $142 = HEAP32[$1>>2]|0; - $143 = (($142) + 32|0); - HEAP16[$143>>1] = $141; - HEAP16[$x>>1] = $141; - } - } - $144 = HEAP16[$x>>1]|0; - $145 = $144 << 16 >> 16; - $146 = ($145|0)>(0); - if ($146) { - $147 = HEAP16[$x>>1]|0; - $148 = $147 << 16 >> 16; - $149 = HEAP32[$0>>2]|0; - $150 = (($149) + 444|0); - $151 = HEAP32[$150>>2]|0; - $152 = ($148|0)>($151|0); - do { - if ($152) { - $153 = HEAP32[$db>>2]|0; - $154 = HEAP32[$0>>2]|0; - $155 = (($154) + 472|0); - $156 = HEAP32[$155>>2]|0; - $157 = HEAP16[$x>>1]|0; - $158 = $157 << 16 >> 16; - $159 = $158<<2; - $160 = (_sqlite3DbRealloc($153,$156,$159)|0); - HEAP32[$a>>2] = $160; - $161 = HEAP32[$a>>2]|0; - $162 = ($161|0)==(0|0); - if ($162) { - STACKTOP = sp;return; - } else { - $163 = HEAP32[$a>>2]|0; - $164 = HEAP32[$0>>2]|0; - $165 = (($164) + 472|0); - HEAP32[$165>>2] = $163; - $166 = HEAP32[$0>>2]|0; - $167 = (($166) + 444|0); - $168 = HEAP32[$167>>2]|0; - $169 = HEAP32[$a>>2]|0; - $170 = (($169) + ($168<<2)|0); - $171 = HEAP16[$x>>1]|0; - $172 = $171 << 16 >> 16; - $173 = HEAP32[$0>>2]|0; - $174 = (($173) + 444|0); - $175 = HEAP32[$174>>2]|0; - $176 = (($172) - ($175))|0; - $177 = $176<<2; - _memset(($170|0),0,($177|0))|0; - $178 = HEAP16[$x>>1]|0; - $179 = $178 << 16 >> 16; - $180 = HEAP32[$0>>2]|0; - $181 = (($180) + 444|0); - HEAP32[$181>>2] = $179; - break; - } - } - } while(0); - $182 = HEAP32[$z>>2]|0; - $183 = HEAP8[$182>>0]|0; - $184 = $183 << 24 >> 24; - $185 = ($184|0)!=(63); - if (!($185)) { - $186 = HEAP16[$x>>1]|0; - $187 = $186 << 16 >> 16; - $188 = (($187) - 1)|0; - $189 = HEAP32[$0>>2]|0; - $190 = (($189) + 472|0); - $191 = HEAP32[$190>>2]|0; - $192 = (($191) + ($188<<2)|0); - $193 = HEAP32[$192>>2]|0; - $194 = ($193|0)==(0|0); - if (!($194)) { - break; - } - } - $195 = HEAP32[$db>>2]|0; - $196 = HEAP16[$x>>1]|0; - $197 = $196 << 16 >> 16; - $198 = (($197) - 1)|0; - $199 = HEAP32[$0>>2]|0; - $200 = (($199) + 472|0); - $201 = HEAP32[$200>>2]|0; - $202 = (($201) + ($198<<2)|0); - $203 = HEAP32[$202>>2]|0; - _sqlite3DbFree($195,$203); - $204 = HEAP32[$db>>2]|0; - $205 = HEAP32[$z>>2]|0; - $206 = HEAP32[$n>>2]|0; - $207 = (_sqlite3DbStrNDup($204,$205,$206)|0); - $208 = HEAP16[$x>>1]|0; - $209 = $208 << 16 >> 16; - $210 = (($209) - 1)|0; - $211 = HEAP32[$0>>2]|0; - $212 = (($211) + 472|0); - $213 = HEAP32[$212>>2]|0; - $214 = (($213) + ($210<<2)|0); - HEAP32[$214>>2] = $207; - } - } - } while(0); - $215 = HEAP32[$0>>2]|0; - $216 = (($215) + 64|0); - $217 = HEAP32[$216>>2]|0; - $218 = ($217|0)!=(0); - if ($218) { - STACKTOP = sp;return; - } - $219 = HEAP32[$0>>2]|0; - $220 = (($219) + 440|0); - $221 = HEAP32[$220>>2]|0; - $222 = HEAP32[$db>>2]|0; - $223 = (($222) + 88|0); - $224 = (($223) + 36|0); - $225 = HEAP32[$224>>2]|0; - $226 = ($221|0)>($225|0); - if (!($226)) { - STACKTOP = sp;return; - } - $227 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($227,23200,$vararg_buffer1); - STACKTOP = sp;return; -} -function _sqlite3ExprAddCollateToken($pParse,$pExpr,$pCollName) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - $pCollName = $pCollName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $pNew = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pNew = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pExpr; - HEAP32[$2>>2] = $pCollName; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 4|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5>>>0)>(0); - if (!($6)) { - $21 = HEAP32[$1>>2]|0; - STACKTOP = sp;return ($21|0); - } - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$2>>2]|0; - $10 = (_sqlite3ExprAlloc($8,95,$9,1)|0); - HEAP32[$pNew>>2] = $10; - $11 = HEAP32[$pNew>>2]|0; - $12 = ($11|0)!=(0|0); - if (!($12)) { - $21 = HEAP32[$1>>2]|0; - STACKTOP = sp;return ($21|0); - } - $13 = HEAP32[$1>>2]|0; - $14 = HEAP32[$pNew>>2]|0; - $15 = (($14) + 12|0); - HEAP32[$15>>2] = $13; - $16 = HEAP32[$pNew>>2]|0; - $17 = (($16) + 4|0); - $18 = HEAP32[$17>>2]|0; - $19 = $18 | 4352; - HEAP32[$17>>2] = $19; - $20 = HEAP32[$pNew>>2]|0; - HEAP32[$1>>2] = $20; - $21 = HEAP32[$1>>2]|0; - STACKTOP = sp;return ($21|0); -} -function _sqlite3ExprFunction($pParse,$pList,$pToken) { - $pParse = $pParse|0; - $pList = $pList|0; - $pToken = $pToken|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $db = 0, $pNew = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $pNew = sp + 4|0; - $db = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pList; - HEAP32[$3>>2] = $pToken; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$db>>2]|0; - $7 = HEAP32[$3>>2]|0; - $8 = (_sqlite3ExprAlloc($6,153,$7,1)|0); - HEAP32[$pNew>>2] = $8; - $9 = HEAP32[$pNew>>2]|0; - $10 = ($9|0)==(0|0); - if ($10) { - $11 = HEAP32[$db>>2]|0; - $12 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($11,$12); - HEAP32[$0>>2] = 0; - $19 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($19|0); - } else { - $13 = HEAP32[$2>>2]|0; - $14 = HEAP32[$pNew>>2]|0; - $15 = (($14) + 20|0); - HEAP32[$15>>2] = $13; - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$pNew>>2]|0; - _sqlite3ExprSetHeight($16,$17); - $18 = HEAP32[$pNew>>2]|0; - HEAP32[$0>>2] = $18; - $19 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($19|0); - } - return 0|0; -} -function _spanBinaryExpr($pOut,$pParse,$op,$pLeft,$pRight) { - $pOut = $pOut|0; - $pParse = $pParse|0; - $op = $op|0; - $pLeft = $pLeft|0; - $pRight = $pRight|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $4 = sp; - HEAP32[$0>>2] = $pOut; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $op; - HEAP32[$3>>2] = $pLeft; - HEAP32[$4>>2] = $pRight; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$3>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$4>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = (_sqlite3PExpr($5,$6,$8,$10,0)|0); - $12 = HEAP32[$0>>2]|0; - HEAP32[$12>>2] = $11; - $13 = HEAP32[$3>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 4|0); - HEAP32[$17>>2] = $15; - $18 = HEAP32[$4>>2]|0; - $19 = (($18) + 8|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 8|0); - HEAP32[$22>>2] = $20; - STACKTOP = sp;return; -} -function _spanUnaryPostfix($pOut,$pParse,$op,$pOperand,$pPostOp) { - $pOut = $pOut|0; - $pParse = $pParse|0; - $op = $op|0; - $pOperand = $pOperand|0; - $pPostOp = $pPostOp|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $4 = sp; - HEAP32[$0>>2] = $pOut; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $op; - HEAP32[$3>>2] = $pOperand; - HEAP32[$4>>2] = $pPostOp; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$3>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3PExpr($5,$6,$8,0,0)|0); - $10 = HEAP32[$0>>2]|0; - HEAP32[$10>>2] = $9; - $11 = HEAP32[$3>>2]|0; - $12 = (($11) + 4|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 4|0); - HEAP32[$15>>2] = $13; - $16 = HEAP32[$4>>2]|0; - $17 = (($16) + 4|0); - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$4>>2]|0; - $20 = HEAP32[$19>>2]|0; - $21 = (($20) + ($18)|0); - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 8|0); - HEAP32[$23>>2] = $21; - STACKTOP = sp;return; -} -function _binaryToUnaryIfNull($pParse,$pY,$pA,$op) { - $pParse = $pParse|0; - $pY = $pY|0; - $pA = $pA|0; - $op = $op|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pY; - HEAP32[$2>>2] = $pA; - HEAP32[$3>>2] = $op; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$db>>2]|0; - $7 = (($6) + 64|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - $10 = ($9|0)==(0); - if (!($10)) { - STACKTOP = sp;return; - } - $11 = HEAP32[$1>>2]|0; - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = ($13|0)==(101); - if (!($14)) { - STACKTOP = sp;return; - } - $15 = HEAP32[$3>>2]|0; - $16 = $15&255; - $17 = HEAP32[$2>>2]|0; - HEAP8[$17>>0] = $16; - $18 = HEAP32[$db>>2]|0; - $19 = HEAP32[$2>>2]|0; - $20 = (($19) + 16|0); - $21 = HEAP32[$20>>2]|0; - _sqlite3ExprDelete($18,$21); - $22 = HEAP32[$2>>2]|0; - $23 = (($22) + 16|0); - HEAP32[$23>>2] = 0; - STACKTOP = sp;return; -} -function _spanUnaryPrefix($pOut,$pParse,$op,$pOperand,$pPreOp) { - $pOut = $pOut|0; - $pParse = $pParse|0; - $op = $op|0; - $pOperand = $pOperand|0; - $pPreOp = $pPreOp|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $4 = sp; - HEAP32[$0>>2] = $pOut; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $op; - HEAP32[$3>>2] = $pOperand; - HEAP32[$4>>2] = $pPreOp; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$3>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3PExpr($5,$6,$8,0,0)|0); - $10 = HEAP32[$0>>2]|0; - HEAP32[$10>>2] = $9; - $11 = HEAP32[$4>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 4|0); - HEAP32[$14>>2] = $12; - $15 = HEAP32[$3>>2]|0; - $16 = (($15) + 8|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 8|0); - HEAP32[$19>>2] = $17; - STACKTOP = sp;return; -} -function _sqlite3ExprSetHeight($pParse,$p) { - $pParse = $pParse|0; - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - _exprSetHeight($2); - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 24|0); - $6 = HEAP32[$5>>2]|0; - (_sqlite3ExprCheckHeight($3,$6)|0); - STACKTOP = sp;return; -} -function _sqlite3DropIndex($pParse,$pName,$ifExists) { - $pParse = $pParse|0; - $pName = $pName|0; - $ifExists = $ifExists|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; - var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; - var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; - var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; - var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; - var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $code = 0, $db = 0, $iDb = 0, $pIndex = 0, $pTab = 0, $v = 0, $vararg_buffer5 = 0, $vararg_ptr1 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, $zDb = 0, $zTab = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer5 = sp; - $0 = sp + 52|0; - $1 = sp + 48|0; - $2 = sp + 44|0; - $pIndex = sp + 40|0; - $v = sp + 36|0; - $db = sp + 32|0; - $iDb = sp + 28|0; - $code = sp + 24|0; - $pTab = sp + 20|0; - $zDb = sp + 16|0; - $zTab = sp + 12|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pName; - HEAP32[$2>>2] = $ifExists; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - $5 = HEAP32[$db>>2]|0; - $6 = (($5) + 64|0); - $7 = HEAP8[$6>>0]|0; - $8 = ($7<<24>>24)!=(0); - if ($8) { - $106 = HEAP32[$db>>2]|0; - $107 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($106,$107); - STACKTOP = sp;return; - } - $9 = HEAP32[$0>>2]|0; - $10 = (_sqlite3ReadSchema($9)|0); - $11 = (0)!=($10|0); - if ($11) { - $106 = HEAP32[$db>>2]|0; - $107 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($106,$107); - STACKTOP = sp;return; - } - $12 = HEAP32[$db>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 8|0); - $15 = (($14) + 8|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 8|0); - $19 = (($18) + 4|0); - $20 = HEAP32[$19>>2]|0; - $21 = (_sqlite3FindIndex($12,$16,$20)|0); - HEAP32[$pIndex>>2] = $21; - $22 = HEAP32[$pIndex>>2]|0; - $23 = ($22|0)==(0|0); - if ($23) { - $24 = HEAP32[$2>>2]|0; - $25 = ($24|0)!=(0); - $26 = HEAP32[$0>>2]|0; - $27 = HEAP32[$1>>2]|0; - if ($25) { - $28 = (($27) + 8|0); - $29 = (($28) + 4|0); - $30 = HEAP32[$29>>2]|0; - _sqlite3CodeVerifyNamedSchema($26,$30); - } else { - HEAP32[$vararg_buffer5>>2] = $27; - $vararg_ptr1 = (($vararg_buffer5) + 4|0); - HEAP32[$vararg_ptr1>>2] = 0; - _sqlite3ErrorMsg($26,22912,$vararg_buffer5); - } - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 17|0); - HEAP8[$32>>0] = 1; - $106 = HEAP32[$db>>2]|0; - $107 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($106,$107); - STACKTOP = sp;return; - } - $33 = HEAP32[$pIndex>>2]|0; - $34 = (($33) + 55|0); - $35 = HEAP8[$34>>0]|0; - $36 = $35 & 3; - $37 = $36&255; - $38 = ($37|0)!=(0); - if ($38) { - $39 = HEAP32[$0>>2]|0; - HEAP32[$vararg_buffer5>>2] = 0; - _sqlite3ErrorMsg($39,22936,$vararg_buffer5); - $106 = HEAP32[$db>>2]|0; - $107 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($106,$107); - STACKTOP = sp;return; - } - $40 = HEAP32[$db>>2]|0; - $41 = HEAP32[$pIndex>>2]|0; - $42 = (($41) + 24|0); - $43 = HEAP32[$42>>2]|0; - $44 = (_sqlite3SchemaToIndex($40,$43)|0); - HEAP32[$iDb>>2] = $44; - HEAP32[$code>>2] = 10; - $45 = HEAP32[$pIndex>>2]|0; - $46 = (($45) + 12|0); - $47 = HEAP32[$46>>2]|0; - HEAP32[$pTab>>2] = $47; - $48 = HEAP32[$iDb>>2]|0; - $49 = HEAP32[$db>>2]|0; - $50 = (($49) + 16|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + ($48<<4)|0); - $53 = HEAP32[$52>>2]|0; - HEAP32[$zDb>>2] = $53; - $54 = HEAP32[$iDb>>2]|0; - $55 = ($54|0)==(1); - $56 = $55 ? 14808 : 14832; - HEAP32[$zTab>>2] = $56; - $57 = HEAP32[$0>>2]|0; - $58 = HEAP32[$zTab>>2]|0; - $59 = HEAP32[$zDb>>2]|0; - $60 = (_sqlite3AuthCheck($57,9,$58,0,$59)|0); - $61 = ($60|0)!=(0); - if ($61) { - $106 = HEAP32[$db>>2]|0; - $107 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($106,$107); - STACKTOP = sp;return; - } - $62 = HEAP32[$iDb>>2]|0; - $63 = ($62|0)!=(0); - if ($63) { - HEAP32[$code>>2] = 12; - } - $64 = HEAP32[$0>>2]|0; - $65 = HEAP32[$code>>2]|0; - $66 = HEAP32[$pIndex>>2]|0; - $67 = HEAP32[$66>>2]|0; - $68 = HEAP32[$pTab>>2]|0; - $69 = HEAP32[$68>>2]|0; - $70 = HEAP32[$zDb>>2]|0; - $71 = (_sqlite3AuthCheck($64,$65,$67,$69,$70)|0); - $72 = ($71|0)!=(0); - if ($72) { - $106 = HEAP32[$db>>2]|0; - $107 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($106,$107); - STACKTOP = sp;return; - } - $73 = HEAP32[$0>>2]|0; - $74 = (_sqlite3GetVdbe($73)|0); - HEAP32[$v>>2] = $74; - $75 = HEAP32[$v>>2]|0; - $76 = ($75|0)!=(0|0); - if (!($76)) { - $106 = HEAP32[$db>>2]|0; - $107 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($106,$107); - STACKTOP = sp;return; - } - $77 = HEAP32[$0>>2]|0; - $78 = HEAP32[$iDb>>2]|0; - _sqlite3BeginWriteOperation($77,1,$78); - $79 = HEAP32[$0>>2]|0; - $80 = HEAP32[$iDb>>2]|0; - $81 = HEAP32[$db>>2]|0; - $82 = (($81) + 16|0); - $83 = HEAP32[$82>>2]|0; - $84 = (($83) + ($80<<4)|0); - $85 = HEAP32[$84>>2]|0; - $86 = HEAP32[$iDb>>2]|0; - $87 = ($86|0)==(1); - $88 = $87 ? 14808 : 14832; - $89 = HEAP32[$pIndex>>2]|0; - $90 = HEAP32[$89>>2]|0; - HEAP32[$vararg_buffer5>>2] = $85; - $vararg_ptr8 = (($vararg_buffer5) + 4|0); - HEAP32[$vararg_ptr8>>2] = $88; - $vararg_ptr9 = (($vararg_buffer5) + 8|0); - HEAP32[$vararg_ptr9>>2] = $90; - _sqlite3NestedParse($79,23016,$vararg_buffer5); - $91 = HEAP32[$0>>2]|0; - $92 = HEAP32[$iDb>>2]|0; - $93 = HEAP32[$pIndex>>2]|0; - $94 = HEAP32[$93>>2]|0; - _sqlite3ClearStatTables($91,$92,18064,$94); - $95 = HEAP32[$0>>2]|0; - $96 = HEAP32[$iDb>>2]|0; - _sqlite3ChangeCookie($95,$96); - $97 = HEAP32[$0>>2]|0; - $98 = HEAP32[$pIndex>>2]|0; - $99 = (($98) + 44|0); - $100 = HEAP32[$99>>2]|0; - $101 = HEAP32[$iDb>>2]|0; - _destroyRootPage($97,$100,$101); - $102 = HEAP32[$v>>2]|0; - $103 = HEAP32[$iDb>>2]|0; - $104 = HEAP32[$pIndex>>2]|0; - $105 = HEAP32[$104>>2]|0; - (_sqlite3VdbeAddOp4($102,122,$103,0,0,$105,0)|0); - $106 = HEAP32[$db>>2]|0; - $107 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($106,$107); - STACKTOP = sp;return; -} -function _sqlite3Vacuum($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $v = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3GetVdbe($1)|0); - HEAP32[$v>>2] = $2; - $3 = HEAP32[$v>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($5,13,0,0)|0); - $6 = HEAP32[$v>>2]|0; - _sqlite3VdbeUsesBtree($6,0); - STACKTOP = sp;return; -} -function _sqlite3Pragma($pParse,$pId1,$pId2,$pValue,$minusFlag) { - $pParse = $pParse|0; - $pId1 = $pId1|0; - $pId2 = $pId2|0; - $pValue = $pValue|0; - $minusFlag = $minusFlag|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0; - var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0; - var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0; - var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0; - var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0; - var $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0; - var $1105 = 0, $1106 = 0, $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0; - var $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0; - var $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0; - var $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0; - var $1178 = 0, $1179 = 0, $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0; - var $1196 = 0, $1197 = 0, $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0; - var $1213 = 0, $1214 = 0, $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0; - var $1231 = 0, $1232 = 0, $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0; - var $125 = 0, $1250 = 0, $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0, $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0; - var $1268 = 0, $1269 = 0, $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0, $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0; - var $1286 = 0, $1287 = 0, $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0, $1292 = 0, $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, $1299 = 0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0; - var $1303 = 0, $1304 = 0, $1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0, $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0; - var $1321 = 0, $1322 = 0, $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0, $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 0, $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0; - var $134 = 0, $1340 = 0, $1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 0, $1346 = 0, $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, $1352 = 0, $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0; - var $1358 = 0, $1359 = 0, $136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 0, $1364 = 0, $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, $1370 = 0, $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0; - var $1376 = 0, $1377 = 0, $1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 0, $1382 = 0, $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, $1389 = 0, $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0; - var $1394 = 0, $1395 = 0, $1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 0, $140 = 0, $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, $1406 = 0, $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0; - var $1411 = 0, $1412 = 0, $1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 0, $1418 = 0, $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, $1424 = 0, $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0; - var $143 = 0, $1430 = 0, $1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 0, $1436 = 0, $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, $1442 = 0, $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0; - var $1448 = 0, $1449 = 0, $145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 0, $1454 = 0, $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, $1460 = 0, $1461 = 0, $1462 = 0, $1463 = 0, $1464 = 0, $1465 = 0; - var $1466 = 0, $1467 = 0, $1468 = 0, $1469 = 0, $147 = 0, $1470 = 0, $1471 = 0, $1472 = 0, $1473 = 0, $1474 = 0, $1475 = 0, $1476 = 0, $1477 = 0, $1478 = 0, $1479 = 0, $148 = 0, $1480 = 0, $1481 = 0, $1482 = 0, $1483 = 0; - var $1484 = 0, $1485 = 0, $1486 = 0, $1487 = 0, $1488 = 0, $1489 = 0, $149 = 0, $1490 = 0, $1491 = 0, $1492 = 0, $1493 = 0, $1494 = 0, $1495 = 0, $1496 = 0, $1497 = 0, $1498 = 0, $1499 = 0, $15 = 0, $150 = 0, $1500 = 0; - var $1501 = 0, $1502 = 0, $1503 = 0, $1504 = 0, $1505 = 0, $1506 = 0, $1507 = 0, $1508 = 0, $1509 = 0, $151 = 0, $1510 = 0, $1511 = 0, $1512 = 0, $1513 = 0, $1514 = 0, $1515 = 0, $1516 = 0, $1517 = 0, $1518 = 0, $1519 = 0; - var $152 = 0, $1520 = 0, $1521 = 0, $1522 = 0, $1523 = 0, $1524 = 0, $1525 = 0, $1526 = 0, $1527 = 0, $1528 = 0, $1529 = 0, $153 = 0, $1530 = 0, $1531 = 0, $1532 = 0, $1533 = 0, $1534 = 0, $1535 = 0, $1536 = 0, $1537 = 0; - var $1538 = 0, $1539 = 0, $154 = 0, $1540 = 0, $1541 = 0, $1542 = 0, $1543 = 0, $1544 = 0, $1545 = 0, $1546 = 0, $1547 = 0, $1548 = 0, $1549 = 0, $155 = 0, $1550 = 0, $1551 = 0, $1552 = 0, $1553 = 0, $1554 = 0, $1555 = 0; - var $1556 = 0, $1557 = 0, $1558 = 0, $1559 = 0, $156 = 0, $1560 = 0, $1561 = 0, $1562 = 0, $1563 = 0, $1564 = 0, $1565 = 0, $1566 = 0, $1567 = 0, $1568 = 0, $1569 = 0, $157 = 0, $1570 = 0, $1571 = 0, $1572 = 0, $1573 = 0; - var $1574 = 0, $1575 = 0, $1576 = 0, $1577 = 0, $1578 = 0, $1579 = 0, $158 = 0, $1580 = 0, $1581 = 0, $1582 = 0, $1583 = 0, $1584 = 0, $1585 = 0, $1586 = 0, $1587 = 0, $1588 = 0, $1589 = 0, $159 = 0, $1590 = 0, $1591 = 0; - var $1592 = 0, $1593 = 0, $1594 = 0, $1595 = 0, $1596 = 0, $1597 = 0, $1598 = 0, $1599 = 0, $16 = 0, $160 = 0, $1600 = 0, $1601 = 0, $1602 = 0, $1603 = 0, $1604 = 0, $1605 = 0, $1606 = 0, $1607 = 0, $1608 = 0, $1609 = 0; - var $161 = 0, $1610 = 0, $1611 = 0, $1612 = 0, $1613 = 0, $1614 = 0, $1615 = 0, $1616 = 0, $1617 = 0, $1618 = 0, $1619 = 0, $162 = 0, $1620 = 0, $1621 = 0, $1622 = 0, $1623 = 0, $1624 = 0, $1625 = 0, $1626 = 0, $1627 = 0; - var $1628 = 0, $1629 = 0, $163 = 0, $1630 = 0, $1631 = 0, $1632 = 0, $1633 = 0, $1634 = 0, $1635 = 0, $1636 = 0, $1637 = 0, $1638 = 0, $1639 = 0, $164 = 0, $1640 = 0, $1641 = 0, $1642 = 0, $1643 = 0, $1644 = 0, $1645 = 0; - var $1646 = 0, $1647 = 0, $1648 = 0, $1649 = 0, $165 = 0, $1650 = 0, $1651 = 0, $1652 = 0, $1653 = 0, $1654 = 0, $1655 = 0, $1656 = 0, $1657 = 0, $1658 = 0, $1659 = 0, $166 = 0, $1660 = 0, $1661 = 0, $1662 = 0, $1663 = 0; - var $1664 = 0, $1665 = 0, $1666 = 0, $1667 = 0, $1668 = 0, $1669 = 0, $167 = 0, $1670 = 0, $1671 = 0, $1672 = 0, $1673 = 0, $1674 = 0, $1675 = 0, $1676 = 0, $1677 = 0, $1678 = 0, $1679 = 0, $168 = 0, $1680 = 0, $1681 = 0; - var $1682 = 0, $1683 = 0, $1684 = 0, $1685 = 0, $1686 = 0, $1687 = 0, $1688 = 0, $1689 = 0, $169 = 0, $1690 = 0, $1691 = 0, $1692 = 0, $1693 = 0, $1694 = 0, $1695 = 0, $1696 = 0, $1697 = 0, $1698 = 0, $1699 = 0, $17 = 0; - var $170 = 0, $1700 = 0, $1701 = 0, $1702 = 0, $1703 = 0, $1704 = 0, $1705 = 0, $1706 = 0, $1707 = 0, $1708 = 0, $1709 = 0, $171 = 0, $1710 = 0, $1711 = 0, $1712 = 0, $1713 = 0, $1714 = 0, $1715 = 0, $1716 = 0, $1717 = 0; - var $1718 = 0, $1719 = 0, $172 = 0, $1720 = 0, $1721 = 0, $1722 = 0, $1723 = 0, $1724 = 0, $1725 = 0, $1726 = 0, $1727 = 0, $1728 = 0, $1729 = 0, $173 = 0, $1730 = 0, $1731 = 0, $1732 = 0, $1733 = 0, $1734 = 0, $1735 = 0; - var $1736 = 0, $1737 = 0, $1738 = 0, $1739 = 0, $174 = 0, $1740 = 0, $1741 = 0, $1742 = 0, $1743 = 0, $1744 = 0, $1745 = 0, $1746 = 0, $1747 = 0, $1748 = 0, $1749 = 0, $175 = 0, $1750 = 0, $1751 = 0, $1752 = 0, $1753 = 0; - var $1754 = 0, $1755 = 0, $1756 = 0, $1757 = 0, $1758 = 0, $1759 = 0, $176 = 0, $1760 = 0, $1761 = 0, $1762 = 0, $1763 = 0, $1764 = 0, $1765 = 0, $1766 = 0, $1767 = 0, $1768 = 0, $1769 = 0, $177 = 0, $1770 = 0, $1771 = 0; - var $1772 = 0, $1773 = 0, $1774 = 0, $1775 = 0, $1776 = 0, $1777 = 0, $1778 = 0, $1779 = 0, $178 = 0, $1780 = 0, $1781 = 0, $1782 = 0, $1783 = 0, $1784 = 0, $1785 = 0, $1786 = 0, $1787 = 0, $1788 = 0, $1789 = 0, $179 = 0; - var $1790 = 0, $1791 = 0, $1792 = 0, $1793 = 0, $1794 = 0, $1795 = 0, $1796 = 0, $1797 = 0, $1798 = 0, $1799 = 0, $18 = 0, $180 = 0, $1800 = 0, $1801 = 0, $1802 = 0, $1803 = 0, $1804 = 0, $1805 = 0, $1806 = 0, $1807 = 0; - var $1808 = 0, $1809 = 0, $181 = 0, $1810 = 0, $1811 = 0, $1812 = 0, $1813 = 0, $1814 = 0, $1815 = 0, $1816 = 0, $1817 = 0, $1818 = 0, $1819 = 0, $182 = 0, $1820 = 0, $1821 = 0, $1822 = 0, $1823 = 0, $1824 = 0, $1825 = 0; - var $1826 = 0, $1827 = 0, $1828 = 0, $1829 = 0, $183 = 0, $1830 = 0, $1831 = 0, $1832 = 0, $1833 = 0, $1834 = 0, $1835 = 0, $1836 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0; - var $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0; - var $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0; - var $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0; - var $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0; - var $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0; - var $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0; - var $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0; - var $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0; - var $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0; - var $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0; - var $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0; - var $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0; - var $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0; - var $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0; - var $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0; - var $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0; - var $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0; - var $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0; - var $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0; - var $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0; - var $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0; - var $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0; - var $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0; - var $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0; - var $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0; - var $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0; - var $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0; - var $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0; - var $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0; - var $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0; - var $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0; - var $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0; - var $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0; - var $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0; - var $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0; - var $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0; - var $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0; - var $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0; - var $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0; - var $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0; - var $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0; - var $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0; - var $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0; - var $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0, $983 = 0; - var $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $N = 0, $aFcntl = 0, $addr = 0; - var $addr31 = 0, $addr38 = 0, $addr39 = 0, $addr9 = 0, $addrOk = 0, $addrTop = 0, $aiCols = 0, $b = 0, $cnt = 0, $cnum = 0, $db = 0, $eAuto = 0, $eMode = 0, $eMode4 = 0, $eMode41 = 0, $i = 0, $i11 = 0, $i15 = 0, $i18 = 0, $i19 = 0; - var $i20 = 0, $i22 = 0, $i26 = 0, $i29 = 0, $i40 = 0, $iAddr = 0, $iBt = 0, $iCookie = 0, $iDataCur = 0, $iDb = 0, $iIdxCur = 0, $iKey = 0, $iLimit = 0, $iLimit8 = 0, $iReg = 0, $ii = 0, $ii3 = 0, $ii5 = 0, $isQuick = 0, $j = 0; - var $j27 = 0, $j30 = 0, $jmp2 = 0, $jmp3 = 0, $jmp4 = 0, $k = 0, $k28 = 0, $loopTop = 0, $lwr = 0, $mask = 0, $mem = 0, $mid = 0, $mxErr = 0, $n = 0, $nHidden = 0, $or$cond = 0, $or$cond3 = 0, $p = 0, $pBt = 0, $pBt2 = 0; - var $pBt7 = 0, $pCol = 0, $pColl = 0, $pDb = 0, $pEnc = 0, $pFK = 0, $pFK23 = 0, $pId = 0, $pIdx = 0, $pIdx13 = 0, $pIdx16 = 0, $pIdx25 = 0, $pIdx34 = 0, $pIdx36 = 0, $pPager = 0, $pPager6 = 0, $pParent = 0, $pPk = 0, $pPk37 = 0, $pPrior = 0; - var $pTab = 0, $pTab12 = 0, $pTab14 = 0, $pTab17 = 0, $pTab21 = 0, $pTab24 = 0, $pTab33 = 0, $pTab35 = 0, $pTbls = 0, $r1 = 0, $rc = 0, $regKey = 0, $regResult = 0, $regRow = 0, $res = 0, $size = 0, $size1 = 0, $size10 = 0, $sz = 0, $upr = 0; - var $v = 0, $vararg_buffer18 = 0, $x = 0, $x32 = 0, $zCol = 0, $zDb = 0, $zLeft = 0, $zMode = 0, $zOnDelete = 0, $zOnUpdate = 0, $zOpt = 0, $zRet = 0, $zRight = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 512|0; - $vararg_buffer18 = sp + 24|0; - $0 = sp + 496|0; - $1 = sp + 492|0; - $2 = sp + 488|0; - $3 = sp + 484|0; - $4 = sp + 480|0; - $zLeft = sp + 476|0; - $zRight = sp + 472|0; - $zDb = sp + 468|0; - $pId = sp + 464|0; - $aFcntl = sp + 448|0; - $iDb = sp + 440|0; - $lwr = sp + 436|0; - $upr = sp + 432|0; - $mid = sp + 428|0; - $rc = sp + 424|0; - $db = sp + 420|0; - $pDb = sp + 416|0; - $v = sp + 412|0; - $mem = sp + 408|0; - $addr = sp + 404|0; - $size = sp + 400|0; - $pBt = sp + 396|0; - $size1 = sp + 392|0; - $pBt2 = sp + 388|0; - $b = sp + 384|0; - $ii = sp + 380|0; - $iReg = sp + 376|0; - $zRet = sp + 372|0; - $eMode = sp + 368|0; - $pPager = sp + 364|0; - $ii3 = sp + 360|0; - $eMode4 = sp + 356|0; - $ii5 = sp + 352|0; - $zMode = sp + 348|0; - $n = sp + 344|0; - $pPager6 = sp + 340|0; - $iLimit = sp + 16|0; - $pBt7 = sp + 336|0; - $eAuto = sp + 332|0; - $iAddr = sp + 328|0; - $iLimit8 = sp + 324|0; - $addr9 = sp + 320|0; - $size10 = sp + 316|0; - $sz = sp + 8|0; - $res = sp + 312|0; - $mask = sp + 308|0; - $pTab = sp + 304|0; - $i = sp + 300|0; - $k = sp + 296|0; - $nHidden = sp + 292|0; - $pCol = sp + 288|0; - $pPk = sp + 284|0; - $pIdx = sp + 280|0; - $i11 = sp + 276|0; - $pTab12 = sp + 272|0; - $pIdx13 = sp + 268|0; - $pTab14 = sp + 264|0; - $i15 = sp + 260|0; - $cnum = sp + 500|0; - $pIdx16 = sp + 256|0; - $pTab17 = sp + 252|0; - $i18 = sp + 248|0; - $i19 = sp + 244|0; - $i20 = sp + 240|0; - $p = sp + 236|0; - $pColl = sp + 232|0; - $pFK = sp + 228|0; - $pTab21 = sp + 224|0; - $i22 = sp + 220|0; - $j = sp + 216|0; - $zCol = sp + 212|0; - $zOnDelete = sp + 208|0; - $zOnUpdate = sp + 204|0; - $pFK23 = sp + 200|0; - $pTab24 = sp + 196|0; - $pParent = sp + 192|0; - $pIdx25 = sp + 188|0; - $i26 = sp + 184|0; - $j27 = sp + 180|0; - $k28 = sp + 176|0; - $x = sp + 172|0; - $regResult = sp + 168|0; - $regKey = sp + 164|0; - $regRow = sp + 160|0; - $addrTop = sp + 156|0; - $addrOk = sp + 152|0; - $aiCols = sp + 148|0; - $iKey = sp + 144|0; - $i29 = sp + 140|0; - $j30 = sp + 136|0; - $addr31 = sp + 132|0; - $mxErr = sp + 128|0; - $isQuick = sp + 124|0; - $x32 = sp + 120|0; - $pTbls = sp + 116|0; - $cnt = sp + 112|0; - $pTab33 = sp + 108|0; - $pIdx34 = sp + 104|0; - $pTab35 = sp + 100|0; - $pIdx36 = sp + 96|0; - $pPk37 = sp + 92|0; - $pPrior = sp + 88|0; - $loopTop = sp + 84|0; - $iDataCur = sp + 80|0; - $iIdxCur = sp + 76|0; - $r1 = sp + 72|0; - $jmp2 = sp + 68|0; - $jmp3 = sp + 64|0; - $jmp4 = sp + 60|0; - $pEnc = sp + 56|0; - $iCookie = sp + 52|0; - $addr38 = sp + 48|0; - $addr39 = sp + 44|0; - $i40 = sp + 40|0; - $zOpt = sp + 36|0; - $iBt = sp + 32|0; - $eMode41 = sp + 28|0; - $N = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pId1; - HEAP32[$2>>2] = $pId2; - HEAP32[$3>>2] = $pValue; - HEAP32[$4>>2] = $minusFlag; - HEAP32[$zLeft>>2] = 0; - HEAP32[$zRight>>2] = 0; - HEAP32[$zDb>>2] = 0; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = (_sqlite3GetVdbe($7)|0); - HEAP32[$v>>2] = $8; - $9 = HEAP32[$v>>2]|0; - $10 = ($9|0)==(0|0); - if ($10) { - STACKTOP = sp;return; - } - $11 = HEAP32[$v>>2]|0; - _sqlite3VdbeRunOnlyOnce($11); - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 72|0); - HEAP32[$13>>2] = 2; - $14 = HEAP32[$0>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = HEAP32[$2>>2]|0; - $17 = (_sqlite3TwoPartName($14,$15,$16,$pId)|0); - HEAP32[$iDb>>2] = $17; - $18 = HEAP32[$iDb>>2]|0; - $19 = ($18|0)<(0); - if ($19) { - STACKTOP = sp;return; - } - $20 = HEAP32[$iDb>>2]|0; - $21 = HEAP32[$db>>2]|0; - $22 = (($21) + 16|0); - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + ($20<<4)|0); - HEAP32[$pDb>>2] = $24; - $25 = HEAP32[$iDb>>2]|0; - $26 = ($25|0)==(1); - if ($26) { - $27 = HEAP32[$0>>2]|0; - $28 = (_sqlite3OpenTempDatabase($27)|0); - $29 = ($28|0)!=(0); - if ($29) { - STACKTOP = sp;return; - } - } - $30 = HEAP32[$db>>2]|0; - $31 = HEAP32[$pId>>2]|0; - $32 = (_sqlite3NameFromToken($30,$31)|0); - HEAP32[$zLeft>>2] = $32; - $33 = HEAP32[$zLeft>>2]|0; - $34 = ($33|0)!=(0|0); - if (!($34)) { - STACKTOP = sp;return; - } - $35 = HEAP32[$4>>2]|0; - $36 = ($35|0)!=(0); - $37 = HEAP32[$db>>2]|0; - $38 = HEAP32[$3>>2]|0; - if ($36) { - HEAP32[$vararg_buffer18>>2] = $38; - $39 = (_sqlite3MPrintf($37,20168,$vararg_buffer18)|0); - HEAP32[$zRight>>2] = $39; - } else { - $40 = (_sqlite3NameFromToken($37,$38)|0); - HEAP32[$zRight>>2] = $40; - } - $41 = HEAP32[$2>>2]|0; - $42 = (($41) + 4|0); - $43 = HEAP32[$42>>2]|0; - $44 = ($43>>>0)>(0); - if ($44) { - $45 = HEAP32[$pDb>>2]|0; - $46 = HEAP32[$45>>2]|0; - $47 = $46; - } else { - $47 = 0; - } - HEAP32[$zDb>>2] = $47; - $48 = HEAP32[$0>>2]|0; - $49 = HEAP32[$zLeft>>2]|0; - $50 = HEAP32[$zRight>>2]|0; - $51 = HEAP32[$zDb>>2]|0; - $52 = (_sqlite3AuthCheck($48,19,$49,$50,$51)|0); - $53 = ($52|0)!=(0); - L21: do { - if (!($53)) { - HEAP32[$aFcntl>>2] = 0; - $54 = HEAP32[$zLeft>>2]|0; - $55 = (($aFcntl) + 4|0); - HEAP32[$55>>2] = $54; - $56 = HEAP32[$zRight>>2]|0; - $57 = (($aFcntl) + 8|0); - HEAP32[$57>>2] = $56; - $58 = (($aFcntl) + 12|0); - HEAP32[$58>>2] = 0; - $59 = HEAP32[$db>>2]|0; - $60 = (($59) + 436|0); - $61 = (($60) + 8|0); - HEAP32[$61>>2] = 0; - $62 = HEAP32[$db>>2]|0; - $63 = HEAP32[$zDb>>2]|0; - $64 = (_sqlite3_file_control($62,$63,14,$aFcntl)|0); - HEAP32[$rc>>2] = $64; - $65 = HEAP32[$rc>>2]|0; - $66 = ($65|0)==(0); - if ($66) { - $67 = HEAP32[$aFcntl>>2]|0; - $68 = ($67|0)!=(0|0); - if (!($68)) { - break; - } - $69 = HEAP32[$0>>2]|0; - $70 = (($69) + 72|0); - $71 = HEAP32[$70>>2]|0; - $72 = (($71) + 1)|0; - HEAP32[$70>>2] = $72; - HEAP32[$mem>>2] = $72; - $73 = HEAP32[$v>>2]|0; - $74 = HEAP32[$mem>>2]|0; - $75 = HEAP32[$aFcntl>>2]|0; - (_sqlite3VdbeAddOp4($73,97,0,$74,0,$75,0)|0); - $76 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($76,1); - $77 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($77,0,0,20176,0)|0); - $78 = HEAP32[$v>>2]|0; - $79 = HEAP32[$mem>>2]|0; - (_sqlite3VdbeAddOp2($78,35,$79,1)|0); - $80 = HEAP32[$aFcntl>>2]|0; - _sqlite3_free($80); - break; - } - $81 = HEAP32[$rc>>2]|0; - $82 = ($81|0)!=(12); - if ($82) { - $83 = HEAP32[$aFcntl>>2]|0; - $84 = ($83|0)!=(0|0); - if ($84) { - $85 = HEAP32[$0>>2]|0; - $86 = HEAP32[$aFcntl>>2]|0; - HEAP32[$vararg_buffer18>>2] = $86; - _sqlite3ErrorMsg($85,1456,$vararg_buffer18); - $87 = HEAP32[$aFcntl>>2]|0; - _sqlite3_free($87); - } - $88 = HEAP32[$0>>2]|0; - $89 = (($88) + 64|0); - $90 = HEAP32[$89>>2]|0; - $91 = (($90) + 1)|0; - HEAP32[$89>>2] = $91; - $92 = HEAP32[$rc>>2]|0; - $93 = HEAP32[$0>>2]|0; - $94 = (($93) + 12|0); - HEAP32[$94>>2] = $92; - break; - } - HEAP32[$lwr>>2] = 0; - HEAP32[$upr>>2] = 53; - while(1) { - $95 = HEAP32[$lwr>>2]|0; - $96 = HEAP32[$upr>>2]|0; - $97 = ($95|0)<=($96|0); - if (!($97)) { - break; - } - $98 = HEAP32[$lwr>>2]|0; - $99 = HEAP32[$upr>>2]|0; - $100 = (($98) + ($99))|0; - $101 = (($100|0) / 2)&-1; - HEAP32[$mid>>2] = $101; - $102 = HEAP32[$zLeft>>2]|0; - $103 = HEAP32[$mid>>2]|0; - $104 = (20184 + (($103*12)|0)|0); - $105 = HEAP32[$104>>2]|0; - $106 = (_sqlite3_stricmp($102,$105)|0); - HEAP32[$rc>>2] = $106; - $107 = HEAP32[$rc>>2]|0; - $108 = ($107|0)==(0); - if ($108) { - break; - } - $109 = HEAP32[$rc>>2]|0; - $110 = ($109|0)<(0); - $111 = HEAP32[$mid>>2]|0; - if ($110) { - $112 = (($111) - 1)|0; - HEAP32[$upr>>2] = $112; - continue; - } else { - $113 = (($111) + 1)|0; - HEAP32[$lwr>>2] = $113; - continue; - } - } - $114 = HEAP32[$lwr>>2]|0; - $115 = HEAP32[$upr>>2]|0; - $116 = ($114|0)>($115|0); - if (!($116)) { - $117 = HEAP32[$mid>>2]|0; - $118 = (20184 + (($117*12)|0)|0); - $119 = (($118) + 5|0); - $120 = HEAP8[$119>>0]|0; - $121 = $120&255; - $122 = $121 & 1; - $123 = ($122|0)!=(0); - if ($123) { - $124 = HEAP32[$0>>2]|0; - $125 = (_sqlite3ReadSchema($124)|0); - $126 = ($125|0)!=(0); - if ($126) { - break; - } - } - $127 = HEAP32[$mid>>2]|0; - $128 = (20184 + (($127*12)|0)|0); - $129 = (($128) + 4|0); - $130 = HEAP8[$129>>0]|0; - $131 = $130&255; - do { - switch ($131|0) { - case 24: { - $176 = HEAP32[$pDb>>2]|0; - $177 = (($176) + 4|0); - $178 = HEAP32[$177>>2]|0; - HEAP32[$pBt>>2] = $178; - $179 = HEAP32[$zRight>>2]|0; - $180 = ($179|0)!=(0|0); - if ($180) { - $190 = HEAP32[$zRight>>2]|0; - $191 = (_sqlite3Atoi($190)|0); - $192 = HEAP32[$db>>2]|0; - $193 = (($192) + 72|0); - HEAP32[$193>>2] = $191; - $194 = HEAP32[$pBt>>2]|0; - $195 = HEAP32[$db>>2]|0; - $196 = (($195) + 72|0); - $197 = HEAP32[$196>>2]|0; - $198 = (_sqlite3BtreeSetPageSize($194,$197,-1,0)|0); - $199 = (7)==($198|0); - if (!($199)) { - break L21; - } - $200 = HEAP32[$db>>2]|0; - $201 = (($200) + 64|0); - HEAP8[$201>>0] = 1; - break L21; - } - $181 = HEAP32[$pBt>>2]|0; - $182 = ($181|0)!=(0|0); - if ($182) { - $183 = HEAP32[$pBt>>2]|0; - $184 = (_sqlite3BtreeGetPageSize($183)|0); - $185 = $184; - } else { - $185 = 0; - } - HEAP32[$size1>>2] = $185; - $186 = HEAP32[$0>>2]|0; - $187 = HEAP32[$size1>>2]|0; - $188 = ($187|0)<(0); - $189 = $188 << 31 >> 31; - _returnSingleInt($186,20888,$187,$189); - break L21; - break; - } - case 18: { - $313 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($313,1); - $314 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($314,0,0,20960,0)|0); - $315 = HEAP32[$zRight>>2]|0; - $316 = ($315|0)==(0|0); - if ($316) { - HEAP32[$eMode4>>2] = -1; - } else { - $317 = HEAP32[$zRight>>2]|0; - $318 = (_sqlite3Strlen30($317)|0); - HEAP32[$n>>2] = $318; - HEAP32[$eMode4>>2] = 0; - while(1) { - $319 = HEAP32[$eMode4>>2]|0; - $320 = (_sqlite3JournalModename($319)|0); - HEAP32[$zMode>>2] = $320; - $321 = ($320|0)!=(0|0); - if (!($321)) { - break; - } - $322 = HEAP32[$zRight>>2]|0; - $323 = HEAP32[$zMode>>2]|0; - $324 = HEAP32[$n>>2]|0; - $325 = (_sqlite3_strnicmp($322,$323,$324)|0); - $326 = ($325|0)==(0); - if ($326) { - break; - } - $327 = HEAP32[$eMode4>>2]|0; - $328 = (($327) + 1)|0; - HEAP32[$eMode4>>2] = $328; - } - $329 = HEAP32[$zMode>>2]|0; - $330 = ($329|0)!=(0|0); - if (!($330)) { - HEAP32[$eMode4>>2] = -1; - } - } - $331 = HEAP32[$eMode4>>2]|0; - $332 = ($331|0)==(-1); - if ($332) { - $333 = HEAP32[$2>>2]|0; - $334 = (($333) + 4|0); - $335 = HEAP32[$334>>2]|0; - $336 = ($335|0)==(0); - if ($336) { - HEAP32[$iDb>>2] = 0; - $337 = HEAP32[$2>>2]|0; - $338 = (($337) + 4|0); - HEAP32[$338>>2] = 1; - } - } - $339 = HEAP32[$db>>2]|0; - $340 = (($339) + 20|0); - $341 = HEAP32[$340>>2]|0; - $342 = (($341) - 1)|0; - HEAP32[$ii5>>2] = $342; - while(1) { - $343 = HEAP32[$ii5>>2]|0; - $344 = ($343|0)>=(0); - if (!($344)) { - break; - } - $345 = HEAP32[$ii5>>2]|0; - $346 = HEAP32[$db>>2]|0; - $347 = (($346) + 16|0); - $348 = HEAP32[$347>>2]|0; - $349 = (($348) + ($345<<4)|0); - $350 = (($349) + 4|0); - $351 = HEAP32[$350>>2]|0; - $352 = ($351|0)!=(0|0); - do { - if ($352) { - $353 = HEAP32[$ii5>>2]|0; - $354 = HEAP32[$iDb>>2]|0; - $355 = ($353|0)==($354|0); - if (!($355)) { - $356 = HEAP32[$2>>2]|0; - $357 = (($356) + 4|0); - $358 = HEAP32[$357>>2]|0; - $359 = ($358|0)==(0); - if (!($359)) { - break; - } - } - $360 = HEAP32[$v>>2]|0; - $361 = HEAP32[$ii5>>2]|0; - _sqlite3VdbeUsesBtree($360,$361); - $362 = HEAP32[$v>>2]|0; - $363 = HEAP32[$ii5>>2]|0; - $364 = HEAP32[$eMode4>>2]|0; - (_sqlite3VdbeAddOp3($362,12,$363,1,$364)|0); - } - } while(0); - $365 = HEAP32[$ii5>>2]|0; - $366 = (($365) + -1)|0; - HEAP32[$ii5>>2] = $366; - } - $367 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($367,35,1,1)|0); - break L21; - break; - } - case 4: { - $486 = HEAP32[$zRight>>2]|0; - $487 = ($486|0)!=(0|0); - if ($487) { - $496 = HEAP32[$zRight>>2]|0; - $497 = (_sqlite3Atoi($496)|0); - HEAP32[$size10>>2] = $497; - $498 = HEAP32[$size10>>2]|0; - $499 = HEAP32[$pDb>>2]|0; - $500 = (($499) + 12|0); - $501 = HEAP32[$500>>2]|0; - $502 = (($501) + 80|0); - HEAP32[$502>>2] = $498; - $503 = HEAP32[$pDb>>2]|0; - $504 = (($503) + 4|0); - $505 = HEAP32[$504>>2]|0; - $506 = HEAP32[$pDb>>2]|0; - $507 = (($506) + 12|0); - $508 = HEAP32[$507>>2]|0; - $509 = (($508) + 80|0); - $510 = HEAP32[$509>>2]|0; - (_sqlite3BtreeSetCacheSize($505,$510)|0); - break L21; - } else { - $488 = HEAP32[$0>>2]|0; - $489 = HEAP32[$pDb>>2]|0; - $490 = (($489) + 12|0); - $491 = HEAP32[$490>>2]|0; - $492 = (($491) + 80|0); - $493 = HEAP32[$492>>2]|0; - $494 = ($493|0)<(0); - $495 = $494 << 31 >> 31; - _returnSingleInt($488,20872,$493,$495); - break L21; - } - break; - } - case 10: { - $132 = HEAP32[$v>>2]|0; - $133 = HEAP32[$iDb>>2]|0; - _sqlite3VdbeUsesBtree($132,$133); - $134 = HEAP32[$zRight>>2]|0; - $135 = ($134|0)!=(0|0); - if ($135) { - $154 = HEAP32[$zRight>>2]|0; - $155 = (_sqlite3Atoi($154)|0); - $156 = (_sqlite3AbsInt32($155)|0); - HEAP32[$size>>2] = $156; - $157 = HEAP32[$0>>2]|0; - $158 = HEAP32[$iDb>>2]|0; - _sqlite3BeginWriteOperation($157,0,$158); - $159 = HEAP32[$v>>2]|0; - $160 = HEAP32[$size>>2]|0; - (_sqlite3VdbeAddOp2($159,25,$160,1)|0); - $161 = HEAP32[$v>>2]|0; - $162 = HEAP32[$iDb>>2]|0; - (_sqlite3VdbeAddOp3($161,51,$162,3,1)|0); - $163 = HEAP32[$size>>2]|0; - $164 = HEAP32[$pDb>>2]|0; - $165 = (($164) + 12|0); - $166 = HEAP32[$165>>2]|0; - $167 = (($166) + 80|0); - HEAP32[$167>>2] = $163; - $168 = HEAP32[$pDb>>2]|0; - $169 = (($168) + 4|0); - $170 = HEAP32[$169>>2]|0; - $171 = HEAP32[$pDb>>2]|0; - $172 = (($171) + 12|0); - $173 = HEAP32[$172>>2]|0; - $174 = (($173) + 80|0); - $175 = HEAP32[$174>>2]|0; - (_sqlite3BtreeSetCacheSize($170,$175)|0); - break L21; - } else { - $136 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($136,1); - $137 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($137,0,0,20872,0)|0); - $138 = HEAP32[$0>>2]|0; - $139 = (($138) + 72|0); - $140 = HEAP32[$139>>2]|0; - $141 = (($140) + 2)|0; - HEAP32[$139>>2] = $141; - $142 = HEAP32[$v>>2]|0; - $143 = (_sqlite3VdbeAddOpList($142,9,20832,0)|0); - HEAP32[$addr>>2] = $143; - $144 = HEAP32[$v>>2]|0; - $145 = HEAP32[$addr>>2]|0; - $146 = HEAP32[$iDb>>2]|0; - _sqlite3VdbeChangeP1($144,$145,$146); - $147 = HEAP32[$v>>2]|0; - $148 = HEAP32[$addr>>2]|0; - $149 = (($148) + 1)|0; - $150 = HEAP32[$iDb>>2]|0; - _sqlite3VdbeChangeP1($147,$149,$150); - $151 = HEAP32[$v>>2]|0; - $152 = HEAP32[$addr>>2]|0; - $153 = (($152) + 6)|0; - _sqlite3VdbeChangeP1($151,$153,2000); - break L21; - } - break; - } - case 32: { - $541 = HEAP32[$zRight>>2]|0; - $542 = ($541|0)!=(0|0); - if (!($542)) { - $543 = HEAP32[1568>>2]|0; - $544 = ($543|0)!=(0|0); - if (!($544)) { - break L21; - } - $545 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($545,1); - $546 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($546,0,0,21072,0)|0); - $547 = HEAP32[$v>>2]|0; - $548 = HEAP32[1568>>2]|0; - (_sqlite3VdbeAddOp4($547,97,0,1,0,$548,0)|0); - $549 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($549,35,1,1)|0); - break L21; - } - $550 = HEAP32[$zRight>>2]|0; - $551 = HEAP8[$550>>0]|0; - $552 = ($551<<24>>24)!=(0); - do { - if ($552) { - $553 = HEAP32[$db>>2]|0; - $554 = HEAP32[$553>>2]|0; - $555 = HEAP32[$zRight>>2]|0; - $556 = (_sqlite3OsAccess($554,$555,1,$res)|0); - HEAP32[$rc>>2] = $556; - $557 = HEAP32[$rc>>2]|0; - $558 = ($557|0)!=(0); - if (!($558)) { - $559 = HEAP32[$res>>2]|0; - $560 = ($559|0)==(0); - if (!($560)) { - break; - } - } - $561 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($561,21096,$vararg_buffer18); - break L21; - } - } while(0); - $562 = HEAP32[$db>>2]|0; - $563 = (($562) + 63|0); - $564 = HEAP8[$563>>0]|0; - $565 = $564&255; - $566 = ($565|0)<=(1); - if ($566) { - $567 = HEAP32[$0>>2]|0; - (_invalidateTempStorage($567)|0); - } - $568 = HEAP32[1568>>2]|0; - _sqlite3_free($568); - $569 = HEAP32[$zRight>>2]|0; - $570 = HEAP8[$569>>0]|0; - $571 = ($570<<24>>24)!=(0); - if ($571) { - $572 = HEAP32[$zRight>>2]|0; - HEAP32[$vararg_buffer18>>2] = $572; - $573 = (_sqlite3_mprintf(1456,$vararg_buffer18)|0); - HEAP32[1568>>2] = $573; - break L21; - } else { - HEAP32[1568>>2] = 0; - break L21; - } - break; - } - case 2: { - $597 = HEAP32[$zRight>>2]|0; - $598 = ($597|0)==(0|0); - if ($598) { - $599 = HEAP32[$0>>2]|0; - $600 = HEAP32[$mid>>2]|0; - $601 = (20184 + (($600*12)|0)|0); - $602 = HEAP32[$601>>2]|0; - $603 = HEAP32[$db>>2]|0; - $604 = (($603) + 24|0); - $605 = HEAP32[$604>>2]|0; - $606 = HEAP32[$mid>>2]|0; - $607 = (20184 + (($606*12)|0)|0); - $608 = (($607) + 8|0); - $609 = HEAP32[$608>>2]|0; - $610 = $605 & $609; - $611 = ($610|0)!=(0); - $612 = $611&1; - $613 = ($612|0)<(0); - $614 = $613 << 31 >> 31; - _returnSingleInt($599,$602,$612,$614); - break L21; - } - $615 = HEAP32[$mid>>2]|0; - $616 = (20184 + (($615*12)|0)|0); - $617 = (($616) + 8|0); - $618 = HEAP32[$617>>2]|0; - HEAP32[$mask>>2] = $618; - $619 = HEAP32[$db>>2]|0; - $620 = (($619) + 62|0); - $621 = HEAP8[$620>>0]|0; - $622 = $621&255; - $623 = ($622|0)==(0); - if ($623) { - $624 = HEAP32[$mask>>2]|0; - $625 = $624 & -524289; - HEAP32[$mask>>2] = $625; - } - $626 = HEAP32[$zRight>>2]|0; - $627 = (_sqlite3GetBoolean($626,0)|0); - $628 = ($627<<24>>24)!=(0); - $629 = HEAP32[$mask>>2]|0; - if ($628) { - $630 = HEAP32[$db>>2]|0; - $631 = (($630) + 24|0); - $632 = HEAP32[$631>>2]|0; - $633 = $632 | $629; - HEAP32[$631>>2] = $633; - } else { - $634 = $629 ^ -1; - $635 = HEAP32[$db>>2]|0; - $636 = (($635) + 24|0); - $637 = HEAP32[$636>>2]|0; - $638 = $637 & $634; - HEAP32[$636>>2] = $638; - $639 = HEAP32[$mask>>2]|0; - $640 = ($639|0)==(16777216); - if ($640) { - $641 = HEAP32[$db>>2]|0; - $642 = (($641) + 504|0); - $643 = $642; - $644 = $643; - HEAP32[$644>>2] = 0; - $645 = (($643) + 4)|0; - $646 = $645; - HEAP32[$646>>2] = 0; - } - } - $647 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($647,139,0,0)|0); - $648 = HEAP32[$db>>2]|0; - _setAllPagerFlags($648); - break L21; - break; - } - case 30: { - $649 = HEAP32[$zRight>>2]|0; - $650 = ($649|0)!=(0|0); - if (!($650)) { - break L21; - } - $651 = HEAP32[$db>>2]|0; - $652 = HEAP32[$zRight>>2]|0; - $653 = HEAP32[$zDb>>2]|0; - $654 = (_sqlite3FindTable($651,$652,$653)|0); - HEAP32[$pTab>>2] = $654; - $655 = HEAP32[$pTab>>2]|0; - $656 = ($655|0)!=(0|0); - if (!($656)) { - break L21; - } - HEAP32[$nHidden>>2] = 0; - $657 = HEAP32[$pTab>>2]|0; - $658 = (_sqlite3PrimaryKeyIndex($657)|0); - HEAP32[$pPk>>2] = $658; - $659 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($659,6); - $660 = HEAP32[$0>>2]|0; - $661 = (($660) + 72|0); - HEAP32[$661>>2] = 6; - $662 = HEAP32[$0>>2]|0; - $663 = HEAP32[$iDb>>2]|0; - _sqlite3CodeVerifySchema($662,$663); - $664 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($664,0,0,21200,0)|0); - $665 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($665,1,0,21208,0)|0); - $666 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($666,2,0,21216,0)|0); - $667 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($667,3,0,21224,0)|0); - $668 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($668,4,0,21232,0)|0); - $669 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($669,5,0,21248,0)|0); - $670 = HEAP32[$0>>2]|0; - $671 = HEAP32[$pTab>>2]|0; - (_sqlite3ViewGetColumnNames($670,$671)|0); - HEAP32[$i>>2] = 0; - $672 = HEAP32[$pTab>>2]|0; - $673 = (($672) + 4|0); - $674 = HEAP32[$673>>2]|0; - HEAP32[$pCol>>2] = $674; - while(1) { - $675 = HEAP32[$i>>2]|0; - $676 = HEAP32[$pTab>>2]|0; - $677 = (($676) + 38|0); - $678 = HEAP16[$677>>1]|0; - $679 = $678 << 16 >> 16; - $680 = ($675|0)<($679|0); - if (!($680)) { - break L21; - } - $681 = HEAP32[$pCol>>2]|0; - $682 = (($681) + 23|0); - $683 = HEAP8[$682>>0]|0; - $684 = $683&255; - $685 = $684 & 2; - $686 = ($685|0)!=(0); - if ($686) { - $687 = HEAP32[$nHidden>>2]|0; - $688 = (($687) + 1)|0; - HEAP32[$nHidden>>2] = $688; - } else { - $689 = HEAP32[$v>>2]|0; - $690 = HEAP32[$i>>2]|0; - $691 = HEAP32[$nHidden>>2]|0; - $692 = (($690) - ($691))|0; - (_sqlite3VdbeAddOp2($689,25,$692,1)|0); - $693 = HEAP32[$v>>2]|0; - $694 = HEAP32[$pCol>>2]|0; - $695 = HEAP32[$694>>2]|0; - (_sqlite3VdbeAddOp4($693,97,0,2,0,$695,0)|0); - $696 = HEAP32[$v>>2]|0; - $697 = HEAP32[$pCol>>2]|0; - $698 = (($697) + 12|0); - $699 = HEAP32[$698>>2]|0; - $700 = ($699|0)!=(0|0); - if ($700) { - $701 = HEAP32[$pCol>>2]|0; - $702 = (($701) + 12|0); - $703 = HEAP32[$702>>2]|0; - $704 = $703; - } else { - $704 = 1472; - } - (_sqlite3VdbeAddOp4($696,97,0,3,0,$704,0)|0); - $705 = HEAP32[$v>>2]|0; - $706 = HEAP32[$pCol>>2]|0; - $707 = (($706) + 20|0); - $708 = HEAP8[$707>>0]|0; - $709 = $708&255; - $710 = ($709|0)!=(0); - $711 = $710 ? 1 : 0; - (_sqlite3VdbeAddOp2($705,25,$711,4)|0); - $712 = HEAP32[$pCol>>2]|0; - $713 = (($712) + 8|0); - $714 = HEAP32[$713>>2]|0; - $715 = ($714|0)!=(0|0); - $716 = HEAP32[$v>>2]|0; - if ($715) { - $717 = HEAP32[$pCol>>2]|0; - $718 = (($717) + 8|0); - $719 = HEAP32[$718>>2]|0; - (_sqlite3VdbeAddOp4($716,97,0,5,0,$719,0)|0); - } else { - (_sqlite3VdbeAddOp2($716,28,0,5)|0); - } - $720 = HEAP32[$pCol>>2]|0; - $721 = (($720) + 23|0); - $722 = HEAP8[$721>>0]|0; - $723 = $722&255; - $724 = $723 & 1; - $725 = ($724|0)==(0); - L132: do { - if ($725) { - HEAP32[$k>>2] = 0; - } else { - $726 = HEAP32[$pPk>>2]|0; - $727 = ($726|0)==(0|0); - HEAP32[$k>>2] = 1; - if ($727) { - break; - } - while(1) { - $728 = HEAP32[$k>>2]|0; - $729 = HEAP32[$pTab>>2]|0; - $730 = (($729) + 38|0); - $731 = HEAP16[$730>>1]|0; - $732 = $731 << 16 >> 16; - $733 = ($728|0)<=($732|0); - if (!($733)) { - break L132; - } - $734 = HEAP32[$k>>2]|0; - $735 = (($734) - 1)|0; - $736 = HEAP32[$pPk>>2]|0; - $737 = (($736) + 4|0); - $738 = HEAP32[$737>>2]|0; - $739 = (($738) + ($735<<1)|0); - $740 = HEAP16[$739>>1]|0; - $741 = $740 << 16 >> 16; - $742 = HEAP32[$i>>2]|0; - $743 = ($741|0)!=($742|0); - if (!($743)) { - break L132; - } - $744 = HEAP32[$k>>2]|0; - $745 = (($744) + 1)|0; - HEAP32[$k>>2] = $745; - } - } - } while(0); - $746 = HEAP32[$v>>2]|0; - $747 = HEAP32[$k>>2]|0; - (_sqlite3VdbeAddOp2($746,25,$747,6)|0); - $748 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($748,35,1,6)|0); - } - $749 = HEAP32[$i>>2]|0; - $750 = (($749) + 1)|0; - HEAP32[$i>>2] = $750; - $751 = HEAP32[$pCol>>2]|0; - $752 = (($751) + 24|0); - HEAP32[$pCol>>2] = $752; - } - break; - } - case 29: { - $574 = HEAP32[$zRight>>2]|0; - $575 = ($574|0)!=(0|0); - if (!($575)) { - $576 = HEAP32[$0>>2]|0; - $577 = HEAP32[$pDb>>2]|0; - $578 = (($577) + 8|0); - $579 = HEAP8[$578>>0]|0; - $580 = $579&255; - $581 = (($580) - 1)|0; - $582 = ($581|0)<(0); - $583 = $582 << 31 >> 31; - _returnSingleInt($576,21128,$581,$583); - break L21; - } - $584 = HEAP32[$db>>2]|0; - $585 = (($584) + 62|0); - $586 = HEAP8[$585>>0]|0; - $587 = ($586<<24>>24)!=(0); - if ($587) { - $589 = HEAP32[$zRight>>2]|0; - $590 = (_getSafetyLevel($589,0,1)|0); - $591 = $590&255; - $592 = (($591) + 1)|0; - $593 = $592&255; - $594 = HEAP32[$pDb>>2]|0; - $595 = (($594) + 8|0); - HEAP8[$595>>0] = $593; - $596 = HEAP32[$db>>2]|0; - _setAllPagerFlags($596); - break L21; - } else { - $588 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($588,21144,$vararg_buffer18); - break L21; - } - break; - } - case 1: { - $416 = HEAP32[$pDb>>2]|0; - $417 = (($416) + 4|0); - $418 = HEAP32[$417>>2]|0; - HEAP32[$pBt7>>2] = $418; - $419 = HEAP32[$zRight>>2]|0; - $420 = ($419|0)!=(0|0); - if (!($420)) { - $421 = HEAP32[$0>>2]|0; - $422 = HEAP32[$pBt7>>2]|0; - $423 = (_sqlite3BtreeGetAutoVacuum($422)|0); - $424 = ($423|0)<(0); - $425 = $424 << 31 >> 31; - _returnSingleInt($421,21000,$423,$425); - break L21; - } - $426 = HEAP32[$zRight>>2]|0; - $427 = (_getAutoVacuum($426)|0); - HEAP32[$eAuto>>2] = $427; - $428 = HEAP32[$eAuto>>2]|0; - $429 = $428&255; - $430 = HEAP32[$db>>2]|0; - $431 = (($430) + 66|0); - HEAP8[$431>>0] = $429; - $432 = HEAP32[$pBt7>>2]|0; - $433 = HEAP32[$eAuto>>2]|0; - $434 = (_sqlite3BtreeSetAutoVacuum($432,$433)|0); - HEAP32[$rc>>2] = $434; - $435 = HEAP32[$rc>>2]|0; - $436 = ($435|0)==(0); - if (!($436)) { - break L21; - } - $437 = HEAP32[$eAuto>>2]|0; - $438 = ($437|0)==(1); - $439 = HEAP32[$eAuto>>2]|0; - $440 = ($439|0)==(2); - $or$cond = $438 | $440; - if (!($or$cond)) { - break L21; - } - $441 = HEAP32[$v>>2]|0; - $442 = (_sqlite3VdbeAddOpList($441,6,21016,0)|0); - HEAP32[$iAddr>>2] = $442; - $443 = HEAP32[$v>>2]|0; - $444 = HEAP32[$iAddr>>2]|0; - $445 = HEAP32[$iDb>>2]|0; - _sqlite3VdbeChangeP1($443,$444,$445); - $446 = HEAP32[$v>>2]|0; - $447 = HEAP32[$iAddr>>2]|0; - $448 = (($447) + 1)|0; - $449 = HEAP32[$iDb>>2]|0; - _sqlite3VdbeChangeP1($446,$448,$449); - $450 = HEAP32[$v>>2]|0; - $451 = HEAP32[$iAddr>>2]|0; - $452 = (($451) + 2)|0; - $453 = HEAP32[$iAddr>>2]|0; - $454 = (($453) + 4)|0; - _sqlite3VdbeChangeP2($450,$452,$454); - $455 = HEAP32[$v>>2]|0; - $456 = HEAP32[$iAddr>>2]|0; - $457 = (($456) + 4)|0; - $458 = HEAP32[$eAuto>>2]|0; - $459 = (($458) - 1)|0; - _sqlite3VdbeChangeP1($455,$457,$459); - $460 = HEAP32[$v>>2]|0; - $461 = HEAP32[$iAddr>>2]|0; - $462 = (($461) + 5)|0; - $463 = HEAP32[$iDb>>2]|0; - _sqlite3VdbeChangeP1($460,$462,$463); - $464 = HEAP32[$v>>2]|0; - $465 = HEAP32[$iDb>>2]|0; - _sqlite3VdbeUsesBtree($464,$465); - break L21; - break; - } - case 28: { - $753 = HEAP32[$0>>2]|0; - $754 = (_sqlite3GetVdbe($753)|0); - HEAP32[$v>>2] = $754; - $755 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($755,4); - $756 = HEAP32[$0>>2]|0; - $757 = (($756) + 72|0); - HEAP32[$757>>2] = 4; - $758 = HEAP32[$0>>2]|0; - $759 = HEAP32[$iDb>>2]|0; - _sqlite3CodeVerifySchema($758,$759); - $760 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($760,0,0,21256,0)|0); - $761 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($761,1,0,10072,0)|0); - $762 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($762,2,0,21264,0)|0); - $763 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($763,3,0,21272,0)|0); - $764 = HEAP32[$pDb>>2]|0; - $765 = (($764) + 12|0); - $766 = HEAP32[$765>>2]|0; - $767 = (($766) + 8|0); - $768 = (($767) + 8|0); - $769 = HEAP32[$768>>2]|0; - HEAP32[$i11>>2] = $769; - while(1) { - $770 = HEAP32[$i11>>2]|0; - $771 = ($770|0)!=(0|0); - if (!($771)) { - break L21; - } - $772 = HEAP32[$i11>>2]|0; - $773 = (($772) + 8|0); - $774 = HEAP32[$773>>2]|0; - HEAP32[$pTab12>>2] = $774; - $775 = HEAP32[$v>>2]|0; - $776 = HEAP32[$pTab12>>2]|0; - $777 = HEAP32[$776>>2]|0; - (_sqlite3VdbeAddOp4($775,97,0,1,0,$777,0)|0); - $778 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($778,28,0,2)|0); - $779 = HEAP32[$v>>2]|0; - $780 = HEAP32[$pTab12>>2]|0; - $781 = (($780) + 42|0); - $782 = HEAP16[$781>>1]|0; - $783 = (_sqlite3LogEstToInt($782)|0); - $784 = tempRet0; - (_sqlite3VdbeAddOp2($779,25,$783,3)|0); - $785 = HEAP32[$v>>2]|0; - $786 = HEAP32[$pTab12>>2]|0; - $787 = (($786) + 28|0); - $788 = HEAP16[$787>>1]|0; - $789 = (_sqlite3LogEstToInt($788)|0); - $790 = tempRet0; - (_sqlite3VdbeAddOp2($785,25,$789,4)|0); - $791 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($791,35,1,4)|0); - $792 = HEAP32[$pTab12>>2]|0; - $793 = (($792) + 8|0); - $794 = HEAP32[$793>>2]|0; - HEAP32[$pIdx>>2] = $794; - while(1) { - $795 = HEAP32[$pIdx>>2]|0; - $796 = ($795|0)!=(0|0); - if (!($796)) { - break; - } - $797 = HEAP32[$v>>2]|0; - $798 = HEAP32[$pIdx>>2]|0; - $799 = HEAP32[$798>>2]|0; - (_sqlite3VdbeAddOp4($797,97,0,2,0,$799,0)|0); - $800 = HEAP32[$v>>2]|0; - $801 = HEAP32[$pIdx>>2]|0; - $802 = (($801) + 48|0); - $803 = HEAP16[$802>>1]|0; - $804 = (_sqlite3LogEstToInt($803)|0); - $805 = tempRet0; - (_sqlite3VdbeAddOp2($800,25,$804,3)|0); - $806 = HEAP32[$v>>2]|0; - $807 = HEAP32[$pIdx>>2]|0; - $808 = (($807) + 8|0); - $809 = HEAP32[$808>>2]|0; - $810 = HEAP16[$809>>1]|0; - $811 = (_sqlite3LogEstToInt($810)|0); - $812 = tempRet0; - (_sqlite3VdbeAddOp2($806,25,$811,4)|0); - $813 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($813,35,1,4)|0); - $814 = HEAP32[$pIdx>>2]|0; - $815 = (($814) + 20|0); - $816 = HEAP32[$815>>2]|0; - HEAP32[$pIdx>>2] = $816; - } - $817 = HEAP32[$i11>>2]|0; - $818 = HEAP32[$817>>2]|0; - HEAP32[$i11>>2] = $818; - } - break; - } - case 23: { - $511 = $sz; - $512 = $511; - HEAP32[$512>>2] = 0; - $513 = (($511) + 4)|0; - $514 = $513; - HEAP32[$514>>2] = 0; - HEAP32[$rc>>2] = 0; - $515 = HEAP32[$rc>>2]|0; - $516 = ($515|0)==(0); - if ($516) { - $517 = HEAP32[$0>>2]|0; - $518 = $sz; - $519 = $518; - $520 = HEAP32[$519>>2]|0; - $521 = (($518) + 4)|0; - $522 = $521; - $523 = HEAP32[$522>>2]|0; - _returnSingleInt($517,21040,$520,$523); - break L21; - } - $524 = HEAP32[$rc>>2]|0; - $525 = ($524|0)!=(12); - if (!($525)) { - break L21; - } - $526 = HEAP32[$0>>2]|0; - $527 = (($526) + 64|0); - $528 = HEAP32[$527>>2]|0; - $529 = (($528) + 1)|0; - HEAP32[$527>>2] = $529; - $530 = HEAP32[$rc>>2]|0; - $531 = HEAP32[$0>>2]|0; - $532 = (($531) + 12|0); - HEAP32[$532>>2] = $530; - break L21; - break; - } - case 31: { - $533 = HEAP32[$zRight>>2]|0; - $534 = ($533|0)!=(0|0); - $535 = HEAP32[$0>>2]|0; - if ($534) { - $540 = HEAP32[$zRight>>2]|0; - (_changeTempStorage($535,$540)|0); - break L21; - } else { - $536 = HEAP32[$db>>2]|0; - $537 = (($536) + 63|0); - $538 = HEAP8[$537>>0]|0; - $539 = $538&255; - _returnSingleInt($535,21056,$539,0); - break L21; - } - break; - } - case 15: { - $819 = HEAP32[$zRight>>2]|0; - $820 = ($819|0)!=(0|0); - if (!($820)) { - break L21; - } - $821 = HEAP32[$db>>2]|0; - $822 = HEAP32[$zRight>>2]|0; - $823 = HEAP32[$zDb>>2]|0; - $824 = (_sqlite3FindIndex($821,$822,$823)|0); - HEAP32[$pIdx13>>2] = $824; - $825 = HEAP32[$pIdx13>>2]|0; - $826 = ($825|0)!=(0|0); - if (!($826)) { - break L21; - } - $827 = HEAP32[$pIdx13>>2]|0; - $828 = (($827) + 12|0); - $829 = HEAP32[$828>>2]|0; - HEAP32[$pTab14>>2] = $829; - $830 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($830,3); - $831 = HEAP32[$0>>2]|0; - $832 = (($831) + 72|0); - HEAP32[$832>>2] = 3; - $833 = HEAP32[$0>>2]|0; - $834 = HEAP32[$iDb>>2]|0; - _sqlite3CodeVerifySchema($833,$834); - $835 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($835,0,0,21280,0)|0); - $836 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($836,1,0,21200,0)|0); - $837 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($837,2,0,21208,0)|0); - HEAP32[$i15>>2] = 0; - while(1) { - $838 = HEAP32[$i15>>2]|0; - $839 = HEAP32[$pIdx13>>2]|0; - $840 = (($839) + 50|0); - $841 = HEAP16[$840>>1]|0; - $842 = $841&65535; - $843 = ($838|0)<($842|0); - if (!($843)) { - break L21; - } - $844 = HEAP32[$i15>>2]|0; - $845 = HEAP32[$pIdx13>>2]|0; - $846 = (($845) + 4|0); - $847 = HEAP32[$846>>2]|0; - $848 = (($847) + ($844<<1)|0); - $849 = HEAP16[$848>>1]|0; - HEAP16[$cnum>>1] = $849; - $850 = HEAP32[$v>>2]|0; - $851 = HEAP32[$i15>>2]|0; - (_sqlite3VdbeAddOp2($850,25,$851,1)|0); - $852 = HEAP32[$v>>2]|0; - $853 = HEAP16[$cnum>>1]|0; - $854 = $853 << 16 >> 16; - (_sqlite3VdbeAddOp2($852,25,$854,2)|0); - $855 = HEAP32[$v>>2]|0; - $856 = HEAP16[$cnum>>1]|0; - $857 = $856 << 16 >> 16; - $858 = HEAP32[$pTab14>>2]|0; - $859 = (($858) + 4|0); - $860 = HEAP32[$859>>2]|0; - $861 = (($860) + (($857*24)|0)|0); - $862 = HEAP32[$861>>2]|0; - (_sqlite3VdbeAddOp4($855,97,0,3,0,$862,0)|0); - $863 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($863,35,1,3)|0); - $864 = HEAP32[$i15>>2]|0; - $865 = (($864) + 1)|0; - HEAP32[$i15>>2] = $865; - } - break; - } - case 9: { - $907 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($907,3); - $908 = HEAP32[$0>>2]|0; - $909 = (($908) + 72|0); - HEAP32[$909>>2] = 3; - $910 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($910,0,0,21288,0)|0); - $911 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($911,1,0,21208,0)|0); - $912 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($912,2,0,21304,0)|0); - HEAP32[$i19>>2] = 0; - while(1) { - $913 = HEAP32[$i19>>2]|0; - $914 = HEAP32[$db>>2]|0; - $915 = (($914) + 20|0); - $916 = HEAP32[$915>>2]|0; - $917 = ($913|0)<($916|0); - if (!($917)) { - break L21; - } - $918 = HEAP32[$i19>>2]|0; - $919 = HEAP32[$db>>2]|0; - $920 = (($919) + 16|0); - $921 = HEAP32[$920>>2]|0; - $922 = (($921) + ($918<<4)|0); - $923 = (($922) + 4|0); - $924 = HEAP32[$923>>2]|0; - $925 = ($924|0)==(0|0); - if (!($925)) { - $926 = HEAP32[$v>>2]|0; - $927 = HEAP32[$i19>>2]|0; - (_sqlite3VdbeAddOp2($926,25,$927,1)|0); - $928 = HEAP32[$v>>2]|0; - $929 = HEAP32[$i19>>2]|0; - $930 = HEAP32[$db>>2]|0; - $931 = (($930) + 16|0); - $932 = HEAP32[$931>>2]|0; - $933 = (($932) + ($929<<4)|0); - $934 = HEAP32[$933>>2]|0; - (_sqlite3VdbeAddOp4($928,97,0,2,0,$934,0)|0); - $935 = HEAP32[$v>>2]|0; - $936 = HEAP32[$i19>>2]|0; - $937 = HEAP32[$db>>2]|0; - $938 = (($937) + 16|0); - $939 = HEAP32[$938>>2]|0; - $940 = (($939) + ($936<<4)|0); - $941 = (($940) + 4|0); - $942 = HEAP32[$941>>2]|0; - $943 = (_sqlite3BtreeGetFilename($942)|0); - (_sqlite3VdbeAddOp4($935,97,0,3,0,$943,0)|0); - $944 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($944,35,1,3)|0); - } - $945 = HEAP32[$i19>>2]|0; - $946 = (($945) + 1)|0; - HEAP32[$i19>>2] = $946; - } - break; - } - case 16: { - $866 = HEAP32[$zRight>>2]|0; - $867 = ($866|0)!=(0|0); - if (!($867)) { - break L21; - } - $868 = HEAP32[$db>>2]|0; - $869 = HEAP32[$zRight>>2]|0; - $870 = HEAP32[$zDb>>2]|0; - $871 = (_sqlite3FindTable($868,$869,$870)|0); - HEAP32[$pTab17>>2] = $871; - $872 = HEAP32[$pTab17>>2]|0; - $873 = ($872|0)!=(0|0); - if (!($873)) { - break L21; - } - $874 = HEAP32[$0>>2]|0; - $875 = (_sqlite3GetVdbe($874)|0); - HEAP32[$v>>2] = $875; - $876 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($876,3); - $877 = HEAP32[$0>>2]|0; - $878 = (($877) + 72|0); - HEAP32[$878>>2] = 3; - $879 = HEAP32[$0>>2]|0; - $880 = HEAP32[$iDb>>2]|0; - _sqlite3CodeVerifySchema($879,$880); - $881 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($881,0,0,21288,0)|0); - $882 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($882,1,0,21208,0)|0); - $883 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($883,2,0,21296,0)|0); - $884 = HEAP32[$pTab17>>2]|0; - $885 = (($884) + 8|0); - $886 = HEAP32[$885>>2]|0; - HEAP32[$pIdx16>>2] = $886; - HEAP32[$i18>>2] = 0; - while(1) { - $887 = HEAP32[$pIdx16>>2]|0; - $888 = ($887|0)!=(0|0); - if (!($888)) { - break L21; - } - $889 = HEAP32[$v>>2]|0; - $890 = HEAP32[$i18>>2]|0; - (_sqlite3VdbeAddOp2($889,25,$890,1)|0); - $891 = HEAP32[$v>>2]|0; - $892 = HEAP32[$pIdx16>>2]|0; - $893 = HEAP32[$892>>2]|0; - (_sqlite3VdbeAddOp4($891,97,0,2,0,$893,0)|0); - $894 = HEAP32[$v>>2]|0; - $895 = HEAP32[$pIdx16>>2]|0; - $896 = (($895) + 54|0); - $897 = HEAP8[$896>>0]|0; - $898 = $897&255; - $899 = ($898|0)!=(0); - $900 = $899&1; - (_sqlite3VdbeAddOp2($894,25,$900,3)|0); - $901 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($901,35,1,3)|0); - $902 = HEAP32[$pIdx16>>2]|0; - $903 = (($902) + 20|0); - $904 = HEAP32[$903>>2]|0; - HEAP32[$pIdx16>>2] = $904; - $905 = HEAP32[$i18>>2]|0; - $906 = (($905) + 1)|0; - HEAP32[$i18>>2] = $906; - } - break; - } - case 21: { - HEAP32[$zRet>>2] = 20920; - $262 = HEAP32[$zRight>>2]|0; - $263 = (_getLockingMode($262)|0); - HEAP32[$eMode>>2] = $263; - $264 = HEAP32[$2>>2]|0; - $265 = (($264) + 4|0); - $266 = HEAP32[$265>>2]|0; - $267 = ($266|0)==(0); - if ($267) { - $268 = HEAP32[$eMode>>2]|0; - $269 = ($268|0)==(-1); - if ($269) { - $270 = HEAP32[$db>>2]|0; - $271 = (($270) + 65|0); - $272 = HEAP8[$271>>0]|0; - $273 = $272&255; - HEAP32[$eMode>>2] = $273; - } else { - label = 53; - } - } else { - label = 53; - } - if ((label|0) == 53) { - $274 = HEAP32[$2>>2]|0; - $275 = (($274) + 4|0); - $276 = HEAP32[$275>>2]|0; - $277 = ($276|0)==(0); - if ($277) { - HEAP32[$ii3>>2] = 2; - while(1) { - $278 = HEAP32[$ii3>>2]|0; - $279 = HEAP32[$db>>2]|0; - $280 = (($279) + 20|0); - $281 = HEAP32[$280>>2]|0; - $282 = ($278|0)<($281|0); - if (!($282)) { - break; - } - $283 = HEAP32[$ii3>>2]|0; - $284 = HEAP32[$db>>2]|0; - $285 = (($284) + 16|0); - $286 = HEAP32[$285>>2]|0; - $287 = (($286) + ($283<<4)|0); - $288 = (($287) + 4|0); - $289 = HEAP32[$288>>2]|0; - $290 = (_sqlite3BtreePager($289)|0); - HEAP32[$pPager>>2] = $290; - $291 = HEAP32[$pPager>>2]|0; - $292 = HEAP32[$eMode>>2]|0; - (_sqlite3PagerLockingMode($291,$292)|0); - $293 = HEAP32[$ii3>>2]|0; - $294 = (($293) + 1)|0; - HEAP32[$ii3>>2] = $294; - } - $295 = HEAP32[$eMode>>2]|0; - $296 = $295&255; - $297 = HEAP32[$db>>2]|0; - $298 = (($297) + 65|0); - HEAP8[$298>>0] = $296; - } - $299 = HEAP32[$pDb>>2]|0; - $300 = (($299) + 4|0); - $301 = HEAP32[$300>>2]|0; - $302 = (_sqlite3BtreePager($301)|0); - HEAP32[$pPager>>2] = $302; - $303 = HEAP32[$pPager>>2]|0; - $304 = HEAP32[$eMode>>2]|0; - $305 = (_sqlite3PagerLockingMode($303,$304)|0); - HEAP32[$eMode>>2] = $305; - } - $306 = HEAP32[$eMode>>2]|0; - $307 = ($306|0)==(1); - if ($307) { - HEAP32[$zRet>>2] = 20928; - } - $308 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($308,1); - $309 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($309,0,0,20944,0)|0); - $310 = HEAP32[$v>>2]|0; - $311 = HEAP32[$zRet>>2]|0; - (_sqlite3VdbeAddOp4($310,97,0,1,0,$311,0)|0); - $312 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($312,35,1,1)|0); - break L21; - break; - } - case 22: { - $238 = HEAP32[$0>>2]|0; - $239 = HEAP32[$iDb>>2]|0; - _sqlite3CodeVerifySchema($238,$239); - $240 = HEAP32[$0>>2]|0; - $241 = (($240) + 72|0); - $242 = HEAP32[$241>>2]|0; - $243 = (($242) + 1)|0; - HEAP32[$241>>2] = $243; - HEAP32[$iReg>>2] = $243; - $244 = HEAP32[$zLeft>>2]|0; - $245 = HEAP8[$244>>0]|0; - $246 = $245&255; - $247 = (696 + ($246)|0); - $248 = HEAP8[$247>>0]|0; - $249 = $248&255; - $250 = ($249|0)==(112); - $251 = HEAP32[$v>>2]|0; - $252 = HEAP32[$iDb>>2]|0; - $253 = HEAP32[$iReg>>2]|0; - if ($250) { - (_sqlite3VdbeAddOp2($251,153,$252,$253)|0); - } else { - $254 = HEAP32[$zRight>>2]|0; - $255 = (_sqlite3Atoi($254)|0); - $256 = (_sqlite3AbsInt32($255)|0); - (_sqlite3VdbeAddOp3($251,154,$252,$253,$256)|0); - } - $257 = HEAP32[$v>>2]|0; - $258 = HEAP32[$iReg>>2]|0; - (_sqlite3VdbeAddOp2($257,35,$258,1)|0); - $259 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($259,1); - $260 = HEAP32[$v>>2]|0; - $261 = HEAP32[$zLeft>>2]|0; - (_sqlite3VdbeSetColName($260,0,0,$261,(-1))|0); - break L21; - break; - } - case 14: { - $466 = HEAP32[$zRight>>2]|0; - $467 = ($466|0)==(0|0); - if ($467) { - label = 92; - } else { - $468 = HEAP32[$zRight>>2]|0; - $469 = (_sqlite3GetInt32($468,$iLimit8)|0); - $470 = ($469|0)==(0); - $471 = HEAP32[$iLimit8>>2]|0; - $472 = ($471|0)<=(0); - $or$cond3 = $470 | $472; - if ($or$cond3) { - label = 92; - } - } - if ((label|0) == 92) { - HEAP32[$iLimit8>>2] = 2147483647; - } - $473 = HEAP32[$0>>2]|0; - $474 = HEAP32[$iDb>>2]|0; - _sqlite3BeginWriteOperation($473,0,$474); - $475 = HEAP32[$v>>2]|0; - $476 = HEAP32[$iLimit8>>2]|0; - (_sqlite3VdbeAddOp2($475,25,$476,1)|0); - $477 = HEAP32[$v>>2]|0; - $478 = HEAP32[$iDb>>2]|0; - $479 = (_sqlite3VdbeAddOp1($477,138,$478)|0); - HEAP32[$addr9>>2] = $479; - $480 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp1($480,35,1)|0); - $481 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($481,37,1,-1)|0); - $482 = HEAP32[$v>>2]|0; - $483 = HEAP32[$addr9>>2]|0; - (_sqlite3VdbeAddOp2($482,134,1,$483)|0); - $484 = HEAP32[$v>>2]|0; - $485 = HEAP32[$addr9>>2]|0; - _sqlite3VdbeJumpHere($484,$485); - break L21; - break; - } - case 19: { - $368 = HEAP32[$pDb>>2]|0; - $369 = (($368) + 4|0); - $370 = HEAP32[$369>>2]|0; - $371 = (_sqlite3BtreePager($370)|0); - HEAP32[$pPager6>>2] = $371; - $372 = $iLimit; - $373 = $372; - HEAP32[$373>>2] = -2; - $374 = (($372) + 4)|0; - $375 = $374; - HEAP32[$375>>2] = -1; - $376 = HEAP32[$zRight>>2]|0; - $377 = ($376|0)!=(0|0); - if ($377) { - $378 = HEAP32[$zRight>>2]|0; - $379 = HEAP32[$zRight>>2]|0; - $380 = (_sqlite3Strlen30($379)|0); - (_sqlite3Atoi64($378,$iLimit,$380,1)|0); - $381 = $iLimit; - $382 = $381; - $383 = HEAP32[$382>>2]|0; - $384 = (($381) + 4)|0; - $385 = $384; - $386 = HEAP32[$385>>2]|0; - $387 = ($386|0)<(-1); - $388 = ($386|0)==(-1); - $389 = ($383>>>0)<(4294967295); - $390 = $388 & $389; - $391 = $387 | $390; - if ($391) { - $392 = $iLimit; - $393 = $392; - HEAP32[$393>>2] = -1; - $394 = (($392) + 4)|0; - $395 = $394; - HEAP32[$395>>2] = -1; - } - } - $396 = HEAP32[$pPager6>>2]|0; - $397 = $iLimit; - $398 = $397; - $399 = HEAP32[$398>>2]|0; - $400 = (($397) + 4)|0; - $401 = $400; - $402 = HEAP32[$401>>2]|0; - $403 = (_sqlite3PagerJournalSizeLimit($396,$399,$402)|0); - $404 = tempRet0; - $405 = $iLimit; - $406 = $405; - HEAP32[$406>>2] = $403; - $407 = (($405) + 4)|0; - $408 = $407; - HEAP32[$408>>2] = $404; - $409 = HEAP32[$0>>2]|0; - $410 = $iLimit; - $411 = $410; - $412 = HEAP32[$411>>2]|0; - $413 = (($410) + 4)|0; - $414 = $413; - $415 = HEAP32[$414>>2]|0; - _returnSingleInt($409,20976,$412,$415); - break L21; - break; - } - case 25: { - $202 = HEAP32[$pDb>>2]|0; - $203 = (($202) + 4|0); - $204 = HEAP32[$203>>2]|0; - HEAP32[$pBt2>>2] = $204; - HEAP32[$b>>2] = -1; - $205 = HEAP32[$zRight>>2]|0; - $206 = ($205|0)!=(0|0); - if ($206) { - $207 = HEAP32[$zRight>>2]|0; - $208 = (_sqlite3GetBoolean($207,0)|0); - $209 = $208&255; - HEAP32[$b>>2] = $209; - } - $210 = HEAP32[$2>>2]|0; - $211 = (($210) + 4|0); - $212 = HEAP32[$211>>2]|0; - $213 = ($212|0)==(0); - L227: do { - if ($213) { - $214 = HEAP32[$b>>2]|0; - $215 = ($214|0)>=(0); - if ($215) { - HEAP32[$ii>>2] = 0; - while(1) { - $216 = HEAP32[$ii>>2]|0; - $217 = HEAP32[$db>>2]|0; - $218 = (($217) + 20|0); - $219 = HEAP32[$218>>2]|0; - $220 = ($216|0)<($219|0); - if (!($220)) { - break L227; - } - $221 = HEAP32[$ii>>2]|0; - $222 = HEAP32[$db>>2]|0; - $223 = (($222) + 16|0); - $224 = HEAP32[$223>>2]|0; - $225 = (($224) + ($221<<4)|0); - $226 = (($225) + 4|0); - $227 = HEAP32[$226>>2]|0; - $228 = HEAP32[$b>>2]|0; - (_sqlite3BtreeSecureDelete($227,$228)|0); - $229 = HEAP32[$ii>>2]|0; - $230 = (($229) + 1)|0; - HEAP32[$ii>>2] = $230; - } - } - } - } while(0); - $231 = HEAP32[$pBt2>>2]|0; - $232 = HEAP32[$b>>2]|0; - $233 = (_sqlite3BtreeSecureDelete($231,$232)|0); - HEAP32[$b>>2] = $233; - $234 = HEAP32[$0>>2]|0; - $235 = HEAP32[$b>>2]|0; - $236 = ($235|0)<(0); - $237 = $236 << 31 >> 31; - _returnSingleInt($234,20904,$235,$237); - break L21; - break; - } - case 12: { - $1057 = HEAP32[$0>>2]|0; - $1058 = (($1057) + 72|0); - $1059 = HEAP32[$1058>>2]|0; - $1060 = (($1059) + 1)|0; - HEAP32[$regResult>>2] = $1060; - $1061 = HEAP32[$0>>2]|0; - $1062 = (($1061) + 72|0); - $1063 = HEAP32[$1062>>2]|0; - $1064 = (($1063) + 4)|0; - HEAP32[$1062>>2] = $1064; - $1065 = HEAP32[$0>>2]|0; - $1066 = (($1065) + 72|0); - $1067 = HEAP32[$1066>>2]|0; - $1068 = (($1067) + 1)|0; - HEAP32[$1066>>2] = $1068; - HEAP32[$regKey>>2] = $1068; - $1069 = HEAP32[$0>>2]|0; - $1070 = (($1069) + 72|0); - $1071 = HEAP32[$1070>>2]|0; - $1072 = (($1071) + 1)|0; - HEAP32[$1070>>2] = $1072; - HEAP32[$regRow>>2] = $1072; - $1073 = HEAP32[$0>>2]|0; - $1074 = (_sqlite3GetVdbe($1073)|0); - HEAP32[$v>>2] = $1074; - $1075 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($1075,4); - $1076 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($1076,0,0,21256,0)|0); - $1077 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($1077,1,0,9896,0)|0); - $1078 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($1078,2,0,21384,0)|0); - $1079 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($1079,3,0,21392,0)|0); - $1080 = HEAP32[$0>>2]|0; - $1081 = HEAP32[$iDb>>2]|0; - _sqlite3CodeVerifySchema($1080,$1081); - $1082 = HEAP32[$iDb>>2]|0; - $1083 = HEAP32[$db>>2]|0; - $1084 = (($1083) + 16|0); - $1085 = HEAP32[$1084>>2]|0; - $1086 = (($1085) + ($1082<<4)|0); - $1087 = (($1086) + 12|0); - $1088 = HEAP32[$1087>>2]|0; - $1089 = (($1088) + 8|0); - $1090 = (($1089) + 8|0); - $1091 = HEAP32[$1090>>2]|0; - HEAP32[$k28>>2] = $1091; - while(1) { - $1092 = HEAP32[$k28>>2]|0; - $1093 = ($1092|0)!=(0|0); - if (!($1093)) { - break L21; - } - $1094 = HEAP32[$zRight>>2]|0; - $1095 = ($1094|0)!=(0|0); - if ($1095) { - $1096 = HEAP32[$0>>2]|0; - $1097 = HEAP32[$zRight>>2]|0; - $1098 = HEAP32[$zDb>>2]|0; - $1099 = (_sqlite3LocateTable($1096,0,$1097,$1098)|0); - HEAP32[$pTab24>>2] = $1099; - HEAP32[$k28>>2] = 0; - } else { - $1100 = HEAP32[$k28>>2]|0; - $1101 = (($1100) + 8|0); - $1102 = HEAP32[$1101>>2]|0; - HEAP32[$pTab24>>2] = $1102; - $1103 = HEAP32[$k28>>2]|0; - $1104 = HEAP32[$1103>>2]|0; - HEAP32[$k28>>2] = $1104; - } - $1105 = HEAP32[$pTab24>>2]|0; - $1106 = ($1105|0)==(0|0); - if ($1106) { - continue; - } - $1107 = HEAP32[$pTab24>>2]|0; - $1108 = (($1107) + 16|0); - $1109 = HEAP32[$1108>>2]|0; - $1110 = ($1109|0)==(0|0); - if ($1110) { - continue; - } - $1111 = HEAP32[$0>>2]|0; - $1112 = HEAP32[$iDb>>2]|0; - $1113 = HEAP32[$pTab24>>2]|0; - $1114 = (($1113) + 32|0); - $1115 = HEAP32[$1114>>2]|0; - $1116 = HEAP32[$pTab24>>2]|0; - $1117 = HEAP32[$1116>>2]|0; - _sqlite3TableLock($1111,$1112,$1115,0,$1117); - $1118 = HEAP32[$pTab24>>2]|0; - $1119 = (($1118) + 38|0); - $1120 = HEAP16[$1119>>1]|0; - $1121 = $1120 << 16 >> 16; - $1122 = HEAP32[$regRow>>2]|0; - $1123 = (($1121) + ($1122))|0; - $1124 = HEAP32[$0>>2]|0; - $1125 = (($1124) + 72|0); - $1126 = HEAP32[$1125>>2]|0; - $1127 = ($1123|0)>($1126|0); - if ($1127) { - $1128 = HEAP32[$pTab24>>2]|0; - $1129 = (($1128) + 38|0); - $1130 = HEAP16[$1129>>1]|0; - $1131 = $1130 << 16 >> 16; - $1132 = HEAP32[$regRow>>2]|0; - $1133 = (($1131) + ($1132))|0; - $1134 = HEAP32[$0>>2]|0; - $1135 = (($1134) + 72|0); - HEAP32[$1135>>2] = $1133; - } - $1136 = HEAP32[$0>>2]|0; - $1137 = HEAP32[$iDb>>2]|0; - $1138 = HEAP32[$pTab24>>2]|0; - _sqlite3OpenTable($1136,0,$1137,$1138,52); - $1139 = HEAP32[$v>>2]|0; - $1140 = HEAP32[$regResult>>2]|0; - $1141 = HEAP32[$pTab24>>2]|0; - $1142 = HEAP32[$1141>>2]|0; - (_sqlite3VdbeAddOp4($1139,97,0,$1140,0,$1142,0)|0); - HEAP32[$i26>>2] = 1; - $1143 = HEAP32[$pTab24>>2]|0; - $1144 = (($1143) + 16|0); - $1145 = HEAP32[$1144>>2]|0; - HEAP32[$pFK23>>2] = $1145; - L247: while(1) { - $1146 = HEAP32[$pFK23>>2]|0; - $1147 = ($1146|0)!=(0|0); - if (!($1147)) { - break; - } - $1148 = HEAP32[$db>>2]|0; - $1149 = HEAP32[$pFK23>>2]|0; - $1150 = (($1149) + 8|0); - $1151 = HEAP32[$1150>>2]|0; - $1152 = HEAP32[$zDb>>2]|0; - $1153 = (_sqlite3FindTable($1148,$1151,$1152)|0); - HEAP32[$pParent>>2] = $1153; - $1154 = HEAP32[$pParent>>2]|0; - $1155 = ($1154|0)==(0|0); - do { - if (!($1155)) { - HEAP32[$pIdx25>>2] = 0; - $1156 = HEAP32[$0>>2]|0; - $1157 = HEAP32[$iDb>>2]|0; - $1158 = HEAP32[$pParent>>2]|0; - $1159 = (($1158) + 32|0); - $1160 = HEAP32[$1159>>2]|0; - $1161 = HEAP32[$pParent>>2]|0; - $1162 = HEAP32[$1161>>2]|0; - _sqlite3TableLock($1156,$1157,$1160,0,$1162); - $1163 = HEAP32[$0>>2]|0; - $1164 = HEAP32[$pParent>>2]|0; - $1165 = HEAP32[$pFK23>>2]|0; - $1166 = (_sqlite3FkLocateIndex($1163,$1164,$1165,$pIdx25,0)|0); - HEAP32[$x>>2] = $1166; - $1167 = HEAP32[$x>>2]|0; - $1168 = ($1167|0)==(0); - if (!($1168)) { - label = 198; - break L247; - } - $1169 = HEAP32[$pIdx25>>2]|0; - $1170 = ($1169|0)==(0|0); - if ($1170) { - $1171 = HEAP32[$0>>2]|0; - $1172 = HEAP32[$i26>>2]|0; - $1173 = HEAP32[$iDb>>2]|0; - $1174 = HEAP32[$pParent>>2]|0; - _sqlite3OpenTable($1171,$1172,$1173,$1174,52); - break; - } else { - $1175 = HEAP32[$v>>2]|0; - $1176 = HEAP32[$i26>>2]|0; - $1177 = HEAP32[$pIdx25>>2]|0; - $1178 = (($1177) + 44|0); - $1179 = HEAP32[$1178>>2]|0; - $1180 = HEAP32[$iDb>>2]|0; - (_sqlite3VdbeAddOp3($1175,52,$1176,$1179,$1180)|0); - $1181 = HEAP32[$0>>2]|0; - $1182 = HEAP32[$pIdx25>>2]|0; - _sqlite3VdbeSetP4KeyInfo($1181,$1182); - break; - } - } - } while(0); - $1183 = HEAP32[$i26>>2]|0; - $1184 = (($1183) + 1)|0; - HEAP32[$i26>>2] = $1184; - $1185 = HEAP32[$pFK23>>2]|0; - $1186 = (($1185) + 4|0); - $1187 = HEAP32[$1186>>2]|0; - HEAP32[$pFK23>>2] = $1187; - } - if ((label|0) == 198) { - label = 0; - HEAP32[$k28>>2] = 0; - } - $1188 = HEAP32[$pFK23>>2]|0; - $1189 = ($1188|0)!=(0|0); - if ($1189) { - break L21; - } - $1190 = HEAP32[$0>>2]|0; - $1191 = (($1190) + 68|0); - $1192 = HEAP32[$1191>>2]|0; - $1193 = HEAP32[$i26>>2]|0; - $1194 = ($1192|0)<($1193|0); - if ($1194) { - $1195 = HEAP32[$i26>>2]|0; - $1196 = HEAP32[$0>>2]|0; - $1197 = (($1196) + 68|0); - HEAP32[$1197>>2] = $1195; - } - $1198 = HEAP32[$v>>2]|0; - $1199 = (_sqlite3VdbeAddOp1($1198,105,0)|0); - HEAP32[$addrTop>>2] = $1199; - HEAP32[$i26>>2] = 1; - $1200 = HEAP32[$pTab24>>2]|0; - $1201 = (($1200) + 16|0); - $1202 = HEAP32[$1201>>2]|0; - HEAP32[$pFK23>>2] = $1202; - while(1) { - $1203 = HEAP32[$pFK23>>2]|0; - $1204 = ($1203|0)!=(0|0); - if (!($1204)) { - break; - } - $1205 = HEAP32[$db>>2]|0; - $1206 = HEAP32[$pFK23>>2]|0; - $1207 = (($1206) + 8|0); - $1208 = HEAP32[$1207>>2]|0; - $1209 = HEAP32[$zDb>>2]|0; - $1210 = (_sqlite3FindTable($1205,$1208,$1209)|0); - HEAP32[$pParent>>2] = $1210; - HEAP32[$pIdx25>>2] = 0; - HEAP32[$aiCols>>2] = 0; - $1211 = HEAP32[$pParent>>2]|0; - $1212 = ($1211|0)!=(0|0); - if ($1212) { - $1213 = HEAP32[$0>>2]|0; - $1214 = HEAP32[$pParent>>2]|0; - $1215 = HEAP32[$pFK23>>2]|0; - $1216 = (_sqlite3FkLocateIndex($1213,$1214,$1215,$pIdx25,$aiCols)|0); - HEAP32[$x>>2] = $1216; - } - $1217 = HEAP32[$v>>2]|0; - $1218 = (_sqlite3VdbeMakeLabel($1217)|0); - HEAP32[$addrOk>>2] = $1218; - $1219 = HEAP32[$pParent>>2]|0; - $1220 = ($1219|0)!=(0|0); - do { - if ($1220) { - $1221 = HEAP32[$pIdx25>>2]|0; - $1222 = ($1221|0)==(0|0); - if (!($1222)) { - label = 213; - break; - } - $1223 = HEAP32[$pFK23>>2]|0; - $1224 = (($1223) + 36|0); - $1225 = HEAP32[$1224>>2]|0; - HEAP32[$iKey>>2] = $1225; - $1226 = HEAP32[$iKey>>2]|0; - $1227 = HEAP32[$pTab24>>2]|0; - $1228 = (($1227) + 36|0); - $1229 = HEAP16[$1228>>1]|0; - $1230 = $1229 << 16 >> 16; - $1231 = ($1226|0)!=($1230|0); - $1232 = HEAP32[$v>>2]|0; - if ($1231) { - $1233 = HEAP32[$iKey>>2]|0; - $1234 = HEAP32[$regRow>>2]|0; - (_sqlite3VdbeAddOp3($1232,46,0,$1233,$1234)|0); - $1235 = HEAP32[$v>>2]|0; - $1236 = HEAP32[$pTab24>>2]|0; - $1237 = HEAP32[$iKey>>2]|0; - $1238 = HEAP32[$regRow>>2]|0; - _sqlite3ColumnDefault($1235,$1236,$1237,$1238); - $1239 = HEAP32[$v>>2]|0; - $1240 = HEAP32[$regRow>>2]|0; - $1241 = HEAP32[$addrOk>>2]|0; - (_sqlite3VdbeAddOp2($1239,76,$1240,$1241)|0); - $1242 = HEAP32[$v>>2]|0; - $1243 = HEAP32[$regRow>>2]|0; - $1244 = HEAP32[$v>>2]|0; - $1245 = (_sqlite3VdbeCurrentAddr($1244)|0); - $1246 = (($1245) + 3)|0; - (_sqlite3VdbeAddOp2($1242,38,$1243,$1246)|0); - } else { - $1247 = HEAP32[$regRow>>2]|0; - (_sqlite3VdbeAddOp2($1232,100,0,$1247)|0); - } - $1248 = HEAP32[$v>>2]|0; - $1249 = HEAP32[$i26>>2]|0; - $1250 = HEAP32[$regRow>>2]|0; - (_sqlite3VdbeAddOp3($1248,67,$1249,0,$1250)|0); - $1251 = HEAP32[$v>>2]|0; - $1252 = HEAP32[$addrOk>>2]|0; - (_sqlite3VdbeAddOp2($1251,16,0,$1252)|0); - $1253 = HEAP32[$v>>2]|0; - $1254 = HEAP32[$v>>2]|0; - $1255 = (_sqlite3VdbeCurrentAddr($1254)|0); - $1256 = (($1255) - 2)|0; - _sqlite3VdbeJumpHere($1253,$1256); - } else { - label = 213; - } - } while(0); - do { - if ((label|0) == 213) { - label = 0; - HEAP32[$j27>>2] = 0; - while(1) { - $1257 = HEAP32[$j27>>2]|0; - $1258 = HEAP32[$pFK23>>2]|0; - $1259 = (($1258) + 20|0); - $1260 = HEAP32[$1259>>2]|0; - $1261 = ($1257|0)<($1260|0); - if (!($1261)) { - break; - } - $1262 = HEAP32[$v>>2]|0; - $1263 = HEAP32[$pTab24>>2]|0; - $1264 = HEAP32[$aiCols>>2]|0; - $1265 = ($1264|0)!=(0|0); - $1266 = HEAP32[$j27>>2]|0; - if ($1265) { - $1267 = HEAP32[$aiCols>>2]|0; - $1268 = (($1267) + ($1266<<2)|0); - $1269 = HEAP32[$1268>>2]|0; - $1277 = $1269; - } else { - $1270 = HEAP32[$pFK23>>2]|0; - $1271 = (($1270) + 36|0); - $1272 = (($1271) + ($1266<<3)|0); - $1273 = HEAP32[$1272>>2]|0; - $1277 = $1273; - } - $1274 = HEAP32[$regRow>>2]|0; - $1275 = HEAP32[$j27>>2]|0; - $1276 = (($1274) + ($1275))|0; - _sqlite3ExprCodeGetColumnOfTable($1262,$1263,0,$1277,$1276); - $1278 = HEAP32[$v>>2]|0; - $1279 = HEAP32[$regRow>>2]|0; - $1280 = HEAP32[$j27>>2]|0; - $1281 = (($1279) + ($1280))|0; - $1282 = HEAP32[$addrOk>>2]|0; - (_sqlite3VdbeAddOp2($1278,76,$1281,$1282)|0); - $1283 = HEAP32[$j27>>2]|0; - $1284 = (($1283) + 1)|0; - HEAP32[$j27>>2] = $1284; - } - $1285 = HEAP32[$pParent>>2]|0; - $1286 = ($1285|0)!=(0|0); - if (!($1286)) { - break; - } - $1287 = HEAP32[$v>>2]|0; - $1288 = HEAP32[$regRow>>2]|0; - $1289 = HEAP32[$pFK23>>2]|0; - $1290 = (($1289) + 20|0); - $1291 = HEAP32[$1290>>2]|0; - $1292 = HEAP32[$regKey>>2]|0; - $1293 = HEAP32[$v>>2]|0; - $1294 = HEAP32[$pIdx25>>2]|0; - $1295 = (_sqlite3IndexAffinityStr($1293,$1294)|0); - $1296 = HEAP32[$pFK23>>2]|0; - $1297 = (($1296) + 20|0); - $1298 = HEAP32[$1297>>2]|0; - (_sqlite3VdbeAddOp4($1287,48,$1288,$1291,$1292,$1295,$1298)|0); - $1299 = HEAP32[$v>>2]|0; - $1300 = HEAP32[$i26>>2]|0; - $1301 = HEAP32[$addrOk>>2]|0; - $1302 = HEAP32[$regKey>>2]|0; - (_sqlite3VdbeAddOp4Int($1299,66,$1300,$1301,$1302,0)|0); - } - } while(0); - $1303 = HEAP32[$v>>2]|0; - $1304 = HEAP32[$regResult>>2]|0; - $1305 = (($1304) + 1)|0; - (_sqlite3VdbeAddOp2($1303,100,0,$1305)|0); - $1306 = HEAP32[$v>>2]|0; - $1307 = HEAP32[$regResult>>2]|0; - $1308 = (($1307) + 2)|0; - $1309 = HEAP32[$pFK23>>2]|0; - $1310 = (($1309) + 8|0); - $1311 = HEAP32[$1310>>2]|0; - (_sqlite3VdbeAddOp4($1306,97,0,$1308,0,$1311,0)|0); - $1312 = HEAP32[$v>>2]|0; - $1313 = HEAP32[$i26>>2]|0; - $1314 = (($1313) - 1)|0; - $1315 = HEAP32[$regResult>>2]|0; - $1316 = (($1315) + 3)|0; - (_sqlite3VdbeAddOp2($1312,25,$1314,$1316)|0); - $1317 = HEAP32[$v>>2]|0; - $1318 = HEAP32[$regResult>>2]|0; - (_sqlite3VdbeAddOp2($1317,35,$1318,4)|0); - $1319 = HEAP32[$v>>2]|0; - $1320 = HEAP32[$addrOk>>2]|0; - _sqlite3VdbeResolveLabel($1319,$1320); - $1321 = HEAP32[$db>>2]|0; - $1322 = HEAP32[$aiCols>>2]|0; - _sqlite3DbFree($1321,$1322); - $1323 = HEAP32[$i26>>2]|0; - $1324 = (($1323) + 1)|0; - HEAP32[$i26>>2] = $1324; - $1325 = HEAP32[$pFK23>>2]|0; - $1326 = (($1325) + 4|0); - $1327 = HEAP32[$1326>>2]|0; - HEAP32[$pFK23>>2] = $1327; - } - $1328 = HEAP32[$v>>2]|0; - $1329 = HEAP32[$addrTop>>2]|0; - $1330 = (($1329) + 1)|0; - (_sqlite3VdbeAddOp2($1328,9,0,$1330)|0); - $1331 = HEAP32[$v>>2]|0; - $1332 = HEAP32[$addrTop>>2]|0; - _sqlite3VdbeJumpHere($1331,$1332); - } - break; - } - case 17: { - $1339 = HEAP32[$zLeft>>2]|0; - $1340 = HEAP8[$1339>>0]|0; - $1341 = $1340&255; - $1342 = (696 + ($1341)|0); - $1343 = HEAP8[$1342>>0]|0; - $1344 = $1343&255; - $1345 = ($1344|0)==(113); - $1346 = $1345&1; - HEAP32[$isQuick>>2] = $1346; - $1347 = HEAP32[$2>>2]|0; - $1348 = HEAP32[$1347>>2]|0; - $1349 = ($1348|0)==(0|0); - if ($1349) { - HEAP32[$iDb>>2] = -1; - } - $1350 = HEAP32[$0>>2]|0; - $1351 = (($1350) + 72|0); - HEAP32[$1351>>2] = 6; - $1352 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($1352,1); - $1353 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($1353,0,0,21416,0)|0); - HEAP32[$mxErr>>2] = 100; - $1354 = HEAP32[$zRight>>2]|0; - $1355 = ($1354|0)!=(0|0); - if ($1355) { - $1356 = HEAP32[$zRight>>2]|0; - (_sqlite3GetInt32($1356,$mxErr)|0); - $1357 = HEAP32[$mxErr>>2]|0; - $1358 = ($1357|0)<=(0); - if ($1358) { - HEAP32[$mxErr>>2] = 100; - } - } - $1359 = HEAP32[$v>>2]|0; - $1360 = HEAP32[$mxErr>>2]|0; - (_sqlite3VdbeAddOp2($1359,25,$1360,1)|0); - HEAP32[$i29>>2] = 0; - while(1) { - $1361 = HEAP32[$i29>>2]|0; - $1362 = HEAP32[$db>>2]|0; - $1363 = (($1362) + 20|0); - $1364 = HEAP32[$1363>>2]|0; - $1365 = ($1361|0)<($1364|0); - if (!($1365)) { - break; - } - HEAP32[$cnt>>2] = 0; - $1366 = HEAP32[$iDb>>2]|0; - $1367 = ($1366|0)>=(0); - if ($1367) { - $1368 = HEAP32[$i29>>2]|0; - $1369 = HEAP32[$iDb>>2]|0; - $1370 = ($1368|0)!=($1369|0); - if (!($1370)) { - label = 234; - } - } else { - label = 234; - } - L303: do { - if ((label|0) == 234) { - label = 0; - $1371 = HEAP32[$0>>2]|0; - $1372 = HEAP32[$i29>>2]|0; - _sqlite3CodeVerifySchema($1371,$1372); - $1373 = HEAP32[$v>>2]|0; - $1374 = (_sqlite3VdbeAddOp1($1373,134,1)|0); - HEAP32[$addr31>>2] = $1374; - $1375 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($1375,24,0,0)|0); - $1376 = HEAP32[$v>>2]|0; - $1377 = HEAP32[$addr31>>2]|0; - _sqlite3VdbeJumpHere($1376,$1377); - $1378 = HEAP32[$i29>>2]|0; - $1379 = HEAP32[$db>>2]|0; - $1380 = (($1379) + 16|0); - $1381 = HEAP32[$1380>>2]|0; - $1382 = (($1381) + ($1378<<4)|0); - $1383 = (($1382) + 12|0); - $1384 = HEAP32[$1383>>2]|0; - $1385 = (($1384) + 8|0); - HEAP32[$pTbls>>2] = $1385; - $1386 = HEAP32[$pTbls>>2]|0; - $1387 = (($1386) + 8|0); - $1388 = HEAP32[$1387>>2]|0; - HEAP32[$x32>>2] = $1388; - while(1) { - $1389 = HEAP32[$x32>>2]|0; - $1390 = ($1389|0)!=(0|0); - if (!($1390)) { - break; - } - $1391 = HEAP32[$x32>>2]|0; - $1392 = (($1391) + 8|0); - $1393 = HEAP32[$1392>>2]|0; - HEAP32[$pTab33>>2] = $1393; - $1394 = HEAP32[$pTab33>>2]|0; - $1395 = (($1394) + 44|0); - $1396 = HEAP8[$1395>>0]|0; - $1397 = $1396&255; - $1398 = $1397 & 32; - $1399 = ($1398|0)==(0); - if ($1399) { - $1400 = HEAP32[$v>>2]|0; - $1401 = HEAP32[$pTab33>>2]|0; - $1402 = (($1401) + 32|0); - $1403 = HEAP32[$1402>>2]|0; - $1404 = HEAP32[$cnt>>2]|0; - $1405 = (2 + ($1404))|0; - (_sqlite3VdbeAddOp2($1400,25,$1403,$1405)|0); - $1406 = HEAP32[$cnt>>2]|0; - $1407 = (($1406) + 1)|0; - HEAP32[$cnt>>2] = $1407; - } - $1408 = HEAP32[$pTab33>>2]|0; - $1409 = (($1408) + 8|0); - $1410 = HEAP32[$1409>>2]|0; - HEAP32[$pIdx34>>2] = $1410; - while(1) { - $1411 = HEAP32[$pIdx34>>2]|0; - $1412 = ($1411|0)!=(0|0); - if (!($1412)) { - break; - } - $1413 = HEAP32[$v>>2]|0; - $1414 = HEAP32[$pIdx34>>2]|0; - $1415 = (($1414) + 44|0); - $1416 = HEAP32[$1415>>2]|0; - $1417 = HEAP32[$cnt>>2]|0; - $1418 = (2 + ($1417))|0; - (_sqlite3VdbeAddOp2($1413,25,$1416,$1418)|0); - $1419 = HEAP32[$cnt>>2]|0; - $1420 = (($1419) + 1)|0; - HEAP32[$cnt>>2] = $1420; - $1421 = HEAP32[$pIdx34>>2]|0; - $1422 = (($1421) + 20|0); - $1423 = HEAP32[$1422>>2]|0; - HEAP32[$pIdx34>>2] = $1423; - } - $1424 = HEAP32[$x32>>2]|0; - $1425 = HEAP32[$1424>>2]|0; - HEAP32[$x32>>2] = $1425; - } - $1426 = HEAP32[$0>>2]|0; - $1427 = (($1426) + 72|0); - $1428 = HEAP32[$1427>>2]|0; - $1429 = HEAP32[$cnt>>2]|0; - $1430 = (($1429) + 8)|0; - $1431 = ($1428|0)>($1430|0); - if ($1431) { - $1432 = HEAP32[$0>>2]|0; - $1433 = (($1432) + 72|0); - $1434 = HEAP32[$1433>>2]|0; - $1439 = $1434; - } else { - $1435 = HEAP32[$cnt>>2]|0; - $1436 = (($1435) + 8)|0; - $1439 = $1436; - } - $1437 = HEAP32[$0>>2]|0; - $1438 = (($1437) + 72|0); - HEAP32[$1438>>2] = $1439; - $1440 = HEAP32[$v>>2]|0; - $1441 = HEAP32[$cnt>>2]|0; - (_sqlite3VdbeAddOp3($1440,124,2,$1441,1)|0); - $1442 = HEAP32[$v>>2]|0; - $1443 = HEAP32[$i29>>2]|0; - $1444 = $1443&255; - _sqlite3VdbeChangeP5($1442,$1444); - $1445 = HEAP32[$v>>2]|0; - $1446 = (_sqlite3VdbeAddOp1($1445,76,2)|0); - HEAP32[$addr31>>2] = $1446; - $1447 = HEAP32[$v>>2]|0; - $1448 = HEAP32[$db>>2]|0; - $1449 = HEAP32[$i29>>2]|0; - $1450 = HEAP32[$db>>2]|0; - $1451 = (($1450) + 16|0); - $1452 = HEAP32[$1451>>2]|0; - $1453 = (($1452) + ($1449<<4)|0); - $1454 = HEAP32[$1453>>2]|0; - HEAP32[$vararg_buffer18>>2] = $1454; - $1455 = (_sqlite3MPrintf($1448,21432,$vararg_buffer18)|0); - (_sqlite3VdbeAddOp4($1447,97,0,3,0,$1455,-1)|0); - $1456 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp3($1456,32,2,4,1)|0); - $1457 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp3($1457,94,4,3,2)|0); - $1458 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($1458,35,2,1)|0); - $1459 = HEAP32[$v>>2]|0; - $1460 = HEAP32[$addr31>>2]|0; - _sqlite3VdbeJumpHere($1459,$1460); - $1461 = HEAP32[$pTbls>>2]|0; - $1462 = (($1461) + 8|0); - $1463 = HEAP32[$1462>>2]|0; - HEAP32[$x32>>2] = $1463; - while(1) { - $1464 = HEAP32[$x32>>2]|0; - $1465 = ($1464|0)!=(0|0); - if (!($1465)) { - break L303; - } - $1466 = HEAP32[$isQuick>>2]|0; - $1467 = ($1466|0)!=(0); - $1468 = $1467 ^ 1; - if (!($1468)) { - break L303; - } - $1469 = HEAP32[$x32>>2]|0; - $1470 = (($1469) + 8|0); - $1471 = HEAP32[$1470>>2]|0; - HEAP32[$pTab35>>2] = $1471; - HEAP32[$pPrior>>2] = 0; - HEAP32[$r1>>2] = -1; - $1472 = HEAP32[$pTab35>>2]|0; - $1473 = (($1472) + 8|0); - $1474 = HEAP32[$1473>>2]|0; - $1475 = ($1474|0)==(0|0); - L324: do { - if (!($1475)) { - $1476 = HEAP32[$pTab35>>2]|0; - $1477 = (($1476) + 44|0); - $1478 = HEAP8[$1477>>0]|0; - $1479 = $1478&255; - $1480 = $1479 & 32; - $1481 = ($1480|0)==(0); - if ($1481) { - $1484 = 0; - } else { - $1482 = HEAP32[$pTab35>>2]|0; - $1483 = (_sqlite3PrimaryKeyIndex($1482)|0); - $1484 = $1483; - } - HEAP32[$pPk37>>2] = $1484; - $1485 = HEAP32[$v>>2]|0; - $1486 = (_sqlite3VdbeAddOp1($1485,134,1)|0); - HEAP32[$addr31>>2] = $1486; - $1487 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($1487,24,0,0)|0); - $1488 = HEAP32[$v>>2]|0; - $1489 = HEAP32[$addr31>>2]|0; - _sqlite3VdbeJumpHere($1488,$1489); - $1490 = HEAP32[$0>>2]|0; - _sqlite3ExprCacheClear($1490); - $1491 = HEAP32[$0>>2]|0; - $1492 = HEAP32[$pTab35>>2]|0; - (_sqlite3OpenTableAndIndices($1491,$1492,52,1,0,$iDataCur,$iIdxCur)|0); - $1493 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($1493,25,0,7)|0); - HEAP32[$j30>>2] = 0; - $1494 = HEAP32[$pTab35>>2]|0; - $1495 = (($1494) + 8|0); - $1496 = HEAP32[$1495>>2]|0; - HEAP32[$pIdx36>>2] = $1496; - while(1) { - $1497 = HEAP32[$pIdx36>>2]|0; - $1498 = ($1497|0)!=(0|0); - if (!($1498)) { - break; - } - $1499 = HEAP32[$v>>2]|0; - $1500 = HEAP32[$j30>>2]|0; - $1501 = (8 + ($1500))|0; - (_sqlite3VdbeAddOp2($1499,25,0,$1501)|0); - $1502 = HEAP32[$pIdx36>>2]|0; - $1503 = (($1502) + 20|0); - $1504 = HEAP32[$1503>>2]|0; - HEAP32[$pIdx36>>2] = $1504; - $1505 = HEAP32[$j30>>2]|0; - $1506 = (($1505) + 1)|0; - HEAP32[$j30>>2] = $1506; - } - $1507 = HEAP32[$0>>2]|0; - $1508 = (($1507) + 72|0); - $1509 = HEAP32[$1508>>2]|0; - $1510 = HEAP32[$j30>>2]|0; - $1511 = (8 + ($1510))|0; - $1512 = ($1509|0)>($1511|0); - if ($1512) { - $1513 = HEAP32[$0>>2]|0; - $1514 = (($1513) + 72|0); - $1515 = HEAP32[$1514>>2]|0; - $1520 = $1515; - } else { - $1516 = HEAP32[$j30>>2]|0; - $1517 = (8 + ($1516))|0; - $1520 = $1517; - } - $1518 = HEAP32[$0>>2]|0; - $1519 = (($1518) + 72|0); - HEAP32[$1519>>2] = $1520; - $1521 = HEAP32[$v>>2]|0; - $1522 = HEAP32[$iDataCur>>2]|0; - (_sqlite3VdbeAddOp2($1521,105,$1522,0)|0); - $1523 = HEAP32[$v>>2]|0; - $1524 = (_sqlite3VdbeAddOp2($1523,37,7,1)|0); - HEAP32[$loopTop>>2] = $1524; - HEAP32[$j30>>2] = 0; - $1525 = HEAP32[$pTab35>>2]|0; - $1526 = (($1525) + 8|0); - $1527 = HEAP32[$1526>>2]|0; - HEAP32[$pIdx36>>2] = $1527; - while(1) { - $1528 = HEAP32[$pIdx36>>2]|0; - $1529 = ($1528|0)!=(0|0); - if (!($1529)) { - break; - } - $1530 = HEAP32[$pPk37>>2]|0; - $1531 = HEAP32[$pIdx36>>2]|0; - $1532 = ($1530|0)==($1531|0); - if (!($1532)) { - $1533 = HEAP32[$0>>2]|0; - $1534 = HEAP32[$pIdx36>>2]|0; - $1535 = HEAP32[$iDataCur>>2]|0; - $1536 = HEAP32[$pPrior>>2]|0; - $1537 = HEAP32[$r1>>2]|0; - $1538 = (_sqlite3GenerateIndexKey($1533,$1534,$1535,0,0,$jmp3,$1536,$1537)|0); - HEAP32[$r1>>2] = $1538; - $1539 = HEAP32[$pIdx36>>2]|0; - HEAP32[$pPrior>>2] = $1539; - $1540 = HEAP32[$v>>2]|0; - $1541 = HEAP32[$j30>>2]|0; - $1542 = (8 + ($1541))|0; - (_sqlite3VdbeAddOp2($1540,37,$1542,1)|0); - $1543 = HEAP32[$v>>2]|0; - $1544 = HEAP32[$iIdxCur>>2]|0; - $1545 = HEAP32[$j30>>2]|0; - $1546 = (($1544) + ($1545))|0; - $1547 = HEAP32[$r1>>2]|0; - $1548 = HEAP32[$pIdx36>>2]|0; - $1549 = (($1548) + 52|0); - $1550 = HEAP16[$1549>>1]|0; - $1551 = $1550&65535; - $1552 = (_sqlite3VdbeAddOp4Int($1543,66,$1546,0,$1547,$1551)|0); - HEAP32[$jmp2>>2] = $1552; - $1553 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($1553,37,1,-1)|0); - $1554 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp4($1554,97,0,3,0,21456,-2)|0); - $1555 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp3($1555,94,7,3,3)|0); - $1556 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp4($1556,97,0,4,0,21464,-2)|0); - $1557 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp3($1557,94,4,3,3)|0); - $1558 = HEAP32[$v>>2]|0; - $1559 = HEAP32[$pIdx36>>2]|0; - $1560 = HEAP32[$1559>>2]|0; - (_sqlite3VdbeAddOp4($1558,97,0,4,0,$1560,0)|0); - $1561 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp3($1561,94,4,3,3)|0); - $1562 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($1562,35,3,1)|0); - $1563 = HEAP32[$v>>2]|0; - $1564 = (_sqlite3VdbeAddOp1($1563,134,1)|0); - HEAP32[$jmp4>>2] = $1564; - $1565 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp0($1565,24)|0); - $1566 = HEAP32[$v>>2]|0; - $1567 = HEAP32[$jmp4>>2]|0; - _sqlite3VdbeJumpHere($1566,$1567); - $1568 = HEAP32[$v>>2]|0; - $1569 = HEAP32[$jmp2>>2]|0; - _sqlite3VdbeJumpHere($1568,$1569); - $1570 = HEAP32[$0>>2]|0; - $1571 = HEAP32[$jmp3>>2]|0; - _sqlite3ResolvePartIdxLabel($1570,$1571); - } - $1572 = HEAP32[$pIdx36>>2]|0; - $1573 = (($1572) + 20|0); - $1574 = HEAP32[$1573>>2]|0; - HEAP32[$pIdx36>>2] = $1574; - $1575 = HEAP32[$j30>>2]|0; - $1576 = (($1575) + 1)|0; - HEAP32[$j30>>2] = $1576; - } - $1577 = HEAP32[$v>>2]|0; - $1578 = HEAP32[$iDataCur>>2]|0; - $1579 = HEAP32[$loopTop>>2]|0; - (_sqlite3VdbeAddOp2($1577,9,$1578,$1579)|0); - $1580 = HEAP32[$v>>2]|0; - $1581 = HEAP32[$loopTop>>2]|0; - $1582 = (($1581) - 1)|0; - _sqlite3VdbeJumpHere($1580,$1582); - $1583 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp4($1583,97,0,2,0,21488,-2)|0); - HEAP32[$j30>>2] = 0; - $1584 = HEAP32[$pTab35>>2]|0; - $1585 = (($1584) + 8|0); - $1586 = HEAP32[$1585>>2]|0; - HEAP32[$pIdx36>>2] = $1586; - while(1) { - $1587 = HEAP32[$pIdx36>>2]|0; - $1588 = ($1587|0)!=(0|0); - if (!($1588)) { - break L324; - } - $1589 = HEAP32[$pPk37>>2]|0; - $1590 = HEAP32[$pIdx36>>2]|0; - $1591 = ($1589|0)==($1590|0); - if (!($1591)) { - $1592 = HEAP32[$v>>2]|0; - $1593 = (_sqlite3VdbeCurrentAddr($1592)|0); - HEAP32[$addr31>>2] = $1593; - $1594 = HEAP32[$v>>2]|0; - $1595 = HEAP32[$addr31>>2]|0; - $1596 = (($1595) + 2)|0; - (_sqlite3VdbeAddOp2($1594,134,1,$1596)|0); - $1597 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($1597,24,0,0)|0); - $1598 = HEAP32[$v>>2]|0; - $1599 = HEAP32[$iIdxCur>>2]|0; - $1600 = HEAP32[$j30>>2]|0; - $1601 = (($1599) + ($1600))|0; - (_sqlite3VdbeAddOp2($1598,49,$1601,3)|0); - $1602 = HEAP32[$v>>2]|0; - $1603 = HEAP32[$j30>>2]|0; - $1604 = (8 + ($1603))|0; - $1605 = HEAP32[$addr31>>2]|0; - $1606 = (($1605) + 8)|0; - (_sqlite3VdbeAddOp3($1602,79,$1604,$1606,3)|0); - $1607 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($1607,-120); - $1608 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($1608,37,1,-1)|0); - $1609 = HEAP32[$v>>2]|0; - $1610 = HEAP32[$pIdx36>>2]|0; - $1611 = HEAP32[$1610>>2]|0; - (_sqlite3VdbeAddOp4($1609,97,0,3,0,$1611,0)|0); - $1612 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp3($1612,94,3,2,7)|0); - $1613 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($1613,35,7,1)|0); - } - $1614 = HEAP32[$pIdx36>>2]|0; - $1615 = (($1614) + 20|0); - $1616 = HEAP32[$1615>>2]|0; - HEAP32[$pIdx36>>2] = $1616; - $1617 = HEAP32[$j30>>2]|0; - $1618 = (($1617) + 1)|0; - HEAP32[$j30>>2] = $1618; - } - } - } while(0); - $1619 = HEAP32[$x32>>2]|0; - $1620 = HEAP32[$1619>>2]|0; - HEAP32[$x32>>2] = $1620; - } - } - } while(0); - $1621 = HEAP32[$i29>>2]|0; - $1622 = (($1621) + 1)|0; - HEAP32[$i29>>2] = $1622; - } - $1623 = HEAP32[$v>>2]|0; - $1624 = (_sqlite3VdbeAddOpList($1623,4,21400,0)|0); - HEAP32[$addr31>>2] = $1624; - $1625 = HEAP32[$v>>2]|0; - $1626 = HEAP32[$addr31>>2]|0; - $1627 = HEAP32[$mxErr>>2]|0; - $1628 = (0 - ($1627))|0; - _sqlite3VdbeChangeP2($1625,$1626,$1628); - $1629 = HEAP32[$v>>2]|0; - $1630 = HEAP32[$addr31>>2]|0; - $1631 = (($1630) + 1)|0; - _sqlite3VdbeJumpHere($1629,$1631); - $1632 = HEAP32[$v>>2]|0; - $1633 = HEAP32[$addr31>>2]|0; - $1634 = (($1633) + 2)|0; - _sqlite3VdbeChangeP4($1632,$1634,21520,-2); - break L21; - break; - } - case 5: { - $1333 = HEAP32[$zRight>>2]|0; - $1334 = ($1333|0)!=(0|0); - if (!($1334)) { - break L21; - } - $1335 = HEAP32[$db>>2]|0; - $1336 = HEAP32[$zRight>>2]|0; - $1337 = (_sqlite3GetBoolean($1336,0)|0); - $1338 = $1337&255; - _sqlite3RegisterLikeFunctions($1335,$1338); - break L21; - break; - } - case 11: { - $1635 = HEAP32[$zRight>>2]|0; - $1636 = ($1635|0)!=(0|0); - if (!($1636)) { - $1637 = HEAP32[$0>>2]|0; - $1638 = (_sqlite3ReadSchema($1637)|0); - $1639 = ($1638|0)!=(0); - if ($1639) { - break L21; - } - $1640 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($1640,1); - $1641 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($1641,0,0,21680,0)|0); - $1642 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($1642,97,0,1)|0); - $1643 = HEAP32[$v>>2]|0; - $1644 = HEAP32[$0>>2]|0; - $1645 = HEAP32[$1644>>2]|0; - $1646 = (($1645) + 16|0); - $1647 = HEAP32[$1646>>2]|0; - $1648 = (($1647) + 12|0); - $1649 = HEAP32[$1648>>2]|0; - $1650 = (($1649) + 77|0); - $1651 = HEAP8[$1650>>0]|0; - $1652 = $1651&255; - $1653 = (21528 + ($1652<<3)|0); - $1654 = HEAP32[$1653>>2]|0; - _sqlite3VdbeChangeP4($1643,-1,$1654,-2); - $1655 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($1655,35,1,1)|0); - break L21; - } - $1656 = HEAP32[$db>>2]|0; - $1657 = (($1656) + 16|0); - $1658 = HEAP32[$1657>>2]|0; - $1659 = (($1658) + 12|0); - $1660 = HEAP32[$1659>>2]|0; - $1661 = (($1660) + 78|0); - $1662 = HEAP16[$1661>>1]|0; - $1663 = $1662&65535; - $1664 = $1663 & 1; - $1665 = ($1664|0)==(1); - if ($1665) { - $1666 = HEAP32[$db>>2]|0; - $1667 = (($1666) + 16|0); - $1668 = HEAP32[$1667>>2]|0; - $1669 = (($1668) + 12|0); - $1670 = HEAP32[$1669>>2]|0; - $1671 = (($1670) + 78|0); - $1672 = HEAP16[$1671>>1]|0; - $1673 = $1672&65535; - $1674 = $1673 & 4; - $1675 = ($1674|0)==(4); - if (!($1675)) { - break L21; - } - } - HEAP32[$pEnc>>2] = 21528; - while(1) { - $1676 = HEAP32[$pEnc>>2]|0; - $1677 = HEAP32[$1676>>2]|0; - $1678 = ($1677|0)!=(0|0); - if (!($1678)) { - break; - } - $1679 = HEAP32[$zRight>>2]|0; - $1680 = HEAP32[$pEnc>>2]|0; - $1681 = HEAP32[$1680>>2]|0; - $1682 = (_sqlite3_stricmp($1679,$1681)|0); - $1683 = (0)==($1682|0); - $1684 = HEAP32[$pEnc>>2]|0; - if ($1683) { - label = 278; - break; - } - $1706 = (($1684) + 8|0); - HEAP32[$pEnc>>2] = $1706; - } - if ((label|0) == 278) { - $1685 = (($1684) + 4|0); - $1686 = HEAP8[$1685>>0]|0; - $1687 = $1686&255; - $1688 = ($1687|0)!=(0); - if ($1688) { - $1689 = HEAP32[$pEnc>>2]|0; - $1690 = (($1689) + 4|0); - $1691 = HEAP8[$1690>>0]|0; - $1692 = $1691&255; - $1698 = $1692; - } else { - $1693 = HEAP8[1392>>0]|0; - $1694 = $1693 << 24 >> 24; - $1695 = ($1694|0)==(0); - $1696 = $1695 ? 3 : 2; - $1698 = $1696; - } - $1697 = $1698&255; - $1699 = HEAP32[$0>>2]|0; - $1700 = HEAP32[$1699>>2]|0; - $1701 = (($1700) + 16|0); - $1702 = HEAP32[$1701>>2]|0; - $1703 = (($1702) + 12|0); - $1704 = HEAP32[$1703>>2]|0; - $1705 = (($1704) + 77|0); - HEAP8[$1705>>0] = $1697; - } - $1707 = HEAP32[$pEnc>>2]|0; - $1708 = HEAP32[$1707>>2]|0; - $1709 = ($1708|0)!=(0|0); - if ($1709) { - break L21; - } - $1710 = HEAP32[$0>>2]|0; - $1711 = HEAP32[$zRight>>2]|0; - HEAP32[$vararg_buffer18>>2] = $1711; - _sqlite3ErrorMsg($1710,21696,$vararg_buffer18); - break L21; - break; - } - case 0: { - $1712 = HEAP32[$v>>2]|0; - $1713 = HEAP32[$iDb>>2]|0; - _sqlite3VdbeUsesBtree($1712,$1713); - $1714 = HEAP32[$zLeft>>2]|0; - $1715 = HEAP8[$1714>>0]|0; - $1716 = $1715 << 24 >> 24; - switch ($1716|0) { - case 65: case 97: { - HEAP32[$iCookie>>2] = 8; - break; - } - case 70: case 102: { - HEAP32[$iCookie>>2] = 0; - break; - } - case 83: case 115: { - HEAP32[$iCookie>>2] = 1; - break; - } - default: { - HEAP32[$iCookie>>2] = 6; - } - } - $1717 = HEAP32[$zRight>>2]|0; - $1718 = ($1717|0)!=(0|0); - if ($1718) { - $1719 = HEAP32[$iCookie>>2]|0; - $1720 = ($1719|0)!=(0); - if ($1720) { - $1721 = HEAP32[$v>>2]|0; - $1722 = (_sqlite3VdbeAddOpList($1721,3,21728,0)|0); - HEAP32[$addr38>>2] = $1722; - $1723 = HEAP32[$v>>2]|0; - $1724 = HEAP32[$addr38>>2]|0; - $1725 = HEAP32[$iDb>>2]|0; - _sqlite3VdbeChangeP1($1723,$1724,$1725); - $1726 = HEAP32[$v>>2]|0; - $1727 = HEAP32[$addr38>>2]|0; - $1728 = (($1727) + 1)|0; - $1729 = HEAP32[$zRight>>2]|0; - $1730 = (_sqlite3Atoi($1729)|0); - _sqlite3VdbeChangeP1($1726,$1728,$1730); - $1731 = HEAP32[$v>>2]|0; - $1732 = HEAP32[$addr38>>2]|0; - $1733 = (($1732) + 2)|0; - $1734 = HEAP32[$iDb>>2]|0; - _sqlite3VdbeChangeP1($1731,$1733,$1734); - $1735 = HEAP32[$v>>2]|0; - $1736 = HEAP32[$addr38>>2]|0; - $1737 = (($1736) + 2)|0; - $1738 = HEAP32[$iCookie>>2]|0; - _sqlite3VdbeChangeP2($1735,$1737,$1738); - break L21; - } - } - $1739 = HEAP32[$v>>2]|0; - $1740 = (_sqlite3VdbeAddOpList($1739,3,21744,0)|0); - HEAP32[$addr39>>2] = $1740; - $1741 = HEAP32[$v>>2]|0; - $1742 = HEAP32[$addr39>>2]|0; - $1743 = HEAP32[$iDb>>2]|0; - _sqlite3VdbeChangeP1($1741,$1742,$1743); - $1744 = HEAP32[$v>>2]|0; - $1745 = HEAP32[$addr39>>2]|0; - $1746 = (($1745) + 1)|0; - $1747 = HEAP32[$iDb>>2]|0; - _sqlite3VdbeChangeP1($1744,$1746,$1747); - $1748 = HEAP32[$v>>2]|0; - $1749 = HEAP32[$addr39>>2]|0; - $1750 = (($1749) + 1)|0; - $1751 = HEAP32[$iCookie>>2]|0; - _sqlite3VdbeChangeP3($1748,$1750,$1751); - $1752 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($1752,1); - $1753 = HEAP32[$v>>2]|0; - $1754 = HEAP32[$zLeft>>2]|0; - (_sqlite3VdbeSetColName($1753,0,0,$1754,(-1))|0); - break L21; - break; - } - case 34: { - $1766 = HEAP32[$2>>2]|0; - $1767 = HEAP32[$1766>>2]|0; - $1768 = ($1767|0)!=(0|0); - $1769 = HEAP32[$iDb>>2]|0; - $1770 = $1768 ? $1769 : 10; - HEAP32[$iBt>>2] = $1770; - HEAP32[$eMode41>>2] = 0; - $1771 = HEAP32[$zRight>>2]|0; - $1772 = ($1771|0)!=(0|0); - do { - if ($1772) { - $1773 = HEAP32[$zRight>>2]|0; - $1774 = (_sqlite3_stricmp($1773,21776)|0); - $1775 = ($1774|0)==(0); - if ($1775) { - HEAP32[$eMode41>>2] = 1; - break; - } - $1776 = HEAP32[$zRight>>2]|0; - $1777 = (_sqlite3_stricmp($1776,21784)|0); - $1778 = ($1777|0)==(0); - if ($1778) { - HEAP32[$eMode41>>2] = 2; - } - } - } while(0); - $1779 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($1779,3); - $1780 = HEAP32[$0>>2]|0; - $1781 = (($1780) + 72|0); - HEAP32[$1781>>2] = 3; - $1782 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($1782,0,0,21792,0)|0); - $1783 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($1783,1,0,21800,0)|0); - $1784 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($1784,2,0,21808,0)|0); - $1785 = HEAP32[$v>>2]|0; - $1786 = HEAP32[$iBt>>2]|0; - $1787 = HEAP32[$eMode41>>2]|0; - (_sqlite3VdbeAddOp3($1785,11,$1786,$1787,1)|0); - $1788 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($1788,35,1,3)|0); - break L21; - break; - } - case 7: { - HEAP32[$i40>>2] = 0; - $1755 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($1755,1); - $1756 = HEAP32[$0>>2]|0; - $1757 = (($1756) + 72|0); - HEAP32[$1757>>2] = 1; - $1758 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($1758,0,0,21760,0)|0); - while(1) { - $1759 = HEAP32[$i40>>2]|0; - $1760 = (($1759) + 1)|0; - HEAP32[$i40>>2] = $1760; - $1761 = (_sqlite3_compileoption_get($1759)|0); - HEAP32[$zOpt>>2] = $1761; - $1762 = ($1761|0)!=(0|0); - if (!($1762)) { - break L21; - } - $1763 = HEAP32[$v>>2]|0; - $1764 = HEAP32[$zOpt>>2]|0; - (_sqlite3VdbeAddOp4($1763,97,0,1,0,$1764,0)|0); - $1765 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($1765,35,1,1)|0); - } - break; - } - case 26: { - $1806 = HEAP32[$db>>2]|0; - (_sqlite3_db_release_memory($1806)|0); - break L21; - break; - } - case 33: { - $1789 = HEAP32[$zRight>>2]|0; - $1790 = ($1789|0)!=(0|0); - if ($1790) { - $1791 = HEAP32[$db>>2]|0; - $1792 = HEAP32[$zRight>>2]|0; - $1793 = (_sqlite3Atoi($1792)|0); - (_sqlite3_wal_autocheckpoint($1791,$1793)|0); - } - $1794 = HEAP32[$0>>2]|0; - $1795 = HEAP32[$db>>2]|0; - $1796 = (($1795) + 204|0); - $1797 = HEAP32[$1796>>2]|0; - $1798 = ($1797|0)==(5|0); - if ($1798) { - $1799 = HEAP32[$db>>2]|0; - $1800 = (($1799) + 208|0); - $1801 = HEAP32[$1800>>2]|0; - $1802 = $1801; - $1804 = $1802; - } else { - $1804 = 0; - } - $1803 = ($1804|0)<(0); - $1805 = $1803 << 31 >> 31; - _returnSingleInt($1794,21824,$1804,$1805); - break L21; - break; - } - case 27: { - $1818 = HEAP32[$zRight>>2]|0; - $1819 = ($1818|0)!=(0|0); - if ($1819) { - $1820 = HEAP32[$zRight>>2]|0; - $1821 = (_sqlite3Atoi64($1820,$N,1000000,1)|0); - $1822 = ($1821|0)==(0); - if ($1822) { - $1823 = $N; - $1824 = $1823; - $1825 = HEAP32[$1824>>2]|0; - $1826 = (($1823) + 4)|0; - $1827 = $1826; - $1828 = HEAP32[$1827>>2]|0; - (_sqlite3_soft_heap_limit64($1825,$1828)|0); - $1829 = tempRet0; - } - } - $1830 = HEAP32[$0>>2]|0; - $1831 = (_sqlite3_soft_heap_limit64(-1,-1)|0); - $1832 = tempRet0; - _returnSingleInt($1830,21856,$1831,$1832); - break L21; - break; - } - case 13: { - $970 = HEAP32[$zRight>>2]|0; - $971 = ($970|0)!=(0|0); - if (!($971)) { - break L21; - } - $972 = HEAP32[$db>>2]|0; - $973 = HEAP32[$zRight>>2]|0; - $974 = HEAP32[$zDb>>2]|0; - $975 = (_sqlite3FindTable($972,$973,$974)|0); - HEAP32[$pTab21>>2] = $975; - $976 = HEAP32[$pTab21>>2]|0; - $977 = ($976|0)!=(0|0); - if (!($977)) { - break L21; - } - $978 = HEAP32[$0>>2]|0; - $979 = (_sqlite3GetVdbe($978)|0); - HEAP32[$v>>2] = $979; - $980 = HEAP32[$pTab21>>2]|0; - $981 = (($980) + 16|0); - $982 = HEAP32[$981>>2]|0; - HEAP32[$pFK>>2] = $982; - $983 = HEAP32[$pFK>>2]|0; - $984 = ($983|0)!=(0|0); - if (!($984)) { - break L21; - } - HEAP32[$i22>>2] = 0; - $985 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($985,8); - $986 = HEAP32[$0>>2]|0; - $987 = (($986) + 72|0); - HEAP32[$987>>2] = 8; - $988 = HEAP32[$0>>2]|0; - $989 = HEAP32[$iDb>>2]|0; - _sqlite3CodeVerifySchema($988,$989); - $990 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($990,0,0,21312,0)|0); - $991 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($991,1,0,21288,0)|0); - $992 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($992,2,0,21256,0)|0); - $993 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($993,3,0,21320,0)|0); - $994 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($994,4,0,21328,0)|0); - $995 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($995,5,0,21336,0)|0); - $996 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($996,6,0,21352,0)|0); - $997 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($997,7,0,21368,0)|0); - while(1) { - $998 = HEAP32[$pFK>>2]|0; - $999 = ($998|0)!=(0|0); - if (!($999)) { - break L21; - } - HEAP32[$j>>2] = 0; - while(1) { - $1000 = HEAP32[$j>>2]|0; - $1001 = HEAP32[$pFK>>2]|0; - $1002 = (($1001) + 20|0); - $1003 = HEAP32[$1002>>2]|0; - $1004 = ($1000|0)<($1003|0); - if (!($1004)) { - break; - } - $1005 = HEAP32[$j>>2]|0; - $1006 = HEAP32[$pFK>>2]|0; - $1007 = (($1006) + 36|0); - $1008 = (($1007) + ($1005<<3)|0); - $1009 = (($1008) + 4|0); - $1010 = HEAP32[$1009>>2]|0; - HEAP32[$zCol>>2] = $1010; - $1011 = HEAP32[$pFK>>2]|0; - $1012 = (($1011) + 25|0); - $1013 = HEAP8[$1012>>0]|0; - $1014 = (_actionName($1013)|0); - HEAP32[$zOnDelete>>2] = $1014; - $1015 = HEAP32[$pFK>>2]|0; - $1016 = (($1015) + 25|0); - $1017 = (($1016) + 1|0); - $1018 = HEAP8[$1017>>0]|0; - $1019 = (_actionName($1018)|0); - HEAP32[$zOnUpdate>>2] = $1019; - $1020 = HEAP32[$v>>2]|0; - $1021 = HEAP32[$i22>>2]|0; - (_sqlite3VdbeAddOp2($1020,25,$1021,1)|0); - $1022 = HEAP32[$v>>2]|0; - $1023 = HEAP32[$j>>2]|0; - (_sqlite3VdbeAddOp2($1022,25,$1023,2)|0); - $1024 = HEAP32[$v>>2]|0; - $1025 = HEAP32[$pFK>>2]|0; - $1026 = (($1025) + 8|0); - $1027 = HEAP32[$1026>>2]|0; - (_sqlite3VdbeAddOp4($1024,97,0,3,0,$1027,0)|0); - $1028 = HEAP32[$v>>2]|0; - $1029 = HEAP32[$j>>2]|0; - $1030 = HEAP32[$pFK>>2]|0; - $1031 = (($1030) + 36|0); - $1032 = (($1031) + ($1029<<3)|0); - $1033 = HEAP32[$1032>>2]|0; - $1034 = HEAP32[$pTab21>>2]|0; - $1035 = (($1034) + 4|0); - $1036 = HEAP32[$1035>>2]|0; - $1037 = (($1036) + (($1033*24)|0)|0); - $1038 = HEAP32[$1037>>2]|0; - (_sqlite3VdbeAddOp4($1028,97,0,4,0,$1038,0)|0); - $1039 = HEAP32[$v>>2]|0; - $1040 = HEAP32[$zCol>>2]|0; - $1041 = ($1040|0)!=(0|0); - $1042 = $1041 ? 97 : 28; - $1043 = HEAP32[$zCol>>2]|0; - (_sqlite3VdbeAddOp4($1039,$1042,0,5,0,$1043,0)|0); - $1044 = HEAP32[$v>>2]|0; - $1045 = HEAP32[$zOnUpdate>>2]|0; - (_sqlite3VdbeAddOp4($1044,97,0,6,0,$1045,0)|0); - $1046 = HEAP32[$v>>2]|0; - $1047 = HEAP32[$zOnDelete>>2]|0; - (_sqlite3VdbeAddOp4($1046,97,0,7,0,$1047,0)|0); - $1048 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp4($1048,97,0,8,0,21376,0)|0); - $1049 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($1049,35,1,8)|0); - $1050 = HEAP32[$j>>2]|0; - $1051 = (($1050) + 1)|0; - HEAP32[$j>>2] = $1051; - } - $1052 = HEAP32[$i22>>2]|0; - $1053 = (($1052) + 1)|0; - HEAP32[$i22>>2] = $1053; - $1054 = HEAP32[$pFK>>2]|0; - $1055 = (($1054) + 4|0); - $1056 = HEAP32[$1055>>2]|0; - HEAP32[$pFK>>2] = $1056; - } - break; - } - case 6: { - HEAP32[$i20>>2] = 0; - $947 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($947,2); - $948 = HEAP32[$0>>2]|0; - $949 = (($948) + 72|0); - HEAP32[$949>>2] = 2; - $950 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($950,0,0,21288,0)|0); - $951 = HEAP32[$v>>2]|0; - (_sqlite3VdbeSetColName($951,1,0,21208,0)|0); - $952 = HEAP32[$db>>2]|0; - $953 = (($952) + 420|0); - $954 = (($953) + 8|0); - $955 = HEAP32[$954>>2]|0; - HEAP32[$p>>2] = $955; - while(1) { - $956 = HEAP32[$p>>2]|0; - $957 = ($956|0)!=(0|0); - if (!($957)) { - break L21; - } - $958 = HEAP32[$p>>2]|0; - $959 = (($958) + 8|0); - $960 = HEAP32[$959>>2]|0; - HEAP32[$pColl>>2] = $960; - $961 = HEAP32[$v>>2]|0; - $962 = HEAP32[$i20>>2]|0; - $963 = (($962) + 1)|0; - HEAP32[$i20>>2] = $963; - (_sqlite3VdbeAddOp2($961,25,$962,1)|0); - $964 = HEAP32[$v>>2]|0; - $965 = HEAP32[$pColl>>2]|0; - $966 = HEAP32[$965>>2]|0; - (_sqlite3VdbeAddOp4($964,97,0,2,0,$966,0)|0); - $967 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($967,35,1,2)|0); - $968 = HEAP32[$p>>2]|0; - $969 = HEAP32[$968>>2]|0; - HEAP32[$p>>2] = $969; - } - break; - } - default: { - $1807 = HEAP32[$zRight>>2]|0; - $1808 = ($1807|0)!=(0|0); - if ($1808) { - $1809 = HEAP32[$db>>2]|0; - $1810 = HEAP32[$zRight>>2]|0; - $1811 = (_sqlite3Atoi($1810)|0); - (_sqlite3_busy_timeout($1809,$1811)|0); - } - $1812 = HEAP32[$0>>2]|0; - $1813 = HEAP32[$db>>2]|0; - $1814 = (($1813) + 484|0); - $1815 = HEAP32[$1814>>2]|0; - $1816 = ($1815|0)<(0); - $1817 = $1816 << 31 >> 31; - _returnSingleInt($1812,21848,$1815,$1817); - break L21; - } - } - } while(0); - } - } - } while(0); - $1833 = HEAP32[$db>>2]|0; - $1834 = HEAP32[$zLeft>>2]|0; - _sqlite3DbFree($1833,$1834); - $1835 = HEAP32[$db>>2]|0; - $1836 = HEAP32[$zRight>>2]|0; - _sqlite3DbFree($1835,$1836); - STACKTOP = sp;return; -} -function _sqlite3FinishTrigger($pParse,$pStepList,$pAll) { - $pParse = $pParse|0; - $pStepList = $pStepList|0; - $pAll = $pAll|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; - var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; - var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; - var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; - var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; - var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $iDb = 0, $n = 0, $nameToken = 0, $pHash = 0, $pLink = 0, $pTab = 0, $pTrig = 0, $sFix = 0, $v = 0, $vararg_buffer5 = 0; - var $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $z = 0, $zName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 112|0; - $vararg_buffer5 = sp; - $0 = sp + 108|0; - $1 = sp + 104|0; - $2 = sp + 100|0; - $pTrig = sp + 96|0; - $zName = sp + 92|0; - $db = sp + 88|0; - $sFix = sp + 64|0; - $iDb = sp + 56|0; - $nameToken = sp + 48|0; - $v = sp + 40|0; - $z = sp + 36|0; - $pLink = sp + 32|0; - $pHash = sp + 28|0; - $pTab = sp + 24|0; - $n = sp + 20|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pStepList; - HEAP32[$2>>2] = $pAll; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 488|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pTrig>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$db>>2] = $7; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 488|0); - HEAP32[$9>>2] = 0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 64|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)!=(0); - do { - if (!($13)) { - $14 = HEAP32[$pTrig>>2]|0; - $15 = ($14|0)!=(0|0); - if ($15) { - $16 = HEAP32[$pTrig>>2]|0; - $17 = HEAP32[$16>>2]|0; - HEAP32[$zName>>2] = $17; - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$pTrig>>2]|0; - $21 = (($20) + 20|0); - $22 = HEAP32[$21>>2]|0; - $23 = (_sqlite3SchemaToIndex($19,$22)|0); - HEAP32[$iDb>>2] = $23; - $24 = HEAP32[$1>>2]|0; - $25 = HEAP32[$pTrig>>2]|0; - $26 = (($25) + 28|0); - HEAP32[$26>>2] = $24; - while(1) { - $27 = HEAP32[$1>>2]|0; - $28 = ($27|0)!=(0|0); - $29 = HEAP32[$pTrig>>2]|0; - if (!($28)) { - break; - } - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 4|0); - HEAP32[$31>>2] = $29; - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 32|0); - $34 = HEAP32[$33>>2]|0; - HEAP32[$1>>2] = $34; - } - $35 = HEAP32[$29>>2]|0; - HEAP32[$nameToken>>2] = $35; - $36 = HEAP32[$nameToken>>2]|0; - $37 = (_sqlite3Strlen30($36)|0); - $38 = (($nameToken) + 4|0); - HEAP32[$38>>2] = $37; - $39 = HEAP32[$0>>2]|0; - $40 = HEAP32[$iDb>>2]|0; - _sqlite3FixInit($sFix,$39,$40,1488,$nameToken); - $41 = HEAP32[$pTrig>>2]|0; - $42 = (($41) + 28|0); - $43 = HEAP32[$42>>2]|0; - $44 = (_sqlite3FixTriggerStep($sFix,$43)|0); - $45 = ($44|0)!=(0); - if (!($45)) { - $46 = HEAP32[$pTrig>>2]|0; - $47 = (($46) + 12|0); - $48 = HEAP32[$47>>2]|0; - $49 = (_sqlite3FixExpr($sFix,$48)|0); - $50 = ($49|0)!=(0); - if (!($50)) { - $51 = HEAP32[$db>>2]|0; - $52 = (($51) + 132|0); - $53 = (($52) + 5|0); - $54 = HEAP8[$53>>0]|0; - $55 = ($54<<24>>24)!=(0); - if (!($55)) { - $56 = HEAP32[$0>>2]|0; - $57 = (_sqlite3GetVdbe($56)|0); - HEAP32[$v>>2] = $57; - $58 = HEAP32[$v>>2]|0; - $59 = ($58|0)==(0|0); - if ($59) { - break; - } - $60 = HEAP32[$0>>2]|0; - $61 = HEAP32[$iDb>>2]|0; - _sqlite3BeginWriteOperation($60,0,$61); - $62 = HEAP32[$db>>2]|0; - $63 = HEAP32[$2>>2]|0; - $64 = HEAP32[$63>>2]|0; - $65 = HEAP32[$2>>2]|0; - $66 = (($65) + 4|0); - $67 = HEAP32[$66>>2]|0; - $68 = (_sqlite3DbStrNDup($62,$64,$67)|0); - HEAP32[$z>>2] = $68; - $69 = HEAP32[$0>>2]|0; - $70 = HEAP32[$iDb>>2]|0; - $71 = HEAP32[$db>>2]|0; - $72 = (($71) + 16|0); - $73 = HEAP32[$72>>2]|0; - $74 = (($73) + ($70<<4)|0); - $75 = HEAP32[$74>>2]|0; - $76 = HEAP32[$iDb>>2]|0; - $77 = ($76|0)==(1); - $78 = $77 ? 14808 : 14832; - $79 = HEAP32[$zName>>2]|0; - $80 = HEAP32[$pTrig>>2]|0; - $81 = (($80) + 4|0); - $82 = HEAP32[$81>>2]|0; - $83 = HEAP32[$z>>2]|0; - HEAP32[$vararg_buffer5>>2] = $75; - $vararg_ptr1 = (($vararg_buffer5) + 4|0); - HEAP32[$vararg_ptr1>>2] = $78; - $vararg_ptr2 = (($vararg_buffer5) + 8|0); - HEAP32[$vararg_ptr2>>2] = $79; - $vararg_ptr3 = (($vararg_buffer5) + 12|0); - HEAP32[$vararg_ptr3>>2] = $82; - $vararg_ptr4 = (($vararg_buffer5) + 16|0); - HEAP32[$vararg_ptr4>>2] = $83; - _sqlite3NestedParse($69,20072,$vararg_buffer5); - $84 = HEAP32[$db>>2]|0; - $85 = HEAP32[$z>>2]|0; - _sqlite3DbFree($84,$85); - $86 = HEAP32[$0>>2]|0; - $87 = HEAP32[$iDb>>2]|0; - _sqlite3ChangeCookie($86,$87); - $88 = HEAP32[$v>>2]|0; - $89 = HEAP32[$iDb>>2]|0; - $90 = HEAP32[$db>>2]|0; - $91 = HEAP32[$zName>>2]|0; - HEAP32[$vararg_buffer5>>2] = $91; - $92 = (_sqlite3MPrintf($90,20136,$vararg_buffer5)|0); - _sqlite3VdbeAddParseSchemaOp($88,$89,$92); - } - $93 = HEAP32[$db>>2]|0; - $94 = (($93) + 132|0); - $95 = (($94) + 5|0); - $96 = HEAP8[$95>>0]|0; - $97 = ($96<<24>>24)!=(0); - if ($97) { - $98 = HEAP32[$pTrig>>2]|0; - HEAP32[$pLink>>2] = $98; - $99 = HEAP32[$iDb>>2]|0; - $100 = HEAP32[$db>>2]|0; - $101 = (($100) + 16|0); - $102 = HEAP32[$101>>2]|0; - $103 = (($102) + ($99<<4)|0); - $104 = (($103) + 12|0); - $105 = HEAP32[$104>>2]|0; - $106 = (($105) + 40|0); - HEAP32[$pHash>>2] = $106; - $107 = HEAP32[$pHash>>2]|0; - $108 = HEAP32[$zName>>2]|0; - $109 = HEAP32[$zName>>2]|0; - $110 = (_sqlite3Strlen30($109)|0); - $111 = HEAP32[$pTrig>>2]|0; - $112 = (_sqlite3HashInsert($107,$108,$110,$111)|0); - HEAP32[$pTrig>>2] = $112; - $113 = HEAP32[$pTrig>>2]|0; - $114 = ($113|0)!=(0|0); - if ($114) { - $115 = HEAP32[$db>>2]|0; - $116 = (($115) + 64|0); - HEAP8[$116>>0] = 1; - break; - } - $117 = HEAP32[$pLink>>2]|0; - $118 = (($117) + 20|0); - $119 = HEAP32[$118>>2]|0; - $120 = HEAP32[$pLink>>2]|0; - $121 = (($120) + 24|0); - $122 = HEAP32[$121>>2]|0; - $123 = ($119|0)==($122|0); - if ($123) { - $124 = HEAP32[$pLink>>2]|0; - $125 = (($124) + 4|0); - $126 = HEAP32[$125>>2]|0; - $127 = (_sqlite3Strlen30($126)|0); - HEAP32[$n>>2] = $127; - $128 = HEAP32[$pLink>>2]|0; - $129 = (($128) + 24|0); - $130 = HEAP32[$129>>2]|0; - $131 = (($130) + 8|0); - $132 = HEAP32[$pLink>>2]|0; - $133 = (($132) + 4|0); - $134 = HEAP32[$133>>2]|0; - $135 = HEAP32[$n>>2]|0; - $136 = (_sqlite3HashFind($131,$134,$135)|0); - HEAP32[$pTab>>2] = $136; - $137 = HEAP32[$pTab>>2]|0; - $138 = (($137) + 64|0); - $139 = HEAP32[$138>>2]|0; - $140 = HEAP32[$pLink>>2]|0; - $141 = (($140) + 32|0); - HEAP32[$141>>2] = $139; - $142 = HEAP32[$pLink>>2]|0; - $143 = HEAP32[$pTab>>2]|0; - $144 = (($143) + 64|0); - HEAP32[$144>>2] = $142; - } - } - } - } - } - } - } while(0); - $145 = HEAP32[$db>>2]|0; - $146 = HEAP32[$pTrig>>2]|0; - _sqlite3DeleteTrigger($145,$146); - $147 = HEAP32[$db>>2]|0; - $148 = HEAP32[$1>>2]|0; - _sqlite3DeleteTriggerStep($147,$148); - STACKTOP = sp;return; -} -function _sqlite3BeginTrigger($pParse,$pName1,$pName2,$tr_tm,$op,$pColumns,$pTableName,$pWhen,$isTemp,$noErr) { - $pParse = $pParse|0; - $pName1 = $pName1|0; - $pName2 = $pName2|0; - $tr_tm = $tr_tm|0; - $op = $op|0; - $pColumns = $pColumns|0; - $pTableName = $pTableName|0; - $pWhen = $pWhen|0; - $isTemp = $isTemp|0; - $noErr = $noErr|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; - var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $code = 0, $db = 0, $iDb = 0, $iTabDb = 0, $pName = 0, $pTab = 0, $pTrigger = 0, $sFix = 0, $vararg_buffer12 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr15 = 0, $zDb = 0, $zDbTrig = 0; - var $zName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $vararg_buffer12 = sp; - $0 = sp + 116|0; - $1 = sp + 112|0; - $2 = sp + 108|0; - $3 = sp + 104|0; - $4 = sp + 100|0; - $5 = sp + 96|0; - $6 = sp + 92|0; - $7 = sp + 88|0; - $8 = sp + 84|0; - $9 = sp + 80|0; - $pTrigger = sp + 76|0; - $pTab = sp + 72|0; - $zName = sp + 68|0; - $db = sp + 64|0; - $iDb = sp + 60|0; - $pName = sp + 56|0; - $sFix = sp + 32|0; - $iTabDb = sp + 24|0; - $code = sp + 20|0; - $zDb = sp + 16|0; - $zDbTrig = sp + 12|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pName1; - HEAP32[$2>>2] = $pName2; - HEAP32[$3>>2] = $tr_tm; - HEAP32[$4>>2] = $op; - HEAP32[$5>>2] = $pColumns; - HEAP32[$6>>2] = $pTableName; - HEAP32[$7>>2] = $pWhen; - HEAP32[$8>>2] = $isTemp; - HEAP32[$9>>2] = $noErr; - HEAP32[$pTrigger>>2] = 0; - HEAP32[$zName>>2] = 0; - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$10>>2]|0; - HEAP32[$db>>2] = $11; - $12 = HEAP32[$8>>2]|0; - $13 = ($12|0)!=(0); - do { - if ($13) { - $14 = HEAP32[$2>>2]|0; - $15 = (($14) + 4|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($16>>>0)>(0); - if ($17) { - $18 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($18,19728,$vararg_buffer12); - break; - } else { - HEAP32[$iDb>>2] = 1; - $19 = HEAP32[$1>>2]|0; - HEAP32[$pName>>2] = $19; - label = 6; - break; - } - } else { - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$1>>2]|0; - $22 = HEAP32[$2>>2]|0; - $23 = (_sqlite3TwoPartName($20,$21,$22,$pName)|0); - HEAP32[$iDb>>2] = $23; - $24 = HEAP32[$iDb>>2]|0; - $25 = ($24|0)<(0); - if (!($25)) { - label = 6; - } - } - } while(0); - do { - if ((label|0) == 6) { - $26 = HEAP32[$6>>2]|0; - $27 = ($26|0)!=(0|0); - if ($27) { - $28 = HEAP32[$db>>2]|0; - $29 = (($28) + 64|0); - $30 = HEAP8[$29>>0]|0; - $31 = $30&255; - $32 = ($31|0)!=(0); - if (!($32)) { - $33 = HEAP32[$db>>2]|0; - $34 = (($33) + 132|0); - $35 = (($34) + 5|0); - $36 = HEAP8[$35>>0]|0; - $37 = $36&255; - $38 = ($37|0)!=(0); - if ($38) { - $39 = HEAP32[$iDb>>2]|0; - $40 = ($39|0)!=(1); - if ($40) { - $41 = HEAP32[$db>>2]|0; - $42 = HEAP32[$6>>2]|0; - $43 = (($42) + 8|0); - $44 = (($43) + 4|0); - $45 = HEAP32[$44>>2]|0; - _sqlite3DbFree($41,$45); - $46 = HEAP32[$6>>2]|0; - $47 = (($46) + 8|0); - $48 = (($47) + 4|0); - HEAP32[$48>>2] = 0; - } - } - $49 = HEAP32[$0>>2]|0; - $50 = HEAP32[$6>>2]|0; - $51 = (_sqlite3SrcListLookup($49,$50)|0); - HEAP32[$pTab>>2] = $51; - $52 = HEAP32[$db>>2]|0; - $53 = (($52) + 132|0); - $54 = (($53) + 5|0); - $55 = HEAP8[$54>>0]|0; - $56 = $55&255; - $57 = ($56|0)==(0); - if ($57) { - $58 = HEAP32[$2>>2]|0; - $59 = (($58) + 4|0); - $60 = HEAP32[$59>>2]|0; - $61 = ($60|0)==(0); - if ($61) { - $62 = HEAP32[$pTab>>2]|0; - $63 = ($62|0)!=(0|0); - if ($63) { - $64 = HEAP32[$pTab>>2]|0; - $65 = (($64) + 68|0); - $66 = HEAP32[$65>>2]|0; - $67 = HEAP32[$db>>2]|0; - $68 = (($67) + 16|0); - $69 = HEAP32[$68>>2]|0; - $70 = (($69) + 16|0); - $71 = (($70) + 12|0); - $72 = HEAP32[$71>>2]|0; - $73 = ($66|0)==($72|0); - if ($73) { - HEAP32[$iDb>>2] = 1; - } - } - } - } - $74 = HEAP32[$db>>2]|0; - $75 = (($74) + 64|0); - $76 = HEAP8[$75>>0]|0; - $77 = ($76<<24>>24)!=(0); - if (!($77)) { - $78 = HEAP32[$0>>2]|0; - $79 = HEAP32[$iDb>>2]|0; - $80 = HEAP32[$pName>>2]|0; - _sqlite3FixInit($sFix,$78,$79,1488,$80); - $81 = HEAP32[$6>>2]|0; - $82 = (_sqlite3FixSrcList($sFix,$81)|0); - $83 = ($82|0)!=(0); - if (!($83)) { - $84 = HEAP32[$0>>2]|0; - $85 = HEAP32[$6>>2]|0; - $86 = (_sqlite3SrcListLookup($84,$85)|0); - HEAP32[$pTab>>2] = $86; - $87 = HEAP32[$pTab>>2]|0; - $88 = ($87|0)!=(0|0); - if (!($88)) { - $89 = HEAP32[$db>>2]|0; - $90 = (($89) + 132|0); - $91 = (($90) + 4|0); - $92 = HEAP8[$91>>0]|0; - $93 = $92&255; - $94 = ($93|0)==(1); - if (!($94)) { - break; - } - $95 = HEAP32[$db>>2]|0; - $96 = (($95) + 132|0); - $97 = (($96) + 6|0); - HEAP8[$97>>0] = 1; - break; - } - $98 = HEAP32[$pTab>>2]|0; - $99 = (($98) + 44|0); - $100 = HEAP8[$99>>0]|0; - $101 = $100&255; - $102 = $101 & 16; - $103 = ($102|0)!=(0); - if ($103) { - $104 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($104,19776,$vararg_buffer12); - break; - } - $105 = HEAP32[$db>>2]|0; - $106 = HEAP32[$pName>>2]|0; - $107 = (_sqlite3NameFromToken($105,$106)|0); - HEAP32[$zName>>2] = $107; - $108 = HEAP32[$zName>>2]|0; - $109 = ($108|0)!=(0|0); - if ($109) { - $110 = HEAP32[$0>>2]|0; - $111 = HEAP32[$zName>>2]|0; - $112 = (_sqlite3CheckObjectName($110,$111)|0); - $113 = (0)!=($112|0); - if (!($113)) { - $114 = HEAP32[$iDb>>2]|0; - $115 = HEAP32[$db>>2]|0; - $116 = (($115) + 16|0); - $117 = HEAP32[$116>>2]|0; - $118 = (($117) + ($114<<4)|0); - $119 = (($118) + 12|0); - $120 = HEAP32[$119>>2]|0; - $121 = (($120) + 40|0); - $122 = HEAP32[$zName>>2]|0; - $123 = HEAP32[$zName>>2]|0; - $124 = (_sqlite3Strlen30($123)|0); - $125 = (_sqlite3HashFind($121,$122,$124)|0); - $126 = ($125|0)!=(0|0); - if ($126) { - $127 = HEAP32[$9>>2]|0; - $128 = ($127|0)!=(0); - $129 = HEAP32[$0>>2]|0; - if ($128) { - $131 = HEAP32[$iDb>>2]|0; - _sqlite3CodeVerifySchema($129,$131); - break; - } else { - $130 = HEAP32[$pName>>2]|0; - HEAP32[$vararg_buffer12>>2] = $130; - _sqlite3ErrorMsg($129,19824,$vararg_buffer12); - break; - } - } - $132 = HEAP32[$pTab>>2]|0; - $133 = HEAP32[$132>>2]|0; - $134 = (_sqlite3_strnicmp($133,15048,7)|0); - $135 = ($134|0)==(0); - if ($135) { - $136 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($136,19856,$vararg_buffer12); - $137 = HEAP32[$0>>2]|0; - $138 = (($137) + 64|0); - $139 = HEAP32[$138>>2]|0; - $140 = (($139) + 1)|0; - HEAP32[$138>>2] = $140; - break; - } - $141 = HEAP32[$pTab>>2]|0; - $142 = (($141) + 12|0); - $143 = HEAP32[$142>>2]|0; - $144 = ($143|0)!=(0|0); - if ($144) { - $145 = HEAP32[$3>>2]|0; - $146 = ($145|0)!=(49); - if ($146) { - $147 = HEAP32[$0>>2]|0; - $148 = HEAP32[$3>>2]|0; - $149 = ($148|0)==(35); - $150 = $149 ? 19936 : 19944; - $151 = HEAP32[$6>>2]|0; - HEAP32[$vararg_buffer12>>2] = $150; - $vararg_ptr10 = (($vararg_buffer12) + 4|0); - HEAP32[$vararg_ptr10>>2] = $151; - $vararg_ptr11 = (($vararg_buffer12) + 8|0); - HEAP32[$vararg_ptr11>>2] = 0; - _sqlite3ErrorMsg($147,19896,$vararg_buffer12); - break; - } - } - $152 = HEAP32[$pTab>>2]|0; - $153 = (($152) + 12|0); - $154 = HEAP32[$153>>2]|0; - $155 = ($154|0)!=(0|0); - if (!($155)) { - $156 = HEAP32[$3>>2]|0; - $157 = ($156|0)==(49); - if ($157) { - $158 = HEAP32[$0>>2]|0; - $159 = HEAP32[$6>>2]|0; - HEAP32[$vararg_buffer12>>2] = $159; - $vararg_ptr15 = (($vararg_buffer12) + 4|0); - HEAP32[$vararg_ptr15>>2] = 0; - _sqlite3ErrorMsg($158,19952,$vararg_buffer12); - break; - } - } - $160 = HEAP32[$db>>2]|0; - $161 = HEAP32[$pTab>>2]|0; - $162 = (($161) + 68|0); - $163 = HEAP32[$162>>2]|0; - $164 = (_sqlite3SchemaToIndex($160,$163)|0); - HEAP32[$iTabDb>>2] = $164; - HEAP32[$code>>2] = 7; - $165 = HEAP32[$iTabDb>>2]|0; - $166 = HEAP32[$db>>2]|0; - $167 = (($166) + 16|0); - $168 = HEAP32[$167>>2]|0; - $169 = (($168) + ($165<<4)|0); - $170 = HEAP32[$169>>2]|0; - HEAP32[$zDb>>2] = $170; - $171 = HEAP32[$8>>2]|0; - $172 = ($171|0)!=(0); - if ($172) { - $173 = HEAP32[$db>>2]|0; - $174 = (($173) + 16|0); - $175 = HEAP32[$174>>2]|0; - $176 = (($175) + 16|0); - $177 = HEAP32[$176>>2]|0; - $179 = $177; - } else { - $178 = HEAP32[$zDb>>2]|0; - $179 = $178; - } - HEAP32[$zDbTrig>>2] = $179; - $180 = HEAP32[$iTabDb>>2]|0; - $181 = ($180|0)==(1); - if ($181) { - label = 42; - } else { - $182 = HEAP32[$8>>2]|0; - $183 = ($182|0)!=(0); - if ($183) { - label = 42; - } - } - if ((label|0) == 42) { - HEAP32[$code>>2] = 5; - } - $184 = HEAP32[$0>>2]|0; - $185 = HEAP32[$code>>2]|0; - $186 = HEAP32[$zName>>2]|0; - $187 = HEAP32[$pTab>>2]|0; - $188 = HEAP32[$187>>2]|0; - $189 = HEAP32[$zDbTrig>>2]|0; - $190 = (_sqlite3AuthCheck($184,$185,$186,$188,$189)|0); - $191 = ($190|0)!=(0); - if (!($191)) { - $192 = HEAP32[$0>>2]|0; - $193 = HEAP32[$iTabDb>>2]|0; - $194 = ($193|0)==(1); - $195 = $194 ? 14808 : 14832; - $196 = HEAP32[$zDb>>2]|0; - $197 = (_sqlite3AuthCheck($192,18,$195,0,$196)|0); - $198 = ($197|0)!=(0); - if (!($198)) { - $199 = HEAP32[$3>>2]|0; - $200 = ($199|0)==(49); - if ($200) { - HEAP32[$3>>2] = 35; - } - $201 = HEAP32[$db>>2]|0; - $202 = (_sqlite3DbMallocZero($201,36)|0); - HEAP32[$pTrigger>>2] = $202; - $203 = HEAP32[$pTrigger>>2]|0; - $204 = ($203|0)==(0|0); - if ($204) { - break; - } - $205 = HEAP32[$zName>>2]|0; - $206 = HEAP32[$pTrigger>>2]|0; - HEAP32[$206>>2] = $205; - HEAP32[$zName>>2] = 0; - $207 = HEAP32[$db>>2]|0; - $208 = HEAP32[$6>>2]|0; - $209 = (($208) + 8|0); - $210 = (($209) + 8|0); - $211 = HEAP32[$210>>2]|0; - $212 = (_sqlite3DbStrDup($207,$211)|0); - $213 = HEAP32[$pTrigger>>2]|0; - $214 = (($213) + 4|0); - HEAP32[$214>>2] = $212; - $215 = HEAP32[$iDb>>2]|0; - $216 = HEAP32[$db>>2]|0; - $217 = (($216) + 16|0); - $218 = HEAP32[$217>>2]|0; - $219 = (($218) + ($215<<4)|0); - $220 = (($219) + 12|0); - $221 = HEAP32[$220>>2]|0; - $222 = HEAP32[$pTrigger>>2]|0; - $223 = (($222) + 20|0); - HEAP32[$223>>2] = $221; - $224 = HEAP32[$pTab>>2]|0; - $225 = (($224) + 68|0); - $226 = HEAP32[$225>>2]|0; - $227 = HEAP32[$pTrigger>>2]|0; - $228 = (($227) + 24|0); - HEAP32[$228>>2] = $226; - $229 = HEAP32[$4>>2]|0; - $230 = $229&255; - $231 = HEAP32[$pTrigger>>2]|0; - $232 = (($231) + 8|0); - HEAP8[$232>>0] = $230; - $233 = HEAP32[$3>>2]|0; - $234 = ($233|0)==(35); - $235 = $234 ? 1 : 2; - $236 = $235&255; - $237 = HEAP32[$pTrigger>>2]|0; - $238 = (($237) + 9|0); - HEAP8[$238>>0] = $236; - $239 = HEAP32[$db>>2]|0; - $240 = HEAP32[$7>>2]|0; - $241 = (_sqlite3ExprDup($239,$240,1)|0); - $242 = HEAP32[$pTrigger>>2]|0; - $243 = (($242) + 12|0); - HEAP32[$243>>2] = $241; - $244 = HEAP32[$db>>2]|0; - $245 = HEAP32[$5>>2]|0; - $246 = (_sqlite3IdListDup($244,$245)|0); - $247 = HEAP32[$pTrigger>>2]|0; - $248 = (($247) + 16|0); - HEAP32[$248>>2] = $246; - $249 = HEAP32[$pTrigger>>2]|0; - $250 = HEAP32[$0>>2]|0; - $251 = (($250) + 488|0); - HEAP32[$251>>2] = $249; - } - } - } - } - } - } - } - } - } - } while(0); - $252 = HEAP32[$db>>2]|0; - $253 = HEAP32[$zName>>2]|0; - _sqlite3DbFree($252,$253); - $254 = HEAP32[$db>>2]|0; - $255 = HEAP32[$6>>2]|0; - _sqlite3SrcListDelete($254,$255); - $256 = HEAP32[$db>>2]|0; - $257 = HEAP32[$5>>2]|0; - _sqlite3IdListDelete($256,$257); - $258 = HEAP32[$db>>2]|0; - $259 = HEAP32[$7>>2]|0; - _sqlite3ExprDelete($258,$259); - $260 = HEAP32[$0>>2]|0; - $261 = (($260) + 488|0); - $262 = HEAP32[$261>>2]|0; - $263 = ($262|0)!=(0|0); - if ($263) { - STACKTOP = sp;return; - } - $264 = HEAP32[$db>>2]|0; - $265 = HEAP32[$pTrigger>>2]|0; - _sqlite3DeleteTrigger($264,$265); - STACKTOP = sp;return; -} -function _sqlite3TriggerUpdateStep($db,$pTableName,$pEList,$pWhere,$orconf) { - $db = $db|0; - $pTableName = $pTableName|0; - $pEList = $pEList|0; - $pWhere = $pWhere|0; - $orconf = $orconf|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTriggerStep = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $4 = sp + 20|0; - $pTriggerStep = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pTableName; - HEAP32[$2>>2] = $pEList; - HEAP32[$3>>2] = $pWhere; - HEAP8[$4>>0] = $orconf; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = (_triggerStepAllocate($5,110,$6)|0); - HEAP32[$pTriggerStep>>2] = $7; - $8 = HEAP32[$pTriggerStep>>2]|0; - $9 = ($8|0)!=(0|0); - if ($9) { - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = (_sqlite3ExprListDup($10,$11,1)|0); - $13 = HEAP32[$pTriggerStep>>2]|0; - $14 = (($13) + 24|0); - HEAP32[$14>>2] = $12; - $15 = HEAP32[$0>>2]|0; - $16 = HEAP32[$3>>2]|0; - $17 = (_sqlite3ExprDup($15,$16,1)|0); - $18 = HEAP32[$pTriggerStep>>2]|0; - $19 = (($18) + 20|0); - HEAP32[$19>>2] = $17; - $20 = HEAP8[$4>>0]|0; - $21 = HEAP32[$pTriggerStep>>2]|0; - $22 = (($21) + 1|0); - HEAP8[$22>>0] = $20; - } - $23 = HEAP32[$0>>2]|0; - $24 = HEAP32[$2>>2]|0; - _sqlite3ExprListDelete($23,$24); - $25 = HEAP32[$0>>2]|0; - $26 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($25,$26); - $27 = HEAP32[$pTriggerStep>>2]|0; - STACKTOP = sp;return ($27|0); -} -function _sqlite3TriggerInsertStep($db,$pTableName,$pColumn,$pSelect,$orconf) { - $db = $db|0; - $pTableName = $pTableName|0; - $pColumn = $pColumn|0; - $pSelect = $pSelect|0; - $orconf = $orconf|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTriggerStep = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $4 = sp + 20|0; - $pTriggerStep = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pTableName; - HEAP32[$2>>2] = $pColumn; - HEAP32[$3>>2] = $pSelect; - HEAP8[$4>>0] = $orconf; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = (_triggerStepAllocate($5,108,$6)|0); - HEAP32[$pTriggerStep>>2] = $7; - $8 = HEAP32[$pTriggerStep>>2]|0; - $9 = ($8|0)!=(0|0); - $10 = HEAP32[$0>>2]|0; - if ($9) { - $11 = HEAP32[$3>>2]|0; - $12 = (_sqlite3SelectDup($10,$11,1)|0); - $13 = HEAP32[$pTriggerStep>>2]|0; - $14 = (($13) + 8|0); - HEAP32[$14>>2] = $12; - $15 = HEAP32[$2>>2]|0; - $16 = HEAP32[$pTriggerStep>>2]|0; - $17 = (($16) + 28|0); - HEAP32[$17>>2] = $15; - $18 = HEAP8[$4>>0]|0; - $19 = HEAP32[$pTriggerStep>>2]|0; - $20 = (($19) + 1|0); - HEAP8[$20>>0] = $18; - $22 = HEAP32[$0>>2]|0; - $23 = HEAP32[$3>>2]|0; - _sqlite3SelectDelete($22,$23); - $24 = HEAP32[$pTriggerStep>>2]|0; - STACKTOP = sp;return ($24|0); - } else { - $21 = HEAP32[$2>>2]|0; - _sqlite3IdListDelete($10,$21); - $22 = HEAP32[$0>>2]|0; - $23 = HEAP32[$3>>2]|0; - _sqlite3SelectDelete($22,$23); - $24 = HEAP32[$pTriggerStep>>2]|0; - STACKTOP = sp;return ($24|0); - } - return 0|0; -} -function _sqlite3TriggerDeleteStep($db,$pTableName,$pWhere) { - $db = $db|0; - $pTableName = $pTableName|0; - $pWhere = $pWhere|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTriggerStep = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pTriggerStep = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pTableName; - HEAP32[$2>>2] = $pWhere; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (_triggerStepAllocate($3,109,$4)|0); - HEAP32[$pTriggerStep>>2] = $5; - $6 = HEAP32[$pTriggerStep>>2]|0; - $7 = ($6|0)!=(0|0); - if ($7) { - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$2>>2]|0; - $10 = (_sqlite3ExprDup($8,$9,1)|0); - $11 = HEAP32[$pTriggerStep>>2]|0; - $12 = (($11) + 20|0); - HEAP32[$12>>2] = $10; - $13 = HEAP32[$pTriggerStep>>2]|0; - $14 = (($13) + 1|0); - HEAP8[$14>>0] = 10; - } - $15 = HEAP32[$0>>2]|0; - $16 = HEAP32[$2>>2]|0; - _sqlite3ExprDelete($15,$16); - $17 = HEAP32[$pTriggerStep>>2]|0; - STACKTOP = sp;return ($17|0); -} -function _sqlite3TriggerSelectStep($db,$pSelect) { - $db = $db|0; - $pSelect = $pSelect|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTriggerStep = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pTriggerStep = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pSelect; - $3 = HEAP32[$1>>2]|0; - $4 = (_sqlite3DbMallocZero($3,40)|0); - HEAP32[$pTriggerStep>>2] = $4; - $5 = HEAP32[$pTriggerStep>>2]|0; - $6 = ($5|0)==(0|0); - if ($6) { - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$2>>2]|0; - _sqlite3SelectDelete($7,$8); - HEAP32[$0>>2] = 0; - $16 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($16|0); - } else { - $9 = HEAP32[$pTriggerStep>>2]|0; - HEAP8[$9>>0] = 119; - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$pTriggerStep>>2]|0; - $12 = (($11) + 8|0); - HEAP32[$12>>2] = $10; - $13 = HEAP32[$pTriggerStep>>2]|0; - $14 = (($13) + 1|0); - HEAP8[$14>>0] = 10; - $15 = HEAP32[$pTriggerStep>>2]|0; - HEAP32[$0>>2] = $15; - $16 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($16|0); - } - return 0|0; -} -function _sqlite3DropTrigger($pParse,$pName,$noErr) { - $pParse = $pParse|0; - $pName = $pName|0; - $noErr = $noErr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $j = 0, $nName = 0, $pTrigger = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $zDb = 0, $zName = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $pTrigger = sp + 32|0; - $i = sp + 28|0; - $zDb = sp + 24|0; - $zName = sp + 20|0; - $nName = sp + 16|0; - $db = sp + 12|0; - $j = sp + 8|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pName; - HEAP32[$2>>2] = $noErr; - HEAP32[$pTrigger>>2] = 0; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - $5 = HEAP32[$db>>2]|0; - $6 = (($5) + 64|0); - $7 = HEAP8[$6>>0]|0; - $8 = ($7<<24>>24)!=(0); - if ($8) { - $69 = HEAP32[$db>>2]|0; - $70 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($69,$70); - STACKTOP = sp;return; - } - $9 = HEAP32[$0>>2]|0; - $10 = (_sqlite3ReadSchema($9)|0); - $11 = (0)!=($10|0); - if ($11) { - $69 = HEAP32[$db>>2]|0; - $70 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($69,$70); - STACKTOP = sp;return; - } - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 8|0); - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$zDb>>2] = $15; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 8|0); - $18 = (($17) + 8|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$zName>>2] = $19; - $20 = HEAP32[$zName>>2]|0; - $21 = (_sqlite3Strlen30($20)|0); - HEAP32[$nName>>2] = $21; - HEAP32[$i>>2] = 0; - while(1) { - $22 = HEAP32[$i>>2]|0; - $23 = HEAP32[$db>>2]|0; - $24 = (($23) + 20|0); - $25 = HEAP32[$24>>2]|0; - $26 = ($22|0)<($25|0); - if (!($26)) { - break; - } - $27 = HEAP32[$i>>2]|0; - $28 = ($27|0)<(2); - $29 = HEAP32[$i>>2]|0; - $30 = $29 ^ 1; - $31 = $28 ? $30 : $29; - HEAP32[$j>>2] = $31; - $32 = HEAP32[$zDb>>2]|0; - $33 = ($32|0)!=(0|0); - if ($33) { - $34 = HEAP32[$j>>2]|0; - $35 = HEAP32[$db>>2]|0; - $36 = (($35) + 16|0); - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + ($34<<4)|0); - $39 = HEAP32[$38>>2]|0; - $40 = HEAP32[$zDb>>2]|0; - $41 = (_sqlite3_stricmp($39,$40)|0); - $42 = ($41|0)!=(0); - if (!($42)) { - label = 7; - } - } else { - label = 7; - } - if ((label|0) == 7) { - label = 0; - $43 = HEAP32[$j>>2]|0; - $44 = HEAP32[$db>>2]|0; - $45 = (($44) + 16|0); - $46 = HEAP32[$45>>2]|0; - $47 = (($46) + ($43<<4)|0); - $48 = (($47) + 12|0); - $49 = HEAP32[$48>>2]|0; - $50 = (($49) + 40|0); - $51 = HEAP32[$zName>>2]|0; - $52 = HEAP32[$nName>>2]|0; - $53 = (_sqlite3HashFind($50,$51,$52)|0); - HEAP32[$pTrigger>>2] = $53; - $54 = HEAP32[$pTrigger>>2]|0; - $55 = ($54|0)!=(0|0); - if ($55) { - break; - } - } - $56 = HEAP32[$i>>2]|0; - $57 = (($56) + 1)|0; - HEAP32[$i>>2] = $57; - } - $58 = HEAP32[$pTrigger>>2]|0; - $59 = ($58|0)!=(0|0); - if ($59) { - $67 = HEAP32[$0>>2]|0; - $68 = HEAP32[$pTrigger>>2]|0; - _sqlite3DropTriggerPtr($67,$68); - $69 = HEAP32[$db>>2]|0; - $70 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($69,$70); - STACKTOP = sp;return; - } - $60 = HEAP32[$2>>2]|0; - $61 = ($60|0)!=(0); - $62 = HEAP32[$0>>2]|0; - if ($61) { - $64 = HEAP32[$zDb>>2]|0; - _sqlite3CodeVerifyNamedSchema($62,$64); - } else { - $63 = HEAP32[$1>>2]|0; - HEAP32[$vararg_buffer>>2] = $63; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = 0; - _sqlite3ErrorMsg($62,19664,$vararg_buffer); - } - $65 = HEAP32[$0>>2]|0; - $66 = (($65) + 17|0); - HEAP8[$66>>0] = 1; - $69 = HEAP32[$db>>2]|0; - $70 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($69,$70); - STACKTOP = sp;return; -} -function _sqlite3Attach($pParse,$p,$pDbname,$pKey) { - $pParse = $pParse|0; - $p = $p|0; - $pDbname = $pDbname|0; - $pKey = $pKey|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $pDbname; - HEAP32[$3>>2] = $pKey; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$3>>2]|0; - _codeAttach($4,24,19424,$5,$6,$7,$8); - STACKTOP = sp;return; -} -function _sqlite3Detach($pParse,$pDbname) { - $pParse = $pParse|0; - $pDbname = $pDbname|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pDbname; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$1>>2]|0; - _codeAttach($2,25,19240,$3,0,0,$4); - STACKTOP = sp;return; -} -function _sqlite3Reindex($pParse,$pName1,$pName2) { - $pParse = $pParse|0; - $pName1 = $pName1|0; - $pName2 = $pName2|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $8 = 0, $9 = 0, $db = 0; - var $iDb = 0, $pColl = 0, $pIndex = 0, $pObjName = 0, $pTab = 0, $vararg_buffer = 0, $z = 0, $zColl = 0, $zDb = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer = sp; - $0 = sp + 48|0; - $1 = sp + 44|0; - $2 = sp + 40|0; - $pColl = sp + 36|0; - $z = sp + 32|0; - $zDb = sp + 28|0; - $pTab = sp + 24|0; - $pIndex = sp + 20|0; - $iDb = sp + 16|0; - $db = sp + 12|0; - $pObjName = sp + 8|0; - $zColl = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pName1; - HEAP32[$2>>2] = $pName2; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (_sqlite3ReadSchema($5)|0); - $7 = (0)!=($6|0); - if ($7) { - STACKTOP = sp;return; - } - $8 = HEAP32[$1>>2]|0; - $9 = ($8|0)==(0|0); - if ($9) { - $10 = HEAP32[$0>>2]|0; - _reindexDatabases($10,0); - STACKTOP = sp;return; - } - $11 = HEAP32[$2>>2]|0; - $12 = ($11|0)==(0|0); - if ($12) { - label = 6; - } else { - $13 = HEAP32[$2>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = ($14|0)==(0|0); - if ($15) { - label = 6; - } - } - do { - if ((label|0) == 6) { - $16 = HEAP32[$0>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (_sqlite3NameFromToken($17,$18)|0); - HEAP32[$zColl>>2] = $19; - $20 = HEAP32[$zColl>>2]|0; - $21 = ($20|0)!=(0|0); - if (!($21)) { - STACKTOP = sp;return; - } - $22 = HEAP32[$db>>2]|0; - $23 = HEAP32[$db>>2]|0; - $24 = (($23) + 16|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + 12|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + 77|0); - $29 = HEAP8[$28>>0]|0; - $30 = HEAP32[$zColl>>2]|0; - $31 = (_sqlite3FindCollSeq($22,$29,$30,0)|0); - HEAP32[$pColl>>2] = $31; - $32 = HEAP32[$pColl>>2]|0; - $33 = ($32|0)!=(0|0); - if (!($33)) { - $38 = HEAP32[$db>>2]|0; - $39 = HEAP32[$zColl>>2]|0; - _sqlite3DbFree($38,$39); - break; - } - $34 = HEAP32[$0>>2]|0; - $35 = HEAP32[$zColl>>2]|0; - _reindexDatabases($34,$35); - $36 = HEAP32[$db>>2]|0; - $37 = HEAP32[$zColl>>2]|0; - _sqlite3DbFree($36,$37); - STACKTOP = sp;return; - } - } while(0); - $40 = HEAP32[$0>>2]|0; - $41 = HEAP32[$1>>2]|0; - $42 = HEAP32[$2>>2]|0; - $43 = (_sqlite3TwoPartName($40,$41,$42,$pObjName)|0); - HEAP32[$iDb>>2] = $43; - $44 = HEAP32[$iDb>>2]|0; - $45 = ($44|0)<(0); - if ($45) { - STACKTOP = sp;return; - } - $46 = HEAP32[$db>>2]|0; - $47 = HEAP32[$pObjName>>2]|0; - $48 = (_sqlite3NameFromToken($46,$47)|0); - HEAP32[$z>>2] = $48; - $49 = HEAP32[$z>>2]|0; - $50 = ($49|0)==(0|0); - if ($50) { - STACKTOP = sp;return; - } - $51 = HEAP32[$iDb>>2]|0; - $52 = HEAP32[$db>>2]|0; - $53 = (($52) + 16|0); - $54 = HEAP32[$53>>2]|0; - $55 = (($54) + ($51<<4)|0); - $56 = HEAP32[$55>>2]|0; - HEAP32[$zDb>>2] = $56; - $57 = HEAP32[$db>>2]|0; - $58 = HEAP32[$z>>2]|0; - $59 = HEAP32[$zDb>>2]|0; - $60 = (_sqlite3FindTable($57,$58,$59)|0); - HEAP32[$pTab>>2] = $60; - $61 = HEAP32[$pTab>>2]|0; - $62 = ($61|0)!=(0|0); - if ($62) { - $63 = HEAP32[$0>>2]|0; - $64 = HEAP32[$pTab>>2]|0; - _reindexTable($63,$64,0); - $65 = HEAP32[$db>>2]|0; - $66 = HEAP32[$z>>2]|0; - _sqlite3DbFree($65,$66); - STACKTOP = sp;return; - } - $67 = HEAP32[$db>>2]|0; - $68 = HEAP32[$z>>2]|0; - $69 = HEAP32[$zDb>>2]|0; - $70 = (_sqlite3FindIndex($67,$68,$69)|0); - HEAP32[$pIndex>>2] = $70; - $71 = HEAP32[$db>>2]|0; - $72 = HEAP32[$z>>2]|0; - _sqlite3DbFree($71,$72); - $73 = HEAP32[$pIndex>>2]|0; - $74 = ($73|0)!=(0|0); - $75 = HEAP32[$0>>2]|0; - if ($74) { - $76 = HEAP32[$iDb>>2]|0; - _sqlite3BeginWriteOperation($75,0,$76); - $77 = HEAP32[$0>>2]|0; - $78 = HEAP32[$pIndex>>2]|0; - _sqlite3RefillIndex($77,$78,-1); - STACKTOP = sp;return; - } else { - _sqlite3ErrorMsg($75,18968,$vararg_buffer); - STACKTOP = sp;return; - } -} -function _sqlite3Analyze($pParse,$pName1,$pName2) { - $pParse = $pParse|0; - $pName1 = $pName1|0; - $pName2 = $pName2|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $9 = 0, $db = 0, $i = 0, $iDb = 0, $pIdx = 0, $pTab = 0, $pTableName = 0, $z = 0, $zDb = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $db = sp + 28|0; - $iDb = sp + 24|0; - $i = sp + 20|0; - $z = sp + 16|0; - $zDb = sp + 12|0; - $pTab = sp + 8|0; - $pIdx = sp + 4|0; - $pTableName = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pName1; - HEAP32[$2>>2] = $pName2; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (_sqlite3ReadSchema($5)|0); - $7 = (0)!=($6|0); - if ($7) { - STACKTOP = sp;return; - } - $8 = HEAP32[$1>>2]|0; - $9 = ($8|0)==(0|0); - if ($9) { - HEAP32[$i>>2] = 0; - while(1) { - $10 = HEAP32[$i>>2]|0; - $11 = HEAP32[$db>>2]|0; - $12 = (($11) + 20|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($10|0)<($13|0); - if (!($14)) { - break; - } - $15 = HEAP32[$i>>2]|0; - $16 = ($15|0)==(1); - if (!($16)) { - $17 = HEAP32[$0>>2]|0; - $18 = HEAP32[$i>>2]|0; - _analyzeDatabase($17,$18); - } - $19 = HEAP32[$i>>2]|0; - $20 = (($19) + 1)|0; - HEAP32[$i>>2] = $20; - } - STACKTOP = sp;return; - } - $21 = HEAP32[$2>>2]|0; - $22 = (($21) + 4|0); - $23 = HEAP32[$22>>2]|0; - $24 = ($23|0)==(0); - if (!($24)) { - $53 = HEAP32[$0>>2]|0; - $54 = HEAP32[$1>>2]|0; - $55 = HEAP32[$2>>2]|0; - $56 = (_sqlite3TwoPartName($53,$54,$55,$pTableName)|0); - HEAP32[$iDb>>2] = $56; - $57 = HEAP32[$iDb>>2]|0; - $58 = ($57|0)>=(0); - if (!($58)) { - STACKTOP = sp;return; - } - $59 = HEAP32[$iDb>>2]|0; - $60 = HEAP32[$db>>2]|0; - $61 = (($60) + 16|0); - $62 = HEAP32[$61>>2]|0; - $63 = (($62) + ($59<<4)|0); - $64 = HEAP32[$63>>2]|0; - HEAP32[$zDb>>2] = $64; - $65 = HEAP32[$db>>2]|0; - $66 = HEAP32[$pTableName>>2]|0; - $67 = (_sqlite3NameFromToken($65,$66)|0); - HEAP32[$z>>2] = $67; - $68 = HEAP32[$z>>2]|0; - $69 = ($68|0)!=(0|0); - if (!($69)) { - STACKTOP = sp;return; - } - $70 = HEAP32[$db>>2]|0; - $71 = HEAP32[$z>>2]|0; - $72 = HEAP32[$zDb>>2]|0; - $73 = (_sqlite3FindIndex($70,$71,$72)|0); - HEAP32[$pIdx>>2] = $73; - $74 = ($73|0)!=(0|0); - $75 = HEAP32[$0>>2]|0; - if ($74) { - $76 = HEAP32[$pIdx>>2]|0; - $77 = (($76) + 12|0); - $78 = HEAP32[$77>>2]|0; - $79 = HEAP32[$pIdx>>2]|0; - _analyzeTable($75,$78,$79); - } else { - $80 = HEAP32[$z>>2]|0; - $81 = HEAP32[$zDb>>2]|0; - $82 = (_sqlite3LocateTable($75,0,$80,$81)|0); - HEAP32[$pTab>>2] = $82; - $83 = ($82|0)!=(0|0); - if ($83) { - $84 = HEAP32[$0>>2]|0; - $85 = HEAP32[$pTab>>2]|0; - _analyzeTable($84,$85,0); - } - } - $86 = HEAP32[$db>>2]|0; - $87 = HEAP32[$z>>2]|0; - _sqlite3DbFree($86,$87); - STACKTOP = sp;return; - } - $25 = HEAP32[$db>>2]|0; - $26 = HEAP32[$1>>2]|0; - $27 = (_sqlite3FindDb($25,$26)|0); - HEAP32[$iDb>>2] = $27; - $28 = HEAP32[$iDb>>2]|0; - $29 = ($28|0)>=(0); - if ($29) { - $30 = HEAP32[$0>>2]|0; - $31 = HEAP32[$iDb>>2]|0; - _analyzeDatabase($30,$31); - STACKTOP = sp;return; - } - $32 = HEAP32[$db>>2]|0; - $33 = HEAP32[$1>>2]|0; - $34 = (_sqlite3NameFromToken($32,$33)|0); - HEAP32[$z>>2] = $34; - $35 = HEAP32[$z>>2]|0; - $36 = ($35|0)!=(0|0); - if (!($36)) { - STACKTOP = sp;return; - } - $37 = HEAP32[$db>>2]|0; - $38 = HEAP32[$z>>2]|0; - $39 = (_sqlite3FindIndex($37,$38,0)|0); - HEAP32[$pIdx>>2] = $39; - $40 = ($39|0)!=(0|0); - $41 = HEAP32[$0>>2]|0; - if ($40) { - $42 = HEAP32[$pIdx>>2]|0; - $43 = (($42) + 12|0); - $44 = HEAP32[$43>>2]|0; - $45 = HEAP32[$pIdx>>2]|0; - _analyzeTable($41,$44,$45); - } else { - $46 = HEAP32[$z>>2]|0; - $47 = (_sqlite3LocateTable($41,0,$46,0)|0); - HEAP32[$pTab>>2] = $47; - $48 = ($47|0)!=(0|0); - if ($48) { - $49 = HEAP32[$0>>2]|0; - $50 = HEAP32[$pTab>>2]|0; - _analyzeTable($49,$50,0); - } - } - $51 = HEAP32[$db>>2]|0; - $52 = HEAP32[$z>>2]|0; - _sqlite3DbFree($51,$52); - STACKTOP = sp;return; -} -function _sqlite3AlterRenameTable($pParse,$pSrc,$pName) { - $pParse = $pParse|0; - $pSrc = $pSrc|0; - $pName = $pName|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; - var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; - var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; - var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; - var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; - var $98 = 0, $99 = 0, $db = 0, $i = 0, $iDb = 0, $nTabName = 0, $p = 0, $pFrom = 0, $pTab = 0, $pVTab = 0, $savedDbFlags = 0, $v = 0, $vararg_buffer27 = 0, $vararg_ptr10 = 0, $vararg_ptr14 = 0, $vararg_ptr15 = 0, $vararg_ptr16 = 0, $vararg_ptr17 = 0, $vararg_ptr18 = 0, $vararg_ptr19 = 0; - var $vararg_ptr20 = 0, $vararg_ptr21 = 0, $vararg_ptr25 = 0, $vararg_ptr26 = 0, $vararg_ptr30 = 0, $vararg_ptr31 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, $zDb = 0, $zName = 0, $zTabName = 0, $zWhere = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 112|0; - $vararg_buffer27 = sp; - $0 = sp + 100|0; - $1 = sp + 96|0; - $2 = sp + 92|0; - $iDb = sp + 88|0; - $zDb = sp + 84|0; - $pTab = sp + 80|0; - $zName = sp + 76|0; - $db = sp + 72|0; - $nTabName = sp + 68|0; - $zTabName = sp + 64|0; - $v = sp + 60|0; - $zWhere = sp + 56|0; - $pVTab = sp + 52|0; - $savedDbFlags = sp + 48|0; - $i = sp + 44|0; - $p = sp + 40|0; - $pFrom = sp + 36|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pSrc; - HEAP32[$2>>2] = $pName; - HEAP32[$zName>>2] = 0; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - HEAP32[$zWhere>>2] = 0; - HEAP32[$pVTab>>2] = 0; - $5 = HEAP32[$db>>2]|0; - $6 = (($5) + 24|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$savedDbFlags>>2] = $7; - $8 = HEAP32[$db>>2]|0; - $9 = (($8) + 64|0); - $10 = HEAP8[$9>>0]|0; - $11 = ($10<<24>>24)!=(0); - do { - if (!($11)) { - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 8|0); - $15 = (_sqlite3LocateTableItem($12,0,$14)|0); - HEAP32[$pTab>>2] = $15; - $16 = HEAP32[$pTab>>2]|0; - $17 = ($16|0)!=(0|0); - if ($17) { - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$pTab>>2]|0; - $21 = (($20) + 68|0); - $22 = HEAP32[$21>>2]|0; - $23 = (_sqlite3SchemaToIndex($19,$22)|0); - HEAP32[$iDb>>2] = $23; - $24 = HEAP32[$iDb>>2]|0; - $25 = HEAP32[$db>>2]|0; - $26 = (($25) + 16|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + ($24<<4)|0); - $29 = HEAP32[$28>>2]|0; - HEAP32[$zDb>>2] = $29; - $30 = HEAP32[$db>>2]|0; - $31 = (($30) + 24|0); - $32 = HEAP32[$31>>2]|0; - $33 = $32 | 2097152; - HEAP32[$31>>2] = $33; - $34 = HEAP32[$db>>2]|0; - $35 = HEAP32[$2>>2]|0; - $36 = (_sqlite3NameFromToken($34,$35)|0); - HEAP32[$zName>>2] = $36; - $37 = HEAP32[$zName>>2]|0; - $38 = ($37|0)!=(0|0); - if ($38) { - $39 = HEAP32[$db>>2]|0; - $40 = HEAP32[$zName>>2]|0; - $41 = HEAP32[$zDb>>2]|0; - $42 = (_sqlite3FindTable($39,$40,$41)|0); - $43 = ($42|0)!=(0|0); - if (!($43)) { - $44 = HEAP32[$db>>2]|0; - $45 = HEAP32[$zName>>2]|0; - $46 = HEAP32[$zDb>>2]|0; - $47 = (_sqlite3FindIndex($44,$45,$46)|0); - $48 = ($47|0)!=(0|0); - if (!($48)) { - $51 = HEAP32[$0>>2]|0; - $52 = HEAP32[$pTab>>2]|0; - $53 = HEAP32[$52>>2]|0; - $54 = (_isSystemTable($51,$53)|0); - $55 = (0)!=($54|0); - if ($55) { - break; - } - $56 = HEAP32[$0>>2]|0; - $57 = HEAP32[$zName>>2]|0; - $58 = (_sqlite3CheckObjectName($56,$57)|0); - $59 = (0)!=($58|0); - if ($59) { - break; - } - $60 = HEAP32[$pTab>>2]|0; - $61 = (($60) + 12|0); - $62 = HEAP32[$61>>2]|0; - $63 = ($62|0)!=(0|0); - $64 = HEAP32[$0>>2]|0; - if ($63) { - $65 = HEAP32[$pTab>>2]|0; - $66 = HEAP32[$65>>2]|0; - HEAP32[$vararg_buffer27>>2] = $66; - _sqlite3ErrorMsg($64,15568,$vararg_buffer27); - break; - } - $67 = HEAP32[$zDb>>2]|0; - $68 = HEAP32[$pTab>>2]|0; - $69 = HEAP32[$68>>2]|0; - $70 = (_sqlite3AuthCheck($64,26,$67,$69,0)|0); - $71 = ($70|0)!=(0); - if ($71) { - break; - } - $72 = HEAP32[$0>>2]|0; - $73 = HEAP32[$pTab>>2]|0; - $74 = (_sqlite3ViewGetColumnNames($72,$73)|0); - $75 = ($74|0)!=(0); - if ($75) { - break; - } - $76 = HEAP32[$pTab>>2]|0; - $77 = (($76) + 44|0); - $78 = HEAP8[$77>>0]|0; - $79 = $78&255; - $80 = $79 & 16; - $81 = ($80|0)!=(0); - if ($81) { - $82 = HEAP32[$db>>2]|0; - $83 = HEAP32[$pTab>>2]|0; - $84 = (_sqlite3GetVTable($82,$83)|0); - HEAP32[$pVTab>>2] = $84; - $85 = HEAP32[$pVTab>>2]|0; - $86 = (($85) + 8|0); - $87 = HEAP32[$86>>2]|0; - $88 = HEAP32[$87>>2]|0; - $89 = (($88) + 76|0); - $90 = HEAP32[$89>>2]|0; - $91 = ($90|0)==(0|0); - if ($91) { - HEAP32[$pVTab>>2] = 0; - } - } - $92 = HEAP32[$0>>2]|0; - $93 = (_sqlite3GetVdbe($92)|0); - HEAP32[$v>>2] = $93; - $94 = HEAP32[$v>>2]|0; - $95 = ($94|0)==(0|0); - if ($95) { - break; - } - $96 = HEAP32[$0>>2]|0; - $97 = HEAP32[$pVTab>>2]|0; - $98 = ($97|0)!=(0|0); - $99 = $98&1; - $100 = HEAP32[$iDb>>2]|0; - _sqlite3BeginWriteOperation($96,$99,$100); - $101 = HEAP32[$0>>2]|0; - $102 = HEAP32[$iDb>>2]|0; - _sqlite3ChangeCookie($101,$102); - $103 = HEAP32[$pVTab>>2]|0; - $104 = ($103|0)!=(0|0); - if ($104) { - $105 = HEAP32[$0>>2]|0; - $106 = (($105) + 72|0); - $107 = HEAP32[$106>>2]|0; - $108 = (($107) + 1)|0; - HEAP32[$106>>2] = $108; - HEAP32[$i>>2] = $108; - $109 = HEAP32[$v>>2]|0; - $110 = HEAP32[$i>>2]|0; - $111 = HEAP32[$zName>>2]|0; - (_sqlite3VdbeAddOp4($109,97,0,$110,0,$111,0)|0); - $112 = HEAP32[$v>>2]|0; - $113 = HEAP32[$i>>2]|0; - $114 = HEAP32[$pVTab>>2]|0; - (_sqlite3VdbeAddOp4($112,152,$113,0,0,$114,-10)|0); - $115 = HEAP32[$0>>2]|0; - _sqlite3MayAbort($115); - } - $116 = HEAP32[$pTab>>2]|0; - $117 = HEAP32[$116>>2]|0; - HEAP32[$zTabName>>2] = $117; - $118 = HEAP32[$zTabName>>2]|0; - $119 = (_sqlite3Utf8CharLen($118,-1)|0); - HEAP32[$nTabName>>2] = $119; - $120 = HEAP32[$db>>2]|0; - $121 = (($120) + 24|0); - $122 = HEAP32[$121>>2]|0; - $123 = $122 & 524288; - $124 = ($123|0)!=(0); - if ($124) { - $125 = HEAP32[$0>>2]|0; - $126 = HEAP32[$pTab>>2]|0; - $127 = (_whereForeignKeys($125,$126)|0); - HEAP32[$zWhere>>2] = $127; - $128 = ($127|0)!=(0|0); - if ($128) { - $129 = HEAP32[$0>>2]|0; - $130 = HEAP32[$zDb>>2]|0; - $131 = HEAP32[$iDb>>2]|0; - $132 = ($131|0)==(1); - $133 = $132 ? 14808 : 14832; - $134 = HEAP32[$zTabName>>2]|0; - $135 = HEAP32[$zName>>2]|0; - $136 = HEAP32[$zWhere>>2]|0; - HEAP32[$vararg_buffer27>>2] = $130; - $vararg_ptr7 = (($vararg_buffer27) + 4|0); - HEAP32[$vararg_ptr7>>2] = $133; - $vararg_ptr8 = (($vararg_buffer27) + 8|0); - HEAP32[$vararg_ptr8>>2] = $134; - $vararg_ptr9 = (($vararg_buffer27) + 12|0); - HEAP32[$vararg_ptr9>>2] = $135; - $vararg_ptr10 = (($vararg_buffer27) + 16|0); - HEAP32[$vararg_ptr10>>2] = $136; - _sqlite3NestedParse($129,15600,$vararg_buffer27); - $137 = HEAP32[$db>>2]|0; - $138 = HEAP32[$zWhere>>2]|0; - _sqlite3DbFree($137,$138); - } - } - $139 = HEAP32[$0>>2]|0; - $140 = HEAP32[$zDb>>2]|0; - $141 = HEAP32[$iDb>>2]|0; - $142 = ($141|0)==(1); - $143 = $142 ? 14808 : 14832; - $144 = HEAP32[$zName>>2]|0; - $145 = HEAP32[$zName>>2]|0; - $146 = HEAP32[$zName>>2]|0; - $147 = HEAP32[$zName>>2]|0; - $148 = HEAP32[$zName>>2]|0; - $149 = HEAP32[$nTabName>>2]|0; - $150 = HEAP32[$zTabName>>2]|0; - HEAP32[$vararg_buffer27>>2] = $140; - $vararg_ptr14 = (($vararg_buffer27) + 4|0); - HEAP32[$vararg_ptr14>>2] = $143; - $vararg_ptr15 = (($vararg_buffer27) + 8|0); - HEAP32[$vararg_ptr15>>2] = $144; - $vararg_ptr16 = (($vararg_buffer27) + 12|0); - HEAP32[$vararg_ptr16>>2] = $145; - $vararg_ptr17 = (($vararg_buffer27) + 16|0); - HEAP32[$vararg_ptr17>>2] = $146; - $vararg_ptr18 = (($vararg_buffer27) + 20|0); - HEAP32[$vararg_ptr18>>2] = $147; - $vararg_ptr19 = (($vararg_buffer27) + 24|0); - HEAP32[$vararg_ptr19>>2] = $148; - $vararg_ptr20 = (($vararg_buffer27) + 28|0); - HEAP32[$vararg_ptr20>>2] = $149; - $vararg_ptr21 = (($vararg_buffer27) + 32|0); - HEAP32[$vararg_ptr21>>2] = $150; - _sqlite3NestedParse($139,15672,$vararg_buffer27); - $151 = HEAP32[$db>>2]|0; - $152 = HEAP32[$zDb>>2]|0; - $153 = (_sqlite3FindTable($151,16056,$152)|0); - $154 = ($153|0)!=(0|0); - if ($154) { - $155 = HEAP32[$0>>2]|0; - $156 = HEAP32[$zDb>>2]|0; - $157 = HEAP32[$zName>>2]|0; - $158 = HEAP32[$pTab>>2]|0; - $159 = HEAP32[$158>>2]|0; - HEAP32[$vararg_buffer27>>2] = $156; - $vararg_ptr25 = (($vararg_buffer27) + 4|0); - HEAP32[$vararg_ptr25>>2] = $157; - $vararg_ptr26 = (($vararg_buffer27) + 8|0); - HEAP32[$vararg_ptr26>>2] = $159; - _sqlite3NestedParse($155,16072,$vararg_buffer27); - } - $160 = HEAP32[$0>>2]|0; - $161 = HEAP32[$pTab>>2]|0; - $162 = (_whereTempTriggers($160,$161)|0); - HEAP32[$zWhere>>2] = $162; - $163 = ($162|0)!=(0|0); - if ($163) { - $164 = HEAP32[$0>>2]|0; - $165 = HEAP32[$zName>>2]|0; - $166 = HEAP32[$zName>>2]|0; - $167 = HEAP32[$zWhere>>2]|0; - HEAP32[$vararg_buffer27>>2] = $165; - $vararg_ptr30 = (($vararg_buffer27) + 4|0); - HEAP32[$vararg_ptr30>>2] = $166; - $vararg_ptr31 = (($vararg_buffer27) + 8|0); - HEAP32[$vararg_ptr31>>2] = $167; - _sqlite3NestedParse($164,16136,$vararg_buffer27); - $168 = HEAP32[$db>>2]|0; - $169 = HEAP32[$zWhere>>2]|0; - _sqlite3DbFree($168,$169); - } - $170 = HEAP32[$db>>2]|0; - $171 = (($170) + 24|0); - $172 = HEAP32[$171>>2]|0; - $173 = $172 & 524288; - $174 = ($173|0)!=(0); - L33: do { - if ($174) { - $175 = HEAP32[$pTab>>2]|0; - $176 = (_sqlite3FkReferences($175)|0); - HEAP32[$p>>2] = $176; - while(1) { - $177 = HEAP32[$p>>2]|0; - $178 = ($177|0)!=(0|0); - if (!($178)) { - break L33; - } - $179 = HEAP32[$p>>2]|0; - $180 = HEAP32[$179>>2]|0; - HEAP32[$pFrom>>2] = $180; - $181 = HEAP32[$pFrom>>2]|0; - $182 = HEAP32[$pTab>>2]|0; - $183 = ($181|0)!=($182|0); - if ($183) { - $184 = HEAP32[$0>>2]|0; - $185 = HEAP32[$p>>2]|0; - $186 = HEAP32[$185>>2]|0; - $187 = HEAP32[$pFrom>>2]|0; - $188 = HEAP32[$187>>2]|0; - _reloadTableSchema($184,$186,$188); - } - $189 = HEAP32[$p>>2]|0; - $190 = (($189) + 12|0); - $191 = HEAP32[$190>>2]|0; - HEAP32[$p>>2] = $191; - } - } - } while(0); - $192 = HEAP32[$0>>2]|0; - $193 = HEAP32[$pTab>>2]|0; - $194 = HEAP32[$zName>>2]|0; - _reloadTableSchema($192,$193,$194); - break; - } - } - $49 = HEAP32[$0>>2]|0; - $50 = HEAP32[$zName>>2]|0; - HEAP32[$vararg_buffer27>>2] = $50; - _sqlite3ErrorMsg($49,15504,$vararg_buffer27); - } - } - } - } while(0); - $195 = HEAP32[$db>>2]|0; - $196 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($195,$196); - $197 = HEAP32[$db>>2]|0; - $198 = HEAP32[$zName>>2]|0; - _sqlite3DbFree($197,$198); - $199 = HEAP32[$savedDbFlags>>2]|0; - $200 = HEAP32[$db>>2]|0; - $201 = (($200) + 24|0); - HEAP32[$201>>2] = $199; - STACKTOP = sp;return; -} -function _sqlite3AlterFinishAddColumn($pParse,$pColDef) { - $pParse = $pParse|0; - $pColDef = $pColDef|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $17 = 0, $18 = 0; - var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; - var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; - var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; - var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; - var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $iDb = 0, $pCol = 0, $pDflt = 0, $pNew = 0, $pTab = 0, $pVal = 0, $savedDbFlags = 0, $vararg_buffer10 = 0, $vararg_ptr12 = 0, $vararg_ptr13 = 0; - var $vararg_ptr14 = 0, $vararg_ptr15 = 0, $vararg_ptr16 = 0, $zCol = 0, $zDb = 0, $zEnd = 0, $zTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer10 = sp; - $0 = sp + 76|0; - $1 = sp + 72|0; - $pNew = sp + 68|0; - $pTab = sp + 64|0; - $iDb = sp + 60|0; - $zDb = sp + 56|0; - $zTab = sp + 52|0; - $zCol = sp + 48|0; - $pCol = sp + 44|0; - $pDflt = sp + 40|0; - $db = sp + 36|0; - $pVal = sp + 32|0; - $zEnd = sp + 28|0; - $savedDbFlags = sp + 24|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pColDef; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 64|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0); - if ($7) { - STACKTOP = sp;return; - } - $8 = HEAP32[$db>>2]|0; - $9 = (($8) + 64|0); - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - $12 = ($11|0)!=(0); - if ($12) { - STACKTOP = sp;return; - } - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 484|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$pNew>>2] = $15; - $16 = HEAP32[$db>>2]|0; - $17 = HEAP32[$pNew>>2]|0; - $18 = (($17) + 68|0); - $19 = HEAP32[$18>>2]|0; - $20 = (_sqlite3SchemaToIndex($16,$19)|0); - HEAP32[$iDb>>2] = $20; - $21 = HEAP32[$iDb>>2]|0; - $22 = HEAP32[$db>>2]|0; - $23 = (($22) + 16|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + ($21<<4)|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$zDb>>2] = $26; - $27 = HEAP32[$pNew>>2]|0; - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + 16|0); - HEAP32[$zTab>>2] = $29; - $30 = HEAP32[$pNew>>2]|0; - $31 = (($30) + 38|0); - $32 = HEAP16[$31>>1]|0; - $33 = $32 << 16 >> 16; - $34 = (($33) - 1)|0; - $35 = HEAP32[$pNew>>2]|0; - $36 = (($35) + 4|0); - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + (($34*24)|0)|0); - HEAP32[$pCol>>2] = $38; - $39 = HEAP32[$pCol>>2]|0; - $40 = (($39) + 4|0); - $41 = HEAP32[$40>>2]|0; - HEAP32[$pDflt>>2] = $41; - $42 = HEAP32[$db>>2]|0; - $43 = HEAP32[$zTab>>2]|0; - $44 = HEAP32[$zDb>>2]|0; - $45 = (_sqlite3FindTable($42,$43,$44)|0); - HEAP32[$pTab>>2] = $45; - $46 = HEAP32[$0>>2]|0; - $47 = HEAP32[$zDb>>2]|0; - $48 = HEAP32[$pTab>>2]|0; - $49 = HEAP32[$48>>2]|0; - $50 = (_sqlite3AuthCheck($46,26,$47,$49,0)|0); - $51 = ($50|0)!=(0); - if ($51) { - STACKTOP = sp;return; - } - $52 = HEAP32[$pDflt>>2]|0; - $53 = ($52|0)!=(0|0); - if ($53) { - $54 = HEAP32[$pDflt>>2]|0; - $55 = HEAP8[$54>>0]|0; - $56 = $55&255; - $57 = ($56|0)==(101); - if ($57) { - HEAP32[$pDflt>>2] = 0; - } - } - $58 = HEAP32[$pCol>>2]|0; - $59 = (($58) + 23|0); - $60 = HEAP8[$59>>0]|0; - $61 = $60&255; - $62 = $61 & 1; - $63 = ($62|0)!=(0); - if ($63) { - $64 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($64,15088,$vararg_buffer10); - STACKTOP = sp;return; - } - $65 = HEAP32[$pNew>>2]|0; - $66 = (($65) + 8|0); - $67 = HEAP32[$66>>2]|0; - $68 = ($67|0)!=(0|0); - if ($68) { - $69 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($69,15120,$vararg_buffer10); - STACKTOP = sp;return; - } - $70 = HEAP32[$db>>2]|0; - $71 = (($70) + 24|0); - $72 = HEAP32[$71>>2]|0; - $73 = $72 & 524288; - $74 = ($73|0)!=(0); - if ($74) { - $75 = HEAP32[$pNew>>2]|0; - $76 = (($75) + 16|0); - $77 = HEAP32[$76>>2]|0; - $78 = ($77|0)!=(0|0); - if ($78) { - $79 = HEAP32[$pDflt>>2]|0; - $80 = ($79|0)!=(0|0); - if ($80) { - $81 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($81,15152,$vararg_buffer10); - STACKTOP = sp;return; - } - } - } - $82 = HEAP32[$pCol>>2]|0; - $83 = (($82) + 20|0); - $84 = HEAP8[$83>>0]|0; - $85 = $84&255; - $86 = ($85|0)!=(0); - if ($86) { - $87 = HEAP32[$pDflt>>2]|0; - $88 = ($87|0)!=(0|0); - if (!($88)) { - $89 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($89,15216,$vararg_buffer10); - STACKTOP = sp;return; - } - } - $90 = HEAP32[$pDflt>>2]|0; - $91 = ($90|0)!=(0|0); - do { - if ($91) { - HEAP32[$pVal>>2] = 0; - $92 = HEAP32[$db>>2]|0; - $93 = HEAP32[$pDflt>>2]|0; - $94 = (_sqlite3ValueFromExpr($92,$93,1,98,$pVal)|0); - $95 = ($94|0)!=(0); - if ($95) { - $96 = HEAP32[$db>>2]|0; - $97 = (($96) + 64|0); - HEAP8[$97>>0] = 1; - STACKTOP = sp;return; - } - $98 = HEAP32[$pVal>>2]|0; - $99 = ($98|0)!=(0|0); - if ($99) { - $101 = HEAP32[$pVal>>2]|0; - _sqlite3ValueFree($101); - break; - } - $100 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($100,15272,$vararg_buffer10); - STACKTOP = sp;return; - } - } while(0); - $102 = HEAP32[$db>>2]|0; - $103 = HEAP32[$1>>2]|0; - $104 = HEAP32[$103>>2]|0; - $105 = HEAP32[$1>>2]|0; - $106 = (($105) + 4|0); - $107 = HEAP32[$106>>2]|0; - $108 = (_sqlite3DbStrNDup($102,$104,$107)|0); - HEAP32[$zCol>>2] = $108; - $109 = HEAP32[$zCol>>2]|0; - $110 = ($109|0)!=(0|0); - if ($110) { - $111 = HEAP32[$1>>2]|0; - $112 = (($111) + 4|0); - $113 = HEAP32[$112>>2]|0; - $114 = (($113) - 1)|0; - $115 = HEAP32[$zCol>>2]|0; - $116 = (($115) + ($114)|0); - HEAP32[$zEnd>>2] = $116; - $117 = HEAP32[$db>>2]|0; - $118 = (($117) + 24|0); - $119 = HEAP32[$118>>2]|0; - HEAP32[$savedDbFlags>>2] = $119; - while(1) { - $120 = HEAP32[$zEnd>>2]|0; - $121 = HEAP32[$zCol>>2]|0; - $122 = ($120>>>0)>($121>>>0); - if (!($122)) { - break; - } - $123 = HEAP32[$zEnd>>2]|0; - $124 = HEAP8[$123>>0]|0; - $125 = $124 << 24 >> 24; - $126 = ($125|0)==(59); - if (!($126)) { - $127 = HEAP32[$zEnd>>2]|0; - $128 = HEAP8[$127>>0]|0; - $129 = $128&255; - $130 = (48 + ($129)|0); - $131 = HEAP8[$130>>0]|0; - $132 = $131&255; - $133 = $132 & 1; - $134 = ($133|0)!=(0); - if (!($134)) { - break; - } - } - $135 = HEAP32[$zEnd>>2]|0; - $136 = (($135) + -1|0); - HEAP32[$zEnd>>2] = $136; - HEAP8[$135>>0] = 0; - } - $137 = HEAP32[$db>>2]|0; - $138 = (($137) + 24|0); - $139 = HEAP32[$138>>2]|0; - $140 = $139 | 2097152; - HEAP32[$138>>2] = $140; - $141 = HEAP32[$0>>2]|0; - $142 = HEAP32[$zDb>>2]|0; - $143 = HEAP32[$iDb>>2]|0; - $144 = ($143|0)==(1); - $145 = $144 ? 14808 : 14832; - $146 = HEAP32[$pNew>>2]|0; - $147 = (($146) + 48|0); - $148 = HEAP32[$147>>2]|0; - $149 = HEAP32[$zCol>>2]|0; - $150 = HEAP32[$pNew>>2]|0; - $151 = (($150) + 48|0); - $152 = HEAP32[$151>>2]|0; - $153 = (($152) + 1)|0; - $154 = HEAP32[$zTab>>2]|0; - HEAP32[$vararg_buffer10>>2] = $142; - $vararg_ptr12 = (($vararg_buffer10) + 4|0); - HEAP32[$vararg_ptr12>>2] = $145; - $vararg_ptr13 = (($vararg_buffer10) + 8|0); - HEAP32[$vararg_ptr13>>2] = $148; - $vararg_ptr14 = (($vararg_buffer10) + 12|0); - HEAP32[$vararg_ptr14>>2] = $149; - $vararg_ptr15 = (($vararg_buffer10) + 16|0); - HEAP32[$vararg_ptr15>>2] = $153; - $vararg_ptr16 = (($vararg_buffer10) + 20|0); - HEAP32[$vararg_ptr16>>2] = $154; - _sqlite3NestedParse($141,15320,$vararg_buffer10); - $155 = HEAP32[$db>>2]|0; - $156 = HEAP32[$zCol>>2]|0; - _sqlite3DbFree($155,$156); - $157 = HEAP32[$savedDbFlags>>2]|0; - $158 = HEAP32[$db>>2]|0; - $159 = (($158) + 24|0); - HEAP32[$159>>2] = $157; - } - $160 = HEAP32[$0>>2]|0; - $161 = HEAP32[$iDb>>2]|0; - $162 = HEAP32[$pDflt>>2]|0; - $163 = ($162|0)!=(0|0); - $164 = $163 ? 3 : 2; - _sqlite3MinimumFileFormat($160,$161,$164); - $165 = HEAP32[$0>>2]|0; - $166 = HEAP32[$pTab>>2]|0; - $167 = HEAP32[$pTab>>2]|0; - $168 = HEAP32[$167>>2]|0; - _reloadTableSchema($165,$166,$168); - STACKTOP = sp;return; -} -function _sqlite3AlterBeginAddColumn($pParse,$pSrc) { - $pParse = $pParse|0; - $pSrc = $pSrc|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $db = 0, $i = 0, $iDb = 0, $nAlloc = 0, $pCol = 0, $pNew = 0, $pTab = 0, $v = 0, $vararg_buffer3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer3 = sp; - $0 = sp + 40|0; - $1 = sp + 36|0; - $pNew = sp + 32|0; - $pTab = sp + 28|0; - $v = sp + 24|0; - $iDb = sp + 20|0; - $i = sp + 16|0; - $nAlloc = sp + 12|0; - $db = sp + 8|0; - $pCol = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pSrc; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$db>>2]|0; - $5 = (($4) + 64|0); - $6 = HEAP8[$5>>0]|0; - $7 = ($6<<24>>24)!=(0); - if ($7) { - $138 = HEAP32[$db>>2]|0; - $139 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($138,$139); - STACKTOP = sp;return; - } - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 8|0); - $11 = (_sqlite3LocateTableItem($8,0,$10)|0); - HEAP32[$pTab>>2] = $11; - $12 = HEAP32[$pTab>>2]|0; - $13 = ($12|0)!=(0|0); - if (!($13)) { - $138 = HEAP32[$db>>2]|0; - $139 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($138,$139); - STACKTOP = sp;return; - } - $14 = HEAP32[$pTab>>2]|0; - $15 = (($14) + 44|0); - $16 = HEAP8[$15>>0]|0; - $17 = $16&255; - $18 = $17 & 16; - $19 = ($18|0)!=(0); - if ($19) { - $20 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($20,14880,$vararg_buffer3); - $138 = HEAP32[$db>>2]|0; - $139 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($138,$139); - STACKTOP = sp;return; - } - $21 = HEAP32[$pTab>>2]|0; - $22 = (($21) + 12|0); - $23 = HEAP32[$22>>2]|0; - $24 = ($23|0)!=(0|0); - $25 = HEAP32[$0>>2]|0; - if ($24) { - _sqlite3ErrorMsg($25,14920,$vararg_buffer3); - $138 = HEAP32[$db>>2]|0; - $139 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($138,$139); - STACKTOP = sp;return; - } - $26 = HEAP32[$pTab>>2]|0; - $27 = HEAP32[$26>>2]|0; - $28 = (_isSystemTable($25,$27)|0); - $29 = (0)!=($28|0); - if ($29) { - $138 = HEAP32[$db>>2]|0; - $139 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($138,$139); - STACKTOP = sp;return; - } - $30 = HEAP32[$db>>2]|0; - $31 = HEAP32[$pTab>>2]|0; - $32 = (($31) + 68|0); - $33 = HEAP32[$32>>2]|0; - $34 = (_sqlite3SchemaToIndex($30,$33)|0); - HEAP32[$iDb>>2] = $34; - $35 = HEAP32[$db>>2]|0; - $36 = (_sqlite3DbMallocZero($35,76)|0); - HEAP32[$pNew>>2] = $36; - $37 = HEAP32[$pNew>>2]|0; - $38 = ($37|0)!=(0|0); - if (!($38)) { - $138 = HEAP32[$db>>2]|0; - $139 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($138,$139); - STACKTOP = sp;return; - } - $39 = HEAP32[$pNew>>2]|0; - $40 = HEAP32[$0>>2]|0; - $41 = (($40) + 484|0); - HEAP32[$41>>2] = $39; - $42 = HEAP32[$pNew>>2]|0; - $43 = (($42) + 40|0); - HEAP16[$43>>1] = 1; - $44 = HEAP32[$pTab>>2]|0; - $45 = (($44) + 38|0); - $46 = HEAP16[$45>>1]|0; - $47 = HEAP32[$pNew>>2]|0; - $48 = (($47) + 38|0); - HEAP16[$48>>1] = $46; - $49 = HEAP32[$pNew>>2]|0; - $50 = (($49) + 38|0); - $51 = HEAP16[$50>>1]|0; - $52 = $51 << 16 >> 16; - $53 = (($52) - 1)|0; - $54 = (($53|0) / 8)&-1; - $55 = $54<<3; - $56 = (($55) + 8)|0; - HEAP32[$nAlloc>>2] = $56; - $57 = HEAP32[$db>>2]|0; - $58 = HEAP32[$nAlloc>>2]|0; - $59 = ($58*24)|0; - $60 = (_sqlite3DbMallocZero($57,$59)|0); - $61 = HEAP32[$pNew>>2]|0; - $62 = (($61) + 4|0); - HEAP32[$62>>2] = $60; - $63 = HEAP32[$db>>2]|0; - $64 = HEAP32[$pTab>>2]|0; - $65 = HEAP32[$64>>2]|0; - HEAP32[$vararg_buffer3>>2] = $65; - $66 = (_sqlite3MPrintf($63,14952,$vararg_buffer3)|0); - $67 = HEAP32[$pNew>>2]|0; - HEAP32[$67>>2] = $66; - $68 = HEAP32[$pNew>>2]|0; - $69 = (($68) + 4|0); - $70 = HEAP32[$69>>2]|0; - $71 = ($70|0)!=(0|0); - if ($71) { - $72 = HEAP32[$pNew>>2]|0; - $73 = HEAP32[$72>>2]|0; - $74 = ($73|0)!=(0|0); - if ($74) { - $77 = HEAP32[$pNew>>2]|0; - $78 = (($77) + 4|0); - $79 = HEAP32[$78>>2]|0; - $80 = HEAP32[$pTab>>2]|0; - $81 = (($80) + 4|0); - $82 = HEAP32[$81>>2]|0; - $83 = HEAP32[$pNew>>2]|0; - $84 = (($83) + 38|0); - $85 = HEAP16[$84>>1]|0; - $86 = $85 << 16 >> 16; - $87 = ($86*24)|0; - _memcpy(($79|0),($82|0),($87|0))|0; - HEAP32[$i>>2] = 0; - while(1) { - $88 = HEAP32[$i>>2]|0; - $89 = HEAP32[$pNew>>2]|0; - $90 = (($89) + 38|0); - $91 = HEAP16[$90>>1]|0; - $92 = $91 << 16 >> 16; - $93 = ($88|0)<($92|0); - if (!($93)) { - break; - } - $94 = HEAP32[$i>>2]|0; - $95 = HEAP32[$pNew>>2]|0; - $96 = (($95) + 4|0); - $97 = HEAP32[$96>>2]|0; - $98 = (($97) + (($94*24)|0)|0); - HEAP32[$pCol>>2] = $98; - $99 = HEAP32[$db>>2]|0; - $100 = HEAP32[$pCol>>2]|0; - $101 = HEAP32[$100>>2]|0; - $102 = (_sqlite3DbStrDup($99,$101)|0); - $103 = HEAP32[$pCol>>2]|0; - HEAP32[$103>>2] = $102; - $104 = HEAP32[$pCol>>2]|0; - $105 = (($104) + 16|0); - HEAP32[$105>>2] = 0; - $106 = HEAP32[$pCol>>2]|0; - $107 = (($106) + 12|0); - HEAP32[$107>>2] = 0; - $108 = HEAP32[$pCol>>2]|0; - $109 = (($108) + 4|0); - HEAP32[$109>>2] = 0; - $110 = HEAP32[$pCol>>2]|0; - $111 = (($110) + 8|0); - HEAP32[$111>>2] = 0; - $112 = HEAP32[$i>>2]|0; - $113 = (($112) + 1)|0; - HEAP32[$i>>2] = $113; - } - $114 = HEAP32[$iDb>>2]|0; - $115 = HEAP32[$db>>2]|0; - $116 = (($115) + 16|0); - $117 = HEAP32[$116>>2]|0; - $118 = (($117) + ($114<<4)|0); - $119 = (($118) + 12|0); - $120 = HEAP32[$119>>2]|0; - $121 = HEAP32[$pNew>>2]|0; - $122 = (($121) + 68|0); - HEAP32[$122>>2] = $120; - $123 = HEAP32[$pTab>>2]|0; - $124 = (($123) + 48|0); - $125 = HEAP32[$124>>2]|0; - $126 = HEAP32[$pNew>>2]|0; - $127 = (($126) + 48|0); - HEAP32[$127>>2] = $125; - $128 = HEAP32[$pNew>>2]|0; - $129 = (($128) + 40|0); - HEAP16[$129>>1] = 1; - $130 = HEAP32[$0>>2]|0; - $131 = HEAP32[$iDb>>2]|0; - _sqlite3BeginWriteOperation($130,0,$131); - $132 = HEAP32[$0>>2]|0; - $133 = (_sqlite3GetVdbe($132)|0); - HEAP32[$v>>2] = $133; - $134 = HEAP32[$v>>2]|0; - $135 = ($134|0)!=(0|0); - if (!($135)) { - $138 = HEAP32[$db>>2]|0; - $139 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($138,$139); - STACKTOP = sp;return; - } - $136 = HEAP32[$0>>2]|0; - $137 = HEAP32[$iDb>>2]|0; - _sqlite3ChangeCookie($136,$137); - $138 = HEAP32[$db>>2]|0; - $139 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($138,$139); - STACKTOP = sp;return; - } - } - $75 = HEAP32[$db>>2]|0; - $76 = (($75) + 64|0); - HEAP8[$76>>0] = 1; - $138 = HEAP32[$db>>2]|0; - $139 = HEAP32[$1>>2]|0; - _sqlite3SrcListDelete($138,$139); - STACKTOP = sp;return; -} -function _sqlite3VtabFinishParse($pParse,$pEnd) { - $pParse = $pParse|0; - $pEnd = $pEnd|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; - var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; - var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $iDb = 0, $nName = 0, $pOld = 0, $pSchema = 0, $pTab = 0, $v = 0, $vararg_buffer9 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $zName = 0; - var $zStmt = 0, $zWhere = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer9 = sp; - $0 = sp + 68|0; - $1 = sp + 64|0; - $pTab = sp + 60|0; - $db = sp + 56|0; - $zStmt = sp + 52|0; - $zWhere = sp + 48|0; - $iDb = sp + 44|0; - $v = sp + 40|0; - $pOld = sp + 36|0; - $pSchema = sp + 32|0; - $zName = sp + 28|0; - $nName = sp + 24|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pEnd; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 484|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pTab>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$pTab>>2]|0; - $8 = ($7|0)==(0|0); - if ($8) { - STACKTOP = sp;return; - } - $9 = HEAP32[$0>>2]|0; - _addArgumentToVtab($9); - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 512|0); - HEAP32[$11>>2] = 0; - $12 = HEAP32[$pTab>>2]|0; - $13 = (($12) + 52|0); - $14 = HEAP32[$13>>2]|0; - $15 = ($14|0)<(1); - if ($15) { - STACKTOP = sp;return; - } - $16 = HEAP32[$db>>2]|0; - $17 = (($16) + 132|0); - $18 = (($17) + 5|0); - $19 = HEAP8[$18>>0]|0; - $20 = ($19<<24>>24)!=(0); - if (!($20)) { - $21 = HEAP32[$1>>2]|0; - $22 = ($21|0)!=(0|0); - if ($22) { - $23 = HEAP32[$1>>2]|0; - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$0>>2]|0; - $26 = (($25) + 496|0); - $27 = HEAP32[$26>>2]|0; - $28 = $24; - $29 = $27; - $30 = (($28) - ($29))|0; - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 4|0); - $33 = HEAP32[$32>>2]|0; - $34 = (($30) + ($33))|0; - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + 496|0); - $37 = (($36) + 4|0); - HEAP32[$37>>2] = $34; - } - $38 = HEAP32[$db>>2]|0; - $39 = HEAP32[$0>>2]|0; - $40 = (($39) + 496|0); - HEAP32[$vararg_buffer9>>2] = $40; - $41 = (_sqlite3MPrintf($38,14696,$vararg_buffer9)|0); - HEAP32[$zStmt>>2] = $41; - $42 = HEAP32[$db>>2]|0; - $43 = HEAP32[$pTab>>2]|0; - $44 = (($43) + 68|0); - $45 = HEAP32[$44>>2]|0; - $46 = (_sqlite3SchemaToIndex($42,$45)|0); - HEAP32[$iDb>>2] = $46; - $47 = HEAP32[$0>>2]|0; - $48 = HEAP32[$iDb>>2]|0; - $49 = HEAP32[$db>>2]|0; - $50 = (($49) + 16|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + ($48<<4)|0); - $53 = HEAP32[$52>>2]|0; - $54 = HEAP32[$iDb>>2]|0; - $55 = ($54|0)==(1); - $56 = $55 ? 14808 : 14832; - $57 = HEAP32[$pTab>>2]|0; - $58 = HEAP32[$57>>2]|0; - $59 = HEAP32[$pTab>>2]|0; - $60 = HEAP32[$59>>2]|0; - $61 = HEAP32[$zStmt>>2]|0; - $62 = HEAP32[$0>>2]|0; - $63 = (($62) + 384|0); - $64 = HEAP32[$63>>2]|0; - HEAP32[$vararg_buffer9>>2] = $53; - $vararg_ptr4 = (($vararg_buffer9) + 4|0); - HEAP32[$vararg_ptr4>>2] = $56; - $vararg_ptr5 = (($vararg_buffer9) + 8|0); - HEAP32[$vararg_ptr5>>2] = $58; - $vararg_ptr6 = (($vararg_buffer9) + 12|0); - HEAP32[$vararg_ptr6>>2] = $60; - $vararg_ptr7 = (($vararg_buffer9) + 16|0); - HEAP32[$vararg_ptr7>>2] = $61; - $vararg_ptr8 = (($vararg_buffer9) + 20|0); - HEAP32[$vararg_ptr8>>2] = $64; - _sqlite3NestedParse($47,14720,$vararg_buffer9); - $65 = HEAP32[$db>>2]|0; - $66 = HEAP32[$zStmt>>2]|0; - _sqlite3DbFree($65,$66); - $67 = HEAP32[$0>>2]|0; - $68 = (_sqlite3GetVdbe($67)|0); - HEAP32[$v>>2] = $68; - $69 = HEAP32[$0>>2]|0; - $70 = HEAP32[$iDb>>2]|0; - _sqlite3ChangeCookie($69,$70); - $71 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($71,139,0,0)|0); - $72 = HEAP32[$db>>2]|0; - $73 = HEAP32[$pTab>>2]|0; - $74 = HEAP32[$73>>2]|0; - HEAP32[$vararg_buffer9>>2] = $74; - $75 = (_sqlite3MPrintf($72,14848,$vararg_buffer9)|0); - HEAP32[$zWhere>>2] = $75; - $76 = HEAP32[$v>>2]|0; - $77 = HEAP32[$iDb>>2]|0; - $78 = HEAP32[$zWhere>>2]|0; - _sqlite3VdbeAddParseSchemaOp($76,$77,$78); - $79 = HEAP32[$v>>2]|0; - $80 = HEAP32[$iDb>>2]|0; - $81 = HEAP32[$pTab>>2]|0; - $82 = HEAP32[$81>>2]|0; - $83 = HEAP32[$pTab>>2]|0; - $84 = HEAP32[$83>>2]|0; - $85 = (_sqlite3Strlen30($84)|0); - $86 = (($85) + 1)|0; - (_sqlite3VdbeAddOp4($79,142,$80,0,0,$82,$86)|0); - STACKTOP = sp;return; - } - $87 = HEAP32[$pTab>>2]|0; - $88 = (($87) + 68|0); - $89 = HEAP32[$88>>2]|0; - HEAP32[$pSchema>>2] = $89; - $90 = HEAP32[$pTab>>2]|0; - $91 = HEAP32[$90>>2]|0; - HEAP32[$zName>>2] = $91; - $92 = HEAP32[$zName>>2]|0; - $93 = (_sqlite3Strlen30($92)|0); - HEAP32[$nName>>2] = $93; - $94 = HEAP32[$pSchema>>2]|0; - $95 = (($94) + 8|0); - $96 = HEAP32[$zName>>2]|0; - $97 = HEAP32[$nName>>2]|0; - $98 = HEAP32[$pTab>>2]|0; - $99 = (_sqlite3HashInsert($95,$96,$97,$98)|0); - HEAP32[$pOld>>2] = $99; - $100 = HEAP32[$pOld>>2]|0; - $101 = ($100|0)!=(0|0); - if ($101) { - $102 = HEAP32[$db>>2]|0; - $103 = (($102) + 64|0); - HEAP8[$103>>0] = 1; - STACKTOP = sp;return; - } else { - $104 = HEAP32[$0>>2]|0; - $105 = (($104) + 484|0); - HEAP32[$105>>2] = 0; - STACKTOP = sp;return; - } -} -function _sqlite3VtabBeginParse($pParse,$pName1,$pName2,$pModuleName,$ifNotExists) { - $pParse = $pParse|0; - $pName1 = $pName1|0; - $pName2 = $pName2|0; - $pModuleName = $pModuleName|0; - $ifNotExists = $ifNotExists|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $8 = 0, $9 = 0, $db = 0, $iDb = 0, $pTable = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $iDb = sp + 8|0; - $pTable = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pName1; - HEAP32[$2>>2] = $pName2; - HEAP32[$3>>2] = $pModuleName; - HEAP32[$4>>2] = $ifNotExists; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$4>>2]|0; - _sqlite3StartTable($5,$6,$7,0,0,1,$8); - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 484|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$pTable>>2] = $11; - $12 = HEAP32[$pTable>>2]|0; - $13 = ($12|0)==(0|0); - if ($13) { - STACKTOP = sp;return; - } - $14 = HEAP32[$0>>2]|0; - $15 = HEAP32[$14>>2]|0; - HEAP32[$db>>2] = $15; - $16 = HEAP32[$db>>2]|0; - $17 = HEAP32[$pTable>>2]|0; - $18 = (($17) + 68|0); - $19 = HEAP32[$18>>2]|0; - $20 = (_sqlite3SchemaToIndex($16,$19)|0); - HEAP32[$iDb>>2] = $20; - $21 = HEAP32[$pTable>>2]|0; - $22 = (($21) + 44|0); - $23 = HEAP8[$22>>0]|0; - $24 = $23&255; - $25 = $24 | 16; - $26 = $25&255; - HEAP8[$22>>0] = $26; - $27 = HEAP32[$pTable>>2]|0; - $28 = (($27) + 52|0); - HEAP32[$28>>2] = 0; - $29 = HEAP32[$db>>2]|0; - $30 = HEAP32[$pTable>>2]|0; - $31 = HEAP32[$db>>2]|0; - $32 = HEAP32[$3>>2]|0; - $33 = (_sqlite3NameFromToken($31,$32)|0); - _addModuleArgument($29,$30,$33); - $34 = HEAP32[$db>>2]|0; - $35 = HEAP32[$pTable>>2]|0; - _addModuleArgument($34,$35,0); - $36 = HEAP32[$db>>2]|0; - $37 = HEAP32[$pTable>>2]|0; - $38 = HEAP32[$db>>2]|0; - $39 = HEAP32[$pTable>>2]|0; - $40 = HEAP32[$39>>2]|0; - $41 = (_sqlite3DbStrDup($38,$40)|0); - _addModuleArgument($36,$37,$41); - $42 = HEAP32[$3>>2]|0; - $43 = (($42) + 4|0); - $44 = HEAP32[$43>>2]|0; - $45 = HEAP32[$3>>2]|0; - $46 = HEAP32[$45>>2]|0; - $47 = (($46) + ($44)|0); - $48 = HEAP32[$1>>2]|0; - $49 = HEAP32[$48>>2]|0; - $50 = $47; - $51 = $49; - $52 = (($50) - ($51))|0; - $53 = HEAP32[$0>>2]|0; - $54 = (($53) + 496|0); - $55 = (($54) + 4|0); - HEAP32[$55>>2] = $52; - $56 = HEAP32[$pTable>>2]|0; - $57 = (($56) + 56|0); - $58 = HEAP32[$57>>2]|0; - $59 = ($58|0)!=(0|0); - if (!($59)) { - STACKTOP = sp;return; - } - $60 = HEAP32[$0>>2]|0; - $61 = HEAP32[$pTable>>2]|0; - $62 = HEAP32[$61>>2]|0; - $63 = HEAP32[$pTable>>2]|0; - $64 = (($63) + 56|0); - $65 = HEAP32[$64>>2]|0; - $66 = HEAP32[$65>>2]|0; - $67 = HEAP32[$iDb>>2]|0; - $68 = HEAP32[$0>>2]|0; - $69 = HEAP32[$68>>2]|0; - $70 = (($69) + 16|0); - $71 = HEAP32[$70>>2]|0; - $72 = (($71) + ($67<<4)|0); - $73 = HEAP32[$72>>2]|0; - (_sqlite3AuthCheck($60,29,$62,$66,$73)|0); - STACKTOP = sp;return; -} -function _sqlite3VtabArgInit($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - _addArgumentToVtab($1); - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 512|0); - HEAP32[$3>>2] = 0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 512|0); - $6 = (($5) + 4|0); - HEAP32[$6>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3VtabArgExtend($pParse,$p) { - $pParse = $pParse|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pArg = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pArg = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 512|0); - HEAP32[$pArg>>2] = $3; - $4 = HEAP32[$pArg>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)==(0|0); - $7 = HEAP32[$1>>2]|0; - if ($6) { - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$pArg>>2]|0; - HEAP32[$9>>2] = $8; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$pArg>>2]|0; - $14 = (($13) + 4|0); - HEAP32[$14>>2] = $12; - STACKTOP = sp;return; - } else { - $15 = (($7) + 4|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + ($16)|0); - $20 = HEAP32[$pArg>>2]|0; - $21 = HEAP32[$20>>2]|0; - $22 = $19; - $23 = $21; - $24 = (($22) - ($23))|0; - $25 = HEAP32[$pArg>>2]|0; - $26 = (($25) + 4|0); - HEAP32[$26>>2] = $24; - STACKTOP = sp;return; - } -} -function _sqlite3WithAdd($pParse,$pWith,$pName,$pArglist,$pQuery) { - $pParse = $pParse|0; - $pWith = $pWith|0; - $pName = $pName|0; - $pArglist = $pArglist|0; - $pQuery = $pQuery|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $9 = 0, $db = 0, $i = 0, $nByte = 0, $pNew = 0, $vararg_buffer = 0, $zName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $4 = sp + 24|0; - $db = sp + 20|0; - $pNew = sp + 16|0; - $zName = sp + 12|0; - $i = sp + 8|0; - $nByte = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pWith; - HEAP32[$2>>2] = $pName; - HEAP32[$3>>2] = $pArglist; - HEAP32[$4>>2] = $pQuery; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$2>>2]|0; - $10 = (_sqlite3NameFromToken($8,$9)|0); - HEAP32[$zName>>2] = $10; - $11 = HEAP32[$zName>>2]|0; - $12 = ($11|0)!=(0|0); - L1: do { - if ($12) { - $13 = HEAP32[$1>>2]|0; - $14 = ($13|0)!=(0|0); - if ($14) { - HEAP32[$i>>2] = 0; - while(1) { - $15 = HEAP32[$i>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = ($15|0)<($17|0); - if (!($18)) { - break L1; - } - $19 = HEAP32[$zName>>2]|0; - $20 = HEAP32[$i>>2]|0; - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 8|0); - $23 = (($22) + ($20<<4)|0); - $24 = HEAP32[$23>>2]|0; - $25 = (_sqlite3_stricmp($19,$24)|0); - $26 = ($25|0)==(0); - if ($26) { - $27 = HEAP32[$0>>2]|0; - $28 = HEAP32[$zName>>2]|0; - HEAP32[$vararg_buffer>>2] = $28; - _sqlite3ErrorMsg($27,14624,$vararg_buffer); - } - $29 = HEAP32[$i>>2]|0; - $30 = (($29) + 1)|0; - HEAP32[$i>>2] = $30; - } - } - } - } while(0); - $31 = HEAP32[$1>>2]|0; - $32 = ($31|0)!=(0|0); - if ($32) { - $33 = HEAP32[$1>>2]|0; - $34 = HEAP32[$33>>2]|0; - $35 = $34<<4; - $36 = (24 + ($35))|0; - HEAP32[$nByte>>2] = $36; - $37 = HEAP32[$db>>2]|0; - $38 = HEAP32[$1>>2]|0; - $39 = HEAP32[$nByte>>2]|0; - $40 = (_sqlite3DbRealloc($37,$38,$39)|0); - HEAP32[$pNew>>2] = $40; - } else { - $41 = HEAP32[$db>>2]|0; - $42 = (_sqlite3DbMallocZero($41,24)|0); - HEAP32[$pNew>>2] = $42; - } - $43 = HEAP32[$pNew>>2]|0; - $44 = ($43|0)==(0|0); - if ($44) { - $45 = HEAP32[$db>>2]|0; - $46 = HEAP32[$3>>2]|0; - _sqlite3ExprListDelete($45,$46); - $47 = HEAP32[$db>>2]|0; - $48 = HEAP32[$4>>2]|0; - _sqlite3SelectDelete($47,$48); - $49 = HEAP32[$db>>2]|0; - $50 = HEAP32[$zName>>2]|0; - _sqlite3DbFree($49,$50); - $51 = HEAP32[$1>>2]|0; - HEAP32[$pNew>>2] = $51; - $81 = HEAP32[$pNew>>2]|0; - STACKTOP = sp;return ($81|0); - } else { - $52 = HEAP32[$4>>2]|0; - $53 = HEAP32[$pNew>>2]|0; - $54 = HEAP32[$53>>2]|0; - $55 = HEAP32[$pNew>>2]|0; - $56 = (($55) + 8|0); - $57 = (($56) + ($54<<4)|0); - $58 = (($57) + 8|0); - HEAP32[$58>>2] = $52; - $59 = HEAP32[$3>>2]|0; - $60 = HEAP32[$pNew>>2]|0; - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$pNew>>2]|0; - $63 = (($62) + 8|0); - $64 = (($63) + ($61<<4)|0); - $65 = (($64) + 4|0); - HEAP32[$65>>2] = $59; - $66 = HEAP32[$zName>>2]|0; - $67 = HEAP32[$pNew>>2]|0; - $68 = HEAP32[$67>>2]|0; - $69 = HEAP32[$pNew>>2]|0; - $70 = (($69) + 8|0); - $71 = (($70) + ($68<<4)|0); - HEAP32[$71>>2] = $66; - $72 = HEAP32[$pNew>>2]|0; - $73 = HEAP32[$72>>2]|0; - $74 = HEAP32[$pNew>>2]|0; - $75 = (($74) + 8|0); - $76 = (($75) + ($73<<4)|0); - $77 = (($76) + 12|0); - HEAP32[$77>>2] = 0; - $78 = HEAP32[$pNew>>2]|0; - $79 = HEAP32[$78>>2]|0; - $80 = (($79) + 1)|0; - HEAP32[$78>>2] = $80; - $81 = HEAP32[$pNew>>2]|0; - STACKTOP = sp;return ($81|0); - } - return 0|0; -} -function _yy_find_reduce_action($stateno,$iLookAhead) { - $stateno = $stateno|0; - $iLookAhead = $iLookAhead|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp + 8|0; - $i = sp; - HEAP32[$0>>2] = $stateno; - HEAP8[$1>>0] = $iLookAhead; - $2 = HEAP32[$0>>2]|0; - $3 = (11008 + ($2<<1)|0); - $4 = HEAP16[$3>>1]|0; - $5 = $4 << 16 >> 16; - HEAP32[$i>>2] = $5; - $6 = HEAP8[$1>>0]|0; - $7 = $6&255; - $8 = HEAP32[$i>>2]|0; - $9 = (($8) + ($7))|0; - HEAP32[$i>>2] = $9; - $10 = HEAP32[$i>>2]|0; - $11 = (11624 + ($10<<1)|0); - $12 = HEAP16[$11>>1]|0; - $13 = $12&65535; - STACKTOP = sp;return ($13|0); -} -function _yy_accept($yypParser) { - $yypParser = $yypParser|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pParse = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pParse = sp; - HEAP32[$0>>2] = $yypParser; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pParse>>2] = $3; - while(1) { - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)>=(0); - if (!($6)) { - break; - } - $7 = HEAP32[$0>>2]|0; - (_yy_pop_parser_stack($7)|0); - } - $8 = HEAP32[$pParse>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 8|0); - HEAP32[$10>>2] = $8; - STACKTOP = sp;return; -} -function _sqlite3NameFromToken($db,$pName) { - $db = $db|0; - $pName = $pName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $zName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $zName = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pName; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if ($3) { - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = (_sqlite3DbStrNDup($4,$6,$9)|0); - HEAP32[$zName>>2] = $10; - $11 = HEAP32[$zName>>2]|0; - (_sqlite3Dequote($11)|0); - $12 = HEAP32[$zName>>2]|0; - STACKTOP = sp;return ($12|0); - } else { - HEAP32[$zName>>2] = 0; - $12 = HEAP32[$zName>>2]|0; - STACKTOP = sp;return ($12|0); - } - return 0|0; -} -function _addArgumentToVtab($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $n = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $z = sp + 8|0; - $n = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 512|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 484|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)!=(0|0); - if (!($8)) { - STACKTOP = sp;return; - } - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 512|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$z>>2] = $11; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 512|0); - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$n>>2] = $15; - $16 = HEAP32[$0>>2]|0; - $17 = HEAP32[$16>>2]|0; - HEAP32[$db>>2] = $17; - $18 = HEAP32[$db>>2]|0; - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 484|0); - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$db>>2]|0; - $23 = HEAP32[$z>>2]|0; - $24 = HEAP32[$n>>2]|0; - $25 = (_sqlite3DbStrNDup($22,$23,$24)|0); - _addModuleArgument($18,$21,$25); - STACKTOP = sp;return; -} -function _addModuleArgument($db,$pTable,$zArg) { - $db = $db|0; - $pTable = $pTable|0; - $zArg = $zArg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $azModuleArg = 0, $i = 0, $j = 0, $nBytes = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $i = sp + 12|0; - $nBytes = sp + 8|0; - $azModuleArg = sp + 4|0; - $j = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pTable; - HEAP32[$2>>2] = $zArg; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 52|0); - $5 = HEAP32[$4>>2]|0; - $6 = (($5) + 1)|0; - HEAP32[$4>>2] = $6; - HEAP32[$i>>2] = $5; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 52|0); - $9 = HEAP32[$8>>2]|0; - $10 = (1 + ($9))|0; - $11 = $10<<2; - HEAP32[$nBytes>>2] = $11; - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 56|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$nBytes>>2]|0; - $17 = (_sqlite3DbRealloc($12,$15,$16)|0); - HEAP32[$azModuleArg>>2] = $17; - $18 = HEAP32[$azModuleArg>>2]|0; - $19 = ($18|0)==(0|0); - if (!($19)) { - $39 = HEAP32[$2>>2]|0; - $40 = HEAP32[$i>>2]|0; - $41 = HEAP32[$azModuleArg>>2]|0; - $42 = (($41) + ($40<<2)|0); - HEAP32[$42>>2] = $39; - $43 = HEAP32[$i>>2]|0; - $44 = (($43) + 1)|0; - $45 = HEAP32[$azModuleArg>>2]|0; - $46 = (($45) + ($44<<2)|0); - HEAP32[$46>>2] = 0; - $47 = HEAP32[$azModuleArg>>2]|0; - $48 = HEAP32[$1>>2]|0; - $49 = (($48) + 56|0); - HEAP32[$49>>2] = $47; - STACKTOP = sp;return; - } - HEAP32[$j>>2] = 0; - while(1) { - $20 = HEAP32[$j>>2]|0; - $21 = HEAP32[$i>>2]|0; - $22 = ($20|0)<($21|0); - $23 = HEAP32[$0>>2]|0; - if (!($22)) { - break; - } - $24 = HEAP32[$j>>2]|0; - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 56|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + ($24<<2)|0); - $29 = HEAP32[$28>>2]|0; - _sqlite3DbFree($23,$29); - $30 = HEAP32[$j>>2]|0; - $31 = (($30) + 1)|0; - HEAP32[$j>>2] = $31; - } - $32 = HEAP32[$2>>2]|0; - _sqlite3DbFree($23,$32); - $33 = HEAP32[$0>>2]|0; - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 56|0); - $36 = HEAP32[$35>>2]|0; - _sqlite3DbFree($33,$36); - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 52|0); - HEAP32[$38>>2] = 0; - $47 = HEAP32[$azModuleArg>>2]|0; - $48 = HEAP32[$1>>2]|0; - $49 = (($48) + 56|0); - HEAP32[$49>>2] = $47; - STACKTOP = sp;return; -} -function _sqlite3AuthCheck($pParse,$code,$zArg1,$zArg2,$zArg3) { - $pParse = $pParse|0; - $code = $code|0; - $zArg1 = $zArg1|0; - $zArg2 = $zArg2|0; - $zArg3 = $zArg3|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $or$cond = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $4 = sp + 16|0; - $5 = sp + 12|0; - $db = sp + 8|0; - $rc = sp + 4|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $code; - HEAP32[$3>>2] = $zArg1; - HEAP32[$4>>2] = $zArg2; - HEAP32[$5>>2] = $zArg3; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$db>>2] = $7; - $8 = HEAP32[$db>>2]|0; - $9 = (($8) + 132|0); - $10 = (($9) + 5|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = ($12|0)!=(0); - if (!($13)) { - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 451|0); - $16 = HEAP8[$15>>0]|0; - $17 = $16&255; - $18 = ($17|0)!=(0); - if (!($18)) { - $19 = HEAP32[$db>>2]|0; - $20 = (($19) + 276|0); - $21 = HEAP32[$20>>2]|0; - $22 = ($21|0)==(0|0); - if ($22) { - HEAP32[$0>>2] = 0; - $48 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($48|0); - } - $23 = HEAP32[$db>>2]|0; - $24 = (($23) + 276|0); - $25 = HEAP32[$24>>2]|0; - $26 = HEAP32[$db>>2]|0; - $27 = (($26) + 280|0); - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$2>>2]|0; - $30 = HEAP32[$3>>2]|0; - $31 = HEAP32[$4>>2]|0; - $32 = HEAP32[$5>>2]|0; - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 492|0); - $35 = HEAP32[$34>>2]|0; - $36 = (FUNCTION_TABLE_iiiiiii[$25 & 1]($28,$29,$30,$31,$32,$35)|0); - HEAP32[$rc>>2] = $36; - $37 = HEAP32[$rc>>2]|0; - $38 = ($37|0)==(1); - if ($38) { - $39 = HEAP32[$1>>2]|0; - _sqlite3ErrorMsg($39,14656,$vararg_buffer); - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 12|0); - HEAP32[$41>>2] = 23; - } else { - $42 = HEAP32[$rc>>2]|0; - $43 = ($42|0)!=(0); - $44 = HEAP32[$rc>>2]|0; - $45 = ($44|0)!=(2); - $or$cond = $43 & $45; - if ($or$cond) { - HEAP32[$rc>>2] = 1; - $46 = HEAP32[$1>>2]|0; - _sqliteAuthBadReturnCode($46); - } - } - $47 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $47; - $48 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($48|0); - } - } - HEAP32[$0>>2] = 0; - $48 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($48|0); -} -function _sqliteAuthBadReturnCode($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 4|0; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($1,14672,$vararg_buffer); - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 12|0); - HEAP32[$3>>2] = 1; - STACKTOP = sp;return; -} -function _sqlite3NestedParse($pParse,$zFormat,$varargs) { - $pParse = $pParse|0; - $zFormat = $zFormat|0; - $varargs = $varargs|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ap = 0, $db = 0, $saveBuf = 0, $zErrMsg = 0, $zSql = 0, dest = 0, label = 0; - var sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 144|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $ap = sp + 16|0; - $zSql = sp + 8|0; - $zErrMsg = sp + 4|0; - $db = sp; - $saveBuf = sp + 40|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $zFormat; - HEAP32[$zErrMsg>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 64|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0); - if ($7) { - STACKTOP = sp;return; - } - HEAP32[$ap>>2] = $varargs; - $8 = HEAP32[$db>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (_sqlite3VMPrintf($8,$9,$ap)|0); - HEAP32[$zSql>>2] = $10; - $11 = HEAP32[$zSql>>2]|0; - $12 = ($11|0)==(0|0); - if ($12) { - STACKTOP = sp;return; - } - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 18|0); - $15 = HEAP8[$14>>0]|0; - $16 = (($15) + 1)<<24>>24; - HEAP8[$14>>0] = $16; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 440|0); - dest=$saveBuf+0|0; src=$18+0|0; stop=dest+96|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 440|0); - dest=$20+0|0; stop=dest+96|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$zSql>>2]|0; - (_sqlite3RunParser($21,$22,$zErrMsg)|0); - $23 = HEAP32[$db>>2]|0; - $24 = HEAP32[$zErrMsg>>2]|0; - _sqlite3DbFree($23,$24); - $25 = HEAP32[$db>>2]|0; - $26 = HEAP32[$zSql>>2]|0; - _sqlite3DbFree($25,$26); - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 440|0); - dest=$28+0|0; src=$saveBuf+0|0; stop=dest+96|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); - $29 = HEAP32[$0>>2]|0; - $30 = (($29) + 18|0); - $31 = HEAP8[$30>>0]|0; - $32 = (($31) + -1)<<24>>24; - HEAP8[$30>>0] = $32; - STACKTOP = sp;return; -} -function _sqlite3GetVdbe($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $v = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$v>>2] = $3; - $4 = HEAP32[$v>>2]|0; - $5 = ($4|0)==(0|0); - if ($5) { - $6 = HEAP32[$0>>2]|0; - $7 = (_sqlite3VdbeCreate($6)|0); - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 8|0); - HEAP32[$9>>2] = $7; - HEAP32[$v>>2] = $7; - $10 = HEAP32[$v>>2]|0; - $11 = ($10|0)!=(0|0); - if ($11) { - $12 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp0($12,155)|0); - } - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 408|0); - $15 = HEAP32[$14>>2]|0; - $16 = ($15|0)==(0|0); - if ($16) { - $17 = HEAP32[$0>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + 60|0); - $20 = HEAP16[$19>>1]|0; - $21 = $20&65535; - $22 = $21 & 8; - $23 = ($22|0)==(0); - if ($23) { - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 23|0); - HEAP8[$25>>0] = 1; - } - } - } - $26 = HEAP32[$v>>2]|0; - STACKTOP = sp;return ($26|0); -} -function _sqlite3ChangeCookie($pParse,$iDb) { - $pParse = $pParse|0; - $iDb = $iDb|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $r1 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $r1 = sp + 8|0; - $db = sp + 4|0; - $v = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iDb; - $2 = HEAP32[$0>>2]|0; - $3 = (_sqlite3GetTempReg($2)|0); - HEAP32[$r1>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 8|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$v>>2] = $8; - $9 = HEAP32[$v>>2]|0; - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$db>>2]|0; - $12 = (($11) + 16|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + ($10<<4)|0); - $15 = (($14) + 12|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + 1)|0; - $19 = HEAP32[$r1>>2]|0; - (_sqlite3VdbeAddOp2($9,25,$18,$19)|0); - $20 = HEAP32[$v>>2]|0; - $21 = HEAP32[$1>>2]|0; - $22 = HEAP32[$r1>>2]|0; - (_sqlite3VdbeAddOp3($20,51,$21,1,$22)|0); - $23 = HEAP32[$0>>2]|0; - $24 = HEAP32[$r1>>2]|0; - _sqlite3ReleaseTempReg($23,$24); - STACKTOP = sp;return; -} -function _sqlite3VdbeAddOp2($p,$op,$p1,$p2) { - $p = $p|0; - $op = $op|0; - $p1 = $p1|0; - $p2 = $p2|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $op; - HEAP32[$2>>2] = $p1; - HEAP32[$3>>2] = $p2; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$3>>2]|0; - $8 = (_sqlite3VdbeAddOp3($4,$5,$6,$7,0)|0); - STACKTOP = sp;return ($8|0); -} -function _sqlite3VdbeAddParseSchemaOp($p,$iDb,$zWhere) { - $p = $p|0; - $iDb = $iDb|0; - $zWhere = $zWhere|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $addr = 0; - var $j = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $j = sp + 4|0; - $addr = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $iDb; - HEAP32[$2>>2] = $zWhere; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (_sqlite3VdbeAddOp3($3,119,$4,0,0)|0); - HEAP32[$addr>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$addr>>2]|0; - $8 = HEAP32[$2>>2]|0; - _sqlite3VdbeChangeP4($6,$7,$8,-1); - HEAP32[$j>>2] = 0; - while(1) { - $9 = HEAP32[$j>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + 20|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($9|0)<($13|0); - if (!($14)) { - break; - } - $15 = HEAP32[$0>>2]|0; - $16 = HEAP32[$j>>2]|0; - _sqlite3VdbeUsesBtree($15,$16); - $17 = HEAP32[$j>>2]|0; - $18 = (($17) + 1)|0; - HEAP32[$j>>2] = $18; - } - STACKTOP = sp;return; -} -function _sqlite3VdbeAddOp4($p,$op,$p1,$p2,$p3,$zP4,$p4type) { - $p = $p|0; - $op = $op|0; - $p1 = $p1|0; - $p2 = $p2|0; - $p3 = $p3|0; - $zP4 = $zP4|0; - $p4type = $p4type|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $addr = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $5 = sp + 8|0; - $6 = sp + 4|0; - $addr = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $op; - HEAP32[$2>>2] = $p1; - HEAP32[$3>>2] = $p2; - HEAP32[$4>>2] = $p3; - HEAP32[$5>>2] = $zP4; - HEAP32[$6>>2] = $p4type; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$2>>2]|0; - $10 = HEAP32[$3>>2]|0; - $11 = HEAP32[$4>>2]|0; - $12 = (_sqlite3VdbeAddOp3($7,$8,$9,$10,$11)|0); - HEAP32[$addr>>2] = $12; - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$addr>>2]|0; - $15 = HEAP32[$5>>2]|0; - $16 = HEAP32[$6>>2]|0; - _sqlite3VdbeChangeP4($13,$14,$15,$16); - $17 = HEAP32[$addr>>2]|0; - STACKTOP = sp;return ($17|0); -} -function _sqlite3VdbeAddOp3($p,$op,$p1,$p2,$p3) { - $p = $p|0; - $op = $op|0; - $p1 = $p1|0; - $p2 = $p2|0; - $p3 = $p3|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pOp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $5 = sp + 8|0; - $i = sp + 4|0; - $pOp = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $op; - HEAP32[$3>>2] = $p1; - HEAP32[$4>>2] = $p2; - HEAP32[$5>>2] = $p3; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 32|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$i>>2] = $8; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 24|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + 84|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$i>>2]|0; - $15 = ($13|0)<=($14|0); - if ($15) { - $16 = HEAP32[$1>>2]|0; - $17 = (_growOpArray($16)|0); - $18 = ($17|0)!=(0); - if ($18) { - HEAP32[$0>>2] = 1; - $47 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($47|0); - } - } - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 32|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + 1)|0; - HEAP32[$20>>2] = $22; - $23 = HEAP32[$i>>2]|0; - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 4|0); - $26 = HEAP32[$25>>2]|0; - $27 = (($26) + (($23*20)|0)|0); - HEAP32[$pOp>>2] = $27; - $28 = HEAP32[$2>>2]|0; - $29 = $28&255; - $30 = HEAP32[$pOp>>2]|0; - HEAP8[$30>>0] = $29; - $31 = HEAP32[$pOp>>2]|0; - $32 = (($31) + 3|0); - HEAP8[$32>>0] = 0; - $33 = HEAP32[$3>>2]|0; - $34 = HEAP32[$pOp>>2]|0; - $35 = (($34) + 4|0); - HEAP32[$35>>2] = $33; - $36 = HEAP32[$4>>2]|0; - $37 = HEAP32[$pOp>>2]|0; - $38 = (($37) + 8|0); - HEAP32[$38>>2] = $36; - $39 = HEAP32[$5>>2]|0; - $40 = HEAP32[$pOp>>2]|0; - $41 = (($40) + 12|0); - HEAP32[$41>>2] = $39; - $42 = HEAP32[$pOp>>2]|0; - $43 = (($42) + 16|0); - HEAP32[$43>>2] = 0; - $44 = HEAP32[$pOp>>2]|0; - $45 = (($44) + 1|0); - HEAP8[$45>>0] = 0; - $46 = HEAP32[$i>>2]|0; - HEAP32[$0>>2] = $46; - $47 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($47|0); -} -function _growOpArray($v) { - $v = $v|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nNew = 0, $p = 0, $pNew = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $pNew = sp + 8|0; - $p = sp + 4|0; - $nNew = sp; - HEAP32[$0>>2] = $v; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 24|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$p>>2] = $3; - $4 = HEAP32[$p>>2]|0; - $5 = (($4) + 84|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0); - if ($7) { - $8 = HEAP32[$p>>2]|0; - $9 = (($8) + 84|0); - $10 = HEAP32[$9>>2]|0; - $11 = $10<<1; - $12 = $11; - } else { - $12 = 51; - } - HEAP32[$nNew>>2] = $12; - $13 = HEAP32[$p>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$nNew>>2]|0; - $19 = ($18*20)|0; - $20 = (_sqlite3DbRealloc($14,$17,$19)|0); - HEAP32[$pNew>>2] = $20; - $21 = HEAP32[$pNew>>2]|0; - $22 = ($21|0)!=(0|0); - if (!($22)) { - $33 = HEAP32[$pNew>>2]|0; - $34 = ($33|0)!=(0|0); - $35 = $34 ? 0 : 7; - STACKTOP = sp;return ($35|0); - } - $23 = HEAP32[$p>>2]|0; - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$pNew>>2]|0; - $26 = (_sqlite3DbMallocSize($24,$25)|0); - $27 = (($26>>>0) / 20)&-1; - $28 = HEAP32[$p>>2]|0; - $29 = (($28) + 84|0); - HEAP32[$29>>2] = $27; - $30 = HEAP32[$pNew>>2]|0; - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 4|0); - HEAP32[$32>>2] = $30; - $33 = HEAP32[$pNew>>2]|0; - $34 = ($33|0)!=(0|0); - $35 = $34 ? 0 : 7; - STACKTOP = sp;return ($35|0); -} -function _sqlite3DbMallocSize($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $p; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$2>>2]|0; - $5 = (_isLookaside($3,$4)|0); - $6 = ($5|0)!=(0); - if ($6) { - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 240|0); - $9 = HEAP16[$8>>1]|0; - $10 = $9&65535; - HEAP32[$0>>2] = $10; - $14 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($14|0); - } else { - $11 = HEAP32[((38512 + 48|0))>>2]|0; - $12 = HEAP32[$2>>2]|0; - $13 = (FUNCTION_TABLE_ii[$11 & 31]($12)|0); - HEAP32[$0>>2] = $13; - $14 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($14|0); - } - return 0|0; -} -function _sqlite3GetTempReg($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $pParse; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 19|0); - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - $6 = ($5|0)==(0); - $7 = HEAP32[$1>>2]|0; - if ($6) { - $8 = (($7) + 72|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + 1)|0; - HEAP32[$8>>2] = $10; - HEAP32[$0>>2] = $10; - $19 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($19|0); - } else { - $11 = (($7) + 19|0); - $12 = HEAP8[$11>>0]|0; - $13 = (($12) + -1)<<24>>24; - HEAP8[$11>>0] = $13; - $14 = $13&255; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 24|0); - $17 = (($16) + ($14<<2)|0); - $18 = HEAP32[$17>>2]|0; - HEAP32[$0>>2] = $18; - $19 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($19|0); - } - return 0|0; -} -function _sqlite3ReleaseTempReg($pParse,$iReg) { - $pParse = $pParse|0; - $iReg = $iReg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $i = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iReg; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0); - if (!($3)) { - STACKTOP = sp;return; - } - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 19|0); - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - $8 = ($7|0)<(8); - if (!($8)) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 116|0); - HEAP32[$p>>2] = $10; - while(1) { - $11 = HEAP32[$i>>2]|0; - $12 = ($11|0)<(10); - if (!($12)) { - label = 8; - break; - } - $13 = HEAP32[$p>>2]|0; - $14 = (($13) + 12|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = ($15|0)==($16|0); - if ($17) { - label = 6; - break; - } - $20 = HEAP32[$i>>2]|0; - $21 = (($20) + 1)|0; - HEAP32[$i>>2] = $21; - $22 = HEAP32[$p>>2]|0; - $23 = (($22) + 20|0); - HEAP32[$p>>2] = $23; - } - if ((label|0) == 6) { - $18 = HEAP32[$p>>2]|0; - $19 = (($18) + 6|0); - HEAP8[$19>>0] = 1; - STACKTOP = sp;return; - } - else if ((label|0) == 8) { - $24 = HEAP32[$1>>2]|0; - $25 = HEAP32[$0>>2]|0; - $26 = (($25) + 19|0); - $27 = HEAP8[$26>>0]|0; - $28 = (($27) + 1)<<24>>24; - HEAP8[$26>>0] = $28; - $29 = $27&255; - $30 = HEAP32[$0>>2]|0; - $31 = (($30) + 24|0); - $32 = (($31) + ($29<<2)|0); - HEAP32[$32>>2] = $24; - STACKTOP = sp;return; - } -} -function _sqlite3VdbeAddOp0($p,$op) { - $p = $p|0; - $op = $op|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $op; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_sqlite3VdbeAddOp3($2,$3,0,0,0)|0); - STACKTOP = sp;return ($4|0); -} -function _sqlite3LocateTableItem($pParse,$isView,$p) { - $pParse = $pParse|0; - $isView = $isView|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iDb = 0, $zDb = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $zDb = sp + 4|0; - $iDb = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $isView; - HEAP32[$2>>2] = $p; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0|0); - if ($5) { - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = (_sqlite3SchemaToIndex($7,$9)|0); - HEAP32[$iDb>>2] = $10; - $11 = HEAP32[$iDb>>2]|0; - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + 16|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + ($11<<4)|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$zDb>>2] = $17; - } else { - $18 = HEAP32[$2>>2]|0; - $19 = (($18) + 4|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$zDb>>2] = $20; - } - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$2>>2]|0; - $24 = (($23) + 8|0); - $25 = HEAP32[$24>>2]|0; - $26 = HEAP32[$zDb>>2]|0; - $27 = (_sqlite3LocateTable($21,$22,$25,$26)|0); - STACKTOP = sp;return ($27|0); -} -function _isSystemTable($pParse,$zName) { - $pParse = $pParse|0; - $zName = $zName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $zName; - $3 = HEAP32[$2>>2]|0; - $4 = (_sqlite3Strlen30($3)|0); - $5 = ($4|0)>(6); - if ($5) { - $6 = HEAP32[$2>>2]|0; - $7 = (_sqlite3_strnicmp($6,15048,7)|0); - $8 = (0)==($7|0); - if ($8) { - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer>>2] = $10; - _sqlite3ErrorMsg($9,15056,$vararg_buffer); - HEAP32[$0>>2] = 1; - $11 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($11|0); - } - } - HEAP32[$0>>2] = 0; - $11 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($11|0); -} -function _sqlite3BeginWriteOperation($pParse,$setStatement,$iDb) { - $pParse = $pParse|0; - $setStatement = $setStatement|0; - $iDb = $iDb|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pToplevel = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pToplevel = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $setStatement; - HEAP32[$2>>2] = $iDb; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 408|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0|0); - $7 = HEAP32[$0>>2]|0; - if ($6) { - $8 = (($7) + 408|0); - $9 = HEAP32[$8>>2]|0; - $10 = $9; - } else { - $10 = $7; - } - HEAP32[$pToplevel>>2] = $10; - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$2>>2]|0; - _sqlite3CodeVerifySchema($11,$12); - $13 = HEAP32[$2>>2]|0; - $14 = 1 << $13; - $15 = HEAP32[$pToplevel>>2]|0; - $16 = (($15) + 328|0); - $17 = HEAP32[$16>>2]|0; - $18 = $17 | $14; - HEAP32[$16>>2] = $18; - $19 = HEAP32[$1>>2]|0; - $20 = HEAP32[$pToplevel>>2]|0; - $21 = (($20) + 20|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = $23 | $19; - $25 = $24&255; - HEAP8[$21>>0] = $25; - STACKTOP = sp;return; -} -function _sqlite3CodeVerifySchema($pParse,$iDb) { - $pParse = $pParse|0; - $iDb = $iDb|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $db = 0, $mask = 0, $pToplevel = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $pToplevel = sp + 8|0; - $db = sp + 4|0; - $mask = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iDb; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 408|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0|0); - $6 = HEAP32[$0>>2]|0; - if ($5) { - $7 = (($6) + 408|0); - $8 = HEAP32[$7>>2]|0; - $9 = $8; - } else { - $9 = $6; - } - HEAP32[$pToplevel>>2] = $9; - $10 = HEAP32[$pToplevel>>2]|0; - $11 = HEAP32[$10>>2]|0; - HEAP32[$db>>2] = $11; - $12 = HEAP32[$1>>2]|0; - $13 = 1 << $12; - HEAP32[$mask>>2] = $13; - $14 = HEAP32[$pToplevel>>2]|0; - $15 = (($14) + 332|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$mask>>2]|0; - $18 = $16 & $17; - $19 = ($18|0)==(0); - if (!($19)) { - STACKTOP = sp;return; - } - $20 = HEAP32[$mask>>2]|0; - $21 = HEAP32[$pToplevel>>2]|0; - $22 = (($21) + 332|0); - $23 = HEAP32[$22>>2]|0; - $24 = $23 | $20; - HEAP32[$22>>2] = $24; - $25 = HEAP32[$1>>2]|0; - $26 = HEAP32[$db>>2]|0; - $27 = (($26) + 16|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + ($25<<4)|0); - $30 = (($29) + 12|0); - $31 = HEAP32[$30>>2]|0; - $32 = HEAP32[$31>>2]|0; - $33 = HEAP32[$1>>2]|0; - $34 = HEAP32[$pToplevel>>2]|0; - $35 = (($34) + 336|0); - $36 = (($35) + ($33<<2)|0); - HEAP32[$36>>2] = $32; - $37 = HEAP32[$1>>2]|0; - $38 = ($37|0)==(1); - if (!($38)) { - STACKTOP = sp;return; - } - $39 = HEAP32[$pToplevel>>2]|0; - (_sqlite3OpenTempDatabase($39)|0); - STACKTOP = sp;return; -} -function _sqlite3OpenTempDatabase($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $db = 0, $pBt = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 20|0; - $1 = sp + 16|0; - $db = sp + 12|0; - $rc = sp + 8|0; - $pBt = sp + 4|0; - HEAP32[$1>>2] = $pParse; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$db>>2]|0; - $5 = (($4) + 16|0); - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + 16|0); - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)==(0|0); - if ($10) { - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 450|0); - $13 = HEAP8[$12>>0]|0; - $14 = ($13<<24>>24)!=(0); - if (!($14)) { - $15 = HEAP32[$db>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$db>>2]|0; - $18 = (_sqlite3BtreeOpen($16,0,$17,$pBt,0,542)|0); - HEAP32[$rc>>2] = $18; - $19 = HEAP32[$rc>>2]|0; - $20 = ($19|0)!=(0); - if ($20) { - $21 = HEAP32[$1>>2]|0; - _sqlite3ErrorMsg($21,14976,$vararg_buffer); - $22 = HEAP32[$rc>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 12|0); - HEAP32[$24>>2] = $22; - HEAP32[$0>>2] = 1; - $39 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($39|0); - } - $25 = HEAP32[$pBt>>2]|0; - $26 = HEAP32[$db>>2]|0; - $27 = (($26) + 16|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + 16|0); - $30 = (($29) + 4|0); - HEAP32[$30>>2] = $25; - $31 = HEAP32[$pBt>>2]|0; - $32 = HEAP32[$db>>2]|0; - $33 = (($32) + 72|0); - $34 = HEAP32[$33>>2]|0; - $35 = (_sqlite3BtreeSetPageSize($31,$34,-1,0)|0); - $36 = (7)==($35|0); - if ($36) { - $37 = HEAP32[$db>>2]|0; - $38 = (($37) + 64|0); - HEAP8[$38>>0] = 1; - HEAP32[$0>>2] = 1; - $39 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($39|0); - } - } - } - HEAP32[$0>>2] = 0; - $39 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($39|0); -} -function _sqlite3FindTable($db,$zName,$zDatabase) { - $db = $db|0; - $zName = $zName|0; - $zDatabase = $zDatabase|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $i = 0, $j = 0, $nName = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $p = sp + 12|0; - $i = sp + 8|0; - $nName = sp + 4|0; - $j = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $zName; - HEAP32[$2>>2] = $zDatabase; - HEAP32[$p>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = (_sqlite3Strlen30($3)|0); - HEAP32[$nName>>2] = $4; - HEAP32[$i>>2] = 0; - while(1) { - $5 = HEAP32[$i>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 20|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($5|0)<($8|0); - if (!($9)) { - label = 7; - break; - } - $10 = HEAP32[$i>>2]|0; - $11 = ($10|0)<(2); - $12 = HEAP32[$i>>2]|0; - $13 = $12 ^ 1; - $14 = $11 ? $13 : $12; - HEAP32[$j>>2] = $14; - $15 = HEAP32[$2>>2]|0; - $16 = ($15|0)!=(0|0); - if ($16) { - $17 = HEAP32[$2>>2]|0; - $18 = HEAP32[$j>>2]|0; - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 16|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + ($18<<4)|0); - $23 = HEAP32[$22>>2]|0; - $24 = (_sqlite3_stricmp($17,$23)|0); - $25 = ($24|0)!=(0); - if (!($25)) { - label = 5; - } - } else { - label = 5; - } - if ((label|0) == 5) { - label = 0; - $26 = HEAP32[$j>>2]|0; - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 16|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + ($26<<4)|0); - $31 = (($30) + 12|0); - $32 = HEAP32[$31>>2]|0; - $33 = (($32) + 8|0); - $34 = HEAP32[$1>>2]|0; - $35 = HEAP32[$nName>>2]|0; - $36 = (_sqlite3HashFind($33,$34,$35)|0); - HEAP32[$p>>2] = $36; - $37 = HEAP32[$p>>2]|0; - $38 = ($37|0)!=(0|0); - if ($38) { - label = 7; - break; - } - } - $39 = HEAP32[$i>>2]|0; - $40 = (($39) + 1)|0; - HEAP32[$i>>2] = $40; - } - if ((label|0) == 7) { - $41 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($41|0); - } - return 0|0; -} -function _sqlite3ValueFromExpr($db,$pExpr,$enc,$affinity,$ppVal) { - $db = $db|0; - $pExpr = $pExpr|0; - $enc = $enc|0; - $affinity = $affinity|0; - $ppVal = $ppVal|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp + 13|0; - $3 = sp + 12|0; - $4 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pExpr; - HEAP8[$2>>0] = $enc; - HEAP8[$3>>0] = $affinity; - HEAP32[$4>>2] = $ppVal; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP8[$2>>0]|0; - $8 = HEAP8[$3>>0]|0; - $9 = HEAP32[$4>>2]|0; - $10 = (_valueFromExpr($5,$6,$7,$8,$9,0)|0); - STACKTOP = sp;return ($10|0); -} -function _sqlite3MinimumFileFormat($pParse,$iDb,$minFormat) { - $pParse = $pParse|0; - $iDb = $iDb|0; - $minFormat = $minFormat|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $j1 = 0, $r1 = 0, $r2 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $v = sp + 12|0; - $r1 = sp + 8|0; - $r2 = sp + 4|0; - $j1 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iDb; - HEAP32[$2>>2] = $minFormat; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3GetVdbe($3)|0); - HEAP32[$v>>2] = $4; - $5 = HEAP32[$v>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - $8 = (_sqlite3GetTempReg($7)|0); - HEAP32[$r1>>2] = $8; - $9 = HEAP32[$0>>2]|0; - $10 = (_sqlite3GetTempReg($9)|0); - HEAP32[$r2>>2] = $10; - $11 = HEAP32[$v>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$r1>>2]|0; - (_sqlite3VdbeAddOp3($11,50,$12,$13,2)|0); - $14 = HEAP32[$v>>2]|0; - $15 = HEAP32[$1>>2]|0; - _sqlite3VdbeUsesBtree($14,$15); - $16 = HEAP32[$v>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = HEAP32[$r2>>2]|0; - (_sqlite3VdbeAddOp2($16,25,$17,$18)|0); - $19 = HEAP32[$v>>2]|0; - $20 = HEAP32[$r2>>2]|0; - $21 = HEAP32[$r1>>2]|0; - $22 = (_sqlite3VdbeAddOp3($19,83,$20,0,$21)|0); - HEAP32[$j1>>2] = $22; - $23 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($23,-120); - $24 = HEAP32[$v>>2]|0; - $25 = HEAP32[$1>>2]|0; - $26 = HEAP32[$r2>>2]|0; - (_sqlite3VdbeAddOp3($24,51,$25,2,$26)|0); - $27 = HEAP32[$v>>2]|0; - $28 = HEAP32[$j1>>2]|0; - _sqlite3VdbeJumpHere($27,$28); - $29 = HEAP32[$0>>2]|0; - $30 = HEAP32[$r1>>2]|0; - _sqlite3ReleaseTempReg($29,$30); - $31 = HEAP32[$0>>2]|0; - $32 = HEAP32[$r2>>2]|0; - _sqlite3ReleaseTempReg($31,$32); - STACKTOP = sp;return; -} -function _reloadTableSchema($pParse,$pTab,$zName) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $zName = $zName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iDb = 0, $iTrigDb = 0, $pTrig = 0, $v = 0, $vararg_buffer = 0, $zWhere = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $v = sp + 20|0; - $zWhere = sp + 16|0; - $iDb = sp + 12|0; - $pTrig = sp + 8|0; - $iTrigDb = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $zName; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3GetVdbe($3)|0); - HEAP32[$v>>2] = $4; - $5 = HEAP32[$v>>2]|0; - $6 = ($5|0)==(0|0); - if ($6) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 68|0); - $11 = HEAP32[$10>>2]|0; - $12 = (_sqlite3SchemaToIndex($8,$11)|0); - HEAP32[$iDb>>2] = $12; - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = (_sqlite3TriggerList($13,$14)|0); - HEAP32[$pTrig>>2] = $15; - while(1) { - $16 = HEAP32[$pTrig>>2]|0; - $17 = ($16|0)!=(0|0); - if (!($17)) { - break; - } - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$pTrig>>2]|0; - $21 = (($20) + 20|0); - $22 = HEAP32[$21>>2]|0; - $23 = (_sqlite3SchemaToIndex($19,$22)|0); - HEAP32[$iTrigDb>>2] = $23; - $24 = HEAP32[$v>>2]|0; - $25 = HEAP32[$iTrigDb>>2]|0; - $26 = HEAP32[$pTrig>>2]|0; - $27 = HEAP32[$26>>2]|0; - (_sqlite3VdbeAddOp4($24,123,$25,0,0,$27,0)|0); - $28 = HEAP32[$pTrig>>2]|0; - $29 = (($28) + 32|0); - $30 = HEAP32[$29>>2]|0; - HEAP32[$pTrig>>2] = $30; - } - $31 = HEAP32[$v>>2]|0; - $32 = HEAP32[$iDb>>2]|0; - $33 = HEAP32[$1>>2]|0; - $34 = HEAP32[$33>>2]|0; - (_sqlite3VdbeAddOp4($31,121,$32,0,0,$34,0)|0); - $35 = HEAP32[$0>>2]|0; - $36 = HEAP32[$35>>2]|0; - $37 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer>>2] = $37; - $38 = (_sqlite3MPrintf($36,15432,$vararg_buffer)|0); - HEAP32[$zWhere>>2] = $38; - $39 = HEAP32[$zWhere>>2]|0; - $40 = ($39|0)!=(0|0); - if (!($40)) { - STACKTOP = sp;return; - } - $41 = HEAP32[$v>>2]|0; - $42 = HEAP32[$iDb>>2]|0; - $43 = HEAP32[$zWhere>>2]|0; - _sqlite3VdbeAddParseSchemaOp($41,$42,$43); - $44 = HEAP32[$0>>2]|0; - $45 = HEAP32[$1>>2]|0; - $46 = (_whereTempTriggers($44,$45)|0); - HEAP32[$zWhere>>2] = $46; - $47 = ($46|0)!=(0|0); - if (!($47)) { - STACKTOP = sp;return; - } - $48 = HEAP32[$v>>2]|0; - $49 = HEAP32[$zWhere>>2]|0; - _sqlite3VdbeAddParseSchemaOp($48,1,$49); - STACKTOP = sp;return; -} -function _sqlite3TriggerList($pParse,$pTab) { - $pParse = $pParse|0; - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0; - var $8 = 0, $9 = 0, $p = 0, $pList = 0, $pTmpSchema = 0, $pTrig = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $pTmpSchema = sp + 12|0; - $pList = sp + 8|0; - $p = sp + 4|0; - $pTrig = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pTab; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (($4) + 16|0); - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + 16|0); - $8 = (($7) + 12|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$pTmpSchema>>2] = $9; - HEAP32[$pList>>2] = 0; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 438|0); - $12 = HEAP8[$11>>0]|0; - $13 = ($12<<24>>24)!=(0); - if ($13) { - HEAP32[$0>>2] = 0; - $61 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($61|0); - } - $14 = HEAP32[$pTmpSchema>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = (($15) + 68|0); - $17 = HEAP32[$16>>2]|0; - $18 = ($14|0)!=($17|0); - L5: do { - if ($18) { - $19 = HEAP32[$pTmpSchema>>2]|0; - $20 = (($19) + 40|0); - $21 = (($20) + 8|0); - $22 = HEAP32[$21>>2]|0; - HEAP32[$p>>2] = $22; - while(1) { - $23 = HEAP32[$p>>2]|0; - $24 = ($23|0)!=(0|0); - if (!($24)) { - break L5; - } - $25 = HEAP32[$p>>2]|0; - $26 = (($25) + 8|0); - $27 = HEAP32[$26>>2]|0; - HEAP32[$pTrig>>2] = $27; - $28 = HEAP32[$pTrig>>2]|0; - $29 = (($28) + 24|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$2>>2]|0; - $32 = (($31) + 68|0); - $33 = HEAP32[$32>>2]|0; - $34 = ($30|0)==($33|0); - if ($34) { - $35 = HEAP32[$pTrig>>2]|0; - $36 = (($35) + 4|0); - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$2>>2]|0; - $39 = HEAP32[$38>>2]|0; - $40 = (_sqlite3_stricmp($37,$39)|0); - $41 = (0)==($40|0); - if ($41) { - $42 = HEAP32[$pList>>2]|0; - $43 = ($42|0)!=(0|0); - if ($43) { - $44 = HEAP32[$pList>>2]|0; - $50 = $44; - } else { - $45 = HEAP32[$2>>2]|0; - $46 = (($45) + 64|0); - $47 = HEAP32[$46>>2]|0; - $50 = $47; - } - $48 = HEAP32[$pTrig>>2]|0; - $49 = (($48) + 32|0); - HEAP32[$49>>2] = $50; - $51 = HEAP32[$pTrig>>2]|0; - HEAP32[$pList>>2] = $51; - } - } - $52 = HEAP32[$p>>2]|0; - $53 = HEAP32[$52>>2]|0; - HEAP32[$p>>2] = $53; - } - } - } while(0); - $54 = HEAP32[$pList>>2]|0; - $55 = ($54|0)!=(0|0); - if ($55) { - $56 = HEAP32[$pList>>2]|0; - $60 = $56; - } else { - $57 = HEAP32[$2>>2]|0; - $58 = (($57) + 64|0); - $59 = HEAP32[$58>>2]|0; - $60 = $59; - } - HEAP32[$0>>2] = $60; - $61 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($61|0); -} -function _whereTempTriggers($pParse,$pTab) { - $pParse = $pParse|0; - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $pTempSchema = 0, $pTrig = 0, $vararg_buffer = 0, $zNew = 0, $zWhere = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 28|0; - $1 = sp + 24|0; - $pTrig = sp + 20|0; - $zWhere = sp + 16|0; - $pTempSchema = sp + 12|0; - $db = sp + 8|0; - $zNew = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$zWhere>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 16|0); - $5 = HEAP32[$4>>2]|0; - $6 = (($5) + 16|0); - $7 = (($6) + 12|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pTempSchema>>2] = $8; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 68|0); - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$pTempSchema>>2]|0; - $13 = ($11|0)!=($12|0); - L1: do { - if ($13) { - $14 = HEAP32[$0>>2]|0; - $15 = HEAP32[$14>>2]|0; - HEAP32[$db>>2] = $15; - $16 = HEAP32[$0>>2]|0; - $17 = HEAP32[$1>>2]|0; - $18 = (_sqlite3TriggerList($16,$17)|0); - HEAP32[$pTrig>>2] = $18; - while(1) { - $19 = HEAP32[$pTrig>>2]|0; - $20 = ($19|0)!=(0|0); - if (!($20)) { - break L1; - } - $21 = HEAP32[$pTrig>>2]|0; - $22 = (($21) + 20|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$pTempSchema>>2]|0; - $25 = ($23|0)==($24|0); - if ($25) { - $26 = HEAP32[$db>>2]|0; - $27 = HEAP32[$zWhere>>2]|0; - $28 = HEAP32[$pTrig>>2]|0; - $29 = HEAP32[$28>>2]|0; - $30 = (_whereOrName($26,$27,$29)|0); - HEAP32[$zWhere>>2] = $30; - } - $31 = HEAP32[$pTrig>>2]|0; - $32 = (($31) + 32|0); - $33 = HEAP32[$32>>2]|0; - HEAP32[$pTrig>>2] = $33; - } - } - } while(0); - $34 = HEAP32[$zWhere>>2]|0; - $35 = ($34|0)!=(0|0); - if (!($35)) { - $44 = HEAP32[$zWhere>>2]|0; - STACKTOP = sp;return ($44|0); - } - $36 = HEAP32[$0>>2]|0; - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$zWhere>>2]|0; - HEAP32[$vararg_buffer>>2] = $38; - $39 = (_sqlite3MPrintf($37,15448,$vararg_buffer)|0); - HEAP32[$zNew>>2] = $39; - $40 = HEAP32[$0>>2]|0; - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$zWhere>>2]|0; - _sqlite3DbFree($41,$42); - $43 = HEAP32[$zNew>>2]|0; - HEAP32[$zWhere>>2] = $43; - $44 = HEAP32[$zWhere>>2]|0; - STACKTOP = sp;return ($44|0); -} -function _whereOrName($db,$zWhere,$zConstant) { - $db = $db|0; - $zWhere = $zWhere|0; - $zConstant = $zConstant|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer1 = 0, $vararg_ptr4 = 0, $zNew = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer1 = sp; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $zNew = sp + 8|0; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $zWhere; - HEAP32[$2>>2] = $zConstant; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)!=(0|0); - $5 = HEAP32[$0>>2]|0; - if ($4) { - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer1>>2] = $8; - $vararg_ptr4 = (($vararg_buffer1) + 4|0); - HEAP32[$vararg_ptr4>>2] = $9; - $10 = (_sqlite3MPrintf($5,15480,$vararg_buffer1)|0); - HEAP32[$zNew>>2] = $10; - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$1>>2]|0; - _sqlite3DbFree($11,$12); - $13 = HEAP32[$zNew>>2]|0; - STACKTOP = sp;return ($13|0); - } else { - $6 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer1>>2] = $6; - $7 = (_sqlite3MPrintf($5,15472,$vararg_buffer1)|0); - HEAP32[$zNew>>2] = $7; - $13 = HEAP32[$zNew>>2]|0; - STACKTOP = sp;return ($13|0); - } - return 0|0; -} -function _sqlite3VdbeJumpHere($p,$addr) { - $p = $p|0; - $addr = $addr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $addr; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 32|0); - $6 = HEAP32[$5>>2]|0; - _sqlite3VdbeChangeP2($2,$3,$6); - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 32|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) - 1)|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 24|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + 88|0); - HEAP32[$14>>2] = $10; - STACKTOP = sp;return; -} -function _valueFromExpr($db,$pExpr,$enc,$affinity,$ppVal,$pCtx) { - $db = $db|0; - $pExpr = $pExpr|0; - $enc = $enc|0; - $affinity = $affinity|0; - $ppVal = $ppVal|0; - $pCtx = $pCtx|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0.0, $161 = 0.0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $21 = 0, $22 = 0; - var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; - var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; - var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; - var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; - var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $nVal = 0, $negInt = 0, $op = 0, $or$cond = 0, $or$cond3 = 0, $or$cond5 = 0, $or$cond7 = 0, $pVal = 0, $rc = 0, $vararg_buffer = 0, $vararg_ptr8 = 0, $zNeg = 0, $zVal = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer = sp; - $0 = sp + 52|0; - $1 = sp + 48|0; - $2 = sp + 44|0; - $3 = sp + 57|0; - $4 = sp + 56|0; - $5 = sp + 40|0; - $6 = sp + 36|0; - $op = sp + 32|0; - $zVal = sp + 28|0; - $pVal = sp + 24|0; - $negInt = sp + 20|0; - $zNeg = sp + 16|0; - $rc = sp + 12|0; - $nVal = sp + 8|0; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pExpr; - HEAP8[$3>>0] = $enc; - HEAP8[$4>>0] = $affinity; - HEAP32[$5>>2] = $ppVal; - HEAP32[$6>>2] = $pCtx; - HEAP32[$zVal>>2] = 0; - HEAP32[$pVal>>2] = 0; - HEAP32[$negInt>>2] = 1; - HEAP32[$zNeg>>2] = 1472; - HEAP32[$rc>>2] = 0; - $7 = HEAP32[$2>>2]|0; - $8 = ($7|0)!=(0|0); - if (!($8)) { - $9 = HEAP32[$5>>2]|0; - HEAP32[$9>>2] = 0; - HEAP32[$0>>2] = 0; - $203 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($203|0); - } - $10 = HEAP32[$2>>2]|0; - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - HEAP32[$op>>2] = $12; - $13 = HEAP32[$op>>2]|0; - $14 = ($13|0)==(159); - if ($14) { - $15 = HEAP32[$2>>2]|0; - $16 = (($15) + 38|0); - $17 = HEAP8[$16>>0]|0; - $18 = $17&255; - HEAP32[$op>>2] = $18; - } - $19 = HEAP32[$op>>2]|0; - $20 = ($19|0)==(157); - do { - if ($20) { - $21 = HEAP32[$2>>2]|0; - $22 = (($21) + 12|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP8[$23>>0]|0; - $25 = $24&255; - $26 = ($25|0)==(132); - if (!($26)) { - $27 = HEAP32[$2>>2]|0; - $28 = (($27) + 12|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP8[$29>>0]|0; - $31 = $30&255; - $32 = ($31|0)==(133); - if (!($32)) { - break; - } - } - $33 = HEAP32[$2>>2]|0; - $34 = (($33) + 12|0); - $35 = HEAP32[$34>>2]|0; - HEAP32[$2>>2] = $35; - $36 = HEAP32[$2>>2]|0; - $37 = HEAP8[$36>>0]|0; - $38 = $37&255; - HEAP32[$op>>2] = $38; - HEAP32[$negInt>>2] = -1; - HEAP32[$zNeg>>2] = 15496; - } - } while(0); - $39 = HEAP32[$op>>2]|0; - $40 = ($39|0)==(97); - $41 = HEAP32[$op>>2]|0; - $42 = ($41|0)==(133); - $or$cond = $40 | $42; - $43 = HEAP32[$op>>2]|0; - $44 = ($43|0)==(132); - $or$cond3 = $or$cond | $44; - do { - if ($or$cond3) { - $45 = HEAP32[$1>>2]|0; - $46 = HEAP32[$6>>2]|0; - $47 = (_valueNew($45,$46)|0); - HEAP32[$pVal>>2] = $47; - $48 = HEAP32[$pVal>>2]|0; - $49 = ($48|0)==(0|0); - if ($49) { - label = 35; - } else { - $50 = HEAP32[$2>>2]|0; - $51 = (($50) + 4|0); - $52 = HEAP32[$51>>2]|0; - $53 = $52 & 1024; - $54 = ($53|0)!=(0); - if ($54) { - $55 = HEAP32[$pVal>>2]|0; - $56 = HEAP32[$2>>2]|0; - $57 = (($56) + 8|0); - $58 = HEAP32[$57>>2]|0; - $59 = ($58|0)<(0); - $60 = $59 << 31 >> 31; - $61 = HEAP32[$negInt>>2]|0; - $62 = ($61|0)<(0); - $63 = $62 << 31 >> 31; - $64 = (___muldi3(($58|0),($60|0),($61|0),($63|0))|0); - $65 = tempRet0; - _sqlite3VdbeMemSetInt64($55,$64,$65); - } else { - $66 = HEAP32[$1>>2]|0; - $67 = HEAP32[$zNeg>>2]|0; - $68 = HEAP32[$2>>2]|0; - $69 = (($68) + 8|0); - $70 = HEAP32[$69>>2]|0; - HEAP32[$vararg_buffer>>2] = $67; - $vararg_ptr8 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr8>>2] = $70; - $71 = (_sqlite3MPrintf($66,8896,$vararg_buffer)|0); - HEAP32[$zVal>>2] = $71; - $72 = HEAP32[$zVal>>2]|0; - $73 = ($72|0)==(0|0); - if ($73) { - label = 35; - break; - } - $74 = HEAP32[$pVal>>2]|0; - $75 = HEAP32[$zVal>>2]|0; - _sqlite3ValueSetStr($74,-1,$75,1,16); - } - $76 = HEAP32[$op>>2]|0; - $77 = ($76|0)==(132); - $78 = HEAP32[$op>>2]|0; - $79 = ($78|0)==(133); - $or$cond5 = $77 | $79; - if ($or$cond5) { - $80 = HEAP8[$4>>0]|0; - $81 = $80&255; - $82 = ($81|0)==(98); - if ($82) { - $83 = HEAP32[$pVal>>2]|0; - _sqlite3ValueApplyAffinity($83,99,1); - } else { - label = 18; - } - } else { - label = 18; - } - if ((label|0) == 18) { - $84 = HEAP32[$pVal>>2]|0; - $85 = HEAP8[$4>>0]|0; - _sqlite3ValueApplyAffinity($84,$85,1); - } - $86 = HEAP32[$pVal>>2]|0; - $87 = (($86) + 28|0); - $88 = HEAP16[$87>>1]|0; - $89 = $88&65535; - $90 = $89 & 12; - $91 = ($90|0)!=(0); - if ($91) { - $92 = HEAP32[$pVal>>2]|0; - $93 = (($92) + 28|0); - $94 = HEAP16[$93>>1]|0; - $95 = $94&65535; - $96 = $95 & -3; - $97 = $96&65535; - HEAP16[$93>>1] = $97; - } - $98 = HEAP8[$3>>0]|0; - $99 = $98&255; - $100 = ($99|0)!=(1); - if ($100) { - $101 = HEAP32[$pVal>>2]|0; - $102 = HEAP8[$3>>0]|0; - $103 = $102&255; - $104 = (_sqlite3VdbeChangeEncoding($101,$103)|0); - HEAP32[$rc>>2] = $104; - label = 34; - } else { - label = 34; - } - } - } else { - $105 = HEAP32[$op>>2]|0; - $106 = ($105|0)==(157); - if ($106) { - $107 = HEAP32[$1>>2]|0; - $108 = HEAP32[$2>>2]|0; - $109 = (($108) + 12|0); - $110 = HEAP32[$109>>2]|0; - $111 = HEAP8[$3>>0]|0; - $112 = HEAP8[$4>>0]|0; - $113 = (_sqlite3ValueFromExpr($107,$110,$111,$112,$pVal)|0); - $114 = (0)==($113|0); - $115 = HEAP32[$pVal>>2]|0; - $116 = ($115|0)!=(0|0); - $or$cond7 = $114 & $116; - if (!($or$cond7)) { - label = 34; - break; - } - $117 = HEAP32[$pVal>>2]|0; - (_sqlite3VdbeMemNumerify($117)|0); - $118 = HEAP32[$pVal>>2]|0; - $119 = (($118) + 16|0); - $120 = $119; - $121 = $120; - $122 = HEAP32[$121>>2]|0; - $123 = (($120) + 4)|0; - $124 = $123; - $125 = HEAP32[$124>>2]|0; - $126 = ($122|0)==(0); - $127 = ($125|0)==(-2147483648); - $128 = $126 & $127; - $129 = HEAP32[$pVal>>2]|0; - if ($128) { - $130 = (($129) + 28|0); - $131 = HEAP16[$130>>1]|0; - $132 = $131&65535; - $133 = $132 & -5; - $134 = $133&65535; - HEAP16[$130>>1] = $134; - $135 = HEAP32[$pVal>>2]|0; - $136 = (($135) + 28|0); - $137 = HEAP16[$136>>1]|0; - $138 = $137&65535; - $139 = $138 | 8; - $140 = $139&65535; - HEAP16[$136>>1] = $140; - $141 = HEAP32[$pVal>>2]|0; - $142 = (($141) + 8|0); - HEAPF64[$142>>3] = -9223372036854775808.0; - } else { - $143 = (($129) + 16|0); - $144 = $143; - $145 = $144; - $146 = HEAP32[$145>>2]|0; - $147 = (($144) + 4)|0; - $148 = $147; - $149 = HEAP32[$148>>2]|0; - $150 = (_i64Subtract(0,0,($146|0),($149|0))|0); - $151 = tempRet0; - $152 = HEAP32[$pVal>>2]|0; - $153 = (($152) + 16|0); - $154 = $153; - $155 = $154; - HEAP32[$155>>2] = $150; - $156 = (($154) + 4)|0; - $157 = $156; - HEAP32[$157>>2] = $151; - } - $158 = HEAP32[$pVal>>2]|0; - $159 = (($158) + 8|0); - $160 = +HEAPF64[$159>>3]; - $161 = -$160; - $162 = HEAP32[$pVal>>2]|0; - $163 = (($162) + 8|0); - HEAPF64[$163>>3] = $161; - $164 = HEAP32[$pVal>>2]|0; - $165 = HEAP8[$4>>0]|0; - $166 = HEAP8[$3>>0]|0; - _sqlite3ValueApplyAffinity($164,$165,$166); - label = 34; - break; - } else { - $167 = HEAP32[$op>>2]|0; - $168 = ($167|0)==(101); - if ($168) { - $169 = HEAP32[$1>>2]|0; - $170 = HEAP32[$6>>2]|0; - $171 = (_valueNew($169,$170)|0); - HEAP32[$pVal>>2] = $171; - $172 = HEAP32[$pVal>>2]|0; - $173 = ($172|0)==(0|0); - if ($173) { - label = 35; - break; - } else { - label = 34; - break; - } - } - $174 = HEAP32[$op>>2]|0; - $175 = ($174|0)==(134); - if (!($175)) { - label = 34; - break; - } - $176 = HEAP32[$1>>2]|0; - $177 = HEAP32[$6>>2]|0; - $178 = (_valueNew($176,$177)|0); - HEAP32[$pVal>>2] = $178; - $179 = HEAP32[$pVal>>2]|0; - $180 = ($179|0)!=(0|0); - if (!($180)) { - label = 35; - break; - } - $181 = HEAP32[$2>>2]|0; - $182 = (($181) + 8|0); - $183 = HEAP32[$182>>2]|0; - $184 = (($183) + 2|0); - HEAP32[$zVal>>2] = $184; - $185 = HEAP32[$zVal>>2]|0; - $186 = (_sqlite3Strlen30($185)|0); - $187 = (($186) - 1)|0; - HEAP32[$nVal>>2] = $187; - $188 = HEAP32[$pVal>>2]|0; - $189 = HEAP32[$1>>2]|0; - $190 = HEAP32[$zVal>>2]|0; - $191 = HEAP32[$nVal>>2]|0; - $192 = (_sqlite3HexToBlob($189,$190,$191)|0); - $193 = HEAP32[$nVal>>2]|0; - $194 = (($193|0) / 2)&-1; - (_sqlite3VdbeMemSetStr($188,$192,$194,0,16)|0); - label = 34; - break; - } - } - } while(0); - if ((label|0) == 34) { - $195 = HEAP32[$pVal>>2]|0; - $196 = HEAP32[$5>>2]|0; - HEAP32[$196>>2] = $195; - $197 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $197; - $203 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($203|0); - } - else if ((label|0) == 35) { - $198 = HEAP32[$1>>2]|0; - $199 = (($198) + 64|0); - HEAP8[$199>>0] = 1; - $200 = HEAP32[$1>>2]|0; - $201 = HEAP32[$zVal>>2]|0; - _sqlite3DbFree($200,$201); - $202 = HEAP32[$pVal>>2]|0; - _sqlite3ValueFree($202); - HEAP32[$0>>2] = 7; - $203 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($203|0); - } - return 0|0; -} -function _valueNew($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$0>>2]|0; - $3 = (_sqlite3ValueNew($2)|0); - STACKTOP = sp;return ($3|0); -} -function _sqlite3ValueApplyAffinity($pVal,$affinity,$enc) { - $pVal = $pVal|0; - $affinity = $affinity|0; - $enc = $enc|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - $1 = sp + 5|0; - $2 = sp + 4|0; - HEAP32[$0>>2] = $pVal; - HEAP8[$1>>0] = $affinity; - HEAP8[$2>>0] = $enc; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP8[$1>>0]|0; - $5 = HEAP8[$2>>0]|0; - _applyAffinity($3,$4,$5); - STACKTOP = sp;return; -} -function _sqlite3VdbeMemNumerify($pMem) { - $pMem = $pMem|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pMem; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 28|0); - $3 = HEAP16[$2>>1]|0; - $4 = $3&65535; - $5 = $4 & 13; - $6 = ($5|0)==(0); - do { - if ($6) { - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 16|0); - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 24|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 30|0); - $17 = HEAP8[$16>>0]|0; - $18 = (_sqlite3Atoi64($9,$11,$14,$17)|0); - $19 = (0)==($18|0); - $20 = HEAP32[$0>>2]|0; - if ($19) { - $21 = (($20) + 28|0); - $22 = HEAP16[$21>>1]|0; - $23 = $22&65535; - $24 = $23 & -16896; - $25 = $24 | 4; - $26 = $25&65535; - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 28|0); - HEAP16[$28>>1] = $26; - break; - } else { - $29 = (+_sqlite3VdbeRealValue($20)); - $30 = HEAP32[$0>>2]|0; - $31 = (($30) + 8|0); - HEAPF64[$31>>3] = $29; - $32 = HEAP32[$0>>2]|0; - $33 = (($32) + 28|0); - $34 = HEAP16[$33>>1]|0; - $35 = $34&65535; - $36 = $35 & -16896; - $37 = $36 | 8; - $38 = $37&65535; - $39 = HEAP32[$0>>2]|0; - $40 = (($39) + 28|0); - HEAP16[$40>>1] = $38; - $41 = HEAP32[$0>>2]|0; - _sqlite3VdbeIntegerAffinity($41); - break; - } - } - } while(0); - $42 = HEAP32[$0>>2]|0; - $43 = (($42) + 28|0); - $44 = HEAP16[$43>>1]|0; - $45 = $44&65535; - $46 = $45 & -19; - $47 = $46&65535; - HEAP16[$43>>1] = $47; - STACKTOP = sp;return 0; -} -function _sqlite3HexToBlob($db,$z,$n) { - $db = $db|0; - $z = $z|0; - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $i = 0, $zBlob = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $zBlob = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $z; - HEAP32[$2>>2] = $n; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$2>>2]|0; - $5 = (($4|0) / 2)&-1; - $6 = (($5) + 1)|0; - $7 = (_sqlite3DbMallocRaw($3,$6)|0); - HEAP32[$zBlob>>2] = $7; - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + -1)|0; - HEAP32[$2>>2] = $9; - $10 = HEAP32[$zBlob>>2]|0; - $11 = ($10|0)!=(0|0); - if (!($11)) { - $42 = HEAP32[$zBlob>>2]|0; - STACKTOP = sp;return ($42|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $12 = HEAP32[$i>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = ($12|0)<($13|0); - $15 = HEAP32[$i>>2]|0; - if (!($14)) { - break; - } - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + ($15)|0); - $18 = HEAP8[$17>>0]|0; - $19 = $18 << 24 >> 24; - $20 = (_sqlite3HexToInt($19)|0); - $21 = $20&255; - $22 = $21 << 4; - $23 = HEAP32[$i>>2]|0; - $24 = (($23) + 1)|0; - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + ($24)|0); - $27 = HEAP8[$26>>0]|0; - $28 = $27 << 24 >> 24; - $29 = (_sqlite3HexToInt($28)|0); - $30 = $29&255; - $31 = $22 | $30; - $32 = $31&255; - $33 = HEAP32[$i>>2]|0; - $34 = (($33|0) / 2)&-1; - $35 = HEAP32[$zBlob>>2]|0; - $36 = (($35) + ($34)|0); - HEAP8[$36>>0] = $32; - $37 = HEAP32[$i>>2]|0; - $38 = (($37) + 2)|0; - HEAP32[$i>>2] = $38; - } - $39 = (($15|0) / 2)&-1; - $40 = HEAP32[$zBlob>>2]|0; - $41 = (($40) + ($39)|0); - HEAP8[$41>>0] = 0; - $42 = HEAP32[$zBlob>>2]|0; - STACKTOP = sp;return ($42|0); -} -function _sqlite3VdbeIntegerAffinity($pMem) { - $pMem = $pMem|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0.0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0.0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pMem; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = +HEAPF64[$2>>3]; - $4 = (_doubleToInt64($3)|0); - $5 = tempRet0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 16|0); - $8 = $7; - $9 = $8; - HEAP32[$9>>2] = $4; - $10 = (($8) + 4)|0; - $11 = $10; - HEAP32[$11>>2] = $5; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 8|0); - $14 = +HEAPF64[$13>>3]; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 16|0); - $17 = $16; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = (($17) + 4)|0; - $21 = $20; - $22 = HEAP32[$21>>2]|0; - $23 = (+($19>>>0)) + (4294967296.0*(+($22|0))); - $24 = $14 == $23; - if (!($24)) { - STACKTOP = sp;return; - } - $25 = HEAP32[$0>>2]|0; - $26 = (($25) + 16|0); - $27 = $26; - $28 = $27; - $29 = HEAP32[$28>>2]|0; - $30 = (($27) + 4)|0; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $33 = ($32|0)>(-2147483648); - $34 = ($32|0)==(-2147483648); - $35 = ($29>>>0)>(0); - $36 = $34 & $35; - $37 = $33 | $36; - if (!($37)) { - STACKTOP = sp;return; - } - $38 = HEAP32[$0>>2]|0; - $39 = (($38) + 16|0); - $40 = $39; - $41 = $40; - $42 = HEAP32[$41>>2]|0; - $43 = (($40) + 4)|0; - $44 = $43; - $45 = HEAP32[$44>>2]|0; - $46 = ($45|0)<(2147483647); - $47 = ($45|0)==(2147483647); - $48 = ($42>>>0)<(4294967295); - $49 = $47 & $48; - $50 = $46 | $49; - if (!($50)) { - STACKTOP = sp;return; - } - $51 = HEAP32[$0>>2]|0; - $52 = (($51) + 28|0); - $53 = HEAP16[$52>>1]|0; - $54 = $53&65535; - $55 = $54 | 4; - $56 = $55&65535; - HEAP16[$52>>1] = $56; - STACKTOP = sp;return; -} -function _doubleToInt64($r) { - $r = +$r; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0.0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0.0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp; - HEAPF64[$1>>3] = $r; - $2 = +HEAPF64[$1>>3]; - $3 = $2 <= -9223372036854775808.0; - do { - if ($3) { - $4 = $0; - $5 = $4; - HEAP32[$5>>2] = 0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = -2147483648; - } else { - $8 = +HEAPF64[$1>>3]; - $9 = $8 >= 9223372036854775808.0; - if ($9) { - $10 = $0; - $11 = $10; - HEAP32[$11>>2] = -1; - $12 = (($10) + 4)|0; - $13 = $12; - HEAP32[$13>>2] = 2147483647; - break; - } else { - $14 = +HEAPF64[$1>>3]; - $15 = (~~$14)>>>0; - $16 = +Math_abs($14) >= 1.0 ? $14 > 0.0 ? (Math_min(+Math_floor($14 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($14 - +(~~$14 >>> 0)) / 4294967296.0) >>> 0 : 0; - $17 = $0; - $18 = $17; - HEAP32[$18>>2] = $15; - $19 = (($17) + 4)|0; - $20 = $19; - HEAP32[$20>>2] = $16; - break; - } - } - } while(0); - $21 = $0; - $22 = $21; - $23 = HEAP32[$22>>2]|0; - $24 = (($21) + 4)|0; - $25 = $24; - $26 = HEAP32[$25>>2]|0; - tempRet0 = $26; - STACKTOP = sp;return ($23|0); -} -function _applyAffinity($pRec,$affinity,$enc) { - $pRec = $pRec|0; - $affinity = $affinity|0; - $enc = $enc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - $1 = sp + 5|0; - $2 = sp + 4|0; - HEAP32[$0>>2] = $pRec; - HEAP8[$1>>0] = $affinity; - HEAP8[$2>>0] = $enc; - $3 = HEAP8[$1>>0]|0; - $4 = $3 << 24 >> 24; - $5 = ($4|0)==(97); - if ($5) { - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 28|0); - $8 = HEAP16[$7>>1]|0; - $9 = $8&65535; - $10 = $9 & 2; - $11 = (0)==($10|0); - if ($11) { - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 28|0); - $14 = HEAP16[$13>>1]|0; - $15 = $14&65535; - $16 = $15 & 12; - $17 = ($16|0)!=(0); - if ($17) { - $18 = HEAP32[$0>>2]|0; - $19 = HEAP8[$2>>0]|0; - $20 = $19&255; - (_sqlite3VdbeMemStringify($18,$20)|0); - } - } - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 28|0); - $23 = HEAP16[$22>>1]|0; - $24 = $23&65535; - $25 = $24 & -13; - $26 = $25&65535; - HEAP16[$22>>1] = $26; - STACKTOP = sp;return; - } - $27 = HEAP8[$1>>0]|0; - $28 = $27 << 24 >> 24; - $29 = ($28|0)!=(98); - if (!($29)) { - STACKTOP = sp;return; - } - $30 = HEAP32[$0>>2]|0; - _applyNumericAffinity($30); - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 28|0); - $33 = HEAP16[$32>>1]|0; - $34 = $33&65535; - $35 = $34 & 8; - $36 = ($35|0)!=(0); - if (!($36)) { - STACKTOP = sp;return; - } - $37 = HEAP32[$0>>2]|0; - _sqlite3VdbeIntegerAffinity($37); - STACKTOP = sp;return; -} -function _sqlite3VdbeMemStringify($pMem,$enc) { - $pMem = $pMem|0; - $enc = $enc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $fg = 0, $nByte = 0, $rc = 0, $vararg_buffer1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer1 = sp; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $rc = sp + 16|0; - $fg = sp + 12|0; - $nByte = sp + 8|0; - HEAP32[$1>>2] = $pMem; - HEAP32[$2>>2] = $enc; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 28|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5&65535; - HEAP32[$fg>>2] = $6; - HEAP32[$nByte>>2] = 32; - $7 = HEAP32[$1>>2]|0; - $8 = (_sqlite3VdbeMemGrow($7,32,0)|0); - $9 = ($8|0)!=(0); - if ($9) { - HEAP32[$0>>2] = 7; - $47 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($47|0); - } - $10 = HEAP32[$fg>>2]|0; - $11 = $10 & 4; - $12 = ($11|0)!=(0); - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$1>>2]|0; - if ($12) { - $17 = (($16) + 16|0); - $18 = $17; - $19 = $18; - $20 = HEAP32[$19>>2]|0; - $21 = (($18) + 4)|0; - $22 = $21; - $23 = HEAP32[$22>>2]|0; - $24 = $vararg_buffer1; - $25 = $24; - HEAP32[$25>>2] = $20; - $26 = (($24) + 4)|0; - $27 = $26; - HEAP32[$27>>2] = $23; - (_sqlite3_snprintf(32,$15,9360,$vararg_buffer1)|0); - } else { - $28 = (($16) + 8|0); - $29 = +HEAPF64[$28>>3]; - HEAPF64[tempDoublePtr>>3]=$29;HEAP32[$vararg_buffer1>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_buffer1+4>>2]=HEAP32[tempDoublePtr+4>>2]; - (_sqlite3_snprintf(32,$15,9712,$vararg_buffer1)|0); - } - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 4|0); - $32 = HEAP32[$31>>2]|0; - $33 = (_sqlite3Strlen30($32)|0); - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 24|0); - HEAP32[$35>>2] = $33; - $36 = HEAP32[$1>>2]|0; - $37 = (($36) + 30|0); - HEAP8[$37>>0] = 1; - $38 = HEAP32[$1>>2]|0; - $39 = (($38) + 28|0); - $40 = HEAP16[$39>>1]|0; - $41 = $40&65535; - $42 = $41 | 514; - $43 = $42&65535; - HEAP16[$39>>1] = $43; - $44 = HEAP32[$1>>2]|0; - $45 = HEAP32[$2>>2]|0; - (_sqlite3VdbeChangeEncoding($44,$45)|0); - $46 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $46; - $47 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($47|0); -} -function _sqlite3FindIndex($db,$zName,$zDb) { - $db = $db|0; - $zName = $zName|0; - $zDb = $zDb|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $i = 0, $j = 0, $nName = 0, $p = 0, $pSchema = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $p = sp + 16|0; - $i = sp + 12|0; - $nName = sp + 8|0; - $j = sp + 4|0; - $pSchema = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $zName; - HEAP32[$2>>2] = $zDb; - HEAP32[$p>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = (_sqlite3Strlen30($3)|0); - HEAP32[$nName>>2] = $4; - HEAP32[$i>>2] = 0; - while(1) { - $5 = HEAP32[$i>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 20|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($5|0)<($8|0); - if (!($9)) { - label = 7; - break; - } - $10 = HEAP32[$i>>2]|0; - $11 = ($10|0)<(2); - $12 = HEAP32[$i>>2]|0; - $13 = $12 ^ 1; - $14 = $11 ? $13 : $12; - HEAP32[$j>>2] = $14; - $15 = HEAP32[$j>>2]|0; - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 16|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + ($15<<4)|0); - $20 = (($19) + 12|0); - $21 = HEAP32[$20>>2]|0; - HEAP32[$pSchema>>2] = $21; - $22 = HEAP32[$2>>2]|0; - $23 = ($22|0)!=(0|0); - if ($23) { - $24 = HEAP32[$2>>2]|0; - $25 = HEAP32[$j>>2]|0; - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 16|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + ($25<<4)|0); - $30 = HEAP32[$29>>2]|0; - $31 = (_sqlite3_stricmp($24,$30)|0); - $32 = ($31|0)!=(0); - if (!($32)) { - label = 5; - } - } else { - label = 5; - } - if ((label|0) == 5) { - label = 0; - $33 = HEAP32[$pSchema>>2]|0; - $34 = (($33) + 24|0); - $35 = HEAP32[$1>>2]|0; - $36 = HEAP32[$nName>>2]|0; - $37 = (_sqlite3HashFind($34,$35,$36)|0); - HEAP32[$p>>2] = $37; - $38 = HEAP32[$p>>2]|0; - $39 = ($38|0)!=(0|0); - if ($39) { - label = 7; - break; - } - } - $40 = HEAP32[$i>>2]|0; - $41 = (($40) + 1)|0; - HEAP32[$i>>2] = $41; - } - if ((label|0) == 7) { - $42 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($42|0); - } - return 0|0; -} -function _sqlite3CheckObjectName($pParse,$zName) { - $pParse = $pParse|0; - $zName = $zName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $zName; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (($4) + 132|0); - $6 = (($5) + 5|0); - $7 = HEAP8[$6>>0]|0; - $8 = ($7<<24>>24)!=(0); - if (!($8)) { - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 18|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = ($12|0)==(0); - if ($13) { - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + 24|0); - $17 = HEAP32[$16>>2]|0; - $18 = $17 & 2048; - $19 = ($18|0)==(0); - if ($19) { - $20 = HEAP32[$2>>2]|0; - $21 = (_sqlite3_strnicmp($20,15048,7)|0); - $22 = (0)==($21|0); - if ($22) { - $23 = HEAP32[$1>>2]|0; - $24 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer>>2] = $24; - _sqlite3ErrorMsg($23,17968,$vararg_buffer); - HEAP32[$0>>2] = 1; - $25 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($25|0); - } - } - } - } - HEAP32[$0>>2] = 0; - $25 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($25|0); -} -function _sqlite3ViewGetColumnNames($pParse,$pTable) { - $pParse = $pParse|0; - $pTable = $pTable|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; - var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; - var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; - var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; - var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; - var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $enableLookaside = 0, $n = 0, $nErr = 0, $pSel = 0, $pSelTab = 0, $vararg_buffer = 0, $xAuth = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $pSelTab = sp + 24|0; - $pSel = sp + 20|0; - $nErr = sp + 16|0; - $n = sp + 12|0; - $db = sp + 8|0; - $xAuth = sp + 4|0; - $enableLookaside = sp + 40|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pTable; - HEAP32[$nErr>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = (_sqlite3VtabCallConnect($5,$6)|0); - $8 = ($7|0)!=(0); - if ($8) { - HEAP32[$0>>2] = 1; - $104 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($104|0); - } - $9 = HEAP32[$2>>2]|0; - $10 = (($9) + 44|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = $12 & 16; - $14 = ($13|0)!=(0); - if ($14) { - HEAP32[$0>>2] = 0; - $104 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($104|0); - } - $15 = HEAP32[$2>>2]|0; - $16 = (($15) + 38|0); - $17 = HEAP16[$16>>1]|0; - $18 = $17 << 16 >> 16; - $19 = ($18|0)>(0); - if ($19) { - HEAP32[$0>>2] = 0; - $104 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($104|0); - } - $20 = HEAP32[$2>>2]|0; - $21 = (($20) + 38|0); - $22 = HEAP16[$21>>1]|0; - $23 = $22 << 16 >> 16; - $24 = ($23|0)<(0); - if ($24) { - $25 = HEAP32[$1>>2]|0; - $26 = HEAP32[$2>>2]|0; - $27 = HEAP32[$26>>2]|0; - HEAP32[$vararg_buffer>>2] = $27; - _sqlite3ErrorMsg($25,16232,$vararg_buffer); - HEAP32[$0>>2] = 1; - $104 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($104|0); - } - $28 = HEAP32[$db>>2]|0; - $29 = HEAP32[$2>>2]|0; - $30 = (($29) + 12|0); - $31 = HEAP32[$30>>2]|0; - $32 = (_sqlite3SelectDup($28,$31,0)|0); - HEAP32[$pSel>>2] = $32; - $33 = HEAP32[$pSel>>2]|0; - $34 = ($33|0)!=(0|0); - if ($34) { - $35 = HEAP32[$db>>2]|0; - $36 = (($35) + 240|0); - $37 = (($36) + 2|0); - $38 = HEAP8[$37>>0]|0; - HEAP8[$enableLookaside>>0] = $38; - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 68|0); - $41 = HEAP32[$40>>2]|0; - HEAP32[$n>>2] = $41; - $42 = HEAP32[$1>>2]|0; - $43 = HEAP32[$pSel>>2]|0; - $44 = (($43) + 32|0); - $45 = HEAP32[$44>>2]|0; - _sqlite3SrcListAssignCursors($42,$45); - $46 = HEAP32[$2>>2]|0; - $47 = (($46) + 38|0); - HEAP16[$47>>1] = -1; - $48 = HEAP32[$db>>2]|0; - $49 = (($48) + 240|0); - $50 = (($49) + 2|0); - HEAP8[$50>>0] = 0; - $51 = HEAP32[$db>>2]|0; - $52 = (($51) + 276|0); - $53 = HEAP32[$52>>2]|0; - HEAP32[$xAuth>>2] = $53; - $54 = HEAP32[$db>>2]|0; - $55 = (($54) + 276|0); - HEAP32[$55>>2] = 0; - $56 = HEAP32[$1>>2]|0; - $57 = HEAP32[$pSel>>2]|0; - $58 = (_sqlite3ResultSetOfSelect($56,$57)|0); - HEAP32[$pSelTab>>2] = $58; - $59 = HEAP32[$xAuth>>2]|0; - $60 = HEAP32[$db>>2]|0; - $61 = (($60) + 276|0); - HEAP32[$61>>2] = $59; - $62 = HEAP8[$enableLookaside>>0]|0; - $63 = HEAP32[$db>>2]|0; - $64 = (($63) + 240|0); - $65 = (($64) + 2|0); - HEAP8[$65>>0] = $62; - $66 = HEAP32[$n>>2]|0; - $67 = HEAP32[$1>>2]|0; - $68 = (($67) + 68|0); - HEAP32[$68>>2] = $66; - $69 = HEAP32[$pSelTab>>2]|0; - $70 = ($69|0)!=(0|0); - if ($70) { - $71 = HEAP32[$pSelTab>>2]|0; - $72 = (($71) + 38|0); - $73 = HEAP16[$72>>1]|0; - $74 = HEAP32[$2>>2]|0; - $75 = (($74) + 38|0); - HEAP16[$75>>1] = $73; - $76 = HEAP32[$pSelTab>>2]|0; - $77 = (($76) + 4|0); - $78 = HEAP32[$77>>2]|0; - $79 = HEAP32[$2>>2]|0; - $80 = (($79) + 4|0); - HEAP32[$80>>2] = $78; - $81 = HEAP32[$pSelTab>>2]|0; - $82 = (($81) + 38|0); - HEAP16[$82>>1] = 0; - $83 = HEAP32[$pSelTab>>2]|0; - $84 = (($83) + 4|0); - HEAP32[$84>>2] = 0; - $85 = HEAP32[$db>>2]|0; - $86 = HEAP32[$pSelTab>>2]|0; - _sqlite3DeleteTable($85,$86); - $87 = HEAP32[$2>>2]|0; - $88 = (($87) + 68|0); - $89 = HEAP32[$88>>2]|0; - $90 = (($89) + 78|0); - $91 = HEAP16[$90>>1]|0; - $92 = $91&65535; - $93 = $92 | 2; - $94 = $93&65535; - HEAP16[$90>>1] = $94; - } else { - $95 = HEAP32[$2>>2]|0; - $96 = (($95) + 38|0); - HEAP16[$96>>1] = 0; - $97 = HEAP32[$nErr>>2]|0; - $98 = (($97) + 1)|0; - HEAP32[$nErr>>2] = $98; - } - $99 = HEAP32[$db>>2]|0; - $100 = HEAP32[$pSel>>2]|0; - _sqlite3SelectDelete($99,$100); - } else { - $101 = HEAP32[$nErr>>2]|0; - $102 = (($101) + 1)|0; - HEAP32[$nErr>>2] = $102; - } - $103 = HEAP32[$nErr>>2]|0; - HEAP32[$0>>2] = $103; - $104 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($104|0); -} -function _sqlite3GetVTable($db,$pTab) { - $db = $db|0; - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pVtab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pVtab = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pTab; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 60|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pVtab>>2] = $4; - while(1) { - $5 = HEAP32[$pVtab>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - label = 5; - break; - } - $7 = HEAP32[$pVtab>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = ($8|0)!=($9|0); - if (!($10)) { - label = 5; - break; - } - $11 = HEAP32[$pVtab>>2]|0; - $12 = (($11) + 24|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pVtab>>2] = $13; - } - if ((label|0) == 5) { - $14 = HEAP32[$pVtab>>2]|0; - STACKTOP = sp;return ($14|0); - } - return 0|0; -} -function _sqlite3MayAbort($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pToplevel = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pToplevel = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 408|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - $5 = HEAP32[$0>>2]|0; - if ($4) { - $6 = (($5) + 408|0); - $7 = HEAP32[$6>>2]|0; - $8 = $7; - } else { - $8 = $5; - } - HEAP32[$pToplevel>>2] = $8; - $9 = HEAP32[$pToplevel>>2]|0; - $10 = (($9) + 21|0); - HEAP8[$10>>0] = 1; - STACKTOP = sp;return; -} -function _whereForeignKeys($pParse,$pTab) { - $pParse = $pParse|0; - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $zWhere = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $p = sp + 4|0; - $zWhere = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$zWhere>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = (_sqlite3FkReferences($2)|0); - HEAP32[$p>>2] = $3; - while(1) { - $4 = HEAP32[$p>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - break; - } - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$zWhere>>2]|0; - $9 = HEAP32[$p>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = (_whereOrName($7,$8,$11)|0); - HEAP32[$zWhere>>2] = $12; - $13 = HEAP32[$p>>2]|0; - $14 = (($13) + 12|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$p>>2] = $15; - } - $16 = HEAP32[$zWhere>>2]|0; - STACKTOP = sp;return ($16|0); -} -function _sqlite3FkReferences($pTab) { - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $nName = sp; - HEAP32[$0>>2] = $pTab; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - $3 = (_sqlite3Strlen30($2)|0); - HEAP32[$nName>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 68|0); - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + 56|0); - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$nName>>2]|0; - $11 = (_sqlite3HashFind($7,$9,$10)|0); - STACKTOP = sp;return ($11|0); -} -function _sqlite3VtabCallConnect($pParse,$pTab) { - $pParse = $pParse|0; - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $pMod = 0, $rc = 0, $vararg_buffer1 = 0, $zErr = 0, $zMod = 0, $zModule = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer1 = sp; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $db = sp + 24|0; - $zMod = sp + 20|0; - $pMod = sp + 16|0; - $rc = sp + 12|0; - $zModule = sp + 8|0; - $zErr = sp + 4|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pTab; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - $5 = HEAP32[$2>>2]|0; - $6 = (($5) + 44|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = $8 & 16; - $10 = ($9|0)==(0); - if (!($10)) { - $11 = HEAP32[$db>>2]|0; - $12 = HEAP32[$2>>2]|0; - $13 = (_sqlite3GetVTable($11,$12)|0); - $14 = ($13|0)!=(0|0); - if (!($14)) { - $15 = HEAP32[$2>>2]|0; - $16 = (($15) + 56|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$17>>2]|0; - HEAP32[$zMod>>2] = $18; - $19 = HEAP32[$db>>2]|0; - $20 = (($19) + 300|0); - $21 = HEAP32[$zMod>>2]|0; - $22 = HEAP32[$zMod>>2]|0; - $23 = (_sqlite3Strlen30($22)|0); - $24 = (_sqlite3HashFind($20,$21,$23)|0); - HEAP32[$pMod>>2] = $24; - $25 = HEAP32[$pMod>>2]|0; - $26 = ($25|0)!=(0|0); - if ($26) { - HEAP32[$zErr>>2] = 0; - $33 = HEAP32[$db>>2]|0; - $34 = HEAP32[$2>>2]|0; - $35 = HEAP32[$pMod>>2]|0; - $36 = HEAP32[$pMod>>2]|0; - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + 8|0); - $39 = HEAP32[$38>>2]|0; - $40 = (_vtabCallConstructor($33,$34,$35,$39,$zErr)|0); - HEAP32[$rc>>2] = $40; - $41 = HEAP32[$rc>>2]|0; - $42 = ($41|0)!=(0); - if ($42) { - $43 = HEAP32[$1>>2]|0; - $44 = HEAP32[$zErr>>2]|0; - HEAP32[$vararg_buffer1>>2] = $44; - _sqlite3ErrorMsg($43,1456,$vararg_buffer1); - } - $45 = HEAP32[$db>>2]|0; - $46 = HEAP32[$zErr>>2]|0; - _sqlite3DbFree($45,$46); - } else { - $27 = HEAP32[$2>>2]|0; - $28 = (($27) + 56|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$29>>2]|0; - HEAP32[$zModule>>2] = $30; - $31 = HEAP32[$1>>2]|0; - $32 = HEAP32[$zModule>>2]|0; - HEAP32[$vararg_buffer1>>2] = $32; - _sqlite3ErrorMsg($31,17848,$vararg_buffer1); - HEAP32[$rc>>2] = 1; - } - $47 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $47; - $48 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($48|0); - } - } - HEAP32[$0>>2] = 0; - $48 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($48|0); -} -function _sqlite3SelectDup($db,$p,$flags) { - $db = $db|0; - $p = $p|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $14 = 0, $15 = 0; - var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; - var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; - var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; - var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; - var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $pNew = 0, $pPrior = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $pNew = sp + 4|0; - $pPrior = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $p; - HEAP32[$3>>2] = $flags; - $4 = HEAP32[$2>>2]|0; - $5 = ($4|0)==(0|0); - if ($5) { - HEAP32[$0>>2] = 0; - $131 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($131|0); - } - $6 = HEAP32[$1>>2]|0; - $7 = (_sqlite3DbMallocRaw($6,72)|0); - HEAP32[$pNew>>2] = $7; - $8 = HEAP32[$pNew>>2]|0; - $9 = ($8|0)==(0|0); - if ($9) { - HEAP32[$0>>2] = 0; - $131 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($131|0); - } - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$3>>2]|0; - $14 = (_sqlite3ExprListDup($10,$12,$13)|0); - $15 = HEAP32[$pNew>>2]|0; - HEAP32[$15>>2] = $14; - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = (($17) + 32|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$3>>2]|0; - $21 = (_sqlite3SrcListDup($16,$19,$20)|0); - $22 = HEAP32[$pNew>>2]|0; - $23 = (($22) + 32|0); - HEAP32[$23>>2] = $21; - $24 = HEAP32[$1>>2]|0; - $25 = HEAP32[$2>>2]|0; - $26 = (($25) + 36|0); - $27 = HEAP32[$26>>2]|0; - $28 = HEAP32[$3>>2]|0; - $29 = (_sqlite3ExprDup($24,$27,$28)|0); - $30 = HEAP32[$pNew>>2]|0; - $31 = (($30) + 36|0); - HEAP32[$31>>2] = $29; - $32 = HEAP32[$1>>2]|0; - $33 = HEAP32[$2>>2]|0; - $34 = (($33) + 40|0); - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$3>>2]|0; - $37 = (_sqlite3ExprListDup($32,$35,$36)|0); - $38 = HEAP32[$pNew>>2]|0; - $39 = (($38) + 40|0); - HEAP32[$39>>2] = $37; - $40 = HEAP32[$1>>2]|0; - $41 = HEAP32[$2>>2]|0; - $42 = (($41) + 44|0); - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$3>>2]|0; - $45 = (_sqlite3ExprDup($40,$43,$44)|0); - $46 = HEAP32[$pNew>>2]|0; - $47 = (($46) + 44|0); - HEAP32[$47>>2] = $45; - $48 = HEAP32[$1>>2]|0; - $49 = HEAP32[$2>>2]|0; - $50 = (($49) + 48|0); - $51 = HEAP32[$50>>2]|0; - $52 = HEAP32[$3>>2]|0; - $53 = (_sqlite3ExprListDup($48,$51,$52)|0); - $54 = HEAP32[$pNew>>2]|0; - $55 = (($54) + 48|0); - HEAP32[$55>>2] = $53; - $56 = HEAP32[$2>>2]|0; - $57 = (($56) + 4|0); - $58 = HEAP8[$57>>0]|0; - $59 = HEAP32[$pNew>>2]|0; - $60 = (($59) + 4|0); - HEAP8[$60>>0] = $58; - $61 = HEAP32[$1>>2]|0; - $62 = HEAP32[$2>>2]|0; - $63 = (($62) + 52|0); - $64 = HEAP32[$63>>2]|0; - $65 = HEAP32[$3>>2]|0; - $66 = (_sqlite3SelectDup($61,$64,$65)|0); - HEAP32[$pPrior>>2] = $66; - $67 = HEAP32[$pNew>>2]|0; - $68 = (($67) + 52|0); - HEAP32[$68>>2] = $66; - $69 = HEAP32[$pPrior>>2]|0; - $70 = ($69|0)!=(0|0); - if ($70) { - $71 = HEAP32[$pNew>>2]|0; - $72 = HEAP32[$pPrior>>2]|0; - $73 = (($72) + 56|0); - HEAP32[$73>>2] = $71; - } - $74 = HEAP32[$pNew>>2]|0; - $75 = (($74) + 56|0); - HEAP32[$75>>2] = 0; - $76 = HEAP32[$1>>2]|0; - $77 = HEAP32[$2>>2]|0; - $78 = (($77) + 60|0); - $79 = HEAP32[$78>>2]|0; - $80 = HEAP32[$3>>2]|0; - $81 = (_sqlite3ExprDup($76,$79,$80)|0); - $82 = HEAP32[$pNew>>2]|0; - $83 = (($82) + 60|0); - HEAP32[$83>>2] = $81; - $84 = HEAP32[$1>>2]|0; - $85 = HEAP32[$2>>2]|0; - $86 = (($85) + 64|0); - $87 = HEAP32[$86>>2]|0; - $88 = HEAP32[$3>>2]|0; - $89 = (_sqlite3ExprDup($84,$87,$88)|0); - $90 = HEAP32[$pNew>>2]|0; - $91 = (($90) + 64|0); - HEAP32[$91>>2] = $89; - $92 = HEAP32[$pNew>>2]|0; - $93 = (($92) + 8|0); - HEAP32[$93>>2] = 0; - $94 = HEAP32[$pNew>>2]|0; - $95 = (($94) + 12|0); - HEAP32[$95>>2] = 0; - $96 = HEAP32[$2>>2]|0; - $97 = (($96) + 6|0); - $98 = HEAP16[$97>>1]|0; - $99 = $98&65535; - $100 = $99 & -9; - $101 = $100&65535; - $102 = HEAP32[$pNew>>2]|0; - $103 = (($102) + 6|0); - HEAP16[$103>>1] = $101; - $104 = HEAP32[$pNew>>2]|0; - $105 = (($104) + 16|0); - HEAP32[$105>>2] = -1; - $106 = HEAP32[$pNew>>2]|0; - $107 = (($106) + 16|0); - $108 = (($107) + 4|0); - HEAP32[$108>>2] = -1; - $109 = HEAP32[$2>>2]|0; - $110 = (($109) + 24|0); - $111 = $110; - $112 = $111; - $113 = HEAP32[$112>>2]|0; - $114 = (($111) + 4)|0; - $115 = $114; - $116 = HEAP32[$115>>2]|0; - $117 = HEAP32[$pNew>>2]|0; - $118 = (($117) + 24|0); - $119 = $118; - $120 = $119; - HEAP32[$120>>2] = $113; - $121 = (($119) + 4)|0; - $122 = $121; - HEAP32[$122>>2] = $116; - $123 = HEAP32[$1>>2]|0; - $124 = HEAP32[$2>>2]|0; - $125 = (($124) + 68|0); - $126 = HEAP32[$125>>2]|0; - $127 = (_withDup($123,$126)|0); - $128 = HEAP32[$pNew>>2]|0; - $129 = (($128) + 68|0); - HEAP32[$129>>2] = $127; - $130 = HEAP32[$pNew>>2]|0; - HEAP32[$0>>2] = $130; - $131 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($131|0); -} -function _sqlite3SrcListAssignCursors($pParse,$pList) { - $pParse = $pParse|0; - $pList = $pList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pItem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $i = sp + 4|0; - $pItem = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pList; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 8|0); - HEAP32[$pItem>>2] = $5; - while(1) { - $6 = HEAP32[$i>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = ($6|0)<($8|0); - if (!($9)) { - label = 8; - break; - } - $10 = HEAP32[$pItem>>2]|0; - $11 = (($10) + 40|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)>=(0); - if ($13) { - label = 8; - break; - } - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 68|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + 1)|0; - HEAP32[$15>>2] = $17; - $18 = HEAP32[$pItem>>2]|0; - $19 = (($18) + 40|0); - HEAP32[$19>>2] = $16; - $20 = HEAP32[$pItem>>2]|0; - $21 = (($20) + 20|0); - $22 = HEAP32[$21>>2]|0; - $23 = ($22|0)!=(0|0); - if ($23) { - $24 = HEAP32[$0>>2]|0; - $25 = HEAP32[$pItem>>2]|0; - $26 = (($25) + 20|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + 32|0); - $29 = HEAP32[$28>>2]|0; - _sqlite3SrcListAssignCursors($24,$29); - } - $30 = HEAP32[$i>>2]|0; - $31 = (($30) + 1)|0; - HEAP32[$i>>2] = $31; - $32 = HEAP32[$pItem>>2]|0; - $33 = (($32) + 72|0); - HEAP32[$pItem>>2] = $33; - } - if ((label|0) == 8) { - STACKTOP = sp;return; - } -} -function _sqlite3ResultSetOfSelect($pParse,$pSelect) { - $pParse = $pParse|0; - $pSelect = $pSelect|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; - var $9 = 0, $db = 0, $pTab = 0, $savedFlags = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $pTab = sp + 8|0; - $db = sp + 4|0; - $savedFlags = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pSelect; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - $5 = HEAP32[$db>>2]|0; - $6 = (($5) + 24|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$savedFlags>>2] = $7; - $8 = HEAP32[$db>>2]|0; - $9 = (($8) + 24|0); - $10 = HEAP32[$9>>2]|0; - $11 = $10 & -33; - HEAP32[$9>>2] = $11; - $12 = HEAP32[$db>>2]|0; - $13 = (($12) + 24|0); - $14 = HEAP32[$13>>2]|0; - $15 = $14 | 64; - HEAP32[$13>>2] = $15; - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$2>>2]|0; - _sqlite3SelectPrep($16,$17,0); - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 64|0); - $20 = HEAP32[$19>>2]|0; - $21 = ($20|0)!=(0); - if ($21) { - HEAP32[$0>>2] = 0; - $60 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($60|0); - } - while(1) { - $22 = HEAP32[$2>>2]|0; - $23 = (($22) + 52|0); - $24 = HEAP32[$23>>2]|0; - $25 = ($24|0)!=(0|0); - if (!($25)) { - break; - } - $26 = HEAP32[$2>>2]|0; - $27 = (($26) + 52|0); - $28 = HEAP32[$27>>2]|0; - HEAP32[$2>>2] = $28; - } - $29 = HEAP32[$savedFlags>>2]|0; - $30 = HEAP32[$db>>2]|0; - $31 = (($30) + 24|0); - HEAP32[$31>>2] = $29; - $32 = HEAP32[$db>>2]|0; - $33 = (_sqlite3DbMallocZero($32,76)|0); - HEAP32[$pTab>>2] = $33; - $34 = HEAP32[$pTab>>2]|0; - $35 = ($34|0)==(0|0); - if ($35) { - HEAP32[$0>>2] = 0; - $60 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($60|0); - } - $36 = HEAP32[$pTab>>2]|0; - $37 = (($36) + 40|0); - HEAP16[$37>>1] = 1; - $38 = HEAP32[$pTab>>2]|0; - HEAP32[$38>>2] = 0; - $39 = HEAP32[$pTab>>2]|0; - $40 = (($39) + 28|0); - HEAP16[$40>>1] = 200; - $41 = HEAP32[$1>>2]|0; - $42 = HEAP32[$2>>2]|0; - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$pTab>>2]|0; - $45 = (($44) + 38|0); - $46 = HEAP32[$pTab>>2]|0; - $47 = (($46) + 4|0); - (_selectColumnsFromExprList($41,$43,$45,$47)|0); - $48 = HEAP32[$1>>2]|0; - $49 = HEAP32[$pTab>>2]|0; - $50 = HEAP32[$2>>2]|0; - _selectAddColumnTypeAndCollation($48,$49,$50); - $51 = HEAP32[$pTab>>2]|0; - $52 = (($51) + 36|0); - HEAP16[$52>>1] = -1; - $53 = HEAP32[$db>>2]|0; - $54 = (($53) + 64|0); - $55 = HEAP8[$54>>0]|0; - $56 = ($55<<24>>24)!=(0); - if ($56) { - $57 = HEAP32[$db>>2]|0; - $58 = HEAP32[$pTab>>2]|0; - _sqlite3DeleteTable($57,$58); - HEAP32[$0>>2] = 0; - $60 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($60|0); - } else { - $59 = HEAP32[$pTab>>2]|0; - HEAP32[$0>>2] = $59; - $60 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($60|0); - } - return 0|0; -} -function _sqlite3SelectPrep($pParse,$p,$pOuterNC) { - $pParse = $pParse|0; - $p = $p|0; - $pOuterNC = $pOuterNC|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $db = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $pOuterNC; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - STACKTOP = sp;return; - } - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$db>>2]|0; - $8 = (($7) + 64|0); - $9 = HEAP8[$8>>0]|0; - $10 = ($9<<24>>24)!=(0); - if ($10) { - STACKTOP = sp;return; - } - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 6|0); - $13 = HEAP16[$12>>1]|0; - $14 = $13&65535; - $15 = $14 & 32; - $16 = ($15|0)!=(0); - if ($16) { - STACKTOP = sp;return; - } - $17 = HEAP32[$0>>2]|0; - $18 = HEAP32[$1>>2]|0; - _sqlite3SelectExpand($17,$18); - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 64|0); - $21 = HEAP32[$20>>2]|0; - $22 = ($21|0)!=(0); - if ($22) { - STACKTOP = sp;return; - } - $23 = HEAP32[$db>>2]|0; - $24 = (($23) + 64|0); - $25 = HEAP8[$24>>0]|0; - $26 = $25&255; - $27 = ($26|0)!=(0); - if ($27) { - STACKTOP = sp;return; - } - $28 = HEAP32[$0>>2]|0; - $29 = HEAP32[$1>>2]|0; - $30 = HEAP32[$2>>2]|0; - _sqlite3ResolveSelectNames($28,$29,$30); - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 64|0); - $33 = HEAP32[$32>>2]|0; - $34 = ($33|0)!=(0); - if ($34) { - STACKTOP = sp;return; - } - $35 = HEAP32[$db>>2]|0; - $36 = (($35) + 64|0); - $37 = HEAP8[$36>>0]|0; - $38 = $37&255; - $39 = ($38|0)!=(0); - if ($39) { - STACKTOP = sp;return; - } - $40 = HEAP32[$0>>2]|0; - $41 = HEAP32[$1>>2]|0; - _sqlite3SelectAddTypeInfo($40,$41); - STACKTOP = sp;return; -} -function _selectColumnsFromExprList($pParse,$pEList,$pnCol,$paCol) { - $pParse = $pParse|0; - $pEList = $pEList|0; - $pnCol = $pnCol|0; - $paCol = $paCol|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $aCol = 0, $cnt = 0, $db = 0, $i = 0, $iCol = 0, $j = 0, $k = 0, $nCol = 0, $nName = 0, $p = 0, $pCol = 0, $pColExpr = 0, $pTab = 0, $vararg_buffer7 = 0, $vararg_ptr10 = 0, $zName = 0, $zNewName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $vararg_buffer7 = sp; - $0 = sp + 84|0; - $1 = sp + 80|0; - $2 = sp + 76|0; - $3 = sp + 72|0; - $4 = sp + 68|0; - $db = sp + 64|0; - $i = sp + 60|0; - $j = sp + 56|0; - $cnt = sp + 52|0; - $aCol = sp + 48|0; - $pCol = sp + 44|0; - $nCol = sp + 40|0; - $p = sp + 36|0; - $zName = sp + 32|0; - $nName = sp + 28|0; - $pColExpr = sp + 24|0; - $pTab = sp + 20|0; - $iCol = sp + 16|0; - $zNewName = sp + 12|0; - $k = sp + 8|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pEList; - HEAP32[$3>>2] = $pnCol; - HEAP32[$4>>2] = $paCol; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$2>>2]|0; - $8 = ($7|0)!=(0|0); - if ($8) { - $9 = HEAP32[$2>>2]|0; - $10 = HEAP32[$9>>2]|0; - HEAP32[$nCol>>2] = $10; - $11 = HEAP32[$db>>2]|0; - $12 = HEAP32[$nCol>>2]|0; - $13 = ($12*24)|0; - $14 = (_sqlite3DbMallocZero($11,$13)|0); - HEAP32[$aCol>>2] = $14; - } else { - HEAP32[$nCol>>2] = 0; - HEAP32[$aCol>>2] = 0; - } - $15 = HEAP32[$nCol>>2]|0; - $16 = $15&65535; - $17 = HEAP32[$3>>2]|0; - HEAP16[$17>>1] = $16; - $18 = HEAP32[$aCol>>2]|0; - $19 = HEAP32[$4>>2]|0; - HEAP32[$19>>2] = $18; - HEAP32[$i>>2] = 0; - $20 = HEAP32[$aCol>>2]|0; - HEAP32[$pCol>>2] = $20; - while(1) { - $21 = HEAP32[$i>>2]|0; - $22 = HEAP32[$nCol>>2]|0; - $23 = ($21|0)<($22|0); - if (!($23)) { - break; - } - $24 = HEAP32[$i>>2]|0; - $25 = HEAP32[$2>>2]|0; - $26 = (($25) + 4|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + (($24*20)|0)|0); - $29 = HEAP32[$28>>2]|0; - $30 = (_sqlite3ExprSkipCollate($29)|0); - HEAP32[$p>>2] = $30; - $31 = HEAP32[$i>>2]|0; - $32 = HEAP32[$2>>2]|0; - $33 = (($32) + 4|0); - $34 = HEAP32[$33>>2]|0; - $35 = (($34) + (($31*20)|0)|0); - $36 = (($35) + 4|0); - $37 = HEAP32[$36>>2]|0; - HEAP32[$zName>>2] = $37; - $38 = ($37|0)!=(0|0); - do { - if ($38) { - $39 = HEAP32[$db>>2]|0; - $40 = HEAP32[$zName>>2]|0; - $41 = (_sqlite3DbStrDup($39,$40)|0); - HEAP32[$zName>>2] = $41; - } else { - $42 = HEAP32[$p>>2]|0; - HEAP32[$pColExpr>>2] = $42; - while(1) { - $43 = HEAP32[$pColExpr>>2]|0; - $44 = HEAP8[$43>>0]|0; - $45 = $44&255; - $46 = ($45|0)==(122); - $47 = HEAP32[$pColExpr>>2]|0; - if (!($46)) { - break; - } - $48 = (($47) + 16|0); - $49 = HEAP32[$48>>2]|0; - HEAP32[$pColExpr>>2] = $49; - } - $50 = HEAP8[$47>>0]|0; - $51 = $50&255; - $52 = ($51|0)==(154); - if ($52) { - $53 = HEAP32[$pColExpr>>2]|0; - $54 = (($53) + 44|0); - $55 = HEAP32[$54>>2]|0; - $56 = ($55|0)!=(0|0); - if ($56) { - $57 = HEAP32[$pColExpr>>2]|0; - $58 = (($57) + 32|0); - $59 = HEAP16[$58>>1]|0; - $60 = $59 << 16 >> 16; - HEAP32[$iCol>>2] = $60; - $61 = HEAP32[$pColExpr>>2]|0; - $62 = (($61) + 44|0); - $63 = HEAP32[$62>>2]|0; - HEAP32[$pTab>>2] = $63; - $64 = HEAP32[$iCol>>2]|0; - $65 = ($64|0)<(0); - if ($65) { - $66 = HEAP32[$pTab>>2]|0; - $67 = (($66) + 36|0); - $68 = HEAP16[$67>>1]|0; - $69 = $68 << 16 >> 16; - HEAP32[$iCol>>2] = $69; - } - $70 = HEAP32[$db>>2]|0; - $71 = HEAP32[$iCol>>2]|0; - $72 = ($71|0)>=(0); - if ($72) { - $73 = HEAP32[$iCol>>2]|0; - $74 = HEAP32[$pTab>>2]|0; - $75 = (($74) + 4|0); - $76 = HEAP32[$75>>2]|0; - $77 = (($76) + (($73*24)|0)|0); - $78 = HEAP32[$77>>2]|0; - $79 = $78; - } else { - $79 = 9896; - } - HEAP32[$vararg_buffer7>>2] = $79; - $80 = (_sqlite3MPrintf($70,1456,$vararg_buffer7)|0); - HEAP32[$zName>>2] = $80; - break; - } - } - $81 = HEAP32[$pColExpr>>2]|0; - $82 = HEAP8[$81>>0]|0; - $83 = $82&255; - $84 = ($83|0)==(27); - $85 = HEAP32[$db>>2]|0; - if ($84) { - $86 = HEAP32[$pColExpr>>2]|0; - $87 = (($86) + 8|0); - $88 = HEAP32[$87>>2]|0; - HEAP32[$vararg_buffer7>>2] = $88; - $89 = (_sqlite3MPrintf($85,1456,$vararg_buffer7)|0); - HEAP32[$zName>>2] = $89; - break; - } else { - $90 = HEAP32[$i>>2]|0; - $91 = HEAP32[$2>>2]|0; - $92 = (($91) + 4|0); - $93 = HEAP32[$92>>2]|0; - $94 = (($93) + (($90*20)|0)|0); - $95 = (($94) + 8|0); - $96 = HEAP32[$95>>2]|0; - HEAP32[$vararg_buffer7>>2] = $96; - $97 = (_sqlite3MPrintf($85,1456,$vararg_buffer7)|0); - HEAP32[$zName>>2] = $97; - break; - } - } - } while(0); - $98 = HEAP32[$db>>2]|0; - $99 = (($98) + 64|0); - $100 = HEAP8[$99>>0]|0; - $101 = ($100<<24>>24)!=(0); - if ($101) { - label = 22; - break; - } - $104 = HEAP32[$zName>>2]|0; - $105 = (_sqlite3Strlen30($104)|0); - HEAP32[$nName>>2] = $105; - HEAP32[$cnt>>2] = 0; - HEAP32[$j>>2] = 0; - while(1) { - $106 = HEAP32[$j>>2]|0; - $107 = HEAP32[$i>>2]|0; - $108 = ($106|0)<($107|0); - if (!($108)) { - break; - } - $109 = HEAP32[$j>>2]|0; - $110 = HEAP32[$aCol>>2]|0; - $111 = (($110) + (($109*24)|0)|0); - $112 = HEAP32[$111>>2]|0; - $113 = HEAP32[$zName>>2]|0; - $114 = (_sqlite3_stricmp($112,$113)|0); - $115 = ($114|0)==(0); - if ($115) { - $116 = HEAP32[$nName>>2]|0; - $117 = (($116) - 1)|0; - HEAP32[$k>>2] = $117; - while(1) { - $118 = HEAP32[$k>>2]|0; - $119 = ($118|0)>(1); - if (!($119)) { - break; - } - $120 = HEAP32[$k>>2]|0; - $121 = HEAP32[$zName>>2]|0; - $122 = (($121) + ($120)|0); - $123 = HEAP8[$122>>0]|0; - $124 = $123&255; - $125 = (48 + ($124)|0); - $126 = HEAP8[$125>>0]|0; - $127 = $126&255; - $128 = $127 & 4; - $129 = ($128|0)!=(0); - if (!($129)) { - break; - } - $130 = HEAP32[$k>>2]|0; - $131 = (($130) + -1)|0; - HEAP32[$k>>2] = $131; - } - $132 = HEAP32[$k>>2]|0; - $133 = ($132|0)>=(0); - if ($133) { - $134 = HEAP32[$k>>2]|0; - $135 = HEAP32[$zName>>2]|0; - $136 = (($135) + ($134)|0); - $137 = HEAP8[$136>>0]|0; - $138 = $137 << 24 >> 24; - $139 = ($138|0)==(58); - if ($139) { - $140 = HEAP32[$k>>2]|0; - HEAP32[$nName>>2] = $140; - } - } - $141 = HEAP32[$nName>>2]|0; - $142 = HEAP32[$zName>>2]|0; - $143 = (($142) + ($141)|0); - HEAP8[$143>>0] = 0; - $144 = HEAP32[$db>>2]|0; - $145 = HEAP32[$zName>>2]|0; - $146 = HEAP32[$cnt>>2]|0; - $147 = (($146) + 1)|0; - HEAP32[$cnt>>2] = $147; - HEAP32[$vararg_buffer7>>2] = $145; - $vararg_ptr10 = (($vararg_buffer7) + 4|0); - HEAP32[$vararg_ptr10>>2] = $147; - $148 = (_sqlite3MPrintf($144,16328,$vararg_buffer7)|0); - HEAP32[$zNewName>>2] = $148; - $149 = HEAP32[$db>>2]|0; - $150 = HEAP32[$zName>>2]|0; - _sqlite3DbFree($149,$150); - $151 = HEAP32[$zNewName>>2]|0; - HEAP32[$zName>>2] = $151; - HEAP32[$j>>2] = -1; - $152 = HEAP32[$zName>>2]|0; - $153 = ($152|0)==(0|0); - if ($153) { - break; - } - } - $154 = HEAP32[$j>>2]|0; - $155 = (($154) + 1)|0; - HEAP32[$j>>2] = $155; - } - $156 = HEAP32[$zName>>2]|0; - $157 = HEAP32[$pCol>>2]|0; - HEAP32[$157>>2] = $156; - $158 = HEAP32[$i>>2]|0; - $159 = (($158) + 1)|0; - HEAP32[$i>>2] = $159; - $160 = HEAP32[$pCol>>2]|0; - $161 = (($160) + 24|0); - HEAP32[$pCol>>2] = $161; - } - if ((label|0) == 22) { - $102 = HEAP32[$db>>2]|0; - $103 = HEAP32[$zName>>2]|0; - _sqlite3DbFree($102,$103); - } - $162 = HEAP32[$db>>2]|0; - $163 = (($162) + 64|0); - $164 = HEAP8[$163>>0]|0; - $165 = ($164<<24>>24)!=(0); - if (!($165)) { - HEAP32[$0>>2] = 0; - $179 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($179|0); - } - HEAP32[$j>>2] = 0; - while(1) { - $166 = HEAP32[$j>>2]|0; - $167 = HEAP32[$i>>2]|0; - $168 = ($166|0)<($167|0); - $169 = HEAP32[$db>>2]|0; - if (!($168)) { - break; - } - $170 = HEAP32[$j>>2]|0; - $171 = HEAP32[$aCol>>2]|0; - $172 = (($171) + (($170*24)|0)|0); - $173 = HEAP32[$172>>2]|0; - _sqlite3DbFree($169,$173); - $174 = HEAP32[$j>>2]|0; - $175 = (($174) + 1)|0; - HEAP32[$j>>2] = $175; - } - $176 = HEAP32[$aCol>>2]|0; - _sqlite3DbFree($169,$176); - $177 = HEAP32[$4>>2]|0; - HEAP32[$177>>2] = 0; - $178 = HEAP32[$3>>2]|0; - HEAP16[$178>>1] = 0; - HEAP32[$0>>2] = 7; - $179 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($179|0); -} -function _selectAddColumnTypeAndCollation($pParse,$pTab,$pSelect) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $pSelect = $pSelect|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $a = 0, $db = 0, $i = 0, $p = 0, $pCol = 0; - var $pColl = 0, $sNC = 0, $szAll = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 76|0; - $1 = sp + 72|0; - $2 = sp + 68|0; - $db = sp + 64|0; - $sNC = sp + 32|0; - $pCol = sp + 24|0; - $pColl = sp + 20|0; - $i = sp + 16|0; - $p = sp + 12|0; - $a = sp + 8|0; - $szAll = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $pSelect; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - $5 = $szAll; - $6 = $5; - HEAP32[$6>>2] = 0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = 0; - $9 = HEAP32[$db>>2]|0; - $10 = (($9) + 64|0); - $11 = HEAP8[$10>>0]|0; - $12 = ($11<<24>>24)!=(0); - if ($12) { - STACKTOP = sp;return; - } - ;HEAP32[$sNC+0>>2]=0|0;HEAP32[$sNC+4>>2]=0|0;HEAP32[$sNC+8>>2]=0|0;HEAP32[$sNC+12>>2]=0|0;HEAP32[$sNC+16>>2]=0|0;HEAP32[$sNC+20>>2]=0|0;HEAP32[$sNC+24>>2]=0|0;HEAP32[$sNC+28>>2]=0|0; - $13 = HEAP32[$2>>2]|0; - $14 = (($13) + 32|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($sNC) + 4|0); - HEAP32[$16>>2] = $15; - $17 = HEAP32[$2>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + 4|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$a>>2] = $20; - HEAP32[$i>>2] = 0; - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 4|0); - $23 = HEAP32[$22>>2]|0; - HEAP32[$pCol>>2] = $23; - while(1) { - $24 = HEAP32[$i>>2]|0; - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 38|0); - $27 = HEAP16[$26>>1]|0; - $28 = $27 << 16 >> 16; - $29 = ($24|0)<($28|0); - if (!($29)) { - break; - } - $30 = HEAP32[$i>>2]|0; - $31 = HEAP32[$a>>2]|0; - $32 = (($31) + (($30*20)|0)|0); - $33 = HEAP32[$32>>2]|0; - HEAP32[$p>>2] = $33; - $34 = HEAP32[$db>>2]|0; - $35 = HEAP32[$p>>2]|0; - $36 = HEAP32[$pCol>>2]|0; - $37 = (($36) + 22|0); - $38 = (_columnTypeImpl($sNC,$35,$37)|0); - $39 = (_sqlite3DbStrDup($34,$38)|0); - $40 = HEAP32[$pCol>>2]|0; - $41 = (($40) + 12|0); - HEAP32[$41>>2] = $39; - $42 = HEAP32[$pCol>>2]|0; - $43 = (($42) + 22|0); - $44 = HEAP8[$43>>0]|0; - $45 = $44&255; - $46 = $szAll; - $47 = $46; - $48 = HEAP32[$47>>2]|0; - $49 = (($46) + 4)|0; - $50 = $49; - $51 = HEAP32[$50>>2]|0; - $52 = (_i64Add(($48|0),($51|0),($45|0),0)|0); - $53 = tempRet0; - $54 = $szAll; - $55 = $54; - HEAP32[$55>>2] = $52; - $56 = (($54) + 4)|0; - $57 = $56; - HEAP32[$57>>2] = $53; - $58 = HEAP32[$p>>2]|0; - $59 = (_sqlite3ExprAffinity($58)|0); - $60 = HEAP32[$pCol>>2]|0; - $61 = (($60) + 21|0); - HEAP8[$61>>0] = $59; - $62 = HEAP32[$pCol>>2]|0; - $63 = (($62) + 21|0); - $64 = HEAP8[$63>>0]|0; - $65 = $64 << 24 >> 24; - $66 = ($65|0)==(0); - if ($66) { - $67 = HEAP32[$pCol>>2]|0; - $68 = (($67) + 21|0); - HEAP8[$68>>0] = 98; - } - $69 = HEAP32[$0>>2]|0; - $70 = HEAP32[$p>>2]|0; - $71 = (_sqlite3ExprCollSeq($69,$70)|0); - HEAP32[$pColl>>2] = $71; - $72 = HEAP32[$pColl>>2]|0; - $73 = ($72|0)!=(0|0); - if ($73) { - $74 = HEAP32[$db>>2]|0; - $75 = HEAP32[$pColl>>2]|0; - $76 = HEAP32[$75>>2]|0; - $77 = (_sqlite3DbStrDup($74,$76)|0); - $78 = HEAP32[$pCol>>2]|0; - $79 = (($78) + 16|0); - HEAP32[$79>>2] = $77; - } - $80 = HEAP32[$i>>2]|0; - $81 = (($80) + 1)|0; - HEAP32[$i>>2] = $81; - $82 = HEAP32[$pCol>>2]|0; - $83 = (($82) + 24|0); - HEAP32[$pCol>>2] = $83; - } - $84 = $szAll; - $85 = $84; - $86 = HEAP32[$85>>2]|0; - $87 = (($84) + 4)|0; - $88 = $87; - $89 = HEAP32[$88>>2]|0; - $90 = (___muldi3(($86|0),($89|0),4,0)|0); - $91 = tempRet0; - $92 = (_sqlite3LogEst($90,$91)|0); - $93 = HEAP32[$1>>2]|0; - $94 = (($93) + 42|0); - HEAP16[$94>>1] = $92; - STACKTOP = sp;return; -} -function _columnTypeImpl($pNC,$pExpr,$pEstWidth) { - $pNC = $pNC|0; - $pExpr = $pExpr|0; - $pEstWidth = $pEstWidth|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; - var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $estWidth = 0, $iCol = 0; - var $j = 0, $p = 0, $p3 = 0, $pS = 0, $pS2 = 0, $pTab = 0, $pTabList = 0, $sNC = 0, $sNC1 = 0, $zType = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $0 = sp + 116|0; - $1 = sp + 112|0; - $2 = sp + 108|0; - $3 = sp + 104|0; - $zType = sp + 100|0; - $j = sp + 96|0; - $estWidth = sp + 120|0; - $pTab = sp + 92|0; - $pS = sp + 88|0; - $iCol = sp + 84|0; - $pTabList = sp + 80|0; - $sNC = sp + 48|0; - $p = sp + 40|0; - $sNC1 = sp + 8|0; - $pS2 = sp + 4|0; - $p3 = sp; - HEAP32[$1>>2] = $pNC; - HEAP32[$2>>2] = $pExpr; - HEAP32[$3>>2] = $pEstWidth; - HEAP32[$zType>>2] = 0; - HEAP8[$estWidth>>0] = 1; - $4 = HEAP32[$2>>2]|0; - $5 = ($4|0)==(0|0); - if (!($5)) { - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)==(0|0); - if (!($9)) { - $10 = HEAP32[$2>>2]|0; - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - do { - if ((($12|0) == 119)) { - $114 = HEAP32[$2>>2]|0; - $115 = (($114) + 20|0); - $116 = HEAP32[$115>>2]|0; - HEAP32[$pS2>>2] = $116; - $117 = HEAP32[$pS2>>2]|0; - $118 = HEAP32[$117>>2]|0; - $119 = (($118) + 4|0); - $120 = HEAP32[$119>>2]|0; - $121 = HEAP32[$120>>2]|0; - HEAP32[$p3>>2] = $121; - $122 = HEAP32[$pS2>>2]|0; - $123 = (($122) + 32|0); - $124 = HEAP32[$123>>2]|0; - $125 = (($sNC1) + 4|0); - HEAP32[$125>>2] = $124; - $126 = HEAP32[$1>>2]|0; - $127 = (($sNC1) + 16|0); - HEAP32[$127>>2] = $126; - $128 = HEAP32[$1>>2]|0; - $129 = HEAP32[$128>>2]|0; - HEAP32[$sNC1>>2] = $129; - $130 = HEAP32[$p3>>2]|0; - $131 = (_columnTypeImpl($sNC1,$130,$estWidth)|0); - HEAP32[$zType>>2] = $131; - } else if ((($12|0) == 154) | (($12|0) == 156)) { - HEAP32[$pTab>>2] = 0; - HEAP32[$pS>>2] = 0; - $13 = HEAP32[$2>>2]|0; - $14 = (($13) + 32|0); - $15 = HEAP16[$14>>1]|0; - $16 = $15 << 16 >> 16; - HEAP32[$iCol>>2] = $16; - while(1) { - $17 = HEAP32[$1>>2]|0; - $18 = ($17|0)!=(0|0); - if (!($18)) { - break; - } - $19 = HEAP32[$pTab>>2]|0; - $20 = ($19|0)!=(0|0); - $21 = $20 ^ 1; - if (!($21)) { - break; - } - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 4|0); - $24 = HEAP32[$23>>2]|0; - HEAP32[$pTabList>>2] = $24; - HEAP32[$j>>2] = 0; - while(1) { - $25 = HEAP32[$j>>2]|0; - $26 = HEAP32[$pTabList>>2]|0; - $27 = HEAP32[$26>>2]|0; - $28 = ($25|0)<($27|0); - if (!($28)) { - break; - } - $29 = HEAP32[$j>>2]|0; - $30 = HEAP32[$pTabList>>2]|0; - $31 = (($30) + 8|0); - $32 = (($31) + (($29*72)|0)|0); - $33 = (($32) + 40|0); - $34 = HEAP32[$33>>2]|0; - $35 = HEAP32[$2>>2]|0; - $36 = (($35) + 28|0); - $37 = HEAP32[$36>>2]|0; - $38 = ($34|0)!=($37|0); - if (!($38)) { - break; - } - $39 = HEAP32[$j>>2]|0; - $40 = (($39) + 1)|0; - HEAP32[$j>>2] = $40; - } - $41 = HEAP32[$j>>2]|0; - $42 = HEAP32[$pTabList>>2]|0; - $43 = HEAP32[$42>>2]|0; - $44 = ($41|0)<($43|0); - if ($44) { - $45 = HEAP32[$j>>2]|0; - $46 = HEAP32[$pTabList>>2]|0; - $47 = (($46) + 8|0); - $48 = (($47) + (($45*72)|0)|0); - $49 = (($48) + 16|0); - $50 = HEAP32[$49>>2]|0; - HEAP32[$pTab>>2] = $50; - $51 = HEAP32[$j>>2]|0; - $52 = HEAP32[$pTabList>>2]|0; - $53 = (($52) + 8|0); - $54 = (($53) + (($51*72)|0)|0); - $55 = (($54) + 20|0); - $56 = HEAP32[$55>>2]|0; - HEAP32[$pS>>2] = $56; - continue; - } else { - $57 = HEAP32[$1>>2]|0; - $58 = (($57) + 16|0); - $59 = HEAP32[$58>>2]|0; - HEAP32[$1>>2] = $59; - continue; - } - } - $60 = HEAP32[$pTab>>2]|0; - $61 = ($60|0)==(0|0); - if (!($61)) { - $62 = HEAP32[$pS>>2]|0; - $63 = ($62|0)!=(0|0); - if ($63) { - $64 = HEAP32[$iCol>>2]|0; - $65 = ($64|0)>=(0); - if (!($65)) { - break; - } - $66 = HEAP32[$iCol>>2]|0; - $67 = HEAP32[$pS>>2]|0; - $68 = HEAP32[$67>>2]|0; - $69 = HEAP32[$68>>2]|0; - $70 = ($66|0)<($69|0); - if (!($70)) { - break; - } - $71 = HEAP32[$iCol>>2]|0; - $72 = HEAP32[$pS>>2]|0; - $73 = HEAP32[$72>>2]|0; - $74 = (($73) + 4|0); - $75 = HEAP32[$74>>2]|0; - $76 = (($75) + (($71*20)|0)|0); - $77 = HEAP32[$76>>2]|0; - HEAP32[$p>>2] = $77; - $78 = HEAP32[$pS>>2]|0; - $79 = (($78) + 32|0); - $80 = HEAP32[$79>>2]|0; - $81 = (($sNC) + 4|0); - HEAP32[$81>>2] = $80; - $82 = HEAP32[$1>>2]|0; - $83 = (($sNC) + 16|0); - HEAP32[$83>>2] = $82; - $84 = HEAP32[$1>>2]|0; - $85 = HEAP32[$84>>2]|0; - HEAP32[$sNC>>2] = $85; - $86 = HEAP32[$p>>2]|0; - $87 = (_columnTypeImpl($sNC,$86,$estWidth)|0); - HEAP32[$zType>>2] = $87; - break; - } - $88 = HEAP32[$pTab>>2]|0; - $89 = (($88) + 68|0); - $90 = HEAP32[$89>>2]|0; - $91 = ($90|0)!=(0|0); - if ($91) { - $92 = HEAP32[$iCol>>2]|0; - $93 = ($92|0)<(0); - if ($93) { - $94 = HEAP32[$pTab>>2]|0; - $95 = (($94) + 36|0); - $96 = HEAP16[$95>>1]|0; - $97 = $96 << 16 >> 16; - HEAP32[$iCol>>2] = $97; - } - $98 = HEAP32[$iCol>>2]|0; - $99 = ($98|0)<(0); - if ($99) { - HEAP32[$zType>>2] = 16320; - break; - } else { - $100 = HEAP32[$iCol>>2]|0; - $101 = HEAP32[$pTab>>2]|0; - $102 = (($101) + 4|0); - $103 = HEAP32[$102>>2]|0; - $104 = (($103) + (($100*24)|0)|0); - $105 = (($104) + 12|0); - $106 = HEAP32[$105>>2]|0; - HEAP32[$zType>>2] = $106; - $107 = HEAP32[$iCol>>2]|0; - $108 = HEAP32[$pTab>>2]|0; - $109 = (($108) + 4|0); - $110 = HEAP32[$109>>2]|0; - $111 = (($110) + (($107*24)|0)|0); - $112 = (($111) + 22|0); - $113 = HEAP8[$112>>0]|0; - HEAP8[$estWidth>>0] = $113; - break; - } - } - } - } - } while(0); - $132 = HEAP32[$3>>2]|0; - $133 = ($132|0)!=(0|0); - if ($133) { - $134 = HEAP8[$estWidth>>0]|0; - $135 = HEAP32[$3>>2]|0; - HEAP8[$135>>0] = $134; - } - $136 = HEAP32[$zType>>2]|0; - HEAP32[$0>>2] = $136; - $137 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($137|0); - } - } - HEAP32[$0>>2] = 0; - $137 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($137|0); -} -function _sqlite3ExprAffinity($pExpr) { - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $j = 0, $op = 0, $or$cond = 0; - var $or$cond3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $op = sp + 4|0; - $j = sp; - HEAP32[$1>>2] = $pExpr; - $2 = HEAP32[$1>>2]|0; - $3 = (_sqlite3ExprSkipCollate($2)|0); - HEAP32[$1>>2] = $3; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - $7 = $6 & 512; - $8 = ($7|0)!=(0); - if ($8) { - HEAP8[$0>>0] = 98; - $56 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($56|0); - } - $9 = HEAP32[$1>>2]|0; - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - HEAP32[$op>>2] = $11; - $12 = HEAP32[$op>>2]|0; - $13 = ($12|0)==(119); - if ($13) { - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 20|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$19>>2]|0; - $21 = (_sqlite3ExprAffinity($20)|0); - HEAP8[$0>>0] = $21; - $56 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($56|0); - } - $22 = HEAP32[$op>>2]|0; - $23 = ($22|0)==(38); - if ($23) { - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 8|0); - $26 = HEAP32[$25>>2]|0; - $27 = (_sqlite3AffinityType($26,0)|0); - HEAP8[$0>>0] = $27; - $56 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($56|0); - } - $28 = HEAP32[$op>>2]|0; - $29 = ($28|0)==(156); - $30 = HEAP32[$op>>2]|0; - $31 = ($30|0)==(154); - $or$cond = $29 | $31; - $32 = HEAP32[$op>>2]|0; - $33 = ($32|0)==(159); - $or$cond3 = $or$cond | $33; - if ($or$cond3) { - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 44|0); - $36 = HEAP32[$35>>2]|0; - $37 = ($36|0)!=(0|0); - if ($37) { - $38 = HEAP32[$1>>2]|0; - $39 = (($38) + 32|0); - $40 = HEAP16[$39>>1]|0; - $41 = $40 << 16 >> 16; - HEAP32[$j>>2] = $41; - $42 = HEAP32[$j>>2]|0; - $43 = ($42|0)<(0); - if ($43) { - HEAP8[$0>>0] = 100; - $56 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($56|0); - } else { - $44 = HEAP32[$j>>2]|0; - $45 = HEAP32[$1>>2]|0; - $46 = (($45) + 44|0); - $47 = HEAP32[$46>>2]|0; - $48 = (($47) + 4|0); - $49 = HEAP32[$48>>2]|0; - $50 = (($49) + (($44*24)|0)|0); - $51 = (($50) + 21|0); - $52 = HEAP8[$51>>0]|0; - HEAP8[$0>>0] = $52; - $56 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($56|0); - } - } - } - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + 1|0); - $55 = HEAP8[$54>>0]|0; - HEAP8[$0>>0] = $55; - $56 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($56|0); -} -function _sqlite3ExprCollSeq($pParse,$pExpr) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; - var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; - var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; - var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; - var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; - var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $j = 0, $op = 0, $or$cond = 0, $or$cond3 = 0, $or$cond5 = 0, $or$cond7 = 0, $p = 0, $pColl = 0, $zColl = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $db = sp + 20|0; - $pColl = sp + 16|0; - $p = sp + 12|0; - $op = sp + 8|0; - $j = sp + 4|0; - $zColl = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pExpr; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - HEAP32[$pColl>>2] = 0; - $4 = HEAP32[$1>>2]|0; - HEAP32[$p>>2] = $4; - while(1) { - $5 = HEAP32[$p>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - break; - } - $7 = HEAP32[$p>>2]|0; - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - HEAP32[$op>>2] = $9; - $10 = HEAP32[$p>>2]|0; - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - $13 = $12 & 512; - $14 = ($13|0)!=(0); - if ($14) { - break; - } - $15 = HEAP32[$op>>2]|0; - $16 = ($15|0)==(38); - $17 = HEAP32[$op>>2]|0; - $18 = ($17|0)==(158); - $or$cond = $16 | $18; - if ($or$cond) { - $19 = HEAP32[$p>>2]|0; - $20 = (($19) + 12|0); - $21 = HEAP32[$20>>2]|0; - HEAP32[$p>>2] = $21; - continue; - } - $22 = HEAP32[$op>>2]|0; - $23 = ($22|0)==(95); - if ($23) { - label = 9; - break; - } - $24 = HEAP32[$op>>2]|0; - $25 = ($24|0)==(159); - if ($25) { - $26 = HEAP32[$p>>2]|0; - $27 = (($26) + 38|0); - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = ($29|0)==(95); - if ($30) { - label = 9; - break; - } - } - $43 = HEAP32[$p>>2]|0; - $44 = (($43) + 44|0); - $45 = HEAP32[$44>>2]|0; - $46 = ($45|0)!=(0|0); - if ($46) { - $47 = HEAP32[$op>>2]|0; - $48 = ($47|0)==(156); - $49 = HEAP32[$op>>2]|0; - $50 = ($49|0)==(154); - $or$cond3 = $48 | $50; - $51 = HEAP32[$op>>2]|0; - $52 = ($51|0)==(159); - $or$cond5 = $or$cond3 | $52; - $53 = HEAP32[$op>>2]|0; - $54 = ($53|0)==(62); - $or$cond7 = $or$cond5 | $54; - if ($or$cond7) { - label = 12; - break; - } - } - $80 = HEAP32[$p>>2]|0; - $81 = (($80) + 4|0); - $82 = HEAP32[$81>>2]|0; - $83 = $82 & 256; - $84 = ($83|0)!=(0); - if (!($84)) { - break; - } - $85 = HEAP32[$p>>2]|0; - $86 = (($85) + 12|0); - $87 = HEAP32[$86>>2]|0; - $88 = ($87|0)!=(0|0); - if ($88) { - $89 = HEAP32[$p>>2]|0; - $90 = (($89) + 12|0); - $91 = HEAP32[$90>>2]|0; - $92 = (($91) + 4|0); - $93 = HEAP32[$92>>2]|0; - $94 = $93 & 256; - $95 = ($94|0)!=(0); - if ($95) { - $96 = HEAP32[$p>>2]|0; - $97 = (($96) + 12|0); - $98 = HEAP32[$97>>2]|0; - HEAP32[$p>>2] = $98; - continue; - } - } - $99 = HEAP32[$p>>2]|0; - $100 = (($99) + 16|0); - $101 = HEAP32[$100>>2]|0; - HEAP32[$p>>2] = $101; - } - if ((label|0) == 9) { - $31 = HEAP32[$0>>2]|0; - $32 = HEAP32[$db>>2]|0; - $33 = (($32) + 16|0); - $34 = HEAP32[$33>>2]|0; - $35 = (($34) + 12|0); - $36 = HEAP32[$35>>2]|0; - $37 = (($36) + 77|0); - $38 = HEAP8[$37>>0]|0; - $39 = HEAP32[$p>>2]|0; - $40 = (($39) + 8|0); - $41 = HEAP32[$40>>2]|0; - $42 = (_sqlite3GetCollSeq($31,$38,0,$41)|0); - HEAP32[$pColl>>2] = $42; - } - else if ((label|0) == 12) { - $55 = HEAP32[$p>>2]|0; - $56 = (($55) + 32|0); - $57 = HEAP16[$56>>1]|0; - $58 = $57 << 16 >> 16; - HEAP32[$j>>2] = $58; - $59 = HEAP32[$j>>2]|0; - $60 = ($59|0)>=(0); - if ($60) { - $61 = HEAP32[$j>>2]|0; - $62 = HEAP32[$p>>2]|0; - $63 = (($62) + 44|0); - $64 = HEAP32[$63>>2]|0; - $65 = (($64) + 4|0); - $66 = HEAP32[$65>>2]|0; - $67 = (($66) + (($61*24)|0)|0); - $68 = (($67) + 16|0); - $69 = HEAP32[$68>>2]|0; - HEAP32[$zColl>>2] = $69; - $70 = HEAP32[$db>>2]|0; - $71 = HEAP32[$db>>2]|0; - $72 = (($71) + 16|0); - $73 = HEAP32[$72>>2]|0; - $74 = (($73) + 12|0); - $75 = HEAP32[$74>>2]|0; - $76 = (($75) + 77|0); - $77 = HEAP8[$76>>0]|0; - $78 = HEAP32[$zColl>>2]|0; - $79 = (_sqlite3FindCollSeq($70,$77,$78,0)|0); - HEAP32[$pColl>>2] = $79; - } - } - $102 = HEAP32[$0>>2]|0; - $103 = HEAP32[$pColl>>2]|0; - $104 = (_sqlite3CheckCollSeq($102,$103)|0); - $105 = ($104|0)!=(0); - if (!($105)) { - $106 = HEAP32[$pColl>>2]|0; - STACKTOP = sp;return ($106|0); - } - HEAP32[$pColl>>2] = 0; - $106 = HEAP32[$pColl>>2]|0; - STACKTOP = sp;return ($106|0); -} -function _sqlite3LogEst($0,$1) { - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; - var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; - var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; - var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; - var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; - var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $y = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $2 = sp + 10|0; - $3 = sp; - $y = sp + 8|0; - $4 = $3; - $5 = $4; - HEAP32[$5>>2] = $0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = $1; - HEAP16[$y>>1] = 40; - $8 = $3; - $9 = $8; - $10 = HEAP32[$9>>2]|0; - $11 = (($8) + 4)|0; - $12 = $11; - $13 = HEAP32[$12>>2]|0; - $14 = ($13>>>0)<(0); - $15 = ($13|0)==(0); - $16 = ($10>>>0)<(8); - $17 = $15 & $16; - $18 = $14 | $17; - L1: do { - if ($18) { - $19 = $3; - $20 = $19; - $21 = HEAP32[$20>>2]|0; - $22 = (($19) + 4)|0; - $23 = $22; - $24 = HEAP32[$23>>2]|0; - $25 = ($24>>>0)<(0); - $26 = ($24|0)==(0); - $27 = ($21>>>0)<(2); - $28 = $26 & $27; - $29 = $25 | $28; - if ($29) { - HEAP16[$2>>1] = 0; - $126 = HEAP16[$2>>1]|0; - STACKTOP = sp;return ($126|0); - } else { - while(1) { - $30 = $3; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $33 = (($30) + 4)|0; - $34 = $33; - $35 = HEAP32[$34>>2]|0; - $36 = ($35>>>0)<(0); - $37 = ($35|0)==(0); - $38 = ($32>>>0)<(8); - $39 = $37 & $38; - $40 = $36 | $39; - if (!($40)) { - break L1; - } - $41 = HEAP16[$y>>1]|0; - $42 = $41 << 16 >> 16; - $43 = (($42) - 10)|0; - $44 = $43&65535; - HEAP16[$y>>1] = $44; - $45 = $3; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = (($45) + 4)|0; - $49 = $48; - $50 = HEAP32[$49>>2]|0; - $51 = (_bitshift64Shl(($47|0),($50|0),1)|0); - $52 = tempRet0; - $53 = $3; - $54 = $53; - HEAP32[$54>>2] = $51; - $55 = (($53) + 4)|0; - $56 = $55; - HEAP32[$56>>2] = $52; - } - } - } else { - while(1) { - $57 = $3; - $58 = $57; - $59 = HEAP32[$58>>2]|0; - $60 = (($57) + 4)|0; - $61 = $60; - $62 = HEAP32[$61>>2]|0; - $63 = ($62>>>0)>(0); - $64 = ($62|0)==(0); - $65 = ($59>>>0)>(255); - $66 = $64 & $65; - $67 = $63 | $66; - if (!($67)) { - break; - } - $68 = HEAP16[$y>>1]|0; - $69 = $68 << 16 >> 16; - $70 = (($69) + 40)|0; - $71 = $70&65535; - HEAP16[$y>>1] = $71; - $72 = $3; - $73 = $72; - $74 = HEAP32[$73>>2]|0; - $75 = (($72) + 4)|0; - $76 = $75; - $77 = HEAP32[$76>>2]|0; - $78 = (_bitshift64Lshr(($74|0),($77|0),4)|0); - $79 = tempRet0; - $80 = $3; - $81 = $80; - HEAP32[$81>>2] = $78; - $82 = (($80) + 4)|0; - $83 = $82; - HEAP32[$83>>2] = $79; - } - while(1) { - $84 = $3; - $85 = $84; - $86 = HEAP32[$85>>2]|0; - $87 = (($84) + 4)|0; - $88 = $87; - $89 = HEAP32[$88>>2]|0; - $90 = ($89>>>0)>(0); - $91 = ($89|0)==(0); - $92 = ($86>>>0)>(15); - $93 = $91 & $92; - $94 = $90 | $93; - if (!($94)) { - break L1; - } - $95 = HEAP16[$y>>1]|0; - $96 = $95 << 16 >> 16; - $97 = (($96) + 10)|0; - $98 = $97&65535; - HEAP16[$y>>1] = $98; - $99 = $3; - $100 = $99; - $101 = HEAP32[$100>>2]|0; - $102 = (($99) + 4)|0; - $103 = $102; - $104 = HEAP32[$103>>2]|0; - $105 = (_bitshift64Lshr(($101|0),($104|0),1)|0); - $106 = tempRet0; - $107 = $3; - $108 = $107; - HEAP32[$108>>2] = $105; - $109 = (($107) + 4)|0; - $110 = $109; - HEAP32[$110>>2] = $106; - } - } - } while(0); - $111 = $3; - $112 = $111; - $113 = HEAP32[$112>>2]|0; - $114 = (($111) + 4)|0; - $115 = $114; - $116 = HEAP32[$115>>2]|0; - $117 = $113 & 7; - $118 = (16264 + ($117<<1)|0); - $119 = HEAP16[$118>>1]|0; - $120 = $119 << 16 >> 16; - $121 = HEAP16[$y>>1]|0; - $122 = $121 << 16 >> 16; - $123 = (($120) + ($122))|0; - $124 = (($123) - 10)|0; - $125 = $124&65535; - HEAP16[$2>>1] = $125; - $126 = HEAP16[$2>>1]|0; - STACKTOP = sp;return ($126|0); -} -function _sqlite3GetCollSeq($pParse,$enc,$pColl,$zName) { - $pParse = $pParse|0; - $enc = $enc|0; - $pColl = $pColl|0; - $zName = $zName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $db = 0, $p = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 20|0; - $1 = sp + 24|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $p = sp + 8|0; - $db = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP8[$1>>0] = $enc; - HEAP32[$2>>2] = $pColl; - HEAP32[$3>>2] = $zName; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$2>>2]|0; - HEAP32[$p>>2] = $6; - $7 = HEAP32[$p>>2]|0; - $8 = ($7|0)!=(0|0); - if (!($8)) { - $9 = HEAP32[$db>>2]|0; - $10 = HEAP8[$1>>0]|0; - $11 = HEAP32[$3>>2]|0; - $12 = (_sqlite3FindCollSeq($9,$10,$11,0)|0); - HEAP32[$p>>2] = $12; - } - $13 = HEAP32[$p>>2]|0; - $14 = ($13|0)!=(0|0); - if ($14) { - $15 = HEAP32[$p>>2]|0; - $16 = (($15) + 12|0); - $17 = HEAP32[$16>>2]|0; - $18 = ($17|0)!=(0|0); - if (!($18)) { - label = 5; - } - } else { - label = 5; - } - if ((label|0) == 5) { - $19 = HEAP32[$db>>2]|0; - $20 = HEAP8[$1>>0]|0; - $21 = $20&255; - $22 = HEAP32[$3>>2]|0; - _callCollNeeded($19,$21,$22); - $23 = HEAP32[$db>>2]|0; - $24 = HEAP8[$1>>0]|0; - $25 = HEAP32[$3>>2]|0; - $26 = (_sqlite3FindCollSeq($23,$24,$25,0)|0); - HEAP32[$p>>2] = $26; - } - $27 = HEAP32[$p>>2]|0; - $28 = ($27|0)!=(0|0); - if ($28) { - $29 = HEAP32[$p>>2]|0; - $30 = (($29) + 12|0); - $31 = HEAP32[$30>>2]|0; - $32 = ($31|0)!=(0|0); - if (!($32)) { - $33 = HEAP32[$db>>2]|0; - $34 = HEAP32[$p>>2]|0; - $35 = (_synthCollSeq($33,$34)|0); - $36 = ($35|0)!=(0); - if ($36) { - HEAP32[$p>>2] = 0; - } - } - } - $37 = HEAP32[$p>>2]|0; - $38 = ($37|0)==(0|0); - if (!($38)) { - $41 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($41|0); - } - $39 = HEAP32[$0>>2]|0; - $40 = HEAP32[$3>>2]|0; - HEAP32[$vararg_buffer>>2] = $40; - _sqlite3ErrorMsg($39,16280,$vararg_buffer); - $41 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($41|0); -} -function _sqlite3CheckCollSeq($pParse,$pColl) { - $pParse = $pParse|0; - $pColl = $pColl|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $db = 0, $p = 0, $zName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $zName = sp + 8|0; - $db = sp + 4|0; - $p = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pColl; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - if ($4) { - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$zName>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$7>>2]|0; - HEAP32[$db>>2] = $8; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$db>>2]|0; - $11 = (($10) + 16|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + 12|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + 77|0); - $16 = HEAP8[$15>>0]|0; - $17 = HEAP32[$2>>2]|0; - $18 = HEAP32[$zName>>2]|0; - $19 = (_sqlite3GetCollSeq($9,$16,$17,$18)|0); - HEAP32[$p>>2] = $19; - $20 = HEAP32[$p>>2]|0; - $21 = ($20|0)!=(0|0); - if (!($21)) { - HEAP32[$0>>2] = 1; - $22 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($22|0); - } - } - HEAP32[$0>>2] = 0; - $22 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($22|0); -} -function _callCollNeeded($db,$enc,$zName) { - $db = $db|0; - $enc = $enc|0; - $zName = $zName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTmp = 0, $zExternal = 0, $zExternal1 = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $zExternal = sp + 8|0; - $zExternal1 = sp + 4|0; - $pTmp = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $enc; - HEAP32[$2>>2] = $zName; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 212|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0|0); - do { - if ($6) { - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = (_sqlite3DbStrDup($7,$8)|0); - HEAP32[$zExternal>>2] = $9; - $10 = HEAP32[$zExternal>>2]|0; - $11 = ($10|0)!=(0|0); - if ($11) { - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 212|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 220|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$1>>2]|0; - $20 = HEAP32[$zExternal>>2]|0; - FUNCTION_TABLE_viiii[$14 & 3]($17,$18,$19,$20); - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$zExternal>>2]|0; - _sqlite3DbFree($21,$22); - break; - } else { - STACKTOP = sp;return; - } - } - } while(0); - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 216|0); - $25 = HEAP32[$24>>2]|0; - $26 = ($25|0)!=(0|0); - if (!($26)) { - STACKTOP = sp;return; - } - $27 = HEAP32[$0>>2]|0; - $28 = (_sqlite3ValueNew($27)|0); - HEAP32[$pTmp>>2] = $28; - $29 = HEAP32[$pTmp>>2]|0; - $30 = HEAP32[$2>>2]|0; - _sqlite3ValueSetStr($29,-1,$30,1,0); - $31 = HEAP32[$pTmp>>2]|0; - $32 = HEAP8[1392>>0]|0; - $33 = $32 << 24 >> 24; - $34 = ($33|0)==(0); - $35 = $34 ? 3 : 2; - $36 = $35&255; - $37 = (_sqlite3ValueText($31,$36)|0); - HEAP32[$zExternal1>>2] = $37; - $38 = HEAP32[$zExternal1>>2]|0; - $39 = ($38|0)!=(0|0); - if ($39) { - $40 = HEAP32[$0>>2]|0; - $41 = (($40) + 216|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$0>>2]|0; - $44 = (($43) + 220|0); - $45 = HEAP32[$44>>2]|0; - $46 = HEAP32[$0>>2]|0; - $47 = HEAP32[$0>>2]|0; - $48 = (($47) + 16|0); - $49 = HEAP32[$48>>2]|0; - $50 = (($49) + 12|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + 77|0); - $53 = HEAP8[$52>>0]|0; - $54 = $53&255; - $55 = HEAP32[$zExternal1>>2]|0; - FUNCTION_TABLE_viiii[$42 & 3]($45,$46,$54,$55); - } - $56 = HEAP32[$pTmp>>2]|0; - _sqlite3ValueFree($56); - STACKTOP = sp;return; -} -function _synthCollSeq($db,$pColl) { - $db = $db|0; - $pColl = $pColl|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pColl2 = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $pColl2 = sp + 8|0; - $z = sp + 4|0; - $i = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pColl; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$z>>2] = $4; - HEAP32[$i>>2] = 0; - while(1) { - $5 = HEAP32[$i>>2]|0; - $6 = ($5|0)<(3); - if (!($6)) { - label = 6; - break; - } - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$i>>2]|0; - $9 = (16312 + ($8)|0); - $10 = HEAP8[$9>>0]|0; - $11 = HEAP32[$z>>2]|0; - $12 = (_sqlite3FindCollSeq($7,$10,$11,0)|0); - HEAP32[$pColl2>>2] = $12; - $13 = HEAP32[$pColl2>>2]|0; - $14 = (($13) + 12|0); - $15 = HEAP32[$14>>2]|0; - $16 = ($15|0)!=(0|0); - if ($16) { - label = 4; - break; - } - $21 = HEAP32[$i>>2]|0; - $22 = (($21) + 1)|0; - HEAP32[$i>>2] = $22; - } - if ((label|0) == 4) { - $17 = HEAP32[$2>>2]|0; - $18 = HEAP32[$pColl2>>2]|0; - ;HEAP32[$17+0>>2]=HEAP32[$18+0>>2]|0;HEAP32[$17+4>>2]=HEAP32[$18+4>>2]|0;HEAP32[$17+8>>2]=HEAP32[$18+8>>2]|0;HEAP32[$17+12>>2]=HEAP32[$18+12>>2]|0;HEAP32[$17+16>>2]=HEAP32[$18+16>>2]|0; - $19 = HEAP32[$2>>2]|0; - $20 = (($19) + 16|0); - HEAP32[$20>>2] = 0; - HEAP32[$0>>2] = 0; - $23 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($23|0); - } - else if ((label|0) == 6) { - HEAP32[$0>>2] = 1; - $23 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($23|0); - } - return 0|0; -} -function _sqlite3ExprSkipCollate($pExpr) { - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pExpr; - while(1) { - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if ($2) { - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 4|0); - $5 = HEAP32[$4>>2]|0; - $6 = $5 & 4096; - $7 = ($6|0)!=(0); - $21 = $7; - } else { - $21 = 0; - } - $8 = HEAP32[$0>>2]|0; - if (!($21)) { - break; - } - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - $11 = $10 & 262144; - $12 = ($11|0)!=(0); - $13 = HEAP32[$0>>2]|0; - if ($12) { - $14 = (($13) + 20|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$17>>2]|0; - HEAP32[$0>>2] = $18; - continue; - } else { - $19 = (($13) + 12|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$0>>2] = $20; - continue; - } - } - STACKTOP = sp;return ($8|0); -} -function _sqlite3AffinityType($zIn,$pszEst) { - $zIn = $zIn|0; - $pszEst = $pszEst|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; - var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $aff = 0, $h = 0, $v = 0, $zChar = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 21|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $h = sp + 8|0; - $aff = sp + 20|0; - $zChar = sp + 4|0; - $v = sp; - HEAP32[$1>>2] = $zIn; - HEAP32[$2>>2] = $pszEst; - HEAP32[$h>>2] = 0; - HEAP8[$aff>>0] = 99; - HEAP32[$zChar>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - $5 = HEAP8[$aff>>0]|0; - HEAP8[$0>>0] = $5; - $91 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($91|0); - } - L4: while(1) { - $6 = HEAP32[$1>>2]|0; - $7 = HEAP8[$6>>0]|0; - $8 = ($7<<24>>24)!=(0); - if (!($8)) { - break; - } - $9 = HEAP32[$h>>2]|0; - $10 = $9 << 8; - $11 = HEAP32[$1>>2]|0; - $12 = HEAP8[$11>>0]|0; - $13 = $12 << 24 >> 24; - $14 = $13 & 255; - $15 = (696 + ($14)|0); - $16 = HEAP8[$15>>0]|0; - $17 = $16&255; - $18 = (($10) + ($17))|0; - HEAP32[$h>>2] = $18; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 1|0); - HEAP32[$1>>2] = $20; - $21 = HEAP32[$h>>2]|0; - $22 = ($21|0)==(1667785074); - if ($22) { - HEAP8[$aff>>0] = 97; - $23 = HEAP32[$1>>2]|0; - HEAP32[$zChar>>2] = $23; - continue; - } - $24 = HEAP32[$h>>2]|0; - $25 = ($24|0)==(1668050786); - if ($25) { - HEAP8[$aff>>0] = 97; - continue; - } - $26 = HEAP32[$h>>2]|0; - $27 = ($26|0)==(1952807028); - if ($27) { - HEAP8[$aff>>0] = 97; - continue; - } - $28 = HEAP32[$h>>2]|0; - $29 = ($28|0)==(1651273570); - do { - if ($29) { - $30 = HEAP8[$aff>>0]|0; - $31 = $30 << 24 >> 24; - $32 = ($31|0)==(99); - if (!($32)) { - $33 = HEAP8[$aff>>0]|0; - $34 = $33 << 24 >> 24; - $35 = ($34|0)==(101); - if (!($35)) { - break; - } - } - HEAP8[$aff>>0] = 98; - $36 = HEAP32[$1>>2]|0; - $37 = HEAP8[$36>>0]|0; - $38 = $37 << 24 >> 24; - $39 = ($38|0)==(40); - if (!($39)) { - continue L4; - } - $40 = HEAP32[$1>>2]|0; - HEAP32[$zChar>>2] = $40; - continue L4; - } - } while(0); - $41 = HEAP32[$h>>2]|0; - $42 = ($41|0)==(1919246700); - if ($42) { - $43 = HEAP8[$aff>>0]|0; - $44 = $43 << 24 >> 24; - $45 = ($44|0)==(99); - if ($45) { - HEAP8[$aff>>0] = 101; - continue; - } - } - $46 = HEAP32[$h>>2]|0; - $47 = ($46|0)==(1718382433); - if ($47) { - $48 = HEAP8[$aff>>0]|0; - $49 = $48 << 24 >> 24; - $50 = ($49|0)==(99); - if ($50) { - HEAP8[$aff>>0] = 101; - continue; - } - } - $51 = HEAP32[$h>>2]|0; - $52 = ($51|0)==(1685026146); - if ($52) { - $53 = HEAP8[$aff>>0]|0; - $54 = $53 << 24 >> 24; - $55 = ($54|0)==(99); - if ($55) { - HEAP8[$aff>>0] = 101; - continue; - } - } - $56 = HEAP32[$h>>2]|0; - $57 = $56 & 16777215; - $58 = ($57|0)==(6909556); - if ($58) { - label = 25; - break; - } - } - if ((label|0) == 25) { - HEAP8[$aff>>0] = 100; - } - $59 = HEAP32[$2>>2]|0; - $60 = ($59|0)!=(0|0); - L38: do { - if ($60) { - $61 = HEAP32[$2>>2]|0; - HEAP8[$61>>0] = 1; - $62 = HEAP8[$aff>>0]|0; - $63 = $62 << 24 >> 24; - $64 = ($63|0)<=(98); - if ($64) { - $65 = HEAP32[$zChar>>2]|0; - $66 = ($65|0)!=(0|0); - if (!($66)) { - $89 = HEAP32[$2>>2]|0; - HEAP8[$89>>0] = 5; - break; - } - while(1) { - $67 = HEAP32[$zChar>>2]|0; - $68 = HEAP8[$67>>0]|0; - $69 = ($68<<24>>24)!=(0); - if (!($69)) { - break L38; - } - $70 = HEAP32[$zChar>>2]|0; - $71 = HEAP8[$70>>0]|0; - $72 = $71&255; - $73 = (48 + ($72)|0); - $74 = HEAP8[$73>>0]|0; - $75 = $74&255; - $76 = $75 & 4; - $77 = ($76|0)!=(0); - if ($77) { - break; - } - $87 = HEAP32[$zChar>>2]|0; - $88 = (($87) + 1|0); - HEAP32[$zChar>>2] = $88; - } - HEAP32[$v>>2] = 0; - $78 = HEAP32[$zChar>>2]|0; - (_sqlite3GetInt32($78,$v)|0); - $79 = HEAP32[$v>>2]|0; - $80 = (($79|0) / 4)&-1; - $81 = (($80) + 1)|0; - HEAP32[$v>>2] = $81; - $82 = HEAP32[$v>>2]|0; - $83 = ($82|0)>(255); - $$ = $83 ? 255 : $81; - HEAP32[$v>>2] = $$; - $84 = HEAP32[$v>>2]|0; - $85 = $84&255; - $86 = HEAP32[$2>>2]|0; - HEAP8[$86>>0] = $85; - } - } - } while(0); - $90 = HEAP8[$aff>>0]|0; - HEAP8[$0>>0] = $90; - $91 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($91|0); -} -function _sqlite3SelectExpand($pParse,$pSelect) { - $pParse = $pParse|0; - $pSelect = $pSelect|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $w = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $w = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pSelect; - ;HEAP32[$w+0>>2]=0|0;HEAP32[$w+4>>2]=0|0;HEAP32[$w+8>>2]=0|0;HEAP32[$w+12>>2]=0|0;HEAP32[$w+16>>2]=0|0;HEAP32[$w+20>>2]=0|0; - HEAP32[$w>>2] = 36; - $2 = HEAP32[$0>>2]|0; - $3 = (($w) + 12|0); - HEAP32[$3>>2] = $2; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 22|0); - $6 = HEAP8[$5>>0]|0; - $7 = ($6<<24>>24)!=(0); - if ($7) { - $8 = (($w) + 4|0); - HEAP32[$8>>2] = 37; - $9 = HEAP32[$1>>2]|0; - (_sqlite3WalkSelect($w,$9)|0); - } - $10 = (($w) + 4|0); - HEAP32[$10>>2] = 38; - $11 = (($w) + 8|0); - HEAP32[$11>>2] = 3; - $12 = HEAP32[$1>>2]|0; - (_sqlite3WalkSelect($w,$12)|0); - STACKTOP = sp;return; -} -function _sqlite3ResolveSelectNames($pParse,$p,$pOuterNC) { - $pParse = $pParse|0; - $p = $p|0; - $pOuterNC = $pOuterNC|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $w = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $w = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $pOuterNC; - ;HEAP32[$w+0>>2]=0|0;HEAP32[$w+4>>2]=0|0;HEAP32[$w+8>>2]=0|0;HEAP32[$w+12>>2]=0|0;HEAP32[$w+16>>2]=0|0;HEAP32[$w+20>>2]=0|0; - HEAP32[$w>>2] = 39; - $3 = (($w) + 4|0); - HEAP32[$3>>2] = 40; - $4 = HEAP32[$0>>2]|0; - $5 = (($w) + 12|0); - HEAP32[$5>>2] = $4; - $6 = HEAP32[$2>>2]|0; - $7 = (($w) + 20|0); - HEAP32[$7>>2] = $6; - $8 = HEAP32[$1>>2]|0; - (_sqlite3WalkSelect($w,$8)|0); - STACKTOP = sp;return; -} -function _sqlite3SelectAddTypeInfo($pParse,$pSelect) { - $pParse = $pParse|0; - $pSelect = $pSelect|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $w = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $w = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pSelect; - ;HEAP32[$w+0>>2]=0|0;HEAP32[$w+4>>2]=0|0;HEAP32[$w+8>>2]=0|0;HEAP32[$w+12>>2]=0|0;HEAP32[$w+16>>2]=0|0;HEAP32[$w+20>>2]=0|0; - $2 = (($w) + 8|0); - HEAP32[$2>>2] = 4; - HEAP32[$w>>2] = 36; - $3 = HEAP32[$0>>2]|0; - $4 = (($w) + 12|0); - HEAP32[$4>>2] = $3; - $5 = HEAP32[$1>>2]|0; - (_sqlite3WalkSelect($w,$5)|0); - STACKTOP = sp;return; -} -function _selectAddSubqueryTypeInfo($pWalker,$p) { - $pWalker = $pWalker|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pFrom = 0, $pParse = 0, $pSel = 0; - var $pTab = 0, $pTabList = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $pParse = sp + 20|0; - $i = sp + 16|0; - $pTabList = sp + 12|0; - $pFrom = sp + 8|0; - $pTab = sp + 4|0; - $pSel = sp; - HEAP32[$0>>2] = $pWalker; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 6|0); - $4 = HEAP16[$3>>1]|0; - $5 = $4&65535; - $6 = $5 & 32; - $7 = ($6|0)==(0); - if (!($7)) { - STACKTOP = sp;return; - } - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 6|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10&65535; - $12 = $11 | 32; - $13 = $12&65535; - HEAP16[$9>>1] = $13; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 12|0); - $16 = HEAP32[$15>>2]|0; - HEAP32[$pParse>>2] = $16; - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 32|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$pTabList>>2] = $19; - HEAP32[$i>>2] = 0; - $20 = HEAP32[$pTabList>>2]|0; - $21 = (($20) + 8|0); - HEAP32[$pFrom>>2] = $21; - while(1) { - $22 = HEAP32[$i>>2]|0; - $23 = HEAP32[$pTabList>>2]|0; - $24 = HEAP32[$23>>2]|0; - $25 = ($22|0)<($24|0); - if (!($25)) { - break; - } - $26 = HEAP32[$pFrom>>2]|0; - $27 = (($26) + 16|0); - $28 = HEAP32[$27>>2]|0; - HEAP32[$pTab>>2] = $28; - $29 = HEAP32[$pTab>>2]|0; - $30 = ($29|0)!=(0|0); - if ($30) { - $31 = HEAP32[$pTab>>2]|0; - $32 = (($31) + 44|0); - $33 = HEAP8[$32>>0]|0; - $34 = $33&255; - $35 = $34 & 2; - $36 = ($35|0)!=(0); - if ($36) { - $37 = HEAP32[$pFrom>>2]|0; - $38 = (($37) + 20|0); - $39 = HEAP32[$38>>2]|0; - HEAP32[$pSel>>2] = $39; - $40 = HEAP32[$pSel>>2]|0; - $41 = ($40|0)!=(0|0); - if ($41) { - while(1) { - $42 = HEAP32[$pSel>>2]|0; - $43 = (($42) + 52|0); - $44 = HEAP32[$43>>2]|0; - $45 = ($44|0)!=(0|0); - if (!($45)) { - break; - } - $46 = HEAP32[$pSel>>2]|0; - $47 = (($46) + 52|0); - $48 = HEAP32[$47>>2]|0; - HEAP32[$pSel>>2] = $48; - } - $49 = HEAP32[$pParse>>2]|0; - $50 = HEAP32[$pTab>>2]|0; - $51 = HEAP32[$pSel>>2]|0; - _selectAddColumnTypeAndCollation($49,$50,$51); - } - } - } - $52 = HEAP32[$i>>2]|0; - $53 = (($52) + 1)|0; - HEAP32[$i>>2] = $53; - $54 = HEAP32[$pFrom>>2]|0; - $55 = (($54) + 72|0); - HEAP32[$pFrom>>2] = $55; - } - STACKTOP = sp;return; -} -function _exprWalkNoop($NotUsed,$NotUsed2) { - $NotUsed = $NotUsed|0; - $NotUsed2 = $NotUsed2|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $NotUsed; - HEAP32[$1>>2] = $NotUsed2; - STACKTOP = sp;return 0; -} -function _sqlite3WalkSelect($pWalker,$p) { - $pWalker = $pWalker|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0; - var $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pWalker; - HEAP32[$2>>2] = $p; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)==(0|0); - do { - if (!($4)) { - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 4|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)==(0|0); - if ($8) { - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 8|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)==(0|0); - if ($12) { - break; - } - } - HEAP32[$rc>>2] = 0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 16|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + 1)|0; - HEAP32[$14>>2] = $16; - while(1) { - $17 = HEAP32[$2>>2]|0; - $18 = ($17|0)!=(0|0); - if (!($18)) { - label = 15; - break; - } - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 4|0); - $21 = HEAP32[$20>>2]|0; - $22 = ($21|0)!=(0|0); - if ($22) { - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 4|0); - $25 = HEAP32[$24>>2]|0; - $26 = HEAP32[$1>>2]|0; - $27 = HEAP32[$2>>2]|0; - $28 = (FUNCTION_TABLE_iii[$25 & 63]($26,$27)|0); - HEAP32[$rc>>2] = $28; - $29 = HEAP32[$rc>>2]|0; - $30 = ($29|0)!=(0); - if ($30) { - label = 15; - break; - } - } - $31 = HEAP32[$1>>2]|0; - $32 = HEAP32[$2>>2]|0; - $33 = (_sqlite3WalkSelectExpr($31,$32)|0); - $34 = ($33|0)!=(0); - if ($34) { - label = 11; - break; - } - $35 = HEAP32[$1>>2]|0; - $36 = HEAP32[$2>>2]|0; - $37 = (_sqlite3WalkSelectFrom($35,$36)|0); - $38 = ($37|0)!=(0); - if ($38) { - label = 11; - break; - } - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + 8|0); - $45 = HEAP32[$44>>2]|0; - $46 = ($45|0)!=(0|0); - if ($46) { - $47 = HEAP32[$1>>2]|0; - $48 = (($47) + 8|0); - $49 = HEAP32[$48>>2]|0; - $50 = HEAP32[$1>>2]|0; - $51 = HEAP32[$2>>2]|0; - FUNCTION_TABLE_vii[$49 & 7]($50,$51); - } - $52 = HEAP32[$2>>2]|0; - $53 = (($52) + 52|0); - $54 = HEAP32[$53>>2]|0; - HEAP32[$2>>2] = $54; - } - if ((label|0) == 11) { - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 16|0); - $41 = HEAP32[$40>>2]|0; - $42 = (($41) + -1)|0; - HEAP32[$40>>2] = $42; - HEAP32[$0>>2] = 2; - $61 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($61|0); - } - else if ((label|0) == 15) { - $55 = HEAP32[$1>>2]|0; - $56 = (($55) + 16|0); - $57 = HEAP32[$56>>2]|0; - $58 = (($57) + -1)|0; - HEAP32[$56>>2] = $58; - $59 = HEAP32[$rc>>2]|0; - $60 = $59 & 2; - HEAP32[$0>>2] = $60; - $61 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($61|0); - } - } - } while(0); - HEAP32[$0>>2] = 0; - $61 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($61|0); -} -function _sqlite3WalkSelectExpr($pWalker,$p) { - $pWalker = $pWalker|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$1>>2] = $pWalker; - HEAP32[$2>>2] = $p; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$2>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = (_sqlite3WalkExprList($3,$5)|0); - $7 = ($6|0)!=(0); - do { - if ($7) { - HEAP32[$0>>2] = 2; - } else { - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$2>>2]|0; - $10 = (($9) + 36|0); - $11 = HEAP32[$10>>2]|0; - $12 = (_sqlite3WalkExpr($8,$11)|0); - $13 = ($12|0)!=(0); - if ($13) { - HEAP32[$0>>2] = 2; - break; - } - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = (($15) + 40|0); - $17 = HEAP32[$16>>2]|0; - $18 = (_sqlite3WalkExprList($14,$17)|0); - $19 = ($18|0)!=(0); - if ($19) { - HEAP32[$0>>2] = 2; - break; - } - $20 = HEAP32[$1>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = (($21) + 44|0); - $23 = HEAP32[$22>>2]|0; - $24 = (_sqlite3WalkExpr($20,$23)|0); - $25 = ($24|0)!=(0); - if ($25) { - HEAP32[$0>>2] = 2; - break; - } - $26 = HEAP32[$1>>2]|0; - $27 = HEAP32[$2>>2]|0; - $28 = (($27) + 48|0); - $29 = HEAP32[$28>>2]|0; - $30 = (_sqlite3WalkExprList($26,$29)|0); - $31 = ($30|0)!=(0); - if ($31) { - HEAP32[$0>>2] = 2; - break; - } - $32 = HEAP32[$1>>2]|0; - $33 = HEAP32[$2>>2]|0; - $34 = (($33) + 60|0); - $35 = HEAP32[$34>>2]|0; - $36 = (_sqlite3WalkExpr($32,$35)|0); - $37 = ($36|0)!=(0); - if ($37) { - HEAP32[$0>>2] = 2; - break; - } - $38 = HEAP32[$1>>2]|0; - $39 = HEAP32[$2>>2]|0; - $40 = (($39) + 64|0); - $41 = HEAP32[$40>>2]|0; - $42 = (_sqlite3WalkExpr($38,$41)|0); - $43 = ($42|0)!=(0); - if ($43) { - HEAP32[$0>>2] = 2; - break; - } else { - HEAP32[$0>>2] = 0; - break; - } - } - } while(0); - $44 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($44|0); -} -function _sqlite3WalkSelectFrom($pWalker,$p) { - $pWalker = $pWalker|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pItem = 0, $pSrc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $pSrc = sp + 8|0; - $i = sp + 4|0; - $pItem = sp; - HEAP32[$1>>2] = $pWalker; - HEAP32[$2>>2] = $p; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 32|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pSrc>>2] = $5; - $6 = HEAP32[$pSrc>>2]|0; - $7 = ($6|0)!=(0|0); - L1: do { - if ($7) { - $8 = HEAP32[$pSrc>>2]|0; - $9 = HEAP32[$8>>2]|0; - HEAP32[$i>>2] = $9; - $10 = HEAP32[$pSrc>>2]|0; - $11 = (($10) + 8|0); - HEAP32[$pItem>>2] = $11; - while(1) { - $12 = HEAP32[$i>>2]|0; - $13 = ($12|0)>(0); - if (!($13)) { - break L1; - } - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$pItem>>2]|0; - $16 = (($15) + 20|0); - $17 = HEAP32[$16>>2]|0; - $18 = (_sqlite3WalkSelect($14,$17)|0); - $19 = ($18|0)!=(0); - if ($19) { - break; - } - $20 = HEAP32[$i>>2]|0; - $21 = (($20) + -1)|0; - HEAP32[$i>>2] = $21; - $22 = HEAP32[$pItem>>2]|0; - $23 = (($22) + 72|0); - HEAP32[$pItem>>2] = $23; - } - HEAP32[$0>>2] = 2; - $24 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($24|0); - } - } while(0); - HEAP32[$0>>2] = 0; - $24 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($24|0); -} -function _sqlite3WalkExprList($pWalker,$p) { - $pWalker = $pWalker|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $i = 0, $pItem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $i = sp + 4|0; - $pItem = sp; - HEAP32[$1>>2] = $pWalker; - HEAP32[$2>>2] = $p; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - L1: do { - if ($4) { - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$i>>2] = $6; - $7 = HEAP32[$2>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$pItem>>2] = $9; - while(1) { - $10 = HEAP32[$i>>2]|0; - $11 = ($10|0)>(0); - if (!($11)) { - break L1; - } - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$pItem>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = (_sqlite3WalkExpr($12,$14)|0); - $16 = ($15|0)!=(0); - if ($16) { - break; - } - $17 = HEAP32[$i>>2]|0; - $18 = (($17) + -1)|0; - HEAP32[$i>>2] = $18; - $19 = HEAP32[$pItem>>2]|0; - $20 = (($19) + 20|0); - HEAP32[$pItem>>2] = $20; - } - HEAP32[$0>>2] = 2; - $21 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($21|0); - } - } while(0); - HEAP32[$0>>2] = 0; - $21 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($21|0); -} -function _sqlite3WalkExpr($pWalker,$pExpr) { - $pWalker = $pWalker|0; - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pWalker; - HEAP32[$2>>2] = $pExpr; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)==(0|0); - L1: do { - if ($4) { - HEAP32[$0>>2] = 0; - } else { - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = (FUNCTION_TABLE_iii[$6 & 63]($7,$8)|0); - HEAP32[$rc>>2] = $9; - $10 = HEAP32[$rc>>2]|0; - $11 = ($10|0)==(0); - do { - if ($11) { - $12 = HEAP32[$2>>2]|0; - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - $15 = $14 & 16384; - $16 = ($15|0)!=(0); - if (!($16)) { - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$2>>2]|0; - $19 = (($18) + 12|0); - $20 = HEAP32[$19>>2]|0; - $21 = (_sqlite3WalkExpr($17,$20)|0); - $22 = ($21|0)!=(0); - if ($22) { - HEAP32[$0>>2] = 2; - break L1; - } - $23 = HEAP32[$1>>2]|0; - $24 = HEAP32[$2>>2]|0; - $25 = (($24) + 16|0); - $26 = HEAP32[$25>>2]|0; - $27 = (_sqlite3WalkExpr($23,$26)|0); - $28 = ($27|0)!=(0); - if ($28) { - HEAP32[$0>>2] = 2; - break L1; - } - $29 = HEAP32[$2>>2]|0; - $30 = (($29) + 4|0); - $31 = HEAP32[$30>>2]|0; - $32 = $31 & 2048; - $33 = ($32|0)!=(0); - $34 = HEAP32[$1>>2]|0; - $35 = HEAP32[$2>>2]|0; - $36 = (($35) + 20|0); - if ($33) { - $37 = HEAP32[$36>>2]|0; - $38 = (_sqlite3WalkSelect($34,$37)|0); - $39 = ($38|0)!=(0); - if (!($39)) { - break; - } - HEAP32[$0>>2] = 2; - break L1; - } else { - $40 = HEAP32[$36>>2]|0; - $41 = (_sqlite3WalkExprList($34,$40)|0); - $42 = ($41|0)!=(0); - if (!($42)) { - break; - } - HEAP32[$0>>2] = 2; - break L1; - } - } - } - } while(0); - $43 = HEAP32[$rc>>2]|0; - $44 = $43 & 2; - HEAP32[$0>>2] = $44; - } - } while(0); - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); -} -function _resolveExprStep($pWalker,$pExpr) { - $pWalker = $pWalker|0; - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; - var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $auth = 0, $enc = 0; - var $is_agg = 0, $n = 0, $nId = 0, $nRef = 0, $no_such_func = 0, $pDef = 0, $pList = 0, $pNC = 0, $pNC2 = 0, $pParse = 0, $pRight = 0, $vararg_buffer11 = 0, $vararg_ptr10 = 0, $vararg_ptr14 = 0, $vararg_ptr6 = 0, $wrong_num_args = 0, $zColumn = 0, $zDb = 0, $zId = 0, $zTable = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $vararg_buffer11 = sp; - $0 = sp + 84|0; - $1 = sp + 80|0; - $2 = sp + 76|0; - $pNC = sp + 72|0; - $pParse = sp + 68|0; - $zColumn = sp + 64|0; - $zTable = sp + 60|0; - $zDb = sp + 56|0; - $pRight = sp + 52|0; - $pList = sp + 48|0; - $n = sp + 44|0; - $no_such_func = sp + 40|0; - $wrong_num_args = sp + 36|0; - $is_agg = sp + 32|0; - $auth = sp + 28|0; - $nId = sp + 24|0; - $zId = sp + 20|0; - $pDef = sp + 16|0; - $enc = sp + 88|0; - $pNC2 = sp + 12|0; - $nRef = sp + 8|0; - HEAP32[$1>>2] = $pWalker; - HEAP32[$2>>2] = $pExpr; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 20|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pNC>>2] = $5; - $6 = HEAP32[$pNC>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$pParse>>2] = $7; - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - $11 = $10 & 4; - $12 = ($11|0)!=(0); - if ($12) { - HEAP32[$0>>2] = 1; - $297 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($297|0); - } - $13 = HEAP32[$2>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - $16 = $15 | 4; - HEAP32[$14>>2] = $16; - $17 = HEAP32[$2>>2]|0; - $18 = HEAP8[$17>>0]|0; - $19 = $18&255; - switch ($19|0) { - case 153: { - $64 = HEAP32[$2>>2]|0; - $65 = (($64) + 20|0); - $66 = HEAP32[$65>>2]|0; - HEAP32[$pList>>2] = $66; - $67 = HEAP32[$pList>>2]|0; - $68 = ($67|0)!=(0|0); - if ($68) { - $69 = HEAP32[$pList>>2]|0; - $70 = HEAP32[$69>>2]|0; - $71 = $70; - } else { - $71 = 0; - } - HEAP32[$n>>2] = $71; - HEAP32[$no_such_func>>2] = 0; - HEAP32[$wrong_num_args>>2] = 0; - HEAP32[$is_agg>>2] = 0; - $72 = HEAP32[$pParse>>2]|0; - $73 = HEAP32[$72>>2]|0; - $74 = (($73) + 16|0); - $75 = HEAP32[$74>>2]|0; - $76 = (($75) + 12|0); - $77 = HEAP32[$76>>2]|0; - $78 = (($77) + 77|0); - $79 = HEAP8[$78>>0]|0; - HEAP8[$enc>>0] = $79; - $80 = HEAP32[$pParse>>2]|0; - $81 = HEAP32[$pNC>>2]|0; - _notValidPartIdxWhere($80,$81,16704); - $82 = HEAP32[$2>>2]|0; - $83 = (($82) + 8|0); - $84 = HEAP32[$83>>2]|0; - HEAP32[$zId>>2] = $84; - $85 = HEAP32[$zId>>2]|0; - $86 = (_sqlite3Strlen30($85)|0); - HEAP32[$nId>>2] = $86; - $87 = HEAP32[$pParse>>2]|0; - $88 = HEAP32[$87>>2]|0; - $89 = HEAP32[$zId>>2]|0; - $90 = HEAP32[$nId>>2]|0; - $91 = HEAP32[$n>>2]|0; - $92 = HEAP8[$enc>>0]|0; - $93 = (_sqlite3FindFunction($88,$89,$90,$91,$92,0)|0); - HEAP32[$pDef>>2] = $93; - $94 = HEAP32[$pDef>>2]|0; - $95 = ($94|0)==(0|0); - do { - if ($95) { - $96 = HEAP32[$pParse>>2]|0; - $97 = HEAP32[$96>>2]|0; - $98 = HEAP32[$zId>>2]|0; - $99 = HEAP32[$nId>>2]|0; - $100 = HEAP8[$enc>>0]|0; - $101 = (_sqlite3FindFunction($97,$98,$99,-2,$100,0)|0); - HEAP32[$pDef>>2] = $101; - $102 = HEAP32[$pDef>>2]|0; - $103 = ($102|0)==(0|0); - if ($103) { - HEAP32[$no_such_func>>2] = 1; - break; - } else { - HEAP32[$wrong_num_args>>2] = 1; - break; - } - } else { - $104 = HEAP32[$pDef>>2]|0; - $105 = (($104) + 12|0); - $106 = HEAP32[$105>>2]|0; - $107 = ($106|0)==(0|0); - $108 = $107&1; - HEAP32[$is_agg>>2] = $108; - $109 = HEAP32[$pDef>>2]|0; - $110 = (($109) + 2|0); - $111 = HEAP16[$110>>1]|0; - $112 = $111&65535; - $113 = $112 & 1024; - $114 = ($113|0)!=(0); - if ($114) { - $115 = HEAP32[$2>>2]|0; - $116 = (($115) + 4|0); - $117 = HEAP32[$116>>2]|0; - $118 = $117 | 266240; - HEAP32[$116>>2] = $118; - $119 = HEAP32[$n>>2]|0; - $120 = ($119|0)==(2); - if (!($120)) { - $138 = HEAP32[$2>>2]|0; - $139 = (($138) + 28|0); - HEAP32[$139>>2] = 62; - break; - } - $121 = HEAP32[$pList>>2]|0; - $122 = (($121) + 4|0); - $123 = HEAP32[$122>>2]|0; - $124 = (($123) + 20|0); - $125 = HEAP32[$124>>2]|0; - $126 = (_exprProbability($125)|0); - $127 = HEAP32[$2>>2]|0; - $128 = (($127) + 28|0); - HEAP32[$128>>2] = $126; - $129 = HEAP32[$2>>2]|0; - $130 = (($129) + 28|0); - $131 = HEAP32[$130>>2]|0; - $132 = ($131|0)<(0); - if ($132) { - $133 = HEAP32[$pParse>>2]|0; - _sqlite3ErrorMsg($133,16720,$vararg_buffer11); - $134 = HEAP32[$pNC>>2]|0; - $135 = (($134) + 24|0); - $136 = HEAP32[$135>>2]|0; - $137 = (($136) + 1)|0; - HEAP32[$135>>2] = $137; - } - } - } - } while(0); - $140 = HEAP32[$pDef>>2]|0; - $141 = ($140|0)!=(0|0); - do { - if ($141) { - $142 = HEAP32[$pParse>>2]|0; - $143 = HEAP32[$pDef>>2]|0; - $144 = (($143) + 24|0); - $145 = HEAP32[$144>>2]|0; - $146 = (_sqlite3AuthCheck($142,31,0,$145,0)|0); - HEAP32[$auth>>2] = $146; - $147 = HEAP32[$auth>>2]|0; - $148 = ($147|0)!=(0); - if (!($148)) { - $160 = HEAP32[$pDef>>2]|0; - $161 = (($160) + 2|0); - $162 = HEAP16[$161>>1]|0; - $163 = $162&65535; - $164 = $163 & 2048; - $165 = ($164|0)!=(0); - if (!($165)) { - break; - } - $166 = HEAP32[$2>>2]|0; - $167 = (($166) + 4|0); - $168 = HEAP32[$167>>2]|0; - $169 = $168 | 524288; - HEAP32[$167>>2] = $169; - break; - } - $149 = HEAP32[$auth>>2]|0; - $150 = ($149|0)==(1); - if ($150) { - $151 = HEAP32[$pParse>>2]|0; - $152 = HEAP32[$pDef>>2]|0; - $153 = (($152) + 24|0); - $154 = HEAP32[$153>>2]|0; - HEAP32[$vararg_buffer11>>2] = $154; - _sqlite3ErrorMsg($151,16792,$vararg_buffer11); - $155 = HEAP32[$pNC>>2]|0; - $156 = (($155) + 24|0); - $157 = HEAP32[$156>>2]|0; - $158 = (($157) + 1)|0; - HEAP32[$156>>2] = $158; - } - $159 = HEAP32[$2>>2]|0; - HEAP8[$159>>0] = 101; - HEAP32[$0>>2] = 1; - $297 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($297|0); - } - } while(0); - $170 = HEAP32[$is_agg>>2]|0; - $171 = ($170|0)!=(0); - if ($171) { - $172 = HEAP32[$pNC>>2]|0; - $173 = (($172) + 28|0); - $174 = HEAP8[$173>>0]|0; - $175 = $174&255; - $176 = $175 & 1; - $177 = ($176|0)==(0); - if ($177) { - $178 = HEAP32[$pParse>>2]|0; - $179 = HEAP32[$nId>>2]|0; - $180 = HEAP32[$zId>>2]|0; - HEAP32[$vararg_buffer11>>2] = $179; - $vararg_ptr6 = (($vararg_buffer11) + 4|0); - HEAP32[$vararg_ptr6>>2] = $180; - _sqlite3ErrorMsg($178,16832,$vararg_buffer11); - $181 = HEAP32[$pNC>>2]|0; - $182 = (($181) + 24|0); - $183 = HEAP32[$182>>2]|0; - $184 = (($183) + 1)|0; - HEAP32[$182>>2] = $184; - HEAP32[$is_agg>>2] = 0; - } else { - label = 30; - } - } else { - label = 30; - } - do { - if ((label|0) == 30) { - $185 = HEAP32[$no_such_func>>2]|0; - $186 = ($185|0)!=(0); - if ($186) { - $187 = HEAP32[$pParse>>2]|0; - $188 = HEAP32[$187>>2]|0; - $189 = (($188) + 132|0); - $190 = (($189) + 5|0); - $191 = HEAP8[$190>>0]|0; - $192 = $191&255; - $193 = ($192|0)==(0); - if ($193) { - $194 = HEAP32[$pParse>>2]|0; - $195 = HEAP32[$nId>>2]|0; - $196 = HEAP32[$zId>>2]|0; - HEAP32[$vararg_buffer11>>2] = $195; - $vararg_ptr10 = (($vararg_buffer11) + 4|0); - HEAP32[$vararg_ptr10>>2] = $196; - _sqlite3ErrorMsg($194,16872,$vararg_buffer11); - $197 = HEAP32[$pNC>>2]|0; - $198 = (($197) + 24|0); - $199 = HEAP32[$198>>2]|0; - $200 = (($199) + 1)|0; - HEAP32[$198>>2] = $200; - break; - } - } - $201 = HEAP32[$wrong_num_args>>2]|0; - $202 = ($201|0)!=(0); - if ($202) { - $203 = HEAP32[$pParse>>2]|0; - $204 = HEAP32[$nId>>2]|0; - $205 = HEAP32[$zId>>2]|0; - HEAP32[$vararg_buffer11>>2] = $204; - $vararg_ptr14 = (($vararg_buffer11) + 4|0); - HEAP32[$vararg_ptr14>>2] = $205; - _sqlite3ErrorMsg($203,16896,$vararg_buffer11); - $206 = HEAP32[$pNC>>2]|0; - $207 = (($206) + 24|0); - $208 = HEAP32[$207>>2]|0; - $209 = (($208) + 1)|0; - HEAP32[$207>>2] = $209; - } - } - } while(0); - $210 = HEAP32[$is_agg>>2]|0; - $211 = ($210|0)!=(0); - if ($211) { - $212 = HEAP32[$pNC>>2]|0; - $213 = (($212) + 28|0); - $214 = HEAP8[$213>>0]|0; - $215 = $214&255; - $216 = $215 & -2; - $217 = $216&255; - HEAP8[$213>>0] = $217; - } - $218 = HEAP32[$1>>2]|0; - $219 = HEAP32[$pList>>2]|0; - (_sqlite3WalkExprList($218,$219)|0); - $220 = HEAP32[$is_agg>>2]|0; - $221 = ($220|0)!=(0); - if ($221) { - $222 = HEAP32[$pNC>>2]|0; - HEAP32[$pNC2>>2] = $222; - $223 = HEAP32[$2>>2]|0; - HEAP8[$223>>0] = -101; - $224 = HEAP32[$2>>2]|0; - $225 = (($224) + 38|0); - HEAP8[$225>>0] = 0; - while(1) { - $226 = HEAP32[$pNC2>>2]|0; - $227 = ($226|0)!=(0|0); - if (!($227)) { - break; - } - $228 = HEAP32[$2>>2]|0; - $229 = HEAP32[$pNC2>>2]|0; - $230 = (($229) + 4|0); - $231 = HEAP32[$230>>2]|0; - $232 = (_sqlite3FunctionUsesThisSrc($228,$231)|0); - $233 = ($232|0)!=(0); - $234 = $233 ^ 1; - if (!($234)) { - break; - } - $235 = HEAP32[$2>>2]|0; - $236 = (($235) + 38|0); - $237 = HEAP8[$236>>0]|0; - $238 = (($237) + 1)<<24>>24; - HEAP8[$236>>0] = $238; - $239 = HEAP32[$pNC2>>2]|0; - $240 = (($239) + 16|0); - $241 = HEAP32[$240>>2]|0; - HEAP32[$pNC2>>2] = $241; - } - $242 = HEAP32[$pNC2>>2]|0; - $243 = ($242|0)!=(0|0); - if ($243) { - $244 = HEAP32[$pNC2>>2]|0; - $245 = (($244) + 28|0); - $246 = HEAP8[$245>>0]|0; - $247 = $246&255; - $248 = $247 | 2; - $249 = $248&255; - HEAP8[$245>>0] = $249; - } - $250 = HEAP32[$pNC>>2]|0; - $251 = (($250) + 28|0); - $252 = HEAP8[$251>>0]|0; - $253 = $252&255; - $254 = $253 | 1; - $255 = $254&255; - HEAP8[$251>>0] = $255; - } - HEAP32[$0>>2] = 1; - $297 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($297|0); - break; - } - case 75: case 20: case 119: { - $256 = HEAP32[$2>>2]|0; - $257 = (($256) + 4|0); - $258 = HEAP32[$257>>2]|0; - $259 = $258 & 2048; - $260 = ($259|0)!=(0); - if ($260) { - $261 = HEAP32[$pNC>>2]|0; - $262 = (($261) + 20|0); - $263 = HEAP32[$262>>2]|0; - HEAP32[$nRef>>2] = $263; - $264 = HEAP32[$pParse>>2]|0; - $265 = HEAP32[$pNC>>2]|0; - _notValidCheckConstraint($264,$265,16944); - $266 = HEAP32[$pParse>>2]|0; - $267 = HEAP32[$pNC>>2]|0; - _notValidPartIdxWhere($266,$267,16944); - $268 = HEAP32[$1>>2]|0; - $269 = HEAP32[$2>>2]|0; - $270 = (($269) + 20|0); - $271 = HEAP32[$270>>2]|0; - (_sqlite3WalkSelect($268,$271)|0); - $272 = HEAP32[$nRef>>2]|0; - $273 = HEAP32[$pNC>>2]|0; - $274 = (($273) + 20|0); - $275 = HEAP32[$274>>2]|0; - $276 = ($272|0)!=($275|0); - if ($276) { - $277 = HEAP32[$2>>2]|0; - $278 = (($277) + 4|0); - $279 = HEAP32[$278>>2]|0; - $280 = $279 | 32; - HEAP32[$278>>2] = $280; - } - } - break; - } - case 122: { - $27 = HEAP32[$2>>2]|0; - $28 = (($27) + 16|0); - $29 = HEAP32[$28>>2]|0; - HEAP32[$pRight>>2] = $29; - $30 = HEAP32[$pRight>>2]|0; - $31 = HEAP8[$30>>0]|0; - $32 = $31&255; - $33 = ($32|0)==(27); - if ($33) { - HEAP32[$zDb>>2] = 0; - $34 = HEAP32[$2>>2]|0; - $35 = (($34) + 12|0); - $36 = HEAP32[$35>>2]|0; - $37 = (($36) + 8|0); - $38 = HEAP32[$37>>2]|0; - HEAP32[$zTable>>2] = $38; - $39 = HEAP32[$pRight>>2]|0; - $40 = (($39) + 8|0); - $41 = HEAP32[$40>>2]|0; - HEAP32[$zColumn>>2] = $41; - } else { - $42 = HEAP32[$2>>2]|0; - $43 = (($42) + 12|0); - $44 = HEAP32[$43>>2]|0; - $45 = (($44) + 8|0); - $46 = HEAP32[$45>>2]|0; - HEAP32[$zDb>>2] = $46; - $47 = HEAP32[$pRight>>2]|0; - $48 = (($47) + 12|0); - $49 = HEAP32[$48>>2]|0; - $50 = (($49) + 8|0); - $51 = HEAP32[$50>>2]|0; - HEAP32[$zTable>>2] = $51; - $52 = HEAP32[$pRight>>2]|0; - $53 = (($52) + 16|0); - $54 = HEAP32[$53>>2]|0; - $55 = (($54) + 8|0); - $56 = HEAP32[$55>>2]|0; - HEAP32[$zColumn>>2] = $56; - } - $57 = HEAP32[$pParse>>2]|0; - $58 = HEAP32[$zDb>>2]|0; - $59 = HEAP32[$zTable>>2]|0; - $60 = HEAP32[$zColumn>>2]|0; - $61 = HEAP32[$pNC>>2]|0; - $62 = HEAP32[$2>>2]|0; - $63 = (_lookupName($57,$58,$59,$60,$61,$62)|0); - HEAP32[$0>>2] = $63; - $297 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($297|0); - break; - } - case 135: { - $281 = HEAP32[$pParse>>2]|0; - $282 = HEAP32[$pNC>>2]|0; - _notValidCheckConstraint($281,$282,16960); - $283 = HEAP32[$pParse>>2]|0; - $284 = HEAP32[$pNC>>2]|0; - _notValidPartIdxWhere($283,$284,16960); - break; - } - case 27: { - $20 = HEAP32[$pParse>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = (($21) + 8|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$pNC>>2]|0; - $25 = HEAP32[$2>>2]|0; - $26 = (_lookupName($20,0,0,$23,$24,$25)|0); - HEAP32[$0>>2] = $26; - $297 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($297|0); - break; - } - default: { - } - } - $285 = HEAP32[$pParse>>2]|0; - $286 = (($285) + 64|0); - $287 = HEAP32[$286>>2]|0; - $288 = ($287|0)!=(0); - if ($288) { - $296 = 1; - } else { - $289 = HEAP32[$pParse>>2]|0; - $290 = HEAP32[$289>>2]|0; - $291 = (($290) + 64|0); - $292 = HEAP8[$291>>0]|0; - $293 = $292&255; - $294 = ($293|0)!=(0); - $296 = $294; - } - $295 = $296 ? 2 : 0; - HEAP32[$0>>2] = $295; - $297 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($297|0); -} -function _resolveSelectStep($pWalker,$p) { - $pWalker = $pWalker|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; - var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0, $isCompound = 0, $nCompound = 0, $nRef = 0, $pEList = 0, $pGroupBy = 0, $pItem = 0, $pItem1 = 0, $pLeftmost = 0, $pNC = 0, $pOuterNC = 0, $pParse = 0, $pX = 0; - var $sNC = 0, $vararg_buffer1 = 0, $zSavedContext = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 112|0; - $vararg_buffer1 = sp; - $0 = sp + 108|0; - $1 = sp + 104|0; - $2 = sp + 100|0; - $pOuterNC = sp + 96|0; - $sNC = sp + 64|0; - $isCompound = sp + 56|0; - $nCompound = sp + 52|0; - $pParse = sp + 48|0; - $pEList = sp + 44|0; - $i = sp + 40|0; - $pGroupBy = sp + 36|0; - $pLeftmost = sp + 32|0; - $db = sp + 28|0; - $pItem = sp + 24|0; - $pNC = sp + 20|0; - $nRef = sp + 16|0; - $zSavedContext = sp + 12|0; - $pX = sp + 8|0; - $pItem1 = sp + 4|0; - HEAP32[$1>>2] = $pWalker; - HEAP32[$2>>2] = $p; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 6|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5&65535; - $7 = $6 & 2; - $8 = ($7|0)!=(0); - if ($8) { - HEAP32[$0>>2] = 1; - $265 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($265|0); - } - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 20|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$pOuterNC>>2] = $11; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 12|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$pParse>>2] = $14; - $15 = HEAP32[$pParse>>2]|0; - $16 = HEAP32[$15>>2]|0; - HEAP32[$db>>2] = $16; - $17 = HEAP32[$2>>2]|0; - $18 = (($17) + 6|0); - $19 = HEAP16[$18>>1]|0; - $20 = $19&65535; - $21 = $20 & 16; - $22 = ($21|0)==(0); - if ($22) { - $23 = HEAP32[$pParse>>2]|0; - $24 = HEAP32[$2>>2]|0; - $25 = HEAP32[$pOuterNC>>2]|0; - _sqlite3SelectPrep($23,$24,$25); - $26 = HEAP32[$pParse>>2]|0; - $27 = (($26) + 64|0); - $28 = HEAP32[$27>>2]|0; - $29 = ($28|0)!=(0); - if ($29) { - $36 = 1; - } else { - $30 = HEAP32[$db>>2]|0; - $31 = (($30) + 64|0); - $32 = HEAP8[$31>>0]|0; - $33 = $32&255; - $34 = ($33|0)!=(0); - $36 = $34; - } - $35 = $36 ? 2 : 1; - HEAP32[$0>>2] = $35; - $265 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($265|0); - } - $37 = HEAP32[$2>>2]|0; - $38 = (($37) + 52|0); - $39 = HEAP32[$38>>2]|0; - $40 = ($39|0)!=(0|0); - $41 = $40&1; - HEAP32[$isCompound>>2] = $41; - HEAP32[$nCompound>>2] = 0; - $42 = HEAP32[$2>>2]|0; - HEAP32[$pLeftmost>>2] = $42; - L12: while(1) { - $43 = HEAP32[$2>>2]|0; - $44 = ($43|0)!=(0|0); - if (!($44)) { - label = 59; - break; - } - $45 = HEAP32[$2>>2]|0; - $46 = (($45) + 6|0); - $47 = HEAP16[$46>>1]|0; - $48 = $47&65535; - $49 = $48 | 2; - $50 = $49&65535; - HEAP16[$46>>1] = $50; - ;HEAP32[$sNC+0>>2]=0|0;HEAP32[$sNC+4>>2]=0|0;HEAP32[$sNC+8>>2]=0|0;HEAP32[$sNC+12>>2]=0|0;HEAP32[$sNC+16>>2]=0|0;HEAP32[$sNC+20>>2]=0|0;HEAP32[$sNC+24>>2]=0|0;HEAP32[$sNC+28>>2]=0|0; - $51 = HEAP32[$pParse>>2]|0; - HEAP32[$sNC>>2] = $51; - $52 = HEAP32[$2>>2]|0; - $53 = (($52) + 60|0); - $54 = HEAP32[$53>>2]|0; - $55 = (_sqlite3ResolveExprNames($sNC,$54)|0); - $56 = ($55|0)!=(0); - if ($56) { - label = 11; - break; - } - $57 = HEAP32[$2>>2]|0; - $58 = (($57) + 64|0); - $59 = HEAP32[$58>>2]|0; - $60 = (_sqlite3ResolveExprNames($sNC,$59)|0); - $61 = ($60|0)!=(0); - if ($61) { - label = 11; - break; - } - HEAP32[$i>>2] = 0; - while(1) { - $62 = HEAP32[$i>>2]|0; - $63 = HEAP32[$2>>2]|0; - $64 = (($63) + 32|0); - $65 = HEAP32[$64>>2]|0; - $66 = HEAP32[$65>>2]|0; - $67 = ($62|0)<($66|0); - if (!($67)) { - break; - } - $68 = HEAP32[$i>>2]|0; - $69 = HEAP32[$2>>2]|0; - $70 = (($69) + 32|0); - $71 = HEAP32[$70>>2]|0; - $72 = (($71) + 8|0); - $73 = (($72) + (($68*72)|0)|0); - HEAP32[$pItem>>2] = $73; - $74 = HEAP32[$pItem>>2]|0; - $75 = (($74) + 20|0); - $76 = HEAP32[$75>>2]|0; - $77 = ($76|0)!=(0|0); - if ($77) { - HEAP32[$nRef>>2] = 0; - $78 = HEAP32[$pParse>>2]|0; - $79 = (($78) + 492|0); - $80 = HEAP32[$79>>2]|0; - HEAP32[$zSavedContext>>2] = $80; - $81 = HEAP32[$pOuterNC>>2]|0; - HEAP32[$pNC>>2] = $81; - while(1) { - $82 = HEAP32[$pNC>>2]|0; - $83 = ($82|0)!=(0|0); - if (!($83)) { - break; - } - $84 = HEAP32[$pNC>>2]|0; - $85 = (($84) + 20|0); - $86 = HEAP32[$85>>2]|0; - $87 = HEAP32[$nRef>>2]|0; - $88 = (($87) + ($86))|0; - HEAP32[$nRef>>2] = $88; - $89 = HEAP32[$pNC>>2]|0; - $90 = (($89) + 16|0); - $91 = HEAP32[$90>>2]|0; - HEAP32[$pNC>>2] = $91; - } - $92 = HEAP32[$pItem>>2]|0; - $93 = (($92) + 8|0); - $94 = HEAP32[$93>>2]|0; - $95 = ($94|0)!=(0|0); - if ($95) { - $96 = HEAP32[$pItem>>2]|0; - $97 = (($96) + 8|0); - $98 = HEAP32[$97>>2]|0; - $99 = HEAP32[$pParse>>2]|0; - $100 = (($99) + 492|0); - HEAP32[$100>>2] = $98; - } - $101 = HEAP32[$pParse>>2]|0; - $102 = HEAP32[$pItem>>2]|0; - $103 = (($102) + 20|0); - $104 = HEAP32[$103>>2]|0; - $105 = HEAP32[$pOuterNC>>2]|0; - _sqlite3ResolveSelectNames($101,$104,$105); - $106 = HEAP32[$zSavedContext>>2]|0; - $107 = HEAP32[$pParse>>2]|0; - $108 = (($107) + 492|0); - HEAP32[$108>>2] = $106; - $109 = HEAP32[$pParse>>2]|0; - $110 = (($109) + 64|0); - $111 = HEAP32[$110>>2]|0; - $112 = ($111|0)!=(0); - if ($112) { - label = 22; - break L12; - } - $113 = HEAP32[$db>>2]|0; - $114 = (($113) + 64|0); - $115 = HEAP8[$114>>0]|0; - $116 = $115&255; - $117 = ($116|0)!=(0); - if ($117) { - label = 22; - break L12; - } - $118 = HEAP32[$pOuterNC>>2]|0; - HEAP32[$pNC>>2] = $118; - while(1) { - $119 = HEAP32[$pNC>>2]|0; - $120 = ($119|0)!=(0|0); - if (!($120)) { - break; - } - $121 = HEAP32[$pNC>>2]|0; - $122 = (($121) + 20|0); - $123 = HEAP32[$122>>2]|0; - $124 = HEAP32[$nRef>>2]|0; - $125 = (($124) - ($123))|0; - HEAP32[$nRef>>2] = $125; - $126 = HEAP32[$pNC>>2]|0; - $127 = (($126) + 16|0); - $128 = HEAP32[$127>>2]|0; - HEAP32[$pNC>>2] = $128; - } - $129 = HEAP32[$nRef>>2]|0; - $130 = ($129|0)!=(0); - $131 = $130&1; - $132 = HEAP32[$pItem>>2]|0; - $133 = (($132) + 37|0); - $134 = $131&255; - $135 = HEAP8[$133>>0]|0; - $136 = $134 & 1; - $137 = ($136 << 1)&255; - $138 = $135 & -3; - $139 = $138 | $137; - HEAP8[$133>>0] = $139; - } - $140 = HEAP32[$i>>2]|0; - $141 = (($140) + 1)|0; - HEAP32[$i>>2] = $141; - } - $142 = (($sNC) + 28|0); - HEAP8[$142>>0] = 1; - $143 = HEAP32[$2>>2]|0; - $144 = (($143) + 32|0); - $145 = HEAP32[$144>>2]|0; - $146 = (($sNC) + 4|0); - HEAP32[$146>>2] = $145; - $147 = HEAP32[$pOuterNC>>2]|0; - $148 = (($sNC) + 16|0); - HEAP32[$148>>2] = $147; - $149 = HEAP32[$2>>2]|0; - $150 = HEAP32[$149>>2]|0; - HEAP32[$pEList>>2] = $150; - HEAP32[$i>>2] = 0; - while(1) { - $151 = HEAP32[$i>>2]|0; - $152 = HEAP32[$pEList>>2]|0; - $153 = HEAP32[$152>>2]|0; - $154 = ($151|0)<($153|0); - if (!($154)) { - break; - } - $155 = HEAP32[$i>>2]|0; - $156 = HEAP32[$pEList>>2]|0; - $157 = (($156) + 4|0); - $158 = HEAP32[$157>>2]|0; - $159 = (($158) + (($155*20)|0)|0); - $160 = HEAP32[$159>>2]|0; - HEAP32[$pX>>2] = $160; - $161 = HEAP32[$pX>>2]|0; - $162 = (_sqlite3ResolveExprNames($sNC,$161)|0); - $163 = ($162|0)!=(0); - if ($163) { - label = 31; - break L12; - } - $164 = HEAP32[$i>>2]|0; - $165 = (($164) + 1)|0; - HEAP32[$i>>2] = $165; - } - $166 = HEAP32[$2>>2]|0; - $167 = (($166) + 40|0); - $168 = HEAP32[$167>>2]|0; - HEAP32[$pGroupBy>>2] = $168; - $169 = HEAP32[$pGroupBy>>2]|0; - $170 = ($169|0)!=(0|0); - if ($170) { - label = 35; - } else { - $171 = (($sNC) + 28|0); - $172 = HEAP8[$171>>0]|0; - $173 = $172&255; - $174 = $173 & 2; - $175 = ($174|0)!=(0); - if ($175) { - label = 35; - } else { - $182 = (($sNC) + 28|0); - $183 = HEAP8[$182>>0]|0; - $184 = $183&255; - $185 = $184 & -2; - $186 = $185&255; - HEAP8[$182>>0] = $186; - } - } - if ((label|0) == 35) { - label = 0; - $176 = HEAP32[$2>>2]|0; - $177 = (($176) + 6|0); - $178 = HEAP16[$177>>1]|0; - $179 = $178&65535; - $180 = $179 | 4; - $181 = $180&65535; - HEAP16[$177>>1] = $181; - } - $187 = HEAP32[$2>>2]|0; - $188 = (($187) + 44|0); - $189 = HEAP32[$188>>2]|0; - $190 = ($189|0)!=(0|0); - if ($190) { - $191 = HEAP32[$pGroupBy>>2]|0; - $192 = ($191|0)!=(0|0); - if (!($192)) { - label = 39; - break; - } - } - $194 = HEAP32[$2>>2]|0; - $195 = HEAP32[$194>>2]|0; - $196 = (($sNC) + 8|0); - HEAP32[$196>>2] = $195; - $197 = HEAP32[$2>>2]|0; - $198 = (($197) + 44|0); - $199 = HEAP32[$198>>2]|0; - $200 = (_sqlite3ResolveExprNames($sNC,$199)|0); - $201 = ($200|0)!=(0); - if ($201) { - label = 41; - break; - } - $202 = HEAP32[$2>>2]|0; - $203 = (($202) + 36|0); - $204 = HEAP32[$203>>2]|0; - $205 = (_sqlite3ResolveExprNames($sNC,$204)|0); - $206 = ($205|0)!=(0); - if ($206) { - label = 43; - break; - } - $207 = (($sNC) + 16|0); - HEAP32[$207>>2] = 0; - $208 = (($sNC) + 28|0); - $209 = HEAP8[$208>>0]|0; - $210 = $209&255; - $211 = $210 | 1; - $212 = $211&255; - HEAP8[$208>>0] = $212; - $213 = HEAP32[$isCompound>>2]|0; - $214 = ($213|0)!=(0); - if (!($214)) { - $215 = HEAP32[$2>>2]|0; - $216 = HEAP32[$2>>2]|0; - $217 = (($216) + 48|0); - $218 = HEAP32[$217>>2]|0; - $219 = (_resolveOrderGroupBy($sNC,$215,$218,16384)|0); - $220 = ($219|0)!=(0); - if ($220) { - label = 46; - break; - } - } - $221 = HEAP32[$db>>2]|0; - $222 = (($221) + 64|0); - $223 = HEAP8[$222>>0]|0; - $224 = ($223<<24>>24)!=(0); - if ($224) { - label = 48; - break; - } - $225 = HEAP32[$pGroupBy>>2]|0; - $226 = ($225|0)!=(0|0); - L57: do { - if ($226) { - $227 = HEAP32[$2>>2]|0; - $228 = HEAP32[$pGroupBy>>2]|0; - $229 = (_resolveOrderGroupBy($sNC,$227,$228,16392)|0); - $230 = ($229|0)!=(0); - if ($230) { - label = 52; - break L12; - } - $231 = HEAP32[$db>>2]|0; - $232 = (($231) + 64|0); - $233 = HEAP8[$232>>0]|0; - $234 = $233&255; - $235 = ($234|0)!=(0); - if ($235) { - label = 52; - break L12; - } - HEAP32[$i>>2] = 0; - $236 = HEAP32[$pGroupBy>>2]|0; - $237 = (($236) + 4|0); - $238 = HEAP32[$237>>2]|0; - HEAP32[$pItem1>>2] = $238; - while(1) { - $239 = HEAP32[$i>>2]|0; - $240 = HEAP32[$pGroupBy>>2]|0; - $241 = HEAP32[$240>>2]|0; - $242 = ($239|0)<($241|0); - if (!($242)) { - break L57; - } - $243 = HEAP32[$pItem1>>2]|0; - $244 = HEAP32[$243>>2]|0; - $245 = (($244) + 4|0); - $246 = HEAP32[$245>>2]|0; - $247 = $246 & 2; - $248 = ($247|0)!=(0); - if ($248) { - label = 56; - break L12; - } - $250 = HEAP32[$i>>2]|0; - $251 = (($250) + 1)|0; - HEAP32[$i>>2] = $251; - $252 = HEAP32[$pItem1>>2]|0; - $253 = (($252) + 20|0); - HEAP32[$pItem1>>2] = $253; - } - } - } while(0); - $254 = HEAP32[$2>>2]|0; - $255 = (($254) + 52|0); - $256 = HEAP32[$255>>2]|0; - HEAP32[$2>>2] = $256; - $257 = HEAP32[$nCompound>>2]|0; - $258 = (($257) + 1)|0; - HEAP32[$nCompound>>2] = $258; - } - switch (label|0) { - case 11: { - HEAP32[$0>>2] = 2; - $265 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($265|0); - break; - } - case 22: { - HEAP32[$0>>2] = 2; - $265 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($265|0); - break; - } - case 31: { - HEAP32[$0>>2] = 2; - $265 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($265|0); - break; - } - case 39: { - $193 = HEAP32[$pParse>>2]|0; - _sqlite3ErrorMsg($193,16336,$vararg_buffer1); - HEAP32[$0>>2] = 2; - $265 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($265|0); - break; - } - case 41: { - HEAP32[$0>>2] = 2; - $265 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($265|0); - break; - } - case 43: { - HEAP32[$0>>2] = 2; - $265 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($265|0); - break; - } - case 46: { - HEAP32[$0>>2] = 2; - $265 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($265|0); - break; - } - case 48: { - HEAP32[$0>>2] = 2; - $265 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($265|0); - break; - } - case 52: { - HEAP32[$0>>2] = 2; - $265 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($265|0); - break; - } - case 56: { - $249 = HEAP32[$pParse>>2]|0; - _sqlite3ErrorMsg($249,16400,$vararg_buffer1); - HEAP32[$0>>2] = 2; - $265 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($265|0); - break; - } - case 59: { - $259 = HEAP32[$isCompound>>2]|0; - $260 = ($259|0)!=(0); - if ($260) { - $261 = HEAP32[$pParse>>2]|0; - $262 = HEAP32[$pLeftmost>>2]|0; - $263 = (_resolveCompoundOrderBy($261,$262)|0); - $264 = ($263|0)!=(0); - if ($264) { - HEAP32[$0>>2] = 2; - $265 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($265|0); - } - } - HEAP32[$0>>2] = 1; - $265 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($265|0); - break; - } - } - return 0|0; -} -function _sqlite3ResolveExprNames($pNC,$pExpr) { - $pNC = $pNC|0; - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $pParse = 0, $savedHasAgg = 0, $w = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $savedHasAgg = sp + 44|0; - $w = sp + 8|0; - $pParse = sp; - HEAP32[$1>>2] = $pNC; - HEAP32[$2>>2] = $pExpr; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - HEAP32[$0>>2] = 0; - $89 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($89|0); - } - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$pParse>>2] = $6; - $7 = HEAP32[$pParse>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + 24|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + 460|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($10) + ($14))|0; - $16 = (_sqlite3ExprCheckHeight($7,$15)|0); - $17 = ($16|0)!=(0); - if ($17) { - HEAP32[$0>>2] = 1; - $89 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($89|0); - } - $18 = HEAP32[$2>>2]|0; - $19 = (($18) + 24|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$pParse>>2]|0; - $22 = (($21) + 460|0); - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + ($20))|0; - HEAP32[$22>>2] = $24; - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 28|0); - $27 = HEAP8[$26>>0]|0; - $28 = $27&255; - $29 = $28 & 2; - $30 = $29&255; - HEAP8[$savedHasAgg>>0] = $30; - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 28|0); - $33 = HEAP8[$32>>0]|0; - $34 = $33&255; - $35 = $34 & -3; - $36 = $35&255; - HEAP8[$32>>0] = $36; - ;HEAP32[$w+0>>2]=0|0;HEAP32[$w+4>>2]=0|0;HEAP32[$w+8>>2]=0|0;HEAP32[$w+12>>2]=0|0;HEAP32[$w+16>>2]=0|0;HEAP32[$w+20>>2]=0|0; - HEAP32[$w>>2] = 39; - $37 = (($w) + 4|0); - HEAP32[$37>>2] = 40; - $38 = HEAP32[$1>>2]|0; - $39 = HEAP32[$38>>2]|0; - $40 = (($w) + 12|0); - HEAP32[$40>>2] = $39; - $41 = HEAP32[$1>>2]|0; - $42 = (($w) + 20|0); - HEAP32[$42>>2] = $41; - $43 = HEAP32[$2>>2]|0; - (_sqlite3WalkExpr($w,$43)|0); - $44 = HEAP32[$2>>2]|0; - $45 = (($44) + 24|0); - $46 = HEAP32[$45>>2]|0; - $47 = HEAP32[$1>>2]|0; - $48 = HEAP32[$47>>2]|0; - $49 = (($48) + 460|0); - $50 = HEAP32[$49>>2]|0; - $51 = (($50) - ($46))|0; - HEAP32[$49>>2] = $51; - $52 = HEAP32[$1>>2]|0; - $53 = (($52) + 24|0); - $54 = HEAP32[$53>>2]|0; - $55 = ($54|0)>(0); - if ($55) { - label = 7; - } else { - $56 = (($w) + 12|0); - $57 = HEAP32[$56>>2]|0; - $58 = (($57) + 64|0); - $59 = HEAP32[$58>>2]|0; - $60 = ($59|0)>(0); - if ($60) { - label = 7; - } - } - if ((label|0) == 7) { - $61 = HEAP32[$2>>2]|0; - $62 = (($61) + 4|0); - $63 = HEAP32[$62>>2]|0; - $64 = $63 | 8; - HEAP32[$62>>2] = $64; - } - $65 = HEAP32[$1>>2]|0; - $66 = (($65) + 28|0); - $67 = HEAP8[$66>>0]|0; - $68 = $67&255; - $69 = $68 & 2; - $70 = ($69|0)!=(0); - if ($70) { - $71 = HEAP32[$2>>2]|0; - $72 = (($71) + 4|0); - $73 = HEAP32[$72>>2]|0; - $74 = $73 | 2; - HEAP32[$72>>2] = $74; - } else { - $75 = HEAP8[$savedHasAgg>>0]|0; - $76 = ($75<<24>>24)!=(0); - if ($76) { - $77 = HEAP32[$1>>2]|0; - $78 = (($77) + 28|0); - $79 = HEAP8[$78>>0]|0; - $80 = $79&255; - $81 = $80 | 2; - $82 = $81&255; - HEAP8[$78>>0] = $82; - } - } - $83 = HEAP32[$2>>2]|0; - $84 = (($83) + 4|0); - $85 = HEAP32[$84>>2]|0; - $86 = $85 & 8; - $87 = ($86|0)!=(0); - $88 = $87&1; - HEAP32[$0>>2] = $88; - $89 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($89|0); -} -function _resolveOrderGroupBy($pNC,$pSelect,$pOrderBy,$zType) { - $pNC = $pNC|0; - $pSelect = $pSelect|0; - $pOrderBy = $pOrderBy|0; - $zType = $zType|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $i = 0, $iCol = 0, $j = 0, $nResult = 0, $or$cond = 0, $pE = 0, $pE2 = 0, $pItem = 0; - var $pParse = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 48|0; - $1 = sp + 44|0; - $2 = sp + 40|0; - $3 = sp + 36|0; - $4 = sp + 32|0; - $i = sp + 28|0; - $j = sp + 24|0; - $iCol = sp + 20|0; - $pItem = sp + 16|0; - $pParse = sp + 12|0; - $nResult = sp + 8|0; - $pE = sp + 4|0; - $pE2 = sp; - HEAP32[$1>>2] = $pNC; - HEAP32[$2>>2] = $pSelect; - HEAP32[$3>>2] = $pOrderBy; - HEAP32[$4>>2] = $zType; - $5 = HEAP32[$3>>2]|0; - $6 = ($5|0)==(0|0); - if ($6) { - HEAP32[$0>>2] = 0; - $91 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($91|0); - } - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$8>>2]|0; - HEAP32[$nResult>>2] = $9; - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$10>>2]|0; - HEAP32[$pParse>>2] = $11; - HEAP32[$i>>2] = 0; - $12 = HEAP32[$3>>2]|0; - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$pItem>>2] = $14; - L5: while(1) { - $15 = HEAP32[$i>>2]|0; - $16 = HEAP32[$3>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = ($15|0)<($17|0); - if (!($18)) { - label = 20; - break; - } - $19 = HEAP32[$pItem>>2]|0; - $20 = HEAP32[$19>>2]|0; - HEAP32[$pE>>2] = $20; - $21 = HEAP32[$pE>>2]|0; - $22 = (_sqlite3ExprSkipCollate($21)|0); - HEAP32[$pE2>>2] = $22; - $23 = HEAP32[$4>>2]|0; - $24 = HEAP8[$23>>0]|0; - $25 = $24 << 24 >> 24; - $26 = ($25|0)!=(71); - if ($26) { - $27 = HEAP32[$pParse>>2]|0; - $28 = HEAP32[$2>>2]|0; - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$pE2>>2]|0; - $31 = (_resolveAsName($27,$29,$30)|0); - HEAP32[$iCol>>2] = $31; - $32 = HEAP32[$iCol>>2]|0; - $33 = ($32|0)>(0); - if ($33) { - $34 = HEAP32[$iCol>>2]|0; - $35 = $34&65535; - $36 = HEAP32[$pItem>>2]|0; - $37 = (($36) + 16|0); - HEAP16[$37>>1] = $35; - } else { - label = 8; - } - } else { - label = 8; - } - L11: do { - if ((label|0) == 8) { - label = 0; - $38 = HEAP32[$pE2>>2]|0; - $39 = (_sqlite3ExprIsInteger($38,$iCol)|0); - $40 = ($39|0)!=(0); - if ($40) { - $41 = HEAP32[$iCol>>2]|0; - $42 = ($41|0)<(1); - $43 = HEAP32[$iCol>>2]|0; - $44 = ($43|0)>(65535); - $or$cond = $42 | $44; - if ($or$cond) { - label = 10; - break L5; - } - $50 = HEAP32[$iCol>>2]|0; - $51 = $50&65535; - $52 = HEAP32[$pItem>>2]|0; - $53 = (($52) + 16|0); - HEAP16[$53>>1] = $51; - break; - } - $54 = HEAP32[$pItem>>2]|0; - $55 = (($54) + 16|0); - HEAP16[$55>>1] = 0; - $56 = HEAP32[$1>>2]|0; - $57 = HEAP32[$pE>>2]|0; - $58 = (_sqlite3ResolveExprNames($56,$57)|0); - $59 = ($58|0)!=(0); - if ($59) { - label = 13; - break L5; - } - HEAP32[$j>>2] = 0; - while(1) { - $60 = HEAP32[$j>>2]|0; - $61 = HEAP32[$2>>2]|0; - $62 = HEAP32[$61>>2]|0; - $63 = HEAP32[$62>>2]|0; - $64 = ($60|0)<($63|0); - if (!($64)) { - break L11; - } - $65 = HEAP32[$pE>>2]|0; - $66 = HEAP32[$j>>2]|0; - $67 = HEAP32[$2>>2]|0; - $68 = HEAP32[$67>>2]|0; - $69 = (($68) + 4|0); - $70 = HEAP32[$69>>2]|0; - $71 = (($70) + (($66*20)|0)|0); - $72 = HEAP32[$71>>2]|0; - $73 = (_sqlite3ExprCompare($65,$72,-1)|0); - $74 = ($73|0)==(0); - if ($74) { - $75 = HEAP32[$j>>2]|0; - $76 = (($75) + 1)|0; - $77 = $76&65535; - $78 = HEAP32[$pItem>>2]|0; - $79 = (($78) + 16|0); - HEAP16[$79>>1] = $77; - } - $80 = HEAP32[$j>>2]|0; - $81 = (($80) + 1)|0; - HEAP32[$j>>2] = $81; - } - } - } while(0); - $82 = HEAP32[$i>>2]|0; - $83 = (($82) + 1)|0; - HEAP32[$i>>2] = $83; - $84 = HEAP32[$pItem>>2]|0; - $85 = (($84) + 20|0); - HEAP32[$pItem>>2] = $85; - } - if ((label|0) == 10) { - $45 = HEAP32[$pParse>>2]|0; - $46 = HEAP32[$4>>2]|0; - $47 = HEAP32[$i>>2]|0; - $48 = (($47) + 1)|0; - $49 = HEAP32[$nResult>>2]|0; - _resolveOutOfRangeError($45,$46,$48,$49); - HEAP32[$0>>2] = 1; - $91 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($91|0); - } - else if ((label|0) == 13) { - HEAP32[$0>>2] = 1; - $91 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($91|0); - } - else if ((label|0) == 20) { - $86 = HEAP32[$pParse>>2]|0; - $87 = HEAP32[$2>>2]|0; - $88 = HEAP32[$3>>2]|0; - $89 = HEAP32[$4>>2]|0; - $90 = (_sqlite3ResolveOrderGroupBy($86,$87,$88,$89)|0); - HEAP32[$0>>2] = $90; - $91 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($91|0); - } - return 0|0; -} -function _resolveCompoundOrderBy($pParse,$pSelect) { - $pParse = $pParse|0; - $pSelect = $pSelect|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $db = 0, $i = 0, $iCol = 0, $moreToDo = 0, $pDup = 0, $pE = 0, $pEList = 0, $pItem = 0, $pNew = 0, $pOrderBy = 0, $vararg_buffer1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer1 = sp; - $0 = sp + 52|0; - $1 = sp + 48|0; - $2 = sp + 44|0; - $i = sp + 40|0; - $pOrderBy = sp + 36|0; - $pEList = sp + 32|0; - $db = sp + 28|0; - $moreToDo = sp + 24|0; - $pItem = sp + 20|0; - $iCol = sp + 16|0; - $pE = sp + 12|0; - $pDup = sp + 8|0; - $pNew = sp + 4|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pSelect; - HEAP32[$moreToDo>>2] = 1; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 48|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pOrderBy>>2] = $5; - $6 = HEAP32[$pOrderBy>>2]|0; - $7 = ($6|0)==(0|0); - if ($7) { - HEAP32[$0>>2] = 0; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$8>>2]|0; - HEAP32[$db>>2] = $9; - $10 = HEAP32[$pOrderBy>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$db>>2]|0; - $13 = (($12) + 88|0); - $14 = (($13) + 8|0); - $15 = HEAP32[$14>>2]|0; - $16 = ($11|0)>($15|0); - if ($16) { - $17 = HEAP32[$1>>2]|0; - _sqlite3ErrorMsg($17,16464,$vararg_buffer1); - HEAP32[$0>>2] = 1; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $18 = HEAP32[$i>>2]|0; - $19 = HEAP32[$pOrderBy>>2]|0; - $20 = HEAP32[$19>>2]|0; - $21 = ($18|0)<($20|0); - if (!($21)) { - break; - } - $22 = HEAP32[$i>>2]|0; - $23 = HEAP32[$pOrderBy>>2]|0; - $24 = (($23) + 4|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + (($22*20)|0)|0); - $27 = (($26) + 13|0); - $28 = HEAP8[$27>>0]|0; - $29 = $28 & -2; - HEAP8[$27>>0] = $29; - $30 = HEAP32[$i>>2]|0; - $31 = (($30) + 1)|0; - HEAP32[$i>>2] = $31; - } - $32 = HEAP32[$2>>2]|0; - $33 = (($32) + 56|0); - HEAP32[$33>>2] = 0; - while(1) { - $34 = HEAP32[$2>>2]|0; - $35 = (($34) + 52|0); - $36 = HEAP32[$35>>2]|0; - $37 = ($36|0)!=(0|0); - if (!($37)) { - break; - } - $38 = HEAP32[$2>>2]|0; - $39 = HEAP32[$2>>2]|0; - $40 = (($39) + 52|0); - $41 = HEAP32[$40>>2]|0; - $42 = (($41) + 56|0); - HEAP32[$42>>2] = $38; - $43 = HEAP32[$2>>2]|0; - $44 = (($43) + 52|0); - $45 = HEAP32[$44>>2]|0; - HEAP32[$2>>2] = $45; - } - L16: while(1) { - $46 = HEAP32[$2>>2]|0; - $47 = ($46|0)!=(0|0); - if (!($47)) { - label = 34; - break; - } - $48 = HEAP32[$moreToDo>>2]|0; - $49 = ($48|0)!=(0); - if (!($49)) { - label = 34; - break; - } - HEAP32[$moreToDo>>2] = 0; - $50 = HEAP32[$2>>2]|0; - $51 = HEAP32[$50>>2]|0; - HEAP32[$pEList>>2] = $51; - HEAP32[$i>>2] = 0; - $52 = HEAP32[$pOrderBy>>2]|0; - $53 = (($52) + 4|0); - $54 = HEAP32[$53>>2]|0; - HEAP32[$pItem>>2] = $54; - while(1) { - $55 = HEAP32[$i>>2]|0; - $56 = HEAP32[$pOrderBy>>2]|0; - $57 = HEAP32[$56>>2]|0; - $58 = ($55|0)<($57|0); - if (!($58)) { - break; - } - HEAP32[$iCol>>2] = -1; - $59 = HEAP32[$pItem>>2]|0; - $60 = (($59) + 13|0); - $61 = HEAP8[$60>>0]|0; - $62 = $61 & 1; - $63 = $62&255; - $64 = ($63|0)!=(0); - do { - if (!($64)) { - $65 = HEAP32[$pItem>>2]|0; - $66 = HEAP32[$65>>2]|0; - $67 = (_sqlite3ExprSkipCollate($66)|0); - HEAP32[$pE>>2] = $67; - $68 = HEAP32[$pE>>2]|0; - $69 = (_sqlite3ExprIsInteger($68,$iCol)|0); - $70 = ($69|0)!=(0); - if ($70) { - $71 = HEAP32[$iCol>>2]|0; - $72 = ($71|0)<=(0); - if ($72) { - label = 19; - break L16; - } - $73 = HEAP32[$iCol>>2]|0; - $74 = HEAP32[$pEList>>2]|0; - $75 = HEAP32[$74>>2]|0; - $76 = ($73|0)>($75|0); - if ($76) { - label = 19; - break L16; - } - } else { - $82 = HEAP32[$1>>2]|0; - $83 = HEAP32[$pEList>>2]|0; - $84 = HEAP32[$pE>>2]|0; - $85 = (_resolveAsName($82,$83,$84)|0); - HEAP32[$iCol>>2] = $85; - $86 = HEAP32[$iCol>>2]|0; - $87 = ($86|0)==(0); - if ($87) { - $88 = HEAP32[$db>>2]|0; - $89 = HEAP32[$pE>>2]|0; - $90 = (_sqlite3ExprDup($88,$89,0)|0); - HEAP32[$pDup>>2] = $90; - $91 = HEAP32[$db>>2]|0; - $92 = (($91) + 64|0); - $93 = HEAP8[$92>>0]|0; - $94 = ($93<<24>>24)!=(0); - if (!($94)) { - $95 = HEAP32[$1>>2]|0; - $96 = HEAP32[$2>>2]|0; - $97 = HEAP32[$pDup>>2]|0; - $98 = (_resolveOrderByTermToExprList($95,$96,$97)|0); - HEAP32[$iCol>>2] = $98; - } - $99 = HEAP32[$db>>2]|0; - $100 = HEAP32[$pDup>>2]|0; - _sqlite3ExprDelete($99,$100); - } - } - $101 = HEAP32[$iCol>>2]|0; - $102 = ($101|0)>(0); - if (!($102)) { - HEAP32[$moreToDo>>2] = 1; - break; - } - $103 = HEAP32[$db>>2]|0; - $104 = (_sqlite3Expr($103,132,0)|0); - HEAP32[$pNew>>2] = $104; - $105 = HEAP32[$pNew>>2]|0; - $106 = ($105|0)==(0|0); - if ($106) { - label = 26; - break L16; - } - $107 = HEAP32[$pNew>>2]|0; - $108 = (($107) + 4|0); - $109 = HEAP32[$108>>2]|0; - $110 = $109 | 1024; - HEAP32[$108>>2] = $110; - $111 = HEAP32[$iCol>>2]|0; - $112 = HEAP32[$pNew>>2]|0; - $113 = (($112) + 8|0); - HEAP32[$113>>2] = $111; - $114 = HEAP32[$pItem>>2]|0; - $115 = HEAP32[$114>>2]|0; - $116 = HEAP32[$pE>>2]|0; - $117 = ($115|0)==($116|0); - $118 = HEAP32[$pNew>>2]|0; - $119 = HEAP32[$pItem>>2]|0; - if ($117) { - HEAP32[$119>>2] = $118; - } else { - $120 = HEAP32[$119>>2]|0; - $121 = (($120) + 12|0); - HEAP32[$121>>2] = $118; - } - $122 = HEAP32[$db>>2]|0; - $123 = HEAP32[$pE>>2]|0; - _sqlite3ExprDelete($122,$123); - $124 = HEAP32[$iCol>>2]|0; - $125 = $124&65535; - $126 = HEAP32[$pItem>>2]|0; - $127 = (($126) + 16|0); - HEAP16[$127>>1] = $125; - $128 = HEAP32[$pItem>>2]|0; - $129 = (($128) + 13|0); - $130 = HEAP8[$129>>0]|0; - $131 = $130 & -2; - $132 = $131 | 1; - HEAP8[$129>>0] = $132; - } - } while(0); - $133 = HEAP32[$i>>2]|0; - $134 = (($133) + 1)|0; - HEAP32[$i>>2] = $134; - $135 = HEAP32[$pItem>>2]|0; - $136 = (($135) + 20|0); - HEAP32[$pItem>>2] = $136; - } - $137 = HEAP32[$2>>2]|0; - $138 = (($137) + 56|0); - $139 = HEAP32[$138>>2]|0; - HEAP32[$2>>2] = $139; - } - if ((label|0) == 19) { - $77 = HEAP32[$1>>2]|0; - $78 = HEAP32[$i>>2]|0; - $79 = (($78) + 1)|0; - $80 = HEAP32[$pEList>>2]|0; - $81 = HEAP32[$80>>2]|0; - _resolveOutOfRangeError($77,16384,$79,$81); - HEAP32[$0>>2] = 1; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - else if ((label|0) == 26) { - HEAP32[$0>>2] = 1; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - else if ((label|0) == 34) { - HEAP32[$i>>2] = 0; - while(1) { - $140 = HEAP32[$i>>2]|0; - $141 = HEAP32[$pOrderBy>>2]|0; - $142 = HEAP32[$141>>2]|0; - $143 = ($140|0)<($142|0); - if (!($143)) { - label = 39; - break; - } - $144 = HEAP32[$i>>2]|0; - $145 = HEAP32[$pOrderBy>>2]|0; - $146 = (($145) + 4|0); - $147 = HEAP32[$146>>2]|0; - $148 = (($147) + (($144*20)|0)|0); - $149 = (($148) + 13|0); - $150 = HEAP8[$149>>0]|0; - $151 = $150 & 1; - $152 = $151&255; - $153 = ($152|0)==(0); - if ($153) { - label = 37; - break; - } - $157 = HEAP32[$i>>2]|0; - $158 = (($157) + 1)|0; - HEAP32[$i>>2] = $158; - } - if ((label|0) == 37) { - $154 = HEAP32[$1>>2]|0; - $155 = HEAP32[$i>>2]|0; - $156 = (($155) + 1)|0; - HEAP32[$vararg_buffer1>>2] = $156; - _sqlite3ErrorMsg($154,16504,$vararg_buffer1); - HEAP32[$0>>2] = 1; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - else if ((label|0) == 39) { - HEAP32[$0>>2] = 0; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - } - return 0|0; -} -function _sqlite3ExprIsInteger($p,$pValue) { - $p = $p|0; - $pValue = $pValue|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $rc = sp + 4|0; - $v = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $pValue; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 4|0); - $5 = HEAP32[$4>>2]|0; - $6 = $5 & 1024; - $7 = ($6|0)!=(0); - $8 = HEAP32[$1>>2]|0; - if ($7) { - $9 = (($8) + 8|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$2>>2]|0; - HEAP32[$11>>2] = $10; - HEAP32[$0>>2] = 1; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); - } - $12 = HEAP8[$8>>0]|0; - $13 = $12&255; - if ((($13|0) == 157)) { - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 12|0); - $21 = HEAP32[$20>>2]|0; - $22 = (_sqlite3ExprIsInteger($21,$v)|0); - $23 = ($22|0)!=(0); - if ($23) { - $24 = HEAP32[$v>>2]|0; - $25 = (0 - ($24))|0; - $26 = HEAP32[$2>>2]|0; - HEAP32[$26>>2] = $25; - HEAP32[$rc>>2] = 1; - } - } else if ((($13|0) == 158)) { - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 12|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = (_sqlite3ExprIsInteger($16,$17)|0); - HEAP32[$rc>>2] = $18; - } - $27 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $27; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); -} -function _resolveOutOfRangeError($pParse,$zType,$i,$mx) { - $pParse = $pParse|0; - $zType = $zType|0; - $i = $i|0; - $mx = $mx|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $zType; - HEAP32[$2>>2] = $i; - HEAP32[$3>>2] = $mx; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$3>>2]|0; - HEAP32[$vararg_buffer>>2] = $5; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $6; - $vararg_ptr2 = (($vararg_buffer) + 8|0); - HEAP32[$vararg_ptr2>>2] = $7; - _sqlite3ErrorMsg($4,16568,$vararg_buffer); - STACKTOP = sp;return; -} -function _resolveAsName($pParse,$pEList,$pE) { - $pParse = $pParse|0; - $pEList = $pEList|0; - $pE = $pE|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $zAs = 0, $zCol = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $i = sp + 8|0; - $zCol = sp + 4|0; - $zAs = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pEList; - HEAP32[$3>>2] = $pE; - $4 = HEAP32[$3>>2]|0; - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = ($6|0)==(27); - L1: do { - if ($7) { - $8 = HEAP32[$3>>2]|0; - $9 = (($8) + 8|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$zCol>>2] = $10; - HEAP32[$i>>2] = 0; - while(1) { - $11 = HEAP32[$i>>2]|0; - $12 = HEAP32[$2>>2]|0; - $13 = HEAP32[$12>>2]|0; - $14 = ($11|0)<($13|0); - if (!($14)) { - break L1; - } - $15 = HEAP32[$i>>2]|0; - $16 = HEAP32[$2>>2]|0; - $17 = (($16) + 4|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + (($15*20)|0)|0); - $20 = (($19) + 4|0); - $21 = HEAP32[$20>>2]|0; - HEAP32[$zAs>>2] = $21; - $22 = HEAP32[$zAs>>2]|0; - $23 = ($22|0)!=(0|0); - if ($23) { - $24 = HEAP32[$zAs>>2]|0; - $25 = HEAP32[$zCol>>2]|0; - $26 = (_sqlite3_stricmp($24,$25)|0); - $27 = ($26|0)==(0); - if ($27) { - break; - } - } - $30 = HEAP32[$i>>2]|0; - $31 = (($30) + 1)|0; - HEAP32[$i>>2] = $31; - } - $28 = HEAP32[$i>>2]|0; - $29 = (($28) + 1)|0; - HEAP32[$0>>2] = $29; - $32 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($32|0); - } - } while(0); - HEAP32[$0>>2] = 0; - $32 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($32|0); -} -function _sqlite3ExprDup($db,$p,$flags) { - $db = $db|0; - $p = $p|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $flags; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = (_exprDup($3,$4,$5,0)|0); - STACKTOP = sp;return ($6|0); -} -function _resolveOrderByTermToExprList($pParse,$pSelect,$pE) { - $pParse = $pParse|0; - $pSelect = $pSelect|0; - $pE = $pE|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $nc = 0, $pEList = 0, $rc = 0, $savedSuppErr = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 60|0; - $1 = sp + 56|0; - $2 = sp + 52|0; - $3 = sp + 48|0; - $i = sp + 44|0; - $pEList = sp + 40|0; - $nc = sp + 8|0; - $db = sp + 4|0; - $rc = sp; - $savedSuppErr = sp + 64|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pSelect; - HEAP32[$3>>2] = $pE; - $4 = HEAP32[$2>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$pEList>>2] = $5; - ;HEAP32[$nc+0>>2]=0|0;HEAP32[$nc+4>>2]=0|0;HEAP32[$nc+8>>2]=0|0;HEAP32[$nc+12>>2]=0|0;HEAP32[$nc+16>>2]=0|0;HEAP32[$nc+20>>2]=0|0;HEAP32[$nc+24>>2]=0|0;HEAP32[$nc+28>>2]=0|0; - $6 = HEAP32[$1>>2]|0; - HEAP32[$nc>>2] = $6; - $7 = HEAP32[$2>>2]|0; - $8 = (($7) + 32|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($nc) + 4|0); - HEAP32[$10>>2] = $9; - $11 = HEAP32[$pEList>>2]|0; - $12 = (($nc) + 8|0); - HEAP32[$12>>2] = $11; - $13 = (($nc) + 28|0); - HEAP8[$13>>0] = 1; - $14 = (($nc) + 24|0); - HEAP32[$14>>2] = 0; - $15 = HEAP32[$1>>2]|0; - $16 = HEAP32[$15>>2]|0; - HEAP32[$db>>2] = $16; - $17 = HEAP32[$db>>2]|0; - $18 = (($17) + 67|0); - $19 = HEAP8[$18>>0]|0; - HEAP8[$savedSuppErr>>0] = $19; - $20 = HEAP32[$db>>2]|0; - $21 = (($20) + 67|0); - HEAP8[$21>>0] = 1; - $22 = HEAP32[$3>>2]|0; - $23 = (_sqlite3ResolveExprNames($nc,$22)|0); - HEAP32[$rc>>2] = $23; - $24 = HEAP8[$savedSuppErr>>0]|0; - $25 = HEAP32[$db>>2]|0; - $26 = (($25) + 67|0); - HEAP8[$26>>0] = $24; - $27 = HEAP32[$rc>>2]|0; - $28 = ($27|0)!=(0); - if ($28) { - HEAP32[$0>>2] = 0; - $44 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($44|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $29 = HEAP32[$i>>2]|0; - $30 = HEAP32[$pEList>>2]|0; - $31 = HEAP32[$30>>2]|0; - $32 = ($29|0)<($31|0); - if (!($32)) { - label = 8; - break; - } - $33 = HEAP32[$i>>2]|0; - $34 = HEAP32[$pEList>>2]|0; - $35 = (($34) + 4|0); - $36 = HEAP32[$35>>2]|0; - $37 = (($36) + (($33*20)|0)|0); - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$3>>2]|0; - $40 = (_sqlite3ExprCompare($38,$39,-1)|0); - $41 = ($40|0)<(2); - $42 = HEAP32[$i>>2]|0; - $43 = (($42) + 1)|0; - if ($41) { - label = 6; - break; - } - HEAP32[$i>>2] = $43; - } - if ((label|0) == 6) { - HEAP32[$0>>2] = $43; - $44 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($44|0); - } - else if ((label|0) == 8) { - HEAP32[$0>>2] = 0; - $44 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($44|0); - } - return 0|0; -} -function _sqlite3ExprCompare($pA,$pB,$iTab) { - $pA = $pA|0; - $pB = $pB|0; - $iTab = $iTab|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; - var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; - var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; - var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; - var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $combinedFlags = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $combinedFlags = sp; - HEAP32[$1>>2] = $pA; - HEAP32[$2>>2] = $pB; - HEAP32[$3>>2] = $iTab; - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)==(0|0); - if (!($5)) { - $6 = HEAP32[$2>>2]|0; - $7 = ($6|0)==(0|0); - if (!($7)) { - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - $18 = $14 | $17; - HEAP32[$combinedFlags>>2] = $18; - $19 = HEAP32[$combinedFlags>>2]|0; - $20 = $19 & 1024; - $21 = ($20|0)!=(0); - $22 = HEAP32[$1>>2]|0; - if ($21) { - $23 = (($22) + 4|0); - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$2>>2]|0; - $26 = (($25) + 4|0); - $27 = HEAP32[$26>>2]|0; - $28 = $24 & $27; - $29 = $28 & 1024; - $30 = ($29|0)!=(0); - if ($30) { - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 8|0); - $33 = HEAP32[$32>>2]|0; - $34 = HEAP32[$2>>2]|0; - $35 = (($34) + 8|0); - $36 = HEAP32[$35>>2]|0; - $37 = ($33|0)==($36|0); - if ($37) { - HEAP32[$0>>2] = 0; - $158 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($158|0); - } - } - HEAP32[$0>>2] = 2; - $158 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($158|0); - } - $38 = HEAP8[$22>>0]|0; - $39 = $38&255; - $40 = HEAP32[$2>>2]|0; - $41 = HEAP8[$40>>0]|0; - $42 = $41&255; - $43 = ($39|0)!=($42|0); - $44 = HEAP32[$1>>2]|0; - $45 = HEAP8[$44>>0]|0; - $46 = $45&255; - if ($43) { - $47 = ($46|0)==(95); - if ($47) { - $48 = HEAP32[$1>>2]|0; - $49 = (($48) + 12|0); - $50 = HEAP32[$49>>2]|0; - $51 = HEAP32[$2>>2]|0; - $52 = HEAP32[$3>>2]|0; - $53 = (_sqlite3ExprCompare($50,$51,$52)|0); - $54 = ($53|0)<(2); - if ($54) { - HEAP32[$0>>2] = 1; - $158 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($158|0); - } - } - $55 = HEAP32[$2>>2]|0; - $56 = HEAP8[$55>>0]|0; - $57 = $56&255; - $58 = ($57|0)==(95); - if ($58) { - $59 = HEAP32[$1>>2]|0; - $60 = HEAP32[$2>>2]|0; - $61 = (($60) + 12|0); - $62 = HEAP32[$61>>2]|0; - $63 = HEAP32[$3>>2]|0; - $64 = (_sqlite3ExprCompare($59,$62,$63)|0); - $65 = ($64|0)<(2); - if ($65) { - HEAP32[$0>>2] = 1; - $158 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($158|0); - } - } - HEAP32[$0>>2] = 2; - $158 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($158|0); - } - $66 = ($46|0)!=(154); - if ($66) { - $67 = HEAP32[$1>>2]|0; - $68 = HEAP8[$67>>0]|0; - $69 = $68&255; - $70 = ($69|0)!=(156); - if ($70) { - $71 = HEAP32[$1>>2]|0; - $72 = (($71) + 8|0); - $73 = HEAP32[$72>>2]|0; - $74 = ($73|0)!=(0|0); - if ($74) { - $75 = HEAP32[$1>>2]|0; - $76 = (($75) + 8|0); - $77 = HEAP32[$76>>2]|0; - $78 = HEAP32[$2>>2]|0; - $79 = (($78) + 8|0); - $80 = HEAP32[$79>>2]|0; - $81 = (_strcmp($77,$80)|0); - $82 = ($81|0)!=(0); - if ($82) { - $83 = HEAP32[$1>>2]|0; - $84 = HEAP8[$83>>0]|0; - $85 = $84&255; - $86 = ($85|0)==(95); - $87 = $86 ? 1 : 2; - HEAP32[$0>>2] = $87; - $158 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($158|0); - } - } - } - } - $88 = HEAP32[$1>>2]|0; - $89 = (($88) + 4|0); - $90 = HEAP32[$89>>2]|0; - $91 = $90 & 16; - $92 = HEAP32[$2>>2]|0; - $93 = (($92) + 4|0); - $94 = HEAP32[$93>>2]|0; - $95 = $94 & 16; - $96 = ($91|0)!=($95|0); - if ($96) { - HEAP32[$0>>2] = 2; - $158 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($158|0); - } - $97 = HEAP32[$combinedFlags>>2]|0; - $98 = $97 & 16384; - $99 = ($98|0)==(0); - do { - if ($99) { - $100 = HEAP32[$combinedFlags>>2]|0; - $101 = $100 & 2048; - $102 = ($101|0)!=(0); - if ($102) { - HEAP32[$0>>2] = 2; - $158 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($158|0); - } - $103 = HEAP32[$1>>2]|0; - $104 = (($103) + 12|0); - $105 = HEAP32[$104>>2]|0; - $106 = HEAP32[$2>>2]|0; - $107 = (($106) + 12|0); - $108 = HEAP32[$107>>2]|0; - $109 = HEAP32[$3>>2]|0; - $110 = (_sqlite3ExprCompare($105,$108,$109)|0); - $111 = ($110|0)!=(0); - if ($111) { - HEAP32[$0>>2] = 2; - $158 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($158|0); - } - $112 = HEAP32[$1>>2]|0; - $113 = (($112) + 16|0); - $114 = HEAP32[$113>>2]|0; - $115 = HEAP32[$2>>2]|0; - $116 = (($115) + 16|0); - $117 = HEAP32[$116>>2]|0; - $118 = HEAP32[$3>>2]|0; - $119 = (_sqlite3ExprCompare($114,$117,$118)|0); - $120 = ($119|0)!=(0); - if ($120) { - HEAP32[$0>>2] = 2; - $158 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($158|0); - } - $121 = HEAP32[$1>>2]|0; - $122 = (($121) + 20|0); - $123 = HEAP32[$122>>2]|0; - $124 = HEAP32[$2>>2]|0; - $125 = (($124) + 20|0); - $126 = HEAP32[$125>>2]|0; - $127 = HEAP32[$3>>2]|0; - $128 = (_sqlite3ExprListCompare($123,$126,$127)|0); - $129 = ($128|0)!=(0); - if ($129) { - HEAP32[$0>>2] = 2; - $158 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($158|0); - } - $130 = HEAP32[$combinedFlags>>2]|0; - $131 = $130 & 8192; - $132 = ($131|0)==(0); - if ($132) { - $133 = HEAP32[$1>>2]|0; - $134 = (($133) + 32|0); - $135 = HEAP16[$134>>1]|0; - $136 = $135 << 16 >> 16; - $137 = HEAP32[$2>>2]|0; - $138 = (($137) + 32|0); - $139 = HEAP16[$138>>1]|0; - $140 = $139 << 16 >> 16; - $141 = ($136|0)!=($140|0); - if ($141) { - HEAP32[$0>>2] = 2; - $158 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($158|0); - } - $142 = HEAP32[$1>>2]|0; - $143 = (($142) + 28|0); - $144 = HEAP32[$143>>2]|0; - $145 = HEAP32[$2>>2]|0; - $146 = (($145) + 28|0); - $147 = HEAP32[$146>>2]|0; - $148 = ($144|0)!=($147|0); - if ($148) { - $149 = HEAP32[$1>>2]|0; - $150 = (($149) + 28|0); - $151 = HEAP32[$150>>2]|0; - $152 = HEAP32[$3>>2]|0; - $153 = ($151|0)!=($152|0); - if (!($153)) { - $154 = HEAP32[$2>>2]|0; - $155 = (($154) + 28|0); - $156 = HEAP32[$155>>2]|0; - $157 = ($156|0)>=(0); - if (!($157)) { - break; - } - } - HEAP32[$0>>2] = 2; - $158 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($158|0); - } - } - } - } while(0); - HEAP32[$0>>2] = 0; - $158 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($158|0); - } - } - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = ($8|0)==($9|0); - $11 = $10 ? 0 : 2; - HEAP32[$0>>2] = $11; - $158 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($158|0); -} -function _sqlite3ExprListCompare($pA,$pB,$iTab) { - $pA = $pA|0; - $pB = $pB|0; - $iTab = $iTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pExprA = 0; - var $pExprB = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $i = sp + 8|0; - $pExprA = sp + 4|0; - $pExprB = sp; - HEAP32[$1>>2] = $pA; - HEAP32[$2>>2] = $pB; - HEAP32[$3>>2] = $iTab; - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)==(0|0); - if ($5) { - $6 = HEAP32[$2>>2]|0; - $7 = ($6|0)==(0|0); - if ($7) { - HEAP32[$0>>2] = 0; - $57 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($57|0); - } - } - $8 = HEAP32[$1>>2]|0; - $9 = ($8|0)==(0|0); - if (!($9)) { - $10 = HEAP32[$2>>2]|0; - $11 = ($10|0)==(0|0); - if (!($11)) { - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = ($13|0)!=($15|0); - if ($16) { - HEAP32[$0>>2] = 1; - $57 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($57|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $17 = HEAP32[$i>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = HEAP32[$18>>2]|0; - $20 = ($17|0)<($19|0); - if (!($20)) { - label = 16; - break; - } - $21 = HEAP32[$i>>2]|0; - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 4|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + (($21*20)|0)|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$pExprA>>2] = $26; - $27 = HEAP32[$i>>2]|0; - $28 = HEAP32[$2>>2]|0; - $29 = (($28) + 4|0); - $30 = HEAP32[$29>>2]|0; - $31 = (($30) + (($27*20)|0)|0); - $32 = HEAP32[$31>>2]|0; - HEAP32[$pExprB>>2] = $32; - $33 = HEAP32[$i>>2]|0; - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 4|0); - $36 = HEAP32[$35>>2]|0; - $37 = (($36) + (($33*20)|0)|0); - $38 = (($37) + 12|0); - $39 = HEAP8[$38>>0]|0; - $40 = $39&255; - $41 = HEAP32[$i>>2]|0; - $42 = HEAP32[$2>>2]|0; - $43 = (($42) + 4|0); - $44 = HEAP32[$43>>2]|0; - $45 = (($44) + (($41*20)|0)|0); - $46 = (($45) + 12|0); - $47 = HEAP8[$46>>0]|0; - $48 = $47&255; - $49 = ($40|0)!=($48|0); - if ($49) { - label = 12; - break; - } - $50 = HEAP32[$pExprA>>2]|0; - $51 = HEAP32[$pExprB>>2]|0; - $52 = HEAP32[$3>>2]|0; - $53 = (_sqlite3ExprCompare($50,$51,$52)|0); - $54 = ($53|0)!=(0); - if ($54) { - label = 14; - break; - } - $55 = HEAP32[$i>>2]|0; - $56 = (($55) + 1)|0; - HEAP32[$i>>2] = $56; - } - if ((label|0) == 12) { - HEAP32[$0>>2] = 1; - $57 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($57|0); - } - else if ((label|0) == 14) { - HEAP32[$0>>2] = 1; - $57 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($57|0); - } - else if ((label|0) == 16) { - HEAP32[$0>>2] = 0; - $57 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($57|0); - } - } - } - HEAP32[$0>>2] = 1; - $57 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($57|0); -} -function _exprDup($db,$p,$flags,$pzBuffer) { - $db = $db|0; - $p = $p|0; - $flags = $flags|0; - $pzBuffer = $pzBuffer|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $isReduced = 0, $nNewSize = 0, $nSize = 0, $nStructSize = 0, $nToken = 0, $pNew = 0, $staticFlag = 0, $zAlloc = 0, $zToken = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 48|0; - $1 = sp + 44|0; - $2 = sp + 40|0; - $3 = sp + 36|0; - $pNew = sp + 32|0; - $isReduced = sp + 28|0; - $zAlloc = sp + 24|0; - $staticFlag = sp + 20|0; - $nStructSize = sp + 16|0; - $nNewSize = sp + 12|0; - $nToken = sp + 8|0; - $nSize = sp + 4|0; - $zToken = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $flags; - HEAP32[$3>>2] = $pzBuffer; - HEAP32[$pNew>>2] = 0; - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - $159 = HEAP32[$pNew>>2]|0; - STACKTOP = sp;return ($159|0); - } - $6 = HEAP32[$2>>2]|0; - $7 = $6 & 1; - HEAP32[$isReduced>>2] = $7; - HEAP32[$staticFlag>>2] = 0; - $8 = HEAP32[$3>>2]|0; - $9 = ($8|0)!=(0|0); - if ($9) { - $10 = HEAP32[$3>>2]|0; - $11 = HEAP32[$10>>2]|0; - HEAP32[$zAlloc>>2] = $11; - HEAP32[$staticFlag>>2] = 32768; - } else { - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = (_dupedExprSize($13,$14)|0); - $16 = (_sqlite3DbMallocRaw($12,$15)|0); - HEAP32[$zAlloc>>2] = $16; - } - $17 = HEAP32[$zAlloc>>2]|0; - HEAP32[$pNew>>2] = $17; - $18 = HEAP32[$pNew>>2]|0; - $19 = ($18|0)!=(0|0); - if (!($19)) { - $159 = HEAP32[$pNew>>2]|0; - STACKTOP = sp;return ($159|0); - } - $20 = HEAP32[$1>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = (_dupedExprStructSize($20,$21)|0); - HEAP32[$nStructSize>>2] = $22; - $23 = HEAP32[$nStructSize>>2]|0; - $24 = $23 & 4095; - HEAP32[$nNewSize>>2] = $24; - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 4|0); - $27 = HEAP32[$26>>2]|0; - $28 = $27 & 1024; - $29 = ($28|0)!=(0); - if ($29) { - label = 9; - } else { - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 8|0); - $32 = HEAP32[$31>>2]|0; - $33 = ($32|0)!=(0|0); - if ($33) { - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 8|0); - $36 = HEAP32[$35>>2]|0; - $37 = (_sqlite3Strlen30($36)|0); - $38 = (($37) + 1)|0; - HEAP32[$nToken>>2] = $38; - } else { - label = 9; - } - } - if ((label|0) == 9) { - HEAP32[$nToken>>2] = 0; - } - $39 = HEAP32[$isReduced>>2]|0; - $40 = ($39|0)!=(0); - if ($40) { - $41 = HEAP32[$zAlloc>>2]|0; - $42 = HEAP32[$1>>2]|0; - $43 = HEAP32[$nNewSize>>2]|0; - _memcpy(($41|0),($42|0),($43|0))|0; - } else { - $44 = HEAP32[$1>>2]|0; - $45 = (_exprStructSize($44)|0); - HEAP32[$nSize>>2] = $45; - $46 = HEAP32[$zAlloc>>2]|0; - $47 = HEAP32[$1>>2]|0; - $48 = HEAP32[$nSize>>2]|0; - _memcpy(($46|0),($47|0),($48|0))|0; - $49 = HEAP32[$nSize>>2]|0; - $50 = HEAP32[$zAlloc>>2]|0; - $51 = (($50) + ($49)|0); - $52 = HEAP32[$nSize>>2]|0; - $53 = (48 - ($52))|0; - _memset(($51|0),0,($53|0))|0; - } - $54 = HEAP32[$pNew>>2]|0; - $55 = (($54) + 4|0); - $56 = HEAP32[$55>>2]|0; - $57 = $56 & -122881; - HEAP32[$55>>2] = $57; - $58 = HEAP32[$nStructSize>>2]|0; - $59 = $58 & 24576; - $60 = HEAP32[$pNew>>2]|0; - $61 = (($60) + 4|0); - $62 = HEAP32[$61>>2]|0; - $63 = $62 | $59; - HEAP32[$61>>2] = $63; - $64 = HEAP32[$staticFlag>>2]|0; - $65 = HEAP32[$pNew>>2]|0; - $66 = (($65) + 4|0); - $67 = HEAP32[$66>>2]|0; - $68 = $67 | $64; - HEAP32[$66>>2] = $68; - $69 = HEAP32[$nToken>>2]|0; - $70 = ($69|0)!=(0); - if ($70) { - $71 = HEAP32[$nNewSize>>2]|0; - $72 = HEAP32[$zAlloc>>2]|0; - $73 = (($72) + ($71)|0); - $74 = HEAP32[$pNew>>2]|0; - $75 = (($74) + 8|0); - HEAP32[$75>>2] = $73; - HEAP32[$zToken>>2] = $73; - $76 = HEAP32[$zToken>>2]|0; - $77 = HEAP32[$1>>2]|0; - $78 = (($77) + 8|0); - $79 = HEAP32[$78>>2]|0; - $80 = HEAP32[$nToken>>2]|0; - _memcpy(($76|0),($79|0),($80|0))|0; - } - $81 = HEAP32[$1>>2]|0; - $82 = (($81) + 4|0); - $83 = HEAP32[$82>>2]|0; - $84 = HEAP32[$pNew>>2]|0; - $85 = (($84) + 4|0); - $86 = HEAP32[$85>>2]|0; - $87 = $83 | $86; - $88 = $87 & 16384; - $89 = (0)==($88|0); - do { - if ($89) { - $90 = HEAP32[$1>>2]|0; - $91 = (($90) + 4|0); - $92 = HEAP32[$91>>2]|0; - $93 = $92 & 2048; - $94 = ($93|0)!=(0); - $95 = HEAP32[$0>>2]|0; - $96 = HEAP32[$1>>2]|0; - $97 = (($96) + 20|0); - if ($94) { - $98 = HEAP32[$97>>2]|0; - $99 = HEAP32[$isReduced>>2]|0; - $100 = (_sqlite3SelectDup($95,$98,$99)|0); - $101 = HEAP32[$pNew>>2]|0; - $102 = (($101) + 20|0); - HEAP32[$102>>2] = $100; - break; - } else { - $103 = HEAP32[$97>>2]|0; - $104 = HEAP32[$isReduced>>2]|0; - $105 = (_sqlite3ExprListDup($95,$103,$104)|0); - $106 = HEAP32[$pNew>>2]|0; - $107 = (($106) + 20|0); - HEAP32[$107>>2] = $105; - break; - } - } - } while(0); - $108 = HEAP32[$pNew>>2]|0; - $109 = (($108) + 4|0); - $110 = HEAP32[$109>>2]|0; - $111 = $110 & 24576; - $112 = ($111|0)!=(0); - $113 = HEAP32[$1>>2]|0; - if (!($112)) { - $141 = (($113) + 4|0); - $142 = HEAP32[$141>>2]|0; - $143 = $142 & 16384; - $144 = ($143|0)!=(0); - if ($144) { - $159 = HEAP32[$pNew>>2]|0; - STACKTOP = sp;return ($159|0); - } - $145 = HEAP32[$0>>2]|0; - $146 = HEAP32[$1>>2]|0; - $147 = (($146) + 12|0); - $148 = HEAP32[$147>>2]|0; - $149 = (_sqlite3ExprDup($145,$148,0)|0); - $150 = HEAP32[$pNew>>2]|0; - $151 = (($150) + 12|0); - HEAP32[$151>>2] = $149; - $152 = HEAP32[$0>>2]|0; - $153 = HEAP32[$1>>2]|0; - $154 = (($153) + 16|0); - $155 = HEAP32[$154>>2]|0; - $156 = (_sqlite3ExprDup($152,$155,0)|0); - $157 = HEAP32[$pNew>>2]|0; - $158 = (($157) + 16|0); - HEAP32[$158>>2] = $156; - $159 = HEAP32[$pNew>>2]|0; - STACKTOP = sp;return ($159|0); - } - $114 = HEAP32[$2>>2]|0; - $115 = (_dupedExprNodeSize($113,$114)|0); - $116 = HEAP32[$zAlloc>>2]|0; - $117 = (($116) + ($115)|0); - HEAP32[$zAlloc>>2] = $117; - $118 = HEAP32[$pNew>>2]|0; - $119 = (($118) + 4|0); - $120 = HEAP32[$119>>2]|0; - $121 = $120 & 8192; - $122 = ($121|0)!=(0); - if ($122) { - $123 = HEAP32[$0>>2]|0; - $124 = HEAP32[$1>>2]|0; - $125 = (($124) + 12|0); - $126 = HEAP32[$125>>2]|0; - $127 = (_exprDup($123,$126,1,$zAlloc)|0); - $128 = HEAP32[$pNew>>2]|0; - $129 = (($128) + 12|0); - HEAP32[$129>>2] = $127; - $130 = HEAP32[$0>>2]|0; - $131 = HEAP32[$1>>2]|0; - $132 = (($131) + 16|0); - $133 = HEAP32[$132>>2]|0; - $134 = (_exprDup($130,$133,1,$zAlloc)|0); - $135 = HEAP32[$pNew>>2]|0; - $136 = (($135) + 16|0); - HEAP32[$136>>2] = $134; - } - $137 = HEAP32[$3>>2]|0; - $138 = ($137|0)!=(0|0); - if (!($138)) { - $159 = HEAP32[$pNew>>2]|0; - STACKTOP = sp;return ($159|0); - } - $139 = HEAP32[$zAlloc>>2]|0; - $140 = HEAP32[$3>>2]|0; - HEAP32[$140>>2] = $139; - $159 = HEAP32[$pNew>>2]|0; - STACKTOP = sp;return ($159|0); -} -function _dupedExprSize($p,$flags) { - $p = $p|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nByte = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $nByte = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $flags; - HEAP32[$nByte>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - $23 = HEAP32[$nByte>>2]|0; - STACKTOP = sp;return ($23|0); - } - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = (_dupedExprNodeSize($4,$5)|0); - HEAP32[$nByte>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = $7 & 1; - $9 = ($8|0)!=(0); - if (!($9)) { - $23 = HEAP32[$nByte>>2]|0; - STACKTOP = sp;return ($23|0); - } - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 12|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (_dupedExprSize($12,$13)|0); - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 16|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (_dupedExprSize($17,$18)|0); - $20 = (($14) + ($19))|0; - $21 = HEAP32[$nByte>>2]|0; - $22 = (($21) + ($20))|0; - HEAP32[$nByte>>2] = $22; - $23 = HEAP32[$nByte>>2]|0; - STACKTOP = sp;return ($23|0); -} -function _dupedExprStructSize($p,$flags) { - $p = $p|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nSize = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $nSize = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $flags; - $2 = HEAP32[$1>>2]|0; - $3 = $2 & 1; - $4 = (0)==($3|0); - do { - if ($4) { - HEAP32[$nSize>>2] = 48; - } else { - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 12|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)!=(0|0); - if (!($8)) { - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 20|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)!=(0|0); - if (!($12)) { - HEAP32[$nSize>>2] = 16396; - break; - } - } - HEAP32[$nSize>>2] = 8220; - } - } while(0); - $13 = HEAP32[$nSize>>2]|0; - STACKTOP = sp;return ($13|0); -} -function _exprStructSize($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - $5 = $4 & 16384; - $6 = ($5|0)!=(0); - do { - if ($6) { - HEAP32[$0>>2] = 12; - } else { - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = $9 & 8192; - $11 = ($10|0)!=(0); - if ($11) { - HEAP32[$0>>2] = 28; - break; - } else { - HEAP32[$0>>2] = 48; - break; - } - } - } while(0); - $12 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($12|0); -} -function _sqlite3ExprListDup($db,$p,$flags) { - $db = $db|0; - $p = $p|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $i = 0, $pItem = 0, $pNew = 0, $pOldExpr = 0; - var $pOldItem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $pNew = sp + 16|0; - $pItem = sp + 12|0; - $pOldItem = sp + 8|0; - $i = sp + 4|0; - $pOldExpr = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $p; - HEAP32[$3>>2] = $flags; - $4 = HEAP32[$2>>2]|0; - $5 = ($4|0)==(0|0); - if ($5) { - HEAP32[$0>>2] = 0; - $95 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($95|0); - } - $6 = HEAP32[$1>>2]|0; - $7 = (_sqlite3DbMallocRaw($6,8)|0); - HEAP32[$pNew>>2] = $7; - $8 = HEAP32[$pNew>>2]|0; - $9 = ($8|0)==(0|0); - if ($9) { - HEAP32[$0>>2] = 0; - $95 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($95|0); - } - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$10>>2]|0; - HEAP32[$i>>2] = $11; - $12 = HEAP32[$pNew>>2]|0; - HEAP32[$12>>2] = $11; - $13 = HEAP32[$3>>2]|0; - $14 = $13 & 1; - $15 = ($14|0)==(0); - L9: do { - if ($15) { - HEAP32[$i>>2] = 1; - while(1) { - $16 = HEAP32[$i>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = ($16|0)<($18|0); - if (!($19)) { - break L9; - } - $20 = HEAP32[$i>>2]|0; - $21 = HEAP32[$i>>2]|0; - $22 = (($21) + ($20))|0; - HEAP32[$i>>2] = $22; - } - } - } while(0); - $23 = HEAP32[$1>>2]|0; - $24 = HEAP32[$i>>2]|0; - $25 = ($24*20)|0; - $26 = (_sqlite3DbMallocRaw($23,$25)|0); - HEAP32[$pItem>>2] = $26; - $27 = HEAP32[$pNew>>2]|0; - $28 = (($27) + 4|0); - HEAP32[$28>>2] = $26; - $29 = HEAP32[$pItem>>2]|0; - $30 = ($29|0)==(0|0); - if ($30) { - $31 = HEAP32[$1>>2]|0; - $32 = HEAP32[$pNew>>2]|0; - _sqlite3DbFree($31,$32); - HEAP32[$0>>2] = 0; - $95 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($95|0); - } - $33 = HEAP32[$2>>2]|0; - $34 = (($33) + 4|0); - $35 = HEAP32[$34>>2]|0; - HEAP32[$pOldItem>>2] = $35; - HEAP32[$i>>2] = 0; - while(1) { - $36 = HEAP32[$i>>2]|0; - $37 = HEAP32[$2>>2]|0; - $38 = HEAP32[$37>>2]|0; - $39 = ($36|0)<($38|0); - if (!($39)) { - break; - } - $40 = HEAP32[$pOldItem>>2]|0; - $41 = HEAP32[$40>>2]|0; - HEAP32[$pOldExpr>>2] = $41; - $42 = HEAP32[$1>>2]|0; - $43 = HEAP32[$pOldExpr>>2]|0; - $44 = HEAP32[$3>>2]|0; - $45 = (_sqlite3ExprDup($42,$43,$44)|0); - $46 = HEAP32[$pItem>>2]|0; - HEAP32[$46>>2] = $45; - $47 = HEAP32[$1>>2]|0; - $48 = HEAP32[$pOldItem>>2]|0; - $49 = (($48) + 4|0); - $50 = HEAP32[$49>>2]|0; - $51 = (_sqlite3DbStrDup($47,$50)|0); - $52 = HEAP32[$pItem>>2]|0; - $53 = (($52) + 4|0); - HEAP32[$53>>2] = $51; - $54 = HEAP32[$1>>2]|0; - $55 = HEAP32[$pOldItem>>2]|0; - $56 = (($55) + 8|0); - $57 = HEAP32[$56>>2]|0; - $58 = (_sqlite3DbStrDup($54,$57)|0); - $59 = HEAP32[$pItem>>2]|0; - $60 = (($59) + 8|0); - HEAP32[$60>>2] = $58; - $61 = HEAP32[$pOldItem>>2]|0; - $62 = (($61) + 12|0); - $63 = HEAP8[$62>>0]|0; - $64 = HEAP32[$pItem>>2]|0; - $65 = (($64) + 12|0); - HEAP8[$65>>0] = $63; - $66 = HEAP32[$pItem>>2]|0; - $67 = (($66) + 13|0); - $68 = HEAP8[$67>>0]|0; - $69 = $68 & -2; - HEAP8[$67>>0] = $69; - $70 = HEAP32[$pOldItem>>2]|0; - $71 = (($70) + 13|0); - $72 = HEAP8[$71>>0]|0; - $73 = ($72&255) >>> 1; - $74 = $73 & 1; - $75 = $74&255; - $76 = HEAP32[$pItem>>2]|0; - $77 = (($76) + 13|0); - $78 = $75&255; - $79 = HEAP8[$77>>0]|0; - $80 = $78 & 1; - $81 = ($80 << 1)&255; - $82 = $79 & -3; - $83 = $82 | $81; - HEAP8[$77>>0] = $83; - $84 = HEAP32[$pItem>>2]|0; - $85 = (($84) + 16|0); - $86 = HEAP32[$pOldItem>>2]|0; - $87 = (($86) + 16|0); - ;HEAP32[$85+0>>2]=HEAP32[$87+0>>2]|0; - $88 = HEAP32[$i>>2]|0; - $89 = (($88) + 1)|0; - HEAP32[$i>>2] = $89; - $90 = HEAP32[$pItem>>2]|0; - $91 = (($90) + 20|0); - HEAP32[$pItem>>2] = $91; - $92 = HEAP32[$pOldItem>>2]|0; - $93 = (($92) + 20|0); - HEAP32[$pOldItem>>2] = $93; - } - $94 = HEAP32[$pNew>>2]|0; - HEAP32[$0>>2] = $94; - $95 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($95|0); -} -function _dupedExprNodeSize($p,$flags) { - $p = $p|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nByte = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $nByte = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $flags; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_dupedExprStructSize($2,$3)|0); - $5 = $4 & 4095; - HEAP32[$nByte>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - $9 = $8 & 1024; - $10 = ($9|0)!=(0); - if (!($10)) { - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 8|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)!=(0|0); - if ($14) { - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 8|0); - $17 = HEAP32[$16>>2]|0; - $18 = (_sqlite3Strlen30($17)|0); - $19 = (($18) + 1)|0; - $20 = HEAP32[$nByte>>2]|0; - $21 = (($20) + ($19))|0; - HEAP32[$nByte>>2] = $21; - } - } - $22 = HEAP32[$nByte>>2]|0; - $23 = (($22) + 7)|0; - $24 = $23 & -8; - STACKTOP = sp;return ($24|0); -} -function _sqlite3ResolveOrderGroupBy($pParse,$pSelect,$pOrderBy,$zType) { - $pParse = $pParse|0; - $pSelect = $pSelect|0; - $pOrderBy = $pOrderBy|0; - $zType = $zType|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $pEList = 0, $pItem = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $4 = sp + 20|0; - $i = sp + 16|0; - $db = sp + 12|0; - $pEList = sp + 8|0; - $pItem = sp + 4|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pSelect; - HEAP32[$3>>2] = $pOrderBy; - HEAP32[$4>>2] = $zType; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$3>>2]|0; - $8 = ($7|0)==(0|0); - if (!($8)) { - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + 64|0); - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = ($13|0)!=(0); - if (!($14)) { - $15 = HEAP32[$3>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$db>>2]|0; - $18 = (($17) + 88|0); - $19 = (($18) + 8|0); - $20 = HEAP32[$19>>2]|0; - $21 = ($16|0)>($20|0); - if ($21) { - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$4>>2]|0; - HEAP32[$vararg_buffer>>2] = $23; - _sqlite3ErrorMsg($22,16624,$vararg_buffer); - HEAP32[$0>>2] = 1; - $63 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($63|0); - } - $24 = HEAP32[$2>>2]|0; - $25 = HEAP32[$24>>2]|0; - HEAP32[$pEList>>2] = $25; - HEAP32[$i>>2] = 0; - $26 = HEAP32[$3>>2]|0; - $27 = (($26) + 4|0); - $28 = HEAP32[$27>>2]|0; - HEAP32[$pItem>>2] = $28; - while(1) { - $29 = HEAP32[$i>>2]|0; - $30 = HEAP32[$3>>2]|0; - $31 = HEAP32[$30>>2]|0; - $32 = ($29|0)<($31|0); - if (!($32)) { - label = 13; - break; - } - $33 = HEAP32[$pItem>>2]|0; - $34 = (($33) + 16|0); - $35 = HEAP16[$34>>1]|0; - $36 = ($35<<16>>16)!=(0); - if ($36) { - $37 = HEAP32[$pItem>>2]|0; - $38 = (($37) + 16|0); - $39 = HEAP16[$38>>1]|0; - $40 = $39&65535; - $41 = HEAP32[$pEList>>2]|0; - $42 = HEAP32[$41>>2]|0; - $43 = ($40|0)>($42|0); - $44 = HEAP32[$1>>2]|0; - if ($43) { - label = 10; - break; - } - $50 = HEAP32[$pEList>>2]|0; - $51 = HEAP32[$pItem>>2]|0; - $52 = (($51) + 16|0); - $53 = HEAP16[$52>>1]|0; - $54 = $53&65535; - $55 = (($54) - 1)|0; - $56 = HEAP32[$pItem>>2]|0; - $57 = HEAP32[$56>>2]|0; - $58 = HEAP32[$4>>2]|0; - _resolveAlias($44,$50,$55,$57,$58,0); - } - $59 = HEAP32[$i>>2]|0; - $60 = (($59) + 1)|0; - HEAP32[$i>>2] = $60; - $61 = HEAP32[$pItem>>2]|0; - $62 = (($61) + 20|0); - HEAP32[$pItem>>2] = $62; - } - if ((label|0) == 10) { - $45 = HEAP32[$4>>2]|0; - $46 = HEAP32[$i>>2]|0; - $47 = (($46) + 1)|0; - $48 = HEAP32[$pEList>>2]|0; - $49 = HEAP32[$48>>2]|0; - _resolveOutOfRangeError($44,$45,$47,$49); - HEAP32[$0>>2] = 1; - $63 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($63|0); - } - else if ((label|0) == 13) { - HEAP32[$0>>2] = 0; - $63 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($63|0); - } - } - } - HEAP32[$0>>2] = 0; - $63 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($63|0); -} -function _resolveAlias($pParse,$pEList,$iCol,$pExpr,$zType,$nSubquery) { - $pParse = $pParse|0; - $pEList = $pEList|0; - $iCol = $iCol|0; - $pExpr = $pExpr|0; - $zType = $zType|0; - $nSubquery = $nSubquery|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0; - var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; - var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; - var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; - var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; - var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $pDup = 0, $pOrig = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $4 = sp + 16|0; - $5 = sp + 12|0; - $pOrig = sp + 8|0; - $pDup = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pEList; - HEAP32[$2>>2] = $iCol; - HEAP32[$3>>2] = $pExpr; - HEAP32[$4>>2] = $zType; - HEAP32[$5>>2] = $nSubquery; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + (($6*20)|0)|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$pOrig>>2] = $11; - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$12>>2]|0; - HEAP32[$db>>2] = $13; - $14 = HEAP32[$db>>2]|0; - $15 = HEAP32[$pOrig>>2]|0; - $16 = (_sqlite3ExprDup($14,$15,0)|0); - HEAP32[$pDup>>2] = $16; - $17 = HEAP32[$pDup>>2]|0; - $18 = ($17|0)==(0|0); - if ($18) { - STACKTOP = sp;return; - } - $19 = HEAP32[$pOrig>>2]|0; - $20 = HEAP8[$19>>0]|0; - $21 = $20&255; - $22 = ($21|0)!=(154); - if ($22) { - $23 = HEAP32[$4>>2]|0; - $24 = HEAP8[$23>>0]|0; - $25 = $24 << 24 >> 24; - $26 = ($25|0)!=(71); - if ($26) { - $27 = HEAP32[$pDup>>2]|0; - $28 = HEAP32[$5>>2]|0; - _incrAggFunctionDepth($27,$28); - $29 = HEAP32[$0>>2]|0; - $30 = HEAP32[$pDup>>2]|0; - $31 = (_sqlite3PExpr($29,24,$30,0,0)|0); - HEAP32[$pDup>>2] = $31; - $32 = HEAP32[$pDup>>2]|0; - $33 = ($32|0)==(0|0); - if ($33) { - STACKTOP = sp;return; - } - $34 = HEAP32[$pDup>>2]|0; - $35 = (($34) + 4|0); - $36 = HEAP32[$35>>2]|0; - $37 = $36 | 4096; - HEAP32[$35>>2] = $37; - $38 = HEAP32[$2>>2]|0; - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 4|0); - $41 = HEAP32[$40>>2]|0; - $42 = (($41) + (($38*20)|0)|0); - $43 = (($42) + 16|0); - $44 = (($43) + 2|0); - $45 = HEAP16[$44>>1]|0; - $46 = $45&65535; - $47 = ($46|0)==(0); - if ($47) { - $48 = HEAP32[$0>>2]|0; - $49 = (($48) + 456|0); - $50 = HEAP32[$49>>2]|0; - $51 = (($50) + 1)|0; - HEAP32[$49>>2] = $51; - $52 = $51&65535; - $53 = HEAP32[$2>>2]|0; - $54 = HEAP32[$1>>2]|0; - $55 = (($54) + 4|0); - $56 = HEAP32[$55>>2]|0; - $57 = (($56) + (($53*20)|0)|0); - $58 = (($57) + 16|0); - $59 = (($58) + 2|0); - HEAP16[$59>>1] = $52; - } - $60 = HEAP32[$2>>2]|0; - $61 = HEAP32[$1>>2]|0; - $62 = (($61) + 4|0); - $63 = HEAP32[$62>>2]|0; - $64 = (($63) + (($60*20)|0)|0); - $65 = (($64) + 16|0); - $66 = (($65) + 2|0); - $67 = HEAP16[$66>>1]|0; - $68 = $67&65535; - $69 = HEAP32[$pDup>>2]|0; - $70 = (($69) + 28|0); - HEAP32[$70>>2] = $68; - } - } - $71 = HEAP32[$3>>2]|0; - $72 = HEAP8[$71>>0]|0; - $73 = $72&255; - $74 = ($73|0)==(95); - if ($74) { - $75 = HEAP32[$0>>2]|0; - $76 = HEAP32[$pDup>>2]|0; - $77 = HEAP32[$3>>2]|0; - $78 = (($77) + 8|0); - $79 = HEAP32[$78>>2]|0; - $80 = (_sqlite3ExprAddCollateString($75,$76,$79)|0); - HEAP32[$pDup>>2] = $80; - } - $81 = HEAP32[$3>>2]|0; - $82 = (($81) + 4|0); - $83 = HEAP32[$82>>2]|0; - $84 = $83 | 32768; - HEAP32[$82>>2] = $84; - $85 = HEAP32[$db>>2]|0; - $86 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($85,$86); - $87 = HEAP32[$3>>2]|0; - $88 = HEAP32[$pDup>>2]|0; - dest=$87+0|0; src=$88+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $89 = HEAP32[$3>>2]|0; - $90 = (($89) + 4|0); - $91 = HEAP32[$90>>2]|0; - $92 = $91 & 1024; - $93 = ($92|0)!=(0); - if (!($93)) { - $94 = HEAP32[$3>>2]|0; - $95 = (($94) + 8|0); - $96 = HEAP32[$95>>2]|0; - $97 = ($96|0)!=(0|0); - if ($97) { - $98 = HEAP32[$db>>2]|0; - $99 = HEAP32[$3>>2]|0; - $100 = (($99) + 8|0); - $101 = HEAP32[$100>>2]|0; - $102 = (_sqlite3DbStrDup($98,$101)|0); - $103 = HEAP32[$3>>2]|0; - $104 = (($103) + 8|0); - HEAP32[$104>>2] = $102; - $105 = HEAP32[$3>>2]|0; - $106 = (($105) + 4|0); - $107 = HEAP32[$106>>2]|0; - $108 = $107 | 65536; - HEAP32[$106>>2] = $108; - } - } - $109 = HEAP32[$db>>2]|0; - $110 = HEAP32[$pDup>>2]|0; - _sqlite3DbFree($109,$110); - STACKTOP = sp;return; -} -function _incrAggFunctionDepth($pExpr,$N) { - $pExpr = $pExpr|0; - $N = $N|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $w = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $w = sp; - HEAP32[$0>>2] = $pExpr; - HEAP32[$1>>2] = $N; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)>(0); - if (!($3)) { - STACKTOP = sp;return; - } - ;HEAP32[$w+0>>2]=0|0;HEAP32[$w+4>>2]=0|0;HEAP32[$w+8>>2]=0|0;HEAP32[$w+12>>2]=0|0;HEAP32[$w+16>>2]=0|0;HEAP32[$w+20>>2]=0|0; - HEAP32[$w>>2] = 41; - $4 = HEAP32[$1>>2]|0; - $5 = (($w) + 20|0); - HEAP32[$5>>2] = $4; - $6 = HEAP32[$0>>2]|0; - (_sqlite3WalkExpr($w,$6)|0); - STACKTOP = sp;return; -} -function _sqlite3ExprAddCollateString($pParse,$pExpr,$zC) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - $zC = $zC|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $s = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $s = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pExpr; - HEAP32[$2>>2] = $zC; - $3 = HEAP32[$2>>2]|0; - HEAP32[$s>>2] = $3; - $4 = HEAP32[$s>>2]|0; - $5 = (_sqlite3Strlen30($4)|0); - $6 = (($s) + 4|0); - HEAP32[$6>>2] = $5; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = (_sqlite3ExprAddCollateToken($7,$8,$s)|0); - STACKTOP = sp;return ($9|0); -} -function _incrAggDepth($pWalker,$pExpr) { - $pWalker = $pWalker|0; - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pWalker; - HEAP32[$1>>2] = $pExpr; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - $5 = ($4|0)==(155); - if (!($5)) { - STACKTOP = sp;return 0; - } - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 20|0); - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 38|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = (($12) + ($8))|0; - $14 = $13&255; - HEAP8[$10>>0] = $14; - STACKTOP = sp;return 0; -} -function _sqlite3ExprCheckHeight($pParse,$nHeight) { - $pParse = $pParse|0; - $nHeight = $nHeight|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mxHeight = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 16|0; - $1 = sp + 12|0; - $rc = sp + 8|0; - $mxHeight = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $nHeight; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 88|0); - $5 = (($4) + 12|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$mxHeight>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$mxHeight>>2]|0; - $9 = ($7|0)>($8|0); - if (!($9)) { - $12 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($12|0); - } - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$mxHeight>>2]|0; - HEAP32[$vararg_buffer>>2] = $11; - _sqlite3ErrorMsg($10,16656,$vararg_buffer); - HEAP32[$rc>>2] = 1; - $12 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($12|0); -} -function _lookupName($pParse,$zDb,$zTab,$zCol,$pNC,$pExpr) { - $pParse = $pParse|0; - $zDb = $zDb|0; - $zTab = $zTab|0; - $zCol = $zCol|0; - $pNC = $pNC|0; - $pExpr = $pExpr|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; - var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; - var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; - var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; - var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; - var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; - var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; - var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; - var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; - var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; - var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0; - var $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0; - var $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0; - var $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0; - var $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0; - var $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0; - var $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0; - var $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0; - var $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0; - var $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0; - var $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0; - var $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0; - var $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; - var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; - var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; - var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cnt = 0, $cntTab = 0, $db = 0, $hit = 0, $i = 0, $iCol = 0, $isTrigger = 0, $j = 0, $n = 0, $nSubquery = 0, $op = 0, $pCol = 0, $pEList = 0; - var $pItem = 0, $pMatch = 0, $pOrig = 0, $pSchema = 0, $pSrcList = 0, $pTab = 0, $pTopNC = 0, $vararg_buffer12 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr15 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $zAs = 0, $zErr = 0, $zTabName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 144|0; - $vararg_buffer12 = sp; - $0 = sp + 132|0; - $1 = sp + 128|0; - $2 = sp + 124|0; - $3 = sp + 120|0; - $4 = sp + 116|0; - $5 = sp + 112|0; - $6 = sp + 108|0; - $i = sp + 104|0; - $j = sp + 100|0; - $cnt = sp + 96|0; - $cntTab = sp + 92|0; - $nSubquery = sp + 88|0; - $db = sp + 84|0; - $pItem = sp + 80|0; - $pMatch = sp + 76|0; - $pTopNC = sp + 72|0; - $pSchema = sp + 68|0; - $isTrigger = sp + 64|0; - $pTab = sp + 60|0; - $pCol = sp + 56|0; - $pEList = sp + 52|0; - $pSrcList = sp + 48|0; - $hit = sp + 44|0; - $zTabName = sp + 40|0; - $op = sp + 36|0; - $iCol = sp + 32|0; - $zAs = sp + 28|0; - $pOrig = sp + 24|0; - $zErr = sp + 20|0; - $n = sp + 16|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $zDb; - HEAP32[$3>>2] = $zTab; - HEAP32[$4>>2] = $zCol; - HEAP32[$5>>2] = $pNC; - HEAP32[$6>>2] = $pExpr; - HEAP32[$cnt>>2] = 0; - HEAP32[$cntTab>>2] = 0; - HEAP32[$nSubquery>>2] = 0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$7>>2]|0; - HEAP32[$db>>2] = $8; - HEAP32[$pMatch>>2] = 0; - $9 = HEAP32[$5>>2]|0; - HEAP32[$pTopNC>>2] = $9; - HEAP32[$pSchema>>2] = 0; - HEAP32[$isTrigger>>2] = 0; - HEAP32[$pTab>>2] = 0; - $10 = HEAP32[$6>>2]|0; - $11 = (($10) + 28|0); - HEAP32[$11>>2] = -1; - $12 = HEAP32[$6>>2]|0; - $13 = (($12) + 44|0); - HEAP32[$13>>2] = 0; - $14 = HEAP32[$2>>2]|0; - $15 = ($14|0)!=(0|0); - L1: do { - if ($15) { - $16 = HEAP32[$5>>2]|0; - $17 = (($16) + 28|0); - $18 = HEAP8[$17>>0]|0; - $19 = $18&255; - $20 = $19 & 20; - $21 = ($20|0)!=(0); - if ($21) { - HEAP32[$2>>2] = 0; - break; - } - HEAP32[$i>>2] = 0; - while(1) { - $22 = HEAP32[$i>>2]|0; - $23 = HEAP32[$db>>2]|0; - $24 = (($23) + 20|0); - $25 = HEAP32[$24>>2]|0; - $26 = ($22|0)<($25|0); - if (!($26)) { - break L1; - } - $27 = HEAP32[$i>>2]|0; - $28 = HEAP32[$db>>2]|0; - $29 = (($28) + 16|0); - $30 = HEAP32[$29>>2]|0; - $31 = (($30) + ($27<<4)|0); - $32 = HEAP32[$31>>2]|0; - $33 = HEAP32[$2>>2]|0; - $34 = (_sqlite3_stricmp($32,$33)|0); - $35 = ($34|0)==(0); - $36 = HEAP32[$i>>2]|0; - if ($35) { - break; - } - $43 = (($36) + 1)|0; - HEAP32[$i>>2] = $43; - } - $37 = HEAP32[$db>>2]|0; - $38 = (($37) + 16|0); - $39 = HEAP32[$38>>2]|0; - $40 = (($39) + ($36<<4)|0); - $41 = (($40) + 12|0); - $42 = HEAP32[$41>>2]|0; - HEAP32[$pSchema>>2] = $42; - } - } while(0); - L11: while(1) { - $44 = HEAP32[$5>>2]|0; - $45 = ($44|0)!=(0|0); - if (!($45)) { - label = 98; - break; - } - $46 = HEAP32[$cnt>>2]|0; - $47 = ($46|0)==(0); - if (!($47)) { - label = 98; - break; - } - $48 = HEAP32[$5>>2]|0; - $49 = (($48) + 4|0); - $50 = HEAP32[$49>>2]|0; - HEAP32[$pSrcList>>2] = $50; - $51 = HEAP32[$pSrcList>>2]|0; - $52 = ($51|0)!=(0|0); - if ($52) { - HEAP32[$i>>2] = 0; - $53 = HEAP32[$pSrcList>>2]|0; - $54 = (($53) + 8|0); - HEAP32[$pItem>>2] = $54; - while(1) { - $55 = HEAP32[$i>>2]|0; - $56 = HEAP32[$pSrcList>>2]|0; - $57 = HEAP32[$56>>2]|0; - $58 = ($55|0)<($57|0); - if (!($58)) { - break; - } - $59 = HEAP32[$pItem>>2]|0; - $60 = (($59) + 16|0); - $61 = HEAP32[$60>>2]|0; - HEAP32[$pTab>>2] = $61; - $62 = HEAP32[$pItem>>2]|0; - $63 = (($62) + 20|0); - $64 = HEAP32[$63>>2]|0; - $65 = ($64|0)!=(0|0); - if ($65) { - $66 = HEAP32[$pItem>>2]|0; - $67 = (($66) + 20|0); - $68 = HEAP32[$67>>2]|0; - $69 = (($68) + 6|0); - $70 = HEAP16[$69>>1]|0; - $71 = $70&65535; - $72 = $71 & 512; - $73 = ($72|0)!=(0); - if ($73) { - HEAP32[$hit>>2] = 0; - $74 = HEAP32[$pItem>>2]|0; - $75 = (($74) + 20|0); - $76 = HEAP32[$75>>2]|0; - $77 = HEAP32[$76>>2]|0; - HEAP32[$pEList>>2] = $77; - HEAP32[$j>>2] = 0; - while(1) { - $78 = HEAP32[$j>>2]|0; - $79 = HEAP32[$pEList>>2]|0; - $80 = HEAP32[$79>>2]|0; - $81 = ($78|0)<($80|0); - if (!($81)) { - break; - } - $82 = HEAP32[$j>>2]|0; - $83 = HEAP32[$pEList>>2]|0; - $84 = (($83) + 4|0); - $85 = HEAP32[$84>>2]|0; - $86 = (($85) + (($82*20)|0)|0); - $87 = (($86) + 8|0); - $88 = HEAP32[$87>>2]|0; - $89 = HEAP32[$4>>2]|0; - $90 = HEAP32[$3>>2]|0; - $91 = HEAP32[$2>>2]|0; - $92 = (_sqlite3MatchSpanName($88,$89,$90,$91)|0); - $93 = ($92|0)!=(0); - if ($93) { - $94 = HEAP32[$cnt>>2]|0; - $95 = (($94) + 1)|0; - HEAP32[$cnt>>2] = $95; - HEAP32[$cntTab>>2] = 2; - $96 = HEAP32[$pItem>>2]|0; - HEAP32[$pMatch>>2] = $96; - $97 = HEAP32[$j>>2]|0; - $98 = $97&65535; - $99 = HEAP32[$6>>2]|0; - $100 = (($99) + 32|0); - HEAP16[$100>>1] = $98; - HEAP32[$hit>>2] = 1; - } - $101 = HEAP32[$j>>2]|0; - $102 = (($101) + 1)|0; - HEAP32[$j>>2] = $102; - } - $103 = HEAP32[$hit>>2]|0; - $104 = ($103|0)!=(0); - if (!($104)) { - $105 = HEAP32[$3>>2]|0; - $106 = ($105|0)==(0|0); - if (!($106)) { - label = 23; - } - } - } else { - label = 23; - } - } else { - label = 23; - } - L31: do { - if ((label|0) == 23) { - label = 0; - $107 = HEAP32[$2>>2]|0; - $108 = ($107|0)!=(0|0); - if ($108) { - $109 = HEAP32[$pTab>>2]|0; - $110 = (($109) + 68|0); - $111 = HEAP32[$110>>2]|0; - $112 = HEAP32[$pSchema>>2]|0; - $113 = ($111|0)!=($112|0); - if ($113) { - break; - } - } - $114 = HEAP32[$3>>2]|0; - $115 = ($114|0)!=(0|0); - if ($115) { - $116 = HEAP32[$pItem>>2]|0; - $117 = (($116) + 12|0); - $118 = HEAP32[$117>>2]|0; - $119 = ($118|0)!=(0|0); - if ($119) { - $120 = HEAP32[$pItem>>2]|0; - $121 = (($120) + 12|0); - $122 = HEAP32[$121>>2]|0; - $125 = $122; - } else { - $123 = HEAP32[$pTab>>2]|0; - $124 = HEAP32[$123>>2]|0; - $125 = $124; - } - HEAP32[$zTabName>>2] = $125; - $126 = HEAP32[$zTabName>>2]|0; - $127 = HEAP32[$3>>2]|0; - $128 = (_sqlite3_stricmp($126,$127)|0); - $129 = ($128|0)!=(0); - if ($129) { - break; - } - } - $130 = HEAP32[$cntTab>>2]|0; - $131 = (($130) + 1)|0; - HEAP32[$cntTab>>2] = $131; - $132 = (0)==($130|0); - if ($132) { - $133 = HEAP32[$pItem>>2]|0; - HEAP32[$pMatch>>2] = $133; - } - HEAP32[$j>>2] = 0; - $134 = HEAP32[$pTab>>2]|0; - $135 = (($134) + 4|0); - $136 = HEAP32[$135>>2]|0; - HEAP32[$pCol>>2] = $136; - while(1) { - $137 = HEAP32[$j>>2]|0; - $138 = HEAP32[$pTab>>2]|0; - $139 = (($138) + 38|0); - $140 = HEAP16[$139>>1]|0; - $141 = $140 << 16 >> 16; - $142 = ($137|0)<($141|0); - if (!($142)) { - break L31; - } - $143 = HEAP32[$pCol>>2]|0; - $144 = HEAP32[$143>>2]|0; - $145 = HEAP32[$4>>2]|0; - $146 = (_sqlite3_stricmp($144,$145)|0); - $147 = ($146|0)==(0); - if ($147) { - $148 = HEAP32[$cnt>>2]|0; - $149 = ($148|0)==(1); - if (!($149)) { - break; - } - $150 = HEAP32[$pItem>>2]|0; - $151 = (($150) + 36|0); - $152 = HEAP8[$151>>0]|0; - $153 = $152&255; - $154 = $153 & 4; - $155 = ($154|0)!=(0); - if (!($155)) { - $156 = HEAP32[$pItem>>2]|0; - $157 = (($156) + 48|0); - $158 = HEAP32[$157>>2]|0; - $159 = HEAP32[$4>>2]|0; - $160 = (_nameInUsingClause($158,$159)|0); - $161 = ($160|0)!=(0); - if (!($161)) { - break; - } - } - } - $178 = HEAP32[$j>>2]|0; - $179 = (($178) + 1)|0; - HEAP32[$j>>2] = $179; - $180 = HEAP32[$pCol>>2]|0; - $181 = (($180) + 24|0); - HEAP32[$pCol>>2] = $181; - } - $162 = HEAP32[$cnt>>2]|0; - $163 = (($162) + 1)|0; - HEAP32[$cnt>>2] = $163; - $164 = HEAP32[$pItem>>2]|0; - HEAP32[$pMatch>>2] = $164; - $165 = HEAP32[$j>>2]|0; - $166 = HEAP32[$pTab>>2]|0; - $167 = (($166) + 36|0); - $168 = HEAP16[$167>>1]|0; - $169 = $168 << 16 >> 16; - $170 = ($165|0)==($169|0); - if ($170) { - $175 = -1; - } else { - $171 = HEAP32[$j>>2]|0; - $172 = $171&65535; - $173 = $172 << 16 >> 16; - $175 = $173; - } - $174 = $175&65535; - $176 = HEAP32[$6>>2]|0; - $177 = (($176) + 32|0); - HEAP16[$177>>1] = $174; - } - } while(0); - $182 = HEAP32[$i>>2]|0; - $183 = (($182) + 1)|0; - HEAP32[$i>>2] = $183; - $184 = HEAP32[$pItem>>2]|0; - $185 = (($184) + 72|0); - HEAP32[$pItem>>2] = $185; - } - $186 = HEAP32[$pMatch>>2]|0; - $187 = ($186|0)!=(0|0); - if ($187) { - $188 = HEAP32[$pMatch>>2]|0; - $189 = (($188) + 40|0); - $190 = HEAP32[$189>>2]|0; - $191 = HEAP32[$6>>2]|0; - $192 = (($191) + 28|0); - HEAP32[$192>>2] = $190; - $193 = HEAP32[$pMatch>>2]|0; - $194 = (($193) + 16|0); - $195 = HEAP32[$194>>2]|0; - $196 = HEAP32[$6>>2]|0; - $197 = (($196) + 44|0); - HEAP32[$197>>2] = $195; - $198 = HEAP32[$6>>2]|0; - $199 = (($198) + 44|0); - $200 = HEAP32[$199>>2]|0; - $201 = (($200) + 68|0); - $202 = HEAP32[$201>>2]|0; - HEAP32[$pSchema>>2] = $202; - } - } - $203 = HEAP32[$2>>2]|0; - $204 = ($203|0)==(0|0); - if ($204) { - $205 = HEAP32[$3>>2]|0; - $206 = ($205|0)!=(0|0); - if ($206) { - $207 = HEAP32[$cntTab>>2]|0; - $208 = ($207|0)==(0); - if ($208) { - $209 = HEAP32[$1>>2]|0; - $210 = (($209) + 412|0); - $211 = HEAP32[$210>>2]|0; - $212 = ($211|0)!=(0|0); - if ($212) { - $213 = HEAP32[$1>>2]|0; - $214 = (($213) + 436|0); - $215 = HEAP8[$214>>0]|0; - $216 = $215&255; - HEAP32[$op>>2] = $216; - $217 = HEAP32[$op>>2]|0; - $218 = ($217|0)!=(109); - if ($218) { - $219 = HEAP32[$3>>2]|0; - $220 = (_sqlite3_stricmp(17064,$219)|0); - $221 = ($220|0)==(0); - if ($221) { - $222 = HEAP32[$6>>2]|0; - $223 = (($222) + 28|0); - HEAP32[$223>>2] = 1; - $224 = HEAP32[$1>>2]|0; - $225 = (($224) + 412|0); - $226 = HEAP32[$225>>2]|0; - HEAP32[$pTab>>2] = $226; - } else { - label = 52; - } - } else { - label = 52; - } - do { - if ((label|0) == 52) { - label = 0; - $227 = HEAP32[$op>>2]|0; - $228 = ($227|0)!=(108); - if ($228) { - $229 = HEAP32[$3>>2]|0; - $230 = (_sqlite3_stricmp(17072,$229)|0); - $231 = ($230|0)==(0); - if ($231) { - $232 = HEAP32[$6>>2]|0; - $233 = (($232) + 28|0); - HEAP32[$233>>2] = 0; - $234 = HEAP32[$1>>2]|0; - $235 = (($234) + 412|0); - $236 = HEAP32[$235>>2]|0; - HEAP32[$pTab>>2] = $236; - break; - } - } - HEAP32[$pTab>>2] = 0; - } - } while(0); - $237 = HEAP32[$pTab>>2]|0; - $238 = ($237|0)!=(0|0); - if ($238) { - $239 = HEAP32[$pTab>>2]|0; - $240 = (($239) + 68|0); - $241 = HEAP32[$240>>2]|0; - HEAP32[$pSchema>>2] = $241; - $242 = HEAP32[$cntTab>>2]|0; - $243 = (($242) + 1)|0; - HEAP32[$cntTab>>2] = $243; - HEAP32[$iCol>>2] = 0; - $244 = HEAP32[$pTab>>2]|0; - $245 = (($244) + 4|0); - $246 = HEAP32[$245>>2]|0; - HEAP32[$pCol>>2] = $246; - while(1) { - $247 = HEAP32[$iCol>>2]|0; - $248 = HEAP32[$pTab>>2]|0; - $249 = (($248) + 38|0); - $250 = HEAP16[$249>>1]|0; - $251 = $250 << 16 >> 16; - $252 = ($247|0)<($251|0); - if (!($252)) { - break; - } - $253 = HEAP32[$pCol>>2]|0; - $254 = HEAP32[$253>>2]|0; - $255 = HEAP32[$4>>2]|0; - $256 = (_sqlite3_stricmp($254,$255)|0); - $257 = ($256|0)==(0); - $258 = HEAP32[$iCol>>2]|0; - if ($257) { - label = 60; - break; - } - $264 = (($258) + 1)|0; - HEAP32[$iCol>>2] = $264; - $265 = HEAP32[$pCol>>2]|0; - $266 = (($265) + 24|0); - HEAP32[$pCol>>2] = $266; - } - if ((label|0) == 60) { - label = 0; - $259 = HEAP32[$pTab>>2]|0; - $260 = (($259) + 36|0); - $261 = HEAP16[$260>>1]|0; - $262 = $261 << 16 >> 16; - $263 = ($258|0)==($262|0); - if ($263) { - HEAP32[$iCol>>2] = -1; - } - } - $267 = HEAP32[$iCol>>2]|0; - $268 = HEAP32[$pTab>>2]|0; - $269 = (($268) + 38|0); - $270 = HEAP16[$269>>1]|0; - $271 = $270 << 16 >> 16; - $272 = ($267|0)>=($271|0); - if ($272) { - $273 = HEAP32[$4>>2]|0; - $274 = (_sqlite3IsRowid($273)|0); - $275 = ($274|0)!=(0); - if ($275) { - $276 = HEAP32[$pTab>>2]|0; - $277 = (($276) + 44|0); - $278 = HEAP8[$277>>0]|0; - $279 = $278&255; - $280 = $279 & 32; - $281 = ($280|0)==(0); - if ($281) { - HEAP32[$iCol>>2] = -1; - } - } - } - $282 = HEAP32[$iCol>>2]|0; - $283 = HEAP32[$pTab>>2]|0; - $284 = (($283) + 38|0); - $285 = HEAP16[$284>>1]|0; - $286 = $285 << 16 >> 16; - $287 = ($282|0)<($286|0); - if ($287) { - $288 = HEAP32[$cnt>>2]|0; - $289 = (($288) + 1)|0; - HEAP32[$cnt>>2] = $289; - $290 = HEAP32[$iCol>>2]|0; - $291 = ($290|0)<(0); - $292 = HEAP32[$6>>2]|0; - do { - if ($291) { - $293 = (($292) + 1|0); - HEAP8[$293>>0] = 100; - } else { - $294 = (($292) + 28|0); - $295 = HEAP32[$294>>2]|0; - $296 = ($295|0)==(0); - $297 = HEAP32[$iCol>>2]|0; - $298 = ($297|0)>=(32); - if ($296) { - if ($298) { - $305 = -1; - } else { - $299 = HEAP32[$iCol>>2]|0; - $300 = 1 << $299; - $305 = $300; - } - $301 = HEAP32[$1>>2]|0; - $302 = (($301) + 428|0); - $303 = HEAP32[$302>>2]|0; - $304 = $303 | $305; - HEAP32[$302>>2] = $304; - break; - } else { - if ($298) { - $312 = -1; - } else { - $306 = HEAP32[$iCol>>2]|0; - $307 = 1 << $306; - $312 = $307; - } - $308 = HEAP32[$1>>2]|0; - $309 = (($308) + 432|0); - $310 = HEAP32[$309>>2]|0; - $311 = $310 | $312; - HEAP32[$309>>2] = $311; - break; - } - } - } while(0); - $313 = HEAP32[$iCol>>2]|0; - $314 = $313&65535; - $315 = HEAP32[$6>>2]|0; - $316 = (($315) + 32|0); - HEAP16[$316>>1] = $314; - $317 = HEAP32[$pTab>>2]|0; - $318 = HEAP32[$6>>2]|0; - $319 = (($318) + 44|0); - HEAP32[$319>>2] = $317; - HEAP32[$isTrigger>>2] = 1; - } - } - } - } - } - } - $320 = HEAP32[$cnt>>2]|0; - $321 = ($320|0)==(0); - if ($321) { - $322 = HEAP32[$cntTab>>2]|0; - $323 = ($322|0)==(1); - if ($323) { - $324 = HEAP32[$pMatch>>2]|0; - $325 = ($324|0)!=(0|0); - if ($325) { - $326 = HEAP32[$4>>2]|0; - $327 = (_sqlite3IsRowid($326)|0); - $328 = ($327|0)!=(0); - if ($328) { - $329 = HEAP32[$pMatch>>2]|0; - $330 = (($329) + 16|0); - $331 = HEAP32[$330>>2]|0; - $332 = (($331) + 44|0); - $333 = HEAP8[$332>>0]|0; - $334 = $333&255; - $335 = $334 & 32; - $336 = ($335|0)==(0); - if ($336) { - HEAP32[$cnt>>2] = 1; - $337 = HEAP32[$6>>2]|0; - $338 = (($337) + 32|0); - HEAP16[$338>>1] = -1; - $339 = HEAP32[$6>>2]|0; - $340 = (($339) + 1|0); - HEAP8[$340>>0] = 100; - } - } - } - } - } - $341 = HEAP32[$5>>2]|0; - $342 = (($341) + 8|0); - $343 = HEAP32[$342>>2]|0; - HEAP32[$pEList>>2] = $343; - $344 = ($343|0)!=(0|0); - L113: do { - if ($344) { - $345 = HEAP32[$3>>2]|0; - $346 = ($345|0)==(0|0); - if ($346) { - $347 = HEAP32[$cnt>>2]|0; - $348 = ($347|0)==(0); - if ($348) { - HEAP32[$j>>2] = 0; - while(1) { - $349 = HEAP32[$j>>2]|0; - $350 = HEAP32[$pEList>>2]|0; - $351 = HEAP32[$350>>2]|0; - $352 = ($349|0)<($351|0); - if (!($352)) { - break L113; - } - $353 = HEAP32[$j>>2]|0; - $354 = HEAP32[$pEList>>2]|0; - $355 = (($354) + 4|0); - $356 = HEAP32[$355>>2]|0; - $357 = (($356) + (($353*20)|0)|0); - $358 = (($357) + 4|0); - $359 = HEAP32[$358>>2]|0; - HEAP32[$zAs>>2] = $359; - $360 = HEAP32[$zAs>>2]|0; - $361 = ($360|0)!=(0|0); - if ($361) { - $362 = HEAP32[$zAs>>2]|0; - $363 = HEAP32[$4>>2]|0; - $364 = (_sqlite3_stricmp($362,$363)|0); - $365 = ($364|0)==(0); - if ($365) { - label = 91; - break L11; - } - } - $390 = HEAP32[$j>>2]|0; - $391 = (($390) + 1)|0; - HEAP32[$j>>2] = $391; - } - } - } - } - } while(0); - $392 = HEAP32[$cnt>>2]|0; - $393 = ($392|0)==(0); - if (!($393)) { - continue; - } - $394 = HEAP32[$5>>2]|0; - $395 = (($394) + 16|0); - $396 = HEAP32[$395>>2]|0; - HEAP32[$5>>2] = $396; - $397 = HEAP32[$nSubquery>>2]|0; - $398 = (($397) + 1)|0; - HEAP32[$nSubquery>>2] = $398; - } - if ((label|0) == 91) { - $366 = HEAP32[$j>>2]|0; - $367 = HEAP32[$pEList>>2]|0; - $368 = (($367) + 4|0); - $369 = HEAP32[$368>>2]|0; - $370 = (($369) + (($366*20)|0)|0); - $371 = HEAP32[$370>>2]|0; - HEAP32[$pOrig>>2] = $371; - $372 = HEAP32[$5>>2]|0; - $373 = (($372) + 28|0); - $374 = HEAP8[$373>>0]|0; - $375 = $374&255; - $376 = $375 & 1; - $377 = ($376|0)==(0); - if ($377) { - $378 = HEAP32[$pOrig>>2]|0; - $379 = (($378) + 4|0); - $380 = HEAP32[$379>>2]|0; - $381 = $380 & 2; - $382 = ($381|0)!=(0); - if ($382) { - $383 = HEAP32[$1>>2]|0; - $384 = HEAP32[$zAs>>2]|0; - HEAP32[$vararg_buffer12>>2] = $384; - _sqlite3ErrorMsg($383,17080,$vararg_buffer12); - HEAP32[$0>>2] = 2; - $505 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($505|0); - } - } - $385 = HEAP32[$1>>2]|0; - $386 = HEAP32[$pEList>>2]|0; - $387 = HEAP32[$j>>2]|0; - $388 = HEAP32[$6>>2]|0; - $389 = HEAP32[$nSubquery>>2]|0; - _resolveAlias($385,$386,$387,$388,1472,$389); - HEAP32[$cnt>>2] = 1; - HEAP32[$pMatch>>2] = 0; - } - else if ((label|0) == 98) { - $399 = HEAP32[$cnt>>2]|0; - $400 = ($399|0)==(0); - if ($400) { - $401 = HEAP32[$3>>2]|0; - $402 = ($401|0)==(0|0); - if ($402) { - $403 = HEAP32[$6>>2]|0; - $404 = (($403) + 4|0); - $405 = HEAP32[$404>>2]|0; - $406 = $405 & 64; - $407 = ($406|0)!=(0); - if ($407) { - $408 = HEAP32[$6>>2]|0; - HEAP8[$408>>0] = 97; - $409 = HEAP32[$6>>2]|0; - $410 = (($409) + 44|0); - HEAP32[$410>>2] = 0; - HEAP32[$0>>2] = 1; - $505 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($505|0); - } - } - } - $411 = HEAP32[$cnt>>2]|0; - $412 = ($411|0)!=(1); - if ($412) { - $413 = HEAP32[$cnt>>2]|0; - $414 = ($413|0)==(0); - $415 = $414 ? 17112 : 17128; - HEAP32[$zErr>>2] = $415; - $416 = HEAP32[$2>>2]|0; - $417 = ($416|0)!=(0|0); - do { - if ($417) { - $418 = HEAP32[$1>>2]|0; - $419 = HEAP32[$zErr>>2]|0; - $420 = HEAP32[$2>>2]|0; - $421 = HEAP32[$3>>2]|0; - $422 = HEAP32[$4>>2]|0; - HEAP32[$vararg_buffer12>>2] = $419; - $vararg_ptr4 = (($vararg_buffer12) + 4|0); - HEAP32[$vararg_ptr4>>2] = $420; - $vararg_ptr5 = (($vararg_buffer12) + 8|0); - HEAP32[$vararg_ptr5>>2] = $421; - $vararg_ptr6 = (($vararg_buffer12) + 12|0); - HEAP32[$vararg_ptr6>>2] = $422; - _sqlite3ErrorMsg($418,17152,$vararg_buffer12); - } else { - $423 = HEAP32[$3>>2]|0; - $424 = ($423|0)!=(0|0); - $425 = HEAP32[$1>>2]|0; - $426 = HEAP32[$zErr>>2]|0; - if ($424) { - $427 = HEAP32[$3>>2]|0; - $428 = HEAP32[$4>>2]|0; - HEAP32[$vararg_buffer12>>2] = $426; - $vararg_ptr10 = (($vararg_buffer12) + 4|0); - HEAP32[$vararg_ptr10>>2] = $427; - $vararg_ptr11 = (($vararg_buffer12) + 8|0); - HEAP32[$vararg_ptr11>>2] = $428; - _sqlite3ErrorMsg($425,17168,$vararg_buffer12); - break; - } else { - $429 = HEAP32[$4>>2]|0; - HEAP32[$vararg_buffer12>>2] = $426; - $vararg_ptr15 = (($vararg_buffer12) + 4|0); - HEAP32[$vararg_ptr15>>2] = $429; - _sqlite3ErrorMsg($425,17184,$vararg_buffer12); - break; - } - } - } while(0); - $430 = HEAP32[$1>>2]|0; - $431 = (($430) + 17|0); - HEAP8[$431>>0] = 1; - $432 = HEAP32[$pTopNC>>2]|0; - $433 = (($432) + 24|0); - $434 = HEAP32[$433>>2]|0; - $435 = (($434) + 1)|0; - HEAP32[$433>>2] = $435; - } - $436 = HEAP32[$6>>2]|0; - $437 = (($436) + 32|0); - $438 = HEAP16[$437>>1]|0; - $439 = $438 << 16 >> 16; - $440 = ($439|0)>=(0); - if ($440) { - $441 = HEAP32[$pMatch>>2]|0; - $442 = ($441|0)!=(0|0); - if ($442) { - $443 = HEAP32[$6>>2]|0; - $444 = (($443) + 32|0); - $445 = HEAP16[$444>>1]|0; - $446 = $445 << 16 >> 16; - HEAP32[$n>>2] = $446; - $447 = HEAP32[$n>>2]|0; - $448 = ($447|0)>=(64); - $$ = $448 ? 63 : $446; - HEAP32[$n>>2] = $$; - $449 = HEAP32[$n>>2]|0; - $450 = (_bitshift64Shl(1,0,($449|0))|0); - $451 = tempRet0; - $452 = HEAP32[$pMatch>>2]|0; - $453 = (($452) + 56|0); - $454 = $453; - $455 = $454; - $456 = HEAP32[$455>>2]|0; - $457 = (($454) + 4)|0; - $458 = $457; - $459 = HEAP32[$458>>2]|0; - $460 = $456 | $450; - $461 = $459 | $451; - $462 = $453; - $463 = $462; - HEAP32[$463>>2] = $460; - $464 = (($462) + 4)|0; - $465 = $464; - HEAP32[$465>>2] = $461; - } - } - $466 = HEAP32[$db>>2]|0; - $467 = HEAP32[$6>>2]|0; - $468 = (($467) + 12|0); - $469 = HEAP32[$468>>2]|0; - _sqlite3ExprDelete($466,$469); - $470 = HEAP32[$6>>2]|0; - $471 = (($470) + 12|0); - HEAP32[$471>>2] = 0; - $472 = HEAP32[$db>>2]|0; - $473 = HEAP32[$6>>2]|0; - $474 = (($473) + 16|0); - $475 = HEAP32[$474>>2]|0; - _sqlite3ExprDelete($472,$475); - $476 = HEAP32[$6>>2]|0; - $477 = (($476) + 16|0); - HEAP32[$477>>2] = 0; - $478 = HEAP32[$isTrigger>>2]|0; - $479 = ($478|0)!=(0); - $480 = $479 ? 62 : 154; - $481 = $480&255; - $482 = HEAP32[$6>>2]|0; - HEAP8[$482>>0] = $481; - } - $483 = HEAP32[$cnt>>2]|0; - $484 = ($483|0)==(1); - if (!($484)) { - HEAP32[$0>>2] = 2; - $505 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($505|0); - } - $485 = HEAP32[$6>>2]|0; - $486 = HEAP8[$485>>0]|0; - $487 = $486&255; - $488 = ($487|0)!=(24); - if ($488) { - $489 = HEAP32[$1>>2]|0; - $490 = HEAP32[$6>>2]|0; - $491 = HEAP32[$pSchema>>2]|0; - $492 = HEAP32[$5>>2]|0; - $493 = (($492) + 4|0); - $494 = HEAP32[$493>>2]|0; - _sqlite3AuthRead($489,$490,$491,$494); - } - while(1) { - $495 = HEAP32[$pTopNC>>2]|0; - $496 = (($495) + 20|0); - $497 = HEAP32[$496>>2]|0; - $498 = (($497) + 1)|0; - HEAP32[$496>>2] = $498; - $499 = HEAP32[$pTopNC>>2]|0; - $500 = HEAP32[$5>>2]|0; - $501 = ($499|0)==($500|0); - if ($501) { - break; - } - $502 = HEAP32[$pTopNC>>2]|0; - $503 = (($502) + 16|0); - $504 = HEAP32[$503>>2]|0; - HEAP32[$pTopNC>>2] = $504; - } - HEAP32[$0>>2] = 1; - $505 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($505|0); -} -function _notValidPartIdxWhere($pParse,$pNC,$zMsg) { - $pParse = $pParse|0; - $pNC = $pNC|0; - $zMsg = $zMsg|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pNC; - HEAP32[$2>>2] = $zMsg; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 28|0); - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = $6 & 16; - $8 = ($7|0)!=(0); - if (!($8)) { - STACKTOP = sp;return; - } - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer>>2] = $10; - _sqlite3ErrorMsg($9,17016,$vararg_buffer); - STACKTOP = sp;return; -} -function _exprProbability($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0.0, $16 = 0.0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $r = sp; - HEAP32[$1>>2] = $p; - HEAPF64[$r>>3] = -1.0; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - $5 = ($4|0)!=(133); - if ($5) { - HEAP32[$0>>2] = -1; - $18 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($18|0); - } - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 8|0); - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 8|0); - $11 = HEAP32[$10>>2]|0; - $12 = (_sqlite3Strlen30($11)|0); - (_sqlite3AtoF($8,$r,$12,1)|0); - $13 = +HEAPF64[$r>>3]; - $14 = $13 > 1.0; - if ($14) { - HEAP32[$0>>2] = -1; - $18 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($18|0); - } else { - $15 = +HEAPF64[$r>>3]; - $16 = $15 * 1000.0; - $17 = (~~(($16))); - HEAP32[$0>>2] = $17; - $18 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($18|0); - } - return 0|0; -} -function _sqlite3FunctionUsesThisSrc($pExpr,$pSrcList) { - $pExpr = $pExpr|0; - $pSrcList = $pSrcList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cnt = 0, $w = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $w = sp + 16|0; - $cnt = sp; - HEAP32[$0>>2] = $pExpr; - HEAP32[$1>>2] = $pSrcList; - ;HEAP32[$w+0>>2]=0|0;HEAP32[$w+4>>2]=0|0;HEAP32[$w+8>>2]=0|0;HEAP32[$w+12>>2]=0|0;HEAP32[$w+16>>2]=0|0;HEAP32[$w+20>>2]=0|0; - HEAP32[$w>>2] = 42; - $2 = (($w) + 20|0); - HEAP32[$2>>2] = $cnt; - $3 = HEAP32[$1>>2]|0; - HEAP32[$cnt>>2] = $3; - $4 = (($cnt) + 4|0); - HEAP32[$4>>2] = 0; - $5 = (($cnt) + 8|0); - HEAP32[$5>>2] = 0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 20|0); - $8 = HEAP32[$7>>2]|0; - (_sqlite3WalkExprList($w,$8)|0); - $9 = (($cnt) + 4|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)>(0); - if ($11) { - $16 = 1; - $15 = $16&1; - STACKTOP = sp;return ($15|0); - } - $12 = (($cnt) + 8|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)==(0); - $16 = $14; - $15 = $16&1; - STACKTOP = sp;return ($15|0); -} -function _notValidCheckConstraint($pParse,$pNC,$zMsg) { - $pParse = $pParse|0; - $pNC = $pNC|0; - $zMsg = $zMsg|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pNC; - HEAP32[$2>>2] = $zMsg; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 28|0); - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = $6 & 4; - $8 = ($7|0)!=(0); - if (!($8)) { - STACKTOP = sp;return; - } - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer>>2] = $10; - _sqlite3ErrorMsg($9,16976,$vararg_buffer); - STACKTOP = sp;return; -} -function _exprSrcCount($pWalker,$pExpr) { - $pWalker = $pWalker|0; - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $i = 0, $p = 0, $pSrc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $i = sp + 8|0; - $p = sp + 4|0; - $pSrc = sp; - HEAP32[$0>>2] = $pWalker; - HEAP32[$1>>2] = $pExpr; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - $5 = ($4|0)==(154); - if (!($5)) { - $6 = HEAP32[$1>>2]|0; - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = ($8|0)==(156); - if (!($9)) { - STACKTOP = sp;return 0; - } - } - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 20|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$p>>2] = $12; - $13 = HEAP32[$p>>2]|0; - $14 = HEAP32[$13>>2]|0; - HEAP32[$pSrc>>2] = $14; - HEAP32[$i>>2] = 0; - while(1) { - $15 = HEAP32[$i>>2]|0; - $16 = HEAP32[$pSrc>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = ($15|0)<($17|0); - if (!($18)) { - break; - } - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 28|0); - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$i>>2]|0; - $23 = HEAP32[$pSrc>>2]|0; - $24 = (($23) + 8|0); - $25 = (($24) + (($22*72)|0)|0); - $26 = (($25) + 40|0); - $27 = HEAP32[$26>>2]|0; - $28 = ($21|0)==($27|0); - if ($28) { - break; - } - $29 = HEAP32[$i>>2]|0; - $30 = (($29) + 1)|0; - HEAP32[$i>>2] = $30; - } - $31 = HEAP32[$i>>2]|0; - $32 = HEAP32[$pSrc>>2]|0; - $33 = HEAP32[$32>>2]|0; - $34 = ($31|0)<($33|0); - $35 = HEAP32[$p>>2]|0; - if ($34) { - $36 = (($35) + 4|0); - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + 1)|0; - HEAP32[$36>>2] = $38; - STACKTOP = sp;return 0; - } else { - $39 = (($35) + 8|0); - $40 = HEAP32[$39>>2]|0; - $41 = (($40) + 1)|0; - HEAP32[$39>>2] = $41; - STACKTOP = sp;return 0; - } - return 0|0; -} -function _sqlite3MatchSpanName($zSpan,$zCol,$zTab,$zDb) { - $zSpan = $zSpan|0; - $zCol = $zCol|0; - $zTab = $zTab|0; - $zDb = $zDb|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $8 = 0, $9 = 0, $n = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $n = sp; - HEAP32[$1>>2] = $zSpan; - HEAP32[$2>>2] = $zCol; - HEAP32[$3>>2] = $zTab; - HEAP32[$4>>2] = $zDb; - HEAP32[$n>>2] = 0; - while(1) { - $5 = HEAP32[$n>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + ($5)|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8 << 24 >> 24; - $10 = ($9|0)!=(0); - if (!($10)) { - break; - } - $11 = HEAP32[$n>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + ($11)|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14 << 24 >> 24; - $16 = ($15|0)!=(46); - if (!($16)) { - break; - } - $17 = HEAP32[$n>>2]|0; - $18 = (($17) + 1)|0; - HEAP32[$n>>2] = $18; - } - $19 = HEAP32[$4>>2]|0; - $20 = ($19|0)!=(0|0); - do { - if ($20) { - $21 = HEAP32[$1>>2]|0; - $22 = HEAP32[$4>>2]|0; - $23 = HEAP32[$n>>2]|0; - $24 = (_sqlite3_strnicmp($21,$22,$23)|0); - $25 = ($24|0)!=(0); - if (!($25)) { - $26 = HEAP32[$n>>2]|0; - $27 = HEAP32[$4>>2]|0; - $28 = (($27) + ($26)|0); - $29 = HEAP8[$28>>0]|0; - $30 = $29 << 24 >> 24; - $31 = ($30|0)!=(0); - if (!($31)) { - break; - } - } - HEAP32[$0>>2] = 0; - $73 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($73|0); - } - } while(0); - $32 = HEAP32[$n>>2]|0; - $33 = (($32) + 1)|0; - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + ($33)|0); - HEAP32[$1>>2] = $35; - HEAP32[$n>>2] = 0; - while(1) { - $36 = HEAP32[$n>>2]|0; - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + ($36)|0); - $39 = HEAP8[$38>>0]|0; - $40 = $39 << 24 >> 24; - $41 = ($40|0)!=(0); - if (!($41)) { - break; - } - $42 = HEAP32[$n>>2]|0; - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + ($42)|0); - $45 = HEAP8[$44>>0]|0; - $46 = $45 << 24 >> 24; - $47 = ($46|0)!=(46); - if (!($47)) { - break; - } - $48 = HEAP32[$n>>2]|0; - $49 = (($48) + 1)|0; - HEAP32[$n>>2] = $49; - } - $50 = HEAP32[$3>>2]|0; - $51 = ($50|0)!=(0|0); - do { - if ($51) { - $52 = HEAP32[$1>>2]|0; - $53 = HEAP32[$3>>2]|0; - $54 = HEAP32[$n>>2]|0; - $55 = (_sqlite3_strnicmp($52,$53,$54)|0); - $56 = ($55|0)!=(0); - if (!($56)) { - $57 = HEAP32[$n>>2]|0; - $58 = HEAP32[$3>>2]|0; - $59 = (($58) + ($57)|0); - $60 = HEAP8[$59>>0]|0; - $61 = $60 << 24 >> 24; - $62 = ($61|0)!=(0); - if (!($62)) { - break; - } - } - HEAP32[$0>>2] = 0; - $73 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($73|0); - } - } while(0); - $63 = HEAP32[$n>>2]|0; - $64 = (($63) + 1)|0; - $65 = HEAP32[$1>>2]|0; - $66 = (($65) + ($64)|0); - HEAP32[$1>>2] = $66; - $67 = HEAP32[$2>>2]|0; - $68 = ($67|0)!=(0|0); - if ($68) { - $69 = HEAP32[$1>>2]|0; - $70 = HEAP32[$2>>2]|0; - $71 = (_sqlite3_stricmp($69,$70)|0); - $72 = ($71|0)!=(0); - if ($72) { - HEAP32[$0>>2] = 0; - $73 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($73|0); - } - } - HEAP32[$0>>2] = 1; - $73 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($73|0); -} -function _nameInUsingClause($pUsing,$zCol) { - $pUsing = $pUsing|0; - $zCol = $zCol|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $k = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $k = sp; - HEAP32[$1>>2] = $pUsing; - HEAP32[$2>>2] = $zCol; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)!=(0|0); - L1: do { - if ($4) { - HEAP32[$k>>2] = 0; - while(1) { - $5 = HEAP32[$k>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($5|0)<($8|0); - if (!($9)) { - break L1; - } - $10 = HEAP32[$k>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + ($10<<3)|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = (_sqlite3_stricmp($14,$15)|0); - $17 = ($16|0)==(0); - if ($17) { - break; - } - $18 = HEAP32[$k>>2]|0; - $19 = (($18) + 1)|0; - HEAP32[$k>>2] = $19; - } - HEAP32[$0>>2] = 1; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); - } - } while(0); - HEAP32[$0>>2] = 0; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); -} -function _sqlite3IsRowid($z) { - $z = $z|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $z; - $2 = HEAP32[$1>>2]|0; - $3 = (_sqlite3_stricmp($2,17272)|0); - $4 = ($3|0)==(0); - do { - if ($4) { - HEAP32[$0>>2] = 1; - } else { - $5 = HEAP32[$1>>2]|0; - $6 = (_sqlite3_stricmp($5,17192)|0); - $7 = ($6|0)==(0); - if ($7) { - HEAP32[$0>>2] = 1; - break; - } - $8 = HEAP32[$1>>2]|0; - $9 = (_sqlite3_stricmp($8,17280)|0); - $10 = ($9|0)==(0); - if ($10) { - HEAP32[$0>>2] = 1; - break; - } else { - HEAP32[$0>>2] = 0; - break; - } - } - } while(0); - $11 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($11|0); -} -function _sqlite3AuthRead($pParse,$pExpr,$pSchema,$pTabList) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - $pSchema = $pSchema|0; - $pTabList = $pTabList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; - var $db = 0, $iCol = 0, $iDb = 0, $iSrc = 0, $pTab = 0, $zCol = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $db = sp + 20|0; - $pTab = sp + 16|0; - $zCol = sp + 12|0; - $iSrc = sp + 8|0; - $iDb = sp + 4|0; - $iCol = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pExpr; - HEAP32[$2>>2] = $pSchema; - HEAP32[$3>>2] = $pTabList; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - HEAP32[$pTab>>2] = 0; - $6 = HEAP32[$db>>2]|0; - $7 = (($6) + 276|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)==(0|0); - if ($9) { - STACKTOP = sp;return; - } - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$2>>2]|0; - $13 = (_sqlite3SchemaToIndex($11,$12)|0); - HEAP32[$iDb>>2] = $13; - $14 = HEAP32[$iDb>>2]|0; - $15 = ($14|0)<(0); - if ($15) { - STACKTOP = sp;return; - } - $16 = HEAP32[$1>>2]|0; - $17 = HEAP8[$16>>0]|0; - $18 = $17&255; - $19 = ($18|0)==(62); - L7: do { - if ($19) { - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 412|0); - $22 = HEAP32[$21>>2]|0; - HEAP32[$pTab>>2] = $22; - } else { - HEAP32[$iSrc>>2] = 0; - while(1) { - $23 = HEAP32[$iSrc>>2]|0; - $24 = HEAP32[$3>>2]|0; - $25 = HEAP32[$24>>2]|0; - $26 = ($23|0)<($25|0); - if (!($26)) { - break L7; - } - $27 = HEAP32[$1>>2]|0; - $28 = (($27) + 28|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$iSrc>>2]|0; - $31 = HEAP32[$3>>2]|0; - $32 = (($31) + 8|0); - $33 = (($32) + (($30*72)|0)|0); - $34 = (($33) + 40|0); - $35 = HEAP32[$34>>2]|0; - $36 = ($29|0)==($35|0); - $37 = HEAP32[$iSrc>>2]|0; - if ($36) { - break; - } - $43 = (($37) + 1)|0; - HEAP32[$iSrc>>2] = $43; - } - $38 = HEAP32[$3>>2]|0; - $39 = (($38) + 8|0); - $40 = (($39) + (($37*72)|0)|0); - $41 = (($40) + 16|0); - $42 = HEAP32[$41>>2]|0; - HEAP32[$pTab>>2] = $42; - } - } while(0); - $44 = HEAP32[$1>>2]|0; - $45 = (($44) + 32|0); - $46 = HEAP16[$45>>1]|0; - $47 = $46 << 16 >> 16; - HEAP32[$iCol>>2] = $47; - $48 = HEAP32[$pTab>>2]|0; - $49 = ($48|0)==(0|0); - if ($49) { - STACKTOP = sp;return; - } - $50 = HEAP32[$iCol>>2]|0; - $51 = ($50|0)>=(0); - do { - if ($51) { - $52 = HEAP32[$iCol>>2]|0; - $53 = HEAP32[$pTab>>2]|0; - $54 = (($53) + 4|0); - $55 = HEAP32[$54>>2]|0; - $56 = (($55) + (($52*24)|0)|0); - $57 = HEAP32[$56>>2]|0; - HEAP32[$zCol>>2] = $57; - } else { - $58 = HEAP32[$pTab>>2]|0; - $59 = (($58) + 36|0); - $60 = HEAP16[$59>>1]|0; - $61 = $60 << 16 >> 16; - $62 = ($61|0)>=(0); - if ($62) { - $63 = HEAP32[$pTab>>2]|0; - $64 = (($63) + 36|0); - $65 = HEAP16[$64>>1]|0; - $66 = $65 << 16 >> 16; - $67 = HEAP32[$pTab>>2]|0; - $68 = (($67) + 4|0); - $69 = HEAP32[$68>>2]|0; - $70 = (($69) + (($66*24)|0)|0); - $71 = HEAP32[$70>>2]|0; - HEAP32[$zCol>>2] = $71; - break; - } else { - HEAP32[$zCol>>2] = 17192; - break; - } - } - } while(0); - $72 = HEAP32[$0>>2]|0; - $73 = HEAP32[$pTab>>2]|0; - $74 = HEAP32[$73>>2]|0; - $75 = HEAP32[$zCol>>2]|0; - $76 = HEAP32[$iDb>>2]|0; - $77 = (_sqlite3AuthReadCol($72,$74,$75,$76)|0); - $78 = (2)==($77|0); - if (!($78)) { - STACKTOP = sp;return; - } - $79 = HEAP32[$1>>2]|0; - HEAP8[$79>>0] = 101; - STACKTOP = sp;return; -} -function _sqlite3AuthReadCol($pParse,$zTab,$zCol,$iDb) { - $pParse = $pParse|0; - $zTab = $zTab|0; - $zCol = $zCol|0; - $iDb = $iDb|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $or$cond = 0, $rc = 0, $vararg_buffer4 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr7 = 0, $zDb = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer4 = sp; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $db = sp + 20|0; - $zDb = sp + 16|0; - $rc = sp + 12|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $zTab; - HEAP32[$2>>2] = $zCol; - HEAP32[$3>>2] = $iDb; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$3>>2]|0; - $7 = HEAP32[$db>>2]|0; - $8 = (($7) + 16|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + ($6<<4)|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$zDb>>2] = $11; - $12 = HEAP32[$db>>2]|0; - $13 = (($12) + 276|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$db>>2]|0; - $16 = (($15) + 280|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = HEAP32[$2>>2]|0; - $20 = HEAP32[$zDb>>2]|0; - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 492|0); - $23 = HEAP32[$22>>2]|0; - $24 = (FUNCTION_TABLE_iiiiiii[$14 & 1]($17,20,$18,$19,$20,$23)|0); - HEAP32[$rc>>2] = $24; - $25 = HEAP32[$rc>>2]|0; - $26 = ($25|0)==(1); - if (!($26)) { - $42 = HEAP32[$rc>>2]|0; - $43 = ($42|0)!=(2); - $44 = HEAP32[$rc>>2]|0; - $45 = ($44|0)!=(0); - $or$cond = $43 & $45; - if (!($or$cond)) { - $47 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($47|0); - } - $46 = HEAP32[$0>>2]|0; - _sqliteAuthBadReturnCode($46); - $47 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($47|0); - } - $27 = HEAP32[$db>>2]|0; - $28 = (($27) + 20|0); - $29 = HEAP32[$28>>2]|0; - $30 = ($29|0)>(2); - if ($30) { - label = 4; - } else { - $31 = HEAP32[$3>>2]|0; - $32 = ($31|0)!=(0); - if ($32) { - label = 4; - } else { - $37 = HEAP32[$0>>2]|0; - $38 = HEAP32[$1>>2]|0; - $39 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer4>>2] = $38; - $vararg_ptr7 = (($vararg_buffer4) + 4|0); - HEAP32[$vararg_ptr7>>2] = $39; - _sqlite3ErrorMsg($37,17240,$vararg_buffer4); - } - } - if ((label|0) == 4) { - $33 = HEAP32[$0>>2]|0; - $34 = HEAP32[$zDb>>2]|0; - $35 = HEAP32[$1>>2]|0; - $36 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer4>>2] = $34; - $vararg_ptr2 = (($vararg_buffer4) + 4|0); - HEAP32[$vararg_ptr2>>2] = $35; - $vararg_ptr3 = (($vararg_buffer4) + 8|0); - HEAP32[$vararg_ptr3>>2] = $36; - _sqlite3ErrorMsg($33,17200,$vararg_buffer4); - } - $40 = HEAP32[$0>>2]|0; - $41 = (($40) + 12|0); - HEAP32[$41>>2] = 23; - $47 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($47|0); -} -function _convertCompoundSelectToSubquery($pWalker,$p) { - $pWalker = $pWalker|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; - var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; - var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; - var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; - var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; - var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a = 0, $db = 0, $dummy = 0, $i = 0, $pNew = 0, $pNewSrc = 0, $pParse = 0, $pX = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $i = sp + 32|0; - $pNew = sp + 28|0; - $pX = sp + 24|0; - $db = sp + 20|0; - $a = sp + 16|0; - $pNewSrc = sp + 12|0; - $pParse = sp + 8|0; - $dummy = sp; - HEAP32[$1>>2] = $pWalker; - HEAP32[$2>>2] = $p; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 52|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)==(0|0); - if ($6) { - HEAP32[$0>>2] = 0; - $106 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($106|0); - } - $7 = HEAP32[$2>>2]|0; - $8 = (($7) + 48|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)==(0|0); - if ($10) { - HEAP32[$0>>2] = 0; - $106 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($106|0); - } - $11 = HEAP32[$2>>2]|0; - HEAP32[$pX>>2] = $11; - while(1) { - $12 = HEAP32[$pX>>2]|0; - $13 = ($12|0)!=(0|0); - if (!($13)) { - break; - } - $14 = HEAP32[$pX>>2]|0; - $15 = (($14) + 4|0); - $16 = HEAP8[$15>>0]|0; - $17 = $16&255; - $18 = ($17|0)==(116); - if (!($18)) { - $19 = HEAP32[$pX>>2]|0; - $20 = (($19) + 4|0); - $21 = HEAP8[$20>>0]|0; - $22 = $21&255; - $23 = ($22|0)==(119); - if (!($23)) { - break; - } - } - $24 = HEAP32[$pX>>2]|0; - $25 = (($24) + 52|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$pX>>2] = $26; - } - $27 = HEAP32[$pX>>2]|0; - $28 = ($27|0)==(0|0); - if ($28) { - HEAP32[$0>>2] = 0; - $106 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($106|0); - } - $29 = HEAP32[$2>>2]|0; - $30 = (($29) + 48|0); - $31 = HEAP32[$30>>2]|0; - $32 = (($31) + 4|0); - $33 = HEAP32[$32>>2]|0; - HEAP32[$a>>2] = $33; - $34 = HEAP32[$2>>2]|0; - $35 = (($34) + 48|0); - $36 = HEAP32[$35>>2]|0; - $37 = HEAP32[$36>>2]|0; - $38 = (($37) - 1)|0; - HEAP32[$i>>2] = $38; - while(1) { - $39 = HEAP32[$i>>2]|0; - $40 = ($39|0)>=(0); - if (!($40)) { - break; - } - $41 = HEAP32[$i>>2]|0; - $42 = HEAP32[$a>>2]|0; - $43 = (($42) + (($41*20)|0)|0); - $44 = HEAP32[$43>>2]|0; - $45 = (($44) + 4|0); - $46 = HEAP32[$45>>2]|0; - $47 = $46 & 256; - $48 = ($47|0)!=(0); - if ($48) { - break; - } - $49 = HEAP32[$i>>2]|0; - $50 = (($49) + -1)|0; - HEAP32[$i>>2] = $50; - } - $51 = HEAP32[$i>>2]|0; - $52 = ($51|0)<(0); - if ($52) { - HEAP32[$0>>2] = 0; - $106 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($106|0); - } - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + 12|0); - $55 = HEAP32[$54>>2]|0; - HEAP32[$pParse>>2] = $55; - $56 = HEAP32[$pParse>>2]|0; - $57 = HEAP32[$56>>2]|0; - HEAP32[$db>>2] = $57; - $58 = HEAP32[$db>>2]|0; - $59 = (_sqlite3DbMallocZero($58,72)|0); - HEAP32[$pNew>>2] = $59; - $60 = HEAP32[$pNew>>2]|0; - $61 = ($60|0)==(0|0); - if ($61) { - HEAP32[$0>>2] = 2; - $106 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($106|0); - } - ;HEAP32[$dummy+0>>2]=0|0;HEAP32[$dummy+4>>2]=0|0; - $62 = HEAP32[$pParse>>2]|0; - $63 = HEAP32[$pNew>>2]|0; - $64 = (_sqlite3SrcListAppendFromTerm($62,0,0,0,$dummy,$63,0,0)|0); - HEAP32[$pNewSrc>>2] = $64; - $65 = HEAP32[$pNewSrc>>2]|0; - $66 = ($65|0)==(0|0); - if ($66) { - HEAP32[$0>>2] = 2; - $106 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($106|0); - } else { - $67 = HEAP32[$pNew>>2]|0; - $68 = HEAP32[$2>>2]|0; - dest=$67+0|0; src=$68+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $69 = HEAP32[$pNewSrc>>2]|0; - $70 = HEAP32[$2>>2]|0; - $71 = (($70) + 32|0); - HEAP32[$71>>2] = $69; - $72 = HEAP32[$pParse>>2]|0; - $73 = HEAP32[$db>>2]|0; - $74 = (_sqlite3Expr($73,116,0)|0); - $75 = (_sqlite3ExprListAppend($72,0,$74)|0); - $76 = HEAP32[$2>>2]|0; - HEAP32[$76>>2] = $75; - $77 = HEAP32[$2>>2]|0; - $78 = (($77) + 4|0); - HEAP8[$78>>0] = 119; - $79 = HEAP32[$2>>2]|0; - $80 = (($79) + 36|0); - HEAP32[$80>>2] = 0; - $81 = HEAP32[$pNew>>2]|0; - $82 = (($81) + 40|0); - HEAP32[$82>>2] = 0; - $83 = HEAP32[$pNew>>2]|0; - $84 = (($83) + 44|0); - HEAP32[$84>>2] = 0; - $85 = HEAP32[$pNew>>2]|0; - $86 = (($85) + 48|0); - HEAP32[$86>>2] = 0; - $87 = HEAP32[$2>>2]|0; - $88 = (($87) + 52|0); - HEAP32[$88>>2] = 0; - $89 = HEAP32[$2>>2]|0; - $90 = (($89) + 56|0); - HEAP32[$90>>2] = 0; - $91 = HEAP32[$2>>2]|0; - $92 = (($91) + 6|0); - $93 = HEAP16[$92>>1]|0; - $94 = $93&65535; - $95 = $94 & -4097; - $96 = $95&65535; - HEAP16[$92>>1] = $96; - $97 = HEAP32[$pNew>>2]|0; - $98 = HEAP32[$pNew>>2]|0; - $99 = (($98) + 52|0); - $100 = HEAP32[$99>>2]|0; - $101 = (($100) + 56|0); - HEAP32[$101>>2] = $97; - $102 = HEAP32[$pNew>>2]|0; - $103 = (($102) + 60|0); - HEAP32[$103>>2] = 0; - $104 = HEAP32[$pNew>>2]|0; - $105 = (($104) + 64|0); - HEAP32[$105>>2] = 0; - HEAP32[$0>>2] = 0; - $106 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($106|0); - } - return 0|0; -} -function _selectExpander($pWalker,$p) { - $pWalker = $pWalker|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; - var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; - var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; - var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; - var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; - var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; - var $97 = 0, $98 = 0, $99 = 0, $a = 0, $db = 0, $flags = 0, $i = 0, $iDb = 0, $j = 0, $k = 0, $longNames = 0, $pE = 0, $pEList = 0, $pExpr = 0, $pFrom = 0, $pLeft = 0, $pNew = 0, $pParse = 0, $pRight = 0, $pSel = 0; - var $pSub = 0, $pTab = 0, $pTab1 = 0, $pTabList = 0, $pX = 0, $sColname = 0, $selFlags = 0, $tableSeen = 0, $vararg_buffer18 = 0, $vararg_ptr11 = 0, $vararg_ptr12 = 0, $vararg_ptr7 = 0, $zColname = 0, $zName = 0, $zSchemaName = 0, $zTName = 0, $zTabName = 0, $zToFree = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 160|0; - $vararg_buffer18 = sp; - $0 = sp + 148|0; - $1 = sp + 144|0; - $2 = sp + 140|0; - $pParse = sp + 136|0; - $i = sp + 132|0; - $j = sp + 128|0; - $k = sp + 124|0; - $pTabList = sp + 120|0; - $pEList = sp + 116|0; - $pFrom = sp + 112|0; - $db = sp + 108|0; - $pE = sp + 104|0; - $pRight = sp + 100|0; - $pExpr = sp + 96|0; - $selFlags = sp + 152|0; - $pTab = sp + 92|0; - $pSel = sp + 88|0; - $a = sp + 84|0; - $pNew = sp + 80|0; - $flags = sp + 76|0; - $longNames = sp + 72|0; - $tableSeen = sp + 68|0; - $zTName = sp + 64|0; - $pTab1 = sp + 60|0; - $pSub = sp + 56|0; - $zTabName = sp + 52|0; - $zSchemaName = sp + 48|0; - $iDb = sp + 44|0; - $zName = sp + 40|0; - $zColname = sp + 36|0; - $zToFree = sp + 32|0; - $sColname = sp + 24|0; - $pLeft = sp + 16|0; - $pX = sp + 12|0; - HEAP32[$1>>2] = $pWalker; - HEAP32[$2>>2] = $p; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 12|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pParse>>2] = $5; - $6 = HEAP32[$pParse>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$db>>2] = $7; - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + 6|0); - $10 = HEAP16[$9>>1]|0; - HEAP16[$selFlags>>1] = $10; - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 6|0); - $13 = HEAP16[$12>>1]|0; - $14 = $13&65535; - $15 = $14 | 16; - $16 = $15&65535; - HEAP16[$12>>1] = $16; - $17 = HEAP32[$db>>2]|0; - $18 = (($17) + 64|0); - $19 = HEAP8[$18>>0]|0; - $20 = ($19<<24>>24)!=(0); - if ($20) { - HEAP32[$0>>2] = 2; - $522 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($522|0); - } - $21 = HEAP32[$2>>2]|0; - $22 = (($21) + 32|0); - $23 = HEAP32[$22>>2]|0; - $24 = ($23|0)==(0|0); - if (!($24)) { - $25 = HEAP16[$selFlags>>1]|0; - $26 = $25&65535; - $27 = $26 & 16; - $28 = ($27|0)!=(0); - if (!($28)) { - $29 = HEAP32[$2>>2]|0; - $30 = (($29) + 32|0); - $31 = HEAP32[$30>>2]|0; - HEAP32[$pTabList>>2] = $31; - $32 = HEAP32[$2>>2]|0; - $33 = HEAP32[$32>>2]|0; - HEAP32[$pEList>>2] = $33; - $34 = HEAP32[$pParse>>2]|0; - $35 = HEAP32[$2>>2]|0; - $36 = (_findRightmost($35)|0); - $37 = (($36) + 68|0); - $38 = HEAP32[$37>>2]|0; - _sqlite3WithPush($34,$38,0); - $39 = HEAP32[$pParse>>2]|0; - $40 = HEAP32[$pTabList>>2]|0; - _sqlite3SrcListAssignCursors($39,$40); - HEAP32[$i>>2] = 0; - $41 = HEAP32[$pTabList>>2]|0; - $42 = (($41) + 8|0); - HEAP32[$pFrom>>2] = $42; - L8: while(1) { - $43 = HEAP32[$i>>2]|0; - $44 = HEAP32[$pTabList>>2]|0; - $45 = HEAP32[$44>>2]|0; - $46 = ($43|0)<($45|0); - if (!($46)) { - label = 33; - break; - } - $47 = HEAP32[$pFrom>>2]|0; - $48 = (($47) + 37|0); - $49 = HEAP8[$48>>0]|0; - $50 = ($49&255) >>> 3; - $51 = $50 & 1; - $52 = $51&255; - $53 = ($52|0)!=(0); - if (!($53)) { - $54 = HEAP32[$pFrom>>2]|0; - $55 = (($54) + 16|0); - $56 = HEAP32[$55>>2]|0; - $57 = ($56|0)!=(0|0); - $58 = HEAP32[$1>>2]|0; - if ($57) { - label = 10; - break; - } - $60 = HEAP32[$pFrom>>2]|0; - $61 = (_withExpand($58,$60)|0); - $62 = ($61|0)!=(0); - if ($62) { - label = 12; - break; - } - $63 = HEAP32[$pFrom>>2]|0; - $64 = (($63) + 16|0); - $65 = HEAP32[$64>>2]|0; - $66 = ($65|0)!=(0|0); - do { - if (!($66)) { - $67 = HEAP32[$pFrom>>2]|0; - $68 = (($67) + 8|0); - $69 = HEAP32[$68>>2]|0; - $70 = ($69|0)==(0|0); - if ($70) { - $71 = HEAP32[$pFrom>>2]|0; - $72 = (($71) + 20|0); - $73 = HEAP32[$72>>2]|0; - HEAP32[$pSel>>2] = $73; - $74 = HEAP32[$1>>2]|0; - $75 = HEAP32[$pSel>>2]|0; - (_sqlite3WalkSelect($74,$75)|0); - $76 = HEAP32[$db>>2]|0; - $77 = (_sqlite3DbMallocZero($76,76)|0); - HEAP32[$pTab>>2] = $77; - $78 = HEAP32[$pFrom>>2]|0; - $79 = (($78) + 16|0); - HEAP32[$79>>2] = $77; - $80 = HEAP32[$pTab>>2]|0; - $81 = ($80|0)==(0|0); - if ($81) { - label = 16; - break L8; - } - $82 = HEAP32[$pTab>>2]|0; - $83 = (($82) + 40|0); - HEAP16[$83>>1] = 1; - $84 = HEAP32[$db>>2]|0; - $85 = HEAP32[$pTab>>2]|0; - HEAP32[$vararg_buffer18>>2] = $85; - $86 = (_sqlite3MPrintf($84,17288,$vararg_buffer18)|0); - $87 = HEAP32[$pTab>>2]|0; - HEAP32[$87>>2] = $86; - while(1) { - $88 = HEAP32[$pSel>>2]|0; - $89 = (($88) + 52|0); - $90 = HEAP32[$89>>2]|0; - $91 = ($90|0)!=(0|0); - if (!($91)) { - break; - } - $92 = HEAP32[$pSel>>2]|0; - $93 = (($92) + 52|0); - $94 = HEAP32[$93>>2]|0; - HEAP32[$pSel>>2] = $94; - } - $95 = HEAP32[$pParse>>2]|0; - $96 = HEAP32[$pSel>>2]|0; - $97 = HEAP32[$96>>2]|0; - $98 = HEAP32[$pTab>>2]|0; - $99 = (($98) + 38|0); - $100 = HEAP32[$pTab>>2]|0; - $101 = (($100) + 4|0); - (_selectColumnsFromExprList($95,$97,$99,$101)|0); - $102 = HEAP32[$pTab>>2]|0; - $103 = (($102) + 36|0); - HEAP16[$103>>1] = -1; - $104 = HEAP32[$pTab>>2]|0; - $105 = (($104) + 28|0); - HEAP16[$105>>1] = 200; - $106 = HEAP32[$pTab>>2]|0; - $107 = (($106) + 44|0); - $108 = HEAP8[$107>>0]|0; - $109 = $108&255; - $110 = $109 | 2; - $111 = $110&255; - HEAP8[$107>>0] = $111; - break; - } - $112 = HEAP32[$pParse>>2]|0; - $113 = HEAP32[$pFrom>>2]|0; - $114 = (_sqlite3LocateTableItem($112,0,$113)|0); - HEAP32[$pTab>>2] = $114; - $115 = HEAP32[$pFrom>>2]|0; - $116 = (($115) + 16|0); - HEAP32[$116>>2] = $114; - $117 = HEAP32[$pTab>>2]|0; - $118 = ($117|0)==(0|0); - if ($118) { - label = 22; - break L8; - } - $119 = HEAP32[$pTab>>2]|0; - $120 = (($119) + 40|0); - $121 = HEAP16[$120>>1]|0; - $122 = $121&65535; - $123 = ($122|0)==(65535); - if ($123) { - label = 24; - break L8; - } - $129 = HEAP32[$pTab>>2]|0; - $130 = (($129) + 40|0); - $131 = HEAP16[$130>>1]|0; - $132 = (($131) + 1)<<16>>16; - HEAP16[$130>>1] = $132; - $133 = HEAP32[$pTab>>2]|0; - $134 = (($133) + 12|0); - $135 = HEAP32[$134>>2]|0; - $136 = ($135|0)!=(0|0); - if (!($136)) { - $137 = HEAP32[$pTab>>2]|0; - $138 = (($137) + 44|0); - $139 = HEAP8[$138>>0]|0; - $140 = $139&255; - $141 = $140 & 16; - $142 = ($141|0)!=(0); - if (!($142)) { - break; - } - } - $143 = HEAP32[$pParse>>2]|0; - $144 = HEAP32[$pTab>>2]|0; - $145 = (_sqlite3ViewGetColumnNames($143,$144)|0); - $146 = ($145|0)!=(0); - if ($146) { - label = 28; - break L8; - } - $147 = HEAP32[$db>>2]|0; - $148 = HEAP32[$pTab>>2]|0; - $149 = (($148) + 12|0); - $150 = HEAP32[$149>>2]|0; - $151 = (_sqlite3SelectDup($147,$150,0)|0); - $152 = HEAP32[$pFrom>>2]|0; - $153 = (($152) + 20|0); - HEAP32[$153>>2] = $151; - $154 = HEAP32[$1>>2]|0; - $155 = HEAP32[$pFrom>>2]|0; - $156 = (($155) + 20|0); - $157 = HEAP32[$156>>2]|0; - (_sqlite3WalkSelect($154,$157)|0); - } - } while(0); - $158 = HEAP32[$pParse>>2]|0; - $159 = HEAP32[$pFrom>>2]|0; - $160 = (_sqlite3IndexedByLookup($158,$159)|0); - $161 = ($160|0)!=(0); - if ($161) { - label = 31; - break; - } - } - $162 = HEAP32[$i>>2]|0; - $163 = (($162) + 1)|0; - HEAP32[$i>>2] = $163; - $164 = HEAP32[$pFrom>>2]|0; - $165 = (($164) + 72|0); - HEAP32[$pFrom>>2] = $165; - } - if ((label|0) == 10) { - $59 = HEAP32[$2>>2]|0; - _selectPopWith($58,$59); - HEAP32[$0>>2] = 1; - $522 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($522|0); - } - else if ((label|0) == 12) { - HEAP32[$0>>2] = 2; - $522 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($522|0); - } - else if ((label|0) == 16) { - HEAP32[$0>>2] = 2; - $522 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($522|0); - } - else if ((label|0) == 22) { - HEAP32[$0>>2] = 2; - $522 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($522|0); - } - else if ((label|0) == 24) { - $124 = HEAP32[$pParse>>2]|0; - $125 = HEAP32[$pTab>>2]|0; - $126 = HEAP32[$125>>2]|0; - HEAP32[$vararg_buffer18>>2] = $126; - _sqlite3ErrorMsg($124,17304,$vararg_buffer18); - $127 = HEAP32[$pFrom>>2]|0; - $128 = (($127) + 16|0); - HEAP32[$128>>2] = 0; - HEAP32[$0>>2] = 2; - $522 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($522|0); - } - else if ((label|0) == 28) { - HEAP32[$0>>2] = 2; - $522 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($522|0); - } - else if ((label|0) == 31) { - HEAP32[$0>>2] = 2; - $522 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($522|0); - } - else if ((label|0) == 33) { - $166 = HEAP32[$db>>2]|0; - $167 = (($166) + 64|0); - $168 = HEAP8[$167>>0]|0; - $169 = $168&255; - $170 = ($169|0)!=(0); - if (!($170)) { - $171 = HEAP32[$pParse>>2]|0; - $172 = HEAP32[$2>>2]|0; - $173 = (_sqliteProcessJoin($171,$172)|0); - $174 = ($173|0)!=(0); - if (!($174)) { - HEAP32[$k>>2] = 0; - while(1) { - $175 = HEAP32[$k>>2]|0; - $176 = HEAP32[$pEList>>2]|0; - $177 = HEAP32[$176>>2]|0; - $178 = ($175|0)<($177|0); - if (!($178)) { - break; - } - $179 = HEAP32[$k>>2]|0; - $180 = HEAP32[$pEList>>2]|0; - $181 = (($180) + 4|0); - $182 = HEAP32[$181>>2]|0; - $183 = (($182) + (($179*20)|0)|0); - $184 = HEAP32[$183>>2]|0; - HEAP32[$pE>>2] = $184; - $185 = HEAP32[$pE>>2]|0; - $186 = HEAP8[$185>>0]|0; - $187 = $186&255; - $188 = ($187|0)==(116); - if ($188) { - break; - } - $189 = HEAP32[$pE>>2]|0; - $190 = HEAP8[$189>>0]|0; - $191 = $190&255; - $192 = ($191|0)==(122); - if ($192) { - $193 = HEAP32[$pE>>2]|0; - $194 = (($193) + 16|0); - $195 = HEAP32[$194>>2]|0; - $196 = HEAP8[$195>>0]|0; - $197 = $196&255; - $198 = ($197|0)==(116); - if ($198) { - break; - } - } - $199 = HEAP32[$k>>2]|0; - $200 = (($199) + 1)|0; - HEAP32[$k>>2] = $200; - } - $201 = HEAP32[$k>>2]|0; - $202 = HEAP32[$pEList>>2]|0; - $203 = HEAP32[$202>>2]|0; - $204 = ($201|0)<($203|0); - if ($204) { - $205 = HEAP32[$pEList>>2]|0; - $206 = (($205) + 4|0); - $207 = HEAP32[$206>>2]|0; - HEAP32[$a>>2] = $207; - HEAP32[$pNew>>2] = 0; - $208 = HEAP32[$pParse>>2]|0; - $209 = HEAP32[$208>>2]|0; - $210 = (($209) + 24|0); - $211 = HEAP32[$210>>2]|0; - HEAP32[$flags>>2] = $211; - $212 = HEAP32[$flags>>2]|0; - $213 = $212 & 32; - $214 = ($213|0)!=(0); - if ($214) { - $215 = HEAP32[$flags>>2]|0; - $216 = $215 & 64; - $217 = ($216|0)==(0); - $219 = $217; - } else { - $219 = 0; - } - $218 = $219&1; - HEAP32[$longNames>>2] = $218; - HEAP32[$k>>2] = 0; - while(1) { - $220 = HEAP32[$k>>2]|0; - $221 = HEAP32[$pEList>>2]|0; - $222 = HEAP32[$221>>2]|0; - $223 = ($220|0)<($222|0); - if (!($223)) { - break; - } - $224 = HEAP32[$k>>2]|0; - $225 = HEAP32[$a>>2]|0; - $226 = (($225) + (($224*20)|0)|0); - $227 = HEAP32[$226>>2]|0; - HEAP32[$pE>>2] = $227; - $228 = HEAP32[$pE>>2]|0; - $229 = (($228) + 16|0); - $230 = HEAP32[$229>>2]|0; - HEAP32[$pRight>>2] = $230; - $231 = HEAP32[$pE>>2]|0; - $232 = HEAP8[$231>>0]|0; - $233 = $232&255; - $234 = ($233|0)!=(116); - do { - if ($234) { - $235 = HEAP32[$pE>>2]|0; - $236 = HEAP8[$235>>0]|0; - $237 = $236&255; - $238 = ($237|0)!=(122); - if (!($238)) { - $239 = HEAP32[$pRight>>2]|0; - $240 = HEAP8[$239>>0]|0; - $241 = $240&255; - $242 = ($241|0)!=(116); - if (!($242)) { - label = 53; - break; - } - } - $243 = HEAP32[$pParse>>2]|0; - $244 = HEAP32[$pNew>>2]|0; - $245 = HEAP32[$k>>2]|0; - $246 = HEAP32[$a>>2]|0; - $247 = (($246) + (($245*20)|0)|0); - $248 = HEAP32[$247>>2]|0; - $249 = (_sqlite3ExprListAppend($243,$244,$248)|0); - HEAP32[$pNew>>2] = $249; - $250 = HEAP32[$pNew>>2]|0; - $251 = ($250|0)!=(0|0); - if ($251) { - $252 = HEAP32[$k>>2]|0; - $253 = HEAP32[$a>>2]|0; - $254 = (($253) + (($252*20)|0)|0); - $255 = (($254) + 4|0); - $256 = HEAP32[$255>>2]|0; - $257 = HEAP32[$pNew>>2]|0; - $258 = HEAP32[$257>>2]|0; - $259 = (($258) - 1)|0; - $260 = HEAP32[$pNew>>2]|0; - $261 = (($260) + 4|0); - $262 = HEAP32[$261>>2]|0; - $263 = (($262) + (($259*20)|0)|0); - $264 = (($263) + 4|0); - HEAP32[$264>>2] = $256; - $265 = HEAP32[$k>>2]|0; - $266 = HEAP32[$a>>2]|0; - $267 = (($266) + (($265*20)|0)|0); - $268 = (($267) + 8|0); - $269 = HEAP32[$268>>2]|0; - $270 = HEAP32[$pNew>>2]|0; - $271 = HEAP32[$270>>2]|0; - $272 = (($271) - 1)|0; - $273 = HEAP32[$pNew>>2]|0; - $274 = (($273) + 4|0); - $275 = HEAP32[$274>>2]|0; - $276 = (($275) + (($272*20)|0)|0); - $277 = (($276) + 8|0); - HEAP32[$277>>2] = $269; - $278 = HEAP32[$k>>2]|0; - $279 = HEAP32[$a>>2]|0; - $280 = (($279) + (($278*20)|0)|0); - $281 = (($280) + 4|0); - HEAP32[$281>>2] = 0; - $282 = HEAP32[$k>>2]|0; - $283 = HEAP32[$a>>2]|0; - $284 = (($283) + (($282*20)|0)|0); - $285 = (($284) + 8|0); - HEAP32[$285>>2] = 0; - } - $286 = HEAP32[$k>>2]|0; - $287 = HEAP32[$a>>2]|0; - $288 = (($287) + (($286*20)|0)|0); - HEAP32[$288>>2] = 0; - } else { - label = 53; - } - } while(0); - do { - if ((label|0) == 53) { - label = 0; - HEAP32[$tableSeen>>2] = 0; - HEAP32[$zTName>>2] = 0; - $289 = HEAP32[$pE>>2]|0; - $290 = HEAP8[$289>>0]|0; - $291 = $290&255; - $292 = ($291|0)==(122); - if ($292) { - $293 = HEAP32[$pE>>2]|0; - $294 = (($293) + 12|0); - $295 = HEAP32[$294>>2]|0; - $296 = (($295) + 8|0); - $297 = HEAP32[$296>>2]|0; - HEAP32[$zTName>>2] = $297; - } - HEAP32[$i>>2] = 0; - $298 = HEAP32[$pTabList>>2]|0; - $299 = (($298) + 8|0); - HEAP32[$pFrom>>2] = $299; - while(1) { - $300 = HEAP32[$i>>2]|0; - $301 = HEAP32[$pTabList>>2]|0; - $302 = HEAP32[$301>>2]|0; - $303 = ($300|0)<($302|0); - if (!($303)) { - break; - } - $304 = HEAP32[$pFrom>>2]|0; - $305 = (($304) + 16|0); - $306 = HEAP32[$305>>2]|0; - HEAP32[$pTab1>>2] = $306; - $307 = HEAP32[$pFrom>>2]|0; - $308 = (($307) + 20|0); - $309 = HEAP32[$308>>2]|0; - HEAP32[$pSub>>2] = $309; - $310 = HEAP32[$pFrom>>2]|0; - $311 = (($310) + 12|0); - $312 = HEAP32[$311>>2]|0; - HEAP32[$zTabName>>2] = $312; - HEAP32[$zSchemaName>>2] = 0; - $313 = HEAP32[$zTabName>>2]|0; - $314 = ($313|0)==(0|0); - if ($314) { - $315 = HEAP32[$pTab1>>2]|0; - $316 = HEAP32[$315>>2]|0; - HEAP32[$zTabName>>2] = $316; - } - $317 = HEAP32[$db>>2]|0; - $318 = (($317) + 64|0); - $319 = HEAP8[$318>>0]|0; - $320 = ($319<<24>>24)!=(0); - if ($320) { - break; - } - $321 = HEAP32[$pSub>>2]|0; - $322 = ($321|0)==(0|0); - if ($322) { - label = 62; - } else { - $323 = HEAP32[$pSub>>2]|0; - $324 = (($323) + 6|0); - $325 = HEAP16[$324>>1]|0; - $326 = $325&65535; - $327 = $326 & 512; - $328 = ($327|0)==(0); - if ($328) { - label = 62; - } else { - label = 67; - } - } - do { - if ((label|0) == 62) { - label = 0; - HEAP32[$pSub>>2] = 0; - $329 = HEAP32[$zTName>>2]|0; - $330 = ($329|0)!=(0|0); - if ($330) { - $331 = HEAP32[$zTName>>2]|0; - $332 = HEAP32[$zTabName>>2]|0; - $333 = (_sqlite3_stricmp($331,$332)|0); - $334 = ($333|0)!=(0); - if ($334) { - break; - } - } - $335 = HEAP32[$db>>2]|0; - $336 = HEAP32[$pTab1>>2]|0; - $337 = (($336) + 68|0); - $338 = HEAP32[$337>>2]|0; - $339 = (_sqlite3SchemaToIndex($335,$338)|0); - HEAP32[$iDb>>2] = $339; - $340 = HEAP32[$iDb>>2]|0; - $341 = ($340|0)>=(0); - if ($341) { - $342 = HEAP32[$iDb>>2]|0; - $343 = HEAP32[$db>>2]|0; - $344 = (($343) + 16|0); - $345 = HEAP32[$344>>2]|0; - $346 = (($345) + ($342<<4)|0); - $347 = HEAP32[$346>>2]|0; - $348 = $347; - } else { - $348 = 17344; - } - HEAP32[$zSchemaName>>2] = $348; - label = 67; - } - } while(0); - L88: do { - if ((label|0) == 67) { - label = 0; - HEAP32[$j>>2] = 0; - while(1) { - $349 = HEAP32[$j>>2]|0; - $350 = HEAP32[$pTab1>>2]|0; - $351 = (($350) + 38|0); - $352 = HEAP16[$351>>1]|0; - $353 = $352 << 16 >> 16; - $354 = ($349|0)<($353|0); - if (!($354)) { - break L88; - } - $355 = HEAP32[$j>>2]|0; - $356 = HEAP32[$pTab1>>2]|0; - $357 = (($356) + 4|0); - $358 = HEAP32[$357>>2]|0; - $359 = (($358) + (($355*24)|0)|0); - $360 = HEAP32[$359>>2]|0; - HEAP32[$zName>>2] = $360; - $361 = HEAP32[$zTName>>2]|0; - $362 = ($361|0)!=(0|0); - do { - if ($362) { - $363 = HEAP32[$pSub>>2]|0; - $364 = ($363|0)!=(0|0); - if (!($364)) { - label = 72; - break; - } - $365 = HEAP32[$j>>2]|0; - $366 = HEAP32[$pSub>>2]|0; - $367 = HEAP32[$366>>2]|0; - $368 = (($367) + 4|0); - $369 = HEAP32[$368>>2]|0; - $370 = (($369) + (($365*20)|0)|0); - $371 = (($370) + 8|0); - $372 = HEAP32[$371>>2]|0; - $373 = HEAP32[$zTName>>2]|0; - $374 = (_sqlite3MatchSpanName($372,0,$373,0)|0); - $375 = ($374|0)==(0); - if (!($375)) { - label = 72; - } - } else { - label = 72; - } - } while(0); - L96: do { - if ((label|0) == 72) { - label = 0; - $376 = HEAP32[$j>>2]|0; - $377 = HEAP32[$pTab1>>2]|0; - $378 = (($377) + 4|0); - $379 = HEAP32[$378>>2]|0; - $380 = (($379) + (($376*24)|0)|0); - $381 = (($380) + 23|0); - $382 = HEAP8[$381>>0]|0; - $383 = $382&255; - $384 = $383 & 2; - $385 = ($384|0)!=(0); - if ($385) { - break; - } - HEAP32[$tableSeen>>2] = 1; - $386 = HEAP32[$i>>2]|0; - $387 = ($386|0)>(0); - do { - if ($387) { - $388 = HEAP32[$zTName>>2]|0; - $389 = ($388|0)==(0|0); - if (!($389)) { - break; - } - $390 = HEAP32[$pFrom>>2]|0; - $391 = (($390) + 36|0); - $392 = HEAP8[$391>>0]|0; - $393 = $392&255; - $394 = $393 & 4; - $395 = ($394|0)!=(0); - if ($395) { - $396 = HEAP32[$pTabList>>2]|0; - $397 = HEAP32[$i>>2]|0; - $398 = HEAP32[$zName>>2]|0; - $399 = (_tableAndColumnIndex($396,$397,$398,0,0)|0); - $400 = ($399|0)!=(0); - if ($400) { - break L96; - } - } - $401 = HEAP32[$pFrom>>2]|0; - $402 = (($401) + 48|0); - $403 = HEAP32[$402>>2]|0; - $404 = HEAP32[$zName>>2]|0; - $405 = (_sqlite3IdListIndex($403,$404)|0); - $406 = ($405|0)>=(0); - if ($406) { - break L96; - } - } - } while(0); - $407 = HEAP32[$db>>2]|0; - $408 = HEAP32[$zName>>2]|0; - $409 = (_sqlite3Expr($407,27,$408)|0); - HEAP32[$pRight>>2] = $409; - $410 = HEAP32[$zName>>2]|0; - HEAP32[$zColname>>2] = $410; - HEAP32[$zToFree>>2] = 0; - $411 = HEAP32[$longNames>>2]|0; - $412 = ($411|0)!=(0); - do { - if ($412) { - label = 80; - } else { - $413 = HEAP32[$pTabList>>2]|0; - $414 = HEAP32[$413>>2]|0; - $415 = ($414|0)>(1); - if ($415) { - label = 80; - break; - } - $439 = HEAP32[$pRight>>2]|0; - HEAP32[$pExpr>>2] = $439; - } - } while(0); - do { - if ((label|0) == 80) { - label = 0; - $416 = HEAP32[$db>>2]|0; - $417 = HEAP32[$zTabName>>2]|0; - $418 = (_sqlite3Expr($416,27,$417)|0); - HEAP32[$pLeft>>2] = $418; - $419 = HEAP32[$pParse>>2]|0; - $420 = HEAP32[$pLeft>>2]|0; - $421 = HEAP32[$pRight>>2]|0; - $422 = (_sqlite3PExpr($419,122,$420,$421,0)|0); - HEAP32[$pExpr>>2] = $422; - $423 = HEAP32[$zSchemaName>>2]|0; - $424 = ($423|0)!=(0|0); - if ($424) { - $425 = HEAP32[$db>>2]|0; - $426 = HEAP32[$zSchemaName>>2]|0; - $427 = (_sqlite3Expr($425,27,$426)|0); - HEAP32[$pLeft>>2] = $427; - $428 = HEAP32[$pParse>>2]|0; - $429 = HEAP32[$pLeft>>2]|0; - $430 = HEAP32[$pExpr>>2]|0; - $431 = (_sqlite3PExpr($428,122,$429,$430,0)|0); - HEAP32[$pExpr>>2] = $431; - } - $432 = HEAP32[$longNames>>2]|0; - $433 = ($432|0)!=(0); - if (!($433)) { - break; - } - $434 = HEAP32[$db>>2]|0; - $435 = HEAP32[$zTabName>>2]|0; - $436 = HEAP32[$zName>>2]|0; - HEAP32[$vararg_buffer18>>2] = $435; - $vararg_ptr7 = (($vararg_buffer18) + 4|0); - HEAP32[$vararg_ptr7>>2] = $436; - $437 = (_sqlite3MPrintf($434,17352,$vararg_buffer18)|0); - HEAP32[$zColname>>2] = $437; - $438 = HEAP32[$zColname>>2]|0; - HEAP32[$zToFree>>2] = $438; - } - } while(0); - $440 = HEAP32[$pParse>>2]|0; - $441 = HEAP32[$pNew>>2]|0; - $442 = HEAP32[$pExpr>>2]|0; - $443 = (_sqlite3ExprListAppend($440,$441,$442)|0); - HEAP32[$pNew>>2] = $443; - $444 = HEAP32[$zColname>>2]|0; - HEAP32[$sColname>>2] = $444; - $445 = HEAP32[$zColname>>2]|0; - $446 = (_sqlite3Strlen30($445)|0); - $447 = (($sColname) + 4|0); - HEAP32[$447>>2] = $446; - $448 = HEAP32[$pParse>>2]|0; - $449 = HEAP32[$pNew>>2]|0; - _sqlite3ExprListSetName($448,$449,$sColname,0); - $450 = HEAP32[$pNew>>2]|0; - $451 = ($450|0)!=(0|0); - do { - if ($451) { - $452 = HEAP32[$2>>2]|0; - $453 = (($452) + 6|0); - $454 = HEAP16[$453>>1]|0; - $455 = $454&65535; - $456 = $455 & 512; - $457 = ($456|0)!=(0); - if (!($457)) { - break; - } - $458 = HEAP32[$pNew>>2]|0; - $459 = HEAP32[$458>>2]|0; - $460 = (($459) - 1)|0; - $461 = HEAP32[$pNew>>2]|0; - $462 = (($461) + 4|0); - $463 = HEAP32[$462>>2]|0; - $464 = (($463) + (($460*20)|0)|0); - HEAP32[$pX>>2] = $464; - $465 = HEAP32[$pSub>>2]|0; - $466 = ($465|0)!=(0|0); - $467 = HEAP32[$db>>2]|0; - if ($466) { - $468 = HEAP32[$j>>2]|0; - $469 = HEAP32[$pSub>>2]|0; - $470 = HEAP32[$469>>2]|0; - $471 = (($470) + 4|0); - $472 = HEAP32[$471>>2]|0; - $473 = (($472) + (($468*20)|0)|0); - $474 = (($473) + 8|0); - $475 = HEAP32[$474>>2]|0; - $476 = (_sqlite3DbStrDup($467,$475)|0); - $477 = HEAP32[$pX>>2]|0; - $478 = (($477) + 8|0); - HEAP32[$478>>2] = $476; - } else { - $479 = HEAP32[$zSchemaName>>2]|0; - $480 = HEAP32[$zTabName>>2]|0; - $481 = HEAP32[$zColname>>2]|0; - HEAP32[$vararg_buffer18>>2] = $479; - $vararg_ptr11 = (($vararg_buffer18) + 4|0); - HEAP32[$vararg_ptr11>>2] = $480; - $vararg_ptr12 = (($vararg_buffer18) + 8|0); - HEAP32[$vararg_ptr12>>2] = $481; - $482 = (_sqlite3MPrintf($467,17360,$vararg_buffer18)|0); - $483 = HEAP32[$pX>>2]|0; - $484 = (($483) + 8|0); - HEAP32[$484>>2] = $482; - } - $485 = HEAP32[$pX>>2]|0; - $486 = (($485) + 13|0); - $487 = HEAP8[$486>>0]|0; - $488 = $487 & -3; - $489 = $488 | 2; - HEAP8[$486>>0] = $489; - } - } while(0); - $490 = HEAP32[$db>>2]|0; - $491 = HEAP32[$zToFree>>2]|0; - _sqlite3DbFree($490,$491); - } - } while(0); - $492 = HEAP32[$j>>2]|0; - $493 = (($492) + 1)|0; - HEAP32[$j>>2] = $493; - } - } - } while(0); - $494 = HEAP32[$i>>2]|0; - $495 = (($494) + 1)|0; - HEAP32[$i>>2] = $495; - $496 = HEAP32[$pFrom>>2]|0; - $497 = (($496) + 72|0); - HEAP32[$pFrom>>2] = $497; - } - $498 = HEAP32[$tableSeen>>2]|0; - $499 = ($498|0)!=(0); - if (!($499)) { - $500 = HEAP32[$zTName>>2]|0; - $501 = ($500|0)!=(0|0); - $502 = HEAP32[$pParse>>2]|0; - if ($501) { - $503 = HEAP32[$zTName>>2]|0; - HEAP32[$vararg_buffer18>>2] = $503; - _sqlite3ErrorMsg($502,17376,$vararg_buffer18); - break; - } else { - _sqlite3ErrorMsg($502,17400,$vararg_buffer18); - break; - } - } - } - } while(0); - $504 = HEAP32[$k>>2]|0; - $505 = (($504) + 1)|0; - HEAP32[$k>>2] = $505; - } - $506 = HEAP32[$db>>2]|0; - $507 = HEAP32[$pEList>>2]|0; - _sqlite3ExprListDelete($506,$507); - $508 = HEAP32[$pNew>>2]|0; - $509 = HEAP32[$2>>2]|0; - HEAP32[$509>>2] = $508; - } - $510 = HEAP32[$2>>2]|0; - $511 = HEAP32[$510>>2]|0; - $512 = ($511|0)!=(0|0); - if ($512) { - $513 = HEAP32[$2>>2]|0; - $514 = HEAP32[$513>>2]|0; - $515 = HEAP32[$514>>2]|0; - $516 = HEAP32[$db>>2]|0; - $517 = (($516) + 88|0); - $518 = (($517) + 8|0); - $519 = HEAP32[$518>>2]|0; - $520 = ($515|0)>($519|0); - if ($520) { - $521 = HEAP32[$pParse>>2]|0; - _sqlite3ErrorMsg($521,17424,$vararg_buffer18); - } - } - HEAP32[$0>>2] = 0; - $522 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($522|0); - } - } - HEAP32[$0>>2] = 2; - $522 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($522|0); - } - } - } - HEAP32[$0>>2] = 1; - $522 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($522|0); -} -function _selectPopWith($pWalker,$p) { - $pWalker = $pWalker|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pParse = 0, $pWith = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $pParse = sp + 4|0; - $pWith = sp; - HEAP32[$0>>2] = $pWalker; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 12|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pParse>>2] = $4; - $5 = HEAP32[$1>>2]|0; - $6 = (_findRightmost($5)|0); - $7 = (($6) + 68|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pWith>>2] = $8; - $9 = HEAP32[$pWith>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - STACKTOP = sp;return; - } - $11 = HEAP32[$pWith>>2]|0; - $12 = (($11) + 4|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$pParse>>2]|0; - $15 = (($14) + 532|0); - HEAP32[$15>>2] = $13; - STACKTOP = sp;return; -} -function _findRightmost($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - while(1) { - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 56|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - $5 = HEAP32[$0>>2]|0; - if (!($4)) { - break; - } - $6 = (($5) + 56|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$0>>2] = $7; - } - STACKTOP = sp;return ($5|0); -} -function _withExpand($pWalker,$pFrom) { - $pWalker = $pWalker|0; - $pFrom = $pFrom|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; - var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bMayRecursive = 0, $db = 0, $i = 0, $pCte = 0, $pEList = 0, $pItem = 0, $pLeft = 0, $pParse = 0, $pSavedWith = 0, $pSel = 0, $pSrc = 0, $pTab = 0, $pWith = 0, $vararg_buffer4 = 0; - var $vararg_ptr7 = 0, $vararg_ptr8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer4 = sp; - $0 = sp + 72|0; - $1 = sp + 68|0; - $2 = sp + 64|0; - $pParse = sp + 60|0; - $db = sp + 56|0; - $pCte = sp + 52|0; - $pWith = sp + 48|0; - $pTab = sp + 44|0; - $pEList = sp + 40|0; - $pSel = sp + 36|0; - $pLeft = sp + 32|0; - $bMayRecursive = sp + 28|0; - $pSavedWith = sp + 24|0; - $i = sp + 20|0; - $pSrc = sp + 16|0; - $pItem = sp + 12|0; - HEAP32[$1>>2] = $pWalker; - HEAP32[$2>>2] = $pFrom; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 12|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pParse>>2] = $5; - $6 = HEAP32[$pParse>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$db>>2] = $7; - $8 = HEAP32[$pParse>>2]|0; - $9 = (($8) + 532|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = (_searchWith($10,$11,$pWith)|0); - HEAP32[$pCte>>2] = $12; - $13 = HEAP32[$pCte>>2]|0; - $14 = ($13|0)!=(0|0); - if ($14) { - $15 = HEAP32[$pCte>>2]|0; - $16 = (($15) + 12|0); - $17 = HEAP32[$16>>2]|0; - $18 = ($17|0)!=(0|0); - if ($18) { - $19 = HEAP32[$pParse>>2]|0; - $20 = HEAP32[$pCte>>2]|0; - $21 = (($20) + 12|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$pCte>>2]|0; - $24 = HEAP32[$23>>2]|0; - HEAP32[$vararg_buffer4>>2] = $24; - _sqlite3ErrorMsg($19,$22,$vararg_buffer4); - HEAP32[$0>>2] = 1; - $205 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($205|0); - } - $25 = HEAP32[$db>>2]|0; - $26 = (_sqlite3DbMallocZero($25,76)|0); - HEAP32[$pTab>>2] = $26; - $27 = HEAP32[$2>>2]|0; - $28 = (($27) + 16|0); - HEAP32[$28>>2] = $26; - $29 = HEAP32[$pTab>>2]|0; - $30 = ($29|0)==(0|0); - if ($30) { - HEAP32[$0>>2] = 2; - $205 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($205|0); - } - $31 = HEAP32[$pTab>>2]|0; - $32 = (($31) + 40|0); - HEAP16[$32>>1] = 1; - $33 = HEAP32[$db>>2]|0; - $34 = HEAP32[$pCte>>2]|0; - $35 = HEAP32[$34>>2]|0; - $36 = (_sqlite3DbStrDup($33,$35)|0); - $37 = HEAP32[$pTab>>2]|0; - HEAP32[$37>>2] = $36; - $38 = HEAP32[$pTab>>2]|0; - $39 = (($38) + 36|0); - HEAP16[$39>>1] = -1; - $40 = HEAP32[$pTab>>2]|0; - $41 = (($40) + 28|0); - HEAP16[$41>>1] = 200; - $42 = HEAP32[$pTab>>2]|0; - $43 = (($42) + 44|0); - $44 = HEAP8[$43>>0]|0; - $45 = $44&255; - $46 = $45 | 2; - $47 = $46&255; - HEAP8[$43>>0] = $47; - $48 = HEAP32[$db>>2]|0; - $49 = HEAP32[$pCte>>2]|0; - $50 = (($49) + 8|0); - $51 = HEAP32[$50>>2]|0; - $52 = (_sqlite3SelectDup($48,$51,0)|0); - $53 = HEAP32[$2>>2]|0; - $54 = (($53) + 20|0); - HEAP32[$54>>2] = $52; - $55 = HEAP32[$db>>2]|0; - $56 = (($55) + 64|0); - $57 = HEAP8[$56>>0]|0; - $58 = ($57<<24>>24)!=(0); - if ($58) { - HEAP32[$0>>2] = 7; - $205 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($205|0); - } - $59 = HEAP32[$2>>2]|0; - $60 = (($59) + 20|0); - $61 = HEAP32[$60>>2]|0; - HEAP32[$pSel>>2] = $61; - $62 = HEAP32[$pSel>>2]|0; - $63 = (($62) + 4|0); - $64 = HEAP8[$63>>0]|0; - $65 = $64&255; - $66 = ($65|0)==(116); - if ($66) { - $73 = 1; - } else { - $67 = HEAP32[$pSel>>2]|0; - $68 = (($67) + 4|0); - $69 = HEAP8[$68>>0]|0; - $70 = $69&255; - $71 = ($70|0)==(115); - $73 = $71; - } - $72 = $73&1; - HEAP32[$bMayRecursive>>2] = $72; - $74 = HEAP32[$bMayRecursive>>2]|0; - $75 = ($74|0)!=(0); - L18: do { - if ($75) { - $76 = HEAP32[$2>>2]|0; - $77 = (($76) + 20|0); - $78 = HEAP32[$77>>2]|0; - $79 = (($78) + 32|0); - $80 = HEAP32[$79>>2]|0; - HEAP32[$pSrc>>2] = $80; - HEAP32[$i>>2] = 0; - while(1) { - $81 = HEAP32[$i>>2]|0; - $82 = HEAP32[$pSrc>>2]|0; - $83 = HEAP32[$82>>2]|0; - $84 = ($81|0)<($83|0); - if (!($84)) { - break L18; - } - $85 = HEAP32[$i>>2]|0; - $86 = HEAP32[$pSrc>>2]|0; - $87 = (($86) + 8|0); - $88 = (($87) + (($85*72)|0)|0); - HEAP32[$pItem>>2] = $88; - $89 = HEAP32[$pItem>>2]|0; - $90 = (($89) + 4|0); - $91 = HEAP32[$90>>2]|0; - $92 = ($91|0)==(0|0); - if ($92) { - $93 = HEAP32[$pItem>>2]|0; - $94 = (($93) + 8|0); - $95 = HEAP32[$94>>2]|0; - $96 = ($95|0)!=(0|0); - if ($96) { - $97 = HEAP32[$pItem>>2]|0; - $98 = (($97) + 8|0); - $99 = HEAP32[$98>>2]|0; - $100 = HEAP32[$pCte>>2]|0; - $101 = HEAP32[$100>>2]|0; - $102 = (_sqlite3_stricmp($99,$101)|0); - $103 = (0)==($102|0); - if ($103) { - $104 = HEAP32[$pTab>>2]|0; - $105 = HEAP32[$pItem>>2]|0; - $106 = (($105) + 16|0); - HEAP32[$106>>2] = $104; - $107 = HEAP32[$pItem>>2]|0; - $108 = (($107) + 37|0); - $109 = HEAP8[$108>>0]|0; - $110 = $109 & -9; - $111 = $110 | 8; - HEAP8[$108>>0] = $111; - $112 = HEAP32[$pTab>>2]|0; - $113 = (($112) + 40|0); - $114 = HEAP16[$113>>1]|0; - $115 = (($114) + 1)<<16>>16; - HEAP16[$113>>1] = $115; - $116 = HEAP32[$pSel>>2]|0; - $117 = (($116) + 6|0); - $118 = HEAP16[$117>>1]|0; - $119 = $118&65535; - $120 = $119 | 2048; - $121 = $120&65535; - HEAP16[$117>>1] = $121; - } - } - } - $122 = HEAP32[$i>>2]|0; - $123 = (($122) + 1)|0; - HEAP32[$i>>2] = $123; - } - } - } while(0); - $124 = HEAP32[$pTab>>2]|0; - $125 = (($124) + 40|0); - $126 = HEAP16[$125>>1]|0; - $127 = $126&65535; - $128 = ($127|0)>(2); - if ($128) { - $129 = HEAP32[$pParse>>2]|0; - $130 = HEAP32[$pCte>>2]|0; - $131 = HEAP32[$130>>2]|0; - HEAP32[$vararg_buffer4>>2] = $131; - _sqlite3ErrorMsg($129,17656,$vararg_buffer4); - HEAP32[$0>>2] = 1; - $205 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($205|0); - } - $132 = HEAP32[$pCte>>2]|0; - $133 = (($132) + 12|0); - HEAP32[$133>>2] = 17704; - $134 = HEAP32[$pParse>>2]|0; - $135 = (($134) + 532|0); - $136 = HEAP32[$135>>2]|0; - HEAP32[$pSavedWith>>2] = $136; - $137 = HEAP32[$pWith>>2]|0; - $138 = HEAP32[$pParse>>2]|0; - $139 = (($138) + 532|0); - HEAP32[$139>>2] = $137; - $140 = HEAP32[$1>>2]|0; - $141 = HEAP32[$bMayRecursive>>2]|0; - $142 = ($141|0)!=(0); - $143 = HEAP32[$pSel>>2]|0; - if ($142) { - $144 = (($143) + 52|0); - $145 = HEAP32[$144>>2]|0; - $146 = $145; - } else { - $146 = $143; - } - (_sqlite3WalkSelect($140,$146)|0); - $147 = HEAP32[$pSel>>2]|0; - HEAP32[$pLeft>>2] = $147; - while(1) { - $148 = HEAP32[$pLeft>>2]|0; - $149 = (($148) + 52|0); - $150 = HEAP32[$149>>2]|0; - $151 = ($150|0)!=(0|0); - $152 = HEAP32[$pLeft>>2]|0; - if (!($151)) { - break; - } - $153 = (($152) + 52|0); - $154 = HEAP32[$153>>2]|0; - HEAP32[$pLeft>>2] = $154; - } - $155 = HEAP32[$152>>2]|0; - HEAP32[$pEList>>2] = $155; - $156 = HEAP32[$pCte>>2]|0; - $157 = (($156) + 4|0); - $158 = HEAP32[$157>>2]|0; - $159 = ($158|0)!=(0|0); - do { - if ($159) { - $160 = HEAP32[$pEList>>2]|0; - $161 = HEAP32[$160>>2]|0; - $162 = HEAP32[$pCte>>2]|0; - $163 = (($162) + 4|0); - $164 = HEAP32[$163>>2]|0; - $165 = HEAP32[$164>>2]|0; - $166 = ($161|0)!=($165|0); - if (!($166)) { - $179 = HEAP32[$pCte>>2]|0; - $180 = (($179) + 4|0); - $181 = HEAP32[$180>>2]|0; - HEAP32[$pEList>>2] = $181; - break; - } - $167 = HEAP32[$pParse>>2]|0; - $168 = HEAP32[$pCte>>2]|0; - $169 = HEAP32[$168>>2]|0; - $170 = HEAP32[$pEList>>2]|0; - $171 = HEAP32[$170>>2]|0; - $172 = HEAP32[$pCte>>2]|0; - $173 = (($172) + 4|0); - $174 = HEAP32[$173>>2]|0; - $175 = HEAP32[$174>>2]|0; - HEAP32[$vararg_buffer4>>2] = $169; - $vararg_ptr7 = (($vararg_buffer4) + 4|0); - HEAP32[$vararg_ptr7>>2] = $171; - $vararg_ptr8 = (($vararg_buffer4) + 8|0); - HEAP32[$vararg_ptr8>>2] = $175; - _sqlite3ErrorMsg($167,17728,$vararg_buffer4); - $176 = HEAP32[$pSavedWith>>2]|0; - $177 = HEAP32[$pParse>>2]|0; - $178 = (($177) + 532|0); - HEAP32[$178>>2] = $176; - HEAP32[$0>>2] = 1; - $205 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($205|0); - } - } while(0); - $182 = HEAP32[$pParse>>2]|0; - $183 = HEAP32[$pEList>>2]|0; - $184 = HEAP32[$pTab>>2]|0; - $185 = (($184) + 38|0); - $186 = HEAP32[$pTab>>2]|0; - $187 = (($186) + 4|0); - (_selectColumnsFromExprList($182,$183,$185,$187)|0); - $188 = HEAP32[$bMayRecursive>>2]|0; - $189 = ($188|0)!=(0); - if ($189) { - $190 = HEAP32[$pSel>>2]|0; - $191 = (($190) + 6|0); - $192 = HEAP16[$191>>1]|0; - $193 = $192&65535; - $194 = $193 & 2048; - $195 = ($194|0)!=(0); - $196 = HEAP32[$pCte>>2]|0; - $197 = (($196) + 12|0); - if ($195) { - HEAP32[$197>>2] = 17768; - } else { - HEAP32[$197>>2] = 17808; - } - $198 = HEAP32[$1>>2]|0; - $199 = HEAP32[$pSel>>2]|0; - (_sqlite3WalkSelect($198,$199)|0); - } - $200 = HEAP32[$pCte>>2]|0; - $201 = (($200) + 12|0); - HEAP32[$201>>2] = 0; - $202 = HEAP32[$pSavedWith>>2]|0; - $203 = HEAP32[$pParse>>2]|0; - $204 = (($203) + 532|0); - HEAP32[$204>>2] = $202; - } - HEAP32[$0>>2] = 0; - $205 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($205|0); -} -function _sqlite3IndexedByLookup($pParse,$pFrom) { - $pParse = $pParse|0; - $pFrom = $pFrom|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $pIdx = 0, $pTab = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $zIndex = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $pTab = sp + 16|0; - $zIndex = sp + 12|0; - $pIdx = sp + 8|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pFrom; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 16|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0|0); - do { - if ($6) { - $7 = HEAP32[$2>>2]|0; - $8 = (($7) + 64|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)!=(0|0); - if ($10) { - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 16|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pTab>>2] = $13; - $14 = HEAP32[$2>>2]|0; - $15 = (($14) + 64|0); - $16 = HEAP32[$15>>2]|0; - HEAP32[$zIndex>>2] = $16; - $17 = HEAP32[$pTab>>2]|0; - $18 = (($17) + 8|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$pIdx>>2] = $19; - while(1) { - $20 = HEAP32[$pIdx>>2]|0; - $21 = ($20|0)!=(0|0); - if (!($21)) { - break; - } - $22 = HEAP32[$pIdx>>2]|0; - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$zIndex>>2]|0; - $25 = (_sqlite3_stricmp($23,$24)|0); - $26 = ($25|0)!=(0); - if (!($26)) { - break; - } - $27 = HEAP32[$pIdx>>2]|0; - $28 = (($27) + 20|0); - $29 = HEAP32[$28>>2]|0; - HEAP32[$pIdx>>2] = $29; - } - $30 = HEAP32[$pIdx>>2]|0; - $31 = ($30|0)!=(0|0); - if ($31) { - $36 = HEAP32[$pIdx>>2]|0; - $37 = HEAP32[$2>>2]|0; - $38 = (($37) + 68|0); - HEAP32[$38>>2] = $36; - break; - } - $32 = HEAP32[$1>>2]|0; - $33 = HEAP32[$zIndex>>2]|0; - HEAP32[$vararg_buffer>>2] = $33; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = 0; - _sqlite3ErrorMsg($32,17632,$vararg_buffer); - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 17|0); - HEAP8[$35>>0] = 1; - HEAP32[$0>>2] = 1; - $39 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($39|0); - } - } - } while(0); - HEAP32[$0>>2] = 0; - $39 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($39|0); -} -function _sqliteProcessJoin($pParse,$p) { - $pParse = $pParse|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $i = 0, $iLeft = 0, $iLeft2 = 0, $iLeftCol = 0, $iLeftCol3 = 0, $iRightCol = 0, $isOuter = 0, $j = 0, $pLeft = 0, $pLeftTab = 0, $pList = 0, $pRight = 0, $pRightTab = 0, $pSrc = 0, $vararg_buffer3 = 0, $zName = 0, $zName1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer3 = sp; - $0 = sp + 76|0; - $1 = sp + 72|0; - $2 = sp + 68|0; - $pSrc = sp + 64|0; - $i = sp + 60|0; - $j = sp + 56|0; - $pLeft = sp + 52|0; - $pRight = sp + 48|0; - $pLeftTab = sp + 44|0; - $pRightTab = sp + 40|0; - $isOuter = sp + 36|0; - $zName = sp + 32|0; - $iLeft = sp + 28|0; - $iLeftCol = sp + 24|0; - $pList = sp + 20|0; - $zName1 = sp + 16|0; - $iLeft2 = sp + 12|0; - $iLeftCol3 = sp + 8|0; - $iRightCol = sp + 4|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $p; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 32|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pSrc>>2] = $5; - $6 = HEAP32[$pSrc>>2]|0; - $7 = (($6) + 8|0); - HEAP32[$pLeft>>2] = $7; - $8 = HEAP32[$pLeft>>2]|0; - $9 = (($8) + 72|0); - HEAP32[$pRight>>2] = $9; - HEAP32[$i>>2] = 0; - L1: while(1) { - $10 = HEAP32[$i>>2]|0; - $11 = HEAP32[$pSrc>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = (($12) - 1)|0; - $14 = ($10|0)<($13|0); - if (!($14)) { - label = 29; - break; - } - $15 = HEAP32[$pLeft>>2]|0; - $16 = (($15) + 16|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$pLeftTab>>2] = $17; - $18 = HEAP32[$pRight>>2]|0; - $19 = (($18) + 16|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$pRightTab>>2] = $20; - $21 = HEAP32[$pLeftTab>>2]|0; - $22 = ($21|0)==(0|0); - L4: do { - if (!($22)) { - $23 = HEAP32[$pRightTab>>2]|0; - $24 = ($23|0)==(0|0); - if (!($24)) { - $25 = HEAP32[$pRight>>2]|0; - $26 = (($25) + 36|0); - $27 = HEAP8[$26>>0]|0; - $28 = $27&255; - $29 = $28 & 32; - $30 = ($29|0)!=(0); - $31 = $30&1; - HEAP32[$isOuter>>2] = $31; - $32 = HEAP32[$pRight>>2]|0; - $33 = (($32) + 36|0); - $34 = HEAP8[$33>>0]|0; - $35 = $34&255; - $36 = $35 & 4; - $37 = ($36|0)!=(0); - L7: do { - if ($37) { - $38 = HEAP32[$pRight>>2]|0; - $39 = (($38) + 44|0); - $40 = HEAP32[$39>>2]|0; - $41 = ($40|0)!=(0|0); - if ($41) { - label = 8; - break L1; - } - $42 = HEAP32[$pRight>>2]|0; - $43 = (($42) + 48|0); - $44 = HEAP32[$43>>2]|0; - $45 = ($44|0)!=(0|0); - if ($45) { - label = 8; - break L1; - } - HEAP32[$j>>2] = 0; - while(1) { - $47 = HEAP32[$j>>2]|0; - $48 = HEAP32[$pRightTab>>2]|0; - $49 = (($48) + 38|0); - $50 = HEAP16[$49>>1]|0; - $51 = $50 << 16 >> 16; - $52 = ($47|0)<($51|0); - if (!($52)) { - break L7; - } - $53 = HEAP32[$j>>2]|0; - $54 = HEAP32[$pRightTab>>2]|0; - $55 = (($54) + 4|0); - $56 = HEAP32[$55>>2]|0; - $57 = (($56) + (($53*24)|0)|0); - $58 = HEAP32[$57>>2]|0; - HEAP32[$zName>>2] = $58; - $59 = HEAP32[$pSrc>>2]|0; - $60 = HEAP32[$i>>2]|0; - $61 = (($60) + 1)|0; - $62 = HEAP32[$zName>>2]|0; - $63 = (_tableAndColumnIndex($59,$61,$62,$iLeft,$iLeftCol)|0); - $64 = ($63|0)!=(0); - if ($64) { - $65 = HEAP32[$1>>2]|0; - $66 = HEAP32[$pSrc>>2]|0; - $67 = HEAP32[$iLeft>>2]|0; - $68 = HEAP32[$iLeftCol>>2]|0; - $69 = HEAP32[$i>>2]|0; - $70 = (($69) + 1)|0; - $71 = HEAP32[$j>>2]|0; - $72 = HEAP32[$isOuter>>2]|0; - $73 = HEAP32[$2>>2]|0; - $74 = (($73) + 36|0); - _addWhereTerm($65,$66,$67,$68,$70,$71,$72,$74); - } - $75 = HEAP32[$j>>2]|0; - $76 = (($75) + 1)|0; - HEAP32[$j>>2] = $76; - } - } - } while(0); - $77 = HEAP32[$pRight>>2]|0; - $78 = (($77) + 44|0); - $79 = HEAP32[$78>>2]|0; - $80 = ($79|0)!=(0|0); - if ($80) { - $81 = HEAP32[$pRight>>2]|0; - $82 = (($81) + 48|0); - $83 = HEAP32[$82>>2]|0; - $84 = ($83|0)!=(0|0); - if ($84) { - label = 16; - break L1; - } - } - $86 = HEAP32[$pRight>>2]|0; - $87 = (($86) + 44|0); - $88 = HEAP32[$87>>2]|0; - $89 = ($88|0)!=(0|0); - if ($89) { - $90 = HEAP32[$isOuter>>2]|0; - $91 = ($90|0)!=(0); - if ($91) { - $92 = HEAP32[$pRight>>2]|0; - $93 = (($92) + 44|0); - $94 = HEAP32[$93>>2]|0; - $95 = HEAP32[$pRight>>2]|0; - $96 = (($95) + 40|0); - $97 = HEAP32[$96>>2]|0; - _setJoinExpr($94,$97); - } - $98 = HEAP32[$1>>2]|0; - $99 = HEAP32[$98>>2]|0; - $100 = HEAP32[$2>>2]|0; - $101 = (($100) + 36|0); - $102 = HEAP32[$101>>2]|0; - $103 = HEAP32[$pRight>>2]|0; - $104 = (($103) + 44|0); - $105 = HEAP32[$104>>2]|0; - $106 = (_sqlite3ExprAnd($99,$102,$105)|0); - $107 = HEAP32[$2>>2]|0; - $108 = (($107) + 36|0); - HEAP32[$108>>2] = $106; - $109 = HEAP32[$pRight>>2]|0; - $110 = (($109) + 44|0); - HEAP32[$110>>2] = 0; - } - $111 = HEAP32[$pRight>>2]|0; - $112 = (($111) + 48|0); - $113 = HEAP32[$112>>2]|0; - $114 = ($113|0)!=(0|0); - if ($114) { - $115 = HEAP32[$pRight>>2]|0; - $116 = (($115) + 48|0); - $117 = HEAP32[$116>>2]|0; - HEAP32[$pList>>2] = $117; - HEAP32[$j>>2] = 0; - while(1) { - $118 = HEAP32[$j>>2]|0; - $119 = HEAP32[$pList>>2]|0; - $120 = (($119) + 4|0); - $121 = HEAP32[$120>>2]|0; - $122 = ($118|0)<($121|0); - if (!($122)) { - break L4; - } - $123 = HEAP32[$j>>2]|0; - $124 = HEAP32[$pList>>2]|0; - $125 = HEAP32[$124>>2]|0; - $126 = (($125) + ($123<<3)|0); - $127 = HEAP32[$126>>2]|0; - HEAP32[$zName1>>2] = $127; - $128 = HEAP32[$pRightTab>>2]|0; - $129 = HEAP32[$zName1>>2]|0; - $130 = (_columnIndex($128,$129)|0); - HEAP32[$iRightCol>>2] = $130; - $131 = HEAP32[$iRightCol>>2]|0; - $132 = ($131|0)<(0); - if ($132) { - label = 26; - break L1; - } - $133 = HEAP32[$pSrc>>2]|0; - $134 = HEAP32[$i>>2]|0; - $135 = (($134) + 1)|0; - $136 = HEAP32[$zName1>>2]|0; - $137 = (_tableAndColumnIndex($133,$135,$136,$iLeft2,$iLeftCol3)|0); - $138 = ($137|0)!=(0); - if (!($138)) { - label = 26; - break L1; - } - $141 = HEAP32[$1>>2]|0; - $142 = HEAP32[$pSrc>>2]|0; - $143 = HEAP32[$iLeft2>>2]|0; - $144 = HEAP32[$iLeftCol3>>2]|0; - $145 = HEAP32[$i>>2]|0; - $146 = (($145) + 1)|0; - $147 = HEAP32[$iRightCol>>2]|0; - $148 = HEAP32[$isOuter>>2]|0; - $149 = HEAP32[$2>>2]|0; - $150 = (($149) + 36|0); - _addWhereTerm($141,$142,$143,$144,$146,$147,$148,$150); - $151 = HEAP32[$j>>2]|0; - $152 = (($151) + 1)|0; - HEAP32[$j>>2] = $152; - } - } - } - } - } while(0); - $153 = HEAP32[$i>>2]|0; - $154 = (($153) + 1)|0; - HEAP32[$i>>2] = $154; - $155 = HEAP32[$pRight>>2]|0; - $156 = (($155) + 72|0); - HEAP32[$pRight>>2] = $156; - $157 = HEAP32[$pLeft>>2]|0; - $158 = (($157) + 72|0); - HEAP32[$pLeft>>2] = $158; - } - if ((label|0) == 8) { - $46 = HEAP32[$1>>2]|0; - HEAP32[$vararg_buffer3>>2] = 0; - _sqlite3ErrorMsg($46,17456,$vararg_buffer3); - HEAP32[$0>>2] = 1; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - else if ((label|0) == 16) { - $85 = HEAP32[$1>>2]|0; - _sqlite3ErrorMsg($85,17512,$vararg_buffer3); - HEAP32[$0>>2] = 1; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - else if ((label|0) == 26) { - $139 = HEAP32[$1>>2]|0; - $140 = HEAP32[$zName1>>2]|0; - HEAP32[$vararg_buffer3>>2] = $140; - _sqlite3ErrorMsg($139,17568,$vararg_buffer3); - HEAP32[$0>>2] = 1; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - else if ((label|0) == 29) { - HEAP32[$0>>2] = 0; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - return 0|0; -} -function _tableAndColumnIndex($pSrc,$N,$zCol,$piTab,$piCol) { - $pSrc = $pSrc|0; - $N = $N|0; - $zCol = $zCol|0; - $piTab = $piTab|0; - $piCol = $piCol|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $iCol = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $5 = sp + 8|0; - $i = sp + 4|0; - $iCol = sp; - HEAP32[$1>>2] = $pSrc; - HEAP32[$2>>2] = $N; - HEAP32[$3>>2] = $zCol; - HEAP32[$4>>2] = $piTab; - HEAP32[$5>>2] = $piCol; - HEAP32[$i>>2] = 0; - while(1) { - $6 = HEAP32[$i>>2]|0; - $7 = HEAP32[$2>>2]|0; - $8 = ($6|0)<($7|0); - if (!($8)) { - label = 8; - break; - } - $9 = HEAP32[$i>>2]|0; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 8|0); - $12 = (($11) + (($9*72)|0)|0); - $13 = (($12) + 16|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$3>>2]|0; - $16 = (_columnIndex($14,$15)|0); - HEAP32[$iCol>>2] = $16; - $17 = HEAP32[$iCol>>2]|0; - $18 = ($17|0)>=(0); - if ($18) { - break; - } - $25 = HEAP32[$i>>2]|0; - $26 = (($25) + 1)|0; - HEAP32[$i>>2] = $26; - } - if ((label|0) == 8) { - HEAP32[$0>>2] = 0; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); - } - $19 = HEAP32[$4>>2]|0; - $20 = ($19|0)!=(0|0); - if ($20) { - $21 = HEAP32[$i>>2]|0; - $22 = HEAP32[$4>>2]|0; - HEAP32[$22>>2] = $21; - $23 = HEAP32[$iCol>>2]|0; - $24 = HEAP32[$5>>2]|0; - HEAP32[$24>>2] = $23; - } - HEAP32[$0>>2] = 1; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); -} -function _sqlite3IdListIndex($pList,$zName) { - $pList = $pList|0; - $zName = $zName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $i = sp; - HEAP32[$1>>2] = $pList; - HEAP32[$2>>2] = $zName; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - HEAP32[$0>>2] = -1; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $5 = HEAP32[$i>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($5|0)<($8|0); - if (!($9)) { - label = 8; - break; - } - $10 = HEAP32[$i>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + ($10<<3)|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = (_sqlite3_stricmp($14,$15)|0); - $17 = ($16|0)==(0); - $18 = HEAP32[$i>>2]|0; - if ($17) { - label = 6; - break; - } - $19 = (($18) + 1)|0; - HEAP32[$i>>2] = $19; - } - if ((label|0) == 6) { - HEAP32[$0>>2] = $18; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); - } - else if ((label|0) == 8) { - HEAP32[$0>>2] = -1; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); - } - return 0|0; -} -function _columnIndex($pTab,$zCol) { - $pTab = $pTab|0; - $zCol = $zCol|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $i = sp; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $zCol; - HEAP32[$i>>2] = 0; - while(1) { - $3 = HEAP32[$i>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 38|0); - $6 = HEAP16[$5>>1]|0; - $7 = $6 << 16 >> 16; - $8 = ($3|0)<($7|0); - if (!($8)) { - label = 6; - break; - } - $9 = HEAP32[$i>>2]|0; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + (($9*24)|0)|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = (_sqlite3_stricmp($14,$15)|0); - $17 = ($16|0)==(0); - $18 = HEAP32[$i>>2]|0; - if ($17) { - label = 4; - break; - } - $19 = (($18) + 1)|0; - HEAP32[$i>>2] = $19; - } - if ((label|0) == 4) { - HEAP32[$0>>2] = $18; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); - } - else if ((label|0) == 6) { - HEAP32[$0>>2] = -1; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); - } - return 0|0; -} -function _addWhereTerm($pParse,$pSrc,$iLeft,$iColLeft,$iRight,$iColRight,$isOuterJoin,$ppWhere) { - $pParse = $pParse|0; - $pSrc = $pSrc|0; - $iLeft = $iLeft|0; - $iColLeft = $iColLeft|0; - $iRight = $iRight|0; - $iColRight = $iColRight|0; - $isOuterJoin = $isOuterJoin|0; - $ppWhere = $ppWhere|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $pE1 = 0, $pE2 = 0, $pEq = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $4 = sp + 28|0; - $5 = sp + 24|0; - $6 = sp + 20|0; - $7 = sp + 16|0; - $db = sp + 12|0; - $pE1 = sp + 8|0; - $pE2 = sp + 4|0; - $pEq = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pSrc; - HEAP32[$2>>2] = $iLeft; - HEAP32[$3>>2] = $iColLeft; - HEAP32[$4>>2] = $iRight; - HEAP32[$5>>2] = $iColRight; - HEAP32[$6>>2] = $isOuterJoin; - HEAP32[$7>>2] = $ppWhere; - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$8>>2]|0; - HEAP32[$db>>2] = $9; - $10 = HEAP32[$db>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$2>>2]|0; - $13 = HEAP32[$3>>2]|0; - $14 = (_sqlite3CreateColumnExpr($10,$11,$12,$13)|0); - HEAP32[$pE1>>2] = $14; - $15 = HEAP32[$db>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$4>>2]|0; - $18 = HEAP32[$5>>2]|0; - $19 = (_sqlite3CreateColumnExpr($15,$16,$17,$18)|0); - HEAP32[$pE2>>2] = $19; - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$pE1>>2]|0; - $22 = HEAP32[$pE2>>2]|0; - $23 = (_sqlite3PExpr($20,79,$21,$22,0)|0); - HEAP32[$pEq>>2] = $23; - $24 = HEAP32[$pEq>>2]|0; - $25 = ($24|0)!=(0|0); - if ($25) { - $26 = HEAP32[$6>>2]|0; - $27 = ($26|0)!=(0); - if ($27) { - $28 = HEAP32[$pEq>>2]|0; - $29 = (($28) + 4|0); - $30 = HEAP32[$29>>2]|0; - $31 = $30 | 1; - HEAP32[$29>>2] = $31; - $32 = HEAP32[$pE2>>2]|0; - $33 = (($32) + 28|0); - $34 = HEAP32[$33>>2]|0; - $35 = $34&65535; - $36 = HEAP32[$pEq>>2]|0; - $37 = (($36) + 36|0); - HEAP16[$37>>1] = $35; - } - } - $38 = HEAP32[$db>>2]|0; - $39 = HEAP32[$7>>2]|0; - $40 = HEAP32[$39>>2]|0; - $41 = HEAP32[$pEq>>2]|0; - $42 = (_sqlite3ExprAnd($38,$40,$41)|0); - $43 = HEAP32[$7>>2]|0; - HEAP32[$43>>2] = $42; - STACKTOP = sp;return; -} -function _setJoinExpr($p,$iTable) { - $p = $p|0; - $iTable = $iTable|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $iTable; - while(1) { - $2 = HEAP32[$0>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - break; - } - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - $7 = $6 | 1; - HEAP32[$5>>2] = $7; - $8 = HEAP32[$1>>2]|0; - $9 = $8&65535; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 36|0); - HEAP16[$11>>1] = $9; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 12|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$1>>2]|0; - _setJoinExpr($14,$15); - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 16|0); - $18 = HEAP32[$17>>2]|0; - HEAP32[$0>>2] = $18; - } - STACKTOP = sp;return; -} -function _sqlite3ExprAnd($db,$pLeft,$pRight) { - $db = $db|0; - $pLeft = $pLeft|0; - $pRight = $pRight|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pNew = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $pNew = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pLeft; - HEAP32[$3>>2] = $pRight; - $4 = HEAP32[$2>>2]|0; - $5 = ($4|0)==(0|0); - $6 = HEAP32[$3>>2]|0; - if ($5) { - HEAP32[$0>>2] = $6; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); - } - $7 = ($6|0)==(0|0); - $8 = HEAP32[$2>>2]|0; - if ($7) { - HEAP32[$0>>2] = $8; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); - } - $9 = (_exprAlwaysFalse($8)|0); - $10 = ($9|0)!=(0); - if (!($10)) { - $11 = HEAP32[$3>>2]|0; - $12 = (_exprAlwaysFalse($11)|0); - $13 = ($12|0)!=(0); - if (!($13)) { - $20 = HEAP32[$1>>2]|0; - $21 = (_sqlite3ExprAlloc($20,72,0,0)|0); - HEAP32[$pNew>>2] = $21; - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$pNew>>2]|0; - $24 = HEAP32[$2>>2]|0; - $25 = HEAP32[$3>>2]|0; - _sqlite3ExprAttachSubtrees($22,$23,$24,$25); - $26 = HEAP32[$pNew>>2]|0; - HEAP32[$0>>2] = $26; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); - } - } - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$2>>2]|0; - _sqlite3ExprDelete($14,$15); - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($16,$17); - $18 = HEAP32[$1>>2]|0; - $19 = (_sqlite3ExprAlloc($18,132,10056,0)|0); - HEAP32[$0>>2] = $19; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); -} -function _exprAlwaysFalse($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $v = sp; - HEAP32[$1>>2] = $p; - HEAP32[$v>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - $5 = $4 & 1; - $6 = ($5|0)!=(0); - do { - if ($6) { - HEAP32[$0>>2] = 0; - } else { - $7 = HEAP32[$1>>2]|0; - $8 = (_sqlite3ExprIsInteger($7,$v)|0); - $9 = ($8|0)!=(0); - if ($9) { - $10 = HEAP32[$v>>2]|0; - $11 = ($10|0)==(0); - $12 = $11&1; - HEAP32[$0>>2] = $12; - break; - } else { - HEAP32[$0>>2] = 0; - break; - } - } - } while(0); - $13 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($13|0); -} -function _sqlite3ExprAlloc($db,$op,$pToken,$dequote) { - $db = $db|0; - $op = $op|0; - $pToken = $pToken|0; - $dequote = $dequote|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $c = 0, $iValue = 0, $nExtra = 0, $or$cond = 0, $or$cond3 = 0, $pNew = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $pNew = sp + 12|0; - $nExtra = sp + 8|0; - $iValue = sp + 4|0; - $c = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $op; - HEAP32[$2>>2] = $pToken; - HEAP32[$3>>2] = $dequote; - HEAP32[$nExtra>>2] = 0; - HEAP32[$iValue>>2] = 0; - $4 = HEAP32[$2>>2]|0; - $5 = ($4|0)!=(0|0); - do { - if ($5) { - $6 = HEAP32[$1>>2]|0; - $7 = ($6|0)!=(132); - if (!($7)) { - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)==(0|0); - if (!($10)) { - $11 = HEAP32[$2>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = (_sqlite3GetInt32($12,$iValue)|0); - $14 = ($13|0)==(0); - if (!($14)) { - break; - } - } - } - $15 = HEAP32[$2>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + 1)|0; - HEAP32[$nExtra>>2] = $18; - } - } while(0); - $19 = HEAP32[$0>>2]|0; - $20 = HEAP32[$nExtra>>2]|0; - $21 = (48 + ($20))|0; - $22 = (_sqlite3DbMallocZero($19,$21)|0); - HEAP32[$pNew>>2] = $22; - $23 = HEAP32[$pNew>>2]|0; - $24 = ($23|0)!=(0|0); - if (!($24)) { - $89 = HEAP32[$pNew>>2]|0; - STACKTOP = sp;return ($89|0); - } - $25 = HEAP32[$1>>2]|0; - $26 = $25&255; - $27 = HEAP32[$pNew>>2]|0; - HEAP8[$27>>0] = $26; - $28 = HEAP32[$pNew>>2]|0; - $29 = (($28) + 34|0); - HEAP16[$29>>1] = -1; - $30 = HEAP32[$2>>2]|0; - $31 = ($30|0)!=(0|0); - do { - if ($31) { - $32 = HEAP32[$nExtra>>2]|0; - $33 = ($32|0)==(0); - $34 = HEAP32[$pNew>>2]|0; - if ($33) { - $35 = (($34) + 4|0); - $36 = HEAP32[$35>>2]|0; - $37 = $36 | 1024; - HEAP32[$35>>2] = $37; - $38 = HEAP32[$iValue>>2]|0; - $39 = HEAP32[$pNew>>2]|0; - $40 = (($39) + 8|0); - HEAP32[$40>>2] = $38; - break; - } - $41 = (($34) + 48|0); - $42 = HEAP32[$pNew>>2]|0; - $43 = (($42) + 8|0); - HEAP32[$43>>2] = $41; - $44 = HEAP32[$2>>2]|0; - $45 = (($44) + 4|0); - $46 = HEAP32[$45>>2]|0; - $47 = ($46|0)!=(0); - if ($47) { - $48 = HEAP32[$pNew>>2]|0; - $49 = (($48) + 8|0); - $50 = HEAP32[$49>>2]|0; - $51 = HEAP32[$2>>2]|0; - $52 = HEAP32[$51>>2]|0; - $53 = HEAP32[$2>>2]|0; - $54 = (($53) + 4|0); - $55 = HEAP32[$54>>2]|0; - _memcpy(($50|0),($52|0),($55|0))|0; - } - $56 = HEAP32[$2>>2]|0; - $57 = (($56) + 4|0); - $58 = HEAP32[$57>>2]|0; - $59 = HEAP32[$pNew>>2]|0; - $60 = (($59) + 8|0); - $61 = HEAP32[$60>>2]|0; - $62 = (($61) + ($58)|0); - HEAP8[$62>>0] = 0; - $63 = HEAP32[$3>>2]|0; - $64 = ($63|0)!=(0); - if ($64) { - $65 = HEAP32[$nExtra>>2]|0; - $66 = ($65|0)>=(3); - if ($66) { - $67 = HEAP32[$2>>2]|0; - $68 = HEAP32[$67>>2]|0; - $69 = HEAP8[$68>>0]|0; - $70 = $69 << 24 >> 24; - HEAP32[$c>>2] = $70; - $71 = ($70|0)==(39); - if (!($71)) { - $72 = HEAP32[$c>>2]|0; - $73 = ($72|0)==(34); - $74 = HEAP32[$c>>2]|0; - $75 = ($74|0)==(91); - $or$cond = $73 | $75; - $76 = HEAP32[$c>>2]|0; - $77 = ($76|0)==(96); - $or$cond3 = $or$cond | $77; - if (!($or$cond3)) { - break; - } - } - $78 = HEAP32[$pNew>>2]|0; - $79 = (($78) + 8|0); - $80 = HEAP32[$79>>2]|0; - (_sqlite3Dequote($80)|0); - $81 = HEAP32[$c>>2]|0; - $82 = ($81|0)==(34); - if ($82) { - $83 = HEAP32[$pNew>>2]|0; - $84 = (($83) + 4|0); - $85 = HEAP32[$84>>2]|0; - $86 = $85 | 64; - HEAP32[$84>>2] = $86; - } - } - } - } - } while(0); - $87 = HEAP32[$pNew>>2]|0; - $88 = (($87) + 24|0); - HEAP32[$88>>2] = 1; - $89 = HEAP32[$pNew>>2]|0; - STACKTOP = sp;return ($89|0); -} -function _sqlite3ExprAttachSubtrees($db,$pRoot,$pLeft,$pRight) { - $db = $db|0; - $pRoot = $pRoot|0; - $pLeft = $pLeft|0; - $pRight = $pRight|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pRoot; - HEAP32[$2>>2] = $pLeft; - HEAP32[$3>>2] = $pRight; - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)==(0|0); - if ($5) { - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$2>>2]|0; - _sqlite3ExprDelete($6,$7); - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$3>>2]|0; - _sqlite3ExprDelete($8,$9); - STACKTOP = sp;return; - } - $10 = HEAP32[$3>>2]|0; - $11 = ($10|0)!=(0|0); - if ($11) { - $12 = HEAP32[$3>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 16|0); - HEAP32[$14>>2] = $12; - $15 = HEAP32[$3>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - $18 = 256 & $17; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 4|0); - $21 = HEAP32[$20>>2]|0; - $22 = $21 | $18; - HEAP32[$20>>2] = $22; - } - $23 = HEAP32[$2>>2]|0; - $24 = ($23|0)!=(0|0); - if ($24) { - $25 = HEAP32[$2>>2]|0; - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 12|0); - HEAP32[$27>>2] = $25; - $28 = HEAP32[$2>>2]|0; - $29 = (($28) + 4|0); - $30 = HEAP32[$29>>2]|0; - $31 = 256 & $30; - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 4|0); - $34 = HEAP32[$33>>2]|0; - $35 = $34 | $31; - HEAP32[$33>>2] = $35; - } - $36 = HEAP32[$1>>2]|0; - _exprSetHeight($36); - STACKTOP = sp;return; -} -function _exprSetHeight($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $nHeight = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $nHeight = sp; - HEAP32[$0>>2] = $p; - HEAP32[$nHeight>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 12|0); - $3 = HEAP32[$2>>2]|0; - _heightOfExpr($3,$nHeight); - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 16|0); - $6 = HEAP32[$5>>2]|0; - _heightOfExpr($6,$nHeight); - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = $9 & 2048; - $11 = ($10|0)!=(0); - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 20|0); - if ($11) { - $14 = HEAP32[$13>>2]|0; - _heightOfSelect($14,$nHeight); - } else { - $15 = HEAP32[$13>>2]|0; - _heightOfExprList($15,$nHeight); - } - $16 = HEAP32[$nHeight>>2]|0; - $17 = (($16) + 1)|0; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 24|0); - HEAP32[$19>>2] = $17; - STACKTOP = sp;return; -} -function _heightOfExpr($p,$pnHeight) { - $p = $p|0; - $pnHeight = $pnHeight|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $pnHeight; - $2 = HEAP32[$0>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - STACKTOP = sp;return; - } - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 24|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = ($6|0)>($8|0); - if (!($9)) { - STACKTOP = sp;return; - } - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 24|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$1>>2]|0; - HEAP32[$13>>2] = $12; - STACKTOP = sp;return; -} -function _heightOfSelect($p,$pnHeight) { - $p = $p|0; - $pnHeight = $pnHeight|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $pnHeight; - $2 = HEAP32[$0>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - STACKTOP = sp;return; - } - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 36|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$1>>2]|0; - _heightOfExpr($6,$7); - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 44|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$1>>2]|0; - _heightOfExpr($10,$11); - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 60|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$1>>2]|0; - _heightOfExpr($14,$15); - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 64|0); - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$1>>2]|0; - _heightOfExpr($18,$19); - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$1>>2]|0; - _heightOfExprList($21,$22); - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 40|0); - $25 = HEAP32[$24>>2]|0; - $26 = HEAP32[$1>>2]|0; - _heightOfExprList($25,$26); - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 48|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$1>>2]|0; - _heightOfExprList($29,$30); - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 52|0); - $33 = HEAP32[$32>>2]|0; - $34 = HEAP32[$1>>2]|0; - _heightOfSelect($33,$34); - STACKTOP = sp;return; -} -function _heightOfExprList($p,$pnHeight) { - $p = $p|0; - $pnHeight = $pnHeight|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $pnHeight; - $2 = HEAP32[$0>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $4 = HEAP32[$i>>2]|0; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = ($4|0)<($6|0); - if (!($7)) { - break; - } - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 4|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + (($8*20)|0)|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$1>>2]|0; - _heightOfExpr($13,$14); - $15 = HEAP32[$i>>2]|0; - $16 = (($15) + 1)|0; - HEAP32[$i>>2] = $16; - } - STACKTOP = sp;return; -} -function _sqlite3CreateColumnExpr($db,$pSrc,$iSrc,$iCol) { - $db = $db|0; - $pSrc = $pSrc|0; - $iSrc = $iSrc|0; - $iCol = $iCol|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; - var $9 = 0, $p = 0, $pItem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $p = sp + 4|0; - $pItem = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pSrc; - HEAP32[$2>>2] = $iSrc; - HEAP32[$3>>2] = $iCol; - $4 = HEAP32[$0>>2]|0; - $5 = (_sqlite3ExprAlloc($4,154,0,0)|0); - HEAP32[$p>>2] = $5; - $6 = HEAP32[$p>>2]|0; - $7 = ($6|0)!=(0|0); - if (!($7)) { - $60 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($60|0); - } - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 8|0); - $11 = (($10) + (($8*72)|0)|0); - HEAP32[$pItem>>2] = $11; - $12 = HEAP32[$pItem>>2]|0; - $13 = (($12) + 16|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$p>>2]|0; - $16 = (($15) + 44|0); - HEAP32[$16>>2] = $14; - $17 = HEAP32[$pItem>>2]|0; - $18 = (($17) + 40|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$p>>2]|0; - $21 = (($20) + 28|0); - HEAP32[$21>>2] = $19; - $22 = HEAP32[$p>>2]|0; - $23 = (($22) + 44|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + 36|0); - $26 = HEAP16[$25>>1]|0; - $27 = $26 << 16 >> 16; - $28 = HEAP32[$3>>2]|0; - $29 = ($27|0)==($28|0); - if ($29) { - $30 = HEAP32[$p>>2]|0; - $31 = (($30) + 32|0); - HEAP16[$31>>1] = -1; - } else { - $32 = HEAP32[$3>>2]|0; - $33 = $32&65535; - $34 = HEAP32[$p>>2]|0; - $35 = (($34) + 32|0); - HEAP16[$35>>1] = $33; - $36 = HEAP32[$3>>2]|0; - $37 = ($36|0)>=(64); - $38 = HEAP32[$3>>2]|0; - $39 = $37 ? 63 : $38; - $40 = (_bitshift64Shl(1,0,($39|0))|0); - $41 = tempRet0; - $42 = HEAP32[$pItem>>2]|0; - $43 = (($42) + 56|0); - $44 = $43; - $45 = $44; - $46 = HEAP32[$45>>2]|0; - $47 = (($44) + 4)|0; - $48 = $47; - $49 = HEAP32[$48>>2]|0; - $50 = $46 | $40; - $51 = $49 | $41; - $52 = $43; - $53 = $52; - HEAP32[$53>>2] = $50; - $54 = (($52) + 4)|0; - $55 = $54; - HEAP32[$55>>2] = $51; - } - $56 = HEAP32[$p>>2]|0; - $57 = (($56) + 4|0); - $58 = HEAP32[$57>>2]|0; - $59 = $58 | 4; - HEAP32[$57>>2] = $59; - $60 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($60|0); -} -function _searchWith($pWith,$pItem,$ppContext) { - $pWith = $pWith|0; - $pItem = $pItem|0; - $ppContext = $ppContext|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0; - var $p = 0, $zName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $zName = sp + 8|0; - $p = sp + 4|0; - $i = sp; - HEAP32[$1>>2] = $pWith; - HEAP32[$2>>2] = $pItem; - HEAP32[$3>>2] = $ppContext; - $4 = HEAP32[$2>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)==(0|0); - L1: do { - if ($7) { - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + 8|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$zName>>2] = $10; - $11 = ($10|0)!=(0|0); - if ($11) { - $12 = HEAP32[$1>>2]|0; - HEAP32[$p>>2] = $12; - L4: while(1) { - $13 = HEAP32[$p>>2]|0; - $14 = ($13|0)!=(0|0); - if (!($14)) { - break L1; - } - HEAP32[$i>>2] = 0; - while(1) { - $15 = HEAP32[$i>>2]|0; - $16 = HEAP32[$p>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = ($15|0)<($17|0); - if (!($18)) { - break; - } - $19 = HEAP32[$zName>>2]|0; - $20 = HEAP32[$i>>2]|0; - $21 = HEAP32[$p>>2]|0; - $22 = (($21) + 8|0); - $23 = (($22) + ($20<<4)|0); - $24 = HEAP32[$23>>2]|0; - $25 = (_sqlite3_stricmp($19,$24)|0); - $26 = ($25|0)==(0); - if ($26) { - break L4; - } - $33 = HEAP32[$i>>2]|0; - $34 = (($33) + 1)|0; - HEAP32[$i>>2] = $34; - } - $35 = HEAP32[$p>>2]|0; - $36 = (($35) + 4|0); - $37 = HEAP32[$36>>2]|0; - HEAP32[$p>>2] = $37; - } - $27 = HEAP32[$p>>2]|0; - $28 = HEAP32[$3>>2]|0; - HEAP32[$28>>2] = $27; - $29 = HEAP32[$i>>2]|0; - $30 = HEAP32[$p>>2]|0; - $31 = (($30) + 8|0); - $32 = (($31) + ($29<<4)|0); - HEAP32[$0>>2] = $32; - $38 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($38|0); - } - } - } while(0); - HEAP32[$0>>2] = 0; - $38 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($38|0); -} -function _sqlite3SrcListDup($db,$p,$flags) { - $db = $db|0; - $p = $p|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; - var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; - var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; - var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; - var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0; - var $nByte = 0, $pNew = 0, $pNewItem = 0, $pOldItem = 0, $pTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $pNew = sp + 20|0; - $i = sp + 16|0; - $nByte = sp + 12|0; - $pNewItem = sp + 8|0; - $pOldItem = sp + 4|0; - $pTab = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $p; - HEAP32[$3>>2] = $flags; - $4 = HEAP32[$2>>2]|0; - $5 = ($4|0)==(0|0); - if ($5) { - HEAP32[$0>>2] = 0; - $198 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($198|0); - } - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)>(0); - if ($8) { - $9 = HEAP32[$2>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = (($10) - 1)|0; - $12 = ($11*72)|0; - $14 = $12; - } else { - $14 = 0; - } - $13 = (80 + ($14))|0; - HEAP32[$nByte>>2] = $13; - $15 = HEAP32[$1>>2]|0; - $16 = HEAP32[$nByte>>2]|0; - $17 = (_sqlite3DbMallocRaw($15,$16)|0); - HEAP32[$pNew>>2] = $17; - $18 = HEAP32[$pNew>>2]|0; - $19 = ($18|0)==(0|0); - if ($19) { - HEAP32[$0>>2] = 0; - $198 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($198|0); - } - $20 = HEAP32[$2>>2]|0; - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$pNew>>2]|0; - $23 = (($22) + 4|0); - HEAP32[$23>>2] = $21; - $24 = HEAP32[$pNew>>2]|0; - HEAP32[$24>>2] = $21; - HEAP32[$i>>2] = 0; - while(1) { - $25 = HEAP32[$i>>2]|0; - $26 = HEAP32[$2>>2]|0; - $27 = HEAP32[$26>>2]|0; - $28 = ($25|0)<($27|0); - if (!($28)) { - break; - } - $29 = HEAP32[$i>>2]|0; - $30 = HEAP32[$pNew>>2]|0; - $31 = (($30) + 8|0); - $32 = (($31) + (($29*72)|0)|0); - HEAP32[$pNewItem>>2] = $32; - $33 = HEAP32[$i>>2]|0; - $34 = HEAP32[$2>>2]|0; - $35 = (($34) + 8|0); - $36 = (($35) + (($33*72)|0)|0); - HEAP32[$pOldItem>>2] = $36; - $37 = HEAP32[$pOldItem>>2]|0; - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$pNewItem>>2]|0; - HEAP32[$39>>2] = $38; - $40 = HEAP32[$1>>2]|0; - $41 = HEAP32[$pOldItem>>2]|0; - $42 = (($41) + 4|0); - $43 = HEAP32[$42>>2]|0; - $44 = (_sqlite3DbStrDup($40,$43)|0); - $45 = HEAP32[$pNewItem>>2]|0; - $46 = (($45) + 4|0); - HEAP32[$46>>2] = $44; - $47 = HEAP32[$1>>2]|0; - $48 = HEAP32[$pOldItem>>2]|0; - $49 = (($48) + 8|0); - $50 = HEAP32[$49>>2]|0; - $51 = (_sqlite3DbStrDup($47,$50)|0); - $52 = HEAP32[$pNewItem>>2]|0; - $53 = (($52) + 8|0); - HEAP32[$53>>2] = $51; - $54 = HEAP32[$1>>2]|0; - $55 = HEAP32[$pOldItem>>2]|0; - $56 = (($55) + 12|0); - $57 = HEAP32[$56>>2]|0; - $58 = (_sqlite3DbStrDup($54,$57)|0); - $59 = HEAP32[$pNewItem>>2]|0; - $60 = (($59) + 12|0); - HEAP32[$60>>2] = $58; - $61 = HEAP32[$pOldItem>>2]|0; - $62 = (($61) + 36|0); - $63 = HEAP8[$62>>0]|0; - $64 = HEAP32[$pNewItem>>2]|0; - $65 = (($64) + 36|0); - HEAP8[$65>>0] = $63; - $66 = HEAP32[$pOldItem>>2]|0; - $67 = (($66) + 40|0); - $68 = HEAP32[$67>>2]|0; - $69 = HEAP32[$pNewItem>>2]|0; - $70 = (($69) + 40|0); - HEAP32[$70>>2] = $68; - $71 = HEAP32[$pOldItem>>2]|0; - $72 = (($71) + 24|0); - $73 = HEAP32[$72>>2]|0; - $74 = HEAP32[$pNewItem>>2]|0; - $75 = (($74) + 24|0); - HEAP32[$75>>2] = $73; - $76 = HEAP32[$pOldItem>>2]|0; - $77 = (($76) + 28|0); - $78 = HEAP32[$77>>2]|0; - $79 = HEAP32[$pNewItem>>2]|0; - $80 = (($79) + 28|0); - HEAP32[$80>>2] = $78; - $81 = HEAP32[$pOldItem>>2]|0; - $82 = (($81) + 37|0); - $83 = HEAP8[$82>>0]|0; - $84 = ($83&255) >>> 1; - $85 = $84 & 1; - $86 = $85&255; - $87 = HEAP32[$pNewItem>>2]|0; - $88 = (($87) + 37|0); - $89 = $86&255; - $90 = HEAP8[$88>>0]|0; - $91 = $89 & 1; - $92 = ($91 << 1)&255; - $93 = $90 & -3; - $94 = $93 | $92; - HEAP8[$88>>0] = $94; - $95 = HEAP32[$pOldItem>>2]|0; - $96 = (($95) + 37|0); - $97 = HEAP8[$96>>0]|0; - $98 = ($97&255) >>> 2; - $99 = $98 & 1; - $100 = $99&255; - $101 = HEAP32[$pNewItem>>2]|0; - $102 = (($101) + 37|0); - $103 = $100&255; - $104 = HEAP8[$102>>0]|0; - $105 = $103 & 1; - $106 = ($105 << 2)&255; - $107 = $104 & -5; - $108 = $107 | $106; - HEAP8[$102>>0] = $108; - $109 = HEAP32[$pOldItem>>2]|0; - $110 = (($109) + 37|0); - $111 = HEAP8[$110>>0]|0; - $112 = ($111&255) >>> 3; - $113 = $112 & 1; - $114 = $113&255; - $115 = HEAP32[$pNewItem>>2]|0; - $116 = (($115) + 37|0); - $117 = $114&255; - $118 = HEAP8[$116>>0]|0; - $119 = $117 & 1; - $120 = ($119 << 3)&255; - $121 = $118 & -9; - $122 = $121 | $120; - HEAP8[$116>>0] = $122; - $123 = HEAP32[$1>>2]|0; - $124 = HEAP32[$pOldItem>>2]|0; - $125 = (($124) + 64|0); - $126 = HEAP32[$125>>2]|0; - $127 = (_sqlite3DbStrDup($123,$126)|0); - $128 = HEAP32[$pNewItem>>2]|0; - $129 = (($128) + 64|0); - HEAP32[$129>>2] = $127; - $130 = HEAP32[$pOldItem>>2]|0; - $131 = (($130) + 37|0); - $132 = HEAP8[$131>>0]|0; - $133 = $132 & 1; - $134 = $133&255; - $135 = HEAP32[$pNewItem>>2]|0; - $136 = (($135) + 37|0); - $137 = $134&255; - $138 = HEAP8[$136>>0]|0; - $139 = $137 & 1; - $140 = $138 & -2; - $141 = $140 | $139; - HEAP8[$136>>0] = $141; - $142 = HEAP32[$pOldItem>>2]|0; - $143 = (($142) + 68|0); - $144 = HEAP32[$143>>2]|0; - $145 = HEAP32[$pNewItem>>2]|0; - $146 = (($145) + 68|0); - HEAP32[$146>>2] = $144; - $147 = HEAP32[$pOldItem>>2]|0; - $148 = (($147) + 16|0); - $149 = HEAP32[$148>>2]|0; - $150 = HEAP32[$pNewItem>>2]|0; - $151 = (($150) + 16|0); - HEAP32[$151>>2] = $149; - HEAP32[$pTab>>2] = $149; - $152 = HEAP32[$pTab>>2]|0; - $153 = ($152|0)!=(0|0); - if ($153) { - $154 = HEAP32[$pTab>>2]|0; - $155 = (($154) + 40|0); - $156 = HEAP16[$155>>1]|0; - $157 = (($156) + 1)<<16>>16; - HEAP16[$155>>1] = $157; - } - $158 = HEAP32[$1>>2]|0; - $159 = HEAP32[$pOldItem>>2]|0; - $160 = (($159) + 20|0); - $161 = HEAP32[$160>>2]|0; - $162 = HEAP32[$3>>2]|0; - $163 = (_sqlite3SelectDup($158,$161,$162)|0); - $164 = HEAP32[$pNewItem>>2]|0; - $165 = (($164) + 20|0); - HEAP32[$165>>2] = $163; - $166 = HEAP32[$1>>2]|0; - $167 = HEAP32[$pOldItem>>2]|0; - $168 = (($167) + 44|0); - $169 = HEAP32[$168>>2]|0; - $170 = HEAP32[$3>>2]|0; - $171 = (_sqlite3ExprDup($166,$169,$170)|0); - $172 = HEAP32[$pNewItem>>2]|0; - $173 = (($172) + 44|0); - HEAP32[$173>>2] = $171; - $174 = HEAP32[$1>>2]|0; - $175 = HEAP32[$pOldItem>>2]|0; - $176 = (($175) + 48|0); - $177 = HEAP32[$176>>2]|0; - $178 = (_sqlite3IdListDup($174,$177)|0); - $179 = HEAP32[$pNewItem>>2]|0; - $180 = (($179) + 48|0); - HEAP32[$180>>2] = $178; - $181 = HEAP32[$pOldItem>>2]|0; - $182 = (($181) + 56|0); - $183 = $182; - $184 = $183; - $185 = HEAP32[$184>>2]|0; - $186 = (($183) + 4)|0; - $187 = $186; - $188 = HEAP32[$187>>2]|0; - $189 = HEAP32[$pNewItem>>2]|0; - $190 = (($189) + 56|0); - $191 = $190; - $192 = $191; - HEAP32[$192>>2] = $185; - $193 = (($191) + 4)|0; - $194 = $193; - HEAP32[$194>>2] = $188; - $195 = HEAP32[$i>>2]|0; - $196 = (($195) + 1)|0; - HEAP32[$i>>2] = $196; - } - $197 = HEAP32[$pNew>>2]|0; - HEAP32[$0>>2] = $197; - $198 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($198|0); -} -function _withDup($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; - var $9 = 0, $i = 0, $nByte = 0, $pRet = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $pRet = sp + 8|0; - $nByte = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - HEAP32[$pRet>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - $60 = HEAP32[$pRet>>2]|0; - STACKTOP = sp;return ($60|0); - } - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = (($5) - 1)|0; - $7 = $6<<4; - $8 = (24 + ($7))|0; - HEAP32[$nByte>>2] = $8; - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$nByte>>2]|0; - $11 = (_sqlite3DbMallocZero($9,$10)|0); - HEAP32[$pRet>>2] = $11; - $12 = HEAP32[$pRet>>2]|0; - $13 = ($12|0)!=(0|0); - if (!($13)) { - $60 = HEAP32[$pRet>>2]|0; - STACKTOP = sp;return ($60|0); - } - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$pRet>>2]|0; - HEAP32[$16>>2] = $15; - HEAP32[$i>>2] = 0; - while(1) { - $17 = HEAP32[$i>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = HEAP32[$18>>2]|0; - $20 = ($17|0)<($19|0); - if (!($20)) { - break; - } - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$i>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 8|0); - $25 = (($24) + ($22<<4)|0); - $26 = (($25) + 8|0); - $27 = HEAP32[$26>>2]|0; - $28 = (_sqlite3SelectDup($21,$27,0)|0); - $29 = HEAP32[$i>>2]|0; - $30 = HEAP32[$pRet>>2]|0; - $31 = (($30) + 8|0); - $32 = (($31) + ($29<<4)|0); - $33 = (($32) + 8|0); - HEAP32[$33>>2] = $28; - $34 = HEAP32[$0>>2]|0; - $35 = HEAP32[$i>>2]|0; - $36 = HEAP32[$1>>2]|0; - $37 = (($36) + 8|0); - $38 = (($37) + ($35<<4)|0); - $39 = (($38) + 4|0); - $40 = HEAP32[$39>>2]|0; - $41 = (_sqlite3ExprListDup($34,$40,0)|0); - $42 = HEAP32[$i>>2]|0; - $43 = HEAP32[$pRet>>2]|0; - $44 = (($43) + 8|0); - $45 = (($44) + ($42<<4)|0); - $46 = (($45) + 4|0); - HEAP32[$46>>2] = $41; - $47 = HEAP32[$0>>2]|0; - $48 = HEAP32[$i>>2]|0; - $49 = HEAP32[$1>>2]|0; - $50 = (($49) + 8|0); - $51 = (($50) + ($48<<4)|0); - $52 = HEAP32[$51>>2]|0; - $53 = (_sqlite3DbStrDup($47,$52)|0); - $54 = HEAP32[$i>>2]|0; - $55 = HEAP32[$pRet>>2]|0; - $56 = (($55) + 8|0); - $57 = (($56) + ($54<<4)|0); - HEAP32[$57>>2] = $53; - $58 = HEAP32[$i>>2]|0; - $59 = (($58) + 1)|0; - HEAP32[$i>>2] = $59; - } - $60 = HEAP32[$pRet>>2]|0; - STACKTOP = sp;return ($60|0); -} -function _sqlite3IdListDup($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pNew = 0, $pNewItem = 0, $pOldItem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $pNew = sp + 12|0; - $i = sp + 8|0; - $pNewItem = sp + 4|0; - $pOldItem = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $p; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - HEAP32[$0>>2] = 0; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); - } - $5 = HEAP32[$1>>2]|0; - $6 = (_sqlite3DbMallocRaw($5,8)|0); - HEAP32[$pNew>>2] = $6; - $7 = HEAP32[$pNew>>2]|0; - $8 = ($7|0)==(0|0); - if ($8) { - HEAP32[$0>>2] = 0; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); - } - $9 = HEAP32[$2>>2]|0; - $10 = (($9) + 4|0); - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$pNew>>2]|0; - $13 = (($12) + 4|0); - HEAP32[$13>>2] = $11; - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - $18 = $17<<3; - $19 = (_sqlite3DbMallocRaw($14,$18)|0); - $20 = HEAP32[$pNew>>2]|0; - HEAP32[$20>>2] = $19; - $21 = HEAP32[$pNew>>2]|0; - $22 = HEAP32[$21>>2]|0; - $23 = ($22|0)==(0|0); - if ($23) { - $24 = HEAP32[$1>>2]|0; - $25 = HEAP32[$pNew>>2]|0; - _sqlite3DbFree($24,$25); - HEAP32[$0>>2] = 0; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $26 = HEAP32[$i>>2]|0; - $27 = HEAP32[$2>>2]|0; - $28 = (($27) + 4|0); - $29 = HEAP32[$28>>2]|0; - $30 = ($26|0)<($29|0); - if (!($30)) { - break; - } - $31 = HEAP32[$i>>2]|0; - $32 = HEAP32[$pNew>>2]|0; - $33 = HEAP32[$32>>2]|0; - $34 = (($33) + ($31<<3)|0); - HEAP32[$pNewItem>>2] = $34; - $35 = HEAP32[$i>>2]|0; - $36 = HEAP32[$2>>2]|0; - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + ($35<<3)|0); - HEAP32[$pOldItem>>2] = $38; - $39 = HEAP32[$1>>2]|0; - $40 = HEAP32[$pOldItem>>2]|0; - $41 = HEAP32[$40>>2]|0; - $42 = (_sqlite3DbStrDup($39,$41)|0); - $43 = HEAP32[$pNewItem>>2]|0; - HEAP32[$43>>2] = $42; - $44 = HEAP32[$pOldItem>>2]|0; - $45 = (($44) + 4|0); - $46 = HEAP32[$45>>2]|0; - $47 = HEAP32[$pNewItem>>2]|0; - $48 = (($47) + 4|0); - HEAP32[$48>>2] = $46; - $49 = HEAP32[$i>>2]|0; - $50 = (($49) + 1)|0; - HEAP32[$i>>2] = $50; - } - $51 = HEAP32[$pNew>>2]|0; - HEAP32[$0>>2] = $51; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); -} -function _vtabCallConstructor($db,$pTab,$pMod,$xConstruct,$pzErr) { - $db = $db|0; - $pTab = $pTab|0; - $pMod = $pMod|0; - $xConstruct = $xConstruct|0; - $pzErr = $pzErr|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; - var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; - var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; - var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; - var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $azArg = 0, $i = 0, $iCol = 0, $iDb = 0, $j = 0, $nArg = 0, $nDel = 0, $nType = 0, $pPriorCtx = 0, $pVTable = 0, $rc = 0, $sCtx = 0, $vararg_buffer7 = 0, $zErr = 0, $zFormat = 0, $zModuleName = 0; - var $zType = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $vararg_buffer7 = sp; - $0 = sp + 92|0; - $1 = sp + 88|0; - $2 = sp + 84|0; - $3 = sp + 80|0; - $4 = sp + 76|0; - $5 = sp + 72|0; - $sCtx = sp + 64|0; - $pPriorCtx = sp + 60|0; - $pVTable = sp + 56|0; - $rc = sp + 52|0; - $azArg = sp + 48|0; - $nArg = sp + 44|0; - $zErr = sp + 40|0; - $zModuleName = sp + 36|0; - $iDb = sp + 32|0; - $zFormat = sp + 28|0; - $iCol = sp + 24|0; - $zType = sp + 20|0; - $nType = sp + 16|0; - $i = sp + 12|0; - $j = sp + 8|0; - $nDel = sp + 4|0; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pTab; - HEAP32[$3>>2] = $pMod; - HEAP32[$4>>2] = $xConstruct; - HEAP32[$5>>2] = $pzErr; - $6 = HEAP32[$2>>2]|0; - $7 = (($6) + 56|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$azArg>>2] = $8; - $9 = HEAP32[$2>>2]|0; - $10 = (($9) + 52|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$nArg>>2] = $11; - HEAP32[$zErr>>2] = 0; - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = HEAP32[$13>>2]|0; - HEAP32[$vararg_buffer7>>2] = $14; - $15 = (_sqlite3MPrintf($12,1456,$vararg_buffer7)|0); - HEAP32[$zModuleName>>2] = $15; - $16 = HEAP32[$zModuleName>>2]|0; - $17 = ($16|0)!=(0|0); - if (!($17)) { - HEAP32[$0>>2] = 7; - $223 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($223|0); - } - $18 = HEAP32[$1>>2]|0; - $19 = (_sqlite3DbMallocZero($18,28)|0); - HEAP32[$pVTable>>2] = $19; - $20 = HEAP32[$pVTable>>2]|0; - $21 = ($20|0)!=(0|0); - $22 = HEAP32[$1>>2]|0; - if (!($21)) { - $23 = HEAP32[$zModuleName>>2]|0; - _sqlite3DbFree($22,$23); - HEAP32[$0>>2] = 7; - $223 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($223|0); - } - $24 = HEAP32[$pVTable>>2]|0; - HEAP32[$24>>2] = $22; - $25 = HEAP32[$3>>2]|0; - $26 = HEAP32[$pVTable>>2]|0; - $27 = (($26) + 4|0); - HEAP32[$27>>2] = $25; - $28 = HEAP32[$1>>2]|0; - $29 = HEAP32[$2>>2]|0; - $30 = (($29) + 68|0); - $31 = HEAP32[$30>>2]|0; - $32 = (_sqlite3SchemaToIndex($28,$31)|0); - HEAP32[$iDb>>2] = $32; - $33 = HEAP32[$iDb>>2]|0; - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 16|0); - $36 = HEAP32[$35>>2]|0; - $37 = (($36) + ($33<<4)|0); - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$2>>2]|0; - $40 = (($39) + 56|0); - $41 = HEAP32[$40>>2]|0; - $42 = (($41) + 4|0); - HEAP32[$42>>2] = $38; - $43 = HEAP32[$2>>2]|0; - $44 = (($sCtx) + 4|0); - HEAP32[$44>>2] = $43; - $45 = HEAP32[$pVTable>>2]|0; - HEAP32[$sCtx>>2] = $45; - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 316|0); - $48 = HEAP32[$47>>2]|0; - HEAP32[$pPriorCtx>>2] = $48; - $49 = HEAP32[$1>>2]|0; - $50 = (($49) + 316|0); - HEAP32[$50>>2] = $sCtx; - $51 = HEAP32[$4>>2]|0; - $52 = HEAP32[$1>>2]|0; - $53 = HEAP32[$3>>2]|0; - $54 = (($53) + 8|0); - $55 = HEAP32[$54>>2]|0; - $56 = HEAP32[$nArg>>2]|0; - $57 = HEAP32[$azArg>>2]|0; - $58 = HEAP32[$pVTable>>2]|0; - $59 = (($58) + 8|0); - $60 = (FUNCTION_TABLE_iiiiiii[$51 & 1]($52,$55,$56,$57,$59,$zErr)|0); - HEAP32[$rc>>2] = $60; - $61 = HEAP32[$pPriorCtx>>2]|0; - $62 = HEAP32[$1>>2]|0; - $63 = (($62) + 316|0); - HEAP32[$63>>2] = $61; - $64 = HEAP32[$rc>>2]|0; - $65 = ($64|0)==(7); - if ($65) { - $66 = HEAP32[$1>>2]|0; - $67 = (($66) + 64|0); - HEAP8[$67>>0] = 1; - } - $68 = HEAP32[$rc>>2]|0; - $69 = (0)!=($68|0); - L12: do { - if ($69) { - $70 = HEAP32[$zErr>>2]|0; - $71 = ($70|0)==(0|0); - $72 = HEAP32[$1>>2]|0; - if ($71) { - $73 = HEAP32[$zModuleName>>2]|0; - HEAP32[$vararg_buffer7>>2] = $73; - $74 = (_sqlite3MPrintf($72,17872,$vararg_buffer7)|0); - $75 = HEAP32[$5>>2]|0; - HEAP32[$75>>2] = $74; - } else { - $76 = HEAP32[$zErr>>2]|0; - HEAP32[$vararg_buffer7>>2] = $76; - $77 = (_sqlite3MPrintf($72,1456,$vararg_buffer7)|0); - $78 = HEAP32[$5>>2]|0; - HEAP32[$78>>2] = $77; - $79 = HEAP32[$zErr>>2]|0; - _sqlite3_free($79); - } - $80 = HEAP32[$1>>2]|0; - $81 = HEAP32[$pVTable>>2]|0; - _sqlite3DbFree($80,$81); - } else { - $82 = HEAP32[$pVTable>>2]|0; - $83 = (($82) + 8|0); - $84 = HEAP32[$83>>2]|0; - $85 = ($84|0)!=(0|0); - if ($85) { - $86 = HEAP32[$3>>2]|0; - $87 = HEAP32[$86>>2]|0; - $88 = HEAP32[$pVTable>>2]|0; - $89 = (($88) + 8|0); - $90 = HEAP32[$89>>2]|0; - HEAP32[$90>>2] = $87; - $91 = HEAP32[$pVTable>>2]|0; - $92 = (($91) + 12|0); - HEAP32[$92>>2] = 1; - $93 = (($sCtx) + 4|0); - $94 = HEAP32[$93>>2]|0; - $95 = ($94|0)!=(0|0); - if ($95) { - HEAP32[$zFormat>>2] = 17904; - $96 = HEAP32[$1>>2]|0; - $97 = HEAP32[$zFormat>>2]|0; - $98 = HEAP32[$2>>2]|0; - $99 = HEAP32[$98>>2]|0; - HEAP32[$vararg_buffer7>>2] = $99; - $100 = (_sqlite3MPrintf($96,$97,$vararg_buffer7)|0); - $101 = HEAP32[$5>>2]|0; - HEAP32[$101>>2] = $100; - $102 = HEAP32[$pVTable>>2]|0; - _sqlite3VtabUnlock($102); - HEAP32[$rc>>2] = 1; - break; - } - $103 = HEAP32[$2>>2]|0; - $104 = (($103) + 60|0); - $105 = HEAP32[$104>>2]|0; - $106 = HEAP32[$pVTable>>2]|0; - $107 = (($106) + 24|0); - HEAP32[$107>>2] = $105; - $108 = HEAP32[$pVTable>>2]|0; - $109 = HEAP32[$2>>2]|0; - $110 = (($109) + 60|0); - HEAP32[$110>>2] = $108; - HEAP32[$iCol>>2] = 0; - while(1) { - $111 = HEAP32[$iCol>>2]|0; - $112 = HEAP32[$2>>2]|0; - $113 = (($112) + 38|0); - $114 = HEAP16[$113>>1]|0; - $115 = $114 << 16 >> 16; - $116 = ($111|0)<($115|0); - if (!($116)) { - break L12; - } - $117 = HEAP32[$iCol>>2]|0; - $118 = HEAP32[$2>>2]|0; - $119 = (($118) + 4|0); - $120 = HEAP32[$119>>2]|0; - $121 = (($120) + (($117*24)|0)|0); - $122 = (($121) + 12|0); - $123 = HEAP32[$122>>2]|0; - HEAP32[$zType>>2] = $123; - HEAP32[$i>>2] = 0; - $124 = HEAP32[$zType>>2]|0; - $125 = ($124|0)!=(0|0); - if ($125) { - $126 = HEAP32[$zType>>2]|0; - $127 = (_sqlite3Strlen30($126)|0); - HEAP32[$nType>>2] = $127; - $128 = HEAP32[$zType>>2]|0; - $129 = (_sqlite3_strnicmp(17952,$128,6)|0); - $130 = ($129|0)!=(0); - if ($130) { - label = 21; - } else { - $131 = HEAP32[$zType>>2]|0; - $132 = (($131) + 6|0); - $133 = HEAP8[$132>>0]|0; - $134 = $133 << 24 >> 24; - $135 = ($134|0)!=(0); - if ($135) { - $136 = HEAP32[$zType>>2]|0; - $137 = (($136) + 6|0); - $138 = HEAP8[$137>>0]|0; - $139 = $138 << 24 >> 24; - $140 = ($139|0)!=(32); - if ($140) { - label = 21; - } - } - } - L26: do { - if ((label|0) == 21) { - label = 0; - HEAP32[$i>>2] = 0; - while(1) { - $141 = HEAP32[$i>>2]|0; - $142 = HEAP32[$nType>>2]|0; - $143 = ($141|0)<($142|0); - if (!($143)) { - break L26; - } - $144 = HEAP32[$i>>2]|0; - $145 = HEAP32[$zType>>2]|0; - $146 = (($145) + ($144)|0); - $147 = (_sqlite3_strnicmp(17960,$146,7)|0); - $148 = (0)==($147|0); - if ($148) { - $149 = HEAP32[$i>>2]|0; - $150 = (($149) + 7)|0; - $151 = HEAP32[$zType>>2]|0; - $152 = (($151) + ($150)|0); - $153 = HEAP8[$152>>0]|0; - $154 = $153 << 24 >> 24; - $155 = ($154|0)==(0); - if ($155) { - break; - } - $156 = HEAP32[$i>>2]|0; - $157 = (($156) + 7)|0; - $158 = HEAP32[$zType>>2]|0; - $159 = (($158) + ($157)|0); - $160 = HEAP8[$159>>0]|0; - $161 = $160 << 24 >> 24; - $162 = ($161|0)==(32); - if ($162) { - break; - } - } - $165 = HEAP32[$i>>2]|0; - $166 = (($165) + 1)|0; - HEAP32[$i>>2] = $166; - } - $163 = HEAP32[$i>>2]|0; - $164 = (($163) + 1)|0; - HEAP32[$i>>2] = $164; - } - } while(0); - $167 = HEAP32[$i>>2]|0; - $168 = HEAP32[$nType>>2]|0; - $169 = ($167|0)<($168|0); - if ($169) { - $170 = HEAP32[$i>>2]|0; - $171 = (($170) + 6)|0; - $172 = HEAP32[$zType>>2]|0; - $173 = (($172) + ($171)|0); - $174 = HEAP8[$173>>0]|0; - $175 = $174 << 24 >> 24; - $176 = ($175|0)!=(0); - $177 = $176 ? 1 : 0; - $178 = (6 + ($177))|0; - HEAP32[$nDel>>2] = $178; - $179 = HEAP32[$i>>2]|0; - HEAP32[$j>>2] = $179; - while(1) { - $180 = HEAP32[$j>>2]|0; - $181 = HEAP32[$nDel>>2]|0; - $182 = (($180) + ($181))|0; - $183 = HEAP32[$nType>>2]|0; - $184 = ($182|0)<=($183|0); - if (!($184)) { - break; - } - $185 = HEAP32[$j>>2]|0; - $186 = HEAP32[$nDel>>2]|0; - $187 = (($185) + ($186))|0; - $188 = HEAP32[$zType>>2]|0; - $189 = (($188) + ($187)|0); - $190 = HEAP8[$189>>0]|0; - $191 = HEAP32[$j>>2]|0; - $192 = HEAP32[$zType>>2]|0; - $193 = (($192) + ($191)|0); - HEAP8[$193>>0] = $190; - $194 = HEAP32[$j>>2]|0; - $195 = (($194) + 1)|0; - HEAP32[$j>>2] = $195; - } - $196 = HEAP32[$i>>2]|0; - $197 = HEAP32[$zType>>2]|0; - $198 = (($197) + ($196)|0); - $199 = HEAP8[$198>>0]|0; - $200 = $199 << 24 >> 24; - $201 = ($200|0)==(0); - if ($201) { - $202 = HEAP32[$i>>2]|0; - $203 = ($202|0)>(0); - if ($203) { - $204 = HEAP32[$i>>2]|0; - $205 = (($204) - 1)|0; - $206 = HEAP32[$zType>>2]|0; - $207 = (($206) + ($205)|0); - HEAP8[$207>>0] = 0; - } - } - $208 = HEAP32[$iCol>>2]|0; - $209 = HEAP32[$2>>2]|0; - $210 = (($209) + 4|0); - $211 = HEAP32[$210>>2]|0; - $212 = (($211) + (($208*24)|0)|0); - $213 = (($212) + 23|0); - $214 = HEAP8[$213>>0]|0; - $215 = $214&255; - $216 = $215 | 2; - $217 = $216&255; - HEAP8[$213>>0] = $217; - } - } - $218 = HEAP32[$iCol>>2]|0; - $219 = (($218) + 1)|0; - HEAP32[$iCol>>2] = $219; - } - } - } - } while(0); - $220 = HEAP32[$1>>2]|0; - $221 = HEAP32[$zModuleName>>2]|0; - _sqlite3DbFree($220,$221); - $222 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $222; - $223 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($223|0); -} -function _sqlite3ReadSchema($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $db = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $rc = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$rc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$db>>2] = $2; - $3 = HEAP32[$db>>2]|0; - $4 = (($3) + 132|0); - $5 = (($4) + 5|0); - $6 = HEAP8[$5>>0]|0; - $7 = ($6<<24>>24)!=(0); - if (!($7)) { - $8 = HEAP32[$db>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 4|0); - $11 = (_sqlite3Init($8,$10)|0); - HEAP32[$rc>>2] = $11; - } - $12 = HEAP32[$rc>>2]|0; - $13 = ($12|0)!=(0); - if (!($13)) { - $21 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($21|0); - } - $14 = HEAP32[$rc>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 12|0); - HEAP32[$16>>2] = $14; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 64|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($19) + 1)|0; - HEAP32[$18>>2] = $20; - $21 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($21|0); -} -function _analyzeDatabase($pParse,$iDb) { - $pParse = $pParse|0; - $iDb = $iDb|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $iMem = 0, $iStatCur = 0, $iTab = 0, $k = 0, $pSchema = 0, $pTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $db = sp + 24|0; - $pSchema = sp + 20|0; - $k = sp + 16|0; - $iStatCur = sp + 12|0; - $iMem = sp + 8|0; - $iTab = sp + 4|0; - $pTab = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iDb; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$db>>2]|0; - $6 = (($5) + 16|0); - $7 = HEAP32[$6>>2]|0; - $8 = (($7) + ($4<<4)|0); - $9 = (($8) + 12|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$pSchema>>2] = $10; - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$1>>2]|0; - _sqlite3BeginWriteOperation($11,0,$12); - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 68|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$iStatCur>>2] = $15; - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 68|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + 3)|0; - HEAP32[$17>>2] = $19; - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$1>>2]|0; - $22 = HEAP32[$iStatCur>>2]|0; - _openStatTable($20,$21,$22,0,0); - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 72|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + 1)|0; - HEAP32[$iMem>>2] = $26; - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 68|0); - $29 = HEAP32[$28>>2]|0; - HEAP32[$iTab>>2] = $29; - $30 = HEAP32[$pSchema>>2]|0; - $31 = (($30) + 8|0); - $32 = (($31) + 8|0); - $33 = HEAP32[$32>>2]|0; - HEAP32[$k>>2] = $33; - while(1) { - $34 = HEAP32[$k>>2]|0; - $35 = ($34|0)!=(0|0); - if (!($35)) { - break; - } - $36 = HEAP32[$k>>2]|0; - $37 = (($36) + 8|0); - $38 = HEAP32[$37>>2]|0; - HEAP32[$pTab>>2] = $38; - $39 = HEAP32[$0>>2]|0; - $40 = HEAP32[$pTab>>2]|0; - $41 = HEAP32[$iStatCur>>2]|0; - $42 = HEAP32[$iMem>>2]|0; - $43 = HEAP32[$iTab>>2]|0; - _analyzeOneTable($39,$40,0,$41,$42,$43); - $44 = HEAP32[$k>>2]|0; - $45 = HEAP32[$44>>2]|0; - HEAP32[$k>>2] = $45; - } - $46 = HEAP32[$0>>2]|0; - $47 = HEAP32[$1>>2]|0; - _loadAnalysis($46,$47); - STACKTOP = sp;return; -} -function _sqlite3FindDb($db,$pName) { - $db = $db|0; - $pName = $pName|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $zName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $i = sp + 4|0; - $zName = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pName; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_sqlite3NameFromToken($2,$3)|0); - HEAP32[$zName>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$zName>>2]|0; - $7 = (_sqlite3FindDbName($5,$6)|0); - HEAP32[$i>>2] = $7; - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$zName>>2]|0; - _sqlite3DbFree($8,$9); - $10 = HEAP32[$i>>2]|0; - STACKTOP = sp;return ($10|0); -} -function _analyzeTable($pParse,$pTab,$pOnlyIdx) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $pOnlyIdx = $pOnlyIdx|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $iDb = 0, $iStatCur = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $iDb = sp + 4|0; - $iStatCur = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $pOnlyIdx; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 68|0); - $7 = HEAP32[$6>>2]|0; - $8 = (_sqlite3SchemaToIndex($4,$7)|0); - HEAP32[$iDb>>2] = $8; - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$iDb>>2]|0; - _sqlite3BeginWriteOperation($9,0,$10); - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 68|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$iStatCur>>2] = $13; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 68|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + 3)|0; - HEAP32[$15>>2] = $17; - $18 = HEAP32[$2>>2]|0; - $19 = ($18|0)!=(0|0); - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$iDb>>2]|0; - $22 = HEAP32[$iStatCur>>2]|0; - if ($19) { - $23 = HEAP32[$2>>2]|0; - $24 = HEAP32[$23>>2]|0; - _openStatTable($20,$21,$22,$24,18064); - } else { - $25 = HEAP32[$1>>2]|0; - $26 = HEAP32[$25>>2]|0; - _openStatTable($20,$21,$22,$26,18072); - } - $27 = HEAP32[$0>>2]|0; - $28 = HEAP32[$1>>2]|0; - $29 = HEAP32[$2>>2]|0; - $30 = HEAP32[$iStatCur>>2]|0; - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 72|0); - $33 = HEAP32[$32>>2]|0; - $34 = (($33) + 1)|0; - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + 68|0); - $37 = HEAP32[$36>>2]|0; - _analyzeOneTable($27,$28,$29,$30,$34,$37); - $38 = HEAP32[$0>>2]|0; - $39 = HEAP32[$iDb>>2]|0; - _loadAnalysis($38,$39); - STACKTOP = sp;return; -} -function _sqlite3TwoPartName($pParse,$pName1,$pName2,$pUnqual) { - $pParse = $pParse|0; - $pName1 = $pName1|0; - $pName2 = $pName2|0; - $pUnqual = $pUnqual|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $iDb = 0, $vararg_buffer1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer1 = sp; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $iDb = sp + 8|0; - $db = sp + 4|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pName1; - HEAP32[$3>>2] = $pName2; - HEAP32[$4>>2] = $pUnqual; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$3>>2]|0; - $8 = ($7|0)!=(0|0); - if ($8) { - $9 = HEAP32[$3>>2]|0; - $10 = (($9) + 4|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($11>>>0)>(0); - if ($12) { - $13 = HEAP32[$db>>2]|0; - $14 = (($13) + 132|0); - $15 = (($14) + 5|0); - $16 = HEAP8[$15>>0]|0; - $17 = ($16<<24>>24)!=(0); - if ($17) { - $18 = HEAP32[$1>>2]|0; - _sqlite3ErrorMsg($18,18016,$vararg_buffer1); - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 64|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + 1)|0; - HEAP32[$20>>2] = $22; - HEAP32[$0>>2] = -1; - $44 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($44|0); - } - $23 = HEAP32[$3>>2]|0; - $24 = HEAP32[$4>>2]|0; - HEAP32[$24>>2] = $23; - $25 = HEAP32[$db>>2]|0; - $26 = HEAP32[$2>>2]|0; - $27 = (_sqlite3FindDb($25,$26)|0); - HEAP32[$iDb>>2] = $27; - $28 = HEAP32[$iDb>>2]|0; - $29 = ($28|0)<(0); - if ($29) { - $30 = HEAP32[$1>>2]|0; - $31 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer1>>2] = $31; - _sqlite3ErrorMsg($30,18040,$vararg_buffer1); - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 64|0); - $34 = HEAP32[$33>>2]|0; - $35 = (($34) + 1)|0; - HEAP32[$33>>2] = $35; - HEAP32[$0>>2] = -1; - $44 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($44|0); - } - } else { - label = 7; - } - } else { - label = 7; - } - if ((label|0) == 7) { - $36 = HEAP32[$db>>2]|0; - $37 = (($36) + 132|0); - $38 = (($37) + 4|0); - $39 = HEAP8[$38>>0]|0; - $40 = $39&255; - HEAP32[$iDb>>2] = $40; - $41 = HEAP32[$2>>2]|0; - $42 = HEAP32[$4>>2]|0; - HEAP32[$42>>2] = $41; - } - $43 = HEAP32[$iDb>>2]|0; - HEAP32[$0>>2] = $43; - $44 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($44|0); -} -function _openStatTable($pParse,$iDb,$iStatCur,$zWhere,$zWhereType) { - $pParse = $pParse|0; - $iDb = $iDb|0; - $iStatCur = $iStatCur|0; - $zWhere = $zWhere|0; - $zWhereType = $zWhereType|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $aCreateTbl = 0, $aRoot = 0, $db = 0, $i = 0, $pDb = 0, $pStat = 0; - var $v = 0, $vararg_buffer3 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $zTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer3 = sp; - $0 = sp + 68|0; - $1 = sp + 64|0; - $2 = sp + 60|0; - $3 = sp + 56|0; - $4 = sp + 52|0; - $i = sp + 48|0; - $db = sp + 44|0; - $pDb = sp + 40|0; - $v = sp + 36|0; - $aRoot = sp + 24|0; - $aCreateTbl = sp + 72|0; - $zTab = sp + 20|0; - $pStat = sp + 16|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iDb; - HEAP32[$2>>2] = $iStatCur; - HEAP32[$3>>2] = $zWhere; - HEAP32[$4>>2] = $zWhereType; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = (_sqlite3GetVdbe($7)|0); - HEAP32[$v>>2] = $8; - $9 = HEAP32[$v>>2]|0; - $10 = ($9|0)==(0|0); - if ($10) { - STACKTOP = sp;return; - } - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$db>>2]|0; - $13 = (($12) + 16|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + ($11<<4)|0); - HEAP32[$pDb>>2] = $15; - HEAP32[$i>>2] = 0; - while(1) { - $16 = HEAP32[$i>>2]|0; - $17 = ($16|0)<(3); - if (!($17)) { - break; - } - $18 = HEAP32[$i>>2]|0; - $19 = (18272 + ($18<<3)|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$zTab>>2] = $20; - $21 = HEAP32[$db>>2]|0; - $22 = HEAP32[$zTab>>2]|0; - $23 = HEAP32[$pDb>>2]|0; - $24 = HEAP32[$23>>2]|0; - $25 = (_sqlite3FindTable($21,$22,$24)|0); - HEAP32[$pStat>>2] = $25; - $26 = ($25|0)==(0|0); - do { - if ($26) { - $27 = HEAP32[$i>>2]|0; - $28 = (18272 + ($27<<3)|0); - $29 = (($28) + 4|0); - $30 = HEAP32[$29>>2]|0; - $31 = ($30|0)!=(0|0); - if ($31) { - $32 = HEAP32[$0>>2]|0; - $33 = HEAP32[$pDb>>2]|0; - $34 = HEAP32[$33>>2]|0; - $35 = HEAP32[$zTab>>2]|0; - $36 = HEAP32[$i>>2]|0; - $37 = (18272 + ($36<<3)|0); - $38 = (($37) + 4|0); - $39 = HEAP32[$38>>2]|0; - HEAP32[$vararg_buffer3>>2] = $34; - $vararg_ptr1 = (($vararg_buffer3) + 4|0); - HEAP32[$vararg_ptr1>>2] = $35; - $vararg_ptr2 = (($vararg_buffer3) + 8|0); - HEAP32[$vararg_ptr2>>2] = $39; - _sqlite3NestedParse($32,18360,$vararg_buffer3); - $40 = HEAP32[$0>>2]|0; - $41 = (($40) + 388|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$i>>2]|0; - $44 = (($aRoot) + ($43<<2)|0); - HEAP32[$44>>2] = $42; - $45 = HEAP32[$i>>2]|0; - $46 = (($aCreateTbl) + ($45)|0); - HEAP8[$46>>0] = 2; - } - } else { - $47 = HEAP32[$pStat>>2]|0; - $48 = (($47) + 32|0); - $49 = HEAP32[$48>>2]|0; - $50 = HEAP32[$i>>2]|0; - $51 = (($aRoot) + ($50<<2)|0); - HEAP32[$51>>2] = $49; - $52 = HEAP32[$i>>2]|0; - $53 = (($aCreateTbl) + ($52)|0); - HEAP8[$53>>0] = 0; - $54 = HEAP32[$0>>2]|0; - $55 = HEAP32[$1>>2]|0; - $56 = HEAP32[$i>>2]|0; - $57 = (($aRoot) + ($56<<2)|0); - $58 = HEAP32[$57>>2]|0; - $59 = HEAP32[$zTab>>2]|0; - _sqlite3TableLock($54,$55,$58,1,$59); - $60 = HEAP32[$3>>2]|0; - $61 = ($60|0)!=(0|0); - if ($61) { - $62 = HEAP32[$0>>2]|0; - $63 = HEAP32[$pDb>>2]|0; - $64 = HEAP32[$63>>2]|0; - $65 = HEAP32[$zTab>>2]|0; - $66 = HEAP32[$4>>2]|0; - $67 = HEAP32[$3>>2]|0; - HEAP32[$vararg_buffer3>>2] = $64; - $vararg_ptr6 = (($vararg_buffer3) + 4|0); - HEAP32[$vararg_ptr6>>2] = $65; - $vararg_ptr7 = (($vararg_buffer3) + 8|0); - HEAP32[$vararg_ptr7>>2] = $66; - $vararg_ptr8 = (($vararg_buffer3) + 12|0); - HEAP32[$vararg_ptr8>>2] = $67; - _sqlite3NestedParse($62,18384,$vararg_buffer3); - break; - } else { - $68 = HEAP32[$v>>2]|0; - $69 = HEAP32[$i>>2]|0; - $70 = (($aRoot) + ($69<<2)|0); - $71 = HEAP32[$70>>2]|0; - $72 = HEAP32[$1>>2]|0; - (_sqlite3VdbeAddOp2($68,115,$71,$72)|0); - break; - } - } - } while(0); - $73 = HEAP32[$i>>2]|0; - $74 = (($73) + 1)|0; - HEAP32[$i>>2] = $74; - } - HEAP32[$i>>2] = 0; - while(1) { - $75 = HEAP32[$i>>2]|0; - $76 = (18272 + ($75<<3)|0); - $77 = (($76) + 4|0); - $78 = HEAP32[$77>>2]|0; - $79 = ($78|0)!=(0|0); - if (!($79)) { - break; - } - $80 = HEAP32[$v>>2]|0; - $81 = HEAP32[$2>>2]|0; - $82 = HEAP32[$i>>2]|0; - $83 = (($81) + ($82))|0; - $84 = HEAP32[$i>>2]|0; - $85 = (($aRoot) + ($84<<2)|0); - $86 = HEAP32[$85>>2]|0; - $87 = HEAP32[$1>>2]|0; - (_sqlite3VdbeAddOp4Int($80,53,$83,$86,$87,3)|0); - $88 = HEAP32[$v>>2]|0; - $89 = HEAP32[$i>>2]|0; - $90 = (($aCreateTbl) + ($89)|0); - $91 = HEAP8[$90>>0]|0; - _sqlite3VdbeChangeP5($88,$91); - $92 = HEAP32[$i>>2]|0; - $93 = (($92) + 1)|0; - HEAP32[$i>>2] = $93; - } - STACKTOP = sp;return; -} -function _analyzeOneTable($pParse,$pTab,$pOnlyIdx,$iStatCur,$iMem,$iTab) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $pOnlyIdx = $pOnlyIdx|0; - $iStatCur = $iStatCur|0; - $iMem = $iMem|0; - $iTab = $iTab|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; - var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; - var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; - var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aGotoChng = 0; - var $addrGotoChng0 = 0, $addrNextRow = 0, $addrRewind = 0, $db = 0, $i = 0, $iDb = 0, $iIdxCur = 0, $iTabCur = 0, $jZeroRows = 0, $nCol = 0, $needTableCnt = 0, $pColl = 0, $pIdx = 0, $regChng = 0, $regIdxname = 0, $regNewRowid = 0, $regPrev = 0, $regStat1 = 0, $regStat4 = 0, $regTabname = 0; - var $regTemp = 0, $v = 0, $zIdxName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $0 = sp + 112|0; - $1 = sp + 108|0; - $2 = sp + 104|0; - $3 = sp + 100|0; - $4 = sp + 96|0; - $5 = sp + 92|0; - $db = sp + 88|0; - $pIdx = sp + 84|0; - $iIdxCur = sp + 80|0; - $iTabCur = sp + 76|0; - $v = sp + 72|0; - $i = sp + 68|0; - $jZeroRows = sp + 64|0; - $iDb = sp + 60|0; - $needTableCnt = sp + 116|0; - $regNewRowid = sp + 56|0; - $regStat4 = sp + 52|0; - $regChng = sp + 48|0; - $regTemp = sp + 44|0; - $regTabname = sp + 40|0; - $regIdxname = sp + 36|0; - $regStat1 = sp + 32|0; - $regPrev = sp + 28|0; - $nCol = sp + 24|0; - $aGotoChng = sp + 20|0; - $addrRewind = sp + 16|0; - $addrGotoChng0 = sp + 12|0; - $addrNextRow = sp + 8|0; - $zIdxName = sp + 4|0; - $pColl = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $pOnlyIdx; - HEAP32[$3>>2] = $iStatCur; - HEAP32[$4>>2] = $iMem; - HEAP32[$5>>2] = $iTab; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$db>>2] = $7; - HEAP32[$jZeroRows>>2] = -1; - HEAP8[$needTableCnt>>0] = 1; - $8 = HEAP32[$4>>2]|0; - $9 = (($8) + 1)|0; - HEAP32[$4>>2] = $9; - HEAP32[$regNewRowid>>2] = $8; - $10 = HEAP32[$4>>2]|0; - $11 = (($10) + 1)|0; - HEAP32[$4>>2] = $11; - HEAP32[$regStat4>>2] = $10; - $12 = HEAP32[$4>>2]|0; - $13 = (($12) + 1)|0; - HEAP32[$4>>2] = $13; - HEAP32[$regChng>>2] = $12; - $14 = HEAP32[$4>>2]|0; - $15 = (($14) + 1)|0; - HEAP32[$4>>2] = $15; - HEAP32[$regTemp>>2] = $14; - $16 = HEAP32[$4>>2]|0; - $17 = (($16) + 1)|0; - HEAP32[$4>>2] = $17; - HEAP32[$regTabname>>2] = $16; - $18 = HEAP32[$4>>2]|0; - $19 = (($18) + 1)|0; - HEAP32[$4>>2] = $19; - HEAP32[$regIdxname>>2] = $18; - $20 = HEAP32[$4>>2]|0; - $21 = (($20) + 1)|0; - HEAP32[$4>>2] = $21; - HEAP32[$regStat1>>2] = $20; - $22 = HEAP32[$4>>2]|0; - HEAP32[$regPrev>>2] = $22; - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 72|0); - $25 = HEAP32[$24>>2]|0; - $26 = HEAP32[$4>>2]|0; - $27 = ($25|0)>($26|0); - if ($27) { - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 72|0); - $30 = HEAP32[$29>>2]|0; - $34 = $30; - } else { - $31 = HEAP32[$4>>2]|0; - $34 = $31; - } - $32 = HEAP32[$0>>2]|0; - $33 = (($32) + 72|0); - HEAP32[$33>>2] = $34; - $35 = HEAP32[$0>>2]|0; - $36 = (_sqlite3GetVdbe($35)|0); - HEAP32[$v>>2] = $36; - $37 = HEAP32[$v>>2]|0; - $38 = ($37|0)==(0|0); - if ($38) { - STACKTOP = sp;return; - } - $39 = HEAP32[$1>>2]|0; - $40 = ($39|0)==(0|0); - if ($40) { - STACKTOP = sp;return; - } - $41 = HEAP32[$1>>2]|0; - $42 = (($41) + 32|0); - $43 = HEAP32[$42>>2]|0; - $44 = ($43|0)==(0); - if ($44) { - STACKTOP = sp;return; - } - $45 = HEAP32[$1>>2]|0; - $46 = HEAP32[$45>>2]|0; - $47 = (_sqlite3_strnicmp($46,15048,7)|0); - $48 = ($47|0)==(0); - if ($48) { - STACKTOP = sp;return; - } - $49 = HEAP32[$db>>2]|0; - $50 = HEAP32[$1>>2]|0; - $51 = (($50) + 68|0); - $52 = HEAP32[$51>>2]|0; - $53 = (_sqlite3SchemaToIndex($49,$52)|0); - HEAP32[$iDb>>2] = $53; - $54 = HEAP32[$0>>2]|0; - $55 = HEAP32[$1>>2]|0; - $56 = HEAP32[$55>>2]|0; - $57 = HEAP32[$iDb>>2]|0; - $58 = HEAP32[$db>>2]|0; - $59 = (($58) + 16|0); - $60 = HEAP32[$59>>2]|0; - $61 = (($60) + ($57<<4)|0); - $62 = HEAP32[$61>>2]|0; - $63 = (_sqlite3AuthCheck($54,28,$56,0,$62)|0); - $64 = ($63|0)!=(0); - if ($64) { - STACKTOP = sp;return; - } - $65 = HEAP32[$0>>2]|0; - $66 = HEAP32[$iDb>>2]|0; - $67 = HEAP32[$1>>2]|0; - $68 = (($67) + 32|0); - $69 = HEAP32[$68>>2]|0; - $70 = HEAP32[$1>>2]|0; - $71 = HEAP32[$70>>2]|0; - _sqlite3TableLock($65,$66,$69,0,$71); - $72 = HEAP32[$5>>2]|0; - $73 = (($72) + 1)|0; - HEAP32[$5>>2] = $73; - HEAP32[$iTabCur>>2] = $72; - $74 = HEAP32[$5>>2]|0; - $75 = (($74) + 1)|0; - HEAP32[$5>>2] = $75; - HEAP32[$iIdxCur>>2] = $74; - $76 = HEAP32[$0>>2]|0; - $77 = (($76) + 68|0); - $78 = HEAP32[$77>>2]|0; - $79 = HEAP32[$5>>2]|0; - $80 = ($78|0)>($79|0); - if ($80) { - $81 = HEAP32[$0>>2]|0; - $82 = (($81) + 68|0); - $83 = HEAP32[$82>>2]|0; - $87 = $83; - } else { - $84 = HEAP32[$5>>2]|0; - $87 = $84; - } - $85 = HEAP32[$0>>2]|0; - $86 = (($85) + 68|0); - HEAP32[$86>>2] = $87; - $88 = HEAP32[$0>>2]|0; - $89 = HEAP32[$iTabCur>>2]|0; - $90 = HEAP32[$iDb>>2]|0; - $91 = HEAP32[$1>>2]|0; - _sqlite3OpenTable($88,$89,$90,$91,52); - $92 = HEAP32[$v>>2]|0; - $93 = HEAP32[$regTabname>>2]|0; - $94 = HEAP32[$1>>2]|0; - $95 = HEAP32[$94>>2]|0; - (_sqlite3VdbeAddOp4($92,97,0,$93,0,$95,0)|0); - $96 = HEAP32[$1>>2]|0; - $97 = (($96) + 8|0); - $98 = HEAP32[$97>>2]|0; - HEAP32[$pIdx>>2] = $98; - while(1) { - $99 = HEAP32[$pIdx>>2]|0; - $100 = ($99|0)!=(0|0); - $101 = HEAP32[$2>>2]|0; - if (!($100)) { - break; - } - $102 = ($101|0)!=(0|0); - if ($102) { - $103 = HEAP32[$2>>2]|0; - $104 = HEAP32[$pIdx>>2]|0; - $105 = ($103|0)!=($104|0); - if (!($105)) { - label = 16; - } - } else { - label = 16; - } - if ((label|0) == 16) { - label = 0; - $106 = HEAP32[$pIdx>>2]|0; - $107 = (($106) + 36|0); - $108 = HEAP32[$107>>2]|0; - $109 = ($108|0)==(0|0); - if ($109) { - HEAP8[$needTableCnt>>0] = 0; - } - $110 = HEAP32[$pIdx>>2]|0; - $111 = (($110) + 50|0); - $112 = HEAP16[$111>>1]|0; - $113 = $112&65535; - HEAP32[$nCol>>2] = $113; - $114 = HEAP32[$db>>2]|0; - $115 = HEAP32[$nCol>>2]|0; - $116 = (($115) + 1)|0; - $117 = $116<<2; - $118 = (_sqlite3DbMallocRaw($114,$117)|0); - HEAP32[$aGotoChng>>2] = $118; - $119 = HEAP32[$aGotoChng>>2]|0; - $120 = ($119|0)==(0|0); - if (!($120)) { - $121 = HEAP32[$pIdx>>2]|0; - $122 = (($121) + 55|0); - $123 = HEAP8[$122>>0]|0; - $124 = $123 & 3; - $125 = $124&255; - $126 = ($125|0)==(2); - if ($126) { - $127 = HEAP32[$1>>2]|0; - $128 = (($127) + 44|0); - $129 = HEAP8[$128>>0]|0; - $130 = $129&255; - $131 = $130 & 32; - $132 = ($131|0)==(0); - if ($132) { - label = 22; - } else { - $133 = HEAP32[$1>>2]|0; - $134 = HEAP32[$133>>2]|0; - HEAP32[$zIdxName>>2] = $134; - } - } else { - label = 22; - } - if ((label|0) == 22) { - label = 0; - $135 = HEAP32[$pIdx>>2]|0; - $136 = HEAP32[$135>>2]|0; - HEAP32[$zIdxName>>2] = $136; - } - $137 = HEAP32[$v>>2]|0; - $138 = HEAP32[$regIdxname>>2]|0; - $139 = HEAP32[$zIdxName>>2]|0; - (_sqlite3VdbeAddOp4($137,97,0,$138,0,$139,0)|0); - $140 = HEAP32[$0>>2]|0; - $141 = (($140) + 72|0); - $142 = HEAP32[$141>>2]|0; - $143 = HEAP32[$regPrev>>2]|0; - $144 = HEAP32[$nCol>>2]|0; - $145 = (($143) + ($144))|0; - $146 = ($142|0)>($145|0); - if ($146) { - $147 = HEAP32[$0>>2]|0; - $148 = (($147) + 72|0); - $149 = HEAP32[$148>>2]|0; - $155 = $149; - } else { - $150 = HEAP32[$regPrev>>2]|0; - $151 = HEAP32[$nCol>>2]|0; - $152 = (($150) + ($151))|0; - $155 = $152; - } - $153 = HEAP32[$0>>2]|0; - $154 = (($153) + 72|0); - HEAP32[$154>>2] = $155; - $156 = HEAP32[$v>>2]|0; - $157 = HEAP32[$iIdxCur>>2]|0; - $158 = HEAP32[$pIdx>>2]|0; - $159 = (($158) + 44|0); - $160 = HEAP32[$159>>2]|0; - $161 = HEAP32[$iDb>>2]|0; - (_sqlite3VdbeAddOp3($156,52,$157,$160,$161)|0); - $162 = HEAP32[$0>>2]|0; - $163 = HEAP32[$pIdx>>2]|0; - _sqlite3VdbeSetP4KeyInfo($162,$163); - $164 = HEAP32[$v>>2]|0; - $165 = HEAP32[$nCol>>2]|0; - $166 = (($165) + 1)|0; - $167 = HEAP32[$regStat4>>2]|0; - $168 = (($167) + 1)|0; - (_sqlite3VdbeAddOp2($164,25,$166,$168)|0); - $169 = HEAP32[$v>>2]|0; - $170 = HEAP32[$regStat4>>2]|0; - $171 = (($170) + 1)|0; - $172 = HEAP32[$regStat4>>2]|0; - (_sqlite3VdbeAddOp3($169,1,0,$171,$172)|0); - $173 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP4($173,-1,18080,-5); - $174 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($174,1); - $175 = HEAP32[$v>>2]|0; - $176 = HEAP32[$iIdxCur>>2]|0; - $177 = (_sqlite3VdbeAddOp1($175,105,$176)|0); - HEAP32[$addrRewind>>2] = $177; - $178 = HEAP32[$v>>2]|0; - $179 = HEAP32[$regChng>>2]|0; - (_sqlite3VdbeAddOp2($178,25,0,$179)|0); - $180 = HEAP32[$v>>2]|0; - $181 = (_sqlite3VdbeAddOp0($180,16)|0); - HEAP32[$addrGotoChng0>>2] = $181; - $182 = HEAP32[$v>>2]|0; - $183 = (_sqlite3VdbeCurrentAddr($182)|0); - HEAP32[$addrNextRow>>2] = $183; - HEAP32[$i>>2] = 0; - while(1) { - $184 = HEAP32[$i>>2]|0; - $185 = HEAP32[$nCol>>2]|0; - $186 = ($184|0)<($185|0); - if (!($186)) { - break; - } - $187 = HEAP32[$0>>2]|0; - $188 = HEAP32[$i>>2]|0; - $189 = HEAP32[$pIdx>>2]|0; - $190 = (($189) + 32|0); - $191 = HEAP32[$190>>2]|0; - $192 = (($191) + ($188<<2)|0); - $193 = HEAP32[$192>>2]|0; - $194 = (_sqlite3LocateCollSeq($187,$193)|0); - HEAP32[$pColl>>2] = $194; - $195 = HEAP32[$v>>2]|0; - $196 = HEAP32[$i>>2]|0; - $197 = HEAP32[$regChng>>2]|0; - (_sqlite3VdbeAddOp2($195,25,$196,$197)|0); - $198 = HEAP32[$v>>2]|0; - $199 = HEAP32[$iIdxCur>>2]|0; - $200 = HEAP32[$i>>2]|0; - $201 = HEAP32[$regTemp>>2]|0; - (_sqlite3VdbeAddOp3($198,46,$199,$200,$201)|0); - $202 = HEAP32[$v>>2]|0; - $203 = HEAP32[$regTemp>>2]|0; - $204 = HEAP32[$regPrev>>2]|0; - $205 = HEAP32[$i>>2]|0; - $206 = (($204) + ($205))|0; - $207 = HEAP32[$pColl>>2]|0; - $208 = (_sqlite3VdbeAddOp4($202,78,$203,0,$206,$207,-4)|0); - $209 = HEAP32[$i>>2]|0; - $210 = HEAP32[$aGotoChng>>2]|0; - $211 = (($210) + ($209<<2)|0); - HEAP32[$211>>2] = $208; - $212 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($212,-128); - $213 = HEAP32[$i>>2]|0; - $214 = (($213) + 1)|0; - HEAP32[$i>>2] = $214; - } - $215 = HEAP32[$v>>2]|0; - $216 = HEAP32[$nCol>>2]|0; - $217 = HEAP32[$regChng>>2]|0; - (_sqlite3VdbeAddOp2($215,25,$216,$217)|0); - $218 = HEAP32[$v>>2]|0; - $219 = (_sqlite3VdbeAddOp0($218,16)|0); - $220 = HEAP32[$nCol>>2]|0; - $221 = HEAP32[$aGotoChng>>2]|0; - $222 = (($221) + ($220<<2)|0); - HEAP32[$222>>2] = $219; - $223 = HEAP32[$v>>2]|0; - $224 = HEAP32[$addrGotoChng0>>2]|0; - _sqlite3VdbeJumpHere($223,$224); - HEAP32[$i>>2] = 0; - while(1) { - $225 = HEAP32[$i>>2]|0; - $226 = HEAP32[$nCol>>2]|0; - $227 = ($225|0)<($226|0); - $228 = HEAP32[$v>>2]|0; - if (!($227)) { - break; - } - $229 = HEAP32[$i>>2]|0; - $230 = HEAP32[$aGotoChng>>2]|0; - $231 = (($230) + ($229<<2)|0); - $232 = HEAP32[$231>>2]|0; - _sqlite3VdbeJumpHere($228,$232); - $233 = HEAP32[$v>>2]|0; - $234 = HEAP32[$iIdxCur>>2]|0; - $235 = HEAP32[$i>>2]|0; - $236 = HEAP32[$regPrev>>2]|0; - $237 = HEAP32[$i>>2]|0; - $238 = (($236) + ($237))|0; - (_sqlite3VdbeAddOp3($233,46,$234,$235,$238)|0); - $239 = HEAP32[$i>>2]|0; - $240 = (($239) + 1)|0; - HEAP32[$i>>2] = $240; - } - $241 = HEAP32[$nCol>>2]|0; - $242 = HEAP32[$aGotoChng>>2]|0; - $243 = (($242) + ($241<<2)|0); - $244 = HEAP32[$243>>2]|0; - _sqlite3VdbeJumpHere($228,$244); - $245 = HEAP32[$v>>2]|0; - $246 = HEAP32[$regStat4>>2]|0; - $247 = HEAP32[$regTemp>>2]|0; - (_sqlite3VdbeAddOp3($245,1,1,$246,$247)|0); - $248 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP4($248,-1,18120,-5); - $249 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($249,2); - $250 = HEAP32[$v>>2]|0; - $251 = HEAP32[$iIdxCur>>2]|0; - $252 = HEAP32[$addrNextRow>>2]|0; - (_sqlite3VdbeAddOp2($250,9,$251,$252)|0); - $253 = HEAP32[$v>>2]|0; - $254 = HEAP32[$regStat4>>2]|0; - $255 = HEAP32[$regStat1>>2]|0; - _callStatGet($253,$254,0,$255); - $256 = HEAP32[$v>>2]|0; - $257 = HEAP32[$regTabname>>2]|0; - $258 = HEAP32[$regTemp>>2]|0; - (_sqlite3VdbeAddOp4($256,48,$257,3,$258,18160,0)|0); - $259 = HEAP32[$v>>2]|0; - $260 = HEAP32[$3>>2]|0; - $261 = HEAP32[$regNewRowid>>2]|0; - (_sqlite3VdbeAddOp2($259,69,$260,$261)|0); - $262 = HEAP32[$v>>2]|0; - $263 = HEAP32[$3>>2]|0; - $264 = HEAP32[$regTemp>>2]|0; - $265 = HEAP32[$regNewRowid>>2]|0; - (_sqlite3VdbeAddOp3($262,70,$263,$264,$265)|0); - $266 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($266,8); - $267 = HEAP32[$v>>2]|0; - $268 = HEAP32[$addrRewind>>2]|0; - _sqlite3VdbeJumpHere($267,$268); - $269 = HEAP32[$db>>2]|0; - $270 = HEAP32[$aGotoChng>>2]|0; - _sqlite3DbFree($269,$270); - } - } - $271 = HEAP32[$pIdx>>2]|0; - $272 = (($271) + 20|0); - $273 = HEAP32[$272>>2]|0; - HEAP32[$pIdx>>2] = $273; - } - $274 = ($101|0)==(0|0); - if (!($274)) { - STACKTOP = sp;return; - } - $275 = HEAP8[$needTableCnt>>0]|0; - $276 = $275&255; - $277 = ($276|0)!=(0); - if (!($277)) { - STACKTOP = sp;return; - } - $278 = HEAP32[$v>>2]|0; - $279 = HEAP32[$iTabCur>>2]|0; - $280 = HEAP32[$regStat1>>2]|0; - (_sqlite3VdbeAddOp2($278,49,$279,$280)|0); - $281 = HEAP32[$v>>2]|0; - $282 = HEAP32[$regStat1>>2]|0; - $283 = (_sqlite3VdbeAddOp1($281,45,$282)|0); - HEAP32[$jZeroRows>>2] = $283; - $284 = HEAP32[$v>>2]|0; - $285 = HEAP32[$regIdxname>>2]|0; - (_sqlite3VdbeAddOp2($284,28,0,$285)|0); - $286 = HEAP32[$v>>2]|0; - $287 = HEAP32[$regTabname>>2]|0; - $288 = HEAP32[$regTemp>>2]|0; - (_sqlite3VdbeAddOp4($286,48,$287,3,$288,18160,0)|0); - $289 = HEAP32[$v>>2]|0; - $290 = HEAP32[$3>>2]|0; - $291 = HEAP32[$regNewRowid>>2]|0; - (_sqlite3VdbeAddOp2($289,69,$290,$291)|0); - $292 = HEAP32[$v>>2]|0; - $293 = HEAP32[$3>>2]|0; - $294 = HEAP32[$regTemp>>2]|0; - $295 = HEAP32[$regNewRowid>>2]|0; - (_sqlite3VdbeAddOp3($292,70,$293,$294,$295)|0); - $296 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($296,8); - $297 = HEAP32[$v>>2]|0; - $298 = HEAP32[$jZeroRows>>2]|0; - _sqlite3VdbeJumpHere($297,$298); - STACKTOP = sp;return; -} -function _loadAnalysis($pParse,$iDb) { - $pParse = $pParse|0; - $iDb = $iDb|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $v = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iDb; - $2 = HEAP32[$0>>2]|0; - $3 = (_sqlite3GetVdbe($2)|0); - HEAP32[$v>>2] = $3; - $4 = HEAP32[$v>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - STACKTOP = sp;return; - } - $6 = HEAP32[$v>>2]|0; - $7 = HEAP32[$1>>2]|0; - (_sqlite3VdbeAddOp1($6,120,$7)|0); - STACKTOP = sp;return; -} -function _sqlite3VdbeAddOp1($p,$op,$p1) { - $p = $p|0; - $op = $op|0; - $p1 = $p1|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $op; - HEAP32[$2>>2] = $p1; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = (_sqlite3VdbeAddOp3($3,$4,$5,0,0)|0); - STACKTOP = sp;return ($6|0); -} -function _sqlite3TableLock($pParse,$iDb,$iTab,$isWriteLock,$zName) { - $pParse = $pParse|0; - $iDb = $iDb|0; - $iTab = $iTab|0; - $isWriteLock = $isWriteLock|0; - $zName = $zName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $i = 0, $nBytes = 0, $p = 0, $pToplevel = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 32|0; - $4 = sp + 16|0; - $pToplevel = sp + 12|0; - $i = sp + 8|0; - $nBytes = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iDb; - HEAP32[$2>>2] = $iTab; - HEAP8[$3>>0] = $isWriteLock; - HEAP32[$4>>2] = $zName; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 408|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)!=(0|0); - $9 = HEAP32[$0>>2]|0; - if ($8) { - $10 = (($9) + 408|0); - $11 = HEAP32[$10>>2]|0; - $12 = $11; - } else { - $12 = $9; - } - HEAP32[$pToplevel>>2] = $12; - HEAP32[$i>>2] = 0; - while(1) { - $13 = HEAP32[$i>>2]|0; - $14 = HEAP32[$pToplevel>>2]|0; - $15 = (($14) + 396|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($13|0)<($16|0); - if (!($17)) { - break; - } - $18 = HEAP32[$i>>2]|0; - $19 = HEAP32[$pToplevel>>2]|0; - $20 = (($19) + 400|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + ($18<<4)|0); - HEAP32[$p>>2] = $22; - $23 = HEAP32[$p>>2]|0; - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$1>>2]|0; - $26 = ($24|0)==($25|0); - if ($26) { - $27 = HEAP32[$p>>2]|0; - $28 = (($27) + 4|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$2>>2]|0; - $31 = ($29|0)==($30|0); - if ($31) { - label = 7; - break; - } - } - $45 = HEAP32[$i>>2]|0; - $46 = (($45) + 1)|0; - HEAP32[$i>>2] = $46; - } - if ((label|0) == 7) { - $32 = HEAP32[$p>>2]|0; - $33 = (($32) + 8|0); - $34 = HEAP8[$33>>0]|0; - $35 = $34&255; - $36 = ($35|0)!=(0); - if ($36) { - $41 = 1; - } else { - $37 = HEAP8[$3>>0]|0; - $38 = $37&255; - $39 = ($38|0)!=(0); - $41 = $39; - } - $40 = $41&1; - $42 = $40&255; - $43 = HEAP32[$p>>2]|0; - $44 = (($43) + 8|0); - HEAP8[$44>>0] = $42; - STACKTOP = sp;return; - } - $47 = HEAP32[$pToplevel>>2]|0; - $48 = (($47) + 396|0); - $49 = HEAP32[$48>>2]|0; - $50 = (($49) + 1)|0; - $51 = $50<<4; - HEAP32[$nBytes>>2] = $51; - $52 = HEAP32[$pToplevel>>2]|0; - $53 = HEAP32[$52>>2]|0; - $54 = HEAP32[$pToplevel>>2]|0; - $55 = (($54) + 400|0); - $56 = HEAP32[$55>>2]|0; - $57 = HEAP32[$nBytes>>2]|0; - $58 = (_sqlite3DbReallocOrFree($53,$56,$57)|0); - $59 = HEAP32[$pToplevel>>2]|0; - $60 = (($59) + 400|0); - HEAP32[$60>>2] = $58; - $61 = HEAP32[$pToplevel>>2]|0; - $62 = (($61) + 400|0); - $63 = HEAP32[$62>>2]|0; - $64 = ($63|0)!=(0|0); - $65 = HEAP32[$pToplevel>>2]|0; - $66 = (($65) + 396|0); - if ($64) { - $67 = HEAP32[$66>>2]|0; - $68 = (($67) + 1)|0; - HEAP32[$66>>2] = $68; - $69 = HEAP32[$pToplevel>>2]|0; - $70 = (($69) + 400|0); - $71 = HEAP32[$70>>2]|0; - $72 = (($71) + ($67<<4)|0); - HEAP32[$p>>2] = $72; - $73 = HEAP32[$1>>2]|0; - $74 = HEAP32[$p>>2]|0; - HEAP32[$74>>2] = $73; - $75 = HEAP32[$2>>2]|0; - $76 = HEAP32[$p>>2]|0; - $77 = (($76) + 4|0); - HEAP32[$77>>2] = $75; - $78 = HEAP8[$3>>0]|0; - $79 = HEAP32[$p>>2]|0; - $80 = (($79) + 8|0); - HEAP8[$80>>0] = $78; - $81 = HEAP32[$4>>2]|0; - $82 = HEAP32[$p>>2]|0; - $83 = (($82) + 12|0); - HEAP32[$83>>2] = $81; - STACKTOP = sp;return; - } else { - HEAP32[$66>>2] = 0; - $84 = HEAP32[$pToplevel>>2]|0; - $85 = HEAP32[$84>>2]|0; - $86 = (($85) + 64|0); - HEAP8[$86>>0] = 1; - STACKTOP = sp;return; - } -} -function _sqlite3OpenTable($pParse,$iCur,$iDb,$pTab,$opcode) { - $pParse = $pParse|0; - $iCur = $iCur|0; - $iDb = $iDb|0; - $pTab = $pTab|0; - $opcode = $opcode|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pPk = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $v = sp + 4|0; - $pPk = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iCur; - HEAP32[$2>>2] = $iDb; - HEAP32[$3>>2] = $pTab; - HEAP32[$4>>2] = $opcode; - $5 = HEAP32[$0>>2]|0; - $6 = (_sqlite3GetVdbe($5)|0); - HEAP32[$v>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$3>>2]|0; - $10 = (($9) + 32|0); - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$4>>2]|0; - $13 = ($12|0)==(53); - $14 = $13 ? 1 : 0; - $15 = $14&255; - $16 = HEAP32[$3>>2]|0; - $17 = HEAP32[$16>>2]|0; - _sqlite3TableLock($7,$8,$11,$15,$17); - $18 = HEAP32[$3>>2]|0; - $19 = (($18) + 44|0); - $20 = HEAP8[$19>>0]|0; - $21 = $20&255; - $22 = $21 & 32; - $23 = ($22|0)==(0); - if ($23) { - $24 = HEAP32[$v>>2]|0; - $25 = HEAP32[$4>>2]|0; - $26 = HEAP32[$1>>2]|0; - $27 = HEAP32[$3>>2]|0; - $28 = (($27) + 32|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$2>>2]|0; - $31 = HEAP32[$3>>2]|0; - $32 = (($31) + 38|0); - $33 = HEAP16[$32>>1]|0; - $34 = $33 << 16 >> 16; - (_sqlite3VdbeAddOp4Int($24,$25,$26,$29,$30,$34)|0); - STACKTOP = sp;return; - } else { - $35 = HEAP32[$3>>2]|0; - $36 = (_sqlite3PrimaryKeyIndex($35)|0); - HEAP32[$pPk>>2] = $36; - $37 = HEAP32[$v>>2]|0; - $38 = HEAP32[$4>>2]|0; - $39 = HEAP32[$1>>2]|0; - $40 = HEAP32[$pPk>>2]|0; - $41 = (($40) + 44|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp3($37,$38,$39,$42,$43)|0); - $44 = HEAP32[$0>>2]|0; - $45 = HEAP32[$pPk>>2]|0; - _sqlite3VdbeSetP4KeyInfo($44,$45); - STACKTOP = sp;return; - } -} -function _sqlite3VdbeSetP4KeyInfo($pParse,$pIdx) { - $pParse = $pParse|0; - $pIdx = $pIdx|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $v = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pIdx; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 8|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$v>>2] = $4; - $5 = HEAP32[$v>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (_sqlite3KeyInfoOfIndex($6,$7)|0); - _sqlite3VdbeChangeP4($5,-1,$8,-6); - STACKTOP = sp;return; -} -function _sqlite3VdbeCurrentAddr($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 32|0); - $3 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _sqlite3LocateCollSeq($pParse,$zName) { - $pParse = $pParse|0; - $zName = $zName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $enc = 0, $initbusy = 0, $pColl = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $db = sp + 4|0; - $enc = sp + 17|0; - $initbusy = sp + 16|0; - $pColl = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $zName; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$db>>2]|0; - $5 = (($4) + 16|0); - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + 12|0); - $8 = HEAP32[$7>>2]|0; - $9 = (($8) + 77|0); - $10 = HEAP8[$9>>0]|0; - HEAP8[$enc>>0] = $10; - $11 = HEAP32[$db>>2]|0; - $12 = (($11) + 132|0); - $13 = (($12) + 5|0); - $14 = HEAP8[$13>>0]|0; - HEAP8[$initbusy>>0] = $14; - $15 = HEAP32[$db>>2]|0; - $16 = HEAP8[$enc>>0]|0; - $17 = HEAP32[$1>>2]|0; - $18 = HEAP8[$initbusy>>0]|0; - $19 = $18&255; - $20 = (_sqlite3FindCollSeq($15,$16,$17,$19)|0); - HEAP32[$pColl>>2] = $20; - $21 = HEAP8[$initbusy>>0]|0; - $22 = ($21<<24>>24)!=(0); - if ($22) { - $34 = HEAP32[$pColl>>2]|0; - STACKTOP = sp;return ($34|0); - } - $23 = HEAP32[$pColl>>2]|0; - $24 = ($23|0)!=(0|0); - if ($24) { - $25 = HEAP32[$pColl>>2]|0; - $26 = (($25) + 12|0); - $27 = HEAP32[$26>>2]|0; - $28 = ($27|0)!=(0|0); - if ($28) { - $34 = HEAP32[$pColl>>2]|0; - STACKTOP = sp;return ($34|0); - } - } - $29 = HEAP32[$0>>2]|0; - $30 = HEAP8[$enc>>0]|0; - $31 = HEAP32[$pColl>>2]|0; - $32 = HEAP32[$1>>2]|0; - $33 = (_sqlite3GetCollSeq($29,$30,$31,$32)|0); - HEAP32[$pColl>>2] = $33; - $34 = HEAP32[$pColl>>2]|0; - STACKTOP = sp;return ($34|0); -} -function _callStatGet($v,$regStat4,$iParam,$regOut) { - $v = $v|0; - $regStat4 = $regStat4|0; - $iParam = $iParam|0; - $regOut = $regOut|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$0>>2] = $v; - HEAP32[$1>>2] = $regStat4; - HEAP32[$2>>2] = $iParam; - HEAP32[$3>>2] = $regOut; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp3($4,1,0,$5,$6)|0); - $7 = HEAP32[$0>>2]|0; - _sqlite3VdbeChangeP4($7,-1,18168,-5); - $8 = HEAP32[$0>>2]|0; - _sqlite3VdbeChangeP5($8,1); - STACKTOP = sp;return; -} -function _statGet($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $9 = 0, $i = 0, $iVal = 0, $nDistinct = 0, $p = 0, $vararg_buffer1 = 0, $z = 0, $zRet = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer1 = sp + 16|0; - $0 = sp + 48|0; - $1 = sp + 44|0; - $2 = sp + 40|0; - $p = sp + 36|0; - $z = sp + 32|0; - $i = sp + 28|0; - $zRet = sp + 24|0; - $nDistinct = sp + 8|0; - $iVal = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_blob($4)|0); - HEAP32[$p>>2] = $5; - $6 = HEAP32[$p>>2]|0; - $7 = (($6) + 8|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8*25)|0; - $10 = (_sqlite3MallocZero($9)|0); - HEAP32[$zRet>>2] = $10; - $11 = HEAP32[$zRet>>2]|0; - $12 = ($11|0)==(0|0); - if ($12) { - $13 = HEAP32[$0>>2]|0; - _sqlite3_result_error_nomem($13); - STACKTOP = sp;return; - } - $14 = HEAP32[$zRet>>2]|0; - $15 = HEAP32[$p>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = $vararg_buffer1; - $18 = $17; - HEAP32[$18>>2] = $16; - $19 = (($17) + 4)|0; - $20 = $19; - HEAP32[$20>>2] = 0; - (_sqlite3_snprintf(24,$14,18224,$vararg_buffer1)|0); - $21 = HEAP32[$zRet>>2]|0; - $22 = HEAP32[$zRet>>2]|0; - $23 = (_sqlite3Strlen30($22)|0); - $24 = (($21) + ($23)|0); - HEAP32[$z>>2] = $24; - HEAP32[$i>>2] = 0; - while(1) { - $25 = HEAP32[$i>>2]|0; - $26 = HEAP32[$p>>2]|0; - $27 = (($26) + 8|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) - 1)|0; - $30 = ($25|0)<($29|0); - if (!($30)) { - break; - } - $31 = HEAP32[$i>>2]|0; - $32 = HEAP32[$p>>2]|0; - $33 = (($32) + 16|0); - $34 = (($33) + 4|0); - $35 = HEAP32[$34>>2]|0; - $36 = (($35) + ($31<<2)|0); - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + 1)|0; - $39 = $nDistinct; - $40 = $39; - HEAP32[$40>>2] = $38; - $41 = (($39) + 4)|0; - $42 = $41; - HEAP32[$42>>2] = 0; - $43 = HEAP32[$p>>2]|0; - $44 = HEAP32[$43>>2]|0; - $45 = $nDistinct; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = (($45) + 4)|0; - $49 = $48; - $50 = HEAP32[$49>>2]|0; - $51 = (_i64Add(($44|0),0,($47|0),($50|0))|0); - $52 = tempRet0; - $53 = (_i64Subtract(($51|0),($52|0),1,0)|0); - $54 = tempRet0; - $55 = $nDistinct; - $56 = $55; - $57 = HEAP32[$56>>2]|0; - $58 = (($55) + 4)|0; - $59 = $58; - $60 = HEAP32[$59>>2]|0; - $61 = (___udivdi3(($53|0),($54|0),($57|0),($60|0))|0); - $62 = tempRet0; - $63 = $iVal; - $64 = $63; - HEAP32[$64>>2] = $61; - $65 = (($63) + 4)|0; - $66 = $65; - HEAP32[$66>>2] = $62; - $67 = HEAP32[$z>>2]|0; - $68 = $iVal; - $69 = $68; - $70 = HEAP32[$69>>2]|0; - $71 = (($68) + 4)|0; - $72 = $71; - $73 = HEAP32[$72>>2]|0; - $74 = $vararg_buffer1; - $75 = $74; - HEAP32[$75>>2] = $70; - $76 = (($74) + 4)|0; - $77 = $76; - HEAP32[$77>>2] = $73; - (_sqlite3_snprintf(24,$67,18232,$vararg_buffer1)|0); - $78 = HEAP32[$z>>2]|0; - $79 = (_sqlite3Strlen30($78)|0); - $80 = HEAP32[$z>>2]|0; - $81 = (($80) + ($79)|0); - HEAP32[$z>>2] = $81; - $82 = HEAP32[$i>>2]|0; - $83 = (($82) + 1)|0; - HEAP32[$i>>2] = $83; - } - $84 = HEAP32[$0>>2]|0; - $85 = HEAP32[$zRet>>2]|0; - _sqlite3_result_text($84,$85,-1,13); - STACKTOP = sp;return; -} -function _statPush($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $7 = 0, $8 = 0, $9 = 0, $i = 0, $iChng = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $i = sp + 8|0; - $p = sp + 4|0; - $iChng = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_blob($4)|0); - HEAP32[$p>>2] = $5; - $6 = HEAP32[$2>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3_value_int($8)|0); - HEAP32[$iChng>>2] = $9; - $10 = HEAP32[$p>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)==(0); - if ($12) { - HEAP32[$i>>2] = 0; - while(1) { - $13 = HEAP32[$i>>2]|0; - $14 = HEAP32[$p>>2]|0; - $15 = (($14) + 8|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($13|0)<($16|0); - if (!($17)) { - break; - } - $18 = HEAP32[$i>>2]|0; - $19 = HEAP32[$p>>2]|0; - $20 = (($19) + 16|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + ($18<<2)|0); - HEAP32[$22>>2] = 1; - $23 = HEAP32[$i>>2]|0; - $24 = (($23) + 1)|0; - HEAP32[$i>>2] = $24; - } - $60 = HEAP32[$p>>2]|0; - $61 = HEAP32[$60>>2]|0; - $62 = (($61) + 1)|0; - HEAP32[$60>>2] = $62; - STACKTOP = sp;return; - } - $25 = HEAP32[$p>>2]|0; - $26 = HEAP32[$iChng>>2]|0; - _samplePushPrevious($25,$26); - HEAP32[$i>>2] = 0; - while(1) { - $27 = HEAP32[$i>>2]|0; - $28 = HEAP32[$iChng>>2]|0; - $29 = ($27|0)<($28|0); - if (!($29)) { - break; - } - $30 = HEAP32[$i>>2]|0; - $31 = HEAP32[$p>>2]|0; - $32 = (($31) + 16|0); - $33 = HEAP32[$32>>2]|0; - $34 = (($33) + ($30<<2)|0); - $35 = HEAP32[$34>>2]|0; - $36 = (($35) + 1)|0; - HEAP32[$34>>2] = $36; - $37 = HEAP32[$i>>2]|0; - $38 = (($37) + 1)|0; - HEAP32[$i>>2] = $38; - } - $39 = HEAP32[$iChng>>2]|0; - HEAP32[$i>>2] = $39; - while(1) { - $40 = HEAP32[$i>>2]|0; - $41 = HEAP32[$p>>2]|0; - $42 = (($41) + 8|0); - $43 = HEAP32[$42>>2]|0; - $44 = ($40|0)<($43|0); - if (!($44)) { - break; - } - $45 = HEAP32[$i>>2]|0; - $46 = HEAP32[$p>>2]|0; - $47 = (($46) + 16|0); - $48 = (($47) + 4|0); - $49 = HEAP32[$48>>2]|0; - $50 = (($49) + ($45<<2)|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + 1)|0; - HEAP32[$50>>2] = $52; - $53 = HEAP32[$i>>2]|0; - $54 = HEAP32[$p>>2]|0; - $55 = (($54) + 16|0); - $56 = HEAP32[$55>>2]|0; - $57 = (($56) + ($53<<2)|0); - HEAP32[$57>>2] = 1; - $58 = HEAP32[$i>>2]|0; - $59 = (($58) + 1)|0; - HEAP32[$i>>2] = $59; - } - $60 = HEAP32[$p>>2]|0; - $61 = HEAP32[$60>>2]|0; - $62 = (($61) + 1)|0; - HEAP32[$60>>2] = $62; - STACKTOP = sp;return; -} -function _samplePushPrevious($p,$iChng) { - $p = $p|0; - $iChng = $iChng|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $iChng; - STACKTOP = sp;return; -} -function _statInit($context,$argc,$argv) { - $context = $context|0; - $argc = $argc|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $n = 0, $nCol = 0, $nColUp = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $p = sp + 16|0; - $nCol = sp + 12|0; - $nColUp = sp + 8|0; - $n = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $argc; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_int($4)|0); - HEAP32[$nCol>>2] = $5; - $6 = HEAP32[$nCol>>2]|0; - $7 = (($6) + 1)|0; - $8 = $7 & -2; - HEAP32[$nColUp>>2] = $8; - $9 = HEAP32[$nColUp>>2]|0; - $10 = $9<<2; - $11 = (52 + ($10))|0; - $12 = HEAP32[$nColUp>>2]|0; - $13 = $12<<2; - $14 = (($11) + ($13))|0; - HEAP32[$n>>2] = $14; - $15 = HEAP32[$0>>2]|0; - $16 = (_sqlite3_context_db_handle($15)|0); - HEAP32[$db>>2] = $16; - $17 = HEAP32[$db>>2]|0; - $18 = HEAP32[$n>>2]|0; - $19 = (_sqlite3DbMallocZero($17,$18)|0); - HEAP32[$p>>2] = $19; - $20 = HEAP32[$p>>2]|0; - $21 = ($20|0)==(0|0); - if ($21) { - $22 = HEAP32[$0>>2]|0; - _sqlite3_result_error_nomem($22); - STACKTOP = sp;return; - } else { - $23 = HEAP32[$db>>2]|0; - $24 = HEAP32[$p>>2]|0; - $25 = (($24) + 48|0); - HEAP32[$25>>2] = $23; - $26 = HEAP32[$p>>2]|0; - HEAP32[$26>>2] = 0; - $27 = HEAP32[$nCol>>2]|0; - $28 = HEAP32[$p>>2]|0; - $29 = (($28) + 8|0); - HEAP32[$29>>2] = $27; - $30 = HEAP32[$p>>2]|0; - $31 = (($30) + 52|0); - $32 = HEAP32[$p>>2]|0; - $33 = (($32) + 16|0); - $34 = (($33) + 4|0); - HEAP32[$34>>2] = $31; - $35 = HEAP32[$nColUp>>2]|0; - $36 = HEAP32[$p>>2]|0; - $37 = (($36) + 16|0); - $38 = (($37) + 4|0); - $39 = HEAP32[$38>>2]|0; - $40 = (($39) + ($35<<2)|0); - $41 = HEAP32[$p>>2]|0; - $42 = (($41) + 16|0); - HEAP32[$42>>2] = $40; - $43 = HEAP32[$0>>2]|0; - $44 = HEAP32[$p>>2]|0; - _sqlite3_result_blob($43,$44,4,16); - STACKTOP = sp;return; - } -} -function _stat4Destructor($pOld) { - $pOld = $pOld|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pOld; - $1 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $1; - $2 = HEAP32[$p>>2]|0; - $3 = (($2) + 48|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$p>>2]|0; - _sqlite3DbFree($4,$5); - STACKTOP = sp;return; -} -function _sqlite3KeyInfoOfIndex($pParse,$pIdx) { - $pParse = $pParse|0; - $pIdx = $pIdx|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $i = 0; - var $nCol = 0, $nKey = 0, $pKey = 0, $zColl = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $i = sp + 16|0; - $nCol = sp + 12|0; - $nKey = sp + 8|0; - $pKey = sp + 4|0; - $zColl = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pIdx; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 64|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0); - if ($6) { - HEAP32[$0>>2] = 0; - $98 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($98|0); - } - $7 = HEAP32[$2>>2]|0; - $8 = (($7) + 40|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)!=(0|0); - if ($10) { - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 40|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + 12|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = ($15|0)!=($17|0); - if ($18) { - $19 = HEAP32[$2>>2]|0; - $20 = (($19) + 40|0); - $21 = HEAP32[$20>>2]|0; - _sqlite3KeyInfoUnref($21); - $22 = HEAP32[$2>>2]|0; - $23 = (($22) + 40|0); - HEAP32[$23>>2] = 0; - } - } - $24 = HEAP32[$2>>2]|0; - $25 = (($24) + 40|0); - $26 = HEAP32[$25>>2]|0; - $27 = ($26|0)==(0|0); - do { - if ($27) { - $28 = HEAP32[$2>>2]|0; - $29 = (($28) + 52|0); - $30 = HEAP16[$29>>1]|0; - $31 = $30&65535; - HEAP32[$nCol>>2] = $31; - $32 = HEAP32[$2>>2]|0; - $33 = (($32) + 50|0); - $34 = HEAP16[$33>>1]|0; - $35 = $34&65535; - HEAP32[$nKey>>2] = $35; - $36 = HEAP32[$2>>2]|0; - $37 = (($36) + 55|0); - $38 = HEAP8[$37>>0]|0; - $39 = ($38&255) >>> 3; - $40 = $39 & 1; - $41 = $40&255; - $42 = ($41|0)!=(0); - $43 = HEAP32[$1>>2]|0; - $44 = HEAP32[$43>>2]|0; - if ($42) { - $45 = HEAP32[$nKey>>2]|0; - $46 = HEAP32[$nCol>>2]|0; - $47 = HEAP32[$nKey>>2]|0; - $48 = (($46) - ($47))|0; - $49 = (_sqlite3KeyInfoAlloc($44,$45,$48)|0); - HEAP32[$pKey>>2] = $49; - } else { - $50 = HEAP32[$nCol>>2]|0; - $51 = (_sqlite3KeyInfoAlloc($44,$50,0)|0); - HEAP32[$pKey>>2] = $51; - } - $52 = HEAP32[$pKey>>2]|0; - $53 = ($52|0)!=(0|0); - if ($53) { - HEAP32[$i>>2] = 0; - while(1) { - $54 = HEAP32[$i>>2]|0; - $55 = HEAP32[$nCol>>2]|0; - $56 = ($54|0)<($55|0); - if (!($56)) { - break; - } - $57 = HEAP32[$i>>2]|0; - $58 = HEAP32[$2>>2]|0; - $59 = (($58) + 32|0); - $60 = HEAP32[$59>>2]|0; - $61 = (($60) + ($57<<2)|0); - $62 = HEAP32[$61>>2]|0; - HEAP32[$zColl>>2] = $62; - $63 = HEAP32[$zColl>>2]|0; - $64 = (_strcmp($63,3320)|0); - $65 = ($64|0)==(0); - if ($65) { - $73 = 0; - } else { - $66 = HEAP32[$1>>2]|0; - $67 = HEAP32[$zColl>>2]|0; - $68 = (_sqlite3LocateCollSeq($66,$67)|0); - $73 = $68; - } - $69 = HEAP32[$i>>2]|0; - $70 = HEAP32[$pKey>>2]|0; - $71 = (($70) + 20|0); - $72 = (($71) + ($69<<2)|0); - HEAP32[$72>>2] = $73; - $74 = HEAP32[$i>>2]|0; - $75 = HEAP32[$2>>2]|0; - $76 = (($75) + 28|0); - $77 = HEAP32[$76>>2]|0; - $78 = (($77) + ($74)|0); - $79 = HEAP8[$78>>0]|0; - $80 = HEAP32[$i>>2]|0; - $81 = HEAP32[$pKey>>2]|0; - $82 = (($81) + 16|0); - $83 = HEAP32[$82>>2]|0; - $84 = (($83) + ($80)|0); - HEAP8[$84>>0] = $79; - $85 = HEAP32[$i>>2]|0; - $86 = (($85) + 1)|0; - HEAP32[$i>>2] = $86; - } - $87 = HEAP32[$1>>2]|0; - $88 = (($87) + 64|0); - $89 = HEAP32[$88>>2]|0; - $90 = ($89|0)!=(0); - $91 = HEAP32[$pKey>>2]|0; - if ($90) { - _sqlite3KeyInfoUnref($91); - break; - } else { - $92 = HEAP32[$2>>2]|0; - $93 = (($92) + 40|0); - HEAP32[$93>>2] = $91; - break; - } - } - } - } while(0); - $94 = HEAP32[$2>>2]|0; - $95 = (($94) + 40|0); - $96 = HEAP32[$95>>2]|0; - $97 = (_sqlite3KeyInfoRef($96)|0); - HEAP32[$0>>2] = $97; - $98 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($98|0); -} -function _sqlite3KeyInfoAlloc($db,$N,$X) { - $db = $db|0; - $N = $N|0; - $X = $X|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $N; - HEAP32[$2>>2] = $X; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$2>>2]|0; - $5 = (($3) + ($4))|0; - $6 = ($5*5)|0; - $7 = (24 + ($6))|0; - $8 = (_sqlite3DbMallocZero(0,$7)|0); - HEAP32[$p>>2] = $8; - $9 = HEAP32[$p>>2]|0; - $10 = ($9|0)!=(0|0); - if ($10) { - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$2>>2]|0; - $13 = (($11) + ($12))|0; - $14 = HEAP32[$p>>2]|0; - $15 = (($14) + 20|0); - $16 = (($15) + ($13<<2)|0); - $17 = HEAP32[$p>>2]|0; - $18 = (($17) + 16|0); - HEAP32[$18>>2] = $16; - $19 = HEAP32[$1>>2]|0; - $20 = $19&65535; - $21 = HEAP32[$p>>2]|0; - $22 = (($21) + 6|0); - HEAP16[$22>>1] = $20; - $23 = HEAP32[$2>>2]|0; - $24 = $23&65535; - $25 = HEAP32[$p>>2]|0; - $26 = (($25) + 8|0); - HEAP16[$26>>1] = $24; - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 16|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + 12|0); - $31 = HEAP32[$30>>2]|0; - $32 = (($31) + 77|0); - $33 = HEAP8[$32>>0]|0; - $34 = HEAP32[$p>>2]|0; - $35 = (($34) + 4|0); - HEAP8[$35>>0] = $33; - $36 = HEAP32[$0>>2]|0; - $37 = HEAP32[$p>>2]|0; - $38 = (($37) + 12|0); - HEAP32[$38>>2] = $36; - $39 = HEAP32[$p>>2]|0; - HEAP32[$39>>2] = 1; - $42 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($42|0); - } else { - $40 = HEAP32[$0>>2]|0; - $41 = (($40) + 64|0); - HEAP8[$41>>0] = 1; - $42 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($42|0); - } - return 0|0; -} -function _sqlite3KeyInfoRef($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if ($2) { - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (($4) + 1)|0; - HEAP32[$3>>2] = $5; - } - $6 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($6|0); -} -function _sqlite3PrimaryKeyIndex($pTab) { - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pTab; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$p>>2] = $3; - while(1) { - $4 = HEAP32[$p>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - label = 5; - break; - } - $6 = HEAP32[$p>>2]|0; - $7 = (($6) + 55|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8 & 3; - $10 = $9&255; - $11 = ($10|0)==(2); - $12 = $11 ^ 1; - if (!($12)) { - label = 5; - break; - } - $13 = HEAP32[$p>>2]|0; - $14 = (($13) + 20|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$p>>2] = $15; - } - if ((label|0) == 5) { - $16 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($16|0); - } - return 0|0; -} -function _sqlite3DbReallocOrFree($db,$p,$n) { - $db = $db|0; - $p = $p|0; - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pNew = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pNew = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $n; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = (_sqlite3DbRealloc($3,$4,$5)|0); - HEAP32[$pNew>>2] = $6; - $7 = HEAP32[$pNew>>2]|0; - $8 = ($7|0)!=(0|0); - if ($8) { - $11 = HEAP32[$pNew>>2]|0; - STACKTOP = sp;return ($11|0); - } - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$1>>2]|0; - _sqlite3DbFree($9,$10); - $11 = HEAP32[$pNew>>2]|0; - STACKTOP = sp;return ($11|0); -} -function _sqlite3Init($db,$pzErrMsg) { - $db = $db|0; - $pzErrMsg = $pzErrMsg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $8 = 0, $9 = 0, $commit_internal = 0, $i = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $i = sp + 8|0; - $rc = sp + 4|0; - $commit_internal = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pzErrMsg; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 24|0); - $4 = HEAP32[$3>>2]|0; - $5 = $4 & 2; - $6 = ($5|0)!=(0); - $7 = $6 ^ 1; - $8 = $7&1; - HEAP32[$commit_internal>>2] = $8; - HEAP32[$rc>>2] = 0; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 132|0); - $11 = (($10) + 5|0); - HEAP8[$11>>0] = 1; - HEAP32[$i>>2] = 0; - while(1) { - $12 = HEAP32[$rc>>2]|0; - $13 = ($12|0)==(0); - if (!($13)) { - break; - } - $14 = HEAP32[$i>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 20|0); - $17 = HEAP32[$16>>2]|0; - $18 = ($14|0)<($17|0); - if (!($18)) { - break; - } - $19 = HEAP32[$i>>2]|0; - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 16|0); - $22 = HEAP32[$21>>2]|0; - $23 = (($22) + ($19<<4)|0); - $24 = (($23) + 12|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + 78|0); - $27 = HEAP16[$26>>1]|0; - $28 = $27&65535; - $29 = $28 & 1; - $30 = ($29|0)==(1); - if (!($30)) { - $31 = HEAP32[$i>>2]|0; - $32 = ($31|0)==(1); - if (!($32)) { - $33 = HEAP32[$0>>2]|0; - $34 = HEAP32[$i>>2]|0; - $35 = HEAP32[$1>>2]|0; - $36 = (_sqlite3InitOne($33,$34,$35)|0); - HEAP32[$rc>>2] = $36; - $37 = HEAP32[$rc>>2]|0; - $38 = ($37|0)!=(0); - if ($38) { - $39 = HEAP32[$0>>2]|0; - $40 = HEAP32[$i>>2]|0; - _sqlite3ResetOneSchema($39,$40); - } - } - } - $41 = HEAP32[$i>>2]|0; - $42 = (($41) + 1)|0; - HEAP32[$i>>2] = $42; - } - $43 = HEAP32[$rc>>2]|0; - $44 = ($43|0)==(0); - if ($44) { - $45 = HEAP32[$0>>2]|0; - $46 = (($45) + 20|0); - $47 = HEAP32[$46>>2]|0; - $48 = ($47|0)>(1); - if ($48) { - $49 = HEAP32[$0>>2]|0; - $50 = (($49) + 16|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + 16|0); - $53 = (($52) + 12|0); - $54 = HEAP32[$53>>2]|0; - $55 = (($54) + 78|0); - $56 = HEAP16[$55>>1]|0; - $57 = $56&65535; - $58 = $57 & 1; - $59 = ($58|0)==(1); - if (!($59)) { - $60 = HEAP32[$0>>2]|0; - $61 = HEAP32[$1>>2]|0; - $62 = (_sqlite3InitOne($60,1,$61)|0); - HEAP32[$rc>>2] = $62; - $63 = HEAP32[$rc>>2]|0; - $64 = ($63|0)!=(0); - if ($64) { - $65 = HEAP32[$0>>2]|0; - _sqlite3ResetOneSchema($65,1); - } - } - } - } - $66 = HEAP32[$0>>2]|0; - $67 = (($66) + 132|0); - $68 = (($67) + 5|0); - HEAP8[$68>>0] = 0; - $69 = HEAP32[$rc>>2]|0; - $70 = ($69|0)==(0); - if (!($70)) { - $74 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($74|0); - } - $71 = HEAP32[$commit_internal>>2]|0; - $72 = ($71|0)!=(0); - if (!($72)) { - $74 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($74|0); - } - $73 = HEAP32[$0>>2]|0; - _sqlite3CommitInternalChanges($73); - $74 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($74|0); -} -function _sqlite3InitOne($db,$iDb,$pzErrMsg) { - $db = $db|0; - $iDb = $iDb|0; - $pzErrMsg = $pzErrMsg|0; - var $$ = 0, $$1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; - var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; - var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; - var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; - var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0; - var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0; - var $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0; - var $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0; - var $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0; - var $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0; - var $277 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $azArg = 0, $encoding = 0, $i = 0, $initData = 0, $meta = 0, $openedTransaction = 0, $or$cond = 0, $pDb = 0, $pTab = 0, $rc = 0, $size = 0, $vararg_buffer7 = 0, $vararg_ptr10 = 0, $xAuth = 0, $zMasterName = 0, $zMasterSchema = 0, $zSql = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $vararg_buffer7 = sp; - $0 = sp + 120|0; - $1 = sp + 116|0; - $2 = sp + 112|0; - $3 = sp + 108|0; - $rc = sp + 104|0; - $i = sp + 100|0; - $size = sp + 96|0; - $pTab = sp + 92|0; - $pDb = sp + 88|0; - $azArg = sp + 72|0; - $meta = sp + 48|0; - $initData = sp + 32|0; - $zMasterSchema = sp + 24|0; - $zMasterName = sp + 20|0; - $openedTransaction = sp + 16|0; - $encoding = sp + 124|0; - $zSql = sp + 12|0; - $xAuth = sp + 8|0; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $iDb; - HEAP32[$3>>2] = $pzErrMsg; - HEAP32[$openedTransaction>>2] = 0; - $4 = HEAP32[$2>>2]|0; - $5 = ($4|0)==(1); - if ($5) { - HEAP32[$zMasterSchema>>2] = 18520; - } else { - HEAP32[$zMasterSchema>>2] = 18416; - } - $6 = HEAP32[$2>>2]|0; - $7 = ($6|0)==(1); - $8 = $7 ? 14808 : 14832; - HEAP32[$zMasterName>>2] = $8; - $9 = HEAP32[$zMasterName>>2]|0; - HEAP32[$azArg>>2] = $9; - $10 = (($azArg) + 4|0); - HEAP32[$10>>2] = 18640; - $11 = HEAP32[$zMasterSchema>>2]|0; - $12 = (($azArg) + 8|0); - HEAP32[$12>>2] = $11; - $13 = (($azArg) + 12|0); - HEAP32[$13>>2] = 0; - $14 = HEAP32[$1>>2]|0; - HEAP32[$initData>>2] = $14; - $15 = HEAP32[$2>>2]|0; - $16 = (($initData) + 8|0); - HEAP32[$16>>2] = $15; - $17 = (($initData) + 12|0); - HEAP32[$17>>2] = 0; - $18 = HEAP32[$3>>2]|0; - $19 = (($initData) + 4|0); - HEAP32[$19>>2] = $18; - (_sqlite3InitCallback($initData,3,$azArg,0)|0); - $20 = (($initData) + 12|0); - $21 = HEAP32[$20>>2]|0; - $22 = ($21|0)!=(0); - if ($22) { - $23 = (($initData) + 12|0); - $24 = HEAP32[$23>>2]|0; - HEAP32[$rc>>2] = $24; - } else { - $25 = HEAP32[$1>>2]|0; - $26 = HEAP32[$zMasterName>>2]|0; - $27 = HEAP32[$2>>2]|0; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 16|0); - $30 = HEAP32[$29>>2]|0; - $31 = (($30) + ($27<<4)|0); - $32 = HEAP32[$31>>2]|0; - $33 = (_sqlite3FindTable($25,$26,$32)|0); - HEAP32[$pTab>>2] = $33; - $34 = HEAP32[$pTab>>2]|0; - $35 = ($34|0)!=(0|0); - if ($35) { - $36 = HEAP32[$pTab>>2]|0; - $37 = (($36) + 44|0); - $38 = HEAP8[$37>>0]|0; - $39 = $38&255; - $40 = $39 | 1; - $41 = $40&255; - HEAP8[$37>>0] = $41; - } - $42 = HEAP32[$2>>2]|0; - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + 16|0); - $45 = HEAP32[$44>>2]|0; - $46 = (($45) + ($42<<4)|0); - HEAP32[$pDb>>2] = $46; - $47 = HEAP32[$pDb>>2]|0; - $48 = (($47) + 4|0); - $49 = HEAP32[$48>>2]|0; - $50 = ($49|0)==(0|0); - if ($50) { - $51 = HEAP32[$2>>2]|0; - $52 = ($51|0)==(1); - if ($52) { - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + 16|0); - $55 = HEAP32[$54>>2]|0; - $56 = (($55) + 16|0); - $57 = (($56) + 12|0); - $58 = HEAP32[$57>>2]|0; - $59 = (($58) + 78|0); - $60 = HEAP16[$59>>1]|0; - $61 = $60&65535; - $62 = $61 | 1; - $63 = $62&65535; - HEAP16[$59>>1] = $63; - } - HEAP32[$0>>2] = 0; - $277 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($277|0); - } - $64 = HEAP32[$pDb>>2]|0; - $65 = (($64) + 4|0); - $66 = HEAP32[$65>>2]|0; - _sqlite3BtreeEnter($66); - $67 = HEAP32[$pDb>>2]|0; - $68 = (($67) + 4|0); - $69 = HEAP32[$68>>2]|0; - $70 = (_sqlite3BtreeIsInReadTrans($69)|0); - $71 = ($70|0)!=(0); - do { - if ($71) { - label = 16; - } else { - $72 = HEAP32[$pDb>>2]|0; - $73 = (($72) + 4|0); - $74 = HEAP32[$73>>2]|0; - $75 = (_sqlite3BtreeBeginTrans($74,0)|0); - HEAP32[$rc>>2] = $75; - $76 = HEAP32[$rc>>2]|0; - $77 = ($76|0)!=(0); - if ($77) { - $78 = HEAP32[$3>>2]|0; - $79 = HEAP32[$1>>2]|0; - $80 = HEAP32[$rc>>2]|0; - $81 = (_sqlite3ErrStr($80)|0); - HEAP32[$vararg_buffer7>>2] = $81; - _sqlite3SetString($78,$79,1456,$vararg_buffer7); - break; - } else { - HEAP32[$openedTransaction>>2] = 1; - label = 16; - break; - } - } - } while(0); - L22: do { - if ((label|0) == 16) { - HEAP32[$i>>2] = 0; - while(1) { - $82 = HEAP32[$i>>2]|0; - $83 = ($82|0)<(5); - if (!($83)) { - break; - } - $84 = HEAP32[$pDb>>2]|0; - $85 = (($84) + 4|0); - $86 = HEAP32[$85>>2]|0; - $87 = HEAP32[$i>>2]|0; - $88 = (($87) + 1)|0; - $89 = HEAP32[$i>>2]|0; - $90 = (($meta) + ($89<<2)|0); - _sqlite3BtreeGetMeta($86,$88,$90); - $91 = HEAP32[$i>>2]|0; - $92 = (($91) + 1)|0; - HEAP32[$i>>2] = $92; - } - $93 = HEAP32[$meta>>2]|0; - $94 = HEAP32[$pDb>>2]|0; - $95 = (($94) + 12|0); - $96 = HEAP32[$95>>2]|0; - HEAP32[$96>>2] = $93; - $97 = (($meta) + 16|0); - $98 = HEAP32[$97>>2]|0; - $99 = ($98|0)!=(0); - $100 = HEAP32[$2>>2]|0; - do { - if ($99) { - $101 = ($100|0)==(0); - $102 = (($meta) + 16|0); - $103 = HEAP32[$102>>2]|0; - if ($101) { - $104 = $103&255; - $105 = $104&255; - $106 = $105 & 3; - $107 = $106&255; - HEAP8[$encoding>>0] = $107; - $108 = HEAP8[$encoding>>0]|0; - $109 = $108&255; - $110 = ($109|0)==(0); - $$ = $110 ? 1 : $107; - HEAP8[$encoding>>0] = $$; - $111 = HEAP8[$encoding>>0]|0; - $112 = HEAP32[$1>>2]|0; - $113 = (($112) + 16|0); - $114 = HEAP32[$113>>2]|0; - $115 = (($114) + 12|0); - $116 = HEAP32[$115>>2]|0; - $117 = (($116) + 77|0); - HEAP8[$117>>0] = $111; - break; - } - $118 = HEAP32[$1>>2]|0; - $119 = (($118) + 16|0); - $120 = HEAP32[$119>>2]|0; - $121 = (($120) + 12|0); - $122 = HEAP32[$121>>2]|0; - $123 = (($122) + 77|0); - $124 = HEAP8[$123>>0]|0; - $125 = $124&255; - $126 = ($103|0)!=($125|0); - if ($126) { - $127 = HEAP32[$3>>2]|0; - $128 = HEAP32[$1>>2]|0; - _sqlite3SetString($127,$128,18648,$vararg_buffer7); - HEAP32[$rc>>2] = 1; - break L22; - } - } else { - $129 = HEAP32[$1>>2]|0; - $130 = (($129) + 16|0); - $131 = HEAP32[$130>>2]|0; - $132 = (($131) + ($100<<4)|0); - $133 = (($132) + 12|0); - $134 = HEAP32[$133>>2]|0; - $135 = (($134) + 78|0); - $136 = HEAP16[$135>>1]|0; - $137 = $136&65535; - $138 = $137 | 4; - $139 = $138&65535; - HEAP16[$135>>1] = $139; - } - } while(0); - $140 = HEAP32[$1>>2]|0; - $141 = (($140) + 16|0); - $142 = HEAP32[$141>>2]|0; - $143 = (($142) + 12|0); - $144 = HEAP32[$143>>2]|0; - $145 = (($144) + 77|0); - $146 = HEAP8[$145>>0]|0; - $147 = HEAP32[$pDb>>2]|0; - $148 = (($147) + 12|0); - $149 = HEAP32[$148>>2]|0; - $150 = (($149) + 77|0); - HEAP8[$150>>0] = $146; - $151 = HEAP32[$pDb>>2]|0; - $152 = (($151) + 12|0); - $153 = HEAP32[$152>>2]|0; - $154 = (($153) + 80|0); - $155 = HEAP32[$154>>2]|0; - $156 = ($155|0)==(0); - if ($156) { - $157 = (($meta) + 8|0); - $158 = HEAP32[$157>>2]|0; - $159 = (_sqlite3AbsInt32($158)|0); - HEAP32[$size>>2] = $159; - $160 = HEAP32[$size>>2]|0; - $161 = ($160|0)==(0); - $$1 = $161 ? 2000 : $159; - HEAP32[$size>>2] = $$1; - $162 = HEAP32[$size>>2]|0; - $163 = HEAP32[$pDb>>2]|0; - $164 = (($163) + 12|0); - $165 = HEAP32[$164>>2]|0; - $166 = (($165) + 80|0); - HEAP32[$166>>2] = $162; - $167 = HEAP32[$pDb>>2]|0; - $168 = (($167) + 4|0); - $169 = HEAP32[$168>>2]|0; - $170 = HEAP32[$pDb>>2]|0; - $171 = (($170) + 12|0); - $172 = HEAP32[$171>>2]|0; - $173 = (($172) + 80|0); - $174 = HEAP32[$173>>2]|0; - (_sqlite3BtreeSetCacheSize($169,$174)|0); - } - $175 = (($meta) + 4|0); - $176 = HEAP32[$175>>2]|0; - $177 = $176&255; - $178 = HEAP32[$pDb>>2]|0; - $179 = (($178) + 12|0); - $180 = HEAP32[$179>>2]|0; - $181 = (($180) + 76|0); - HEAP8[$181>>0] = $177; - $182 = HEAP32[$pDb>>2]|0; - $183 = (($182) + 12|0); - $184 = HEAP32[$183>>2]|0; - $185 = (($184) + 76|0); - $186 = HEAP8[$185>>0]|0; - $187 = $186&255; - $188 = ($187|0)==(0); - if ($188) { - $189 = HEAP32[$pDb>>2]|0; - $190 = (($189) + 12|0); - $191 = HEAP32[$190>>2]|0; - $192 = (($191) + 76|0); - HEAP8[$192>>0] = 1; - } - $193 = HEAP32[$pDb>>2]|0; - $194 = (($193) + 12|0); - $195 = HEAP32[$194>>2]|0; - $196 = (($195) + 76|0); - $197 = HEAP8[$196>>0]|0; - $198 = $197&255; - $199 = ($198|0)>(4); - if ($199) { - $200 = HEAP32[$3>>2]|0; - $201 = HEAP32[$1>>2]|0; - _sqlite3SetString($200,$201,18720,$vararg_buffer7); - HEAP32[$rc>>2] = 1; - break; - } - $202 = HEAP32[$2>>2]|0; - $203 = ($202|0)==(0); - if ($203) { - $204 = (($meta) + 4|0); - $205 = HEAP32[$204>>2]|0; - $206 = ($205|0)>=(4); - if ($206) { - $207 = HEAP32[$1>>2]|0; - $208 = (($207) + 24|0); - $209 = HEAP32[$208>>2]|0; - $210 = $209 & -32769; - HEAP32[$208>>2] = $210; - } - } - $211 = HEAP32[$1>>2]|0; - $212 = HEAP32[$2>>2]|0; - $213 = HEAP32[$1>>2]|0; - $214 = (($213) + 16|0); - $215 = HEAP32[$214>>2]|0; - $216 = (($215) + ($212<<4)|0); - $217 = HEAP32[$216>>2]|0; - $218 = HEAP32[$zMasterName>>2]|0; - HEAP32[$vararg_buffer7>>2] = $217; - $vararg_ptr10 = (($vararg_buffer7) + 4|0); - HEAP32[$vararg_ptr10>>2] = $218; - $219 = (_sqlite3MPrintf($211,18744,$vararg_buffer7)|0); - HEAP32[$zSql>>2] = $219; - $220 = HEAP32[$1>>2]|0; - $221 = (($220) + 276|0); - $222 = HEAP32[$221>>2]|0; - HEAP32[$xAuth>>2] = $222; - $223 = HEAP32[$1>>2]|0; - $224 = (($223) + 276|0); - HEAP32[$224>>2] = 0; - $225 = HEAP32[$1>>2]|0; - $226 = HEAP32[$zSql>>2]|0; - $227 = (_sqlite3_exec($225,$226,6,$initData,0)|0); - HEAP32[$rc>>2] = $227; - $228 = HEAP32[$xAuth>>2]|0; - $229 = HEAP32[$1>>2]|0; - $230 = (($229) + 276|0); - HEAP32[$230>>2] = $228; - $231 = HEAP32[$rc>>2]|0; - $232 = ($231|0)==(0); - if ($232) { - $233 = (($initData) + 12|0); - $234 = HEAP32[$233>>2]|0; - HEAP32[$rc>>2] = $234; - } - $235 = HEAP32[$1>>2]|0; - $236 = HEAP32[$zSql>>2]|0; - _sqlite3DbFree($235,$236); - $237 = HEAP32[$rc>>2]|0; - $238 = ($237|0)==(0); - if ($238) { - $239 = HEAP32[$1>>2]|0; - $240 = HEAP32[$2>>2]|0; - (_sqlite3AnalysisLoad($239,$240)|0); - } - $241 = HEAP32[$1>>2]|0; - $242 = (($241) + 64|0); - $243 = HEAP8[$242>>0]|0; - $244 = ($243<<24>>24)!=(0); - if ($244) { - HEAP32[$rc>>2] = 7; - $245 = HEAP32[$1>>2]|0; - _sqlite3ResetAllSchemasOfConnection($245); - } - $246 = HEAP32[$rc>>2]|0; - $247 = ($246|0)==(0); - if (!($247)) { - $248 = HEAP32[$1>>2]|0; - $249 = (($248) + 24|0); - $250 = HEAP32[$249>>2]|0; - $251 = $250 & 65536; - $252 = ($251|0)!=(0); - if (!($252)) { - break; - } - } - $253 = HEAP32[$2>>2]|0; - $254 = HEAP32[$1>>2]|0; - $255 = (($254) + 16|0); - $256 = HEAP32[$255>>2]|0; - $257 = (($256) + ($253<<4)|0); - $258 = (($257) + 12|0); - $259 = HEAP32[$258>>2]|0; - $260 = (($259) + 78|0); - $261 = HEAP16[$260>>1]|0; - $262 = $261&65535; - $263 = $262 | 1; - $264 = $263&65535; - HEAP16[$260>>1] = $264; - HEAP32[$rc>>2] = 0; - } - } while(0); - $265 = HEAP32[$openedTransaction>>2]|0; - $266 = ($265|0)!=(0); - if ($266) { - $267 = HEAP32[$pDb>>2]|0; - $268 = (($267) + 4|0); - $269 = HEAP32[$268>>2]|0; - (_sqlite3BtreeCommit($269)|0); - } - } - $270 = HEAP32[$rc>>2]|0; - $271 = ($270|0)==(7); - $272 = HEAP32[$rc>>2]|0; - $273 = ($272|0)==(3082); - $or$cond = $271 | $273; - if ($or$cond) { - $274 = HEAP32[$1>>2]|0; - $275 = (($274) + 64|0); - HEAP8[$275>>0] = 1; - } - $276 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $276; - $277 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($277|0); -} -function _sqlite3ResetOneSchema($db,$iDb) { - $db = $db|0; - $iDb = $iDb|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDb = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pDb = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $iDb; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 16|0); - $5 = HEAP32[$4>>2]|0; - $6 = (($5) + ($2<<4)|0); - HEAP32[$pDb>>2] = $6; - $7 = HEAP32[$pDb>>2]|0; - $8 = (($7) + 12|0); - $9 = HEAP32[$8>>2]|0; - _sqlite3SchemaClear($9); - $10 = HEAP32[$1>>2]|0; - $11 = ($10|0)!=(1); - if (!($11)) { - STACKTOP = sp;return; - } - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 16|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + 16|0); - HEAP32[$pDb>>2] = $15; - $16 = HEAP32[$pDb>>2]|0; - $17 = (($16) + 12|0); - $18 = HEAP32[$17>>2]|0; - _sqlite3SchemaClear($18); - STACKTOP = sp;return; -} -function _sqlite3CommitInternalChanges($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 24|0); - $3 = HEAP32[$2>>2]|0; - $4 = $3 & -3; - HEAP32[$2>>2] = $4; - STACKTOP = sp;return; -} -function _sqlite3InitCallback($pInit,$argc,$argv,$NotUsed) { - $pInit = $pInit|0; - $argc = $argc|0; - $argv = $argv|0; - $NotUsed = $NotUsed|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; - var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; - var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; - var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; - var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; - var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $iDb = 0, $pData = 0, $pIndex = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $4 = sp + 24|0; - $pData = sp + 20|0; - $db = sp + 16|0; - $iDb = sp + 12|0; - $rc = sp + 8|0; - $pStmt = sp + 4|0; - $pIndex = sp; - HEAP32[$1>>2] = $pInit; - HEAP32[$2>>2] = $argc; - HEAP32[$3>>2] = $argv; - HEAP32[$4>>2] = $NotUsed; - $5 = HEAP32[$1>>2]|0; - HEAP32[$pData>>2] = $5; - $6 = HEAP32[$pData>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$db>>2] = $7; - $8 = HEAP32[$pData>>2]|0; - $9 = (($8) + 8|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$iDb>>2] = $10; - $11 = HEAP32[$iDb>>2]|0; - $12 = HEAP32[$db>>2]|0; - $13 = (($12) + 16|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + ($11<<4)|0); - $16 = (($15) + 12|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + 78|0); - $19 = HEAP16[$18>>1]|0; - $20 = $19&65535; - $21 = $20 & -5; - $22 = $21&65535; - HEAP16[$18>>1] = $22; - $23 = HEAP32[$db>>2]|0; - $24 = (($23) + 64|0); - $25 = HEAP8[$24>>0]|0; - $26 = ($25<<24>>24)!=(0); - if ($26) { - $27 = HEAP32[$pData>>2]|0; - $28 = HEAP32[$3>>2]|0; - $29 = HEAP32[$28>>2]|0; - _corruptSchema($27,$29,0); - HEAP32[$0>>2] = 1; - $124 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($124|0); - } - $30 = HEAP32[$3>>2]|0; - $31 = ($30|0)==(0|0); - if ($31) { - HEAP32[$0>>2] = 0; - $124 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($124|0); - } - $32 = HEAP32[$3>>2]|0; - $33 = (($32) + 4|0); - $34 = HEAP32[$33>>2]|0; - $35 = ($34|0)==(0|0); - do { - if ($35) { - $36 = HEAP32[$pData>>2]|0; - $37 = HEAP32[$3>>2]|0; - $38 = HEAP32[$37>>2]|0; - _corruptSchema($36,$38,0); - } else { - $39 = HEAP32[$3>>2]|0; - $40 = (($39) + 8|0); - $41 = HEAP32[$40>>2]|0; - $42 = ($41|0)!=(0|0); - if ($42) { - $43 = HEAP32[$3>>2]|0; - $44 = (($43) + 8|0); - $45 = HEAP32[$44>>2]|0; - $46 = HEAP8[$45>>0]|0; - $47 = $46 << 24 >> 24; - $48 = ($47|0)!=(0); - if ($48) { - $49 = HEAP32[$iDb>>2]|0; - $50 = $49&255; - $51 = HEAP32[$db>>2]|0; - $52 = (($51) + 132|0); - $53 = (($52) + 4|0); - HEAP8[$53>>0] = $50; - $54 = HEAP32[$3>>2]|0; - $55 = (($54) + 4|0); - $56 = HEAP32[$55>>2]|0; - $57 = (_sqlite3Atoi($56)|0); - $58 = HEAP32[$db>>2]|0; - $59 = (($58) + 132|0); - HEAP32[$59>>2] = $57; - $60 = HEAP32[$db>>2]|0; - $61 = (($60) + 132|0); - $62 = (($61) + 6|0); - HEAP8[$62>>0] = 0; - $63 = HEAP32[$db>>2]|0; - $64 = HEAP32[$3>>2]|0; - $65 = (($64) + 8|0); - $66 = HEAP32[$65>>2]|0; - (_sqlite3_prepare($63,$66,-1,$pStmt,0)|0); - $67 = HEAP32[$db>>2]|0; - $68 = (($67) + 52|0); - $69 = HEAP32[$68>>2]|0; - HEAP32[$rc>>2] = $69; - $70 = HEAP32[$db>>2]|0; - $71 = (($70) + 132|0); - $72 = (($71) + 4|0); - HEAP8[$72>>0] = 0; - $73 = HEAP32[$rc>>2]|0; - $74 = (0)!=($73|0); - do { - if ($74) { - $75 = HEAP32[$db>>2]|0; - $76 = (($75) + 132|0); - $77 = (($76) + 6|0); - $78 = HEAP8[$77>>0]|0; - $79 = ($78<<24>>24)!=(0); - if (!($79)) { - $80 = HEAP32[$rc>>2]|0; - $81 = HEAP32[$pData>>2]|0; - $82 = (($81) + 12|0); - HEAP32[$82>>2] = $80; - $83 = HEAP32[$rc>>2]|0; - $84 = ($83|0)==(7); - if ($84) { - $85 = HEAP32[$db>>2]|0; - $86 = (($85) + 64|0); - HEAP8[$86>>0] = 1; - break; - } - $87 = HEAP32[$rc>>2]|0; - $88 = ($87|0)!=(9); - if ($88) { - $89 = HEAP32[$rc>>2]|0; - $90 = $89 & 255; - $91 = ($90|0)!=(6); - if ($91) { - $92 = HEAP32[$pData>>2]|0; - $93 = HEAP32[$3>>2]|0; - $94 = HEAP32[$93>>2]|0; - $95 = HEAP32[$db>>2]|0; - $96 = (_sqlite3_errmsg($95)|0); - _corruptSchema($92,$94,$96); - } - } - } - } - } while(0); - $97 = HEAP32[$pStmt>>2]|0; - (_sqlite3_finalize($97)|0); - break; - } - } - $98 = HEAP32[$3>>2]|0; - $99 = HEAP32[$98>>2]|0; - $100 = ($99|0)==(0|0); - if ($100) { - $101 = HEAP32[$pData>>2]|0; - _corruptSchema($101,0,0); - break; - } - $102 = HEAP32[$db>>2]|0; - $103 = HEAP32[$3>>2]|0; - $104 = HEAP32[$103>>2]|0; - $105 = HEAP32[$iDb>>2]|0; - $106 = HEAP32[$db>>2]|0; - $107 = (($106) + 16|0); - $108 = HEAP32[$107>>2]|0; - $109 = (($108) + ($105<<4)|0); - $110 = HEAP32[$109>>2]|0; - $111 = (_sqlite3FindIndex($102,$104,$110)|0); - HEAP32[$pIndex>>2] = $111; - $112 = HEAP32[$pIndex>>2]|0; - $113 = ($112|0)==(0|0); - if (!($113)) { - $114 = HEAP32[$3>>2]|0; - $115 = (($114) + 4|0); - $116 = HEAP32[$115>>2]|0; - $117 = HEAP32[$pIndex>>2]|0; - $118 = (($117) + 44|0); - $119 = (_sqlite3GetInt32($116,$118)|0); - $120 = ($119|0)==(0); - if ($120) { - $121 = HEAP32[$pData>>2]|0; - $122 = HEAP32[$3>>2]|0; - $123 = HEAP32[$122>>2]|0; - _corruptSchema($121,$123,18896); - } - } - } - } while(0); - HEAP32[$0>>2] = 0; - $124 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($124|0); -} -function _sqlite3AbsInt32($x) { - $x = $x|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $x; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)>=(0); - $4 = HEAP32[$1>>2]|0; - do { - if ($3) { - HEAP32[$0>>2] = $4; - } else { - $5 = ($4|0)==(-2147483648); - if ($5) { - HEAP32[$0>>2] = 2147483647; - break; - } else { - $6 = HEAP32[$1>>2]|0; - $7 = (0 - ($6))|0; - HEAP32[$0>>2] = $7; - break; - } - } - } while(0); - $8 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($8|0); -} -function _sqlite3BtreeSetCacheSize($p,$mxPage) { - $p = $p|0; - $mxPage = $mxPage|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $pBt = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pBt = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $mxPage; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pBt>>2] = $4; - $5 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($5); - $6 = HEAP32[$pBt>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$1>>2]|0; - _sqlite3PagerSetCachesize($7,$8); - STACKTOP = sp;return 0; -} -function _sqlite3AnalysisLoad($db,$iDb) { - $db = $db|0; - $iDb = $iDb|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pIdx = 0, $rc = 0, $sInfo = 0, $vararg_buffer = 0, $zSql = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $sInfo = sp + 24|0; - $i = sp + 16|0; - $zSql = sp + 12|0; - $rc = sp + 8|0; - $pIdx = sp + 4|0; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $iDb; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 16|0); - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + ($3<<4)|0); - $8 = (($7) + 12|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + 24|0); - $11 = (($10) + 8|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$i>>2] = $12; - while(1) { - $13 = HEAP32[$i>>2]|0; - $14 = ($13|0)!=(0|0); - if (!($14)) { - break; - } - $15 = HEAP32[$i>>2]|0; - $16 = (($15) + 8|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$pIdx>>2] = $17; - $18 = HEAP32[$pIdx>>2]|0; - _sqlite3DefaultRowEst($18); - $19 = HEAP32[$i>>2]|0; - $20 = HEAP32[$19>>2]|0; - HEAP32[$i>>2] = $20; - } - $21 = HEAP32[$1>>2]|0; - HEAP32[$sInfo>>2] = $21; - $22 = HEAP32[$2>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 16|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + ($22<<4)|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($sInfo) + 4|0); - HEAP32[$28>>2] = $27; - $29 = HEAP32[$1>>2]|0; - $30 = (($sInfo) + 4|0); - $31 = HEAP32[$30>>2]|0; - $32 = (_sqlite3FindTable($29,18296,$31)|0); - $33 = ($32|0)==(0|0); - if ($33) { - HEAP32[$0>>2] = 1; - $50 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($50|0); - } - $34 = HEAP32[$1>>2]|0; - $35 = (($sInfo) + 4|0); - $36 = HEAP32[$35>>2]|0; - HEAP32[$vararg_buffer>>2] = $36; - $37 = (_sqlite3MPrintf($34,18800,$vararg_buffer)|0); - HEAP32[$zSql>>2] = $37; - $38 = HEAP32[$zSql>>2]|0; - $39 = ($38|0)==(0|0); - if ($39) { - HEAP32[$rc>>2] = 7; - } else { - $40 = HEAP32[$1>>2]|0; - $41 = HEAP32[$zSql>>2]|0; - $42 = (_sqlite3_exec($40,$41,7,$sInfo,0)|0); - HEAP32[$rc>>2] = $42; - $43 = HEAP32[$1>>2]|0; - $44 = HEAP32[$zSql>>2]|0; - _sqlite3DbFree($43,$44); - } - $45 = HEAP32[$rc>>2]|0; - $46 = ($45|0)==(7); - if ($46) { - $47 = HEAP32[$1>>2]|0; - $48 = (($47) + 64|0); - HEAP8[$48>>0] = 1; - } - $49 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $49; - $50 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($50|0); -} -function _sqlite3BtreeCommit($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($1); - $2 = HEAP32[$0>>2]|0; - $3 = (_sqlite3BtreeCommitPhaseOne($2,0)|0); - HEAP32[$rc>>2] = $3; - $4 = HEAP32[$rc>>2]|0; - $5 = ($4|0)==(0); - if (!($5)) { - $8 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($8|0); - } - $6 = HEAP32[$0>>2]|0; - $7 = (_sqlite3BtreeCommitPhaseTwo($6,0)|0); - HEAP32[$rc>>2] = $7; - $8 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($8|0); -} -function _sqlite3DefaultRowEst($pIdx) { - $pIdx = $pIdx|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $aVal = 0, $i = 0, $nCopy = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 12|0; - $aVal = sp + 16|0; - $a = sp + 8|0; - $nCopy = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $pIdx; - ;HEAP16[$aVal+0>>1]=HEAP16[18880+0>>1]|0;HEAP16[$aVal+2>>1]=HEAP16[18880+2>>1]|0;HEAP16[$aVal+4>>1]=HEAP16[18880+4>>1]|0;HEAP16[$aVal+6>>1]=HEAP16[18880+6>>1]|0;HEAP16[$aVal+8>>1]=HEAP16[18880+8>>1]|0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$a>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 50|0); - $6 = HEAP16[$5>>1]|0; - $7 = $6&65535; - $8 = (5)<($7|0); - if ($8) { - $13 = 5; - } else { - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 50|0); - $11 = HEAP16[$10>>1]|0; - $12 = $11&65535; - $13 = $12; - } - HEAP32[$nCopy>>2] = $13; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 12|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + 28|0); - $18 = HEAP16[$17>>1]|0; - $19 = HEAP32[$a>>2]|0; - HEAP16[$19>>1] = $18; - $20 = HEAP32[$a>>2]|0; - $21 = HEAP16[$20>>1]|0; - $22 = $21 << 16 >> 16; - $23 = ($22|0)<(33); - if ($23) { - $24 = HEAP32[$a>>2]|0; - HEAP16[$24>>1] = 33; - } - $25 = HEAP32[$a>>2]|0; - $26 = (($25) + 2|0); - $27 = HEAP32[$nCopy>>2]|0; - $28 = $27<<1; - _memcpy(($26|0),($aVal|0),($28|0))|0; - $29 = HEAP32[$nCopy>>2]|0; - $30 = (($29) + 1)|0; - HEAP32[$i>>2] = $30; - while(1) { - $31 = HEAP32[$i>>2]|0; - $32 = HEAP32[$0>>2]|0; - $33 = (($32) + 50|0); - $34 = HEAP16[$33>>1]|0; - $35 = $34&65535; - $36 = ($31|0)<=($35|0); - if (!($36)) { - break; - } - $37 = HEAP32[$i>>2]|0; - $38 = HEAP32[$a>>2]|0; - $39 = (($38) + ($37<<1)|0); - HEAP16[$39>>1] = 23; - $40 = HEAP32[$i>>2]|0; - $41 = (($40) + 1)|0; - HEAP32[$i>>2] = $41; - } - $42 = HEAP32[$0>>2]|0; - $43 = (($42) + 54|0); - $44 = HEAP8[$43>>0]|0; - $45 = $44&255; - $46 = ($45|0)!=(0); - if (!($46)) { - STACKTOP = sp;return; - } - $47 = HEAP32[$0>>2]|0; - $48 = (($47) + 50|0); - $49 = HEAP16[$48>>1]|0; - $50 = $49&65535; - $51 = HEAP32[$a>>2]|0; - $52 = (($51) + ($50<<1)|0); - HEAP16[$52>>1] = 0; - STACKTOP = sp;return; -} -function _analysisLoader($pData,$argc,$argv,$NotUsed) { - $pData = $pData|0; - $argc = $argc|0; - $argv = $argv|0; - $NotUsed = $NotUsed|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $9 = 0, $fakeIdx = 0, $pIndex = 0, $pInfo = 0, $pTable = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $0 = sp + 88|0; - $1 = sp + 84|0; - $2 = sp + 80|0; - $3 = sp + 76|0; - $4 = sp + 72|0; - $pInfo = sp + 68|0; - $pIndex = sp + 64|0; - $pTable = sp + 60|0; - $z = sp + 56|0; - $fakeIdx = sp; - HEAP32[$1>>2] = $pData; - HEAP32[$2>>2] = $argc; - HEAP32[$3>>2] = $argv; - HEAP32[$4>>2] = $NotUsed; - $5 = HEAP32[$1>>2]|0; - HEAP32[$pInfo>>2] = $5; - $6 = HEAP32[$3>>2]|0; - $7 = ($6|0)==(0|0); - if (!($7)) { - $8 = HEAP32[$3>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)==(0|0); - if (!($10)) { - $11 = HEAP32[$3>>2]|0; - $12 = (($11) + 8|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)==(0|0); - if (!($14)) { - $15 = HEAP32[$pInfo>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$3>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$pInfo>>2]|0; - $20 = (($19) + 4|0); - $21 = HEAP32[$20>>2]|0; - $22 = (_sqlite3FindTable($16,$18,$21)|0); - HEAP32[$pTable>>2] = $22; - $23 = HEAP32[$pTable>>2]|0; - $24 = ($23|0)==(0|0); - if ($24) { - HEAP32[$0>>2] = 0; - $83 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($83|0); - } - $25 = HEAP32[$3>>2]|0; - $26 = (($25) + 4|0); - $27 = HEAP32[$26>>2]|0; - $28 = ($27|0)==(0|0); - do { - if ($28) { - HEAP32[$pIndex>>2] = 0; - } else { - $29 = HEAP32[$3>>2]|0; - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$3>>2]|0; - $32 = (($31) + 4|0); - $33 = HEAP32[$32>>2]|0; - $34 = (_sqlite3_stricmp($30,$33)|0); - $35 = ($34|0)==(0); - if ($35) { - $36 = HEAP32[$pTable>>2]|0; - $37 = (_sqlite3PrimaryKeyIndex($36)|0); - HEAP32[$pIndex>>2] = $37; - break; - } else { - $38 = HEAP32[$pInfo>>2]|0; - $39 = HEAP32[$38>>2]|0; - $40 = HEAP32[$3>>2]|0; - $41 = (($40) + 4|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$pInfo>>2]|0; - $44 = (($43) + 4|0); - $45 = HEAP32[$44>>2]|0; - $46 = (_sqlite3FindIndex($39,$42,$45)|0); - HEAP32[$pIndex>>2] = $46; - break; - } - } - } while(0); - $47 = HEAP32[$3>>2]|0; - $48 = (($47) + 8|0); - $49 = HEAP32[$48>>2]|0; - HEAP32[$z>>2] = $49; - $50 = HEAP32[$pIndex>>2]|0; - $51 = ($50|0)!=(0|0); - if ($51) { - $52 = HEAP32[$z>>2]|0; - $53 = HEAP32[$pIndex>>2]|0; - $54 = (($53) + 50|0); - $55 = HEAP16[$54>>1]|0; - $56 = $55&65535; - $57 = (($56) + 1)|0; - $58 = HEAP32[$pIndex>>2]|0; - $59 = (($58) + 8|0); - $60 = HEAP32[$59>>2]|0; - $61 = HEAP32[$pIndex>>2]|0; - _decodeIntArray($52,$57,0,$60,$61); - $62 = HEAP32[$pIndex>>2]|0; - $63 = (($62) + 36|0); - $64 = HEAP32[$63>>2]|0; - $65 = ($64|0)==(0|0); - if ($65) { - $66 = HEAP32[$pIndex>>2]|0; - $67 = (($66) + 8|0); - $68 = HEAP32[$67>>2]|0; - $69 = HEAP16[$68>>1]|0; - $70 = HEAP32[$pTable>>2]|0; - $71 = (($70) + 28|0); - HEAP16[$71>>1] = $69; - } - } else { - $72 = HEAP32[$pTable>>2]|0; - $73 = (($72) + 42|0); - $74 = HEAP16[$73>>1]|0; - $75 = (($fakeIdx) + 48|0); - HEAP16[$75>>1] = $74; - $76 = HEAP32[$z>>2]|0; - $77 = HEAP32[$pTable>>2]|0; - $78 = (($77) + 28|0); - _decodeIntArray($76,1,0,$78,$fakeIdx); - $79 = (($fakeIdx) + 48|0); - $80 = HEAP16[$79>>1]|0; - $81 = HEAP32[$pTable>>2]|0; - $82 = (($81) + 42|0); - HEAP16[$82>>1] = $80; - } - HEAP32[$0>>2] = 0; - $83 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($83|0); - } - } - } - HEAP32[$0>>2] = 0; - $83 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($83|0); -} -function _decodeIntArray($zIntArray,$nOut,$aOut,$aLog,$pIndex) { - $zIntArray = $zIntArray|0; - $nOut = $nOut|0; - $aOut = $aOut|0; - $aLog = $aLog|0; - $pIndex = $pIndex|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $c = 0, $i = 0, $v = 0, $v32 = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $4 = sp + 20|0; - $z = sp + 16|0; - $c = sp + 12|0; - $i = sp + 8|0; - $v = sp + 4|0; - $v32 = sp; - HEAP32[$0>>2] = $zIntArray; - HEAP32[$1>>2] = $nOut; - HEAP32[$2>>2] = $aOut; - HEAP32[$3>>2] = $aLog; - HEAP32[$4>>2] = $pIndex; - $5 = HEAP32[$0>>2]|0; - HEAP32[$z>>2] = $5; - $6 = HEAP32[$z>>2]|0; - $7 = ($6|0)==(0|0); - $$ = $7 ? 1472 : $5; - HEAP32[$z>>2] = $$; - HEAP32[$i>>2] = 0; - while(1) { - $8 = HEAP32[$z>>2]|0; - $9 = HEAP8[$8>>0]|0; - $10 = $9 << 24 >> 24; - $11 = ($10|0)!=(0); - if (!($11)) { - break; - } - $12 = HEAP32[$i>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = ($12|0)<($13|0); - if (!($14)) { - break; - } - HEAP32[$v>>2] = 0; - while(1) { - $15 = HEAP32[$z>>2]|0; - $16 = HEAP8[$15>>0]|0; - $17 = $16 << 24 >> 24; - HEAP32[$c>>2] = $17; - $18 = ($17|0)>=(48); - if (!($18)) { - break; - } - $19 = HEAP32[$c>>2]|0; - $20 = ($19|0)<=(57); - if (!($20)) { - break; - } - $21 = HEAP32[$v>>2]|0; - $22 = ($21*10)|0; - $23 = HEAP32[$c>>2]|0; - $24 = (($22) + ($23))|0; - $25 = (($24) - 48)|0; - HEAP32[$v>>2] = $25; - $26 = HEAP32[$z>>2]|0; - $27 = (($26) + 1|0); - HEAP32[$z>>2] = $27; - } - $28 = HEAP32[$v>>2]|0; - $29 = (_sqlite3LogEst($28,0)|0); - $30 = HEAP32[$i>>2]|0; - $31 = HEAP32[$3>>2]|0; - $32 = (($31) + ($30<<1)|0); - HEAP16[$32>>1] = $29; - $33 = HEAP32[$z>>2]|0; - $34 = HEAP8[$33>>0]|0; - $35 = $34 << 24 >> 24; - $36 = ($35|0)==(32); - if ($36) { - $37 = HEAP32[$z>>2]|0; - $38 = (($37) + 1|0); - HEAP32[$z>>2] = $38; - } - $39 = HEAP32[$i>>2]|0; - $40 = (($39) + 1)|0; - HEAP32[$i>>2] = $40; - } - $41 = HEAP32[$z>>2]|0; - $42 = (_strcmp($41,18848)|0); - $43 = ($42|0)==(0); - if ($43) { - $44 = HEAP32[$4>>2]|0; - $45 = (($44) + 55|0); - $46 = HEAP8[$45>>0]|0; - $47 = $46 & -5; - $48 = $47 | 4; - HEAP8[$45>>0] = $48; - STACKTOP = sp;return; - } - $49 = HEAP32[$z>>2]|0; - $50 = (_sqlite3_strglob(18864,$49)|0); - $51 = ($50|0)==(0); - if (!($51)) { - STACKTOP = sp;return; - } - HEAP32[$v32>>2] = 0; - $52 = HEAP32[$z>>2]|0; - $53 = (($52) + 3|0); - (_sqlite3GetInt32($53,$v32)|0); - $54 = HEAP32[$v32>>2]|0; - $55 = ($54|0)<(0); - $56 = $55 << 31 >> 31; - $57 = (_sqlite3LogEst($54,$56)|0); - $58 = HEAP32[$4>>2]|0; - $59 = (($58) + 48|0); - HEAP16[$59>>1] = $57; - STACKTOP = sp;return; -} -function _corruptSchema($pData,$zObj,$zExtra) { - $pData = $pData|0; - $zObj = $zObj|0; - $zExtra = $zExtra|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $vararg_buffer1 = 0, $vararg_ptr4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer1 = sp; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $db = sp + 8|0; - HEAP32[$0>>2] = $pData; - HEAP32[$1>>2] = $zObj; - HEAP32[$2>>2] = $zExtra; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - $5 = HEAP32[$db>>2]|0; - $6 = (($5) + 64|0); - $7 = HEAP8[$6>>0]|0; - $8 = ($7<<24>>24)!=(0); - if (!($8)) { - $9 = HEAP32[$db>>2]|0; - $10 = (($9) + 24|0); - $11 = HEAP32[$10>>2]|0; - $12 = $11 & 65536; - $13 = ($12|0)==(0); - if ($13) { - $14 = HEAP32[$1>>2]|0; - $15 = ($14|0)==(0|0); - if ($15) { - HEAP32[$1>>2] = 18920; - } - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 4|0); - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$db>>2]|0; - $20 = HEAP32[$1>>2]|0; - HEAP32[$vararg_buffer1>>2] = $20; - _sqlite3SetString($18,$19,18928,$vararg_buffer1); - $21 = HEAP32[$2>>2]|0; - $22 = ($21|0)!=(0|0); - if ($22) { - $23 = HEAP32[$db>>2]|0; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 4|0); - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$26>>2]|0; - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 4|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$30>>2]|0; - $32 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer1>>2] = $31; - $vararg_ptr4 = (($vararg_buffer1) + 4|0); - HEAP32[$vararg_ptr4>>2] = $32; - $33 = (_sqlite3MAppendf($23,$27,18960,$vararg_buffer1)|0); - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 4|0); - $36 = HEAP32[$35>>2]|0; - HEAP32[$36>>2] = $33; - } - } - } - $37 = HEAP32[$db>>2]|0; - $38 = (($37) + 64|0); - $39 = HEAP8[$38>>0]|0; - $40 = $39&255; - $41 = ($40|0)!=(0); - if ($41) { - $45 = 7; - $43 = HEAP32[$0>>2]|0; - $44 = (($43) + 12|0); - HEAP32[$44>>2] = $45; - STACKTOP = sp;return; - } - $42 = (_sqlite3CorruptError(99745)|0); - $45 = $42; - $43 = HEAP32[$0>>2]|0; - $44 = (($43) + 12|0); - HEAP32[$44>>2] = $45; - STACKTOP = sp;return; -} -function _sqlite3MAppendf($db,$zStr,$zFormat,$varargs) { - $db = $db|0; - $zStr = $zStr|0; - $zFormat = $zFormat|0; - $varargs = $varargs|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $ap = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $ap = sp + 8|0; - $z = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $zStr; - HEAP32[$2>>2] = $zFormat; - HEAP32[$ap>>2] = $varargs; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$2>>2]|0; - $5 = (_sqlite3VMPrintf($3,$4,$ap)|0); - HEAP32[$z>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - _sqlite3DbFree($6,$7); - $8 = HEAP32[$z>>2]|0; - STACKTOP = sp;return ($8|0); -} -function _reindexDatabases($pParse,$zColl) { - $pParse = $pParse|0; - $zColl = $zColl|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $iDb = 0, $k = 0, $pDb = 0, $pTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $pDb = sp + 16|0; - $iDb = sp + 12|0; - $db = sp + 8|0; - $k = sp + 4|0; - $pTab = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $zColl; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - HEAP32[$iDb>>2] = 0; - $4 = HEAP32[$db>>2]|0; - $5 = (($4) + 16|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$pDb>>2] = $6; - while(1) { - $7 = HEAP32[$iDb>>2]|0; - $8 = HEAP32[$db>>2]|0; - $9 = (($8) + 20|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($7|0)<($10|0); - if (!($11)) { - break; - } - $12 = HEAP32[$pDb>>2]|0; - $13 = (($12) + 12|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + 8|0); - $16 = (($15) + 8|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$k>>2] = $17; - while(1) { - $18 = HEAP32[$k>>2]|0; - $19 = ($18|0)!=(0|0); - if (!($19)) { - break; - } - $20 = HEAP32[$k>>2]|0; - $21 = (($20) + 8|0); - $22 = HEAP32[$21>>2]|0; - HEAP32[$pTab>>2] = $22; - $23 = HEAP32[$0>>2]|0; - $24 = HEAP32[$pTab>>2]|0; - $25 = HEAP32[$1>>2]|0; - _reindexTable($23,$24,$25); - $26 = HEAP32[$k>>2]|0; - $27 = HEAP32[$26>>2]|0; - HEAP32[$k>>2] = $27; - } - $28 = HEAP32[$iDb>>2]|0; - $29 = (($28) + 1)|0; - HEAP32[$iDb>>2] = $29; - $30 = HEAP32[$pDb>>2]|0; - $31 = (($30) + 16|0); - HEAP32[$pDb>>2] = $31; - } - STACKTOP = sp;return; -} -function _reindexTable($pParse,$pTab,$zColl) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $zColl = $zColl|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iDb = 0, $pIndex = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $pIndex = sp + 4|0; - $iDb = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $zColl; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 8|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pIndex>>2] = $5; - while(1) { - $6 = HEAP32[$pIndex>>2]|0; - $7 = ($6|0)!=(0|0); - if (!($7)) { - break; - } - $8 = HEAP32[$2>>2]|0; - $9 = ($8|0)==(0|0); - if ($9) { - label = 5; - } else { - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$pIndex>>2]|0; - $12 = (_collationMatch($10,$11)|0); - $13 = ($12|0)!=(0); - if ($13) { - label = 5; - } - } - if ((label|0) == 5) { - label = 0; - $14 = HEAP32[$0>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 68|0); - $18 = HEAP32[$17>>2]|0; - $19 = (_sqlite3SchemaToIndex($15,$18)|0); - HEAP32[$iDb>>2] = $19; - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$iDb>>2]|0; - _sqlite3BeginWriteOperation($20,0,$21); - $22 = HEAP32[$0>>2]|0; - $23 = HEAP32[$pIndex>>2]|0; - _sqlite3RefillIndex($22,$23,-1); - } - $24 = HEAP32[$pIndex>>2]|0; - $25 = (($24) + 20|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$pIndex>>2] = $26; - } - STACKTOP = sp;return; -} -function _sqlite3RefillIndex($pParse,$pIndex,$memRootPage) { - $pParse = $pParse|0; - $pIndex = $pIndex|0; - $memRootPage = $memRootPage|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; - var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; - var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; - var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; - var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr1 = 0, $addr2 = 0, $db = 0, $iDb = 0, $iIdx = 0, $iPartIdxLabel = 0; - var $iSorter = 0, $iTab = 0, $j2 = 0, $pKey = 0, $pTab = 0, $regRecord = 0, $tnum = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 64|0; - $1 = sp + 60|0; - $2 = sp + 56|0; - $pTab = sp + 52|0; - $iTab = sp + 48|0; - $iIdx = sp + 44|0; - $iSorter = sp + 40|0; - $addr1 = sp + 36|0; - $addr2 = sp + 32|0; - $tnum = sp + 28|0; - $iPartIdxLabel = sp + 24|0; - $v = sp + 20|0; - $pKey = sp + 16|0; - $regRecord = sp + 12|0; - $db = sp + 8|0; - $iDb = sp + 4|0; - $j2 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pIndex; - HEAP32[$2>>2] = $memRootPage; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 12|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pTab>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 68|0); - $8 = HEAP32[$7>>2]|0; - $9 = (($8) + 1)|0; - HEAP32[$7>>2] = $9; - HEAP32[$iTab>>2] = $8; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 68|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + 1)|0; - HEAP32[$11>>2] = $13; - HEAP32[$iIdx>>2] = $12; - $14 = HEAP32[$0>>2]|0; - $15 = HEAP32[$14>>2]|0; - HEAP32[$db>>2] = $15; - $16 = HEAP32[$db>>2]|0; - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 24|0); - $19 = HEAP32[$18>>2]|0; - $20 = (_sqlite3SchemaToIndex($16,$19)|0); - HEAP32[$iDb>>2] = $20; - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$iDb>>2]|0; - $25 = HEAP32[$db>>2]|0; - $26 = (($25) + 16|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + ($24<<4)|0); - $29 = HEAP32[$28>>2]|0; - $30 = (_sqlite3AuthCheck($21,27,$23,0,$29)|0); - $31 = ($30|0)!=(0); - if ($31) { - STACKTOP = sp;return; - } - $32 = HEAP32[$0>>2]|0; - $33 = HEAP32[$iDb>>2]|0; - $34 = HEAP32[$pTab>>2]|0; - $35 = (($34) + 32|0); - $36 = HEAP32[$35>>2]|0; - $37 = HEAP32[$pTab>>2]|0; - $38 = HEAP32[$37>>2]|0; - _sqlite3TableLock($32,$33,$36,1,$38); - $39 = HEAP32[$0>>2]|0; - $40 = (_sqlite3GetVdbe($39)|0); - HEAP32[$v>>2] = $40; - $41 = HEAP32[$v>>2]|0; - $42 = ($41|0)==(0|0); - if ($42) { - STACKTOP = sp;return; - } - $43 = HEAP32[$2>>2]|0; - $44 = ($43|0)>=(0); - if ($44) { - $45 = HEAP32[$2>>2]|0; - HEAP32[$tnum>>2] = $45; - } else { - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 44|0); - $48 = HEAP32[$47>>2]|0; - HEAP32[$tnum>>2] = $48; - } - $49 = HEAP32[$0>>2]|0; - $50 = HEAP32[$1>>2]|0; - $51 = (_sqlite3KeyInfoOfIndex($49,$50)|0); - HEAP32[$pKey>>2] = $51; - $52 = HEAP32[$0>>2]|0; - $53 = (($52) + 68|0); - $54 = HEAP32[$53>>2]|0; - $55 = (($54) + 1)|0; - HEAP32[$53>>2] = $55; - HEAP32[$iSorter>>2] = $54; - $56 = HEAP32[$v>>2]|0; - $57 = HEAP32[$iSorter>>2]|0; - $58 = HEAP32[$pKey>>2]|0; - $59 = (_sqlite3KeyInfoRef($58)|0); - (_sqlite3VdbeAddOp4($56,56,$57,0,0,$59,-6)|0); - $60 = HEAP32[$0>>2]|0; - $61 = HEAP32[$iTab>>2]|0; - $62 = HEAP32[$iDb>>2]|0; - $63 = HEAP32[$pTab>>2]|0; - _sqlite3OpenTable($60,$61,$62,$63,52); - $64 = HEAP32[$v>>2]|0; - $65 = HEAP32[$iTab>>2]|0; - $66 = (_sqlite3VdbeAddOp2($64,105,$65,0)|0); - HEAP32[$addr1>>2] = $66; - $67 = HEAP32[$0>>2]|0; - $68 = (_sqlite3GetTempReg($67)|0); - HEAP32[$regRecord>>2] = $68; - $69 = HEAP32[$0>>2]|0; - $70 = HEAP32[$1>>2]|0; - $71 = HEAP32[$iTab>>2]|0; - $72 = HEAP32[$regRecord>>2]|0; - (_sqlite3GenerateIndexKey($69,$70,$71,$72,0,$iPartIdxLabel,0,0)|0); - $73 = HEAP32[$v>>2]|0; - $74 = HEAP32[$iSorter>>2]|0; - $75 = HEAP32[$regRecord>>2]|0; - (_sqlite3VdbeAddOp2($73,106,$74,$75)|0); - $76 = HEAP32[$0>>2]|0; - $77 = HEAP32[$iPartIdxLabel>>2]|0; - _sqlite3ResolvePartIdxLabel($76,$77); - $78 = HEAP32[$v>>2]|0; - $79 = HEAP32[$iTab>>2]|0; - $80 = HEAP32[$addr1>>2]|0; - $81 = (($80) + 1)|0; - (_sqlite3VdbeAddOp2($78,9,$79,$81)|0); - $82 = HEAP32[$v>>2]|0; - $83 = HEAP32[$addr1>>2]|0; - _sqlite3VdbeJumpHere($82,$83); - $84 = HEAP32[$2>>2]|0; - $85 = ($84|0)<(0); - if ($85) { - $86 = HEAP32[$v>>2]|0; - $87 = HEAP32[$tnum>>2]|0; - $88 = HEAP32[$iDb>>2]|0; - (_sqlite3VdbeAddOp2($86,115,$87,$88)|0); - } - $89 = HEAP32[$v>>2]|0; - $90 = HEAP32[$iIdx>>2]|0; - $91 = HEAP32[$tnum>>2]|0; - $92 = HEAP32[$iDb>>2]|0; - $93 = HEAP32[$pKey>>2]|0; - (_sqlite3VdbeAddOp4($89,53,$90,$91,$92,$93,-6)|0); - $94 = HEAP32[$v>>2]|0; - $95 = HEAP32[$2>>2]|0; - $96 = ($95|0)>=(0); - $97 = $96 ? 2 : 0; - $98 = 1 | $97; - $99 = $98&255; - _sqlite3VdbeChangeP5($94,$99); - $100 = HEAP32[$v>>2]|0; - $101 = HEAP32[$iSorter>>2]|0; - $102 = (_sqlite3VdbeAddOp2($100,103,$101,0)|0); - HEAP32[$addr1>>2] = $102; - $103 = HEAP32[$1>>2]|0; - $104 = (($103) + 54|0); - $105 = HEAP8[$104>>0]|0; - $106 = $105&255; - $107 = ($106|0)!=(0); - if ($107) { - $108 = HEAP32[$pKey>>2]|0; - $109 = ($108|0)!=(0|0); - if ($109) { - $110 = HEAP32[$v>>2]|0; - $111 = (_sqlite3VdbeCurrentAddr($110)|0); - $112 = (($111) + 3)|0; - HEAP32[$j2>>2] = $112; - $113 = HEAP32[$v>>2]|0; - $114 = HEAP32[$j2>>2]|0; - (_sqlite3VdbeAddOp2($113,16,0,$114)|0); - $115 = HEAP32[$v>>2]|0; - $116 = (_sqlite3VdbeCurrentAddr($115)|0); - HEAP32[$addr2>>2] = $116; - $117 = HEAP32[$v>>2]|0; - $118 = HEAP32[$iSorter>>2]|0; - $119 = HEAP32[$j2>>2]|0; - $120 = HEAP32[$regRecord>>2]|0; - $121 = HEAP32[$pKey>>2]|0; - $122 = (($121) + 6|0); - $123 = HEAP16[$122>>1]|0; - $124 = $123&65535; - $125 = HEAP32[$1>>2]|0; - $126 = (($125) + 50|0); - $127 = HEAP16[$126>>1]|0; - $128 = $127&65535; - $129 = (($124) - ($128))|0; - (_sqlite3VdbeAddOp4Int($117,84,$118,$119,$120,$129)|0); - $130 = HEAP32[$0>>2]|0; - $131 = HEAP32[$1>>2]|0; - _sqlite3UniqueConstraint($130,2,$131); - } else { - label = 11; - } - } else { - label = 11; - } - if ((label|0) == 11) { - $132 = HEAP32[$v>>2]|0; - $133 = (_sqlite3VdbeCurrentAddr($132)|0); - HEAP32[$addr2>>2] = $133; - } - $134 = HEAP32[$v>>2]|0; - $135 = HEAP32[$iSorter>>2]|0; - $136 = HEAP32[$regRecord>>2]|0; - (_sqlite3VdbeAddOp2($134,95,$135,$136)|0); - $137 = HEAP32[$v>>2]|0; - $138 = HEAP32[$iIdx>>2]|0; - $139 = HEAP32[$regRecord>>2]|0; - (_sqlite3VdbeAddOp3($137,107,$138,$139,1)|0); - $140 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($140,16); - $141 = HEAP32[$0>>2]|0; - $142 = HEAP32[$regRecord>>2]|0; - _sqlite3ReleaseTempReg($141,$142); - $143 = HEAP32[$v>>2]|0; - $144 = HEAP32[$iSorter>>2]|0; - $145 = HEAP32[$addr2>>2]|0; - (_sqlite3VdbeAddOp2($143,5,$144,$145)|0); - $146 = HEAP32[$v>>2]|0; - $147 = HEAP32[$addr1>>2]|0; - _sqlite3VdbeJumpHere($146,$147); - $148 = HEAP32[$v>>2]|0; - $149 = HEAP32[$iTab>>2]|0; - (_sqlite3VdbeAddOp1($148,58,$149)|0); - $150 = HEAP32[$v>>2]|0; - $151 = HEAP32[$iIdx>>2]|0; - (_sqlite3VdbeAddOp1($150,58,$151)|0); - $152 = HEAP32[$v>>2]|0; - $153 = HEAP32[$iSorter>>2]|0; - (_sqlite3VdbeAddOp1($152,58,$153)|0); - STACKTOP = sp;return; -} -function _sqlite3GenerateIndexKey($pParse,$pIdx,$iDataCur,$regOut,$prefixOnly,$piPartIdxLabel,$pPrior,$regPrior) { - $pParse = $pParse|0; - $pIdx = $pIdx|0; - $iDataCur = $iDataCur|0; - $regOut = $regOut|0; - $prefixOnly = $prefixOnly|0; - $piPartIdxLabel = $piPartIdxLabel|0; - $pPrior = $pPrior|0; - $regPrior = $regPrior|0; - var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; - var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; - var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; - var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; - var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; - var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $j = 0, $nCol = 0, $pTab = 0, $regBase = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 48|0; - $1 = sp + 44|0; - $2 = sp + 40|0; - $3 = sp + 36|0; - $4 = sp + 32|0; - $5 = sp + 28|0; - $6 = sp + 24|0; - $7 = sp + 20|0; - $v = sp + 16|0; - $j = sp + 12|0; - $pTab = sp + 8|0; - $regBase = sp + 4|0; - $nCol = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pIdx; - HEAP32[$2>>2] = $iDataCur; - HEAP32[$3>>2] = $regOut; - HEAP32[$4>>2] = $prefixOnly; - HEAP32[$5>>2] = $piPartIdxLabel; - HEAP32[$6>>2] = $pPrior; - HEAP32[$7>>2] = $regPrior; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 8|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$v>>2] = $10; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 12|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pTab>>2] = $13; - $14 = HEAP32[$5>>2]|0; - $15 = ($14|0)!=(0|0); - do { - if ($15) { - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 36|0); - $18 = HEAP32[$17>>2]|0; - $19 = ($18|0)!=(0|0); - if ($19) { - $20 = HEAP32[$v>>2]|0; - $21 = (_sqlite3VdbeMakeLabel($20)|0); - $22 = HEAP32[$5>>2]|0; - HEAP32[$22>>2] = $21; - $23 = HEAP32[$2>>2]|0; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 96|0); - HEAP32[$25>>2] = $23; - $26 = HEAP32[$0>>2]|0; - _sqlite3ExprCachePush($26); - $27 = HEAP32[$0>>2]|0; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 36|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$5>>2]|0; - $32 = HEAP32[$31>>2]|0; - _sqlite3ExprIfFalse($27,$30,$32,8); - break; - } else { - $33 = HEAP32[$5>>2]|0; - HEAP32[$33>>2] = 0; - break; - } - } - } while(0); - $34 = HEAP32[$4>>2]|0; - $35 = ($34|0)!=(0); - if ($35) { - $36 = HEAP32[$1>>2]|0; - $37 = (($36) + 55|0); - $38 = HEAP8[$37>>0]|0; - $39 = ($38&255) >>> 3; - $40 = $39 & 1; - $41 = $40&255; - $42 = ($41|0)!=(0); - if ($42) { - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + 50|0); - $45 = HEAP16[$44>>1]|0; - $$sink = $45; - } else { - label = 8; - } - } else { - label = 8; - } - if ((label|0) == 8) { - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 52|0); - $48 = HEAP16[$47>>1]|0; - $$sink = $48; - } - $49 = $$sink&65535; - HEAP32[$nCol>>2] = $49; - $50 = HEAP32[$0>>2]|0; - $51 = HEAP32[$nCol>>2]|0; - $52 = (_sqlite3GetTempRange($50,$51)|0); - HEAP32[$regBase>>2] = $52; - $53 = HEAP32[$6>>2]|0; - $54 = ($53|0)!=(0|0); - do { - if ($54) { - $55 = HEAP32[$regBase>>2]|0; - $56 = HEAP32[$7>>2]|0; - $57 = ($55|0)!=($56|0); - if (!($57)) { - $58 = HEAP32[$6>>2]|0; - $59 = (($58) + 36|0); - $60 = HEAP32[$59>>2]|0; - $61 = ($60|0)!=(0|0); - if (!($61)) { - break; - } - } - HEAP32[$6>>2] = 0; - } - } while(0); - HEAP32[$j>>2] = 0; - while(1) { - $62 = HEAP32[$j>>2]|0; - $63 = HEAP32[$nCol>>2]|0; - $64 = ($62|0)<($63|0); - if (!($64)) { - break; - } - $65 = HEAP32[$6>>2]|0; - $66 = ($65|0)!=(0|0); - if ($66) { - $67 = HEAP32[$j>>2]|0; - $68 = HEAP32[$6>>2]|0; - $69 = (($68) + 4|0); - $70 = HEAP32[$69>>2]|0; - $71 = (($70) + ($67<<1)|0); - $72 = HEAP16[$71>>1]|0; - $73 = $72 << 16 >> 16; - $74 = HEAP32[$j>>2]|0; - $75 = HEAP32[$1>>2]|0; - $76 = (($75) + 4|0); - $77 = HEAP32[$76>>2]|0; - $78 = (($77) + ($74<<1)|0); - $79 = HEAP16[$78>>1]|0; - $80 = $79 << 16 >> 16; - $81 = ($73|0)==($80|0); - if (!($81)) { - label = 17; - } - } else { - label = 17; - } - if ((label|0) == 17) { - label = 0; - $82 = HEAP32[$v>>2]|0; - $83 = HEAP32[$pTab>>2]|0; - $84 = HEAP32[$2>>2]|0; - $85 = HEAP32[$j>>2]|0; - $86 = HEAP32[$1>>2]|0; - $87 = (($86) + 4|0); - $88 = HEAP32[$87>>2]|0; - $89 = (($88) + ($85<<1)|0); - $90 = HEAP16[$89>>1]|0; - $91 = $90 << 16 >> 16; - $92 = HEAP32[$regBase>>2]|0; - $93 = HEAP32[$j>>2]|0; - $94 = (($92) + ($93))|0; - _sqlite3ExprCodeGetColumnOfTable($82,$83,$84,$91,$94); - $95 = HEAP32[$v>>2]|0; - (_sqlite3VdbeDeletePriorOpcode($95,39)|0); - } - $96 = HEAP32[$j>>2]|0; - $97 = (($96) + 1)|0; - HEAP32[$j>>2] = $97; - } - $98 = HEAP32[$3>>2]|0; - $99 = ($98|0)!=(0); - if (!($99)) { - $104 = HEAP32[$0>>2]|0; - $105 = HEAP32[$regBase>>2]|0; - $106 = HEAP32[$nCol>>2]|0; - _sqlite3ReleaseTempRange($104,$105,$106); - $107 = HEAP32[$regBase>>2]|0; - STACKTOP = sp;return ($107|0); - } - $100 = HEAP32[$v>>2]|0; - $101 = HEAP32[$regBase>>2]|0; - $102 = HEAP32[$nCol>>2]|0; - $103 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp3($100,48,$101,$102,$103)|0); - $104 = HEAP32[$0>>2]|0; - $105 = HEAP32[$regBase>>2]|0; - $106 = HEAP32[$nCol>>2]|0; - _sqlite3ReleaseTempRange($104,$105,$106); - $107 = HEAP32[$regBase>>2]|0; - STACKTOP = sp;return ($107|0); -} -function _sqlite3ResolvePartIdxLabel($pParse,$iLabel) { - $pParse = $pParse|0; - $iLabel = $iLabel|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iLabel; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0); - if (!($3)) { - STACKTOP = sp;return; - } - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 8|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$1>>2]|0; - _sqlite3VdbeResolveLabel($6,$7); - $8 = HEAP32[$0>>2]|0; - _sqlite3ExprCachePop($8); - STACKTOP = sp;return; -} -function _sqlite3UniqueConstraint($pParse,$onError,$pIdx) { - $pParse = $pParse|0; - $onError = $onError|0; - $pIdx = $pIdx|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $errMsg = 0, $j = 0, $pTab = 0, $zCol = 0, $zErr = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 52|0; - $1 = sp + 48|0; - $2 = sp + 44|0; - $zErr = sp + 40|0; - $j = sp + 36|0; - $errMsg = sp + 8|0; - $pTab = sp + 4|0; - $zCol = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $onError; - HEAP32[$2>>2] = $pIdx; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 12|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pTab>>2] = $5; - _sqlite3StrAccumInit($errMsg,0,0,200); - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$errMsg>>2] = $7; - HEAP32[$j>>2] = 0; - while(1) { - $8 = HEAP32[$j>>2]|0; - $9 = HEAP32[$2>>2]|0; - $10 = (($9) + 50|0); - $11 = HEAP16[$10>>1]|0; - $12 = $11&65535; - $13 = ($8|0)<($12|0); - if (!($13)) { - break; - } - $14 = HEAP32[$j>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + ($14<<1)|0); - $19 = HEAP16[$18>>1]|0; - $20 = $19 << 16 >> 16; - $21 = HEAP32[$pTab>>2]|0; - $22 = (($21) + 4|0); - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + (($20*24)|0)|0); - $25 = HEAP32[$24>>2]|0; - HEAP32[$zCol>>2] = $25; - $26 = HEAP32[$j>>2]|0; - $27 = ($26|0)!=(0); - if ($27) { - _sqlite3StrAccumAppend($errMsg,19016,2); - } - $28 = HEAP32[$pTab>>2]|0; - $29 = HEAP32[$28>>2]|0; - _sqlite3StrAccumAppendAll($errMsg,$29); - _sqlite3StrAccumAppend($errMsg,19024,1); - $30 = HEAP32[$zCol>>2]|0; - _sqlite3StrAccumAppendAll($errMsg,$30); - $31 = HEAP32[$j>>2]|0; - $32 = (($31) + 1)|0; - HEAP32[$j>>2] = $32; - } - $33 = (_sqlite3StrAccumFinish($errMsg)|0); - HEAP32[$zErr>>2] = $33; - $34 = HEAP32[$0>>2]|0; - $35 = HEAP32[$2>>2]|0; - $36 = (($35) + 55|0); - $37 = HEAP8[$36>>0]|0; - $38 = $37 & 3; - $39 = $38&255; - $40 = ($39|0)==(2); - $41 = $40 ? 1555 : 2067; - $42 = HEAP32[$1>>2]|0; - $43 = HEAP32[$zErr>>2]|0; - _sqlite3HaltConstraint($34,$41,$42,$43,-1,2); - STACKTOP = sp;return; -} -function _sqlite3StrAccumAppendAll($p,$z) { - $p = $p|0; - $z = $z|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $z; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (_sqlite3Strlen30($4)|0); - _sqlite3StrAccumAppend($2,$3,$5); - STACKTOP = sp;return; -} -function _sqlite3HaltConstraint($pParse,$errCode,$onError,$p4,$p4type,$p5Errmsg) { - $pParse = $pParse|0; - $errCode = $errCode|0; - $onError = $onError|0; - $p4 = $p4|0; - $p4type = $p4type|0; - $p5Errmsg = $p5Errmsg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $4 = sp + 21|0; - $5 = sp + 20|0; - $v = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $errCode; - HEAP32[$2>>2] = $onError; - HEAP32[$3>>2] = $p4; - HEAP8[$4>>0] = $p4type; - HEAP8[$5>>0] = $p5Errmsg; - $6 = HEAP32[$0>>2]|0; - $7 = (_sqlite3GetVdbe($6)|0); - HEAP32[$v>>2] = $7; - $8 = HEAP32[$2>>2]|0; - $9 = ($8|0)==(2); - if ($9) { - $10 = HEAP32[$0>>2]|0; - _sqlite3MayAbort($10); - } - $11 = HEAP32[$v>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = HEAP32[$3>>2]|0; - $15 = HEAP8[$4>>0]|0; - $16 = $15 << 24 >> 24; - (_sqlite3VdbeAddOp4($11,24,$12,$13,0,$14,$16)|0); - $17 = HEAP8[$5>>0]|0; - $18 = ($17<<24>>24)!=(0); - if (!($18)) { - STACKTOP = sp;return; - } - $19 = HEAP32[$v>>2]|0; - $20 = HEAP8[$5>>0]|0; - _sqlite3VdbeChangeP5($19,$20); - STACKTOP = sp;return; -} -function _sqlite3VdbeResolveLabel($v,$x) { - $v = $v|0; - $x = $x|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $j = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $p = sp + 4|0; - $j = sp; - HEAP32[$0>>2] = $v; - HEAP32[$1>>2] = $x; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 24|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$p>>2] = $4; - $5 = HEAP32[$1>>2]|0; - $6 = (-1 - ($5))|0; - HEAP32[$j>>2] = $6; - $7 = HEAP32[$j>>2]|0; - $8 = ($7|0)>=(0); - if ($8) { - $9 = HEAP32[$p>>2]|0; - $10 = (($9) + 112|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)!=(0|0); - if ($12) { - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 32|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$j>>2]|0; - $17 = HEAP32[$p>>2]|0; - $18 = (($17) + 112|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($19) + ($16<<2)|0); - HEAP32[$20>>2] = $15; - } - } - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 32|0); - $23 = HEAP32[$22>>2]|0; - $24 = (($23) - 1)|0; - $25 = HEAP32[$p>>2]|0; - $26 = (($25) + 88|0); - HEAP32[$26>>2] = $24; - STACKTOP = sp;return; -} -function _sqlite3ExprCachePop($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $i = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 100|0); - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + -1)|0; - HEAP32[$2>>2] = $4; - HEAP32[$i>>2] = 0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 116|0); - HEAP32[$p>>2] = $6; - while(1) { - $7 = HEAP32[$i>>2]|0; - $8 = ($7|0)<(10); - if (!($8)) { - break; - } - $9 = HEAP32[$p>>2]|0; - $10 = (($9) + 12|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)!=(0); - if ($12) { - $13 = HEAP32[$p>>2]|0; - $14 = (($13) + 8|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 100|0); - $18 = HEAP32[$17>>2]|0; - $19 = ($15|0)>($18|0); - if ($19) { - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$p>>2]|0; - _cacheEntryClear($20,$21); - $22 = HEAP32[$p>>2]|0; - $23 = (($22) + 12|0); - HEAP32[$23>>2] = 0; - } - } - $24 = HEAP32[$i>>2]|0; - $25 = (($24) + 1)|0; - HEAP32[$i>>2] = $25; - $26 = HEAP32[$p>>2]|0; - $27 = (($26) + 20|0); - HEAP32[$p>>2] = $27; - } - STACKTOP = sp;return; -} -function _cacheEntryClear($pParse,$p) { - $pParse = $pParse|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 6|0); - $4 = HEAP8[$3>>0]|0; - $5 = ($4<<24>>24)!=(0); - if (!($5)) { - STACKTOP = sp;return; - } - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 19|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - $10 = ($9|0)<(8); - if ($10) { - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 12|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 19|0); - $16 = HEAP8[$15>>0]|0; - $17 = (($16) + 1)<<24>>24; - HEAP8[$15>>0] = $17; - $18 = $16&255; - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 24|0); - $21 = (($20) + ($18<<2)|0); - HEAP32[$21>>2] = $13; - } - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 6|0); - HEAP8[$23>>0] = 0; - STACKTOP = sp;return; -} -function _sqlite3VdbeMakeLabel($v) { - $v = $v|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $p = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $v; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 24|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$p>>2] = $3; - $4 = HEAP32[$p>>2]|0; - $5 = (($4) + 108|0); - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + 1)|0; - HEAP32[$5>>2] = $7; - HEAP32[$i>>2] = $6; - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[$i>>2]|0; - $10 = (($9) - 1)|0; - $11 = $8 & $10; - $12 = ($11|0)==(0); - if ($12) { - $13 = HEAP32[$p>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$p>>2]|0; - $16 = (($15) + 112|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$i>>2]|0; - $19 = $18<<1; - $20 = (($19) + 1)|0; - $21 = $20<<2; - $22 = (_sqlite3DbReallocOrFree($14,$17,$21)|0); - $23 = HEAP32[$p>>2]|0; - $24 = (($23) + 112|0); - HEAP32[$24>>2] = $22; - } - $25 = HEAP32[$p>>2]|0; - $26 = (($25) + 112|0); - $27 = HEAP32[$26>>2]|0; - $28 = ($27|0)!=(0|0); - if (!($28)) { - $34 = HEAP32[$i>>2]|0; - $35 = (-1 - ($34))|0; - STACKTOP = sp;return ($35|0); - } - $29 = HEAP32[$i>>2]|0; - $30 = HEAP32[$p>>2]|0; - $31 = (($30) + 112|0); - $32 = HEAP32[$31>>2]|0; - $33 = (($32) + ($29<<2)|0); - HEAP32[$33>>2] = -1; - $34 = HEAP32[$i>>2]|0; - $35 = (-1 - ($34))|0; - STACKTOP = sp;return ($35|0); -} -function _sqlite3ExprCachePush($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 100|0); - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 1)|0; - HEAP32[$2>>2] = $4; - STACKTOP = sp;return; -} -function _sqlite3ExprIfFalse($pParse,$pExpr,$dest,$jumpIfNull) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - $dest = $dest|0; - $jumpIfNull = $jumpIfNull|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; - var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; - var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; - var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; - var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $d2 = 0, $destIfNull = 0, $op = 0, $r1 = 0, $r2 = 0; - var $regFree1 = 0, $regFree2 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $v = sp + 28|0; - $op = sp + 24|0; - $regFree1 = sp + 20|0; - $regFree2 = sp + 16|0; - $r1 = sp + 12|0; - $r2 = sp + 8|0; - $d2 = sp + 4|0; - $destIfNull = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pExpr; - HEAP32[$2>>2] = $dest; - HEAP32[$3>>2] = $jumpIfNull; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 8|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$v>>2] = $6; - HEAP32[$op>>2] = 0; - HEAP32[$regFree1>>2] = 0; - HEAP32[$regFree2>>2] = 0; - $7 = HEAP32[$v>>2]|0; - $8 = ($7|0)==(0|0); - if ($8) { - STACKTOP = sp;return; - } - $9 = HEAP32[$1>>2]|0; - $10 = ($9|0)==(0|0); - if ($10) { - STACKTOP = sp;return; - } - $11 = HEAP32[$1>>2]|0; - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = (($13) + 0)|0; - $15 = $14 ^ 1; - $16 = (($15) - 0)|0; - HEAP32[$op>>2] = $16; - $17 = HEAP32[$1>>2]|0; - $18 = HEAP8[$17>>0]|0; - $19 = $18&255; - L7: do { - switch ($19|0) { - case 19: { - $53 = HEAP32[$0>>2]|0; - $54 = HEAP32[$1>>2]|0; - $55 = (($54) + 12|0); - $56 = HEAP32[$55>>2]|0; - $57 = HEAP32[$2>>2]|0; - $58 = HEAP32[$3>>2]|0; - _sqlite3ExprIfTrue($53,$56,$57,$58); - break; - } - case 79: case 78: case 83: case 80: case 81: case 82: { - $59 = HEAP32[$0>>2]|0; - $60 = HEAP32[$1>>2]|0; - $61 = (($60) + 12|0); - $62 = HEAP32[$61>>2]|0; - $63 = (_sqlite3ExprCodeTemp($59,$62,$regFree1)|0); - HEAP32[$r1>>2] = $63; - $64 = HEAP32[$0>>2]|0; - $65 = HEAP32[$1>>2]|0; - $66 = (($65) + 16|0); - $67 = HEAP32[$66>>2]|0; - $68 = (_sqlite3ExprCodeTemp($64,$67,$regFree2)|0); - HEAP32[$r2>>2] = $68; - $69 = HEAP32[$0>>2]|0; - $70 = HEAP32[$1>>2]|0; - $71 = (($70) + 12|0); - $72 = HEAP32[$71>>2]|0; - $73 = HEAP32[$1>>2]|0; - $74 = (($73) + 16|0); - $75 = HEAP32[$74>>2]|0; - $76 = HEAP32[$op>>2]|0; - $77 = HEAP32[$r1>>2]|0; - $78 = HEAP32[$r2>>2]|0; - $79 = HEAP32[$2>>2]|0; - $80 = HEAP32[$3>>2]|0; - (_codeCompare($69,$72,$75,$76,$77,$78,$79,$80)|0); - break; - } - case 77: case 76: { - $107 = HEAP32[$0>>2]|0; - $108 = HEAP32[$1>>2]|0; - $109 = (($108) + 12|0); - $110 = HEAP32[$109>>2]|0; - $111 = (_sqlite3ExprCodeTemp($107,$110,$regFree1)|0); - HEAP32[$r1>>2] = $111; - $112 = HEAP32[$v>>2]|0; - $113 = HEAP32[$op>>2]|0; - $114 = HEAP32[$r1>>2]|0; - $115 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp2($112,$113,$114,$115)|0); - break; - } - case 75: { - $120 = HEAP32[$3>>2]|0; - $121 = ($120|0)!=(0); - if ($121) { - $122 = HEAP32[$0>>2]|0; - $123 = HEAP32[$1>>2]|0; - $124 = HEAP32[$2>>2]|0; - $125 = HEAP32[$2>>2]|0; - _sqlite3ExprCodeIN($122,$123,$124,$125); - break L7; - } else { - $126 = HEAP32[$v>>2]|0; - $127 = (_sqlite3VdbeMakeLabel($126)|0); - HEAP32[$destIfNull>>2] = $127; - $128 = HEAP32[$0>>2]|0; - $129 = HEAP32[$1>>2]|0; - $130 = HEAP32[$2>>2]|0; - $131 = HEAP32[$destIfNull>>2]|0; - _sqlite3ExprCodeIN($128,$129,$130,$131); - $132 = HEAP32[$v>>2]|0; - $133 = HEAP32[$destIfNull>>2]|0; - _sqlite3VdbeResolveLabel($132,$133); - break L7; - } - break; - } - case 148: case 73: { - $81 = HEAP32[$0>>2]|0; - $82 = HEAP32[$1>>2]|0; - $83 = (($82) + 12|0); - $84 = HEAP32[$83>>2]|0; - $85 = (_sqlite3ExprCodeTemp($81,$84,$regFree1)|0); - HEAP32[$r1>>2] = $85; - $86 = HEAP32[$0>>2]|0; - $87 = HEAP32[$1>>2]|0; - $88 = (($87) + 16|0); - $89 = HEAP32[$88>>2]|0; - $90 = (_sqlite3ExprCodeTemp($86,$89,$regFree2)|0); - HEAP32[$r2>>2] = $90; - $91 = HEAP32[$1>>2]|0; - $92 = HEAP8[$91>>0]|0; - $93 = $92&255; - $94 = ($93|0)==(73); - $95 = $94 ? 78 : 79; - HEAP32[$op>>2] = $95; - $96 = HEAP32[$0>>2]|0; - $97 = HEAP32[$1>>2]|0; - $98 = (($97) + 12|0); - $99 = HEAP32[$98>>2]|0; - $100 = HEAP32[$1>>2]|0; - $101 = (($100) + 16|0); - $102 = HEAP32[$101>>2]|0; - $103 = HEAP32[$op>>2]|0; - $104 = HEAP32[$r1>>2]|0; - $105 = HEAP32[$r2>>2]|0; - $106 = HEAP32[$2>>2]|0; - (_codeCompare($96,$99,$102,$103,$104,$105,$106,128)|0); - break; - } - case 72: { - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 12|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$2>>2]|0; - $25 = HEAP32[$3>>2]|0; - _sqlite3ExprIfFalse($20,$23,$24,$25); - $26 = HEAP32[$0>>2]|0; - _sqlite3ExprCachePush($26); - $27 = HEAP32[$0>>2]|0; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 16|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$2>>2]|0; - $32 = HEAP32[$3>>2]|0; - _sqlite3ExprIfFalse($27,$30,$31,$32); - $33 = HEAP32[$0>>2]|0; - _sqlite3ExprCachePop($33); - break; - } - case 74: { - $116 = HEAP32[$0>>2]|0; - $117 = HEAP32[$1>>2]|0; - $118 = HEAP32[$2>>2]|0; - $119 = HEAP32[$3>>2]|0; - _exprCodeBetween($116,$117,$118,0,$119); - break; - } - case 71: { - $34 = HEAP32[$v>>2]|0; - $35 = (_sqlite3VdbeMakeLabel($34)|0); - HEAP32[$d2>>2] = $35; - $36 = HEAP32[$0>>2]|0; - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 12|0); - $39 = HEAP32[$38>>2]|0; - $40 = HEAP32[$d2>>2]|0; - $41 = HEAP32[$3>>2]|0; - $42 = $41 ^ 8; - _sqlite3ExprIfTrue($36,$39,$40,$42); - $43 = HEAP32[$0>>2]|0; - _sqlite3ExprCachePush($43); - $44 = HEAP32[$0>>2]|0; - $45 = HEAP32[$1>>2]|0; - $46 = (($45) + 16|0); - $47 = HEAP32[$46>>2]|0; - $48 = HEAP32[$2>>2]|0; - $49 = HEAP32[$3>>2]|0; - _sqlite3ExprIfFalse($44,$47,$48,$49); - $50 = HEAP32[$v>>2]|0; - $51 = HEAP32[$d2>>2]|0; - _sqlite3VdbeResolveLabel($50,$51); - $52 = HEAP32[$0>>2]|0; - _sqlite3ExprCachePop($52); - break; - } - default: { - $134 = HEAP32[$1>>2]|0; - $135 = (_exprAlwaysFalse($134)|0); - $136 = ($135|0)!=(0); - if ($136) { - $137 = HEAP32[$v>>2]|0; - $138 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp2($137,16,0,$138)|0); - break L7; - } - $139 = HEAP32[$1>>2]|0; - $140 = (_exprAlwaysTrue($139)|0); - $141 = ($140|0)!=(0); - if (!($141)) { - $142 = HEAP32[$0>>2]|0; - $143 = HEAP32[$1>>2]|0; - $144 = (_sqlite3ExprCodeTemp($142,$143,$regFree1)|0); - HEAP32[$r1>>2] = $144; - $145 = HEAP32[$v>>2]|0; - $146 = HEAP32[$r1>>2]|0; - $147 = HEAP32[$2>>2]|0; - $148 = HEAP32[$3>>2]|0; - $149 = ($148|0)!=(0); - $150 = $149&1; - (_sqlite3VdbeAddOp3($145,45,$146,$147,$150)|0); - } - } - } - } while(0); - $151 = HEAP32[$0>>2]|0; - $152 = HEAP32[$regFree1>>2]|0; - _sqlite3ReleaseTempReg($151,$152); - $153 = HEAP32[$0>>2]|0; - $154 = HEAP32[$regFree2>>2]|0; - _sqlite3ReleaseTempReg($153,$154); - STACKTOP = sp;return; -} -function _sqlite3GetTempRange($pParse,$nReg) { - $pParse = $pParse|0; - $nReg = $nReg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $n = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $i = sp + 4|0; - $n = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $nReg; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 60|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$i>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 56|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$n>>2] = $7; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$n>>2]|0; - $10 = ($8|0)<=($9|0); - if ($10) { - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 60|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + ($11))|0; - HEAP32[$13>>2] = $15; - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 56|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($19) - ($16))|0; - HEAP32[$18>>2] = $20; - $30 = HEAP32[$i>>2]|0; - STACKTOP = sp;return ($30|0); - } else { - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 72|0); - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + 1)|0; - HEAP32[$i>>2] = $24; - $25 = HEAP32[$1>>2]|0; - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 72|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + ($25))|0; - HEAP32[$27>>2] = $29; - $30 = HEAP32[$i>>2]|0; - STACKTOP = sp;return ($30|0); - } - return 0|0; -} -function _sqlite3ExprCodeGetColumnOfTable($v,$pTab,$iTabCur,$iCol,$regOut) { - $v = $v|0; - $pTab = $pTab|0; - $iTabCur = $iTabCur|0; - $iCol = $iCol|0; - $regOut = $regOut|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $op = 0, $x = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $op = sp + 4|0; - $x = sp; - HEAP32[$0>>2] = $v; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $iTabCur; - HEAP32[$3>>2] = $iCol; - HEAP32[$4>>2] = $regOut; - $5 = HEAP32[$3>>2]|0; - $6 = ($5|0)<(0); - if ($6) { - label = 3; - } else { - $7 = HEAP32[$3>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 36|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10 << 16 >> 16; - $12 = ($7|0)==($11|0); - if ($12) { - label = 3; - } else { - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 44|0); - $18 = HEAP8[$17>>0]|0; - $19 = $18&255; - $20 = $19 & 16; - $21 = ($20|0)!=(0); - $22 = $21 ? 150 : 46; - HEAP32[$op>>2] = $22; - $23 = HEAP32[$3>>2]|0; - HEAP32[$x>>2] = $23; - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 44|0); - $26 = HEAP8[$25>>0]|0; - $27 = $26&255; - $28 = $27 & 32; - $29 = ($28|0)==(0); - if (!($29)) { - $30 = HEAP32[$1>>2]|0; - $31 = (_sqlite3PrimaryKeyIndex($30)|0); - $32 = HEAP32[$3>>2]|0; - $33 = $32&65535; - $34 = (_sqlite3ColumnOfIndex($31,$33)|0); - $35 = $34 << 16 >> 16; - HEAP32[$x>>2] = $35; - } - $36 = HEAP32[$0>>2]|0; - $37 = HEAP32[$op>>2]|0; - $38 = HEAP32[$2>>2]|0; - $39 = HEAP32[$x>>2]|0; - $40 = HEAP32[$4>>2]|0; - (_sqlite3VdbeAddOp3($36,$37,$38,$39,$40)|0); - } - } - if ((label|0) == 3) { - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$4>>2]|0; - (_sqlite3VdbeAddOp2($13,100,$14,$15)|0); - } - $41 = HEAP32[$3>>2]|0; - $42 = ($41|0)>=(0); - if (!($42)) { - STACKTOP = sp;return; - } - $43 = HEAP32[$0>>2]|0; - $44 = HEAP32[$1>>2]|0; - $45 = HEAP32[$3>>2]|0; - $46 = HEAP32[$4>>2]|0; - _sqlite3ColumnDefault($43,$44,$45,$46); - STACKTOP = sp;return; -} -function _sqlite3VdbeDeletePriorOpcode($p,$op) { - $p = $p|0; - $op = $op|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - $2 = sp + 8|0; - HEAP32[$1>>2] = $p; - HEAP8[$2>>0] = $op; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 32|0); - $5 = HEAP32[$4>>2]|0; - $6 = (($5) - 1)|0; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 24|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + 88|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($6|0)>($11|0); - if ($12) { - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 32|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) - 1)|0; - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($19) + (($16*20)|0)|0); - $21 = HEAP8[$20>>0]|0; - $22 = $21&255; - $23 = HEAP8[$2>>0]|0; - $24 = $23&255; - $25 = ($22|0)==($24|0); - if ($25) { - $26 = HEAP32[$1>>2]|0; - $27 = HEAP32[$1>>2]|0; - $28 = (($27) + 32|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) - 1)|0; - _sqlite3VdbeChangeToNoop($26,$30); - HEAP32[$0>>2] = 1; - $31 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($31|0); - } - } - HEAP32[$0>>2] = 0; - $31 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($31|0); -} -function _sqlite3ReleaseTempRange($pParse,$iReg,$nReg) { - $pParse = $pParse|0; - $iReg = $iReg|0; - $nReg = $nReg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iReg; - HEAP32[$2>>2] = $nReg; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - _sqlite3ExprCacheRemove($3,$4,$5); - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 56|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($6|0)>($9|0); - if (!($10)) { - STACKTOP = sp;return; - } - $11 = HEAP32[$2>>2]|0; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 56|0); - HEAP32[$13>>2] = $11; - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 60|0); - HEAP32[$16>>2] = $14; - STACKTOP = sp;return; -} -function _sqlite3ExprCacheRemove($pParse,$iReg,$nReg) { - $pParse = $pParse|0; - $iReg = $iReg|0; - $nReg = $nReg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $iLast = 0, $p = 0, $r = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $i = sp + 12|0; - $iLast = sp + 8|0; - $p = sp + 4|0; - $r = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iReg; - HEAP32[$2>>2] = $nReg; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$2>>2]|0; - $5 = (($3) + ($4))|0; - $6 = (($5) - 1)|0; - HEAP32[$iLast>>2] = $6; - HEAP32[$i>>2] = 0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 116|0); - HEAP32[$p>>2] = $8; - while(1) { - $9 = HEAP32[$i>>2]|0; - $10 = ($9|0)<(10); - if (!($10)) { - break; - } - $11 = HEAP32[$p>>2]|0; - $12 = (($11) + 12|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$r>>2] = $13; - $14 = HEAP32[$r>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = ($14|0)>=($15|0); - if ($16) { - $17 = HEAP32[$r>>2]|0; - $18 = HEAP32[$iLast>>2]|0; - $19 = ($17|0)<=($18|0); - if ($19) { - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$p>>2]|0; - _cacheEntryClear($20,$21); - $22 = HEAP32[$p>>2]|0; - $23 = (($22) + 12|0); - HEAP32[$23>>2] = 0; - } - } - $24 = HEAP32[$i>>2]|0; - $25 = (($24) + 1)|0; - HEAP32[$i>>2] = $25; - $26 = HEAP32[$p>>2]|0; - $27 = (($26) + 20|0); - HEAP32[$p>>2] = $27; - } - STACKTOP = sp;return; -} -function _sqlite3ColumnOfIndex($pIdx,$iCol) { - $pIdx = $pIdx|0; - $iCol = $iCol|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 10|0; - $1 = sp + 4|0; - $2 = sp + 8|0; - $i = sp; - HEAP32[$1>>2] = $pIdx; - HEAP16[$2>>1] = $iCol; - HEAP32[$i>>2] = 0; - while(1) { - $3 = HEAP32[$i>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 52|0); - $6 = HEAP16[$5>>1]|0; - $7 = $6&65535; - $8 = ($3|0)<($7|0); - if (!($8)) { - label = 6; - break; - } - $9 = HEAP16[$2>>1]|0; - $10 = $9 << 16 >> 16; - $11 = HEAP32[$i>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + ($11<<1)|0); - $16 = HEAP16[$15>>1]|0; - $17 = $16 << 16 >> 16; - $18 = ($10|0)==($17|0); - $19 = HEAP32[$i>>2]|0; - if ($18) { - label = 4; - break; - } - $21 = (($19) + 1)|0; - HEAP32[$i>>2] = $21; - } - if ((label|0) == 4) { - $20 = $19&65535; - HEAP16[$0>>1] = $20; - $22 = HEAP16[$0>>1]|0; - STACKTOP = sp;return ($22|0); - } - else if ((label|0) == 6) { - HEAP16[$0>>1] = -1; - $22 = HEAP16[$0>>1]|0; - STACKTOP = sp;return ($22|0); - } - return 0|0; -} -function _sqlite3ColumnDefault($v,$pTab,$i,$iReg) { - $v = $v|0; - $pTab = $pTab|0; - $i = $i|0; - $iReg = $iReg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $enc = 0, $pCol = 0, $pValue = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $pValue = sp + 4|0; - $enc = sp + 24|0; - $pCol = sp; - HEAP32[$0>>2] = $v; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $i; - HEAP32[$3>>2] = $iReg; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 12|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0|0); - if ($7) { - STACKTOP = sp;return; - } - HEAP32[$pValue>>2] = 0; - $8 = HEAP32[$0>>2]|0; - $9 = (_sqlite3VdbeDb($8)|0); - $10 = (($9) + 16|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + 12|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + 77|0); - $15 = HEAP8[$14>>0]|0; - HEAP8[$enc>>0] = $15; - $16 = HEAP32[$2>>2]|0; - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($19) + (($16*24)|0)|0); - HEAP32[$pCol>>2] = $20; - $21 = HEAP32[$0>>2]|0; - $22 = (_sqlite3VdbeDb($21)|0); - $23 = HEAP32[$pCol>>2]|0; - $24 = (($23) + 4|0); - $25 = HEAP32[$24>>2]|0; - $26 = HEAP8[$enc>>0]|0; - $27 = HEAP32[$pCol>>2]|0; - $28 = (($27) + 21|0); - $29 = HEAP8[$28>>0]|0; - (_sqlite3ValueFromExpr($22,$25,$26,$29,$pValue)|0); - $30 = HEAP32[$pValue>>2]|0; - $31 = ($30|0)!=(0|0); - if ($31) { - $32 = HEAP32[$0>>2]|0; - $33 = HEAP32[$pValue>>2]|0; - _sqlite3VdbeChangeP4($32,-1,$33,-8); - } - $34 = HEAP32[$2>>2]|0; - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 4|0); - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + (($34*24)|0)|0); - $39 = (($38) + 21|0); - $40 = HEAP8[$39>>0]|0; - $41 = $40 << 24 >> 24; - $42 = ($41|0)==(101); - if (!($42)) { - STACKTOP = sp;return; - } - $43 = HEAP32[$0>>2]|0; - $44 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp1($43,39,$44)|0); - STACKTOP = sp;return; -} -function _sqlite3VdbeDb($v) { - $v = $v|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $v; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - STACKTOP = sp;return ($2|0); -} -function _sqlite3ExprIfTrue($pParse,$pExpr,$dest,$jumpIfNull) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - $dest = $dest|0; - $jumpIfNull = $jumpIfNull|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; - var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; - var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; - var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; - var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; - var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $d2 = 0, $destIfFalse = 0, $destIfNull = 0, $op = 0, $r1 = 0, $r2 = 0, $regFree1 = 0, $regFree2 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 48|0; - $1 = sp + 44|0; - $2 = sp + 40|0; - $3 = sp + 36|0; - $v = sp + 32|0; - $op = sp + 28|0; - $regFree1 = sp + 24|0; - $regFree2 = sp + 20|0; - $r1 = sp + 16|0; - $r2 = sp + 12|0; - $d2 = sp + 8|0; - $destIfFalse = sp + 4|0; - $destIfNull = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pExpr; - HEAP32[$2>>2] = $dest; - HEAP32[$3>>2] = $jumpIfNull; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 8|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$v>>2] = $6; - HEAP32[$op>>2] = 0; - HEAP32[$regFree1>>2] = 0; - HEAP32[$regFree2>>2] = 0; - $7 = HEAP32[$v>>2]|0; - $8 = ($7|0)==(0|0); - if ($8) { - STACKTOP = sp;return; - } - $9 = HEAP32[$1>>2]|0; - $10 = ($9|0)==(0|0); - if ($10) { - STACKTOP = sp;return; - } - $11 = HEAP32[$1>>2]|0; - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - HEAP32[$op>>2] = $13; - $14 = HEAP32[$op>>2]|0; - L7: do { - switch ($14|0) { - case 148: case 73: { - $76 = HEAP32[$0>>2]|0; - $77 = HEAP32[$1>>2]|0; - $78 = (($77) + 12|0); - $79 = HEAP32[$78>>2]|0; - $80 = (_sqlite3ExprCodeTemp($76,$79,$regFree1)|0); - HEAP32[$r1>>2] = $80; - $81 = HEAP32[$0>>2]|0; - $82 = HEAP32[$1>>2]|0; - $83 = (($82) + 16|0); - $84 = HEAP32[$83>>2]|0; - $85 = (_sqlite3ExprCodeTemp($81,$84,$regFree2)|0); - HEAP32[$r2>>2] = $85; - $86 = HEAP32[$op>>2]|0; - $87 = ($86|0)==(73); - $88 = $87 ? 79 : 78; - HEAP32[$op>>2] = $88; - $89 = HEAP32[$0>>2]|0; - $90 = HEAP32[$1>>2]|0; - $91 = (($90) + 12|0); - $92 = HEAP32[$91>>2]|0; - $93 = HEAP32[$1>>2]|0; - $94 = (($93) + 16|0); - $95 = HEAP32[$94>>2]|0; - $96 = HEAP32[$op>>2]|0; - $97 = HEAP32[$r1>>2]|0; - $98 = HEAP32[$r2>>2]|0; - $99 = HEAP32[$2>>2]|0; - (_codeCompare($89,$92,$95,$96,$97,$98,$99,128)|0); - break; - } - case 74: { - $109 = HEAP32[$0>>2]|0; - $110 = HEAP32[$1>>2]|0; - $111 = HEAP32[$2>>2]|0; - $112 = HEAP32[$3>>2]|0; - _exprCodeBetween($109,$110,$111,1,$112); - break; - } - case 72: { - $15 = HEAP32[$v>>2]|0; - $16 = (_sqlite3VdbeMakeLabel($15)|0); - HEAP32[$d2>>2] = $16; - $17 = HEAP32[$0>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 12|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$d2>>2]|0; - $22 = HEAP32[$3>>2]|0; - $23 = $22 ^ 8; - _sqlite3ExprIfFalse($17,$20,$21,$23); - $24 = HEAP32[$0>>2]|0; - _sqlite3ExprCachePush($24); - $25 = HEAP32[$0>>2]|0; - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 16|0); - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$2>>2]|0; - $30 = HEAP32[$3>>2]|0; - _sqlite3ExprIfTrue($25,$28,$29,$30); - $31 = HEAP32[$v>>2]|0; - $32 = HEAP32[$d2>>2]|0; - _sqlite3VdbeResolveLabel($31,$32); - $33 = HEAP32[$0>>2]|0; - _sqlite3ExprCachePop($33); - break; - } - case 79: case 78: case 83: case 80: case 81: case 82: { - $54 = HEAP32[$0>>2]|0; - $55 = HEAP32[$1>>2]|0; - $56 = (($55) + 12|0); - $57 = HEAP32[$56>>2]|0; - $58 = (_sqlite3ExprCodeTemp($54,$57,$regFree1)|0); - HEAP32[$r1>>2] = $58; - $59 = HEAP32[$0>>2]|0; - $60 = HEAP32[$1>>2]|0; - $61 = (($60) + 16|0); - $62 = HEAP32[$61>>2]|0; - $63 = (_sqlite3ExprCodeTemp($59,$62,$regFree2)|0); - HEAP32[$r2>>2] = $63; - $64 = HEAP32[$0>>2]|0; - $65 = HEAP32[$1>>2]|0; - $66 = (($65) + 12|0); - $67 = HEAP32[$66>>2]|0; - $68 = HEAP32[$1>>2]|0; - $69 = (($68) + 16|0); - $70 = HEAP32[$69>>2]|0; - $71 = HEAP32[$op>>2]|0; - $72 = HEAP32[$r1>>2]|0; - $73 = HEAP32[$r2>>2]|0; - $74 = HEAP32[$2>>2]|0; - $75 = HEAP32[$3>>2]|0; - (_codeCompare($64,$67,$70,$71,$72,$73,$74,$75)|0); - break; - } - case 75: { - $113 = HEAP32[$v>>2]|0; - $114 = (_sqlite3VdbeMakeLabel($113)|0); - HEAP32[$destIfFalse>>2] = $114; - $115 = HEAP32[$3>>2]|0; - $116 = ($115|0)!=(0); - $117 = HEAP32[$2>>2]|0; - $118 = HEAP32[$destIfFalse>>2]|0; - $119 = $116 ? $117 : $118; - HEAP32[$destIfNull>>2] = $119; - $120 = HEAP32[$0>>2]|0; - $121 = HEAP32[$1>>2]|0; - $122 = HEAP32[$destIfFalse>>2]|0; - $123 = HEAP32[$destIfNull>>2]|0; - _sqlite3ExprCodeIN($120,$121,$122,$123); - $124 = HEAP32[$v>>2]|0; - $125 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp2($124,16,0,$125)|0); - $126 = HEAP32[$v>>2]|0; - $127 = HEAP32[$destIfFalse>>2]|0; - _sqlite3VdbeResolveLabel($126,$127); - break; - } - case 77: case 76: { - $100 = HEAP32[$0>>2]|0; - $101 = HEAP32[$1>>2]|0; - $102 = (($101) + 12|0); - $103 = HEAP32[$102>>2]|0; - $104 = (_sqlite3ExprCodeTemp($100,$103,$regFree1)|0); - HEAP32[$r1>>2] = $104; - $105 = HEAP32[$v>>2]|0; - $106 = HEAP32[$op>>2]|0; - $107 = HEAP32[$r1>>2]|0; - $108 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp2($105,$106,$107,$108)|0); - break; - } - case 71: { - $34 = HEAP32[$0>>2]|0; - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 12|0); - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$2>>2]|0; - $39 = HEAP32[$3>>2]|0; - _sqlite3ExprIfTrue($34,$37,$38,$39); - $40 = HEAP32[$0>>2]|0; - _sqlite3ExprCachePush($40); - $41 = HEAP32[$0>>2]|0; - $42 = HEAP32[$1>>2]|0; - $43 = (($42) + 16|0); - $44 = HEAP32[$43>>2]|0; - $45 = HEAP32[$2>>2]|0; - $46 = HEAP32[$3>>2]|0; - _sqlite3ExprIfTrue($41,$44,$45,$46); - $47 = HEAP32[$0>>2]|0; - _sqlite3ExprCachePop($47); - break; - } - case 19: { - $48 = HEAP32[$0>>2]|0; - $49 = HEAP32[$1>>2]|0; - $50 = (($49) + 12|0); - $51 = HEAP32[$50>>2]|0; - $52 = HEAP32[$2>>2]|0; - $53 = HEAP32[$3>>2]|0; - _sqlite3ExprIfFalse($48,$51,$52,$53); - break; - } - default: { - $128 = HEAP32[$1>>2]|0; - $129 = (_exprAlwaysTrue($128)|0); - $130 = ($129|0)!=(0); - if ($130) { - $131 = HEAP32[$v>>2]|0; - $132 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp2($131,16,0,$132)|0); - break L7; - } - $133 = HEAP32[$1>>2]|0; - $134 = (_exprAlwaysFalse($133)|0); - $135 = ($134|0)!=(0); - if (!($135)) { - $136 = HEAP32[$0>>2]|0; - $137 = HEAP32[$1>>2]|0; - $138 = (_sqlite3ExprCodeTemp($136,$137,$regFree1)|0); - HEAP32[$r1>>2] = $138; - $139 = HEAP32[$v>>2]|0; - $140 = HEAP32[$r1>>2]|0; - $141 = HEAP32[$2>>2]|0; - $142 = HEAP32[$3>>2]|0; - $143 = ($142|0)!=(0); - $144 = $143&1; - (_sqlite3VdbeAddOp3($139,44,$140,$141,$144)|0); - } - } - } - } while(0); - $145 = HEAP32[$0>>2]|0; - $146 = HEAP32[$regFree1>>2]|0; - _sqlite3ReleaseTempReg($145,$146); - $147 = HEAP32[$0>>2]|0; - $148 = HEAP32[$regFree2>>2]|0; - _sqlite3ReleaseTempReg($147,$148); - STACKTOP = sp;return; -} -function _sqlite3ExprCodeTemp($pParse,$pExpr,$pReg) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - $pReg = $pReg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, $pItem = 0, $r1 = 0, $r2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $r2 = sp + 16|0; - $p = sp + 12|0; - $i = sp + 8|0; - $pItem = sp + 4|0; - $r1 = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pExpr; - HEAP32[$3>>2] = $pReg; - $4 = HEAP32[$2>>2]|0; - $5 = (_sqlite3ExprSkipCollate($4)|0); - HEAP32[$2>>2] = $5; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 23|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - $10 = ($9|0)!=(0); - if ($10) { - $11 = HEAP32[$2>>2]|0; - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = ($13|0)!=(159); - if ($14) { - $15 = HEAP32[$2>>2]|0; - $16 = (_sqlite3ExprIsConstantNotJoin($15)|0); - $17 = ($16|0)!=(0); - if ($17) { - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 316|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$p>>2] = $20; - $21 = HEAP32[$3>>2]|0; - HEAP32[$21>>2] = 0; - $22 = HEAP32[$p>>2]|0; - $23 = ($22|0)!=(0|0); - L5: do { - if ($23) { - $24 = HEAP32[$p>>2]|0; - $25 = (($24) + 4|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$pItem>>2] = $26; - $27 = HEAP32[$p>>2]|0; - $28 = HEAP32[$27>>2]|0; - HEAP32[$i>>2] = $28; - while(1) { - $29 = HEAP32[$i>>2]|0; - $30 = ($29|0)>(0); - if (!($30)) { - break L5; - } - $31 = HEAP32[$pItem>>2]|0; - $32 = (($31) + 13|0); - $33 = HEAP8[$32>>0]|0; - $34 = ($33&255) >>> 2; - $35 = $34 & 1; - $36 = $35&255; - $37 = ($36|0)!=(0); - if ($37) { - $38 = HEAP32[$pItem>>2]|0; - $39 = HEAP32[$38>>2]|0; - $40 = HEAP32[$2>>2]|0; - $41 = (_sqlite3ExprCompare($39,$40,-1)|0); - $42 = ($41|0)==(0); - if ($42) { - break; - } - } - $46 = HEAP32[$pItem>>2]|0; - $47 = (($46) + 20|0); - HEAP32[$pItem>>2] = $47; - $48 = HEAP32[$i>>2]|0; - $49 = (($48) + -1)|0; - HEAP32[$i>>2] = $49; - } - $43 = HEAP32[$pItem>>2]|0; - $44 = (($43) + 16|0); - $45 = HEAP32[$44>>2]|0; - HEAP32[$0>>2] = $45; - $72 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($72|0); - } - } while(0); - $50 = HEAP32[$1>>2]|0; - $51 = (($50) + 72|0); - $52 = HEAP32[$51>>2]|0; - $53 = (($52) + 1)|0; - HEAP32[$51>>2] = $53; - HEAP32[$r2>>2] = $53; - $54 = HEAP32[$1>>2]|0; - $55 = HEAP32[$2>>2]|0; - $56 = HEAP32[$r2>>2]|0; - _sqlite3ExprCodeAtInit($54,$55,$56,1); - } else { - label = 12; - } - } else { - label = 12; - } - } else { - label = 12; - } - do { - if ((label|0) == 12) { - $57 = HEAP32[$1>>2]|0; - $58 = (_sqlite3GetTempReg($57)|0); - HEAP32[$r1>>2] = $58; - $59 = HEAP32[$1>>2]|0; - $60 = HEAP32[$2>>2]|0; - $61 = HEAP32[$r1>>2]|0; - $62 = (_sqlite3ExprCodeTarget($59,$60,$61)|0); - HEAP32[$r2>>2] = $62; - $63 = HEAP32[$r2>>2]|0; - $64 = HEAP32[$r1>>2]|0; - $65 = ($63|0)==($64|0); - if ($65) { - $66 = HEAP32[$r1>>2]|0; - $67 = HEAP32[$3>>2]|0; - HEAP32[$67>>2] = $66; - break; - } else { - $68 = HEAP32[$1>>2]|0; - $69 = HEAP32[$r1>>2]|0; - _sqlite3ReleaseTempReg($68,$69); - $70 = HEAP32[$3>>2]|0; - HEAP32[$70>>2] = 0; - break; - } - } - } while(0); - $71 = HEAP32[$r2>>2]|0; - HEAP32[$0>>2] = $71; - $72 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($72|0); -} -function _codeCompare($pParse,$pLeft,$pRight,$opcode,$in1,$in2,$dest,$jumpIfNull) { - $pParse = $pParse|0; - $pLeft = $pLeft|0; - $pRight = $pRight|0; - $opcode = $opcode|0; - $in1 = $in1|0; - $in2 = $in2|0; - $dest = $dest|0; - $jumpIfNull = $jumpIfNull|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $addr = 0, $p4 = 0, $p5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $4 = sp + 24|0; - $5 = sp + 20|0; - $6 = sp + 16|0; - $7 = sp + 12|0; - $p5 = sp + 8|0; - $addr = sp + 4|0; - $p4 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pLeft; - HEAP32[$2>>2] = $pRight; - HEAP32[$3>>2] = $opcode; - HEAP32[$4>>2] = $in1; - HEAP32[$5>>2] = $in2; - HEAP32[$6>>2] = $dest; - HEAP32[$7>>2] = $jumpIfNull; - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$2>>2]|0; - $11 = (_sqlite3BinaryCompareCollSeq($8,$9,$10)|0); - HEAP32[$p4>>2] = $11; - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = HEAP32[$7>>2]|0; - $15 = (_binaryCompareP5($12,$13,$14)|0); - $16 = $15&255; - HEAP32[$p5>>2] = $16; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 8|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$3>>2]|0; - $21 = HEAP32[$5>>2]|0; - $22 = HEAP32[$6>>2]|0; - $23 = HEAP32[$4>>2]|0; - $24 = HEAP32[$p4>>2]|0; - $25 = (_sqlite3VdbeAddOp4($19,$20,$21,$22,$23,$24,-4)|0); - HEAP32[$addr>>2] = $25; - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 8|0); - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$p5>>2]|0; - $30 = $29&255; - _sqlite3VdbeChangeP5($28,$30); - $31 = HEAP32[$addr>>2]|0; - STACKTOP = sp;return ($31|0); -} -function _exprCodeBetween($pParse,$pExpr,$dest,$jumpIfTrue,$jumpIfNull) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - $dest = $dest|0; - $jumpIfTrue = $jumpIfTrue|0; - $jumpIfNull = $jumpIfNull|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $compLeft = 0, $compRight = 0, $exprAnd = 0, $exprX = 0; - var $regFree1 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 224|0; - $0 = sp + 216|0; - $1 = sp + 212|0; - $2 = sp + 208|0; - $3 = sp + 204|0; - $4 = sp + 200|0; - $exprAnd = sp + 152|0; - $compLeft = sp + 104|0; - $compRight = sp + 56|0; - $exprX = sp + 8|0; - $regFree1 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pExpr; - HEAP32[$2>>2] = $dest; - HEAP32[$3>>2] = $jumpIfTrue; - HEAP32[$4>>2] = $jumpIfNull; - HEAP32[$regFree1>>2] = 0; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 12|0); - $7 = HEAP32[$6>>2]|0; - dest=$exprX+0|0; src=$7+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - HEAP8[$exprAnd>>0] = 72; - $8 = (($exprAnd) + 12|0); - HEAP32[$8>>2] = $compLeft; - $9 = (($exprAnd) + 16|0); - HEAP32[$9>>2] = $compRight; - HEAP8[$compLeft>>0] = 83; - $10 = (($compLeft) + 12|0); - HEAP32[$10>>2] = $exprX; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 20|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = (($compLeft) + 16|0); - HEAP32[$17>>2] = $16; - HEAP8[$compRight>>0] = 81; - $18 = (($compRight) + 12|0); - HEAP32[$18>>2] = $exprX; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 20|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + 4|0); - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + 20|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($compRight) + 16|0); - HEAP32[$26>>2] = $25; - $27 = HEAP32[$0>>2]|0; - $28 = (_sqlite3ExprCodeTemp($27,$exprX,$regFree1)|0); - _exprToRegister($exprX,$28); - $29 = HEAP32[$3>>2]|0; - $30 = ($29|0)!=(0); - $31 = HEAP32[$0>>2]|0; - $32 = HEAP32[$2>>2]|0; - $33 = HEAP32[$4>>2]|0; - if ($30) { - _sqlite3ExprIfTrue($31,$exprAnd,$32,$33); - $34 = HEAP32[$0>>2]|0; - $35 = HEAP32[$regFree1>>2]|0; - _sqlite3ReleaseTempReg($34,$35); - STACKTOP = sp;return; - } else { - _sqlite3ExprIfFalse($31,$exprAnd,$32,$33); - $34 = HEAP32[$0>>2]|0; - $35 = HEAP32[$regFree1>>2]|0; - _sqlite3ReleaseTempReg($34,$35); - STACKTOP = sp;return; - } -} -function _sqlite3ExprCodeIN($pParse,$pExpr,$destIfFalse,$destIfNull) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - $destIfFalse = $destIfFalse|0; - $destIfNull = $destIfNull|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $addr1 = 0, $affinity = 0, $eType = 0, $j1 = 0, $j2 = 0, $r1 = 0, $rRhsHasNull = 0, $v = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $rRhsHasNull = sp + 24|0; - $affinity = sp + 44|0; - $eType = sp + 20|0; - $r1 = sp + 16|0; - $v = sp + 12|0; - $addr1 = sp + 8|0; - $j1 = sp + 4|0; - $j2 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pExpr; - HEAP32[$2>>2] = $destIfFalse; - HEAP32[$3>>2] = $destIfNull; - HEAP32[$rRhsHasNull>>2] = 0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 8|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$v>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = (_sqlite3FindInIndex($7,$8,$rRhsHasNull)|0); - HEAP32[$eType>>2] = $9; - $10 = HEAP32[$1>>2]|0; - $11 = (_comparisonAffinity($10)|0); - HEAP8[$affinity>>0] = $11; - $12 = HEAP32[$0>>2]|0; - _sqlite3ExprCachePush($12); - $13 = HEAP32[$0>>2]|0; - $14 = (_sqlite3GetTempReg($13)|0); - HEAP32[$r1>>2] = $14; - $15 = HEAP32[$0>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 12|0); - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$r1>>2]|0; - _sqlite3ExprCode($15,$18,$19); - $20 = HEAP32[$3>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = ($20|0)==($21|0); - $23 = HEAP32[$v>>2]|0; - $24 = HEAP32[$r1>>2]|0; - if ($22) { - $25 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($23,76,$24,$25)|0); - } else { - $26 = (_sqlite3VdbeAddOp1($23,77,$24)|0); - HEAP32[$addr1>>2] = $26; - $27 = HEAP32[$v>>2]|0; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 28|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp2($27,105,$30,$31)|0); - $32 = HEAP32[$v>>2]|0; - $33 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($32,16,0,$33)|0); - $34 = HEAP32[$v>>2]|0; - $35 = HEAP32[$addr1>>2]|0; - _sqlite3VdbeJumpHere($34,$35); - } - $36 = HEAP32[$eType>>2]|0; - $37 = ($36|0)==(1); - $38 = HEAP32[$v>>2]|0; - $39 = HEAP32[$r1>>2]|0; - if ($37) { - $40 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp2($38,38,$39,$40)|0); - $41 = HEAP32[$v>>2]|0; - $42 = HEAP32[$1>>2]|0; - $43 = (($42) + 28|0); - $44 = HEAP32[$43>>2]|0; - $45 = HEAP32[$2>>2]|0; - $46 = HEAP32[$r1>>2]|0; - (_sqlite3VdbeAddOp3($41,67,$44,$45,$46)|0); - $88 = HEAP32[$0>>2]|0; - $89 = HEAP32[$r1>>2]|0; - _sqlite3ReleaseTempReg($88,$89); - $90 = HEAP32[$0>>2]|0; - _sqlite3ExprCachePop($90); - STACKTOP = sp;return; - } - (_sqlite3VdbeAddOp4($38,47,$39,1,0,$affinity,1)|0); - $47 = HEAP32[$rRhsHasNull>>2]|0; - $48 = ($47|0)==(0); - if (!($48)) { - $49 = HEAP32[$2>>2]|0; - $50 = HEAP32[$3>>2]|0; - $51 = ($49|0)==($50|0); - if (!($51)) { - $58 = HEAP32[$v>>2]|0; - $59 = HEAP32[$1>>2]|0; - $60 = (($59) + 28|0); - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$r1>>2]|0; - $63 = (_sqlite3VdbeAddOp4Int($58,66,$61,0,$62,1)|0); - HEAP32[$j1>>2] = $63; - $64 = HEAP32[$v>>2]|0; - $65 = HEAP32[$rRhsHasNull>>2]|0; - $66 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($64,44,$65,$66)|0); - $67 = HEAP32[$v>>2]|0; - $68 = HEAP32[$rRhsHasNull>>2]|0; - $69 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp2($67,45,$68,$69)|0); - $70 = HEAP32[$v>>2]|0; - $71 = HEAP32[$1>>2]|0; - $72 = (($71) + 28|0); - $73 = HEAP32[$72>>2]|0; - $74 = HEAP32[$rRhsHasNull>>2]|0; - $75 = (_sqlite3VdbeAddOp4Int($70,66,$73,0,$74,1)|0); - HEAP32[$j2>>2] = $75; - $76 = HEAP32[$v>>2]|0; - $77 = HEAP32[$rRhsHasNull>>2]|0; - (_sqlite3VdbeAddOp2($76,25,0,$77)|0); - $78 = HEAP32[$v>>2]|0; - $79 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp2($78,16,0,$79)|0); - $80 = HEAP32[$v>>2]|0; - $81 = HEAP32[$j2>>2]|0; - _sqlite3VdbeJumpHere($80,$81); - $82 = HEAP32[$v>>2]|0; - $83 = HEAP32[$rRhsHasNull>>2]|0; - (_sqlite3VdbeAddOp2($82,25,1,$83)|0); - $84 = HEAP32[$v>>2]|0; - $85 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($84,16,0,$85)|0); - $86 = HEAP32[$v>>2]|0; - $87 = HEAP32[$j1>>2]|0; - _sqlite3VdbeJumpHere($86,$87); - $88 = HEAP32[$0>>2]|0; - $89 = HEAP32[$r1>>2]|0; - _sqlite3ReleaseTempReg($88,$89); - $90 = HEAP32[$0>>2]|0; - _sqlite3ExprCachePop($90); - STACKTOP = sp;return; - } - } - $52 = HEAP32[$v>>2]|0; - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + 28|0); - $55 = HEAP32[$54>>2]|0; - $56 = HEAP32[$2>>2]|0; - $57 = HEAP32[$r1>>2]|0; - (_sqlite3VdbeAddOp4Int($52,65,$55,$56,$57,1)|0); - $88 = HEAP32[$0>>2]|0; - $89 = HEAP32[$r1>>2]|0; - _sqlite3ReleaseTempReg($88,$89); - $90 = HEAP32[$0>>2]|0; - _sqlite3ExprCachePop($90); - STACKTOP = sp;return; -} -function _exprAlwaysTrue($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $v = sp; - HEAP32[$1>>2] = $p; - HEAP32[$v>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - $5 = $4 & 1; - $6 = ($5|0)!=(0); - do { - if ($6) { - HEAP32[$0>>2] = 0; - } else { - $7 = HEAP32[$1>>2]|0; - $8 = (_sqlite3ExprIsInteger($7,$v)|0); - $9 = ($8|0)!=(0); - if ($9) { - $10 = HEAP32[$v>>2]|0; - $11 = ($10|0)!=(0); - $12 = $11&1; - HEAP32[$0>>2] = $12; - break; - } else { - HEAP32[$0>>2] = 0; - break; - } - } - } while(0); - $13 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($13|0); -} -function _sqlite3FindInIndex($pParse,$pX,$prNotFound) { - $pParse = $pParse|0; - $pX = $pX|0; - $prNotFound = $prNotFound|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; - var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; - var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; - var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; - var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $affinity_ok = 0, $db = 0, $eType = 0, $iAddr = 0, $iAddr1 = 0, $iCol = 0; - var $iDb = 0, $iTab = 0, $mustBeUnique = 0, $p = 0, $pExpr = 0, $pIdx = 0, $pReq = 0, $pTab = 0, $rMayHaveNull = 0, $savedNQueryLoop = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 68|0; - $1 = sp + 64|0; - $2 = sp + 60|0; - $p = sp + 56|0; - $eType = sp + 52|0; - $iTab = sp + 48|0; - $mustBeUnique = sp + 44|0; - $v = sp + 40|0; - $db = sp + 36|0; - $pTab = sp + 32|0; - $pExpr = sp + 28|0; - $iCol = sp + 74|0; - $iDb = sp + 72|0; - $iAddr = sp + 24|0; - $pIdx = sp + 20|0; - $pReq = sp + 16|0; - $affinity_ok = sp + 12|0; - $iAddr1 = sp + 8|0; - $savedNQueryLoop = sp + 4|0; - $rMayHaveNull = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pX; - HEAP32[$2>>2] = $prNotFound; - HEAP32[$eType>>2] = 0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 68|0); - $5 = HEAP32[$4>>2]|0; - $6 = (($5) + 1)|0; - HEAP32[$4>>2] = $6; - HEAP32[$iTab>>2] = $5; - $7 = HEAP32[$2>>2]|0; - $8 = ($7|0)==(0|0); - $9 = $8&1; - HEAP32[$mustBeUnique>>2] = $9; - $10 = HEAP32[$0>>2]|0; - $11 = (_sqlite3GetVdbe($10)|0); - HEAP32[$v>>2] = $11; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - $15 = $14 & 2048; - $16 = ($15|0)!=(0); - if ($16) { - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 20|0); - $19 = HEAP32[$18>>2]|0; - $20 = $19; - } else { - $20 = 0; - } - HEAP32[$p>>2] = $20; - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 64|0); - $23 = HEAP32[$22>>2]|0; - $24 = ($23|0)==(0); - L4: do { - if ($24) { - $25 = HEAP32[$p>>2]|0; - $26 = (_isCandidateForInOpt($25)|0); - $27 = ($26|0)!=(0); - if ($27) { - $28 = HEAP32[$0>>2]|0; - $29 = HEAP32[$28>>2]|0; - HEAP32[$db>>2] = $29; - $30 = HEAP32[$p>>2]|0; - $31 = (($30) + 32|0); - $32 = HEAP32[$31>>2]|0; - $33 = (($32) + 8|0); - $34 = (($33) + 16|0); - $35 = HEAP32[$34>>2]|0; - HEAP32[$pTab>>2] = $35; - $36 = HEAP32[$p>>2]|0; - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + 4|0); - $39 = HEAP32[$38>>2]|0; - $40 = HEAP32[$39>>2]|0; - HEAP32[$pExpr>>2] = $40; - $41 = HEAP32[$pExpr>>2]|0; - $42 = (($41) + 32|0); - $43 = HEAP16[$42>>1]|0; - HEAP16[$iCol>>1] = $43; - $44 = HEAP32[$db>>2]|0; - $45 = HEAP32[$pTab>>2]|0; - $46 = (($45) + 68|0); - $47 = HEAP32[$46>>2]|0; - $48 = (_sqlite3SchemaToIndex($44,$47)|0); - $49 = $48&65535; - HEAP16[$iDb>>1] = $49; - $50 = HEAP32[$0>>2]|0; - $51 = HEAP16[$iDb>>1]|0; - $52 = $51 << 16 >> 16; - _sqlite3CodeVerifySchema($50,$52); - $53 = HEAP32[$0>>2]|0; - $54 = HEAP16[$iDb>>1]|0; - $55 = $54 << 16 >> 16; - $56 = HEAP32[$pTab>>2]|0; - $57 = (($56) + 32|0); - $58 = HEAP32[$57>>2]|0; - $59 = HEAP32[$pTab>>2]|0; - $60 = HEAP32[$59>>2]|0; - _sqlite3TableLock($53,$55,$58,0,$60); - $61 = HEAP16[$iCol>>1]|0; - $62 = $61 << 16 >> 16; - $63 = ($62|0)<(0); - $64 = HEAP32[$0>>2]|0; - if ($63) { - $65 = (_sqlite3CodeOnce($64)|0); - HEAP32[$iAddr>>2] = $65; - $66 = HEAP32[$0>>2]|0; - $67 = HEAP32[$iTab>>2]|0; - $68 = HEAP16[$iDb>>1]|0; - $69 = $68 << 16 >> 16; - $70 = HEAP32[$pTab>>2]|0; - _sqlite3OpenTable($66,$67,$69,$70,52); - HEAP32[$eType>>2] = 1; - $71 = HEAP32[$v>>2]|0; - $72 = HEAP32[$iAddr>>2]|0; - _sqlite3VdbeJumpHere($71,$72); - break; - } - $73 = HEAP32[$1>>2]|0; - $74 = (($73) + 12|0); - $75 = HEAP32[$74>>2]|0; - $76 = HEAP32[$pExpr>>2]|0; - $77 = (_sqlite3BinaryCompareCollSeq($64,$75,$76)|0); - HEAP32[$pReq>>2] = $77; - $78 = HEAP32[$1>>2]|0; - $79 = HEAP16[$iCol>>1]|0; - $80 = $79 << 16 >> 16; - $81 = HEAP32[$pTab>>2]|0; - $82 = (($81) + 4|0); - $83 = HEAP32[$82>>2]|0; - $84 = (($83) + (($80*24)|0)|0); - $85 = (($84) + 21|0); - $86 = HEAP8[$85>>0]|0; - $87 = (_sqlite3IndexAffinityOk($78,$86)|0); - HEAP32[$affinity_ok>>2] = $87; - $88 = HEAP32[$pTab>>2]|0; - $89 = (($88) + 8|0); - $90 = HEAP32[$89>>2]|0; - HEAP32[$pIdx>>2] = $90; - while(1) { - $91 = HEAP32[$pIdx>>2]|0; - $92 = ($91|0)!=(0|0); - if (!($92)) { - break L4; - } - $93 = HEAP32[$eType>>2]|0; - $94 = ($93|0)==(0); - if (!($94)) { - break L4; - } - $95 = HEAP32[$affinity_ok>>2]|0; - $96 = ($95|0)!=(0); - if (!($96)) { - break L4; - } - $97 = HEAP32[$pIdx>>2]|0; - $98 = (($97) + 4|0); - $99 = HEAP32[$98>>2]|0; - $100 = HEAP16[$99>>1]|0; - $101 = $100 << 16 >> 16; - $102 = HEAP16[$iCol>>1]|0; - $103 = $102 << 16 >> 16; - $104 = ($101|0)==($103|0); - do { - if ($104) { - $105 = HEAP32[$db>>2]|0; - $106 = HEAP32[$db>>2]|0; - $107 = (($106) + 16|0); - $108 = HEAP32[$107>>2]|0; - $109 = (($108) + 12|0); - $110 = HEAP32[$109>>2]|0; - $111 = (($110) + 77|0); - $112 = HEAP8[$111>>0]|0; - $113 = HEAP32[$pIdx>>2]|0; - $114 = (($113) + 32|0); - $115 = HEAP32[$114>>2]|0; - $116 = HEAP32[$115>>2]|0; - $117 = (_sqlite3FindCollSeq($105,$112,$116,0)|0); - $118 = HEAP32[$pReq>>2]|0; - $119 = ($117|0)==($118|0); - if ($119) { - $120 = HEAP32[$mustBeUnique>>2]|0; - $121 = ($120|0)!=(0); - if ($121) { - $122 = HEAP32[$pIdx>>2]|0; - $123 = (($122) + 50|0); - $124 = HEAP16[$123>>1]|0; - $125 = $124&65535; - $126 = ($125|0)==(1); - if (!($126)) { - break; - } - $127 = HEAP32[$pIdx>>2]|0; - $128 = (($127) + 54|0); - $129 = HEAP8[$128>>0]|0; - $130 = $129&255; - $131 = ($130|0)!=(0); - if (!($131)) { - break; - } - } - $132 = HEAP32[$0>>2]|0; - $133 = (_sqlite3CodeOnce($132)|0); - HEAP32[$iAddr1>>2] = $133; - $134 = HEAP32[$v>>2]|0; - $135 = HEAP32[$iTab>>2]|0; - $136 = HEAP32[$pIdx>>2]|0; - $137 = (($136) + 44|0); - $138 = HEAP32[$137>>2]|0; - $139 = HEAP16[$iDb>>1]|0; - $140 = $139 << 16 >> 16; - (_sqlite3VdbeAddOp3($134,52,$135,$138,$140)|0); - $141 = HEAP32[$0>>2]|0; - $142 = HEAP32[$pIdx>>2]|0; - _sqlite3VdbeSetP4KeyInfo($141,$142); - $143 = HEAP32[$pIdx>>2]|0; - $144 = (($143) + 28|0); - $145 = HEAP32[$144>>2]|0; - $146 = HEAP8[$145>>0]|0; - $147 = $146&255; - $148 = (3 + ($147))|0; - HEAP32[$eType>>2] = $148; - $149 = HEAP32[$2>>2]|0; - $150 = ($149|0)!=(0|0); - if ($150) { - $151 = HEAP16[$iCol>>1]|0; - $152 = $151 << 16 >> 16; - $153 = HEAP32[$pTab>>2]|0; - $154 = (($153) + 4|0); - $155 = HEAP32[$154>>2]|0; - $156 = (($155) + (($152*24)|0)|0); - $157 = (($156) + 20|0); - $158 = HEAP8[$157>>0]|0; - $159 = ($158<<24>>24)!=(0); - if (!($159)) { - $160 = HEAP32[$0>>2]|0; - $161 = (($160) + 72|0); - $162 = HEAP32[$161>>2]|0; - $163 = (($162) + 1)|0; - HEAP32[$161>>2] = $163; - $164 = HEAP32[$2>>2]|0; - HEAP32[$164>>2] = $163; - $165 = HEAP32[$v>>2]|0; - $166 = HEAP32[$2>>2]|0; - $167 = HEAP32[$166>>2]|0; - (_sqlite3VdbeAddOp2($165,28,0,$167)|0); - } - } - $168 = HEAP32[$v>>2]|0; - $169 = HEAP32[$iAddr1>>2]|0; - _sqlite3VdbeJumpHere($168,$169); - } - } - } while(0); - $170 = HEAP32[$pIdx>>2]|0; - $171 = (($170) + 20|0); - $172 = HEAP32[$171>>2]|0; - HEAP32[$pIdx>>2] = $172; - } - } - } - } while(0); - $173 = HEAP32[$eType>>2]|0; - $174 = ($173|0)==(0); - if (!($174)) { - $210 = HEAP32[$iTab>>2]|0; - $211 = HEAP32[$1>>2]|0; - $212 = (($211) + 28|0); - HEAP32[$212>>2] = $210; - $213 = HEAP32[$eType>>2]|0; - STACKTOP = sp;return ($213|0); - } - $175 = HEAP32[$0>>2]|0; - $176 = (($175) + 424|0); - $177 = HEAP32[$176>>2]|0; - HEAP32[$savedNQueryLoop>>2] = $177; - HEAP32[$rMayHaveNull>>2] = 0; - HEAP32[$eType>>2] = 2; - $178 = HEAP32[$2>>2]|0; - $179 = ($178|0)!=(0|0); - $180 = HEAP32[$0>>2]|0; - if ($179) { - $181 = (($180) + 72|0); - $182 = HEAP32[$181>>2]|0; - $183 = (($182) + 1)|0; - HEAP32[$181>>2] = $183; - HEAP32[$rMayHaveNull>>2] = $183; - $184 = HEAP32[$2>>2]|0; - HEAP32[$184>>2] = $183; - $185 = HEAP32[$v>>2]|0; - $186 = HEAP32[$2>>2]|0; - $187 = HEAP32[$186>>2]|0; - (_sqlite3VdbeAddOp2($185,28,0,$187)|0); - } else { - $188 = (($180) + 424|0); - HEAP32[$188>>2] = 0; - $189 = HEAP32[$1>>2]|0; - $190 = (($189) + 12|0); - $191 = HEAP32[$190>>2]|0; - $192 = (($191) + 32|0); - $193 = HEAP16[$192>>1]|0; - $194 = $193 << 16 >> 16; - $195 = ($194|0)<(0); - if ($195) { - $196 = HEAP32[$1>>2]|0; - $197 = (($196) + 4|0); - $198 = HEAP32[$197>>2]|0; - $199 = $198 & 2048; - $200 = ($199|0)!=(0); - if (!($200)) { - HEAP32[$eType>>2] = 1; - } - } - } - $201 = HEAP32[$0>>2]|0; - $202 = HEAP32[$1>>2]|0; - $203 = HEAP32[$rMayHaveNull>>2]|0; - $204 = HEAP32[$eType>>2]|0; - $205 = ($204|0)==(1); - $206 = $205&1; - (_sqlite3CodeSubselect($201,$202,$203,$206)|0); - $207 = HEAP32[$savedNQueryLoop>>2]|0; - $208 = HEAP32[$0>>2]|0; - $209 = (($208) + 424|0); - HEAP32[$209>>2] = $207; - $213 = HEAP32[$eType>>2]|0; - STACKTOP = sp;return ($213|0); -} -function _comparisonAffinity($pExpr) { - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aff = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - $aff = sp + 4|0; - HEAP32[$0>>2] = $pExpr; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 12|0); - $3 = HEAP32[$2>>2]|0; - $4 = (_sqlite3ExprAffinity($3)|0); - HEAP8[$aff>>0] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 16|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)!=(0|0); - $9 = HEAP32[$0>>2]|0; - if ($8) { - $10 = (($9) + 16|0); - $11 = HEAP32[$10>>2]|0; - $12 = HEAP8[$aff>>0]|0; - $13 = (_sqlite3CompareAffinity($11,$12)|0); - HEAP8[$aff>>0] = $13; - $29 = HEAP8[$aff>>0]|0; - STACKTOP = sp;return ($29|0); - } - $14 = (($9) + 4|0); - $15 = HEAP32[$14>>2]|0; - $16 = $15 & 2048; - $17 = ($16|0)!=(0); - if ($17) { - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 20|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + 4|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$23>>2]|0; - $25 = HEAP8[$aff>>0]|0; - $26 = (_sqlite3CompareAffinity($24,$25)|0); - HEAP8[$aff>>0] = $26; - $29 = HEAP8[$aff>>0]|0; - STACKTOP = sp;return ($29|0); - } - $27 = HEAP8[$aff>>0]|0; - $28 = ($27<<24>>24)!=(0); - if ($28) { - $29 = HEAP8[$aff>>0]|0; - STACKTOP = sp;return ($29|0); - } - HEAP8[$aff>>0] = 98; - $29 = HEAP8[$aff>>0]|0; - STACKTOP = sp;return ($29|0); -} -function _sqlite3ExprCode($pParse,$pExpr,$target) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - $target = $target|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $inReg = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $inReg = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pExpr; - HEAP32[$2>>2] = $target; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)!=(0|0); - if ($4) { - $5 = HEAP32[$1>>2]|0; - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - $8 = ($7|0)==(159); - if ($8) { - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 8|0); - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 28|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp2($11,33,$14,$15)|0); - STACKTOP = sp;return; - } - } - $16 = HEAP32[$0>>2]|0; - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$2>>2]|0; - $19 = (_sqlite3ExprCodeTarget($16,$17,$18)|0); - HEAP32[$inReg>>2] = $19; - $20 = HEAP32[$inReg>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = ($20|0)!=($21|0); - if (!($22)) { - STACKTOP = sp;return; - } - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 8|0); - $25 = HEAP32[$24>>2]|0; - $26 = ($25|0)!=(0|0); - if (!($26)) { - STACKTOP = sp;return; - } - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 8|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$inReg>>2]|0; - $31 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp2($29,34,$30,$31)|0); - STACKTOP = sp;return; -} -function _sqlite3ExprCodeTarget($pParse,$pExpr,$target) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - $target = $target|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; - var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; - var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; - var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; - var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; - var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; - var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; - var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; - var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; - var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; - var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; - var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; - var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0; - var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0; - var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0; - var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0; - var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; - var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aListelem = 0, $addr = 0, $aff = 0, $constMask = 0, $db = 0, $destIfFalse = 0, $destIfNull = 0, $enc = 0, $endCoalesce = 0, $endLabel = 0, $exprOp = 0, $i = 0, $i2 = 0; - var $iTab = 0, $inReg = 0, $n = 0, $nExpr = 0, $nFarg = 0, $nId = 0, $nextCase = 0, $op = 0, $opCompare = 0, $p1 = 0, $pAggInfo = 0, $pCol = 0, $pColl = 0, $pDef = 0, $pEList = 0, $pFarg = 0, $pInfo = 0, $pLItem = 0, $pLeft = 0, $pLeft1 = 0; - var $pRight = 0, $pTab = 0, $pTest = 0, $pX = 0, $r1 = 0, $r2 = 0, $r3 = 0, $r4 = 0, $regFree1 = 0, $regFree2 = 0, $tempX = 0, $to_op = 0, $v = 0, $vararg_buffer5 = 0, $vararg_ptr4 = 0, $z = 0, $zBlob = 0, $zId = 0, dest = 0, label = 0; - var sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 320|0; - $vararg_buffer5 = sp; - $0 = sp + 300|0; - $1 = sp + 296|0; - $2 = sp + 292|0; - $3 = sp + 288|0; - $v = sp + 284|0; - $op = sp + 280|0; - $inReg = sp + 276|0; - $regFree1 = sp + 272|0; - $regFree2 = sp + 268|0; - $r1 = sp + 264|0; - $r2 = sp + 260|0; - $r3 = sp + 256|0; - $r4 = sp + 252|0; - $db = sp + 248|0; - $tempX = sp + 200|0; - $pAggInfo = sp + 192|0; - $pCol = sp + 188|0; - $iTab = sp + 184|0; - $n = sp + 180|0; - $z = sp + 176|0; - $zBlob = sp + 172|0; - $aff = sp + 168|0; - $to_op = sp + 164|0; - $pLeft = sp + 160|0; - $addr = sp + 156|0; - $pInfo = sp + 152|0; - $pFarg = sp + 148|0; - $nFarg = sp + 144|0; - $pDef = sp + 140|0; - $nId = sp + 136|0; - $zId = sp + 132|0; - $constMask = sp + 128|0; - $i = sp + 124|0; - $enc = sp + 305|0; - $pColl = sp + 120|0; - $endCoalesce = sp + 116|0; - $exprOp = sp + 304|0; - $destIfFalse = sp + 112|0; - $destIfNull = sp + 108|0; - $pLeft1 = sp + 104|0; - $pLItem = sp + 100|0; - $pRight = sp + 96|0; - $pTab = sp + 92|0; - $p1 = sp + 88|0; - $endLabel = sp + 84|0; - $nextCase = sp + 80|0; - $nExpr = sp + 76|0; - $i2 = sp + 72|0; - $pEList = sp + 68|0; - $aListelem = sp + 64|0; - $opCompare = sp + 16|0; - $pX = sp + 12|0; - $pTest = sp + 8|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pExpr; - HEAP32[$3>>2] = $target; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 8|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$v>>2] = $6; - $7 = HEAP32[$3>>2]|0; - HEAP32[$inReg>>2] = $7; - HEAP32[$regFree1>>2] = 0; - HEAP32[$regFree2>>2] = 0; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$8>>2]|0; - HEAP32[$db>>2] = $9; - $10 = HEAP32[$v>>2]|0; - $11 = ($10|0)==(0|0); - if ($11) { - HEAP32[$0>>2] = 0; - $746 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($746|0); - } - $12 = HEAP32[$2>>2]|0; - $13 = ($12|0)==(0|0); - if ($13) { - HEAP32[$op>>2] = 101; - } else { - $14 = HEAP32[$2>>2]|0; - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - HEAP32[$op>>2] = $16; - } - $17 = HEAP32[$op>>2]|0; - L9: do { - switch ($17|0) { - case 79: case 78: case 83: case 80: case 81: case 82: { - $172 = HEAP32[$1>>2]|0; - $173 = HEAP32[$2>>2]|0; - $174 = (($173) + 12|0); - $175 = HEAP32[$174>>2]|0; - $176 = (_sqlite3ExprCodeTemp($172,$175,$regFree1)|0); - HEAP32[$r1>>2] = $176; - $177 = HEAP32[$1>>2]|0; - $178 = HEAP32[$2>>2]|0; - $179 = (($178) + 16|0); - $180 = HEAP32[$179>>2]|0; - $181 = (_sqlite3ExprCodeTemp($177,$180,$regFree2)|0); - HEAP32[$r2>>2] = $181; - $182 = HEAP32[$1>>2]|0; - $183 = HEAP32[$2>>2]|0; - $184 = (($183) + 12|0); - $185 = HEAP32[$184>>2]|0; - $186 = HEAP32[$2>>2]|0; - $187 = (($186) + 16|0); - $188 = HEAP32[$187>>2]|0; - $189 = HEAP32[$op>>2]|0; - $190 = HEAP32[$r1>>2]|0; - $191 = HEAP32[$r2>>2]|0; - $192 = HEAP32[$inReg>>2]|0; - (_codeCompare($182,$185,$188,$189,$190,$191,$192,16)|0); - break; - } - case 133: { - $84 = HEAP32[$v>>2]|0; - $85 = HEAP32[$2>>2]|0; - $86 = (($85) + 8|0); - $87 = HEAP32[$86>>2]|0; - $88 = HEAP32[$3>>2]|0; - _codeReal($84,$87,0,$88); - break; - } - case 157: { - $232 = HEAP32[$2>>2]|0; - $233 = (($232) + 12|0); - $234 = HEAP32[$233>>2]|0; - HEAP32[$pLeft>>2] = $234; - $235 = HEAP32[$pLeft>>2]|0; - $236 = HEAP8[$235>>0]|0; - $237 = $236&255; - $238 = ($237|0)==(132); - do { - if ($238) { - $239 = HEAP32[$1>>2]|0; - $240 = HEAP32[$pLeft>>2]|0; - $241 = HEAP32[$3>>2]|0; - _codeInteger($239,$240,1,$241); - } else { - $242 = HEAP32[$pLeft>>2]|0; - $243 = HEAP8[$242>>0]|0; - $244 = $243&255; - $245 = ($244|0)==(133); - if ($245) { - $246 = HEAP32[$v>>2]|0; - $247 = HEAP32[$pLeft>>2]|0; - $248 = (($247) + 8|0); - $249 = HEAP32[$248>>2]|0; - $250 = HEAP32[$3>>2]|0; - _codeReal($246,$249,1,$250); - break; - } else { - HEAP8[$tempX>>0] = -124; - $251 = (($tempX) + 4|0); - HEAP32[$251>>2] = 17408; - $252 = (($tempX) + 8|0); - HEAP32[$252>>2] = 0; - $253 = HEAP32[$1>>2]|0; - $254 = (_sqlite3ExprCodeTemp($253,$tempX,$regFree1)|0); - HEAP32[$r1>>2] = $254; - $255 = HEAP32[$1>>2]|0; - $256 = HEAP32[$2>>2]|0; - $257 = (($256) + 12|0); - $258 = HEAP32[$257>>2]|0; - $259 = (_sqlite3ExprCodeTemp($255,$258,$regFree2)|0); - HEAP32[$r2>>2] = $259; - $260 = HEAP32[$v>>2]|0; - $261 = HEAP32[$r2>>2]|0; - $262 = HEAP32[$r1>>2]|0; - $263 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp3($260,90,$261,$262,$263)|0); - break; - } - } - } while(0); - $264 = HEAP32[$3>>2]|0; - HEAP32[$inReg>>2] = $264; - break; - } - case 19: case 96: { - $265 = HEAP32[$1>>2]|0; - $266 = HEAP32[$2>>2]|0; - $267 = (($266) + 12|0); - $268 = HEAP32[$267>>2]|0; - $269 = (_sqlite3ExprCodeTemp($265,$268,$regFree1)|0); - HEAP32[$r1>>2] = $269; - $270 = HEAP32[$3>>2]|0; - HEAP32[$inReg>>2] = $270; - $271 = HEAP32[$v>>2]|0; - $272 = HEAP32[$op>>2]|0; - $273 = HEAP32[$r1>>2]|0; - $274 = HEAP32[$inReg>>2]|0; - (_sqlite3VdbeAddOp2($271,$272,$273,$274)|0); - break; - } - case 119: case 20: { - $529 = HEAP32[$1>>2]|0; - $530 = HEAP32[$2>>2]|0; - $531 = (_sqlite3CodeSubselect($529,$530,0,0)|0); - HEAP32[$inReg>>2] = $531; - break; - } - case 154: { - label = 11; - break; - } - case 153: { - HEAP32[$constMask>>2] = 0; - $309 = HEAP32[$db>>2]|0; - $310 = (($309) + 16|0); - $311 = HEAP32[$310>>2]|0; - $312 = (($311) + 12|0); - $313 = HEAP32[$312>>2]|0; - $314 = (($313) + 77|0); - $315 = HEAP8[$314>>0]|0; - HEAP8[$enc>>0] = $315; - HEAP32[$pColl>>2] = 0; - $316 = HEAP32[$2>>2]|0; - $317 = (($316) + 4|0); - $318 = HEAP32[$317>>2]|0; - $319 = $318 & 16384; - $320 = ($319|0)!=(0); - if ($320) { - HEAP32[$pFarg>>2] = 0; - } else { - $321 = HEAP32[$2>>2]|0; - $322 = (($321) + 20|0); - $323 = HEAP32[$322>>2]|0; - HEAP32[$pFarg>>2] = $323; - } - $324 = HEAP32[$pFarg>>2]|0; - $325 = ($324|0)!=(0|0); - if ($325) { - $326 = HEAP32[$pFarg>>2]|0; - $327 = HEAP32[$326>>2]|0; - $328 = $327; - } else { - $328 = 0; - } - HEAP32[$nFarg>>2] = $328; - $329 = HEAP32[$2>>2]|0; - $330 = (($329) + 8|0); - $331 = HEAP32[$330>>2]|0; - HEAP32[$zId>>2] = $331; - $332 = HEAP32[$zId>>2]|0; - $333 = (_sqlite3Strlen30($332)|0); - HEAP32[$nId>>2] = $333; - $334 = HEAP32[$db>>2]|0; - $335 = HEAP32[$zId>>2]|0; - $336 = HEAP32[$nId>>2]|0; - $337 = HEAP32[$nFarg>>2]|0; - $338 = HEAP8[$enc>>0]|0; - $339 = (_sqlite3FindFunction($334,$335,$336,$337,$338,0)|0); - HEAP32[$pDef>>2] = $339; - $340 = HEAP32[$pDef>>2]|0; - $341 = ($340|0)==(0|0); - if ($341) { - $342 = HEAP32[$1>>2]|0; - $343 = HEAP32[$nId>>2]|0; - $344 = HEAP32[$zId>>2]|0; - HEAP32[$vararg_buffer5>>2] = $343; - $vararg_ptr4 = (($vararg_buffer5) + 4|0); - HEAP32[$vararg_ptr4>>2] = $344; - _sqlite3ErrorMsg($342,19064,$vararg_buffer5); - break L9; - } - $345 = HEAP32[$pDef>>2]|0; - $346 = (($345) + 2|0); - $347 = HEAP16[$346>>1]|0; - $348 = $347&65535; - $349 = $348 & 512; - $350 = ($349|0)!=(0); - if ($350) { - $351 = HEAP32[$v>>2]|0; - $352 = (_sqlite3VdbeMakeLabel($351)|0); - HEAP32[$endCoalesce>>2] = $352; - $353 = HEAP32[$1>>2]|0; - $354 = HEAP32[$pFarg>>2]|0; - $355 = (($354) + 4|0); - $356 = HEAP32[$355>>2]|0; - $357 = HEAP32[$356>>2]|0; - $358 = HEAP32[$3>>2]|0; - _sqlite3ExprCode($353,$357,$358); - HEAP32[$i>>2] = 1; - while(1) { - $359 = HEAP32[$i>>2]|0; - $360 = HEAP32[$nFarg>>2]|0; - $361 = ($359|0)<($360|0); - $362 = HEAP32[$v>>2]|0; - if (!($361)) { - break; - } - $363 = HEAP32[$3>>2]|0; - $364 = HEAP32[$endCoalesce>>2]|0; - (_sqlite3VdbeAddOp2($362,77,$363,$364)|0); - $365 = HEAP32[$1>>2]|0; - $366 = HEAP32[$3>>2]|0; - _sqlite3ExprCacheRemove($365,$366,1); - $367 = HEAP32[$1>>2]|0; - _sqlite3ExprCachePush($367); - $368 = HEAP32[$1>>2]|0; - $369 = HEAP32[$i>>2]|0; - $370 = HEAP32[$pFarg>>2]|0; - $371 = (($370) + 4|0); - $372 = HEAP32[$371>>2]|0; - $373 = (($372) + (($369*20)|0)|0); - $374 = HEAP32[$373>>2]|0; - $375 = HEAP32[$3>>2]|0; - _sqlite3ExprCode($368,$374,$375); - $376 = HEAP32[$1>>2]|0; - _sqlite3ExprCachePop($376); - $377 = HEAP32[$i>>2]|0; - $378 = (($377) + 1)|0; - HEAP32[$i>>2] = $378; - } - $379 = HEAP32[$endCoalesce>>2]|0; - _sqlite3VdbeResolveLabel($362,$379); - break L9; - } - $380 = HEAP32[$pDef>>2]|0; - $381 = (($380) + 2|0); - $382 = HEAP16[$381>>1]|0; - $383 = $382&65535; - $384 = $383 & 1024; - $385 = ($384|0)!=(0); - if ($385) { - $386 = HEAP32[$1>>2]|0; - $387 = HEAP32[$pFarg>>2]|0; - $388 = (($387) + 4|0); - $389 = HEAP32[$388>>2]|0; - $390 = HEAP32[$389>>2]|0; - $391 = HEAP32[$3>>2]|0; - _sqlite3ExprCode($386,$390,$391); - break L9; - } - HEAP32[$i>>2] = 0; - while(1) { - $392 = HEAP32[$i>>2]|0; - $393 = HEAP32[$nFarg>>2]|0; - $394 = ($392|0)<($393|0); - if (!($394)) { - break; - } - $395 = HEAP32[$i>>2]|0; - $396 = ($395|0)<(32); - if ($396) { - $397 = HEAP32[$i>>2]|0; - $398 = HEAP32[$pFarg>>2]|0; - $399 = (($398) + 4|0); - $400 = HEAP32[$399>>2]|0; - $401 = (($400) + (($397*20)|0)|0); - $402 = HEAP32[$401>>2]|0; - $403 = (_sqlite3ExprIsConstant($402)|0); - $404 = ($403|0)!=(0); - if ($404) { - $405 = HEAP32[$i>>2]|0; - $406 = 1 << $405; - $407 = HEAP32[$constMask>>2]|0; - $408 = $407 | $406; - HEAP32[$constMask>>2] = $408; - } - } - $409 = HEAP32[$pDef>>2]|0; - $410 = (($409) + 2|0); - $411 = HEAP16[$410>>1]|0; - $412 = $411&65535; - $413 = $412 & 32; - $414 = ($413|0)!=(0); - if ($414) { - $415 = HEAP32[$pColl>>2]|0; - $416 = ($415|0)!=(0|0); - if (!($416)) { - $417 = HEAP32[$1>>2]|0; - $418 = HEAP32[$i>>2]|0; - $419 = HEAP32[$pFarg>>2]|0; - $420 = (($419) + 4|0); - $421 = HEAP32[$420>>2]|0; - $422 = (($421) + (($418*20)|0)|0); - $423 = HEAP32[$422>>2]|0; - $424 = (_sqlite3ExprCollSeq($417,$423)|0); - HEAP32[$pColl>>2] = $424; - } - } - $425 = HEAP32[$i>>2]|0; - $426 = (($425) + 1)|0; - HEAP32[$i>>2] = $426; - } - $427 = HEAP32[$pFarg>>2]|0; - $428 = ($427|0)!=(0|0); - if ($428) { - $429 = HEAP32[$constMask>>2]|0; - $430 = ($429|0)!=(0); - $431 = HEAP32[$1>>2]|0; - if ($430) { - $432 = (($431) + 72|0); - $433 = HEAP32[$432>>2]|0; - $434 = (($433) + 1)|0; - HEAP32[$r1>>2] = $434; - $435 = HEAP32[$nFarg>>2]|0; - $436 = HEAP32[$1>>2]|0; - $437 = (($436) + 72|0); - $438 = HEAP32[$437>>2]|0; - $439 = (($438) + ($435))|0; - HEAP32[$437>>2] = $439; - } else { - $440 = HEAP32[$nFarg>>2]|0; - $441 = (_sqlite3GetTempRange($431,$440)|0); - HEAP32[$r1>>2] = $441; - } - $442 = HEAP32[$pDef>>2]|0; - $443 = (($442) + 2|0); - $444 = HEAP16[$443>>1]|0; - $445 = $444&65535; - $446 = $445 & 192; - $447 = ($446|0)!=(0); - do { - if ($447) { - $448 = HEAP32[$pFarg>>2]|0; - $449 = (($448) + 4|0); - $450 = HEAP32[$449>>2]|0; - $451 = HEAP32[$450>>2]|0; - $452 = HEAP8[$451>>0]|0; - HEAP8[$exprOp>>0] = $452; - $453 = HEAP8[$exprOp>>0]|0; - $454 = $453&255; - $455 = ($454|0)==(154); - if (!($455)) { - $456 = HEAP8[$exprOp>>0]|0; - $457 = $456&255; - $458 = ($457|0)==(156); - if (!($458)) { - break; - } - } - $459 = HEAP32[$pDef>>2]|0; - $460 = (($459) + 2|0); - $461 = HEAP16[$460>>1]|0; - $462 = $461&65535; - $463 = $462 & 192; - $464 = $463&255; - $465 = HEAP32[$pFarg>>2]|0; - $466 = (($465) + 4|0); - $467 = HEAP32[$466>>2]|0; - $468 = HEAP32[$467>>2]|0; - $469 = (($468) + 38|0); - HEAP8[$469>>0] = $464; - } - } while(0); - $470 = HEAP32[$1>>2]|0; - _sqlite3ExprCachePush($470); - $471 = HEAP32[$1>>2]|0; - $472 = HEAP32[$pFarg>>2]|0; - $473 = HEAP32[$r1>>2]|0; - (_sqlite3ExprCodeExprList($471,$472,$473,3)|0); - $474 = HEAP32[$1>>2]|0; - _sqlite3ExprCachePop($474); - } else { - HEAP32[$r1>>2] = 0; - } - $475 = HEAP32[$nFarg>>2]|0; - $476 = ($475|0)>=(2); - if ($476) { - $477 = HEAP32[$2>>2]|0; - $478 = (($477) + 4|0); - $479 = HEAP32[$478>>2]|0; - $480 = $479 & 128; - $481 = ($480|0)!=(0); - if ($481) { - $482 = HEAP32[$db>>2]|0; - $483 = HEAP32[$pDef>>2]|0; - $484 = HEAP32[$nFarg>>2]|0; - $485 = HEAP32[$pFarg>>2]|0; - $486 = (($485) + 4|0); - $487 = HEAP32[$486>>2]|0; - $488 = (($487) + 20|0); - $489 = HEAP32[$488>>2]|0; - $490 = (_sqlite3VtabOverloadFunction($482,$483,$484,$489)|0); - HEAP32[$pDef>>2] = $490; - } else { - label = 78; - } - } else { - label = 78; - } - if ((label|0) == 78) { - $491 = HEAP32[$nFarg>>2]|0; - $492 = ($491|0)>(0); - if ($492) { - $493 = HEAP32[$db>>2]|0; - $494 = HEAP32[$pDef>>2]|0; - $495 = HEAP32[$nFarg>>2]|0; - $496 = HEAP32[$pFarg>>2]|0; - $497 = (($496) + 4|0); - $498 = HEAP32[$497>>2]|0; - $499 = HEAP32[$498>>2]|0; - $500 = (_sqlite3VtabOverloadFunction($493,$494,$495,$499)|0); - HEAP32[$pDef>>2] = $500; - } - } - $501 = HEAP32[$pDef>>2]|0; - $502 = (($501) + 2|0); - $503 = HEAP16[$502>>1]|0; - $504 = $503&65535; - $505 = $504 & 32; - $506 = ($505|0)!=(0); - if ($506) { - $507 = HEAP32[$pColl>>2]|0; - $508 = ($507|0)!=(0|0); - if (!($508)) { - $509 = HEAP32[$db>>2]|0; - $510 = (($509) + 8|0); - $511 = HEAP32[$510>>2]|0; - HEAP32[$pColl>>2] = $511; - } - $512 = HEAP32[$v>>2]|0; - $513 = HEAP32[$pColl>>2]|0; - (_sqlite3VdbeAddOp4($512,36,0,0,0,$513,-4)|0); - } - $514 = HEAP32[$v>>2]|0; - $515 = HEAP32[$constMask>>2]|0; - $516 = HEAP32[$r1>>2]|0; - $517 = HEAP32[$3>>2]|0; - $518 = HEAP32[$pDef>>2]|0; - (_sqlite3VdbeAddOp4($514,1,$515,$516,$517,$518,-5)|0); - $519 = HEAP32[$v>>2]|0; - $520 = HEAP32[$nFarg>>2]|0; - $521 = $520&255; - _sqlite3VdbeChangeP5($519,$521); - $522 = HEAP32[$nFarg>>2]|0; - $523 = ($522|0)!=(0); - if ($523) { - $524 = HEAP32[$constMask>>2]|0; - $525 = ($524|0)==(0); - if ($525) { - $526 = HEAP32[$1>>2]|0; - $527 = HEAP32[$r1>>2]|0; - $528 = HEAP32[$nFarg>>2]|0; - _sqlite3ReleaseTempRange($526,$527,$528); - } - } - break; - } - case 158: case 95: { - $599 = HEAP32[$1>>2]|0; - $600 = HEAP32[$2>>2]|0; - $601 = (($600) + 12|0); - $602 = HEAP32[$601>>2]|0; - $603 = HEAP32[$3>>2]|0; - $604 = (_sqlite3ExprCodeTarget($599,$602,$603)|0); - HEAP32[$inReg>>2] = $604; - break; - } - case 74: { - $550 = HEAP32[$2>>2]|0; - $551 = (($550) + 12|0); - $552 = HEAP32[$551>>2]|0; - HEAP32[$pLeft1>>2] = $552; - $553 = HEAP32[$2>>2]|0; - $554 = (($553) + 20|0); - $555 = HEAP32[$554>>2]|0; - $556 = (($555) + 4|0); - $557 = HEAP32[$556>>2]|0; - HEAP32[$pLItem>>2] = $557; - $558 = HEAP32[$pLItem>>2]|0; - $559 = HEAP32[$558>>2]|0; - HEAP32[$pRight>>2] = $559; - $560 = HEAP32[$1>>2]|0; - $561 = HEAP32[$pLeft1>>2]|0; - $562 = (_sqlite3ExprCodeTemp($560,$561,$regFree1)|0); - HEAP32[$r1>>2] = $562; - $563 = HEAP32[$1>>2]|0; - $564 = HEAP32[$pRight>>2]|0; - $565 = (_sqlite3ExprCodeTemp($563,$564,$regFree2)|0); - HEAP32[$r2>>2] = $565; - $566 = HEAP32[$1>>2]|0; - $567 = (_sqlite3GetTempReg($566)|0); - HEAP32[$r3>>2] = $567; - $568 = HEAP32[$1>>2]|0; - $569 = (_sqlite3GetTempReg($568)|0); - HEAP32[$r4>>2] = $569; - $570 = HEAP32[$1>>2]|0; - $571 = HEAP32[$pLeft1>>2]|0; - $572 = HEAP32[$pRight>>2]|0; - $573 = HEAP32[$r1>>2]|0; - $574 = HEAP32[$r2>>2]|0; - $575 = HEAP32[$r3>>2]|0; - (_codeCompare($570,$571,$572,83,$573,$574,$575,16)|0); - $576 = HEAP32[$pLItem>>2]|0; - $577 = (($576) + 20|0); - HEAP32[$pLItem>>2] = $577; - $578 = HEAP32[$pLItem>>2]|0; - $579 = HEAP32[$578>>2]|0; - HEAP32[$pRight>>2] = $579; - $580 = HEAP32[$1>>2]|0; - $581 = HEAP32[$regFree2>>2]|0; - _sqlite3ReleaseTempReg($580,$581); - $582 = HEAP32[$1>>2]|0; - $583 = HEAP32[$pRight>>2]|0; - $584 = (_sqlite3ExprCodeTemp($582,$583,$regFree2)|0); - HEAP32[$r2>>2] = $584; - $585 = HEAP32[$1>>2]|0; - $586 = HEAP32[$pLeft1>>2]|0; - $587 = HEAP32[$pRight>>2]|0; - $588 = HEAP32[$r1>>2]|0; - $589 = HEAP32[$r2>>2]|0; - $590 = HEAP32[$r4>>2]|0; - (_codeCompare($585,$586,$587,81,$588,$589,$590,16)|0); - $591 = HEAP32[$v>>2]|0; - $592 = HEAP32[$r3>>2]|0; - $593 = HEAP32[$r4>>2]|0; - $594 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp3($591,72,$592,$593,$594)|0); - $595 = HEAP32[$1>>2]|0; - $596 = HEAP32[$r3>>2]|0; - _sqlite3ReleaseTempReg($595,$596); - $597 = HEAP32[$1>>2]|0; - $598 = HEAP32[$r4>>2]|0; - _sqlite3ReleaseTempReg($597,$598); - break; - } - case 134: { - $96 = HEAP32[$2>>2]|0; - $97 = (($96) + 8|0); - $98 = HEAP32[$97>>2]|0; - $99 = (($98) + 2|0); - HEAP32[$z>>2] = $99; - $100 = HEAP32[$z>>2]|0; - $101 = (_sqlite3Strlen30($100)|0); - $102 = (($101) - 1)|0; - HEAP32[$n>>2] = $102; - $103 = HEAP32[$v>>2]|0; - $104 = (_sqlite3VdbeDb($103)|0); - $105 = HEAP32[$z>>2]|0; - $106 = HEAP32[$n>>2]|0; - $107 = (_sqlite3HexToBlob($104,$105,$106)|0); - HEAP32[$zBlob>>2] = $107; - $108 = HEAP32[$v>>2]|0; - $109 = HEAP32[$n>>2]|0; - $110 = (($109|0) / 2)&-1; - $111 = HEAP32[$3>>2]|0; - $112 = HEAP32[$zBlob>>2]|0; - (_sqlite3VdbeAddOp4($108,30,$110,$111,0,$112,-1)|0); - break; - } - case 57: { - $713 = HEAP32[$1>>2]|0; - $714 = (($713) + 412|0); - $715 = HEAP32[$714>>2]|0; - $716 = ($715|0)!=(0|0); - if (!($716)) { - $717 = HEAP32[$1>>2]|0; - _sqlite3ErrorMsg($717,19096,$vararg_buffer5); - HEAP32[$0>>2] = 0; - $746 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($746|0); - } - $718 = HEAP32[$2>>2]|0; - $719 = (($718) + 1|0); - $720 = HEAP8[$719>>0]|0; - $721 = $720 << 24 >> 24; - $722 = ($721|0)==(2); - if ($722) { - $723 = HEAP32[$1>>2]|0; - _sqlite3MayAbort($723); - } - $724 = HEAP32[$2>>2]|0; - $725 = (($724) + 1|0); - $726 = HEAP8[$725>>0]|0; - $727 = $726 << 24 >> 24; - $728 = ($727|0)==(4); - if ($728) { - $729 = HEAP32[$v>>2]|0; - $730 = HEAP32[$2>>2]|0; - $731 = (($730) + 8|0); - $732 = HEAP32[$731>>2]|0; - (_sqlite3VdbeAddOp4($729,24,0,4,0,$732,0)|0); - break L9; - } else { - $733 = HEAP32[$1>>2]|0; - $734 = HEAP32[$2>>2]|0; - $735 = (($734) + 1|0); - $736 = HEAP8[$735>>0]|0; - $737 = $736 << 24 >> 24; - $738 = HEAP32[$2>>2]|0; - $739 = (($738) + 8|0); - $740 = HEAP32[$739>>2]|0; - _sqlite3HaltConstraint($733,1811,$737,$740,0,0); - break L9; - } - break; - } - case 155: { - $290 = HEAP32[$2>>2]|0; - $291 = (($290) + 40|0); - $292 = HEAP32[$291>>2]|0; - HEAP32[$pInfo>>2] = $292; - $293 = HEAP32[$pInfo>>2]|0; - $294 = ($293|0)==(0|0); - if ($294) { - $295 = HEAP32[$1>>2]|0; - $296 = HEAP32[$2>>2]|0; - $297 = (($296) + 8|0); - $298 = HEAP32[$297>>2]|0; - HEAP32[$vararg_buffer5>>2] = $298; - _sqlite3ErrorMsg($295,19032,$vararg_buffer5); - break L9; - } else { - $299 = HEAP32[$2>>2]|0; - $300 = (($299) + 34|0); - $301 = HEAP16[$300>>1]|0; - $302 = $301 << 16 >> 16; - $303 = HEAP32[$pInfo>>2]|0; - $304 = (($303) + 40|0); - $305 = HEAP32[$304>>2]|0; - $306 = (($305) + ($302<<4)|0); - $307 = (($306) + 8|0); - $308 = HEAP32[$307>>2]|0; - HEAP32[$inReg>>2] = $308; - break L9; - } - break; - } - case 77: case 76: { - $275 = HEAP32[$v>>2]|0; - $276 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($275,25,1,$276)|0); - $277 = HEAP32[$1>>2]|0; - $278 = HEAP32[$2>>2]|0; - $279 = (($278) + 12|0); - $280 = HEAP32[$279>>2]|0; - $281 = (_sqlite3ExprCodeTemp($277,$280,$regFree1)|0); - HEAP32[$r1>>2] = $281; - $282 = HEAP32[$v>>2]|0; - $283 = HEAP32[$op>>2]|0; - $284 = HEAP32[$r1>>2]|0; - $285 = (_sqlite3VdbeAddOp1($282,$283,$284)|0); - HEAP32[$addr>>2] = $285; - $286 = HEAP32[$v>>2]|0; - $287 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($286,37,$287,-1)|0); - $288 = HEAP32[$v>>2]|0; - $289 = HEAP32[$addr>>2]|0; - _sqlite3VdbeJumpHere($288,$289); - break; - } - case 101: { - $94 = HEAP32[$v>>2]|0; - $95 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($94,28,0,$95)|0); - break; - } - case 159: { - $137 = HEAP32[$2>>2]|0; - $138 = (($137) + 28|0); - $139 = HEAP32[$138>>2]|0; - HEAP32[$inReg>>2] = $139; - break; - } - case 62: { - $605 = HEAP32[$2>>2]|0; - $606 = (($605) + 44|0); - $607 = HEAP32[$606>>2]|0; - HEAP32[$pTab>>2] = $607; - $608 = HEAP32[$2>>2]|0; - $609 = (($608) + 28|0); - $610 = HEAP32[$609>>2]|0; - $611 = HEAP32[$pTab>>2]|0; - $612 = (($611) + 38|0); - $613 = HEAP16[$612>>1]|0; - $614 = $613 << 16 >> 16; - $615 = (($614) + 1)|0; - $616 = Math_imul($610, $615)|0; - $617 = (($616) + 1)|0; - $618 = HEAP32[$2>>2]|0; - $619 = (($618) + 32|0); - $620 = HEAP16[$619>>1]|0; - $621 = $620 << 16 >> 16; - $622 = (($617) + ($621))|0; - HEAP32[$p1>>2] = $622; - $623 = HEAP32[$v>>2]|0; - $624 = HEAP32[$p1>>2]|0; - $625 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($623,129,$624,$625)|0); - $626 = HEAP32[$2>>2]|0; - $627 = (($626) + 32|0); - $628 = HEAP16[$627>>1]|0; - $629 = $628 << 16 >> 16; - $630 = ($629|0)>=(0); - if ($630) { - $631 = HEAP32[$2>>2]|0; - $632 = (($631) + 32|0); - $633 = HEAP16[$632>>1]|0; - $634 = $633 << 16 >> 16; - $635 = HEAP32[$pTab>>2]|0; - $636 = (($635) + 4|0); - $637 = HEAP32[$636>>2]|0; - $638 = (($637) + (($634*24)|0)|0); - $639 = (($638) + 21|0); - $640 = HEAP8[$639>>0]|0; - $641 = $640 << 24 >> 24; - $642 = ($641|0)==(101); - if ($642) { - $643 = HEAP32[$v>>2]|0; - $644 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp1($643,39,$644)|0); - } - } - break; - } - case 75: { - $532 = HEAP32[$v>>2]|0; - $533 = (_sqlite3VdbeMakeLabel($532)|0); - HEAP32[$destIfFalse>>2] = $533; - $534 = HEAP32[$v>>2]|0; - $535 = (_sqlite3VdbeMakeLabel($534)|0); - HEAP32[$destIfNull>>2] = $535; - $536 = HEAP32[$v>>2]|0; - $537 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($536,28,0,$537)|0); - $538 = HEAP32[$1>>2]|0; - $539 = HEAP32[$2>>2]|0; - $540 = HEAP32[$destIfFalse>>2]|0; - $541 = HEAP32[$destIfNull>>2]|0; - _sqlite3ExprCodeIN($538,$539,$540,$541); - $542 = HEAP32[$v>>2]|0; - $543 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($542,25,1,$543)|0); - $544 = HEAP32[$v>>2]|0; - $545 = HEAP32[$destIfFalse>>2]|0; - _sqlite3VdbeResolveLabel($544,$545); - $546 = HEAP32[$v>>2]|0; - $547 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($546,37,$547,0)|0); - $548 = HEAP32[$v>>2]|0; - $549 = HEAP32[$destIfNull>>2]|0; - _sqlite3VdbeResolveLabel($548,$549); - break; - } - case 132: { - $81 = HEAP32[$1>>2]|0; - $82 = HEAP32[$2>>2]|0; - $83 = HEAP32[$3>>2]|0; - _codeInteger($81,$82,0,$83); - break; - } - case 94: case 88: case 87: case 92: case 86: case 85: case 93: case 90: case 91: case 89: case 71: case 72: { - $217 = HEAP32[$1>>2]|0; - $218 = HEAP32[$2>>2]|0; - $219 = (($218) + 12|0); - $220 = HEAP32[$219>>2]|0; - $221 = (_sqlite3ExprCodeTemp($217,$220,$regFree1)|0); - HEAP32[$r1>>2] = $221; - $222 = HEAP32[$1>>2]|0; - $223 = HEAP32[$2>>2]|0; - $224 = (($223) + 16|0); - $225 = HEAP32[$224>>2]|0; - $226 = (_sqlite3ExprCodeTemp($222,$225,$regFree2)|0); - HEAP32[$r2>>2] = $226; - $227 = HEAP32[$v>>2]|0; - $228 = HEAP32[$op>>2]|0; - $229 = HEAP32[$r2>>2]|0; - $230 = HEAP32[$r1>>2]|0; - $231 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp3($227,$228,$229,$230,$231)|0); - break; - } - case 97: { - $89 = HEAP32[$v>>2]|0; - $90 = HEAP32[$3>>2]|0; - $91 = HEAP32[$2>>2]|0; - $92 = (($91) + 8|0); - $93 = HEAP32[$92>>2]|0; - (_sqlite3VdbeAddOp4($89,97,0,$90,0,$93,0)|0); - break; - } - case 156: { - $18 = HEAP32[$2>>2]|0; - $19 = (($18) + 40|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$pAggInfo>>2] = $20; - $21 = HEAP32[$2>>2]|0; - $22 = (($21) + 34|0); - $23 = HEAP16[$22>>1]|0; - $24 = $23 << 16 >> 16; - $25 = HEAP32[$pAggInfo>>2]|0; - $26 = (($25) + 28|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + (($24*24)|0)|0); - HEAP32[$pCol>>2] = $28; - $29 = HEAP32[$pAggInfo>>2]|0; - $30 = HEAP8[$29>>0]|0; - $31 = ($30<<24>>24)!=(0); - if (!($31)) { - $32 = HEAP32[$pCol>>2]|0; - $33 = (($32) + 16|0); - $34 = HEAP32[$33>>2]|0; - HEAP32[$inReg>>2] = $34; - break L9; - } - $35 = HEAP32[$pAggInfo>>2]|0; - $36 = (($35) + 1|0); - $37 = HEAP8[$36>>0]|0; - $38 = ($37<<24>>24)!=(0); - if ($38) { - $39 = HEAP32[$v>>2]|0; - $40 = HEAP32[$pAggInfo>>2]|0; - $41 = (($40) + 8|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$pCol>>2]|0; - $44 = (($43) + 12|0); - $45 = HEAP32[$44>>2]|0; - $46 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp3($39,46,$42,$45,$46)|0); - } else { - label = 11; - } - break; - } - case 135: { - $113 = HEAP32[$v>>2]|0; - $114 = HEAP32[$2>>2]|0; - $115 = (($114) + 32|0); - $116 = HEAP16[$115>>1]|0; - $117 = $116 << 16 >> 16; - $118 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($113,31,$117,$118)|0); - $119 = HEAP32[$2>>2]|0; - $120 = (($119) + 8|0); - $121 = HEAP32[$120>>2]|0; - $122 = (($121) + 1|0); - $123 = HEAP8[$122>>0]|0; - $124 = $123 << 24 >> 24; - $125 = ($124|0)!=(0); - if ($125) { - $126 = HEAP32[$v>>2]|0; - $127 = HEAP32[$2>>2]|0; - $128 = (($127) + 32|0); - $129 = HEAP16[$128>>1]|0; - $130 = $129 << 16 >> 16; - $131 = (($130) - 1)|0; - $132 = HEAP32[$1>>2]|0; - $133 = (($132) + 472|0); - $134 = HEAP32[$133>>2]|0; - $135 = (($134) + ($131<<2)|0); - $136 = HEAP32[$135>>2]|0; - _sqlite3VdbeChangeP4($126,-1,$136,-2); - } - break; - } - case 38: { - $146 = HEAP32[$1>>2]|0; - $147 = HEAP32[$2>>2]|0; - $148 = (($147) + 12|0); - $149 = HEAP32[$148>>2]|0; - $150 = HEAP32[$3>>2]|0; - $151 = (_sqlite3ExprCodeTarget($146,$149,$150)|0); - HEAP32[$inReg>>2] = $151; - $152 = HEAP32[$2>>2]|0; - $153 = (($152) + 8|0); - $154 = HEAP32[$153>>2]|0; - $155 = (_sqlite3AffinityType($154,0)|0); - $156 = $155 << 24 >> 24; - HEAP32[$aff>>2] = $156; - $157 = HEAP32[$aff>>2]|0; - $158 = (($157) - 97)|0; - $159 = (($158) + 143)|0; - HEAP32[$to_op>>2] = $159; - $160 = HEAP32[$inReg>>2]|0; - $161 = HEAP32[$3>>2]|0; - $162 = ($160|0)!=($161|0); - if ($162) { - $163 = HEAP32[$v>>2]|0; - $164 = HEAP32[$inReg>>2]|0; - $165 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($163,34,$164,$165)|0); - $166 = HEAP32[$3>>2]|0; - HEAP32[$inReg>>2] = $166; - } - $167 = HEAP32[$v>>2]|0; - $168 = HEAP32[$to_op>>2]|0; - $169 = HEAP32[$inReg>>2]|0; - (_sqlite3VdbeAddOp1($167,$168,$169)|0); - $170 = HEAP32[$1>>2]|0; - $171 = HEAP32[$inReg>>2]|0; - _sqlite3ExprCacheAffinityChange($170,$171,1); - break; - } - case 24: { - $140 = HEAP32[$1>>2]|0; - $141 = HEAP32[$2>>2]|0; - $142 = (($141) + 12|0); - $143 = HEAP32[$142>>2]|0; - $144 = HEAP32[$3>>2]|0; - $145 = (_sqlite3ExprCodeTarget($140,$143,$144)|0); - HEAP32[$inReg>>2] = $145; - break; - } - case 148: case 73: { - $193 = HEAP32[$1>>2]|0; - $194 = HEAP32[$2>>2]|0; - $195 = (($194) + 12|0); - $196 = HEAP32[$195>>2]|0; - $197 = (_sqlite3ExprCodeTemp($193,$196,$regFree1)|0); - HEAP32[$r1>>2] = $197; - $198 = HEAP32[$1>>2]|0; - $199 = HEAP32[$2>>2]|0; - $200 = (($199) + 16|0); - $201 = HEAP32[$200>>2]|0; - $202 = (_sqlite3ExprCodeTemp($198,$201,$regFree2)|0); - HEAP32[$r2>>2] = $202; - $203 = HEAP32[$op>>2]|0; - $204 = ($203|0)==(73); - $205 = $204 ? 79 : 78; - HEAP32[$op>>2] = $205; - $206 = HEAP32[$1>>2]|0; - $207 = HEAP32[$2>>2]|0; - $208 = (($207) + 12|0); - $209 = HEAP32[$208>>2]|0; - $210 = HEAP32[$2>>2]|0; - $211 = (($210) + 16|0); - $212 = HEAP32[$211>>2]|0; - $213 = HEAP32[$op>>2]|0; - $214 = HEAP32[$r1>>2]|0; - $215 = HEAP32[$r2>>2]|0; - $216 = HEAP32[$inReg>>2]|0; - (_codeCompare($206,$209,$212,$213,$214,$215,$216,144)|0); - break; - } - default: { - HEAP32[$pTest>>2] = 0; - $645 = HEAP32[$2>>2]|0; - $646 = (($645) + 20|0); - $647 = HEAP32[$646>>2]|0; - HEAP32[$pEList>>2] = $647; - $648 = HEAP32[$pEList>>2]|0; - $649 = (($648) + 4|0); - $650 = HEAP32[$649>>2]|0; - HEAP32[$aListelem>>2] = $650; - $651 = HEAP32[$pEList>>2]|0; - $652 = HEAP32[$651>>2]|0; - HEAP32[$nExpr>>2] = $652; - $653 = HEAP32[$v>>2]|0; - $654 = (_sqlite3VdbeMakeLabel($653)|0); - HEAP32[$endLabel>>2] = $654; - $655 = HEAP32[$2>>2]|0; - $656 = (($655) + 12|0); - $657 = HEAP32[$656>>2]|0; - HEAP32[$pX>>2] = $657; - $658 = ($657|0)!=(0|0); - if ($658) { - $659 = HEAP32[$pX>>2]|0; - dest=$tempX+0|0; src=$659+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $660 = HEAP32[$1>>2]|0; - $661 = HEAP32[$pX>>2]|0; - $662 = (_sqlite3ExprCodeTemp($660,$661,$regFree1)|0); - _exprToRegister($tempX,$662); - HEAP8[$opCompare>>0] = 79; - $663 = (($opCompare) + 12|0); - HEAP32[$663>>2] = $tempX; - HEAP32[$pTest>>2] = $opCompare; - HEAP32[$regFree1>>2] = 0; - } - HEAP32[$i2>>2] = 0; - while(1) { - $664 = HEAP32[$i2>>2]|0; - $665 = HEAP32[$nExpr>>2]|0; - $666 = (($665) - 1)|0; - $667 = ($664|0)<($666|0); - if (!($667)) { - break; - } - $668 = HEAP32[$1>>2]|0; - _sqlite3ExprCachePush($668); - $669 = HEAP32[$pX>>2]|0; - $670 = ($669|0)!=(0|0); - $671 = HEAP32[$i2>>2]|0; - $672 = HEAP32[$aListelem>>2]|0; - $673 = (($672) + (($671*20)|0)|0); - $674 = HEAP32[$673>>2]|0; - if ($670) { - $675 = (($opCompare) + 16|0); - HEAP32[$675>>2] = $674; - } else { - HEAP32[$pTest>>2] = $674; - } - $676 = HEAP32[$v>>2]|0; - $677 = (_sqlite3VdbeMakeLabel($676)|0); - HEAP32[$nextCase>>2] = $677; - $678 = HEAP32[$1>>2]|0; - $679 = HEAP32[$pTest>>2]|0; - $680 = HEAP32[$nextCase>>2]|0; - _sqlite3ExprIfFalse($678,$679,$680,8); - $681 = HEAP32[$1>>2]|0; - $682 = HEAP32[$i2>>2]|0; - $683 = (($682) + 1)|0; - $684 = HEAP32[$aListelem>>2]|0; - $685 = (($684) + (($683*20)|0)|0); - $686 = HEAP32[$685>>2]|0; - $687 = HEAP32[$3>>2]|0; - _sqlite3ExprCode($681,$686,$687); - $688 = HEAP32[$v>>2]|0; - $689 = HEAP32[$endLabel>>2]|0; - (_sqlite3VdbeAddOp2($688,16,0,$689)|0); - $690 = HEAP32[$1>>2]|0; - _sqlite3ExprCachePop($690); - $691 = HEAP32[$v>>2]|0; - $692 = HEAP32[$nextCase>>2]|0; - _sqlite3VdbeResolveLabel($691,$692); - $693 = HEAP32[$i2>>2]|0; - $694 = (($693) + 2)|0; - HEAP32[$i2>>2] = $694; - } - $695 = HEAP32[$nExpr>>2]|0; - $696 = $695 & 1; - $697 = ($696|0)!=(0); - if ($697) { - $698 = HEAP32[$1>>2]|0; - _sqlite3ExprCachePush($698); - $699 = HEAP32[$1>>2]|0; - $700 = HEAP32[$nExpr>>2]|0; - $701 = (($700) - 1)|0; - $702 = HEAP32[$pEList>>2]|0; - $703 = (($702) + 4|0); - $704 = HEAP32[$703>>2]|0; - $705 = (($704) + (($701*20)|0)|0); - $706 = HEAP32[$705>>2]|0; - $707 = HEAP32[$3>>2]|0; - _sqlite3ExprCode($699,$706,$707); - $708 = HEAP32[$1>>2]|0; - _sqlite3ExprCachePop($708); - } else { - $709 = HEAP32[$v>>2]|0; - $710 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($709,28,0,$710)|0); - } - $711 = HEAP32[$v>>2]|0; - $712 = HEAP32[$endLabel>>2]|0; - _sqlite3VdbeResolveLabel($711,$712); - } - } - } while(0); - L141: do { - if ((label|0) == 11) { - $47 = HEAP32[$2>>2]|0; - $48 = (($47) + 28|0); - $49 = HEAP32[$48>>2]|0; - HEAP32[$iTab>>2] = $49; - $50 = HEAP32[$iTab>>2]|0; - $51 = ($50|0)<(0); - do { - if ($51) { - $52 = HEAP32[$1>>2]|0; - $53 = (($52) + 92|0); - $54 = HEAP32[$53>>2]|0; - $55 = ($54|0)>(0); - if ($55) { - $56 = HEAP32[$2>>2]|0; - $57 = (($56) + 32|0); - $58 = HEAP16[$57>>1]|0; - $59 = $58 << 16 >> 16; - $60 = HEAP32[$1>>2]|0; - $61 = (($60) + 92|0); - $62 = HEAP32[$61>>2]|0; - $63 = (($59) + ($62))|0; - HEAP32[$inReg>>2] = $63; - break L141; - } else { - $64 = HEAP32[$1>>2]|0; - $65 = (($64) + 96|0); - $66 = HEAP32[$65>>2]|0; - HEAP32[$iTab>>2] = $66; - break; - } - } - } while(0); - $67 = HEAP32[$1>>2]|0; - $68 = HEAP32[$2>>2]|0; - $69 = (($68) + 44|0); - $70 = HEAP32[$69>>2]|0; - $71 = HEAP32[$2>>2]|0; - $72 = (($71) + 32|0); - $73 = HEAP16[$72>>1]|0; - $74 = $73 << 16 >> 16; - $75 = HEAP32[$iTab>>2]|0; - $76 = HEAP32[$3>>2]|0; - $77 = HEAP32[$2>>2]|0; - $78 = (($77) + 38|0); - $79 = HEAP8[$78>>0]|0; - $80 = (_sqlite3ExprCodeGetColumn($67,$70,$74,$75,$76,$79)|0); - HEAP32[$inReg>>2] = $80; - } - } while(0); - $741 = HEAP32[$1>>2]|0; - $742 = HEAP32[$regFree1>>2]|0; - _sqlite3ReleaseTempReg($741,$742); - $743 = HEAP32[$1>>2]|0; - $744 = HEAP32[$regFree2>>2]|0; - _sqlite3ReleaseTempReg($743,$744); - $745 = HEAP32[$inReg>>2]|0; - HEAP32[$0>>2] = $745; - $746 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($746|0); -} -function _sqlite3ExprCodeGetColumn($pParse,$pTab,$iColumn,$iTable,$iReg,$p5) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $iColumn = $iColumn|0; - $iTable = $iTable|0; - $iReg = $iReg|0; - $p5 = $p5|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $i = 0, $p = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $4 = sp + 16|0; - $5 = sp + 12|0; - $6 = sp + 36|0; - $v = sp + 8|0; - $i = sp + 4|0; - $p = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pTab; - HEAP32[$3>>2] = $iColumn; - HEAP32[$4>>2] = $iTable; - HEAP32[$5>>2] = $iReg; - HEAP8[$6>>0] = $p5; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 8|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$v>>2] = $9; - HEAP32[$i>>2] = 0; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 116|0); - HEAP32[$p>>2] = $11; - while(1) { - $12 = HEAP32[$i>>2]|0; - $13 = ($12|0)<(10); - if (!($13)) { - break; - } - $14 = HEAP32[$p>>2]|0; - $15 = (($14) + 12|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($16|0)>(0); - if ($17) { - $18 = HEAP32[$p>>2]|0; - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$4>>2]|0; - $21 = ($19|0)==($20|0); - if ($21) { - $22 = HEAP32[$p>>2]|0; - $23 = (($22) + 4|0); - $24 = HEAP16[$23>>1]|0; - $25 = $24 << 16 >> 16; - $26 = HEAP32[$3>>2]|0; - $27 = ($25|0)==($26|0); - if ($27) { - label = 6; - break; - } - } - } - $41 = HEAP32[$i>>2]|0; - $42 = (($41) + 1)|0; - HEAP32[$i>>2] = $42; - $43 = HEAP32[$p>>2]|0; - $44 = (($43) + 20|0); - HEAP32[$p>>2] = $44; - } - if ((label|0) == 6) { - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 104|0); - $30 = HEAP32[$29>>2]|0; - $31 = (($30) + 1)|0; - HEAP32[$29>>2] = $31; - $32 = HEAP32[$p>>2]|0; - $33 = (($32) + 16|0); - HEAP32[$33>>2] = $30; - $34 = HEAP32[$1>>2]|0; - $35 = HEAP32[$p>>2]|0; - $36 = (($35) + 12|0); - $37 = HEAP32[$36>>2]|0; - _sqlite3ExprCachePinRegister($34,$37); - $38 = HEAP32[$p>>2]|0; - $39 = (($38) + 12|0); - $40 = HEAP32[$39>>2]|0; - HEAP32[$0>>2] = $40; - $59 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($59|0); - } - $45 = HEAP32[$v>>2]|0; - $46 = HEAP32[$2>>2]|0; - $47 = HEAP32[$4>>2]|0; - $48 = HEAP32[$3>>2]|0; - $49 = HEAP32[$5>>2]|0; - _sqlite3ExprCodeGetColumnOfTable($45,$46,$47,$48,$49); - $50 = HEAP8[$6>>0]|0; - $51 = ($50<<24>>24)!=(0); - if ($51) { - $52 = HEAP32[$v>>2]|0; - $53 = HEAP8[$6>>0]|0; - _sqlite3VdbeChangeP5($52,$53); - } else { - $54 = HEAP32[$1>>2]|0; - $55 = HEAP32[$4>>2]|0; - $56 = HEAP32[$3>>2]|0; - $57 = HEAP32[$5>>2]|0; - _sqlite3ExprCacheStore($54,$55,$56,$57); - } - $58 = HEAP32[$5>>2]|0; - HEAP32[$0>>2] = $58; - $59 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($59|0); -} -function _codeInteger($pParse,$pExpr,$negFlag,$iMem) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - $negFlag = $negFlag|0; - $iMem = $iMem|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $c = 0, $i = 0, $v = 0, $value = 0, $z = 0, $zV = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $v = sp + 24|0; - $i = sp + 20|0; - $c = sp + 16|0; - $value = sp; - $z = sp + 12|0; - $zV = sp + 8|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pExpr; - HEAP32[$2>>2] = $negFlag; - HEAP32[$3>>2] = $iMem; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 8|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$v>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = $9 & 1024; - $11 = ($10|0)!=(0); - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 8|0); - if ($11) { - $14 = HEAP32[$13>>2]|0; - HEAP32[$i>>2] = $14; - $15 = HEAP32[$2>>2]|0; - $16 = ($15|0)!=(0); - if ($16) { - $17 = HEAP32[$i>>2]|0; - $18 = (0 - ($17))|0; - HEAP32[$i>>2] = $18; - } - $19 = HEAP32[$v>>2]|0; - $20 = HEAP32[$i>>2]|0; - $21 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($19,25,$20,$21)|0); - STACKTOP = sp;return; - } - $22 = HEAP32[$13>>2]|0; - HEAP32[$z>>2] = $22; - $23 = HEAP32[$z>>2]|0; - $24 = HEAP32[$z>>2]|0; - $25 = (_sqlite3Strlen30($24)|0); - $26 = (_sqlite3Atoi64($23,$value,$25,1)|0); - HEAP32[$c>>2] = $26; - $27 = HEAP32[$c>>2]|0; - $28 = ($27|0)==(0); - do { - if (!($28)) { - $29 = HEAP32[$c>>2]|0; - $30 = ($29|0)==(2); - if ($30) { - $31 = HEAP32[$2>>2]|0; - $32 = ($31|0)!=(0); - if ($32) { - break; - } - } - $56 = HEAP32[$v>>2]|0; - $57 = HEAP32[$z>>2]|0; - $58 = HEAP32[$2>>2]|0; - $59 = HEAP32[$3>>2]|0; - _codeReal($56,$57,$58,$59); - STACKTOP = sp;return; - } - } while(0); - $33 = HEAP32[$2>>2]|0; - $34 = ($33|0)!=(0); - if ($34) { - $35 = HEAP32[$c>>2]|0; - $36 = ($35|0)==(2); - if ($36) { - $47 = 0;$50 = -2147483648; - } else { - $37 = $value; - $38 = $37; - $39 = HEAP32[$38>>2]|0; - $40 = (($37) + 4)|0; - $41 = $40; - $42 = HEAP32[$41>>2]|0; - $43 = (_i64Subtract(0,0,($39|0),($42|0))|0); - $44 = tempRet0; - $47 = $43;$50 = $44; - } - $45 = $value; - $46 = $45; - HEAP32[$46>>2] = $47; - $48 = (($45) + 4)|0; - $49 = $48; - HEAP32[$49>>2] = $50; - } - $51 = HEAP32[$v>>2]|0; - $52 = (_dup8bytes($51,$value)|0); - HEAP32[$zV>>2] = $52; - $53 = HEAP32[$v>>2]|0; - $54 = HEAP32[$3>>2]|0; - $55 = HEAP32[$zV>>2]|0; - (_sqlite3VdbeAddOp4($53,26,0,$54,0,$55,-13)|0); - STACKTOP = sp;return; -} -function _codeReal($v,$z,$negateFlag,$iMem) { - $v = $v|0; - $z = $z|0; - $negateFlag = $negateFlag|0; - $iMem = $iMem|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0.0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $value = 0, $zV = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $value = sp; - $zV = sp + 8|0; - HEAP32[$0>>2] = $v; - HEAP32[$1>>2] = $z; - HEAP32[$2>>2] = $negateFlag; - HEAP32[$3>>2] = $iMem; - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - STACKTOP = sp;return; - } - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (_sqlite3Strlen30($7)|0); - (_sqlite3AtoF($6,$value,$8,1)|0); - $9 = HEAP32[$2>>2]|0; - $10 = ($9|0)!=(0); - if ($10) { - $11 = +HEAPF64[$value>>3]; - $12 = -$11; - HEAPF64[$value>>3] = $12; - } - $13 = HEAP32[$0>>2]|0; - $14 = (_dup8bytes($13,$value)|0); - HEAP32[$zV>>2] = $14; - $15 = HEAP32[$0>>2]|0; - $16 = HEAP32[$3>>2]|0; - $17 = HEAP32[$zV>>2]|0; - (_sqlite3VdbeAddOp4($15,133,0,$16,0,$17,-12)|0); - STACKTOP = sp;return; -} -function _sqlite3ExprCacheAffinityChange($pParse,$iStart,$iCount) { - $pParse = $pParse|0; - $iStart = $iStart|0; - $iCount = $iCount|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iStart; - HEAP32[$2>>2] = $iCount; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - _sqlite3ExprCacheRemove($3,$4,$5); - STACKTOP = sp;return; -} -function _sqlite3ExprIsConstant($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (_exprIsConst($1,1)|0); - STACKTOP = sp;return ($2|0); -} -function _sqlite3ExprCodeExprList($pParse,$pList,$target,$flags) { - $pParse = $pParse|0; - $pList = $pList|0; - $target = $target|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $copyOp = 0, $i = 0, $inReg = 0, $n = 0, $pExpr = 0, $pItem = 0, $pOp = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 41|0; - $pItem = sp + 24|0; - $i = sp + 20|0; - $n = sp + 16|0; - $copyOp = sp + 40|0; - $pExpr = sp + 12|0; - $inReg = sp + 8|0; - $pOp = sp + 4|0; - $v = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pList; - HEAP32[$2>>2] = $target; - HEAP8[$3>>0] = $flags; - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - $6 = $5 & 1; - $7 = ($6|0)!=(0); - $8 = $7 ? 33 : 34; - $9 = $8&255; - HEAP8[$copyOp>>0] = $9; - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$10>>2]|0; - HEAP32[$n>>2] = $11; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 23|0); - $14 = HEAP8[$13>>0]|0; - $15 = ($14<<24>>24)!=(0); - if (!($15)) { - $16 = HEAP8[$3>>0]|0; - $17 = $16&255; - $18 = $17 & -3; - $19 = $18&255; - HEAP8[$3>>0] = $19; - } - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 4|0); - $22 = HEAP32[$21>>2]|0; - HEAP32[$pItem>>2] = $22; - HEAP32[$i>>2] = 0; - while(1) { - $23 = HEAP32[$i>>2]|0; - $24 = HEAP32[$n>>2]|0; - $25 = ($23|0)<($24|0); - if (!($25)) { - break; - } - $26 = HEAP32[$pItem>>2]|0; - $27 = HEAP32[$26>>2]|0; - HEAP32[$pExpr>>2] = $27; - $28 = HEAP8[$3>>0]|0; - $29 = $28&255; - $30 = $29 & 2; - $31 = ($30|0)!=(0); - if ($31) { - $32 = HEAP32[$pExpr>>2]|0; - $33 = (_sqlite3ExprIsConstant($32)|0); - $34 = ($33|0)!=(0); - if ($34) { - $35 = HEAP32[$0>>2]|0; - $36 = HEAP32[$pExpr>>2]|0; - $37 = HEAP32[$2>>2]|0; - $38 = HEAP32[$i>>2]|0; - $39 = (($37) + ($38))|0; - _sqlite3ExprCodeAtInit($35,$36,$39,0); - } else { - label = 8; - } - } else { - label = 8; - } - do { - if ((label|0) == 8) { - label = 0; - $40 = HEAP32[$0>>2]|0; - $41 = HEAP32[$pExpr>>2]|0; - $42 = HEAP32[$2>>2]|0; - $43 = HEAP32[$i>>2]|0; - $44 = (($42) + ($43))|0; - $45 = (_sqlite3ExprCodeTarget($40,$41,$44)|0); - HEAP32[$inReg>>2] = $45; - $46 = HEAP32[$inReg>>2]|0; - $47 = HEAP32[$2>>2]|0; - $48 = HEAP32[$i>>2]|0; - $49 = (($47) + ($48))|0; - $50 = ($46|0)!=($49|0); - if ($50) { - $51 = HEAP32[$0>>2]|0; - $52 = (($51) + 8|0); - $53 = HEAP32[$52>>2]|0; - HEAP32[$v>>2] = $53; - $54 = HEAP8[$copyOp>>0]|0; - $55 = $54&255; - $56 = ($55|0)==(33); - if ($56) { - $57 = HEAP32[$v>>2]|0; - $58 = (_sqlite3VdbeGetOp($57,-1)|0); - HEAP32[$pOp>>2] = $58; - $59 = HEAP8[$58>>0]|0; - $60 = $59&255; - $61 = ($60|0)==(33); - if ($61) { - $62 = HEAP32[$pOp>>2]|0; - $63 = (($62) + 4|0); - $64 = HEAP32[$63>>2]|0; - $65 = HEAP32[$pOp>>2]|0; - $66 = (($65) + 12|0); - $67 = HEAP32[$66>>2]|0; - $68 = (($64) + ($67))|0; - $69 = (($68) + 1)|0; - $70 = HEAP32[$inReg>>2]|0; - $71 = ($69|0)==($70|0); - if ($71) { - $72 = HEAP32[$pOp>>2]|0; - $73 = (($72) + 8|0); - $74 = HEAP32[$73>>2]|0; - $75 = HEAP32[$pOp>>2]|0; - $76 = (($75) + 12|0); - $77 = HEAP32[$76>>2]|0; - $78 = (($74) + ($77))|0; - $79 = (($78) + 1)|0; - $80 = HEAP32[$2>>2]|0; - $81 = HEAP32[$i>>2]|0; - $82 = (($80) + ($81))|0; - $83 = ($79|0)==($82|0); - if ($83) { - $84 = HEAP32[$pOp>>2]|0; - $85 = (($84) + 12|0); - $86 = HEAP32[$85>>2]|0; - $87 = (($86) + 1)|0; - HEAP32[$85>>2] = $87; - break; - } - } - } - } - $88 = HEAP32[$v>>2]|0; - $89 = HEAP8[$copyOp>>0]|0; - $90 = $89&255; - $91 = HEAP32[$inReg>>2]|0; - $92 = HEAP32[$2>>2]|0; - $93 = HEAP32[$i>>2]|0; - $94 = (($92) + ($93))|0; - (_sqlite3VdbeAddOp2($88,$90,$91,$94)|0); - } - } - } while(0); - $95 = HEAP32[$i>>2]|0; - $96 = (($95) + 1)|0; - HEAP32[$i>>2] = $96; - $97 = HEAP32[$pItem>>2]|0; - $98 = (($97) + 20|0); - HEAP32[$pItem>>2] = $98; - } - $99 = HEAP32[$n>>2]|0; - STACKTOP = sp;return ($99|0); -} -function _sqlite3VtabOverloadFunction($db,$pDef,$nArg,$pExpr) { - $db = $db|0; - $pDef = $pDef|0; - $nArg = $nArg|0; - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $12 = 0, $13 = 0, $14 = 0; - var $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; - var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; - var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; - var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; - var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $pArg = 0, $pMod = 0, $pNew = 0, $pTab = 0, $pVtab = 0, $rc = 0, $xFunc = 0; - var $z = 0, $zLowerName = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 56|0; - $1 = sp + 52|0; - $2 = sp + 48|0; - $3 = sp + 44|0; - $4 = sp + 40|0; - $pTab = sp + 36|0; - $pVtab = sp + 32|0; - $pMod = sp + 28|0; - $xFunc = sp + 24|0; - $pArg = sp + 20|0; - $pNew = sp + 16|0; - $rc = sp + 12|0; - $zLowerName = sp + 8|0; - $z = sp + 4|0; - $5 = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pDef; - HEAP32[$3>>2] = $nArg; - HEAP32[$4>>2] = $pExpr; - HEAP32[$xFunc>>2] = 0; - HEAP32[$pArg>>2] = 0; - HEAP32[$rc>>2] = 0; - $6 = HEAP32[$4>>2]|0; - $7 = ($6|0)==(0|0); - if ($7) { - $8 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $8; - $112 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($112|0); - } - $9 = HEAP32[$4>>2]|0; - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - $12 = ($11|0)!=(154); - if ($12) { - $13 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $13; - $112 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($112|0); - } - $14 = HEAP32[$4>>2]|0; - $15 = (($14) + 44|0); - $16 = HEAP32[$15>>2]|0; - HEAP32[$pTab>>2] = $16; - $17 = HEAP32[$pTab>>2]|0; - $18 = ($17|0)==(0|0); - if ($18) { - $19 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $19; - $112 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($112|0); - } - $20 = HEAP32[$pTab>>2]|0; - $21 = (($20) + 44|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = $23 & 16; - $25 = ($24|0)==(0); - if ($25) { - $26 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $26; - $112 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($112|0); - } - $27 = HEAP32[$1>>2]|0; - $28 = HEAP32[$pTab>>2]|0; - $29 = (_sqlite3GetVTable($27,$28)|0); - $30 = (($29) + 8|0); - $31 = HEAP32[$30>>2]|0; - HEAP32[$pVtab>>2] = $31; - $32 = HEAP32[$pVtab>>2]|0; - $33 = HEAP32[$32>>2]|0; - HEAP32[$pMod>>2] = $33; - $34 = HEAP32[$pMod>>2]|0; - $35 = (($34) + 72|0); - $36 = HEAP32[$35>>2]|0; - $37 = ($36|0)==(0|0); - if ($37) { - $38 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $38; - $112 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($112|0); - } - $39 = HEAP32[$1>>2]|0; - $40 = HEAP32[$2>>2]|0; - $41 = (($40) + 24|0); - $42 = HEAP32[$41>>2]|0; - $43 = (_sqlite3DbStrDup($39,$42)|0); - HEAP32[$zLowerName>>2] = $43; - $44 = HEAP32[$zLowerName>>2]|0; - $45 = ($44|0)!=(0|0); - if ($45) { - $46 = HEAP32[$zLowerName>>2]|0; - HEAP32[$z>>2] = $46; - while(1) { - $47 = HEAP32[$z>>2]|0; - $48 = HEAP8[$47>>0]|0; - $49 = ($48<<24>>24)!=(0); - if (!($49)) { - break; - } - $50 = HEAP32[$z>>2]|0; - $51 = HEAP8[$50>>0]|0; - $52 = $51&255; - $53 = (696 + ($52)|0); - $54 = HEAP8[$53>>0]|0; - $55 = HEAP32[$z>>2]|0; - HEAP8[$55>>0] = $54; - $56 = HEAP32[$z>>2]|0; - $57 = (($56) + 1|0); - HEAP32[$z>>2] = $57; - } - $58 = HEAP32[$pMod>>2]|0; - $59 = (($58) + 72|0); - $60 = HEAP32[$59>>2]|0; - $61 = HEAP32[$pVtab>>2]|0; - $62 = HEAP32[$3>>2]|0; - $63 = HEAP32[$zLowerName>>2]|0; - HEAP32[$5>>2] = $xFunc; - $64 = HEAP32[$5>>2]|0; - $65 = (FUNCTION_TABLE_iiiiii[$60 & 15]($61,$62,$63,$64,$pArg)|0); - HEAP32[$rc>>2] = $65; - $66 = HEAP32[$1>>2]|0; - $67 = HEAP32[$zLowerName>>2]|0; - _sqlite3DbFree($66,$67); - } - $68 = HEAP32[$rc>>2]|0; - $69 = ($68|0)==(0); - if ($69) { - $70 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $70; - $112 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($112|0); - } - $71 = HEAP32[$1>>2]|0; - $72 = HEAP32[$2>>2]|0; - $73 = (($72) + 24|0); - $74 = HEAP32[$73>>2]|0; - $75 = (_sqlite3Strlen30($74)|0); - $76 = (36 + ($75))|0; - $77 = (($76) + 1)|0; - $78 = (_sqlite3DbMallocZero($71,$77)|0); - HEAP32[$pNew>>2] = $78; - $79 = HEAP32[$pNew>>2]|0; - $80 = ($79|0)==(0|0); - if ($80) { - $81 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $81; - $112 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($112|0); - } else { - $82 = HEAP32[$pNew>>2]|0; - $83 = HEAP32[$2>>2]|0; - dest=$82+0|0; src=$83+0|0; stop=dest+36|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $84 = HEAP32[$pNew>>2]|0; - $85 = (($84) + 36|0); - $86 = HEAP32[$pNew>>2]|0; - $87 = (($86) + 24|0); - HEAP32[$87>>2] = $85; - $88 = HEAP32[$pNew>>2]|0; - $89 = (($88) + 24|0); - $90 = HEAP32[$89>>2]|0; - $91 = HEAP32[$2>>2]|0; - $92 = (($91) + 24|0); - $93 = HEAP32[$92>>2]|0; - $94 = HEAP32[$2>>2]|0; - $95 = (($94) + 24|0); - $96 = HEAP32[$95>>2]|0; - $97 = (_sqlite3Strlen30($96)|0); - $98 = (($97) + 1)|0; - _memcpy(($90|0),($93|0),($98|0))|0; - $99 = HEAP32[$xFunc>>2]|0; - $100 = HEAP32[$pNew>>2]|0; - $101 = (($100) + 12|0); - HEAP32[$101>>2] = $99; - $102 = HEAP32[$pArg>>2]|0; - $103 = HEAP32[$pNew>>2]|0; - $104 = (($103) + 4|0); - HEAP32[$104>>2] = $102; - $105 = HEAP32[$pNew>>2]|0; - $106 = (($105) + 2|0); - $107 = HEAP16[$106>>1]|0; - $108 = $107&65535; - $109 = $108 | 16; - $110 = $109&65535; - HEAP16[$106>>1] = $110; - $111 = HEAP32[$pNew>>2]|0; - HEAP32[$0>>2] = $111; - $112 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($112|0); - } - return 0|0; -} -function _sqlite3CodeSubselect($pParse,$pExpr,$rMayHaveNull,$isRowid) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - $rMayHaveNull = $rMayHaveNull|0; - $isRowid = $isRowid|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; - var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr = 0, $affinity = 0; - var $cond = 0, $dest = 0, $dest1 = 0, $i = 0, $iValToIns = 0, $pE2 = 0, $pEList = 0, $pItem = 0, $pKeyInfo = 0, $pLeft = 0, $pList = 0, $pSel = 0, $r1 = 0, $r2 = 0, $r3 = 0, $rReg = 0, $testAddr = 0, $v = 0, $vararg_buffer = 0, $vararg_ptr1 = 0; - var $vararg_ptr2 = 0, $zMsg = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 144|0; - $vararg_buffer = sp; - $0 = sp + 136|0; - $1 = sp + 132|0; - $2 = sp + 128|0; - $3 = sp + 124|0; - $4 = sp + 120|0; - $testAddr = sp + 116|0; - $rReg = sp + 112|0; - $v = sp + 108|0; - $zMsg = sp + 104|0; - $affinity = sp + 140|0; - $addr = sp + 100|0; - $pLeft = sp + 96|0; - $pKeyInfo = sp + 92|0; - $dest = sp + 72|0; - $pEList = sp + 68|0; - $i = sp + 64|0; - $pList = sp + 60|0; - $pItem = sp + 56|0; - $r1 = sp + 52|0; - $r2 = sp + 48|0; - $r3 = sp + 44|0; - $pE2 = sp + 40|0; - $iValToIns = sp + 36|0; - $pSel = sp + 32|0; - $dest1 = sp + 12|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pExpr; - HEAP32[$3>>2] = $rMayHaveNull; - HEAP32[$4>>2] = $isRowid; - HEAP32[$testAddr>>2] = -1; - HEAP32[$rReg>>2] = 0; - $5 = HEAP32[$1>>2]|0; - $6 = (_sqlite3GetVdbe($5)|0); - HEAP32[$v>>2] = $6; - $7 = HEAP32[$v>>2]|0; - $8 = ($7|0)==(0|0); - if ($8) { - HEAP32[$0>>2] = 0; - $237 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($237|0); - } - $9 = HEAP32[$1>>2]|0; - _sqlite3ExprCachePush($9); - $10 = HEAP32[$2>>2]|0; - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - $13 = $12 & 32; - $14 = ($13|0)!=(0); - if (!($14)) { - $15 = HEAP32[$1>>2]|0; - $16 = (_sqlite3CodeOnce($15)|0); - HEAP32[$testAddr>>2] = $16; - } - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 450|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = ($20|0)==(2); - if ($21) { - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$testAddr>>2]|0; - $25 = ($24|0)>=(0); - $26 = $25 ? 1472 : 19184; - $27 = HEAP32[$2>>2]|0; - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = ($29|0)==(75); - $31 = $30 ? 19200 : 19208; - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 468|0); - $34 = HEAP32[$33>>2]|0; - HEAP32[$vararg_buffer>>2] = $26; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $31; - $vararg_ptr2 = (($vararg_buffer) + 8|0); - HEAP32[$vararg_ptr2>>2] = $34; - $35 = (_sqlite3MPrintf($23,19152,$vararg_buffer)|0); - HEAP32[$zMsg>>2] = $35; - $36 = HEAP32[$v>>2]|0; - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 464|0); - $39 = HEAP32[$38>>2]|0; - $40 = HEAP32[$zMsg>>2]|0; - (_sqlite3VdbeAddOp4($36,157,$39,0,0,$40,-1)|0); - } - $41 = HEAP32[$2>>2]|0; - $42 = HEAP8[$41>>0]|0; - $43 = $42&255; - $cond = ($43|0)==(75); - $44 = HEAP32[$2>>2]|0; - do { - if ($cond) { - $45 = (($44) + 12|0); - $46 = HEAP32[$45>>2]|0; - HEAP32[$pLeft>>2] = $46; - HEAP32[$pKeyInfo>>2] = 0; - $47 = HEAP32[$3>>2]|0; - $48 = ($47|0)!=(0); - if ($48) { - $49 = HEAP32[$v>>2]|0; - $50 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($49,28,0,$50)|0); - } - $51 = HEAP32[$pLeft>>2]|0; - $52 = (_sqlite3ExprAffinity($51)|0); - HEAP8[$affinity>>0] = $52; - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + 68|0); - $55 = HEAP32[$54>>2]|0; - $56 = (($55) + 1)|0; - HEAP32[$54>>2] = $56; - $57 = HEAP32[$2>>2]|0; - $58 = (($57) + 28|0); - HEAP32[$58>>2] = $55; - $59 = HEAP32[$v>>2]|0; - $60 = HEAP32[$2>>2]|0; - $61 = (($60) + 28|0); - $62 = HEAP32[$61>>2]|0; - $63 = HEAP32[$4>>2]|0; - $64 = ($63|0)!=(0); - $65 = $64 ^ 1; - $66 = $65&1; - $67 = (_sqlite3VdbeAddOp2($59,55,$62,$66)|0); - HEAP32[$addr>>2] = $67; - $68 = HEAP32[$4>>2]|0; - $69 = ($68|0)!=(0); - if ($69) { - $73 = 0; - } else { - $70 = HEAP32[$1>>2]|0; - $71 = HEAP32[$70>>2]|0; - $72 = (_sqlite3KeyInfoAlloc($71,1,1)|0); - $73 = $72; - } - HEAP32[$pKeyInfo>>2] = $73; - $74 = HEAP32[$2>>2]|0; - $75 = (($74) + 4|0); - $76 = HEAP32[$75>>2]|0; - $77 = $76 & 2048; - $78 = ($77|0)!=(0); - $79 = HEAP32[$2>>2]|0; - do { - if ($78) { - $80 = (($79) + 28|0); - $81 = HEAP32[$80>>2]|0; - _sqlite3SelectDestInit($dest,11,$81); - $82 = HEAP8[$affinity>>0]|0; - $83 = (($dest) + 1|0); - HEAP8[$83>>0] = $82; - $84 = HEAP32[$2>>2]|0; - $85 = (($84) + 20|0); - $86 = HEAP32[$85>>2]|0; - $87 = (($86) + 8|0); - HEAP32[$87>>2] = 0; - $88 = HEAP32[$1>>2]|0; - $89 = HEAP32[$2>>2]|0; - $90 = (($89) + 20|0); - $91 = HEAP32[$90>>2]|0; - $92 = (_sqlite3Select($88,$91,$dest)|0); - $93 = ($92|0)!=(0); - if (!($93)) { - $95 = HEAP32[$2>>2]|0; - $96 = (($95) + 20|0); - $97 = HEAP32[$96>>2]|0; - $98 = HEAP32[$97>>2]|0; - HEAP32[$pEList>>2] = $98; - $99 = HEAP32[$1>>2]|0; - $100 = HEAP32[$2>>2]|0; - $101 = (($100) + 12|0); - $102 = HEAP32[$101>>2]|0; - $103 = HEAP32[$pEList>>2]|0; - $104 = (($103) + 4|0); - $105 = HEAP32[$104>>2]|0; - $106 = HEAP32[$105>>2]|0; - $107 = (_sqlite3BinaryCompareCollSeq($99,$102,$106)|0); - $108 = HEAP32[$pKeyInfo>>2]|0; - $109 = (($108) + 20|0); - HEAP32[$109>>2] = $107; - break; - } - $94 = HEAP32[$pKeyInfo>>2]|0; - _sqlite3KeyInfoUnref($94); - HEAP32[$0>>2] = 0; - $237 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($237|0); - } else { - $110 = (($79) + 20|0); - $111 = HEAP32[$110>>2]|0; - $112 = ($111|0)!=(0|0); - if ($112) { - $113 = HEAP32[$2>>2]|0; - $114 = (($113) + 20|0); - $115 = HEAP32[$114>>2]|0; - HEAP32[$pList>>2] = $115; - $116 = HEAP8[$affinity>>0]|0; - $117 = ($116<<24>>24)!=(0); - if (!($117)) { - HEAP8[$affinity>>0] = 98; - } - $118 = HEAP32[$pKeyInfo>>2]|0; - $119 = ($118|0)!=(0|0); - if ($119) { - $120 = HEAP32[$1>>2]|0; - $121 = HEAP32[$2>>2]|0; - $122 = (($121) + 12|0); - $123 = HEAP32[$122>>2]|0; - $124 = (_sqlite3ExprCollSeq($120,$123)|0); - $125 = HEAP32[$pKeyInfo>>2]|0; - $126 = (($125) + 20|0); - HEAP32[$126>>2] = $124; - } - $127 = HEAP32[$1>>2]|0; - $128 = (_sqlite3GetTempReg($127)|0); - HEAP32[$r1>>2] = $128; - $129 = HEAP32[$1>>2]|0; - $130 = (_sqlite3GetTempReg($129)|0); - HEAP32[$r2>>2] = $130; - $131 = HEAP32[$v>>2]|0; - $132 = HEAP32[$r2>>2]|0; - (_sqlite3VdbeAddOp2($131,28,0,$132)|0); - $133 = HEAP32[$pList>>2]|0; - $134 = HEAP32[$133>>2]|0; - HEAP32[$i>>2] = $134; - $135 = HEAP32[$pList>>2]|0; - $136 = (($135) + 4|0); - $137 = HEAP32[$136>>2]|0; - HEAP32[$pItem>>2] = $137; - while(1) { - $138 = HEAP32[$i>>2]|0; - $139 = ($138|0)>(0); - if (!($139)) { - break; - } - $140 = HEAP32[$pItem>>2]|0; - $141 = HEAP32[$140>>2]|0; - HEAP32[$pE2>>2] = $141; - $142 = HEAP32[$testAddr>>2]|0; - $143 = ($142|0)>=(0); - if ($143) { - $144 = HEAP32[$pE2>>2]|0; - $145 = (_sqlite3ExprIsConstant($144)|0); - $146 = ($145|0)!=(0); - if (!($146)) { - $147 = HEAP32[$v>>2]|0; - $148 = HEAP32[$testAddr>>2]|0; - _sqlite3VdbeChangeToNoop($147,$148); - HEAP32[$testAddr>>2] = -1; - } - } - $149 = HEAP32[$4>>2]|0; - $150 = ($149|0)!=(0); - if ($150) { - $151 = HEAP32[$pE2>>2]|0; - $152 = (_sqlite3ExprIsInteger($151,$iValToIns)|0); - $153 = ($152|0)!=(0); - if ($153) { - $154 = HEAP32[$v>>2]|0; - $155 = HEAP32[$2>>2]|0; - $156 = (($155) + 28|0); - $157 = HEAP32[$156>>2]|0; - $158 = HEAP32[$r2>>2]|0; - $159 = HEAP32[$iValToIns>>2]|0; - (_sqlite3VdbeAddOp3($154,73,$157,$158,$159)|0); - } else { - label = 29; - } - } else { - label = 29; - } - do { - if ((label|0) == 29) { - label = 0; - $160 = HEAP32[$1>>2]|0; - $161 = HEAP32[$pE2>>2]|0; - $162 = HEAP32[$r1>>2]|0; - $163 = (_sqlite3ExprCodeTarget($160,$161,$162)|0); - HEAP32[$r3>>2] = $163; - $164 = HEAP32[$4>>2]|0; - $165 = ($164|0)!=(0); - $166 = HEAP32[$v>>2]|0; - $167 = HEAP32[$r3>>2]|0; - if ($165) { - $168 = HEAP32[$v>>2]|0; - $169 = (_sqlite3VdbeCurrentAddr($168)|0); - $170 = (($169) + 2)|0; - (_sqlite3VdbeAddOp2($166,38,$167,$170)|0); - $171 = HEAP32[$v>>2]|0; - $172 = HEAP32[$2>>2]|0; - $173 = (($172) + 28|0); - $174 = HEAP32[$173>>2]|0; - $175 = HEAP32[$r2>>2]|0; - $176 = HEAP32[$r3>>2]|0; - (_sqlite3VdbeAddOp3($171,70,$174,$175,$176)|0); - break; - } else { - $177 = HEAP32[$r2>>2]|0; - (_sqlite3VdbeAddOp4($166,48,$167,1,$177,$affinity,1)|0); - $178 = HEAP32[$1>>2]|0; - $179 = HEAP32[$r3>>2]|0; - _sqlite3ExprCacheAffinityChange($178,$179,1); - $180 = HEAP32[$v>>2]|0; - $181 = HEAP32[$2>>2]|0; - $182 = (($181) + 28|0); - $183 = HEAP32[$182>>2]|0; - $184 = HEAP32[$r2>>2]|0; - (_sqlite3VdbeAddOp2($180,107,$183,$184)|0); - break; - } - } - } while(0); - $185 = HEAP32[$i>>2]|0; - $186 = (($185) + -1)|0; - HEAP32[$i>>2] = $186; - $187 = HEAP32[$pItem>>2]|0; - $188 = (($187) + 20|0); - HEAP32[$pItem>>2] = $188; - } - $189 = HEAP32[$1>>2]|0; - $190 = HEAP32[$r1>>2]|0; - _sqlite3ReleaseTempReg($189,$190); - $191 = HEAP32[$1>>2]|0; - $192 = HEAP32[$r2>>2]|0; - _sqlite3ReleaseTempReg($191,$192); - } - } - } while(0); - $193 = HEAP32[$pKeyInfo>>2]|0; - $194 = ($193|0)!=(0|0); - if ($194) { - $195 = HEAP32[$v>>2]|0; - $196 = HEAP32[$addr>>2]|0; - $197 = HEAP32[$pKeyInfo>>2]|0; - _sqlite3VdbeChangeP4($195,$196,$197,-6); - } - } else { - $198 = (($44) + 20|0); - $199 = HEAP32[$198>>2]|0; - HEAP32[$pSel>>2] = $199; - $200 = HEAP32[$1>>2]|0; - $201 = (($200) + 72|0); - $202 = HEAP32[$201>>2]|0; - $203 = (($202) + 1)|0; - HEAP32[$201>>2] = $203; - _sqlite3SelectDestInit($dest1,0,$203); - $204 = HEAP32[$2>>2]|0; - $205 = HEAP8[$204>>0]|0; - $206 = $205&255; - $207 = ($206|0)==(119); - if ($207) { - HEAP8[$dest1>>0] = 10; - $208 = HEAP32[$v>>2]|0; - $209 = (($dest1) + 4|0); - $210 = HEAP32[$209>>2]|0; - (_sqlite3VdbeAddOp2($208,28,0,$210)|0); - } else { - HEAP8[$dest1>>0] = 3; - $211 = HEAP32[$v>>2]|0; - $212 = (($dest1) + 4|0); - $213 = HEAP32[$212>>2]|0; - (_sqlite3VdbeAddOp2($211,25,0,$213)|0); - } - $214 = HEAP32[$1>>2]|0; - $215 = HEAP32[$214>>2]|0; - $216 = HEAP32[$pSel>>2]|0; - $217 = (($216) + 60|0); - $218 = HEAP32[$217>>2]|0; - _sqlite3ExprDelete($215,$218); - $219 = HEAP32[$1>>2]|0; - $220 = (_sqlite3PExpr($219,132,0,0,((10056 + 8|0)))|0); - $221 = HEAP32[$pSel>>2]|0; - $222 = (($221) + 60|0); - HEAP32[$222>>2] = $220; - $223 = HEAP32[$pSel>>2]|0; - $224 = (($223) + 8|0); - HEAP32[$224>>2] = 0; - $225 = HEAP32[$1>>2]|0; - $226 = HEAP32[$pSel>>2]|0; - $227 = (_sqlite3Select($225,$226,$dest1)|0); - $228 = ($227|0)!=(0); - if (!($228)) { - $229 = (($dest1) + 4|0); - $230 = HEAP32[$229>>2]|0; - HEAP32[$rReg>>2] = $230; - break; - } - HEAP32[$0>>2] = 0; - $237 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($237|0); - } - } while(0); - $231 = HEAP32[$testAddr>>2]|0; - $232 = ($231|0)>=(0); - if ($232) { - $233 = HEAP32[$v>>2]|0; - $234 = HEAP32[$testAddr>>2]|0; - _sqlite3VdbeJumpHere($233,$234); - } - $235 = HEAP32[$1>>2]|0; - _sqlite3ExprCachePop($235); - $236 = HEAP32[$rReg>>2]|0; - HEAP32[$0>>2] = $236; - $237 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($237|0); -} -function _exprToRegister($p,$iReg) { - $p = $p|0; - $iReg = $iReg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $iReg; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP8[$2>>0]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 38|0); - HEAP8[$5>>0] = $3; - $6 = HEAP32[$0>>2]|0; - HEAP8[$6>>0] = -97; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 28|0); - HEAP32[$9>>2] = $7; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - $13 = $12 & -4097; - HEAP32[$11>>2] = $13; - STACKTOP = sp;return; -} -function _sqlite3CodeOnce($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $v = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3GetVdbe($1)|0); - HEAP32[$v>>2] = $2; - $3 = HEAP32[$v>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 80|0); - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + 1)|0; - HEAP32[$5>>2] = $7; - $8 = (_sqlite3VdbeAddOp1($3,43,$6)|0); - STACKTOP = sp;return ($8|0); -} -function _sqlite3SelectDestInit($pDest,$eDest,$iParm) { - $pDest = $pDest|0; - $eDest = $eDest|0; - $iParm = $iParm|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $pDest; - HEAP32[$1>>2] = $eDest; - HEAP32[$2>>2] = $iParm; - $3 = HEAP32[$1>>2]|0; - $4 = $3&255; - $5 = HEAP32[$0>>2]|0; - HEAP8[$5>>0] = $4; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 4|0); - HEAP32[$8>>2] = $6; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 1|0); - HEAP8[$10>>0] = 0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 8|0); - HEAP32[$12>>2] = 0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 12|0); - HEAP32[$14>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3BinaryCompareCollSeq($pParse,$pLeft,$pRight) { - $pParse = $pParse|0; - $pLeft = $pLeft|0; - $pRight = $pRight|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pColl = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pColl = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pLeft; - HEAP32[$2>>2] = $pRight; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 4|0); - $5 = HEAP32[$4>>2]|0; - $6 = $5 & 256; - $7 = ($6|0)!=(0); - if ($7) { - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (_sqlite3ExprCollSeq($8,$9)|0); - HEAP32[$pColl>>2] = $10; - $29 = HEAP32[$pColl>>2]|0; - STACKTOP = sp;return ($29|0); - } - $11 = HEAP32[$2>>2]|0; - $12 = ($11|0)!=(0|0); - if ($12) { - $13 = HEAP32[$2>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - $16 = $15 & 256; - $17 = ($16|0)!=(0); - if ($17) { - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$2>>2]|0; - $20 = (_sqlite3ExprCollSeq($18,$19)|0); - HEAP32[$pColl>>2] = $20; - $29 = HEAP32[$pColl>>2]|0; - STACKTOP = sp;return ($29|0); - } - } - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$1>>2]|0; - $23 = (_sqlite3ExprCollSeq($21,$22)|0); - HEAP32[$pColl>>2] = $23; - $24 = HEAP32[$pColl>>2]|0; - $25 = ($24|0)!=(0|0); - if ($25) { - $29 = HEAP32[$pColl>>2]|0; - STACKTOP = sp;return ($29|0); - } - $26 = HEAP32[$0>>2]|0; - $27 = HEAP32[$2>>2]|0; - $28 = (_sqlite3ExprCollSeq($26,$27)|0); - HEAP32[$pColl>>2] = $28; - $29 = HEAP32[$pColl>>2]|0; - STACKTOP = sp;return ($29|0); -} -function _sqlite3ExprCodeAtInit($pParse,$pExpr,$regDest,$reusable) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - $regDest = $regDest|0; - $reusable = $reusable|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $p = 0, $pItem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 20|0; - $p = sp + 4|0; - $pItem = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pExpr; - HEAP32[$2>>2] = $regDest; - HEAP8[$3>>0] = $reusable; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 316|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$p>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (_sqlite3ExprDup($8,$9,0)|0); - HEAP32[$1>>2] = $10; - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$p>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (_sqlite3ExprListAppend($11,$12,$13)|0); - HEAP32[$p>>2] = $14; - $15 = HEAP32[$p>>2]|0; - $16 = ($15|0)!=(0|0); - if (!($16)) { - $37 = HEAP32[$p>>2]|0; - $38 = HEAP32[$0>>2]|0; - $39 = (($38) + 316|0); - HEAP32[$39>>2] = $37; - STACKTOP = sp;return; - } - $17 = HEAP32[$p>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = (($18) - 1)|0; - $20 = HEAP32[$p>>2]|0; - $21 = (($20) + 4|0); - $22 = HEAP32[$21>>2]|0; - $23 = (($22) + (($19*20)|0)|0); - HEAP32[$pItem>>2] = $23; - $24 = HEAP32[$2>>2]|0; - $25 = HEAP32[$pItem>>2]|0; - $26 = (($25) + 16|0); - HEAP32[$26>>2] = $24; - $27 = HEAP8[$3>>0]|0; - $28 = $27&255; - $29 = HEAP32[$pItem>>2]|0; - $30 = (($29) + 13|0); - $31 = $28&255; - $32 = HEAP8[$30>>0]|0; - $33 = $31 & 1; - $34 = ($33 << 2)&255; - $35 = $32 & -5; - $36 = $35 | $34; - HEAP8[$30>>0] = $36; - $37 = HEAP32[$p>>2]|0; - $38 = HEAP32[$0>>2]|0; - $39 = (($38) + 316|0); - HEAP32[$39>>2] = $37; - STACKTOP = sp;return; -} -function _sqlite3VdbeGetOp($p,$addr) { - $p = $p|0; - $addr = $addr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $addr; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)<(0); - if ($4) { - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 32|0); - $7 = HEAP32[$6>>2]|0; - $8 = (($7) - 1)|0; - HEAP32[$2>>2] = $8; - } - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + 64|0); - $12 = HEAP8[$11>>0]|0; - $13 = ($12<<24>>24)!=(0); - if ($13) { - HEAP32[$0>>2] = 19216; - $19 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($19|0); - } else { - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + (($14*20)|0)|0); - HEAP32[$0>>2] = $18; - $19 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($19|0); - } - return 0|0; -} -function _exprIsConst($p,$initFlag) { - $p = $p|0; - $initFlag = $initFlag|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $w = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $w = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $initFlag; - ;HEAP32[$w+0>>2]=0|0;HEAP32[$w+4>>2]=0|0;HEAP32[$w+8>>2]=0|0;HEAP32[$w+12>>2]=0|0;HEAP32[$w+16>>2]=0|0;HEAP32[$w+20>>2]=0|0; - $2 = HEAP32[$1>>2]|0; - $3 = (($w) + 20|0); - HEAP32[$3>>2] = $2; - HEAP32[$w>>2] = 43; - $4 = (($w) + 4|0); - HEAP32[$4>>2] = 44; - $5 = HEAP32[$0>>2]|0; - (_sqlite3WalkExpr($w,$5)|0); - $6 = (($w) + 20|0); - $7 = HEAP32[$6>>2]|0; - STACKTOP = sp;return ($7|0); -} -function _exprNodeIsConstant($pWalker,$pExpr) { - $pWalker = $pWalker|0; - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$1>>2] = $pWalker; - HEAP32[$2>>2] = $pExpr; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 20|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)==(3); - if ($6) { - $7 = HEAP32[$2>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = $9 & 1; - $11 = ($10|0)!=(0); - if ($11) { - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 20|0); - HEAP32[$13>>2] = 0; - HEAP32[$0>>2] = 2; - } else { - label = 4; - } - } else { - label = 4; - } - L4: do { - if ((label|0) == 4) { - $14 = HEAP32[$2>>2]|0; - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - switch ($16|0) { - case 153: { - label = 5; - break; - } - case 156: case 155: case 154: case 27: { - break; - } - default: { - HEAP32[$0>>2] = 0; - break L4; - } - } - do { - if ((label|0) == 5) { - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 20|0); - $19 = HEAP32[$18>>2]|0; - $20 = ($19|0)==(2); - if (!($20)) { - $21 = HEAP32[$2>>2]|0; - $22 = (($21) + 4|0); - $23 = HEAP32[$22>>2]|0; - $24 = $23 & 524288; - $25 = ($24|0)!=(0); - if (!($25)) { - break; - } - } - HEAP32[$0>>2] = 0; - break L4; - } - } while(0); - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 20|0); - HEAP32[$27>>2] = 0; - HEAP32[$0>>2] = 2; - } - } while(0); - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); -} -function _selectNodeIsConstant($pWalker,$NotUsed) { - $pWalker = $pWalker|0; - $NotUsed = $NotUsed|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pWalker; - HEAP32[$1>>2] = $NotUsed; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 20|0); - HEAP32[$3>>2] = 0; - STACKTOP = sp;return 2; -} -function _dup8bytes($v,$in) { - $v = $v|0; - $in = $in|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $out = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $out = sp; - HEAP32[$0>>2] = $v; - HEAP32[$1>>2] = $in; - $2 = HEAP32[$0>>2]|0; - $3 = (_sqlite3VdbeDb($2)|0); - $4 = (_sqlite3DbMallocRaw($3,8)|0); - HEAP32[$out>>2] = $4; - $5 = HEAP32[$out>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - $9 = HEAP32[$out>>2]|0; - STACKTOP = sp;return ($9|0); - } - $7 = HEAP32[$out>>2]|0; - $8 = HEAP32[$1>>2]|0; - ;HEAP8[$7+0>>0]=HEAP8[$8+0>>0]|0;HEAP8[$7+1>>0]=HEAP8[$8+1>>0]|0;HEAP8[$7+2>>0]=HEAP8[$8+2>>0]|0;HEAP8[$7+3>>0]=HEAP8[$8+3>>0]|0;HEAP8[$7+4>>0]=HEAP8[$8+4>>0]|0;HEAP8[$7+5>>0]=HEAP8[$8+5>>0]|0;HEAP8[$7+6>>0]=HEAP8[$8+6>>0]|0;HEAP8[$7+7>>0]=HEAP8[$8+7>>0]|0; - $9 = HEAP32[$out>>2]|0; - STACKTOP = sp;return ($9|0); -} -function _sqlite3ExprCachePinRegister($pParse,$iReg) { - $pParse = $pParse|0; - $iReg = $iReg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $i = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iReg; - HEAP32[$i>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 116|0); - HEAP32[$p>>2] = $3; - while(1) { - $4 = HEAP32[$i>>2]|0; - $5 = ($4|0)<(10); - if (!($5)) { - break; - } - $6 = HEAP32[$p>>2]|0; - $7 = (($6) + 12|0); - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = ($8|0)==($9|0); - if ($10) { - $11 = HEAP32[$p>>2]|0; - $12 = (($11) + 6|0); - HEAP8[$12>>0] = 0; - } - $13 = HEAP32[$i>>2]|0; - $14 = (($13) + 1)|0; - HEAP32[$i>>2] = $14; - $15 = HEAP32[$p>>2]|0; - $16 = (($15) + 20|0); - HEAP32[$p>>2] = $16; - } - STACKTOP = sp;return; -} -function _sqlite3ExprCacheStore($pParse,$iTab,$iCol,$iReg) { - $pParse = $pParse|0; - $iTab = $iTab|0; - $iCol = $iCol|0; - $iReg = $iReg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $i = 0, $idxLru = 0, $minLru = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $i = sp + 12|0; - $minLru = sp + 8|0; - $idxLru = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iTab; - HEAP32[$2>>2] = $iCol; - HEAP32[$3>>2] = $iReg; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = (($5) + 60|0); - $7 = HEAP16[$6>>1]|0; - $8 = $7&65535; - $9 = $8 & 2; - $10 = ($9|0)!=(0); - if ($10) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 116|0); - HEAP32[$p>>2] = $12; - while(1) { - $13 = HEAP32[$i>>2]|0; - $14 = ($13|0)<(10); - if (!($14)) { - break; - } - $15 = HEAP32[$p>>2]|0; - $16 = (($15) + 12|0); - $17 = HEAP32[$16>>2]|0; - $18 = ($17|0)==(0); - if ($18) { - label = 5; - break; - } - $41 = HEAP32[$i>>2]|0; - $42 = (($41) + 1)|0; - HEAP32[$i>>2] = $42; - $43 = HEAP32[$p>>2]|0; - $44 = (($43) + 20|0); - HEAP32[$p>>2] = $44; - } - if ((label|0) == 5) { - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 100|0); - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$p>>2]|0; - $23 = (($22) + 8|0); - HEAP32[$23>>2] = $21; - $24 = HEAP32[$1>>2]|0; - $25 = HEAP32[$p>>2]|0; - HEAP32[$25>>2] = $24; - $26 = HEAP32[$2>>2]|0; - $27 = $26&65535; - $28 = HEAP32[$p>>2]|0; - $29 = (($28) + 4|0); - HEAP16[$29>>1] = $27; - $30 = HEAP32[$3>>2]|0; - $31 = HEAP32[$p>>2]|0; - $32 = (($31) + 12|0); - HEAP32[$32>>2] = $30; - $33 = HEAP32[$p>>2]|0; - $34 = (($33) + 6|0); - HEAP8[$34>>0] = 0; - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + 104|0); - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + 1)|0; - HEAP32[$36>>2] = $38; - $39 = HEAP32[$p>>2]|0; - $40 = (($39) + 16|0); - HEAP32[$40>>2] = $37; - STACKTOP = sp;return; - } - HEAP32[$minLru>>2] = 2147483647; - HEAP32[$idxLru>>2] = -1; - HEAP32[$i>>2] = 0; - $45 = HEAP32[$0>>2]|0; - $46 = (($45) + 116|0); - HEAP32[$p>>2] = $46; - while(1) { - $47 = HEAP32[$i>>2]|0; - $48 = ($47|0)<(10); - if (!($48)) { - break; - } - $49 = HEAP32[$p>>2]|0; - $50 = (($49) + 16|0); - $51 = HEAP32[$50>>2]|0; - $52 = HEAP32[$minLru>>2]|0; - $53 = ($51|0)<($52|0); - if ($53) { - $54 = HEAP32[$i>>2]|0; - HEAP32[$idxLru>>2] = $54; - $55 = HEAP32[$p>>2]|0; - $56 = (($55) + 16|0); - $57 = HEAP32[$56>>2]|0; - HEAP32[$minLru>>2] = $57; - } - $58 = HEAP32[$i>>2]|0; - $59 = (($58) + 1)|0; - HEAP32[$i>>2] = $59; - $60 = HEAP32[$p>>2]|0; - $61 = (($60) + 20|0); - HEAP32[$p>>2] = $61; - } - $62 = HEAP32[$idxLru>>2]|0; - $63 = ($62|0)>=(0); - if (!($63)) { - STACKTOP = sp;return; - } - $64 = HEAP32[$idxLru>>2]|0; - $65 = HEAP32[$0>>2]|0; - $66 = (($65) + 116|0); - $67 = (($66) + (($64*20)|0)|0); - HEAP32[$p>>2] = $67; - $68 = HEAP32[$0>>2]|0; - $69 = (($68) + 100|0); - $70 = HEAP32[$69>>2]|0; - $71 = HEAP32[$p>>2]|0; - $72 = (($71) + 8|0); - HEAP32[$72>>2] = $70; - $73 = HEAP32[$1>>2]|0; - $74 = HEAP32[$p>>2]|0; - HEAP32[$74>>2] = $73; - $75 = HEAP32[$2>>2]|0; - $76 = $75&65535; - $77 = HEAP32[$p>>2]|0; - $78 = (($77) + 4|0); - HEAP16[$78>>1] = $76; - $79 = HEAP32[$3>>2]|0; - $80 = HEAP32[$p>>2]|0; - $81 = (($80) + 12|0); - HEAP32[$81>>2] = $79; - $82 = HEAP32[$p>>2]|0; - $83 = (($82) + 6|0); - HEAP8[$83>>0] = 0; - $84 = HEAP32[$0>>2]|0; - $85 = (($84) + 104|0); - $86 = HEAP32[$85>>2]|0; - $87 = (($86) + 1)|0; - HEAP32[$85>>2] = $87; - $88 = HEAP32[$p>>2]|0; - $89 = (($88) + 16|0); - HEAP32[$89>>2] = $86; - STACKTOP = sp;return; -} -function _sqlite3CompareAffinity($pExpr,$aff2) { - $pExpr = $pExpr|0; - $aff2 = $aff2|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aff1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 6|0; - $1 = sp; - $2 = sp + 5|0; - $aff1 = sp + 4|0; - HEAP32[$1>>2] = $pExpr; - HEAP8[$2>>0] = $aff2; - $3 = HEAP32[$1>>2]|0; - $4 = (_sqlite3ExprAffinity($3)|0); - HEAP8[$aff1>>0] = $4; - $5 = HEAP8[$aff1>>0]|0; - $6 = $5 << 24 >> 24; - $7 = ($6|0)!=(0); - if ($7) { - $8 = HEAP8[$2>>0]|0; - $9 = $8 << 24 >> 24; - $10 = ($9|0)!=(0); - if ($10) { - $11 = HEAP8[$aff1>>0]|0; - $12 = $11 << 24 >> 24; - $13 = ($12|0)>=(99); - if (!($13)) { - $14 = HEAP8[$2>>0]|0; - $15 = $14 << 24 >> 24; - $16 = ($15|0)>=(99); - if (!($16)) { - HEAP8[$0>>0] = 98; - $27 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($27|0); - } - } - HEAP8[$0>>0] = 99; - $27 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($27|0); - } - } - $17 = HEAP8[$aff1>>0]|0; - $18 = ($17<<24>>24)!=(0); - if (!($18)) { - $19 = HEAP8[$2>>0]|0; - $20 = ($19<<24>>24)!=(0); - if (!($20)) { - HEAP8[$0>>0] = 98; - $27 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($27|0); - } - } - $21 = HEAP8[$aff1>>0]|0; - $22 = $21 << 24 >> 24; - $23 = HEAP8[$2>>0]|0; - $24 = $23 << 24 >> 24; - $25 = (($22) + ($24))|0; - $26 = $25&255; - HEAP8[$0>>0] = $26; - $27 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($27|0); -} -function _isCandidateForInOpt($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pEList = 0, $pSrc = 0; - var $pTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $pSrc = sp + 8|0; - $pEList = sp + 4|0; - $pTab = sp; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0|0); - do { - if ($3) { - HEAP32[$0>>2] = 0; - } else { - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 52|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0|0); - if ($7) { - HEAP32[$0>>2] = 0; - break; - } - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 6|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10&65535; - $12 = $11 & 5; - $13 = ($12|0)!=(0); - if ($13) { - HEAP32[$0>>2] = 0; - break; - } - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 60|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($16|0)!=(0|0); - if ($17) { - HEAP32[$0>>2] = 0; - break; - } - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 36|0); - $20 = HEAP32[$19>>2]|0; - $21 = ($20|0)!=(0|0); - if ($21) { - HEAP32[$0>>2] = 0; - break; - } - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 32|0); - $24 = HEAP32[$23>>2]|0; - HEAP32[$pSrc>>2] = $24; - $25 = HEAP32[$pSrc>>2]|0; - $26 = HEAP32[$25>>2]|0; - $27 = ($26|0)!=(1); - if ($27) { - HEAP32[$0>>2] = 0; - break; - } - $28 = HEAP32[$pSrc>>2]|0; - $29 = (($28) + 8|0); - $30 = (($29) + 20|0); - $31 = HEAP32[$30>>2]|0; - $32 = ($31|0)!=(0|0); - if ($32) { - HEAP32[$0>>2] = 0; - break; - } - $33 = HEAP32[$pSrc>>2]|0; - $34 = (($33) + 8|0); - $35 = (($34) + 16|0); - $36 = HEAP32[$35>>2]|0; - HEAP32[$pTab>>2] = $36; - $37 = HEAP32[$pTab>>2]|0; - $38 = ($37|0)==(0|0); - if ($38) { - HEAP32[$0>>2] = 0; - break; - } - $39 = HEAP32[$pTab>>2]|0; - $40 = (($39) + 44|0); - $41 = HEAP8[$40>>0]|0; - $42 = $41&255; - $43 = $42 & 16; - $44 = ($43|0)!=(0); - if ($44) { - HEAP32[$0>>2] = 0; - break; - } - $45 = HEAP32[$1>>2]|0; - $46 = HEAP32[$45>>2]|0; - HEAP32[$pEList>>2] = $46; - $47 = HEAP32[$pEList>>2]|0; - $48 = HEAP32[$47>>2]|0; - $49 = ($48|0)!=(1); - if ($49) { - HEAP32[$0>>2] = 0; - break; - } - $50 = HEAP32[$pEList>>2]|0; - $51 = (($50) + 4|0); - $52 = HEAP32[$51>>2]|0; - $53 = HEAP32[$52>>2]|0; - $54 = HEAP8[$53>>0]|0; - $55 = $54&255; - $56 = ($55|0)!=(154); - if ($56) { - HEAP32[$0>>2] = 0; - break; - } else { - HEAP32[$0>>2] = 1; - break; - } - } - } while(0); - $57 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($57|0); -} -function _sqlite3IndexAffinityOk($pExpr,$idx_affinity) { - $pExpr = $pExpr|0; - $idx_affinity = $idx_affinity|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aff = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - $2 = sp + 9|0; - $aff = sp + 8|0; - HEAP32[$1>>2] = $pExpr; - HEAP8[$2>>0] = $idx_affinity; - $3 = HEAP32[$1>>2]|0; - $4 = (_comparisonAffinity($3)|0); - HEAP8[$aff>>0] = $4; - $5 = HEAP8[$aff>>0]|0; - $6 = $5 << 24 >> 24; - if ((($6|0) == 97)) { - $7 = HEAP8[$2>>0]|0; - $8 = $7 << 24 >> 24; - $9 = ($8|0)==(97); - $10 = $9&1; - HEAP32[$0>>2] = $10; - } else if ((($6|0) == 98)) { - HEAP32[$0>>2] = 1; - } else { - $11 = HEAP8[$2>>0]|0; - $12 = $11 << 24 >> 24; - $13 = ($12|0)>=(99); - $14 = $13&1; - HEAP32[$0>>2] = $14; - } - $15 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($15|0); -} -function _binaryCompareP5($pExpr1,$pExpr2,$jumpIfNull) { - $pExpr1 = $pExpr1|0; - $pExpr2 = $pExpr2|0; - $jumpIfNull = $jumpIfNull|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aff = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - $aff = sp + 12|0; - HEAP32[$0>>2] = $pExpr1; - HEAP32[$1>>2] = $pExpr2; - HEAP32[$2>>2] = $jumpIfNull; - $3 = HEAP32[$1>>2]|0; - $4 = (_sqlite3ExprAffinity($3)|0); - HEAP8[$aff>>0] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP8[$aff>>0]|0; - $7 = (_sqlite3CompareAffinity($5,$6)|0); - $8 = $7&255; - $9 = HEAP32[$2>>2]|0; - $10 = $9&255; - $11 = $10&255; - $12 = $8 | $11; - $13 = $12&255; - HEAP8[$aff>>0] = $13; - $14 = HEAP8[$aff>>0]|0; - STACKTOP = sp;return ($14|0); -} -function _sqlite3ExprIsConstantNotJoin($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (_exprIsConst($1,3)|0); - STACKTOP = sp;return ($2|0); -} -function _collationMatch($zColl,$pIndex) { - $zColl = $zColl|0; - $pIndex = $pIndex|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $i = sp + 4|0; - $z = sp; - HEAP32[$1>>2] = $zColl; - HEAP32[$2>>2] = $pIndex; - HEAP32[$i>>2] = 0; - while(1) { - $3 = HEAP32[$i>>2]|0; - $4 = HEAP32[$2>>2]|0; - $5 = (($4) + 52|0); - $6 = HEAP16[$5>>1]|0; - $7 = $6&65535; - $8 = ($3|0)<($7|0); - if (!($8)) { - label = 7; - break; - } - $9 = HEAP32[$i>>2]|0; - $10 = HEAP32[$2>>2]|0; - $11 = (($10) + 32|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + ($9<<2)|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$z>>2] = $14; - $15 = HEAP32[$i>>2]|0; - $16 = HEAP32[$2>>2]|0; - $17 = (($16) + 4|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + ($15<<1)|0); - $20 = HEAP16[$19>>1]|0; - $21 = $20 << 16 >> 16; - $22 = ($21|0)>=(0); - if ($22) { - $23 = HEAP32[$z>>2]|0; - $24 = HEAP32[$1>>2]|0; - $25 = (_sqlite3_stricmp($23,$24)|0); - $26 = (0)==($25|0); - if ($26) { - label = 5; - break; - } - } - $27 = HEAP32[$i>>2]|0; - $28 = (($27) + 1)|0; - HEAP32[$i>>2] = $28; - } - if ((label|0) == 5) { - HEAP32[$0>>2] = 1; - $29 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($29|0); - } - else if ((label|0) == 7) { - HEAP32[$0>>2] = 0; - $29 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($29|0); - } - return 0|0; -} -function _detachFunc($context,$NotUsed,$argv) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $pDb = 0, $vararg_buffer6 = 0, $zErr = 0, $zName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 160|0; - $vararg_buffer6 = sp; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $zName = sp + 16|0; - $db = sp + 12|0; - $i = sp + 8|0; - $pDb = sp + 4|0; - $zErr = sp + 32|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $argv; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3_value_text($4)|0); - HEAP32[$zName>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = (_sqlite3_context_db_handle($6)|0); - HEAP32[$db>>2] = $7; - HEAP32[$pDb>>2] = 0; - $8 = HEAP32[$zName>>2]|0; - $9 = ($8|0)==(0|0); - if ($9) { - HEAP32[$zName>>2] = 1472; - } - HEAP32[$i>>2] = 0; - while(1) { - $10 = HEAP32[$i>>2]|0; - $11 = HEAP32[$db>>2]|0; - $12 = (($11) + 20|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($10|0)<($13|0); - if (!($14)) { - break; - } - $15 = HEAP32[$i>>2]|0; - $16 = HEAP32[$db>>2]|0; - $17 = (($16) + 16|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + ($15<<4)|0); - HEAP32[$pDb>>2] = $19; - $20 = HEAP32[$pDb>>2]|0; - $21 = (($20) + 4|0); - $22 = HEAP32[$21>>2]|0; - $23 = ($22|0)==(0|0); - if (!($23)) { - $24 = HEAP32[$pDb>>2]|0; - $25 = HEAP32[$24>>2]|0; - $26 = HEAP32[$zName>>2]|0; - $27 = (_sqlite3_stricmp($25,$26)|0); - $28 = ($27|0)==(0); - if ($28) { - break; - } - } - $29 = HEAP32[$i>>2]|0; - $30 = (($29) + 1)|0; - HEAP32[$i>>2] = $30; - } - $31 = HEAP32[$i>>2]|0; - $32 = HEAP32[$db>>2]|0; - $33 = (($32) + 20|0); - $34 = HEAP32[$33>>2]|0; - $35 = ($31|0)>=($34|0); - do { - if ($35) { - $36 = HEAP32[$zName>>2]|0; - HEAP32[$vararg_buffer6>>2] = $36; - (_sqlite3_snprintf(128,$zErr,19296,$vararg_buffer6)|0); - } else { - $37 = HEAP32[$i>>2]|0; - $38 = ($37|0)<(2); - if ($38) { - $39 = HEAP32[$zName>>2]|0; - HEAP32[$vararg_buffer6>>2] = $39; - (_sqlite3_snprintf(128,$zErr,19320,$vararg_buffer6)|0); - break; - } - $40 = HEAP32[$db>>2]|0; - $41 = (($40) + 62|0); - $42 = HEAP8[$41>>0]|0; - $43 = ($42<<24>>24)!=(0); - if (!($43)) { - (_sqlite3_snprintf(128,$zErr,19352,$vararg_buffer6)|0); - break; - } - $44 = HEAP32[$pDb>>2]|0; - $45 = (($44) + 4|0); - $46 = HEAP32[$45>>2]|0; - $47 = (_sqlite3BtreeIsInReadTrans($46)|0); - $48 = ($47|0)!=(0); - if (!($48)) { - $49 = HEAP32[$pDb>>2]|0; - $50 = (($49) + 4|0); - $51 = HEAP32[$50>>2]|0; - $52 = (_sqlite3BtreeIsInBackup($51)|0); - $53 = ($52|0)!=(0); - if (!($53)) { - $55 = HEAP32[$pDb>>2]|0; - $56 = (($55) + 4|0); - $57 = HEAP32[$56>>2]|0; - (_sqlite3BtreeClose($57)|0); - $58 = HEAP32[$pDb>>2]|0; - $59 = (($58) + 4|0); - HEAP32[$59>>2] = 0; - $60 = HEAP32[$pDb>>2]|0; - $61 = (($60) + 12|0); - HEAP32[$61>>2] = 0; - $62 = HEAP32[$db>>2]|0; - _sqlite3ResetAllSchemasOfConnection($62); - STACKTOP = sp;return; - } - } - $54 = HEAP32[$zName>>2]|0; - HEAP32[$vararg_buffer6>>2] = $54; - (_sqlite3_snprintf(128,$zErr,19400,$vararg_buffer6)|0); - } - } while(0); - $63 = HEAP32[$0>>2]|0; - _sqlite3_result_error($63,$zErr,-1); - STACKTOP = sp;return; -} -function _codeAttach($pParse,$type,$pFunc,$pAuthArg,$pFilename,$pDbname,$pKey) { - $pParse = $pParse|0; - $type = $type|0; - $pFunc = $pFunc|0; - $pAuthArg = $pAuthArg|0; - $pFilename = $pFilename|0; - $pDbname = $pDbname|0; - $pKey = $pKey|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; - var $db = 0, $rc = 0, $regArgs = 0, $sName = 0, $v = 0, $zAuthArg = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 76|0; - $1 = sp + 72|0; - $2 = sp + 68|0; - $3 = sp + 64|0; - $4 = sp + 60|0; - $5 = sp + 56|0; - $6 = sp + 52|0; - $rc = sp + 48|0; - $sName = sp + 16|0; - $v = sp + 12|0; - $db = sp + 8|0; - $regArgs = sp + 4|0; - $zAuthArg = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $type; - HEAP32[$2>>2] = $pFunc; - HEAP32[$3>>2] = $pAuthArg; - HEAP32[$4>>2] = $pFilename; - HEAP32[$5>>2] = $pDbname; - HEAP32[$6>>2] = $pKey; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$7>>2]|0; - HEAP32[$db>>2] = $8; - ;HEAP32[$sName+0>>2]=0|0;HEAP32[$sName+4>>2]=0|0;HEAP32[$sName+8>>2]=0|0;HEAP32[$sName+12>>2]=0|0;HEAP32[$sName+16>>2]=0|0;HEAP32[$sName+20>>2]=0|0;HEAP32[$sName+24>>2]=0|0;HEAP32[$sName+28>>2]=0|0; - $9 = HEAP32[$0>>2]|0; - HEAP32[$sName>>2] = $9; - $10 = HEAP32[$4>>2]|0; - $11 = (_resolveAttachExpr($sName,$10)|0); - HEAP32[$rc>>2] = $11; - $12 = (0)!=($11|0); - do { - if ($12) { - label = 4; - } else { - $13 = HEAP32[$5>>2]|0; - $14 = (_resolveAttachExpr($sName,$13)|0); - HEAP32[$rc>>2] = $14; - $15 = (0)!=($14|0); - if ($15) { - label = 4; - } else { - $16 = HEAP32[$6>>2]|0; - $17 = (_resolveAttachExpr($sName,$16)|0); - HEAP32[$rc>>2] = $17; - $18 = (0)!=($17|0); - if ($18) { - label = 4; - } else { - $23 = HEAP32[$3>>2]|0; - $24 = ($23|0)!=(0|0); - if ($24) { - $25 = HEAP32[$3>>2]|0; - $26 = HEAP8[$25>>0]|0; - $27 = $26&255; - $28 = ($27|0)==(97); - if ($28) { - $29 = HEAP32[$3>>2]|0; - $30 = (($29) + 8|0); - $31 = HEAP32[$30>>2]|0; - HEAP32[$zAuthArg>>2] = $31; - } else { - HEAP32[$zAuthArg>>2] = 0; - } - $32 = HEAP32[$0>>2]|0; - $33 = HEAP32[$1>>2]|0; - $34 = HEAP32[$zAuthArg>>2]|0; - $35 = (_sqlite3AuthCheck($32,$33,$34,0,0)|0); - HEAP32[$rc>>2] = $35; - $36 = HEAP32[$rc>>2]|0; - $37 = ($36|0)!=(0); - if ($37) { - break; - } - } - $38 = HEAP32[$0>>2]|0; - $39 = (_sqlite3GetVdbe($38)|0); - HEAP32[$v>>2] = $39; - $40 = HEAP32[$0>>2]|0; - $41 = (_sqlite3GetTempRange($40,4)|0); - HEAP32[$regArgs>>2] = $41; - $42 = HEAP32[$0>>2]|0; - $43 = HEAP32[$4>>2]|0; - $44 = HEAP32[$regArgs>>2]|0; - _sqlite3ExprCode($42,$43,$44); - $45 = HEAP32[$0>>2]|0; - $46 = HEAP32[$5>>2]|0; - $47 = HEAP32[$regArgs>>2]|0; - $48 = (($47) + 1)|0; - _sqlite3ExprCode($45,$46,$48); - $49 = HEAP32[$0>>2]|0; - $50 = HEAP32[$6>>2]|0; - $51 = HEAP32[$regArgs>>2]|0; - $52 = (($51) + 2)|0; - _sqlite3ExprCode($49,$50,$52); - $53 = HEAP32[$v>>2]|0; - $54 = ($53|0)!=(0|0); - if ($54) { - $55 = HEAP32[$v>>2]|0; - $56 = HEAP32[$regArgs>>2]|0; - $57 = (($56) + 3)|0; - $58 = HEAP32[$2>>2]|0; - $59 = HEAP16[$58>>1]|0; - $60 = $59 << 16 >> 16; - $61 = (($57) - ($60))|0; - $62 = HEAP32[$regArgs>>2]|0; - $63 = (($62) + 3)|0; - (_sqlite3VdbeAddOp3($55,1,0,$61,$63)|0); - $64 = HEAP32[$v>>2]|0; - $65 = HEAP32[$2>>2]|0; - $66 = HEAP16[$65>>1]|0; - $67 = $66&255; - _sqlite3VdbeChangeP5($64,$67); - $68 = HEAP32[$v>>2]|0; - $69 = HEAP32[$2>>2]|0; - _sqlite3VdbeChangeP4($68,-1,$69,-5); - $70 = HEAP32[$v>>2]|0; - $71 = HEAP32[$1>>2]|0; - $72 = ($71|0)==(24); - $73 = $72&1; - (_sqlite3VdbeAddOp1($70,139,$73)|0); - } - } - } - } - } while(0); - if ((label|0) == 4) { - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 64|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + 1)|0; - HEAP32[$20>>2] = $22; - } - $74 = HEAP32[$db>>2]|0; - $75 = HEAP32[$4>>2]|0; - _sqlite3ExprDelete($74,$75); - $76 = HEAP32[$db>>2]|0; - $77 = HEAP32[$5>>2]|0; - _sqlite3ExprDelete($76,$77); - $78 = HEAP32[$db>>2]|0; - $79 = HEAP32[$6>>2]|0; - _sqlite3ExprDelete($78,$79); - STACKTOP = sp;return; -} -function _resolveAttachExpr($pName,$pExpr) { - $pName = $pName|0; - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pName; - HEAP32[$1>>2] = $pExpr; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - do { - if ($3) { - $4 = HEAP32[$1>>2]|0; - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = ($6|0)!=(27); - if ($7) { - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (_sqlite3ResolveExprNames($8,$9)|0); - HEAP32[$rc>>2] = $10; - break; - } else { - $11 = HEAP32[$1>>2]|0; - HEAP8[$11>>0] = 97; - break; - } - } - } while(0); - $12 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($12|0); -} -function _attachFunc($context,$NotUsed,$argv) { - $context = $context|0; - $NotUsed = $NotUsed|0; - $argv = $argv|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; - var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; - var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; - var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; - var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aNew = 0, $db = 0, $flags = 0, $i = 0, $iDb = 0, $or$cond = 0, $pPager = 0, $pVfs = 0, $rc = 0, $vararg_buffer13 = 0, $z = 0; - var $zErr = 0, $zErrDyn = 0, $zFile = 0, $zName = 0, $zPath = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer13 = sp; - $0 = sp + 68|0; - $1 = sp + 64|0; - $2 = sp + 60|0; - $i = sp + 56|0; - $rc = sp + 52|0; - $db = sp + 48|0; - $zName = sp + 44|0; - $zFile = sp + 40|0; - $zPath = sp + 36|0; - $zErr = sp + 32|0; - $flags = sp + 28|0; - $aNew = sp + 24|0; - $zErrDyn = sp + 20|0; - $pVfs = sp + 16|0; - $z = sp + 12|0; - $pPager = sp + 8|0; - $iDb = sp + 4|0; - HEAP32[$0>>2] = $context; - HEAP32[$1>>2] = $NotUsed; - HEAP32[$2>>2] = $argv; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3_context_db_handle($3)|0); - HEAP32[$db>>2] = $4; - HEAP32[$zPath>>2] = 0; - HEAP32[$zErr>>2] = 0; - HEAP32[$zErrDyn>>2] = 0; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = (_sqlite3_value_text($6)|0); - HEAP32[$zFile>>2] = $7; - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - $11 = (_sqlite3_value_text($10)|0); - HEAP32[$zName>>2] = $11; - $12 = HEAP32[$zFile>>2]|0; - $13 = ($12|0)==(0|0); - if ($13) { - HEAP32[$zFile>>2] = 1472; - } - $14 = HEAP32[$zName>>2]|0; - $15 = ($14|0)==(0|0); - if ($15) { - HEAP32[$zName>>2] = 1472; - } - $16 = HEAP32[$db>>2]|0; - $17 = (($16) + 20|0); - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$db>>2]|0; - $20 = (($19) + 88|0); - $21 = (($20) + 28|0); - $22 = HEAP32[$21>>2]|0; - $23 = (($22) + 2)|0; - $24 = ($18|0)>=($23|0); - $25 = HEAP32[$db>>2]|0; - do { - if ($24) { - $26 = HEAP32[$db>>2]|0; - $27 = (($26) + 88|0); - $28 = (($27) + 28|0); - $29 = HEAP32[$28>>2]|0; - HEAP32[$vararg_buffer13>>2] = $29; - $30 = (_sqlite3MPrintf($25,19480,$vararg_buffer13)|0); - HEAP32[$zErrDyn>>2] = $30; - } else { - $31 = (($25) + 62|0); - $32 = HEAP8[$31>>0]|0; - $33 = ($32<<24>>24)!=(0); - if (!($33)) { - $34 = HEAP32[$db>>2]|0; - $35 = (_sqlite3MPrintf($34,19520,$vararg_buffer13)|0); - HEAP32[$zErrDyn>>2] = $35; - break; - } - HEAP32[$i>>2] = 0; - while(1) { - $36 = HEAP32[$i>>2]|0; - $37 = HEAP32[$db>>2]|0; - $38 = (($37) + 20|0); - $39 = HEAP32[$38>>2]|0; - $40 = ($36|0)<($39|0); - if (!($40)) { - break; - } - $41 = HEAP32[$i>>2]|0; - $42 = HEAP32[$db>>2]|0; - $43 = (($42) + 16|0); - $44 = HEAP32[$43>>2]|0; - $45 = (($44) + ($41<<4)|0); - $46 = HEAP32[$45>>2]|0; - HEAP32[$z>>2] = $46; - $47 = HEAP32[$z>>2]|0; - $48 = HEAP32[$zName>>2]|0; - $49 = (_sqlite3_stricmp($47,$48)|0); - $50 = ($49|0)==(0); - if ($50) { - label = 12; - break; - } - $54 = HEAP32[$i>>2]|0; - $55 = (($54) + 1)|0; - HEAP32[$i>>2] = $55; - } - if ((label|0) == 12) { - $51 = HEAP32[$db>>2]|0; - $52 = HEAP32[$zName>>2]|0; - HEAP32[$vararg_buffer13>>2] = $52; - $53 = (_sqlite3MPrintf($51,19568,$vararg_buffer13)|0); - HEAP32[$zErrDyn>>2] = $53; - break; - } - $56 = HEAP32[$db>>2]|0; - $57 = (($56) + 16|0); - $58 = HEAP32[$57>>2]|0; - $59 = HEAP32[$db>>2]|0; - $60 = (($59) + 448|0); - $61 = ($58|0)==($60|0); - $62 = HEAP32[$db>>2]|0; - do { - if ($61) { - $63 = (_sqlite3DbMallocRaw($62,48)|0); - HEAP32[$aNew>>2] = $63; - $64 = HEAP32[$aNew>>2]|0; - $65 = ($64|0)==(0|0); - if ($65) { - STACKTOP = sp;return; - } else { - $66 = HEAP32[$aNew>>2]|0; - $67 = HEAP32[$db>>2]|0; - $68 = (($67) + 16|0); - $69 = HEAP32[$68>>2]|0; - ;HEAP32[$66+0>>2]=HEAP32[$69+0>>2]|0;HEAP32[$66+4>>2]=HEAP32[$69+4>>2]|0;HEAP32[$66+8>>2]=HEAP32[$69+8>>2]|0;HEAP32[$66+12>>2]=HEAP32[$69+12>>2]|0;HEAP32[$66+16>>2]=HEAP32[$69+16>>2]|0;HEAP32[$66+20>>2]=HEAP32[$69+20>>2]|0;HEAP32[$66+24>>2]=HEAP32[$69+24>>2]|0;HEAP32[$66+28>>2]=HEAP32[$69+28>>2]|0; - break; - } - } else { - $70 = HEAP32[$db>>2]|0; - $71 = (($70) + 16|0); - $72 = HEAP32[$71>>2]|0; - $73 = HEAP32[$db>>2]|0; - $74 = (($73) + 20|0); - $75 = HEAP32[$74>>2]|0; - $76 = (($75) + 1)|0; - $77 = $76<<4; - $78 = (_sqlite3DbRealloc($62,$72,$77)|0); - HEAP32[$aNew>>2] = $78; - $79 = HEAP32[$aNew>>2]|0; - $80 = ($79|0)==(0|0); - if ($80) { - STACKTOP = sp;return; - } - } - } while(0); - $81 = HEAP32[$aNew>>2]|0; - $82 = HEAP32[$db>>2]|0; - $83 = (($82) + 16|0); - HEAP32[$83>>2] = $81; - $84 = HEAP32[$db>>2]|0; - $85 = (($84) + 20|0); - $86 = HEAP32[$85>>2]|0; - $87 = HEAP32[$db>>2]|0; - $88 = (($87) + 16|0); - $89 = HEAP32[$88>>2]|0; - $90 = (($89) + ($86<<4)|0); - HEAP32[$aNew>>2] = $90; - $91 = HEAP32[$aNew>>2]|0; - ;HEAP32[$91+0>>2]=0|0;HEAP32[$91+4>>2]=0|0;HEAP32[$91+8>>2]=0|0;HEAP32[$91+12>>2]=0|0; - $92 = HEAP32[$db>>2]|0; - $93 = (($92) + 48|0); - $94 = HEAP32[$93>>2]|0; - HEAP32[$flags>>2] = $94; - $95 = HEAP32[$db>>2]|0; - $96 = HEAP32[$95>>2]|0; - $97 = (($96) + 16|0); - $98 = HEAP32[$97>>2]|0; - $99 = HEAP32[$zFile>>2]|0; - $100 = (_sqlite3ParseUri($98,$99,$flags,$pVfs,$zPath,$zErr)|0); - HEAP32[$rc>>2] = $100; - $101 = HEAP32[$rc>>2]|0; - $102 = ($101|0)!=(0); - if ($102) { - $103 = HEAP32[$rc>>2]|0; - $104 = ($103|0)==(7); - if ($104) { - $105 = HEAP32[$db>>2]|0; - $106 = (($105) + 64|0); - HEAP8[$106>>0] = 1; - } - $107 = HEAP32[$0>>2]|0; - $108 = HEAP32[$zErr>>2]|0; - _sqlite3_result_error($107,$108,-1); - $109 = HEAP32[$zErr>>2]|0; - _sqlite3_free($109); - STACKTOP = sp;return; - } - $110 = HEAP32[$flags>>2]|0; - $111 = $110 | 256; - HEAP32[$flags>>2] = $111; - $112 = HEAP32[$pVfs>>2]|0; - $113 = HEAP32[$zPath>>2]|0; - $114 = HEAP32[$db>>2]|0; - $115 = HEAP32[$aNew>>2]|0; - $116 = (($115) + 4|0); - $117 = HEAP32[$flags>>2]|0; - $118 = (_sqlite3BtreeOpen($112,$113,$114,$116,0,$117)|0); - HEAP32[$rc>>2] = $118; - $119 = HEAP32[$zPath>>2]|0; - _sqlite3_free($119); - $120 = HEAP32[$db>>2]|0; - $121 = (($120) + 20|0); - $122 = HEAP32[$121>>2]|0; - $123 = (($122) + 1)|0; - HEAP32[$121>>2] = $123; - $124 = HEAP32[$rc>>2]|0; - $125 = ($124|0)==(19); - if ($125) { - HEAP32[$rc>>2] = 1; - $126 = HEAP32[$db>>2]|0; - $127 = (_sqlite3MPrintf($126,19600,$vararg_buffer13)|0); - HEAP32[$zErrDyn>>2] = $127; - } else { - $128 = HEAP32[$rc>>2]|0; - $129 = ($128|0)==(0); - if ($129) { - $130 = HEAP32[$db>>2]|0; - $131 = HEAP32[$aNew>>2]|0; - $132 = (($131) + 4|0); - $133 = HEAP32[$132>>2]|0; - $134 = (_sqlite3SchemaGet($130,$133)|0); - $135 = HEAP32[$aNew>>2]|0; - $136 = (($135) + 12|0); - HEAP32[$136>>2] = $134; - $137 = HEAP32[$aNew>>2]|0; - $138 = (($137) + 12|0); - $139 = HEAP32[$138>>2]|0; - $140 = ($139|0)!=(0|0); - if ($140) { - $141 = HEAP32[$aNew>>2]|0; - $142 = (($141) + 12|0); - $143 = HEAP32[$142>>2]|0; - $144 = (($143) + 76|0); - $145 = HEAP8[$144>>0]|0; - $146 = $145&255; - $147 = ($146|0)!=(0); - if ($147) { - $148 = HEAP32[$aNew>>2]|0; - $149 = (($148) + 12|0); - $150 = HEAP32[$149>>2]|0; - $151 = (($150) + 77|0); - $152 = HEAP8[$151>>0]|0; - $153 = $152&255; - $154 = HEAP32[$db>>2]|0; - $155 = (($154) + 16|0); - $156 = HEAP32[$155>>2]|0; - $157 = (($156) + 12|0); - $158 = HEAP32[$157>>2]|0; - $159 = (($158) + 77|0); - $160 = HEAP8[$159>>0]|0; - $161 = $160&255; - $162 = ($153|0)!=($161|0); - if ($162) { - $163 = HEAP32[$db>>2]|0; - $164 = (_sqlite3MPrintf($163,18648,$vararg_buffer13)|0); - HEAP32[$zErrDyn>>2] = $164; - HEAP32[$rc>>2] = 1; - } - } - } else { - HEAP32[$rc>>2] = 7; - } - $165 = HEAP32[$aNew>>2]|0; - $166 = (($165) + 4|0); - $167 = HEAP32[$166>>2]|0; - $168 = (_sqlite3BtreePager($167)|0); - HEAP32[$pPager>>2] = $168; - $169 = HEAP32[$pPager>>2]|0; - $170 = HEAP32[$db>>2]|0; - $171 = (($170) + 65|0); - $172 = HEAP8[$171>>0]|0; - $173 = $172&255; - (_sqlite3PagerLockingMode($169,$173)|0); - $174 = HEAP32[$aNew>>2]|0; - $175 = (($174) + 4|0); - $176 = HEAP32[$175>>2]|0; - $177 = HEAP32[$db>>2]|0; - $178 = (($177) + 16|0); - $179 = HEAP32[$178>>2]|0; - $180 = (($179) + 4|0); - $181 = HEAP32[$180>>2]|0; - $182 = (_sqlite3BtreeSecureDelete($181,-1)|0); - (_sqlite3BtreeSecureDelete($176,$182)|0); - $183 = HEAP32[$aNew>>2]|0; - $184 = (($183) + 4|0); - $185 = HEAP32[$184>>2]|0; - $186 = HEAP32[$db>>2]|0; - $187 = (($186) + 24|0); - $188 = HEAP32[$187>>2]|0; - $189 = $188 & 28; - $190 = 3 | $189; - (_sqlite3BtreeSetPagerFlags($185,$190)|0); - } - } - $191 = HEAP32[$aNew>>2]|0; - $192 = (($191) + 8|0); - HEAP8[$192>>0] = 3; - $193 = HEAP32[$db>>2]|0; - $194 = HEAP32[$zName>>2]|0; - $195 = (_sqlite3DbStrDup($193,$194)|0); - $196 = HEAP32[$aNew>>2]|0; - HEAP32[$196>>2] = $195; - $197 = HEAP32[$rc>>2]|0; - $198 = ($197|0)==(0); - if ($198) { - $199 = HEAP32[$aNew>>2]|0; - $200 = HEAP32[$199>>2]|0; - $201 = ($200|0)==(0|0); - if ($201) { - HEAP32[$rc>>2] = 7; - } - } - $202 = HEAP32[$rc>>2]|0; - $203 = ($202|0)==(0); - if ($203) { - $204 = HEAP32[$db>>2]|0; - _sqlite3BtreeEnterAll($204); - $205 = HEAP32[$db>>2]|0; - $206 = (_sqlite3Init($205,$zErrDyn)|0); - HEAP32[$rc>>2] = $206; - } - $207 = HEAP32[$rc>>2]|0; - $208 = ($207|0)!=(0); - if (!($208)) { - STACKTOP = sp;return; - } - $209 = HEAP32[$db>>2]|0; - $210 = (($209) + 20|0); - $211 = HEAP32[$210>>2]|0; - $212 = (($211) - 1)|0; - HEAP32[$iDb>>2] = $212; - $213 = HEAP32[$iDb>>2]|0; - $214 = HEAP32[$db>>2]|0; - $215 = (($214) + 16|0); - $216 = HEAP32[$215>>2]|0; - $217 = (($216) + ($213<<4)|0); - $218 = (($217) + 4|0); - $219 = HEAP32[$218>>2]|0; - $220 = ($219|0)!=(0|0); - if ($220) { - $221 = HEAP32[$iDb>>2]|0; - $222 = HEAP32[$db>>2]|0; - $223 = (($222) + 16|0); - $224 = HEAP32[$223>>2]|0; - $225 = (($224) + ($221<<4)|0); - $226 = (($225) + 4|0); - $227 = HEAP32[$226>>2]|0; - (_sqlite3BtreeClose($227)|0); - $228 = HEAP32[$iDb>>2]|0; - $229 = HEAP32[$db>>2]|0; - $230 = (($229) + 16|0); - $231 = HEAP32[$230>>2]|0; - $232 = (($231) + ($228<<4)|0); - $233 = (($232) + 4|0); - HEAP32[$233>>2] = 0; - $234 = HEAP32[$iDb>>2]|0; - $235 = HEAP32[$db>>2]|0; - $236 = (($235) + 16|0); - $237 = HEAP32[$236>>2]|0; - $238 = (($237) + ($234<<4)|0); - $239 = (($238) + 12|0); - HEAP32[$239>>2] = 0; - } - $240 = HEAP32[$db>>2]|0; - _sqlite3ResetAllSchemasOfConnection($240); - $241 = HEAP32[$iDb>>2]|0; - $242 = HEAP32[$db>>2]|0; - $243 = (($242) + 20|0); - HEAP32[$243>>2] = $241; - $244 = HEAP32[$rc>>2]|0; - $245 = ($244|0)==(7); - $246 = HEAP32[$rc>>2]|0; - $247 = ($246|0)==(3082); - $or$cond = $245 | $247; - if ($or$cond) { - $248 = HEAP32[$db>>2]|0; - $249 = (($248) + 64|0); - HEAP8[$249>>0] = 1; - $250 = HEAP32[$db>>2]|0; - $251 = HEAP32[$zErrDyn>>2]|0; - _sqlite3DbFree($250,$251); - $252 = HEAP32[$db>>2]|0; - $253 = (_sqlite3MPrintf($252,5352,$vararg_buffer13)|0); - HEAP32[$zErrDyn>>2] = $253; - break; - } - $254 = HEAP32[$zErrDyn>>2]|0; - $255 = ($254|0)==(0|0); - if ($255) { - $256 = HEAP32[$db>>2]|0; - $257 = HEAP32[$zFile>>2]|0; - HEAP32[$vararg_buffer13>>2] = $257; - $258 = (_sqlite3MPrintf($256,19632,$vararg_buffer13)|0); - HEAP32[$zErrDyn>>2] = $258; - } - } - } while(0); - $259 = HEAP32[$zErrDyn>>2]|0; - $260 = ($259|0)!=(0|0); - if ($260) { - $261 = HEAP32[$0>>2]|0; - $262 = HEAP32[$zErrDyn>>2]|0; - _sqlite3_result_error($261,$262,-1); - $263 = HEAP32[$db>>2]|0; - $264 = HEAP32[$zErrDyn>>2]|0; - _sqlite3DbFree($263,$264); - } - $265 = HEAP32[$rc>>2]|0; - $266 = ($265|0)!=(0); - if (!($266)) { - STACKTOP = sp;return; - } - $267 = HEAP32[$0>>2]|0; - $268 = HEAP32[$rc>>2]|0; - _sqlite3_result_error_code($267,$268); - STACKTOP = sp;return; -} -function _sqlite3PagerLockingMode($pPager,$eMode) { - $pPager = $pPager|0; - $eMode = $eMode|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $eMode; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)>=(0); - if ($3) { - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 12|0); - $6 = HEAP8[$5>>0]|0; - $7 = ($6<<24>>24)!=(0); - if (!($7)) { - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 208|0); - $10 = HEAP32[$9>>2]|0; - $11 = (_sqlite3WalHeapMemory($10)|0); - $12 = ($11|0)!=(0); - if (!($12)) { - $13 = HEAP32[$1>>2]|0; - $14 = $13&255; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 4|0); - HEAP8[$16>>0] = $14; - } - } - } - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - STACKTOP = sp;return ($20|0); -} -function _sqlite3BtreeSecureDelete($p,$newFlag) { - $p = $p|0; - $newFlag = $newFlag|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $b = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $b = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $newFlag; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - HEAP32[$0>>2] = 0; - $36 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($36|0); - } - $5 = HEAP32[$1>>2]|0; - _sqlite3BtreeEnter($5); - $6 = HEAP32[$2>>2]|0; - $7 = ($6|0)>=(0); - if ($7) { - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + 22|0); - $12 = HEAP16[$11>>1]|0; - $13 = $12&65535; - $14 = $13 & -5; - $15 = $14&65535; - HEAP16[$11>>1] = $15; - $16 = HEAP32[$2>>2]|0; - $17 = ($16|0)!=(0); - if ($17) { - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 4|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($20) + 22|0); - $22 = HEAP16[$21>>1]|0; - $23 = $22&65535; - $24 = $23 | 4; - $25 = $24&65535; - HEAP16[$21>>1] = $25; - } - } - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 4|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + 22|0); - $30 = HEAP16[$29>>1]|0; - $31 = $30&65535; - $32 = $31 & 4; - $33 = ($32|0)!=(0); - $34 = $33&1; - HEAP32[$b>>2] = $34; - $35 = HEAP32[$b>>2]|0; - HEAP32[$0>>2] = $35; - $36 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($36|0); -} -function _sqlite3BtreeSetPagerFlags($p,$pgFlags) { - $p = $p|0; - $pgFlags = $pgFlags|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $pBt = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pBt = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $pgFlags; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pBt>>2] = $4; - $5 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($5); - $6 = HEAP32[$pBt>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$1>>2]|0; - _sqlite3PagerSetFlags($7,$8); - STACKTOP = sp;return 0; -} -function _sqlite3PagerSetFlags($pPager,$pgFlags) { - $pPager = $pPager|0; - $pgFlags = $pgFlags|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $8 = 0, $9 = 0, $level = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $level = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $pgFlags; - $2 = HEAP32[$1>>2]|0; - $3 = $2 & 3; - HEAP32[$level>>2] = $3; - $4 = HEAP32[$level>>2]|0; - $5 = ($4|0)==(1); - if ($5) { - $12 = 1; - } else { - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 12|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - $10 = ($9|0)!=(0); - $12 = $10; - } - $11 = $12 ? 1 : 0; - $13 = $11&255; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 7|0); - HEAP8[$15>>0] = $13; - $16 = HEAP32[$level>>2]|0; - $17 = ($16|0)==(3); - if ($17) { - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 12|0); - $20 = HEAP8[$19>>0]|0; - $21 = ($20<<24>>24)!=(0); - $22 = $21 ^ 1; - $24 = $22; - } else { - $24 = 0; - } - $23 = $24 ? 1 : 0; - $25 = $23&255; - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 8|0); - HEAP8[$27>>0] = $25; - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 7|0); - $30 = HEAP8[$29>>0]|0; - $31 = ($30<<24>>24)!=(0); - do { - if ($31) { - $32 = HEAP32[$0>>2]|0; - $33 = (($32) + 11|0); - HEAP8[$33>>0] = 0; - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 9|0); - HEAP8[$35>>0] = 0; - } else { - $36 = HEAP32[$1>>2]|0; - $37 = $36 & 4; - $38 = ($37|0)!=(0); - if ($38) { - $39 = HEAP32[$0>>2]|0; - $40 = (($39) + 11|0); - HEAP8[$40>>0] = 3; - $41 = HEAP32[$0>>2]|0; - $42 = (($41) + 9|0); - HEAP8[$42>>0] = 3; - break; - } - $43 = HEAP32[$1>>2]|0; - $44 = $43 & 8; - $45 = ($44|0)!=(0); - $46 = HEAP32[$0>>2]|0; - $47 = (($46) + 11|0); - HEAP8[$47>>0] = 2; - $48 = HEAP32[$0>>2]|0; - $49 = (($48) + 9|0); - if ($45) { - HEAP8[$49>>0] = 3; - break; - } else { - HEAP8[$49>>0] = 2; - break; - } - } - } while(0); - $50 = HEAP32[$0>>2]|0; - $51 = (($50) + 11|0); - $52 = HEAP8[$51>>0]|0; - $53 = HEAP32[$0>>2]|0; - $54 = (($53) + 10|0); - HEAP8[$54>>0] = $52; - $55 = HEAP32[$0>>2]|0; - $56 = (($55) + 8|0); - $57 = HEAP8[$56>>0]|0; - $58 = ($57<<24>>24)!=(0); - if ($58) { - $59 = HEAP32[$0>>2]|0; - $60 = (($59) + 10|0); - $61 = HEAP8[$60>>0]|0; - $62 = $61&255; - $63 = $62 | 32; - $64 = $63&255; - HEAP8[$60>>0] = $64; - } - $65 = HEAP32[$1>>2]|0; - $66 = $65 & 16; - $67 = ($66|0)!=(0); - $68 = HEAP32[$0>>2]|0; - $69 = (($68) + 20|0); - $70 = HEAP8[$69>>0]|0; - $71 = $70&255; - if ($67) { - $72 = $71 & -2; - $73 = $72&255; - HEAP8[$69>>0] = $73; - STACKTOP = sp;return; - } else { - $74 = $71 | 1; - $75 = $74&255; - HEAP8[$69>>0] = $75; - STACKTOP = sp;return; - } -} -function _sqlite3WalHeapMemory($pWal) { - $pWal = $pWal|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pWal; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if (!($2)) { - $9 = 0; - $8 = $9&1; - STACKTOP = sp;return ($8|0); - } - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 43|0); - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = ($6|0)==(2); - $9 = $7; - $8 = $9&1; - STACKTOP = sp;return ($8|0); -} -function _sqlite3CodeVerifyNamedSchema($pParse,$zDb) { - $pParse = $pParse|0; - $zDb = $zDb|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $pDb = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $db = sp + 8|0; - $i = sp + 4|0; - $pDb = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $zDb; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - HEAP32[$i>>2] = 0; - while(1) { - $4 = HEAP32[$i>>2]|0; - $5 = HEAP32[$db>>2]|0; - $6 = (($5) + 20|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($4|0)<($7|0); - if (!($8)) { - break; - } - $9 = HEAP32[$i>>2]|0; - $10 = HEAP32[$db>>2]|0; - $11 = (($10) + 16|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + ($9<<4)|0); - HEAP32[$pDb>>2] = $13; - $14 = HEAP32[$pDb>>2]|0; - $15 = (($14) + 4|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($16|0)!=(0|0); - do { - if ($17) { - $18 = HEAP32[$1>>2]|0; - $19 = ($18|0)!=(0|0); - if ($19) { - $20 = HEAP32[$1>>2]|0; - $21 = HEAP32[$pDb>>2]|0; - $22 = HEAP32[$21>>2]|0; - $23 = (_sqlite3_stricmp($20,$22)|0); - $24 = (0)==($23|0); - if (!($24)) { - break; - } - } - $25 = HEAP32[$0>>2]|0; - $26 = HEAP32[$i>>2]|0; - _sqlite3CodeVerifySchema($25,$26); - } - } while(0); - $27 = HEAP32[$i>>2]|0; - $28 = (($27) + 1)|0; - HEAP32[$i>>2] = $28; - } - STACKTOP = sp;return; -} -function _sqlite3DropTriggerPtr($pParse,$pTrigger) { - $pParse = $pParse|0; - $pTrigger = $pTrigger|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $base = 0, $code = 0, $db = 0, $iDb = 0, $pTable = 0, $v = 0, $zDb = 0, $zTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $pTable = sp + 28|0; - $v = sp + 24|0; - $db = sp + 20|0; - $iDb = sp + 16|0; - $code = sp + 12|0; - $zDb = sp + 8|0; - $zTab = sp + 4|0; - $base = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTrigger; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 20|0); - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3SchemaToIndex($5,$8)|0); - HEAP32[$iDb>>2] = $9; - $10 = HEAP32[$1>>2]|0; - $11 = (_tableOfTrigger($10)|0); - HEAP32[$pTable>>2] = $11; - HEAP32[$code>>2] = 16; - $12 = HEAP32[$iDb>>2]|0; - $13 = HEAP32[$db>>2]|0; - $14 = (($13) + 16|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + ($12<<4)|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$zDb>>2] = $17; - $18 = HEAP32[$iDb>>2]|0; - $19 = ($18|0)==(1); - $20 = $19 ? 14808 : 14832; - HEAP32[$zTab>>2] = $20; - $21 = HEAP32[$iDb>>2]|0; - $22 = ($21|0)==(1); - if ($22) { - HEAP32[$code>>2] = 14; - } - $23 = HEAP32[$0>>2]|0; - $24 = HEAP32[$code>>2]|0; - $25 = HEAP32[$1>>2]|0; - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$pTable>>2]|0; - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$zDb>>2]|0; - $30 = (_sqlite3AuthCheck($23,$24,$26,$28,$29)|0); - $31 = ($30|0)!=(0); - if ($31) { - STACKTOP = sp;return; - } - $32 = HEAP32[$0>>2]|0; - $33 = HEAP32[$zTab>>2]|0; - $34 = HEAP32[$zDb>>2]|0; - $35 = (_sqlite3AuthCheck($32,9,$33,0,$34)|0); - $36 = ($35|0)!=(0); - if ($36) { - STACKTOP = sp;return; - } - $37 = HEAP32[$0>>2]|0; - $38 = (_sqlite3GetVdbe($37)|0); - HEAP32[$v>>2] = $38; - $39 = ($38|0)!=(0|0); - if (!($39)) { - STACKTOP = sp;return; - } - $40 = HEAP32[$0>>2]|0; - $41 = HEAP32[$iDb>>2]|0; - _sqlite3BeginWriteOperation($40,0,$41); - $42 = HEAP32[$0>>2]|0; - $43 = HEAP32[$iDb>>2]|0; - _sqlite3OpenMasterTable($42,$43); - $44 = HEAP32[$v>>2]|0; - $45 = (_sqlite3VdbeAddOpList($44,9,19688,0)|0); - HEAP32[$base>>2] = $45; - $46 = HEAP32[$v>>2]|0; - $47 = HEAP32[$base>>2]|0; - $48 = (($47) + 1)|0; - $49 = HEAP32[$1>>2]|0; - $50 = HEAP32[$49>>2]|0; - _sqlite3VdbeChangeP4($46,$48,$50,0); - $51 = HEAP32[$v>>2]|0; - $52 = HEAP32[$base>>2]|0; - $53 = (($52) + 4)|0; - _sqlite3VdbeChangeP4($51,$53,1488,-2); - $54 = HEAP32[$0>>2]|0; - $55 = HEAP32[$iDb>>2]|0; - _sqlite3ChangeCookie($54,$55); - $56 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($56,58,0,0)|0); - $57 = HEAP32[$v>>2]|0; - $58 = HEAP32[$iDb>>2]|0; - $59 = HEAP32[$1>>2]|0; - $60 = HEAP32[$59>>2]|0; - (_sqlite3VdbeAddOp4($57,123,$58,0,0,$60,0)|0); - $61 = HEAP32[$0>>2]|0; - $62 = (($61) + 72|0); - $63 = HEAP32[$62>>2]|0; - $64 = ($63|0)<(3); - if (!($64)) { - STACKTOP = sp;return; - } - $65 = HEAP32[$0>>2]|0; - $66 = (($65) + 72|0); - HEAP32[$66>>2] = 3; - STACKTOP = sp;return; -} -function _tableOfTrigger($pTrigger) { - $pTrigger = $pTrigger|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $n = sp; - HEAP32[$0>>2] = $pTrigger; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - $4 = (_sqlite3Strlen30($3)|0); - HEAP32[$n>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 24|0); - $7 = HEAP32[$6>>2]|0; - $8 = (($7) + 8|0); - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 4|0); - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$n>>2]|0; - $13 = (_sqlite3HashFind($8,$11,$12)|0); - STACKTOP = sp;return ($13|0); -} -function _sqlite3OpenMasterTable($p,$iDb) { - $p = $p|0; - $iDb = $iDb|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $v = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $iDb; - $2 = HEAP32[$0>>2]|0; - $3 = (_sqlite3GetVdbe($2)|0); - HEAP32[$v>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = ($6|0)==(1); - $8 = $7 ? 14808 : 14832; - _sqlite3TableLock($4,$5,1,1,$8); - $9 = HEAP32[$v>>2]|0; - $10 = HEAP32[$1>>2]|0; - (_sqlite3VdbeAddOp4Int($9,53,0,1,$10,5)|0); - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 68|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)==(0); - if (!($14)) { - STACKTOP = sp;return; - } - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 68|0); - HEAP32[$16>>2] = 1; - STACKTOP = sp;return; -} -function _triggerStepAllocate($db,$op,$pName) { - $db = $db|0; - $op = $op|0; - $pName = $pName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTriggerStep = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 12|0; - $1 = sp + 16|0; - $2 = sp + 8|0; - $pTriggerStep = sp + 4|0; - $z = sp; - HEAP32[$0>>2] = $db; - HEAP8[$1>>0] = $op; - HEAP32[$2>>2] = $pName; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$2>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - $7 = (40 + ($6))|0; - $8 = (_sqlite3DbMallocZero($3,$7)|0); - HEAP32[$pTriggerStep>>2] = $8; - $9 = HEAP32[$pTriggerStep>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - $30 = HEAP32[$pTriggerStep>>2]|0; - STACKTOP = sp;return ($30|0); - } - $11 = HEAP32[$pTriggerStep>>2]|0; - $12 = (($11) + 40|0); - HEAP32[$z>>2] = $12; - $13 = HEAP32[$z>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$2>>2]|0; - $17 = (($16) + 4|0); - $18 = HEAP32[$17>>2]|0; - _memcpy(($13|0),($15|0),($18|0))|0; - $19 = HEAP32[$z>>2]|0; - $20 = HEAP32[$pTriggerStep>>2]|0; - $21 = (($20) + 12|0); - HEAP32[$21>>2] = $19; - $22 = HEAP32[$2>>2]|0; - $23 = (($22) + 4|0); - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$pTriggerStep>>2]|0; - $26 = (($25) + 12|0); - $27 = (($26) + 4|0); - HEAP32[$27>>2] = $24; - $28 = HEAP8[$1>>0]|0; - $29 = HEAP32[$pTriggerStep>>2]|0; - HEAP8[$29>>0] = $28; - $30 = HEAP32[$pTriggerStep>>2]|0; - STACKTOP = sp;return ($30|0); -} -function _sqlite3SrcListLookup($pParse,$pSrc) { - $pParse = $pParse|0; - $pSrc = $pSrc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pItem = 0, $pTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $pItem = sp + 4|0; - $pTab = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pSrc; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 8|0); - HEAP32[$pItem>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$pItem>>2]|0; - $6 = (_sqlite3LocateTableItem($4,0,$5)|0); - HEAP32[$pTab>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$pItem>>2]|0; - $10 = (($9) + 16|0); - $11 = HEAP32[$10>>2]|0; - _sqlite3DeleteTable($8,$11); - $12 = HEAP32[$pTab>>2]|0; - $13 = HEAP32[$pItem>>2]|0; - $14 = (($13) + 16|0); - HEAP32[$14>>2] = $12; - $15 = HEAP32[$pTab>>2]|0; - $16 = ($15|0)!=(0|0); - if ($16) { - $17 = HEAP32[$pTab>>2]|0; - $18 = (($17) + 40|0); - $19 = HEAP16[$18>>1]|0; - $20 = (($19) + 1)<<16>>16; - HEAP16[$18>>1] = $20; - } - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$pItem>>2]|0; - $23 = (_sqlite3IndexedByLookup($21,$22)|0); - $24 = ($23|0)!=(0); - if (!($24)) { - $25 = HEAP32[$pTab>>2]|0; - STACKTOP = sp;return ($25|0); - } - HEAP32[$pTab>>2] = 0; - $25 = HEAP32[$pTab>>2]|0; - STACKTOP = sp;return ($25|0); -} -function _sqlite3FixInit($pFix,$pParse,$iDb,$zType,$pName) { - $pFix = $pFix|0; - $pParse = $pParse|0; - $iDb = $iDb|0; - $zType = $zType|0; - $pName = $pName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $pFix; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $iDb; - HEAP32[$3>>2] = $zType; - HEAP32[$4>>2] = $pName; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$0>>2]|0; - HEAP32[$8>>2] = $7; - $9 = HEAP32[$2>>2]|0; - $10 = HEAP32[$db>>2]|0; - $11 = (($10) + 16|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + ($9<<4)|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 12|0); - HEAP32[$16>>2] = $14; - $17 = HEAP32[$2>>2]|0; - $18 = HEAP32[$db>>2]|0; - $19 = (($18) + 16|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($20) + ($17<<4)|0); - $22 = (($21) + 12|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 4|0); - HEAP32[$25>>2] = $23; - $26 = HEAP32[$3>>2]|0; - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 16|0); - HEAP32[$28>>2] = $26; - $29 = HEAP32[$4>>2]|0; - $30 = HEAP32[$0>>2]|0; - $31 = (($30) + 20|0); - HEAP32[$31>>2] = $29; - $32 = HEAP32[$2>>2]|0; - $33 = ($32|0)==(1); - $34 = $33&1; - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + 8|0); - HEAP32[$36>>2] = $34; - STACKTOP = sp;return; -} -function _sqlite3FixSrcList($pFix,$pList) { - $pFix = $pFix|0; - $pList = $pList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pItem = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $zDb = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $i = sp + 20|0; - $zDb = sp + 16|0; - $pItem = sp + 12|0; - HEAP32[$1>>2] = $pFix; - HEAP32[$2>>2] = $pList; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - HEAP32[$0>>2] = 0; - $67 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($67|0); - } - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 12|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$zDb>>2] = $7; - HEAP32[$i>>2] = 0; - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + 8|0); - HEAP32[$pItem>>2] = $9; - while(1) { - $10 = HEAP32[$i>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = ($10|0)<($12|0); - if (!($13)) { - label = 15; - break; - } - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 8|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($16|0)==(0); - if ($17) { - $18 = HEAP32[$pItem>>2]|0; - $19 = (($18) + 4|0); - $20 = HEAP32[$19>>2]|0; - $21 = ($20|0)!=(0|0); - if ($21) { - $22 = HEAP32[$pItem>>2]|0; - $23 = (($22) + 4|0); - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$zDb>>2]|0; - $26 = (_sqlite3_stricmp($24,$25)|0); - $27 = ($26|0)!=(0); - if ($27) { - label = 8; - break; - } - } - $39 = HEAP32[$1>>2]|0; - $40 = HEAP32[$39>>2]|0; - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$pItem>>2]|0; - $43 = (($42) + 4|0); - $44 = HEAP32[$43>>2]|0; - _sqlite3DbFree($41,$44); - $45 = HEAP32[$pItem>>2]|0; - $46 = (($45) + 4|0); - HEAP32[$46>>2] = 0; - $47 = HEAP32[$1>>2]|0; - $48 = (($47) + 4|0); - $49 = HEAP32[$48>>2]|0; - $50 = HEAP32[$pItem>>2]|0; - HEAP32[$50>>2] = $49; - } - $51 = HEAP32[$1>>2]|0; - $52 = HEAP32[$pItem>>2]|0; - $53 = (($52) + 20|0); - $54 = HEAP32[$53>>2]|0; - $55 = (_sqlite3FixSelect($51,$54)|0); - $56 = ($55|0)!=(0); - if ($56) { - label = 11; - break; - } - $57 = HEAP32[$1>>2]|0; - $58 = HEAP32[$pItem>>2]|0; - $59 = (($58) + 44|0); - $60 = HEAP32[$59>>2]|0; - $61 = (_sqlite3FixExpr($57,$60)|0); - $62 = ($61|0)!=(0); - if ($62) { - label = 13; - break; - } - $63 = HEAP32[$i>>2]|0; - $64 = (($63) + 1)|0; - HEAP32[$i>>2] = $64; - $65 = HEAP32[$pItem>>2]|0; - $66 = (($65) + 72|0); - HEAP32[$pItem>>2] = $66; - } - if ((label|0) == 8) { - $28 = HEAP32[$1>>2]|0; - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 16|0); - $32 = HEAP32[$31>>2]|0; - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 20|0); - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$pItem>>2]|0; - $37 = (($36) + 4|0); - $38 = HEAP32[$37>>2]|0; - HEAP32[$vararg_buffer>>2] = $32; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $35; - $vararg_ptr2 = (($vararg_buffer) + 8|0); - HEAP32[$vararg_ptr2>>2] = $38; - _sqlite3ErrorMsg($29,20000,$vararg_buffer); - HEAP32[$0>>2] = 1; - $67 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($67|0); - } - else if ((label|0) == 11) { - HEAP32[$0>>2] = 1; - $67 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($67|0); - } - else if ((label|0) == 13) { - HEAP32[$0>>2] = 1; - $67 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($67|0); - } - else if ((label|0) == 15) { - HEAP32[$0>>2] = 0; - $67 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($67|0); - } - return 0|0; -} -function _sqlite3FixSelect($pFix,$pSelect) { - $pFix = $pFix|0; - $pSelect = $pSelect|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$1>>2] = $pFix; - HEAP32[$2>>2] = $pSelect; - while(1) { - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - label = 20; - break; - } - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = (_sqlite3FixExprList($5,$7)|0); - $9 = ($8|0)!=(0); - if ($9) { - label = 4; - break; - } - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 32|0); - $13 = HEAP32[$12>>2]|0; - $14 = (_sqlite3FixSrcList($10,$13)|0); - $15 = ($14|0)!=(0); - if ($15) { - label = 6; - break; - } - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = (($17) + 36|0); - $19 = HEAP32[$18>>2]|0; - $20 = (_sqlite3FixExpr($16,$19)|0); - $21 = ($20|0)!=(0); - if ($21) { - label = 8; - break; - } - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$2>>2]|0; - $24 = (($23) + 40|0); - $25 = HEAP32[$24>>2]|0; - $26 = (_sqlite3FixExprList($22,$25)|0); - $27 = ($26|0)!=(0); - if ($27) { - label = 10; - break; - } - $28 = HEAP32[$1>>2]|0; - $29 = HEAP32[$2>>2]|0; - $30 = (($29) + 44|0); - $31 = HEAP32[$30>>2]|0; - $32 = (_sqlite3FixExpr($28,$31)|0); - $33 = ($32|0)!=(0); - if ($33) { - label = 12; - break; - } - $34 = HEAP32[$1>>2]|0; - $35 = HEAP32[$2>>2]|0; - $36 = (($35) + 48|0); - $37 = HEAP32[$36>>2]|0; - $38 = (_sqlite3FixExprList($34,$37)|0); - $39 = ($38|0)!=(0); - if ($39) { - label = 14; - break; - } - $40 = HEAP32[$1>>2]|0; - $41 = HEAP32[$2>>2]|0; - $42 = (($41) + 60|0); - $43 = HEAP32[$42>>2]|0; - $44 = (_sqlite3FixExpr($40,$43)|0); - $45 = ($44|0)!=(0); - if ($45) { - label = 16; - break; - } - $46 = HEAP32[$1>>2]|0; - $47 = HEAP32[$2>>2]|0; - $48 = (($47) + 64|0); - $49 = HEAP32[$48>>2]|0; - $50 = (_sqlite3FixExpr($46,$49)|0); - $51 = ($50|0)!=(0); - if ($51) { - label = 18; - break; - } - $52 = HEAP32[$2>>2]|0; - $53 = (($52) + 52|0); - $54 = HEAP32[$53>>2]|0; - HEAP32[$2>>2] = $54; - } - if ((label|0) == 4) { - HEAP32[$0>>2] = 1; - } - else if ((label|0) == 6) { - HEAP32[$0>>2] = 1; - } - else if ((label|0) == 8) { - HEAP32[$0>>2] = 1; - } - else if ((label|0) == 10) { - HEAP32[$0>>2] = 1; - } - else if ((label|0) == 12) { - HEAP32[$0>>2] = 1; - } - else if ((label|0) == 14) { - HEAP32[$0>>2] = 1; - } - else if ((label|0) == 16) { - HEAP32[$0>>2] = 1; - } - else if ((label|0) == 18) { - HEAP32[$0>>2] = 1; - } - else if ((label|0) == 20) { - HEAP32[$0>>2] = 0; - } - $55 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($55|0); -} -function _sqlite3FixExpr($pFix,$pExpr) { - $pFix = $pFix|0; - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - HEAP32[$1>>2] = $pFix; - HEAP32[$2>>2] = $pExpr; - while(1) { - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - label = 16; - break; - } - $5 = HEAP32[$2>>2]|0; - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - $8 = ($7|0)==(135); - if ($8) { - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + 132|0); - $13 = (($12) + 5|0); - $14 = HEAP8[$13>>0]|0; - $15 = ($14<<24>>24)!=(0); - if (!($15)) { - label = 6; - break; - } - $16 = HEAP32[$2>>2]|0; - HEAP8[$16>>0] = 101; - } - $22 = HEAP32[$2>>2]|0; - $23 = (($22) + 4|0); - $24 = HEAP32[$23>>2]|0; - $25 = $24 & 16384; - $26 = ($25|0)!=(0); - if ($26) { - label = 16; - break; - } - $27 = HEAP32[$2>>2]|0; - $28 = (($27) + 4|0); - $29 = HEAP32[$28>>2]|0; - $30 = $29 & 2048; - $31 = ($30|0)!=(0); - $32 = HEAP32[$1>>2]|0; - $33 = HEAP32[$2>>2]|0; - $34 = (($33) + 20|0); - if ($31) { - $35 = HEAP32[$34>>2]|0; - $36 = (_sqlite3FixSelect($32,$35)|0); - $37 = ($36|0)!=(0); - if ($37) { - label = 10; - break; - } - } else { - $38 = HEAP32[$34>>2]|0; - $39 = (_sqlite3FixExprList($32,$38)|0); - $40 = ($39|0)!=(0); - if ($40) { - label = 12; - break; - } - } - $41 = HEAP32[$1>>2]|0; - $42 = HEAP32[$2>>2]|0; - $43 = (($42) + 16|0); - $44 = HEAP32[$43>>2]|0; - $45 = (_sqlite3FixExpr($41,$44)|0); - $46 = ($45|0)!=(0); - if ($46) { - label = 14; - break; - } - $47 = HEAP32[$2>>2]|0; - $48 = (($47) + 12|0); - $49 = HEAP32[$48>>2]|0; - HEAP32[$2>>2] = $49; - } - if ((label|0) == 6) { - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 16|0); - $21 = HEAP32[$20>>2]|0; - HEAP32[$vararg_buffer>>2] = $21; - _sqlite3ErrorMsg($18,20048,$vararg_buffer); - HEAP32[$0>>2] = 1; - $50 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($50|0); - } - else if ((label|0) == 10) { - HEAP32[$0>>2] = 1; - $50 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($50|0); - } - else if ((label|0) == 12) { - HEAP32[$0>>2] = 1; - $50 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($50|0); - } - else if ((label|0) == 14) { - HEAP32[$0>>2] = 1; - $50 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($50|0); - } - else if ((label|0) == 16) { - HEAP32[$0>>2] = 0; - $50 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($50|0); - } - return 0|0; -} -function _sqlite3FixExprList($pFix,$pList) { - $pFix = $pFix|0; - $pList = $pList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $i = 0, $pItem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $i = sp + 4|0; - $pItem = sp; - HEAP32[$1>>2] = $pFix; - HEAP32[$2>>2] = $pList; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - HEAP32[$0>>2] = 0; - $21 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($21|0); - } - HEAP32[$i>>2] = 0; - $5 = HEAP32[$2>>2]|0; - $6 = (($5) + 4|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pItem>>2] = $7; - while(1) { - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[$2>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = ($8|0)<($10|0); - if (!($11)) { - label = 8; - break; - } - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$pItem>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = (_sqlite3FixExpr($12,$14)|0); - $16 = ($15|0)!=(0); - if ($16) { - label = 6; - break; - } - $17 = HEAP32[$i>>2]|0; - $18 = (($17) + 1)|0; - HEAP32[$i>>2] = $18; - $19 = HEAP32[$pItem>>2]|0; - $20 = (($19) + 20|0); - HEAP32[$pItem>>2] = $20; - } - if ((label|0) == 6) { - HEAP32[$0>>2] = 1; - $21 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($21|0); - } - else if ((label|0) == 8) { - HEAP32[$0>>2] = 0; - $21 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($21|0); - } - return 0|0; -} -function _sqlite3FixTriggerStep($pFix,$pStep) { - $pFix = $pFix|0; - $pStep = $pStep|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$1>>2] = $pFix; - HEAP32[$2>>2] = $pStep; - while(1) { - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - label = 10; - break; - } - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = (($6) + 8|0); - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3FixSelect($5,$8)|0); - $10 = ($9|0)!=(0); - if ($10) { - label = 4; - break; - } - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$2>>2]|0; - $13 = (($12) + 20|0); - $14 = HEAP32[$13>>2]|0; - $15 = (_sqlite3FixExpr($11,$14)|0); - $16 = ($15|0)!=(0); - if ($16) { - label = 6; - break; - } - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$2>>2]|0; - $19 = (($18) + 24|0); - $20 = HEAP32[$19>>2]|0; - $21 = (_sqlite3FixExprList($17,$20)|0); - $22 = ($21|0)!=(0); - if ($22) { - label = 8; - break; - } - $23 = HEAP32[$2>>2]|0; - $24 = (($23) + 32|0); - $25 = HEAP32[$24>>2]|0; - HEAP32[$2>>2] = $25; - } - if ((label|0) == 4) { - HEAP32[$0>>2] = 1; - } - else if ((label|0) == 6) { - HEAP32[$0>>2] = 1; - } - else if ((label|0) == 8) { - HEAP32[$0>>2] = 1; - } - else if ((label|0) == 10) { - HEAP32[$0>>2] = 0; - } - $26 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($26|0); -} -function _sqlite3VdbeRunOnlyOnce($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 88|0); - $3 = HEAP16[$2>>1]|0; - $4 = $3 & -65; - $5 = $4 | 64; - HEAP16[$2>>1] = $5; - STACKTOP = sp;return; -} -function _sqlite3VdbeSetNumCols($p,$nResColumn) { - $p = $p|0; - $nResColumn = $nResColumn|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $db = 0, $n = 0, $pColName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $pColName = sp + 8|0; - $n = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $nResColumn; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 16|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 84|0); - $9 = HEAP16[$8>>1]|0; - $10 = $9&65535; - $11 = $10<<1; - _releaseMemArray($6,$11); - $12 = HEAP32[$db>>2]|0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 16|0); - $15 = HEAP32[$14>>2]|0; - _sqlite3DbFree($12,$15); - $16 = HEAP32[$1>>2]|0; - $17 = $16<<1; - HEAP32[$n>>2] = $17; - $18 = HEAP32[$1>>2]|0; - $19 = $18&65535; - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 84|0); - HEAP16[$21>>1] = $19; - $22 = HEAP32[$db>>2]|0; - $23 = HEAP32[$n>>2]|0; - $24 = ($23*40)|0; - $25 = (_sqlite3DbMallocZero($22,$24)|0); - HEAP32[$pColName>>2] = $25; - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 16|0); - HEAP32[$27>>2] = $25; - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 16|0); - $30 = HEAP32[$29>>2]|0; - $31 = ($30|0)==(0|0); - if ($31) { - STACKTOP = sp;return; - } - while(1) { - $32 = HEAP32[$n>>2]|0; - $33 = (($32) + -1)|0; - HEAP32[$n>>2] = $33; - $34 = ($32|0)>(0); - if (!($34)) { - break; - } - $35 = HEAP32[$pColName>>2]|0; - $36 = (($35) + 28|0); - HEAP16[$36>>1] = 1; - $37 = HEAP32[$0>>2]|0; - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$pColName>>2]|0; - HEAP32[$39>>2] = $38; - $40 = HEAP32[$pColName>>2]|0; - $41 = (($40) + 40|0); - HEAP32[$pColName>>2] = $41; - } - STACKTOP = sp;return; -} -function _sqlite3VdbeSetColName($p,$idx,$var,$zName,$xDel) { - $p = $p|0; - $idx = $idx|0; - $var = $var|0; - $zName = $zName|0; - $xDel = $xDel|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pColName = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $5 = sp + 8|0; - $rc = sp + 4|0; - $pColName = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $idx; - HEAP32[$3>>2] = $var; - HEAP32[$4>>2] = $zName; - HEAP32[$5>>2] = $xDel; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = (($7) + 64|0); - $9 = HEAP8[$8>>0]|0; - $10 = ($9<<24>>24)!=(0); - if ($10) { - HEAP32[$0>>2] = 7; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); - } else { - $11 = HEAP32[$2>>2]|0; - $12 = HEAP32[$3>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 84|0); - $15 = HEAP16[$14>>1]|0; - $16 = $15&65535; - $17 = Math_imul($12, $16)|0; - $18 = (($11) + ($17))|0; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 16|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + (($18*40)|0)|0); - HEAP32[$pColName>>2] = $22; - $23 = HEAP32[$pColName>>2]|0; - $24 = HEAP32[$4>>2]|0; - $25 = HEAP32[$5>>2]|0; - $26 = (_sqlite3VdbeMemSetStr($23,$24,-1,1,$25)|0); - HEAP32[$rc>>2] = $26; - $27 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $27; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); - } - return 0|0; -} -function _returnSingleInt($pParse,$zLabel,$0,$1) { - $pParse = $pParse|0; - $zLabel = $zLabel|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mem = 0, $pI64 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $4 = sp; - $v = sp + 16|0; - $mem = sp + 12|0; - $pI64 = sp + 8|0; - HEAP32[$2>>2] = $pParse; - HEAP32[$3>>2] = $zLabel; - $5 = $4; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - $9 = HEAP32[$2>>2]|0; - $10 = (_sqlite3GetVdbe($9)|0); - HEAP32[$v>>2] = $10; - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 72|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + 1)|0; - HEAP32[$12>>2] = $14; - HEAP32[$mem>>2] = $14; - $15 = HEAP32[$2>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = (_sqlite3DbMallocRaw($16,8)|0); - HEAP32[$pI64>>2] = $17; - $18 = HEAP32[$pI64>>2]|0; - $19 = ($18|0)!=(0|0); - if ($19) { - $20 = HEAP32[$pI64>>2]|0; - ;HEAP32[$20+0>>2]=HEAP32[$4+0>>2]|0;HEAP32[$20+4>>2]=HEAP32[$4+4>>2]|0; - } - $21 = HEAP32[$v>>2]|0; - $22 = HEAP32[$mem>>2]|0; - $23 = HEAP32[$pI64>>2]|0; - (_sqlite3VdbeAddOp4($21,26,0,$22,0,$23,-13)|0); - $24 = HEAP32[$v>>2]|0; - _sqlite3VdbeSetNumCols($24,1); - $25 = HEAP32[$v>>2]|0; - $26 = HEAP32[$3>>2]|0; - (_sqlite3VdbeSetColName($25,0,0,$26,0)|0); - $27 = HEAP32[$v>>2]|0; - $28 = HEAP32[$mem>>2]|0; - (_sqlite3VdbeAddOp2($27,35,$28,1)|0); - STACKTOP = sp;return; -} -function _getLockingMode($z) { - $z = $z|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $z; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - do { - if ($3) { - $4 = HEAP32[$1>>2]|0; - $5 = (_sqlite3_stricmp($4,20928)|0); - $6 = (0)==($5|0); - if ($6) { - HEAP32[$0>>2] = 1; - break; - } - $7 = HEAP32[$1>>2]|0; - $8 = (_sqlite3_stricmp($7,20920)|0); - $9 = (0)==($8|0); - if ($9) { - HEAP32[$0>>2] = 0; - } else { - label = 6; - } - } else { - label = 6; - } - } while(0); - if ((label|0) == 6) { - HEAP32[$0>>2] = -1; - } - $10 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($10|0); -} -function _sqlite3JournalModename($eMode) { - $eMode = $eMode|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $eMode; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(6); - if ($3) { - HEAP32[$0>>2] = 0; - } else { - $4 = HEAP32[$1>>2]|0; - $5 = (22088 + ($4<<2)|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$0>>2] = $6; - } - $7 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($7|0); -} -function _sqlite3PagerJournalSizeLimit($pPager,$0,$1) { - $pPager = $pPager|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $2 = sp + 8|0; - $3 = sp; - HEAP32[$2>>2] = $pPager; - $4 = $3; - $5 = $4; - HEAP32[$5>>2] = $0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = $1; - $8 = $3; - $9 = $8; - $10 = HEAP32[$9>>2]|0; - $11 = (($8) + 4)|0; - $12 = $11; - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)>(-1); - $15 = ($13|0)==(-1); - $16 = ($10>>>0)>=(4294967295); - $17 = $15 & $16; - $18 = $14 | $17; - if (!($18)) { - $40 = HEAP32[$2>>2]|0; - $41 = (($40) + 160|0); - $42 = $41; - $43 = $42; - $44 = HEAP32[$43>>2]|0; - $45 = (($42) + 4)|0; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - tempRet0 = $47; - STACKTOP = sp;return ($44|0); - } - $19 = $3; - $20 = $19; - $21 = HEAP32[$20>>2]|0; - $22 = (($19) + 4)|0; - $23 = $22; - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$2>>2]|0; - $26 = (($25) + 160|0); - $27 = $26; - $28 = $27; - HEAP32[$28>>2] = $21; - $29 = (($27) + 4)|0; - $30 = $29; - HEAP32[$30>>2] = $24; - $31 = HEAP32[$2>>2]|0; - $32 = (($31) + 208|0); - $33 = HEAP32[$32>>2]|0; - $34 = $3; - $35 = $34; - $36 = HEAP32[$35>>2]|0; - $37 = (($34) + 4)|0; - $38 = $37; - $39 = HEAP32[$38>>2]|0; - _sqlite3WalLimit($33,$36,$39); - $40 = HEAP32[$2>>2]|0; - $41 = (($40) + 160|0); - $42 = $41; - $43 = $42; - $44 = HEAP32[$43>>2]|0; - $45 = (($42) + 4)|0; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - tempRet0 = $47; - STACKTOP = sp;return ($44|0); -} -function _sqlite3BtreeGetAutoVacuum($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($1); - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - $5 = (($4) + 17|0); - $6 = HEAP8[$5>>0]|0; - $7 = ($6<<24>>24)!=(0); - if (!($7)) { - $16 = 0; - HEAP32[$rc>>2] = $16; - $17 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($17|0); - } - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + 18|0); - $12 = HEAP8[$11>>0]|0; - $13 = ($12<<24>>24)!=(0); - $14 = $13 ^ 1; - $15 = $14 ? 1 : 2; - $16 = $15; - HEAP32[$rc>>2] = $16; - $17 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($17|0); -} -function _getAutoVacuum($z) { - $z = $z|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $i = 0, $or$cond = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $i = sp; - HEAP32[$1>>2] = $z; - $2 = HEAP32[$1>>2]|0; - $3 = (_sqlite3_stricmp($2,22064)|0); - $4 = (0)==($3|0); - do { - if ($4) { - HEAP32[$0>>2] = 0; - } else { - $5 = HEAP32[$1>>2]|0; - $6 = (_sqlite3_stricmp($5,21776)|0); - $7 = (0)==($6|0); - if ($7) { - HEAP32[$0>>2] = 1; - break; - } - $8 = HEAP32[$1>>2]|0; - $9 = (_sqlite3_stricmp($8,22072)|0); - $10 = (0)==($9|0); - if ($10) { - HEAP32[$0>>2] = 2; - break; - } else { - $11 = HEAP32[$1>>2]|0; - $12 = (_sqlite3Atoi($11)|0); - HEAP32[$i>>2] = $12; - $13 = HEAP32[$i>>2]|0; - $14 = ($13|0)>=(0); - $15 = HEAP32[$i>>2]|0; - $16 = ($15|0)<=(2); - $or$cond = $14 & $16; - $17 = HEAP32[$i>>2]|0; - $18 = $or$cond ? $17 : 0; - $19 = $18&255; - $20 = $19&255; - HEAP32[$0>>2] = $20; - break; - } - } - } while(0); - $21 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($21|0); -} -function _sqlite3BtreeSetAutoVacuum($p,$autoVacuum) { - $p = $p|0; - $autoVacuum = $autoVacuum|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $av = 0, $pBt = 0; - var $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $pBt = sp + 4|0; - $rc = sp; - $av = sp + 16|0; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $autoVacuum; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pBt>>2] = $4; - HEAP32[$rc>>2] = 0; - $5 = HEAP32[$1>>2]|0; - $6 = $5&255; - HEAP8[$av>>0] = $6; - $7 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($7); - $8 = HEAP32[$pBt>>2]|0; - $9 = (($8) + 22|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10&65535; - $12 = $11 & 2; - $13 = ($12|0)!=(0); - if ($13) { - $14 = HEAP8[$av>>0]|0; - $15 = $14&255; - $16 = ($15|0)!=(0); - $17 = $16 ? 1 : 0; - $18 = HEAP32[$pBt>>2]|0; - $19 = (($18) + 17|0); - $20 = HEAP8[$19>>0]|0; - $21 = $20&255; - $22 = ($17|0)!=($21|0); - if ($22) { - HEAP32[$rc>>2] = 8; - $37 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($37|0); - } - } - $23 = HEAP8[$av>>0]|0; - $24 = $23&255; - $25 = ($24|0)!=(0); - $26 = $25 ? 1 : 0; - $27 = $26&255; - $28 = HEAP32[$pBt>>2]|0; - $29 = (($28) + 17|0); - HEAP8[$29>>0] = $27; - $30 = HEAP8[$av>>0]|0; - $31 = $30&255; - $32 = ($31|0)==(2); - $33 = $32 ? 1 : 0; - $34 = $33&255; - $35 = HEAP32[$pBt>>2]|0; - $36 = (($35) + 18|0); - HEAP8[$36>>0] = $34; - $37 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($37|0); -} -function _changeTempStorage($pParse,$zStorageType) { - $pParse = $pParse|0; - $zStorageType = $zStorageType|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $db = 0, $ts = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $ts = sp + 4|0; - $db = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $zStorageType; - $3 = HEAP32[$2>>2]|0; - $4 = (_getTempStore($3)|0); - HEAP32[$ts>>2] = $4; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$db>>2]|0; - $8 = (($7) + 63|0); - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - $11 = HEAP32[$ts>>2]|0; - $12 = ($10|0)==($11|0); - if ($12) { - HEAP32[$0>>2] = 0; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); - } - $13 = HEAP32[$1>>2]|0; - $14 = (_invalidateTempStorage($13)|0); - $15 = ($14|0)!=(0); - if ($15) { - HEAP32[$0>>2] = 1; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); - } else { - $16 = HEAP32[$ts>>2]|0; - $17 = $16&255; - $18 = HEAP32[$db>>2]|0; - $19 = (($18) + 63|0); - HEAP8[$19>>0] = $17; - HEAP32[$0>>2] = 0; - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); - } - return 0|0; -} -function _invalidateTempStorage($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $vararg_buffer = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 12|0; - $1 = sp + 8|0; - $db = sp + 4|0; - HEAP32[$1>>2] = $pParse; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$db>>2]|0; - $5 = (($4) + 16|0); - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + 16|0); - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)!=(0|0); - do { - if ($10) { - $11 = HEAP32[$db>>2]|0; - $12 = (($11) + 62|0); - $13 = HEAP8[$12>>0]|0; - $14 = ($13<<24>>24)!=(0); - if ($14) { - $15 = HEAP32[$db>>2]|0; - $16 = (($15) + 16|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + 16|0); - $19 = (($18) + 4|0); - $20 = HEAP32[$19>>2]|0; - $21 = (_sqlite3BtreeIsInReadTrans($20)|0); - $22 = ($21|0)!=(0); - if (!($22)) { - $24 = HEAP32[$db>>2]|0; - $25 = (($24) + 16|0); - $26 = HEAP32[$25>>2]|0; - $27 = (($26) + 16|0); - $28 = (($27) + 4|0); - $29 = HEAP32[$28>>2]|0; - (_sqlite3BtreeClose($29)|0); - $30 = HEAP32[$db>>2]|0; - $31 = (($30) + 16|0); - $32 = HEAP32[$31>>2]|0; - $33 = (($32) + 16|0); - $34 = (($33) + 4|0); - HEAP32[$34>>2] = 0; - $35 = HEAP32[$db>>2]|0; - _sqlite3ResetAllSchemasOfConnection($35); - break; - } - } - $23 = HEAP32[$1>>2]|0; - _sqlite3ErrorMsg($23,22000,$vararg_buffer); - HEAP32[$0>>2] = 1; - $36 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($36|0); - } - } while(0); - HEAP32[$0>>2] = 0; - $36 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($36|0); -} -function _setAllPagerFlags($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, $pDb = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $pDb = sp + 4|0; - $n = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 62|0); - $3 = HEAP8[$2>>0]|0; - $4 = ($3<<24>>24)!=(0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 16|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pDb>>2] = $7; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 20|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$n>>2] = $10; - while(1) { - $11 = HEAP32[$n>>2]|0; - $12 = (($11) + -1)|0; - HEAP32[$n>>2] = $12; - $13 = ($11|0)>(0); - if (!($13)) { - break; - } - $14 = HEAP32[$pDb>>2]|0; - $15 = (($14) + 4|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($16|0)!=(0|0); - if ($17) { - $18 = HEAP32[$pDb>>2]|0; - $19 = (($18) + 4|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$pDb>>2]|0; - $22 = (($21) + 8|0); - $23 = HEAP8[$22>>0]|0; - $24 = $23&255; - $25 = HEAP32[$0>>2]|0; - $26 = (($25) + 24|0); - $27 = HEAP32[$26>>2]|0; - $28 = $27 & 28; - $29 = $24 | $28; - (_sqlite3BtreeSetPagerFlags($20,$29)|0); - } - $30 = HEAP32[$pDb>>2]|0; - $31 = (($30) + 16|0); - HEAP32[$pDb>>2] = $31; - } - STACKTOP = sp;return; -} -function _sqlite3LogEstToInt($x) { - $x = $x|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0; - var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; - var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; - var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; - var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; - var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $n = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 8|0; - $1 = sp + 16|0; - $n = sp; - HEAP16[$1>>1] = $x; - $2 = HEAP16[$1>>1]|0; - $3 = $2 << 16 >> 16; - $4 = ($3|0)<(10); - if ($4) { - $5 = $0; - $6 = $5; - HEAP32[$6>>2] = 1; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = 0; - $104 = $0; - $105 = $104; - $106 = HEAP32[$105>>2]|0; - $107 = (($104) + 4)|0; - $108 = $107; - $109 = HEAP32[$108>>2]|0; - tempRet0 = $109; - STACKTOP = sp;return ($106|0); - } - $9 = HEAP16[$1>>1]|0; - $10 = $9 << 16 >> 16; - $11 = (($10|0) % 10)&-1; - $12 = ($11|0)<(0); - $13 = $12 << 31 >> 31; - $14 = $n; - $15 = $14; - HEAP32[$15>>2] = $11; - $16 = (($14) + 4)|0; - $17 = $16; - HEAP32[$17>>2] = $13; - $18 = HEAP16[$1>>1]|0; - $19 = $18 << 16 >> 16; - $20 = (($19|0) / 10)&-1; - $21 = $20&65535; - HEAP16[$1>>1] = $21; - $22 = $n; - $23 = $22; - $24 = HEAP32[$23>>2]|0; - $25 = (($22) + 4)|0; - $26 = $25; - $27 = HEAP32[$26>>2]|0; - $28 = ($27>>>0)>(0); - $29 = ($27|0)==(0); - $30 = ($24>>>0)>=(5); - $31 = $29 & $30; - $32 = $28 | $31; - $33 = $n; - $34 = $33; - $35 = HEAP32[$34>>2]|0; - $36 = (($33) + 4)|0; - $37 = $36; - $38 = HEAP32[$37>>2]|0; - if ($32) { - $39 = (_i64Subtract(($35|0),($38|0),2,0)|0); - $40 = tempRet0; - $41 = $n; - $42 = $41; - HEAP32[$42>>2] = $39; - $43 = (($41) + 4)|0; - $44 = $43; - HEAP32[$44>>2] = $40; - } else { - $45 = ($38>>>0)>(0); - $46 = ($38|0)==(0); - $47 = ($35>>>0)>=(1); - $48 = $46 & $47; - $49 = $45 | $48; - if ($49) { - $50 = $n; - $51 = $50; - $52 = HEAP32[$51>>2]|0; - $53 = (($50) + 4)|0; - $54 = $53; - $55 = HEAP32[$54>>2]|0; - $56 = (_i64Subtract(($52|0),($55|0),1,0)|0); - $57 = tempRet0; - $58 = $n; - $59 = $58; - HEAP32[$59>>2] = $56; - $60 = (($58) + 4)|0; - $61 = $60; - HEAP32[$61>>2] = $57; - } - } - $62 = HEAP16[$1>>1]|0; - $63 = $62 << 16 >> 16; - $64 = ($63|0)>=(3); - if (!($64)) { - $87 = $n; - $88 = $87; - $89 = HEAP32[$88>>2]|0; - $90 = (($87) + 4)|0; - $91 = $90; - $92 = HEAP32[$91>>2]|0; - $93 = (_i64Add(($89|0),($92|0),8,0)|0); - $94 = tempRet0; - $95 = HEAP16[$1>>1]|0; - $96 = $95 << 16 >> 16; - $97 = (3 - ($96))|0; - $98 = (_bitshift64Lshr(($93|0),($94|0),($97|0))|0); - $99 = tempRet0; - $100 = $0; - $101 = $100; - HEAP32[$101>>2] = $98; - $102 = (($100) + 4)|0; - $103 = $102; - HEAP32[$103>>2] = $99; - $104 = $0; - $105 = $104; - $106 = HEAP32[$105>>2]|0; - $107 = (($104) + 4)|0; - $108 = $107; - $109 = HEAP32[$108>>2]|0; - tempRet0 = $109; - STACKTOP = sp;return ($106|0); - } - $65 = HEAP16[$1>>1]|0; - $66 = $65 << 16 >> 16; - $67 = ($66|0)>(60); - if ($67) { - $83 = -1;$86 = 2147483647; - } else { - $68 = $n; - $69 = $68; - $70 = HEAP32[$69>>2]|0; - $71 = (($68) + 4)|0; - $72 = $71; - $73 = HEAP32[$72>>2]|0; - $74 = (_i64Add(($70|0),($73|0),8,0)|0); - $75 = tempRet0; - $76 = HEAP16[$1>>1]|0; - $77 = $76 << 16 >> 16; - $78 = (($77) - 3)|0; - $79 = (_bitshift64Shl(($74|0),($75|0),($78|0))|0); - $80 = tempRet0; - $83 = $79;$86 = $80; - } - $81 = $0; - $82 = $81; - HEAP32[$82>>2] = $83; - $84 = (($81) + 4)|0; - $85 = $84; - HEAP32[$85>>2] = $86; - $104 = $0; - $105 = $104; - $106 = HEAP32[$105>>2]|0; - $107 = (($104) + 4)|0; - $108 = $107; - $109 = HEAP32[$108>>2]|0; - tempRet0 = $109; - STACKTOP = sp;return ($106|0); -} -function _actionName($action) { - $action = $action|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $zName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $zName = sp; - HEAP8[$0>>0] = $action; - $1 = HEAP8[$0>>0]|0; - $2 = $1&255; - if ((($2|0) == 7)) { - HEAP32[$zName>>2] = 21928; - } else if ((($2|0) == 8)) { - HEAP32[$zName>>2] = 21944; - } else if ((($2|0) == 6)) { - HEAP32[$zName>>2] = 21968; - } else if ((($2|0) == 9)) { - HEAP32[$zName>>2] = 21960; - } else { - HEAP32[$zName>>2] = 21984; - } - $3 = HEAP32[$zName>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _sqlite3FkLocateIndex($pParse,$pParent,$pFKey,$ppIdx,$paiCol) { - $pParse = $pParse|0; - $pParent = $pParent|0; - $pFKey = $pFKey|0; - $ppIdx = $ppIdx|0; - $paiCol = $paiCol|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; - var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; - var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; - var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; - var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; - var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; - var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; - var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; - var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aiCol = 0, $i = 0, $i1 = 0, $iCol = 0, $j = 0, $nCol = 0; - var $pIdx = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $zDfltColl = 0, $zIdxCol = 0, $zKey = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer = sp; - $0 = sp + 64|0; - $1 = sp + 60|0; - $2 = sp + 56|0; - $3 = sp + 52|0; - $4 = sp + 48|0; - $5 = sp + 44|0; - $pIdx = sp + 40|0; - $aiCol = sp + 36|0; - $nCol = sp + 32|0; - $zKey = sp + 28|0; - $i = sp + 24|0; - $i1 = sp + 20|0; - $j = sp + 16|0; - $iCol = sp + 68|0; - $zDfltColl = sp + 12|0; - $zIdxCol = sp + 8|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pParent; - HEAP32[$3>>2] = $pFKey; - HEAP32[$4>>2] = $ppIdx; - HEAP32[$5>>2] = $paiCol; - HEAP32[$pIdx>>2] = 0; - HEAP32[$aiCol>>2] = 0; - $6 = HEAP32[$3>>2]|0; - $7 = (($6) + 20|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$nCol>>2] = $8; - $9 = HEAP32[$3>>2]|0; - $10 = (($9) + 36|0); - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$zKey>>2] = $12; - $13 = HEAP32[$nCol>>2]|0; - $14 = ($13|0)==(1); - do { - if ($14) { - $15 = HEAP32[$2>>2]|0; - $16 = (($15) + 36|0); - $17 = HEAP16[$16>>1]|0; - $18 = $17 << 16 >> 16; - $19 = ($18|0)>=(0); - if ($19) { - $20 = HEAP32[$zKey>>2]|0; - $21 = ($20|0)!=(0|0); - if (!($21)) { - HEAP32[$0>>2] = 0; - $172 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($172|0); - } - $22 = HEAP32[$2>>2]|0; - $23 = (($22) + 36|0); - $24 = HEAP16[$23>>1]|0; - $25 = $24 << 16 >> 16; - $26 = HEAP32[$2>>2]|0; - $27 = (($26) + 4|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + (($25*24)|0)|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$zKey>>2]|0; - $32 = (_sqlite3_stricmp($30,$31)|0); - $33 = ($32|0)!=(0); - if (!($33)) { - HEAP32[$0>>2] = 0; - $172 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($172|0); - } - } - } else { - $34 = HEAP32[$5>>2]|0; - $35 = ($34|0)!=(0|0); - if ($35) { - $36 = HEAP32[$1>>2]|0; - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$nCol>>2]|0; - $39 = $38<<2; - $40 = (_sqlite3DbMallocRaw($37,$39)|0); - HEAP32[$aiCol>>2] = $40; - $41 = HEAP32[$aiCol>>2]|0; - $42 = ($41|0)!=(0|0); - if ($42) { - $43 = HEAP32[$aiCol>>2]|0; - $44 = HEAP32[$5>>2]|0; - HEAP32[$44>>2] = $43; - break; - } - HEAP32[$0>>2] = 1; - $172 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($172|0); - } - } - } while(0); - $45 = HEAP32[$2>>2]|0; - $46 = (($45) + 8|0); - $47 = HEAP32[$46>>2]|0; - HEAP32[$pIdx>>2] = $47; - L17: while(1) { - $48 = HEAP32[$pIdx>>2]|0; - $49 = ($48|0)!=(0|0); - if (!($49)) { - break; - } - $50 = HEAP32[$pIdx>>2]|0; - $51 = (($50) + 50|0); - $52 = HEAP16[$51>>1]|0; - $53 = $52&65535; - $54 = HEAP32[$nCol>>2]|0; - $55 = ($53|0)==($54|0); - do { - if ($55) { - $56 = HEAP32[$pIdx>>2]|0; - $57 = (($56) + 54|0); - $58 = HEAP8[$57>>0]|0; - $59 = $58&255; - $60 = ($59|0)!=(0); - if ($60) { - $61 = HEAP32[$zKey>>2]|0; - $62 = ($61|0)==(0|0); - if ($62) { - $63 = HEAP32[$pIdx>>2]|0; - $64 = (($63) + 55|0); - $65 = HEAP8[$64>>0]|0; - $66 = $65 & 3; - $67 = $66&255; - $68 = ($67|0)==(2); - if ($68) { - label = 17; - break L17; - } else { - break; - } - } - HEAP32[$i1>>2] = 0; - while(1) { - $84 = HEAP32[$i1>>2]|0; - $85 = HEAP32[$nCol>>2]|0; - $86 = ($84|0)<($85|0); - if (!($86)) { - break; - } - $87 = HEAP32[$i1>>2]|0; - $88 = HEAP32[$pIdx>>2]|0; - $89 = (($88) + 4|0); - $90 = HEAP32[$89>>2]|0; - $91 = (($90) + ($87<<1)|0); - $92 = HEAP16[$91>>1]|0; - HEAP16[$iCol>>1] = $92; - $93 = HEAP16[$iCol>>1]|0; - $94 = $93 << 16 >> 16; - $95 = HEAP32[$2>>2]|0; - $96 = (($95) + 4|0); - $97 = HEAP32[$96>>2]|0; - $98 = (($97) + (($94*24)|0)|0); - $99 = (($98) + 16|0); - $100 = HEAP32[$99>>2]|0; - HEAP32[$zDfltColl>>2] = $100; - $101 = HEAP32[$zDfltColl>>2]|0; - $102 = ($101|0)!=(0|0); - $$ = $102 ? $100 : 3320; - HEAP32[$zDfltColl>>2] = $$; - $103 = HEAP32[$i1>>2]|0; - $104 = HEAP32[$pIdx>>2]|0; - $105 = (($104) + 32|0); - $106 = HEAP32[$105>>2]|0; - $107 = (($106) + ($103<<2)|0); - $108 = HEAP32[$107>>2]|0; - $109 = HEAP32[$zDfltColl>>2]|0; - $110 = (_sqlite3_stricmp($108,$109)|0); - $111 = ($110|0)!=(0); - if ($111) { - break; - } - $112 = HEAP16[$iCol>>1]|0; - $113 = $112 << 16 >> 16; - $114 = HEAP32[$2>>2]|0; - $115 = (($114) + 4|0); - $116 = HEAP32[$115>>2]|0; - $117 = (($116) + (($113*24)|0)|0); - $118 = HEAP32[$117>>2]|0; - HEAP32[$zIdxCol>>2] = $118; - HEAP32[$j>>2] = 0; - while(1) { - $119 = HEAP32[$j>>2]|0; - $120 = HEAP32[$nCol>>2]|0; - $121 = ($119|0)<($120|0); - if (!($121)) { - break; - } - $122 = HEAP32[$j>>2]|0; - $123 = HEAP32[$3>>2]|0; - $124 = (($123) + 36|0); - $125 = (($124) + ($122<<3)|0); - $126 = (($125) + 4|0); - $127 = HEAP32[$126>>2]|0; - $128 = HEAP32[$zIdxCol>>2]|0; - $129 = (_sqlite3_stricmp($127,$128)|0); - $130 = ($129|0)==(0); - if ($130) { - label = 27; - break; - } - $141 = HEAP32[$j>>2]|0; - $142 = (($141) + 1)|0; - HEAP32[$j>>2] = $142; - } - if ((label|0) == 27) { - label = 0; - $131 = HEAP32[$aiCol>>2]|0; - $132 = ($131|0)!=(0|0); - if ($132) { - $133 = HEAP32[$j>>2]|0; - $134 = HEAP32[$3>>2]|0; - $135 = (($134) + 36|0); - $136 = (($135) + ($133<<3)|0); - $137 = HEAP32[$136>>2]|0; - $138 = HEAP32[$i1>>2]|0; - $139 = HEAP32[$aiCol>>2]|0; - $140 = (($139) + ($138<<2)|0); - HEAP32[$140>>2] = $137; - } - } - $143 = HEAP32[$j>>2]|0; - $144 = HEAP32[$nCol>>2]|0; - $145 = ($143|0)==($144|0); - if ($145) { - break; - } - $146 = HEAP32[$i1>>2]|0; - $147 = (($146) + 1)|0; - HEAP32[$i1>>2] = $147; - } - $148 = HEAP32[$i1>>2]|0; - $149 = HEAP32[$nCol>>2]|0; - $150 = ($148|0)==($149|0); - if ($150) { - break L17; - } - } - } - } while(0); - $151 = HEAP32[$pIdx>>2]|0; - $152 = (($151) + 20|0); - $153 = HEAP32[$152>>2]|0; - HEAP32[$pIdx>>2] = $153; - } - L41: do { - if ((label|0) == 17) { - $69 = HEAP32[$aiCol>>2]|0; - $70 = ($69|0)!=(0|0); - if ($70) { - HEAP32[$i>>2] = 0; - while(1) { - $71 = HEAP32[$i>>2]|0; - $72 = HEAP32[$nCol>>2]|0; - $73 = ($71|0)<($72|0); - if (!($73)) { - break L41; - } - $74 = HEAP32[$i>>2]|0; - $75 = HEAP32[$3>>2]|0; - $76 = (($75) + 36|0); - $77 = (($76) + ($74<<3)|0); - $78 = HEAP32[$77>>2]|0; - $79 = HEAP32[$i>>2]|0; - $80 = HEAP32[$aiCol>>2]|0; - $81 = (($80) + ($79<<2)|0); - HEAP32[$81>>2] = $78; - $82 = HEAP32[$i>>2]|0; - $83 = (($82) + 1)|0; - HEAP32[$i>>2] = $83; - } - } - } - } while(0); - $154 = HEAP32[$pIdx>>2]|0; - $155 = ($154|0)!=(0|0); - if ($155) { - $170 = HEAP32[$pIdx>>2]|0; - $171 = HEAP32[$4>>2]|0; - HEAP32[$171>>2] = $170; - HEAP32[$0>>2] = 0; - $172 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($172|0); - } - $156 = HEAP32[$1>>2]|0; - $157 = (($156) + 438|0); - $158 = HEAP8[$157>>0]|0; - $159 = ($158<<24>>24)!=(0); - if (!($159)) { - $160 = HEAP32[$1>>2]|0; - $161 = HEAP32[$3>>2]|0; - $162 = HEAP32[$161>>2]|0; - $163 = HEAP32[$162>>2]|0; - $164 = HEAP32[$3>>2]|0; - $165 = (($164) + 8|0); - $166 = HEAP32[$165>>2]|0; - HEAP32[$vararg_buffer>>2] = $163; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $166; - _sqlite3ErrorMsg($160,21880,$vararg_buffer); - } - $167 = HEAP32[$1>>2]|0; - $168 = HEAP32[$167>>2]|0; - $169 = HEAP32[$aiCol>>2]|0; - _sqlite3DbFree($168,$169); - HEAP32[$0>>2] = 1; - $172 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($172|0); -} -function _sqlite3IndexAffinityStr($v,$pIdx) { - $v = $v|0; - $pIdx = $pIdx|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $n = 0, $pTab = 0, $x = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $n = sp + 8|0; - $pTab = sp + 4|0; - $db = sp; - $x = sp + 24|0; - HEAP32[$1>>2] = $v; - HEAP32[$2>>2] = $pIdx; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 16|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - $7 = HEAP32[$2>>2]|0; - $8 = (($7) + 12|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$pTab>>2] = $9; - $10 = HEAP32[$1>>2]|0; - $11 = (_sqlite3VdbeDb($10)|0); - HEAP32[$db>>2] = $11; - $12 = HEAP32[$2>>2]|0; - $13 = (($12) + 52|0); - $14 = HEAP16[$13>>1]|0; - $15 = $14&65535; - $16 = (($15) + 1)|0; - $17 = (_sqlite3DbMallocRaw(0,$16)|0); - $18 = HEAP32[$2>>2]|0; - $19 = (($18) + 16|0); - HEAP32[$19>>2] = $17; - $20 = HEAP32[$2>>2]|0; - $21 = (($20) + 16|0); - $22 = HEAP32[$21>>2]|0; - $23 = ($22|0)!=(0|0); - if (!($23)) { - $24 = HEAP32[$db>>2]|0; - $25 = (($24) + 64|0); - HEAP8[$25>>0] = 1; - HEAP32[$0>>2] = 0; - $65 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($65|0); - } - HEAP32[$n>>2] = 0; - while(1) { - $26 = HEAP32[$n>>2]|0; - $27 = HEAP32[$2>>2]|0; - $28 = (($27) + 52|0); - $29 = HEAP16[$28>>1]|0; - $30 = $29&65535; - $31 = ($26|0)<($30|0); - $32 = HEAP32[$n>>2]|0; - $33 = HEAP32[$2>>2]|0; - if (!($31)) { - break; - } - $34 = (($33) + 4|0); - $35 = HEAP32[$34>>2]|0; - $36 = (($35) + ($32<<1)|0); - $37 = HEAP16[$36>>1]|0; - HEAP16[$x>>1] = $37; - $38 = HEAP16[$x>>1]|0; - $39 = $38 << 16 >> 16; - $40 = ($39|0)<(0); - if ($40) { - $51 = 100; - } else { - $41 = HEAP16[$x>>1]|0; - $42 = $41 << 16 >> 16; - $43 = HEAP32[$pTab>>2]|0; - $44 = (($43) + 4|0); - $45 = HEAP32[$44>>2]|0; - $46 = (($45) + (($42*24)|0)|0); - $47 = (($46) + 21|0); - $48 = HEAP8[$47>>0]|0; - $49 = $48 << 24 >> 24; - $51 = $49; - } - $50 = $51&255; - $52 = HEAP32[$n>>2]|0; - $53 = HEAP32[$2>>2]|0; - $54 = (($53) + 16|0); - $55 = HEAP32[$54>>2]|0; - $56 = (($55) + ($52)|0); - HEAP8[$56>>0] = $50; - $57 = HEAP32[$n>>2]|0; - $58 = (($57) + 1)|0; - HEAP32[$n>>2] = $58; - } - $59 = (($33) + 16|0); - $60 = HEAP32[$59>>2]|0; - $61 = (($60) + ($32)|0); - HEAP8[$61>>0] = 0; - } - $62 = HEAP32[$2>>2]|0; - $63 = (($62) + 16|0); - $64 = HEAP32[$63>>2]|0; - HEAP32[$0>>2] = $64; - $65 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($65|0); -} -function _sqlite3RegisterLikeFunctions($db,$caseSensitive) { - $db = $db|0; - $caseSensitive = $caseSensitive|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pInfo = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pInfo = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $caseSensitive; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0); - if ($3) { - HEAP32[$pInfo>>2] = 21872; - } else { - HEAP32[$pInfo>>2] = 8680; - } - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$pInfo>>2]|0; - (_sqlite3CreateFunc($4,8688,2,1,$5,34,0,0,0)|0); - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$pInfo>>2]|0; - (_sqlite3CreateFunc($6,8688,3,1,$7,34,0,0,0)|0); - $8 = HEAP32[$0>>2]|0; - (_sqlite3CreateFunc($8,8672,2,1,1464,34,0,0,0)|0); - $9 = HEAP32[$0>>2]|0; - _setLikeOptFlag($9,8672,12); - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = ($11|0)!=(0); - $13 = $12 ? 12 : 4; - $14 = $13&255; - _setLikeOptFlag($10,8688,$14); - STACKTOP = sp;return; -} -function _sqlite3ExprCacheClear($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $i = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$i>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 116|0); - HEAP32[$p>>2] = $2; - while(1) { - $3 = HEAP32[$i>>2]|0; - $4 = ($3|0)<(10); - if (!($4)) { - break; - } - $5 = HEAP32[$p>>2]|0; - $6 = (($5) + 12|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)!=(0); - if ($8) { - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$p>>2]|0; - _cacheEntryClear($9,$10); - $11 = HEAP32[$p>>2]|0; - $12 = (($11) + 12|0); - HEAP32[$12>>2] = 0; - } - $13 = HEAP32[$i>>2]|0; - $14 = (($13) + 1)|0; - HEAP32[$i>>2] = $14; - $15 = HEAP32[$p>>2]|0; - $16 = (($15) + 20|0); - HEAP32[$p>>2] = $16; - } - STACKTOP = sp;return; -} -function _sqlite3OpenTableAndIndices($pParse,$pTab,$op,$iBase,$aToOpen,$piDataCur,$piIdxCur) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $op = $op|0; - $iBase = $iBase|0; - $aToOpen = $aToOpen|0; - $piDataCur = $piDataCur|0; - $piIdxCur = $piIdxCur|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; - var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; - var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; - var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; - var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; - var $98 = 0, $99 = 0, $i = 0, $iDataCur = 0, $iDb = 0, $iIdxCur = 0, $pIdx = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 52|0; - $1 = sp + 48|0; - $2 = sp + 44|0; - $3 = sp + 40|0; - $4 = sp + 36|0; - $5 = sp + 32|0; - $6 = sp + 28|0; - $7 = sp + 24|0; - $i = sp + 20|0; - $iDb = sp + 16|0; - $iDataCur = sp + 12|0; - $pIdx = sp + 8|0; - $v = sp + 4|0; - $iIdxCur = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pTab; - HEAP32[$3>>2] = $op; - HEAP32[$4>>2] = $iBase; - HEAP32[$5>>2] = $aToOpen; - HEAP32[$6>>2] = $piDataCur; - HEAP32[$7>>2] = $piIdxCur; - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + 44|0); - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - $12 = $11 & 16; - $13 = ($12|0)!=(0); - if ($13) { - $14 = HEAP32[$6>>2]|0; - HEAP32[$14>>2] = 0; - $15 = HEAP32[$7>>2]|0; - HEAP32[$15>>2] = 1; - HEAP32[$0>>2] = 0; - $121 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($121|0); - } - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$2>>2]|0; - $19 = (($18) + 68|0); - $20 = HEAP32[$19>>2]|0; - $21 = (_sqlite3SchemaToIndex($17,$20)|0); - HEAP32[$iDb>>2] = $21; - $22 = HEAP32[$1>>2]|0; - $23 = (_sqlite3GetVdbe($22)|0); - HEAP32[$v>>2] = $23; - $24 = HEAP32[$4>>2]|0; - $25 = ($24|0)<(0); - if ($25) { - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 68|0); - $28 = HEAP32[$27>>2]|0; - HEAP32[$4>>2] = $28; - } - $29 = HEAP32[$4>>2]|0; - $30 = (($29) + 1)|0; - HEAP32[$4>>2] = $30; - HEAP32[$iDataCur>>2] = $29; - $31 = HEAP32[$6>>2]|0; - $32 = ($31|0)!=(0|0); - if ($32) { - $33 = HEAP32[$iDataCur>>2]|0; - $34 = HEAP32[$6>>2]|0; - HEAP32[$34>>2] = $33; - } - $35 = HEAP32[$2>>2]|0; - $36 = (($35) + 44|0); - $37 = HEAP8[$36>>0]|0; - $38 = $37&255; - $39 = $38 & 32; - $40 = ($39|0)==(0); - do { - if ($40) { - $41 = HEAP32[$5>>2]|0; - $42 = ($41|0)==(0|0); - if (!($42)) { - $43 = HEAP32[$5>>2]|0; - $44 = HEAP8[$43>>0]|0; - $45 = $44&255; - $46 = ($45|0)!=(0); - if (!($46)) { - label = 11; - break; - } - } - $47 = HEAP32[$1>>2]|0; - $48 = HEAP32[$iDataCur>>2]|0; - $49 = HEAP32[$iDb>>2]|0; - $50 = HEAP32[$2>>2]|0; - $51 = HEAP32[$3>>2]|0; - _sqlite3OpenTable($47,$48,$49,$50,$51); - } else { - label = 11; - } - } while(0); - if ((label|0) == 11) { - $52 = HEAP32[$1>>2]|0; - $53 = HEAP32[$iDb>>2]|0; - $54 = HEAP32[$2>>2]|0; - $55 = (($54) + 32|0); - $56 = HEAP32[$55>>2]|0; - $57 = HEAP32[$3>>2]|0; - $58 = ($57|0)==(53); - $59 = $58&1; - $60 = $59&255; - $61 = HEAP32[$2>>2]|0; - $62 = HEAP32[$61>>2]|0; - _sqlite3TableLock($52,$53,$56,$60,$62); - } - $63 = HEAP32[$7>>2]|0; - $64 = ($63|0)!=(0|0); - if ($64) { - $65 = HEAP32[$4>>2]|0; - $66 = HEAP32[$7>>2]|0; - HEAP32[$66>>2] = $65; - } - HEAP32[$i>>2] = 0; - $67 = HEAP32[$2>>2]|0; - $68 = (($67) + 8|0); - $69 = HEAP32[$68>>2]|0; - HEAP32[$pIdx>>2] = $69; - while(1) { - $70 = HEAP32[$pIdx>>2]|0; - $71 = ($70|0)!=(0|0); - $72 = HEAP32[$4>>2]|0; - if (!($71)) { - break; - } - $73 = (($72) + 1)|0; - HEAP32[$4>>2] = $73; - HEAP32[$iIdxCur>>2] = $72; - $74 = HEAP32[$pIdx>>2]|0; - $75 = (($74) + 55|0); - $76 = HEAP8[$75>>0]|0; - $77 = $76 & 3; - $78 = $77&255; - $79 = ($78|0)==(2); - if ($79) { - $80 = HEAP32[$2>>2]|0; - $81 = (($80) + 44|0); - $82 = HEAP8[$81>>0]|0; - $83 = $82&255; - $84 = $83 & 32; - $85 = ($84|0)==(0); - if (!($85)) { - $86 = HEAP32[$6>>2]|0; - $87 = ($86|0)!=(0|0); - if ($87) { - $88 = HEAP32[$iIdxCur>>2]|0; - $89 = HEAP32[$6>>2]|0; - HEAP32[$89>>2] = $88; - } - } - } - $90 = HEAP32[$5>>2]|0; - $91 = ($90|0)==(0|0); - if ($91) { - label = 22; - } else { - $92 = HEAP32[$i>>2]|0; - $93 = (($92) + 1)|0; - $94 = HEAP32[$5>>2]|0; - $95 = (($94) + ($93)|0); - $96 = HEAP8[$95>>0]|0; - $97 = $96&255; - $98 = ($97|0)!=(0); - if ($98) { - label = 22; - } - } - if ((label|0) == 22) { - label = 0; - $99 = HEAP32[$v>>2]|0; - $100 = HEAP32[$3>>2]|0; - $101 = HEAP32[$iIdxCur>>2]|0; - $102 = HEAP32[$pIdx>>2]|0; - $103 = (($102) + 44|0); - $104 = HEAP32[$103>>2]|0; - $105 = HEAP32[$iDb>>2]|0; - (_sqlite3VdbeAddOp3($99,$100,$101,$104,$105)|0); - $106 = HEAP32[$1>>2]|0; - $107 = HEAP32[$pIdx>>2]|0; - _sqlite3VdbeSetP4KeyInfo($106,$107); - } - $108 = HEAP32[$pIdx>>2]|0; - $109 = (($108) + 20|0); - $110 = HEAP32[$109>>2]|0; - HEAP32[$pIdx>>2] = $110; - $111 = HEAP32[$i>>2]|0; - $112 = (($111) + 1)|0; - HEAP32[$i>>2] = $112; - } - $113 = HEAP32[$1>>2]|0; - $114 = (($113) + 68|0); - $115 = HEAP32[$114>>2]|0; - $116 = ($72|0)>($115|0); - if ($116) { - $117 = HEAP32[$4>>2]|0; - $118 = HEAP32[$1>>2]|0; - $119 = (($118) + 68|0); - HEAP32[$119>>2] = $117; - } - $120 = HEAP32[$i>>2]|0; - HEAP32[$0>>2] = $120; - $121 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($121|0); -} -function _setLikeOptFlag($db,$zName,$flagVal) { - $db = $db|0; - $zName = $zName|0; - $flagVal = $flagVal|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDef = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp + 12|0; - $pDef = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $zName; - HEAP8[$2>>0] = $flagVal; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = (_sqlite3Strlen30($5)|0); - $7 = (_sqlite3FindFunction($3,$4,$6,2,1,0)|0); - HEAP32[$pDef>>2] = $7; - $8 = HEAP32[$pDef>>2]|0; - $9 = ($8|0)!=(0|0); - if (!($9)) { - STACKTOP = sp;return; - } - $10 = HEAP8[$2>>0]|0; - $11 = $10&255; - $12 = HEAP32[$pDef>>2]|0; - $13 = (($12) + 2|0); - $14 = HEAP16[$13>>1]|0; - $15 = $14&65535; - $16 = $15 | $11; - $17 = $16&65535; - HEAP16[$13>>1] = $17; - STACKTOP = sp;return; -} -function _getTempStore($z) { - $z = $z|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $z; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP8[$2>>0]|0; - $4 = $3 << 24 >> 24; - $5 = ($4|0)>=(48); - if ($5) { - $6 = HEAP32[$1>>2]|0; - $7 = HEAP8[$6>>0]|0; - $8 = $7 << 24 >> 24; - $9 = ($8|0)<=(50); - if ($9) { - $10 = HEAP32[$1>>2]|0; - $11 = HEAP8[$10>>0]|0; - $12 = $11 << 24 >> 24; - $13 = (($12) - 48)|0; - HEAP32[$0>>2] = $13; - } else { - label = 4; - } - } else { - label = 4; - } - do { - if ((label|0) == 4) { - $14 = HEAP32[$1>>2]|0; - $15 = (_sqlite3_stricmp($14,21304)|0); - $16 = ($15|0)==(0); - if ($16) { - HEAP32[$0>>2] = 1; - break; - } - $17 = HEAP32[$1>>2]|0; - $18 = (_sqlite3_stricmp($17,4744)|0); - $19 = ($18|0)==(0); - if ($19) { - HEAP32[$0>>2] = 2; - break; - } else { - HEAP32[$0>>2] = 0; - break; - } - } - } while(0); - $20 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($20|0); -} -function _sqlite3WalLimit($pWal,$0,$1) { - $pWal = $pWal|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $2 = sp + 8|0; - $3 = sp; - HEAP32[$2>>2] = $pWal; - $4 = $3; - $5 = $4; - HEAP32[$5>>2] = $0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = $1; - $8 = HEAP32[$2>>2]|0; - $9 = ($8|0)!=(0|0); - if (!($9)) { - STACKTOP = sp;return; - } - $10 = $3; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = (($10) + 4)|0; - $14 = $13; - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$2>>2]|0; - $17 = (($16) + 16|0); - $18 = $17; - $19 = $18; - HEAP32[$19>>2] = $12; - $20 = (($18) + 4)|0; - $21 = $20; - HEAP32[$21>>2] = $15; - STACKTOP = sp;return; -} -function _releaseMemArray($p,$N) { - $p = $p|0; - $N = $N|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $malloc_failed = 0, $pEnd = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $pEnd = sp + 4|0; - $db = sp; - $malloc_failed = sp + 16|0; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $N; - $2 = HEAP32[$0>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - STACKTOP = sp;return; - } - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)!=(0); - if (!($5)) { - STACKTOP = sp;return; - } - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$db>>2] = $7; - $8 = HEAP32[$db>>2]|0; - $9 = (($8) + 64|0); - $10 = HEAP8[$9>>0]|0; - HEAP8[$malloc_failed>>0] = $10; - $11 = HEAP32[$db>>2]|0; - $12 = (($11) + 512|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)!=(0|0); - $15 = HEAP32[$1>>2]|0; - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + (($15*40)|0)|0); - HEAP32[$pEnd>>2] = $17; - if ($14) { - while(1) { - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$pEnd>>2]|0; - $20 = ($18>>>0)<($19>>>0); - if (!($20)) { - break; - } - $21 = HEAP32[$db>>2]|0; - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 36|0); - $24 = HEAP32[$23>>2]|0; - _sqlite3DbFree($21,$24); - $25 = HEAP32[$0>>2]|0; - $26 = (($25) + 40|0); - HEAP32[$0>>2] = $26; - } - STACKTOP = sp;return; - } - while(1) { - $27 = HEAP32[$0>>2]|0; - $28 = HEAP32[$pEnd>>2]|0; - $29 = ($27>>>0)<($28>>>0); - if (!($29)) { - break; - } - $30 = HEAP32[$0>>2]|0; - $31 = (($30) + 28|0); - $32 = HEAP16[$31>>1]|0; - $33 = $32&65535; - $34 = $33 & 9312; - $35 = ($34|0)!=(0); - $36 = HEAP32[$0>>2]|0; - if ($35) { - _sqlite3VdbeMemRelease($36); - } else { - $37 = (($36) + 36|0); - $38 = HEAP32[$37>>2]|0; - $39 = ($38|0)!=(0|0); - if ($39) { - $40 = HEAP32[$db>>2]|0; - $41 = HEAP32[$0>>2]|0; - $42 = (($41) + 36|0); - $43 = HEAP32[$42>>2]|0; - _sqlite3DbFree($40,$43); - $44 = HEAP32[$0>>2]|0; - $45 = (($44) + 36|0); - HEAP32[$45>>2] = 0; - } - } - $46 = HEAP32[$0>>2]|0; - $47 = (($46) + 28|0); - HEAP16[$47>>1] = 128; - $48 = HEAP32[$0>>2]|0; - $49 = (($48) + 40|0); - HEAP32[$0>>2] = $49; - } - $50 = HEAP8[$malloc_failed>>0]|0; - $51 = HEAP32[$db>>2]|0; - $52 = (($51) + 64|0); - HEAP8[$52>>0] = $50; - STACKTOP = sp;return; -} -function _sqlite3ClearStatTables($pParse,$iDb,$zType,$zName) { - $pParse = $pParse|0; - $iDb = $iDb|0; - $zType = $zType|0; - $zName = $zName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $vararg_buffer1 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $zDbName = 0, $zTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer1 = sp; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $i = sp + 20|0; - $zDbName = sp + 16|0; - $zTab = sp + 40|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iDb; - HEAP32[$2>>2] = $zType; - HEAP32[$3>>2] = $zName; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + 16|0); - $8 = HEAP32[$7>>2]|0; - $9 = (($8) + ($4<<4)|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$zDbName>>2] = $10; - HEAP32[$i>>2] = 1; - while(1) { - $11 = HEAP32[$i>>2]|0; - $12 = ($11|0)<=(4); - if (!($12)) { - break; - } - $13 = HEAP32[$i>>2]|0; - HEAP32[$vararg_buffer1>>2] = $13; - (_sqlite3_snprintf(24,$zTab,23128,$vararg_buffer1)|0); - $14 = HEAP32[$0>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$zDbName>>2]|0; - $17 = (_sqlite3FindTable($15,$zTab,$16)|0); - $18 = ($17|0)!=(0|0); - if ($18) { - $19 = HEAP32[$0>>2]|0; - $20 = HEAP32[$zDbName>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = HEAP32[$3>>2]|0; - HEAP32[$vararg_buffer1>>2] = $20; - $vararg_ptr4 = (($vararg_buffer1) + 4|0); - HEAP32[$vararg_ptr4>>2] = $zTab; - $vararg_ptr5 = (($vararg_buffer1) + 8|0); - HEAP32[$vararg_ptr5>>2] = $21; - $vararg_ptr6 = (($vararg_buffer1) + 12|0); - HEAP32[$vararg_ptr6>>2] = $22; - _sqlite3NestedParse($19,18384,$vararg_buffer1); - } - $23 = HEAP32[$i>>2]|0; - $24 = (($23) + 1)|0; - HEAP32[$i>>2] = $24; - } - STACKTOP = sp;return; -} -function _destroyRootPage($pParse,$iTable,$iDb) { - $pParse = $pParse|0; - $iTable = $iTable|0; - $iDb = $iDb|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r1 = 0, $v = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $v = sp + 24|0; - $r1 = sp + 20|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iTable; - HEAP32[$2>>2] = $iDb; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3GetVdbe($3)|0); - HEAP32[$v>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (_sqlite3GetTempReg($5)|0); - HEAP32[$r1>>2] = $6; - $7 = HEAP32[$v>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$r1>>2]|0; - $10 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp3($7,114,$8,$9,$10)|0); - $11 = HEAP32[$0>>2]|0; - _sqlite3MayAbort($11); - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = HEAP32[$0>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + 16|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + ($13<<4)|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$2>>2]|0; - $21 = ($20|0)==(1); - $22 = $21 ? 14808 : 14832; - $23 = HEAP32[$1>>2]|0; - $24 = HEAP32[$r1>>2]|0; - $25 = HEAP32[$r1>>2]|0; - HEAP32[$vararg_buffer>>2] = $19; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $22; - $vararg_ptr2 = (($vararg_buffer) + 8|0); - HEAP32[$vararg_ptr2>>2] = $23; - $vararg_ptr3 = (($vararg_buffer) + 12|0); - HEAP32[$vararg_ptr3>>2] = $24; - $vararg_ptr4 = (($vararg_buffer) + 16|0); - HEAP32[$vararg_ptr4>>2] = $25; - _sqlite3NestedParse($12,23072,$vararg_buffer); - $26 = HEAP32[$0>>2]|0; - $27 = HEAP32[$r1>>2]|0; - _sqlite3ReleaseTempReg($26,$27); - STACKTOP = sp;return; -} -function _sqlite3ArrayAllocate($db,$pArray,$szEntry,$pnEntry,$pIdx) { - $db = $db|0; - $pArray = $pArray|0; - $szEntry = $szEntry|0; - $pnEntry = $pnEntry|0; - $pIdx = $pIdx|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $n = 0, $pNew = 0, $sz = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $4 = sp + 20|0; - $5 = sp + 16|0; - $z = sp + 12|0; - $n = sp + 8|0; - $sz = sp + 4|0; - $pNew = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pArray; - HEAP32[$3>>2] = $szEntry; - HEAP32[$4>>2] = $pnEntry; - HEAP32[$5>>2] = $pIdx; - $6 = HEAP32[$4>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$n>>2] = $7; - $8 = HEAP32[$n>>2]|0; - $9 = HEAP32[$n>>2]|0; - $10 = (($9) - 1)|0; - $11 = $8 & $10; - $12 = ($11|0)==(0); - do { - if ($12) { - $13 = HEAP32[$n>>2]|0; - $14 = ($13|0)==(0); - if ($14) { - $17 = 1; - } else { - $15 = HEAP32[$n>>2]|0; - $16 = $15<<1; - $17 = $16; - } - HEAP32[$sz>>2] = $17; - $18 = HEAP32[$1>>2]|0; - $19 = HEAP32[$2>>2]|0; - $20 = HEAP32[$sz>>2]|0; - $21 = HEAP32[$3>>2]|0; - $22 = Math_imul($20, $21)|0; - $23 = (_sqlite3DbRealloc($18,$19,$22)|0); - HEAP32[$pNew>>2] = $23; - $24 = HEAP32[$pNew>>2]|0; - $25 = ($24|0)==(0|0); - if (!($25)) { - $28 = HEAP32[$pNew>>2]|0; - HEAP32[$2>>2] = $28; - break; - } - $26 = HEAP32[$5>>2]|0; - HEAP32[$26>>2] = -1; - $27 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $27; - $42 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($42|0); - } - } while(0); - $29 = HEAP32[$2>>2]|0; - HEAP32[$z>>2] = $29; - $30 = HEAP32[$n>>2]|0; - $31 = HEAP32[$3>>2]|0; - $32 = Math_imul($30, $31)|0; - $33 = HEAP32[$z>>2]|0; - $34 = (($33) + ($32)|0); - $35 = HEAP32[$3>>2]|0; - _memset(($34|0),0,($35|0))|0; - $36 = HEAP32[$n>>2]|0; - $37 = HEAP32[$5>>2]|0; - HEAP32[$37>>2] = $36; - $38 = HEAP32[$4>>2]|0; - $39 = HEAP32[$38>>2]|0; - $40 = (($39) + 1)|0; - HEAP32[$38>>2] = $40; - $41 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $41; - $42 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($42|0); -} -function _sqlite3TriggersExist($pParse,$pTab,$op,$pChanges,$pMask) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $op = $op|0; - $pChanges = $pChanges|0; - $pMask = $pMask|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mask = 0, $p = 0, $pList = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $mask = sp + 8|0; - $pList = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $op; - HEAP32[$3>>2] = $pChanges; - HEAP32[$4>>2] = $pMask; - HEAP32[$mask>>2] = 0; - HEAP32[$pList>>2] = 0; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + 24|0); - $8 = HEAP32[$7>>2]|0; - $9 = $8 & 8388608; - $10 = ($9|0)!=(0); - if ($10) { - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = (_sqlite3TriggerList($11,$12)|0); - HEAP32[$pList>>2] = $13; - } - $14 = HEAP32[$pList>>2]|0; - HEAP32[$p>>2] = $14; - while(1) { - $15 = HEAP32[$p>>2]|0; - $16 = ($15|0)!=(0|0); - if (!($16)) { - break; - } - $17 = HEAP32[$p>>2]|0; - $18 = (($17) + 8|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = HEAP32[$2>>2]|0; - $22 = ($20|0)==($21|0); - if ($22) { - $23 = HEAP32[$p>>2]|0; - $24 = (($23) + 16|0); - $25 = HEAP32[$24>>2]|0; - $26 = HEAP32[$3>>2]|0; - $27 = (_checkColumnOverlap($25,$26)|0); - $28 = ($27|0)!=(0); - if ($28) { - $29 = HEAP32[$p>>2]|0; - $30 = (($29) + 9|0); - $31 = HEAP8[$30>>0]|0; - $32 = $31&255; - $33 = HEAP32[$mask>>2]|0; - $34 = $33 | $32; - HEAP32[$mask>>2] = $34; - } - } - $35 = HEAP32[$p>>2]|0; - $36 = (($35) + 32|0); - $37 = HEAP32[$36>>2]|0; - HEAP32[$p>>2] = $37; - } - $38 = HEAP32[$4>>2]|0; - $39 = ($38|0)!=(0|0); - if (!($39)) { - $42 = HEAP32[$mask>>2]|0; - $43 = ($42|0)!=(0); - $44 = HEAP32[$pList>>2]|0; - $45 = $43 ? $44 : 0; - STACKTOP = sp;return ($45|0); - } - $40 = HEAP32[$mask>>2]|0; - $41 = HEAP32[$4>>2]|0; - HEAP32[$41>>2] = $40; - $42 = HEAP32[$mask>>2]|0; - $43 = ($42|0)!=(0); - $44 = HEAP32[$pList>>2]|0; - $45 = $43 ? $44 : 0; - STACKTOP = sp;return ($45|0); -} -function _sqlite3IsReadOnly($pParse,$pTab,$viewOk) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $viewOk = $viewOk|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer1 = sp; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pTab; - HEAP32[$3>>2] = $viewOk; - $4 = HEAP32[$2>>2]|0; - $5 = (($4) + 44|0); - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - $8 = $7 & 16; - $9 = ($8|0)!=(0); - if ($9) { - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$2>>2]|0; - $13 = (_sqlite3GetVTable($11,$12)|0); - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + 52|0); - $18 = HEAP32[$17>>2]|0; - $19 = ($18|0)==(0|0); - if (!($19)) { - label = 3; - } - } else { - label = 3; - } - do { - if ((label|0) == 3) { - $20 = HEAP32[$2>>2]|0; - $21 = (($20) + 44|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = $23 & 1; - $25 = ($24|0)!=(0); - if ($25) { - $26 = HEAP32[$1>>2]|0; - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + 24|0); - $29 = HEAP32[$28>>2]|0; - $30 = $29 & 2048; - $31 = ($30|0)==(0); - if ($31) { - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 18|0); - $34 = HEAP8[$33>>0]|0; - $35 = $34&255; - $36 = ($35|0)==(0); - if ($36) { - break; - } - } - } - $40 = HEAP32[$3>>2]|0; - $41 = ($40|0)!=(0); - if (!($41)) { - $42 = HEAP32[$2>>2]|0; - $43 = (($42) + 12|0); - $44 = HEAP32[$43>>2]|0; - $45 = ($44|0)!=(0|0); - if ($45) { - $46 = HEAP32[$1>>2]|0; - $47 = HEAP32[$2>>2]|0; - $48 = HEAP32[$47>>2]|0; - HEAP32[$vararg_buffer1>>2] = $48; - _sqlite3ErrorMsg($46,24336,$vararg_buffer1); - HEAP32[$0>>2] = 1; - $49 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($49|0); - } - } - HEAP32[$0>>2] = 0; - $49 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($49|0); - } - } while(0); - $37 = HEAP32[$1>>2]|0; - $38 = HEAP32[$2>>2]|0; - $39 = HEAP32[$38>>2]|0; - HEAP32[$vararg_buffer1>>2] = $39; - _sqlite3ErrorMsg($37,24304,$vararg_buffer1); - HEAP32[$0>>2] = 1; - $49 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($49|0); -} -function _sqlite3VdbeCountChanges($v) { - $v = $v|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $v; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 88|0); - $3 = HEAP16[$2>>1]|0; - $4 = $3 & -17; - $5 = $4 | 16; - HEAP16[$2>>1] = $5; - STACKTOP = sp;return; -} -function _xferOptimization($pParse,$pDest,$pSelect,$onError,$iDbDest) { - $pParse = $pParse|0; - $pDest = $pDest|0; - $pSelect = $pSelect|0; - $onError = $onError|0; - $iDbDest = $iDbDest|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; - var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; - var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; - var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr1 = 0, $addr2 = 0, $destHasUniqueIdx = 0, $emptyDestTest = 0, $emptySrcTest = 0, $i = 0, $iDbSrc = 0, $iDest = 0, $iSrc = 0, $or$cond = 0, $pDestCol = 0, $pDestIdx = 0; - var $pEList = 0, $pItem = 0, $pSrc = 0, $pSrcCol = 0, $pSrcIdx = 0, $regAutoinc = 0, $regData = 0, $regRowid = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 112|0; - $0 = sp + 100|0; - $1 = sp + 96|0; - $2 = sp + 92|0; - $3 = sp + 88|0; - $4 = sp + 84|0; - $5 = sp + 80|0; - $pEList = sp + 76|0; - $pSrc = sp + 72|0; - $pSrcIdx = sp + 68|0; - $pDestIdx = sp + 64|0; - $pItem = sp + 60|0; - $i = sp + 56|0; - $iDbSrc = sp + 52|0; - $iSrc = sp + 48|0; - $iDest = sp + 44|0; - $addr1 = sp + 40|0; - $addr2 = sp + 36|0; - $emptyDestTest = sp + 32|0; - $emptySrcTest = sp + 28|0; - $v = sp + 24|0; - $regAutoinc = sp + 20|0; - $destHasUniqueIdx = sp + 16|0; - $regData = sp + 12|0; - $regRowid = sp + 8|0; - $pDestCol = sp + 4|0; - $pSrcCol = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pDest; - HEAP32[$3>>2] = $pSelect; - HEAP32[$4>>2] = $onError; - HEAP32[$5>>2] = $iDbDest; - HEAP32[$emptyDestTest>>2] = 0; - HEAP32[$emptySrcTest>>2] = 0; - HEAP32[$destHasUniqueIdx>>2] = 0; - $6 = HEAP32[$3>>2]|0; - $7 = ($6|0)==(0|0); - if ($7) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 532|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)!=(0|0); - if (!($11)) { - $12 = HEAP32[$3>>2]|0; - $13 = (($12) + 68|0); - $14 = HEAP32[$13>>2]|0; - $15 = ($14|0)!=(0|0); - if (!($15)) { - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = (_sqlite3TriggerList($16,$17)|0); - $19 = ($18|0)!=(0|0); - if ($19) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $20 = HEAP32[$2>>2]|0; - $21 = (($20) + 44|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = $23 & 16; - $25 = ($24|0)!=(0); - if ($25) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $26 = HEAP32[$4>>2]|0; - $27 = ($26|0)==(10); - if ($27) { - $28 = HEAP32[$2>>2]|0; - $29 = (($28) + 36|0); - $30 = HEAP16[$29>>1]|0; - $31 = $30 << 16 >> 16; - $32 = ($31|0)>=(0); - if ($32) { - $33 = HEAP32[$2>>2]|0; - $34 = (($33) + 45|0); - $35 = HEAP8[$34>>0]|0; - $36 = $35&255; - HEAP32[$4>>2] = $36; - } - $37 = HEAP32[$4>>2]|0; - $38 = ($37|0)==(10); - if ($38) { - HEAP32[$4>>2] = 2; - } - } - $39 = HEAP32[$3>>2]|0; - $40 = (($39) + 32|0); - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$41>>2]|0; - $43 = ($42|0)!=(1); - if ($43) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $44 = HEAP32[$3>>2]|0; - $45 = (($44) + 32|0); - $46 = HEAP32[$45>>2]|0; - $47 = (($46) + 8|0); - $48 = (($47) + 20|0); - $49 = HEAP32[$48>>2]|0; - $50 = ($49|0)!=(0|0); - if ($50) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $51 = HEAP32[$3>>2]|0; - $52 = (($51) + 36|0); - $53 = HEAP32[$52>>2]|0; - $54 = ($53|0)!=(0|0); - if ($54) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $55 = HEAP32[$3>>2]|0; - $56 = (($55) + 48|0); - $57 = HEAP32[$56>>2]|0; - $58 = ($57|0)!=(0|0); - if ($58) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $59 = HEAP32[$3>>2]|0; - $60 = (($59) + 40|0); - $61 = HEAP32[$60>>2]|0; - $62 = ($61|0)!=(0|0); - if ($62) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $63 = HEAP32[$3>>2]|0; - $64 = (($63) + 60|0); - $65 = HEAP32[$64>>2]|0; - $66 = ($65|0)!=(0|0); - if ($66) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $67 = HEAP32[$3>>2]|0; - $68 = (($67) + 52|0); - $69 = HEAP32[$68>>2]|0; - $70 = ($69|0)!=(0|0); - if ($70) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $71 = HEAP32[$3>>2]|0; - $72 = (($71) + 6|0); - $73 = HEAP16[$72>>1]|0; - $74 = $73&65535; - $75 = $74 & 1; - $76 = ($75|0)!=(0); - if ($76) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $77 = HEAP32[$3>>2]|0; - $78 = HEAP32[$77>>2]|0; - HEAP32[$pEList>>2] = $78; - $79 = HEAP32[$pEList>>2]|0; - $80 = HEAP32[$79>>2]|0; - $81 = ($80|0)!=(1); - if ($81) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $82 = HEAP32[$pEList>>2]|0; - $83 = (($82) + 4|0); - $84 = HEAP32[$83>>2]|0; - $85 = HEAP32[$84>>2]|0; - $86 = HEAP8[$85>>0]|0; - $87 = $86&255; - $88 = ($87|0)!=(116); - if ($88) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $89 = HEAP32[$3>>2]|0; - $90 = (($89) + 32|0); - $91 = HEAP32[$90>>2]|0; - $92 = (($91) + 8|0); - HEAP32[$pItem>>2] = $92; - $93 = HEAP32[$1>>2]|0; - $94 = HEAP32[$pItem>>2]|0; - $95 = (_sqlite3LocateTableItem($93,0,$94)|0); - HEAP32[$pSrc>>2] = $95; - $96 = HEAP32[$pSrc>>2]|0; - $97 = ($96|0)==(0|0); - if ($97) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $98 = HEAP32[$pSrc>>2]|0; - $99 = HEAP32[$2>>2]|0; - $100 = ($98|0)==($99|0); - if ($100) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $101 = HEAP32[$2>>2]|0; - $102 = (($101) + 44|0); - $103 = HEAP8[$102>>0]|0; - $104 = $103&255; - $105 = $104 & 32; - $106 = ($105|0)==(0); - $107 = $106&1; - $108 = HEAP32[$pSrc>>2]|0; - $109 = (($108) + 44|0); - $110 = HEAP8[$109>>0]|0; - $111 = $110&255; - $112 = $111 & 32; - $113 = ($112|0)==(0); - $114 = $113&1; - $115 = ($107|0)!=($114|0); - if ($115) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $116 = HEAP32[$pSrc>>2]|0; - $117 = (($116) + 44|0); - $118 = HEAP8[$117>>0]|0; - $119 = $118&255; - $120 = $119 & 16; - $121 = ($120|0)!=(0); - if ($121) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $122 = HEAP32[$pSrc>>2]|0; - $123 = (($122) + 12|0); - $124 = HEAP32[$123>>2]|0; - $125 = ($124|0)!=(0|0); - if ($125) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $126 = HEAP32[$2>>2]|0; - $127 = (($126) + 38|0); - $128 = HEAP16[$127>>1]|0; - $129 = $128 << 16 >> 16; - $130 = HEAP32[$pSrc>>2]|0; - $131 = (($130) + 38|0); - $132 = HEAP16[$131>>1]|0; - $133 = $132 << 16 >> 16; - $134 = ($129|0)!=($133|0); - if ($134) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $135 = HEAP32[$2>>2]|0; - $136 = (($135) + 36|0); - $137 = HEAP16[$136>>1]|0; - $138 = $137 << 16 >> 16; - $139 = HEAP32[$pSrc>>2]|0; - $140 = (($139) + 36|0); - $141 = HEAP16[$140>>1]|0; - $142 = $141 << 16 >> 16; - $143 = ($138|0)!=($142|0); - if ($143) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - HEAP32[$i>>2] = 0; - L91: while(1) { - $144 = HEAP32[$i>>2]|0; - $145 = HEAP32[$2>>2]|0; - $146 = (($145) + 38|0); - $147 = HEAP16[$146>>1]|0; - $148 = $147 << 16 >> 16; - $149 = ($144|0)<($148|0); - if (!($149)) { - label = 64; - break; - } - $150 = HEAP32[$i>>2]|0; - $151 = HEAP32[$2>>2]|0; - $152 = (($151) + 4|0); - $153 = HEAP32[$152>>2]|0; - $154 = (($153) + (($150*24)|0)|0); - HEAP32[$pDestCol>>2] = $154; - $155 = HEAP32[$i>>2]|0; - $156 = HEAP32[$pSrc>>2]|0; - $157 = (($156) + 4|0); - $158 = HEAP32[$157>>2]|0; - $159 = (($158) + (($155*24)|0)|0); - HEAP32[$pSrcCol>>2] = $159; - $160 = HEAP32[$pDestCol>>2]|0; - $161 = (($160) + 21|0); - $162 = HEAP8[$161>>0]|0; - $163 = $162 << 24 >> 24; - $164 = HEAP32[$pSrcCol>>2]|0; - $165 = (($164) + 21|0); - $166 = HEAP8[$165>>0]|0; - $167 = $166 << 24 >> 24; - $168 = ($163|0)!=($167|0); - if ($168) { - label = 52; - break; - } - $169 = HEAP32[$pDestCol>>2]|0; - $170 = (($169) + 16|0); - $171 = HEAP32[$170>>2]|0; - $172 = HEAP32[$pSrcCol>>2]|0; - $173 = (($172) + 16|0); - $174 = HEAP32[$173>>2]|0; - $175 = (_xferCompatibleCollation($171,$174)|0); - $176 = ($175|0)!=(0); - if (!($176)) { - label = 54; - break; - } - $177 = HEAP32[$pDestCol>>2]|0; - $178 = (($177) + 20|0); - $179 = HEAP8[$178>>0]|0; - $180 = $179&255; - $181 = ($180|0)!=(0); - if ($181) { - $182 = HEAP32[$pSrcCol>>2]|0; - $183 = (($182) + 20|0); - $184 = HEAP8[$183>>0]|0; - $185 = ($184<<24>>24)!=(0); - if (!($185)) { - label = 57; - break; - } - } - $186 = HEAP32[$i>>2]|0; - $187 = ($186|0)>(0); - do { - if ($187) { - $188 = HEAP32[$pDestCol>>2]|0; - $189 = (($188) + 8|0); - $190 = HEAP32[$189>>2]|0; - $191 = ($190|0)==(0|0); - $192 = $191&1; - $193 = HEAP32[$pSrcCol>>2]|0; - $194 = (($193) + 8|0); - $195 = HEAP32[$194>>2]|0; - $196 = ($195|0)==(0|0); - $197 = $196&1; - $198 = ($192|0)!=($197|0); - if ($198) { - label = 62; - break L91; - } - $199 = HEAP32[$pDestCol>>2]|0; - $200 = (($199) + 8|0); - $201 = HEAP32[$200>>2]|0; - $202 = ($201|0)!=(0|0); - if (!($202)) { - break; - } - $203 = HEAP32[$pDestCol>>2]|0; - $204 = (($203) + 8|0); - $205 = HEAP32[$204>>2]|0; - $206 = HEAP32[$pSrcCol>>2]|0; - $207 = (($206) + 8|0); - $208 = HEAP32[$207>>2]|0; - $209 = (_strcmp($205,$208)|0); - $210 = ($209|0)!=(0); - if ($210) { - label = 62; - break L91; - } - } - } while(0); - $211 = HEAP32[$i>>2]|0; - $212 = (($211) + 1)|0; - HEAP32[$i>>2] = $212; - } - if ((label|0) == 52) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - else if ((label|0) == 54) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - else if ((label|0) == 57) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - else if ((label|0) == 62) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - else if ((label|0) == 64) { - $213 = HEAP32[$2>>2]|0; - $214 = (($213) + 8|0); - $215 = HEAP32[$214>>2]|0; - HEAP32[$pDestIdx>>2] = $215; - while(1) { - $216 = HEAP32[$pDestIdx>>2]|0; - $217 = ($216|0)!=(0|0); - if (!($217)) { - break; - } - $218 = HEAP32[$pDestIdx>>2]|0; - $219 = (($218) + 54|0); - $220 = HEAP8[$219>>0]|0; - $221 = $220&255; - $222 = ($221|0)!=(0); - if ($222) { - HEAP32[$destHasUniqueIdx>>2] = 1; - } - $223 = HEAP32[$pSrc>>2]|0; - $224 = (($223) + 8|0); - $225 = HEAP32[$224>>2]|0; - HEAP32[$pSrcIdx>>2] = $225; - while(1) { - $226 = HEAP32[$pSrcIdx>>2]|0; - $227 = ($226|0)!=(0|0); - if (!($227)) { - break; - } - $228 = HEAP32[$pDestIdx>>2]|0; - $229 = HEAP32[$pSrcIdx>>2]|0; - $230 = (_xferCompatibleIndex($228,$229)|0); - $231 = ($230|0)!=(0); - if ($231) { - break; - } - $232 = HEAP32[$pSrcIdx>>2]|0; - $233 = (($232) + 20|0); - $234 = HEAP32[$233>>2]|0; - HEAP32[$pSrcIdx>>2] = $234; - } - $235 = HEAP32[$pSrcIdx>>2]|0; - $236 = ($235|0)==(0|0); - if ($236) { - label = 73; - break; - } - $237 = HEAP32[$pDestIdx>>2]|0; - $238 = (($237) + 20|0); - $239 = HEAP32[$238>>2]|0; - HEAP32[$pDestIdx>>2] = $239; - } - if ((label|0) == 73) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $240 = HEAP32[$2>>2]|0; - $241 = (($240) + 24|0); - $242 = HEAP32[$241>>2]|0; - $243 = ($242|0)!=(0|0); - do { - if ($243) { - $244 = HEAP32[$pSrc>>2]|0; - $245 = (($244) + 24|0); - $246 = HEAP32[$245>>2]|0; - $247 = HEAP32[$2>>2]|0; - $248 = (($247) + 24|0); - $249 = HEAP32[$248>>2]|0; - $250 = (_sqlite3ExprListCompare($246,$249,-1)|0); - $251 = ($250|0)!=(0); - if (!($251)) { - break; - } - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - } while(0); - $252 = HEAP32[$1>>2]|0; - $253 = HEAP32[$252>>2]|0; - $254 = (($253) + 24|0); - $255 = HEAP32[$254>>2]|0; - $256 = $255 & 524288; - $257 = ($256|0)!=(0); - do { - if ($257) { - $258 = HEAP32[$2>>2]|0; - $259 = (($258) + 16|0); - $260 = HEAP32[$259>>2]|0; - $261 = ($260|0)!=(0|0); - if (!($261)) { - break; - } - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - } while(0); - $262 = HEAP32[$1>>2]|0; - $263 = HEAP32[$262>>2]|0; - $264 = (($263) + 24|0); - $265 = HEAP32[$264>>2]|0; - $266 = $265 & 128; - $267 = ($266|0)!=(0); - if ($267) { - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - $268 = HEAP32[$1>>2]|0; - $269 = HEAP32[$268>>2]|0; - $270 = HEAP32[$pSrc>>2]|0; - $271 = (($270) + 68|0); - $272 = HEAP32[$271>>2]|0; - $273 = (_sqlite3SchemaToIndex($269,$272)|0); - HEAP32[$iDbSrc>>2] = $273; - $274 = HEAP32[$1>>2]|0; - $275 = (_sqlite3GetVdbe($274)|0); - HEAP32[$v>>2] = $275; - $276 = HEAP32[$1>>2]|0; - $277 = HEAP32[$iDbSrc>>2]|0; - _sqlite3CodeVerifySchema($276,$277); - $278 = HEAP32[$1>>2]|0; - $279 = (($278) + 68|0); - $280 = HEAP32[$279>>2]|0; - $281 = (($280) + 1)|0; - HEAP32[$279>>2] = $281; - HEAP32[$iSrc>>2] = $280; - $282 = HEAP32[$1>>2]|0; - $283 = (($282) + 68|0); - $284 = HEAP32[$283>>2]|0; - $285 = (($284) + 1)|0; - HEAP32[$283>>2] = $285; - HEAP32[$iDest>>2] = $284; - $286 = HEAP32[$1>>2]|0; - $287 = HEAP32[$5>>2]|0; - $288 = HEAP32[$2>>2]|0; - $289 = (_autoIncBegin($286,$287,$288)|0); - HEAP32[$regAutoinc>>2] = $289; - $290 = HEAP32[$1>>2]|0; - $291 = (_sqlite3GetTempReg($290)|0); - HEAP32[$regData>>2] = $291; - $292 = HEAP32[$1>>2]|0; - $293 = (_sqlite3GetTempReg($292)|0); - HEAP32[$regRowid>>2] = $293; - $294 = HEAP32[$1>>2]|0; - $295 = HEAP32[$iDest>>2]|0; - $296 = HEAP32[$5>>2]|0; - $297 = HEAP32[$2>>2]|0; - _sqlite3OpenTable($294,$295,$296,$297,53); - $298 = HEAP32[$2>>2]|0; - $299 = (($298) + 36|0); - $300 = HEAP16[$299>>1]|0; - $301 = $300 << 16 >> 16; - $302 = ($301|0)<(0); - if ($302) { - $303 = HEAP32[$2>>2]|0; - $304 = (($303) + 8|0); - $305 = HEAP32[$304>>2]|0; - $306 = ($305|0)!=(0|0); - if ($306) { - label = 87; - } else { - label = 85; - } - } else { - label = 85; - } - do { - if ((label|0) == 85) { - $307 = HEAP32[$destHasUniqueIdx>>2]|0; - $308 = ($307|0)!=(0); - if ($308) { - label = 87; - break; - } - $309 = HEAP32[$4>>2]|0; - $310 = ($309|0)!=(2); - $311 = HEAP32[$4>>2]|0; - $312 = ($311|0)!=(1); - $or$cond = $310 & $312; - if ($or$cond) { - label = 87; - } - } - } while(0); - if ((label|0) == 87) { - $313 = HEAP32[$v>>2]|0; - $314 = HEAP32[$iDest>>2]|0; - $315 = (_sqlite3VdbeAddOp2($313,105,$314,0)|0); - HEAP32[$addr1>>2] = $315; - $316 = HEAP32[$v>>2]|0; - $317 = (_sqlite3VdbeAddOp2($316,16,0,0)|0); - HEAP32[$emptyDestTest>>2] = $317; - $318 = HEAP32[$v>>2]|0; - $319 = HEAP32[$addr1>>2]|0; - _sqlite3VdbeJumpHere($318,$319); - } - $320 = HEAP32[$pSrc>>2]|0; - $321 = (($320) + 44|0); - $322 = HEAP8[$321>>0]|0; - $323 = $322&255; - $324 = $323 & 32; - $325 = ($324|0)==(0); - $326 = HEAP32[$1>>2]|0; - if ($325) { - $327 = HEAP32[$iSrc>>2]|0; - $328 = HEAP32[$iDbSrc>>2]|0; - $329 = HEAP32[$pSrc>>2]|0; - _sqlite3OpenTable($326,$327,$328,$329,52); - $330 = HEAP32[$v>>2]|0; - $331 = HEAP32[$iSrc>>2]|0; - $332 = (_sqlite3VdbeAddOp2($330,105,$331,0)|0); - HEAP32[$emptySrcTest>>2] = $332; - $333 = HEAP32[$2>>2]|0; - $334 = (($333) + 36|0); - $335 = HEAP16[$334>>1]|0; - $336 = $335 << 16 >> 16; - $337 = ($336|0)>=(0); - do { - if ($337) { - $338 = HEAP32[$v>>2]|0; - $339 = HEAP32[$iSrc>>2]|0; - $340 = HEAP32[$regRowid>>2]|0; - $341 = (_sqlite3VdbeAddOp2($338,100,$339,$340)|0); - HEAP32[$addr1>>2] = $341; - $342 = HEAP32[$v>>2]|0; - $343 = HEAP32[$iDest>>2]|0; - $344 = HEAP32[$regRowid>>2]|0; - $345 = (_sqlite3VdbeAddOp3($342,67,$343,0,$344)|0); - HEAP32[$addr2>>2] = $345; - $346 = HEAP32[$1>>2]|0; - $347 = HEAP32[$4>>2]|0; - $348 = HEAP32[$2>>2]|0; - _sqlite3RowidConstraint($346,$347,$348); - $349 = HEAP32[$v>>2]|0; - $350 = HEAP32[$addr2>>2]|0; - _sqlite3VdbeJumpHere($349,$350); - $351 = HEAP32[$1>>2]|0; - $352 = HEAP32[$regAutoinc>>2]|0; - $353 = HEAP32[$regRowid>>2]|0; - _autoIncStep($351,$352,$353); - } else { - $354 = HEAP32[$2>>2]|0; - $355 = (($354) + 8|0); - $356 = HEAP32[$355>>2]|0; - $357 = ($356|0)==(0|0); - $358 = HEAP32[$v>>2]|0; - if ($357) { - $359 = HEAP32[$iDest>>2]|0; - $360 = HEAP32[$regRowid>>2]|0; - $361 = (_sqlite3VdbeAddOp2($358,69,$359,$360)|0); - HEAP32[$addr1>>2] = $361; - break; - } else { - $362 = HEAP32[$iSrc>>2]|0; - $363 = HEAP32[$regRowid>>2]|0; - $364 = (_sqlite3VdbeAddOp2($358,100,$362,$363)|0); - HEAP32[$addr1>>2] = $364; - break; - } - } - } while(0); - $365 = HEAP32[$v>>2]|0; - $366 = HEAP32[$iSrc>>2]|0; - $367 = HEAP32[$regData>>2]|0; - (_sqlite3VdbeAddOp2($365,99,$366,$367)|0); - $368 = HEAP32[$v>>2]|0; - $369 = HEAP32[$iDest>>2]|0; - $370 = HEAP32[$regData>>2]|0; - $371 = HEAP32[$regRowid>>2]|0; - (_sqlite3VdbeAddOp3($368,70,$369,$370,$371)|0); - $372 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($372,11); - $373 = HEAP32[$v>>2]|0; - $374 = HEAP32[$2>>2]|0; - $375 = HEAP32[$374>>2]|0; - _sqlite3VdbeChangeP4($373,-1,$375,0); - $376 = HEAP32[$v>>2]|0; - $377 = HEAP32[$iSrc>>2]|0; - $378 = HEAP32[$addr1>>2]|0; - (_sqlite3VdbeAddOp2($376,9,$377,$378)|0); - $379 = HEAP32[$v>>2]|0; - $380 = HEAP32[$iSrc>>2]|0; - (_sqlite3VdbeAddOp2($379,58,$380,0)|0); - $381 = HEAP32[$v>>2]|0; - $382 = HEAP32[$iDest>>2]|0; - (_sqlite3VdbeAddOp2($381,58,$382,0)|0); - } else { - $383 = HEAP32[$5>>2]|0; - $384 = HEAP32[$2>>2]|0; - $385 = (($384) + 32|0); - $386 = HEAP32[$385>>2]|0; - $387 = HEAP32[$2>>2]|0; - $388 = HEAP32[$387>>2]|0; - _sqlite3TableLock($326,$383,$386,1,$388); - $389 = HEAP32[$1>>2]|0; - $390 = HEAP32[$iDbSrc>>2]|0; - $391 = HEAP32[$pSrc>>2]|0; - $392 = (($391) + 32|0); - $393 = HEAP32[$392>>2]|0; - $394 = HEAP32[$pSrc>>2]|0; - $395 = HEAP32[$394>>2]|0; - _sqlite3TableLock($389,$390,$393,0,$395); - } - $396 = HEAP32[$2>>2]|0; - $397 = (($396) + 8|0); - $398 = HEAP32[$397>>2]|0; - HEAP32[$pDestIdx>>2] = $398; - while(1) { - $399 = HEAP32[$pDestIdx>>2]|0; - $400 = ($399|0)!=(0|0); - if (!($400)) { - break; - } - $401 = HEAP32[$pSrc>>2]|0; - $402 = (($401) + 8|0); - $403 = HEAP32[$402>>2]|0; - HEAP32[$pSrcIdx>>2] = $403; - while(1) { - $404 = HEAP32[$pSrcIdx>>2]|0; - $405 = ($404|0)!=(0|0); - if (!($405)) { - break; - } - $406 = HEAP32[$pDestIdx>>2]|0; - $407 = HEAP32[$pSrcIdx>>2]|0; - $408 = (_xferCompatibleIndex($406,$407)|0); - $409 = ($408|0)!=(0); - if ($409) { - break; - } - $410 = HEAP32[$pSrcIdx>>2]|0; - $411 = (($410) + 20|0); - $412 = HEAP32[$411>>2]|0; - HEAP32[$pSrcIdx>>2] = $412; - } - $413 = HEAP32[$v>>2]|0; - $414 = HEAP32[$iSrc>>2]|0; - $415 = HEAP32[$pSrcIdx>>2]|0; - $416 = (($415) + 44|0); - $417 = HEAP32[$416>>2]|0; - $418 = HEAP32[$iDbSrc>>2]|0; - (_sqlite3VdbeAddOp3($413,52,$414,$417,$418)|0); - $419 = HEAP32[$1>>2]|0; - $420 = HEAP32[$pSrcIdx>>2]|0; - _sqlite3VdbeSetP4KeyInfo($419,$420); - $421 = HEAP32[$v>>2]|0; - $422 = HEAP32[$iDest>>2]|0; - $423 = HEAP32[$pDestIdx>>2]|0; - $424 = (($423) + 44|0); - $425 = HEAP32[$424>>2]|0; - $426 = HEAP32[$5>>2]|0; - (_sqlite3VdbeAddOp3($421,53,$422,$425,$426)|0); - $427 = HEAP32[$1>>2]|0; - $428 = HEAP32[$pDestIdx>>2]|0; - _sqlite3VdbeSetP4KeyInfo($427,$428); - $429 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($429,1); - $430 = HEAP32[$v>>2]|0; - $431 = HEAP32[$iSrc>>2]|0; - $432 = (_sqlite3VdbeAddOp2($430,105,$431,0)|0); - HEAP32[$addr1>>2] = $432; - $433 = HEAP32[$v>>2]|0; - $434 = HEAP32[$iSrc>>2]|0; - $435 = HEAP32[$regData>>2]|0; - (_sqlite3VdbeAddOp2($433,98,$434,$435)|0); - $436 = HEAP32[$v>>2]|0; - $437 = HEAP32[$iDest>>2]|0; - $438 = HEAP32[$regData>>2]|0; - (_sqlite3VdbeAddOp3($436,107,$437,$438,1)|0); - $439 = HEAP32[$v>>2]|0; - $440 = HEAP32[$iSrc>>2]|0; - $441 = HEAP32[$addr1>>2]|0; - $442 = (($441) + 1)|0; - (_sqlite3VdbeAddOp2($439,9,$440,$442)|0); - $443 = HEAP32[$v>>2]|0; - $444 = HEAP32[$addr1>>2]|0; - _sqlite3VdbeJumpHere($443,$444); - $445 = HEAP32[$v>>2]|0; - $446 = HEAP32[$iSrc>>2]|0; - (_sqlite3VdbeAddOp2($445,58,$446,0)|0); - $447 = HEAP32[$v>>2]|0; - $448 = HEAP32[$iDest>>2]|0; - (_sqlite3VdbeAddOp2($447,58,$448,0)|0); - $449 = HEAP32[$pDestIdx>>2]|0; - $450 = (($449) + 20|0); - $451 = HEAP32[$450>>2]|0; - HEAP32[$pDestIdx>>2] = $451; - } - $452 = HEAP32[$emptySrcTest>>2]|0; - $453 = ($452|0)!=(0); - if ($453) { - $454 = HEAP32[$v>>2]|0; - $455 = HEAP32[$emptySrcTest>>2]|0; - _sqlite3VdbeJumpHere($454,$455); - } - $456 = HEAP32[$1>>2]|0; - $457 = HEAP32[$regRowid>>2]|0; - _sqlite3ReleaseTempReg($456,$457); - $458 = HEAP32[$1>>2]|0; - $459 = HEAP32[$regData>>2]|0; - _sqlite3ReleaseTempReg($458,$459); - $460 = HEAP32[$emptyDestTest>>2]|0; - $461 = ($460|0)!=(0); - if ($461) { - $462 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp2($462,24,0,0)|0); - $463 = HEAP32[$v>>2]|0; - $464 = HEAP32[$emptyDestTest>>2]|0; - _sqlite3VdbeJumpHere($463,$464); - $465 = HEAP32[$v>>2]|0; - $466 = HEAP32[$iDest>>2]|0; - (_sqlite3VdbeAddOp2($465,58,$466,0)|0); - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } else { - HEAP32[$0>>2] = 1; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); - } - } - } - } - HEAP32[$0>>2] = 0; - $467 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($467|0); -} -function _autoIncBegin($pParse,$iDb,$pTab) { - $pParse = $pParse|0; - $iDb = $iDb|0; - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $memId = 0, $pInfo = 0, $pToplevel = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $memId = sp + 8|0; - $pToplevel = sp + 4|0; - $pInfo = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $iDb; - HEAP32[$3>>2] = $pTab; - HEAP32[$memId>>2] = 0; - $4 = HEAP32[$3>>2]|0; - $5 = (($4) + 44|0); - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - $8 = $7 & 8; - $9 = ($8|0)!=(0); - if ($9) { - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 408|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)!=(0|0); - $14 = HEAP32[$1>>2]|0; - if ($13) { - $15 = (($14) + 408|0); - $16 = HEAP32[$15>>2]|0; - $17 = $16; - } else { - $17 = $14; - } - HEAP32[$pToplevel>>2] = $17; - $18 = HEAP32[$pToplevel>>2]|0; - $19 = (($18) + 404|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$pInfo>>2] = $20; - while(1) { - $21 = HEAP32[$pInfo>>2]|0; - $22 = ($21|0)!=(0|0); - if ($22) { - $23 = HEAP32[$pInfo>>2]|0; - $24 = (($23) + 4|0); - $25 = HEAP32[$24>>2]|0; - $26 = HEAP32[$3>>2]|0; - $27 = ($25|0)!=($26|0); - $68 = $27; - } else { - $68 = 0; - } - $28 = HEAP32[$pInfo>>2]|0; - if (!($68)) { - break; - } - $29 = HEAP32[$28>>2]|0; - HEAP32[$pInfo>>2] = $29; - } - $30 = ($28|0)==(0|0); - do { - if ($30) { - $31 = HEAP32[$1>>2]|0; - $32 = HEAP32[$31>>2]|0; - $33 = (_sqlite3DbMallocRaw($32,16)|0); - HEAP32[$pInfo>>2] = $33; - $34 = HEAP32[$pInfo>>2]|0; - $35 = ($34|0)==(0|0); - if (!($35)) { - $36 = HEAP32[$pToplevel>>2]|0; - $37 = (($36) + 404|0); - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$pInfo>>2]|0; - HEAP32[$39>>2] = $38; - $40 = HEAP32[$pInfo>>2]|0; - $41 = HEAP32[$pToplevel>>2]|0; - $42 = (($41) + 404|0); - HEAP32[$42>>2] = $40; - $43 = HEAP32[$3>>2]|0; - $44 = HEAP32[$pInfo>>2]|0; - $45 = (($44) + 4|0); - HEAP32[$45>>2] = $43; - $46 = HEAP32[$2>>2]|0; - $47 = HEAP32[$pInfo>>2]|0; - $48 = (($47) + 8|0); - HEAP32[$48>>2] = $46; - $49 = HEAP32[$pToplevel>>2]|0; - $50 = (($49) + 72|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + 1)|0; - HEAP32[$50>>2] = $52; - $53 = HEAP32[$pToplevel>>2]|0; - $54 = (($53) + 72|0); - $55 = HEAP32[$54>>2]|0; - $56 = (($55) + 1)|0; - HEAP32[$54>>2] = $56; - $57 = HEAP32[$pInfo>>2]|0; - $58 = (($57) + 12|0); - HEAP32[$58>>2] = $56; - $59 = HEAP32[$pToplevel>>2]|0; - $60 = (($59) + 72|0); - $61 = HEAP32[$60>>2]|0; - $62 = (($61) + 1)|0; - HEAP32[$60>>2] = $62; - break; - } - HEAP32[$0>>2] = 0; - $67 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($67|0); - } - } while(0); - $63 = HEAP32[$pInfo>>2]|0; - $64 = (($63) + 12|0); - $65 = HEAP32[$64>>2]|0; - HEAP32[$memId>>2] = $65; - } - $66 = HEAP32[$memId>>2]|0; - HEAP32[$0>>2] = $66; - $67 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($67|0); -} -function _readsTable($p,$iDb,$pTab) { - $p = $p|0; - $iDb = $iDb|0; - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $iEnd = 0, $pIndex = 0, $pOp = 0, $pVTab = 0, $tnum = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $v = sp + 24|0; - $i = sp + 20|0; - $iEnd = sp + 16|0; - $pVTab = sp + 12|0; - $pOp = sp + 8|0; - $pIndex = sp + 4|0; - $tnum = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $iDb; - HEAP32[$3>>2] = $pTab; - $4 = HEAP32[$1>>2]|0; - $5 = (_sqlite3GetVdbe($4)|0); - HEAP32[$v>>2] = $5; - $6 = HEAP32[$v>>2]|0; - $7 = (_sqlite3VdbeCurrentAddr($6)|0); - HEAP32[$iEnd>>2] = $7; - $8 = HEAP32[$3>>2]|0; - $9 = (($8) + 44|0); - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - $12 = $11 & 16; - $13 = ($12|0)!=(0); - if ($13) { - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$3>>2]|0; - $17 = (_sqlite3GetVTable($15,$16)|0); - $18 = $17; - } else { - $18 = 0; - } - HEAP32[$pVTab>>2] = $18; - HEAP32[$i>>2] = 1; - L4: while(1) { - $19 = HEAP32[$i>>2]|0; - $20 = HEAP32[$iEnd>>2]|0; - $21 = ($19|0)<($20|0); - if (!($21)) { - label = 18; - break; - } - $22 = HEAP32[$v>>2]|0; - $23 = HEAP32[$i>>2]|0; - $24 = (_sqlite3VdbeGetOp($22,$23)|0); - HEAP32[$pOp>>2] = $24; - $25 = HEAP32[$pOp>>2]|0; - $26 = HEAP8[$25>>0]|0; - $27 = $26&255; - $28 = ($27|0)==(52); - L7: do { - if ($28) { - $29 = HEAP32[$pOp>>2]|0; - $30 = (($29) + 12|0); - $31 = HEAP32[$30>>2]|0; - $32 = HEAP32[$2>>2]|0; - $33 = ($31|0)==($32|0); - if ($33) { - $34 = HEAP32[$pOp>>2]|0; - $35 = (($34) + 8|0); - $36 = HEAP32[$35>>2]|0; - HEAP32[$tnum>>2] = $36; - $37 = HEAP32[$tnum>>2]|0; - $38 = HEAP32[$3>>2]|0; - $39 = (($38) + 32|0); - $40 = HEAP32[$39>>2]|0; - $41 = ($37|0)==($40|0); - if ($41) { - label = 8; - break L4; - } - $42 = HEAP32[$3>>2]|0; - $43 = (($42) + 8|0); - $44 = HEAP32[$43>>2]|0; - HEAP32[$pIndex>>2] = $44; - while(1) { - $45 = HEAP32[$pIndex>>2]|0; - $46 = ($45|0)!=(0|0); - if (!($46)) { - break L7; - } - $47 = HEAP32[$tnum>>2]|0; - $48 = HEAP32[$pIndex>>2]|0; - $49 = (($48) + 44|0); - $50 = HEAP32[$49>>2]|0; - $51 = ($47|0)==($50|0); - if ($51) { - label = 12; - break L4; - } - $52 = HEAP32[$pIndex>>2]|0; - $53 = (($52) + 20|0); - $54 = HEAP32[$53>>2]|0; - HEAP32[$pIndex>>2] = $54; - } - } - } - } while(0); - $55 = HEAP32[$pOp>>2]|0; - $56 = HEAP8[$55>>0]|0; - $57 = $56&255; - $58 = ($57|0)==(149); - if ($58) { - $59 = HEAP32[$pOp>>2]|0; - $60 = (($59) + 16|0); - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$pVTab>>2]|0; - $63 = ($61|0)==($62|0); - if ($63) { - label = 16; - break; - } - } - $64 = HEAP32[$i>>2]|0; - $65 = (($64) + 1)|0; - HEAP32[$i>>2] = $65; - } - if ((label|0) == 8) { - HEAP32[$0>>2] = 1; - $66 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($66|0); - } - else if ((label|0) == 12) { - HEAP32[$0>>2] = 1; - $66 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($66|0); - } - else if ((label|0) == 16) { - HEAP32[$0>>2] = 1; - $66 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($66|0); - } - else if ((label|0) == 18) { - HEAP32[$0>>2] = 0; - $66 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($66|0); - } - return 0|0; -} -function _sqlite3ExprCodeAndCache($pParse,$pExpr,$target) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - $target = $target|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iMem = 0, $v = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $v = sp + 4|0; - $iMem = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pExpr; - HEAP32[$2>>2] = $target; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 8|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$v>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$2>>2]|0; - _sqlite3ExprCode($6,$7,$8); - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 72|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + 1)|0; - HEAP32[$10>>2] = $12; - HEAP32[$iMem>>2] = $12; - $13 = HEAP32[$v>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$iMem>>2]|0; - (_sqlite3VdbeAddOp2($13,33,$14,$15)|0); - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$iMem>>2]|0; - _exprToRegister($16,$17); - STACKTOP = sp;return; -} -function _sqlite3TableAffinity($v,$pTab,$iReg) { - $v = $v|0; - $pTab = $pTab|0; - $iReg = $iReg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $zColAff = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $i = sp + 8|0; - $zColAff = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $v; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $iReg; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 20|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$zColAff>>2] = $5; - $6 = HEAP32[$zColAff>>2]|0; - $7 = ($6|0)==(0|0); - if ($7) { - $8 = HEAP32[$0>>2]|0; - $9 = (_sqlite3VdbeDb($8)|0); - HEAP32[$db>>2] = $9; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 38|0); - $12 = HEAP16[$11>>1]|0; - $13 = $12 << 16 >> 16; - $14 = (($13) + 1)|0; - $15 = (_sqlite3DbMallocRaw(0,$14)|0); - HEAP32[$zColAff>>2] = $15; - $16 = HEAP32[$zColAff>>2]|0; - $17 = ($16|0)!=(0|0); - if (!($17)) { - $18 = HEAP32[$db>>2]|0; - $19 = (($18) + 64|0); - HEAP8[$19>>0] = 1; - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $20 = HEAP32[$i>>2]|0; - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 38|0); - $23 = HEAP16[$22>>1]|0; - $24 = $23 << 16 >> 16; - $25 = ($20|0)<($24|0); - if (!($25)) { - break; - } - $26 = HEAP32[$i>>2]|0; - $27 = HEAP32[$1>>2]|0; - $28 = (($27) + 4|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + (($26*24)|0)|0); - $31 = (($30) + 21|0); - $32 = HEAP8[$31>>0]|0; - $33 = HEAP32[$i>>2]|0; - $34 = HEAP32[$zColAff>>2]|0; - $35 = (($34) + ($33)|0); - HEAP8[$35>>0] = $32; - $36 = HEAP32[$i>>2]|0; - $37 = (($36) + 1)|0; - HEAP32[$i>>2] = $37; - } - while(1) { - $38 = HEAP32[$i>>2]|0; - $39 = (($38) + -1)|0; - HEAP32[$i>>2] = $39; - $40 = HEAP32[$zColAff>>2]|0; - $41 = (($40) + ($38)|0); - HEAP8[$41>>0] = 0; - $42 = HEAP32[$i>>2]|0; - $43 = ($42|0)>=(0); - if (!($43)) { - break; - } - $44 = HEAP32[$i>>2]|0; - $45 = HEAP32[$zColAff>>2]|0; - $46 = (($45) + ($44)|0); - $47 = HEAP8[$46>>0]|0; - $48 = $47 << 24 >> 24; - $49 = ($48|0)==(98); - if (!($49)) { - break; - } - } - $50 = HEAP32[$zColAff>>2]|0; - $51 = HEAP32[$1>>2]|0; - $52 = (($51) + 20|0); - HEAP32[$52>>2] = $50; - } - $53 = HEAP32[$zColAff>>2]|0; - $54 = (_sqlite3Strlen30($53)|0); - HEAP32[$i>>2] = $54; - $55 = HEAP32[$i>>2]|0; - $56 = ($55|0)!=(0); - if (!($56)) { - STACKTOP = sp;return; - } - $57 = HEAP32[$2>>2]|0; - $58 = ($57|0)!=(0); - $59 = HEAP32[$0>>2]|0; - if ($58) { - $60 = HEAP32[$2>>2]|0; - $61 = HEAP32[$i>>2]|0; - $62 = HEAP32[$zColAff>>2]|0; - $63 = HEAP32[$i>>2]|0; - (_sqlite3VdbeAddOp4($59,47,$60,$61,0,$62,$63)|0); - STACKTOP = sp;return; - } else { - $64 = HEAP32[$zColAff>>2]|0; - $65 = HEAP32[$i>>2]|0; - _sqlite3VdbeChangeP4($59,-1,$64,$65); - STACKTOP = sp;return; - } -} -function _sqlite3CodeRowTrigger($pParse,$pTrigger,$op,$pChanges,$tr_tm,$pTab,$reg,$orconf,$ignoreJump) { - $pParse = $pParse|0; - $pTrigger = $pTrigger|0; - $op = $op|0; - $pChanges = $pChanges|0; - $tr_tm = $tr_tm|0; - $pTab = $pTab|0; - $reg = $reg|0; - $orconf = $orconf|0; - $ignoreJump = $ignoreJump|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $4 = sp + 20|0; - $5 = sp + 16|0; - $6 = sp + 12|0; - $7 = sp + 8|0; - $8 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTrigger; - HEAP32[$2>>2] = $op; - HEAP32[$3>>2] = $pChanges; - HEAP32[$4>>2] = $tr_tm; - HEAP32[$5>>2] = $pTab; - HEAP32[$6>>2] = $reg; - HEAP32[$7>>2] = $orconf; - HEAP32[$8>>2] = $ignoreJump; - $9 = HEAP32[$1>>2]|0; - HEAP32[$p>>2] = $9; - while(1) { - $10 = HEAP32[$p>>2]|0; - $11 = ($10|0)!=(0|0); - if (!($11)) { - break; - } - $12 = HEAP32[$p>>2]|0; - $13 = (($12) + 8|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14&255; - $16 = HEAP32[$2>>2]|0; - $17 = ($15|0)==($16|0); - if ($17) { - $18 = HEAP32[$p>>2]|0; - $19 = (($18) + 9|0); - $20 = HEAP8[$19>>0]|0; - $21 = $20&255; - $22 = HEAP32[$4>>2]|0; - $23 = ($21|0)==($22|0); - if ($23) { - $24 = HEAP32[$p>>2]|0; - $25 = (($24) + 16|0); - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$3>>2]|0; - $28 = (_checkColumnOverlap($26,$27)|0); - $29 = ($28|0)!=(0); - if ($29) { - $30 = HEAP32[$0>>2]|0; - $31 = HEAP32[$p>>2]|0; - $32 = HEAP32[$5>>2]|0; - $33 = HEAP32[$6>>2]|0; - $34 = HEAP32[$7>>2]|0; - $35 = HEAP32[$8>>2]|0; - _sqlite3CodeRowTriggerDirect($30,$31,$32,$33,$34,$35); - } - } - } - $36 = HEAP32[$p>>2]|0; - $37 = (($36) + 32|0); - $38 = HEAP32[$37>>2]|0; - HEAP32[$p>>2] = $38; - } - STACKTOP = sp;return; -} -function _autoIncStep($pParse,$memId,$regRowid) { - $pParse = $pParse|0; - $memId = $memId|0; - $regRowid = $regRowid|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $memId; - HEAP32[$2>>2] = $regRowid; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)>(0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 8|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp2($7,132,$8,$9)|0); - STACKTOP = sp;return; -} -function _sqlite3ExprCodeFactorable($pParse,$pExpr,$target) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - $target = $target|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pExpr; - HEAP32[$2>>2] = $target; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 23|0); - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = ($6|0)!=(0); - if ($7) { - $8 = HEAP32[$1>>2]|0; - $9 = (_sqlite3ExprIsConstant($8)|0); - $10 = ($9|0)!=(0); - if ($10) { - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$2>>2]|0; - _sqlite3ExprCodeAtInit($11,$12,$13,0); - STACKTOP = sp;return; - } - } - $14 = HEAP32[$0>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = HEAP32[$2>>2]|0; - _sqlite3ExprCode($14,$15,$16); - STACKTOP = sp;return; -} -function _sqlite3VtabMakeWritable($pParse,$pTab) { - $pParse = $pParse|0; - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $apVtabLock = 0, $i = 0, $n = 0, $pToplevel = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $pToplevel = sp + 12|0; - $i = sp + 8|0; - $n = sp + 4|0; - $apVtabLock = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 408|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0|0); - $6 = HEAP32[$0>>2]|0; - if ($5) { - $7 = (($6) + 408|0); - $8 = HEAP32[$7>>2]|0; - $9 = $8; - } else { - $9 = $6; - } - HEAP32[$pToplevel>>2] = $9; - HEAP32[$i>>2] = 0; - while(1) { - $10 = HEAP32[$i>>2]|0; - $11 = HEAP32[$pToplevel>>2]|0; - $12 = (($11) + 452|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($10|0)<($13|0); - if (!($14)) { - break; - } - $15 = HEAP32[$1>>2]|0; - $16 = HEAP32[$i>>2]|0; - $17 = HEAP32[$pToplevel>>2]|0; - $18 = (($17) + 520|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($19) + ($16<<2)|0); - $21 = HEAP32[$20>>2]|0; - $22 = ($15|0)==($21|0); - if ($22) { - label = 10; - break; - } - $23 = HEAP32[$i>>2]|0; - $24 = (($23) + 1)|0; - HEAP32[$i>>2] = $24; - } - if ((label|0) == 10) { - STACKTOP = sp;return; - } - $25 = HEAP32[$pToplevel>>2]|0; - $26 = (($25) + 452|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + 1)|0; - $29 = $28<<2; - HEAP32[$n>>2] = $29; - $30 = HEAP32[$pToplevel>>2]|0; - $31 = (($30) + 520|0); - $32 = HEAP32[$31>>2]|0; - $33 = HEAP32[$n>>2]|0; - $34 = (_sqlite3_realloc($32,$33)|0); - HEAP32[$apVtabLock>>2] = $34; - $35 = HEAP32[$apVtabLock>>2]|0; - $36 = ($35|0)!=(0|0); - if ($36) { - $37 = HEAP32[$apVtabLock>>2]|0; - $38 = HEAP32[$pToplevel>>2]|0; - $39 = (($38) + 520|0); - HEAP32[$39>>2] = $37; - $40 = HEAP32[$1>>2]|0; - $41 = HEAP32[$pToplevel>>2]|0; - $42 = (($41) + 452|0); - $43 = HEAP32[$42>>2]|0; - $44 = (($43) + 1)|0; - HEAP32[$42>>2] = $44; - $45 = HEAP32[$pToplevel>>2]|0; - $46 = (($45) + 520|0); - $47 = HEAP32[$46>>2]|0; - $48 = (($47) + ($43<<2)|0); - HEAP32[$48>>2] = $40; - STACKTOP = sp;return; - } else { - $49 = HEAP32[$pToplevel>>2]|0; - $50 = HEAP32[$49>>2]|0; - $51 = (($50) + 64|0); - HEAP8[$51>>0] = 1; - STACKTOP = sp;return; - } -} -function _sqlite3GenerateConstraintChecks($pParse,$pTab,$aRegIdx,$iDataCur,$iIdxCur,$regNewData,$regOldData,$pkChng,$overrideError,$ignoreDest,$pbMayReplace) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $aRegIdx = $aRegIdx|0; - $iDataCur = $iDataCur|0; - $iIdxCur = $iIdxCur|0; - $regNewData = $regNewData|0; - $regOldData = $regOldData|0; - $pkChng = $pkChng|0; - $overrideError = $overrideError|0; - $ignoreDest = $ignoreDest|0; - $pbMayReplace = $pbMayReplace|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; - var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; - var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; - var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; - var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; - var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; - var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; - var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; - var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; - var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addrJump = 0; - var $addrRowidOk = 0, $addrUniqueOk = 0, $allOk = 0, $bAffinityDone = 0, $db = 0, $i = 0, $iField = 0, $iThisCur = 0, $ipkBottom = 0, $ipkTop = 0, $isUpdate = 0, $ix = 0, $j1 = 0, $nCol = 0, $nPkField = 0, $onError = 0, $op = 0, $p4 = 0, $pCheck = 0, $pIdx = 0; - var $pPk = 0, $pTrigger = 0, $pTrigger2 = 0, $regCmp = 0, $regIdx = 0, $regR = 0, $regRowid = 0, $seenReplace = 0, $v = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $x = 0, $x1 = 0, $zMsg = 0, $zName = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 176|0; - $vararg_buffer = sp; - $0 = sp + 168|0; - $1 = sp + 164|0; - $2 = sp + 160|0; - $3 = sp + 156|0; - $4 = sp + 152|0; - $5 = sp + 148|0; - $6 = sp + 144|0; - $7 = sp + 175|0; - $8 = sp + 174|0; - $9 = sp + 140|0; - $10 = sp + 136|0; - $v = sp + 132|0; - $pIdx = sp + 128|0; - $pPk = sp + 124|0; - $db = sp + 120|0; - $i = sp + 116|0; - $ix = sp + 112|0; - $nCol = sp + 108|0; - $onError = sp + 104|0; - $j1 = sp + 100|0; - $seenReplace = sp + 96|0; - $nPkField = sp + 92|0; - $ipkTop = sp + 88|0; - $ipkBottom = sp + 84|0; - $isUpdate = sp + 173|0; - $bAffinityDone = sp + 172|0; - $regRowid = sp + 80|0; - $zMsg = sp + 76|0; - $pCheck = sp + 72|0; - $allOk = sp + 68|0; - $zName = sp + 64|0; - $addrRowidOk = sp + 60|0; - $pTrigger = sp + 56|0; - $regIdx = sp + 52|0; - $regR = sp + 48|0; - $iThisCur = sp + 44|0; - $addrUniqueOk = sp + 40|0; - $iField = sp + 36|0; - $x = sp + 32|0; - $x1 = sp + 28|0; - $addrJump = sp + 24|0; - $op = sp + 20|0; - $regCmp = sp + 16|0; - $p4 = sp + 12|0; - $pTrigger2 = sp + 8|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $aRegIdx; - HEAP32[$3>>2] = $iDataCur; - HEAP32[$4>>2] = $iIdxCur; - HEAP32[$5>>2] = $regNewData; - HEAP32[$6>>2] = $regOldData; - HEAP8[$7>>0] = $pkChng; - HEAP8[$8>>0] = $overrideError; - HEAP32[$9>>2] = $ignoreDest; - HEAP32[$10>>2] = $pbMayReplace; - HEAP32[$pPk>>2] = 0; - HEAP32[$seenReplace>>2] = 0; - HEAP32[$ipkTop>>2] = 0; - HEAP32[$ipkBottom>>2] = 0; - HEAP8[$bAffinityDone>>0] = 0; - HEAP32[$regRowid>>2] = -1; - $11 = HEAP32[$6>>2]|0; - $12 = ($11|0)!=(0); - $13 = $12&1; - $14 = $13&255; - HEAP8[$isUpdate>>0] = $14; - $15 = HEAP32[$0>>2]|0; - $16 = HEAP32[$15>>2]|0; - HEAP32[$db>>2] = $16; - $17 = HEAP32[$0>>2]|0; - $18 = (_sqlite3GetVdbe($17)|0); - HEAP32[$v>>2] = $18; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 38|0); - $21 = HEAP16[$20>>1]|0; - $22 = $21 << 16 >> 16; - HEAP32[$nCol>>2] = $22; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 44|0); - $25 = HEAP8[$24>>0]|0; - $26 = $25&255; - $27 = $26 & 32; - $28 = ($27|0)==(0); - if ($28) { - HEAP32[$pPk>>2] = 0; - HEAP32[$nPkField>>2] = 1; - } else { - $29 = HEAP32[$1>>2]|0; - $30 = (_sqlite3PrimaryKeyIndex($29)|0); - HEAP32[$pPk>>2] = $30; - $31 = HEAP32[$pPk>>2]|0; - $32 = (($31) + 50|0); - $33 = HEAP16[$32>>1]|0; - $34 = $33&65535; - HEAP32[$nPkField>>2] = $34; - } - HEAP32[$i>>2] = 0; - while(1) { - $35 = HEAP32[$i>>2]|0; - $36 = HEAP32[$nCol>>2]|0; - $37 = ($35|0)<($36|0); - if (!($37)) { - break; - } - $38 = HEAP32[$i>>2]|0; - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 36|0); - $41 = HEAP16[$40>>1]|0; - $42 = $41 << 16 >> 16; - $43 = ($38|0)==($42|0); - do { - if (!($43)) { - $44 = HEAP32[$i>>2]|0; - $45 = HEAP32[$1>>2]|0; - $46 = (($45) + 4|0); - $47 = HEAP32[$46>>2]|0; - $48 = (($47) + (($44*24)|0)|0); - $49 = (($48) + 20|0); - $50 = HEAP8[$49>>0]|0; - $51 = $50&255; - HEAP32[$onError>>2] = $51; - $52 = HEAP32[$onError>>2]|0; - $53 = ($52|0)==(0); - if (!($53)) { - $54 = HEAP8[$8>>0]|0; - $55 = $54&255; - $56 = ($55|0)!=(10); - if ($56) { - $57 = HEAP8[$8>>0]|0; - $58 = $57&255; - HEAP32[$onError>>2] = $58; - } else { - $59 = HEAP32[$onError>>2]|0; - $60 = ($59|0)==(10); - if ($60) { - HEAP32[$onError>>2] = 2; - } - } - $61 = HEAP32[$onError>>2]|0; - $62 = ($61|0)==(5); - if ($62) { - $63 = HEAP32[$i>>2]|0; - $64 = HEAP32[$1>>2]|0; - $65 = (($64) + 4|0); - $66 = HEAP32[$65>>2]|0; - $67 = (($66) + (($63*24)|0)|0); - $68 = (($67) + 4|0); - $69 = HEAP32[$68>>2]|0; - $70 = ($69|0)==(0|0); - if ($70) { - HEAP32[$onError>>2] = 2; - } - } - $71 = HEAP32[$onError>>2]|0; - if ((($71|0) == 2)) { - $72 = HEAP32[$0>>2]|0; - _sqlite3MayAbort($72); - } else if ((($71|0) == 4)) { - $91 = HEAP32[$v>>2]|0; - $92 = HEAP32[$5>>2]|0; - $93 = (($92) + 1)|0; - $94 = HEAP32[$i>>2]|0; - $95 = (($93) + ($94))|0; - $96 = HEAP32[$9>>2]|0; - (_sqlite3VdbeAddOp2($91,76,$95,$96)|0); - break; - } else if (!((($71|0) == 3) | (($71|0) == 1))) { - $97 = HEAP32[$v>>2]|0; - $98 = HEAP32[$5>>2]|0; - $99 = (($98) + 1)|0; - $100 = HEAP32[$i>>2]|0; - $101 = (($99) + ($100))|0; - $102 = (_sqlite3VdbeAddOp1($97,77,$101)|0); - HEAP32[$j1>>2] = $102; - $103 = HEAP32[$0>>2]|0; - $104 = HEAP32[$i>>2]|0; - $105 = HEAP32[$1>>2]|0; - $106 = (($105) + 4|0); - $107 = HEAP32[$106>>2]|0; - $108 = (($107) + (($104*24)|0)|0); - $109 = (($108) + 4|0); - $110 = HEAP32[$109>>2]|0; - $111 = HEAP32[$5>>2]|0; - $112 = (($111) + 1)|0; - $113 = HEAP32[$i>>2]|0; - $114 = (($112) + ($113))|0; - _sqlite3ExprCode($103,$110,$114); - $115 = HEAP32[$v>>2]|0; - $116 = HEAP32[$j1>>2]|0; - _sqlite3VdbeJumpHere($115,$116); - break; - } - $73 = HEAP32[$db>>2]|0; - $74 = HEAP32[$1>>2]|0; - $75 = HEAP32[$74>>2]|0; - $76 = HEAP32[$i>>2]|0; - $77 = HEAP32[$1>>2]|0; - $78 = (($77) + 4|0); - $79 = HEAP32[$78>>2]|0; - $80 = (($79) + (($76*24)|0)|0); - $81 = HEAP32[$80>>2]|0; - HEAP32[$vararg_buffer>>2] = $75; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $81; - $82 = (_sqlite3MPrintf($73,17352,$vararg_buffer)|0); - HEAP32[$zMsg>>2] = $82; - $83 = HEAP32[$v>>2]|0; - $84 = HEAP32[$onError>>2]|0; - $85 = HEAP32[$5>>2]|0; - $86 = (($85) + 1)|0; - $87 = HEAP32[$i>>2]|0; - $88 = (($86) + ($87))|0; - $89 = HEAP32[$zMsg>>2]|0; - (_sqlite3VdbeAddOp4($83,23,1299,$84,$88,$89,-1)|0); - $90 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($90,1); - } - } - } while(0); - $117 = HEAP32[$i>>2]|0; - $118 = (($117) + 1)|0; - HEAP32[$i>>2] = $118; - } - $119 = HEAP32[$1>>2]|0; - $120 = (($119) + 24|0); - $121 = HEAP32[$120>>2]|0; - $122 = ($121|0)!=(0|0); - L27: do { - if ($122) { - $123 = HEAP32[$db>>2]|0; - $124 = (($123) + 24|0); - $125 = HEAP32[$124>>2]|0; - $126 = $125 & 8192; - $127 = ($126|0)==(0); - if ($127) { - $128 = HEAP32[$1>>2]|0; - $129 = (($128) + 24|0); - $130 = HEAP32[$129>>2]|0; - HEAP32[$pCheck>>2] = $130; - $131 = HEAP32[$5>>2]|0; - $132 = (($131) + 1)|0; - $133 = HEAP32[$0>>2]|0; - $134 = (($133) + 92|0); - HEAP32[$134>>2] = $132; - $135 = HEAP8[$8>>0]|0; - $136 = $135&255; - $137 = ($136|0)!=(10); - if ($137) { - $138 = HEAP8[$8>>0]|0; - $139 = $138&255; - $140 = $139; - } else { - $140 = 2; - } - HEAP32[$onError>>2] = $140; - HEAP32[$i>>2] = 0; - while(1) { - $141 = HEAP32[$i>>2]|0; - $142 = HEAP32[$pCheck>>2]|0; - $143 = HEAP32[$142>>2]|0; - $144 = ($141|0)<($143|0); - if (!($144)) { - break L27; - } - $145 = HEAP32[$v>>2]|0; - $146 = (_sqlite3VdbeMakeLabel($145)|0); - HEAP32[$allOk>>2] = $146; - $147 = HEAP32[$0>>2]|0; - $148 = HEAP32[$i>>2]|0; - $149 = HEAP32[$pCheck>>2]|0; - $150 = (($149) + 4|0); - $151 = HEAP32[$150>>2]|0; - $152 = (($151) + (($148*20)|0)|0); - $153 = HEAP32[$152>>2]|0; - $154 = HEAP32[$allOk>>2]|0; - _sqlite3ExprIfTrue($147,$153,$154,8); - $155 = HEAP32[$onError>>2]|0; - $156 = ($155|0)==(4); - if ($156) { - $157 = HEAP32[$v>>2]|0; - $158 = HEAP32[$9>>2]|0; - (_sqlite3VdbeAddOp2($157,16,0,$158)|0); - } else { - $159 = HEAP32[$i>>2]|0; - $160 = HEAP32[$pCheck>>2]|0; - $161 = (($160) + 4|0); - $162 = HEAP32[$161>>2]|0; - $163 = (($162) + (($159*20)|0)|0); - $164 = (($163) + 4|0); - $165 = HEAP32[$164>>2]|0; - HEAP32[$zName>>2] = $165; - $166 = HEAP32[$zName>>2]|0; - $167 = ($166|0)==(0|0); - if ($167) { - $168 = HEAP32[$1>>2]|0; - $169 = HEAP32[$168>>2]|0; - HEAP32[$zName>>2] = $169; - } - $170 = HEAP32[$onError>>2]|0; - $171 = ($170|0)==(5); - if ($171) { - HEAP32[$onError>>2] = 2; - } - $172 = HEAP32[$0>>2]|0; - $173 = HEAP32[$onError>>2]|0; - $174 = HEAP32[$zName>>2]|0; - _sqlite3HaltConstraint($172,275,$173,$174,0,3); - } - $175 = HEAP32[$v>>2]|0; - $176 = HEAP32[$allOk>>2]|0; - _sqlite3VdbeResolveLabel($175,$176); - $177 = HEAP32[$i>>2]|0; - $178 = (($177) + 1)|0; - HEAP32[$i>>2] = $178; - } - } - } - } while(0); - $179 = HEAP8[$7>>0]|0; - $180 = $179&255; - $181 = ($180|0)!=(0); - if ($181) { - $182 = HEAP32[$pPk>>2]|0; - $183 = ($182|0)==(0|0); - if ($183) { - $184 = HEAP32[$v>>2]|0; - $185 = (_sqlite3VdbeMakeLabel($184)|0); - HEAP32[$addrRowidOk>>2] = $185; - $186 = HEAP32[$1>>2]|0; - $187 = (($186) + 45|0); - $188 = HEAP8[$187>>0]|0; - $189 = $188&255; - HEAP32[$onError>>2] = $189; - $190 = HEAP8[$8>>0]|0; - $191 = $190&255; - $192 = ($191|0)!=(10); - if ($192) { - $193 = HEAP8[$8>>0]|0; - $194 = $193&255; - HEAP32[$onError>>2] = $194; - } else { - $195 = HEAP32[$onError>>2]|0; - $196 = ($195|0)==(10); - if ($196) { - HEAP32[$onError>>2] = 2; - } - } - $197 = HEAP8[$isUpdate>>0]|0; - $198 = ($197<<24>>24)!=(0); - if ($198) { - $199 = HEAP32[$v>>2]|0; - $200 = HEAP32[$5>>2]|0; - $201 = HEAP32[$addrRowidOk>>2]|0; - $202 = HEAP32[$6>>2]|0; - (_sqlite3VdbeAddOp3($199,79,$200,$201,$202)|0); - $203 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($203,-120); - } - $204 = HEAP32[$onError>>2]|0; - $205 = ($204|0)==(5); - L58: do { - if ($205) { - $206 = HEAP8[$8>>0]|0; - $207 = $206&255; - $208 = ($207|0)!=(5); - if ($208) { - $209 = HEAP32[$1>>2]|0; - $210 = (($209) + 8|0); - $211 = HEAP32[$210>>2]|0; - HEAP32[$pIdx>>2] = $211; - while(1) { - $212 = HEAP32[$pIdx>>2]|0; - $213 = ($212|0)!=(0|0); - if (!($213)) { - break L58; - } - $214 = HEAP32[$pIdx>>2]|0; - $215 = (($214) + 54|0); - $216 = HEAP8[$215>>0]|0; - $217 = $216&255; - $218 = ($217|0)==(4); - if ($218) { - break; - } - $219 = HEAP32[$pIdx>>2]|0; - $220 = (($219) + 54|0); - $221 = HEAP8[$220>>0]|0; - $222 = $221&255; - $223 = ($222|0)==(3); - if ($223) { - break; - } - $226 = HEAP32[$pIdx>>2]|0; - $227 = (($226) + 20|0); - $228 = HEAP32[$227>>2]|0; - HEAP32[$pIdx>>2] = $228; - } - $224 = HEAP32[$v>>2]|0; - $225 = (_sqlite3VdbeAddOp0($224,16)|0); - HEAP32[$ipkTop>>2] = $225; - } - } - } while(0); - $229 = HEAP32[$v>>2]|0; - $230 = HEAP32[$3>>2]|0; - $231 = HEAP32[$addrRowidOk>>2]|0; - $232 = HEAP32[$5>>2]|0; - (_sqlite3VdbeAddOp3($229,67,$230,$231,$232)|0); - $233 = HEAP32[$onError>>2]|0; - switch ($233|0) { - case 4: { - $267 = HEAP32[$v>>2]|0; - $268 = HEAP32[$9>>2]|0; - (_sqlite3VdbeAddOp2($267,16,0,$268)|0); - break; - } - case 5: { - HEAP32[$pTrigger>>2] = 0; - $237 = HEAP32[$db>>2]|0; - $238 = (($237) + 24|0); - $239 = HEAP32[$238>>2]|0; - $240 = $239 & 262144; - $241 = ($240|0)!=(0); - if ($241) { - $242 = HEAP32[$0>>2]|0; - $243 = HEAP32[$1>>2]|0; - $244 = (_sqlite3TriggersExist($242,$243,109,0,0)|0); - HEAP32[$pTrigger>>2] = $244; - } - $245 = HEAP32[$pTrigger>>2]|0; - $246 = ($245|0)!=(0|0); - if ($246) { - label = 58; - } else { - $247 = HEAP32[$0>>2]|0; - $248 = HEAP32[$1>>2]|0; - $249 = (_sqlite3FkRequired($247,$248,0,0)|0); - $250 = ($249|0)!=(0); - if ($250) { - label = 58; - } else { - $258 = HEAP32[$1>>2]|0; - $259 = (($258) + 8|0); - $260 = HEAP32[$259>>2]|0; - $261 = ($260|0)!=(0|0); - if ($261) { - $262 = HEAP32[$0>>2]|0; - _sqlite3MultiWrite($262); - $263 = HEAP32[$0>>2]|0; - $264 = HEAP32[$1>>2]|0; - $265 = HEAP32[$3>>2]|0; - $266 = HEAP32[$4>>2]|0; - _sqlite3GenerateRowIndexDelete($263,$264,$265,$266,0); - } - } - } - if ((label|0) == 58) { - $251 = HEAP32[$0>>2]|0; - _sqlite3MultiWrite($251); - $252 = HEAP32[$0>>2]|0; - $253 = HEAP32[$1>>2]|0; - $254 = HEAP32[$pTrigger>>2]|0; - $255 = HEAP32[$3>>2]|0; - $256 = HEAP32[$4>>2]|0; - $257 = HEAP32[$5>>2]|0; - _sqlite3GenerateRowDelete($252,$253,$254,$255,$256,$257,1,0,5,1); - } - HEAP32[$seenReplace>>2] = 1; - break; - } - case 3: case 2: case 1: { - label = 53; - break; - } - default: { - HEAP32[$onError>>2] = 2; - label = 53; - } - } - if ((label|0) == 53) { - $234 = HEAP32[$0>>2]|0; - $235 = HEAP32[$onError>>2]|0; - $236 = HEAP32[$1>>2]|0; - _sqlite3RowidConstraint($234,$235,$236); - } - $269 = HEAP32[$v>>2]|0; - $270 = HEAP32[$addrRowidOk>>2]|0; - _sqlite3VdbeResolveLabel($269,$270); - $271 = HEAP32[$ipkTop>>2]|0; - $272 = ($271|0)!=(0); - if ($272) { - $273 = HEAP32[$v>>2]|0; - $274 = (_sqlite3VdbeAddOp0($273,16)|0); - HEAP32[$ipkBottom>>2] = $274; - $275 = HEAP32[$v>>2]|0; - $276 = HEAP32[$ipkTop>>2]|0; - _sqlite3VdbeJumpHere($275,$276); - } - } - } - HEAP32[$ix>>2] = 0; - $277 = HEAP32[$1>>2]|0; - $278 = (($277) + 8|0); - $279 = HEAP32[$278>>2]|0; - HEAP32[$pIdx>>2] = $279; - while(1) { - $280 = HEAP32[$pIdx>>2]|0; - $281 = ($280|0)!=(0|0); - if (!($281)) { - break; - } - $282 = HEAP32[$ix>>2]|0; - $283 = HEAP32[$2>>2]|0; - $284 = (($283) + ($282<<2)|0); - $285 = HEAP32[$284>>2]|0; - $286 = ($285|0)==(0); - do { - if (!($286)) { - $287 = HEAP8[$bAffinityDone>>0]|0; - $288 = $287&255; - $289 = ($288|0)==(0); - if ($289) { - $290 = HEAP32[$v>>2]|0; - $291 = HEAP32[$1>>2]|0; - $292 = HEAP32[$5>>2]|0; - $293 = (($292) + 1)|0; - _sqlite3TableAffinity($290,$291,$293); - HEAP8[$bAffinityDone>>0] = 1; - } - $294 = HEAP32[$4>>2]|0; - $295 = HEAP32[$ix>>2]|0; - $296 = (($294) + ($295))|0; - HEAP32[$iThisCur>>2] = $296; - $297 = HEAP32[$v>>2]|0; - $298 = (_sqlite3VdbeMakeLabel($297)|0); - HEAP32[$addrUniqueOk>>2] = $298; - $299 = HEAP32[$pIdx>>2]|0; - $300 = (($299) + 36|0); - $301 = HEAP32[$300>>2]|0; - $302 = ($301|0)!=(0|0); - if ($302) { - $303 = HEAP32[$v>>2]|0; - $304 = HEAP32[$ix>>2]|0; - $305 = HEAP32[$2>>2]|0; - $306 = (($305) + ($304<<2)|0); - $307 = HEAP32[$306>>2]|0; - (_sqlite3VdbeAddOp2($303,28,0,$307)|0); - $308 = HEAP32[$5>>2]|0; - $309 = (($308) + 1)|0; - $310 = HEAP32[$0>>2]|0; - $311 = (($310) + 92|0); - HEAP32[$311>>2] = $309; - $312 = HEAP32[$0>>2]|0; - $313 = HEAP32[$pIdx>>2]|0; - $314 = (($313) + 36|0); - $315 = HEAP32[$314>>2]|0; - $316 = HEAP32[$addrUniqueOk>>2]|0; - _sqlite3ExprIfFalse($312,$315,$316,8); - $317 = HEAP32[$0>>2]|0; - $318 = (($317) + 92|0); - HEAP32[$318>>2] = 0; - } - $319 = HEAP32[$0>>2]|0; - $320 = HEAP32[$pIdx>>2]|0; - $321 = (($320) + 52|0); - $322 = HEAP16[$321>>1]|0; - $323 = $322&65535; - $324 = (_sqlite3GetTempRange($319,$323)|0); - HEAP32[$regIdx>>2] = $324; - HEAP32[$i>>2] = 0; - while(1) { - $325 = HEAP32[$i>>2]|0; - $326 = HEAP32[$pIdx>>2]|0; - $327 = (($326) + 52|0); - $328 = HEAP16[$327>>1]|0; - $329 = $328&65535; - $330 = ($325|0)<($329|0); - if (!($330)) { - break; - } - $331 = HEAP32[$i>>2]|0; - $332 = HEAP32[$pIdx>>2]|0; - $333 = (($332) + 4|0); - $334 = HEAP32[$333>>2]|0; - $335 = (($334) + ($331<<1)|0); - $336 = HEAP16[$335>>1]|0; - $337 = $336 << 16 >> 16; - HEAP32[$iField>>2] = $337; - $338 = HEAP32[$iField>>2]|0; - $339 = ($338|0)<(0); - if ($339) { - label = 76; - } else { - $340 = HEAP32[$iField>>2]|0; - $341 = HEAP32[$1>>2]|0; - $342 = (($341) + 36|0); - $343 = HEAP16[$342>>1]|0; - $344 = $343 << 16 >> 16; - $345 = ($340|0)==($344|0); - if ($345) { - label = 76; - } else { - $360 = HEAP32[$iField>>2]|0; - $361 = HEAP32[$5>>2]|0; - $362 = (($360) + ($361))|0; - $363 = (($362) + 1)|0; - HEAP32[$x>>2] = $363; - label = 81; - } - } - if ((label|0) == 76) { - label = 0; - $346 = HEAP32[$regRowid>>2]|0; - $347 = HEAP32[$regIdx>>2]|0; - $348 = HEAP32[$i>>2]|0; - $349 = (($347) + ($348))|0; - $350 = ($346|0)==($349|0); - if (!($350)) { - $351 = HEAP32[$5>>2]|0; - HEAP32[$x>>2] = $351; - $352 = HEAP32[$pIdx>>2]|0; - $353 = (($352) + 36|0); - $354 = HEAP32[$353>>2]|0; - $355 = ($354|0)!=(0|0); - if ($355) { - $359 = -1; - } else { - $356 = HEAP32[$regIdx>>2]|0; - $357 = HEAP32[$i>>2]|0; - $358 = (($356) + ($357))|0; - $359 = $358; - } - HEAP32[$regRowid>>2] = $359; - label = 81; - } - } - if ((label|0) == 81) { - label = 0; - $364 = HEAP32[$v>>2]|0; - $365 = HEAP32[$x>>2]|0; - $366 = HEAP32[$regIdx>>2]|0; - $367 = HEAP32[$i>>2]|0; - $368 = (($366) + ($367))|0; - (_sqlite3VdbeAddOp2($364,34,$365,$368)|0); - } - $369 = HEAP32[$i>>2]|0; - $370 = (($369) + 1)|0; - HEAP32[$i>>2] = $370; - } - $371 = HEAP32[$v>>2]|0; - $372 = HEAP32[$regIdx>>2]|0; - $373 = HEAP32[$pIdx>>2]|0; - $374 = (($373) + 52|0); - $375 = HEAP16[$374>>1]|0; - $376 = $375&65535; - $377 = HEAP32[$ix>>2]|0; - $378 = HEAP32[$2>>2]|0; - $379 = (($378) + ($377<<2)|0); - $380 = HEAP32[$379>>2]|0; - (_sqlite3VdbeAddOp3($371,48,$372,$376,$380)|0); - $381 = HEAP32[$0>>2]|0; - $382 = HEAP32[$regIdx>>2]|0; - $383 = HEAP32[$pIdx>>2]|0; - $384 = (($383) + 52|0); - $385 = HEAP16[$384>>1]|0; - $386 = $385&65535; - _sqlite3ExprCacheAffinityChange($381,$382,$386); - $387 = HEAP8[$isUpdate>>0]|0; - $388 = $387&255; - $389 = ($388|0)!=(0); - if ($389) { - $390 = HEAP32[$pPk>>2]|0; - $391 = HEAP32[$pIdx>>2]|0; - $392 = ($390|0)==($391|0); - if ($392) { - $393 = HEAP8[$7>>0]|0; - $394 = $393&255; - $395 = ($394|0)==(0); - if ($395) { - $396 = HEAP32[$v>>2]|0; - $397 = HEAP32[$addrUniqueOk>>2]|0; - _sqlite3VdbeResolveLabel($396,$397); - break; - } - } - } - $398 = HEAP32[$pIdx>>2]|0; - $399 = (($398) + 54|0); - $400 = HEAP8[$399>>0]|0; - $401 = $400&255; - HEAP32[$onError>>2] = $401; - $402 = HEAP32[$onError>>2]|0; - $403 = ($402|0)==(0); - if ($403) { - $404 = HEAP32[$0>>2]|0; - $405 = HEAP32[$regIdx>>2]|0; - $406 = HEAP32[$pIdx>>2]|0; - $407 = (($406) + 52|0); - $408 = HEAP16[$407>>1]|0; - $409 = $408&65535; - _sqlite3ReleaseTempRange($404,$405,$409); - $410 = HEAP32[$v>>2]|0; - $411 = HEAP32[$addrUniqueOk>>2]|0; - _sqlite3VdbeResolveLabel($410,$411); - break; - } - $412 = HEAP8[$8>>0]|0; - $413 = $412&255; - $414 = ($413|0)!=(10); - if ($414) { - $415 = HEAP8[$8>>0]|0; - $416 = $415&255; - HEAP32[$onError>>2] = $416; - } else { - $417 = HEAP32[$onError>>2]|0; - $418 = ($417|0)==(10); - if ($418) { - HEAP32[$onError>>2] = 2; - } - } - $419 = HEAP32[$v>>2]|0; - $420 = HEAP32[$iThisCur>>2]|0; - $421 = HEAP32[$addrUniqueOk>>2]|0; - $422 = HEAP32[$regIdx>>2]|0; - $423 = HEAP32[$pIdx>>2]|0; - $424 = (($423) + 50|0); - $425 = HEAP16[$424>>1]|0; - $426 = $425&65535; - (_sqlite3VdbeAddOp4Int($419,64,$420,$421,$422,$426)|0); - $427 = HEAP32[$pIdx>>2]|0; - $428 = HEAP32[$pPk>>2]|0; - $429 = ($427|0)==($428|0); - if ($429) { - $430 = HEAP32[$regIdx>>2]|0; - $434 = $430; - } else { - $431 = HEAP32[$0>>2]|0; - $432 = HEAP32[$nPkField>>2]|0; - $433 = (_sqlite3GetTempRange($431,$432)|0); - $434 = $433; - } - HEAP32[$regR>>2] = $434; - $435 = HEAP8[$isUpdate>>0]|0; - $436 = $435&255; - $437 = ($436|0)!=(0); - if ($437) { - label = 98; - } else { - $438 = HEAP32[$onError>>2]|0; - $439 = ($438|0)==(5); - if ($439) { - label = 98; - } - } - L133: do { - if ((label|0) == 98) { - label = 0; - $440 = HEAP32[$1>>2]|0; - $441 = (($440) + 44|0); - $442 = HEAP8[$441>>0]|0; - $443 = $442&255; - $444 = $443 & 32; - $445 = ($444|0)==(0); - if ($445) { - $446 = HEAP32[$v>>2]|0; - $447 = HEAP32[$iThisCur>>2]|0; - $448 = HEAP32[$regR>>2]|0; - (_sqlite3VdbeAddOp2($446,109,$447,$448)|0); - $449 = HEAP8[$isUpdate>>0]|0; - $450 = ($449<<24>>24)!=(0); - if (!($450)) { - break; - } - $451 = HEAP32[$v>>2]|0; - $452 = HEAP32[$regR>>2]|0; - $453 = HEAP32[$addrUniqueOk>>2]|0; - $454 = HEAP32[$6>>2]|0; - (_sqlite3VdbeAddOp3($451,79,$452,$453,$454)|0); - $455 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($455,-120); - break; - } - $456 = HEAP32[$pIdx>>2]|0; - $457 = HEAP32[$pPk>>2]|0; - $458 = ($456|0)!=($457|0); - L139: do { - if ($458) { - HEAP32[$i>>2] = 0; - while(1) { - $459 = HEAP32[$i>>2]|0; - $460 = HEAP32[$pPk>>2]|0; - $461 = (($460) + 50|0); - $462 = HEAP16[$461>>1]|0; - $463 = $462&65535; - $464 = ($459|0)<($463|0); - if (!($464)) { - break L139; - } - $465 = HEAP32[$pIdx>>2]|0; - $466 = HEAP32[$i>>2]|0; - $467 = HEAP32[$pPk>>2]|0; - $468 = (($467) + 4|0); - $469 = HEAP32[$468>>2]|0; - $470 = (($469) + ($466<<1)|0); - $471 = HEAP16[$470>>1]|0; - $472 = (_sqlite3ColumnOfIndex($465,$471)|0); - $473 = $472 << 16 >> 16; - HEAP32[$x1>>2] = $473; - $474 = HEAP32[$v>>2]|0; - $475 = HEAP32[$iThisCur>>2]|0; - $476 = HEAP32[$x1>>2]|0; - $477 = HEAP32[$regR>>2]|0; - $478 = HEAP32[$i>>2]|0; - $479 = (($477) + ($478))|0; - (_sqlite3VdbeAddOp3($474,46,$475,$476,$479)|0); - $480 = HEAP32[$i>>2]|0; - $481 = (($480) + 1)|0; - HEAP32[$i>>2] = $481; - } - } - } while(0); - $482 = HEAP8[$isUpdate>>0]|0; - $483 = ($482<<24>>24)!=(0); - if ($483) { - $484 = HEAP32[$v>>2]|0; - $485 = (_sqlite3VdbeCurrentAddr($484)|0); - $486 = HEAP32[$pPk>>2]|0; - $487 = (($486) + 50|0); - $488 = HEAP16[$487>>1]|0; - $489 = $488&65535; - $490 = (($485) + ($489))|0; - HEAP32[$addrJump>>2] = $490; - HEAP32[$op>>2] = 78; - $491 = HEAP32[$pIdx>>2]|0; - $492 = (($491) + 55|0); - $493 = HEAP8[$492>>0]|0; - $494 = $493 & 3; - $495 = $494&255; - $496 = ($495|0)==(2); - $497 = HEAP32[$regIdx>>2]|0; - $498 = HEAP32[$regR>>2]|0; - $499 = $496 ? $497 : $498; - HEAP32[$regCmp>>2] = $499; - HEAP32[$i>>2] = 0; - while(1) { - $500 = HEAP32[$i>>2]|0; - $501 = HEAP32[$pPk>>2]|0; - $502 = (($501) + 50|0); - $503 = HEAP16[$502>>1]|0; - $504 = $503&65535; - $505 = ($500|0)<($504|0); - if (!($505)) { - break L133; - } - $506 = HEAP32[$0>>2]|0; - $507 = HEAP32[$i>>2]|0; - $508 = HEAP32[$pPk>>2]|0; - $509 = (($508) + 32|0); - $510 = HEAP32[$509>>2]|0; - $511 = (($510) + ($507<<2)|0); - $512 = HEAP32[$511>>2]|0; - $513 = (_sqlite3LocateCollSeq($506,$512)|0); - HEAP32[$p4>>2] = $513; - $514 = HEAP32[$i>>2]|0; - $515 = HEAP32[$pPk>>2]|0; - $516 = (($515) + 4|0); - $517 = HEAP32[$516>>2]|0; - $518 = (($517) + ($514<<1)|0); - $519 = HEAP16[$518>>1]|0; - $520 = $519 << 16 >> 16; - HEAP32[$x1>>2] = $520; - $521 = HEAP32[$i>>2]|0; - $522 = HEAP32[$pPk>>2]|0; - $523 = (($522) + 50|0); - $524 = HEAP16[$523>>1]|0; - $525 = $524&65535; - $526 = (($525) - 1)|0; - $527 = ($521|0)==($526|0); - if ($527) { - $528 = HEAP32[$addrUniqueOk>>2]|0; - HEAP32[$addrJump>>2] = $528; - HEAP32[$op>>2] = 79; - } - $529 = HEAP32[$v>>2]|0; - $530 = HEAP32[$op>>2]|0; - $531 = HEAP32[$6>>2]|0; - $532 = (($531) + 1)|0; - $533 = HEAP32[$x1>>2]|0; - $534 = (($532) + ($533))|0; - $535 = HEAP32[$addrJump>>2]|0; - $536 = HEAP32[$regCmp>>2]|0; - $537 = HEAP32[$i>>2]|0; - $538 = (($536) + ($537))|0; - $539 = HEAP32[$p4>>2]|0; - (_sqlite3VdbeAddOp4($529,$530,$534,$535,$538,$539,-4)|0); - $540 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($540,-120); - $541 = HEAP32[$i>>2]|0; - $542 = (($541) + 1)|0; - HEAP32[$i>>2] = $542; - } - } - } - } while(0); - $543 = HEAP32[$onError>>2]|0; - if ((($543|0) == 3) | (($543|0) == 2) | (($543|0) == 1)) { - $544 = HEAP32[$0>>2]|0; - $545 = HEAP32[$onError>>2]|0; - $546 = HEAP32[$pIdx>>2]|0; - _sqlite3UniqueConstraint($544,$545,$546); - } else if ((($543|0) == 4)) { - $547 = HEAP32[$v>>2]|0; - $548 = HEAP32[$9>>2]|0; - (_sqlite3VdbeAddOp2($547,16,0,$548)|0); - } else { - HEAP32[$pTrigger2>>2] = 0; - $549 = HEAP32[$0>>2]|0; - _sqlite3MultiWrite($549); - $550 = HEAP32[$db>>2]|0; - $551 = (($550) + 24|0); - $552 = HEAP32[$551>>2]|0; - $553 = $552 & 262144; - $554 = ($553|0)!=(0); - if ($554) { - $555 = HEAP32[$0>>2]|0; - $556 = HEAP32[$1>>2]|0; - $557 = (_sqlite3TriggersExist($555,$556,109,0,0)|0); - HEAP32[$pTrigger2>>2] = $557; - } - $558 = HEAP32[$0>>2]|0; - $559 = HEAP32[$1>>2]|0; - $560 = HEAP32[$pTrigger2>>2]|0; - $561 = HEAP32[$3>>2]|0; - $562 = HEAP32[$4>>2]|0; - $563 = HEAP32[$regR>>2]|0; - $564 = HEAP32[$nPkField>>2]|0; - $565 = $564&65535; - $566 = HEAP32[$pIdx>>2]|0; - $567 = HEAP32[$pPk>>2]|0; - $568 = ($566|0)==($567|0); - $569 = $568&1; - $570 = $569&255; - _sqlite3GenerateRowDelete($558,$559,$560,$561,$562,$563,$565,0,5,$570); - HEAP32[$seenReplace>>2] = 1; - } - $571 = HEAP32[$v>>2]|0; - $572 = HEAP32[$addrUniqueOk>>2]|0; - _sqlite3VdbeResolveLabel($571,$572); - $573 = HEAP32[$0>>2]|0; - $574 = HEAP32[$regIdx>>2]|0; - $575 = HEAP32[$pIdx>>2]|0; - $576 = (($575) + 52|0); - $577 = HEAP16[$576>>1]|0; - $578 = $577&65535; - _sqlite3ReleaseTempRange($573,$574,$578); - $579 = HEAP32[$regR>>2]|0; - $580 = HEAP32[$regIdx>>2]|0; - $581 = ($579|0)!=($580|0); - if ($581) { - $582 = HEAP32[$0>>2]|0; - $583 = HEAP32[$regR>>2]|0; - $584 = HEAP32[$nPkField>>2]|0; - _sqlite3ReleaseTempRange($582,$583,$584); - } - } - } while(0); - $585 = HEAP32[$pIdx>>2]|0; - $586 = (($585) + 20|0); - $587 = HEAP32[$586>>2]|0; - HEAP32[$pIdx>>2] = $587; - $588 = HEAP32[$ix>>2]|0; - $589 = (($588) + 1)|0; - HEAP32[$ix>>2] = $589; - } - $590 = HEAP32[$ipkTop>>2]|0; - $591 = ($590|0)!=(0); - if (!($591)) { - $597 = HEAP32[$seenReplace>>2]|0; - $598 = HEAP32[$10>>2]|0; - HEAP32[$598>>2] = $597; - STACKTOP = sp;return; - } - $592 = HEAP32[$v>>2]|0; - $593 = HEAP32[$ipkTop>>2]|0; - $594 = (($593) + 1)|0; - (_sqlite3VdbeAddOp2($592,16,0,$594)|0); - $595 = HEAP32[$v>>2]|0; - $596 = HEAP32[$ipkBottom>>2]|0; - _sqlite3VdbeJumpHere($595,$596); - $597 = HEAP32[$seenReplace>>2]|0; - $598 = HEAP32[$10>>2]|0; - HEAP32[$598>>2] = $597; - STACKTOP = sp;return; -} -function _sqlite3FkCheck($pParse,$pTab,$regOld,$regNew,$aChange,$bChngRowid) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $regOld = $regOld|0; - $regNew = $regNew|0; - $aChange = $aChange|0; - $bChngRowid = $bChngRowid|0; - var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; - var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; - var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; - var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; - var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; - var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; - var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; - var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; - var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; - var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; - var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0; - var $296 = 0, $297 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; - var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; - var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; - var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aiCol = 0; - var $aiCol2 = 0, $aiFree = 0, $db = 0, $i = 0, $iCol = 0, $iDb = 0, $iJump = 0, $iReg = 0, $isIgnore = 0, $isIgnoreErrors = 0, $pFKey = 0, $pIdx = 0, $pIdx1 = 0, $pItem = 0, $pSrc = 0, $pTo = 0, $rcauth = 0, $v = 0, $zCol = 0, $zDb = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 112|0; - $0 = sp + 104|0; - $1 = sp + 100|0; - $2 = sp + 96|0; - $3 = sp + 92|0; - $4 = sp + 88|0; - $5 = sp + 84|0; - $db = sp + 80|0; - $pFKey = sp + 76|0; - $iDb = sp + 72|0; - $zDb = sp + 68|0; - $isIgnoreErrors = sp + 64|0; - $pTo = sp + 60|0; - $pIdx = sp + 56|0; - $aiFree = sp + 52|0; - $aiCol = sp + 48|0; - $iCol = sp + 44|0; - $i = sp + 40|0; - $isIgnore = sp + 36|0; - $v = sp + 32|0; - $iJump = sp + 28|0; - $iReg = sp + 24|0; - $rcauth = sp + 20|0; - $zCol = sp + 16|0; - $pIdx1 = sp + 12|0; - $pSrc = sp + 8|0; - $aiCol2 = sp + 4|0; - $pItem = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $regOld; - HEAP32[$3>>2] = $regNew; - HEAP32[$4>>2] = $aChange; - HEAP32[$5>>2] = $bChngRowid; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$db>>2] = $7; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 438|0); - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - HEAP32[$isIgnoreErrors>>2] = $11; - $12 = HEAP32[$db>>2]|0; - $13 = (($12) + 24|0); - $14 = HEAP32[$13>>2]|0; - $15 = $14 & 524288; - $16 = ($15|0)==(0); - if ($16) { - STACKTOP = sp;return; - } - $17 = HEAP32[$db>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 68|0); - $20 = HEAP32[$19>>2]|0; - $21 = (_sqlite3SchemaToIndex($17,$20)|0); - HEAP32[$iDb>>2] = $21; - $22 = HEAP32[$iDb>>2]|0; - $23 = HEAP32[$db>>2]|0; - $24 = (($23) + 16|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + ($22<<4)|0); - $27 = HEAP32[$26>>2]|0; - HEAP32[$zDb>>2] = $27; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 16|0); - $30 = HEAP32[$29>>2]|0; - HEAP32[$pFKey>>2] = $30; - L4: while(1) { - $31 = HEAP32[$pFKey>>2]|0; - $32 = ($31|0)!=(0|0); - if (!($32)) { - label = 38; - break; - } - HEAP32[$pIdx>>2] = 0; - HEAP32[$aiFree>>2] = 0; - HEAP32[$isIgnore>>2] = 0; - $33 = HEAP32[$4>>2]|0; - $34 = ($33|0)!=(0|0); - if ($34) { - $35 = HEAP32[$1>>2]|0; - $36 = HEAP32[$35>>2]|0; - $37 = HEAP32[$pFKey>>2]|0; - $38 = (($37) + 8|0); - $39 = HEAP32[$38>>2]|0; - $40 = (_sqlite3_stricmp($36,$39)|0); - $41 = ($40|0)!=(0); - if ($41) { - $42 = HEAP32[$1>>2]|0; - $43 = HEAP32[$pFKey>>2]|0; - $44 = HEAP32[$4>>2]|0; - $45 = HEAP32[$5>>2]|0; - $46 = (_fkChildIsModified($42,$43,$44,$45)|0); - $47 = ($46|0)==(0); - if (!($47)) { - label = 7; - } - } else { - label = 7; - } - } else { - label = 7; - } - do { - if ((label|0) == 7) { - label = 0; - $48 = HEAP32[$0>>2]|0; - $49 = (($48) + 438|0); - $50 = HEAP8[$49>>0]|0; - $51 = ($50<<24>>24)!=(0); - if ($51) { - $52 = HEAP32[$db>>2]|0; - $53 = HEAP32[$pFKey>>2]|0; - $54 = (($53) + 8|0); - $55 = HEAP32[$54>>2]|0; - $56 = HEAP32[$zDb>>2]|0; - $57 = (_sqlite3FindTable($52,$55,$56)|0); - HEAP32[$pTo>>2] = $57; - } else { - $58 = HEAP32[$0>>2]|0; - $59 = HEAP32[$pFKey>>2]|0; - $60 = (($59) + 8|0); - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$zDb>>2]|0; - $63 = (_sqlite3LocateTable($58,0,$61,$62)|0); - HEAP32[$pTo>>2] = $63; - } - $64 = HEAP32[$pTo>>2]|0; - $65 = ($64|0)!=(0|0); - if ($65) { - $66 = HEAP32[$0>>2]|0; - $67 = HEAP32[$pTo>>2]|0; - $68 = HEAP32[$pFKey>>2]|0; - $69 = (_sqlite3FkLocateIndex($66,$67,$68,$pIdx,$aiFree)|0); - $70 = ($69|0)!=(0); - if (!($70)) { - $112 = HEAP32[$aiFree>>2]|0; - $113 = ($112|0)!=(0|0); - if ($113) { - $114 = HEAP32[$aiFree>>2]|0; - HEAP32[$aiCol>>2] = $114; - } else { - $115 = HEAP32[$pFKey>>2]|0; - $116 = (($115) + 36|0); - $117 = HEAP32[$116>>2]|0; - HEAP32[$iCol>>2] = $117; - HEAP32[$aiCol>>2] = $iCol; - } - HEAP32[$i>>2] = 0; - while(1) { - $118 = HEAP32[$i>>2]|0; - $119 = HEAP32[$pFKey>>2]|0; - $120 = (($119) + 20|0); - $121 = HEAP32[$120>>2]|0; - $122 = ($118|0)<($121|0); - if (!($122)) { - break; - } - $123 = HEAP32[$i>>2]|0; - $124 = HEAP32[$aiCol>>2]|0; - $125 = (($124) + ($123<<2)|0); - $126 = HEAP32[$125>>2]|0; - $127 = HEAP32[$1>>2]|0; - $128 = (($127) + 36|0); - $129 = HEAP16[$128>>1]|0; - $130 = $129 << 16 >> 16; - $131 = ($126|0)==($130|0); - if ($131) { - $132 = HEAP32[$i>>2]|0; - $133 = HEAP32[$aiCol>>2]|0; - $134 = (($133) + ($132<<2)|0); - HEAP32[$134>>2] = -1; - } - $135 = HEAP32[$db>>2]|0; - $136 = (($135) + 276|0); - $137 = HEAP32[$136>>2]|0; - $138 = ($137|0)!=(0|0); - if ($138) { - $139 = HEAP32[$pIdx>>2]|0; - $140 = ($139|0)!=(0|0); - if ($140) { - $141 = HEAP32[$i>>2]|0; - $142 = HEAP32[$pIdx>>2]|0; - $143 = (($142) + 4|0); - $144 = HEAP32[$143>>2]|0; - $145 = (($144) + ($141<<1)|0); - $146 = HEAP16[$145>>1]|0; - $$sink = $146; - } else { - $147 = HEAP32[$pTo>>2]|0; - $148 = (($147) + 36|0); - $149 = HEAP16[$148>>1]|0; - $$sink = $149; - } - $150 = $$sink << 16 >> 16; - $151 = HEAP32[$pTo>>2]|0; - $152 = (($151) + 4|0); - $153 = HEAP32[$152>>2]|0; - $154 = (($153) + (($150*24)|0)|0); - $155 = HEAP32[$154>>2]|0; - HEAP32[$zCol>>2] = $155; - $156 = HEAP32[$0>>2]|0; - $157 = HEAP32[$pTo>>2]|0; - $158 = HEAP32[$157>>2]|0; - $159 = HEAP32[$zCol>>2]|0; - $160 = HEAP32[$iDb>>2]|0; - $161 = (_sqlite3AuthReadCol($156,$158,$159,$160)|0); - HEAP32[$rcauth>>2] = $161; - $162 = HEAP32[$rcauth>>2]|0; - $163 = ($162|0)==(2); - $164 = $163&1; - HEAP32[$isIgnore>>2] = $164; - } - $165 = HEAP32[$i>>2]|0; - $166 = (($165) + 1)|0; - HEAP32[$i>>2] = $166; - } - $167 = HEAP32[$0>>2]|0; - $168 = HEAP32[$iDb>>2]|0; - $169 = HEAP32[$pTo>>2]|0; - $170 = (($169) + 32|0); - $171 = HEAP32[$170>>2]|0; - $172 = HEAP32[$pTo>>2]|0; - $173 = HEAP32[$172>>2]|0; - _sqlite3TableLock($167,$168,$171,0,$173); - $174 = HEAP32[$0>>2]|0; - $175 = (($174) + 68|0); - $176 = HEAP32[$175>>2]|0; - $177 = (($176) + 1)|0; - HEAP32[$175>>2] = $177; - $178 = HEAP32[$2>>2]|0; - $179 = ($178|0)!=(0); - if ($179) { - $180 = HEAP32[$0>>2]|0; - $181 = HEAP32[$iDb>>2]|0; - $182 = HEAP32[$pTo>>2]|0; - $183 = HEAP32[$pIdx>>2]|0; - $184 = HEAP32[$pFKey>>2]|0; - $185 = HEAP32[$aiCol>>2]|0; - $186 = HEAP32[$2>>2]|0; - $187 = HEAP32[$isIgnore>>2]|0; - _fkLookupParent($180,$181,$182,$183,$184,$185,$186,-1,$187); - } - $188 = HEAP32[$3>>2]|0; - $189 = ($188|0)!=(0); - if ($189) { - $190 = HEAP32[$0>>2]|0; - $191 = HEAP32[$iDb>>2]|0; - $192 = HEAP32[$pTo>>2]|0; - $193 = HEAP32[$pIdx>>2]|0; - $194 = HEAP32[$pFKey>>2]|0; - $195 = HEAP32[$aiCol>>2]|0; - $196 = HEAP32[$3>>2]|0; - $197 = HEAP32[$isIgnore>>2]|0; - _fkLookupParent($190,$191,$192,$193,$194,$195,$196,1,$197); - } - $198 = HEAP32[$db>>2]|0; - $199 = HEAP32[$aiFree>>2]|0; - _sqlite3DbFree($198,$199); - break; - } - } - $71 = HEAP32[$isIgnoreErrors>>2]|0; - $72 = ($71|0)!=(0); - if (!($72)) { - label = 57; - break L4; - } - $73 = HEAP32[$db>>2]|0; - $74 = (($73) + 64|0); - $75 = HEAP8[$74>>0]|0; - $76 = $75&255; - $77 = ($76|0)!=(0); - if ($77) { - label = 57; - break L4; - } - $78 = HEAP32[$pTo>>2]|0; - $79 = ($78|0)==(0|0); - if ($79) { - $80 = HEAP32[$0>>2]|0; - $81 = (_sqlite3GetVdbe($80)|0); - HEAP32[$v>>2] = $81; - $82 = HEAP32[$v>>2]|0; - $83 = (_sqlite3VdbeCurrentAddr($82)|0); - $84 = HEAP32[$pFKey>>2]|0; - $85 = (($84) + 20|0); - $86 = HEAP32[$85>>2]|0; - $87 = (($83) + ($86))|0; - $88 = (($87) + 1)|0; - HEAP32[$iJump>>2] = $88; - HEAP32[$i>>2] = 0; - while(1) { - $89 = HEAP32[$i>>2]|0; - $90 = HEAP32[$pFKey>>2]|0; - $91 = (($90) + 20|0); - $92 = HEAP32[$91>>2]|0; - $93 = ($89|0)<($92|0); - if (!($93)) { - break; - } - $94 = HEAP32[$i>>2]|0; - $95 = HEAP32[$pFKey>>2]|0; - $96 = (($95) + 36|0); - $97 = (($96) + ($94<<3)|0); - $98 = HEAP32[$97>>2]|0; - $99 = HEAP32[$2>>2]|0; - $100 = (($98) + ($99))|0; - $101 = (($100) + 1)|0; - HEAP32[$iReg>>2] = $101; - $102 = HEAP32[$v>>2]|0; - $103 = HEAP32[$iReg>>2]|0; - $104 = HEAP32[$iJump>>2]|0; - (_sqlite3VdbeAddOp2($102,76,$103,$104)|0); - $105 = HEAP32[$i>>2]|0; - $106 = (($105) + 1)|0; - HEAP32[$i>>2] = $106; - } - $107 = HEAP32[$v>>2]|0; - $108 = HEAP32[$pFKey>>2]|0; - $109 = (($108) + 24|0); - $110 = HEAP8[$109>>0]|0; - $111 = $110&255; - (_sqlite3VdbeAddOp2($107,130,$111,-1)|0); - } - } - } while(0); - $200 = HEAP32[$pFKey>>2]|0; - $201 = (($200) + 4|0); - $202 = HEAP32[$201>>2]|0; - HEAP32[$pFKey>>2] = $202; - } - if ((label|0) == 38) { - $203 = HEAP32[$1>>2]|0; - $204 = (_sqlite3FkReferences($203)|0); - HEAP32[$pFKey>>2] = $204; - L56: while(1) { - $205 = HEAP32[$pFKey>>2]|0; - $206 = ($205|0)!=(0|0); - if (!($206)) { - label = 57; - break; - } - HEAP32[$pIdx1>>2] = 0; - HEAP32[$aiCol2>>2] = 0; - $207 = HEAP32[$4>>2]|0; - $208 = ($207|0)!=(0|0); - if ($208) { - $209 = HEAP32[$1>>2]|0; - $210 = HEAP32[$pFKey>>2]|0; - $211 = HEAP32[$4>>2]|0; - $212 = HEAP32[$5>>2]|0; - $213 = (_fkParentIsModified($209,$210,$211,$212)|0); - $214 = ($213|0)==(0); - if (!($214)) { - label = 42; - } - } else { - label = 42; - } - do { - if ((label|0) == 42) { - label = 0; - $215 = HEAP32[$pFKey>>2]|0; - $216 = (($215) + 24|0); - $217 = HEAP8[$216>>0]|0; - $218 = ($217<<24>>24)!=(0); - if (!($218)) { - $219 = HEAP32[$db>>2]|0; - $220 = (($219) + 24|0); - $221 = HEAP32[$220>>2]|0; - $222 = $221 & 16777216; - $223 = ($222|0)!=(0); - if (!($223)) { - $224 = HEAP32[$0>>2]|0; - $225 = (($224) + 408|0); - $226 = HEAP32[$225>>2]|0; - $227 = ($226|0)!=(0|0); - if (!($227)) { - $228 = HEAP32[$0>>2]|0; - $229 = (($228) + 20|0); - $230 = HEAP8[$229>>0]|0; - $231 = ($230<<24>>24)!=(0); - if (!($231)) { - break; - } - } - } - } - $232 = HEAP32[$0>>2]|0; - $233 = HEAP32[$1>>2]|0; - $234 = HEAP32[$pFKey>>2]|0; - $235 = (_sqlite3FkLocateIndex($232,$233,$234,$pIdx1,$aiCol2)|0); - $236 = ($235|0)!=(0); - if ($236) { - $237 = HEAP32[$isIgnoreErrors>>2]|0; - $238 = ($237|0)!=(0); - if (!($238)) { - label = 57; - break L56; - } - $239 = HEAP32[$db>>2]|0; - $240 = (($239) + 64|0); - $241 = HEAP8[$240>>0]|0; - $242 = $241&255; - $243 = ($242|0)!=(0); - if ($243) { - label = 57; - break L56; - } else { - break; - } - } - $244 = HEAP32[$db>>2]|0; - $245 = (_sqlite3SrcListAppend($244,0,0,0)|0); - HEAP32[$pSrc>>2] = $245; - $246 = HEAP32[$pSrc>>2]|0; - $247 = ($246|0)!=(0|0); - if ($247) { - $248 = HEAP32[$pSrc>>2]|0; - $249 = (($248) + 8|0); - HEAP32[$pItem>>2] = $249; - $250 = HEAP32[$pFKey>>2]|0; - $251 = HEAP32[$250>>2]|0; - $252 = HEAP32[$pItem>>2]|0; - $253 = (($252) + 16|0); - HEAP32[$253>>2] = $251; - $254 = HEAP32[$pFKey>>2]|0; - $255 = HEAP32[$254>>2]|0; - $256 = HEAP32[$255>>2]|0; - $257 = HEAP32[$pItem>>2]|0; - $258 = (($257) + 8|0); - HEAP32[$258>>2] = $256; - $259 = HEAP32[$pItem>>2]|0; - $260 = (($259) + 16|0); - $261 = HEAP32[$260>>2]|0; - $262 = (($261) + 40|0); - $263 = HEAP16[$262>>1]|0; - $264 = (($263) + 1)<<16>>16; - HEAP16[$262>>1] = $264; - $265 = HEAP32[$0>>2]|0; - $266 = (($265) + 68|0); - $267 = HEAP32[$266>>2]|0; - $268 = (($267) + 1)|0; - HEAP32[$266>>2] = $268; - $269 = HEAP32[$pItem>>2]|0; - $270 = (($269) + 40|0); - HEAP32[$270>>2] = $267; - $271 = HEAP32[$3>>2]|0; - $272 = ($271|0)!=(0); - if ($272) { - $273 = HEAP32[$0>>2]|0; - $274 = HEAP32[$pSrc>>2]|0; - $275 = HEAP32[$1>>2]|0; - $276 = HEAP32[$pIdx1>>2]|0; - $277 = HEAP32[$pFKey>>2]|0; - $278 = HEAP32[$aiCol2>>2]|0; - $279 = HEAP32[$3>>2]|0; - _fkScanChildren($273,$274,$275,$276,$277,$278,$279,-1); - } - $280 = HEAP32[$2>>2]|0; - $281 = ($280|0)!=(0); - if ($281) { - $282 = HEAP32[$0>>2]|0; - $283 = HEAP32[$pSrc>>2]|0; - $284 = HEAP32[$1>>2]|0; - $285 = HEAP32[$pIdx1>>2]|0; - $286 = HEAP32[$pFKey>>2]|0; - $287 = HEAP32[$aiCol2>>2]|0; - $288 = HEAP32[$2>>2]|0; - _fkScanChildren($282,$283,$284,$285,$286,$287,$288,1); - } - $289 = HEAP32[$pItem>>2]|0; - $290 = (($289) + 8|0); - HEAP32[$290>>2] = 0; - $291 = HEAP32[$db>>2]|0; - $292 = HEAP32[$pSrc>>2]|0; - _sqlite3SrcListDelete($291,$292); - } - $293 = HEAP32[$db>>2]|0; - $294 = HEAP32[$aiCol2>>2]|0; - _sqlite3DbFree($293,$294); - } - } while(0); - $295 = HEAP32[$pFKey>>2]|0; - $296 = (($295) + 12|0); - $297 = HEAP32[$296>>2]|0; - HEAP32[$pFKey>>2] = $297; - } - if ((label|0) == 57) { - STACKTOP = sp;return; - } - } - else if ((label|0) == 57) { - STACKTOP = sp;return; - } -} -function _sqlite3CompleteInsertion($pParse,$pTab,$iDataCur,$iIdxCur,$regNewData,$aRegIdx,$isUpdate,$appendBias,$useSeekResult) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $iDataCur = $iDataCur|0; - $iIdxCur = $iIdxCur|0; - $regNewData = $regNewData|0; - $aRegIdx = $aRegIdx|0; - $isUpdate = $isUpdate|0; - $appendBias = $appendBias|0; - $useSeekResult = $useSeekResult|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; - var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $14 = 0, $15 = 0; - var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; - var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; - var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; - var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; - var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bAffinityDone = 0, $i = 0, $pIdx = 0, $pik_flags = 0, $regData = 0, $regRec = 0, $v = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 52|0; - $1 = sp + 48|0; - $2 = sp + 44|0; - $3 = sp + 40|0; - $4 = sp + 36|0; - $5 = sp + 32|0; - $6 = sp + 28|0; - $7 = sp + 24|0; - $8 = sp + 20|0; - $v = sp + 16|0; - $pIdx = sp + 12|0; - $pik_flags = sp + 57|0; - $regData = sp + 8|0; - $regRec = sp + 4|0; - $i = sp; - $bAffinityDone = sp + 56|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $iDataCur; - HEAP32[$3>>2] = $iIdxCur; - HEAP32[$4>>2] = $regNewData; - HEAP32[$5>>2] = $aRegIdx; - HEAP32[$6>>2] = $isUpdate; - HEAP32[$7>>2] = $appendBias; - HEAP32[$8>>2] = $useSeekResult; - HEAP8[$bAffinityDone>>0] = 0; - $9 = HEAP32[$0>>2]|0; - $10 = (_sqlite3GetVdbe($9)|0); - HEAP32[$v>>2] = $10; - HEAP32[$i>>2] = 0; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 8|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pIdx>>2] = $13; - while(1) { - $14 = HEAP32[$pIdx>>2]|0; - $15 = ($14|0)!=(0|0); - if (!($15)) { - break; - } - $16 = HEAP32[$i>>2]|0; - $17 = HEAP32[$5>>2]|0; - $18 = (($17) + ($16<<2)|0); - $19 = HEAP32[$18>>2]|0; - $20 = ($19|0)==(0); - if (!($20)) { - HEAP8[$bAffinityDone>>0] = 1; - $21 = HEAP32[$pIdx>>2]|0; - $22 = (($21) + 36|0); - $23 = HEAP32[$22>>2]|0; - $24 = ($23|0)!=(0|0); - if ($24) { - $25 = HEAP32[$v>>2]|0; - $26 = HEAP32[$i>>2]|0; - $27 = HEAP32[$5>>2]|0; - $28 = (($27) + ($26<<2)|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$v>>2]|0; - $31 = (_sqlite3VdbeCurrentAddr($30)|0); - $32 = (($31) + 2)|0; - (_sqlite3VdbeAddOp2($25,76,$29,$32)|0); - } - $33 = HEAP32[$v>>2]|0; - $34 = HEAP32[$3>>2]|0; - $35 = HEAP32[$i>>2]|0; - $36 = (($34) + ($35))|0; - $37 = HEAP32[$i>>2]|0; - $38 = HEAP32[$5>>2]|0; - $39 = (($38) + ($37<<2)|0); - $40 = HEAP32[$39>>2]|0; - (_sqlite3VdbeAddOp2($33,107,$36,$40)|0); - HEAP8[$pik_flags>>0] = 0; - $41 = HEAP32[$8>>2]|0; - $42 = ($41|0)!=(0); - $$ = $42 ? 16 : 0; - HEAP8[$pik_flags>>0] = $$; - $43 = HEAP32[$pIdx>>2]|0; - $44 = (($43) + 55|0); - $45 = HEAP8[$44>>0]|0; - $46 = $45 & 3; - $47 = $46&255; - $48 = ($47|0)==(2); - if ($48) { - $49 = HEAP32[$1>>2]|0; - $50 = (($49) + 44|0); - $51 = HEAP8[$50>>0]|0; - $52 = $51&255; - $53 = $52 & 32; - $54 = ($53|0)==(0); - if (!($54)) { - $55 = HEAP8[$pik_flags>>0]|0; - $56 = $55&255; - $57 = $56 | 1; - $58 = $57&255; - HEAP8[$pik_flags>>0] = $58; - } - } - $59 = HEAP8[$pik_flags>>0]|0; - $60 = ($59<<24>>24)!=(0); - if ($60) { - $61 = HEAP32[$v>>2]|0; - $62 = HEAP8[$pik_flags>>0]|0; - _sqlite3VdbeChangeP5($61,$62); - } - } - $63 = HEAP32[$pIdx>>2]|0; - $64 = (($63) + 20|0); - $65 = HEAP32[$64>>2]|0; - HEAP32[$pIdx>>2] = $65; - $66 = HEAP32[$i>>2]|0; - $67 = (($66) + 1)|0; - HEAP32[$i>>2] = $67; - } - $68 = HEAP32[$1>>2]|0; - $69 = (($68) + 44|0); - $70 = HEAP8[$69>>0]|0; - $71 = $70&255; - $72 = $71 & 32; - $73 = ($72|0)==(0); - if (!($73)) { - STACKTOP = sp;return; - } - $74 = HEAP32[$4>>2]|0; - $75 = (($74) + 1)|0; - HEAP32[$regData>>2] = $75; - $76 = HEAP32[$0>>2]|0; - $77 = (_sqlite3GetTempReg($76)|0); - HEAP32[$regRec>>2] = $77; - $78 = HEAP32[$v>>2]|0; - $79 = HEAP32[$regData>>2]|0; - $80 = HEAP32[$1>>2]|0; - $81 = (($80) + 38|0); - $82 = HEAP16[$81>>1]|0; - $83 = $82 << 16 >> 16; - $84 = HEAP32[$regRec>>2]|0; - (_sqlite3VdbeAddOp3($78,48,$79,$83,$84)|0); - $85 = HEAP8[$bAffinityDone>>0]|0; - $86 = ($85<<24>>24)!=(0); - if (!($86)) { - $87 = HEAP32[$v>>2]|0; - $88 = HEAP32[$1>>2]|0; - _sqlite3TableAffinity($87,$88,0); - } - $89 = HEAP32[$0>>2]|0; - $90 = HEAP32[$regData>>2]|0; - $91 = HEAP32[$1>>2]|0; - $92 = (($91) + 38|0); - $93 = HEAP16[$92>>1]|0; - $94 = $93 << 16 >> 16; - _sqlite3ExprCacheAffinityChange($89,$90,$94); - $95 = HEAP32[$0>>2]|0; - $96 = (($95) + 18|0); - $97 = HEAP8[$96>>0]|0; - $98 = ($97<<24>>24)!=(0); - if ($98) { - HEAP8[$pik_flags>>0] = 0; - } else { - HEAP8[$pik_flags>>0] = 1; - $99 = HEAP32[$6>>2]|0; - $100 = ($99|0)!=(0); - $101 = $100 ? 4 : 2; - $102 = HEAP8[$pik_flags>>0]|0; - $103 = $102&255; - $104 = $103 | $101; - $105 = $104&255; - HEAP8[$pik_flags>>0] = $105; - } - $106 = HEAP32[$7>>2]|0; - $107 = ($106|0)!=(0); - if ($107) { - $108 = HEAP8[$pik_flags>>0]|0; - $109 = $108&255; - $110 = $109 | 8; - $111 = $110&255; - HEAP8[$pik_flags>>0] = $111; - } - $112 = HEAP32[$8>>2]|0; - $113 = ($112|0)!=(0); - if ($113) { - $114 = HEAP8[$pik_flags>>0]|0; - $115 = $114&255; - $116 = $115 | 16; - $117 = $116&255; - HEAP8[$pik_flags>>0] = $117; - } - $118 = HEAP32[$v>>2]|0; - $119 = HEAP32[$2>>2]|0; - $120 = HEAP32[$regRec>>2]|0; - $121 = HEAP32[$4>>2]|0; - (_sqlite3VdbeAddOp3($118,70,$119,$120,$121)|0); - $122 = HEAP32[$0>>2]|0; - $123 = (($122) + 18|0); - $124 = HEAP8[$123>>0]|0; - $125 = ($124<<24>>24)!=(0); - if (!($125)) { - $126 = HEAP32[$v>>2]|0; - $127 = HEAP32[$1>>2]|0; - $128 = HEAP32[$127>>2]|0; - _sqlite3VdbeChangeP4($126,-1,$128,0); - } - $129 = HEAP32[$v>>2]|0; - $130 = HEAP8[$pik_flags>>0]|0; - _sqlite3VdbeChangeP5($129,$130); - STACKTOP = sp;return; -} -function _sqlite3AutoincrementEnd($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $iRec = 0, $j1 = 0, $memId = 0, $p = 0; - var $pDb = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $p = sp + 24|0; - $v = sp + 20|0; - $db = sp + 16|0; - $pDb = sp + 12|0; - $j1 = sp + 8|0; - $iRec = sp + 4|0; - $memId = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$v>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 404|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$p>>2] = $8; - while(1) { - $9 = HEAP32[$p>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - break; - } - $11 = HEAP32[$p>>2]|0; - $12 = (($11) + 8|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$db>>2]|0; - $15 = (($14) + 16|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + ($13<<4)|0); - HEAP32[$pDb>>2] = $17; - $18 = HEAP32[$p>>2]|0; - $19 = (($18) + 12|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$memId>>2] = $20; - $21 = HEAP32[$0>>2]|0; - $22 = (_sqlite3GetTempReg($21)|0); - HEAP32[$iRec>>2] = $22; - $23 = HEAP32[$0>>2]|0; - $24 = HEAP32[$p>>2]|0; - $25 = (($24) + 8|0); - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$pDb>>2]|0; - $28 = (($27) + 12|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + 72|0); - $31 = HEAP32[$30>>2]|0; - _sqlite3OpenTable($23,0,$26,$31,53); - $32 = HEAP32[$v>>2]|0; - $33 = HEAP32[$memId>>2]|0; - $34 = (($33) + 1)|0; - $35 = (_sqlite3VdbeAddOp1($32,77,$34)|0); - HEAP32[$j1>>2] = $35; - $36 = HEAP32[$v>>2]|0; - $37 = HEAP32[$memId>>2]|0; - $38 = (($37) + 1)|0; - (_sqlite3VdbeAddOp2($36,69,0,$38)|0); - $39 = HEAP32[$v>>2]|0; - $40 = HEAP32[$j1>>2]|0; - _sqlite3VdbeJumpHere($39,$40); - $41 = HEAP32[$v>>2]|0; - $42 = HEAP32[$memId>>2]|0; - $43 = (($42) - 1)|0; - $44 = HEAP32[$iRec>>2]|0; - (_sqlite3VdbeAddOp3($41,48,$43,2,$44)|0); - $45 = HEAP32[$v>>2]|0; - $46 = HEAP32[$iRec>>2]|0; - $47 = HEAP32[$memId>>2]|0; - $48 = (($47) + 1)|0; - (_sqlite3VdbeAddOp3($45,70,0,$46,$48)|0); - $49 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($49,8); - $50 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp0($50,58)|0); - $51 = HEAP32[$0>>2]|0; - $52 = HEAP32[$iRec>>2]|0; - _sqlite3ReleaseTempReg($51,$52); - $53 = HEAP32[$p>>2]|0; - $54 = HEAP32[$53>>2]|0; - HEAP32[$p>>2] = $54; - } - STACKTOP = sp;return; -} -function _fkChildIsModified($pTab,$p,$aChange,$bChngRowid) { - $pTab = $pTab|0; - $p = $p|0; - $aChange = $aChange|0; - $bChngRowid = $bChngRowid|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $iChildKey = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $i = sp + 4|0; - $iChildKey = sp; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $p; - HEAP32[$3>>2] = $aChange; - HEAP32[$4>>2] = $bChngRowid; - HEAP32[$i>>2] = 0; - while(1) { - $5 = HEAP32[$i>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = (($6) + 20|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($5|0)<($8|0); - if (!($9)) { - label = 9; - break; - } - $10 = HEAP32[$i>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 36|0); - $13 = (($12) + ($10<<3)|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$iChildKey>>2] = $14; - $15 = HEAP32[$iChildKey>>2]|0; - $16 = HEAP32[$3>>2]|0; - $17 = (($16) + ($15<<2)|0); - $18 = HEAP32[$17>>2]|0; - $19 = ($18|0)>=(0); - if ($19) { - label = 4; - break; - } - $20 = HEAP32[$iChildKey>>2]|0; - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 36|0); - $23 = HEAP16[$22>>1]|0; - $24 = $23 << 16 >> 16; - $25 = ($20|0)==($24|0); - if ($25) { - $26 = HEAP32[$4>>2]|0; - $27 = ($26|0)!=(0); - if ($27) { - label = 7; - break; - } - } - $28 = HEAP32[$i>>2]|0; - $29 = (($28) + 1)|0; - HEAP32[$i>>2] = $29; - } - if ((label|0) == 4) { - HEAP32[$0>>2] = 1; - $30 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($30|0); - } - else if ((label|0) == 7) { - HEAP32[$0>>2] = 1; - $30 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($30|0); - } - else if ((label|0) == 9) { - HEAP32[$0>>2] = 0; - $30 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($30|0); - } - return 0|0; -} -function _fkLookupParent($pParse,$iDb,$pTab,$pIdx,$pFKey,$aiCol,$regData,$nIncr,$isIgnore) { - $pParse = $pParse|0; - $iDb = $iDb|0; - $pTab = $pTab|0; - $pIdx = $pIdx|0; - $pFKey = $pFKey|0; - $aiCol = $aiCol|0; - $regData = $regData|0; - $nIncr = $nIncr|0; - $isIgnore = $isIgnore|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; - var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; - var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; - var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; - var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iChild = 0, $iCur = 0, $iJump = 0, $iMustBeInt = 0, $iOk = 0, $iParent = 0; - var $iReg = 0, $nCol = 0, $regRec = 0, $regTemp = 0, $regTemp1 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $0 = sp + 84|0; - $1 = sp + 80|0; - $2 = sp + 76|0; - $3 = sp + 72|0; - $4 = sp + 68|0; - $5 = sp + 64|0; - $6 = sp + 60|0; - $7 = sp + 56|0; - $8 = sp + 52|0; - $i = sp + 48|0; - $v = sp + 44|0; - $iCur = sp + 40|0; - $iOk = sp + 36|0; - $iReg = sp + 32|0; - $iMustBeInt = sp + 28|0; - $regTemp = sp + 24|0; - $nCol = sp + 20|0; - $regTemp1 = sp + 16|0; - $regRec = sp + 12|0; - $iJump = sp + 8|0; - $iChild = sp + 4|0; - $iParent = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iDb; - HEAP32[$2>>2] = $pTab; - HEAP32[$3>>2] = $pIdx; - HEAP32[$4>>2] = $pFKey; - HEAP32[$5>>2] = $aiCol; - HEAP32[$6>>2] = $regData; - HEAP32[$7>>2] = $nIncr; - HEAP32[$8>>2] = $isIgnore; - $9 = HEAP32[$0>>2]|0; - $10 = (_sqlite3GetVdbe($9)|0); - HEAP32[$v>>2] = $10; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 68|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) - 1)|0; - HEAP32[$iCur>>2] = $14; - $15 = HEAP32[$v>>2]|0; - $16 = (_sqlite3VdbeMakeLabel($15)|0); - HEAP32[$iOk>>2] = $16; - $17 = HEAP32[$7>>2]|0; - $18 = ($17|0)<(0); - if ($18) { - $19 = HEAP32[$v>>2]|0; - $20 = HEAP32[$4>>2]|0; - $21 = (($20) + 24|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = HEAP32[$iOk>>2]|0; - (_sqlite3VdbeAddOp2($19,131,$23,$24)|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $25 = HEAP32[$i>>2]|0; - $26 = HEAP32[$4>>2]|0; - $27 = (($26) + 20|0); - $28 = HEAP32[$27>>2]|0; - $29 = ($25|0)<($28|0); - if (!($29)) { - break; - } - $30 = HEAP32[$i>>2]|0; - $31 = HEAP32[$5>>2]|0; - $32 = (($31) + ($30<<2)|0); - $33 = HEAP32[$32>>2]|0; - $34 = HEAP32[$6>>2]|0; - $35 = (($33) + ($34))|0; - $36 = (($35) + 1)|0; - HEAP32[$iReg>>2] = $36; - $37 = HEAP32[$v>>2]|0; - $38 = HEAP32[$iReg>>2]|0; - $39 = HEAP32[$iOk>>2]|0; - (_sqlite3VdbeAddOp2($37,76,$38,$39)|0); - $40 = HEAP32[$i>>2]|0; - $41 = (($40) + 1)|0; - HEAP32[$i>>2] = $41; - } - $42 = HEAP32[$8>>2]|0; - $43 = ($42|0)==(0); - do { - if ($43) { - $44 = HEAP32[$3>>2]|0; - $45 = ($44|0)==(0|0); - if ($45) { - $46 = HEAP32[$0>>2]|0; - $47 = (_sqlite3GetTempReg($46)|0); - HEAP32[$regTemp>>2] = $47; - $48 = HEAP32[$v>>2]|0; - $49 = HEAP32[$5>>2]|0; - $50 = HEAP32[$49>>2]|0; - $51 = (($50) + 1)|0; - $52 = HEAP32[$6>>2]|0; - $53 = (($51) + ($52))|0; - $54 = HEAP32[$regTemp>>2]|0; - (_sqlite3VdbeAddOp2($48,34,$53,$54)|0); - $55 = HEAP32[$v>>2]|0; - $56 = HEAP32[$regTemp>>2]|0; - $57 = (_sqlite3VdbeAddOp2($55,38,$56,0)|0); - HEAP32[$iMustBeInt>>2] = $57; - $58 = HEAP32[$2>>2]|0; - $59 = HEAP32[$4>>2]|0; - $60 = HEAP32[$59>>2]|0; - $61 = ($58|0)==($60|0); - if ($61) { - $62 = HEAP32[$7>>2]|0; - $63 = ($62|0)==(1); - if ($63) { - $64 = HEAP32[$v>>2]|0; - $65 = HEAP32[$6>>2]|0; - $66 = HEAP32[$iOk>>2]|0; - $67 = HEAP32[$regTemp>>2]|0; - (_sqlite3VdbeAddOp3($64,79,$65,$66,$67)|0); - $68 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($68,-120); - } - } - $69 = HEAP32[$0>>2]|0; - $70 = HEAP32[$iCur>>2]|0; - $71 = HEAP32[$1>>2]|0; - $72 = HEAP32[$2>>2]|0; - _sqlite3OpenTable($69,$70,$71,$72,52); - $73 = HEAP32[$v>>2]|0; - $74 = HEAP32[$iCur>>2]|0; - $75 = HEAP32[$regTemp>>2]|0; - (_sqlite3VdbeAddOp3($73,67,$74,0,$75)|0); - $76 = HEAP32[$v>>2]|0; - $77 = HEAP32[$iOk>>2]|0; - (_sqlite3VdbeAddOp2($76,16,0,$77)|0); - $78 = HEAP32[$v>>2]|0; - $79 = HEAP32[$v>>2]|0; - $80 = (_sqlite3VdbeCurrentAddr($79)|0); - $81 = (($80) - 2)|0; - _sqlite3VdbeJumpHere($78,$81); - $82 = HEAP32[$v>>2]|0; - $83 = HEAP32[$iMustBeInt>>2]|0; - _sqlite3VdbeJumpHere($82,$83); - $84 = HEAP32[$0>>2]|0; - $85 = HEAP32[$regTemp>>2]|0; - _sqlite3ReleaseTempReg($84,$85); - break; - } - $86 = HEAP32[$4>>2]|0; - $87 = (($86) + 20|0); - $88 = HEAP32[$87>>2]|0; - HEAP32[$nCol>>2] = $88; - $89 = HEAP32[$0>>2]|0; - $90 = HEAP32[$nCol>>2]|0; - $91 = (_sqlite3GetTempRange($89,$90)|0); - HEAP32[$regTemp1>>2] = $91; - $92 = HEAP32[$0>>2]|0; - $93 = (_sqlite3GetTempReg($92)|0); - HEAP32[$regRec>>2] = $93; - $94 = HEAP32[$v>>2]|0; - $95 = HEAP32[$iCur>>2]|0; - $96 = HEAP32[$3>>2]|0; - $97 = (($96) + 44|0); - $98 = HEAP32[$97>>2]|0; - $99 = HEAP32[$1>>2]|0; - (_sqlite3VdbeAddOp3($94,52,$95,$98,$99)|0); - $100 = HEAP32[$0>>2]|0; - $101 = HEAP32[$3>>2]|0; - _sqlite3VdbeSetP4KeyInfo($100,$101); - HEAP32[$i>>2] = 0; - while(1) { - $102 = HEAP32[$i>>2]|0; - $103 = HEAP32[$nCol>>2]|0; - $104 = ($102|0)<($103|0); - if (!($104)) { - break; - } - $105 = HEAP32[$v>>2]|0; - $106 = HEAP32[$i>>2]|0; - $107 = HEAP32[$5>>2]|0; - $108 = (($107) + ($106<<2)|0); - $109 = HEAP32[$108>>2]|0; - $110 = (($109) + 1)|0; - $111 = HEAP32[$6>>2]|0; - $112 = (($110) + ($111))|0; - $113 = HEAP32[$regTemp1>>2]|0; - $114 = HEAP32[$i>>2]|0; - $115 = (($113) + ($114))|0; - (_sqlite3VdbeAddOp2($105,33,$112,$115)|0); - $116 = HEAP32[$i>>2]|0; - $117 = (($116) + 1)|0; - HEAP32[$i>>2] = $117; - } - $118 = HEAP32[$2>>2]|0; - $119 = HEAP32[$4>>2]|0; - $120 = HEAP32[$119>>2]|0; - $121 = ($118|0)==($120|0); - if ($121) { - $122 = HEAP32[$7>>2]|0; - $123 = ($122|0)==(1); - if ($123) { - $124 = HEAP32[$v>>2]|0; - $125 = (_sqlite3VdbeCurrentAddr($124)|0); - $126 = HEAP32[$nCol>>2]|0; - $127 = (($125) + ($126))|0; - $128 = (($127) + 1)|0; - HEAP32[$iJump>>2] = $128; - HEAP32[$i>>2] = 0; - while(1) { - $129 = HEAP32[$i>>2]|0; - $130 = HEAP32[$nCol>>2]|0; - $131 = ($129|0)<($130|0); - if (!($131)) { - break; - } - $132 = HEAP32[$i>>2]|0; - $133 = HEAP32[$5>>2]|0; - $134 = (($133) + ($132<<2)|0); - $135 = HEAP32[$134>>2]|0; - $136 = (($135) + 1)|0; - $137 = HEAP32[$6>>2]|0; - $138 = (($136) + ($137))|0; - HEAP32[$iChild>>2] = $138; - $139 = HEAP32[$i>>2]|0; - $140 = HEAP32[$3>>2]|0; - $141 = (($140) + 4|0); - $142 = HEAP32[$141>>2]|0; - $143 = (($142) + ($139<<1)|0); - $144 = HEAP16[$143>>1]|0; - $145 = $144 << 16 >> 16; - $146 = (($145) + 1)|0; - $147 = HEAP32[$6>>2]|0; - $148 = (($146) + ($147))|0; - HEAP32[$iParent>>2] = $148; - $149 = HEAP32[$i>>2]|0; - $150 = HEAP32[$3>>2]|0; - $151 = (($150) + 4|0); - $152 = HEAP32[$151>>2]|0; - $153 = (($152) + ($149<<1)|0); - $154 = HEAP16[$153>>1]|0; - $155 = $154 << 16 >> 16; - $156 = HEAP32[$2>>2]|0; - $157 = (($156) + 36|0); - $158 = HEAP16[$157>>1]|0; - $159 = $158 << 16 >> 16; - $160 = ($155|0)==($159|0); - if ($160) { - $161 = HEAP32[$6>>2]|0; - HEAP32[$iParent>>2] = $161; - } - $162 = HEAP32[$v>>2]|0; - $163 = HEAP32[$iChild>>2]|0; - $164 = HEAP32[$iJump>>2]|0; - $165 = HEAP32[$iParent>>2]|0; - (_sqlite3VdbeAddOp3($162,78,$163,$164,$165)|0); - $166 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($166,8); - $167 = HEAP32[$i>>2]|0; - $168 = (($167) + 1)|0; - HEAP32[$i>>2] = $168; - } - $169 = HEAP32[$v>>2]|0; - $170 = HEAP32[$iOk>>2]|0; - (_sqlite3VdbeAddOp2($169,16,0,$170)|0); - } - } - $171 = HEAP32[$v>>2]|0; - $172 = HEAP32[$regTemp1>>2]|0; - $173 = HEAP32[$nCol>>2]|0; - $174 = HEAP32[$regRec>>2]|0; - $175 = HEAP32[$v>>2]|0; - $176 = HEAP32[$3>>2]|0; - $177 = (_sqlite3IndexAffinityStr($175,$176)|0); - $178 = HEAP32[$nCol>>2]|0; - (_sqlite3VdbeAddOp4($171,48,$172,$173,$174,$177,$178)|0); - $179 = HEAP32[$v>>2]|0; - $180 = HEAP32[$iCur>>2]|0; - $181 = HEAP32[$iOk>>2]|0; - $182 = HEAP32[$regRec>>2]|0; - (_sqlite3VdbeAddOp4Int($179,66,$180,$181,$182,0)|0); - $183 = HEAP32[$0>>2]|0; - $184 = HEAP32[$regRec>>2]|0; - _sqlite3ReleaseTempReg($183,$184); - $185 = HEAP32[$0>>2]|0; - $186 = HEAP32[$regTemp1>>2]|0; - $187 = HEAP32[$nCol>>2]|0; - _sqlite3ReleaseTempRange($185,$186,$187); - } - } while(0); - $188 = HEAP32[$4>>2]|0; - $189 = (($188) + 24|0); - $190 = HEAP8[$189>>0]|0; - $191 = ($190<<24>>24)!=(0); - if (!($191)) { - $192 = HEAP32[$0>>2]|0; - $193 = HEAP32[$192>>2]|0; - $194 = (($193) + 24|0); - $195 = HEAP32[$194>>2]|0; - $196 = $195 & 16777216; - $197 = ($196|0)!=(0); - if (!($197)) { - $198 = HEAP32[$0>>2]|0; - $199 = (($198) + 408|0); - $200 = HEAP32[$199>>2]|0; - $201 = ($200|0)!=(0|0); - if (!($201)) { - $202 = HEAP32[$0>>2]|0; - $203 = (($202) + 20|0); - $204 = HEAP8[$203>>0]|0; - $205 = ($204<<24>>24)!=(0); - if (!($205)) { - $206 = HEAP32[$0>>2]|0; - _sqlite3HaltConstraint($206,787,2,0,-2,4); - $229 = HEAP32[$v>>2]|0; - $230 = HEAP32[$iOk>>2]|0; - _sqlite3VdbeResolveLabel($229,$230); - $231 = HEAP32[$v>>2]|0; - $232 = HEAP32[$iCur>>2]|0; - (_sqlite3VdbeAddOp1($231,58,$232)|0); - STACKTOP = sp;return; - } - } - } - } - $207 = HEAP32[$7>>2]|0; - $208 = ($207|0)>(0); - if ($208) { - $209 = HEAP32[$4>>2]|0; - $210 = (($209) + 24|0); - $211 = HEAP8[$210>>0]|0; - $212 = $211&255; - $213 = ($212|0)==(0); - if ($213) { - $214 = HEAP32[$0>>2]|0; - $215 = (($214) + 408|0); - $216 = HEAP32[$215>>2]|0; - $217 = ($216|0)!=(0|0); - $218 = HEAP32[$0>>2]|0; - if ($217) { - $219 = (($218) + 408|0); - $220 = HEAP32[$219>>2]|0; - $222 = $220; - } else { - $222 = $218; - } - $221 = (($222) + 21|0); - HEAP8[$221>>0] = 1; - } - } - $223 = HEAP32[$v>>2]|0; - $224 = HEAP32[$4>>2]|0; - $225 = (($224) + 24|0); - $226 = HEAP8[$225>>0]|0; - $227 = $226&255; - $228 = HEAP32[$7>>2]|0; - (_sqlite3VdbeAddOp2($223,130,$227,$228)|0); - $229 = HEAP32[$v>>2]|0; - $230 = HEAP32[$iOk>>2]|0; - _sqlite3VdbeResolveLabel($229,$230); - $231 = HEAP32[$v>>2]|0; - $232 = HEAP32[$iCur>>2]|0; - (_sqlite3VdbeAddOp1($231,58,$232)|0); - STACKTOP = sp;return; -} -function _fkParentIsModified($pTab,$p,$aChange,$bChngRowid) { - $pTab = $pTab|0; - $p = $p|0; - $aChange = $aChange|0; - $bChngRowid = $bChngRowid|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $iKey = 0, $pCol = 0; - var $zKey = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $4 = sp + 16|0; - $i = sp + 12|0; - $zKey = sp + 8|0; - $iKey = sp + 4|0; - $pCol = sp; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $p; - HEAP32[$3>>2] = $aChange; - HEAP32[$4>>2] = $bChngRowid; - HEAP32[$i>>2] = 0; - L1: while(1) { - $5 = HEAP32[$i>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = (($6) + 20|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($5|0)<($8|0); - if (!($9)) { - label = 15; - break; - } - $10 = HEAP32[$i>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 36|0); - $13 = (($12) + ($10<<3)|0); - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$zKey>>2] = $15; - HEAP32[$iKey>>2] = 0; - while(1) { - $16 = HEAP32[$iKey>>2]|0; - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 38|0); - $19 = HEAP16[$18>>1]|0; - $20 = $19 << 16 >> 16; - $21 = ($16|0)<($20|0); - if (!($21)) { - break; - } - $22 = HEAP32[$iKey>>2]|0; - $23 = HEAP32[$3>>2]|0; - $24 = (($23) + ($22<<2)|0); - $25 = HEAP32[$24>>2]|0; - $26 = ($25|0)>=(0); - if ($26) { - label = 8; - } else { - $27 = HEAP32[$iKey>>2]|0; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 36|0); - $30 = HEAP16[$29>>1]|0; - $31 = $30 << 16 >> 16; - $32 = ($27|0)==($31|0); - if ($32) { - $33 = HEAP32[$4>>2]|0; - $34 = ($33|0)!=(0); - if ($34) { - label = 8; - } - } - } - do { - if ((label|0) == 8) { - label = 0; - $35 = HEAP32[$iKey>>2]|0; - $36 = HEAP32[$1>>2]|0; - $37 = (($36) + 4|0); - $38 = HEAP32[$37>>2]|0; - $39 = (($38) + (($35*24)|0)|0); - HEAP32[$pCol>>2] = $39; - $40 = HEAP32[$zKey>>2]|0; - $41 = ($40|0)!=(0|0); - $42 = HEAP32[$pCol>>2]|0; - if ($41) { - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$zKey>>2]|0; - $45 = (_sqlite3_stricmp($43,$44)|0); - $46 = (0)==($45|0); - if ($46) { - label = 10; - break L1; - } else { - break; - } - } else { - $47 = (($42) + 23|0); - $48 = HEAP8[$47>>0]|0; - $49 = $48&255; - $50 = $49 & 1; - $51 = ($50|0)!=(0); - if ($51) { - label = 12; - break L1; - } else { - break; - } - } - } - } while(0); - $52 = HEAP32[$iKey>>2]|0; - $53 = (($52) + 1)|0; - HEAP32[$iKey>>2] = $53; - } - $54 = HEAP32[$i>>2]|0; - $55 = (($54) + 1)|0; - HEAP32[$i>>2] = $55; - } - if ((label|0) == 10) { - HEAP32[$0>>2] = 1; - $56 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($56|0); - } - else if ((label|0) == 12) { - HEAP32[$0>>2] = 1; - $56 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($56|0); - } - else if ((label|0) == 15) { - HEAP32[$0>>2] = 0; - $56 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($56|0); - } - return 0|0; -} -function _fkScanChildren($pParse,$pSrc,$pTab,$pIdx,$pFKey,$aiCol,$regData,$nIncr) { - $pParse = $pParse|0; - $pSrc = $pSrc|0; - $pTab = $pTab|0; - $pIdx = $pIdx|0; - $pFKey = $pFKey|0; - $aiCol = $aiCol|0; - $regData = $regData|0; - $nIncr = $nIncr|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; - var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; - var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; - var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; - var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; - var $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0, $iCol = 0, $iCol4 = 0, $iFkIfZero = 0, $pAll = 0, $pEq = 0, $pEq3 = 0, $pLeft = 0, $pLeft1 = 0, $pNe = 0, $pPk = 0, $pRight = 0, $pRight2 = 0, $pWInfo = 0, $pWhere = 0, $sNameContext = 0; - var $v = 0, $zCol = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 144|0; - $0 = sp + 128|0; - $1 = sp + 124|0; - $2 = sp + 120|0; - $3 = sp + 116|0; - $4 = sp + 112|0; - $5 = sp + 108|0; - $6 = sp + 104|0; - $7 = sp + 100|0; - $db = sp + 96|0; - $i = sp + 92|0; - $pWhere = sp + 88|0; - $sNameContext = sp + 56|0; - $pWInfo = sp + 48|0; - $iFkIfZero = sp + 44|0; - $v = sp + 40|0; - $pLeft = sp + 36|0; - $pRight = sp + 32|0; - $pEq = sp + 28|0; - $iCol = sp + 134|0; - $zCol = sp + 24|0; - $pNe = sp + 20|0; - $pLeft1 = sp + 16|0; - $pRight2 = sp + 12|0; - $pEq3 = sp + 8|0; - $pAll = sp + 4|0; - $pPk = sp; - $iCol4 = sp + 132|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pSrc; - HEAP32[$2>>2] = $pTab; - HEAP32[$3>>2] = $pIdx; - HEAP32[$4>>2] = $pFKey; - HEAP32[$5>>2] = $aiCol; - HEAP32[$6>>2] = $regData; - HEAP32[$7>>2] = $nIncr; - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$8>>2]|0; - HEAP32[$db>>2] = $9; - HEAP32[$pWhere>>2] = 0; - HEAP32[$iFkIfZero>>2] = 0; - $10 = HEAP32[$0>>2]|0; - $11 = (_sqlite3GetVdbe($10)|0); - HEAP32[$v>>2] = $11; - $12 = HEAP32[$7>>2]|0; - $13 = ($12|0)<(0); - if ($13) { - $14 = HEAP32[$v>>2]|0; - $15 = HEAP32[$4>>2]|0; - $16 = (($15) + 24|0); - $17 = HEAP8[$16>>0]|0; - $18 = $17&255; - $19 = (_sqlite3VdbeAddOp2($14,131,$18,0)|0); - HEAP32[$iFkIfZero>>2] = $19; - } - HEAP32[$i>>2] = 0; - while(1) { - $20 = HEAP32[$i>>2]|0; - $21 = HEAP32[$4>>2]|0; - $22 = (($21) + 20|0); - $23 = HEAP32[$22>>2]|0; - $24 = ($20|0)<($23|0); - if (!($24)) { - break; - } - $25 = HEAP32[$3>>2]|0; - $26 = ($25|0)!=(0|0); - if ($26) { - $27 = HEAP32[$i>>2]|0; - $28 = HEAP32[$3>>2]|0; - $29 = (($28) + 4|0); - $30 = HEAP32[$29>>2]|0; - $31 = (($30) + ($27<<1)|0); - $32 = HEAP16[$31>>1]|0; - $33 = $32 << 16 >> 16; - $35 = $33; - } else { - $35 = -1; - } - $34 = $35&65535; - HEAP16[$iCol>>1] = $34; - $36 = HEAP32[$0>>2]|0; - $37 = HEAP32[$2>>2]|0; - $38 = HEAP32[$6>>2]|0; - $39 = HEAP16[$iCol>>1]|0; - $40 = (_exprTableRegister($36,$37,$38,$39)|0); - HEAP32[$pLeft>>2] = $40; - $41 = HEAP32[$5>>2]|0; - $42 = ($41|0)!=(0|0); - if ($42) { - $43 = HEAP32[$i>>2]|0; - $44 = HEAP32[$5>>2]|0; - $45 = (($44) + ($43<<2)|0); - $46 = HEAP32[$45>>2]|0; - $51 = $46; - } else { - $47 = HEAP32[$4>>2]|0; - $48 = (($47) + 36|0); - $49 = HEAP32[$48>>2]|0; - $51 = $49; - } - $50 = $51&65535; - HEAP16[$iCol>>1] = $50; - $52 = HEAP16[$iCol>>1]|0; - $53 = $52 << 16 >> 16; - $54 = HEAP32[$4>>2]|0; - $55 = HEAP32[$54>>2]|0; - $56 = (($55) + 4|0); - $57 = HEAP32[$56>>2]|0; - $58 = (($57) + (($53*24)|0)|0); - $59 = HEAP32[$58>>2]|0; - HEAP32[$zCol>>2] = $59; - $60 = HEAP32[$db>>2]|0; - $61 = HEAP32[$zCol>>2]|0; - $62 = (_sqlite3Expr($60,27,$61)|0); - HEAP32[$pRight>>2] = $62; - $63 = HEAP32[$0>>2]|0; - $64 = HEAP32[$pLeft>>2]|0; - $65 = HEAP32[$pRight>>2]|0; - $66 = (_sqlite3PExpr($63,79,$64,$65,0)|0); - HEAP32[$pEq>>2] = $66; - $67 = HEAP32[$db>>2]|0; - $68 = HEAP32[$pWhere>>2]|0; - $69 = HEAP32[$pEq>>2]|0; - $70 = (_sqlite3ExprAnd($67,$68,$69)|0); - HEAP32[$pWhere>>2] = $70; - $71 = HEAP32[$i>>2]|0; - $72 = (($71) + 1)|0; - HEAP32[$i>>2] = $72; - } - $73 = HEAP32[$2>>2]|0; - $74 = HEAP32[$4>>2]|0; - $75 = HEAP32[$74>>2]|0; - $76 = ($73|0)==($75|0); - if ($76) { - $77 = HEAP32[$7>>2]|0; - $78 = ($77|0)>(0); - if ($78) { - $79 = HEAP32[$2>>2]|0; - $80 = (($79) + 44|0); - $81 = HEAP8[$80>>0]|0; - $82 = $81&255; - $83 = $82 & 32; - $84 = ($83|0)==(0); - if ($84) { - $85 = HEAP32[$0>>2]|0; - $86 = HEAP32[$2>>2]|0; - $87 = HEAP32[$6>>2]|0; - $88 = (_exprTableRegister($85,$86,$87,-1)|0); - HEAP32[$pLeft1>>2] = $88; - $89 = HEAP32[$db>>2]|0; - $90 = HEAP32[$2>>2]|0; - $91 = HEAP32[$1>>2]|0; - $92 = (($91) + 8|0); - $93 = (($92) + 40|0); - $94 = HEAP32[$93>>2]|0; - $95 = (_exprTableColumn($89,$90,$94,-1)|0); - HEAP32[$pRight2>>2] = $95; - $96 = HEAP32[$0>>2]|0; - $97 = HEAP32[$pLeft1>>2]|0; - $98 = HEAP32[$pRight2>>2]|0; - $99 = (_sqlite3PExpr($96,78,$97,$98,0)|0); - HEAP32[$pNe>>2] = $99; - } else { - HEAP32[$pAll>>2] = 0; - $100 = HEAP32[$2>>2]|0; - $101 = (_sqlite3PrimaryKeyIndex($100)|0); - HEAP32[$pPk>>2] = $101; - HEAP32[$i>>2] = 0; - while(1) { - $102 = HEAP32[$i>>2]|0; - $103 = HEAP32[$pPk>>2]|0; - $104 = (($103) + 50|0); - $105 = HEAP16[$104>>1]|0; - $106 = $105&65535; - $107 = ($102|0)<($106|0); - if (!($107)) { - break; - } - $108 = HEAP32[$i>>2]|0; - $109 = HEAP32[$3>>2]|0; - $110 = (($109) + 4|0); - $111 = HEAP32[$110>>2]|0; - $112 = (($111) + ($108<<1)|0); - $113 = HEAP16[$112>>1]|0; - HEAP16[$iCol4>>1] = $113; - $114 = HEAP32[$0>>2]|0; - $115 = HEAP32[$2>>2]|0; - $116 = HEAP32[$6>>2]|0; - $117 = HEAP16[$iCol4>>1]|0; - $118 = (_exprTableRegister($114,$115,$116,$117)|0); - HEAP32[$pLeft1>>2] = $118; - $119 = HEAP32[$db>>2]|0; - $120 = HEAP32[$2>>2]|0; - $121 = HEAP32[$1>>2]|0; - $122 = (($121) + 8|0); - $123 = (($122) + 40|0); - $124 = HEAP32[$123>>2]|0; - $125 = HEAP16[$iCol4>>1]|0; - $126 = (_exprTableColumn($119,$120,$124,$125)|0); - HEAP32[$pRight2>>2] = $126; - $127 = HEAP32[$0>>2]|0; - $128 = HEAP32[$pLeft1>>2]|0; - $129 = HEAP32[$pRight2>>2]|0; - $130 = (_sqlite3PExpr($127,79,$128,$129,0)|0); - HEAP32[$pEq3>>2] = $130; - $131 = HEAP32[$db>>2]|0; - $132 = HEAP32[$pAll>>2]|0; - $133 = HEAP32[$pEq3>>2]|0; - $134 = (_sqlite3ExprAnd($131,$132,$133)|0); - HEAP32[$pAll>>2] = $134; - $135 = HEAP32[$i>>2]|0; - $136 = (($135) + 1)|0; - HEAP32[$i>>2] = $136; - } - $137 = HEAP32[$0>>2]|0; - $138 = HEAP32[$pAll>>2]|0; - $139 = (_sqlite3PExpr($137,19,$138,0,0)|0); - HEAP32[$pNe>>2] = $139; - } - $140 = HEAP32[$db>>2]|0; - $141 = HEAP32[$pWhere>>2]|0; - $142 = HEAP32[$pNe>>2]|0; - $143 = (_sqlite3ExprAnd($140,$141,$142)|0); - HEAP32[$pWhere>>2] = $143; - } - } - ;HEAP32[$sNameContext+0>>2]=0|0;HEAP32[$sNameContext+4>>2]=0|0;HEAP32[$sNameContext+8>>2]=0|0;HEAP32[$sNameContext+12>>2]=0|0;HEAP32[$sNameContext+16>>2]=0|0;HEAP32[$sNameContext+20>>2]=0|0;HEAP32[$sNameContext+24>>2]=0|0;HEAP32[$sNameContext+28>>2]=0|0; - $144 = HEAP32[$1>>2]|0; - $145 = (($sNameContext) + 4|0); - HEAP32[$145>>2] = $144; - $146 = HEAP32[$0>>2]|0; - HEAP32[$sNameContext>>2] = $146; - $147 = HEAP32[$pWhere>>2]|0; - (_sqlite3ResolveExprNames($sNameContext,$147)|0); - $148 = HEAP32[$0>>2]|0; - $149 = HEAP32[$1>>2]|0; - $150 = HEAP32[$pWhere>>2]|0; - $151 = (_sqlite3WhereBegin($148,$149,$150,0,0,0,0)|0); - HEAP32[$pWInfo>>2] = $151; - $152 = HEAP32[$7>>2]|0; - $153 = ($152|0)>(0); - if ($153) { - $154 = HEAP32[$4>>2]|0; - $155 = (($154) + 24|0); - $156 = HEAP8[$155>>0]|0; - $157 = $156&255; - $158 = ($157|0)==(0); - if ($158) { - $159 = HEAP32[$0>>2]|0; - $160 = (($159) + 408|0); - $161 = HEAP32[$160>>2]|0; - $162 = ($161|0)!=(0|0); - $163 = HEAP32[$0>>2]|0; - if ($162) { - $164 = (($163) + 408|0); - $165 = HEAP32[$164>>2]|0; - $167 = $165; - } else { - $167 = $163; - } - $166 = (($167) + 21|0); - HEAP8[$166>>0] = 1; - } - } - $168 = HEAP32[$v>>2]|0; - $169 = HEAP32[$4>>2]|0; - $170 = (($169) + 24|0); - $171 = HEAP8[$170>>0]|0; - $172 = $171&255; - $173 = HEAP32[$7>>2]|0; - (_sqlite3VdbeAddOp2($168,130,$172,$173)|0); - $174 = HEAP32[$pWInfo>>2]|0; - $175 = ($174|0)!=(0|0); - if ($175) { - $176 = HEAP32[$pWInfo>>2]|0; - _sqlite3WhereEnd($176); - } - $177 = HEAP32[$db>>2]|0; - $178 = HEAP32[$pWhere>>2]|0; - _sqlite3ExprDelete($177,$178); - $179 = HEAP32[$iFkIfZero>>2]|0; - $180 = ($179|0)!=(0); - if (!($180)) { - STACKTOP = sp;return; - } - $181 = HEAP32[$v>>2]|0; - $182 = HEAP32[$iFkIfZero>>2]|0; - _sqlite3VdbeJumpHere($181,$182); - STACKTOP = sp;return; -} -function _exprTableRegister($pParse,$pTab,$regBase,$iCol) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $regBase = $regBase|0; - $iCol = $iCol|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $pCol = 0, $pExpr = 0; - var $zColl = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 28|0; - $pExpr = sp + 12|0; - $pCol = sp + 8|0; - $zColl = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $regBase; - HEAP16[$3>>1] = $iCol; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$db>>2]|0; - $7 = (_sqlite3Expr($6,159,0)|0); - HEAP32[$pExpr>>2] = $7; - $8 = HEAP32[$pExpr>>2]|0; - $9 = ($8|0)!=(0|0); - if (!($9)) { - $56 = HEAP32[$pExpr>>2]|0; - STACKTOP = sp;return ($56|0); - } - $10 = HEAP16[$3>>1]|0; - $11 = $10 << 16 >> 16; - $12 = ($11|0)>=(0); - if ($12) { - $13 = HEAP16[$3>>1]|0; - $14 = $13 << 16 >> 16; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 36|0); - $17 = HEAP16[$16>>1]|0; - $18 = $17 << 16 >> 16; - $19 = ($14|0)!=($18|0); - if ($19) { - $20 = HEAP16[$3>>1]|0; - $21 = $20 << 16 >> 16; - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 4|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + (($21*24)|0)|0); - HEAP32[$pCol>>2] = $25; - $26 = HEAP32[$2>>2]|0; - $27 = HEAP16[$3>>1]|0; - $28 = $27 << 16 >> 16; - $29 = (($26) + ($28))|0; - $30 = (($29) + 1)|0; - $31 = HEAP32[$pExpr>>2]|0; - $32 = (($31) + 28|0); - HEAP32[$32>>2] = $30; - $33 = HEAP32[$pCol>>2]|0; - $34 = (($33) + 21|0); - $35 = HEAP8[$34>>0]|0; - $36 = HEAP32[$pExpr>>2]|0; - $37 = (($36) + 1|0); - HEAP8[$37>>0] = $35; - $38 = HEAP32[$pCol>>2]|0; - $39 = (($38) + 16|0); - $40 = HEAP32[$39>>2]|0; - HEAP32[$zColl>>2] = $40; - $41 = HEAP32[$zColl>>2]|0; - $42 = ($41|0)==(0|0); - if ($42) { - $43 = HEAP32[$db>>2]|0; - $44 = (($43) + 8|0); - $45 = HEAP32[$44>>2]|0; - $46 = HEAP32[$45>>2]|0; - HEAP32[$zColl>>2] = $46; - } - $47 = HEAP32[$0>>2]|0; - $48 = HEAP32[$pExpr>>2]|0; - $49 = HEAP32[$zColl>>2]|0; - $50 = (_sqlite3ExprAddCollateString($47,$48,$49)|0); - HEAP32[$pExpr>>2] = $50; - $56 = HEAP32[$pExpr>>2]|0; - STACKTOP = sp;return ($56|0); - } - } - $51 = HEAP32[$2>>2]|0; - $52 = HEAP32[$pExpr>>2]|0; - $53 = (($52) + 28|0); - HEAP32[$53>>2] = $51; - $54 = HEAP32[$pExpr>>2]|0; - $55 = (($54) + 1|0); - HEAP8[$55>>0] = 100; - $56 = HEAP32[$pExpr>>2]|0; - STACKTOP = sp;return ($56|0); -} -function _exprTableColumn($db,$pTab,$iCursor,$iCol) { - $db = $db|0; - $pTab = $pTab|0; - $iCursor = $iCursor|0; - $iCol = $iCol|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pExpr = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp + 16|0; - $pExpr = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $iCursor; - HEAP16[$3>>1] = $iCol; - $4 = HEAP32[$0>>2]|0; - $5 = (_sqlite3Expr($4,154,0)|0); - HEAP32[$pExpr>>2] = $5; - $6 = HEAP32[$pExpr>>2]|0; - $7 = ($6|0)!=(0|0); - if (!($7)) { - $17 = HEAP32[$pExpr>>2]|0; - STACKTOP = sp;return ($17|0); - } - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$pExpr>>2]|0; - $10 = (($9) + 44|0); - HEAP32[$10>>2] = $8; - $11 = HEAP32[$2>>2]|0; - $12 = HEAP32[$pExpr>>2]|0; - $13 = (($12) + 28|0); - HEAP32[$13>>2] = $11; - $14 = HEAP16[$3>>1]|0; - $15 = HEAP32[$pExpr>>2]|0; - $16 = (($15) + 32|0); - HEAP16[$16>>1] = $14; - $17 = HEAP32[$pExpr>>2]|0; - STACKTOP = sp;return ($17|0); -} -function _sqlite3WhereBegin($pParse,$pTabList,$pWhere,$pOrderBy,$pResultSet,$wctrlFlags,$iIdxCur) { - $pParse = $pParse|0; - $pTabList = $pTabList|0; - $pWhere = $pWhere|0; - $pOrderBy = $pOrderBy|0; - $pResultSet = $pResultSet|0; - $wctrlFlags = $wctrlFlags|0; - $iIdxCur = $iIdxCur|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; - var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; - var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; - var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; - var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; - var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; - var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; - var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; - var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; - var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; - var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; - var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; - var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0; - var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0; - var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0; - var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0; - var $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0; - var $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0; - var $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; - var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $b = 0, $db = 0, $iCur = 0, $iDb = 0, $iIndexCur = 0, $ii = 0, $n = 0; - var $nByteWInfo = 0, $nTabList = 0, $notReady = 0, $op = 0, $op1 = 0, $pEnd = 0, $pIx = 0, $pJ = 0, $pLevel = 0, $pLoop = 0, $pMaskSet = 0, $pTab = 0, $pTabItem = 0, $pTerm = 0, $pVTab = 0, $pWInfo = 0, $rc = 0, $sWLB = 0, $tabUsed = 0, $v = 0; - var $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 176|0; - $vararg_buffer = sp + 24|0; - $0 = sp + 164|0; - $1 = sp + 160|0; - $2 = sp + 156|0; - $3 = sp + 152|0; - $4 = sp + 148|0; - $5 = sp + 144|0; - $6 = sp + 168|0; - $7 = sp + 140|0; - $nByteWInfo = sp + 136|0; - $nTabList = sp + 132|0; - $pWInfo = sp + 128|0; - $v = sp + 124|0; - $notReady = sp + 16|0; - $sWLB = sp + 104|0; - $pMaskSet = sp + 100|0; - $pLevel = sp + 96|0; - $pLoop = sp + 92|0; - $ii = sp + 88|0; - $db = sp + 84|0; - $rc = sp + 80|0; - $tabUsed = sp + 8|0; - $pTerm = sp + 76|0; - $pEnd = sp + 72|0; - $pTab = sp + 68|0; - $iDb = sp + 64|0; - $pTabItem = sp + 60|0; - $pVTab = sp + 56|0; - $iCur = sp + 52|0; - $op = sp + 48|0; - $b = sp; - $n = sp + 44|0; - $pIx = sp + 40|0; - $iIndexCur = sp + 36|0; - $op1 = sp + 32|0; - $pJ = sp + 28|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pTabList; - HEAP32[$3>>2] = $pWhere; - HEAP32[$4>>2] = $pOrderBy; - HEAP32[$5>>2] = $pResultSet; - HEAP16[$6>>1] = $wctrlFlags; - HEAP32[$7>>2] = $iIdxCur; - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 8|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$v>>2] = $10; - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$11>>2]|0; - HEAP32[$db>>2] = $12; - ;HEAP32[$sWLB+0>>2]=0|0;HEAP32[$sWLB+4>>2]=0|0;HEAP32[$sWLB+8>>2]=0|0;HEAP32[$sWLB+12>>2]=0|0;HEAP32[$sWLB+16>>2]=0|0; - $13 = HEAP32[$4>>2]|0; - $14 = ($13|0)!=(0|0); - if ($14) { - $15 = HEAP32[$4>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = ($16|0)>=(64); - if ($17) { - HEAP32[$4>>2] = 0; - } - } - $18 = HEAP32[$4>>2]|0; - $19 = (($sWLB) + 8|0); - HEAP32[$19>>2] = $18; - $20 = HEAP32[$db>>2]|0; - $21 = (($20) + 60|0); - $22 = HEAP16[$21>>1]|0; - $23 = $22&65535; - $24 = $23 & 32; - $25 = ($24|0)!=(0); - if ($25) { - $26 = HEAP16[$6>>1]|0; - $27 = $26&65535; - $28 = $27 & -1025; - $29 = $28&65535; - HEAP16[$6>>1] = $29; - } - $30 = HEAP32[$2>>2]|0; - $31 = HEAP32[$30>>2]|0; - $32 = ($31|0)>(64); - if ($32) { - $33 = HEAP32[$1>>2]|0; - HEAP32[$vararg_buffer>>2] = 64; - _sqlite3ErrorMsg($33,23360,$vararg_buffer); - HEAP32[$0>>2] = 0; - $792 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($792|0); - } - $34 = HEAP16[$6>>1]|0; - $35 = $34&65535; - $36 = $35 & 64; - $37 = ($36|0)!=(0); - if ($37) { - $40 = 1; - } else { - $38 = HEAP32[$2>>2]|0; - $39 = HEAP32[$38>>2]|0; - $40 = $39; - } - HEAP32[$nTabList>>2] = $40; - $41 = HEAP32[$nTabList>>2]|0; - $42 = (($41) - 1)|0; - $43 = ($42*72)|0; - $44 = (808 + ($43))|0; - $45 = (($44) + 7)|0; - $46 = $45 & -8; - HEAP32[$nByteWInfo>>2] = $46; - $47 = HEAP32[$db>>2]|0; - $48 = HEAP32[$nByteWInfo>>2]|0; - $49 = (($48) + 72)|0; - $50 = (_sqlite3DbMallocZero($47,$49)|0); - HEAP32[$pWInfo>>2] = $50; - $51 = HEAP32[$db>>2]|0; - $52 = (($51) + 64|0); - $53 = HEAP8[$52>>0]|0; - $54 = ($53<<24>>24)!=(0); - L15: do { - if ($54) { - $55 = HEAP32[$db>>2]|0; - $56 = HEAP32[$pWInfo>>2]|0; - _sqlite3DbFree($55,$56); - HEAP32[$pWInfo>>2] = 0; - } else { - $57 = HEAP32[$pWInfo>>2]|0; - $58 = (($57) + 60|0); - $59 = (($58) + 4|0); - HEAP32[$59>>2] = -1; - $60 = HEAP32[$pWInfo>>2]|0; - $61 = (($60) + 60|0); - HEAP32[$61>>2] = -1; - $62 = HEAP32[$nTabList>>2]|0; - $63 = $62&255; - $64 = HEAP32[$pWInfo>>2]|0; - $65 = (($64) + 41|0); - HEAP8[$65>>0] = $63; - $66 = HEAP32[$1>>2]|0; - $67 = HEAP32[$pWInfo>>2]|0; - HEAP32[$67>>2] = $66; - $68 = HEAP32[$2>>2]|0; - $69 = HEAP32[$pWInfo>>2]|0; - $70 = (($69) + 4|0); - HEAP32[$70>>2] = $68; - $71 = HEAP32[$4>>2]|0; - $72 = HEAP32[$pWInfo>>2]|0; - $73 = (($72) + 8|0); - HEAP32[$73>>2] = $71; - $74 = HEAP32[$5>>2]|0; - $75 = HEAP32[$pWInfo>>2]|0; - $76 = (($75) + 12|0); - HEAP32[$76>>2] = $74; - $77 = HEAP32[$v>>2]|0; - $78 = (_sqlite3VdbeMakeLabel($77)|0); - $79 = HEAP32[$pWInfo>>2]|0; - $80 = (($79) + 48|0); - HEAP32[$80>>2] = $78; - $81 = HEAP32[$pWInfo>>2]|0; - $82 = (($81) + 52|0); - HEAP32[$82>>2] = $78; - $83 = HEAP16[$6>>1]|0; - $84 = HEAP32[$pWInfo>>2]|0; - $85 = (($84) + 34|0); - HEAP16[$85>>1] = $83; - $86 = HEAP32[$1>>2]|0; - $87 = (($86) + 424|0); - $88 = HEAP32[$87>>2]|0; - $89 = HEAP32[$pWInfo>>2]|0; - $90 = (($89) + 56|0); - HEAP32[$90>>2] = $88; - $91 = HEAP32[$pWInfo>>2]|0; - $92 = (($91) + 68|0); - HEAP32[$pMaskSet>>2] = $92; - $93 = HEAP32[$pWInfo>>2]|0; - HEAP32[$sWLB>>2] = $93; - $94 = HEAP32[$pWInfo>>2]|0; - $95 = (($94) + 328|0); - $96 = (($sWLB) + 4|0); - HEAP32[$96>>2] = $95; - $97 = HEAP32[$pWInfo>>2]|0; - $98 = HEAP32[$nByteWInfo>>2]|0; - $99 = (($97) + ($98)|0); - $100 = (($sWLB) + 12|0); - HEAP32[$100>>2] = $99; - $101 = (($sWLB) + 12|0); - $102 = HEAP32[$101>>2]|0; - _whereLoopInit($102); - $103 = HEAP32[$pMaskSet>>2]|0; - HEAP32[$103>>2] = 0; - $104 = HEAP32[$pWInfo>>2]|0; - $105 = (($104) + 328|0); - $106 = HEAP32[$pWInfo>>2]|0; - _whereClauseInit($105,$106); - $107 = HEAP32[$pWInfo>>2]|0; - $108 = (($107) + 328|0); - $109 = HEAP32[$3>>2]|0; - _whereSplit($108,$109,72); - HEAP32[$ii>>2] = 0; - while(1) { - $110 = HEAP32[$ii>>2]|0; - $111 = (($sWLB) + 4|0); - $112 = HEAP32[$111>>2]|0; - $113 = (($112) + 12|0); - $114 = HEAP32[$113>>2]|0; - $115 = ($110|0)<($114|0); - $116 = HEAP32[$nTabList>>2]|0; - $117 = ($116|0)==(0); - if (!($115)) { - break; - } - if ($117) { - label = 16; - } else { - $118 = HEAP32[$ii>>2]|0; - $119 = (($sWLB) + 4|0); - $120 = HEAP32[$119>>2]|0; - $121 = (($120) + 20|0); - $122 = HEAP32[$121>>2]|0; - $123 = (($122) + (($118*48)|0)|0); - $124 = HEAP32[$123>>2]|0; - $125 = (_sqlite3ExprIsConstantNotJoin($124)|0); - $126 = ($125|0)!=(0); - if ($126) { - label = 16; - } - } - if ((label|0) == 16) { - label = 0; - $127 = HEAP32[$1>>2]|0; - $128 = HEAP32[$ii>>2]|0; - $129 = (($sWLB) + 4|0); - $130 = HEAP32[$129>>2]|0; - $131 = (($130) + 20|0); - $132 = HEAP32[$131>>2]|0; - $133 = (($132) + (($128*48)|0)|0); - $134 = HEAP32[$133>>2]|0; - $135 = HEAP32[$pWInfo>>2]|0; - $136 = (($135) + 52|0); - $137 = HEAP32[$136>>2]|0; - _sqlite3ExprIfFalse($127,$134,$137,8); - $138 = HEAP32[$ii>>2]|0; - $139 = (($sWLB) + 4|0); - $140 = HEAP32[$139>>2]|0; - $141 = (($140) + 20|0); - $142 = HEAP32[$141>>2]|0; - $143 = (($142) + (($138*48)|0)|0); - $144 = (($143) + 20|0); - $145 = HEAP8[$144>>0]|0; - $146 = $145&255; - $147 = $146 | 4; - $148 = $147&255; - HEAP8[$144>>0] = $148; - } - $149 = HEAP32[$ii>>2]|0; - $150 = (($149) + 1)|0; - HEAP32[$ii>>2] = $150; - } - if ($117) { - $151 = HEAP32[$4>>2]|0; - $152 = ($151|0)!=(0|0); - if ($152) { - $153 = HEAP32[$4>>2]|0; - $154 = HEAP32[$153>>2]|0; - $155 = $154&255; - $156 = HEAP32[$pWInfo>>2]|0; - $157 = (($156) + 36|0); - HEAP8[$157>>0] = $155; - } - $158 = HEAP16[$6>>1]|0; - $159 = $158&65535; - $160 = $159 & 1024; - $161 = ($160|0)!=(0); - if ($161) { - $162 = HEAP32[$pWInfo>>2]|0; - $163 = (($162) + 40|0); - HEAP8[$163>>0] = 1; - } - } - HEAP32[$ii>>2] = 0; - while(1) { - $164 = HEAP32[$ii>>2]|0; - $165 = HEAP32[$2>>2]|0; - $166 = HEAP32[$165>>2]|0; - $167 = ($164|0)<($166|0); - if (!($167)) { - break; - } - $168 = HEAP32[$pMaskSet>>2]|0; - $169 = HEAP32[$ii>>2]|0; - $170 = HEAP32[$2>>2]|0; - $171 = (($170) + 8|0); - $172 = (($171) + (($169*72)|0)|0); - $173 = (($172) + 40|0); - $174 = HEAP32[$173>>2]|0; - _createMask($168,$174); - $175 = HEAP32[$ii>>2]|0; - $176 = (($175) + 1)|0; - HEAP32[$ii>>2] = $176; - } - $177 = HEAP32[$2>>2]|0; - $178 = HEAP32[$pWInfo>>2]|0; - $179 = (($178) + 328|0); - _exprAnalyzeAll($177,$179); - $180 = HEAP32[$db>>2]|0; - $181 = (($180) + 64|0); - $182 = HEAP8[$181>>0]|0; - $183 = ($182<<24>>24)!=(0); - if (!($183)) { - $184 = HEAP16[$6>>1]|0; - $185 = $184&65535; - $186 = $185 & 1024; - $187 = ($186|0)!=(0); - do { - if ($187) { - $188 = HEAP32[$1>>2]|0; - $189 = HEAP32[$2>>2]|0; - $190 = HEAP32[$pWInfo>>2]|0; - $191 = (($190) + 328|0); - $192 = HEAP32[$5>>2]|0; - $193 = (_isDistinctRedundant($188,$189,$191,$192)|0); - $194 = ($193|0)!=(0); - if ($194) { - $195 = HEAP32[$pWInfo>>2]|0; - $196 = (($195) + 40|0); - HEAP8[$196>>0] = 1; - break; - } - $197 = HEAP32[$4>>2]|0; - $198 = ($197|0)==(0|0); - if ($198) { - $199 = HEAP32[$pWInfo>>2]|0; - $200 = (($199) + 34|0); - $201 = HEAP16[$200>>1]|0; - $202 = $201&65535; - $203 = $202 | 512; - $204 = $203&65535; - HEAP16[$200>>1] = $204; - $205 = HEAP32[$5>>2]|0; - $206 = HEAP32[$pWInfo>>2]|0; - $207 = (($206) + 8|0); - HEAP32[$207>>2] = $205; - } - } - } while(0); - $208 = HEAP32[$nTabList>>2]|0; - $209 = ($208|0)!=(1); - if ($209) { - label = 34; - } else { - $210 = (_whereShortCut($sWLB)|0); - $211 = ($210|0)==(0); - if ($211) { - label = 34; - } - } - if ((label|0) == 34) { - $212 = (_whereLoopAddAll($sWLB)|0); - HEAP32[$rc>>2] = $212; - $213 = HEAP32[$rc>>2]|0; - $214 = ($213|0)!=(0); - if ($214) { - break; - } - $215 = HEAP32[$pWInfo>>2]|0; - (_wherePathSolver($215,0)|0); - $216 = HEAP32[$db>>2]|0; - $217 = (($216) + 64|0); - $218 = HEAP8[$217>>0]|0; - $219 = ($218<<24>>24)!=(0); - if ($219) { - break; - } - $220 = HEAP32[$pWInfo>>2]|0; - $221 = (($220) + 8|0); - $222 = HEAP32[$221>>2]|0; - $223 = ($222|0)!=(0|0); - if ($223) { - $224 = HEAP32[$pWInfo>>2]|0; - $225 = HEAP32[$pWInfo>>2]|0; - $226 = (($225) + 32|0); - $227 = HEAP16[$226>>1]|0; - $228 = $227 << 16 >> 16; - $229 = (($228) + 1)|0; - $230 = $229&65535; - (_wherePathSolver($224,$230)|0); - $231 = HEAP32[$db>>2]|0; - $232 = (($231) + 64|0); - $233 = HEAP8[$232>>0]|0; - $234 = ($233<<24>>24)!=(0); - if ($234) { - break; - } - } - } - $235 = HEAP32[$pWInfo>>2]|0; - $236 = (($235) + 8|0); - $237 = HEAP32[$236>>2]|0; - $238 = ($237|0)==(0|0); - if ($238) { - $239 = HEAP32[$db>>2]|0; - $240 = (($239) + 24|0); - $241 = HEAP32[$240>>2]|0; - $242 = $241 & 131072; - $243 = ($242|0)!=(0); - if ($243) { - $244 = HEAP32[$pWInfo>>2]|0; - $245 = (($244) + 24|0); - $246 = $245; - $247 = $246; - HEAP32[$247>>2] = -1; - $248 = (($246) + 4)|0; - $249 = $248; - HEAP32[$249>>2] = -1; - } - } - $250 = HEAP32[$1>>2]|0; - $251 = (($250) + 64|0); - $252 = HEAP32[$251>>2]|0; - $253 = ($252|0)!=(0); - if (!($253)) { - $254 = HEAP32[$db>>2]|0; - $255 = (($254) + 64|0); - $256 = HEAP8[$255>>0]|0; - $257 = $256&255; - $258 = ($257|0)!=(0); - if (!($258)) { - $259 = HEAP32[$pWInfo>>2]|0; - $260 = (($259) + 41|0); - $261 = HEAP8[$260>>0]|0; - $262 = $261&255; - $263 = ($262|0)>=(2); - L60: do { - if ($263) { - $264 = HEAP32[$5>>2]|0; - $265 = ($264|0)!=(0|0); - if ($265) { - $266 = HEAP32[$db>>2]|0; - $267 = (($266) + 60|0); - $268 = HEAP16[$267>>1]|0; - $269 = $268&65535; - $270 = $269 & 1024; - $271 = ($270|0)==(0); - if ($271) { - $272 = HEAP32[$pMaskSet>>2]|0; - $273 = HEAP32[$5>>2]|0; - $274 = (_exprListTableUsage($272,$273)|0); - $275 = tempRet0; - $276 = $tabUsed; - $277 = $276; - HEAP32[$277>>2] = $274; - $278 = (($276) + 4)|0; - $279 = $278; - HEAP32[$279>>2] = $275; - $280 = (($sWLB) + 8|0); - $281 = HEAP32[$280>>2]|0; - $282 = ($281|0)!=(0|0); - if ($282) { - $283 = HEAP32[$pMaskSet>>2]|0; - $284 = (($sWLB) + 8|0); - $285 = HEAP32[$284>>2]|0; - $286 = (_exprListTableUsage($283,$285)|0); - $287 = tempRet0; - $288 = $tabUsed; - $289 = $288; - $290 = HEAP32[$289>>2]|0; - $291 = (($288) + 4)|0; - $292 = $291; - $293 = HEAP32[$292>>2]|0; - $294 = $290 | $286; - $295 = $293 | $287; - $296 = $tabUsed; - $297 = $296; - HEAP32[$297>>2] = $294; - $298 = (($296) + 4)|0; - $299 = $298; - HEAP32[$299>>2] = $295; - } - while(1) { - $300 = HEAP32[$pWInfo>>2]|0; - $301 = (($300) + 41|0); - $302 = HEAP8[$301>>0]|0; - $303 = $302&255; - $304 = ($303|0)>=(2); - if (!($304)) { - break L60; - } - $305 = HEAP32[$pWInfo>>2]|0; - $306 = (($305) + 41|0); - $307 = HEAP8[$306>>0]|0; - $308 = $307&255; - $309 = (($308) - 1)|0; - $310 = HEAP32[$pWInfo>>2]|0; - $311 = (($310) + 736|0); - $312 = (($311) + (($309*72)|0)|0); - $313 = (($312) + 56|0); - $314 = HEAP32[$313>>2]|0; - HEAP32[$pLoop>>2] = $314; - $315 = HEAP32[$pLoop>>2]|0; - $316 = (($315) + 16|0); - $317 = HEAP8[$316>>0]|0; - $318 = $317&255; - $319 = HEAP32[$pWInfo>>2]|0; - $320 = (($319) + 4|0); - $321 = HEAP32[$320>>2]|0; - $322 = (($321) + 8|0); - $323 = (($322) + (($318*72)|0)|0); - $324 = (($323) + 36|0); - $325 = HEAP8[$324>>0]|0; - $326 = $325&255; - $327 = $326 & 8; - $328 = ($327|0)==(0); - if ($328) { - break L60; - } - $329 = HEAP16[$6>>1]|0; - $330 = $329&65535; - $331 = $330 & 1024; - $332 = ($331|0)==(0); - if ($332) { - $333 = HEAP32[$pLoop>>2]|0; - $334 = (($333) + 36|0); - $335 = HEAP32[$334>>2]|0; - $336 = $335 & 4096; - $337 = ($336|0)==(0); - if ($337) { - break L60; - } - } - $338 = $tabUsed; - $339 = $338; - $340 = HEAP32[$339>>2]|0; - $341 = (($338) + 4)|0; - $342 = $341; - $343 = HEAP32[$342>>2]|0; - $344 = HEAP32[$pLoop>>2]|0; - $345 = (($344) + 8|0); - $346 = $345; - $347 = $346; - $348 = HEAP32[$347>>2]|0; - $349 = (($346) + 4)|0; - $350 = $349; - $351 = HEAP32[$350>>2]|0; - $352 = $340 & $348; - $353 = $343 & $351; - $354 = ($352|0)!=(0); - $355 = ($353|0)!=(0); - $356 = $354 | $355; - if ($356) { - break L60; - } - $357 = (($sWLB) + 4|0); - $358 = HEAP32[$357>>2]|0; - $359 = (($358) + 20|0); - $360 = HEAP32[$359>>2]|0; - $361 = (($sWLB) + 4|0); - $362 = HEAP32[$361>>2]|0; - $363 = (($362) + 12|0); - $364 = HEAP32[$363>>2]|0; - $365 = (($360) + (($364*48)|0)|0); - HEAP32[$pEnd>>2] = $365; - $366 = (($sWLB) + 4|0); - $367 = HEAP32[$366>>2]|0; - $368 = (($367) + 20|0); - $369 = HEAP32[$368>>2]|0; - HEAP32[$pTerm>>2] = $369; - while(1) { - $370 = HEAP32[$pTerm>>2]|0; - $371 = HEAP32[$pEnd>>2]|0; - $372 = ($370>>>0)<($371>>>0); - if (!($372)) { - break; - } - $373 = HEAP32[$pTerm>>2]|0; - $374 = (($373) + 40|0); - $375 = $374; - $376 = $375; - $377 = HEAP32[$376>>2]|0; - $378 = (($375) + 4)|0; - $379 = $378; - $380 = HEAP32[$379>>2]|0; - $381 = HEAP32[$pLoop>>2]|0; - $382 = (($381) + 8|0); - $383 = $382; - $384 = $383; - $385 = HEAP32[$384>>2]|0; - $386 = (($383) + 4)|0; - $387 = $386; - $388 = HEAP32[$387>>2]|0; - $389 = $377 & $385; - $390 = $380 & $388; - $391 = ($389|0)!=(0); - $392 = ($390|0)!=(0); - $393 = $391 | $392; - if ($393) { - $394 = HEAP32[$pTerm>>2]|0; - $395 = HEAP32[$394>>2]|0; - $396 = (($395) + 4|0); - $397 = HEAP32[$396>>2]|0; - $398 = $397 & 1; - $399 = ($398|0)!=(0); - if (!($399)) { - break; - } - } - $400 = HEAP32[$pTerm>>2]|0; - $401 = (($400) + 48|0); - HEAP32[$pTerm>>2] = $401; - } - $402 = HEAP32[$pTerm>>2]|0; - $403 = HEAP32[$pEnd>>2]|0; - $404 = ($402>>>0)<($403>>>0); - if ($404) { - break L60; - } - $405 = HEAP32[$pWInfo>>2]|0; - $406 = (($405) + 41|0); - $407 = HEAP8[$406>>0]|0; - $408 = (($407) + -1)<<24>>24; - HEAP8[$406>>0] = $408; - $409 = HEAP32[$nTabList>>2]|0; - $410 = (($409) + -1)|0; - HEAP32[$nTabList>>2] = $410; - } - } - } - } - } while(0); - $411 = HEAP32[$pWInfo>>2]|0; - $412 = (($411) + 32|0); - $413 = HEAP16[$412>>1]|0; - $414 = $413 << 16 >> 16; - $415 = HEAP32[$pWInfo>>2]|0; - $416 = HEAP32[$415>>2]|0; - $417 = (($416) + 424|0); - $418 = HEAP32[$417>>2]|0; - $419 = (($418) + ($414))|0; - HEAP32[$417>>2] = $419; - $420 = HEAP16[$6>>1]|0; - $421 = $420&65535; - $422 = $421 & 4; - $423 = ($422|0)!=(0); - if ($423) { - $424 = HEAP32[$pWInfo>>2]|0; - $425 = (($424) + 736|0); - $426 = (($425) + 56|0); - $427 = HEAP32[$426>>2]|0; - $428 = (($427) + 36|0); - $429 = HEAP32[$428>>2]|0; - $430 = $429 & 4096; - $431 = ($430|0)!=(0); - if ($431) { - $432 = HEAP32[$pWInfo>>2]|0; - $433 = (($432) + 38|0); - HEAP8[$433>>0] = 1; - $434 = HEAP32[$2>>2]|0; - $435 = (($434) + 8|0); - $436 = (($435) + 16|0); - $437 = HEAP32[$436>>2]|0; - $438 = (($437) + 44|0); - $439 = HEAP8[$438>>0]|0; - $440 = $439&255; - $441 = $440 & 32; - $442 = ($441|0)==(0); - if ($442) { - $443 = HEAP32[$pWInfo>>2]|0; - $444 = (($443) + 736|0); - $445 = (($444) + 56|0); - $446 = HEAP32[$445>>2]|0; - $447 = (($446) + 36|0); - $448 = HEAP32[$447>>2]|0; - $449 = $448 & -65; - HEAP32[$447>>2] = $449; - } - } - } - $450 = $notReady; - $451 = $450; - HEAP32[$451>>2] = -1; - $452 = (($450) + 4)|0; - $453 = $452; - HEAP32[$453>>2] = -1; - HEAP32[$ii>>2] = 0; - $454 = HEAP32[$pWInfo>>2]|0; - $455 = (($454) + 736|0); - HEAP32[$pLevel>>2] = $455; - while(1) { - $456 = HEAP32[$ii>>2]|0; - $457 = HEAP32[$nTabList>>2]|0; - $458 = ($456|0)<($457|0); - if (!($458)) { - break; - } - $459 = HEAP32[$pLevel>>2]|0; - $460 = (($459) + 36|0); - $461 = HEAP8[$460>>0]|0; - $462 = $461&255; - $463 = HEAP32[$2>>2]|0; - $464 = (($463) + 8|0); - $465 = (($464) + (($462*72)|0)|0); - HEAP32[$pTabItem>>2] = $465; - $466 = HEAP32[$pTabItem>>2]|0; - $467 = (($466) + 16|0); - $468 = HEAP32[$467>>2]|0; - HEAP32[$pTab>>2] = $468; - $469 = HEAP32[$db>>2]|0; - $470 = HEAP32[$pTab>>2]|0; - $471 = (($470) + 68|0); - $472 = HEAP32[$471>>2]|0; - $473 = (_sqlite3SchemaToIndex($469,$472)|0); - HEAP32[$iDb>>2] = $473; - $474 = HEAP32[$pLevel>>2]|0; - $475 = (($474) + 56|0); - $476 = HEAP32[$475>>2]|0; - HEAP32[$pLoop>>2] = $476; - $477 = HEAP32[$pTab>>2]|0; - $478 = (($477) + 44|0); - $479 = HEAP8[$478>>0]|0; - $480 = $479&255; - $481 = $480 & 2; - $482 = ($481|0)!=(0); - L91: do { - if (!($482)) { - $483 = HEAP32[$pTab>>2]|0; - $484 = (($483) + 12|0); - $485 = HEAP32[$484>>2]|0; - $486 = ($485|0)!=(0|0); - if (!($486)) { - $487 = HEAP32[$pLoop>>2]|0; - $488 = (($487) + 36|0); - $489 = HEAP32[$488>>2]|0; - $490 = $489 & 1024; - $491 = ($490|0)!=(0); - if ($491) { - $492 = HEAP32[$db>>2]|0; - $493 = HEAP32[$pTab>>2]|0; - $494 = (_sqlite3GetVTable($492,$493)|0); - HEAP32[$pVTab>>2] = $494; - $495 = HEAP32[$pTabItem>>2]|0; - $496 = (($495) + 40|0); - $497 = HEAP32[$496>>2]|0; - HEAP32[$iCur>>2] = $497; - $498 = HEAP32[$v>>2]|0; - $499 = HEAP32[$iCur>>2]|0; - $500 = HEAP32[$pVTab>>2]|0; - (_sqlite3VdbeAddOp4($498,149,$499,0,0,$500,-10)|0); - break; - } - $501 = HEAP32[$pTab>>2]|0; - $502 = (($501) + 44|0); - $503 = HEAP8[$502>>0]|0; - $504 = $503&255; - $505 = $504 & 16; - $506 = ($505|0)!=(0); - if ($506) { - break; - } - $507 = HEAP32[$pLoop>>2]|0; - $508 = (($507) + 36|0); - $509 = HEAP32[$508>>2]|0; - $510 = $509 & 64; - $511 = ($510|0)==(0); - do { - if ($511) { - $512 = HEAP16[$6>>1]|0; - $513 = $512&65535; - $514 = $513 & 16; - $515 = ($514|0)==(0); - if (!($515)) { - break; - } - HEAP32[$op>>2] = 52; - $516 = HEAP32[$pWInfo>>2]|0; - $517 = (($516) + 38|0); - $518 = HEAP8[$517>>0]|0; - $519 = ($518<<24>>24)!=(0); - if ($519) { - HEAP32[$op>>2] = 53; - $520 = HEAP32[$pTabItem>>2]|0; - $521 = (($520) + 40|0); - $522 = HEAP32[$521>>2]|0; - $523 = HEAP32[$pWInfo>>2]|0; - $524 = (($523) + 60|0); - HEAP32[$524>>2] = $522; - } - $525 = HEAP32[$1>>2]|0; - $526 = HEAP32[$pTabItem>>2]|0; - $527 = (($526) + 40|0); - $528 = HEAP32[$527>>2]|0; - $529 = HEAP32[$iDb>>2]|0; - $530 = HEAP32[$pTab>>2]|0; - $531 = HEAP32[$op>>2]|0; - _sqlite3OpenTable($525,$528,$529,$530,$531); - $532 = HEAP32[$pWInfo>>2]|0; - $533 = (($532) + 38|0); - $534 = HEAP8[$533>>0]|0; - $535 = ($534<<24>>24)!=(0); - if ($535) { - break L91; - } - $536 = HEAP32[$pTab>>2]|0; - $537 = (($536) + 38|0); - $538 = HEAP16[$537>>1]|0; - $539 = $538 << 16 >> 16; - $540 = ($539|0)<(64); - if (!($540)) { - break L91; - } - $541 = HEAP32[$pTab>>2]|0; - $542 = (($541) + 44|0); - $543 = HEAP8[$542>>0]|0; - $544 = $543&255; - $545 = $544 & 32; - $546 = ($545|0)==(0); - if (!($546)) { - break L91; - } - $547 = HEAP32[$pTabItem>>2]|0; - $548 = (($547) + 56|0); - $549 = $548; - $550 = $549; - $551 = HEAP32[$550>>2]|0; - $552 = (($549) + 4)|0; - $553 = $552; - $554 = HEAP32[$553>>2]|0; - $555 = $b; - $556 = $555; - HEAP32[$556>>2] = $551; - $557 = (($555) + 4)|0; - $558 = $557; - HEAP32[$558>>2] = $554; - HEAP32[$n>>2] = 0; - while(1) { - $559 = $b; - $560 = $559; - $561 = HEAP32[$560>>2]|0; - $562 = (($559) + 4)|0; - $563 = $562; - $564 = HEAP32[$563>>2]|0; - $565 = ($561|0)!=(0); - $566 = ($564|0)!=(0); - $567 = $565 | $566; - if (!($567)) { - break; - } - $568 = $b; - $569 = $568; - $570 = HEAP32[$569>>2]|0; - $571 = (($568) + 4)|0; - $572 = $571; - $573 = HEAP32[$572>>2]|0; - $574 = (_bitshift64Lshr(($570|0),($573|0),1)|0); - $575 = tempRet0; - $576 = $b; - $577 = $576; - HEAP32[$577>>2] = $574; - $578 = (($576) + 4)|0; - $579 = $578; - HEAP32[$579>>2] = $575; - $580 = HEAP32[$n>>2]|0; - $581 = (($580) + 1)|0; - HEAP32[$n>>2] = $581; - } - $582 = HEAP32[$v>>2]|0; - $583 = HEAP32[$v>>2]|0; - $584 = (_sqlite3VdbeCurrentAddr($583)|0); - $585 = (($584) - 1)|0; - $586 = HEAP32[$n>>2]|0; - $587 = $586; - _sqlite3VdbeChangeP4($582,$585,$587,-14); - break L91; - } - } while(0); - $588 = HEAP32[$1>>2]|0; - $589 = HEAP32[$iDb>>2]|0; - $590 = HEAP32[$pTab>>2]|0; - $591 = (($590) + 32|0); - $592 = HEAP32[$591>>2]|0; - $593 = HEAP32[$pTab>>2]|0; - $594 = HEAP32[$593>>2]|0; - _sqlite3TableLock($588,$589,$592,0,$594); - } - } - } while(0); - $595 = HEAP32[$pLoop>>2]|0; - $596 = (($595) + 36|0); - $597 = HEAP32[$596>>2]|0; - $598 = $597 & 512; - $599 = ($598|0)!=(0); - do { - if ($599) { - $600 = HEAP32[$pLoop>>2]|0; - $601 = (($600) + 24|0); - $602 = (($601) + 4|0); - $603 = HEAP32[$602>>2]|0; - HEAP32[$pIx>>2] = $603; - HEAP32[$op1>>2] = 52; - $604 = HEAP32[$pTab>>2]|0; - $605 = (($604) + 44|0); - $606 = HEAP8[$605>>0]|0; - $607 = $606&255; - $608 = $607 & 32; - $609 = ($608|0)==(0); - do { - if ($609) { - label = 88; - } else { - $610 = HEAP32[$pIx>>2]|0; - $611 = (($610) + 55|0); - $612 = HEAP8[$611>>0]|0; - $613 = $612 & 3; - $614 = $613&255; - $615 = ($614|0)==(2); - if (!($615)) { - label = 88; - break; - } - $616 = HEAP16[$6>>1]|0; - $617 = $616&65535; - $618 = $617 & 64; - $619 = ($618|0)!=(0); - if (!($619)) { - label = 88; - break; - } - $620 = HEAP32[$pLevel>>2]|0; - $621 = (($620) + 4|0); - $622 = HEAP32[$621>>2]|0; - HEAP32[$iIndexCur>>2] = $622; - HEAP32[$op1>>2] = 0; - } - } while(0); - L119: do { - if ((label|0) == 88) { - label = 0; - $623 = HEAP32[$pWInfo>>2]|0; - $624 = (($623) + 38|0); - $625 = HEAP8[$624>>0]|0; - $626 = ($625<<24>>24)!=(0); - if (!($626)) { - $647 = HEAP32[$7>>2]|0; - $648 = ($647|0)!=(0); - do { - if ($648) { - $649 = HEAP16[$6>>1]|0; - $650 = $649&65535; - $651 = $650 & 64; - $652 = ($651|0)!=(0); - if (!($652)) { - break; - } - $653 = HEAP32[$7>>2]|0; - HEAP32[$iIndexCur>>2] = $653; - break L119; - } - } while(0); - $654 = HEAP32[$1>>2]|0; - $655 = (($654) + 68|0); - $656 = HEAP32[$655>>2]|0; - $657 = (($656) + 1)|0; - HEAP32[$655>>2] = $657; - HEAP32[$iIndexCur>>2] = $656; - break; - } - $627 = HEAP32[$pTabItem>>2]|0; - $628 = (($627) + 16|0); - $629 = HEAP32[$628>>2]|0; - $630 = (($629) + 8|0); - $631 = HEAP32[$630>>2]|0; - HEAP32[$pJ>>2] = $631; - $632 = HEAP32[$7>>2]|0; - HEAP32[$iIndexCur>>2] = $632; - while(1) { - $633 = HEAP32[$pJ>>2]|0; - $634 = ($633|0)!=(0|0); - if (!($634)) { - break; - } - $635 = HEAP32[$pJ>>2]|0; - $636 = HEAP32[$pIx>>2]|0; - $637 = ($635|0)!=($636|0); - if (!($637)) { - break; - } - $638 = HEAP32[$iIndexCur>>2]|0; - $639 = (($638) + 1)|0; - HEAP32[$iIndexCur>>2] = $639; - $640 = HEAP32[$pJ>>2]|0; - $641 = (($640) + 20|0); - $642 = HEAP32[$641>>2]|0; - HEAP32[$pJ>>2] = $642; - } - HEAP32[$op1>>2] = 53; - $643 = HEAP32[$iIndexCur>>2]|0; - $644 = HEAP32[$pWInfo>>2]|0; - $645 = (($644) + 60|0); - $646 = (($645) + 4|0); - HEAP32[$646>>2] = $643; - } - } while(0); - $658 = HEAP32[$iIndexCur>>2]|0; - $659 = HEAP32[$pLevel>>2]|0; - $660 = (($659) + 8|0); - HEAP32[$660>>2] = $658; - $661 = HEAP32[$op1>>2]|0; - $662 = ($661|0)!=(0); - if (!($662)) { - break; - } - $663 = HEAP32[$v>>2]|0; - $664 = HEAP32[$op1>>2]|0; - $665 = HEAP32[$iIndexCur>>2]|0; - $666 = HEAP32[$pIx>>2]|0; - $667 = (($666) + 44|0); - $668 = HEAP32[$667>>2]|0; - $669 = HEAP32[$iDb>>2]|0; - (_sqlite3VdbeAddOp3($663,$664,$665,$668,$669)|0); - $670 = HEAP32[$1>>2]|0; - $671 = HEAP32[$pIx>>2]|0; - _sqlite3VdbeSetP4KeyInfo($670,$671); - } - } while(0); - $672 = HEAP32[$iDb>>2]|0; - $673 = ($672|0)>=(0); - if ($673) { - $674 = HEAP32[$1>>2]|0; - $675 = HEAP32[$iDb>>2]|0; - _sqlite3CodeVerifySchema($674,$675); - } - $676 = HEAP32[$pWInfo>>2]|0; - $677 = (($676) + 68|0); - $678 = HEAP32[$pTabItem>>2]|0; - $679 = (($678) + 40|0); - $680 = HEAP32[$679>>2]|0; - $681 = (_getMask($677,$680)|0); - $682 = tempRet0; - $683 = $681 ^ -1; - $684 = $682 ^ -1; - $685 = $notReady; - $686 = $685; - $687 = HEAP32[$686>>2]|0; - $688 = (($685) + 4)|0; - $689 = $688; - $690 = HEAP32[$689>>2]|0; - $691 = $687 & $683; - $692 = $690 & $684; - $693 = $notReady; - $694 = $693; - HEAP32[$694>>2] = $691; - $695 = (($693) + 4)|0; - $696 = $695; - HEAP32[$696>>2] = $692; - $697 = HEAP32[$ii>>2]|0; - $698 = (($697) + 1)|0; - HEAP32[$ii>>2] = $698; - $699 = HEAP32[$pLevel>>2]|0; - $700 = (($699) + 72|0); - HEAP32[$pLevel>>2] = $700; - } - $701 = HEAP32[$v>>2]|0; - $702 = (_sqlite3VdbeCurrentAddr($701)|0); - $703 = HEAP32[$pWInfo>>2]|0; - $704 = (($703) + 44|0); - HEAP32[$704>>2] = $702; - $705 = HEAP32[$db>>2]|0; - $706 = (($705) + 64|0); - $707 = HEAP8[$706>>0]|0; - $708 = ($707<<24>>24)!=(0); - if (!($708)) { - $709 = $notReady; - $710 = $709; - HEAP32[$710>>2] = -1; - $711 = (($709) + 4)|0; - $712 = $711; - HEAP32[$712>>2] = -1; - HEAP32[$ii>>2] = 0; - while(1) { - $713 = HEAP32[$ii>>2]|0; - $714 = HEAP32[$nTabList>>2]|0; - $715 = ($713|0)<($714|0); - if (!($715)) { - break; - } - $716 = HEAP32[$ii>>2]|0; - $717 = HEAP32[$pWInfo>>2]|0; - $718 = (($717) + 736|0); - $719 = (($718) + (($716*72)|0)|0); - HEAP32[$pLevel>>2] = $719; - $720 = HEAP32[$pLevel>>2]|0; - $721 = (($720) + 56|0); - $722 = HEAP32[$721>>2]|0; - $723 = (($722) + 36|0); - $724 = HEAP32[$723>>2]|0; - $725 = $724 & 16384; - $726 = ($725|0)!=(0); - if ($726) { - $727 = HEAP32[$1>>2]|0; - $728 = HEAP32[$pWInfo>>2]|0; - $729 = (($728) + 328|0); - $730 = HEAP32[$pLevel>>2]|0; - $731 = (($730) + 36|0); - $732 = HEAP8[$731>>0]|0; - $733 = $732&255; - $734 = HEAP32[$2>>2]|0; - $735 = (($734) + 8|0); - $736 = (($735) + (($733*72)|0)|0); - $737 = $notReady; - $738 = $737; - $739 = HEAP32[$738>>2]|0; - $740 = (($737) + 4)|0; - $741 = $740; - $742 = HEAP32[$741>>2]|0; - $743 = HEAP32[$pLevel>>2]|0; - _constructAutomaticIndex($727,$729,$736,$739,$742,$743); - $744 = HEAP32[$db>>2]|0; - $745 = (($744) + 64|0); - $746 = HEAP8[$745>>0]|0; - $747 = ($746<<24>>24)!=(0); - if ($747) { - break L15; - } - } - $748 = HEAP32[$1>>2]|0; - $749 = HEAP32[$2>>2]|0; - $750 = HEAP32[$pLevel>>2]|0; - $751 = HEAP32[$ii>>2]|0; - $752 = HEAP32[$pLevel>>2]|0; - $753 = (($752) + 36|0); - $754 = HEAP8[$753>>0]|0; - $755 = $754&255; - $756 = HEAP16[$6>>1]|0; - _explainOneScan($748,$749,$750,$751,$755,$756); - $757 = HEAP32[$v>>2]|0; - $758 = (_sqlite3VdbeCurrentAddr($757)|0); - $759 = HEAP32[$pLevel>>2]|0; - $760 = (($759) + 32|0); - HEAP32[$760>>2] = $758; - $761 = HEAP32[$pWInfo>>2]|0; - $762 = HEAP32[$ii>>2]|0; - $763 = $notReady; - $764 = $763; - $765 = HEAP32[$764>>2]|0; - $766 = (($763) + 4)|0; - $767 = $766; - $768 = HEAP32[$767>>2]|0; - $769 = (_codeOneLoopStart($761,$762,$765,$768)|0); - $770 = tempRet0; - $771 = $notReady; - $772 = $771; - HEAP32[$772>>2] = $769; - $773 = (($771) + 4)|0; - $774 = $773; - HEAP32[$774>>2] = $770; - $775 = HEAP32[$pLevel>>2]|0; - $776 = (($775) + 24|0); - $777 = HEAP32[$776>>2]|0; - $778 = HEAP32[$pWInfo>>2]|0; - $779 = (($778) + 48|0); - HEAP32[$779>>2] = $777; - $780 = HEAP32[$ii>>2]|0; - $781 = (($780) + 1)|0; - HEAP32[$ii>>2] = $781; - } - $782 = HEAP32[$pWInfo>>2]|0; - HEAP32[$0>>2] = $782; - $792 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($792|0); - } - } - } - } - } - } while(0); - $783 = HEAP32[$pWInfo>>2]|0; - $784 = ($783|0)!=(0|0); - if ($784) { - $785 = HEAP32[$pWInfo>>2]|0; - $786 = (($785) + 56|0); - $787 = HEAP32[$786>>2]|0; - $788 = HEAP32[$1>>2]|0; - $789 = (($788) + 424|0); - HEAP32[$789>>2] = $787; - $790 = HEAP32[$db>>2]|0; - $791 = HEAP32[$pWInfo>>2]|0; - _whereInfoFree($790,$791); - } - HEAP32[$0>>2] = 0; - $792 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($792|0); -} -function _sqlite3WhereEnd($pWInfo) { - $pWInfo = $pWInfo|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; - var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; - var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; - var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr = 0, $db = 0, $i = 0, $j = 0, $k = 0, $last = 0, $pIdx = 0, $pIn = 0, $pLevel = 0; - var $pLoop = 0, $pOp = 0, $pParse = 0, $pPk = 0, $pTab = 0, $pTabItem = 0, $pTabList = 0, $v = 0, $ws = 0, $x = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 76|0; - $pParse = sp + 72|0; - $v = sp + 68|0; - $i = sp + 64|0; - $pLevel = sp + 60|0; - $pLoop = sp + 56|0; - $pTabList = sp + 52|0; - $db = sp + 48|0; - $addr = sp + 44|0; - $pIn = sp + 40|0; - $j = sp + 36|0; - $k = sp + 32|0; - $last = sp + 28|0; - $pOp = sp + 24|0; - $pIdx = sp + 20|0; - $pTabItem = sp + 16|0; - $pTab = sp + 12|0; - $ws = sp + 8|0; - $x = sp + 4|0; - $pPk = sp; - HEAP32[$0>>2] = $pWInfo; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$pParse>>2] = $2; - $3 = HEAP32[$pParse>>2]|0; - $4 = (($3) + 8|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$v>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pTabList>>2] = $8; - $9 = HEAP32[$pParse>>2]|0; - $10 = HEAP32[$9>>2]|0; - HEAP32[$db>>2] = $10; - $11 = HEAP32[$pParse>>2]|0; - _sqlite3ExprCacheClear($11); - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 41|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14&255; - $16 = (($15) - 1)|0; - HEAP32[$i>>2] = $16; - while(1) { - $17 = HEAP32[$i>>2]|0; - $18 = ($17|0)>=(0); - if (!($18)) { - break; - } - $19 = HEAP32[$i>>2]|0; - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 736|0); - $22 = (($21) + (($19*72)|0)|0); - HEAP32[$pLevel>>2] = $22; - $23 = HEAP32[$pLevel>>2]|0; - $24 = (($23) + 56|0); - $25 = HEAP32[$24>>2]|0; - HEAP32[$pLoop>>2] = $25; - $26 = HEAP32[$v>>2]|0; - $27 = HEAP32[$pLevel>>2]|0; - $28 = (($27) + 24|0); - $29 = HEAP32[$28>>2]|0; - _sqlite3VdbeResolveLabel($26,$29); - $30 = HEAP32[$pLevel>>2]|0; - $31 = (($30) + 37|0); - $32 = HEAP8[$31>>0]|0; - $33 = $32&255; - $34 = ($33|0)!=(156); - if ($34) { - $35 = HEAP32[$v>>2]|0; - $36 = HEAP32[$pLevel>>2]|0; - $37 = (($36) + 37|0); - $38 = HEAP8[$37>>0]|0; - $39 = $38&255; - $40 = HEAP32[$pLevel>>2]|0; - $41 = (($40) + 40|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$pLevel>>2]|0; - $44 = (($43) + 44|0); - $45 = HEAP32[$44>>2]|0; - $46 = HEAP32[$pLevel>>2]|0; - $47 = (($46) + 38|0); - $48 = HEAP8[$47>>0]|0; - $49 = $48&255; - (_sqlite3VdbeAddOp3($35,$39,$42,$45,$49)|0); - $50 = HEAP32[$v>>2]|0; - $51 = HEAP32[$pLevel>>2]|0; - $52 = (($51) + 39|0); - $53 = HEAP8[$52>>0]|0; - _sqlite3VdbeChangeP5($50,$53); - } - $54 = HEAP32[$pLoop>>2]|0; - $55 = (($54) + 36|0); - $56 = HEAP32[$55>>2]|0; - $57 = $56 & 2048; - $58 = ($57|0)!=(0); - if ($58) { - $59 = HEAP32[$pLevel>>2]|0; - $60 = (($59) + 48|0); - $61 = HEAP32[$60>>2]|0; - $62 = ($61|0)>(0); - if ($62) { - $63 = HEAP32[$v>>2]|0; - $64 = HEAP32[$pLevel>>2]|0; - $65 = (($64) + 16|0); - $66 = HEAP32[$65>>2]|0; - _sqlite3VdbeResolveLabel($63,$66); - $67 = HEAP32[$pLevel>>2]|0; - $68 = (($67) + 48|0); - $69 = HEAP32[$68>>2]|0; - HEAP32[$j>>2] = $69; - $70 = HEAP32[$j>>2]|0; - $71 = (($70) - 1)|0; - $72 = HEAP32[$pLevel>>2]|0; - $73 = (($72) + 48|0); - $74 = (($73) + 4|0); - $75 = HEAP32[$74>>2]|0; - $76 = (($75) + (($71*12)|0)|0); - HEAP32[$pIn>>2] = $76; - while(1) { - $77 = HEAP32[$j>>2]|0; - $78 = ($77|0)>(0); - if (!($78)) { - break; - } - $79 = HEAP32[$v>>2]|0; - $80 = HEAP32[$pIn>>2]|0; - $81 = (($80) + 4|0); - $82 = HEAP32[$81>>2]|0; - $83 = (($82) + 1)|0; - _sqlite3VdbeJumpHere($79,$83); - $84 = HEAP32[$v>>2]|0; - $85 = HEAP32[$pIn>>2]|0; - $86 = (($85) + 8|0); - $87 = HEAP8[$86>>0]|0; - $88 = $87&255; - $89 = HEAP32[$pIn>>2]|0; - $90 = HEAP32[$89>>2]|0; - $91 = HEAP32[$pIn>>2]|0; - $92 = (($91) + 4|0); - $93 = HEAP32[$92>>2]|0; - (_sqlite3VdbeAddOp2($84,$88,$90,$93)|0); - $94 = HEAP32[$v>>2]|0; - $95 = HEAP32[$pIn>>2]|0; - $96 = (($95) + 4|0); - $97 = HEAP32[$96>>2]|0; - $98 = (($97) - 1)|0; - _sqlite3VdbeJumpHere($94,$98); - $99 = HEAP32[$j>>2]|0; - $100 = (($99) + -1)|0; - HEAP32[$j>>2] = $100; - $101 = HEAP32[$pIn>>2]|0; - $102 = (($101) + -12|0); - HEAP32[$pIn>>2] = $102; - } - $103 = HEAP32[$db>>2]|0; - $104 = HEAP32[$pLevel>>2]|0; - $105 = (($104) + 48|0); - $106 = (($105) + 4|0); - $107 = HEAP32[$106>>2]|0; - _sqlite3DbFree($103,$107); - } - } - $108 = HEAP32[$v>>2]|0; - $109 = HEAP32[$pLevel>>2]|0; - $110 = (($109) + 12|0); - $111 = HEAP32[$110>>2]|0; - _sqlite3VdbeResolveLabel($108,$111); - $112 = HEAP32[$pLevel>>2]|0; - $113 = (($112) + 20|0); - $114 = HEAP32[$113>>2]|0; - $115 = ($114|0)!=(0); - if ($115) { - $116 = HEAP32[$v>>2]|0; - $117 = HEAP32[$pLevel>>2]|0; - $118 = (($117) + 20|0); - $119 = HEAP32[$118>>2]|0; - (_sqlite3VdbeAddOp2($116,16,0,$119)|0); - $120 = HEAP32[$v>>2]|0; - $121 = HEAP32[$pLevel>>2]|0; - $122 = (($121) + 20|0); - $123 = HEAP32[$122>>2]|0; - _sqlite3VdbeJumpHere($120,$123); - $124 = HEAP32[$v>>2]|0; - $125 = HEAP32[$pLevel>>2]|0; - $126 = (($125) + 20|0); - $127 = HEAP32[$126>>2]|0; - $128 = (($127) - 2)|0; - _sqlite3VdbeJumpHere($124,$128); - } - $129 = HEAP32[$pLevel>>2]|0; - $130 = HEAP32[$129>>2]|0; - $131 = ($130|0)!=(0); - if ($131) { - $132 = HEAP32[$v>>2]|0; - $133 = HEAP32[$pLevel>>2]|0; - $134 = HEAP32[$133>>2]|0; - $135 = (_sqlite3VdbeAddOp1($132,134,$134)|0); - HEAP32[$addr>>2] = $135; - $136 = HEAP32[$pLoop>>2]|0; - $137 = (($136) + 36|0); - $138 = HEAP32[$137>>2]|0; - $139 = $138 & 64; - $140 = ($139|0)==(0); - if ($140) { - $141 = HEAP32[$v>>2]|0; - $142 = HEAP32[$i>>2]|0; - $143 = HEAP32[$pTabList>>2]|0; - $144 = (($143) + 8|0); - $145 = (($144) + (($142*72)|0)|0); - $146 = (($145) + 40|0); - $147 = HEAP32[$146>>2]|0; - (_sqlite3VdbeAddOp1($141,101,$147)|0); - } - $148 = HEAP32[$pLoop>>2]|0; - $149 = (($148) + 36|0); - $150 = HEAP32[$149>>2]|0; - $151 = $150 & 512; - $152 = ($151|0)!=(0); - if ($152) { - $153 = HEAP32[$v>>2]|0; - $154 = HEAP32[$pLevel>>2]|0; - $155 = (($154) + 8|0); - $156 = HEAP32[$155>>2]|0; - (_sqlite3VdbeAddOp1($153,101,$156)|0); - } - $157 = HEAP32[$pLevel>>2]|0; - $158 = (($157) + 37|0); - $159 = HEAP8[$158>>0]|0; - $160 = $159&255; - $161 = ($160|0)==(18); - $162 = HEAP32[$v>>2]|0; - $163 = HEAP32[$pLevel>>2]|0; - if ($161) { - $164 = (($163) + 40|0); - $165 = HEAP32[$164>>2]|0; - $166 = HEAP32[$pLevel>>2]|0; - $167 = (($166) + 28|0); - $168 = HEAP32[$167>>2]|0; - (_sqlite3VdbeAddOp2($162,17,$165,$168)|0); - } else { - $169 = (($163) + 28|0); - $170 = HEAP32[$169>>2]|0; - (_sqlite3VdbeAddOp2($162,16,0,$170)|0); - } - $171 = HEAP32[$v>>2]|0; - $172 = HEAP32[$addr>>2]|0; - _sqlite3VdbeJumpHere($171,$172); - } - $173 = HEAP32[$i>>2]|0; - $174 = (($173) + -1)|0; - HEAP32[$i>>2] = $174; - } - $175 = HEAP32[$v>>2]|0; - $176 = HEAP32[$0>>2]|0; - $177 = (($176) + 52|0); - $178 = HEAP32[$177>>2]|0; - _sqlite3VdbeResolveLabel($175,$178); - HEAP32[$i>>2] = 0; - $179 = HEAP32[$0>>2]|0; - $180 = (($179) + 736|0); - HEAP32[$pLevel>>2] = $180; - while(1) { - $181 = HEAP32[$i>>2]|0; - $182 = HEAP32[$0>>2]|0; - $183 = (($182) + 41|0); - $184 = HEAP8[$183>>0]|0; - $185 = $184&255; - $186 = ($181|0)<($185|0); - if (!($186)) { - break; - } - HEAP32[$pIdx>>2] = 0; - $187 = HEAP32[$pLevel>>2]|0; - $188 = (($187) + 36|0); - $189 = HEAP8[$188>>0]|0; - $190 = $189&255; - $191 = HEAP32[$pTabList>>2]|0; - $192 = (($191) + 8|0); - $193 = (($192) + (($190*72)|0)|0); - HEAP32[$pTabItem>>2] = $193; - $194 = HEAP32[$pTabItem>>2]|0; - $195 = (($194) + 16|0); - $196 = HEAP32[$195>>2]|0; - HEAP32[$pTab>>2] = $196; - $197 = HEAP32[$pLevel>>2]|0; - $198 = (($197) + 56|0); - $199 = HEAP32[$198>>2]|0; - HEAP32[$pLoop>>2] = $199; - $200 = HEAP32[$pTabItem>>2]|0; - $201 = (($200) + 37|0); - $202 = HEAP8[$201>>0]|0; - $203 = ($202&255) >>> 2; - $204 = $203 & 1; - $205 = $204&255; - $206 = ($205|0)!=(0); - L35: do { - if ($206) { - $207 = HEAP32[$db>>2]|0; - $208 = (($207) + 64|0); - $209 = HEAP8[$208>>0]|0; - $210 = ($209<<24>>24)!=(0); - if ($210) { - label = 35; - } else { - $211 = HEAP32[$v>>2]|0; - $212 = (_sqlite3VdbeCurrentAddr($211)|0); - HEAP32[$last>>2] = $212; - $213 = HEAP32[$pLevel>>2]|0; - $214 = (($213) + 32|0); - $215 = HEAP32[$214>>2]|0; - HEAP32[$k>>2] = $215; - $216 = HEAP32[$v>>2]|0; - $217 = HEAP32[$k>>2]|0; - $218 = (_sqlite3VdbeGetOp($216,$217)|0); - HEAP32[$pOp>>2] = $218; - while(1) { - $219 = HEAP32[$k>>2]|0; - $220 = HEAP32[$last>>2]|0; - $221 = ($219|0)<($220|0); - if (!($221)) { - break L35; - } - $222 = HEAP32[$pOp>>2]|0; - $223 = (($222) + 4|0); - $224 = HEAP32[$223>>2]|0; - $225 = HEAP32[$pLevel>>2]|0; - $226 = (($225) + 4|0); - $227 = HEAP32[$226>>2]|0; - $228 = ($224|0)!=($227|0); - do { - if (!($228)) { - $229 = HEAP32[$pOp>>2]|0; - $230 = HEAP8[$229>>0]|0; - $231 = $230&255; - $232 = ($231|0)==(46); - $233 = HEAP32[$pOp>>2]|0; - if ($232) { - HEAP8[$233>>0] = 33; - $234 = HEAP32[$pOp>>2]|0; - $235 = (($234) + 8|0); - $236 = HEAP32[$235>>2]|0; - $237 = HEAP32[$pTabItem>>2]|0; - $238 = (($237) + 32|0); - $239 = HEAP32[$238>>2]|0; - $240 = (($236) + ($239))|0; - $241 = HEAP32[$pOp>>2]|0; - $242 = (($241) + 4|0); - HEAP32[$242>>2] = $240; - $243 = HEAP32[$pOp>>2]|0; - $244 = (($243) + 12|0); - $245 = HEAP32[$244>>2]|0; - $246 = HEAP32[$pOp>>2]|0; - $247 = (($246) + 8|0); - HEAP32[$247>>2] = $245; - $248 = HEAP32[$pOp>>2]|0; - $249 = (($248) + 12|0); - HEAP32[$249>>2] = 0; - break; - } - $250 = HEAP8[$233>>0]|0; - $251 = $250&255; - $252 = ($251|0)==(100); - if ($252) { - $253 = HEAP32[$pOp>>2]|0; - HEAP8[$253>>0] = 28; - $254 = HEAP32[$pOp>>2]|0; - $255 = (($254) + 4|0); - HEAP32[$255>>2] = 0; - $256 = HEAP32[$pOp>>2]|0; - $257 = (($256) + 12|0); - HEAP32[$257>>2] = 0; - } - } - } while(0); - $258 = HEAP32[$k>>2]|0; - $259 = (($258) + 1)|0; - HEAP32[$k>>2] = $259; - $260 = HEAP32[$pOp>>2]|0; - $261 = (($260) + 20|0); - HEAP32[$pOp>>2] = $261; - } - } - } else { - label = 35; - } - } while(0); - L48: do { - if ((label|0) == 35) { - label = 0; - $262 = HEAP32[$pTab>>2]|0; - $263 = (($262) + 44|0); - $264 = HEAP8[$263>>0]|0; - $265 = $264&255; - $266 = $265 & 2; - $267 = ($266|0)==(0); - if ($267) { - $268 = HEAP32[$pTab>>2]|0; - $269 = (($268) + 12|0); - $270 = HEAP32[$269>>2]|0; - $271 = ($270|0)==(0|0); - if ($271) { - $272 = HEAP32[$0>>2]|0; - $273 = (($272) + 34|0); - $274 = HEAP16[$273>>1]|0; - $275 = $274&65535; - $276 = $275 & 16; - $277 = ($276|0)==(0); - if ($277) { - $278 = HEAP32[$pLoop>>2]|0; - $279 = (($278) + 36|0); - $280 = HEAP32[$279>>2]|0; - HEAP32[$ws>>2] = $280; - $281 = HEAP32[$0>>2]|0; - $282 = (($281) + 38|0); - $283 = HEAP8[$282>>0]|0; - $284 = ($283<<24>>24)!=(0); - if (!($284)) { - $285 = HEAP32[$ws>>2]|0; - $286 = $285 & 64; - $287 = ($286|0)==(0); - if ($287) { - $288 = HEAP32[$v>>2]|0; - $289 = HEAP32[$pTabItem>>2]|0; - $290 = (($289) + 40|0); - $291 = HEAP32[$290>>2]|0; - (_sqlite3VdbeAddOp1($288,58,$291)|0); - } - } - $292 = HEAP32[$ws>>2]|0; - $293 = $292 & 512; - $294 = ($293|0)!=(0); - if ($294) { - $295 = HEAP32[$ws>>2]|0; - $296 = $295 & 16640; - $297 = ($296|0)==(0); - if ($297) { - $298 = HEAP32[$pLevel>>2]|0; - $299 = (($298) + 8|0); - $300 = HEAP32[$299>>2]|0; - $301 = HEAP32[$0>>2]|0; - $302 = (($301) + 60|0); - $303 = (($302) + 4|0); - $304 = HEAP32[$303>>2]|0; - $305 = ($300|0)!=($304|0); - if ($305) { - $306 = HEAP32[$v>>2]|0; - $307 = HEAP32[$pLevel>>2]|0; - $308 = (($307) + 8|0); - $309 = HEAP32[$308>>2]|0; - (_sqlite3VdbeAddOp1($306,58,$309)|0); - } - } - } - } - } - } - $310 = HEAP32[$pLoop>>2]|0; - $311 = (($310) + 36|0); - $312 = HEAP32[$311>>2]|0; - $313 = $312 & 576; - $314 = ($313|0)!=(0); - $315 = HEAP32[$pLoop>>2]|0; - if ($314) { - $316 = (($315) + 24|0); - $317 = (($316) + 4|0); - $318 = HEAP32[$317>>2]|0; - HEAP32[$pIdx>>2] = $318; - } else { - $319 = (($315) + 36|0); - $320 = HEAP32[$319>>2]|0; - $321 = $320 & 8192; - $322 = ($321|0)!=(0); - if ($322) { - $323 = HEAP32[$pLevel>>2]|0; - $324 = (($323) + 48|0); - $325 = HEAP32[$324>>2]|0; - HEAP32[$pIdx>>2] = $325; - } - } - $326 = HEAP32[$pIdx>>2]|0; - $327 = ($326|0)!=(0|0); - if ($327) { - $328 = HEAP32[$db>>2]|0; - $329 = (($328) + 64|0); - $330 = HEAP8[$329>>0]|0; - $331 = ($330<<24>>24)!=(0); - if (!($331)) { - $332 = HEAP32[$v>>2]|0; - $333 = (_sqlite3VdbeCurrentAddr($332)|0); - HEAP32[$last>>2] = $333; - $334 = HEAP32[$pLevel>>2]|0; - $335 = (($334) + 32|0); - $336 = HEAP32[$335>>2]|0; - HEAP32[$k>>2] = $336; - $337 = HEAP32[$v>>2]|0; - $338 = HEAP32[$k>>2]|0; - $339 = (_sqlite3VdbeGetOp($337,$338)|0); - HEAP32[$pOp>>2] = $339; - while(1) { - $340 = HEAP32[$k>>2]|0; - $341 = HEAP32[$last>>2]|0; - $342 = ($340|0)<($341|0); - if (!($342)) { - break L48; - } - $343 = HEAP32[$pOp>>2]|0; - $344 = (($343) + 4|0); - $345 = HEAP32[$344>>2]|0; - $346 = HEAP32[$pLevel>>2]|0; - $347 = (($346) + 4|0); - $348 = HEAP32[$347>>2]|0; - $349 = ($345|0)!=($348|0); - do { - if (!($349)) { - $350 = HEAP32[$pOp>>2]|0; - $351 = HEAP8[$350>>0]|0; - $352 = $351&255; - $353 = ($352|0)==(46); - $354 = HEAP32[$pOp>>2]|0; - if (!($353)) { - $387 = HEAP8[$354>>0]|0; - $388 = $387&255; - $389 = ($388|0)==(100); - if (!($389)) { - break; - } - $390 = HEAP32[$pLevel>>2]|0; - $391 = (($390) + 8|0); - $392 = HEAP32[$391>>2]|0; - $393 = HEAP32[$pOp>>2]|0; - $394 = (($393) + 4|0); - HEAP32[$394>>2] = $392; - $395 = HEAP32[$pOp>>2]|0; - HEAP8[$395>>0] = 109; - break; - } - $355 = (($354) + 8|0); - $356 = HEAP32[$355>>2]|0; - HEAP32[$x>>2] = $356; - $357 = HEAP32[$pTab>>2]|0; - $358 = (($357) + 44|0); - $359 = HEAP8[$358>>0]|0; - $360 = $359&255; - $361 = $360 & 32; - $362 = ($361|0)==(0); - if (!($362)) { - $363 = HEAP32[$pTab>>2]|0; - $364 = (_sqlite3PrimaryKeyIndex($363)|0); - HEAP32[$pPk>>2] = $364; - $365 = HEAP32[$x>>2]|0; - $366 = HEAP32[$pPk>>2]|0; - $367 = (($366) + 4|0); - $368 = HEAP32[$367>>2]|0; - $369 = (($368) + ($365<<1)|0); - $370 = HEAP16[$369>>1]|0; - $371 = $370 << 16 >> 16; - HEAP32[$x>>2] = $371; - } - $372 = HEAP32[$pIdx>>2]|0; - $373 = HEAP32[$x>>2]|0; - $374 = $373&65535; - $375 = (_sqlite3ColumnOfIndex($372,$374)|0); - $376 = $375 << 16 >> 16; - HEAP32[$x>>2] = $376; - $377 = HEAP32[$x>>2]|0; - $378 = ($377|0)>=(0); - if ($378) { - $379 = HEAP32[$x>>2]|0; - $380 = HEAP32[$pOp>>2]|0; - $381 = (($380) + 8|0); - HEAP32[$381>>2] = $379; - $382 = HEAP32[$pLevel>>2]|0; - $383 = (($382) + 8|0); - $384 = HEAP32[$383>>2]|0; - $385 = HEAP32[$pOp>>2]|0; - $386 = (($385) + 4|0); - HEAP32[$386>>2] = $384; - } - } - } while(0); - $396 = HEAP32[$k>>2]|0; - $397 = (($396) + 1)|0; - HEAP32[$k>>2] = $397; - $398 = HEAP32[$pOp>>2]|0; - $399 = (($398) + 20|0); - HEAP32[$pOp>>2] = $399; - } - } - } - } - } while(0); - $400 = HEAP32[$i>>2]|0; - $401 = (($400) + 1)|0; - HEAP32[$i>>2] = $401; - $402 = HEAP32[$pLevel>>2]|0; - $403 = (($402) + 72|0); - HEAP32[$pLevel>>2] = $403; - } - $404 = HEAP32[$0>>2]|0; - $405 = (($404) + 56|0); - $406 = HEAP32[$405>>2]|0; - $407 = HEAP32[$pParse>>2]|0; - $408 = (($407) + 424|0); - HEAP32[$408>>2] = $406; - $409 = HEAP32[$db>>2]|0; - $410 = HEAP32[$0>>2]|0; - _whereInfoFree($409,$410); - STACKTOP = sp;return; -} -function _whereInfoFree($db,$pWInfo) { - $db = $db|0; - $pWInfo = $pWInfo|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pWInfo; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - STACKTOP = sp;return; - } - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 328|0); - _whereClauseClear($5); - while(1) { - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 16|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)!=(0|0); - if (!($9)) { - break; - } - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 16|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$p>>2] = $12; - $13 = HEAP32[$p>>2]|0; - $14 = (($13) + 48|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 16|0); - HEAP32[$17>>2] = $15; - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$p>>2]|0; - _whereLoopDelete($18,$19); - } - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$1>>2]|0; - _sqlite3DbFree($20,$21); - STACKTOP = sp;return; -} -function _whereClauseClear($pWC) { - $pWC = $pWC|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $db = 0, $i = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $i = sp + 8|0; - $a = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $pWC; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 12|0); - $7 = HEAP32[$6>>2]|0; - $8 = (($7) - 1)|0; - HEAP32[$i>>2] = $8; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 20|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$a>>2] = $11; - while(1) { - $12 = HEAP32[$i>>2]|0; - $13 = ($12|0)>=(0); - if (!($13)) { - break; - } - $14 = HEAP32[$a>>2]|0; - $15 = (($14) + 20|0); - $16 = HEAP8[$15>>0]|0; - $17 = $16&255; - $18 = $17 & 1; - $19 = ($18|0)!=(0); - if ($19) { - $20 = HEAP32[$db>>2]|0; - $21 = HEAP32[$a>>2]|0; - $22 = HEAP32[$21>>2]|0; - _sqlite3ExprDelete($20,$22); - } - $23 = HEAP32[$a>>2]|0; - $24 = (($23) + 20|0); - $25 = HEAP8[$24>>0]|0; - $26 = $25&255; - $27 = $26 & 16; - $28 = ($27|0)!=(0); - if ($28) { - $29 = HEAP32[$db>>2]|0; - $30 = HEAP32[$a>>2]|0; - $31 = (($30) + 12|0); - $32 = HEAP32[$31>>2]|0; - _whereOrInfoDelete($29,$32); - } else { - $33 = HEAP32[$a>>2]|0; - $34 = (($33) + 20|0); - $35 = HEAP8[$34>>0]|0; - $36 = $35&255; - $37 = $36 & 32; - $38 = ($37|0)!=(0); - if ($38) { - $39 = HEAP32[$db>>2]|0; - $40 = HEAP32[$a>>2]|0; - $41 = (($40) + 12|0); - $42 = HEAP32[$41>>2]|0; - _whereAndInfoDelete($39,$42); - } - } - $43 = HEAP32[$i>>2]|0; - $44 = (($43) + -1)|0; - HEAP32[$i>>2] = $44; - $45 = HEAP32[$a>>2]|0; - $46 = (($45) + 48|0); - HEAP32[$a>>2] = $46; - } - $47 = HEAP32[$0>>2]|0; - $48 = (($47) + 20|0); - $49 = HEAP32[$48>>2]|0; - $50 = HEAP32[$0>>2]|0; - $51 = (($50) + 24|0); - $52 = ($49|0)!=($51|0); - if (!($52)) { - STACKTOP = sp;return; - } - $53 = HEAP32[$db>>2]|0; - $54 = HEAP32[$0>>2]|0; - $55 = (($54) + 20|0); - $56 = HEAP32[$55>>2]|0; - _sqlite3DbFree($53,$56); - STACKTOP = sp;return; -} -function _whereLoopDelete($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - _whereLoopClear($2,$3); - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$1>>2]|0; - _sqlite3DbFree($4,$5); - STACKTOP = sp;return; -} -function _whereLoopClear($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 44|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 52|0); - $7 = ($4|0)!=($6|0); - if ($7) { - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 44|0); - $11 = HEAP32[$10>>2]|0; - _sqlite3DbFree($8,$11); - } - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$1>>2]|0; - _whereLoopClearUnion($12,$13); - $14 = HEAP32[$1>>2]|0; - _whereLoopInit($14); - STACKTOP = sp;return; -} -function _whereLoopClearUnion($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 36|0); - $4 = HEAP32[$3>>2]|0; - $5 = $4 & 17408; - $6 = ($5|0)!=(0); - if (!($6)) { - STACKTOP = sp;return; - } - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 36|0); - $9 = HEAP32[$8>>2]|0; - $10 = $9 & 1024; - $11 = ($10|0)!=(0); - if ($11) { - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 24|0); - $14 = (($13) + 4|0); - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - $17 = ($16|0)!=(0); - if ($17) { - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 24|0); - $20 = (($19) + 8|0); - $21 = HEAP32[$20>>2]|0; - _sqlite3_free($21); - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 24|0); - $24 = (($23) + 4|0); - HEAP8[$24>>0] = 0; - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 24|0); - $27 = (($26) + 8|0); - HEAP32[$27>>2] = 0; - STACKTOP = sp;return; - } - } - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 36|0); - $30 = HEAP32[$29>>2]|0; - $31 = $30 & 16384; - $32 = ($31|0)!=(0); - if (!($32)) { - STACKTOP = sp;return; - } - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 24|0); - $35 = (($34) + 4|0); - $36 = HEAP32[$35>>2]|0; - $37 = ($36|0)!=(0|0); - if (!($37)) { - STACKTOP = sp;return; - } - $38 = HEAP32[$0>>2]|0; - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 24|0); - $41 = (($40) + 4|0); - $42 = HEAP32[$41>>2]|0; - $43 = (($42) + 16|0); - $44 = HEAP32[$43>>2]|0; - _sqlite3DbFree($38,$44); - $45 = HEAP32[$1>>2]|0; - $46 = (($45) + 24|0); - $47 = (($46) + 4|0); - $48 = HEAP32[$47>>2]|0; - $49 = (($48) + 40|0); - $50 = HEAP32[$49>>2]|0; - _sqlite3KeyInfoUnref($50); - $51 = HEAP32[$0>>2]|0; - $52 = HEAP32[$1>>2]|0; - $53 = (($52) + 24|0); - $54 = (($53) + 4|0); - $55 = HEAP32[$54>>2]|0; - _sqlite3DbFree($51,$55); - $56 = HEAP32[$1>>2]|0; - $57 = (($56) + 24|0); - $58 = (($57) + 4|0); - HEAP32[$58>>2] = 0; - STACKTOP = sp;return; -} -function _whereLoopInit($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 52|0); - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 44|0); - HEAP32[$4>>2] = $2; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 40|0); - HEAP16[$6>>1] = 0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 42|0); - HEAP16[$8>>1] = 4; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 36|0); - HEAP32[$10>>2] = 0; - STACKTOP = sp;return; -} -function _whereOrInfoDelete($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - _whereClauseClear($2); - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - _sqlite3DbFree($3,$4); - STACKTOP = sp;return; -} -function _whereAndInfoDelete($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - _whereClauseClear($2); - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - _sqlite3DbFree($3,$4); - STACKTOP = sp;return; -} -function _whereClauseInit($pWC,$pWInfo) { - $pWC = $pWC|0; - $pWInfo = $pWInfo|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pWC; - HEAP32[$1>>2] = $pWInfo; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$0>>2]|0; - HEAP32[$3>>2] = $2; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 4|0); - HEAP32[$5>>2] = 0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 12|0); - HEAP32[$7>>2] = 0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 16|0); - HEAP32[$9>>2] = 8; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 24|0); - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 20|0); - HEAP32[$13>>2] = $11; - STACKTOP = sp;return; -} -function _whereSplit($pWC,$pExpr,$op) { - $pWC = $pWC|0; - $pExpr = $pExpr|0; - $op = $op|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - $2 = sp + 8|0; - HEAP32[$0>>2] = $pWC; - HEAP32[$1>>2] = $pExpr; - HEAP8[$2>>0] = $op; - $3 = HEAP8[$2>>0]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 8|0); - HEAP8[$5>>0] = $3; - $6 = HEAP32[$1>>2]|0; - $7 = ($6|0)==(0|0); - if ($7) { - STACKTOP = sp;return; - } - $8 = HEAP32[$1>>2]|0; - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - $11 = HEAP8[$2>>0]|0; - $12 = $11&255; - $13 = ($10|0)!=($12|0); - $14 = HEAP32[$0>>2]|0; - $15 = HEAP32[$1>>2]|0; - if ($13) { - (_whereClauseInsert($14,$15,0)|0); - STACKTOP = sp;return; - } else { - $16 = (($15) + 12|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP8[$2>>0]|0; - _whereSplit($14,$17,$18); - $19 = HEAP32[$0>>2]|0; - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 16|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP8[$2>>0]|0; - _whereSplit($19,$22,$23); - STACKTOP = sp;return; - } -} -function _createMask($pMaskSet,$iCursor) { - $pMaskSet = $pMaskSet|0; - $iCursor = $iCursor|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pMaskSet; - HEAP32[$1>>2] = $iCursor; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (($4) + 1)|0; - HEAP32[$3>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 4|0); - $8 = (($7) + ($4<<2)|0); - HEAP32[$8>>2] = $2; - STACKTOP = sp;return; -} -function _exprAnalyzeAll($pTabList,$pWC) { - $pTabList = $pTabList|0; - $pWC = $pWC|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $pTabList; - HEAP32[$1>>2] = $pWC; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 12|0); - $4 = HEAP32[$3>>2]|0; - $5 = (($4) - 1)|0; - HEAP32[$i>>2] = $5; - while(1) { - $6 = HEAP32[$i>>2]|0; - $7 = ($6|0)>=(0); - if (!($7)) { - break; - } - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$i>>2]|0; - _exprAnalyze($8,$9,$10); - $11 = HEAP32[$i>>2]|0; - $12 = (($11) + -1)|0; - HEAP32[$i>>2] = $12; - } - STACKTOP = sp;return; -} -function _isDistinctRedundant($pParse,$pTabList,$pWC,$pDistinct) { - $pParse = $pParse|0; - $pTabList = $pTabList|0; - $pWC = $pWC|0; - $pDistinct = $pDistinct|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; - var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; - var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; - var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; - var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; - var $98 = 0, $99 = 0, $i = 0, $iBase = 0, $iCol = 0, $iIdxCol = 0, $p = 0, $pIdx = 0, $pTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $4 = sp + 24|0; - $pTab = sp + 20|0; - $pIdx = sp + 16|0; - $i = sp + 12|0; - $iBase = sp + 8|0; - $p = sp + 4|0; - $iCol = sp + 44|0; - $iIdxCol = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pTabList; - HEAP32[$3>>2] = $pWC; - HEAP32[$4>>2] = $pDistinct; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(1); - if ($7) { - HEAP32[$0>>2] = 0; - $101 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($101|0); - } - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + 8|0); - $10 = (($9) + 40|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$iBase>>2] = $11; - $12 = HEAP32[$2>>2]|0; - $13 = (($12) + 8|0); - $14 = (($13) + 16|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$pTab>>2] = $15; - HEAP32[$i>>2] = 0; - while(1) { - $16 = HEAP32[$i>>2]|0; - $17 = HEAP32[$4>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = ($16|0)<($18|0); - if (!($19)) { - break; - } - $20 = HEAP32[$i>>2]|0; - $21 = HEAP32[$4>>2]|0; - $22 = (($21) + 4|0); - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + (($20*20)|0)|0); - $25 = HEAP32[$24>>2]|0; - $26 = (_sqlite3ExprSkipCollate($25)|0); - HEAP32[$p>>2] = $26; - $27 = HEAP32[$p>>2]|0; - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = ($29|0)==(154); - if ($30) { - $31 = HEAP32[$p>>2]|0; - $32 = (($31) + 28|0); - $33 = HEAP32[$32>>2]|0; - $34 = HEAP32[$iBase>>2]|0; - $35 = ($33|0)==($34|0); - if ($35) { - $36 = HEAP32[$p>>2]|0; - $37 = (($36) + 32|0); - $38 = HEAP16[$37>>1]|0; - $39 = $38 << 16 >> 16; - $40 = ($39|0)<(0); - if ($40) { - label = 8; - break; - } - } - } - $41 = HEAP32[$i>>2]|0; - $42 = (($41) + 1)|0; - HEAP32[$i>>2] = $42; - } - if ((label|0) == 8) { - HEAP32[$0>>2] = 1; - $101 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($101|0); - } - $43 = HEAP32[$pTab>>2]|0; - $44 = (($43) + 8|0); - $45 = HEAP32[$44>>2]|0; - HEAP32[$pIdx>>2] = $45; - while(1) { - $46 = HEAP32[$pIdx>>2]|0; - $47 = ($46|0)!=(0|0); - if (!($47)) { - label = 22; - break; - } - $48 = HEAP32[$pIdx>>2]|0; - $49 = (($48) + 54|0); - $50 = HEAP8[$49>>0]|0; - $51 = $50&255; - $52 = ($51|0)==(0); - if (!($52)) { - HEAP32[$i>>2] = 0; - while(1) { - $53 = HEAP32[$i>>2]|0; - $54 = HEAP32[$pIdx>>2]|0; - $55 = (($54) + 50|0); - $56 = HEAP16[$55>>1]|0; - $57 = $56&65535; - $58 = ($53|0)<($57|0); - if (!($58)) { - break; - } - $59 = HEAP32[$i>>2]|0; - $60 = HEAP32[$pIdx>>2]|0; - $61 = (($60) + 4|0); - $62 = HEAP32[$61>>2]|0; - $63 = (($62) + ($59<<1)|0); - $64 = HEAP16[$63>>1]|0; - HEAP16[$iCol>>1] = $64; - $65 = HEAP32[$3>>2]|0; - $66 = HEAP32[$iBase>>2]|0; - $67 = HEAP16[$iCol>>1]|0; - $68 = $67 << 16 >> 16; - $69 = HEAP32[$pIdx>>2]|0; - $70 = (_findTerm($65,$66,$68,-1,-1,2,$69)|0); - $71 = (0|0)==($70|0); - if ($71) { - $72 = HEAP32[$1>>2]|0; - $73 = HEAP32[$4>>2]|0; - $74 = HEAP32[$iBase>>2]|0; - $75 = HEAP32[$pIdx>>2]|0; - $76 = HEAP32[$i>>2]|0; - $77 = (_findIndexCol($72,$73,$74,$75,$76)|0); - HEAP32[$iIdxCol>>2] = $77; - $78 = HEAP32[$iIdxCol>>2]|0; - $79 = ($78|0)<(0); - if ($79) { - break; - } - $80 = HEAP16[$iCol>>1]|0; - $81 = $80 << 16 >> 16; - $82 = HEAP32[$pTab>>2]|0; - $83 = (($82) + 4|0); - $84 = HEAP32[$83>>2]|0; - $85 = (($84) + (($81*24)|0)|0); - $86 = (($85) + 20|0); - $87 = HEAP8[$86>>0]|0; - $88 = $87&255; - $89 = ($88|0)==(0); - if ($89) { - break; - } - } - $90 = HEAP32[$i>>2]|0; - $91 = (($90) + 1)|0; - HEAP32[$i>>2] = $91; - } - $92 = HEAP32[$i>>2]|0; - $93 = HEAP32[$pIdx>>2]|0; - $94 = (($93) + 50|0); - $95 = HEAP16[$94>>1]|0; - $96 = $95&65535; - $97 = ($92|0)==($96|0); - if ($97) { - label = 20; - break; - } - } - $98 = HEAP32[$pIdx>>2]|0; - $99 = (($98) + 20|0); - $100 = HEAP32[$99>>2]|0; - HEAP32[$pIdx>>2] = $100; - } - if ((label|0) == 20) { - HEAP32[$0>>2] = 1; - $101 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($101|0); - } - else if ((label|0) == 22) { - HEAP32[$0>>2] = 0; - $101 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($101|0); - } - return 0|0; -} -function _whereShortCut($pBuilder) { - $pBuilder = $pBuilder|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $21 = 0, $22 = 0; - var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; - var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; - var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; - var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; - var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iCur = 0, $j = 0, $pIdx = 0, $pItem = 0, $pLoop = 0, $pTab = 0, $pTerm = 0, $pWC = 0, $pWInfo = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $pWInfo = sp + 32|0; - $pItem = sp + 28|0; - $pWC = sp + 24|0; - $pTerm = sp + 20|0; - $pLoop = sp + 16|0; - $iCur = sp + 12|0; - $j = sp + 8|0; - $pTab = sp + 4|0; - $pIdx = sp; - HEAP32[$1>>2] = $pBuilder; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$pWInfo>>2] = $3; - $4 = HEAP32[$pWInfo>>2]|0; - $5 = (($4) + 34|0); - $6 = HEAP16[$5>>1]|0; - $7 = $6&65535; - $8 = $7 & 32; - $9 = ($8|0)!=(0); - if ($9) { - HEAP32[$0>>2] = 0; - $203 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($203|0); - } - $10 = HEAP32[$pWInfo>>2]|0; - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + 8|0); - HEAP32[$pItem>>2] = $13; - $14 = HEAP32[$pItem>>2]|0; - $15 = (($14) + 16|0); - $16 = HEAP32[$15>>2]|0; - HEAP32[$pTab>>2] = $16; - $17 = HEAP32[$pTab>>2]|0; - $18 = (($17) + 44|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = $20 & 16; - $22 = ($21|0)!=(0); - if ($22) { - HEAP32[$0>>2] = 0; - $203 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($203|0); - } - $23 = HEAP32[$pItem>>2]|0; - $24 = (($23) + 64|0); - $25 = HEAP32[$24>>2]|0; - $26 = ($25|0)!=(0|0); - if ($26) { - HEAP32[$0>>2] = 0; - $203 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($203|0); - } - $27 = HEAP32[$pItem>>2]|0; - $28 = (($27) + 40|0); - $29 = HEAP32[$28>>2]|0; - HEAP32[$iCur>>2] = $29; - $30 = HEAP32[$pWInfo>>2]|0; - $31 = (($30) + 328|0); - HEAP32[$pWC>>2] = $31; - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 12|0); - $34 = HEAP32[$33>>2]|0; - HEAP32[$pLoop>>2] = $34; - $35 = HEAP32[$pLoop>>2]|0; - $36 = (($35) + 36|0); - HEAP32[$36>>2] = 0; - $37 = HEAP32[$pLoop>>2]|0; - $38 = (($37) + 24|0); - $39 = (($38) + 2|0); - HEAP16[$39>>1] = 0; - $40 = HEAP32[$pWC>>2]|0; - $41 = HEAP32[$iCur>>2]|0; - $42 = (_findTerm($40,$41,-1,0,0,2,0)|0); - HEAP32[$pTerm>>2] = $42; - $43 = HEAP32[$pTerm>>2]|0; - $44 = ($43|0)!=(0|0); - L13: do { - if ($44) { - $45 = HEAP32[$pLoop>>2]|0; - $46 = (($45) + 36|0); - HEAP32[$46>>2] = 4353; - $47 = HEAP32[$pTerm>>2]|0; - $48 = HEAP32[$pLoop>>2]|0; - $49 = (($48) + 44|0); - $50 = HEAP32[$49>>2]|0; - HEAP32[$50>>2] = $47; - $51 = HEAP32[$pLoop>>2]|0; - $52 = (($51) + 40|0); - HEAP16[$52>>1] = 1; - $53 = HEAP32[$pLoop>>2]|0; - $54 = (($53) + 24|0); - HEAP16[$54>>1] = 1; - $55 = HEAP32[$pLoop>>2]|0; - $56 = (($55) + 20|0); - HEAP16[$56>>1] = 33; - } else { - $57 = HEAP32[$pTab>>2]|0; - $58 = (($57) + 8|0); - $59 = HEAP32[$58>>2]|0; - HEAP32[$pIdx>>2] = $59; - while(1) { - $60 = HEAP32[$pIdx>>2]|0; - $61 = ($60|0)!=(0|0); - if (!($61)) { - break L13; - } - $62 = HEAP32[$pIdx>>2]|0; - $63 = (($62) + 54|0); - $64 = HEAP8[$63>>0]|0; - $65 = $64&255; - $66 = ($65|0)==(0); - if (!($66)) { - $67 = HEAP32[$pIdx>>2]|0; - $68 = (($67) + 36|0); - $69 = HEAP32[$68>>2]|0; - $70 = ($69|0)!=(0|0); - if (!($70)) { - $71 = HEAP32[$pIdx>>2]|0; - $72 = (($71) + 50|0); - $73 = HEAP16[$72>>1]|0; - $74 = $73&65535; - $75 = ($74|0)>(4); - if (!($75)) { - HEAP32[$j>>2] = 0; - while(1) { - $76 = HEAP32[$j>>2]|0; - $77 = HEAP32[$pIdx>>2]|0; - $78 = (($77) + 50|0); - $79 = HEAP16[$78>>1]|0; - $80 = $79&65535; - $81 = ($76|0)<($80|0); - if (!($81)) { - break; - } - $82 = HEAP32[$pWC>>2]|0; - $83 = HEAP32[$iCur>>2]|0; - $84 = HEAP32[$j>>2]|0; - $85 = HEAP32[$pIdx>>2]|0; - $86 = (($85) + 4|0); - $87 = HEAP32[$86>>2]|0; - $88 = (($87) + ($84<<1)|0); - $89 = HEAP16[$88>>1]|0; - $90 = $89 << 16 >> 16; - $91 = HEAP32[$pIdx>>2]|0; - $92 = (_findTerm($82,$83,$90,0,0,2,$91)|0); - HEAP32[$pTerm>>2] = $92; - $93 = HEAP32[$pTerm>>2]|0; - $94 = ($93|0)==(0|0); - if ($94) { - break; - } - $95 = HEAP32[$pTerm>>2]|0; - $96 = HEAP32[$j>>2]|0; - $97 = HEAP32[$pLoop>>2]|0; - $98 = (($97) + 44|0); - $99 = HEAP32[$98>>2]|0; - $100 = (($99) + ($96<<2)|0); - HEAP32[$100>>2] = $95; - $101 = HEAP32[$j>>2]|0; - $102 = (($101) + 1)|0; - HEAP32[$j>>2] = $102; - } - $103 = HEAP32[$j>>2]|0; - $104 = HEAP32[$pIdx>>2]|0; - $105 = (($104) + 50|0); - $106 = HEAP16[$105>>1]|0; - $107 = $106&65535; - $108 = ($103|0)!=($107|0); - if (!($108)) { - break; - } - } - } - } - $154 = HEAP32[$pIdx>>2]|0; - $155 = (($154) + 20|0); - $156 = HEAP32[$155>>2]|0; - HEAP32[$pIdx>>2] = $156; - } - $109 = HEAP32[$pLoop>>2]|0; - $110 = (($109) + 36|0); - HEAP32[$110>>2] = 4609; - $111 = HEAP32[$pIdx>>2]|0; - $112 = (($111) + 55|0); - $113 = HEAP8[$112>>0]|0; - $114 = ($113&255) >>> 5; - $115 = $114 & 1; - $116 = $115&255; - $117 = ($116|0)!=(0); - if ($117) { - label = 21; - } else { - $118 = HEAP32[$pItem>>2]|0; - $119 = (($118) + 56|0); - $120 = $119; - $121 = $120; - $122 = HEAP32[$121>>2]|0; - $123 = (($120) + 4)|0; - $124 = $123; - $125 = HEAP32[$124>>2]|0; - $126 = HEAP32[$pIdx>>2]|0; - $127 = (_columnsInIndex($126)|0); - $128 = tempRet0; - $129 = $127 ^ -1; - $130 = $128 ^ -1; - $131 = $122 & $129; - $132 = $125 & $130; - $133 = ($131|0)==(0); - $134 = ($132|0)==(0); - $135 = $133 & $134; - if ($135) { - label = 21; - } - } - if ((label|0) == 21) { - $136 = HEAP32[$pLoop>>2]|0; - $137 = (($136) + 36|0); - $138 = HEAP32[$137>>2]|0; - $139 = $138 | 64; - HEAP32[$137>>2] = $139; - } - $140 = HEAP32[$j>>2]|0; - $141 = $140&65535; - $142 = HEAP32[$pLoop>>2]|0; - $143 = (($142) + 40|0); - HEAP16[$143>>1] = $141; - $144 = HEAP32[$j>>2]|0; - $145 = $144&65535; - $146 = HEAP32[$pLoop>>2]|0; - $147 = (($146) + 24|0); - HEAP16[$147>>1] = $145; - $148 = HEAP32[$pIdx>>2]|0; - $149 = HEAP32[$pLoop>>2]|0; - $150 = (($149) + 24|0); - $151 = (($150) + 4|0); - HEAP32[$151>>2] = $148; - $152 = HEAP32[$pLoop>>2]|0; - $153 = (($152) + 20|0); - HEAP16[$153>>1] = 39; - } - } while(0); - $157 = HEAP32[$pLoop>>2]|0; - $158 = (($157) + 36|0); - $159 = HEAP32[$158>>2]|0; - $160 = ($159|0)!=(0); - if (!($160)) { - HEAP32[$0>>2] = 0; - $203 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($203|0); - } - $161 = HEAP32[$pLoop>>2]|0; - $162 = (($161) + 22|0); - HEAP16[$162>>1] = 1; - $163 = HEAP32[$pLoop>>2]|0; - $164 = HEAP32[$pWInfo>>2]|0; - $165 = (($164) + 736|0); - $166 = (($165) + 56|0); - HEAP32[$166>>2] = $163; - $167 = HEAP32[$pWInfo>>2]|0; - $168 = (($167) + 68|0); - $169 = HEAP32[$iCur>>2]|0; - $170 = (_getMask($168,$169)|0); - $171 = tempRet0; - $172 = HEAP32[$pLoop>>2]|0; - $173 = (($172) + 8|0); - $174 = $173; - $175 = $174; - HEAP32[$175>>2] = $170; - $176 = (($174) + 4)|0; - $177 = $176; - HEAP32[$177>>2] = $171; - $178 = HEAP32[$iCur>>2]|0; - $179 = HEAP32[$pWInfo>>2]|0; - $180 = (($179) + 736|0); - $181 = (($180) + 4|0); - HEAP32[$181>>2] = $178; - $182 = HEAP32[$pWInfo>>2]|0; - $183 = (($182) + 32|0); - HEAP16[$183>>1] = 1; - $184 = HEAP32[$pWInfo>>2]|0; - $185 = (($184) + 8|0); - $186 = HEAP32[$185>>2]|0; - $187 = ($186|0)!=(0|0); - if ($187) { - $188 = HEAP32[$pWInfo>>2]|0; - $189 = (($188) + 8|0); - $190 = HEAP32[$189>>2]|0; - $191 = HEAP32[$190>>2]|0; - $192 = $191&255; - $193 = HEAP32[$pWInfo>>2]|0; - $194 = (($193) + 36|0); - HEAP8[$194>>0] = $192; - } - $195 = HEAP32[$pWInfo>>2]|0; - $196 = (($195) + 34|0); - $197 = HEAP16[$196>>1]|0; - $198 = $197&65535; - $199 = $198 & 1024; - $200 = ($199|0)!=(0); - if ($200) { - $201 = HEAP32[$pWInfo>>2]|0; - $202 = (($201) + 40|0); - HEAP8[$202>>0] = 1; - } - HEAP32[$0>>2] = 1; - $203 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($203|0); -} -function _whereLoopAddAll($pBuilder) { - $pBuilder = $pBuilder|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0; - var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; - var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; - var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; - var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; - var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $iTab = 0, $mExtra = 0, $mPrior = 0, $nTabList = 0, $pItem = 0, $pNew = 0, $pTabList = 0, $pWInfo = 0, $priorJoinType = 0; - var $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 48|0; - $pWInfo = sp + 44|0; - $mExtra = sp + 8|0; - $mPrior = sp; - $iTab = sp + 40|0; - $pTabList = sp + 36|0; - $pItem = sp + 32|0; - $db = sp + 28|0; - $nTabList = sp + 24|0; - $rc = sp + 20|0; - $priorJoinType = sp + 52|0; - $pNew = sp + 16|0; - HEAP32[$0>>2] = $pBuilder; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$pWInfo>>2] = $2; - $3 = $mExtra; - $4 = $3; - HEAP32[$4>>2] = 0; - $5 = (($3) + 4)|0; - $6 = $5; - HEAP32[$6>>2] = 0; - $7 = $mPrior; - $8 = $7; - HEAP32[$8>>2] = 0; - $9 = (($7) + 4)|0; - $10 = $9; - HEAP32[$10>>2] = 0; - $11 = HEAP32[$pWInfo>>2]|0; - $12 = (($11) + 4|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pTabList>>2] = $13; - $14 = HEAP32[$pWInfo>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$15>>2]|0; - HEAP32[$db>>2] = $16; - $17 = HEAP32[$pWInfo>>2]|0; - $18 = (($17) + 41|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - HEAP32[$nTabList>>2] = $20; - HEAP32[$rc>>2] = 0; - HEAP8[$priorJoinType>>0] = 0; - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 12|0); - $23 = HEAP32[$22>>2]|0; - HEAP32[$pNew>>2] = $23; - $24 = HEAP32[$pNew>>2]|0; - _whereLoopInit($24); - HEAP32[$iTab>>2] = 0; - $25 = HEAP32[$pTabList>>2]|0; - $26 = (($25) + 8|0); - HEAP32[$pItem>>2] = $26; - while(1) { - $27 = HEAP32[$iTab>>2]|0; - $28 = HEAP32[$nTabList>>2]|0; - $29 = ($27|0)<($28|0); - if (!($29)) { - label = 13; - break; - } - $30 = HEAP32[$iTab>>2]|0; - $31 = $30&255; - $32 = HEAP32[$pNew>>2]|0; - $33 = (($32) + 16|0); - HEAP8[$33>>0] = $31; - $34 = HEAP32[$pWInfo>>2]|0; - $35 = (($34) + 68|0); - $36 = HEAP32[$pItem>>2]|0; - $37 = (($36) + 40|0); - $38 = HEAP32[$37>>2]|0; - $39 = (_getMask($35,$38)|0); - $40 = tempRet0; - $41 = HEAP32[$pNew>>2]|0; - $42 = (($41) + 8|0); - $43 = $42; - $44 = $43; - HEAP32[$44>>2] = $39; - $45 = (($43) + 4)|0; - $46 = $45; - HEAP32[$46>>2] = $40; - $47 = HEAP32[$pItem>>2]|0; - $48 = (($47) + 36|0); - $49 = HEAP8[$48>>0]|0; - $50 = $49&255; - $51 = HEAP8[$priorJoinType>>0]|0; - $52 = $51&255; - $53 = $50 | $52; - $54 = $53 & 10; - $55 = ($54|0)!=(0); - if ($55) { - $56 = $mPrior; - $57 = $56; - $58 = HEAP32[$57>>2]|0; - $59 = (($56) + 4)|0; - $60 = $59; - $61 = HEAP32[$60>>2]|0; - $62 = $mExtra; - $63 = $62; - HEAP32[$63>>2] = $58; - $64 = (($62) + 4)|0; - $65 = $64; - HEAP32[$65>>2] = $61; - } - $66 = HEAP32[$pItem>>2]|0; - $67 = (($66) + 36|0); - $68 = HEAP8[$67>>0]|0; - HEAP8[$priorJoinType>>0] = $68; - $69 = HEAP32[$pItem>>2]|0; - $70 = (($69) + 16|0); - $71 = HEAP32[$70>>2]|0; - $72 = (($71) + 44|0); - $73 = HEAP8[$72>>0]|0; - $74 = $73&255; - $75 = $74 & 16; - $76 = ($75|0)!=(0); - $77 = HEAP32[$0>>2]|0; - $78 = $mExtra; - $79 = $78; - $80 = HEAP32[$79>>2]|0; - $81 = (($78) + 4)|0; - $82 = $81; - $83 = HEAP32[$82>>2]|0; - if ($76) { - $84 = (_whereLoopAddVirtual($77,$80,$83)|0); - HEAP32[$rc>>2] = $84; - } else { - $85 = (_whereLoopAddBtree($77,$80,$83)|0); - HEAP32[$rc>>2] = $85; - } - $86 = HEAP32[$rc>>2]|0; - $87 = ($86|0)==(0); - if ($87) { - $88 = HEAP32[$0>>2]|0; - $89 = $mExtra; - $90 = $89; - $91 = HEAP32[$90>>2]|0; - $92 = (($89) + 4)|0; - $93 = $92; - $94 = HEAP32[$93>>2]|0; - $95 = (_whereLoopAddOr($88,$91,$94)|0); - HEAP32[$rc>>2] = $95; - } - $96 = HEAP32[$pNew>>2]|0; - $97 = (($96) + 8|0); - $98 = $97; - $99 = $98; - $100 = HEAP32[$99>>2]|0; - $101 = (($98) + 4)|0; - $102 = $101; - $103 = HEAP32[$102>>2]|0; - $104 = $mPrior; - $105 = $104; - $106 = HEAP32[$105>>2]|0; - $107 = (($104) + 4)|0; - $108 = $107; - $109 = HEAP32[$108>>2]|0; - $110 = $106 | $100; - $111 = $109 | $103; - $112 = $mPrior; - $113 = $112; - HEAP32[$113>>2] = $110; - $114 = (($112) + 4)|0; - $115 = $114; - HEAP32[$115>>2] = $111; - $116 = HEAP32[$rc>>2]|0; - $117 = ($116|0)!=(0); - if ($117) { - label = 13; - break; - } - $118 = HEAP32[$db>>2]|0; - $119 = (($118) + 64|0); - $120 = HEAP8[$119>>0]|0; - $121 = $120&255; - $122 = ($121|0)!=(0); - if ($122) { - label = 13; - break; - } - $123 = HEAP32[$iTab>>2]|0; - $124 = (($123) + 1)|0; - HEAP32[$iTab>>2] = $124; - $125 = HEAP32[$pItem>>2]|0; - $126 = (($125) + 72|0); - HEAP32[$pItem>>2] = $126; - } - if ((label|0) == 13) { - $127 = HEAP32[$db>>2]|0; - $128 = HEAP32[$pNew>>2]|0; - _whereLoopClear($127,$128); - $129 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($129|0); - } - return 0|0; -} -function _wherePathSolver($pWInfo,$nRowEst) { - $pWInfo = $pWInfo|0; - $nRowEst = $nRowEst|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; - var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; - var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; - var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; - var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; - var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; - var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; - var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; - var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; - var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; - var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; - var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; - var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; - var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aFrom = 0, $aTo = 0, $db = 0, $iLoop = 0, $ii = 0; - var $isOrdered = 0, $jj = 0, $maskNew = 0, $mxChoice = 0, $mxCost = 0, $mxI = 0, $mxOut = 0, $nFrom = 0, $nLoop = 0, $nOrder = 0, $nOrderBy = 0, $nOut = 0, $nTo = 0, $notUsed = 0, $notUsed1 = 0, $pFrom = 0, $pLevel = 0, $pParse = 0, $pSpace = 0, $pTo = 0; - var $pWLoop = 0, $pX = 0, $rCost = 0, $rScale = 0, $rSortCost = 0, $rc = 0, $revMask = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 144|0; - $vararg_buffer = sp + 32|0; - $0 = sp + 124|0; - $1 = sp + 120|0; - $2 = sp + 140|0; - $mxChoice = sp + 116|0; - $nLoop = sp + 112|0; - $pParse = sp + 108|0; - $db = sp + 104|0; - $iLoop = sp + 100|0; - $ii = sp + 96|0; - $jj = sp + 92|0; - $mxI = sp + 88|0; - $nOrderBy = sp + 84|0; - $rCost = sp + 138|0; - $nOut = sp + 136|0; - $mxCost = sp + 134|0; - $mxOut = sp + 132|0; - $nTo = sp + 80|0; - $nFrom = sp + 76|0; - $aFrom = sp + 72|0; - $aTo = sp + 68|0; - $pFrom = sp + 64|0; - $pTo = sp + 60|0; - $pWLoop = sp + 56|0; - $pX = sp + 52|0; - $pSpace = sp + 48|0; - $maskNew = sp + 24|0; - $revMask = sp + 16|0; - $isOrdered = sp + 142|0; - $rScale = sp + 130|0; - $rSortCost = sp + 128|0; - $pLevel = sp + 44|0; - $notUsed = sp + 8|0; - $rc = sp + 40|0; - $notUsed1 = sp; - $nOrder = sp + 36|0; - HEAP32[$1>>2] = $pWInfo; - HEAP16[$2>>1] = $nRowEst; - HEAP32[$mxI>>2] = 0; - HEAP16[$mxCost>>1] = 0; - HEAP16[$mxOut>>1] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$pParse>>2] = $4; - $5 = HEAP32[$pParse>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 41|0); - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - HEAP32[$nLoop>>2] = $10; - $11 = HEAP32[$nLoop>>2]|0; - $12 = ($11|0)<=(1); - if ($12) { - $16 = 1; - } else { - $13 = HEAP32[$nLoop>>2]|0; - $14 = ($13|0)==(2); - $15 = $14 ? 5 : 10; - $16 = $15; - } - HEAP32[$mxChoice>>2] = $16; - $17 = HEAP32[$nLoop>>2]|0; - $18 = $17<<2; - $19 = (32 + ($18))|0; - $20 = HEAP32[$mxChoice>>2]|0; - $21 = Math_imul($19, $20)|0; - $22 = $21<<1; - HEAP32[$ii>>2] = $22; - $23 = HEAP32[$db>>2]|0; - $24 = HEAP32[$ii>>2]|0; - $25 = (_sqlite3DbMallocRaw($23,$24)|0); - HEAP32[$pSpace>>2] = $25; - $26 = HEAP32[$pSpace>>2]|0; - $27 = ($26|0)==(0|0); - if ($27) { - HEAP32[$0>>2] = 7; - $674 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($674|0); - } - $28 = HEAP32[$pSpace>>2]|0; - HEAP32[$aTo>>2] = $28; - $29 = HEAP32[$aTo>>2]|0; - $30 = HEAP32[$mxChoice>>2]|0; - $31 = (($29) + ($30<<5)|0); - HEAP32[$aFrom>>2] = $31; - $32 = HEAP32[$aFrom>>2]|0; - ;HEAP32[$32+0>>2]=0|0;HEAP32[$32+4>>2]=0|0;HEAP32[$32+8>>2]=0|0;HEAP32[$32+12>>2]=0|0;HEAP32[$32+16>>2]=0|0;HEAP32[$32+20>>2]=0|0;HEAP32[$32+24>>2]=0|0;HEAP32[$32+28>>2]=0|0; - $33 = HEAP32[$aFrom>>2]|0; - $34 = HEAP32[$mxChoice>>2]|0; - $35 = (($33) + ($34<<5)|0); - HEAP32[$pX>>2] = $35; - $36 = HEAP32[$mxChoice>>2]|0; - $37 = $36<<1; - HEAP32[$ii>>2] = $37; - $38 = HEAP32[$aTo>>2]|0; - HEAP32[$pFrom>>2] = $38; - while(1) { - $39 = HEAP32[$ii>>2]|0; - $40 = ($39|0)>(0); - if (!($40)) { - break; - } - $41 = HEAP32[$pX>>2]|0; - $42 = HEAP32[$pFrom>>2]|0; - $43 = (($42) + 24|0); - HEAP32[$43>>2] = $41; - $44 = HEAP32[$ii>>2]|0; - $45 = (($44) + -1)|0; - HEAP32[$ii>>2] = $45; - $46 = HEAP32[$pFrom>>2]|0; - $47 = (($46) + 32|0); - HEAP32[$pFrom>>2] = $47; - $48 = HEAP32[$nLoop>>2]|0; - $49 = HEAP32[$pX>>2]|0; - $50 = (($49) + ($48<<2)|0); - HEAP32[$pX>>2] = $50; - } - $51 = HEAP32[$pParse>>2]|0; - $52 = (($51) + 424|0); - $53 = HEAP32[$52>>2]|0; - $54 = ($53>>>0)<(46); - if ($54) { - $55 = HEAP32[$pParse>>2]|0; - $56 = (($55) + 424|0); - $57 = HEAP32[$56>>2]|0; - $59 = $57; - } else { - $59 = 46; - } - $58 = $59&65535; - $60 = HEAP32[$aFrom>>2]|0; - $61 = (($60) + 16|0); - HEAP16[$61>>1] = $58; - HEAP32[$nFrom>>2] = 1; - $62 = HEAP32[$1>>2]|0; - $63 = (($62) + 8|0); - $64 = HEAP32[$63>>2]|0; - $65 = ($64|0)==(0|0); - if ($65) { - label = 12; - } else { - $66 = HEAP16[$2>>1]|0; - $67 = $66 << 16 >> 16; - $68 = ($67|0)==(0); - if ($68) { - label = 12; - } else { - $71 = HEAP32[$nLoop>>2]|0; - $72 = ($71|0)>(0); - $73 = $72 ? -1 : 1; - $74 = $73&255; - $75 = HEAP32[$aFrom>>2]|0; - $76 = (($75) + 20|0); - HEAP8[$76>>0] = $74; - $77 = HEAP32[$1>>2]|0; - $78 = (($77) + 8|0); - $79 = HEAP32[$78>>2]|0; - $80 = HEAP32[$79>>2]|0; - HEAP32[$nOrderBy>>2] = $80; - } - } - if ((label|0) == 12) { - $69 = HEAP32[$aFrom>>2]|0; - $70 = (($69) + 20|0); - HEAP8[$70>>0] = 0; - HEAP32[$nOrderBy>>2] = 0; - } - HEAP32[$iLoop>>2] = 0; - while(1) { - $81 = HEAP32[$iLoop>>2]|0; - $82 = HEAP32[$nLoop>>2]|0; - $83 = ($81|0)<($82|0); - if (!($83)) { - break; - } - HEAP32[$nTo>>2] = 0; - HEAP32[$ii>>2] = 0; - $84 = HEAP32[$aFrom>>2]|0; - HEAP32[$pFrom>>2] = $84; - while(1) { - $85 = HEAP32[$ii>>2]|0; - $86 = HEAP32[$nFrom>>2]|0; - $87 = ($85|0)<($86|0); - if (!($87)) { - break; - } - $88 = HEAP32[$1>>2]|0; - $89 = (($88) + 16|0); - $90 = HEAP32[$89>>2]|0; - HEAP32[$pWLoop>>2] = $90; - while(1) { - $91 = HEAP32[$pWLoop>>2]|0; - $92 = ($91|0)!=(0|0); - if (!($92)) { - break; - } - $93 = $revMask; - $94 = $93; - HEAP32[$94>>2] = 0; - $95 = (($93) + 4)|0; - $96 = $95; - HEAP32[$96>>2] = 0; - $97 = HEAP32[$pFrom>>2]|0; - $98 = (($97) + 20|0); - $99 = HEAP8[$98>>0]|0; - HEAP8[$isOrdered>>0] = $99; - $100 = HEAP32[$pWLoop>>2]|0; - $101 = $100; - $102 = $101; - $103 = HEAP32[$102>>2]|0; - $104 = (($101) + 4)|0; - $105 = $104; - $106 = HEAP32[$105>>2]|0; - $107 = HEAP32[$pFrom>>2]|0; - $108 = $107; - $109 = $108; - $110 = HEAP32[$109>>2]|0; - $111 = (($108) + 4)|0; - $112 = $111; - $113 = HEAP32[$112>>2]|0; - $114 = $110 ^ -1; - $115 = $113 ^ -1; - $116 = $103 & $114; - $117 = $106 & $115; - $118 = ($116|0)!=(0); - $119 = ($117|0)!=(0); - $120 = $118 | $119; - L30: do { - if (!($120)) { - $121 = HEAP32[$pWLoop>>2]|0; - $122 = (($121) + 8|0); - $123 = $122; - $124 = $123; - $125 = HEAP32[$124>>2]|0; - $126 = (($123) + 4)|0; - $127 = $126; - $128 = HEAP32[$127>>2]|0; - $129 = HEAP32[$pFrom>>2]|0; - $130 = $129; - $131 = $130; - $132 = HEAP32[$131>>2]|0; - $133 = (($130) + 4)|0; - $134 = $133; - $135 = HEAP32[$134>>2]|0; - $136 = $125 & $132; - $137 = $128 & $135; - $138 = ($136|0)!=(0); - $139 = ($137|0)!=(0); - $140 = $138 | $139; - if (!($140)) { - $141 = HEAP32[$pWLoop>>2]|0; - $142 = (($141) + 18|0); - $143 = HEAP16[$142>>1]|0; - $144 = HEAP32[$pWLoop>>2]|0; - $145 = (($144) + 20|0); - $146 = HEAP16[$145>>1]|0; - $147 = $146 << 16 >> 16; - $148 = HEAP32[$pFrom>>2]|0; - $149 = (($148) + 16|0); - $150 = HEAP16[$149>>1]|0; - $151 = $150 << 16 >> 16; - $152 = (($147) + ($151))|0; - $153 = $152&65535; - $154 = (_sqlite3LogEstAdd($143,$153)|0); - HEAP16[$rCost>>1] = $154; - $155 = HEAP16[$rCost>>1]|0; - $156 = HEAP32[$pFrom>>2]|0; - $157 = (($156) + 18|0); - $158 = HEAP16[$157>>1]|0; - $159 = (_sqlite3LogEstAdd($155,$158)|0); - HEAP16[$rCost>>1] = $159; - $160 = HEAP32[$pFrom>>2]|0; - $161 = (($160) + 16|0); - $162 = HEAP16[$161>>1]|0; - $163 = $162 << 16 >> 16; - $164 = HEAP32[$pWLoop>>2]|0; - $165 = (($164) + 22|0); - $166 = HEAP16[$165>>1]|0; - $167 = $166 << 16 >> 16; - $168 = (($163) + ($167))|0; - $169 = $168&65535; - HEAP16[$nOut>>1] = $169; - $170 = HEAP32[$pFrom>>2]|0; - $171 = $170; - $172 = $171; - $173 = HEAP32[$172>>2]|0; - $174 = (($171) + 4)|0; - $175 = $174; - $176 = HEAP32[$175>>2]|0; - $177 = HEAP32[$pWLoop>>2]|0; - $178 = (($177) + 8|0); - $179 = $178; - $180 = $179; - $181 = HEAP32[$180>>2]|0; - $182 = (($179) + 4)|0; - $183 = $182; - $184 = HEAP32[$183>>2]|0; - $185 = $173 | $181; - $186 = $176 | $184; - $187 = $maskNew; - $188 = $187; - HEAP32[$188>>2] = $185; - $189 = (($187) + 4)|0; - $190 = $189; - HEAP32[$190>>2] = $186; - $191 = HEAP8[$isOrdered>>0]|0; - $192 = $191 << 24 >> 24; - $193 = ($192|0)<(0); - if ($193) { - $194 = HEAP32[$1>>2]|0; - $195 = HEAP32[$1>>2]|0; - $196 = (($195) + 8|0); - $197 = HEAP32[$196>>2]|0; - $198 = HEAP32[$pFrom>>2]|0; - $199 = HEAP32[$1>>2]|0; - $200 = (($199) + 34|0); - $201 = HEAP16[$200>>1]|0; - $202 = HEAP32[$iLoop>>2]|0; - $203 = $202&65535; - $204 = HEAP32[$pWLoop>>2]|0; - $205 = (_wherePathSatisfiesOrderBy($194,$197,$198,$201,$203,$204,$revMask)|0); - HEAP8[$isOrdered>>0] = $205; - $206 = HEAP8[$isOrdered>>0]|0; - $207 = $206 << 24 >> 24; - $208 = ($207|0)>=(0); - if ($208) { - $209 = HEAP8[$isOrdered>>0]|0; - $210 = $209 << 24 >> 24; - $211 = HEAP32[$nOrderBy>>2]|0; - $212 = ($210|0)<($211|0); - if ($212) { - $213 = HEAP32[$nOrderBy>>2]|0; - $214 = HEAP8[$isOrdered>>0]|0; - $215 = $214 << 24 >> 24; - $216 = (($213) - ($215))|0; - $217 = ($216*100)|0; - $218 = HEAP32[$nOrderBy>>2]|0; - $219 = (($217|0) / ($218|0))&-1; - $220 = ($219|0)<(0); - $221 = $220 << 31 >> 31; - $222 = (_sqlite3LogEst($219,$221)|0); - $223 = $222 << 16 >> 16; - $224 = (($223) - 66)|0; - $225 = $224&65535; - HEAP16[$rScale>>1] = $225; - $226 = HEAP16[$2>>1]|0; - $227 = $226 << 16 >> 16; - $228 = HEAP16[$2>>1]|0; - $229 = (_estLog($228)|0); - $230 = $229 << 16 >> 16; - $231 = (($227) + ($230))|0; - $232 = HEAP16[$rScale>>1]|0; - $233 = $232 << 16 >> 16; - $234 = (($231) + ($233))|0; - $235 = (($234) + 16)|0; - $236 = $235&65535; - HEAP16[$rSortCost>>1] = $236; - $237 = HEAP32[$1>>2]|0; - $238 = (($237) + 34|0); - $239 = HEAP16[$238>>1]|0; - $240 = $239&65535; - $241 = $240 & 1024; - $242 = ($241|0)!=(0); - if ($242) { - $243 = HEAP16[$rSortCost>>1]|0; - $244 = $243 << 16 >> 16; - $245 = (($244) + 16)|0; - $246 = $245&65535; - HEAP16[$rSortCost>>1] = $246; - } - $247 = HEAP16[$rCost>>1]|0; - $248 = HEAP16[$rSortCost>>1]|0; - $249 = (_sqlite3LogEstAdd($247,$248)|0); - HEAP16[$rCost>>1] = $249; - } - } - } else { - $250 = HEAP32[$pFrom>>2]|0; - $251 = (($250) + 8|0); - $252 = $251; - $253 = $252; - $254 = HEAP32[$253>>2]|0; - $255 = (($252) + 4)|0; - $256 = $255; - $257 = HEAP32[$256>>2]|0; - $258 = $revMask; - $259 = $258; - HEAP32[$259>>2] = $254; - $260 = (($258) + 4)|0; - $261 = $260; - HEAP32[$261>>2] = $257; - } - HEAP32[$jj>>2] = 0; - $262 = HEAP32[$aTo>>2]|0; - HEAP32[$pTo>>2] = $262; - L42: while(1) { - $263 = HEAP32[$jj>>2]|0; - $264 = HEAP32[$nTo>>2]|0; - $265 = ($263|0)<($264|0); - if (!($265)) { - break; - } - $266 = HEAP32[$pTo>>2]|0; - $267 = $266; - $268 = $267; - $269 = HEAP32[$268>>2]|0; - $270 = (($267) + 4)|0; - $271 = $270; - $272 = HEAP32[$271>>2]|0; - $273 = $maskNew; - $274 = $273; - $275 = HEAP32[$274>>2]|0; - $276 = (($273) + 4)|0; - $277 = $276; - $278 = HEAP32[$277>>2]|0; - $279 = ($269|0)==($275|0); - $280 = ($272|0)==($278|0); - $281 = $279 & $280; - do { - if ($281) { - $282 = HEAP32[$pTo>>2]|0; - $283 = (($282) + 20|0); - $284 = HEAP8[$283>>0]|0; - $285 = $284 << 24 >> 24; - $286 = HEAP8[$isOrdered>>0]|0; - $287 = $286 << 24 >> 24; - $288 = $285 ^ $287; - $289 = $288 & 80; - $290 = ($289|0)==(0); - if ($290) { - $291 = HEAP32[$pTo>>2]|0; - $292 = (($291) + 18|0); - $293 = HEAP16[$292>>1]|0; - $294 = $293 << 16 >> 16; - $295 = HEAP16[$rCost>>1]|0; - $296 = $295 << 16 >> 16; - $297 = ($294|0)<=($296|0); - if ($297) { - $298 = HEAP32[$pTo>>2]|0; - $299 = (($298) + 16|0); - $300 = HEAP16[$299>>1]|0; - $301 = $300 << 16 >> 16; - $302 = HEAP16[$nOut>>1]|0; - $303 = $302 << 16 >> 16; - $304 = ($301|0)<=($303|0); - if ($304) { - break L42; - } - } - $305 = HEAP32[$pTo>>2]|0; - $306 = (($305) + 18|0); - $307 = HEAP16[$306>>1]|0; - $308 = $307 << 16 >> 16; - $309 = HEAP16[$rCost>>1]|0; - $310 = $309 << 16 >> 16; - $311 = ($308|0)>=($310|0); - if (!($311)) { - break; - } - $312 = HEAP32[$pTo>>2]|0; - $313 = (($312) + 16|0); - $314 = HEAP16[$313>>1]|0; - $315 = $314 << 16 >> 16; - $316 = HEAP16[$nOut>>1]|0; - $317 = $316 << 16 >> 16; - $318 = ($315|0)>=($317|0); - if ($318) { - break L42; - } - } - } - } while(0); - $319 = HEAP32[$jj>>2]|0; - $320 = (($319) + 1)|0; - HEAP32[$jj>>2] = $320; - $321 = HEAP32[$pTo>>2]|0; - $322 = (($321) + 32|0); - HEAP32[$pTo>>2] = $322; - } - $323 = HEAP32[$jj>>2]|0; - $324 = HEAP32[$nTo>>2]|0; - $325 = ($323|0)>=($324|0); - if ($325) { - $326 = HEAP32[$nTo>>2]|0; - $327 = HEAP32[$mxChoice>>2]|0; - $328 = ($326|0)>=($327|0); - if ($328) { - $329 = HEAP16[$rCost>>1]|0; - $330 = $329 << 16 >> 16; - $331 = HEAP16[$mxCost>>1]|0; - $332 = $331 << 16 >> 16; - $333 = ($330|0)>=($332|0); - if ($333) { - break; - } - } - $334 = HEAP32[$nTo>>2]|0; - $335 = HEAP32[$mxChoice>>2]|0; - $336 = ($334|0)<($335|0); - if ($336) { - $337 = HEAP32[$nTo>>2]|0; - $338 = (($337) + 1)|0; - HEAP32[$nTo>>2] = $338; - HEAP32[$jj>>2] = $337; - } else { - $339 = HEAP32[$mxI>>2]|0; - HEAP32[$jj>>2] = $339; - } - $340 = HEAP32[$jj>>2]|0; - $341 = HEAP32[$aTo>>2]|0; - $342 = (($341) + ($340<<5)|0); - HEAP32[$pTo>>2] = $342; - } else { - $343 = HEAP32[$pTo>>2]|0; - $344 = (($343) + 18|0); - $345 = HEAP16[$344>>1]|0; - $346 = $345 << 16 >> 16; - $347 = HEAP16[$rCost>>1]|0; - $348 = $347 << 16 >> 16; - $349 = ($346|0)<=($348|0); - if ($349) { - $350 = HEAP32[$pTo>>2]|0; - $351 = (($350) + 16|0); - $352 = HEAP16[$351>>1]|0; - $353 = $352 << 16 >> 16; - $354 = HEAP16[$nOut>>1]|0; - $355 = $354 << 16 >> 16; - $356 = ($353|0)<=($355|0); - if ($356) { - break; - } - } - } - $357 = HEAP32[$pFrom>>2]|0; - $358 = $357; - $359 = $358; - $360 = HEAP32[$359>>2]|0; - $361 = (($358) + 4)|0; - $362 = $361; - $363 = HEAP32[$362>>2]|0; - $364 = HEAP32[$pWLoop>>2]|0; - $365 = (($364) + 8|0); - $366 = $365; - $367 = $366; - $368 = HEAP32[$367>>2]|0; - $369 = (($366) + 4)|0; - $370 = $369; - $371 = HEAP32[$370>>2]|0; - $372 = $360 | $368; - $373 = $363 | $371; - $374 = HEAP32[$pTo>>2]|0; - $375 = $374; - $376 = $375; - HEAP32[$376>>2] = $372; - $377 = (($375) + 4)|0; - $378 = $377; - HEAP32[$378>>2] = $373; - $379 = $revMask; - $380 = $379; - $381 = HEAP32[$380>>2]|0; - $382 = (($379) + 4)|0; - $383 = $382; - $384 = HEAP32[$383>>2]|0; - $385 = HEAP32[$pTo>>2]|0; - $386 = (($385) + 8|0); - $387 = $386; - $388 = $387; - HEAP32[$388>>2] = $381; - $389 = (($387) + 4)|0; - $390 = $389; - HEAP32[$390>>2] = $384; - $391 = HEAP16[$nOut>>1]|0; - $392 = HEAP32[$pTo>>2]|0; - $393 = (($392) + 16|0); - HEAP16[$393>>1] = $391; - $394 = HEAP16[$rCost>>1]|0; - $395 = HEAP32[$pTo>>2]|0; - $396 = (($395) + 18|0); - HEAP16[$396>>1] = $394; - $397 = HEAP8[$isOrdered>>0]|0; - $398 = HEAP32[$pTo>>2]|0; - $399 = (($398) + 20|0); - HEAP8[$399>>0] = $397; - $400 = HEAP32[$pTo>>2]|0; - $401 = (($400) + 24|0); - $402 = HEAP32[$401>>2]|0; - $403 = HEAP32[$pFrom>>2]|0; - $404 = (($403) + 24|0); - $405 = HEAP32[$404>>2]|0; - $406 = HEAP32[$iLoop>>2]|0; - $407 = $406<<2; - _memcpy(($402|0),($405|0),($407|0))|0; - $408 = HEAP32[$pWLoop>>2]|0; - $409 = HEAP32[$iLoop>>2]|0; - $410 = HEAP32[$pTo>>2]|0; - $411 = (($410) + 24|0); - $412 = HEAP32[$411>>2]|0; - $413 = (($412) + ($409<<2)|0); - HEAP32[$413>>2] = $408; - $414 = HEAP32[$nTo>>2]|0; - $415 = HEAP32[$mxChoice>>2]|0; - $416 = ($414|0)>=($415|0); - if ($416) { - HEAP32[$mxI>>2] = 0; - $417 = HEAP32[$aTo>>2]|0; - $418 = (($417) + 18|0); - $419 = HEAP16[$418>>1]|0; - HEAP16[$mxCost>>1] = $419; - $420 = HEAP32[$aTo>>2]|0; - $421 = (($420) + 16|0); - $422 = HEAP16[$421>>1]|0; - HEAP16[$mxOut>>1] = $422; - HEAP32[$jj>>2] = 1; - $423 = HEAP32[$aTo>>2]|0; - $424 = (($423) + 32|0); - HEAP32[$pTo>>2] = $424; - while(1) { - $425 = HEAP32[$jj>>2]|0; - $426 = HEAP32[$mxChoice>>2]|0; - $427 = ($425|0)<($426|0); - if (!($427)) { - break L30; - } - $428 = HEAP32[$pTo>>2]|0; - $429 = (($428) + 18|0); - $430 = HEAP16[$429>>1]|0; - $431 = $430 << 16 >> 16; - $432 = HEAP16[$mxCost>>1]|0; - $433 = $432 << 16 >> 16; - $434 = ($431|0)>($433|0); - do { - if ($434) { - label = 53; - } else { - $435 = HEAP32[$pTo>>2]|0; - $436 = (($435) + 18|0); - $437 = HEAP16[$436>>1]|0; - $438 = $437 << 16 >> 16; - $439 = HEAP16[$mxCost>>1]|0; - $440 = $439 << 16 >> 16; - $441 = ($438|0)==($440|0); - if (!($441)) { - break; - } - $442 = HEAP32[$pTo>>2]|0; - $443 = (($442) + 16|0); - $444 = HEAP16[$443>>1]|0; - $445 = $444 << 16 >> 16; - $446 = HEAP16[$mxOut>>1]|0; - $447 = $446 << 16 >> 16; - $448 = ($445|0)>($447|0); - if ($448) { - label = 53; - } - } - } while(0); - if ((label|0) == 53) { - label = 0; - $449 = HEAP32[$pTo>>2]|0; - $450 = (($449) + 18|0); - $451 = HEAP16[$450>>1]|0; - HEAP16[$mxCost>>1] = $451; - $452 = HEAP32[$pTo>>2]|0; - $453 = (($452) + 16|0); - $454 = HEAP16[$453>>1]|0; - HEAP16[$mxOut>>1] = $454; - $455 = HEAP32[$jj>>2]|0; - HEAP32[$mxI>>2] = $455; - } - $456 = HEAP32[$jj>>2]|0; - $457 = (($456) + 1)|0; - HEAP32[$jj>>2] = $457; - $458 = HEAP32[$pTo>>2]|0; - $459 = (($458) + 32|0); - HEAP32[$pTo>>2] = $459; - } - } - } - } - } while(0); - $460 = HEAP32[$pWLoop>>2]|0; - $461 = (($460) + 48|0); - $462 = HEAP32[$461>>2]|0; - HEAP32[$pWLoop>>2] = $462; - } - $463 = HEAP32[$ii>>2]|0; - $464 = (($463) + 1)|0; - HEAP32[$ii>>2] = $464; - $465 = HEAP32[$pFrom>>2]|0; - $466 = (($465) + 32|0); - HEAP32[$pFrom>>2] = $466; - } - $467 = HEAP32[$aTo>>2]|0; - HEAP32[$pFrom>>2] = $467; - $468 = HEAP32[$aFrom>>2]|0; - HEAP32[$aTo>>2] = $468; - $469 = HEAP32[$pFrom>>2]|0; - HEAP32[$aFrom>>2] = $469; - $470 = HEAP32[$nTo>>2]|0; - HEAP32[$nFrom>>2] = $470; - $471 = HEAP32[$iLoop>>2]|0; - $472 = (($471) + 1)|0; - HEAP32[$iLoop>>2] = $472; - } - $473 = HEAP32[$nFrom>>2]|0; - $474 = ($473|0)==(0); - if ($474) { - $475 = HEAP32[$pParse>>2]|0; - _sqlite3ErrorMsg($475,23888,$vararg_buffer); - $476 = HEAP32[$db>>2]|0; - $477 = HEAP32[$pSpace>>2]|0; - _sqlite3DbFree($476,$477); - HEAP32[$0>>2] = 1; - $674 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($674|0); - } - $478 = HEAP32[$aFrom>>2]|0; - HEAP32[$pFrom>>2] = $478; - HEAP32[$ii>>2] = 1; - while(1) { - $479 = HEAP32[$ii>>2]|0; - $480 = HEAP32[$nFrom>>2]|0; - $481 = ($479|0)<($480|0); - if (!($481)) { - break; - } - $482 = HEAP32[$pFrom>>2]|0; - $483 = (($482) + 18|0); - $484 = HEAP16[$483>>1]|0; - $485 = $484 << 16 >> 16; - $486 = HEAP32[$ii>>2]|0; - $487 = HEAP32[$aFrom>>2]|0; - $488 = (($487) + ($486<<5)|0); - $489 = (($488) + 18|0); - $490 = HEAP16[$489>>1]|0; - $491 = $490 << 16 >> 16; - $492 = ($485|0)>($491|0); - if ($492) { - $493 = HEAP32[$ii>>2]|0; - $494 = HEAP32[$aFrom>>2]|0; - $495 = (($494) + ($493<<5)|0); - HEAP32[$pFrom>>2] = $495; - } - $496 = HEAP32[$ii>>2]|0; - $497 = (($496) + 1)|0; - HEAP32[$ii>>2] = $497; - } - HEAP32[$iLoop>>2] = 0; - while(1) { - $498 = HEAP32[$iLoop>>2]|0; - $499 = HEAP32[$nLoop>>2]|0; - $500 = ($498|0)<($499|0); - $501 = HEAP32[$1>>2]|0; - if (!($500)) { - break; - } - $502 = (($501) + 736|0); - $503 = HEAP32[$iLoop>>2]|0; - $504 = (($502) + (($503*72)|0)|0); - HEAP32[$pLevel>>2] = $504; - $505 = HEAP32[$iLoop>>2]|0; - $506 = HEAP32[$pFrom>>2]|0; - $507 = (($506) + 24|0); - $508 = HEAP32[$507>>2]|0; - $509 = (($508) + ($505<<2)|0); - $510 = HEAP32[$509>>2]|0; - HEAP32[$pWLoop>>2] = $510; - $511 = HEAP32[$pLevel>>2]|0; - $512 = (($511) + 56|0); - HEAP32[$512>>2] = $510; - $513 = HEAP32[$pWLoop>>2]|0; - $514 = (($513) + 16|0); - $515 = HEAP8[$514>>0]|0; - $516 = HEAP32[$pLevel>>2]|0; - $517 = (($516) + 36|0); - HEAP8[$517>>0] = $515; - $518 = HEAP32[$pLevel>>2]|0; - $519 = (($518) + 36|0); - $520 = HEAP8[$519>>0]|0; - $521 = $520&255; - $522 = HEAP32[$1>>2]|0; - $523 = (($522) + 4|0); - $524 = HEAP32[$523>>2]|0; - $525 = (($524) + 8|0); - $526 = (($525) + (($521*72)|0)|0); - $527 = (($526) + 40|0); - $528 = HEAP32[$527>>2]|0; - $529 = HEAP32[$pLevel>>2]|0; - $530 = (($529) + 4|0); - HEAP32[$530>>2] = $528; - $531 = HEAP32[$iLoop>>2]|0; - $532 = (($531) + 1)|0; - HEAP32[$iLoop>>2] = $532; - } - $533 = (($501) + 34|0); - $534 = HEAP16[$533>>1]|0; - $535 = $534&65535; - $536 = $535 & 1024; - $537 = ($536|0)!=(0); - if ($537) { - $538 = HEAP32[$1>>2]|0; - $539 = (($538) + 34|0); - $540 = HEAP16[$539>>1]|0; - $541 = $540&65535; - $542 = $541 & 512; - $543 = ($542|0)==(0); - if ($543) { - $544 = HEAP32[$1>>2]|0; - $545 = (($544) + 40|0); - $546 = HEAP8[$545>>0]|0; - $547 = $546&255; - $548 = ($547|0)==(0); - if ($548) { - $549 = HEAP16[$2>>1]|0; - $550 = $549 << 16 >> 16; - $551 = ($550|0)!=(0); - if ($551) { - $552 = HEAP32[$1>>2]|0; - $553 = HEAP32[$1>>2]|0; - $554 = (($553) + 12|0); - $555 = HEAP32[$554>>2]|0; - $556 = HEAP32[$pFrom>>2]|0; - $557 = HEAP32[$nLoop>>2]|0; - $558 = (($557) - 1)|0; - $559 = $558&65535; - $560 = HEAP32[$nLoop>>2]|0; - $561 = (($560) - 1)|0; - $562 = HEAP32[$pFrom>>2]|0; - $563 = (($562) + 24|0); - $564 = HEAP32[$563>>2]|0; - $565 = (($564) + ($561<<2)|0); - $566 = HEAP32[$565>>2]|0; - $567 = (_wherePathSatisfiesOrderBy($552,$555,$556,512,$559,$566,$notUsed)|0); - $568 = $567 << 24 >> 24; - HEAP32[$rc>>2] = $568; - $569 = HEAP32[$rc>>2]|0; - $570 = HEAP32[$1>>2]|0; - $571 = (($570) + 12|0); - $572 = HEAP32[$571>>2]|0; - $573 = HEAP32[$572>>2]|0; - $574 = ($569|0)==($573|0); - if ($574) { - $575 = HEAP32[$1>>2]|0; - $576 = (($575) + 40|0); - HEAP8[$576>>0] = 2; - } - } - } - } - } - $577 = HEAP32[$1>>2]|0; - $578 = (($577) + 8|0); - $579 = HEAP32[$578>>2]|0; - $580 = ($579|0)!=(0|0); - if ($580) { - $581 = HEAP32[$1>>2]|0; - $582 = (($581) + 34|0); - $583 = HEAP16[$582>>1]|0; - $584 = $583&65535; - $585 = $584 & 512; - $586 = ($585|0)!=(0); - $587 = HEAP32[$pFrom>>2]|0; - $588 = (($587) + 20|0); - $589 = HEAP8[$588>>0]|0; - if ($586) { - $590 = $589 << 24 >> 24; - $591 = HEAP32[$1>>2]|0; - $592 = (($591) + 8|0); - $593 = HEAP32[$592>>2]|0; - $594 = HEAP32[$593>>2]|0; - $595 = ($590|0)==($594|0); - if ($595) { - $596 = HEAP32[$1>>2]|0; - $597 = (($596) + 40|0); - HEAP8[$597>>0] = 2; - } - } else { - $598 = HEAP32[$1>>2]|0; - $599 = (($598) + 36|0); - HEAP8[$599>>0] = $589; - $600 = HEAP32[$1>>2]|0; - $601 = (($600) + 36|0); - $602 = HEAP8[$601>>0]|0; - $603 = $602 << 24 >> 24; - $604 = ($603|0)<(0); - if ($604) { - $605 = HEAP32[$1>>2]|0; - $606 = (($605) + 36|0); - HEAP8[$606>>0] = 0; - } - $607 = HEAP32[$pFrom>>2]|0; - $608 = (($607) + 8|0); - $609 = $608; - $610 = $609; - $611 = HEAP32[$610>>2]|0; - $612 = (($609) + 4)|0; - $613 = $612; - $614 = HEAP32[$613>>2]|0; - $615 = HEAP32[$1>>2]|0; - $616 = (($615) + 24|0); - $617 = $616; - $618 = $617; - HEAP32[$618>>2] = $611; - $619 = (($617) + 4)|0; - $620 = $619; - HEAP32[$620>>2] = $614; - } - $621 = HEAP32[$1>>2]|0; - $622 = (($621) + 34|0); - $623 = HEAP16[$622>>1]|0; - $624 = $623&65535; - $625 = $624 & 2048; - $626 = ($625|0)!=(0); - if ($626) { - $627 = HEAP32[$1>>2]|0; - $628 = (($627) + 36|0); - $629 = HEAP8[$628>>0]|0; - $630 = $629 << 24 >> 24; - $631 = HEAP32[$1>>2]|0; - $632 = (($631) + 8|0); - $633 = HEAP32[$632>>2]|0; - $634 = HEAP32[$633>>2]|0; - $635 = ($630|0)==($634|0); - if ($635) { - $636 = $notUsed1; - $637 = $636; - HEAP32[$637>>2] = 0; - $638 = (($636) + 4)|0; - $639 = $638; - HEAP32[$639>>2] = 0; - $640 = HEAP32[$1>>2]|0; - $641 = HEAP32[$1>>2]|0; - $642 = (($641) + 8|0); - $643 = HEAP32[$642>>2]|0; - $644 = HEAP32[$pFrom>>2]|0; - $645 = HEAP32[$nLoop>>2]|0; - $646 = (($645) - 1)|0; - $647 = $646&65535; - $648 = HEAP32[$nLoop>>2]|0; - $649 = (($648) - 1)|0; - $650 = HEAP32[$pFrom>>2]|0; - $651 = (($650) + 24|0); - $652 = HEAP32[$651>>2]|0; - $653 = (($652) + ($649<<2)|0); - $654 = HEAP32[$653>>2]|0; - $655 = (_wherePathSatisfiesOrderBy($640,$643,$644,0,$647,$654,$notUsed1)|0); - $656 = $655 << 24 >> 24; - HEAP32[$nOrder>>2] = $656; - $657 = HEAP32[$nOrder>>2]|0; - $658 = HEAP32[$1>>2]|0; - $659 = (($658) + 8|0); - $660 = HEAP32[$659>>2]|0; - $661 = HEAP32[$660>>2]|0; - $662 = ($657|0)==($661|0); - $663 = $662&1; - $664 = $663&255; - $665 = HEAP32[$1>>2]|0; - $666 = (($665) + 37|0); - HEAP8[$666>>0] = $664; - } - } - } - $667 = HEAP32[$pFrom>>2]|0; - $668 = (($667) + 16|0); - $669 = HEAP16[$668>>1]|0; - $670 = HEAP32[$1>>2]|0; - $671 = (($670) + 32|0); - HEAP16[$671>>1] = $669; - $672 = HEAP32[$db>>2]|0; - $673 = HEAP32[$pSpace>>2]|0; - _sqlite3DbFree($672,$673); - HEAP32[$0>>2] = 0; - $674 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($674|0); -} -function _exprListTableUsage($pMaskSet,$pList) { - $pMaskSet = $pMaskSet|0; - $pList = $pList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $i = 0, $mask = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $i = sp + 8|0; - $mask = sp; - HEAP32[$0>>2] = $pMaskSet; - HEAP32[$1>>2] = $pList; - $2 = $mask; - $3 = $2; - HEAP32[$3>>2] = 0; - $4 = (($2) + 4)|0; - $5 = $4; - HEAP32[$5>>2] = 0; - $6 = HEAP32[$1>>2]|0; - $7 = ($6|0)!=(0|0); - if (!($7)) { - $35 = $mask; - $36 = $35; - $37 = HEAP32[$36>>2]|0; - $38 = (($35) + 4)|0; - $39 = $38; - $40 = HEAP32[$39>>2]|0; - tempRet0 = $40; - STACKTOP = sp;return ($37|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = ($8|0)<($10|0); - if (!($11)) { - break; - } - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$i>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 4|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + (($13*20)|0)|0); - $18 = HEAP32[$17>>2]|0; - $19 = (_exprTableUsage($12,$18)|0); - $20 = tempRet0; - $21 = $mask; - $22 = $21; - $23 = HEAP32[$22>>2]|0; - $24 = (($21) + 4)|0; - $25 = $24; - $26 = HEAP32[$25>>2]|0; - $27 = $23 | $19; - $28 = $26 | $20; - $29 = $mask; - $30 = $29; - HEAP32[$30>>2] = $27; - $31 = (($29) + 4)|0; - $32 = $31; - HEAP32[$32>>2] = $28; - $33 = HEAP32[$i>>2]|0; - $34 = (($33) + 1)|0; - HEAP32[$i>>2] = $34; - } - $35 = $mask; - $36 = $35; - $37 = HEAP32[$36>>2]|0; - $38 = (($35) + 4)|0; - $39 = $38; - $40 = HEAP32[$39>>2]|0; - tempRet0 = $40; - STACKTOP = sp;return ($37|0); -} -function _getMask($pMaskSet,$iCursor) { - $pMaskSet = $pMaskSet|0; - $iCursor = $iCursor|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp; - $1 = sp + 16|0; - $2 = sp + 12|0; - $i = sp + 8|0; - HEAP32[$1>>2] = $pMaskSet; - HEAP32[$2>>2] = $iCursor; - HEAP32[$i>>2] = 0; - while(1) { - $3 = HEAP32[$i>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = ($3|0)<($5|0); - if (!($6)) { - label = 6; - break; - } - $7 = HEAP32[$i>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 4|0); - $10 = (($9) + ($7<<2)|0); - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$2>>2]|0; - $13 = ($11|0)==($12|0); - $14 = HEAP32[$i>>2]|0; - if ($13) { - label = 4; - break; - } - $21 = (($14) + 1)|0; - HEAP32[$i>>2] = $21; - } - if ((label|0) == 4) { - $15 = (_bitshift64Shl(1,0,($14|0))|0); - $16 = tempRet0; - $17 = $0; - $18 = $17; - HEAP32[$18>>2] = $15; - $19 = (($17) + 4)|0; - $20 = $19; - HEAP32[$20>>2] = $16; - $26 = $0; - $27 = $26; - $28 = HEAP32[$27>>2]|0; - $29 = (($26) + 4)|0; - $30 = $29; - $31 = HEAP32[$30>>2]|0; - tempRet0 = $31; - STACKTOP = sp;return ($28|0); - } - else if ((label|0) == 6) { - $22 = $0; - $23 = $22; - HEAP32[$23>>2] = 0; - $24 = (($22) + 4)|0; - $25 = $24; - HEAP32[$25>>2] = 0; - $26 = $0; - $27 = $26; - $28 = HEAP32[$27>>2]|0; - $29 = (($26) + 4)|0; - $30 = $29; - $31 = HEAP32[$30>>2]|0; - tempRet0 = $31; - STACKTOP = sp;return ($28|0); - } - return 0|0; -} -function _constructAutomaticIndex($pParse,$pWC,$pSrc,$0,$1,$pLevel) { - $pParse = $pParse|0; - $pWC = $pWC|0; - $pSrc = $pSrc|0; - $0 = $0|0; - $1 = $1|0; - $pLevel = $pLevel|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; - var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; - var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; - var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; - var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; - var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0; - var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0; - var $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0; - var $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0; - var $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0; - var $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0; - var $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0; - var $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0; - var $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0; - var $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0; - var $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0; - var $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0; - var $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0; - var $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; - var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; - var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; - var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addrInit = 0, $addrTop = 0, $cMask = 0, $cMask2 = 0, $extraCols = 0, $i = 0, $iCol = 0, $iCol1 = 0, $idxCols = 0, $mxBitCol = 0, $n = 0; - var $nKeyCol = 0, $pColl = 0, $pIdx = 0, $pLoop = 0, $pTable = 0, $pTerm = 0, $pWCEnd = 0, $pX = 0, $regRecord = 0, $sentWarning = 0, $v = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $zNotUsed = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 144|0; - $vararg_buffer = sp + 40|0; - $2 = sp + 132|0; - $3 = sp + 128|0; - $4 = sp + 124|0; - $5 = sp + 32|0; - $6 = sp + 120|0; - $nKeyCol = sp + 116|0; - $pTerm = sp + 112|0; - $pWCEnd = sp + 108|0; - $pIdx = sp + 104|0; - $v = sp + 100|0; - $addrInit = sp + 96|0; - $pTable = sp + 92|0; - $addrTop = sp + 88|0; - $regRecord = sp + 84|0; - $n = sp + 80|0; - $i = sp + 76|0; - $mxBitCol = sp + 72|0; - $pColl = sp + 68|0; - $pLoop = sp + 64|0; - $zNotUsed = sp + 60|0; - $idxCols = sp + 24|0; - $extraCols = sp + 16|0; - $sentWarning = sp + 136|0; - $iCol = sp + 56|0; - $cMask = sp + 8|0; - $iCol1 = sp + 52|0; - $cMask2 = sp; - $pX = sp + 48|0; - HEAP32[$2>>2] = $pParse; - HEAP32[$3>>2] = $pWC; - HEAP32[$4>>2] = $pSrc; - $7 = $5; - $8 = $7; - HEAP32[$8>>2] = $0; - $9 = (($7) + 4)|0; - $10 = $9; - HEAP32[$10>>2] = $1; - HEAP32[$6>>2] = $pLevel; - HEAP8[$sentWarning>>0] = 0; - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 8|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$v>>2] = $13; - $14 = HEAP32[$2>>2]|0; - $15 = (_sqlite3CodeOnce($14)|0); - HEAP32[$addrInit>>2] = $15; - HEAP32[$nKeyCol>>2] = 0; - $16 = HEAP32[$4>>2]|0; - $17 = (($16) + 16|0); - $18 = HEAP32[$17>>2]|0; - HEAP32[$pTable>>2] = $18; - $19 = HEAP32[$3>>2]|0; - $20 = (($19) + 12|0); - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$3>>2]|0; - $23 = (($22) + 20|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + (($21*48)|0)|0); - HEAP32[$pWCEnd>>2] = $25; - $26 = HEAP32[$6>>2]|0; - $27 = (($26) + 56|0); - $28 = HEAP32[$27>>2]|0; - HEAP32[$pLoop>>2] = $28; - $29 = $idxCols; - $30 = $29; - HEAP32[$30>>2] = 0; - $31 = (($29) + 4)|0; - $32 = $31; - HEAP32[$32>>2] = 0; - $33 = HEAP32[$3>>2]|0; - $34 = (($33) + 20|0); - $35 = HEAP32[$34>>2]|0; - HEAP32[$pTerm>>2] = $35; - while(1) { - $36 = HEAP32[$pTerm>>2]|0; - $37 = HEAP32[$pWCEnd>>2]|0; - $38 = ($36>>>0)<($37>>>0); - if (!($38)) { - break; - } - $39 = HEAP32[$pTerm>>2]|0; - $40 = HEAP32[$4>>2]|0; - $41 = $5; - $42 = $41; - $43 = HEAP32[$42>>2]|0; - $44 = (($41) + 4)|0; - $45 = $44; - $46 = HEAP32[$45>>2]|0; - $47 = (_termCanDriveIndex($39,$40,$43,$46)|0); - $48 = ($47|0)!=(0); - if ($48) { - $49 = HEAP32[$pTerm>>2]|0; - $50 = (($49) + 12|0); - $51 = HEAP32[$50>>2]|0; - HEAP32[$iCol>>2] = $51; - $52 = HEAP32[$iCol>>2]|0; - $53 = ($52|0)>=(64); - if ($53) { - $59 = 0;$62 = -2147483648; - } else { - $54 = HEAP32[$iCol>>2]|0; - $55 = (_bitshift64Shl(1,0,($54|0))|0); - $56 = tempRet0; - $59 = $55;$62 = $56; - } - $57 = $cMask; - $58 = $57; - HEAP32[$58>>2] = $59; - $60 = (($57) + 4)|0; - $61 = $60; - HEAP32[$61>>2] = $62; - $63 = HEAP8[$sentWarning>>0]|0; - $64 = ($63<<24>>24)!=(0); - if (!($64)) { - $65 = HEAP32[$pTable>>2]|0; - $66 = HEAP32[$65>>2]|0; - $67 = HEAP32[$iCol>>2]|0; - $68 = HEAP32[$pTable>>2]|0; - $69 = (($68) + 4|0); - $70 = HEAP32[$69>>2]|0; - $71 = (($70) + (($67*24)|0)|0); - $72 = HEAP32[$71>>2]|0; - HEAP32[$vararg_buffer>>2] = $66; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $72; - _sqlite3_log(284,23840,$vararg_buffer); - HEAP8[$sentWarning>>0] = 1; - } - $73 = $idxCols; - $74 = $73; - $75 = HEAP32[$74>>2]|0; - $76 = (($73) + 4)|0; - $77 = $76; - $78 = HEAP32[$77>>2]|0; - $79 = $cMask; - $80 = $79; - $81 = HEAP32[$80>>2]|0; - $82 = (($79) + 4)|0; - $83 = $82; - $84 = HEAP32[$83>>2]|0; - $85 = $75 & $81; - $86 = $78 & $84; - $87 = ($85|0)==(0); - $88 = ($86|0)==(0); - $89 = $87 & $88; - if ($89) { - $90 = HEAP32[$2>>2]|0; - $91 = HEAP32[$90>>2]|0; - $92 = HEAP32[$pLoop>>2]|0; - $93 = HEAP32[$nKeyCol>>2]|0; - $94 = (($93) + 1)|0; - $95 = (_whereLoopResize($91,$92,$94)|0); - $96 = ($95|0)!=(0); - if ($96) { - label = 42; - break; - } - $97 = HEAP32[$pTerm>>2]|0; - $98 = HEAP32[$nKeyCol>>2]|0; - $99 = (($98) + 1)|0; - HEAP32[$nKeyCol>>2] = $99; - $100 = HEAP32[$pLoop>>2]|0; - $101 = (($100) + 44|0); - $102 = HEAP32[$101>>2]|0; - $103 = (($102) + ($98<<2)|0); - HEAP32[$103>>2] = $97; - $104 = $cMask; - $105 = $104; - $106 = HEAP32[$105>>2]|0; - $107 = (($104) + 4)|0; - $108 = $107; - $109 = HEAP32[$108>>2]|0; - $110 = $idxCols; - $111 = $110; - $112 = HEAP32[$111>>2]|0; - $113 = (($110) + 4)|0; - $114 = $113; - $115 = HEAP32[$114>>2]|0; - $116 = $112 | $106; - $117 = $115 | $109; - $118 = $idxCols; - $119 = $118; - HEAP32[$119>>2] = $116; - $120 = (($118) + 4)|0; - $121 = $120; - HEAP32[$121>>2] = $117; - } - } - $122 = HEAP32[$pTerm>>2]|0; - $123 = (($122) + 48|0); - HEAP32[$pTerm>>2] = $123; - } - if ((label|0) == 42) { - STACKTOP = sp;return; - } - $124 = HEAP32[$nKeyCol>>2]|0; - $125 = $124&65535; - $126 = HEAP32[$pLoop>>2]|0; - $127 = (($126) + 40|0); - HEAP16[$127>>1] = $125; - $128 = HEAP32[$pLoop>>2]|0; - $129 = (($128) + 24|0); - HEAP16[$129>>1] = $125; - $130 = HEAP32[$pLoop>>2]|0; - $131 = (($130) + 36|0); - HEAP32[$131>>2] = 16961; - $132 = HEAP32[$4>>2]|0; - $133 = (($132) + 56|0); - $134 = $133; - $135 = $134; - $136 = HEAP32[$135>>2]|0; - $137 = (($134) + 4)|0; - $138 = $137; - $139 = HEAP32[$138>>2]|0; - $140 = $idxCols; - $141 = $140; - $142 = HEAP32[$141>>2]|0; - $143 = (($140) + 4)|0; - $144 = $143; - $145 = HEAP32[$144>>2]|0; - $146 = $142 ^ -1; - $147 = $145 ^ -1; - $148 = $147 | -2147483648; - $149 = $136 & $146; - $150 = $139 & $148; - $151 = $extraCols; - $152 = $151; - HEAP32[$152>>2] = $149; - $153 = (($151) + 4)|0; - $154 = $153; - HEAP32[$154>>2] = $150; - $155 = HEAP32[$pTable>>2]|0; - $156 = (($155) + 38|0); - $157 = HEAP16[$156>>1]|0; - $158 = $157 << 16 >> 16; - $159 = ($158|0)>=(63); - if ($159) { - $164 = 63; - } else { - $160 = HEAP32[$pTable>>2]|0; - $161 = (($160) + 38|0); - $162 = HEAP16[$161>>1]|0; - $163 = $162 << 16 >> 16; - $164 = $163; - } - HEAP32[$mxBitCol>>2] = $164; - HEAP32[$i>>2] = 0; - while(1) { - $165 = HEAP32[$i>>2]|0; - $166 = HEAP32[$mxBitCol>>2]|0; - $167 = ($165|0)<($166|0); - if (!($167)) { - break; - } - $168 = $extraCols; - $169 = $168; - $170 = HEAP32[$169>>2]|0; - $171 = (($168) + 4)|0; - $172 = $171; - $173 = HEAP32[$172>>2]|0; - $174 = HEAP32[$i>>2]|0; - $175 = (_bitshift64Shl(1,0,($174|0))|0); - $176 = tempRet0; - $177 = $170 & $175; - $178 = $173 & $176; - $179 = ($177|0)!=(0); - $180 = ($178|0)!=(0); - $181 = $179 | $180; - if ($181) { - $182 = HEAP32[$nKeyCol>>2]|0; - $183 = (($182) + 1)|0; - HEAP32[$nKeyCol>>2] = $183; - } - $184 = HEAP32[$i>>2]|0; - $185 = (($184) + 1)|0; - HEAP32[$i>>2] = $185; - } - $186 = HEAP32[$4>>2]|0; - $187 = (($186) + 56|0); - $188 = $187; - $189 = $188; - $190 = HEAP32[$189>>2]|0; - $191 = (($188) + 4)|0; - $192 = $191; - $193 = HEAP32[$192>>2]|0; - $194 = $193 & -2147483648; - $195 = (0)!=(0); - $196 = ($194|0)!=(0); - $197 = $195 | $196; - if ($197) { - $198 = HEAP32[$pTable>>2]|0; - $199 = (($198) + 38|0); - $200 = HEAP16[$199>>1]|0; - $201 = $200 << 16 >> 16; - $202 = (($201) - 64)|0; - $203 = (($202) + 1)|0; - $204 = HEAP32[$nKeyCol>>2]|0; - $205 = (($204) + ($203))|0; - HEAP32[$nKeyCol>>2] = $205; - } - $206 = HEAP32[$pLoop>>2]|0; - $207 = (($206) + 36|0); - $208 = HEAP32[$207>>2]|0; - $209 = $208 | 65; - HEAP32[$207>>2] = $209; - $210 = HEAP32[$2>>2]|0; - $211 = HEAP32[$210>>2]|0; - $212 = HEAP32[$nKeyCol>>2]|0; - $213 = (($212) + 1)|0; - $214 = $213&65535; - $215 = (_sqlite3AllocateIndexObject($211,$214,0,$zNotUsed)|0); - HEAP32[$pIdx>>2] = $215; - $216 = HEAP32[$pIdx>>2]|0; - $217 = ($216|0)==(0|0); - if ($217) { - STACKTOP = sp;return; - } - $218 = HEAP32[$pIdx>>2]|0; - $219 = HEAP32[$pLoop>>2]|0; - $220 = (($219) + 24|0); - $221 = (($220) + 4|0); - HEAP32[$221>>2] = $218; - $222 = HEAP32[$pIdx>>2]|0; - HEAP32[$222>>2] = 23872; - $223 = HEAP32[$pTable>>2]|0; - $224 = HEAP32[$pIdx>>2]|0; - $225 = (($224) + 12|0); - HEAP32[$225>>2] = $223; - HEAP32[$n>>2] = 0; - $226 = $idxCols; - $227 = $226; - HEAP32[$227>>2] = 0; - $228 = (($226) + 4)|0; - $229 = $228; - HEAP32[$229>>2] = 0; - $230 = HEAP32[$3>>2]|0; - $231 = (($230) + 20|0); - $232 = HEAP32[$231>>2]|0; - HEAP32[$pTerm>>2] = $232; - while(1) { - $233 = HEAP32[$pTerm>>2]|0; - $234 = HEAP32[$pWCEnd>>2]|0; - $235 = ($233>>>0)<($234>>>0); - if (!($235)) { - break; - } - $236 = HEAP32[$pTerm>>2]|0; - $237 = HEAP32[$4>>2]|0; - $238 = $5; - $239 = $238; - $240 = HEAP32[$239>>2]|0; - $241 = (($238) + 4)|0; - $242 = $241; - $243 = HEAP32[$242>>2]|0; - $244 = (_termCanDriveIndex($236,$237,$240,$243)|0); - $245 = ($244|0)!=(0); - if ($245) { - $246 = HEAP32[$pTerm>>2]|0; - $247 = (($246) + 12|0); - $248 = HEAP32[$247>>2]|0; - HEAP32[$iCol1>>2] = $248; - $249 = HEAP32[$iCol1>>2]|0; - $250 = ($249|0)>=(64); - if ($250) { - $256 = 0;$259 = -2147483648; - } else { - $251 = HEAP32[$iCol1>>2]|0; - $252 = (_bitshift64Shl(1,0,($251|0))|0); - $253 = tempRet0; - $256 = $252;$259 = $253; - } - $254 = $cMask2; - $255 = $254; - HEAP32[$255>>2] = $256; - $257 = (($254) + 4)|0; - $258 = $257; - HEAP32[$258>>2] = $259; - $260 = $idxCols; - $261 = $260; - $262 = HEAP32[$261>>2]|0; - $263 = (($260) + 4)|0; - $264 = $263; - $265 = HEAP32[$264>>2]|0; - $266 = $cMask2; - $267 = $266; - $268 = HEAP32[$267>>2]|0; - $269 = (($266) + 4)|0; - $270 = $269; - $271 = HEAP32[$270>>2]|0; - $272 = $262 & $268; - $273 = $265 & $271; - $274 = ($272|0)==(0); - $275 = ($273|0)==(0); - $276 = $274 & $275; - if ($276) { - $277 = HEAP32[$pTerm>>2]|0; - $278 = HEAP32[$277>>2]|0; - HEAP32[$pX>>2] = $278; - $279 = $cMask2; - $280 = $279; - $281 = HEAP32[$280>>2]|0; - $282 = (($279) + 4)|0; - $283 = $282; - $284 = HEAP32[$283>>2]|0; - $285 = $idxCols; - $286 = $285; - $287 = HEAP32[$286>>2]|0; - $288 = (($285) + 4)|0; - $289 = $288; - $290 = HEAP32[$289>>2]|0; - $291 = $287 | $281; - $292 = $290 | $284; - $293 = $idxCols; - $294 = $293; - HEAP32[$294>>2] = $291; - $295 = (($293) + 4)|0; - $296 = $295; - HEAP32[$296>>2] = $292; - $297 = HEAP32[$pTerm>>2]|0; - $298 = (($297) + 12|0); - $299 = HEAP32[$298>>2]|0; - $300 = $299&65535; - $301 = HEAP32[$n>>2]|0; - $302 = HEAP32[$pIdx>>2]|0; - $303 = (($302) + 4|0); - $304 = HEAP32[$303>>2]|0; - $305 = (($304) + ($301<<1)|0); - HEAP16[$305>>1] = $300; - $306 = HEAP32[$2>>2]|0; - $307 = HEAP32[$pX>>2]|0; - $308 = (($307) + 12|0); - $309 = HEAP32[$308>>2]|0; - $310 = HEAP32[$pX>>2]|0; - $311 = (($310) + 16|0); - $312 = HEAP32[$311>>2]|0; - $313 = (_sqlite3BinaryCompareCollSeq($306,$309,$312)|0); - HEAP32[$pColl>>2] = $313; - $314 = HEAP32[$pColl>>2]|0; - $315 = ($314|0)!=(0|0); - if ($315) { - $316 = HEAP32[$pColl>>2]|0; - $317 = HEAP32[$316>>2]|0; - $323 = $317; - } else { - $323 = 3320; - } - $318 = HEAP32[$n>>2]|0; - $319 = HEAP32[$pIdx>>2]|0; - $320 = (($319) + 32|0); - $321 = HEAP32[$320>>2]|0; - $322 = (($321) + ($318<<2)|0); - HEAP32[$322>>2] = $323; - $324 = HEAP32[$n>>2]|0; - $325 = (($324) + 1)|0; - HEAP32[$n>>2] = $325; - } - } - $326 = HEAP32[$pTerm>>2]|0; - $327 = (($326) + 48|0); - HEAP32[$pTerm>>2] = $327; - } - HEAP32[$i>>2] = 0; - while(1) { - $328 = HEAP32[$i>>2]|0; - $329 = HEAP32[$mxBitCol>>2]|0; - $330 = ($328|0)<($329|0); - if (!($330)) { - break; - } - $331 = $extraCols; - $332 = $331; - $333 = HEAP32[$332>>2]|0; - $334 = (($331) + 4)|0; - $335 = $334; - $336 = HEAP32[$335>>2]|0; - $337 = HEAP32[$i>>2]|0; - $338 = (_bitshift64Shl(1,0,($337|0))|0); - $339 = tempRet0; - $340 = $333 & $338; - $341 = $336 & $339; - $342 = ($340|0)!=(0); - $343 = ($341|0)!=(0); - $344 = $342 | $343; - if ($344) { - $345 = HEAP32[$i>>2]|0; - $346 = $345&65535; - $347 = HEAP32[$n>>2]|0; - $348 = HEAP32[$pIdx>>2]|0; - $349 = (($348) + 4|0); - $350 = HEAP32[$349>>2]|0; - $351 = (($350) + ($347<<1)|0); - HEAP16[$351>>1] = $346; - $352 = HEAP32[$n>>2]|0; - $353 = HEAP32[$pIdx>>2]|0; - $354 = (($353) + 32|0); - $355 = HEAP32[$354>>2]|0; - $356 = (($355) + ($352<<2)|0); - HEAP32[$356>>2] = 3320; - $357 = HEAP32[$n>>2]|0; - $358 = (($357) + 1)|0; - HEAP32[$n>>2] = $358; - } - $359 = HEAP32[$i>>2]|0; - $360 = (($359) + 1)|0; - HEAP32[$i>>2] = $360; - } - $361 = HEAP32[$4>>2]|0; - $362 = (($361) + 56|0); - $363 = $362; - $364 = $363; - $365 = HEAP32[$364>>2]|0; - $366 = (($363) + 4)|0; - $367 = $366; - $368 = HEAP32[$367>>2]|0; - $369 = $368 & -2147483648; - $370 = (0)!=(0); - $371 = ($369|0)!=(0); - $372 = $370 | $371; - L55: do { - if ($372) { - HEAP32[$i>>2] = 63; - while(1) { - $373 = HEAP32[$i>>2]|0; - $374 = HEAP32[$pTable>>2]|0; - $375 = (($374) + 38|0); - $376 = HEAP16[$375>>1]|0; - $377 = $376 << 16 >> 16; - $378 = ($373|0)<($377|0); - if (!($378)) { - break L55; - } - $379 = HEAP32[$i>>2]|0; - $380 = $379&65535; - $381 = HEAP32[$n>>2]|0; - $382 = HEAP32[$pIdx>>2]|0; - $383 = (($382) + 4|0); - $384 = HEAP32[$383>>2]|0; - $385 = (($384) + ($381<<1)|0); - HEAP16[$385>>1] = $380; - $386 = HEAP32[$n>>2]|0; - $387 = HEAP32[$pIdx>>2]|0; - $388 = (($387) + 32|0); - $389 = HEAP32[$388>>2]|0; - $390 = (($389) + ($386<<2)|0); - HEAP32[$390>>2] = 3320; - $391 = HEAP32[$n>>2]|0; - $392 = (($391) + 1)|0; - HEAP32[$n>>2] = $392; - $393 = HEAP32[$i>>2]|0; - $394 = (($393) + 1)|0; - HEAP32[$i>>2] = $394; - } - } - } while(0); - $395 = HEAP32[$n>>2]|0; - $396 = HEAP32[$pIdx>>2]|0; - $397 = (($396) + 4|0); - $398 = HEAP32[$397>>2]|0; - $399 = (($398) + ($395<<1)|0); - HEAP16[$399>>1] = -1; - $400 = HEAP32[$n>>2]|0; - $401 = HEAP32[$pIdx>>2]|0; - $402 = (($401) + 32|0); - $403 = HEAP32[$402>>2]|0; - $404 = (($403) + ($400<<2)|0); - HEAP32[$404>>2] = 3320; - $405 = HEAP32[$2>>2]|0; - $406 = (($405) + 68|0); - $407 = HEAP32[$406>>2]|0; - $408 = (($407) + 1)|0; - HEAP32[$406>>2] = $408; - $409 = HEAP32[$6>>2]|0; - $410 = (($409) + 8|0); - HEAP32[$410>>2] = $407; - $411 = HEAP32[$v>>2]|0; - $412 = HEAP32[$6>>2]|0; - $413 = (($412) + 8|0); - $414 = HEAP32[$413>>2]|0; - $415 = HEAP32[$nKeyCol>>2]|0; - $416 = (($415) + 1)|0; - (_sqlite3VdbeAddOp2($411,54,$414,$416)|0); - $417 = HEAP32[$2>>2]|0; - $418 = HEAP32[$pIdx>>2]|0; - _sqlite3VdbeSetP4KeyInfo($417,$418); - $419 = HEAP32[$v>>2]|0; - $420 = HEAP32[$6>>2]|0; - $421 = (($420) + 4|0); - $422 = HEAP32[$421>>2]|0; - $423 = (_sqlite3VdbeAddOp1($419,105,$422)|0); - HEAP32[$addrTop>>2] = $423; - $424 = HEAP32[$2>>2]|0; - $425 = (_sqlite3GetTempReg($424)|0); - HEAP32[$regRecord>>2] = $425; - $426 = HEAP32[$2>>2]|0; - $427 = HEAP32[$pIdx>>2]|0; - $428 = HEAP32[$6>>2]|0; - $429 = (($428) + 4|0); - $430 = HEAP32[$429>>2]|0; - $431 = HEAP32[$regRecord>>2]|0; - (_sqlite3GenerateIndexKey($426,$427,$430,$431,0,0,0,0)|0); - $432 = HEAP32[$v>>2]|0; - $433 = HEAP32[$6>>2]|0; - $434 = (($433) + 8|0); - $435 = HEAP32[$434>>2]|0; - $436 = HEAP32[$regRecord>>2]|0; - (_sqlite3VdbeAddOp2($432,107,$435,$436)|0); - $437 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($437,16); - $438 = HEAP32[$v>>2]|0; - $439 = HEAP32[$6>>2]|0; - $440 = (($439) + 4|0); - $441 = HEAP32[$440>>2]|0; - $442 = HEAP32[$addrTop>>2]|0; - $443 = (($442) + 1)|0; - (_sqlite3VdbeAddOp2($438,9,$441,$443)|0); - $444 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($444,3); - $445 = HEAP32[$v>>2]|0; - $446 = HEAP32[$addrTop>>2]|0; - _sqlite3VdbeJumpHere($445,$446); - $447 = HEAP32[$2>>2]|0; - $448 = HEAP32[$regRecord>>2]|0; - _sqlite3ReleaseTempReg($447,$448); - $449 = HEAP32[$v>>2]|0; - $450 = HEAP32[$addrInit>>2]|0; - _sqlite3VdbeJumpHere($449,$450); - STACKTOP = sp;return; -} -function _explainOneScan($pParse,$pTabList,$pLevel,$iLevel,$iFrom,$wctrlFlags) { - $pParse = $pParse|0; - $pTabList = $pTabList|0; - $pLevel = $pLevel|0; - $iLevel = $iLevel|0; - $iFrom = $iFrom|0; - $wctrlFlags = $wctrlFlags|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; - var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; - var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; - var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; - var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0; - var $flags = 0, $iId = 0, $isSearch = 0, $pIdx = 0, $pItem = 0, $pLoop = 0, $v = 0, $vararg_buffer38 = 0, $vararg_ptr12 = 0, $vararg_ptr16 = 0, $vararg_ptr17 = 0, $vararg_ptr36 = 0, $vararg_ptr37 = 0, $vararg_ptr4 = 0, $vararg_ptr8 = 0, $zFmt = 0, $zMsg = 0, $zWhere = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer38 = sp; - $0 = sp + 72|0; - $1 = sp + 68|0; - $2 = sp + 64|0; - $3 = sp + 60|0; - $4 = sp + 56|0; - $5 = sp + 76|0; - $pItem = sp + 52|0; - $v = sp + 48|0; - $db = sp + 44|0; - $zMsg = sp + 40|0; - $iId = sp + 36|0; - $isSearch = sp + 32|0; - $pLoop = sp + 28|0; - $flags = sp + 24|0; - $zFmt = sp + 20|0; - $pIdx = sp + 16|0; - $zWhere = sp + 12|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTabList; - HEAP32[$2>>2] = $pLevel; - HEAP32[$3>>2] = $iLevel; - HEAP32[$4>>2] = $iFrom; - HEAP16[$5>>1] = $wctrlFlags; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 450|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - $10 = ($9|0)==(2); - if (!($10)) { - STACKTOP = sp;return; - } - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 36|0); - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 8|0); - $17 = (($16) + (($14*72)|0)|0); - HEAP32[$pItem>>2] = $17; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 8|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$v>>2] = $20; - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$21>>2]|0; - HEAP32[$db>>2] = $22; - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 464|0); - $25 = HEAP32[$24>>2]|0; - HEAP32[$iId>>2] = $25; - $26 = HEAP32[$2>>2]|0; - $27 = (($26) + 56|0); - $28 = HEAP32[$27>>2]|0; - HEAP32[$pLoop>>2] = $28; - $29 = HEAP32[$pLoop>>2]|0; - $30 = (($29) + 36|0); - $31 = HEAP32[$30>>2]|0; - HEAP32[$flags>>2] = $31; - $32 = HEAP32[$flags>>2]|0; - $33 = $32 & 8192; - $34 = ($33|0)!=(0); - if ($34) { - STACKTOP = sp;return; - } - $35 = HEAP16[$5>>1]|0; - $36 = $35&65535; - $37 = $36 & 64; - $38 = ($37|0)!=(0); - if ($38) { - STACKTOP = sp;return; - } - $39 = HEAP32[$flags>>2]|0; - $40 = $39 & 48; - $41 = ($40|0)!=(0); - do { - if ($41) { - $55 = 1; - } else { - $42 = HEAP32[$flags>>2]|0; - $43 = $42 & 1024; - $44 = ($43|0)==(0); - if ($44) { - $45 = HEAP32[$pLoop>>2]|0; - $46 = (($45) + 24|0); - $47 = HEAP16[$46>>1]|0; - $48 = $47&65535; - $49 = ($48|0)>(0); - if ($49) { - $55 = 1; - break; - } - } - $50 = HEAP16[$5>>1]|0; - $51 = $50&65535; - $52 = $51 & 3; - $53 = ($52|0)!=(0); - $55 = $53; - } - } while(0); - $54 = $55&1; - HEAP32[$isSearch>>2] = $54; - $56 = HEAP32[$db>>2]|0; - $57 = HEAP32[$isSearch>>2]|0; - $58 = ($57|0)!=(0); - $59 = $58 ? 23432 : 23440; - HEAP32[$vararg_buffer38>>2] = $59; - $60 = (_sqlite3MPrintf($56,1456,$vararg_buffer38)|0); - HEAP32[$zMsg>>2] = $60; - $61 = HEAP32[$pItem>>2]|0; - $62 = (($61) + 20|0); - $63 = HEAP32[$62>>2]|0; - $64 = ($63|0)!=(0|0); - $65 = HEAP32[$db>>2]|0; - $66 = HEAP32[$zMsg>>2]|0; - $67 = HEAP32[$zMsg>>2]|0; - $68 = HEAP32[$pItem>>2]|0; - if ($64) { - $69 = (($68) + 38|0); - $70 = HEAP8[$69>>0]|0; - $71 = $70&255; - HEAP32[$vararg_buffer38>>2] = $67; - $vararg_ptr4 = (($vararg_buffer38) + 4|0); - HEAP32[$vararg_ptr4>>2] = $71; - $72 = (_sqlite3MAppendf($65,$66,23448,$vararg_buffer38)|0); - HEAP32[$zMsg>>2] = $72; - } else { - $73 = (($68) + 8|0); - $74 = HEAP32[$73>>2]|0; - HEAP32[$vararg_buffer38>>2] = $67; - $vararg_ptr8 = (($vararg_buffer38) + 4|0); - HEAP32[$vararg_ptr8>>2] = $74; - $75 = (_sqlite3MAppendf($65,$66,23464,$vararg_buffer38)|0); - HEAP32[$zMsg>>2] = $75; - } - $76 = HEAP32[$pItem>>2]|0; - $77 = (($76) + 12|0); - $78 = HEAP32[$77>>2]|0; - $79 = ($78|0)!=(0|0); - if ($79) { - $80 = HEAP32[$db>>2]|0; - $81 = HEAP32[$zMsg>>2]|0; - $82 = HEAP32[$zMsg>>2]|0; - $83 = HEAP32[$pItem>>2]|0; - $84 = (($83) + 12|0); - $85 = HEAP32[$84>>2]|0; - HEAP32[$vararg_buffer38>>2] = $82; - $vararg_ptr12 = (($vararg_buffer38) + 4|0); - HEAP32[$vararg_ptr12>>2] = $85; - $86 = (_sqlite3MAppendf($80,$81,23480,$vararg_buffer38)|0); - HEAP32[$zMsg>>2] = $86; - } - $87 = HEAP32[$flags>>2]|0; - $88 = $87 & 1280; - $89 = ($88|0)==(0); - if ($89) { - $90 = HEAP32[$pLoop>>2]|0; - $91 = (($90) + 24|0); - $92 = (($91) + 4|0); - $93 = HEAP32[$92>>2]|0; - $94 = ($93|0)!=(0|0); - if ($94) { - $95 = HEAP32[$pLoop>>2]|0; - $96 = (($95) + 24|0); - $97 = (($96) + 4|0); - $98 = HEAP32[$97>>2]|0; - HEAP32[$pIdx>>2] = $98; - $99 = HEAP32[$db>>2]|0; - $100 = HEAP32[$pLoop>>2]|0; - $101 = HEAP32[$pItem>>2]|0; - $102 = (($101) + 16|0); - $103 = HEAP32[$102>>2]|0; - $104 = (_explainIndexRange($99,$100,$103)|0); - HEAP32[$zWhere>>2] = $104; - $105 = HEAP32[$pItem>>2]|0; - $106 = (($105) + 16|0); - $107 = HEAP32[$106>>2]|0; - $108 = (($107) + 44|0); - $109 = HEAP8[$108>>0]|0; - $110 = $109&255; - $111 = $110 & 32; - $112 = ($111|0)==(0); - if ($112) { - label = 18; - } else { - $113 = HEAP32[$pIdx>>2]|0; - $114 = (($113) + 55|0); - $115 = HEAP8[$114>>0]|0; - $116 = $115 & 3; - $117 = $116&255; - $118 = ($117|0)==(2); - if ($118) { - $119 = HEAP32[$zWhere>>2]|0; - $120 = ($119|0)!=(0|0); - $121 = $120 ? 23496 : 23528; - HEAP32[$zFmt>>2] = $121; - } else { - label = 18; - } - } - do { - if ((label|0) == 18) { - $122 = HEAP32[$flags>>2]|0; - $123 = $122 & 16384; - $124 = ($123|0)!=(0); - if ($124) { - HEAP32[$zFmt>>2] = 23544; - break; - } - $125 = HEAP32[$flags>>2]|0; - $126 = $125 & 64; - $127 = ($126|0)!=(0); - if ($127) { - HEAP32[$zFmt>>2] = 23584; - break; - } else { - HEAP32[$zFmt>>2] = 23616; - break; - } - } - } while(0); - $128 = HEAP32[$db>>2]|0; - $129 = HEAP32[$zMsg>>2]|0; - $130 = HEAP32[$zFmt>>2]|0; - $131 = HEAP32[$zMsg>>2]|0; - $132 = HEAP32[$pIdx>>2]|0; - $133 = HEAP32[$132>>2]|0; - $134 = HEAP32[$zWhere>>2]|0; - HEAP32[$vararg_buffer38>>2] = $131; - $vararg_ptr16 = (($vararg_buffer38) + 4|0); - HEAP32[$vararg_ptr16>>2] = $133; - $vararg_ptr17 = (($vararg_buffer38) + 8|0); - HEAP32[$vararg_ptr17>>2] = $134; - $135 = (_sqlite3MAppendf($128,$129,$130,$vararg_buffer38)|0); - HEAP32[$zMsg>>2] = $135; - $136 = HEAP32[$db>>2]|0; - $137 = HEAP32[$zWhere>>2]|0; - _sqlite3DbFree($136,$137); - } else { - label = 24; - } - } else { - label = 24; - } - do { - if ((label|0) == 24) { - $138 = HEAP32[$flags>>2]|0; - $139 = $138 & 256; - $140 = ($139|0)!=(0); - if ($140) { - $141 = HEAP32[$flags>>2]|0; - $142 = $141 & 15; - $143 = ($142|0)!=(0); - if ($143) { - $144 = HEAP32[$db>>2]|0; - $145 = HEAP32[$zMsg>>2]|0; - $146 = HEAP32[$zMsg>>2]|0; - HEAP32[$vararg_buffer38>>2] = $146; - $147 = (_sqlite3MAppendf($144,$145,23640,$vararg_buffer38)|0); - HEAP32[$zMsg>>2] = $147; - $148 = HEAP32[$flags>>2]|0; - $149 = $148 & 5; - $150 = ($149|0)!=(0); - if ($150) { - $151 = HEAP32[$db>>2]|0; - $152 = HEAP32[$zMsg>>2]|0; - $153 = HEAP32[$zMsg>>2]|0; - HEAP32[$vararg_buffer38>>2] = $153; - $154 = (_sqlite3MAppendf($151,$152,23672,$vararg_buffer38)|0); - HEAP32[$zMsg>>2] = $154; - break; - } - $155 = HEAP32[$flags>>2]|0; - $156 = $155 & 48; - $157 = ($156|0)==(48); - if ($157) { - $158 = HEAP32[$db>>2]|0; - $159 = HEAP32[$zMsg>>2]|0; - $160 = HEAP32[$zMsg>>2]|0; - HEAP32[$vararg_buffer38>>2] = $160; - $161 = (_sqlite3MAppendf($158,$159,23688,$vararg_buffer38)|0); - HEAP32[$zMsg>>2] = $161; - break; - } - $162 = HEAP32[$flags>>2]|0; - $163 = $162 & 32; - $164 = ($163|0)!=(0); - if ($164) { - $165 = HEAP32[$db>>2]|0; - $166 = HEAP32[$zMsg>>2]|0; - $167 = HEAP32[$zMsg>>2]|0; - HEAP32[$vararg_buffer38>>2] = $167; - $168 = (_sqlite3MAppendf($165,$166,23720,$vararg_buffer38)|0); - HEAP32[$zMsg>>2] = $168; - break; - } - $169 = HEAP32[$flags>>2]|0; - $170 = $169 & 16; - $171 = ($170|0)!=(0); - if (!($171)) { - break; - } - $172 = HEAP32[$db>>2]|0; - $173 = HEAP32[$zMsg>>2]|0; - $174 = HEAP32[$zMsg>>2]|0; - HEAP32[$vararg_buffer38>>2] = $174; - $175 = (_sqlite3MAppendf($172,$173,23736,$vararg_buffer38)|0); - HEAP32[$zMsg>>2] = $175; - break; - } - } - $176 = HEAP32[$flags>>2]|0; - $177 = $176 & 1024; - $178 = ($177|0)!=(0); - if ($178) { - $179 = HEAP32[$db>>2]|0; - $180 = HEAP32[$zMsg>>2]|0; - $181 = HEAP32[$zMsg>>2]|0; - $182 = HEAP32[$pLoop>>2]|0; - $183 = (($182) + 24|0); - $184 = HEAP32[$183>>2]|0; - $185 = HEAP32[$pLoop>>2]|0; - $186 = (($185) + 24|0); - $187 = (($186) + 8|0); - $188 = HEAP32[$187>>2]|0; - HEAP32[$vararg_buffer38>>2] = $181; - $vararg_ptr36 = (($vararg_buffer38) + 4|0); - HEAP32[$vararg_ptr36>>2] = $184; - $vararg_ptr37 = (($vararg_buffer38) + 8|0); - HEAP32[$vararg_ptr37>>2] = $188; - $189 = (_sqlite3MAppendf($179,$180,23752,$vararg_buffer38)|0); - HEAP32[$zMsg>>2] = $189; - } - } - } while(0); - $190 = HEAP32[$db>>2]|0; - $191 = HEAP32[$zMsg>>2]|0; - $192 = HEAP32[$zMsg>>2]|0; - HEAP32[$vararg_buffer38>>2] = $192; - $193 = (_sqlite3MAppendf($190,$191,1456,$vararg_buffer38)|0); - HEAP32[$zMsg>>2] = $193; - $194 = HEAP32[$v>>2]|0; - $195 = HEAP32[$iId>>2]|0; - $196 = HEAP32[$3>>2]|0; - $197 = HEAP32[$4>>2]|0; - $198 = HEAP32[$zMsg>>2]|0; - (_sqlite3VdbeAddOp4($194,157,$195,$196,$197,$198,-1)|0); - STACKTOP = sp;return; -} -function _codeOneLoopStart($pWInfo,$iLevel,$0,$1) { - $pWInfo = $pWInfo|0; - $iLevel = $iLevel|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0, $1015 = 0, $1016 = 0; - var $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0, $1033 = 0, $1034 = 0; - var $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0, $1051 = 0, $1052 = 0; - var $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0, $107 = 0, $1070 = 0; - var $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0, $1088 = 0, $1089 = 0; - var $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0, $1105 = 0, $1106 = 0; - var $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0, $1123 = 0, $1124 = 0; - var $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0, $1141 = 0, $1142 = 0; - var $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0, $116 = 0, $1160 = 0; - var $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0, $1178 = 0, $1179 = 0; - var $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0, $1196 = 0, $1197 = 0; - var $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0, $1213 = 0, $1214 = 0; - var $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0, $1231 = 0, $1232 = 0; - var $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0, $125 = 0, $1250 = 0; - var $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0, $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0, $1268 = 0, $1269 = 0; - var $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0, $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0, $1286 = 0, $1287 = 0; - var $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0, $1292 = 0, $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, $1299 = 0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0, $1303 = 0, $1304 = 0; - var $1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0, $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0, $1321 = 0, $1322 = 0; - var $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0, $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 0, $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0, $134 = 0, $1340 = 0; - var $1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 0, $1346 = 0, $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, $1352 = 0, $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0, $1358 = 0, $1359 = 0; - var $136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 0, $1364 = 0, $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, $1370 = 0, $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0, $1376 = 0, $1377 = 0; - var $1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 0, $1382 = 0, $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, $1389 = 0, $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0, $1394 = 0, $1395 = 0; - var $1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 0, $140 = 0, $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, $1406 = 0, $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0, $1411 = 0, $1412 = 0; - var $1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 0, $1418 = 0, $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, $1424 = 0, $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0, $143 = 0, $1430 = 0; - var $1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 0, $1436 = 0, $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, $1442 = 0, $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0, $1448 = 0, $1449 = 0; - var $145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 0, $1454 = 0, $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, $1460 = 0, $1461 = 0, $1462 = 0, $1463 = 0, $1464 = 0, $1465 = 0, $1466 = 0, $1467 = 0; - var $1468 = 0, $1469 = 0, $147 = 0, $1470 = 0, $1471 = 0, $1472 = 0, $1473 = 0, $1474 = 0, $1475 = 0, $1476 = 0, $1477 = 0, $1478 = 0, $1479 = 0, $148 = 0, $1480 = 0, $1481 = 0, $1482 = 0, $1483 = 0, $1484 = 0, $1485 = 0; - var $1486 = 0, $1487 = 0, $1488 = 0, $1489 = 0, $149 = 0, $1490 = 0, $1491 = 0, $1492 = 0, $1493 = 0, $1494 = 0, $1495 = 0, $1496 = 0, $1497 = 0, $1498 = 0, $1499 = 0, $15 = 0, $150 = 0, $1500 = 0, $1501 = 0, $1502 = 0; - var $1503 = 0, $1504 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0; - var $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0; - var $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0; - var $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0; - var $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0; - var $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0; - var $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0; - var $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0; - var $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0; - var $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0; - var $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0; - var $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0; - var $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0; - var $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0; - var $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0; - var $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0; - var $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0; - var $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0; - var $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0; - var $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0; - var $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0; - var $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0; - var $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0; - var $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0; - var $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0; - var $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0; - var $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0; - var $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0; - var $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0; - var $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0; - var $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0; - var $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0; - var $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0; - var $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0; - var $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0; - var $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0; - var $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0; - var $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0; - var $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0; - var $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0; - var $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0; - var $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0; - var $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0; - var $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0; - var $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0; - var $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0; - var $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0; - var $997 = 0, $998 = 0, $999 = 0, $addrBrk = 0, $addrCont = 0, $addrNotFound = 0, $addrNxt = 0, $bRev = 0, $bSeekPastNull = 0, $bStopAtNull = 0, $cEndAff = 0, $db = 0, $endEq = 0, $iCol = 0, $iCovCur = 0, $iCur = 0, $iIdxCur = 0, $iLoopBody = 0, $iPk = 0, $iReg = 0; - var $iReleaseReg = 0, $iRetInit = 0, $iRowidReg = 0, $iSet = 0, $iTarget = 0, $iTerm = 0, $ii = 0, $j = 0, $j1 = 0, $k = 0, $memEndValue = 0, $nConstraint = 0, $nConstraint2 = 0, $nEq = 0, $nExtraReg = 0, $nNotReady = 0, $nPk = 0, $omitTable = 0, $op = 0, $or$cond = 0; - var $origSrc = 0, $pAlt = 0, $pAndExpr = 0, $pCov = 0, $pE = 0, $pE7 = 0, $pEAlt = 0, $pEnd = 0, $pExpr = 0, $pIdx = 0, $pLevel = 0, $pLoop = 0, $pOrExpr = 0, $pOrTab = 0, $pOrTerm = 0, $pOrWc = 0, $pParse = 0, $pPk = 0, $pPk5 = 0, $pPk6 = 0; - var $pRangeEnd = 0, $pRangeStart = 0, $pRight = 0, $pRight4 = 0, $pStart = 0, $pSubLoop = 0, $pSubWInfo = 0, $pTab = 0, $pTabItem = 0, $pTerm = 0, $pWC = 0, $pX = 0, $pX1 = 0, $r = 0, $r1 = 0, $rTemp = 0, $regBase = 0, $regReturn = 0, $regRowid = 0, $regRowset = 0; - var $regYield = 0, $start = 0, $startEq = 0, $start_constraints = 0, $t = 0, $t3 = 0, $testOp = 0, $untestedTerms = 0, $v = 0, $zStartAff = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 368|0; - $2 = sp + 8|0; - $3 = sp + 344|0; - $4 = sp + 340|0; - $5 = sp; - $j = sp + 336|0; - $k = sp + 332|0; - $iCur = sp + 328|0; - $addrNxt = sp + 324|0; - $omitTable = sp + 320|0; - $bRev = sp + 316|0; - $pLevel = sp + 312|0; - $pLoop = sp + 308|0; - $pWC = sp + 304|0; - $pTerm = sp + 300|0; - $pParse = sp + 296|0; - $db = sp + 292|0; - $v = sp + 288|0; - $pTabItem = sp + 284|0; - $addrBrk = sp + 280|0; - $addrCont = sp + 276|0; - $iRowidReg = sp + 272|0; - $iReleaseReg = sp + 268|0; - $regYield = sp + 264|0; - $iReg = sp + 260|0; - $addrNotFound = sp + 256|0; - $nConstraint = sp + 252|0; - $iTarget = sp + 248|0; - $testOp = sp + 244|0; - $start = sp + 240|0; - $memEndValue = sp + 236|0; - $pStart = sp + 232|0; - $pEnd = sp + 228|0; - $pX = sp + 224|0; - $r1 = sp + 220|0; - $rTemp = sp + 216|0; - $pX1 = sp + 212|0; - $nEq = sp + 348|0; - $regBase = sp + 208|0; - $pRangeStart = sp + 204|0; - $pRangeEnd = sp + 200|0; - $startEq = sp + 196|0; - $endEq = sp + 192|0; - $start_constraints = sp + 188|0; - $nConstraint2 = sp + 184|0; - $pIdx = sp + 180|0; - $iIdxCur = sp + 176|0; - $nExtraReg = sp + 172|0; - $op = sp + 168|0; - $zStartAff = sp + 164|0; - $cEndAff = sp + 353|0; - $bSeekPastNull = sp + 352|0; - $bStopAtNull = sp + 351|0; - $t = sp + 160|0; - $t3 = sp + 350|0; - $pRight = sp + 156|0; - $pRight4 = sp + 152|0; - $pPk = sp + 148|0; - $pOrWc = sp + 144|0; - $pOrTab = sp + 140|0; - $pCov = sp + 136|0; - $iCovCur = sp + 132|0; - $regReturn = sp + 128|0; - $regRowset = sp + 124|0; - $regRowid = sp + 120|0; - $iLoopBody = sp + 116|0; - $iRetInit = sp + 112|0; - $untestedTerms = sp + 108|0; - $ii = sp + 104|0; - $pAndExpr = sp + 100|0; - $pTab = sp + 96|0; - $nNotReady = sp + 92|0; - $origSrc = sp + 88|0; - $pPk5 = sp + 84|0; - $iTerm = sp + 80|0; - $pExpr = sp + 76|0; - $pOrTerm = sp + 72|0; - $pSubWInfo = sp + 68|0; - $pOrExpr = sp + 64|0; - $j1 = sp + 60|0; - $pSubLoop = sp + 56|0; - $r = sp + 52|0; - $iSet = sp + 48|0; - $pPk6 = sp + 44|0; - $nPk = sp + 40|0; - $iPk = sp + 36|0; - $iCol = sp + 32|0; - $pE = sp + 28|0; - $pE7 = sp + 24|0; - $pEAlt = sp + 20|0; - $pAlt = sp + 16|0; - HEAP32[$3>>2] = $pWInfo; - HEAP32[$4>>2] = $iLevel; - $6 = $5; - $7 = $6; - HEAP32[$7>>2] = $0; - $8 = (($6) + 4)|0; - $9 = $8; - HEAP32[$9>>2] = $1; - HEAP32[$iRowidReg>>2] = 0; - HEAP32[$iReleaseReg>>2] = 0; - $10 = HEAP32[$3>>2]|0; - $11 = HEAP32[$10>>2]|0; - HEAP32[$pParse>>2] = $11; - $12 = HEAP32[$pParse>>2]|0; - $13 = (($12) + 8|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$v>>2] = $14; - $15 = HEAP32[$3>>2]|0; - $16 = (($15) + 328|0); - HEAP32[$pWC>>2] = $16; - $17 = HEAP32[$pParse>>2]|0; - $18 = HEAP32[$17>>2]|0; - HEAP32[$db>>2] = $18; - $19 = HEAP32[$4>>2]|0; - $20 = HEAP32[$3>>2]|0; - $21 = (($20) + 736|0); - $22 = (($21) + (($19*72)|0)|0); - HEAP32[$pLevel>>2] = $22; - $23 = HEAP32[$pLevel>>2]|0; - $24 = (($23) + 56|0); - $25 = HEAP32[$24>>2]|0; - HEAP32[$pLoop>>2] = $25; - $26 = HEAP32[$pLevel>>2]|0; - $27 = (($26) + 36|0); - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = HEAP32[$3>>2]|0; - $31 = (($30) + 4|0); - $32 = HEAP32[$31>>2]|0; - $33 = (($32) + 8|0); - $34 = (($33) + (($29*72)|0)|0); - HEAP32[$pTabItem>>2] = $34; - $35 = HEAP32[$pTabItem>>2]|0; - $36 = (($35) + 40|0); - $37 = HEAP32[$36>>2]|0; - HEAP32[$iCur>>2] = $37; - $38 = $5; - $39 = $38; - $40 = HEAP32[$39>>2]|0; - $41 = (($38) + 4)|0; - $42 = $41; - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$3>>2]|0; - $45 = (($44) + 68|0); - $46 = HEAP32[$iCur>>2]|0; - $47 = (_getMask($45,$46)|0); - $48 = tempRet0; - $49 = $47 ^ -1; - $50 = $48 ^ -1; - $51 = $40 & $49; - $52 = $43 & $50; - $53 = HEAP32[$pLevel>>2]|0; - $54 = (($53) + 64|0); - $55 = $54; - $56 = $55; - HEAP32[$56>>2] = $51; - $57 = (($55) + 4)|0; - $58 = $57; - HEAP32[$58>>2] = $52; - $59 = HEAP32[$3>>2]|0; - $60 = (($59) + 24|0); - $61 = $60; - $62 = $61; - $63 = HEAP32[$62>>2]|0; - $64 = (($61) + 4)|0; - $65 = $64; - $66 = HEAP32[$65>>2]|0; - $67 = HEAP32[$4>>2]|0; - $68 = (_bitshift64Lshr(($63|0),($66|0),($67|0))|0); - $69 = tempRet0; - $70 = $68 & 1; - HEAP32[$bRev>>2] = $70; - $71 = HEAP32[$pLoop>>2]|0; - $72 = (($71) + 36|0); - $73 = HEAP32[$72>>2]|0; - $74 = $73 & 64; - $75 = ($74|0)!=(0); - if ($75) { - $76 = HEAP32[$3>>2]|0; - $77 = (($76) + 34|0); - $78 = HEAP16[$77>>1]|0; - $79 = $78&65535; - $80 = $79 & 32; - $81 = ($80|0)==(0); - $83 = $81; - } else { - $83 = 0; - } - $82 = $83&1; - HEAP32[$omitTable>>2] = $82; - $84 = HEAP32[$v>>2]|0; - $85 = (_sqlite3VdbeMakeLabel($84)|0); - $86 = HEAP32[$pLevel>>2]|0; - $87 = (($86) + 16|0); - HEAP32[$87>>2] = $85; - $88 = HEAP32[$pLevel>>2]|0; - $89 = (($88) + 12|0); - HEAP32[$89>>2] = $85; - HEAP32[$addrBrk>>2] = $85; - $90 = HEAP32[$v>>2]|0; - $91 = (_sqlite3VdbeMakeLabel($90)|0); - $92 = HEAP32[$pLevel>>2]|0; - $93 = (($92) + 24|0); - HEAP32[$93>>2] = $91; - HEAP32[$addrCont>>2] = $91; - $94 = HEAP32[$pLevel>>2]|0; - $95 = (($94) + 36|0); - $96 = HEAP8[$95>>0]|0; - $97 = $96&255; - $98 = ($97|0)>(0); - if ($98) { - $99 = HEAP32[$pTabItem>>2]|0; - $100 = (($99) + 36|0); - $101 = HEAP8[$100>>0]|0; - $102 = $101&255; - $103 = $102 & 8; - $104 = ($103|0)!=(0); - if ($104) { - $105 = HEAP32[$pParse>>2]|0; - $106 = (($105) + 72|0); - $107 = HEAP32[$106>>2]|0; - $108 = (($107) + 1)|0; - HEAP32[$106>>2] = $108; - $109 = HEAP32[$pLevel>>2]|0; - HEAP32[$109>>2] = $108; - $110 = HEAP32[$v>>2]|0; - $111 = HEAP32[$pLevel>>2]|0; - $112 = HEAP32[$111>>2]|0; - (_sqlite3VdbeAddOp2($110,25,0,$112)|0); - } - } - $113 = HEAP32[$pTabItem>>2]|0; - $114 = (($113) + 37|0); - $115 = HEAP8[$114>>0]|0; - $116 = ($115&255) >>> 2; - $117 = $116 & 1; - $118 = $117&255; - $119 = ($118|0)!=(0); - do { - if ($119) { - $120 = HEAP32[$pTabItem>>2]|0; - $121 = (($120) + 28|0); - $122 = HEAP32[$121>>2]|0; - HEAP32[$regYield>>2] = $122; - $123 = HEAP32[$v>>2]|0; - $124 = HEAP32[$regYield>>2]|0; - $125 = HEAP32[$pTabItem>>2]|0; - $126 = (($125) + 24|0); - $127 = HEAP32[$126>>2]|0; - (_sqlite3VdbeAddOp3($123,20,$124,0,$127)|0); - $128 = HEAP32[$v>>2]|0; - $129 = HEAP32[$regYield>>2]|0; - $130 = HEAP32[$addrBrk>>2]|0; - $131 = (_sqlite3VdbeAddOp2($128,22,$129,$130)|0); - $132 = HEAP32[$pLevel>>2]|0; - $133 = (($132) + 44|0); - HEAP32[$133>>2] = $131; - $134 = HEAP32[$pLevel>>2]|0; - $135 = (($134) + 37|0); - HEAP8[$135>>0] = 16; - } else { - $136 = HEAP32[$pLoop>>2]|0; - $137 = (($136) + 36|0); - $138 = HEAP32[$137>>2]|0; - $139 = $138 & 1024; - $140 = ($139|0)!=(0); - $141 = HEAP32[$pLoop>>2]|0; - if ($140) { - $142 = (($141) + 40|0); - $143 = HEAP16[$142>>1]|0; - $144 = $143&65535; - HEAP32[$nConstraint>>2] = $144; - $145 = HEAP32[$pParse>>2]|0; - _sqlite3ExprCachePush($145); - $146 = HEAP32[$pParse>>2]|0; - $147 = HEAP32[$nConstraint>>2]|0; - $148 = (($147) + 2)|0; - $149 = (_sqlite3GetTempRange($146,$148)|0); - HEAP32[$iReg>>2] = $149; - $150 = HEAP32[$pLevel>>2]|0; - $151 = (($150) + 12|0); - $152 = HEAP32[$151>>2]|0; - HEAP32[$addrNotFound>>2] = $152; - HEAP32[$j>>2] = 0; - while(1) { - $153 = HEAP32[$j>>2]|0; - $154 = HEAP32[$nConstraint>>2]|0; - $155 = ($153|0)<($154|0); - if (!($155)) { - break; - } - $156 = HEAP32[$iReg>>2]|0; - $157 = HEAP32[$j>>2]|0; - $158 = (($156) + ($157))|0; - $159 = (($158) + 2)|0; - HEAP32[$iTarget>>2] = $159; - $160 = HEAP32[$j>>2]|0; - $161 = HEAP32[$pLoop>>2]|0; - $162 = (($161) + 44|0); - $163 = HEAP32[$162>>2]|0; - $164 = (($163) + ($160<<2)|0); - $165 = HEAP32[$164>>2]|0; - HEAP32[$pTerm>>2] = $165; - $166 = HEAP32[$pTerm>>2]|0; - $167 = ($166|0)==(0|0); - do { - if (!($167)) { - $168 = HEAP32[$pTerm>>2]|0; - $169 = (($168) + 18|0); - $170 = HEAP16[$169>>1]|0; - $171 = $170&65535; - $172 = $171 & 1; - $173 = ($172|0)!=(0); - $174 = HEAP32[$pParse>>2]|0; - $175 = HEAP32[$pTerm>>2]|0; - if ($173) { - $176 = HEAP32[$pLevel>>2]|0; - $177 = HEAP32[$j>>2]|0; - $178 = HEAP32[$bRev>>2]|0; - $179 = HEAP32[$iTarget>>2]|0; - (_codeEqualityTerm($174,$175,$176,$177,$178,$179)|0); - $180 = HEAP32[$pLevel>>2]|0; - $181 = (($180) + 16|0); - $182 = HEAP32[$181>>2]|0; - HEAP32[$addrNotFound>>2] = $182; - break; - } else { - $183 = HEAP32[$175>>2]|0; - $184 = (($183) + 16|0); - $185 = HEAP32[$184>>2]|0; - $186 = HEAP32[$iTarget>>2]|0; - _sqlite3ExprCode($174,$185,$186); - break; - } - } - } while(0); - $187 = HEAP32[$j>>2]|0; - $188 = (($187) + 1)|0; - HEAP32[$j>>2] = $188; - } - $189 = HEAP32[$v>>2]|0; - $190 = HEAP32[$pLoop>>2]|0; - $191 = (($190) + 24|0); - $192 = HEAP32[$191>>2]|0; - $193 = HEAP32[$iReg>>2]|0; - (_sqlite3VdbeAddOp2($189,25,$192,$193)|0); - $194 = HEAP32[$v>>2]|0; - $195 = HEAP32[$nConstraint>>2]|0; - $196 = HEAP32[$iReg>>2]|0; - $197 = (($196) + 1)|0; - (_sqlite3VdbeAddOp2($194,25,$195,$197)|0); - $198 = HEAP32[$v>>2]|0; - $199 = HEAP32[$iCur>>2]|0; - $200 = HEAP32[$addrNotFound>>2]|0; - $201 = HEAP32[$iReg>>2]|0; - $202 = HEAP32[$pLoop>>2]|0; - $203 = (($202) + 24|0); - $204 = (($203) + 8|0); - $205 = HEAP32[$204>>2]|0; - $206 = HEAP32[$pLoop>>2]|0; - $207 = (($206) + 24|0); - $208 = (($207) + 4|0); - $209 = HEAP8[$208>>0]|0; - $210 = $209&255; - $211 = ($210|0)!=(0); - $212 = $211 ? -11 : -2; - (_sqlite3VdbeAddOp4($198,14,$199,$200,$201,$205,$212)|0); - $213 = HEAP32[$pLoop>>2]|0; - $214 = (($213) + 24|0); - $215 = (($214) + 4|0); - HEAP8[$215>>0] = 0; - HEAP32[$j>>2] = 0; - while(1) { - $216 = HEAP32[$j>>2]|0; - $217 = HEAP32[$nConstraint>>2]|0; - $218 = ($216|0)<($217|0); - $219 = HEAP32[$j>>2]|0; - $220 = ($219|0)<(16); - $or$cond = $218 & $220; - if (!($or$cond)) { - break; - } - $221 = HEAP32[$pLoop>>2]|0; - $222 = (($221) + 24|0); - $223 = (($222) + 6|0); - $224 = HEAP16[$223>>1]|0; - $225 = $224&65535; - $226 = HEAP32[$j>>2]|0; - $227 = $225 >> $226; - $228 = $227 & 1; - $229 = ($228|0)!=(0); - if ($229) { - $230 = HEAP32[$pLevel>>2]|0; - $231 = HEAP32[$j>>2]|0; - $232 = HEAP32[$pLoop>>2]|0; - $233 = (($232) + 44|0); - $234 = HEAP32[$233>>2]|0; - $235 = (($234) + ($231<<2)|0); - $236 = HEAP32[$235>>2]|0; - _disableTerm($230,$236); - } - $237 = HEAP32[$j>>2]|0; - $238 = (($237) + 1)|0; - HEAP32[$j>>2] = $238; - } - $239 = HEAP32[$pLevel>>2]|0; - $240 = (($239) + 37|0); - HEAP8[$240>>0] = -105; - $241 = HEAP32[$iCur>>2]|0; - $242 = HEAP32[$pLevel>>2]|0; - $243 = (($242) + 40|0); - HEAP32[$243>>2] = $241; - $244 = HEAP32[$v>>2]|0; - $245 = (_sqlite3VdbeCurrentAddr($244)|0); - $246 = HEAP32[$pLevel>>2]|0; - $247 = (($246) + 44|0); - HEAP32[$247>>2] = $245; - $248 = HEAP32[$pParse>>2]|0; - $249 = HEAP32[$iReg>>2]|0; - $250 = HEAP32[$nConstraint>>2]|0; - $251 = (($250) + 2)|0; - _sqlite3ReleaseTempRange($248,$249,$251); - $252 = HEAP32[$pParse>>2]|0; - _sqlite3ExprCachePop($252); - break; - } - $253 = (($141) + 36|0); - $254 = HEAP32[$253>>2]|0; - $255 = $254 & 256; - $256 = ($255|0)!=(0); - if ($256) { - $257 = HEAP32[$pLoop>>2]|0; - $258 = (($257) + 36|0); - $259 = HEAP32[$258>>2]|0; - $260 = $259 & 5; - $261 = ($260|0)!=(0); - if ($261) { - $262 = HEAP32[$pLoop>>2]|0; - $263 = (($262) + 44|0); - $264 = HEAP32[$263>>2]|0; - $265 = HEAP32[$264>>2]|0; - HEAP32[$pTerm>>2] = $265; - $266 = HEAP32[$pParse>>2]|0; - $267 = (($266) + 72|0); - $268 = HEAP32[$267>>2]|0; - $269 = (($268) + 1)|0; - HEAP32[$267>>2] = $269; - HEAP32[$iReleaseReg>>2] = $269; - $270 = HEAP32[$pParse>>2]|0; - $271 = HEAP32[$pTerm>>2]|0; - $272 = HEAP32[$pLevel>>2]|0; - $273 = HEAP32[$bRev>>2]|0; - $274 = HEAP32[$iReleaseReg>>2]|0; - $275 = (_codeEqualityTerm($270,$271,$272,0,$273,$274)|0); - HEAP32[$iRowidReg>>2] = $275; - $276 = HEAP32[$iRowidReg>>2]|0; - $277 = HEAP32[$iReleaseReg>>2]|0; - $278 = ($276|0)!=($277|0); - if ($278) { - $279 = HEAP32[$pParse>>2]|0; - $280 = HEAP32[$iReleaseReg>>2]|0; - _sqlite3ReleaseTempReg($279,$280); - } - $281 = HEAP32[$pLevel>>2]|0; - $282 = (($281) + 16|0); - $283 = HEAP32[$282>>2]|0; - HEAP32[$addrNxt>>2] = $283; - $284 = HEAP32[$v>>2]|0; - $285 = HEAP32[$iRowidReg>>2]|0; - $286 = HEAP32[$addrNxt>>2]|0; - (_sqlite3VdbeAddOp2($284,38,$285,$286)|0); - $287 = HEAP32[$v>>2]|0; - $288 = HEAP32[$iCur>>2]|0; - $289 = HEAP32[$addrNxt>>2]|0; - $290 = HEAP32[$iRowidReg>>2]|0; - (_sqlite3VdbeAddOp3($287,67,$288,$289,$290)|0); - $291 = HEAP32[$pParse>>2]|0; - $292 = HEAP32[$iRowidReg>>2]|0; - _sqlite3ExprCacheAffinityChange($291,$292,1); - $293 = HEAP32[$pParse>>2]|0; - $294 = HEAP32[$iCur>>2]|0; - $295 = HEAP32[$iRowidReg>>2]|0; - _sqlite3ExprCacheStore($293,$294,-1,$295); - $296 = HEAP32[$pLevel>>2]|0; - $297 = (($296) + 37|0); - HEAP8[$297>>0] = -100; - break; - } - } - $298 = HEAP32[$pLoop>>2]|0; - $299 = (($298) + 36|0); - $300 = HEAP32[$299>>2]|0; - $301 = $300 & 256; - $302 = ($301|0)!=(0); - if ($302) { - $303 = HEAP32[$pLoop>>2]|0; - $304 = (($303) + 36|0); - $305 = HEAP32[$304>>2]|0; - $306 = $305 & 2; - $307 = ($306|0)!=(0); - if ($307) { - HEAP32[$testOp>>2] = 156; - HEAP32[$memEndValue>>2] = 0; - HEAP32[$j>>2] = 0; - HEAP32[$pEnd>>2] = 0; - HEAP32[$pStart>>2] = 0; - $308 = HEAP32[$pLoop>>2]|0; - $309 = (($308) + 36|0); - $310 = HEAP32[$309>>2]|0; - $311 = $310 & 32; - $312 = ($311|0)!=(0); - if ($312) { - $313 = HEAP32[$j>>2]|0; - $314 = (($313) + 1)|0; - HEAP32[$j>>2] = $314; - $315 = HEAP32[$pLoop>>2]|0; - $316 = (($315) + 44|0); - $317 = HEAP32[$316>>2]|0; - $318 = (($317) + ($313<<2)|0); - $319 = HEAP32[$318>>2]|0; - HEAP32[$pStart>>2] = $319; - } - $320 = HEAP32[$pLoop>>2]|0; - $321 = (($320) + 36|0); - $322 = HEAP32[$321>>2]|0; - $323 = $322 & 16; - $324 = ($323|0)!=(0); - if ($324) { - $325 = HEAP32[$j>>2]|0; - $326 = (($325) + 1)|0; - HEAP32[$j>>2] = $326; - $327 = HEAP32[$pLoop>>2]|0; - $328 = (($327) + 44|0); - $329 = HEAP32[$328>>2]|0; - $330 = (($329) + ($325<<2)|0); - $331 = HEAP32[$330>>2]|0; - HEAP32[$pEnd>>2] = $331; - } - $332 = HEAP32[$bRev>>2]|0; - $333 = ($332|0)!=(0); - if ($333) { - $334 = HEAP32[$pStart>>2]|0; - HEAP32[$pTerm>>2] = $334; - $335 = HEAP32[$pEnd>>2]|0; - HEAP32[$pStart>>2] = $335; - $336 = HEAP32[$pTerm>>2]|0; - HEAP32[$pEnd>>2] = $336; - } - $337 = HEAP32[$pStart>>2]|0; - $338 = ($337|0)!=(0|0); - if ($338) { - $339 = HEAP32[$pStart>>2]|0; - $340 = HEAP32[$339>>2]|0; - HEAP32[$pX>>2] = $340; - $341 = HEAP32[$pParse>>2]|0; - $342 = HEAP32[$pX>>2]|0; - $343 = (($342) + 16|0); - $344 = HEAP32[$343>>2]|0; - $345 = (_sqlite3ExprCodeTemp($341,$344,$rTemp)|0); - HEAP32[$r1>>2] = $345; - $346 = HEAP32[$v>>2]|0; - $347 = HEAP32[$pX>>2]|0; - $348 = HEAP8[$347>>0]|0; - $349 = $348&255; - $350 = (($349) - 80)|0; - $351 = (23392 + ($350)|0); - $352 = HEAP8[$351>>0]|0; - $353 = $352&255; - $354 = HEAP32[$iCur>>2]|0; - $355 = HEAP32[$addrBrk>>2]|0; - $356 = HEAP32[$r1>>2]|0; - (_sqlite3VdbeAddOp3($346,$353,$354,$355,$356)|0); - $357 = HEAP32[$pParse>>2]|0; - $358 = HEAP32[$r1>>2]|0; - _sqlite3ExprCacheAffinityChange($357,$358,1); - $359 = HEAP32[$pParse>>2]|0; - $360 = HEAP32[$rTemp>>2]|0; - _sqlite3ReleaseTempReg($359,$360); - $361 = HEAP32[$pLevel>>2]|0; - $362 = HEAP32[$pStart>>2]|0; - _disableTerm($361,$362); - } else { - $363 = HEAP32[$v>>2]|0; - $364 = HEAP32[$bRev>>2]|0; - $365 = ($364|0)!=(0); - $366 = $365 ? 102 : 105; - $367 = HEAP32[$iCur>>2]|0; - $368 = HEAP32[$addrBrk>>2]|0; - (_sqlite3VdbeAddOp2($363,$366,$367,$368)|0); - } - $369 = HEAP32[$pEnd>>2]|0; - $370 = ($369|0)!=(0|0); - if ($370) { - $371 = HEAP32[$pEnd>>2]|0; - $372 = HEAP32[$371>>2]|0; - HEAP32[$pX1>>2] = $372; - $373 = HEAP32[$pParse>>2]|0; - $374 = (($373) + 72|0); - $375 = HEAP32[$374>>2]|0; - $376 = (($375) + 1)|0; - HEAP32[$374>>2] = $376; - HEAP32[$memEndValue>>2] = $376; - $377 = HEAP32[$pParse>>2]|0; - $378 = HEAP32[$pX1>>2]|0; - $379 = (($378) + 16|0); - $380 = HEAP32[$379>>2]|0; - $381 = HEAP32[$memEndValue>>2]|0; - _sqlite3ExprCode($377,$380,$381); - $382 = HEAP32[$pX1>>2]|0; - $383 = HEAP8[$382>>0]|0; - $384 = $383&255; - $385 = ($384|0)==(82); - if ($385) { - label = 41; - } else { - $386 = HEAP32[$pX1>>2]|0; - $387 = HEAP8[$386>>0]|0; - $388 = $387&255; - $389 = ($388|0)==(80); - if ($389) { - label = 41; - } else { - $393 = HEAP32[$bRev>>2]|0; - $394 = ($393|0)!=(0); - $395 = $394 ? 82 : 80; - HEAP32[$testOp>>2] = $395; - } - } - if ((label|0) == 41) { - $390 = HEAP32[$bRev>>2]|0; - $391 = ($390|0)!=(0); - $392 = $391 ? 81 : 83; - HEAP32[$testOp>>2] = $392; - } - $396 = HEAP32[$pLevel>>2]|0; - $397 = HEAP32[$pEnd>>2]|0; - _disableTerm($396,$397); - } - $398 = HEAP32[$v>>2]|0; - $399 = (_sqlite3VdbeCurrentAddr($398)|0); - HEAP32[$start>>2] = $399; - $400 = HEAP32[$bRev>>2]|0; - $401 = ($400|0)!=(0); - $402 = $401 ? 8 : 9; - $403 = $402&255; - $404 = HEAP32[$pLevel>>2]|0; - $405 = (($404) + 37|0); - HEAP8[$405>>0] = $403; - $406 = HEAP32[$iCur>>2]|0; - $407 = HEAP32[$pLevel>>2]|0; - $408 = (($407) + 40|0); - HEAP32[$408>>2] = $406; - $409 = HEAP32[$start>>2]|0; - $410 = HEAP32[$pLevel>>2]|0; - $411 = (($410) + 44|0); - HEAP32[$411>>2] = $409; - $412 = HEAP32[$testOp>>2]|0; - $413 = ($412|0)!=(156); - if (!($413)) { - break; - } - $414 = HEAP32[$pParse>>2]|0; - $415 = (($414) + 72|0); - $416 = HEAP32[$415>>2]|0; - $417 = (($416) + 1)|0; - HEAP32[$415>>2] = $417; - HEAP32[$iRowidReg>>2] = $417; - $418 = HEAP32[$v>>2]|0; - $419 = HEAP32[$iCur>>2]|0; - $420 = HEAP32[$iRowidReg>>2]|0; - (_sqlite3VdbeAddOp2($418,100,$419,$420)|0); - $421 = HEAP32[$pParse>>2]|0; - $422 = HEAP32[$iCur>>2]|0; - $423 = HEAP32[$iRowidReg>>2]|0; - _sqlite3ExprCacheStore($421,$422,-1,$423); - $424 = HEAP32[$v>>2]|0; - $425 = HEAP32[$testOp>>2]|0; - $426 = HEAP32[$memEndValue>>2]|0; - $427 = HEAP32[$addrBrk>>2]|0; - $428 = HEAP32[$iRowidReg>>2]|0; - (_sqlite3VdbeAddOp3($424,$425,$426,$427,$428)|0); - $429 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($429,107); - break; - } - } - $430 = HEAP32[$pLoop>>2]|0; - $431 = (($430) + 36|0); - $432 = HEAP32[$431>>2]|0; - $433 = $432 & 512; - $434 = ($433|0)!=(0); - $435 = HEAP32[$pLoop>>2]|0; - if ($434) { - $436 = (($435) + 24|0); - $437 = HEAP16[$436>>1]|0; - HEAP16[$nEq>>1] = $437; - HEAP32[$pRangeStart>>2] = 0; - HEAP32[$pRangeEnd>>2] = 0; - HEAP32[$nExtraReg>>2] = 0; - HEAP8[$cEndAff>>0] = 0; - HEAP8[$bSeekPastNull>>0] = 0; - HEAP8[$bStopAtNull>>0] = 0; - $438 = HEAP32[$pLoop>>2]|0; - $439 = (($438) + 24|0); - $440 = (($439) + 4|0); - $441 = HEAP32[$440>>2]|0; - HEAP32[$pIdx>>2] = $441; - $442 = HEAP32[$pLevel>>2]|0; - $443 = (($442) + 8|0); - $444 = HEAP32[$443>>2]|0; - HEAP32[$iIdxCur>>2] = $444; - $445 = HEAP32[$3>>2]|0; - $446 = (($445) + 34|0); - $447 = HEAP16[$446>>1]|0; - $448 = $447&65535; - $449 = $448 & 1; - $450 = ($449|0)!=(0); - if ($450) { - $451 = HEAP32[$3>>2]|0; - $452 = (($451) + 36|0); - $453 = HEAP8[$452>>0]|0; - $454 = $453 << 24 >> 24; - $455 = ($454|0)>(0); - if ($455) { - $456 = HEAP32[$pIdx>>2]|0; - $457 = (($456) + 50|0); - $458 = HEAP16[$457>>1]|0; - $459 = $458&65535; - $460 = HEAP16[$nEq>>1]|0; - $461 = $460&65535; - $462 = ($459|0)>($461|0); - if ($462) { - HEAP8[$bSeekPastNull>>0] = 1; - HEAP32[$nExtraReg>>2] = 1; - } - } - } - $463 = HEAP16[$nEq>>1]|0; - $464 = $463&65535; - HEAP32[$j>>2] = $464; - $465 = HEAP32[$pLoop>>2]|0; - $466 = (($465) + 36|0); - $467 = HEAP32[$466>>2]|0; - $468 = $467 & 32; - $469 = ($468|0)!=(0); - if ($469) { - $470 = HEAP32[$j>>2]|0; - $471 = (($470) + 1)|0; - HEAP32[$j>>2] = $471; - $472 = HEAP32[$pLoop>>2]|0; - $473 = (($472) + 44|0); - $474 = HEAP32[$473>>2]|0; - $475 = (($474) + ($470<<2)|0); - $476 = HEAP32[$475>>2]|0; - HEAP32[$pRangeStart>>2] = $476; - HEAP32[$nExtraReg>>2] = 1; - } - $477 = HEAP32[$pLoop>>2]|0; - $478 = (($477) + 36|0); - $479 = HEAP32[$478>>2]|0; - $480 = $479 & 16; - $481 = ($480|0)!=(0); - if ($481) { - $482 = HEAP32[$j>>2]|0; - $483 = (($482) + 1)|0; - HEAP32[$j>>2] = $483; - $484 = HEAP32[$pLoop>>2]|0; - $485 = (($484) + 44|0); - $486 = HEAP32[$485>>2]|0; - $487 = (($486) + ($482<<2)|0); - $488 = HEAP32[$487>>2]|0; - HEAP32[$pRangeEnd>>2] = $488; - HEAP32[$nExtraReg>>2] = 1; - $489 = HEAP32[$pRangeStart>>2]|0; - $490 = ($489|0)==(0|0); - if ($490) { - $491 = HEAP16[$nEq>>1]|0; - $492 = $491&65535; - $493 = HEAP32[$pIdx>>2]|0; - $494 = (($493) + 4|0); - $495 = HEAP32[$494>>2]|0; - $496 = (($495) + ($492<<1)|0); - $497 = HEAP16[$496>>1]|0; - $498 = $497 << 16 >> 16; - HEAP32[$j>>2] = $498; - $499 = ($498|0)>=(0); - if ($499) { - $500 = HEAP32[$j>>2]|0; - $501 = HEAP32[$pIdx>>2]|0; - $502 = (($501) + 12|0); - $503 = HEAP32[$502>>2]|0; - $504 = (($503) + 4|0); - $505 = HEAP32[$504>>2]|0; - $506 = (($505) + (($500*24)|0)|0); - $507 = (($506) + 20|0); - $508 = HEAP8[$507>>0]|0; - $509 = $508&255; - $510 = ($509|0)==(0); - if ($510) { - HEAP8[$bSeekPastNull>>0] = 1; - } - } - } - } - $511 = HEAP32[$pParse>>2]|0; - $512 = HEAP32[$pLevel>>2]|0; - $513 = HEAP32[$bRev>>2]|0; - $514 = HEAP32[$nExtraReg>>2]|0; - $515 = (_codeAllEqualityTerms($511,$512,$513,$514,$zStartAff)|0); - HEAP32[$regBase>>2] = $515; - $516 = HEAP32[$zStartAff>>2]|0; - $517 = ($516|0)!=(0|0); - if ($517) { - $518 = HEAP16[$nEq>>1]|0; - $519 = $518&65535; - $520 = HEAP32[$zStartAff>>2]|0; - $521 = (($520) + ($519)|0); - $522 = HEAP8[$521>>0]|0; - HEAP8[$cEndAff>>0] = $522; - } - $523 = HEAP32[$pLevel>>2]|0; - $524 = (($523) + 16|0); - $525 = HEAP32[$524>>2]|0; - HEAP32[$addrNxt>>2] = $525; - $526 = HEAP16[$nEq>>1]|0; - $527 = $526&65535; - $528 = HEAP32[$pIdx>>2]|0; - $529 = (($528) + 50|0); - $530 = HEAP16[$529>>1]|0; - $531 = $530&65535; - $532 = ($527|0)<($531|0); - if ($532) { - $533 = HEAP32[$bRev>>2]|0; - $534 = HEAP16[$nEq>>1]|0; - $535 = $534&65535; - $536 = HEAP32[$pIdx>>2]|0; - $537 = (($536) + 28|0); - $538 = HEAP32[$537>>2]|0; - $539 = (($538) + ($535)|0); - $540 = HEAP8[$539>>0]|0; - $541 = $540&255; - $542 = ($541|0)==(0); - $543 = $542&1; - $544 = ($533|0)==($543|0); - if ($544) { - label = 64; - } else { - label = 62; - } - } else { - label = 62; - } - if ((label|0) == 62) { - $545 = HEAP32[$bRev>>2]|0; - $546 = ($545|0)!=(0); - if ($546) { - $547 = HEAP32[$pIdx>>2]|0; - $548 = (($547) + 50|0); - $549 = HEAP16[$548>>1]|0; - $550 = $549&65535; - $551 = HEAP16[$nEq>>1]|0; - $552 = $551&65535; - $553 = ($550|0)==($552|0); - if ($553) { - label = 64; - } - } - } - if ((label|0) == 64) { - $554 = HEAP32[$pRangeEnd>>2]|0; - HEAP32[$t>>2] = $554; - $555 = HEAP32[$pRangeStart>>2]|0; - HEAP32[$pRangeEnd>>2] = $555; - $556 = HEAP32[$t>>2]|0; - HEAP32[$pRangeStart>>2] = $556; - $557 = HEAP8[$bSeekPastNull>>0]|0; - HEAP8[$t3>>0] = $557; - $558 = HEAP8[$bStopAtNull>>0]|0; - HEAP8[$bSeekPastNull>>0] = $558; - $559 = HEAP8[$t3>>0]|0; - HEAP8[$bStopAtNull>>0] = $559; - } - $560 = HEAP32[$pRangeStart>>2]|0; - $561 = ($560|0)!=(0|0); - if ($561) { - $562 = HEAP32[$pRangeStart>>2]|0; - $563 = (($562) + 18|0); - $564 = HEAP16[$563>>1]|0; - $565 = $564&65535; - $566 = $565 & 40; - $567 = ($566|0)!=(0); - $569 = $567; - } else { - $569 = 1; - } - $568 = $569&1; - HEAP32[$startEq>>2] = $568; - $570 = HEAP32[$pRangeEnd>>2]|0; - $571 = ($570|0)!=(0|0); - if ($571) { - $572 = HEAP32[$pRangeEnd>>2]|0; - $573 = (($572) + 18|0); - $574 = HEAP16[$573>>1]|0; - $575 = $574&65535; - $576 = $575 & 40; - $577 = ($576|0)!=(0); - $579 = $577; - } else { - $579 = 1; - } - $578 = $579&1; - HEAP32[$endEq>>2] = $578; - $580 = HEAP32[$pRangeStart>>2]|0; - $581 = ($580|0)!=(0|0); - if ($581) { - $586 = 1; - } else { - $582 = HEAP16[$nEq>>1]|0; - $583 = $582&65535; - $584 = ($583|0)>(0); - $586 = $584; - } - $585 = $586&1; - HEAP32[$start_constraints>>2] = $585; - $587 = HEAP16[$nEq>>1]|0; - $588 = $587&65535; - HEAP32[$nConstraint2>>2] = $588; - $589 = HEAP32[$pRangeStart>>2]|0; - $590 = ($589|0)!=(0|0); - if ($590) { - $591 = HEAP32[$pRangeStart>>2]|0; - $592 = HEAP32[$591>>2]|0; - $593 = (($592) + 16|0); - $594 = HEAP32[$593>>2]|0; - HEAP32[$pRight>>2] = $594; - $595 = HEAP32[$pParse>>2]|0; - $596 = HEAP32[$pRight>>2]|0; - $597 = HEAP32[$regBase>>2]|0; - $598 = HEAP16[$nEq>>1]|0; - $599 = $598&65535; - $600 = (($597) + ($599))|0; - _sqlite3ExprCode($595,$596,$600); - $601 = HEAP32[$pRangeStart>>2]|0; - $602 = (($601) + 20|0); - $603 = HEAP8[$602>>0]|0; - $604 = $603&255; - $605 = $604 & 0; - $606 = ($605|0)==(0); - do { - if ($606) { - $607 = HEAP32[$pRight>>2]|0; - $608 = (_sqlite3ExprCanBeNull($607)|0); - $609 = ($608|0)!=(0); - if (!($609)) { - break; - } - $610 = HEAP32[$v>>2]|0; - $611 = HEAP32[$regBase>>2]|0; - $612 = HEAP16[$nEq>>1]|0; - $613 = $612&65535; - $614 = (($611) + ($613))|0; - $615 = HEAP32[$addrNxt>>2]|0; - (_sqlite3VdbeAddOp2($610,76,$614,$615)|0); - } - } while(0); - $616 = HEAP32[$zStartAff>>2]|0; - $617 = ($616|0)!=(0|0); - do { - if ($617) { - $618 = HEAP32[$pRight>>2]|0; - $619 = HEAP16[$nEq>>1]|0; - $620 = $619&65535; - $621 = HEAP32[$zStartAff>>2]|0; - $622 = (($621) + ($620)|0); - $623 = HEAP8[$622>>0]|0; - $624 = (_sqlite3CompareAffinity($618,$623)|0); - $625 = $624 << 24 >> 24; - $626 = ($625|0)==(98); - if ($626) { - $627 = HEAP16[$nEq>>1]|0; - $628 = $627&65535; - $629 = HEAP32[$zStartAff>>2]|0; - $630 = (($629) + ($628)|0); - HEAP8[$630>>0] = 98; - } - $631 = HEAP32[$pRight>>2]|0; - $632 = HEAP16[$nEq>>1]|0; - $633 = $632&65535; - $634 = HEAP32[$zStartAff>>2]|0; - $635 = (($634) + ($633)|0); - $636 = HEAP8[$635>>0]|0; - $637 = (_sqlite3ExprNeedsNoAffinityChange($631,$636)|0); - $638 = ($637|0)!=(0); - if (!($638)) { - break; - } - $639 = HEAP16[$nEq>>1]|0; - $640 = $639&65535; - $641 = HEAP32[$zStartAff>>2]|0; - $642 = (($641) + ($640)|0); - HEAP8[$642>>0] = 98; - } - } while(0); - $643 = HEAP32[$nConstraint2>>2]|0; - $644 = (($643) + 1)|0; - HEAP32[$nConstraint2>>2] = $644; - } else { - $645 = HEAP8[$bSeekPastNull>>0]|0; - $646 = ($645<<24>>24)!=(0); - if ($646) { - $647 = HEAP32[$v>>2]|0; - $648 = HEAP32[$regBase>>2]|0; - $649 = HEAP16[$nEq>>1]|0; - $650 = $649&65535; - $651 = (($648) + ($650))|0; - (_sqlite3VdbeAddOp2($647,28,0,$651)|0); - $652 = HEAP32[$nConstraint2>>2]|0; - $653 = (($652) + 1)|0; - HEAP32[$nConstraint2>>2] = $653; - HEAP32[$startEq>>2] = 0; - HEAP32[$start_constraints>>2] = 1; - } - } - $654 = HEAP32[$pParse>>2]|0; - $655 = HEAP32[$regBase>>2]|0; - $656 = HEAP32[$nConstraint2>>2]|0; - $657 = HEAP8[$bSeekPastNull>>0]|0; - $658 = $657&255; - $659 = (($656) - ($658))|0; - $660 = HEAP32[$zStartAff>>2]|0; - _codeApplyAffinity($654,$655,$659,$660); - $661 = HEAP32[$start_constraints>>2]|0; - $662 = $661 << 2; - $663 = HEAP32[$startEq>>2]|0; - $664 = $663 << 1; - $665 = (($662) + ($664))|0; - $666 = HEAP32[$bRev>>2]|0; - $667 = (($665) + ($666))|0; - $668 = (23400 + ($667)|0); - $669 = HEAP8[$668>>0]|0; - $670 = $669&255; - HEAP32[$op>>2] = $670; - $671 = HEAP32[$v>>2]|0; - $672 = HEAP32[$op>>2]|0; - $673 = HEAP32[$iIdxCur>>2]|0; - $674 = HEAP32[$addrNxt>>2]|0; - $675 = HEAP32[$regBase>>2]|0; - $676 = HEAP32[$nConstraint2>>2]|0; - (_sqlite3VdbeAddOp4Int($671,$672,$673,$674,$675,$676)|0); - $677 = HEAP16[$nEq>>1]|0; - $678 = $677&65535; - HEAP32[$nConstraint2>>2] = $678; - $679 = HEAP32[$pRangeEnd>>2]|0; - $680 = ($679|0)!=(0|0); - do { - if ($680) { - $681 = HEAP32[$pRangeEnd>>2]|0; - $682 = HEAP32[$681>>2]|0; - $683 = (($682) + 16|0); - $684 = HEAP32[$683>>2]|0; - HEAP32[$pRight4>>2] = $684; - $685 = HEAP32[$pParse>>2]|0; - $686 = HEAP32[$regBase>>2]|0; - $687 = HEAP16[$nEq>>1]|0; - $688 = $687&65535; - $689 = (($686) + ($688))|0; - _sqlite3ExprCacheRemove($685,$689,1); - $690 = HEAP32[$pParse>>2]|0; - $691 = HEAP32[$pRight4>>2]|0; - $692 = HEAP32[$regBase>>2]|0; - $693 = HEAP16[$nEq>>1]|0; - $694 = $693&65535; - $695 = (($692) + ($694))|0; - _sqlite3ExprCode($690,$691,$695); - $696 = HEAP32[$pRangeEnd>>2]|0; - $697 = (($696) + 20|0); - $698 = HEAP8[$697>>0]|0; - $699 = $698&255; - $700 = $699 & 0; - $701 = ($700|0)==(0); - do { - if ($701) { - $702 = HEAP32[$pRight4>>2]|0; - $703 = (_sqlite3ExprCanBeNull($702)|0); - $704 = ($703|0)!=(0); - if (!($704)) { - break; - } - $705 = HEAP32[$v>>2]|0; - $706 = HEAP32[$regBase>>2]|0; - $707 = HEAP16[$nEq>>1]|0; - $708 = $707&65535; - $709 = (($706) + ($708))|0; - $710 = HEAP32[$addrNxt>>2]|0; - (_sqlite3VdbeAddOp2($705,76,$709,$710)|0); - } - } while(0); - $711 = HEAP32[$pRight4>>2]|0; - $712 = HEAP8[$cEndAff>>0]|0; - $713 = (_sqlite3CompareAffinity($711,$712)|0); - $714 = $713 << 24 >> 24; - $715 = ($714|0)!=(98); - do { - if ($715) { - $716 = HEAP32[$pRight4>>2]|0; - $717 = HEAP8[$cEndAff>>0]|0; - $718 = (_sqlite3ExprNeedsNoAffinityChange($716,$717)|0); - $719 = ($718|0)!=(0); - if ($719) { - break; - } - $720 = HEAP32[$pParse>>2]|0; - $721 = HEAP32[$regBase>>2]|0; - $722 = HEAP16[$nEq>>1]|0; - $723 = $722&65535; - $724 = (($721) + ($723))|0; - _codeApplyAffinity($720,$724,1,$cEndAff); - } - } while(0); - $725 = HEAP32[$nConstraint2>>2]|0; - $726 = (($725) + 1)|0; - HEAP32[$nConstraint2>>2] = $726; - } else { - $727 = HEAP8[$bStopAtNull>>0]|0; - $728 = ($727<<24>>24)!=(0); - if (!($728)) { - break; - } - $729 = HEAP32[$v>>2]|0; - $730 = HEAP32[$regBase>>2]|0; - $731 = HEAP16[$nEq>>1]|0; - $732 = $731&65535; - $733 = (($730) + ($732))|0; - (_sqlite3VdbeAddOp2($729,28,0,$733)|0); - HEAP32[$endEq>>2] = 0; - $734 = HEAP32[$nConstraint2>>2]|0; - $735 = (($734) + 1)|0; - HEAP32[$nConstraint2>>2] = $735; - } - } while(0); - $736 = HEAP32[$db>>2]|0; - $737 = HEAP32[$zStartAff>>2]|0; - _sqlite3DbFree($736,$737); - $738 = HEAP32[$v>>2]|0; - $739 = (_sqlite3VdbeCurrentAddr($738)|0); - $740 = HEAP32[$pLevel>>2]|0; - $741 = (($740) + 44|0); - HEAP32[$741>>2] = $739; - $742 = HEAP32[$nConstraint2>>2]|0; - $743 = ($742|0)!=(0); - if ($743) { - $744 = HEAP32[$bRev>>2]|0; - $745 = $744<<1; - $746 = HEAP32[$endEq>>2]|0; - $747 = (($745) + ($746))|0; - $748 = (23408 + ($747)|0); - $749 = HEAP8[$748>>0]|0; - $750 = $749&255; - HEAP32[$op>>2] = $750; - $751 = HEAP32[$v>>2]|0; - $752 = HEAP32[$op>>2]|0; - $753 = HEAP32[$iIdxCur>>2]|0; - $754 = HEAP32[$addrNxt>>2]|0; - $755 = HEAP32[$regBase>>2]|0; - $756 = HEAP32[$nConstraint2>>2]|0; - (_sqlite3VdbeAddOp4Int($751,$752,$753,$754,$755,$756)|0); - } - $757 = HEAP32[$pLevel>>2]|0; - $758 = HEAP32[$pRangeStart>>2]|0; - _disableTerm($757,$758); - $759 = HEAP32[$pLevel>>2]|0; - $760 = HEAP32[$pRangeEnd>>2]|0; - _disableTerm($759,$760); - $761 = HEAP32[$omitTable>>2]|0; - $762 = ($761|0)!=(0); - do { - if (!($762)) { - $763 = HEAP32[$pIdx>>2]|0; - $764 = (($763) + 12|0); - $765 = HEAP32[$764>>2]|0; - $766 = (($765) + 44|0); - $767 = HEAP8[$766>>0]|0; - $768 = $767&255; - $769 = $768 & 32; - $770 = ($769|0)==(0); - if ($770) { - $771 = HEAP32[$pParse>>2]|0; - $772 = (($771) + 72|0); - $773 = HEAP32[$772>>2]|0; - $774 = (($773) + 1)|0; - HEAP32[$772>>2] = $774; - HEAP32[$iRowidReg>>2] = $774; - $775 = HEAP32[$v>>2]|0; - $776 = HEAP32[$iIdxCur>>2]|0; - $777 = HEAP32[$iRowidReg>>2]|0; - (_sqlite3VdbeAddOp2($775,109,$776,$777)|0); - $778 = HEAP32[$pParse>>2]|0; - $779 = HEAP32[$iCur>>2]|0; - $780 = HEAP32[$iRowidReg>>2]|0; - _sqlite3ExprCacheStore($778,$779,-1,$780); - $781 = HEAP32[$v>>2]|0; - $782 = HEAP32[$iCur>>2]|0; - $783 = HEAP32[$iRowidReg>>2]|0; - (_sqlite3VdbeAddOp2($781,63,$782,$783)|0); - break; - } - $784 = HEAP32[$iCur>>2]|0; - $785 = HEAP32[$iIdxCur>>2]|0; - $786 = ($784|0)!=($785|0); - if (!($786)) { - break; - } - $787 = HEAP32[$pIdx>>2]|0; - $788 = (($787) + 12|0); - $789 = HEAP32[$788>>2]|0; - $790 = (_sqlite3PrimaryKeyIndex($789)|0); - HEAP32[$pPk>>2] = $790; - $791 = HEAP32[$pParse>>2]|0; - $792 = HEAP32[$pPk>>2]|0; - $793 = (($792) + 50|0); - $794 = HEAP16[$793>>1]|0; - $795 = $794&65535; - $796 = (_sqlite3GetTempRange($791,$795)|0); - HEAP32[$iRowidReg>>2] = $796; - HEAP32[$j>>2] = 0; - while(1) { - $797 = HEAP32[$j>>2]|0; - $798 = HEAP32[$pPk>>2]|0; - $799 = (($798) + 50|0); - $800 = HEAP16[$799>>1]|0; - $801 = $800&65535; - $802 = ($797|0)<($801|0); - if (!($802)) { - break; - } - $803 = HEAP32[$pIdx>>2]|0; - $804 = HEAP32[$j>>2]|0; - $805 = HEAP32[$pPk>>2]|0; - $806 = (($805) + 4|0); - $807 = HEAP32[$806>>2]|0; - $808 = (($807) + ($804<<1)|0); - $809 = HEAP16[$808>>1]|0; - $810 = (_sqlite3ColumnOfIndex($803,$809)|0); - $811 = $810 << 16 >> 16; - HEAP32[$k>>2] = $811; - $812 = HEAP32[$v>>2]|0; - $813 = HEAP32[$iIdxCur>>2]|0; - $814 = HEAP32[$k>>2]|0; - $815 = HEAP32[$iRowidReg>>2]|0; - $816 = HEAP32[$j>>2]|0; - $817 = (($815) + ($816))|0; - (_sqlite3VdbeAddOp3($812,46,$813,$814,$817)|0); - $818 = HEAP32[$j>>2]|0; - $819 = (($818) + 1)|0; - HEAP32[$j>>2] = $819; - } - $820 = HEAP32[$v>>2]|0; - $821 = HEAP32[$iCur>>2]|0; - $822 = HEAP32[$addrCont>>2]|0; - $823 = HEAP32[$iRowidReg>>2]|0; - $824 = HEAP32[$pPk>>2]|0; - $825 = (($824) + 50|0); - $826 = HEAP16[$825>>1]|0; - $827 = $826&65535; - (_sqlite3VdbeAddOp4Int($820,65,$821,$822,$823,$827)|0); - } - } while(0); - $828 = HEAP32[$pLoop>>2]|0; - $829 = (($828) + 36|0); - $830 = HEAP32[$829>>2]|0; - $831 = $830 & 4096; - $832 = ($831|0)!=(0); - do { - if ($832) { - $833 = HEAP32[$pLevel>>2]|0; - $834 = (($833) + 37|0); - HEAP8[$834>>0] = -100; - } else { - $835 = HEAP32[$bRev>>2]|0; - $836 = ($835|0)!=(0); - $837 = HEAP32[$pLevel>>2]|0; - $838 = (($837) + 37|0); - if ($836) { - HEAP8[$838>>0] = 8; - break; - } else { - HEAP8[$838>>0] = 9; - break; - } - } - } while(0); - $839 = HEAP32[$iIdxCur>>2]|0; - $840 = HEAP32[$pLevel>>2]|0; - $841 = (($840) + 40|0); - HEAP32[$841>>2] = $839; - $842 = HEAP32[$pLoop>>2]|0; - $843 = (($842) + 36|0); - $844 = HEAP32[$843>>2]|0; - $845 = $844 & 65536; - $846 = ($845|0)!=(0); - $847 = $846 ? 1 : 0; - $848 = $847&255; - $849 = HEAP32[$pLevel>>2]|0; - $850 = (($849) + 38|0); - HEAP8[$850>>0] = $848; - $851 = HEAP32[$pLoop>>2]|0; - $852 = (($851) + 36|0); - $853 = HEAP32[$852>>2]|0; - $854 = $853 & 15; - $855 = ($854|0)==(0); - if (!($855)) { - break; - } - $856 = HEAP32[$pLevel>>2]|0; - $857 = (($856) + 39|0); - HEAP8[$857>>0] = 1; - break; - } - $858 = (($435) + 36|0); - $859 = HEAP32[$858>>2]|0; - $860 = $859 & 8192; - $861 = ($860|0)!=(0); - if (!($861)) { - $1267 = HEAP32[$pTabItem>>2]|0; - $1268 = (($1267) + 37|0); - $1269 = HEAP8[$1268>>0]|0; - $1270 = ($1269&255) >>> 3; - $1271 = $1270 & 1; - $1272 = $1271&255; - $1273 = ($1272|0)!=(0); - if ($1273) { - $1274 = HEAP32[$pLevel>>2]|0; - $1275 = (($1274) + 37|0); - HEAP8[$1275>>0] = -100; - break; - } else { - $1276 = HEAP32[$bRev>>2]|0; - $1277 = (23416 + ($1276)|0); - $1278 = HEAP8[$1277>>0]|0; - $1279 = HEAP32[$pLevel>>2]|0; - $1280 = (($1279) + 37|0); - HEAP8[$1280>>0] = $1278; - $1281 = HEAP32[$iCur>>2]|0; - $1282 = HEAP32[$pLevel>>2]|0; - $1283 = (($1282) + 40|0); - HEAP32[$1283>>2] = $1281; - $1284 = HEAP32[$v>>2]|0; - $1285 = HEAP32[$bRev>>2]|0; - $1286 = (23424 + ($1285)|0); - $1287 = HEAP8[$1286>>0]|0; - $1288 = $1287&255; - $1289 = HEAP32[$iCur>>2]|0; - $1290 = HEAP32[$addrBrk>>2]|0; - $1291 = (_sqlite3VdbeAddOp2($1284,$1288,$1289,$1290)|0); - $1292 = (1 + ($1291))|0; - $1293 = HEAP32[$pLevel>>2]|0; - $1294 = (($1293) + 44|0); - HEAP32[$1294>>2] = $1292; - $1295 = HEAP32[$pLevel>>2]|0; - $1296 = (($1295) + 39|0); - HEAP8[$1296>>0] = 1; - break; - } - } - HEAP32[$pCov>>2] = 0; - $862 = HEAP32[$pParse>>2]|0; - $863 = (($862) + 68|0); - $864 = HEAP32[$863>>2]|0; - $865 = (($864) + 1)|0; - HEAP32[$863>>2] = $865; - HEAP32[$iCovCur>>2] = $864; - $866 = HEAP32[$pParse>>2]|0; - $867 = (($866) + 72|0); - $868 = HEAP32[$867>>2]|0; - $869 = (($868) + 1)|0; - HEAP32[$867>>2] = $869; - HEAP32[$regReturn>>2] = $869; - HEAP32[$regRowset>>2] = 0; - HEAP32[$regRowid>>2] = 0; - $870 = HEAP32[$v>>2]|0; - $871 = (_sqlite3VdbeMakeLabel($870)|0); - HEAP32[$iLoopBody>>2] = $871; - HEAP32[$untestedTerms>>2] = 0; - HEAP32[$pAndExpr>>2] = 0; - $872 = HEAP32[$pTabItem>>2]|0; - $873 = (($872) + 16|0); - $874 = HEAP32[$873>>2]|0; - HEAP32[$pTab>>2] = $874; - $875 = HEAP32[$pLoop>>2]|0; - $876 = (($875) + 44|0); - $877 = HEAP32[$876>>2]|0; - $878 = HEAP32[$877>>2]|0; - HEAP32[$pTerm>>2] = $878; - $879 = HEAP32[$pTerm>>2]|0; - $880 = (($879) + 12|0); - $881 = HEAP32[$880>>2]|0; - HEAP32[$pOrWc>>2] = $881; - $882 = HEAP32[$pLevel>>2]|0; - $883 = (($882) + 37|0); - HEAP8[$883>>0] = 18; - $884 = HEAP32[$regReturn>>2]|0; - $885 = HEAP32[$pLevel>>2]|0; - $886 = (($885) + 40|0); - HEAP32[$886>>2] = $884; - $887 = HEAP32[$3>>2]|0; - $888 = (($887) + 41|0); - $889 = HEAP8[$888>>0]|0; - $890 = $889&255; - $891 = ($890|0)>(1); - $892 = HEAP32[$3>>2]|0; - L159: do { - if ($891) { - $893 = (($892) + 41|0); - $894 = HEAP8[$893>>0]|0; - $895 = $894&255; - $896 = HEAP32[$4>>2]|0; - $897 = (($895) - ($896))|0; - $898 = (($897) - 1)|0; - HEAP32[$nNotReady>>2] = $898; - $899 = HEAP32[$db>>2]|0; - $900 = HEAP32[$nNotReady>>2]|0; - $901 = ($900*72)|0; - $902 = (80 + ($901))|0; - $903 = (_sqlite3DbMallocRaw($899,$902)|0); - HEAP32[$pOrTab>>2] = $903; - $904 = HEAP32[$pOrTab>>2]|0; - $905 = ($904|0)==(0|0); - if ($905) { - $906 = $5; - $907 = $906; - $908 = HEAP32[$907>>2]|0; - $909 = (($906) + 4)|0; - $910 = $909; - $911 = HEAP32[$910>>2]|0; - $912 = $2; - $913 = $912; - HEAP32[$913>>2] = $908; - $914 = (($912) + 4)|0; - $915 = $914; - HEAP32[$915>>2] = $911; - $1499 = $2; - $1500 = $1499; - $1501 = HEAP32[$1500>>2]|0; - $1502 = (($1499) + 4)|0; - $1503 = $1502; - $1504 = HEAP32[$1503>>2]|0; - tempRet0 = $1504; - STACKTOP = sp;return ($1501|0); - } - $916 = HEAP32[$nNotReady>>2]|0; - $917 = (($916) + 1)|0; - $918 = $917&255; - $919 = $918&255; - $920 = HEAP32[$pOrTab>>2]|0; - $921 = (($920) + 4|0); - HEAP32[$921>>2] = $919; - $922 = HEAP32[$pOrTab>>2]|0; - $923 = (($922) + 4|0); - $924 = HEAP32[$923>>2]|0; - $925 = HEAP32[$pOrTab>>2]|0; - HEAP32[$925>>2] = $924; - $926 = HEAP32[$pOrTab>>2]|0; - $927 = (($926) + 8|0); - $928 = HEAP32[$pTabItem>>2]|0; - dest=$927+0|0; src=$928+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $929 = HEAP32[$3>>2]|0; - $930 = (($929) + 4|0); - $931 = HEAP32[$930>>2]|0; - $932 = (($931) + 8|0); - HEAP32[$origSrc>>2] = $932; - HEAP32[$k>>2] = 1; - while(1) { - $933 = HEAP32[$k>>2]|0; - $934 = HEAP32[$nNotReady>>2]|0; - $935 = ($933|0)<=($934|0); - if (!($935)) { - break L159; - } - $936 = HEAP32[$k>>2]|0; - $937 = HEAP32[$pOrTab>>2]|0; - $938 = (($937) + 8|0); - $939 = (($938) + (($936*72)|0)|0); - $940 = HEAP32[$k>>2]|0; - $941 = HEAP32[$pLevel>>2]|0; - $942 = (($941) + (($940*72)|0)|0); - $943 = (($942) + 36|0); - $944 = HEAP8[$943>>0]|0; - $945 = $944&255; - $946 = HEAP32[$origSrc>>2]|0; - $947 = (($946) + (($945*72)|0)|0); - dest=$939+0|0; src=$947+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $948 = HEAP32[$k>>2]|0; - $949 = (($948) + 1)|0; - HEAP32[$k>>2] = $949; - } - } else { - $950 = (($892) + 4|0); - $951 = HEAP32[$950>>2]|0; - HEAP32[$pOrTab>>2] = $951; - } - } while(0); - $952 = HEAP32[$3>>2]|0; - $953 = (($952) + 34|0); - $954 = HEAP16[$953>>1]|0; - $955 = $954&65535; - $956 = $955 & 8; - $957 = ($956|0)==(0); - if ($957) { - $958 = HEAP32[$pTab>>2]|0; - $959 = (($958) + 44|0); - $960 = HEAP8[$959>>0]|0; - $961 = $960&255; - $962 = $961 & 32; - $963 = ($962|0)==(0); - if ($963) { - $964 = HEAP32[$pParse>>2]|0; - $965 = (($964) + 72|0); - $966 = HEAP32[$965>>2]|0; - $967 = (($966) + 1)|0; - HEAP32[$965>>2] = $967; - HEAP32[$regRowset>>2] = $967; - $968 = HEAP32[$v>>2]|0; - $969 = HEAP32[$regRowset>>2]|0; - (_sqlite3VdbeAddOp2($968,28,0,$969)|0); - } else { - $970 = HEAP32[$pTab>>2]|0; - $971 = (_sqlite3PrimaryKeyIndex($970)|0); - HEAP32[$pPk5>>2] = $971; - $972 = HEAP32[$pParse>>2]|0; - $973 = (($972) + 68|0); - $974 = HEAP32[$973>>2]|0; - $975 = (($974) + 1)|0; - HEAP32[$973>>2] = $975; - HEAP32[$regRowset>>2] = $974; - $976 = HEAP32[$v>>2]|0; - $977 = HEAP32[$regRowset>>2]|0; - $978 = HEAP32[$pPk5>>2]|0; - $979 = (($978) + 50|0); - $980 = HEAP16[$979>>1]|0; - $981 = $980&65535; - (_sqlite3VdbeAddOp2($976,55,$977,$981)|0); - $982 = HEAP32[$pParse>>2]|0; - $983 = HEAP32[$pPk5>>2]|0; - _sqlite3VdbeSetP4KeyInfo($982,$983); - } - $984 = HEAP32[$pParse>>2]|0; - $985 = (($984) + 72|0); - $986 = HEAP32[$985>>2]|0; - $987 = (($986) + 1)|0; - HEAP32[$985>>2] = $987; - HEAP32[$regRowid>>2] = $987; - } - $988 = HEAP32[$v>>2]|0; - $989 = HEAP32[$regReturn>>2]|0; - $990 = (_sqlite3VdbeAddOp2($988,25,0,$989)|0); - HEAP32[$iRetInit>>2] = $990; - $991 = HEAP32[$pWC>>2]|0; - $992 = (($991) + 12|0); - $993 = HEAP32[$992>>2]|0; - $994 = ($993|0)>(1); - if ($994) { - HEAP32[$iTerm>>2] = 0; - while(1) { - $995 = HEAP32[$iTerm>>2]|0; - $996 = HEAP32[$pWC>>2]|0; - $997 = (($996) + 12|0); - $998 = HEAP32[$997>>2]|0; - $999 = ($995|0)<($998|0); - if (!($999)) { - break; - } - $1000 = HEAP32[$iTerm>>2]|0; - $1001 = HEAP32[$pWC>>2]|0; - $1002 = (($1001) + 20|0); - $1003 = HEAP32[$1002>>2]|0; - $1004 = (($1003) + (($1000*48)|0)|0); - $1005 = HEAP32[$1004>>2]|0; - HEAP32[$pExpr>>2] = $1005; - $1006 = HEAP32[$iTerm>>2]|0; - $1007 = HEAP32[$pWC>>2]|0; - $1008 = (($1007) + 20|0); - $1009 = HEAP32[$1008>>2]|0; - $1010 = (($1009) + (($1006*48)|0)|0); - $1011 = HEAP32[$pTerm>>2]|0; - $1012 = ($1010|0)==($1011|0); - if (!($1012)) { - $1013 = HEAP32[$pExpr>>2]|0; - $1014 = (($1013) + 4|0); - $1015 = HEAP32[$1014>>2]|0; - $1016 = $1015 & 1; - $1017 = ($1016|0)!=(0); - if (!($1017)) { - $1018 = HEAP32[$iTerm>>2]|0; - $1019 = HEAP32[$pWC>>2]|0; - $1020 = (($1019) + 20|0); - $1021 = HEAP32[$1020>>2]|0; - $1022 = (($1021) + (($1018*48)|0)|0); - $1023 = (($1022) + 20|0); - $1024 = HEAP8[$1023>>0]|0; - $1025 = $1024&255; - $1026 = $1025 & 18; - $1027 = ($1026|0)!=(0); - if (!($1027)) { - $1028 = HEAP32[$iTerm>>2]|0; - $1029 = HEAP32[$pWC>>2]|0; - $1030 = (($1029) + 20|0); - $1031 = HEAP32[$1030>>2]|0; - $1032 = (($1031) + (($1028*48)|0)|0); - $1033 = (($1032) + 18|0); - $1034 = HEAP16[$1033>>1]|0; - $1035 = $1034&65535; - $1036 = $1035 & 4095; - $1037 = ($1036|0)==(0); - if (!($1037)) { - $1038 = HEAP32[$db>>2]|0; - $1039 = HEAP32[$pExpr>>2]|0; - $1040 = (_sqlite3ExprDup($1038,$1039,0)|0); - HEAP32[$pExpr>>2] = $1040; - $1041 = HEAP32[$db>>2]|0; - $1042 = HEAP32[$pAndExpr>>2]|0; - $1043 = HEAP32[$pExpr>>2]|0; - $1044 = (_sqlite3ExprAnd($1041,$1042,$1043)|0); - HEAP32[$pAndExpr>>2] = $1044; - } - } - } - } - $1045 = HEAP32[$iTerm>>2]|0; - $1046 = (($1045) + 1)|0; - HEAP32[$iTerm>>2] = $1046; - } - $1047 = HEAP32[$pAndExpr>>2]|0; - $1048 = ($1047|0)!=(0|0); - if ($1048) { - $1049 = HEAP32[$pParse>>2]|0; - $1050 = HEAP32[$pAndExpr>>2]|0; - $1051 = (_sqlite3PExpr($1049,72,0,$1050,0)|0); - HEAP32[$pAndExpr>>2] = $1051; - } - } - HEAP32[$ii>>2] = 0; - while(1) { - $1052 = HEAP32[$ii>>2]|0; - $1053 = HEAP32[$pOrWc>>2]|0; - $1054 = (($1053) + 12|0); - $1055 = HEAP32[$1054>>2]|0; - $1056 = ($1052|0)<($1055|0); - if (!($1056)) { - break; - } - $1057 = HEAP32[$ii>>2]|0; - $1058 = HEAP32[$pOrWc>>2]|0; - $1059 = (($1058) + 20|0); - $1060 = HEAP32[$1059>>2]|0; - $1061 = (($1060) + (($1057*48)|0)|0); - HEAP32[$pOrTerm>>2] = $1061; - $1062 = HEAP32[$pOrTerm>>2]|0; - $1063 = (($1062) + 8|0); - $1064 = HEAP32[$1063>>2]|0; - $1065 = HEAP32[$iCur>>2]|0; - $1066 = ($1064|0)==($1065|0); - if ($1066) { - label = 138; - } else { - $1067 = HEAP32[$pOrTerm>>2]|0; - $1068 = (($1067) + 18|0); - $1069 = HEAP16[$1068>>1]|0; - $1070 = $1069&65535; - $1071 = $1070 & 512; - $1072 = ($1071|0)!=(0); - if ($1072) { - label = 138; - } - } - if ((label|0) == 138) { - label = 0; - $1073 = HEAP32[$pOrTerm>>2]|0; - $1074 = HEAP32[$1073>>2]|0; - HEAP32[$pOrExpr>>2] = $1074; - HEAP32[$j1>>2] = 0; - $1075 = HEAP32[$pAndExpr>>2]|0; - $1076 = ($1075|0)!=(0|0); - if ($1076) { - $1077 = HEAP32[$pOrExpr>>2]|0; - $1078 = (($1077) + 4|0); - $1079 = HEAP32[$1078>>2]|0; - $1080 = $1079 & 1; - $1081 = ($1080|0)!=(0); - if (!($1081)) { - $1082 = HEAP32[$pOrExpr>>2]|0; - $1083 = HEAP32[$pAndExpr>>2]|0; - $1084 = (($1083) + 12|0); - HEAP32[$1084>>2] = $1082; - $1085 = HEAP32[$pAndExpr>>2]|0; - HEAP32[$pOrExpr>>2] = $1085; - } - } - $1086 = HEAP32[$pParse>>2]|0; - $1087 = HEAP32[$pOrTab>>2]|0; - $1088 = HEAP32[$pOrExpr>>2]|0; - $1089 = HEAP32[$iCovCur>>2]|0; - $1090 = (_sqlite3WhereBegin($1086,$1087,$1088,0,0,240,$1089)|0); - HEAP32[$pSubWInfo>>2] = $1090; - $1091 = HEAP32[$pSubWInfo>>2]|0; - $1092 = ($1091|0)!=(0|0); - if ($1092) { - $1093 = HEAP32[$pParse>>2]|0; - $1094 = HEAP32[$pOrTab>>2]|0; - $1095 = HEAP32[$pSubWInfo>>2]|0; - $1096 = (($1095) + 736|0); - $1097 = HEAP32[$4>>2]|0; - $1098 = HEAP32[$pLevel>>2]|0; - $1099 = (($1098) + 36|0); - $1100 = HEAP8[$1099>>0]|0; - $1101 = $1100&255; - _explainOneScan($1093,$1094,$1096,$1097,$1101,0); - $1102 = HEAP32[$3>>2]|0; - $1103 = (($1102) + 34|0); - $1104 = HEAP16[$1103>>1]|0; - $1105 = $1104&65535; - $1106 = $1105 & 8; - $1107 = ($1106|0)==(0); - do { - if ($1107) { - $1108 = HEAP32[$ii>>2]|0; - $1109 = HEAP32[$pOrWc>>2]|0; - $1110 = (($1109) + 12|0); - $1111 = HEAP32[$1110>>2]|0; - $1112 = (($1111) - 1)|0; - $1113 = ($1108|0)==($1112|0); - $1114 = HEAP32[$ii>>2]|0; - $1115 = $1113 ? -1 : $1114; - HEAP32[$iSet>>2] = $1115; - $1116 = HEAP32[$pTab>>2]|0; - $1117 = (($1116) + 44|0); - $1118 = HEAP8[$1117>>0]|0; - $1119 = $1118&255; - $1120 = $1119 & 32; - $1121 = ($1120|0)==(0); - if ($1121) { - $1122 = HEAP32[$pParse>>2]|0; - $1123 = HEAP32[$pTab>>2]|0; - $1124 = HEAP32[$iCur>>2]|0; - $1125 = HEAP32[$regRowid>>2]|0; - $1126 = (_sqlite3ExprCodeGetColumn($1122,$1123,-1,$1124,$1125,0)|0); - HEAP32[$r>>2] = $1126; - $1127 = HEAP32[$v>>2]|0; - $1128 = HEAP32[$regRowset>>2]|0; - $1129 = HEAP32[$r>>2]|0; - $1130 = HEAP32[$iSet>>2]|0; - $1131 = (_sqlite3VdbeAddOp4Int($1127,127,$1128,0,$1129,$1130)|0); - HEAP32[$j1>>2] = $1131; - break; - } - $1132 = HEAP32[$pTab>>2]|0; - $1133 = (_sqlite3PrimaryKeyIndex($1132)|0); - HEAP32[$pPk6>>2] = $1133; - $1134 = HEAP32[$pPk6>>2]|0; - $1135 = (($1134) + 50|0); - $1136 = HEAP16[$1135>>1]|0; - $1137 = $1136&65535; - HEAP32[$nPk>>2] = $1137; - $1138 = HEAP32[$pParse>>2]|0; - $1139 = HEAP32[$nPk>>2]|0; - $1140 = (_sqlite3GetTempRange($1138,$1139)|0); - HEAP32[$r>>2] = $1140; - HEAP32[$iPk>>2] = 0; - while(1) { - $1141 = HEAP32[$iPk>>2]|0; - $1142 = HEAP32[$nPk>>2]|0; - $1143 = ($1141|0)<($1142|0); - if (!($1143)) { - break; - } - $1144 = HEAP32[$iPk>>2]|0; - $1145 = HEAP32[$pPk6>>2]|0; - $1146 = (($1145) + 4|0); - $1147 = HEAP32[$1146>>2]|0; - $1148 = (($1147) + ($1144<<1)|0); - $1149 = HEAP16[$1148>>1]|0; - $1150 = $1149 << 16 >> 16; - HEAP32[$iCol>>2] = $1150; - $1151 = HEAP32[$pParse>>2]|0; - $1152 = HEAP32[$pTab>>2]|0; - $1153 = HEAP32[$iCol>>2]|0; - $1154 = HEAP32[$iCur>>2]|0; - $1155 = HEAP32[$r>>2]|0; - $1156 = HEAP32[$iPk>>2]|0; - $1157 = (($1155) + ($1156))|0; - (_sqlite3ExprCodeGetColumn($1151,$1152,$1153,$1154,$1157,0)|0); - $1158 = HEAP32[$iPk>>2]|0; - $1159 = (($1158) + 1)|0; - HEAP32[$iPk>>2] = $1159; - } - $1160 = HEAP32[$iSet>>2]|0; - $1161 = ($1160|0)!=(0); - if ($1161) { - $1162 = HEAP32[$v>>2]|0; - $1163 = HEAP32[$regRowset>>2]|0; - $1164 = HEAP32[$r>>2]|0; - $1165 = HEAP32[$nPk>>2]|0; - $1166 = (_sqlite3VdbeAddOp4Int($1162,66,$1163,0,$1164,$1165)|0); - HEAP32[$j1>>2] = $1166; - } - $1167 = HEAP32[$iSet>>2]|0; - $1168 = ($1167|0)>=(0); - do { - if ($1168) { - $1169 = HEAP32[$v>>2]|0; - $1170 = HEAP32[$r>>2]|0; - $1171 = HEAP32[$nPk>>2]|0; - $1172 = HEAP32[$regRowid>>2]|0; - (_sqlite3VdbeAddOp3($1169,48,$1170,$1171,$1172)|0); - $1173 = HEAP32[$v>>2]|0; - $1174 = HEAP32[$regRowset>>2]|0; - $1175 = HEAP32[$regRowid>>2]|0; - (_sqlite3VdbeAddOp3($1173,107,$1174,$1175,0)|0); - $1176 = HEAP32[$iSet>>2]|0; - $1177 = ($1176|0)!=(0); - if (!($1177)) { - break; - } - $1178 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($1178,16); - } - } while(0); - $1179 = HEAP32[$pParse>>2]|0; - $1180 = HEAP32[$r>>2]|0; - $1181 = HEAP32[$nPk>>2]|0; - _sqlite3ReleaseTempRange($1179,$1180,$1181); - } - } while(0); - $1182 = HEAP32[$v>>2]|0; - $1183 = HEAP32[$regReturn>>2]|0; - $1184 = HEAP32[$iLoopBody>>2]|0; - (_sqlite3VdbeAddOp2($1182,17,$1183,$1184)|0); - $1185 = HEAP32[$j1>>2]|0; - $1186 = ($1185|0)!=(0); - if ($1186) { - $1187 = HEAP32[$v>>2]|0; - $1188 = HEAP32[$j1>>2]|0; - _sqlite3VdbeJumpHere($1187,$1188); - } - $1189 = HEAP32[$pSubWInfo>>2]|0; - $1190 = (($1189) + 39|0); - $1191 = HEAP8[$1190>>0]|0; - $1192 = ($1191<<24>>24)!=(0); - if ($1192) { - HEAP32[$untestedTerms>>2] = 1; - } - $1193 = HEAP32[$pSubWInfo>>2]|0; - $1194 = (($1193) + 736|0); - $1195 = (($1194) + 56|0); - $1196 = HEAP32[$1195>>2]|0; - HEAP32[$pSubLoop>>2] = $1196; - $1197 = HEAP32[$pSubLoop>>2]|0; - $1198 = (($1197) + 36|0); - $1199 = HEAP32[$1198>>2]|0; - $1200 = $1199 & 512; - $1201 = ($1200|0)!=(0); - do { - if ($1201) { - $1202 = HEAP32[$ii>>2]|0; - $1203 = ($1202|0)==(0); - if (!($1203)) { - $1204 = HEAP32[$pSubLoop>>2]|0; - $1205 = (($1204) + 24|0); - $1206 = (($1205) + 4|0); - $1207 = HEAP32[$1206>>2]|0; - $1208 = HEAP32[$pCov>>2]|0; - $1209 = ($1207|0)==($1208|0); - if (!($1209)) { - label = 164; - break; - } - } - $1210 = HEAP32[$pTab>>2]|0; - $1211 = (($1210) + 44|0); - $1212 = HEAP8[$1211>>0]|0; - $1213 = $1212&255; - $1214 = $1213 & 32; - $1215 = ($1214|0)==(0); - if (!($1215)) { - $1216 = HEAP32[$pSubLoop>>2]|0; - $1217 = (($1216) + 24|0); - $1218 = (($1217) + 4|0); - $1219 = HEAP32[$1218>>2]|0; - $1220 = (($1219) + 55|0); - $1221 = HEAP8[$1220>>0]|0; - $1222 = $1221 & 3; - $1223 = $1222&255; - $1224 = ($1223|0)==(2); - if ($1224) { - label = 164; - break; - } - } - $1225 = HEAP32[$pSubLoop>>2]|0; - $1226 = (($1225) + 24|0); - $1227 = (($1226) + 4|0); - $1228 = HEAP32[$1227>>2]|0; - HEAP32[$pCov>>2] = $1228; - } else { - label = 164; - } - } while(0); - if ((label|0) == 164) { - label = 0; - HEAP32[$pCov>>2] = 0; - } - $1229 = HEAP32[$pSubWInfo>>2]|0; - _sqlite3WhereEnd($1229); - } - } - $1230 = HEAP32[$ii>>2]|0; - $1231 = (($1230) + 1)|0; - HEAP32[$ii>>2] = $1231; - } - $1232 = HEAP32[$pCov>>2]|0; - $1233 = HEAP32[$pLevel>>2]|0; - $1234 = (($1233) + 48|0); - HEAP32[$1234>>2] = $1232; - $1235 = HEAP32[$pCov>>2]|0; - $1236 = ($1235|0)!=(0|0); - if ($1236) { - $1237 = HEAP32[$iCovCur>>2]|0; - $1238 = HEAP32[$pLevel>>2]|0; - $1239 = (($1238) + 8|0); - HEAP32[$1239>>2] = $1237; - } - $1240 = HEAP32[$pAndExpr>>2]|0; - $1241 = ($1240|0)!=(0|0); - if ($1241) { - $1242 = HEAP32[$pAndExpr>>2]|0; - $1243 = (($1242) + 12|0); - HEAP32[$1243>>2] = 0; - $1244 = HEAP32[$db>>2]|0; - $1245 = HEAP32[$pAndExpr>>2]|0; - _sqlite3ExprDelete($1244,$1245); - } - $1246 = HEAP32[$v>>2]|0; - $1247 = HEAP32[$iRetInit>>2]|0; - $1248 = HEAP32[$v>>2]|0; - $1249 = (_sqlite3VdbeCurrentAddr($1248)|0); - _sqlite3VdbeChangeP1($1246,$1247,$1249); - $1250 = HEAP32[$v>>2]|0; - $1251 = HEAP32[$pLevel>>2]|0; - $1252 = (($1251) + 12|0); - $1253 = HEAP32[$1252>>2]|0; - (_sqlite3VdbeAddOp2($1250,16,0,$1253)|0); - $1254 = HEAP32[$v>>2]|0; - $1255 = HEAP32[$iLoopBody>>2]|0; - _sqlite3VdbeResolveLabel($1254,$1255); - $1256 = HEAP32[$3>>2]|0; - $1257 = (($1256) + 41|0); - $1258 = HEAP8[$1257>>0]|0; - $1259 = $1258&255; - $1260 = ($1259|0)>(1); - if ($1260) { - $1261 = HEAP32[$db>>2]|0; - $1262 = HEAP32[$pOrTab>>2]|0; - _sqlite3DbFree($1261,$1262); - } - $1263 = HEAP32[$untestedTerms>>2]|0; - $1264 = ($1263|0)!=(0); - if (!($1264)) { - $1265 = HEAP32[$pLevel>>2]|0; - $1266 = HEAP32[$pTerm>>2]|0; - _disableTerm($1265,$1266); - } - } - } while(0); - $1297 = HEAP32[$pWC>>2]|0; - $1298 = (($1297) + 20|0); - $1299 = HEAP32[$1298>>2]|0; - HEAP32[$pTerm>>2] = $1299; - $1300 = HEAP32[$pWC>>2]|0; - $1301 = (($1300) + 12|0); - $1302 = HEAP32[$1301>>2]|0; - HEAP32[$j>>2] = $1302; - while(1) { - $1303 = HEAP32[$j>>2]|0; - $1304 = ($1303|0)>(0); - if (!($1304)) { - break; - } - $1305 = HEAP32[$pTerm>>2]|0; - $1306 = (($1305) + 20|0); - $1307 = HEAP8[$1306>>0]|0; - $1308 = $1307&255; - $1309 = $1308 & 6; - $1310 = ($1309|0)!=(0); - do { - if (!($1310)) { - $1311 = HEAP32[$pTerm>>2]|0; - $1312 = (($1311) + 40|0); - $1313 = $1312; - $1314 = $1313; - $1315 = HEAP32[$1314>>2]|0; - $1316 = (($1313) + 4)|0; - $1317 = $1316; - $1318 = HEAP32[$1317>>2]|0; - $1319 = HEAP32[$pLevel>>2]|0; - $1320 = (($1319) + 64|0); - $1321 = $1320; - $1322 = $1321; - $1323 = HEAP32[$1322>>2]|0; - $1324 = (($1321) + 4)|0; - $1325 = $1324; - $1326 = HEAP32[$1325>>2]|0; - $1327 = $1315 & $1323; - $1328 = $1318 & $1326; - $1329 = ($1327|0)!=(0); - $1330 = ($1328|0)!=(0); - $1331 = $1329 | $1330; - if ($1331) { - $1332 = HEAP32[$3>>2]|0; - $1333 = (($1332) + 39|0); - HEAP8[$1333>>0] = 1; - break; - } - $1334 = HEAP32[$pTerm>>2]|0; - $1335 = HEAP32[$1334>>2]|0; - HEAP32[$pE>>2] = $1335; - $1336 = HEAP32[$pLevel>>2]|0; - $1337 = HEAP32[$1336>>2]|0; - $1338 = ($1337|0)!=(0); - if ($1338) { - $1339 = HEAP32[$pE>>2]|0; - $1340 = (($1339) + 4|0); - $1341 = HEAP32[$1340>>2]|0; - $1342 = $1341 & 1; - $1343 = ($1342|0)!=(0); - if (!($1343)) { - break; - } - } - $1344 = HEAP32[$pParse>>2]|0; - $1345 = HEAP32[$pE>>2]|0; - $1346 = HEAP32[$addrCont>>2]|0; - _sqlite3ExprIfFalse($1344,$1345,$1346,8); - $1347 = HEAP32[$pTerm>>2]|0; - $1348 = (($1347) + 20|0); - $1349 = HEAP8[$1348>>0]|0; - $1350 = $1349&255; - $1351 = $1350 | 4; - $1352 = $1351&255; - HEAP8[$1348>>0] = $1352; - } - } while(0); - $1353 = HEAP32[$j>>2]|0; - $1354 = (($1353) + -1)|0; - HEAP32[$j>>2] = $1354; - $1355 = HEAP32[$pTerm>>2]|0; - $1356 = (($1355) + 48|0); - HEAP32[$pTerm>>2] = $1356; - } - $1357 = HEAP32[$pWC>>2]|0; - $1358 = (($1357) + 20|0); - $1359 = HEAP32[$1358>>2]|0; - HEAP32[$pTerm>>2] = $1359; - $1360 = HEAP32[$pWC>>2]|0; - $1361 = (($1360) + 12|0); - $1362 = HEAP32[$1361>>2]|0; - HEAP32[$j>>2] = $1362; - while(1) { - $1363 = HEAP32[$j>>2]|0; - $1364 = ($1363|0)>(0); - if (!($1364)) { - break; - } - $1365 = HEAP32[$pTerm>>2]|0; - $1366 = (($1365) + 20|0); - $1367 = HEAP8[$1366>>0]|0; - $1368 = $1367&255; - $1369 = $1368 & 6; - $1370 = ($1369|0)!=(0); - if (!($1370)) { - $1371 = HEAP32[$pTerm>>2]|0; - $1372 = (($1371) + 18|0); - $1373 = HEAP16[$1372>>1]|0; - $1374 = $1373&65535; - $1375 = ($1374|0)!=(1026); - if (!($1375)) { - $1376 = HEAP32[$pTerm>>2]|0; - $1377 = (($1376) + 8|0); - $1378 = HEAP32[$1377>>2]|0; - $1379 = HEAP32[$iCur>>2]|0; - $1380 = ($1378|0)!=($1379|0); - if (!($1380)) { - $1381 = HEAP32[$pLevel>>2]|0; - $1382 = HEAP32[$1381>>2]|0; - $1383 = ($1382|0)!=(0); - if (!($1383)) { - $1384 = HEAP32[$pTerm>>2]|0; - $1385 = HEAP32[$1384>>2]|0; - HEAP32[$pE7>>2] = $1385; - $1386 = HEAP32[$pWC>>2]|0; - $1387 = HEAP32[$iCur>>2]|0; - $1388 = HEAP32[$pTerm>>2]|0; - $1389 = (($1388) + 12|0); - $1390 = HEAP32[$1389>>2]|0; - $1391 = $5; - $1392 = $1391; - $1393 = HEAP32[$1392>>2]|0; - $1394 = (($1391) + 4)|0; - $1395 = $1394; - $1396 = HEAP32[$1395>>2]|0; - $1397 = (_findTerm($1386,$1387,$1390,$1393,$1396,3,0)|0); - HEAP32[$pAlt>>2] = $1397; - $1398 = HEAP32[$pAlt>>2]|0; - $1399 = ($1398|0)==(0|0); - if (!($1399)) { - $1400 = HEAP32[$pAlt>>2]|0; - $1401 = (($1400) + 20|0); - $1402 = HEAP8[$1401>>0]|0; - $1403 = $1402&255; - $1404 = $1403 & 4; - $1405 = ($1404|0)!=(0); - if (!($1405)) { - $1406 = HEAP32[$db>>2]|0; - $1407 = (_sqlite3DbMallocRaw($1406,48)|0); - HEAP32[$pEAlt>>2] = $1407; - $1408 = HEAP32[$pEAlt>>2]|0; - $1409 = ($1408|0)!=(0|0); - if ($1409) { - $1410 = HEAP32[$pEAlt>>2]|0; - $1411 = HEAP32[$pAlt>>2]|0; - $1412 = HEAP32[$1411>>2]|0; - dest=$1410+0|0; src=$1412+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $1413 = HEAP32[$pE7>>2]|0; - $1414 = (($1413) + 12|0); - $1415 = HEAP32[$1414>>2]|0; - $1416 = HEAP32[$pEAlt>>2]|0; - $1417 = (($1416) + 12|0); - HEAP32[$1417>>2] = $1415; - $1418 = HEAP32[$pParse>>2]|0; - $1419 = HEAP32[$pEAlt>>2]|0; - $1420 = HEAP32[$addrCont>>2]|0; - _sqlite3ExprIfFalse($1418,$1419,$1420,8); - $1421 = HEAP32[$db>>2]|0; - $1422 = HEAP32[$pEAlt>>2]|0; - _sqlite3DbFree($1421,$1422); - } - } - } - } - } - } - } - $1423 = HEAP32[$j>>2]|0; - $1424 = (($1423) + -1)|0; - HEAP32[$j>>2] = $1424; - $1425 = HEAP32[$pTerm>>2]|0; - $1426 = (($1425) + 48|0); - HEAP32[$pTerm>>2] = $1426; - } - $1427 = HEAP32[$pLevel>>2]|0; - $1428 = HEAP32[$1427>>2]|0; - $1429 = ($1428|0)!=(0); - L276: do { - if ($1429) { - $1430 = HEAP32[$v>>2]|0; - $1431 = (_sqlite3VdbeCurrentAddr($1430)|0); - $1432 = HEAP32[$pLevel>>2]|0; - $1433 = (($1432) + 28|0); - HEAP32[$1433>>2] = $1431; - $1434 = HEAP32[$v>>2]|0; - $1435 = HEAP32[$pLevel>>2]|0; - $1436 = HEAP32[$1435>>2]|0; - (_sqlite3VdbeAddOp2($1434,25,1,$1436)|0); - $1437 = HEAP32[$pParse>>2]|0; - _sqlite3ExprCacheClear($1437); - $1438 = HEAP32[$pWC>>2]|0; - $1439 = (($1438) + 20|0); - $1440 = HEAP32[$1439>>2]|0; - HEAP32[$pTerm>>2] = $1440; - HEAP32[$j>>2] = 0; - while(1) { - $1441 = HEAP32[$j>>2]|0; - $1442 = HEAP32[$pWC>>2]|0; - $1443 = (($1442) + 12|0); - $1444 = HEAP32[$1443>>2]|0; - $1445 = ($1441|0)<($1444|0); - if (!($1445)) { - break L276; - } - $1446 = HEAP32[$pTerm>>2]|0; - $1447 = (($1446) + 20|0); - $1448 = HEAP8[$1447>>0]|0; - $1449 = $1448&255; - $1450 = $1449 & 6; - $1451 = ($1450|0)!=(0); - if (!($1451)) { - $1452 = HEAP32[$pTerm>>2]|0; - $1453 = (($1452) + 40|0); - $1454 = $1453; - $1455 = $1454; - $1456 = HEAP32[$1455>>2]|0; - $1457 = (($1454) + 4)|0; - $1458 = $1457; - $1459 = HEAP32[$1458>>2]|0; - $1460 = HEAP32[$pLevel>>2]|0; - $1461 = (($1460) + 64|0); - $1462 = $1461; - $1463 = $1462; - $1464 = HEAP32[$1463>>2]|0; - $1465 = (($1462) + 4)|0; - $1466 = $1465; - $1467 = HEAP32[$1466>>2]|0; - $1468 = $1456 & $1464; - $1469 = $1459 & $1467; - $1470 = ($1468|0)!=(0); - $1471 = ($1469|0)!=(0); - $1472 = $1470 | $1471; - if (!($1472)) { - $1473 = HEAP32[$pParse>>2]|0; - $1474 = HEAP32[$pTerm>>2]|0; - $1475 = HEAP32[$1474>>2]|0; - $1476 = HEAP32[$addrCont>>2]|0; - _sqlite3ExprIfFalse($1473,$1475,$1476,8); - $1477 = HEAP32[$pTerm>>2]|0; - $1478 = (($1477) + 20|0); - $1479 = HEAP8[$1478>>0]|0; - $1480 = $1479&255; - $1481 = $1480 | 4; - $1482 = $1481&255; - HEAP8[$1478>>0] = $1482; - } - } - $1483 = HEAP32[$j>>2]|0; - $1484 = (($1483) + 1)|0; - HEAP32[$j>>2] = $1484; - $1485 = HEAP32[$pTerm>>2]|0; - $1486 = (($1485) + 48|0); - HEAP32[$pTerm>>2] = $1486; - } - } - } while(0); - $1487 = HEAP32[$pLevel>>2]|0; - $1488 = (($1487) + 64|0); - $1489 = $1488; - $1490 = $1489; - $1491 = HEAP32[$1490>>2]|0; - $1492 = (($1489) + 4)|0; - $1493 = $1492; - $1494 = HEAP32[$1493>>2]|0; - $1495 = $2; - $1496 = $1495; - HEAP32[$1496>>2] = $1491; - $1497 = (($1495) + 4)|0; - $1498 = $1497; - HEAP32[$1498>>2] = $1494; - $1499 = $2; - $1500 = $1499; - $1501 = HEAP32[$1500>>2]|0; - $1502 = (($1499) + 4)|0; - $1503 = $1502; - $1504 = HEAP32[$1503>>2]|0; - tempRet0 = $1504; - STACKTOP = sp;return ($1501|0); -} -function _codeEqualityTerm($pParse,$pTerm,$pLevel,$iEq,$bRev,$iTarget) { - $pParse = $pParse|0; - $pTerm = $pTerm|0; - $pLevel = $pLevel|0; - $iEq = $iEq|0; - $bRev = $bRev|0; - $iTarget = $iTarget|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $eType = 0, $iReg = 0, $iTab = 0, $pIn = 0, $pLoop = 0, $pX = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 48|0; - $1 = sp + 44|0; - $2 = sp + 40|0; - $3 = sp + 36|0; - $4 = sp + 32|0; - $5 = sp + 28|0; - $pX = sp + 24|0; - $v = sp + 20|0; - $iReg = sp + 16|0; - $eType = sp + 12|0; - $iTab = sp + 8|0; - $pIn = sp + 4|0; - $pLoop = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTerm; - HEAP32[$2>>2] = $pLevel; - HEAP32[$3>>2] = $iEq; - HEAP32[$4>>2] = $bRev; - HEAP32[$5>>2] = $iTarget; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$pX>>2] = $7; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 8|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$v>>2] = $10; - $11 = HEAP32[$pX>>2]|0; - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = ($13|0)==(79); - if ($14) { - $15 = HEAP32[$0>>2]|0; - $16 = HEAP32[$pX>>2]|0; - $17 = (($16) + 16|0); - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$5>>2]|0; - $20 = (_sqlite3ExprCodeTarget($15,$18,$19)|0); - HEAP32[$iReg>>2] = $20; - $137 = HEAP32[$2>>2]|0; - $138 = HEAP32[$1>>2]|0; - _disableTerm($137,$138); - $139 = HEAP32[$iReg>>2]|0; - STACKTOP = sp;return ($139|0); - } - $21 = HEAP32[$pX>>2]|0; - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = ($23|0)==(76); - if ($24) { - $25 = HEAP32[$5>>2]|0; - HEAP32[$iReg>>2] = $25; - $26 = HEAP32[$v>>2]|0; - $27 = HEAP32[$iReg>>2]|0; - (_sqlite3VdbeAddOp2($26,28,0,$27)|0); - $137 = HEAP32[$2>>2]|0; - $138 = HEAP32[$1>>2]|0; - _disableTerm($137,$138); - $139 = HEAP32[$iReg>>2]|0; - STACKTOP = sp;return ($139|0); - } - $28 = HEAP32[$2>>2]|0; - $29 = (($28) + 56|0); - $30 = HEAP32[$29>>2]|0; - HEAP32[$pLoop>>2] = $30; - $31 = HEAP32[$pLoop>>2]|0; - $32 = (($31) + 36|0); - $33 = HEAP32[$32>>2]|0; - $34 = $33 & 1024; - $35 = ($34|0)==(0); - if ($35) { - $36 = HEAP32[$pLoop>>2]|0; - $37 = (($36) + 24|0); - $38 = (($37) + 4|0); - $39 = HEAP32[$38>>2]|0; - $40 = ($39|0)!=(0|0); - if ($40) { - $41 = HEAP32[$3>>2]|0; - $42 = HEAP32[$pLoop>>2]|0; - $43 = (($42) + 24|0); - $44 = (($43) + 4|0); - $45 = HEAP32[$44>>2]|0; - $46 = (($45) + 28|0); - $47 = HEAP32[$46>>2]|0; - $48 = (($47) + ($41)|0); - $49 = HEAP8[$48>>0]|0; - $50 = $49&255; - $51 = ($50|0)!=(0); - if ($51) { - $52 = HEAP32[$4>>2]|0; - $53 = ($52|0)!=(0); - $54 = $53 ^ 1; - $55 = $54&1; - HEAP32[$4>>2] = $55; - } - } - } - $56 = HEAP32[$5>>2]|0; - HEAP32[$iReg>>2] = $56; - $57 = HEAP32[$0>>2]|0; - $58 = HEAP32[$pX>>2]|0; - $59 = (_sqlite3FindInIndex($57,$58,0)|0); - HEAP32[$eType>>2] = $59; - $60 = HEAP32[$eType>>2]|0; - $61 = ($60|0)==(4); - if ($61) { - $62 = HEAP32[$4>>2]|0; - $63 = ($62|0)!=(0); - $64 = $63 ^ 1; - $65 = $64&1; - HEAP32[$4>>2] = $65; - } - $66 = HEAP32[$pX>>2]|0; - $67 = (($66) + 28|0); - $68 = HEAP32[$67>>2]|0; - HEAP32[$iTab>>2] = $68; - $69 = HEAP32[$v>>2]|0; - $70 = HEAP32[$4>>2]|0; - $71 = ($70|0)!=(0); - $72 = $71 ? 102 : 105; - $73 = HEAP32[$iTab>>2]|0; - (_sqlite3VdbeAddOp2($69,$72,$73,0)|0); - $74 = HEAP32[$pLoop>>2]|0; - $75 = (($74) + 36|0); - $76 = HEAP32[$75>>2]|0; - $77 = $76 | 2048; - HEAP32[$75>>2] = $77; - $78 = HEAP32[$2>>2]|0; - $79 = (($78) + 48|0); - $80 = HEAP32[$79>>2]|0; - $81 = ($80|0)==(0); - if ($81) { - $82 = HEAP32[$v>>2]|0; - $83 = (_sqlite3VdbeMakeLabel($82)|0); - $84 = HEAP32[$2>>2]|0; - $85 = (($84) + 16|0); - HEAP32[$85>>2] = $83; - } - $86 = HEAP32[$2>>2]|0; - $87 = (($86) + 48|0); - $88 = HEAP32[$87>>2]|0; - $89 = (($88) + 1)|0; - HEAP32[$87>>2] = $89; - $90 = HEAP32[$0>>2]|0; - $91 = HEAP32[$90>>2]|0; - $92 = HEAP32[$2>>2]|0; - $93 = (($92) + 48|0); - $94 = (($93) + 4|0); - $95 = HEAP32[$94>>2]|0; - $96 = HEAP32[$2>>2]|0; - $97 = (($96) + 48|0); - $98 = HEAP32[$97>>2]|0; - $99 = ($98*12)|0; - $100 = (_sqlite3DbReallocOrFree($91,$95,$99)|0); - $101 = HEAP32[$2>>2]|0; - $102 = (($101) + 48|0); - $103 = (($102) + 4|0); - HEAP32[$103>>2] = $100; - $104 = HEAP32[$2>>2]|0; - $105 = (($104) + 48|0); - $106 = (($105) + 4|0); - $107 = HEAP32[$106>>2]|0; - HEAP32[$pIn>>2] = $107; - $108 = HEAP32[$pIn>>2]|0; - $109 = ($108|0)!=(0|0); - $110 = HEAP32[$2>>2]|0; - $111 = (($110) + 48|0); - if (!($109)) { - HEAP32[$111>>2] = 0; - $137 = HEAP32[$2>>2]|0; - $138 = HEAP32[$1>>2]|0; - _disableTerm($137,$138); - $139 = HEAP32[$iReg>>2]|0; - STACKTOP = sp;return ($139|0); - } - $112 = HEAP32[$111>>2]|0; - $113 = (($112) - 1)|0; - $114 = HEAP32[$pIn>>2]|0; - $115 = (($114) + (($113*12)|0)|0); - HEAP32[$pIn>>2] = $115; - $116 = HEAP32[$iTab>>2]|0; - $117 = HEAP32[$pIn>>2]|0; - HEAP32[$117>>2] = $116; - $118 = HEAP32[$eType>>2]|0; - $119 = ($118|0)==(1); - $120 = HEAP32[$v>>2]|0; - $121 = HEAP32[$iTab>>2]|0; - $122 = HEAP32[$iReg>>2]|0; - if ($119) { - $123 = (_sqlite3VdbeAddOp2($120,100,$121,$122)|0); - $124 = HEAP32[$pIn>>2]|0; - $125 = (($124) + 4|0); - HEAP32[$125>>2] = $123; - } else { - $126 = (_sqlite3VdbeAddOp3($120,46,$121,0,$122)|0); - $127 = HEAP32[$pIn>>2]|0; - $128 = (($127) + 4|0); - HEAP32[$128>>2] = $126; - } - $129 = HEAP32[$4>>2]|0; - $130 = ($129|0)!=(0); - $131 = $130 ? 6 : 7; - $132 = $131&255; - $133 = HEAP32[$pIn>>2]|0; - $134 = (($133) + 8|0); - HEAP8[$134>>0] = $132; - $135 = HEAP32[$v>>2]|0; - $136 = HEAP32[$iReg>>2]|0; - (_sqlite3VdbeAddOp1($135,76,$136)|0); - $137 = HEAP32[$2>>2]|0; - $138 = HEAP32[$1>>2]|0; - _disableTerm($137,$138); - $139 = HEAP32[$iReg>>2]|0; - STACKTOP = sp;return ($139|0); -} -function _disableTerm($pLevel,$pTerm) { - $pLevel = $pLevel|0; - $pTerm = $pTerm|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $pOther = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pOther = sp; - HEAP32[$0>>2] = $pLevel; - HEAP32[$1>>2] = $pTerm; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - STACKTOP = sp;return; - } - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 20|0); - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - $8 = $7 & 4; - $9 = ($8|0)==(0); - if (!($9)) { - STACKTOP = sp;return; - } - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)==(0); - if (!($12)) { - $13 = HEAP32[$1>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + 4|0); - $16 = HEAP32[$15>>2]|0; - $17 = $16 & 1; - $18 = ($17|0)!=(0); - if (!($18)) { - STACKTOP = sp;return; - } - } - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 64|0); - $21 = $20; - $22 = $21; - $23 = HEAP32[$22>>2]|0; - $24 = (($21) + 4)|0; - $25 = $24; - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$1>>2]|0; - $28 = (($27) + 40|0); - $29 = $28; - $30 = $29; - $31 = HEAP32[$30>>2]|0; - $32 = (($29) + 4)|0; - $33 = $32; - $34 = HEAP32[$33>>2]|0; - $35 = $23 & $31; - $36 = $26 & $34; - $37 = ($35|0)==(0); - $38 = ($36|0)==(0); - $39 = $37 & $38; - if (!($39)) { - STACKTOP = sp;return; - } - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 20|0); - $42 = HEAP8[$41>>0]|0; - $43 = $42&255; - $44 = $43 | 4; - $45 = $44&255; - HEAP8[$41>>0] = $45; - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 4|0); - $48 = HEAP32[$47>>2]|0; - $49 = ($48|0)>=(0); - if (!($49)) { - STACKTOP = sp;return; - } - $50 = HEAP32[$1>>2]|0; - $51 = (($50) + 4|0); - $52 = HEAP32[$51>>2]|0; - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + 24|0); - $55 = HEAP32[$54>>2]|0; - $56 = (($55) + 20|0); - $57 = HEAP32[$56>>2]|0; - $58 = (($57) + (($52*48)|0)|0); - HEAP32[$pOther>>2] = $58; - $59 = HEAP32[$pOther>>2]|0; - $60 = (($59) + 21|0); - $61 = HEAP8[$60>>0]|0; - $62 = (($61) + -1)<<24>>24; - HEAP8[$60>>0] = $62; - $63 = $62&255; - $64 = ($63|0)==(0); - if (!($64)) { - STACKTOP = sp;return; - } - $65 = HEAP32[$0>>2]|0; - $66 = HEAP32[$pOther>>2]|0; - _disableTerm($65,$66); - STACKTOP = sp;return; -} -function _codeAllEqualityTerms($pParse,$pLevel,$bRev,$nExtraReg,$pzAff) { - $pParse = $pParse|0; - $pLevel = $pLevel|0; - $bRev = $bRev|0; - $nExtraReg = $nExtraReg|0; - $pzAff = $pzAff|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $17 = 0, $18 = 0; - var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; - var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; - var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; - var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; - var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iIdxCur = 0, $j = 0, $nEq = 0, $nReg = 0, $nSkip = 0, $pIdx = 0, $pLoop = 0, $pRight = 0, $pTerm = 0, $r1 = 0, $regBase = 0; - var $v = 0, $zAff = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 60|0; - $1 = sp + 56|0; - $2 = sp + 52|0; - $3 = sp + 48|0; - $4 = sp + 44|0; - $nEq = sp + 66|0; - $nSkip = sp + 64|0; - $v = sp + 40|0; - $pIdx = sp + 36|0; - $pTerm = sp + 32|0; - $pLoop = sp + 28|0; - $j = sp + 24|0; - $regBase = sp + 20|0; - $nReg = sp + 16|0; - $zAff = sp + 12|0; - $iIdxCur = sp + 8|0; - $r1 = sp + 4|0; - $pRight = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pLevel; - HEAP32[$2>>2] = $bRev; - HEAP32[$3>>2] = $nExtraReg; - HEAP32[$4>>2] = $pzAff; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 8|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$v>>2] = $7; - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 56|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$pLoop>>2] = $10; - $11 = HEAP32[$pLoop>>2]|0; - $12 = (($11) + 24|0); - $13 = HEAP16[$12>>1]|0; - HEAP16[$nEq>>1] = $13; - $14 = HEAP32[$pLoop>>2]|0; - $15 = (($14) + 24|0); - $16 = (($15) + 2|0); - $17 = HEAP16[$16>>1]|0; - HEAP16[$nSkip>>1] = $17; - $18 = HEAP32[$pLoop>>2]|0; - $19 = (($18) + 24|0); - $20 = (($19) + 4|0); - $21 = HEAP32[$20>>2]|0; - HEAP32[$pIdx>>2] = $21; - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 72|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + 1)|0; - HEAP32[$regBase>>2] = $25; - $26 = HEAP32[$pLoop>>2]|0; - $27 = (($26) + 24|0); - $28 = HEAP16[$27>>1]|0; - $29 = $28&65535; - $30 = HEAP32[$3>>2]|0; - $31 = (($29) + ($30))|0; - HEAP32[$nReg>>2] = $31; - $32 = HEAP32[$nReg>>2]|0; - $33 = HEAP32[$0>>2]|0; - $34 = (($33) + 72|0); - $35 = HEAP32[$34>>2]|0; - $36 = (($35) + ($32))|0; - HEAP32[$34>>2] = $36; - $37 = HEAP32[$0>>2]|0; - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$v>>2]|0; - $40 = HEAP32[$pIdx>>2]|0; - $41 = (_sqlite3IndexAffinityStr($39,$40)|0); - $42 = (_sqlite3DbStrDup($38,$41)|0); - HEAP32[$zAff>>2] = $42; - $43 = HEAP32[$zAff>>2]|0; - $44 = ($43|0)!=(0|0); - if (!($44)) { - $45 = HEAP32[$0>>2]|0; - $46 = HEAP32[$45>>2]|0; - $47 = (($46) + 64|0); - HEAP8[$47>>0] = 1; - } - $48 = HEAP16[$nSkip>>1]|0; - $49 = ($48<<16>>16)!=(0); - L4: do { - if ($49) { - $50 = HEAP32[$1>>2]|0; - $51 = (($50) + 8|0); - $52 = HEAP32[$51>>2]|0; - HEAP32[$iIdxCur>>2] = $52; - $53 = HEAP32[$v>>2]|0; - $54 = HEAP32[$2>>2]|0; - $55 = ($54|0)!=(0); - $56 = $55 ? 102 : 105; - $57 = HEAP32[$iIdxCur>>2]|0; - (_sqlite3VdbeAddOp1($53,$56,$57)|0); - $58 = HEAP32[$v>>2]|0; - $59 = (_sqlite3VdbeAddOp0($58,16)|0); - HEAP32[$j>>2] = $59; - $60 = HEAP32[$v>>2]|0; - $61 = HEAP32[$2>>2]|0; - $62 = ($61|0)!=(0); - $63 = $62 ? 59 : 62; - $64 = HEAP32[$iIdxCur>>2]|0; - $65 = HEAP32[$regBase>>2]|0; - $66 = HEAP16[$nSkip>>1]|0; - $67 = $66&65535; - $68 = (_sqlite3VdbeAddOp4Int($60,$63,$64,0,$65,$67)|0); - $69 = HEAP32[$1>>2]|0; - $70 = (($69) + 20|0); - HEAP32[$70>>2] = $68; - $71 = HEAP32[$v>>2]|0; - $72 = HEAP32[$j>>2]|0; - _sqlite3VdbeJumpHere($71,$72); - HEAP32[$j>>2] = 0; - while(1) { - $73 = HEAP32[$j>>2]|0; - $74 = HEAP16[$nSkip>>1]|0; - $75 = $74&65535; - $76 = ($73|0)<($75|0); - if (!($76)) { - break L4; - } - $77 = HEAP32[$v>>2]|0; - $78 = HEAP32[$iIdxCur>>2]|0; - $79 = HEAP32[$j>>2]|0; - $80 = HEAP32[$regBase>>2]|0; - $81 = HEAP32[$j>>2]|0; - $82 = (($80) + ($81))|0; - (_sqlite3VdbeAddOp3($77,46,$78,$79,$82)|0); - $83 = HEAP32[$j>>2]|0; - $84 = (($83) + 1)|0; - HEAP32[$j>>2] = $84; - } - } - } while(0); - $85 = HEAP16[$nSkip>>1]|0; - $86 = $85&65535; - HEAP32[$j>>2] = $86; - while(1) { - $87 = HEAP32[$j>>2]|0; - $88 = HEAP16[$nEq>>1]|0; - $89 = $88&65535; - $90 = ($87|0)<($89|0); - if (!($90)) { - break; - } - $91 = HEAP32[$j>>2]|0; - $92 = HEAP32[$pLoop>>2]|0; - $93 = (($92) + 44|0); - $94 = HEAP32[$93>>2]|0; - $95 = (($94) + ($91<<2)|0); - $96 = HEAP32[$95>>2]|0; - HEAP32[$pTerm>>2] = $96; - $97 = HEAP32[$0>>2]|0; - $98 = HEAP32[$pTerm>>2]|0; - $99 = HEAP32[$1>>2]|0; - $100 = HEAP32[$j>>2]|0; - $101 = HEAP32[$2>>2]|0; - $102 = HEAP32[$regBase>>2]|0; - $103 = HEAP32[$j>>2]|0; - $104 = (($102) + ($103))|0; - $105 = (_codeEqualityTerm($97,$98,$99,$100,$101,$104)|0); - HEAP32[$r1>>2] = $105; - $106 = HEAP32[$r1>>2]|0; - $107 = HEAP32[$regBase>>2]|0; - $108 = HEAP32[$j>>2]|0; - $109 = (($107) + ($108))|0; - $110 = ($106|0)!=($109|0); - do { - if ($110) { - $111 = HEAP32[$nReg>>2]|0; - $112 = ($111|0)==(1); - if ($112) { - $113 = HEAP32[$0>>2]|0; - $114 = HEAP32[$regBase>>2]|0; - _sqlite3ReleaseTempReg($113,$114); - $115 = HEAP32[$r1>>2]|0; - HEAP32[$regBase>>2] = $115; - break; - } else { - $116 = HEAP32[$v>>2]|0; - $117 = HEAP32[$r1>>2]|0; - $118 = HEAP32[$regBase>>2]|0; - $119 = HEAP32[$j>>2]|0; - $120 = (($118) + ($119))|0; - (_sqlite3VdbeAddOp2($116,34,$117,$120)|0); - break; - } - } - } while(0); - $121 = HEAP32[$pTerm>>2]|0; - $122 = (($121) + 18|0); - $123 = HEAP16[$122>>1]|0; - $124 = $123&65535; - $125 = $124 & 129; - $126 = ($125|0)==(0); - if ($126) { - $127 = HEAP32[$pTerm>>2]|0; - $128 = HEAP32[$127>>2]|0; - $129 = (($128) + 16|0); - $130 = HEAP32[$129>>2]|0; - HEAP32[$pRight>>2] = $130; - $131 = HEAP32[$pRight>>2]|0; - $132 = (_sqlite3ExprCanBeNull($131)|0); - $133 = ($132|0)!=(0); - if ($133) { - $134 = HEAP32[$v>>2]|0; - $135 = HEAP32[$regBase>>2]|0; - $136 = HEAP32[$j>>2]|0; - $137 = (($135) + ($136))|0; - $138 = HEAP32[$1>>2]|0; - $139 = (($138) + 12|0); - $140 = HEAP32[$139>>2]|0; - (_sqlite3VdbeAddOp2($134,76,$137,$140)|0); - } - $141 = HEAP32[$zAff>>2]|0; - $142 = ($141|0)!=(0|0); - if ($142) { - $143 = HEAP32[$pRight>>2]|0; - $144 = HEAP32[$j>>2]|0; - $145 = HEAP32[$zAff>>2]|0; - $146 = (($145) + ($144)|0); - $147 = HEAP8[$146>>0]|0; - $148 = (_sqlite3CompareAffinity($143,$147)|0); - $149 = $148 << 24 >> 24; - $150 = ($149|0)==(98); - if ($150) { - $151 = HEAP32[$j>>2]|0; - $152 = HEAP32[$zAff>>2]|0; - $153 = (($152) + ($151)|0); - HEAP8[$153>>0] = 98; - } - $154 = HEAP32[$pRight>>2]|0; - $155 = HEAP32[$j>>2]|0; - $156 = HEAP32[$zAff>>2]|0; - $157 = (($156) + ($155)|0); - $158 = HEAP8[$157>>0]|0; - $159 = (_sqlite3ExprNeedsNoAffinityChange($154,$158)|0); - $160 = ($159|0)!=(0); - if ($160) { - $161 = HEAP32[$j>>2]|0; - $162 = HEAP32[$zAff>>2]|0; - $163 = (($162) + ($161)|0); - HEAP8[$163>>0] = 98; - } - } - } - $164 = HEAP32[$j>>2]|0; - $165 = (($164) + 1)|0; - HEAP32[$j>>2] = $165; - } - $166 = HEAP32[$zAff>>2]|0; - $167 = HEAP32[$4>>2]|0; - HEAP32[$167>>2] = $166; - $168 = HEAP32[$regBase>>2]|0; - STACKTOP = sp;return ($168|0); -} -function _sqlite3ExprCanBeNull($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $op = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - $op = sp + 8|0; - HEAP32[$1>>2] = $p; - while(1) { - $2 = HEAP32[$1>>2]|0; - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - $5 = ($4|0)==(158); - if ($5) { - $23 = 1; - } else { - $6 = HEAP32[$1>>2]|0; - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = ($8|0)==(157); - $23 = $9; - } - $10 = HEAP32[$1>>2]|0; - if (!($23)) { - break; - } - $11 = (($10) + 12|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$1>>2] = $12; - } - $13 = HEAP8[$10>>0]|0; - HEAP8[$op>>0] = $13; - $14 = HEAP8[$op>>0]|0; - $15 = $14&255; - $16 = ($15|0)==(159); - if ($16) { - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 38|0); - $19 = HEAP8[$18>>0]|0; - HEAP8[$op>>0] = $19; - } - $20 = HEAP8[$op>>0]|0; - $21 = $20&255; - if ((($21|0) == 134) | (($21|0) == 133) | (($21|0) == 97) | (($21|0) == 132)) { - HEAP32[$0>>2] = 0; - $22 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($22|0); - } else { - HEAP32[$0>>2] = 1; - $22 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($22|0); - } - return 0|0; -} -function _sqlite3ExprNeedsNoAffinityChange($p,$aff) { - $p = $p|0; - $aff = $aff|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; - var $9 = 0, $op = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - $2 = sp + 9|0; - $op = sp + 8|0; - HEAP32[$1>>2] = $p; - HEAP8[$2>>0] = $aff; - $3 = HEAP8[$2>>0]|0; - $4 = $3 << 24 >> 24; - $5 = ($4|0)==(98); - L1: do { - if ($5) { - HEAP32[$0>>2] = 1; - } else { - while(1) { - $6 = HEAP32[$1>>2]|0; - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = ($8|0)==(158); - if ($9) { - $60 = 1; - } else { - $10 = HEAP32[$1>>2]|0; - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = ($12|0)==(157); - $60 = $13; - } - $14 = HEAP32[$1>>2]|0; - if (!($60)) { - break; - } - $15 = (($14) + 12|0); - $16 = HEAP32[$15>>2]|0; - HEAP32[$1>>2] = $16; - } - $17 = HEAP8[$14>>0]|0; - HEAP8[$op>>0] = $17; - $18 = HEAP8[$op>>0]|0; - $19 = $18&255; - $20 = ($19|0)==(159); - if ($20) { - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 38|0); - $23 = HEAP8[$22>>0]|0; - HEAP8[$op>>0] = $23; - } - $24 = HEAP8[$op>>0]|0; - $25 = $24&255; - switch ($25|0) { - case 133: { - $34 = HEAP8[$2>>0]|0; - $35 = $34 << 24 >> 24; - $36 = ($35|0)==(101); - if ($36) { - $41 = 1; - } else { - $37 = HEAP8[$2>>0]|0; - $38 = $37 << 24 >> 24; - $39 = ($38|0)==(99); - $41 = $39; - } - $40 = $41&1; - HEAP32[$0>>2] = $40; - break L1; - break; - } - case 154: { - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 32|0); - $48 = HEAP16[$47>>1]|0; - $49 = $48 << 16 >> 16; - $50 = ($49|0)<(0); - if ($50) { - $51 = HEAP8[$2>>0]|0; - $52 = $51 << 24 >> 24; - $53 = ($52|0)==(100); - if ($53) { - $58 = 1; - } else { - $54 = HEAP8[$2>>0]|0; - $55 = $54 << 24 >> 24; - $56 = ($55|0)==(99); - $58 = $56; - } - } else { - $58 = 0; - } - $57 = $58&1; - HEAP32[$0>>2] = $57; - break L1; - break; - } - case 134: { - HEAP32[$0>>2] = 1; - break L1; - break; - } - case 132: { - $26 = HEAP8[$2>>0]|0; - $27 = $26 << 24 >> 24; - $28 = ($27|0)==(100); - if ($28) { - $33 = 1; - } else { - $29 = HEAP8[$2>>0]|0; - $30 = $29 << 24 >> 24; - $31 = ($30|0)==(99); - $33 = $31; - } - $32 = $33&1; - HEAP32[$0>>2] = $32; - break L1; - break; - } - case 97: { - $42 = HEAP8[$2>>0]|0; - $43 = $42 << 24 >> 24; - $44 = ($43|0)==(97); - $45 = $44&1; - HEAP32[$0>>2] = $45; - break L1; - break; - } - default: { - HEAP32[$0>>2] = 0; - break L1; - } - } - } - } while(0); - $59 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($59|0); -} -function _codeApplyAffinity($pParse,$base,$n,$zAff) { - $pParse = $pParse|0; - $base = $base|0; - $n = $n|0; - $zAff = $zAff|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $v = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $base; - HEAP32[$2>>2] = $n; - HEAP32[$3>>2] = $zAff; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 8|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$v>>2] = $6; - $7 = HEAP32[$3>>2]|0; - $8 = ($7|0)==(0|0); - if ($8) { - STACKTOP = sp;return; - } - while(1) { - $9 = HEAP32[$2>>2]|0; - $10 = ($9|0)>(0); - if (!($10)) { - break; - } - $11 = HEAP32[$3>>2]|0; - $12 = HEAP8[$11>>0]|0; - $13 = $12 << 24 >> 24; - $14 = ($13|0)==(98); - if (!($14)) { - break; - } - $15 = HEAP32[$2>>2]|0; - $16 = (($15) + -1)|0; - HEAP32[$2>>2] = $16; - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 1)|0; - HEAP32[$1>>2] = $18; - $19 = HEAP32[$3>>2]|0; - $20 = (($19) + 1|0); - HEAP32[$3>>2] = $20; - } - while(1) { - $21 = HEAP32[$2>>2]|0; - $22 = ($21|0)>(1); - if ($22) { - $23 = HEAP32[$2>>2]|0; - $24 = (($23) - 1)|0; - $25 = HEAP32[$3>>2]|0; - $26 = (($25) + ($24)|0); - $27 = HEAP8[$26>>0]|0; - $28 = $27 << 24 >> 24; - $29 = ($28|0)==(98); - $42 = $29; - } else { - $42 = 0; - } - $30 = HEAP32[$2>>2]|0; - if (!($42)) { - break; - } - $31 = (($30) + -1)|0; - HEAP32[$2>>2] = $31; - } - $32 = ($30|0)>(0); - if (!($32)) { - STACKTOP = sp;return; - } - $33 = HEAP32[$v>>2]|0; - $34 = HEAP32[$1>>2]|0; - $35 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp2($33,47,$34,$35)|0); - $36 = HEAP32[$v>>2]|0; - $37 = HEAP32[$3>>2]|0; - $38 = HEAP32[$2>>2]|0; - _sqlite3VdbeChangeP4($36,-1,$37,$38); - $39 = HEAP32[$0>>2]|0; - $40 = HEAP32[$1>>2]|0; - $41 = HEAP32[$2>>2]|0; - _sqlite3ExprCacheAffinityChange($39,$40,$41); - STACKTOP = sp;return; -} -function _findTerm($pWC,$iCur,$iColumn,$0,$1,$op,$pIdx) { - $pWC = $pWC|0; - $iCur = $iCur|0; - $iColumn = $iColumn|0; - $0 = $0|0; - $1 = $1|0; - $op = $op|0; - $pIdx = $pIdx|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $7 = 0; - var $8 = 0, $9 = 0, $p = 0, $pResult = 0, $scan = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 160|0; - $2 = sp + 148|0; - $3 = sp + 144|0; - $4 = sp + 140|0; - $5 = sp + 136|0; - $6 = sp; - $7 = sp + 132|0; - $8 = sp + 128|0; - $pResult = sp + 124|0; - $p = sp + 120|0; - $scan = sp + 8|0; - HEAP32[$3>>2] = $pWC; - HEAP32[$4>>2] = $iCur; - HEAP32[$5>>2] = $iColumn; - $9 = $6; - $10 = $9; - HEAP32[$10>>2] = $0; - $11 = (($9) + 4)|0; - $12 = $11; - HEAP32[$12>>2] = $1; - HEAP32[$7>>2] = $op; - HEAP32[$8>>2] = $pIdx; - HEAP32[$pResult>>2] = 0; - $13 = HEAP32[$3>>2]|0; - $14 = HEAP32[$4>>2]|0; - $15 = HEAP32[$5>>2]|0; - $16 = HEAP32[$7>>2]|0; - $17 = HEAP32[$8>>2]|0; - $18 = (_whereScanInit($scan,$13,$14,$15,$16,$17)|0); - HEAP32[$p>>2] = $18; - while(1) { - $19 = HEAP32[$p>>2]|0; - $20 = ($19|0)!=(0|0); - if (!($20)) { - label = 10; - break; - } - $21 = HEAP32[$p>>2]|0; - $22 = (($21) + 32|0); - $23 = $22; - $24 = $23; - $25 = HEAP32[$24>>2]|0; - $26 = (($23) + 4)|0; - $27 = $26; - $28 = HEAP32[$27>>2]|0; - $29 = $6; - $30 = $29; - $31 = HEAP32[$30>>2]|0; - $32 = (($29) + 4)|0; - $33 = $32; - $34 = HEAP32[$33>>2]|0; - $35 = $25 & $31; - $36 = $28 & $34; - $37 = ($35|0)==(0); - $38 = ($36|0)==(0); - $39 = $37 & $38; - if ($39) { - $40 = HEAP32[$p>>2]|0; - $41 = (($40) + 32|0); - $42 = $41; - $43 = $42; - $44 = HEAP32[$43>>2]|0; - $45 = (($42) + 4)|0; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = ($44|0)==(0); - $49 = ($47|0)==(0); - $50 = $48 & $49; - if ($50) { - $51 = HEAP32[$p>>2]|0; - $52 = (($51) + 18|0); - $53 = HEAP16[$52>>1]|0; - $54 = $53&65535; - $55 = $54 & 2; - $56 = ($55|0)!=(0); - if ($56) { - label = 6; - break; - } - } - $58 = HEAP32[$pResult>>2]|0; - $59 = ($58|0)==(0|0); - if ($59) { - $60 = HEAP32[$p>>2]|0; - HEAP32[$pResult>>2] = $60; - } - } - $61 = (_whereScanNext($scan)|0); - HEAP32[$p>>2] = $61; - } - if ((label|0) == 6) { - $57 = HEAP32[$p>>2]|0; - HEAP32[$2>>2] = $57; - $63 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($63|0); - } - else if ((label|0) == 10) { - $62 = HEAP32[$pResult>>2]|0; - HEAP32[$2>>2] = $62; - $63 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($63|0); - } - return 0|0; -} -function _whereScanInit($pScan,$pWC,$iCur,$iColumn,$opMask,$pIdx) { - $pScan = $pScan|0; - $pWC = $pWC|0; - $iCur = $iCur|0; - $iColumn = $iColumn|0; - $opMask = $opMask|0; - $pIdx = $pIdx|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $j = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $5 = sp + 8|0; - $6 = sp + 4|0; - $j = sp; - HEAP32[$1>>2] = $pScan; - HEAP32[$2>>2] = $pWC; - HEAP32[$3>>2] = $iCur; - HEAP32[$4>>2] = $iColumn; - HEAP32[$5>>2] = $opMask; - HEAP32[$6>>2] = $pIdx; - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$1>>2]|0; - HEAP32[$8>>2] = $7; - $9 = HEAP32[$2>>2]|0; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 4|0); - HEAP32[$11>>2] = $9; - $12 = HEAP32[$6>>2]|0; - $13 = ($12|0)!=(0|0); - do { - if ($13) { - $14 = HEAP32[$4>>2]|0; - $15 = ($14|0)>=(0); - if ($15) { - $16 = HEAP32[$4>>2]|0; - $17 = HEAP32[$6>>2]|0; - $18 = (($17) + 12|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($19) + 4|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + (($16*24)|0)|0); - $23 = (($22) + 21|0); - $24 = HEAP8[$23>>0]|0; - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 12|0); - HEAP8[$26>>0] = $24; - HEAP32[$j>>2] = 0; - while(1) { - $27 = HEAP32[$j>>2]|0; - $28 = HEAP32[$6>>2]|0; - $29 = (($28) + 4|0); - $30 = HEAP32[$29>>2]|0; - $31 = (($30) + ($27<<1)|0); - $32 = HEAP16[$31>>1]|0; - $33 = $32 << 16 >> 16; - $34 = HEAP32[$4>>2]|0; - $35 = ($33|0)!=($34|0); - $36 = HEAP32[$j>>2]|0; - $37 = HEAP32[$6>>2]|0; - if (!($35)) { - label = 8; - break; - } - $38 = (($37) + 50|0); - $39 = HEAP16[$38>>1]|0; - $40 = $39&65535; - $41 = ($36|0)>=($40|0); - if ($41) { - break; - } - $42 = HEAP32[$j>>2]|0; - $43 = (($42) + 1)|0; - HEAP32[$j>>2] = $43; - } - if ((label|0) == 8) { - $44 = (($37) + 32|0); - $45 = HEAP32[$44>>2]|0; - $46 = (($45) + ($36<<2)|0); - $47 = HEAP32[$46>>2]|0; - $48 = HEAP32[$1>>2]|0; - $49 = (($48) + 8|0); - HEAP32[$49>>2] = $47; - break; - } - HEAP32[$0>>2] = 0; - $72 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($72|0); - } else { - label = 9; - } - } else { - label = 9; - } - } while(0); - if ((label|0) == 9) { - $50 = HEAP32[$1>>2]|0; - $51 = (($50) + 12|0); - HEAP8[$51>>0] = 0; - $52 = HEAP32[$1>>2]|0; - $53 = (($52) + 8|0); - HEAP32[$53>>2] = 0; - } - $54 = HEAP32[$5>>2]|0; - $55 = HEAP32[$1>>2]|0; - $56 = (($55) + 16|0); - HEAP32[$56>>2] = $54; - $57 = HEAP32[$1>>2]|0; - $58 = (($57) + 20|0); - HEAP32[$58>>2] = 0; - $59 = HEAP32[$3>>2]|0; - $60 = HEAP32[$1>>2]|0; - $61 = (($60) + 24|0); - HEAP32[$61>>2] = $59; - $62 = HEAP32[$4>>2]|0; - $63 = HEAP32[$1>>2]|0; - $64 = (($63) + 24|0); - $65 = (($64) + 4|0); - HEAP32[$65>>2] = $62; - $66 = HEAP32[$1>>2]|0; - $67 = (($66) + 13|0); - HEAP8[$67>>0] = 2; - $68 = HEAP32[$1>>2]|0; - $69 = (($68) + 14|0); - HEAP8[$69>>0] = 2; - $70 = HEAP32[$1>>2]|0; - $71 = (_whereScanNext($70)|0); - HEAP32[$0>>2] = $71; - $72 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($72|0); -} -function _whereScanNext($pScan) { - $pScan = $pScan|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; - var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iColumn = 0, $iCur = 0, $j = 0, $k = 0, $pColl = 0, $pParse = 0, $pTerm = 0, $pWC = 0, $pX = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $iCur = sp + 32|0; - $iColumn = sp + 28|0; - $pX = sp + 24|0; - $pWC = sp + 20|0; - $pTerm = sp + 16|0; - $k = sp + 12|0; - $j = sp + 8|0; - $pColl = sp + 4|0; - $pParse = sp; - HEAP32[$1>>2] = $pScan; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 20|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$k>>2] = $4; - L1: while(1) { - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 14|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 13|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = ($8|0)<=($12|0); - if (!($13)) { - label = 35; - break; - } - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 14|0); - $16 = HEAP8[$15>>0]|0; - $17 = $16&255; - $18 = (($17) - 2)|0; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 24|0); - $21 = (($20) + ($18<<2)|0); - $22 = HEAP32[$21>>2]|0; - HEAP32[$iCur>>2] = $22; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 14|0); - $25 = HEAP8[$24>>0]|0; - $26 = $25&255; - $27 = (($26) - 1)|0; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 24|0); - $30 = (($29) + ($27<<2)|0); - $31 = HEAP32[$30>>2]|0; - HEAP32[$iColumn>>2] = $31; - while(1) { - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 4|0); - $34 = HEAP32[$33>>2]|0; - HEAP32[$pWC>>2] = $34; - $35 = ($34|0)!=(0|0); - if (!($35)) { - break; - } - $36 = HEAP32[$pWC>>2]|0; - $37 = (($36) + 20|0); - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$k>>2]|0; - $40 = (($38) + (($39*48)|0)|0); - HEAP32[$pTerm>>2] = $40; - while(1) { - $41 = HEAP32[$k>>2]|0; - $42 = HEAP32[$pWC>>2]|0; - $43 = (($42) + 12|0); - $44 = HEAP32[$43>>2]|0; - $45 = ($41|0)<($44|0); - if (!($45)) { - break; - } - $46 = HEAP32[$pTerm>>2]|0; - $47 = (($46) + 8|0); - $48 = HEAP32[$47>>2]|0; - $49 = HEAP32[$iCur>>2]|0; - $50 = ($48|0)==($49|0); - do { - if ($50) { - $51 = HEAP32[$pTerm>>2]|0; - $52 = (($51) + 12|0); - $53 = HEAP32[$52>>2]|0; - $54 = HEAP32[$iColumn>>2]|0; - $55 = ($53|0)==($54|0); - if ($55) { - $56 = HEAP32[$1>>2]|0; - $57 = (($56) + 14|0); - $58 = HEAP8[$57>>0]|0; - $59 = $58&255; - $60 = ($59|0)<=(2); - if (!($60)) { - $61 = HEAP32[$pTerm>>2]|0; - $62 = HEAP32[$61>>2]|0; - $63 = (($62) + 4|0); - $64 = HEAP32[$63>>2]|0; - $65 = $64 & 1; - $66 = ($65|0)!=(0); - if ($66) { - break; - } - } - $67 = HEAP32[$pTerm>>2]|0; - $68 = (($67) + 18|0); - $69 = HEAP16[$68>>1]|0; - $70 = $69&65535; - $71 = $70 & 1024; - $72 = ($71|0)!=(0); - if ($72) { - $73 = HEAP32[$1>>2]|0; - $74 = (($73) + 13|0); - $75 = HEAP8[$74>>0]|0; - $76 = $75&255; - $77 = ($76|0)<(22); - if ($77) { - $78 = HEAP32[$pTerm>>2]|0; - $79 = HEAP32[$78>>2]|0; - $80 = (($79) + 16|0); - $81 = HEAP32[$80>>2]|0; - $82 = (_sqlite3ExprSkipCollate($81)|0); - HEAP32[$pX>>2] = $82; - HEAP32[$j>>2] = 0; - while(1) { - $83 = HEAP32[$j>>2]|0; - $84 = HEAP32[$1>>2]|0; - $85 = (($84) + 13|0); - $86 = HEAP8[$85>>0]|0; - $87 = $86&255; - $88 = ($83|0)<($87|0); - if (!($88)) { - break; - } - $89 = HEAP32[$j>>2]|0; - $90 = HEAP32[$1>>2]|0; - $91 = (($90) + 24|0); - $92 = (($91) + ($89<<2)|0); - $93 = HEAP32[$92>>2]|0; - $94 = HEAP32[$pX>>2]|0; - $95 = (($94) + 28|0); - $96 = HEAP32[$95>>2]|0; - $97 = ($93|0)==($96|0); - if ($97) { - $98 = HEAP32[$j>>2]|0; - $99 = (($98) + 1)|0; - $100 = HEAP32[$1>>2]|0; - $101 = (($100) + 24|0); - $102 = (($101) + ($99<<2)|0); - $103 = HEAP32[$102>>2]|0; - $104 = HEAP32[$pX>>2]|0; - $105 = (($104) + 32|0); - $106 = HEAP16[$105>>1]|0; - $107 = $106 << 16 >> 16; - $108 = ($103|0)==($107|0); - if ($108) { - break; - } - } - $109 = HEAP32[$j>>2]|0; - $110 = (($109) + 2)|0; - HEAP32[$j>>2] = $110; - } - $111 = HEAP32[$j>>2]|0; - $112 = HEAP32[$1>>2]|0; - $113 = (($112) + 13|0); - $114 = HEAP8[$113>>0]|0; - $115 = $114&255; - $116 = ($111|0)==($115|0); - if ($116) { - $117 = HEAP32[$pX>>2]|0; - $118 = (($117) + 28|0); - $119 = HEAP32[$118>>2]|0; - $120 = HEAP32[$j>>2]|0; - $121 = HEAP32[$1>>2]|0; - $122 = (($121) + 24|0); - $123 = (($122) + ($120<<2)|0); - HEAP32[$123>>2] = $119; - $124 = HEAP32[$pX>>2]|0; - $125 = (($124) + 32|0); - $126 = HEAP16[$125>>1]|0; - $127 = $126 << 16 >> 16; - $128 = HEAP32[$j>>2]|0; - $129 = (($128) + 1)|0; - $130 = HEAP32[$1>>2]|0; - $131 = (($130) + 24|0); - $132 = (($131) + ($129<<2)|0); - HEAP32[$132>>2] = $127; - $133 = HEAP32[$1>>2]|0; - $134 = (($133) + 13|0); - $135 = HEAP8[$134>>0]|0; - $136 = $135&255; - $137 = (($136) + 2)|0; - $138 = $137&255; - HEAP8[$134>>0] = $138; - } - } - } - $139 = HEAP32[$pTerm>>2]|0; - $140 = (($139) + 18|0); - $141 = HEAP16[$140>>1]|0; - $142 = $141&65535; - $143 = HEAP32[$1>>2]|0; - $144 = (($143) + 16|0); - $145 = HEAP32[$144>>2]|0; - $146 = $142 & $145; - $147 = ($146|0)!=(0); - if ($147) { - $148 = HEAP32[$1>>2]|0; - $149 = (($148) + 8|0); - $150 = HEAP32[$149>>2]|0; - $151 = ($150|0)!=(0|0); - if ($151) { - $152 = HEAP32[$pTerm>>2]|0; - $153 = (($152) + 18|0); - $154 = HEAP16[$153>>1]|0; - $155 = $154&65535; - $156 = $155 & 128; - $157 = ($156|0)==(0); - if ($157) { - $158 = HEAP32[$pWC>>2]|0; - $159 = HEAP32[$158>>2]|0; - $160 = HEAP32[$159>>2]|0; - HEAP32[$pParse>>2] = $160; - $161 = HEAP32[$pTerm>>2]|0; - $162 = HEAP32[$161>>2]|0; - HEAP32[$pX>>2] = $162; - $163 = HEAP32[$pX>>2]|0; - $164 = HEAP32[$1>>2]|0; - $165 = (($164) + 12|0); - $166 = HEAP8[$165>>0]|0; - $167 = (_sqlite3IndexAffinityOk($163,$166)|0); - $168 = ($167|0)!=(0); - if (!($168)) { - break; - } - $169 = HEAP32[$pParse>>2]|0; - $170 = HEAP32[$pX>>2]|0; - $171 = (($170) + 12|0); - $172 = HEAP32[$171>>2]|0; - $173 = HEAP32[$pX>>2]|0; - $174 = (($173) + 16|0); - $175 = HEAP32[$174>>2]|0; - $176 = (_sqlite3BinaryCompareCollSeq($169,$172,$175)|0); - HEAP32[$pColl>>2] = $176; - $177 = HEAP32[$pColl>>2]|0; - $178 = ($177|0)==(0|0); - if ($178) { - $179 = HEAP32[$pParse>>2]|0; - $180 = HEAP32[$179>>2]|0; - $181 = (($180) + 8|0); - $182 = HEAP32[$181>>2]|0; - HEAP32[$pColl>>2] = $182; - } - $183 = HEAP32[$pColl>>2]|0; - $184 = HEAP32[$183>>2]|0; - $185 = HEAP32[$1>>2]|0; - $186 = (($185) + 8|0); - $187 = HEAP32[$186>>2]|0; - $188 = (_sqlite3_stricmp($184,$187)|0); - $189 = ($188|0)!=(0); - if ($189) { - break; - } - } - } - $190 = HEAP32[$pTerm>>2]|0; - $191 = (($190) + 18|0); - $192 = HEAP16[$191>>1]|0; - $193 = $192&65535; - $194 = $193 & 2; - $195 = ($194|0)!=(0); - if (!($195)) { - label = 31; - break L1; - } - $196 = HEAP32[$pTerm>>2]|0; - $197 = HEAP32[$196>>2]|0; - $198 = (($197) + 16|0); - $199 = HEAP32[$198>>2]|0; - HEAP32[$pX>>2] = $199; - $200 = HEAP8[$199>>0]|0; - $201 = $200&255; - $202 = ($201|0)==(154); - if (!($202)) { - label = 31; - break L1; - } - $203 = HEAP32[$pX>>2]|0; - $204 = (($203) + 28|0); - $205 = HEAP32[$204>>2]|0; - $206 = HEAP32[$1>>2]|0; - $207 = (($206) + 24|0); - $208 = HEAP32[$207>>2]|0; - $209 = ($205|0)==($208|0); - if (!($209)) { - label = 31; - break L1; - } - $210 = HEAP32[$pX>>2]|0; - $211 = (($210) + 32|0); - $212 = HEAP16[$211>>1]|0; - $213 = $212 << 16 >> 16; - $214 = HEAP32[$1>>2]|0; - $215 = (($214) + 24|0); - $216 = (($215) + 4|0); - $217 = HEAP32[$216>>2]|0; - $218 = ($213|0)==($217|0); - if (!($218)) { - label = 31; - break L1; - } - } - } - } - } while(0); - $224 = HEAP32[$k>>2]|0; - $225 = (($224) + 1)|0; - HEAP32[$k>>2] = $225; - $226 = HEAP32[$pTerm>>2]|0; - $227 = (($226) + 48|0); - HEAP32[$pTerm>>2] = $227; - } - $228 = HEAP32[$1>>2]|0; - $229 = (($228) + 4|0); - $230 = HEAP32[$229>>2]|0; - $231 = (($230) + 4|0); - $232 = HEAP32[$231>>2]|0; - $233 = HEAP32[$1>>2]|0; - $234 = (($233) + 4|0); - HEAP32[$234>>2] = $232; - HEAP32[$k>>2] = 0; - } - $235 = HEAP32[$1>>2]|0; - $236 = HEAP32[$235>>2]|0; - $237 = HEAP32[$1>>2]|0; - $238 = (($237) + 4|0); - HEAP32[$238>>2] = $236; - HEAP32[$k>>2] = 0; - $239 = HEAP32[$1>>2]|0; - $240 = (($239) + 14|0); - $241 = HEAP8[$240>>0]|0; - $242 = $241&255; - $243 = (($242) + 2)|0; - $244 = $243&255; - HEAP8[$240>>0] = $244; - } - if ((label|0) == 31) { - $219 = HEAP32[$k>>2]|0; - $220 = (($219) + 1)|0; - $221 = HEAP32[$1>>2]|0; - $222 = (($221) + 20|0); - HEAP32[$222>>2] = $220; - $223 = HEAP32[$pTerm>>2]|0; - HEAP32[$0>>2] = $223; - $245 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($245|0); - } - else if ((label|0) == 35) { - HEAP32[$0>>2] = 0; - $245 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($245|0); - } - return 0|0; -} -function _explainIndexRange($db,$pLoop,$pTab) { - $db = $db|0; - $pLoop = $pLoop|0; - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; - var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; - var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aCol = 0, $aiColumn = 0, $i = 0, $j = 0, $nEq = 0, $nSkip = 0, $pIndex = 0, $txt = 0, $z = 0, $z1 = 0, $z2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 72|0; - $1 = sp + 68|0; - $2 = sp + 64|0; - $3 = sp + 60|0; - $pIndex = sp + 56|0; - $nEq = sp + 78|0; - $nSkip = sp + 76|0; - $i = sp + 52|0; - $j = sp + 48|0; - $aCol = sp + 44|0; - $aiColumn = sp + 40|0; - $txt = sp + 12|0; - $z = sp + 8|0; - $z1 = sp + 4|0; - $z2 = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pLoop; - HEAP32[$3>>2] = $pTab; - $4 = HEAP32[$2>>2]|0; - $5 = (($4) + 24|0); - $6 = (($5) + 4|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pIndex>>2] = $7; - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + 24|0); - $10 = HEAP16[$9>>1]|0; - HEAP16[$nEq>>1] = $10; - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 24|0); - $13 = (($12) + 2|0); - $14 = HEAP16[$13>>1]|0; - HEAP16[$nSkip>>1] = $14; - $15 = HEAP32[$3>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$aCol>>2] = $17; - $18 = HEAP32[$pIndex>>2]|0; - $19 = (($18) + 4|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$aiColumn>>2] = $20; - $21 = HEAP16[$nEq>>1]|0; - $22 = $21&65535; - $23 = ($22|0)==(0); - if ($23) { - $24 = HEAP32[$2>>2]|0; - $25 = (($24) + 36|0); - $26 = HEAP32[$25>>2]|0; - $27 = $26 & 48; - $28 = ($27|0)==(0); - if ($28) { - HEAP32[$0>>2] = 0; - $105 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($105|0); - } - } - _sqlite3StrAccumInit($txt,0,0,1000000000); - $29 = HEAP32[$1>>2]|0; - HEAP32[$txt>>2] = $29; - _sqlite3StrAccumAppend($txt,23784,2); - HEAP32[$i>>2] = 0; - while(1) { - $30 = HEAP32[$i>>2]|0; - $31 = HEAP16[$nEq>>1]|0; - $32 = $31&65535; - $33 = ($30|0)<($32|0); - $34 = HEAP32[$i>>2]|0; - if (!($33)) { - break; - } - $35 = HEAP32[$pIndex>>2]|0; - $36 = (($35) + 50|0); - $37 = HEAP16[$36>>1]|0; - $38 = $37&65535; - $39 = ($34|0)==($38|0); - if ($39) { - $48 = 9896; - } else { - $40 = HEAP32[$i>>2]|0; - $41 = HEAP32[$aiColumn>>2]|0; - $42 = (($41) + ($40<<1)|0); - $43 = HEAP16[$42>>1]|0; - $44 = $43 << 16 >> 16; - $45 = HEAP32[$aCol>>2]|0; - $46 = (($45) + (($44*24)|0)|0); - $47 = HEAP32[$46>>2]|0; - $48 = $47; - } - HEAP32[$z>>2] = $48; - $49 = HEAP32[$i>>2]|0; - $50 = HEAP16[$nSkip>>1]|0; - $51 = $50&65535; - $52 = ($49|0)>=($51|0); - $53 = HEAP32[$i>>2]|0; - if ($52) { - $54 = HEAP32[$z>>2]|0; - _explainAppendTerm($txt,$53,$54,23792); - } else { - $55 = ($53|0)!=(0); - if ($55) { - _sqlite3StrAccumAppend($txt,23800,5); - } - _sqlite3StrAccumAppend($txt,23808,4); - $56 = HEAP32[$z>>2]|0; - _sqlite3StrAccumAppendAll($txt,$56); - _sqlite3StrAccumAppend($txt,23816,1); - } - $57 = HEAP32[$i>>2]|0; - $58 = (($57) + 1)|0; - HEAP32[$i>>2] = $58; - } - HEAP32[$j>>2] = $34; - $59 = HEAP32[$2>>2]|0; - $60 = (($59) + 36|0); - $61 = HEAP32[$60>>2]|0; - $62 = $61 & 32; - $63 = ($62|0)!=(0); - if ($63) { - $64 = HEAP32[$j>>2]|0; - $65 = HEAP32[$pIndex>>2]|0; - $66 = (($65) + 50|0); - $67 = HEAP16[$66>>1]|0; - $68 = $67&65535; - $69 = ($64|0)==($68|0); - if ($69) { - $78 = 9896; - } else { - $70 = HEAP32[$j>>2]|0; - $71 = HEAP32[$aiColumn>>2]|0; - $72 = (($71) + ($70<<1)|0); - $73 = HEAP16[$72>>1]|0; - $74 = $73 << 16 >> 16; - $75 = HEAP32[$aCol>>2]|0; - $76 = (($75) + (($74*24)|0)|0); - $77 = HEAP32[$76>>2]|0; - $78 = $77; - } - HEAP32[$z1>>2] = $78; - $79 = HEAP32[$i>>2]|0; - $80 = (($79) + 1)|0; - HEAP32[$i>>2] = $80; - $81 = HEAP32[$z1>>2]|0; - _explainAppendTerm($txt,$79,$81,23824); - } - $82 = HEAP32[$2>>2]|0; - $83 = (($82) + 36|0); - $84 = HEAP32[$83>>2]|0; - $85 = $84 & 16; - $86 = ($85|0)!=(0); - if ($86) { - $87 = HEAP32[$j>>2]|0; - $88 = HEAP32[$pIndex>>2]|0; - $89 = (($88) + 50|0); - $90 = HEAP16[$89>>1]|0; - $91 = $90&65535; - $92 = ($87|0)==($91|0); - if ($92) { - $101 = 9896; - } else { - $93 = HEAP32[$j>>2]|0; - $94 = HEAP32[$aiColumn>>2]|0; - $95 = (($94) + ($93<<1)|0); - $96 = HEAP16[$95>>1]|0; - $97 = $96 << 16 >> 16; - $98 = HEAP32[$aCol>>2]|0; - $99 = (($98) + (($97*24)|0)|0); - $100 = HEAP32[$99>>2]|0; - $101 = $100; - } - HEAP32[$z2>>2] = $101; - $102 = HEAP32[$i>>2]|0; - $103 = HEAP32[$z2>>2]|0; - _explainAppendTerm($txt,$102,$103,23832); - } - _sqlite3StrAccumAppend($txt,23816,1); - $104 = (_sqlite3StrAccumFinish($txt)|0); - HEAP32[$0>>2] = $104; - $105 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($105|0); -} -function _explainAppendTerm($pStr,$iTerm,$zColumn,$zOp) { - $pStr = $pStr|0; - $iTerm = $iTerm|0; - $zColumn = $zColumn|0; - $zOp = $zOp|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$0>>2] = $pStr; - HEAP32[$1>>2] = $iTerm; - HEAP32[$2>>2] = $zColumn; - HEAP32[$3>>2] = $zOp; - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)!=(0); - if ($5) { - $6 = HEAP32[$0>>2]|0; - _sqlite3StrAccumAppend($6,23800,5); - } - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$2>>2]|0; - _sqlite3StrAccumAppendAll($7,$8); - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$3>>2]|0; - _sqlite3StrAccumAppend($9,$10,1); - $11 = HEAP32[$0>>2]|0; - _sqlite3StrAccumAppend($11,18920,1); - STACKTOP = sp;return; -} -function _termCanDriveIndex($pTerm,$pSrc,$0,$1) { - $pTerm = $pTerm|0; - $pSrc = $pSrc|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $7 = 0, $8 = 0; - var $9 = 0, $aff = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $5 = sp; - $aff = sp + 20|0; - HEAP32[$3>>2] = $pTerm; - HEAP32[$4>>2] = $pSrc; - $6 = $5; - $7 = $6; - HEAP32[$7>>2] = $0; - $8 = (($6) + 4)|0; - $9 = $8; - HEAP32[$9>>2] = $1; - $10 = HEAP32[$3>>2]|0; - $11 = (($10) + 8|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$4>>2]|0; - $14 = (($13) + 40|0); - $15 = HEAP32[$14>>2]|0; - $16 = ($12|0)!=($15|0); - if ($16) { - HEAP32[$2>>2] = 0; - $62 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($62|0); - } - $17 = HEAP32[$3>>2]|0; - $18 = (($17) + 18|0); - $19 = HEAP16[$18>>1]|0; - $20 = $19&65535; - $21 = $20 & 2; - $22 = ($21|0)==(0); - if ($22) { - HEAP32[$2>>2] = 0; - $62 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($62|0); - } - $23 = HEAP32[$3>>2]|0; - $24 = (($23) + 32|0); - $25 = $24; - $26 = $25; - $27 = HEAP32[$26>>2]|0; - $28 = (($25) + 4)|0; - $29 = $28; - $30 = HEAP32[$29>>2]|0; - $31 = $5; - $32 = $31; - $33 = HEAP32[$32>>2]|0; - $34 = (($31) + 4)|0; - $35 = $34; - $36 = HEAP32[$35>>2]|0; - $37 = $27 & $33; - $38 = $30 & $36; - $39 = ($37|0)!=(0); - $40 = ($38|0)!=(0); - $41 = $39 | $40; - if ($41) { - HEAP32[$2>>2] = 0; - $62 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($62|0); - } - $42 = HEAP32[$3>>2]|0; - $43 = (($42) + 12|0); - $44 = HEAP32[$43>>2]|0; - $45 = ($44|0)<(0); - if ($45) { - HEAP32[$2>>2] = 0; - $62 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($62|0); - } - $46 = HEAP32[$3>>2]|0; - $47 = (($46) + 12|0); - $48 = HEAP32[$47>>2]|0; - $49 = HEAP32[$4>>2]|0; - $50 = (($49) + 16|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + 4|0); - $53 = HEAP32[$52>>2]|0; - $54 = (($53) + (($48*24)|0)|0); - $55 = (($54) + 21|0); - $56 = HEAP8[$55>>0]|0; - HEAP8[$aff>>0] = $56; - $57 = HEAP32[$3>>2]|0; - $58 = HEAP32[$57>>2]|0; - $59 = HEAP8[$aff>>0]|0; - $60 = (_sqlite3IndexAffinityOk($58,$59)|0); - $61 = ($60|0)!=(0); - if ($61) { - HEAP32[$2>>2] = 1; - $62 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($62|0); - } else { - HEAP32[$2>>2] = 0; - $62 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($62|0); - } - return 0|0; -} -function _whereLoopResize($db,$p,$n) { - $db = $db|0; - $p = $p|0; - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $paNew = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $paNew = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $p; - HEAP32[$3>>2] = $n; - $4 = HEAP32[$2>>2]|0; - $5 = (($4) + 42|0); - $6 = HEAP16[$5>>1]|0; - $7 = $6&65535; - $8 = HEAP32[$3>>2]|0; - $9 = ($7|0)>=($8|0); - if ($9) { - HEAP32[$0>>2] = 0; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); - } - $10 = HEAP32[$3>>2]|0; - $11 = (($10) + 7)|0; - $12 = $11 & -8; - HEAP32[$3>>2] = $12; - $13 = HEAP32[$1>>2]|0; - $14 = HEAP32[$3>>2]|0; - $15 = $14<<2; - $16 = (_sqlite3DbMallocRaw($13,$15)|0); - HEAP32[$paNew>>2] = $16; - $17 = HEAP32[$paNew>>2]|0; - $18 = ($17|0)==(0|0); - if ($18) { - HEAP32[$0>>2] = 7; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); - } - $19 = HEAP32[$paNew>>2]|0; - $20 = HEAP32[$2>>2]|0; - $21 = (($20) + 44|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$2>>2]|0; - $24 = (($23) + 42|0); - $25 = HEAP16[$24>>1]|0; - $26 = $25&65535; - $27 = $26<<2; - _memcpy(($19|0),($22|0),($27|0))|0; - $28 = HEAP32[$2>>2]|0; - $29 = (($28) + 44|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$2>>2]|0; - $32 = (($31) + 52|0); - $33 = ($30|0)!=($32|0); - if ($33) { - $34 = HEAP32[$1>>2]|0; - $35 = HEAP32[$2>>2]|0; - $36 = (($35) + 44|0); - $37 = HEAP32[$36>>2]|0; - _sqlite3DbFree($34,$37); - } - $38 = HEAP32[$paNew>>2]|0; - $39 = HEAP32[$2>>2]|0; - $40 = (($39) + 44|0); - HEAP32[$40>>2] = $38; - $41 = HEAP32[$3>>2]|0; - $42 = $41&65535; - $43 = HEAP32[$2>>2]|0; - $44 = (($43) + 42|0); - HEAP16[$44>>1] = $42; - HEAP32[$0>>2] = 0; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); -} -function _sqlite3AllocateIndexObject($db,$nCol,$nExtra,$ppExtra) { - $db = $db|0; - $nCol = $nCol|0; - $nExtra = $nExtra|0; - $ppExtra = $ppExtra|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $8 = 0, $9 = 0, $nByte = 0, $p = 0; - var $pExtra = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 24|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $p = sp + 8|0; - $nByte = sp + 4|0; - $pExtra = sp; - HEAP32[$0>>2] = $db; - HEAP16[$1>>1] = $nCol; - HEAP32[$2>>2] = $nExtra; - HEAP32[$3>>2] = $ppExtra; - $4 = HEAP16[$1>>1]|0; - $5 = $4 << 16 >> 16; - $6 = $5<<2; - $7 = (($6) + 7)|0; - $8 = $7 & -8; - $9 = (56 + ($8))|0; - $10 = HEAP16[$1>>1]|0; - $11 = $10 << 16 >> 16; - $12 = (($11) + 1)|0; - $13 = $12<<1; - $14 = HEAP16[$1>>1]|0; - $15 = $14 << 16 >> 16; - $16 = $15<<1; - $17 = (($13) + ($16))|0; - $18 = HEAP16[$1>>1]|0; - $19 = $18 << 16 >> 16; - $20 = $19; - $21 = (($17) + ($20))|0; - $22 = (($21) + 7)|0; - $23 = $22 & -8; - $24 = (($9) + ($23))|0; - HEAP32[$nByte>>2] = $24; - $25 = HEAP32[$0>>2]|0; - $26 = HEAP32[$nByte>>2]|0; - $27 = HEAP32[$2>>2]|0; - $28 = (($26) + ($27))|0; - $29 = (_sqlite3DbMallocZero($25,$28)|0); - HEAP32[$p>>2] = $29; - $30 = HEAP32[$p>>2]|0; - $31 = ($30|0)!=(0|0); - if (!($31)) { - $77 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($77|0); - } - $32 = HEAP32[$p>>2]|0; - $33 = (($32) + 56|0); - HEAP32[$pExtra>>2] = $33; - $34 = HEAP32[$pExtra>>2]|0; - $35 = HEAP32[$p>>2]|0; - $36 = (($35) + 32|0); - HEAP32[$36>>2] = $34; - $37 = HEAP16[$1>>1]|0; - $38 = $37 << 16 >> 16; - $39 = $38<<2; - $40 = (($39) + 7)|0; - $41 = $40 & -8; - $42 = HEAP32[$pExtra>>2]|0; - $43 = (($42) + ($41)|0); - HEAP32[$pExtra>>2] = $43; - $44 = HEAP32[$pExtra>>2]|0; - $45 = HEAP32[$p>>2]|0; - $46 = (($45) + 8|0); - HEAP32[$46>>2] = $44; - $47 = HEAP16[$1>>1]|0; - $48 = $47 << 16 >> 16; - $49 = (($48) + 1)|0; - $50 = $49<<1; - $51 = HEAP32[$pExtra>>2]|0; - $52 = (($51) + ($50)|0); - HEAP32[$pExtra>>2] = $52; - $53 = HEAP32[$pExtra>>2]|0; - $54 = HEAP32[$p>>2]|0; - $55 = (($54) + 4|0); - HEAP32[$55>>2] = $53; - $56 = HEAP16[$1>>1]|0; - $57 = $56 << 16 >> 16; - $58 = $57<<1; - $59 = HEAP32[$pExtra>>2]|0; - $60 = (($59) + ($58)|0); - HEAP32[$pExtra>>2] = $60; - $61 = HEAP32[$pExtra>>2]|0; - $62 = HEAP32[$p>>2]|0; - $63 = (($62) + 28|0); - HEAP32[$63>>2] = $61; - $64 = HEAP16[$1>>1]|0; - $65 = HEAP32[$p>>2]|0; - $66 = (($65) + 52|0); - HEAP16[$66>>1] = $64; - $67 = HEAP16[$1>>1]|0; - $68 = $67 << 16 >> 16; - $69 = (($68) - 1)|0; - $70 = $69&65535; - $71 = HEAP32[$p>>2]|0; - $72 = (($71) + 50|0); - HEAP16[$72>>1] = $70; - $73 = HEAP32[$p>>2]|0; - $74 = HEAP32[$nByte>>2]|0; - $75 = (($73) + ($74)|0); - $76 = HEAP32[$3>>2]|0; - HEAP32[$76>>2] = $75; - $77 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($77|0); -} -function _exprTableUsage($pMaskSet,$p) { - $pMaskSet = $pMaskSet|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; - var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; - var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; - var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; - var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $mask = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 8|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $mask = sp; - HEAP32[$1>>2] = $pMaskSet; - HEAP32[$2>>2] = $p; - $3 = $mask; - $4 = $3; - HEAP32[$4>>2] = 0; - $5 = (($3) + 4)|0; - $6 = $5; - HEAP32[$6>>2] = 0; - $7 = HEAP32[$2>>2]|0; - $8 = ($7|0)==(0|0); - if ($8) { - $9 = $0; - $10 = $9; - HEAP32[$10>>2] = 0; - $11 = (($9) + 4)|0; - $12 = $11; - HEAP32[$12>>2] = 0; - $111 = $0; - $112 = $111; - $113 = HEAP32[$112>>2]|0; - $114 = (($111) + 4)|0; - $115 = $114; - $116 = HEAP32[$115>>2]|0; - tempRet0 = $116; - STACKTOP = sp;return ($113|0); - } - $13 = HEAP32[$2>>2]|0; - $14 = HEAP8[$13>>0]|0; - $15 = $14&255; - $16 = ($15|0)==(154); - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$2>>2]|0; - if ($16) { - $19 = (($18) + 28|0); - $20 = HEAP32[$19>>2]|0; - $21 = (_getMask($17,$20)|0); - $22 = tempRet0; - $23 = $mask; - $24 = $23; - HEAP32[$24>>2] = $21; - $25 = (($23) + 4)|0; - $26 = $25; - HEAP32[$26>>2] = $22; - $27 = $mask; - $28 = $27; - $29 = HEAP32[$28>>2]|0; - $30 = (($27) + 4)|0; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $33 = $0; - $34 = $33; - HEAP32[$34>>2] = $29; - $35 = (($33) + 4)|0; - $36 = $35; - HEAP32[$36>>2] = $32; - $111 = $0; - $112 = $111; - $113 = HEAP32[$112>>2]|0; - $114 = (($111) + 4)|0; - $115 = $114; - $116 = HEAP32[$115>>2]|0; - tempRet0 = $116; - STACKTOP = sp;return ($113|0); - } - $37 = (($18) + 16|0); - $38 = HEAP32[$37>>2]|0; - $39 = (_exprTableUsage($17,$38)|0); - $40 = tempRet0; - $41 = $mask; - $42 = $41; - HEAP32[$42>>2] = $39; - $43 = (($41) + 4)|0; - $44 = $43; - HEAP32[$44>>2] = $40; - $45 = HEAP32[$1>>2]|0; - $46 = HEAP32[$2>>2]|0; - $47 = (($46) + 12|0); - $48 = HEAP32[$47>>2]|0; - $49 = (_exprTableUsage($45,$48)|0); - $50 = tempRet0; - $51 = $mask; - $52 = $51; - $53 = HEAP32[$52>>2]|0; - $54 = (($51) + 4)|0; - $55 = $54; - $56 = HEAP32[$55>>2]|0; - $57 = $53 | $49; - $58 = $56 | $50; - $59 = $mask; - $60 = $59; - HEAP32[$60>>2] = $57; - $61 = (($59) + 4)|0; - $62 = $61; - HEAP32[$62>>2] = $58; - $63 = HEAP32[$2>>2]|0; - $64 = (($63) + 4|0); - $65 = HEAP32[$64>>2]|0; - $66 = $65 & 2048; - $67 = ($66|0)!=(0); - $68 = HEAP32[$1>>2]|0; - $69 = HEAP32[$2>>2]|0; - $70 = (($69) + 20|0); - if ($67) { - $71 = HEAP32[$70>>2]|0; - $72 = (_exprSelectTableUsage($68,$71)|0); - $73 = tempRet0; - $74 = $mask; - $75 = $74; - $76 = HEAP32[$75>>2]|0; - $77 = (($74) + 4)|0; - $78 = $77; - $79 = HEAP32[$78>>2]|0; - $80 = $76 | $72; - $81 = $79 | $73; - $82 = $mask; - $83 = $82; - HEAP32[$83>>2] = $80; - $84 = (($82) + 4)|0; - $85 = $84; - HEAP32[$85>>2] = $81; - } else { - $86 = HEAP32[$70>>2]|0; - $87 = (_exprListTableUsage($68,$86)|0); - $88 = tempRet0; - $89 = $mask; - $90 = $89; - $91 = HEAP32[$90>>2]|0; - $92 = (($89) + 4)|0; - $93 = $92; - $94 = HEAP32[$93>>2]|0; - $95 = $91 | $87; - $96 = $94 | $88; - $97 = $mask; - $98 = $97; - HEAP32[$98>>2] = $95; - $99 = (($97) + 4)|0; - $100 = $99; - HEAP32[$100>>2] = $96; - } - $101 = $mask; - $102 = $101; - $103 = HEAP32[$102>>2]|0; - $104 = (($101) + 4)|0; - $105 = $104; - $106 = HEAP32[$105>>2]|0; - $107 = $0; - $108 = $107; - HEAP32[$108>>2] = $103; - $109 = (($107) + 4)|0; - $110 = $109; - HEAP32[$110>>2] = $106; - $111 = $0; - $112 = $111; - $113 = HEAP32[$112>>2]|0; - $114 = (($111) + 4)|0; - $115 = $114; - $116 = HEAP32[$115>>2]|0; - tempRet0 = $116; - STACKTOP = sp;return ($113|0); -} -function _exprSelectTableUsage($pMaskSet,$pS) { - $pMaskSet = $pMaskSet|0; - $pS = $pS|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; - var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; - var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; - var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; - var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0; - var $mask = 0, $pSrc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $mask = sp; - $pSrc = sp + 12|0; - $i = sp + 8|0; - HEAP32[$0>>2] = $pMaskSet; - HEAP32[$1>>2] = $pS; - $2 = $mask; - $3 = $2; - HEAP32[$3>>2] = 0; - $4 = (($2) + 4)|0; - $5 = $4; - HEAP32[$5>>2] = 0; - while(1) { - $6 = HEAP32[$1>>2]|0; - $7 = ($6|0)!=(0|0); - if (!($7)) { - break; - } - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 32|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$pSrc>>2] = $10; - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$12>>2]|0; - $14 = (_exprListTableUsage($11,$13)|0); - $15 = tempRet0; - $16 = $mask; - $17 = $16; - $18 = HEAP32[$17>>2]|0; - $19 = (($16) + 4)|0; - $20 = $19; - $21 = HEAP32[$20>>2]|0; - $22 = $18 | $14; - $23 = $21 | $15; - $24 = $mask; - $25 = $24; - HEAP32[$25>>2] = $22; - $26 = (($24) + 4)|0; - $27 = $26; - HEAP32[$27>>2] = $23; - $28 = HEAP32[$0>>2]|0; - $29 = HEAP32[$1>>2]|0; - $30 = (($29) + 40|0); - $31 = HEAP32[$30>>2]|0; - $32 = (_exprListTableUsage($28,$31)|0); - $33 = tempRet0; - $34 = $mask; - $35 = $34; - $36 = HEAP32[$35>>2]|0; - $37 = (($34) + 4)|0; - $38 = $37; - $39 = HEAP32[$38>>2]|0; - $40 = $36 | $32; - $41 = $39 | $33; - $42 = $mask; - $43 = $42; - HEAP32[$43>>2] = $40; - $44 = (($42) + 4)|0; - $45 = $44; - HEAP32[$45>>2] = $41; - $46 = HEAP32[$0>>2]|0; - $47 = HEAP32[$1>>2]|0; - $48 = (($47) + 48|0); - $49 = HEAP32[$48>>2]|0; - $50 = (_exprListTableUsage($46,$49)|0); - $51 = tempRet0; - $52 = $mask; - $53 = $52; - $54 = HEAP32[$53>>2]|0; - $55 = (($52) + 4)|0; - $56 = $55; - $57 = HEAP32[$56>>2]|0; - $58 = $54 | $50; - $59 = $57 | $51; - $60 = $mask; - $61 = $60; - HEAP32[$61>>2] = $58; - $62 = (($60) + 4)|0; - $63 = $62; - HEAP32[$63>>2] = $59; - $64 = HEAP32[$0>>2]|0; - $65 = HEAP32[$1>>2]|0; - $66 = (($65) + 36|0); - $67 = HEAP32[$66>>2]|0; - $68 = (_exprTableUsage($64,$67)|0); - $69 = tempRet0; - $70 = $mask; - $71 = $70; - $72 = HEAP32[$71>>2]|0; - $73 = (($70) + 4)|0; - $74 = $73; - $75 = HEAP32[$74>>2]|0; - $76 = $72 | $68; - $77 = $75 | $69; - $78 = $mask; - $79 = $78; - HEAP32[$79>>2] = $76; - $80 = (($78) + 4)|0; - $81 = $80; - HEAP32[$81>>2] = $77; - $82 = HEAP32[$0>>2]|0; - $83 = HEAP32[$1>>2]|0; - $84 = (($83) + 44|0); - $85 = HEAP32[$84>>2]|0; - $86 = (_exprTableUsage($82,$85)|0); - $87 = tempRet0; - $88 = $mask; - $89 = $88; - $90 = HEAP32[$89>>2]|0; - $91 = (($88) + 4)|0; - $92 = $91; - $93 = HEAP32[$92>>2]|0; - $94 = $90 | $86; - $95 = $93 | $87; - $96 = $mask; - $97 = $96; - HEAP32[$97>>2] = $94; - $98 = (($96) + 4)|0; - $99 = $98; - HEAP32[$99>>2] = $95; - $100 = HEAP32[$pSrc>>2]|0; - $101 = ($100|0)!=(0|0); - L4: do { - if ($101) { - HEAP32[$i>>2] = 0; - while(1) { - $102 = HEAP32[$i>>2]|0; - $103 = HEAP32[$pSrc>>2]|0; - $104 = HEAP32[$103>>2]|0; - $105 = ($102|0)<($104|0); - if (!($105)) { - break L4; - } - $106 = HEAP32[$0>>2]|0; - $107 = HEAP32[$i>>2]|0; - $108 = HEAP32[$pSrc>>2]|0; - $109 = (($108) + 8|0); - $110 = (($109) + (($107*72)|0)|0); - $111 = (($110) + 20|0); - $112 = HEAP32[$111>>2]|0; - $113 = (_exprSelectTableUsage($106,$112)|0); - $114 = tempRet0; - $115 = $mask; - $116 = $115; - $117 = HEAP32[$116>>2]|0; - $118 = (($115) + 4)|0; - $119 = $118; - $120 = HEAP32[$119>>2]|0; - $121 = $117 | $113; - $122 = $120 | $114; - $123 = $mask; - $124 = $123; - HEAP32[$124>>2] = $121; - $125 = (($123) + 4)|0; - $126 = $125; - HEAP32[$126>>2] = $122; - $127 = HEAP32[$0>>2]|0; - $128 = HEAP32[$i>>2]|0; - $129 = HEAP32[$pSrc>>2]|0; - $130 = (($129) + 8|0); - $131 = (($130) + (($128*72)|0)|0); - $132 = (($131) + 44|0); - $133 = HEAP32[$132>>2]|0; - $134 = (_exprTableUsage($127,$133)|0); - $135 = tempRet0; - $136 = $mask; - $137 = $136; - $138 = HEAP32[$137>>2]|0; - $139 = (($136) + 4)|0; - $140 = $139; - $141 = HEAP32[$140>>2]|0; - $142 = $138 | $134; - $143 = $141 | $135; - $144 = $mask; - $145 = $144; - HEAP32[$145>>2] = $142; - $146 = (($144) + 4)|0; - $147 = $146; - HEAP32[$147>>2] = $143; - $148 = HEAP32[$i>>2]|0; - $149 = (($148) + 1)|0; - HEAP32[$i>>2] = $149; - } - } - } while(0); - $150 = HEAP32[$1>>2]|0; - $151 = (($150) + 52|0); - $152 = HEAP32[$151>>2]|0; - HEAP32[$1>>2] = $152; - } - $153 = $mask; - $154 = $153; - $155 = HEAP32[$154>>2]|0; - $156 = (($153) + 4)|0; - $157 = $156; - $158 = HEAP32[$157>>2]|0; - tempRet0 = $158; - STACKTOP = sp;return ($155|0); -} -function _sqlite3LogEstAdd($a,$b) { - $a = $a|0; - $b = $b|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; - var $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp + 2|0; - $2 = sp; - HEAP16[$1>>1] = $a; - HEAP16[$2>>1] = $b; - $3 = HEAP16[$1>>1]|0; - $4 = $3 << 16 >> 16; - $5 = HEAP16[$2>>1]|0; - $6 = $5 << 16 >> 16; - $7 = ($4|0)>=($6|0); - if ($7) { - $8 = HEAP16[$1>>1]|0; - $9 = $8 << 16 >> 16; - $10 = HEAP16[$2>>1]|0; - $11 = $10 << 16 >> 16; - $12 = (($11) + 49)|0; - $13 = ($9|0)>($12|0); - $14 = HEAP16[$1>>1]|0; - if ($13) { - HEAP16[$0>>1] = $14; - $60 = HEAP16[$0>>1]|0; - STACKTOP = sp;return ($60|0); - } - $15 = $14 << 16 >> 16; - $16 = HEAP16[$2>>1]|0; - $17 = $16 << 16 >> 16; - $18 = (($17) + 31)|0; - $19 = ($15|0)>($18|0); - $20 = HEAP16[$1>>1]|0; - $21 = $20 << 16 >> 16; - if ($19) { - $22 = (($21) + 1)|0; - $23 = $22&65535; - HEAP16[$0>>1] = $23; - $60 = HEAP16[$0>>1]|0; - STACKTOP = sp;return ($60|0); - } else { - $24 = HEAP16[$1>>1]|0; - $25 = $24 << 16 >> 16; - $26 = HEAP16[$2>>1]|0; - $27 = $26 << 16 >> 16; - $28 = (($25) - ($27))|0; - $29 = (23912 + ($28)|0); - $30 = HEAP8[$29>>0]|0; - $31 = $30&255; - $32 = (($21) + ($31))|0; - $33 = $32&65535; - HEAP16[$0>>1] = $33; - $60 = HEAP16[$0>>1]|0; - STACKTOP = sp;return ($60|0); - } - } else { - $34 = HEAP16[$2>>1]|0; - $35 = $34 << 16 >> 16; - $36 = HEAP16[$1>>1]|0; - $37 = $36 << 16 >> 16; - $38 = (($37) + 49)|0; - $39 = ($35|0)>($38|0); - $40 = HEAP16[$2>>1]|0; - if ($39) { - HEAP16[$0>>1] = $40; - $60 = HEAP16[$0>>1]|0; - STACKTOP = sp;return ($60|0); - } - $41 = $40 << 16 >> 16; - $42 = HEAP16[$1>>1]|0; - $43 = $42 << 16 >> 16; - $44 = (($43) + 31)|0; - $45 = ($41|0)>($44|0); - $46 = HEAP16[$2>>1]|0; - $47 = $46 << 16 >> 16; - if ($45) { - $48 = (($47) + 1)|0; - $49 = $48&65535; - HEAP16[$0>>1] = $49; - $60 = HEAP16[$0>>1]|0; - STACKTOP = sp;return ($60|0); - } else { - $50 = HEAP16[$2>>1]|0; - $51 = $50 << 16 >> 16; - $52 = HEAP16[$1>>1]|0; - $53 = $52 << 16 >> 16; - $54 = (($51) - ($53))|0; - $55 = (23912 + ($54)|0); - $56 = HEAP8[$55>>0]|0; - $57 = $56&255; - $58 = (($47) + ($57))|0; - $59 = $58&65535; - HEAP16[$0>>1] = $59; - $60 = HEAP16[$0>>1]|0; - STACKTOP = sp;return ($60|0); - } - } - return 0|0; -} -function _wherePathSatisfiesOrderBy($pWInfo,$pOrderBy,$pPath,$wctrlFlags,$nLoop,$pLast,$pRevMask) { - $pWInfo = $pWInfo|0; - $pOrderBy = $pOrderBy|0; - $pPath = $pPath|0; - $wctrlFlags = $wctrlFlags|0; - $nLoop = $nLoop|0; - $pLast = $pLast|0; - $pRevMask = $pRevMask|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; - var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; - var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; - var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; - var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; - var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; - var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; - var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; - var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; - var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; - var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; - var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; - var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; - var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; - var $98 = 0, $99 = 0, $bOnce = 0, $db = 0, $distinctColumns = 0, $i = 0, $iColumn = 0, $iCur = 0, $iLoop = 0, $isMatch = 0, $isOrderDistinct = 0, $j = 0, $m = 0, $mTerm = 0, $nColumn = 0, $nKeyCol = 0, $nOrderBy = 0, $obDone = 0, $obSat = 0, $orderDistinctMask = 0; - var $p = 0, $pColl = 0, $pIndex = 0, $pLoop = 0, $pOBExpr = 0, $pTerm = 0, $ready = 0, $rev = 0, $revIdx = 0, $revSet = 0, $z1 = 0, $z2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 144|0; - $0 = sp + 141|0; - $1 = sp + 120|0; - $2 = sp + 116|0; - $3 = sp + 112|0; - $4 = sp + 132|0; - $5 = sp + 130|0; - $6 = sp + 108|0; - $7 = sp + 104|0; - $revSet = sp + 140|0; - $rev = sp + 139|0; - $revIdx = sp + 138|0; - $isOrderDistinct = sp + 137|0; - $distinctColumns = sp + 136|0; - $isMatch = sp + 135|0; - $nKeyCol = sp + 128|0; - $nColumn = sp + 126|0; - $nOrderBy = sp + 124|0; - $iLoop = sp + 100|0; - $i = sp + 96|0; - $j = sp + 92|0; - $iCur = sp + 88|0; - $iColumn = sp + 84|0; - $pLoop = sp + 80|0; - $pTerm = sp + 76|0; - $pOBExpr = sp + 72|0; - $pColl = sp + 68|0; - $pIndex = sp + 64|0; - $db = sp + 60|0; - $obSat = sp + 40|0; - $obDone = sp + 32|0; - $orderDistinctMask = sp + 24|0; - $ready = sp + 16|0; - $z1 = sp + 56|0; - $z2 = sp + 52|0; - $bOnce = sp + 134|0; - $p = sp + 48|0; - $mTerm = sp + 8|0; - $m = sp; - HEAP32[$1>>2] = $pWInfo; - HEAP32[$2>>2] = $pOrderBy; - HEAP32[$3>>2] = $pPath; - HEAP16[$4>>1] = $wctrlFlags; - HEAP16[$5>>1] = $nLoop; - HEAP32[$6>>2] = $pLast; - HEAP32[$7>>2] = $pRevMask; - HEAP32[$pLoop>>2] = 0; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$9>>2]|0; - HEAP32[$db>>2] = $10; - $11 = $obSat; - $12 = $11; - HEAP32[$12>>2] = 0; - $13 = (($11) + 4)|0; - $14 = $13; - HEAP32[$14>>2] = 0; - $15 = HEAP16[$5>>1]|0; - $16 = $15&65535; - $17 = ($16|0)!=(0); - if ($17) { - $18 = HEAP32[$db>>2]|0; - $19 = (($18) + 60|0); - $20 = HEAP16[$19>>1]|0; - $21 = $20&65535; - $22 = $21 & 128; - $23 = ($22|0)!=(0); - if ($23) { - HEAP8[$0>>0] = 0; - $681 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($681|0); - } - } - $24 = HEAP32[$2>>2]|0; - $25 = HEAP32[$24>>2]|0; - $26 = $25&65535; - HEAP16[$nOrderBy>>1] = $26; - $27 = HEAP16[$nOrderBy>>1]|0; - $28 = $27&65535; - $29 = ($28|0)>(63); - if ($29) { - HEAP8[$0>>0] = 0; - $681 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($681|0); - } - HEAP8[$isOrderDistinct>>0] = 1; - $30 = HEAP16[$nOrderBy>>1]|0; - $31 = $30&65535; - $32 = (_bitshift64Shl(1,0,($31|0))|0); - $33 = tempRet0; - $34 = (_i64Subtract(($32|0),($33|0),1,0)|0); - $35 = tempRet0; - $36 = $obDone; - $37 = $36; - HEAP32[$37>>2] = $34; - $38 = (($36) + 4)|0; - $39 = $38; - HEAP32[$39>>2] = $35; - $40 = $orderDistinctMask; - $41 = $40; - HEAP32[$41>>2] = 0; - $42 = (($40) + 4)|0; - $43 = $42; - HEAP32[$43>>2] = 0; - $44 = $ready; - $45 = $44; - HEAP32[$45>>2] = 0; - $46 = (($44) + 4)|0; - $47 = $46; - HEAP32[$47>>2] = 0; - HEAP32[$iLoop>>2] = 0; - while(1) { - $48 = HEAP8[$isOrderDistinct>>0]|0; - $49 = $48&255; - $50 = ($49|0)!=(0); - if (!($50)) { - break; - } - $51 = $obSat; - $52 = $51; - $53 = HEAP32[$52>>2]|0; - $54 = (($51) + 4)|0; - $55 = $54; - $56 = HEAP32[$55>>2]|0; - $57 = $obDone; - $58 = $57; - $59 = HEAP32[$58>>2]|0; - $60 = (($57) + 4)|0; - $61 = $60; - $62 = HEAP32[$61>>2]|0; - $63 = ($56>>>0)<($62>>>0); - $64 = ($56|0)==($62|0); - $65 = ($53>>>0)<($59>>>0); - $66 = $64 & $65; - $67 = $63 | $66; - if (!($67)) { - break; - } - $68 = HEAP32[$iLoop>>2]|0; - $69 = HEAP16[$5>>1]|0; - $70 = $69&65535; - $71 = ($68|0)<=($70|0); - if (!($71)) { - break; - } - $72 = HEAP32[$iLoop>>2]|0; - $73 = ($72|0)>(0); - if ($73) { - $74 = HEAP32[$pLoop>>2]|0; - $75 = (($74) + 8|0); - $76 = $75; - $77 = $76; - $78 = HEAP32[$77>>2]|0; - $79 = (($76) + 4)|0; - $80 = $79; - $81 = HEAP32[$80>>2]|0; - $82 = $ready; - $83 = $82; - $84 = HEAP32[$83>>2]|0; - $85 = (($82) + 4)|0; - $86 = $85; - $87 = HEAP32[$86>>2]|0; - $88 = $84 | $78; - $89 = $87 | $81; - $90 = $ready; - $91 = $90; - HEAP32[$91>>2] = $88; - $92 = (($90) + 4)|0; - $93 = $92; - HEAP32[$93>>2] = $89; - } - $94 = HEAP32[$iLoop>>2]|0; - $95 = HEAP16[$5>>1]|0; - $96 = $95&65535; - $97 = ($94|0)<($96|0); - if ($97) { - $98 = HEAP32[$iLoop>>2]|0; - $99 = HEAP32[$3>>2]|0; - $100 = (($99) + 24|0); - $101 = HEAP32[$100>>2]|0; - $102 = (($101) + ($98<<2)|0); - $103 = HEAP32[$102>>2]|0; - $105 = $103; - } else { - $104 = HEAP32[$6>>2]|0; - $105 = $104; - } - HEAP32[$pLoop>>2] = $105; - $106 = HEAP32[$pLoop>>2]|0; - $107 = (($106) + 36|0); - $108 = HEAP32[$107>>2]|0; - $109 = $108 & 1024; - $110 = ($109|0)!=(0); - $111 = HEAP32[$pLoop>>2]|0; - if ($110) { - label = 16; - break; - } - $126 = (($111) + 16|0); - $127 = HEAP8[$126>>0]|0; - $128 = $127&255; - $129 = HEAP32[$1>>2]|0; - $130 = (($129) + 4|0); - $131 = HEAP32[$130>>2]|0; - $132 = (($131) + 8|0); - $133 = (($132) + (($128*72)|0)|0); - $134 = (($133) + 40|0); - $135 = HEAP32[$134>>2]|0; - HEAP32[$iCur>>2] = $135; - HEAP32[$i>>2] = 0; - while(1) { - $136 = HEAP32[$i>>2]|0; - $137 = HEAP16[$nOrderBy>>1]|0; - $138 = $137&65535; - $139 = ($136|0)<($138|0); - if (!($139)) { - break; - } - $140 = HEAP32[$i>>2]|0; - $141 = (_bitshift64Shl(1,0,($140|0))|0); - $142 = tempRet0; - $143 = $obSat; - $144 = $143; - $145 = HEAP32[$144>>2]|0; - $146 = (($143) + 4)|0; - $147 = $146; - $148 = HEAP32[$147>>2]|0; - $149 = $141 & $145; - $150 = $142 & $148; - $151 = ($149|0)!=(0); - $152 = ($150|0)!=(0); - $153 = $151 | $152; - do { - if (!($153)) { - $154 = HEAP32[$i>>2]|0; - $155 = HEAP32[$2>>2]|0; - $156 = (($155) + 4|0); - $157 = HEAP32[$156>>2]|0; - $158 = (($157) + (($154*20)|0)|0); - $159 = HEAP32[$158>>2]|0; - $160 = (_sqlite3ExprSkipCollate($159)|0); - HEAP32[$pOBExpr>>2] = $160; - $161 = HEAP32[$pOBExpr>>2]|0; - $162 = HEAP8[$161>>0]|0; - $163 = $162&255; - $164 = ($163|0)!=(154); - if (!($164)) { - $165 = HEAP32[$pOBExpr>>2]|0; - $166 = (($165) + 28|0); - $167 = HEAP32[$166>>2]|0; - $168 = HEAP32[$iCur>>2]|0; - $169 = ($167|0)!=($168|0); - if (!($169)) { - $170 = HEAP32[$1>>2]|0; - $171 = (($170) + 328|0); - $172 = HEAP32[$iCur>>2]|0; - $173 = HEAP32[$pOBExpr>>2]|0; - $174 = (($173) + 32|0); - $175 = HEAP16[$174>>1]|0; - $176 = $175 << 16 >> 16; - $177 = $ready; - $178 = $177; - $179 = HEAP32[$178>>2]|0; - $180 = (($177) + 4)|0; - $181 = $180; - $182 = HEAP32[$181>>2]|0; - $183 = $179 ^ -1; - $184 = $182 ^ -1; - $185 = (_findTerm($171,$172,$176,$183,$184,130,0)|0); - HEAP32[$pTerm>>2] = $185; - $186 = HEAP32[$pTerm>>2]|0; - $187 = ($186|0)==(0|0); - if (!($187)) { - $188 = HEAP32[$pTerm>>2]|0; - $189 = (($188) + 18|0); - $190 = HEAP16[$189>>1]|0; - $191 = $190&65535; - $192 = $191 & 2; - $193 = ($192|0)!=(0); - if ($193) { - $194 = HEAP32[$pOBExpr>>2]|0; - $195 = (($194) + 32|0); - $196 = HEAP16[$195>>1]|0; - $197 = $196 << 16 >> 16; - $198 = ($197|0)>=(0); - if ($198) { - $199 = HEAP32[$1>>2]|0; - $200 = HEAP32[$199>>2]|0; - $201 = HEAP32[$i>>2]|0; - $202 = HEAP32[$2>>2]|0; - $203 = (($202) + 4|0); - $204 = HEAP32[$203>>2]|0; - $205 = (($204) + (($201*20)|0)|0); - $206 = HEAP32[$205>>2]|0; - $207 = (_sqlite3ExprCollSeq($200,$206)|0); - HEAP32[$pColl>>2] = $207; - $208 = HEAP32[$pColl>>2]|0; - $209 = ($208|0)!=(0|0); - if (!($209)) { - $210 = HEAP32[$db>>2]|0; - $211 = (($210) + 8|0); - $212 = HEAP32[$211>>2]|0; - HEAP32[$pColl>>2] = $212; - } - $213 = HEAP32[$pColl>>2]|0; - $214 = HEAP32[$213>>2]|0; - HEAP32[$z1>>2] = $214; - $215 = HEAP32[$1>>2]|0; - $216 = HEAP32[$215>>2]|0; - $217 = HEAP32[$pTerm>>2]|0; - $218 = HEAP32[$217>>2]|0; - $219 = (_sqlite3ExprCollSeq($216,$218)|0); - HEAP32[$pColl>>2] = $219; - $220 = HEAP32[$pColl>>2]|0; - $221 = ($220|0)!=(0|0); - if (!($221)) { - $222 = HEAP32[$db>>2]|0; - $223 = (($222) + 8|0); - $224 = HEAP32[$223>>2]|0; - HEAP32[$pColl>>2] = $224; - } - $225 = HEAP32[$pColl>>2]|0; - $226 = HEAP32[$225>>2]|0; - HEAP32[$z2>>2] = $226; - $227 = HEAP32[$z1>>2]|0; - $228 = HEAP32[$z2>>2]|0; - $229 = (_sqlite3_stricmp($227,$228)|0); - $230 = ($229|0)!=(0); - if ($230) { - break; - } - } - } - $231 = HEAP32[$i>>2]|0; - $232 = (_bitshift64Shl(1,0,($231|0))|0); - $233 = tempRet0; - $234 = $obSat; - $235 = $234; - $236 = HEAP32[$235>>2]|0; - $237 = (($234) + 4)|0; - $238 = $237; - $239 = HEAP32[$238>>2]|0; - $240 = $236 | $232; - $241 = $239 | $233; - $242 = $obSat; - $243 = $242; - HEAP32[$243>>2] = $240; - $244 = (($242) + 4)|0; - $245 = $244; - HEAP32[$245>>2] = $241; - } - } - } - } - } while(0); - $246 = HEAP32[$i>>2]|0; - $247 = (($246) + 1)|0; - HEAP32[$i>>2] = $247; - } - $248 = HEAP32[$pLoop>>2]|0; - $249 = (($248) + 36|0); - $250 = HEAP32[$249>>2]|0; - $251 = $250 & 4096; - $252 = ($251|0)==(0); - if ($252) { - $253 = HEAP32[$pLoop>>2]|0; - $254 = (($253) + 36|0); - $255 = HEAP32[$254>>2]|0; - $256 = $255 & 256; - $257 = ($256|0)!=(0); - if ($257) { - HEAP32[$pIndex>>2] = 0; - HEAP16[$nKeyCol>>1] = 0; - HEAP16[$nColumn>>1] = 1; - } else { - $258 = HEAP32[$pLoop>>2]|0; - $259 = (($258) + 24|0); - $260 = (($259) + 4|0); - $261 = HEAP32[$260>>2]|0; - HEAP32[$pIndex>>2] = $261; - $262 = ($261|0)==(0|0); - if ($262) { - label = 38; - break; - } - $263 = HEAP32[$pIndex>>2]|0; - $264 = (($263) + 55|0); - $265 = HEAP8[$264>>0]|0; - $266 = ($265&255) >>> 2; - $267 = $266 & 1; - $268 = $267&255; - $269 = ($268|0)!=(0); - if ($269) { - label = 38; - break; - } - $270 = HEAP32[$pIndex>>2]|0; - $271 = (($270) + 50|0); - $272 = HEAP16[$271>>1]|0; - HEAP16[$nKeyCol>>1] = $272; - $273 = HEAP32[$pIndex>>2]|0; - $274 = (($273) + 52|0); - $275 = HEAP16[$274>>1]|0; - HEAP16[$nColumn>>1] = $275; - $276 = HEAP32[$pIndex>>2]|0; - $277 = (($276) + 54|0); - $278 = HEAP8[$277>>0]|0; - $279 = $278&255; - $280 = ($279|0)!=(0); - $281 = $280&1; - $282 = $281&255; - HEAP8[$isOrderDistinct>>0] = $282; - } - HEAP8[$revSet>>0] = 0; - HEAP8[$rev>>0] = 0; - HEAP8[$distinctColumns>>0] = 0; - HEAP32[$j>>2] = 0; - while(1) { - $283 = HEAP32[$j>>2]|0; - $284 = HEAP16[$nColumn>>1]|0; - $285 = $284&65535; - $286 = ($283|0)<($285|0); - if (!($286)) { - break; - } - $287 = HEAP32[$j>>2]|0; - $288 = HEAP32[$pLoop>>2]|0; - $289 = (($288) + 24|0); - $290 = HEAP16[$289>>1]|0; - $291 = $290&65535; - $292 = ($287|0)<($291|0); - if ($292) { - $293 = HEAP32[$pLoop>>2]|0; - $294 = (($293) + 24|0); - $295 = (($294) + 2|0); - $296 = HEAP16[$295>>1]|0; - $297 = $296&65535; - $298 = ($297|0)==(0); - if ($298) { - $299 = HEAP32[$j>>2]|0; - $300 = HEAP32[$pLoop>>2]|0; - $301 = (($300) + 44|0); - $302 = HEAP32[$301>>2]|0; - $303 = (($302) + ($299<<2)|0); - $304 = HEAP32[$303>>2]|0; - $305 = (($304) + 18|0); - $306 = HEAP16[$305>>1]|0; - $307 = $306&65535; - HEAP32[$i>>2] = $307; - $308 = $307 & 130; - $309 = ($308|0)!=(0); - if ($309) { - $310 = HEAP32[$i>>2]|0; - $311 = $310 & 128; - $312 = ($311|0)!=(0); - if ($312) { - HEAP8[$isOrderDistinct>>0] = 0; - } - } else { - label = 47; - } - } else { - label = 47; - } - } else { - label = 47; - } - if ((label|0) == 47) { - label = 0; - $313 = HEAP32[$pIndex>>2]|0; - $314 = ($313|0)!=(0|0); - if ($314) { - $315 = HEAP32[$j>>2]|0; - $316 = HEAP32[$pIndex>>2]|0; - $317 = (($316) + 4|0); - $318 = HEAP32[$317>>2]|0; - $319 = (($318) + ($315<<1)|0); - $320 = HEAP16[$319>>1]|0; - $321 = $320 << 16 >> 16; - HEAP32[$iColumn>>2] = $321; - $322 = HEAP32[$j>>2]|0; - $323 = HEAP32[$pIndex>>2]|0; - $324 = (($323) + 28|0); - $325 = HEAP32[$324>>2]|0; - $326 = (($325) + ($322)|0); - $327 = HEAP8[$326>>0]|0; - HEAP8[$revIdx>>0] = $327; - $328 = HEAP32[$iColumn>>2]|0; - $329 = HEAP32[$pIndex>>2]|0; - $330 = (($329) + 12|0); - $331 = HEAP32[$330>>2]|0; - $332 = (($331) + 36|0); - $333 = HEAP16[$332>>1]|0; - $334 = $333 << 16 >> 16; - $335 = ($328|0)==($334|0); - if ($335) { - HEAP32[$iColumn>>2] = -1; - } - } else { - HEAP32[$iColumn>>2] = -1; - HEAP8[$revIdx>>0] = 0; - } - $336 = HEAP8[$isOrderDistinct>>0]|0; - $337 = $336&255; - $338 = ($337|0)!=(0); - do { - if ($338) { - $339 = HEAP32[$iColumn>>2]|0; - $340 = ($339|0)>=(0); - if ($340) { - $341 = HEAP32[$j>>2]|0; - $342 = HEAP32[$pLoop>>2]|0; - $343 = (($342) + 24|0); - $344 = HEAP16[$343>>1]|0; - $345 = $344&65535; - $346 = ($341|0)>=($345|0); - if (!($346)) { - break; - } - $347 = HEAP32[$iColumn>>2]|0; - $348 = HEAP32[$pIndex>>2]|0; - $349 = (($348) + 12|0); - $350 = HEAP32[$349>>2]|0; - $351 = (($350) + 4|0); - $352 = HEAP32[$351>>2]|0; - $353 = (($352) + (($347*24)|0)|0); - $354 = (($353) + 20|0); - $355 = HEAP8[$354>>0]|0; - $356 = $355&255; - $357 = ($356|0)==(0); - if (!($357)) { - break; - } - HEAP8[$isOrderDistinct>>0] = 0; - } - } - } while(0); - HEAP8[$bOnce>>0] = 1; - HEAP8[$isMatch>>0] = 0; - HEAP32[$i>>2] = 0; - L72: while(1) { - $358 = HEAP8[$bOnce>>0]|0; - $359 = $358&255; - $360 = ($359|0)!=(0); - if (!($360)) { - break; - } - $361 = HEAP32[$i>>2]|0; - $362 = HEAP16[$nOrderBy>>1]|0; - $363 = $362&65535; - $364 = ($361|0)<($363|0); - if (!($364)) { - break; - } - $365 = HEAP32[$i>>2]|0; - $366 = (_bitshift64Shl(1,0,($365|0))|0); - $367 = tempRet0; - $368 = $obSat; - $369 = $368; - $370 = HEAP32[$369>>2]|0; - $371 = (($368) + 4)|0; - $372 = $371; - $373 = HEAP32[$372>>2]|0; - $374 = $366 & $370; - $375 = $367 & $373; - $376 = ($374|0)!=(0); - $377 = ($375|0)!=(0); - $378 = $376 | $377; - do { - if (!($378)) { - $379 = HEAP32[$i>>2]|0; - $380 = HEAP32[$2>>2]|0; - $381 = (($380) + 4|0); - $382 = HEAP32[$381>>2]|0; - $383 = (($382) + (($379*20)|0)|0); - $384 = HEAP32[$383>>2]|0; - $385 = (_sqlite3ExprSkipCollate($384)|0); - HEAP32[$pOBExpr>>2] = $385; - $386 = HEAP16[$4>>1]|0; - $387 = $386&65535; - $388 = $387 & 768; - $389 = ($388|0)==(0); - if ($389) { - HEAP8[$bOnce>>0] = 0; - } - $390 = HEAP32[$pOBExpr>>2]|0; - $391 = HEAP8[$390>>0]|0; - $392 = $391&255; - $393 = ($392|0)!=(154); - if ($393) { - break; - } - $394 = HEAP32[$pOBExpr>>2]|0; - $395 = (($394) + 28|0); - $396 = HEAP32[$395>>2]|0; - $397 = HEAP32[$iCur>>2]|0; - $398 = ($396|0)!=($397|0); - if ($398) { - break; - } - $399 = HEAP32[$pOBExpr>>2]|0; - $400 = (($399) + 32|0); - $401 = HEAP16[$400>>1]|0; - $402 = $401 << 16 >> 16; - $403 = HEAP32[$iColumn>>2]|0; - $404 = ($402|0)!=($403|0); - if ($404) { - break; - } - $405 = HEAP32[$iColumn>>2]|0; - $406 = ($405|0)>=(0); - if (!($406)) { - label = 69; - break L72; - } - $407 = HEAP32[$1>>2]|0; - $408 = HEAP32[$407>>2]|0; - $409 = HEAP32[$i>>2]|0; - $410 = HEAP32[$2>>2]|0; - $411 = (($410) + 4|0); - $412 = HEAP32[$411>>2]|0; - $413 = (($412) + (($409*20)|0)|0); - $414 = HEAP32[$413>>2]|0; - $415 = (_sqlite3ExprCollSeq($408,$414)|0); - HEAP32[$pColl>>2] = $415; - $416 = HEAP32[$pColl>>2]|0; - $417 = ($416|0)!=(0|0); - if (!($417)) { - $418 = HEAP32[$db>>2]|0; - $419 = (($418) + 8|0); - $420 = HEAP32[$419>>2]|0; - HEAP32[$pColl>>2] = $420; - } - $421 = HEAP32[$pColl>>2]|0; - $422 = HEAP32[$421>>2]|0; - $423 = HEAP32[$j>>2]|0; - $424 = HEAP32[$pIndex>>2]|0; - $425 = (($424) + 32|0); - $426 = HEAP32[$425>>2]|0; - $427 = (($426) + ($423<<2)|0); - $428 = HEAP32[$427>>2]|0; - $429 = (_sqlite3_stricmp($422,$428)|0); - $430 = ($429|0)!=(0); - if (!($430)) { - label = 69; - break L72; - } - } - } while(0); - $431 = HEAP32[$i>>2]|0; - $432 = (($431) + 1)|0; - HEAP32[$i>>2] = $432; - } - if ((label|0) == 69) { - label = 0; - HEAP8[$isMatch>>0] = 1; - } - $433 = HEAP8[$isMatch>>0]|0; - $434 = $433&255; - $435 = ($434|0)!=(0); - do { - if ($435) { - $436 = HEAP32[$1>>2]|0; - $437 = (($436) + 34|0); - $438 = HEAP16[$437>>1]|0; - $439 = $438&65535; - $440 = $439 & 256; - $441 = ($440|0)==(0); - if (!($441)) { - break; - } - $442 = HEAP8[$revSet>>0]|0; - $443 = ($442<<24>>24)!=(0); - if ($443) { - $444 = HEAP8[$rev>>0]|0; - $445 = $444&255; - $446 = HEAP8[$revIdx>>0]|0; - $447 = $446&255; - $448 = $445 ^ $447; - $449 = HEAP32[$i>>2]|0; - $450 = HEAP32[$2>>2]|0; - $451 = (($450) + 4|0); - $452 = HEAP32[$451>>2]|0; - $453 = (($452) + (($449*20)|0)|0); - $454 = (($453) + 12|0); - $455 = HEAP8[$454>>0]|0; - $456 = $455&255; - $457 = ($448|0)!=($456|0); - if (!($457)) { - break; - } - HEAP8[$isMatch>>0] = 0; - break; - } - $458 = HEAP8[$revIdx>>0]|0; - $459 = $458&255; - $460 = HEAP32[$i>>2]|0; - $461 = HEAP32[$2>>2]|0; - $462 = (($461) + 4|0); - $463 = HEAP32[$462>>2]|0; - $464 = (($463) + (($460*20)|0)|0); - $465 = (($464) + 12|0); - $466 = HEAP8[$465>>0]|0; - $467 = $466&255; - $468 = $459 ^ $467; - $469 = $468&255; - HEAP8[$rev>>0] = $469; - $470 = HEAP8[$rev>>0]|0; - $471 = ($470<<24>>24)!=(0); - if ($471) { - $472 = HEAP32[$iLoop>>2]|0; - $473 = (_bitshift64Shl(1,0,($472|0))|0); - $474 = tempRet0; - $475 = HEAP32[$7>>2]|0; - $476 = $475; - $477 = $476; - $478 = HEAP32[$477>>2]|0; - $479 = (($476) + 4)|0; - $480 = $479; - $481 = HEAP32[$480>>2]|0; - $482 = $478 | $473; - $483 = $481 | $474; - $484 = $475; - $485 = $484; - HEAP32[$485>>2] = $482; - $486 = (($484) + 4)|0; - $487 = $486; - HEAP32[$487>>2] = $483; - } - HEAP8[$revSet>>0] = 1; - } - } while(0); - $488 = HEAP8[$isMatch>>0]|0; - $489 = ($488<<24>>24)!=(0); - if (!($489)) { - label = 83; - break; - } - $490 = HEAP32[$iColumn>>2]|0; - $491 = ($490|0)<(0); - if ($491) { - HEAP8[$distinctColumns>>0] = 1; - } - $492 = HEAP32[$i>>2]|0; - $493 = (_bitshift64Shl(1,0,($492|0))|0); - $494 = tempRet0; - $495 = $obSat; - $496 = $495; - $497 = HEAP32[$496>>2]|0; - $498 = (($495) + 4)|0; - $499 = $498; - $500 = HEAP32[$499>>2]|0; - $501 = $497 | $493; - $502 = $500 | $494; - $503 = $obSat; - $504 = $503; - HEAP32[$504>>2] = $501; - $505 = (($503) + 4)|0; - $506 = $505; - HEAP32[$506>>2] = $502; - } - $513 = HEAP32[$j>>2]|0; - $514 = (($513) + 1)|0; - HEAP32[$j>>2] = $514; - } - do { - if ((label|0) == 83) { - label = 0; - $507 = HEAP32[$j>>2]|0; - $508 = ($507|0)==(0); - if (!($508)) { - $509 = HEAP32[$j>>2]|0; - $510 = HEAP16[$nKeyCol>>1]|0; - $511 = $510&65535; - $512 = ($509|0)<($511|0); - if (!($512)) { - break; - } - } - HEAP8[$isOrderDistinct>>0] = 0; - } - } while(0); - $515 = HEAP8[$distinctColumns>>0]|0; - $516 = ($515<<24>>24)!=(0); - if ($516) { - HEAP8[$isOrderDistinct>>0] = 1; - } - } - $517 = HEAP8[$isOrderDistinct>>0]|0; - $518 = ($517<<24>>24)!=(0); - L116: do { - if ($518) { - $519 = HEAP32[$pLoop>>2]|0; - $520 = (($519) + 8|0); - $521 = $520; - $522 = $521; - $523 = HEAP32[$522>>2]|0; - $524 = (($521) + 4)|0; - $525 = $524; - $526 = HEAP32[$525>>2]|0; - $527 = $orderDistinctMask; - $528 = $527; - $529 = HEAP32[$528>>2]|0; - $530 = (($527) + 4)|0; - $531 = $530; - $532 = HEAP32[$531>>2]|0; - $533 = $529 | $523; - $534 = $532 | $526; - $535 = $orderDistinctMask; - $536 = $535; - HEAP32[$536>>2] = $533; - $537 = (($535) + 4)|0; - $538 = $537; - HEAP32[$538>>2] = $534; - HEAP32[$i>>2] = 0; - while(1) { - $539 = HEAP32[$i>>2]|0; - $540 = HEAP16[$nOrderBy>>1]|0; - $541 = $540&65535; - $542 = ($539|0)<($541|0); - if (!($542)) { - break L116; - } - $543 = HEAP32[$i>>2]|0; - $544 = (_bitshift64Shl(1,0,($543|0))|0); - $545 = tempRet0; - $546 = $obSat; - $547 = $546; - $548 = HEAP32[$547>>2]|0; - $549 = (($546) + 4)|0; - $550 = $549; - $551 = HEAP32[$550>>2]|0; - $552 = $544 & $548; - $553 = $545 & $551; - $554 = ($552|0)!=(0); - $555 = ($553|0)!=(0); - $556 = $554 | $555; - do { - if (!($556)) { - $557 = HEAP32[$i>>2]|0; - $558 = HEAP32[$2>>2]|0; - $559 = (($558) + 4|0); - $560 = HEAP32[$559>>2]|0; - $561 = (($560) + (($557*20)|0)|0); - $562 = HEAP32[$561>>2]|0; - HEAP32[$p>>2] = $562; - $563 = HEAP32[$1>>2]|0; - $564 = (($563) + 68|0); - $565 = HEAP32[$p>>2]|0; - $566 = (_exprTableUsage($564,$565)|0); - $567 = tempRet0; - $568 = $mTerm; - $569 = $568; - HEAP32[$569>>2] = $566; - $570 = (($568) + 4)|0; - $571 = $570; - HEAP32[$571>>2] = $567; - $572 = $mTerm; - $573 = $572; - $574 = HEAP32[$573>>2]|0; - $575 = (($572) + 4)|0; - $576 = $575; - $577 = HEAP32[$576>>2]|0; - $578 = ($574|0)==(0); - $579 = ($577|0)==(0); - $580 = $578 & $579; - if ($580) { - $581 = HEAP32[$p>>2]|0; - $582 = (_sqlite3ExprIsConstant($581)|0); - $583 = ($582|0)!=(0); - if (!($583)) { - break; - } - } - $584 = $mTerm; - $585 = $584; - $586 = HEAP32[$585>>2]|0; - $587 = (($584) + 4)|0; - $588 = $587; - $589 = HEAP32[$588>>2]|0; - $590 = $orderDistinctMask; - $591 = $590; - $592 = HEAP32[$591>>2]|0; - $593 = (($590) + 4)|0; - $594 = $593; - $595 = HEAP32[$594>>2]|0; - $596 = $592 ^ -1; - $597 = $595 ^ -1; - $598 = $586 & $596; - $599 = $589 & $597; - $600 = ($598|0)==(0); - $601 = ($599|0)==(0); - $602 = $600 & $601; - if ($602) { - $603 = HEAP32[$i>>2]|0; - $604 = (_bitshift64Shl(1,0,($603|0))|0); - $605 = tempRet0; - $606 = $obSat; - $607 = $606; - $608 = HEAP32[$607>>2]|0; - $609 = (($606) + 4)|0; - $610 = $609; - $611 = HEAP32[$610>>2]|0; - $612 = $608 | $604; - $613 = $611 | $605; - $614 = $obSat; - $615 = $614; - HEAP32[$615>>2] = $612; - $616 = (($614) + 4)|0; - $617 = $616; - HEAP32[$617>>2] = $613; - } - } - } while(0); - $618 = HEAP32[$i>>2]|0; - $619 = (($618) + 1)|0; - HEAP32[$i>>2] = $619; - } - } - } while(0); - $620 = HEAP32[$iLoop>>2]|0; - $621 = (($620) + 1)|0; - HEAP32[$iLoop>>2] = $621; - } - if ((label|0) == 16) { - $112 = (($111) + 24|0); - $113 = (($112) + 5|0); - $114 = HEAP8[$113>>0]|0; - $115 = ($114<<24>>24)!=(0); - if ($115) { - $116 = $obDone; - $117 = $116; - $118 = HEAP32[$117>>2]|0; - $119 = (($116) + 4)|0; - $120 = $119; - $121 = HEAP32[$120>>2]|0; - $122 = $obSat; - $123 = $122; - HEAP32[$123>>2] = $118; - $124 = (($122) + 4)|0; - $125 = $124; - HEAP32[$125>>2] = $121; - } - } - else if ((label|0) == 38) { - HEAP8[$0>>0] = 0; - $681 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($681|0); - } - $622 = $obSat; - $623 = $622; - $624 = HEAP32[$623>>2]|0; - $625 = (($622) + 4)|0; - $626 = $625; - $627 = HEAP32[$626>>2]|0; - $628 = $obDone; - $629 = $628; - $630 = HEAP32[$629>>2]|0; - $631 = (($628) + 4)|0; - $632 = $631; - $633 = HEAP32[$632>>2]|0; - $634 = ($624|0)==($630|0); - $635 = ($627|0)==($633|0); - $636 = $634 & $635; - if ($636) { - $637 = HEAP16[$nOrderBy>>1]|0; - $638 = $637&255; - HEAP8[$0>>0] = $638; - $681 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($681|0); - } - $639 = HEAP8[$isOrderDistinct>>0]|0; - $640 = ($639<<24>>24)!=(0); - if ($640) { - HEAP8[$0>>0] = -1; - $681 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($681|0); - } - $641 = HEAP16[$nOrderBy>>1]|0; - $642 = $641&65535; - $643 = (($642) - 1)|0; - HEAP32[$i>>2] = $643; - while(1) { - $644 = HEAP32[$i>>2]|0; - $645 = ($644|0)>(0); - if (!($645)) { - label = 107; - break; - } - $646 = HEAP32[$i>>2]|0; - $647 = (_bitshift64Shl(1,0,($646|0))|0); - $648 = tempRet0; - $649 = (_i64Subtract(($647|0),($648|0),1,0)|0); - $650 = tempRet0; - $651 = $m; - $652 = $651; - HEAP32[$652>>2] = $649; - $653 = (($651) + 4)|0; - $654 = $653; - HEAP32[$654>>2] = $650; - $655 = $obSat; - $656 = $655; - $657 = HEAP32[$656>>2]|0; - $658 = (($655) + 4)|0; - $659 = $658; - $660 = HEAP32[$659>>2]|0; - $661 = $m; - $662 = $661; - $663 = HEAP32[$662>>2]|0; - $664 = (($661) + 4)|0; - $665 = $664; - $666 = HEAP32[$665>>2]|0; - $667 = $657 & $663; - $668 = $660 & $666; - $669 = $m; - $670 = $669; - $671 = HEAP32[$670>>2]|0; - $672 = (($669) + 4)|0; - $673 = $672; - $674 = HEAP32[$673>>2]|0; - $675 = ($667|0)==($671|0); - $676 = ($668|0)==($674|0); - $677 = $675 & $676; - $678 = HEAP32[$i>>2]|0; - if ($677) { - label = 105; - break; - } - $680 = (($678) + -1)|0; - HEAP32[$i>>2] = $680; - } - if ((label|0) == 105) { - $679 = $678&255; - HEAP8[$0>>0] = $679; - $681 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($681|0); - } - else if ((label|0) == 107) { - HEAP8[$0>>0] = 0; - $681 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($681|0); - } - return 0|0; -} -function _estLog($N) { - $N = $N|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $x = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 2|0; - $x = sp; - HEAP16[$0>>1] = $N; - $1 = HEAP16[$0>>1]|0; - $2 = $1 << 16 >> 16; - $3 = ($2|0)<(0); - $4 = $3 << 31 >> 31; - $5 = (_sqlite3LogEst($2,$4)|0); - HEAP16[$x>>1] = $5; - $6 = HEAP16[$x>>1]|0; - $7 = $6 << 16 >> 16; - $8 = ($7|0)>(33); - if (!($8)) { - $13 = 0; - $12 = $13&65535; - STACKTOP = sp;return ($12|0); - } - $9 = HEAP16[$x>>1]|0; - $10 = $9 << 16 >> 16; - $11 = (($10) - 33)|0; - $13 = $11; - $12 = $13&65535; - STACKTOP = sp;return ($12|0); -} -function _whereLoopAddVirtual($pBuilder,$0,$1) { - $pBuilder = $pBuilder|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; - var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; - var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; - var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; - var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; - var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0; - var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0; - var $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0; - var $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0; - var $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0; - var $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0; - var $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0; - var $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0; - var $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0.0, $367 = 0, $368 = 0, $369 = 0, $37 = 0; - var $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0; - var $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0; - var $406 = 0, $407 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0, $iPhase = 0, $iTerm = 0, $j = 0, $mxTerm = 0, $nConstraint = 0, $pIdxCons = 0, $pIdxInfo = 0, $pNew = 0, $pParse = 0, $pSrc = 0, $pTab = 0, $pTerm = 0; - var $pUsage = 0, $pWC = 0, $pWInfo = 0, $rc = 0, $seenIn = 0, $seenVar = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 112|0; - $vararg_buffer = sp + 8|0; - $2 = sp + 96|0; - $3 = sp + 92|0; - $4 = sp; - $pWInfo = sp + 88|0; - $pParse = sp + 84|0; - $pWC = sp + 80|0; - $pSrc = sp + 76|0; - $pTab = sp + 72|0; - $db = sp + 68|0; - $pIdxInfo = sp + 64|0; - $pIdxCons = sp + 60|0; - $pUsage = sp + 56|0; - $pTerm = sp + 52|0; - $i = sp + 48|0; - $j = sp + 44|0; - $iTerm = sp + 40|0; - $mxTerm = sp + 36|0; - $nConstraint = sp + 32|0; - $seenIn = sp + 28|0; - $seenVar = sp + 24|0; - $iPhase = sp + 20|0; - $pNew = sp + 16|0; - $rc = sp + 12|0; - HEAP32[$3>>2] = $pBuilder; - $5 = $4; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - HEAP32[$seenIn>>2] = 0; - HEAP32[$seenVar>>2] = 0; - HEAP32[$rc>>2] = 0; - $9 = HEAP32[$3>>2]|0; - $10 = HEAP32[$9>>2]|0; - HEAP32[$pWInfo>>2] = $10; - $11 = HEAP32[$pWInfo>>2]|0; - $12 = HEAP32[$11>>2]|0; - HEAP32[$pParse>>2] = $12; - $13 = HEAP32[$pParse>>2]|0; - $14 = HEAP32[$13>>2]|0; - HEAP32[$db>>2] = $14; - $15 = HEAP32[$3>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$pWC>>2] = $17; - $18 = HEAP32[$3>>2]|0; - $19 = (($18) + 12|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$pNew>>2] = $20; - $21 = HEAP32[$pNew>>2]|0; - $22 = (($21) + 16|0); - $23 = HEAP8[$22>>0]|0; - $24 = $23&255; - $25 = HEAP32[$pWInfo>>2]|0; - $26 = (($25) + 4|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + 8|0); - $29 = (($28) + (($24*72)|0)|0); - HEAP32[$pSrc>>2] = $29; - $30 = HEAP32[$pSrc>>2]|0; - $31 = (($30) + 16|0); - $32 = HEAP32[$31>>2]|0; - HEAP32[$pTab>>2] = $32; - $33 = HEAP32[$pParse>>2]|0; - $34 = HEAP32[$pWC>>2]|0; - $35 = HEAP32[$pSrc>>2]|0; - $36 = HEAP32[$3>>2]|0; - $37 = (($36) + 8|0); - $38 = HEAP32[$37>>2]|0; - $39 = (_allocateIndexInfo($33,$34,$35,$38)|0); - HEAP32[$pIdxInfo>>2] = $39; - $40 = HEAP32[$pIdxInfo>>2]|0; - $41 = ($40|0)==(0|0); - if ($41) { - HEAP32[$2>>2] = 7; - $407 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($407|0); - } - $42 = HEAP32[$pNew>>2]|0; - $43 = $42; - $44 = $43; - HEAP32[$44>>2] = 0; - $45 = (($43) + 4)|0; - $46 = $45; - HEAP32[$46>>2] = 0; - $47 = HEAP32[$pNew>>2]|0; - $48 = (($47) + 18|0); - HEAP16[$48>>1] = 0; - $49 = HEAP32[$pNew>>2]|0; - $50 = (($49) + 36|0); - HEAP32[$50>>2] = 1024; - $51 = HEAP32[$pNew>>2]|0; - $52 = (($51) + 40|0); - HEAP16[$52>>1] = 0; - $53 = HEAP32[$pNew>>2]|0; - $54 = (($53) + 24|0); - $55 = (($54) + 4|0); - HEAP8[$55>>0] = 0; - $56 = HEAP32[$pIdxInfo>>2]|0; - $57 = (($56) + 16|0); - $58 = HEAP32[$57>>2]|0; - HEAP32[$pUsage>>2] = $58; - $59 = HEAP32[$pIdxInfo>>2]|0; - $60 = HEAP32[$59>>2]|0; - HEAP32[$nConstraint>>2] = $60; - $61 = HEAP32[$db>>2]|0; - $62 = HEAP32[$pNew>>2]|0; - $63 = HEAP32[$nConstraint>>2]|0; - $64 = (_whereLoopResize($61,$62,$63)|0); - $65 = ($64|0)!=(0); - if ($65) { - $66 = HEAP32[$db>>2]|0; - $67 = HEAP32[$pIdxInfo>>2]|0; - _sqlite3DbFree($66,$67); - HEAP32[$2>>2] = 7; - $407 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($407|0); - } - HEAP32[$iPhase>>2] = 0; - L9: while(1) { - $68 = HEAP32[$iPhase>>2]|0; - $69 = ($68|0)<=(3); - if (!($69)) { - break; - } - $70 = HEAP32[$seenIn>>2]|0; - $71 = ($70|0)!=(0); - if (!($71)) { - $72 = HEAP32[$iPhase>>2]|0; - $73 = $72 & 1; - $74 = ($73|0)!=(0); - if ($74) { - $75 = HEAP32[$iPhase>>2]|0; - $76 = (($75) + 1)|0; - HEAP32[$iPhase>>2] = $76; - $77 = HEAP32[$iPhase>>2]|0; - $78 = ($77|0)>(3); - if ($78) { - break; - } - } - } - $79 = HEAP32[$seenVar>>2]|0; - $80 = ($79|0)!=(0); - if (!($80)) { - $81 = HEAP32[$iPhase>>2]|0; - $82 = ($81|0)>(1); - if ($82) { - break; - } - } - $83 = HEAP32[$pIdxInfo>>2]|0; - $84 = (($83) + 4|0); - $85 = HEAP32[$84>>2]|0; - HEAP32[$pIdxCons>>2] = $85; - HEAP32[$i>>2] = 0; - while(1) { - $86 = HEAP32[$i>>2]|0; - $87 = HEAP32[$pIdxInfo>>2]|0; - $88 = HEAP32[$87>>2]|0; - $89 = ($86|0)<($88|0); - if (!($89)) { - break; - } - $90 = HEAP32[$pIdxCons>>2]|0; - $91 = (($90) + 8|0); - $92 = HEAP32[$91>>2]|0; - HEAP32[$j>>2] = $92; - $93 = HEAP32[$j>>2]|0; - $94 = HEAP32[$pWC>>2]|0; - $95 = (($94) + 20|0); - $96 = HEAP32[$95>>2]|0; - $97 = (($96) + (($93*48)|0)|0); - HEAP32[$pTerm>>2] = $97; - $98 = HEAP32[$iPhase>>2]|0; - do { - if ((($98|0) == 1)) { - $126 = HEAP32[$pTerm>>2]|0; - $127 = (($126) + 32|0); - $128 = $127; - $129 = $128; - $130 = HEAP32[$129>>2]|0; - $131 = (($128) + 4)|0; - $132 = $131; - $133 = HEAP32[$132>>2]|0; - $134 = ($130|0)==(0); - $135 = ($133|0)==(0); - $136 = $134 & $135; - $137 = $136&1; - $138 = $137&255; - $139 = HEAP32[$pIdxCons>>2]|0; - $140 = (($139) + 5|0); - HEAP8[$140>>0] = $138; - } else if ((($98|0) == 2)) { - $141 = HEAP32[$pTerm>>2]|0; - $142 = (($141) + 18|0); - $143 = HEAP16[$142>>1]|0; - $144 = $143&65535; - $145 = $144 & 1; - $146 = ($145|0)==(0); - $147 = $146&1; - $148 = $147&255; - $149 = HEAP32[$pIdxCons>>2]|0; - $150 = (($149) + 5|0); - HEAP8[$150>>0] = $148; - } else if ((($98|0) == 0)) { - $99 = HEAP32[$pIdxCons>>2]|0; - $100 = (($99) + 5|0); - HEAP8[$100>>0] = 0; - $101 = HEAP32[$pTerm>>2]|0; - $102 = (($101) + 18|0); - $103 = HEAP16[$102>>1]|0; - $104 = $103&65535; - $105 = $104 & 1; - $106 = ($105|0)!=(0); - if ($106) { - HEAP32[$seenIn>>2] = 1; - } - $107 = HEAP32[$pTerm>>2]|0; - $108 = (($107) + 32|0); - $109 = $108; - $110 = $109; - $111 = HEAP32[$110>>2]|0; - $112 = (($109) + 4)|0; - $113 = $112; - $114 = HEAP32[$113>>2]|0; - $115 = ($111|0)!=(0); - $116 = ($114|0)!=(0); - $117 = $115 | $116; - if ($117) { - HEAP32[$seenVar>>2] = 1; - break; - } - $118 = HEAP32[$pTerm>>2]|0; - $119 = (($118) + 18|0); - $120 = HEAP16[$119>>1]|0; - $121 = $120&65535; - $122 = $121 & 1; - $123 = ($122|0)==(0); - if ($123) { - $124 = HEAP32[$pIdxCons>>2]|0; - $125 = (($124) + 5|0); - HEAP8[$125>>0] = 1; - } - } else { - $151 = HEAP32[$pIdxCons>>2]|0; - $152 = (($151) + 5|0); - HEAP8[$152>>0] = 1; - } - } while(0); - $153 = HEAP32[$i>>2]|0; - $154 = (($153) + 1)|0; - HEAP32[$i>>2] = $154; - $155 = HEAP32[$pIdxCons>>2]|0; - $156 = (($155) + 12|0); - HEAP32[$pIdxCons>>2] = $156; - } - $157 = HEAP32[$pUsage>>2]|0; - $158 = HEAP32[$pIdxInfo>>2]|0; - $159 = HEAP32[$158>>2]|0; - $160 = $159<<3; - _memset(($157|0),0,($160|0))|0; - $161 = HEAP32[$pIdxInfo>>2]|0; - $162 = (($161) + 28|0); - $163 = HEAP32[$162>>2]|0; - $164 = ($163|0)!=(0); - if ($164) { - $165 = HEAP32[$pIdxInfo>>2]|0; - $166 = (($165) + 24|0); - $167 = HEAP32[$166>>2]|0; - _sqlite3_free($167); - } - $168 = HEAP32[$pIdxInfo>>2]|0; - $169 = (($168) + 24|0); - HEAP32[$169>>2] = 0; - $170 = HEAP32[$pIdxInfo>>2]|0; - $171 = (($170) + 20|0); - HEAP32[$171>>2] = 0; - $172 = HEAP32[$pIdxInfo>>2]|0; - $173 = (($172) + 28|0); - HEAP32[$173>>2] = 0; - $174 = HEAP32[$pIdxInfo>>2]|0; - $175 = (($174) + 32|0); - HEAP32[$175>>2] = 0; - $176 = HEAP32[$pIdxInfo>>2]|0; - $177 = (($176) + 40|0); - HEAPF64[$177>>3] = 4.99999999999999983668E+98; - $178 = HEAP32[$pIdxInfo>>2]|0; - $179 = (($178) + 48|0); - $180 = $179; - $181 = $180; - HEAP32[$181>>2] = 25; - $182 = (($180) + 4)|0; - $183 = $182; - HEAP32[$183>>2] = 0; - $184 = HEAP32[$pParse>>2]|0; - $185 = HEAP32[$pTab>>2]|0; - $186 = HEAP32[$pIdxInfo>>2]|0; - $187 = (_vtabBestIndex($184,$185,$186)|0); - HEAP32[$rc>>2] = $187; - $188 = HEAP32[$rc>>2]|0; - $189 = ($188|0)!=(0); - if ($189) { - break; - } - $190 = HEAP32[$pIdxInfo>>2]|0; - $191 = (($190) + 4|0); - $192 = HEAP32[$191>>2]|0; - HEAP32[$pIdxCons>>2] = $192; - $193 = $4; - $194 = $193; - $195 = HEAP32[$194>>2]|0; - $196 = (($193) + 4)|0; - $197 = $196; - $198 = HEAP32[$197>>2]|0; - $199 = HEAP32[$pNew>>2]|0; - $200 = $199; - $201 = $200; - HEAP32[$201>>2] = $195; - $202 = (($200) + 4)|0; - $203 = $202; - HEAP32[$203>>2] = $198; - HEAP32[$mxTerm>>2] = -1; - HEAP32[$i>>2] = 0; - while(1) { - $204 = HEAP32[$i>>2]|0; - $205 = HEAP32[$nConstraint>>2]|0; - $206 = ($204|0)<($205|0); - if (!($206)) { - break; - } - $207 = HEAP32[$i>>2]|0; - $208 = HEAP32[$pNew>>2]|0; - $209 = (($208) + 44|0); - $210 = HEAP32[$209>>2]|0; - $211 = (($210) + ($207<<2)|0); - HEAP32[$211>>2] = 0; - $212 = HEAP32[$i>>2]|0; - $213 = (($212) + 1)|0; - HEAP32[$i>>2] = $213; - } - $214 = HEAP32[$pNew>>2]|0; - $215 = (($214) + 24|0); - $216 = (($215) + 6|0); - HEAP16[$216>>1] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $217 = HEAP32[$i>>2]|0; - $218 = HEAP32[$nConstraint>>2]|0; - $219 = ($217|0)<($218|0); - if (!($219)) { - break; - } - $220 = HEAP32[$i>>2]|0; - $221 = HEAP32[$pUsage>>2]|0; - $222 = (($221) + ($220<<3)|0); - $223 = HEAP32[$222>>2]|0; - $224 = (($223) - 1)|0; - HEAP32[$iTerm>>2] = $224; - $225 = ($224|0)>=(0); - if ($225) { - $226 = HEAP32[$pIdxCons>>2]|0; - $227 = (($226) + 8|0); - $228 = HEAP32[$227>>2]|0; - HEAP32[$j>>2] = $228; - $229 = HEAP32[$iTerm>>2]|0; - $230 = HEAP32[$nConstraint>>2]|0; - $231 = ($229|0)>=($230|0); - if ($231) { - label = 38; - break L9; - } - $232 = HEAP32[$j>>2]|0; - $233 = ($232|0)<(0); - if ($233) { - label = 38; - break L9; - } - $234 = HEAP32[$j>>2]|0; - $235 = HEAP32[$pWC>>2]|0; - $236 = (($235) + 12|0); - $237 = HEAP32[$236>>2]|0; - $238 = ($234|0)>=($237|0); - if ($238) { - label = 38; - break L9; - } - $239 = HEAP32[$iTerm>>2]|0; - $240 = HEAP32[$pNew>>2]|0; - $241 = (($240) + 44|0); - $242 = HEAP32[$241>>2]|0; - $243 = (($242) + ($239<<2)|0); - $244 = HEAP32[$243>>2]|0; - $245 = ($244|0)!=(0|0); - if ($245) { - label = 38; - break L9; - } - $249 = HEAP32[$j>>2]|0; - $250 = HEAP32[$pWC>>2]|0; - $251 = (($250) + 20|0); - $252 = HEAP32[$251>>2]|0; - $253 = (($252) + (($249*48)|0)|0); - HEAP32[$pTerm>>2] = $253; - $254 = HEAP32[$pTerm>>2]|0; - $255 = (($254) + 32|0); - $256 = $255; - $257 = $256; - $258 = HEAP32[$257>>2]|0; - $259 = (($256) + 4)|0; - $260 = $259; - $261 = HEAP32[$260>>2]|0; - $262 = HEAP32[$pNew>>2]|0; - $263 = $262; - $264 = $263; - $265 = HEAP32[$264>>2]|0; - $266 = (($263) + 4)|0; - $267 = $266; - $268 = HEAP32[$267>>2]|0; - $269 = $265 | $258; - $270 = $268 | $261; - $271 = $262; - $272 = $271; - HEAP32[$272>>2] = $269; - $273 = (($271) + 4)|0; - $274 = $273; - HEAP32[$274>>2] = $270; - $275 = HEAP32[$pTerm>>2]|0; - $276 = HEAP32[$iTerm>>2]|0; - $277 = HEAP32[$pNew>>2]|0; - $278 = (($277) + 44|0); - $279 = HEAP32[$278>>2]|0; - $280 = (($279) + ($276<<2)|0); - HEAP32[$280>>2] = $275; - $281 = HEAP32[$iTerm>>2]|0; - $282 = HEAP32[$mxTerm>>2]|0; - $283 = ($281|0)>($282|0); - if ($283) { - $284 = HEAP32[$iTerm>>2]|0; - HEAP32[$mxTerm>>2] = $284; - } - $285 = HEAP32[$iTerm>>2]|0; - $286 = ($285|0)<(16); - if ($286) { - $287 = HEAP32[$i>>2]|0; - $288 = HEAP32[$pUsage>>2]|0; - $289 = (($288) + ($287<<3)|0); - $290 = (($289) + 4|0); - $291 = HEAP8[$290>>0]|0; - $292 = $291&255; - $293 = ($292|0)!=(0); - if ($293) { - $294 = HEAP32[$iTerm>>2]|0; - $295 = 1 << $294; - $296 = HEAP32[$pNew>>2]|0; - $297 = (($296) + 24|0); - $298 = (($297) + 6|0); - $299 = HEAP16[$298>>1]|0; - $300 = $299&65535; - $301 = $300 | $295; - $302 = $301&65535; - HEAP16[$298>>1] = $302; - } - } - $303 = HEAP32[$pTerm>>2]|0; - $304 = (($303) + 18|0); - $305 = HEAP16[$304>>1]|0; - $306 = $305&65535; - $307 = $306 & 1; - $308 = ($307|0)!=(0); - if ($308) { - $309 = HEAP32[$i>>2]|0; - $310 = HEAP32[$pUsage>>2]|0; - $311 = (($310) + ($309<<3)|0); - $312 = (($311) + 4|0); - $313 = HEAP8[$312>>0]|0; - $314 = $313&255; - $315 = ($314|0)==(0); - if ($315) { - break; - } - $316 = HEAP32[$pIdxInfo>>2]|0; - $317 = (($316) + 32|0); - HEAP32[$317>>2] = 0; - } - } - $318 = HEAP32[$i>>2]|0; - $319 = (($318) + 1)|0; - HEAP32[$i>>2] = $319; - $320 = HEAP32[$pIdxCons>>2]|0; - $321 = (($320) + 12|0); - HEAP32[$pIdxCons>>2] = $321; - } - $322 = HEAP32[$i>>2]|0; - $323 = HEAP32[$nConstraint>>2]|0; - $324 = ($322|0)>=($323|0); - if ($324) { - $325 = HEAP32[$mxTerm>>2]|0; - $326 = (($325) + 1)|0; - $327 = $326&65535; - $328 = HEAP32[$pNew>>2]|0; - $329 = (($328) + 40|0); - HEAP16[$329>>1] = $327; - $330 = HEAP32[$pIdxInfo>>2]|0; - $331 = (($330) + 20|0); - $332 = HEAP32[$331>>2]|0; - $333 = HEAP32[$pNew>>2]|0; - $334 = (($333) + 24|0); - HEAP32[$334>>2] = $332; - $335 = HEAP32[$pIdxInfo>>2]|0; - $336 = (($335) + 28|0); - $337 = HEAP32[$336>>2]|0; - $338 = $337&255; - $339 = HEAP32[$pNew>>2]|0; - $340 = (($339) + 24|0); - $341 = (($340) + 4|0); - HEAP8[$341>>0] = $338; - $342 = HEAP32[$pIdxInfo>>2]|0; - $343 = (($342) + 28|0); - HEAP32[$343>>2] = 0; - $344 = HEAP32[$pIdxInfo>>2]|0; - $345 = (($344) + 24|0); - $346 = HEAP32[$345>>2]|0; - $347 = HEAP32[$pNew>>2]|0; - $348 = (($347) + 24|0); - $349 = (($348) + 8|0); - HEAP32[$349>>2] = $346; - $350 = HEAP32[$pIdxInfo>>2]|0; - $351 = (($350) + 32|0); - $352 = HEAP32[$351>>2]|0; - $353 = ($352|0)!=(0); - if ($353) { - $354 = HEAP32[$pIdxInfo>>2]|0; - $355 = (($354) + 8|0); - $356 = HEAP32[$355>>2]|0; - $358 = $356; - } else { - $358 = 0; - } - $357 = $358&255; - $359 = HEAP32[$pNew>>2]|0; - $360 = (($359) + 24|0); - $361 = (($360) + 5|0); - HEAP8[$361>>0] = $357; - $362 = HEAP32[$pNew>>2]|0; - $363 = (($362) + 18|0); - HEAP16[$363>>1] = 0; - $364 = HEAP32[$pIdxInfo>>2]|0; - $365 = (($364) + 40|0); - $366 = +HEAPF64[$365>>3]; - $367 = (_sqlite3LogEstFromDouble($366)|0); - $368 = HEAP32[$pNew>>2]|0; - $369 = (($368) + 20|0); - HEAP16[$369>>1] = $367; - $370 = HEAP32[$pIdxInfo>>2]|0; - $371 = (($370) + 48|0); - $372 = $371; - $373 = $372; - $374 = HEAP32[$373>>2]|0; - $375 = (($372) + 4)|0; - $376 = $375; - $377 = HEAP32[$376>>2]|0; - $378 = (_sqlite3LogEst($374,$377)|0); - $379 = HEAP32[$pNew>>2]|0; - $380 = (($379) + 22|0); - HEAP16[$380>>1] = $378; - $381 = HEAP32[$3>>2]|0; - $382 = HEAP32[$pNew>>2]|0; - (_whereLoopInsert($381,$382)|0); - $383 = HEAP32[$pNew>>2]|0; - $384 = (($383) + 24|0); - $385 = (($384) + 4|0); - $386 = HEAP8[$385>>0]|0; - $387 = ($386<<24>>24)!=(0); - if ($387) { - $388 = HEAP32[$pNew>>2]|0; - $389 = (($388) + 24|0); - $390 = (($389) + 8|0); - $391 = HEAP32[$390>>2]|0; - _sqlite3_free($391); - $392 = HEAP32[$pNew>>2]|0; - $393 = (($392) + 24|0); - $394 = (($393) + 4|0); - HEAP8[$394>>0] = 0; - } - } - $395 = HEAP32[$iPhase>>2]|0; - $396 = (($395) + 1)|0; - HEAP32[$iPhase>>2] = $396; - } - if ((label|0) == 38) { - HEAP32[$rc>>2] = 1; - $246 = HEAP32[$pParse>>2]|0; - $247 = HEAP32[$pTab>>2]|0; - $248 = HEAP32[$247>>2]|0; - HEAP32[$vararg_buffer>>2] = $248; - _sqlite3ErrorMsg($246,23944,$vararg_buffer); - } - $397 = HEAP32[$pIdxInfo>>2]|0; - $398 = (($397) + 28|0); - $399 = HEAP32[$398>>2]|0; - $400 = ($399|0)!=(0); - if ($400) { - $401 = HEAP32[$pIdxInfo>>2]|0; - $402 = (($401) + 24|0); - $403 = HEAP32[$402>>2]|0; - _sqlite3_free($403); - } - $404 = HEAP32[$db>>2]|0; - $405 = HEAP32[$pIdxInfo>>2]|0; - _sqlite3DbFree($404,$405); - $406 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $406; - $407 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($407|0); -} -function _whereLoopAddBtree($pBuilder,$0,$1) { - $pBuilder = $pBuilder|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; - var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; - var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; - var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; - var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; - var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0; - var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0; - var $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0; - var $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0; - var $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0; - var $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0; - var $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0; - var $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0; - var $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0; - var $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0; - var $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0; - var $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0; - var $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0; - var $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0; - var $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; - var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; - var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; - var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aiColumnPk = 0, $aiRowEstPk = 0, $b = 0, $iSortIdx = 0, $m = 0, $pFirst = 0, $pNew = 0, $pProbe = 0, $pSrc = 0, $pTab = 0, $pTabList = 0; - var $pTerm = 0, $pWC = 0, $pWCEnd = 0, $pWInfo = 0, $rLogSize = 0, $rSize = 0, $rc = 0, $sPk = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 144|0; - $2 = sp + 128|0; - $3 = sp + 8|0; - $pWInfo = sp + 124|0; - $pProbe = sp + 120|0; - $sPk = sp + 64|0; - $aiRowEstPk = sp + 140|0; - $aiColumnPk = sp + 136|0; - $pTabList = sp + 56|0; - $pSrc = sp + 52|0; - $pNew = sp + 48|0; - $rc = sp + 44|0; - $iSortIdx = sp + 40|0; - $b = sp + 36|0; - $rSize = sp + 134|0; - $rLogSize = sp + 132|0; - $pWC = sp + 32|0; - $pTab = sp + 28|0; - $pFirst = sp + 24|0; - $pTerm = sp + 20|0; - $pWCEnd = sp + 16|0; - $m = sp; - HEAP32[$2>>2] = $pBuilder; - $4 = $3; - $5 = $4; - HEAP32[$5>>2] = $0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = $1; - HEAP16[$aiColumnPk>>1] = -1; - HEAP32[$rc>>2] = 0; - HEAP32[$iSortIdx>>2] = 1; - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + 12|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$pNew>>2] = $10; - $11 = HEAP32[$2>>2]|0; - $12 = HEAP32[$11>>2]|0; - HEAP32[$pWInfo>>2] = $12; - $13 = HEAP32[$pWInfo>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$pTabList>>2] = $15; - $16 = HEAP32[$pTabList>>2]|0; - $17 = (($16) + 8|0); - $18 = HEAP32[$pNew>>2]|0; - $19 = (($18) + 16|0); - $20 = HEAP8[$19>>0]|0; - $21 = $20&255; - $22 = (($17) + (($21*72)|0)|0); - HEAP32[$pSrc>>2] = $22; - $23 = HEAP32[$pSrc>>2]|0; - $24 = (($23) + 16|0); - $25 = HEAP32[$24>>2]|0; - HEAP32[$pTab>>2] = $25; - $26 = HEAP32[$2>>2]|0; - $27 = (($26) + 4|0); - $28 = HEAP32[$27>>2]|0; - HEAP32[$pWC>>2] = $28; - $29 = HEAP32[$pSrc>>2]|0; - $30 = (($29) + 68|0); - $31 = HEAP32[$30>>2]|0; - $32 = ($31|0)!=(0|0); - do { - if ($32) { - $33 = HEAP32[$pSrc>>2]|0; - $34 = (($33) + 68|0); - $35 = HEAP32[$34>>2]|0; - HEAP32[$pProbe>>2] = $35; - } else { - $36 = HEAP32[$pTab>>2]|0; - $37 = (($36) + 44|0); - $38 = HEAP8[$37>>0]|0; - $39 = $38&255; - $40 = $39 & 32; - $41 = ($40|0)==(0); - if (!($41)) { - $42 = HEAP32[$pTab>>2]|0; - $43 = (($42) + 8|0); - $44 = HEAP32[$43>>2]|0; - HEAP32[$pProbe>>2] = $44; - break; - } - dest=$sPk+0|0; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $45 = (($sPk) + 50|0); - HEAP16[$45>>1] = 1; - $46 = (($sPk) + 4|0); - HEAP32[$46>>2] = $aiColumnPk; - $47 = (($sPk) + 8|0); - HEAP32[$47>>2] = $aiRowEstPk; - $48 = (($sPk) + 54|0); - HEAP8[$48>>0] = 5; - $49 = HEAP32[$pTab>>2]|0; - $50 = (($sPk) + 12|0); - HEAP32[$50>>2] = $49; - $51 = HEAP32[$pTab>>2]|0; - $52 = (($51) + 42|0); - $53 = HEAP16[$52>>1]|0; - $54 = (($sPk) + 48|0); - HEAP16[$54>>1] = $53; - $55 = HEAP32[$pTab>>2]|0; - $56 = (($55) + 28|0); - $57 = HEAP16[$56>>1]|0; - HEAP16[$aiRowEstPk>>1] = $57; - $58 = (($aiRowEstPk) + 2|0); - HEAP16[$58>>1] = 0; - $59 = HEAP32[$pSrc>>2]|0; - $60 = (($59) + 16|0); - $61 = HEAP32[$60>>2]|0; - $62 = (($61) + 8|0); - $63 = HEAP32[$62>>2]|0; - HEAP32[$pFirst>>2] = $63; - $64 = HEAP32[$pSrc>>2]|0; - $65 = (($64) + 37|0); - $66 = HEAP8[$65>>0]|0; - $67 = $66 & 1; - $68 = $67&255; - $69 = ($68|0)==(0); - if ($69) { - $70 = HEAP32[$pFirst>>2]|0; - $71 = (($sPk) + 20|0); - HEAP32[$71>>2] = $70; - } - HEAP32[$pProbe>>2] = $sPk; - } - } while(0); - $72 = HEAP32[$pTab>>2]|0; - $73 = (($72) + 28|0); - $74 = HEAP16[$73>>1]|0; - HEAP16[$rSize>>1] = $74; - $75 = HEAP16[$rSize>>1]|0; - $76 = (_estLog($75)|0); - HEAP16[$rLogSize>>1] = $76; - $77 = HEAP32[$2>>2]|0; - $78 = (($77) + 16|0); - $79 = HEAP32[$78>>2]|0; - $80 = ($79|0)!=(0|0); - L11: do { - if (!($80)) { - $81 = HEAP32[$pWInfo>>2]|0; - $82 = HEAP32[$81>>2]|0; - $83 = HEAP32[$82>>2]|0; - $84 = (($83) + 24|0); - $85 = HEAP32[$84>>2]|0; - $86 = $85 & 1048576; - $87 = ($86|0)!=(0); - if ($87) { - $88 = HEAP32[$pSrc>>2]|0; - $89 = (($88) + 68|0); - $90 = HEAP32[$89>>2]|0; - $91 = ($90|0)==(0|0); - if ($91) { - $92 = HEAP32[$pSrc>>2]|0; - $93 = (($92) + 37|0); - $94 = HEAP8[$93>>0]|0; - $95 = ($94&255) >>> 2; - $96 = $95 & 1; - $97 = $96&255; - $98 = ($97|0)!=(0); - if (!($98)) { - $99 = HEAP32[$pSrc>>2]|0; - $100 = (($99) + 37|0); - $101 = HEAP8[$100>>0]|0; - $102 = $101 & 1; - $103 = $102&255; - $104 = ($103|0)!=(0); - if (!($104)) { - $105 = HEAP32[$pTab>>2]|0; - $106 = (($105) + 44|0); - $107 = HEAP8[$106>>0]|0; - $108 = $107&255; - $109 = $108 & 32; - $110 = ($109|0)==(0); - if ($110) { - $111 = HEAP32[$pSrc>>2]|0; - $112 = (($111) + 37|0); - $113 = HEAP8[$112>>0]|0; - $114 = ($113&255) >>> 1; - $115 = $114 & 1; - $116 = $115&255; - $117 = ($116|0)!=(0); - if (!($117)) { - $118 = HEAP32[$pSrc>>2]|0; - $119 = (($118) + 37|0); - $120 = HEAP8[$119>>0]|0; - $121 = ($120&255) >>> 3; - $122 = $121 & 1; - $123 = $122&255; - $124 = ($123|0)!=(0); - if (!($124)) { - $125 = HEAP32[$pWC>>2]|0; - $126 = (($125) + 20|0); - $127 = HEAP32[$126>>2]|0; - $128 = HEAP32[$pWC>>2]|0; - $129 = (($128) + 12|0); - $130 = HEAP32[$129>>2]|0; - $131 = (($127) + (($130*48)|0)|0); - HEAP32[$pWCEnd>>2] = $131; - $132 = HEAP32[$pWC>>2]|0; - $133 = (($132) + 20|0); - $134 = HEAP32[$133>>2]|0; - HEAP32[$pTerm>>2] = $134; - while(1) { - $135 = HEAP32[$rc>>2]|0; - $136 = ($135|0)==(0); - if (!($136)) { - break L11; - } - $137 = HEAP32[$pTerm>>2]|0; - $138 = HEAP32[$pWCEnd>>2]|0; - $139 = ($137>>>0)<($138>>>0); - if (!($139)) { - break L11; - } - $140 = HEAP32[$pTerm>>2]|0; - $141 = (($140) + 32|0); - $142 = $141; - $143 = $142; - $144 = HEAP32[$143>>2]|0; - $145 = (($142) + 4)|0; - $146 = $145; - $147 = HEAP32[$146>>2]|0; - $148 = HEAP32[$pNew>>2]|0; - $149 = (($148) + 8|0); - $150 = $149; - $151 = $150; - $152 = HEAP32[$151>>2]|0; - $153 = (($150) + 4)|0; - $154 = $153; - $155 = HEAP32[$154>>2]|0; - $156 = $144 & $152; - $157 = $147 & $155; - $158 = ($156|0)!=(0); - $159 = ($157|0)!=(0); - $160 = $158 | $159; - if (!($160)) { - $161 = HEAP32[$pTerm>>2]|0; - $162 = HEAP32[$pSrc>>2]|0; - $163 = (_termCanDriveIndex($161,$162,0,0)|0); - $164 = ($163|0)!=(0); - if ($164) { - $165 = HEAP32[$pNew>>2]|0; - $166 = (($165) + 24|0); - HEAP16[$166>>1] = 1; - $167 = HEAP32[$pNew>>2]|0; - $168 = (($167) + 24|0); - $169 = (($168) + 2|0); - HEAP16[$169>>1] = 0; - $170 = HEAP32[$pNew>>2]|0; - $171 = (($170) + 24|0); - $172 = (($171) + 4|0); - HEAP32[$172>>2] = 0; - $173 = HEAP32[$pNew>>2]|0; - $174 = (($173) + 40|0); - HEAP16[$174>>1] = 1; - $175 = HEAP32[$pTerm>>2]|0; - $176 = HEAP32[$pNew>>2]|0; - $177 = (($176) + 44|0); - $178 = HEAP32[$177>>2]|0; - HEAP32[$178>>2] = $175; - $179 = HEAP16[$rLogSize>>1]|0; - $180 = $179 << 16 >> 16; - $181 = HEAP16[$rSize>>1]|0; - $182 = $181 << 16 >> 16; - $183 = (($180) + ($182))|0; - $184 = (($183) + 28)|0; - $185 = $184&65535; - $186 = HEAP32[$pNew>>2]|0; - $187 = (($186) + 18|0); - HEAP16[$187>>1] = $185; - $188 = HEAP32[$pNew>>2]|0; - $189 = (($188) + 22|0); - HEAP16[$189>>1] = 43; - $190 = HEAP16[$rLogSize>>1]|0; - $191 = HEAP32[$pNew>>2]|0; - $192 = (($191) + 22|0); - $193 = HEAP16[$192>>1]|0; - $194 = (_sqlite3LogEstAdd($190,$193)|0); - $195 = HEAP32[$pNew>>2]|0; - $196 = (($195) + 20|0); - HEAP16[$196>>1] = $194; - $197 = HEAP32[$pNew>>2]|0; - $198 = (($197) + 36|0); - HEAP32[$198>>2] = 16384; - $199 = $3; - $200 = $199; - $201 = HEAP32[$200>>2]|0; - $202 = (($199) + 4)|0; - $203 = $202; - $204 = HEAP32[$203>>2]|0; - $205 = HEAP32[$pTerm>>2]|0; - $206 = (($205) + 32|0); - $207 = $206; - $208 = $207; - $209 = HEAP32[$208>>2]|0; - $210 = (($207) + 4)|0; - $211 = $210; - $212 = HEAP32[$211>>2]|0; - $213 = $201 | $209; - $214 = $204 | $212; - $215 = HEAP32[$pNew>>2]|0; - $216 = $215; - $217 = $216; - HEAP32[$217>>2] = $213; - $218 = (($216) + 4)|0; - $219 = $218; - HEAP32[$219>>2] = $214; - $220 = HEAP32[$2>>2]|0; - $221 = HEAP32[$pNew>>2]|0; - $222 = (_whereLoopInsert($220,$221)|0); - HEAP32[$rc>>2] = $222; - } - } - $223 = HEAP32[$pTerm>>2]|0; - $224 = (($223) + 48|0); - HEAP32[$pTerm>>2] = $224; - } - } - } - } - } - } - } - } - } - } while(0); - L28: while(1) { - $225 = HEAP32[$rc>>2]|0; - $226 = ($225|0)==(0); - if (!($226)) { - label = 45; - break; - } - $227 = HEAP32[$pProbe>>2]|0; - $228 = ($227|0)!=(0|0); - if (!($228)) { - label = 45; - break; - } - $229 = HEAP32[$pProbe>>2]|0; - $230 = (($229) + 36|0); - $231 = HEAP32[$230>>2]|0; - $232 = ($231|0)!=(0|0); - if ($232) { - $233 = HEAP32[$pNew>>2]|0; - $234 = (($233) + 16|0); - $235 = HEAP8[$234>>0]|0; - $236 = $235&255; - $237 = HEAP32[$pWC>>2]|0; - $238 = HEAP32[$pProbe>>2]|0; - $239 = (($238) + 36|0); - $240 = HEAP32[$239>>2]|0; - $241 = (_whereUsablePartialIndex($236,$237,$240)|0); - $242 = ($241|0)!=(0); - if ($242) { - label = 27; - } - } else { - label = 27; - } - if ((label|0) == 27) { - label = 0; - $243 = HEAP32[$pProbe>>2]|0; - $244 = (($243) + 8|0); - $245 = HEAP32[$244>>2]|0; - $246 = HEAP16[$245>>1]|0; - HEAP16[$rSize>>1] = $246; - $247 = HEAP32[$pNew>>2]|0; - $248 = (($247) + 24|0); - HEAP16[$248>>1] = 0; - $249 = HEAP32[$pNew>>2]|0; - $250 = (($249) + 24|0); - $251 = (($250) + 2|0); - HEAP16[$251>>1] = 0; - $252 = HEAP32[$pNew>>2]|0; - $253 = (($252) + 40|0); - HEAP16[$253>>1] = 0; - $254 = HEAP32[$pNew>>2]|0; - $255 = (($254) + 17|0); - HEAP8[$255>>0] = 0; - $256 = HEAP32[$pNew>>2]|0; - $257 = (($256) + 18|0); - HEAP16[$257>>1] = 0; - $258 = $3; - $259 = $258; - $260 = HEAP32[$259>>2]|0; - $261 = (($258) + 4)|0; - $262 = $261; - $263 = HEAP32[$262>>2]|0; - $264 = HEAP32[$pNew>>2]|0; - $265 = $264; - $266 = $265; - HEAP32[$266>>2] = $260; - $267 = (($265) + 4)|0; - $268 = $267; - HEAP32[$268>>2] = $263; - $269 = HEAP16[$rSize>>1]|0; - $270 = HEAP32[$pNew>>2]|0; - $271 = (($270) + 22|0); - HEAP16[$271>>1] = $269; - $272 = HEAP32[$pProbe>>2]|0; - $273 = HEAP32[$pNew>>2]|0; - $274 = (($273) + 24|0); - $275 = (($274) + 4|0); - HEAP32[$275>>2] = $272; - $276 = HEAP32[$2>>2]|0; - $277 = HEAP32[$pProbe>>2]|0; - $278 = HEAP32[$pSrc>>2]|0; - $279 = (($278) + 40|0); - $280 = HEAP32[$279>>2]|0; - $281 = (_indexMightHelpWithOrderBy($276,$277,$280)|0); - HEAP32[$b>>2] = $281; - $282 = HEAP32[$pProbe>>2]|0; - $283 = (($282) + 44|0); - $284 = HEAP32[$283>>2]|0; - $285 = ($284|0)<=(0); - do { - if ($285) { - $286 = HEAP32[$pNew>>2]|0; - $287 = (($286) + 36|0); - HEAP32[$287>>2] = 256; - $288 = HEAP32[$b>>2]|0; - $289 = ($288|0)!=(0); - $290 = HEAP32[$iSortIdx>>2]|0; - $291 = $289 ? $290 : 0; - $292 = $291&255; - $293 = HEAP32[$pNew>>2]|0; - $294 = (($293) + 17|0); - HEAP8[$294>>0] = $292; - $295 = HEAP16[$rSize>>1]|0; - $296 = $295 << 16 >> 16; - $297 = (($296) + 16)|0; - $298 = $297&65535; - $299 = HEAP32[$pNew>>2]|0; - $300 = (($299) + 20|0); - HEAP16[$300>>1] = $298; - $301 = HEAP32[$pWC>>2]|0; - $302 = HEAP32[$pNew>>2]|0; - _whereLoopOutputAdjust($301,$302); - $303 = HEAP32[$2>>2]|0; - $304 = HEAP32[$pNew>>2]|0; - $305 = (_whereLoopInsert($303,$304)|0); - HEAP32[$rc>>2] = $305; - $306 = HEAP16[$rSize>>1]|0; - $307 = HEAP32[$pNew>>2]|0; - $308 = (($307) + 22|0); - HEAP16[$308>>1] = $306; - $309 = HEAP32[$rc>>2]|0; - $310 = ($309|0)!=(0); - if ($310) { - label = 45; - break L28; - } - } else { - $311 = HEAP32[$pProbe>>2]|0; - $312 = (($311) + 55|0); - $313 = HEAP8[$312>>0]|0; - $314 = ($313&255) >>> 5; - $315 = $314 & 1; - $316 = $315&255; - $317 = ($316|0)!=(0); - if ($317) { - $318 = HEAP32[$pNew>>2]|0; - $319 = (($318) + 36|0); - HEAP32[$319>>2] = 576; - $320 = $m; - $321 = $320; - HEAP32[$321>>2] = 0; - $322 = (($320) + 4)|0; - $323 = $322; - HEAP32[$323>>2] = 0; - } else { - $324 = HEAP32[$pSrc>>2]|0; - $325 = (($324) + 56|0); - $326 = $325; - $327 = $326; - $328 = HEAP32[$327>>2]|0; - $329 = (($326) + 4)|0; - $330 = $329; - $331 = HEAP32[$330>>2]|0; - $332 = HEAP32[$pProbe>>2]|0; - $333 = (_columnsInIndex($332)|0); - $334 = tempRet0; - $335 = $333 ^ -1; - $336 = $334 ^ -1; - $337 = $328 & $335; - $338 = $331 & $336; - $339 = $m; - $340 = $339; - HEAP32[$340>>2] = $337; - $341 = (($339) + 4)|0; - $342 = $341; - HEAP32[$342>>2] = $338; - $343 = $m; - $344 = $343; - $345 = HEAP32[$344>>2]|0; - $346 = (($343) + 4)|0; - $347 = $346; - $348 = HEAP32[$347>>2]|0; - $349 = ($345|0)==(0); - $350 = ($348|0)==(0); - $351 = $349 & $350; - $352 = $351 ? 576 : 512; - $353 = HEAP32[$pNew>>2]|0; - $354 = (($353) + 36|0); - HEAP32[$354>>2] = $352; - } - $355 = HEAP32[$b>>2]|0; - $356 = ($355|0)!=(0); - if (!($356)) { - $357 = HEAP32[$pTab>>2]|0; - $358 = (($357) + 44|0); - $359 = HEAP8[$358>>0]|0; - $360 = $359&255; - $361 = $360 & 32; - $362 = ($361|0)==(0); - if ($362) { - $363 = $m; - $364 = $363; - $365 = HEAP32[$364>>2]|0; - $366 = (($363) + 4)|0; - $367 = $366; - $368 = HEAP32[$367>>2]|0; - $369 = ($365|0)==(0); - $370 = ($368|0)==(0); - $371 = $369 & $370; - if (!($371)) { - break; - } - $372 = HEAP32[$pProbe>>2]|0; - $373 = (($372) + 55|0); - $374 = HEAP8[$373>>0]|0; - $375 = ($374&255) >>> 2; - $376 = $375 & 1; - $377 = $376&255; - $378 = ($377|0)==(0); - if (!($378)) { - break; - } - $379 = HEAP32[$pProbe>>2]|0; - $380 = (($379) + 48|0); - $381 = HEAP16[$380>>1]|0; - $382 = $381 << 16 >> 16; - $383 = HEAP32[$pTab>>2]|0; - $384 = (($383) + 42|0); - $385 = HEAP16[$384>>1]|0; - $386 = $385 << 16 >> 16; - $387 = ($382|0)<($386|0); - if (!($387)) { - break; - } - $388 = HEAP32[$pWInfo>>2]|0; - $389 = (($388) + 34|0); - $390 = HEAP16[$389>>1]|0; - $391 = $390&65535; - $392 = $391 & 4; - $393 = ($392|0)==(0); - if (!($393)) { - break; - } - $394 = HEAP32[((38512 + 16|0))>>2]|0; - $395 = ($394|0)!=(0); - if (!($395)) { - break; - } - $396 = HEAP32[$pWInfo>>2]|0; - $397 = HEAP32[$396>>2]|0; - $398 = HEAP32[$397>>2]|0; - $399 = (($398) + 60|0); - $400 = HEAP16[$399>>1]|0; - $401 = $400&65535; - $402 = $401 & 64; - $403 = ($402|0)==(0); - if (!($403)) { - break; - } - } - } - $404 = HEAP32[$b>>2]|0; - $405 = ($404|0)!=(0); - $406 = HEAP32[$iSortIdx>>2]|0; - $407 = $405 ? $406 : 0; - $408 = $407&255; - $409 = HEAP32[$pNew>>2]|0; - $410 = (($409) + 17|0); - HEAP8[$410>>0] = $408; - $411 = HEAP16[$rSize>>1]|0; - $412 = $411 << 16 >> 16; - $413 = (($412) + 1)|0; - $414 = HEAP32[$pProbe>>2]|0; - $415 = (($414) + 48|0); - $416 = HEAP16[$415>>1]|0; - $417 = $416 << 16 >> 16; - $418 = ($417*15)|0; - $419 = HEAP32[$pTab>>2]|0; - $420 = (($419) + 42|0); - $421 = HEAP16[$420>>1]|0; - $422 = $421 << 16 >> 16; - $423 = (($418|0) / ($422|0))&-1; - $424 = (($413) + ($423))|0; - $425 = $424&65535; - $426 = HEAP32[$pNew>>2]|0; - $427 = (($426) + 20|0); - HEAP16[$427>>1] = $425; - $428 = $m; - $429 = $428; - $430 = HEAP32[$429>>2]|0; - $431 = (($428) + 4)|0; - $432 = $431; - $433 = HEAP32[$432>>2]|0; - $434 = ($430|0)!=(0); - $435 = ($433|0)!=(0); - $436 = $434 | $435; - if ($436) { - $437 = HEAP32[$pNew>>2]|0; - $438 = (($437) + 20|0); - $439 = HEAP16[$438>>1]|0; - $440 = HEAP16[$rSize>>1]|0; - $441 = $440 << 16 >> 16; - $442 = (($441) + 16)|0; - $443 = $442&65535; - $444 = (_sqlite3LogEstAdd($439,$443)|0); - $445 = HEAP32[$pNew>>2]|0; - $446 = (($445) + 20|0); - HEAP16[$446>>1] = $444; - } - $447 = HEAP32[$pWC>>2]|0; - $448 = HEAP32[$pNew>>2]|0; - _whereLoopOutputAdjust($447,$448); - $449 = HEAP32[$2>>2]|0; - $450 = HEAP32[$pNew>>2]|0; - $451 = (_whereLoopInsert($449,$450)|0); - HEAP32[$rc>>2] = $451; - $452 = HEAP16[$rSize>>1]|0; - $453 = HEAP32[$pNew>>2]|0; - $454 = (($453) + 22|0); - HEAP16[$454>>1] = $452; - $455 = HEAP32[$rc>>2]|0; - $456 = ($455|0)!=(0); - if ($456) { - label = 45; - break L28; - } - } - } while(0); - $457 = HEAP32[$2>>2]|0; - $458 = HEAP32[$pSrc>>2]|0; - $459 = HEAP32[$pProbe>>2]|0; - $460 = (_whereLoopAddBtreeIndex($457,$458,$459,0)|0); - HEAP32[$rc>>2] = $460; - $461 = HEAP32[$pSrc>>2]|0; - $462 = (($461) + 68|0); - $463 = HEAP32[$462>>2]|0; - $464 = ($463|0)!=(0|0); - if ($464) { - label = 45; - break; - } - } - $465 = HEAP32[$pProbe>>2]|0; - $466 = (($465) + 20|0); - $467 = HEAP32[$466>>2]|0; - HEAP32[$pProbe>>2] = $467; - $468 = HEAP32[$iSortIdx>>2]|0; - $469 = (($468) + 1)|0; - HEAP32[$iSortIdx>>2] = $469; - } - if ((label|0) == 45) { - $470 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($470|0); - } - return 0|0; -} -function _whereLoopAddOr($pBuilder,$0,$1) { - $pBuilder = $pBuilder|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; - var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; - var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; - var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; - var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; - var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0; - var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0; - var $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; - var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; - var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; - var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; - var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iCur = 0, $j = 0, $once = 0, $pItem = 0; - var $pNew = 0, $pOrTerm = 0, $pOrWC = 0, $pOrWCEnd = 0, $pTerm = 0, $pWC = 0, $pWCEnd = 0, $pWInfo = 0, $rc = 0, $sCur = 0, $sPrev = 0, $sSubBuild = 0, $sSum = 0, $tempWC = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 672|0; - $2 = sp + 664|0; - $3 = sp + 660|0; - $4 = sp + 576|0; - $pWInfo = sp + 656|0; - $pWC = sp + 652|0; - $pNew = sp + 648|0; - $pTerm = sp + 644|0; - $pWCEnd = sp + 640|0; - $rc = sp + 636|0; - $iCur = sp + 632|0; - $tempWC = sp + 168|0; - $sSubBuild = sp + 612|0; - $sSum = sp + 112|0; - $sCur = sp + 56|0; - $pItem = sp + 608|0; - $pOrWC = sp + 604|0; - $pOrWCEnd = sp + 600|0; - $pOrTerm = sp + 596|0; - $once = sp + 592|0; - $i = sp + 588|0; - $j = sp + 584|0; - $sPrev = sp; - HEAP32[$3>>2] = $pBuilder; - $5 = $4; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - $9 = HEAP32[$3>>2]|0; - $10 = HEAP32[$9>>2]|0; - HEAP32[$pWInfo>>2] = $10; - HEAP32[$rc>>2] = 0; - $11 = HEAP32[$3>>2]|0; - $12 = (($11) + 4|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pWC>>2] = $13; - $14 = HEAP32[$pWInfo>>2]|0; - $15 = (($14) + 34|0); - $16 = HEAP16[$15>>1]|0; - $17 = $16&65535; - $18 = $17 & 128; - $19 = ($18|0)!=(0); - if ($19) { - HEAP32[$2>>2] = 0; - $256 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($256|0); - } - $20 = HEAP32[$pWC>>2]|0; - $21 = (($20) + 20|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$pWC>>2]|0; - $24 = (($23) + 12|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($22) + (($25*48)|0)|0); - HEAP32[$pWCEnd>>2] = $26; - $27 = HEAP32[$3>>2]|0; - $28 = (($27) + 12|0); - $29 = HEAP32[$28>>2]|0; - HEAP32[$pNew>>2] = $29; - dest=$sSum+0|0; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $30 = HEAP32[$pWInfo>>2]|0; - $31 = (($30) + 4|0); - $32 = HEAP32[$31>>2]|0; - $33 = (($32) + 8|0); - $34 = HEAP32[$pNew>>2]|0; - $35 = (($34) + 16|0); - $36 = HEAP8[$35>>0]|0; - $37 = $36&255; - $38 = (($33) + (($37*72)|0)|0); - HEAP32[$pItem>>2] = $38; - $39 = HEAP32[$pItem>>2]|0; - $40 = (($39) + 40|0); - $41 = HEAP32[$40>>2]|0; - HEAP32[$iCur>>2] = $41; - $42 = HEAP32[$pWC>>2]|0; - $43 = (($42) + 20|0); - $44 = HEAP32[$43>>2]|0; - HEAP32[$pTerm>>2] = $44; - while(1) { - $45 = HEAP32[$pTerm>>2]|0; - $46 = HEAP32[$pWCEnd>>2]|0; - $47 = ($45>>>0)<($46>>>0); - if (!($47)) { - break; - } - $48 = HEAP32[$rc>>2]|0; - $49 = ($48|0)==(0); - if (!($49)) { - break; - } - $50 = HEAP32[$pTerm>>2]|0; - $51 = (($50) + 18|0); - $52 = HEAP16[$51>>1]|0; - $53 = $52&65535; - $54 = $53 & 256; - $55 = ($54|0)!=(0); - L9: do { - if ($55) { - $56 = HEAP32[$pTerm>>2]|0; - $57 = (($56) + 12|0); - $58 = HEAP32[$57>>2]|0; - $59 = (($58) + 408|0); - $60 = $59; - $61 = $60; - $62 = HEAP32[$61>>2]|0; - $63 = (($60) + 4)|0; - $64 = $63; - $65 = HEAP32[$64>>2]|0; - $66 = HEAP32[$pNew>>2]|0; - $67 = (($66) + 8|0); - $68 = $67; - $69 = $68; - $70 = HEAP32[$69>>2]|0; - $71 = (($68) + 4)|0; - $72 = $71; - $73 = HEAP32[$72>>2]|0; - $74 = $62 & $70; - $75 = $65 & $73; - $76 = ($74|0)!=(0); - $77 = ($75|0)!=(0); - $78 = $76 | $77; - if ($78) { - $79 = HEAP32[$pTerm>>2]|0; - $80 = (($79) + 12|0); - $81 = HEAP32[$80>>2]|0; - HEAP32[$pOrWC>>2] = $81; - $82 = HEAP32[$pOrWC>>2]|0; - $83 = (($82) + 12|0); - $84 = HEAP32[$83>>2]|0; - $85 = HEAP32[$pOrWC>>2]|0; - $86 = (($85) + 20|0); - $87 = HEAP32[$86>>2]|0; - $88 = (($87) + (($84*48)|0)|0); - HEAP32[$pOrWCEnd>>2] = $88; - HEAP32[$once>>2] = 1; - $89 = HEAP32[$3>>2]|0; - ;HEAP32[$sSubBuild+0>>2]=HEAP32[$89+0>>2]|0;HEAP32[$sSubBuild+4>>2]=HEAP32[$89+4>>2]|0;HEAP32[$sSubBuild+8>>2]=HEAP32[$89+8>>2]|0;HEAP32[$sSubBuild+12>>2]=HEAP32[$89+12>>2]|0;HEAP32[$sSubBuild+16>>2]=HEAP32[$89+16>>2]|0; - $90 = (($sSubBuild) + 8|0); - HEAP32[$90>>2] = 0; - $91 = (($sSubBuild) + 16|0); - HEAP32[$91>>2] = $sCur; - $92 = HEAP32[$pOrWC>>2]|0; - $93 = (($92) + 20|0); - $94 = HEAP32[$93>>2]|0; - HEAP32[$pOrTerm>>2] = $94; - L12: while(1) { - $95 = HEAP32[$pOrTerm>>2]|0; - $96 = HEAP32[$pOrWCEnd>>2]|0; - $97 = ($95>>>0)<($96>>>0); - if (!($97)) { - break; - } - $98 = HEAP32[$pOrTerm>>2]|0; - $99 = (($98) + 18|0); - $100 = HEAP16[$99>>1]|0; - $101 = $100&65535; - $102 = $101 & 512; - $103 = ($102|0)!=(0); - $104 = HEAP32[$pOrTerm>>2]|0; - if ($103) { - $105 = (($104) + 12|0); - $106 = HEAP32[$105>>2]|0; - $107 = (($sSubBuild) + 4|0); - HEAP32[$107>>2] = $106; - label = 14; - } else { - $108 = (($104) + 8|0); - $109 = HEAP32[$108>>2]|0; - $110 = HEAP32[$iCur>>2]|0; - $111 = ($109|0)==($110|0); - if ($111) { - $112 = HEAP32[$pWC>>2]|0; - $113 = HEAP32[$112>>2]|0; - HEAP32[$tempWC>>2] = $113; - $114 = HEAP32[$pWC>>2]|0; - $115 = (($tempWC) + 4|0); - HEAP32[$115>>2] = $114; - $116 = (($tempWC) + 8|0); - HEAP8[$116>>0] = 72; - $117 = (($tempWC) + 12|0); - HEAP32[$117>>2] = 1; - $118 = HEAP32[$pOrTerm>>2]|0; - $119 = (($tempWC) + 20|0); - HEAP32[$119>>2] = $118; - $120 = (($sSubBuild) + 4|0); - HEAP32[$120>>2] = $tempWC; - label = 14; - } - } - L19: do { - if ((label|0) == 14) { - label = 0; - HEAP16[$sCur>>1] = 0; - $121 = HEAP32[$pItem>>2]|0; - $122 = (($121) + 16|0); - $123 = HEAP32[$122>>2]|0; - $124 = (($123) + 44|0); - $125 = HEAP8[$124>>0]|0; - $126 = $125&255; - $127 = $126 & 16; - $128 = ($127|0)!=(0); - $129 = $4; - $130 = $129; - $131 = HEAP32[$130>>2]|0; - $132 = (($129) + 4)|0; - $133 = $132; - $134 = HEAP32[$133>>2]|0; - if ($128) { - $135 = (_whereLoopAddVirtual($sSubBuild,$131,$134)|0); - HEAP32[$rc>>2] = $135; - } else { - $136 = (_whereLoopAddBtree($sSubBuild,$131,$134)|0); - HEAP32[$rc>>2] = $136; - } - $137 = HEAP16[$sCur>>1]|0; - $138 = $137&65535; - $139 = ($138|0)==(0); - if ($139) { - label = 18; - break L12; - } - $140 = HEAP32[$once>>2]|0; - $141 = ($140|0)!=(0); - if ($141) { - _whereOrMove($sSum,$sCur); - HEAP32[$once>>2] = 0; - break; - } - _whereOrMove($sPrev,$sSum); - HEAP16[$sSum>>1] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $142 = HEAP32[$i>>2]|0; - $143 = HEAP16[$sPrev>>1]|0; - $144 = $143&65535; - $145 = ($142|0)<($144|0); - if (!($145)) { - break L19; - } - HEAP32[$j>>2] = 0; - while(1) { - $146 = HEAP32[$j>>2]|0; - $147 = HEAP16[$sCur>>1]|0; - $148 = $147&65535; - $149 = ($146|0)<($148|0); - $150 = HEAP32[$i>>2]|0; - if (!($149)) { - break; - } - $151 = (($sPrev) + 8|0); - $152 = (($151) + ($150<<4)|0); - $153 = $152; - $154 = $153; - $155 = HEAP32[$154>>2]|0; - $156 = (($153) + 4)|0; - $157 = $156; - $158 = HEAP32[$157>>2]|0; - $159 = HEAP32[$j>>2]|0; - $160 = (($sCur) + 8|0); - $161 = (($160) + ($159<<4)|0); - $162 = $161; - $163 = $162; - $164 = HEAP32[$163>>2]|0; - $165 = (($162) + 4)|0; - $166 = $165; - $167 = HEAP32[$166>>2]|0; - $168 = $155 | $164; - $169 = $158 | $167; - $170 = HEAP32[$i>>2]|0; - $171 = (($sPrev) + 8|0); - $172 = (($171) + ($170<<4)|0); - $173 = (($172) + 8|0); - $174 = HEAP16[$173>>1]|0; - $175 = HEAP32[$j>>2]|0; - $176 = (($sCur) + 8|0); - $177 = (($176) + ($175<<4)|0); - $178 = (($177) + 8|0); - $179 = HEAP16[$178>>1]|0; - $180 = (_sqlite3LogEstAdd($174,$179)|0); - $181 = HEAP32[$i>>2]|0; - $182 = (($sPrev) + 8|0); - $183 = (($182) + ($181<<4)|0); - $184 = (($183) + 10|0); - $185 = HEAP16[$184>>1]|0; - $186 = HEAP32[$j>>2]|0; - $187 = (($sCur) + 8|0); - $188 = (($187) + ($186<<4)|0); - $189 = (($188) + 10|0); - $190 = HEAP16[$189>>1]|0; - $191 = (_sqlite3LogEstAdd($185,$190)|0); - (_whereOrInsert($sSum,$168,$169,$180,$191)|0); - $192 = HEAP32[$j>>2]|0; - $193 = (($192) + 1)|0; - HEAP32[$j>>2] = $193; - } - $194 = (($150) + 1)|0; - HEAP32[$i>>2] = $194; - } - } - } while(0); - $195 = HEAP32[$pOrTerm>>2]|0; - $196 = (($195) + 48|0); - HEAP32[$pOrTerm>>2] = $196; - } - if ((label|0) == 18) { - label = 0; - HEAP16[$sSum>>1] = 0; - } - $197 = HEAP32[$pNew>>2]|0; - $198 = (($197) + 40|0); - HEAP16[$198>>1] = 1; - $199 = HEAP32[$pTerm>>2]|0; - $200 = HEAP32[$pNew>>2]|0; - $201 = (($200) + 44|0); - $202 = HEAP32[$201>>2]|0; - HEAP32[$202>>2] = $199; - $203 = HEAP32[$pNew>>2]|0; - $204 = (($203) + 36|0); - HEAP32[$204>>2] = 8192; - $205 = HEAP32[$pNew>>2]|0; - $206 = (($205) + 18|0); - HEAP16[$206>>1] = 0; - $207 = HEAP32[$pNew>>2]|0; - $208 = (($207) + 17|0); - HEAP8[$208>>0] = 0; - $209 = HEAP32[$pNew>>2]|0; - $210 = (($209) + 24|0); - ;HEAP32[$210+0>>2]=0|0;HEAP32[$210+4>>2]=0|0;HEAP32[$210+8>>2]=0|0; - HEAP32[$i>>2] = 0; - while(1) { - $211 = HEAP32[$rc>>2]|0; - $212 = ($211|0)==(0); - if (!($212)) { - break L9; - } - $213 = HEAP32[$i>>2]|0; - $214 = HEAP16[$sSum>>1]|0; - $215 = $214&65535; - $216 = ($213|0)<($215|0); - if (!($216)) { - break L9; - } - $217 = HEAP32[$i>>2]|0; - $218 = (($sSum) + 8|0); - $219 = (($218) + ($217<<4)|0); - $220 = (($219) + 8|0); - $221 = HEAP16[$220>>1]|0; - $222 = $221 << 16 >> 16; - $223 = (($222) + 1)|0; - $224 = $223&65535; - $225 = HEAP32[$pNew>>2]|0; - $226 = (($225) + 20|0); - HEAP16[$226>>1] = $224; - $227 = HEAP32[$i>>2]|0; - $228 = (($sSum) + 8|0); - $229 = (($228) + ($227<<4)|0); - $230 = (($229) + 10|0); - $231 = HEAP16[$230>>1]|0; - $232 = HEAP32[$pNew>>2]|0; - $233 = (($232) + 22|0); - HEAP16[$233>>1] = $231; - $234 = HEAP32[$i>>2]|0; - $235 = (($sSum) + 8|0); - $236 = (($235) + ($234<<4)|0); - $237 = $236; - $238 = $237; - $239 = HEAP32[$238>>2]|0; - $240 = (($237) + 4)|0; - $241 = $240; - $242 = HEAP32[$241>>2]|0; - $243 = HEAP32[$pNew>>2]|0; - $244 = $243; - $245 = $244; - HEAP32[$245>>2] = $239; - $246 = (($244) + 4)|0; - $247 = $246; - HEAP32[$247>>2] = $242; - $248 = HEAP32[$3>>2]|0; - $249 = HEAP32[$pNew>>2]|0; - $250 = (_whereLoopInsert($248,$249)|0); - HEAP32[$rc>>2] = $250; - $251 = HEAP32[$i>>2]|0; - $252 = (($251) + 1)|0; - HEAP32[$i>>2] = $252; - } - } - } - } while(0); - $253 = HEAP32[$pTerm>>2]|0; - $254 = (($253) + 48|0); - HEAP32[$pTerm>>2] = $254; - } - $255 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $255; - $256 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($256|0); -} -function _whereOrMove($pDest,$pSrc) { - $pDest = $pDest|0; - $pSrc = $pSrc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pDest; - HEAP32[$1>>2] = $pSrc; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP16[$2>>1]|0; - $4 = HEAP32[$0>>2]|0; - HEAP16[$4>>1] = $3; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 8|0); - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 8|0); - $9 = HEAP32[$0>>2]|0; - $10 = HEAP16[$9>>1]|0; - $11 = $10&65535; - $12 = $11<<4; - _memcpy(($6|0),($8|0),($12|0))|0; - STACKTOP = sp;return; -} -function _whereOrInsert($pSet,$0,$1,$rRun,$nOut) { - $pSet = $pSet|0; - $0 = $0|0; - $1 = $1|0; - $rRun = $rRun|0; - $nOut = $nOut|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; - var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; - var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; - var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; - var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; - var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; - var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp; - $5 = sp + 24|0; - $6 = sp + 22|0; - $i = sp + 20|0; - $p = sp + 8|0; - HEAP32[$3>>2] = $pSet; - $7 = $4; - $8 = $7; - HEAP32[$8>>2] = $0; - $9 = (($7) + 4)|0; - $10 = $9; - HEAP32[$10>>2] = $1; - HEAP16[$5>>1] = $rRun; - HEAP16[$6>>1] = $nOut; - $11 = HEAP32[$3>>2]|0; - $12 = HEAP16[$11>>1]|0; - HEAP16[$i>>1] = $12; - $13 = HEAP32[$3>>2]|0; - $14 = (($13) + 8|0); - HEAP32[$p>>2] = $14; - while(1) { - $15 = HEAP16[$i>>1]|0; - $16 = $15&65535; - $17 = ($16|0)>(0); - if (!($17)) { - label = 9; - break; - } - $18 = HEAP16[$5>>1]|0; - $19 = $18 << 16 >> 16; - $20 = HEAP32[$p>>2]|0; - $21 = (($20) + 8|0); - $22 = HEAP16[$21>>1]|0; - $23 = $22 << 16 >> 16; - $24 = ($19|0)<=($23|0); - if ($24) { - $25 = $4; - $26 = $25; - $27 = HEAP32[$26>>2]|0; - $28 = (($25) + 4)|0; - $29 = $28; - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$p>>2]|0; - $32 = $31; - $33 = $32; - $34 = HEAP32[$33>>2]|0; - $35 = (($32) + 4)|0; - $36 = $35; - $37 = HEAP32[$36>>2]|0; - $38 = $27 & $34; - $39 = $30 & $37; - $40 = $4; - $41 = $40; - $42 = HEAP32[$41>>2]|0; - $43 = (($40) + 4)|0; - $44 = $43; - $45 = HEAP32[$44>>2]|0; - $46 = ($38|0)==($42|0); - $47 = ($39|0)==($45|0); - $48 = $46 & $47; - if ($48) { - break; - } - } - $49 = HEAP32[$p>>2]|0; - $50 = (($49) + 8|0); - $51 = HEAP16[$50>>1]|0; - $52 = $51 << 16 >> 16; - $53 = HEAP16[$5>>1]|0; - $54 = $53 << 16 >> 16; - $55 = ($52|0)<=($54|0); - if ($55) { - $56 = HEAP32[$p>>2]|0; - $57 = $56; - $58 = $57; - $59 = HEAP32[$58>>2]|0; - $60 = (($57) + 4)|0; - $61 = $60; - $62 = HEAP32[$61>>2]|0; - $63 = $4; - $64 = $63; - $65 = HEAP32[$64>>2]|0; - $66 = (($63) + 4)|0; - $67 = $66; - $68 = HEAP32[$67>>2]|0; - $69 = $59 & $65; - $70 = $62 & $68; - $71 = HEAP32[$p>>2]|0; - $72 = $71; - $73 = $72; - $74 = HEAP32[$73>>2]|0; - $75 = (($72) + 4)|0; - $76 = $75; - $77 = HEAP32[$76>>2]|0; - $78 = ($69|0)==($74|0); - $79 = ($70|0)==($77|0); - $80 = $78 & $79; - if ($80) { - label = 7; - break; - } - } - $81 = HEAP16[$i>>1]|0; - $82 = (($81) + -1)<<16>>16; - HEAP16[$i>>1] = $82; - $83 = HEAP32[$p>>2]|0; - $84 = (($83) + 16|0); - HEAP32[$p>>2] = $84; - } - if ((label|0) == 7) { - HEAP32[$2>>2] = 0; - $153 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($153|0); - } - do { - if ((label|0) == 9) { - $85 = HEAP32[$3>>2]|0; - $86 = HEAP16[$85>>1]|0; - $87 = $86&65535; - $88 = ($87|0)<(3); - $89 = HEAP32[$3>>2]|0; - if ($88) { - $90 = HEAP16[$89>>1]|0; - $91 = (($90) + 1)<<16>>16; - HEAP16[$89>>1] = $91; - $92 = $90&65535; - $93 = HEAP32[$3>>2]|0; - $94 = (($93) + 8|0); - $95 = (($94) + ($92<<4)|0); - HEAP32[$p>>2] = $95; - $96 = HEAP16[$6>>1]|0; - $97 = HEAP32[$p>>2]|0; - $98 = (($97) + 10|0); - HEAP16[$98>>1] = $96; - break; - } - $99 = (($89) + 8|0); - HEAP32[$p>>2] = $99; - HEAP16[$i>>1] = 1; - while(1) { - $100 = HEAP16[$i>>1]|0; - $101 = $100&65535; - $102 = HEAP32[$3>>2]|0; - $103 = HEAP16[$102>>1]|0; - $104 = $103&65535; - $105 = ($101|0)<($104|0); - $106 = HEAP32[$p>>2]|0; - $107 = (($106) + 8|0); - $108 = HEAP16[$107>>1]|0; - $109 = $108 << 16 >> 16; - if (!($105)) { - break; - } - $110 = HEAP16[$i>>1]|0; - $111 = $110&65535; - $112 = HEAP32[$3>>2]|0; - $113 = (($112) + 8|0); - $114 = (($113) + ($111<<4)|0); - $115 = (($114) + 8|0); - $116 = HEAP16[$115>>1]|0; - $117 = $116 << 16 >> 16; - $118 = ($109|0)>($117|0); - if ($118) { - $119 = HEAP32[$3>>2]|0; - $120 = (($119) + 8|0); - $121 = HEAP16[$i>>1]|0; - $122 = $121&65535; - $123 = (($120) + ($122<<4)|0); - HEAP32[$p>>2] = $123; - } - $124 = HEAP16[$i>>1]|0; - $125 = (($124) + 1)<<16>>16; - HEAP16[$i>>1] = $125; - } - $126 = HEAP16[$5>>1]|0; - $127 = $126 << 16 >> 16; - $128 = ($109|0)<=($127|0); - if ($128) { - HEAP32[$2>>2] = 0; - $153 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($153|0); - } - } - } while(0); - $129 = $4; - $130 = $129; - $131 = HEAP32[$130>>2]|0; - $132 = (($129) + 4)|0; - $133 = $132; - $134 = HEAP32[$133>>2]|0; - $135 = HEAP32[$p>>2]|0; - $136 = $135; - $137 = $136; - HEAP32[$137>>2] = $131; - $138 = (($136) + 4)|0; - $139 = $138; - HEAP32[$139>>2] = $134; - $140 = HEAP16[$5>>1]|0; - $141 = HEAP32[$p>>2]|0; - $142 = (($141) + 8|0); - HEAP16[$142>>1] = $140; - $143 = HEAP32[$p>>2]|0; - $144 = (($143) + 10|0); - $145 = HEAP16[$144>>1]|0; - $146 = $145 << 16 >> 16; - $147 = HEAP16[$6>>1]|0; - $148 = $147 << 16 >> 16; - $149 = ($146|0)>($148|0); - if ($149) { - $150 = HEAP16[$6>>1]|0; - $151 = HEAP32[$p>>2]|0; - $152 = (($151) + 10|0); - HEAP16[$152>>1] = $150; - } - HEAP32[$2>>2] = 1; - $153 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($153|0); -} -function _whereLoopInsert($pBuilder,$pTemplate) { - $pBuilder = $pBuilder|0; - $pTemplate = $pTemplate|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $db = 0, $p = 0, $pIndex = 0, $pToDel = 0, $pWInfo = 0, $ppPrev = 0, $ppTail = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $ppPrev = sp + 24|0; - $p = sp + 20|0; - $pWInfo = sp + 16|0; - $db = sp + 12|0; - $ppTail = sp + 8|0; - $pToDel = sp + 4|0; - $pIndex = sp; - HEAP32[$1>>2] = $pBuilder; - HEAP32[$2>>2] = $pTemplate; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$pWInfo>>2] = $4; - $5 = HEAP32[$pWInfo>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$db>>2] = $7; - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 16|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)!=(0|0); - if ($11) { - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 16|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = $15; - $17 = $16; - $18 = HEAP32[$17>>2]|0; - $19 = (($16) + 4)|0; - $20 = $19; - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$2>>2]|0; - $23 = (($22) + 20|0); - $24 = HEAP16[$23>>1]|0; - $25 = HEAP32[$2>>2]|0; - $26 = (($25) + 22|0); - $27 = HEAP16[$26>>1]|0; - (_whereOrInsert($14,$18,$21,$24,$27)|0); - HEAP32[$0>>2] = 0; - $91 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($91|0); - } - $28 = HEAP32[$pWInfo>>2]|0; - $29 = (($28) + 16|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$2>>2]|0; - _whereLoopAdjustCost($30,$31); - $32 = HEAP32[$pWInfo>>2]|0; - $33 = (($32) + 16|0); - $34 = HEAP32[$2>>2]|0; - $35 = (_whereLoopFindLesser($33,$34)|0); - HEAP32[$ppPrev>>2] = $35; - $36 = HEAP32[$ppPrev>>2]|0; - $37 = ($36|0)==(0|0); - if ($37) { - HEAP32[$0>>2] = 0; - $91 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($91|0); - } - $38 = HEAP32[$ppPrev>>2]|0; - $39 = HEAP32[$38>>2]|0; - HEAP32[$p>>2] = $39; - $40 = HEAP32[$p>>2]|0; - $41 = ($40|0)==(0|0); - L9: do { - if ($41) { - $42 = HEAP32[$db>>2]|0; - $43 = (_sqlite3DbMallocRaw($42,72)|0); - HEAP32[$p>>2] = $43; - $44 = HEAP32[$ppPrev>>2]|0; - HEAP32[$44>>2] = $43; - $45 = HEAP32[$p>>2]|0; - $46 = ($45|0)==(0|0); - if (!($46)) { - $47 = HEAP32[$p>>2]|0; - _whereLoopInit($47); - $48 = HEAP32[$p>>2]|0; - $49 = (($48) + 48|0); - HEAP32[$49>>2] = 0; - break; - } - HEAP32[$0>>2] = 7; - $91 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($91|0); - } else { - $50 = HEAP32[$p>>2]|0; - $51 = (($50) + 48|0); - HEAP32[$ppTail>>2] = $51; - while(1) { - $52 = HEAP32[$ppTail>>2]|0; - $53 = HEAP32[$52>>2]|0; - $54 = ($53|0)!=(0|0); - if (!($54)) { - break L9; - } - $55 = HEAP32[$ppTail>>2]|0; - $56 = HEAP32[$2>>2]|0; - $57 = (_whereLoopFindLesser($55,$56)|0); - HEAP32[$ppTail>>2] = $57; - $58 = HEAP32[$ppTail>>2]|0; - $59 = ($58|0)==(0|0); - if ($59) { - break L9; - } - $60 = HEAP32[$ppTail>>2]|0; - $61 = HEAP32[$60>>2]|0; - HEAP32[$pToDel>>2] = $61; - $62 = HEAP32[$pToDel>>2]|0; - $63 = ($62|0)==(0|0); - if ($63) { - break L9; - } - $64 = HEAP32[$pToDel>>2]|0; - $65 = (($64) + 48|0); - $66 = HEAP32[$65>>2]|0; - $67 = HEAP32[$ppTail>>2]|0; - HEAP32[$67>>2] = $66; - $68 = HEAP32[$db>>2]|0; - $69 = HEAP32[$pToDel>>2]|0; - _whereLoopDelete($68,$69); - } - } - } while(0); - $70 = HEAP32[$db>>2]|0; - $71 = HEAP32[$p>>2]|0; - $72 = HEAP32[$2>>2]|0; - (_whereLoopXfer($70,$71,$72)|0); - $73 = HEAP32[$p>>2]|0; - $74 = (($73) + 36|0); - $75 = HEAP32[$74>>2]|0; - $76 = $75 & 1024; - $77 = ($76|0)==(0); - if ($77) { - $78 = HEAP32[$p>>2]|0; - $79 = (($78) + 24|0); - $80 = (($79) + 4|0); - $81 = HEAP32[$80>>2]|0; - HEAP32[$pIndex>>2] = $81; - $82 = HEAP32[$pIndex>>2]|0; - $83 = ($82|0)!=(0|0); - if ($83) { - $84 = HEAP32[$pIndex>>2]|0; - $85 = (($84) + 44|0); - $86 = HEAP32[$85>>2]|0; - $87 = ($86|0)==(0); - if ($87) { - $88 = HEAP32[$p>>2]|0; - $89 = (($88) + 24|0); - $90 = (($89) + 4|0); - HEAP32[$90>>2] = 0; - } - } - } - HEAP32[$0>>2] = 0; - $91 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($91|0); -} -function _whereLoopAdjustCost($p,$pTemplate) { - $p = $p|0; - $pTemplate = $pTemplate|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $pTemplate; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 36|0); - $4 = HEAP32[$3>>2]|0; - $5 = $4 & 512; - $6 = ($5|0)==(0); - if ($6) { - STACKTOP = sp;return; - } - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 36|0); - $9 = HEAP32[$8>>2]|0; - $10 = $9 & 32768; - $11 = ($10|0)!=(0); - if ($11) { - STACKTOP = sp;return; - } - while(1) { - $12 = HEAP32[$0>>2]|0; - $13 = ($12|0)!=(0|0); - if (!($13)) { - break; - } - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 16|0); - $16 = HEAP8[$15>>0]|0; - $17 = $16&255; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 16|0); - $20 = HEAP8[$19>>0]|0; - $21 = $20&255; - $22 = ($17|0)!=($21|0); - do { - if (!($22)) { - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 36|0); - $25 = HEAP32[$24>>2]|0; - $26 = $25 & 512; - $27 = ($26|0)==(0); - if (!($27)) { - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 36|0); - $30 = HEAP32[$29>>2]|0; - $31 = $30 & 32768; - $32 = ($31|0)!=(0); - if (!($32)) { - $33 = HEAP32[$0>>2]|0; - $34 = HEAP32[$1>>2]|0; - $35 = (_whereLoopCheaperProperSubset($33,$34)|0); - $36 = ($35|0)!=(0); - if ($36) { - $37 = HEAP32[$0>>2]|0; - $38 = (($37) + 20|0); - $39 = HEAP16[$38>>1]|0; - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 20|0); - HEAP16[$41>>1] = $39; - $42 = HEAP32[$0>>2]|0; - $43 = (($42) + 22|0); - $44 = HEAP16[$43>>1]|0; - $45 = $44 << 16 >> 16; - $46 = (($45) - 1)|0; - $47 = $46&65535; - $48 = HEAP32[$1>>2]|0; - $49 = (($48) + 22|0); - HEAP16[$49>>1] = $47; - break; - } - $50 = HEAP32[$1>>2]|0; - $51 = HEAP32[$0>>2]|0; - $52 = (_whereLoopCheaperProperSubset($50,$51)|0); - $53 = ($52|0)!=(0); - if ($53) { - $54 = HEAP32[$0>>2]|0; - $55 = (($54) + 20|0); - $56 = HEAP16[$55>>1]|0; - $57 = HEAP32[$1>>2]|0; - $58 = (($57) + 20|0); - HEAP16[$58>>1] = $56; - $59 = HEAP32[$0>>2]|0; - $60 = (($59) + 22|0); - $61 = HEAP16[$60>>1]|0; - $62 = $61 << 16 >> 16; - $63 = (($62) + 1)|0; - $64 = $63&65535; - $65 = HEAP32[$1>>2]|0; - $66 = (($65) + 22|0); - HEAP16[$66>>1] = $64; - } - } - } - } - } while(0); - $67 = HEAP32[$0>>2]|0; - $68 = (($67) + 48|0); - $69 = HEAP32[$68>>2]|0; - HEAP32[$0>>2] = $69; - } - STACKTOP = sp;return; -} -function _whereLoopFindLesser($ppPrev,$pTemplate) { - $ppPrev = $ppPrev|0; - $pTemplate = $pTemplate|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; - var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; - var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; - var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; - var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; - var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $p = sp; - HEAP32[$1>>2] = $ppPrev; - HEAP32[$2>>2] = $pTemplate; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$p>>2] = $4; - while(1) { - $5 = HEAP32[$p>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - label = 14; - break; - } - $7 = HEAP32[$p>>2]|0; - $8 = (($7) + 16|0); - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 16|0); - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - $15 = ($10|0)!=($14|0); - if (!($15)) { - $16 = HEAP32[$p>>2]|0; - $17 = (($16) + 17|0); - $18 = HEAP8[$17>>0]|0; - $19 = $18&255; - $20 = HEAP32[$2>>2]|0; - $21 = (($20) + 17|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = ($19|0)!=($23|0); - if (!($24)) { - $25 = HEAP32[$p>>2]|0; - $26 = $25; - $27 = $26; - $28 = HEAP32[$27>>2]|0; - $29 = (($26) + 4)|0; - $30 = $29; - $31 = HEAP32[$30>>2]|0; - $32 = HEAP32[$2>>2]|0; - $33 = $32; - $34 = $33; - $35 = HEAP32[$34>>2]|0; - $36 = (($33) + 4)|0; - $37 = $36; - $38 = HEAP32[$37>>2]|0; - $39 = $28 & $35; - $40 = $31 & $38; - $41 = HEAP32[$p>>2]|0; - $42 = $41; - $43 = $42; - $44 = HEAP32[$43>>2]|0; - $45 = (($42) + 4)|0; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = ($39|0)==($44|0); - $49 = ($40|0)==($47|0); - $50 = $48 & $49; - if ($50) { - $51 = HEAP32[$p>>2]|0; - $52 = (($51) + 18|0); - $53 = HEAP16[$52>>1]|0; - $54 = $53 << 16 >> 16; - $55 = HEAP32[$2>>2]|0; - $56 = (($55) + 18|0); - $57 = HEAP16[$56>>1]|0; - $58 = $57 << 16 >> 16; - $59 = ($54|0)<=($58|0); - if ($59) { - $60 = HEAP32[$p>>2]|0; - $61 = (($60) + 20|0); - $62 = HEAP16[$61>>1]|0; - $63 = $62 << 16 >> 16; - $64 = HEAP32[$2>>2]|0; - $65 = (($64) + 20|0); - $66 = HEAP16[$65>>1]|0; - $67 = $66 << 16 >> 16; - $68 = ($63|0)<=($67|0); - if ($68) { - $69 = HEAP32[$p>>2]|0; - $70 = (($69) + 22|0); - $71 = HEAP16[$70>>1]|0; - $72 = $71 << 16 >> 16; - $73 = HEAP32[$2>>2]|0; - $74 = (($73) + 22|0); - $75 = HEAP16[$74>>1]|0; - $76 = $75 << 16 >> 16; - $77 = ($72|0)<=($76|0); - if ($77) { - label = 9; - break; - } - } - } - } - $78 = HEAP32[$p>>2]|0; - $79 = $78; - $80 = $79; - $81 = HEAP32[$80>>2]|0; - $82 = (($79) + 4)|0; - $83 = $82; - $84 = HEAP32[$83>>2]|0; - $85 = HEAP32[$2>>2]|0; - $86 = $85; - $87 = $86; - $88 = HEAP32[$87>>2]|0; - $89 = (($86) + 4)|0; - $90 = $89; - $91 = HEAP32[$90>>2]|0; - $92 = $81 & $88; - $93 = $84 & $91; - $94 = HEAP32[$2>>2]|0; - $95 = $94; - $96 = $95; - $97 = HEAP32[$96>>2]|0; - $98 = (($95) + 4)|0; - $99 = $98; - $100 = HEAP32[$99>>2]|0; - $101 = ($92|0)==($97|0); - $102 = ($93|0)==($100|0); - $103 = $101 & $102; - if ($103) { - $104 = HEAP32[$p>>2]|0; - $105 = (($104) + 20|0); - $106 = HEAP16[$105>>1]|0; - $107 = $106 << 16 >> 16; - $108 = HEAP32[$2>>2]|0; - $109 = (($108) + 20|0); - $110 = HEAP16[$109>>1]|0; - $111 = $110 << 16 >> 16; - $112 = ($107|0)>=($111|0); - if ($112) { - $113 = HEAP32[$p>>2]|0; - $114 = (($113) + 22|0); - $115 = HEAP16[$114>>1]|0; - $116 = $115 << 16 >> 16; - $117 = HEAP32[$2>>2]|0; - $118 = (($117) + 22|0); - $119 = HEAP16[$118>>1]|0; - $120 = $119 << 16 >> 16; - $121 = ($116|0)>=($120|0); - if ($121) { - label = 14; - break; - } - } - } - } - } - $122 = HEAP32[$p>>2]|0; - $123 = (($122) + 48|0); - HEAP32[$1>>2] = $123; - $124 = HEAP32[$1>>2]|0; - $125 = HEAP32[$124>>2]|0; - HEAP32[$p>>2] = $125; - } - if ((label|0) == 9) { - HEAP32[$0>>2] = 0; - $127 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($127|0); - } - else if ((label|0) == 14) { - $126 = HEAP32[$1>>2]|0; - HEAP32[$0>>2] = $126; - $127 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($127|0); - } - return 0|0; -} -function _whereLoopXfer($db,$pTo,$pFrom) { - $db = $db|0; - $pTo = $pTo|0; - $pFrom = $pFrom|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pTo; - HEAP32[$3>>2] = $pFrom; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - _whereLoopClearUnion($4,$5); - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$3>>2]|0; - $9 = (($8) + 40|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10&65535; - $12 = (_whereLoopResize($6,$7,$11)|0); - $13 = ($12|0)!=(0); - $14 = HEAP32[$2>>2]|0; - if ($13) { - $15 = (($14) + 24|0); - ;HEAP32[$15+0>>2]=0|0;HEAP32[$15+4>>2]=0|0;HEAP32[$15+8>>2]=0|0; - HEAP32[$0>>2] = 7; - $43 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($43|0); - } - $16 = HEAP32[$3>>2]|0; - dest=$14+0|0; src=$16+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0));HEAP16[$14+40>>1]=HEAP16[$16+40>>1]|0; - $17 = HEAP32[$2>>2]|0; - $18 = (($17) + 44|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$3>>2]|0; - $21 = (($20) + 44|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$2>>2]|0; - $24 = (($23) + 40|0); - $25 = HEAP16[$24>>1]|0; - $26 = $25&65535; - $27 = $26<<2; - _memcpy(($19|0),($22|0),($27|0))|0; - $28 = HEAP32[$3>>2]|0; - $29 = (($28) + 36|0); - $30 = HEAP32[$29>>2]|0; - $31 = $30 & 1024; - $32 = ($31|0)!=(0); - $33 = HEAP32[$3>>2]|0; - if ($32) { - $34 = (($33) + 24|0); - $35 = (($34) + 4|0); - HEAP8[$35>>0] = 0; - } else { - $36 = (($33) + 36|0); - $37 = HEAP32[$36>>2]|0; - $38 = $37 & 16384; - $39 = ($38|0)!=(0); - if ($39) { - $40 = HEAP32[$3>>2]|0; - $41 = (($40) + 24|0); - $42 = (($41) + 4|0); - HEAP32[$42>>2] = 0; - } - } - HEAP32[$0>>2] = 0; - $43 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($43|0); -} -function _whereLoopCheaperProperSubset($pX,$pY) { - $pX = $pX|0; - $pY = $pY|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $i = 0, $j = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $i = sp + 4|0; - $j = sp; - HEAP32[$1>>2] = $pX; - HEAP32[$2>>2] = $pY; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 40|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5&65535; - $7 = HEAP32[$2>>2]|0; - $8 = (($7) + 40|0); - $9 = HEAP16[$8>>1]|0; - $10 = $9&65535; - $11 = ($6|0)>=($10|0); - if ($11) { - HEAP32[$0>>2] = 0; - $72 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($72|0); - } - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 20|0); - $14 = HEAP16[$13>>1]|0; - $15 = $14 << 16 >> 16; - $16 = HEAP32[$2>>2]|0; - $17 = (($16) + 20|0); - $18 = HEAP16[$17>>1]|0; - $19 = $18 << 16 >> 16; - $20 = ($15|0)>=($19|0); - if ($20) { - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 20|0); - $23 = HEAP16[$22>>1]|0; - $24 = $23 << 16 >> 16; - $25 = HEAP32[$2>>2]|0; - $26 = (($25) + 20|0); - $27 = HEAP16[$26>>1]|0; - $28 = $27 << 16 >> 16; - $29 = ($24|0)>($28|0); - if ($29) { - HEAP32[$0>>2] = 0; - $72 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($72|0); - } - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 22|0); - $32 = HEAP16[$31>>1]|0; - $33 = $32 << 16 >> 16; - $34 = HEAP32[$2>>2]|0; - $35 = (($34) + 22|0); - $36 = HEAP16[$35>>1]|0; - $37 = $36 << 16 >> 16; - $38 = ($33|0)>($37|0); - if ($38) { - HEAP32[$0>>2] = 0; - $72 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($72|0); - } - } - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 40|0); - $41 = HEAP16[$40>>1]|0; - $42 = $41&65535; - $43 = (($42) - 1)|0; - HEAP32[$i>>2] = $43; - while(1) { - $44 = HEAP32[$i>>2]|0; - $45 = ($44|0)>=(0); - if (!($45)) { - label = 17; - break; - } - $46 = HEAP32[$2>>2]|0; - $47 = (($46) + 40|0); - $48 = HEAP16[$47>>1]|0; - $49 = $48&65535; - $50 = (($49) - 1)|0; - HEAP32[$j>>2] = $50; - while(1) { - $51 = HEAP32[$j>>2]|0; - $52 = ($51|0)>=(0); - if (!($52)) { - break; - } - $53 = HEAP32[$j>>2]|0; - $54 = HEAP32[$2>>2]|0; - $55 = (($54) + 44|0); - $56 = HEAP32[$55>>2]|0; - $57 = (($56) + ($53<<2)|0); - $58 = HEAP32[$57>>2]|0; - $59 = HEAP32[$i>>2]|0; - $60 = HEAP32[$1>>2]|0; - $61 = (($60) + 44|0); - $62 = HEAP32[$61>>2]|0; - $63 = (($62) + ($59<<2)|0); - $64 = HEAP32[$63>>2]|0; - $65 = ($58|0)==($64|0); - if ($65) { - break; - } - $66 = HEAP32[$j>>2]|0; - $67 = (($66) + -1)|0; - HEAP32[$j>>2] = $67; - } - $68 = HEAP32[$j>>2]|0; - $69 = ($68|0)<(0); - if ($69) { - label = 15; - break; - } - $70 = HEAP32[$i>>2]|0; - $71 = (($70) + -1)|0; - HEAP32[$i>>2] = $71; - } - if ((label|0) == 15) { - HEAP32[$0>>2] = 0; - $72 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($72|0); - } - else if ((label|0) == 17) { - HEAP32[$0>>2] = 1; - $72 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($72|0); - } - return 0|0; -} -function _whereUsablePartialIndex($iTab,$pWC,$pWhere) { - $iTab = $iTab|0; - $pWC = $pWC|0; - $pWhere = $pWhere|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $i = 0, $pTerm = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $i = sp + 4|0; - $pTerm = sp; - HEAP32[$1>>2] = $iTab; - HEAP32[$2>>2] = $pWC; - HEAP32[$3>>2] = $pWhere; - HEAP32[$i>>2] = 0; - $4 = HEAP32[$2>>2]|0; - $5 = (($4) + 20|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$pTerm>>2] = $6; - while(1) { - $7 = HEAP32[$i>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = (($8) + 12|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($7|0)<($10|0); - if (!($11)) { - label = 6; - break; - } - $12 = HEAP32[$pTerm>>2]|0; - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$3>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = (_sqlite3ExprImpliesExpr($13,$14,$15)|0); - $17 = ($16|0)!=(0); - if ($17) { - label = 4; - break; - } - $18 = HEAP32[$i>>2]|0; - $19 = (($18) + 1)|0; - HEAP32[$i>>2] = $19; - $20 = HEAP32[$pTerm>>2]|0; - $21 = (($20) + 48|0); - HEAP32[$pTerm>>2] = $21; - } - if ((label|0) == 4) { - HEAP32[$0>>2] = 1; - $22 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($22|0); - } - else if ((label|0) == 6) { - HEAP32[$0>>2] = 0; - $22 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($22|0); - } - return 0|0; -} -function _indexMightHelpWithOrderBy($pBuilder,$pIndex,$iCursor) { - $pBuilder = $pBuilder|0; - $pIndex = $pIndex|0; - $iCursor = $iCursor|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ii = 0; - var $jj = 0, $pExpr = 0, $pOB = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $pOB = sp + 12|0; - $ii = sp + 8|0; - $jj = sp + 4|0; - $pExpr = sp; - HEAP32[$1>>2] = $pBuilder; - HEAP32[$2>>2] = $pIndex; - HEAP32[$3>>2] = $iCursor; - $4 = HEAP32[$2>>2]|0; - $5 = (($4) + 55|0); - $6 = HEAP8[$5>>0]|0; - $7 = ($6&255) >>> 2; - $8 = $7 & 1; - $9 = $8&255; - $10 = ($9|0)!=(0); - if ($10) { - HEAP32[$0>>2] = 0; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); - } - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + 8|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$pOB>>2] = $14; - $15 = ($14|0)==(0|0); - if ($15) { - HEAP32[$0>>2] = 0; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); - } - HEAP32[$ii>>2] = 0; - L9: while(1) { - $16 = HEAP32[$ii>>2]|0; - $17 = HEAP32[$pOB>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = ($16|0)<($18|0); - if (!($19)) { - label = 16; - break; - } - $20 = HEAP32[$ii>>2]|0; - $21 = HEAP32[$pOB>>2]|0; - $22 = (($21) + 4|0); - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + (($20*20)|0)|0); - $25 = HEAP32[$24>>2]|0; - $26 = (_sqlite3ExprSkipCollate($25)|0); - HEAP32[$pExpr>>2] = $26; - $27 = HEAP32[$pExpr>>2]|0; - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = ($29|0)!=(154); - if ($30) { - label = 8; - break; - } - $31 = HEAP32[$pExpr>>2]|0; - $32 = (($31) + 28|0); - $33 = HEAP32[$32>>2]|0; - $34 = HEAP32[$3>>2]|0; - $35 = ($33|0)==($34|0); - L13: do { - if ($35) { - HEAP32[$jj>>2] = 0; - while(1) { - $36 = HEAP32[$jj>>2]|0; - $37 = HEAP32[$2>>2]|0; - $38 = (($37) + 50|0); - $39 = HEAP16[$38>>1]|0; - $40 = $39&65535; - $41 = ($36|0)<($40|0); - if (!($41)) { - break L13; - } - $42 = HEAP32[$pExpr>>2]|0; - $43 = (($42) + 32|0); - $44 = HEAP16[$43>>1]|0; - $45 = $44 << 16 >> 16; - $46 = HEAP32[$jj>>2]|0; - $47 = HEAP32[$2>>2]|0; - $48 = (($47) + 4|0); - $49 = HEAP32[$48>>2]|0; - $50 = (($49) + ($46<<1)|0); - $51 = HEAP16[$50>>1]|0; - $52 = $51 << 16 >> 16; - $53 = ($45|0)==($52|0); - if ($53) { - label = 13; - break L9; - } - $54 = HEAP32[$jj>>2]|0; - $55 = (($54) + 1)|0; - HEAP32[$jj>>2] = $55; - } - } - } while(0); - $56 = HEAP32[$ii>>2]|0; - $57 = (($56) + 1)|0; - HEAP32[$ii>>2] = $57; - } - if ((label|0) == 8) { - HEAP32[$0>>2] = 0; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); - } - else if ((label|0) == 13) { - HEAP32[$0>>2] = 1; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); - } - else if ((label|0) == 16) { - HEAP32[$0>>2] = 0; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); - } - return 0|0; -} -function _whereLoopOutputAdjust($pWC,$pLoop) { - $pWC = $pWC|0; - $pLoop = $pLoop|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; - var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; - var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; - var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; - var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; - var $97 = 0, $98 = 0, $99 = 0, $i = 0, $j = 0, $notAllowed = 0, $pTerm = 0, $pX = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $pTerm = sp + 20|0; - $pX = sp + 16|0; - $notAllowed = sp; - $i = sp + 12|0; - $j = sp + 8|0; - HEAP32[$0>>2] = $pWC; - HEAP32[$1>>2] = $pLoop; - $2 = HEAP32[$1>>2]|0; - $3 = $2; - $4 = $3; - $5 = HEAP32[$4>>2]|0; - $6 = (($3) + 4)|0; - $7 = $6; - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 8|0); - $11 = $10; - $12 = $11; - $13 = HEAP32[$12>>2]|0; - $14 = (($11) + 4)|0; - $15 = $14; - $16 = HEAP32[$15>>2]|0; - $17 = $5 | $13; - $18 = $8 | $16; - $19 = $17 ^ -1; - $20 = $18 ^ -1; - $21 = $notAllowed; - $22 = $21; - HEAP32[$22>>2] = $19; - $23 = (($21) + 4)|0; - $24 = $23; - HEAP32[$24>>2] = $20; - $25 = HEAP32[$0>>2]|0; - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$26>>2]|0; - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + 60|0); - $30 = HEAP16[$29>>1]|0; - $31 = $30&65535; - $32 = $31 & 4096; - $33 = ($32|0)==(0); - if (!($33)) { - STACKTOP = sp;return; - } - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 12|0); - $36 = HEAP32[$35>>2]|0; - HEAP32[$i>>2] = $36; - $37 = HEAP32[$0>>2]|0; - $38 = (($37) + 20|0); - $39 = HEAP32[$38>>2]|0; - HEAP32[$pTerm>>2] = $39; - while(1) { - $40 = HEAP32[$i>>2]|0; - $41 = ($40|0)>(0); - if (!($41)) { - label = 19; - break; - } - $42 = HEAP32[$pTerm>>2]|0; - $43 = (($42) + 20|0); - $44 = HEAP8[$43>>0]|0; - $45 = $44&255; - $46 = $45 & 2; - $47 = ($46|0)!=(0); - if ($47) { - label = 19; - break; - } - $48 = HEAP32[$pTerm>>2]|0; - $49 = (($48) + 40|0); - $50 = $49; - $51 = $50; - $52 = HEAP32[$51>>2]|0; - $53 = (($50) + 4)|0; - $54 = $53; - $55 = HEAP32[$54>>2]|0; - $56 = HEAP32[$1>>2]|0; - $57 = (($56) + 8|0); - $58 = $57; - $59 = $58; - $60 = HEAP32[$59>>2]|0; - $61 = (($58) + 4)|0; - $62 = $61; - $63 = HEAP32[$62>>2]|0; - $64 = $52 & $60; - $65 = $55 & $63; - $66 = ($64|0)==(0); - $67 = ($65|0)==(0); - $68 = $66 & $67; - if (!($68)) { - $69 = HEAP32[$pTerm>>2]|0; - $70 = (($69) + 40|0); - $71 = $70; - $72 = $71; - $73 = HEAP32[$72>>2]|0; - $74 = (($71) + 4)|0; - $75 = $74; - $76 = HEAP32[$75>>2]|0; - $77 = $notAllowed; - $78 = $77; - $79 = HEAP32[$78>>2]|0; - $80 = (($77) + 4)|0; - $81 = $80; - $82 = HEAP32[$81>>2]|0; - $83 = $73 & $79; - $84 = $76 & $82; - $85 = ($83|0)!=(0); - $86 = ($84|0)!=(0); - $87 = $85 | $86; - if (!($87)) { - $88 = HEAP32[$1>>2]|0; - $89 = (($88) + 40|0); - $90 = HEAP16[$89>>1]|0; - $91 = $90&65535; - $92 = (($91) - 1)|0; - HEAP32[$j>>2] = $92; - while(1) { - $93 = HEAP32[$j>>2]|0; - $94 = ($93|0)>=(0); - if (!($94)) { - break; - } - $95 = HEAP32[$j>>2]|0; - $96 = HEAP32[$1>>2]|0; - $97 = (($96) + 44|0); - $98 = HEAP32[$97>>2]|0; - $99 = (($98) + ($95<<2)|0); - $100 = HEAP32[$99>>2]|0; - HEAP32[$pX>>2] = $100; - $101 = HEAP32[$pX>>2]|0; - $102 = ($101|0)==(0|0); - if (!($102)) { - $103 = HEAP32[$pX>>2]|0; - $104 = HEAP32[$pTerm>>2]|0; - $105 = ($103|0)==($104|0); - if ($105) { - break; - } - $106 = HEAP32[$pX>>2]|0; - $107 = (($106) + 4|0); - $108 = HEAP32[$107>>2]|0; - $109 = ($108|0)>=(0); - if ($109) { - $110 = HEAP32[$pX>>2]|0; - $111 = (($110) + 4|0); - $112 = HEAP32[$111>>2]|0; - $113 = HEAP32[$0>>2]|0; - $114 = (($113) + 20|0); - $115 = HEAP32[$114>>2]|0; - $116 = (($115) + (($112*48)|0)|0); - $117 = HEAP32[$pTerm>>2]|0; - $118 = ($116|0)==($117|0); - if ($118) { - break; - } - } - } - $119 = HEAP32[$j>>2]|0; - $120 = (($119) + -1)|0; - HEAP32[$j>>2] = $120; - } - $121 = HEAP32[$j>>2]|0; - $122 = ($121|0)<(0); - if ($122) { - $123 = HEAP32[$pTerm>>2]|0; - $124 = (($123) + 16|0); - $125 = HEAP16[$124>>1]|0; - $126 = $125 << 16 >> 16; - $127 = ($126|0)<=(0); - if ($127) { - $128 = HEAP32[$pTerm>>2]|0; - $129 = (($128) + 16|0); - $130 = HEAP16[$129>>1]|0; - $131 = $130 << 16 >> 16; - $137 = $131; - } else { - $137 = -1; - } - $132 = HEAP32[$1>>2]|0; - $133 = (($132) + 22|0); - $134 = HEAP16[$133>>1]|0; - $135 = $134 << 16 >> 16; - $136 = (($135) + ($137))|0; - $138 = $136&65535; - HEAP16[$133>>1] = $138; - } - } - } - $139 = HEAP32[$i>>2]|0; - $140 = (($139) + -1)|0; - HEAP32[$i>>2] = $140; - $141 = HEAP32[$pTerm>>2]|0; - $142 = (($141) + 48|0); - HEAP32[$pTerm>>2] = $142; - } - if ((label|0) == 19) { - STACKTOP = sp;return; - } -} -function _columnsInIndex($pIdx) { - $pIdx = $pIdx|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $j = 0, $m = 0, $or$cond = 0, $x = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $m = sp; - $j = sp + 12|0; - $x = sp + 8|0; - HEAP32[$0>>2] = $pIdx; - $1 = $m; - $2 = $1; - HEAP32[$2>>2] = 0; - $3 = (($1) + 4)|0; - $4 = $3; - HEAP32[$4>>2] = 0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 52|0); - $7 = HEAP16[$6>>1]|0; - $8 = $7&65535; - $9 = (($8) - 1)|0; - HEAP32[$j>>2] = $9; - while(1) { - $10 = HEAP32[$j>>2]|0; - $11 = ($10|0)>=(0); - if (!($11)) { - break; - } - $12 = HEAP32[$j>>2]|0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + ($12<<1)|0); - $17 = HEAP16[$16>>1]|0; - $18 = $17 << 16 >> 16; - HEAP32[$x>>2] = $18; - $19 = HEAP32[$x>>2]|0; - $20 = ($19|0)>=(0); - $21 = HEAP32[$x>>2]|0; - $22 = ($21|0)<(63); - $or$cond = $20 & $22; - if ($or$cond) { - $23 = HEAP32[$x>>2]|0; - $24 = (_bitshift64Shl(1,0,($23|0))|0); - $25 = tempRet0; - $26 = $m; - $27 = $26; - $28 = HEAP32[$27>>2]|0; - $29 = (($26) + 4)|0; - $30 = $29; - $31 = HEAP32[$30>>2]|0; - $32 = $28 | $24; - $33 = $31 | $25; - $34 = $m; - $35 = $34; - HEAP32[$35>>2] = $32; - $36 = (($34) + 4)|0; - $37 = $36; - HEAP32[$37>>2] = $33; - } - $38 = HEAP32[$j>>2]|0; - $39 = (($38) + -1)|0; - HEAP32[$j>>2] = $39; - } - $40 = $m; - $41 = $40; - $42 = HEAP32[$41>>2]|0; - $43 = (($40) + 4)|0; - $44 = $43; - $45 = HEAP32[$44>>2]|0; - tempRet0 = $45; - STACKTOP = sp;return ($42|0); -} -function _whereLoopAddBtreeIndex($pBuilder,$pSrc,$pProbe,$nInMul) { - $pBuilder = $pBuilder|0; - $pSrc = $pSrc|0; - $pProbe = $pProbe|0; - $nInMul = $nInMul|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; - var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; - var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; - var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; - var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; - var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; - var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; - var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; - var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; - var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; - var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; - var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $eOp = 0, $iCol = 0, $nEq = 0, $nIn = 0, $nIter = 0, $nOutUnadjusted = 0, $opMask = 0, $pBtm = 0, $pExpr = 0, $pNew = 0; - var $pParse = 0, $pTerm = 0, $pTop = 0, $pWInfo = 0, $rCostIdx = 0, $rLogSize = 0, $rc = 0, $saved_nEq = 0, $saved_nLTerm = 0, $saved_nOut = 0, $saved_nSkip = 0, $saved_prereq = 0, $saved_wsFlags = 0, $scan = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 224|0; - $0 = sp + 188|0; - $1 = sp + 184|0; - $2 = sp + 180|0; - $3 = sp + 176|0; - $4 = sp + 210|0; - $pWInfo = sp + 172|0; - $pParse = sp + 168|0; - $db = sp + 164|0; - $pNew = sp + 160|0; - $pTerm = sp + 156|0; - $opMask = sp + 152|0; - $scan = sp + 40|0; - $saved_prereq = sp; - $saved_nLTerm = sp + 208|0; - $saved_nEq = sp + 206|0; - $saved_nSkip = sp + 204|0; - $saved_wsFlags = sp + 36|0; - $saved_nOut = sp + 202|0; - $iCol = sp + 32|0; - $rc = sp + 28|0; - $rLogSize = sp + 200|0; - $pTop = sp + 24|0; - $pBtm = sp + 20|0; - $nIter = sp + 198|0; - $eOp = sp + 196|0; - $rCostIdx = sp + 194|0; - $nOutUnadjusted = sp + 192|0; - $nIn = sp + 16|0; - $pExpr = sp + 12|0; - $nEq = sp + 8|0; - HEAP32[$1>>2] = $pBuilder; - HEAP32[$2>>2] = $pSrc; - HEAP32[$3>>2] = $pProbe; - HEAP16[$4>>1] = $nInMul; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$pWInfo>>2] = $6; - $7 = HEAP32[$pWInfo>>2]|0; - $8 = HEAP32[$7>>2]|0; - HEAP32[$pParse>>2] = $8; - $9 = HEAP32[$pParse>>2]|0; - $10 = HEAP32[$9>>2]|0; - HEAP32[$db>>2] = $10; - HEAP32[$rc>>2] = 0; - HEAP32[$pTop>>2] = 0; - HEAP32[$pBtm>>2] = 0; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 12|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pNew>>2] = $13; - $14 = HEAP32[$db>>2]|0; - $15 = (($14) + 64|0); - $16 = HEAP8[$15>>0]|0; - $17 = ($16<<24>>24)!=(0); - if ($17) { - HEAP32[$0>>2] = 7; - $628 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($628|0); - } - $18 = HEAP32[$pNew>>2]|0; - $19 = (($18) + 36|0); - $20 = HEAP32[$19>>2]|0; - $21 = $20 & 32; - $22 = ($21|0)!=(0); - do { - if ($22) { - HEAP32[$opMask>>2] = 24; - } else { - $23 = HEAP32[$3>>2]|0; - $24 = (($23) + 44|0); - $25 = HEAP32[$24>>2]|0; - $26 = ($25|0)<=(0); - if (!($26)) { - $27 = HEAP32[$2>>2]|0; - $28 = (($27) + 36|0); - $29 = HEAP8[$28>>0]|0; - $30 = $29&255; - $31 = $30 & 8; - $32 = ($31|0)!=(0); - if (!($32)) { - HEAP32[$opMask>>2] = 191; - break; - } - } - HEAP32[$opMask>>2] = 63; - } - } while(0); - $33 = HEAP32[$3>>2]|0; - $34 = (($33) + 55|0); - $35 = HEAP8[$34>>0]|0; - $36 = ($35&255) >>> 2; - $37 = $36 & 1; - $38 = $37&255; - $39 = ($38|0)!=(0); - if ($39) { - $40 = HEAP32[$opMask>>2]|0; - $41 = $40 & -61; - HEAP32[$opMask>>2] = $41; - } - $42 = HEAP32[$pNew>>2]|0; - $43 = (($42) + 24|0); - $44 = HEAP16[$43>>1]|0; - $45 = $44&65535; - $46 = HEAP32[$3>>2]|0; - $47 = (($46) + 50|0); - $48 = HEAP16[$47>>1]|0; - $49 = $48&65535; - $50 = ($45|0)<($49|0); - if ($50) { - $51 = HEAP32[$pNew>>2]|0; - $52 = (($51) + 24|0); - $53 = HEAP16[$52>>1]|0; - $54 = $53&65535; - $55 = HEAP32[$3>>2]|0; - $56 = (($55) + 4|0); - $57 = HEAP32[$56>>2]|0; - $58 = (($57) + ($54<<1)|0); - $59 = HEAP16[$58>>1]|0; - $60 = $59 << 16 >> 16; - HEAP32[$iCol>>2] = $60; - } else { - HEAP32[$iCol>>2] = -1; - } - $61 = HEAP32[$1>>2]|0; - $62 = (($61) + 4|0); - $63 = HEAP32[$62>>2]|0; - $64 = HEAP32[$2>>2]|0; - $65 = (($64) + 40|0); - $66 = HEAP32[$65>>2]|0; - $67 = HEAP32[$iCol>>2]|0; - $68 = HEAP32[$opMask>>2]|0; - $69 = HEAP32[$3>>2]|0; - $70 = (_whereScanInit($scan,$63,$66,$67,$68,$69)|0); - HEAP32[$pTerm>>2] = $70; - $71 = HEAP32[$pNew>>2]|0; - $72 = (($71) + 24|0); - $73 = HEAP16[$72>>1]|0; - HEAP16[$saved_nEq>>1] = $73; - $74 = HEAP32[$pNew>>2]|0; - $75 = (($74) + 24|0); - $76 = (($75) + 2|0); - $77 = HEAP16[$76>>1]|0; - HEAP16[$saved_nSkip>>1] = $77; - $78 = HEAP32[$pNew>>2]|0; - $79 = (($78) + 40|0); - $80 = HEAP16[$79>>1]|0; - HEAP16[$saved_nLTerm>>1] = $80; - $81 = HEAP32[$pNew>>2]|0; - $82 = (($81) + 36|0); - $83 = HEAP32[$82>>2]|0; - HEAP32[$saved_wsFlags>>2] = $83; - $84 = HEAP32[$pNew>>2]|0; - $85 = $84; - $86 = $85; - $87 = HEAP32[$86>>2]|0; - $88 = (($85) + 4)|0; - $89 = $88; - $90 = HEAP32[$89>>2]|0; - $91 = $saved_prereq; - $92 = $91; - HEAP32[$92>>2] = $87; - $93 = (($91) + 4)|0; - $94 = $93; - HEAP32[$94>>2] = $90; - $95 = HEAP32[$pNew>>2]|0; - $96 = (($95) + 22|0); - $97 = HEAP16[$96>>1]|0; - HEAP16[$saved_nOut>>1] = $97; - $98 = HEAP32[$pNew>>2]|0; - $99 = (($98) + 18|0); - HEAP16[$99>>1] = 0; - $100 = HEAP32[$3>>2]|0; - $101 = (($100) + 8|0); - $102 = HEAP32[$101>>2]|0; - $103 = HEAP16[$102>>1]|0; - $104 = (_estLog($103)|0); - HEAP16[$rLogSize>>1] = $104; - $105 = HEAP32[$pTerm>>2]|0; - $106 = ($105|0)==(0|0); - if ($106) { - $107 = HEAP16[$saved_nEq>>1]|0; - $108 = $107&65535; - $109 = HEAP16[$saved_nSkip>>1]|0; - $110 = $109&65535; - $111 = ($108|0)==($110|0); - if ($111) { - $112 = HEAP16[$saved_nEq>>1]|0; - $113 = $112&65535; - $114 = (($113) + 1)|0; - $115 = HEAP32[$3>>2]|0; - $116 = (($115) + 50|0); - $117 = HEAP16[$116>>1]|0; - $118 = $117&65535; - $119 = ($114|0)<($118|0); - if ($119) { - $120 = HEAP16[$saved_nEq>>1]|0; - $121 = $120&65535; - $122 = (($121) + 1)|0; - $123 = HEAP32[$3>>2]|0; - $124 = (($123) + 8|0); - $125 = HEAP32[$124>>2]|0; - $126 = (($125) + ($122<<1)|0); - $127 = HEAP16[$126>>1]|0; - $128 = $127 << 16 >> 16; - $129 = ($128|0)>=(42); - if ($129) { - $130 = HEAP32[$db>>2]|0; - $131 = HEAP32[$pNew>>2]|0; - $132 = HEAP32[$pNew>>2]|0; - $133 = (($132) + 40|0); - $134 = HEAP16[$133>>1]|0; - $135 = $134&65535; - $136 = (($135) + 1)|0; - $137 = (_whereLoopResize($130,$131,$136)|0); - HEAP32[$rc>>2] = $137; - $138 = ($137|0)==(0); - if ($138) { - $139 = HEAP32[$pNew>>2]|0; - $140 = (($139) + 24|0); - $141 = HEAP16[$140>>1]|0; - $142 = (($141) + 1)<<16>>16; - HEAP16[$140>>1] = $142; - $143 = HEAP32[$pNew>>2]|0; - $144 = (($143) + 24|0); - $145 = (($144) + 2|0); - $146 = HEAP16[$145>>1]|0; - $147 = (($146) + 1)<<16>>16; - HEAP16[$145>>1] = $147; - $148 = HEAP32[$pNew>>2]|0; - $149 = (($148) + 40|0); - $150 = HEAP16[$149>>1]|0; - $151 = (($150) + 1)<<16>>16; - HEAP16[$149>>1] = $151; - $152 = $150&65535; - $153 = HEAP32[$pNew>>2]|0; - $154 = (($153) + 44|0); - $155 = HEAP32[$154>>2]|0; - $156 = (($155) + ($152<<2)|0); - HEAP32[$156>>2] = 0; - $157 = HEAP32[$pNew>>2]|0; - $158 = (($157) + 36|0); - $159 = HEAP32[$158>>2]|0; - $160 = $159 | 32768; - HEAP32[$158>>2] = $160; - $161 = HEAP16[$saved_nEq>>1]|0; - $162 = $161&65535; - $163 = HEAP32[$3>>2]|0; - $164 = (($163) + 8|0); - $165 = HEAP32[$164>>2]|0; - $166 = (($165) + ($162<<1)|0); - $167 = HEAP16[$166>>1]|0; - $168 = $167 << 16 >> 16; - $169 = HEAP16[$saved_nEq>>1]|0; - $170 = $169&65535; - $171 = (($170) + 1)|0; - $172 = HEAP32[$3>>2]|0; - $173 = (($172) + 8|0); - $174 = HEAP32[$173>>2]|0; - $175 = (($174) + ($171<<1)|0); - $176 = HEAP16[$175>>1]|0; - $177 = $176 << 16 >> 16; - $178 = (($168) - ($177))|0; - $179 = $178&65535; - HEAP16[$nIter>>1] = $179; - $180 = HEAP16[$nIter>>1]|0; - $181 = $180 << 16 >> 16; - $182 = HEAP32[$pNew>>2]|0; - $183 = (($182) + 22|0); - $184 = HEAP16[$183>>1]|0; - $185 = $184 << 16 >> 16; - $186 = (($185) - ($181))|0; - $187 = $186&65535; - HEAP16[$183>>1] = $187; - $188 = HEAP32[$1>>2]|0; - $189 = HEAP32[$2>>2]|0; - $190 = HEAP32[$3>>2]|0; - $191 = HEAP16[$nIter>>1]|0; - $192 = $191 << 16 >> 16; - $193 = HEAP16[$4>>1]|0; - $194 = $193 << 16 >> 16; - $195 = (($192) + ($194))|0; - $196 = $195&65535; - (_whereLoopAddBtreeIndex($188,$189,$190,$196)|0); - $197 = HEAP16[$saved_nOut>>1]|0; - $198 = HEAP32[$pNew>>2]|0; - $199 = (($198) + 22|0); - HEAP16[$199>>1] = $197; - } - } - } - } - } - while(1) { - $200 = HEAP32[$rc>>2]|0; - $201 = ($200|0)==(0); - if (!($201)) { - break; - } - $202 = HEAP32[$pTerm>>2]|0; - $203 = ($202|0)!=(0|0); - if (!($203)) { - break; - } - $204 = HEAP32[$pTerm>>2]|0; - $205 = (($204) + 18|0); - $206 = HEAP16[$205>>1]|0; - HEAP16[$eOp>>1] = $206; - HEAP32[$nIn>>2] = 0; - $207 = HEAP16[$eOp>>1]|0; - $208 = $207&65535; - $209 = ($208|0)==(128); - if ($209) { - label = 24; - } else { - $210 = HEAP32[$pTerm>>2]|0; - $211 = (($210) + 20|0); - $212 = HEAP8[$211>>0]|0; - $213 = $212&255; - $214 = $213 & 0; - $215 = ($214|0)!=(0); - if ($215) { - label = 24; - } else { - label = 26; - } - } - if ((label|0) == 24) { - label = 0; - $216 = HEAP32[$iCol>>2]|0; - $217 = ($216|0)<(0); - if (!($217)) { - $218 = HEAP32[$iCol>>2]|0; - $219 = HEAP32[$2>>2]|0; - $220 = (($219) + 16|0); - $221 = HEAP32[$220>>2]|0; - $222 = (($221) + 4|0); - $223 = HEAP32[$222>>2]|0; - $224 = (($223) + (($218*24)|0)|0); - $225 = (($224) + 20|0); - $226 = HEAP8[$225>>0]|0; - $227 = $226&255; - $228 = ($227|0)!=(0); - if (!($228)) { - label = 26; - } - } - } - if ((label|0) == 26) { - label = 0; - $229 = HEAP32[$pTerm>>2]|0; - $230 = (($229) + 32|0); - $231 = $230; - $232 = $231; - $233 = HEAP32[$232>>2]|0; - $234 = (($231) + 4)|0; - $235 = $234; - $236 = HEAP32[$235>>2]|0; - $237 = HEAP32[$pNew>>2]|0; - $238 = (($237) + 8|0); - $239 = $238; - $240 = $239; - $241 = HEAP32[$240>>2]|0; - $242 = (($239) + 4)|0; - $243 = $242; - $244 = HEAP32[$243>>2]|0; - $245 = $233 & $241; - $246 = $236 & $244; - $247 = ($245|0)!=(0); - $248 = ($246|0)!=(0); - $249 = $247 | $248; - if (!($249)) { - $250 = HEAP32[$saved_wsFlags>>2]|0; - $251 = HEAP32[$pNew>>2]|0; - $252 = (($251) + 36|0); - HEAP32[$252>>2] = $250; - $253 = HEAP16[$saved_nEq>>1]|0; - $254 = HEAP32[$pNew>>2]|0; - $255 = (($254) + 24|0); - HEAP16[$255>>1] = $253; - $256 = HEAP16[$saved_nLTerm>>1]|0; - $257 = HEAP32[$pNew>>2]|0; - $258 = (($257) + 40|0); - HEAP16[$258>>1] = $256; - $259 = HEAP32[$db>>2]|0; - $260 = HEAP32[$pNew>>2]|0; - $261 = HEAP32[$pNew>>2]|0; - $262 = (($261) + 40|0); - $263 = HEAP16[$262>>1]|0; - $264 = $263&65535; - $265 = (($264) + 1)|0; - $266 = (_whereLoopResize($259,$260,$265)|0); - $267 = ($266|0)!=(0); - if ($267) { - break; - } - $268 = HEAP32[$pTerm>>2]|0; - $269 = HEAP32[$pNew>>2]|0; - $270 = (($269) + 40|0); - $271 = HEAP16[$270>>1]|0; - $272 = (($271) + 1)<<16>>16; - HEAP16[$270>>1] = $272; - $273 = $271&65535; - $274 = HEAP32[$pNew>>2]|0; - $275 = (($274) + 44|0); - $276 = HEAP32[$275>>2]|0; - $277 = (($276) + ($273<<2)|0); - HEAP32[$277>>2] = $268; - $278 = $saved_prereq; - $279 = $278; - $280 = HEAP32[$279>>2]|0; - $281 = (($278) + 4)|0; - $282 = $281; - $283 = HEAP32[$282>>2]|0; - $284 = HEAP32[$pTerm>>2]|0; - $285 = (($284) + 32|0); - $286 = $285; - $287 = $286; - $288 = HEAP32[$287>>2]|0; - $289 = (($286) + 4)|0; - $290 = $289; - $291 = HEAP32[$290>>2]|0; - $292 = $280 | $288; - $293 = $283 | $291; - $294 = HEAP32[$pNew>>2]|0; - $295 = (($294) + 8|0); - $296 = $295; - $297 = $296; - $298 = HEAP32[$297>>2]|0; - $299 = (($296) + 4)|0; - $300 = $299; - $301 = HEAP32[$300>>2]|0; - $302 = $298 ^ -1; - $303 = $301 ^ -1; - $304 = $292 & $302; - $305 = $293 & $303; - $306 = HEAP32[$pNew>>2]|0; - $307 = $306; - $308 = $307; - HEAP32[$308>>2] = $304; - $309 = (($307) + 4)|0; - $310 = $309; - HEAP32[$310>>2] = $305; - $311 = HEAP16[$eOp>>1]|0; - $312 = $311&65535; - $313 = $312 & 1; - $314 = ($313|0)!=(0); - do { - if ($314) { - $315 = HEAP32[$pTerm>>2]|0; - $316 = HEAP32[$315>>2]|0; - HEAP32[$pExpr>>2] = $316; - $317 = HEAP32[$pNew>>2]|0; - $318 = (($317) + 36|0); - $319 = HEAP32[$318>>2]|0; - $320 = $319 | 4; - HEAP32[$318>>2] = $320; - $321 = HEAP32[$pExpr>>2]|0; - $322 = (($321) + 4|0); - $323 = HEAP32[$322>>2]|0; - $324 = $323 & 2048; - $325 = ($324|0)!=(0); - if ($325) { - HEAP32[$nIn>>2] = 46; - break; - } - $326 = HEAP32[$pExpr>>2]|0; - $327 = (($326) + 20|0); - $328 = HEAP32[$327>>2]|0; - $329 = ($328|0)!=(0|0); - if ($329) { - $330 = HEAP32[$pExpr>>2]|0; - $331 = (($330) + 20|0); - $332 = HEAP32[$331>>2]|0; - $333 = HEAP32[$332>>2]|0; - $334 = ($333|0)!=(0); - if ($334) { - $335 = HEAP32[$pExpr>>2]|0; - $336 = (($335) + 20|0); - $337 = HEAP32[$336>>2]|0; - $338 = HEAP32[$337>>2]|0; - $339 = ($338|0)<(0); - $340 = $339 << 31 >> 31; - $341 = (_sqlite3LogEst($338,$340)|0); - $342 = $341 << 16 >> 16; - HEAP32[$nIn>>2] = $342; - } - } - } else { - $343 = HEAP16[$eOp>>1]|0; - $344 = $343&65535; - $345 = $344 & 2; - $346 = ($345|0)!=(0); - if ($346) { - $347 = HEAP32[$pNew>>2]|0; - $348 = (($347) + 36|0); - $349 = HEAP32[$348>>2]|0; - $350 = $349 | 1; - HEAP32[$348>>2] = $350; - $351 = HEAP32[$iCol>>2]|0; - $352 = ($351|0)<(0); - if (!($352)) { - $353 = HEAP16[$4>>1]|0; - $354 = $353 << 16 >> 16; - $355 = ($354|0)==(0); - if (!($355)) { - break; - } - $356 = HEAP32[$pNew>>2]|0; - $357 = (($356) + 24|0); - $358 = HEAP16[$357>>1]|0; - $359 = $358&65535; - $360 = HEAP32[$3>>2]|0; - $361 = (($360) + 50|0); - $362 = HEAP16[$361>>1]|0; - $363 = $362&65535; - $364 = (($363) - 1)|0; - $365 = ($359|0)==($364|0); - if (!($365)) { - break; - } - } - $366 = HEAP32[$iCol>>2]|0; - $367 = ($366|0)>=(0); - if ($367) { - $368 = HEAP32[$3>>2]|0; - $369 = (($368) + 54|0); - $370 = HEAP8[$369>>0]|0; - $371 = $370&255; - $372 = ($371|0)==(0); - if ($372) { - $373 = HEAP32[$pNew>>2]|0; - $374 = (($373) + 36|0); - $375 = HEAP32[$374>>2]|0; - $376 = $375 | 65536; - HEAP32[$374>>2] = $376; - break; - } - } - $377 = HEAP32[$pNew>>2]|0; - $378 = (($377) + 36|0); - $379 = HEAP32[$378>>2]|0; - $380 = $379 | 4096; - HEAP32[$378>>2] = $380; - break; - } else { - $381 = HEAP16[$eOp>>1]|0; - $382 = $381&65535; - $383 = $382 & 128; - $384 = ($383|0)!=(0); - if ($384) { - $385 = HEAP32[$pNew>>2]|0; - $386 = (($385) + 36|0); - $387 = HEAP32[$386>>2]|0; - $388 = $387 | 8; - HEAP32[$386>>2] = $388; - break; - } - $389 = HEAP16[$eOp>>1]|0; - $390 = $389&65535; - $391 = $390 & 36; - $392 = ($391|0)!=(0); - $393 = HEAP32[$pNew>>2]|0; - $394 = (($393) + 36|0); - $395 = HEAP32[$394>>2]|0; - if ($392) { - $396 = $395 | 34; - HEAP32[$394>>2] = $396; - $397 = HEAP32[$pTerm>>2]|0; - HEAP32[$pBtm>>2] = $397; - HEAP32[$pTop>>2] = 0; - break; - } - $398 = $395 | 18; - HEAP32[$394>>2] = $398; - $399 = HEAP32[$pTerm>>2]|0; - HEAP32[$pTop>>2] = $399; - $400 = HEAP32[$pNew>>2]|0; - $401 = (($400) + 36|0); - $402 = HEAP32[$401>>2]|0; - $403 = $402 & 32; - $404 = ($403|0)!=(0); - if ($404) { - $405 = HEAP32[$pNew>>2]|0; - $406 = (($405) + 40|0); - $407 = HEAP16[$406>>1]|0; - $408 = $407&65535; - $409 = (($408) - 2)|0; - $410 = HEAP32[$pNew>>2]|0; - $411 = (($410) + 44|0); - $412 = HEAP32[$411>>2]|0; - $413 = (($412) + ($409<<2)|0); - $414 = HEAP32[$413>>2]|0; - $415 = $414; - } else { - $415 = 0; - } - HEAP32[$pBtm>>2] = $415; - break; - } - } - } while(0); - $416 = HEAP32[$pNew>>2]|0; - $417 = (($416) + 36|0); - $418 = HEAP32[$417>>2]|0; - $419 = $418 & 2; - $420 = ($419|0)!=(0); - do { - if ($420) { - $421 = HEAP32[$pParse>>2]|0; - $422 = HEAP32[$1>>2]|0; - $423 = HEAP32[$pBtm>>2]|0; - $424 = HEAP32[$pTop>>2]|0; - $425 = HEAP32[$pNew>>2]|0; - (_whereRangeScanEst($421,$422,$423,$424,$425)|0); - } else { - $426 = HEAP32[$pNew>>2]|0; - $427 = (($426) + 24|0); - $428 = HEAP16[$427>>1]|0; - $429 = (($428) + 1)<<16>>16; - HEAP16[$427>>1] = $429; - $430 = $429&65535; - HEAP32[$nEq>>2] = $430; - $431 = HEAP32[$pTerm>>2]|0; - $432 = (($431) + 16|0); - $433 = HEAP16[$432>>1]|0; - $434 = $433 << 16 >> 16; - $435 = ($434|0)<=(0); - if ($435) { - $436 = HEAP32[$iCol>>2]|0; - $437 = ($436|0)>=(0); - if ($437) { - $438 = HEAP32[$pTerm>>2]|0; - $439 = (($438) + 16|0); - $440 = HEAP16[$439>>1]|0; - $441 = $440 << 16 >> 16; - $442 = HEAP32[$pNew>>2]|0; - $443 = (($442) + 22|0); - $444 = HEAP16[$443>>1]|0; - $445 = $444 << 16 >> 16; - $446 = (($445) + ($441))|0; - $447 = $446&65535; - HEAP16[$443>>1] = $447; - $448 = HEAP32[$nIn>>2]|0; - $449 = HEAP32[$pNew>>2]|0; - $450 = (($449) + 22|0); - $451 = HEAP16[$450>>1]|0; - $452 = $451 << 16 >> 16; - $453 = (($452) - ($448))|0; - $454 = $453&65535; - HEAP16[$450>>1] = $454; - break; - } - } - $455 = HEAP32[$nEq>>2]|0; - $456 = HEAP32[$3>>2]|0; - $457 = (($456) + 8|0); - $458 = HEAP32[$457>>2]|0; - $459 = (($458) + ($455<<1)|0); - $460 = HEAP16[$459>>1]|0; - $461 = $460 << 16 >> 16; - $462 = HEAP32[$nEq>>2]|0; - $463 = (($462) - 1)|0; - $464 = HEAP32[$3>>2]|0; - $465 = (($464) + 8|0); - $466 = HEAP32[$465>>2]|0; - $467 = (($466) + ($463<<1)|0); - $468 = HEAP16[$467>>1]|0; - $469 = $468 << 16 >> 16; - $470 = (($461) - ($469))|0; - $471 = HEAP32[$pNew>>2]|0; - $472 = (($471) + 22|0); - $473 = HEAP16[$472>>1]|0; - $474 = $473 << 16 >> 16; - $475 = (($474) + ($470))|0; - $476 = $475&65535; - HEAP16[$472>>1] = $476; - $477 = HEAP16[$eOp>>1]|0; - $478 = $477&65535; - $479 = $478 & 128; - $480 = ($479|0)!=(0); - if ($480) { - $481 = HEAP32[$pNew>>2]|0; - $482 = (($481) + 22|0); - $483 = HEAP16[$482>>1]|0; - $484 = $483 << 16 >> 16; - $485 = (($484) + 10)|0; - $486 = $485&65535; - HEAP16[$482>>1] = $486; - } - } - } while(0); - $487 = HEAP32[$pNew>>2]|0; - $488 = (($487) + 22|0); - $489 = HEAP16[$488>>1]|0; - $490 = $489 << 16 >> 16; - $491 = (($490) + 1)|0; - $492 = HEAP32[$3>>2]|0; - $493 = (($492) + 48|0); - $494 = HEAP16[$493>>1]|0; - $495 = $494 << 16 >> 16; - $496 = ($495*15)|0; - $497 = HEAP32[$2>>2]|0; - $498 = (($497) + 16|0); - $499 = HEAP32[$498>>2]|0; - $500 = (($499) + 42|0); - $501 = HEAP16[$500>>1]|0; - $502 = $501 << 16 >> 16; - $503 = (($496|0) / ($502|0))&-1; - $504 = (($491) + ($503))|0; - $505 = $504&65535; - HEAP16[$rCostIdx>>1] = $505; - $506 = HEAP16[$rLogSize>>1]|0; - $507 = HEAP16[$rCostIdx>>1]|0; - $508 = (_sqlite3LogEstAdd($506,$507)|0); - $509 = HEAP32[$pNew>>2]|0; - $510 = (($509) + 20|0); - HEAP16[$510>>1] = $508; - $511 = HEAP32[$pNew>>2]|0; - $512 = (($511) + 36|0); - $513 = HEAP32[$512>>2]|0; - $514 = $513 & 320; - $515 = ($514|0)==(0); - if ($515) { - $516 = HEAP32[$pNew>>2]|0; - $517 = (($516) + 20|0); - $518 = HEAP16[$517>>1]|0; - $519 = HEAP32[$pNew>>2]|0; - $520 = (($519) + 22|0); - $521 = HEAP16[$520>>1]|0; - $522 = $521 << 16 >> 16; - $523 = (($522) + 16)|0; - $524 = $523&65535; - $525 = (_sqlite3LogEstAdd($518,$524)|0); - $526 = HEAP32[$pNew>>2]|0; - $527 = (($526) + 20|0); - HEAP16[$527>>1] = $525; - } - $528 = HEAP32[$pNew>>2]|0; - $529 = (($528) + 22|0); - $530 = HEAP16[$529>>1]|0; - HEAP16[$nOutUnadjusted>>1] = $530; - $531 = HEAP16[$4>>1]|0; - $532 = $531 << 16 >> 16; - $533 = HEAP32[$nIn>>2]|0; - $534 = (($532) + ($533))|0; - $535 = HEAP32[$pNew>>2]|0; - $536 = (($535) + 20|0); - $537 = HEAP16[$536>>1]|0; - $538 = $537 << 16 >> 16; - $539 = (($538) + ($534))|0; - $540 = $539&65535; - HEAP16[$536>>1] = $540; - $541 = HEAP16[$4>>1]|0; - $542 = $541 << 16 >> 16; - $543 = HEAP32[$nIn>>2]|0; - $544 = (($542) + ($543))|0; - $545 = HEAP32[$pNew>>2]|0; - $546 = (($545) + 22|0); - $547 = HEAP16[$546>>1]|0; - $548 = $547 << 16 >> 16; - $549 = (($548) + ($544))|0; - $550 = $549&65535; - HEAP16[$546>>1] = $550; - $551 = HEAP32[$1>>2]|0; - $552 = (($551) + 4|0); - $553 = HEAP32[$552>>2]|0; - $554 = HEAP32[$pNew>>2]|0; - _whereLoopOutputAdjust($553,$554); - $555 = HEAP32[$1>>2]|0; - $556 = HEAP32[$pNew>>2]|0; - $557 = (_whereLoopInsert($555,$556)|0); - HEAP32[$rc>>2] = $557; - $558 = HEAP32[$pNew>>2]|0; - $559 = (($558) + 36|0); - $560 = HEAP32[$559>>2]|0; - $561 = $560 & 2; - $562 = ($561|0)!=(0); - if ($562) { - $563 = HEAP16[$saved_nOut>>1]|0; - $564 = HEAP32[$pNew>>2]|0; - $565 = (($564) + 22|0); - HEAP16[$565>>1] = $563; - } else { - $566 = HEAP16[$nOutUnadjusted>>1]|0; - $567 = HEAP32[$pNew>>2]|0; - $568 = (($567) + 22|0); - HEAP16[$568>>1] = $566; - } - $569 = HEAP32[$pNew>>2]|0; - $570 = (($569) + 36|0); - $571 = HEAP32[$570>>2]|0; - $572 = $571 & 16; - $573 = ($572|0)==(0); - if ($573) { - $574 = HEAP32[$pNew>>2]|0; - $575 = (($574) + 24|0); - $576 = HEAP16[$575>>1]|0; - $577 = $576&65535; - $578 = HEAP32[$3>>2]|0; - $579 = (($578) + 50|0); - $580 = HEAP16[$579>>1]|0; - $581 = $580&65535; - $582 = HEAP32[$3>>2]|0; - $583 = HEAP32[$582>>2]|0; - $584 = ($583|0)!=(0|0); - $585 = $584&1; - $586 = (($581) + ($585))|0; - $587 = ($577|0)<($586|0); - if ($587) { - $588 = HEAP32[$1>>2]|0; - $589 = HEAP32[$2>>2]|0; - $590 = HEAP32[$3>>2]|0; - $591 = HEAP16[$4>>1]|0; - $592 = $591 << 16 >> 16; - $593 = HEAP32[$nIn>>2]|0; - $594 = (($592) + ($593))|0; - $595 = $594&65535; - (_whereLoopAddBtreeIndex($588,$589,$590,$595)|0); - } - } - $596 = HEAP16[$saved_nOut>>1]|0; - $597 = HEAP32[$pNew>>2]|0; - $598 = (($597) + 22|0); - HEAP16[$598>>1] = $596; - } - } - $599 = (_whereScanNext($scan)|0); - HEAP32[$pTerm>>2] = $599; - } - $600 = $saved_prereq; - $601 = $600; - $602 = HEAP32[$601>>2]|0; - $603 = (($600) + 4)|0; - $604 = $603; - $605 = HEAP32[$604>>2]|0; - $606 = HEAP32[$pNew>>2]|0; - $607 = $606; - $608 = $607; - HEAP32[$608>>2] = $602; - $609 = (($607) + 4)|0; - $610 = $609; - HEAP32[$610>>2] = $605; - $611 = HEAP16[$saved_nEq>>1]|0; - $612 = HEAP32[$pNew>>2]|0; - $613 = (($612) + 24|0); - HEAP16[$613>>1] = $611; - $614 = HEAP16[$saved_nSkip>>1]|0; - $615 = HEAP32[$pNew>>2]|0; - $616 = (($615) + 24|0); - $617 = (($616) + 2|0); - HEAP16[$617>>1] = $614; - $618 = HEAP32[$saved_wsFlags>>2]|0; - $619 = HEAP32[$pNew>>2]|0; - $620 = (($619) + 36|0); - HEAP32[$620>>2] = $618; - $621 = HEAP16[$saved_nOut>>1]|0; - $622 = HEAP32[$pNew>>2]|0; - $623 = (($622) + 22|0); - HEAP16[$623>>1] = $621; - $624 = HEAP16[$saved_nLTerm>>1]|0; - $625 = HEAP32[$pNew>>2]|0; - $626 = (($625) + 40|0); - HEAP16[$626>>1] = $624; - $627 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $627; - $628 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($628|0); -} -function _whereRangeScanEst($pParse,$pBuilder,$pLower,$pUpper,$pLoop) { - $pParse = $pParse|0; - $pBuilder = $pBuilder|0; - $pLower = $pLower|0; - $pUpper = $pUpper|0; - $pLoop = $pLoop|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nNew = 0, $nOut = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $rc = sp + 4|0; - $nOut = sp; - $nNew = sp + 28|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pBuilder; - HEAP32[$2>>2] = $pLower; - HEAP32[$3>>2] = $pUpper; - HEAP32[$4>>2] = $pLoop; - HEAP32[$rc>>2] = 0; - $5 = HEAP32[$4>>2]|0; - $6 = (($5) + 22|0); - $7 = HEAP16[$6>>1]|0; - $8 = $7 << 16 >> 16; - HEAP32[$nOut>>2] = $8; - $9 = HEAP32[$2>>2]|0; - $10 = HEAP32[$nOut>>2]|0; - $11 = $10&65535; - $12 = (_whereRangeAdjust($9,$11)|0); - HEAP16[$nNew>>1] = $12; - $13 = HEAP32[$3>>2]|0; - $14 = HEAP16[$nNew>>1]|0; - $15 = (_whereRangeAdjust($13,$14)|0); - HEAP16[$nNew>>1] = $15; - $16 = HEAP32[$2>>2]|0; - $17 = ($16|0)!=(0|0); - if ($17) { - $18 = HEAP32[$3>>2]|0; - $19 = ($18|0)!=(0|0); - if ($19) { - $20 = HEAP16[$nNew>>1]|0; - $21 = $20 << 16 >> 16; - $22 = (($21) - 20)|0; - $23 = $22&65535; - HEAP16[$nNew>>1] = $23; - } - } - $24 = HEAP32[$2>>2]|0; - $25 = ($24|0)!=(0|0); - $26 = $25&1; - $27 = HEAP32[$3>>2]|0; - $28 = ($27|0)!=(0|0); - $29 = $28&1; - $30 = (($26) + ($29))|0; - $31 = HEAP32[$nOut>>2]|0; - $32 = (($31) - ($30))|0; - HEAP32[$nOut>>2] = $32; - $33 = HEAP16[$nNew>>1]|0; - $34 = $33 << 16 >> 16; - $35 = ($34|0)<(10); - if ($35) { - HEAP16[$nNew>>1] = 10; - } - $36 = HEAP16[$nNew>>1]|0; - $37 = $36 << 16 >> 16; - $38 = HEAP32[$nOut>>2]|0; - $39 = ($37|0)<($38|0); - if (!($39)) { - $42 = HEAP32[$nOut>>2]|0; - $43 = $42&65535; - $44 = HEAP32[$4>>2]|0; - $45 = (($44) + 22|0); - HEAP16[$45>>1] = $43; - $46 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($46|0); - } - $40 = HEAP16[$nNew>>1]|0; - $41 = $40 << 16 >> 16; - HEAP32[$nOut>>2] = $41; - $42 = HEAP32[$nOut>>2]|0; - $43 = $42&65535; - $44 = HEAP32[$4>>2]|0; - $45 = (($44) + 22|0); - HEAP16[$45>>1] = $43; - $46 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($46|0); -} -function _whereRangeAdjust($pTerm,$nNew) { - $pTerm = $pTerm|0; - $nNew = $nNew|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nRet = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - $1 = sp + 6|0; - $nRet = sp + 4|0; - HEAP32[$0>>2] = $pTerm; - HEAP16[$1>>1] = $nNew; - $2 = HEAP16[$1>>1]|0; - HEAP16[$nRet>>1] = $2; - $3 = HEAP32[$0>>2]|0; - $4 = ($3|0)!=(0|0); - do { - if ($4) { - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 16|0); - $7 = HEAP16[$6>>1]|0; - $8 = $7 << 16 >> 16; - $9 = ($8|0)<=(0); - $10 = HEAP32[$0>>2]|0; - if ($9) { - $11 = (($10) + 16|0); - $12 = HEAP16[$11>>1]|0; - $13 = $12 << 16 >> 16; - $14 = HEAP16[$nRet>>1]|0; - $15 = $14 << 16 >> 16; - $16 = (($15) + ($13))|0; - $17 = $16&65535; - HEAP16[$nRet>>1] = $17; - break; - } - $18 = (($10) + 20|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = $20 & 0; - $22 = ($21|0)==(0); - if ($22) { - $23 = HEAP16[$nRet>>1]|0; - $24 = $23 << 16 >> 16; - $25 = (($24) - 20)|0; - $26 = $25&65535; - HEAP16[$nRet>>1] = $26; - } - } - } while(0); - $27 = HEAP16[$nRet>>1]|0; - STACKTOP = sp;return ($27|0); -} -function _sqlite3ExprImpliesExpr($pE1,$pE2,$iTab) { - $pE1 = $pE1|0; - $pE2 = $pE2|0; - $iTab = $iTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$1>>2] = $pE1; - HEAP32[$2>>2] = $pE2; - HEAP32[$3>>2] = $iTab; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$3>>2]|0; - $7 = (_sqlite3ExprCompare($4,$5,$6)|0); - $8 = ($7|0)==(0); - if ($8) { - HEAP32[$0>>2] = 1; - $48 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($48|0); - } - $9 = HEAP32[$2>>2]|0; - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - $12 = ($11|0)==(71); - do { - if ($12) { - $13 = HEAP32[$1>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = (($14) + 12|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$3>>2]|0; - $18 = (_sqlite3ExprImpliesExpr($13,$16,$17)|0); - $19 = ($18|0)!=(0); - if (!($19)) { - $20 = HEAP32[$1>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = (($21) + 16|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$3>>2]|0; - $25 = (_sqlite3ExprImpliesExpr($20,$23,$24)|0); - $26 = ($25|0)!=(0); - if (!($26)) { - break; - } - } - HEAP32[$0>>2] = 1; - $48 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($48|0); - } - } while(0); - $27 = HEAP32[$2>>2]|0; - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = ($29|0)==(77); - if ($30) { - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 12|0); - $33 = HEAP32[$32>>2]|0; - $34 = HEAP32[$2>>2]|0; - $35 = (($34) + 12|0); - $36 = HEAP32[$35>>2]|0; - $37 = HEAP32[$3>>2]|0; - $38 = (_sqlite3ExprCompare($33,$36,$37)|0); - $39 = ($38|0)==(0); - if ($39) { - $40 = HEAP32[$1>>2]|0; - $41 = HEAP8[$40>>0]|0; - $42 = $41&255; - $43 = ($42|0)!=(76); - if ($43) { - $44 = HEAP32[$1>>2]|0; - $45 = HEAP8[$44>>0]|0; - $46 = $45&255; - $47 = ($46|0)!=(73); - if ($47) { - HEAP32[$0>>2] = 1; - $48 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($48|0); - } - } - } - } - HEAP32[$0>>2] = 0; - $48 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($48|0); -} -function _allocateIndexInfo($pParse,$pWC,$pSrc,$pOrderBy) { - $pParse = $pParse|0; - $pWC = $pWC|0; - $pSrc = $pSrc|0; - $pOrderBy = $pOrderBy|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; - var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; - var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; - var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; - var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; - var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; - var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; - var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; - var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; - var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $j = 0, $n = 0, $nOrderBy = 0, $nTerm = 0, $op = 0, $pExpr = 0; - var $pExpr1 = 0, $pIdxCons = 0, $pIdxInfo = 0, $pIdxOrderBy = 0, $pTerm = 0, $pUsage = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer = sp; - $0 = sp + 68|0; - $1 = sp + 64|0; - $2 = sp + 60|0; - $3 = sp + 56|0; - $4 = sp + 52|0; - $i = sp + 48|0; - $j = sp + 44|0; - $nTerm = sp + 40|0; - $pIdxCons = sp + 36|0; - $pIdxOrderBy = sp + 32|0; - $pUsage = sp + 28|0; - $pTerm = sp + 24|0; - $nOrderBy = sp + 20|0; - $pIdxInfo = sp + 16|0; - $n = sp + 12|0; - $pExpr = sp + 8|0; - $op = sp + 72|0; - $pExpr1 = sp + 4|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pWC; - HEAP32[$3>>2] = $pSrc; - HEAP32[$4>>2] = $pOrderBy; - HEAP32[$nTerm>>2] = 0; - HEAP32[$i>>2] = 0; - $5 = HEAP32[$2>>2]|0; - $6 = (($5) + 20|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pTerm>>2] = $7; - while(1) { - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[$2>>2]|0; - $10 = (($9) + 12|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($8|0)<($11|0); - if (!($12)) { - break; - } - $13 = HEAP32[$pTerm>>2]|0; - $14 = (($13) + 8|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$3>>2]|0; - $17 = (($16) + 40|0); - $18 = HEAP32[$17>>2]|0; - $19 = ($15|0)!=($18|0); - if (!($19)) { - $20 = HEAP32[$pTerm>>2]|0; - $21 = (($20) + 18|0); - $22 = HEAP16[$21>>1]|0; - $23 = $22&65535; - $24 = $23 & -1153; - $25 = ($24|0)==(0); - if (!($25)) { - $26 = HEAP32[$pTerm>>2]|0; - $27 = (($26) + 20|0); - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = $29 & 0; - $31 = ($30|0)!=(0); - if (!($31)) { - $32 = HEAP32[$nTerm>>2]|0; - $33 = (($32) + 1)|0; - HEAP32[$nTerm>>2] = $33; - } - } - } - $34 = HEAP32[$i>>2]|0; - $35 = (($34) + 1)|0; - HEAP32[$i>>2] = $35; - $36 = HEAP32[$pTerm>>2]|0; - $37 = (($36) + 48|0); - HEAP32[$pTerm>>2] = $37; - } - HEAP32[$nOrderBy>>2] = 0; - $38 = HEAP32[$4>>2]|0; - $39 = ($38|0)!=(0|0); - if ($39) { - $40 = HEAP32[$4>>2]|0; - $41 = HEAP32[$40>>2]|0; - HEAP32[$n>>2] = $41; - HEAP32[$i>>2] = 0; - while(1) { - $42 = HEAP32[$i>>2]|0; - $43 = HEAP32[$n>>2]|0; - $44 = ($42|0)<($43|0); - if (!($44)) { - break; - } - $45 = HEAP32[$i>>2]|0; - $46 = HEAP32[$4>>2]|0; - $47 = (($46) + 4|0); - $48 = HEAP32[$47>>2]|0; - $49 = (($48) + (($45*20)|0)|0); - $50 = HEAP32[$49>>2]|0; - HEAP32[$pExpr>>2] = $50; - $51 = HEAP32[$pExpr>>2]|0; - $52 = HEAP8[$51>>0]|0; - $53 = $52&255; - $54 = ($53|0)!=(154); - if ($54) { - break; - } - $55 = HEAP32[$pExpr>>2]|0; - $56 = (($55) + 28|0); - $57 = HEAP32[$56>>2]|0; - $58 = HEAP32[$3>>2]|0; - $59 = (($58) + 40|0); - $60 = HEAP32[$59>>2]|0; - $61 = ($57|0)!=($60|0); - if ($61) { - break; - } - $62 = HEAP32[$i>>2]|0; - $63 = (($62) + 1)|0; - HEAP32[$i>>2] = $63; - } - $64 = HEAP32[$i>>2]|0; - $65 = HEAP32[$n>>2]|0; - $66 = ($64|0)==($65|0); - if ($66) { - $67 = HEAP32[$n>>2]|0; - HEAP32[$nOrderBy>>2] = $67; - } - } - $68 = HEAP32[$1>>2]|0; - $69 = HEAP32[$68>>2]|0; - $70 = HEAP32[$nTerm>>2]|0; - $71 = ($70*20)|0; - $72 = (56 + ($71))|0; - $73 = HEAP32[$nOrderBy>>2]|0; - $74 = $73<<3; - $75 = (($72) + ($74))|0; - $76 = (_sqlite3DbMallocZero($69,$75)|0); - HEAP32[$pIdxInfo>>2] = $76; - $77 = HEAP32[$pIdxInfo>>2]|0; - $78 = ($77|0)==(0|0); - if ($78) { - $79 = HEAP32[$1>>2]|0; - _sqlite3ErrorMsg($79,5352,$vararg_buffer); - HEAP32[$0>>2] = 0; - $191 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($191|0); - } - $80 = HEAP32[$pIdxInfo>>2]|0; - $81 = (($80) + 56|0); - HEAP32[$pIdxCons>>2] = $81; - $82 = HEAP32[$nTerm>>2]|0; - $83 = HEAP32[$pIdxCons>>2]|0; - $84 = (($83) + (($82*12)|0)|0); - HEAP32[$pIdxOrderBy>>2] = $84; - $85 = HEAP32[$nOrderBy>>2]|0; - $86 = HEAP32[$pIdxOrderBy>>2]|0; - $87 = (($86) + ($85<<3)|0); - HEAP32[$pUsage>>2] = $87; - $88 = HEAP32[$nTerm>>2]|0; - $89 = HEAP32[$pIdxInfo>>2]|0; - HEAP32[$89>>2] = $88; - $90 = HEAP32[$nOrderBy>>2]|0; - $91 = HEAP32[$pIdxInfo>>2]|0; - $92 = (($91) + 8|0); - HEAP32[$92>>2] = $90; - $93 = HEAP32[$pIdxCons>>2]|0; - $94 = HEAP32[$pIdxInfo>>2]|0; - $95 = (($94) + 4|0); - HEAP32[$95>>2] = $93; - $96 = HEAP32[$pIdxOrderBy>>2]|0; - $97 = HEAP32[$pIdxInfo>>2]|0; - $98 = (($97) + 12|0); - HEAP32[$98>>2] = $96; - $99 = HEAP32[$pUsage>>2]|0; - $100 = HEAP32[$pIdxInfo>>2]|0; - $101 = (($100) + 16|0); - HEAP32[$101>>2] = $99; - HEAP32[$j>>2] = 0; - HEAP32[$i>>2] = 0; - $102 = HEAP32[$2>>2]|0; - $103 = (($102) + 20|0); - $104 = HEAP32[$103>>2]|0; - HEAP32[$pTerm>>2] = $104; - while(1) { - $105 = HEAP32[$i>>2]|0; - $106 = HEAP32[$2>>2]|0; - $107 = (($106) + 12|0); - $108 = HEAP32[$107>>2]|0; - $109 = ($105|0)<($108|0); - if (!($109)) { - break; - } - $110 = HEAP32[$pTerm>>2]|0; - $111 = (($110) + 8|0); - $112 = HEAP32[$111>>2]|0; - $113 = HEAP32[$3>>2]|0; - $114 = (($113) + 40|0); - $115 = HEAP32[$114>>2]|0; - $116 = ($112|0)!=($115|0); - if (!($116)) { - $117 = HEAP32[$pTerm>>2]|0; - $118 = (($117) + 18|0); - $119 = HEAP16[$118>>1]|0; - $120 = $119&65535; - $121 = $120 & -1153; - $122 = ($121|0)==(0); - if (!($122)) { - $123 = HEAP32[$pTerm>>2]|0; - $124 = (($123) + 20|0); - $125 = HEAP8[$124>>0]|0; - $126 = $125&255; - $127 = $126 & 0; - $128 = ($127|0)!=(0); - if (!($128)) { - $129 = HEAP32[$pTerm>>2]|0; - $130 = (($129) + 12|0); - $131 = HEAP32[$130>>2]|0; - $132 = HEAP32[$j>>2]|0; - $133 = HEAP32[$pIdxCons>>2]|0; - $134 = (($133) + (($132*12)|0)|0); - HEAP32[$134>>2] = $131; - $135 = HEAP32[$i>>2]|0; - $136 = HEAP32[$j>>2]|0; - $137 = HEAP32[$pIdxCons>>2]|0; - $138 = (($137) + (($136*12)|0)|0); - $139 = (($138) + 8|0); - HEAP32[$139>>2] = $135; - $140 = HEAP32[$pTerm>>2]|0; - $141 = (($140) + 18|0); - $142 = HEAP16[$141>>1]|0; - $143 = $142&255; - $144 = $143&255; - $145 = $144 & 4095; - $146 = $145&255; - HEAP8[$op>>0] = $146; - $147 = HEAP8[$op>>0]|0; - $148 = $147&255; - $149 = ($148|0)==(1); - $$ = $149 ? 2 : $146; - HEAP8[$op>>0] = $$; - $150 = HEAP8[$op>>0]|0; - $151 = HEAP32[$j>>2]|0; - $152 = HEAP32[$pIdxCons>>2]|0; - $153 = (($152) + (($151*12)|0)|0); - $154 = (($153) + 4|0); - HEAP8[$154>>0] = $150; - $155 = HEAP32[$j>>2]|0; - $156 = (($155) + 1)|0; - HEAP32[$j>>2] = $156; - } - } - } - $157 = HEAP32[$i>>2]|0; - $158 = (($157) + 1)|0; - HEAP32[$i>>2] = $158; - $159 = HEAP32[$pTerm>>2]|0; - $160 = (($159) + 48|0); - HEAP32[$pTerm>>2] = $160; - } - HEAP32[$i>>2] = 0; - while(1) { - $161 = HEAP32[$i>>2]|0; - $162 = HEAP32[$nOrderBy>>2]|0; - $163 = ($161|0)<($162|0); - if (!($163)) { - break; - } - $164 = HEAP32[$i>>2]|0; - $165 = HEAP32[$4>>2]|0; - $166 = (($165) + 4|0); - $167 = HEAP32[$166>>2]|0; - $168 = (($167) + (($164*20)|0)|0); - $169 = HEAP32[$168>>2]|0; - HEAP32[$pExpr1>>2] = $169; - $170 = HEAP32[$pExpr1>>2]|0; - $171 = (($170) + 32|0); - $172 = HEAP16[$171>>1]|0; - $173 = $172 << 16 >> 16; - $174 = HEAP32[$i>>2]|0; - $175 = HEAP32[$pIdxOrderBy>>2]|0; - $176 = (($175) + ($174<<3)|0); - HEAP32[$176>>2] = $173; - $177 = HEAP32[$i>>2]|0; - $178 = HEAP32[$4>>2]|0; - $179 = (($178) + 4|0); - $180 = HEAP32[$179>>2]|0; - $181 = (($180) + (($177*20)|0)|0); - $182 = (($181) + 12|0); - $183 = HEAP8[$182>>0]|0; - $184 = HEAP32[$i>>2]|0; - $185 = HEAP32[$pIdxOrderBy>>2]|0; - $186 = (($185) + ($184<<3)|0); - $187 = (($186) + 4|0); - HEAP8[$187>>0] = $183; - $188 = HEAP32[$i>>2]|0; - $189 = (($188) + 1)|0; - HEAP32[$i>>2] = $189; - } - $190 = HEAP32[$pIdxInfo>>2]|0; - HEAP32[$0>>2] = $190; - $191 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($191|0); -} -function _vtabBestIndex($pParse,$pTab,$p) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pVtab = 0, $rc = 0, $vararg_buffer4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer4 = sp; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $pVtab = sp + 12|0; - $i = sp + 8|0; - $rc = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $p; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = (_sqlite3GetVTable($4,$5)|0); - $7 = (($6) + 8|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pVtab>>2] = $8; - $9 = HEAP32[$pVtab>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + 12|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$pVtab>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = (FUNCTION_TABLE_iii[$12 & 63]($13,$14)|0); - HEAP32[$rc>>2] = $15; - $16 = HEAP32[$rc>>2]|0; - $17 = ($16|0)!=(0); - do { - if ($17) { - $18 = HEAP32[$rc>>2]|0; - $19 = ($18|0)==(7); - if ($19) { - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + 64|0); - HEAP8[$22>>0] = 1; - break; - } - $23 = HEAP32[$pVtab>>2]|0; - $24 = (($23) + 8|0); - $25 = HEAP32[$24>>2]|0; - $26 = ($25|0)!=(0|0); - $27 = HEAP32[$0>>2]|0; - if ($26) { - $30 = HEAP32[$pVtab>>2]|0; - $31 = (($30) + 8|0); - $32 = HEAP32[$31>>2]|0; - HEAP32[$vararg_buffer4>>2] = $32; - _sqlite3ErrorMsg($27,1456,$vararg_buffer4); - break; - } else { - $28 = HEAP32[$rc>>2]|0; - $29 = (_sqlite3ErrStr($28)|0); - HEAP32[$vararg_buffer4>>2] = $29; - _sqlite3ErrorMsg($27,1456,$vararg_buffer4); - break; - } - } - } while(0); - $33 = HEAP32[$pVtab>>2]|0; - $34 = (($33) + 8|0); - $35 = HEAP32[$34>>2]|0; - _sqlite3_free($35); - $36 = HEAP32[$pVtab>>2]|0; - $37 = (($36) + 8|0); - HEAP32[$37>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $38 = HEAP32[$i>>2]|0; - $39 = HEAP32[$2>>2]|0; - $40 = HEAP32[$39>>2]|0; - $41 = ($38|0)<($40|0); - if (!($41)) { - break; - } - $42 = HEAP32[$i>>2]|0; - $43 = HEAP32[$2>>2]|0; - $44 = (($43) + 4|0); - $45 = HEAP32[$44>>2]|0; - $46 = (($45) + (($42*12)|0)|0); - $47 = (($46) + 5|0); - $48 = HEAP8[$47>>0]|0; - $49 = ($48<<24>>24)!=(0); - if (!($49)) { - $50 = HEAP32[$i>>2]|0; - $51 = HEAP32[$2>>2]|0; - $52 = (($51) + 16|0); - $53 = HEAP32[$52>>2]|0; - $54 = (($53) + ($50<<3)|0); - $55 = HEAP32[$54>>2]|0; - $56 = ($55|0)>(0); - if ($56) { - $57 = HEAP32[$0>>2]|0; - $58 = HEAP32[$1>>2]|0; - $59 = HEAP32[$58>>2]|0; - HEAP32[$vararg_buffer4>>2] = $59; - _sqlite3ErrorMsg($57,23976,$vararg_buffer4); - } - } - $60 = HEAP32[$i>>2]|0; - $61 = (($60) + 1)|0; - HEAP32[$i>>2] = $61; - } - $62 = HEAP32[$0>>2]|0; - $63 = (($62) + 64|0); - $64 = HEAP32[$63>>2]|0; - STACKTOP = sp;return ($64|0); -} -function _sqlite3LogEstFromDouble($x) { - $x = +$x; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0.0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0.0, $5 = 0, $6 = 0.0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $e = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 18|0; - $1 = sp + 8|0; - $a = sp; - $e = sp + 16|0; - HEAPF64[$1>>3] = $x; - $2 = +HEAPF64[$1>>3]; - $3 = $2 <= 1.0; - if ($3) { - HEAP16[$0>>1] = 0; - $25 = HEAP16[$0>>1]|0; - STACKTOP = sp;return ($25|0); - } - $4 = +HEAPF64[$1>>3]; - $5 = $4 <= 2.0E+9; - if ($5) { - $6 = +HEAPF64[$1>>3]; - $7 = (~~$6)>>>0; - $8 = +Math_abs($6) >= 1.0 ? $6 > 0.0 ? (Math_min(+Math_floor($6 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($6 - +(~~$6 >>> 0)) / 4294967296.0) >>> 0 : 0; - $9 = (_sqlite3LogEst($7,$8)|0); - HEAP16[$0>>1] = $9; - $25 = HEAP16[$0>>1]|0; - STACKTOP = sp;return ($25|0); - } else { - ;HEAP32[$a+0>>2]=HEAP32[$1+0>>2]|0;HEAP32[$a+4>>2]=HEAP32[$1+4>>2]|0; - $10 = $a; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = (($10) + 4)|0; - $14 = $13; - $15 = HEAP32[$14>>2]|0; - $16 = (_bitshift64Lshr(($12|0),($15|0),52)|0); - $17 = tempRet0; - $18 = (_i64Subtract(($16|0),($17|0),1022,0)|0); - $19 = tempRet0; - $20 = $18&65535; - HEAP16[$e>>1] = $20; - $21 = HEAP16[$e>>1]|0; - $22 = $21 << 16 >> 16; - $23 = ($22*10)|0; - $24 = $23&65535; - HEAP16[$0>>1] = $24; - $25 = HEAP16[$0>>1]|0; - STACKTOP = sp;return ($25|0); - } - return 0|0; -} -function _findIndexCol($pParse,$pList,$iBase,$pIdx,$iCol) { - $pParse = $pParse|0; - $pList = $pList|0; - $iBase = $iBase|0; - $pIdx = $pIdx|0; - $iCol = $iCol|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, $pColl = 0, $zColl = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $4 = sp + 20|0; - $5 = sp + 16|0; - $i = sp + 12|0; - $zColl = sp + 8|0; - $p = sp + 4|0; - $pColl = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pList; - HEAP32[$3>>2] = $iBase; - HEAP32[$4>>2] = $pIdx; - HEAP32[$5>>2] = $iCol; - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$4>>2]|0; - $8 = (($7) + 32|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + ($6<<2)|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$zColl>>2] = $11; - HEAP32[$i>>2] = 0; - while(1) { - $12 = HEAP32[$i>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = ($12|0)<($14|0); - if (!($15)) { - label = 10; - break; - } - $16 = HEAP32[$i>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($19) + (($16*20)|0)|0); - $21 = HEAP32[$20>>2]|0; - $22 = (_sqlite3ExprSkipCollate($21)|0); - HEAP32[$p>>2] = $22; - $23 = HEAP32[$p>>2]|0; - $24 = HEAP8[$23>>0]|0; - $25 = $24&255; - $26 = ($25|0)==(154); - if ($26) { - $27 = HEAP32[$p>>2]|0; - $28 = (($27) + 32|0); - $29 = HEAP16[$28>>1]|0; - $30 = $29 << 16 >> 16; - $31 = HEAP32[$5>>2]|0; - $32 = HEAP32[$4>>2]|0; - $33 = (($32) + 4|0); - $34 = HEAP32[$33>>2]|0; - $35 = (($34) + ($31<<1)|0); - $36 = HEAP16[$35>>1]|0; - $37 = $36 << 16 >> 16; - $38 = ($30|0)==($37|0); - if ($38) { - $39 = HEAP32[$p>>2]|0; - $40 = (($39) + 28|0); - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$3>>2]|0; - $43 = ($41|0)==($42|0); - if ($43) { - $44 = HEAP32[$1>>2]|0; - $45 = HEAP32[$i>>2]|0; - $46 = HEAP32[$2>>2]|0; - $47 = (($46) + 4|0); - $48 = HEAP32[$47>>2]|0; - $49 = (($48) + (($45*20)|0)|0); - $50 = HEAP32[$49>>2]|0; - $51 = (_sqlite3ExprCollSeq($44,$50)|0); - HEAP32[$pColl>>2] = $51; - $52 = HEAP32[$pColl>>2]|0; - $53 = ($52|0)!=(0|0); - if ($53) { - $54 = HEAP32[$pColl>>2]|0; - $55 = HEAP32[$54>>2]|0; - $56 = HEAP32[$zColl>>2]|0; - $57 = (_sqlite3_stricmp($55,$56)|0); - $58 = (0)==($57|0); - if ($58) { - label = 8; - break; - } - } - } - } - } - $60 = HEAP32[$i>>2]|0; - $61 = (($60) + 1)|0; - HEAP32[$i>>2] = $61; - } - if ((label|0) == 8) { - $59 = HEAP32[$i>>2]|0; - HEAP32[$0>>2] = $59; - $62 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($62|0); - } - else if ((label|0) == 10) { - HEAP32[$0>>2] = -1; - $62 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($62|0); - } - return 0|0; -} -function _exprAnalyze($pSrc,$pWC,$idxTerm) { - $pSrc = $pSrc|0; - $pWC = $pWC|0; - $idxTerm = $idxTerm|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; - var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; - var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; - var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; - var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; - var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; - var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; - var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; - var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; - var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; - var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; - var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $c = 0, $db = 0, $eExtraOp = 0, $extraRight = 0, $i = 0, $idxNew = 0, $idxNew1 = 0, $idxNew13 = 0, $idxNew2 = 0, $idxNew4 = 0, $isComplete = 0, $noCase = 0, $op = 0, $opMask = 0, $pC = 0, $pDup = 0, $pExpr = 0, $pLeft = 0, $pLeft2 = 0, $pLeft6 = 0; - var $pList = 0, $pMaskSet = 0, $pNew = 0, $pNewExpr = 0, $pNewExpr1 = 0, $pNewExpr2 = 0, $pNewExpr7 = 0, $pNewTerm = 0, $pParse = 0, $pRight = 0, $pRight5 = 0, $pStr1 = 0, $pStr2 = 0, $pTerm = 0, $pWInfo = 0, $prereqAll = 0, $prereqColumn = 0, $prereqExpr = 0, $prereqLeft = 0, $sCollSeqName = 0; - var $x = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 208|0; - $0 = sp + 188|0; - $1 = sp + 184|0; - $2 = sp + 180|0; - $pWInfo = sp + 176|0; - $pTerm = sp + 172|0; - $pMaskSet = sp + 168|0; - $pExpr = sp + 164|0; - $prereqLeft = sp + 40|0; - $prereqAll = sp + 32|0; - $extraRight = sp + 24|0; - $pStr1 = sp + 160|0; - $isComplete = sp + 156|0; - $noCase = sp + 152|0; - $op = sp + 148|0; - $pParse = sp + 144|0; - $db = sp + 140|0; - $x = sp + 16|0; - $pLeft = sp + 136|0; - $pRight = sp + 132|0; - $opMask = sp + 194|0; - $pNew = sp + 128|0; - $pDup = sp + 124|0; - $eExtraOp = sp + 192|0; - $idxNew = sp + 120|0; - $pList = sp + 116|0; - $i = sp + 112|0; - $pNewExpr = sp + 108|0; - $idxNew1 = sp + 104|0; - $pLeft2 = sp + 100|0; - $pStr2 = sp + 96|0; - $pNewExpr1 = sp + 92|0; - $pNewExpr2 = sp + 88|0; - $idxNew13 = sp + 84|0; - $idxNew2 = sp + 80|0; - $sCollSeqName = sp + 72|0; - $c = sp + 196|0; - $pC = sp + 68|0; - $idxNew4 = sp + 64|0; - $pRight5 = sp + 60|0; - $pLeft6 = sp + 56|0; - $pNewTerm = sp + 52|0; - $prereqColumn = sp + 8|0; - $prereqExpr = sp; - $pNewExpr7 = sp + 48|0; - HEAP32[$0>>2] = $pSrc; - HEAP32[$1>>2] = $pWC; - HEAP32[$2>>2] = $idxTerm; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$pWInfo>>2] = $4; - $5 = $extraRight; - $6 = $5; - HEAP32[$6>>2] = 0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = 0; - HEAP32[$pStr1>>2] = 0; - HEAP32[$isComplete>>2] = 0; - HEAP32[$noCase>>2] = 0; - $9 = HEAP32[$pWInfo>>2]|0; - $10 = HEAP32[$9>>2]|0; - HEAP32[$pParse>>2] = $10; - $11 = HEAP32[$pParse>>2]|0; - $12 = HEAP32[$11>>2]|0; - HEAP32[$db>>2] = $12; - $13 = HEAP32[$db>>2]|0; - $14 = (($13) + 64|0); - $15 = HEAP8[$14>>0]|0; - $16 = ($15<<24>>24)!=(0); - if ($16) { - STACKTOP = sp;return; - } - $17 = HEAP32[$2>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 20|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($20) + (($17*48)|0)|0); - HEAP32[$pTerm>>2] = $21; - $22 = HEAP32[$pWInfo>>2]|0; - $23 = (($22) + 68|0); - HEAP32[$pMaskSet>>2] = $23; - $24 = HEAP32[$pTerm>>2]|0; - $25 = HEAP32[$24>>2]|0; - HEAP32[$pExpr>>2] = $25; - $26 = HEAP32[$pMaskSet>>2]|0; - $27 = HEAP32[$pExpr>>2]|0; - $28 = (($27) + 12|0); - $29 = HEAP32[$28>>2]|0; - $30 = (_exprTableUsage($26,$29)|0); - $31 = tempRet0; - $32 = $prereqLeft; - $33 = $32; - HEAP32[$33>>2] = $30; - $34 = (($32) + 4)|0; - $35 = $34; - HEAP32[$35>>2] = $31; - $36 = HEAP32[$pExpr>>2]|0; - $37 = HEAP8[$36>>0]|0; - $38 = $37&255; - HEAP32[$op>>2] = $38; - $39 = HEAP32[$op>>2]|0; - $40 = ($39|0)==(75); - do { - if ($40) { - $41 = HEAP32[$pExpr>>2]|0; - $42 = (($41) + 4|0); - $43 = HEAP32[$42>>2]|0; - $44 = $43 & 2048; - $45 = ($44|0)!=(0); - $46 = HEAP32[$pMaskSet>>2]|0; - $47 = HEAP32[$pExpr>>2]|0; - $48 = (($47) + 20|0); - if ($45) { - $49 = HEAP32[$48>>2]|0; - $50 = (_exprSelectTableUsage($46,$49)|0); - $51 = tempRet0; - $52 = HEAP32[$pTerm>>2]|0; - $53 = (($52) + 32|0); - $54 = $53; - $55 = $54; - HEAP32[$55>>2] = $50; - $56 = (($54) + 4)|0; - $57 = $56; - HEAP32[$57>>2] = $51; - break; - } else { - $58 = HEAP32[$48>>2]|0; - $59 = (_exprListTableUsage($46,$58)|0); - $60 = tempRet0; - $61 = HEAP32[$pTerm>>2]|0; - $62 = (($61) + 32|0); - $63 = $62; - $64 = $63; - HEAP32[$64>>2] = $59; - $65 = (($63) + 4)|0; - $66 = $65; - HEAP32[$66>>2] = $60; - break; - } - } else { - $67 = HEAP32[$op>>2]|0; - $68 = ($67|0)==(76); - if ($68) { - $69 = HEAP32[$pTerm>>2]|0; - $70 = (($69) + 32|0); - $71 = $70; - $72 = $71; - HEAP32[$72>>2] = 0; - $73 = (($71) + 4)|0; - $74 = $73; - HEAP32[$74>>2] = 0; - break; - } else { - $75 = HEAP32[$pMaskSet>>2]|0; - $76 = HEAP32[$pExpr>>2]|0; - $77 = (($76) + 16|0); - $78 = HEAP32[$77>>2]|0; - $79 = (_exprTableUsage($75,$78)|0); - $80 = tempRet0; - $81 = HEAP32[$pTerm>>2]|0; - $82 = (($81) + 32|0); - $83 = $82; - $84 = $83; - HEAP32[$84>>2] = $79; - $85 = (($83) + 4)|0; - $86 = $85; - HEAP32[$86>>2] = $80; - break; - } - } - } while(0); - $87 = HEAP32[$pMaskSet>>2]|0; - $88 = HEAP32[$pExpr>>2]|0; - $89 = (_exprTableUsage($87,$88)|0); - $90 = tempRet0; - $91 = $prereqAll; - $92 = $91; - HEAP32[$92>>2] = $89; - $93 = (($91) + 4)|0; - $94 = $93; - HEAP32[$94>>2] = $90; - $95 = HEAP32[$pExpr>>2]|0; - $96 = (($95) + 4|0); - $97 = HEAP32[$96>>2]|0; - $98 = $97 & 1; - $99 = ($98|0)!=(0); - if ($99) { - $100 = HEAP32[$pMaskSet>>2]|0; - $101 = HEAP32[$pExpr>>2]|0; - $102 = (($101) + 36|0); - $103 = HEAP16[$102>>1]|0; - $104 = $103 << 16 >> 16; - $105 = (_getMask($100,$104)|0); - $106 = tempRet0; - $107 = $x; - $108 = $107; - HEAP32[$108>>2] = $105; - $109 = (($107) + 4)|0; - $110 = $109; - HEAP32[$110>>2] = $106; - $111 = $x; - $112 = $111; - $113 = HEAP32[$112>>2]|0; - $114 = (($111) + 4)|0; - $115 = $114; - $116 = HEAP32[$115>>2]|0; - $117 = $prereqAll; - $118 = $117; - $119 = HEAP32[$118>>2]|0; - $120 = (($117) + 4)|0; - $121 = $120; - $122 = HEAP32[$121>>2]|0; - $123 = $119 | $113; - $124 = $122 | $116; - $125 = $prereqAll; - $126 = $125; - HEAP32[$126>>2] = $123; - $127 = (($125) + 4)|0; - $128 = $127; - HEAP32[$128>>2] = $124; - $129 = $x; - $130 = $129; - $131 = HEAP32[$130>>2]|0; - $132 = (($129) + 4)|0; - $133 = $132; - $134 = HEAP32[$133>>2]|0; - $135 = (_i64Subtract(($131|0),($134|0),1,0)|0); - $136 = tempRet0; - $137 = $extraRight; - $138 = $137; - HEAP32[$138>>2] = $135; - $139 = (($137) + 4)|0; - $140 = $139; - HEAP32[$140>>2] = $136; - } - $141 = $prereqAll; - $142 = $141; - $143 = HEAP32[$142>>2]|0; - $144 = (($141) + 4)|0; - $145 = $144; - $146 = HEAP32[$145>>2]|0; - $147 = HEAP32[$pTerm>>2]|0; - $148 = (($147) + 40|0); - $149 = $148; - $150 = $149; - HEAP32[$150>>2] = $143; - $151 = (($149) + 4)|0; - $152 = $151; - HEAP32[$152>>2] = $146; - $153 = HEAP32[$pTerm>>2]|0; - $154 = (($153) + 8|0); - HEAP32[$154>>2] = -1; - $155 = HEAP32[$pTerm>>2]|0; - $156 = (($155) + 4|0); - HEAP32[$156>>2] = -1; - $157 = HEAP32[$pTerm>>2]|0; - $158 = (($157) + 18|0); - HEAP16[$158>>1] = 0; - $159 = HEAP32[$op>>2]|0; - $160 = (_allowedOp($159)|0); - $161 = ($160|0)!=(0); - $162 = HEAP32[$pExpr>>2]|0; - do { - if ($161) { - $163 = (($162) + 12|0); - $164 = HEAP32[$163>>2]|0; - $165 = (_sqlite3ExprSkipCollate($164)|0); - HEAP32[$pLeft>>2] = $165; - $166 = HEAP32[$pExpr>>2]|0; - $167 = (($166) + 16|0); - $168 = HEAP32[$167>>2]|0; - $169 = (_sqlite3ExprSkipCollate($168)|0); - HEAP32[$pRight>>2] = $169; - $170 = HEAP32[$pTerm>>2]|0; - $171 = (($170) + 32|0); - $172 = $171; - $173 = $172; - $174 = HEAP32[$173>>2]|0; - $175 = (($172) + 4)|0; - $176 = $175; - $177 = HEAP32[$176>>2]|0; - $178 = $prereqLeft; - $179 = $178; - $180 = HEAP32[$179>>2]|0; - $181 = (($178) + 4)|0; - $182 = $181; - $183 = HEAP32[$182>>2]|0; - $184 = $174 & $180; - $185 = $177 & $183; - $186 = ($184|0)==(0); - $187 = ($185|0)==(0); - $188 = $186 & $187; - $189 = $188 ? 4095 : 1024; - $190 = $189&65535; - HEAP16[$opMask>>1] = $190; - $191 = HEAP32[$pLeft>>2]|0; - $192 = HEAP8[$191>>0]|0; - $193 = $192&255; - $194 = ($193|0)==(154); - if ($194) { - $195 = HEAP32[$pLeft>>2]|0; - $196 = (($195) + 28|0); - $197 = HEAP32[$196>>2]|0; - $198 = HEAP32[$pTerm>>2]|0; - $199 = (($198) + 8|0); - HEAP32[$199>>2] = $197; - $200 = HEAP32[$pLeft>>2]|0; - $201 = (($200) + 32|0); - $202 = HEAP16[$201>>1]|0; - $203 = $202 << 16 >> 16; - $204 = HEAP32[$pTerm>>2]|0; - $205 = (($204) + 12|0); - HEAP32[$205>>2] = $203; - $206 = HEAP32[$op>>2]|0; - $207 = (_operatorMask($206)|0); - $208 = $207&65535; - $209 = HEAP16[$opMask>>1]|0; - $210 = $209&65535; - $211 = $208 & $210; - $212 = $211&65535; - $213 = HEAP32[$pTerm>>2]|0; - $214 = (($213) + 18|0); - HEAP16[$214>>1] = $212; - } - $215 = HEAP32[$pRight>>2]|0; - $216 = ($215|0)!=(0|0); - if ($216) { - $217 = HEAP32[$pRight>>2]|0; - $218 = HEAP8[$217>>0]|0; - $219 = $218&255; - $220 = ($219|0)==(154); - if ($220) { - HEAP16[$eExtraOp>>1] = 0; - $221 = HEAP32[$pTerm>>2]|0; - $222 = (($221) + 8|0); - $223 = HEAP32[$222>>2]|0; - $224 = ($223|0)>=(0); - if ($224) { - $225 = HEAP32[$db>>2]|0; - $226 = HEAP32[$pExpr>>2]|0; - $227 = (_sqlite3ExprDup($225,$226,0)|0); - HEAP32[$pDup>>2] = $227; - $228 = HEAP32[$db>>2]|0; - $229 = (($228) + 64|0); - $230 = HEAP8[$229>>0]|0; - $231 = ($230<<24>>24)!=(0); - if ($231) { - $232 = HEAP32[$db>>2]|0; - $233 = HEAP32[$pDup>>2]|0; - _sqlite3ExprDelete($232,$233); - STACKTOP = sp;return; - } - $234 = HEAP32[$1>>2]|0; - $235 = HEAP32[$pDup>>2]|0; - $236 = (_whereClauseInsert($234,$235,3)|0); - HEAP32[$idxNew>>2] = $236; - $237 = HEAP32[$idxNew>>2]|0; - $238 = ($237|0)==(0); - if ($238) { - STACKTOP = sp;return; - } - $239 = HEAP32[$idxNew>>2]|0; - $240 = HEAP32[$1>>2]|0; - $241 = (($240) + 20|0); - $242 = HEAP32[$241>>2]|0; - $243 = (($242) + (($239*48)|0)|0); - HEAP32[$pNew>>2] = $243; - $244 = HEAP32[$2>>2]|0; - $245 = HEAP32[$pNew>>2]|0; - $246 = (($245) + 4|0); - HEAP32[$246>>2] = $244; - $247 = HEAP32[$2>>2]|0; - $248 = HEAP32[$1>>2]|0; - $249 = (($248) + 20|0); - $250 = HEAP32[$249>>2]|0; - $251 = (($250) + (($247*48)|0)|0); - HEAP32[$pTerm>>2] = $251; - $252 = HEAP32[$pTerm>>2]|0; - $253 = (($252) + 21|0); - HEAP8[$253>>0] = 1; - $254 = HEAP32[$pTerm>>2]|0; - $255 = (($254) + 20|0); - $256 = HEAP8[$255>>0]|0; - $257 = $256&255; - $258 = $257 | 8; - $259 = $258&255; - HEAP8[$255>>0] = $259; - $260 = HEAP32[$pExpr>>2]|0; - $261 = HEAP8[$260>>0]|0; - $262 = $261&255; - $263 = ($262|0)==(79); - if ($263) { - $264 = HEAP32[$pExpr>>2]|0; - $265 = (($264) + 4|0); - $266 = HEAP32[$265>>2]|0; - $267 = $266 & 1; - $268 = ($267|0)!=(0); - if (!($268)) { - $269 = HEAP32[$db>>2]|0; - $270 = (($269) + 60|0); - $271 = HEAP16[$270>>1]|0; - $272 = $271&65535; - $273 = $272 & 512; - $274 = ($273|0)==(0); - if ($274) { - $275 = HEAP32[$pTerm>>2]|0; - $276 = (($275) + 18|0); - $277 = HEAP16[$276>>1]|0; - $278 = $277&65535; - $279 = $278 | 1024; - $280 = $279&65535; - HEAP16[$276>>1] = $280; - HEAP16[$eExtraOp>>1] = 1024; - } - } - } - } else { - $281 = HEAP32[$pExpr>>2]|0; - HEAP32[$pDup>>2] = $281; - $282 = HEAP32[$pTerm>>2]|0; - HEAP32[$pNew>>2] = $282; - } - $283 = HEAP32[$pParse>>2]|0; - $284 = HEAP32[$pDup>>2]|0; - _exprCommute($283,$284); - $285 = HEAP32[$pDup>>2]|0; - $286 = (($285) + 12|0); - $287 = HEAP32[$286>>2]|0; - $288 = (_sqlite3ExprSkipCollate($287)|0); - HEAP32[$pLeft>>2] = $288; - $289 = HEAP32[$pLeft>>2]|0; - $290 = (($289) + 28|0); - $291 = HEAP32[$290>>2]|0; - $292 = HEAP32[$pNew>>2]|0; - $293 = (($292) + 8|0); - HEAP32[$293>>2] = $291; - $294 = HEAP32[$pLeft>>2]|0; - $295 = (($294) + 32|0); - $296 = HEAP16[$295>>1]|0; - $297 = $296 << 16 >> 16; - $298 = HEAP32[$pNew>>2]|0; - $299 = (($298) + 12|0); - HEAP32[$299>>2] = $297; - $300 = $prereqLeft; - $301 = $300; - $302 = HEAP32[$301>>2]|0; - $303 = (($300) + 4)|0; - $304 = $303; - $305 = HEAP32[$304>>2]|0; - $306 = $extraRight; - $307 = $306; - $308 = HEAP32[$307>>2]|0; - $309 = (($306) + 4)|0; - $310 = $309; - $311 = HEAP32[$310>>2]|0; - $312 = $302 | $308; - $313 = $305 | $311; - $314 = HEAP32[$pNew>>2]|0; - $315 = (($314) + 32|0); - $316 = $315; - $317 = $316; - HEAP32[$317>>2] = $312; - $318 = (($316) + 4)|0; - $319 = $318; - HEAP32[$319>>2] = $313; - $320 = $prereqAll; - $321 = $320; - $322 = HEAP32[$321>>2]|0; - $323 = (($320) + 4)|0; - $324 = $323; - $325 = HEAP32[$324>>2]|0; - $326 = HEAP32[$pNew>>2]|0; - $327 = (($326) + 40|0); - $328 = $327; - $329 = $328; - HEAP32[$329>>2] = $322; - $330 = (($328) + 4)|0; - $331 = $330; - HEAP32[$331>>2] = $325; - $332 = HEAP32[$pDup>>2]|0; - $333 = HEAP8[$332>>0]|0; - $334 = $333&255; - $335 = (_operatorMask($334)|0); - $336 = $335&65535; - $337 = HEAP16[$eExtraOp>>1]|0; - $338 = $337&65535; - $339 = (($336) + ($338))|0; - $340 = HEAP16[$opMask>>1]|0; - $341 = $340&65535; - $342 = $339 & $341; - $343 = $342&65535; - $344 = HEAP32[$pNew>>2]|0; - $345 = (($344) + 18|0); - HEAP16[$345>>1] = $343; - } - } - } else { - $346 = HEAP8[$162>>0]|0; - $347 = $346&255; - $348 = ($347|0)==(74); - if ($348) { - $349 = HEAP32[$1>>2]|0; - $350 = (($349) + 8|0); - $351 = HEAP8[$350>>0]|0; - $352 = $351&255; - $353 = ($352|0)==(72); - if ($353) { - $354 = HEAP32[$pExpr>>2]|0; - $355 = (($354) + 20|0); - $356 = HEAP32[$355>>2]|0; - HEAP32[$pList>>2] = $356; - HEAP32[$i>>2] = 0; - while(1) { - $357 = HEAP32[$i>>2]|0; - $358 = ($357|0)<(2); - if (!($358)) { - break; - } - $359 = HEAP32[$pParse>>2]|0; - $360 = HEAP32[$i>>2]|0; - $361 = (24024 + ($360)|0); - $362 = HEAP8[$361>>0]|0; - $363 = $362&255; - $364 = HEAP32[$db>>2]|0; - $365 = HEAP32[$pExpr>>2]|0; - $366 = (($365) + 12|0); - $367 = HEAP32[$366>>2]|0; - $368 = (_sqlite3ExprDup($364,$367,0)|0); - $369 = HEAP32[$db>>2]|0; - $370 = HEAP32[$i>>2]|0; - $371 = HEAP32[$pList>>2]|0; - $372 = (($371) + 4|0); - $373 = HEAP32[$372>>2]|0; - $374 = (($373) + (($370*20)|0)|0); - $375 = HEAP32[$374>>2]|0; - $376 = (_sqlite3ExprDup($369,$375,0)|0); - $377 = (_sqlite3PExpr($359,$363,$368,$376,0)|0); - HEAP32[$pNewExpr>>2] = $377; - $378 = HEAP32[$pNewExpr>>2]|0; - $379 = HEAP32[$pExpr>>2]|0; - _transferJoinMarkings($378,$379); - $380 = HEAP32[$1>>2]|0; - $381 = HEAP32[$pNewExpr>>2]|0; - $382 = (_whereClauseInsert($380,$381,3)|0); - HEAP32[$idxNew1>>2] = $382; - $383 = HEAP32[$0>>2]|0; - $384 = HEAP32[$1>>2]|0; - $385 = HEAP32[$idxNew1>>2]|0; - _exprAnalyze($383,$384,$385); - $386 = HEAP32[$2>>2]|0; - $387 = HEAP32[$1>>2]|0; - $388 = (($387) + 20|0); - $389 = HEAP32[$388>>2]|0; - $390 = (($389) + (($386*48)|0)|0); - HEAP32[$pTerm>>2] = $390; - $391 = HEAP32[$2>>2]|0; - $392 = HEAP32[$idxNew1>>2]|0; - $393 = HEAP32[$1>>2]|0; - $394 = (($393) + 20|0); - $395 = HEAP32[$394>>2]|0; - $396 = (($395) + (($392*48)|0)|0); - $397 = (($396) + 4|0); - HEAP32[$397>>2] = $391; - $398 = HEAP32[$i>>2]|0; - $399 = (($398) + 1)|0; - HEAP32[$i>>2] = $399; - } - $400 = HEAP32[$pTerm>>2]|0; - $401 = (($400) + 21|0); - HEAP8[$401>>0] = 2; - break; - } - } - $402 = HEAP32[$pExpr>>2]|0; - $403 = HEAP8[$402>>0]|0; - $404 = $403&255; - $405 = ($404|0)==(71); - if ($405) { - $406 = HEAP32[$0>>2]|0; - $407 = HEAP32[$1>>2]|0; - $408 = HEAP32[$2>>2]|0; - _exprAnalyzeOrTerm($406,$407,$408); - $409 = HEAP32[$2>>2]|0; - $410 = HEAP32[$1>>2]|0; - $411 = (($410) + 20|0); - $412 = HEAP32[$411>>2]|0; - $413 = (($412) + (($409*48)|0)|0); - HEAP32[$pTerm>>2] = $413; - } - } - } while(0); - $414 = HEAP32[$1>>2]|0; - $415 = (($414) + 8|0); - $416 = HEAP8[$415>>0]|0; - $417 = $416&255; - $418 = ($417|0)==(72); - if ($418) { - $419 = HEAP32[$pParse>>2]|0; - $420 = HEAP32[$pExpr>>2]|0; - $421 = (_isLikeOrGlob($419,$420,$pStr1,$isComplete,$noCase)|0); - $422 = ($421|0)!=(0); - if ($422) { - $423 = HEAP32[$pExpr>>2]|0; - $424 = (($423) + 20|0); - $425 = HEAP32[$424>>2]|0; - $426 = (($425) + 4|0); - $427 = HEAP32[$426>>2]|0; - $428 = (($427) + 20|0); - $429 = HEAP32[$428>>2]|0; - HEAP32[$pLeft2>>2] = $429; - $430 = HEAP32[$db>>2]|0; - $431 = HEAP32[$pStr1>>2]|0; - $432 = (_sqlite3ExprDup($430,$431,0)|0); - HEAP32[$pStr2>>2] = $432; - $433 = HEAP32[$db>>2]|0; - $434 = (($433) + 64|0); - $435 = HEAP8[$434>>0]|0; - $436 = ($435<<24>>24)!=(0); - if (!($436)) { - $437 = HEAP32[$pStr2>>2]|0; - $438 = (($437) + 8|0); - $439 = HEAP32[$438>>2]|0; - $440 = (_sqlite3Strlen30($439)|0); - $441 = (($440) - 1)|0; - $442 = HEAP32[$pStr2>>2]|0; - $443 = (($442) + 8|0); - $444 = HEAP32[$443>>2]|0; - $445 = (($444) + ($441)|0); - HEAP32[$pC>>2] = $445; - $446 = HEAP32[$pC>>2]|0; - $447 = HEAP8[$446>>0]|0; - HEAP8[$c>>0] = $447; - $448 = HEAP32[$noCase>>2]|0; - $449 = ($448|0)!=(0); - if ($449) { - $450 = HEAP8[$c>>0]|0; - $451 = $450&255; - $452 = ($451|0)==(64); - if ($452) { - HEAP32[$isComplete>>2] = 0; - } - $453 = HEAP8[$c>>0]|0; - $454 = $453&255; - $455 = (696 + ($454)|0); - $456 = HEAP8[$455>>0]|0; - HEAP8[$c>>0] = $456; - } - $457 = HEAP8[$c>>0]|0; - $458 = $457&255; - $459 = (($458) + 1)|0; - $460 = $459&255; - $461 = HEAP32[$pC>>2]|0; - HEAP8[$461>>0] = $460; - } - $462 = HEAP32[$noCase>>2]|0; - $463 = ($462|0)!=(0); - $464 = $463 ? 3336 : 3320; - HEAP32[$sCollSeqName>>2] = $464; - $465 = (($sCollSeqName) + 4|0); - HEAP32[$465>>2] = 6; - $466 = HEAP32[$db>>2]|0; - $467 = HEAP32[$pLeft2>>2]|0; - $468 = (_sqlite3ExprDup($466,$467,0)|0); - HEAP32[$pNewExpr1>>2] = $468; - $469 = HEAP32[$pParse>>2]|0; - $470 = HEAP32[$pParse>>2]|0; - $471 = HEAP32[$pNewExpr1>>2]|0; - $472 = (_sqlite3ExprAddCollateToken($470,$471,$sCollSeqName)|0); - $473 = HEAP32[$pStr1>>2]|0; - $474 = (_sqlite3PExpr($469,83,$472,$473,0)|0); - HEAP32[$pNewExpr1>>2] = $474; - $475 = HEAP32[$pNewExpr1>>2]|0; - $476 = HEAP32[$pExpr>>2]|0; - _transferJoinMarkings($475,$476); - $477 = HEAP32[$1>>2]|0; - $478 = HEAP32[$pNewExpr1>>2]|0; - $479 = (_whereClauseInsert($477,$478,3)|0); - HEAP32[$idxNew13>>2] = $479; - $480 = HEAP32[$0>>2]|0; - $481 = HEAP32[$1>>2]|0; - $482 = HEAP32[$idxNew13>>2]|0; - _exprAnalyze($480,$481,$482); - $483 = HEAP32[$db>>2]|0; - $484 = HEAP32[$pLeft2>>2]|0; - $485 = (_sqlite3ExprDup($483,$484,0)|0); - HEAP32[$pNewExpr2>>2] = $485; - $486 = HEAP32[$pParse>>2]|0; - $487 = HEAP32[$pParse>>2]|0; - $488 = HEAP32[$pNewExpr2>>2]|0; - $489 = (_sqlite3ExprAddCollateToken($487,$488,$sCollSeqName)|0); - $490 = HEAP32[$pStr2>>2]|0; - $491 = (_sqlite3PExpr($486,82,$489,$490,0)|0); - HEAP32[$pNewExpr2>>2] = $491; - $492 = HEAP32[$pNewExpr2>>2]|0; - $493 = HEAP32[$pExpr>>2]|0; - _transferJoinMarkings($492,$493); - $494 = HEAP32[$1>>2]|0; - $495 = HEAP32[$pNewExpr2>>2]|0; - $496 = (_whereClauseInsert($494,$495,3)|0); - HEAP32[$idxNew2>>2] = $496; - $497 = HEAP32[$0>>2]|0; - $498 = HEAP32[$1>>2]|0; - $499 = HEAP32[$idxNew2>>2]|0; - _exprAnalyze($497,$498,$499); - $500 = HEAP32[$2>>2]|0; - $501 = HEAP32[$1>>2]|0; - $502 = (($501) + 20|0); - $503 = HEAP32[$502>>2]|0; - $504 = (($503) + (($500*48)|0)|0); - HEAP32[$pTerm>>2] = $504; - $505 = HEAP32[$isComplete>>2]|0; - $506 = ($505|0)!=(0); - if ($506) { - $507 = HEAP32[$2>>2]|0; - $508 = HEAP32[$idxNew13>>2]|0; - $509 = HEAP32[$1>>2]|0; - $510 = (($509) + 20|0); - $511 = HEAP32[$510>>2]|0; - $512 = (($511) + (($508*48)|0)|0); - $513 = (($512) + 4|0); - HEAP32[$513>>2] = $507; - $514 = HEAP32[$2>>2]|0; - $515 = HEAP32[$idxNew2>>2]|0; - $516 = HEAP32[$1>>2]|0; - $517 = (($516) + 20|0); - $518 = HEAP32[$517>>2]|0; - $519 = (($518) + (($515*48)|0)|0); - $520 = (($519) + 4|0); - HEAP32[$520>>2] = $514; - $521 = HEAP32[$pTerm>>2]|0; - $522 = (($521) + 21|0); - HEAP8[$522>>0] = 2; - } - } - } - $523 = HEAP32[$pExpr>>2]|0; - $524 = (_isMatchOfColumn($523)|0); - $525 = ($524|0)!=(0); - if ($525) { - $526 = HEAP32[$pExpr>>2]|0; - $527 = (($526) + 20|0); - $528 = HEAP32[$527>>2]|0; - $529 = (($528) + 4|0); - $530 = HEAP32[$529>>2]|0; - $531 = HEAP32[$530>>2]|0; - HEAP32[$pRight5>>2] = $531; - $532 = HEAP32[$pExpr>>2]|0; - $533 = (($532) + 20|0); - $534 = HEAP32[$533>>2]|0; - $535 = (($534) + 4|0); - $536 = HEAP32[$535>>2]|0; - $537 = (($536) + 20|0); - $538 = HEAP32[$537>>2]|0; - HEAP32[$pLeft6>>2] = $538; - $539 = HEAP32[$pMaskSet>>2]|0; - $540 = HEAP32[$pRight5>>2]|0; - $541 = (_exprTableUsage($539,$540)|0); - $542 = tempRet0; - $543 = $prereqExpr; - $544 = $543; - HEAP32[$544>>2] = $541; - $545 = (($543) + 4)|0; - $546 = $545; - HEAP32[$546>>2] = $542; - $547 = HEAP32[$pMaskSet>>2]|0; - $548 = HEAP32[$pLeft6>>2]|0; - $549 = (_exprTableUsage($547,$548)|0); - $550 = tempRet0; - $551 = $prereqColumn; - $552 = $551; - HEAP32[$552>>2] = $549; - $553 = (($551) + 4)|0; - $554 = $553; - HEAP32[$554>>2] = $550; - $555 = $prereqExpr; - $556 = $555; - $557 = HEAP32[$556>>2]|0; - $558 = (($555) + 4)|0; - $559 = $558; - $560 = HEAP32[$559>>2]|0; - $561 = $prereqColumn; - $562 = $561; - $563 = HEAP32[$562>>2]|0; - $564 = (($561) + 4)|0; - $565 = $564; - $566 = HEAP32[$565>>2]|0; - $567 = $557 & $563; - $568 = $560 & $566; - $569 = ($567|0)==(0); - $570 = ($568|0)==(0); - $571 = $569 & $570; - if ($571) { - $572 = HEAP32[$pParse>>2]|0; - $573 = HEAP32[$db>>2]|0; - $574 = HEAP32[$pRight5>>2]|0; - $575 = (_sqlite3ExprDup($573,$574,0)|0); - $576 = (_sqlite3PExpr($572,51,0,$575,0)|0); - HEAP32[$pNewExpr7>>2] = $576; - $577 = HEAP32[$1>>2]|0; - $578 = HEAP32[$pNewExpr7>>2]|0; - $579 = (_whereClauseInsert($577,$578,3)|0); - HEAP32[$idxNew4>>2] = $579; - $580 = HEAP32[$idxNew4>>2]|0; - $581 = HEAP32[$1>>2]|0; - $582 = (($581) + 20|0); - $583 = HEAP32[$582>>2]|0; - $584 = (($583) + (($580*48)|0)|0); - HEAP32[$pNewTerm>>2] = $584; - $585 = $prereqExpr; - $586 = $585; - $587 = HEAP32[$586>>2]|0; - $588 = (($585) + 4)|0; - $589 = $588; - $590 = HEAP32[$589>>2]|0; - $591 = HEAP32[$pNewTerm>>2]|0; - $592 = (($591) + 32|0); - $593 = $592; - $594 = $593; - HEAP32[$594>>2] = $587; - $595 = (($593) + 4)|0; - $596 = $595; - HEAP32[$596>>2] = $590; - $597 = HEAP32[$pLeft6>>2]|0; - $598 = (($597) + 28|0); - $599 = HEAP32[$598>>2]|0; - $600 = HEAP32[$pNewTerm>>2]|0; - $601 = (($600) + 8|0); - HEAP32[$601>>2] = $599; - $602 = HEAP32[$pLeft6>>2]|0; - $603 = (($602) + 32|0); - $604 = HEAP16[$603>>1]|0; - $605 = $604 << 16 >> 16; - $606 = HEAP32[$pNewTerm>>2]|0; - $607 = (($606) + 12|0); - HEAP32[$607>>2] = $605; - $608 = HEAP32[$pNewTerm>>2]|0; - $609 = (($608) + 18|0); - HEAP16[$609>>1] = 64; - $610 = HEAP32[$2>>2]|0; - $611 = HEAP32[$pNewTerm>>2]|0; - $612 = (($611) + 4|0); - HEAP32[$612>>2] = $610; - $613 = HEAP32[$2>>2]|0; - $614 = HEAP32[$1>>2]|0; - $615 = (($614) + 20|0); - $616 = HEAP32[$615>>2]|0; - $617 = (($616) + (($613*48)|0)|0); - HEAP32[$pTerm>>2] = $617; - $618 = HEAP32[$pTerm>>2]|0; - $619 = (($618) + 21|0); - HEAP8[$619>>0] = 1; - $620 = HEAP32[$pTerm>>2]|0; - $621 = (($620) + 20|0); - $622 = HEAP8[$621>>0]|0; - $623 = $622&255; - $624 = $623 | 8; - $625 = $624&255; - HEAP8[$621>>0] = $625; - $626 = HEAP32[$pTerm>>2]|0; - $627 = (($626) + 40|0); - $628 = $627; - $629 = $628; - $630 = HEAP32[$629>>2]|0; - $631 = (($628) + 4)|0; - $632 = $631; - $633 = HEAP32[$632>>2]|0; - $634 = HEAP32[$pNewTerm>>2]|0; - $635 = (($634) + 40|0); - $636 = $635; - $637 = $636; - HEAP32[$637>>2] = $630; - $638 = (($636) + 4)|0; - $639 = $638; - HEAP32[$639>>2] = $633; - } - } - $640 = $extraRight; - $641 = $640; - $642 = HEAP32[$641>>2]|0; - $643 = (($640) + 4)|0; - $644 = $643; - $645 = HEAP32[$644>>2]|0; - $646 = HEAP32[$pTerm>>2]|0; - $647 = (($646) + 32|0); - $648 = $647; - $649 = $648; - $650 = HEAP32[$649>>2]|0; - $651 = (($648) + 4)|0; - $652 = $651; - $653 = HEAP32[$652>>2]|0; - $654 = $650 | $642; - $655 = $653 | $645; - $656 = $647; - $657 = $656; - HEAP32[$657>>2] = $654; - $658 = (($656) + 4)|0; - $659 = $658; - HEAP32[$659>>2] = $655; - STACKTOP = sp;return; -} -function _allowedOp($op) { - $op = $op|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $op; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)==(75); - if ($2) { - $10 = 1; - } else { - $3 = HEAP32[$0>>2]|0; - $4 = ($3|0)>=(79); - $5 = HEAP32[$0>>2]|0; - $6 = ($5|0)<=(83); - $or$cond = $4 & $6; - if ($or$cond) { - $10 = 1; - } else { - $7 = HEAP32[$0>>2]|0; - $8 = ($7|0)==(76); - $10 = $8; - } - } - $9 = $10&1; - STACKTOP = sp;return ($9|0); -} -function _operatorMask($op) { - $op = $op|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - $c = sp + 4|0; - HEAP32[$0>>2] = $op; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)==(75); - do { - if ($2) { - HEAP16[$c>>1] = 1; - } else { - $3 = HEAP32[$0>>2]|0; - $4 = ($3|0)==(76); - if ($4) { - HEAP16[$c>>1] = 128; - break; - } else { - $5 = HEAP32[$0>>2]|0; - $6 = (($5) - 79)|0; - $7 = 2 << $6; - $8 = $7&65535; - HEAP16[$c>>1] = $8; - break; - } - } - } while(0); - $9 = HEAP16[$c>>1]|0; - STACKTOP = sp;return ($9|0); -} -function _whereClauseInsert($pWC,$p,$wtFlags) { - $pWC = $pWC|0; - $p = $p|0; - $wtFlags = $wtFlags|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; - var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; - var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; - var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; - var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; - var $97 = 0, $98 = 0, $99 = 0, $db = 0, $idx = 0, $pOld = 0, $pTerm = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 28|0; - $pTerm = sp + 12|0; - $idx = sp + 8|0; - $pOld = sp + 4|0; - $db = sp; - HEAP32[$1>>2] = $pWC; - HEAP32[$2>>2] = $p; - HEAP8[$3>>0] = $wtFlags; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 12|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 16|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($6|0)>=($9|0); - do { - if ($10) { - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 20|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pOld>>2] = $13; - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$16>>2]|0; - HEAP32[$db>>2] = $17; - $18 = HEAP32[$db>>2]|0; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 16|0); - $21 = HEAP32[$20>>2]|0; - $22 = ($21*48)|0; - $23 = $22<<1; - $24 = (_sqlite3DbMallocRaw($18,$23)|0); - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 20|0); - HEAP32[$26>>2] = $24; - $27 = HEAP32[$1>>2]|0; - $28 = (($27) + 20|0); - $29 = HEAP32[$28>>2]|0; - $30 = ($29|0)==(0|0); - if (!($30)) { - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 20|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$pOld>>2]|0; - $44 = HEAP32[$1>>2]|0; - $45 = (($44) + 12|0); - $46 = HEAP32[$45>>2]|0; - $47 = ($46*48)|0; - _memcpy(($42|0),($43|0),($47|0))|0; - $48 = HEAP32[$pOld>>2]|0; - $49 = HEAP32[$1>>2]|0; - $50 = (($49) + 24|0); - $51 = ($48|0)!=($50|0); - if ($51) { - $52 = HEAP32[$db>>2]|0; - $53 = HEAP32[$pOld>>2]|0; - _sqlite3DbFree($52,$53); - } - $54 = HEAP32[$db>>2]|0; - $55 = HEAP32[$1>>2]|0; - $56 = (($55) + 20|0); - $57 = HEAP32[$56>>2]|0; - $58 = (_sqlite3DbMallocSize($54,$57)|0); - $59 = (($58>>>0) / 48)&-1; - $60 = HEAP32[$1>>2]|0; - $61 = (($60) + 16|0); - HEAP32[$61>>2] = $59; - break; - } - $31 = HEAP8[$3>>0]|0; - $32 = $31&255; - $33 = $32 & 1; - $34 = ($33|0)!=(0); - if ($34) { - $35 = HEAP32[$db>>2]|0; - $36 = HEAP32[$2>>2]|0; - _sqlite3ExprDelete($35,$36); - } - $37 = HEAP32[$pOld>>2]|0; - $38 = HEAP32[$1>>2]|0; - $39 = (($38) + 20|0); - HEAP32[$39>>2] = $37; - HEAP32[$0>>2] = 0; - $102 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($102|0); - } - } while(0); - $62 = HEAP32[$1>>2]|0; - $63 = (($62) + 12|0); - $64 = HEAP32[$63>>2]|0; - $65 = (($64) + 1)|0; - HEAP32[$63>>2] = $65; - HEAP32[$idx>>2] = $64; - $66 = HEAP32[$1>>2]|0; - $67 = (($66) + 20|0); - $68 = HEAP32[$67>>2]|0; - $69 = (($68) + (($64*48)|0)|0); - HEAP32[$pTerm>>2] = $69; - $70 = HEAP32[$2>>2]|0; - $71 = ($70|0)!=(0|0); - if ($71) { - $72 = HEAP32[$2>>2]|0; - $73 = (($72) + 4|0); - $74 = HEAP32[$73>>2]|0; - $75 = $74 & 262144; - $76 = ($75|0)!=(0); - if ($76) { - $77 = HEAP32[$2>>2]|0; - $78 = (($77) + 28|0); - $79 = HEAP32[$78>>2]|0; - $80 = ($79|0)<(0); - $81 = $80 << 31 >> 31; - $82 = (_sqlite3LogEst($79,$81)|0); - $83 = $82 << 16 >> 16; - $84 = (($83) - 99)|0; - $85 = $84&65535; - $86 = HEAP32[$pTerm>>2]|0; - $87 = (($86) + 16|0); - HEAP16[$87>>1] = $85; - } else { - label = 12; - } - } else { - label = 12; - } - if ((label|0) == 12) { - $88 = HEAP32[$pTerm>>2]|0; - $89 = (($88) + 16|0); - HEAP16[$89>>1] = 1; - } - $90 = HEAP32[$2>>2]|0; - $91 = (_sqlite3ExprSkipCollate($90)|0); - $92 = HEAP32[$pTerm>>2]|0; - HEAP32[$92>>2] = $91; - $93 = HEAP8[$3>>0]|0; - $94 = HEAP32[$pTerm>>2]|0; - $95 = (($94) + 20|0); - HEAP8[$95>>0] = $93; - $96 = HEAP32[$1>>2]|0; - $97 = HEAP32[$pTerm>>2]|0; - $98 = (($97) + 24|0); - HEAP32[$98>>2] = $96; - $99 = HEAP32[$pTerm>>2]|0; - $100 = (($99) + 4|0); - HEAP32[$100>>2] = -1; - $101 = HEAP32[$idx>>2]|0; - HEAP32[$0>>2] = $101; - $102 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($102|0); -} -function _exprCommute($pParse,$pExpr) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $expLeft = 0, $expRight = 0, $t = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $expRight = sp + 14|0; - $expLeft = sp + 12|0; - $t = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pExpr; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 16|0); - $4 = HEAP32[$3>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - $7 = $6 & 256; - $8 = $7&65535; - HEAP16[$expRight>>1] = $8; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 12|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + 4|0); - $13 = HEAP32[$12>>2]|0; - $14 = $13 & 256; - $15 = $14&65535; - HEAP16[$expLeft>>1] = $15; - $16 = HEAP16[$expRight>>1]|0; - $17 = $16&65535; - $18 = HEAP16[$expLeft>>1]|0; - $19 = $18&65535; - $20 = ($17|0)==($19|0); - do { - if ($20) { - $21 = HEAP16[$expRight>>1]|0; - $22 = ($21<<16>>16)!=(0); - if ($22) { - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 16|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + 4|0); - $27 = HEAP32[$26>>2]|0; - $28 = $27 & -257; - HEAP32[$26>>2] = $28; - break; - } - $29 = HEAP32[$0>>2]|0; - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 12|0); - $32 = HEAP32[$31>>2]|0; - $33 = (_sqlite3ExprCollSeq($29,$32)|0); - $34 = ($33|0)!=(0|0); - if ($34) { - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 12|0); - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + 4|0); - $39 = HEAP32[$38>>2]|0; - $40 = $39 | 256; - HEAP32[$38>>2] = $40; - } - } - } while(0); - $41 = HEAP32[$1>>2]|0; - $42 = (($41) + 16|0); - $43 = HEAP32[$42>>2]|0; - HEAP32[$t>>2] = $43; - $44 = HEAP32[$1>>2]|0; - $45 = (($44) + 12|0); - $46 = HEAP32[$45>>2]|0; - $47 = HEAP32[$1>>2]|0; - $48 = (($47) + 16|0); - HEAP32[$48>>2] = $46; - $49 = HEAP32[$t>>2]|0; - $50 = HEAP32[$1>>2]|0; - $51 = (($50) + 12|0); - HEAP32[$51>>2] = $49; - $52 = HEAP32[$1>>2]|0; - $53 = HEAP8[$52>>0]|0; - $54 = $53&255; - $55 = ($54|0)>=(80); - if (!($55)) { - STACKTOP = sp;return; - } - $56 = HEAP32[$1>>2]|0; - $57 = HEAP8[$56>>0]|0; - $58 = $57&255; - $59 = (($58) - 80)|0; - $60 = $59 ^ 2; - $61 = (($60) + 80)|0; - $62 = $61&255; - $63 = HEAP32[$1>>2]|0; - HEAP8[$63>>0] = $62; - STACKTOP = sp;return; -} -function _transferJoinMarkings($pDerived,$pBase) { - $pDerived = $pDerived|0; - $pBase = $pBase|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pDerived; - HEAP32[$1>>2] = $pBase; - $2 = HEAP32[$0>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - STACKTOP = sp;return; - } - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - $7 = $6 & 1; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - $11 = $10 | $7; - HEAP32[$9>>2] = $11; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 36|0); - $14 = HEAP16[$13>>1]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 36|0); - HEAP16[$16>>1] = $14; - STACKTOP = sp;return; -} -function _exprAnalyzeOrTerm($pSrc,$pWC,$idxTerm) { - $pSrc = $pSrc|0; - $pWC = $pWC|0; - $idxTerm = $idxTerm|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $48 = 0, $49 = 0, $5 = 0; - var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; - var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; - var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $affLeft = 0, $affRight = 0, $b = 0, $b1 = 0, $chngToIN = 0, $db = 0; - var $i = 0, $iColumn = 0, $iCursor = 0, $idxNew = 0, $indexable = 0, $j = 0, $j2 = 0, $okToChngToIN = 0, $pAndInfo = 0, $pAndTerm = 0, $pAndWC = 0, $pDup = 0, $pExpr = 0, $pLeft = 0, $pList = 0, $pNew = 0, $pOrInfo = 0, $pOrTerm = 0, $pOrWc = 0, $pOther = 0; - var $pParse = 0, $pTerm = 0, $pWInfo = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 144|0; - $0 = sp + 140|0; - $1 = sp + 136|0; - $2 = sp + 132|0; - $pWInfo = sp + 128|0; - $pParse = sp + 124|0; - $db = sp + 120|0; - $pTerm = sp + 116|0; - $pExpr = sp + 112|0; - $i = sp + 108|0; - $pOrWc = sp + 104|0; - $pOrTerm = sp + 100|0; - $pOrInfo = sp + 96|0; - $chngToIN = sp + 24|0; - $indexable = sp + 16|0; - $pAndInfo = sp + 92|0; - $pAndWC = sp + 88|0; - $pAndTerm = sp + 84|0; - $j = sp + 80|0; - $b = sp + 8|0; - $b1 = sp; - $pOther = sp + 76|0; - $okToChngToIN = sp + 72|0; - $iColumn = sp + 68|0; - $iCursor = sp + 64|0; - $j2 = sp + 60|0; - $affLeft = sp + 56|0; - $affRight = sp + 52|0; - $pDup = sp + 48|0; - $pList = sp + 44|0; - $pLeft = sp + 40|0; - $pNew = sp + 36|0; - $idxNew = sp + 32|0; - HEAP32[$0>>2] = $pSrc; - HEAP32[$1>>2] = $pWC; - HEAP32[$2>>2] = $idxTerm; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$pWInfo>>2] = $4; - $5 = HEAP32[$pWInfo>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$pParse>>2] = $6; - $7 = HEAP32[$pParse>>2]|0; - $8 = HEAP32[$7>>2]|0; - HEAP32[$db>>2] = $8; - $9 = HEAP32[$2>>2]|0; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 20|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + (($9*48)|0)|0); - HEAP32[$pTerm>>2] = $13; - $14 = HEAP32[$pTerm>>2]|0; - $15 = HEAP32[$14>>2]|0; - HEAP32[$pExpr>>2] = $15; - $16 = HEAP32[$db>>2]|0; - $17 = (_sqlite3DbMallocZero($16,416)|0); - HEAP32[$pOrInfo>>2] = $17; - $18 = HEAP32[$pTerm>>2]|0; - $19 = (($18) + 12|0); - HEAP32[$19>>2] = $17; - $20 = HEAP32[$pOrInfo>>2]|0; - $21 = ($20|0)==(0|0); - if ($21) { - STACKTOP = sp;return; - } - $22 = HEAP32[$pTerm>>2]|0; - $23 = (($22) + 20|0); - $24 = HEAP8[$23>>0]|0; - $25 = $24&255; - $26 = $25 | 16; - $27 = $26&255; - HEAP8[$23>>0] = $27; - $28 = HEAP32[$pOrInfo>>2]|0; - HEAP32[$pOrWc>>2] = $28; - $29 = HEAP32[$pOrWc>>2]|0; - $30 = HEAP32[$pWInfo>>2]|0; - _whereClauseInit($29,$30); - $31 = HEAP32[$pOrWc>>2]|0; - $32 = HEAP32[$pExpr>>2]|0; - _whereSplit($31,$32,71); - $33 = HEAP32[$0>>2]|0; - $34 = HEAP32[$pOrWc>>2]|0; - _exprAnalyzeAll($33,$34); - $35 = HEAP32[$db>>2]|0; - $36 = (($35) + 64|0); - $37 = HEAP8[$36>>0]|0; - $38 = ($37<<24>>24)!=(0); - if ($38) { - STACKTOP = sp;return; - } - $39 = $indexable; - $40 = $39; - HEAP32[$40>>2] = -1; - $41 = (($39) + 4)|0; - $42 = $41; - HEAP32[$42>>2] = -1; - $43 = $chngToIN; - $44 = $43; - HEAP32[$44>>2] = -1; - $45 = (($43) + 4)|0; - $46 = $45; - HEAP32[$46>>2] = -1; - $47 = HEAP32[$pOrWc>>2]|0; - $48 = (($47) + 12|0); - $49 = HEAP32[$48>>2]|0; - $50 = (($49) - 1)|0; - HEAP32[$i>>2] = $50; - $51 = HEAP32[$pOrWc>>2]|0; - $52 = (($51) + 20|0); - $53 = HEAP32[$52>>2]|0; - HEAP32[$pOrTerm>>2] = $53; - while(1) { - $54 = HEAP32[$i>>2]|0; - $55 = ($54|0)>=(0); - if (!($55)) { - break; - } - $56 = $indexable; - $57 = $56; - $58 = HEAP32[$57>>2]|0; - $59 = (($56) + 4)|0; - $60 = $59; - $61 = HEAP32[$60>>2]|0; - $62 = ($58|0)!=(0); - $63 = ($61|0)!=(0); - $64 = $62 | $63; - if (!($64)) { - break; - } - $65 = HEAP32[$pOrTerm>>2]|0; - $66 = (($65) + 18|0); - $67 = HEAP16[$66>>1]|0; - $68 = $67&65535; - $69 = $68 & 255; - $70 = ($69|0)==(0); - do { - if ($70) { - $71 = $chngToIN; - $72 = $71; - HEAP32[$72>>2] = 0; - $73 = (($71) + 4)|0; - $74 = $73; - HEAP32[$74>>2] = 0; - $75 = HEAP32[$db>>2]|0; - $76 = (_sqlite3DbMallocRaw($75,408)|0); - HEAP32[$pAndInfo>>2] = $76; - $77 = HEAP32[$pAndInfo>>2]|0; - $78 = ($77|0)!=(0|0); - if ($78) { - $79 = $b; - $80 = $79; - HEAP32[$80>>2] = 0; - $81 = (($79) + 4)|0; - $82 = $81; - HEAP32[$82>>2] = 0; - $83 = HEAP32[$pAndInfo>>2]|0; - $84 = HEAP32[$pOrTerm>>2]|0; - $85 = (($84) + 12|0); - HEAP32[$85>>2] = $83; - $86 = HEAP32[$pOrTerm>>2]|0; - $87 = (($86) + 20|0); - $88 = HEAP8[$87>>0]|0; - $89 = $88&255; - $90 = $89 | 32; - $91 = $90&255; - HEAP8[$87>>0] = $91; - $92 = HEAP32[$pOrTerm>>2]|0; - $93 = (($92) + 18|0); - HEAP16[$93>>1] = 512; - $94 = HEAP32[$pAndInfo>>2]|0; - HEAP32[$pAndWC>>2] = $94; - $95 = HEAP32[$pAndWC>>2]|0; - $96 = HEAP32[$1>>2]|0; - $97 = HEAP32[$96>>2]|0; - _whereClauseInit($95,$97); - $98 = HEAP32[$pAndWC>>2]|0; - $99 = HEAP32[$pOrTerm>>2]|0; - $100 = HEAP32[$99>>2]|0; - _whereSplit($98,$100,72); - $101 = HEAP32[$0>>2]|0; - $102 = HEAP32[$pAndWC>>2]|0; - _exprAnalyzeAll($101,$102); - $103 = HEAP32[$1>>2]|0; - $104 = HEAP32[$pAndWC>>2]|0; - $105 = (($104) + 4|0); - HEAP32[$105>>2] = $103; - $106 = HEAP32[$db>>2]|0; - $107 = (($106) + 64|0); - $108 = HEAP8[$107>>0]|0; - $109 = ($108<<24>>24)!=(0); - L22: do { - if (!($109)) { - HEAP32[$j>>2] = 0; - $110 = HEAP32[$pAndWC>>2]|0; - $111 = (($110) + 20|0); - $112 = HEAP32[$111>>2]|0; - HEAP32[$pAndTerm>>2] = $112; - while(1) { - $113 = HEAP32[$j>>2]|0; - $114 = HEAP32[$pAndWC>>2]|0; - $115 = (($114) + 12|0); - $116 = HEAP32[$115>>2]|0; - $117 = ($113|0)<($116|0); - if (!($117)) { - break L22; - } - $118 = HEAP32[$pAndTerm>>2]|0; - $119 = HEAP32[$118>>2]|0; - $120 = HEAP8[$119>>0]|0; - $121 = $120&255; - $122 = (_allowedOp($121)|0); - $123 = ($122|0)!=(0); - if ($123) { - $124 = HEAP32[$pWInfo>>2]|0; - $125 = (($124) + 68|0); - $126 = HEAP32[$pAndTerm>>2]|0; - $127 = (($126) + 8|0); - $128 = HEAP32[$127>>2]|0; - $129 = (_getMask($125,$128)|0); - $130 = tempRet0; - $131 = $b; - $132 = $131; - $133 = HEAP32[$132>>2]|0; - $134 = (($131) + 4)|0; - $135 = $134; - $136 = HEAP32[$135>>2]|0; - $137 = $133 | $129; - $138 = $136 | $130; - $139 = $b; - $140 = $139; - HEAP32[$140>>2] = $137; - $141 = (($139) + 4)|0; - $142 = $141; - HEAP32[$142>>2] = $138; - } - $143 = HEAP32[$j>>2]|0; - $144 = (($143) + 1)|0; - HEAP32[$j>>2] = $144; - $145 = HEAP32[$pAndTerm>>2]|0; - $146 = (($145) + 48|0); - HEAP32[$pAndTerm>>2] = $146; - } - } - } while(0); - $147 = $b; - $148 = $147; - $149 = HEAP32[$148>>2]|0; - $150 = (($147) + 4)|0; - $151 = $150; - $152 = HEAP32[$151>>2]|0; - $153 = $indexable; - $154 = $153; - $155 = HEAP32[$154>>2]|0; - $156 = (($153) + 4)|0; - $157 = $156; - $158 = HEAP32[$157>>2]|0; - $159 = $155 & $149; - $160 = $158 & $152; - $161 = $indexable; - $162 = $161; - HEAP32[$162>>2] = $159; - $163 = (($161) + 4)|0; - $164 = $163; - HEAP32[$164>>2] = $160; - } - } else { - $165 = HEAP32[$pOrTerm>>2]|0; - $166 = (($165) + 20|0); - $167 = HEAP8[$166>>0]|0; - $168 = $167&255; - $169 = $168 & 8; - $170 = ($169|0)!=(0); - if (!($170)) { - $171 = HEAP32[$pWInfo>>2]|0; - $172 = (($171) + 68|0); - $173 = HEAP32[$pOrTerm>>2]|0; - $174 = (($173) + 8|0); - $175 = HEAP32[$174>>2]|0; - $176 = (_getMask($172,$175)|0); - $177 = tempRet0; - $178 = $b1; - $179 = $178; - HEAP32[$179>>2] = $176; - $180 = (($178) + 4)|0; - $181 = $180; - HEAP32[$181>>2] = $177; - $182 = HEAP32[$pOrTerm>>2]|0; - $183 = (($182) + 20|0); - $184 = HEAP8[$183>>0]|0; - $185 = $184&255; - $186 = $185 & 2; - $187 = ($186|0)!=(0); - if ($187) { - $188 = HEAP32[$pOrTerm>>2]|0; - $189 = (($188) + 4|0); - $190 = HEAP32[$189>>2]|0; - $191 = HEAP32[$pOrWc>>2]|0; - $192 = (($191) + 20|0); - $193 = HEAP32[$192>>2]|0; - $194 = (($193) + (($190*48)|0)|0); - HEAP32[$pOther>>2] = $194; - $195 = HEAP32[$pWInfo>>2]|0; - $196 = (($195) + 68|0); - $197 = HEAP32[$pOther>>2]|0; - $198 = (($197) + 8|0); - $199 = HEAP32[$198>>2]|0; - $200 = (_getMask($196,$199)|0); - $201 = tempRet0; - $202 = $b1; - $203 = $202; - $204 = HEAP32[$203>>2]|0; - $205 = (($202) + 4)|0; - $206 = $205; - $207 = HEAP32[$206>>2]|0; - $208 = $204 | $200; - $209 = $207 | $201; - $210 = $b1; - $211 = $210; - HEAP32[$211>>2] = $208; - $212 = (($210) + 4)|0; - $213 = $212; - HEAP32[$213>>2] = $209; - } - $214 = $b1; - $215 = $214; - $216 = HEAP32[$215>>2]|0; - $217 = (($214) + 4)|0; - $218 = $217; - $219 = HEAP32[$218>>2]|0; - $220 = $indexable; - $221 = $220; - $222 = HEAP32[$221>>2]|0; - $223 = (($220) + 4)|0; - $224 = $223; - $225 = HEAP32[$224>>2]|0; - $226 = $222 & $216; - $227 = $225 & $219; - $228 = $indexable; - $229 = $228; - HEAP32[$229>>2] = $226; - $230 = (($228) + 4)|0; - $231 = $230; - HEAP32[$231>>2] = $227; - $232 = HEAP32[$pOrTerm>>2]|0; - $233 = (($232) + 18|0); - $234 = HEAP16[$233>>1]|0; - $235 = $234&65535; - $236 = $235 & 2; - $237 = ($236|0)==(0); - if ($237) { - $238 = $chngToIN; - $239 = $238; - HEAP32[$239>>2] = 0; - $240 = (($238) + 4)|0; - $241 = $240; - HEAP32[$241>>2] = 0; - break; - } else { - $242 = $b1; - $243 = $242; - $244 = HEAP32[$243>>2]|0; - $245 = (($242) + 4)|0; - $246 = $245; - $247 = HEAP32[$246>>2]|0; - $248 = $chngToIN; - $249 = $248; - $250 = HEAP32[$249>>2]|0; - $251 = (($248) + 4)|0; - $252 = $251; - $253 = HEAP32[$252>>2]|0; - $254 = $250 & $244; - $255 = $253 & $247; - $256 = $chngToIN; - $257 = $256; - HEAP32[$257>>2] = $254; - $258 = (($256) + 4)|0; - $259 = $258; - HEAP32[$259>>2] = $255; - break; - } - } - } - } while(0); - $260 = HEAP32[$i>>2]|0; - $261 = (($260) + -1)|0; - HEAP32[$i>>2] = $261; - $262 = HEAP32[$pOrTerm>>2]|0; - $263 = (($262) + 48|0); - HEAP32[$pOrTerm>>2] = $263; - } - $264 = $indexable; - $265 = $264; - $266 = HEAP32[$265>>2]|0; - $267 = (($264) + 4)|0; - $268 = $267; - $269 = HEAP32[$268>>2]|0; - $270 = HEAP32[$pOrInfo>>2]|0; - $271 = (($270) + 408|0); - $272 = $271; - $273 = $272; - HEAP32[$273>>2] = $266; - $274 = (($272) + 4)|0; - $275 = $274; - HEAP32[$275>>2] = $269; - $276 = $indexable; - $277 = $276; - $278 = HEAP32[$277>>2]|0; - $279 = (($276) + 4)|0; - $280 = $279; - $281 = HEAP32[$280>>2]|0; - $282 = ($278|0)==(0); - $283 = ($281|0)==(0); - $284 = $282 & $283; - $285 = $284 ? 0 : 256; - $286 = $285&65535; - $287 = HEAP32[$pTerm>>2]|0; - $288 = (($287) + 18|0); - HEAP16[$288>>1] = $286; - $289 = $chngToIN; - $290 = $289; - $291 = HEAP32[$290>>2]|0; - $292 = (($289) + 4)|0; - $293 = $292; - $294 = HEAP32[$293>>2]|0; - $295 = ($291|0)!=(0); - $296 = ($294|0)!=(0); - $297 = $295 | $296; - if (!($297)) { - STACKTOP = sp;return; - } - HEAP32[$okToChngToIN>>2] = 0; - HEAP32[$iColumn>>2] = -1; - HEAP32[$iCursor>>2] = -1; - HEAP32[$j2>>2] = 0; - HEAP32[$j2>>2] = 0; - while(1) { - $298 = HEAP32[$j2>>2]|0; - $299 = ($298|0)<(2); - if (!($299)) { - break; - } - $300 = HEAP32[$okToChngToIN>>2]|0; - $301 = ($300|0)!=(0); - $302 = $301 ^ 1; - if (!($302)) { - break; - } - $303 = HEAP32[$pOrWc>>2]|0; - $304 = (($303) + 20|0); - $305 = HEAP32[$304>>2]|0; - HEAP32[$pOrTerm>>2] = $305; - $306 = HEAP32[$pOrWc>>2]|0; - $307 = (($306) + 12|0); - $308 = HEAP32[$307>>2]|0; - $309 = (($308) - 1)|0; - HEAP32[$i>>2] = $309; - while(1) { - $310 = HEAP32[$i>>2]|0; - $311 = ($310|0)>=(0); - if (!($311)) { - break; - } - $312 = HEAP32[$pOrTerm>>2]|0; - $313 = (($312) + 20|0); - $314 = HEAP8[$313>>0]|0; - $315 = $314&255; - $316 = $315 & -65; - $317 = $316&255; - HEAP8[$313>>0] = $317; - $318 = HEAP32[$pOrTerm>>2]|0; - $319 = (($318) + 8|0); - $320 = HEAP32[$319>>2]|0; - $321 = HEAP32[$iCursor>>2]|0; - $322 = ($320|0)==($321|0); - if (!($322)) { - $323 = $chngToIN; - $324 = $323; - $325 = HEAP32[$324>>2]|0; - $326 = (($323) + 4)|0; - $327 = $326; - $328 = HEAP32[$327>>2]|0; - $329 = HEAP32[$pWInfo>>2]|0; - $330 = (($329) + 68|0); - $331 = HEAP32[$pOrTerm>>2]|0; - $332 = (($331) + 8|0); - $333 = HEAP32[$332>>2]|0; - $334 = (_getMask($330,$333)|0); - $335 = tempRet0; - $336 = $325 & $334; - $337 = $328 & $335; - $338 = ($336|0)==(0); - $339 = ($337|0)==(0); - $340 = $338 & $339; - if (!($340)) { - label = 30; - break; - } - } - $347 = HEAP32[$i>>2]|0; - $348 = (($347) + -1)|0; - HEAP32[$i>>2] = $348; - $349 = HEAP32[$pOrTerm>>2]|0; - $350 = (($349) + 48|0); - HEAP32[$pOrTerm>>2] = $350; - } - if ((label|0) == 30) { - label = 0; - $341 = HEAP32[$pOrTerm>>2]|0; - $342 = (($341) + 12|0); - $343 = HEAP32[$342>>2]|0; - HEAP32[$iColumn>>2] = $343; - $344 = HEAP32[$pOrTerm>>2]|0; - $345 = (($344) + 8|0); - $346 = HEAP32[$345>>2]|0; - HEAP32[$iCursor>>2] = $346; - } - $351 = HEAP32[$i>>2]|0; - $352 = ($351|0)<(0); - if ($352) { - break; - } - HEAP32[$okToChngToIN>>2] = 1; - while(1) { - $353 = HEAP32[$i>>2]|0; - $354 = ($353|0)>=(0); - if (!($354)) { - break; - } - $355 = HEAP32[$okToChngToIN>>2]|0; - $356 = ($355|0)!=(0); - if (!($356)) { - break; - } - $357 = HEAP32[$pOrTerm>>2]|0; - $358 = (($357) + 8|0); - $359 = HEAP32[$358>>2]|0; - $360 = HEAP32[$iCursor>>2]|0; - $361 = ($359|0)!=($360|0); - $362 = HEAP32[$pOrTerm>>2]|0; - do { - if ($361) { - $363 = (($362) + 20|0); - $364 = HEAP8[$363>>0]|0; - $365 = $364&255; - $366 = $365 & -65; - $367 = $366&255; - HEAP8[$363>>0] = $367; - } else { - $368 = (($362) + 12|0); - $369 = HEAP32[$368>>2]|0; - $370 = HEAP32[$iColumn>>2]|0; - $371 = ($369|0)!=($370|0); - if ($371) { - HEAP32[$okToChngToIN>>2] = 0; - break; - } - $372 = HEAP32[$pOrTerm>>2]|0; - $373 = HEAP32[$372>>2]|0; - $374 = (($373) + 16|0); - $375 = HEAP32[$374>>2]|0; - $376 = (_sqlite3ExprAffinity($375)|0); - $377 = $376 << 24 >> 24; - HEAP32[$affRight>>2] = $377; - $378 = HEAP32[$pOrTerm>>2]|0; - $379 = HEAP32[$378>>2]|0; - $380 = (($379) + 12|0); - $381 = HEAP32[$380>>2]|0; - $382 = (_sqlite3ExprAffinity($381)|0); - $383 = $382 << 24 >> 24; - HEAP32[$affLeft>>2] = $383; - $384 = HEAP32[$affRight>>2]|0; - $385 = ($384|0)!=(0); - if ($385) { - $386 = HEAP32[$affRight>>2]|0; - $387 = HEAP32[$affLeft>>2]|0; - $388 = ($386|0)!=($387|0); - if ($388) { - HEAP32[$okToChngToIN>>2] = 0; - break; - } - } - $389 = HEAP32[$pOrTerm>>2]|0; - $390 = (($389) + 20|0); - $391 = HEAP8[$390>>0]|0; - $392 = $391&255; - $393 = $392 | 64; - $394 = $393&255; - HEAP8[$390>>0] = $394; - } - } while(0); - $395 = HEAP32[$i>>2]|0; - $396 = (($395) + -1)|0; - HEAP32[$i>>2] = $396; - $397 = HEAP32[$pOrTerm>>2]|0; - $398 = (($397) + 48|0); - HEAP32[$pOrTerm>>2] = $398; - } - $399 = HEAP32[$j2>>2]|0; - $400 = (($399) + 1)|0; - HEAP32[$j2>>2] = $400; - } - $401 = HEAP32[$okToChngToIN>>2]|0; - $402 = ($401|0)!=(0); - if (!($402)) { - STACKTOP = sp;return; - } - HEAP32[$pList>>2] = 0; - HEAP32[$pLeft>>2] = 0; - $403 = HEAP32[$pOrWc>>2]|0; - $404 = (($403) + 12|0); - $405 = HEAP32[$404>>2]|0; - $406 = (($405) - 1)|0; - HEAP32[$i>>2] = $406; - $407 = HEAP32[$pOrWc>>2]|0; - $408 = (($407) + 20|0); - $409 = HEAP32[$408>>2]|0; - HEAP32[$pOrTerm>>2] = $409; - while(1) { - $410 = HEAP32[$i>>2]|0; - $411 = ($410|0)>=(0); - if (!($411)) { - break; - } - $412 = HEAP32[$pOrTerm>>2]|0; - $413 = (($412) + 20|0); - $414 = HEAP8[$413>>0]|0; - $415 = $414&255; - $416 = $415 & 64; - $417 = ($416|0)==(0); - if (!($417)) { - $418 = HEAP32[$db>>2]|0; - $419 = HEAP32[$pOrTerm>>2]|0; - $420 = HEAP32[$419>>2]|0; - $421 = (($420) + 16|0); - $422 = HEAP32[$421>>2]|0; - $423 = (_sqlite3ExprDup($418,$422,0)|0); - HEAP32[$pDup>>2] = $423; - $424 = HEAP32[$pWInfo>>2]|0; - $425 = HEAP32[$424>>2]|0; - $426 = HEAP32[$pList>>2]|0; - $427 = HEAP32[$pDup>>2]|0; - $428 = (_sqlite3ExprListAppend($425,$426,$427)|0); - HEAP32[$pList>>2] = $428; - $429 = HEAP32[$pOrTerm>>2]|0; - $430 = HEAP32[$429>>2]|0; - $431 = (($430) + 12|0); - $432 = HEAP32[$431>>2]|0; - HEAP32[$pLeft>>2] = $432; - } - $433 = HEAP32[$i>>2]|0; - $434 = (($433) + -1)|0; - HEAP32[$i>>2] = $434; - $435 = HEAP32[$pOrTerm>>2]|0; - $436 = (($435) + 48|0); - HEAP32[$pOrTerm>>2] = $436; - } - $437 = HEAP32[$db>>2]|0; - $438 = HEAP32[$pLeft>>2]|0; - $439 = (_sqlite3ExprDup($437,$438,0)|0); - HEAP32[$pDup>>2] = $439; - $440 = HEAP32[$pParse>>2]|0; - $441 = HEAP32[$pDup>>2]|0; - $442 = (_sqlite3PExpr($440,75,$441,0,0)|0); - HEAP32[$pNew>>2] = $442; - $443 = HEAP32[$pNew>>2]|0; - $444 = ($443|0)!=(0|0); - if ($444) { - $445 = HEAP32[$pNew>>2]|0; - $446 = HEAP32[$pExpr>>2]|0; - _transferJoinMarkings($445,$446); - $447 = HEAP32[$pList>>2]|0; - $448 = HEAP32[$pNew>>2]|0; - $449 = (($448) + 20|0); - HEAP32[$449>>2] = $447; - $450 = HEAP32[$1>>2]|0; - $451 = HEAP32[$pNew>>2]|0; - $452 = (_whereClauseInsert($450,$451,3)|0); - HEAP32[$idxNew>>2] = $452; - $453 = HEAP32[$0>>2]|0; - $454 = HEAP32[$1>>2]|0; - $455 = HEAP32[$idxNew>>2]|0; - _exprAnalyze($453,$454,$455); - $456 = HEAP32[$2>>2]|0; - $457 = HEAP32[$1>>2]|0; - $458 = (($457) + 20|0); - $459 = HEAP32[$458>>2]|0; - $460 = (($459) + (($456*48)|0)|0); - HEAP32[$pTerm>>2] = $460; - $461 = HEAP32[$2>>2]|0; - $462 = HEAP32[$idxNew>>2]|0; - $463 = HEAP32[$1>>2]|0; - $464 = (($463) + 20|0); - $465 = HEAP32[$464>>2]|0; - $466 = (($465) + (($462*48)|0)|0); - $467 = (($466) + 4|0); - HEAP32[$467>>2] = $461; - $468 = HEAP32[$pTerm>>2]|0; - $469 = (($468) + 21|0); - HEAP8[$469>>0] = 1; - } else { - $470 = HEAP32[$db>>2]|0; - $471 = HEAP32[$pList>>2]|0; - _sqlite3ExprListDelete($470,$471); - } - $472 = HEAP32[$pTerm>>2]|0; - $473 = (($472) + 18|0); - HEAP16[$473>>1] = 2048; - STACKTOP = sp;return; -} -function _isLikeOrGlob($pParse,$pExpr,$ppPrefix,$pisComplete,$pnoCase) { - $pParse = $pParse|0; - $pExpr = $pExpr|0; - $ppPrefix = $ppPrefix|0; - $pisComplete = $pisComplete|0; - $pnoCase = $pnoCase|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $17 = 0, $18 = 0, $19 = 0; - var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; - var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; - var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; - var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; - var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $cnt = 0, $db = 0, $iCol = 0, $op = 0, $pLeft = 0, $pList = 0, $pPrefix = 0, $pReprepare = 0, $pRight = 0, $pVal = 0, $r1 = 0; - var $v = 0, $wc = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $0 = sp + 76|0; - $1 = sp + 72|0; - $2 = sp + 68|0; - $3 = sp + 64|0; - $4 = sp + 60|0; - $5 = sp + 56|0; - $z = sp + 52|0; - $pRight = sp + 48|0; - $pLeft = sp + 44|0; - $pList = sp + 40|0; - $c = sp + 36|0; - $cnt = sp + 32|0; - $wc = sp + 80|0; - $db = sp + 28|0; - $pVal = sp + 24|0; - $op = sp + 20|0; - $pReprepare = sp + 16|0; - $iCol = sp + 12|0; - $pPrefix = sp + 8|0; - $v = sp + 4|0; - $r1 = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pExpr; - HEAP32[$3>>2] = $ppPrefix; - HEAP32[$4>>2] = $pisComplete; - HEAP32[$5>>2] = $pnoCase; - HEAP32[$z>>2] = 0; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$db>>2] = $7; - HEAP32[$pVal>>2] = 0; - $8 = HEAP32[$db>>2]|0; - $9 = HEAP32[$2>>2]|0; - $10 = HEAP32[$5>>2]|0; - $11 = (_sqlite3IsLikeFunction($8,$9,$10,$wc)|0); - $12 = ($11|0)!=(0); - if (!($12)) { - HEAP32[$0>>2] = 0; - $166 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($166|0); - } - $13 = HEAP32[$2>>2]|0; - $14 = (($13) + 20|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$pList>>2] = $15; - $16 = HEAP32[$pList>>2]|0; - $17 = (($16) + 4|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + 20|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$pLeft>>2] = $20; - $21 = HEAP32[$pLeft>>2]|0; - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = ($23|0)!=(154); - if (!($24)) { - $25 = HEAP32[$pLeft>>2]|0; - $26 = (_sqlite3ExprAffinity($25)|0); - $27 = $26 << 24 >> 24; - $28 = ($27|0)!=(97); - if (!($28)) { - $29 = HEAP32[$pLeft>>2]|0; - $30 = (($29) + 44|0); - $31 = HEAP32[$30>>2]|0; - $32 = (($31) + 44|0); - $33 = HEAP8[$32>>0]|0; - $34 = $33&255; - $35 = $34 & 16; - $36 = ($35|0)!=(0); - if (!($36)) { - $37 = HEAP32[$pList>>2]|0; - $38 = (($37) + 4|0); - $39 = HEAP32[$38>>2]|0; - $40 = HEAP32[$39>>2]|0; - $41 = (_sqlite3ExprSkipCollate($40)|0); - HEAP32[$pRight>>2] = $41; - $42 = HEAP32[$pRight>>2]|0; - $43 = HEAP8[$42>>0]|0; - $44 = $43&255; - HEAP32[$op>>2] = $44; - $45 = HEAP32[$op>>2]|0; - $46 = ($45|0)==(135); - if ($46) { - $47 = HEAP32[$1>>2]|0; - $48 = (($47) + 476|0); - $49 = HEAP32[$48>>2]|0; - HEAP32[$pReprepare>>2] = $49; - $50 = HEAP32[$pRight>>2]|0; - $51 = (($50) + 32|0); - $52 = HEAP16[$51>>1]|0; - $53 = $52 << 16 >> 16; - HEAP32[$iCol>>2] = $53; - $54 = HEAP32[$pReprepare>>2]|0; - $55 = HEAP32[$iCol>>2]|0; - $56 = (_sqlite3VdbeGetBoundValue($54,$55,98)|0); - HEAP32[$pVal>>2] = $56; - $57 = HEAP32[$pVal>>2]|0; - $58 = ($57|0)!=(0|0); - if ($58) { - $59 = HEAP32[$pVal>>2]|0; - $60 = (_sqlite3_value_type($59)|0); - $61 = ($60|0)==(3); - if ($61) { - $62 = HEAP32[$pVal>>2]|0; - $63 = (_sqlite3_value_text($62)|0); - HEAP32[$z>>2] = $63; - } - } - $64 = HEAP32[$1>>2]|0; - $65 = (($64) + 8|0); - $66 = HEAP32[$65>>2]|0; - $67 = HEAP32[$iCol>>2]|0; - _sqlite3VdbeSetVarmask($66,$67); - } else { - $68 = HEAP32[$op>>2]|0; - $69 = ($68|0)==(97); - if ($69) { - $70 = HEAP32[$pRight>>2]|0; - $71 = (($70) + 8|0); - $72 = HEAP32[$71>>2]|0; - HEAP32[$z>>2] = $72; - } - } - $73 = HEAP32[$z>>2]|0; - $74 = ($73|0)!=(0|0); - do { - if ($74) { - HEAP32[$cnt>>2] = 0; - while(1) { - $75 = HEAP32[$cnt>>2]|0; - $76 = HEAP32[$z>>2]|0; - $77 = (($76) + ($75)|0); - $78 = HEAP8[$77>>0]|0; - $79 = $78 << 24 >> 24; - HEAP32[$c>>2] = $79; - $80 = ($79|0)!=(0); - if ($80) { - $81 = HEAP32[$c>>2]|0; - $82 = HEAP8[$wc>>0]|0; - $83 = $82 << 24 >> 24; - $84 = ($81|0)!=($83|0); - if ($84) { - $85 = HEAP32[$c>>2]|0; - $86 = (($wc) + 1|0); - $87 = HEAP8[$86>>0]|0; - $88 = $87 << 24 >> 24; - $89 = ($85|0)!=($88|0); - if ($89) { - $90 = HEAP32[$c>>2]|0; - $91 = (($wc) + 2|0); - $92 = HEAP8[$91>>0]|0; - $93 = $92 << 24 >> 24; - $94 = ($90|0)!=($93|0); - $167 = $94; - } else { - $167 = 0; - } - } else { - $167 = 0; - } - } else { - $167 = 0; - } - $95 = HEAP32[$cnt>>2]|0; - if (!($167)) { - break; - } - $96 = (($95) + 1)|0; - HEAP32[$cnt>>2] = $96; - } - $97 = ($95|0)!=(0); - if ($97) { - $98 = HEAP32[$cnt>>2]|0; - $99 = (($98) - 1)|0; - $100 = HEAP32[$z>>2]|0; - $101 = (($100) + ($99)|0); - $102 = HEAP8[$101>>0]|0; - $103 = $102&255; - $104 = (255)!=($103|0); - if ($104) { - $105 = HEAP32[$c>>2]|0; - $106 = HEAP8[$wc>>0]|0; - $107 = $106 << 24 >> 24; - $108 = ($105|0)==($107|0); - if ($108) { - $109 = HEAP32[$cnt>>2]|0; - $110 = (($109) + 1)|0; - $111 = HEAP32[$z>>2]|0; - $112 = (($111) + ($110)|0); - $113 = HEAP8[$112>>0]|0; - $114 = $113 << 24 >> 24; - $115 = ($114|0)==(0); - $117 = $115; - } else { - $117 = 0; - } - $116 = $117&1; - $118 = HEAP32[$4>>2]|0; - HEAP32[$118>>2] = $116; - $119 = HEAP32[$db>>2]|0; - $120 = HEAP32[$z>>2]|0; - $121 = (_sqlite3Expr($119,97,$120)|0); - HEAP32[$pPrefix>>2] = $121; - $122 = HEAP32[$pPrefix>>2]|0; - $123 = ($122|0)!=(0|0); - if ($123) { - $124 = HEAP32[$cnt>>2]|0; - $125 = HEAP32[$pPrefix>>2]|0; - $126 = (($125) + 8|0); - $127 = HEAP32[$126>>2]|0; - $128 = (($127) + ($124)|0); - HEAP8[$128>>0] = 0; - } - $129 = HEAP32[$pPrefix>>2]|0; - $130 = HEAP32[$3>>2]|0; - HEAP32[$130>>2] = $129; - $131 = HEAP32[$op>>2]|0; - $132 = ($131|0)==(135); - if (!($132)) { - break; - } - $133 = HEAP32[$1>>2]|0; - $134 = (($133) + 8|0); - $135 = HEAP32[$134>>2]|0; - HEAP32[$v>>2] = $135; - $136 = HEAP32[$v>>2]|0; - $137 = HEAP32[$pRight>>2]|0; - $138 = (($137) + 32|0); - $139 = HEAP16[$138>>1]|0; - $140 = $139 << 16 >> 16; - _sqlite3VdbeSetVarmask($136,$140); - $141 = HEAP32[$4>>2]|0; - $142 = HEAP32[$141>>2]|0; - $143 = ($142|0)!=(0); - if (!($143)) { - break; - } - $144 = HEAP32[$pRight>>2]|0; - $145 = (($144) + 8|0); - $146 = HEAP32[$145>>2]|0; - $147 = (($146) + 1|0); - $148 = HEAP8[$147>>0]|0; - $149 = $148 << 24 >> 24; - $150 = ($149|0)!=(0); - if (!($150)) { - break; - } - $151 = HEAP32[$1>>2]|0; - $152 = (_sqlite3GetTempReg($151)|0); - HEAP32[$r1>>2] = $152; - $153 = HEAP32[$1>>2]|0; - $154 = HEAP32[$pRight>>2]|0; - $155 = HEAP32[$r1>>2]|0; - (_sqlite3ExprCodeTarget($153,$154,$155)|0); - $156 = HEAP32[$v>>2]|0; - $157 = HEAP32[$v>>2]|0; - $158 = (_sqlite3VdbeCurrentAddr($157)|0); - $159 = (($158) - 1)|0; - _sqlite3VdbeChangeP3($156,$159,0); - $160 = HEAP32[$1>>2]|0; - $161 = HEAP32[$r1>>2]|0; - _sqlite3ReleaseTempReg($160,$161); - break; - } - } - HEAP32[$z>>2] = 0; - } - } while(0); - $162 = HEAP32[$pVal>>2]|0; - _sqlite3ValueFree($162); - $163 = HEAP32[$z>>2]|0; - $164 = ($163|0)!=(0|0); - $165 = $164&1; - HEAP32[$0>>2] = $165; - $166 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($166|0); - } - } - } - HEAP32[$0>>2] = 0; - $166 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($166|0); -} -function _isMatchOfColumn($pExpr) { - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pList = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pList = sp; - HEAP32[$1>>2] = $pExpr; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - $5 = ($4|0)!=(153); - do { - if ($5) { - HEAP32[$0>>2] = 0; - } else { - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 8|0); - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3_stricmp($8,21368)|0); - $10 = ($9|0)!=(0); - if ($10) { - HEAP32[$0>>2] = 0; - break; - } - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 20|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pList>>2] = $13; - $14 = HEAP32[$pList>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = ($15|0)!=(2); - if ($16) { - HEAP32[$0>>2] = 0; - break; - } - $17 = HEAP32[$pList>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($19) + 20|0); - $21 = HEAP32[$20>>2]|0; - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = ($23|0)!=(154); - if ($24) { - HEAP32[$0>>2] = 0; - break; - } else { - HEAP32[$0>>2] = 1; - break; - } - } - } while(0); - $25 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($25|0); -} -function _sqlite3IsLikeFunction($db,$pExpr,$pIsNocase,$aWc) { - $db = $db|0; - $pExpr = $pExpr|0; - $pIsNocase = $pIsNocase|0; - $aWc = $aWc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDef = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $pDef = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pExpr; - HEAP32[$3>>2] = $pIsNocase; - HEAP32[$4>>2] = $aWc; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - $8 = ($7|0)!=(153); - if (!($8)) { - $9 = HEAP32[$2>>2]|0; - $10 = (($9) + 20|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)!=(0|0); - if ($12) { - $13 = HEAP32[$2>>2]|0; - $14 = (($13) + 20|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = ($16|0)!=(2); - if (!($17)) { - $18 = HEAP32[$1>>2]|0; - $19 = HEAP32[$2>>2]|0; - $20 = (($19) + 8|0); - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$2>>2]|0; - $23 = (($22) + 8|0); - $24 = HEAP32[$23>>2]|0; - $25 = (_sqlite3Strlen30($24)|0); - $26 = (_sqlite3FindFunction($18,$21,$25,2,1,0)|0); - HEAP32[$pDef>>2] = $26; - $27 = HEAP32[$pDef>>2]|0; - $28 = ($27|0)==(0|0); - if (!($28)) { - $29 = HEAP32[$pDef>>2]|0; - $30 = (($29) + 2|0); - $31 = HEAP16[$30>>1]|0; - $32 = $31&65535; - $33 = $32 & 4; - $34 = ($33|0)==(0); - if (!($34)) { - $35 = HEAP32[$4>>2]|0; - $36 = HEAP32[$pDef>>2]|0; - $37 = (($36) + 4|0); - $38 = HEAP32[$37>>2]|0; - ;HEAP8[$35+0>>0]=HEAP8[$38+0>>0]|0;HEAP8[$35+1>>0]=HEAP8[$38+1>>0]|0;HEAP8[$35+2>>0]=HEAP8[$38+2>>0]|0; - $39 = HEAP32[$pDef>>2]|0; - $40 = (($39) + 2|0); - $41 = HEAP16[$40>>1]|0; - $42 = $41&65535; - $43 = $42 & 8; - $44 = ($43|0)==(0); - $45 = $44&1; - $46 = HEAP32[$3>>2]|0; - HEAP32[$46>>2] = $45; - HEAP32[$0>>2] = 1; - $47 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($47|0); - } - } - HEAP32[$0>>2] = 0; - $47 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($47|0); - } - } - } - HEAP32[$0>>2] = 0; - $47 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($47|0); -} -function _sqlite3VdbeGetBoundValue($v,$iVar,$aff) { - $v = $v|0; - $iVar = $iVar|0; - $aff = $aff|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pMem = 0, $pRet = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 20|0; - $pMem = sp + 4|0; - $pRet = sp; - HEAP32[$1>>2] = $v; - HEAP32[$2>>2] = $iVar; - HEAP8[$3>>0] = $aff; - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)!=(0|0); - if ($5) { - $6 = HEAP32[$2>>2]|0; - $7 = (($6) - 1)|0; - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 60|0); - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + (($7*40)|0)|0); - HEAP32[$pMem>>2] = $11; - $12 = HEAP32[$pMem>>2]|0; - $13 = (($12) + 28|0); - $14 = HEAP16[$13>>1]|0; - $15 = $14&65535; - $16 = $15 & 1; - $17 = (0)==($16|0); - if ($17) { - $18 = HEAP32[$1>>2]|0; - $19 = HEAP32[$18>>2]|0; - $20 = (_sqlite3ValueNew($19)|0); - HEAP32[$pRet>>2] = $20; - $21 = HEAP32[$pRet>>2]|0; - $22 = ($21|0)!=(0|0); - if ($22) { - $23 = HEAP32[$pRet>>2]|0; - $24 = HEAP32[$pMem>>2]|0; - (_sqlite3VdbeMemCopy($23,$24)|0); - $25 = HEAP32[$pRet>>2]|0; - $26 = HEAP8[$3>>0]|0; - _sqlite3ValueApplyAffinity($25,$26,1); - } - $27 = HEAP32[$pRet>>2]|0; - HEAP32[$0>>2] = $27; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); - } - } - HEAP32[$0>>2] = 0; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); -} -function _sqlite3VdbeSetVarmask($v,$iVar) { - $v = $v|0; - $iVar = $iVar|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $v; - HEAP32[$1>>2] = $iVar; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)>(32); - if ($3) { - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 188|0); - HEAP32[$5>>2] = -1; - STACKTOP = sp;return; - } else { - $6 = HEAP32[$1>>2]|0; - $7 = (($6) - 1)|0; - $8 = 1 << $7; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 188|0); - $11 = HEAP32[$10>>2]|0; - $12 = $11 | $8; - HEAP32[$10>>2] = $12; - STACKTOP = sp;return; - } -} -function _sqlite3RowidConstraint($pParse,$onError,$pTab) { - $pParse = $pParse|0; - $onError = $onError|0; - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $zMsg = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer2 = sp; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $zMsg = sp + 12|0; - $rc = sp + 8|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $onError; - HEAP32[$2>>2] = $pTab; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 36|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5 << 16 >> 16; - $7 = ($6|0)>=(0); - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$10>>2]|0; - if ($7) { - $12 = HEAP32[$2>>2]|0; - $13 = (($12) + 36|0); - $14 = HEAP16[$13>>1]|0; - $15 = $14 << 16 >> 16; - $16 = HEAP32[$2>>2]|0; - $17 = (($16) + 4|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + (($15*24)|0)|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$vararg_buffer2>>2] = $11; - $vararg_ptr1 = (($vararg_buffer2) + 4|0); - HEAP32[$vararg_ptr1>>2] = $20; - $21 = (_sqlite3MPrintf($9,17352,$vararg_buffer2)|0); - HEAP32[$zMsg>>2] = $21; - HEAP32[$rc>>2] = 1555; - $23 = HEAP32[$0>>2]|0; - $24 = HEAP32[$rc>>2]|0; - $25 = HEAP32[$1>>2]|0; - $26 = HEAP32[$zMsg>>2]|0; - _sqlite3HaltConstraint($23,$24,$25,$26,-1,2); - STACKTOP = sp;return; - } else { - HEAP32[$vararg_buffer2>>2] = $11; - $22 = (_sqlite3MPrintf($9,24288,$vararg_buffer2)|0); - HEAP32[$zMsg>>2] = $22; - HEAP32[$rc>>2] = 2579; - $23 = HEAP32[$0>>2]|0; - $24 = HEAP32[$rc>>2]|0; - $25 = HEAP32[$1>>2]|0; - $26 = HEAP32[$zMsg>>2]|0; - _sqlite3HaltConstraint($23,$24,$25,$26,-1,2); - STACKTOP = sp;return; - } -} -function _sqlite3FkRequired($pParse,$pTab,$aChange,$chngRowid) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $aChange = $aChange|0; - $chngRowid = $chngRowid|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $p = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pTab; - HEAP32[$3>>2] = $aChange; - HEAP32[$4>>2] = $chngRowid; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + 24|0); - $8 = HEAP32[$7>>2]|0; - $9 = $8 & 524288; - $10 = ($9|0)!=(0); - L1: do { - if ($10) { - $11 = HEAP32[$3>>2]|0; - $12 = ($11|0)!=(0|0); - $13 = HEAP32[$2>>2]|0; - if (!($12)) { - $14 = (_sqlite3FkReferences($13)|0); - $15 = ($14|0)!=(0|0); - if ($15) { - $21 = 1; - } else { - $16 = HEAP32[$2>>2]|0; - $17 = (($16) + 16|0); - $18 = HEAP32[$17>>2]|0; - $19 = ($18|0)!=(0|0); - $21 = $19; - } - $20 = $21&1; - HEAP32[$0>>2] = $20; - $47 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($47|0); - } - $22 = (($13) + 16|0); - $23 = HEAP32[$22>>2]|0; - HEAP32[$p>>2] = $23; - while(1) { - $24 = HEAP32[$p>>2]|0; - $25 = ($24|0)!=(0|0); - $26 = HEAP32[$2>>2]|0; - if (!($25)) { - break; - } - $27 = HEAP32[$p>>2]|0; - $28 = HEAP32[$3>>2]|0; - $29 = HEAP32[$4>>2]|0; - $30 = (_fkChildIsModified($26,$27,$28,$29)|0); - $31 = ($30|0)!=(0); - if ($31) { - label = 9; - break; - } - $32 = HEAP32[$p>>2]|0; - $33 = (($32) + 4|0); - $34 = HEAP32[$33>>2]|0; - HEAP32[$p>>2] = $34; - } - if ((label|0) == 9) { - HEAP32[$0>>2] = 1; - $47 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($47|0); - } - $35 = (_sqlite3FkReferences($26)|0); - HEAP32[$p>>2] = $35; - while(1) { - $36 = HEAP32[$p>>2]|0; - $37 = ($36|0)!=(0|0); - if (!($37)) { - break L1; - } - $38 = HEAP32[$2>>2]|0; - $39 = HEAP32[$p>>2]|0; - $40 = HEAP32[$3>>2]|0; - $41 = HEAP32[$4>>2]|0; - $42 = (_fkParentIsModified($38,$39,$40,$41)|0); - $43 = ($42|0)!=(0); - if ($43) { - break; - } - $44 = HEAP32[$p>>2]|0; - $45 = (($44) + 12|0); - $46 = HEAP32[$45>>2]|0; - HEAP32[$p>>2] = $46; - } - HEAP32[$0>>2] = 1; - $47 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($47|0); - } - } while(0); - HEAP32[$0>>2] = 0; - $47 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($47|0); -} -function _sqlite3MultiWrite($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pToplevel = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pToplevel = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 408|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - $5 = HEAP32[$0>>2]|0; - if ($4) { - $6 = (($5) + 408|0); - $7 = HEAP32[$6>>2]|0; - $8 = $7; - } else { - $8 = $5; - } - HEAP32[$pToplevel>>2] = $8; - $9 = HEAP32[$pToplevel>>2]|0; - $10 = (($9) + 20|0); - HEAP8[$10>>0] = 1; - STACKTOP = sp;return; -} -function _sqlite3GenerateRowDelete($pParse,$pTab,$pTrigger,$iDataCur,$iIdxCur,$iPk,$nPk,$count,$onconf,$bNoSeek) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $pTrigger = $pTrigger|0; - $iDataCur = $iDataCur|0; - $iIdxCur = $iIdxCur|0; - $iPk = $iPk|0; - $nPk = $nPk|0; - $count = $count|0; - $onconf = $onconf|0; - $bNoSeek = $bNoSeek|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; - var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; - var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addrStart = 0, $iCol = 0, $iLabel = 0, $iOld = 0, $mask = 0, $opSeek = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $4 = sp + 28|0; - $5 = sp + 24|0; - $6 = sp + 48|0; - $7 = sp + 53|0; - $8 = sp + 52|0; - $9 = sp + 51|0; - $v = sp + 20|0; - $iOld = sp + 16|0; - $iLabel = sp + 12|0; - $opSeek = sp + 50|0; - $mask = sp + 8|0; - $iCol = sp + 4|0; - $addrStart = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $pTrigger; - HEAP32[$3>>2] = $iDataCur; - HEAP32[$4>>2] = $iIdxCur; - HEAP32[$5>>2] = $iPk; - HEAP16[$6>>1] = $nPk; - HEAP8[$7>>0] = $count; - HEAP8[$8>>0] = $onconf; - HEAP8[$9>>0] = $bNoSeek; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 8|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$v>>2] = $12; - HEAP32[$iOld>>2] = 0; - $13 = HEAP32[$v>>2]|0; - $14 = (_sqlite3VdbeMakeLabel($13)|0); - HEAP32[$iLabel>>2] = $14; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 44|0); - $17 = HEAP8[$16>>0]|0; - $18 = $17&255; - $19 = $18 & 32; - $20 = ($19|0)==(0); - $21 = $20 ? 67 : 65; - $22 = $21&255; - HEAP8[$opSeek>>0] = $22; - $23 = HEAP8[$9>>0]|0; - $24 = ($23<<24>>24)!=(0); - if (!($24)) { - $25 = HEAP32[$v>>2]|0; - $26 = HEAP8[$opSeek>>0]|0; - $27 = $26&255; - $28 = HEAP32[$3>>2]|0; - $29 = HEAP32[$iLabel>>2]|0; - $30 = HEAP32[$5>>2]|0; - $31 = HEAP16[$6>>1]|0; - $32 = $31 << 16 >> 16; - (_sqlite3VdbeAddOp4Int($25,$27,$28,$29,$30,$32)|0); - } - $33 = HEAP32[$0>>2]|0; - $34 = HEAP32[$1>>2]|0; - $35 = (_sqlite3FkRequired($33,$34,0,0)|0); - $36 = ($35|0)!=(0); - if ($36) { - label = 5; - } else { - $37 = HEAP32[$2>>2]|0; - $38 = ($37|0)!=(0|0); - if ($38) { - label = 5; - } - } - if ((label|0) == 5) { - $39 = HEAP32[$0>>2]|0; - $40 = HEAP32[$2>>2]|0; - $41 = HEAP32[$1>>2]|0; - $42 = HEAP8[$8>>0]|0; - $43 = $42&255; - $44 = (_sqlite3TriggerColmask($39,$40,0,0,3,$41,$43)|0); - HEAP32[$mask>>2] = $44; - $45 = HEAP32[$0>>2]|0; - $46 = HEAP32[$1>>2]|0; - $47 = (_sqlite3FkOldmask($45,$46)|0); - $48 = HEAP32[$mask>>2]|0; - $49 = $48 | $47; - HEAP32[$mask>>2] = $49; - $50 = HEAP32[$0>>2]|0; - $51 = (($50) + 72|0); - $52 = HEAP32[$51>>2]|0; - $53 = (($52) + 1)|0; - HEAP32[$iOld>>2] = $53; - $54 = HEAP32[$1>>2]|0; - $55 = (($54) + 38|0); - $56 = HEAP16[$55>>1]|0; - $57 = $56 << 16 >> 16; - $58 = (1 + ($57))|0; - $59 = HEAP32[$0>>2]|0; - $60 = (($59) + 72|0); - $61 = HEAP32[$60>>2]|0; - $62 = (($61) + ($58))|0; - HEAP32[$60>>2] = $62; - $63 = HEAP32[$v>>2]|0; - $64 = HEAP32[$5>>2]|0; - $65 = HEAP32[$iOld>>2]|0; - (_sqlite3VdbeAddOp2($63,33,$64,$65)|0); - HEAP32[$iCol>>2] = 0; - while(1) { - $66 = HEAP32[$iCol>>2]|0; - $67 = HEAP32[$1>>2]|0; - $68 = (($67) + 38|0); - $69 = HEAP16[$68>>1]|0; - $70 = $69 << 16 >> 16; - $71 = ($66|0)<($70|0); - if (!($71)) { - break; - } - $72 = HEAP32[$mask>>2]|0; - $73 = ($72|0)==(-1); - if ($73) { - label = 10; - } else { - $74 = HEAP32[$iCol>>2]|0; - $75 = ($74|0)<=(31); - if ($75) { - $76 = HEAP32[$mask>>2]|0; - $77 = HEAP32[$iCol>>2]|0; - $78 = 1 << $77; - $79 = $76 & $78; - $80 = ($79|0)!=(0); - if ($80) { - label = 10; - } - } - } - if ((label|0) == 10) { - label = 0; - $81 = HEAP32[$v>>2]|0; - $82 = HEAP32[$1>>2]|0; - $83 = HEAP32[$3>>2]|0; - $84 = HEAP32[$iCol>>2]|0; - $85 = HEAP32[$iOld>>2]|0; - $86 = HEAP32[$iCol>>2]|0; - $87 = (($85) + ($86))|0; - $88 = (($87) + 1)|0; - _sqlite3ExprCodeGetColumnOfTable($81,$82,$83,$84,$88); - } - $89 = HEAP32[$iCol>>2]|0; - $90 = (($89) + 1)|0; - HEAP32[$iCol>>2] = $90; - } - $91 = HEAP32[$v>>2]|0; - $92 = (_sqlite3VdbeCurrentAddr($91)|0); - HEAP32[$addrStart>>2] = $92; - $93 = HEAP32[$0>>2]|0; - $94 = HEAP32[$2>>2]|0; - $95 = HEAP32[$1>>2]|0; - $96 = HEAP32[$iOld>>2]|0; - $97 = HEAP8[$8>>0]|0; - $98 = $97&255; - $99 = HEAP32[$iLabel>>2]|0; - _sqlite3CodeRowTrigger($93,$94,109,0,1,$95,$96,$98,$99); - $100 = HEAP32[$addrStart>>2]|0; - $101 = HEAP32[$v>>2]|0; - $102 = (_sqlite3VdbeCurrentAddr($101)|0); - $103 = ($100|0)<($102|0); - if ($103) { - $104 = HEAP32[$v>>2]|0; - $105 = HEAP8[$opSeek>>0]|0; - $106 = $105&255; - $107 = HEAP32[$3>>2]|0; - $108 = HEAP32[$iLabel>>2]|0; - $109 = HEAP32[$5>>2]|0; - $110 = HEAP16[$6>>1]|0; - $111 = $110 << 16 >> 16; - (_sqlite3VdbeAddOp4Int($104,$106,$107,$108,$109,$111)|0); - } - $112 = HEAP32[$0>>2]|0; - $113 = HEAP32[$1>>2]|0; - $114 = HEAP32[$iOld>>2]|0; - _sqlite3FkCheck($112,$113,$114,0,0,0); - } - $115 = HEAP32[$1>>2]|0; - $116 = (($115) + 12|0); - $117 = HEAP32[$116>>2]|0; - $118 = ($117|0)==(0|0); - if (!($118)) { - $134 = HEAP32[$0>>2]|0; - $135 = HEAP32[$1>>2]|0; - $136 = HEAP32[$iOld>>2]|0; - _sqlite3FkActions($134,$135,0,$136,0,0); - $137 = HEAP32[$0>>2]|0; - $138 = HEAP32[$2>>2]|0; - $139 = HEAP32[$1>>2]|0; - $140 = HEAP32[$iOld>>2]|0; - $141 = HEAP8[$8>>0]|0; - $142 = $141&255; - $143 = HEAP32[$iLabel>>2]|0; - _sqlite3CodeRowTrigger($137,$138,109,0,2,$139,$140,$142,$143); - $144 = HEAP32[$v>>2]|0; - $145 = HEAP32[$iLabel>>2]|0; - _sqlite3VdbeResolveLabel($144,$145); - STACKTOP = sp;return; - } - $119 = HEAP32[$0>>2]|0; - $120 = HEAP32[$1>>2]|0; - $121 = HEAP32[$3>>2]|0; - $122 = HEAP32[$4>>2]|0; - _sqlite3GenerateRowIndexDelete($119,$120,$121,$122,0); - $123 = HEAP32[$v>>2]|0; - $124 = HEAP32[$3>>2]|0; - $125 = HEAP8[$7>>0]|0; - $126 = $125&255; - $127 = ($126|0)!=(0); - $128 = $127 ? 1 : 0; - (_sqlite3VdbeAddOp2($123,74,$124,$128)|0); - $129 = HEAP8[$7>>0]|0; - $130 = ($129<<24>>24)!=(0); - if (!($130)) { - $134 = HEAP32[$0>>2]|0; - $135 = HEAP32[$1>>2]|0; - $136 = HEAP32[$iOld>>2]|0; - _sqlite3FkActions($134,$135,0,$136,0,0); - $137 = HEAP32[$0>>2]|0; - $138 = HEAP32[$2>>2]|0; - $139 = HEAP32[$1>>2]|0; - $140 = HEAP32[$iOld>>2]|0; - $141 = HEAP8[$8>>0]|0; - $142 = $141&255; - $143 = HEAP32[$iLabel>>2]|0; - _sqlite3CodeRowTrigger($137,$138,109,0,2,$139,$140,$142,$143); - $144 = HEAP32[$v>>2]|0; - $145 = HEAP32[$iLabel>>2]|0; - _sqlite3VdbeResolveLabel($144,$145); - STACKTOP = sp;return; - } - $131 = HEAP32[$v>>2]|0; - $132 = HEAP32[$1>>2]|0; - $133 = HEAP32[$132>>2]|0; - _sqlite3VdbeChangeP4($131,-1,$133,0); - $134 = HEAP32[$0>>2]|0; - $135 = HEAP32[$1>>2]|0; - $136 = HEAP32[$iOld>>2]|0; - _sqlite3FkActions($134,$135,0,$136,0,0); - $137 = HEAP32[$0>>2]|0; - $138 = HEAP32[$2>>2]|0; - $139 = HEAP32[$1>>2]|0; - $140 = HEAP32[$iOld>>2]|0; - $141 = HEAP8[$8>>0]|0; - $142 = $141&255; - $143 = HEAP32[$iLabel>>2]|0; - _sqlite3CodeRowTrigger($137,$138,109,0,2,$139,$140,$142,$143); - $144 = HEAP32[$v>>2]|0; - $145 = HEAP32[$iLabel>>2]|0; - _sqlite3VdbeResolveLabel($144,$145); - STACKTOP = sp;return; -} -function _sqlite3GenerateRowIndexDelete($pParse,$pTab,$iDataCur,$iIdxCur,$aRegIdx) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $iDataCur = $iDataCur|0; - $iIdxCur = $iIdxCur|0; - $aRegIdx = $aRegIdx|0; - var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $iPartIdxLabel = 0, $pIdx = 0, $pPk = 0, $pPrior = 0, $r1 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $4 = sp + 28|0; - $i = sp + 24|0; - $r1 = sp + 20|0; - $iPartIdxLabel = sp + 16|0; - $pIdx = sp + 12|0; - $pPrior = sp + 8|0; - $v = sp + 4|0; - $pPk = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $iDataCur; - HEAP32[$3>>2] = $iIdxCur; - HEAP32[$4>>2] = $aRegIdx; - HEAP32[$r1>>2] = -1; - HEAP32[$pPrior>>2] = 0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 8|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$v>>2] = $7; - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 44|0); - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - $12 = $11 & 32; - $13 = ($12|0)==(0); - if ($13) { - $16 = 0; - } else { - $14 = HEAP32[$1>>2]|0; - $15 = (_sqlite3PrimaryKeyIndex($14)|0); - $16 = $15; - } - HEAP32[$pPk>>2] = $16; - HEAP32[$i>>2] = 0; - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 8|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$pIdx>>2] = $19; - while(1) { - $20 = HEAP32[$pIdx>>2]|0; - $21 = ($20|0)!=(0|0); - if (!($21)) { - break; - } - $22 = HEAP32[$4>>2]|0; - $23 = ($22|0)!=(0|0); - if ($23) { - $24 = HEAP32[$i>>2]|0; - $25 = HEAP32[$4>>2]|0; - $26 = (($25) + ($24<<2)|0); - $27 = HEAP32[$26>>2]|0; - $28 = ($27|0)==(0); - if (!($28)) { - label = 7; - } - } else { - label = 7; - } - if ((label|0) == 7) { - label = 0; - $29 = HEAP32[$pIdx>>2]|0; - $30 = HEAP32[$pPk>>2]|0; - $31 = ($29|0)==($30|0); - if (!($31)) { - $32 = HEAP32[$0>>2]|0; - $33 = HEAP32[$pIdx>>2]|0; - $34 = HEAP32[$2>>2]|0; - $35 = HEAP32[$pPrior>>2]|0; - $36 = HEAP32[$r1>>2]|0; - $37 = (_sqlite3GenerateIndexKey($32,$33,$34,0,1,$iPartIdxLabel,$35,$36)|0); - HEAP32[$r1>>2] = $37; - $38 = HEAP32[$v>>2]|0; - $39 = HEAP32[$3>>2]|0; - $40 = HEAP32[$i>>2]|0; - $41 = (($39) + ($40))|0; - $42 = HEAP32[$r1>>2]|0; - $43 = HEAP32[$pIdx>>2]|0; - $44 = (($43) + 55|0); - $45 = HEAP8[$44>>0]|0; - $46 = ($45&255) >>> 3; - $47 = $46 & 1; - $48 = $47&255; - $49 = ($48|0)!=(0); - $50 = HEAP32[$pIdx>>2]|0; - if ($49) { - $51 = (($50) + 50|0); - $52 = HEAP16[$51>>1]|0; - $$sink = $52; - } else { - $53 = (($50) + 52|0); - $54 = HEAP16[$53>>1]|0; - $$sink = $54; - } - $55 = $$sink&65535; - (_sqlite3VdbeAddOp3($38,108,$41,$42,$55)|0); - $56 = HEAP32[$0>>2]|0; - $57 = HEAP32[$iPartIdxLabel>>2]|0; - _sqlite3ResolvePartIdxLabel($56,$57); - $58 = HEAP32[$pIdx>>2]|0; - HEAP32[$pPrior>>2] = $58; - } - } - $59 = HEAP32[$i>>2]|0; - $60 = (($59) + 1)|0; - HEAP32[$i>>2] = $60; - $61 = HEAP32[$pIdx>>2]|0; - $62 = (($61) + 20|0); - $63 = HEAP32[$62>>2]|0; - HEAP32[$pIdx>>2] = $63; - } - STACKTOP = sp;return; -} -function _sqlite3TriggerColmask($pParse,$pTrigger,$pChanges,$isNew,$tr_tm,$pTab,$orconf) { - $pParse = $pParse|0; - $pTrigger = $pTrigger|0; - $pChanges = $pChanges|0; - $isNew = $isNew|0; - $tr_tm = $tr_tm|0; - $pTab = $pTab|0; - $orconf = $orconf|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mask = 0, $op = 0, $p = 0, $pPrg = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $4 = sp + 24|0; - $5 = sp + 20|0; - $6 = sp + 16|0; - $op = sp + 12|0; - $mask = sp + 8|0; - $p = sp + 4|0; - $pPrg = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTrigger; - HEAP32[$2>>2] = $pChanges; - HEAP32[$3>>2] = $isNew; - HEAP32[$4>>2] = $tr_tm; - HEAP32[$5>>2] = $pTab; - HEAP32[$6>>2] = $orconf; - $7 = HEAP32[$2>>2]|0; - $8 = ($7|0)!=(0|0); - $9 = $8 ? 110 : 109; - HEAP32[$op>>2] = $9; - HEAP32[$mask>>2] = 0; - $10 = HEAP32[$1>>2]|0; - HEAP32[$p>>2] = $10; - while(1) { - $11 = HEAP32[$p>>2]|0; - $12 = ($11|0)!=(0|0); - if (!($12)) { - break; - } - $13 = HEAP32[$p>>2]|0; - $14 = (($13) + 8|0); - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - $17 = HEAP32[$op>>2]|0; - $18 = ($16|0)==($17|0); - if ($18) { - $19 = HEAP32[$4>>2]|0; - $20 = HEAP32[$p>>2]|0; - $21 = (($20) + 9|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = $19 & $23; - $25 = ($24|0)!=(0); - if ($25) { - $26 = HEAP32[$p>>2]|0; - $27 = (($26) + 16|0); - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$2>>2]|0; - $30 = (_checkColumnOverlap($28,$29)|0); - $31 = ($30|0)!=(0); - if ($31) { - $32 = HEAP32[$0>>2]|0; - $33 = HEAP32[$p>>2]|0; - $34 = HEAP32[$5>>2]|0; - $35 = HEAP32[$6>>2]|0; - $36 = (_getRowTrigger($32,$33,$34,$35)|0); - HEAP32[$pPrg>>2] = $36; - $37 = HEAP32[$pPrg>>2]|0; - $38 = ($37|0)!=(0|0); - if ($38) { - $39 = HEAP32[$3>>2]|0; - $40 = HEAP32[$pPrg>>2]|0; - $41 = (($40) + 16|0); - $42 = (($41) + ($39<<2)|0); - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$mask>>2]|0; - $45 = $44 | $43; - HEAP32[$mask>>2] = $45; - } - } - } - } - $46 = HEAP32[$p>>2]|0; - $47 = (($46) + 32|0); - $48 = HEAP32[$47>>2]|0; - HEAP32[$p>>2] = $48; - } - $49 = HEAP32[$mask>>2]|0; - STACKTOP = sp;return ($49|0); -} -function _sqlite3FkOldmask($pParse,$pTab) { - $pParse = $pParse|0; - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $8 = 0, $9 = 0, $i = 0, $mask = 0; - var $p = 0, $pIdx = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $mask = sp + 12|0; - $p = sp + 8|0; - $i = sp + 4|0; - $pIdx = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$mask>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 24|0); - $5 = HEAP32[$4>>2]|0; - $6 = $5 & 524288; - $7 = ($6|0)!=(0); - if (!($7)) { - $77 = HEAP32[$mask>>2]|0; - STACKTOP = sp;return ($77|0); - } - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 16|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$p>>2] = $10; - while(1) { - $11 = HEAP32[$p>>2]|0; - $12 = ($11|0)!=(0|0); - if (!($12)) { - break; - } - HEAP32[$i>>2] = 0; - while(1) { - $13 = HEAP32[$i>>2]|0; - $14 = HEAP32[$p>>2]|0; - $15 = (($14) + 20|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($13|0)<($16|0); - if (!($17)) { - break; - } - $18 = HEAP32[$i>>2]|0; - $19 = HEAP32[$p>>2]|0; - $20 = (($19) + 36|0); - $21 = (($20) + ($18<<3)|0); - $22 = HEAP32[$21>>2]|0; - $23 = ($22|0)>(31); - if ($23) { - $32 = -1; - } else { - $24 = HEAP32[$i>>2]|0; - $25 = HEAP32[$p>>2]|0; - $26 = (($25) + 36|0); - $27 = (($26) + ($24<<3)|0); - $28 = HEAP32[$27>>2]|0; - $29 = 1 << $28; - $32 = $29; - } - $30 = HEAP32[$mask>>2]|0; - $31 = $30 | $32; - HEAP32[$mask>>2] = $31; - $33 = HEAP32[$i>>2]|0; - $34 = (($33) + 1)|0; - HEAP32[$i>>2] = $34; - } - $35 = HEAP32[$p>>2]|0; - $36 = (($35) + 4|0); - $37 = HEAP32[$36>>2]|0; - HEAP32[$p>>2] = $37; - } - $38 = HEAP32[$1>>2]|0; - $39 = (_sqlite3FkReferences($38)|0); - HEAP32[$p>>2] = $39; - while(1) { - $40 = HEAP32[$p>>2]|0; - $41 = ($40|0)!=(0|0); - if (!($41)) { - break; - } - HEAP32[$pIdx>>2] = 0; - $42 = HEAP32[$0>>2]|0; - $43 = HEAP32[$1>>2]|0; - $44 = HEAP32[$p>>2]|0; - (_sqlite3FkLocateIndex($42,$43,$44,$pIdx,0)|0); - $45 = HEAP32[$pIdx>>2]|0; - $46 = ($45|0)!=(0|0); - L18: do { - if ($46) { - HEAP32[$i>>2] = 0; - while(1) { - $47 = HEAP32[$i>>2]|0; - $48 = HEAP32[$pIdx>>2]|0; - $49 = (($48) + 50|0); - $50 = HEAP16[$49>>1]|0; - $51 = $50&65535; - $52 = ($47|0)<($51|0); - if (!($52)) { - break L18; - } - $53 = HEAP32[$i>>2]|0; - $54 = HEAP32[$pIdx>>2]|0; - $55 = (($54) + 4|0); - $56 = HEAP32[$55>>2]|0; - $57 = (($56) + ($53<<1)|0); - $58 = HEAP16[$57>>1]|0; - $59 = $58 << 16 >> 16; - $60 = ($59|0)>(31); - if ($60) { - $71 = -1; - } else { - $61 = HEAP32[$i>>2]|0; - $62 = HEAP32[$pIdx>>2]|0; - $63 = (($62) + 4|0); - $64 = HEAP32[$63>>2]|0; - $65 = (($64) + ($61<<1)|0); - $66 = HEAP16[$65>>1]|0; - $67 = $66 << 16 >> 16; - $68 = 1 << $67; - $71 = $68; - } - $69 = HEAP32[$mask>>2]|0; - $70 = $69 | $71; - HEAP32[$mask>>2] = $70; - $72 = HEAP32[$i>>2]|0; - $73 = (($72) + 1)|0; - HEAP32[$i>>2] = $73; - } - } - } while(0); - $74 = HEAP32[$p>>2]|0; - $75 = (($74) + 12|0); - $76 = HEAP32[$75>>2]|0; - HEAP32[$p>>2] = $76; - } - $77 = HEAP32[$mask>>2]|0; - STACKTOP = sp;return ($77|0); -} -function _sqlite3FkActions($pParse,$pTab,$pChanges,$regOld,$aChange,$bChngRowid) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $pChanges = $pChanges|0; - $regOld = $regOld|0; - $aChange = $aChange|0; - $bChngRowid = $bChngRowid|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pAct = 0, $pFKey = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $5 = sp + 8|0; - $pFKey = sp + 4|0; - $pAct = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $pChanges; - HEAP32[$3>>2] = $regOld; - HEAP32[$4>>2] = $aChange; - HEAP32[$5>>2] = $bChngRowid; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = (($7) + 24|0); - $9 = HEAP32[$8>>2]|0; - $10 = $9 & 524288; - $11 = ($10|0)!=(0); - if (!($11)) { - STACKTOP = sp;return; - } - $12 = HEAP32[$1>>2]|0; - $13 = (_sqlite3FkReferences($12)|0); - HEAP32[$pFKey>>2] = $13; - while(1) { - $14 = HEAP32[$pFKey>>2]|0; - $15 = ($14|0)!=(0|0); - if (!($15)) { - break; - } - $16 = HEAP32[$4>>2]|0; - $17 = ($16|0)==(0|0); - if ($17) { - label = 6; - } else { - $18 = HEAP32[$1>>2]|0; - $19 = HEAP32[$pFKey>>2]|0; - $20 = HEAP32[$4>>2]|0; - $21 = HEAP32[$5>>2]|0; - $22 = (_fkParentIsModified($18,$19,$20,$21)|0); - $23 = ($22|0)!=(0); - if ($23) { - label = 6; - } - } - if ((label|0) == 6) { - label = 0; - $24 = HEAP32[$0>>2]|0; - $25 = HEAP32[$1>>2]|0; - $26 = HEAP32[$pFKey>>2]|0; - $27 = HEAP32[$2>>2]|0; - $28 = (_fkActionTrigger($24,$25,$26,$27)|0); - HEAP32[$pAct>>2] = $28; - $29 = HEAP32[$pAct>>2]|0; - $30 = ($29|0)!=(0|0); - if ($30) { - $31 = HEAP32[$0>>2]|0; - $32 = HEAP32[$pAct>>2]|0; - $33 = HEAP32[$1>>2]|0; - $34 = HEAP32[$3>>2]|0; - _sqlite3CodeRowTriggerDirect($31,$32,$33,$34,2,0); - } - } - $35 = HEAP32[$pFKey>>2]|0; - $36 = (($35) + 12|0); - $37 = HEAP32[$36>>2]|0; - HEAP32[$pFKey>>2] = $37; - } - STACKTOP = sp;return; -} -function _fkActionTrigger($pParse,$pTab,$pFKey,$pChanges) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $pFKey = $pFKey|0; - $pChanges = $pChanges|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; - var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; - var $99 = 0, $action = 0, $aiCol = 0, $db = 0, $enableLookaside = 0, $i = 0, $iAction = 0, $iFromCol = 0, $nFrom = 0, $pDflt = 0, $pEq = 0, $pIdx = 0, $pList = 0, $pNew = 0, $pRaise = 0, $pSelect = 0, $pStep = 0, $pTrigger = 0, $pWhen = 0, $pWhere = 0; - var $tFrom = 0, $tFromCol = 0, $tNew = 0, $tOld = 0, $tToCol = 0, $zFrom = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 144|0; - $0 = sp + 136|0; - $1 = sp + 132|0; - $2 = sp + 128|0; - $3 = sp + 124|0; - $4 = sp + 120|0; - $db = sp + 116|0; - $action = sp + 112|0; - $pTrigger = sp + 108|0; - $iAction = sp + 104|0; - $enableLookaside = sp + 140|0; - $zFrom = sp + 100|0; - $nFrom = sp + 96|0; - $pIdx = sp + 92|0; - $aiCol = sp + 88|0; - $pStep = sp + 84|0; - $pWhere = sp + 80|0; - $pList = sp + 76|0; - $pSelect = sp + 72|0; - $i = sp + 68|0; - $pWhen = sp + 64|0; - $tOld = sp + 56|0; - $tNew = sp + 48|0; - $tFromCol = sp + 40|0; - $tToCol = sp + 32|0; - $iFromCol = sp + 28|0; - $pEq = sp + 24|0; - $pNew = sp + 20|0; - $pDflt = sp + 16|0; - $tFrom = sp + 8|0; - $pRaise = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pTab; - HEAP32[$3>>2] = $pFKey; - HEAP32[$4>>2] = $pChanges; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$db>>2] = $6; - $7 = HEAP32[$4>>2]|0; - $8 = ($7|0)!=(0|0); - $9 = $8&1; - HEAP32[$iAction>>2] = $9; - $10 = HEAP32[$iAction>>2]|0; - $11 = HEAP32[$3>>2]|0; - $12 = (($11) + 25|0); - $13 = (($12) + ($10)|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14&255; - HEAP32[$action>>2] = $15; - $16 = HEAP32[$iAction>>2]|0; - $17 = HEAP32[$3>>2]|0; - $18 = (($17) + 28|0); - $19 = (($18) + ($16<<2)|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$pTrigger>>2] = $20; - $21 = HEAP32[$action>>2]|0; - $22 = ($21|0)!=(0); - if ($22) { - $23 = HEAP32[$pTrigger>>2]|0; - $24 = ($23|0)!=(0|0); - if (!($24)) { - HEAP32[$pIdx>>2] = 0; - HEAP32[$aiCol>>2] = 0; - HEAP32[$pStep>>2] = 0; - HEAP32[$pWhere>>2] = 0; - HEAP32[$pList>>2] = 0; - HEAP32[$pSelect>>2] = 0; - HEAP32[$pWhen>>2] = 0; - $25 = HEAP32[$1>>2]|0; - $26 = HEAP32[$2>>2]|0; - $27 = HEAP32[$3>>2]|0; - $28 = (_sqlite3FkLocateIndex($25,$26,$27,$pIdx,$aiCol)|0); - $29 = ($28|0)!=(0); - if ($29) { - HEAP32[$0>>2] = 0; - $280 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($280|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $30 = HEAP32[$i>>2]|0; - $31 = HEAP32[$3>>2]|0; - $32 = (($31) + 20|0); - $33 = HEAP32[$32>>2]|0; - $34 = ($30|0)<($33|0); - if (!($34)) { - break; - } - ;HEAP32[$tOld+0>>2]=HEAP32[24232+0>>2]|0;HEAP32[$tOld+4>>2]=HEAP32[24232+4>>2]|0; - ;HEAP32[$tNew+0>>2]=HEAP32[24240+0>>2]|0;HEAP32[$tNew+4>>2]=HEAP32[24240+4>>2]|0; - $35 = HEAP32[$aiCol>>2]|0; - $36 = ($35|0)!=(0|0); - if ($36) { - $37 = HEAP32[$i>>2]|0; - $38 = HEAP32[$aiCol>>2]|0; - $39 = (($38) + ($37<<2)|0); - $40 = HEAP32[$39>>2]|0; - $44 = $40; - } else { - $41 = HEAP32[$3>>2]|0; - $42 = (($41) + 36|0); - $43 = HEAP32[$42>>2]|0; - $44 = $43; - } - HEAP32[$iFromCol>>2] = $44; - $45 = HEAP32[$pIdx>>2]|0; - $46 = ($45|0)!=(0|0); - if ($46) { - $47 = HEAP32[$i>>2]|0; - $48 = HEAP32[$pIdx>>2]|0; - $49 = (($48) + 4|0); - $50 = HEAP32[$49>>2]|0; - $51 = (($50) + ($47<<1)|0); - $52 = HEAP16[$51>>1]|0; - $53 = $52 << 16 >> 16; - $54 = HEAP32[$2>>2]|0; - $55 = (($54) + 4|0); - $56 = HEAP32[$55>>2]|0; - $57 = (($56) + (($53*24)|0)|0); - $58 = HEAP32[$57>>2]|0; - $59 = $58; - } else { - $59 = 24248; - } - HEAP32[$tToCol>>2] = $59; - $60 = HEAP32[$iFromCol>>2]|0; - $61 = HEAP32[$3>>2]|0; - $62 = HEAP32[$61>>2]|0; - $63 = (($62) + 4|0); - $64 = HEAP32[$63>>2]|0; - $65 = (($64) + (($60*24)|0)|0); - $66 = HEAP32[$65>>2]|0; - HEAP32[$tFromCol>>2] = $66; - $67 = HEAP32[$tToCol>>2]|0; - $68 = (_sqlite3Strlen30($67)|0); - $69 = (($tToCol) + 4|0); - HEAP32[$69>>2] = $68; - $70 = HEAP32[$tFromCol>>2]|0; - $71 = (_sqlite3Strlen30($70)|0); - $72 = (($tFromCol) + 4|0); - HEAP32[$72>>2] = $71; - $73 = HEAP32[$1>>2]|0; - $74 = HEAP32[$1>>2]|0; - $75 = HEAP32[$1>>2]|0; - $76 = (_sqlite3PExpr($75,27,0,0,$tOld)|0); - $77 = HEAP32[$1>>2]|0; - $78 = (_sqlite3PExpr($77,27,0,0,$tToCol)|0); - $79 = (_sqlite3PExpr($74,122,$76,$78,0)|0); - $80 = HEAP32[$1>>2]|0; - $81 = (_sqlite3PExpr($80,27,0,0,$tFromCol)|0); - $82 = (_sqlite3PExpr($73,79,$79,$81,0)|0); - HEAP32[$pEq>>2] = $82; - $83 = HEAP32[$db>>2]|0; - $84 = HEAP32[$pWhere>>2]|0; - $85 = HEAP32[$pEq>>2]|0; - $86 = (_sqlite3ExprAnd($83,$84,$85)|0); - HEAP32[$pWhere>>2] = $86; - $87 = HEAP32[$4>>2]|0; - $88 = ($87|0)!=(0|0); - if ($88) { - $89 = HEAP32[$1>>2]|0; - $90 = HEAP32[$1>>2]|0; - $91 = HEAP32[$1>>2]|0; - $92 = (_sqlite3PExpr($91,27,0,0,$tOld)|0); - $93 = HEAP32[$1>>2]|0; - $94 = (_sqlite3PExpr($93,27,0,0,$tToCol)|0); - $95 = (_sqlite3PExpr($90,122,$92,$94,0)|0); - $96 = HEAP32[$1>>2]|0; - $97 = HEAP32[$1>>2]|0; - $98 = (_sqlite3PExpr($97,27,0,0,$tNew)|0); - $99 = HEAP32[$1>>2]|0; - $100 = (_sqlite3PExpr($99,27,0,0,$tToCol)|0); - $101 = (_sqlite3PExpr($96,122,$98,$100,0)|0); - $102 = (_sqlite3PExpr($89,73,$95,$101,0)|0); - HEAP32[$pEq>>2] = $102; - $103 = HEAP32[$db>>2]|0; - $104 = HEAP32[$pWhen>>2]|0; - $105 = HEAP32[$pEq>>2]|0; - $106 = (_sqlite3ExprAnd($103,$104,$105)|0); - HEAP32[$pWhen>>2] = $106; - } - $107 = HEAP32[$action>>2]|0; - $108 = ($107|0)!=(6); - do { - if ($108) { - $109 = HEAP32[$action>>2]|0; - $110 = ($109|0)!=(9); - if (!($110)) { - $111 = HEAP32[$4>>2]|0; - $112 = ($111|0)!=(0|0); - if (!($112)) { - break; - } - } - $113 = HEAP32[$action>>2]|0; - $114 = ($113|0)==(9); - do { - if ($114) { - $115 = HEAP32[$1>>2]|0; - $116 = HEAP32[$1>>2]|0; - $117 = (_sqlite3PExpr($116,27,0,0,$tNew)|0); - $118 = HEAP32[$1>>2]|0; - $119 = (_sqlite3PExpr($118,27,0,0,$tToCol)|0); - $120 = (_sqlite3PExpr($115,122,$117,$119,0)|0); - HEAP32[$pNew>>2] = $120; - } else { - $121 = HEAP32[$action>>2]|0; - $122 = ($121|0)==(8); - if (!($122)) { - $138 = HEAP32[$1>>2]|0; - $139 = (_sqlite3PExpr($138,101,0,0,0)|0); - HEAP32[$pNew>>2] = $139; - break; - } - $123 = HEAP32[$iFromCol>>2]|0; - $124 = HEAP32[$3>>2]|0; - $125 = HEAP32[$124>>2]|0; - $126 = (($125) + 4|0); - $127 = HEAP32[$126>>2]|0; - $128 = (($127) + (($123*24)|0)|0); - $129 = (($128) + 4|0); - $130 = HEAP32[$129>>2]|0; - HEAP32[$pDflt>>2] = $130; - $131 = HEAP32[$pDflt>>2]|0; - $132 = ($131|0)!=(0|0); - if ($132) { - $133 = HEAP32[$db>>2]|0; - $134 = HEAP32[$pDflt>>2]|0; - $135 = (_sqlite3ExprDup($133,$134,0)|0); - HEAP32[$pNew>>2] = $135; - break; - } else { - $136 = HEAP32[$1>>2]|0; - $137 = (_sqlite3PExpr($136,101,0,0,0)|0); - HEAP32[$pNew>>2] = $137; - break; - } - } - } while(0); - $140 = HEAP32[$1>>2]|0; - $141 = HEAP32[$pList>>2]|0; - $142 = HEAP32[$pNew>>2]|0; - $143 = (_sqlite3ExprListAppend($140,$141,$142)|0); - HEAP32[$pList>>2] = $143; - $144 = HEAP32[$1>>2]|0; - $145 = HEAP32[$pList>>2]|0; - _sqlite3ExprListSetName($144,$145,$tFromCol,0); - } - } while(0); - $146 = HEAP32[$i>>2]|0; - $147 = (($146) + 1)|0; - HEAP32[$i>>2] = $147; - } - $148 = HEAP32[$db>>2]|0; - $149 = HEAP32[$aiCol>>2]|0; - _sqlite3DbFree($148,$149); - $150 = HEAP32[$3>>2]|0; - $151 = HEAP32[$150>>2]|0; - $152 = HEAP32[$151>>2]|0; - HEAP32[$zFrom>>2] = $152; - $153 = HEAP32[$zFrom>>2]|0; - $154 = (_sqlite3Strlen30($153)|0); - HEAP32[$nFrom>>2] = $154; - $155 = HEAP32[$action>>2]|0; - $156 = ($155|0)==(6); - if ($156) { - $157 = HEAP32[$zFrom>>2]|0; - HEAP32[$tFrom>>2] = $157; - $158 = HEAP32[$nFrom>>2]|0; - $159 = (($tFrom) + 4|0); - HEAP32[$159>>2] = $158; - $160 = HEAP32[$db>>2]|0; - $161 = (_sqlite3Expr($160,57,24256)|0); - HEAP32[$pRaise>>2] = $161; - $162 = HEAP32[$pRaise>>2]|0; - $163 = ($162|0)!=(0|0); - if ($163) { - $164 = HEAP32[$pRaise>>2]|0; - $165 = (($164) + 1|0); - HEAP8[$165>>0] = 2; - } - $166 = HEAP32[$1>>2]|0; - $167 = HEAP32[$1>>2]|0; - $168 = HEAP32[$pRaise>>2]|0; - $169 = (_sqlite3ExprListAppend($167,0,$168)|0); - $170 = HEAP32[$db>>2]|0; - $171 = (_sqlite3SrcListAppend($170,0,$tFrom,0)|0); - $172 = HEAP32[$pWhere>>2]|0; - $173 = (_sqlite3SelectNew($166,$169,$171,$172,0,0,0,0,0,0)|0); - HEAP32[$pSelect>>2] = $173; - HEAP32[$pWhere>>2] = 0; - } - $174 = HEAP32[$db>>2]|0; - $175 = (($174) + 240|0); - $176 = (($175) + 2|0); - $177 = HEAP8[$176>>0]|0; - HEAP8[$enableLookaside>>0] = $177; - $178 = HEAP32[$db>>2]|0; - $179 = (($178) + 240|0); - $180 = (($179) + 2|0); - HEAP8[$180>>0] = 0; - $181 = HEAP32[$db>>2]|0; - $182 = HEAP32[$nFrom>>2]|0; - $183 = (76 + ($182))|0; - $184 = (($183) + 1)|0; - $185 = (_sqlite3DbMallocZero($181,$184)|0); - HEAP32[$pTrigger>>2] = $185; - $186 = HEAP32[$pTrigger>>2]|0; - $187 = ($186|0)!=(0|0); - if ($187) { - $188 = HEAP32[$pTrigger>>2]|0; - $189 = (($188) + 36|0); - $190 = HEAP32[$pTrigger>>2]|0; - $191 = (($190) + 28|0); - HEAP32[$191>>2] = $189; - HEAP32[$pStep>>2] = $189; - $192 = HEAP32[$pStep>>2]|0; - $193 = (($192) + 40|0); - $194 = HEAP32[$pStep>>2]|0; - $195 = (($194) + 12|0); - HEAP32[$195>>2] = $193; - $196 = HEAP32[$nFrom>>2]|0; - $197 = HEAP32[$pStep>>2]|0; - $198 = (($197) + 12|0); - $199 = (($198) + 4|0); - HEAP32[$199>>2] = $196; - $200 = HEAP32[$pStep>>2]|0; - $201 = (($200) + 12|0); - $202 = HEAP32[$201>>2]|0; - $203 = HEAP32[$zFrom>>2]|0; - $204 = HEAP32[$nFrom>>2]|0; - _memcpy(($202|0),($203|0),($204|0))|0; - $205 = HEAP32[$db>>2]|0; - $206 = HEAP32[$pWhere>>2]|0; - $207 = (_sqlite3ExprDup($205,$206,1)|0); - $208 = HEAP32[$pStep>>2]|0; - $209 = (($208) + 20|0); - HEAP32[$209>>2] = $207; - $210 = HEAP32[$db>>2]|0; - $211 = HEAP32[$pList>>2]|0; - $212 = (_sqlite3ExprListDup($210,$211,1)|0); - $213 = HEAP32[$pStep>>2]|0; - $214 = (($213) + 24|0); - HEAP32[$214>>2] = $212; - $215 = HEAP32[$db>>2]|0; - $216 = HEAP32[$pSelect>>2]|0; - $217 = (_sqlite3SelectDup($215,$216,1)|0); - $218 = HEAP32[$pStep>>2]|0; - $219 = (($218) + 8|0); - HEAP32[$219>>2] = $217; - $220 = HEAP32[$pWhen>>2]|0; - $221 = ($220|0)!=(0|0); - if ($221) { - $222 = HEAP32[$1>>2]|0; - $223 = HEAP32[$pWhen>>2]|0; - $224 = (_sqlite3PExpr($222,19,$223,0,0)|0); - HEAP32[$pWhen>>2] = $224; - $225 = HEAP32[$db>>2]|0; - $226 = HEAP32[$pWhen>>2]|0; - $227 = (_sqlite3ExprDup($225,$226,1)|0); - $228 = HEAP32[$pTrigger>>2]|0; - $229 = (($228) + 12|0); - HEAP32[$229>>2] = $227; - } - } - $230 = HEAP8[$enableLookaside>>0]|0; - $231 = HEAP32[$db>>2]|0; - $232 = (($231) + 240|0); - $233 = (($232) + 2|0); - HEAP8[$233>>0] = $230; - $234 = HEAP32[$db>>2]|0; - $235 = HEAP32[$pWhere>>2]|0; - _sqlite3ExprDelete($234,$235); - $236 = HEAP32[$db>>2]|0; - $237 = HEAP32[$pWhen>>2]|0; - _sqlite3ExprDelete($236,$237); - $238 = HEAP32[$db>>2]|0; - $239 = HEAP32[$pList>>2]|0; - _sqlite3ExprListDelete($238,$239); - $240 = HEAP32[$db>>2]|0; - $241 = HEAP32[$pSelect>>2]|0; - _sqlite3SelectDelete($240,$241); - $242 = HEAP32[$db>>2]|0; - $243 = (($242) + 64|0); - $244 = HEAP8[$243>>0]|0; - $245 = $244&255; - $246 = ($245|0)==(1); - if ($246) { - $247 = HEAP32[$db>>2]|0; - $248 = HEAP32[$pTrigger>>2]|0; - _fkTriggerDelete($247,$248); - HEAP32[$0>>2] = 0; - $280 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($280|0); - } - $249 = HEAP32[$action>>2]|0; - if ((($249|0) == 6)) { - $250 = HEAP32[$pStep>>2]|0; - HEAP8[$250>>0] = 119; - } else if ((($249|0) == 9)) { - $251 = HEAP32[$4>>2]|0; - $252 = ($251|0)!=(0|0); - if ($252) { - label = 39; - } else { - $253 = HEAP32[$pStep>>2]|0; - HEAP8[$253>>0] = 109; - } - } else { - label = 39; - } - if ((label|0) == 39) { - $254 = HEAP32[$pStep>>2]|0; - HEAP8[$254>>0] = 110; - } - $255 = HEAP32[$pTrigger>>2]|0; - $256 = HEAP32[$pStep>>2]|0; - $257 = (($256) + 4|0); - HEAP32[$257>>2] = $255; - $258 = HEAP32[$2>>2]|0; - $259 = (($258) + 68|0); - $260 = HEAP32[$259>>2]|0; - $261 = HEAP32[$pTrigger>>2]|0; - $262 = (($261) + 20|0); - HEAP32[$262>>2] = $260; - $263 = HEAP32[$2>>2]|0; - $264 = (($263) + 68|0); - $265 = HEAP32[$264>>2]|0; - $266 = HEAP32[$pTrigger>>2]|0; - $267 = (($266) + 24|0); - HEAP32[$267>>2] = $265; - $268 = HEAP32[$pTrigger>>2]|0; - $269 = HEAP32[$iAction>>2]|0; - $270 = HEAP32[$3>>2]|0; - $271 = (($270) + 28|0); - $272 = (($271) + ($269<<2)|0); - HEAP32[$272>>2] = $268; - $273 = HEAP32[$4>>2]|0; - $274 = ($273|0)!=(0|0); - $275 = $274 ? 110 : 109; - $276 = $275&255; - $277 = HEAP32[$pTrigger>>2]|0; - $278 = (($277) + 8|0); - HEAP8[$278>>0] = $276; - } - } - $279 = HEAP32[$pTrigger>>2]|0; - HEAP32[$0>>2] = $279; - $280 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($280|0); -} -function _sqlite3CodeRowTriggerDirect($pParse,$p,$pTab,$reg,$orconf,$ignoreJump) { - $pParse = $pParse|0; - $p = $p|0; - $pTab = $pTab|0; - $reg = $reg|0; - $orconf = $orconf|0; - $ignoreJump = $ignoreJump|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $bRecursive = 0, $pPrg = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $4 = sp + 16|0; - $5 = sp + 12|0; - $v = sp + 8|0; - $pPrg = sp + 4|0; - $bRecursive = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $pTab; - HEAP32[$3>>2] = $reg; - HEAP32[$4>>2] = $orconf; - HEAP32[$5>>2] = $ignoreJump; - $6 = HEAP32[$0>>2]|0; - $7 = (_sqlite3GetVdbe($6)|0); - HEAP32[$v>>2] = $7; - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$4>>2]|0; - $12 = (_getRowTrigger($8,$9,$10,$11)|0); - HEAP32[$pPrg>>2] = $12; - $13 = HEAP32[$pPrg>>2]|0; - $14 = ($13|0)!=(0|0); - if (!($14)) { - STACKTOP = sp;return; - } - $15 = HEAP32[$1>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = ($16|0)!=(0|0); - if ($17) { - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$18>>2]|0; - $20 = (($19) + 24|0); - $21 = HEAP32[$20>>2]|0; - $22 = $21 & 262144; - $23 = (0)==($22|0); - $25 = $23; - } else { - $25 = 0; - } - $24 = $25&1; - HEAP32[$bRecursive>>2] = $24; - $26 = HEAP32[$v>>2]|0; - $27 = HEAP32[$3>>2]|0; - $28 = HEAP32[$5>>2]|0; - $29 = HEAP32[$0>>2]|0; - $30 = (($29) + 72|0); - $31 = HEAP32[$30>>2]|0; - $32 = (($31) + 1)|0; - HEAP32[$30>>2] = $32; - (_sqlite3VdbeAddOp3($26,128,$27,$28,$32)|0); - $33 = HEAP32[$v>>2]|0; - $34 = HEAP32[$pPrg>>2]|0; - $35 = (($34) + 8|0); - $36 = HEAP32[$35>>2]|0; - _sqlite3VdbeChangeP4($33,-1,$36,-18); - $37 = HEAP32[$v>>2]|0; - $38 = HEAP32[$bRecursive>>2]|0; - $39 = $38&255; - _sqlite3VdbeChangeP5($37,$39); - STACKTOP = sp;return; -} -function _getRowTrigger($pParse,$pTrigger,$pTab,$orconf) { - $pParse = $pParse|0; - $pTrigger = $pTrigger|0; - $pTab = $pTab|0; - $orconf = $orconf|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pPrg = 0, $pRoot = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $pRoot = sp + 4|0; - $pPrg = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTrigger; - HEAP32[$2>>2] = $pTab; - HEAP32[$3>>2] = $orconf; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 408|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0|0); - $8 = HEAP32[$0>>2]|0; - if ($7) { - $9 = (($8) + 408|0); - $10 = HEAP32[$9>>2]|0; - $11 = $10; - } else { - $11 = $8; - } - HEAP32[$pRoot>>2] = $11; - $12 = HEAP32[$pRoot>>2]|0; - $13 = (($12) + 528|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$pPrg>>2] = $14; - while(1) { - $15 = HEAP32[$pPrg>>2]|0; - $16 = ($15|0)!=(0|0); - if (!($16)) { - break; - } - $17 = HEAP32[$pPrg>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$1>>2]|0; - $20 = ($18|0)!=($19|0); - if (!($20)) { - $21 = HEAP32[$pPrg>>2]|0; - $22 = (($21) + 12|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$3>>2]|0; - $25 = ($23|0)!=($24|0); - if (!($25)) { - break; - } - } - $26 = HEAP32[$pPrg>>2]|0; - $27 = (($26) + 4|0); - $28 = HEAP32[$27>>2]|0; - HEAP32[$pPrg>>2] = $28; - } - $29 = HEAP32[$pPrg>>2]|0; - $30 = ($29|0)!=(0|0); - if ($30) { - $36 = HEAP32[$pPrg>>2]|0; - STACKTOP = sp;return ($36|0); - } - $31 = HEAP32[$0>>2]|0; - $32 = HEAP32[$1>>2]|0; - $33 = HEAP32[$2>>2]|0; - $34 = HEAP32[$3>>2]|0; - $35 = (_codeRowTrigger($31,$32,$33,$34)|0); - HEAP32[$pPrg>>2] = $35; - $36 = HEAP32[$pPrg>>2]|0; - STACKTOP = sp;return ($36|0); -} -function _codeRowTrigger($pParse,$pTrigger,$pTab,$orconf) { - $pParse = $pParse|0; - $pTrigger = $pTrigger|0; - $pTab = $pTab|0; - $orconf = $orconf|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; - var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; - var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $iEndTrigger = 0, $pPrg = 0, $pProgram = 0, $pSubParse = 0, $pTop = 0, $pWhen = 0, $sNC = 0, $v = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $vararg_buffer = sp; - $0 = sp + 84|0; - $1 = sp + 80|0; - $2 = sp + 76|0; - $3 = sp + 72|0; - $4 = sp + 68|0; - $pTop = sp + 64|0; - $db = sp + 60|0; - $pPrg = sp + 56|0; - $pWhen = sp + 52|0; - $v = sp + 48|0; - $sNC = sp + 16|0; - $pProgram = sp + 12|0; - $pSubParse = sp + 8|0; - $iEndTrigger = sp + 4|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pTrigger; - HEAP32[$3>>2] = $pTab; - HEAP32[$4>>2] = $orconf; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 408|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)!=(0|0); - $9 = HEAP32[$1>>2]|0; - if ($8) { - $10 = (($9) + 408|0); - $11 = HEAP32[$10>>2]|0; - $12 = $11; - } else { - $12 = $9; - } - HEAP32[$pTop>>2] = $12; - $13 = HEAP32[$1>>2]|0; - $14 = HEAP32[$13>>2]|0; - HEAP32[$db>>2] = $14; - HEAP32[$pWhen>>2] = 0; - HEAP32[$pProgram>>2] = 0; - HEAP32[$iEndTrigger>>2] = 0; - $15 = HEAP32[$db>>2]|0; - $16 = (_sqlite3DbMallocZero($15,24)|0); - HEAP32[$pPrg>>2] = $16; - $17 = HEAP32[$pPrg>>2]|0; - $18 = ($17|0)!=(0|0); - if (!($18)) { - HEAP32[$0>>2] = 0; - $165 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($165|0); - } - $19 = HEAP32[$pTop>>2]|0; - $20 = (($19) + 528|0); - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$pPrg>>2]|0; - $23 = (($22) + 4|0); - HEAP32[$23>>2] = $21; - $24 = HEAP32[$pPrg>>2]|0; - $25 = HEAP32[$pTop>>2]|0; - $26 = (($25) + 528|0); - HEAP32[$26>>2] = $24; - $27 = HEAP32[$db>>2]|0; - $28 = (_sqlite3DbMallocZero($27,28)|0); - HEAP32[$pProgram>>2] = $28; - $29 = HEAP32[$pPrg>>2]|0; - $30 = (($29) + 8|0); - HEAP32[$30>>2] = $28; - $31 = HEAP32[$pProgram>>2]|0; - $32 = ($31|0)!=(0|0); - if (!($32)) { - HEAP32[$0>>2] = 0; - $165 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($165|0); - } - $33 = HEAP32[$pTop>>2]|0; - $34 = (($33) + 8|0); - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$pProgram>>2]|0; - _sqlite3VdbeLinkSubProgram($35,$36); - $37 = HEAP32[$2>>2]|0; - $38 = HEAP32[$pPrg>>2]|0; - HEAP32[$38>>2] = $37; - $39 = HEAP32[$4>>2]|0; - $40 = HEAP32[$pPrg>>2]|0; - $41 = (($40) + 12|0); - HEAP32[$41>>2] = $39; - $42 = HEAP32[$pPrg>>2]|0; - $43 = (($42) + 16|0); - HEAP32[$43>>2] = -1; - $44 = HEAP32[$pPrg>>2]|0; - $45 = (($44) + 16|0); - $46 = (($45) + 4|0); - HEAP32[$46>>2] = -1; - $47 = HEAP32[$db>>2]|0; - $48 = (_sqlite3DbMallocZero($47,536)|0); - HEAP32[$pSubParse>>2] = $48; - $49 = HEAP32[$pSubParse>>2]|0; - $50 = ($49|0)!=(0|0); - if (!($50)) { - HEAP32[$0>>2] = 0; - $165 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($165|0); - } - ;HEAP32[$sNC+0>>2]=0|0;HEAP32[$sNC+4>>2]=0|0;HEAP32[$sNC+8>>2]=0|0;HEAP32[$sNC+12>>2]=0|0;HEAP32[$sNC+16>>2]=0|0;HEAP32[$sNC+20>>2]=0|0;HEAP32[$sNC+24>>2]=0|0;HEAP32[$sNC+28>>2]=0|0; - $51 = HEAP32[$pSubParse>>2]|0; - HEAP32[$sNC>>2] = $51; - $52 = HEAP32[$db>>2]|0; - $53 = HEAP32[$pSubParse>>2]|0; - HEAP32[$53>>2] = $52; - $54 = HEAP32[$3>>2]|0; - $55 = HEAP32[$pSubParse>>2]|0; - $56 = (($55) + 412|0); - HEAP32[$56>>2] = $54; - $57 = HEAP32[$pTop>>2]|0; - $58 = HEAP32[$pSubParse>>2]|0; - $59 = (($58) + 408|0); - HEAP32[$59>>2] = $57; - $60 = HEAP32[$2>>2]|0; - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$pSubParse>>2]|0; - $63 = (($62) + 492|0); - HEAP32[$63>>2] = $61; - $64 = HEAP32[$2>>2]|0; - $65 = (($64) + 8|0); - $66 = HEAP8[$65>>0]|0; - $67 = HEAP32[$pSubParse>>2]|0; - $68 = (($67) + 436|0); - HEAP8[$68>>0] = $66; - $69 = HEAP32[$1>>2]|0; - $70 = (($69) + 424|0); - $71 = HEAP32[$70>>2]|0; - $72 = HEAP32[$pSubParse>>2]|0; - $73 = (($72) + 424|0); - HEAP32[$73>>2] = $71; - $74 = HEAP32[$pSubParse>>2]|0; - $75 = (_sqlite3GetVdbe($74)|0); - HEAP32[$v>>2] = $75; - $76 = HEAP32[$v>>2]|0; - $77 = ($76|0)!=(0|0); - if ($77) { - $78 = HEAP32[$v>>2]|0; - $79 = HEAP32[$db>>2]|0; - $80 = HEAP32[$2>>2]|0; - $81 = HEAP32[$80>>2]|0; - HEAP32[$vararg_buffer>>2] = $81; - $82 = (_sqlite3MPrintf($79,24032,$vararg_buffer)|0); - _sqlite3VdbeChangeP4($78,-1,$82,-1); - $83 = HEAP32[$2>>2]|0; - $84 = (($83) + 12|0); - $85 = HEAP32[$84>>2]|0; - $86 = ($85|0)!=(0|0); - if ($86) { - $87 = HEAP32[$db>>2]|0; - $88 = HEAP32[$2>>2]|0; - $89 = (($88) + 12|0); - $90 = HEAP32[$89>>2]|0; - $91 = (_sqlite3ExprDup($87,$90,0)|0); - HEAP32[$pWhen>>2] = $91; - $92 = HEAP32[$pWhen>>2]|0; - $93 = (_sqlite3ResolveExprNames($sNC,$92)|0); - $94 = (0)==($93|0); - if ($94) { - $95 = HEAP32[$db>>2]|0; - $96 = (($95) + 64|0); - $97 = HEAP8[$96>>0]|0; - $98 = $97&255; - $99 = ($98|0)==(0); - if ($99) { - $100 = HEAP32[$v>>2]|0; - $101 = (_sqlite3VdbeMakeLabel($100)|0); - HEAP32[$iEndTrigger>>2] = $101; - $102 = HEAP32[$pSubParse>>2]|0; - $103 = HEAP32[$pWhen>>2]|0; - $104 = HEAP32[$iEndTrigger>>2]|0; - _sqlite3ExprIfFalse($102,$103,$104,8); - } - } - $105 = HEAP32[$db>>2]|0; - $106 = HEAP32[$pWhen>>2]|0; - _sqlite3ExprDelete($105,$106); - } - $107 = HEAP32[$pSubParse>>2]|0; - $108 = HEAP32[$2>>2]|0; - $109 = (($108) + 28|0); - $110 = HEAP32[$109>>2]|0; - $111 = HEAP32[$4>>2]|0; - (_codeTriggerProgram($107,$110,$111)|0); - $112 = HEAP32[$iEndTrigger>>2]|0; - $113 = ($112|0)!=(0); - if ($113) { - $114 = HEAP32[$v>>2]|0; - $115 = HEAP32[$iEndTrigger>>2]|0; - _sqlite3VdbeResolveLabel($114,$115); - } - $116 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp0($116,24)|0); - $117 = HEAP32[$1>>2]|0; - $118 = HEAP32[$pSubParse>>2]|0; - _transferParseError($117,$118); - $119 = HEAP32[$db>>2]|0; - $120 = (($119) + 64|0); - $121 = HEAP8[$120>>0]|0; - $122 = $121&255; - $123 = ($122|0)==(0); - if ($123) { - $124 = HEAP32[$v>>2]|0; - $125 = HEAP32[$pProgram>>2]|0; - $126 = (($125) + 4|0); - $127 = HEAP32[$pTop>>2]|0; - $128 = (($127) + 392|0); - $129 = (_sqlite3VdbeTakeOpArray($124,$126,$128)|0); - $130 = HEAP32[$pProgram>>2]|0; - HEAP32[$130>>2] = $129; - } - $131 = HEAP32[$pSubParse>>2]|0; - $132 = (($131) + 72|0); - $133 = HEAP32[$132>>2]|0; - $134 = HEAP32[$pProgram>>2]|0; - $135 = (($134) + 8|0); - HEAP32[$135>>2] = $133; - $136 = HEAP32[$pSubParse>>2]|0; - $137 = (($136) + 68|0); - $138 = HEAP32[$137>>2]|0; - $139 = HEAP32[$pProgram>>2]|0; - $140 = (($139) + 12|0); - HEAP32[$140>>2] = $138; - $141 = HEAP32[$pSubParse>>2]|0; - $142 = (($141) + 80|0); - $143 = HEAP32[$142>>2]|0; - $144 = HEAP32[$pProgram>>2]|0; - $145 = (($144) + 16|0); - HEAP32[$145>>2] = $143; - $146 = HEAP32[$2>>2]|0; - $147 = HEAP32[$pProgram>>2]|0; - $148 = (($147) + 20|0); - HEAP32[$148>>2] = $146; - $149 = HEAP32[$pSubParse>>2]|0; - $150 = (($149) + 428|0); - $151 = HEAP32[$150>>2]|0; - $152 = HEAP32[$pPrg>>2]|0; - $153 = (($152) + 16|0); - HEAP32[$153>>2] = $151; - $154 = HEAP32[$pSubParse>>2]|0; - $155 = (($154) + 432|0); - $156 = HEAP32[$155>>2]|0; - $157 = HEAP32[$pPrg>>2]|0; - $158 = (($157) + 16|0); - $159 = (($158) + 4|0); - HEAP32[$159>>2] = $156; - $160 = HEAP32[$v>>2]|0; - _sqlite3VdbeDelete($160); - } - $161 = HEAP32[$pSubParse>>2]|0; - _sqlite3ParserReset($161); - $162 = HEAP32[$db>>2]|0; - $163 = HEAP32[$pSubParse>>2]|0; - _sqlite3DbFree($162,$163); - $164 = HEAP32[$pPrg>>2]|0; - HEAP32[$0>>2] = $164; - $165 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($165|0); -} -function _sqlite3VdbeLinkSubProgram($pVdbe,$p) { - $pVdbe = $pVdbe|0; - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pVdbe; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 192|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 24|0); - HEAP32[$6>>2] = $4; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 192|0); - HEAP32[$9>>2] = $7; - STACKTOP = sp;return; -} -function _codeTriggerProgram($pParse,$pStepList,$orconf) { - $pParse = $pParse|0; - $pStepList = $pStepList|0; - $orconf = $orconf|0; - var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; - var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $db = 0, $pSelect = 0, $pStep = 0, $sDest = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $pStep = sp + 32|0; - $v = sp + 28|0; - $db = sp + 24|0; - $sDest = sp + 4|0; - $pSelect = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pStepList; - HEAP32[$2>>2] = $orconf; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 8|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$v>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$db>>2] = $7; - $8 = HEAP32[$1>>2]|0; - HEAP32[$pStep>>2] = $8; - while(1) { - $9 = HEAP32[$pStep>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - break; - } - $11 = HEAP32[$2>>2]|0; - $12 = ($11|0)==(10); - if ($12) { - $13 = HEAP32[$pStep>>2]|0; - $14 = (($13) + 1|0); - $15 = HEAP8[$14>>0]|0; - $$sink = $15; - } else { - $16 = HEAP32[$2>>2]|0; - $17 = $16&255; - $$sink = $17; - } - $18 = $$sink&255; - $19 = $18&255; - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 437|0); - HEAP8[$21>>0] = $19; - $22 = HEAP32[$pStep>>2]|0; - $23 = HEAP8[$22>>0]|0; - $24 = $23&255; - if ((($24|0) == 110)) { - $25 = HEAP32[$0>>2]|0; - $26 = HEAP32[$0>>2]|0; - $27 = HEAP32[$pStep>>2]|0; - $28 = (_targetSrcList($26,$27)|0); - $29 = HEAP32[$db>>2]|0; - $30 = HEAP32[$pStep>>2]|0; - $31 = (($30) + 24|0); - $32 = HEAP32[$31>>2]|0; - $33 = (_sqlite3ExprListDup($29,$32,0)|0); - $34 = HEAP32[$db>>2]|0; - $35 = HEAP32[$pStep>>2]|0; - $36 = (($35) + 20|0); - $37 = HEAP32[$36>>2]|0; - $38 = (_sqlite3ExprDup($34,$37,0)|0); - $39 = HEAP32[$0>>2]|0; - $40 = (($39) + 437|0); - $41 = HEAP8[$40>>0]|0; - $42 = $41&255; - _sqlite3Update($25,$28,$33,$38,$42); - } else if ((($24|0) == 108)) { - $43 = HEAP32[$0>>2]|0; - $44 = HEAP32[$0>>2]|0; - $45 = HEAP32[$pStep>>2]|0; - $46 = (_targetSrcList($44,$45)|0); - $47 = HEAP32[$db>>2]|0; - $48 = HEAP32[$pStep>>2]|0; - $49 = (($48) + 8|0); - $50 = HEAP32[$49>>2]|0; - $51 = (_sqlite3SelectDup($47,$50,0)|0); - $52 = HEAP32[$db>>2]|0; - $53 = HEAP32[$pStep>>2]|0; - $54 = (($53) + 28|0); - $55 = HEAP32[$54>>2]|0; - $56 = (_sqlite3IdListDup($52,$55)|0); - $57 = HEAP32[$0>>2]|0; - $58 = (($57) + 437|0); - $59 = HEAP8[$58>>0]|0; - $60 = $59&255; - _sqlite3Insert($43,$46,$51,$56,$60); - } else if ((($24|0) == 109)) { - $61 = HEAP32[$0>>2]|0; - $62 = HEAP32[$0>>2]|0; - $63 = HEAP32[$pStep>>2]|0; - $64 = (_targetSrcList($62,$63)|0); - $65 = HEAP32[$db>>2]|0; - $66 = HEAP32[$pStep>>2]|0; - $67 = (($66) + 20|0); - $68 = HEAP32[$67>>2]|0; - $69 = (_sqlite3ExprDup($65,$68,0)|0); - _sqlite3DeleteFrom($61,$64,$69); - } else { - $70 = HEAP32[$db>>2]|0; - $71 = HEAP32[$pStep>>2]|0; - $72 = (($71) + 8|0); - $73 = HEAP32[$72>>2]|0; - $74 = (_sqlite3SelectDup($70,$73,0)|0); - HEAP32[$pSelect>>2] = $74; - _sqlite3SelectDestInit($sDest,4,0); - $75 = HEAP32[$0>>2]|0; - $76 = HEAP32[$pSelect>>2]|0; - (_sqlite3Select($75,$76,$sDest)|0); - $77 = HEAP32[$db>>2]|0; - $78 = HEAP32[$pSelect>>2]|0; - _sqlite3SelectDelete($77,$78); - } - $79 = HEAP32[$pStep>>2]|0; - $80 = HEAP8[$79>>0]|0; - $81 = $80&255; - $82 = ($81|0)!=(119); - if ($82) { - $83 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp0($83,75)|0); - } - $84 = HEAP32[$pStep>>2]|0; - $85 = (($84) + 32|0); - $86 = HEAP32[$85>>2]|0; - HEAP32[$pStep>>2] = $86; - } - STACKTOP = sp;return 0; -} -function _transferParseError($pTo,$pFrom) { - $pTo = $pTo|0; - $pFrom = $pFrom|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pTo; - HEAP32[$1>>2] = $pFrom; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 64|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)==(0); - $6 = HEAP32[$1>>2]|0; - if ($5) { - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 4|0); - HEAP32[$10>>2] = $8; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 64|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 64|0); - HEAP32[$15>>2] = $13; - STACKTOP = sp;return; - } else { - $16 = HEAP32[$6>>2]|0; - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - _sqlite3DbFree($16,$19); - STACKTOP = sp;return; - } -} -function _sqlite3VdbeTakeOpArray($p,$pnOp,$pnMaxArg) { - $p = $p|0; - $pnOp = $pnOp|0; - $pnMaxArg = $pnMaxArg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aOp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $aOp = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $pnOp; - HEAP32[$2>>2] = $pnMaxArg; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 4|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$aOp>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$2>>2]|0; - _resolveP2Values($6,$7); - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 32|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$1>>2]|0; - HEAP32[$11>>2] = $10; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 4|0); - HEAP32[$13>>2] = 0; - $14 = HEAP32[$aOp>>2]|0; - STACKTOP = sp;return ($14|0); -} -function _resolveP2Values($p,$pMaxFuncArgs) { - $p = $p|0; - $pMaxFuncArgs = $pMaxFuncArgs|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; - var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; - var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; - var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; - var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; - var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aLabel = 0, $i = 0, $n = 0, $nMaxArgs = 0, $opcode = 0, $pOp = 0, $pParse = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $i = sp + 20|0; - $nMaxArgs = sp + 16|0; - $pOp = sp + 12|0; - $pParse = sp + 8|0; - $aLabel = sp + 4|0; - $opcode = sp + 32|0; - $n = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $pMaxFuncArgs; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$nMaxArgs>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 24|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$pParse>>2] = $6; - $7 = HEAP32[$pParse>>2]|0; - $8 = (($7) + 112|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$aLabel>>2] = $9; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 88|0); - $12 = HEAP16[$11>>1]|0; - $13 = $12 & -257; - $14 = $13 | 256; - HEAP16[$11>>1] = $14; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 88|0); - $17 = HEAP16[$16>>1]|0; - $18 = $17 & -513; - HEAP16[$16>>1] = $18; - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 4|0); - $21 = HEAP32[$20>>2]|0; - HEAP32[$pOp>>2] = $21; - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 32|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) - 1)|0; - HEAP32[$i>>2] = $25; - while(1) { - $26 = HEAP32[$i>>2]|0; - $27 = ($26|0)>=(0); - if (!($27)) { - break; - } - $28 = HEAP32[$pOp>>2]|0; - $29 = HEAP8[$28>>0]|0; - HEAP8[$opcode>>0] = $29; - $30 = HEAP8[$opcode>>0]|0; - $31 = $30&255; - switch ($31|0) { - case 15: { - $64 = HEAP32[$pOp>>2]|0; - $65 = (($64) + 8|0); - $66 = HEAP32[$65>>2]|0; - $67 = HEAP32[$nMaxArgs>>2]|0; - $68 = ($66|0)>($67|0); - if ($68) { - $69 = HEAP32[$pOp>>2]|0; - $70 = (($69) + 8|0); - $71 = HEAP32[$70>>2]|0; - HEAP32[$nMaxArgs>>2] = $71; - } - break; - } - case 5: case 7: case 9: { - $80 = HEAP32[$pOp>>2]|0; - $81 = (($80) + 16|0); - HEAP32[$81>>2] = 45; - $82 = HEAP32[$pOp>>2]|0; - $83 = (($82) + 1|0); - HEAP8[$83>>0] = -19; - break; - } - case 14: { - $72 = HEAP32[$pOp>>2]|0; - $73 = (($72) + -20|0); - $74 = (($73) + 4|0); - $75 = HEAP32[$74>>2]|0; - HEAP32[$n>>2] = $75; - $76 = HEAP32[$n>>2]|0; - $77 = HEAP32[$nMaxArgs>>2]|0; - $78 = ($76|0)>($77|0); - if ($78) { - $79 = HEAP32[$n>>2]|0; - HEAP32[$nMaxArgs>>2] = $79; - } - break; - } - case 6: case 8: { - $84 = HEAP32[$pOp>>2]|0; - $85 = (($84) + 16|0); - HEAP32[$85>>2] = 46; - $86 = HEAP32[$pOp>>2]|0; - $87 = (($86) + 1|0); - HEAP8[$87>>0] = -19; - break; - } - case 12: case 13: case 11: { - $55 = HEAP32[$0>>2]|0; - $56 = (($55) + 88|0); - $57 = HEAP16[$56>>1]|0; - $58 = $57 & -257; - HEAP16[$56>>1] = $58; - $59 = HEAP32[$0>>2]|0; - $60 = (($59) + 88|0); - $61 = HEAP16[$60>>1]|0; - $62 = $61 & -513; - $63 = $62 | 512; - HEAP16[$60>>1] = $63; - break; - } - case 4: { - $42 = HEAP32[$pOp>>2]|0; - $43 = (($42) + 8|0); - $44 = HEAP32[$43>>2]|0; - $45 = ($44|0)!=(0); - if ($45) { - $46 = HEAP32[$0>>2]|0; - $47 = (($46) + 88|0); - $48 = HEAP16[$47>>1]|0; - $49 = $48 & -257; - HEAP16[$47>>1] = $49; - label = 8; - } else { - label = 8; - } - break; - } - case 2: case 3: { - label = 8; - break; - } - case 10: case 1: { - $32 = HEAP32[$pOp>>2]|0; - $33 = (($32) + 3|0); - $34 = HEAP8[$33>>0]|0; - $35 = $34&255; - $36 = HEAP32[$nMaxArgs>>2]|0; - $37 = ($35|0)>($36|0); - if ($37) { - $38 = HEAP32[$pOp>>2]|0; - $39 = (($38) + 3|0); - $40 = HEAP8[$39>>0]|0; - $41 = $40&255; - HEAP32[$nMaxArgs>>2] = $41; - } - break; - } - default: { - } - } - if ((label|0) == 8) { - label = 0; - $50 = HEAP32[$0>>2]|0; - $51 = (($50) + 88|0); - $52 = HEAP16[$51>>1]|0; - $53 = $52 & -513; - $54 = $53 | 512; - HEAP16[$51>>1] = $54; - } - $88 = HEAP8[$opcode>>0]|0; - $89 = $88&255; - $90 = (24048 + ($89)|0); - $91 = HEAP8[$90>>0]|0; - $92 = HEAP32[$pOp>>2]|0; - $93 = (($92) + 2|0); - HEAP8[$93>>0] = $91; - $94 = HEAP32[$pOp>>2]|0; - $95 = (($94) + 2|0); - $96 = HEAP8[$95>>0]|0; - $97 = $96&255; - $98 = $97 & 1; - $99 = ($98|0)!=(0); - if ($99) { - $100 = HEAP32[$pOp>>2]|0; - $101 = (($100) + 8|0); - $102 = HEAP32[$101>>2]|0; - $103 = ($102|0)<(0); - if ($103) { - $104 = HEAP32[$pOp>>2]|0; - $105 = (($104) + 8|0); - $106 = HEAP32[$105>>2]|0; - $107 = (-1 - ($106))|0; - $108 = HEAP32[$aLabel>>2]|0; - $109 = (($108) + ($107<<2)|0); - $110 = HEAP32[$109>>2]|0; - $111 = HEAP32[$pOp>>2]|0; - $112 = (($111) + 8|0); - HEAP32[$112>>2] = $110; - } - } - $113 = HEAP32[$i>>2]|0; - $114 = (($113) + -1)|0; - HEAP32[$i>>2] = $114; - $115 = HEAP32[$pOp>>2]|0; - $116 = (($115) + 20|0); - HEAP32[$pOp>>2] = $116; - } - $117 = HEAP32[$0>>2]|0; - $118 = HEAP32[$117>>2]|0; - $119 = HEAP32[$pParse>>2]|0; - $120 = (($119) + 112|0); - $121 = HEAP32[$120>>2]|0; - _sqlite3DbFree($118,$121); - $122 = HEAP32[$pParse>>2]|0; - $123 = (($122) + 112|0); - HEAP32[$123>>2] = 0; - $124 = HEAP32[$pParse>>2]|0; - $125 = (($124) + 108|0); - HEAP32[$125>>2] = 0; - $126 = HEAP32[$nMaxArgs>>2]|0; - $127 = HEAP32[$1>>2]|0; - HEAP32[$127>>2] = $126; - STACKTOP = sp;return; -} -function _sqlite3BtreeNext($pCur,$pRes) { - $pCur = $pCur|0; - $pRes = $pRes|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $16 = 0; - var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; - var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; - var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; - var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; - var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $idx = 0, $pPage = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $rc = sp + 8|0; - $idx = sp + 4|0; - $pPage = sp; - HEAP32[$1>>2] = $pCur; - HEAP32[$2>>2] = $pRes; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 81|0); - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = ($6|0)!=(1); - if ($7) { - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 80|0); - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - $12 = $11 & -5; - $13 = $12&255; - HEAP8[$9>>0] = $13; - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 81|0); - $16 = HEAP8[$15>>0]|0; - $17 = $16&255; - $18 = ($17|0)>=(3); - if ($18) { - $19 = HEAP32[$1>>2]|0; - $20 = (_btreeRestoreCursorPosition($19)|0); - $21 = $20; - } else { - $21 = 0; - } - HEAP32[$rc>>2] = $21; - $22 = HEAP32[$rc>>2]|0; - $23 = ($22|0)!=(0); - if ($23) { - $24 = HEAP32[$2>>2]|0; - HEAP32[$24>>2] = 0; - $25 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $25; - $150 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($150|0); - } - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 81|0); - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = (0)==($29|0); - if ($30) { - $31 = HEAP32[$2>>2]|0; - HEAP32[$31>>2] = 1; - HEAP32[$0>>2] = 0; - $150 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($150|0); - } - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 76|0); - $34 = HEAP32[$33>>2]|0; - $35 = ($34|0)!=(0); - if ($35) { - $36 = HEAP32[$1>>2]|0; - $37 = (($36) + 81|0); - HEAP8[$37>>0] = 1; - $38 = HEAP32[$1>>2]|0; - $39 = (($38) + 76|0); - $40 = HEAP32[$39>>2]|0; - $41 = ($40|0)>(0); - $42 = HEAP32[$1>>2]|0; - $43 = (($42) + 76|0); - HEAP32[$43>>2] = 0; - if ($41) { - $44 = HEAP32[$2>>2]|0; - HEAP32[$44>>2] = 0; - HEAP32[$0>>2] = 0; - $150 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($150|0); - } - } - } - $45 = HEAP32[$1>>2]|0; - $46 = (($45) + 84|0); - $47 = HEAP16[$46>>1]|0; - $48 = $47 << 16 >> 16; - $49 = HEAP32[$1>>2]|0; - $50 = (($49) + 128|0); - $51 = (($50) + ($48<<2)|0); - $52 = HEAP32[$51>>2]|0; - HEAP32[$pPage>>2] = $52; - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + 84|0); - $55 = HEAP16[$54>>1]|0; - $56 = $55 << 16 >> 16; - $57 = HEAP32[$1>>2]|0; - $58 = (($57) + 86|0); - $59 = (($58) + ($56<<1)|0); - $60 = HEAP16[$59>>1]|0; - $61 = (($60) + 1)<<16>>16; - HEAP16[$59>>1] = $61; - $62 = $61&65535; - HEAP32[$idx>>2] = $62; - $63 = HEAP32[$1>>2]|0; - $64 = (($63) + 24|0); - $65 = (($64) + 26|0); - HEAP16[$65>>1] = 0; - $66 = HEAP32[$1>>2]|0; - $67 = (($66) + 80|0); - $68 = HEAP8[$67>>0]|0; - $69 = $68&255; - $70 = $69 & -7; - $71 = $70&255; - HEAP8[$67>>0] = $71; - $72 = HEAP32[$idx>>2]|0; - $73 = HEAP32[$pPage>>2]|0; - $74 = (($73) + 16|0); - $75 = HEAP16[$74>>1]|0; - $76 = $75&65535; - $77 = ($72|0)>=($76|0); - if (!($77)) { - $142 = HEAP32[$2>>2]|0; - HEAP32[$142>>2] = 0; - $143 = HEAP32[$pPage>>2]|0; - $144 = (($143) + 3|0); - $145 = HEAP8[$144>>0]|0; - $146 = ($145<<24>>24)!=(0); - if ($146) { - HEAP32[$0>>2] = 0; - $150 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($150|0); - } else { - $147 = HEAP32[$1>>2]|0; - $148 = (_moveToLeftmost($147)|0); - HEAP32[$rc>>2] = $148; - $149 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $149; - $150 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($150|0); - } - } - $78 = HEAP32[$pPage>>2]|0; - $79 = (($78) + 3|0); - $80 = HEAP8[$79>>0]|0; - $81 = ($80<<24>>24)!=(0); - if (!($81)) { - $82 = HEAP32[$1>>2]|0; - $83 = HEAP32[$pPage>>2]|0; - $84 = (($83) + 5|0); - $85 = HEAP8[$84>>0]|0; - $86 = $85&255; - $87 = (($86) + 8)|0; - $88 = HEAP32[$pPage>>2]|0; - $89 = (($88) + 56|0); - $90 = HEAP32[$89>>2]|0; - $91 = (($90) + ($87)|0); - $92 = (_sqlite3Get4byte($91)|0); - $93 = (_moveToChild($82,$92)|0); - HEAP32[$rc>>2] = $93; - $94 = HEAP32[$rc>>2]|0; - $95 = ($94|0)!=(0); - if ($95) { - $96 = HEAP32[$2>>2]|0; - HEAP32[$96>>2] = 0; - $97 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $97; - $150 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($150|0); - } else { - $98 = HEAP32[$1>>2]|0; - $99 = (_moveToLeftmost($98)|0); - HEAP32[$rc>>2] = $99; - $100 = HEAP32[$2>>2]|0; - HEAP32[$100>>2] = 0; - $101 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $101; - $150 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($150|0); - } - } - while(1) { - $102 = HEAP32[$1>>2]|0; - $103 = (($102) + 84|0); - $104 = HEAP16[$103>>1]|0; - $105 = $104 << 16 >> 16; - $106 = ($105|0)==(0); - if ($106) { - label = 17; - break; - } - $110 = HEAP32[$1>>2]|0; - _moveToParent($110); - $111 = HEAP32[$1>>2]|0; - $112 = (($111) + 84|0); - $113 = HEAP16[$112>>1]|0; - $114 = $113 << 16 >> 16; - $115 = HEAP32[$1>>2]|0; - $116 = (($115) + 128|0); - $117 = (($116) + ($114<<2)|0); - $118 = HEAP32[$117>>2]|0; - HEAP32[$pPage>>2] = $118; - $119 = HEAP32[$1>>2]|0; - $120 = (($119) + 84|0); - $121 = HEAP16[$120>>1]|0; - $122 = $121 << 16 >> 16; - $123 = HEAP32[$1>>2]|0; - $124 = (($123) + 86|0); - $125 = (($124) + ($122<<1)|0); - $126 = HEAP16[$125>>1]|0; - $127 = $126&65535; - $128 = HEAP32[$pPage>>2]|0; - $129 = (($128) + 16|0); - $130 = HEAP16[$129>>1]|0; - $131 = $130&65535; - $132 = ($127|0)>=($131|0); - if (!($132)) { - break; - } - } - if ((label|0) == 17) { - $107 = HEAP32[$2>>2]|0; - HEAP32[$107>>2] = 1; - $108 = HEAP32[$1>>2]|0; - $109 = (($108) + 81|0); - HEAP8[$109>>0] = 0; - HEAP32[$0>>2] = 0; - $150 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($150|0); - } - $133 = HEAP32[$2>>2]|0; - HEAP32[$133>>2] = 0; - $134 = HEAP32[$pPage>>2]|0; - $135 = (($134) + 2|0); - $136 = HEAP8[$135>>0]|0; - $137 = ($136<<24>>24)!=(0); - if ($137) { - $138 = HEAP32[$1>>2]|0; - $139 = HEAP32[$2>>2]|0; - $140 = (_sqlite3BtreeNext($138,$139)|0); - HEAP32[$rc>>2] = $140; - } else { - HEAP32[$rc>>2] = 0; - } - $141 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $141; - $150 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($150|0); -} -function _sqlite3BtreePrevious($pCur,$pRes) { - $pCur = $pCur|0; - $pRes = $pRes|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $idx = 0, $pPage = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $rc = sp + 8|0; - $pPage = sp + 4|0; - $idx = sp; - HEAP32[$1>>2] = $pCur; - HEAP32[$2>>2] = $pRes; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 80|0); - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = $6 & -13; - $8 = $7&255; - HEAP8[$4>>0] = $8; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 81|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = ($12|0)!=(1); - if ($13) { - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 81|0); - $16 = HEAP8[$15>>0]|0; - $17 = $16&255; - $18 = ($17|0)>=(3); - if ($18) { - $19 = HEAP32[$1>>2]|0; - $20 = (_btreeRestoreCursorPosition($19)|0); - HEAP32[$rc>>2] = $20; - $21 = HEAP32[$rc>>2]|0; - $22 = ($21|0)!=(0); - if ($22) { - $23 = HEAP32[$2>>2]|0; - HEAP32[$23>>2] = 0; - $24 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $24; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - } - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 81|0); - $27 = HEAP8[$26>>0]|0; - $28 = $27&255; - $29 = (0)==($28|0); - if ($29) { - $30 = HEAP32[$2>>2]|0; - HEAP32[$30>>2] = 1; - HEAP32[$0>>2] = 0; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 76|0); - $33 = HEAP32[$32>>2]|0; - $34 = ($33|0)!=(0); - if ($34) { - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 81|0); - HEAP8[$36>>0] = 1; - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 76|0); - $39 = HEAP32[$38>>2]|0; - $40 = ($39|0)<(0); - $41 = HEAP32[$1>>2]|0; - $42 = (($41) + 76|0); - HEAP32[$42>>2] = 0; - if ($40) { - $43 = HEAP32[$2>>2]|0; - HEAP32[$43>>2] = 0; - HEAP32[$0>>2] = 0; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - } - } - $44 = HEAP32[$1>>2]|0; - $45 = (($44) + 84|0); - $46 = HEAP16[$45>>1]|0; - $47 = $46 << 16 >> 16; - $48 = HEAP32[$1>>2]|0; - $49 = (($48) + 128|0); - $50 = (($49) + ($47<<2)|0); - $51 = HEAP32[$50>>2]|0; - HEAP32[$pPage>>2] = $51; - $52 = HEAP32[$pPage>>2]|0; - $53 = (($52) + 3|0); - $54 = HEAP8[$53>>0]|0; - $55 = ($54<<24>>24)!=(0); - do { - if ($55) { - while(1) { - $102 = HEAP32[$1>>2]|0; - $103 = (($102) + 84|0); - $104 = HEAP16[$103>>1]|0; - $105 = $104 << 16 >> 16; - $106 = HEAP32[$1>>2]|0; - $107 = (($106) + 86|0); - $108 = (($107) + ($105<<1)|0); - $109 = HEAP16[$108>>1]|0; - $110 = $109&65535; - $111 = ($110|0)==(0); - $112 = HEAP32[$1>>2]|0; - if (!($111)) { - break; - } - $113 = (($112) + 84|0); - $114 = HEAP16[$113>>1]|0; - $115 = $114 << 16 >> 16; - $116 = ($115|0)==(0); - $117 = HEAP32[$1>>2]|0; - if ($116) { - label = 16; - break; - } - _moveToParent($117); - } - if ((label|0) == 16) { - $118 = (($117) + 81|0); - HEAP8[$118>>0] = 0; - $119 = HEAP32[$2>>2]|0; - HEAP32[$119>>2] = 1; - HEAP32[$0>>2] = 0; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - $120 = (($112) + 24|0); - $121 = (($120) + 26|0); - HEAP16[$121>>1] = 0; - $122 = HEAP32[$1>>2]|0; - $123 = (($122) + 80|0); - $124 = HEAP8[$123>>0]|0; - $125 = $124&255; - $126 = $125 & -7; - $127 = $126&255; - HEAP8[$123>>0] = $127; - $128 = HEAP32[$1>>2]|0; - $129 = (($128) + 84|0); - $130 = HEAP16[$129>>1]|0; - $131 = $130 << 16 >> 16; - $132 = HEAP32[$1>>2]|0; - $133 = (($132) + 86|0); - $134 = (($133) + ($131<<1)|0); - $135 = HEAP16[$134>>1]|0; - $136 = (($135) + -1)<<16>>16; - HEAP16[$134>>1] = $136; - $137 = HEAP32[$1>>2]|0; - $138 = (($137) + 84|0); - $139 = HEAP16[$138>>1]|0; - $140 = $139 << 16 >> 16; - $141 = HEAP32[$1>>2]|0; - $142 = (($141) + 128|0); - $143 = (($142) + ($140<<2)|0); - $144 = HEAP32[$143>>2]|0; - HEAP32[$pPage>>2] = $144; - $145 = HEAP32[$pPage>>2]|0; - $146 = (($145) + 2|0); - $147 = HEAP8[$146>>0]|0; - $148 = $147&255; - $149 = ($148|0)!=(0); - if ($149) { - $150 = HEAP32[$pPage>>2]|0; - $151 = (($150) + 3|0); - $152 = HEAP8[$151>>0]|0; - $153 = ($152<<24>>24)!=(0); - if (!($153)) { - $154 = HEAP32[$1>>2]|0; - $155 = HEAP32[$2>>2]|0; - $156 = (_sqlite3BtreePrevious($154,$155)|0); - HEAP32[$rc>>2] = $156; - break; - } - } - HEAP32[$rc>>2] = 0; - } else { - $56 = HEAP32[$1>>2]|0; - $57 = (($56) + 84|0); - $58 = HEAP16[$57>>1]|0; - $59 = $58 << 16 >> 16; - $60 = HEAP32[$1>>2]|0; - $61 = (($60) + 86|0); - $62 = (($61) + ($59<<1)|0); - $63 = HEAP16[$62>>1]|0; - $64 = $63&65535; - HEAP32[$idx>>2] = $64; - $65 = HEAP32[$1>>2]|0; - $66 = HEAP32[$pPage>>2]|0; - $67 = (($66) + 56|0); - $68 = HEAP32[$67>>2]|0; - $69 = HEAP32[$pPage>>2]|0; - $70 = (($69) + 18|0); - $71 = HEAP16[$70>>1]|0; - $72 = $71&65535; - $73 = HEAP32[$idx>>2]|0; - $74 = $73<<1; - $75 = HEAP32[$pPage>>2]|0; - $76 = (($75) + 64|0); - $77 = HEAP32[$76>>2]|0; - $78 = (($77) + ($74)|0); - $79 = HEAP8[$78>>0]|0; - $80 = $79&255; - $81 = $80 << 8; - $82 = HEAP32[$idx>>2]|0; - $83 = $82<<1; - $84 = HEAP32[$pPage>>2]|0; - $85 = (($84) + 64|0); - $86 = HEAP32[$85>>2]|0; - $87 = (($86) + ($83)|0); - $88 = (($87) + 1|0); - $89 = HEAP8[$88>>0]|0; - $90 = $89&255; - $91 = $81 | $90; - $92 = $72 & $91; - $93 = (($68) + ($92)|0); - $94 = (_sqlite3Get4byte($93)|0); - $95 = (_moveToChild($65,$94)|0); - HEAP32[$rc>>2] = $95; - $96 = HEAP32[$rc>>2]|0; - $97 = ($96|0)!=(0); - if (!($97)) { - $100 = HEAP32[$1>>2]|0; - $101 = (_moveToRightmost($100)|0); - HEAP32[$rc>>2] = $101; - break; - } - $98 = HEAP32[$2>>2]|0; - HEAP32[$98>>2] = 0; - $99 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $99; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - } while(0); - $157 = HEAP32[$2>>2]|0; - HEAP32[$157>>2] = 0; - $158 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $158; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); -} -function _btreeRestoreCursorPosition($pCur) { - $pCur = $pCur|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pCur; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 81|0); - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - $6 = ($5|0)==(4); - $7 = HEAP32[$1>>2]|0; - if ($6) { - $8 = (($7) + 76|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$0>>2] = $9; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); - } - $10 = (($7) + 81|0); - HEAP8[$10>>0] = 0; - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 64|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 56|0); - $17 = $16; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = (($17) + 4)|0; - $21 = $20; - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 76|0); - $25 = (_btreeMoveto($11,$14,$19,$22,0,$24)|0); - HEAP32[$rc>>2] = $25; - $26 = HEAP32[$rc>>2]|0; - $27 = ($26|0)==(0); - if ($27) { - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 64|0); - $30 = HEAP32[$29>>2]|0; - _sqlite3_free($30); - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 64|0); - HEAP32[$32>>2] = 0; - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 76|0); - $35 = HEAP32[$34>>2]|0; - $36 = ($35|0)!=(0); - if ($36) { - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 81|0); - $39 = HEAP8[$38>>0]|0; - $40 = $39&255; - $41 = ($40|0)==(1); - if ($41) { - $42 = HEAP32[$1>>2]|0; - $43 = (($42) + 81|0); - HEAP8[$43>>0] = 2; - } - } - } - $44 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $44; - $45 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($45|0); -} -function _moveToChild($pCur,$newPgno) { - $pCur = $pCur|0; - $newPgno = $newPgno|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $i = 0, $pBt = 0, $pNewPage = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $rc = sp + 12|0; - $i = sp + 8|0; - $pNewPage = sp + 4|0; - $pBt = sp; - HEAP32[$1>>2] = $pCur; - HEAP32[$2>>2] = $newPgno; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 84|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5 << 16 >> 16; - HEAP32[$i>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$pBt>>2] = $9; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 84|0); - $12 = HEAP16[$11>>1]|0; - $13 = $12 << 16 >> 16; - $14 = ($13|0)>=(19); - if ($14) { - $15 = (_sqlite3CorruptError(55422)|0); - HEAP32[$0>>2] = $15; - $72 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($72|0); - } - $16 = HEAP32[$pBt>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 80|0); - $20 = HEAP8[$19>>0]|0; - $21 = $20&255; - $22 = $21 & 1; - $23 = ($22|0)==(0); - $24 = $23 ? 2 : 0; - $25 = (_getAndInitPage($16,$17,$pNewPage,$24)|0); - HEAP32[$rc>>2] = $25; - $26 = HEAP32[$rc>>2]|0; - $27 = ($26|0)!=(0); - if ($27) { - $28 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $28; - $72 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($72|0); - } - $29 = HEAP32[$pNewPage>>2]|0; - $30 = HEAP32[$i>>2]|0; - $31 = (($30) + 1)|0; - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 128|0); - $34 = (($33) + ($31<<2)|0); - HEAP32[$34>>2] = $29; - $35 = HEAP32[$i>>2]|0; - $36 = (($35) + 1)|0; - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 86|0); - $39 = (($38) + ($36<<1)|0); - HEAP16[$39>>1] = 0; - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 84|0); - $42 = HEAP16[$41>>1]|0; - $43 = (($42) + 1)<<16>>16; - HEAP16[$41>>1] = $43; - $44 = HEAP32[$1>>2]|0; - $45 = (($44) + 24|0); - $46 = (($45) + 26|0); - HEAP16[$46>>1] = 0; - $47 = HEAP32[$1>>2]|0; - $48 = (($47) + 80|0); - $49 = HEAP8[$48>>0]|0; - $50 = $49&255; - $51 = $50 & -7; - $52 = $51&255; - HEAP8[$48>>0] = $52; - $53 = HEAP32[$pNewPage>>2]|0; - $54 = (($53) + 16|0); - $55 = HEAP16[$54>>1]|0; - $56 = $55&65535; - $57 = ($56|0)<(1); - if (!($57)) { - $58 = HEAP32[$pNewPage>>2]|0; - $59 = (($58) + 2|0); - $60 = HEAP8[$59>>0]|0; - $61 = $60&255; - $62 = HEAP32[$i>>2]|0; - $63 = HEAP32[$1>>2]|0; - $64 = (($63) + 128|0); - $65 = (($64) + ($62<<2)|0); - $66 = HEAP32[$65>>2]|0; - $67 = (($66) + 2|0); - $68 = HEAP8[$67>>0]|0; - $69 = $68&255; - $70 = ($61|0)!=($69|0); - if (!($70)) { - HEAP32[$0>>2] = 0; - $72 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($72|0); - } - } - $71 = (_sqlite3CorruptError(55434)|0); - HEAP32[$0>>2] = $71; - $72 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($72|0); -} -function _moveToRightmost($pCur) { - $pCur = $pCur|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $7 = 0, $8 = 0, $9 = 0, $pPage = 0, $pgno = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $pgno = sp + 8|0; - $rc = sp + 4|0; - $pPage = sp; - HEAP32[$0>>2] = $pCur; - HEAP32[$rc>>2] = 0; - HEAP32[$pPage>>2] = 0; - while(1) { - $1 = HEAP32[$rc>>2]|0; - $2 = ($1|0)==(0); - if (!($2)) { - break; - } - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 84|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5 << 16 >> 16; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 128|0); - $9 = (($8) + ($6<<2)|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$pPage>>2] = $10; - $11 = (($10) + 3|0); - $12 = HEAP8[$11>>0]|0; - $13 = ($12<<24>>24)!=(0); - $14 = $13 ^ 1; - if (!($14)) { - break; - } - $15 = HEAP32[$pPage>>2]|0; - $16 = (($15) + 5|0); - $17 = HEAP8[$16>>0]|0; - $18 = $17&255; - $19 = (($18) + 8)|0; - $20 = HEAP32[$pPage>>2]|0; - $21 = (($20) + 56|0); - $22 = HEAP32[$21>>2]|0; - $23 = (($22) + ($19)|0); - $24 = (_sqlite3Get4byte($23)|0); - HEAP32[$pgno>>2] = $24; - $25 = HEAP32[$pPage>>2]|0; - $26 = (($25) + 16|0); - $27 = HEAP16[$26>>1]|0; - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 84|0); - $30 = HEAP16[$29>>1]|0; - $31 = $30 << 16 >> 16; - $32 = HEAP32[$0>>2]|0; - $33 = (($32) + 86|0); - $34 = (($33) + ($31<<1)|0); - HEAP16[$34>>1] = $27; - $35 = HEAP32[$0>>2]|0; - $36 = HEAP32[$pgno>>2]|0; - $37 = (_moveToChild($35,$36)|0); - HEAP32[$rc>>2] = $37; - } - $38 = HEAP32[$rc>>2]|0; - $39 = ($38|0)==(0); - if (!($39)) { - $62 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($62|0); - } - $40 = HEAP32[$pPage>>2]|0; - $41 = (($40) + 16|0); - $42 = HEAP16[$41>>1]|0; - $43 = $42&65535; - $44 = (($43) - 1)|0; - $45 = $44&65535; - $46 = HEAP32[$0>>2]|0; - $47 = (($46) + 84|0); - $48 = HEAP16[$47>>1]|0; - $49 = $48 << 16 >> 16; - $50 = HEAP32[$0>>2]|0; - $51 = (($50) + 86|0); - $52 = (($51) + ($49<<1)|0); - HEAP16[$52>>1] = $45; - $53 = HEAP32[$0>>2]|0; - $54 = (($53) + 24|0); - $55 = (($54) + 26|0); - HEAP16[$55>>1] = 0; - $56 = HEAP32[$0>>2]|0; - $57 = (($56) + 80|0); - $58 = HEAP8[$57>>0]|0; - $59 = $58&255; - $60 = $59 & -3; - $61 = $60&255; - HEAP8[$57>>0] = $61; - $62 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($62|0); -} -function _moveToParent($pCur) { - $pCur = $pCur|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pCur; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 84|0); - $3 = HEAP16[$2>>1]|0; - $4 = $3 << 16 >> 16; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 128|0); - $7 = (($6) + ($4<<2)|0); - $8 = HEAP32[$7>>2]|0; - _releasePage($8); - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 84|0); - $11 = HEAP16[$10>>1]|0; - $12 = (($11) + -1)<<16>>16; - HEAP16[$10>>1] = $12; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 24|0); - $15 = (($14) + 26|0); - HEAP16[$15>>1] = 0; - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 80|0); - $18 = HEAP8[$17>>0]|0; - $19 = $18&255; - $20 = $19 & -7; - $21 = $20&255; - HEAP8[$17>>0] = $21; - STACKTOP = sp;return; -} -function _getAndInitPage($pBt,$pgno,$ppPage,$bReadonly) { - $pBt = $pBt|0; - $pgno = $pgno|0; - $ppPage = $ppPage|0; - $bReadonly = $bReadonly|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pBt; - HEAP32[$1>>2] = $pgno; - HEAP32[$2>>2] = $ppPage; - HEAP32[$3>>2] = $bReadonly; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$0>>2]|0; - $6 = (_btreePagecount($5)|0); - $7 = ($4>>>0)>($6>>>0); - if ($7) { - $8 = (_sqlite3CorruptError(52811)|0); - HEAP32[$rc>>2] = $8; - } else { - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = HEAP32[$3>>2]|0; - $13 = (_btreeGetPage($9,$10,$11,$12)|0); - HEAP32[$rc>>2] = $13; - $14 = HEAP32[$rc>>2]|0; - $15 = ($14|0)==(0); - if ($15) { - $16 = HEAP32[$2>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = HEAP8[$17>>0]|0; - $19 = $18&255; - $20 = ($19|0)==(0); - if ($20) { - $21 = HEAP32[$2>>2]|0; - $22 = HEAP32[$21>>2]|0; - $23 = (_btreeInitPage($22)|0); - HEAP32[$rc>>2] = $23; - $24 = HEAP32[$rc>>2]|0; - $25 = ($24|0)!=(0); - if ($25) { - $26 = HEAP32[$2>>2]|0; - $27 = HEAP32[$26>>2]|0; - _releasePage($27); - } - } - } - } - $28 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($28|0); -} -function _btreePagecount($pBt) { - $pBt = $pBt|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pBt; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 44|0); - $3 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _btreeGetPage($pBt,$pgno,$ppPage,$flags) { - $pBt = $pBt|0; - $pgno = $pgno|0; - $ppPage = $ppPage|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDbPage = 0; - var $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $rc = sp + 4|0; - $pDbPage = sp; - HEAP32[$1>>2] = $pBt; - HEAP32[$2>>2] = $pgno; - HEAP32[$3>>2] = $ppPage; - HEAP32[$4>>2] = $flags; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$4>>2]|0; - $9 = (_sqlite3PagerAcquire($6,$7,$pDbPage,$8)|0); - HEAP32[$rc>>2] = $9; - $10 = HEAP32[$rc>>2]|0; - $11 = ($10|0)!=(0); - if ($11) { - $12 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $12; - $18 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($18|0); - } else { - $13 = HEAP32[$pDbPage>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = (_btreePageFromDbPage($13,$14,$15)|0); - $17 = HEAP32[$3>>2]|0; - HEAP32[$17>>2] = $16; - HEAP32[$0>>2] = 0; - $18 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($18|0); - } - return 0|0; -} -function _btreePageFromDbPage($pDbPage,$pgno,$pBt) { - $pDbPage = $pDbPage|0; - $pgno = $pgno|0; - $pBt = $pBt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pPage = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pPage = sp; - HEAP32[$0>>2] = $pDbPage; - HEAP32[$1>>2] = $pgno; - HEAP32[$2>>2] = $pBt; - $3 = HEAP32[$0>>2]|0; - $4 = (_sqlite3PagerGetExtra($3)|0); - HEAP32[$pPage>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (_sqlite3PagerGetData($5)|0); - $7 = HEAP32[$pPage>>2]|0; - $8 = (($7) + 56|0); - HEAP32[$8>>2] = $6; - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$pPage>>2]|0; - $11 = (($10) + 68|0); - HEAP32[$11>>2] = $9; - $12 = HEAP32[$2>>2]|0; - $13 = HEAP32[$pPage>>2]|0; - $14 = (($13) + 52|0); - HEAP32[$14>>2] = $12; - $15 = HEAP32[$1>>2]|0; - $16 = HEAP32[$pPage>>2]|0; - $17 = (($16) + 72|0); - HEAP32[$17>>2] = $15; - $18 = HEAP32[$pPage>>2]|0; - $19 = (($18) + 72|0); - $20 = HEAP32[$19>>2]|0; - $21 = ($20|0)==(1); - $22 = $21 ? 100 : 0; - $23 = $22&255; - $24 = HEAP32[$pPage>>2]|0; - $25 = (($24) + 5|0); - HEAP8[$25>>0] = $23; - $26 = HEAP32[$pPage>>2]|0; - STACKTOP = sp;return ($26|0); -} -function _btreeMoveto($pCur,$pKey,$0,$1,$bias,$pRes) { - $pCur = $pCur|0; - $pKey = $pKey|0; - $0 = $0|0; - $1 = $1|0; - $bias = $bias|0; - $pRes = $pRes|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $7 = 0; - var $8 = 0, $9 = 0, $aSpace = 0, $pFree = 0, $pIdxKey = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 240|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $4 = sp + 28|0; - $5 = sp; - $6 = sp + 24|0; - $7 = sp + 20|0; - $rc = sp + 16|0; - $pIdxKey = sp + 12|0; - $aSpace = sp + 40|0; - $pFree = sp + 8|0; - HEAP32[$3>>2] = $pCur; - HEAP32[$4>>2] = $pKey; - $8 = $5; - $9 = $8; - HEAP32[$9>>2] = $0; - $10 = (($8) + 4)|0; - $11 = $10; - HEAP32[$11>>2] = $1; - HEAP32[$6>>2] = $bias; - HEAP32[$7>>2] = $pRes; - HEAP32[$pFree>>2] = 0; - $12 = HEAP32[$4>>2]|0; - $13 = ($12|0)!=(0|0); - if ($13) { - $14 = HEAP32[$3>>2]|0; - $15 = (($14) + 16|0); - $16 = HEAP32[$15>>2]|0; - $17 = (_sqlite3VdbeAllocUnpackedRecord($16,$aSpace,200,$pFree)|0); - HEAP32[$pIdxKey>>2] = $17; - $18 = HEAP32[$pIdxKey>>2]|0; - $19 = ($18|0)==(0|0); - if ($19) { - HEAP32[$2>>2] = 7; - $63 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($63|0); - } - $20 = HEAP32[$3>>2]|0; - $21 = (($20) + 16|0); - $22 = HEAP32[$21>>2]|0; - $23 = $5; - $24 = $23; - $25 = HEAP32[$24>>2]|0; - $26 = (($23) + 4)|0; - $27 = $26; - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$4>>2]|0; - $30 = HEAP32[$pIdxKey>>2]|0; - _sqlite3VdbeRecordUnpack($22,$25,$29,$30); - $31 = HEAP32[$pIdxKey>>2]|0; - $32 = (($31) + 4|0); - $33 = HEAP16[$32>>1]|0; - $34 = $33&65535; - $35 = ($34|0)==(0); - if ($35) { - $36 = HEAP32[$3>>2]|0; - $37 = (($36) + 16|0); - $38 = HEAP32[$37>>2]|0; - $39 = (($38) + 12|0); - $40 = HEAP32[$39>>2]|0; - $41 = HEAP32[$pFree>>2]|0; - _sqlite3DbFree($40,$41); - $42 = (_sqlite3CorruptError(51847)|0); - HEAP32[$2>>2] = $42; - $63 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($63|0); - } - } else { - HEAP32[$pIdxKey>>2] = 0; - } - $43 = HEAP32[$3>>2]|0; - $44 = HEAP32[$pIdxKey>>2]|0; - $45 = $5; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = (($45) + 4)|0; - $49 = $48; - $50 = HEAP32[$49>>2]|0; - $51 = HEAP32[$6>>2]|0; - $52 = HEAP32[$7>>2]|0; - $53 = (_sqlite3BtreeMovetoUnpacked($43,$44,$47,$50,$51,$52)|0); - HEAP32[$rc>>2] = $53; - $54 = HEAP32[$pFree>>2]|0; - $55 = ($54|0)!=(0|0); - if ($55) { - $56 = HEAP32[$3>>2]|0; - $57 = (($56) + 16|0); - $58 = HEAP32[$57>>2]|0; - $59 = (($58) + 12|0); - $60 = HEAP32[$59>>2]|0; - $61 = HEAP32[$pFree>>2]|0; - _sqlite3DbFree($60,$61); - } - $62 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $62; - $63 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($63|0); -} -function _sqlite3VdbeAllocUnpackedRecord($pKeyInfo,$pSpace,$szSpace,$ppFree) { - $pKeyInfo = $pKeyInfo|0; - $pSpace = $pSpace|0; - $szSpace = $szSpace|0; - $ppFree = $ppFree|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nByte = 0, $nOff = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $p = sp + 8|0; - $nOff = sp + 4|0; - $nByte = sp; - HEAP32[$1>>2] = $pKeyInfo; - HEAP32[$2>>2] = $pSpace; - HEAP32[$3>>2] = $szSpace; - HEAP32[$4>>2] = $ppFree; - $5 = HEAP32[$2>>2]|0; - $6 = $5; - $7 = $6 & 7; - $8 = (8 - ($7))|0; - $9 = $8 & 7; - HEAP32[$nOff>>2] = $9; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 6|0); - $12 = HEAP16[$11>>1]|0; - $13 = $12&65535; - $14 = (($13) + 1)|0; - $15 = ($14*40)|0; - $16 = (24 + ($15))|0; - HEAP32[$nByte>>2] = $16; - $17 = HEAP32[$nByte>>2]|0; - $18 = HEAP32[$3>>2]|0; - $19 = HEAP32[$nOff>>2]|0; - $20 = (($18) + ($19))|0; - $21 = ($17|0)>($20|0); - if ($21) { - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 12|0); - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$nByte>>2]|0; - $26 = (_sqlite3DbMallocRaw($24,$25)|0); - HEAP32[$p>>2] = $26; - $27 = HEAP32[$p>>2]|0; - $28 = HEAP32[$4>>2]|0; - HEAP32[$28>>2] = $27; - $29 = HEAP32[$p>>2]|0; - $30 = ($29|0)!=(0|0); - if (!($30)) { - HEAP32[$0>>2] = 0; - $50 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($50|0); - } - } else { - $31 = HEAP32[$nOff>>2]|0; - $32 = HEAP32[$2>>2]|0; - $33 = (($32) + ($31)|0); - HEAP32[$p>>2] = $33; - $34 = HEAP32[$4>>2]|0; - HEAP32[$34>>2] = 0; - } - $35 = HEAP32[$p>>2]|0; - $36 = (($35) + 24|0); - $37 = HEAP32[$p>>2]|0; - $38 = (($37) + 8|0); - HEAP32[$38>>2] = $36; - $39 = HEAP32[$1>>2]|0; - $40 = HEAP32[$p>>2]|0; - HEAP32[$40>>2] = $39; - $41 = HEAP32[$1>>2]|0; - $42 = (($41) + 6|0); - $43 = HEAP16[$42>>1]|0; - $44 = $43&65535; - $45 = (($44) + 1)|0; - $46 = $45&65535; - $47 = HEAP32[$p>>2]|0; - $48 = (($47) + 4|0); - HEAP16[$48>>1] = $46; - $49 = HEAP32[$p>>2]|0; - HEAP32[$0>>2] = $49; - $50 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($50|0); -} -function _sqlite3VdbeRecordUnpack($pKeyInfo,$nKey,$pKey,$p) { - $pKeyInfo = $pKeyInfo|0; - $nKey = $nKey|0; - $pKey = $pKey|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; - var $aKey = 0, $d = 0, $idx = 0, $pMem = 0, $serial_type = 0, $szHdr = 0, $u = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $aKey = sp + 20|0; - $d = sp + 16|0; - $idx = sp + 12|0; - $u = sp + 40|0; - $szHdr = sp + 8|0; - $pMem = sp + 4|0; - $serial_type = sp; - HEAP32[$0>>2] = $pKeyInfo; - HEAP32[$1>>2] = $nKey; - HEAP32[$2>>2] = $pKey; - HEAP32[$3>>2] = $p; - $4 = HEAP32[$2>>2]|0; - HEAP32[$aKey>>2] = $4; - $5 = HEAP32[$3>>2]|0; - $6 = (($5) + 8|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pMem>>2] = $7; - $8 = HEAP32[$3>>2]|0; - $9 = (($8) + 6|0); - HEAP8[$9>>0] = 0; - $10 = HEAP32[$aKey>>2]|0; - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = ($12|0)<(128); - $14 = HEAP32[$aKey>>2]|0; - if ($13) { - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - HEAP32[$szHdr>>2] = $16; - $20 = 1; - } else { - $17 = (_sqlite3GetVarint32($14,$szHdr)|0); - $18 = $17&255; - $20 = $18; - } - $19 = $20&255; - $21 = $19&255; - HEAP32[$idx>>2] = $21; - $22 = HEAP32[$szHdr>>2]|0; - HEAP32[$d>>2] = $22; - HEAP16[$u>>1] = 0; - while(1) { - $23 = HEAP32[$idx>>2]|0; - $24 = HEAP32[$szHdr>>2]|0; - $25 = ($23>>>0)<($24>>>0); - if (!($25)) { - label = 12; - break; - } - $26 = HEAP16[$u>>1]|0; - $27 = $26&65535; - $28 = HEAP32[$3>>2]|0; - $29 = (($28) + 4|0); - $30 = HEAP16[$29>>1]|0; - $31 = $30&65535; - $32 = ($27|0)<($31|0); - if (!($32)) { - label = 12; - break; - } - $33 = HEAP32[$d>>2]|0; - $34 = HEAP32[$1>>2]|0; - $35 = ($33|0)<=($34|0); - if (!($35)) { - label = 12; - break; - } - $36 = HEAP32[$idx>>2]|0; - $37 = HEAP32[$aKey>>2]|0; - $38 = (($37) + ($36)|0); - $39 = HEAP8[$38>>0]|0; - $40 = $39&255; - $41 = ($40|0)<(128); - $42 = HEAP32[$idx>>2]|0; - $43 = HEAP32[$aKey>>2]|0; - $44 = (($43) + ($42)|0); - if ($41) { - $45 = HEAP8[$44>>0]|0; - $46 = $45&255; - HEAP32[$serial_type>>2] = $46; - $50 = 1; - } else { - $47 = (_sqlite3GetVarint32($44,$serial_type)|0); - $48 = $47&255; - $50 = $48; - } - $49 = $50&255; - $51 = $49&255; - $52 = HEAP32[$idx>>2]|0; - $53 = (($52) + ($51))|0; - HEAP32[$idx>>2] = $53; - $54 = HEAP32[$0>>2]|0; - $55 = (($54) + 4|0); - $56 = HEAP8[$55>>0]|0; - $57 = HEAP32[$pMem>>2]|0; - $58 = (($57) + 30|0); - HEAP8[$58>>0] = $56; - $59 = HEAP32[$0>>2]|0; - $60 = (($59) + 12|0); - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$pMem>>2]|0; - HEAP32[$62>>2] = $61; - $63 = HEAP32[$pMem>>2]|0; - $64 = (($63) + 36|0); - HEAP32[$64>>2] = 0; - $65 = HEAP32[$d>>2]|0; - $66 = HEAP32[$aKey>>2]|0; - $67 = (($66) + ($65)|0); - $68 = HEAP32[$serial_type>>2]|0; - $69 = HEAP32[$pMem>>2]|0; - $70 = (_sqlite3VdbeSerialGet($67,$68,$69)|0); - $71 = HEAP32[$d>>2]|0; - $72 = (($71) + ($70))|0; - HEAP32[$d>>2] = $72; - $73 = HEAP32[$pMem>>2]|0; - $74 = (($73) + 40|0); - HEAP32[$pMem>>2] = $74; - $75 = HEAP16[$u>>1]|0; - $76 = (($75) + 1)<<16>>16; - HEAP16[$u>>1] = $76; - } - if ((label|0) == 12) { - $77 = HEAP16[$u>>1]|0; - $78 = HEAP32[$3>>2]|0; - $79 = (($78) + 4|0); - HEAP16[$79>>1] = $77; - STACKTOP = sp;return; - } -} -function _sqlite3BtreeMovetoUnpacked($pCur,$pIdxKey,$0,$1,$biasRight,$pRes) { - $pCur = $pCur|0; - $pIdxKey = $pIdxKey|0; - $0 = $0|0; - $1 = $1|0; - $biasRight = $biasRight|0; - $pRes = $pRes|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; - var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; - var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; - var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; - var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; - var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0; - var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0; - var $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0; - var $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0; - var $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0; - var $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0; - var $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0; - var $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0; - var $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0; - var $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0; - var $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0; - var $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0; - var $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0; - var $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0; - var $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0; - var $479 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; - var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $chldPg = 0; - var $idx = 0, $lwr = 0, $nCell = 0, $nCellKey = 0, $pCell = 0, $pCellBody = 0, $pCellKey = 0, $pPage = 0, $rc = 0, $upr = 0, $xRecordCompare = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $2 = sp + 80|0; - $3 = sp + 76|0; - $4 = sp + 72|0; - $5 = sp + 8|0; - $6 = sp + 68|0; - $7 = sp + 64|0; - $rc = sp + 60|0; - $xRecordCompare = sp + 56|0; - $lwr = sp + 52|0; - $upr = sp + 48|0; - $idx = sp + 44|0; - $c = sp + 40|0; - $chldPg = sp + 36|0; - $pPage = sp + 32|0; - $pCell = sp + 28|0; - $nCellKey = sp; - $nCell = sp + 24|0; - $pCellKey = sp + 20|0; - $pCellBody = sp + 16|0; - HEAP32[$3>>2] = $pCur; - HEAP32[$4>>2] = $pIdxKey; - $8 = $5; - $9 = $8; - HEAP32[$9>>2] = $0; - $10 = (($8) + 4)|0; - $11 = $10; - HEAP32[$11>>2] = $1; - HEAP32[$6>>2] = $biasRight; - HEAP32[$7>>2] = $pRes; - $12 = HEAP32[$3>>2]|0; - $13 = (($12) + 81|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14&255; - $16 = ($15|0)==(1); - if ($16) { - $17 = HEAP32[$3>>2]|0; - $18 = (($17) + 80|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = $20 & 2; - $22 = ($21|0)!=(0); - if ($22) { - $23 = HEAP32[$3>>2]|0; - $24 = (($23) + 128|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + 2|0); - $27 = HEAP8[$26>>0]|0; - $28 = $27&255; - $29 = ($28|0)!=(0); - if ($29) { - $30 = HEAP32[$3>>2]|0; - $31 = (($30) + 24|0); - $32 = $31; - $33 = $32; - $34 = HEAP32[$33>>2]|0; - $35 = (($32) + 4)|0; - $36 = $35; - $37 = HEAP32[$36>>2]|0; - $38 = $5; - $39 = $38; - $40 = HEAP32[$39>>2]|0; - $41 = (($38) + 4)|0; - $42 = $41; - $43 = HEAP32[$42>>2]|0; - $44 = ($34|0)==($40|0); - $45 = ($37|0)==($43|0); - $46 = $44 & $45; - if ($46) { - $47 = HEAP32[$7>>2]|0; - HEAP32[$47>>2] = 0; - HEAP32[$2>>2] = 0; - $479 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($479|0); - } - $48 = HEAP32[$3>>2]|0; - $49 = (($48) + 80|0); - $50 = HEAP8[$49>>0]|0; - $51 = $50&255; - $52 = $51 & 8; - $53 = ($52|0)!=(0); - if ($53) { - $54 = HEAP32[$3>>2]|0; - $55 = (($54) + 24|0); - $56 = $55; - $57 = $56; - $58 = HEAP32[$57>>2]|0; - $59 = (($56) + 4)|0; - $60 = $59; - $61 = HEAP32[$60>>2]|0; - $62 = $5; - $63 = $62; - $64 = HEAP32[$63>>2]|0; - $65 = (($62) + 4)|0; - $66 = $65; - $67 = HEAP32[$66>>2]|0; - $68 = ($61|0)<($67|0); - $69 = ($61|0)==($67|0); - $70 = ($58>>>0)<($64>>>0); - $71 = $69 & $70; - $72 = $68 | $71; - if ($72) { - $73 = HEAP32[$7>>2]|0; - HEAP32[$73>>2] = -1; - HEAP32[$2>>2] = 0; - $479 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($479|0); - } - } - } - } - } - $74 = HEAP32[$4>>2]|0; - $75 = ($74|0)!=(0|0); - if ($75) { - $76 = HEAP32[$4>>2]|0; - $77 = (_sqlite3VdbeFindCompare($76)|0); - HEAP32[$xRecordCompare>>2] = $77; - $78 = HEAP32[$4>>2]|0; - $79 = (($78) + 7|0); - HEAP8[$79>>0] = 0; - } else { - HEAP32[$xRecordCompare>>2] = 0; - } - $80 = HEAP32[$3>>2]|0; - $81 = (_moveToRoot($80)|0); - HEAP32[$rc>>2] = $81; - $82 = HEAP32[$rc>>2]|0; - $83 = ($82|0)!=(0); - if ($83) { - $84 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $84; - $479 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($479|0); - } - $85 = HEAP32[$3>>2]|0; - $86 = (($85) + 81|0); - $87 = HEAP8[$86>>0]|0; - $88 = $87&255; - $89 = ($88|0)==(0); - if ($89) { - $90 = HEAP32[$7>>2]|0; - HEAP32[$90>>2] = -1; - HEAP32[$2>>2] = 0; - $479 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($479|0); - } - L24: while(1) { - $91 = HEAP32[$3>>2]|0; - $92 = (($91) + 84|0); - $93 = HEAP16[$92>>1]|0; - $94 = $93 << 16 >> 16; - $95 = HEAP32[$3>>2]|0; - $96 = (($95) + 128|0); - $97 = (($96) + ($94<<2)|0); - $98 = HEAP32[$97>>2]|0; - HEAP32[$pPage>>2] = $98; - HEAP32[$lwr>>2] = 0; - $99 = HEAP32[$pPage>>2]|0; - $100 = (($99) + 16|0); - $101 = HEAP16[$100>>1]|0; - $102 = $101&65535; - $103 = (($102) - 1)|0; - HEAP32[$upr>>2] = $103; - $104 = HEAP32[$upr>>2]|0; - $105 = HEAP32[$6>>2]|0; - $106 = (1 - ($105))|0; - $107 = $104 >> $106; - HEAP32[$idx>>2] = $107; - $108 = HEAP32[$idx>>2]|0; - $109 = $108&65535; - $110 = HEAP32[$3>>2]|0; - $111 = (($110) + 84|0); - $112 = HEAP16[$111>>1]|0; - $113 = $112 << 16 >> 16; - $114 = HEAP32[$3>>2]|0; - $115 = (($114) + 86|0); - $116 = (($115) + ($113<<1)|0); - HEAP16[$116>>1] = $109; - $117 = HEAP32[$xRecordCompare>>2]|0; - $118 = ($117|0)==(0|0); - L26: do { - if ($118) { - while(1) { - $119 = HEAP32[$pPage>>2]|0; - $120 = (($119) + 56|0); - $121 = HEAP32[$120>>2]|0; - $122 = HEAP32[$pPage>>2]|0; - $123 = (($122) + 18|0); - $124 = HEAP16[$123>>1]|0; - $125 = $124&65535; - $126 = HEAP32[$idx>>2]|0; - $127 = $126<<1; - $128 = HEAP32[$pPage>>2]|0; - $129 = (($128) + 64|0); - $130 = HEAP32[$129>>2]|0; - $131 = (($130) + ($127)|0); - $132 = HEAP8[$131>>0]|0; - $133 = $132&255; - $134 = $133 << 8; - $135 = HEAP32[$idx>>2]|0; - $136 = $135<<1; - $137 = HEAP32[$pPage>>2]|0; - $138 = (($137) + 64|0); - $139 = HEAP32[$138>>2]|0; - $140 = (($139) + ($136)|0); - $141 = (($140) + 1|0); - $142 = HEAP8[$141>>0]|0; - $143 = $142&255; - $144 = $134 | $143; - $145 = $125 & $144; - $146 = (($121) + ($145)|0); - $147 = HEAP32[$pPage>>2]|0; - $148 = (($147) + 6|0); - $149 = HEAP8[$148>>0]|0; - $150 = $149&255; - $151 = (($146) + ($150)|0); - HEAP32[$pCell>>2] = $151; - $152 = HEAP32[$pPage>>2]|0; - $153 = (($152) + 4|0); - $154 = HEAP8[$153>>0]|0; - $155 = ($154<<24>>24)!=(0); - L29: do { - if ($155) { - while(1) { - $156 = HEAP32[$pCell>>2]|0; - $157 = (($156) + 1|0); - HEAP32[$pCell>>2] = $157; - $158 = HEAP8[$156>>0]|0; - $159 = $158&255; - $160 = (128)<=($159|0); - if (!($160)) { - break L29; - } - $161 = HEAP32[$pCell>>2]|0; - $162 = HEAP32[$pPage>>2]|0; - $163 = (($162) + 60|0); - $164 = HEAP32[$163>>2]|0; - $165 = ($161>>>0)>=($164>>>0); - if ($165) { - label = 20; - break L24; - } - } - } - } while(0); - $167 = HEAP32[$pCell>>2]|0; - (_sqlite3GetVarint($167,$nCellKey)|0); - $168 = $nCellKey; - $169 = $168; - $170 = HEAP32[$169>>2]|0; - $171 = (($168) + 4)|0; - $172 = $171; - $173 = HEAP32[$172>>2]|0; - $174 = $5; - $175 = $174; - $176 = HEAP32[$175>>2]|0; - $177 = (($174) + 4)|0; - $178 = $177; - $179 = HEAP32[$178>>2]|0; - $180 = ($173|0)<($179|0); - $181 = ($173|0)==($179|0); - $182 = ($170>>>0)<($176>>>0); - $183 = $181 & $182; - $184 = $180 | $183; - if ($184) { - $185 = HEAP32[$idx>>2]|0; - $186 = (($185) + 1)|0; - HEAP32[$lwr>>2] = $186; - $187 = HEAP32[$lwr>>2]|0; - $188 = HEAP32[$upr>>2]|0; - $189 = ($187|0)>($188|0); - if ($189) { - label = 23; - break; - } - } else { - $190 = $nCellKey; - $191 = $190; - $192 = HEAP32[$191>>2]|0; - $193 = (($190) + 4)|0; - $194 = $193; - $195 = HEAP32[$194>>2]|0; - $196 = $5; - $197 = $196; - $198 = HEAP32[$197>>2]|0; - $199 = (($196) + 4)|0; - $200 = $199; - $201 = HEAP32[$200>>2]|0; - $202 = ($195|0)>($201|0); - $203 = ($195|0)==($201|0); - $204 = ($192>>>0)>($198>>>0); - $205 = $203 & $204; - $206 = $202 | $205; - if (!($206)) { - label = 27; - break; - } - $207 = HEAP32[$idx>>2]|0; - $208 = (($207) - 1)|0; - HEAP32[$upr>>2] = $208; - $209 = HEAP32[$lwr>>2]|0; - $210 = HEAP32[$upr>>2]|0; - $211 = ($209|0)>($210|0); - if ($211) { - label = 26; - break; - } - } - $245 = HEAP32[$lwr>>2]|0; - $246 = HEAP32[$upr>>2]|0; - $247 = (($245) + ($246))|0; - $248 = $247 >> 1; - HEAP32[$idx>>2] = $248; - } - if ((label|0) == 23) { - label = 0; - HEAP32[$c>>2] = -1; - label = 49; - break; - } - else if ((label|0) == 26) { - label = 0; - HEAP32[$c>>2] = 1; - label = 49; - break; - } - else if ((label|0) == 27) { - label = 0; - $212 = HEAP32[$3>>2]|0; - $213 = (($212) + 80|0); - $214 = HEAP8[$213>>0]|0; - $215 = $214&255; - $216 = $215 | 2; - $217 = $216&255; - HEAP8[$213>>0] = $217; - $218 = $nCellKey; - $219 = $218; - $220 = HEAP32[$219>>2]|0; - $221 = (($218) + 4)|0; - $222 = $221; - $223 = HEAP32[$222>>2]|0; - $224 = HEAP32[$3>>2]|0; - $225 = (($224) + 24|0); - $226 = $225; - $227 = $226; - HEAP32[$227>>2] = $220; - $228 = (($226) + 4)|0; - $229 = $228; - HEAP32[$229>>2] = $223; - $230 = HEAP32[$idx>>2]|0; - $231 = $230&65535; - $232 = HEAP32[$3>>2]|0; - $233 = (($232) + 84|0); - $234 = HEAP16[$233>>1]|0; - $235 = $234 << 16 >> 16; - $236 = HEAP32[$3>>2]|0; - $237 = (($236) + 86|0); - $238 = (($237) + ($235<<1)|0); - HEAP16[$238>>1] = $231; - $239 = HEAP32[$pPage>>2]|0; - $240 = (($239) + 3|0); - $241 = HEAP8[$240>>0]|0; - $242 = ($241<<24>>24)!=(0); - if ($242) { - label = 29; - break L24; - } - $243 = HEAP32[$idx>>2]|0; - HEAP32[$lwr>>2] = $243; - break; - } - } else { - while(1) { - $249 = HEAP32[$pPage>>2]|0; - $250 = (($249) + 56|0); - $251 = HEAP32[$250>>2]|0; - $252 = HEAP32[$pPage>>2]|0; - $253 = (($252) + 18|0); - $254 = HEAP16[$253>>1]|0; - $255 = $254&65535; - $256 = HEAP32[$idx>>2]|0; - $257 = $256<<1; - $258 = HEAP32[$pPage>>2]|0; - $259 = (($258) + 64|0); - $260 = HEAP32[$259>>2]|0; - $261 = (($260) + ($257)|0); - $262 = HEAP8[$261>>0]|0; - $263 = $262&255; - $264 = $263 << 8; - $265 = HEAP32[$idx>>2]|0; - $266 = $265<<1; - $267 = HEAP32[$pPage>>2]|0; - $268 = (($267) + 64|0); - $269 = HEAP32[$268>>2]|0; - $270 = (($269) + ($266)|0); - $271 = (($270) + 1|0); - $272 = HEAP8[$271>>0]|0; - $273 = $272&255; - $274 = $264 | $273; - $275 = $255 & $274; - $276 = (($251) + ($275)|0); - $277 = HEAP32[$pPage>>2]|0; - $278 = (($277) + 6|0); - $279 = HEAP8[$278>>0]|0; - $280 = $279&255; - $281 = (($276) + ($280)|0); - HEAP32[$pCell>>2] = $281; - $282 = HEAP32[$pCell>>2]|0; - $283 = HEAP8[$282>>0]|0; - $284 = $283&255; - HEAP32[$nCell>>2] = $284; - $285 = HEAP32[$nCell>>2]|0; - $286 = HEAP32[$pPage>>2]|0; - $287 = (($286) + 7|0); - $288 = HEAP8[$287>>0]|0; - $289 = $288&255; - $290 = ($285|0)<=($289|0); - do { - if ($290) { - $291 = HEAP32[$xRecordCompare>>2]|0; - $292 = HEAP32[$nCell>>2]|0; - $293 = HEAP32[$pCell>>2]|0; - $294 = (($293) + 1|0); - $295 = HEAP32[$4>>2]|0; - $296 = (FUNCTION_TABLE_iiiii[$291 & 15]($292,$294,$295,0)|0); - HEAP32[$c>>2] = $296; - } else { - $297 = HEAP32[$pCell>>2]|0; - $298 = (($297) + 1|0); - $299 = HEAP8[$298>>0]|0; - $300 = $299&255; - $301 = $300 & 128; - $302 = ($301|0)!=(0); - if (!($302)) { - $303 = HEAP32[$nCell>>2]|0; - $304 = $303 & 127; - $305 = $304 << 7; - $306 = HEAP32[$pCell>>2]|0; - $307 = (($306) + 1|0); - $308 = HEAP8[$307>>0]|0; - $309 = $308&255; - $310 = (($305) + ($309))|0; - HEAP32[$nCell>>2] = $310; - $311 = HEAP32[$pPage>>2]|0; - $312 = (($311) + 8|0); - $313 = HEAP16[$312>>1]|0; - $314 = $313&65535; - $315 = ($310|0)<=($314|0); - if ($315) { - $316 = HEAP32[$xRecordCompare>>2]|0; - $317 = HEAP32[$nCell>>2]|0; - $318 = HEAP32[$pCell>>2]|0; - $319 = (($318) + 2|0); - $320 = HEAP32[$4>>2]|0; - $321 = (FUNCTION_TABLE_iiiii[$316 & 15]($317,$319,$320,0)|0); - HEAP32[$c>>2] = $321; - break; - } - } - $322 = HEAP32[$pCell>>2]|0; - $323 = HEAP32[$pPage>>2]|0; - $324 = (($323) + 6|0); - $325 = HEAP8[$324>>0]|0; - $326 = $325&255; - $327 = (0 - ($326))|0; - $328 = (($322) + ($327)|0); - HEAP32[$pCellBody>>2] = $328; - $329 = HEAP32[$pPage>>2]|0; - $330 = HEAP32[$pCellBody>>2]|0; - $331 = HEAP32[$3>>2]|0; - $332 = (($331) + 24|0); - _btreeParseCellPtr($329,$330,$332); - $333 = HEAP32[$3>>2]|0; - $334 = (($333) + 24|0); - $335 = $334; - $336 = $335; - $337 = HEAP32[$336>>2]|0; - $338 = (($335) + 4)|0; - $339 = $338; - $340 = HEAP32[$339>>2]|0; - HEAP32[$nCell>>2] = $337; - $341 = HEAP32[$nCell>>2]|0; - $342 = (_sqlite3Malloc($341)|0); - HEAP32[$pCellKey>>2] = $342; - $343 = HEAP32[$pCellKey>>2]|0; - $344 = ($343|0)==(0|0); - if ($344) { - label = 37; - break L24; - } - $345 = HEAP32[$idx>>2]|0; - $346 = $345&65535; - $347 = HEAP32[$3>>2]|0; - $348 = (($347) + 84|0); - $349 = HEAP16[$348>>1]|0; - $350 = $349 << 16 >> 16; - $351 = HEAP32[$3>>2]|0; - $352 = (($351) + 86|0); - $353 = (($352) + ($350<<1)|0); - HEAP16[$353>>1] = $346; - $354 = HEAP32[$3>>2]|0; - $355 = HEAP32[$nCell>>2]|0; - $356 = HEAP32[$pCellKey>>2]|0; - $357 = (_accessPayload($354,0,$355,$356,2)|0); - HEAP32[$rc>>2] = $357; - $358 = HEAP32[$rc>>2]|0; - $359 = ($358|0)!=(0); - if ($359) { - label = 39; - break L24; - } - $361 = HEAP32[$xRecordCompare>>2]|0; - $362 = HEAP32[$nCell>>2]|0; - $363 = HEAP32[$pCellKey>>2]|0; - $364 = HEAP32[$4>>2]|0; - $365 = (FUNCTION_TABLE_iiiii[$361 & 15]($362,$363,$364,0)|0); - HEAP32[$c>>2] = $365; - $366 = HEAP32[$pCellKey>>2]|0; - _sqlite3_free($366); - } - } while(0); - $367 = HEAP32[$c>>2]|0; - $368 = ($367|0)<(0); - if ($368) { - $369 = HEAP32[$idx>>2]|0; - $370 = (($369) + 1)|0; - HEAP32[$lwr>>2] = $370; - } else { - $371 = HEAP32[$c>>2]|0; - $372 = ($371|0)>(0); - if (!($372)) { - label = 45; - break L24; - } - $373 = HEAP32[$idx>>2]|0; - $374 = (($373) - 1)|0; - HEAP32[$upr>>2] = $374; - } - $389 = HEAP32[$lwr>>2]|0; - $390 = HEAP32[$upr>>2]|0; - $391 = ($389|0)>($390|0); - if ($391) { - label = 49; - break L26; - } - $392 = HEAP32[$lwr>>2]|0; - $393 = HEAP32[$upr>>2]|0; - $394 = (($392) + ($393))|0; - $395 = $394 >> 1; - HEAP32[$idx>>2] = $395; - } - } - } while(0); - if ((label|0) == 49) { - label = 0; - $396 = HEAP32[$pPage>>2]|0; - $397 = (($396) + 3|0); - $398 = HEAP8[$397>>0]|0; - $399 = ($398<<24>>24)!=(0); - if ($399) { - label = 50; - break; - } - } - $411 = HEAP32[$lwr>>2]|0; - $412 = HEAP32[$pPage>>2]|0; - $413 = (($412) + 16|0); - $414 = HEAP16[$413>>1]|0; - $415 = $414&65535; - $416 = ($411|0)>=($415|0); - $417 = HEAP32[$pPage>>2]|0; - if ($416) { - $418 = (($417) + 5|0); - $419 = HEAP8[$418>>0]|0; - $420 = $419&255; - $421 = (($420) + 8)|0; - $422 = HEAP32[$pPage>>2]|0; - $423 = (($422) + 56|0); - $424 = HEAP32[$423>>2]|0; - $425 = (($424) + ($421)|0); - $426 = (_sqlite3Get4byte($425)|0); - HEAP32[$chldPg>>2] = $426; - } else { - $427 = (($417) + 56|0); - $428 = HEAP32[$427>>2]|0; - $429 = HEAP32[$pPage>>2]|0; - $430 = (($429) + 18|0); - $431 = HEAP16[$430>>1]|0; - $432 = $431&65535; - $433 = HEAP32[$lwr>>2]|0; - $434 = $433<<1; - $435 = HEAP32[$pPage>>2]|0; - $436 = (($435) + 64|0); - $437 = HEAP32[$436>>2]|0; - $438 = (($437) + ($434)|0); - $439 = HEAP8[$438>>0]|0; - $440 = $439&255; - $441 = $440 << 8; - $442 = HEAP32[$lwr>>2]|0; - $443 = $442<<1; - $444 = HEAP32[$pPage>>2]|0; - $445 = (($444) + 64|0); - $446 = HEAP32[$445>>2]|0; - $447 = (($446) + ($443)|0); - $448 = (($447) + 1|0); - $449 = HEAP8[$448>>0]|0; - $450 = $449&255; - $451 = $441 | $450; - $452 = $432 & $451; - $453 = (($428) + ($452)|0); - $454 = (_sqlite3Get4byte($453)|0); - HEAP32[$chldPg>>2] = $454; - } - $455 = HEAP32[$lwr>>2]|0; - $456 = $455&65535; - $457 = HEAP32[$3>>2]|0; - $458 = (($457) + 84|0); - $459 = HEAP16[$458>>1]|0; - $460 = $459 << 16 >> 16; - $461 = HEAP32[$3>>2]|0; - $462 = (($461) + 86|0); - $463 = (($462) + ($460<<1)|0); - HEAP16[$463>>1] = $456; - $464 = HEAP32[$3>>2]|0; - $465 = HEAP32[$chldPg>>2]|0; - $466 = (_moveToChild($464,$465)|0); - HEAP32[$rc>>2] = $466; - $467 = HEAP32[$rc>>2]|0; - $468 = ($467|0)!=(0); - if ($468) { - break; - } - } - if ((label|0) == 20) { - $166 = (_sqlite3CorruptError(55807)|0); - HEAP32[$2>>2] = $166; - $479 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($479|0); - } - else if ((label|0) == 29) { - $244 = HEAP32[$7>>2]|0; - HEAP32[$244>>2] = 0; - HEAP32[$rc>>2] = 0; - } - else if ((label|0) == 37) { - HEAP32[$rc>>2] = 7; - } - else if ((label|0) == 39) { - $360 = HEAP32[$pCellKey>>2]|0; - _sqlite3_free($360); - } - else if ((label|0) == 45) { - $375 = HEAP32[$7>>2]|0; - HEAP32[$375>>2] = 0; - HEAP32[$rc>>2] = 0; - $376 = HEAP32[$idx>>2]|0; - $377 = $376&65535; - $378 = HEAP32[$3>>2]|0; - $379 = (($378) + 84|0); - $380 = HEAP16[$379>>1]|0; - $381 = $380 << 16 >> 16; - $382 = HEAP32[$3>>2]|0; - $383 = (($382) + 86|0); - $384 = (($383) + ($381<<1)|0); - HEAP16[$384>>1] = $377; - $385 = HEAP32[$4>>2]|0; - $386 = (($385) + 7|0); - $387 = HEAP8[$386>>0]|0; - $388 = ($387<<24>>24)!=(0); - if ($388) { - HEAP32[$rc>>2] = 11; - } - } - else if ((label|0) == 50) { - $400 = HEAP32[$idx>>2]|0; - $401 = $400&65535; - $402 = HEAP32[$3>>2]|0; - $403 = (($402) + 84|0); - $404 = HEAP16[$403>>1]|0; - $405 = $404 << 16 >> 16; - $406 = HEAP32[$3>>2]|0; - $407 = (($406) + 86|0); - $408 = (($407) + ($405<<1)|0); - HEAP16[$408>>1] = $401; - $409 = HEAP32[$c>>2]|0; - $410 = HEAP32[$7>>2]|0; - HEAP32[$410>>2] = $409; - HEAP32[$rc>>2] = 0; - } - $469 = HEAP32[$3>>2]|0; - $470 = (($469) + 24|0); - $471 = (($470) + 26|0); - HEAP16[$471>>1] = 0; - $472 = HEAP32[$3>>2]|0; - $473 = (($472) + 80|0); - $474 = HEAP8[$473>>0]|0; - $475 = $474&255; - $476 = $475 & -7; - $477 = $476&255; - HEAP8[$473>>0] = $477; - $478 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $478; - $479 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($479|0); -} -function _sqlite3VdbeFindCompare($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $flags = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $flags = sp; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 6|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5&65535; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = (($8) + 8|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10&65535; - $12 = (($6) + ($11))|0; - $13 = ($12|0)<=(13); - if ($13) { - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 8|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + 28|0); - $18 = HEAP16[$17>>1]|0; - $19 = $18&65535; - HEAP32[$flags>>2] = $19; - $20 = HEAP32[$1>>2]|0; - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + 16|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP8[$23>>0]|0; - $25 = ($24<<24>>24)!=(0); - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 12|0); - if ($25) { - HEAP32[$27>>2] = 1; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 16|0); - HEAP32[$29>>2] = -1; - } else { - HEAP32[$27>>2] = -1; - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 16|0); - HEAP32[$31>>2] = 1; - } - $32 = HEAP32[$flags>>2]|0; - $33 = $32 & 4; - $34 = ($33|0)!=(0); - if ($34) { - HEAP32[$0>>2] = 8; - $43 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($43|0); - } - $35 = HEAP32[$flags>>2]|0; - $36 = $35 & 25; - $37 = ($36|0)==(0); - if ($37) { - $38 = HEAP32[$1>>2]|0; - $39 = HEAP32[$38>>2]|0; - $40 = (($39) + 20|0); - $41 = HEAP32[$40>>2]|0; - $42 = ($41|0)==(0|0); - if ($42) { - HEAP32[$0>>2] = 9; - $43 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($43|0); - } - } - } - HEAP32[$0>>2] = 10; - $43 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($43|0); -} -function _moveToRoot($pCur) { - $pCur = $pCur|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; - var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; - var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; - var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; - var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; - var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $pRoot = 0, $rc = 0, $subpage = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $pRoot = sp + 8|0; - $rc = sp + 4|0; - $subpage = sp; - HEAP32[$1>>2] = $pCur; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 81|0); - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - $6 = ($5|0)>=(3); - do { - if ($6) { - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 81|0); - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - $11 = ($10|0)==(4); - $12 = HEAP32[$1>>2]|0; - if (!($11)) { - _sqlite3BtreeClearCursor($12); - break; - } - $13 = (($12) + 76|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$0>>2] = $14; - $124 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($124|0); - } - } while(0); - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 84|0); - $17 = HEAP16[$16>>1]|0; - $18 = $17 << 16 >> 16; - $19 = ($18|0)>=(0); - L8: do { - if ($19) { - while(1) { - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 84|0); - $22 = HEAP16[$21>>1]|0; - $23 = ($22<<16>>16)!=(0); - if (!($23)) { - break L8; - } - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 84|0); - $26 = HEAP16[$25>>1]|0; - $27 = (($26) + -1)<<16>>16; - HEAP16[$25>>1] = $27; - $28 = $26 << 16 >> 16; - $29 = HEAP32[$1>>2]|0; - $30 = (($29) + 128|0); - $31 = (($30) + ($28<<2)|0); - $32 = HEAP32[$31>>2]|0; - _releasePage($32); - } - } else { - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 68|0); - $35 = HEAP32[$34>>2]|0; - $36 = ($35|0)==(0); - $37 = HEAP32[$1>>2]|0; - if ($36) { - $38 = (($37) + 81|0); - HEAP8[$38>>0] = 0; - HEAP32[$0>>2] = 0; - $124 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($124|0); - } - $39 = HEAP32[$37>>2]|0; - $40 = (($39) + 4|0); - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$1>>2]|0; - $43 = (($42) + 68|0); - $44 = HEAP32[$43>>2]|0; - $45 = HEAP32[$1>>2]|0; - $46 = (($45) + 128|0); - $47 = HEAP32[$1>>2]|0; - $48 = (($47) + 80|0); - $49 = HEAP8[$48>>0]|0; - $50 = $49&255; - $51 = $50 & 1; - $52 = ($51|0)==(0); - $53 = $52 ? 2 : 0; - $54 = (_getAndInitPage($41,$44,$46,$53)|0); - HEAP32[$rc>>2] = $54; - $55 = HEAP32[$rc>>2]|0; - $56 = ($55|0)!=(0); - $57 = HEAP32[$1>>2]|0; - if (!($56)) { - $60 = (($57) + 84|0); - HEAP16[$60>>1] = 0; - break; - } - $58 = (($57) + 81|0); - HEAP8[$58>>0] = 0; - $59 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $59; - $124 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($124|0); - } - } while(0); - $61 = HEAP32[$1>>2]|0; - $62 = (($61) + 128|0); - $63 = HEAP32[$62>>2]|0; - HEAP32[$pRoot>>2] = $63; - $64 = HEAP32[$pRoot>>2]|0; - $65 = HEAP8[$64>>0]|0; - $66 = $65&255; - $67 = ($66|0)==(0); - if (!($67)) { - $68 = HEAP32[$1>>2]|0; - $69 = (($68) + 16|0); - $70 = HEAP32[$69>>2]|0; - $71 = ($70|0)==(0|0); - $72 = $71&1; - $73 = HEAP32[$pRoot>>2]|0; - $74 = (($73) + 2|0); - $75 = HEAP8[$74>>0]|0; - $76 = $75&255; - $77 = ($72|0)!=($76|0); - if (!($77)) { - $79 = HEAP32[$1>>2]|0; - $80 = (($79) + 86|0); - HEAP16[$80>>1] = 0; - $81 = HEAP32[$1>>2]|0; - $82 = (($81) + 24|0); - $83 = (($82) + 26|0); - HEAP16[$83>>1] = 0; - $84 = HEAP32[$1>>2]|0; - $85 = (($84) + 80|0); - $86 = HEAP8[$85>>0]|0; - $87 = $86&255; - $88 = $87 & -15; - $89 = $88&255; - HEAP8[$85>>0] = $89; - $90 = HEAP32[$pRoot>>2]|0; - $91 = (($90) + 16|0); - $92 = HEAP16[$91>>1]|0; - $93 = $92&65535; - $94 = ($93|0)>(0); - do { - if ($94) { - $95 = HEAP32[$1>>2]|0; - $96 = (($95) + 81|0); - HEAP8[$96>>0] = 1; - } else { - $97 = HEAP32[$pRoot>>2]|0; - $98 = (($97) + 3|0); - $99 = HEAP8[$98>>0]|0; - $100 = ($99<<24>>24)!=(0); - if ($100) { - $121 = HEAP32[$1>>2]|0; - $122 = (($121) + 81|0); - HEAP8[$122>>0] = 0; - break; - } - $101 = HEAP32[$pRoot>>2]|0; - $102 = (($101) + 72|0); - $103 = HEAP32[$102>>2]|0; - $104 = ($103|0)!=(1); - if (!($104)) { - $106 = HEAP32[$pRoot>>2]|0; - $107 = (($106) + 5|0); - $108 = HEAP8[$107>>0]|0; - $109 = $108&255; - $110 = (($109) + 8)|0; - $111 = HEAP32[$pRoot>>2]|0; - $112 = (($111) + 56|0); - $113 = HEAP32[$112>>2]|0; - $114 = (($113) + ($110)|0); - $115 = (_sqlite3Get4byte($114)|0); - HEAP32[$subpage>>2] = $115; - $116 = HEAP32[$1>>2]|0; - $117 = (($116) + 81|0); - HEAP8[$117>>0] = 1; - $118 = HEAP32[$1>>2]|0; - $119 = HEAP32[$subpage>>2]|0; - $120 = (_moveToChild($118,$119)|0); - HEAP32[$rc>>2] = $120; - break; - } - $105 = (_sqlite3CorruptError(55570)|0); - HEAP32[$0>>2] = $105; - $124 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($124|0); - } - } while(0); - $123 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $123; - $124 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($124|0); - } - } - $78 = (_sqlite3CorruptError(55559)|0); - HEAP32[$0>>2] = $78; - $124 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($124|0); -} -function _sqlite3GetVarint($p,$v) { - $p = $p|0; - $v = $v|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; - var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; - var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; - var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; - var $97 = 0, $98 = 0, $99 = 0, $a = 0, $b = 0, $s = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $a = sp + 8|0; - $b = sp + 4|0; - $s = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $v; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - HEAP32[$a>>2] = $5; - $6 = HEAP32[$a>>2]|0; - $7 = $6 & 128; - $8 = ($7|0)!=(0); - if (!($8)) { - $9 = HEAP32[$a>>2]|0; - $10 = HEAP32[$2>>2]|0; - $11 = $10; - $12 = $11; - HEAP32[$12>>2] = $9; - $13 = (($11) + 4)|0; - $14 = $13; - HEAP32[$14>>2] = 0; - HEAP8[$0>>0] = 1; - $242 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($242|0); - } - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 1|0); - HEAP32[$1>>2] = $16; - $17 = HEAP32[$1>>2]|0; - $18 = HEAP8[$17>>0]|0; - $19 = $18&255; - HEAP32[$b>>2] = $19; - $20 = HEAP32[$b>>2]|0; - $21 = $20 & 128; - $22 = ($21|0)!=(0); - if (!($22)) { - $23 = HEAP32[$a>>2]|0; - $24 = $23 & 127; - HEAP32[$a>>2] = $24; - $25 = HEAP32[$a>>2]|0; - $26 = $25 << 7; - HEAP32[$a>>2] = $26; - $27 = HEAP32[$b>>2]|0; - $28 = HEAP32[$a>>2]|0; - $29 = $28 | $27; - HEAP32[$a>>2] = $29; - $30 = HEAP32[$a>>2]|0; - $31 = HEAP32[$2>>2]|0; - $32 = $31; - $33 = $32; - HEAP32[$33>>2] = $30; - $34 = (($32) + 4)|0; - $35 = $34; - HEAP32[$35>>2] = 0; - HEAP8[$0>>0] = 2; - $242 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($242|0); - } - $36 = HEAP32[$1>>2]|0; - $37 = (($36) + 1|0); - HEAP32[$1>>2] = $37; - $38 = HEAP32[$a>>2]|0; - $39 = $38 << 14; - HEAP32[$a>>2] = $39; - $40 = HEAP32[$1>>2]|0; - $41 = HEAP8[$40>>0]|0; - $42 = $41&255; - $43 = HEAP32[$a>>2]|0; - $44 = $43 | $42; - HEAP32[$a>>2] = $44; - $45 = HEAP32[$a>>2]|0; - $46 = $45 & 128; - $47 = ($46|0)!=(0); - $48 = HEAP32[$a>>2]|0; - $49 = $48 & 2080895; - HEAP32[$a>>2] = $49; - if (!($47)) { - $50 = HEAP32[$b>>2]|0; - $51 = $50 & 127; - HEAP32[$b>>2] = $51; - $52 = HEAP32[$b>>2]|0; - $53 = $52 << 7; - HEAP32[$b>>2] = $53; - $54 = HEAP32[$b>>2]|0; - $55 = HEAP32[$a>>2]|0; - $56 = $55 | $54; - HEAP32[$a>>2] = $56; - $57 = HEAP32[$a>>2]|0; - $58 = HEAP32[$2>>2]|0; - $59 = $58; - $60 = $59; - HEAP32[$60>>2] = $57; - $61 = (($59) + 4)|0; - $62 = $61; - HEAP32[$62>>2] = 0; - HEAP8[$0>>0] = 3; - $242 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($242|0); - } - $63 = HEAP32[$1>>2]|0; - $64 = (($63) + 1|0); - HEAP32[$1>>2] = $64; - $65 = HEAP32[$b>>2]|0; - $66 = $65 << 14; - HEAP32[$b>>2] = $66; - $67 = HEAP32[$1>>2]|0; - $68 = HEAP8[$67>>0]|0; - $69 = $68&255; - $70 = HEAP32[$b>>2]|0; - $71 = $70 | $69; - HEAP32[$b>>2] = $71; - $72 = HEAP32[$b>>2]|0; - $73 = $72 & 128; - $74 = ($73|0)!=(0); - $75 = HEAP32[$b>>2]|0; - $76 = $75 & 2080895; - HEAP32[$b>>2] = $76; - $77 = HEAP32[$a>>2]|0; - if (!($74)) { - $78 = $77 << 7; - HEAP32[$a>>2] = $78; - $79 = HEAP32[$b>>2]|0; - $80 = HEAP32[$a>>2]|0; - $81 = $80 | $79; - HEAP32[$a>>2] = $81; - $82 = HEAP32[$a>>2]|0; - $83 = HEAP32[$2>>2]|0; - $84 = $83; - $85 = $84; - HEAP32[$85>>2] = $82; - $86 = (($84) + 4)|0; - $87 = $86; - HEAP32[$87>>2] = 0; - HEAP8[$0>>0] = 4; - $242 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($242|0); - } - HEAP32[$s>>2] = $77; - $88 = HEAP32[$1>>2]|0; - $89 = (($88) + 1|0); - HEAP32[$1>>2] = $89; - $90 = HEAP32[$a>>2]|0; - $91 = $90 << 14; - HEAP32[$a>>2] = $91; - $92 = HEAP32[$1>>2]|0; - $93 = HEAP8[$92>>0]|0; - $94 = $93&255; - $95 = HEAP32[$a>>2]|0; - $96 = $95 | $94; - HEAP32[$a>>2] = $96; - $97 = HEAP32[$a>>2]|0; - $98 = $97 & 128; - $99 = ($98|0)!=(0); - if (!($99)) { - $100 = HEAP32[$b>>2]|0; - $101 = $100 << 7; - HEAP32[$b>>2] = $101; - $102 = HEAP32[$b>>2]|0; - $103 = HEAP32[$a>>2]|0; - $104 = $103 | $102; - HEAP32[$a>>2] = $104; - $105 = HEAP32[$s>>2]|0; - $106 = $105 >>> 18; - HEAP32[$s>>2] = $106; - $107 = HEAP32[$s>>2]|0; - $108 = HEAP32[$a>>2]|0; - $109 = HEAP32[$2>>2]|0; - $110 = $109; - $111 = $110; - HEAP32[$111>>2] = $108; - $112 = (($110) + 4)|0; - $113 = $112; - HEAP32[$113>>2] = $107; - HEAP8[$0>>0] = 5; - $242 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($242|0); - } - $114 = HEAP32[$s>>2]|0; - $115 = $114 << 7; - HEAP32[$s>>2] = $115; - $116 = HEAP32[$b>>2]|0; - $117 = HEAP32[$s>>2]|0; - $118 = $117 | $116; - HEAP32[$s>>2] = $118; - $119 = HEAP32[$1>>2]|0; - $120 = (($119) + 1|0); - HEAP32[$1>>2] = $120; - $121 = HEAP32[$b>>2]|0; - $122 = $121 << 14; - HEAP32[$b>>2] = $122; - $123 = HEAP32[$1>>2]|0; - $124 = HEAP8[$123>>0]|0; - $125 = $124&255; - $126 = HEAP32[$b>>2]|0; - $127 = $126 | $125; - HEAP32[$b>>2] = $127; - $128 = HEAP32[$b>>2]|0; - $129 = $128 & 128; - $130 = ($129|0)!=(0); - if (!($130)) { - $131 = HEAP32[$a>>2]|0; - $132 = $131 & 2080895; - HEAP32[$a>>2] = $132; - $133 = HEAP32[$a>>2]|0; - $134 = $133 << 7; - HEAP32[$a>>2] = $134; - $135 = HEAP32[$b>>2]|0; - $136 = HEAP32[$a>>2]|0; - $137 = $136 | $135; - HEAP32[$a>>2] = $137; - $138 = HEAP32[$s>>2]|0; - $139 = $138 >>> 18; - HEAP32[$s>>2] = $139; - $140 = HEAP32[$s>>2]|0; - $141 = HEAP32[$a>>2]|0; - $142 = HEAP32[$2>>2]|0; - $143 = $142; - $144 = $143; - HEAP32[$144>>2] = $141; - $145 = (($143) + 4)|0; - $146 = $145; - HEAP32[$146>>2] = $140; - HEAP8[$0>>0] = 6; - $242 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($242|0); - } - $147 = HEAP32[$1>>2]|0; - $148 = (($147) + 1|0); - HEAP32[$1>>2] = $148; - $149 = HEAP32[$a>>2]|0; - $150 = $149 << 14; - HEAP32[$a>>2] = $150; - $151 = HEAP32[$1>>2]|0; - $152 = HEAP8[$151>>0]|0; - $153 = $152&255; - $154 = HEAP32[$a>>2]|0; - $155 = $154 | $153; - HEAP32[$a>>2] = $155; - $156 = HEAP32[$a>>2]|0; - $157 = $156 & 128; - $158 = ($157|0)!=(0); - $159 = HEAP32[$a>>2]|0; - if (!($158)) { - $160 = $159 & -266354561; - HEAP32[$a>>2] = $160; - $161 = HEAP32[$b>>2]|0; - $162 = $161 & 2080895; - HEAP32[$b>>2] = $162; - $163 = HEAP32[$b>>2]|0; - $164 = $163 << 7; - HEAP32[$b>>2] = $164; - $165 = HEAP32[$b>>2]|0; - $166 = HEAP32[$a>>2]|0; - $167 = $166 | $165; - HEAP32[$a>>2] = $167; - $168 = HEAP32[$s>>2]|0; - $169 = $168 >>> 11; - HEAP32[$s>>2] = $169; - $170 = HEAP32[$s>>2]|0; - $171 = HEAP32[$a>>2]|0; - $172 = HEAP32[$2>>2]|0; - $173 = $172; - $174 = $173; - HEAP32[$174>>2] = $171; - $175 = (($173) + 4)|0; - $176 = $175; - HEAP32[$176>>2] = $170; - HEAP8[$0>>0] = 7; - $242 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($242|0); - } - $177 = $159 & 2080895; - HEAP32[$a>>2] = $177; - $178 = HEAP32[$1>>2]|0; - $179 = (($178) + 1|0); - HEAP32[$1>>2] = $179; - $180 = HEAP32[$b>>2]|0; - $181 = $180 << 14; - HEAP32[$b>>2] = $181; - $182 = HEAP32[$1>>2]|0; - $183 = HEAP8[$182>>0]|0; - $184 = $183&255; - $185 = HEAP32[$b>>2]|0; - $186 = $185 | $184; - HEAP32[$b>>2] = $186; - $187 = HEAP32[$b>>2]|0; - $188 = $187 & 128; - $189 = ($188|0)!=(0); - if ($189) { - $206 = HEAP32[$1>>2]|0; - $207 = (($206) + 1|0); - HEAP32[$1>>2] = $207; - $208 = HEAP32[$a>>2]|0; - $209 = $208 << 15; - HEAP32[$a>>2] = $209; - $210 = HEAP32[$1>>2]|0; - $211 = HEAP8[$210>>0]|0; - $212 = $211&255; - $213 = HEAP32[$a>>2]|0; - $214 = $213 | $212; - HEAP32[$a>>2] = $214; - $215 = HEAP32[$b>>2]|0; - $216 = $215 & 2080895; - HEAP32[$b>>2] = $216; - $217 = HEAP32[$b>>2]|0; - $218 = $217 << 8; - HEAP32[$b>>2] = $218; - $219 = HEAP32[$b>>2]|0; - $220 = HEAP32[$a>>2]|0; - $221 = $220 | $219; - HEAP32[$a>>2] = $221; - $222 = HEAP32[$s>>2]|0; - $223 = $222 << 4; - HEAP32[$s>>2] = $223; - $224 = HEAP32[$1>>2]|0; - $225 = (($224) + -4|0); - $226 = HEAP8[$225>>0]|0; - $227 = $226&255; - HEAP32[$b>>2] = $227; - $228 = HEAP32[$b>>2]|0; - $229 = $228 & 127; - HEAP32[$b>>2] = $229; - $230 = HEAP32[$b>>2]|0; - $231 = $230 >>> 3; - HEAP32[$b>>2] = $231; - $232 = HEAP32[$b>>2]|0; - $233 = HEAP32[$s>>2]|0; - $234 = $233 | $232; - HEAP32[$s>>2] = $234; - $235 = HEAP32[$s>>2]|0; - $236 = HEAP32[$a>>2]|0; - $237 = HEAP32[$2>>2]|0; - $238 = $237; - $239 = $238; - HEAP32[$239>>2] = $236; - $240 = (($238) + 4)|0; - $241 = $240; - HEAP32[$241>>2] = $235; - HEAP8[$0>>0] = 9; - $242 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($242|0); - } else { - $190 = HEAP32[$b>>2]|0; - $191 = $190 & -266354561; - HEAP32[$b>>2] = $191; - $192 = HEAP32[$a>>2]|0; - $193 = $192 << 7; - HEAP32[$a>>2] = $193; - $194 = HEAP32[$b>>2]|0; - $195 = HEAP32[$a>>2]|0; - $196 = $195 | $194; - HEAP32[$a>>2] = $196; - $197 = HEAP32[$s>>2]|0; - $198 = $197 >>> 4; - HEAP32[$s>>2] = $198; - $199 = HEAP32[$s>>2]|0; - $200 = HEAP32[$a>>2]|0; - $201 = HEAP32[$2>>2]|0; - $202 = $201; - $203 = $202; - HEAP32[$203>>2] = $200; - $204 = (($202) + 4)|0; - $205 = $204; - HEAP32[$205>>2] = $199; - HEAP8[$0>>0] = 8; - $242 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($242|0); - } - return 0|0; -} -function _btreeParseCellPtr($pPage,$pCell,$pInfo) { - $pPage = $pPage|0; - $pCell = $pCell|0; - $pInfo = $pInfo|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; - var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; - var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; - var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; - var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $maxLocal = 0, $minLocal = 0, $n = 0, $nPayload = 0, $surplus = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $n = sp + 28|0; - $nPayload = sp + 12|0; - $minLocal = sp + 8|0; - $maxLocal = sp + 4|0; - $surplus = sp; - HEAP32[$0>>2] = $pPage; - HEAP32[$1>>2] = $pCell; - HEAP32[$2>>2] = $pInfo; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$2>>2]|0; - $5 = (($4) + 8|0); - HEAP32[$5>>2] = $3; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 6|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - HEAP16[$n>>1] = $9; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 2|0); - $12 = HEAP8[$11>>0]|0; - $13 = ($12<<24>>24)!=(0); - if ($13) { - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 4|0); - $16 = HEAP8[$15>>0]|0; - $17 = ($16<<24>>24)!=(0); - if ($17) { - $18 = HEAP32[$1>>2]|0; - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = ($20|0)<(128); - $22 = HEAP32[$1>>2]|0; - if ($21) { - $23 = HEAP8[$22>>0]|0; - $24 = $23&255; - HEAP32[$nPayload>>2] = $24; - $28 = 1; - } else { - $25 = (_sqlite3GetVarint32($22,$nPayload)|0); - $26 = $25&255; - $28 = $26; - } - $27 = $28&255; - $29 = $27&255; - HEAP16[$n>>1] = $29; - } else { - HEAP32[$nPayload>>2] = 0; - } - $30 = HEAP16[$n>>1]|0; - $31 = $30&65535; - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + ($31)|0); - $34 = HEAP32[$2>>2]|0; - $35 = (_sqlite3GetVarint($33,$34)|0); - $36 = $35&255; - $37 = HEAP16[$n>>1]|0; - $38 = $37&65535; - $39 = (($38) + ($36))|0; - $40 = $39&65535; - HEAP16[$n>>1] = $40; - $41 = HEAP32[$nPayload>>2]|0; - $42 = HEAP32[$2>>2]|0; - $43 = (($42) + 12|0); - HEAP32[$43>>2] = $41; - } else { - $44 = HEAP32[$2>>2]|0; - $45 = (($44) + 12|0); - HEAP32[$45>>2] = 0; - $46 = HEAP16[$n>>1]|0; - $47 = $46&65535; - $48 = HEAP32[$1>>2]|0; - $49 = (($48) + ($47)|0); - $50 = HEAP8[$49>>0]|0; - $51 = $50&255; - $52 = ($51|0)<(128); - $53 = HEAP16[$n>>1]|0; - $54 = $53&65535; - $55 = HEAP32[$1>>2]|0; - $56 = (($55) + ($54)|0); - if ($52) { - $57 = HEAP8[$56>>0]|0; - $58 = $57&255; - HEAP32[$nPayload>>2] = $58; - $62 = 1; - } else { - $59 = (_sqlite3GetVarint32($56,$nPayload)|0); - $60 = $59&255; - $62 = $60; - } - $61 = $62&255; - $63 = $61&255; - $64 = HEAP16[$n>>1]|0; - $65 = $64&65535; - $66 = (($65) + ($63))|0; - $67 = $66&65535; - HEAP16[$n>>1] = $67; - $68 = HEAP32[$nPayload>>2]|0; - $69 = HEAP32[$2>>2]|0; - $70 = $69; - $71 = $70; - HEAP32[$71>>2] = $68; - $72 = (($70) + 4)|0; - $73 = $72; - HEAP32[$73>>2] = 0; - } - $74 = HEAP32[$nPayload>>2]|0; - $75 = HEAP32[$2>>2]|0; - $76 = (($75) + 16|0); - HEAP32[$76>>2] = $74; - $77 = HEAP16[$n>>1]|0; - $78 = HEAP32[$2>>2]|0; - $79 = (($78) + 20|0); - HEAP16[$79>>1] = $77; - $80 = HEAP32[$nPayload>>2]|0; - $81 = HEAP32[$0>>2]|0; - $82 = (($81) + 8|0); - $83 = HEAP16[$82>>1]|0; - $84 = $83&65535; - $85 = ($80>>>0)<=($84>>>0); - if ($85) { - $86 = HEAP16[$n>>1]|0; - $87 = $86&65535; - $88 = HEAP32[$nPayload>>2]|0; - $89 = (($87) + ($88))|0; - $90 = $89&65535; - $91 = HEAP32[$2>>2]|0; - $92 = (($91) + 26|0); - HEAP16[$92>>1] = $90; - $93 = $90&65535; - $94 = ($93|0)<(4); - if ($94) { - $95 = HEAP32[$2>>2]|0; - $96 = (($95) + 26|0); - HEAP16[$96>>1] = 4; - } - $97 = HEAP32[$nPayload>>2]|0; - $98 = $97&65535; - $99 = HEAP32[$2>>2]|0; - $100 = (($99) + 22|0); - HEAP16[$100>>1] = $98; - $101 = HEAP32[$2>>2]|0; - $102 = (($101) + 24|0); - HEAP16[$102>>1] = 0; - STACKTOP = sp;return; - } - $103 = HEAP32[$0>>2]|0; - $104 = (($103) + 10|0); - $105 = HEAP16[$104>>1]|0; - $106 = $105&65535; - HEAP32[$minLocal>>2] = $106; - $107 = HEAP32[$0>>2]|0; - $108 = (($107) + 8|0); - $109 = HEAP16[$108>>1]|0; - $110 = $109&65535; - HEAP32[$maxLocal>>2] = $110; - $111 = HEAP32[$minLocal>>2]|0; - $112 = HEAP32[$nPayload>>2]|0; - $113 = HEAP32[$minLocal>>2]|0; - $114 = (($112) - ($113))|0; - $115 = HEAP32[$0>>2]|0; - $116 = (($115) + 52|0); - $117 = HEAP32[$116>>2]|0; - $118 = (($117) + 36|0); - $119 = HEAP32[$118>>2]|0; - $120 = (($119) - 4)|0; - $121 = (($114>>>0) % ($120>>>0))&-1; - $122 = (($111) + ($121))|0; - HEAP32[$surplus>>2] = $122; - $123 = HEAP32[$surplus>>2]|0; - $124 = HEAP32[$maxLocal>>2]|0; - $125 = ($123|0)<=($124|0); - if ($125) { - $126 = HEAP32[$surplus>>2]|0; - $127 = $126&65535; - $128 = HEAP32[$2>>2]|0; - $129 = (($128) + 22|0); - HEAP16[$129>>1] = $127; - } else { - $130 = HEAP32[$minLocal>>2]|0; - $131 = $130&65535; - $132 = HEAP32[$2>>2]|0; - $133 = (($132) + 22|0); - HEAP16[$133>>1] = $131; - } - $134 = HEAP32[$2>>2]|0; - $135 = (($134) + 22|0); - $136 = HEAP16[$135>>1]|0; - $137 = $136&65535; - $138 = HEAP16[$n>>1]|0; - $139 = $138&65535; - $140 = (($137) + ($139))|0; - $141 = $140&65535; - $142 = HEAP32[$2>>2]|0; - $143 = (($142) + 24|0); - HEAP16[$143>>1] = $141; - $144 = HEAP32[$2>>2]|0; - $145 = (($144) + 24|0); - $146 = HEAP16[$145>>1]|0; - $147 = $146&65535; - $148 = (($147) + 4)|0; - $149 = $148&65535; - $150 = HEAP32[$2>>2]|0; - $151 = (($150) + 26|0); - HEAP16[$151>>1] = $149; - STACKTOP = sp;return; -} -function _accessPayload($pCur,$offset,$amt,$pBuf,$eOp) { - $pCur = $pCur|0; - $offset = $offset|0; - $amt = $amt|0; - $pBuf = $pBuf|0; - $eOp = $eOp|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; - var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a = 0, $a1 = 0; - var $aNew = 0, $aPayload = 0, $iIdx = 0, $iPage = 0, $nKey = 0, $nOvfl = 0, $nextPage = 0, $ovflSize = 0, $pBt = 0, $pDbPage = 0, $pPage = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 76|0; - $1 = sp + 72|0; - $2 = sp + 68|0; - $3 = sp + 64|0; - $4 = sp + 60|0; - $5 = sp + 56|0; - $aPayload = sp + 52|0; - $rc = sp + 48|0; - $nKey = sp + 44|0; - $iIdx = sp + 40|0; - $pPage = sp + 36|0; - $pBt = sp + 32|0; - $iPage = sp + 28|0; - $a = sp + 24|0; - $ovflSize = sp + 20|0; - $nextPage = sp + 16|0; - $nOvfl = sp + 12|0; - $aNew = sp + 8|0; - $a1 = sp + 4|0; - $pDbPage = sp; - HEAP32[$1>>2] = $pCur; - HEAP32[$2>>2] = $offset; - HEAP32[$3>>2] = $amt; - HEAP32[$4>>2] = $pBuf; - HEAP32[$5>>2] = $eOp; - HEAP32[$rc>>2] = 0; - HEAP32[$iIdx>>2] = 0; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 84|0); - $8 = HEAP16[$7>>1]|0; - $9 = $8 << 16 >> 16; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 128|0); - $12 = (($11) + ($9<<2)|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pPage>>2] = $13; - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 4|0); - $16 = HEAP32[$15>>2]|0; - HEAP32[$pBt>>2] = $16; - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 24|0); - $19 = (($18) + 26|0); - $20 = HEAP16[$19>>1]|0; - $21 = $20&65535; - $22 = ($21|0)==(0); - if ($22) { - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 84|0); - $25 = HEAP16[$24>>1]|0; - $26 = $25 << 16 >> 16; - HEAP32[$iPage>>2] = $26; - $27 = HEAP32[$iPage>>2]|0; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 128|0); - $30 = (($29) + ($27<<2)|0); - $31 = HEAP32[$30>>2]|0; - $32 = HEAP32[$iPage>>2]|0; - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 86|0); - $35 = (($34) + ($32<<1)|0); - $36 = HEAP16[$35>>1]|0; - $37 = $36&65535; - $38 = HEAP32[$1>>2]|0; - $39 = (($38) + 24|0); - _btreeParseCell($31,$37,$39); - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 80|0); - $42 = HEAP8[$41>>0]|0; - $43 = $42&255; - $44 = $43 | 2; - $45 = $44&255; - HEAP8[$41>>0] = $45; - } - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 24|0); - $48 = (($47) + 8|0); - $49 = HEAP32[$48>>2]|0; - $50 = HEAP32[$1>>2]|0; - $51 = (($50) + 24|0); - $52 = (($51) + 20|0); - $53 = HEAP16[$52>>1]|0; - $54 = $53&65535; - $55 = (($49) + ($54)|0); - HEAP32[$aPayload>>2] = $55; - $56 = HEAP32[$pPage>>2]|0; - $57 = (($56) + 2|0); - $58 = HEAP8[$57>>0]|0; - $59 = $58&255; - $60 = ($59|0)!=(0); - if ($60) { - $69 = 0; - } else { - $61 = HEAP32[$1>>2]|0; - $62 = (($61) + 24|0); - $63 = $62; - $64 = $63; - $65 = HEAP32[$64>>2]|0; - $66 = (($63) + 4)|0; - $67 = $66; - $68 = HEAP32[$67>>2]|0; - $69 = $65; - } - HEAP32[$nKey>>2] = $69; - $70 = HEAP32[$2>>2]|0; - $71 = HEAP32[$3>>2]|0; - $72 = (($70) + ($71))|0; - $73 = HEAP32[$nKey>>2]|0; - $74 = HEAP32[$1>>2]|0; - $75 = (($74) + 24|0); - $76 = (($75) + 12|0); - $77 = HEAP32[$76>>2]|0; - $78 = (($73) + ($77))|0; - $79 = ($72>>>0)>($78>>>0); - if (!($79)) { - $80 = HEAP32[$1>>2]|0; - $81 = (($80) + 24|0); - $82 = (($81) + 22|0); - $83 = HEAP16[$82>>1]|0; - $84 = $83&65535; - $85 = HEAP32[$aPayload>>2]|0; - $86 = (($85) + ($84)|0); - $87 = HEAP32[$pBt>>2]|0; - $88 = (($87) + 36|0); - $89 = HEAP32[$88>>2]|0; - $90 = HEAP32[$pPage>>2]|0; - $91 = (($90) + 56|0); - $92 = HEAP32[$91>>2]|0; - $93 = (($92) + ($89)|0); - $94 = ($86>>>0)>($93>>>0); - if (!($94)) { - $96 = HEAP32[$2>>2]|0; - $97 = HEAP32[$1>>2]|0; - $98 = (($97) + 24|0); - $99 = (($98) + 22|0); - $100 = HEAP16[$99>>1]|0; - $101 = $100&65535; - $102 = ($96>>>0)<($101>>>0); - if ($102) { - $103 = HEAP32[$3>>2]|0; - HEAP32[$a>>2] = $103; - $104 = HEAP32[$a>>2]|0; - $105 = HEAP32[$2>>2]|0; - $106 = (($104) + ($105))|0; - $107 = HEAP32[$1>>2]|0; - $108 = (($107) + 24|0); - $109 = (($108) + 22|0); - $110 = HEAP16[$109>>1]|0; - $111 = $110&65535; - $112 = ($106>>>0)>($111>>>0); - if ($112) { - $113 = HEAP32[$1>>2]|0; - $114 = (($113) + 24|0); - $115 = (($114) + 22|0); - $116 = HEAP16[$115>>1]|0; - $117 = $116&65535; - $118 = HEAP32[$2>>2]|0; - $119 = (($117) - ($118))|0; - HEAP32[$a>>2] = $119; - } - $120 = HEAP32[$2>>2]|0; - $121 = HEAP32[$aPayload>>2]|0; - $122 = (($121) + ($120)|0); - $123 = HEAP32[$4>>2]|0; - $124 = HEAP32[$a>>2]|0; - $125 = HEAP32[$5>>2]|0; - $126 = $125 & 1; - $127 = HEAP32[$pPage>>2]|0; - $128 = (($127) + 68|0); - $129 = HEAP32[$128>>2]|0; - $130 = (_copyPayload($122,$123,$124,$126,$129)|0); - HEAP32[$rc>>2] = $130; - HEAP32[$2>>2] = 0; - $131 = HEAP32[$a>>2]|0; - $132 = HEAP32[$4>>2]|0; - $133 = (($132) + ($131)|0); - HEAP32[$4>>2] = $133; - $134 = HEAP32[$a>>2]|0; - $135 = HEAP32[$3>>2]|0; - $136 = (($135) - ($134))|0; - HEAP32[$3>>2] = $136; - } else { - $137 = HEAP32[$1>>2]|0; - $138 = (($137) + 24|0); - $139 = (($138) + 22|0); - $140 = HEAP16[$139>>1]|0; - $141 = $140&65535; - $142 = HEAP32[$2>>2]|0; - $143 = (($142) - ($141))|0; - HEAP32[$2>>2] = $143; - } - $144 = HEAP32[$rc>>2]|0; - $145 = ($144|0)==(0); - L17: do { - if ($145) { - $146 = HEAP32[$3>>2]|0; - $147 = ($146>>>0)>(0); - if ($147) { - $148 = HEAP32[$pBt>>2]|0; - $149 = (($148) + 36|0); - $150 = HEAP32[$149>>2]|0; - $151 = (($150) - 4)|0; - HEAP32[$ovflSize>>2] = $151; - $152 = HEAP32[$1>>2]|0; - $153 = (($152) + 24|0); - $154 = (($153) + 22|0); - $155 = HEAP16[$154>>1]|0; - $156 = $155&65535; - $157 = HEAP32[$aPayload>>2]|0; - $158 = (($157) + ($156)|0); - $159 = (_sqlite3Get4byte($158)|0); - HEAP32[$nextPage>>2] = $159; - $160 = HEAP32[$5>>2]|0; - $161 = ($160|0)!=(2); - if ($161) { - $162 = HEAP32[$1>>2]|0; - $163 = (($162) + 80|0); - $164 = HEAP8[$163>>0]|0; - $165 = $164&255; - $166 = $165 & 4; - $167 = ($166|0)==(0); - if ($167) { - $168 = HEAP32[$1>>2]|0; - $169 = (($168) + 24|0); - $170 = (($169) + 16|0); - $171 = HEAP32[$170>>2]|0; - $172 = HEAP32[$1>>2]|0; - $173 = (($172) + 24|0); - $174 = (($173) + 22|0); - $175 = HEAP16[$174>>1]|0; - $176 = $175&65535; - $177 = (($171) - ($176))|0; - $178 = HEAP32[$ovflSize>>2]|0; - $179 = (($177) + ($178))|0; - $180 = (($179) - 1)|0; - $181 = HEAP32[$ovflSize>>2]|0; - $182 = (($180>>>0) / ($181>>>0))&-1; - HEAP32[$nOvfl>>2] = $182; - $183 = HEAP32[$nOvfl>>2]|0; - $184 = HEAP32[$1>>2]|0; - $185 = (($184) + 72|0); - $186 = HEAP32[$185>>2]|0; - $187 = ($183|0)>($186|0); - do { - if ($187) { - $188 = HEAP32[$1>>2]|0; - $189 = HEAP32[$188>>2]|0; - $190 = HEAP32[$189>>2]|0; - $191 = HEAP32[$1>>2]|0; - $192 = (($191) + 20|0); - $193 = HEAP32[$192>>2]|0; - $194 = HEAP32[$nOvfl>>2]|0; - $195 = $194<<1; - $196 = $195<<2; - $197 = (_sqlite3DbRealloc($190,$193,$196)|0); - HEAP32[$aNew>>2] = $197; - $198 = HEAP32[$aNew>>2]|0; - $199 = ($198|0)==(0|0); - if ($199) { - HEAP32[$rc>>2] = 7; - break; - } else { - $200 = HEAP32[$nOvfl>>2]|0; - $201 = $200<<1; - $202 = HEAP32[$1>>2]|0; - $203 = (($202) + 72|0); - HEAP32[$203>>2] = $201; - $204 = HEAP32[$aNew>>2]|0; - $205 = HEAP32[$1>>2]|0; - $206 = (($205) + 20|0); - HEAP32[$206>>2] = $204; - break; - } - } - } while(0); - $207 = HEAP32[$rc>>2]|0; - $208 = ($207|0)==(0); - if ($208) { - $209 = HEAP32[$1>>2]|0; - $210 = (($209) + 20|0); - $211 = HEAP32[$210>>2]|0; - $212 = HEAP32[$nOvfl>>2]|0; - $213 = $212<<2; - _memset(($211|0),0,($213|0))|0; - $214 = HEAP32[$1>>2]|0; - $215 = (($214) + 80|0); - $216 = HEAP8[$215>>0]|0; - $217 = $216&255; - $218 = $217 | 4; - $219 = $218&255; - HEAP8[$215>>0] = $219; - } - } - } - $220 = HEAP32[$1>>2]|0; - $221 = (($220) + 80|0); - $222 = HEAP8[$221>>0]|0; - $223 = $222&255; - $224 = $223 & 4; - $225 = ($224|0)!=(0); - if ($225) { - $226 = HEAP32[$2>>2]|0; - $227 = HEAP32[$ovflSize>>2]|0; - $228 = (($226>>>0) / ($227>>>0))&-1; - $229 = HEAP32[$1>>2]|0; - $230 = (($229) + 20|0); - $231 = HEAP32[$230>>2]|0; - $232 = (($231) + ($228<<2)|0); - $233 = HEAP32[$232>>2]|0; - $234 = ($233|0)!=(0); - if ($234) { - $235 = HEAP32[$2>>2]|0; - $236 = HEAP32[$ovflSize>>2]|0; - $237 = (($235>>>0) / ($236>>>0))&-1; - HEAP32[$iIdx>>2] = $237; - $238 = HEAP32[$iIdx>>2]|0; - $239 = HEAP32[$1>>2]|0; - $240 = (($239) + 20|0); - $241 = HEAP32[$240>>2]|0; - $242 = (($241) + ($238<<2)|0); - $243 = HEAP32[$242>>2]|0; - HEAP32[$nextPage>>2] = $243; - $244 = HEAP32[$2>>2]|0; - $245 = HEAP32[$ovflSize>>2]|0; - $246 = (($244>>>0) % ($245>>>0))&-1; - HEAP32[$2>>2] = $246; - } - } - while(1) { - $247 = HEAP32[$rc>>2]|0; - $248 = ($247|0)==(0); - if (!($248)) { - break L17; - } - $249 = HEAP32[$3>>2]|0; - $250 = ($249>>>0)>(0); - if (!($250)) { - break L17; - } - $251 = HEAP32[$nextPage>>2]|0; - $252 = ($251|0)!=(0); - if (!($252)) { - break L17; - } - $253 = HEAP32[$1>>2]|0; - $254 = (($253) + 80|0); - $255 = HEAP8[$254>>0]|0; - $256 = $255&255; - $257 = $256 & 4; - $258 = ($257|0)!=(0); - if ($258) { - $259 = HEAP32[$nextPage>>2]|0; - $260 = HEAP32[$iIdx>>2]|0; - $261 = HEAP32[$1>>2]|0; - $262 = (($261) + 20|0); - $263 = HEAP32[$262>>2]|0; - $264 = (($263) + ($260<<2)|0); - HEAP32[$264>>2] = $259; - } - $265 = HEAP32[$2>>2]|0; - $266 = HEAP32[$ovflSize>>2]|0; - $267 = ($265>>>0)>=($266>>>0); - if ($267) { - $268 = HEAP32[$iIdx>>2]|0; - $269 = (($268) + 1)|0; - $270 = HEAP32[$1>>2]|0; - $271 = (($270) + 20|0); - $272 = HEAP32[$271>>2]|0; - $273 = (($272) + ($269<<2)|0); - $274 = HEAP32[$273>>2]|0; - $275 = ($274|0)!=(0); - if ($275) { - $276 = HEAP32[$iIdx>>2]|0; - $277 = (($276) + 1)|0; - $278 = HEAP32[$1>>2]|0; - $279 = (($278) + 20|0); - $280 = HEAP32[$279>>2]|0; - $281 = (($280) + ($277<<2)|0); - $282 = HEAP32[$281>>2]|0; - HEAP32[$nextPage>>2] = $282; - } else { - $283 = HEAP32[$pBt>>2]|0; - $284 = HEAP32[$nextPage>>2]|0; - $285 = (_getOverflowPage($283,$284,0,$nextPage)|0); - HEAP32[$rc>>2] = $285; - } - $286 = HEAP32[$ovflSize>>2]|0; - $287 = HEAP32[$2>>2]|0; - $288 = (($287) - ($286))|0; - HEAP32[$2>>2] = $288; - } else { - $289 = HEAP32[$3>>2]|0; - HEAP32[$a1>>2] = $289; - $290 = HEAP32[$a1>>2]|0; - $291 = HEAP32[$2>>2]|0; - $292 = (($290) + ($291))|0; - $293 = HEAP32[$ovflSize>>2]|0; - $294 = ($292>>>0)>($293>>>0); - if ($294) { - $295 = HEAP32[$ovflSize>>2]|0; - $296 = HEAP32[$2>>2]|0; - $297 = (($295) - ($296))|0; - HEAP32[$a1>>2] = $297; - } - $298 = HEAP32[$pBt>>2]|0; - $299 = HEAP32[$298>>2]|0; - $300 = HEAP32[$nextPage>>2]|0; - $301 = HEAP32[$5>>2]|0; - $302 = $301 & 1; - $303 = ($302|0)==(0); - $304 = $303 ? 2 : 0; - $305 = (_sqlite3PagerAcquire($299,$300,$pDbPage,$304)|0); - HEAP32[$rc>>2] = $305; - $306 = HEAP32[$rc>>2]|0; - $307 = ($306|0)==(0); - if ($307) { - $308 = HEAP32[$pDbPage>>2]|0; - $309 = (_sqlite3PagerGetData($308)|0); - HEAP32[$aPayload>>2] = $309; - $310 = HEAP32[$aPayload>>2]|0; - $311 = (_sqlite3Get4byte($310)|0); - HEAP32[$nextPage>>2] = $311; - $312 = HEAP32[$2>>2]|0; - $313 = (($312) + 4)|0; - $314 = HEAP32[$aPayload>>2]|0; - $315 = (($314) + ($313)|0); - $316 = HEAP32[$4>>2]|0; - $317 = HEAP32[$a1>>2]|0; - $318 = HEAP32[$5>>2]|0; - $319 = $318 & 1; - $320 = HEAP32[$pDbPage>>2]|0; - $321 = (_copyPayload($315,$316,$317,$319,$320)|0); - HEAP32[$rc>>2] = $321; - $322 = HEAP32[$pDbPage>>2]|0; - _sqlite3PagerUnref($322); - HEAP32[$2>>2] = 0; - } - $323 = HEAP32[$a1>>2]|0; - $324 = HEAP32[$3>>2]|0; - $325 = (($324) - ($323))|0; - HEAP32[$3>>2] = $325; - $326 = HEAP32[$a1>>2]|0; - $327 = HEAP32[$4>>2]|0; - $328 = (($327) + ($326)|0); - HEAP32[$4>>2] = $328; - } - $329 = HEAP32[$iIdx>>2]|0; - $330 = (($329) + 1)|0; - HEAP32[$iIdx>>2] = $330; - } - } - } - } while(0); - $331 = HEAP32[$rc>>2]|0; - $332 = ($331|0)==(0); - if ($332) { - $333 = HEAP32[$3>>2]|0; - $334 = ($333>>>0)>(0); - if ($334) { - $335 = (_sqlite3CorruptError(55292)|0); - HEAP32[$0>>2] = $335; - $337 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($337|0); - } - } - $336 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $336; - $337 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($337|0); - } - } - $95 = (_sqlite3CorruptError(55144)|0); - HEAP32[$0>>2] = $95; - $337 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($337|0); -} -function _btreeParseCell($pPage,$iCell,$pInfo) { - $pPage = $pPage|0; - $iCell = $iCell|0; - $pInfo = $pInfo|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $pPage; - HEAP32[$1>>2] = $iCell; - HEAP32[$2>>2] = $pInfo; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 56|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 18|0); - $9 = HEAP16[$8>>1]|0; - $10 = $9&65535; - $11 = HEAP32[$1>>2]|0; - $12 = $11<<1; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 64|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + ($12)|0); - $17 = HEAP8[$16>>0]|0; - $18 = $17&255; - $19 = $18 << 8; - $20 = HEAP32[$1>>2]|0; - $21 = $20<<1; - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 64|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + ($21)|0); - $26 = (($25) + 1|0); - $27 = HEAP8[$26>>0]|0; - $28 = $27&255; - $29 = $19 | $28; - $30 = $10 & $29; - $31 = (($6) + ($30)|0); - $32 = HEAP32[$2>>2]|0; - _btreeParseCellPtr($3,$31,$32); - STACKTOP = sp;return; -} -function _copyPayload($pPayload,$pBuf,$nByte,$eOp,$pDbPage) { - $pPayload = $pPayload|0; - $pBuf = $pBuf|0; - $nByte = $nByte|0; - $eOp = $eOp|0; - $pDbPage = $pDbPage|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $5 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pPayload; - HEAP32[$2>>2] = $pBuf; - HEAP32[$3>>2] = $nByte; - HEAP32[$4>>2] = $eOp; - HEAP32[$5>>2] = $pDbPage; - $6 = HEAP32[$4>>2]|0; - $7 = ($6|0)!=(0); - do { - if ($7) { - $8 = HEAP32[$5>>2]|0; - $9 = (_sqlite3PagerWrite($8)|0); - HEAP32[$rc>>2] = $9; - $10 = HEAP32[$rc>>2]|0; - $11 = ($10|0)!=(0); - if (!($11)) { - $13 = HEAP32[$1>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$3>>2]|0; - _memcpy(($13|0),($14|0),($15|0))|0; - break; - } - $12 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $12; - $19 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($19|0); - } else { - $16 = HEAP32[$2>>2]|0; - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$3>>2]|0; - _memcpy(($16|0),($17|0),($18|0))|0; - } - } while(0); - HEAP32[$0>>2] = 0; - $19 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($19|0); -} -function _getOverflowPage($pBt,$ovfl,$ppPage,$pPgnoNext) { - $pBt = $pBt|0; - $ovfl = $ovfl|0; - $ppPage = $ppPage|0; - $pPgnoNext = $pPgnoNext|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $eType = 0, $iGuess = 0, $next = 0, $pPage = 0, $pgno = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $next = sp + 16|0; - $pPage = sp + 12|0; - $rc = sp + 8|0; - $pgno = sp + 4|0; - $iGuess = sp; - $eType = sp + 36|0; - HEAP32[$0>>2] = $pBt; - HEAP32[$1>>2] = $ovfl; - HEAP32[$2>>2] = $ppPage; - HEAP32[$3>>2] = $pPgnoNext; - HEAP32[$next>>2] = 0; - HEAP32[$pPage>>2] = 0; - HEAP32[$rc>>2] = 0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 17|0); - $6 = HEAP8[$5>>0]|0; - $7 = ($6<<24>>24)!=(0); - if ($7) { - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 1)|0; - HEAP32[$iGuess>>2] = $9; - while(1) { - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$iGuess>>2]|0; - $12 = (_ptrmapPageno($10,$11)|0); - $13 = HEAP32[$iGuess>>2]|0; - $14 = ($12|0)==($13|0); - if ($14) { - $64 = 1; - } else { - $15 = HEAP32[$iGuess>>2]|0; - $16 = HEAP32[1384>>2]|0; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 32|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($16>>>0) / ($19>>>0))&-1; - $21 = (($20) + 1)|0; - $22 = ($15|0)==($21|0); - $64 = $22; - } - $23 = HEAP32[$iGuess>>2]|0; - if (!($64)) { - break; - } - $24 = (($23) + 1)|0; - HEAP32[$iGuess>>2] = $24; - } - $25 = HEAP32[$0>>2]|0; - $26 = (_btreePagecount($25)|0); - $27 = ($23>>>0)<=($26>>>0); - if ($27) { - $28 = HEAP32[$0>>2]|0; - $29 = HEAP32[$iGuess>>2]|0; - $30 = (_ptrmapGet($28,$29,$eType,$pgno)|0); - HEAP32[$rc>>2] = $30; - $31 = HEAP32[$rc>>2]|0; - $32 = ($31|0)==(0); - if ($32) { - $33 = HEAP8[$eType>>0]|0; - $34 = $33&255; - $35 = ($34|0)==(4); - if ($35) { - $36 = HEAP32[$pgno>>2]|0; - $37 = HEAP32[$1>>2]|0; - $38 = ($36|0)==($37|0); - if ($38) { - $39 = HEAP32[$iGuess>>2]|0; - HEAP32[$next>>2] = $39; - HEAP32[$rc>>2] = 101; - } - } - } - } - } - $40 = HEAP32[$rc>>2]|0; - $41 = ($40|0)==(0); - if ($41) { - $42 = HEAP32[$0>>2]|0; - $43 = HEAP32[$1>>2]|0; - $44 = HEAP32[$2>>2]|0; - $45 = ($44|0)==(0|0); - $46 = $45 ? 2 : 0; - $47 = (_btreeGetPage($42,$43,$pPage,$46)|0); - HEAP32[$rc>>2] = $47; - $48 = HEAP32[$rc>>2]|0; - $49 = ($48|0)==(0); - if ($49) { - $50 = HEAP32[$pPage>>2]|0; - $51 = (($50) + 56|0); - $52 = HEAP32[$51>>2]|0; - $53 = (_sqlite3Get4byte($52)|0); - HEAP32[$next>>2] = $53; - } - } - $54 = HEAP32[$next>>2]|0; - $55 = HEAP32[$3>>2]|0; - HEAP32[$55>>2] = $54; - $56 = HEAP32[$2>>2]|0; - $57 = ($56|0)!=(0|0); - $58 = HEAP32[$pPage>>2]|0; - if ($57) { - $59 = HEAP32[$2>>2]|0; - HEAP32[$59>>2] = $58; - $60 = HEAP32[$rc>>2]|0; - $61 = ($60|0)==(101); - $62 = HEAP32[$rc>>2]|0; - $63 = $61 ? 0 : $62; - STACKTOP = sp;return ($63|0); - } else { - _releasePage($58); - $60 = HEAP32[$rc>>2]|0; - $61 = ($60|0)==(101); - $62 = HEAP32[$rc>>2]|0; - $63 = $61 ? 0 : $62; - STACKTOP = sp;return ($63|0); - } - return 0|0; -} -function _ptrmapPageno($pBt,$pgno) { - $pBt = $pBt|0; - $pgno = $pgno|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iPtrMap = 0, $nPagesPerMapPage = 0, $ret = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $nPagesPerMapPage = sp + 8|0; - $iPtrMap = sp + 4|0; - $ret = sp; - HEAP32[$1>>2] = $pBt; - HEAP32[$2>>2] = $pgno; - $3 = HEAP32[$2>>2]|0; - $4 = ($3>>>0)<(2); - if ($4) { - HEAP32[$0>>2] = 0; - $29 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($29|0); - } - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 36|0); - $7 = HEAP32[$6>>2]|0; - $8 = (($7>>>0) / 5)&-1; - $9 = (($8) + 1)|0; - HEAP32[$nPagesPerMapPage>>2] = $9; - $10 = HEAP32[$2>>2]|0; - $11 = (($10) - 2)|0; - $12 = HEAP32[$nPagesPerMapPage>>2]|0; - $13 = (($11>>>0) / ($12>>>0))&-1; - HEAP32[$iPtrMap>>2] = $13; - $14 = HEAP32[$iPtrMap>>2]|0; - $15 = HEAP32[$nPagesPerMapPage>>2]|0; - $16 = Math_imul($14, $15)|0; - $17 = (($16) + 2)|0; - HEAP32[$ret>>2] = $17; - $18 = HEAP32[$ret>>2]|0; - $19 = HEAP32[1384>>2]|0; - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 32|0); - $22 = HEAP32[$21>>2]|0; - $23 = (($19>>>0) / ($22>>>0))&-1; - $24 = (($23) + 1)|0; - $25 = ($18|0)==($24|0); - if ($25) { - $26 = HEAP32[$ret>>2]|0; - $27 = (($26) + 1)|0; - HEAP32[$ret>>2] = $27; - } - $28 = HEAP32[$ret>>2]|0; - HEAP32[$0>>2] = $28; - $29 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($29|0); -} -function _ptrmapGet($pBt,$key,$pEType,$pPgno) { - $pBt = $pBt|0; - $key = $key|0; - $pEType = $pEType|0; - $pPgno = $pPgno|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iPtrmap = 0, $offset = 0, $pDbPage = 0, $pPtrmap = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $4 = sp + 20|0; - $pDbPage = sp + 16|0; - $iPtrmap = sp + 12|0; - $pPtrmap = sp + 8|0; - $offset = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pBt; - HEAP32[$2>>2] = $key; - HEAP32[$3>>2] = $pEType; - HEAP32[$4>>2] = $pPgno; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = (_ptrmapPageno($5,$6)|0); - HEAP32[$iPtrmap>>2] = $7; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$iPtrmap>>2]|0; - $11 = (_sqlite3PagerAcquire($9,$10,$pDbPage,0)|0); - HEAP32[$rc>>2] = $11; - $12 = HEAP32[$rc>>2]|0; - $13 = ($12|0)!=(0); - if ($13) { - $14 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $14; - $49 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($49|0); - } - $15 = HEAP32[$pDbPage>>2]|0; - $16 = (_sqlite3PagerGetData($15)|0); - HEAP32[$pPtrmap>>2] = $16; - $17 = HEAP32[$2>>2]|0; - $18 = HEAP32[$iPtrmap>>2]|0; - $19 = (($17) - ($18))|0; - $20 = (($19) - 1)|0; - $21 = ($20*5)|0; - HEAP32[$offset>>2] = $21; - $22 = HEAP32[$offset>>2]|0; - $23 = ($22|0)<(0); - if ($23) { - $24 = HEAP32[$pDbPage>>2]|0; - _sqlite3PagerUnref($24); - $25 = (_sqlite3CorruptError(52032)|0); - HEAP32[$0>>2] = $25; - $49 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($49|0); - } - $26 = HEAP32[$offset>>2]|0; - $27 = HEAP32[$pPtrmap>>2]|0; - $28 = (($27) + ($26)|0); - $29 = HEAP8[$28>>0]|0; - $30 = HEAP32[$3>>2]|0; - HEAP8[$30>>0] = $29; - $31 = HEAP32[$4>>2]|0; - $32 = ($31|0)!=(0|0); - if ($32) { - $33 = HEAP32[$offset>>2]|0; - $34 = (($33) + 1)|0; - $35 = HEAP32[$pPtrmap>>2]|0; - $36 = (($35) + ($34)|0); - $37 = (_sqlite3Get4byte($36)|0); - $38 = HEAP32[$4>>2]|0; - HEAP32[$38>>2] = $37; - } - $39 = HEAP32[$pDbPage>>2]|0; - _sqlite3PagerUnref($39); - $40 = HEAP32[$3>>2]|0; - $41 = HEAP8[$40>>0]|0; - $42 = $41&255; - $43 = ($42|0)<(1); - if (!($43)) { - $44 = HEAP32[$3>>2]|0; - $45 = HEAP8[$44>>0]|0; - $46 = $45&255; - $47 = ($46|0)>(5); - if (!($47)) { - HEAP32[$0>>2] = 0; - $49 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($49|0); - } - } - $48 = (_sqlite3CorruptError(52040)|0); - HEAP32[$0>>2] = $48; - $49 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($49|0); -} -function _sqlite3GetVarint32($p,$v) { - $p = $p|0; - $v = $v|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $a = 0, $b = 0, $n = 0, $v64 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 25|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $a = sp + 12|0; - $b = sp + 8|0; - $v64 = sp; - $n = sp + 24|0; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $v; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - HEAP32[$a>>2] = $5; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 1|0); - HEAP32[$1>>2] = $7; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - HEAP32[$b>>2] = $10; - $11 = HEAP32[$b>>2]|0; - $12 = $11 & 128; - $13 = ($12|0)!=(0); - if (!($13)) { - $14 = HEAP32[$a>>2]|0; - $15 = $14 & 127; - HEAP32[$a>>2] = $15; - $16 = HEAP32[$a>>2]|0; - $17 = $16 << 7; - HEAP32[$a>>2] = $17; - $18 = HEAP32[$a>>2]|0; - $19 = HEAP32[$b>>2]|0; - $20 = $18 | $19; - $21 = HEAP32[$2>>2]|0; - HEAP32[$21>>2] = $20; - HEAP8[$0>>0] = 2; - $72 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($72|0); - } - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 1|0); - HEAP32[$1>>2] = $23; - $24 = HEAP32[$a>>2]|0; - $25 = $24 << 14; - HEAP32[$a>>2] = $25; - $26 = HEAP32[$1>>2]|0; - $27 = HEAP8[$26>>0]|0; - $28 = $27&255; - $29 = HEAP32[$a>>2]|0; - $30 = $29 | $28; - HEAP32[$a>>2] = $30; - $31 = HEAP32[$a>>2]|0; - $32 = $31 & 128; - $33 = ($32|0)!=(0); - if (!($33)) { - $34 = HEAP32[$a>>2]|0; - $35 = $34 & 2080895; - HEAP32[$a>>2] = $35; - $36 = HEAP32[$b>>2]|0; - $37 = $36 & 127; - HEAP32[$b>>2] = $37; - $38 = HEAP32[$b>>2]|0; - $39 = $38 << 7; - HEAP32[$b>>2] = $39; - $40 = HEAP32[$a>>2]|0; - $41 = HEAP32[$b>>2]|0; - $42 = $40 | $41; - $43 = HEAP32[$2>>2]|0; - HEAP32[$43>>2] = $42; - HEAP8[$0>>0] = 3; - $72 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($72|0); - } - $44 = HEAP32[$1>>2]|0; - $45 = (($44) + -2|0); - HEAP32[$1>>2] = $45; - $46 = HEAP32[$1>>2]|0; - $47 = (_sqlite3GetVarint($46,$v64)|0); - HEAP8[$n>>0] = $47; - $48 = $v64; - $49 = $48; - $50 = HEAP32[$49>>2]|0; - $51 = (($48) + 4)|0; - $52 = $51; - $53 = HEAP32[$52>>2]|0; - $54 = $v64; - $55 = $54; - $56 = HEAP32[$55>>2]|0; - $57 = (($54) + 4)|0; - $58 = $57; - $59 = HEAP32[$58>>2]|0; - $60 = ($50|0)!=($56|0); - $61 = (0)!=($59|0); - $62 = $60 | $61; - if ($62) { - $63 = HEAP32[$2>>2]|0; - HEAP32[$63>>2] = -1; - } else { - $64 = $v64; - $65 = $64; - $66 = HEAP32[$65>>2]|0; - $67 = (($64) + 4)|0; - $68 = $67; - $69 = HEAP32[$68>>2]|0; - $70 = HEAP32[$2>>2]|0; - HEAP32[$70>>2] = $66; - } - $71 = HEAP8[$n>>0]|0; - HEAP8[$0>>0] = $71; - $72 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($72|0); -} -function _vdbeRecordCompareInt($nKey1,$pKey1,$pPKey2,$bSkip) { - $nKey1 = $nKey1|0; - $pKey1 = $pKey1|0; - $pPKey2 = $pPKey2|0; - $bSkip = $bSkip|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; - var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; - var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; - var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; - var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aKey = 0, $lhs = 0, $res = 0, $serial_type = 0, $v = 0, $x = 0, $y = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 56|0; - $1 = sp + 52|0; - $2 = sp + 48|0; - $3 = sp + 44|0; - $4 = sp + 40|0; - $aKey = sp + 36|0; - $serial_type = sp + 32|0; - $res = sp + 28|0; - $y = sp + 24|0; - $x = sp + 16|0; - $v = sp + 8|0; - $lhs = sp; - HEAP32[$1>>2] = $nKey1; - HEAP32[$2>>2] = $pKey1; - HEAP32[$3>>2] = $pPKey2; - HEAP32[$4>>2] = $bSkip; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - $8 = $7 & 63; - $9 = HEAP32[$2>>2]|0; - $10 = (($9) + ($8)|0); - HEAP32[$aKey>>2] = $10; - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 1|0); - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - HEAP32[$serial_type>>2] = $14; - $15 = HEAP32[$3>>2]|0; - $16 = (($15) + 8|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + 16|0); - $19 = $18; - $20 = $19; - $21 = HEAP32[$20>>2]|0; - $22 = (($19) + 4)|0; - $23 = $22; - $24 = HEAP32[$23>>2]|0; - $25 = $v; - $26 = $25; - HEAP32[$26>>2] = $21; - $27 = (($25) + 4)|0; - $28 = $27; - HEAP32[$28>>2] = $24; - $29 = HEAP32[$serial_type>>2]|0; - do { - switch ($29|0) { - case 1: { - $30 = HEAP32[$aKey>>2]|0; - $31 = HEAP8[$30>>0]|0; - $32 = $31 << 24 >> 24; - $33 = ($32|0)<(0); - $34 = $33 << 31 >> 31; - $35 = $lhs; - $36 = $35; - HEAP32[$36>>2] = $32; - $37 = (($35) + 4)|0; - $38 = $37; - HEAP32[$38>>2] = $34; - break; - } - case 6: { - $147 = HEAP32[$aKey>>2]|0; - $148 = HEAP8[$147>>0]|0; - $149 = $148&255; - $150 = $149 << 24; - $151 = HEAP32[$aKey>>2]|0; - $152 = (($151) + 1|0); - $153 = HEAP8[$152>>0]|0; - $154 = $153&255; - $155 = $154 << 16; - $156 = $150 | $155; - $157 = HEAP32[$aKey>>2]|0; - $158 = (($157) + 2|0); - $159 = HEAP8[$158>>0]|0; - $160 = $159&255; - $161 = $160 << 8; - $162 = $156 | $161; - $163 = HEAP32[$aKey>>2]|0; - $164 = (($163) + 3|0); - $165 = HEAP8[$164>>0]|0; - $166 = $165&255; - $167 = $162 | $166; - $168 = $x; - $169 = $168; - HEAP32[$169>>2] = $167; - $170 = (($168) + 4)|0; - $171 = $170; - HEAP32[$171>>2] = 0; - $172 = $x; - $173 = $172; - $174 = HEAP32[$173>>2]|0; - $175 = (($172) + 4)|0; - $176 = $175; - $177 = HEAP32[$176>>2]|0; - $178 = HEAP32[$aKey>>2]|0; - $179 = (($178) + 4|0); - $180 = HEAP8[$179>>0]|0; - $181 = $180&255; - $182 = $181 << 24; - $183 = HEAP32[$aKey>>2]|0; - $184 = (($183) + 4|0); - $185 = (($184) + 1|0); - $186 = HEAP8[$185>>0]|0; - $187 = $186&255; - $188 = $187 << 16; - $189 = $182 | $188; - $190 = HEAP32[$aKey>>2]|0; - $191 = (($190) + 4|0); - $192 = (($191) + 2|0); - $193 = HEAP8[$192>>0]|0; - $194 = $193&255; - $195 = $194 << 8; - $196 = $189 | $195; - $197 = HEAP32[$aKey>>2]|0; - $198 = (($197) + 4|0); - $199 = (($198) + 3|0); - $200 = HEAP8[$199>>0]|0; - $201 = $200&255; - $202 = $196 | $201; - $203 = $x; - $204 = $203; - HEAP32[$204>>2] = $202; - $205 = (($203) + 4)|0; - $206 = $205; - HEAP32[$206>>2] = $174; - $207 = $x; - $208 = $207; - $209 = HEAP32[$208>>2]|0; - $210 = (($207) + 4)|0; - $211 = $210; - $212 = HEAP32[$211>>2]|0; - $213 = $lhs; - $214 = $213; - HEAP32[$214>>2] = $209; - $215 = (($213) + 4)|0; - $216 = $215; - HEAP32[$216>>2] = $212; - break; - } - case 5: { - $103 = HEAP32[$aKey>>2]|0; - $104 = (($103) + 2|0); - $105 = HEAP8[$104>>0]|0; - $106 = $105&255; - $107 = $106 << 24; - $108 = HEAP32[$aKey>>2]|0; - $109 = (($108) + 2|0); - $110 = (($109) + 1|0); - $111 = HEAP8[$110>>0]|0; - $112 = $111&255; - $113 = $112 << 16; - $114 = $107 | $113; - $115 = HEAP32[$aKey>>2]|0; - $116 = (($115) + 2|0); - $117 = (($116) + 2|0); - $118 = HEAP8[$117>>0]|0; - $119 = $118&255; - $120 = $119 << 8; - $121 = $114 | $120; - $122 = HEAP32[$aKey>>2]|0; - $123 = (($122) + 2|0); - $124 = (($123) + 3|0); - $125 = HEAP8[$124>>0]|0; - $126 = $125&255; - $127 = $121 | $126; - $128 = HEAP32[$aKey>>2]|0; - $129 = HEAP8[$128>>0]|0; - $130 = $129 << 24 >> 24; - $131 = $130<<8; - $132 = HEAP32[$aKey>>2]|0; - $133 = (($132) + 1|0); - $134 = HEAP8[$133>>0]|0; - $135 = $134&255; - $136 = $131 | $135; - $137 = ($136|0)<(0); - $138 = $137 << 31 >> 31; - $139 = (___muldi3(0,1,($136|0),($138|0))|0); - $140 = tempRet0; - $141 = (_i64Add(($127|0),0,($139|0),($140|0))|0); - $142 = tempRet0; - $143 = $lhs; - $144 = $143; - HEAP32[$144>>2] = $141; - $145 = (($143) + 4)|0; - $146 = $145; - HEAP32[$146>>2] = $142; - break; - } - case 9: { - $221 = $lhs; - $222 = $221; - HEAP32[$222>>2] = 1; - $223 = (($221) + 4)|0; - $224 = $223; - HEAP32[$224>>2] = 0; - break; - } - case 8: { - $217 = $lhs; - $218 = $217; - HEAP32[$218>>2] = 0; - $219 = (($217) + 4)|0; - $220 = $219; - HEAP32[$220>>2] = 0; - break; - } - case 4: { - $75 = HEAP32[$aKey>>2]|0; - $76 = HEAP8[$75>>0]|0; - $77 = $76&255; - $78 = $77 << 24; - $79 = HEAP32[$aKey>>2]|0; - $80 = (($79) + 1|0); - $81 = HEAP8[$80>>0]|0; - $82 = $81&255; - $83 = $82 << 16; - $84 = $78 | $83; - $85 = HEAP32[$aKey>>2]|0; - $86 = (($85) + 2|0); - $87 = HEAP8[$86>>0]|0; - $88 = $87&255; - $89 = $88 << 8; - $90 = $84 | $89; - $91 = HEAP32[$aKey>>2]|0; - $92 = (($91) + 3|0); - $93 = HEAP8[$92>>0]|0; - $94 = $93&255; - $95 = $90 | $94; - HEAP32[$y>>2] = $95; - $96 = HEAP32[$y>>2]|0; - $97 = ($96|0)<(0); - $98 = $97 << 31 >> 31; - $99 = $lhs; - $100 = $99; - HEAP32[$100>>2] = $96; - $101 = (($99) + 4)|0; - $102 = $101; - HEAP32[$102>>2] = $98; - break; - } - case 2: { - $39 = HEAP32[$aKey>>2]|0; - $40 = HEAP8[$39>>0]|0; - $41 = $40 << 24 >> 24; - $42 = $41<<8; - $43 = HEAP32[$aKey>>2]|0; - $44 = (($43) + 1|0); - $45 = HEAP8[$44>>0]|0; - $46 = $45&255; - $47 = $42 | $46; - $48 = ($47|0)<(0); - $49 = $48 << 31 >> 31; - $50 = $lhs; - $51 = $50; - HEAP32[$51>>2] = $47; - $52 = (($50) + 4)|0; - $53 = $52; - HEAP32[$53>>2] = $49; - break; - } - case 3: { - $54 = HEAP32[$aKey>>2]|0; - $55 = HEAP8[$54>>0]|0; - $56 = $55 << 24 >> 24; - $57 = $56<<16; - $58 = HEAP32[$aKey>>2]|0; - $59 = (($58) + 1|0); - $60 = HEAP8[$59>>0]|0; - $61 = $60&255; - $62 = $61 << 8; - $63 = $57 | $62; - $64 = HEAP32[$aKey>>2]|0; - $65 = (($64) + 2|0); - $66 = HEAP8[$65>>0]|0; - $67 = $66&255; - $68 = $63 | $67; - $69 = ($68|0)<(0); - $70 = $69 << 31 >> 31; - $71 = $lhs; - $72 = $71; - HEAP32[$72>>2] = $68; - $73 = (($71) + 4)|0; - $74 = $73; - HEAP32[$74>>2] = $70; - break; - } - case 7: case 0: { - $225 = HEAP32[$1>>2]|0; - $226 = HEAP32[$2>>2]|0; - $227 = HEAP32[$3>>2]|0; - $228 = (_sqlite3VdbeRecordCompare($225,$226,$227,0)|0); - HEAP32[$0>>2] = $228; - $286 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($286|0); - break; - } - default: { - $229 = HEAP32[$1>>2]|0; - $230 = HEAP32[$2>>2]|0; - $231 = HEAP32[$3>>2]|0; - $232 = (_sqlite3VdbeRecordCompare($229,$230,$231,0)|0); - HEAP32[$0>>2] = $232; - $286 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($286|0); - } - } - } while(0); - $233 = $v; - $234 = $233; - $235 = HEAP32[$234>>2]|0; - $236 = (($233) + 4)|0; - $237 = $236; - $238 = HEAP32[$237>>2]|0; - $239 = $lhs; - $240 = $239; - $241 = HEAP32[$240>>2]|0; - $242 = (($239) + 4)|0; - $243 = $242; - $244 = HEAP32[$243>>2]|0; - $245 = ($238|0)>($244|0); - $246 = ($238|0)==($244|0); - $247 = ($235>>>0)>($241>>>0); - $248 = $246 & $247; - $249 = $245 | $248; - do { - if ($249) { - $250 = HEAP32[$3>>2]|0; - $251 = (($250) + 12|0); - $252 = HEAP32[$251>>2]|0; - HEAP32[$res>>2] = $252; - } else { - $253 = $v; - $254 = $253; - $255 = HEAP32[$254>>2]|0; - $256 = (($253) + 4)|0; - $257 = $256; - $258 = HEAP32[$257>>2]|0; - $259 = $lhs; - $260 = $259; - $261 = HEAP32[$260>>2]|0; - $262 = (($259) + 4)|0; - $263 = $262; - $264 = HEAP32[$263>>2]|0; - $265 = ($258|0)<($264|0); - $266 = ($258|0)==($264|0); - $267 = ($255>>>0)<($261>>>0); - $268 = $266 & $267; - $269 = $265 | $268; - $270 = HEAP32[$3>>2]|0; - if ($269) { - $271 = (($270) + 16|0); - $272 = HEAP32[$271>>2]|0; - HEAP32[$res>>2] = $272; - break; - } - $273 = (($270) + 4|0); - $274 = HEAP16[$273>>1]|0; - $275 = $274&65535; - $276 = ($275|0)>(1); - if ($276) { - $277 = HEAP32[$1>>2]|0; - $278 = HEAP32[$2>>2]|0; - $279 = HEAP32[$3>>2]|0; - $280 = (_sqlite3VdbeRecordCompare($277,$278,$279,1)|0); - HEAP32[$res>>2] = $280; - break; - } else { - $281 = HEAP32[$3>>2]|0; - $282 = (($281) + 6|0); - $283 = HEAP8[$282>>0]|0; - $284 = $283 << 24 >> 24; - HEAP32[$res>>2] = $284; - break; - } - } - } while(0); - $285 = HEAP32[$res>>2]|0; - HEAP32[$0>>2] = $285; - $286 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($286|0); -} -function _vdbeRecordCompareString($nKey1,$pKey1,$pPKey2,$bSkip) { - $nKey1 = $nKey1|0; - $pKey1 = $pKey1|0; - $pPKey2 = $pPKey2|0; - $bSkip = $bSkip|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; - var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; - var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; - var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; - var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; - var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aKey1 = 0, $nCmp = 0, $nStr = 0, $res = 0, $serial_type = 0, $szHdr = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $4 = sp + 24|0; - $aKey1 = sp + 20|0; - $serial_type = sp + 16|0; - $res = sp + 12|0; - $nCmp = sp + 8|0; - $nStr = sp + 4|0; - $szHdr = sp; - HEAP32[$1>>2] = $nKey1; - HEAP32[$2>>2] = $pKey1; - HEAP32[$3>>2] = $pPKey2; - HEAP32[$4>>2] = $bSkip; - $5 = HEAP32[$2>>2]|0; - HEAP32[$aKey1>>2] = $5; - $6 = HEAP32[$aKey1>>2]|0; - $7 = (($6) + 1|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - $10 = ($9|0)<(128); - $11 = HEAP32[$aKey1>>2]|0; - $12 = (($11) + 1|0); - if ($10) { - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - HEAP32[$serial_type>>2] = $14; - } else { - (_sqlite3GetVarint32($12,$serial_type)|0); - } - $15 = HEAP32[$serial_type>>2]|0; - $16 = ($15|0)<(12); - do { - if ($16) { - $17 = HEAP32[$3>>2]|0; - $18 = (($17) + 12|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$res>>2] = $19; - } else { - $20 = HEAP32[$serial_type>>2]|0; - $21 = $20 & 1; - $22 = ($21|0)!=(0); - if (!($22)) { - $23 = HEAP32[$3>>2]|0; - $24 = (($23) + 16|0); - $25 = HEAP32[$24>>2]|0; - HEAP32[$res>>2] = $25; - break; - } - $26 = HEAP32[$aKey1>>2]|0; - $27 = HEAP8[$26>>0]|0; - $28 = $27&255; - HEAP32[$szHdr>>2] = $28; - $29 = HEAP32[$serial_type>>2]|0; - $30 = (($29) - 12)|0; - $31 = (($30|0) / 2)&-1; - HEAP32[$nStr>>2] = $31; - $32 = HEAP32[$szHdr>>2]|0; - $33 = HEAP32[$nStr>>2]|0; - $34 = (($32) + ($33))|0; - $35 = HEAP32[$1>>2]|0; - $36 = ($34|0)>($35|0); - if ($36) { - $37 = (_sqlite3CorruptError(65455)|0); - $38 = $37&255; - $39 = HEAP32[$3>>2]|0; - $40 = (($39) + 7|0); - HEAP8[$40>>0] = $38; - HEAP32[$0>>2] = 0; - $104 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($104|0); - } - $41 = HEAP32[$3>>2]|0; - $42 = (($41) + 8|0); - $43 = HEAP32[$42>>2]|0; - $44 = (($43) + 24|0); - $45 = HEAP32[$44>>2]|0; - $46 = HEAP32[$nStr>>2]|0; - $47 = ($45|0)<($46|0); - if ($47) { - $48 = HEAP32[$3>>2]|0; - $49 = (($48) + 8|0); - $50 = HEAP32[$49>>2]|0; - $51 = (($50) + 24|0); - $52 = HEAP32[$51>>2]|0; - $54 = $52; - } else { - $53 = HEAP32[$nStr>>2]|0; - $54 = $53; - } - HEAP32[$nCmp>>2] = $54; - $55 = HEAP32[$szHdr>>2]|0; - $56 = HEAP32[$aKey1>>2]|0; - $57 = (($56) + ($55)|0); - $58 = HEAP32[$3>>2]|0; - $59 = (($58) + 8|0); - $60 = HEAP32[$59>>2]|0; - $61 = (($60) + 4|0); - $62 = HEAP32[$61>>2]|0; - $63 = HEAP32[$nCmp>>2]|0; - $64 = (_memcmp($57,$62,$63)|0); - HEAP32[$res>>2] = $64; - $65 = HEAP32[$res>>2]|0; - $66 = ($65|0)==(0); - if (!($66)) { - $96 = HEAP32[$res>>2]|0; - $97 = ($96|0)>(0); - $98 = HEAP32[$3>>2]|0; - if ($97) { - $99 = (($98) + 16|0); - $100 = HEAP32[$99>>2]|0; - HEAP32[$res>>2] = $100; - break; - } else { - $101 = (($98) + 12|0); - $102 = HEAP32[$101>>2]|0; - HEAP32[$res>>2] = $102; - break; - } - } - $67 = HEAP32[$nStr>>2]|0; - $68 = HEAP32[$3>>2]|0; - $69 = (($68) + 8|0); - $70 = HEAP32[$69>>2]|0; - $71 = (($70) + 24|0); - $72 = HEAP32[$71>>2]|0; - $73 = (($67) - ($72))|0; - HEAP32[$res>>2] = $73; - $74 = HEAP32[$res>>2]|0; - $75 = ($74|0)==(0); - if ($75) { - $76 = HEAP32[$3>>2]|0; - $77 = (($76) + 4|0); - $78 = HEAP16[$77>>1]|0; - $79 = $78&65535; - $80 = ($79|0)>(1); - if ($80) { - $81 = HEAP32[$1>>2]|0; - $82 = HEAP32[$2>>2]|0; - $83 = HEAP32[$3>>2]|0; - $84 = (_sqlite3VdbeRecordCompare($81,$82,$83,1)|0); - HEAP32[$res>>2] = $84; - break; - } else { - $85 = HEAP32[$3>>2]|0; - $86 = (($85) + 6|0); - $87 = HEAP8[$86>>0]|0; - $88 = $87 << 24 >> 24; - HEAP32[$res>>2] = $88; - break; - } - } else { - $89 = HEAP32[$res>>2]|0; - $90 = ($89|0)>(0); - $91 = HEAP32[$3>>2]|0; - if ($90) { - $92 = (($91) + 16|0); - $93 = HEAP32[$92>>2]|0; - HEAP32[$res>>2] = $93; - break; - } else { - $94 = (($91) + 12|0); - $95 = HEAP32[$94>>2]|0; - HEAP32[$res>>2] = $95; - break; - } - } - } - } while(0); - $103 = HEAP32[$res>>2]|0; - HEAP32[$0>>2] = $103; - $104 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($104|0); -} -function _sqlite3VdbeRecordCompare($nKey1,$pKey1,$pPKey2,$bSkip) { - $nKey1 = $nKey1|0; - $pKey1 = $pKey1|0; - $pPKey2 = $pPKey2|0; - $bSkip = $bSkip|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0.0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0.0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0.0, $184 = 0.0, $185 = 0.0, $186 = 0, $187 = 0.0, $188 = 0.0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; - var $80 = 0, $81 = 0.0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0.0, $88 = 0.0, $89 = 0, $9 = 0, $90 = 0, $91 = 0.0, $92 = 0.0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; - var $99 = 0, $aKey1 = 0, $d1 = 0, $i = 0, $idx1 = 0, $lhs = 0, $lhs3 = 0, $mem1 = 0, $nCmp = 0, $nCmp4 = 0, $nStr = 0, $pKeyInfo = 0, $pRhs = 0, $rc = 0, $rhs = 0, $rhs1 = 0, $rhs2 = 0, $s1 = 0, $serial_type = 0, $szHdr1 = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 160|0; - $0 = sp + 148|0; - $1 = sp + 144|0; - $2 = sp + 140|0; - $3 = sp + 136|0; - $4 = sp + 132|0; - $d1 = sp + 128|0; - $i = sp + 124|0; - $szHdr1 = sp + 120|0; - $idx1 = sp + 116|0; - $rc = sp + 112|0; - $pRhs = sp + 108|0; - $pKeyInfo = sp + 104|0; - $aKey1 = sp + 100|0; - $mem1 = sp + 40|0; - $s1 = sp + 96|0; - $serial_type = sp + 92|0; - $rhs = sp + 32|0; - $lhs = sp + 24|0; - $rhs1 = sp + 16|0; - $rhs2 = sp + 8|0; - $lhs3 = sp; - $nCmp = sp + 88|0; - $nStr = sp + 84|0; - $nCmp4 = sp + 80|0; - HEAP32[$1>>2] = $nKey1; - HEAP32[$2>>2] = $pKey1; - HEAP32[$3>>2] = $pPKey2; - HEAP32[$4>>2] = $bSkip; - HEAP32[$rc>>2] = 0; - $5 = HEAP32[$3>>2]|0; - $6 = (($5) + 8|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pRhs>>2] = $7; - $8 = HEAP32[$3>>2]|0; - $9 = HEAP32[$8>>2]|0; - HEAP32[$pKeyInfo>>2] = $9; - $10 = HEAP32[$2>>2]|0; - HEAP32[$aKey1>>2] = $10; - $11 = HEAP32[$4>>2]|0; - $12 = ($11|0)!=(0); - $13 = HEAP32[$aKey1>>2]|0; - do { - if ($12) { - $14 = (($13) + 1|0); - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - $17 = ($16|0)<(128); - $18 = HEAP32[$aKey1>>2]|0; - $19 = (($18) + 1|0); - if ($17) { - $20 = HEAP8[$19>>0]|0; - $21 = $20&255; - HEAP32[$s1>>2] = $21; - $25 = 1; - } else { - $22 = (_sqlite3GetVarint32($19,$s1)|0); - $23 = $22&255; - $25 = $23; - } - $24 = $25&255; - $26 = $24&255; - $27 = (1 + ($26))|0; - HEAP32[$idx1>>2] = $27; - $28 = HEAP32[$aKey1>>2]|0; - $29 = HEAP8[$28>>0]|0; - $30 = $29&255; - HEAP32[$szHdr1>>2] = $30; - $31 = HEAP32[$szHdr1>>2]|0; - $32 = HEAP32[$s1>>2]|0; - $33 = (_sqlite3VdbeSerialTypeLen($32)|0); - $34 = (($31) + ($33))|0; - HEAP32[$d1>>2] = $34; - HEAP32[$i>>2] = 1; - $35 = HEAP32[$pRhs>>2]|0; - $36 = (($35) + 40|0); - HEAP32[$pRhs>>2] = $36; - } else { - $37 = HEAP8[$13>>0]|0; - $38 = $37&255; - $39 = ($38|0)<(128); - $40 = HEAP32[$aKey1>>2]|0; - if ($39) { - $41 = HEAP8[$40>>0]|0; - $42 = $41&255; - HEAP32[$szHdr1>>2] = $42; - $46 = 1; - } else { - $43 = (_sqlite3GetVarint32($40,$szHdr1)|0); - $44 = $43&255; - $46 = $44; - } - $45 = $46&255; - $47 = $45&255; - HEAP32[$idx1>>2] = $47; - $48 = HEAP32[$szHdr1>>2]|0; - HEAP32[$d1>>2] = $48; - $49 = HEAP32[$d1>>2]|0; - $50 = HEAP32[$1>>2]|0; - $51 = ($49>>>0)>($50>>>0); - if (!($51)) { - HEAP32[$i>>2] = 0; - break; - } - $52 = (_sqlite3CorruptError(65169)|0); - $53 = $52&255; - $54 = HEAP32[$3>>2]|0; - $55 = (($54) + 7|0); - HEAP8[$55>>0] = $53; - HEAP32[$0>>2] = 0; - $380 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($380|0); - } - } while(0); - L16: while(1) { - $56 = HEAP32[$pRhs>>2]|0; - $57 = (($56) + 28|0); - $58 = HEAP16[$57>>1]|0; - $59 = $58&65535; - $60 = $59 & 4; - $61 = ($60|0)!=(0); - do { - if ($61) { - $62 = HEAP32[$idx1>>2]|0; - $63 = HEAP32[$aKey1>>2]|0; - $64 = (($63) + ($62)|0); - $65 = HEAP8[$64>>0]|0; - $66 = $65&255; - HEAP32[$serial_type>>2] = $66; - $67 = HEAP32[$serial_type>>2]|0; - $68 = ($67>>>0)>=(12); - if ($68) { - HEAP32[$rc>>2] = 1; - break; - } - $69 = HEAP32[$serial_type>>2]|0; - $70 = ($69|0)==(0); - if ($70) { - HEAP32[$rc>>2] = -1; - break; - } - $71 = HEAP32[$serial_type>>2]|0; - $72 = ($71|0)==(7); - if ($72) { - $73 = HEAP32[$pRhs>>2]|0; - $74 = (($73) + 16|0); - $75 = $74; - $76 = $75; - $77 = HEAP32[$76>>2]|0; - $78 = (($75) + 4)|0; - $79 = $78; - $80 = HEAP32[$79>>2]|0; - $81 = (+($77>>>0)) + (4294967296.0*(+($80|0))); - HEAPF64[$rhs>>3] = $81; - $82 = HEAP32[$d1>>2]|0; - $83 = HEAP32[$aKey1>>2]|0; - $84 = (($83) + ($82)|0); - $85 = HEAP32[$serial_type>>2]|0; - (_sqlite3VdbeSerialGet($84,$85,$mem1)|0); - $86 = (($mem1) + 8|0); - $87 = +HEAPF64[$86>>3]; - $88 = +HEAPF64[$rhs>>3]; - $89 = $87 < $88; - if ($89) { - HEAP32[$rc>>2] = -1; - break; - } - $90 = (($mem1) + 8|0); - $91 = +HEAPF64[$90>>3]; - $92 = +HEAPF64[$rhs>>3]; - $93 = $91 > $92; - if (!($93)) { - break; - } - HEAP32[$rc>>2] = 1; - break; - } else { - $94 = HEAP32[$serial_type>>2]|0; - $95 = HEAP32[$d1>>2]|0; - $96 = HEAP32[$aKey1>>2]|0; - $97 = (($96) + ($95)|0); - $98 = (_vdbeRecordDecodeInt($94,$97)|0); - $99 = tempRet0; - $100 = $lhs; - $101 = $100; - HEAP32[$101>>2] = $98; - $102 = (($100) + 4)|0; - $103 = $102; - HEAP32[$103>>2] = $99; - $104 = HEAP32[$pRhs>>2]|0; - $105 = (($104) + 16|0); - $106 = $105; - $107 = $106; - $108 = HEAP32[$107>>2]|0; - $109 = (($106) + 4)|0; - $110 = $109; - $111 = HEAP32[$110>>2]|0; - $112 = $rhs1; - $113 = $112; - HEAP32[$113>>2] = $108; - $114 = (($112) + 4)|0; - $115 = $114; - HEAP32[$115>>2] = $111; - $116 = $lhs; - $117 = $116; - $118 = HEAP32[$117>>2]|0; - $119 = (($116) + 4)|0; - $120 = $119; - $121 = HEAP32[$120>>2]|0; - $122 = $rhs1; - $123 = $122; - $124 = HEAP32[$123>>2]|0; - $125 = (($122) + 4)|0; - $126 = $125; - $127 = HEAP32[$126>>2]|0; - $128 = ($121|0)<($127|0); - $129 = ($121|0)==($127|0); - $130 = ($118>>>0)<($124>>>0); - $131 = $129 & $130; - $132 = $128 | $131; - if ($132) { - HEAP32[$rc>>2] = -1; - break; - } - $133 = $lhs; - $134 = $133; - $135 = HEAP32[$134>>2]|0; - $136 = (($133) + 4)|0; - $137 = $136; - $138 = HEAP32[$137>>2]|0; - $139 = $rhs1; - $140 = $139; - $141 = HEAP32[$140>>2]|0; - $142 = (($139) + 4)|0; - $143 = $142; - $144 = HEAP32[$143>>2]|0; - $145 = ($138|0)>($144|0); - $146 = ($138|0)==($144|0); - $147 = ($135>>>0)>($141>>>0); - $148 = $146 & $147; - $149 = $145 | $148; - if (!($149)) { - break; - } - HEAP32[$rc>>2] = 1; - break; - } - } else { - $150 = HEAP32[$pRhs>>2]|0; - $151 = (($150) + 28|0); - $152 = HEAP16[$151>>1]|0; - $153 = $152&65535; - $154 = $153 & 8; - $155 = ($154|0)!=(0); - if ($155) { - $156 = HEAP32[$idx1>>2]|0; - $157 = HEAP32[$aKey1>>2]|0; - $158 = (($157) + ($156)|0); - $159 = HEAP8[$158>>0]|0; - $160 = $159&255; - HEAP32[$serial_type>>2] = $160; - $161 = HEAP32[$serial_type>>2]|0; - $162 = ($161>>>0)>=(12); - if ($162) { - HEAP32[$rc>>2] = 1; - break; - } - $163 = HEAP32[$serial_type>>2]|0; - $164 = ($163|0)==(0); - if ($164) { - HEAP32[$rc>>2] = -1; - break; - } - $165 = HEAP32[$pRhs>>2]|0; - $166 = (($165) + 8|0); - $167 = +HEAPF64[$166>>3]; - HEAPF64[$rhs2>>3] = $167; - $168 = HEAP32[$d1>>2]|0; - $169 = HEAP32[$aKey1>>2]|0; - $170 = (($169) + ($168)|0); - $171 = HEAP32[$serial_type>>2]|0; - (_sqlite3VdbeSerialGet($170,$171,$mem1)|0); - $172 = HEAP32[$serial_type>>2]|0; - $173 = ($172|0)==(7); - if ($173) { - $174 = (($mem1) + 8|0); - $175 = +HEAPF64[$174>>3]; - HEAPF64[$lhs3>>3] = $175; - } else { - $176 = (($mem1) + 16|0); - $177 = $176; - $178 = $177; - $179 = HEAP32[$178>>2]|0; - $180 = (($177) + 4)|0; - $181 = $180; - $182 = HEAP32[$181>>2]|0; - $183 = (+($179>>>0)) + (4294967296.0*(+($182|0))); - HEAPF64[$lhs3>>3] = $183; - } - $184 = +HEAPF64[$lhs3>>3]; - $185 = +HEAPF64[$rhs2>>3]; - $186 = $184 < $185; - if ($186) { - HEAP32[$rc>>2] = -1; - break; - } - $187 = +HEAPF64[$lhs3>>3]; - $188 = +HEAPF64[$rhs2>>3]; - $189 = $187 > $188; - if (!($189)) { - break; - } - HEAP32[$rc>>2] = 1; - break; - } - $190 = HEAP32[$pRhs>>2]|0; - $191 = (($190) + 28|0); - $192 = HEAP16[$191>>1]|0; - $193 = $192&65535; - $194 = $193 & 2; - $195 = ($194|0)!=(0); - if (!($195)) { - $279 = HEAP32[$pRhs>>2]|0; - $280 = (($279) + 28|0); - $281 = HEAP16[$280>>1]|0; - $282 = $281&65535; - $283 = $282 & 16; - $284 = ($283|0)!=(0); - $285 = HEAP32[$idx1>>2]|0; - $286 = HEAP32[$aKey1>>2]|0; - $287 = (($286) + ($285)|0); - $288 = HEAP8[$287>>0]|0; - $289 = $288&255; - if (!($284)) { - HEAP32[$serial_type>>2] = $289; - $338 = HEAP32[$serial_type>>2]|0; - $339 = ($338|0)!=(0); - $340 = $339&1; - HEAP32[$rc>>2] = $340; - break; - } - $290 = ($289|0)<(128); - $291 = HEAP32[$idx1>>2]|0; - $292 = HEAP32[$aKey1>>2]|0; - $293 = (($292) + ($291)|0); - if ($290) { - $294 = HEAP8[$293>>0]|0; - $295 = $294&255; - HEAP32[$serial_type>>2] = $295; - } else { - (_sqlite3GetVarint32($293,$serial_type)|0); - } - $296 = HEAP32[$serial_type>>2]|0; - $297 = ($296>>>0)<(12); - if (!($297)) { - $298 = HEAP32[$serial_type>>2]|0; - $299 = $298 & 1; - $300 = ($299|0)!=(0); - if (!($300)) { - $301 = HEAP32[$serial_type>>2]|0; - $302 = (($301) - 12)|0; - $303 = (($302>>>0) / 2)&-1; - HEAP32[$nStr>>2] = $303; - $304 = HEAP32[$d1>>2]|0; - $305 = HEAP32[$nStr>>2]|0; - $306 = (($304) + ($305))|0; - $307 = HEAP32[$1>>2]|0; - $308 = ($306>>>0)>($307>>>0); - if ($308) { - label = 63; - break L16; - } - $313 = HEAP32[$nStr>>2]|0; - $314 = HEAP32[$pRhs>>2]|0; - $315 = (($314) + 24|0); - $316 = HEAP32[$315>>2]|0; - $317 = ($313|0)<($316|0); - if ($317) { - $318 = HEAP32[$nStr>>2]|0; - $322 = $318; - } else { - $319 = HEAP32[$pRhs>>2]|0; - $320 = (($319) + 24|0); - $321 = HEAP32[$320>>2]|0; - $322 = $321; - } - HEAP32[$nCmp4>>2] = $322; - $323 = HEAP32[$d1>>2]|0; - $324 = HEAP32[$aKey1>>2]|0; - $325 = (($324) + ($323)|0); - $326 = HEAP32[$pRhs>>2]|0; - $327 = (($326) + 4|0); - $328 = HEAP32[$327>>2]|0; - $329 = HEAP32[$nCmp4>>2]|0; - $330 = (_memcmp($325,$328,$329)|0); - HEAP32[$rc>>2] = $330; - $331 = HEAP32[$rc>>2]|0; - $332 = ($331|0)==(0); - if (!($332)) { - break; - } - $333 = HEAP32[$nStr>>2]|0; - $334 = HEAP32[$pRhs>>2]|0; - $335 = (($334) + 24|0); - $336 = HEAP32[$335>>2]|0; - $337 = (($333) - ($336))|0; - HEAP32[$rc>>2] = $337; - break; - } - } - HEAP32[$rc>>2] = -1; - break; - } - $196 = HEAP32[$idx1>>2]|0; - $197 = HEAP32[$aKey1>>2]|0; - $198 = (($197) + ($196)|0); - $199 = HEAP8[$198>>0]|0; - $200 = $199&255; - $201 = ($200|0)<(128); - $202 = HEAP32[$idx1>>2]|0; - $203 = HEAP32[$aKey1>>2]|0; - $204 = (($203) + ($202)|0); - if ($201) { - $205 = HEAP8[$204>>0]|0; - $206 = $205&255; - HEAP32[$serial_type>>2] = $206; - } else { - (_sqlite3GetVarint32($204,$serial_type)|0); - } - $207 = HEAP32[$serial_type>>2]|0; - $208 = ($207>>>0)<(12); - if ($208) { - HEAP32[$rc>>2] = -1; - break; - } - $209 = HEAP32[$serial_type>>2]|0; - $210 = $209 & 1; - $211 = ($210|0)!=(0); - if (!($211)) { - HEAP32[$rc>>2] = 1; - break; - } - $212 = HEAP32[$serial_type>>2]|0; - $213 = (($212) - 12)|0; - $214 = (($213>>>0) / 2)&-1; - $215 = (($mem1) + 24|0); - HEAP32[$215>>2] = $214; - $216 = HEAP32[$d1>>2]|0; - $217 = (($mem1) + 24|0); - $218 = HEAP32[$217>>2]|0; - $219 = (($216) + ($218))|0; - $220 = HEAP32[$1>>2]|0; - $221 = ($219>>>0)>($220>>>0); - if ($221) { - label = 47; - break L16; - } - $226 = HEAP32[$i>>2]|0; - $227 = HEAP32[$pKeyInfo>>2]|0; - $228 = (($227) + 20|0); - $229 = (($228) + ($226<<2)|0); - $230 = HEAP32[$229>>2]|0; - $231 = ($230|0)!=(0|0); - if ($231) { - $232 = HEAP32[$pKeyInfo>>2]|0; - $233 = (($232) + 4|0); - $234 = HEAP8[$233>>0]|0; - $235 = (($mem1) + 30|0); - HEAP8[$235>>0] = $234; - $236 = HEAP32[$pKeyInfo>>2]|0; - $237 = (($236) + 12|0); - $238 = HEAP32[$237>>2]|0; - HEAP32[$mem1>>2] = $238; - $239 = (($mem1) + 28|0); - HEAP16[$239>>1] = 2; - $240 = HEAP32[$d1>>2]|0; - $241 = HEAP32[$aKey1>>2]|0; - $242 = (($241) + ($240)|0); - $243 = (($mem1) + 4|0); - HEAP32[$243>>2] = $242; - $244 = HEAP32[$pRhs>>2]|0; - $245 = HEAP32[$i>>2]|0; - $246 = HEAP32[$pKeyInfo>>2]|0; - $247 = (($246) + 20|0); - $248 = (($247) + ($245<<2)|0); - $249 = HEAP32[$248>>2]|0; - $250 = (_vdbeCompareMemString($mem1,$244,$249)|0); - HEAP32[$rc>>2] = $250; - break; - } - $251 = (($mem1) + 24|0); - $252 = HEAP32[$251>>2]|0; - $253 = HEAP32[$pRhs>>2]|0; - $254 = (($253) + 24|0); - $255 = HEAP32[$254>>2]|0; - $256 = ($252|0)<($255|0); - if ($256) { - $257 = (($mem1) + 24|0); - $258 = HEAP32[$257>>2]|0; - $262 = $258; - } else { - $259 = HEAP32[$pRhs>>2]|0; - $260 = (($259) + 24|0); - $261 = HEAP32[$260>>2]|0; - $262 = $261; - } - HEAP32[$nCmp>>2] = $262; - $263 = HEAP32[$d1>>2]|0; - $264 = HEAP32[$aKey1>>2]|0; - $265 = (($264) + ($263)|0); - $266 = HEAP32[$pRhs>>2]|0; - $267 = (($266) + 4|0); - $268 = HEAP32[$267>>2]|0; - $269 = HEAP32[$nCmp>>2]|0; - $270 = (_memcmp($265,$268,$269)|0); - HEAP32[$rc>>2] = $270; - $271 = HEAP32[$rc>>2]|0; - $272 = ($271|0)==(0); - if ($272) { - $273 = (($mem1) + 24|0); - $274 = HEAP32[$273>>2]|0; - $275 = HEAP32[$pRhs>>2]|0; - $276 = (($275) + 24|0); - $277 = HEAP32[$276>>2]|0; - $278 = (($274) - ($277))|0; - HEAP32[$rc>>2] = $278; - } - } - } while(0); - $341 = HEAP32[$rc>>2]|0; - $342 = ($341|0)!=(0); - $343 = HEAP32[$i>>2]|0; - if ($342) { - label = 71; - break; - } - $353 = (($343) + 1)|0; - HEAP32[$i>>2] = $353; - $354 = HEAP32[$pRhs>>2]|0; - $355 = (($354) + 40|0); - HEAP32[$pRhs>>2] = $355; - $356 = HEAP32[$serial_type>>2]|0; - $357 = (_sqlite3VdbeSerialTypeLen($356)|0); - $358 = HEAP32[$d1>>2]|0; - $359 = (($358) + ($357))|0; - HEAP32[$d1>>2] = $359; - $360 = HEAP32[$serial_type>>2]|0; - $361 = (_sqlite3VarintLen($360,0)|0); - $362 = HEAP32[$idx1>>2]|0; - $363 = (($362) + ($361))|0; - HEAP32[$idx1>>2] = $363; - $364 = HEAP32[$idx1>>2]|0; - $365 = HEAP32[$szHdr1>>2]|0; - $366 = ($364>>>0)<($365>>>0); - if (!($366)) { - label = 77; - break; - } - $367 = HEAP32[$i>>2]|0; - $368 = HEAP32[$3>>2]|0; - $369 = (($368) + 4|0); - $370 = HEAP16[$369>>1]|0; - $371 = $370&65535; - $372 = ($367|0)<($371|0); - if (!($372)) { - label = 77; - break; - } - $373 = HEAP32[$d1>>2]|0; - $374 = HEAP32[$1>>2]|0; - $375 = ($373>>>0)<=($374>>>0); - if (!($375)) { - label = 77; - break; - } - } - if ((label|0) == 47) { - $222 = (_sqlite3CorruptError(65248)|0); - $223 = $222&255; - $224 = HEAP32[$3>>2]|0; - $225 = (($224) + 7|0); - HEAP8[$225>>0] = $223; - HEAP32[$0>>2] = 0; - $380 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($380|0); - } - else if ((label|0) == 63) { - $309 = (_sqlite3CorruptError(65275)|0); - $310 = $309&255; - $311 = HEAP32[$3>>2]|0; - $312 = (($311) + 7|0); - HEAP8[$312>>0] = $310; - HEAP32[$0>>2] = 0; - $380 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($380|0); - } - else if ((label|0) == 71) { - $344 = HEAP32[$pKeyInfo>>2]|0; - $345 = (($344) + 16|0); - $346 = HEAP32[$345>>2]|0; - $347 = (($346) + ($343)|0); - $348 = HEAP8[$347>>0]|0; - $349 = ($348<<24>>24)!=(0); - if ($349) { - $350 = HEAP32[$rc>>2]|0; - $351 = (0 - ($350))|0; - HEAP32[$rc>>2] = $351; - } - $352 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $352; - $380 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($380|0); - } - else if ((label|0) == 77) { - $376 = HEAP32[$3>>2]|0; - $377 = (($376) + 6|0); - $378 = HEAP8[$377>>0]|0; - $379 = $378 << 24 >> 24; - HEAP32[$0>>2] = $379; - $380 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($380|0); - } - return 0|0; -} -function _sqlite3VdbeSerialTypeLen($serial_type) { - $serial_type = $serial_type|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $serial_type; - $2 = HEAP32[$1>>2]|0; - $3 = ($2>>>0)>=(12); - $4 = HEAP32[$1>>2]|0; - if ($3) { - $5 = (($4) - 12)|0; - $6 = (($5>>>0) / 2)&-1; - HEAP32[$0>>2] = $6; - $10 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($10|0); - } else { - $7 = (24216 + ($4)|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - HEAP32[$0>>2] = $9; - $10 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($10|0); - } - return 0|0; -} -function _sqlite3VdbeSerialGet($buf,$serial_type,$pMem) { - $buf = $buf|0; - $serial_type = $serial_type|0; - $pMem = $pMem|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0.0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; - var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; - var $99 = 0, $len = 0, $x = 0, $y = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $x = sp; - $y = sp + 12|0; - $len = sp + 8|0; - HEAP32[$1>>2] = $buf; - HEAP32[$2>>2] = $serial_type; - HEAP32[$3>>2] = $pMem; - $4 = HEAP32[$2>>2]|0; - switch ($4|0) { - case 2: { - $20 = HEAP32[$1>>2]|0; - $21 = HEAP8[$20>>0]|0; - $22 = $21 << 24 >> 24; - $23 = $22<<8; - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 1|0); - $26 = HEAP8[$25>>0]|0; - $27 = $26&255; - $28 = $23 | $27; - $29 = ($28|0)<(0); - $30 = $29 << 31 >> 31; - $31 = HEAP32[$3>>2]|0; - $32 = (($31) + 16|0); - $33 = $32; - $34 = $33; - HEAP32[$34>>2] = $28; - $35 = (($33) + 4)|0; - $36 = $35; - HEAP32[$36>>2] = $30; - $37 = HEAP32[$3>>2]|0; - $38 = (($37) + 28|0); - HEAP16[$38>>1] = 4; - HEAP32[$0>>2] = 2; - $260 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($260|0); - break; - } - case 3: { - $39 = HEAP32[$1>>2]|0; - $40 = HEAP8[$39>>0]|0; - $41 = $40 << 24 >> 24; - $42 = $41<<16; - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + 1|0); - $45 = HEAP8[$44>>0]|0; - $46 = $45&255; - $47 = $46 << 8; - $48 = $42 | $47; - $49 = HEAP32[$1>>2]|0; - $50 = (($49) + 2|0); - $51 = HEAP8[$50>>0]|0; - $52 = $51&255; - $53 = $48 | $52; - $54 = ($53|0)<(0); - $55 = $54 << 31 >> 31; - $56 = HEAP32[$3>>2]|0; - $57 = (($56) + 16|0); - $58 = $57; - $59 = $58; - HEAP32[$59>>2] = $53; - $60 = (($58) + 4)|0; - $61 = $60; - HEAP32[$61>>2] = $55; - $62 = HEAP32[$3>>2]|0; - $63 = (($62) + 28|0); - HEAP16[$63>>1] = 4; - HEAP32[$0>>2] = 3; - $260 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($260|0); - break; - } - case 1: { - $7 = HEAP32[$1>>2]|0; - $8 = HEAP8[$7>>0]|0; - $9 = $8 << 24 >> 24; - $10 = ($9|0)<(0); - $11 = $10 << 31 >> 31; - $12 = HEAP32[$3>>2]|0; - $13 = (($12) + 16|0); - $14 = $13; - $15 = $14; - HEAP32[$15>>2] = $9; - $16 = (($14) + 4)|0; - $17 = $16; - HEAP32[$17>>2] = $11; - $18 = HEAP32[$3>>2]|0; - $19 = (($18) + 28|0); - HEAP16[$19>>1] = 4; - HEAP32[$0>>2] = 1; - $260 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($260|0); - break; - } - case 5: { - $96 = HEAP32[$1>>2]|0; - $97 = (($96) + 2|0); - $98 = HEAP8[$97>>0]|0; - $99 = $98&255; - $100 = $99 << 24; - $101 = HEAP32[$1>>2]|0; - $102 = (($101) + 2|0); - $103 = (($102) + 1|0); - $104 = HEAP8[$103>>0]|0; - $105 = $104&255; - $106 = $105 << 16; - $107 = $100 | $106; - $108 = HEAP32[$1>>2]|0; - $109 = (($108) + 2|0); - $110 = (($109) + 2|0); - $111 = HEAP8[$110>>0]|0; - $112 = $111&255; - $113 = $112 << 8; - $114 = $107 | $113; - $115 = HEAP32[$1>>2]|0; - $116 = (($115) + 2|0); - $117 = (($116) + 3|0); - $118 = HEAP8[$117>>0]|0; - $119 = $118&255; - $120 = $114 | $119; - $121 = HEAP32[$1>>2]|0; - $122 = HEAP8[$121>>0]|0; - $123 = $122 << 24 >> 24; - $124 = $123<<8; - $125 = HEAP32[$1>>2]|0; - $126 = (($125) + 1|0); - $127 = HEAP8[$126>>0]|0; - $128 = $127&255; - $129 = $124 | $128; - $130 = ($129|0)<(0); - $131 = $130 << 31 >> 31; - $132 = (___muldi3(0,1,($129|0),($131|0))|0); - $133 = tempRet0; - $134 = (_i64Add(($120|0),0,($132|0),($133|0))|0); - $135 = tempRet0; - $136 = HEAP32[$3>>2]|0; - $137 = (($136) + 16|0); - $138 = $137; - $139 = $138; - HEAP32[$139>>2] = $134; - $140 = (($138) + 4)|0; - $141 = $140; - HEAP32[$141>>2] = $135; - $142 = HEAP32[$3>>2]|0; - $143 = (($142) + 28|0); - HEAP16[$143>>1] = 4; - HEAP32[$0>>2] = 6; - $260 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($260|0); - break; - } - case 9: case 8: { - $232 = HEAP32[$2>>2]|0; - $233 = (($232) - 8)|0; - $234 = HEAP32[$3>>2]|0; - $235 = (($234) + 16|0); - $236 = $235; - $237 = $236; - HEAP32[$237>>2] = $233; - $238 = (($236) + 4)|0; - $239 = $238; - HEAP32[$239>>2] = 0; - $240 = HEAP32[$3>>2]|0; - $241 = (($240) + 28|0); - HEAP16[$241>>1] = 4; - HEAP32[$0>>2] = 0; - $260 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($260|0); - break; - } - case 4: { - $64 = HEAP32[$1>>2]|0; - $65 = HEAP8[$64>>0]|0; - $66 = $65&255; - $67 = $66 << 24; - $68 = HEAP32[$1>>2]|0; - $69 = (($68) + 1|0); - $70 = HEAP8[$69>>0]|0; - $71 = $70&255; - $72 = $71 << 16; - $73 = $67 | $72; - $74 = HEAP32[$1>>2]|0; - $75 = (($74) + 2|0); - $76 = HEAP8[$75>>0]|0; - $77 = $76&255; - $78 = $77 << 8; - $79 = $73 | $78; - $80 = HEAP32[$1>>2]|0; - $81 = (($80) + 3|0); - $82 = HEAP8[$81>>0]|0; - $83 = $82&255; - $84 = $79 | $83; - HEAP32[$y>>2] = $84; - $85 = HEAP32[$y>>2]|0; - $86 = ($85|0)<(0); - $87 = $86 << 31 >> 31; - $88 = HEAP32[$3>>2]|0; - $89 = (($88) + 16|0); - $90 = $89; - $91 = $90; - HEAP32[$91>>2] = $85; - $92 = (($90) + 4)|0; - $93 = $92; - HEAP32[$93>>2] = $87; - $94 = HEAP32[$3>>2]|0; - $95 = (($94) + 28|0); - HEAP16[$95>>1] = 4; - HEAP32[$0>>2] = 4; - $260 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($260|0); - break; - } - case 7: case 6: { - $144 = HEAP32[$1>>2]|0; - $145 = HEAP8[$144>>0]|0; - $146 = $145&255; - $147 = $146 << 24; - $148 = HEAP32[$1>>2]|0; - $149 = (($148) + 1|0); - $150 = HEAP8[$149>>0]|0; - $151 = $150&255; - $152 = $151 << 16; - $153 = $147 | $152; - $154 = HEAP32[$1>>2]|0; - $155 = (($154) + 2|0); - $156 = HEAP8[$155>>0]|0; - $157 = $156&255; - $158 = $157 << 8; - $159 = $153 | $158; - $160 = HEAP32[$1>>2]|0; - $161 = (($160) + 3|0); - $162 = HEAP8[$161>>0]|0; - $163 = $162&255; - $164 = $159 | $163; - $165 = $x; - $166 = $165; - HEAP32[$166>>2] = $164; - $167 = (($165) + 4)|0; - $168 = $167; - HEAP32[$168>>2] = 0; - $169 = HEAP32[$1>>2]|0; - $170 = (($169) + 4|0); - $171 = HEAP8[$170>>0]|0; - $172 = $171&255; - $173 = $172 << 24; - $174 = HEAP32[$1>>2]|0; - $175 = (($174) + 4|0); - $176 = (($175) + 1|0); - $177 = HEAP8[$176>>0]|0; - $178 = $177&255; - $179 = $178 << 16; - $180 = $173 | $179; - $181 = HEAP32[$1>>2]|0; - $182 = (($181) + 4|0); - $183 = (($182) + 2|0); - $184 = HEAP8[$183>>0]|0; - $185 = $184&255; - $186 = $185 << 8; - $187 = $180 | $186; - $188 = HEAP32[$1>>2]|0; - $189 = (($188) + 4|0); - $190 = (($189) + 3|0); - $191 = HEAP8[$190>>0]|0; - $192 = $191&255; - $193 = $187 | $192; - HEAP32[$y>>2] = $193; - $194 = $x; - $195 = $194; - $196 = HEAP32[$195>>2]|0; - $197 = (($194) + 4)|0; - $198 = $197; - $199 = HEAP32[$198>>2]|0; - $200 = HEAP32[$y>>2]|0; - $201 = $x; - $202 = $201; - HEAP32[$202>>2] = $200; - $203 = (($201) + 4)|0; - $204 = $203; - HEAP32[$204>>2] = $196; - $205 = HEAP32[$2>>2]|0; - $206 = ($205|0)==(6); - if ($206) { - $207 = $x; - $208 = $207; - $209 = HEAP32[$208>>2]|0; - $210 = (($207) + 4)|0; - $211 = $210; - $212 = HEAP32[$211>>2]|0; - $213 = HEAP32[$3>>2]|0; - $214 = (($213) + 16|0); - $215 = $214; - $216 = $215; - HEAP32[$216>>2] = $209; - $217 = (($215) + 4)|0; - $218 = $217; - HEAP32[$218>>2] = $212; - $219 = HEAP32[$3>>2]|0; - $220 = (($219) + 28|0); - HEAP16[$220>>1] = 4; - } else { - $221 = HEAP32[$3>>2]|0; - $222 = (($221) + 8|0); - ;HEAP32[$222+0>>2]=HEAP32[$x+0>>2]|0;HEAP32[$222+4>>2]=HEAP32[$x+4>>2]|0; - $223 = HEAP32[$3>>2]|0; - $224 = (($223) + 8|0); - $225 = +HEAPF64[$224>>3]; - $226 = (_sqlite3IsNaN($225)|0); - $227 = ($226|0)!=(0); - $228 = $227 ? 1 : 8; - $229 = $228&65535; - $230 = HEAP32[$3>>2]|0; - $231 = (($230) + 28|0); - HEAP16[$231>>1] = $229; - } - HEAP32[$0>>2] = 8; - $260 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($260|0); - break; - } - case 0: case 11: case 10: { - $5 = HEAP32[$3>>2]|0; - $6 = (($5) + 28|0); - HEAP16[$6>>1] = 1; - HEAP32[$0>>2] = 0; - $260 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($260|0); - break; - } - default: { - $242 = HEAP32[$2>>2]|0; - $243 = (($242) - 12)|0; - $244 = (($243>>>0) / 2)&-1; - HEAP32[$len>>2] = $244; - $245 = HEAP32[$1>>2]|0; - $246 = HEAP32[$3>>2]|0; - $247 = (($246) + 4|0); - HEAP32[$247>>2] = $245; - $248 = HEAP32[$len>>2]|0; - $249 = HEAP32[$3>>2]|0; - $250 = (($249) + 24|0); - HEAP32[$250>>2] = $248; - $251 = HEAP32[$3>>2]|0; - $252 = (($251) + 32|0); - HEAP32[$252>>2] = 0; - $253 = HEAP32[$2>>2]|0; - $254 = $253 & 1; - $255 = (24208 + ($254<<1)|0); - $256 = HEAP16[$255>>1]|0; - $257 = HEAP32[$3>>2]|0; - $258 = (($257) + 28|0); - HEAP16[$258>>1] = $256; - $259 = HEAP32[$len>>2]|0; - HEAP32[$0>>2] = $259; - $260 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($260|0); - } - } - return 0|0; -} -function _vdbeRecordDecodeInt($serial_type,$aKey) { - $serial_type = $serial_type|0; - $aKey = $aKey|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $21 = 0, $22 = 0, $23 = 0; - var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; - var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; - var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; - var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; - var $97 = 0, $98 = 0, $99 = 0, $x = 0, $y = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 8|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $y = sp + 16|0; - $x = sp; - HEAP32[$1>>2] = $serial_type; - HEAP32[$2>>2] = $aKey; - $3 = HEAP32[$1>>2]|0; - switch ($3|0) { - case 2: { - $13 = HEAP32[$2>>2]|0; - $14 = HEAP8[$13>>0]|0; - $15 = $14 << 24 >> 24; - $16 = $15<<8; - $17 = HEAP32[$2>>2]|0; - $18 = (($17) + 1|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = $16 | $20; - $22 = ($21|0)<(0); - $23 = $22 << 31 >> 31; - $24 = $0; - $25 = $24; - HEAP32[$25>>2] = $21; - $26 = (($24) + 4)|0; - $27 = $26; - HEAP32[$27>>2] = $23; - break; - } - case 5: { - $77 = HEAP32[$2>>2]|0; - $78 = (($77) + 2|0); - $79 = HEAP8[$78>>0]|0; - $80 = $79&255; - $81 = $80 << 24; - $82 = HEAP32[$2>>2]|0; - $83 = (($82) + 2|0); - $84 = (($83) + 1|0); - $85 = HEAP8[$84>>0]|0; - $86 = $85&255; - $87 = $86 << 16; - $88 = $81 | $87; - $89 = HEAP32[$2>>2]|0; - $90 = (($89) + 2|0); - $91 = (($90) + 2|0); - $92 = HEAP8[$91>>0]|0; - $93 = $92&255; - $94 = $93 << 8; - $95 = $88 | $94; - $96 = HEAP32[$2>>2]|0; - $97 = (($96) + 2|0); - $98 = (($97) + 3|0); - $99 = HEAP8[$98>>0]|0; - $100 = $99&255; - $101 = $95 | $100; - $102 = HEAP32[$2>>2]|0; - $103 = HEAP8[$102>>0]|0; - $104 = $103 << 24 >> 24; - $105 = $104<<8; - $106 = HEAP32[$2>>2]|0; - $107 = (($106) + 1|0); - $108 = HEAP8[$107>>0]|0; - $109 = $108&255; - $110 = $105 | $109; - $111 = ($110|0)<(0); - $112 = $111 << 31 >> 31; - $113 = (___muldi3(0,1,($110|0),($112|0))|0); - $114 = tempRet0; - $115 = (_i64Add(($101|0),0,($113|0),($114|0))|0); - $116 = tempRet0; - $117 = $0; - $118 = $117; - HEAP32[$118>>2] = $115; - $119 = (($117) + 4)|0; - $120 = $119; - HEAP32[$120>>2] = $116; - break; - } - case 3: { - $28 = HEAP32[$2>>2]|0; - $29 = HEAP8[$28>>0]|0; - $30 = $29 << 24 >> 24; - $31 = $30<<16; - $32 = HEAP32[$2>>2]|0; - $33 = (($32) + 1|0); - $34 = HEAP8[$33>>0]|0; - $35 = $34&255; - $36 = $35 << 8; - $37 = $31 | $36; - $38 = HEAP32[$2>>2]|0; - $39 = (($38) + 2|0); - $40 = HEAP8[$39>>0]|0; - $41 = $40&255; - $42 = $37 | $41; - $43 = ($42|0)<(0); - $44 = $43 << 31 >> 31; - $45 = $0; - $46 = $45; - HEAP32[$46>>2] = $42; - $47 = (($45) + 4)|0; - $48 = $47; - HEAP32[$48>>2] = $44; - break; - } - case 1: case 0: { - $4 = HEAP32[$2>>2]|0; - $5 = HEAP8[$4>>0]|0; - $6 = $5 << 24 >> 24; - $7 = ($6|0)<(0); - $8 = $7 << 31 >> 31; - $9 = $0; - $10 = $9; - HEAP32[$10>>2] = $6; - $11 = (($9) + 4)|0; - $12 = $11; - HEAP32[$12>>2] = $8; - break; - } - case 6: { - $121 = HEAP32[$2>>2]|0; - $122 = HEAP8[$121>>0]|0; - $123 = $122&255; - $124 = $123 << 24; - $125 = HEAP32[$2>>2]|0; - $126 = (($125) + 1|0); - $127 = HEAP8[$126>>0]|0; - $128 = $127&255; - $129 = $128 << 16; - $130 = $124 | $129; - $131 = HEAP32[$2>>2]|0; - $132 = (($131) + 2|0); - $133 = HEAP8[$132>>0]|0; - $134 = $133&255; - $135 = $134 << 8; - $136 = $130 | $135; - $137 = HEAP32[$2>>2]|0; - $138 = (($137) + 3|0); - $139 = HEAP8[$138>>0]|0; - $140 = $139&255; - $141 = $136 | $140; - $142 = $x; - $143 = $142; - HEAP32[$143>>2] = $141; - $144 = (($142) + 4)|0; - $145 = $144; - HEAP32[$145>>2] = 0; - $146 = $x; - $147 = $146; - $148 = HEAP32[$147>>2]|0; - $149 = (($146) + 4)|0; - $150 = $149; - $151 = HEAP32[$150>>2]|0; - $152 = HEAP32[$2>>2]|0; - $153 = (($152) + 4|0); - $154 = HEAP8[$153>>0]|0; - $155 = $154&255; - $156 = $155 << 24; - $157 = HEAP32[$2>>2]|0; - $158 = (($157) + 4|0); - $159 = (($158) + 1|0); - $160 = HEAP8[$159>>0]|0; - $161 = $160&255; - $162 = $161 << 16; - $163 = $156 | $162; - $164 = HEAP32[$2>>2]|0; - $165 = (($164) + 4|0); - $166 = (($165) + 2|0); - $167 = HEAP8[$166>>0]|0; - $168 = $167&255; - $169 = $168 << 8; - $170 = $163 | $169; - $171 = HEAP32[$2>>2]|0; - $172 = (($171) + 4|0); - $173 = (($172) + 3|0); - $174 = HEAP8[$173>>0]|0; - $175 = $174&255; - $176 = $170 | $175; - $177 = $x; - $178 = $177; - HEAP32[$178>>2] = $176; - $179 = (($177) + 4)|0; - $180 = $179; - HEAP32[$180>>2] = $148; - $181 = $x; - $182 = $181; - $183 = HEAP32[$182>>2]|0; - $184 = (($181) + 4)|0; - $185 = $184; - $186 = HEAP32[$185>>2]|0; - $187 = $0; - $188 = $187; - HEAP32[$188>>2] = $183; - $189 = (($187) + 4)|0; - $190 = $189; - HEAP32[$190>>2] = $186; - break; - } - case 4: { - $49 = HEAP32[$2>>2]|0; - $50 = HEAP8[$49>>0]|0; - $51 = $50&255; - $52 = $51 << 24; - $53 = HEAP32[$2>>2]|0; - $54 = (($53) + 1|0); - $55 = HEAP8[$54>>0]|0; - $56 = $55&255; - $57 = $56 << 16; - $58 = $52 | $57; - $59 = HEAP32[$2>>2]|0; - $60 = (($59) + 2|0); - $61 = HEAP8[$60>>0]|0; - $62 = $61&255; - $63 = $62 << 8; - $64 = $58 | $63; - $65 = HEAP32[$2>>2]|0; - $66 = (($65) + 3|0); - $67 = HEAP8[$66>>0]|0; - $68 = $67&255; - $69 = $64 | $68; - HEAP32[$y>>2] = $69; - $70 = HEAP32[$y>>2]|0; - $71 = ($70|0)<(0); - $72 = $71 << 31 >> 31; - $73 = $0; - $74 = $73; - HEAP32[$74>>2] = $70; - $75 = (($73) + 4)|0; - $76 = $75; - HEAP32[$76>>2] = $72; - break; - } - default: { - $191 = HEAP32[$1>>2]|0; - $192 = (($191) - 8)|0; - $193 = $0; - $194 = $193; - HEAP32[$194>>2] = $192; - $195 = (($193) + 4)|0; - $196 = $195; - HEAP32[$196>>2] = 0; - } - } - $197 = $0; - $198 = $197; - $199 = HEAP32[$198>>2]|0; - $200 = (($197) + 4)|0; - $201 = $200; - $202 = HEAP32[$201>>2]|0; - tempRet0 = $202; - STACKTOP = sp;return ($199|0); -} -function _sqlite3VarintLen($0,$1) { - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $2 = sp; - $i = sp + 8|0; - $3 = $2; - $4 = $3; - HEAP32[$4>>2] = $0; - $5 = (($3) + 4)|0; - $6 = $5; - HEAP32[$6>>2] = $1; - HEAP32[$i>>2] = 0; - while(1) { - $7 = HEAP32[$i>>2]|0; - $8 = (($7) + 1)|0; - HEAP32[$i>>2] = $8; - $9 = $2; - $10 = $9; - $11 = HEAP32[$10>>2]|0; - $12 = (($9) + 4)|0; - $13 = $12; - $14 = HEAP32[$13>>2]|0; - $15 = (_bitshift64Lshr(($11|0),($14|0),7)|0); - $16 = tempRet0; - $17 = $2; - $18 = $17; - HEAP32[$18>>2] = $15; - $19 = (($17) + 4)|0; - $20 = $19; - HEAP32[$20>>2] = $16; - $21 = $2; - $22 = $21; - $23 = HEAP32[$22>>2]|0; - $24 = (($21) + 4)|0; - $25 = $24; - $26 = HEAP32[$25>>2]|0; - $27 = ($23|0)!=(0); - $28 = ($26|0)!=(0); - $29 = $27 | $28; - if (!($29)) { - label = 4; - break; - } - $30 = HEAP32[$i>>2]|0; - $31 = ($30|0)<(9); - if (!($31)) { - label = 4; - break; - } - } - if ((label|0) == 4) { - $32 = HEAP32[$i>>2]|0; - STACKTOP = sp;return ($32|0); - } - return 0|0; -} -function _sqlite3IsNaN($x) { - $x = +$x; - var $0 = 0, $1 = 0.0, $2 = 0.0, $3 = 0.0, $4 = 0.0, $5 = 0, $6 = 0, $7 = 0, $rc = 0, $y = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $rc = sp + 24|0; - $y = sp + 8|0; - $z = sp; - HEAPF64[$0>>3] = $x; - $1 = +HEAPF64[$0>>3]; - HEAPF64[$y>>3] = $1; - $2 = +HEAPF64[$y>>3]; - HEAPF64[$z>>3] = $2; - $3 = +HEAPF64[$y>>3]; - $4 = +HEAPF64[$z>>3]; - $5 = $3 != $4; - $6 = $5&1; - HEAP32[$rc>>2] = $6; - $7 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($7|0); -} -function _moveToLeftmost($pCur) { - $pCur = $pCur|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $pPage = 0, $pgno = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $pgno = sp + 8|0; - $rc = sp + 4|0; - $pPage = sp; - HEAP32[$0>>2] = $pCur; - HEAP32[$rc>>2] = 0; - while(1) { - $1 = HEAP32[$rc>>2]|0; - $2 = ($1|0)==(0); - if (!($2)) { - label = 5; - break; - } - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 84|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5 << 16 >> 16; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 128|0); - $9 = (($8) + ($6<<2)|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$pPage>>2] = $10; - $11 = (($10) + 3|0); - $12 = HEAP8[$11>>0]|0; - $13 = ($12<<24>>24)!=(0); - $14 = $13 ^ 1; - if (!($14)) { - label = 5; - break; - } - $15 = HEAP32[$pPage>>2]|0; - $16 = (($15) + 56|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$pPage>>2]|0; - $19 = (($18) + 18|0); - $20 = HEAP16[$19>>1]|0; - $21 = $20&65535; - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 84|0); - $24 = HEAP16[$23>>1]|0; - $25 = $24 << 16 >> 16; - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 86|0); - $28 = (($27) + ($25<<1)|0); - $29 = HEAP16[$28>>1]|0; - $30 = $29&65535; - $31 = $30<<1; - $32 = HEAP32[$pPage>>2]|0; - $33 = (($32) + 64|0); - $34 = HEAP32[$33>>2]|0; - $35 = (($34) + ($31)|0); - $36 = HEAP8[$35>>0]|0; - $37 = $36&255; - $38 = $37 << 8; - $39 = HEAP32[$0>>2]|0; - $40 = (($39) + 84|0); - $41 = HEAP16[$40>>1]|0; - $42 = $41 << 16 >> 16; - $43 = HEAP32[$0>>2]|0; - $44 = (($43) + 86|0); - $45 = (($44) + ($42<<1)|0); - $46 = HEAP16[$45>>1]|0; - $47 = $46&65535; - $48 = $47<<1; - $49 = HEAP32[$pPage>>2]|0; - $50 = (($49) + 64|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + ($48)|0); - $53 = (($52) + 1|0); - $54 = HEAP8[$53>>0]|0; - $55 = $54&255; - $56 = $38 | $55; - $57 = $21 & $56; - $58 = (($17) + ($57)|0); - $59 = (_sqlite3Get4byte($58)|0); - HEAP32[$pgno>>2] = $59; - $60 = HEAP32[$0>>2]|0; - $61 = HEAP32[$pgno>>2]|0; - $62 = (_moveToChild($60,$61)|0); - HEAP32[$rc>>2] = $62; - } - if ((label|0) == 5) { - $63 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($63|0); - } - return 0|0; -} -function _targetSrcList($pParse,$pStep) { - $pParse = $pParse|0; - $pStep = $pStep|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0; - var $iDb = 0, $or$cond = 0, $pSrc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $iDb = sp + 8|0; - $pSrc = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pStep; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 12|0); - $6 = (_sqlite3SrcListAppend($3,0,$5,0)|0); - HEAP32[$pSrc>>2] = $6; - $7 = HEAP32[$pSrc>>2]|0; - $8 = ($7|0)!=(0|0); - if (!($8)) { - $38 = HEAP32[$pSrc>>2]|0; - STACKTOP = sp;return ($38|0); - } - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 4|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + 20|0); - $15 = HEAP32[$14>>2]|0; - $16 = (_sqlite3SchemaToIndex($10,$15)|0); - HEAP32[$iDb>>2] = $16; - $17 = HEAP32[$iDb>>2]|0; - $18 = ($17|0)==(0); - $19 = HEAP32[$iDb>>2]|0; - $20 = ($19|0)>=(2); - $or$cond = $18 | $20; - if (!($or$cond)) { - $38 = HEAP32[$pSrc>>2]|0; - STACKTOP = sp;return ($38|0); - } - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$21>>2]|0; - HEAP32[$db>>2] = $22; - $23 = HEAP32[$db>>2]|0; - $24 = HEAP32[$iDb>>2]|0; - $25 = HEAP32[$db>>2]|0; - $26 = (($25) + 16|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + ($24<<4)|0); - $29 = HEAP32[$28>>2]|0; - $30 = (_sqlite3DbStrDup($23,$29)|0); - $31 = HEAP32[$pSrc>>2]|0; - $32 = HEAP32[$31>>2]|0; - $33 = (($32) - 1)|0; - $34 = HEAP32[$pSrc>>2]|0; - $35 = (($34) + 8|0); - $36 = (($35) + (($33*72)|0)|0); - $37 = (($36) + 4|0); - HEAP32[$37>>2] = $30; - $38 = HEAP32[$pSrc>>2]|0; - STACKTOP = sp;return ($38|0); -} -function _fkTriggerDelete($dbMem,$p) { - $dbMem = $dbMem|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pStep = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pStep = sp; - HEAP32[$0>>2] = $dbMem; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - STACKTOP = sp;return; - } - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 28|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$pStep>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$pStep>>2]|0; - $9 = (($8) + 20|0); - $10 = HEAP32[$9>>2]|0; - _sqlite3ExprDelete($7,$10); - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$pStep>>2]|0; - $13 = (($12) + 24|0); - $14 = HEAP32[$13>>2]|0; - _sqlite3ExprListDelete($11,$14); - $15 = HEAP32[$0>>2]|0; - $16 = HEAP32[$pStep>>2]|0; - $17 = (($16) + 8|0); - $18 = HEAP32[$17>>2]|0; - _sqlite3SelectDelete($15,$18); - $19 = HEAP32[$0>>2]|0; - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 12|0); - $22 = HEAP32[$21>>2]|0; - _sqlite3ExprDelete($19,$22); - $23 = HEAP32[$0>>2]|0; - $24 = HEAP32[$1>>2]|0; - _sqlite3DbFree($23,$24); - STACKTOP = sp;return; -} -function _checkColumnOverlap($pIdList,$pEList) { - $pIdList = $pIdList|0; - $pEList = $pEList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $e = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $e = sp; - HEAP32[$1>>2] = $pIdList; - HEAP32[$2>>2] = $pEList; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)==(0|0); - if (!($4)) { - $5 = HEAP32[$2>>2]|0; - $6 = ($5|0)==(0|0); - if (!($6)) { - HEAP32[$e>>2] = 0; - while(1) { - $7 = HEAP32[$e>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = ($7|0)<($9|0); - if (!($10)) { - label = 9; - break; - } - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$e>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + (($12*20)|0)|0); - $17 = (($16) + 4|0); - $18 = HEAP32[$17>>2]|0; - $19 = (_sqlite3IdListIndex($11,$18)|0); - $20 = ($19|0)>=(0); - if ($20) { - label = 7; - break; - } - $21 = HEAP32[$e>>2]|0; - $22 = (($21) + 1)|0; - HEAP32[$e>>2] = $22; - } - if ((label|0) == 7) { - HEAP32[$0>>2] = 1; - $23 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($23|0); - } - else if ((label|0) == 9) { - HEAP32[$0>>2] = 0; - $23 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($23|0); - } - } - } - HEAP32[$0>>2] = 1; - $23 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($23|0); -} -function _xferCompatibleCollation($z1,$z2) { - $z1 = $z1|0; - $z2 = $z2|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$1>>2] = $z1; - HEAP32[$2>>2] = $z2; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)==(0|0); - $5 = HEAP32[$2>>2]|0; - $6 = ($5|0)==(0|0); - do { - if ($4) { - $7 = $6&1; - HEAP32[$0>>2] = $7; - } else { - if ($6) { - HEAP32[$0>>2] = 0; - break; - } else { - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$2>>2]|0; - $10 = (_sqlite3_stricmp($8,$9)|0); - $11 = ($10|0)==(0); - $12 = $11&1; - HEAP32[$0>>2] = $12; - break; - } - } - } while(0); - $13 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($13|0); -} -function _xferCompatibleIndex($pDest,$pSrc) { - $pDest = $pDest|0; - $pSrc = $pSrc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $i = sp; - HEAP32[$1>>2] = $pDest; - HEAP32[$2>>2] = $pSrc; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 50|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5&65535; - $7 = HEAP32[$2>>2]|0; - $8 = (($7) + 50|0); - $9 = HEAP16[$8>>1]|0; - $10 = $9&65535; - $11 = ($6|0)!=($10|0); - if ($11) { - HEAP32[$0>>2] = 0; - $81 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($81|0); - } - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 54|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14&255; - $16 = HEAP32[$2>>2]|0; - $17 = (($16) + 54|0); - $18 = HEAP8[$17>>0]|0; - $19 = $18&255; - $20 = ($15|0)!=($19|0); - if ($20) { - HEAP32[$0>>2] = 0; - $81 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($81|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $21 = HEAP32[$i>>2]|0; - $22 = HEAP32[$2>>2]|0; - $23 = (($22) + 50|0); - $24 = HEAP16[$23>>1]|0; - $25 = $24&65535; - $26 = ($21|0)<($25|0); - if (!($26)) { - label = 14; - break; - } - $27 = HEAP32[$i>>2]|0; - $28 = HEAP32[$2>>2]|0; - $29 = (($28) + 4|0); - $30 = HEAP32[$29>>2]|0; - $31 = (($30) + ($27<<1)|0); - $32 = HEAP16[$31>>1]|0; - $33 = $32 << 16 >> 16; - $34 = HEAP32[$i>>2]|0; - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 4|0); - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + ($34<<1)|0); - $39 = HEAP16[$38>>1]|0; - $40 = $39 << 16 >> 16; - $41 = ($33|0)!=($40|0); - if ($41) { - label = 8; - break; - } - $42 = HEAP32[$i>>2]|0; - $43 = HEAP32[$2>>2]|0; - $44 = (($43) + 28|0); - $45 = HEAP32[$44>>2]|0; - $46 = (($45) + ($42)|0); - $47 = HEAP8[$46>>0]|0; - $48 = $47&255; - $49 = HEAP32[$i>>2]|0; - $50 = HEAP32[$1>>2]|0; - $51 = (($50) + 28|0); - $52 = HEAP32[$51>>2]|0; - $53 = (($52) + ($49)|0); - $54 = HEAP8[$53>>0]|0; - $55 = $54&255; - $56 = ($48|0)!=($55|0); - if ($56) { - label = 10; - break; - } - $57 = HEAP32[$i>>2]|0; - $58 = HEAP32[$2>>2]|0; - $59 = (($58) + 32|0); - $60 = HEAP32[$59>>2]|0; - $61 = (($60) + ($57<<2)|0); - $62 = HEAP32[$61>>2]|0; - $63 = HEAP32[$i>>2]|0; - $64 = HEAP32[$1>>2]|0; - $65 = (($64) + 32|0); - $66 = HEAP32[$65>>2]|0; - $67 = (($66) + ($63<<2)|0); - $68 = HEAP32[$67>>2]|0; - $69 = (_xferCompatibleCollation($62,$68)|0); - $70 = ($69|0)!=(0); - if (!($70)) { - label = 12; - break; - } - $71 = HEAP32[$i>>2]|0; - $72 = (($71) + 1)|0; - HEAP32[$i>>2] = $72; - } - if ((label|0) == 8) { - HEAP32[$0>>2] = 0; - $81 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($81|0); - } - else if ((label|0) == 10) { - HEAP32[$0>>2] = 0; - $81 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($81|0); - } - else if ((label|0) == 12) { - HEAP32[$0>>2] = 0; - $81 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($81|0); - } - else if ((label|0) == 14) { - $73 = HEAP32[$2>>2]|0; - $74 = (($73) + 36|0); - $75 = HEAP32[$74>>2]|0; - $76 = HEAP32[$1>>2]|0; - $77 = (($76) + 36|0); - $78 = HEAP32[$77>>2]|0; - $79 = (_sqlite3ExprCompare($75,$78,-1)|0); - $80 = ($79|0)!=(0); - if ($80) { - HEAP32[$0>>2] = 0; - $81 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($81|0); - } else { - HEAP32[$0>>2] = 1; - $81 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($81|0); - } - } - return 0|0; -} -function _updateVirtualTable($pParse,$pSrc,$pTab,$pChanges,$pRowid,$aXRef,$pWhere,$onError) { - $pParse = $pParse|0; - $pSrc = $pSrc|0; - $pTab = $pTab|0; - $pChanges = $pChanges|0; - $pRowid = $pRowid|0; - $aXRef = $aXRef|0; - $pWhere = $pWhere|0; - $onError = $onError|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; - var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; - var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; - var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; - var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr = 0; - var $db = 0, $dest = 0, $ephemTab = 0, $i = 0, $iReg = 0, $pEList = 0, $pExpr = 0, $pSelect = 0, $pVTab = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $0 = sp + 88|0; - $1 = sp + 84|0; - $2 = sp + 80|0; - $3 = sp + 76|0; - $4 = sp + 72|0; - $5 = sp + 68|0; - $6 = sp + 64|0; - $7 = sp + 60|0; - $v = sp + 56|0; - $pEList = sp + 52|0; - $pSelect = sp + 48|0; - $pExpr = sp + 44|0; - $ephemTab = sp + 40|0; - $i = sp + 36|0; - $addr = sp + 32|0; - $iReg = sp + 28|0; - $db = sp + 24|0; - $pVTab = sp + 20|0; - $dest = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pSrc; - HEAP32[$2>>2] = $pTab; - HEAP32[$3>>2] = $pChanges; - HEAP32[$4>>2] = $pRowid; - HEAP32[$5>>2] = $aXRef; - HEAP32[$6>>2] = $pWhere; - HEAP32[$7>>2] = $onError; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 8|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$v>>2] = $10; - HEAP32[$pEList>>2] = 0; - HEAP32[$pSelect>>2] = 0; - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$11>>2]|0; - HEAP32[$db>>2] = $12; - $13 = HEAP32[$db>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = (_sqlite3GetVTable($13,$14)|0); - HEAP32[$pVTab>>2] = $15; - $16 = HEAP32[$0>>2]|0; - $17 = HEAP32[$db>>2]|0; - $18 = (_sqlite3Expr($17,27,24416)|0); - $19 = (_sqlite3ExprListAppend($16,0,$18)|0); - HEAP32[$pEList>>2] = $19; - $20 = HEAP32[$4>>2]|0; - $21 = ($20|0)!=(0|0); - if ($21) { - $22 = HEAP32[$0>>2]|0; - $23 = HEAP32[$pEList>>2]|0; - $24 = HEAP32[$db>>2]|0; - $25 = HEAP32[$4>>2]|0; - $26 = (_sqlite3ExprDup($24,$25,0)|0); - $27 = (_sqlite3ExprListAppend($22,$23,$26)|0); - HEAP32[$pEList>>2] = $27; - } - HEAP32[$i>>2] = 0; - while(1) { - $28 = HEAP32[$i>>2]|0; - $29 = HEAP32[$2>>2]|0; - $30 = (($29) + 38|0); - $31 = HEAP16[$30>>1]|0; - $32 = $31 << 16 >> 16; - $33 = ($28|0)<($32|0); - if (!($33)) { - break; - } - $34 = HEAP32[$i>>2]|0; - $35 = HEAP32[$5>>2]|0; - $36 = (($35) + ($34<<2)|0); - $37 = HEAP32[$36>>2]|0; - $38 = ($37|0)>=(0); - $39 = HEAP32[$db>>2]|0; - $40 = HEAP32[$i>>2]|0; - if ($38) { - $41 = HEAP32[$5>>2]|0; - $42 = (($41) + ($40<<2)|0); - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$3>>2]|0; - $45 = (($44) + 4|0); - $46 = HEAP32[$45>>2]|0; - $47 = (($46) + (($43*20)|0)|0); - $48 = HEAP32[$47>>2]|0; - $49 = (_sqlite3ExprDup($39,$48,0)|0); - HEAP32[$pExpr>>2] = $49; - } else { - $50 = HEAP32[$2>>2]|0; - $51 = (($50) + 4|0); - $52 = HEAP32[$51>>2]|0; - $53 = (($52) + (($40*24)|0)|0); - $54 = HEAP32[$53>>2]|0; - $55 = (_sqlite3Expr($39,27,$54)|0); - HEAP32[$pExpr>>2] = $55; - } - $56 = HEAP32[$0>>2]|0; - $57 = HEAP32[$pEList>>2]|0; - $58 = HEAP32[$pExpr>>2]|0; - $59 = (_sqlite3ExprListAppend($56,$57,$58)|0); - HEAP32[$pEList>>2] = $59; - $60 = HEAP32[$i>>2]|0; - $61 = (($60) + 1)|0; - HEAP32[$i>>2] = $61; - } - $62 = HEAP32[$0>>2]|0; - $63 = HEAP32[$pEList>>2]|0; - $64 = HEAP32[$1>>2]|0; - $65 = HEAP32[$6>>2]|0; - $66 = (_sqlite3SelectNew($62,$63,$64,$65,0,0,0,0,0,0)|0); - HEAP32[$pSelect>>2] = $66; - $67 = HEAP32[$0>>2]|0; - $68 = (($67) + 68|0); - $69 = HEAP32[$68>>2]|0; - $70 = (($69) + 1)|0; - HEAP32[$68>>2] = $70; - HEAP32[$ephemTab>>2] = $69; - $71 = HEAP32[$v>>2]|0; - $72 = HEAP32[$ephemTab>>2]|0; - $73 = HEAP32[$2>>2]|0; - $74 = (($73) + 38|0); - $75 = HEAP16[$74>>1]|0; - $76 = $75 << 16 >> 16; - $77 = (($76) + 1)|0; - $78 = HEAP32[$4>>2]|0; - $79 = ($78|0)!=(0|0); - $80 = $79&1; - $81 = (($77) + ($80))|0; - (_sqlite3VdbeAddOp2($71,55,$72,$81)|0); - $82 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($82,8); - $83 = HEAP32[$ephemTab>>2]|0; - _sqlite3SelectDestInit($dest,14,$83); - $84 = HEAP32[$0>>2]|0; - $85 = HEAP32[$pSelect>>2]|0; - (_sqlite3Select($84,$85,$dest)|0); - $86 = HEAP32[$0>>2]|0; - $87 = (($86) + 72|0); - $88 = HEAP32[$87>>2]|0; - $89 = (($88) + 1)|0; - HEAP32[$87>>2] = $89; - HEAP32[$iReg>>2] = $89; - $90 = HEAP32[$2>>2]|0; - $91 = (($90) + 38|0); - $92 = HEAP16[$91>>1]|0; - $93 = $92 << 16 >> 16; - $94 = (($93) + 1)|0; - $95 = HEAP32[$0>>2]|0; - $96 = (($95) + 72|0); - $97 = HEAP32[$96>>2]|0; - $98 = (($97) + ($94))|0; - HEAP32[$96>>2] = $98; - $99 = HEAP32[$v>>2]|0; - $100 = HEAP32[$ephemTab>>2]|0; - $101 = (_sqlite3VdbeAddOp2($99,105,$100,0)|0); - HEAP32[$addr>>2] = $101; - $102 = HEAP32[$v>>2]|0; - $103 = HEAP32[$ephemTab>>2]|0; - $104 = HEAP32[$iReg>>2]|0; - (_sqlite3VdbeAddOp3($102,46,$103,0,$104)|0); - $105 = HEAP32[$v>>2]|0; - $106 = HEAP32[$ephemTab>>2]|0; - $107 = HEAP32[$4>>2]|0; - $108 = ($107|0)!=(0|0); - $109 = $108 ? 1 : 0; - $110 = HEAP32[$iReg>>2]|0; - $111 = (($110) + 1)|0; - (_sqlite3VdbeAddOp3($105,46,$106,$109,$111)|0); - HEAP32[$i>>2] = 0; - while(1) { - $112 = HEAP32[$i>>2]|0; - $113 = HEAP32[$2>>2]|0; - $114 = (($113) + 38|0); - $115 = HEAP16[$114>>1]|0; - $116 = $115 << 16 >> 16; - $117 = ($112|0)<($116|0); - if (!($117)) { - break; - } - $118 = HEAP32[$v>>2]|0; - $119 = HEAP32[$ephemTab>>2]|0; - $120 = HEAP32[$i>>2]|0; - $121 = (($120) + 1)|0; - $122 = HEAP32[$4>>2]|0; - $123 = ($122|0)!=(0|0); - $124 = $123&1; - $125 = (($121) + ($124))|0; - $126 = HEAP32[$iReg>>2]|0; - $127 = (($126) + 2)|0; - $128 = HEAP32[$i>>2]|0; - $129 = (($127) + ($128))|0; - (_sqlite3VdbeAddOp3($118,46,$119,$125,$129)|0); - $130 = HEAP32[$i>>2]|0; - $131 = (($130) + 1)|0; - HEAP32[$i>>2] = $131; - } - $132 = HEAP32[$0>>2]|0; - $133 = HEAP32[$2>>2]|0; - _sqlite3VtabMakeWritable($132,$133); - $134 = HEAP32[$v>>2]|0; - $135 = HEAP32[$2>>2]|0; - $136 = (($135) + 38|0); - $137 = HEAP16[$136>>1]|0; - $138 = $137 << 16 >> 16; - $139 = (($138) + 2)|0; - $140 = HEAP32[$iReg>>2]|0; - $141 = HEAP32[$pVTab>>2]|0; - (_sqlite3VdbeAddOp4($134,15,0,$139,$140,$141,-10)|0); - $142 = HEAP32[$v>>2]|0; - $143 = HEAP32[$7>>2]|0; - $144 = ($143|0)==(10); - $145 = HEAP32[$7>>2]|0; - $146 = $144 ? 2 : $145; - $147 = $146&255; - _sqlite3VdbeChangeP5($142,$147); - $148 = HEAP32[$0>>2]|0; - _sqlite3MayAbort($148); - $149 = HEAP32[$v>>2]|0; - $150 = HEAP32[$ephemTab>>2]|0; - $151 = HEAP32[$addr>>2]|0; - $152 = (($151) + 1)|0; - (_sqlite3VdbeAddOp2($149,9,$150,$152)|0); - $153 = HEAP32[$v>>2]|0; - $154 = HEAP32[$addr>>2]|0; - _sqlite3VdbeJumpHere($153,$154); - $155 = HEAP32[$v>>2]|0; - $156 = HEAP32[$ephemTab>>2]|0; - (_sqlite3VdbeAddOp2($155,58,$156,0)|0); - $157 = HEAP32[$db>>2]|0; - $158 = HEAP32[$pSelect>>2]|0; - _sqlite3SelectDelete($157,$158); - STACKTOP = sp;return; -} -function _sqlite3AuthContextPush($pParse,$pContext,$zContext) { - $pParse = $pParse|0; - $pContext = $pContext|0; - $zContext = $zContext|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pContext; - HEAP32[$2>>2] = $zContext; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 4|0); - HEAP32[$5>>2] = $3; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 492|0); - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$1>>2]|0; - HEAP32[$9>>2] = $8; - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 492|0); - HEAP32[$12>>2] = $10; - STACKTOP = sp;return; -} -function _sqlite3MaterializeView($pParse,$pView,$pWhere,$iCur) { - $pParse = $pParse|0; - $pView = $pView|0; - $pWhere = $pWhere|0; - $iCur = $iCur|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $dest = 0, $iDb = 0, $pFrom = 0, $pSel = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 48|0; - $1 = sp + 44|0; - $2 = sp + 40|0; - $3 = sp + 36|0; - $dest = sp + 16|0; - $pSel = sp + 12|0; - $pFrom = sp + 8|0; - $db = sp + 4|0; - $iDb = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pView; - HEAP32[$2>>2] = $pWhere; - HEAP32[$3>>2] = $iCur; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$db>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 68|0); - $9 = HEAP32[$8>>2]|0; - $10 = (_sqlite3SchemaToIndex($6,$9)|0); - HEAP32[$iDb>>2] = $10; - $11 = HEAP32[$db>>2]|0; - $12 = HEAP32[$2>>2]|0; - $13 = (_sqlite3ExprDup($11,$12,0)|0); - HEAP32[$2>>2] = $13; - $14 = HEAP32[$db>>2]|0; - $15 = (_sqlite3SrcListAppend($14,0,0,0)|0); - HEAP32[$pFrom>>2] = $15; - $16 = HEAP32[$pFrom>>2]|0; - $17 = ($16|0)!=(0|0); - if ($17) { - $18 = HEAP32[$db>>2]|0; - $19 = HEAP32[$1>>2]|0; - $20 = HEAP32[$19>>2]|0; - $21 = (_sqlite3DbStrDup($18,$20)|0); - $22 = HEAP32[$pFrom>>2]|0; - $23 = (($22) + 8|0); - $24 = (($23) + 8|0); - HEAP32[$24>>2] = $21; - $25 = HEAP32[$db>>2]|0; - $26 = HEAP32[$iDb>>2]|0; - $27 = HEAP32[$db>>2]|0; - $28 = (($27) + 16|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + ($26<<4)|0); - $31 = HEAP32[$30>>2]|0; - $32 = (_sqlite3DbStrDup($25,$31)|0); - $33 = HEAP32[$pFrom>>2]|0; - $34 = (($33) + 8|0); - $35 = (($34) + 4|0); - HEAP32[$35>>2] = $32; - } - $36 = HEAP32[$0>>2]|0; - $37 = HEAP32[$pFrom>>2]|0; - $38 = HEAP32[$2>>2]|0; - $39 = (_sqlite3SelectNew($36,0,$37,$38,0,0,0,0,0,0)|0); - HEAP32[$pSel>>2] = $39; - $40 = HEAP32[$3>>2]|0; - _sqlite3SelectDestInit($dest,12,$40); - $41 = HEAP32[$0>>2]|0; - $42 = HEAP32[$pSel>>2]|0; - (_sqlite3Select($41,$42,$dest)|0); - $43 = HEAP32[$db>>2]|0; - $44 = HEAP32[$pSel>>2]|0; - _sqlite3SelectDelete($43,$44); - STACKTOP = sp;return; -} -function _sqlite3WhereOkOnePass($pWInfo,$aiCur) { - $pWInfo = $pWInfo|0; - $aiCur = $aiCur|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pWInfo; - HEAP32[$1>>2] = $aiCur; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 60|0); - ;HEAP32[$2+0>>2]=HEAP32[$4+0>>2]|0;HEAP32[$2+4>>2]=HEAP32[$4+4>>2]|0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 38|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - STACKTOP = sp;return ($8|0); -} -function _sqlite3AuthContextPop($pContext) { - $pContext = $pContext|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pContext; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + 492|0); - HEAP32[$10>>2] = $6; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 4|0); - HEAP32[$12>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3SrcListEnlarge($db,$pSrc,$nExtra,$iStart) { - $db = $db|0; - $pSrc = $pSrc|0; - $nExtra = $nExtra|0; - $iStart = $iStart|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; - var $i = 0, $nAlloc = 0, $nGot = 0, $pNew = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $4 = sp + 16|0; - $i = sp + 12|0; - $pNew = sp + 8|0; - $nAlloc = sp + 4|0; - $nGot = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pSrc; - HEAP32[$3>>2] = $nExtra; - HEAP32[$4>>2] = $iStart; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$3>>2]|0; - $8 = (($6) + ($7))|0; - $9 = HEAP32[$2>>2]|0; - $10 = (($9) + 4|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($8>>>0)>($11>>>0); - do { - if ($12) { - $13 = HEAP32[$2>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$3>>2]|0; - $16 = (($14) + ($15))|0; - HEAP32[$nAlloc>>2] = $16; - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$2>>2]|0; - $19 = HEAP32[$nAlloc>>2]|0; - $20 = (($19) - 1)|0; - $21 = ($20*72)|0; - $22 = (80 + ($21))|0; - $23 = (_sqlite3DbRealloc($17,$18,$22)|0); - HEAP32[$pNew>>2] = $23; - $24 = HEAP32[$pNew>>2]|0; - $25 = ($24|0)==(0|0); - if (!($25)) { - $27 = HEAP32[$pNew>>2]|0; - HEAP32[$2>>2] = $27; - $28 = HEAP32[$1>>2]|0; - $29 = HEAP32[$pNew>>2]|0; - $30 = (_sqlite3DbMallocSize($28,$29)|0); - $31 = (($30) - 80)|0; - $32 = (($31>>>0) / 72)&-1; - $33 = (($32) + 1)|0; - HEAP32[$nGot>>2] = $33; - $34 = HEAP32[$nGot>>2]|0; - $35 = HEAP32[$2>>2]|0; - $36 = (($35) + 4|0); - HEAP32[$36>>2] = $34; - break; - } - $26 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $26; - $79 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($79|0); - } - } while(0); - $37 = HEAP32[$2>>2]|0; - $38 = HEAP32[$37>>2]|0; - $39 = (($38) - 1)|0; - HEAP32[$i>>2] = $39; - while(1) { - $40 = HEAP32[$i>>2]|0; - $41 = HEAP32[$4>>2]|0; - $42 = ($40|0)>=($41|0); - if (!($42)) { - break; - } - $43 = HEAP32[$i>>2]|0; - $44 = HEAP32[$3>>2]|0; - $45 = (($43) + ($44))|0; - $46 = HEAP32[$2>>2]|0; - $47 = (($46) + 8|0); - $48 = (($47) + (($45*72)|0)|0); - $49 = HEAP32[$i>>2]|0; - $50 = HEAP32[$2>>2]|0; - $51 = (($50) + 8|0); - $52 = (($51) + (($49*72)|0)|0); - dest=$48+0|0; src=$52+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $53 = HEAP32[$i>>2]|0; - $54 = (($53) + -1)|0; - HEAP32[$i>>2] = $54; - } - $55 = HEAP32[$3>>2]|0; - $56 = HEAP32[$2>>2]|0; - $57 = HEAP32[$56>>2]|0; - $58 = (($57) + ($55))|0; - HEAP32[$56>>2] = $58; - $59 = HEAP32[$4>>2]|0; - $60 = HEAP32[$2>>2]|0; - $61 = (($60) + 8|0); - $62 = (($61) + (($59*72)|0)|0); - $63 = HEAP32[$3>>2]|0; - $64 = ($63*72)|0; - _memset(($62|0),0,($64|0))|0; - $65 = HEAP32[$4>>2]|0; - HEAP32[$i>>2] = $65; - while(1) { - $66 = HEAP32[$i>>2]|0; - $67 = HEAP32[$4>>2]|0; - $68 = HEAP32[$3>>2]|0; - $69 = (($67) + ($68))|0; - $70 = ($66|0)<($69|0); - if (!($70)) { - break; - } - $71 = HEAP32[$i>>2]|0; - $72 = HEAP32[$2>>2]|0; - $73 = (($72) + 8|0); - $74 = (($73) + (($71*72)|0)|0); - $75 = (($74) + 40|0); - HEAP32[$75>>2] = -1; - $76 = HEAP32[$i>>2]|0; - $77 = (($76) + 1)|0; - HEAP32[$i>>2] = $77; - } - $78 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $78; - $79 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($79|0); -} -function _checkForMultiColumnSelectError($pParse,$pDest,$nExpr) { - $pParse = $pParse|0; - $pDest = $pDest|0; - $nExpr = $nExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $eDest = 0, $or$cond = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $eDest = sp + 4|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $pDest; - HEAP32[$3>>2] = $nExpr; - $4 = HEAP32[$2>>2]|0; - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - HEAP32[$eDest>>2] = $6; - $7 = HEAP32[$3>>2]|0; - $8 = ($7|0)>(1); - if ($8) { - $9 = HEAP32[$eDest>>2]|0; - $10 = ($9|0)==(10); - $11 = HEAP32[$eDest>>2]|0; - $12 = ($11|0)==(11); - $or$cond = $10 | $12; - if ($or$cond) { - $13 = HEAP32[$1>>2]|0; - _sqlite3ErrorMsg($13,25248,$vararg_buffer); - HEAP32[$0>>2] = 1; - $14 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($14|0); - } - } - HEAP32[$0>>2] = 0; - $14 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($14|0); -} -function _sqlite3SelectExprHeight($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $nHeight = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $nHeight = sp; - HEAP32[$0>>2] = $p; - HEAP32[$nHeight>>2] = 0; - $1 = HEAP32[$0>>2]|0; - _heightOfSelect($1,$nHeight); - $2 = HEAP32[$nHeight>>2]|0; - STACKTOP = sp;return ($2|0); -} -function _flattenSubquery($pParse,$p,$iFrom,$isAgg,$subqueryIsAgg) { - $pParse = $pParse|0; - $p = $p|0; - $iFrom = $iFrom|0; - $isAgg = $isAgg|0; - $subqueryIsAgg = $subqueryIsAgg|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; - var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; - var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; - var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; - var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; - var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; - var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; - var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; - var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; - var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; - var $98 = 0, $99 = 0, $db = 0, $i = 0, $iParent = 0, $ii = 0, $jointype = 0, $nSubSrc = 0, $pLimit = 0, $pList = 0, $pNew = 0, $pOffset = 0, $pOrderBy = 0, $pParent = 0, $pPrior = 0, $pSrc = 0, $pSub = 0, $pSub1 = 0, $pSubSrc = 0, $pSubitem = 0; - var $pTabToDel = 0, $pToplevel = 0, $pWhere = 0, $zName = 0, $zSavedAuthContext = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $0 = sp + 108|0; - $1 = sp + 104|0; - $2 = sp + 100|0; - $3 = sp + 96|0; - $4 = sp + 92|0; - $5 = sp + 88|0; - $zSavedAuthContext = sp + 84|0; - $pParent = sp + 80|0; - $pSub = sp + 76|0; - $pSub1 = sp + 72|0; - $pSrc = sp + 68|0; - $pSubSrc = sp + 64|0; - $pList = sp + 60|0; - $iParent = sp + 56|0; - $i = sp + 52|0; - $pWhere = sp + 48|0; - $pSubitem = sp + 44|0; - $db = sp + 40|0; - $ii = sp + 36|0; - $pNew = sp + 32|0; - $pOrderBy = sp + 28|0; - $pLimit = sp + 24|0; - $pOffset = sp + 20|0; - $pPrior = sp + 16|0; - $pTabToDel = sp + 12|0; - $pToplevel = sp + 8|0; - $nSubSrc = sp + 4|0; - $jointype = sp + 112|0; - $zName = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $p; - HEAP32[$3>>2] = $iFrom; - HEAP32[$4>>2] = $isAgg; - HEAP32[$5>>2] = $subqueryIsAgg; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 492|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$zSavedAuthContext>>2] = $8; - $9 = HEAP32[$1>>2]|0; - $10 = HEAP32[$9>>2]|0; - HEAP32[$db>>2] = $10; - $11 = HEAP32[$db>>2]|0; - $12 = (($11) + 60|0); - $13 = HEAP16[$12>>1]|0; - $14 = $13&65535; - $15 = $14 & 1; - $16 = ($15|0)!=(0); - if ($16) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - $17 = HEAP32[$2>>2]|0; - $18 = (($17) + 32|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$pSrc>>2] = $19; - $20 = HEAP32[$3>>2]|0; - $21 = HEAP32[$pSrc>>2]|0; - $22 = (($21) + 8|0); - $23 = (($22) + (($20*72)|0)|0); - HEAP32[$pSubitem>>2] = $23; - $24 = HEAP32[$pSubitem>>2]|0; - $25 = (($24) + 40|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$iParent>>2] = $26; - $27 = HEAP32[$pSubitem>>2]|0; - $28 = (($27) + 20|0); - $29 = HEAP32[$28>>2]|0; - HEAP32[$pSub>>2] = $29; - $30 = HEAP32[$4>>2]|0; - $31 = ($30|0)!=(0); - if ($31) { - $32 = HEAP32[$5>>2]|0; - $33 = ($32|0)!=(0); - if ($33) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - } - $34 = HEAP32[$5>>2]|0; - $35 = ($34|0)!=(0); - if ($35) { - $36 = HEAP32[$pSrc>>2]|0; - $37 = HEAP32[$36>>2]|0; - $38 = ($37|0)>(1); - if ($38) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - } - $39 = HEAP32[$pSub>>2]|0; - $40 = (($39) + 32|0); - $41 = HEAP32[$40>>2]|0; - HEAP32[$pSubSrc>>2] = $41; - $42 = HEAP32[$pSub>>2]|0; - $43 = (($42) + 60|0); - $44 = HEAP32[$43>>2]|0; - $45 = ($44|0)!=(0|0); - if ($45) { - $46 = HEAP32[$2>>2]|0; - $47 = (($46) + 60|0); - $48 = HEAP32[$47>>2]|0; - $49 = ($48|0)!=(0|0); - if ($49) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - } - $50 = HEAP32[$pSub>>2]|0; - $51 = (($50) + 64|0); - $52 = HEAP32[$51>>2]|0; - $53 = ($52|0)!=(0|0); - if ($53) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - $54 = HEAP32[$2>>2]|0; - $55 = (($54) + 6|0); - $56 = HEAP16[$55>>1]|0; - $57 = $56&65535; - $58 = $57 & 4096; - $59 = ($58|0)!=(0); - if ($59) { - $60 = HEAP32[$pSub>>2]|0; - $61 = (($60) + 60|0); - $62 = HEAP32[$61>>2]|0; - $63 = ($62|0)!=(0|0); - if ($63) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - } - $64 = HEAP32[$pSubSrc>>2]|0; - $65 = HEAP32[$64>>2]|0; - $66 = ($65|0)==(0); - if ($66) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - $67 = HEAP32[$pSub>>2]|0; - $68 = (($67) + 6|0); - $69 = HEAP16[$68>>1]|0; - $70 = $69&65535; - $71 = $70 & 1; - $72 = ($71|0)!=(0); - if ($72) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - $73 = HEAP32[$pSub>>2]|0; - $74 = (($73) + 60|0); - $75 = HEAP32[$74>>2]|0; - $76 = ($75|0)!=(0|0); - do { - if ($76) { - $77 = HEAP32[$pSrc>>2]|0; - $78 = HEAP32[$77>>2]|0; - $79 = ($78|0)>(1); - if (!($79)) { - $80 = HEAP32[$4>>2]|0; - $81 = ($80|0)!=(0); - if (!($81)) { - break; - } - } - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - } while(0); - $82 = HEAP32[$2>>2]|0; - $83 = (($82) + 6|0); - $84 = HEAP16[$83>>1]|0; - $85 = $84&65535; - $86 = $85 & 1; - $87 = ($86|0)!=(0); - if ($87) { - $88 = HEAP32[$5>>2]|0; - $89 = ($88|0)!=(0); - if ($89) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - } - $90 = HEAP32[$2>>2]|0; - $91 = (($90) + 48|0); - $92 = HEAP32[$91>>2]|0; - $93 = ($92|0)!=(0|0); - if ($93) { - $94 = HEAP32[$pSub>>2]|0; - $95 = (($94) + 48|0); - $96 = HEAP32[$95>>2]|0; - $97 = ($96|0)!=(0|0); - if ($97) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - } - $98 = HEAP32[$4>>2]|0; - $99 = ($98|0)!=(0); - if ($99) { - $100 = HEAP32[$pSub>>2]|0; - $101 = (($100) + 48|0); - $102 = HEAP32[$101>>2]|0; - $103 = ($102|0)!=(0|0); - if ($103) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - } - $104 = HEAP32[$pSub>>2]|0; - $105 = (($104) + 60|0); - $106 = HEAP32[$105>>2]|0; - $107 = ($106|0)!=(0|0); - if ($107) { - $108 = HEAP32[$2>>2]|0; - $109 = (($108) + 36|0); - $110 = HEAP32[$109>>2]|0; - $111 = ($110|0)!=(0|0); - if ($111) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - } - $112 = HEAP32[$pSub>>2]|0; - $113 = (($112) + 60|0); - $114 = HEAP32[$113>>2]|0; - $115 = ($114|0)!=(0|0); - if ($115) { - $116 = HEAP32[$2>>2]|0; - $117 = (($116) + 6|0); - $118 = HEAP16[$117>>1]|0; - $119 = $118&65535; - $120 = $119 & 1; - $121 = ($120|0)!=(0); - if ($121) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - } - $122 = HEAP32[$pSub>>2]|0; - $123 = (($122) + 6|0); - $124 = HEAP16[$123>>1]|0; - $125 = $124&65535; - $126 = $125 & 2048; - $127 = ($126|0)!=(0); - if ($127) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - $128 = HEAP32[$2>>2]|0; - $129 = (($128) + 6|0); - $130 = HEAP16[$129>>1]|0; - $131 = $130&65535; - $132 = $131 & 2048; - $133 = ($132|0)!=(0); - if ($133) { - $134 = HEAP32[$pSub>>2]|0; - $135 = (($134) + 52|0); - $136 = HEAP32[$135>>2]|0; - $137 = ($136|0)!=(0|0); - if ($137) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - } - $138 = HEAP32[$pSubitem>>2]|0; - $139 = (($138) + 36|0); - $140 = HEAP8[$139>>0]|0; - $141 = $140&255; - $142 = $141 & 32; - $143 = ($142|0)!=(0); - if ($143) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - $144 = HEAP32[$pSub>>2]|0; - $145 = (($144) + 52|0); - $146 = HEAP32[$145>>2]|0; - $147 = ($146|0)!=(0|0); - L82: do { - if ($147) { - $148 = HEAP32[$pSub>>2]|0; - $149 = (($148) + 48|0); - $150 = HEAP32[$149>>2]|0; - $151 = ($150|0)!=(0|0); - if ($151) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - $152 = HEAP32[$4>>2]|0; - $153 = ($152|0)!=(0); - do { - if (!($153)) { - $154 = HEAP32[$2>>2]|0; - $155 = (($154) + 6|0); - $156 = HEAP16[$155>>1]|0; - $157 = $156&65535; - $158 = $157 & 1; - $159 = ($158|0)!=(0); - if ($159) { - break; - } - $160 = HEAP32[$pSrc>>2]|0; - $161 = HEAP32[$160>>2]|0; - $162 = ($161|0)!=(1); - if ($162) { - break; - } - $163 = HEAP32[$pSub>>2]|0; - HEAP32[$pSub1>>2] = $163; - while(1) { - $164 = HEAP32[$pSub1>>2]|0; - $165 = ($164|0)!=(0|0); - if (!($165)) { - break; - } - $166 = HEAP32[$pSub1>>2]|0; - $167 = (($166) + 6|0); - $168 = HEAP16[$167>>1]|0; - $169 = $168&65535; - $170 = $169 & 5; - $171 = ($170|0)!=(0); - if ($171) { - label = 61; - break; - } - $172 = HEAP32[$pSub1>>2]|0; - $173 = (($172) + 52|0); - $174 = HEAP32[$173>>2]|0; - $175 = ($174|0)!=(0|0); - if ($175) { - $176 = HEAP32[$pSub1>>2]|0; - $177 = (($176) + 4|0); - $178 = HEAP8[$177>>0]|0; - $179 = $178&255; - $180 = ($179|0)!=(116); - if ($180) { - label = 61; - break; - } - } - $181 = HEAP32[$pSub1>>2]|0; - $182 = (($181) + 32|0); - $183 = HEAP32[$182>>2]|0; - $184 = HEAP32[$183>>2]|0; - $185 = ($184|0)<(1); - if ($185) { - label = 61; - break; - } - $186 = HEAP32[$pSub>>2]|0; - $187 = HEAP32[$186>>2]|0; - $188 = HEAP32[$187>>2]|0; - $189 = HEAP32[$pSub1>>2]|0; - $190 = HEAP32[$189>>2]|0; - $191 = HEAP32[$190>>2]|0; - $192 = ($188|0)!=($191|0); - if ($192) { - label = 61; - break; - } - $193 = HEAP32[$pSub1>>2]|0; - $194 = (($193) + 52|0); - $195 = HEAP32[$194>>2]|0; - HEAP32[$pSub1>>2] = $195; - } - if ((label|0) == 61) { - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - $196 = HEAP32[$2>>2]|0; - $197 = (($196) + 48|0); - $198 = HEAP32[$197>>2]|0; - $199 = ($198|0)!=(0|0); - if (!($199)) { - break L82; - } - HEAP32[$ii>>2] = 0; - while(1) { - $200 = HEAP32[$ii>>2]|0; - $201 = HEAP32[$2>>2]|0; - $202 = (($201) + 48|0); - $203 = HEAP32[$202>>2]|0; - $204 = HEAP32[$203>>2]|0; - $205 = ($200|0)<($204|0); - if (!($205)) { - break L82; - } - $206 = HEAP32[$ii>>2]|0; - $207 = HEAP32[$2>>2]|0; - $208 = (($207) + 48|0); - $209 = HEAP32[$208>>2]|0; - $210 = (($209) + 4|0); - $211 = HEAP32[$210>>2]|0; - $212 = (($211) + (($206*20)|0)|0); - $213 = (($212) + 16|0); - $214 = HEAP16[$213>>1]|0; - $215 = $214&65535; - $216 = ($215|0)==(0); - if ($216) { - break; - } - $217 = HEAP32[$ii>>2]|0; - $218 = (($217) + 1)|0; - HEAP32[$ii>>2] = $218; - } - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - } while(0); - HEAP32[$0>>2] = 0; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - } while(0); - $219 = HEAP32[$pSubitem>>2]|0; - $220 = (($219) + 8|0); - $221 = HEAP32[$220>>2]|0; - $222 = HEAP32[$1>>2]|0; - $223 = (($222) + 492|0); - HEAP32[$223>>2] = $221; - $224 = HEAP32[$1>>2]|0; - (_sqlite3AuthCheck($224,21,0,0,0)|0); - $225 = HEAP32[$zSavedAuthContext>>2]|0; - $226 = HEAP32[$1>>2]|0; - $227 = (($226) + 492|0); - HEAP32[$227>>2] = $225; - $228 = HEAP32[$pSub>>2]|0; - $229 = (($228) + 52|0); - $230 = HEAP32[$229>>2]|0; - HEAP32[$pSub>>2] = $230; - while(1) { - $231 = HEAP32[$pSub>>2]|0; - $232 = ($231|0)!=(0|0); - if (!($232)) { - break; - } - $233 = HEAP32[$2>>2]|0; - $234 = (($233) + 48|0); - $235 = HEAP32[$234>>2]|0; - HEAP32[$pOrderBy>>2] = $235; - $236 = HEAP32[$2>>2]|0; - $237 = (($236) + 60|0); - $238 = HEAP32[$237>>2]|0; - HEAP32[$pLimit>>2] = $238; - $239 = HEAP32[$2>>2]|0; - $240 = (($239) + 64|0); - $241 = HEAP32[$240>>2]|0; - HEAP32[$pOffset>>2] = $241; - $242 = HEAP32[$2>>2]|0; - $243 = (($242) + 52|0); - $244 = HEAP32[$243>>2]|0; - HEAP32[$pPrior>>2] = $244; - $245 = HEAP32[$2>>2]|0; - $246 = (($245) + 48|0); - HEAP32[$246>>2] = 0; - $247 = HEAP32[$2>>2]|0; - $248 = (($247) + 32|0); - HEAP32[$248>>2] = 0; - $249 = HEAP32[$2>>2]|0; - $250 = (($249) + 52|0); - HEAP32[$250>>2] = 0; - $251 = HEAP32[$2>>2]|0; - $252 = (($251) + 60|0); - HEAP32[$252>>2] = 0; - $253 = HEAP32[$2>>2]|0; - $254 = (($253) + 64|0); - HEAP32[$254>>2] = 0; - $255 = HEAP32[$db>>2]|0; - $256 = HEAP32[$2>>2]|0; - $257 = (_sqlite3SelectDup($255,$256,0)|0); - HEAP32[$pNew>>2] = $257; - $258 = HEAP32[$pOffset>>2]|0; - $259 = HEAP32[$2>>2]|0; - $260 = (($259) + 64|0); - HEAP32[$260>>2] = $258; - $261 = HEAP32[$pLimit>>2]|0; - $262 = HEAP32[$2>>2]|0; - $263 = (($262) + 60|0); - HEAP32[$263>>2] = $261; - $264 = HEAP32[$pOrderBy>>2]|0; - $265 = HEAP32[$2>>2]|0; - $266 = (($265) + 48|0); - HEAP32[$266>>2] = $264; - $267 = HEAP32[$pSrc>>2]|0; - $268 = HEAP32[$2>>2]|0; - $269 = (($268) + 32|0); - HEAP32[$269>>2] = $267; - $270 = HEAP32[$2>>2]|0; - $271 = (($270) + 4|0); - HEAP8[$271>>0] = 116; - $272 = HEAP32[$pNew>>2]|0; - $273 = ($272|0)==(0|0); - $274 = HEAP32[$pPrior>>2]|0; - if ($273) { - $275 = HEAP32[$2>>2]|0; - $276 = (($275) + 52|0); - HEAP32[$276>>2] = $274; - } else { - $277 = HEAP32[$pNew>>2]|0; - $278 = (($277) + 52|0); - HEAP32[$278>>2] = $274; - $279 = HEAP32[$pPrior>>2]|0; - $280 = ($279|0)!=(0|0); - if ($280) { - $281 = HEAP32[$pNew>>2]|0; - $282 = HEAP32[$pPrior>>2]|0; - $283 = (($282) + 56|0); - HEAP32[$283>>2] = $281; - } - $284 = HEAP32[$2>>2]|0; - $285 = HEAP32[$pNew>>2]|0; - $286 = (($285) + 56|0); - HEAP32[$286>>2] = $284; - $287 = HEAP32[$pNew>>2]|0; - $288 = HEAP32[$2>>2]|0; - $289 = (($288) + 52|0); - HEAP32[$289>>2] = $287; - } - $290 = HEAP32[$db>>2]|0; - $291 = (($290) + 64|0); - $292 = HEAP8[$291>>0]|0; - $293 = ($292<<24>>24)!=(0); - if ($293) { - label = 77; - break; - } - $294 = HEAP32[$pSub>>2]|0; - $295 = (($294) + 52|0); - $296 = HEAP32[$295>>2]|0; - HEAP32[$pSub>>2] = $296; - } - if ((label|0) == 77) { - HEAP32[$0>>2] = 1; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); - } - $297 = HEAP32[$pSubitem>>2]|0; - $298 = (($297) + 20|0); - $299 = HEAP32[$298>>2]|0; - HEAP32[$pSub1>>2] = $299; - HEAP32[$pSub>>2] = $299; - $300 = HEAP32[$db>>2]|0; - $301 = HEAP32[$pSubitem>>2]|0; - $302 = (($301) + 4|0); - $303 = HEAP32[$302>>2]|0; - _sqlite3DbFree($300,$303); - $304 = HEAP32[$db>>2]|0; - $305 = HEAP32[$pSubitem>>2]|0; - $306 = (($305) + 8|0); - $307 = HEAP32[$306>>2]|0; - _sqlite3DbFree($304,$307); - $308 = HEAP32[$db>>2]|0; - $309 = HEAP32[$pSubitem>>2]|0; - $310 = (($309) + 12|0); - $311 = HEAP32[$310>>2]|0; - _sqlite3DbFree($308,$311); - $312 = HEAP32[$pSubitem>>2]|0; - $313 = (($312) + 4|0); - HEAP32[$313>>2] = 0; - $314 = HEAP32[$pSubitem>>2]|0; - $315 = (($314) + 8|0); - HEAP32[$315>>2] = 0; - $316 = HEAP32[$pSubitem>>2]|0; - $317 = (($316) + 12|0); - HEAP32[$317>>2] = 0; - $318 = HEAP32[$pSubitem>>2]|0; - $319 = (($318) + 20|0); - HEAP32[$319>>2] = 0; - $320 = HEAP32[$pSubitem>>2]|0; - $321 = (($320) + 16|0); - $322 = HEAP32[$321>>2]|0; - $323 = ($322|0)!=(0|0); - if ($323) { - $324 = HEAP32[$pSubitem>>2]|0; - $325 = (($324) + 16|0); - $326 = HEAP32[$325>>2]|0; - HEAP32[$pTabToDel>>2] = $326; - $327 = HEAP32[$pTabToDel>>2]|0; - $328 = (($327) + 40|0); - $329 = HEAP16[$328>>1]|0; - $330 = $329&65535; - $331 = ($330|0)==(1); - if ($331) { - $332 = HEAP32[$1>>2]|0; - $333 = (($332) + 408|0); - $334 = HEAP32[$333>>2]|0; - $335 = ($334|0)!=(0|0); - $336 = HEAP32[$1>>2]|0; - if ($335) { - $337 = (($336) + 408|0); - $338 = HEAP32[$337>>2]|0; - $339 = $338; - } else { - $339 = $336; - } - HEAP32[$pToplevel>>2] = $339; - $340 = HEAP32[$pToplevel>>2]|0; - $341 = (($340) + 524|0); - $342 = HEAP32[$341>>2]|0; - $343 = HEAP32[$pTabToDel>>2]|0; - $344 = (($343) + 72|0); - HEAP32[$344>>2] = $342; - $345 = HEAP32[$pTabToDel>>2]|0; - $346 = HEAP32[$pToplevel>>2]|0; - $347 = (($346) + 524|0); - HEAP32[$347>>2] = $345; - } else { - $348 = HEAP32[$pTabToDel>>2]|0; - $349 = (($348) + 40|0); - $350 = HEAP16[$349>>1]|0; - $351 = (($350) + -1)<<16>>16; - HEAP16[$349>>1] = $351; - } - $352 = HEAP32[$pSubitem>>2]|0; - $353 = (($352) + 16|0); - HEAP32[$353>>2] = 0; - } - $354 = HEAP32[$2>>2]|0; - HEAP32[$pParent>>2] = $354; - while(1) { - $355 = HEAP32[$pParent>>2]|0; - $356 = ($355|0)!=(0|0); - if (!($356)) { - break; - } - HEAP8[$jointype>>0] = 0; - $357 = HEAP32[$pSub>>2]|0; - $358 = (($357) + 32|0); - $359 = HEAP32[$358>>2]|0; - HEAP32[$pSubSrc>>2] = $359; - $360 = HEAP32[$pSubSrc>>2]|0; - $361 = HEAP32[$360>>2]|0; - HEAP32[$nSubSrc>>2] = $361; - $362 = HEAP32[$pParent>>2]|0; - $363 = (($362) + 32|0); - $364 = HEAP32[$363>>2]|0; - HEAP32[$pSrc>>2] = $364; - $365 = HEAP32[$pSrc>>2]|0; - $366 = ($365|0)!=(0|0); - if ($366) { - $367 = HEAP32[$pSubitem>>2]|0; - $368 = (($367) + 36|0); - $369 = HEAP8[$368>>0]|0; - HEAP8[$jointype>>0] = $369; - } else { - $370 = HEAP32[$db>>2]|0; - $371 = (_sqlite3SrcListAppend($370,0,0,0)|0); - $372 = HEAP32[$pParent>>2]|0; - $373 = (($372) + 32|0); - HEAP32[$373>>2] = $371; - HEAP32[$pSrc>>2] = $371; - $374 = HEAP32[$pSrc>>2]|0; - $375 = ($374|0)==(0|0); - if ($375) { - break; - } - } - $376 = HEAP32[$nSubSrc>>2]|0; - $377 = ($376|0)>(1); - if ($377) { - $378 = HEAP32[$db>>2]|0; - $379 = HEAP32[$pSrc>>2]|0; - $380 = HEAP32[$nSubSrc>>2]|0; - $381 = (($380) - 1)|0; - $382 = HEAP32[$3>>2]|0; - $383 = (($382) + 1)|0; - $384 = (_sqlite3SrcListEnlarge($378,$379,$381,$383)|0); - HEAP32[$pSrc>>2] = $384; - $385 = HEAP32[$pParent>>2]|0; - $386 = (($385) + 32|0); - HEAP32[$386>>2] = $384; - $387 = HEAP32[$db>>2]|0; - $388 = (($387) + 64|0); - $389 = HEAP8[$388>>0]|0; - $390 = ($389<<24>>24)!=(0); - if ($390) { - break; - } - } - HEAP32[$i>>2] = 0; - while(1) { - $391 = HEAP32[$i>>2]|0; - $392 = HEAP32[$nSubSrc>>2]|0; - $393 = ($391|0)<($392|0); - if (!($393)) { - break; - } - $394 = HEAP32[$db>>2]|0; - $395 = HEAP32[$i>>2]|0; - $396 = HEAP32[$3>>2]|0; - $397 = (($395) + ($396))|0; - $398 = HEAP32[$pSrc>>2]|0; - $399 = (($398) + 8|0); - $400 = (($399) + (($397*72)|0)|0); - $401 = (($400) + 48|0); - $402 = HEAP32[$401>>2]|0; - _sqlite3IdListDelete($394,$402); - $403 = HEAP32[$i>>2]|0; - $404 = HEAP32[$3>>2]|0; - $405 = (($403) + ($404))|0; - $406 = HEAP32[$pSrc>>2]|0; - $407 = (($406) + 8|0); - $408 = (($407) + (($405*72)|0)|0); - $409 = HEAP32[$i>>2]|0; - $410 = HEAP32[$pSubSrc>>2]|0; - $411 = (($410) + 8|0); - $412 = (($411) + (($409*72)|0)|0); - dest=$408+0|0; src=$412+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $413 = HEAP32[$i>>2]|0; - $414 = HEAP32[$pSubSrc>>2]|0; - $415 = (($414) + 8|0); - $416 = (($415) + (($413*72)|0)|0); - dest=$416+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $417 = HEAP32[$i>>2]|0; - $418 = (($417) + 1)|0; - HEAP32[$i>>2] = $418; - } - $419 = HEAP8[$jointype>>0]|0; - $420 = HEAP32[$3>>2]|0; - $421 = HEAP32[$pSrc>>2]|0; - $422 = (($421) + 8|0); - $423 = (($422) + (($420*72)|0)|0); - $424 = (($423) + 36|0); - HEAP8[$424>>0] = $419; - $425 = HEAP32[$pParent>>2]|0; - $426 = HEAP32[$425>>2]|0; - HEAP32[$pList>>2] = $426; - HEAP32[$i>>2] = 0; - while(1) { - $427 = HEAP32[$i>>2]|0; - $428 = HEAP32[$pList>>2]|0; - $429 = HEAP32[$428>>2]|0; - $430 = ($427|0)<($429|0); - if (!($430)) { - break; - } - $431 = HEAP32[$i>>2]|0; - $432 = HEAP32[$pList>>2]|0; - $433 = (($432) + 4|0); - $434 = HEAP32[$433>>2]|0; - $435 = (($434) + (($431*20)|0)|0); - $436 = (($435) + 4|0); - $437 = HEAP32[$436>>2]|0; - $438 = ($437|0)==(0|0); - if ($438) { - $439 = HEAP32[$db>>2]|0; - $440 = HEAP32[$i>>2]|0; - $441 = HEAP32[$pList>>2]|0; - $442 = (($441) + 4|0); - $443 = HEAP32[$442>>2]|0; - $444 = (($443) + (($440*20)|0)|0); - $445 = (($444) + 8|0); - $446 = HEAP32[$445>>2]|0; - $447 = (_sqlite3DbStrDup($439,$446)|0); - HEAP32[$zName>>2] = $447; - $448 = HEAP32[$zName>>2]|0; - (_sqlite3Dequote($448)|0); - $449 = HEAP32[$zName>>2]|0; - $450 = HEAP32[$i>>2]|0; - $451 = HEAP32[$pList>>2]|0; - $452 = (($451) + 4|0); - $453 = HEAP32[$452>>2]|0; - $454 = (($453) + (($450*20)|0)|0); - $455 = (($454) + 4|0); - HEAP32[$455>>2] = $449; - } - $456 = HEAP32[$i>>2]|0; - $457 = (($456) + 1)|0; - HEAP32[$i>>2] = $457; - } - $458 = HEAP32[$db>>2]|0; - $459 = HEAP32[$pParent>>2]|0; - $460 = HEAP32[$459>>2]|0; - $461 = HEAP32[$iParent>>2]|0; - $462 = HEAP32[$pSub>>2]|0; - $463 = HEAP32[$462>>2]|0; - _substExprList($458,$460,$461,$463); - $464 = HEAP32[$4>>2]|0; - $465 = ($464|0)!=(0); - if ($465) { - $466 = HEAP32[$db>>2]|0; - $467 = HEAP32[$pParent>>2]|0; - $468 = (($467) + 40|0); - $469 = HEAP32[$468>>2]|0; - $470 = HEAP32[$iParent>>2]|0; - $471 = HEAP32[$pSub>>2]|0; - $472 = HEAP32[$471>>2]|0; - _substExprList($466,$469,$470,$472); - $473 = HEAP32[$db>>2]|0; - $474 = HEAP32[$pParent>>2]|0; - $475 = (($474) + 44|0); - $476 = HEAP32[$475>>2]|0; - $477 = HEAP32[$iParent>>2]|0; - $478 = HEAP32[$pSub>>2]|0; - $479 = HEAP32[$478>>2]|0; - $480 = (_substExpr($473,$476,$477,$479)|0); - $481 = HEAP32[$pParent>>2]|0; - $482 = (($481) + 44|0); - HEAP32[$482>>2] = $480; - } - $483 = HEAP32[$pSub>>2]|0; - $484 = (($483) + 48|0); - $485 = HEAP32[$484>>2]|0; - $486 = ($485|0)!=(0|0); - do { - if ($486) { - $487 = HEAP32[$pSub>>2]|0; - $488 = (($487) + 48|0); - $489 = HEAP32[$488>>2]|0; - $490 = HEAP32[$pParent>>2]|0; - $491 = (($490) + 48|0); - HEAP32[$491>>2] = $489; - $492 = HEAP32[$pSub>>2]|0; - $493 = (($492) + 48|0); - HEAP32[$493>>2] = 0; - } else { - $494 = HEAP32[$pParent>>2]|0; - $495 = (($494) + 48|0); - $496 = HEAP32[$495>>2]|0; - $497 = ($496|0)!=(0|0); - if (!($497)) { - break; - } - $498 = HEAP32[$db>>2]|0; - $499 = HEAP32[$pParent>>2]|0; - $500 = (($499) + 48|0); - $501 = HEAP32[$500>>2]|0; - $502 = HEAP32[$iParent>>2]|0; - $503 = HEAP32[$pSub>>2]|0; - $504 = HEAP32[$503>>2]|0; - _substExprList($498,$501,$502,$504); - } - } while(0); - $505 = HEAP32[$pSub>>2]|0; - $506 = (($505) + 36|0); - $507 = HEAP32[$506>>2]|0; - $508 = ($507|0)!=(0|0); - if ($508) { - $509 = HEAP32[$db>>2]|0; - $510 = HEAP32[$pSub>>2]|0; - $511 = (($510) + 36|0); - $512 = HEAP32[$511>>2]|0; - $513 = (_sqlite3ExprDup($509,$512,0)|0); - HEAP32[$pWhere>>2] = $513; - } else { - HEAP32[$pWhere>>2] = 0; - } - $514 = HEAP32[$5>>2]|0; - $515 = ($514|0)!=(0); - if ($515) { - $516 = HEAP32[$pParent>>2]|0; - $517 = (($516) + 36|0); - $518 = HEAP32[$517>>2]|0; - $519 = HEAP32[$pParent>>2]|0; - $520 = (($519) + 44|0); - HEAP32[$520>>2] = $518; - $521 = HEAP32[$pWhere>>2]|0; - $522 = HEAP32[$pParent>>2]|0; - $523 = (($522) + 36|0); - HEAP32[$523>>2] = $521; - $524 = HEAP32[$db>>2]|0; - $525 = HEAP32[$pParent>>2]|0; - $526 = (($525) + 44|0); - $527 = HEAP32[$526>>2]|0; - $528 = HEAP32[$iParent>>2]|0; - $529 = HEAP32[$pSub>>2]|0; - $530 = HEAP32[$529>>2]|0; - $531 = (_substExpr($524,$527,$528,$530)|0); - $532 = HEAP32[$pParent>>2]|0; - $533 = (($532) + 44|0); - HEAP32[$533>>2] = $531; - $534 = HEAP32[$db>>2]|0; - $535 = HEAP32[$pParent>>2]|0; - $536 = (($535) + 44|0); - $537 = HEAP32[$536>>2]|0; - $538 = HEAP32[$db>>2]|0; - $539 = HEAP32[$pSub>>2]|0; - $540 = (($539) + 44|0); - $541 = HEAP32[$540>>2]|0; - $542 = (_sqlite3ExprDup($538,$541,0)|0); - $543 = (_sqlite3ExprAnd($534,$537,$542)|0); - $544 = HEAP32[$pParent>>2]|0; - $545 = (($544) + 44|0); - HEAP32[$545>>2] = $543; - $546 = HEAP32[$db>>2]|0; - $547 = HEAP32[$pSub>>2]|0; - $548 = (($547) + 40|0); - $549 = HEAP32[$548>>2]|0; - $550 = (_sqlite3ExprListDup($546,$549,0)|0); - $551 = HEAP32[$pParent>>2]|0; - $552 = (($551) + 40|0); - HEAP32[$552>>2] = $550; - } else { - $553 = HEAP32[$db>>2]|0; - $554 = HEAP32[$pParent>>2]|0; - $555 = (($554) + 36|0); - $556 = HEAP32[$555>>2]|0; - $557 = HEAP32[$iParent>>2]|0; - $558 = HEAP32[$pSub>>2]|0; - $559 = HEAP32[$558>>2]|0; - $560 = (_substExpr($553,$556,$557,$559)|0); - $561 = HEAP32[$pParent>>2]|0; - $562 = (($561) + 36|0); - HEAP32[$562>>2] = $560; - $563 = HEAP32[$db>>2]|0; - $564 = HEAP32[$pParent>>2]|0; - $565 = (($564) + 36|0); - $566 = HEAP32[$565>>2]|0; - $567 = HEAP32[$pWhere>>2]|0; - $568 = (_sqlite3ExprAnd($563,$566,$567)|0); - $569 = HEAP32[$pParent>>2]|0; - $570 = (($569) + 36|0); - HEAP32[$570>>2] = $568; - } - $571 = HEAP32[$pSub>>2]|0; - $572 = (($571) + 6|0); - $573 = HEAP16[$572>>1]|0; - $574 = $573&65535; - $575 = $574 & 1; - $576 = HEAP32[$pParent>>2]|0; - $577 = (($576) + 6|0); - $578 = HEAP16[$577>>1]|0; - $579 = $578&65535; - $580 = $579 | $575; - $581 = $580&65535; - HEAP16[$577>>1] = $581; - $582 = HEAP32[$pSub>>2]|0; - $583 = (($582) + 60|0); - $584 = HEAP32[$583>>2]|0; - $585 = ($584|0)!=(0|0); - if ($585) { - $586 = HEAP32[$pSub>>2]|0; - $587 = (($586) + 60|0); - $588 = HEAP32[$587>>2]|0; - $589 = HEAP32[$pParent>>2]|0; - $590 = (($589) + 60|0); - HEAP32[$590>>2] = $588; - $591 = HEAP32[$pSub>>2]|0; - $592 = (($591) + 60|0); - HEAP32[$592>>2] = 0; - } - $593 = HEAP32[$pParent>>2]|0; - $594 = (($593) + 52|0); - $595 = HEAP32[$594>>2]|0; - HEAP32[$pParent>>2] = $595; - $596 = HEAP32[$pSub>>2]|0; - $597 = (($596) + 52|0); - $598 = HEAP32[$597>>2]|0; - HEAP32[$pSub>>2] = $598; - } - $599 = HEAP32[$db>>2]|0; - $600 = HEAP32[$pSub1>>2]|0; - _sqlite3SelectDelete($599,$600); - HEAP32[$0>>2] = 1; - $601 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($601|0); -} -function _sqlite3ClearTempRegCache($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 19|0); - HEAP8[$2>>0] = 0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 56|0); - HEAP32[$4>>2] = 0; - STACKTOP = sp;return; -} -function _multiSelect($pParse,$p,$pDest) { - $pParse = $pParse|0; - $p = $p|0; - $pDest = $pDest|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; - var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; - var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; - var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; - var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; - var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; - var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; - var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; - var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; - var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; - var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr = 0, $addr1 = 0, $addr7 = 0, $addr9 = 0, $apColl = 0, $db = 0, $dest = 0, $i = 0, $iBreak = 0, $iBreak3 = 0; - var $iCont = 0, $iCont2 = 0, $iStart = 0, $iStart4 = 0, $iSub1 = 0, $iSub2 = 0, $intersectdest = 0, $nCol = 0, $nLimit = 0, $op = 0, $or$cond = 0, $pDelete = 0, $pFirst = 0, $pFirst8 = 0, $pKeyInfo = 0, $pLimit = 0, $pLimit5 = 0, $pLoop = 0, $pOffset = 0, $pOffset6 = 0; - var $pPrior = 0, $priorOp = 0, $r1 = 0, $rc = 0, $tab1 = 0, $tab2 = 0, $unionTab = 0, $uniondest = 0, $v = 0, $vararg_buffer7 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 224|0; - $vararg_buffer7 = sp; - $0 = sp + 212|0; - $1 = sp + 208|0; - $2 = sp + 204|0; - $3 = sp + 200|0; - $rc = sp + 196|0; - $pPrior = sp + 192|0; - $v = sp + 188|0; - $dest = sp + 168|0; - $pDelete = sp + 164|0; - $db = sp + 160|0; - $iSub1 = sp + 156|0; - $iSub2 = sp + 152|0; - $addr = sp + 148|0; - $nLimit = sp + 144|0; - $unionTab = sp + 140|0; - $op = sp + 216|0; - $priorOp = sp + 136|0; - $pLimit = sp + 132|0; - $pOffset = sp + 128|0; - $addr1 = sp + 124|0; - $uniondest = sp + 104|0; - $iCont = sp + 100|0; - $iBreak = sp + 96|0; - $iStart = sp + 92|0; - $pFirst = sp + 88|0; - $tab1 = sp + 84|0; - $tab2 = sp + 80|0; - $iCont2 = sp + 76|0; - $iBreak3 = sp + 72|0; - $iStart4 = sp + 68|0; - $pLimit5 = sp + 64|0; - $pOffset6 = sp + 60|0; - $addr7 = sp + 56|0; - $intersectdest = sp + 36|0; - $r1 = sp + 32|0; - $pFirst8 = sp + 28|0; - $i = sp + 24|0; - $pKeyInfo = sp + 20|0; - $pLoop = sp + 16|0; - $apColl = sp + 12|0; - $nCol = sp + 8|0; - $addr9 = sp + 4|0; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $p; - HEAP32[$3>>2] = $pDest; - HEAP32[$rc>>2] = 0; - HEAP32[$pDelete>>2] = 0; - HEAP32[$iSub1>>2] = 0; - HEAP32[$iSub2>>2] = 0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$2>>2]|0; - $7 = (($6) + 52|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pPrior>>2] = $8; - $9 = HEAP32[$3>>2]|0; - ;HEAP32[$dest+0>>2]=HEAP32[$9+0>>2]|0;HEAP32[$dest+4>>2]=HEAP32[$9+4>>2]|0;HEAP32[$dest+8>>2]=HEAP32[$9+8>>2]|0;HEAP32[$dest+12>>2]=HEAP32[$9+12>>2]|0;HEAP32[$dest+16>>2]=HEAP32[$9+16>>2]|0; - $10 = HEAP32[$pPrior>>2]|0; - $11 = (($10) + 48|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)!=(0|0); - L1: do { - if ($13) { - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP8[$16>>0]|0; - $18 = $17&255; - $19 = (_selectOpName($18)|0); - HEAP32[$vararg_buffer7>>2] = $19; - _sqlite3ErrorMsg($14,24904,$vararg_buffer7); - HEAP32[$rc>>2] = 1; - } else { - $20 = HEAP32[$pPrior>>2]|0; - $21 = (($20) + 60|0); - $22 = HEAP32[$21>>2]|0; - $23 = ($22|0)!=(0|0); - $24 = HEAP32[$1>>2]|0; - if ($23) { - $25 = HEAP32[$2>>2]|0; - $26 = (($25) + 4|0); - $27 = HEAP8[$26>>0]|0; - $28 = $27&255; - $29 = (_selectOpName($28)|0); - HEAP32[$vararg_buffer7>>2] = $29; - _sqlite3ErrorMsg($24,24952,$vararg_buffer7); - HEAP32[$rc>>2] = 1; - break; - } - $30 = (_sqlite3GetVdbe($24)|0); - HEAP32[$v>>2] = $30; - $31 = HEAP8[$dest>>0]|0; - $32 = $31&255; - $33 = ($32|0)==(12); - if ($33) { - $34 = HEAP32[$v>>2]|0; - $35 = (($dest) + 4|0); - $36 = HEAP32[$35>>2]|0; - $37 = HEAP32[$2>>2]|0; - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$38>>2]|0; - (_sqlite3VdbeAddOp2($34,55,$36,$39)|0); - $40 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($40,8); - HEAP8[$dest>>0] = 14; - } - $41 = HEAP32[$2>>2]|0; - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$pPrior>>2]|0; - $45 = HEAP32[$44>>2]|0; - $46 = HEAP32[$45>>2]|0; - $47 = ($43|0)!=($46|0); - $48 = HEAP32[$2>>2]|0; - $49 = (($48) + 6|0); - $50 = HEAP16[$49>>1]|0; - $51 = $50&65535; - if ($47) { - $52 = $51 & 128; - $53 = ($52|0)!=(0); - $54 = HEAP32[$1>>2]|0; - if ($53) { - _sqlite3ErrorMsg($54,25000,$vararg_buffer7); - } else { - $55 = HEAP32[$2>>2]|0; - $56 = (($55) + 4|0); - $57 = HEAP8[$56>>0]|0; - $58 = $57&255; - $59 = (_selectOpName($58)|0); - HEAP32[$vararg_buffer7>>2] = $59; - _sqlite3ErrorMsg($54,25048,$vararg_buffer7); - } - HEAP32[$rc>>2] = 1; - break; - } - $60 = $51 & 2048; - $61 = ($60|0)!=(0); - do { - if ($61) { - $62 = HEAP32[$1>>2]|0; - $63 = HEAP32[$2>>2]|0; - _generateWithRecursiveQuery($62,$63,$dest); - } else { - $64 = HEAP32[$2>>2]|0; - $65 = (($64) + 48|0); - $66 = HEAP32[$65>>2]|0; - $67 = ($66|0)!=(0|0); - if ($67) { - $68 = HEAP32[$1>>2]|0; - $69 = HEAP32[$2>>2]|0; - $70 = HEAP32[$3>>2]|0; - $71 = (_multiSelectOrderBy($68,$69,$70)|0); - HEAP32[$0>>2] = $71; - $609 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($609|0); - } - $72 = HEAP32[$2>>2]|0; - $73 = (($72) + 4|0); - $74 = HEAP8[$73>>0]|0; - $75 = $74&255; - if ((($75|0) == 115) | (($75|0) == 117)) { - HEAP8[$op>>0] = 0; - HEAP32[$priorOp>>2] = 1; - $203 = HEAP8[$dest>>0]|0; - $204 = $203&255; - $205 = HEAP32[$priorOp>>2]|0; - $206 = ($204|0)==($205|0); - if ($206) { - $207 = (($dest) + 4|0); - $208 = HEAP32[$207>>2]|0; - HEAP32[$unionTab>>2] = $208; - } else { - $209 = HEAP32[$1>>2]|0; - $210 = (($209) + 68|0); - $211 = HEAP32[$210>>2]|0; - $212 = (($211) + 1)|0; - HEAP32[$210>>2] = $212; - HEAP32[$unionTab>>2] = $211; - $213 = HEAP32[$v>>2]|0; - $214 = HEAP32[$unionTab>>2]|0; - $215 = (_sqlite3VdbeAddOp2($213,55,$214,0)|0); - HEAP32[$addr1>>2] = $215; - $216 = HEAP32[$addr1>>2]|0; - $217 = HEAP32[$2>>2]|0; - $218 = (($217) + 16|0); - HEAP32[$218>>2] = $216; - $219 = HEAP32[$2>>2]|0; - $220 = (_findRightmost($219)|0); - $221 = (($220) + 6|0); - $222 = HEAP16[$221>>1]|0; - $223 = $222&65535; - $224 = $223 | 8; - $225 = $224&65535; - HEAP16[$221>>1] = $225; - } - $226 = HEAP32[$priorOp>>2]|0; - $227 = HEAP32[$unionTab>>2]|0; - _sqlite3SelectDestInit($uniondest,$226,$227); - $228 = HEAP32[$1>>2]|0; - $229 = (($228) + 468|0); - $230 = HEAP32[$229>>2]|0; - HEAP32[$iSub1>>2] = $230; - $231 = HEAP32[$1>>2]|0; - $232 = HEAP32[$pPrior>>2]|0; - $233 = (_sqlite3Select($231,$232,$uniondest)|0); - HEAP32[$rc>>2] = $233; - $234 = HEAP32[$rc>>2]|0; - $235 = ($234|0)!=(0); - if ($235) { - break L1; - } - $236 = HEAP32[$2>>2]|0; - $237 = (($236) + 4|0); - $238 = HEAP8[$237>>0]|0; - $239 = $238&255; - $240 = ($239|0)==(117); - if ($240) { - HEAP8[$op>>0] = 2; - } else { - HEAP8[$op>>0] = 1; - } - $241 = HEAP32[$2>>2]|0; - $242 = (($241) + 52|0); - HEAP32[$242>>2] = 0; - $243 = HEAP32[$2>>2]|0; - $244 = (($243) + 60|0); - $245 = HEAP32[$244>>2]|0; - HEAP32[$pLimit>>2] = $245; - $246 = HEAP32[$2>>2]|0; - $247 = (($246) + 60|0); - HEAP32[$247>>2] = 0; - $248 = HEAP32[$2>>2]|0; - $249 = (($248) + 64|0); - $250 = HEAP32[$249>>2]|0; - HEAP32[$pOffset>>2] = $250; - $251 = HEAP32[$2>>2]|0; - $252 = (($251) + 64|0); - HEAP32[$252>>2] = 0; - $253 = HEAP8[$op>>0]|0; - HEAP8[$uniondest>>0] = $253; - $254 = HEAP32[$1>>2]|0; - $255 = (($254) + 468|0); - $256 = HEAP32[$255>>2]|0; - HEAP32[$iSub2>>2] = $256; - $257 = HEAP32[$1>>2]|0; - $258 = HEAP32[$2>>2]|0; - $259 = (_sqlite3Select($257,$258,$uniondest)|0); - HEAP32[$rc>>2] = $259; - $260 = HEAP32[$db>>2]|0; - $261 = HEAP32[$2>>2]|0; - $262 = (($261) + 48|0); - $263 = HEAP32[$262>>2]|0; - _sqlite3ExprListDelete($260,$263); - $264 = HEAP32[$2>>2]|0; - $265 = (($264) + 52|0); - $266 = HEAP32[$265>>2]|0; - HEAP32[$pDelete>>2] = $266; - $267 = HEAP32[$pPrior>>2]|0; - $268 = HEAP32[$2>>2]|0; - $269 = (($268) + 52|0); - HEAP32[$269>>2] = $267; - $270 = HEAP32[$2>>2]|0; - $271 = (($270) + 48|0); - HEAP32[$271>>2] = 0; - $272 = HEAP32[$2>>2]|0; - $273 = (($272) + 4|0); - $274 = HEAP8[$273>>0]|0; - $275 = $274&255; - $276 = ($275|0)==(115); - if ($276) { - $277 = HEAP32[$pPrior>>2]|0; - $278 = (($277) + 24|0); - $279 = $278; - $280 = $279; - $281 = HEAP32[$280>>2]|0; - $282 = (($279) + 4)|0; - $283 = $282; - $284 = HEAP32[$283>>2]|0; - $285 = HEAP32[$2>>2]|0; - $286 = (($285) + 24|0); - $287 = $286; - $288 = $287; - $289 = HEAP32[$288>>2]|0; - $290 = (($287) + 4)|0; - $291 = $290; - $292 = HEAP32[$291>>2]|0; - $293 = (_i64Add(($289|0),($292|0),($281|0),($284|0))|0); - $294 = tempRet0; - $295 = $286; - $296 = $295; - HEAP32[$296>>2] = $293; - $297 = (($295) + 4)|0; - $298 = $297; - HEAP32[$298>>2] = $294; - } - $299 = HEAP32[$db>>2]|0; - $300 = HEAP32[$2>>2]|0; - $301 = (($300) + 60|0); - $302 = HEAP32[$301>>2]|0; - _sqlite3ExprDelete($299,$302); - $303 = HEAP32[$pLimit>>2]|0; - $304 = HEAP32[$2>>2]|0; - $305 = (($304) + 60|0); - HEAP32[$305>>2] = $303; - $306 = HEAP32[$pOffset>>2]|0; - $307 = HEAP32[$2>>2]|0; - $308 = (($307) + 64|0); - HEAP32[$308>>2] = $306; - $309 = HEAP32[$2>>2]|0; - $310 = (($309) + 8|0); - HEAP32[$310>>2] = 0; - $311 = HEAP32[$2>>2]|0; - $312 = (($311) + 12|0); - HEAP32[$312>>2] = 0; - $313 = HEAP8[$dest>>0]|0; - $314 = $313&255; - $315 = HEAP32[$priorOp>>2]|0; - $316 = ($314|0)!=($315|0); - if (!($316)) { - break; - } - $317 = HEAP8[$dest>>0]|0; - $318 = $317&255; - $319 = ($318|0)==(9); - if ($319) { - $320 = HEAP32[$2>>2]|0; - HEAP32[$pFirst>>2] = $320; - while(1) { - $321 = HEAP32[$pFirst>>2]|0; - $322 = (($321) + 52|0); - $323 = HEAP32[$322>>2]|0; - $324 = ($323|0)!=(0|0); - if (!($324)) { - break; - } - $325 = HEAP32[$pFirst>>2]|0; - $326 = (($325) + 52|0); - $327 = HEAP32[$326>>2]|0; - HEAP32[$pFirst>>2] = $327; - } - $328 = HEAP32[$1>>2]|0; - $329 = HEAP32[$pFirst>>2]|0; - $330 = HEAP32[$329>>2]|0; - _generateColumnNames($328,0,$330); - } - $331 = HEAP32[$v>>2]|0; - $332 = (_sqlite3VdbeMakeLabel($331)|0); - HEAP32[$iBreak>>2] = $332; - $333 = HEAP32[$v>>2]|0; - $334 = (_sqlite3VdbeMakeLabel($333)|0); - HEAP32[$iCont>>2] = $334; - $335 = HEAP32[$1>>2]|0; - $336 = HEAP32[$2>>2]|0; - $337 = HEAP32[$iBreak>>2]|0; - _computeLimitRegisters($335,$336,$337); - $338 = HEAP32[$v>>2]|0; - $339 = HEAP32[$unionTab>>2]|0; - $340 = HEAP32[$iBreak>>2]|0; - (_sqlite3VdbeAddOp2($338,105,$339,$340)|0); - $341 = HEAP32[$v>>2]|0; - $342 = (_sqlite3VdbeCurrentAddr($341)|0); - HEAP32[$iStart>>2] = $342; - $343 = HEAP32[$1>>2]|0; - $344 = HEAP32[$2>>2]|0; - $345 = HEAP32[$2>>2]|0; - $346 = HEAP32[$345>>2]|0; - $347 = HEAP32[$unionTab>>2]|0; - $348 = HEAP32[$iCont>>2]|0; - $349 = HEAP32[$iBreak>>2]|0; - _selectInnerLoop($343,$344,$346,$347,0,0,$dest,$348,$349); - $350 = HEAP32[$v>>2]|0; - $351 = HEAP32[$iCont>>2]|0; - _sqlite3VdbeResolveLabel($350,$351); - $352 = HEAP32[$v>>2]|0; - $353 = HEAP32[$unionTab>>2]|0; - $354 = HEAP32[$iStart>>2]|0; - (_sqlite3VdbeAddOp2($352,9,$353,$354)|0); - $355 = HEAP32[$v>>2]|0; - $356 = HEAP32[$iBreak>>2]|0; - _sqlite3VdbeResolveLabel($355,$356); - $357 = HEAP32[$v>>2]|0; - $358 = HEAP32[$unionTab>>2]|0; - (_sqlite3VdbeAddOp2($357,58,$358,0)|0); - break; - } else if ((($75|0) == 116)) { - HEAP32[$addr>>2] = 0; - $76 = HEAP32[$2>>2]|0; - $77 = (($76) + 8|0); - $78 = HEAP32[$77>>2]|0; - $79 = HEAP32[$pPrior>>2]|0; - $80 = (($79) + 8|0); - HEAP32[$80>>2] = $78; - $81 = HEAP32[$2>>2]|0; - $82 = (($81) + 12|0); - $83 = HEAP32[$82>>2]|0; - $84 = HEAP32[$pPrior>>2]|0; - $85 = (($84) + 12|0); - HEAP32[$85>>2] = $83; - $86 = HEAP32[$2>>2]|0; - $87 = (($86) + 60|0); - $88 = HEAP32[$87>>2]|0; - $89 = HEAP32[$pPrior>>2]|0; - $90 = (($89) + 60|0); - HEAP32[$90>>2] = $88; - $91 = HEAP32[$2>>2]|0; - $92 = (($91) + 64|0); - $93 = HEAP32[$92>>2]|0; - $94 = HEAP32[$pPrior>>2]|0; - $95 = (($94) + 64|0); - HEAP32[$95>>2] = $93; - $96 = HEAP32[$1>>2]|0; - $97 = (($96) + 468|0); - $98 = HEAP32[$97>>2]|0; - HEAP32[$iSub1>>2] = $98; - $99 = HEAP32[$1>>2]|0; - $100 = HEAP32[$pPrior>>2]|0; - $101 = (_sqlite3Select($99,$100,$dest)|0); - HEAP32[$rc>>2] = $101; - $102 = HEAP32[$2>>2]|0; - $103 = (($102) + 60|0); - HEAP32[$103>>2] = 0; - $104 = HEAP32[$2>>2]|0; - $105 = (($104) + 64|0); - HEAP32[$105>>2] = 0; - $106 = HEAP32[$rc>>2]|0; - $107 = ($106|0)!=(0); - if ($107) { - break L1; - } - $108 = HEAP32[$2>>2]|0; - $109 = (($108) + 52|0); - HEAP32[$109>>2] = 0; - $110 = HEAP32[$pPrior>>2]|0; - $111 = (($110) + 8|0); - $112 = HEAP32[$111>>2]|0; - $113 = HEAP32[$2>>2]|0; - $114 = (($113) + 8|0); - HEAP32[$114>>2] = $112; - $115 = HEAP32[$pPrior>>2]|0; - $116 = (($115) + 12|0); - $117 = HEAP32[$116>>2]|0; - $118 = HEAP32[$2>>2]|0; - $119 = (($118) + 12|0); - HEAP32[$119>>2] = $117; - $120 = HEAP32[$2>>2]|0; - $121 = (($120) + 8|0); - $122 = HEAP32[$121>>2]|0; - $123 = ($122|0)!=(0); - if ($123) { - $124 = HEAP32[$v>>2]|0; - $125 = HEAP32[$2>>2]|0; - $126 = (($125) + 8|0); - $127 = HEAP32[$126>>2]|0; - $128 = (_sqlite3VdbeAddOp1($124,136,$127)|0); - HEAP32[$addr>>2] = $128; - } - $129 = HEAP32[$1>>2]|0; - $130 = (($129) + 468|0); - $131 = HEAP32[$130>>2]|0; - HEAP32[$iSub2>>2] = $131; - $132 = HEAP32[$1>>2]|0; - $133 = HEAP32[$2>>2]|0; - $134 = (_sqlite3Select($132,$133,$dest)|0); - HEAP32[$rc>>2] = $134; - $135 = HEAP32[$2>>2]|0; - $136 = (($135) + 52|0); - $137 = HEAP32[$136>>2]|0; - HEAP32[$pDelete>>2] = $137; - $138 = HEAP32[$pPrior>>2]|0; - $139 = HEAP32[$2>>2]|0; - $140 = (($139) + 52|0); - HEAP32[$140>>2] = $138; - $141 = HEAP32[$pPrior>>2]|0; - $142 = (($141) + 24|0); - $143 = $142; - $144 = $143; - $145 = HEAP32[$144>>2]|0; - $146 = (($143) + 4)|0; - $147 = $146; - $148 = HEAP32[$147>>2]|0; - $149 = HEAP32[$2>>2]|0; - $150 = (($149) + 24|0); - $151 = $150; - $152 = $151; - $153 = HEAP32[$152>>2]|0; - $154 = (($151) + 4)|0; - $155 = $154; - $156 = HEAP32[$155>>2]|0; - $157 = (_i64Add(($153|0),($156|0),($145|0),($148|0))|0); - $158 = tempRet0; - $159 = $150; - $160 = $159; - HEAP32[$160>>2] = $157; - $161 = (($159) + 4)|0; - $162 = $161; - HEAP32[$162>>2] = $158; - $163 = HEAP32[$pPrior>>2]|0; - $164 = (($163) + 60|0); - $165 = HEAP32[$164>>2]|0; - $166 = ($165|0)!=(0|0); - if ($166) { - $167 = HEAP32[$pPrior>>2]|0; - $168 = (($167) + 60|0); - $169 = HEAP32[$168>>2]|0; - $170 = (_sqlite3ExprIsInteger($169,$nLimit)|0); - $171 = ($170|0)!=(0); - $172 = HEAP32[$nLimit>>2]|0; - $173 = ($172|0)>(0); - $or$cond = $171 & $173; - if ($or$cond) { - $174 = HEAP32[$2>>2]|0; - $175 = (($174) + 24|0); - $176 = $175; - $177 = $176; - $178 = HEAP32[$177>>2]|0; - $179 = (($176) + 4)|0; - $180 = $179; - $181 = HEAP32[$180>>2]|0; - $182 = HEAP32[$nLimit>>2]|0; - $183 = ($182|0)<(0); - $184 = $183 << 31 >> 31; - $185 = ($181>>>0)>($184>>>0); - $186 = ($181|0)==($184|0); - $187 = ($178>>>0)>($182>>>0); - $188 = $186 & $187; - $189 = $185 | $188; - if ($189) { - $190 = HEAP32[$nLimit>>2]|0; - $191 = ($190|0)<(0); - $192 = $191 << 31 >> 31; - $193 = HEAP32[$2>>2]|0; - $194 = (($193) + 24|0); - $195 = $194; - $196 = $195; - HEAP32[$196>>2] = $190; - $197 = (($195) + 4)|0; - $198 = $197; - HEAP32[$198>>2] = $192; - } - } - } - $199 = HEAP32[$addr>>2]|0; - $200 = ($199|0)!=(0); - if (!($200)) { - break; - } - $201 = HEAP32[$v>>2]|0; - $202 = HEAP32[$addr>>2]|0; - _sqlite3VdbeJumpHere($201,$202); - break; - } else { - $359 = HEAP32[$1>>2]|0; - $360 = (($359) + 68|0); - $361 = HEAP32[$360>>2]|0; - $362 = (($361) + 1)|0; - HEAP32[$360>>2] = $362; - HEAP32[$tab1>>2] = $361; - $363 = HEAP32[$1>>2]|0; - $364 = (($363) + 68|0); - $365 = HEAP32[$364>>2]|0; - $366 = (($365) + 1)|0; - HEAP32[$364>>2] = $366; - HEAP32[$tab2>>2] = $365; - $367 = HEAP32[$v>>2]|0; - $368 = HEAP32[$tab1>>2]|0; - $369 = (_sqlite3VdbeAddOp2($367,55,$368,0)|0); - HEAP32[$addr7>>2] = $369; - $370 = HEAP32[$addr7>>2]|0; - $371 = HEAP32[$2>>2]|0; - $372 = (($371) + 16|0); - HEAP32[$372>>2] = $370; - $373 = HEAP32[$2>>2]|0; - $374 = (_findRightmost($373)|0); - $375 = (($374) + 6|0); - $376 = HEAP16[$375>>1]|0; - $377 = $376&65535; - $378 = $377 | 8; - $379 = $378&65535; - HEAP16[$375>>1] = $379; - $380 = HEAP32[$tab1>>2]|0; - _sqlite3SelectDestInit($intersectdest,1,$380); - $381 = HEAP32[$1>>2]|0; - $382 = (($381) + 468|0); - $383 = HEAP32[$382>>2]|0; - HEAP32[$iSub1>>2] = $383; - $384 = HEAP32[$1>>2]|0; - $385 = HEAP32[$pPrior>>2]|0; - $386 = (_sqlite3Select($384,$385,$intersectdest)|0); - HEAP32[$rc>>2] = $386; - $387 = HEAP32[$rc>>2]|0; - $388 = ($387|0)!=(0); - if ($388) { - break L1; - } - $389 = HEAP32[$v>>2]|0; - $390 = HEAP32[$tab2>>2]|0; - $391 = (_sqlite3VdbeAddOp2($389,55,$390,0)|0); - HEAP32[$addr7>>2] = $391; - $392 = HEAP32[$addr7>>2]|0; - $393 = HEAP32[$2>>2]|0; - $394 = (($393) + 16|0); - $395 = (($394) + 4|0); - HEAP32[$395>>2] = $392; - $396 = HEAP32[$2>>2]|0; - $397 = (($396) + 52|0); - HEAP32[$397>>2] = 0; - $398 = HEAP32[$2>>2]|0; - $399 = (($398) + 60|0); - $400 = HEAP32[$399>>2]|0; - HEAP32[$pLimit5>>2] = $400; - $401 = HEAP32[$2>>2]|0; - $402 = (($401) + 60|0); - HEAP32[$402>>2] = 0; - $403 = HEAP32[$2>>2]|0; - $404 = (($403) + 64|0); - $405 = HEAP32[$404>>2]|0; - HEAP32[$pOffset6>>2] = $405; - $406 = HEAP32[$2>>2]|0; - $407 = (($406) + 64|0); - HEAP32[$407>>2] = 0; - $408 = HEAP32[$tab2>>2]|0; - $409 = (($intersectdest) + 4|0); - HEAP32[$409>>2] = $408; - $410 = HEAP32[$1>>2]|0; - $411 = (($410) + 468|0); - $412 = HEAP32[$411>>2]|0; - HEAP32[$iSub2>>2] = $412; - $413 = HEAP32[$1>>2]|0; - $414 = HEAP32[$2>>2]|0; - $415 = (_sqlite3Select($413,$414,$intersectdest)|0); - HEAP32[$rc>>2] = $415; - $416 = HEAP32[$2>>2]|0; - $417 = (($416) + 52|0); - $418 = HEAP32[$417>>2]|0; - HEAP32[$pDelete>>2] = $418; - $419 = HEAP32[$pPrior>>2]|0; - $420 = HEAP32[$2>>2]|0; - $421 = (($420) + 52|0); - HEAP32[$421>>2] = $419; - $422 = HEAP32[$2>>2]|0; - $423 = (($422) + 24|0); - $424 = $423; - $425 = $424; - $426 = HEAP32[$425>>2]|0; - $427 = (($424) + 4)|0; - $428 = $427; - $429 = HEAP32[$428>>2]|0; - $430 = HEAP32[$pPrior>>2]|0; - $431 = (($430) + 24|0); - $432 = $431; - $433 = $432; - $434 = HEAP32[$433>>2]|0; - $435 = (($432) + 4)|0; - $436 = $435; - $437 = HEAP32[$436>>2]|0; - $438 = ($429>>>0)>($437>>>0); - $439 = ($429|0)==($437|0); - $440 = ($426>>>0)>($434>>>0); - $441 = $439 & $440; - $442 = $438 | $441; - if ($442) { - $443 = HEAP32[$pPrior>>2]|0; - $444 = (($443) + 24|0); - $445 = $444; - $446 = $445; - $447 = HEAP32[$446>>2]|0; - $448 = (($445) + 4)|0; - $449 = $448; - $450 = HEAP32[$449>>2]|0; - $451 = HEAP32[$2>>2]|0; - $452 = (($451) + 24|0); - $453 = $452; - $454 = $453; - HEAP32[$454>>2] = $447; - $455 = (($453) + 4)|0; - $456 = $455; - HEAP32[$456>>2] = $450; - } - $457 = HEAP32[$db>>2]|0; - $458 = HEAP32[$2>>2]|0; - $459 = (($458) + 60|0); - $460 = HEAP32[$459>>2]|0; - _sqlite3ExprDelete($457,$460); - $461 = HEAP32[$pLimit5>>2]|0; - $462 = HEAP32[$2>>2]|0; - $463 = (($462) + 60|0); - HEAP32[$463>>2] = $461; - $464 = HEAP32[$pOffset6>>2]|0; - $465 = HEAP32[$2>>2]|0; - $466 = (($465) + 64|0); - HEAP32[$466>>2] = $464; - $467 = HEAP8[$dest>>0]|0; - $468 = $467&255; - $469 = ($468|0)==(9); - if ($469) { - $470 = HEAP32[$2>>2]|0; - HEAP32[$pFirst8>>2] = $470; - while(1) { - $471 = HEAP32[$pFirst8>>2]|0; - $472 = (($471) + 52|0); - $473 = HEAP32[$472>>2]|0; - $474 = ($473|0)!=(0|0); - if (!($474)) { - break; - } - $475 = HEAP32[$pFirst8>>2]|0; - $476 = (($475) + 52|0); - $477 = HEAP32[$476>>2]|0; - HEAP32[$pFirst8>>2] = $477; - } - $478 = HEAP32[$1>>2]|0; - $479 = HEAP32[$pFirst8>>2]|0; - $480 = HEAP32[$479>>2]|0; - _generateColumnNames($478,0,$480); - } - $481 = HEAP32[$v>>2]|0; - $482 = (_sqlite3VdbeMakeLabel($481)|0); - HEAP32[$iBreak3>>2] = $482; - $483 = HEAP32[$v>>2]|0; - $484 = (_sqlite3VdbeMakeLabel($483)|0); - HEAP32[$iCont2>>2] = $484; - $485 = HEAP32[$1>>2]|0; - $486 = HEAP32[$2>>2]|0; - $487 = HEAP32[$iBreak3>>2]|0; - _computeLimitRegisters($485,$486,$487); - $488 = HEAP32[$v>>2]|0; - $489 = HEAP32[$tab1>>2]|0; - $490 = HEAP32[$iBreak3>>2]|0; - (_sqlite3VdbeAddOp2($488,105,$489,$490)|0); - $491 = HEAP32[$1>>2]|0; - $492 = (_sqlite3GetTempReg($491)|0); - HEAP32[$r1>>2] = $492; - $493 = HEAP32[$v>>2]|0; - $494 = HEAP32[$tab1>>2]|0; - $495 = HEAP32[$r1>>2]|0; - $496 = (_sqlite3VdbeAddOp2($493,98,$494,$495)|0); - HEAP32[$iStart4>>2] = $496; - $497 = HEAP32[$v>>2]|0; - $498 = HEAP32[$tab2>>2]|0; - $499 = HEAP32[$iCont2>>2]|0; - $500 = HEAP32[$r1>>2]|0; - (_sqlite3VdbeAddOp4Int($497,65,$498,$499,$500,0)|0); - $501 = HEAP32[$1>>2]|0; - $502 = HEAP32[$r1>>2]|0; - _sqlite3ReleaseTempReg($501,$502); - $503 = HEAP32[$1>>2]|0; - $504 = HEAP32[$2>>2]|0; - $505 = HEAP32[$2>>2]|0; - $506 = HEAP32[$505>>2]|0; - $507 = HEAP32[$tab1>>2]|0; - $508 = HEAP32[$iCont2>>2]|0; - $509 = HEAP32[$iBreak3>>2]|0; - _selectInnerLoop($503,$504,$506,$507,0,0,$dest,$508,$509); - $510 = HEAP32[$v>>2]|0; - $511 = HEAP32[$iCont2>>2]|0; - _sqlite3VdbeResolveLabel($510,$511); - $512 = HEAP32[$v>>2]|0; - $513 = HEAP32[$tab1>>2]|0; - $514 = HEAP32[$iStart4>>2]|0; - (_sqlite3VdbeAddOp2($512,9,$513,$514)|0); - $515 = HEAP32[$v>>2]|0; - $516 = HEAP32[$iBreak3>>2]|0; - _sqlite3VdbeResolveLabel($515,$516); - $517 = HEAP32[$v>>2]|0; - $518 = HEAP32[$tab2>>2]|0; - (_sqlite3VdbeAddOp2($517,58,$518,0)|0); - $519 = HEAP32[$v>>2]|0; - $520 = HEAP32[$tab1>>2]|0; - (_sqlite3VdbeAddOp2($519,58,$520,0)|0); - break; - } - } - } while(0); - $521 = HEAP32[$1>>2]|0; - $522 = HEAP32[$2>>2]|0; - $523 = (($522) + 4|0); - $524 = HEAP8[$523>>0]|0; - $525 = $524&255; - $526 = HEAP32[$iSub1>>2]|0; - $527 = HEAP32[$iSub2>>2]|0; - $528 = HEAP32[$2>>2]|0; - $529 = (($528) + 4|0); - $530 = HEAP8[$529>>0]|0; - $531 = $530&255; - $532 = ($531|0)!=(116); - $533 = $532&1; - _explainComposite($521,$525,$526,$527,$533); - $534 = HEAP32[$2>>2]|0; - $535 = (($534) + 6|0); - $536 = HEAP16[$535>>1]|0; - $537 = $536&65535; - $538 = $537 & 8; - $539 = ($538|0)!=(0); - if ($539) { - $540 = HEAP32[$2>>2]|0; - $541 = HEAP32[$540>>2]|0; - $542 = HEAP32[$541>>2]|0; - HEAP32[$nCol>>2] = $542; - $543 = HEAP32[$db>>2]|0; - $544 = HEAP32[$nCol>>2]|0; - $545 = (_sqlite3KeyInfoAlloc($543,$544,1)|0); - HEAP32[$pKeyInfo>>2] = $545; - $546 = HEAP32[$pKeyInfo>>2]|0; - $547 = ($546|0)!=(0|0); - if (!($547)) { - HEAP32[$rc>>2] = 7; - break; - } - HEAP32[$i>>2] = 0; - $548 = HEAP32[$pKeyInfo>>2]|0; - $549 = (($548) + 20|0); - HEAP32[$apColl>>2] = $549; - while(1) { - $550 = HEAP32[$i>>2]|0; - $551 = HEAP32[$nCol>>2]|0; - $552 = ($550|0)<($551|0); - if (!($552)) { - break; - } - $553 = HEAP32[$1>>2]|0; - $554 = HEAP32[$2>>2]|0; - $555 = HEAP32[$i>>2]|0; - $556 = (_multiSelectCollSeq($553,$554,$555)|0); - $557 = HEAP32[$apColl>>2]|0; - HEAP32[$557>>2] = $556; - $558 = HEAP32[$apColl>>2]|0; - $559 = HEAP32[$558>>2]|0; - $560 = (0|0)==($559|0); - if ($560) { - $561 = HEAP32[$db>>2]|0; - $562 = (($561) + 8|0); - $563 = HEAP32[$562>>2]|0; - $564 = HEAP32[$apColl>>2]|0; - HEAP32[$564>>2] = $563; - } - $565 = HEAP32[$i>>2]|0; - $566 = (($565) + 1)|0; - HEAP32[$i>>2] = $566; - $567 = HEAP32[$apColl>>2]|0; - $568 = (($567) + 4|0); - HEAP32[$apColl>>2] = $568; - } - $569 = HEAP32[$2>>2]|0; - HEAP32[$pLoop>>2] = $569; - while(1) { - $570 = HEAP32[$pLoop>>2]|0; - $571 = ($570|0)!=(0|0); - if (!($571)) { - break; - } - HEAP32[$i>>2] = 0; - while(1) { - $572 = HEAP32[$i>>2]|0; - $573 = ($572|0)<(2); - if (!($573)) { - break; - } - $574 = HEAP32[$i>>2]|0; - $575 = HEAP32[$pLoop>>2]|0; - $576 = (($575) + 16|0); - $577 = (($576) + ($574<<2)|0); - $578 = HEAP32[$577>>2]|0; - HEAP32[$addr9>>2] = $578; - $579 = HEAP32[$addr9>>2]|0; - $580 = ($579|0)<(0); - if ($580) { - break; - } - $581 = HEAP32[$v>>2]|0; - $582 = HEAP32[$addr9>>2]|0; - $583 = HEAP32[$nCol>>2]|0; - _sqlite3VdbeChangeP2($581,$582,$583); - $584 = HEAP32[$v>>2]|0; - $585 = HEAP32[$addr9>>2]|0; - $586 = HEAP32[$pKeyInfo>>2]|0; - $587 = (_sqlite3KeyInfoRef($586)|0); - _sqlite3VdbeChangeP4($584,$585,$587,-6); - $588 = HEAP32[$i>>2]|0; - $589 = HEAP32[$pLoop>>2]|0; - $590 = (($589) + 16|0); - $591 = (($590) + ($588<<2)|0); - HEAP32[$591>>2] = -1; - $592 = HEAP32[$i>>2]|0; - $593 = (($592) + 1)|0; - HEAP32[$i>>2] = $593; - } - $594 = HEAP32[$pLoop>>2]|0; - $595 = (($594) + 52|0); - $596 = HEAP32[$595>>2]|0; - HEAP32[$pLoop>>2] = $596; - } - $597 = HEAP32[$pKeyInfo>>2]|0; - _sqlite3KeyInfoUnref($597); - } - } - } while(0); - $598 = (($dest) + 8|0); - $599 = HEAP32[$598>>2]|0; - $600 = HEAP32[$3>>2]|0; - $601 = (($600) + 8|0); - HEAP32[$601>>2] = $599; - $602 = (($dest) + 12|0); - $603 = HEAP32[$602>>2]|0; - $604 = HEAP32[$3>>2]|0; - $605 = (($604) + 12|0); - HEAP32[$605>>2] = $603; - $606 = HEAP32[$db>>2]|0; - $607 = HEAP32[$pDelete>>2]|0; - _sqlite3SelectDelete($606,$607); - $608 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $608; - $609 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($609|0); -} -function _keyInfoFromExprList($pParse,$pList,$iStart,$nExtra) { - $pParse = $pParse|0; - $pList = $pList|0; - $iStart = $iStart|0; - $nExtra = $nExtra|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $nExpr = 0; - var $pColl = 0, $pInfo = 0, $pItem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $nExpr = sp + 20|0; - $pInfo = sp + 16|0; - $pItem = sp + 12|0; - $db = sp + 8|0; - $i = sp + 4|0; - $pColl = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pList; - HEAP32[$2>>2] = $iStart; - HEAP32[$3>>2] = $nExtra; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$nExpr>>2] = $7; - $8 = HEAP32[$db>>2]|0; - $9 = HEAP32[$nExpr>>2]|0; - $10 = HEAP32[$3>>2]|0; - $11 = (($9) + ($10))|0; - $12 = HEAP32[$2>>2]|0; - $13 = (($11) - ($12))|0; - $14 = (_sqlite3KeyInfoAlloc($8,$13,1)|0); - HEAP32[$pInfo>>2] = $14; - $15 = HEAP32[$pInfo>>2]|0; - $16 = ($15|0)!=(0|0); - if (!($16)) { - $56 = HEAP32[$pInfo>>2]|0; - STACKTOP = sp;return ($56|0); - } - $17 = HEAP32[$2>>2]|0; - HEAP32[$i>>2] = $17; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 4|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = (($20) + (($21*20)|0)|0); - HEAP32[$pItem>>2] = $22; - while(1) { - $23 = HEAP32[$i>>2]|0; - $24 = HEAP32[$nExpr>>2]|0; - $25 = ($23|0)<($24|0); - if (!($25)) { - break; - } - $26 = HEAP32[$0>>2]|0; - $27 = HEAP32[$pItem>>2]|0; - $28 = HEAP32[$27>>2]|0; - $29 = (_sqlite3ExprCollSeq($26,$28)|0); - HEAP32[$pColl>>2] = $29; - $30 = HEAP32[$pColl>>2]|0; - $31 = ($30|0)!=(0|0); - if (!($31)) { - $32 = HEAP32[$db>>2]|0; - $33 = (($32) + 8|0); - $34 = HEAP32[$33>>2]|0; - HEAP32[$pColl>>2] = $34; - } - $35 = HEAP32[$pColl>>2]|0; - $36 = HEAP32[$i>>2]|0; - $37 = HEAP32[$2>>2]|0; - $38 = (($36) - ($37))|0; - $39 = HEAP32[$pInfo>>2]|0; - $40 = (($39) + 20|0); - $41 = (($40) + ($38<<2)|0); - HEAP32[$41>>2] = $35; - $42 = HEAP32[$pItem>>2]|0; - $43 = (($42) + 12|0); - $44 = HEAP8[$43>>0]|0; - $45 = HEAP32[$i>>2]|0; - $46 = HEAP32[$2>>2]|0; - $47 = (($45) - ($46))|0; - $48 = HEAP32[$pInfo>>2]|0; - $49 = (($48) + 16|0); - $50 = HEAP32[$49>>2]|0; - $51 = (($50) + ($47)|0); - HEAP8[$51>>0] = $44; - $52 = HEAP32[$i>>2]|0; - $53 = (($52) + 1)|0; - HEAP32[$i>>2] = $53; - $54 = HEAP32[$pItem>>2]|0; - $55 = (($54) + 20|0); - HEAP32[$pItem>>2] = $55; - } - $56 = HEAP32[$pInfo>>2]|0; - STACKTOP = sp;return ($56|0); -} -function _computeLimitRegisters($pParse,$p,$iBreak) { - $pParse = $pParse|0; - $p = $p|0; - $iBreak = $iBreak|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0; - var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; - var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; - var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; - var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; - var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr1 = 0, $iLimit = 0, $iOffset = 0, $n = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $v = sp + 16|0; - $iLimit = sp + 12|0; - $iOffset = sp + 8|0; - $addr1 = sp + 4|0; - $n = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $iBreak; - HEAP32[$v>>2] = 0; - HEAP32[$iLimit>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 8|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0); - if ($6) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - _sqlite3ExprCacheClear($7); - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 60|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)!=(0|0); - if (!($11)) { - STACKTOP = sp;return; - } - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 72|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + 1)|0; - HEAP32[$13>>2] = $15; - HEAP32[$iLimit>>2] = $15; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 8|0); - HEAP32[$17>>2] = $15; - $18 = HEAP32[$0>>2]|0; - $19 = (_sqlite3GetVdbe($18)|0); - HEAP32[$v>>2] = $19; - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 60|0); - $22 = HEAP32[$21>>2]|0; - $23 = (_sqlite3ExprIsInteger($22,$n)|0); - $24 = ($23|0)!=(0); - do { - if ($24) { - $25 = HEAP32[$v>>2]|0; - $26 = HEAP32[$n>>2]|0; - $27 = HEAP32[$iLimit>>2]|0; - (_sqlite3VdbeAddOp2($25,25,$26,$27)|0); - $28 = HEAP32[$n>>2]|0; - $29 = ($28|0)==(0); - if ($29) { - $30 = HEAP32[$v>>2]|0; - $31 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp2($30,16,0,$31)|0); - break; - } - $32 = HEAP32[$n>>2]|0; - $33 = ($32|0)>=(0); - if ($33) { - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 24|0); - $36 = $35; - $37 = $36; - $38 = HEAP32[$37>>2]|0; - $39 = (($36) + 4)|0; - $40 = $39; - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$n>>2]|0; - $43 = ($42|0)<(0); - $44 = $43 << 31 >> 31; - $45 = ($41>>>0)>($44>>>0); - $46 = ($41|0)==($44|0); - $47 = ($38>>>0)>($42>>>0); - $48 = $46 & $47; - $49 = $45 | $48; - if ($49) { - $50 = HEAP32[$n>>2]|0; - $51 = ($50|0)<(0); - $52 = $51 << 31 >> 31; - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + 24|0); - $55 = $54; - $56 = $55; - HEAP32[$56>>2] = $50; - $57 = (($55) + 4)|0; - $58 = $57; - HEAP32[$58>>2] = $52; - } - } - } else { - $59 = HEAP32[$0>>2]|0; - $60 = HEAP32[$1>>2]|0; - $61 = (($60) + 60|0); - $62 = HEAP32[$61>>2]|0; - $63 = HEAP32[$iLimit>>2]|0; - _sqlite3ExprCode($59,$62,$63); - $64 = HEAP32[$v>>2]|0; - $65 = HEAP32[$iLimit>>2]|0; - (_sqlite3VdbeAddOp1($64,38,$65)|0); - $66 = HEAP32[$v>>2]|0; - $67 = HEAP32[$iLimit>>2]|0; - $68 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp2($66,136,$67,$68)|0); - } - } while(0); - $69 = HEAP32[$1>>2]|0; - $70 = (($69) + 64|0); - $71 = HEAP32[$70>>2]|0; - $72 = ($71|0)!=(0|0); - if (!($72)) { - STACKTOP = sp;return; - } - $73 = HEAP32[$0>>2]|0; - $74 = (($73) + 72|0); - $75 = HEAP32[$74>>2]|0; - $76 = (($75) + 1)|0; - HEAP32[$74>>2] = $76; - HEAP32[$iOffset>>2] = $76; - $77 = HEAP32[$1>>2]|0; - $78 = (($77) + 12|0); - HEAP32[$78>>2] = $76; - $79 = HEAP32[$0>>2]|0; - $80 = (($79) + 72|0); - $81 = HEAP32[$80>>2]|0; - $82 = (($81) + 1)|0; - HEAP32[$80>>2] = $82; - $83 = HEAP32[$0>>2]|0; - $84 = HEAP32[$1>>2]|0; - $85 = (($84) + 64|0); - $86 = HEAP32[$85>>2]|0; - $87 = HEAP32[$iOffset>>2]|0; - _sqlite3ExprCode($83,$86,$87); - $88 = HEAP32[$v>>2]|0; - $89 = HEAP32[$iOffset>>2]|0; - (_sqlite3VdbeAddOp1($88,38,$89)|0); - $90 = HEAP32[$v>>2]|0; - $91 = HEAP32[$iOffset>>2]|0; - $92 = (_sqlite3VdbeAddOp1($90,134,$91)|0); - HEAP32[$addr1>>2] = $92; - $93 = HEAP32[$v>>2]|0; - $94 = HEAP32[$iOffset>>2]|0; - (_sqlite3VdbeAddOp2($93,25,0,$94)|0); - $95 = HEAP32[$v>>2]|0; - $96 = HEAP32[$addr1>>2]|0; - _sqlite3VdbeJumpHere($95,$96); - $97 = HEAP32[$v>>2]|0; - $98 = HEAP32[$iLimit>>2]|0; - $99 = HEAP32[$iOffset>>2]|0; - $100 = HEAP32[$iOffset>>2]|0; - $101 = (($100) + 1)|0; - (_sqlite3VdbeAddOp3($97,89,$98,$99,$101)|0); - $102 = HEAP32[$v>>2]|0; - $103 = HEAP32[$iLimit>>2]|0; - $104 = (_sqlite3VdbeAddOp1($102,134,$103)|0); - HEAP32[$addr1>>2] = $104; - $105 = HEAP32[$v>>2]|0; - $106 = HEAP32[$iOffset>>2]|0; - $107 = (($106) + 1)|0; - (_sqlite3VdbeAddOp2($105,25,-1,$107)|0); - $108 = HEAP32[$v>>2]|0; - $109 = HEAP32[$addr1>>2]|0; - _sqlite3VdbeJumpHere($108,$109); - STACKTOP = sp;return; -} -function _sqlite3WhereOutputRowCount($pWInfo) { - $pWInfo = $pWInfo|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pWInfo; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 32|0); - $3 = HEAP16[$2>>1]|0; - $4 = (_sqlite3LogEstToInt($3)|0); - $5 = tempRet0; - tempRet0 = $5; - STACKTOP = sp;return ($4|0); -} -function _sqlite3WhereIsDistinct($pWInfo) { - $pWInfo = $pWInfo|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pWInfo; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 40|0); - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - STACKTOP = sp;return ($4|0); -} -function _sqlite3WhereIsOrdered($pWInfo) { - $pWInfo = $pWInfo|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pWInfo; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 36|0); - $3 = HEAP8[$2>>0]|0; - $4 = $3 << 24 >> 24; - STACKTOP = sp;return ($4|0); -} -function _selectInnerLoop($pParse,$p,$pEList,$srcTab,$pSort,$pDistinct,$pDest,$iContinue,$iBreak) { - $pParse = $pParse|0; - $p = $p|0; - $pEList = $pEList|0; - $srcTab = $srcTab|0; - $pSort = $pSort|0; - $pDistinct = $pDistinct|0; - $pDest = $pDest|0; - $iContinue = $iContinue|0; - $iBreak = $iBreak|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; - var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; - var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; - var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr = 0, $addrTest = 0, $eDest = 0, $hasDistinct = 0; - var $i = 0, $iJump = 0, $iParm = 0, $nKey = 0, $nResultCol = 0, $pColl = 0, $pOp = 0, $pSO = 0, $r1 = 0, $r11 = 0, $r12 = 0, $r13 = 0, $r14 = 0, $r2 = 0, $r25 = 0, $r3 = 0, $regPrev = 0, $regResult = 0, $v = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $0 = sp + 124|0; - $1 = sp + 120|0; - $2 = sp + 116|0; - $3 = sp + 112|0; - $4 = sp + 108|0; - $5 = sp + 104|0; - $6 = sp + 100|0; - $7 = sp + 96|0; - $8 = sp + 92|0; - $v = sp + 88|0; - $i = sp + 84|0; - $hasDistinct = sp + 80|0; - $regResult = sp + 76|0; - $eDest = sp + 72|0; - $iParm = sp + 68|0; - $nResultCol = sp + 64|0; - $pOp = sp + 60|0; - $iJump = sp + 56|0; - $regPrev = sp + 52|0; - $pColl = sp + 48|0; - $r1 = sp + 44|0; - $r11 = sp + 40|0; - $addr = sp + 36|0; - $r2 = sp + 32|0; - $r12 = sp + 28|0; - $r13 = sp + 24|0; - $nKey = sp + 20|0; - $r14 = sp + 16|0; - $r25 = sp + 12|0; - $r3 = sp + 8|0; - $addrTest = sp + 4|0; - $pSO = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $pEList; - HEAP32[$3>>2] = $srcTab; - HEAP32[$4>>2] = $pSort; - HEAP32[$5>>2] = $pDistinct; - HEAP32[$6>>2] = $pDest; - HEAP32[$7>>2] = $iContinue; - HEAP32[$8>>2] = $iBreak; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 8|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$v>>2] = $11; - $12 = HEAP32[$6>>2]|0; - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - HEAP32[$eDest>>2] = $14; - $15 = HEAP32[$6>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$iParm>>2] = $17; - $18 = HEAP32[$5>>2]|0; - $19 = ($18|0)!=(0|0); - if ($19) { - $20 = HEAP32[$5>>2]|0; - $21 = (($20) + 1|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = $23; - } else { - $24 = 0; - } - HEAP32[$hasDistinct>>2] = $24; - $25 = HEAP32[$4>>2]|0; - $26 = ($25|0)!=(0|0); - if ($26) { - $27 = HEAP32[$4>>2]|0; - $28 = HEAP32[$27>>2]|0; - $29 = ($28|0)==(0|0); - if ($29) { - HEAP32[$4>>2] = 0; - } - } - $30 = HEAP32[$4>>2]|0; - $31 = ($30|0)==(0|0); - if ($31) { - $32 = HEAP32[$hasDistinct>>2]|0; - $33 = ($32|0)!=(0); - if (!($33)) { - $34 = HEAP32[$v>>2]|0; - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 12|0); - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$7>>2]|0; - _codeOffset($34,$37,$38); - } - } - $39 = HEAP32[$2>>2]|0; - $40 = HEAP32[$39>>2]|0; - HEAP32[$nResultCol>>2] = $40; - $41 = HEAP32[$6>>2]|0; - $42 = (($41) + 8|0); - $43 = HEAP32[$42>>2]|0; - $44 = ($43|0)==(0); - if ($44) { - $45 = HEAP32[$0>>2]|0; - $46 = (($45) + 72|0); - $47 = HEAP32[$46>>2]|0; - $48 = (($47) + 1)|0; - $49 = HEAP32[$6>>2]|0; - $50 = (($49) + 8|0); - HEAP32[$50>>2] = $48; - $51 = HEAP32[$nResultCol>>2]|0; - $52 = HEAP32[$0>>2]|0; - $53 = (($52) + 72|0); - $54 = HEAP32[$53>>2]|0; - $55 = (($54) + ($51))|0; - HEAP32[$53>>2] = $55; - } else { - $56 = HEAP32[$6>>2]|0; - $57 = (($56) + 8|0); - $58 = HEAP32[$57>>2]|0; - $59 = HEAP32[$nResultCol>>2]|0; - $60 = (($58) + ($59))|0; - $61 = HEAP32[$0>>2]|0; - $62 = (($61) + 72|0); - $63 = HEAP32[$62>>2]|0; - $64 = ($60|0)>($63|0); - if ($64) { - $65 = HEAP32[$nResultCol>>2]|0; - $66 = HEAP32[$0>>2]|0; - $67 = (($66) + 72|0); - $68 = HEAP32[$67>>2]|0; - $69 = (($68) + ($65))|0; - HEAP32[$67>>2] = $69; - } - } - $70 = HEAP32[$nResultCol>>2]|0; - $71 = HEAP32[$6>>2]|0; - $72 = (($71) + 12|0); - HEAP32[$72>>2] = $70; - $73 = HEAP32[$6>>2]|0; - $74 = (($73) + 8|0); - $75 = HEAP32[$74>>2]|0; - HEAP32[$regResult>>2] = $75; - $76 = HEAP32[$3>>2]|0; - $77 = ($76|0)>=(0); - L17: do { - if ($77) { - HEAP32[$i>>2] = 0; - while(1) { - $78 = HEAP32[$i>>2]|0; - $79 = HEAP32[$nResultCol>>2]|0; - $80 = ($78|0)<($79|0); - if (!($80)) { - break L17; - } - $81 = HEAP32[$v>>2]|0; - $82 = HEAP32[$3>>2]|0; - $83 = HEAP32[$i>>2]|0; - $84 = HEAP32[$regResult>>2]|0; - $85 = HEAP32[$i>>2]|0; - $86 = (($84) + ($85))|0; - (_sqlite3VdbeAddOp3($81,46,$82,$83,$86)|0); - $87 = HEAP32[$i>>2]|0; - $88 = (($87) + 1)|0; - HEAP32[$i>>2] = $88; - } - } else { - $89 = HEAP32[$eDest>>2]|0; - $90 = ($89|0)!=(3); - if ($90) { - $91 = HEAP32[$0>>2]|0; - $92 = HEAP32[$2>>2]|0; - $93 = HEAP32[$regResult>>2]|0; - $94 = HEAP32[$eDest>>2]|0; - $95 = ($94|0)==(9); - if ($95) { - $99 = 1; - } else { - $96 = HEAP32[$eDest>>2]|0; - $97 = ($96|0)==(13); - $99 = $97; - } - $98 = $99 ? 1 : 0; - $100 = $98&255; - (_sqlite3ExprCodeExprList($91,$92,$93,$100)|0); - } - } - } while(0); - $101 = HEAP32[$hasDistinct>>2]|0; - $102 = ($101|0)!=(0); - if ($102) { - $103 = HEAP32[$5>>2]|0; - $104 = (($103) + 1|0); - $105 = HEAP8[$104>>0]|0; - $106 = $105&255; - if ((($106|0) == 2)) { - $107 = HEAP32[$0>>2]|0; - $108 = (($107) + 72|0); - $109 = HEAP32[$108>>2]|0; - $110 = (($109) + 1)|0; - HEAP32[$regPrev>>2] = $110; - $111 = HEAP32[$nResultCol>>2]|0; - $112 = HEAP32[$0>>2]|0; - $113 = (($112) + 72|0); - $114 = HEAP32[$113>>2]|0; - $115 = (($114) + ($111))|0; - HEAP32[$113>>2] = $115; - $116 = HEAP32[$v>>2]|0; - $117 = HEAP32[$5>>2]|0; - $118 = (($117) + 8|0); - $119 = HEAP32[$118>>2]|0; - _sqlite3VdbeChangeToNoop($116,$119); - $120 = HEAP32[$v>>2]|0; - $121 = HEAP32[$5>>2]|0; - $122 = (($121) + 8|0); - $123 = HEAP32[$122>>2]|0; - $124 = (_sqlite3VdbeGetOp($120,$123)|0); - HEAP32[$pOp>>2] = $124; - $125 = HEAP32[$pOp>>2]|0; - HEAP8[$125>>0] = 28; - $126 = HEAP32[$pOp>>2]|0; - $127 = (($126) + 4|0); - HEAP32[$127>>2] = 1; - $128 = HEAP32[$regPrev>>2]|0; - $129 = HEAP32[$pOp>>2]|0; - $130 = (($129) + 8|0); - HEAP32[$130>>2] = $128; - $131 = HEAP32[$v>>2]|0; - $132 = (_sqlite3VdbeCurrentAddr($131)|0); - $133 = HEAP32[$nResultCol>>2]|0; - $134 = (($132) + ($133))|0; - HEAP32[$iJump>>2] = $134; - HEAP32[$i>>2] = 0; - while(1) { - $135 = HEAP32[$i>>2]|0; - $136 = HEAP32[$nResultCol>>2]|0; - $137 = ($135|0)<($136|0); - if (!($137)) { - break; - } - $138 = HEAP32[$0>>2]|0; - $139 = HEAP32[$i>>2]|0; - $140 = HEAP32[$2>>2]|0; - $141 = (($140) + 4|0); - $142 = HEAP32[$141>>2]|0; - $143 = (($142) + (($139*20)|0)|0); - $144 = HEAP32[$143>>2]|0; - $145 = (_sqlite3ExprCollSeq($138,$144)|0); - HEAP32[$pColl>>2] = $145; - $146 = HEAP32[$i>>2]|0; - $147 = HEAP32[$nResultCol>>2]|0; - $148 = (($147) - 1)|0; - $149 = ($146|0)<($148|0); - $150 = HEAP32[$v>>2]|0; - $151 = HEAP32[$regResult>>2]|0; - $152 = HEAP32[$i>>2]|0; - $153 = (($151) + ($152))|0; - if ($149) { - $154 = HEAP32[$iJump>>2]|0; - $155 = HEAP32[$regPrev>>2]|0; - $156 = HEAP32[$i>>2]|0; - $157 = (($155) + ($156))|0; - (_sqlite3VdbeAddOp3($150,78,$153,$154,$157)|0); - } else { - $158 = HEAP32[$7>>2]|0; - $159 = HEAP32[$regPrev>>2]|0; - $160 = HEAP32[$i>>2]|0; - $161 = (($159) + ($160))|0; - (_sqlite3VdbeAddOp3($150,79,$153,$158,$161)|0); - } - $162 = HEAP32[$v>>2]|0; - $163 = HEAP32[$pColl>>2]|0; - _sqlite3VdbeChangeP4($162,-1,$163,-4); - $164 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($164,-128); - $165 = HEAP32[$i>>2]|0; - $166 = (($165) + 1)|0; - HEAP32[$i>>2] = $166; - } - $167 = HEAP32[$v>>2]|0; - $168 = HEAP32[$regResult>>2]|0; - $169 = HEAP32[$regPrev>>2]|0; - $170 = HEAP32[$nResultCol>>2]|0; - $171 = (($170) - 1)|0; - (_sqlite3VdbeAddOp3($167,33,$168,$169,$171)|0); - } else if ((($106|0) == 1)) { - $172 = HEAP32[$v>>2]|0; - $173 = HEAP32[$5>>2]|0; - $174 = (($173) + 8|0); - $175 = HEAP32[$174>>2]|0; - _sqlite3VdbeChangeToNoop($172,$175); - } else { - $176 = HEAP32[$0>>2]|0; - $177 = HEAP32[$5>>2]|0; - $178 = (($177) + 4|0); - $179 = HEAP32[$178>>2]|0; - $180 = HEAP32[$7>>2]|0; - $181 = HEAP32[$nResultCol>>2]|0; - $182 = HEAP32[$regResult>>2]|0; - _codeDistinct($176,$179,$180,$181,$182); - } - $183 = HEAP32[$4>>2]|0; - $184 = ($183|0)==(0|0); - if ($184) { - $185 = HEAP32[$v>>2]|0; - $186 = HEAP32[$1>>2]|0; - $187 = (($186) + 12|0); - $188 = HEAP32[$187>>2]|0; - $189 = HEAP32[$7>>2]|0; - _codeOffset($185,$188,$189); - } - } - $190 = HEAP32[$eDest>>2]|0; - L45: do { - switch ($190|0) { - case 2: { - $202 = HEAP32[$v>>2]|0; - $203 = HEAP32[$iParm>>2]|0; - $204 = HEAP32[$regResult>>2]|0; - $205 = HEAP32[$nResultCol>>2]|0; - (_sqlite3VdbeAddOp3($202,108,$203,$204,$205)|0); - break; - } - case 9: case 13: { - $284 = HEAP32[$4>>2]|0; - $285 = ($284|0)!=(0|0); - if ($285) { - $286 = HEAP32[$0>>2]|0; - $287 = (_sqlite3GetTempReg($286)|0); - HEAP32[$r13>>2] = $287; - $288 = HEAP32[$v>>2]|0; - $289 = HEAP32[$regResult>>2]|0; - $290 = HEAP32[$nResultCol>>2]|0; - $291 = HEAP32[$r13>>2]|0; - (_sqlite3VdbeAddOp3($288,48,$289,$290,$291)|0); - $292 = HEAP32[$0>>2]|0; - $293 = HEAP32[$4>>2]|0; - $294 = HEAP32[$1>>2]|0; - $295 = HEAP32[$r13>>2]|0; - _pushOntoSorter($292,$293,$294,$295); - $296 = HEAP32[$0>>2]|0; - $297 = HEAP32[$r13>>2]|0; - _sqlite3ReleaseTempReg($296,$297); - break L45; - } - $298 = HEAP32[$eDest>>2]|0; - $299 = ($298|0)==(13); - $300 = HEAP32[$v>>2]|0; - if ($299) { - $301 = HEAP32[$6>>2]|0; - $302 = (($301) + 4|0); - $303 = HEAP32[$302>>2]|0; - (_sqlite3VdbeAddOp1($300,22,$303)|0); - break L45; - } else { - $304 = HEAP32[$regResult>>2]|0; - $305 = HEAP32[$nResultCol>>2]|0; - (_sqlite3VdbeAddOp2($300,35,$304,$305)|0); - $306 = HEAP32[$0>>2]|0; - $307 = HEAP32[$regResult>>2]|0; - $308 = HEAP32[$nResultCol>>2]|0; - _sqlite3ExprCacheAffinityChange($306,$307,$308); - break L45; - } - break; - } - case 10: { - $276 = HEAP32[$4>>2]|0; - $277 = ($276|0)!=(0|0); - $278 = HEAP32[$0>>2]|0; - if ($277) { - $279 = HEAP32[$4>>2]|0; - $280 = HEAP32[$1>>2]|0; - $281 = HEAP32[$regResult>>2]|0; - _pushOntoSorter($278,$279,$280,$281); - break L45; - } else { - $282 = HEAP32[$regResult>>2]|0; - $283 = HEAP32[$iParm>>2]|0; - _sqlite3ExprCodeMove($278,$282,$283,1); - break L45; - } - break; - } - case 1: { - $191 = HEAP32[$0>>2]|0; - $192 = (_sqlite3GetTempReg($191)|0); - HEAP32[$r1>>2] = $192; - $193 = HEAP32[$v>>2]|0; - $194 = HEAP32[$regResult>>2]|0; - $195 = HEAP32[$nResultCol>>2]|0; - $196 = HEAP32[$r1>>2]|0; - (_sqlite3VdbeAddOp3($193,48,$194,$195,$196)|0); - $197 = HEAP32[$v>>2]|0; - $198 = HEAP32[$iParm>>2]|0; - $199 = HEAP32[$r1>>2]|0; - (_sqlite3VdbeAddOp2($197,107,$198,$199)|0); - $200 = HEAP32[$0>>2]|0; - $201 = HEAP32[$r1>>2]|0; - _sqlite3ReleaseTempReg($200,$201); - break; - } - case 7: case 8: { - HEAP32[$addrTest>>2] = 0; - $309 = HEAP32[$6>>2]|0; - $310 = (($309) + 16|0); - $311 = HEAP32[$310>>2]|0; - HEAP32[$pSO>>2] = $311; - $312 = HEAP32[$pSO>>2]|0; - $313 = HEAP32[$312>>2]|0; - HEAP32[$nKey>>2] = $313; - $314 = HEAP32[$0>>2]|0; - $315 = (_sqlite3GetTempReg($314)|0); - HEAP32[$r14>>2] = $315; - $316 = HEAP32[$0>>2]|0; - $317 = HEAP32[$nKey>>2]|0; - $318 = (($317) + 2)|0; - $319 = (_sqlite3GetTempRange($316,$318)|0); - HEAP32[$r25>>2] = $319; - $320 = HEAP32[$r25>>2]|0; - $321 = HEAP32[$nKey>>2]|0; - $322 = (($320) + ($321))|0; - $323 = (($322) + 1)|0; - HEAP32[$r3>>2] = $323; - $324 = HEAP32[$eDest>>2]|0; - $325 = ($324|0)==(8); - if ($325) { - $326 = HEAP32[$v>>2]|0; - $327 = HEAP32[$iParm>>2]|0; - $328 = (($327) + 1)|0; - $329 = HEAP32[$regResult>>2]|0; - $330 = HEAP32[$nResultCol>>2]|0; - $331 = (_sqlite3VdbeAddOp4Int($326,66,$328,0,$329,$330)|0); - HEAP32[$addrTest>>2] = $331; - } - $332 = HEAP32[$v>>2]|0; - $333 = HEAP32[$regResult>>2]|0; - $334 = HEAP32[$nResultCol>>2]|0; - $335 = HEAP32[$r3>>2]|0; - (_sqlite3VdbeAddOp3($332,48,$333,$334,$335)|0); - $336 = HEAP32[$eDest>>2]|0; - $337 = ($336|0)==(8); - if ($337) { - $338 = HEAP32[$v>>2]|0; - $339 = HEAP32[$iParm>>2]|0; - $340 = (($339) + 1)|0; - $341 = HEAP32[$r3>>2]|0; - (_sqlite3VdbeAddOp2($338,107,$340,$341)|0); - $342 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($342,16); - } - HEAP32[$i>>2] = 0; - while(1) { - $343 = HEAP32[$i>>2]|0; - $344 = HEAP32[$nKey>>2]|0; - $345 = ($343|0)<($344|0); - $346 = HEAP32[$v>>2]|0; - if (!($345)) { - break; - } - $347 = HEAP32[$regResult>>2]|0; - $348 = HEAP32[$i>>2]|0; - $349 = HEAP32[$pSO>>2]|0; - $350 = (($349) + 4|0); - $351 = HEAP32[$350>>2]|0; - $352 = (($351) + (($348*20)|0)|0); - $353 = (($352) + 16|0); - $354 = HEAP16[$353>>1]|0; - $355 = $354&65535; - $356 = (($347) + ($355))|0; - $357 = (($356) - 1)|0; - $358 = HEAP32[$r25>>2]|0; - $359 = HEAP32[$i>>2]|0; - $360 = (($358) + ($359))|0; - (_sqlite3VdbeAddOp2($346,34,$357,$360)|0); - $361 = HEAP32[$i>>2]|0; - $362 = (($361) + 1)|0; - HEAP32[$i>>2] = $362; - } - $363 = HEAP32[$iParm>>2]|0; - $364 = HEAP32[$r25>>2]|0; - $365 = HEAP32[$nKey>>2]|0; - $366 = (($364) + ($365))|0; - (_sqlite3VdbeAddOp2($346,68,$363,$366)|0); - $367 = HEAP32[$v>>2]|0; - $368 = HEAP32[$r25>>2]|0; - $369 = HEAP32[$nKey>>2]|0; - $370 = (($369) + 2)|0; - $371 = HEAP32[$r14>>2]|0; - (_sqlite3VdbeAddOp3($367,48,$368,$370,$371)|0); - $372 = HEAP32[$v>>2]|0; - $373 = HEAP32[$iParm>>2]|0; - $374 = HEAP32[$r14>>2]|0; - (_sqlite3VdbeAddOp2($372,107,$373,$374)|0); - $375 = HEAP32[$addrTest>>2]|0; - $376 = ($375|0)!=(0); - if ($376) { - $377 = HEAP32[$v>>2]|0; - $378 = HEAP32[$addrTest>>2]|0; - _sqlite3VdbeJumpHere($377,$378); - } - $379 = HEAP32[$0>>2]|0; - $380 = HEAP32[$r14>>2]|0; - _sqlite3ReleaseTempReg($379,$380); - $381 = HEAP32[$0>>2]|0; - $382 = HEAP32[$r25>>2]|0; - $383 = HEAP32[$nKey>>2]|0; - $384 = (($383) + 2)|0; - _sqlite3ReleaseTempRange($381,$382,$384); - break; - } - case 12: case 14: case 6: case 5: { - $206 = HEAP32[$0>>2]|0; - $207 = (_sqlite3GetTempReg($206)|0); - HEAP32[$r11>>2] = $207; - $208 = HEAP32[$v>>2]|0; - $209 = HEAP32[$regResult>>2]|0; - $210 = HEAP32[$nResultCol>>2]|0; - $211 = HEAP32[$r11>>2]|0; - (_sqlite3VdbeAddOp3($208,48,$209,$210,$211)|0); - $212 = HEAP32[$eDest>>2]|0; - $213 = ($212|0)==(6); - if ($213) { - $214 = HEAP32[$v>>2]|0; - $215 = (_sqlite3VdbeCurrentAddr($214)|0); - $216 = (($215) + 4)|0; - HEAP32[$addr>>2] = $216; - $217 = HEAP32[$v>>2]|0; - $218 = HEAP32[$iParm>>2]|0; - $219 = (($218) + 1)|0; - $220 = HEAP32[$addr>>2]|0; - $221 = HEAP32[$r11>>2]|0; - (_sqlite3VdbeAddOp4Int($217,66,$219,$220,$221,0)|0); - $222 = HEAP32[$v>>2]|0; - $223 = HEAP32[$iParm>>2]|0; - $224 = (($223) + 1)|0; - $225 = HEAP32[$r11>>2]|0; - (_sqlite3VdbeAddOp2($222,107,$224,$225)|0); - } - $226 = HEAP32[$4>>2]|0; - $227 = ($226|0)!=(0|0); - $228 = HEAP32[$0>>2]|0; - if ($227) { - $229 = HEAP32[$4>>2]|0; - $230 = HEAP32[$1>>2]|0; - $231 = HEAP32[$r11>>2]|0; - _pushOntoSorter($228,$229,$230,$231); - } else { - $232 = (_sqlite3GetTempReg($228)|0); - HEAP32[$r2>>2] = $232; - $233 = HEAP32[$v>>2]|0; - $234 = HEAP32[$iParm>>2]|0; - $235 = HEAP32[$r2>>2]|0; - (_sqlite3VdbeAddOp2($233,69,$234,$235)|0); - $236 = HEAP32[$v>>2]|0; - $237 = HEAP32[$iParm>>2]|0; - $238 = HEAP32[$r11>>2]|0; - $239 = HEAP32[$r2>>2]|0; - (_sqlite3VdbeAddOp3($236,70,$237,$238,$239)|0); - $240 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($240,8); - $241 = HEAP32[$0>>2]|0; - $242 = HEAP32[$r2>>2]|0; - _sqlite3ReleaseTempReg($241,$242); - } - $243 = HEAP32[$0>>2]|0; - $244 = HEAP32[$r11>>2]|0; - _sqlite3ReleaseTempReg($243,$244); - break; - } - case 3: { - $274 = HEAP32[$v>>2]|0; - $275 = HEAP32[$iParm>>2]|0; - (_sqlite3VdbeAddOp2($274,25,1,$275)|0); - break; - } - case 11: { - $245 = HEAP32[$2>>2]|0; - $246 = (($245) + 4|0); - $247 = HEAP32[$246>>2]|0; - $248 = HEAP32[$247>>2]|0; - $249 = HEAP32[$6>>2]|0; - $250 = (($249) + 1|0); - $251 = HEAP8[$250>>0]|0; - $252 = (_sqlite3CompareAffinity($248,$251)|0); - $253 = HEAP32[$6>>2]|0; - $254 = (($253) + 1|0); - HEAP8[$254>>0] = $252; - $255 = HEAP32[$4>>2]|0; - $256 = ($255|0)!=(0|0); - $257 = HEAP32[$0>>2]|0; - if ($256) { - $258 = HEAP32[$4>>2]|0; - $259 = HEAP32[$1>>2]|0; - $260 = HEAP32[$regResult>>2]|0; - _pushOntoSorter($257,$258,$259,$260); - break L45; - } else { - $261 = (_sqlite3GetTempReg($257)|0); - HEAP32[$r12>>2] = $261; - $262 = HEAP32[$v>>2]|0; - $263 = HEAP32[$regResult>>2]|0; - $264 = HEAP32[$r12>>2]|0; - $265 = HEAP32[$6>>2]|0; - $266 = (($265) + 1|0); - (_sqlite3VdbeAddOp4($262,48,$263,1,$264,$266,1)|0); - $267 = HEAP32[$0>>2]|0; - $268 = HEAP32[$regResult>>2]|0; - _sqlite3ExprCacheAffinityChange($267,$268,1); - $269 = HEAP32[$v>>2]|0; - $270 = HEAP32[$iParm>>2]|0; - $271 = HEAP32[$r12>>2]|0; - (_sqlite3VdbeAddOp2($269,107,$270,$271)|0); - $272 = HEAP32[$0>>2]|0; - $273 = HEAP32[$r12>>2]|0; - _sqlite3ReleaseTempReg($272,$273); - break L45; - } - break; - } - default: { - } - } - } while(0); - $385 = HEAP32[$4>>2]|0; - $386 = ($385|0)==(0|0); - if (!($386)) { - STACKTOP = sp;return; - } - $387 = HEAP32[$1>>2]|0; - $388 = (($387) + 8|0); - $389 = HEAP32[$388>>2]|0; - $390 = ($389|0)!=(0); - if (!($390)) { - STACKTOP = sp;return; - } - $391 = HEAP32[$v>>2]|0; - $392 = HEAP32[$1>>2]|0; - $393 = (($392) + 8|0); - $394 = HEAP32[$393>>2]|0; - $395 = HEAP32[$8>>2]|0; - (_sqlite3VdbeAddOp3($391,136,$394,$395,-1)|0); - STACKTOP = sp;return; -} -function _sqlite3WhereContinueLabel($pWInfo) { - $pWInfo = $pWInfo|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pWInfo; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 48|0); - $3 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _sqlite3WhereBreakLabel($pWInfo) { - $pWInfo = $pWInfo|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pWInfo; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 52|0); - $3 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _sqlite3ExprAnalyzeAggList($pNC,$pList) { - $pNC = $pNC|0; - $pList = $pList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pItem = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $pItem = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $pNC; - HEAP32[$1>>2] = $pList; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - STACKTOP = sp;return; - } - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$pItem>>2] = $6; - HEAP32[$i>>2] = 0; - while(1) { - $7 = HEAP32[$i>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = ($7|0)<($9|0); - if (!($10)) { - break; - } - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$pItem>>2]|0; - $13 = HEAP32[$12>>2]|0; - _sqlite3ExprAnalyzeAggregates($11,$13); - $14 = HEAP32[$i>>2]|0; - $15 = (($14) + 1)|0; - HEAP32[$i>>2] = $15; - $16 = HEAP32[$pItem>>2]|0; - $17 = (($16) + 20|0); - HEAP32[$pItem>>2] = $17; - } - STACKTOP = sp;return; -} -function _sqlite3ExprAnalyzeAggregates($pNC,$pExpr) { - $pNC = $pNC|0; - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $w = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $w = sp; - HEAP32[$0>>2] = $pNC; - HEAP32[$1>>2] = $pExpr; - ;HEAP32[$w+0>>2]=0|0;HEAP32[$w+4>>2]=0|0;HEAP32[$w+8>>2]=0|0;HEAP32[$w+12>>2]=0|0;HEAP32[$w+16>>2]=0|0;HEAP32[$w+20>>2]=0|0; - HEAP32[$w>>2] = 47; - $2 = (($w) + 4|0); - HEAP32[$2>>2] = 48; - $3 = HEAP32[$0>>2]|0; - $4 = (($w) + 20|0); - HEAP32[$4>>2] = $3; - $5 = HEAP32[$1>>2]|0; - (_sqlite3WalkExpr($w,$5)|0); - STACKTOP = sp;return; -} -function _explainTempTable($pParse,$zUsage) { - $pParse = $pParse|0; - $zUsage = $zUsage|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $v = 0; - var $vararg_buffer = 0, $zMsg = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 16|0; - $1 = sp + 12|0; - $v = sp + 8|0; - $zMsg = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $zUsage; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 450|0); - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - $6 = ($5|0)==(2); - if (!($6)) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 8|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$v>>2] = $9; - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$1>>2]|0; - HEAP32[$vararg_buffer>>2] = $12; - $13 = (_sqlite3MPrintf($11,24880,$vararg_buffer)|0); - HEAP32[$zMsg>>2] = $13; - $14 = HEAP32[$v>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 464|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$zMsg>>2]|0; - (_sqlite3VdbeAddOp4($14,157,$17,0,0,$18,-1)|0); - STACKTOP = sp;return; -} -function _sqlite3WhereIsSorted($pWInfo) { - $pWInfo = $pWInfo|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pWInfo; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 37|0); - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - STACKTOP = sp;return ($4|0); -} -function _sqlite3ExprCodeMove($pParse,$iFrom,$iTo,$nReg) { - $pParse = $pParse|0; - $iFrom = $iFrom|0; - $iTo = $iTo|0; - $nReg = $nReg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, $x = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $i = sp + 8|0; - $p = sp + 4|0; - $x = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iFrom; - HEAP32[$2>>2] = $iTo; - HEAP32[$3>>2] = $nReg; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 8|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp3($6,32,$7,$8,$9)|0); - HEAP32[$i>>2] = 0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 116|0); - HEAP32[$p>>2] = $11; - while(1) { - $12 = HEAP32[$i>>2]|0; - $13 = ($12|0)<(10); - if (!($13)) { - break; - } - $14 = HEAP32[$p>>2]|0; - $15 = (($14) + 12|0); - $16 = HEAP32[$15>>2]|0; - HEAP32[$x>>2] = $16; - $17 = HEAP32[$x>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = ($17|0)>=($18|0); - if ($19) { - $20 = HEAP32[$x>>2]|0; - $21 = HEAP32[$1>>2]|0; - $22 = HEAP32[$3>>2]|0; - $23 = (($21) + ($22))|0; - $24 = ($20|0)<($23|0); - if ($24) { - $25 = HEAP32[$2>>2]|0; - $26 = HEAP32[$1>>2]|0; - $27 = (($25) - ($26))|0; - $28 = HEAP32[$p>>2]|0; - $29 = (($28) + 12|0); - $30 = HEAP32[$29>>2]|0; - $31 = (($30) + ($27))|0; - HEAP32[$29>>2] = $31; - } - } - $32 = HEAP32[$i>>2]|0; - $33 = (($32) + 1)|0; - HEAP32[$i>>2] = $33; - $34 = HEAP32[$p>>2]|0; - $35 = (($34) + 20|0); - HEAP32[$p>>2] = $35; - } - STACKTOP = sp;return; -} -function _updateAccumulator($pParse,$pAggInfo) { - $pParse = $pParse|0; - $pAggInfo = $pAggInfo|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $addrHitTest = 0, $addrNext = 0, $i = 0, $j = 0, $nArg = 0, $pC = 0, $pColl = 0, $pF = 0, $pItem = 0, $pList = 0, $regAgg = 0, $regHit = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 56|0; - $1 = sp + 52|0; - $v = sp + 48|0; - $i = sp + 44|0; - $regHit = sp + 40|0; - $addrHitTest = sp + 36|0; - $pF = sp + 32|0; - $pC = sp + 28|0; - $nArg = sp + 24|0; - $addrNext = sp + 20|0; - $regAgg = sp + 16|0; - $pList = sp + 12|0; - $pColl = sp + 8|0; - $pItem = sp + 4|0; - $j = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pAggInfo; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 8|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$v>>2] = $4; - HEAP32[$regHit>>2] = 0; - HEAP32[$addrHitTest>>2] = 0; - $5 = HEAP32[$1>>2]|0; - HEAP8[$5>>0] = 1; - HEAP32[$i>>2] = 0; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 40|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pF>>2] = $8; - while(1) { - $9 = HEAP32[$i>>2]|0; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 44|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($9|0)<($12|0); - if (!($13)) { - break; - } - HEAP32[$addrNext>>2] = 0; - $14 = HEAP32[$pF>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + 20|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$pList>>2] = $17; - $18 = HEAP32[$pList>>2]|0; - $19 = ($18|0)!=(0|0); - if ($19) { - $20 = HEAP32[$pList>>2]|0; - $21 = HEAP32[$20>>2]|0; - HEAP32[$nArg>>2] = $21; - $22 = HEAP32[$0>>2]|0; - $23 = HEAP32[$nArg>>2]|0; - $24 = (_sqlite3GetTempRange($22,$23)|0); - HEAP32[$regAgg>>2] = $24; - $25 = HEAP32[$0>>2]|0; - $26 = HEAP32[$pList>>2]|0; - $27 = HEAP32[$regAgg>>2]|0; - (_sqlite3ExprCodeExprList($25,$26,$27,1)|0); - } else { - HEAP32[$nArg>>2] = 0; - HEAP32[$regAgg>>2] = 0; - } - $28 = HEAP32[$pF>>2]|0; - $29 = (($28) + 12|0); - $30 = HEAP32[$29>>2]|0; - $31 = ($30|0)>=(0); - if ($31) { - $32 = HEAP32[$v>>2]|0; - $33 = (_sqlite3VdbeMakeLabel($32)|0); - HEAP32[$addrNext>>2] = $33; - $34 = HEAP32[$0>>2]|0; - $35 = HEAP32[$pF>>2]|0; - $36 = (($35) + 12|0); - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$addrNext>>2]|0; - $39 = HEAP32[$regAgg>>2]|0; - _codeDistinct($34,$37,$38,1,$39); - } - $40 = HEAP32[$pF>>2]|0; - $41 = (($40) + 4|0); - $42 = HEAP32[$41>>2]|0; - $43 = (($42) + 2|0); - $44 = HEAP16[$43>>1]|0; - $45 = $44&65535; - $46 = $45 & 32; - $47 = ($46|0)!=(0); - if ($47) { - HEAP32[$pColl>>2] = 0; - HEAP32[$j>>2] = 0; - $48 = HEAP32[$pList>>2]|0; - $49 = (($48) + 4|0); - $50 = HEAP32[$49>>2]|0; - HEAP32[$pItem>>2] = $50; - while(1) { - $51 = HEAP32[$pColl>>2]|0; - $52 = ($51|0)!=(0|0); - if ($52) { - break; - } - $53 = HEAP32[$j>>2]|0; - $54 = HEAP32[$nArg>>2]|0; - $55 = ($53|0)<($54|0); - if (!($55)) { - break; - } - $56 = HEAP32[$0>>2]|0; - $57 = HEAP32[$pItem>>2]|0; - $58 = HEAP32[$57>>2]|0; - $59 = (_sqlite3ExprCollSeq($56,$58)|0); - HEAP32[$pColl>>2] = $59; - $60 = HEAP32[$j>>2]|0; - $61 = (($60) + 1)|0; - HEAP32[$j>>2] = $61; - $62 = HEAP32[$pItem>>2]|0; - $63 = (($62) + 20|0); - HEAP32[$pItem>>2] = $63; - } - $64 = HEAP32[$pColl>>2]|0; - $65 = ($64|0)!=(0|0); - if (!($65)) { - $66 = HEAP32[$0>>2]|0; - $67 = HEAP32[$66>>2]|0; - $68 = (($67) + 8|0); - $69 = HEAP32[$68>>2]|0; - HEAP32[$pColl>>2] = $69; - } - $70 = HEAP32[$regHit>>2]|0; - $71 = ($70|0)==(0); - if ($71) { - $72 = HEAP32[$1>>2]|0; - $73 = (($72) + 36|0); - $74 = HEAP32[$73>>2]|0; - $75 = ($74|0)!=(0); - if ($75) { - $76 = HEAP32[$0>>2]|0; - $77 = (($76) + 72|0); - $78 = HEAP32[$77>>2]|0; - $79 = (($78) + 1)|0; - HEAP32[$77>>2] = $79; - HEAP32[$regHit>>2] = $79; - } - } - $80 = HEAP32[$v>>2]|0; - $81 = HEAP32[$regHit>>2]|0; - $82 = HEAP32[$pColl>>2]|0; - (_sqlite3VdbeAddOp4($80,36,$81,0,0,$82,-4)|0); - } - $83 = HEAP32[$v>>2]|0; - $84 = HEAP32[$regAgg>>2]|0; - $85 = HEAP32[$pF>>2]|0; - $86 = (($85) + 8|0); - $87 = HEAP32[$86>>2]|0; - $88 = HEAP32[$pF>>2]|0; - $89 = (($88) + 4|0); - $90 = HEAP32[$89>>2]|0; - (_sqlite3VdbeAddOp4($83,10,0,$84,$87,$90,-5)|0); - $91 = HEAP32[$v>>2]|0; - $92 = HEAP32[$nArg>>2]|0; - $93 = $92&255; - _sqlite3VdbeChangeP5($91,$93); - $94 = HEAP32[$0>>2]|0; - $95 = HEAP32[$regAgg>>2]|0; - $96 = HEAP32[$nArg>>2]|0; - _sqlite3ExprCacheAffinityChange($94,$95,$96); - $97 = HEAP32[$0>>2]|0; - $98 = HEAP32[$regAgg>>2]|0; - $99 = HEAP32[$nArg>>2]|0; - _sqlite3ReleaseTempRange($97,$98,$99); - $100 = HEAP32[$addrNext>>2]|0; - $101 = ($100|0)!=(0); - if ($101) { - $102 = HEAP32[$v>>2]|0; - $103 = HEAP32[$addrNext>>2]|0; - _sqlite3VdbeResolveLabel($102,$103); - $104 = HEAP32[$0>>2]|0; - _sqlite3ExprCacheClear($104); - } - $105 = HEAP32[$i>>2]|0; - $106 = (($105) + 1)|0; - HEAP32[$i>>2] = $106; - $107 = HEAP32[$pF>>2]|0; - $108 = (($107) + 16|0); - HEAP32[$pF>>2] = $108; - } - $109 = HEAP32[$regHit>>2]|0; - $110 = ($109|0)!=(0); - if ($110) { - $111 = HEAP32[$v>>2]|0; - $112 = HEAP32[$regHit>>2]|0; - $113 = (_sqlite3VdbeAddOp1($111,44,$112)|0); - HEAP32[$addrHitTest>>2] = $113; - } - $114 = HEAP32[$0>>2]|0; - _sqlite3ExprCacheClear($114); - HEAP32[$i>>2] = 0; - $115 = HEAP32[$1>>2]|0; - $116 = (($115) + 28|0); - $117 = HEAP32[$116>>2]|0; - HEAP32[$pC>>2] = $117; - while(1) { - $118 = HEAP32[$i>>2]|0; - $119 = HEAP32[$1>>2]|0; - $120 = (($119) + 36|0); - $121 = HEAP32[$120>>2]|0; - $122 = ($118|0)<($121|0); - if (!($122)) { - break; - } - $123 = HEAP32[$0>>2]|0; - $124 = HEAP32[$pC>>2]|0; - $125 = (($124) + 20|0); - $126 = HEAP32[$125>>2]|0; - $127 = HEAP32[$pC>>2]|0; - $128 = (($127) + 16|0); - $129 = HEAP32[$128>>2]|0; - _sqlite3ExprCode($123,$126,$129); - $130 = HEAP32[$i>>2]|0; - $131 = (($130) + 1)|0; - HEAP32[$i>>2] = $131; - $132 = HEAP32[$pC>>2]|0; - $133 = (($132) + 24|0); - HEAP32[$pC>>2] = $133; - } - $134 = HEAP32[$1>>2]|0; - HEAP8[$134>>0] = 0; - $135 = HEAP32[$0>>2]|0; - _sqlite3ExprCacheClear($135); - $136 = HEAP32[$addrHitTest>>2]|0; - $137 = ($136|0)!=(0); - if (!($137)) { - STACKTOP = sp;return; - } - $138 = HEAP32[$v>>2]|0; - $139 = HEAP32[$addrHitTest>>2]|0; - _sqlite3VdbeJumpHere($138,$139); - STACKTOP = sp;return; -} -function _finalizeAggFunctions($pParse,$pAggInfo) { - $pParse = $pParse|0; - $pAggInfo = $pAggInfo|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pF = 0, $pList = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $v = sp + 12|0; - $i = sp + 8|0; - $pF = sp + 4|0; - $pList = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pAggInfo; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 8|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$v>>2] = $4; - HEAP32[$i>>2] = 0; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 40|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pF>>2] = $7; - while(1) { - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 44|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($8|0)<($11|0); - if (!($12)) { - break; - } - $13 = HEAP32[$pF>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + 20|0); - $16 = HEAP32[$15>>2]|0; - HEAP32[$pList>>2] = $16; - $17 = HEAP32[$v>>2]|0; - $18 = HEAP32[$pF>>2]|0; - $19 = (($18) + 8|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$pList>>2]|0; - $22 = ($21|0)!=(0|0); - if ($22) { - $23 = HEAP32[$pList>>2]|0; - $24 = HEAP32[$23>>2]|0; - $28 = $24; - } else { - $28 = 0; - } - $25 = HEAP32[$pF>>2]|0; - $26 = (($25) + 4|0); - $27 = HEAP32[$26>>2]|0; - (_sqlite3VdbeAddOp4($17,137,$20,$28,0,$27,-5)|0); - $29 = HEAP32[$i>>2]|0; - $30 = (($29) + 1)|0; - HEAP32[$i>>2] = $30; - $31 = HEAP32[$pF>>2]|0; - $32 = (($31) + 16|0); - HEAP32[$pF>>2] = $32; - } - STACKTOP = sp;return; -} -function _resetAccumulator($pParse,$pAggInfo) { - $pParse = $pParse|0; - $pAggInfo = $pAggInfo|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; - var $9 = 0, $i = 0, $nReg = 0, $pE = 0, $pFunc = 0, $pKeyInfo = 0, $v = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 32|0; - $1 = sp + 28|0; - $v = sp + 24|0; - $i = sp + 20|0; - $pFunc = sp + 16|0; - $nReg = sp + 12|0; - $pE = sp + 8|0; - $pKeyInfo = sp + 4|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pAggInfo; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 8|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$v>>2] = $4; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 44|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 32|0); - $10 = HEAP32[$9>>2]|0; - $11 = (($7) + ($10))|0; - HEAP32[$nReg>>2] = $11; - $12 = HEAP32[$nReg>>2]|0; - $13 = ($12|0)==(0); - if ($13) { - STACKTOP = sp;return; - } - $14 = HEAP32[$v>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 16|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 20|0); - $20 = HEAP32[$19>>2]|0; - (_sqlite3VdbeAddOp3($14,28,0,$17,$20)|0); - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 40|0); - $23 = HEAP32[$22>>2]|0; - HEAP32[$pFunc>>2] = $23; - HEAP32[$i>>2] = 0; - while(1) { - $24 = HEAP32[$i>>2]|0; - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 44|0); - $27 = HEAP32[$26>>2]|0; - $28 = ($24|0)<($27|0); - if (!($28)) { - break; - } - $29 = HEAP32[$pFunc>>2]|0; - $30 = (($29) + 12|0); - $31 = HEAP32[$30>>2]|0; - $32 = ($31|0)>=(0); - do { - if ($32) { - $33 = HEAP32[$pFunc>>2]|0; - $34 = HEAP32[$33>>2]|0; - HEAP32[$pE>>2] = $34; - $35 = HEAP32[$pE>>2]|0; - $36 = (($35) + 20|0); - $37 = HEAP32[$36>>2]|0; - $38 = ($37|0)==(0|0); - if (!($38)) { - $39 = HEAP32[$pE>>2]|0; - $40 = (($39) + 20|0); - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$41>>2]|0; - $43 = ($42|0)!=(1); - if (!($43)) { - $47 = HEAP32[$0>>2]|0; - $48 = HEAP32[$pE>>2]|0; - $49 = (($48) + 20|0); - $50 = HEAP32[$49>>2]|0; - $51 = (_keyInfoFromExprList($47,$50,0,0)|0); - HEAP32[$pKeyInfo>>2] = $51; - $52 = HEAP32[$v>>2]|0; - $53 = HEAP32[$pFunc>>2]|0; - $54 = (($53) + 12|0); - $55 = HEAP32[$54>>2]|0; - $56 = HEAP32[$pKeyInfo>>2]|0; - (_sqlite3VdbeAddOp4($52,55,$55,0,0,$56,-6)|0); - break; - } - } - $44 = HEAP32[$0>>2]|0; - _sqlite3ErrorMsg($44,24824,$vararg_buffer); - $45 = HEAP32[$pFunc>>2]|0; - $46 = (($45) + 12|0); - HEAP32[$46>>2] = -1; - } - } while(0); - $57 = HEAP32[$i>>2]|0; - $58 = (($57) + 1)|0; - HEAP32[$i>>2] = $58; - $59 = HEAP32[$pFunc>>2]|0; - $60 = (($59) + 16|0); - HEAP32[$pFunc>>2] = $60; - } - STACKTOP = sp;return; -} -function _isSimpleCount($p,$pAggInfo) { - $p = $p|0; - $pAggInfo = $pAggInfo|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $pExpr = 0, $pTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $pTab = sp + 4|0; - $pExpr = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $pAggInfo; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 36|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)!=(1); - if (!($10)) { - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 32|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = ($14|0)!=(1); - if (!($15)) { - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 32|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + 8|0); - $20 = (($19) + 20|0); - $21 = HEAP32[$20>>2]|0; - $22 = ($21|0)!=(0|0); - if (!($22)) { - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 32|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + 8|0); - $27 = (($26) + 16|0); - $28 = HEAP32[$27>>2]|0; - HEAP32[$pTab>>2] = $28; - $29 = HEAP32[$1>>2]|0; - $30 = HEAP32[$29>>2]|0; - $31 = (($30) + 4|0); - $32 = HEAP32[$31>>2]|0; - $33 = HEAP32[$32>>2]|0; - HEAP32[$pExpr>>2] = $33; - $34 = HEAP32[$pTab>>2]|0; - $35 = (($34) + 44|0); - $36 = HEAP8[$35>>0]|0; - $37 = $36&255; - $38 = $37 & 16; - $39 = ($38|0)!=(0); - if ($39) { - HEAP32[$0>>2] = 0; - $64 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($64|0); - } - $40 = HEAP32[$pExpr>>2]|0; - $41 = HEAP8[$40>>0]|0; - $42 = $41&255; - $43 = ($42|0)!=(155); - if ($43) { - HEAP32[$0>>2] = 0; - $64 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($64|0); - } - $44 = HEAP32[$2>>2]|0; - $45 = (($44) + 44|0); - $46 = HEAP32[$45>>2]|0; - $47 = ($46|0)==(0); - if ($47) { - HEAP32[$0>>2] = 0; - $64 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($64|0); - } - $48 = HEAP32[$2>>2]|0; - $49 = (($48) + 40|0); - $50 = HEAP32[$49>>2]|0; - $51 = (($50) + 4|0); - $52 = HEAP32[$51>>2]|0; - $53 = (($52) + 2|0); - $54 = HEAP16[$53>>1]|0; - $55 = $54&65535; - $56 = $55 & 256; - $57 = ($56|0)==(0); - if ($57) { - HEAP32[$0>>2] = 0; - $64 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($64|0); - } - $58 = HEAP32[$pExpr>>2]|0; - $59 = (($58) + 4|0); - $60 = HEAP32[$59>>2]|0; - $61 = $60 & 16; - $62 = ($61|0)!=(0); - if ($62) { - HEAP32[$0>>2] = 0; - $64 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($64|0); - } else { - $63 = HEAP32[$pTab>>2]|0; - HEAP32[$0>>2] = $63; - $64 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($64|0); - } - } - } - } - } - HEAP32[$0>>2] = 0; - $64 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($64|0); -} -function _explainSimpleCount($pParse,$pTab,$pIdx) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $pIdx = $pIdx|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $bCover = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $zEqp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $bCover = sp + 16|0; - $zEqp = sp + 12|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $pIdx; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 450|0); - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = ($6|0)==(2); - if (!($7)) { - STACKTOP = sp;return; - } - $8 = HEAP32[$2>>2]|0; - $9 = ($8|0)!=(0|0); - if ($9) { - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 44|0); - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = $13 & 32; - $15 = ($14|0)==(0); - if ($15) { - $24 = 1; - } else { - $16 = HEAP32[$2>>2]|0; - $17 = (($16) + 55|0); - $18 = HEAP8[$17>>0]|0; - $19 = $18 & 3; - $20 = $19&255; - $21 = ($20|0)==(2); - $22 = $21 ^ 1; - $24 = $22; - } - } else { - $24 = 0; - } - $23 = $24&1; - HEAP32[$bCover>>2] = $23; - $25 = HEAP32[$0>>2]|0; - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$1>>2]|0; - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$bCover>>2]|0; - $30 = ($29|0)!=(0); - $31 = $30 ? 24800 : 1472; - $32 = HEAP32[$bCover>>2]|0; - $33 = ($32|0)!=(0); - if ($33) { - $34 = HEAP32[$2>>2]|0; - $35 = HEAP32[$34>>2]|0; - $36 = $35; - } else { - $36 = 1472; - } - HEAP32[$vararg_buffer>>2] = $28; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $31; - $vararg_ptr2 = (($vararg_buffer) + 8|0); - HEAP32[$vararg_ptr2>>2] = $36; - $37 = (_sqlite3MPrintf($26,24776,$vararg_buffer)|0); - HEAP32[$zEqp>>2] = $37; - $38 = HEAP32[$0>>2]|0; - $39 = (($38) + 8|0); - $40 = HEAP32[$39>>2]|0; - $41 = HEAP32[$0>>2]|0; - $42 = (($41) + 464|0); - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$zEqp>>2]|0; - (_sqlite3VdbeAddOp4($40,157,$43,0,0,$44,-1)|0); - STACKTOP = sp;return; -} -function _minMaxQuery($pAggInfo,$ppMinMax) { - $pAggInfo = $pAggInfo|0; - $ppMinMax = $ppMinMax|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $eRet = 0, $pEList = 0, $pExpr = 0, $zFunc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $eRet = sp + 12|0; - $pExpr = sp + 8|0; - $pEList = sp + 4|0; - $zFunc = sp; - HEAP32[$0>>2] = $pAggInfo; - HEAP32[$1>>2] = $ppMinMax; - HEAP32[$eRet>>2] = 0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$2>>2] = 0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 44|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)==(1); - do { - if ($6) { - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 40|0); - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$9>>2]|0; - HEAP32[$pExpr>>2] = $10; - $11 = HEAP32[$pExpr>>2]|0; - $12 = (($11) + 20|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pEList>>2] = $13; - $14 = HEAP32[$pEList>>2]|0; - $15 = ($14|0)!=(0|0); - if ($15) { - $16 = HEAP32[$pEList>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = ($17|0)==(1); - if ($18) { - $19 = HEAP32[$pEList>>2]|0; - $20 = (($19) + 4|0); - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$21>>2]|0; - $23 = HEAP8[$22>>0]|0; - $24 = $23&255; - $25 = ($24|0)==(156); - if ($25) { - $26 = HEAP32[$pExpr>>2]|0; - $27 = (($26) + 8|0); - $28 = HEAP32[$27>>2]|0; - HEAP32[$zFunc>>2] = $28; - $29 = HEAP32[$zFunc>>2]|0; - $30 = (_sqlite3_stricmp($29,8224)|0); - $31 = ($30|0)==(0); - if ($31) { - HEAP32[$eRet>>2] = 1; - $32 = HEAP32[$pEList>>2]|0; - $33 = HEAP32[$1>>2]|0; - HEAP32[$33>>2] = $32; - break; - } - $34 = HEAP32[$zFunc>>2]|0; - $35 = (_sqlite3_stricmp($34,8232)|0); - $36 = ($35|0)==(0); - if ($36) { - HEAP32[$eRet>>2] = 2; - $37 = HEAP32[$pEList>>2]|0; - $38 = HEAP32[$1>>2]|0; - HEAP32[$38>>2] = $37; - } - } - } - } - } - } while(0); - $39 = HEAP32[$eRet>>2]|0; - $40 = $39&255; - STACKTOP = sp;return ($40|0); -} -function _generateSortTail($pParse,$p,$pSort,$nColumn,$pDest) { - $pParse = $pParse|0; - $p = $p|0; - $pSort = $pSort|0; - $nColumn = $nColumn|0; - $pDest = $pDest|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; - var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; - var $99 = 0, $addr = 0, $addrBreak = 0, $addrContinue = 0, $addrOnce = 0, $eDest = 0, $i = 0, $iParm = 0, $iTab = 0, $nKey = 0, $or$cond = 0, $pOrderBy = 0, $pseudoTab = 0, $ptab2 = 0, $regRow = 0, $regRowid = 0, $regSortOut = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $0 = sp + 80|0; - $1 = sp + 76|0; - $2 = sp + 72|0; - $3 = sp + 68|0; - $4 = sp + 64|0; - $v = sp + 60|0; - $addrBreak = sp + 56|0; - $addrContinue = sp + 52|0; - $addr = sp + 48|0; - $addrOnce = sp + 44|0; - $iTab = sp + 40|0; - $pseudoTab = sp + 36|0; - $pOrderBy = sp + 32|0; - $eDest = sp + 28|0; - $iParm = sp + 24|0; - $regRow = sp + 20|0; - $regRowid = sp + 16|0; - $nKey = sp + 12|0; - $regSortOut = sp + 8|0; - $ptab2 = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $pSort; - HEAP32[$3>>2] = $nColumn; - HEAP32[$4>>2] = $pDest; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 8|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$v>>2] = $7; - $8 = HEAP32[$v>>2]|0; - $9 = (_sqlite3VdbeMakeLabel($8)|0); - HEAP32[$addrBreak>>2] = $9; - $10 = HEAP32[$v>>2]|0; - $11 = (_sqlite3VdbeMakeLabel($10)|0); - HEAP32[$addrContinue>>2] = $11; - HEAP32[$addrOnce>>2] = 0; - HEAP32[$pseudoTab>>2] = 0; - $12 = HEAP32[$2>>2]|0; - $13 = HEAP32[$12>>2]|0; - HEAP32[$pOrderBy>>2] = $13; - $14 = HEAP32[$4>>2]|0; - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - HEAP32[$eDest>>2] = $16; - $17 = HEAP32[$4>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$iParm>>2] = $19; - $20 = HEAP32[$2>>2]|0; - $21 = (($20) + 16|0); - $22 = HEAP32[$21>>2]|0; - $23 = ($22|0)!=(0); - if ($23) { - $24 = HEAP32[$v>>2]|0; - $25 = HEAP32[$2>>2]|0; - $26 = (($25) + 12|0); - $27 = HEAP32[$26>>2]|0; - $28 = HEAP32[$2>>2]|0; - $29 = (($28) + 16|0); - $30 = HEAP32[$29>>2]|0; - (_sqlite3VdbeAddOp2($24,17,$27,$30)|0); - $31 = HEAP32[$v>>2]|0; - $32 = HEAP32[$addrBreak>>2]|0; - (_sqlite3VdbeAddOp2($31,16,0,$32)|0); - $33 = HEAP32[$v>>2]|0; - $34 = HEAP32[$2>>2]|0; - $35 = (($34) + 16|0); - $36 = HEAP32[$35>>2]|0; - _sqlite3VdbeResolveLabel($33,$36); - $37 = HEAP32[$0>>2]|0; - $38 = (_sqlite3CodeOnce($37)|0); - HEAP32[$addrOnce>>2] = $38; - } - $39 = HEAP32[$2>>2]|0; - $40 = (($39) + 8|0); - $41 = HEAP32[$40>>2]|0; - HEAP32[$iTab>>2] = $41; - $42 = HEAP32[$0>>2]|0; - $43 = (_sqlite3GetTempReg($42)|0); - HEAP32[$regRow>>2] = $43; - $44 = HEAP32[$eDest>>2]|0; - $45 = ($44|0)==(9); - $46 = HEAP32[$eDest>>2]|0; - $47 = ($46|0)==(13); - $or$cond = $45 | $47; - $48 = HEAP32[$0>>2]|0; - if ($or$cond) { - $49 = (($48) + 68|0); - $50 = HEAP32[$49>>2]|0; - $51 = (($50) + 1)|0; - HEAP32[$49>>2] = $51; - HEAP32[$pseudoTab>>2] = $50; - $52 = HEAP32[$v>>2]|0; - $53 = HEAP32[$pseudoTab>>2]|0; - $54 = HEAP32[$regRow>>2]|0; - $55 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp3($52,57,$53,$54,$55)|0); - HEAP32[$regRowid>>2] = 0; - } else { - $56 = (_sqlite3GetTempReg($48)|0); - HEAP32[$regRowid>>2] = $56; - } - $57 = HEAP32[$pOrderBy>>2]|0; - $58 = HEAP32[$57>>2]|0; - $59 = HEAP32[$2>>2]|0; - $60 = (($59) + 4|0); - $61 = HEAP32[$60>>2]|0; - $62 = (($58) - ($61))|0; - HEAP32[$nKey>>2] = $62; - $63 = HEAP32[$2>>2]|0; - $64 = (($63) + 24|0); - $65 = HEAP8[$64>>0]|0; - $66 = $65&255; - $67 = $66 & 1; - $68 = ($67|0)!=(0); - if ($68) { - $69 = HEAP32[$0>>2]|0; - $70 = (($69) + 72|0); - $71 = HEAP32[$70>>2]|0; - $72 = (($71) + 1)|0; - HEAP32[$70>>2] = $72; - HEAP32[$regSortOut>>2] = $72; - $73 = HEAP32[$0>>2]|0; - $74 = (($73) + 68|0); - $75 = HEAP32[$74>>2]|0; - $76 = (($75) + 1)|0; - HEAP32[$74>>2] = $76; - HEAP32[$ptab2>>2] = $75; - $77 = HEAP32[$v>>2]|0; - $78 = HEAP32[$ptab2>>2]|0; - $79 = HEAP32[$regSortOut>>2]|0; - $80 = HEAP32[$nKey>>2]|0; - $81 = (($80) + 2)|0; - (_sqlite3VdbeAddOp3($77,57,$78,$79,$81)|0); - $82 = HEAP32[$addrOnce>>2]|0; - $83 = ($82|0)!=(0); - if ($83) { - $84 = HEAP32[$v>>2]|0; - $85 = HEAP32[$addrOnce>>2]|0; - _sqlite3VdbeJumpHere($84,$85); - } - $86 = HEAP32[$v>>2]|0; - $87 = HEAP32[$iTab>>2]|0; - $88 = HEAP32[$addrBreak>>2]|0; - $89 = (_sqlite3VdbeAddOp2($86,103,$87,$88)|0); - $90 = (1 + ($89))|0; - HEAP32[$addr>>2] = $90; - $91 = HEAP32[$v>>2]|0; - $92 = HEAP32[$1>>2]|0; - $93 = (($92) + 12|0); - $94 = HEAP32[$93>>2]|0; - $95 = HEAP32[$addrContinue>>2]|0; - _codeOffset($91,$94,$95); - $96 = HEAP32[$v>>2]|0; - $97 = HEAP32[$iTab>>2]|0; - $98 = HEAP32[$regSortOut>>2]|0; - (_sqlite3VdbeAddOp2($96,95,$97,$98)|0); - $99 = HEAP32[$v>>2]|0; - $100 = HEAP32[$ptab2>>2]|0; - $101 = HEAP32[$nKey>>2]|0; - $102 = (($101) + 1)|0; - $103 = HEAP32[$regRow>>2]|0; - (_sqlite3VdbeAddOp3($99,46,$100,$102,$103)|0); - $104 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($104,32); - } else { - $105 = HEAP32[$addrOnce>>2]|0; - $106 = ($105|0)!=(0); - if ($106) { - $107 = HEAP32[$v>>2]|0; - $108 = HEAP32[$addrOnce>>2]|0; - _sqlite3VdbeJumpHere($107,$108); - } - $109 = HEAP32[$v>>2]|0; - $110 = HEAP32[$iTab>>2]|0; - $111 = HEAP32[$addrBreak>>2]|0; - $112 = (_sqlite3VdbeAddOp2($109,104,$110,$111)|0); - $113 = (1 + ($112))|0; - HEAP32[$addr>>2] = $113; - $114 = HEAP32[$v>>2]|0; - $115 = HEAP32[$1>>2]|0; - $116 = (($115) + 12|0); - $117 = HEAP32[$116>>2]|0; - $118 = HEAP32[$addrContinue>>2]|0; - _codeOffset($114,$117,$118); - $119 = HEAP32[$v>>2]|0; - $120 = HEAP32[$iTab>>2]|0; - $121 = HEAP32[$nKey>>2]|0; - $122 = (($121) + 1)|0; - $123 = HEAP32[$regRow>>2]|0; - (_sqlite3VdbeAddOp3($119,46,$120,$122,$123)|0); - } - $124 = HEAP32[$eDest>>2]|0; - do { - if ((($124|0) == 10)) { - $143 = HEAP32[$0>>2]|0; - $144 = HEAP32[$regRow>>2]|0; - $145 = HEAP32[$iParm>>2]|0; - _sqlite3ExprCodeMove($143,$144,$145,1); - } else if ((($124|0) == 12) | (($124|0) == 14)) { - $125 = HEAP32[$v>>2]|0; - $126 = HEAP32[$iParm>>2]|0; - $127 = HEAP32[$regRowid>>2]|0; - (_sqlite3VdbeAddOp2($125,69,$126,$127)|0); - $128 = HEAP32[$v>>2]|0; - $129 = HEAP32[$iParm>>2]|0; - $130 = HEAP32[$regRow>>2]|0; - $131 = HEAP32[$regRowid>>2]|0; - (_sqlite3VdbeAddOp3($128,70,$129,$130,$131)|0); - $132 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($132,8); - } else if ((($124|0) == 11)) { - $133 = HEAP32[$v>>2]|0; - $134 = HEAP32[$regRow>>2]|0; - $135 = HEAP32[$regRowid>>2]|0; - $136 = HEAP32[$4>>2]|0; - $137 = (($136) + 1|0); - (_sqlite3VdbeAddOp4($133,48,$134,1,$135,$137,1)|0); - $138 = HEAP32[$0>>2]|0; - $139 = HEAP32[$regRow>>2]|0; - _sqlite3ExprCacheAffinityChange($138,$139,1); - $140 = HEAP32[$v>>2]|0; - $141 = HEAP32[$iParm>>2]|0; - $142 = HEAP32[$regRowid>>2]|0; - (_sqlite3VdbeAddOp2($140,107,$141,$142)|0); - } else { - HEAP32[$i>>2] = 0; - while(1) { - $146 = HEAP32[$i>>2]|0; - $147 = HEAP32[$3>>2]|0; - $148 = ($146|0)<($147|0); - if (!($148)) { - break; - } - $149 = HEAP32[$v>>2]|0; - $150 = HEAP32[$pseudoTab>>2]|0; - $151 = HEAP32[$i>>2]|0; - $152 = HEAP32[$4>>2]|0; - $153 = (($152) + 8|0); - $154 = HEAP32[$153>>2]|0; - $155 = HEAP32[$i>>2]|0; - $156 = (($154) + ($155))|0; - (_sqlite3VdbeAddOp3($149,46,$150,$151,$156)|0); - $157 = HEAP32[$i>>2]|0; - $158 = ($157|0)==(0); - if ($158) { - $159 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($159,32); - } - $160 = HEAP32[$i>>2]|0; - $161 = (($160) + 1)|0; - HEAP32[$i>>2] = $161; - } - $162 = HEAP32[$eDest>>2]|0; - $163 = ($162|0)==(9); - $164 = HEAP32[$v>>2]|0; - $165 = HEAP32[$4>>2]|0; - if ($163) { - $166 = (($165) + 8|0); - $167 = HEAP32[$166>>2]|0; - $168 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp2($164,35,$167,$168)|0); - $169 = HEAP32[$0>>2]|0; - $170 = HEAP32[$4>>2]|0; - $171 = (($170) + 8|0); - $172 = HEAP32[$171>>2]|0; - $173 = HEAP32[$3>>2]|0; - _sqlite3ExprCacheAffinityChange($169,$172,$173); - break; - } else { - $174 = (($165) + 4|0); - $175 = HEAP32[$174>>2]|0; - (_sqlite3VdbeAddOp1($164,22,$175)|0); - break; - } - } - } while(0); - $176 = HEAP32[$0>>2]|0; - $177 = HEAP32[$regRow>>2]|0; - _sqlite3ReleaseTempReg($176,$177); - $178 = HEAP32[$0>>2]|0; - $179 = HEAP32[$regRowid>>2]|0; - _sqlite3ReleaseTempReg($178,$179); - $180 = HEAP32[$v>>2]|0; - $181 = HEAP32[$addrContinue>>2]|0; - _sqlite3VdbeResolveLabel($180,$181); - $182 = HEAP32[$2>>2]|0; - $183 = (($182) + 24|0); - $184 = HEAP8[$183>>0]|0; - $185 = $184&255; - $186 = $185 & 1; - $187 = ($186|0)!=(0); - $188 = HEAP32[$v>>2]|0; - $189 = HEAP32[$iTab>>2]|0; - $190 = HEAP32[$addr>>2]|0; - if ($187) { - (_sqlite3VdbeAddOp2($188,5,$189,$190)|0); - } else { - (_sqlite3VdbeAddOp2($188,9,$189,$190)|0); - } - $191 = HEAP32[$2>>2]|0; - $192 = (($191) + 12|0); - $193 = HEAP32[$192>>2]|0; - $194 = ($193|0)!=(0); - if (!($194)) { - $199 = HEAP32[$v>>2]|0; - $200 = HEAP32[$addrBreak>>2]|0; - _sqlite3VdbeResolveLabel($199,$200); - STACKTOP = sp;return; - } - $195 = HEAP32[$v>>2]|0; - $196 = HEAP32[$2>>2]|0; - $197 = (($196) + 12|0); - $198 = HEAP32[$197>>2]|0; - (_sqlite3VdbeAddOp1($195,18,$198)|0); - $199 = HEAP32[$v>>2]|0; - $200 = HEAP32[$addrBreak>>2]|0; - _sqlite3VdbeResolveLabel($199,$200); - STACKTOP = sp;return; -} -function _generateColumnNames($pParse,$pTabList,$pEList) { - $pParse = $pParse|0; - $pTabList = $pTabList|0; - $pEList = $pEList|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; - var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; - var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; - var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; - var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $fullNames = 0, $i = 0, $iCol = 0, $j = 0, $p = 0, $pTab = 0; - var $shortNames = 0, $v = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $z = 0, $zCol = 0, $zName = 0, $zName1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer2 = sp; - $0 = sp + 68|0; - $1 = sp + 64|0; - $2 = sp + 60|0; - $v = sp + 56|0; - $i = sp + 52|0; - $j = sp + 48|0; - $db = sp + 44|0; - $fullNames = sp + 40|0; - $shortNames = sp + 36|0; - $p = sp + 32|0; - $zName = sp + 28|0; - $pTab = sp + 24|0; - $zCol = sp + 20|0; - $iCol = sp + 16|0; - $zName1 = sp + 12|0; - $z = sp + 8|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTabList; - HEAP32[$2>>2] = $pEList; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 8|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$v>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$db>>2] = $7; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 450|0); - $10 = HEAP8[$9>>0]|0; - $11 = ($10<<24>>24)!=(0); - if ($11) { - STACKTOP = sp;return; - } - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 16|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14&255; - $16 = ($15|0)!=(0); - if ($16) { - STACKTOP = sp;return; - } - $17 = HEAP32[$v>>2]|0; - $18 = ($17|0)==(0|0); - if ($18) { - STACKTOP = sp;return; - } - $19 = HEAP32[$db>>2]|0; - $20 = (($19) + 64|0); - $21 = HEAP8[$20>>0]|0; - $22 = $21&255; - $23 = ($22|0)!=(0); - if ($23) { - STACKTOP = sp;return; - } - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 16|0); - HEAP8[$25>>0] = 1; - $26 = HEAP32[$db>>2]|0; - $27 = (($26) + 24|0); - $28 = HEAP32[$27>>2]|0; - $29 = $28 & 32; - $30 = ($29|0)!=(0); - $31 = $30&1; - HEAP32[$fullNames>>2] = $31; - $32 = HEAP32[$db>>2]|0; - $33 = (($32) + 24|0); - $34 = HEAP32[$33>>2]|0; - $35 = $34 & 64; - $36 = ($35|0)!=(0); - $37 = $36&1; - HEAP32[$shortNames>>2] = $37; - $38 = HEAP32[$v>>2]|0; - $39 = HEAP32[$2>>2]|0; - $40 = HEAP32[$39>>2]|0; - _sqlite3VdbeSetNumCols($38,$40); - HEAP32[$i>>2] = 0; - while(1) { - $41 = HEAP32[$i>>2]|0; - $42 = HEAP32[$2>>2]|0; - $43 = HEAP32[$42>>2]|0; - $44 = ($41|0)<($43|0); - if (!($44)) { - break; - } - $45 = HEAP32[$i>>2]|0; - $46 = HEAP32[$2>>2]|0; - $47 = (($46) + 4|0); - $48 = HEAP32[$47>>2]|0; - $49 = (($48) + (($45*20)|0)|0); - $50 = HEAP32[$49>>2]|0; - HEAP32[$p>>2] = $50; - $51 = HEAP32[$p>>2]|0; - $52 = ($51|0)==(0|0); - do { - if (!($52)) { - $53 = HEAP32[$i>>2]|0; - $54 = HEAP32[$2>>2]|0; - $55 = (($54) + 4|0); - $56 = HEAP32[$55>>2]|0; - $57 = (($56) + (($53*20)|0)|0); - $58 = (($57) + 4|0); - $59 = HEAP32[$58>>2]|0; - $60 = ($59|0)!=(0|0); - if ($60) { - $61 = HEAP32[$i>>2]|0; - $62 = HEAP32[$2>>2]|0; - $63 = (($62) + 4|0); - $64 = HEAP32[$63>>2]|0; - $65 = (($64) + (($61*20)|0)|0); - $66 = (($65) + 4|0); - $67 = HEAP32[$66>>2]|0; - HEAP32[$zName>>2] = $67; - $68 = HEAP32[$v>>2]|0; - $69 = HEAP32[$i>>2]|0; - $70 = HEAP32[$zName>>2]|0; - (_sqlite3VdbeSetColName($68,$69,0,$70,(-1))|0); - break; - } - $71 = HEAP32[$p>>2]|0; - $72 = HEAP8[$71>>0]|0; - $73 = $72&255; - $74 = ($73|0)==(154); - if ($74) { - label = 12; - } else { - $75 = HEAP32[$p>>2]|0; - $76 = HEAP8[$75>>0]|0; - $77 = $76&255; - $78 = ($77|0)==(156); - if ($78) { - label = 12; - } - } - if ((label|0) == 12) { - label = 0; - $79 = HEAP32[$1>>2]|0; - $80 = ($79|0)!=(0|0); - if ($80) { - $81 = HEAP32[$p>>2]|0; - $82 = (($81) + 32|0); - $83 = HEAP16[$82>>1]|0; - $84 = $83 << 16 >> 16; - HEAP32[$iCol>>2] = $84; - HEAP32[$j>>2] = 0; - while(1) { - $85 = HEAP32[$j>>2]|0; - $86 = HEAP32[$1>>2]|0; - $87 = HEAP32[$86>>2]|0; - $88 = ($85|0)<($87|0); - if (!($88)) { - break; - } - $89 = HEAP32[$j>>2]|0; - $90 = HEAP32[$1>>2]|0; - $91 = (($90) + 8|0); - $92 = (($91) + (($89*72)|0)|0); - $93 = (($92) + 40|0); - $94 = HEAP32[$93>>2]|0; - $95 = HEAP32[$p>>2]|0; - $96 = (($95) + 28|0); - $97 = HEAP32[$96>>2]|0; - $98 = ($94|0)==($97|0); - if ($98) { - break; - } - $99 = HEAP32[$j>>2]|0; - $100 = (($99) + 1)|0; - HEAP32[$j>>2] = $100; - } - $101 = HEAP32[$j>>2]|0; - $102 = HEAP32[$1>>2]|0; - $103 = (($102) + 8|0); - $104 = (($103) + (($101*72)|0)|0); - $105 = (($104) + 16|0); - $106 = HEAP32[$105>>2]|0; - HEAP32[$pTab>>2] = $106; - $107 = HEAP32[$iCol>>2]|0; - $108 = ($107|0)<(0); - if ($108) { - $109 = HEAP32[$pTab>>2]|0; - $110 = (($109) + 36|0); - $111 = HEAP16[$110>>1]|0; - $112 = $111 << 16 >> 16; - HEAP32[$iCol>>2] = $112; - } - $113 = HEAP32[$iCol>>2]|0; - $114 = ($113|0)<(0); - if ($114) { - HEAP32[$zCol>>2] = 9896; - } else { - $115 = HEAP32[$iCol>>2]|0; - $116 = HEAP32[$pTab>>2]|0; - $117 = (($116) + 4|0); - $118 = HEAP32[$117>>2]|0; - $119 = (($118) + (($115*24)|0)|0); - $120 = HEAP32[$119>>2]|0; - HEAP32[$zCol>>2] = $120; - } - $121 = HEAP32[$shortNames>>2]|0; - $122 = ($121|0)!=(0); - if (!($122)) { - $123 = HEAP32[$fullNames>>2]|0; - $124 = ($123|0)!=(0); - if (!($124)) { - $125 = HEAP32[$v>>2]|0; - $126 = HEAP32[$i>>2]|0; - $127 = HEAP32[$db>>2]|0; - $128 = HEAP32[$i>>2]|0; - $129 = HEAP32[$2>>2]|0; - $130 = (($129) + 4|0); - $131 = HEAP32[$130>>2]|0; - $132 = (($131) + (($128*20)|0)|0); - $133 = (($132) + 8|0); - $134 = HEAP32[$133>>2]|0; - $135 = (_sqlite3DbStrDup($127,$134)|0); - (_sqlite3VdbeSetColName($125,$126,0,$135,16)|0); - break; - } - } - $136 = HEAP32[$fullNames>>2]|0; - $137 = ($136|0)!=(0); - if ($137) { - HEAP32[$zName1>>2] = 0; - $138 = HEAP32[$db>>2]|0; - $139 = HEAP32[$pTab>>2]|0; - $140 = HEAP32[$139>>2]|0; - $141 = HEAP32[$zCol>>2]|0; - HEAP32[$vararg_buffer2>>2] = $140; - $vararg_ptr1 = (($vararg_buffer2) + 4|0); - HEAP32[$vararg_ptr1>>2] = $141; - $142 = (_sqlite3MPrintf($138,17352,$vararg_buffer2)|0); - HEAP32[$zName1>>2] = $142; - $143 = HEAP32[$v>>2]|0; - $144 = HEAP32[$i>>2]|0; - $145 = HEAP32[$zName1>>2]|0; - (_sqlite3VdbeSetColName($143,$144,0,$145,16)|0); - break; - } else { - $146 = HEAP32[$v>>2]|0; - $147 = HEAP32[$i>>2]|0; - $148 = HEAP32[$zCol>>2]|0; - (_sqlite3VdbeSetColName($146,$147,0,$148,(-1))|0); - break; - } - } - } - $149 = HEAP32[$i>>2]|0; - $150 = HEAP32[$2>>2]|0; - $151 = (($150) + 4|0); - $152 = HEAP32[$151>>2]|0; - $153 = (($152) + (($149*20)|0)|0); - $154 = (($153) + 8|0); - $155 = HEAP32[$154>>2]|0; - HEAP32[$z>>2] = $155; - $156 = HEAP32[$z>>2]|0; - $157 = ($156|0)==(0|0); - $158 = HEAP32[$db>>2]|0; - if ($157) { - $159 = HEAP32[$i>>2]|0; - $160 = (($159) + 1)|0; - HEAP32[$vararg_buffer2>>2] = $160; - $161 = (_sqlite3MPrintf($158,24760,$vararg_buffer2)|0); - $164 = $161; - } else { - $162 = HEAP32[$z>>2]|0; - $163 = (_sqlite3DbStrDup($158,$162)|0); - $164 = $163; - } - HEAP32[$z>>2] = $164; - $165 = HEAP32[$v>>2]|0; - $166 = HEAP32[$i>>2]|0; - $167 = HEAP32[$z>>2]|0; - (_sqlite3VdbeSetColName($165,$166,0,$167,16)|0); - } - } while(0); - $168 = HEAP32[$i>>2]|0; - $169 = (($168) + 1)|0; - HEAP32[$i>>2] = $169; - } - $170 = HEAP32[$0>>2]|0; - $171 = HEAP32[$1>>2]|0; - $172 = HEAP32[$2>>2]|0; - _generateColumnTypes($170,$171,$172); - STACKTOP = sp;return; -} -function _generateColumnTypes($pParse,$pTabList,$pEList) { - $pParse = $pParse|0; - $pTabList = $pTabList|0; - $pEList = $pEList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, $sNC = 0, $v = 0, $zType = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 56|0; - $1 = sp + 52|0; - $2 = sp + 48|0; - $v = sp + 44|0; - $i = sp + 40|0; - $sNC = sp + 8|0; - $p = sp + 4|0; - $zType = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTabList; - HEAP32[$2>>2] = $pEList; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 8|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$v>>2] = $5; - $6 = HEAP32[$1>>2]|0; - $7 = (($sNC) + 4|0); - HEAP32[$7>>2] = $6; - $8 = HEAP32[$0>>2]|0; - HEAP32[$sNC>>2] = $8; - HEAP32[$i>>2] = 0; - while(1) { - $9 = HEAP32[$i>>2]|0; - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = ($9|0)<($11|0); - if (!($12)) { - break; - } - $13 = HEAP32[$i>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = (($14) + 4|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + (($13*20)|0)|0); - $18 = HEAP32[$17>>2]|0; - HEAP32[$p>>2] = $18; - $19 = HEAP32[$p>>2]|0; - $20 = (_columnTypeImpl($sNC,$19,0)|0); - HEAP32[$zType>>2] = $20; - $21 = HEAP32[$v>>2]|0; - $22 = HEAP32[$i>>2]|0; - $23 = HEAP32[$zType>>2]|0; - (_sqlite3VdbeSetColName($21,$22,1,$23,(-1))|0); - $24 = HEAP32[$i>>2]|0; - $25 = (($24) + 1)|0; - HEAP32[$i>>2] = $25; - } - STACKTOP = sp;return; -} -function _codeOffset($v,$iOffset,$iContinue) { - $v = $v|0; - $iOffset = $iOffset|0; - $iContinue = $iContinue|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $addr = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $addr = sp; - HEAP32[$0>>2] = $v; - HEAP32[$1>>2] = $iOffset; - HEAP32[$2>>2] = $iContinue; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)>(0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$1>>2]|0; - (_sqlite3VdbeAddOp2($5,37,$6,-1)|0); - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = (_sqlite3VdbeAddOp1($7,135,$8)|0); - HEAP32[$addr>>2] = $9; - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$2>>2]|0; - (_sqlite3VdbeAddOp2($10,16,0,$11)|0); - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$addr>>2]|0; - _sqlite3VdbeJumpHere($12,$13); - STACKTOP = sp;return; -} -function _codeDistinct($pParse,$iTab,$addrRepeat,$N,$iMem) { - $pParse = $pParse|0; - $iTab = $iTab|0; - $addrRepeat = $addrRepeat|0; - $N = $N|0; - $iMem = $iMem|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r1 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $v = sp + 4|0; - $r1 = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $iTab; - HEAP32[$2>>2] = $addrRepeat; - HEAP32[$3>>2] = $N; - HEAP32[$4>>2] = $iMem; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 8|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$v>>2] = $7; - $8 = HEAP32[$0>>2]|0; - $9 = (_sqlite3GetTempReg($8)|0); - HEAP32[$r1>>2] = $9; - $10 = HEAP32[$v>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$2>>2]|0; - $13 = HEAP32[$4>>2]|0; - $14 = HEAP32[$3>>2]|0; - (_sqlite3VdbeAddOp4Int($10,66,$11,$12,$13,$14)|0); - $15 = HEAP32[$v>>2]|0; - $16 = HEAP32[$4>>2]|0; - $17 = HEAP32[$3>>2]|0; - $18 = HEAP32[$r1>>2]|0; - (_sqlite3VdbeAddOp3($15,48,$16,$17,$18)|0); - $19 = HEAP32[$v>>2]|0; - $20 = HEAP32[$1>>2]|0; - $21 = HEAP32[$r1>>2]|0; - (_sqlite3VdbeAddOp2($19,107,$20,$21)|0); - $22 = HEAP32[$0>>2]|0; - $23 = HEAP32[$r1>>2]|0; - _sqlite3ReleaseTempReg($22,$23); - STACKTOP = sp;return; -} -function _analyzeAggregate($pWalker,$pExpr) { - $pWalker = $pWalker|0; - $pExpr = $pExpr|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; - var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; - var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; - var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; - var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $enc = 0, $i = 0, $j = 0, $k = 0, $n = 0, $pAggInfo = 0, $pCol = 0, $pE = 0; - var $pGB = 0, $pItem = 0, $pItem1 = 0, $pNC = 0, $pParse = 0, $pSrcList = 0, $pTerm = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 64|0; - $1 = sp + 60|0; - $2 = sp + 56|0; - $i = sp + 52|0; - $pNC = sp + 48|0; - $pParse = sp + 44|0; - $pSrcList = sp + 40|0; - $pAggInfo = sp + 36|0; - $pItem = sp + 32|0; - $pCol = sp + 28|0; - $k = sp + 24|0; - $j = sp + 20|0; - $n = sp + 16|0; - $pGB = sp + 12|0; - $pTerm = sp + 8|0; - $pE = sp + 4|0; - $pItem1 = sp; - $enc = sp + 68|0; - HEAP32[$1>>2] = $pWalker; - HEAP32[$2>>2] = $pExpr; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 20|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pNC>>2] = $5; - $6 = HEAP32[$pNC>>2]|0; - $7 = HEAP32[$6>>2]|0; - HEAP32[$pParse>>2] = $7; - $8 = HEAP32[$pNC>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$pSrcList>>2] = $10; - $11 = HEAP32[$pNC>>2]|0; - $12 = (($11) + 12|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pAggInfo>>2] = $13; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - if ((($16|0) == 154) | (($16|0) == 156)) { - $17 = HEAP32[$pSrcList>>2]|0; - $18 = ($17|0)!=(0|0); - L3: do { - if ($18) { - $19 = HEAP32[$pSrcList>>2]|0; - $20 = (($19) + 8|0); - HEAP32[$pItem>>2] = $20; - HEAP32[$i>>2] = 0; - while(1) { - $21 = HEAP32[$i>>2]|0; - $22 = HEAP32[$pSrcList>>2]|0; - $23 = HEAP32[$22>>2]|0; - $24 = ($21|0)<($23|0); - if (!($24)) { - break L3; - } - $25 = HEAP32[$2>>2]|0; - $26 = (($25) + 28|0); - $27 = HEAP32[$26>>2]|0; - $28 = HEAP32[$pItem>>2]|0; - $29 = (($28) + 40|0); - $30 = HEAP32[$29>>2]|0; - $31 = ($27|0)==($30|0); - if ($31) { - break; - } - $162 = HEAP32[$i>>2]|0; - $163 = (($162) + 1)|0; - HEAP32[$i>>2] = $163; - $164 = HEAP32[$pItem>>2]|0; - $165 = (($164) + 72|0); - HEAP32[$pItem>>2] = $165; - } - $32 = HEAP32[$pAggInfo>>2]|0; - $33 = (($32) + 28|0); - $34 = HEAP32[$33>>2]|0; - HEAP32[$pCol>>2] = $34; - HEAP32[$k>>2] = 0; - while(1) { - $35 = HEAP32[$k>>2]|0; - $36 = HEAP32[$pAggInfo>>2]|0; - $37 = (($36) + 32|0); - $38 = HEAP32[$37>>2]|0; - $39 = ($35|0)<($38|0); - if (!($39)) { - break; - } - $40 = HEAP32[$pCol>>2]|0; - $41 = (($40) + 4|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$2>>2]|0; - $44 = (($43) + 28|0); - $45 = HEAP32[$44>>2]|0; - $46 = ($42|0)==($45|0); - if ($46) { - $47 = HEAP32[$pCol>>2]|0; - $48 = (($47) + 8|0); - $49 = HEAP32[$48>>2]|0; - $50 = HEAP32[$2>>2]|0; - $51 = (($50) + 32|0); - $52 = HEAP16[$51>>1]|0; - $53 = $52 << 16 >> 16; - $54 = ($49|0)==($53|0); - if ($54) { - break; - } - } - $55 = HEAP32[$k>>2]|0; - $56 = (($55) + 1)|0; - HEAP32[$k>>2] = $56; - $57 = HEAP32[$pCol>>2]|0; - $58 = (($57) + 24|0); - HEAP32[$pCol>>2] = $58; - } - $59 = HEAP32[$k>>2]|0; - $60 = HEAP32[$pAggInfo>>2]|0; - $61 = (($60) + 32|0); - $62 = HEAP32[$61>>2]|0; - $63 = ($59|0)>=($62|0); - if ($63) { - $64 = HEAP32[$pParse>>2]|0; - $65 = HEAP32[$64>>2]|0; - $66 = HEAP32[$pAggInfo>>2]|0; - $67 = (_addAggInfoColumn($65,$66)|0); - HEAP32[$k>>2] = $67; - $68 = ($67|0)>=(0); - if ($68) { - $69 = HEAP32[$k>>2]|0; - $70 = HEAP32[$pAggInfo>>2]|0; - $71 = (($70) + 28|0); - $72 = HEAP32[$71>>2]|0; - $73 = (($72) + (($69*24)|0)|0); - HEAP32[$pCol>>2] = $73; - $74 = HEAP32[$2>>2]|0; - $75 = (($74) + 44|0); - $76 = HEAP32[$75>>2]|0; - $77 = HEAP32[$pCol>>2]|0; - HEAP32[$77>>2] = $76; - $78 = HEAP32[$2>>2]|0; - $79 = (($78) + 28|0); - $80 = HEAP32[$79>>2]|0; - $81 = HEAP32[$pCol>>2]|0; - $82 = (($81) + 4|0); - HEAP32[$82>>2] = $80; - $83 = HEAP32[$2>>2]|0; - $84 = (($83) + 32|0); - $85 = HEAP16[$84>>1]|0; - $86 = $85 << 16 >> 16; - $87 = HEAP32[$pCol>>2]|0; - $88 = (($87) + 8|0); - HEAP32[$88>>2] = $86; - $89 = HEAP32[$pParse>>2]|0; - $90 = (($89) + 72|0); - $91 = HEAP32[$90>>2]|0; - $92 = (($91) + 1)|0; - HEAP32[$90>>2] = $92; - $93 = HEAP32[$pCol>>2]|0; - $94 = (($93) + 16|0); - HEAP32[$94>>2] = $92; - $95 = HEAP32[$pCol>>2]|0; - $96 = (($95) + 12|0); - HEAP32[$96>>2] = -1; - $97 = HEAP32[$2>>2]|0; - $98 = HEAP32[$pCol>>2]|0; - $99 = (($98) + 20|0); - HEAP32[$99>>2] = $97; - $100 = HEAP32[$pAggInfo>>2]|0; - $101 = (($100) + 24|0); - $102 = HEAP32[$101>>2]|0; - $103 = ($102|0)!=(0|0); - L20: do { - if ($103) { - $104 = HEAP32[$pAggInfo>>2]|0; - $105 = (($104) + 24|0); - $106 = HEAP32[$105>>2]|0; - HEAP32[$pGB>>2] = $106; - $107 = HEAP32[$pGB>>2]|0; - $108 = (($107) + 4|0); - $109 = HEAP32[$108>>2]|0; - HEAP32[$pTerm>>2] = $109; - $110 = HEAP32[$pGB>>2]|0; - $111 = HEAP32[$110>>2]|0; - HEAP32[$n>>2] = $111; - HEAP32[$j>>2] = 0; - while(1) { - $112 = HEAP32[$j>>2]|0; - $113 = HEAP32[$n>>2]|0; - $114 = ($112|0)<($113|0); - if (!($114)) { - break L20; - } - $115 = HEAP32[$pTerm>>2]|0; - $116 = HEAP32[$115>>2]|0; - HEAP32[$pE>>2] = $116; - $117 = HEAP32[$pE>>2]|0; - $118 = HEAP8[$117>>0]|0; - $119 = $118&255; - $120 = ($119|0)==(154); - if ($120) { - $121 = HEAP32[$pE>>2]|0; - $122 = (($121) + 28|0); - $123 = HEAP32[$122>>2]|0; - $124 = HEAP32[$2>>2]|0; - $125 = (($124) + 28|0); - $126 = HEAP32[$125>>2]|0; - $127 = ($123|0)==($126|0); - if ($127) { - $128 = HEAP32[$pE>>2]|0; - $129 = (($128) + 32|0); - $130 = HEAP16[$129>>1]|0; - $131 = $130 << 16 >> 16; - $132 = HEAP32[$2>>2]|0; - $133 = (($132) + 32|0); - $134 = HEAP16[$133>>1]|0; - $135 = $134 << 16 >> 16; - $136 = ($131|0)==($135|0); - if ($136) { - break; - } - } - } - $140 = HEAP32[$j>>2]|0; - $141 = (($140) + 1)|0; - HEAP32[$j>>2] = $141; - $142 = HEAP32[$pTerm>>2]|0; - $143 = (($142) + 20|0); - HEAP32[$pTerm>>2] = $143; - } - $137 = HEAP32[$j>>2]|0; - $138 = HEAP32[$pCol>>2]|0; - $139 = (($138) + 12|0); - HEAP32[$139>>2] = $137; - } - } while(0); - $144 = HEAP32[$pCol>>2]|0; - $145 = (($144) + 12|0); - $146 = HEAP32[$145>>2]|0; - $147 = ($146|0)<(0); - if ($147) { - $148 = HEAP32[$pAggInfo>>2]|0; - $149 = (($148) + 12|0); - $150 = HEAP32[$149>>2]|0; - $151 = (($150) + 1)|0; - HEAP32[$149>>2] = $151; - $152 = HEAP32[$pCol>>2]|0; - $153 = (($152) + 12|0); - HEAP32[$153>>2] = $150; - } - } - } - $154 = HEAP32[$pAggInfo>>2]|0; - $155 = HEAP32[$2>>2]|0; - $156 = (($155) + 40|0); - HEAP32[$156>>2] = $154; - $157 = HEAP32[$2>>2]|0; - HEAP8[$157>>0] = -100; - $158 = HEAP32[$k>>2]|0; - $159 = $158&65535; - $160 = HEAP32[$2>>2]|0; - $161 = (($160) + 34|0); - HEAP16[$161>>1] = $159; - } - } while(0); - HEAP32[$0>>2] = 1; - $271 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($271|0); - } else if ((($16|0) == 155)) { - $166 = HEAP32[$pNC>>2]|0; - $167 = (($166) + 28|0); - $168 = HEAP8[$167>>0]|0; - $169 = $168&255; - $170 = $169 & 8; - $171 = ($170|0)==(0); - if ($171) { - $172 = HEAP32[$1>>2]|0; - $173 = (($172) + 16|0); - $174 = HEAP32[$173>>2]|0; - $175 = HEAP32[$2>>2]|0; - $176 = (($175) + 38|0); - $177 = HEAP8[$176>>0]|0; - $178 = $177&255; - $179 = ($174|0)==($178|0); - if ($179) { - $180 = HEAP32[$pAggInfo>>2]|0; - $181 = (($180) + 40|0); - $182 = HEAP32[$181>>2]|0; - HEAP32[$pItem1>>2] = $182; - HEAP32[$i>>2] = 0; - while(1) { - $183 = HEAP32[$i>>2]|0; - $184 = HEAP32[$pAggInfo>>2]|0; - $185 = (($184) + 44|0); - $186 = HEAP32[$185>>2]|0; - $187 = ($183|0)<($186|0); - if (!($187)) { - break; - } - $188 = HEAP32[$pItem1>>2]|0; - $189 = HEAP32[$188>>2]|0; - $190 = HEAP32[$2>>2]|0; - $191 = (_sqlite3ExprCompare($189,$190,-1)|0); - $192 = ($191|0)==(0); - if ($192) { - break; - } - $193 = HEAP32[$i>>2]|0; - $194 = (($193) + 1)|0; - HEAP32[$i>>2] = $194; - $195 = HEAP32[$pItem1>>2]|0; - $196 = (($195) + 16|0); - HEAP32[$pItem1>>2] = $196; - } - $197 = HEAP32[$i>>2]|0; - $198 = HEAP32[$pAggInfo>>2]|0; - $199 = (($198) + 44|0); - $200 = HEAP32[$199>>2]|0; - $201 = ($197|0)>=($200|0); - do { - if ($201) { - $202 = HEAP32[$pParse>>2]|0; - $203 = HEAP32[$202>>2]|0; - $204 = (($203) + 16|0); - $205 = HEAP32[$204>>2]|0; - $206 = (($205) + 12|0); - $207 = HEAP32[$206>>2]|0; - $208 = (($207) + 77|0); - $209 = HEAP8[$208>>0]|0; - HEAP8[$enc>>0] = $209; - $210 = HEAP32[$pParse>>2]|0; - $211 = HEAP32[$210>>2]|0; - $212 = HEAP32[$pAggInfo>>2]|0; - $213 = (_addAggInfoFunc($211,$212)|0); - HEAP32[$i>>2] = $213; - $214 = HEAP32[$i>>2]|0; - $215 = ($214|0)>=(0); - if ($215) { - $216 = HEAP32[$i>>2]|0; - $217 = HEAP32[$pAggInfo>>2]|0; - $218 = (($217) + 40|0); - $219 = HEAP32[$218>>2]|0; - $220 = (($219) + ($216<<4)|0); - HEAP32[$pItem1>>2] = $220; - $221 = HEAP32[$2>>2]|0; - $222 = HEAP32[$pItem1>>2]|0; - HEAP32[$222>>2] = $221; - $223 = HEAP32[$pParse>>2]|0; - $224 = (($223) + 72|0); - $225 = HEAP32[$224>>2]|0; - $226 = (($225) + 1)|0; - HEAP32[$224>>2] = $226; - $227 = HEAP32[$pItem1>>2]|0; - $228 = (($227) + 8|0); - HEAP32[$228>>2] = $226; - $229 = HEAP32[$pParse>>2]|0; - $230 = HEAP32[$229>>2]|0; - $231 = HEAP32[$2>>2]|0; - $232 = (($231) + 8|0); - $233 = HEAP32[$232>>2]|0; - $234 = HEAP32[$2>>2]|0; - $235 = (($234) + 8|0); - $236 = HEAP32[$235>>2]|0; - $237 = (_sqlite3Strlen30($236)|0); - $238 = HEAP32[$2>>2]|0; - $239 = (($238) + 20|0); - $240 = HEAP32[$239>>2]|0; - $241 = ($240|0)!=(0|0); - if ($241) { - $242 = HEAP32[$2>>2]|0; - $243 = (($242) + 20|0); - $244 = HEAP32[$243>>2]|0; - $245 = HEAP32[$244>>2]|0; - $247 = $245; - } else { - $247 = 0; - } - $246 = HEAP8[$enc>>0]|0; - $248 = (_sqlite3FindFunction($230,$233,$237,$247,$246,0)|0); - $249 = HEAP32[$pItem1>>2]|0; - $250 = (($249) + 4|0); - HEAP32[$250>>2] = $248; - $251 = HEAP32[$2>>2]|0; - $252 = (($251) + 4|0); - $253 = HEAP32[$252>>2]|0; - $254 = $253 & 16; - $255 = ($254|0)!=(0); - if ($255) { - $256 = HEAP32[$pParse>>2]|0; - $257 = (($256) + 68|0); - $258 = HEAP32[$257>>2]|0; - $259 = (($258) + 1)|0; - HEAP32[$257>>2] = $259; - $260 = HEAP32[$pItem1>>2]|0; - $261 = (($260) + 12|0); - HEAP32[$261>>2] = $258; - break; - } else { - $262 = HEAP32[$pItem1>>2]|0; - $263 = (($262) + 12|0); - HEAP32[$263>>2] = -1; - break; - } - } - } - } while(0); - $264 = HEAP32[$i>>2]|0; - $265 = $264&65535; - $266 = HEAP32[$2>>2]|0; - $267 = (($266) + 34|0); - HEAP16[$267>>1] = $265; - $268 = HEAP32[$pAggInfo>>2]|0; - $269 = HEAP32[$2>>2]|0; - $270 = (($269) + 40|0); - HEAP32[$270>>2] = $268; - HEAP32[$0>>2] = 1; - $271 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($271|0); - } - } - HEAP32[$0>>2] = 0; - $271 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($271|0); - } else { - HEAP32[$0>>2] = 0; - $271 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($271|0); - } - return 0|0; -} -function _analyzeAggregatesInSelect($pWalker,$pSelect) { - $pWalker = $pWalker|0; - $pSelect = $pSelect|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pWalker; - HEAP32[$1>>2] = $pSelect; - STACKTOP = sp;return 0; -} -function _addAggInfoColumn($db,$pInfo) { - $db = $db|0; - $pInfo = $pInfo|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pInfo; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 28|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 32|0); - $8 = (_sqlite3ArrayAllocate($2,$5,24,$7,$i)|0); - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 28|0); - HEAP32[$10>>2] = $8; - $11 = HEAP32[$i>>2]|0; - STACKTOP = sp;return ($11|0); -} -function _addAggInfoFunc($db,$pInfo) { - $db = $db|0; - $pInfo = $pInfo|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pInfo; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 40|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 44|0); - $8 = (_sqlite3ArrayAllocate($2,$5,16,$7,$i)|0); - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 40|0); - HEAP32[$10>>2] = $8; - $11 = HEAP32[$i>>2]|0; - STACKTOP = sp;return ($11|0); -} -function _pushOntoSorter($pParse,$pSort,$pSelect,$regData) { - $pParse = $pParse|0; - $pSort = $pSort|0; - $pSelect = $pSelect|0; - $regData = $regData|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $addr1 = 0, $addr2 = 0, $addrFirst = 0, $addrJmp = 0, $iLimit = 0, $nExpr = 0, $nKey = 0, $nOBSat = 0, $op = 0, $pKI = 0, $pOp = 0, $regBase = 0, $regPrevKey = 0, $regRecord = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 72|0; - $1 = sp + 68|0; - $2 = sp + 64|0; - $3 = sp + 60|0; - $v = sp + 56|0; - $nExpr = sp + 52|0; - $regRecord = sp + 48|0; - $regBase = sp + 44|0; - $nOBSat = sp + 40|0; - $op = sp + 36|0; - $regPrevKey = sp + 32|0; - $addrFirst = sp + 28|0; - $addrJmp = sp + 24|0; - $pOp = sp + 20|0; - $nKey = sp + 16|0; - $pKI = sp + 12|0; - $addr1 = sp + 8|0; - $addr2 = sp + 4|0; - $iLimit = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pSort; - HEAP32[$2>>2] = $pSelect; - HEAP32[$3>>2] = $regData; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 8|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$v>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$8>>2]|0; - HEAP32[$nExpr>>2] = $9; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 72|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + 1)|0; - HEAP32[$11>>2] = $13; - HEAP32[$regRecord>>2] = $13; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 72|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + 1)|0; - HEAP32[$regBase>>2] = $17; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 4|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$nOBSat>>2] = $20; - $21 = HEAP32[$nExpr>>2]|0; - $22 = (($21) + 2)|0; - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 72|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + ($22))|0; - HEAP32[$24>>2] = $26; - $27 = HEAP32[$0>>2]|0; - _sqlite3ExprCacheClear($27); - $28 = HEAP32[$0>>2]|0; - $29 = HEAP32[$1>>2]|0; - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$regBase>>2]|0; - (_sqlite3ExprCodeExprList($28,$30,$31,0)|0); - $32 = HEAP32[$v>>2]|0; - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 8|0); - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$regBase>>2]|0; - $37 = HEAP32[$nExpr>>2]|0; - $38 = (($36) + ($37))|0; - (_sqlite3VdbeAddOp2($32,68,$35,$38)|0); - $39 = HEAP32[$0>>2]|0; - $40 = HEAP32[$3>>2]|0; - $41 = HEAP32[$regBase>>2]|0; - $42 = HEAP32[$nExpr>>2]|0; - $43 = (($41) + ($42))|0; - $44 = (($43) + 1)|0; - _sqlite3ExprCodeMove($39,$40,$44,1); - $45 = HEAP32[$v>>2]|0; - $46 = HEAP32[$regBase>>2]|0; - $47 = HEAP32[$nOBSat>>2]|0; - $48 = (($46) + ($47))|0; - $49 = HEAP32[$nExpr>>2]|0; - $50 = (($49) + 2)|0; - $51 = HEAP32[$nOBSat>>2]|0; - $52 = (($50) - ($51))|0; - $53 = HEAP32[$regRecord>>2]|0; - (_sqlite3VdbeAddOp3($45,48,$48,$52,$53)|0); - $54 = HEAP32[$nOBSat>>2]|0; - $55 = ($54|0)>(0); - do { - if ($55) { - $56 = HEAP32[$0>>2]|0; - $57 = (($56) + 72|0); - $58 = HEAP32[$57>>2]|0; - $59 = (($58) + 1)|0; - HEAP32[$regPrevKey>>2] = $59; - $60 = HEAP32[$1>>2]|0; - $61 = (($60) + 4|0); - $62 = HEAP32[$61>>2]|0; - $63 = HEAP32[$0>>2]|0; - $64 = (($63) + 72|0); - $65 = HEAP32[$64>>2]|0; - $66 = (($65) + ($62))|0; - HEAP32[$64>>2] = $66; - $67 = HEAP32[$nExpr>>2]|0; - $68 = HEAP32[$1>>2]|0; - $69 = (($68) + 4|0); - $70 = HEAP32[$69>>2]|0; - $71 = (($67) - ($70))|0; - $72 = (($71) + 1)|0; - HEAP32[$nKey>>2] = $72; - $73 = HEAP32[$v>>2]|0; - $74 = HEAP32[$regBase>>2]|0; - $75 = HEAP32[$nExpr>>2]|0; - $76 = (($74) + ($75))|0; - $77 = (_sqlite3VdbeAddOp1($73,45,$76)|0); - HEAP32[$addrFirst>>2] = $77; - $78 = HEAP32[$v>>2]|0; - $79 = HEAP32[$regPrevKey>>2]|0; - $80 = HEAP32[$regBase>>2]|0; - $81 = HEAP32[$1>>2]|0; - $82 = (($81) + 4|0); - $83 = HEAP32[$82>>2]|0; - (_sqlite3VdbeAddOp3($78,41,$79,$80,$83)|0); - $84 = HEAP32[$v>>2]|0; - $85 = HEAP32[$1>>2]|0; - $86 = (($85) + 20|0); - $87 = HEAP32[$86>>2]|0; - $88 = (_sqlite3VdbeGetOp($84,$87)|0); - HEAP32[$pOp>>2] = $88; - $89 = HEAP32[$0>>2]|0; - $90 = HEAP32[$89>>2]|0; - $91 = (($90) + 64|0); - $92 = HEAP8[$91>>0]|0; - $93 = ($92<<24>>24)!=(0); - if ($93) { - STACKTOP = sp;return; - } else { - $94 = HEAP32[$nKey>>2]|0; - $95 = (($94) + 1)|0; - $96 = HEAP32[$pOp>>2]|0; - $97 = (($96) + 8|0); - HEAP32[$97>>2] = $95; - $98 = HEAP32[$pOp>>2]|0; - $99 = (($98) + 16|0); - $100 = HEAP32[$99>>2]|0; - HEAP32[$pKI>>2] = $100; - $101 = HEAP32[$pKI>>2]|0; - $102 = (($101) + 16|0); - $103 = HEAP32[$102>>2]|0; - $104 = HEAP32[$pKI>>2]|0; - $105 = (($104) + 6|0); - $106 = HEAP16[$105>>1]|0; - $107 = $106&65535; - _memset(($103|0),0,($107|0))|0; - $108 = HEAP32[$v>>2]|0; - $109 = HEAP32[$pKI>>2]|0; - _sqlite3VdbeChangeP4($108,-1,$109,-6); - $110 = HEAP32[$0>>2]|0; - $111 = HEAP32[$1>>2]|0; - $112 = HEAP32[$111>>2]|0; - $113 = HEAP32[$nOBSat>>2]|0; - $114 = (_keyInfoFromExprList($110,$112,$113,1)|0); - $115 = HEAP32[$pOp>>2]|0; - $116 = (($115) + 16|0); - HEAP32[$116>>2] = $114; - $117 = HEAP32[$v>>2]|0; - $118 = (_sqlite3VdbeCurrentAddr($117)|0); - HEAP32[$addrJmp>>2] = $118; - $119 = HEAP32[$v>>2]|0; - $120 = HEAP32[$addrJmp>>2]|0; - $121 = (($120) + 1)|0; - $122 = HEAP32[$addrJmp>>2]|0; - $123 = (($122) + 1)|0; - (_sqlite3VdbeAddOp3($119,42,$121,0,$123)|0); - $124 = HEAP32[$v>>2]|0; - $125 = (_sqlite3VdbeMakeLabel($124)|0); - $126 = HEAP32[$1>>2]|0; - $127 = (($126) + 16|0); - HEAP32[$127>>2] = $125; - $128 = HEAP32[$0>>2]|0; - $129 = (($128) + 72|0); - $130 = HEAP32[$129>>2]|0; - $131 = (($130) + 1)|0; - HEAP32[$129>>2] = $131; - $132 = HEAP32[$1>>2]|0; - $133 = (($132) + 12|0); - HEAP32[$133>>2] = $131; - $134 = HEAP32[$v>>2]|0; - $135 = HEAP32[$1>>2]|0; - $136 = (($135) + 12|0); - $137 = HEAP32[$136>>2]|0; - $138 = HEAP32[$1>>2]|0; - $139 = (($138) + 16|0); - $140 = HEAP32[$139>>2]|0; - (_sqlite3VdbeAddOp2($134,17,$137,$140)|0); - $141 = HEAP32[$v>>2]|0; - $142 = HEAP32[$1>>2]|0; - $143 = (($142) + 8|0); - $144 = HEAP32[$143>>2]|0; - (_sqlite3VdbeAddOp1($141,116,$144)|0); - $145 = HEAP32[$v>>2]|0; - $146 = HEAP32[$addrFirst>>2]|0; - _sqlite3VdbeJumpHere($145,$146); - $147 = HEAP32[$v>>2]|0; - $148 = HEAP32[$regBase>>2]|0; - $149 = HEAP32[$regPrevKey>>2]|0; - $150 = HEAP32[$1>>2]|0; - $151 = (($150) + 4|0); - $152 = HEAP32[$151>>2]|0; - (_sqlite3VdbeAddOp3($147,32,$148,$149,$152)|0); - $153 = HEAP32[$v>>2]|0; - $154 = HEAP32[$addrJmp>>2]|0; - _sqlite3VdbeJumpHere($153,$154); - break; - } - } - } while(0); - $155 = HEAP32[$1>>2]|0; - $156 = (($155) + 24|0); - $157 = HEAP8[$156>>0]|0; - $158 = $157&255; - $159 = $158 & 1; - $160 = ($159|0)!=(0); - if ($160) { - HEAP32[$op>>2] = 106; - } else { - HEAP32[$op>>2] = 107; - } - $161 = HEAP32[$v>>2]|0; - $162 = HEAP32[$op>>2]|0; - $163 = HEAP32[$1>>2]|0; - $164 = (($163) + 8|0); - $165 = HEAP32[$164>>2]|0; - $166 = HEAP32[$regRecord>>2]|0; - (_sqlite3VdbeAddOp2($161,$162,$165,$166)|0); - $167 = HEAP32[$2>>2]|0; - $168 = (($167) + 8|0); - $169 = HEAP32[$168>>2]|0; - $170 = ($169|0)!=(0); - if (!($170)) { - STACKTOP = sp;return; - } - $171 = HEAP32[$2>>2]|0; - $172 = (($171) + 12|0); - $173 = HEAP32[$172>>2]|0; - $174 = ($173|0)!=(0); - $175 = HEAP32[$2>>2]|0; - if ($174) { - $176 = (($175) + 12|0); - $177 = HEAP32[$176>>2]|0; - $178 = (($177) + 1)|0; - HEAP32[$iLimit>>2] = $178; - } else { - $179 = (($175) + 8|0); - $180 = HEAP32[$179>>2]|0; - HEAP32[$iLimit>>2] = $180; - } - $181 = HEAP32[$v>>2]|0; - $182 = HEAP32[$iLimit>>2]|0; - $183 = (_sqlite3VdbeAddOp1($181,136,$182)|0); - HEAP32[$addr1>>2] = $183; - $184 = HEAP32[$v>>2]|0; - $185 = HEAP32[$iLimit>>2]|0; - (_sqlite3VdbeAddOp2($184,37,$185,-1)|0); - $186 = HEAP32[$v>>2]|0; - $187 = (_sqlite3VdbeAddOp0($186,16)|0); - HEAP32[$addr2>>2] = $187; - $188 = HEAP32[$v>>2]|0; - $189 = HEAP32[$addr1>>2]|0; - _sqlite3VdbeJumpHere($188,$189); - $190 = HEAP32[$v>>2]|0; - $191 = HEAP32[$1>>2]|0; - $192 = (($191) + 8|0); - $193 = HEAP32[$192>>2]|0; - (_sqlite3VdbeAddOp1($190,102,$193)|0); - $194 = HEAP32[$v>>2]|0; - $195 = HEAP32[$1>>2]|0; - $196 = (($195) + 8|0); - $197 = HEAP32[$196>>2]|0; - (_sqlite3VdbeAddOp1($194,74,$197)|0); - $198 = HEAP32[$v>>2]|0; - $199 = HEAP32[$addr2>>2]|0; - _sqlite3VdbeJumpHere($198,$199); - STACKTOP = sp;return; -} -function _selectOpName($id) { - $id = $id|0; - var $0 = 0, $1 = 0, $2 = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $z = sp; - HEAP32[$0>>2] = $id; - $1 = HEAP32[$0>>2]|0; - if ((($1|0) == 116)) { - HEAP32[$z>>2] = 25200; - } else if ((($1|0) == 118)) { - HEAP32[$z>>2] = 25216; - } else if ((($1|0) == 117)) { - HEAP32[$z>>2] = 25232; - } else { - HEAP32[$z>>2] = 25240; - } - $2 = HEAP32[$z>>2]|0; - STACKTOP = sp;return ($2|0); -} -function _generateWithRecursiveQuery($pParse,$p,$pDest) { - $pParse = $pParse|0; - $p = $p|0; - $pDest = $pDest|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; - var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; - var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; - var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; - var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addrBreak = 0, $addrCont = 0, $addrTop = 0; - var $destQueue = 0, $eDest = 0, $i = 0, $iCurrent = 0, $iDistinct = 0, $iQueue = 0, $nCol = 0, $pKeyInfo = 0, $pLimit = 0, $pOffset = 0, $pOrderBy = 0, $pSetup = 0, $pSrc = 0, $rc = 0, $regCurrent = 0, $regLimit = 0, $regOffset = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 112|0; - $0 = sp + 108|0; - $1 = sp + 104|0; - $2 = sp + 100|0; - $pSrc = sp + 96|0; - $nCol = sp + 92|0; - $v = sp + 88|0; - $pSetup = sp + 84|0; - $addrTop = sp + 80|0; - $addrCont = sp + 76|0; - $addrBreak = sp + 72|0; - $iCurrent = sp + 68|0; - $regCurrent = sp + 64|0; - $iQueue = sp + 60|0; - $iDistinct = sp + 56|0; - $eDest = sp + 52|0; - $destQueue = sp + 32|0; - $i = sp + 28|0; - $rc = sp + 24|0; - $pOrderBy = sp + 20|0; - $pLimit = sp + 16|0; - $pOffset = sp + 12|0; - $regLimit = sp + 8|0; - $regOffset = sp + 4|0; - $pKeyInfo = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $pDest; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 32|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pSrc>>2] = $5; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$7>>2]|0; - HEAP32[$nCol>>2] = $8; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 8|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$v>>2] = $11; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 52|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$pSetup>>2] = $14; - HEAP32[$iCurrent>>2] = 0; - HEAP32[$iDistinct>>2] = 0; - HEAP32[$eDest>>2] = 5; - $15 = HEAP32[$0>>2]|0; - $16 = (_sqlite3AuthCheck($15,33,0,0,0)|0); - $17 = ($16|0)!=(0); - if ($17) { - STACKTOP = sp;return; - } - $18 = HEAP32[$v>>2]|0; - $19 = (_sqlite3VdbeMakeLabel($18)|0); - HEAP32[$addrBreak>>2] = $19; - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$1>>2]|0; - $22 = HEAP32[$addrBreak>>2]|0; - _computeLimitRegisters($20,$21,$22); - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 60|0); - $25 = HEAP32[$24>>2]|0; - HEAP32[$pLimit>>2] = $25; - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 64|0); - $28 = HEAP32[$27>>2]|0; - HEAP32[$pOffset>>2] = $28; - $29 = HEAP32[$1>>2]|0; - $30 = (($29) + 8|0); - $31 = HEAP32[$30>>2]|0; - HEAP32[$regLimit>>2] = $31; - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 12|0); - $34 = HEAP32[$33>>2]|0; - HEAP32[$regOffset>>2] = $34; - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 64|0); - HEAP32[$36>>2] = 0; - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 60|0); - HEAP32[$38>>2] = 0; - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 12|0); - HEAP32[$40>>2] = 0; - $41 = HEAP32[$1>>2]|0; - $42 = (($41) + 8|0); - HEAP32[$42>>2] = 0; - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + 48|0); - $45 = HEAP32[$44>>2]|0; - HEAP32[$pOrderBy>>2] = $45; - HEAP32[$i>>2] = 0; - while(1) { - $46 = HEAP32[$i>>2]|0; - $47 = HEAP32[$pSrc>>2]|0; - $48 = HEAP32[$47>>2]|0; - $49 = ($46|0)<($48|0); - if (!($49)) { - break; - } - $50 = HEAP32[$i>>2]|0; - $51 = HEAP32[$pSrc>>2]|0; - $52 = (($51) + 8|0); - $53 = (($52) + (($50*72)|0)|0); - $54 = (($53) + 37|0); - $55 = HEAP8[$54>>0]|0; - $56 = ($55&255) >>> 3; - $57 = $56 & 1; - $58 = $57&255; - $59 = ($58|0)!=(0); - $60 = HEAP32[$i>>2]|0; - if ($59) { - label = 5; - break; - } - $66 = (($60) + 1)|0; - HEAP32[$i>>2] = $66; - } - if ((label|0) == 5) { - $61 = HEAP32[$pSrc>>2]|0; - $62 = (($61) + 8|0); - $63 = (($62) + (($60*72)|0)|0); - $64 = (($63) + 40|0); - $65 = HEAP32[$64>>2]|0; - HEAP32[$iCurrent>>2] = $65; - } - $67 = HEAP32[$0>>2]|0; - $68 = (($67) + 68|0); - $69 = HEAP32[$68>>2]|0; - $70 = (($69) + 1)|0; - HEAP32[$68>>2] = $70; - HEAP32[$iQueue>>2] = $69; - $71 = HEAP32[$1>>2]|0; - $72 = (($71) + 4|0); - $73 = HEAP8[$72>>0]|0; - $74 = $73&255; - $75 = ($74|0)==(115); - $76 = HEAP32[$pOrderBy>>2]|0; - $77 = ($76|0)!=(0|0); - if ($75) { - $78 = $77 ? 8 : 6; - HEAP32[$eDest>>2] = $78; - $79 = HEAP32[$0>>2]|0; - $80 = (($79) + 68|0); - $81 = HEAP32[$80>>2]|0; - $82 = (($81) + 1)|0; - HEAP32[$80>>2] = $82; - HEAP32[$iDistinct>>2] = $81; - } else { - $83 = $77 ? 7 : 5; - HEAP32[$eDest>>2] = $83; - } - $84 = HEAP32[$eDest>>2]|0; - $85 = HEAP32[$iQueue>>2]|0; - _sqlite3SelectDestInit($destQueue,$84,$85); - $86 = HEAP32[$0>>2]|0; - $87 = (($86) + 72|0); - $88 = HEAP32[$87>>2]|0; - $89 = (($88) + 1)|0; - HEAP32[$87>>2] = $89; - HEAP32[$regCurrent>>2] = $89; - $90 = HEAP32[$v>>2]|0; - $91 = HEAP32[$iCurrent>>2]|0; - $92 = HEAP32[$regCurrent>>2]|0; - $93 = HEAP32[$nCol>>2]|0; - (_sqlite3VdbeAddOp3($90,57,$91,$92,$93)|0); - $94 = HEAP32[$pOrderBy>>2]|0; - $95 = ($94|0)!=(0|0); - if ($95) { - $96 = HEAP32[$0>>2]|0; - $97 = HEAP32[$1>>2]|0; - $98 = (_multiSelectOrderByKeyInfo($96,$97,1)|0); - HEAP32[$pKeyInfo>>2] = $98; - $99 = HEAP32[$v>>2]|0; - $100 = HEAP32[$iQueue>>2]|0; - $101 = HEAP32[$pOrderBy>>2]|0; - $102 = HEAP32[$101>>2]|0; - $103 = (($102) + 2)|0; - $104 = HEAP32[$pKeyInfo>>2]|0; - (_sqlite3VdbeAddOp4($99,55,$100,$103,0,$104,-6)|0); - $105 = HEAP32[$pOrderBy>>2]|0; - $106 = (($destQueue) + 16|0); - HEAP32[$106>>2] = $105; - } else { - $107 = HEAP32[$v>>2]|0; - $108 = HEAP32[$iQueue>>2]|0; - $109 = HEAP32[$nCol>>2]|0; - (_sqlite3VdbeAddOp2($107,55,$108,$109)|0); - } - $110 = HEAP32[$iDistinct>>2]|0; - $111 = ($110|0)!=(0); - if ($111) { - $112 = HEAP32[$v>>2]|0; - $113 = HEAP32[$iDistinct>>2]|0; - $114 = (_sqlite3VdbeAddOp2($112,55,$113,0)|0); - $115 = HEAP32[$1>>2]|0; - $116 = (($115) + 16|0); - HEAP32[$116>>2] = $114; - $117 = HEAP32[$1>>2]|0; - $118 = (($117) + 6|0); - $119 = HEAP16[$118>>1]|0; - $120 = $119&65535; - $121 = $120 | 8; - $122 = $121&65535; - HEAP16[$118>>1] = $122; - } - $123 = HEAP32[$1>>2]|0; - $124 = (($123) + 48|0); - HEAP32[$124>>2] = 0; - $125 = HEAP32[$pSetup>>2]|0; - $126 = (($125) + 56|0); - HEAP32[$126>>2] = 0; - $127 = HEAP32[$0>>2]|0; - $128 = HEAP32[$pSetup>>2]|0; - $129 = (_sqlite3Select($127,$128,$destQueue)|0); - HEAP32[$rc>>2] = $129; - $130 = HEAP32[$1>>2]|0; - $131 = HEAP32[$pSetup>>2]|0; - $132 = (($131) + 56|0); - HEAP32[$132>>2] = $130; - $133 = HEAP32[$rc>>2]|0; - $134 = ($133|0)!=(0); - if (!($134)) { - $135 = HEAP32[$v>>2]|0; - $136 = HEAP32[$iQueue>>2]|0; - $137 = HEAP32[$addrBreak>>2]|0; - $138 = (_sqlite3VdbeAddOp2($135,105,$136,$137)|0); - HEAP32[$addrTop>>2] = $138; - $139 = HEAP32[$v>>2]|0; - $140 = HEAP32[$iCurrent>>2]|0; - (_sqlite3VdbeAddOp1($139,101,$140)|0); - $141 = HEAP32[$pOrderBy>>2]|0; - $142 = ($141|0)!=(0|0); - $143 = HEAP32[$v>>2]|0; - $144 = HEAP32[$iQueue>>2]|0; - if ($142) { - $145 = HEAP32[$pOrderBy>>2]|0; - $146 = HEAP32[$145>>2]|0; - $147 = (($146) + 1)|0; - $148 = HEAP32[$regCurrent>>2]|0; - (_sqlite3VdbeAddOp3($143,46,$144,$147,$148)|0); - } else { - $149 = HEAP32[$regCurrent>>2]|0; - (_sqlite3VdbeAddOp2($143,99,$144,$149)|0); - } - $150 = HEAP32[$v>>2]|0; - $151 = HEAP32[$iQueue>>2]|0; - (_sqlite3VdbeAddOp1($150,74,$151)|0); - $152 = HEAP32[$v>>2]|0; - $153 = (_sqlite3VdbeMakeLabel($152)|0); - HEAP32[$addrCont>>2] = $153; - $154 = HEAP32[$v>>2]|0; - $155 = HEAP32[$regOffset>>2]|0; - $156 = HEAP32[$addrCont>>2]|0; - _codeOffset($154,$155,$156); - $157 = HEAP32[$0>>2]|0; - $158 = HEAP32[$1>>2]|0; - $159 = HEAP32[$1>>2]|0; - $160 = HEAP32[$159>>2]|0; - $161 = HEAP32[$iCurrent>>2]|0; - $162 = HEAP32[$2>>2]|0; - $163 = HEAP32[$addrCont>>2]|0; - $164 = HEAP32[$addrBreak>>2]|0; - _selectInnerLoop($157,$158,$160,$161,0,0,$162,$163,$164); - $165 = HEAP32[$regLimit>>2]|0; - $166 = ($165|0)!=(0); - if ($166) { - $167 = HEAP32[$v>>2]|0; - $168 = HEAP32[$regLimit>>2]|0; - $169 = HEAP32[$addrBreak>>2]|0; - (_sqlite3VdbeAddOp3($167,136,$168,$169,-1)|0); - } - $170 = HEAP32[$v>>2]|0; - $171 = HEAP32[$addrCont>>2]|0; - _sqlite3VdbeResolveLabel($170,$171); - $172 = HEAP32[$1>>2]|0; - $173 = (($172) + 52|0); - HEAP32[$173>>2] = 0; - $174 = HEAP32[$0>>2]|0; - $175 = HEAP32[$1>>2]|0; - (_sqlite3Select($174,$175,$destQueue)|0); - $176 = HEAP32[$pSetup>>2]|0; - $177 = HEAP32[$1>>2]|0; - $178 = (($177) + 52|0); - HEAP32[$178>>2] = $176; - $179 = HEAP32[$v>>2]|0; - $180 = HEAP32[$addrTop>>2]|0; - (_sqlite3VdbeAddOp2($179,16,0,$180)|0); - $181 = HEAP32[$v>>2]|0; - $182 = HEAP32[$addrBreak>>2]|0; - _sqlite3VdbeResolveLabel($181,$182); - } - $183 = HEAP32[$0>>2]|0; - $184 = HEAP32[$183>>2]|0; - $185 = HEAP32[$1>>2]|0; - $186 = (($185) + 48|0); - $187 = HEAP32[$186>>2]|0; - _sqlite3ExprListDelete($184,$187); - $188 = HEAP32[$pOrderBy>>2]|0; - $189 = HEAP32[$1>>2]|0; - $190 = (($189) + 48|0); - HEAP32[$190>>2] = $188; - $191 = HEAP32[$pLimit>>2]|0; - $192 = HEAP32[$1>>2]|0; - $193 = (($192) + 60|0); - HEAP32[$193>>2] = $191; - $194 = HEAP32[$pOffset>>2]|0; - $195 = HEAP32[$1>>2]|0; - $196 = (($195) + 64|0); - HEAP32[$196>>2] = $194; - STACKTOP = sp;return; -} -function _multiSelectOrderBy($pParse,$p,$pDest) { - $pParse = $pParse|0; - $p = $p|0; - $pDest = $pDest|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; - var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; - var $495 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; - var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; - var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aPermute = 0, $addrAeqB = 0, $addrAgtB = 0, $addrAltB = 0; - var $addrEofA = 0, $addrEofA_noB = 0, $addrEofB = 0, $addrOutA = 0, $addrOutB = 0, $addrSelectA = 0, $addrSelectB = 0, $db = 0, $destA = 0, $destB = 0, $i = 0, $iSub1 = 0, $iSub2 = 0, $j = 0, $j1 = 0, $labelCmpr = 0, $labelEnd = 0, $nExpr = 0, $nOrderBy = 0, $op = 0; - var $or$cond = 0, $or$cond3 = 0, $or$cond5 = 0, $pFirst = 0, $pItem = 0, $pItem1 = 0, $pKeyDup = 0, $pKeyMerge = 0, $pNew = 0, $pOrderBy = 0, $pPrior = 0, $regAddrA = 0, $regAddrB = 0, $regLimitA = 0, $regLimitB = 0, $regOutA = 0, $regOutB = 0, $regPrev = 0, $savedLimit = 0, $savedOffset = 0; - var $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 224|0; - $0 = sp + 212|0; - $1 = sp + 208|0; - $2 = sp + 204|0; - $3 = sp + 200|0; - $i = sp + 196|0; - $j = sp + 192|0; - $pPrior = sp + 188|0; - $v = sp + 184|0; - $destA = sp + 164|0; - $destB = sp + 144|0; - $regAddrA = sp + 140|0; - $regAddrB = sp + 136|0; - $addrSelectA = sp + 132|0; - $addrSelectB = sp + 128|0; - $regOutA = sp + 124|0; - $regOutB = sp + 120|0; - $addrOutA = sp + 116|0; - $addrOutB = sp + 112|0; - $addrEofA = sp + 108|0; - $addrEofA_noB = sp + 104|0; - $addrEofB = sp + 100|0; - $addrAltB = sp + 96|0; - $addrAeqB = sp + 92|0; - $addrAgtB = sp + 88|0; - $regLimitA = sp + 84|0; - $regLimitB = sp + 80|0; - $regPrev = sp + 76|0; - $savedLimit = sp + 72|0; - $savedOffset = sp + 68|0; - $labelCmpr = sp + 64|0; - $labelEnd = sp + 60|0; - $j1 = sp + 56|0; - $op = sp + 52|0; - $pKeyDup = sp + 48|0; - $pKeyMerge = sp + 44|0; - $db = sp + 40|0; - $pOrderBy = sp + 36|0; - $nOrderBy = sp + 32|0; - $aPermute = sp + 28|0; - $iSub1 = sp + 24|0; - $iSub2 = sp + 20|0; - $pItem = sp + 16|0; - $pNew = sp + 12|0; - $pItem1 = sp + 8|0; - $nExpr = sp + 4|0; - $pFirst = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $p; - HEAP32[$3>>2] = $pDest; - HEAP32[$addrOutB>>2] = 0; - HEAP32[$pKeyDup>>2] = 0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 8|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$v>>2] = $8; - $9 = HEAP32[$v>>2]|0; - $10 = (_sqlite3VdbeMakeLabel($9)|0); - HEAP32[$labelEnd>>2] = $10; - $11 = HEAP32[$v>>2]|0; - $12 = (_sqlite3VdbeMakeLabel($11)|0); - HEAP32[$labelCmpr>>2] = $12; - $13 = HEAP32[$2>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - HEAP32[$op>>2] = $16; - $17 = HEAP32[$2>>2]|0; - $18 = (($17) + 52|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$pPrior>>2] = $19; - $20 = HEAP32[$2>>2]|0; - $21 = (($20) + 48|0); - $22 = HEAP32[$21>>2]|0; - HEAP32[$pOrderBy>>2] = $22; - $23 = HEAP32[$pOrderBy>>2]|0; - $24 = HEAP32[$23>>2]|0; - HEAP32[$nOrderBy>>2] = $24; - $25 = HEAP32[$op>>2]|0; - $26 = ($25|0)!=(116); - L1: do { - if ($26) { - HEAP32[$i>>2] = 1; - while(1) { - $27 = HEAP32[$db>>2]|0; - $28 = (($27) + 64|0); - $29 = HEAP8[$28>>0]|0; - $30 = $29&255; - $31 = ($30|0)==(0); - if (!($31)) { - break L1; - } - $32 = HEAP32[$i>>2]|0; - $33 = HEAP32[$2>>2]|0; - $34 = HEAP32[$33>>2]|0; - $35 = HEAP32[$34>>2]|0; - $36 = ($32|0)<=($35|0); - if (!($36)) { - break L1; - } - HEAP32[$j>>2] = 0; - $37 = HEAP32[$pOrderBy>>2]|0; - $38 = (($37) + 4|0); - $39 = HEAP32[$38>>2]|0; - HEAP32[$pItem>>2] = $39; - while(1) { - $40 = HEAP32[$j>>2]|0; - $41 = HEAP32[$nOrderBy>>2]|0; - $42 = ($40|0)<($41|0); - if (!($42)) { - break; - } - $43 = HEAP32[$pItem>>2]|0; - $44 = (($43) + 16|0); - $45 = HEAP16[$44>>1]|0; - $46 = $45&65535; - $47 = HEAP32[$i>>2]|0; - $48 = ($46|0)==($47|0); - if ($48) { - break; - } - $49 = HEAP32[$j>>2]|0; - $50 = (($49) + 1)|0; - HEAP32[$j>>2] = $50; - $51 = HEAP32[$pItem>>2]|0; - $52 = (($51) + 20|0); - HEAP32[$pItem>>2] = $52; - } - $53 = HEAP32[$j>>2]|0; - $54 = HEAP32[$nOrderBy>>2]|0; - $55 = ($53|0)==($54|0); - if ($55) { - $56 = HEAP32[$db>>2]|0; - $57 = (_sqlite3Expr($56,132,0)|0); - HEAP32[$pNew>>2] = $57; - $58 = HEAP32[$pNew>>2]|0; - $59 = ($58|0)==(0|0); - if ($59) { - break; - } - $60 = HEAP32[$pNew>>2]|0; - $61 = (($60) + 4|0); - $62 = HEAP32[$61>>2]|0; - $63 = $62 | 1024; - HEAP32[$61>>2] = $63; - $64 = HEAP32[$i>>2]|0; - $65 = HEAP32[$pNew>>2]|0; - $66 = (($65) + 8|0); - HEAP32[$66>>2] = $64; - $67 = HEAP32[$1>>2]|0; - $68 = HEAP32[$pOrderBy>>2]|0; - $69 = HEAP32[$pNew>>2]|0; - $70 = (_sqlite3ExprListAppend($67,$68,$69)|0); - HEAP32[$pOrderBy>>2] = $70; - $71 = HEAP32[$pOrderBy>>2]|0; - $72 = ($71|0)!=(0|0); - if ($72) { - $73 = HEAP32[$i>>2]|0; - $74 = $73&65535; - $75 = HEAP32[$nOrderBy>>2]|0; - $76 = (($75) + 1)|0; - HEAP32[$nOrderBy>>2] = $76; - $77 = HEAP32[$pOrderBy>>2]|0; - $78 = (($77) + 4|0); - $79 = HEAP32[$78>>2]|0; - $80 = (($79) + (($75*20)|0)|0); - $81 = (($80) + 16|0); - HEAP16[$81>>1] = $74; - } - } - $82 = HEAP32[$i>>2]|0; - $83 = (($82) + 1)|0; - HEAP32[$i>>2] = $83; - } - HEAP32[$0>>2] = 7; - $495 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($495|0); - } - } while(0); - $84 = HEAP32[$db>>2]|0; - $85 = HEAP32[$nOrderBy>>2]|0; - $86 = $85<<2; - $87 = (_sqlite3DbMallocRaw($84,$86)|0); - HEAP32[$aPermute>>2] = $87; - $88 = HEAP32[$aPermute>>2]|0; - $89 = ($88|0)!=(0|0); - if ($89) { - HEAP32[$i>>2] = 0; - $90 = HEAP32[$pOrderBy>>2]|0; - $91 = (($90) + 4|0); - $92 = HEAP32[$91>>2]|0; - HEAP32[$pItem1>>2] = $92; - while(1) { - $93 = HEAP32[$i>>2]|0; - $94 = HEAP32[$nOrderBy>>2]|0; - $95 = ($93|0)<($94|0); - if (!($95)) { - break; - } - $96 = HEAP32[$pItem1>>2]|0; - $97 = (($96) + 16|0); - $98 = HEAP16[$97>>1]|0; - $99 = $98&65535; - $100 = (($99) - 1)|0; - $101 = HEAP32[$i>>2]|0; - $102 = HEAP32[$aPermute>>2]|0; - $103 = (($102) + ($101<<2)|0); - HEAP32[$103>>2] = $100; - $104 = HEAP32[$i>>2]|0; - $105 = (($104) + 1)|0; - HEAP32[$i>>2] = $105; - $106 = HEAP32[$pItem1>>2]|0; - $107 = (($106) + 20|0); - HEAP32[$pItem1>>2] = $107; - } - $108 = HEAP32[$1>>2]|0; - $109 = HEAP32[$2>>2]|0; - $110 = (_multiSelectOrderByKeyInfo($108,$109,1)|0); - HEAP32[$pKeyMerge>>2] = $110; - } else { - HEAP32[$pKeyMerge>>2] = 0; - } - $111 = HEAP32[$pOrderBy>>2]|0; - $112 = HEAP32[$2>>2]|0; - $113 = (($112) + 48|0); - HEAP32[$113>>2] = $111; - $114 = HEAP32[$1>>2]|0; - $115 = HEAP32[$114>>2]|0; - $116 = HEAP32[$pOrderBy>>2]|0; - $117 = (_sqlite3ExprListDup($115,$116,0)|0); - $118 = HEAP32[$pPrior>>2]|0; - $119 = (($118) + 48|0); - HEAP32[$119>>2] = $117; - $120 = HEAP32[$op>>2]|0; - $121 = ($120|0)==(116); - L28: do { - if ($121) { - HEAP32[$regPrev>>2] = 0; - } else { - $122 = HEAP32[$2>>2]|0; - $123 = HEAP32[$122>>2]|0; - $124 = HEAP32[$123>>2]|0; - HEAP32[$nExpr>>2] = $124; - $125 = HEAP32[$1>>2]|0; - $126 = (($125) + 72|0); - $127 = HEAP32[$126>>2]|0; - $128 = (($127) + 1)|0; - HEAP32[$regPrev>>2] = $128; - $129 = HEAP32[$nExpr>>2]|0; - $130 = (($129) + 1)|0; - $131 = HEAP32[$1>>2]|0; - $132 = (($131) + 72|0); - $133 = HEAP32[$132>>2]|0; - $134 = (($133) + ($130))|0; - HEAP32[$132>>2] = $134; - $135 = HEAP32[$v>>2]|0; - $136 = HEAP32[$regPrev>>2]|0; - (_sqlite3VdbeAddOp2($135,25,0,$136)|0); - $137 = HEAP32[$db>>2]|0; - $138 = HEAP32[$nExpr>>2]|0; - $139 = (_sqlite3KeyInfoAlloc($137,$138,1)|0); - HEAP32[$pKeyDup>>2] = $139; - $140 = HEAP32[$pKeyDup>>2]|0; - $141 = ($140|0)!=(0|0); - if ($141) { - HEAP32[$i>>2] = 0; - while(1) { - $142 = HEAP32[$i>>2]|0; - $143 = HEAP32[$nExpr>>2]|0; - $144 = ($142|0)<($143|0); - if (!($144)) { - break L28; - } - $145 = HEAP32[$1>>2]|0; - $146 = HEAP32[$2>>2]|0; - $147 = HEAP32[$i>>2]|0; - $148 = (_multiSelectCollSeq($145,$146,$147)|0); - $149 = HEAP32[$i>>2]|0; - $150 = HEAP32[$pKeyDup>>2]|0; - $151 = (($150) + 20|0); - $152 = (($151) + ($149<<2)|0); - HEAP32[$152>>2] = $148; - $153 = HEAP32[$i>>2]|0; - $154 = HEAP32[$pKeyDup>>2]|0; - $155 = (($154) + 16|0); - $156 = HEAP32[$155>>2]|0; - $157 = (($156) + ($153)|0); - HEAP8[$157>>0] = 0; - $158 = HEAP32[$i>>2]|0; - $159 = (($158) + 1)|0; - HEAP32[$i>>2] = $159; - } - } - } - } while(0); - $160 = HEAP32[$2>>2]|0; - $161 = (($160) + 52|0); - HEAP32[$161>>2] = 0; - $162 = HEAP32[$pPrior>>2]|0; - $163 = (($162) + 56|0); - HEAP32[$163>>2] = 0; - $164 = HEAP32[$1>>2]|0; - $165 = HEAP32[$2>>2]|0; - $166 = HEAP32[$2>>2]|0; - $167 = (($166) + 48|0); - $168 = HEAP32[$167>>2]|0; - (_sqlite3ResolveOrderGroupBy($164,$165,$168,16384)|0); - $169 = HEAP32[$pPrior>>2]|0; - $170 = (($169) + 52|0); - $171 = HEAP32[$170>>2]|0; - $172 = ($171|0)==(0|0); - if ($172) { - $173 = HEAP32[$1>>2]|0; - $174 = HEAP32[$pPrior>>2]|0; - $175 = HEAP32[$pPrior>>2]|0; - $176 = (($175) + 48|0); - $177 = HEAP32[$176>>2]|0; - (_sqlite3ResolveOrderGroupBy($173,$174,$177,16384)|0); - } - $178 = HEAP32[$1>>2]|0; - $179 = HEAP32[$2>>2]|0; - $180 = HEAP32[$labelEnd>>2]|0; - _computeLimitRegisters($178,$179,$180); - $181 = HEAP32[$2>>2]|0; - $182 = (($181) + 8|0); - $183 = HEAP32[$182>>2]|0; - $184 = ($183|0)!=(0); - if ($184) { - $185 = HEAP32[$op>>2]|0; - $186 = ($185|0)==(116); - if ($186) { - $187 = HEAP32[$1>>2]|0; - $188 = (($187) + 72|0); - $189 = HEAP32[$188>>2]|0; - $190 = (($189) + 1)|0; - HEAP32[$188>>2] = $190; - HEAP32[$regLimitA>>2] = $190; - $191 = HEAP32[$1>>2]|0; - $192 = (($191) + 72|0); - $193 = HEAP32[$192>>2]|0; - $194 = (($193) + 1)|0; - HEAP32[$192>>2] = $194; - HEAP32[$regLimitB>>2] = $194; - $195 = HEAP32[$v>>2]|0; - $196 = HEAP32[$2>>2]|0; - $197 = (($196) + 12|0); - $198 = HEAP32[$197>>2]|0; - $199 = ($198|0)!=(0); - $200 = HEAP32[$2>>2]|0; - if ($199) { - $201 = (($200) + 12|0); - $202 = HEAP32[$201>>2]|0; - $203 = (($202) + 1)|0; - $207 = $203; - } else { - $204 = (($200) + 8|0); - $205 = HEAP32[$204>>2]|0; - $207 = $205; - } - $206 = HEAP32[$regLimitA>>2]|0; - (_sqlite3VdbeAddOp2($195,33,$207,$206)|0); - $208 = HEAP32[$v>>2]|0; - $209 = HEAP32[$regLimitA>>2]|0; - $210 = HEAP32[$regLimitB>>2]|0; - (_sqlite3VdbeAddOp2($208,33,$209,$210)|0); - } else { - label = 35; - } - } else { - label = 35; - } - if ((label|0) == 35) { - HEAP32[$regLimitB>>2] = 0; - HEAP32[$regLimitA>>2] = 0; - } - $211 = HEAP32[$db>>2]|0; - $212 = HEAP32[$2>>2]|0; - $213 = (($212) + 60|0); - $214 = HEAP32[$213>>2]|0; - _sqlite3ExprDelete($211,$214); - $215 = HEAP32[$2>>2]|0; - $216 = (($215) + 60|0); - HEAP32[$216>>2] = 0; - $217 = HEAP32[$db>>2]|0; - $218 = HEAP32[$2>>2]|0; - $219 = (($218) + 64|0); - $220 = HEAP32[$219>>2]|0; - _sqlite3ExprDelete($217,$220); - $221 = HEAP32[$2>>2]|0; - $222 = (($221) + 64|0); - HEAP32[$222>>2] = 0; - $223 = HEAP32[$1>>2]|0; - $224 = (($223) + 72|0); - $225 = HEAP32[$224>>2]|0; - $226 = (($225) + 1)|0; - HEAP32[$224>>2] = $226; - HEAP32[$regAddrA>>2] = $226; - $227 = HEAP32[$1>>2]|0; - $228 = (($227) + 72|0); - $229 = HEAP32[$228>>2]|0; - $230 = (($229) + 1)|0; - HEAP32[$228>>2] = $230; - HEAP32[$regAddrB>>2] = $230; - $231 = HEAP32[$1>>2]|0; - $232 = (($231) + 72|0); - $233 = HEAP32[$232>>2]|0; - $234 = (($233) + 1)|0; - HEAP32[$232>>2] = $234; - HEAP32[$regOutA>>2] = $234; - $235 = HEAP32[$1>>2]|0; - $236 = (($235) + 72|0); - $237 = HEAP32[$236>>2]|0; - $238 = (($237) + 1)|0; - HEAP32[$236>>2] = $238; - HEAP32[$regOutB>>2] = $238; - $239 = HEAP32[$regAddrA>>2]|0; - _sqlite3SelectDestInit($destA,13,$239); - $240 = HEAP32[$regAddrB>>2]|0; - _sqlite3SelectDestInit($destB,13,$240); - $241 = HEAP32[$v>>2]|0; - $242 = (_sqlite3VdbeCurrentAddr($241)|0); - $243 = (($242) + 1)|0; - HEAP32[$addrSelectA>>2] = $243; - $244 = HEAP32[$v>>2]|0; - $245 = HEAP32[$regAddrA>>2]|0; - $246 = HEAP32[$addrSelectA>>2]|0; - $247 = (_sqlite3VdbeAddOp3($244,20,$245,0,$246)|0); - HEAP32[$j1>>2] = $247; - $248 = HEAP32[$regLimitA>>2]|0; - $249 = HEAP32[$pPrior>>2]|0; - $250 = (($249) + 8|0); - HEAP32[$250>>2] = $248; - $251 = HEAP32[$1>>2]|0; - $252 = (($251) + 468|0); - $253 = HEAP32[$252>>2]|0; - HEAP32[$iSub1>>2] = $253; - $254 = HEAP32[$1>>2]|0; - $255 = HEAP32[$pPrior>>2]|0; - (_sqlite3Select($254,$255,$destA)|0); - $256 = HEAP32[$v>>2]|0; - $257 = HEAP32[$regAddrA>>2]|0; - (_sqlite3VdbeAddOp1($256,21,$257)|0); - $258 = HEAP32[$v>>2]|0; - $259 = HEAP32[$j1>>2]|0; - _sqlite3VdbeJumpHere($258,$259); - $260 = HEAP32[$v>>2]|0; - $261 = (_sqlite3VdbeCurrentAddr($260)|0); - $262 = (($261) + 1)|0; - HEAP32[$addrSelectB>>2] = $262; - $263 = HEAP32[$v>>2]|0; - $264 = HEAP32[$regAddrB>>2]|0; - $265 = HEAP32[$addrSelectB>>2]|0; - $266 = (_sqlite3VdbeAddOp3($263,20,$264,0,$265)|0); - HEAP32[$j1>>2] = $266; - $267 = HEAP32[$2>>2]|0; - $268 = (($267) + 8|0); - $269 = HEAP32[$268>>2]|0; - HEAP32[$savedLimit>>2] = $269; - $270 = HEAP32[$2>>2]|0; - $271 = (($270) + 12|0); - $272 = HEAP32[$271>>2]|0; - HEAP32[$savedOffset>>2] = $272; - $273 = HEAP32[$regLimitB>>2]|0; - $274 = HEAP32[$2>>2]|0; - $275 = (($274) + 8|0); - HEAP32[$275>>2] = $273; - $276 = HEAP32[$2>>2]|0; - $277 = (($276) + 12|0); - HEAP32[$277>>2] = 0; - $278 = HEAP32[$1>>2]|0; - $279 = (($278) + 468|0); - $280 = HEAP32[$279>>2]|0; - HEAP32[$iSub2>>2] = $280; - $281 = HEAP32[$1>>2]|0; - $282 = HEAP32[$2>>2]|0; - (_sqlite3Select($281,$282,$destB)|0); - $283 = HEAP32[$savedLimit>>2]|0; - $284 = HEAP32[$2>>2]|0; - $285 = (($284) + 8|0); - HEAP32[$285>>2] = $283; - $286 = HEAP32[$savedOffset>>2]|0; - $287 = HEAP32[$2>>2]|0; - $288 = (($287) + 12|0); - HEAP32[$288>>2] = $286; - $289 = HEAP32[$v>>2]|0; - $290 = HEAP32[$regAddrB>>2]|0; - (_sqlite3VdbeAddOp1($289,21,$290)|0); - $291 = HEAP32[$1>>2]|0; - $292 = HEAP32[$2>>2]|0; - $293 = HEAP32[$3>>2]|0; - $294 = HEAP32[$regOutA>>2]|0; - $295 = HEAP32[$regPrev>>2]|0; - $296 = HEAP32[$pKeyDup>>2]|0; - $297 = HEAP32[$labelEnd>>2]|0; - $298 = (_generateOutputSubroutine($291,$292,$destA,$293,$294,$295,$296,$297)|0); - HEAP32[$addrOutA>>2] = $298; - $299 = HEAP32[$op>>2]|0; - $300 = ($299|0)==(116); - $301 = HEAP32[$op>>2]|0; - $302 = ($301|0)==(115); - $or$cond = $300 | $302; - if ($or$cond) { - $303 = HEAP32[$1>>2]|0; - $304 = HEAP32[$2>>2]|0; - $305 = HEAP32[$3>>2]|0; - $306 = HEAP32[$regOutB>>2]|0; - $307 = HEAP32[$regPrev>>2]|0; - $308 = HEAP32[$pKeyDup>>2]|0; - $309 = HEAP32[$labelEnd>>2]|0; - $310 = (_generateOutputSubroutine($303,$304,$destB,$305,$306,$307,$308,$309)|0); - HEAP32[$addrOutB>>2] = $310; - } - $311 = HEAP32[$pKeyDup>>2]|0; - _sqlite3KeyInfoUnref($311); - $312 = HEAP32[$op>>2]|0; - $313 = ($312|0)==(117); - $314 = HEAP32[$op>>2]|0; - $315 = ($314|0)==(118); - $or$cond3 = $313 | $315; - if ($or$cond3) { - $316 = HEAP32[$labelEnd>>2]|0; - HEAP32[$addrEofA>>2] = $316; - HEAP32[$addrEofA_noB>>2] = $316; - } else { - $317 = HEAP32[$v>>2]|0; - $318 = HEAP32[$regOutB>>2]|0; - $319 = HEAP32[$addrOutB>>2]|0; - $320 = (_sqlite3VdbeAddOp2($317,17,$318,$319)|0); - HEAP32[$addrEofA>>2] = $320; - $321 = HEAP32[$v>>2]|0; - $322 = HEAP32[$regAddrB>>2]|0; - $323 = HEAP32[$labelEnd>>2]|0; - $324 = (_sqlite3VdbeAddOp2($321,22,$322,$323)|0); - HEAP32[$addrEofA_noB>>2] = $324; - $325 = HEAP32[$v>>2]|0; - $326 = HEAP32[$addrEofA>>2]|0; - (_sqlite3VdbeAddOp2($325,16,0,$326)|0); - $327 = HEAP32[$pPrior>>2]|0; - $328 = (($327) + 24|0); - $329 = $328; - $330 = $329; - $331 = HEAP32[$330>>2]|0; - $332 = (($329) + 4)|0; - $333 = $332; - $334 = HEAP32[$333>>2]|0; - $335 = HEAP32[$2>>2]|0; - $336 = (($335) + 24|0); - $337 = $336; - $338 = $337; - $339 = HEAP32[$338>>2]|0; - $340 = (($337) + 4)|0; - $341 = $340; - $342 = HEAP32[$341>>2]|0; - $343 = (_i64Add(($339|0),($342|0),($331|0),($334|0))|0); - $344 = tempRet0; - $345 = $336; - $346 = $345; - HEAP32[$346>>2] = $343; - $347 = (($345) + 4)|0; - $348 = $347; - HEAP32[$348>>2] = $344; - } - $349 = HEAP32[$op>>2]|0; - $350 = ($349|0)==(118); - if ($350) { - $351 = HEAP32[$addrEofA>>2]|0; - HEAP32[$addrEofB>>2] = $351; - $352 = HEAP32[$2>>2]|0; - $353 = (($352) + 24|0); - $354 = $353; - $355 = $354; - $356 = HEAP32[$355>>2]|0; - $357 = (($354) + 4)|0; - $358 = $357; - $359 = HEAP32[$358>>2]|0; - $360 = HEAP32[$pPrior>>2]|0; - $361 = (($360) + 24|0); - $362 = $361; - $363 = $362; - $364 = HEAP32[$363>>2]|0; - $365 = (($362) + 4)|0; - $366 = $365; - $367 = HEAP32[$366>>2]|0; - $368 = ($359>>>0)>($367>>>0); - $369 = ($359|0)==($367|0); - $370 = ($356>>>0)>($364>>>0); - $371 = $369 & $370; - $372 = $368 | $371; - if ($372) { - $373 = HEAP32[$pPrior>>2]|0; - $374 = (($373) + 24|0); - $375 = $374; - $376 = $375; - $377 = HEAP32[$376>>2]|0; - $378 = (($375) + 4)|0; - $379 = $378; - $380 = HEAP32[$379>>2]|0; - $381 = HEAP32[$2>>2]|0; - $382 = (($381) + 24|0); - $383 = $382; - $384 = $383; - HEAP32[$384>>2] = $377; - $385 = (($383) + 4)|0; - $386 = $385; - HEAP32[$386>>2] = $380; - } - } else { - $387 = HEAP32[$v>>2]|0; - $388 = HEAP32[$regOutA>>2]|0; - $389 = HEAP32[$addrOutA>>2]|0; - $390 = (_sqlite3VdbeAddOp2($387,17,$388,$389)|0); - HEAP32[$addrEofB>>2] = $390; - $391 = HEAP32[$v>>2]|0; - $392 = HEAP32[$regAddrA>>2]|0; - $393 = HEAP32[$labelEnd>>2]|0; - (_sqlite3VdbeAddOp2($391,22,$392,$393)|0); - $394 = HEAP32[$v>>2]|0; - $395 = HEAP32[$addrEofB>>2]|0; - (_sqlite3VdbeAddOp2($394,16,0,$395)|0); - } - $396 = HEAP32[$v>>2]|0; - $397 = HEAP32[$regOutA>>2]|0; - $398 = HEAP32[$addrOutA>>2]|0; - $399 = (_sqlite3VdbeAddOp2($396,17,$397,$398)|0); - HEAP32[$addrAltB>>2] = $399; - $400 = HEAP32[$v>>2]|0; - $401 = HEAP32[$regAddrA>>2]|0; - $402 = HEAP32[$addrEofA>>2]|0; - (_sqlite3VdbeAddOp2($400,22,$401,$402)|0); - $403 = HEAP32[$v>>2]|0; - $404 = HEAP32[$labelCmpr>>2]|0; - (_sqlite3VdbeAddOp2($403,16,0,$404)|0); - $405 = HEAP32[$op>>2]|0; - $406 = ($405|0)==(116); - do { - if ($406) { - $407 = HEAP32[$addrAltB>>2]|0; - HEAP32[$addrAeqB>>2] = $407; - } else { - $408 = HEAP32[$op>>2]|0; - $409 = ($408|0)==(118); - if ($409) { - $410 = HEAP32[$addrAltB>>2]|0; - HEAP32[$addrAeqB>>2] = $410; - $411 = HEAP32[$addrAltB>>2]|0; - $412 = (($411) + 1)|0; - HEAP32[$addrAltB>>2] = $412; - break; - } else { - $413 = HEAP32[$v>>2]|0; - $414 = HEAP32[$regAddrA>>2]|0; - $415 = HEAP32[$addrEofA>>2]|0; - $416 = (_sqlite3VdbeAddOp2($413,22,$414,$415)|0); - HEAP32[$addrAeqB>>2] = $416; - $417 = HEAP32[$v>>2]|0; - $418 = HEAP32[$labelCmpr>>2]|0; - (_sqlite3VdbeAddOp2($417,16,0,$418)|0); - break; - } - } - } while(0); - $419 = HEAP32[$v>>2]|0; - $420 = (_sqlite3VdbeCurrentAddr($419)|0); - HEAP32[$addrAgtB>>2] = $420; - $421 = HEAP32[$op>>2]|0; - $422 = ($421|0)==(116); - $423 = HEAP32[$op>>2]|0; - $424 = ($423|0)==(115); - $or$cond5 = $422 | $424; - if ($or$cond5) { - $425 = HEAP32[$v>>2]|0; - $426 = HEAP32[$regOutB>>2]|0; - $427 = HEAP32[$addrOutB>>2]|0; - (_sqlite3VdbeAddOp2($425,17,$426,$427)|0); - } - $428 = HEAP32[$v>>2]|0; - $429 = HEAP32[$regAddrB>>2]|0; - $430 = HEAP32[$addrEofB>>2]|0; - (_sqlite3VdbeAddOp2($428,22,$429,$430)|0); - $431 = HEAP32[$v>>2]|0; - $432 = HEAP32[$labelCmpr>>2]|0; - (_sqlite3VdbeAddOp2($431,16,0,$432)|0); - $433 = HEAP32[$v>>2]|0; - $434 = HEAP32[$j1>>2]|0; - _sqlite3VdbeJumpHere($433,$434); - $435 = HEAP32[$v>>2]|0; - $436 = HEAP32[$regAddrA>>2]|0; - $437 = HEAP32[$addrEofA_noB>>2]|0; - (_sqlite3VdbeAddOp2($435,22,$436,$437)|0); - $438 = HEAP32[$v>>2]|0; - $439 = HEAP32[$regAddrB>>2]|0; - $440 = HEAP32[$addrEofB>>2]|0; - (_sqlite3VdbeAddOp2($438,22,$439,$440)|0); - $441 = HEAP32[$v>>2]|0; - $442 = HEAP32[$labelCmpr>>2]|0; - _sqlite3VdbeResolveLabel($441,$442); - $443 = HEAP32[$v>>2]|0; - $444 = HEAP32[$aPermute>>2]|0; - (_sqlite3VdbeAddOp4($443,40,0,0,0,$444,-15)|0); - $445 = HEAP32[$v>>2]|0; - $446 = (($destA) + 8|0); - $447 = HEAP32[$446>>2]|0; - $448 = (($destB) + 8|0); - $449 = HEAP32[$448>>2]|0; - $450 = HEAP32[$nOrderBy>>2]|0; - $451 = HEAP32[$pKeyMerge>>2]|0; - (_sqlite3VdbeAddOp4($445,41,$447,$449,$450,$451,-6)|0); - $452 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($452,1); - $453 = HEAP32[$v>>2]|0; - $454 = HEAP32[$addrAltB>>2]|0; - $455 = HEAP32[$addrAeqB>>2]|0; - $456 = HEAP32[$addrAgtB>>2]|0; - (_sqlite3VdbeAddOp3($453,42,$454,$455,$456)|0); - $457 = HEAP32[$v>>2]|0; - $458 = HEAP32[$labelEnd>>2]|0; - _sqlite3VdbeResolveLabel($457,$458); - $459 = HEAP32[$3>>2]|0; - $460 = HEAP8[$459>>0]|0; - $461 = $460&255; - $462 = ($461|0)==(9); - if ($462) { - $463 = HEAP32[$pPrior>>2]|0; - HEAP32[$pFirst>>2] = $463; - while(1) { - $464 = HEAP32[$pFirst>>2]|0; - $465 = (($464) + 52|0); - $466 = HEAP32[$465>>2]|0; - $467 = ($466|0)!=(0|0); - if (!($467)) { - break; - } - $468 = HEAP32[$pFirst>>2]|0; - $469 = (($468) + 52|0); - $470 = HEAP32[$469>>2]|0; - HEAP32[$pFirst>>2] = $470; - } - $471 = HEAP32[$1>>2]|0; - $472 = HEAP32[$pFirst>>2]|0; - $473 = HEAP32[$472>>2]|0; - _generateColumnNames($471,0,$473); - } - $474 = HEAP32[$2>>2]|0; - $475 = (($474) + 52|0); - $476 = HEAP32[$475>>2]|0; - $477 = ($476|0)!=(0|0); - if ($477) { - $478 = HEAP32[$db>>2]|0; - $479 = HEAP32[$2>>2]|0; - $480 = (($479) + 52|0); - $481 = HEAP32[$480>>2]|0; - _sqlite3SelectDelete($478,$481); - } - $482 = HEAP32[$pPrior>>2]|0; - $483 = HEAP32[$2>>2]|0; - $484 = (($483) + 52|0); - HEAP32[$484>>2] = $482; - $485 = HEAP32[$2>>2]|0; - $486 = HEAP32[$pPrior>>2]|0; - $487 = (($486) + 56|0); - HEAP32[$487>>2] = $485; - $488 = HEAP32[$1>>2]|0; - $489 = HEAP32[$2>>2]|0; - $490 = (($489) + 4|0); - $491 = HEAP8[$490>>0]|0; - $492 = $491&255; - $493 = HEAP32[$iSub1>>2]|0; - $494 = HEAP32[$iSub2>>2]|0; - _explainComposite($488,$492,$493,$494,0); - HEAP32[$0>>2] = 0; - $495 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($495|0); -} -function _explainComposite($pParse,$op,$iSub1,$iSub2,$bUseTmp) { - $pParse = $pParse|0; - $op = $op|0; - $iSub1 = $iSub1|0; - $iSub2 = $iSub2|0; - $bUseTmp = $bUseTmp|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $v = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $zMsg = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $4 = sp + 24|0; - $v = sp + 20|0; - $zMsg = sp + 16|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $op; - HEAP32[$2>>2] = $iSub1; - HEAP32[$3>>2] = $iSub2; - HEAP32[$4>>2] = $bUseTmp; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 450|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = ($8|0)==(2); - if (!($9)) { - STACKTOP = sp;return; - } - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 8|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$v>>2] = $12; - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = HEAP32[$3>>2]|0; - $17 = HEAP32[$4>>2]|0; - $18 = ($17|0)!=(0); - $19 = $18 ? 25176 : 1472; - $20 = HEAP32[$1>>2]|0; - $21 = (_selectOpName($20)|0); - HEAP32[$vararg_buffer>>2] = $15; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $16; - $vararg_ptr2 = (($vararg_buffer) + 8|0); - HEAP32[$vararg_ptr2>>2] = $19; - $vararg_ptr3 = (($vararg_buffer) + 12|0); - HEAP32[$vararg_ptr3>>2] = $21; - $22 = (_sqlite3MPrintf($14,25136,$vararg_buffer)|0); - HEAP32[$zMsg>>2] = $22; - $23 = HEAP32[$v>>2]|0; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 464|0); - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$zMsg>>2]|0; - (_sqlite3VdbeAddOp4($23,157,$26,0,0,$27,-1)|0); - STACKTOP = sp;return; -} -function _multiSelectCollSeq($pParse,$p,$iCol) { - $pParse = $pParse|0; - $p = $p|0; - $iCol = $iCol|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pRet = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pRet = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $iCol; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 52|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0|0); - if ($6) { - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 52|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = (_multiSelectCollSeq($7,$10,$11)|0); - HEAP32[$pRet>>2] = $12; - } else { - HEAP32[$pRet>>2] = 0; - } - $13 = HEAP32[$pRet>>2]|0; - $14 = ($13|0)==(0|0); - if (!($14)) { - $29 = HEAP32[$pRet>>2]|0; - STACKTOP = sp;return ($29|0); - } - $15 = HEAP32[$2>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = ($15|0)<($18|0); - if (!($19)) { - $29 = HEAP32[$pRet>>2]|0; - STACKTOP = sp;return ($29|0); - } - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + 4|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + (($21*20)|0)|0); - $27 = HEAP32[$26>>2]|0; - $28 = (_sqlite3ExprCollSeq($20,$27)|0); - HEAP32[$pRet>>2] = $28; - $29 = HEAP32[$pRet>>2]|0; - STACKTOP = sp;return ($29|0); -} -function _multiSelectOrderByKeyInfo($pParse,$p,$nExtra) { - $pParse = $pParse|0; - $p = $p|0; - $nExtra = $nExtra|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $8 = 0, $9 = 0, $db = 0; - var $i = 0, $nOrderBy = 0, $pColl = 0, $pItem = 0, $pOrderBy = 0, $pRet = 0, $pTerm = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $pOrderBy = sp + 28|0; - $nOrderBy = sp + 24|0; - $db = sp + 20|0; - $pRet = sp + 16|0; - $i = sp + 12|0; - $pItem = sp + 8|0; - $pTerm = sp + 4|0; - $pColl = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $nExtra; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 48|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pOrderBy>>2] = $5; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 48|0); - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$8>>2]|0; - HEAP32[$nOrderBy>>2] = $9; - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$10>>2]|0; - HEAP32[$db>>2] = $11; - $12 = HEAP32[$db>>2]|0; - $13 = HEAP32[$nOrderBy>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = (($13) + ($14))|0; - $16 = (_sqlite3KeyInfoAlloc($12,$15,1)|0); - HEAP32[$pRet>>2] = $16; - $17 = HEAP32[$pRet>>2]|0; - $18 = ($17|0)!=(0|0); - if (!($18)) { - $78 = HEAP32[$pRet>>2]|0; - STACKTOP = sp;return ($78|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $19 = HEAP32[$i>>2]|0; - $20 = HEAP32[$nOrderBy>>2]|0; - $21 = ($19|0)<($20|0); - if (!($21)) { - break; - } - $22 = HEAP32[$i>>2]|0; - $23 = HEAP32[$pOrderBy>>2]|0; - $24 = (($23) + 4|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + (($22*20)|0)|0); - HEAP32[$pItem>>2] = $26; - $27 = HEAP32[$pItem>>2]|0; - $28 = HEAP32[$27>>2]|0; - HEAP32[$pTerm>>2] = $28; - $29 = HEAP32[$pTerm>>2]|0; - $30 = (($29) + 4|0); - $31 = HEAP32[$30>>2]|0; - $32 = $31 & 256; - $33 = ($32|0)!=(0); - $34 = HEAP32[$0>>2]|0; - if ($33) { - $35 = HEAP32[$pTerm>>2]|0; - $36 = (_sqlite3ExprCollSeq($34,$35)|0); - HEAP32[$pColl>>2] = $36; - } else { - $37 = HEAP32[$1>>2]|0; - $38 = HEAP32[$pItem>>2]|0; - $39 = (($38) + 16|0); - $40 = HEAP16[$39>>1]|0; - $41 = $40&65535; - $42 = (($41) - 1)|0; - $43 = (_multiSelectCollSeq($34,$37,$42)|0); - HEAP32[$pColl>>2] = $43; - $44 = HEAP32[$pColl>>2]|0; - $45 = ($44|0)==(0|0); - if ($45) { - $46 = HEAP32[$db>>2]|0; - $47 = (($46) + 8|0); - $48 = HEAP32[$47>>2]|0; - HEAP32[$pColl>>2] = $48; - } - $49 = HEAP32[$0>>2]|0; - $50 = HEAP32[$pTerm>>2]|0; - $51 = HEAP32[$pColl>>2]|0; - $52 = HEAP32[$51>>2]|0; - $53 = (_sqlite3ExprAddCollateString($49,$50,$52)|0); - $54 = HEAP32[$i>>2]|0; - $55 = HEAP32[$pOrderBy>>2]|0; - $56 = (($55) + 4|0); - $57 = HEAP32[$56>>2]|0; - $58 = (($57) + (($54*20)|0)|0); - HEAP32[$58>>2] = $53; - } - $59 = HEAP32[$pColl>>2]|0; - $60 = HEAP32[$i>>2]|0; - $61 = HEAP32[$pRet>>2]|0; - $62 = (($61) + 20|0); - $63 = (($62) + ($60<<2)|0); - HEAP32[$63>>2] = $59; - $64 = HEAP32[$i>>2]|0; - $65 = HEAP32[$pOrderBy>>2]|0; - $66 = (($65) + 4|0); - $67 = HEAP32[$66>>2]|0; - $68 = (($67) + (($64*20)|0)|0); - $69 = (($68) + 12|0); - $70 = HEAP8[$69>>0]|0; - $71 = HEAP32[$i>>2]|0; - $72 = HEAP32[$pRet>>2]|0; - $73 = (($72) + 16|0); - $74 = HEAP32[$73>>2]|0; - $75 = (($74) + ($71)|0); - HEAP8[$75>>0] = $70; - $76 = HEAP32[$i>>2]|0; - $77 = (($76) + 1)|0; - HEAP32[$i>>2] = $77; - } - $78 = HEAP32[$pRet>>2]|0; - STACKTOP = sp;return ($78|0); -} -function _generateOutputSubroutine($pParse,$p,$pIn,$pDest,$regReturn,$regPrev,$pKeyInfo,$iBreak) { - $pParse = $pParse|0; - $p = $p|0; - $pIn = $pIn|0; - $pDest = $pDest|0; - $regReturn = $regReturn|0; - $regPrev = $regPrev|0; - $pKeyInfo = $pKeyInfo|0; - $iBreak = $iBreak|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; - var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; - var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; - var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; - var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr = 0, $iContinue = 0, $j1 = 0, $j2 = 0, $r1 = 0, $r11 = 0, $r2 = 0, $v = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 64|0; - $1 = sp + 60|0; - $2 = sp + 56|0; - $3 = sp + 52|0; - $4 = sp + 48|0; - $5 = sp + 44|0; - $6 = sp + 40|0; - $7 = sp + 36|0; - $8 = sp + 32|0; - $v = sp + 28|0; - $iContinue = sp + 24|0; - $addr = sp + 20|0; - $j1 = sp + 16|0; - $j2 = sp + 12|0; - $r1 = sp + 8|0; - $r2 = sp + 4|0; - $r11 = sp; - HEAP32[$1>>2] = $pParse; - HEAP32[$2>>2] = $p; - HEAP32[$3>>2] = $pIn; - HEAP32[$4>>2] = $pDest; - HEAP32[$5>>2] = $regReturn; - HEAP32[$6>>2] = $regPrev; - HEAP32[$7>>2] = $pKeyInfo; - HEAP32[$8>>2] = $iBreak; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 8|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$v>>2] = $11; - $12 = HEAP32[$v>>2]|0; - $13 = (_sqlite3VdbeCurrentAddr($12)|0); - HEAP32[$addr>>2] = $13; - $14 = HEAP32[$v>>2]|0; - $15 = (_sqlite3VdbeMakeLabel($14)|0); - HEAP32[$iContinue>>2] = $15; - $16 = HEAP32[$6>>2]|0; - $17 = ($16|0)!=(0); - if ($17) { - $18 = HEAP32[$v>>2]|0; - $19 = HEAP32[$6>>2]|0; - $20 = (_sqlite3VdbeAddOp1($18,45,$19)|0); - HEAP32[$j1>>2] = $20; - $21 = HEAP32[$v>>2]|0; - $22 = HEAP32[$3>>2]|0; - $23 = (($22) + 8|0); - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$6>>2]|0; - $26 = (($25) + 1)|0; - $27 = HEAP32[$3>>2]|0; - $28 = (($27) + 12|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$7>>2]|0; - $31 = (_sqlite3KeyInfoRef($30)|0); - $32 = (_sqlite3VdbeAddOp4($21,41,$24,$26,$29,$31,-6)|0); - HEAP32[$j2>>2] = $32; - $33 = HEAP32[$v>>2]|0; - $34 = HEAP32[$j2>>2]|0; - $35 = (($34) + 2)|0; - $36 = HEAP32[$iContinue>>2]|0; - $37 = HEAP32[$j2>>2]|0; - $38 = (($37) + 2)|0; - (_sqlite3VdbeAddOp3($33,42,$35,$36,$38)|0); - $39 = HEAP32[$v>>2]|0; - $40 = HEAP32[$j1>>2]|0; - _sqlite3VdbeJumpHere($39,$40); - $41 = HEAP32[$v>>2]|0; - $42 = HEAP32[$3>>2]|0; - $43 = (($42) + 8|0); - $44 = HEAP32[$43>>2]|0; - $45 = HEAP32[$6>>2]|0; - $46 = (($45) + 1)|0; - $47 = HEAP32[$3>>2]|0; - $48 = (($47) + 12|0); - $49 = HEAP32[$48>>2]|0; - $50 = (($49) - 1)|0; - (_sqlite3VdbeAddOp3($41,33,$44,$46,$50)|0); - $51 = HEAP32[$v>>2]|0; - $52 = HEAP32[$6>>2]|0; - (_sqlite3VdbeAddOp2($51,25,1,$52)|0); - } - $53 = HEAP32[$1>>2]|0; - $54 = HEAP32[$53>>2]|0; - $55 = (($54) + 64|0); - $56 = HEAP8[$55>>0]|0; - $57 = ($56<<24>>24)!=(0); - if ($57) { - HEAP32[$0>>2] = 0; - $190 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($190|0); - } - $58 = HEAP32[$v>>2]|0; - $59 = HEAP32[$2>>2]|0; - $60 = (($59) + 12|0); - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$iContinue>>2]|0; - _codeOffset($58,$61,$62); - $63 = HEAP32[$4>>2]|0; - $64 = HEAP8[$63>>0]|0; - $65 = $64&255; - switch ($65|0) { - case 12: case 14: { - $66 = HEAP32[$1>>2]|0; - $67 = (_sqlite3GetTempReg($66)|0); - HEAP32[$r1>>2] = $67; - $68 = HEAP32[$1>>2]|0; - $69 = (_sqlite3GetTempReg($68)|0); - HEAP32[$r2>>2] = $69; - $70 = HEAP32[$v>>2]|0; - $71 = HEAP32[$3>>2]|0; - $72 = (($71) + 8|0); - $73 = HEAP32[$72>>2]|0; - $74 = HEAP32[$3>>2]|0; - $75 = (($74) + 12|0); - $76 = HEAP32[$75>>2]|0; - $77 = HEAP32[$r1>>2]|0; - (_sqlite3VdbeAddOp3($70,48,$73,$76,$77)|0); - $78 = HEAP32[$v>>2]|0; - $79 = HEAP32[$4>>2]|0; - $80 = (($79) + 4|0); - $81 = HEAP32[$80>>2]|0; - $82 = HEAP32[$r2>>2]|0; - (_sqlite3VdbeAddOp2($78,69,$81,$82)|0); - $83 = HEAP32[$v>>2]|0; - $84 = HEAP32[$4>>2]|0; - $85 = (($84) + 4|0); - $86 = HEAP32[$85>>2]|0; - $87 = HEAP32[$r1>>2]|0; - $88 = HEAP32[$r2>>2]|0; - (_sqlite3VdbeAddOp3($83,70,$86,$87,$88)|0); - $89 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($89,8); - $90 = HEAP32[$1>>2]|0; - $91 = HEAP32[$r2>>2]|0; - _sqlite3ReleaseTempReg($90,$91); - $92 = HEAP32[$1>>2]|0; - $93 = HEAP32[$r1>>2]|0; - _sqlite3ReleaseTempReg($92,$93); - break; - } - case 13: { - $132 = HEAP32[$4>>2]|0; - $133 = (($132) + 8|0); - $134 = HEAP32[$133>>2]|0; - $135 = ($134|0)==(0); - if ($135) { - $136 = HEAP32[$1>>2]|0; - $137 = HEAP32[$3>>2]|0; - $138 = (($137) + 12|0); - $139 = HEAP32[$138>>2]|0; - $140 = (_sqlite3GetTempRange($136,$139)|0); - $141 = HEAP32[$4>>2]|0; - $142 = (($141) + 8|0); - HEAP32[$142>>2] = $140; - $143 = HEAP32[$3>>2]|0; - $144 = (($143) + 12|0); - $145 = HEAP32[$144>>2]|0; - $146 = HEAP32[$4>>2]|0; - $147 = (($146) + 12|0); - HEAP32[$147>>2] = $145; - } - $148 = HEAP32[$1>>2]|0; - $149 = HEAP32[$3>>2]|0; - $150 = (($149) + 8|0); - $151 = HEAP32[$150>>2]|0; - $152 = HEAP32[$4>>2]|0; - $153 = (($152) + 8|0); - $154 = HEAP32[$153>>2]|0; - $155 = HEAP32[$4>>2]|0; - $156 = (($155) + 12|0); - $157 = HEAP32[$156>>2]|0; - _sqlite3ExprCodeMove($148,$151,$154,$157); - $158 = HEAP32[$v>>2]|0; - $159 = HEAP32[$4>>2]|0; - $160 = (($159) + 4|0); - $161 = HEAP32[$160>>2]|0; - (_sqlite3VdbeAddOp1($158,22,$161)|0); - break; - } - case 10: { - $125 = HEAP32[$1>>2]|0; - $126 = HEAP32[$3>>2]|0; - $127 = (($126) + 8|0); - $128 = HEAP32[$127>>2]|0; - $129 = HEAP32[$4>>2]|0; - $130 = (($129) + 4|0); - $131 = HEAP32[$130>>2]|0; - _sqlite3ExprCodeMove($125,$128,$131,1); - break; - } - case 11: { - $94 = HEAP32[$2>>2]|0; - $95 = HEAP32[$94>>2]|0; - $96 = (($95) + 4|0); - $97 = HEAP32[$96>>2]|0; - $98 = HEAP32[$97>>2]|0; - $99 = HEAP32[$4>>2]|0; - $100 = (($99) + 1|0); - $101 = HEAP8[$100>>0]|0; - $102 = (_sqlite3CompareAffinity($98,$101)|0); - $103 = HEAP32[$4>>2]|0; - $104 = (($103) + 1|0); - HEAP8[$104>>0] = $102; - $105 = HEAP32[$1>>2]|0; - $106 = (_sqlite3GetTempReg($105)|0); - HEAP32[$r11>>2] = $106; - $107 = HEAP32[$v>>2]|0; - $108 = HEAP32[$3>>2]|0; - $109 = (($108) + 8|0); - $110 = HEAP32[$109>>2]|0; - $111 = HEAP32[$r11>>2]|0; - $112 = HEAP32[$4>>2]|0; - $113 = (($112) + 1|0); - (_sqlite3VdbeAddOp4($107,48,$110,1,$111,$113,1)|0); - $114 = HEAP32[$1>>2]|0; - $115 = HEAP32[$3>>2]|0; - $116 = (($115) + 8|0); - $117 = HEAP32[$116>>2]|0; - _sqlite3ExprCacheAffinityChange($114,$117,1); - $118 = HEAP32[$v>>2]|0; - $119 = HEAP32[$4>>2]|0; - $120 = (($119) + 4|0); - $121 = HEAP32[$120>>2]|0; - $122 = HEAP32[$r11>>2]|0; - (_sqlite3VdbeAddOp2($118,107,$121,$122)|0); - $123 = HEAP32[$1>>2]|0; - $124 = HEAP32[$r11>>2]|0; - _sqlite3ReleaseTempReg($123,$124); - break; - } - default: { - $162 = HEAP32[$v>>2]|0; - $163 = HEAP32[$3>>2]|0; - $164 = (($163) + 8|0); - $165 = HEAP32[$164>>2]|0; - $166 = HEAP32[$3>>2]|0; - $167 = (($166) + 12|0); - $168 = HEAP32[$167>>2]|0; - (_sqlite3VdbeAddOp2($162,35,$165,$168)|0); - $169 = HEAP32[$1>>2]|0; - $170 = HEAP32[$3>>2]|0; - $171 = (($170) + 8|0); - $172 = HEAP32[$171>>2]|0; - $173 = HEAP32[$3>>2]|0; - $174 = (($173) + 12|0); - $175 = HEAP32[$174>>2]|0; - _sqlite3ExprCacheAffinityChange($169,$172,$175); - } - } - $176 = HEAP32[$2>>2]|0; - $177 = (($176) + 8|0); - $178 = HEAP32[$177>>2]|0; - $179 = ($178|0)!=(0); - if ($179) { - $180 = HEAP32[$v>>2]|0; - $181 = HEAP32[$2>>2]|0; - $182 = (($181) + 8|0); - $183 = HEAP32[$182>>2]|0; - $184 = HEAP32[$8>>2]|0; - (_sqlite3VdbeAddOp3($180,136,$183,$184,-1)|0); - } - $185 = HEAP32[$v>>2]|0; - $186 = HEAP32[$iContinue>>2]|0; - _sqlite3VdbeResolveLabel($185,$186); - $187 = HEAP32[$v>>2]|0; - $188 = HEAP32[$5>>2]|0; - (_sqlite3VdbeAddOp1($187,18,$188)|0); - $189 = HEAP32[$addr>>2]|0; - HEAP32[$0>>2] = $189; - $190 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($190|0); -} -function _substExprList($db,$pList,$iTable,$pEList) { - $db = $db|0; - $pList = $pList|0; - $iTable = $iTable|0; - $pEList = $pEList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pList; - HEAP32[$2>>2] = $iTable; - HEAP32[$3>>2] = $pEList; - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)==(0|0); - if ($5) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $6 = HEAP32[$i>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = ($6|0)<($8|0); - if (!($9)) { - break; - } - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$i>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + (($11*20)|0)|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = HEAP32[$3>>2]|0; - $19 = (_substExpr($10,$16,$17,$18)|0); - $20 = HEAP32[$i>>2]|0; - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 4|0); - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + (($20*20)|0)|0); - HEAP32[$24>>2] = $19; - $25 = HEAP32[$i>>2]|0; - $26 = (($25) + 1)|0; - HEAP32[$i>>2] = $26; - } - STACKTOP = sp;return; -} -function _substExpr($db,$pExpr,$iTable,$pEList) { - $db = $db|0; - $pExpr = $pExpr|0; - $iTable = $iTable|0; - $pEList = $pEList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $pNew = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $pNew = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pExpr; - HEAP32[$3>>2] = $iTable; - HEAP32[$4>>2] = $pEList; - $5 = HEAP32[$2>>2]|0; - $6 = ($5|0)==(0|0); - if ($6) { - HEAP32[$0>>2] = 0; - $69 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($69|0); - } - $7 = HEAP32[$2>>2]|0; - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - $10 = ($9|0)==(154); - do { - if ($10) { - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 28|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$3>>2]|0; - $15 = ($13|0)==($14|0); - if ($15) { - $16 = HEAP32[$2>>2]|0; - $17 = (($16) + 32|0); - $18 = HEAP16[$17>>1]|0; - $19 = $18 << 16 >> 16; - $20 = ($19|0)<(0); - if ($20) { - $21 = HEAP32[$2>>2]|0; - HEAP8[$21>>0] = 101; - break; - } else { - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$2>>2]|0; - $24 = (($23) + 32|0); - $25 = HEAP16[$24>>1]|0; - $26 = $25 << 16 >> 16; - $27 = HEAP32[$4>>2]|0; - $28 = (($27) + 4|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + (($26*20)|0)|0); - $31 = HEAP32[$30>>2]|0; - $32 = (_sqlite3ExprDup($22,$31,0)|0); - HEAP32[$pNew>>2] = $32; - $33 = HEAP32[$1>>2]|0; - $34 = HEAP32[$2>>2]|0; - _sqlite3ExprDelete($33,$34); - $35 = HEAP32[$pNew>>2]|0; - HEAP32[$2>>2] = $35; - break; - } - } else { - label = 8; - } - } else { - label = 8; - } - } while(0); - do { - if ((label|0) == 8) { - $36 = HEAP32[$1>>2]|0; - $37 = HEAP32[$2>>2]|0; - $38 = (($37) + 12|0); - $39 = HEAP32[$38>>2]|0; - $40 = HEAP32[$3>>2]|0; - $41 = HEAP32[$4>>2]|0; - $42 = (_substExpr($36,$39,$40,$41)|0); - $43 = HEAP32[$2>>2]|0; - $44 = (($43) + 12|0); - HEAP32[$44>>2] = $42; - $45 = HEAP32[$1>>2]|0; - $46 = HEAP32[$2>>2]|0; - $47 = (($46) + 16|0); - $48 = HEAP32[$47>>2]|0; - $49 = HEAP32[$3>>2]|0; - $50 = HEAP32[$4>>2]|0; - $51 = (_substExpr($45,$48,$49,$50)|0); - $52 = HEAP32[$2>>2]|0; - $53 = (($52) + 16|0); - HEAP32[$53>>2] = $51; - $54 = HEAP32[$2>>2]|0; - $55 = (($54) + 4|0); - $56 = HEAP32[$55>>2]|0; - $57 = $56 & 2048; - $58 = ($57|0)!=(0); - $59 = HEAP32[$1>>2]|0; - $60 = HEAP32[$2>>2]|0; - $61 = (($60) + 20|0); - if ($58) { - $62 = HEAP32[$61>>2]|0; - $63 = HEAP32[$3>>2]|0; - $64 = HEAP32[$4>>2]|0; - _substSelect($59,$62,$63,$64); - break; - } else { - $65 = HEAP32[$61>>2]|0; - $66 = HEAP32[$3>>2]|0; - $67 = HEAP32[$4>>2]|0; - _substExprList($59,$65,$66,$67); - break; - } - } - } while(0); - $68 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $68; - $69 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($69|0); -} -function _substSelect($db,$p,$iTable,$pEList) { - $db = $db|0; - $p = $p|0; - $iTable = $iTable|0; - $pEList = $pEList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pItem = 0, $pSrc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $pSrc = sp + 8|0; - $pItem = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $iTable; - HEAP32[$3>>2] = $pEList; - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - STACKTOP = sp;return; - } - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$2>>2]|0; - $10 = HEAP32[$3>>2]|0; - _substExprList($6,$8,$9,$10); - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 40|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = HEAP32[$3>>2]|0; - _substExprList($11,$14,$15,$16); - $17 = HEAP32[$0>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 48|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = HEAP32[$3>>2]|0; - _substExprList($17,$20,$21,$22); - $23 = HEAP32[$0>>2]|0; - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 44|0); - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$2>>2]|0; - $28 = HEAP32[$3>>2]|0; - $29 = (_substExpr($23,$26,$27,$28)|0); - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 44|0); - HEAP32[$31>>2] = $29; - $32 = HEAP32[$0>>2]|0; - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 36|0); - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$2>>2]|0; - $37 = HEAP32[$3>>2]|0; - $38 = (_substExpr($32,$35,$36,$37)|0); - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 36|0); - HEAP32[$40>>2] = $38; - $41 = HEAP32[$0>>2]|0; - $42 = HEAP32[$1>>2]|0; - $43 = (($42) + 52|0); - $44 = HEAP32[$43>>2]|0; - $45 = HEAP32[$2>>2]|0; - $46 = HEAP32[$3>>2]|0; - _substSelect($41,$44,$45,$46); - $47 = HEAP32[$1>>2]|0; - $48 = (($47) + 32|0); - $49 = HEAP32[$48>>2]|0; - HEAP32[$pSrc>>2] = $49; - $50 = HEAP32[$pSrc>>2]|0; - $51 = ($50|0)!=(0|0); - if (!($51)) { - STACKTOP = sp;return; - } - $52 = HEAP32[$pSrc>>2]|0; - $53 = HEAP32[$52>>2]|0; - HEAP32[$i>>2] = $53; - $54 = HEAP32[$pSrc>>2]|0; - $55 = (($54) + 8|0); - HEAP32[$pItem>>2] = $55; - while(1) { - $56 = HEAP32[$i>>2]|0; - $57 = ($56|0)>(0); - if (!($57)) { - break; - } - $58 = HEAP32[$0>>2]|0; - $59 = HEAP32[$pItem>>2]|0; - $60 = (($59) + 20|0); - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$2>>2]|0; - $63 = HEAP32[$3>>2]|0; - _substSelect($58,$61,$62,$63); - $64 = HEAP32[$i>>2]|0; - $65 = (($64) + -1)|0; - HEAP32[$i>>2] = $65; - $66 = HEAP32[$pItem>>2]|0; - $67 = (($66) + 72|0); - HEAP32[$pItem>>2] = $67; - } - STACKTOP = sp;return; -} -function _sqlite3FkDropTable($pParse,$pName,$pTab) { - $pParse = $pParse|0; - $pName = $pName|0; - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $db = 0, $iSkip = 0, $p = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $db = sp + 12|0; - $iSkip = sp + 8|0; - $v = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pName; - HEAP32[$2>>2] = $pTab; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - $5 = HEAP32[$db>>2]|0; - $6 = (($5) + 24|0); - $7 = HEAP32[$6>>2]|0; - $8 = $7 & 524288; - $9 = ($8|0)!=(0); - if (!($9)) { - STACKTOP = sp;return; - } - $10 = HEAP32[$2>>2]|0; - $11 = (($10) + 44|0); - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = $13 & 16; - $15 = ($14|0)!=(0); - if ($15) { - STACKTOP = sp;return; - } - $16 = HEAP32[$2>>2]|0; - $17 = (($16) + 12|0); - $18 = HEAP32[$17>>2]|0; - $19 = ($18|0)!=(0|0); - if ($19) { - STACKTOP = sp;return; - } - HEAP32[$iSkip>>2] = 0; - $20 = HEAP32[$0>>2]|0; - $21 = (_sqlite3GetVdbe($20)|0); - HEAP32[$v>>2] = $21; - $22 = HEAP32[$2>>2]|0; - $23 = (_sqlite3FkReferences($22)|0); - $24 = ($23|0)==(0|0); - do { - if ($24) { - $25 = HEAP32[$2>>2]|0; - $26 = (($25) + 16|0); - $27 = HEAP32[$26>>2]|0; - HEAP32[$p>>2] = $27; - while(1) { - $28 = HEAP32[$p>>2]|0; - $29 = ($28|0)!=(0|0); - if (!($29)) { - break; - } - $30 = HEAP32[$p>>2]|0; - $31 = (($30) + 24|0); - $32 = HEAP8[$31>>0]|0; - $33 = $32&255; - $34 = ($33|0)!=(0); - if ($34) { - break; - } - $35 = HEAP32[$db>>2]|0; - $36 = (($35) + 24|0); - $37 = HEAP32[$36>>2]|0; - $38 = $37 & 16777216; - $39 = ($38|0)!=(0); - if ($39) { - break; - } - $40 = HEAP32[$p>>2]|0; - $41 = (($40) + 4|0); - $42 = HEAP32[$41>>2]|0; - HEAP32[$p>>2] = $42; - } - $43 = HEAP32[$p>>2]|0; - $44 = ($43|0)!=(0|0); - if ($44) { - $45 = HEAP32[$v>>2]|0; - $46 = (_sqlite3VdbeMakeLabel($45)|0); - HEAP32[$iSkip>>2] = $46; - $47 = HEAP32[$v>>2]|0; - $48 = HEAP32[$iSkip>>2]|0; - (_sqlite3VdbeAddOp2($47,131,1,$48)|0); - break; - } else { - STACKTOP = sp;return; - } - } - } while(0); - $49 = HEAP32[$0>>2]|0; - $50 = (($49) + 438|0); - HEAP8[$50>>0] = 1; - $51 = HEAP32[$0>>2]|0; - $52 = HEAP32[$db>>2]|0; - $53 = HEAP32[$1>>2]|0; - $54 = (_sqlite3SrcListDup($52,$53,0)|0); - _sqlite3DeleteFrom($51,$54,0); - $55 = HEAP32[$0>>2]|0; - $56 = (($55) + 438|0); - HEAP8[$56>>0] = 0; - $57 = HEAP32[$db>>2]|0; - $58 = (($57) + 24|0); - $59 = HEAP32[$58>>2]|0; - $60 = $59 & 16777216; - $61 = ($60|0)==(0); - if ($61) { - $62 = HEAP32[$v>>2]|0; - $63 = HEAP32[$v>>2]|0; - $64 = (_sqlite3VdbeCurrentAddr($63)|0); - $65 = (($64) + 2)|0; - (_sqlite3VdbeAddOp2($62,131,0,$65)|0); - $66 = HEAP32[$0>>2]|0; - _sqlite3HaltConstraint($66,787,2,0,-2,4); - } - $67 = HEAP32[$iSkip>>2]|0; - $68 = ($67|0)!=(0); - if (!($68)) { - STACKTOP = sp;return; - } - $69 = HEAP32[$v>>2]|0; - $70 = HEAP32[$iSkip>>2]|0; - _sqlite3VdbeResolveLabel($69,$70); - STACKTOP = sp;return; -} -function _sqlite3CodeDropTable($pParse,$pTab,$iDb,$isView) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $iDb = $iDb|0; - $isView = $isView|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $8 = 0, $9 = 0, $db = 0; - var $pDb = 0, $pTrigger = 0, $v = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer2 = sp; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $v = sp + 24|0; - $db = sp + 20|0; - $pTrigger = sp + 16|0; - $pDb = sp + 12|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $iDb; - HEAP32[$3>>2] = $isView; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$db>>2]|0; - $8 = (($7) + 16|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + ($6<<4)|0); - HEAP32[$pDb>>2] = $10; - $11 = HEAP32[$0>>2]|0; - $12 = (_sqlite3GetVdbe($11)|0); - HEAP32[$v>>2] = $12; - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$2>>2]|0; - _sqlite3BeginWriteOperation($13,1,$14); - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 44|0); - $17 = HEAP8[$16>>0]|0; - $18 = $17&255; - $19 = $18 & 16; - $20 = ($19|0)!=(0); - if ($20) { - $21 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp0($21,141)|0); - } - $22 = HEAP32[$0>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (_sqlite3TriggerList($22,$23)|0); - HEAP32[$pTrigger>>2] = $24; - while(1) { - $25 = HEAP32[$pTrigger>>2]|0; - $26 = ($25|0)!=(0|0); - if (!($26)) { - break; - } - $27 = HEAP32[$0>>2]|0; - $28 = HEAP32[$pTrigger>>2]|0; - _sqlite3DropTriggerPtr($27,$28); - $29 = HEAP32[$pTrigger>>2]|0; - $30 = (($29) + 32|0); - $31 = HEAP32[$30>>2]|0; - HEAP32[$pTrigger>>2] = $31; - } - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 44|0); - $34 = HEAP8[$33>>0]|0; - $35 = $34&255; - $36 = $35 & 8; - $37 = ($36|0)!=(0); - if ($37) { - $38 = HEAP32[$0>>2]|0; - $39 = HEAP32[$pDb>>2]|0; - $40 = HEAP32[$39>>2]|0; - $41 = HEAP32[$1>>2]|0; - $42 = HEAP32[$41>>2]|0; - HEAP32[$vararg_buffer2>>2] = $40; - $vararg_ptr1 = (($vararg_buffer2) + 4|0); - HEAP32[$vararg_ptr1>>2] = $42; - _sqlite3NestedParse($38,25488,$vararg_buffer2); - } - $43 = HEAP32[$0>>2]|0; - $44 = HEAP32[$pDb>>2]|0; - $45 = HEAP32[$44>>2]|0; - $46 = HEAP32[$2>>2]|0; - $47 = ($46|0)==(1); - $48 = $47 ? 14808 : 14832; - $49 = HEAP32[$1>>2]|0; - $50 = HEAP32[$49>>2]|0; - HEAP32[$vararg_buffer2>>2] = $45; - $vararg_ptr5 = (($vararg_buffer2) + 4|0); - HEAP32[$vararg_ptr5>>2] = $48; - $vararg_ptr6 = (($vararg_buffer2) + 8|0); - HEAP32[$vararg_ptr6>>2] = $50; - _sqlite3NestedParse($43,25536,$vararg_buffer2); - $51 = HEAP32[$3>>2]|0; - $52 = ($51|0)!=(0); - if (!($52)) { - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + 44|0); - $55 = HEAP8[$54>>0]|0; - $56 = $55&255; - $57 = $56 & 16; - $58 = ($57|0)!=(0); - if (!($58)) { - $59 = HEAP32[$0>>2]|0; - $60 = HEAP32[$1>>2]|0; - _destroyTable($59,$60); - } - } - $61 = HEAP32[$1>>2]|0; - $62 = (($61) + 44|0); - $63 = HEAP8[$62>>0]|0; - $64 = $63&255; - $65 = $64 & 16; - $66 = ($65|0)!=(0); - if (!($66)) { - $71 = HEAP32[$v>>2]|0; - $72 = HEAP32[$2>>2]|0; - $73 = HEAP32[$1>>2]|0; - $74 = HEAP32[$73>>2]|0; - (_sqlite3VdbeAddOp4($71,121,$72,0,0,$74,0)|0); - $75 = HEAP32[$0>>2]|0; - $76 = HEAP32[$2>>2]|0; - _sqlite3ChangeCookie($75,$76); - $77 = HEAP32[$db>>2]|0; - $78 = HEAP32[$2>>2]|0; - _sqliteViewResetAll($77,$78); - STACKTOP = sp;return; - } - $67 = HEAP32[$v>>2]|0; - $68 = HEAP32[$2>>2]|0; - $69 = HEAP32[$1>>2]|0; - $70 = HEAP32[$69>>2]|0; - (_sqlite3VdbeAddOp4($67,148,$68,0,0,$70,0)|0); - $71 = HEAP32[$v>>2]|0; - $72 = HEAP32[$2>>2]|0; - $73 = HEAP32[$1>>2]|0; - $74 = HEAP32[$73>>2]|0; - (_sqlite3VdbeAddOp4($71,121,$72,0,0,$74,0)|0); - $75 = HEAP32[$0>>2]|0; - $76 = HEAP32[$2>>2]|0; - _sqlite3ChangeCookie($75,$76); - $77 = HEAP32[$db>>2]|0; - $78 = HEAP32[$2>>2]|0; - _sqliteViewResetAll($77,$78); - STACKTOP = sp;return; -} -function _destroyTable($pParse,$pTab) { - $pParse = $pParse|0; - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $iDb = 0, $iDestroyed = 0, $iIdx = 0, $iLargest = 0, $iTab = 0, $pIdx = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $iTab = sp + 20|0; - $iDestroyed = sp + 16|0; - $pIdx = sp + 12|0; - $iLargest = sp + 8|0; - $iIdx = sp + 4|0; - $iDb = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 32|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$iTab>>2] = $4; - HEAP32[$iDestroyed>>2] = 0; - while(1) { - HEAP32[$iLargest>>2] = 0; - $5 = HEAP32[$iDestroyed>>2]|0; - $6 = ($5|0)==(0); - if ($6) { - label = 4; - } else { - $7 = HEAP32[$iTab>>2]|0; - $8 = HEAP32[$iDestroyed>>2]|0; - $9 = ($7|0)<($8|0); - if ($9) { - label = 4; - } - } - if ((label|0) == 4) { - label = 0; - $10 = HEAP32[$iTab>>2]|0; - HEAP32[$iLargest>>2] = $10; - } - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 8|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pIdx>>2] = $13; - while(1) { - $14 = HEAP32[$pIdx>>2]|0; - $15 = ($14|0)!=(0|0); - if (!($15)) { - break; - } - $16 = HEAP32[$pIdx>>2]|0; - $17 = (($16) + 44|0); - $18 = HEAP32[$17>>2]|0; - HEAP32[$iIdx>>2] = $18; - $19 = HEAP32[$iDestroyed>>2]|0; - $20 = ($19|0)==(0); - if ($20) { - label = 9; - } else { - $21 = HEAP32[$iIdx>>2]|0; - $22 = HEAP32[$iDestroyed>>2]|0; - $23 = ($21|0)<($22|0); - if ($23) { - label = 9; - } - } - if ((label|0) == 9) { - label = 0; - $24 = HEAP32[$iIdx>>2]|0; - $25 = HEAP32[$iLargest>>2]|0; - $26 = ($24|0)>($25|0); - if ($26) { - $27 = HEAP32[$iIdx>>2]|0; - HEAP32[$iLargest>>2] = $27; - } - } - $28 = HEAP32[$pIdx>>2]|0; - $29 = (($28) + 20|0); - $30 = HEAP32[$29>>2]|0; - HEAP32[$pIdx>>2] = $30; - } - $31 = HEAP32[$iLargest>>2]|0; - $32 = ($31|0)==(0); - if ($32) { - break; - } - $33 = HEAP32[$0>>2]|0; - $34 = HEAP32[$33>>2]|0; - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 68|0); - $37 = HEAP32[$36>>2]|0; - $38 = (_sqlite3SchemaToIndex($34,$37)|0); - HEAP32[$iDb>>2] = $38; - $39 = HEAP32[$0>>2]|0; - $40 = HEAP32[$iLargest>>2]|0; - $41 = HEAP32[$iDb>>2]|0; - _destroyRootPage($39,$40,$41); - $42 = HEAP32[$iLargest>>2]|0; - HEAP32[$iDestroyed>>2] = $42; - } - STACKTOP = sp;return; -} -function _sqliteViewResetAll($db,$idx) { - $db = $db|0; - $idx = $idx|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $i = sp + 4|0; - $pTab = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $idx; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 16|0); - $5 = HEAP32[$4>>2]|0; - $6 = (($5) + ($2<<4)|0); - $7 = (($6) + 12|0); - $8 = HEAP32[$7>>2]|0; - $9 = (($8) + 78|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10&65535; - $12 = $11 & 2; - $13 = ($12|0)==(2); - if (!($13)) { - STACKTOP = sp;return; - } - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 16|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + ($14<<4)|0); - $19 = (($18) + 12|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($20) + 8|0); - $22 = (($21) + 8|0); - $23 = HEAP32[$22>>2]|0; - HEAP32[$i>>2] = $23; - while(1) { - $24 = HEAP32[$i>>2]|0; - $25 = ($24|0)!=(0|0); - if (!($25)) { - break; - } - $26 = HEAP32[$i>>2]|0; - $27 = (($26) + 8|0); - $28 = HEAP32[$27>>2]|0; - HEAP32[$pTab>>2] = $28; - $29 = HEAP32[$pTab>>2]|0; - $30 = (($29) + 12|0); - $31 = HEAP32[$30>>2]|0; - $32 = ($31|0)!=(0|0); - if ($32) { - $33 = HEAP32[$0>>2]|0; - $34 = HEAP32[$pTab>>2]|0; - _sqliteDeleteColumnNames($33,$34); - $35 = HEAP32[$pTab>>2]|0; - $36 = (($35) + 4|0); - HEAP32[$36>>2] = 0; - $37 = HEAP32[$pTab>>2]|0; - $38 = (($37) + 38|0); - HEAP16[$38>>1] = 0; - } - $39 = HEAP32[$i>>2]|0; - $40 = HEAP32[$39>>2]|0; - HEAP32[$i>>2] = $40; - } - $41 = HEAP32[$1>>2]|0; - $42 = HEAP32[$0>>2]|0; - $43 = (($42) + 16|0); - $44 = HEAP32[$43>>2]|0; - $45 = (($44) + ($41<<4)|0); - $46 = (($45) + 12|0); - $47 = HEAP32[$46>>2]|0; - $48 = (($47) + 78|0); - $49 = HEAP16[$48>>1]|0; - $50 = $49&65535; - $51 = $50 & -3; - $52 = $51&65535; - HEAP16[$48>>1] = $52; - STACKTOP = sp;return; -} -function _sqliteDeleteColumnNames($db,$pTable) { - $db = $db|0; - $pTable = $pTable|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pCol = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $i = sp + 4|0; - $pCol = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pTable; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pCol>>2] = $4; - $5 = ($4|0)!=(0|0); - if (!($5)) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $6 = HEAP32[$i>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 38|0); - $9 = HEAP16[$8>>1]|0; - $10 = $9 << 16 >> 16; - $11 = ($6|0)<($10|0); - $12 = HEAP32[$0>>2]|0; - if (!($11)) { - break; - } - $13 = HEAP32[$pCol>>2]|0; - $14 = HEAP32[$13>>2]|0; - _sqlite3DbFree($12,$14); - $15 = HEAP32[$0>>2]|0; - $16 = HEAP32[$pCol>>2]|0; - $17 = (($16) + 4|0); - $18 = HEAP32[$17>>2]|0; - _sqlite3ExprDelete($15,$18); - $19 = HEAP32[$0>>2]|0; - $20 = HEAP32[$pCol>>2]|0; - $21 = (($20) + 8|0); - $22 = HEAP32[$21>>2]|0; - _sqlite3DbFree($19,$22); - $23 = HEAP32[$0>>2]|0; - $24 = HEAP32[$pCol>>2]|0; - $25 = (($24) + 12|0); - $26 = HEAP32[$25>>2]|0; - _sqlite3DbFree($23,$26); - $27 = HEAP32[$0>>2]|0; - $28 = HEAP32[$pCol>>2]|0; - $29 = (($28) + 16|0); - $30 = HEAP32[$29>>2]|0; - _sqlite3DbFree($27,$30); - $31 = HEAP32[$i>>2]|0; - $32 = (($31) + 1)|0; - HEAP32[$i>>2] = $32; - $33 = HEAP32[$pCol>>2]|0; - $34 = (($33) + 24|0); - HEAP32[$pCol>>2] = $34; - } - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 4|0); - $37 = HEAP32[$36>>2]|0; - _sqlite3DbFree($12,$37); - STACKTOP = sp;return; -} -function _sqlite3ResolveSelfReference($pParse,$pTab,$type,$pExpr,$pList) { - $pParse = $pParse|0; - $pTab = $pTab|0; - $type = $type|0; - $pExpr = $pExpr|0; - $pList = $pList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $sNC = 0; - var $sSrc = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 144|0; - $0 = sp + 136|0; - $1 = sp + 132|0; - $2 = sp + 128|0; - $3 = sp + 124|0; - $4 = sp + 120|0; - $sSrc = sp; - $sNC = sp + 88|0; - $i = sp + 80|0; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - HEAP32[$2>>2] = $type; - HEAP32[$3>>2] = $pExpr; - HEAP32[$4>>2] = $pList; - ;HEAP32[$sNC+0>>2]=0|0;HEAP32[$sNC+4>>2]=0|0;HEAP32[$sNC+8>>2]=0|0;HEAP32[$sNC+12>>2]=0|0;HEAP32[$sNC+16>>2]=0|0;HEAP32[$sNC+20>>2]=0|0;HEAP32[$sNC+24>>2]=0|0;HEAP32[$sNC+28>>2]=0|0; - dest=$sSrc+0|0; stop=dest+80|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - HEAP32[$sSrc>>2] = 1; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = (($sSrc) + 8|0); - $8 = (($7) + 8|0); - HEAP32[$8>>2] = $6; - $9 = HEAP32[$1>>2]|0; - $10 = (($sSrc) + 8|0); - $11 = (($10) + 16|0); - HEAP32[$11>>2] = $9; - $12 = (($sSrc) + 8|0); - $13 = (($12) + 40|0); - HEAP32[$13>>2] = -1; - $14 = HEAP32[$0>>2]|0; - HEAP32[$sNC>>2] = $14; - $15 = (($sNC) + 4|0); - HEAP32[$15>>2] = $sSrc; - $16 = HEAP32[$2>>2]|0; - $17 = $16&255; - $18 = (($sNC) + 28|0); - HEAP8[$18>>0] = $17; - $19 = HEAP32[$3>>2]|0; - $20 = (_sqlite3ResolveExprNames($sNC,$19)|0); - $21 = ($20|0)!=(0); - if ($21) { - STACKTOP = sp;return; - } - $22 = HEAP32[$4>>2]|0; - $23 = ($22|0)!=(0|0); - if (!($23)) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $24 = HEAP32[$i>>2]|0; - $25 = HEAP32[$4>>2]|0; - $26 = HEAP32[$25>>2]|0; - $27 = ($24|0)<($26|0); - if (!($27)) { - label = 7; - break; - } - $28 = HEAP32[$i>>2]|0; - $29 = HEAP32[$4>>2]|0; - $30 = (($29) + 4|0); - $31 = HEAP32[$30>>2]|0; - $32 = (($31) + (($28*20)|0)|0); - $33 = HEAP32[$32>>2]|0; - $34 = (_sqlite3ResolveExprNames($sNC,$33)|0); - $35 = ($34|0)!=(0); - if ($35) { - label = 7; - break; - } - $36 = HEAP32[$i>>2]|0; - $37 = (($36) + 1)|0; - HEAP32[$i>>2] = $37; - } - if ((label|0) == 7) { - STACKTOP = sp;return; - } -} -function _hasColumn($aiCol,$nCol,$x) { - $aiCol = $aiCol|0; - $nCol = $nCol|0; - $x = $x|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$1>>2] = $aiCol; - HEAP32[$2>>2] = $nCol; - HEAP32[$3>>2] = $x; - while(1) { - $4 = HEAP32[$2>>2]|0; - $5 = (($4) + -1)|0; - HEAP32[$2>>2] = $5; - $6 = ($4|0)>(0); - if (!($6)) { - label = 5; - break; - } - $7 = HEAP32[$3>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 2|0); - HEAP32[$1>>2] = $9; - $10 = HEAP16[$8>>1]|0; - $11 = $10 << 16 >> 16; - $12 = ($7|0)==($11|0); - if ($12) { - label = 4; - break; - } - } - if ((label|0) == 4) { - HEAP32[$0>>2] = 1; - $13 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($13|0); - } - else if ((label|0) == 5) { - HEAP32[$0>>2] = 0; - $13 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($13|0); - } - return 0|0; -} -function _estimateIndexWidth($pIdx) { - $pIdx = $pIdx|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $aCol = 0, $i = 0, $wIndex = 0, $x = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 12|0; - $wIndex = sp + 8|0; - $i = sp + 4|0; - $aCol = sp; - $x = sp + 16|0; - HEAP32[$0>>2] = $pIdx; - HEAP32[$wIndex>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 12|0); - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 4|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$aCol>>2] = $5; - HEAP32[$i>>2] = 0; - while(1) { - $6 = HEAP32[$i>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 52|0); - $9 = HEAP16[$8>>1]|0; - $10 = $9&65535; - $11 = ($6|0)<($10|0); - if (!($11)) { - break; - } - $12 = HEAP32[$i>>2]|0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + ($12<<1)|0); - $17 = HEAP16[$16>>1]|0; - HEAP16[$x>>1] = $17; - $18 = HEAP16[$x>>1]|0; - $19 = $18 << 16 >> 16; - $20 = ($19|0)<(0); - if ($20) { - $35 = 1; - } else { - $21 = HEAP32[$i>>2]|0; - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 4|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + ($21<<1)|0); - $26 = HEAP16[$25>>1]|0; - $27 = $26 << 16 >> 16; - $28 = HEAP32[$aCol>>2]|0; - $29 = (($28) + (($27*24)|0)|0); - $30 = (($29) + 22|0); - $31 = HEAP8[$30>>0]|0; - $32 = $31&255; - $35 = $32; - } - $33 = HEAP32[$wIndex>>2]|0; - $34 = (($33) + ($35))|0; - HEAP32[$wIndex>>2] = $34; - $36 = HEAP32[$i>>2]|0; - $37 = (($36) + 1)|0; - HEAP32[$i>>2] = $37; - } - $38 = HEAP32[$wIndex>>2]|0; - $39 = $38<<2; - $40 = (_sqlite3LogEst($39,0)|0); - $41 = HEAP32[$0>>2]|0; - $42 = (($41) + 48|0); - HEAP16[$42>>1] = $40; - STACKTOP = sp;return; -} -function _freeIndex($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - _sqlite3DeleteIndexSamples($2,$3); - $4 = HEAP32[$0>>2]|0; - $5 = ($4|0)==(0|0); - if ($5) { - label = 3; - } else { - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 512|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)==(0|0); - if ($9) { - label = 3; - } - } - if ((label|0) == 3) { - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 40|0); - $12 = HEAP32[$11>>2]|0; - _sqlite3KeyInfoUnref($12); - } - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 36|0); - $16 = HEAP32[$15>>2]|0; - _sqlite3ExprDelete($13,$16); - $17 = HEAP32[$0>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 16|0); - $20 = HEAP32[$19>>2]|0; - _sqlite3DbFree($17,$20); - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 55|0); - $23 = HEAP8[$22>>0]|0; - $24 = ($23&255) >>> 4; - $25 = $24 & 1; - $26 = $25&255; - $27 = ($26|0)!=(0); - if (!($27)) { - $32 = HEAP32[$0>>2]|0; - $33 = HEAP32[$1>>2]|0; - _sqlite3DbFree($32,$33); - STACKTOP = sp;return; - } - $28 = HEAP32[$0>>2]|0; - $29 = HEAP32[$1>>2]|0; - $30 = (($29) + 32|0); - $31 = HEAP32[$30>>2]|0; - _sqlite3DbFree($28,$31); - $32 = HEAP32[$0>>2]|0; - $33 = HEAP32[$1>>2]|0; - _sqlite3DbFree($32,$33); - STACKTOP = sp;return; -} -function _sqlite3DeleteIndexSamples($db,$pIdx) { - $db = $db|0; - $pIdx = $pIdx|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pIdx; - STACKTOP = sp;return; -} -function _sqlite3ExprIsConstantOrFunction($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (_exprIsConst($1,2)|0); - STACKTOP = sp;return ($2|0); -} -function _convertToWithoutRowidTable($pParse,$pTab) { - $pParse = $pParse|0; - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; - var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; - var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; - var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; - var $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0, $j = 0, $n = 0, $nPk = 0, $pIdx = 0, $pList = 0, $pPk = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $pIdx = sp + 32|0; - $pPk = sp + 28|0; - $nPk = sp + 24|0; - $i = sp + 20|0; - $j = sp + 16|0; - $db = sp + 12|0; - $v = sp + 8|0; - $pList = sp + 4|0; - $n = sp; - HEAP32[$0>>2] = $pParse; - HEAP32[$1>>2] = $pTab; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 8|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$v>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 416|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)!=(0); - if ($10) { - $11 = HEAP32[$v>>2]|0; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 416|0); - $14 = HEAP32[$13>>2]|0; - $15 = (_sqlite3VdbeGetOp($11,$14)|0); - HEAP8[$15>>0] = 117; - } - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 420|0); - $18 = HEAP32[$17>>2]|0; - $19 = ($18|0)!=(0); - if ($19) { - $20 = HEAP32[$v>>2]|0; - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 420|0); - $23 = HEAP32[$22>>2]|0; - $24 = (_sqlite3VdbeGetOp($20,$23)|0); - HEAP8[$24>>0] = 16; - } - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 36|0); - $27 = HEAP16[$26>>1]|0; - $28 = $27 << 16 >> 16; - $29 = ($28|0)>=(0); - do { - if ($29) { - $30 = HEAP32[$0>>2]|0; - $31 = (_sqlite3ExprListAppend($30,0,0)|0); - HEAP32[$pList>>2] = $31; - $32 = HEAP32[$pList>>2]|0; - $33 = ($32|0)==(0|0); - if ($33) { - STACKTOP = sp;return; - } - $34 = HEAP32[$0>>2]|0; - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$1>>2]|0; - $37 = (($36) + 36|0); - $38 = HEAP16[$37>>1]|0; - $39 = $38 << 16 >> 16; - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 4|0); - $42 = HEAP32[$41>>2]|0; - $43 = (($42) + (($39*24)|0)|0); - $44 = HEAP32[$43>>2]|0; - $45 = (_sqlite3DbStrDup($35,$44)|0); - $46 = HEAP32[$pList>>2]|0; - $47 = (($46) + 4|0); - $48 = HEAP32[$47>>2]|0; - $49 = (($48) + 4|0); - HEAP32[$49>>2] = $45; - $50 = HEAP32[$0>>2]|0; - $51 = (($50) + 448|0); - $52 = HEAP8[$51>>0]|0; - $53 = HEAP32[$pList>>2]|0; - $54 = (($53) + 4|0); - $55 = HEAP32[$54>>2]|0; - $56 = (($55) + 12|0); - HEAP8[$56>>0] = $52; - $57 = HEAP32[$0>>2]|0; - $58 = HEAP32[$pList>>2]|0; - $59 = HEAP32[$1>>2]|0; - $60 = (($59) + 45|0); - $61 = HEAP8[$60>>0]|0; - $62 = $61&255; - $63 = (_sqlite3CreateIndex($57,0,0,0,$58,$62,0,0,0,0)|0); - HEAP32[$pPk>>2] = $63; - $64 = HEAP32[$pPk>>2]|0; - $65 = ($64|0)==(0|0); - if ($65) { - STACKTOP = sp;return; - } else { - $66 = HEAP32[$pPk>>2]|0; - $67 = (($66) + 55|0); - $68 = HEAP8[$67>>0]|0; - $69 = $68 & -4; - $70 = $69 | 2; - HEAP8[$67>>0] = $70; - $71 = HEAP32[$1>>2]|0; - $72 = (($71) + 36|0); - HEAP16[$72>>1] = -1; - break; - } - } else { - $73 = HEAP32[$1>>2]|0; - $74 = (_sqlite3PrimaryKeyIndex($73)|0); - HEAP32[$pPk>>2] = $74; - } - } while(0); - $75 = HEAP32[$pPk>>2]|0; - $76 = (($75) + 55|0); - $77 = HEAP8[$76>>0]|0; - $78 = $77 & -33; - $79 = $78 | 32; - HEAP8[$76>>0] = $79; - $80 = HEAP32[$pPk>>2]|0; - $81 = (($80) + 50|0); - $82 = HEAP16[$81>>1]|0; - $83 = $82&65535; - HEAP32[$nPk>>2] = $83; - HEAP32[$i>>2] = 0; - while(1) { - $84 = HEAP32[$i>>2]|0; - $85 = HEAP32[$nPk>>2]|0; - $86 = ($84|0)<($85|0); - if (!($86)) { - break; - } - $87 = HEAP32[$i>>2]|0; - $88 = HEAP32[$pPk>>2]|0; - $89 = (($88) + 4|0); - $90 = HEAP32[$89>>2]|0; - $91 = (($90) + ($87<<1)|0); - $92 = HEAP16[$91>>1]|0; - $93 = $92 << 16 >> 16; - $94 = HEAP32[$1>>2]|0; - $95 = (($94) + 4|0); - $96 = HEAP32[$95>>2]|0; - $97 = (($96) + (($93*24)|0)|0); - $98 = (($97) + 20|0); - HEAP8[$98>>0] = 1; - $99 = HEAP32[$i>>2]|0; - $100 = (($99) + 1)|0; - HEAP32[$i>>2] = $100; - } - $101 = HEAP32[$pPk>>2]|0; - $102 = (($101) + 55|0); - $103 = HEAP8[$102>>0]|0; - $104 = $103 & -9; - $105 = $104 | 8; - HEAP8[$102>>0] = $105; - $106 = HEAP32[$1>>2]|0; - $107 = (($106) + 32|0); - $108 = HEAP32[$107>>2]|0; - $109 = HEAP32[$pPk>>2]|0; - $110 = (($109) + 44|0); - HEAP32[$110>>2] = $108; - $111 = HEAP32[$1>>2]|0; - $112 = (($111) + 8|0); - $113 = HEAP32[$112>>2]|0; - HEAP32[$pIdx>>2] = $113; - L21: while(1) { - $114 = HEAP32[$pIdx>>2]|0; - $115 = ($114|0)!=(0|0); - if (!($115)) { - break; - } - $116 = HEAP32[$pIdx>>2]|0; - $117 = (($116) + 55|0); - $118 = HEAP8[$117>>0]|0; - $119 = $118 & 3; - $120 = $119&255; - $121 = ($120|0)==(2); - L24: do { - if (!($121)) { - HEAP32[$n>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $122 = HEAP32[$i>>2]|0; - $123 = HEAP32[$nPk>>2]|0; - $124 = ($122|0)<($123|0); - if (!($124)) { - break; - } - $125 = HEAP32[$pIdx>>2]|0; - $126 = (($125) + 4|0); - $127 = HEAP32[$126>>2]|0; - $128 = HEAP32[$pIdx>>2]|0; - $129 = (($128) + 50|0); - $130 = HEAP16[$129>>1]|0; - $131 = $130&65535; - $132 = HEAP32[$i>>2]|0; - $133 = HEAP32[$pPk>>2]|0; - $134 = (($133) + 4|0); - $135 = HEAP32[$134>>2]|0; - $136 = (($135) + ($132<<1)|0); - $137 = HEAP16[$136>>1]|0; - $138 = $137 << 16 >> 16; - $139 = (_hasColumn($127,$131,$138)|0); - $140 = ($139|0)!=(0); - if (!($140)) { - $141 = HEAP32[$n>>2]|0; - $142 = (($141) + 1)|0; - HEAP32[$n>>2] = $142; - } - $143 = HEAP32[$i>>2]|0; - $144 = (($143) + 1)|0; - HEAP32[$i>>2] = $144; - } - $145 = HEAP32[$n>>2]|0; - $146 = ($145|0)==(0); - if ($146) { - $147 = HEAP32[$pIdx>>2]|0; - $148 = (($147) + 50|0); - $149 = HEAP16[$148>>1]|0; - $150 = HEAP32[$pIdx>>2]|0; - $151 = (($150) + 52|0); - HEAP16[$151>>1] = $149; - break; - } - $152 = HEAP32[$db>>2]|0; - $153 = HEAP32[$pIdx>>2]|0; - $154 = HEAP32[$pIdx>>2]|0; - $155 = (($154) + 50|0); - $156 = HEAP16[$155>>1]|0; - $157 = $156&65535; - $158 = HEAP32[$n>>2]|0; - $159 = (($157) + ($158))|0; - $160 = (_resizeIndexObject($152,$153,$159)|0); - $161 = ($160|0)!=(0); - if ($161) { - label = 38; - break L21; - } - HEAP32[$i>>2] = 0; - $162 = HEAP32[$pIdx>>2]|0; - $163 = (($162) + 50|0); - $164 = HEAP16[$163>>1]|0; - $165 = $164&65535; - HEAP32[$j>>2] = $165; - while(1) { - $166 = HEAP32[$i>>2]|0; - $167 = HEAP32[$nPk>>2]|0; - $168 = ($166|0)<($167|0); - if (!($168)) { - break L24; - } - $169 = HEAP32[$pIdx>>2]|0; - $170 = (($169) + 4|0); - $171 = HEAP32[$170>>2]|0; - $172 = HEAP32[$pIdx>>2]|0; - $173 = (($172) + 50|0); - $174 = HEAP16[$173>>1]|0; - $175 = $174&65535; - $176 = HEAP32[$i>>2]|0; - $177 = HEAP32[$pPk>>2]|0; - $178 = (($177) + 4|0); - $179 = HEAP32[$178>>2]|0; - $180 = (($179) + ($176<<1)|0); - $181 = HEAP16[$180>>1]|0; - $182 = $181 << 16 >> 16; - $183 = (_hasColumn($171,$175,$182)|0); - $184 = ($183|0)!=(0); - if (!($184)) { - $185 = HEAP32[$i>>2]|0; - $186 = HEAP32[$pPk>>2]|0; - $187 = (($186) + 4|0); - $188 = HEAP32[$187>>2]|0; - $189 = (($188) + ($185<<1)|0); - $190 = HEAP16[$189>>1]|0; - $191 = HEAP32[$j>>2]|0; - $192 = HEAP32[$pIdx>>2]|0; - $193 = (($192) + 4|0); - $194 = HEAP32[$193>>2]|0; - $195 = (($194) + ($191<<1)|0); - HEAP16[$195>>1] = $190; - $196 = HEAP32[$i>>2]|0; - $197 = HEAP32[$pPk>>2]|0; - $198 = (($197) + 32|0); - $199 = HEAP32[$198>>2]|0; - $200 = (($199) + ($196<<2)|0); - $201 = HEAP32[$200>>2]|0; - $202 = HEAP32[$j>>2]|0; - $203 = HEAP32[$pIdx>>2]|0; - $204 = (($203) + 32|0); - $205 = HEAP32[$204>>2]|0; - $206 = (($205) + ($202<<2)|0); - HEAP32[$206>>2] = $201; - $207 = HEAP32[$j>>2]|0; - $208 = (($207) + 1)|0; - HEAP32[$j>>2] = $208; - } - $209 = HEAP32[$i>>2]|0; - $210 = (($209) + 1)|0; - HEAP32[$i>>2] = $210; - } - } - } while(0); - $211 = HEAP32[$pIdx>>2]|0; - $212 = (($211) + 20|0); - $213 = HEAP32[$212>>2]|0; - HEAP32[$pIdx>>2] = $213; - } - if ((label|0) == 38) { - STACKTOP = sp;return; - } - $214 = HEAP32[$nPk>>2]|0; - $215 = HEAP32[$1>>2]|0; - $216 = (($215) + 38|0); - $217 = HEAP16[$216>>1]|0; - $218 = $217 << 16 >> 16; - $219 = ($214|0)<($218|0); - if (!($219)) { - $258 = HEAP32[$1>>2]|0; - $259 = (($258) + 38|0); - $260 = HEAP16[$259>>1]|0; - $261 = HEAP32[$pPk>>2]|0; - $262 = (($261) + 52|0); - HEAP16[$262>>1] = $260; - STACKTOP = sp;return; - } - $220 = HEAP32[$db>>2]|0; - $221 = HEAP32[$pPk>>2]|0; - $222 = HEAP32[$1>>2]|0; - $223 = (($222) + 38|0); - $224 = HEAP16[$223>>1]|0; - $225 = $224 << 16 >> 16; - $226 = (_resizeIndexObject($220,$221,$225)|0); - $227 = ($226|0)!=(0); - if ($227) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - $228 = HEAP32[$nPk>>2]|0; - HEAP32[$j>>2] = $228; - while(1) { - $229 = HEAP32[$i>>2]|0; - $230 = HEAP32[$1>>2]|0; - $231 = (($230) + 38|0); - $232 = HEAP16[$231>>1]|0; - $233 = $232 << 16 >> 16; - $234 = ($229|0)<($233|0); - if (!($234)) { - break; - } - $235 = HEAP32[$pPk>>2]|0; - $236 = (($235) + 4|0); - $237 = HEAP32[$236>>2]|0; - $238 = HEAP32[$j>>2]|0; - $239 = HEAP32[$i>>2]|0; - $240 = (_hasColumn($237,$238,$239)|0); - $241 = ($240|0)!=(0); - if (!($241)) { - $242 = HEAP32[$i>>2]|0; - $243 = $242&65535; - $244 = HEAP32[$j>>2]|0; - $245 = HEAP32[$pPk>>2]|0; - $246 = (($245) + 4|0); - $247 = HEAP32[$246>>2]|0; - $248 = (($247) + ($244<<1)|0); - HEAP16[$248>>1] = $243; - $249 = HEAP32[$j>>2]|0; - $250 = HEAP32[$pPk>>2]|0; - $251 = (($250) + 32|0); - $252 = HEAP32[$251>>2]|0; - $253 = (($252) + ($249<<2)|0); - HEAP32[$253>>2] = 3320; - $254 = HEAP32[$j>>2]|0; - $255 = (($254) + 1)|0; - HEAP32[$j>>2] = $255; - } - $256 = HEAP32[$i>>2]|0; - $257 = (($256) + 1)|0; - HEAP32[$i>>2] = $257; - } - STACKTOP = sp;return; -} -function _estimateTableWidth($pTab) { - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pTabCol = 0, $wTable = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $wTable = sp + 8|0; - $pTabCol = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $pTab; - HEAP32[$wTable>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 38|0); - $3 = HEAP16[$2>>1]|0; - $4 = $3 << 16 >> 16; - HEAP32[$i>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 4|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pTabCol>>2] = $7; - while(1) { - $8 = HEAP32[$i>>2]|0; - $9 = ($8|0)>(0); - if (!($9)) { - break; - } - $10 = HEAP32[$pTabCol>>2]|0; - $11 = (($10) + 22|0); - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - $14 = HEAP32[$wTable>>2]|0; - $15 = (($14) + ($13))|0; - HEAP32[$wTable>>2] = $15; - $16 = HEAP32[$i>>2]|0; - $17 = (($16) + -1)|0; - HEAP32[$i>>2] = $17; - $18 = HEAP32[$pTabCol>>2]|0; - $19 = (($18) + 24|0); - HEAP32[$pTabCol>>2] = $19; - } - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 36|0); - $22 = HEAP16[$21>>1]|0; - $23 = $22 << 16 >> 16; - $24 = ($23|0)<(0); - if (!($24)) { - $27 = HEAP32[$wTable>>2]|0; - $28 = $27<<2; - $29 = (_sqlite3LogEst($28,0)|0); - $30 = HEAP32[$0>>2]|0; - $31 = (($30) + 42|0); - HEAP16[$31>>1] = $29; - STACKTOP = sp;return; - } - $25 = HEAP32[$wTable>>2]|0; - $26 = (($25) + 1)|0; - HEAP32[$wTable>>2] = $26; - $27 = HEAP32[$wTable>>2]|0; - $28 = $27<<2; - $29 = (_sqlite3LogEst($28,0)|0); - $30 = HEAP32[$0>>2]|0; - $31 = (($30) + 42|0); - HEAP16[$31>>1] = $29; - STACKTOP = sp;return; -} -function _createTableStmt($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; - var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; - var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; - var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; - var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; - var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $k = 0, $len = 0, $n = 0, $pCol = 0, $vararg_buffer3 = 0, $zEnd = 0, $zSep = 0, $zSep2 = 0, $zStmt = 0, $zType = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer3 = sp; - $0 = sp + 52|0; - $1 = sp + 48|0; - $2 = sp + 44|0; - $i = sp + 40|0; - $k = sp + 36|0; - $n = sp + 32|0; - $zStmt = sp + 28|0; - $zSep = sp + 24|0; - $zSep2 = sp + 20|0; - $zEnd = sp + 16|0; - $pCol = sp + 12|0; - $len = sp + 8|0; - $zType = sp + 4|0; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $p; - HEAP32[$n>>2] = 0; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 4|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pCol>>2] = $5; - HEAP32[$i>>2] = 0; - while(1) { - $6 = HEAP32[$i>>2]|0; - $7 = HEAP32[$2>>2]|0; - $8 = (($7) + 38|0); - $9 = HEAP16[$8>>1]|0; - $10 = $9 << 16 >> 16; - $11 = ($6|0)<($10|0); - if (!($11)) { - break; - } - $12 = HEAP32[$pCol>>2]|0; - $13 = HEAP32[$12>>2]|0; - $14 = (_identLength($13)|0); - $15 = (($14) + 5)|0; - $16 = HEAP32[$n>>2]|0; - $17 = (($16) + ($15))|0; - HEAP32[$n>>2] = $17; - $18 = HEAP32[$i>>2]|0; - $19 = (($18) + 1)|0; - HEAP32[$i>>2] = $19; - $20 = HEAP32[$pCol>>2]|0; - $21 = (($20) + 24|0); - HEAP32[$pCol>>2] = $21; - } - $22 = HEAP32[$2>>2]|0; - $23 = HEAP32[$22>>2]|0; - $24 = (_identLength($23)|0); - $25 = HEAP32[$n>>2]|0; - $26 = (($25) + ($24))|0; - HEAP32[$n>>2] = $26; - $27 = HEAP32[$n>>2]|0; - $28 = ($27|0)<(50); - if ($28) { - HEAP32[$zSep>>2] = 1472; - HEAP32[$zSep2>>2] = 9680; - HEAP32[$zEnd>>2] = 23816; - } else { - HEAP32[$zSep>>2] = 26760; - HEAP32[$zSep2>>2] = 26768; - HEAP32[$zEnd>>2] = 26776; - } - $29 = HEAP32[$2>>2]|0; - $30 = (($29) + 38|0); - $31 = HEAP16[$30>>1]|0; - $32 = $31 << 16 >> 16; - $33 = ($32*6)|0; - $34 = (35 + ($33))|0; - $35 = HEAP32[$n>>2]|0; - $36 = (($35) + ($34))|0; - HEAP32[$n>>2] = $36; - $37 = HEAP32[$n>>2]|0; - $38 = (_sqlite3DbMallocRaw(0,$37)|0); - HEAP32[$zStmt>>2] = $38; - $39 = HEAP32[$zStmt>>2]|0; - $40 = ($39|0)==(0|0); - if ($40) { - $41 = HEAP32[$1>>2]|0; - $42 = (($41) + 64|0); - HEAP8[$42>>0] = 1; - HEAP32[$0>>2] = 0; - $103 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($103|0); - } - $43 = HEAP32[$n>>2]|0; - $44 = HEAP32[$zStmt>>2]|0; - (_sqlite3_snprintf($43,$44,26784,$vararg_buffer3)|0); - $45 = HEAP32[$zStmt>>2]|0; - $46 = (_sqlite3Strlen30($45)|0); - HEAP32[$k>>2] = $46; - $47 = HEAP32[$zStmt>>2]|0; - $48 = HEAP32[$2>>2]|0; - $49 = HEAP32[$48>>2]|0; - _identPut($47,$k,$49); - $50 = HEAP32[$k>>2]|0; - $51 = (($50) + 1)|0; - HEAP32[$k>>2] = $51; - $52 = HEAP32[$zStmt>>2]|0; - $53 = (($52) + ($50)|0); - HEAP8[$53>>0] = 40; - $54 = HEAP32[$2>>2]|0; - $55 = (($54) + 4|0); - $56 = HEAP32[$55>>2]|0; - HEAP32[$pCol>>2] = $56; - HEAP32[$i>>2] = 0; - while(1) { - $57 = HEAP32[$i>>2]|0; - $58 = HEAP32[$2>>2]|0; - $59 = (($58) + 38|0); - $60 = HEAP16[$59>>1]|0; - $61 = $60 << 16 >> 16; - $62 = ($57|0)<($61|0); - $63 = HEAP32[$n>>2]|0; - $64 = HEAP32[$k>>2]|0; - $65 = (($63) - ($64))|0; - $66 = HEAP32[$k>>2]|0; - $67 = HEAP32[$zStmt>>2]|0; - $68 = (($67) + ($66)|0); - if (!($62)) { - break; - } - $69 = HEAP32[$zSep>>2]|0; - (_sqlite3_snprintf($65,$68,$69,$vararg_buffer3)|0); - $70 = HEAP32[$k>>2]|0; - $71 = HEAP32[$zStmt>>2]|0; - $72 = (($71) + ($70)|0); - $73 = (_sqlite3Strlen30($72)|0); - $74 = HEAP32[$k>>2]|0; - $75 = (($74) + ($73))|0; - HEAP32[$k>>2] = $75; - $76 = HEAP32[$zSep2>>2]|0; - HEAP32[$zSep>>2] = $76; - $77 = HEAP32[$zStmt>>2]|0; - $78 = HEAP32[$pCol>>2]|0; - $79 = HEAP32[$78>>2]|0; - _identPut($77,$k,$79); - $80 = HEAP32[$pCol>>2]|0; - $81 = (($80) + 21|0); - $82 = HEAP8[$81>>0]|0; - $83 = $82 << 24 >> 24; - $84 = (($83) - 97)|0; - $85 = (26800 + ($84<<2)|0); - $86 = HEAP32[$85>>2]|0; - HEAP32[$zType>>2] = $86; - $87 = HEAP32[$zType>>2]|0; - $88 = (_sqlite3Strlen30($87)|0); - HEAP32[$len>>2] = $88; - $89 = HEAP32[$k>>2]|0; - $90 = HEAP32[$zStmt>>2]|0; - $91 = (($90) + ($89)|0); - $92 = HEAP32[$zType>>2]|0; - $93 = HEAP32[$len>>2]|0; - _memcpy(($91|0),($92|0),($93|0))|0; - $94 = HEAP32[$len>>2]|0; - $95 = HEAP32[$k>>2]|0; - $96 = (($95) + ($94))|0; - HEAP32[$k>>2] = $96; - $97 = HEAP32[$i>>2]|0; - $98 = (($97) + 1)|0; - HEAP32[$i>>2] = $98; - $99 = HEAP32[$pCol>>2]|0; - $100 = (($99) + 24|0); - HEAP32[$pCol>>2] = $100; - } - $101 = HEAP32[$zEnd>>2]|0; - HEAP32[$vararg_buffer3>>2] = $101; - (_sqlite3_snprintf($65,$68,1456,$vararg_buffer3)|0); - $102 = HEAP32[$zStmt>>2]|0; - HEAP32[$0>>2] = $102; - $103 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($103|0); -} -function _identLength($z) { - $z = $z|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $n = sp; - HEAP32[$0>>2] = $z; - HEAP32[$n>>2] = 0; - while(1) { - $1 = HEAP32[$0>>2]|0; - $2 = HEAP8[$1>>0]|0; - $3 = ($2<<24>>24)!=(0); - if (!($3)) { - break; - } - $4 = HEAP32[$0>>2]|0; - $5 = HEAP8[$4>>0]|0; - $6 = $5 << 24 >> 24; - $7 = ($6|0)==(34); - if ($7) { - $8 = HEAP32[$n>>2]|0; - $9 = (($8) + 1)|0; - HEAP32[$n>>2] = $9; - } - $10 = HEAP32[$n>>2]|0; - $11 = (($10) + 1)|0; - HEAP32[$n>>2] = $11; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 1|0); - HEAP32[$0>>2] = $13; - } - $14 = HEAP32[$n>>2]|0; - $15 = (($14) + 2)|0; - STACKTOP = sp;return ($15|0); -} -function _identPut($z,$pIdx,$zSignedIdent) { - $z = $z|0; - $pIdx = $pIdx|0; - $zSignedIdent = $zSignedIdent|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $i = 0, $j = 0, $needQuote = 0, $zIdent = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $zIdent = sp + 12|0; - $i = sp + 8|0; - $j = sp + 4|0; - $needQuote = sp; - HEAP32[$0>>2] = $z; - HEAP32[$1>>2] = $pIdx; - HEAP32[$2>>2] = $zSignedIdent; - $3 = HEAP32[$2>>2]|0; - HEAP32[$zIdent>>2] = $3; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$i>>2] = $5; - HEAP32[$j>>2] = 0; - while(1) { - $6 = HEAP32[$j>>2]|0; - $7 = HEAP32[$zIdent>>2]|0; - $8 = (($7) + ($6)|0); - $9 = HEAP8[$8>>0]|0; - $10 = ($9<<24>>24)!=(0); - if (!($10)) { - break; - } - $11 = HEAP32[$j>>2]|0; - $12 = HEAP32[$zIdent>>2]|0; - $13 = (($12) + ($11)|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14&255; - $16 = (48 + ($15)|0); - $17 = HEAP8[$16>>0]|0; - $18 = $17&255; - $19 = $18 & 6; - $20 = ($19|0)!=(0); - if (!($20)) { - $21 = HEAP32[$j>>2]|0; - $22 = HEAP32[$zIdent>>2]|0; - $23 = (($22) + ($21)|0); - $24 = HEAP8[$23>>0]|0; - $25 = $24&255; - $26 = ($25|0)!=(95); - if ($26) { - break; - } - } - $27 = HEAP32[$j>>2]|0; - $28 = (($27) + 1)|0; - HEAP32[$j>>2] = $28; - } - $29 = HEAP32[$zIdent>>2]|0; - $30 = HEAP8[$29>>0]|0; - $31 = $30&255; - $32 = (48 + ($31)|0); - $33 = HEAP8[$32>>0]|0; - $34 = $33&255; - $35 = $34 & 4; - $36 = ($35|0)!=(0); - if ($36) { - $50 = 1; - } else { - $37 = HEAP32[$zIdent>>2]|0; - $38 = HEAP32[$j>>2]|0; - $39 = (_sqlite3KeywordCode($37,$38)|0); - $40 = ($39|0)!=(27); - if ($40) { - $50 = 1; - } else { - $41 = HEAP32[$j>>2]|0; - $42 = HEAP32[$zIdent>>2]|0; - $43 = (($42) + ($41)|0); - $44 = HEAP8[$43>>0]|0; - $45 = $44&255; - $46 = ($45|0)!=(0); - if ($46) { - $50 = 1; - } else { - $47 = HEAP32[$j>>2]|0; - $48 = ($47|0)==(0); - $50 = $48; - } - } - } - $49 = $50&1; - HEAP32[$needQuote>>2] = $49; - $51 = HEAP32[$needQuote>>2]|0; - $52 = ($51|0)!=(0); - if ($52) { - $53 = HEAP32[$i>>2]|0; - $54 = (($53) + 1)|0; - HEAP32[$i>>2] = $54; - $55 = HEAP32[$0>>2]|0; - $56 = (($55) + ($53)|0); - HEAP8[$56>>0] = 34; - } - HEAP32[$j>>2] = 0; - while(1) { - $57 = HEAP32[$j>>2]|0; - $58 = HEAP32[$zIdent>>2]|0; - $59 = (($58) + ($57)|0); - $60 = HEAP8[$59>>0]|0; - $61 = ($60<<24>>24)!=(0); - if (!($61)) { - break; - } - $62 = HEAP32[$j>>2]|0; - $63 = HEAP32[$zIdent>>2]|0; - $64 = (($63) + ($62)|0); - $65 = HEAP8[$64>>0]|0; - $66 = HEAP32[$i>>2]|0; - $67 = (($66) + 1)|0; - HEAP32[$i>>2] = $67; - $68 = HEAP32[$0>>2]|0; - $69 = (($68) + ($66)|0); - HEAP8[$69>>0] = $65; - $70 = HEAP32[$j>>2]|0; - $71 = HEAP32[$zIdent>>2]|0; - $72 = (($71) + ($70)|0); - $73 = HEAP8[$72>>0]|0; - $74 = $73&255; - $75 = ($74|0)==(34); - if ($75) { - $76 = HEAP32[$i>>2]|0; - $77 = (($76) + 1)|0; - HEAP32[$i>>2] = $77; - $78 = HEAP32[$0>>2]|0; - $79 = (($78) + ($76)|0); - HEAP8[$79>>0] = 34; - } - $80 = HEAP32[$j>>2]|0; - $81 = (($80) + 1)|0; - HEAP32[$j>>2] = $81; - } - $82 = HEAP32[$needQuote>>2]|0; - $83 = ($82|0)!=(0); - if (!($83)) { - $88 = HEAP32[$i>>2]|0; - $89 = HEAP32[$0>>2]|0; - $90 = (($89) + ($88)|0); - HEAP8[$90>>0] = 0; - $91 = HEAP32[$i>>2]|0; - $92 = HEAP32[$1>>2]|0; - HEAP32[$92>>2] = $91; - STACKTOP = sp;return; - } - $84 = HEAP32[$i>>2]|0; - $85 = (($84) + 1)|0; - HEAP32[$i>>2] = $85; - $86 = HEAP32[$0>>2]|0; - $87 = (($86) + ($84)|0); - HEAP8[$87>>0] = 34; - $88 = HEAP32[$i>>2]|0; - $89 = HEAP32[$0>>2]|0; - $90 = (($89) + ($88)|0); - HEAP8[$90>>0] = 0; - $91 = HEAP32[$i>>2]|0; - $92 = HEAP32[$1>>2]|0; - HEAP32[$92>>2] = $91; - STACKTOP = sp;return; -} -function _resizeIndexObject($db,$pIdx,$N) { - $db = $db|0; - $pIdx = $pIdx|0; - $N = $N|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $nByte = 0, $zExtra = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $zExtra = sp + 4|0; - $nByte = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pIdx; - HEAP32[$3>>2] = $N; - $4 = HEAP32[$2>>2]|0; - $5 = (($4) + 52|0); - $6 = HEAP16[$5>>1]|0; - $7 = $6&65535; - $8 = HEAP32[$3>>2]|0; - $9 = ($7|0)>=($8|0); - if ($9) { - HEAP32[$0>>2] = 0; - $69 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($69|0); - } - $10 = HEAP32[$3>>2]|0; - $11 = ($10*7)|0; - HEAP32[$nByte>>2] = $11; - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$nByte>>2]|0; - $14 = (_sqlite3DbMallocZero($12,$13)|0); - HEAP32[$zExtra>>2] = $14; - $15 = HEAP32[$zExtra>>2]|0; - $16 = ($15|0)==(0|0); - if ($16) { - HEAP32[$0>>2] = 7; - $69 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($69|0); - } else { - $17 = HEAP32[$zExtra>>2]|0; - $18 = HEAP32[$2>>2]|0; - $19 = (($18) + 32|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = (($21) + 52|0); - $23 = HEAP16[$22>>1]|0; - $24 = $23&65535; - $25 = $24<<2; - _memcpy(($17|0),($20|0),($25|0))|0; - $26 = HEAP32[$zExtra>>2]|0; - $27 = HEAP32[$2>>2]|0; - $28 = (($27) + 32|0); - HEAP32[$28>>2] = $26; - $29 = HEAP32[$3>>2]|0; - $30 = $29<<2; - $31 = HEAP32[$zExtra>>2]|0; - $32 = (($31) + ($30)|0); - HEAP32[$zExtra>>2] = $32; - $33 = HEAP32[$zExtra>>2]|0; - $34 = HEAP32[$2>>2]|0; - $35 = (($34) + 4|0); - $36 = HEAP32[$35>>2]|0; - $37 = HEAP32[$2>>2]|0; - $38 = (($37) + 52|0); - $39 = HEAP16[$38>>1]|0; - $40 = $39&65535; - $41 = $40<<1; - _memcpy(($33|0),($36|0),($41|0))|0; - $42 = HEAP32[$zExtra>>2]|0; - $43 = HEAP32[$2>>2]|0; - $44 = (($43) + 4|0); - HEAP32[$44>>2] = $42; - $45 = HEAP32[$3>>2]|0; - $46 = $45<<1; - $47 = HEAP32[$zExtra>>2]|0; - $48 = (($47) + ($46)|0); - HEAP32[$zExtra>>2] = $48; - $49 = HEAP32[$zExtra>>2]|0; - $50 = HEAP32[$2>>2]|0; - $51 = (($50) + 28|0); - $52 = HEAP32[$51>>2]|0; - $53 = HEAP32[$2>>2]|0; - $54 = (($53) + 52|0); - $55 = HEAP16[$54>>1]|0; - $56 = $55&65535; - _memcpy(($49|0),($52|0),($56|0))|0; - $57 = HEAP32[$zExtra>>2]|0; - $58 = HEAP32[$2>>2]|0; - $59 = (($58) + 28|0); - HEAP32[$59>>2] = $57; - $60 = HEAP32[$3>>2]|0; - $61 = $60&65535; - $62 = HEAP32[$2>>2]|0; - $63 = (($62) + 52|0); - HEAP16[$63>>1] = $61; - $64 = HEAP32[$2>>2]|0; - $65 = (($64) + 55|0); - $66 = HEAP8[$65>>0]|0; - $67 = $66 & -17; - $68 = $67 | 16; - HEAP8[$65>>0] = $68; - HEAP32[$0>>2] = 0; - $69 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($69|0); - } - return 0|0; -} -function _codeTableLocks($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, $p1 = 0, $pVdbe = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $i = sp + 12|0; - $pVdbe = sp + 8|0; - $p = sp + 4|0; - $p1 = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3GetVdbe($1)|0); - HEAP32[$pVdbe>>2] = $2; - HEAP32[$i>>2] = 0; - while(1) { - $3 = HEAP32[$i>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 396|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($3|0)<($6|0); - if (!($7)) { - break; - } - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 400|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + ($8<<4)|0); - HEAP32[$p>>2] = $12; - $13 = HEAP32[$p>>2]|0; - $14 = HEAP32[$13>>2]|0; - HEAP32[$p1>>2] = $14; - $15 = HEAP32[$pVdbe>>2]|0; - $16 = HEAP32[$p1>>2]|0; - $17 = HEAP32[$p>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$p>>2]|0; - $21 = (($20) + 8|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = HEAP32[$p>>2]|0; - $25 = (($24) + 12|0); - $26 = HEAP32[$25>>2]|0; - (_sqlite3VdbeAddOp4($15,140,$16,$19,$23,$26,-2)|0); - $27 = HEAP32[$i>>2]|0; - $28 = (($27) + 1)|0; - HEAP32[$i>>2] = $28; - } - STACKTOP = sp;return; -} -function _sqlite3AutoincrementBegin($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $addr = 0, $db = 0, $memId = 0, $p = 0, $pDb = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $p = sp + 20|0; - $db = sp + 16|0; - $pDb = sp + 12|0; - $memId = sp + 8|0; - $addr = sp + 4|0; - $v = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$db>>2] = $2; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 8|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$v>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 404|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$p>>2] = $8; - while(1) { - $9 = HEAP32[$p>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - break; - } - $11 = HEAP32[$p>>2]|0; - $12 = (($11) + 8|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$db>>2]|0; - $15 = (($14) + 16|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + ($13<<4)|0); - HEAP32[$pDb>>2] = $17; - $18 = HEAP32[$p>>2]|0; - $19 = (($18) + 12|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$memId>>2] = $20; - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$p>>2]|0; - $23 = (($22) + 8|0); - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$pDb>>2]|0; - $26 = (($25) + 12|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + 72|0); - $29 = HEAP32[$28>>2]|0; - _sqlite3OpenTable($21,0,$24,$29,52); - $30 = HEAP32[$v>>2]|0; - $31 = HEAP32[$memId>>2]|0; - $32 = HEAP32[$memId>>2]|0; - $33 = (($32) + 1)|0; - (_sqlite3VdbeAddOp3($30,28,0,$31,$33)|0); - $34 = HEAP32[$v>>2]|0; - $35 = (_sqlite3VdbeCurrentAddr($34)|0); - HEAP32[$addr>>2] = $35; - $36 = HEAP32[$v>>2]|0; - $37 = HEAP32[$memId>>2]|0; - $38 = (($37) - 1)|0; - $39 = HEAP32[$p>>2]|0; - $40 = (($39) + 4|0); - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$41>>2]|0; - (_sqlite3VdbeAddOp4($36,97,0,$38,0,$42,0)|0); - $43 = HEAP32[$v>>2]|0; - $44 = HEAP32[$addr>>2]|0; - $45 = (($44) + 9)|0; - (_sqlite3VdbeAddOp2($43,105,0,$45)|0); - $46 = HEAP32[$v>>2]|0; - $47 = HEAP32[$memId>>2]|0; - (_sqlite3VdbeAddOp3($46,46,0,0,$47)|0); - $48 = HEAP32[$v>>2]|0; - $49 = HEAP32[$memId>>2]|0; - $50 = (($49) - 1)|0; - $51 = HEAP32[$addr>>2]|0; - $52 = (($51) + 7)|0; - $53 = HEAP32[$memId>>2]|0; - (_sqlite3VdbeAddOp3($48,78,$50,$52,$53)|0); - $54 = HEAP32[$v>>2]|0; - _sqlite3VdbeChangeP5($54,8); - $55 = HEAP32[$v>>2]|0; - $56 = HEAP32[$memId>>2]|0; - $57 = (($56) + 1)|0; - (_sqlite3VdbeAddOp2($55,100,0,$57)|0); - $58 = HEAP32[$v>>2]|0; - $59 = HEAP32[$memId>>2]|0; - (_sqlite3VdbeAddOp3($58,46,0,1,$59)|0); - $60 = HEAP32[$v>>2]|0; - $61 = HEAP32[$addr>>2]|0; - $62 = (($61) + 9)|0; - (_sqlite3VdbeAddOp2($60,16,0,$62)|0); - $63 = HEAP32[$v>>2]|0; - $64 = HEAP32[$addr>>2]|0; - $65 = (($64) + 2)|0; - (_sqlite3VdbeAddOp2($63,9,0,$65)|0); - $66 = HEAP32[$v>>2]|0; - $67 = HEAP32[$memId>>2]|0; - (_sqlite3VdbeAddOp2($66,25,0,$67)|0); - $68 = HEAP32[$v>>2]|0; - (_sqlite3VdbeAddOp0($68,58)|0); - $69 = HEAP32[$p>>2]|0; - $70 = HEAP32[$69>>2]|0; - HEAP32[$p>>2] = $70; - } - STACKTOP = sp;return; -} -function _yyStackOverflow($yypParser,$yypMinor) { - $yypParser = $yypParser|0; - $yypMinor = $yypMinor|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pParse = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 12|0; - $1 = sp + 8|0; - $pParse = sp + 4|0; - HEAP32[$0>>2] = $yypParser; - HEAP32[$1>>2] = $yypMinor; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 8|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pParse>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + -1)|0; - HEAP32[$5>>2] = $7; - while(1) { - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)>=(0); - if (!($10)) { - break; - } - $11 = HEAP32[$0>>2]|0; - (_yy_pop_parser_stack($11)|0); - } - $12 = HEAP32[$pParse>>2]|0; - _sqlite3ErrorMsg($12,27040,$vararg_buffer); - $13 = HEAP32[$pParse>>2]|0; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 8|0); - HEAP32[$15>>2] = $13; - STACKTOP = sp;return; -} -function _sqlite3Prepare($db,$zSql,$nBytes,$saveSqlFlag,$pReprepare,$ppStmt,$pzTail) { - $db = $db|0; - $zSql = $zSql|0; - $nBytes = $nBytes|0; - $saveSqlFlag = $saveSqlFlag|0; - $pReprepare = $pReprepare|0; - $ppStmt = $ppStmt|0; - $pzTail = $pzTail|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; - var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; - var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; - var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; - var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iFirst = 0, $mx = 0, $mxLen = 0, $pBt = 0, $pParse = 0, $pT = 0, $pVdbe = 0, $rc = 0, $vararg_buffer6 = 0, $zDb = 0, $zErrMsg = 0, $zSqlCopy = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer6 = sp; - $0 = sp + 76|0; - $1 = sp + 72|0; - $2 = sp + 68|0; - $3 = sp + 64|0; - $4 = sp + 60|0; - $5 = sp + 56|0; - $6 = sp + 52|0; - $pParse = sp + 48|0; - $zErrMsg = sp + 44|0; - $rc = sp + 40|0; - $i = sp + 36|0; - $pBt = sp + 32|0; - $zDb = sp + 28|0; - $zSqlCopy = sp + 24|0; - $mxLen = sp + 20|0; - $iFirst = sp + 16|0; - $mx = sp + 12|0; - $pVdbe = sp + 8|0; - $pT = sp + 4|0; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $zSql; - HEAP32[$2>>2] = $nBytes; - HEAP32[$3>>2] = $saveSqlFlag; - HEAP32[$4>>2] = $pReprepare; - HEAP32[$5>>2] = $ppStmt; - HEAP32[$6>>2] = $pzTail; - HEAP32[$zErrMsg>>2] = 0; - HEAP32[$rc>>2] = 0; - $7 = HEAP32[$0>>2]|0; - $8 = (_sqlite3DbMallocZero($7,536)|0); - HEAP32[$pParse>>2] = $8; - $9 = HEAP32[$pParse>>2]|0; - $10 = ($9|0)==(0|0); - if ($10) { - HEAP32[$rc>>2] = 7; - $220 = HEAP32[$pParse>>2]|0; - _sqlite3ParserReset($220); - $221 = HEAP32[$0>>2]|0; - $222 = HEAP32[$pParse>>2]|0; - _sqlite3DbFree($221,$222); - $223 = HEAP32[$0>>2]|0; - $224 = HEAP32[$rc>>2]|0; - $225 = (_sqlite3ApiExit($223,$224)|0); - HEAP32[$rc>>2] = $225; - $226 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($226|0); - } - $11 = HEAP32[$4>>2]|0; - $12 = HEAP32[$pParse>>2]|0; - $13 = (($12) + 476|0); - HEAP32[$13>>2] = $11; - HEAP32[$i>>2] = 0; - while(1) { - $14 = HEAP32[$i>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 20|0); - $17 = HEAP32[$16>>2]|0; - $18 = ($14|0)<($17|0); - if (!($18)) { - break; - } - $19 = HEAP32[$i>>2]|0; - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 16|0); - $22 = HEAP32[$21>>2]|0; - $23 = (($22) + ($19<<4)|0); - $24 = (($23) + 4|0); - $25 = HEAP32[$24>>2]|0; - HEAP32[$pBt>>2] = $25; - $26 = HEAP32[$pBt>>2]|0; - $27 = ($26|0)!=(0|0); - if ($27) { - $28 = HEAP32[$pBt>>2]|0; - $29 = (_sqlite3BtreeSchemaLocked($28)|0); - HEAP32[$rc>>2] = $29; - $30 = HEAP32[$rc>>2]|0; - $31 = ($30|0)!=(0); - if ($31) { - label = 7; - break; - } - } - $41 = HEAP32[$i>>2]|0; - $42 = (($41) + 1)|0; - HEAP32[$i>>2] = $42; - } - if ((label|0) == 7) { - $32 = HEAP32[$i>>2]|0; - $33 = HEAP32[$0>>2]|0; - $34 = (($33) + 16|0); - $35 = HEAP32[$34>>2]|0; - $36 = (($35) + ($32<<4)|0); - $37 = HEAP32[$36>>2]|0; - HEAP32[$zDb>>2] = $37; - $38 = HEAP32[$0>>2]|0; - $39 = HEAP32[$rc>>2]|0; - $40 = HEAP32[$zDb>>2]|0; - HEAP32[$vararg_buffer6>>2] = $40; - _sqlite3Error($38,$39,30792,$vararg_buffer6); - $220 = HEAP32[$pParse>>2]|0; - _sqlite3ParserReset($220); - $221 = HEAP32[$0>>2]|0; - $222 = HEAP32[$pParse>>2]|0; - _sqlite3DbFree($221,$222); - $223 = HEAP32[$0>>2]|0; - $224 = HEAP32[$rc>>2]|0; - $225 = (_sqlite3ApiExit($223,$224)|0); - HEAP32[$rc>>2] = $225; - $226 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($226|0); - } - $43 = HEAP32[$0>>2]|0; - _sqlite3VtabUnlockList($43); - $44 = HEAP32[$0>>2]|0; - $45 = HEAP32[$pParse>>2]|0; - HEAP32[$45>>2] = $44; - $46 = HEAP32[$pParse>>2]|0; - $47 = (($46) + 424|0); - HEAP32[$47>>2] = 0; - $48 = HEAP32[$2>>2]|0; - $49 = ($48|0)>=(0); - do { - if ($49) { - $50 = HEAP32[$2>>2]|0; - $51 = ($50|0)==(0); - if (!($51)) { - $52 = HEAP32[$2>>2]|0; - $53 = (($52) - 1)|0; - $54 = HEAP32[$1>>2]|0; - $55 = (($54) + ($53)|0); - $56 = HEAP8[$55>>0]|0; - $57 = $56 << 24 >> 24; - $58 = ($57|0)!=(0); - if (!($58)) { - label = 17; - break; - } - } - $59 = HEAP32[$0>>2]|0; - $60 = (($59) + 88|0); - $61 = (($60) + 4|0); - $62 = HEAP32[$61>>2]|0; - HEAP32[$mxLen>>2] = $62; - $63 = HEAP32[$2>>2]|0; - $64 = HEAP32[$mxLen>>2]|0; - $65 = ($63|0)>($64|0); - $66 = HEAP32[$0>>2]|0; - if ($65) { - _sqlite3Error($66,18,30824,$vararg_buffer6); - $67 = HEAP32[$0>>2]|0; - $68 = (_sqlite3ApiExit($67,18)|0); - HEAP32[$rc>>2] = $68; - $220 = HEAP32[$pParse>>2]|0; - _sqlite3ParserReset($220); - $221 = HEAP32[$0>>2]|0; - $222 = HEAP32[$pParse>>2]|0; - _sqlite3DbFree($221,$222); - $223 = HEAP32[$0>>2]|0; - $224 = HEAP32[$rc>>2]|0; - $225 = (_sqlite3ApiExit($223,$224)|0); - HEAP32[$rc>>2] = $225; - $226 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($226|0); - } - $69 = HEAP32[$1>>2]|0; - $70 = HEAP32[$2>>2]|0; - $71 = (_sqlite3DbStrNDup($66,$69,$70)|0); - HEAP32[$zSqlCopy>>2] = $71; - $72 = HEAP32[$zSqlCopy>>2]|0; - $73 = ($72|0)!=(0|0); - if ($73) { - $74 = HEAP32[$pParse>>2]|0; - $75 = HEAP32[$zSqlCopy>>2]|0; - (_sqlite3RunParser($74,$75,$zErrMsg)|0); - $76 = HEAP32[$0>>2]|0; - $77 = HEAP32[$zSqlCopy>>2]|0; - _sqlite3DbFree($76,$77); - $78 = HEAP32[$pParse>>2]|0; - $79 = (($78) + 480|0); - $80 = HEAP32[$79>>2]|0; - $81 = HEAP32[$zSqlCopy>>2]|0; - $82 = $80; - $83 = $81; - $84 = (($82) - ($83))|0; - $85 = HEAP32[$1>>2]|0; - $86 = (($85) + ($84)|0); - $87 = HEAP32[$pParse>>2]|0; - $88 = (($87) + 480|0); - HEAP32[$88>>2] = $86; - break; - } else { - $89 = HEAP32[$2>>2]|0; - $90 = HEAP32[$1>>2]|0; - $91 = (($90) + ($89)|0); - $92 = HEAP32[$pParse>>2]|0; - $93 = (($92) + 480|0); - HEAP32[$93>>2] = $91; - break; - } - } else { - label = 17; - } - } while(0); - if ((label|0) == 17) { - $94 = HEAP32[$pParse>>2]|0; - $95 = HEAP32[$1>>2]|0; - (_sqlite3RunParser($94,$95,$zErrMsg)|0); - } - $96 = HEAP32[$0>>2]|0; - $97 = (($96) + 64|0); - $98 = HEAP8[$97>>0]|0; - $99 = ($98<<24>>24)!=(0); - if ($99) { - $100 = HEAP32[$pParse>>2]|0; - $101 = (($100) + 12|0); - HEAP32[$101>>2] = 7; - } - $102 = HEAP32[$pParse>>2]|0; - $103 = (($102) + 12|0); - $104 = HEAP32[$103>>2]|0; - $105 = ($104|0)==(101); - if ($105) { - $106 = HEAP32[$pParse>>2]|0; - $107 = (($106) + 12|0); - HEAP32[$107>>2] = 0; - } - $108 = HEAP32[$pParse>>2]|0; - $109 = (($108) + 17|0); - $110 = HEAP8[$109>>0]|0; - $111 = ($110<<24>>24)!=(0); - if ($111) { - $112 = HEAP32[$pParse>>2]|0; - _schemaIsValid($112); - } - $113 = HEAP32[$0>>2]|0; - $114 = (($113) + 64|0); - $115 = HEAP8[$114>>0]|0; - $116 = ($115<<24>>24)!=(0); - if ($116) { - $117 = HEAP32[$pParse>>2]|0; - $118 = (($117) + 12|0); - HEAP32[$118>>2] = 7; - } - $119 = HEAP32[$6>>2]|0; - $120 = ($119|0)!=(0|0); - if ($120) { - $121 = HEAP32[$pParse>>2]|0; - $122 = (($121) + 480|0); - $123 = HEAP32[$122>>2]|0; - $124 = HEAP32[$6>>2]|0; - HEAP32[$124>>2] = $123; - } - $125 = HEAP32[$pParse>>2]|0; - $126 = (($125) + 12|0); - $127 = HEAP32[$126>>2]|0; - HEAP32[$rc>>2] = $127; - $128 = HEAP32[$rc>>2]|0; - $129 = ($128|0)==(0); - L45: do { - if ($129) { - $130 = HEAP32[$pParse>>2]|0; - $131 = (($130) + 8|0); - $132 = HEAP32[$131>>2]|0; - $133 = ($132|0)!=(0|0); - if ($133) { - $134 = HEAP32[$pParse>>2]|0; - $135 = (($134) + 450|0); - $136 = HEAP8[$135>>0]|0; - $137 = $136&255; - $138 = ($137|0)!=(0); - if ($138) { - $139 = HEAP32[$pParse>>2]|0; - $140 = (($139) + 450|0); - $141 = HEAP8[$140>>0]|0; - $142 = $141&255; - $143 = ($142|0)==(2); - $144 = HEAP32[$pParse>>2]|0; - $145 = (($144) + 8|0); - $146 = HEAP32[$145>>2]|0; - if ($143) { - _sqlite3VdbeSetNumCols($146,4); - HEAP32[$iFirst>>2] = 8; - HEAP32[$mx>>2] = 12; - } else { - _sqlite3VdbeSetNumCols($146,8); - HEAP32[$iFirst>>2] = 0; - HEAP32[$mx>>2] = 8; - } - $147 = HEAP32[$iFirst>>2]|0; - HEAP32[$i>>2] = $147; - while(1) { - $148 = HEAP32[$i>>2]|0; - $149 = HEAP32[$mx>>2]|0; - $150 = ($148|0)<($149|0); - if (!($150)) { - break L45; - } - $151 = HEAP32[$pParse>>2]|0; - $152 = (($151) + 8|0); - $153 = HEAP32[$152>>2]|0; - $154 = HEAP32[$i>>2]|0; - $155 = HEAP32[$iFirst>>2]|0; - $156 = (($154) - ($155))|0; - $157 = HEAP32[$i>>2]|0; - $158 = (30848 + ($157<<2)|0); - $159 = HEAP32[$158>>2]|0; - (_sqlite3VdbeSetColName($153,$156,0,$159,0)|0); - $160 = HEAP32[$i>>2]|0; - $161 = (($160) + 1)|0; - HEAP32[$i>>2] = $161; - } - } - } - } - } while(0); - $162 = HEAP32[$0>>2]|0; - $163 = (($162) + 132|0); - $164 = (($163) + 5|0); - $165 = HEAP8[$164>>0]|0; - $166 = $165&255; - $167 = ($166|0)==(0); - if ($167) { - $168 = HEAP32[$pParse>>2]|0; - $169 = (($168) + 8|0); - $170 = HEAP32[$169>>2]|0; - HEAP32[$pVdbe>>2] = $170; - $171 = HEAP32[$pVdbe>>2]|0; - $172 = HEAP32[$1>>2]|0; - $173 = HEAP32[$pParse>>2]|0; - $174 = (($173) + 480|0); - $175 = HEAP32[$174>>2]|0; - $176 = HEAP32[$1>>2]|0; - $177 = $175; - $178 = $176; - $179 = (($177) - ($178))|0; - $180 = HEAP32[$3>>2]|0; - _sqlite3VdbeSetSql($171,$172,$179,$180); - } - $181 = HEAP32[$pParse>>2]|0; - $182 = (($181) + 8|0); - $183 = HEAP32[$182>>2]|0; - $184 = ($183|0)!=(0|0); - do { - if ($184) { - $185 = HEAP32[$rc>>2]|0; - $186 = ($185|0)!=(0); - if (!($186)) { - $187 = HEAP32[$0>>2]|0; - $188 = (($187) + 64|0); - $189 = HEAP8[$188>>0]|0; - $190 = $189&255; - $191 = ($190|0)!=(0); - if (!($191)) { - label = 43; - break; - } - } - $192 = HEAP32[$pParse>>2]|0; - $193 = (($192) + 8|0); - $194 = HEAP32[$193>>2]|0; - (_sqlite3VdbeFinalize($194)|0); - } else { - label = 43; - } - } while(0); - if ((label|0) == 43) { - $195 = HEAP32[$pParse>>2]|0; - $196 = (($195) + 8|0); - $197 = HEAP32[$196>>2]|0; - $198 = HEAP32[$5>>2]|0; - HEAP32[$198>>2] = $197; - } - $199 = HEAP32[$zErrMsg>>2]|0; - $200 = ($199|0)!=(0|0); - $201 = HEAP32[$0>>2]|0; - $202 = HEAP32[$rc>>2]|0; - if ($200) { - $203 = HEAP32[$zErrMsg>>2]|0; - HEAP32[$vararg_buffer6>>2] = $203; - _sqlite3Error($201,$202,1456,$vararg_buffer6); - $204 = HEAP32[$0>>2]|0; - $205 = HEAP32[$zErrMsg>>2]|0; - _sqlite3DbFree($204,$205); - } else { - _sqlite3Error($201,$202,0,$vararg_buffer6); - } - while(1) { - $206 = HEAP32[$pParse>>2]|0; - $207 = (($206) + 528|0); - $208 = HEAP32[$207>>2]|0; - $209 = ($208|0)!=(0|0); - if (!($209)) { - break; - } - $210 = HEAP32[$pParse>>2]|0; - $211 = (($210) + 528|0); - $212 = HEAP32[$211>>2]|0; - HEAP32[$pT>>2] = $212; - $213 = HEAP32[$pT>>2]|0; - $214 = (($213) + 4|0); - $215 = HEAP32[$214>>2]|0; - $216 = HEAP32[$pParse>>2]|0; - $217 = (($216) + 528|0); - HEAP32[$217>>2] = $215; - $218 = HEAP32[$0>>2]|0; - $219 = HEAP32[$pT>>2]|0; - _sqlite3DbFree($218,$219); - } - $220 = HEAP32[$pParse>>2]|0; - _sqlite3ParserReset($220); - $221 = HEAP32[$0>>2]|0; - $222 = HEAP32[$pParse>>2]|0; - _sqlite3DbFree($221,$222); - $223 = HEAP32[$0>>2]|0; - $224 = HEAP32[$rc>>2]|0; - $225 = (_sqlite3ApiExit($223,$224)|0); - HEAP32[$rc>>2] = $225; - $226 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($226|0); -} -function _sqlite3BtreeSchemaLocked($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($1); - $2 = HEAP32[$0>>2]|0; - $3 = (_querySharedCacheTableLock($2,1,1)|0); - HEAP32[$rc>>2] = $3; - $4 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($4|0); -} -function _schemaIsValid($pParse) { - $pParse = $pParse|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cookie = 0, $db = 0, $iDb = 0, $openedTransaction = 0, $or$cond = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $db = sp + 20|0; - $iDb = sp + 16|0; - $rc = sp + 12|0; - $cookie = sp + 8|0; - $openedTransaction = sp + 4|0; - $pBt = sp; - HEAP32[$0>>2] = $pParse; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$db>>2] = $2; - HEAP32[$iDb>>2] = 0; - while(1) { - $3 = HEAP32[$iDb>>2]|0; - $4 = HEAP32[$db>>2]|0; - $5 = (($4) + 20|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($3|0)<($6|0); - if (!($7)) { - label = 14; - break; - } - HEAP32[$openedTransaction>>2] = 0; - $8 = HEAP32[$iDb>>2]|0; - $9 = HEAP32[$db>>2]|0; - $10 = (($9) + 16|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + ($8<<4)|0); - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$pBt>>2] = $14; - $15 = HEAP32[$pBt>>2]|0; - $16 = ($15|0)==(0|0); - if (!($16)) { - $17 = HEAP32[$pBt>>2]|0; - $18 = (_sqlite3BtreeIsInReadTrans($17)|0); - $19 = ($18|0)!=(0); - if (!($19)) { - $20 = HEAP32[$pBt>>2]|0; - $21 = (_sqlite3BtreeBeginTrans($20,0)|0); - HEAP32[$rc>>2] = $21; - $22 = HEAP32[$rc>>2]|0; - $23 = ($22|0)==(7); - $24 = HEAP32[$rc>>2]|0; - $25 = ($24|0)==(3082); - $or$cond = $23 | $25; - if ($or$cond) { - $26 = HEAP32[$db>>2]|0; - $27 = (($26) + 64|0); - HEAP8[$27>>0] = 1; - } - $28 = HEAP32[$rc>>2]|0; - $29 = ($28|0)!=(0); - if ($29) { - label = 14; - break; - } - HEAP32[$openedTransaction>>2] = 1; - } - $30 = HEAP32[$pBt>>2]|0; - _sqlite3BtreeGetMeta($30,1,$cookie); - $31 = HEAP32[$cookie>>2]|0; - $32 = HEAP32[$iDb>>2]|0; - $33 = HEAP32[$db>>2]|0; - $34 = (($33) + 16|0); - $35 = HEAP32[$34>>2]|0; - $36 = (($35) + ($32<<4)|0); - $37 = (($36) + 12|0); - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$38>>2]|0; - $40 = ($31|0)!=($39|0); - if ($40) { - $41 = HEAP32[$db>>2]|0; - $42 = HEAP32[$iDb>>2]|0; - _sqlite3ResetOneSchema($41,$42); - $43 = HEAP32[$0>>2]|0; - $44 = (($43) + 12|0); - HEAP32[$44>>2] = 17; - } - $45 = HEAP32[$openedTransaction>>2]|0; - $46 = ($45|0)!=(0); - if ($46) { - $47 = HEAP32[$pBt>>2]|0; - (_sqlite3BtreeCommit($47)|0); - } - } - $48 = HEAP32[$iDb>>2]|0; - $49 = (($48) + 1)|0; - HEAP32[$iDb>>2] = $49; - } - if ((label|0) == 14) { - STACKTOP = sp;return; - } -} -function _sqlite3VdbeSetSql($p,$z,$n,$isPrepareV2) { - $p = $p|0; - $z = $z|0; - $n = $n|0; - $isPrepareV2 = $isPrepareV2|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $z; - HEAP32[$2>>2] = $n; - HEAP32[$3>>2] = $isPrepareV2; - $4 = HEAP32[$0>>2]|0; - $5 = ($4|0)==(0|0); - if ($5) { - STACKTOP = sp;return; - } - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$2>>2]|0; - $10 = (_sqlite3DbStrNDup($7,$8,$9)|0); - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 168|0); - HEAP32[$12>>2] = $10; - $13 = HEAP32[$3>>2]|0; - $14 = $13&255; - $15 = $14&255; - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 88|0); - $18 = $15&65535; - $19 = HEAP16[$17>>1]|0; - $20 = $18 & 1; - $21 = ($20 << 10)&65535; - $22 = $19 & -1025; - $23 = $22 | $21; - HEAP16[$17>>1] = $23; - STACKTOP = sp;return; -} -function _querySharedCacheTableLock($p,$iTab,$eLock) { - $p = $p|0; - $iTab = $iTab|0; - $eLock = $eLock|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $pIter = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 20|0; - $pBt = sp + 4|0; - $pIter = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $iTab; - HEAP8[$3>>0] = $eLock; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$pBt>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 9|0); - $9 = HEAP8[$8>>0]|0; - $10 = ($9<<24>>24)!=(0); - if (!($10)) { - HEAP32[$0>>2] = 0; - $55 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($55|0); - } - $11 = HEAP32[$pBt>>2]|0; - $12 = (($11) + 76|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = ($13|0)!=($14|0); - if ($15) { - $16 = HEAP32[$pBt>>2]|0; - $17 = (($16) + 22|0); - $18 = HEAP16[$17>>1]|0; - $19 = $18&65535; - $20 = $19 & 32; - $21 = ($20|0)!=(0); - if ($21) { - HEAP32[$0>>2] = 262; - $55 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($55|0); - } - } - $22 = HEAP32[$pBt>>2]|0; - $23 = (($22) + 72|0); - $24 = HEAP32[$23>>2]|0; - HEAP32[$pIter>>2] = $24; - while(1) { - $25 = HEAP32[$pIter>>2]|0; - $26 = ($25|0)!=(0|0); - if (!($26)) { - label = 15; - break; - } - $27 = HEAP32[$pIter>>2]|0; - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$1>>2]|0; - $30 = ($28|0)!=($29|0); - if ($30) { - $31 = HEAP32[$pIter>>2]|0; - $32 = (($31) + 4|0); - $33 = HEAP32[$32>>2]|0; - $34 = HEAP32[$2>>2]|0; - $35 = ($33|0)==($34|0); - if ($35) { - $36 = HEAP32[$pIter>>2]|0; - $37 = (($36) + 8|0); - $38 = HEAP8[$37>>0]|0; - $39 = $38&255; - $40 = HEAP8[$3>>0]|0; - $41 = $40&255; - $42 = ($39|0)!=($41|0); - if ($42) { - break; - } - } - } - $52 = HEAP32[$pIter>>2]|0; - $53 = (($52) + 12|0); - $54 = HEAP32[$53>>2]|0; - HEAP32[$pIter>>2] = $54; - } - if ((label|0) == 15) { - HEAP32[$0>>2] = 0; - $55 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($55|0); - } - $43 = HEAP8[$3>>0]|0; - $44 = $43&255; - $45 = ($44|0)==(2); - if ($45) { - $46 = HEAP32[$pBt>>2]|0; - $47 = (($46) + 22|0); - $48 = HEAP16[$47>>1]|0; - $49 = $48&65535; - $50 = $49 | 64; - $51 = $50&65535; - HEAP16[$47>>1] = $51; - } - HEAP32[$0>>2] = 262; - $55 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($55|0); -} -function _sqlite3VdbeSwap($pA,$pB) { - $pA = $pA|0; - $pB = $pB|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTmp = 0, $tmp = 0, $zTmp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 224|0; - $0 = sp + 220|0; - $1 = sp + 216|0; - $tmp = sp; - $pTmp = sp + 212|0; - $zTmp = sp + 208|0; - HEAP32[$0>>2] = $pA; - HEAP32[$1>>2] = $pB; - $2 = HEAP32[$0>>2]|0; - _memcpy(($tmp|0),($2|0),208)|0; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - _memcpy(($3|0),($4|0),208)|0; - $5 = HEAP32[$1>>2]|0; - _memcpy(($5|0),($tmp|0),208)|0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 52|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pTmp>>2] = $8; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 52|0); - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 52|0); - HEAP32[$13>>2] = $11; - $14 = HEAP32[$pTmp>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 52|0); - HEAP32[$16>>2] = $14; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 48|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$pTmp>>2] = $19; - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 48|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 48|0); - HEAP32[$24>>2] = $22; - $25 = HEAP32[$pTmp>>2]|0; - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 48|0); - HEAP32[$27>>2] = $25; - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 168|0); - $30 = HEAP32[$29>>2]|0; - HEAP32[$zTmp>>2] = $30; - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 168|0); - $33 = HEAP32[$32>>2]|0; - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 168|0); - HEAP32[$35>>2] = $33; - $36 = HEAP32[$zTmp>>2]|0; - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 168|0); - HEAP32[$38>>2] = $36; - $39 = HEAP32[$0>>2]|0; - $40 = (($39) + 88|0); - $41 = HEAP16[$40>>1]|0; - $42 = ($41&65535) >>> 10; - $43 = $42 & 1; - $44 = $43&65535; - $45 = HEAP32[$1>>2]|0; - $46 = (($45) + 88|0); - $47 = $44&65535; - $48 = HEAP16[$46>>1]|0; - $49 = $47 & 1; - $50 = ($49 << 10)&65535; - $51 = $48 & -1025; - $52 = $51 | $50; - HEAP16[$46>>1] = $52; - STACKTOP = sp;return; -} -function _sqlite3VdbeResetStepResult($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 80|0); - HEAP32[$2>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3FkDelete($db,$pTab) { - $db = $db|0; - $pTab = $pTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pFKey = 0, $pNext = 0, $z = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $pFKey = sp + 12|0; - $pNext = sp + 8|0; - $p = sp + 4|0; - $z = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pTab; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 16|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pFKey>>2] = $4; - while(1) { - $5 = HEAP32[$pFKey>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - break; - } - $7 = HEAP32[$0>>2]|0; - $8 = ($7|0)!=(0|0); - if ($8) { - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 512|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)==(0|0); - if ($12) { - label = 5; - } - } else { - label = 5; - } - if ((label|0) == 5) { - label = 0; - $13 = HEAP32[$pFKey>>2]|0; - $14 = (($13) + 16|0); - $15 = HEAP32[$14>>2]|0; - $16 = ($15|0)!=(0|0); - $17 = HEAP32[$pFKey>>2]|0; - $18 = (($17) + 12|0); - $19 = HEAP32[$18>>2]|0; - if ($16) { - $20 = HEAP32[$pFKey>>2]|0; - $21 = (($20) + 16|0); - $22 = HEAP32[$21>>2]|0; - $23 = (($22) + 12|0); - HEAP32[$23>>2] = $19; - } else { - HEAP32[$p>>2] = $19; - $24 = HEAP32[$p>>2]|0; - $25 = ($24|0)!=(0|0); - $26 = HEAP32[$pFKey>>2]|0; - if ($25) { - $27 = (($26) + 12|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + 8|0); - $30 = HEAP32[$29>>2]|0; - $33 = $30; - } else { - $31 = (($26) + 8|0); - $32 = HEAP32[$31>>2]|0; - $33 = $32; - } - HEAP32[$z>>2] = $33; - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 68|0); - $36 = HEAP32[$35>>2]|0; - $37 = (($36) + 56|0); - $38 = HEAP32[$z>>2]|0; - $39 = HEAP32[$z>>2]|0; - $40 = (_sqlite3Strlen30($39)|0); - $41 = HEAP32[$p>>2]|0; - (_sqlite3HashInsert($37,$38,$40,$41)|0); - } - $42 = HEAP32[$pFKey>>2]|0; - $43 = (($42) + 12|0); - $44 = HEAP32[$43>>2]|0; - $45 = ($44|0)!=(0|0); - if ($45) { - $46 = HEAP32[$pFKey>>2]|0; - $47 = (($46) + 16|0); - $48 = HEAP32[$47>>2]|0; - $49 = HEAP32[$pFKey>>2]|0; - $50 = (($49) + 12|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + 16|0); - HEAP32[$52>>2] = $48; - } - } - $53 = HEAP32[$0>>2]|0; - $54 = HEAP32[$pFKey>>2]|0; - $55 = (($54) + 28|0); - $56 = HEAP32[$55>>2]|0; - _fkTriggerDelete($53,$56); - $57 = HEAP32[$0>>2]|0; - $58 = HEAP32[$pFKey>>2]|0; - $59 = (($58) + 28|0); - $60 = (($59) + 4|0); - $61 = HEAP32[$60>>2]|0; - _fkTriggerDelete($57,$61); - $62 = HEAP32[$pFKey>>2]|0; - $63 = (($62) + 4|0); - $64 = HEAP32[$63>>2]|0; - HEAP32[$pNext>>2] = $64; - $65 = HEAP32[$0>>2]|0; - $66 = HEAP32[$pFKey>>2]|0; - _sqlite3DbFree($65,$66); - $67 = HEAP32[$pNext>>2]|0; - HEAP32[$pFKey>>2] = $67; - } - STACKTOP = sp;return; -} -function _sqlite3VtabClear($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$0>>2]|0; - $3 = ($2|0)!=(0|0); - if ($3) { - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 512|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)==(0|0); - if ($7) { - label = 3; - } - } else { - label = 3; - } - if ((label|0) == 3) { - $8 = HEAP32[$1>>2]|0; - (_vtabDisconnectAll(0,$8)|0); - } - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 56|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)!=(0|0); - if (!($12)) { - STACKTOP = sp;return; - } - HEAP32[$i>>2] = 0; - while(1) { - $13 = HEAP32[$i>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 52|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($13|0)<($16|0); - if (!($17)) { - break; - } - $18 = HEAP32[$i>>2]|0; - $19 = ($18|0)!=(1); - if ($19) { - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$i>>2]|0; - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 56|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + ($21<<2)|0); - $26 = HEAP32[$25>>2]|0; - _sqlite3DbFree($20,$26); - } - $27 = HEAP32[$i>>2]|0; - $28 = (($27) + 1)|0; - HEAP32[$i>>2] = $28; - } - $29 = HEAP32[$0>>2]|0; - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 56|0); - $32 = HEAP32[$31>>2]|0; - _sqlite3DbFree($29,$32); - STACKTOP = sp;return; -} -function _vtabDisconnectAll($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db2 = 0, $pNext = 0, $pRet = 0, $pVTable = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $pRet = sp + 12|0; - $pVTable = sp + 8|0; - $db2 = sp + 4|0; - $pNext = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - HEAP32[$pRet>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 60|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pVTable>>2] = $4; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 60|0); - HEAP32[$6>>2] = 0; - while(1) { - $7 = HEAP32[$pVTable>>2]|0; - $8 = ($7|0)!=(0|0); - if (!($8)) { - break; - } - $9 = HEAP32[$pVTable>>2]|0; - $10 = HEAP32[$9>>2]|0; - HEAP32[$db2>>2] = $10; - $11 = HEAP32[$pVTable>>2]|0; - $12 = (($11) + 24|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pNext>>2] = $13; - $14 = HEAP32[$db2>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = ($14|0)==($15|0); - if ($16) { - $17 = HEAP32[$pVTable>>2]|0; - HEAP32[$pRet>>2] = $17; - $18 = HEAP32[$pRet>>2]|0; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 60|0); - HEAP32[$20>>2] = $18; - $21 = HEAP32[$pRet>>2]|0; - $22 = (($21) + 24|0); - HEAP32[$22>>2] = 0; - } else { - $23 = HEAP32[$db2>>2]|0; - $24 = (($23) + 324|0); - $25 = HEAP32[$24>>2]|0; - $26 = HEAP32[$pVTable>>2]|0; - $27 = (($26) + 24|0); - HEAP32[$27>>2] = $25; - $28 = HEAP32[$pVTable>>2]|0; - $29 = HEAP32[$db2>>2]|0; - $30 = (($29) + 324|0); - HEAP32[$30>>2] = $28; - } - $31 = HEAP32[$pNext>>2]|0; - HEAP32[$pVTable>>2] = $31; - } - $32 = HEAP32[$pRet>>2]|0; - STACKTOP = sp;return ($32|0); -} -function _saveAllCursors($pBt,$iRoot,$pExcept) { - $pBt = $pBt|0; - $iRoot = $iRoot|0; - $pExcept = $pExcept|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $p = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pBt; - HEAP32[$2>>2] = $iRoot; - HEAP32[$3>>2] = $pExcept; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 8|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$p>>2] = $6; - L1: while(1) { - $7 = HEAP32[$p>>2]|0; - $8 = ($7|0)!=(0|0); - if (!($8)) { - label = 11; - break; - } - $9 = HEAP32[$p>>2]|0; - $10 = HEAP32[$3>>2]|0; - $11 = ($9|0)!=($10|0); - do { - if ($11) { - $12 = HEAP32[$2>>2]|0; - $13 = (0)==($12|0); - if (!($13)) { - $14 = HEAP32[$p>>2]|0; - $15 = (($14) + 68|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = ($16|0)==($17|0); - if (!($18)) { - break; - } - } - $19 = HEAP32[$p>>2]|0; - $20 = (($19) + 81|0); - $21 = HEAP8[$20>>0]|0; - $22 = $21&255; - $23 = ($22|0)==(1); - $24 = HEAP32[$p>>2]|0; - if ($23) { - $25 = (_saveCursorPosition($24)|0); - HEAP32[$rc>>2] = $25; - $26 = HEAP32[$rc>>2]|0; - $27 = (0)!=($26|0); - if ($27) { - label = 8; - break L1; - } else { - break; - } - } else { - _btreeReleaseAllCursorPages($24); - break; - } - } - } while(0); - $29 = HEAP32[$p>>2]|0; - $30 = (($29) + 8|0); - $31 = HEAP32[$30>>2]|0; - HEAP32[$p>>2] = $31; - } - if ((label|0) == 8) { - $28 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $28; - $32 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($32|0); - } - else if ((label|0) == 11) { - HEAP32[$0>>2] = 0; - $32 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($32|0); - } - return 0|0; -} -function _saveCursorPosition($pCur) { - $pCur = $pCur|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pKey = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $rc = sp + 4|0; - $pKey = sp; - HEAP32[$0>>2] = $pCur; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 56|0); - $4 = (_sqlite3BtreeKeySize($1,$3)|0); - HEAP32[$rc>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 128|0); - $7 = HEAP32[$6>>2]|0; - $8 = (($7) + 2|0); - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - $11 = (0)==($10|0); - do { - if ($11) { - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 56|0); - $14 = $13; - $15 = $14; - $16 = HEAP32[$15>>2]|0; - $17 = (($14) + 4)|0; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = (_sqlite3Malloc($16)|0); - HEAP32[$pKey>>2] = $20; - $21 = HEAP32[$pKey>>2]|0; - $22 = ($21|0)!=(0|0); - if (!($22)) { - HEAP32[$rc>>2] = 7; - break; - } - $23 = HEAP32[$0>>2]|0; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 56|0); - $26 = $25; - $27 = $26; - $28 = HEAP32[$27>>2]|0; - $29 = (($26) + 4)|0; - $30 = $29; - $31 = HEAP32[$30>>2]|0; - $32 = HEAP32[$pKey>>2]|0; - $33 = (_sqlite3BtreeKey($23,0,$28,$32)|0); - HEAP32[$rc>>2] = $33; - $34 = HEAP32[$rc>>2]|0; - $35 = ($34|0)==(0); - $36 = HEAP32[$pKey>>2]|0; - if ($35) { - $37 = HEAP32[$0>>2]|0; - $38 = (($37) + 64|0); - HEAP32[$38>>2] = $36; - break; - } else { - _sqlite3_free($36); - break; - } - } - } while(0); - $39 = HEAP32[$rc>>2]|0; - $40 = ($39|0)==(0); - if (!($40)) { - $44 = HEAP32[$0>>2]|0; - $45 = (($44) + 80|0); - $46 = HEAP8[$45>>0]|0; - $47 = $46&255; - $48 = $47 & -5; - $49 = $48&255; - HEAP8[$45>>0] = $49; - $50 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($50|0); - } - $41 = HEAP32[$0>>2]|0; - _btreeReleaseAllCursorPages($41); - $42 = HEAP32[$0>>2]|0; - $43 = (($42) + 81|0); - HEAP8[$43>>0] = 3; - $44 = HEAP32[$0>>2]|0; - $45 = (($44) + 80|0); - $46 = HEAP8[$45>>0]|0; - $47 = $46&255; - $48 = $47 & -5; - $49 = $48&255; - HEAP8[$45>>0] = $49; - $50 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($50|0); -} -function _btreeReleaseAllCursorPages($pCur) { - $pCur = $pCur|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $pCur; - HEAP32[$i>>2] = 0; - while(1) { - $1 = HEAP32[$i>>2]|0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 84|0); - $4 = HEAP16[$3>>1]|0; - $5 = $4 << 16 >> 16; - $6 = ($1|0)<=($5|0); - if (!($6)) { - break; - } - $7 = HEAP32[$i>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 128|0); - $10 = (($9) + ($7<<2)|0); - $11 = HEAP32[$10>>2]|0; - _releasePage($11); - $12 = HEAP32[$i>>2]|0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 128|0); - $15 = (($14) + ($12<<2)|0); - HEAP32[$15>>2] = 0; - $16 = HEAP32[$i>>2]|0; - $17 = (($16) + 1)|0; - HEAP32[$i>>2] = $17; - } - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 84|0); - HEAP16[$19>>1] = -1; - STACKTOP = sp;return; -} -function _sqlite3BtreeKeySize($pCur,$pSize) { - $pCur = $pCur|0; - $pSize = $pSize|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iPage = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $iPage = sp; - HEAP32[$0>>2] = $pCur; - HEAP32[$1>>2] = $pSize; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 81|0); - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - $6 = ($5|0)!=(1); - if ($6) { - $7 = HEAP32[$1>>2]|0; - $8 = $7; - $9 = $8; - HEAP32[$9>>2] = 0; - $10 = (($8) + 4)|0; - $11 = $10; - HEAP32[$11>>2] = 0; - STACKTOP = sp;return 0; - } - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 24|0); - $14 = (($13) + 26|0); - $15 = HEAP16[$14>>1]|0; - $16 = $15&65535; - $17 = ($16|0)==(0); - if ($17) { - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 84|0); - $20 = HEAP16[$19>>1]|0; - $21 = $20 << 16 >> 16; - HEAP32[$iPage>>2] = $21; - $22 = HEAP32[$iPage>>2]|0; - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 128|0); - $25 = (($24) + ($22<<2)|0); - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$iPage>>2]|0; - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 86|0); - $30 = (($29) + ($27<<1)|0); - $31 = HEAP16[$30>>1]|0; - $32 = $31&65535; - $33 = HEAP32[$0>>2]|0; - $34 = (($33) + 24|0); - _btreeParseCell($26,$32,$34); - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + 80|0); - $37 = HEAP8[$36>>0]|0; - $38 = $37&255; - $39 = $38 | 2; - $40 = $39&255; - HEAP8[$36>>0] = $40; - } - $41 = HEAP32[$0>>2]|0; - $42 = (($41) + 24|0); - $43 = $42; - $44 = $43; - $45 = HEAP32[$44>>2]|0; - $46 = (($43) + 4)|0; - $47 = $46; - $48 = HEAP32[$47>>2]|0; - $49 = HEAP32[$1>>2]|0; - $50 = $49; - $51 = $50; - HEAP32[$51>>2] = $45; - $52 = (($50) + 4)|0; - $53 = $52; - HEAP32[$53>>2] = $48; - STACKTOP = sp;return 0; -} -function _sqlite3BtreeKey($pCur,$offset,$amt,$pBuf) { - $pCur = $pCur|0; - $offset = $offset|0; - $amt = $amt|0; - $pBuf = $pBuf|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $3 = sp; - HEAP32[$0>>2] = $pCur; - HEAP32[$1>>2] = $offset; - HEAP32[$2>>2] = $amt; - HEAP32[$3>>2] = $pBuf; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$3>>2]|0; - $8 = (_accessPayload($4,$5,$6,$7,0)|0); - STACKTOP = sp;return ($8|0); -} -function _allocSpace($pBuf,$nByte,$ppFrom,$pEnd,$pnByte) { - $pBuf = $pBuf|0; - $nByte = $nByte|0; - $ppFrom = $ppFrom|0; - $pEnd = $pEnd|0; - $pnByte = $pnByte|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $5 = sp; - HEAP32[$1>>2] = $pBuf; - HEAP32[$2>>2] = $nByte; - HEAP32[$3>>2] = $ppFrom; - HEAP32[$4>>2] = $pEnd; - HEAP32[$5>>2] = $pnByte; - $6 = HEAP32[$1>>2]|0; - $7 = ($6|0)!=(0|0); - if ($7) { - $8 = HEAP32[$1>>2]|0; - HEAP32[$0>>2] = $8; - $29 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($29|0); - } - $9 = HEAP32[$2>>2]|0; - $10 = (($9) + 7)|0; - $11 = $10 & -8; - HEAP32[$2>>2] = $11; - $12 = HEAP32[$2>>2]|0; - $13 = HEAP32[$3>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + ($12)|0); - $16 = HEAP32[$4>>2]|0; - $17 = ($15>>>0)<=($16>>>0); - if ($17) { - $18 = HEAP32[$3>>2]|0; - $19 = HEAP32[$18>>2]|0; - HEAP32[$1>>2] = $19; - $20 = HEAP32[$2>>2]|0; - $21 = HEAP32[$3>>2]|0; - $22 = HEAP32[$21>>2]|0; - $23 = (($22) + ($20)|0); - HEAP32[$21>>2] = $23; - } else { - $24 = HEAP32[$2>>2]|0; - $25 = HEAP32[$5>>2]|0; - $26 = HEAP32[$25>>2]|0; - $27 = (($26) + ($24))|0; - HEAP32[$25>>2] = $27; - } - $28 = HEAP32[$1>>2]|0; - HEAP32[$0>>2] = $28; - $29 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($29|0); -} -function _freeP4($db,$p4type,$p4) { - $db = $db|0; - $p4type = $p4type|0; - $p4 = $p4|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p4type; - HEAP32[$2>>2] = $p4; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - L1: do { - if ($4) { - $5 = HEAP32[$1>>2]|0; - switch ($5|0) { - case -6: { - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 512|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)==(0|0); - if (!($11)) { - break L1; - } - $12 = HEAP32[$2>>2]|0; - _sqlite3KeyInfoUnref($12); - break L1; - break; - } - case -15: case -1: case -13: case -12: { - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$2>>2]|0; - _sqlite3DbFree($6,$7); - break L1; - break; - } - case -11: { - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 512|0); - $15 = HEAP32[$14>>2]|0; - $16 = ($15|0)==(0|0); - if (!($16)) { - break L1; - } - $17 = HEAP32[$2>>2]|0; - _sqlite3_free($17); - break L1; - break; - } - case -5: { - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$2>>2]|0; - _freeEphemeralFunction($18,$19); - break L1; - break; - } - case -8: { - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 512|0); - $22 = HEAP32[$21>>2]|0; - $23 = ($22|0)==(0|0); - $24 = HEAP32[$2>>2]|0; - if ($23) { - _sqlite3ValueFree($24); - break L1; - } else { - HEAP32[$p>>2] = $24; - $25 = HEAP32[$0>>2]|0; - $26 = HEAP32[$p>>2]|0; - $27 = (($26) + 36|0); - $28 = HEAP32[$27>>2]|0; - _sqlite3DbFree($25,$28); - $29 = HEAP32[$0>>2]|0; - $30 = HEAP32[$p>>2]|0; - _sqlite3DbFree($29,$30); - break L1; - } - break; - } - case -10: { - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 512|0); - $33 = HEAP32[$32>>2]|0; - $34 = ($33|0)==(0|0); - if (!($34)) { - break L1; - } - $35 = HEAP32[$2>>2]|0; - _sqlite3VtabUnlock($35); - break L1; - break; - } - default: { - break L1; - } - } - } - } while(0); - STACKTOP = sp;return; -} -function _freeEphemeralFunction($db,$pDef) { - $db = $db|0; - $pDef = $pDef|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pDef; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - STACKTOP = sp;return; - } - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 2|0); - $6 = HEAP16[$5>>1]|0; - $7 = $6&65535; - $8 = $7 & 16; - $9 = ($8|0)!=(0); - if (!($9)) { - STACKTOP = sp;return; - } - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$1>>2]|0; - _sqlite3DbFree($10,$11); - STACKTOP = sp;return; -} -function _sqlite3VtabLock($pVTab) { - $pVTab = $pVTab|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pVTab; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 12|0); - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 1)|0; - HEAP32[$2>>2] = $4; - STACKTOP = sp;return; -} -function _sqlite3VdbeMemMove($pTo,$pFrom) { - $pTo = $pTo|0; - $pFrom = $pFrom|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pTo; - HEAP32[$1>>2] = $pFrom; - $2 = HEAP32[$0>>2]|0; - _sqlite3VdbeMemRelease($2); - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - dest=$3+0|0; src=$4+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 28|0); - HEAP16[$6>>1] = 1; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 32|0); - HEAP32[$8>>2] = 0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 36|0); - HEAP32[$10>>2] = 0; - STACKTOP = sp;return; -} -function _columnNullValue() { - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = sp;return (31080|0); -} -function _sqlite3VdbeMemFinalize($pMem,$pFunc) { - $pMem = $pMem|0; - $pFunc = $pFunc|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ctx = 0, $rc = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $0 = sp + 80|0; - $1 = sp + 76|0; - $rc = sp + 72|0; - $ctx = sp; - HEAP32[$0>>2] = $pMem; - HEAP32[$1>>2] = $pFunc; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if (!($3)) { - $28 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($28|0); - } - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 20|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0|0); - if (!($7)) { - $28 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($28|0); - } - dest=$ctx+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $8 = (($ctx) + 8|0); - $9 = (($8) + 28|0); - HEAP16[$9>>1] = 1; - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = (($ctx) + 8|0); - HEAP32[$12>>2] = $11; - $13 = HEAP32[$0>>2]|0; - $14 = (($ctx) + 48|0); - HEAP32[$14>>2] = $13; - $15 = HEAP32[$1>>2]|0; - HEAP32[$ctx>>2] = $15; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 20|0); - $18 = HEAP32[$17>>2]|0; - FUNCTION_TABLE_vi[$18 & 31]($ctx); - $19 = HEAP32[$0>>2]|0; - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 36|0); - $23 = HEAP32[$22>>2]|0; - _sqlite3DbFree($20,$23); - $24 = HEAP32[$0>>2]|0; - $25 = (($ctx) + 8|0); - dest=$24+0|0; src=$25+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $26 = (($ctx) + 64|0); - $27 = HEAP32[$26>>2]|0; - HEAP32[$rc>>2] = $27; - $28 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($28|0); -} -function _sqlite3RowSetClear($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $pChunk = 0, $pNextChunk = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $pChunk = sp + 4|0; - $pNextChunk = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$pChunk>>2] = $2; - while(1) { - $3 = HEAP32[$pChunk>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - break; - } - $5 = HEAP32[$pChunk>>2]|0; - $6 = HEAP32[$5>>2]|0; - HEAP32[$pNextChunk>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$pChunk>>2]|0; - _sqlite3DbFree($9,$10); - $11 = HEAP32[$pNextChunk>>2]|0; - HEAP32[$pChunk>>2] = $11; - } - $12 = HEAP32[$0>>2]|0; - HEAP32[$12>>2] = 0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 24|0); - HEAP16[$14>>1] = 0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 8|0); - HEAP32[$16>>2] = 0; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 12|0); - HEAP32[$18>>2] = 0; - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 20|0); - HEAP32[$20>>2] = 0; - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 26|0); - HEAP16[$22>>1] = 1; - STACKTOP = sp;return; -} -function _sqlite3VdbeList($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; - var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; - var $99 = 0, $apSub = 0, $db = 0, $i = 0, $j = 0, $j1 = 0, $nByte = 0, $nRow = 0, $nSub = 0, $pMem = 0, $pOp = 0, $pSub = 0, $rc = 0, $vararg_buffer2 = 0, $zP4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer2 = sp; - $0 = sp + 60|0; - $1 = sp + 56|0; - $nRow = sp + 52|0; - $nSub = sp + 48|0; - $apSub = sp + 44|0; - $pSub = sp + 40|0; - $db = sp + 36|0; - $i = sp + 32|0; - $rc = sp + 28|0; - $pMem = sp + 24|0; - $zP4 = sp + 20|0; - $pOp = sp + 16|0; - $j = sp + 12|0; - $nByte = sp + 8|0; - $j1 = sp + 4|0; - HEAP32[$1>>2] = $p; - HEAP32[$nSub>>2] = 0; - HEAP32[$apSub>>2] = 0; - HEAP32[$pSub>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - HEAP32[$rc>>2] = 0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 8|0); - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + 40|0); - HEAP32[$pMem>>2] = $7; - $8 = HEAP32[$pMem>>2]|0; - _releaseMemArray($8,8); - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 20|0); - HEAP32[$10>>2] = 0; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 80|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)==(7); - if ($14) { - $15 = HEAP32[$db>>2]|0; - $16 = (($15) + 64|0); - HEAP8[$16>>0] = 1; - HEAP32[$0>>2] = 1; - $340 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($340|0); - } - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 32|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$nRow>>2] = $19; - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 88|0); - $22 = HEAP16[$21>>1]|0; - $23 = $22 & 3; - $24 = $23&65535; - $25 = ($24|0)==(1); - L5: do { - if ($25) { - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 8|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + 360|0); - HEAP32[$pSub>>2] = $29; - $30 = HEAP32[$pSub>>2]|0; - $31 = (($30) + 28|0); - $32 = HEAP16[$31>>1]|0; - $33 = $32&65535; - $34 = $33 & 16; - $35 = ($34|0)!=(0); - if ($35) { - $36 = HEAP32[$pSub>>2]|0; - $37 = (($36) + 24|0); - $38 = HEAP32[$37>>2]|0; - $39 = (($38>>>0) / 4)&-1; - HEAP32[$nSub>>2] = $39; - $40 = HEAP32[$pSub>>2]|0; - $41 = (($40) + 4|0); - $42 = HEAP32[$41>>2]|0; - HEAP32[$apSub>>2] = $42; - } - HEAP32[$i>>2] = 0; - while(1) { - $43 = HEAP32[$i>>2]|0; - $44 = HEAP32[$nSub>>2]|0; - $45 = ($43|0)<($44|0); - if (!($45)) { - break L5; - } - $46 = HEAP32[$i>>2]|0; - $47 = HEAP32[$apSub>>2]|0; - $48 = (($47) + ($46<<2)|0); - $49 = HEAP32[$48>>2]|0; - $50 = (($49) + 4|0); - $51 = HEAP32[$50>>2]|0; - $52 = HEAP32[$nRow>>2]|0; - $53 = (($52) + ($51))|0; - HEAP32[$nRow>>2] = $53; - $54 = HEAP32[$i>>2]|0; - $55 = (($54) + 1)|0; - HEAP32[$i>>2] = $55; - } - } - } while(0); - while(1) { - $56 = HEAP32[$1>>2]|0; - $57 = (($56) + 76|0); - $58 = HEAP32[$57>>2]|0; - $59 = (($58) + 1)|0; - HEAP32[$57>>2] = $59; - HEAP32[$i>>2] = $58; - $60 = HEAP32[$i>>2]|0; - $61 = HEAP32[$nRow>>2]|0; - $62 = ($60|0)<($61|0); - if (!($62)) { - break; - } - $63 = HEAP32[$1>>2]|0; - $64 = (($63) + 88|0); - $65 = HEAP16[$64>>1]|0; - $66 = $65 & 3; - $67 = $66&65535; - $68 = ($67|0)==(2); - if (!($68)) { - break; - } - $69 = HEAP32[$i>>2]|0; - $70 = HEAP32[$1>>2]|0; - $71 = (($70) + 4|0); - $72 = HEAP32[$71>>2]|0; - $73 = (($72) + (($69*20)|0)|0); - $74 = HEAP8[$73>>0]|0; - $75 = $74&255; - $76 = ($75|0)!=(157); - if (!($76)) { - break; - } - } - $77 = HEAP32[$i>>2]|0; - $78 = HEAP32[$nRow>>2]|0; - $79 = ($77|0)>=($78|0); - do { - if ($79) { - $80 = HEAP32[$1>>2]|0; - $81 = (($80) + 80|0); - HEAP32[$81>>2] = 0; - HEAP32[$rc>>2] = 101; - } else { - $82 = HEAP32[$db>>2]|0; - $83 = (($82) + 232|0); - $84 = HEAP32[$83>>2]|0; - $85 = ($84|0)!=(0); - if ($85) { - $86 = HEAP32[$1>>2]|0; - $87 = (($86) + 80|0); - HEAP32[$87>>2] = 9; - HEAP32[$rc>>2] = 1; - $88 = HEAP32[$1>>2]|0; - $89 = (($88) + 44|0); - $90 = HEAP32[$db>>2]|0; - $91 = HEAP32[$1>>2]|0; - $92 = (($91) + 80|0); - $93 = HEAP32[$92>>2]|0; - $94 = (_sqlite3ErrStr($93)|0); - HEAP32[$vararg_buffer2>>2] = $94; - _sqlite3SetString($89,$90,1456,$vararg_buffer2); - break; - } - $95 = HEAP32[$i>>2]|0; - $96 = HEAP32[$1>>2]|0; - $97 = (($96) + 32|0); - $98 = HEAP32[$97>>2]|0; - $99 = ($95|0)<($98|0); - if ($99) { - $100 = HEAP32[$i>>2]|0; - $101 = HEAP32[$1>>2]|0; - $102 = (($101) + 4|0); - $103 = HEAP32[$102>>2]|0; - $104 = (($103) + (($100*20)|0)|0); - HEAP32[$pOp>>2] = $104; - } else { - $105 = HEAP32[$1>>2]|0; - $106 = (($105) + 32|0); - $107 = HEAP32[$106>>2]|0; - $108 = HEAP32[$i>>2]|0; - $109 = (($108) - ($107))|0; - HEAP32[$i>>2] = $109; - HEAP32[$j>>2] = 0; - while(1) { - $110 = HEAP32[$i>>2]|0; - $111 = HEAP32[$j>>2]|0; - $112 = HEAP32[$apSub>>2]|0; - $113 = (($112) + ($111<<2)|0); - $114 = HEAP32[$113>>2]|0; - $115 = (($114) + 4|0); - $116 = HEAP32[$115>>2]|0; - $117 = ($110|0)>=($116|0); - if (!($117)) { - break; - } - $118 = HEAP32[$j>>2]|0; - $119 = HEAP32[$apSub>>2]|0; - $120 = (($119) + ($118<<2)|0); - $121 = HEAP32[$120>>2]|0; - $122 = (($121) + 4|0); - $123 = HEAP32[$122>>2]|0; - $124 = HEAP32[$i>>2]|0; - $125 = (($124) - ($123))|0; - HEAP32[$i>>2] = $125; - $126 = HEAP32[$j>>2]|0; - $127 = (($126) + 1)|0; - HEAP32[$j>>2] = $127; - } - $128 = HEAP32[$i>>2]|0; - $129 = HEAP32[$j>>2]|0; - $130 = HEAP32[$apSub>>2]|0; - $131 = (($130) + ($129<<2)|0); - $132 = HEAP32[$131>>2]|0; - $133 = HEAP32[$132>>2]|0; - $134 = (($133) + (($128*20)|0)|0); - HEAP32[$pOp>>2] = $134; - } - $135 = HEAP32[$1>>2]|0; - $136 = (($135) + 88|0); - $137 = HEAP16[$136>>1]|0; - $138 = $137 & 3; - $139 = $138&65535; - $140 = ($139|0)==(1); - if ($140) { - $141 = HEAP32[$pMem>>2]|0; - $142 = (($141) + 28|0); - HEAP16[$142>>1] = 4; - $143 = HEAP32[$i>>2]|0; - $144 = ($143|0)<(0); - $145 = $144 << 31 >> 31; - $146 = HEAP32[$pMem>>2]|0; - $147 = (($146) + 16|0); - $148 = $147; - $149 = $148; - HEAP32[$149>>2] = $143; - $150 = (($148) + 4)|0; - $151 = $150; - HEAP32[$151>>2] = $145; - $152 = HEAP32[$pMem>>2]|0; - $153 = (($152) + 40|0); - HEAP32[$pMem>>2] = $153; - $154 = HEAP32[$pMem>>2]|0; - $155 = (($154) + 28|0); - HEAP16[$155>>1] = 2562; - $156 = HEAP32[$pOp>>2]|0; - $157 = HEAP8[$156>>0]|0; - $158 = $157&255; - $159 = (_sqlite3OpcodeName($158)|0); - $160 = HEAP32[$pMem>>2]|0; - $161 = (($160) + 4|0); - HEAP32[$161>>2] = $159; - $162 = HEAP32[$pMem>>2]|0; - $163 = (($162) + 4|0); - $164 = HEAP32[$163>>2]|0; - $165 = (_sqlite3Strlen30($164)|0); - $166 = HEAP32[$pMem>>2]|0; - $167 = (($166) + 24|0); - HEAP32[$167>>2] = $165; - $168 = HEAP32[$pMem>>2]|0; - $169 = (($168) + 30|0); - HEAP8[$169>>0] = 1; - $170 = HEAP32[$pMem>>2]|0; - $171 = (($170) + 40|0); - HEAP32[$pMem>>2] = $171; - $172 = HEAP32[$pOp>>2]|0; - $173 = (($172) + 1|0); - $174 = HEAP8[$173>>0]|0; - $175 = $174 << 24 >> 24; - $176 = ($175|0)==(-18); - if ($176) { - $177 = HEAP32[$nSub>>2]|0; - $178 = (($177) + 1)|0; - $179 = $178<<2; - HEAP32[$nByte>>2] = $179; - HEAP32[$j1>>2] = 0; - while(1) { - $180 = HEAP32[$j1>>2]|0; - $181 = HEAP32[$nSub>>2]|0; - $182 = ($180|0)<($181|0); - if (!($182)) { - break; - } - $183 = HEAP32[$j1>>2]|0; - $184 = HEAP32[$apSub>>2]|0; - $185 = (($184) + ($183<<2)|0); - $186 = HEAP32[$185>>2]|0; - $187 = HEAP32[$pOp>>2]|0; - $188 = (($187) + 16|0); - $189 = HEAP32[$188>>2]|0; - $190 = ($186|0)==($189|0); - if ($190) { - break; - } - $191 = HEAP32[$j1>>2]|0; - $192 = (($191) + 1)|0; - HEAP32[$j1>>2] = $192; - } - $193 = HEAP32[$j1>>2]|0; - $194 = HEAP32[$nSub>>2]|0; - $195 = ($193|0)==($194|0); - if ($195) { - $196 = HEAP32[$pSub>>2]|0; - $197 = HEAP32[$nByte>>2]|0; - $198 = HEAP32[$nSub>>2]|0; - $199 = ($198|0)!=(0); - $200 = $199&1; - $201 = (_sqlite3VdbeMemGrow($196,$197,$200)|0); - $202 = (0)==($201|0); - if ($202) { - $203 = HEAP32[$pSub>>2]|0; - $204 = (($203) + 4|0); - $205 = HEAP32[$204>>2]|0; - HEAP32[$apSub>>2] = $205; - $206 = HEAP32[$pOp>>2]|0; - $207 = (($206) + 16|0); - $208 = HEAP32[$207>>2]|0; - $209 = HEAP32[$nSub>>2]|0; - $210 = (($209) + 1)|0; - HEAP32[$nSub>>2] = $210; - $211 = HEAP32[$apSub>>2]|0; - $212 = (($211) + ($209<<2)|0); - HEAP32[$212>>2] = $208; - $213 = HEAP32[$pSub>>2]|0; - $214 = (($213) + 28|0); - $215 = HEAP16[$214>>1]|0; - $216 = $215&65535; - $217 = $216 | 16; - $218 = $217&65535; - HEAP16[$214>>1] = $218; - $219 = HEAP32[$nSub>>2]|0; - $220 = $219<<2; - $221 = HEAP32[$pSub>>2]|0; - $222 = (($221) + 24|0); - HEAP32[$222>>2] = $220; - } - } - } - } - $223 = HEAP32[$pMem>>2]|0; - $224 = (($223) + 28|0); - HEAP16[$224>>1] = 4; - $225 = HEAP32[$pOp>>2]|0; - $226 = (($225) + 4|0); - $227 = HEAP32[$226>>2]|0; - $228 = ($227|0)<(0); - $229 = $228 << 31 >> 31; - $230 = HEAP32[$pMem>>2]|0; - $231 = (($230) + 16|0); - $232 = $231; - $233 = $232; - HEAP32[$233>>2] = $227; - $234 = (($232) + 4)|0; - $235 = $234; - HEAP32[$235>>2] = $229; - $236 = HEAP32[$pMem>>2]|0; - $237 = (($236) + 40|0); - HEAP32[$pMem>>2] = $237; - $238 = HEAP32[$pMem>>2]|0; - $239 = (($238) + 28|0); - HEAP16[$239>>1] = 4; - $240 = HEAP32[$pOp>>2]|0; - $241 = (($240) + 8|0); - $242 = HEAP32[$241>>2]|0; - $243 = ($242|0)<(0); - $244 = $243 << 31 >> 31; - $245 = HEAP32[$pMem>>2]|0; - $246 = (($245) + 16|0); - $247 = $246; - $248 = $247; - HEAP32[$248>>2] = $242; - $249 = (($247) + 4)|0; - $250 = $249; - HEAP32[$250>>2] = $244; - $251 = HEAP32[$pMem>>2]|0; - $252 = (($251) + 40|0); - HEAP32[$pMem>>2] = $252; - $253 = HEAP32[$pMem>>2]|0; - $254 = (($253) + 28|0); - HEAP16[$254>>1] = 4; - $255 = HEAP32[$pOp>>2]|0; - $256 = (($255) + 12|0); - $257 = HEAP32[$256>>2]|0; - $258 = ($257|0)<(0); - $259 = $258 << 31 >> 31; - $260 = HEAP32[$pMem>>2]|0; - $261 = (($260) + 16|0); - $262 = $261; - $263 = $262; - HEAP32[$263>>2] = $257; - $264 = (($262) + 4)|0; - $265 = $264; - HEAP32[$265>>2] = $259; - $266 = HEAP32[$pMem>>2]|0; - $267 = (($266) + 40|0); - HEAP32[$pMem>>2] = $267; - $268 = HEAP32[$pMem>>2]|0; - $269 = (_sqlite3VdbeMemGrow($268,32,0)|0); - $270 = ($269|0)!=(0); - if ($270) { - HEAP32[$0>>2] = 1; - $340 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($340|0); - } - $271 = HEAP32[$pMem>>2]|0; - $272 = (($271) + 28|0); - HEAP16[$272>>1] = 514; - $273 = HEAP32[$pOp>>2]|0; - $274 = HEAP32[$pMem>>2]|0; - $275 = (($274) + 4|0); - $276 = HEAP32[$275>>2]|0; - $277 = (_displayP4($273,$276,32)|0); - HEAP32[$zP4>>2] = $277; - $278 = HEAP32[$zP4>>2]|0; - $279 = HEAP32[$pMem>>2]|0; - $280 = (($279) + 4|0); - $281 = HEAP32[$280>>2]|0; - $282 = ($278|0)!=($281|0); - $283 = HEAP32[$pMem>>2]|0; - if ($282) { - $284 = HEAP32[$zP4>>2]|0; - (_sqlite3VdbeMemSetStr($283,$284,-1,1,0)|0); - } else { - $285 = (($283) + 4|0); - $286 = HEAP32[$285>>2]|0; - $287 = (_sqlite3Strlen30($286)|0); - $288 = HEAP32[$pMem>>2]|0; - $289 = (($288) + 24|0); - HEAP32[$289>>2] = $287; - $290 = HEAP32[$pMem>>2]|0; - $291 = (($290) + 30|0); - HEAP8[$291>>0] = 1; - } - $292 = HEAP32[$pMem>>2]|0; - $293 = (($292) + 40|0); - HEAP32[$pMem>>2] = $293; - $294 = HEAP32[$1>>2]|0; - $295 = (($294) + 88|0); - $296 = HEAP16[$295>>1]|0; - $297 = $296 & 3; - $298 = $297&65535; - $299 = ($298|0)==(1); - do { - if ($299) { - $300 = HEAP32[$pMem>>2]|0; - $301 = (_sqlite3VdbeMemGrow($300,4,0)|0); - $302 = ($301|0)!=(0); - if (!($302)) { - $303 = HEAP32[$pMem>>2]|0; - $304 = (($303) + 28|0); - HEAP16[$304>>1] = 514; - $305 = HEAP32[$pMem>>2]|0; - $306 = (($305) + 24|0); - HEAP32[$306>>2] = 2; - $307 = HEAP32[$pMem>>2]|0; - $308 = (($307) + 4|0); - $309 = HEAP32[$308>>2]|0; - $310 = HEAP32[$pOp>>2]|0; - $311 = (($310) + 3|0); - $312 = HEAP8[$311>>0]|0; - $313 = $312&255; - HEAP32[$vararg_buffer2>>2] = $313; - (_sqlite3_snprintf(3,$309,34344,$vararg_buffer2)|0); - $314 = HEAP32[$pMem>>2]|0; - $315 = (($314) + 30|0); - HEAP8[$315>>0] = 1; - $316 = HEAP32[$pMem>>2]|0; - $317 = (($316) + 40|0); - HEAP32[$pMem>>2] = $317; - $318 = HEAP32[$pMem>>2]|0; - $319 = (($318) + 28|0); - HEAP16[$319>>1] = 1; - break; - } - HEAP32[$0>>2] = 1; - $340 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($340|0); - } - } while(0); - $320 = HEAP32[$1>>2]|0; - $321 = (($320) + 88|0); - $322 = HEAP16[$321>>1]|0; - $323 = $322 & 3; - $324 = $323&65535; - $325 = (($324) - 1)|0; - $326 = $325<<2; - $327 = (8 - ($326))|0; - $328 = $327&65535; - $329 = HEAP32[$1>>2]|0; - $330 = (($329) + 84|0); - HEAP16[$330>>1] = $328; - $331 = HEAP32[$1>>2]|0; - $332 = (($331) + 8|0); - $333 = HEAP32[$332>>2]|0; - $334 = (($333) + 40|0); - $335 = HEAP32[$1>>2]|0; - $336 = (($335) + 20|0); - HEAP32[$336>>2] = $334; - $337 = HEAP32[$1>>2]|0; - $338 = (($337) + 80|0); - HEAP32[$338>>2] = 0; - HEAP32[$rc>>2] = 100; - } - } while(0); - $339 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $339; - $340 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($340|0); -} -function _sqlite3VdbeExec($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0; - var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0; - var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0; - var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0; - var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0; - var $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0.0, $1093 = 0, $1094 = 0.0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0.0, $1099 = 0.0, $11 = 0, $110 = 0, $1100 = 0.0, $1101 = 0.0, $1102 = 0.0, $1103 = 0.0, $1104 = 0.0; - var $1105 = 0.0, $1106 = 0.0, $1107 = 0.0, $1108 = 0, $1109 = 0.0, $111 = 0, $1110 = 0.0, $1111 = 0.0, $1112 = 0.0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0.0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0; - var $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0; - var $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0; - var $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0.0, $1163 = 0.0, $1164 = 0, $1165 = 0, $1166 = 0.0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0; - var $1178 = 0, $1179 = 0, $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0; - var $1196 = 0, $1197 = 0, $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0; - var $1213 = 0, $1214 = 0, $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0; - var $1231 = 0, $1232 = 0, $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0; - var $125 = 0, $1250 = 0, $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0, $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0; - var $1268 = 0, $1269 = 0, $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0, $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0; - var $1286 = 0, $1287 = 0, $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0, $1292 = 0, $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, $1299 = 0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0; - var $1303 = 0, $1304 = 0, $1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0, $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0; - var $1321 = 0, $1322 = 0, $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0, $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 0, $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0; - var $134 = 0, $1340 = 0, $1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 0, $1346 = 0, $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, $1352 = 0, $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0; - var $1358 = 0, $1359 = 0, $136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 0, $1364 = 0, $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, $1370 = 0, $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0; - var $1376 = 0, $1377 = 0, $1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 0, $1382 = 0, $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, $1389 = 0, $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0; - var $1394 = 0, $1395 = 0, $1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 0, $140 = 0, $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, $1406 = 0, $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0; - var $1411 = 0, $1412 = 0, $1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 0, $1418 = 0, $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, $1424 = 0, $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0; - var $143 = 0, $1430 = 0, $1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 0, $1436 = 0, $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, $1442 = 0, $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0; - var $1448 = 0, $1449 = 0, $145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 0, $1454 = 0, $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, $1460 = 0, $1461 = 0, $1462 = 0, $1463 = 0, $1464 = 0, $1465 = 0; - var $1466 = 0, $1467 = 0, $1468 = 0, $1469 = 0, $147 = 0, $1470 = 0, $1471 = 0, $1472 = 0, $1473 = 0, $1474 = 0, $1475 = 0, $1476 = 0, $1477 = 0, $1478 = 0, $1479 = 0, $148 = 0, $1480 = 0, $1481 = 0, $1482 = 0, $1483 = 0; - var $1484 = 0, $1485 = 0, $1486 = 0, $1487 = 0, $1488 = 0, $1489 = 0, $149 = 0, $1490 = 0, $1491 = 0, $1492 = 0, $1493 = 0, $1494 = 0, $1495 = 0, $1496 = 0, $1497 = 0, $1498 = 0, $1499 = 0, $15 = 0, $150 = 0, $1500 = 0; - var $1501 = 0, $1502 = 0, $1503 = 0, $1504 = 0, $1505 = 0, $1506 = 0, $1507 = 0, $1508 = 0, $1509 = 0, $151 = 0, $1510 = 0, $1511 = 0, $1512 = 0, $1513 = 0, $1514 = 0, $1515 = 0, $1516 = 0, $1517 = 0, $1518 = 0, $1519 = 0; - var $152 = 0, $1520 = 0, $1521 = 0, $1522 = 0, $1523 = 0, $1524 = 0, $1525 = 0, $1526 = 0, $1527 = 0, $1528 = 0, $1529 = 0, $153 = 0, $1530 = 0, $1531 = 0, $1532 = 0, $1533 = 0, $1534 = 0, $1535 = 0, $1536 = 0, $1537 = 0; - var $1538 = 0, $1539 = 0, $154 = 0, $1540 = 0, $1541 = 0, $1542 = 0, $1543 = 0, $1544 = 0, $1545 = 0, $1546 = 0, $1547 = 0, $1548 = 0, $1549 = 0, $155 = 0, $1550 = 0, $1551 = 0, $1552 = 0, $1553 = 0, $1554 = 0, $1555 = 0; - var $1556 = 0, $1557 = 0, $1558 = 0, $1559 = 0, $156 = 0, $1560 = 0, $1561 = 0, $1562 = 0, $1563 = 0, $1564 = 0, $1565 = 0, $1566 = 0, $1567 = 0, $1568 = 0, $1569 = 0, $157 = 0, $1570 = 0, $1571 = 0, $1572 = 0, $1573 = 0; - var $1574 = 0, $1575 = 0, $1576 = 0, $1577 = 0, $1578 = 0, $1579 = 0, $158 = 0, $1580 = 0, $1581 = 0, $1582 = 0, $1583 = 0, $1584 = 0, $1585 = 0, $1586 = 0, $1587 = 0, $1588 = 0, $1589 = 0, $159 = 0, $1590 = 0, $1591 = 0; - var $1592 = 0, $1593 = 0, $1594 = 0, $1595 = 0, $1596 = 0, $1597 = 0, $1598 = 0, $1599 = 0, $16 = 0, $160 = 0, $1600 = 0, $1601 = 0, $1602 = 0, $1603 = 0, $1604 = 0, $1605 = 0, $1606 = 0, $1607 = 0, $1608 = 0, $1609 = 0; - var $161 = 0, $1610 = 0, $1611 = 0, $1612 = 0, $1613 = 0, $1614 = 0, $1615 = 0, $1616 = 0, $1617 = 0, $1618 = 0, $1619 = 0, $162 = 0, $1620 = 0, $1621 = 0, $1622 = 0, $1623 = 0, $1624 = 0, $1625 = 0, $1626 = 0, $1627 = 0; - var $1628 = 0, $1629 = 0, $163 = 0, $1630 = 0, $1631 = 0, $1632 = 0, $1633 = 0, $1634 = 0, $1635 = 0, $1636 = 0, $1637 = 0, $1638 = 0, $1639 = 0, $164 = 0, $1640 = 0, $1641 = 0, $1642 = 0, $1643 = 0, $1644 = 0, $1645 = 0; - var $1646 = 0, $1647 = 0, $1648 = 0, $1649 = 0, $165 = 0, $1650 = 0, $1651 = 0, $1652 = 0, $1653 = 0, $1654 = 0, $1655 = 0, $1656 = 0, $1657 = 0, $1658 = 0, $1659 = 0, $166 = 0, $1660 = 0, $1661 = 0, $1662 = 0, $1663 = 0; - var $1664 = 0, $1665 = 0, $1666 = 0, $1667 = 0, $1668 = 0, $1669 = 0, $167 = 0, $1670 = 0, $1671 = 0, $1672 = 0, $1673 = 0, $1674 = 0, $1675 = 0, $1676 = 0, $1677 = 0, $1678 = 0, $1679 = 0, $168 = 0, $1680 = 0, $1681 = 0; - var $1682 = 0, $1683 = 0, $1684 = 0, $1685 = 0, $1686 = 0, $1687 = 0, $1688 = 0, $1689 = 0, $169 = 0, $1690 = 0, $1691 = 0, $1692 = 0, $1693 = 0, $1694 = 0, $1695 = 0, $1696 = 0, $1697 = 0, $1698 = 0, $1699 = 0, $17 = 0; - var $170 = 0, $1700 = 0, $1701 = 0, $1702 = 0, $1703 = 0, $1704 = 0, $1705 = 0, $1706 = 0, $1707 = 0, $1708 = 0, $1709 = 0, $171 = 0, $1710 = 0, $1711 = 0, $1712 = 0, $1713 = 0, $1714 = 0, $1715 = 0, $1716 = 0, $1717 = 0; - var $1718 = 0, $1719 = 0, $172 = 0, $1720 = 0, $1721 = 0, $1722 = 0, $1723 = 0, $1724 = 0, $1725 = 0, $1726 = 0, $1727 = 0, $1728 = 0, $1729 = 0, $173 = 0, $1730 = 0, $1731 = 0, $1732 = 0, $1733 = 0, $1734 = 0, $1735 = 0; - var $1736 = 0, $1737 = 0, $1738 = 0, $1739 = 0, $174 = 0, $1740 = 0, $1741 = 0, $1742 = 0, $1743 = 0, $1744 = 0, $1745 = 0, $1746 = 0, $1747 = 0, $1748 = 0, $1749 = 0, $175 = 0, $1750 = 0, $1751 = 0, $1752 = 0, $1753 = 0; - var $1754 = 0, $1755 = 0, $1756 = 0, $1757 = 0, $1758 = 0, $1759 = 0, $176 = 0, $1760 = 0, $1761 = 0, $1762 = 0, $1763 = 0, $1764 = 0, $1765 = 0, $1766 = 0, $1767 = 0, $1768 = 0, $1769 = 0, $177 = 0, $1770 = 0, $1771 = 0; - var $1772 = 0, $1773 = 0, $1774 = 0, $1775 = 0, $1776 = 0, $1777 = 0, $1778 = 0, $1779 = 0, $178 = 0, $1780 = 0, $1781 = 0, $1782 = 0, $1783 = 0, $1784 = 0, $1785 = 0, $1786 = 0, $1787 = 0, $1788 = 0, $1789 = 0, $179 = 0; - var $1790 = 0, $1791 = 0, $1792 = 0, $1793 = 0, $1794 = 0, $1795 = 0, $1796 = 0, $1797 = 0, $1798 = 0, $1799 = 0, $18 = 0, $180 = 0, $1800 = 0, $1801 = 0, $1802 = 0, $1803 = 0, $1804 = 0, $1805 = 0, $1806 = 0, $1807 = 0; - var $1808 = 0, $1809 = 0, $181 = 0, $1810 = 0, $1811 = 0, $1812 = 0, $1813 = 0, $1814 = 0, $1815 = 0, $1816 = 0, $1817 = 0, $1818 = 0, $1819 = 0, $182 = 0, $1820 = 0, $1821 = 0, $1822 = 0, $1823 = 0, $1824 = 0, $1825 = 0; - var $1826 = 0, $1827 = 0, $1828 = 0, $1829 = 0, $183 = 0, $1830 = 0, $1831 = 0, $1832 = 0, $1833 = 0, $1834 = 0, $1835 = 0, $1836 = 0, $1837 = 0, $1838 = 0, $1839 = 0, $184 = 0, $1840 = 0, $1841 = 0, $1842 = 0, $1843 = 0; - var $1844 = 0, $1845 = 0, $1846 = 0, $1847 = 0, $1848 = 0, $1849 = 0, $185 = 0, $1850 = 0, $1851 = 0, $1852 = 0, $1853 = 0, $1854 = 0, $1855 = 0, $1856 = 0, $1857 = 0, $1858 = 0, $1859 = 0, $186 = 0, $1860 = 0, $1861 = 0; - var $1862 = 0, $1863 = 0, $1864 = 0, $1865 = 0, $1866 = 0, $1867 = 0, $1868 = 0, $1869 = 0, $187 = 0, $1870 = 0, $1871 = 0, $1872 = 0, $1873 = 0, $1874 = 0, $1875 = 0, $1876 = 0, $1877 = 0, $1878 = 0, $1879 = 0, $188 = 0; - var $1880 = 0, $1881 = 0, $1882 = 0, $1883 = 0, $1884 = 0, $1885 = 0, $1886 = 0, $1887 = 0, $1888 = 0, $1889 = 0, $189 = 0, $1890 = 0, $1891 = 0, $1892 = 0, $1893 = 0, $1894 = 0, $1895 = 0, $1896 = 0, $1897 = 0, $1898 = 0; - var $1899 = 0, $19 = 0, $190 = 0, $1900 = 0, $1901 = 0, $1902 = 0, $1903 = 0, $1904 = 0, $1905 = 0, $1906 = 0, $1907 = 0, $1908 = 0, $1909 = 0, $191 = 0, $1910 = 0, $1911 = 0, $1912 = 0, $1913 = 0, $1914 = 0, $1915 = 0; - var $1916 = 0, $1917 = 0, $1918 = 0, $1919 = 0, $192 = 0, $1920 = 0, $1921 = 0, $1922 = 0, $1923 = 0, $1924 = 0, $1925 = 0, $1926 = 0, $1927 = 0, $1928 = 0, $1929 = 0, $193 = 0, $1930 = 0, $1931 = 0, $1932 = 0, $1933 = 0; - var $1934 = 0, $1935 = 0, $1936 = 0, $1937 = 0, $1938 = 0, $1939 = 0, $194 = 0, $1940 = 0, $1941 = 0, $1942 = 0, $1943 = 0, $1944 = 0, $1945 = 0, $1946 = 0, $1947 = 0, $1948 = 0, $1949 = 0, $195 = 0, $1950 = 0, $1951 = 0; - var $1952 = 0, $1953 = 0, $1954 = 0, $1955 = 0, $1956 = 0, $1957 = 0, $1958 = 0, $1959 = 0, $196 = 0, $1960 = 0, $1961 = 0, $1962 = 0, $1963 = 0, $1964 = 0, $1965 = 0, $1966 = 0, $1967 = 0, $1968 = 0, $1969 = 0, $197 = 0; - var $1970 = 0, $1971 = 0, $1972 = 0, $1973 = 0, $1974 = 0, $1975 = 0, $1976 = 0, $1977 = 0, $1978 = 0, $1979 = 0, $198 = 0, $1980 = 0, $1981 = 0, $1982 = 0, $1983 = 0, $1984 = 0, $1985 = 0, $1986 = 0, $1987 = 0, $1988 = 0; - var $1989 = 0, $199 = 0, $1990 = 0, $1991 = 0, $1992 = 0, $1993 = 0, $1994 = 0, $1995 = 0, $1996 = 0, $1997 = 0, $1998 = 0, $1999 = 0, $2 = 0, $20 = 0, $200 = 0, $2000 = 0, $2001 = 0, $2002 = 0, $2003 = 0, $2004 = 0; - var $2005 = 0, $2006 = 0, $2007 = 0, $2008 = 0, $2009 = 0, $201 = 0, $2010 = 0, $2011 = 0, $2012 = 0, $2013 = 0, $2014 = 0, $2015 = 0, $2016 = 0, $2017 = 0, $2018 = 0, $2019 = 0, $202 = 0, $2020 = 0, $2021 = 0, $2022 = 0; - var $2023 = 0, $2024 = 0, $2025 = 0, $2026 = 0, $2027 = 0, $2028 = 0, $2029 = 0, $203 = 0, $2030 = 0, $2031 = 0, $2032 = 0, $2033 = 0, $2034 = 0, $2035 = 0, $2036 = 0, $2037 = 0, $2038 = 0, $2039 = 0, $204 = 0, $2040 = 0; - var $2041 = 0, $2042 = 0, $2043 = 0, $2044 = 0, $2045 = 0, $2046 = 0, $2047 = 0, $2048 = 0, $2049 = 0, $205 = 0, $2050 = 0, $2051 = 0, $2052 = 0, $2053 = 0, $2054 = 0, $2055 = 0, $2056 = 0, $2057 = 0, $2058 = 0, $2059 = 0; - var $206 = 0, $2060 = 0, $2061 = 0, $2062 = 0, $2063 = 0, $2064 = 0, $2065 = 0, $2066 = 0, $2067 = 0, $2068 = 0, $2069 = 0, $207 = 0, $2070 = 0, $2071 = 0, $2072 = 0, $2073 = 0, $2074 = 0, $2075 = 0, $2076 = 0, $2077 = 0; - var $2078 = 0, $2079 = 0, $208 = 0, $2080 = 0, $2081 = 0, $2082 = 0, $2083 = 0, $2084 = 0, $2085 = 0, $2086 = 0, $2087 = 0, $2088 = 0, $2089 = 0, $209 = 0, $2090 = 0, $2091 = 0, $2092 = 0, $2093 = 0, $2094 = 0, $2095 = 0; - var $2096 = 0, $2097 = 0, $2098 = 0, $2099 = 0, $21 = 0, $210 = 0, $2100 = 0, $2101 = 0, $2102 = 0, $2103 = 0, $2104 = 0, $2105 = 0, $2106 = 0, $2107 = 0, $2108 = 0, $2109 = 0, $211 = 0, $2110 = 0, $2111 = 0, $2112 = 0; - var $2113 = 0, $2114 = 0, $2115 = 0, $2116 = 0, $2117 = 0, $2118 = 0, $2119 = 0, $212 = 0, $2120 = 0, $2121 = 0, $2122 = 0, $2123 = 0, $2124 = 0, $2125 = 0, $2126 = 0, $2127 = 0, $2128 = 0, $2129 = 0, $213 = 0, $2130 = 0; - var $2131 = 0, $2132 = 0, $2133 = 0, $2134 = 0, $2135 = 0, $2136 = 0, $2137 = 0, $2138 = 0, $2139 = 0, $214 = 0, $2140 = 0, $2141 = 0, $2142 = 0, $2143 = 0, $2144 = 0, $2145 = 0, $2146 = 0, $2147 = 0, $2148 = 0, $2149 = 0; - var $215 = 0, $2150 = 0, $2151 = 0, $2152 = 0, $2153 = 0, $2154 = 0, $2155 = 0, $2156 = 0, $2157 = 0, $2158 = 0, $2159 = 0, $216 = 0, $2160 = 0, $2161 = 0, $2162 = 0, $2163 = 0, $2164 = 0, $2165 = 0, $2166 = 0, $2167 = 0; - var $2168 = 0, $2169 = 0, $217 = 0, $2170 = 0.0, $2171 = 0, $2172 = 0, $2173 = 0, $2174 = 0, $2175 = 0, $2176 = 0, $2177 = 0, $2178 = 0, $2179 = 0, $218 = 0, $2180 = 0, $2181 = 0, $2182 = 0, $2183 = 0, $2184 = 0, $2185 = 0; - var $2186 = 0, $2187 = 0, $2188 = 0, $2189 = 0, $219 = 0, $2190 = 0, $2191 = 0, $2192 = 0, $2193 = 0, $2194 = 0, $2195 = 0, $2196 = 0, $2197 = 0, $2198 = 0, $2199 = 0, $22 = 0, $220 = 0, $2200 = 0, $2201 = 0, $2202 = 0; - var $2203 = 0, $2204 = 0, $2205 = 0, $2206 = 0, $2207 = 0, $2208 = 0, $2209 = 0, $221 = 0, $2210 = 0, $2211 = 0, $2212 = 0, $2213 = 0, $2214 = 0, $2215 = 0, $2216 = 0, $2217 = 0, $2218 = 0, $2219 = 0, $222 = 0, $2220 = 0; - var $2221 = 0, $2222 = 0, $2223 = 0, $2224 = 0, $2225 = 0, $2226 = 0, $2227 = 0, $2228 = 0, $2229 = 0, $223 = 0, $2230 = 0, $2231 = 0, $2232 = 0, $2233 = 0, $2234 = 0, $2235 = 0, $2236 = 0, $2237 = 0, $2238 = 0, $2239 = 0; - var $224 = 0, $2240 = 0, $2241 = 0, $2242 = 0, $2243 = 0, $2244 = 0, $2245 = 0, $2246 = 0, $2247 = 0, $2248 = 0, $2249 = 0, $225 = 0, $2250 = 0, $2251 = 0, $2252 = 0, $2253 = 0, $2254 = 0, $2255 = 0, $2256 = 0, $2257 = 0; - var $2258 = 0, $2259 = 0, $226 = 0, $2260 = 0, $2261 = 0, $2262 = 0, $2263 = 0, $2264 = 0, $2265 = 0, $2266 = 0, $2267 = 0, $2268 = 0, $2269 = 0, $227 = 0, $2270 = 0, $2271 = 0, $2272 = 0, $2273 = 0, $2274 = 0, $2275 = 0; - var $2276 = 0, $2277 = 0, $2278 = 0, $2279 = 0, $228 = 0, $2280 = 0, $2281 = 0, $2282 = 0, $2283 = 0, $2284 = 0, $2285 = 0, $2286 = 0, $2287 = 0, $2288 = 0, $2289 = 0, $229 = 0, $2290 = 0, $2291 = 0, $2292 = 0, $2293 = 0; - var $2294 = 0, $2295 = 0, $2296 = 0, $2297 = 0, $2298 = 0, $2299 = 0, $23 = 0, $230 = 0, $2300 = 0, $2301 = 0, $2302 = 0, $2303 = 0, $2304 = 0, $2305 = 0, $2306 = 0, $2307 = 0, $2308 = 0, $2309 = 0, $231 = 0, $2310 = 0; - var $2311 = 0, $2312 = 0, $2313 = 0, $2314 = 0, $2315 = 0, $2316 = 0, $2317 = 0, $2318 = 0, $2319 = 0, $232 = 0, $2320 = 0, $2321 = 0, $2322 = 0, $2323 = 0, $2324 = 0, $2325 = 0, $2326 = 0, $2327 = 0, $2328 = 0, $2329 = 0; - var $233 = 0, $2330 = 0, $2331 = 0, $2332 = 0, $2333 = 0, $2334 = 0, $2335 = 0, $2336 = 0, $2337 = 0, $2338 = 0, $2339 = 0, $234 = 0, $2340 = 0, $2341 = 0, $2342 = 0, $2343 = 0, $2344 = 0, $2345 = 0, $2346 = 0, $2347 = 0; - var $2348 = 0, $2349 = 0, $235 = 0, $2350 = 0, $2351 = 0, $2352 = 0, $2353 = 0, $2354 = 0, $2355 = 0, $2356 = 0, $2357 = 0, $2358 = 0, $2359 = 0, $236 = 0, $2360 = 0, $2361 = 0, $2362 = 0, $2363 = 0, $2364 = 0, $2365 = 0; - var $2366 = 0, $2367 = 0, $2368 = 0, $2369 = 0, $237 = 0, $2370 = 0, $2371 = 0, $2372 = 0, $2373 = 0, $2374 = 0, $2375 = 0, $2376 = 0, $2377 = 0, $2378 = 0, $2379 = 0, $238 = 0, $2380 = 0, $2381 = 0, $2382 = 0, $2383 = 0; - var $2384 = 0, $2385 = 0, $2386 = 0, $2387 = 0, $2388 = 0, $2389 = 0, $239 = 0, $2390 = 0, $2391 = 0, $2392 = 0, $2393 = 0, $2394 = 0, $2395 = 0, $2396 = 0, $2397 = 0, $2398 = 0, $2399 = 0, $24 = 0, $240 = 0, $2400 = 0; - var $2401 = 0, $2402 = 0, $2403 = 0, $2404 = 0, $2405 = 0, $2406 = 0, $2407 = 0, $2408 = 0, $2409 = 0, $241 = 0, $2410 = 0, $2411 = 0, $2412 = 0, $2413 = 0, $2414 = 0, $2415 = 0, $2416 = 0, $2417 = 0, $2418 = 0, $2419 = 0; - var $242 = 0, $2420 = 0, $2421 = 0, $2422 = 0, $2423 = 0, $2424 = 0, $2425 = 0, $2426 = 0, $2427 = 0, $2428 = 0, $2429 = 0, $243 = 0, $2430 = 0, $2431 = 0, $2432 = 0, $2433 = 0, $2434 = 0, $2435 = 0, $2436 = 0, $2437 = 0; - var $2438 = 0, $2439 = 0, $244 = 0, $2440 = 0, $2441 = 0, $2442 = 0, $2443 = 0, $2444 = 0, $2445 = 0, $2446 = 0, $2447 = 0, $2448 = 0, $2449 = 0, $245 = 0, $2450 = 0, $2451 = 0, $2452 = 0, $2453 = 0, $2454 = 0, $2455 = 0; - var $2456 = 0, $2457 = 0, $2458 = 0, $2459 = 0, $246 = 0, $2460 = 0, $2461 = 0, $2462 = 0, $2463 = 0, $2464 = 0, $2465 = 0, $2466 = 0, $2467 = 0, $2468 = 0, $2469 = 0, $247 = 0, $2470 = 0, $2471 = 0, $2472 = 0, $2473 = 0; - var $2474 = 0, $2475 = 0, $2476 = 0, $2477 = 0, $2478 = 0, $2479 = 0, $248 = 0, $2480 = 0, $2481 = 0, $2482 = 0, $2483 = 0, $2484 = 0, $2485 = 0, $2486 = 0, $2487 = 0, $2488 = 0, $2489 = 0, $249 = 0, $2490 = 0, $2491 = 0; - var $2492 = 0, $2493 = 0, $2494 = 0, $2495 = 0, $2496 = 0, $2497 = 0, $2498 = 0, $2499 = 0, $25 = 0, $250 = 0, $2500 = 0, $2501 = 0, $2502 = 0, $2503 = 0, $2504 = 0, $2505 = 0, $2506 = 0, $2507 = 0, $2508 = 0, $2509 = 0; - var $251 = 0, $2510 = 0, $2511 = 0, $2512 = 0, $2513 = 0, $2514 = 0, $2515 = 0, $2516 = 0, $2517 = 0, $2518 = 0, $2519 = 0, $252 = 0, $2520 = 0, $2521 = 0, $2522 = 0, $2523 = 0, $2524 = 0, $2525 = 0, $2526 = 0, $2527 = 0; - var $2528 = 0, $2529 = 0, $253 = 0, $2530 = 0, $2531 = 0, $2532 = 0, $2533 = 0, $2534 = 0, $2535 = 0, $2536 = 0, $2537 = 0, $2538 = 0, $2539 = 0, $254 = 0, $2540 = 0, $2541 = 0, $2542 = 0, $2543 = 0, $2544 = 0, $2545 = 0; - var $2546 = 0, $2547 = 0, $2548 = 0, $2549 = 0, $255 = 0, $2550 = 0, $2551 = 0, $2552 = 0, $2553 = 0, $2554 = 0, $2555 = 0, $2556 = 0, $2557 = 0, $2558 = 0, $2559 = 0, $256 = 0, $2560 = 0, $2561 = 0, $2562 = 0, $2563 = 0; - var $2564 = 0, $2565 = 0, $2566 = 0, $2567 = 0, $2568 = 0, $2569 = 0, $257 = 0, $2570 = 0, $2571 = 0, $2572 = 0, $2573 = 0, $2574 = 0, $2575 = 0, $2576 = 0, $2577 = 0, $2578 = 0, $2579 = 0, $258 = 0, $2580 = 0, $2581 = 0; - var $2582 = 0, $2583 = 0, $2584 = 0, $2585 = 0, $2586 = 0, $2587 = 0, $2588 = 0, $2589 = 0, $259 = 0, $2590 = 0, $2591 = 0, $2592 = 0, $2593 = 0, $2594 = 0, $2595 = 0, $2596 = 0, $2597 = 0, $2598 = 0, $2599 = 0, $26 = 0; - var $260 = 0, $2600 = 0, $2601 = 0, $2602 = 0, $2603 = 0, $2604 = 0, $2605 = 0, $2606 = 0, $2607 = 0, $2608 = 0, $2609 = 0, $261 = 0, $2610 = 0, $2611 = 0, $2612 = 0, $2613 = 0, $2614 = 0, $2615 = 0, $2616 = 0, $2617 = 0; - var $2618 = 0, $2619 = 0, $262 = 0, $2620 = 0, $2621 = 0, $2622 = 0, $2623 = 0, $2624 = 0, $2625 = 0, $2626 = 0, $2627 = 0, $2628 = 0, $2629 = 0, $263 = 0, $2630 = 0, $2631 = 0, $2632 = 0, $2633 = 0, $2634 = 0, $2635 = 0; - var $2636 = 0, $2637 = 0, $2638 = 0, $2639 = 0, $264 = 0, $2640 = 0, $2641 = 0, $2642 = 0, $2643 = 0, $2644 = 0, $2645 = 0, $2646 = 0, $2647 = 0, $2648 = 0, $2649 = 0, $265 = 0, $2650 = 0, $2651 = 0, $2652 = 0, $2653 = 0; - var $2654 = 0, $2655 = 0, $2656 = 0, $2657 = 0, $2658 = 0, $2659 = 0, $266 = 0, $2660 = 0, $2661 = 0, $2662 = 0, $2663 = 0, $2664 = 0, $2665 = 0, $2666 = 0, $2667 = 0, $2668 = 0, $2669 = 0, $267 = 0, $2670 = 0, $2671 = 0; - var $2672 = 0, $2673 = 0, $2674 = 0, $2675 = 0, $2676 = 0, $2677 = 0, $2678 = 0, $2679 = 0, $268 = 0, $2680 = 0, $2681 = 0, $2682 = 0, $2683 = 0, $2684 = 0, $2685 = 0, $2686 = 0, $2687 = 0, $2688 = 0, $2689 = 0, $269 = 0; - var $2690 = 0, $2691 = 0, $2692 = 0, $2693 = 0, $2694 = 0, $2695 = 0, $2696 = 0, $2697 = 0, $2698 = 0, $2699 = 0, $27 = 0, $270 = 0, $2700 = 0, $2701 = 0, $2702 = 0, $2703 = 0, $2704 = 0, $2705 = 0, $2706 = 0, $2707 = 0; - var $2708 = 0, $2709 = 0, $271 = 0, $2710 = 0, $2711 = 0, $2712 = 0, $2713 = 0, $2714 = 0, $2715 = 0, $2716 = 0, $2717 = 0, $2718 = 0, $2719 = 0, $272 = 0, $2720 = 0, $2721 = 0, $2722 = 0, $2723 = 0, $2724 = 0, $2725 = 0; - var $2726 = 0, $2727 = 0, $2728 = 0, $2729 = 0, $273 = 0, $2730 = 0, $2731 = 0, $2732 = 0, $2733 = 0, $2734 = 0, $2735 = 0, $2736 = 0, $2737 = 0, $2738 = 0, $2739 = 0, $274 = 0, $2740 = 0, $2741 = 0, $2742 = 0, $2743 = 0; - var $2744 = 0, $2745 = 0, $2746 = 0, $2747 = 0, $2748 = 0, $2749 = 0, $275 = 0, $2750 = 0, $2751 = 0, $2752 = 0, $2753 = 0, $2754 = 0, $2755 = 0, $2756 = 0, $2757 = 0, $2758 = 0, $2759 = 0, $276 = 0, $2760 = 0, $2761 = 0; - var $2762 = 0, $2763 = 0, $2764 = 0, $2765 = 0, $2766 = 0, $2767 = 0, $2768 = 0, $2769 = 0, $277 = 0, $2770 = 0, $2771 = 0, $2772 = 0, $2773 = 0, $2774 = 0, $2775 = 0, $2776 = 0, $2777 = 0, $2778 = 0, $2779 = 0, $278 = 0; - var $2780 = 0, $2781 = 0, $2782 = 0, $2783 = 0, $2784 = 0, $2785 = 0, $2786 = 0, $2787 = 0, $2788 = 0, $2789 = 0, $279 = 0, $2790 = 0, $2791 = 0, $2792 = 0, $2793 = 0, $2794 = 0, $2795 = 0, $2796 = 0, $2797 = 0, $2798 = 0; - var $2799 = 0, $28 = 0, $280 = 0, $2800 = 0, $2801 = 0, $2802 = 0, $2803 = 0, $2804 = 0, $2805 = 0, $2806 = 0, $2807 = 0, $2808 = 0, $2809 = 0, $281 = 0, $2810 = 0, $2811 = 0, $2812 = 0, $2813 = 0, $2814 = 0, $2815 = 0; - var $2816 = 0, $2817 = 0, $2818 = 0, $2819 = 0, $282 = 0, $2820 = 0, $2821 = 0, $2822 = 0, $2823 = 0, $2824 = 0, $2825 = 0, $2826 = 0, $2827 = 0, $2828 = 0, $2829 = 0, $283 = 0, $2830 = 0, $2831 = 0, $2832 = 0, $2833 = 0; - var $2834 = 0, $2835 = 0, $2836 = 0, $2837 = 0, $2838 = 0, $2839 = 0, $284 = 0, $2840 = 0, $2841 = 0, $2842 = 0, $2843 = 0, $2844 = 0, $2845 = 0, $2846 = 0, $2847 = 0, $2848 = 0, $2849 = 0, $285 = 0, $2850 = 0, $2851 = 0; - var $2852 = 0, $2853 = 0, $2854 = 0, $2855 = 0, $2856 = 0, $2857 = 0, $2858 = 0, $2859 = 0, $286 = 0, $2860 = 0, $2861 = 0, $2862 = 0, $2863 = 0, $2864 = 0, $2865 = 0, $2866 = 0, $2867 = 0, $2868 = 0, $2869 = 0, $287 = 0; - var $2870 = 0, $2871 = 0, $2872 = 0, $2873 = 0, $2874 = 0, $2875 = 0, $2876 = 0, $2877 = 0, $2878 = 0, $2879 = 0, $288 = 0, $2880 = 0, $2881 = 0, $2882 = 0, $2883 = 0, $2884 = 0, $2885 = 0, $2886 = 0, $2887 = 0, $2888 = 0; - var $2889 = 0, $289 = 0, $2890 = 0, $2891 = 0, $2892 = 0, $2893 = 0, $2894 = 0, $2895 = 0, $2896 = 0, $2897 = 0, $2898 = 0, $2899 = 0, $29 = 0, $290 = 0, $2900 = 0, $2901 = 0, $2902 = 0, $2903 = 0, $2904 = 0, $2905 = 0; - var $2906 = 0, $2907 = 0, $2908 = 0, $2909 = 0, $291 = 0, $2910 = 0, $2911 = 0, $2912 = 0, $2913 = 0, $2914 = 0, $2915 = 0, $2916 = 0, $2917 = 0, $2918 = 0, $2919 = 0, $292 = 0, $2920 = 0, $2921 = 0, $2922 = 0, $2923 = 0; - var $2924 = 0, $2925 = 0, $2926 = 0, $2927 = 0, $2928 = 0, $2929 = 0, $293 = 0, $2930 = 0, $2931 = 0, $2932 = 0, $2933 = 0, $2934 = 0, $2935 = 0, $2936 = 0, $2937 = 0, $2938 = 0, $2939 = 0, $294 = 0, $2940 = 0, $2941 = 0; - var $2942 = 0, $2943 = 0, $2944 = 0, $2945 = 0, $2946 = 0, $2947 = 0, $2948 = 0, $2949 = 0, $295 = 0, $2950 = 0, $2951 = 0, $2952 = 0, $2953 = 0, $2954 = 0, $2955 = 0, $2956 = 0, $2957 = 0, $2958 = 0, $2959 = 0, $296 = 0; - var $2960 = 0, $2961 = 0, $2962 = 0, $2963 = 0, $2964 = 0, $2965 = 0, $2966 = 0, $2967 = 0, $2968 = 0, $2969 = 0, $297 = 0, $2970 = 0, $2971 = 0, $2972 = 0, $2973 = 0, $2974 = 0, $2975 = 0, $2976 = 0, $2977 = 0, $2978 = 0; - var $2979 = 0, $298 = 0, $2980 = 0, $2981 = 0, $2982 = 0, $2983 = 0, $2984 = 0, $2985 = 0, $2986 = 0, $2987 = 0, $2988 = 0, $2989 = 0, $299 = 0, $2990 = 0, $2991 = 0, $2992 = 0, $2993 = 0, $2994 = 0, $2995 = 0, $2996 = 0; - var $2997 = 0, $2998 = 0, $2999 = 0, $3 = 0, $30 = 0, $300 = 0, $3000 = 0, $3001 = 0, $3002 = 0, $3003 = 0, $3004 = 0, $3005 = 0, $3006 = 0, $3007 = 0, $3008 = 0, $3009 = 0, $301 = 0, $3010 = 0, $3011 = 0, $3012 = 0; - var $3013 = 0, $3014 = 0, $3015 = 0, $3016 = 0, $3017 = 0, $3018 = 0, $3019 = 0, $302 = 0, $3020 = 0, $3021 = 0, $3022 = 0, $3023 = 0, $3024 = 0, $3025 = 0, $3026 = 0, $3027 = 0, $3028 = 0, $3029 = 0, $303 = 0, $3030 = 0; - var $3031 = 0, $3032 = 0, $3033 = 0, $3034 = 0, $3035 = 0, $3036 = 0, $3037 = 0, $3038 = 0, $3039 = 0, $304 = 0, $3040 = 0, $3041 = 0, $3042 = 0, $3043 = 0, $3044 = 0, $3045 = 0, $3046 = 0, $3047 = 0, $3048 = 0, $3049 = 0; - var $305 = 0, $3050 = 0, $3051 = 0, $3052 = 0, $3053 = 0, $3054 = 0, $3055 = 0, $3056 = 0, $3057 = 0, $3058 = 0, $3059 = 0, $306 = 0, $3060 = 0, $3061 = 0, $3062 = 0, $3063 = 0, $3064 = 0, $3065 = 0, $3066 = 0, $3067 = 0; - var $3068 = 0, $3069 = 0, $307 = 0, $3070 = 0, $3071 = 0, $3072 = 0, $3073 = 0, $3074 = 0, $3075 = 0, $3076 = 0, $3077 = 0, $3078 = 0, $3079 = 0, $308 = 0, $3080 = 0, $3081 = 0, $3082 = 0, $3083 = 0, $3084 = 0, $3085 = 0; - var $3086 = 0, $3087 = 0, $3088 = 0, $3089 = 0, $309 = 0, $3090 = 0, $3091 = 0, $3092 = 0, $3093 = 0, $3094 = 0, $3095 = 0, $3096 = 0, $3097 = 0, $3098 = 0, $3099 = 0, $31 = 0, $310 = 0, $3100 = 0, $3101 = 0, $3102 = 0; - var $3103 = 0, $3104 = 0, $3105 = 0, $3106 = 0, $3107 = 0, $3108 = 0, $3109 = 0, $311 = 0, $3110 = 0, $3111 = 0, $3112 = 0, $3113 = 0, $3114 = 0, $3115 = 0, $3116 = 0, $3117 = 0, $3118 = 0, $3119 = 0, $312 = 0, $3120 = 0; - var $3121 = 0, $3122 = 0, $3123 = 0, $3124 = 0, $3125 = 0, $3126 = 0, $3127 = 0, $3128 = 0, $3129 = 0, $313 = 0, $3130 = 0, $3131 = 0, $3132 = 0, $3133 = 0, $3134 = 0, $3135 = 0, $3136 = 0, $3137 = 0, $3138 = 0, $3139 = 0; - var $314 = 0, $3140 = 0, $3141 = 0, $3142 = 0, $3143 = 0, $3144 = 0, $3145 = 0, $3146 = 0, $3147 = 0, $3148 = 0, $3149 = 0, $315 = 0, $3150 = 0, $3151 = 0, $3152 = 0, $3153 = 0, $3154 = 0, $3155 = 0, $3156 = 0, $3157 = 0; - var $3158 = 0, $3159 = 0, $316 = 0, $3160 = 0, $3161 = 0, $3162 = 0, $3163 = 0, $3164 = 0, $3165 = 0, $3166 = 0, $3167 = 0, $3168 = 0, $3169 = 0, $317 = 0, $3170 = 0, $3171 = 0, $3172 = 0, $3173 = 0, $3174 = 0, $3175 = 0; - var $3176 = 0, $3177 = 0, $3178 = 0, $3179 = 0, $318 = 0, $3180 = 0, $3181 = 0, $3182 = 0, $3183 = 0, $3184 = 0, $3185 = 0, $3186 = 0, $3187 = 0, $3188 = 0, $3189 = 0, $319 = 0, $3190 = 0, $3191 = 0, $3192 = 0, $3193 = 0; - var $3194 = 0, $3195 = 0, $3196 = 0, $3197 = 0, $3198 = 0, $3199 = 0, $32 = 0, $320 = 0, $3200 = 0, $3201 = 0, $3202 = 0, $3203 = 0, $3204 = 0, $3205 = 0, $3206 = 0, $3207 = 0, $3208 = 0, $3209 = 0, $321 = 0, $3210 = 0; - var $3211 = 0, $3212 = 0, $3213 = 0, $3214 = 0, $3215 = 0, $3216 = 0, $3217 = 0, $3218 = 0, $3219 = 0, $322 = 0, $3220 = 0, $3221 = 0, $3222 = 0, $3223 = 0, $3224 = 0, $3225 = 0, $3226 = 0, $3227 = 0, $3228 = 0, $3229 = 0; - var $323 = 0, $3230 = 0, $3231 = 0, $3232 = 0, $3233 = 0, $3234 = 0, $3235 = 0, $3236 = 0, $3237 = 0, $3238 = 0, $3239 = 0, $324 = 0, $3240 = 0, $3241 = 0, $3242 = 0, $3243 = 0, $3244 = 0, $3245 = 0, $3246 = 0, $3247 = 0; - var $3248 = 0, $3249 = 0, $325 = 0, $3250 = 0, $3251 = 0, $3252 = 0, $3253 = 0, $3254 = 0, $3255 = 0, $3256 = 0, $3257 = 0, $3258 = 0, $3259 = 0, $326 = 0, $3260 = 0, $3261 = 0, $3262 = 0, $3263 = 0, $3264 = 0, $3265 = 0; - var $3266 = 0, $3267 = 0, $3268 = 0, $3269 = 0, $327 = 0, $3270 = 0, $3271 = 0, $3272 = 0, $3273 = 0, $3274 = 0, $3275 = 0, $3276 = 0, $3277 = 0, $3278 = 0, $3279 = 0, $328 = 0, $3280 = 0, $3281 = 0, $3282 = 0, $3283 = 0; - var $3284 = 0, $3285 = 0, $3286 = 0, $3287 = 0, $3288 = 0, $3289 = 0, $329 = 0, $3290 = 0, $3291 = 0, $3292 = 0, $3293 = 0, $3294 = 0, $3295 = 0, $3296 = 0, $3297 = 0, $3298 = 0, $3299 = 0, $33 = 0, $330 = 0, $3300 = 0; - var $3301 = 0, $3302 = 0, $3303 = 0, $3304 = 0, $3305 = 0, $3306 = 0, $3307 = 0, $3308 = 0, $3309 = 0, $331 = 0, $3310 = 0, $3311 = 0, $3312 = 0, $3313 = 0, $3314 = 0, $3315 = 0, $3316 = 0, $3317 = 0, $3318 = 0, $3319 = 0; - var $332 = 0, $3320 = 0, $3321 = 0, $3322 = 0, $3323 = 0, $3324 = 0, $3325 = 0, $3326 = 0, $3327 = 0, $3328 = 0, $3329 = 0, $333 = 0, $3330 = 0, $3331 = 0, $3332 = 0, $3333 = 0, $3334 = 0, $3335 = 0, $3336 = 0, $3337 = 0; - var $3338 = 0, $3339 = 0, $334 = 0, $3340 = 0, $3341 = 0, $3342 = 0, $3343 = 0, $3344 = 0, $3345 = 0, $3346 = 0, $3347 = 0, $3348 = 0, $3349 = 0, $335 = 0, $3350 = 0, $3351 = 0, $3352 = 0, $3353 = 0, $3354 = 0, $3355 = 0; - var $3356 = 0, $3357 = 0, $3358 = 0, $3359 = 0, $336 = 0, $3360 = 0, $3361 = 0, $3362 = 0, $3363 = 0, $3364 = 0, $3365 = 0, $3366 = 0, $3367 = 0, $3368 = 0, $3369 = 0, $337 = 0, $3370 = 0, $3371 = 0, $3372 = 0, $3373 = 0; - var $3374 = 0, $3375 = 0, $3376 = 0, $3377 = 0, $3378 = 0, $3379 = 0, $338 = 0, $3380 = 0, $3381 = 0, $3382 = 0, $3383 = 0, $3384 = 0, $3385 = 0, $3386 = 0, $3387 = 0, $3388 = 0, $3389 = 0, $339 = 0, $3390 = 0, $3391 = 0; - var $3392 = 0, $3393 = 0, $3394 = 0, $3395 = 0, $3396 = 0, $3397 = 0, $3398 = 0, $3399 = 0, $34 = 0, $340 = 0, $3400 = 0, $3401 = 0, $3402 = 0, $3403 = 0, $3404 = 0, $3405 = 0, $3406 = 0, $3407 = 0, $3408 = 0, $3409 = 0; - var $341 = 0, $3410 = 0, $3411 = 0, $3412 = 0, $3413 = 0, $3414 = 0, $3415 = 0, $3416 = 0, $3417 = 0, $3418 = 0, $3419 = 0, $342 = 0, $3420 = 0, $3421 = 0, $3422 = 0, $3423 = 0, $3424 = 0, $3425 = 0, $3426 = 0, $3427 = 0; - var $3428 = 0, $3429 = 0, $343 = 0, $3430 = 0, $3431 = 0, $3432 = 0, $3433 = 0, $3434 = 0, $3435 = 0, $3436 = 0, $3437 = 0, $3438 = 0, $3439 = 0, $344 = 0, $3440 = 0, $3441 = 0, $3442 = 0, $3443 = 0, $3444 = 0, $3445 = 0; - var $3446 = 0, $3447 = 0, $3448 = 0, $3449 = 0, $345 = 0, $3450 = 0, $3451 = 0, $3452 = 0, $3453 = 0, $3454 = 0, $3455 = 0, $3456 = 0, $3457 = 0, $3458 = 0, $3459 = 0, $346 = 0, $3460 = 0, $3461 = 0, $3462 = 0, $3463 = 0; - var $3464 = 0, $3465 = 0, $3466 = 0, $3467 = 0, $3468 = 0, $3469 = 0, $347 = 0, $3470 = 0, $3471 = 0, $3472 = 0, $3473 = 0, $3474 = 0, $3475 = 0, $3476 = 0, $3477 = 0, $3478 = 0, $3479 = 0, $348 = 0, $3480 = 0, $3481 = 0; - var $3482 = 0, $3483 = 0, $3484 = 0, $3485 = 0, $3486 = 0, $3487 = 0, $3488 = 0, $3489 = 0, $349 = 0, $3490 = 0, $3491 = 0, $3492 = 0, $3493 = 0, $3494 = 0, $3495 = 0, $3496 = 0, $3497 = 0, $3498 = 0, $3499 = 0, $35 = 0; - var $350 = 0, $3500 = 0, $3501 = 0, $3502 = 0, $3503 = 0, $3504 = 0, $3505 = 0, $3506 = 0, $3507 = 0, $3508 = 0, $3509 = 0, $351 = 0, $3510 = 0, $3511 = 0, $3512 = 0, $3513 = 0, $3514 = 0, $3515 = 0, $3516 = 0, $3517 = 0; - var $3518 = 0, $3519 = 0, $352 = 0, $3520 = 0, $3521 = 0, $3522 = 0, $3523 = 0, $3524 = 0, $3525 = 0, $3526 = 0, $3527 = 0, $3528 = 0, $3529 = 0, $353 = 0, $3530 = 0, $3531 = 0, $3532 = 0, $3533 = 0, $3534 = 0, $3535 = 0; - var $3536 = 0, $3537 = 0, $3538 = 0, $3539 = 0, $354 = 0, $3540 = 0, $3541 = 0, $3542 = 0, $3543 = 0, $3544 = 0, $3545 = 0, $3546 = 0, $3547 = 0, $3548 = 0, $3549 = 0, $355 = 0, $3550 = 0, $3551 = 0, $3552 = 0, $3553 = 0; - var $3554 = 0, $3555 = 0, $3556 = 0, $3557 = 0, $3558 = 0, $3559 = 0, $356 = 0, $3560 = 0, $3561 = 0, $3562 = 0, $3563 = 0, $3564 = 0, $3565 = 0, $3566 = 0, $3567 = 0, $3568 = 0, $3569 = 0, $357 = 0, $3570 = 0, $3571 = 0; - var $3572 = 0, $3573 = 0, $3574 = 0, $3575 = 0, $3576 = 0, $3577 = 0, $3578 = 0, $3579 = 0, $358 = 0, $3580 = 0, $3581 = 0, $3582 = 0, $3583 = 0, $3584 = 0, $3585 = 0, $3586 = 0, $3587 = 0, $3588 = 0, $3589 = 0, $359 = 0; - var $3590 = 0, $3591 = 0, $3592 = 0, $3593 = 0, $3594 = 0, $3595 = 0, $3596 = 0, $3597 = 0, $3598 = 0, $3599 = 0, $36 = 0, $360 = 0, $3600 = 0, $3601 = 0, $3602 = 0, $3603 = 0, $3604 = 0, $3605 = 0, $3606 = 0, $3607 = 0; - var $3608 = 0, $3609 = 0, $361 = 0, $3610 = 0, $3611 = 0, $3612 = 0, $3613 = 0, $3614 = 0, $3615 = 0, $3616 = 0, $3617 = 0, $3618 = 0, $3619 = 0, $362 = 0, $3620 = 0, $3621 = 0, $3622 = 0, $3623 = 0, $3624 = 0, $3625 = 0; - var $3626 = 0, $3627 = 0, $3628 = 0, $3629 = 0, $363 = 0, $3630 = 0, $3631 = 0, $3632 = 0, $3633 = 0, $3634 = 0, $3635 = 0, $3636 = 0, $3637 = 0, $3638 = 0, $3639 = 0, $364 = 0, $3640 = 0, $3641 = 0, $3642 = 0, $3643 = 0; - var $3644 = 0, $3645 = 0, $3646 = 0, $3647 = 0, $3648 = 0, $3649 = 0, $365 = 0, $3650 = 0, $3651 = 0, $3652 = 0, $3653 = 0, $3654 = 0, $3655 = 0, $3656 = 0, $3657 = 0, $3658 = 0, $3659 = 0, $366 = 0, $3660 = 0, $3661 = 0; - var $3662 = 0, $3663 = 0, $3664 = 0, $3665 = 0, $3666 = 0, $3667 = 0, $3668 = 0, $3669 = 0, $367 = 0, $3670 = 0, $3671 = 0, $3672 = 0, $3673 = 0, $3674 = 0, $3675 = 0, $3676 = 0, $3677 = 0, $3678 = 0, $3679 = 0, $368 = 0; - var $3680 = 0, $3681 = 0, $3682 = 0, $3683 = 0, $3684 = 0, $3685 = 0, $3686 = 0, $3687 = 0, $3688 = 0, $3689 = 0, $369 = 0, $3690 = 0, $3691 = 0, $3692 = 0, $3693 = 0, $3694 = 0, $3695 = 0, $3696 = 0, $3697 = 0, $3698 = 0; - var $3699 = 0, $37 = 0, $370 = 0, $3700 = 0, $3701 = 0, $3702 = 0, $3703 = 0, $3704 = 0, $3705 = 0, $3706 = 0, $3707 = 0, $3708 = 0, $3709 = 0, $371 = 0, $3710 = 0, $3711 = 0, $3712 = 0, $3713 = 0, $3714 = 0, $3715 = 0; - var $3716 = 0, $3717 = 0, $3718 = 0, $3719 = 0, $372 = 0, $3720 = 0, $3721 = 0, $3722 = 0, $3723 = 0, $3724 = 0, $3725 = 0, $3726 = 0, $3727 = 0, $3728 = 0, $3729 = 0, $373 = 0, $3730 = 0, $3731 = 0, $3732 = 0, $3733 = 0; - var $3734 = 0, $3735 = 0, $3736 = 0, $3737 = 0, $3738 = 0, $3739 = 0, $374 = 0, $3740 = 0, $3741 = 0, $3742 = 0, $3743 = 0, $3744 = 0, $3745 = 0, $3746 = 0, $3747 = 0, $3748 = 0, $3749 = 0, $375 = 0, $3750 = 0, $3751 = 0; - var $3752 = 0, $3753 = 0, $3754 = 0, $3755 = 0, $3756 = 0, $3757 = 0, $3758 = 0, $3759 = 0, $376 = 0, $3760 = 0, $3761 = 0, $3762 = 0, $3763 = 0, $3764 = 0, $3765 = 0, $3766 = 0, $3767 = 0, $3768 = 0, $3769 = 0, $377 = 0; - var $3770 = 0, $3771 = 0, $3772 = 0, $3773 = 0, $3774 = 0, $3775 = 0, $3776 = 0, $3777 = 0, $3778 = 0, $3779 = 0, $378 = 0, $3780 = 0, $3781 = 0, $3782 = 0, $3783 = 0, $3784 = 0, $3785 = 0, $3786 = 0, $3787 = 0, $3788 = 0; - var $3789 = 0, $379 = 0, $3790 = 0, $3791 = 0, $3792 = 0, $3793 = 0, $3794 = 0, $3795 = 0, $3796 = 0, $3797 = 0, $3798 = 0, $3799 = 0, $38 = 0, $380 = 0, $3800 = 0, $3801 = 0, $3802 = 0, $3803 = 0, $3804 = 0, $3805 = 0; - var $3806 = 0, $3807 = 0, $3808 = 0, $3809 = 0, $381 = 0, $3810 = 0, $3811 = 0, $3812 = 0, $3813 = 0, $3814 = 0, $3815 = 0, $3816 = 0, $3817 = 0, $3818 = 0, $3819 = 0, $382 = 0, $3820 = 0, $3821 = 0, $3822 = 0, $3823 = 0; - var $3824 = 0, $3825 = 0, $3826 = 0, $3827 = 0, $3828 = 0, $3829 = 0, $383 = 0, $3830 = 0, $3831 = 0, $3832 = 0, $3833 = 0, $3834 = 0, $3835 = 0, $3836 = 0, $3837 = 0, $3838 = 0, $3839 = 0, $384 = 0, $3840 = 0, $3841 = 0; - var $3842 = 0, $3843 = 0, $3844 = 0, $3845 = 0, $3846 = 0, $3847 = 0, $3848 = 0, $3849 = 0, $385 = 0, $3850 = 0, $3851 = 0, $3852 = 0, $3853 = 0, $3854 = 0, $3855 = 0, $3856 = 0, $3857 = 0, $3858 = 0, $3859 = 0, $386 = 0; - var $3860 = 0, $3861 = 0, $3862 = 0, $3863 = 0, $3864 = 0, $3865 = 0.0, $3866 = 0, $3867 = 0, $3868 = 0, $3869 = 0, $387 = 0, $3870 = 0, $3871 = 0, $3872 = 0.0, $3873 = 0, $3874 = 0, $3875 = 0, $3876 = 0, $3877 = 0, $3878 = 0; - var $3879 = 0, $388 = 0, $3880 = 0, $3881 = 0.0, $3882 = 0, $3883 = 0, $3884 = 0, $3885 = 0, $3886 = 0, $3887 = 0, $3888 = 0.0, $3889 = 0, $389 = 0, $3890 = 0, $3891 = 0, $3892 = 0, $3893 = 0, $3894 = 0, $3895 = 0, $3896 = 0; - var $3897 = 0, $3898 = 0, $3899 = 0, $39 = 0, $390 = 0, $3900 = 0, $3901 = 0, $3902 = 0, $3903 = 0, $3904 = 0, $3905 = 0, $3906 = 0, $3907 = 0, $3908 = 0, $3909 = 0, $391 = 0, $3910 = 0, $3911 = 0, $3912 = 0, $3913 = 0; - var $3914 = 0, $3915 = 0, $3916 = 0, $3917 = 0, $3918 = 0, $3919 = 0, $392 = 0, $3920 = 0, $3921 = 0, $3922 = 0, $3923 = 0, $3924 = 0, $3925 = 0, $3926 = 0, $3927 = 0, $3928 = 0, $3929 = 0, $393 = 0, $3930 = 0, $3931 = 0; - var $3932 = 0, $3933 = 0, $3934 = 0, $3935 = 0, $3936 = 0, $3937 = 0, $3938 = 0, $3939 = 0, $394 = 0, $3940 = 0, $3941 = 0, $3942 = 0, $3943 = 0, $3944 = 0, $3945 = 0, $3946 = 0, $3947 = 0, $3948 = 0, $3949 = 0, $395 = 0; - var $3950 = 0, $3951 = 0, $3952 = 0, $3953 = 0, $3954 = 0, $3955 = 0, $3956 = 0, $3957 = 0, $3958 = 0, $3959 = 0, $396 = 0, $3960 = 0, $3961 = 0, $3962 = 0, $3963 = 0, $3964 = 0, $3965 = 0, $3966 = 0, $3967 = 0, $3968 = 0; - var $3969 = 0, $397 = 0, $3970 = 0, $3971 = 0, $3972 = 0, $3973 = 0, $3974 = 0, $3975 = 0, $3976 = 0, $3977 = 0, $3978 = 0, $3979 = 0, $398 = 0, $3980 = 0, $3981 = 0, $3982 = 0, $3983 = 0, $3984 = 0, $3985 = 0, $3986 = 0; - var $3987 = 0, $3988 = 0, $3989 = 0, $399 = 0, $3990 = 0, $3991 = 0, $3992 = 0, $3993 = 0, $3994 = 0, $3995 = 0, $3996 = 0, $3997 = 0, $3998 = 0, $3999 = 0, $4 = 0, $40 = 0, $400 = 0, $4000 = 0, $4001 = 0, $4002 = 0; - var $4003 = 0, $4004 = 0, $4005 = 0, $4006 = 0, $4007 = 0, $4008 = 0, $4009 = 0, $401 = 0, $4010 = 0, $4011 = 0, $4012 = 0, $4013 = 0, $4014 = 0, $4015 = 0, $4016 = 0, $4017 = 0, $4018 = 0, $4019 = 0, $402 = 0, $4020 = 0; - var $4021 = 0, $4022 = 0, $4023 = 0, $4024 = 0, $4025 = 0, $4026 = 0, $4027 = 0, $4028 = 0, $4029 = 0, $403 = 0, $4030 = 0, $4031 = 0, $4032 = 0, $4033 = 0, $4034 = 0, $4035 = 0, $4036 = 0, $4037 = 0, $4038 = 0, $4039 = 0; - var $404 = 0, $4040 = 0, $4041 = 0, $4042 = 0, $4043 = 0, $4044 = 0, $4045 = 0, $4046 = 0, $4047 = 0, $4048 = 0, $4049 = 0, $405 = 0, $4050 = 0, $4051 = 0, $4052 = 0, $4053 = 0, $4054 = 0, $4055 = 0, $4056 = 0, $4057 = 0; - var $4058 = 0, $4059 = 0, $406 = 0, $4060 = 0, $4061 = 0, $4062 = 0, $4063 = 0, $4064 = 0, $4065 = 0, $4066 = 0, $4067 = 0, $4068 = 0, $4069 = 0, $407 = 0, $4070 = 0, $4071 = 0, $4072 = 0, $4073 = 0, $4074 = 0, $4075 = 0; - var $4076 = 0, $4077 = 0, $4078 = 0, $4079 = 0, $408 = 0, $4080 = 0, $4081 = 0, $4082 = 0, $4083 = 0, $4084 = 0, $4085 = 0, $4086 = 0, $4087 = 0, $4088 = 0, $4089 = 0, $409 = 0, $4090 = 0, $4091 = 0, $4092 = 0, $4093 = 0; - var $4094 = 0, $4095 = 0, $4096 = 0, $4097 = 0, $4098 = 0, $4099 = 0, $41 = 0, $410 = 0, $4100 = 0, $4101 = 0, $4102 = 0, $4103 = 0, $4104 = 0, $4105 = 0, $4106 = 0, $4107 = 0, $4108 = 0, $4109 = 0, $411 = 0, $4110 = 0; - var $4111 = 0, $4112 = 0, $4113 = 0, $4114 = 0, $4115 = 0, $4116 = 0, $4117 = 0, $4118 = 0, $4119 = 0, $412 = 0, $4120 = 0, $4121 = 0, $4122 = 0, $4123 = 0, $4124 = 0, $4125 = 0, $4126 = 0, $4127 = 0, $4128 = 0, $4129 = 0; - var $413 = 0, $4130 = 0, $4131 = 0, $4132 = 0, $4133 = 0, $4134 = 0, $4135 = 0, $4136 = 0, $4137 = 0, $4138 = 0, $4139 = 0, $414 = 0, $4140 = 0, $4141 = 0, $4142 = 0, $4143 = 0, $4144 = 0, $4145 = 0, $4146 = 0, $4147 = 0; - var $4148 = 0, $4149 = 0, $415 = 0, $4150 = 0, $4151 = 0, $4152 = 0, $4153 = 0, $4154 = 0, $4155 = 0, $4156 = 0, $4157 = 0, $4158 = 0, $4159 = 0, $416 = 0.0, $4160 = 0, $4161 = 0, $4162 = 0, $4163 = 0, $4164 = 0, $4165 = 0; - var $4166 = 0, $4167 = 0, $4168 = 0, $4169 = 0, $417 = 0, $4170 = 0, $4171 = 0, $4172 = 0, $4173 = 0, $4174 = 0, $4175 = 0, $4176 = 0, $4177 = 0, $4178 = 0, $4179 = 0, $418 = 0, $4180 = 0, $4181 = 0, $4182 = 0, $4183 = 0; - var $4184 = 0, $4185 = 0, $4186 = 0, $4187 = 0, $4188 = 0, $4189 = 0, $419 = 0, $4190 = 0, $4191 = 0, $4192 = 0, $4193 = 0, $4194 = 0, $4195 = 0, $4196 = 0, $4197 = 0, $4198 = 0, $4199 = 0, $42 = 0, $420 = 0, $4200 = 0; - var $4201 = 0, $4202 = 0, $4203 = 0, $4204 = 0, $4205 = 0, $4206 = 0, $4207 = 0, $4208 = 0, $4209 = 0, $421 = 0, $4210 = 0, $4211 = 0, $4212 = 0, $4213 = 0, $4214 = 0, $4215 = 0, $4216 = 0, $4217 = 0, $4218 = 0, $4219 = 0; - var $422 = 0, $4220 = 0, $4221 = 0, $4222 = 0, $4223 = 0, $4224 = 0, $4225 = 0, $4226 = 0, $4227 = 0, $4228 = 0, $4229 = 0, $423 = 0, $4230 = 0, $4231 = 0, $4232 = 0, $4233 = 0, $4234 = 0, $4235 = 0, $4236 = 0, $4237 = 0; - var $4238 = 0, $4239 = 0, $424 = 0, $4240 = 0, $4241 = 0, $4242 = 0, $4243 = 0, $4244 = 0, $4245 = 0, $4246 = 0, $4247 = 0, $4248 = 0, $4249 = 0, $425 = 0, $4250 = 0, $4251 = 0, $4252 = 0, $4253 = 0, $4254 = 0, $4255 = 0; - var $4256 = 0, $4257 = 0, $4258 = 0, $4259 = 0, $426 = 0, $4260 = 0, $4261 = 0, $4262 = 0, $4263 = 0, $4264 = 0, $4265 = 0, $4266 = 0, $4267 = 0, $4268 = 0, $4269 = 0, $427 = 0, $4270 = 0, $4271 = 0, $4272 = 0, $4273 = 0; - var $4274 = 0, $4275 = 0, $4276 = 0, $4277 = 0, $4278 = 0, $4279 = 0, $428 = 0, $4280 = 0, $4281 = 0, $4282 = 0, $4283 = 0, $4284 = 0, $4285 = 0, $4286 = 0, $4287 = 0, $4288 = 0, $4289 = 0, $429 = 0, $4290 = 0, $4291 = 0; - var $4292 = 0, $4293 = 0, $4294 = 0, $4295 = 0, $4296 = 0, $4297 = 0, $4298 = 0, $4299 = 0, $43 = 0, $430 = 0, $4300 = 0, $4301 = 0, $4302 = 0, $4303 = 0, $4304 = 0, $4305 = 0, $4306 = 0, $4307 = 0, $4308 = 0, $4309 = 0; - var $431 = 0, $4310 = 0, $4311 = 0, $4312 = 0, $4313 = 0, $4314 = 0, $4315 = 0, $4316 = 0, $4317 = 0, $4318 = 0, $4319 = 0, $432 = 0, $4320 = 0, $4321 = 0, $4322 = 0, $4323 = 0, $4324 = 0, $4325 = 0, $4326 = 0, $4327 = 0; - var $4328 = 0, $4329 = 0, $433 = 0, $4330 = 0, $4331 = 0, $4332 = 0, $4333 = 0, $4334 = 0, $4335 = 0, $4336 = 0, $4337 = 0, $4338 = 0, $4339 = 0, $434 = 0, $4340 = 0, $4341 = 0, $4342 = 0, $4343 = 0, $4344 = 0, $4345 = 0; - var $4346 = 0, $4347 = 0, $4348 = 0, $4349 = 0, $435 = 0, $4350 = 0, $4351 = 0, $4352 = 0, $4353 = 0, $4354 = 0, $4355 = 0, $4356 = 0, $4357 = 0, $4358 = 0, $4359 = 0, $436 = 0, $4360 = 0, $4361 = 0, $4362 = 0, $4363 = 0; - var $4364 = 0, $4365 = 0, $4366 = 0, $4367 = 0, $4368 = 0, $4369 = 0, $437 = 0, $4370 = 0, $4371 = 0, $4372 = 0, $4373 = 0, $4374 = 0, $4375 = 0, $4376 = 0, $4377 = 0, $4378 = 0, $4379 = 0, $438 = 0, $4380 = 0, $4381 = 0; - var $4382 = 0, $4383 = 0, $4384 = 0, $4385 = 0, $4386 = 0, $4387 = 0, $4388 = 0, $4389 = 0, $439 = 0, $4390 = 0, $4391 = 0, $4392 = 0, $4393 = 0, $4394 = 0, $4395 = 0, $4396 = 0, $4397 = 0, $4398 = 0, $4399 = 0, $44 = 0; - var $440 = 0, $4400 = 0, $4401 = 0, $4402 = 0, $4403 = 0, $4404 = 0, $4405 = 0, $4406 = 0, $4407 = 0, $4408 = 0, $4409 = 0, $441 = 0, $4410 = 0, $4411 = 0, $4412 = 0, $4413 = 0, $4414 = 0, $4415 = 0, $4416 = 0, $4417 = 0; - var $4418 = 0, $4419 = 0, $442 = 0, $4420 = 0, $4421 = 0, $4422 = 0, $4423 = 0, $4424 = 0, $4425 = 0, $4426 = 0, $4427 = 0, $4428 = 0, $4429 = 0, $443 = 0, $4430 = 0, $4431 = 0, $4432 = 0, $4433 = 0, $4434 = 0, $4435 = 0; - var $4436 = 0, $4437 = 0, $4438 = 0, $4439 = 0, $444 = 0, $4440 = 0, $4441 = 0, $4442 = 0, $4443 = 0, $4444 = 0, $4445 = 0, $4446 = 0, $4447 = 0, $4448 = 0, $4449 = 0, $445 = 0, $4450 = 0, $4451 = 0, $4452 = 0, $4453 = 0; - var $4454 = 0, $4455 = 0, $4456 = 0, $4457 = 0, $4458 = 0, $4459 = 0, $446 = 0, $4460 = 0, $4461 = 0, $4462 = 0, $4463 = 0, $4464 = 0, $4465 = 0, $4466 = 0, $4467 = 0, $4468 = 0, $4469 = 0, $447 = 0, $4470 = 0, $4471 = 0; - var $4472 = 0, $4473 = 0, $4474 = 0, $4475 = 0, $4476 = 0, $4477 = 0, $4478 = 0, $4479 = 0, $448 = 0, $4480 = 0, $4481 = 0, $4482 = 0, $4483 = 0, $4484 = 0, $4485 = 0, $4486 = 0, $4487 = 0, $4488 = 0, $4489 = 0, $449 = 0; - var $4490 = 0, $4491 = 0, $4492 = 0, $4493 = 0, $4494 = 0, $4495 = 0, $4496 = 0, $4497 = 0, $4498 = 0, $4499 = 0, $45 = 0, $450 = 0, $4500 = 0, $4501 = 0, $4502 = 0, $4503 = 0, $4504 = 0, $4505 = 0, $4506 = 0, $4507 = 0; - var $4508 = 0, $4509 = 0, $451 = 0, $4510 = 0, $4511 = 0, $4512 = 0, $4513 = 0, $4514 = 0, $4515 = 0, $4516 = 0, $4517 = 0, $4518 = 0, $4519 = 0, $452 = 0, $4520 = 0, $4521 = 0, $4522 = 0, $4523 = 0, $4524 = 0, $4525 = 0; - var $4526 = 0, $4527 = 0, $4528 = 0, $4529 = 0, $453 = 0, $4530 = 0, $4531 = 0, $4532 = 0, $4533 = 0, $4534 = 0, $4535 = 0, $4536 = 0, $4537 = 0, $4538 = 0, $4539 = 0, $454 = 0, $4540 = 0, $4541 = 0, $4542 = 0, $4543 = 0; - var $4544 = 0, $4545 = 0, $4546 = 0, $4547 = 0, $4548 = 0, $4549 = 0, $455 = 0, $4550 = 0, $4551 = 0, $4552 = 0, $4553 = 0, $4554 = 0, $4555 = 0, $4556 = 0, $4557 = 0, $4558 = 0, $4559 = 0, $456 = 0, $4560 = 0, $4561 = 0; - var $4562 = 0, $4563 = 0, $4564 = 0, $4565 = 0, $4566 = 0, $4567 = 0, $4568 = 0, $4569 = 0, $457 = 0, $4570 = 0, $4571 = 0, $4572 = 0, $4573 = 0, $4574 = 0, $4575 = 0, $4576 = 0, $4577 = 0, $4578 = 0, $4579 = 0, $458 = 0; - var $4580 = 0, $4581 = 0, $4582 = 0, $4583 = 0, $4584 = 0, $4585 = 0, $4586 = 0, $4587 = 0, $4588 = 0, $4589 = 0, $459 = 0, $4590 = 0, $4591 = 0, $4592 = 0, $4593 = 0, $4594 = 0, $4595 = 0, $4596 = 0, $4597 = 0, $4598 = 0; - var $4599 = 0, $46 = 0, $460 = 0, $4600 = 0, $4601 = 0, $4602 = 0, $4603 = 0, $4604 = 0, $4605 = 0, $4606 = 0, $4607 = 0, $4608 = 0, $4609 = 0, $461 = 0, $4610 = 0, $4611 = 0, $4612 = 0, $4613 = 0, $4614 = 0, $4615 = 0; - var $4616 = 0, $4617 = 0, $4618 = 0, $4619 = 0, $462 = 0, $4620 = 0, $4621 = 0, $4622 = 0, $4623 = 0, $4624 = 0, $4625 = 0, $4626 = 0, $4627 = 0, $4628 = 0, $4629 = 0, $463 = 0, $4630 = 0, $4631 = 0, $4632 = 0, $4633 = 0; - var $4634 = 0, $4635 = 0, $4636 = 0, $4637 = 0, $4638 = 0, $4639 = 0, $464 = 0, $4640 = 0, $4641 = 0, $4642 = 0, $4643 = 0, $4644 = 0, $4645 = 0, $4646 = 0, $4647 = 0, $4648 = 0, $4649 = 0, $465 = 0, $4650 = 0, $4651 = 0; - var $4652 = 0, $4653 = 0, $4654 = 0, $4655 = 0, $4656 = 0, $4657 = 0, $4658 = 0, $4659 = 0, $466 = 0, $4660 = 0, $4661 = 0, $4662 = 0, $4663 = 0, $4664 = 0, $4665 = 0, $4666 = 0, $4667 = 0, $4668 = 0, $4669 = 0, $467 = 0; - var $4670 = 0, $4671 = 0, $4672 = 0, $4673 = 0, $4674 = 0, $4675 = 0, $4676 = 0, $4677 = 0, $4678 = 0, $4679 = 0, $468 = 0, $4680 = 0, $4681 = 0, $4682 = 0, $4683 = 0, $4684 = 0, $4685 = 0, $4686 = 0, $4687 = 0, $4688 = 0; - var $4689 = 0, $469 = 0, $4690 = 0, $4691 = 0, $4692 = 0, $4693 = 0, $4694 = 0, $4695 = 0, $4696 = 0, $4697 = 0, $4698 = 0, $4699 = 0, $47 = 0, $470 = 0, $4700 = 0, $4701 = 0, $4702 = 0, $4703 = 0, $4704 = 0, $4705 = 0; - var $4706 = 0, $4707 = 0, $4708 = 0, $4709 = 0, $471 = 0, $4710 = 0, $4711 = 0, $4712 = 0, $4713 = 0, $4714 = 0, $4715 = 0, $4716 = 0, $4717 = 0, $4718 = 0, $4719 = 0, $472 = 0, $4720 = 0, $4721 = 0, $4722 = 0, $4723 = 0; - var $4724 = 0, $4725 = 0, $4726 = 0, $4727 = 0, $4728 = 0, $4729 = 0, $473 = 0, $4730 = 0, $4731 = 0, $4732 = 0, $4733 = 0, $4734 = 0, $4735 = 0, $4736 = 0, $4737 = 0, $4738 = 0, $4739 = 0, $474 = 0, $4740 = 0, $4741 = 0; - var $4742 = 0, $4743 = 0, $4744 = 0, $4745 = 0, $4746 = 0, $4747 = 0, $4748 = 0, $4749 = 0, $475 = 0, $4750 = 0, $4751 = 0, $4752 = 0, $4753 = 0, $4754 = 0, $4755 = 0, $4756 = 0, $4757 = 0, $4758 = 0, $4759 = 0, $476 = 0; - var $4760 = 0, $4761 = 0, $4762 = 0, $4763 = 0, $4764 = 0, $4765 = 0, $4766 = 0, $4767 = 0, $4768 = 0, $4769 = 0, $477 = 0, $4770 = 0, $4771 = 0, $4772 = 0, $4773 = 0, $4774 = 0, $4775 = 0, $4776 = 0, $4777 = 0, $4778 = 0; - var $4779 = 0, $478 = 0, $4780 = 0, $4781 = 0, $4782 = 0, $4783 = 0, $4784 = 0, $4785 = 0, $4786 = 0, $4787 = 0, $4788 = 0, $4789 = 0, $479 = 0, $4790 = 0, $4791 = 0, $4792 = 0, $4793 = 0, $4794 = 0, $4795 = 0, $4796 = 0; - var $4797 = 0, $4798 = 0, $4799 = 0, $48 = 0, $480 = 0, $4800 = 0, $4801 = 0, $4802 = 0, $4803 = 0, $4804 = 0, $4805 = 0, $4806 = 0, $4807 = 0, $4808 = 0, $4809 = 0, $481 = 0, $4810 = 0, $4811 = 0, $4812 = 0, $4813 = 0; - var $4814 = 0, $4815 = 0, $4816 = 0, $4817 = 0, $4818 = 0, $4819 = 0, $482 = 0, $4820 = 0, $4821 = 0, $4822 = 0, $4823 = 0, $4824 = 0, $4825 = 0, $4826 = 0, $4827 = 0, $4828 = 0, $4829 = 0, $483 = 0, $4830 = 0, $4831 = 0; - var $4832 = 0, $4833 = 0, $4834 = 0, $4835 = 0, $4836 = 0, $4837 = 0, $4838 = 0, $4839 = 0, $484 = 0, $4840 = 0, $4841 = 0, $4842 = 0, $4843 = 0, $4844 = 0, $4845 = 0, $4846 = 0, $4847 = 0, $4848 = 0, $4849 = 0, $485 = 0; - var $4850 = 0, $4851 = 0, $4852 = 0, $4853 = 0, $4854 = 0, $4855 = 0, $4856 = 0, $4857 = 0, $4858 = 0, $4859 = 0, $486 = 0, $4860 = 0, $4861 = 0, $4862 = 0, $4863 = 0, $4864 = 0, $4865 = 0, $4866 = 0, $4867 = 0, $4868 = 0; - var $4869 = 0, $487 = 0, $4870 = 0, $4871 = 0, $4872 = 0, $4873 = 0, $4874 = 0, $4875 = 0, $4876 = 0, $4877 = 0, $4878 = 0, $4879 = 0, $488 = 0, $4880 = 0, $4881 = 0, $4882 = 0, $4883 = 0, $4884 = 0, $4885 = 0, $4886 = 0; - var $4887 = 0, $4888 = 0, $4889 = 0, $489 = 0, $4890 = 0, $4891 = 0, $4892 = 0, $4893 = 0, $4894 = 0, $4895 = 0, $4896 = 0, $4897 = 0, $4898 = 0, $4899 = 0, $49 = 0, $490 = 0, $4900 = 0, $4901 = 0, $4902 = 0, $4903 = 0; - var $4904 = 0, $4905 = 0, $4906 = 0, $4907 = 0, $4908 = 0, $4909 = 0, $491 = 0, $4910 = 0, $4911 = 0, $4912 = 0, $4913 = 0, $4914 = 0, $4915 = 0, $4916 = 0, $4917 = 0, $4918 = 0, $4919 = 0, $492 = 0, $4920 = 0, $4921 = 0; - var $4922 = 0, $4923 = 0, $4924 = 0, $4925 = 0, $4926 = 0, $4927 = 0, $4928 = 0, $4929 = 0, $493 = 0, $4930 = 0, $4931 = 0, $4932 = 0, $4933 = 0, $4934 = 0, $4935 = 0, $4936 = 0, $4937 = 0, $4938 = 0, $4939 = 0, $494 = 0; - var $4940 = 0, $4941 = 0, $4942 = 0, $4943 = 0, $4944 = 0, $4945 = 0, $4946 = 0, $4947 = 0, $4948 = 0, $4949 = 0, $495 = 0, $4950 = 0, $4951 = 0, $4952 = 0, $4953 = 0, $4954 = 0, $4955 = 0, $4956 = 0, $4957 = 0, $4958 = 0; - var $4959 = 0, $496 = 0, $4960 = 0, $4961 = 0, $4962 = 0, $4963 = 0, $4964 = 0, $4965 = 0, $4966 = 0, $4967 = 0, $4968 = 0, $4969 = 0, $497 = 0, $4970 = 0, $4971 = 0, $4972 = 0, $4973 = 0, $4974 = 0, $4975 = 0, $4976 = 0; - var $4977 = 0, $4978 = 0, $4979 = 0, $498 = 0, $4980 = 0, $4981 = 0, $4982 = 0, $4983 = 0, $4984 = 0, $4985 = 0, $4986 = 0, $4987 = 0, $4988 = 0, $4989 = 0, $499 = 0, $4990 = 0, $4991 = 0, $4992 = 0, $4993 = 0, $4994 = 0; - var $4995 = 0, $4996 = 0, $4997 = 0, $4998 = 0, $4999 = 0, $5 = 0, $50 = 0, $500 = 0, $5000 = 0, $5001 = 0, $5002 = 0, $5003 = 0, $5004 = 0, $5005 = 0, $5006 = 0, $5007 = 0, $5008 = 0, $5009 = 0, $501 = 0, $5010 = 0; - var $5011 = 0, $5012 = 0, $5013 = 0, $5014 = 0, $5015 = 0, $5016 = 0, $5017 = 0, $5018 = 0, $5019 = 0, $502 = 0, $5020 = 0, $5021 = 0, $5022 = 0, $5023 = 0, $5024 = 0, $5025 = 0, $5026 = 0, $5027 = 0, $5028 = 0, $5029 = 0; - var $503 = 0, $5030 = 0, $5031 = 0, $5032 = 0, $5033 = 0, $5034 = 0, $5035 = 0, $5036 = 0, $5037 = 0, $5038 = 0, $5039 = 0, $504 = 0, $5040 = 0, $5041 = 0, $5042 = 0, $5043 = 0, $5044 = 0, $5045 = 0, $5046 = 0, $5047 = 0; - var $5048 = 0, $5049 = 0, $505 = 0, $5050 = 0, $5051 = 0, $5052 = 0, $5053 = 0, $5054 = 0, $5055 = 0, $5056 = 0, $5057 = 0, $5058 = 0, $5059 = 0, $506 = 0, $5060 = 0, $5061 = 0, $5062 = 0, $5063 = 0, $5064 = 0, $5065 = 0; - var $5066 = 0, $5067 = 0, $5068 = 0, $5069 = 0, $507 = 0, $5070 = 0, $5071 = 0, $5072 = 0, $5073 = 0, $5074 = 0, $5075 = 0, $5076 = 0, $5077 = 0, $5078 = 0, $5079 = 0, $508 = 0, $5080 = 0, $5081 = 0, $5082 = 0, $5083 = 0; - var $5084 = 0, $5085 = 0, $5086 = 0, $5087 = 0, $5088 = 0, $5089 = 0, $509 = 0, $5090 = 0, $5091 = 0, $5092 = 0, $5093 = 0, $5094 = 0, $5095 = 0, $5096 = 0, $5097 = 0, $5098 = 0, $5099 = 0, $51 = 0, $510 = 0, $5100 = 0; - var $5101 = 0, $5102 = 0, $5103 = 0, $5104 = 0, $5105 = 0, $5106 = 0, $5107 = 0, $5108 = 0, $5109 = 0, $511 = 0, $5110 = 0, $5111 = 0, $5112 = 0, $5113 = 0, $5114 = 0, $5115 = 0, $5116 = 0, $5117 = 0, $5118 = 0, $5119 = 0; - var $512 = 0, $5120 = 0, $5121 = 0, $5122 = 0, $5123 = 0, $5124 = 0, $5125 = 0, $5126 = 0, $5127 = 0, $5128 = 0, $5129 = 0, $513 = 0, $5130 = 0, $5131 = 0, $5132 = 0, $5133 = 0, $5134 = 0, $5135 = 0, $5136 = 0, $5137 = 0; - var $5138 = 0, $5139 = 0, $514 = 0, $5140 = 0, $5141 = 0, $5142 = 0, $5143 = 0, $5144 = 0, $5145 = 0, $5146 = 0, $5147 = 0, $5148 = 0, $5149 = 0, $515 = 0, $5150 = 0, $5151 = 0, $5152 = 0, $5153 = 0, $5154 = 0, $5155 = 0; - var $5156 = 0, $5157 = 0, $5158 = 0, $5159 = 0, $516 = 0, $5160 = 0, $5161 = 0, $5162 = 0, $5163 = 0, $5164 = 0, $5165 = 0, $5166 = 0, $5167 = 0, $5168 = 0, $5169 = 0, $517 = 0, $5170 = 0, $5171 = 0, $5172 = 0, $5173 = 0; - var $5174 = 0, $5175 = 0, $5176 = 0, $5177 = 0, $5178 = 0, $5179 = 0, $518 = 0, $5180 = 0, $5181 = 0, $5182 = 0, $5183 = 0, $5184 = 0, $5185 = 0, $5186 = 0, $5187 = 0, $5188 = 0, $5189 = 0, $519 = 0, $5190 = 0, $5191 = 0; - var $5192 = 0, $5193 = 0, $5194 = 0, $5195 = 0, $5196 = 0, $5197 = 0, $5198 = 0, $5199 = 0, $52 = 0, $520 = 0, $5200 = 0, $5201 = 0, $5202 = 0, $5203 = 0, $5204 = 0, $5205 = 0, $5206 = 0, $5207 = 0, $5208 = 0, $5209 = 0; - var $521 = 0, $5210 = 0, $5211 = 0, $5212 = 0, $5213 = 0, $5214 = 0, $5215 = 0, $5216 = 0, $5217 = 0, $5218 = 0, $5219 = 0, $522 = 0, $5220 = 0, $5221 = 0, $5222 = 0, $5223 = 0, $5224 = 0, $5225 = 0, $5226 = 0, $5227 = 0; - var $5228 = 0, $5229 = 0, $523 = 0, $5230 = 0, $5231 = 0, $5232 = 0, $5233 = 0, $5234 = 0, $5235 = 0, $5236 = 0, $5237 = 0, $5238 = 0, $5239 = 0, $524 = 0, $5240 = 0, $5241 = 0, $5242 = 0, $5243 = 0, $5244 = 0, $5245 = 0; - var $5246 = 0, $5247 = 0, $5248 = 0, $5249 = 0, $525 = 0, $5250 = 0, $5251 = 0, $5252 = 0, $5253 = 0, $5254 = 0, $5255 = 0, $5256 = 0, $5257 = 0, $5258 = 0, $5259 = 0, $526 = 0, $5260 = 0, $5261 = 0, $5262 = 0, $5263 = 0; - var $5264 = 0, $5265 = 0, $5266 = 0, $5267 = 0, $5268 = 0, $5269 = 0, $527 = 0, $5270 = 0, $5271 = 0, $5272 = 0, $5273 = 0, $5274 = 0, $5275 = 0, $5276 = 0, $5277 = 0, $5278 = 0, $5279 = 0, $528 = 0, $5280 = 0, $5281 = 0; - var $5282 = 0, $5283 = 0, $5284 = 0, $5285 = 0, $5286 = 0, $5287 = 0, $5288 = 0, $5289 = 0, $529 = 0, $5290 = 0, $5291 = 0, $5292 = 0, $5293 = 0, $5294 = 0, $5295 = 0, $5296 = 0, $5297 = 0, $5298 = 0, $5299 = 0, $53 = 0; - var $530 = 0, $5300 = 0, $5301 = 0, $5302 = 0, $5303 = 0, $5304 = 0, $5305 = 0, $5306 = 0, $5307 = 0, $5308 = 0, $5309 = 0, $531 = 0, $5310 = 0, $5311 = 0, $5312 = 0, $5313 = 0, $5314 = 0, $5315 = 0, $5316 = 0, $5317 = 0; - var $5318 = 0, $5319 = 0, $532 = 0, $5320 = 0, $5321 = 0, $5322 = 0, $5323 = 0, $5324 = 0, $5325 = 0, $5326 = 0, $5327 = 0, $5328 = 0, $5329 = 0, $533 = 0, $5330 = 0, $5331 = 0, $5332 = 0, $5333 = 0, $5334 = 0, $5335 = 0; - var $5336 = 0, $5337 = 0, $5338 = 0, $5339 = 0, $534 = 0, $5340 = 0, $5341 = 0, $5342 = 0, $5343 = 0, $5344 = 0, $5345 = 0, $5346 = 0, $5347 = 0, $5348 = 0, $5349 = 0, $535 = 0, $5350 = 0, $5351 = 0, $5352 = 0, $5353 = 0; - var $5354 = 0, $5355 = 0, $5356 = 0, $5357 = 0, $5358 = 0, $5359 = 0, $536 = 0, $5360 = 0, $5361 = 0, $5362 = 0, $5363 = 0, $5364 = 0, $5365 = 0, $5366 = 0, $5367 = 0, $5368 = 0, $5369 = 0, $537 = 0, $5370 = 0, $5371 = 0; - var $5372 = 0, $5373 = 0, $5374 = 0, $5375 = 0, $5376 = 0, $5377 = 0, $5378 = 0, $5379 = 0, $538 = 0, $5380 = 0, $5381 = 0, $5382 = 0, $5383 = 0, $5384 = 0, $5385 = 0, $5386 = 0, $5387 = 0, $5388 = 0, $5389 = 0, $539 = 0; - var $5390 = 0, $5391 = 0, $5392 = 0, $5393 = 0, $5394 = 0, $5395 = 0, $5396 = 0, $5397 = 0, $5398 = 0, $5399 = 0, $54 = 0, $540 = 0, $5400 = 0, $5401 = 0, $5402 = 0, $5403 = 0, $5404 = 0, $5405 = 0, $5406 = 0, $5407 = 0; - var $5408 = 0, $5409 = 0, $541 = 0, $5410 = 0, $5411 = 0, $5412 = 0, $5413 = 0, $5414 = 0, $5415 = 0, $5416 = 0, $5417 = 0, $5418 = 0, $5419 = 0, $542 = 0, $5420 = 0, $5421 = 0, $5422 = 0, $5423 = 0, $5424 = 0, $5425 = 0; - var $5426 = 0, $5427 = 0, $5428 = 0, $5429 = 0, $543 = 0, $5430 = 0, $5431 = 0, $5432 = 0, $5433 = 0, $5434 = 0, $5435 = 0, $5436 = 0, $5437 = 0, $5438 = 0, $5439 = 0, $544 = 0, $5440 = 0, $5441 = 0, $5442 = 0, $5443 = 0; - var $5444 = 0, $5445 = 0, $5446 = 0, $5447 = 0, $5448 = 0, $5449 = 0, $545 = 0, $5450 = 0, $5451 = 0, $5452 = 0, $5453 = 0, $5454 = 0, $5455 = 0, $5456 = 0, $5457 = 0, $5458 = 0, $5459 = 0, $546 = 0, $5460 = 0, $5461 = 0; - var $5462 = 0, $5463 = 0, $5464 = 0, $5465 = 0, $5466 = 0, $5467 = 0, $5468 = 0, $5469 = 0, $547 = 0, $5470 = 0, $5471 = 0, $5472 = 0, $5473 = 0, $5474 = 0, $5475 = 0, $5476 = 0, $5477 = 0, $5478 = 0, $5479 = 0, $548 = 0; - var $5480 = 0, $5481 = 0, $5482 = 0, $5483 = 0, $5484 = 0, $5485 = 0, $5486 = 0, $5487 = 0, $5488 = 0, $5489 = 0, $549 = 0, $5490 = 0, $5491 = 0, $5492 = 0, $5493 = 0, $5494 = 0, $5495 = 0, $5496 = 0, $5497 = 0, $5498 = 0; - var $5499 = 0, $55 = 0, $550 = 0, $5500 = 0, $5501 = 0, $5502 = 0, $5503 = 0, $5504 = 0, $5505 = 0, $5506 = 0, $5507 = 0, $5508 = 0, $5509 = 0, $551 = 0, $5510 = 0, $5511 = 0, $5512 = 0, $5513 = 0, $5514 = 0, $5515 = 0; - var $5516 = 0, $5517 = 0, $5518 = 0, $5519 = 0, $552 = 0, $5520 = 0, $5521 = 0, $5522 = 0, $5523 = 0, $5524 = 0, $5525 = 0, $5526 = 0, $5527 = 0, $5528 = 0, $5529 = 0, $553 = 0, $5530 = 0, $5531 = 0, $5532 = 0, $5533 = 0; - var $5534 = 0, $5535 = 0, $5536 = 0, $5537 = 0, $5538 = 0, $5539 = 0, $554 = 0, $5540 = 0, $5541 = 0, $5542 = 0, $5543 = 0, $5544 = 0, $5545 = 0, $5546 = 0, $5547 = 0, $5548 = 0, $5549 = 0, $555 = 0, $5550 = 0, $5551 = 0; - var $5552 = 0, $5553 = 0, $5554 = 0, $5555 = 0, $5556 = 0, $5557 = 0, $5558 = 0, $5559 = 0, $556 = 0, $5560 = 0, $5561 = 0, $5562 = 0, $5563 = 0, $5564 = 0, $5565 = 0, $5566 = 0, $5567 = 0, $5568 = 0, $5569 = 0, $557 = 0; - var $5570 = 0, $5571 = 0, $5572 = 0, $5573 = 0, $5574 = 0, $5575 = 0, $5576 = 0, $5577 = 0, $5578 = 0, $5579 = 0, $558 = 0, $5580 = 0, $5581 = 0, $5582 = 0, $5583 = 0, $5584 = 0, $5585 = 0, $5586 = 0, $5587 = 0, $5588 = 0; - var $5589 = 0, $559 = 0, $5590 = 0, $5591 = 0, $5592 = 0, $5593 = 0, $5594 = 0, $5595 = 0, $5596 = 0, $5597 = 0, $5598 = 0, $5599 = 0, $56 = 0, $560 = 0, $5600 = 0, $5601 = 0, $5602 = 0, $5603 = 0, $5604 = 0, $5605 = 0; - var $5606 = 0, $5607 = 0, $5608 = 0, $5609 = 0, $561 = 0, $5610 = 0, $5611 = 0, $5612 = 0, $5613 = 0, $5614 = 0, $5615 = 0, $5616 = 0, $5617 = 0, $5618 = 0, $5619 = 0, $562 = 0, $5620 = 0, $5621 = 0, $5622 = 0, $5623 = 0; - var $5624 = 0, $5625 = 0, $5626 = 0, $5627 = 0, $5628 = 0, $5629 = 0, $563 = 0, $5630 = 0, $5631 = 0, $5632 = 0, $5633 = 0, $5634 = 0, $5635 = 0, $5636 = 0, $5637 = 0, $5638 = 0, $5639 = 0, $564 = 0, $5640 = 0, $5641 = 0; - var $5642 = 0, $5643 = 0, $5644 = 0, $5645 = 0, $5646 = 0, $5647 = 0, $5648 = 0, $5649 = 0, $565 = 0, $5650 = 0, $5651 = 0, $5652 = 0, $5653 = 0, $5654 = 0, $5655 = 0, $5656 = 0, $5657 = 0, $5658 = 0, $5659 = 0, $566 = 0; - var $5660 = 0, $5661 = 0, $5662 = 0, $5663 = 0, $5664 = 0, $5665 = 0, $5666 = 0, $5667 = 0, $5668 = 0, $5669 = 0, $567 = 0, $5670 = 0, $5671 = 0, $5672 = 0, $5673 = 0, $5674 = 0, $5675 = 0, $5676 = 0, $5677 = 0, $5678 = 0; - var $5679 = 0, $568 = 0, $5680 = 0, $5681 = 0, $5682 = 0, $5683 = 0, $5684 = 0, $5685 = 0, $5686 = 0, $5687 = 0, $5688 = 0, $5689 = 0, $569 = 0, $5690 = 0, $5691 = 0, $5692 = 0, $5693 = 0, $5694 = 0, $5695 = 0, $5696 = 0; - var $5697 = 0, $5698 = 0, $5699 = 0, $57 = 0, $570 = 0, $5700 = 0, $5701 = 0, $5702 = 0, $5703 = 0, $5704 = 0, $5705 = 0, $5706 = 0, $5707 = 0, $5708 = 0, $5709 = 0, $571 = 0, $5710 = 0, $5711 = 0, $5712 = 0, $5713 = 0; - var $5714 = 0, $5715 = 0, $5716 = 0, $5717 = 0, $5718 = 0, $5719 = 0, $572 = 0, $5720 = 0, $5721 = 0, $5722 = 0, $5723 = 0, $5724 = 0, $5725 = 0, $5726 = 0, $5727 = 0, $5728 = 0, $5729 = 0, $573 = 0, $5730 = 0, $5731 = 0; - var $5732 = 0, $5733 = 0, $5734 = 0, $5735 = 0, $5736 = 0, $5737 = 0, $5738 = 0, $5739 = 0, $574 = 0, $5740 = 0, $5741 = 0, $5742 = 0, $5743 = 0, $5744 = 0, $5745 = 0, $5746 = 0, $5747 = 0, $5748 = 0, $5749 = 0, $575 = 0; - var $5750 = 0, $5751 = 0, $5752 = 0, $5753 = 0, $5754 = 0, $5755 = 0, $5756 = 0, $5757 = 0, $5758 = 0, $5759 = 0, $576 = 0, $5760 = 0, $5761 = 0, $5762 = 0, $5763 = 0, $5764 = 0, $5765 = 0, $5766 = 0, $5767 = 0, $5768 = 0; - var $5769 = 0, $577 = 0, $5770 = 0, $5771 = 0, $5772 = 0, $5773 = 0, $5774 = 0, $5775 = 0, $5776 = 0, $5777 = 0, $5778 = 0, $5779 = 0, $578 = 0, $5780 = 0, $5781 = 0, $5782 = 0, $5783 = 0, $5784 = 0, $5785 = 0, $5786 = 0; - var $5787 = 0, $5788 = 0, $5789 = 0, $579 = 0, $5790 = 0, $5791 = 0, $5792 = 0, $5793 = 0, $5794 = 0, $5795 = 0, $5796 = 0, $5797 = 0, $5798 = 0, $5799 = 0, $58 = 0, $580 = 0, $5800 = 0, $5801 = 0, $5802 = 0, $5803 = 0; - var $5804 = 0, $5805 = 0, $5806 = 0, $5807 = 0, $5808 = 0, $5809 = 0, $581 = 0, $5810 = 0, $5811 = 0, $5812 = 0, $5813 = 0, $5814 = 0, $5815 = 0, $5816 = 0, $5817 = 0, $5818 = 0, $5819 = 0, $582 = 0, $5820 = 0, $5821 = 0; - var $5822 = 0, $5823 = 0, $5824 = 0, $5825 = 0, $5826 = 0, $5827 = 0, $5828 = 0, $5829 = 0, $583 = 0, $5830 = 0, $5831 = 0, $5832 = 0, $5833 = 0, $5834 = 0, $5835 = 0, $5836 = 0, $5837 = 0, $5838 = 0, $5839 = 0, $584 = 0; - var $5840 = 0, $5841 = 0, $5842 = 0, $5843 = 0, $5844 = 0, $5845 = 0, $5846 = 0, $5847 = 0, $5848 = 0, $5849 = 0, $585 = 0, $5850 = 0, $5851 = 0, $5852 = 0, $5853 = 0, $5854 = 0, $5855 = 0, $5856 = 0, $5857 = 0, $5858 = 0; - var $5859 = 0, $586 = 0, $5860 = 0, $5861 = 0, $5862 = 0, $5863 = 0, $5864 = 0, $5865 = 0, $5866 = 0, $5867 = 0, $5868 = 0, $5869 = 0, $587 = 0, $5870 = 0, $5871 = 0, $5872 = 0, $5873 = 0, $5874 = 0, $5875 = 0, $5876 = 0; - var $5877 = 0, $5878 = 0, $5879 = 0, $588 = 0, $5880 = 0, $5881 = 0, $5882 = 0, $5883 = 0, $5884 = 0, $5885 = 0, $5886 = 0, $5887 = 0, $5888 = 0, $5889 = 0, $589 = 0, $5890 = 0, $5891 = 0, $5892 = 0, $5893 = 0, $5894 = 0; - var $5895 = 0, $5896 = 0, $5897 = 0, $5898 = 0, $5899 = 0, $59 = 0, $590 = 0, $5900 = 0, $5901 = 0, $5902 = 0, $5903 = 0, $5904 = 0, $5905 = 0, $5906 = 0, $5907 = 0, $5908 = 0, $5909 = 0, $591 = 0, $5910 = 0, $5911 = 0; - var $5912 = 0, $5913 = 0, $5914 = 0, $5915 = 0, $5916 = 0, $5917 = 0, $5918 = 0, $5919 = 0, $592 = 0, $5920 = 0, $5921 = 0, $5922 = 0, $5923 = 0, $5924 = 0, $5925 = 0, $5926 = 0, $5927 = 0, $5928 = 0, $5929 = 0, $593 = 0; - var $5930 = 0, $5931 = 0, $5932 = 0, $5933 = 0, $5934 = 0, $5935 = 0, $5936 = 0, $5937 = 0, $5938 = 0, $5939 = 0, $594 = 0, $5940 = 0, $5941 = 0, $5942 = 0, $5943 = 0, $5944 = 0, $5945 = 0, $5946 = 0, $5947 = 0, $5948 = 0; - var $5949 = 0, $595 = 0, $5950 = 0, $5951 = 0, $5952 = 0, $5953 = 0, $5954 = 0, $5955 = 0, $5956 = 0, $5957 = 0, $5958 = 0, $5959 = 0, $596 = 0, $5960 = 0, $5961 = 0, $5962 = 0, $5963 = 0, $5964 = 0, $5965 = 0, $5966 = 0; - var $5967 = 0, $5968 = 0, $5969 = 0, $597 = 0, $5970 = 0, $5971 = 0, $5972 = 0, $5973 = 0, $5974 = 0, $5975 = 0, $5976 = 0, $5977 = 0, $5978 = 0, $5979 = 0, $598 = 0, $5980 = 0, $5981 = 0, $5982 = 0, $5983 = 0, $5984 = 0; - var $5985 = 0, $5986 = 0, $5987 = 0, $5988 = 0, $5989 = 0, $599 = 0, $5990 = 0, $5991 = 0, $5992 = 0, $5993 = 0, $5994 = 0, $5995 = 0, $5996 = 0, $5997 = 0, $5998 = 0, $5999 = 0, $6 = 0, $60 = 0, $600 = 0, $6000 = 0; - var $6001 = 0, $6002 = 0, $6003 = 0, $6004 = 0, $6005 = 0, $6006 = 0, $6007 = 0, $6008 = 0, $6009 = 0, $601 = 0, $6010 = 0, $6011 = 0, $6012 = 0, $6013 = 0, $6014 = 0, $6015 = 0, $6016 = 0, $6017 = 0, $6018 = 0, $6019 = 0; - var $602 = 0, $6020 = 0, $6021 = 0, $6022 = 0, $6023 = 0, $6024 = 0, $6025 = 0, $6026 = 0, $6027 = 0, $6028 = 0, $6029 = 0, $603 = 0, $6030 = 0, $6031 = 0, $6032 = 0, $6033 = 0, $6034 = 0, $6035 = 0, $6036 = 0, $6037 = 0; - var $6038 = 0, $6039 = 0, $604 = 0, $6040 = 0, $6041 = 0, $6042 = 0, $6043 = 0, $6044 = 0, $6045 = 0, $6046 = 0, $6047 = 0, $6048 = 0, $6049 = 0, $605 = 0, $6050 = 0, $6051 = 0, $6052 = 0, $6053 = 0, $6054 = 0, $6055 = 0; - var $6056 = 0, $6057 = 0, $6058 = 0, $6059 = 0, $606 = 0, $6060 = 0, $6061 = 0, $6062 = 0, $6063 = 0, $6064 = 0, $6065 = 0, $6066 = 0, $6067 = 0, $6068 = 0, $6069 = 0, $607 = 0, $6070 = 0, $6071 = 0, $6072 = 0, $6073 = 0; - var $6074 = 0, $6075 = 0, $6076 = 0, $6077 = 0, $6078 = 0, $6079 = 0, $608 = 0, $6080 = 0, $6081 = 0, $6082 = 0, $6083 = 0, $6084 = 0, $6085 = 0, $6086 = 0, $6087 = 0, $6088 = 0, $6089 = 0, $609 = 0, $6090 = 0, $6091 = 0; - var $6092 = 0, $6093 = 0, $6094 = 0, $6095 = 0, $6096 = 0, $6097 = 0, $6098 = 0, $6099 = 0, $61 = 0, $610 = 0, $6100 = 0, $6101 = 0, $6102 = 0, $6103 = 0, $6104 = 0, $6105 = 0, $6106 = 0, $6107 = 0, $6108 = 0, $6109 = 0; - var $611 = 0, $6110 = 0, $6111 = 0, $6112 = 0, $6113 = 0, $6114 = 0, $6115 = 0, $6116 = 0, $6117 = 0, $6118 = 0, $6119 = 0, $612 = 0, $6120 = 0, $6121 = 0, $6122 = 0, $6123 = 0, $6124 = 0, $6125 = 0, $6126 = 0, $6127 = 0; - var $6128 = 0, $6129 = 0, $613 = 0, $6130 = 0, $6131 = 0, $6132 = 0, $6133 = 0, $6134 = 0, $6135 = 0, $6136 = 0, $6137 = 0, $6138 = 0, $6139 = 0, $614 = 0, $6140 = 0, $6141 = 0, $6142 = 0, $6143 = 0, $6144 = 0, $6145 = 0; - var $6146 = 0, $6147 = 0, $6148 = 0, $6149 = 0, $615 = 0, $6150 = 0, $6151 = 0, $6152 = 0, $6153 = 0, $6154 = 0, $6155 = 0, $6156 = 0, $6157 = 0, $6158 = 0, $6159 = 0, $616 = 0, $6160 = 0, $6161 = 0, $6162 = 0, $6163 = 0; - var $6164 = 0, $6165 = 0, $6166 = 0, $6167 = 0, $6168 = 0, $6169 = 0, $617 = 0, $6170 = 0, $6171 = 0, $6172 = 0, $6173 = 0, $6174 = 0, $6175 = 0, $6176 = 0, $6177 = 0, $6178 = 0, $6179 = 0, $618 = 0, $6180 = 0, $6181 = 0; - var $6182 = 0, $6183 = 0, $6184 = 0, $6185 = 0, $6186 = 0, $6187 = 0, $6188 = 0, $6189 = 0, $619 = 0, $6190 = 0, $6191 = 0, $6192 = 0, $6193 = 0, $6194 = 0, $6195 = 0, $6196 = 0, $6197 = 0, $6198 = 0, $6199 = 0, $62 = 0; - var $620 = 0, $6200 = 0, $6201 = 0, $6202 = 0, $6203 = 0, $6204 = 0, $6205 = 0, $6206 = 0, $6207 = 0, $6208 = 0, $6209 = 0, $621 = 0, $6210 = 0, $6211 = 0, $6212 = 0, $6213 = 0, $6214 = 0, $6215 = 0, $6216 = 0, $6217 = 0; - var $6218 = 0, $6219 = 0, $622 = 0, $6220 = 0, $6221 = 0, $6222 = 0, $6223 = 0, $6224 = 0, $6225 = 0, $6226 = 0, $6227 = 0, $6228 = 0, $6229 = 0, $623 = 0, $6230 = 0, $6231 = 0, $6232 = 0, $6233 = 0, $6234 = 0, $6235 = 0; - var $6236 = 0, $6237 = 0, $6238 = 0, $6239 = 0, $624 = 0, $6240 = 0, $6241 = 0, $6242 = 0, $6243 = 0, $6244 = 0, $6245 = 0, $6246 = 0, $6247 = 0, $6248 = 0, $6249 = 0, $625 = 0, $6250 = 0, $6251 = 0, $6252 = 0, $6253 = 0; - var $6254 = 0, $6255 = 0, $6256 = 0, $6257 = 0, $6258 = 0, $6259 = 0, $626 = 0, $6260 = 0, $6261 = 0, $6262 = 0, $6263 = 0, $6264 = 0, $6265 = 0, $6266 = 0, $6267 = 0, $6268 = 0, $6269 = 0, $627 = 0, $6270 = 0, $6271 = 0; - var $6272 = 0, $6273 = 0, $6274 = 0, $6275 = 0, $6276 = 0, $6277 = 0, $6278 = 0, $6279 = 0, $628 = 0, $6280 = 0, $6281 = 0, $6282 = 0, $6283 = 0, $6284 = 0, $6285 = 0, $6286 = 0, $6287 = 0, $6288 = 0, $6289 = 0, $629 = 0; - var $6290 = 0, $6291 = 0, $6292 = 0, $6293 = 0, $6294 = 0, $6295 = 0, $6296 = 0, $6297 = 0, $6298 = 0, $6299 = 0, $63 = 0, $630 = 0, $6300 = 0, $6301 = 0, $6302 = 0, $6303 = 0, $6304 = 0, $6305 = 0, $6306 = 0, $6307 = 0; - var $6308 = 0, $6309 = 0, $631 = 0, $6310 = 0, $6311 = 0, $6312 = 0, $6313 = 0, $6314 = 0, $6315 = 0, $6316 = 0, $6317 = 0, $6318 = 0, $6319 = 0, $632 = 0, $6320 = 0, $6321 = 0, $6322 = 0, $6323 = 0, $6324 = 0, $6325 = 0; - var $6326 = 0, $6327 = 0, $6328 = 0, $6329 = 0, $633 = 0, $6330 = 0, $6331 = 0, $6332 = 0, $6333 = 0, $6334 = 0, $6335 = 0, $6336 = 0, $6337 = 0, $6338 = 0, $6339 = 0, $634 = 0, $6340 = 0, $6341 = 0, $6342 = 0, $6343 = 0; - var $6344 = 0, $6345 = 0, $6346 = 0, $6347 = 0, $6348 = 0, $6349 = 0, $635 = 0, $6350 = 0, $6351 = 0, $6352 = 0, $6353 = 0, $6354 = 0, $6355 = 0, $6356 = 0, $6357 = 0, $6358 = 0, $6359 = 0, $636 = 0, $6360 = 0, $6361 = 0; - var $6362 = 0, $6363 = 0, $6364 = 0, $6365 = 0, $6366 = 0, $6367 = 0, $6368 = 0, $6369 = 0, $637 = 0, $6370 = 0, $6371 = 0, $6372 = 0, $6373 = 0, $6374 = 0, $6375 = 0, $6376 = 0, $6377 = 0, $6378 = 0, $6379 = 0, $638 = 0; - var $6380 = 0, $6381 = 0, $6382 = 0, $6383 = 0, $6384 = 0, $6385 = 0, $6386 = 0, $6387 = 0, $6388 = 0, $6389 = 0, $639 = 0, $6390 = 0, $6391 = 0, $6392 = 0, $6393 = 0, $6394 = 0, $6395 = 0, $6396 = 0, $6397 = 0, $6398 = 0; - var $6399 = 0, $64 = 0, $640 = 0, $6400 = 0, $6401 = 0, $6402 = 0, $6403 = 0, $6404 = 0, $6405 = 0, $6406 = 0, $6407 = 0, $6408 = 0, $6409 = 0, $641 = 0, $6410 = 0, $6411 = 0, $6412 = 0, $6413 = 0, $6414 = 0, $6415 = 0; - var $6416 = 0, $6417 = 0, $6418 = 0, $6419 = 0, $642 = 0, $6420 = 0, $6421 = 0, $6422 = 0, $6423 = 0, $6424 = 0, $6425 = 0, $6426 = 0, $6427 = 0, $6428 = 0, $6429 = 0, $643 = 0, $6430 = 0, $6431 = 0, $6432 = 0, $6433 = 0; - var $6434 = 0, $6435 = 0, $6436 = 0, $6437 = 0, $6438 = 0, $6439 = 0, $644 = 0, $6440 = 0, $6441 = 0, $6442 = 0, $6443 = 0, $6444 = 0, $6445 = 0, $6446 = 0, $6447 = 0, $6448 = 0, $6449 = 0, $645 = 0, $6450 = 0, $6451 = 0; - var $6452 = 0, $6453 = 0, $6454 = 0, $6455 = 0, $6456 = 0, $6457 = 0, $6458 = 0, $6459 = 0, $646 = 0, $6460 = 0, $6461 = 0, $6462 = 0, $6463 = 0, $6464 = 0, $6465 = 0, $6466 = 0, $6467 = 0, $6468 = 0, $6469 = 0, $647 = 0; - var $6470 = 0, $6471 = 0, $6472 = 0, $6473 = 0, $6474 = 0, $6475 = 0, $6476 = 0, $6477 = 0, $6478 = 0, $6479 = 0, $648 = 0, $6480 = 0, $6481 = 0, $6482 = 0, $6483 = 0, $6484 = 0, $6485 = 0, $6486 = 0, $6487 = 0, $6488 = 0; - var $6489 = 0, $649 = 0, $6490 = 0, $6491 = 0, $6492 = 0, $6493 = 0, $6494 = 0, $6495 = 0, $6496 = 0, $6497 = 0, $6498 = 0, $6499 = 0, $65 = 0, $650 = 0, $6500 = 0, $6501 = 0, $6502 = 0, $6503 = 0, $6504 = 0, $6505 = 0; - var $6506 = 0, $6507 = 0, $6508 = 0, $6509 = 0, $651 = 0, $6510 = 0, $6511 = 0, $6512 = 0, $6513 = 0, $6514 = 0, $6515 = 0, $6516 = 0, $6517 = 0, $6518 = 0, $6519 = 0, $652 = 0, $6520 = 0, $6521 = 0, $6522 = 0, $6523 = 0; - var $6524 = 0, $6525 = 0, $6526 = 0, $6527 = 0, $6528 = 0, $6529 = 0, $653 = 0, $6530 = 0, $6531 = 0, $6532 = 0, $6533 = 0, $6534 = 0, $6535 = 0, $6536 = 0, $6537 = 0, $6538 = 0, $6539 = 0, $654 = 0, $6540 = 0, $6541 = 0; - var $6542 = 0, $6543 = 0, $6544 = 0, $6545 = 0, $6546 = 0, $6547 = 0, $6548 = 0, $6549 = 0, $655 = 0, $6550 = 0, $6551 = 0, $6552 = 0, $6553 = 0, $6554 = 0, $6555 = 0, $6556 = 0, $6557 = 0, $6558 = 0, $6559 = 0, $656 = 0; - var $6560 = 0, $6561 = 0, $6562 = 0, $6563 = 0, $6564 = 0, $6565 = 0, $6566 = 0, $6567 = 0, $6568 = 0, $6569 = 0, $657 = 0, $6570 = 0, $6571 = 0, $6572 = 0, $6573 = 0, $6574 = 0, $6575 = 0, $6576 = 0, $6577 = 0, $6578 = 0; - var $6579 = 0, $658 = 0, $6580 = 0, $6581 = 0, $6582 = 0, $6583 = 0, $6584 = 0, $6585 = 0, $6586 = 0, $6587 = 0, $6588 = 0, $6589 = 0, $659 = 0, $6590 = 0, $6591 = 0, $6592 = 0, $6593 = 0, $6594 = 0, $6595 = 0, $6596 = 0; - var $6597 = 0, $6598 = 0, $6599 = 0, $66 = 0, $660 = 0, $6600 = 0, $6601 = 0, $6602 = 0, $6603 = 0, $6604 = 0, $6605 = 0, $6606 = 0, $6607 = 0, $6608 = 0, $6609 = 0, $661 = 0, $6610 = 0, $6611 = 0, $6612 = 0, $6613 = 0; - var $6614 = 0, $6615 = 0, $6616 = 0, $6617 = 0, $6618 = 0, $6619 = 0, $662 = 0, $6620 = 0, $6621 = 0, $6622 = 0, $6623 = 0, $6624 = 0, $6625 = 0, $6626 = 0, $6627 = 0, $6628 = 0, $6629 = 0, $663 = 0, $6630 = 0, $6631 = 0; - var $6632 = 0, $6633 = 0, $6634 = 0, $6635 = 0, $6636 = 0, $6637 = 0, $6638 = 0, $6639 = 0, $664 = 0, $6640 = 0, $6641 = 0, $6642 = 0, $6643 = 0, $6644 = 0, $6645 = 0, $6646 = 0, $6647 = 0, $6648 = 0, $6649 = 0, $665 = 0; - var $6650 = 0, $6651 = 0, $6652 = 0, $6653 = 0, $6654 = 0, $6655 = 0, $6656 = 0, $6657 = 0, $6658 = 0, $6659 = 0, $666 = 0, $6660 = 0, $6661 = 0, $6662 = 0, $6663 = 0, $6664 = 0, $6665 = 0, $6666 = 0, $6667 = 0, $6668 = 0; - var $6669 = 0, $667 = 0, $6670 = 0, $6671 = 0, $6672 = 0, $6673 = 0, $6674 = 0, $6675 = 0, $6676 = 0, $6677 = 0, $6678 = 0, $6679 = 0, $668 = 0, $6680 = 0, $6681 = 0, $6682 = 0, $6683 = 0, $6684 = 0, $6685 = 0, $6686 = 0; - var $6687 = 0, $6688 = 0, $6689 = 0, $669 = 0, $6690 = 0, $6691 = 0, $6692 = 0, $6693 = 0, $6694 = 0, $6695 = 0, $6696 = 0, $6697 = 0, $6698 = 0, $6699 = 0, $67 = 0, $670 = 0, $6700 = 0, $6701 = 0, $6702 = 0, $6703 = 0; - var $6704 = 0, $6705 = 0, $6706 = 0, $6707 = 0, $6708 = 0, $6709 = 0, $671 = 0, $6710 = 0, $6711 = 0, $6712 = 0, $6713 = 0, $6714 = 0, $6715 = 0, $6716 = 0, $6717 = 0, $6718 = 0, $6719 = 0, $672 = 0, $6720 = 0, $6721 = 0; - var $6722 = 0, $6723 = 0, $6724 = 0, $6725 = 0, $6726 = 0, $6727 = 0, $6728 = 0, $6729 = 0, $673 = 0, $6730 = 0, $6731 = 0, $6732 = 0, $6733 = 0, $6734 = 0, $6735 = 0, $6736 = 0, $6737 = 0, $6738 = 0, $6739 = 0, $674 = 0; - var $6740 = 0, $6741 = 0, $6742 = 0, $6743 = 0, $6744 = 0, $6745 = 0, $6746 = 0, $6747 = 0, $6748 = 0, $6749 = 0, $675 = 0, $6750 = 0, $6751 = 0, $6752 = 0, $6753 = 0, $6754 = 0, $6755 = 0, $6756 = 0, $6757 = 0, $6758 = 0; - var $6759 = 0, $676 = 0, $6760 = 0, $6761 = 0, $6762 = 0, $6763 = 0, $6764 = 0, $6765 = 0, $6766 = 0, $6767 = 0, $6768 = 0, $6769 = 0, $677 = 0, $6770 = 0, $6771 = 0, $6772 = 0, $6773 = 0, $6774 = 0, $6775 = 0, $6776 = 0; - var $6777 = 0, $6778 = 0, $6779 = 0, $678 = 0, $6780 = 0, $6781 = 0, $6782 = 0, $6783 = 0, $6784 = 0, $6785 = 0, $6786 = 0, $6787 = 0, $6788 = 0, $6789 = 0, $679 = 0, $6790 = 0, $6791 = 0, $6792 = 0, $6793 = 0, $6794 = 0; - var $6795 = 0, $6796 = 0, $6797 = 0, $6798 = 0, $6799 = 0, $68 = 0, $680 = 0, $6800 = 0, $6801 = 0, $6802 = 0, $6803 = 0, $6804 = 0, $6805 = 0, $6806 = 0, $6807 = 0, $6808 = 0, $6809 = 0, $681 = 0, $6810 = 0, $6811 = 0; - var $6812 = 0, $6813 = 0, $6814 = 0, $6815 = 0, $6816 = 0, $6817 = 0, $6818 = 0, $6819 = 0, $682 = 0, $6820 = 0, $6821 = 0, $6822 = 0, $6823 = 0, $6824 = 0, $6825 = 0, $6826 = 0, $6827 = 0, $6828 = 0, $6829 = 0, $683 = 0; - var $6830 = 0, $6831 = 0, $6832 = 0, $6833 = 0, $6834 = 0, $6835 = 0, $6836 = 0, $6837 = 0, $6838 = 0, $6839 = 0, $684 = 0, $6840 = 0, $6841 = 0, $6842 = 0, $6843 = 0, $6844 = 0, $6845 = 0, $6846 = 0, $6847 = 0, $6848 = 0; - var $6849 = 0, $685 = 0, $6850 = 0, $6851 = 0, $6852 = 0, $6853 = 0, $6854 = 0, $6855 = 0, $6856 = 0, $6857 = 0, $6858 = 0, $6859 = 0, $686 = 0, $6860 = 0, $6861 = 0, $6862 = 0, $6863 = 0, $6864 = 0, $6865 = 0, $6866 = 0; - var $6867 = 0, $6868 = 0, $6869 = 0, $687 = 0, $6870 = 0, $6871 = 0, $6872 = 0, $6873 = 0, $6874 = 0, $6875 = 0, $6876 = 0, $6877 = 0, $6878 = 0, $6879 = 0, $688 = 0, $6880 = 0, $6881 = 0, $6882 = 0, $6883 = 0, $6884 = 0; - var $6885 = 0, $6886 = 0, $6887 = 0, $6888 = 0, $6889 = 0, $689 = 0, $6890 = 0, $6891 = 0, $6892 = 0, $6893 = 0, $6894 = 0, $6895 = 0, $6896 = 0, $6897 = 0, $6898 = 0, $6899 = 0, $69 = 0, $690 = 0, $6900 = 0, $6901 = 0; - var $6902 = 0, $6903 = 0, $6904 = 0, $6905 = 0, $6906 = 0, $6907 = 0, $6908 = 0, $6909 = 0, $691 = 0, $6910 = 0, $6911 = 0, $6912 = 0, $6913 = 0, $6914 = 0, $6915 = 0, $6916 = 0, $6917 = 0, $6918 = 0, $6919 = 0, $692 = 0; - var $6920 = 0, $6921 = 0, $6922 = 0, $6923 = 0, $6924 = 0, $6925 = 0, $6926 = 0, $6927 = 0, $6928 = 0, $6929 = 0, $693 = 0, $6930 = 0, $6931 = 0, $6932 = 0, $6933 = 0, $6934 = 0, $6935 = 0, $6936 = 0, $6937 = 0, $6938 = 0; - var $6939 = 0, $694 = 0, $6940 = 0, $6941 = 0, $6942 = 0, $6943 = 0, $6944 = 0, $6945 = 0, $6946 = 0, $6947 = 0, $6948 = 0, $6949 = 0, $695 = 0, $6950 = 0, $6951 = 0, $6952 = 0, $6953 = 0, $6954 = 0, $6955 = 0, $6956 = 0; - var $6957 = 0, $6958 = 0, $6959 = 0, $696 = 0, $6960 = 0, $6961 = 0, $6962 = 0, $6963 = 0, $6964 = 0, $6965 = 0, $6966 = 0, $6967 = 0, $6968 = 0, $6969 = 0, $697 = 0, $6970 = 0, $6971 = 0, $6972 = 0, $6973 = 0, $6974 = 0; - var $6975 = 0, $6976 = 0, $6977 = 0, $6978 = 0, $6979 = 0, $698 = 0, $6980 = 0, $6981 = 0, $6982 = 0, $6983 = 0, $6984 = 0, $6985 = 0, $6986 = 0, $6987 = 0, $6988 = 0, $6989 = 0, $699 = 0, $6990 = 0, $6991 = 0, $6992 = 0; - var $6993 = 0, $6994 = 0, $6995 = 0, $6996 = 0, $6997 = 0, $6998 = 0, $6999 = 0, $7 = 0, $70 = 0, $700 = 0, $7000 = 0, $7001 = 0, $7002 = 0, $7003 = 0, $7004 = 0, $7005 = 0, $7006 = 0, $7007 = 0, $7008 = 0, $7009 = 0; - var $701 = 0, $7010 = 0, $7011 = 0, $7012 = 0, $7013 = 0, $7014 = 0, $7015 = 0, $7016 = 0, $7017 = 0, $7018 = 0, $7019 = 0, $702 = 0, $7020 = 0, $7021 = 0, $7022 = 0, $7023 = 0, $7024 = 0, $7025 = 0, $7026 = 0, $7027 = 0; - var $7028 = 0, $7029 = 0, $703 = 0, $7030 = 0, $7031 = 0, $7032 = 0, $7033 = 0, $7034 = 0, $7035 = 0, $7036 = 0, $7037 = 0, $7038 = 0, $7039 = 0, $704 = 0, $7040 = 0, $7041 = 0, $7042 = 0, $7043 = 0, $7044 = 0, $7045 = 0; - var $7046 = 0, $7047 = 0, $7048 = 0, $7049 = 0, $705 = 0, $7050 = 0, $7051 = 0, $7052 = 0, $7053 = 0, $7054 = 0, $7055 = 0, $7056 = 0, $7057 = 0, $7058 = 0, $7059 = 0, $706 = 0, $7060 = 0, $7061 = 0, $7062 = 0, $7063 = 0; - var $7064 = 0, $7065 = 0, $7066 = 0, $7067 = 0, $7068 = 0, $7069 = 0, $707 = 0, $7070 = 0, $7071 = 0, $7072 = 0, $7073 = 0, $7074 = 0, $7075 = 0, $7076 = 0, $7077 = 0, $7078 = 0, $7079 = 0, $708 = 0, $7080 = 0, $7081 = 0; - var $7082 = 0, $7083 = 0, $7084 = 0, $7085 = 0, $7086 = 0, $7087 = 0, $7088 = 0, $7089 = 0, $709 = 0, $7090 = 0, $7091 = 0, $7092 = 0, $7093 = 0, $7094 = 0, $7095 = 0, $7096 = 0, $7097 = 0, $7098 = 0, $7099 = 0, $71 = 0; - var $710 = 0, $7100 = 0, $7101 = 0, $7102 = 0, $7103 = 0, $7104 = 0, $7105 = 0, $7106 = 0, $7107 = 0, $7108 = 0, $7109 = 0, $711 = 0, $7110 = 0, $7111 = 0, $7112 = 0, $7113 = 0, $7114 = 0, $7115 = 0, $7116 = 0, $7117 = 0; - var $7118 = 0, $7119 = 0, $712 = 0, $7120 = 0, $7121 = 0, $7122 = 0, $7123 = 0, $7124 = 0, $7125 = 0, $7126 = 0, $7127 = 0, $7128 = 0, $7129 = 0, $713 = 0, $7130 = 0, $7131 = 0, $7132 = 0, $7133 = 0, $7134 = 0, $7135 = 0; - var $7136 = 0, $7137 = 0, $7138 = 0, $7139 = 0, $714 = 0, $7140 = 0, $7141 = 0, $7142 = 0, $7143 = 0, $7144 = 0, $7145 = 0, $7146 = 0, $7147 = 0, $7148 = 0, $7149 = 0, $715 = 0, $7150 = 0, $7151 = 0, $7152 = 0, $7153 = 0; - var $7154 = 0, $7155 = 0, $7156 = 0, $7157 = 0, $7158 = 0, $7159 = 0, $716 = 0, $7160 = 0, $7161 = 0, $7162 = 0, $7163 = 0, $7164 = 0, $7165 = 0, $7166 = 0, $7167 = 0, $7168 = 0, $7169 = 0, $717 = 0, $7170 = 0, $7171 = 0; - var $7172 = 0, $7173 = 0, $7174 = 0, $7175 = 0, $7176 = 0, $7177 = 0, $7178 = 0, $7179 = 0, $718 = 0, $7180 = 0, $7181 = 0, $7182 = 0, $7183 = 0, $7184 = 0, $7185 = 0, $7186 = 0, $7187 = 0, $7188 = 0, $7189 = 0, $719 = 0; - var $7190 = 0, $7191 = 0, $7192 = 0, $7193 = 0, $7194 = 0, $7195 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0; - var $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0; - var $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0; - var $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0; - var $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0; - var $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0; - var $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 = 0; - var $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0, $858 = 0; - var $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0, $876 = 0; - var $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0; - var $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0, $911 = 0; - var $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0; - var $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0, $948 = 0; - var $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0, $966 = 0; - var $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0, $983 = 0, $984 = 0; - var $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $aMem = 0, $aOffset = 0, $aOp = 0, $aPermute = 0; - var $aRes = 0, $aRoot = 0, $aTempRec = 0, $aType = 0, $affinity = 0, $alreadyExists = 0, $apArg = 0, $apArg127 = 0, $apVal = 0, $apVal96 = 0, $avail = 0, $bIntint = 0, $bRev = 0, $c = 0, $cAff = 0, $cnt = 0, $cnt41 = 0, $ctx = 0, $ctx95 = 0, $db = 0; - var $desiredAutoCommit = 0, $eNew = 0, $eOld = 0, $encoding = 0, $exists = 0, $file_format = 0, $flags = 0, $flags1 = 0, $flags3 = 0, $flags81 = 0, $i = 0, $i11 = 0, $i112 = 0, $i125 = 0, $i14 = 0, $i2 = 0, $i7 = 0, $i92 = 0, $i98 = 0, $iA = 0; - var $iA4 = 0, $iB = 0, $iB5 = 0, $iCnt = 0, $iCompare = 0, $iCookie = 0, $iDb = 0, $iDb22 = 0, $iDb78 = 0, $iDb83 = 0, $iGen = 0, $iKey = 0, $iKey38 = 0, $iKey44 = 0, $iKey48 = 0, $iMeta = 0, $iMeta18 = 0, $iMoved = 0, $iQuery = 0, $iRollback = 0; - var $iSavepoint = 0, $iSet = 0, $idx = 0, $ii = 0, $ii31 = 0, $initData = 0, $isTransaction = 0, $isWriteLock = 0, $j = 0, $j84 = 0, $lastRowid = 0, $len = 0, $len15 = 0, $n = 0, $n1 = 0, $n3 = 0, $n55 = 0, $n6 = 0, $n64 = 0, $n91 = 0; - var $nArg = 0, $nArg124 = 0, $nByte = 0, $nByte12 = 0, $nByte85 = 0, $nChange = 0, $nChange$ = 0, $nData = 0, $nEntry = 0, $nErr = 0, $nField = 0, $nField19 = 0, $nField29 = 0, $nHdr = 0, $nIgnore = 0, $nKey = 0, $nMem = 0, $nName = 0, $nProgressLimit = 0, $nRoot = 0; - var $nVarint = 0, $nVmStep = 0, $nZero = 0, $nZero46 = 0, $newMax = 0, $nullFlag = 0, $oc = 0, $offset = 0, $op = 0, $op47 = 0, $or$cond = 0, $p1 = 0, $p1102 = 0, $p117 = 0, $p18 = 0, $p2 = 0, $p210 = 0, $p221 = 0, $p29 = 0, $pArg = 0; - var $pArgc = 0, $pBt = 0, $pBt100 = 0, $pBt101 = 0, $pBt129 = 0, $pC = 0, $pC28 = 0, $pC30 = 0, $pC32 = 0, $pC35 = 0, $pC39 = 0, $pC45 = 0, $pC49 = 0, $pC50 = 0, $pC52 = 0, $pC53 = 0, $pC56 = 0, $pC58 = 0, $pC59 = 0, $pC62 = 0; - var $pC65 = 0, $pC67 = 0, $pC69 = 0, $pC74 = 0, $pC75 = 0, $pC79 = 0, $pCaller = 0, $pColl = 0, $pCrsr = 0, $pCrsr16 = 0, $pCrsr36 = 0, $pCrsr54 = 0, $pCrsr60 = 0, $pCrsr63 = 0, $pCrsr68 = 0, $pCrsr70 = 0, $pCrsr73 = 0, $pCur = 0, $pCur104 = 0, $pCur110 = 0; - var $pCur116 = 0, $pCur120 = 0, $pCx = 0, $pCx25 = 0, $pCx26 = 0, $pData = 0, $pData0 = 0, $pDb = 0, $pDb23 = 0, $pDb82 = 0, $pDest = 0, $pDest115 = 0, $pEnd = 0, $pFrame = 0, $pFrame43 = 0, $pFrame87 = 0, $pFrame89 = 0, $pFrame90 = 0, $pFree = 0, $pIdxKey = 0; - var $pIn = 0, $pIn1 = 0, $pIn2 = 0, $pIn3 = 0, $pKey = 0, $pKeyInfo = 0, $pKeyInfo20 = 0, $pKeyInfo24 = 0, $pLast = 0, $pMem = 0, $pMem42 = 0, $pMem86 = 0, $pMem93 = 0, $pMem97 = 0, $pMem99 = 0, $pModule = 0, $pModule106 = 0, $pModule107 = 0, $pModule114 = 0, $pModule118 = 0; - var $pModule123 = 0, $pName = 0, $pNew = 0, $pOp = 0, $pOut = 0, $pPager = 0, $pProgram = 0, $pQuery = 0, $pRec = 0, $pRec94 = 0, $pReg = 0, $pRt = 0, $pSavepoint = 0, $pTmp = 0, $pVTab = 0, $pVar = 0, $pVdbe = 0, $pVtab = 0, $pVtab105 = 0, $pVtab109 = 0; - var $pVtab113 = 0, $pVtab117 = 0, $pVtab121 = 0, $pVtab122 = 0, $pVtabCursor = 0, $pVtabCursor108 = 0, $pX = 0, $pX128 = 0, $payloadSize64 = 0, $pc = 0, $pcDest = 0, $pgno = 0, $pgno80 = 0, $pnErr = 0, $r = 0, $r34 = 0, $r72 = 0, $r77 = 0, $rA = 0, $rB = 0; - var $rc = 0, $res = 0, $res111 = 0, $res119 = 0, $res27 = 0, $res33 = 0, $res37 = 0, $res40 = 0, $res51 = 0, $res61 = 0, $res64 = 0, $res66 = 0, $res71 = 0, $res76 = 0, $resetSchemaOnFault = 0, $rowid = 0, $rowid126 = 0, $sContext = 0, $sMem = 0, $seekResult = 0; - var $serial_type = 0, $szField = 0, $t = 0, $t88 = 0, $turnOnAC = 0, $type1 = 0, $type2 = 0, $uA = 0, $v = 0, $v1 = 0, $v2 = 0, $v57 = 0, $val = 0, $vararg_buffer62 = 0, $vararg_ptr15 = 0, $vararg_ptr16 = 0, $vararg_ptr34 = 0, $vararg_ptr35 = 0, $vararg_ptr5 = 0, $vararg_ptr53 = 0; - var $vararg_ptr54 = 0, $vtabOnConflict = 0, $wrFlag = 0, $z = 0, $z103 = 0, $z130 = 0, $zAffinity = 0, $zAffinity13 = 0, $zData = 0, $zDb = 0, $zEndHdr = 0, $zFilename = 0, $zHdr = 0, $zKey = 0, $zLogFmt = 0, $zMalloc = 0, $zMaster = 0, $zName = 0, $zNewRecord = 0, $zSql = 0; - var $zTbl = 0, $zTrace = 0, $zType = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 1776|0; - $vararg_buffer62 = sp + 440|0; - $0 = sp + 1560|0; - $pc = sp + 1556|0; - $aOp = sp + 1552|0; - $pOp = sp + 1548|0; - $rc = sp + 1544|0; - $db = sp + 1540|0; - $resetSchemaOnFault = sp + 1774|0; - $encoding = sp + 1773|0; - $iCompare = sp + 1536|0; - $nVmStep = sp + 1532|0; - $nProgressLimit = sp + 1528|0; - $aMem = sp + 1524|0; - $pIn1 = sp + 1520|0; - $pIn2 = sp + 1516|0; - $pIn3 = sp + 1512|0; - $pOut = sp + 1508|0; - $aPermute = sp + 1504|0; - $lastRowid = sp + 432|0; - $pCaller = sp + 1500|0; - $pcDest = sp + 1496|0; - $zType = sp + 1492|0; - $zLogFmt = sp + 1488|0; - $pFrame = sp + 1484|0; - $cnt = sp + 1480|0; - $nullFlag = sp + 1574|0; - $pVar = sp + 1476|0; - $zMalloc = sp + 1472|0; - $n = sp + 1468|0; - $p1 = sp + 1464|0; - $p2 = sp + 1460|0; - $n1 = sp + 1456|0; - $pMem = sp + 1452|0; - $i = sp + 1448|0; - $nByte = sp + 424|0; - $bIntint = sp + 1772|0; - $flags = sp + 1572|0; - $type1 = sp + 1570|0; - $type2 = sp + 1568|0; - $iA = sp + 416|0; - $iB = sp + 408|0; - $rA = sp + 400|0; - $rB = sp + 392|0; - $i2 = sp + 1444|0; - $pArg = sp + 1440|0; - $ctx = sp + 320|0; - $apVal = sp + 1436|0; - $n3 = sp + 1432|0; - $iA4 = sp + 312|0; - $uA = sp + 304|0; - $iB5 = sp + 296|0; - $op = sp + 1771|0; - $res = sp + 1428|0; - $affinity = sp + 1770|0; - $flags1 = sp + 1566|0; - $flags3 = sp + 1564|0; - $n6 = sp + 1424|0; - $i7 = sp + 1420|0; - $p18 = sp + 1416|0; - $p29 = sp + 1412|0; - $pKeyInfo = sp + 1408|0; - $idx = sp + 1404|0; - $pColl = sp + 1400|0; - $bRev = sp + 1396|0; - $v1 = sp + 1392|0; - $v2 = sp + 1388|0; - $c = sp + 1384|0; - $payloadSize64 = sp + 288|0; - $p210 = sp + 1380|0; - $pC = sp + 1376|0; - $pCrsr = sp + 1372|0; - $aType = sp + 1368|0; - $aOffset = sp + 1364|0; - $len = sp + 1360|0; - $i11 = sp + 1356|0; - $pDest = sp + 1352|0; - $sMem = sp + 248|0; - $zData = sp + 1348|0; - $zHdr = sp + 1344|0; - $zEndHdr = sp + 1340|0; - $offset = sp + 1336|0; - $szField = sp + 1332|0; - $avail = sp + 1328|0; - $t = sp + 1324|0; - $pReg = sp + 1320|0; - $zAffinity = sp + 1316|0; - $cAff = sp + 1769|0; - $zNewRecord = sp + 1312|0; - $pRec = sp + 1308|0; - $nData = sp + 240|0; - $nHdr = sp + 1304|0; - $nByte12 = sp + 232|0; - $nZero = sp + 1300|0; - $nVarint = sp + 1296|0; - $serial_type = sp + 1292|0; - $pData0 = sp + 1288|0; - $pLast = sp + 1284|0; - $nField = sp + 1280|0; - $zAffinity13 = sp + 1276|0; - $file_format = sp + 1272|0; - $i14 = sp + 1268|0; - $j = sp + 1264|0; - $len15 = sp + 1260|0; - $nEntry = sp + 224|0; - $pCrsr16 = sp + 1256|0; - $p117 = sp + 1252|0; - $zName = sp + 1248|0; - $nName = sp + 1244|0; - $pNew = sp + 1240|0; - $pSavepoint = sp + 1236|0; - $pTmp = sp + 1232|0; - $iSavepoint = sp + 1228|0; - $ii = sp + 1224|0; - $isTransaction = sp + 1220|0; - $desiredAutoCommit = sp + 1216|0; - $iRollback = sp + 1212|0; - $turnOnAC = sp + 1208|0; - $pBt = sp + 1204|0; - $iMeta = sp + 1200|0; - $iGen = sp + 1196|0; - $iMeta18 = sp + 1192|0; - $iDb = sp + 1188|0; - $iCookie = sp + 1184|0; - $pDb = sp + 1180|0; - $nField19 = sp + 1176|0; - $pKeyInfo20 = sp + 1172|0; - $p221 = sp + 1168|0; - $iDb22 = sp + 1164|0; - $wrFlag = sp + 1160|0; - $pX = sp + 1156|0; - $pCur = sp + 1152|0; - $pDb23 = sp + 1148|0; - $pCx = sp + 1144|0; - $pKeyInfo24 = sp + 1140|0; - $pgno = sp + 1136|0; - $pCx25 = sp + 1132|0; - $pCx26 = sp + 1128|0; - $res27 = sp + 1124|0; - $oc = sp + 1120|0; - $pC28 = sp + 1116|0; - $r = sp + 1096|0; - $nField29 = sp + 1092|0; - $iKey = sp + 216|0; - $pC30 = sp + 1088|0; - $alreadyExists = sp + 1084|0; - $ii31 = sp + 1080|0; - $pC32 = sp + 1076|0; - $res33 = sp + 1072|0; - $pFree = sp + 1068|0; - $pIdxKey = sp + 1064|0; - $r34 = sp + 1044|0; - $aTempRec = sp + 1578|0; - $pC35 = sp + 1040|0; - $pCrsr36 = sp + 1036|0; - $res37 = sp + 1032|0; - $iKey38 = sp + 208|0; - $v = sp + 200|0; - $pC39 = sp + 1028|0; - $res40 = sp + 1024|0; - $cnt41 = sp + 1020|0; - $pMem42 = sp + 1016|0; - $pFrame43 = sp + 1012|0; - $pData = sp + 1008|0; - $pKey = sp + 1004|0; - $iKey44 = sp + 192|0; - $pC45 = sp + 1000|0; - $nZero46 = sp + 996|0; - $seekResult = sp + 992|0; - $zDb = sp + 988|0; - $zTbl = sp + 984|0; - $op47 = sp + 980|0; - $iKey48 = sp + 184|0; - $pC49 = sp + 976|0; - $pC50 = sp + 972|0; - $res51 = sp + 968|0; - $nIgnore = sp + 964|0; - $pC52 = sp + 960|0; - $pC53 = sp + 956|0; - $pCrsr54 = sp + 952|0; - $n55 = sp + 948|0; - $n64 = sp + 176|0; - $pC56 = sp + 944|0; - $v57 = sp + 168|0; - $pVtab = sp + 940|0; - $pModule = sp + 936|0; - $pC58 = sp + 932|0; - $pC59 = sp + 928|0; - $pCrsr60 = sp + 924|0; - $res61 = sp + 920|0; - $pC62 = sp + 916|0; - $pCrsr63 = sp + 912|0; - $res64 = sp + 908|0; - $pC65 = sp + 904|0; - $res66 = sp + 900|0; - $pC67 = sp + 896|0; - $pCrsr68 = sp + 892|0; - $nKey = sp + 888|0; - $zKey = sp + 884|0; - $pC69 = sp + 880|0; - $pCrsr70 = sp + 876|0; - $res71 = sp + 872|0; - $r72 = sp + 852|0; - $pCrsr73 = sp + 848|0; - $pC74 = sp + 844|0; - $rowid = sp + 160|0; - $pC75 = sp + 840|0; - $res76 = sp + 836|0; - $r77 = sp + 816|0; - $iMoved = sp + 812|0; - $iCnt = sp + 808|0; - $pVdbe = sp + 804|0; - $iDb78 = sp + 800|0; - $nChange = sp + 796|0; - $pC79 = sp + 792|0; - $pgno80 = sp + 788|0; - $flags81 = sp + 784|0; - $pDb82 = sp + 780|0; - $iDb83 = sp + 776|0; - $zMaster = sp + 772|0; - $zSql = sp + 768|0; - $initData = sp + 752|0; - $nRoot = sp + 744|0; - $aRoot = sp + 740|0; - $j84 = sp + 736|0; - $nErr = sp + 732|0; - $z = sp + 728|0; - $pnErr = sp + 724|0; - $val = sp + 152|0; - $iSet = sp + 720|0; - $exists = sp + 716|0; - $nMem = sp + 712|0; - $nByte85 = sp + 708|0; - $pRt = sp + 704|0; - $pMem86 = sp + 700|0; - $pEnd = sp + 696|0; - $pFrame87 = sp + 692|0; - $pProgram = sp + 688|0; - $t88 = sp + 684|0; - $pFrame89 = sp + 680|0; - $pIn = sp + 676|0; - $pFrame90 = sp + 672|0; - $n91 = sp + 668|0; - $i92 = sp + 664|0; - $pMem93 = sp + 660|0; - $pRec94 = sp + 656|0; - $ctx95 = sp + 80|0; - $apVal96 = sp + 652|0; - $pMem97 = sp + 648|0; - $i98 = sp + 644|0; - $aRes = sp + 632|0; - $pMem99 = sp + 628|0; - $pBt100 = sp + 624|0; - $pPager = sp + 620|0; - $eNew = sp + 616|0; - $eOld = sp + 612|0; - $zFilename = sp + 608|0; - $pBt101 = sp + 604|0; - $isWriteLock = sp + 1577|0; - $p1102 = sp + 600|0; - $z103 = sp + 596|0; - $pVTab = sp + 592|0; - $pCur104 = sp + 588|0; - $pVtabCursor = sp + 584|0; - $pVtab105 = sp + 580|0; - $pModule106 = sp + 576|0; - $nArg = sp + 572|0; - $iQuery = sp + 568|0; - $pModule107 = sp + 564|0; - $pQuery = sp + 560|0; - $pArgc = sp + 556|0; - $pVtabCursor108 = sp + 552|0; - $pVtab109 = sp + 548|0; - $pCur110 = sp + 544|0; - $res111 = sp + 540|0; - $i112 = sp + 536|0; - $apArg = sp + 532|0; - $pVtab113 = sp + 528|0; - $pModule114 = sp + 524|0; - $pDest115 = sp + 520|0; - $sContext = sp + 8|0; - $pCur116 = sp + 516|0; - $pVtab117 = sp + 512|0; - $pModule118 = sp + 508|0; - $res119 = sp + 504|0; - $pCur120 = sp + 500|0; - $pVtab121 = sp + 496|0; - $pName = sp + 492|0; - $pVtab122 = sp + 488|0; - $pModule123 = sp + 484|0; - $nArg124 = sp + 480|0; - $i125 = sp + 476|0; - $rowid126 = sp; - $apArg127 = sp + 472|0; - $pX128 = sp + 468|0; - $vtabOnConflict = sp + 1576|0; - $newMax = sp + 464|0; - $pBt129 = sp + 460|0; - $zTrace = sp + 456|0; - $z130 = sp + 452|0; - HEAP32[$0>>2] = $p; - HEAP32[$pc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$aOp>>2] = $3; - HEAP32[$rc>>2] = 0; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - HEAP8[$resetSchemaOnFault>>0] = 0; - $6 = HEAP32[$db>>2]|0; - $7 = (($6) + 16|0); - $8 = HEAP32[$7>>2]|0; - $9 = (($8) + 12|0); - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + 77|0); - $12 = HEAP8[$11>>0]|0; - HEAP8[$encoding>>0] = $12; - HEAP32[$iCompare>>2] = 0; - HEAP32[$nVmStep>>2] = 0; - HEAP32[$nProgressLimit>>2] = 0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 8|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$aMem>>2] = $15; - HEAP32[$pIn1>>2] = 0; - HEAP32[$pIn2>>2] = 0; - HEAP32[$pIn3>>2] = 0; - HEAP32[$pOut>>2] = 0; - HEAP32[$aPermute>>2] = 0; - $16 = HEAP32[$db>>2]|0; - $17 = (($16) + 32|0); - $18 = $17; - $19 = $18; - $20 = HEAP32[$19>>2]|0; - $21 = (($18) + 4)|0; - $22 = $21; - $23 = HEAP32[$22>>2]|0; - $24 = $lastRowid; - $25 = $24; - HEAP32[$25>>2] = $20; - $26 = (($24) + 4)|0; - $27 = $26; - HEAP32[$27>>2] = $23; - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 80|0); - $30 = HEAP32[$29>>2]|0; - $31 = ($30|0)==(7); - L1: do { - if ($31) { - label = 900; - } else { - $32 = HEAP32[$0>>2]|0; - $33 = (($32) + 80|0); - HEAP32[$33>>2] = 0; - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 136|0); - $36 = $35; - $37 = $36; - HEAP32[$37>>2] = 0; - $38 = (($36) + 4)|0; - $39 = $38; - HEAP32[$39>>2] = 0; - $40 = HEAP32[$0>>2]|0; - $41 = (($40) + 20|0); - HEAP32[$41>>2] = 0; - $42 = HEAP32[$db>>2]|0; - $43 = (($42) + 436|0); - $44 = (($43) + 8|0); - HEAP32[$44>>2] = 0; - $45 = HEAP32[$db>>2]|0; - $46 = (($45) + 232|0); - $47 = HEAP32[$46>>2]|0; - $48 = ($47|0)!=(0); - L3: do { - if (!($48)) { - $49 = HEAP32[$db>>2]|0; - $50 = (($49) + 284|0); - $51 = HEAP32[$50>>2]|0; - $52 = ($51|0)!=(0|0); - do { - if ($52) { - $53 = HEAP32[$0>>2]|0; - $54 = (($53) + 108|0); - $55 = (($54) + 16|0); - $56 = HEAP32[$55>>2]|0; - HEAP32[$nProgressLimit>>2] = $56; - $57 = HEAP32[$nProgressLimit>>2]|0; - $58 = ($57|0)==(0); - $59 = HEAP32[$db>>2]|0; - $60 = (($59) + 292|0); - $61 = HEAP32[$60>>2]|0; - if ($58) { - HEAP32[$nProgressLimit>>2] = $61; - break; - } else { - $62 = HEAP32[$nProgressLimit>>2]|0; - $63 = (($62>>>0) % ($61>>>0))&-1; - HEAP32[$nProgressLimit>>2] = $63; - break; - } - } - } while(0); - $64 = HEAP32[$0>>2]|0; - $65 = (($64) + 76|0); - $66 = HEAP32[$65>>2]|0; - HEAP32[$pc>>2] = $66; - L11: while(1) { - $67 = HEAP32[$rc>>2]|0; - $68 = ($67|0)==(0); - if (!($68)) { - break L1; - } - $69 = HEAP32[$db>>2]|0; - $70 = (($69) + 64|0); - $71 = HEAP8[$70>>0]|0; - $72 = ($71<<24>>24)!=(0); - if ($72) { - label = 900; - break L1; - } - $73 = HEAP32[$nVmStep>>2]|0; - $74 = (($73) + 1)|0; - HEAP32[$nVmStep>>2] = $74; - $75 = HEAP32[$pc>>2]|0; - $76 = HEAP32[$aOp>>2]|0; - $77 = (($76) + (($75*20)|0)|0); - HEAP32[$pOp>>2] = $77; - $78 = HEAP32[$pOp>>2]|0; - $79 = (($78) + 2|0); - $80 = HEAP8[$79>>0]|0; - $81 = $80&255; - $82 = $81 & 2; - $83 = ($82|0)!=(0); - if ($83) { - $84 = HEAP32[$pOp>>2]|0; - $85 = (($84) + 8|0); - $86 = HEAP32[$85>>2]|0; - $87 = HEAP32[$aMem>>2]|0; - $88 = (($87) + (($86*40)|0)|0); - HEAP32[$pOut>>2] = $88; - $89 = HEAP32[$pOut>>2]|0; - $90 = (($89) + 28|0); - $91 = HEAP16[$90>>1]|0; - $92 = $91&65535; - $93 = $92 & 9312; - $94 = ($93|0)!=(0); - if ($94) { - $95 = HEAP32[$pOut>>2]|0; - _sqlite3VdbeMemReleaseExternal($95); - } - $96 = HEAP32[$pOut>>2]|0; - $97 = (($96) + 28|0); - HEAP16[$97>>1] = 4; - } - $98 = HEAP32[$pOp>>2]|0; - $99 = HEAP8[$98>>0]|0; - $100 = $99&255; - L21: do { - switch ($100|0) { - case 20: { - $170 = HEAP32[$pOp>>2]|0; - $171 = (($170) + 4|0); - $172 = HEAP32[$171>>2]|0; - $173 = HEAP32[$aMem>>2]|0; - $174 = (($173) + (($172*40)|0)|0); - HEAP32[$pOut>>2] = $174; - $175 = HEAP32[$pOp>>2]|0; - $176 = (($175) + 12|0); - $177 = HEAP32[$176>>2]|0; - $178 = (($177) - 1)|0; - $179 = ($178|0)<(0); - $180 = $179 << 31 >> 31; - $181 = HEAP32[$pOut>>2]|0; - $182 = (($181) + 16|0); - $183 = $182; - $184 = $183; - HEAP32[$184>>2] = $178; - $185 = (($183) + 4)|0; - $186 = $185; - HEAP32[$186>>2] = $180; - $187 = HEAP32[$pOut>>2]|0; - $188 = (($187) + 28|0); - HEAP16[$188>>1] = 4; - $189 = HEAP32[$pOp>>2]|0; - $190 = (($189) + 8|0); - $191 = HEAP32[$190>>2]|0; - $192 = ($191|0)!=(0); - if ($192) { - $193 = HEAP32[$pOp>>2]|0; - $194 = (($193) + 8|0); - $195 = HEAP32[$194>>2]|0; - $196 = (($195) - 1)|0; - HEAP32[$pc>>2] = $196; - } - break; - } - case 28: { - $492 = HEAP32[$pOp>>2]|0; - $493 = (($492) + 12|0); - $494 = HEAP32[$493>>2]|0; - $495 = HEAP32[$pOp>>2]|0; - $496 = (($495) + 8|0); - $497 = HEAP32[$496>>2]|0; - $498 = (($494) - ($497))|0; - HEAP32[$cnt>>2] = $498; - $499 = HEAP32[$pOp>>2]|0; - $500 = (($499) + 4|0); - $501 = HEAP32[$500>>2]|0; - $502 = ($501|0)!=(0); - $503 = $502 ? 257 : 1; - $504 = $503&65535; - HEAP16[$nullFlag>>1] = $504; - $505 = HEAP32[$pOut>>2]|0; - $506 = (($505) + 28|0); - HEAP16[$506>>1] = $504; - while(1) { - $507 = HEAP32[$cnt>>2]|0; - $508 = ($507|0)>(0); - if (!($508)) { - break L21; - } - $509 = HEAP32[$pOut>>2]|0; - $510 = (($509) + 40|0); - HEAP32[$pOut>>2] = $510; - $511 = HEAP32[$pOut>>2]|0; - $512 = (($511) + 28|0); - $513 = HEAP16[$512>>1]|0; - $514 = $513&65535; - $515 = $514 & 9312; - $516 = ($515|0)!=(0); - if ($516) { - $517 = HEAP32[$pOut>>2]|0; - _sqlite3VdbeMemReleaseExternal($517); - } - $518 = HEAP16[$nullFlag>>1]|0; - $519 = HEAP32[$pOut>>2]|0; - $520 = (($519) + 28|0); - HEAP16[$520>>1] = $518; - $521 = HEAP32[$cnt>>2]|0; - $522 = (($521) + -1)|0; - HEAP32[$cnt>>2] = $522; - } - break; - } - case 17: { - $135 = HEAP32[$pOp>>2]|0; - $136 = (($135) + 4|0); - $137 = HEAP32[$136>>2]|0; - $138 = HEAP32[$aMem>>2]|0; - $139 = (($138) + (($137*40)|0)|0); - HEAP32[$pIn1>>2] = $139; - $140 = HEAP32[$pIn1>>2]|0; - $141 = (($140) + 28|0); - HEAP16[$141>>1] = 4; - $142 = HEAP32[$pc>>2]|0; - $143 = ($142|0)<(0); - $144 = $143 << 31 >> 31; - $145 = HEAP32[$pIn1>>2]|0; - $146 = (($145) + 16|0); - $147 = $146; - $148 = $147; - HEAP32[$148>>2] = $142; - $149 = (($147) + 4)|0; - $150 = $149; - HEAP32[$150>>2] = $144; - $151 = HEAP32[$pOp>>2]|0; - $152 = (($151) + 8|0); - $153 = HEAP32[$152>>2]|0; - $154 = (($153) - 1)|0; - HEAP32[$pc>>2] = $154; - break; - } - case 22: { - $218 = HEAP32[$pOp>>2]|0; - $219 = (($218) + 4|0); - $220 = HEAP32[$219>>2]|0; - $221 = HEAP32[$aMem>>2]|0; - $222 = (($221) + (($220*40)|0)|0); - HEAP32[$pIn1>>2] = $222; - $223 = HEAP32[$pIn1>>2]|0; - $224 = (($223) + 28|0); - HEAP16[$224>>1] = 4; - $225 = HEAP32[$pIn1>>2]|0; - $226 = (($225) + 16|0); - $227 = $226; - $228 = $227; - $229 = HEAP32[$228>>2]|0; - $230 = (($227) + 4)|0; - $231 = $230; - $232 = HEAP32[$231>>2]|0; - HEAP32[$pcDest>>2] = $229; - $233 = HEAP32[$pc>>2]|0; - $234 = ($233|0)<(0); - $235 = $234 << 31 >> 31; - $236 = HEAP32[$pIn1>>2]|0; - $237 = (($236) + 16|0); - $238 = $237; - $239 = $238; - HEAP32[$239>>2] = $233; - $240 = (($238) + 4)|0; - $241 = $240; - HEAP32[$241>>2] = $235; - $242 = HEAP32[$pcDest>>2]|0; - HEAP32[$pc>>2] = $242; - break; - } - case 23: { - $243 = HEAP32[$pOp>>2]|0; - $244 = (($243) + 12|0); - $245 = HEAP32[$244>>2]|0; - $246 = HEAP32[$aMem>>2]|0; - $247 = (($246) + (($245*40)|0)|0); - HEAP32[$pIn3>>2] = $247; - $248 = HEAP32[$pIn3>>2]|0; - $249 = (($248) + 28|0); - $250 = HEAP16[$249>>1]|0; - $251 = $250&65535; - $252 = $251 & 1; - $253 = ($252|0)==(0); - if (!($253)) { - label = 28; - } - break; - } - case 133: { - $411 = HEAP32[$pOut>>2]|0; - $412 = (($411) + 28|0); - HEAP16[$412>>1] = 8; - $413 = HEAP32[$pOp>>2]|0; - $414 = (($413) + 16|0); - $415 = HEAP32[$414>>2]|0; - $416 = +HEAPF64[$415>>3]; - $417 = HEAP32[$pOut>>2]|0; - $418 = (($417) + 8|0); - HEAPF64[$418>>3] = $416; - break; - } - case 97: { - $419 = HEAP32[$pOp>>2]|0; - HEAP8[$419>>0] = 27; - $420 = HEAP32[$pOp>>2]|0; - $421 = (($420) + 16|0); - $422 = HEAP32[$421>>2]|0; - $423 = (_sqlite3Strlen30($422)|0); - $424 = HEAP32[$pOp>>2]|0; - $425 = (($424) + 4|0); - HEAP32[$425>>2] = $423; - $426 = HEAP8[$encoding>>0]|0; - $427 = $426&255; - $428 = ($427|0)!=(1); - if ($428) { - $429 = HEAP32[$pOut>>2]|0; - $430 = HEAP32[$pOp>>2]|0; - $431 = (($430) + 16|0); - $432 = HEAP32[$431>>2]|0; - $433 = (_sqlite3VdbeMemSetStr($429,$432,-1,1,0)|0); - HEAP32[$rc>>2] = $433; - $434 = HEAP32[$rc>>2]|0; - $435 = ($434|0)==(18); - if ($435) { - label = 899; - break L11; - } - $436 = HEAP32[$pOut>>2]|0; - $437 = HEAP8[$encoding>>0]|0; - $438 = $437&255; - $439 = (_sqlite3VdbeChangeEncoding($436,$438)|0); - $440 = (0)!=($439|0); - if ($440) { - label = 900; - break L1; - } - $441 = HEAP32[$pOut>>2]|0; - $442 = (($441) + 36|0); - HEAP32[$442>>2] = 0; - $443 = HEAP32[$pOut>>2]|0; - $444 = (($443) + 28|0); - $445 = HEAP16[$444>>1]|0; - $446 = $445&65535; - $447 = $446 | 2048; - $448 = $447&65535; - HEAP16[$444>>1] = $448; - $449 = HEAP32[$pOp>>2]|0; - $450 = (($449) + 1|0); - $451 = HEAP8[$450>>0]|0; - $452 = $451 << 24 >> 24; - $453 = ($452|0)==(-1); - if ($453) { - $454 = HEAP32[$db>>2]|0; - $455 = HEAP32[$pOp>>2]|0; - $456 = (($455) + 16|0); - $457 = HEAP32[$456>>2]|0; - _sqlite3DbFree($454,$457); - } - $458 = HEAP32[$pOp>>2]|0; - $459 = (($458) + 1|0); - HEAP8[$459>>0] = -1; - $460 = HEAP32[$pOut>>2]|0; - $461 = (($460) + 4|0); - $462 = HEAP32[$461>>2]|0; - $463 = HEAP32[$pOp>>2]|0; - $464 = (($463) + 16|0); - HEAP32[$464>>2] = $462; - $465 = HEAP32[$pOut>>2]|0; - $466 = (($465) + 24|0); - $467 = HEAP32[$466>>2]|0; - $468 = HEAP32[$pOp>>2]|0; - $469 = (($468) + 4|0); - HEAP32[$469>>2] = $467; - } - $470 = HEAP32[$pOp>>2]|0; - $471 = (($470) + 4|0); - $472 = HEAP32[$471>>2]|0; - $473 = HEAP32[$db>>2]|0; - $474 = (($473) + 88|0); - $475 = HEAP32[$474>>2]|0; - $476 = ($472|0)>($475|0); - if ($476) { - label = 899; - break L11; - } else { - label = 57; - } - break; - } - case 18: { - $155 = HEAP32[$pOp>>2]|0; - $156 = (($155) + 4|0); - $157 = HEAP32[$156>>2]|0; - $158 = HEAP32[$aMem>>2]|0; - $159 = (($158) + (($157*40)|0)|0); - HEAP32[$pIn1>>2] = $159; - $160 = HEAP32[$pIn1>>2]|0; - $161 = (($160) + 16|0); - $162 = $161; - $163 = $162; - $164 = HEAP32[$163>>2]|0; - $165 = (($162) + 4)|0; - $166 = $165; - $167 = HEAP32[$166>>2]|0; - HEAP32[$pc>>2] = $164; - $168 = HEAP32[$pIn1>>2]|0; - $169 = (($168) + 28|0); - HEAP16[$169>>1] = 128; - break; - } - case 27: { - label = 57; - break; - } - case 34: { - $632 = HEAP32[$pOp>>2]|0; - $633 = (($632) + 4|0); - $634 = HEAP32[$633>>2]|0; - $635 = HEAP32[$aMem>>2]|0; - $636 = (($635) + (($634*40)|0)|0); - HEAP32[$pIn1>>2] = $636; - $637 = HEAP32[$pOp>>2]|0; - $638 = (($637) + 8|0); - $639 = HEAP32[$638>>2]|0; - $640 = HEAP32[$aMem>>2]|0; - $641 = (($640) + (($639*40)|0)|0); - HEAP32[$pOut>>2] = $641; - $642 = HEAP32[$pOut>>2]|0; - $643 = HEAP32[$pIn1>>2]|0; - _sqlite3VdbeMemShallowCopy($642,$643,4096); - break; - } - case 35: { - $644 = HEAP32[$db>>2]|0; - $645 = (($644) + 284|0); - $646 = HEAP32[$645>>2]|0; - $647 = ($646|0)!=(0|0); - if ($647) { - $648 = HEAP32[$nVmStep>>2]|0; - $649 = HEAP32[$nProgressLimit>>2]|0; - $650 = ($648>>>0)>=($649>>>0); - if ($650) { - $651 = HEAP32[$db>>2]|0; - $652 = (($651) + 284|0); - $653 = HEAP32[$652>>2]|0; - $654 = HEAP32[$db>>2]|0; - $655 = (($654) + 288|0); - $656 = HEAP32[$655>>2]|0; - $657 = (FUNCTION_TABLE_ii[$653 & 31]($656)|0); - $658 = ($657|0)!=(0); - if ($658) { - label = 80; - break L11; - } - } - } - $659 = HEAP32[$0>>2]|0; - $660 = (_sqlite3VdbeCheckFk($659,0)|0); - HEAP32[$rc>>2] = $660; - $661 = (0)!=($660|0); - if (!($661)) { - $662 = HEAP32[$0>>2]|0; - $663 = (_sqlite3VdbeCloseStatement($662,1)|0); - HEAP32[$rc>>2] = $663; - $664 = HEAP32[$rc>>2]|0; - $665 = ($664|0)!=(0); - if (!($665)) { - label = 83; - break L11; - } - } - break; - } - case 25: { - $385 = HEAP32[$pOp>>2]|0; - $386 = (($385) + 4|0); - $387 = HEAP32[$386>>2]|0; - $388 = ($387|0)<(0); - $389 = $388 << 31 >> 31; - $390 = HEAP32[$pOut>>2]|0; - $391 = (($390) + 16|0); - $392 = $391; - $393 = $392; - HEAP32[$393>>2] = $387; - $394 = (($392) + 4)|0; - $395 = $394; - HEAP32[$395>>2] = $389; - break; - } - case 24: { - label = 28; - break; - } - case 32: { - $560 = HEAP32[$pOp>>2]|0; - $561 = (($560) + 12|0); - $562 = HEAP32[$561>>2]|0; - HEAP32[$n>>2] = $562; - $563 = HEAP32[$pOp>>2]|0; - $564 = (($563) + 4|0); - $565 = HEAP32[$564>>2]|0; - HEAP32[$p1>>2] = $565; - $566 = HEAP32[$pOp>>2]|0; - $567 = (($566) + 8|0); - $568 = HEAP32[$567>>2]|0; - HEAP32[$p2>>2] = $568; - $569 = HEAP32[$p1>>2]|0; - $570 = HEAP32[$aMem>>2]|0; - $571 = (($570) + (($569*40)|0)|0); - HEAP32[$pIn1>>2] = $571; - $572 = HEAP32[$p2>>2]|0; - $573 = HEAP32[$aMem>>2]|0; - $574 = (($573) + (($572*40)|0)|0); - HEAP32[$pOut>>2] = $574; - while(1) { - $575 = HEAP32[$pOut>>2]|0; - $576 = (($575) + 28|0); - $577 = HEAP16[$576>>1]|0; - $578 = $577&65535; - $579 = $578 & 9312; - $580 = ($579|0)!=(0); - if ($580) { - $581 = HEAP32[$pOut>>2]|0; - _sqlite3VdbeMemReleaseExternal($581); - } - $582 = HEAP32[$pOut>>2]|0; - $583 = (($582) + 36|0); - $584 = HEAP32[$583>>2]|0; - HEAP32[$zMalloc>>2] = $584; - $585 = HEAP32[$pOut>>2]|0; - $586 = HEAP32[$pIn1>>2]|0; - dest=$585+0|0; src=$586+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $587 = HEAP32[$pIn1>>2]|0; - $588 = (($587) + 28|0); - HEAP16[$588>>1] = 128; - $589 = HEAP32[$pIn1>>2]|0; - $590 = (($589) + 32|0); - HEAP32[$590>>2] = 0; - $591 = HEAP32[$zMalloc>>2]|0; - $592 = HEAP32[$pIn1>>2]|0; - $593 = (($592) + 36|0); - HEAP32[$593>>2] = $591; - $594 = HEAP32[$pIn1>>2]|0; - $595 = (($594) + 40|0); - HEAP32[$pIn1>>2] = $595; - $596 = HEAP32[$pOut>>2]|0; - $597 = (($596) + 40|0); - HEAP32[$pOut>>2] = $597; - $598 = HEAP32[$n>>2]|0; - $599 = (($598) + -1)|0; - HEAP32[$n>>2] = $599; - $600 = ($599|0)!=(0); - if (!($600)) { - break; - } - } - break; - } - case 16: { - $101 = HEAP32[$pOp>>2]|0; - $102 = (($101) + 8|0); - $103 = HEAP32[$102>>2]|0; - $104 = (($103) - 1)|0; - HEAP32[$pc>>2] = $104; - label = 16; - break; - } - case 29: { - $523 = HEAP32[$pOp>>2]|0; - $524 = (($523) + 4|0); - $525 = HEAP32[$524>>2]|0; - $526 = HEAP32[$aMem>>2]|0; - $527 = (($526) + (($525*40)|0)|0); - HEAP32[$pOut>>2] = $527; - $528 = HEAP32[$pOut>>2]|0; - $529 = (($528) + 28|0); - $530 = HEAP16[$529>>1]|0; - $531 = $530&65535; - $532 = $531 | 1; - $533 = $532 & -129; - $534 = $533&65535; - $535 = HEAP32[$pOut>>2]|0; - $536 = (($535) + 28|0); - HEAP16[$536>>1] = $534; - break; - } - case 30: { - $537 = HEAP32[$pOut>>2]|0; - $538 = HEAP32[$pOp>>2]|0; - $539 = (($538) + 16|0); - $540 = HEAP32[$539>>2]|0; - $541 = HEAP32[$pOp>>2]|0; - $542 = (($541) + 4|0); - $543 = HEAP32[$542>>2]|0; - (_sqlite3VdbeMemSetStr($537,$540,$543,0,0)|0); - $544 = HEAP8[$encoding>>0]|0; - $545 = HEAP32[$pOut>>2]|0; - $546 = (($545) + 30|0); - HEAP8[$546>>0] = $544; - break; - } - case 21: { - $197 = HEAP32[$pOp>>2]|0; - $198 = (($197) + 4|0); - $199 = HEAP32[$198>>2]|0; - $200 = HEAP32[$aMem>>2]|0; - $201 = (($200) + (($199*40)|0)|0); - HEAP32[$pIn1>>2] = $201; - $202 = HEAP32[$pIn1>>2]|0; - $203 = (($202) + 16|0); - $204 = $203; - $205 = $204; - $206 = HEAP32[$205>>2]|0; - $207 = (($204) + 4)|0; - $208 = $207; - $209 = HEAP32[$208>>2]|0; - $210 = HEAP32[$aOp>>2]|0; - $211 = (($210) + (($206*20)|0)|0); - HEAP32[$pCaller>>2] = $211; - $212 = HEAP32[$pCaller>>2]|0; - $213 = (($212) + 8|0); - $214 = HEAP32[$213>>2]|0; - $215 = (($214) - 1)|0; - HEAP32[$pc>>2] = $215; - $216 = HEAP32[$pIn1>>2]|0; - $217 = (($216) + 28|0); - HEAP16[$217>>1] = 128; - break; - } - case 31: { - $547 = HEAP32[$pOp>>2]|0; - $548 = (($547) + 4|0); - $549 = HEAP32[$548>>2]|0; - $550 = (($549) - 1)|0; - $551 = HEAP32[$0>>2]|0; - $552 = (($551) + 60|0); - $553 = HEAP32[$552>>2]|0; - $554 = (($553) + (($550*40)|0)|0); - HEAP32[$pVar>>2] = $554; - $555 = HEAP32[$pVar>>2]|0; - $556 = (_sqlite3VdbeMemTooBig($555)|0); - $557 = ($556|0)!=(0); - if ($557) { - label = 899; - break L11; - } - $558 = HEAP32[$pOut>>2]|0; - $559 = HEAP32[$pVar>>2]|0; - _sqlite3VdbeMemShallowCopy($558,$559,2048); - break; - } - case 26: { - $396 = HEAP32[$pOp>>2]|0; - $397 = (($396) + 16|0); - $398 = HEAP32[$397>>2]|0; - $399 = $398; - $400 = $399; - $401 = HEAP32[$400>>2]|0; - $402 = (($399) + 4)|0; - $403 = $402; - $404 = HEAP32[$403>>2]|0; - $405 = HEAP32[$pOut>>2]|0; - $406 = (($405) + 16|0); - $407 = $406; - $408 = $407; - HEAP32[$408>>2] = $401; - $409 = (($407) + 4)|0; - $410 = $409; - HEAP32[$410>>2] = $404; - break; - } - case 38: { - $1590 = HEAP32[$pOp>>2]|0; - $1591 = (($1590) + 4|0); - $1592 = HEAP32[$1591>>2]|0; - $1593 = HEAP32[$aMem>>2]|0; - $1594 = (($1593) + (($1592*40)|0)|0); - HEAP32[$pIn1>>2] = $1594; - $1595 = HEAP32[$pIn1>>2]|0; - $1596 = (($1595) + 28|0); - $1597 = HEAP16[$1596>>1]|0; - $1598 = $1597&65535; - $1599 = $1598 & 4; - $1600 = ($1599|0)==(0); - if ($1600) { - $1601 = HEAP32[$pIn1>>2]|0; - $1602 = HEAP8[$encoding>>0]|0; - _applyAffinity($1601,99,$1602); - $1603 = HEAP32[$pIn1>>2]|0; - $1604 = (($1603) + 28|0); - $1605 = HEAP16[$1604>>1]|0; - $1606 = $1605&65535; - $1607 = $1606 & 4; - $1608 = ($1607|0)==(0); - if ($1608) { - $1609 = HEAP32[$pOp>>2]|0; - $1610 = (($1609) + 8|0); - $1611 = HEAP32[$1610>>2]|0; - $1612 = ($1611|0)==(0); - if ($1612) { - label = 177; - break L11; - } - $1613 = HEAP32[$pOp>>2]|0; - $1614 = (($1613) + 8|0); - $1615 = HEAP32[$1614>>2]|0; - $1616 = (($1615) - 1)|0; - HEAP32[$pc>>2] = $1616; - break L21; - } - } - $1617 = HEAP32[$pIn1>>2]|0; - $1618 = (($1617) + 28|0); - $1619 = HEAP16[$1618>>1]|0; - $1620 = $1619&65535; - $1621 = $1620 & -16896; - $1622 = $1621 | 4; - $1623 = $1622&65535; - $1624 = HEAP32[$pIn1>>2]|0; - $1625 = (($1624) + 28|0); - HEAP16[$1625>>1] = $1623; - break; - } - case 143: { - $1638 = HEAP32[$pOp>>2]|0; - $1639 = (($1638) + 4|0); - $1640 = HEAP32[$1639>>2]|0; - $1641 = HEAP32[$aMem>>2]|0; - $1642 = (($1641) + (($1640*40)|0)|0); - HEAP32[$pIn1>>2] = $1642; - $1643 = HEAP32[$pIn1>>2]|0; - $1644 = (($1643) + 28|0); - $1645 = HEAP16[$1644>>1]|0; - $1646 = $1645&65535; - $1647 = $1646 & 1; - $1648 = ($1647|0)!=(0); - if (!($1648)) { - $1649 = HEAP32[$pIn1>>2]|0; - $1650 = (($1649) + 28|0); - $1651 = HEAP16[$1650>>1]|0; - $1652 = $1651&65535; - $1653 = $1652 & 16; - $1654 = $1653 >> 3; - $1655 = HEAP32[$pIn1>>2]|0; - $1656 = (($1655) + 28|0); - $1657 = HEAP16[$1656>>1]|0; - $1658 = $1657&65535; - $1659 = $1658 | $1654; - $1660 = $1659&65535; - HEAP16[$1656>>1] = $1660; - $1661 = HEAP32[$pIn1>>2]|0; - $1662 = HEAP8[$encoding>>0]|0; - _applyAffinity($1661,97,$1662); - $1663 = HEAP32[$pIn1>>2]|0; - $1664 = (($1663) + 28|0); - $1665 = HEAP16[$1664>>1]|0; - $1666 = $1665&65535; - $1667 = $1666 & 16384; - $1668 = ($1667|0)!=(0); - if ($1668) { - $1669 = HEAP32[$pIn1>>2]|0; - $1670 = (_sqlite3VdbeMemExpandBlob($1669)|0); - $1671 = $1670; - } else { - $1671 = 0; - } - HEAP32[$rc>>2] = $1671; - $1672 = HEAP32[$pIn1>>2]|0; - $1673 = (($1672) + 28|0); - $1674 = HEAP16[$1673>>1]|0; - $1675 = $1674&65535; - $1676 = $1675 & -16413; - $1677 = $1676&65535; - HEAP16[$1673>>1] = $1677; - } - break; - } - case 39: { - $1626 = HEAP32[$pOp>>2]|0; - $1627 = (($1626) + 4|0); - $1628 = HEAP32[$1627>>2]|0; - $1629 = HEAP32[$aMem>>2]|0; - $1630 = (($1629) + (($1628*40)|0)|0); - HEAP32[$pIn1>>2] = $1630; - $1631 = HEAP32[$pIn1>>2]|0; - $1632 = (($1631) + 28|0); - $1633 = HEAP16[$1632>>1]|0; - $1634 = $1633&65535; - $1635 = $1634 & 4; - $1636 = ($1635|0)!=(0); - if ($1636) { - $1637 = HEAP32[$pIn1>>2]|0; - (_sqlite3VdbeMemRealify($1637)|0); - } - break; - } - case 144: { - $1678 = HEAP32[$pOp>>2]|0; - $1679 = (($1678) + 4|0); - $1680 = HEAP32[$1679>>2]|0; - $1681 = HEAP32[$aMem>>2]|0; - $1682 = (($1681) + (($1680*40)|0)|0); - HEAP32[$pIn1>>2] = $1682; - $1683 = HEAP32[$pIn1>>2]|0; - $1684 = (($1683) + 28|0); - $1685 = HEAP16[$1684>>1]|0; - $1686 = $1685&65535; - $1687 = $1686 & 1; - $1688 = ($1687|0)!=(0); - if (!($1688)) { - $1689 = HEAP32[$pIn1>>2]|0; - $1690 = (($1689) + 28|0); - $1691 = HEAP16[$1690>>1]|0; - $1692 = $1691&65535; - $1693 = $1692 & 16; - $1694 = ($1693|0)==(0); - $1695 = HEAP32[$pIn1>>2]|0; - if ($1694) { - $1696 = HEAP8[$encoding>>0]|0; - _applyAffinity($1695,97,$1696); - $1697 = HEAP32[$pIn1>>2]|0; - $1698 = (($1697) + 28|0); - $1699 = HEAP16[$1698>>1]|0; - $1700 = $1699&65535; - $1701 = $1700 & -16896; - $1702 = $1701 | 16; - $1703 = $1702&65535; - $1704 = HEAP32[$pIn1>>2]|0; - $1705 = (($1704) + 28|0); - HEAP16[$1705>>1] = $1703; - break L21; - } else { - $1706 = (($1695) + 28|0); - $1707 = HEAP16[$1706>>1]|0; - $1708 = $1707&65535; - $1709 = $1708 & -496; - $1710 = $1709&65535; - HEAP16[$1706>>1] = $1710; - break L21; - } - } - break; - } - case 145: { - $1711 = HEAP32[$pOp>>2]|0; - $1712 = (($1711) + 4|0); - $1713 = HEAP32[$1712>>2]|0; - $1714 = HEAP32[$aMem>>2]|0; - $1715 = (($1714) + (($1713*40)|0)|0); - HEAP32[$pIn1>>2] = $1715; - $1716 = HEAP32[$pIn1>>2]|0; - (_sqlite3VdbeMemNumerify($1716)|0); - break; - } - case 146: { - $1717 = HEAP32[$pOp>>2]|0; - $1718 = (($1717) + 4|0); - $1719 = HEAP32[$1718>>2]|0; - $1720 = HEAP32[$aMem>>2]|0; - $1721 = (($1720) + (($1719*40)|0)|0); - HEAP32[$pIn1>>2] = $1721; - $1722 = HEAP32[$pIn1>>2]|0; - $1723 = (($1722) + 28|0); - $1724 = HEAP16[$1723>>1]|0; - $1725 = $1724&65535; - $1726 = $1725 & 1; - $1727 = ($1726|0)==(0); - if ($1727) { - $1728 = HEAP32[$pIn1>>2]|0; - (_sqlite3VdbeMemIntegerify($1728)|0); - } - break; - } - case 83: case 80: case 81: case 82: case 78: case 79: { - $1741 = HEAP32[$pOp>>2]|0; - $1742 = (($1741) + 4|0); - $1743 = HEAP32[$1742>>2]|0; - $1744 = HEAP32[$aMem>>2]|0; - $1745 = (($1744) + (($1743*40)|0)|0); - HEAP32[$pIn1>>2] = $1745; - $1746 = HEAP32[$pOp>>2]|0; - $1747 = (($1746) + 12|0); - $1748 = HEAP32[$1747>>2]|0; - $1749 = HEAP32[$aMem>>2]|0; - $1750 = (($1749) + (($1748*40)|0)|0); - HEAP32[$pIn3>>2] = $1750; - $1751 = HEAP32[$pIn1>>2]|0; - $1752 = (($1751) + 28|0); - $1753 = HEAP16[$1752>>1]|0; - HEAP16[$flags1>>1] = $1753; - $1754 = HEAP32[$pIn3>>2]|0; - $1755 = (($1754) + 28|0); - $1756 = HEAP16[$1755>>1]|0; - HEAP16[$flags3>>1] = $1756; - $1757 = HEAP16[$flags1>>1]|0; - $1758 = $1757&65535; - $1759 = HEAP16[$flags3>>1]|0; - $1760 = $1759&65535; - $1761 = $1758 | $1760; - $1762 = $1761 & 1; - $1763 = ($1762|0)!=(0); - $1764 = HEAP32[$pOp>>2]|0; - $1765 = (($1764) + 3|0); - $1766 = HEAP8[$1765>>0]|0; - $1767 = $1766&255; - do { - if ($1763) { - $1768 = $1767 & 128; - $1769 = ($1768|0)!=(0); - if (!($1769)) { - $1782 = HEAP32[$pOp>>2]|0; - $1783 = (($1782) + 3|0); - $1784 = HEAP8[$1783>>0]|0; - $1785 = $1784&255; - $1786 = $1785 & 16; - $1787 = ($1786|0)!=(0); - $1788 = HEAP32[$pOp>>2]|0; - if ($1787) { - $1789 = (($1788) + 8|0); - $1790 = HEAP32[$1789>>2]|0; - $1791 = HEAP32[$aMem>>2]|0; - $1792 = (($1791) + (($1790*40)|0)|0); - HEAP32[$pOut>>2] = $1792; - $1793 = HEAP32[$pOut>>2]|0; - $1794 = (($1793) + 28|0); - $1795 = HEAP16[$1794>>1]|0; - $1796 = $1795&65535; - $1797 = $1796 & -16896; - $1798 = $1797 | 1; - $1799 = $1798&65535; - $1800 = HEAP32[$pOut>>2]|0; - $1801 = (($1800) + 28|0); - HEAP16[$1801>>1] = $1799; - break L21; - } - $1802 = (($1788) + 3|0); - $1803 = HEAP8[$1802>>0]|0; - $1804 = $1803&255; - $1805 = $1804 & 8; - $1806 = ($1805|0)!=(0); - if (!($1806)) { - break L21; - } - $1807 = HEAP32[$pOp>>2]|0; - $1808 = (($1807) + 8|0); - $1809 = HEAP32[$1808>>2]|0; - $1810 = (($1809) - 1)|0; - HEAP32[$pc>>2] = $1810; - break L21; - } - $1770 = HEAP16[$flags1>>1]|0; - $1771 = $1770&65535; - $1772 = $1771 & 1; - $1773 = ($1772|0)!=(0); - if ($1773) { - $1774 = HEAP16[$flags3>>1]|0; - $1775 = $1774&65535; - $1776 = $1775 & 1; - $1777 = ($1776|0)!=(0); - if ($1777) { - $1778 = HEAP16[$flags3>>1]|0; - $1779 = $1778&65535; - $1780 = $1779 & 256; - $1781 = ($1780|0)==(0); - if ($1781) { - HEAP32[$res>>2] = 0; - break; - } - } - } - HEAP32[$res>>2] = 1; - } else { - $1811 = $1767 & 103; - $1812 = $1811&255; - HEAP8[$affinity>>0] = $1812; - $1813 = HEAP8[$affinity>>0]|0; - $1814 = ($1813<<24>>24)!=(0); - if ($1814) { - $1815 = HEAP32[$pIn1>>2]|0; - $1816 = HEAP8[$affinity>>0]|0; - $1817 = HEAP8[$encoding>>0]|0; - _applyAffinity($1815,$1816,$1817); - $1818 = HEAP32[$pIn3>>2]|0; - $1819 = HEAP8[$affinity>>0]|0; - $1820 = HEAP8[$encoding>>0]|0; - _applyAffinity($1818,$1819,$1820); - $1821 = HEAP32[$db>>2]|0; - $1822 = (($1821) + 64|0); - $1823 = HEAP8[$1822>>0]|0; - $1824 = ($1823<<24>>24)!=(0); - if ($1824) { - label = 900; - break L1; - } - } - $1825 = HEAP32[$pIn1>>2]|0; - $1826 = (($1825) + 28|0); - $1827 = HEAP16[$1826>>1]|0; - $1828 = $1827&65535; - $1829 = $1828 & 16384; - $1830 = ($1829|0)!=(0); - if ($1830) { - $1831 = HEAP32[$pIn1>>2]|0; - (_sqlite3VdbeMemExpandBlob($1831)|0); - } - $1832 = HEAP32[$pIn3>>2]|0; - $1833 = (($1832) + 28|0); - $1834 = HEAP16[$1833>>1]|0; - $1835 = $1834&65535; - $1836 = $1835 & 16384; - $1837 = ($1836|0)!=(0); - if ($1837) { - $1838 = HEAP32[$pIn3>>2]|0; - (_sqlite3VdbeMemExpandBlob($1838)|0); - } - $1839 = HEAP32[$pIn3>>2]|0; - $1840 = HEAP32[$pIn1>>2]|0; - $1841 = HEAP32[$pOp>>2]|0; - $1842 = (($1841) + 16|0); - $1843 = HEAP32[$1842>>2]|0; - $1844 = (_sqlite3MemCompare($1839,$1840,$1843)|0); - HEAP32[$res>>2] = $1844; - } - } while(0); - $1845 = HEAP32[$pOp>>2]|0; - $1846 = HEAP8[$1845>>0]|0; - $1847 = $1846&255; - switch ($1847|0) { - case 79: { - $1848 = HEAP32[$res>>2]|0; - $1849 = ($1848|0)==(0); - $1850 = $1849&1; - HEAP32[$res>>2] = $1850; - break; - } - case 78: { - $1851 = HEAP32[$res>>2]|0; - $1852 = ($1851|0)!=(0); - $1853 = $1852&1; - HEAP32[$res>>2] = $1853; - break; - } - case 82: { - $1854 = HEAP32[$res>>2]|0; - $1855 = ($1854|0)<(0); - $1856 = $1855&1; - HEAP32[$res>>2] = $1856; - break; - } - case 81: { - $1857 = HEAP32[$res>>2]|0; - $1858 = ($1857|0)<=(0); - $1859 = $1858&1; - HEAP32[$res>>2] = $1859; - break; - } - case 80: { - $1860 = HEAP32[$res>>2]|0; - $1861 = ($1860|0)>(0); - $1862 = $1861&1; - HEAP32[$res>>2] = $1862; - break; - } - default: { - $1863 = HEAP32[$res>>2]|0; - $1864 = ($1863|0)>=(0); - $1865 = $1864&1; - HEAP32[$res>>2] = $1865; - } - } - $1866 = HEAP32[$pOp>>2]|0; - $1867 = (($1866) + 3|0); - $1868 = HEAP8[$1867>>0]|0; - $1869 = $1868&255; - $1870 = $1869 & 16; - $1871 = ($1870|0)!=(0); - if ($1871) { - $1872 = HEAP32[$pOp>>2]|0; - $1873 = (($1872) + 8|0); - $1874 = HEAP32[$1873>>2]|0; - $1875 = HEAP32[$aMem>>2]|0; - $1876 = (($1875) + (($1874*40)|0)|0); - HEAP32[$pOut>>2] = $1876; - $1877 = HEAP32[$pOut>>2]|0; - $1878 = (($1877) + 28|0); - $1879 = HEAP16[$1878>>1]|0; - $1880 = $1879&65535; - $1881 = $1880 & -16896; - $1882 = $1881 | 4; - $1883 = $1882&65535; - $1884 = HEAP32[$pOut>>2]|0; - $1885 = (($1884) + 28|0); - HEAP16[$1885>>1] = $1883; - $1886 = HEAP32[$res>>2]|0; - $1887 = ($1886|0)<(0); - $1888 = $1887 << 31 >> 31; - $1889 = HEAP32[$pOut>>2]|0; - $1890 = (($1889) + 16|0); - $1891 = $1890; - $1892 = $1891; - HEAP32[$1892>>2] = $1886; - $1893 = (($1891) + 4)|0; - $1894 = $1893; - HEAP32[$1894>>2] = $1888; - } else { - $1895 = HEAP32[$res>>2]|0; - $1896 = ($1895|0)!=(0); - if ($1896) { - $1897 = HEAP32[$pOp>>2]|0; - $1898 = (($1897) + 8|0); - $1899 = HEAP32[$1898>>2]|0; - $1900 = (($1899) - 1)|0; - HEAP32[$pc>>2] = $1900; - } - } - $1901 = HEAP32[$pIn1>>2]|0; - $1902 = (($1901) + 28|0); - $1903 = HEAP16[$1902>>1]|0; - $1904 = $1903&65535; - $1905 = $1904 & -512; - $1906 = HEAP16[$flags1>>1]|0; - $1907 = $1906&65535; - $1908 = $1907 & 511; - $1909 = $1905 | $1908; - $1910 = $1909&65535; - $1911 = HEAP32[$pIn1>>2]|0; - $1912 = (($1911) + 28|0); - HEAP16[$1912>>1] = $1910; - $1913 = HEAP32[$pIn3>>2]|0; - $1914 = (($1913) + 28|0); - $1915 = HEAP16[$1914>>1]|0; - $1916 = $1915&65535; - $1917 = $1916 & -512; - $1918 = HEAP16[$flags3>>1]|0; - $1919 = $1918&65535; - $1920 = $1919 & 511; - $1921 = $1917 | $1920; - $1922 = $1921&65535; - $1923 = HEAP32[$pIn3>>2]|0; - $1924 = (($1923) + 28|0); - HEAP16[$1924>>1] = $1922; - break; - } - case 147: { - $1729 = HEAP32[$pOp>>2]|0; - $1730 = (($1729) + 4|0); - $1731 = HEAP32[$1730>>2]|0; - $1732 = HEAP32[$aMem>>2]|0; - $1733 = (($1732) + (($1731*40)|0)|0); - HEAP32[$pIn1>>2] = $1733; - $1734 = HEAP32[$pIn1>>2]|0; - $1735 = (($1734) + 28|0); - $1736 = HEAP16[$1735>>1]|0; - $1737 = $1736&65535; - $1738 = $1737 & 1; - $1739 = ($1738|0)==(0); - if ($1739) { - $1740 = HEAP32[$pIn1>>2]|0; - (_sqlite3VdbeMemRealify($1740)|0); - } - break; - } - case 40: { - $1925 = HEAP32[$pOp>>2]|0; - $1926 = (($1925) + 16|0); - $1927 = HEAP32[$1926>>2]|0; - HEAP32[$aPermute>>2] = $1927; - break; - } - case 41: { - $1928 = HEAP32[$pOp>>2]|0; - $1929 = (($1928) + 3|0); - $1930 = HEAP8[$1929>>0]|0; - $1931 = $1930&255; - $1932 = $1931 & 1; - $1933 = ($1932|0)==(0); - if ($1933) { - HEAP32[$aPermute>>2] = 0; - } - $1934 = HEAP32[$pOp>>2]|0; - $1935 = (($1934) + 12|0); - $1936 = HEAP32[$1935>>2]|0; - HEAP32[$n6>>2] = $1936; - $1937 = HEAP32[$pOp>>2]|0; - $1938 = (($1937) + 16|0); - $1939 = HEAP32[$1938>>2]|0; - HEAP32[$pKeyInfo>>2] = $1939; - $1940 = HEAP32[$pOp>>2]|0; - $1941 = (($1940) + 4|0); - $1942 = HEAP32[$1941>>2]|0; - HEAP32[$p18>>2] = $1942; - $1943 = HEAP32[$pOp>>2]|0; - $1944 = (($1943) + 8|0); - $1945 = HEAP32[$1944>>2]|0; - HEAP32[$p29>>2] = $1945; - HEAP32[$i7>>2] = 0; - while(1) { - $1946 = HEAP32[$i7>>2]|0; - $1947 = HEAP32[$n6>>2]|0; - $1948 = ($1946|0)<($1947|0); - if (!($1948)) { - break; - } - $1949 = HEAP32[$aPermute>>2]|0; - $1950 = ($1949|0)!=(0|0); - $1951 = HEAP32[$i7>>2]|0; - if ($1950) { - $1952 = HEAP32[$aPermute>>2]|0; - $1953 = (($1952) + ($1951<<2)|0); - $1954 = HEAP32[$1953>>2]|0; - $1955 = $1954; - } else { - $1955 = $1951; - } - HEAP32[$idx>>2] = $1955; - $1956 = HEAP32[$i7>>2]|0; - $1957 = HEAP32[$pKeyInfo>>2]|0; - $1958 = (($1957) + 20|0); - $1959 = (($1958) + ($1956<<2)|0); - $1960 = HEAP32[$1959>>2]|0; - HEAP32[$pColl>>2] = $1960; - $1961 = HEAP32[$i7>>2]|0; - $1962 = HEAP32[$pKeyInfo>>2]|0; - $1963 = (($1962) + 16|0); - $1964 = HEAP32[$1963>>2]|0; - $1965 = (($1964) + ($1961)|0); - $1966 = HEAP8[$1965>>0]|0; - $1967 = $1966&255; - HEAP32[$bRev>>2] = $1967; - $1968 = HEAP32[$p18>>2]|0; - $1969 = HEAP32[$idx>>2]|0; - $1970 = (($1968) + ($1969))|0; - $1971 = HEAP32[$aMem>>2]|0; - $1972 = (($1971) + (($1970*40)|0)|0); - $1973 = HEAP32[$p29>>2]|0; - $1974 = HEAP32[$idx>>2]|0; - $1975 = (($1973) + ($1974))|0; - $1976 = HEAP32[$aMem>>2]|0; - $1977 = (($1976) + (($1975*40)|0)|0); - $1978 = HEAP32[$pColl>>2]|0; - $1979 = (_sqlite3MemCompare($1972,$1977,$1978)|0); - HEAP32[$iCompare>>2] = $1979; - $1980 = HEAP32[$iCompare>>2]|0; - $1981 = ($1980|0)!=(0); - if ($1981) { - label = 233; - break; - } - $1986 = HEAP32[$i7>>2]|0; - $1987 = (($1986) + 1)|0; - HEAP32[$i7>>2] = $1987; - } - if ((label|0) == 233) { - label = 0; - $1982 = HEAP32[$bRev>>2]|0; - $1983 = ($1982|0)!=(0); - if ($1983) { - $1984 = HEAP32[$iCompare>>2]|0; - $1985 = (0 - ($1984))|0; - HEAP32[$iCompare>>2] = $1985; - } - } - HEAP32[$aPermute>>2] = 0; - break; - } - case 42: { - $1988 = HEAP32[$iCompare>>2]|0; - $1989 = ($1988|0)<(0); - if ($1989) { - $1990 = HEAP32[$pOp>>2]|0; - $1991 = (($1990) + 4|0); - $1992 = HEAP32[$1991>>2]|0; - $1993 = (($1992) - 1)|0; - HEAP32[$pc>>2] = $1993; - break L21; - } - $1994 = HEAP32[$iCompare>>2]|0; - $1995 = ($1994|0)==(0); - $1996 = HEAP32[$pOp>>2]|0; - if ($1995) { - $1997 = (($1996) + 8|0); - $1998 = HEAP32[$1997>>2]|0; - $1999 = (($1998) - 1)|0; - HEAP32[$pc>>2] = $1999; - break L21; - } else { - $2000 = (($1996) + 12|0); - $2001 = HEAP32[$2000>>2]|0; - $2002 = (($2001) - 1)|0; - HEAP32[$pc>>2] = $2002; - break L21; - } - break; - } - case 71: case 72: { - $2003 = HEAP32[$pOp>>2]|0; - $2004 = (($2003) + 4|0); - $2005 = HEAP32[$2004>>2]|0; - $2006 = HEAP32[$aMem>>2]|0; - $2007 = (($2006) + (($2005*40)|0)|0); - HEAP32[$pIn1>>2] = $2007; - $2008 = HEAP32[$pIn1>>2]|0; - $2009 = (($2008) + 28|0); - $2010 = HEAP16[$2009>>1]|0; - $2011 = $2010&65535; - $2012 = $2011 & 1; - $2013 = ($2012|0)!=(0); - if ($2013) { - HEAP32[$v1>>2] = 2; - } else { - $2014 = HEAP32[$pIn1>>2]|0; - $2015 = (_sqlite3VdbeIntValue($2014)|0); - $2016 = tempRet0; - $2017 = ($2015|0)!=(0); - $2018 = ($2016|0)!=(0); - $2019 = $2017 | $2018; - $2020 = $2019&1; - HEAP32[$v1>>2] = $2020; - } - $2021 = HEAP32[$pOp>>2]|0; - $2022 = (($2021) + 8|0); - $2023 = HEAP32[$2022>>2]|0; - $2024 = HEAP32[$aMem>>2]|0; - $2025 = (($2024) + (($2023*40)|0)|0); - HEAP32[$pIn2>>2] = $2025; - $2026 = HEAP32[$pIn2>>2]|0; - $2027 = (($2026) + 28|0); - $2028 = HEAP16[$2027>>1]|0; - $2029 = $2028&65535; - $2030 = $2029 & 1; - $2031 = ($2030|0)!=(0); - if ($2031) { - HEAP32[$v2>>2] = 2; - } else { - $2032 = HEAP32[$pIn2>>2]|0; - $2033 = (_sqlite3VdbeIntValue($2032)|0); - $2034 = tempRet0; - $2035 = ($2033|0)!=(0); - $2036 = ($2034|0)!=(0); - $2037 = $2035 | $2036; - $2038 = $2037&1; - HEAP32[$v2>>2] = $2038; - } - $2039 = HEAP32[$pOp>>2]|0; - $2040 = HEAP8[$2039>>0]|0; - $2041 = $2040&255; - $2042 = ($2041|0)==(72); - $2043 = HEAP32[$v1>>2]|0; - $2044 = ($2043*3)|0; - $2045 = HEAP32[$v2>>2]|0; - $2046 = (($2044) + ($2045))|0; - if ($2042) { - $2047 = (31264 + ($2046)|0); - $2048 = HEAP8[$2047>>0]|0; - $2049 = $2048&255; - HEAP32[$v1>>2] = $2049; - } else { - $2050 = (31280 + ($2046)|0); - $2051 = HEAP8[$2050>>0]|0; - $2052 = $2051&255; - HEAP32[$v1>>2] = $2052; - } - $2053 = HEAP32[$pOp>>2]|0; - $2054 = (($2053) + 12|0); - $2055 = HEAP32[$2054>>2]|0; - $2056 = HEAP32[$aMem>>2]|0; - $2057 = (($2056) + (($2055*40)|0)|0); - HEAP32[$pOut>>2] = $2057; - $2058 = HEAP32[$v1>>2]|0; - $2059 = ($2058|0)==(2); - if ($2059) { - $2060 = HEAP32[$pOut>>2]|0; - $2061 = (($2060) + 28|0); - $2062 = HEAP16[$2061>>1]|0; - $2063 = $2062&65535; - $2064 = $2063 & -16896; - $2065 = $2064 | 1; - $2066 = $2065&65535; - $2067 = HEAP32[$pOut>>2]|0; - $2068 = (($2067) + 28|0); - HEAP16[$2068>>1] = $2066; - break L21; - } else { - $2069 = HEAP32[$v1>>2]|0; - $2070 = ($2069|0)<(0); - $2071 = $2070 << 31 >> 31; - $2072 = HEAP32[$pOut>>2]|0; - $2073 = (($2072) + 16|0); - $2074 = $2073; - $2075 = $2074; - HEAP32[$2075>>2] = $2069; - $2076 = (($2074) + 4)|0; - $2077 = $2076; - HEAP32[$2077>>2] = $2071; - $2078 = HEAP32[$pOut>>2]|0; - $2079 = (($2078) + 28|0); - $2080 = HEAP16[$2079>>1]|0; - $2081 = $2080&65535; - $2082 = $2081 & -16896; - $2083 = $2082 | 4; - $2084 = $2083&65535; - $2085 = HEAP32[$pOut>>2]|0; - $2086 = (($2085) + 28|0); - HEAP16[$2086>>1] = $2084; - break L21; - } - break; - } - case 96: { - $2114 = HEAP32[$pOp>>2]|0; - $2115 = (($2114) + 4|0); - $2116 = HEAP32[$2115>>2]|0; - $2117 = HEAP32[$aMem>>2]|0; - $2118 = (($2117) + (($2116*40)|0)|0); - HEAP32[$pIn1>>2] = $2118; - $2119 = HEAP32[$pOp>>2]|0; - $2120 = (($2119) + 8|0); - $2121 = HEAP32[$2120>>2]|0; - $2122 = HEAP32[$aMem>>2]|0; - $2123 = (($2122) + (($2121*40)|0)|0); - HEAP32[$pOut>>2] = $2123; - $2124 = HEAP32[$pIn1>>2]|0; - $2125 = (($2124) + 28|0); - $2126 = HEAP16[$2125>>1]|0; - $2127 = $2126&65535; - $2128 = $2127 & 1; - $2129 = ($2128|0)!=(0); - $2130 = HEAP32[$pOut>>2]|0; - if ($2129) { - _sqlite3VdbeMemSetNull($2130); - break L21; - } else { - $2131 = HEAP32[$pIn1>>2]|0; - $2132 = (_sqlite3VdbeIntValue($2131)|0); - $2133 = tempRet0; - $2134 = $2132 ^ -1; - $2135 = $2133 ^ -1; - _sqlite3VdbeMemSetInt64($2130,$2134,$2135); - break L21; - } - break; - } - case 19: { - $2087 = HEAP32[$pOp>>2]|0; - $2088 = (($2087) + 4|0); - $2089 = HEAP32[$2088>>2]|0; - $2090 = HEAP32[$aMem>>2]|0; - $2091 = (($2090) + (($2089*40)|0)|0); - HEAP32[$pIn1>>2] = $2091; - $2092 = HEAP32[$pOp>>2]|0; - $2093 = (($2092) + 8|0); - $2094 = HEAP32[$2093>>2]|0; - $2095 = HEAP32[$aMem>>2]|0; - $2096 = (($2095) + (($2094*40)|0)|0); - HEAP32[$pOut>>2] = $2096; - $2097 = HEAP32[$pIn1>>2]|0; - $2098 = (($2097) + 28|0); - $2099 = HEAP16[$2098>>1]|0; - $2100 = $2099&65535; - $2101 = $2100 & 1; - $2102 = ($2101|0)!=(0); - $2103 = HEAP32[$pOut>>2]|0; - if ($2102) { - _sqlite3VdbeMemSetNull($2103); - break L21; - } else { - $2104 = HEAP32[$pIn1>>2]|0; - $2105 = (_sqlite3VdbeIntValue($2104)|0); - $2106 = tempRet0; - $2107 = ($2105|0)!=(0); - $2108 = ($2106|0)!=(0); - $2109 = $2107 | $2108; - $2110 = $2109 ^ 1; - $2111 = $2110&1; - $2112 = ($2111|0)<(0); - $2113 = $2112 << 31 >> 31; - _sqlite3VdbeMemSetInt64($2103,$2111,$2113); - break L21; - } - break; - } - case 43: { - $2136 = HEAP32[$pOp>>2]|0; - $2137 = (($2136) + 4|0); - $2138 = HEAP32[$2137>>2]|0; - $2139 = HEAP32[$0>>2]|0; - $2140 = (($2139) + 200|0); - $2141 = HEAP32[$2140>>2]|0; - $2142 = (($2141) + ($2138)|0); - $2143 = HEAP8[$2142>>0]|0; - $2144 = ($2143<<24>>24)!=(0); - $2145 = HEAP32[$pOp>>2]|0; - if ($2144) { - $2146 = (($2145) + 8|0); - $2147 = HEAP32[$2146>>2]|0; - $2148 = (($2147) - 1)|0; - HEAP32[$pc>>2] = $2148; - break L21; - } else { - $2149 = (($2145) + 4|0); - $2150 = HEAP32[$2149>>2]|0; - $2151 = HEAP32[$0>>2]|0; - $2152 = (($2151) + 200|0); - $2153 = HEAP32[$2152>>2]|0; - $2154 = (($2153) + ($2150)|0); - HEAP8[$2154>>0] = 1; - break L21; - } - break; - } - case 45: case 44: { - $2155 = HEAP32[$pOp>>2]|0; - $2156 = (($2155) + 4|0); - $2157 = HEAP32[$2156>>2]|0; - $2158 = HEAP32[$aMem>>2]|0; - $2159 = (($2158) + (($2157*40)|0)|0); - HEAP32[$pIn1>>2] = $2159; - $2160 = HEAP32[$pIn1>>2]|0; - $2161 = (($2160) + 28|0); - $2162 = HEAP16[$2161>>1]|0; - $2163 = $2162&65535; - $2164 = $2163 & 1; - $2165 = ($2164|0)!=(0); - if ($2165) { - $2166 = HEAP32[$pOp>>2]|0; - $2167 = (($2166) + 12|0); - $2168 = HEAP32[$2167>>2]|0; - HEAP32[$c>>2] = $2168; - } else { - $2169 = HEAP32[$pIn1>>2]|0; - $2170 = (+_sqlite3VdbeRealValue($2169)); - $2171 = $2170 != 0.0; - $2172 = $2171&1; - HEAP32[$c>>2] = $2172; - $2173 = HEAP32[$pOp>>2]|0; - $2174 = HEAP8[$2173>>0]|0; - $2175 = $2174&255; - $2176 = ($2175|0)==(45); - if ($2176) { - $2177 = HEAP32[$c>>2]|0; - $2178 = ($2177|0)!=(0); - $2179 = $2178 ^ 1; - $2180 = $2179&1; - HEAP32[$c>>2] = $2180; - } - } - $2181 = HEAP32[$c>>2]|0; - $2182 = ($2181|0)!=(0); - if ($2182) { - $2183 = HEAP32[$pOp>>2]|0; - $2184 = (($2183) + 8|0); - $2185 = HEAP32[$2184>>2]|0; - $2186 = (($2185) - 1)|0; - HEAP32[$pc>>2] = $2186; - } - break; - } - case 76: { - $2187 = HEAP32[$pOp>>2]|0; - $2188 = (($2187) + 4|0); - $2189 = HEAP32[$2188>>2]|0; - $2190 = HEAP32[$aMem>>2]|0; - $2191 = (($2190) + (($2189*40)|0)|0); - HEAP32[$pIn1>>2] = $2191; - $2192 = HEAP32[$pIn1>>2]|0; - $2193 = (($2192) + 28|0); - $2194 = HEAP16[$2193>>1]|0; - $2195 = $2194&65535; - $2196 = $2195 & 1; - $2197 = ($2196|0)!=(0); - if ($2197) { - $2198 = HEAP32[$pOp>>2]|0; - $2199 = (($2198) + 8|0); - $2200 = HEAP32[$2199>>2]|0; - $2201 = (($2200) - 1)|0; - HEAP32[$pc>>2] = $2201; - } - break; - } - case 77: { - $2202 = HEAP32[$pOp>>2]|0; - $2203 = (($2202) + 4|0); - $2204 = HEAP32[$2203>>2]|0; - $2205 = HEAP32[$aMem>>2]|0; - $2206 = (($2205) + (($2204*40)|0)|0); - HEAP32[$pIn1>>2] = $2206; - $2207 = HEAP32[$pIn1>>2]|0; - $2208 = (($2207) + 28|0); - $2209 = HEAP16[$2208>>1]|0; - $2210 = $2209&65535; - $2211 = $2210 & 1; - $2212 = ($2211|0)==(0); - if ($2212) { - $2213 = HEAP32[$pOp>>2]|0; - $2214 = (($2213) + 8|0); - $2215 = HEAP32[$2214>>2]|0; - $2216 = (($2215) - 1)|0; - HEAP32[$pc>>2] = $2216; - } - break; - } - case 94: { - $711 = HEAP32[$pOp>>2]|0; - $712 = (($711) + 4|0); - $713 = HEAP32[$712>>2]|0; - $714 = HEAP32[$aMem>>2]|0; - $715 = (($714) + (($713*40)|0)|0); - HEAP32[$pIn1>>2] = $715; - $716 = HEAP32[$pOp>>2]|0; - $717 = (($716) + 8|0); - $718 = HEAP32[$717>>2]|0; - $719 = HEAP32[$aMem>>2]|0; - $720 = (($719) + (($718*40)|0)|0); - HEAP32[$pIn2>>2] = $720; - $721 = HEAP32[$pOp>>2]|0; - $722 = (($721) + 12|0); - $723 = HEAP32[$722>>2]|0; - $724 = HEAP32[$aMem>>2]|0; - $725 = (($724) + (($723*40)|0)|0); - HEAP32[$pOut>>2] = $725; - $726 = HEAP32[$pIn1>>2]|0; - $727 = (($726) + 28|0); - $728 = HEAP16[$727>>1]|0; - $729 = $728&65535; - $730 = HEAP32[$pIn2>>2]|0; - $731 = (($730) + 28|0); - $732 = HEAP16[$731>>1]|0; - $733 = $732&65535; - $734 = $729 | $733; - $735 = $734 & 1; - $736 = ($735|0)!=(0); - if ($736) { - $737 = HEAP32[$pOut>>2]|0; - _sqlite3VdbeMemSetNull($737); - break L21; - } - $738 = HEAP32[$pIn1>>2]|0; - $739 = (($738) + 28|0); - $740 = HEAP16[$739>>1]|0; - $741 = $740&65535; - $742 = $741 & 16384; - $743 = ($742|0)!=(0); - if ($743) { - $744 = HEAP32[$pIn1>>2]|0; - $745 = (_sqlite3VdbeMemExpandBlob($744)|0); - $746 = ($745|0)!=(0); - if ($746) { - label = 900; - break L1; - } - } - $747 = HEAP32[$pIn2>>2]|0; - $748 = (($747) + 28|0); - $749 = HEAP16[$748>>1]|0; - $750 = $749&65535; - $751 = $750 & 16384; - $752 = ($751|0)!=(0); - if ($752) { - $753 = HEAP32[$pIn2>>2]|0; - $754 = (_sqlite3VdbeMemExpandBlob($753)|0); - $755 = ($754|0)!=(0); - if ($755) { - label = 900; - break L1; - } - } - $756 = HEAP32[$pIn1>>2]|0; - $757 = (($756) + 28|0); - $758 = HEAP16[$757>>1]|0; - $759 = $758&65535; - $760 = $759 & 18; - $761 = ($760|0)==(0); - if ($761) { - $762 = HEAP32[$pIn1>>2]|0; - $763 = HEAP8[$encoding>>0]|0; - $764 = $763&255; - $765 = (_sqlite3VdbeMemStringify($762,$764)|0); - $766 = ($765|0)!=(0); - if ($766) { - label = 900; - break L1; - } - } - $767 = HEAP32[$pIn2>>2]|0; - $768 = (($767) + 28|0); - $769 = HEAP16[$768>>1]|0; - $770 = $769&65535; - $771 = $770 & 18; - $772 = ($771|0)==(0); - if ($772) { - $773 = HEAP32[$pIn2>>2]|0; - $774 = HEAP8[$encoding>>0]|0; - $775 = $774&255; - $776 = (_sqlite3VdbeMemStringify($773,$775)|0); - $777 = ($776|0)!=(0); - if ($777) { - label = 900; - break L1; - } - } - $778 = HEAP32[$pIn1>>2]|0; - $779 = (($778) + 24|0); - $780 = HEAP32[$779>>2]|0; - $781 = HEAP32[$pIn2>>2]|0; - $782 = (($781) + 24|0); - $783 = HEAP32[$782>>2]|0; - $784 = (($780) + ($783))|0; - $785 = ($784|0)<(0); - $786 = $785 << 31 >> 31; - $787 = $nByte; - $788 = $787; - HEAP32[$788>>2] = $784; - $789 = (($787) + 4)|0; - $790 = $789; - HEAP32[$790>>2] = $786; - $791 = $nByte; - $792 = $791; - $793 = HEAP32[$792>>2]|0; - $794 = (($791) + 4)|0; - $795 = $794; - $796 = HEAP32[$795>>2]|0; - $797 = HEAP32[$db>>2]|0; - $798 = (($797) + 88|0); - $799 = HEAP32[$798>>2]|0; - $800 = ($799|0)<(0); - $801 = $800 << 31 >> 31; - $802 = ($796|0)>($801|0); - $803 = ($796|0)==($801|0); - $804 = ($793>>>0)>($799>>>0); - $805 = $803 & $804; - $806 = $802 | $805; - if ($806) { - label = 899; - break L11; - } - $807 = HEAP32[$pOut>>2]|0; - $808 = $nByte; - $809 = $808; - $810 = HEAP32[$809>>2]|0; - $811 = (($808) + 4)|0; - $812 = $811; - $813 = HEAP32[$812>>2]|0; - $814 = (($810) + 2)|0; - $815 = HEAP32[$pOut>>2]|0; - $816 = HEAP32[$pIn2>>2]|0; - $817 = ($815|0)==($816|0); - $818 = $817&1; - $819 = (_sqlite3VdbeMemGrow($807,$814,$818)|0); - $820 = ($819|0)!=(0); - if ($820) { - label = 900; - break L1; - } - $821 = HEAP32[$pOut>>2]|0; - $822 = (($821) + 28|0); - $823 = HEAP16[$822>>1]|0; - $824 = $823&65535; - $825 = $824 & -16896; - $826 = $825 | 2; - $827 = $826&65535; - $828 = HEAP32[$pOut>>2]|0; - $829 = (($828) + 28|0); - HEAP16[$829>>1] = $827; - $830 = HEAP32[$pOut>>2]|0; - $831 = HEAP32[$pIn2>>2]|0; - $832 = ($830|0)!=($831|0); - if ($832) { - $833 = HEAP32[$pOut>>2]|0; - $834 = (($833) + 4|0); - $835 = HEAP32[$834>>2]|0; - $836 = HEAP32[$pIn2>>2]|0; - $837 = (($836) + 4|0); - $838 = HEAP32[$837>>2]|0; - $839 = HEAP32[$pIn2>>2]|0; - $840 = (($839) + 24|0); - $841 = HEAP32[$840>>2]|0; - _memcpy(($835|0),($838|0),($841|0))|0; - } - $842 = HEAP32[$pIn2>>2]|0; - $843 = (($842) + 24|0); - $844 = HEAP32[$843>>2]|0; - $845 = HEAP32[$pOut>>2]|0; - $846 = (($845) + 4|0); - $847 = HEAP32[$846>>2]|0; - $848 = (($847) + ($844)|0); - $849 = HEAP32[$pIn1>>2]|0; - $850 = (($849) + 4|0); - $851 = HEAP32[$850>>2]|0; - $852 = HEAP32[$pIn1>>2]|0; - $853 = (($852) + 24|0); - $854 = HEAP32[$853>>2]|0; - _memcpy(($848|0),($851|0),($854|0))|0; - $855 = $nByte; - $856 = $855; - $857 = HEAP32[$856>>2]|0; - $858 = (($855) + 4)|0; - $859 = $858; - $860 = HEAP32[$859>>2]|0; - $861 = HEAP32[$pOut>>2]|0; - $862 = (($861) + 4|0); - $863 = HEAP32[$862>>2]|0; - $864 = (($863) + ($857)|0); - HEAP8[$864>>0] = 0; - $865 = $nByte; - $866 = $865; - $867 = HEAP32[$866>>2]|0; - $868 = (($865) + 4)|0; - $869 = $868; - $870 = HEAP32[$869>>2]|0; - $871 = (_i64Add(($867|0),($870|0),1,0)|0); - $872 = tempRet0; - $873 = HEAP32[$pOut>>2]|0; - $874 = (($873) + 4|0); - $875 = HEAP32[$874>>2]|0; - $876 = (($875) + ($871)|0); - HEAP8[$876>>0] = 0; - $877 = HEAP32[$pOut>>2]|0; - $878 = (($877) + 28|0); - $879 = HEAP16[$878>>1]|0; - $880 = $879&65535; - $881 = $880 | 512; - $882 = $881&65535; - HEAP16[$878>>1] = $882; - $883 = $nByte; - $884 = $883; - $885 = HEAP32[$884>>2]|0; - $886 = (($883) + 4)|0; - $887 = $886; - $888 = HEAP32[$887>>2]|0; - $889 = HEAP32[$pOut>>2]|0; - $890 = (($889) + 24|0); - HEAP32[$890>>2] = $885; - $891 = HEAP8[$encoding>>0]|0; - $892 = HEAP32[$pOut>>2]|0; - $893 = (($892) + 30|0); - HEAP8[$893>>0] = $891; - break; - } - case 93: case 92: case 91: case 90: case 89: { - $894 = HEAP32[$pOp>>2]|0; - $895 = (($894) + 4|0); - $896 = HEAP32[$895>>2]|0; - $897 = HEAP32[$aMem>>2]|0; - $898 = (($897) + (($896*40)|0)|0); - HEAP32[$pIn1>>2] = $898; - $899 = HEAP32[$pIn1>>2]|0; - $900 = (_numericType($899)|0); - HEAP16[$type1>>1] = $900; - $901 = HEAP32[$pOp>>2]|0; - $902 = (($901) + 8|0); - $903 = HEAP32[$902>>2]|0; - $904 = HEAP32[$aMem>>2]|0; - $905 = (($904) + (($903*40)|0)|0); - HEAP32[$pIn2>>2] = $905; - $906 = HEAP32[$pIn2>>2]|0; - $907 = (_numericType($906)|0); - HEAP16[$type2>>1] = $907; - $908 = HEAP32[$pOp>>2]|0; - $909 = (($908) + 12|0); - $910 = HEAP32[$909>>2]|0; - $911 = HEAP32[$aMem>>2]|0; - $912 = (($911) + (($910*40)|0)|0); - HEAP32[$pOut>>2] = $912; - $913 = HEAP32[$pIn1>>2]|0; - $914 = (($913) + 28|0); - $915 = HEAP16[$914>>1]|0; - $916 = $915&65535; - $917 = HEAP32[$pIn2>>2]|0; - $918 = (($917) + 28|0); - $919 = HEAP16[$918>>1]|0; - $920 = $919&65535; - $921 = $916 | $920; - $922 = $921&65535; - HEAP16[$flags>>1] = $922; - $923 = HEAP16[$flags>>1]|0; - $924 = $923&65535; - $925 = $924 & 1; - $926 = ($925|0)!=(0); - L212: do { - if (!($926)) { - $927 = HEAP16[$type1>>1]|0; - $928 = $927&65535; - $929 = HEAP16[$type2>>1]|0; - $930 = $929&65535; - $931 = $928 & $930; - $932 = $931 & 4; - $933 = ($932|0)!=(0); - do { - if ($933) { - $934 = HEAP32[$pIn1>>2]|0; - $935 = (($934) + 16|0); - $936 = $935; - $937 = $936; - $938 = HEAP32[$937>>2]|0; - $939 = (($936) + 4)|0; - $940 = $939; - $941 = HEAP32[$940>>2]|0; - $942 = $iA; - $943 = $942; - HEAP32[$943>>2] = $938; - $944 = (($942) + 4)|0; - $945 = $944; - HEAP32[$945>>2] = $941; - $946 = HEAP32[$pIn2>>2]|0; - $947 = (($946) + 16|0); - $948 = $947; - $949 = $948; - $950 = HEAP32[$949>>2]|0; - $951 = (($948) + 4)|0; - $952 = $951; - $953 = HEAP32[$952>>2]|0; - $954 = $iB; - $955 = $954; - HEAP32[$955>>2] = $950; - $956 = (($954) + 4)|0; - $957 = $956; - HEAP32[$957>>2] = $953; - HEAP8[$bIntint>>0] = 1; - $958 = HEAP32[$pOp>>2]|0; - $959 = HEAP8[$958>>0]|0; - $960 = $959&255; - if ((($960|0) == 89)) { - $961 = $iA; - $962 = $961; - $963 = HEAP32[$962>>2]|0; - $964 = (($961) + 4)|0; - $965 = $964; - $966 = HEAP32[$965>>2]|0; - $967 = (_sqlite3AddInt64($iB,$963,$966)|0); - $968 = ($967|0)!=(0); - if ($968) { - break; - } - } else if ((($960|0) == 90)) { - $969 = $iA; - $970 = $969; - $971 = HEAP32[$970>>2]|0; - $972 = (($969) + 4)|0; - $973 = $972; - $974 = HEAP32[$973>>2]|0; - $975 = (_sqlite3SubInt64($iB,$971,$974)|0); - $976 = ($975|0)!=(0); - if ($976) { - break; - } - } else if ((($960|0) == 91)) { - $977 = $iA; - $978 = $977; - $979 = HEAP32[$978>>2]|0; - $980 = (($977) + 4)|0; - $981 = $980; - $982 = HEAP32[$981>>2]|0; - $983 = (_sqlite3MulInt64($iB,$979,$982)|0); - $984 = ($983|0)!=(0); - if ($984) { - break; - } - } else if ((($960|0) == 92)) { - $985 = $iA; - $986 = $985; - $987 = HEAP32[$986>>2]|0; - $988 = (($985) + 4)|0; - $989 = $988; - $990 = HEAP32[$989>>2]|0; - $991 = ($987|0)==(0); - $992 = ($990|0)==(0); - $993 = $991 & $992; - if ($993) { - break L212; - } - $994 = $iA; - $995 = $994; - $996 = HEAP32[$995>>2]|0; - $997 = (($994) + 4)|0; - $998 = $997; - $999 = HEAP32[$998>>2]|0; - $1000 = ($996|0)==(-1); - $1001 = ($999|0)==(-1); - $1002 = $1000 & $1001; - if ($1002) { - $1003 = $iB; - $1004 = $1003; - $1005 = HEAP32[$1004>>2]|0; - $1006 = (($1003) + 4)|0; - $1007 = $1006; - $1008 = HEAP32[$1007>>2]|0; - $1009 = ($1005|0)==(0); - $1010 = ($1008|0)==(-2147483648); - $1011 = $1009 & $1010; - if ($1011) { - break; - } - } - $1012 = $iA; - $1013 = $1012; - $1014 = HEAP32[$1013>>2]|0; - $1015 = (($1012) + 4)|0; - $1016 = $1015; - $1017 = HEAP32[$1016>>2]|0; - $1018 = $iB; - $1019 = $1018; - $1020 = HEAP32[$1019>>2]|0; - $1021 = (($1018) + 4)|0; - $1022 = $1021; - $1023 = HEAP32[$1022>>2]|0; - $1024 = (___divdi3(($1020|0),($1023|0),($1014|0),($1017|0))|0); - $1025 = tempRet0; - $1026 = $iB; - $1027 = $1026; - HEAP32[$1027>>2] = $1024; - $1028 = (($1026) + 4)|0; - $1029 = $1028; - HEAP32[$1029>>2] = $1025; - } else { - $1030 = $iA; - $1031 = $1030; - $1032 = HEAP32[$1031>>2]|0; - $1033 = (($1030) + 4)|0; - $1034 = $1033; - $1035 = HEAP32[$1034>>2]|0; - $1036 = ($1032|0)==(0); - $1037 = ($1035|0)==(0); - $1038 = $1036 & $1037; - if ($1038) { - break L212; - } - $1039 = $iA; - $1040 = $1039; - $1041 = HEAP32[$1040>>2]|0; - $1042 = (($1039) + 4)|0; - $1043 = $1042; - $1044 = HEAP32[$1043>>2]|0; - $1045 = ($1041|0)==(-1); - $1046 = ($1044|0)==(-1); - $1047 = $1045 & $1046; - if ($1047) { - $1048 = $iA; - $1049 = $1048; - HEAP32[$1049>>2] = 1; - $1050 = (($1048) + 4)|0; - $1051 = $1050; - HEAP32[$1051>>2] = 0; - } - $1052 = $iA; - $1053 = $1052; - $1054 = HEAP32[$1053>>2]|0; - $1055 = (($1052) + 4)|0; - $1056 = $1055; - $1057 = HEAP32[$1056>>2]|0; - $1058 = $iB; - $1059 = $1058; - $1060 = HEAP32[$1059>>2]|0; - $1061 = (($1058) + 4)|0; - $1062 = $1061; - $1063 = HEAP32[$1062>>2]|0; - $1064 = (___remdi3(($1060|0),($1063|0),($1054|0),($1057|0))|0); - $1065 = tempRet0; - $1066 = $iB; - $1067 = $1066; - HEAP32[$1067>>2] = $1064; - $1068 = (($1066) + 4)|0; - $1069 = $1068; - HEAP32[$1069>>2] = $1065; - } - $1070 = $iB; - $1071 = $1070; - $1072 = HEAP32[$1071>>2]|0; - $1073 = (($1070) + 4)|0; - $1074 = $1073; - $1075 = HEAP32[$1074>>2]|0; - $1076 = HEAP32[$pOut>>2]|0; - $1077 = (($1076) + 16|0); - $1078 = $1077; - $1079 = $1078; - HEAP32[$1079>>2] = $1072; - $1080 = (($1078) + 4)|0; - $1081 = $1080; - HEAP32[$1081>>2] = $1075; - $1082 = HEAP32[$pOut>>2]|0; - $1083 = (($1082) + 28|0); - $1084 = HEAP16[$1083>>1]|0; - $1085 = $1084&65535; - $1086 = $1085 & -16896; - $1087 = $1086 | 4; - $1088 = $1087&65535; - $1089 = HEAP32[$pOut>>2]|0; - $1090 = (($1089) + 28|0); - HEAP16[$1090>>1] = $1088; - break L21; - } else { - HEAP8[$bIntint>>0] = 0; - } - } while(0); - $1091 = HEAP32[$pIn1>>2]|0; - $1092 = (+_sqlite3VdbeRealValue($1091)); - HEAPF64[$rA>>3] = $1092; - $1093 = HEAP32[$pIn2>>2]|0; - $1094 = (+_sqlite3VdbeRealValue($1093)); - HEAPF64[$rB>>3] = $1094; - $1095 = HEAP32[$pOp>>2]|0; - $1096 = HEAP8[$1095>>0]|0; - $1097 = $1096&255; - if ((($1097|0) == 89)) { - $1098 = +HEAPF64[$rA>>3]; - $1099 = +HEAPF64[$rB>>3]; - $1100 = $1099 + $1098; - HEAPF64[$rB>>3] = $1100; - } else if ((($1097|0) == 90)) { - $1101 = +HEAPF64[$rA>>3]; - $1102 = +HEAPF64[$rB>>3]; - $1103 = $1102 - $1101; - HEAPF64[$rB>>3] = $1103; - } else if ((($1097|0) == 91)) { - $1104 = +HEAPF64[$rA>>3]; - $1105 = +HEAPF64[$rB>>3]; - $1106 = $1105 * $1104; - HEAPF64[$rB>>3] = $1106; - } else if ((($1097|0) == 92)) { - $1107 = +HEAPF64[$rA>>3]; - $1108 = $1107 == 0.0; - if ($1108) { - break; - } - $1109 = +HEAPF64[$rA>>3]; - $1110 = +HEAPF64[$rB>>3]; - $1111 = $1110 / $1109; - HEAPF64[$rB>>3] = $1111; - } else { - $1112 = +HEAPF64[$rA>>3]; - $1113 = (~~$1112)>>>0; - $1114 = +Math_abs($1112) >= 1.0 ? $1112 > 0.0 ? (Math_min(+Math_floor($1112 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($1112 - +(~~$1112 >>> 0)) / 4294967296.0) >>> 0 : 0; - $1115 = $iA; - $1116 = $1115; - HEAP32[$1116>>2] = $1113; - $1117 = (($1115) + 4)|0; - $1118 = $1117; - HEAP32[$1118>>2] = $1114; - $1119 = +HEAPF64[$rB>>3]; - $1120 = (~~$1119)>>>0; - $1121 = +Math_abs($1119) >= 1.0 ? $1119 > 0.0 ? (Math_min(+Math_floor($1119 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($1119 - +(~~$1119 >>> 0)) / 4294967296.0) >>> 0 : 0; - $1122 = $iB; - $1123 = $1122; - HEAP32[$1123>>2] = $1120; - $1124 = (($1122) + 4)|0; - $1125 = $1124; - HEAP32[$1125>>2] = $1121; - $1126 = $iA; - $1127 = $1126; - $1128 = HEAP32[$1127>>2]|0; - $1129 = (($1126) + 4)|0; - $1130 = $1129; - $1131 = HEAP32[$1130>>2]|0; - $1132 = ($1128|0)==(0); - $1133 = ($1131|0)==(0); - $1134 = $1132 & $1133; - if ($1134) { - break; - } - $1135 = $iA; - $1136 = $1135; - $1137 = HEAP32[$1136>>2]|0; - $1138 = (($1135) + 4)|0; - $1139 = $1138; - $1140 = HEAP32[$1139>>2]|0; - $1141 = ($1137|0)==(-1); - $1142 = ($1140|0)==(-1); - $1143 = $1141 & $1142; - if ($1143) { - $1144 = $iA; - $1145 = $1144; - HEAP32[$1145>>2] = 1; - $1146 = (($1144) + 4)|0; - $1147 = $1146; - HEAP32[$1147>>2] = 0; - } - $1148 = $iB; - $1149 = $1148; - $1150 = HEAP32[$1149>>2]|0; - $1151 = (($1148) + 4)|0; - $1152 = $1151; - $1153 = HEAP32[$1152>>2]|0; - $1154 = $iA; - $1155 = $1154; - $1156 = HEAP32[$1155>>2]|0; - $1157 = (($1154) + 4)|0; - $1158 = $1157; - $1159 = HEAP32[$1158>>2]|0; - $1160 = (___remdi3(($1150|0),($1153|0),($1156|0),($1159|0))|0); - $1161 = tempRet0; - $1162 = (+($1160>>>0)) + (4294967296.0*(+($1161|0))); - HEAPF64[$rB>>3] = $1162; - } - $1163 = +HEAPF64[$rB>>3]; - $1164 = (_sqlite3IsNaN($1163)|0); - $1165 = ($1164|0)!=(0); - if (!($1165)) { - $1166 = +HEAPF64[$rB>>3]; - $1167 = HEAP32[$pOut>>2]|0; - $1168 = (($1167) + 8|0); - HEAPF64[$1168>>3] = $1166; - $1169 = HEAP32[$pOut>>2]|0; - $1170 = (($1169) + 28|0); - $1171 = HEAP16[$1170>>1]|0; - $1172 = $1171&65535; - $1173 = $1172 & -16896; - $1174 = $1173 | 8; - $1175 = $1174&65535; - $1176 = HEAP32[$pOut>>2]|0; - $1177 = (($1176) + 28|0); - HEAP16[$1177>>1] = $1175; - $1178 = HEAP16[$type1>>1]|0; - $1179 = $1178&65535; - $1180 = HEAP16[$type2>>1]|0; - $1181 = $1180&65535; - $1182 = $1179 | $1181; - $1183 = $1182 & 8; - $1184 = ($1183|0)==(0); - if (!($1184)) { - break L21; - } - $1185 = HEAP8[$bIntint>>0]|0; - $1186 = ($1185<<24>>24)!=(0); - if ($1186) { - break L21; - } - $1187 = HEAP32[$pOut>>2]|0; - _sqlite3VdbeIntegerAffinity($1187); - break L21; - } - } - } while(0); - $1188 = HEAP32[$pOut>>2]|0; - _sqlite3VdbeMemSetNull($1188); - break; - } - case 33: { - $601 = HEAP32[$pOp>>2]|0; - $602 = (($601) + 12|0); - $603 = HEAP32[$602>>2]|0; - HEAP32[$n1>>2] = $603; - $604 = HEAP32[$pOp>>2]|0; - $605 = (($604) + 4|0); - $606 = HEAP32[$605>>2]|0; - $607 = HEAP32[$aMem>>2]|0; - $608 = (($607) + (($606*40)|0)|0); - HEAP32[$pIn1>>2] = $608; - $609 = HEAP32[$pOp>>2]|0; - $610 = (($609) + 8|0); - $611 = HEAP32[$610>>2]|0; - $612 = HEAP32[$aMem>>2]|0; - $613 = (($612) + (($611*40)|0)|0); - HEAP32[$pOut>>2] = $613; - while(1) { - $614 = HEAP32[$pOut>>2]|0; - $615 = HEAP32[$pIn1>>2]|0; - _sqlite3VdbeMemShallowCopy($614,$615,4096); - $616 = HEAP32[$pOut>>2]|0; - $617 = (($616) + 28|0); - $618 = HEAP16[$617>>1]|0; - $619 = $618&65535; - $620 = $619 & 4096; - $621 = ($620|0)!=(0); - if ($621) { - $622 = HEAP32[$pOut>>2]|0; - $623 = (_sqlite3VdbeMemMakeWriteable($622)|0); - $624 = ($623|0)!=(0); - if ($624) { - label = 900; - break L1; - } - } - $625 = HEAP32[$n1>>2]|0; - $626 = (($625) + -1)|0; - HEAP32[$n1>>2] = $626; - $627 = ($625|0)==(0); - if ($627) { - break L21; - } - $628 = HEAP32[$pOut>>2]|0; - $629 = (($628) + 40|0); - HEAP32[$pOut>>2] = $629; - $630 = HEAP32[$pIn1>>2]|0; - $631 = (($630) + 40|0); - HEAP32[$pIn1>>2] = $631; - } - break; - } - case 36: { - $1189 = HEAP32[$pOp>>2]|0; - $1190 = (($1189) + 4|0); - $1191 = HEAP32[$1190>>2]|0; - $1192 = ($1191|0)!=(0); - if ($1192) { - $1193 = HEAP32[$pOp>>2]|0; - $1194 = (($1193) + 4|0); - $1195 = HEAP32[$1194>>2]|0; - $1196 = HEAP32[$aMem>>2]|0; - $1197 = (($1196) + (($1195*40)|0)|0); - _sqlite3VdbeMemSetInt64($1197,0,0); - } - break; - } - case 1: { - $1198 = HEAP32[$pOp>>2]|0; - $1199 = (($1198) + 3|0); - $1200 = HEAP8[$1199>>0]|0; - $1201 = $1200&255; - HEAP32[$n3>>2] = $1201; - $1202 = HEAP32[$0>>2]|0; - $1203 = (($1202) + 12|0); - $1204 = HEAP32[$1203>>2]|0; - HEAP32[$apVal>>2] = $1204; - $1205 = HEAP32[$pOp>>2]|0; - $1206 = (($1205) + 12|0); - $1207 = HEAP32[$1206>>2]|0; - $1208 = HEAP32[$aMem>>2]|0; - $1209 = (($1208) + (($1207*40)|0)|0); - HEAP32[$pOut>>2] = $1209; - $1210 = HEAP32[$pOp>>2]|0; - $1211 = (($1210) + 8|0); - $1212 = HEAP32[$1211>>2]|0; - $1213 = HEAP32[$aMem>>2]|0; - $1214 = (($1213) + (($1212*40)|0)|0); - HEAP32[$pArg>>2] = $1214; - HEAP32[$i2>>2] = 0; - while(1) { - $1215 = HEAP32[$i2>>2]|0; - $1216 = HEAP32[$n3>>2]|0; - $1217 = ($1215|0)<($1216|0); - if (!($1217)) { - break; - } - $1218 = HEAP32[$pArg>>2]|0; - $1219 = HEAP32[$i2>>2]|0; - $1220 = HEAP32[$apVal>>2]|0; - $1221 = (($1220) + ($1219<<2)|0); - HEAP32[$1221>>2] = $1218; - $1222 = HEAP32[$pArg>>2]|0; - $1223 = (($1222) + 28|0); - $1224 = HEAP16[$1223>>1]|0; - $1225 = $1224&65535; - $1226 = $1225 & 4096; - $1227 = ($1226|0)!=(0); - if ($1227) { - $1228 = HEAP32[$pArg>>2]|0; - $1229 = (_sqlite3VdbeMemMakeWriteable($1228)|0); - $1230 = ($1229|0)!=(0); - if ($1230) { - label = 900; - break L1; - } - } - $1231 = HEAP32[$i2>>2]|0; - $1232 = (($1231) + 1)|0; - HEAP32[$i2>>2] = $1232; - $1233 = HEAP32[$pArg>>2]|0; - $1234 = (($1233) + 40|0); - HEAP32[$pArg>>2] = $1234; - } - $1235 = HEAP32[$pOp>>2]|0; - $1236 = (($1235) + 16|0); - $1237 = HEAP32[$1236>>2]|0; - HEAP32[$ctx>>2] = $1237; - $1238 = HEAP32[$pc>>2]|0; - $1239 = (($ctx) + 60|0); - HEAP32[$1239>>2] = $1238; - $1240 = HEAP32[$0>>2]|0; - $1241 = (($ctx) + 56|0); - HEAP32[$1241>>2] = $1240; - $1242 = (($ctx) + 8|0); - $1243 = HEAP32[$pOut>>2]|0; - dest=$1242+0|0; src=$1243+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $1244 = HEAP32[$pOut>>2]|0; - $1245 = (($1244) + 28|0); - HEAP16[$1245>>1] = 1; - $1246 = HEAP32[$pOut>>2]|0; - $1247 = (($1246) + 32|0); - HEAP32[$1247>>2] = 0; - $1248 = HEAP32[$pOut>>2]|0; - $1249 = (($1248) + 36|0); - HEAP32[$1249>>2] = 0; - $1250 = (($ctx) + 8|0); - $1251 = (($1250) + 28|0); - $1252 = HEAP16[$1251>>1]|0; - $1253 = $1252&65535; - $1254 = $1253 & -16896; - $1255 = $1254 | 1; - $1256 = $1255&65535; - $1257 = (($ctx) + 8|0); - $1258 = (($1257) + 28|0); - HEAP16[$1258>>1] = $1256; - $1259 = (($ctx) + 69|0); - HEAP8[$1259>>0] = 0; - $1260 = HEAP32[$ctx>>2]|0; - $1261 = (($1260) + 2|0); - $1262 = HEAP16[$1261>>1]|0; - $1263 = $1262&65535; - $1264 = $1263 & 32; - $1265 = ($1264|0)!=(0); - if ($1265) { - $1266 = HEAP32[$pOp>>2]|0; - $1267 = (($1266) + -20|0); - $1268 = (($1267) + 16|0); - $1269 = HEAP32[$1268>>2]|0; - $1270 = (($ctx) + 52|0); - HEAP32[$1270>>2] = $1269; - } - $1271 = $lastRowid; - $1272 = $1271; - $1273 = HEAP32[$1272>>2]|0; - $1274 = (($1271) + 4)|0; - $1275 = $1274; - $1276 = HEAP32[$1275>>2]|0; - $1277 = HEAP32[$db>>2]|0; - $1278 = (($1277) + 32|0); - $1279 = $1278; - $1280 = $1279; - HEAP32[$1280>>2] = $1273; - $1281 = (($1279) + 4)|0; - $1282 = $1281; - HEAP32[$1282>>2] = $1276; - $1283 = HEAP32[$ctx>>2]|0; - $1284 = (($1283) + 12|0); - $1285 = HEAP32[$1284>>2]|0; - $1286 = HEAP32[$n3>>2]|0; - $1287 = HEAP32[$apVal>>2]|0; - FUNCTION_TABLE_viii[$1285 & 63]($ctx,$1286,$1287); - $1288 = HEAP32[$db>>2]|0; - $1289 = (($1288) + 32|0); - $1290 = $1289; - $1291 = $1290; - $1292 = HEAP32[$1291>>2]|0; - $1293 = (($1290) + 4)|0; - $1294 = $1293; - $1295 = HEAP32[$1294>>2]|0; - $1296 = $lastRowid; - $1297 = $1296; - HEAP32[$1297>>2] = $1292; - $1298 = (($1296) + 4)|0; - $1299 = $1298; - HEAP32[$1299>>2] = $1295; - $1300 = HEAP32[$db>>2]|0; - $1301 = (($1300) + 64|0); - $1302 = HEAP8[$1301>>0]|0; - $1303 = ($1302<<24>>24)!=(0); - if ($1303) { - label = 146; - break L11; - } - $1305 = (($ctx) + 69|0); - $1306 = HEAP8[$1305>>0]|0; - $1307 = ($1306<<24>>24)!=(0); - if ($1307) { - $1308 = (($ctx) + 64|0); - $1309 = HEAP32[$1308>>2]|0; - $1310 = ($1309|0)!=(0); - if ($1310) { - $1311 = HEAP32[$0>>2]|0; - $1312 = (($1311) + 44|0); - $1313 = HEAP32[$db>>2]|0; - $1314 = (($ctx) + 8|0); - $1315 = (_sqlite3_value_text($1314)|0); - HEAP32[$vararg_buffer62>>2] = $1315; - _sqlite3SetString($1312,$1313,1456,$vararg_buffer62); - $1316 = (($ctx) + 64|0); - $1317 = HEAP32[$1316>>2]|0; - HEAP32[$rc>>2] = $1317; - } - $1318 = HEAP32[$0>>2]|0; - $1319 = HEAP32[$pc>>2]|0; - $1320 = HEAP32[$pOp>>2]|0; - $1321 = (($1320) + 4|0); - $1322 = HEAP32[$1321>>2]|0; - _sqlite3VdbeDeleteAuxData($1318,$1319,$1322); - } - $1323 = (($ctx) + 8|0); - $1324 = HEAP8[$encoding>>0]|0; - $1325 = $1324&255; - (_sqlite3VdbeChangeEncoding($1323,$1325)|0); - $1326 = HEAP32[$pOut>>2]|0; - $1327 = (($ctx) + 8|0); - dest=$1326+0|0; src=$1327+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $1328 = HEAP32[$pOut>>2]|0; - $1329 = (_sqlite3VdbeMemTooBig($1328)|0); - $1330 = ($1329|0)!=(0); - if ($1330) { - label = 899; - break L11; - } - break; - } - case 88: case 87: case 86: case 85: { - $1331 = HEAP32[$pOp>>2]|0; - $1332 = (($1331) + 4|0); - $1333 = HEAP32[$1332>>2]|0; - $1334 = HEAP32[$aMem>>2]|0; - $1335 = (($1334) + (($1333*40)|0)|0); - HEAP32[$pIn1>>2] = $1335; - $1336 = HEAP32[$pOp>>2]|0; - $1337 = (($1336) + 8|0); - $1338 = HEAP32[$1337>>2]|0; - $1339 = HEAP32[$aMem>>2]|0; - $1340 = (($1339) + (($1338*40)|0)|0); - HEAP32[$pIn2>>2] = $1340; - $1341 = HEAP32[$pOp>>2]|0; - $1342 = (($1341) + 12|0); - $1343 = HEAP32[$1342>>2]|0; - $1344 = HEAP32[$aMem>>2]|0; - $1345 = (($1344) + (($1343*40)|0)|0); - HEAP32[$pOut>>2] = $1345; - $1346 = HEAP32[$pIn1>>2]|0; - $1347 = (($1346) + 28|0); - $1348 = HEAP16[$1347>>1]|0; - $1349 = $1348&65535; - $1350 = HEAP32[$pIn2>>2]|0; - $1351 = (($1350) + 28|0); - $1352 = HEAP16[$1351>>1]|0; - $1353 = $1352&65535; - $1354 = $1349 | $1353; - $1355 = $1354 & 1; - $1356 = ($1355|0)!=(0); - if ($1356) { - $1357 = HEAP32[$pOut>>2]|0; - _sqlite3VdbeMemSetNull($1357); - break L21; - } - $1358 = HEAP32[$pIn2>>2]|0; - $1359 = (_sqlite3VdbeIntValue($1358)|0); - $1360 = tempRet0; - $1361 = $iA4; - $1362 = $1361; - HEAP32[$1362>>2] = $1359; - $1363 = (($1361) + 4)|0; - $1364 = $1363; - HEAP32[$1364>>2] = $1360; - $1365 = HEAP32[$pIn1>>2]|0; - $1366 = (_sqlite3VdbeIntValue($1365)|0); - $1367 = tempRet0; - $1368 = $iB5; - $1369 = $1368; - HEAP32[$1369>>2] = $1366; - $1370 = (($1368) + 4)|0; - $1371 = $1370; - HEAP32[$1371>>2] = $1367; - $1372 = HEAP32[$pOp>>2]|0; - $1373 = HEAP8[$1372>>0]|0; - HEAP8[$op>>0] = $1373; - $1374 = HEAP8[$op>>0]|0; - $1375 = $1374&255; - $1376 = ($1375|0)==(85); - do { - if ($1376) { - $1377 = $iB5; - $1378 = $1377; - $1379 = HEAP32[$1378>>2]|0; - $1380 = (($1377) + 4)|0; - $1381 = $1380; - $1382 = HEAP32[$1381>>2]|0; - $1383 = $iA4; - $1384 = $1383; - $1385 = HEAP32[$1384>>2]|0; - $1386 = (($1383) + 4)|0; - $1387 = $1386; - $1388 = HEAP32[$1387>>2]|0; - $1389 = $1385 & $1379; - $1390 = $1388 & $1382; - $1391 = $iA4; - $1392 = $1391; - HEAP32[$1392>>2] = $1389; - $1393 = (($1391) + 4)|0; - $1394 = $1393; - HEAP32[$1394>>2] = $1390; - } else { - $1395 = HEAP8[$op>>0]|0; - $1396 = $1395&255; - $1397 = ($1396|0)==(86); - $1398 = $iB5; - $1399 = $1398; - $1400 = HEAP32[$1399>>2]|0; - $1401 = (($1398) + 4)|0; - $1402 = $1401; - $1403 = HEAP32[$1402>>2]|0; - if ($1397) { - $1404 = $iA4; - $1405 = $1404; - $1406 = HEAP32[$1405>>2]|0; - $1407 = (($1404) + 4)|0; - $1408 = $1407; - $1409 = HEAP32[$1408>>2]|0; - $1410 = $1406 | $1400; - $1411 = $1409 | $1403; - $1412 = $iA4; - $1413 = $1412; - HEAP32[$1413>>2] = $1410; - $1414 = (($1412) + 4)|0; - $1415 = $1414; - HEAP32[$1415>>2] = $1411; - break; - } - $1416 = ($1400|0)!=(0); - $1417 = ($1403|0)!=(0); - $1418 = $1416 | $1417; - if ($1418) { - $1419 = $iB5; - $1420 = $1419; - $1421 = HEAP32[$1420>>2]|0; - $1422 = (($1419) + 4)|0; - $1423 = $1422; - $1424 = HEAP32[$1423>>2]|0; - $1425 = ($1424|0)<(0); - if ($1425) { - $1426 = HEAP8[$op>>0]|0; - $1427 = $1426&255; - $1428 = (175 - ($1427))|0; - $1429 = $1428&255; - HEAP8[$op>>0] = $1429; - $1430 = $iB5; - $1431 = $1430; - $1432 = HEAP32[$1431>>2]|0; - $1433 = (($1430) + 4)|0; - $1434 = $1433; - $1435 = HEAP32[$1434>>2]|0; - $1436 = ($1435|0)>(-1); - $1437 = ($1435|0)==(-1); - $1438 = ($1432>>>0)>(4294967232); - $1439 = $1437 & $1438; - $1440 = $1436 | $1439; - if ($1440) { - $1441 = $iB5; - $1442 = $1441; - $1443 = HEAP32[$1442>>2]|0; - $1444 = (($1441) + 4)|0; - $1445 = $1444; - $1446 = HEAP32[$1445>>2]|0; - $1447 = (_i64Subtract(0,0,($1443|0),($1446|0))|0); - $1448 = tempRet0; - $1451 = $1447;$1454 = $1448; - } else { - $1451 = 64;$1454 = 0; - } - $1449 = $iB5; - $1450 = $1449; - HEAP32[$1450>>2] = $1451; - $1452 = (($1449) + 4)|0; - $1453 = $1452; - HEAP32[$1453>>2] = $1454; - } - $1455 = $iB5; - $1456 = $1455; - $1457 = HEAP32[$1456>>2]|0; - $1458 = (($1455) + 4)|0; - $1459 = $1458; - $1460 = HEAP32[$1459>>2]|0; - $1461 = ($1460|0)>(0); - $1462 = ($1460|0)==(0); - $1463 = ($1457>>>0)>=(64); - $1464 = $1462 & $1463; - $1465 = $1461 | $1464; - if ($1465) { - $1466 = $iA4; - $1467 = $1466; - $1468 = HEAP32[$1467>>2]|0; - $1469 = (($1466) + 4)|0; - $1470 = $1469; - $1471 = HEAP32[$1470>>2]|0; - $1472 = ($1471|0)>(0); - $1473 = ($1471|0)==(0); - $1474 = ($1468>>>0)>=(0); - $1475 = $1473 & $1474; - $1476 = $1472 | $1475; - if ($1476) { - $1481 = 1; - } else { - $1477 = HEAP8[$op>>0]|0; - $1478 = $1477&255; - $1479 = ($1478|0)==(87); - $1481 = $1479; - } - $1480 = $1481 ? 0 : -1; - $1482 = ($1480|0)<(0); - $1483 = $1482 << 31 >> 31; - $1484 = $iA4; - $1485 = $1484; - HEAP32[$1485>>2] = $1480; - $1486 = (($1484) + 4)|0; - $1487 = $1486; - HEAP32[$1487>>2] = $1483; - break; - } - ;HEAP32[$uA+0>>2]=HEAP32[$iA4+0>>2]|0;HEAP32[$uA+4>>2]=HEAP32[$iA4+4>>2]|0; - $1488 = HEAP8[$op>>0]|0; - $1489 = $1488&255; - $1490 = ($1489|0)==(87); - $1491 = $iB5; - $1492 = $1491; - $1493 = HEAP32[$1492>>2]|0; - $1494 = (($1491) + 4)|0; - $1495 = $1494; - $1496 = HEAP32[$1495>>2]|0; - $1497 = $uA; - $1498 = $1497; - $1499 = HEAP32[$1498>>2]|0; - $1500 = (($1497) + 4)|0; - $1501 = $1500; - $1502 = HEAP32[$1501>>2]|0; - if ($1490) { - $1503 = (_bitshift64Shl(($1499|0),($1502|0),($1493|0))|0); - $1504 = tempRet0; - $1505 = $uA; - $1506 = $1505; - HEAP32[$1506>>2] = $1503; - $1507 = (($1505) + 4)|0; - $1508 = $1507; - HEAP32[$1508>>2] = $1504; - } else { - $1509 = (_bitshift64Lshr(($1499|0),($1502|0),($1493|0))|0); - $1510 = tempRet0; - $1511 = $uA; - $1512 = $1511; - HEAP32[$1512>>2] = $1509; - $1513 = (($1511) + 4)|0; - $1514 = $1513; - HEAP32[$1514>>2] = $1510; - $1515 = $iA4; - $1516 = $1515; - $1517 = HEAP32[$1516>>2]|0; - $1518 = (($1515) + 4)|0; - $1519 = $1518; - $1520 = HEAP32[$1519>>2]|0; - $1521 = ($1520|0)<(0); - if ($1521) { - $1522 = $iB5; - $1523 = $1522; - $1524 = HEAP32[$1523>>2]|0; - $1525 = (($1522) + 4)|0; - $1526 = $1525; - $1527 = HEAP32[$1526>>2]|0; - $1528 = (_i64Subtract(64,0,($1524|0),($1527|0))|0); - $1529 = tempRet0; - $1530 = (_bitshift64Shl(-1,-1,($1528|0))|0); - $1531 = tempRet0; - $1532 = $uA; - $1533 = $1532; - $1534 = HEAP32[$1533>>2]|0; - $1535 = (($1532) + 4)|0; - $1536 = $1535; - $1537 = HEAP32[$1536>>2]|0; - $1538 = $1534 | $1530; - $1539 = $1537 | $1531; - $1540 = $uA; - $1541 = $1540; - HEAP32[$1541>>2] = $1538; - $1542 = (($1540) + 4)|0; - $1543 = $1542; - HEAP32[$1543>>2] = $1539; - } - } - ;HEAP32[$iA4+0>>2]=HEAP32[$uA+0>>2]|0;HEAP32[$iA4+4>>2]=HEAP32[$uA+4>>2]|0; - } - } - } while(0); - $1544 = $iA4; - $1545 = $1544; - $1546 = HEAP32[$1545>>2]|0; - $1547 = (($1544) + 4)|0; - $1548 = $1547; - $1549 = HEAP32[$1548>>2]|0; - $1550 = HEAP32[$pOut>>2]|0; - $1551 = (($1550) + 16|0); - $1552 = $1551; - $1553 = $1552; - HEAP32[$1553>>2] = $1546; - $1554 = (($1552) + 4)|0; - $1555 = $1554; - HEAP32[$1555>>2] = $1549; - $1556 = HEAP32[$pOut>>2]|0; - $1557 = (($1556) + 28|0); - $1558 = HEAP16[$1557>>1]|0; - $1559 = $1558&65535; - $1560 = $1559 & -16896; - $1561 = $1560 | 4; - $1562 = $1561&65535; - $1563 = HEAP32[$pOut>>2]|0; - $1564 = (($1563) + 28|0); - HEAP16[$1564>>1] = $1562; - break; - } - case 37: { - $1565 = HEAP32[$pOp>>2]|0; - $1566 = (($1565) + 4|0); - $1567 = HEAP32[$1566>>2]|0; - $1568 = HEAP32[$aMem>>2]|0; - $1569 = (($1568) + (($1567*40)|0)|0); - HEAP32[$pIn1>>2] = $1569; - $1570 = HEAP32[$pIn1>>2]|0; - (_sqlite3VdbeMemIntegerify($1570)|0); - $1571 = HEAP32[$pOp>>2]|0; - $1572 = (($1571) + 8|0); - $1573 = HEAP32[$1572>>2]|0; - $1574 = ($1573|0)<(0); - $1575 = $1574 << 31 >> 31; - $1576 = HEAP32[$pIn1>>2]|0; - $1577 = (($1576) + 16|0); - $1578 = $1577; - $1579 = $1578; - $1580 = HEAP32[$1579>>2]|0; - $1581 = (($1578) + 4)|0; - $1582 = $1581; - $1583 = HEAP32[$1582>>2]|0; - $1584 = (_i64Add(($1580|0),($1583|0),($1573|0),($1575|0))|0); - $1585 = tempRet0; - $1586 = $1577; - $1587 = $1586; - HEAP32[$1587>>2] = $1584; - $1588 = (($1586) + 4)|0; - $1589 = $1588; - HEAP32[$1589>>2] = $1585; - break; - } - case 46: { - $2217 = HEAP32[$pOp>>2]|0; - $2218 = (($2217) + 8|0); - $2219 = HEAP32[$2218>>2]|0; - HEAP32[$p210>>2] = $2219; - $2220 = HEAP32[$pOp>>2]|0; - $2221 = (($2220) + 12|0); - $2222 = HEAP32[$2221>>2]|0; - $2223 = HEAP32[$aMem>>2]|0; - $2224 = (($2223) + (($2222*40)|0)|0); - HEAP32[$pDest>>2] = $2224; - $2225 = HEAP32[$pOp>>2]|0; - $2226 = (($2225) + 4|0); - $2227 = HEAP32[$2226>>2]|0; - $2228 = HEAP32[$0>>2]|0; - $2229 = (($2228) + 56|0); - $2230 = HEAP32[$2229>>2]|0; - $2231 = (($2230) + ($2227<<2)|0); - $2232 = HEAP32[$2231>>2]|0; - HEAP32[$pC>>2] = $2232; - $2233 = HEAP32[$pC>>2]|0; - $2234 = (($2233) + 88|0); - HEAP32[$aType>>2] = $2234; - $2235 = HEAP32[$aType>>2]|0; - $2236 = HEAP32[$pC>>2]|0; - $2237 = (($2236) + 20|0); - $2238 = HEAP16[$2237>>1]|0; - $2239 = $2238 << 16 >> 16; - $2240 = (($2235) + ($2239<<2)|0); - HEAP32[$aOffset>>2] = $2240; - $2241 = HEAP32[$pC>>2]|0; - $2242 = HEAP32[$2241>>2]|0; - HEAP32[$pCrsr>>2] = $2242; - $2243 = HEAP32[$pC>>2]|0; - $2244 = (_sqlite3VdbeCursorMoveto($2243)|0); - HEAP32[$rc>>2] = $2244; - $2245 = HEAP32[$rc>>2]|0; - $2246 = ($2245|0)!=(0); - if ($2246) { - break L11; - } - $2247 = HEAP32[$pC>>2]|0; - $2248 = (($2247) + 68|0); - $2249 = HEAP32[$2248>>2]|0; - $2250 = HEAP32[$0>>2]|0; - $2251 = (($2250) + 72|0); - $2252 = HEAP32[$2251>>2]|0; - $2253 = ($2249|0)!=($2252|0); - if ($2253) { - label = 276; - } else { - $2254 = HEAP32[$pOp>>2]|0; - $2255 = (($2254) + 3|0); - $2256 = HEAP8[$2255>>0]|0; - $2257 = $2256&255; - $2258 = $2257 & 32; - $2259 = ($2258|0)!=(0); - if ($2259) { - label = 276; - } else { - label = 295; - } - } - L310: do { - if ((label|0) == 276) { - label = 0; - $2260 = HEAP32[$pC>>2]|0; - $2261 = (($2260) + 25|0); - $2262 = HEAP8[$2261>>0]|0; - $2263 = ($2262<<24>>24)!=(0); - do { - if ($2263) { - $2264 = HEAP32[$pCrsr>>2]|0; - $2265 = ($2264|0)==(0|0); - if ($2265) { - $2266 = HEAP32[$pC>>2]|0; - $2267 = (($2266) + 16|0); - $2268 = HEAP32[$2267>>2]|0; - $2269 = HEAP32[$aMem>>2]|0; - $2270 = (($2269) + (($2268*40)|0)|0); - HEAP32[$pReg>>2] = $2270; - $2271 = HEAP32[$pReg>>2]|0; - $2272 = (($2271) + 24|0); - $2273 = HEAP32[$2272>>2]|0; - HEAP32[$avail>>2] = $2273; - $2274 = HEAP32[$pC>>2]|0; - $2275 = (($2274) + 76|0); - HEAP32[$2275>>2] = $2273; - $2276 = HEAP32[$pC>>2]|0; - $2277 = (($2276) + 72|0); - HEAP32[$2277>>2] = $2273; - $2278 = HEAP32[$pReg>>2]|0; - $2279 = (($2278) + 4|0); - $2280 = HEAP32[$2279>>2]|0; - $2281 = HEAP32[$pC>>2]|0; - $2282 = (($2281) + 84|0); - HEAP32[$2282>>2] = $2280; - break; - } else { - $2283 = HEAP32[$pDest>>2]|0; - $2284 = (($2283) + 28|0); - $2285 = HEAP16[$2284>>1]|0; - $2286 = $2285&65535; - $2287 = $2286 & -16896; - $2288 = $2287 | 1; - $2289 = $2288&65535; - $2290 = HEAP32[$pDest>>2]|0; - $2291 = (($2290) + 28|0); - HEAP16[$2291>>1] = $2289; - break L310; - } - } else { - $2292 = HEAP32[$pC>>2]|0; - $2293 = (($2292) + 28|0); - $2294 = HEAP8[$2293>>0]|0; - $2295 = ($2294&255) >>> 2; - $2296 = $2295 & 1; - $2297 = $2296&255; - $2298 = ($2297|0)==(0); - $2299 = HEAP32[$pCrsr>>2]|0; - if ($2298) { - (_sqlite3BtreeKeySize($2299,$payloadSize64)|0); - $2300 = HEAP32[$pCrsr>>2]|0; - $2301 = (_sqlite3BtreeKeyFetch($2300,$avail)|0); - $2302 = HEAP32[$pC>>2]|0; - $2303 = (($2302) + 84|0); - HEAP32[$2303>>2] = $2301; - $2304 = $payloadSize64; - $2305 = $2304; - $2306 = HEAP32[$2305>>2]|0; - $2307 = (($2304) + 4)|0; - $2308 = $2307; - $2309 = HEAP32[$2308>>2]|0; - $2310 = HEAP32[$pC>>2]|0; - $2311 = (($2310) + 72|0); - HEAP32[$2311>>2] = $2306; - } else { - $2312 = HEAP32[$pC>>2]|0; - $2313 = (($2312) + 72|0); - (_sqlite3BtreeDataSize($2299,$2313)|0); - $2314 = HEAP32[$pCrsr>>2]|0; - $2315 = (_sqlite3BtreeDataFetch($2314,$avail)|0); - $2316 = HEAP32[$pC>>2]|0; - $2317 = (($2316) + 84|0); - HEAP32[$2317>>2] = $2315; - } - $2318 = HEAP32[$pC>>2]|0; - $2319 = (($2318) + 72|0); - $2320 = HEAP32[$2319>>2]|0; - $2321 = HEAP32[$avail>>2]|0; - $2322 = ($2320>>>0)<=($2321>>>0); - if ($2322) { - $2323 = HEAP32[$pC>>2]|0; - $2324 = (($2323) + 72|0); - $2325 = HEAP32[$2324>>2]|0; - $2326 = HEAP32[$pC>>2]|0; - $2327 = (($2326) + 76|0); - HEAP32[$2327>>2] = $2325; - } else { - $2328 = HEAP32[$avail>>2]|0; - $2329 = HEAP32[$pC>>2]|0; - $2330 = (($2329) + 76|0); - HEAP32[$2330>>2] = $2328; - } - $2331 = HEAP32[$pC>>2]|0; - $2332 = (($2331) + 72|0); - $2333 = HEAP32[$2332>>2]|0; - $2334 = HEAP32[$db>>2]|0; - $2335 = (($2334) + 88|0); - $2336 = HEAP32[$2335>>2]|0; - $2337 = ($2333>>>0)>($2336>>>0); - if ($2337) { - label = 899; - break L11; - } - } - } while(0); - $2338 = HEAP32[$0>>2]|0; - $2339 = (($2338) + 72|0); - $2340 = HEAP32[$2339>>2]|0; - $2341 = HEAP32[$pC>>2]|0; - $2342 = (($2341) + 68|0); - HEAP32[$2342>>2] = $2340; - $2343 = HEAP32[$pC>>2]|0; - $2344 = (($2343) + 84|0); - $2345 = HEAP32[$2344>>2]|0; - $2346 = HEAP8[$2345>>0]|0; - $2347 = $2346&255; - $2348 = ($2347|0)<(128); - $2349 = HEAP32[$pC>>2]|0; - $2350 = (($2349) + 84|0); - $2351 = HEAP32[$2350>>2]|0; - if ($2348) { - $2352 = HEAP8[$2351>>0]|0; - $2353 = $2352&255; - HEAP32[$offset>>2] = $2353; - $2357 = 1; - } else { - $2354 = (_sqlite3GetVarint32($2351,$offset)|0); - $2355 = $2354&255; - $2357 = $2355; - } - $2356 = $2357&255; - $2358 = $2356&255; - $2359 = HEAP32[$pC>>2]|0; - $2360 = (($2359) + 80|0); - HEAP32[$2360>>2] = $2358; - $2361 = HEAP32[$pC>>2]|0; - $2362 = (($2361) + 22|0); - HEAP16[$2362>>1] = 0; - $2363 = HEAP32[$offset>>2]|0; - $2364 = HEAP32[$aOffset>>2]|0; - HEAP32[$2364>>2] = $2363; - $2365 = HEAP32[$avail>>2]|0; - $2366 = HEAP32[$offset>>2]|0; - $2367 = ($2365>>>0)<($2366>>>0); - if ($2367) { - $2368 = HEAP32[$pC>>2]|0; - $2369 = (($2368) + 84|0); - HEAP32[$2369>>2] = 0; - $2370 = HEAP32[$pC>>2]|0; - $2371 = (($2370) + 76|0); - HEAP32[$2371>>2] = 0; - } - $2372 = HEAP32[$offset>>2]|0; - $2373 = ($2372>>>0)>(98307); - if (!($2373)) { - $2374 = HEAP32[$offset>>2]|0; - $2375 = HEAP32[$pC>>2]|0; - $2376 = (($2375) + 72|0); - $2377 = HEAP32[$2376>>2]|0; - $2378 = ($2374>>>0)>($2377>>>0); - if (!($2378)) { - label = 295; - break; - } - } - $2379 = (_sqlite3CorruptError(69894)|0); - HEAP32[$rc>>2] = $2379; - break L21; - } - } while(0); - do { - if ((label|0) == 295) { - label = 0; - $2380 = HEAP32[$pC>>2]|0; - $2381 = (($2380) + 22|0); - $2382 = HEAP16[$2381>>1]|0; - $2383 = $2382&65535; - $2384 = HEAP32[$p210>>2]|0; - $2385 = ($2383|0)<=($2384|0); - if ($2385) { - $2386 = HEAP32[$pC>>2]|0; - $2387 = (($2386) + 80|0); - $2388 = HEAP32[$2387>>2]|0; - $2389 = HEAP32[$aOffset>>2]|0; - $2390 = HEAP32[$2389>>2]|0; - $2391 = ($2388>>>0)<($2390>>>0); - L341: do { - if ($2391) { - $2392 = HEAP32[$pC>>2]|0; - $2393 = (($2392) + 84|0); - $2394 = HEAP32[$2393>>2]|0; - $2395 = ($2394|0)==(0|0); - if ($2395) { - dest=$sMem+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $2396 = HEAP32[$pCrsr>>2]|0; - $2397 = HEAP32[$aOffset>>2]|0; - $2398 = HEAP32[$2397>>2]|0; - $2399 = HEAP32[$pC>>2]|0; - $2400 = (($2399) + 28|0); - $2401 = HEAP8[$2400>>0]|0; - $2402 = ($2401&255) >>> 2; - $2403 = $2402 & 1; - $2404 = $2403&255; - $2405 = ($2404|0)!=(0); - $2406 = $2405 ^ 1; - $2407 = $2406&1; - $2408 = (_sqlite3VdbeMemFromBtree($2396,0,$2398,$2407,$sMem)|0); - HEAP32[$rc>>2] = $2408; - $2409 = HEAP32[$rc>>2]|0; - $2410 = ($2409|0)!=(0); - if ($2410) { - break L21; - } - $2411 = (($sMem) + 4|0); - $2412 = HEAP32[$2411>>2]|0; - HEAP32[$zData>>2] = $2412; - } else { - $2413 = HEAP32[$pC>>2]|0; - $2414 = (($2413) + 84|0); - $2415 = HEAP32[$2414>>2]|0; - HEAP32[$zData>>2] = $2415; - } - $2416 = HEAP32[$pC>>2]|0; - $2417 = (($2416) + 22|0); - $2418 = HEAP16[$2417>>1]|0; - $2419 = $2418&65535; - HEAP32[$i11>>2] = $2419; - $2420 = HEAP32[$i11>>2]|0; - $2421 = HEAP32[$aOffset>>2]|0; - $2422 = (($2421) + ($2420<<2)|0); - $2423 = HEAP32[$2422>>2]|0; - HEAP32[$offset>>2] = $2423; - $2424 = HEAP32[$zData>>2]|0; - $2425 = HEAP32[$pC>>2]|0; - $2426 = (($2425) + 80|0); - $2427 = HEAP32[$2426>>2]|0; - $2428 = (($2424) + ($2427)|0); - HEAP32[$zHdr>>2] = $2428; - $2429 = HEAP32[$zData>>2]|0; - $2430 = HEAP32[$aOffset>>2]|0; - $2431 = HEAP32[$2430>>2]|0; - $2432 = (($2429) + ($2431)|0); - HEAP32[$zEndHdr>>2] = $2432; - while(1) { - $2433 = HEAP32[$zHdr>>2]|0; - $2434 = HEAP8[$2433>>0]|0; - $2435 = $2434&255; - $2436 = ($2435|0)<(128); - $2437 = HEAP32[$zHdr>>2]|0; - if ($2436) { - $2438 = HEAP8[$2437>>0]|0; - $2439 = $2438&255; - HEAP32[$t>>2] = $2439; - $2440 = HEAP32[$zHdr>>2]|0; - $2441 = (($2440) + 1|0); - HEAP32[$zHdr>>2] = $2441; - } else { - $2442 = (_sqlite3GetVarint32($2437,$t)|0); - $2443 = $2442&255; - $2444 = HEAP32[$zHdr>>2]|0; - $2445 = (($2444) + ($2443)|0); - HEAP32[$zHdr>>2] = $2445; - } - $2446 = HEAP32[$t>>2]|0; - $2447 = HEAP32[$i11>>2]|0; - $2448 = HEAP32[$aType>>2]|0; - $2449 = (($2448) + ($2447<<2)|0); - HEAP32[$2449>>2] = $2446; - $2450 = HEAP32[$t>>2]|0; - $2451 = (_sqlite3VdbeSerialTypeLen($2450)|0); - HEAP32[$szField>>2] = $2451; - $2452 = HEAP32[$szField>>2]|0; - $2453 = HEAP32[$offset>>2]|0; - $2454 = (($2453) + ($2452))|0; - HEAP32[$offset>>2] = $2454; - $2455 = HEAP32[$offset>>2]|0; - $2456 = HEAP32[$szField>>2]|0; - $2457 = ($2455>>>0)<($2456>>>0); - if ($2457) { - label = 306; - break; - } - $2460 = HEAP32[$i11>>2]|0; - $2461 = (($2460) + 1)|0; - HEAP32[$i11>>2] = $2461; - $2462 = HEAP32[$offset>>2]|0; - $2463 = HEAP32[$i11>>2]|0; - $2464 = HEAP32[$aOffset>>2]|0; - $2465 = (($2464) + ($2463<<2)|0); - HEAP32[$2465>>2] = $2462; - $2466 = HEAP32[$i11>>2]|0; - $2467 = HEAP32[$p210>>2]|0; - $2468 = ($2466|0)<=($2467|0); - if (!($2468)) { - break; - } - $2469 = HEAP32[$zHdr>>2]|0; - $2470 = HEAP32[$zEndHdr>>2]|0; - $2471 = ($2469>>>0)<($2470>>>0); - if (!($2471)) { - break; - } - } - if ((label|0) == 306) { - label = 0; - $2458 = HEAP32[$zEndHdr>>2]|0; - $2459 = (($2458) + 1|0); - HEAP32[$zHdr>>2] = $2459; - } - $2472 = HEAP32[$i11>>2]|0; - $2473 = $2472&65535; - $2474 = HEAP32[$pC>>2]|0; - $2475 = (($2474) + 22|0); - HEAP16[$2475>>1] = $2473; - $2476 = HEAP32[$zHdr>>2]|0; - $2477 = HEAP32[$zData>>2]|0; - $2478 = $2476; - $2479 = $2477; - $2480 = (($2478) - ($2479))|0; - $2481 = HEAP32[$pC>>2]|0; - $2482 = (($2481) + 80|0); - HEAP32[$2482>>2] = $2480; - $2483 = HEAP32[$pC>>2]|0; - $2484 = (($2483) + 84|0); - $2485 = HEAP32[$2484>>2]|0; - $2486 = ($2485|0)==(0|0); - if ($2486) { - _sqlite3VdbeMemRelease($sMem); - $2487 = (($sMem) + 28|0); - HEAP16[$2487>>1] = 1; - } - $2488 = HEAP32[$zHdr>>2]|0; - $2489 = HEAP32[$zEndHdr>>2]|0; - $2490 = ($2488>>>0)>($2489>>>0); - do { - if (!($2490)) { - $2491 = HEAP32[$offset>>2]|0; - $2492 = HEAP32[$pC>>2]|0; - $2493 = (($2492) + 72|0); - $2494 = HEAP32[$2493>>2]|0; - $2495 = ($2491>>>0)>($2494>>>0); - if ($2495) { - break; - } - $2496 = HEAP32[$zHdr>>2]|0; - $2497 = HEAP32[$zEndHdr>>2]|0; - $2498 = ($2496|0)==($2497|0); - if (!($2498)) { - break L341; - } - $2499 = HEAP32[$offset>>2]|0; - $2500 = HEAP32[$pC>>2]|0; - $2501 = (($2500) + 72|0); - $2502 = HEAP32[$2501>>2]|0; - $2503 = ($2499|0)!=($2502|0); - if (!($2503)) { - break L341; - } - } - } while(0); - $2504 = (_sqlite3CorruptError(69960)|0); - HEAP32[$rc>>2] = $2504; - break L21; - } - } while(0); - $2505 = HEAP32[$pC>>2]|0; - $2506 = (($2505) + 22|0); - $2507 = HEAP16[$2506>>1]|0; - $2508 = $2507&65535; - $2509 = HEAP32[$p210>>2]|0; - $2510 = ($2508|0)<=($2509|0); - if ($2510) { - $2511 = HEAP32[$pOp>>2]|0; - $2512 = (($2511) + 1|0); - $2513 = HEAP8[$2512>>0]|0; - $2514 = $2513 << 24 >> 24; - $2515 = ($2514|0)==(-8); - $2516 = HEAP32[$pDest>>2]|0; - if ($2515) { - $2517 = HEAP32[$pOp>>2]|0; - $2518 = (($2517) + 16|0); - $2519 = HEAP32[$2518>>2]|0; - _sqlite3VdbeMemShallowCopy($2516,$2519,2048); - break; - } else { - $2520 = (($2516) + 28|0); - $2521 = HEAP16[$2520>>1]|0; - $2522 = $2521&65535; - $2523 = $2522 & -16896; - $2524 = $2523 | 1; - $2525 = $2524&65535; - $2526 = HEAP32[$pDest>>2]|0; - $2527 = (($2526) + 28|0); - HEAP16[$2527>>1] = $2525; - break; - } - } - } - $2528 = HEAP32[$pC>>2]|0; - $2529 = (($2528) + 76|0); - $2530 = HEAP32[$2529>>2]|0; - $2531 = HEAP32[$p210>>2]|0; - $2532 = (($2531) + 1)|0; - $2533 = HEAP32[$aOffset>>2]|0; - $2534 = (($2533) + ($2532<<2)|0); - $2535 = HEAP32[$2534>>2]|0; - $2536 = ($2530>>>0)>=($2535>>>0); - if ($2536) { - $2537 = HEAP32[$pDest>>2]|0; - $2538 = (($2537) + 28|0); - $2539 = HEAP16[$2538>>1]|0; - $2540 = $2539&65535; - $2541 = $2540 & 9312; - $2542 = ($2541|0)!=(0); - if ($2542) { - $2543 = HEAP32[$pDest>>2]|0; - _sqlite3VdbeMemReleaseExternal($2543); - } - $2544 = HEAP32[$pC>>2]|0; - $2545 = (($2544) + 84|0); - $2546 = HEAP32[$2545>>2]|0; - $2547 = HEAP32[$p210>>2]|0; - $2548 = HEAP32[$aOffset>>2]|0; - $2549 = (($2548) + ($2547<<2)|0); - $2550 = HEAP32[$2549>>2]|0; - $2551 = (($2546) + ($2550)|0); - $2552 = HEAP32[$p210>>2]|0; - $2553 = HEAP32[$aType>>2]|0; - $2554 = (($2553) + ($2552<<2)|0); - $2555 = HEAP32[$2554>>2]|0; - $2556 = HEAP32[$pDest>>2]|0; - (_sqlite3VdbeSerialGet($2551,$2555,$2556)|0); - } else { - $2557 = HEAP32[$p210>>2]|0; - $2558 = HEAP32[$aType>>2]|0; - $2559 = (($2558) + ($2557<<2)|0); - $2560 = HEAP32[$2559>>2]|0; - HEAP32[$t>>2] = $2560; - $2561 = HEAP32[$pOp>>2]|0; - $2562 = (($2561) + 3|0); - $2563 = HEAP8[$2562>>0]|0; - $2564 = $2563&255; - $2565 = $2564 & 192; - $2566 = ($2565|0)!=(0); - do { - if ($2566) { - $2567 = HEAP32[$t>>2]|0; - $2568 = ($2567>>>0)>=(12); - if ($2568) { - $2569 = HEAP32[$t>>2]|0; - $2570 = $2569 & 1; - $2571 = ($2570|0)==(0); - if ($2571) { - label = 329; - break; - } - } - $2572 = HEAP32[$pOp>>2]|0; - $2573 = (($2572) + 3|0); - $2574 = HEAP8[$2573>>0]|0; - $2575 = $2574&255; - $2576 = $2575 & 128; - $2577 = ($2576|0)!=(0); - if ($2577) { - label = 329; - } else { - label = 328; - } - } else { - label = 328; - } - } while(0); - if ((label|0) == 328) { - label = 0; - $2578 = HEAP32[$t>>2]|0; - $2579 = (_sqlite3VdbeSerialTypeLen($2578)|0); - HEAP32[$len>>2] = $2579; - $2580 = ($2579|0)==(0); - if ($2580) { - label = 329; - } else { - dest=$sMem+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $2585 = HEAP32[$pDest>>2]|0; - _sqlite3VdbeMemMove($sMem,$2585); - $2586 = HEAP32[$pCrsr>>2]|0; - $2587 = HEAP32[$p210>>2]|0; - $2588 = HEAP32[$aOffset>>2]|0; - $2589 = (($2588) + ($2587<<2)|0); - $2590 = HEAP32[$2589>>2]|0; - $2591 = HEAP32[$len>>2]|0; - $2592 = HEAP32[$pC>>2]|0; - $2593 = (($2592) + 28|0); - $2594 = HEAP8[$2593>>0]|0; - $2595 = ($2594&255) >>> 2; - $2596 = $2595 & 1; - $2597 = $2596&255; - $2598 = ($2597|0)!=(0); - $2599 = $2598 ^ 1; - $2600 = $2599&1; - $2601 = (_sqlite3VdbeMemFromBtree($2586,$2590,$2591,$2600,$sMem)|0); - HEAP32[$rc>>2] = $2601; - $2602 = HEAP32[$rc>>2]|0; - $2603 = ($2602|0)!=(0); - if ($2603) { - break L21; - } - $2604 = (($sMem) + 4|0); - $2605 = HEAP32[$2604>>2]|0; - HEAP32[$zData>>2] = $2605; - } - } - if ((label|0) == 329) { - label = 0; - $2581 = HEAP32[$t>>2]|0; - $2582 = ($2581>>>0)<=(13); - if ($2582) { - $2583 = $payloadSize64; - } else { - $2583 = 0; - } - HEAP32[$zData>>2] = $2583; - $2584 = (($sMem) + 36|0); - HEAP32[$2584>>2] = 0; - } - $2606 = HEAP32[$zData>>2]|0; - $2607 = HEAP32[$t>>2]|0; - $2608 = HEAP32[$pDest>>2]|0; - (_sqlite3VdbeSerialGet($2606,$2607,$2608)|0); - $2609 = (($sMem) + 36|0); - $2610 = HEAP32[$2609>>2]|0; - $2611 = ($2610|0)!=(0|0); - if ($2611) { - $2612 = HEAP32[$pDest>>2]|0; - $2613 = (($2612) + 28|0); - $2614 = HEAP16[$2613>>1]|0; - $2615 = $2614&65535; - $2616 = $2615 & -6145; - $2617 = $2616&65535; - HEAP16[$2613>>1] = $2617; - $2618 = HEAP32[$pDest>>2]|0; - $2619 = (($2618) + 28|0); - $2620 = HEAP16[$2619>>1]|0; - $2621 = $2620&65535; - $2622 = $2621 | 512; - $2623 = $2622&65535; - HEAP16[$2619>>1] = $2623; - $2624 = (($sMem) + 4|0); - $2625 = HEAP32[$2624>>2]|0; - $2626 = HEAP32[$pDest>>2]|0; - $2627 = (($2626) + 4|0); - HEAP32[$2627>>2] = $2625; - $2628 = (($sMem) + 36|0); - $2629 = HEAP32[$2628>>2]|0; - $2630 = HEAP32[$pDest>>2]|0; - $2631 = (($2630) + 36|0); - HEAP32[$2631>>2] = $2629; - } - } - $2632 = HEAP8[$encoding>>0]|0; - $2633 = HEAP32[$pDest>>2]|0; - $2634 = (($2633) + 30|0); - HEAP8[$2634>>0] = $2632; - } - } while(0); - $2635 = HEAP32[$pDest>>2]|0; - $2636 = (($2635) + 28|0); - $2637 = HEAP16[$2636>>1]|0; - $2638 = $2637&65535; - $2639 = $2638 & 4096; - $2640 = ($2639|0)!=(0); - if ($2640) { - $2641 = HEAP32[$pDest>>2]|0; - $2642 = (_sqlite3VdbeMemMakeWriteable($2641)|0); - $2643 = ($2642|0)!=(0); - if ($2643) { - label = 900; - break L1; - } - } - break; - } - case 47: { - $2644 = HEAP32[$pOp>>2]|0; - $2645 = (($2644) + 16|0); - $2646 = HEAP32[$2645>>2]|0; - HEAP32[$zAffinity>>2] = $2646; - $2647 = HEAP32[$pOp>>2]|0; - $2648 = (($2647) + 4|0); - $2649 = HEAP32[$2648>>2]|0; - $2650 = HEAP32[$aMem>>2]|0; - $2651 = (($2650) + (($2649*40)|0)|0); - HEAP32[$pIn1>>2] = $2651; - while(1) { - $2652 = HEAP32[$zAffinity>>2]|0; - $2653 = (($2652) + 1|0); - HEAP32[$zAffinity>>2] = $2653; - $2654 = HEAP8[$2652>>0]|0; - HEAP8[$cAff>>0] = $2654; - $2655 = $2654 << 24 >> 24; - $2656 = ($2655|0)!=(0); - if (!($2656)) { - break L21; - } - $2657 = HEAP32[$pIn1>>2]|0; - $2658 = HEAP8[$cAff>>0]|0; - $2659 = HEAP8[$encoding>>0]|0; - _applyAffinity($2657,$2658,$2659); - $2660 = HEAP32[$pIn1>>2]|0; - $2661 = (($2660) + 40|0); - HEAP32[$pIn1>>2] = $2661; - } - break; - } - case 48: { - $2662 = $nData; - $2663 = $2662; - HEAP32[$2663>>2] = 0; - $2664 = (($2662) + 4)|0; - $2665 = $2664; - HEAP32[$2665>>2] = 0; - HEAP32[$nHdr>>2] = 0; - HEAP32[$nZero>>2] = 0; - $2666 = HEAP32[$pOp>>2]|0; - $2667 = (($2666) + 4|0); - $2668 = HEAP32[$2667>>2]|0; - HEAP32[$nField>>2] = $2668; - $2669 = HEAP32[$pOp>>2]|0; - $2670 = (($2669) + 16|0); - $2671 = HEAP32[$2670>>2]|0; - HEAP32[$zAffinity13>>2] = $2671; - $2672 = HEAP32[$nField>>2]|0; - $2673 = HEAP32[$aMem>>2]|0; - $2674 = (($2673) + (($2672*40)|0)|0); - HEAP32[$pData0>>2] = $2674; - $2675 = HEAP32[$pOp>>2]|0; - $2676 = (($2675) + 8|0); - $2677 = HEAP32[$2676>>2]|0; - HEAP32[$nField>>2] = $2677; - $2678 = HEAP32[$nField>>2]|0; - $2679 = (($2678) - 1)|0; - $2680 = HEAP32[$pData0>>2]|0; - $2681 = (($2680) + (($2679*40)|0)|0); - HEAP32[$pLast>>2] = $2681; - $2682 = HEAP32[$0>>2]|0; - $2683 = (($2682) + 87|0); - $2684 = HEAP8[$2683>>0]|0; - $2685 = $2684&255; - HEAP32[$file_format>>2] = $2685; - $2686 = HEAP32[$pOp>>2]|0; - $2687 = (($2686) + 12|0); - $2688 = HEAP32[$2687>>2]|0; - $2689 = HEAP32[$aMem>>2]|0; - $2690 = (($2689) + (($2688*40)|0)|0); - HEAP32[$pOut>>2] = $2690; - $2691 = HEAP32[$zAffinity13>>2]|0; - $2692 = ($2691|0)!=(0|0); - if ($2692) { - $2693 = HEAP32[$pData0>>2]|0; - HEAP32[$pRec>>2] = $2693; - while(1) { - $2694 = HEAP32[$pRec>>2]|0; - $2695 = (($2694) + 40|0); - HEAP32[$pRec>>2] = $2695; - $2696 = HEAP32[$zAffinity13>>2]|0; - $2697 = (($2696) + 1|0); - HEAP32[$zAffinity13>>2] = $2697; - $2698 = HEAP8[$2696>>0]|0; - $2699 = HEAP8[$encoding>>0]|0; - _applyAffinity($2694,$2698,$2699); - $2700 = HEAP32[$zAffinity13>>2]|0; - $2701 = HEAP8[$2700>>0]|0; - $2702 = ($2701<<24>>24)!=(0); - if (!($2702)) { - break; - } - } - } - $2703 = HEAP32[$pLast>>2]|0; - HEAP32[$pRec>>2] = $2703; - while(1) { - $2704 = HEAP32[$pRec>>2]|0; - $2705 = HEAP32[$file_format>>2]|0; - $2706 = (_sqlite3VdbeSerialType($2704,$2705)|0); - HEAP32[$serial_type>>2] = $2706; - $2707 = HEAP32[$serial_type>>2]|0; - $2708 = (_sqlite3VdbeSerialTypeLen($2707)|0); - HEAP32[$len15>>2] = $2708; - $2709 = HEAP32[$pRec>>2]|0; - $2710 = (($2709) + 28|0); - $2711 = HEAP16[$2710>>1]|0; - $2712 = $2711&65535; - $2713 = $2712 & 16384; - $2714 = ($2713|0)!=(0); - do { - if ($2714) { - $2715 = $nData; - $2716 = $2715; - $2717 = HEAP32[$2716>>2]|0; - $2718 = (($2715) + 4)|0; - $2719 = $2718; - $2720 = HEAP32[$2719>>2]|0; - $2721 = ($2717|0)!=(0); - $2722 = ($2720|0)!=(0); - $2723 = $2721 | $2722; - $2724 = HEAP32[$pRec>>2]|0; - if ($2723) { - (_sqlite3VdbeMemExpandBlob($2724)|0); - break; - } else { - $2725 = (($2724) + 16|0); - $2726 = HEAP32[$2725>>2]|0; - $2727 = HEAP32[$nZero>>2]|0; - $2728 = (($2727) + ($2726))|0; - HEAP32[$nZero>>2] = $2728; - $2729 = HEAP32[$pRec>>2]|0; - $2730 = (($2729) + 16|0); - $2731 = HEAP32[$2730>>2]|0; - $2732 = HEAP32[$len15>>2]|0; - $2733 = (($2732) - ($2731))|0; - HEAP32[$len15>>2] = $2733; - break; - } - } - } while(0); - $2734 = HEAP32[$len15>>2]|0; - $2735 = ($2734|0)<(0); - $2736 = $2735 << 31 >> 31; - $2737 = $nData; - $2738 = $2737; - $2739 = HEAP32[$2738>>2]|0; - $2740 = (($2737) + 4)|0; - $2741 = $2740; - $2742 = HEAP32[$2741>>2]|0; - $2743 = (_i64Add(($2739|0),($2742|0),($2734|0),($2736|0))|0); - $2744 = tempRet0; - $2745 = $nData; - $2746 = $2745; - HEAP32[$2746>>2] = $2743; - $2747 = (($2745) + 4)|0; - $2748 = $2747; - HEAP32[$2748>>2] = $2744; - $2749 = HEAP32[$serial_type>>2]|0; - $2750 = ($2749>>>0)<=(127); - if ($2750) { - $2755 = 1; - } else { - $2751 = HEAP32[$serial_type>>2]|0; - $2752 = (_sqlite3VarintLen($2751,0)|0); - $2755 = $2752; - } - $2753 = HEAP32[$nHdr>>2]|0; - $2754 = (($2753) + ($2755))|0; - HEAP32[$nHdr>>2] = $2754; - $2756 = HEAP32[$pRec>>2]|0; - $2757 = (($2756) + -40|0); - HEAP32[$pRec>>2] = $2757; - $2758 = HEAP32[$pData0>>2]|0; - $2759 = ($2757>>>0)>=($2758>>>0); - if (!($2759)) { - break; - } - } - $2760 = HEAP32[$nHdr>>2]|0; - $2761 = ($2760|0)<=(126); - $2762 = HEAP32[$nHdr>>2]|0; - if ($2761) { - $2763 = (($2762) + 1)|0; - HEAP32[$nHdr>>2] = $2763; - } else { - $2764 = ($2762|0)<(0); - $2765 = $2764 << 31 >> 31; - $2766 = (_sqlite3VarintLen($2762,$2765)|0); - HEAP32[$nVarint>>2] = $2766; - $2767 = HEAP32[$nVarint>>2]|0; - $2768 = HEAP32[$nHdr>>2]|0; - $2769 = (($2768) + ($2767))|0; - HEAP32[$nHdr>>2] = $2769; - $2770 = HEAP32[$nVarint>>2]|0; - $2771 = HEAP32[$nHdr>>2]|0; - $2772 = ($2771|0)<(0); - $2773 = $2772 << 31 >> 31; - $2774 = (_sqlite3VarintLen($2771,$2773)|0); - $2775 = ($2770|0)<($2774|0); - if ($2775) { - $2776 = HEAP32[$nHdr>>2]|0; - $2777 = (($2776) + 1)|0; - HEAP32[$nHdr>>2] = $2777; - } - } - $2778 = HEAP32[$nHdr>>2]|0; - $2779 = ($2778|0)<(0); - $2780 = $2779 << 31 >> 31; - $2781 = $nData; - $2782 = $2781; - $2783 = HEAP32[$2782>>2]|0; - $2784 = (($2781) + 4)|0; - $2785 = $2784; - $2786 = HEAP32[$2785>>2]|0; - $2787 = (_i64Add(($2778|0),($2780|0),($2783|0),($2786|0))|0); - $2788 = tempRet0; - $2789 = $nByte12; - $2790 = $2789; - HEAP32[$2790>>2] = $2787; - $2791 = (($2789) + 4)|0; - $2792 = $2791; - HEAP32[$2792>>2] = $2788; - $2793 = $nByte12; - $2794 = $2793; - $2795 = HEAP32[$2794>>2]|0; - $2796 = (($2793) + 4)|0; - $2797 = $2796; - $2798 = HEAP32[$2797>>2]|0; - $2799 = HEAP32[$db>>2]|0; - $2800 = (($2799) + 88|0); - $2801 = HEAP32[$2800>>2]|0; - $2802 = ($2801|0)<(0); - $2803 = $2802 << 31 >> 31; - $2804 = ($2798|0)>($2803|0); - $2805 = ($2798|0)==($2803|0); - $2806 = ($2795>>>0)>($2801>>>0); - $2807 = $2805 & $2806; - $2808 = $2804 | $2807; - if ($2808) { - label = 899; - break L11; - } - $2809 = HEAP32[$pOut>>2]|0; - $2810 = $nByte12; - $2811 = $2810; - $2812 = HEAP32[$2811>>2]|0; - $2813 = (($2810) + 4)|0; - $2814 = $2813; - $2815 = HEAP32[$2814>>2]|0; - $2816 = (_sqlite3VdbeMemGrow($2809,$2812,0)|0); - $2817 = ($2816|0)!=(0); - if ($2817) { - label = 900; - break L1; - } - $2818 = HEAP32[$pOut>>2]|0; - $2819 = (($2818) + 4|0); - $2820 = HEAP32[$2819>>2]|0; - HEAP32[$zNewRecord>>2] = $2820; - $2821 = HEAP32[$nHdr>>2]|0; - $2822 = ($2821>>>0)<(128); - if ($2822) { - $2823 = HEAP32[$nHdr>>2]|0; - $2824 = $2823&255; - $2825 = HEAP32[$zNewRecord>>2]|0; - HEAP8[$2825>>0] = $2824; - $2830 = 1; - } else { - $2826 = HEAP32[$zNewRecord>>2]|0; - $2827 = HEAP32[$nHdr>>2]|0; - $2828 = (_sqlite3PutVarint32($2826,$2827)|0); - $2830 = $2828; - } - $2829 = $2830&255; - $2831 = $2829&255; - HEAP32[$i14>>2] = $2831; - $2832 = HEAP32[$nHdr>>2]|0; - HEAP32[$j>>2] = $2832; - $2833 = HEAP32[$pData0>>2]|0; - HEAP32[$pRec>>2] = $2833; - while(1) { - $2834 = HEAP32[$pRec>>2]|0; - $2835 = HEAP32[$file_format>>2]|0; - $2836 = (_sqlite3VdbeSerialType($2834,$2835)|0); - HEAP32[$serial_type>>2] = $2836; - $2837 = HEAP32[$serial_type>>2]|0; - $2838 = ($2837>>>0)<(128); - if ($2838) { - $2839 = HEAP32[$serial_type>>2]|0; - $2840 = $2839&255; - $2841 = HEAP32[$i14>>2]|0; - $2842 = HEAP32[$zNewRecord>>2]|0; - $2843 = (($2842) + ($2841)|0); - HEAP8[$2843>>0] = $2840; - $2850 = 1; - } else { - $2844 = HEAP32[$i14>>2]|0; - $2845 = HEAP32[$zNewRecord>>2]|0; - $2846 = (($2845) + ($2844)|0); - $2847 = HEAP32[$serial_type>>2]|0; - $2848 = (_sqlite3PutVarint32($2846,$2847)|0); - $2850 = $2848; - } - $2849 = $2850&255; - $2851 = $2849&255; - $2852 = HEAP32[$i14>>2]|0; - $2853 = (($2852) + ($2851))|0; - HEAP32[$i14>>2] = $2853; - $2854 = HEAP32[$j>>2]|0; - $2855 = HEAP32[$zNewRecord>>2]|0; - $2856 = (($2855) + ($2854)|0); - $2857 = HEAP32[$pRec>>2]|0; - $2858 = HEAP32[$serial_type>>2]|0; - $2859 = (_sqlite3VdbeSerialPut($2856,$2857,$2858)|0); - $2860 = HEAP32[$j>>2]|0; - $2861 = (($2860) + ($2859))|0; - HEAP32[$j>>2] = $2861; - $2862 = HEAP32[$pRec>>2]|0; - $2863 = (($2862) + 40|0); - HEAP32[$pRec>>2] = $2863; - $2864 = HEAP32[$pLast>>2]|0; - $2865 = ($2863>>>0)<=($2864>>>0); - if (!($2865)) { - break; - } - } - $2866 = $nByte12; - $2867 = $2866; - $2868 = HEAP32[$2867>>2]|0; - $2869 = (($2866) + 4)|0; - $2870 = $2869; - $2871 = HEAP32[$2870>>2]|0; - $2872 = HEAP32[$pOut>>2]|0; - $2873 = (($2872) + 24|0); - HEAP32[$2873>>2] = $2868; - $2874 = HEAP32[$pOut>>2]|0; - $2875 = (($2874) + 28|0); - HEAP16[$2875>>1] = 16; - $2876 = HEAP32[$pOut>>2]|0; - $2877 = (($2876) + 32|0); - HEAP32[$2877>>2] = 0; - $2878 = HEAP32[$nZero>>2]|0; - $2879 = ($2878|0)!=(0); - if ($2879) { - $2880 = HEAP32[$nZero>>2]|0; - $2881 = HEAP32[$pOut>>2]|0; - $2882 = (($2881) + 16|0); - HEAP32[$2882>>2] = $2880; - $2883 = HEAP32[$pOut>>2]|0; - $2884 = (($2883) + 28|0); - $2885 = HEAP16[$2884>>1]|0; - $2886 = $2885&65535; - $2887 = $2886 | 16384; - $2888 = $2887&65535; - HEAP16[$2884>>1] = $2888; - } - $2889 = HEAP32[$pOut>>2]|0; - $2890 = (($2889) + 30|0); - HEAP8[$2890>>0] = 1; - break; - } - case 49: { - $2891 = HEAP32[$pOp>>2]|0; - $2892 = (($2891) + 4|0); - $2893 = HEAP32[$2892>>2]|0; - $2894 = HEAP32[$0>>2]|0; - $2895 = (($2894) + 56|0); - $2896 = HEAP32[$2895>>2]|0; - $2897 = (($2896) + ($2893<<2)|0); - $2898 = HEAP32[$2897>>2]|0; - $2899 = HEAP32[$2898>>2]|0; - HEAP32[$pCrsr16>>2] = $2899; - $2900 = $nEntry; - $2901 = $2900; - HEAP32[$2901>>2] = 0; - $2902 = (($2900) + 4)|0; - $2903 = $2902; - HEAP32[$2903>>2] = 0; - $2904 = HEAP32[$pCrsr16>>2]|0; - $2905 = (_sqlite3BtreeCount($2904,$nEntry)|0); - HEAP32[$rc>>2] = $2905; - $2906 = $nEntry; - $2907 = $2906; - $2908 = HEAP32[$2907>>2]|0; - $2909 = (($2906) + 4)|0; - $2910 = $2909; - $2911 = HEAP32[$2910>>2]|0; - $2912 = HEAP32[$pOut>>2]|0; - $2913 = (($2912) + 16|0); - $2914 = $2913; - $2915 = $2914; - HEAP32[$2915>>2] = $2908; - $2916 = (($2914) + 4)|0; - $2917 = $2916; - HEAP32[$2917>>2] = $2911; - break; - } - case 2: { - $2918 = HEAP32[$pOp>>2]|0; - $2919 = (($2918) + 4|0); - $2920 = HEAP32[$2919>>2]|0; - HEAP32[$p117>>2] = $2920; - $2921 = HEAP32[$pOp>>2]|0; - $2922 = (($2921) + 16|0); - $2923 = HEAP32[$2922>>2]|0; - HEAP32[$zName>>2] = $2923; - $2924 = HEAP32[$p117>>2]|0; - $2925 = ($2924|0)==(0); - if ($2925) { - $2926 = HEAP32[$db>>2]|0; - $2927 = (($2926) + 148|0); - $2928 = HEAP32[$2927>>2]|0; - $2929 = ($2928|0)>(0); - if ($2929) { - $2930 = HEAP32[$0>>2]|0; - $2931 = (($2930) + 44|0); - $2932 = HEAP32[$db>>2]|0; - _sqlite3SetString($2931,$2932,31296,$vararg_buffer62); - HEAP32[$rc>>2] = 5; - break L21; - } - $2933 = HEAP32[$zName>>2]|0; - $2934 = (_sqlite3Strlen30($2933)|0); - HEAP32[$nName>>2] = $2934; - $2935 = HEAP32[$db>>2]|0; - $2936 = HEAP32[$db>>2]|0; - $2937 = (($2936) + 492|0); - $2938 = HEAP32[$2937>>2]|0; - $2939 = HEAP32[$db>>2]|0; - $2940 = (($2939) + 488|0); - $2941 = HEAP32[$2940>>2]|0; - $2942 = (($2938) + ($2941))|0; - $2943 = (_sqlite3VtabSavepoint($2935,0,$2942)|0); - HEAP32[$rc>>2] = $2943; - $2944 = HEAP32[$rc>>2]|0; - $2945 = ($2944|0)!=(0); - if ($2945) { - break L11; - } - $2946 = HEAP32[$db>>2]|0; - $2947 = HEAP32[$nName>>2]|0; - $2948 = (32 + ($2947))|0; - $2949 = (($2948) + 1)|0; - $2950 = (_sqlite3DbMallocRaw($2946,$2949)|0); - HEAP32[$pNew>>2] = $2950; - $2951 = HEAP32[$pNew>>2]|0; - $2952 = ($2951|0)!=(0|0); - if (!($2952)) { - break L21; - } - $2953 = HEAP32[$pNew>>2]|0; - $2954 = (($2953) + 32|0); - $2955 = HEAP32[$pNew>>2]|0; - HEAP32[$2955>>2] = $2954; - $2956 = HEAP32[$pNew>>2]|0; - $2957 = HEAP32[$2956>>2]|0; - $2958 = HEAP32[$zName>>2]|0; - $2959 = HEAP32[$nName>>2]|0; - $2960 = (($2959) + 1)|0; - _memcpy(($2957|0),($2958|0),($2960|0))|0; - $2961 = HEAP32[$db>>2]|0; - $2962 = (($2961) + 62|0); - $2963 = HEAP8[$2962>>0]|0; - $2964 = ($2963<<24>>24)!=(0); - $2965 = HEAP32[$db>>2]|0; - if ($2964) { - $2966 = (($2965) + 62|0); - HEAP8[$2966>>0] = 0; - $2967 = HEAP32[$db>>2]|0; - $2968 = (($2967) + 69|0); - HEAP8[$2968>>0] = 1; - } else { - $2969 = (($2965) + 488|0); - $2970 = HEAP32[$2969>>2]|0; - $2971 = (($2970) + 1)|0; - HEAP32[$2969>>2] = $2971; - } - $2972 = HEAP32[$db>>2]|0; - $2973 = (($2972) + 480|0); - $2974 = HEAP32[$2973>>2]|0; - $2975 = HEAP32[$pNew>>2]|0; - $2976 = (($2975) + 24|0); - HEAP32[$2976>>2] = $2974; - $2977 = HEAP32[$pNew>>2]|0; - $2978 = HEAP32[$db>>2]|0; - $2979 = (($2978) + 480|0); - HEAP32[$2979>>2] = $2977; - $2980 = HEAP32[$db>>2]|0; - $2981 = (($2980) + 496|0); - $2982 = $2981; - $2983 = $2982; - $2984 = HEAP32[$2983>>2]|0; - $2985 = (($2982) + 4)|0; - $2986 = $2985; - $2987 = HEAP32[$2986>>2]|0; - $2988 = HEAP32[$pNew>>2]|0; - $2989 = (($2988) + 8|0); - $2990 = $2989; - $2991 = $2990; - HEAP32[$2991>>2] = $2984; - $2992 = (($2990) + 4)|0; - $2993 = $2992; - HEAP32[$2993>>2] = $2987; - $2994 = HEAP32[$db>>2]|0; - $2995 = (($2994) + 504|0); - $2996 = $2995; - $2997 = $2996; - $2998 = HEAP32[$2997>>2]|0; - $2999 = (($2996) + 4)|0; - $3000 = $2999; - $3001 = HEAP32[$3000>>2]|0; - $3002 = HEAP32[$pNew>>2]|0; - $3003 = (($3002) + 16|0); - $3004 = $3003; - $3005 = $3004; - HEAP32[$3005>>2] = $2998; - $3006 = (($3004) + 4)|0; - $3007 = $3006; - HEAP32[$3007>>2] = $3001; - break L21; - } - HEAP32[$iSavepoint>>2] = 0; - $3008 = HEAP32[$db>>2]|0; - $3009 = (($3008) + 480|0); - $3010 = HEAP32[$3009>>2]|0; - HEAP32[$pSavepoint>>2] = $3010; - while(1) { - $3011 = HEAP32[$pSavepoint>>2]|0; - $3012 = ($3011|0)!=(0|0); - if (!($3012)) { - break; - } - $3013 = HEAP32[$pSavepoint>>2]|0; - $3014 = HEAP32[$3013>>2]|0; - $3015 = HEAP32[$zName>>2]|0; - $3016 = (_sqlite3_stricmp($3014,$3015)|0); - $3017 = ($3016|0)!=(0); - if (!($3017)) { - break; - } - $3018 = HEAP32[$iSavepoint>>2]|0; - $3019 = (($3018) + 1)|0; - HEAP32[$iSavepoint>>2] = $3019; - $3020 = HEAP32[$pSavepoint>>2]|0; - $3021 = (($3020) + 24|0); - $3022 = HEAP32[$3021>>2]|0; - HEAP32[$pSavepoint>>2] = $3022; - } - $3023 = HEAP32[$pSavepoint>>2]|0; - $3024 = ($3023|0)!=(0|0); - if (!($3024)) { - $3025 = HEAP32[$0>>2]|0; - $3026 = (($3025) + 44|0); - $3027 = HEAP32[$db>>2]|0; - $3028 = HEAP32[$zName>>2]|0; - HEAP32[$vararg_buffer62>>2] = $3028; - _sqlite3SetString($3026,$3027,31352,$vararg_buffer62); - HEAP32[$rc>>2] = 1; - break L21; - } - $3029 = HEAP32[$db>>2]|0; - $3030 = (($3029) + 148|0); - $3031 = HEAP32[$3030>>2]|0; - $3032 = ($3031|0)>(0); - if ($3032) { - $3033 = HEAP32[$p117>>2]|0; - $3034 = ($3033|0)==(1); - if ($3034) { - $3035 = HEAP32[$0>>2]|0; - $3036 = (($3035) + 44|0); - $3037 = HEAP32[$db>>2]|0; - _sqlite3SetString($3036,$3037,31376,$vararg_buffer62); - HEAP32[$rc>>2] = 5; - break L21; - } - } - $3038 = HEAP32[$pSavepoint>>2]|0; - $3039 = (($3038) + 24|0); - $3040 = HEAP32[$3039>>2]|0; - $3041 = ($3040|0)==(0|0); - if ($3041) { - $3042 = HEAP32[$db>>2]|0; - $3043 = (($3042) + 69|0); - $3044 = HEAP8[$3043>>0]|0; - $3045 = $3044&255; - $3046 = ($3045|0)!=(0); - $3048 = $3046; - } else { - $3048 = 0; - } - $3047 = $3048&1; - HEAP32[$isTransaction>>2] = $3047; - $3049 = HEAP32[$isTransaction>>2]|0; - $3050 = ($3049|0)!=(0); - if ($3050) { - $3051 = HEAP32[$p117>>2]|0; - $3052 = ($3051|0)==(1); - if ($3052) { - $3053 = HEAP32[$0>>2]|0; - $3054 = (_sqlite3VdbeCheckFk($3053,1)|0); - HEAP32[$rc>>2] = $3054; - $3055 = ($3054|0)!=(0); - if ($3055) { - label = 898; - break L11; - } - $3056 = HEAP32[$db>>2]|0; - $3057 = (($3056) + 62|0); - HEAP8[$3057>>0] = 1; - $3058 = HEAP32[$0>>2]|0; - $3059 = (_sqlite3VdbeHalt($3058)|0); - $3060 = ($3059|0)==(5); - if ($3060) { - label = 395; - break L11; - } - $3068 = HEAP32[$db>>2]|0; - $3069 = (($3068) + 69|0); - HEAP8[$3069>>0] = 0; - $3070 = HEAP32[$0>>2]|0; - $3071 = (($3070) + 80|0); - $3072 = HEAP32[$3071>>2]|0; - HEAP32[$rc>>2] = $3072; - } else { - label = 397; - } - } else { - label = 397; - } - if ((label|0) == 397) { - label = 0; - $3073 = HEAP32[$db>>2]|0; - $3074 = (($3073) + 488|0); - $3075 = HEAP32[$3074>>2]|0; - $3076 = HEAP32[$iSavepoint>>2]|0; - $3077 = (($3075) - ($3076))|0; - $3078 = (($3077) - 1)|0; - HEAP32[$iSavepoint>>2] = $3078; - $3079 = HEAP32[$p117>>2]|0; - $3080 = ($3079|0)==(2); - L477: do { - if ($3080) { - HEAP32[$ii>>2] = 0; - while(1) { - $3081 = HEAP32[$ii>>2]|0; - $3082 = HEAP32[$db>>2]|0; - $3083 = (($3082) + 20|0); - $3084 = HEAP32[$3083>>2]|0; - $3085 = ($3081|0)<($3084|0); - if (!($3085)) { - break L477; - } - $3086 = HEAP32[$ii>>2]|0; - $3087 = HEAP32[$db>>2]|0; - $3088 = (($3087) + 16|0); - $3089 = HEAP32[$3088>>2]|0; - $3090 = (($3089) + ($3086<<4)|0); - $3091 = (($3090) + 4|0); - $3092 = HEAP32[$3091>>2]|0; - _sqlite3BtreeTripAllCursors($3092,4); - $3093 = HEAP32[$ii>>2]|0; - $3094 = (($3093) + 1)|0; - HEAP32[$ii>>2] = $3094; - } - } - } while(0); - HEAP32[$ii>>2] = 0; - while(1) { - $3095 = HEAP32[$ii>>2]|0; - $3096 = HEAP32[$db>>2]|0; - $3097 = (($3096) + 20|0); - $3098 = HEAP32[$3097>>2]|0; - $3099 = ($3095|0)<($3098|0); - if (!($3099)) { - break; - } - $3100 = HEAP32[$ii>>2]|0; - $3101 = HEAP32[$db>>2]|0; - $3102 = (($3101) + 16|0); - $3103 = HEAP32[$3102>>2]|0; - $3104 = (($3103) + ($3100<<4)|0); - $3105 = (($3104) + 4|0); - $3106 = HEAP32[$3105>>2]|0; - $3107 = HEAP32[$p117>>2]|0; - $3108 = HEAP32[$iSavepoint>>2]|0; - $3109 = (_sqlite3BtreeSavepoint($3106,$3107,$3108)|0); - HEAP32[$rc>>2] = $3109; - $3110 = HEAP32[$rc>>2]|0; - $3111 = ($3110|0)!=(0); - if ($3111) { - break L11; - } - $3112 = HEAP32[$ii>>2]|0; - $3113 = (($3112) + 1)|0; - HEAP32[$ii>>2] = $3113; - } - $3114 = HEAP32[$p117>>2]|0; - $3115 = ($3114|0)==(2); - if ($3115) { - $3116 = HEAP32[$db>>2]|0; - $3117 = (($3116) + 24|0); - $3118 = HEAP32[$3117>>2]|0; - $3119 = $3118 & 2; - $3120 = ($3119|0)!=(0); - if ($3120) { - $3121 = HEAP32[$db>>2]|0; - _sqlite3ExpirePreparedStatements($3121); - $3122 = HEAP32[$db>>2]|0; - _sqlite3ResetAllSchemasOfConnection($3122); - $3123 = HEAP32[$db>>2]|0; - $3124 = (($3123) + 24|0); - $3125 = HEAP32[$3124>>2]|0; - $3126 = $3125 | 2; - $3127 = HEAP32[$db>>2]|0; - $3128 = (($3127) + 24|0); - HEAP32[$3128>>2] = $3126; - } - } - } - while(1) { - $3129 = HEAP32[$db>>2]|0; - $3130 = (($3129) + 480|0); - $3131 = HEAP32[$3130>>2]|0; - $3132 = HEAP32[$pSavepoint>>2]|0; - $3133 = ($3131|0)!=($3132|0); - if (!($3133)) { - break; - } - $3134 = HEAP32[$db>>2]|0; - $3135 = (($3134) + 480|0); - $3136 = HEAP32[$3135>>2]|0; - HEAP32[$pTmp>>2] = $3136; - $3137 = HEAP32[$pTmp>>2]|0; - $3138 = (($3137) + 24|0); - $3139 = HEAP32[$3138>>2]|0; - $3140 = HEAP32[$db>>2]|0; - $3141 = (($3140) + 480|0); - HEAP32[$3141>>2] = $3139; - $3142 = HEAP32[$db>>2]|0; - $3143 = HEAP32[$pTmp>>2]|0; - _sqlite3DbFree($3142,$3143); - $3144 = HEAP32[$db>>2]|0; - $3145 = (($3144) + 488|0); - $3146 = HEAP32[$3145>>2]|0; - $3147 = (($3146) + -1)|0; - HEAP32[$3145>>2] = $3147; - } - $3148 = HEAP32[$p117>>2]|0; - $3149 = ($3148|0)==(1); - $3150 = HEAP32[$pSavepoint>>2]|0; - if ($3149) { - $3151 = (($3150) + 24|0); - $3152 = HEAP32[$3151>>2]|0; - $3153 = HEAP32[$db>>2]|0; - $3154 = (($3153) + 480|0); - HEAP32[$3154>>2] = $3152; - $3155 = HEAP32[$db>>2]|0; - $3156 = HEAP32[$pSavepoint>>2]|0; - _sqlite3DbFree($3155,$3156); - $3157 = HEAP32[$isTransaction>>2]|0; - $3158 = ($3157|0)!=(0); - if (!($3158)) { - $3159 = HEAP32[$db>>2]|0; - $3160 = (($3159) + 488|0); - $3161 = HEAP32[$3160>>2]|0; - $3162 = (($3161) + -1)|0; - HEAP32[$3160>>2] = $3162; - } - } else { - $3163 = (($3150) + 8|0); - $3164 = $3163; - $3165 = $3164; - $3166 = HEAP32[$3165>>2]|0; - $3167 = (($3164) + 4)|0; - $3168 = $3167; - $3169 = HEAP32[$3168>>2]|0; - $3170 = HEAP32[$db>>2]|0; - $3171 = (($3170) + 496|0); - $3172 = $3171; - $3173 = $3172; - HEAP32[$3173>>2] = $3166; - $3174 = (($3172) + 4)|0; - $3175 = $3174; - HEAP32[$3175>>2] = $3169; - $3176 = HEAP32[$pSavepoint>>2]|0; - $3177 = (($3176) + 16|0); - $3178 = $3177; - $3179 = $3178; - $3180 = HEAP32[$3179>>2]|0; - $3181 = (($3178) + 4)|0; - $3182 = $3181; - $3183 = HEAP32[$3182>>2]|0; - $3184 = HEAP32[$db>>2]|0; - $3185 = (($3184) + 504|0); - $3186 = $3185; - $3187 = $3186; - HEAP32[$3187>>2] = $3180; - $3188 = (($3186) + 4)|0; - $3189 = $3188; - HEAP32[$3189>>2] = $3183; - } - $3190 = HEAP32[$isTransaction>>2]|0; - $3191 = ($3190|0)!=(0); - if (!($3191)) { - $3192 = HEAP32[$db>>2]|0; - $3193 = HEAP32[$p117>>2]|0; - $3194 = HEAP32[$iSavepoint>>2]|0; - $3195 = (_sqlite3VtabSavepoint($3192,$3193,$3194)|0); - HEAP32[$rc>>2] = $3195; - $3196 = HEAP32[$rc>>2]|0; - $3197 = ($3196|0)!=(0); - if ($3197) { - break L11; - } - } - break; - } - case 3: { - $3198 = HEAP32[$pOp>>2]|0; - $3199 = (($3198) + 4|0); - $3200 = HEAP32[$3199>>2]|0; - HEAP32[$desiredAutoCommit>>2] = $3200; - $3201 = HEAP32[$pOp>>2]|0; - $3202 = (($3201) + 8|0); - $3203 = HEAP32[$3202>>2]|0; - HEAP32[$iRollback>>2] = $3203; - $3204 = HEAP32[$desiredAutoCommit>>2]|0; - $3205 = ($3204|0)!=(0); - if ($3205) { - $3206 = HEAP32[$db>>2]|0; - $3207 = (($3206) + 62|0); - $3208 = HEAP8[$3207>>0]|0; - $3209 = ($3208<<24>>24)!=(0); - $3210 = $3209 ^ 1; - $3212 = $3210; - } else { - $3212 = 0; - } - $3211 = $3212&1; - HEAP32[$turnOnAC>>2] = $3211; - $3213 = HEAP32[$turnOnAC>>2]|0; - $3214 = ($3213|0)!=(0); - if ($3214) { - $3215 = HEAP32[$iRollback>>2]|0; - $3216 = ($3215|0)!=(0); - if (!($3216)) { - $3217 = HEAP32[$db>>2]|0; - $3218 = (($3217) + 148|0); - $3219 = HEAP32[$3218>>2]|0; - $3220 = ($3219|0)>(0); - if ($3220) { - $3221 = HEAP32[$0>>2]|0; - $3222 = (($3221) + 44|0); - $3223 = HEAP32[$db>>2]|0; - _sqlite3SetString($3222,$3223,31432,$vararg_buffer62); - HEAP32[$rc>>2] = 5; - break L21; - } - } - } - $3224 = HEAP32[$desiredAutoCommit>>2]|0; - $3225 = HEAP32[$db>>2]|0; - $3226 = (($3225) + 62|0); - $3227 = HEAP8[$3226>>0]|0; - $3228 = $3227&255; - $3229 = ($3224|0)!=($3228|0); - if ($3229) { - label = 423; - break L11; - } - $3260 = HEAP32[$0>>2]|0; - $3261 = (($3260) + 44|0); - $3262 = HEAP32[$db>>2]|0; - $3263 = HEAP32[$desiredAutoCommit>>2]|0; - $3264 = ($3263|0)!=(0); - if ($3264) { - $3265 = HEAP32[$iRollback>>2]|0; - $3266 = ($3265|0)!=(0); - $3267 = $3266 ? 31536 : 31584; - $3268 = $3267; - } else { - $3268 = 31488; - } - _sqlite3SetString($3261,$3262,$3268,$vararg_buffer62); - HEAP32[$rc>>2] = 1; - break; - } - case 4: { - $3269 = HEAP32[$pOp>>2]|0; - $3270 = (($3269) + 8|0); - $3271 = HEAP32[$3270>>2]|0; - $3272 = ($3271|0)!=(0); - if ($3272) { - $3273 = HEAP32[$db>>2]|0; - $3274 = (($3273) + 24|0); - $3275 = HEAP32[$3274>>2]|0; - $3276 = $3275 & 33554432; - $3277 = ($3276|0)!=(0); - if ($3277) { - label = 436; - break L11; - } - } - $3278 = HEAP32[$pOp>>2]|0; - $3279 = (($3278) + 4|0); - $3280 = HEAP32[$3279>>2]|0; - $3281 = HEAP32[$db>>2]|0; - $3282 = (($3281) + 16|0); - $3283 = HEAP32[$3282>>2]|0; - $3284 = (($3283) + ($3280<<4)|0); - $3285 = (($3284) + 4|0); - $3286 = HEAP32[$3285>>2]|0; - HEAP32[$pBt>>2] = $3286; - $3287 = HEAP32[$pBt>>2]|0; - $3288 = ($3287|0)!=(0|0); - if ($3288) { - $3289 = HEAP32[$pBt>>2]|0; - $3290 = HEAP32[$pOp>>2]|0; - $3291 = (($3290) + 8|0); - $3292 = HEAP32[$3291>>2]|0; - $3293 = (_sqlite3BtreeBeginTrans($3289,$3292)|0); - HEAP32[$rc>>2] = $3293; - $3294 = HEAP32[$rc>>2]|0; - $3295 = ($3294|0)==(5); - if ($3295) { - label = 439; - break L11; - } - $3301 = HEAP32[$rc>>2]|0; - $3302 = ($3301|0)!=(0); - if ($3302) { - break L11; - } - $3303 = HEAP32[$pOp>>2]|0; - $3304 = (($3303) + 8|0); - $3305 = HEAP32[$3304>>2]|0; - $3306 = ($3305|0)!=(0); - do { - if ($3306) { - $3307 = HEAP32[$0>>2]|0; - $3308 = (($3307) + 88|0); - $3309 = HEAP16[$3308>>1]|0; - $3310 = ($3309&65535) >>> 7; - $3311 = $3310 & 1; - $3312 = $3311&65535; - $3313 = ($3312|0)!=(0); - if ($3313) { - $3314 = HEAP32[$db>>2]|0; - $3315 = (($3314) + 62|0); - $3316 = HEAP8[$3315>>0]|0; - $3317 = $3316&255; - $3318 = ($3317|0)==(0); - if (!($3318)) { - $3319 = HEAP32[$db>>2]|0; - $3320 = (($3319) + 144|0); - $3321 = HEAP32[$3320>>2]|0; - $3322 = ($3321|0)>(1); - if (!($3322)) { - break; - } - } - $3323 = HEAP32[$0>>2]|0; - $3324 = (($3323) + 104|0); - $3325 = HEAP32[$3324>>2]|0; - $3326 = ($3325|0)==(0); - if ($3326) { - $3327 = HEAP32[$db>>2]|0; - $3328 = (($3327) + 492|0); - $3329 = HEAP32[$3328>>2]|0; - $3330 = (($3329) + 1)|0; - HEAP32[$3328>>2] = $3330; - $3331 = HEAP32[$db>>2]|0; - $3332 = (($3331) + 488|0); - $3333 = HEAP32[$3332>>2]|0; - $3334 = HEAP32[$db>>2]|0; - $3335 = (($3334) + 492|0); - $3336 = HEAP32[$3335>>2]|0; - $3337 = (($3333) + ($3336))|0; - $3338 = HEAP32[$0>>2]|0; - $3339 = (($3338) + 104|0); - HEAP32[$3339>>2] = $3337; - } - $3340 = HEAP32[$db>>2]|0; - $3341 = HEAP32[$0>>2]|0; - $3342 = (($3341) + 104|0); - $3343 = HEAP32[$3342>>2]|0; - $3344 = (($3343) - 1)|0; - $3345 = (_sqlite3VtabSavepoint($3340,0,$3344)|0); - HEAP32[$rc>>2] = $3345; - $3346 = HEAP32[$rc>>2]|0; - $3347 = ($3346|0)==(0); - if ($3347) { - $3348 = HEAP32[$pBt>>2]|0; - $3349 = HEAP32[$0>>2]|0; - $3350 = (($3349) + 104|0); - $3351 = HEAP32[$3350>>2]|0; - $3352 = (_sqlite3BtreeBeginStmt($3348,$3351)|0); - HEAP32[$rc>>2] = $3352; - } - $3353 = HEAP32[$db>>2]|0; - $3354 = (($3353) + 496|0); - $3355 = $3354; - $3356 = $3355; - $3357 = HEAP32[$3356>>2]|0; - $3358 = (($3355) + 4)|0; - $3359 = $3358; - $3360 = HEAP32[$3359>>2]|0; - $3361 = HEAP32[$0>>2]|0; - $3362 = (($3361) + 152|0); - $3363 = $3362; - $3364 = $3363; - HEAP32[$3364>>2] = $3357; - $3365 = (($3363) + 4)|0; - $3366 = $3365; - HEAP32[$3366>>2] = $3360; - $3367 = HEAP32[$db>>2]|0; - $3368 = (($3367) + 504|0); - $3369 = $3368; - $3370 = $3369; - $3371 = HEAP32[$3370>>2]|0; - $3372 = (($3369) + 4)|0; - $3373 = $3372; - $3374 = HEAP32[$3373>>2]|0; - $3375 = HEAP32[$0>>2]|0; - $3376 = (($3375) + 160|0); - $3377 = $3376; - $3378 = $3377; - HEAP32[$3378>>2] = $3371; - $3379 = (($3377) + 4)|0; - $3380 = $3379; - HEAP32[$3380>>2] = $3374; - } - } - } while(0); - $3381 = HEAP32[$pBt>>2]|0; - _sqlite3BtreeGetMeta($3381,1,$iMeta); - $3382 = HEAP32[$pOp>>2]|0; - $3383 = (($3382) + 4|0); - $3384 = HEAP32[$3383>>2]|0; - $3385 = HEAP32[$db>>2]|0; - $3386 = (($3385) + 16|0); - $3387 = HEAP32[$3386>>2]|0; - $3388 = (($3387) + ($3384<<4)|0); - $3389 = (($3388) + 12|0); - $3390 = HEAP32[$3389>>2]|0; - $3391 = (($3390) + 4|0); - $3392 = HEAP32[$3391>>2]|0; - HEAP32[$iGen>>2] = $3392; - } else { - HEAP32[$iMeta>>2] = 0; - HEAP32[$iGen>>2] = 0; - } - $3393 = HEAP32[$pOp>>2]|0; - $3394 = (($3393) + 3|0); - $3395 = HEAP8[$3394>>0]|0; - $3396 = $3395&255; - $3397 = ($3396|0)!=(0); - if ($3397) { - $3398 = HEAP32[$iMeta>>2]|0; - $3399 = HEAP32[$pOp>>2]|0; - $3400 = (($3399) + 12|0); - $3401 = HEAP32[$3400>>2]|0; - $3402 = ($3398|0)!=($3401|0); - if (!($3402)) { - $3403 = HEAP32[$iGen>>2]|0; - $3404 = HEAP32[$pOp>>2]|0; - $3405 = (($3404) + 16|0); - $3406 = HEAP32[$3405>>2]|0; - $3407 = ($3403|0)!=($3406|0); - if (!($3407)) { - break L21; - } - } - $3408 = HEAP32[$db>>2]|0; - $3409 = HEAP32[$0>>2]|0; - $3410 = (($3409) + 44|0); - $3411 = HEAP32[$3410>>2]|0; - _sqlite3DbFree($3408,$3411); - $3412 = HEAP32[$db>>2]|0; - $3413 = (_sqlite3DbStrDup($3412,5616)|0); - $3414 = HEAP32[$0>>2]|0; - $3415 = (($3414) + 44|0); - HEAP32[$3415>>2] = $3413; - $3416 = HEAP32[$pOp>>2]|0; - $3417 = (($3416) + 4|0); - $3418 = HEAP32[$3417>>2]|0; - $3419 = HEAP32[$db>>2]|0; - $3420 = (($3419) + 16|0); - $3421 = HEAP32[$3420>>2]|0; - $3422 = (($3421) + ($3418<<4)|0); - $3423 = (($3422) + 12|0); - $3424 = HEAP32[$3423>>2]|0; - $3425 = HEAP32[$3424>>2]|0; - $3426 = HEAP32[$iMeta>>2]|0; - $3427 = ($3425|0)!=($3426|0); - if ($3427) { - $3428 = HEAP32[$db>>2]|0; - $3429 = HEAP32[$pOp>>2]|0; - $3430 = (($3429) + 4|0); - $3431 = HEAP32[$3430>>2]|0; - _sqlite3ResetOneSchema($3428,$3431); - } - $3432 = HEAP32[$0>>2]|0; - $3433 = (($3432) + 88|0); - $3434 = HEAP16[$3433>>1]|0; - $3435 = $3434 & -33; - $3436 = $3435 | 32; - HEAP16[$3433>>1] = $3436; - HEAP32[$rc>>2] = 17; - } - break; - } - case 50: { - $3437 = HEAP32[$pOp>>2]|0; - $3438 = (($3437) + 4|0); - $3439 = HEAP32[$3438>>2]|0; - HEAP32[$iDb>>2] = $3439; - $3440 = HEAP32[$pOp>>2]|0; - $3441 = (($3440) + 12|0); - $3442 = HEAP32[$3441>>2]|0; - HEAP32[$iCookie>>2] = $3442; - $3443 = HEAP32[$iDb>>2]|0; - $3444 = HEAP32[$db>>2]|0; - $3445 = (($3444) + 16|0); - $3446 = HEAP32[$3445>>2]|0; - $3447 = (($3446) + ($3443<<4)|0); - $3448 = (($3447) + 4|0); - $3449 = HEAP32[$3448>>2]|0; - $3450 = HEAP32[$iCookie>>2]|0; - _sqlite3BtreeGetMeta($3449,$3450,$iMeta18); - $3451 = HEAP32[$iMeta18>>2]|0; - $3452 = ($3451|0)<(0); - $3453 = $3452 << 31 >> 31; - $3454 = HEAP32[$pOut>>2]|0; - $3455 = (($3454) + 16|0); - $3456 = $3455; - $3457 = $3456; - HEAP32[$3457>>2] = $3451; - $3458 = (($3456) + 4)|0; - $3459 = $3458; - HEAP32[$3459>>2] = $3453; - break; - } - case 51: { - $3460 = HEAP32[$pOp>>2]|0; - $3461 = (($3460) + 4|0); - $3462 = HEAP32[$3461>>2]|0; - $3463 = HEAP32[$db>>2]|0; - $3464 = (($3463) + 16|0); - $3465 = HEAP32[$3464>>2]|0; - $3466 = (($3465) + ($3462<<4)|0); - HEAP32[$pDb>>2] = $3466; - $3467 = HEAP32[$pOp>>2]|0; - $3468 = (($3467) + 12|0); - $3469 = HEAP32[$3468>>2]|0; - $3470 = HEAP32[$aMem>>2]|0; - $3471 = (($3470) + (($3469*40)|0)|0); - HEAP32[$pIn3>>2] = $3471; - $3472 = HEAP32[$pIn3>>2]|0; - (_sqlite3VdbeMemIntegerify($3472)|0); - $3473 = HEAP32[$pDb>>2]|0; - $3474 = (($3473) + 4|0); - $3475 = HEAP32[$3474>>2]|0; - $3476 = HEAP32[$pOp>>2]|0; - $3477 = (($3476) + 8|0); - $3478 = HEAP32[$3477>>2]|0; - $3479 = HEAP32[$pIn3>>2]|0; - $3480 = (($3479) + 16|0); - $3481 = $3480; - $3482 = $3481; - $3483 = HEAP32[$3482>>2]|0; - $3484 = (($3481) + 4)|0; - $3485 = $3484; - $3486 = HEAP32[$3485>>2]|0; - $3487 = (_sqlite3BtreeUpdateMeta($3475,$3478,$3483)|0); - HEAP32[$rc>>2] = $3487; - $3488 = HEAP32[$pOp>>2]|0; - $3489 = (($3488) + 8|0); - $3490 = HEAP32[$3489>>2]|0; - $3491 = ($3490|0)==(1); - if ($3491) { - $3492 = HEAP32[$pIn3>>2]|0; - $3493 = (($3492) + 16|0); - $3494 = $3493; - $3495 = $3494; - $3496 = HEAP32[$3495>>2]|0; - $3497 = (($3494) + 4)|0; - $3498 = $3497; - $3499 = HEAP32[$3498>>2]|0; - $3500 = HEAP32[$pDb>>2]|0; - $3501 = (($3500) + 12|0); - $3502 = HEAP32[$3501>>2]|0; - HEAP32[$3502>>2] = $3496; - $3503 = HEAP32[$db>>2]|0; - $3504 = (($3503) + 24|0); - $3505 = HEAP32[$3504>>2]|0; - $3506 = $3505 | 2; - HEAP32[$3504>>2] = $3506; - } else { - $3507 = HEAP32[$pOp>>2]|0; - $3508 = (($3507) + 8|0); - $3509 = HEAP32[$3508>>2]|0; - $3510 = ($3509|0)==(2); - if ($3510) { - $3511 = HEAP32[$pIn3>>2]|0; - $3512 = (($3511) + 16|0); - $3513 = $3512; - $3514 = $3513; - $3515 = HEAP32[$3514>>2]|0; - $3516 = (($3513) + 4)|0; - $3517 = $3516; - $3518 = HEAP32[$3517>>2]|0; - $3519 = $3515&255; - $3520 = HEAP32[$pDb>>2]|0; - $3521 = (($3520) + 12|0); - $3522 = HEAP32[$3521>>2]|0; - $3523 = (($3522) + 76|0); - HEAP8[$3523>>0] = $3519; - } - } - $3524 = HEAP32[$pOp>>2]|0; - $3525 = (($3524) + 4|0); - $3526 = HEAP32[$3525>>2]|0; - $3527 = ($3526|0)==(1); - if ($3527) { - $3528 = HEAP32[$db>>2]|0; - _sqlite3ExpirePreparedStatements($3528); - $3529 = HEAP32[$0>>2]|0; - $3530 = (($3529) + 88|0); - $3531 = HEAP16[$3530>>1]|0; - $3532 = $3531 & -33; - HEAP16[$3530>>1] = $3532; - } - break; - } - case 53: case 52: { - $3533 = HEAP32[$0>>2]|0; - $3534 = (($3533) + 88|0); - $3535 = HEAP16[$3534>>1]|0; - $3536 = ($3535&65535) >>> 5; - $3537 = $3536 & 1; - $3538 = $3537&65535; - $3539 = ($3538|0)!=(0); - if ($3539) { - HEAP32[$rc>>2] = 4; - break L21; - } - HEAP32[$nField19>>2] = 0; - HEAP32[$pKeyInfo20>>2] = 0; - $3540 = HEAP32[$pOp>>2]|0; - $3541 = (($3540) + 8|0); - $3542 = HEAP32[$3541>>2]|0; - HEAP32[$p221>>2] = $3542; - $3543 = HEAP32[$pOp>>2]|0; - $3544 = (($3543) + 12|0); - $3545 = HEAP32[$3544>>2]|0; - HEAP32[$iDb22>>2] = $3545; - $3546 = HEAP32[$iDb22>>2]|0; - $3547 = HEAP32[$db>>2]|0; - $3548 = (($3547) + 16|0); - $3549 = HEAP32[$3548>>2]|0; - $3550 = (($3549) + ($3546<<4)|0); - HEAP32[$pDb23>>2] = $3550; - $3551 = HEAP32[$pDb23>>2]|0; - $3552 = (($3551) + 4|0); - $3553 = HEAP32[$3552>>2]|0; - HEAP32[$pX>>2] = $3553; - $3554 = HEAP32[$pOp>>2]|0; - $3555 = HEAP8[$3554>>0]|0; - $3556 = $3555&255; - $3557 = ($3556|0)==(53); - if ($3557) { - HEAP32[$wrFlag>>2] = 1; - $3558 = HEAP32[$pDb23>>2]|0; - $3559 = (($3558) + 12|0); - $3560 = HEAP32[$3559>>2]|0; - $3561 = (($3560) + 76|0); - $3562 = HEAP8[$3561>>0]|0; - $3563 = $3562&255; - $3564 = HEAP32[$0>>2]|0; - $3565 = (($3564) + 87|0); - $3566 = HEAP8[$3565>>0]|0; - $3567 = $3566&255; - $3568 = ($3563|0)<($3567|0); - if ($3568) { - $3569 = HEAP32[$pDb23>>2]|0; - $3570 = (($3569) + 12|0); - $3571 = HEAP32[$3570>>2]|0; - $3572 = (($3571) + 76|0); - $3573 = HEAP8[$3572>>0]|0; - $3574 = HEAP32[$0>>2]|0; - $3575 = (($3574) + 87|0); - HEAP8[$3575>>0] = $3573; - } - } else { - HEAP32[$wrFlag>>2] = 0; - } - $3576 = HEAP32[$pOp>>2]|0; - $3577 = (($3576) + 3|0); - $3578 = HEAP8[$3577>>0]|0; - $3579 = $3578&255; - $3580 = $3579 & 2; - $3581 = ($3580|0)!=(0); - if ($3581) { - $3582 = HEAP32[$p221>>2]|0; - $3583 = HEAP32[$aMem>>2]|0; - $3584 = (($3583) + (($3582*40)|0)|0); - HEAP32[$pIn2>>2] = $3584; - $3585 = HEAP32[$pIn2>>2]|0; - (_sqlite3VdbeMemIntegerify($3585)|0); - $3586 = HEAP32[$pIn2>>2]|0; - $3587 = (($3586) + 16|0); - $3588 = $3587; - $3589 = $3588; - $3590 = HEAP32[$3589>>2]|0; - $3591 = (($3588) + 4)|0; - $3592 = $3591; - $3593 = HEAP32[$3592>>2]|0; - HEAP32[$p221>>2] = $3590; - $3594 = HEAP32[$p221>>2]|0; - $3595 = ($3594|0)<(2); - if ($3595) { - label = 473; - break L11; - } - } - $3597 = HEAP32[$pOp>>2]|0; - $3598 = (($3597) + 1|0); - $3599 = HEAP8[$3598>>0]|0; - $3600 = $3599 << 24 >> 24; - $3601 = ($3600|0)==(-6); - $3602 = HEAP32[$pOp>>2]|0; - if ($3601) { - $3603 = (($3602) + 16|0); - $3604 = HEAP32[$3603>>2]|0; - HEAP32[$pKeyInfo20>>2] = $3604; - $3605 = HEAP32[$pKeyInfo20>>2]|0; - $3606 = (($3605) + 6|0); - $3607 = HEAP16[$3606>>1]|0; - $3608 = $3607&65535; - $3609 = HEAP32[$pKeyInfo20>>2]|0; - $3610 = (($3609) + 8|0); - $3611 = HEAP16[$3610>>1]|0; - $3612 = $3611&65535; - $3613 = (($3608) + ($3612))|0; - HEAP32[$nField19>>2] = $3613; - } else { - $3614 = (($3602) + 1|0); - $3615 = HEAP8[$3614>>0]|0; - $3616 = $3615 << 24 >> 24; - $3617 = ($3616|0)==(-14); - if ($3617) { - $3618 = HEAP32[$pOp>>2]|0; - $3619 = (($3618) + 16|0); - $3620 = HEAP32[$3619>>2]|0; - HEAP32[$nField19>>2] = $3620; - } - } - $3621 = HEAP32[$0>>2]|0; - $3622 = HEAP32[$pOp>>2]|0; - $3623 = (($3622) + 4|0); - $3624 = HEAP32[$3623>>2]|0; - $3625 = HEAP32[$nField19>>2]|0; - $3626 = HEAP32[$iDb22>>2]|0; - $3627 = (_allocateCursor($3621,$3624,$3625,$3626,1)|0); - HEAP32[$pCur>>2] = $3627; - $3628 = HEAP32[$pCur>>2]|0; - $3629 = ($3628|0)==(0|0); - if ($3629) { - label = 900; - break L1; - } - $3630 = HEAP32[$pCur>>2]|0; - $3631 = (($3630) + 25|0); - HEAP8[$3631>>0] = 1; - $3632 = HEAP32[$pCur>>2]|0; - $3633 = (($3632) + 28|0); - $3634 = HEAP8[$3633>>0]|0; - $3635 = $3634 & -9; - $3636 = $3635 | 8; - HEAP8[$3633>>0] = $3636; - $3637 = HEAP32[$pX>>2]|0; - $3638 = HEAP32[$p221>>2]|0; - $3639 = HEAP32[$wrFlag>>2]|0; - $3640 = HEAP32[$pKeyInfo20>>2]|0; - $3641 = HEAP32[$pCur>>2]|0; - $3642 = HEAP32[$3641>>2]|0; - $3643 = (_sqlite3BtreeCursor($3637,$3638,$3639,$3640,$3642)|0); - HEAP32[$rc>>2] = $3643; - $3644 = HEAP32[$pKeyInfo20>>2]|0; - $3645 = HEAP32[$pCur>>2]|0; - $3646 = (($3645) + 8|0); - HEAP32[$3646>>2] = $3644; - $3647 = HEAP32[$pCur>>2]|0; - $3648 = HEAP32[$3647>>2]|0; - $3649 = HEAP32[$pOp>>2]|0; - $3650 = (($3649) + 3|0); - $3651 = HEAP8[$3650>>0]|0; - $3652 = $3651&255; - $3653 = $3652 & 1; - _sqlite3BtreeCursorHints($3648,$3653); - $3654 = HEAP32[$pOp>>2]|0; - $3655 = (($3654) + 1|0); - $3656 = HEAP8[$3655>>0]|0; - $3657 = $3656 << 24 >> 24; - $3658 = ($3657|0)!=(-6); - $3659 = $3658&1; - $3660 = HEAP32[$pCur>>2]|0; - $3661 = (($3660) + 28|0); - $3662 = $3659&255; - $3663 = HEAP8[$3661>>0]|0; - $3664 = $3662 & 1; - $3665 = ($3664 << 2)&255; - $3666 = $3663 & -5; - $3667 = $3666 | $3665; - HEAP8[$3661>>0] = $3667; - break; - } - case 55: case 54: { - $3668 = HEAP32[$0>>2]|0; - $3669 = HEAP32[$pOp>>2]|0; - $3670 = (($3669) + 4|0); - $3671 = HEAP32[$3670>>2]|0; - $3672 = HEAP32[$pOp>>2]|0; - $3673 = (($3672) + 8|0); - $3674 = HEAP32[$3673>>2]|0; - $3675 = (_allocateCursor($3668,$3671,$3674,-1,1)|0); - HEAP32[$pCx>>2] = $3675; - $3676 = HEAP32[$pCx>>2]|0; - $3677 = ($3676|0)==(0|0); - if ($3677) { - label = 900; - break L1; - } - $3678 = HEAP32[$pCx>>2]|0; - $3679 = (($3678) + 25|0); - HEAP8[$3679>>0] = 1; - $3680 = HEAP32[$pCx>>2]|0; - $3681 = (($3680) + 28|0); - $3682 = HEAP8[$3681>>0]|0; - $3683 = $3682 & -2; - $3684 = $3683 | 1; - HEAP8[$3681>>0] = $3684; - $3685 = HEAP32[$db>>2]|0; - $3686 = HEAP32[$3685>>2]|0; - $3687 = HEAP32[$db>>2]|0; - $3688 = HEAP32[$pCx>>2]|0; - $3689 = (($3688) + 4|0); - $3690 = HEAP32[$pOp>>2]|0; - $3691 = (($3690) + 3|0); - $3692 = HEAP8[$3691>>0]|0; - $3693 = $3692&255; - $3694 = 5 | $3693; - $3695 = (_sqlite3BtreeOpen($3686,0,$3687,$3689,$3694,1054)|0); - HEAP32[$rc>>2] = $3695; - $3696 = HEAP32[$rc>>2]|0; - $3697 = ($3696|0)==(0); - if ($3697) { - $3698 = HEAP32[$pCx>>2]|0; - $3699 = (($3698) + 4|0); - $3700 = HEAP32[$3699>>2]|0; - $3701 = (_sqlite3BtreeBeginTrans($3700,1)|0); - HEAP32[$rc>>2] = $3701; - } - $3702 = HEAP32[$rc>>2]|0; - $3703 = ($3702|0)==(0); - do { - if ($3703) { - $3704 = HEAP32[$pOp>>2]|0; - $3705 = (($3704) + 16|0); - $3706 = HEAP32[$3705>>2]|0; - HEAP32[$pKeyInfo24>>2] = $3706; - $3707 = ($3706|0)!=(0|0); - $3708 = HEAP32[$pCx>>2]|0; - $3709 = (($3708) + 4|0); - $3710 = HEAP32[$3709>>2]|0; - if (!($3707)) { - $3734 = HEAP32[$pCx>>2]|0; - $3735 = HEAP32[$3734>>2]|0; - $3736 = (_sqlite3BtreeCursor($3710,1,1,0,$3735)|0); - HEAP32[$rc>>2] = $3736; - $3737 = HEAP32[$pCx>>2]|0; - $3738 = (($3737) + 28|0); - $3739 = HEAP8[$3738>>0]|0; - $3740 = $3739 & -5; - $3741 = $3740 | 4; - HEAP8[$3738>>0] = $3741; - break; - } - $3711 = HEAP32[$pOp>>2]|0; - $3712 = (($3711) + 3|0); - $3713 = HEAP8[$3712>>0]|0; - $3714 = $3713&255; - $3715 = 2 | $3714; - $3716 = (_sqlite3BtreeCreateTable($3710,$pgno,$3715)|0); - HEAP32[$rc>>2] = $3716; - $3717 = HEAP32[$rc>>2]|0; - $3718 = ($3717|0)==(0); - if ($3718) { - $3719 = HEAP32[$pKeyInfo24>>2]|0; - $3720 = HEAP32[$pCx>>2]|0; - $3721 = (($3720) + 8|0); - HEAP32[$3721>>2] = $3719; - $3722 = HEAP32[$pCx>>2]|0; - $3723 = (($3722) + 4|0); - $3724 = HEAP32[$3723>>2]|0; - $3725 = HEAP32[$pgno>>2]|0; - $3726 = HEAP32[$pKeyInfo24>>2]|0; - $3727 = HEAP32[$pCx>>2]|0; - $3728 = HEAP32[$3727>>2]|0; - $3729 = (_sqlite3BtreeCursor($3724,$3725,1,$3726,$3728)|0); - HEAP32[$rc>>2] = $3729; - } - $3730 = HEAP32[$pCx>>2]|0; - $3731 = (($3730) + 28|0); - $3732 = HEAP8[$3731>>0]|0; - $3733 = $3732 & -5; - HEAP8[$3731>>0] = $3733; - } - } while(0); - $3742 = HEAP32[$pOp>>2]|0; - $3743 = (($3742) + 3|0); - $3744 = HEAP8[$3743>>0]|0; - $3745 = $3744&255; - $3746 = ($3745|0)!=(8); - $3747 = $3746&1; - $3748 = HEAP32[$pCx>>2]|0; - $3749 = (($3748) + 28|0); - $3750 = $3747&255; - $3751 = HEAP8[$3749>>0]|0; - $3752 = $3750 & 1; - $3753 = ($3752 << 3)&255; - $3754 = $3751 & -9; - $3755 = $3754 | $3753; - HEAP8[$3749>>0] = $3755; - break; - } - case 56: { - $3756 = HEAP32[$0>>2]|0; - $3757 = HEAP32[$pOp>>2]|0; - $3758 = (($3757) + 4|0); - $3759 = HEAP32[$3758>>2]|0; - $3760 = HEAP32[$pOp>>2]|0; - $3761 = (($3760) + 8|0); - $3762 = HEAP32[$3761>>2]|0; - $3763 = (_allocateCursor($3756,$3759,$3762,-1,1)|0); - HEAP32[$pCx25>>2] = $3763; - $3764 = HEAP32[$pCx25>>2]|0; - $3765 = ($3764|0)==(0|0); - if ($3765) { - label = 900; - break L1; - } - $3766 = HEAP32[$pOp>>2]|0; - $3767 = (($3766) + 16|0); - $3768 = HEAP32[$3767>>2]|0; - $3769 = HEAP32[$pCx25>>2]|0; - $3770 = (($3769) + 8|0); - HEAP32[$3770>>2] = $3768; - $3771 = HEAP32[$db>>2]|0; - $3772 = HEAP32[$pCx25>>2]|0; - $3773 = (_sqlite3VdbeSorterInit($3771,$3772)|0); - HEAP32[$rc>>2] = $3773; - break; - } - case 57: { - $3774 = HEAP32[$0>>2]|0; - $3775 = HEAP32[$pOp>>2]|0; - $3776 = (($3775) + 4|0); - $3777 = HEAP32[$3776>>2]|0; - $3778 = HEAP32[$pOp>>2]|0; - $3779 = (($3778) + 12|0); - $3780 = HEAP32[$3779>>2]|0; - $3781 = (_allocateCursor($3774,$3777,$3780,-1,0)|0); - HEAP32[$pCx26>>2] = $3781; - $3782 = HEAP32[$pCx26>>2]|0; - $3783 = ($3782|0)==(0|0); - if ($3783) { - label = 900; - break L1; - } - $3784 = HEAP32[$pCx26>>2]|0; - $3785 = (($3784) + 25|0); - HEAP8[$3785>>0] = 1; - $3786 = HEAP32[$pOp>>2]|0; - $3787 = (($3786) + 8|0); - $3788 = HEAP32[$3787>>2]|0; - $3789 = HEAP32[$pCx26>>2]|0; - $3790 = (($3789) + 16|0); - HEAP32[$3790>>2] = $3788; - $3791 = HEAP32[$pCx26>>2]|0; - $3792 = (($3791) + 28|0); - $3793 = HEAP8[$3792>>0]|0; - $3794 = $3793 & -5; - $3795 = $3794 | 4; - HEAP8[$3792>>0] = $3795; - break; - } - case 58: { - $3796 = HEAP32[$0>>2]|0; - $3797 = HEAP32[$pOp>>2]|0; - $3798 = (($3797) + 4|0); - $3799 = HEAP32[$3798>>2]|0; - $3800 = HEAP32[$0>>2]|0; - $3801 = (($3800) + 56|0); - $3802 = HEAP32[$3801>>2]|0; - $3803 = (($3802) + ($3799<<2)|0); - $3804 = HEAP32[$3803>>2]|0; - _sqlite3VdbeFreeCursor($3796,$3804); - $3805 = HEAP32[$pOp>>2]|0; - $3806 = (($3805) + 4|0); - $3807 = HEAP32[$3806>>2]|0; - $3808 = HEAP32[$0>>2]|0; - $3809 = (($3808) + 56|0); - $3810 = HEAP32[$3809>>2]|0; - $3811 = (($3810) + ($3807<<2)|0); - HEAP32[$3811>>2] = 0; - break; - } - case 62: case 61: case 60: case 59: { - $3812 = HEAP32[$pOp>>2]|0; - $3813 = (($3812) + 4|0); - $3814 = HEAP32[$3813>>2]|0; - $3815 = HEAP32[$0>>2]|0; - $3816 = (($3815) + 56|0); - $3817 = HEAP32[$3816>>2]|0; - $3818 = (($3817) + ($3814<<2)|0); - $3819 = HEAP32[$3818>>2]|0; - HEAP32[$pC28>>2] = $3819; - $3820 = HEAP32[$pOp>>2]|0; - $3821 = HEAP8[$3820>>0]|0; - $3822 = $3821&255; - HEAP32[$oc>>2] = $3822; - $3823 = HEAP32[$pC28>>2]|0; - $3824 = (($3823) + 25|0); - HEAP8[$3824>>0] = 0; - $3825 = HEAP32[$pC28>>2]|0; - $3826 = (($3825) + 28|0); - $3827 = HEAP8[$3826>>0]|0; - $3828 = ($3827&255) >>> 2; - $3829 = $3828 & 1; - $3830 = $3829&255; - $3831 = ($3830|0)!=(0); - $3832 = HEAP32[$pOp>>2]|0; - if ($3831) { - $3833 = (($3832) + 12|0); - $3834 = HEAP32[$3833>>2]|0; - $3835 = HEAP32[$aMem>>2]|0; - $3836 = (($3835) + (($3834*40)|0)|0); - HEAP32[$pIn3>>2] = $3836; - $3837 = HEAP32[$pIn3>>2]|0; - _applyNumericAffinity($3837); - $3838 = HEAP32[$pIn3>>2]|0; - $3839 = (_sqlite3VdbeIntValue($3838)|0); - $3840 = tempRet0; - $3841 = $iKey; - $3842 = $3841; - HEAP32[$3842>>2] = $3839; - $3843 = (($3841) + 4)|0; - $3844 = $3843; - HEAP32[$3844>>2] = $3840; - $3845 = HEAP32[$pC28>>2]|0; - $3846 = (($3845) + 26|0); - HEAP8[$3846>>0] = 0; - $3847 = HEAP32[$pIn3>>2]|0; - $3848 = (($3847) + 28|0); - $3849 = HEAP16[$3848>>1]|0; - $3850 = $3849&65535; - $3851 = $3850 & 4; - $3852 = ($3851|0)==(0); - do { - if ($3852) { - $3853 = HEAP32[$pIn3>>2]|0; - $3854 = (($3853) + 28|0); - $3855 = HEAP16[$3854>>1]|0; - $3856 = $3855&65535; - $3857 = $3856 & 8; - $3858 = ($3857|0)==(0); - if ($3858) { - $3859 = HEAP32[$pOp>>2]|0; - $3860 = (($3859) + 8|0); - $3861 = HEAP32[$3860>>2]|0; - $3862 = (($3861) - 1)|0; - HEAP32[$pc>>2] = $3862; - break L21; - } - $3863 = HEAP32[$pIn3>>2]|0; - $3864 = (($3863) + 8|0); - $3865 = +HEAPF64[$3864>>3]; - $3866 = $iKey; - $3867 = $3866; - $3868 = HEAP32[$3867>>2]|0; - $3869 = (($3866) + 4)|0; - $3870 = $3869; - $3871 = HEAP32[$3870>>2]|0; - $3872 = (+($3868>>>0)) + (4294967296.0*(+($3871|0))); - $3873 = $3865 < $3872; - if ($3873) { - $3874 = HEAP32[$oc>>2]|0; - $3875 = $3874 & 1; - $3876 = ($3875|0)==(0); - if (!($3876)) { - break; - } - $3877 = HEAP32[$oc>>2]|0; - $3878 = (($3877) + -1)|0; - HEAP32[$oc>>2] = $3878; - break; - } - $3879 = HEAP32[$pIn3>>2]|0; - $3880 = (($3879) + 8|0); - $3881 = +HEAPF64[$3880>>3]; - $3882 = $iKey; - $3883 = $3882; - $3884 = HEAP32[$3883>>2]|0; - $3885 = (($3882) + 4)|0; - $3886 = $3885; - $3887 = HEAP32[$3886>>2]|0; - $3888 = (+($3884>>>0)) + (4294967296.0*(+($3887|0))); - $3889 = $3881 > $3888; - if ($3889) { - $3890 = HEAP32[$oc>>2]|0; - $3891 = $3890 & 1; - $3892 = ($3891|0)==(1); - if ($3892) { - $3893 = HEAP32[$oc>>2]|0; - $3894 = (($3893) + 1)|0; - HEAP32[$oc>>2] = $3894; - } - } - } - } while(0); - $3895 = HEAP32[$pC28>>2]|0; - $3896 = HEAP32[$3895>>2]|0; - $3897 = $iKey; - $3898 = $3897; - $3899 = HEAP32[$3898>>2]|0; - $3900 = (($3897) + 4)|0; - $3901 = $3900; - $3902 = HEAP32[$3901>>2]|0; - $3903 = (_sqlite3BtreeMovetoUnpacked($3896,0,$3899,$3902,0,$res27)|0); - HEAP32[$rc>>2] = $3903; - $3904 = HEAP32[$rc>>2]|0; - $3905 = ($3904|0)!=(0); - if ($3905) { - break L11; - } - $3906 = HEAP32[$res27>>2]|0; - $3907 = ($3906|0)==(0); - if ($3907) { - $3908 = HEAP32[$pC28>>2]|0; - $3909 = (($3908) + 26|0); - HEAP8[$3909>>0] = 1; - $3910 = $iKey; - $3911 = $3910; - $3912 = HEAP32[$3911>>2]|0; - $3913 = (($3910) + 4)|0; - $3914 = $3913; - $3915 = HEAP32[$3914>>2]|0; - $3916 = HEAP32[$pC28>>2]|0; - $3917 = (($3916) + 56|0); - $3918 = $3917; - $3919 = $3918; - HEAP32[$3919>>2] = $3912; - $3920 = (($3918) + 4)|0; - $3921 = $3920; - HEAP32[$3921>>2] = $3915; - } - } else { - $3922 = (($3832) + 16|0); - $3923 = HEAP32[$3922>>2]|0; - HEAP32[$nField29>>2] = $3923; - $3924 = HEAP32[$pC28>>2]|0; - $3925 = (($3924) + 8|0); - $3926 = HEAP32[$3925>>2]|0; - HEAP32[$r>>2] = $3926; - $3927 = HEAP32[$nField29>>2]|0; - $3928 = $3927&65535; - $3929 = (($r) + 4|0); - HEAP16[$3929>>1] = $3928; - $3930 = HEAP32[$oc>>2]|0; - $3931 = (($3930) - 59)|0; - $3932 = 1 & $3931; - $3933 = ($3932|0)!=(0); - $3934 = $3933 ? -1 : 1; - $3935 = $3934&255; - $3936 = (($r) + 6|0); - HEAP8[$3936>>0] = $3935; - $3937 = HEAP32[$pOp>>2]|0; - $3938 = (($3937) + 12|0); - $3939 = HEAP32[$3938>>2]|0; - $3940 = HEAP32[$aMem>>2]|0; - $3941 = (($3940) + (($3939*40)|0)|0); - $3942 = (($r) + 8|0); - HEAP32[$3942>>2] = $3941; - $3943 = (($r) + 8|0); - $3944 = HEAP32[$3943>>2]|0; - $3945 = (($3944) + 28|0); - $3946 = HEAP16[$3945>>1]|0; - $3947 = $3946&65535; - $3948 = $3947 & 16384; - $3949 = ($3948|0)!=(0); - if ($3949) { - $3950 = (($r) + 8|0); - $3951 = HEAP32[$3950>>2]|0; - (_sqlite3VdbeMemExpandBlob($3951)|0); - } - $3952 = HEAP32[$pC28>>2]|0; - $3953 = HEAP32[$3952>>2]|0; - $3954 = (_sqlite3BtreeMovetoUnpacked($3953,$r,0,0,0,$res27)|0); - HEAP32[$rc>>2] = $3954; - $3955 = HEAP32[$rc>>2]|0; - $3956 = ($3955|0)!=(0); - if ($3956) { - break L11; - } - $3957 = HEAP32[$pC28>>2]|0; - $3958 = (($3957) + 26|0); - HEAP8[$3958>>0] = 0; - } - $3959 = HEAP32[$pC28>>2]|0; - $3960 = (($3959) + 27|0); - HEAP8[$3960>>0] = 0; - $3961 = HEAP32[$pC28>>2]|0; - $3962 = (($3961) + 68|0); - HEAP32[$3962>>2] = 0; - $3963 = HEAP32[$oc>>2]|0; - $3964 = ($3963|0)>=(61); - $3965 = HEAP32[$res27>>2]|0; - L611: do { - if ($3964) { - $3966 = ($3965|0)<(0); - do { - if (!($3966)) { - $3967 = HEAP32[$res27>>2]|0; - $3968 = ($3967|0)==(0); - if ($3968) { - $3969 = HEAP32[$oc>>2]|0; - $3970 = ($3969|0)==(62); - if ($3970) { - break; - } - } - HEAP32[$res27>>2] = 0; - break L611; - } - } while(0); - HEAP32[$res27>>2] = 0; - $3971 = HEAP32[$pC28>>2]|0; - $3972 = HEAP32[$3971>>2]|0; - $3973 = (_sqlite3BtreeNext($3972,$res27)|0); - HEAP32[$rc>>2] = $3973; - $3974 = HEAP32[$rc>>2]|0; - $3975 = ($3974|0)!=(0); - if ($3975) { - break L11; - } - $3976 = HEAP32[$pC28>>2]|0; - $3977 = (($3976) + 26|0); - HEAP8[$3977>>0] = 0; - } else { - $3978 = ($3965|0)>(0); - do { - if (!($3978)) { - $3979 = HEAP32[$res27>>2]|0; - $3980 = ($3979|0)==(0); - if ($3980) { - $3981 = HEAP32[$oc>>2]|0; - $3982 = ($3981|0)==(59); - if ($3982) { - break; - } - } - $3990 = HEAP32[$pC28>>2]|0; - $3991 = HEAP32[$3990>>2]|0; - $3992 = (_sqlite3BtreeEof($3991)|0); - HEAP32[$res27>>2] = $3992; - break L611; - } - } while(0); - HEAP32[$res27>>2] = 0; - $3983 = HEAP32[$pC28>>2]|0; - $3984 = HEAP32[$3983>>2]|0; - $3985 = (_sqlite3BtreePrevious($3984,$res27)|0); - HEAP32[$rc>>2] = $3985; - $3986 = HEAP32[$rc>>2]|0; - $3987 = ($3986|0)!=(0); - if ($3987) { - break L11; - } - $3988 = HEAP32[$pC28>>2]|0; - $3989 = (($3988) + 26|0); - HEAP8[$3989>>0] = 0; - } - } while(0); - $3993 = HEAP32[$res27>>2]|0; - $3994 = ($3993|0)!=(0); - if ($3994) { - $3995 = HEAP32[$pOp>>2]|0; - $3996 = (($3995) + 8|0); - $3997 = HEAP32[$3996>>2]|0; - $3998 = (($3997) - 1)|0; - HEAP32[$pc>>2] = $3998; - } - break; - } - case 63: { - $3999 = HEAP32[$pOp>>2]|0; - $4000 = (($3999) + 4|0); - $4001 = HEAP32[$4000>>2]|0; - $4002 = HEAP32[$0>>2]|0; - $4003 = (($4002) + 56|0); - $4004 = HEAP32[$4003>>2]|0; - $4005 = (($4004) + ($4001<<2)|0); - $4006 = HEAP32[$4005>>2]|0; - HEAP32[$pC30>>2] = $4006; - $4007 = HEAP32[$pC30>>2]|0; - $4008 = (($4007) + 25|0); - HEAP8[$4008>>0] = 0; - $4009 = HEAP32[$pOp>>2]|0; - $4010 = (($4009) + 8|0); - $4011 = HEAP32[$4010>>2]|0; - $4012 = HEAP32[$aMem>>2]|0; - $4013 = (($4012) + (($4011*40)|0)|0); - HEAP32[$pIn2>>2] = $4013; - $4014 = HEAP32[$pIn2>>2]|0; - $4015 = (_sqlite3VdbeIntValue($4014)|0); - $4016 = tempRet0; - $4017 = HEAP32[$pC30>>2]|0; - $4018 = (($4017) + 48|0); - $4019 = $4018; - $4020 = $4019; - HEAP32[$4020>>2] = $4015; - $4021 = (($4019) + 4)|0; - $4022 = $4021; - HEAP32[$4022>>2] = $4016; - $4023 = HEAP32[$pC30>>2]|0; - $4024 = (($4023) + 26|0); - HEAP8[$4024>>0] = 0; - $4025 = HEAP32[$pC30>>2]|0; - $4026 = (($4025) + 27|0); - HEAP8[$4026>>0] = 1; - break; - } - case 66: case 65: case 64: { - $4027 = HEAP32[$pOp>>2]|0; - $4028 = (($4027) + 4|0); - $4029 = HEAP32[$4028>>2]|0; - $4030 = HEAP32[$0>>2]|0; - $4031 = (($4030) + 56|0); - $4032 = HEAP32[$4031>>2]|0; - $4033 = (($4032) + ($4029<<2)|0); - $4034 = HEAP32[$4033>>2]|0; - HEAP32[$pC32>>2] = $4034; - $4035 = HEAP32[$pOp>>2]|0; - $4036 = (($4035) + 12|0); - $4037 = HEAP32[$4036>>2]|0; - $4038 = HEAP32[$aMem>>2]|0; - $4039 = (($4038) + (($4037*40)|0)|0); - HEAP32[$pIn3>>2] = $4039; - HEAP32[$pFree>>2] = 0; - $4040 = HEAP32[$pOp>>2]|0; - $4041 = (($4040) + 16|0); - $4042 = HEAP32[$4041>>2]|0; - $4043 = ($4042|0)>(0); - $4044 = HEAP32[$pC32>>2]|0; - $4045 = (($4044) + 8|0); - $4046 = HEAP32[$4045>>2]|0; - if ($4043) { - HEAP32[$r34>>2] = $4046; - $4047 = HEAP32[$pOp>>2]|0; - $4048 = (($4047) + 16|0); - $4049 = HEAP32[$4048>>2]|0; - $4050 = $4049&65535; - $4051 = (($r34) + 4|0); - HEAP16[$4051>>1] = $4050; - $4052 = HEAP32[$pIn3>>2]|0; - $4053 = (($r34) + 8|0); - HEAP32[$4053>>2] = $4052; - HEAP32[$ii31>>2] = 0; - while(1) { - $4054 = HEAP32[$ii31>>2]|0; - $4055 = (($r34) + 4|0); - $4056 = HEAP16[$4055>>1]|0; - $4057 = $4056&65535; - $4058 = ($4054|0)<($4057|0); - if (!($4058)) { - break; - } - $4059 = HEAP32[$ii31>>2]|0; - $4060 = (($r34) + 8|0); - $4061 = HEAP32[$4060>>2]|0; - $4062 = (($4061) + (($4059*40)|0)|0); - $4063 = (($4062) + 28|0); - $4064 = HEAP16[$4063>>1]|0; - $4065 = $4064&65535; - $4066 = $4065 & 16384; - $4067 = ($4066|0)!=(0); - if ($4067) { - $4068 = HEAP32[$ii31>>2]|0; - $4069 = (($r34) + 8|0); - $4070 = HEAP32[$4069>>2]|0; - $4071 = (($4070) + (($4068*40)|0)|0); - (_sqlite3VdbeMemExpandBlob($4071)|0); - } - $4072 = HEAP32[$ii31>>2]|0; - $4073 = (($4072) + 1)|0; - HEAP32[$ii31>>2] = $4073; - } - HEAP32[$pIdxKey>>2] = $r34; - } else { - $4074 = (_sqlite3VdbeAllocUnpackedRecord($4046,$aTempRec,191,$pFree)|0); - HEAP32[$pIdxKey>>2] = $4074; - $4075 = HEAP32[$pIdxKey>>2]|0; - $4076 = ($4075|0)==(0|0); - if ($4076) { - label = 900; - break L1; - } - $4077 = HEAP32[$pC32>>2]|0; - $4078 = (($4077) + 8|0); - $4079 = HEAP32[$4078>>2]|0; - $4080 = HEAP32[$pIn3>>2]|0; - $4081 = (($4080) + 24|0); - $4082 = HEAP32[$4081>>2]|0; - $4083 = HEAP32[$pIn3>>2]|0; - $4084 = (($4083) + 4|0); - $4085 = HEAP32[$4084>>2]|0; - $4086 = HEAP32[$pIdxKey>>2]|0; - _sqlite3VdbeRecordUnpack($4079,$4082,$4085,$4086); - } - $4087 = HEAP32[$pIdxKey>>2]|0; - $4088 = (($4087) + 6|0); - HEAP8[$4088>>0] = 0; - $4089 = HEAP32[$pOp>>2]|0; - $4090 = HEAP8[$4089>>0]|0; - $4091 = $4090&255; - $4092 = ($4091|0)==(64); - L644: do { - if ($4092) { - HEAP32[$ii31>>2] = 0; - while(1) { - $4093 = HEAP32[$ii31>>2]|0; - $4094 = (($r34) + 4|0); - $4095 = HEAP16[$4094>>1]|0; - $4096 = $4095&65535; - $4097 = ($4093|0)<($4096|0); - if (!($4097)) { - break L644; - } - $4098 = HEAP32[$ii31>>2]|0; - $4099 = (($r34) + 8|0); - $4100 = HEAP32[$4099>>2]|0; - $4101 = (($4100) + (($4098*40)|0)|0); - $4102 = (($4101) + 28|0); - $4103 = HEAP16[$4102>>1]|0; - $4104 = $4103&65535; - $4105 = $4104 & 1; - $4106 = ($4105|0)!=(0); - if ($4106) { - break; - } - $4111 = HEAP32[$ii31>>2]|0; - $4112 = (($4111) + 1)|0; - HEAP32[$ii31>>2] = $4112; - } - $4107 = HEAP32[$pOp>>2]|0; - $4108 = (($4107) + 8|0); - $4109 = HEAP32[$4108>>2]|0; - $4110 = (($4109) - 1)|0; - HEAP32[$pc>>2] = $4110; - } - } while(0); - $4113 = HEAP32[$pC32>>2]|0; - $4114 = HEAP32[$4113>>2]|0; - $4115 = HEAP32[$pIdxKey>>2]|0; - $4116 = (_sqlite3BtreeMovetoUnpacked($4114,$4115,0,0,0,$res33)|0); - HEAP32[$rc>>2] = $4116; - $4117 = HEAP32[$pOp>>2]|0; - $4118 = (($4117) + 16|0); - $4119 = HEAP32[$4118>>2]|0; - $4120 = ($4119|0)==(0); - if ($4120) { - $4121 = HEAP32[$db>>2]|0; - $4122 = HEAP32[$pFree>>2]|0; - _sqlite3DbFree($4121,$4122); - } - $4123 = HEAP32[$rc>>2]|0; - $4124 = ($4123|0)!=(0); - if (!($4124)) { - $4125 = HEAP32[$res33>>2]|0; - $4126 = HEAP32[$pC32>>2]|0; - $4127 = (($4126) + 12|0); - HEAP32[$4127>>2] = $4125; - $4128 = HEAP32[$res33>>2]|0; - $4129 = ($4128|0)==(0); - $4130 = $4129&1; - HEAP32[$alreadyExists>>2] = $4130; - $4131 = HEAP32[$alreadyExists>>2]|0; - $4132 = (1 - ($4131))|0; - $4133 = $4132&255; - $4134 = HEAP32[$pC32>>2]|0; - $4135 = (($4134) + 25|0); - HEAP8[$4135>>0] = $4133; - $4136 = HEAP32[$pC32>>2]|0; - $4137 = (($4136) + 27|0); - HEAP8[$4137>>0] = 0; - $4138 = HEAP32[$pC32>>2]|0; - $4139 = (($4138) + 68|0); - HEAP32[$4139>>2] = 0; - $4140 = HEAP32[$pOp>>2]|0; - $4141 = HEAP8[$4140>>0]|0; - $4142 = $4141&255; - $4143 = ($4142|0)==(66); - $4144 = HEAP32[$alreadyExists>>2]|0; - $4145 = ($4144|0)!=(0); - if ($4143) { - if (!($4145)) { - break L21; - } - $4146 = HEAP32[$pOp>>2]|0; - $4147 = (($4146) + 8|0); - $4148 = HEAP32[$4147>>2]|0; - $4149 = (($4148) - 1)|0; - HEAP32[$pc>>2] = $4149; - break L21; - } else { - if ($4145) { - break L21; - } - $4150 = HEAP32[$pOp>>2]|0; - $4151 = (($4150) + 8|0); - $4152 = HEAP32[$4151>>2]|0; - $4153 = (($4152) - 1)|0; - HEAP32[$pc>>2] = $4153; - break L21; - } - } - break; - } - case 67: { - $4154 = HEAP32[$pOp>>2]|0; - $4155 = (($4154) + 12|0); - $4156 = HEAP32[$4155>>2]|0; - $4157 = HEAP32[$aMem>>2]|0; - $4158 = (($4157) + (($4156*40)|0)|0); - HEAP32[$pIn3>>2] = $4158; - $4159 = HEAP32[$pOp>>2]|0; - $4160 = (($4159) + 4|0); - $4161 = HEAP32[$4160>>2]|0; - $4162 = HEAP32[$0>>2]|0; - $4163 = (($4162) + 56|0); - $4164 = HEAP32[$4163>>2]|0; - $4165 = (($4164) + ($4161<<2)|0); - $4166 = HEAP32[$4165>>2]|0; - HEAP32[$pC35>>2] = $4166; - $4167 = HEAP32[$pC35>>2]|0; - $4168 = HEAP32[$4167>>2]|0; - HEAP32[$pCrsr36>>2] = $4168; - HEAP32[$res37>>2] = 0; - $4169 = HEAP32[$pIn3>>2]|0; - $4170 = (($4169) + 16|0); - $4171 = $4170; - $4172 = $4171; - $4173 = HEAP32[$4172>>2]|0; - $4174 = (($4171) + 4)|0; - $4175 = $4174; - $4176 = HEAP32[$4175>>2]|0; - $4177 = $iKey38; - $4178 = $4177; - HEAP32[$4178>>2] = $4173; - $4179 = (($4177) + 4)|0; - $4180 = $4179; - HEAP32[$4180>>2] = $4176; - $4181 = HEAP32[$pCrsr36>>2]|0; - $4182 = $iKey38; - $4183 = $4182; - $4184 = HEAP32[$4183>>2]|0; - $4185 = (($4182) + 4)|0; - $4186 = $4185; - $4187 = HEAP32[$4186>>2]|0; - $4188 = (_sqlite3BtreeMovetoUnpacked($4181,0,$4184,$4187,0,$res37)|0); - HEAP32[$rc>>2] = $4188; - $4189 = HEAP32[$pIn3>>2]|0; - $4190 = (($4189) + 16|0); - $4191 = $4190; - $4192 = $4191; - $4193 = HEAP32[$4192>>2]|0; - $4194 = (($4191) + 4)|0; - $4195 = $4194; - $4196 = HEAP32[$4195>>2]|0; - $4197 = HEAP32[$pC35>>2]|0; - $4198 = (($4197) + 56|0); - $4199 = $4198; - $4200 = $4199; - HEAP32[$4200>>2] = $4193; - $4201 = (($4199) + 4)|0; - $4202 = $4201; - HEAP32[$4202>>2] = $4196; - $4203 = HEAP32[$res37>>2]|0; - $4204 = ($4203|0)==(0); - $4205 = $4204 ? 1 : 0; - $4206 = $4205&255; - $4207 = HEAP32[$pC35>>2]|0; - $4208 = (($4207) + 26|0); - HEAP8[$4208>>0] = $4206; - $4209 = HEAP32[$pC35>>2]|0; - $4210 = (($4209) + 25|0); - HEAP8[$4210>>0] = 0; - $4211 = HEAP32[$pC35>>2]|0; - $4212 = (($4211) + 68|0); - HEAP32[$4212>>2] = 0; - $4213 = HEAP32[$pC35>>2]|0; - $4214 = (($4213) + 27|0); - HEAP8[$4214>>0] = 0; - $4215 = HEAP32[$res37>>2]|0; - $4216 = ($4215|0)!=(0); - if ($4216) { - $4217 = HEAP32[$pOp>>2]|0; - $4218 = (($4217) + 8|0); - $4219 = HEAP32[$4218>>2]|0; - $4220 = (($4219) - 1)|0; - HEAP32[$pc>>2] = $4220; - } - $4221 = HEAP32[$res37>>2]|0; - $4222 = HEAP32[$pC35>>2]|0; - $4223 = (($4222) + 12|0); - HEAP32[$4223>>2] = $4221; - break; - } - case 68: { - $4224 = HEAP32[$pOp>>2]|0; - $4225 = (($4224) + 4|0); - $4226 = HEAP32[$4225>>2]|0; - $4227 = HEAP32[$0>>2]|0; - $4228 = (($4227) + 56|0); - $4229 = HEAP32[$4228>>2]|0; - $4230 = (($4229) + ($4226<<2)|0); - $4231 = HEAP32[$4230>>2]|0; - $4232 = (($4231) + 40|0); - $4233 = $4232; - $4234 = $4233; - $4235 = HEAP32[$4234>>2]|0; - $4236 = (($4233) + 4)|0; - $4237 = $4236; - $4238 = HEAP32[$4237>>2]|0; - $4239 = (_i64Add(($4235|0),($4238|0),1,0)|0); - $4240 = tempRet0; - $4241 = $4232; - $4242 = $4241; - HEAP32[$4242>>2] = $4239; - $4243 = (($4241) + 4)|0; - $4244 = $4243; - HEAP32[$4244>>2] = $4240; - $4245 = HEAP32[$pOut>>2]|0; - $4246 = (($4245) + 16|0); - $4247 = $4246; - $4248 = $4247; - HEAP32[$4248>>2] = $4235; - $4249 = (($4247) + 4)|0; - $4250 = $4249; - HEAP32[$4250>>2] = $4238; - break; - } - case 69: { - $4251 = $v; - $4252 = $4251; - HEAP32[$4252>>2] = 0; - $4253 = (($4251) + 4)|0; - $4254 = $4253; - HEAP32[$4254>>2] = 0; - HEAP32[$res40>>2] = 0; - $4255 = HEAP32[$pOp>>2]|0; - $4256 = (($4255) + 4|0); - $4257 = HEAP32[$4256>>2]|0; - $4258 = HEAP32[$0>>2]|0; - $4259 = (($4258) + 56|0); - $4260 = HEAP32[$4259>>2]|0; - $4261 = (($4260) + ($4257<<2)|0); - $4262 = HEAP32[$4261>>2]|0; - HEAP32[$pC39>>2] = $4262; - $4263 = HEAP32[$pC39>>2]|0; - $4264 = HEAP32[$4263>>2]|0; - $4265 = ($4264|0)==(0|0); - if (!($4265)) { - $4266 = HEAP32[$pC39>>2]|0; - $4267 = (($4266) + 28|0); - $4268 = HEAP8[$4267>>0]|0; - $4269 = ($4268&255) >>> 1; - $4270 = $4269 & 1; - $4271 = $4270&255; - $4272 = ($4271|0)!=(0); - do { - if (!($4272)) { - $4273 = HEAP32[$pC39>>2]|0; - $4274 = HEAP32[$4273>>2]|0; - $4275 = (_sqlite3BtreeLast($4274,$res40)|0); - HEAP32[$rc>>2] = $4275; - $4276 = HEAP32[$rc>>2]|0; - $4277 = ($4276|0)!=(0); - if ($4277) { - break L11; - } - $4278 = HEAP32[$res40>>2]|0; - $4279 = ($4278|0)!=(0); - if ($4279) { - $4280 = $v; - $4281 = $4280; - HEAP32[$4281>>2] = 1; - $4282 = (($4280) + 4)|0; - $4283 = $4282; - HEAP32[$4283>>2] = 0; - break; - } - $4284 = HEAP32[$pC39>>2]|0; - $4285 = HEAP32[$4284>>2]|0; - $4286 = (_sqlite3BtreeKeySize($4285,$v)|0); - HEAP32[$rc>>2] = $4286; - $4287 = $v; - $4288 = $4287; - $4289 = HEAP32[$4288>>2]|0; - $4290 = (($4287) + 4)|0; - $4291 = $4290; - $4292 = HEAP32[$4291>>2]|0; - $4293 = ($4292|0)>(2147483647); - $4294 = ($4292|0)==(2147483647); - $4295 = ($4289>>>0)>=(4294967295); - $4296 = $4294 & $4295; - $4297 = $4293 | $4296; - if ($4297) { - $4298 = HEAP32[$pC39>>2]|0; - $4299 = (($4298) + 28|0); - $4300 = HEAP8[$4299>>0]|0; - $4301 = $4300 & -3; - $4302 = $4301 | 2; - HEAP8[$4299>>0] = $4302; - break; - } else { - $4303 = $v; - $4304 = $4303; - $4305 = HEAP32[$4304>>2]|0; - $4306 = (($4303) + 4)|0; - $4307 = $4306; - $4308 = HEAP32[$4307>>2]|0; - $4309 = (_i64Add(($4305|0),($4308|0),1,0)|0); - $4310 = tempRet0; - $4311 = $v; - $4312 = $4311; - HEAP32[$4312>>2] = $4309; - $4313 = (($4311) + 4)|0; - $4314 = $4313; - HEAP32[$4314>>2] = $4310; - break; - } - } - } while(0); - $4315 = HEAP32[$pOp>>2]|0; - $4316 = (($4315) + 12|0); - $4317 = HEAP32[$4316>>2]|0; - $4318 = ($4317|0)!=(0); - if ($4318) { - $4319 = HEAP32[$0>>2]|0; - $4320 = (($4319) + 176|0); - $4321 = HEAP32[$4320>>2]|0; - $4322 = ($4321|0)!=(0|0); - if ($4322) { - $4323 = HEAP32[$0>>2]|0; - $4324 = (($4323) + 176|0); - $4325 = HEAP32[$4324>>2]|0; - HEAP32[$pFrame43>>2] = $4325; - while(1) { - $4326 = HEAP32[$pFrame43>>2]|0; - $4327 = (($4326) + 4|0); - $4328 = HEAP32[$4327>>2]|0; - $4329 = ($4328|0)!=(0|0); - if (!($4329)) { - break; - } - $4330 = HEAP32[$pFrame43>>2]|0; - $4331 = (($4330) + 4|0); - $4332 = HEAP32[$4331>>2]|0; - HEAP32[$pFrame43>>2] = $4332; - } - $4333 = HEAP32[$pOp>>2]|0; - $4334 = (($4333) + 12|0); - $4335 = HEAP32[$4334>>2]|0; - $4336 = HEAP32[$pFrame43>>2]|0; - $4337 = (($4336) + 12|0); - $4338 = HEAP32[$4337>>2]|0; - $4339 = (($4338) + (($4335*40)|0)|0); - HEAP32[$pMem42>>2] = $4339; - } else { - $4340 = HEAP32[$pOp>>2]|0; - $4341 = (($4340) + 12|0); - $4342 = HEAP32[$4341>>2]|0; - $4343 = HEAP32[$aMem>>2]|0; - $4344 = (($4343) + (($4342*40)|0)|0); - HEAP32[$pMem42>>2] = $4344; - } - $4345 = HEAP32[$pMem42>>2]|0; - (_sqlite3VdbeMemIntegerify($4345)|0); - $4346 = HEAP32[$pMem42>>2]|0; - $4347 = (($4346) + 16|0); - $4348 = $4347; - $4349 = $4348; - $4350 = HEAP32[$4349>>2]|0; - $4351 = (($4348) + 4)|0; - $4352 = $4351; - $4353 = HEAP32[$4352>>2]|0; - $4354 = ($4350|0)==(-1); - $4355 = ($4353|0)==(2147483647); - $4356 = $4354 & $4355; - if ($4356) { - label = 572; - break L11; - } - $4357 = HEAP32[$pC39>>2]|0; - $4358 = (($4357) + 28|0); - $4359 = HEAP8[$4358>>0]|0; - $4360 = ($4359&255) >>> 1; - $4361 = $4360 & 1; - $4362 = $4361&255; - $4363 = ($4362|0)!=(0); - if ($4363) { - label = 572; - break L11; - } - $4364 = $v; - $4365 = $4364; - $4366 = HEAP32[$4365>>2]|0; - $4367 = (($4364) + 4)|0; - $4368 = $4367; - $4369 = HEAP32[$4368>>2]|0; - $4370 = HEAP32[$pMem42>>2]|0; - $4371 = (($4370) + 16|0); - $4372 = $4371; - $4373 = $4372; - $4374 = HEAP32[$4373>>2]|0; - $4375 = (($4372) + 4)|0; - $4376 = $4375; - $4377 = HEAP32[$4376>>2]|0; - $4378 = (_i64Add(($4374|0),($4377|0),1,0)|0); - $4379 = tempRet0; - $4380 = ($4369|0)<($4379|0); - $4381 = ($4369|0)==($4379|0); - $4382 = ($4366>>>0)<($4378>>>0); - $4383 = $4381 & $4382; - $4384 = $4380 | $4383; - if ($4384) { - $4385 = HEAP32[$pMem42>>2]|0; - $4386 = (($4385) + 16|0); - $4387 = $4386; - $4388 = $4387; - $4389 = HEAP32[$4388>>2]|0; - $4390 = (($4387) + 4)|0; - $4391 = $4390; - $4392 = HEAP32[$4391>>2]|0; - $4393 = (_i64Add(($4389|0),($4392|0),1,0)|0); - $4394 = tempRet0; - $4395 = $v; - $4396 = $4395; - HEAP32[$4396>>2] = $4393; - $4397 = (($4395) + 4)|0; - $4398 = $4397; - HEAP32[$4398>>2] = $4394; - } - $4399 = $v; - $4400 = $4399; - $4401 = HEAP32[$4400>>2]|0; - $4402 = (($4399) + 4)|0; - $4403 = $4402; - $4404 = HEAP32[$4403>>2]|0; - $4405 = HEAP32[$pMem42>>2]|0; - $4406 = (($4405) + 16|0); - $4407 = $4406; - $4408 = $4407; - HEAP32[$4408>>2] = $4401; - $4409 = (($4407) + 4)|0; - $4410 = $4409; - HEAP32[$4410>>2] = $4404; - } - $4411 = HEAP32[$pC39>>2]|0; - $4412 = (($4411) + 28|0); - $4413 = HEAP8[$4412>>0]|0; - $4414 = ($4413&255) >>> 1; - $4415 = $4414 & 1; - $4416 = $4415&255; - $4417 = ($4416|0)!=(0); - if ($4417) { - $4418 = $lastRowid; - $4419 = $4418; - $4420 = HEAP32[$4419>>2]|0; - $4421 = (($4418) + 4)|0; - $4422 = $4421; - $4423 = HEAP32[$4422>>2]|0; - $4424 = $v; - $4425 = $4424; - HEAP32[$4425>>2] = $4420; - $4426 = (($4424) + 4)|0; - $4427 = $4426; - HEAP32[$4427>>2] = $4423; - $4428 = $v; - $4429 = $4428; - $4430 = HEAP32[$4429>>2]|0; - $4431 = (($4428) + 4)|0; - $4432 = $4431; - $4433 = HEAP32[$4432>>2]|0; - $4434 = $4433 & 1073741823; - $4435 = $v; - $4436 = $4435; - HEAP32[$4436>>2] = $4430; - $4437 = (($4435) + 4)|0; - $4438 = $4437; - HEAP32[$4438>>2] = $4434; - $4439 = $v; - $4440 = $4439; - $4441 = HEAP32[$4440>>2]|0; - $4442 = (($4439) + 4)|0; - $4443 = $4442; - $4444 = HEAP32[$4443>>2]|0; - $4445 = (_i64Add(($4441|0),($4444|0),1,0)|0); - $4446 = tempRet0; - $4447 = $v; - $4448 = $4447; - HEAP32[$4448>>2] = $4445; - $4449 = (($4447) + 4)|0; - $4450 = $4449; - HEAP32[$4450>>2] = $4446; - HEAP32[$cnt41>>2] = 0; - while(1) { - $4451 = HEAP32[$pC39>>2]|0; - $4452 = HEAP32[$4451>>2]|0; - $4453 = $v; - $4454 = $4453; - $4455 = HEAP32[$4454>>2]|0; - $4456 = (($4453) + 4)|0; - $4457 = $4456; - $4458 = HEAP32[$4457>>2]|0; - $4459 = (_sqlite3BtreeMovetoUnpacked($4452,0,$4455,$4458,0,$res40)|0); - HEAP32[$rc>>2] = $4459; - $4460 = ($4459|0)==(0); - $4461 = HEAP32[$res40>>2]|0; - $4462 = ($4461|0)==(0); - $or$cond = $4460 & $4462; - if (!($or$cond)) { - break; - } - $4463 = HEAP32[$cnt41>>2]|0; - $4464 = (($4463) + 1)|0; - HEAP32[$cnt41>>2] = $4464; - $4465 = ($4464|0)<(100); - if (!($4465)) { - break; - } - _sqlite3_randomness(8,$v); - $4466 = HEAP32[$cnt41>>2]|0; - $4467 = ($4466|0)<(5); - $4468 = $v; - $4469 = $4468; - $4470 = HEAP32[$4469>>2]|0; - $4471 = (($4468) + 4)|0; - $4472 = $4471; - $4473 = HEAP32[$4472>>2]|0; - if ($4467) { - $4474 = $4470 & 16777215; - $4475 = $v; - $4476 = $4475; - HEAP32[$4476>>2] = $4474; - $4477 = (($4475) + 4)|0; - $4478 = $4477; - HEAP32[$4478>>2] = 0; - } else { - $4479 = $4473 & 1073741823; - $4480 = $v; - $4481 = $4480; - HEAP32[$4481>>2] = $4470; - $4482 = (($4480) + 4)|0; - $4483 = $4482; - HEAP32[$4483>>2] = $4479; - } - $4484 = $v; - $4485 = $4484; - $4486 = HEAP32[$4485>>2]|0; - $4487 = (($4484) + 4)|0; - $4488 = $4487; - $4489 = HEAP32[$4488>>2]|0; - $4490 = (_i64Add(($4486|0),($4489|0),1,0)|0); - $4491 = tempRet0; - $4492 = $v; - $4493 = $4492; - HEAP32[$4493>>2] = $4490; - $4494 = (($4492) + 4)|0; - $4495 = $4494; - HEAP32[$4495>>2] = $4491; - } - $4496 = HEAP32[$rc>>2]|0; - $4497 = ($4496|0)==(0); - if ($4497) { - $4498 = HEAP32[$res40>>2]|0; - $4499 = ($4498|0)==(0); - if ($4499) { - label = 586; - break L11; - } - } - } - $4500 = HEAP32[$pC39>>2]|0; - $4501 = (($4500) + 26|0); - HEAP8[$4501>>0] = 0; - $4502 = HEAP32[$pC39>>2]|0; - $4503 = (($4502) + 27|0); - HEAP8[$4503>>0] = 0; - $4504 = HEAP32[$pC39>>2]|0; - $4505 = (($4504) + 68|0); - HEAP32[$4505>>2] = 0; - } - $4506 = $v; - $4507 = $4506; - $4508 = HEAP32[$4507>>2]|0; - $4509 = (($4506) + 4)|0; - $4510 = $4509; - $4511 = HEAP32[$4510>>2]|0; - $4512 = HEAP32[$pOut>>2]|0; - $4513 = (($4512) + 16|0); - $4514 = $4513; - $4515 = $4514; - HEAP32[$4515>>2] = $4508; - $4516 = (($4514) + 4)|0; - $4517 = $4516; - HEAP32[$4517>>2] = $4511; - break; - } - case 73: case 70: { - $4518 = HEAP32[$pOp>>2]|0; - $4519 = (($4518) + 8|0); - $4520 = HEAP32[$4519>>2]|0; - $4521 = HEAP32[$aMem>>2]|0; - $4522 = (($4521) + (($4520*40)|0)|0); - HEAP32[$pData>>2] = $4522; - $4523 = HEAP32[$pOp>>2]|0; - $4524 = (($4523) + 4|0); - $4525 = HEAP32[$4524>>2]|0; - $4526 = HEAP32[$0>>2]|0; - $4527 = (($4526) + 56|0); - $4528 = HEAP32[$4527>>2]|0; - $4529 = (($4528) + ($4525<<2)|0); - $4530 = HEAP32[$4529>>2]|0; - HEAP32[$pC45>>2] = $4530; - $4531 = HEAP32[$pOp>>2]|0; - $4532 = HEAP8[$4531>>0]|0; - $4533 = $4532&255; - $4534 = ($4533|0)==(70); - $4535 = HEAP32[$pOp>>2]|0; - $4536 = (($4535) + 12|0); - $4537 = HEAP32[$4536>>2]|0; - if ($4534) { - $4538 = HEAP32[$aMem>>2]|0; - $4539 = (($4538) + (($4537*40)|0)|0); - HEAP32[$pKey>>2] = $4539; - $4540 = HEAP32[$pKey>>2]|0; - $4541 = (($4540) + 16|0); - $4542 = $4541; - $4543 = $4542; - $4544 = HEAP32[$4543>>2]|0; - $4545 = (($4542) + 4)|0; - $4546 = $4545; - $4547 = HEAP32[$4546>>2]|0; - $4548 = $iKey44; - $4549 = $4548; - HEAP32[$4549>>2] = $4544; - $4550 = (($4548) + 4)|0; - $4551 = $4550; - HEAP32[$4551>>2] = $4547; - } else { - $4552 = ($4537|0)<(0); - $4553 = $4552 << 31 >> 31; - $4554 = $iKey44; - $4555 = $4554; - HEAP32[$4555>>2] = $4537; - $4556 = (($4554) + 4)|0; - $4557 = $4556; - HEAP32[$4557>>2] = $4553; - } - $4558 = HEAP32[$pOp>>2]|0; - $4559 = (($4558) + 3|0); - $4560 = HEAP8[$4559>>0]|0; - $4561 = $4560&255; - $4562 = $4561 & 1; - $4563 = ($4562|0)!=(0); - if ($4563) { - $4564 = HEAP32[$0>>2]|0; - $4565 = (($4564) + 92|0); - $4566 = HEAP32[$4565>>2]|0; - $4567 = (($4566) + 1)|0; - HEAP32[$4565>>2] = $4567; - } - $4568 = HEAP32[$pOp>>2]|0; - $4569 = (($4568) + 3|0); - $4570 = HEAP8[$4569>>0]|0; - $4571 = $4570&255; - $4572 = $4571 & 2; - $4573 = ($4572|0)!=(0); - if ($4573) { - $4574 = $iKey44; - $4575 = $4574; - $4576 = HEAP32[$4575>>2]|0; - $4577 = (($4574) + 4)|0; - $4578 = $4577; - $4579 = HEAP32[$4578>>2]|0; - $4580 = $lastRowid; - $4581 = $4580; - HEAP32[$4581>>2] = $4576; - $4582 = (($4580) + 4)|0; - $4583 = $4582; - HEAP32[$4583>>2] = $4579; - $4584 = HEAP32[$db>>2]|0; - $4585 = (($4584) + 32|0); - $4586 = $4585; - $4587 = $4586; - HEAP32[$4587>>2] = $4576; - $4588 = (($4586) + 4)|0; - $4589 = $4588; - HEAP32[$4589>>2] = $4579; - } - $4590 = HEAP32[$pData>>2]|0; - $4591 = (($4590) + 28|0); - $4592 = HEAP16[$4591>>1]|0; - $4593 = $4592&65535; - $4594 = $4593 & 1; - $4595 = ($4594|0)!=(0); - if ($4595) { - $4596 = HEAP32[$pData>>2]|0; - $4597 = (($4596) + 4|0); - HEAP32[$4597>>2] = 0; - $4598 = HEAP32[$pData>>2]|0; - $4599 = (($4598) + 24|0); - HEAP32[$4599>>2] = 0; - } - $4600 = HEAP32[$pOp>>2]|0; - $4601 = (($4600) + 3|0); - $4602 = HEAP8[$4601>>0]|0; - $4603 = $4602&255; - $4604 = $4603 & 16; - $4605 = ($4604|0)!=(0); - if ($4605) { - $4606 = HEAP32[$pC45>>2]|0; - $4607 = (($4606) + 12|0); - $4608 = HEAP32[$4607>>2]|0; - $4609 = $4608; - } else { - $4609 = 0; - } - HEAP32[$seekResult>>2] = $4609; - $4610 = HEAP32[$pData>>2]|0; - $4611 = (($4610) + 28|0); - $4612 = HEAP16[$4611>>1]|0; - $4613 = $4612&65535; - $4614 = $4613 & 16384; - $4615 = ($4614|0)!=(0); - if ($4615) { - $4616 = HEAP32[$pData>>2]|0; - $4617 = (($4616) + 16|0); - $4618 = HEAP32[$4617>>2]|0; - HEAP32[$nZero46>>2] = $4618; - } else { - HEAP32[$nZero46>>2] = 0; - } - $4619 = HEAP32[$pC45>>2]|0; - $4620 = HEAP32[$4619>>2]|0; - $4621 = $iKey44; - $4622 = $4621; - $4623 = HEAP32[$4622>>2]|0; - $4624 = (($4621) + 4)|0; - $4625 = $4624; - $4626 = HEAP32[$4625>>2]|0; - $4627 = HEAP32[$pData>>2]|0; - $4628 = (($4627) + 4|0); - $4629 = HEAP32[$4628>>2]|0; - $4630 = HEAP32[$pData>>2]|0; - $4631 = (($4630) + 24|0); - $4632 = HEAP32[$4631>>2]|0; - $4633 = HEAP32[$nZero46>>2]|0; - $4634 = HEAP32[$pOp>>2]|0; - $4635 = (($4634) + 3|0); - $4636 = HEAP8[$4635>>0]|0; - $4637 = $4636&255; - $4638 = $4637 & 8; - $4639 = ($4638|0)!=(0); - $4640 = $4639&1; - $4641 = HEAP32[$seekResult>>2]|0; - $4642 = (_sqlite3BtreeInsert($4620,0,$4623,$4626,$4629,$4632,$4633,$4640,$4641)|0); - HEAP32[$rc>>2] = $4642; - $4643 = HEAP32[$pC45>>2]|0; - $4644 = (($4643) + 26|0); - HEAP8[$4644>>0] = 0; - $4645 = HEAP32[$pC45>>2]|0; - $4646 = (($4645) + 27|0); - HEAP8[$4646>>0] = 0; - $4647 = HEAP32[$pC45>>2]|0; - $4648 = (($4647) + 68|0); - HEAP32[$4648>>2] = 0; - $4649 = HEAP32[$rc>>2]|0; - $4650 = ($4649|0)==(0); - if ($4650) { - $4651 = HEAP32[$db>>2]|0; - $4652 = (($4651) + 200|0); - $4653 = HEAP32[$4652>>2]|0; - $4654 = ($4653|0)!=(0|0); - if ($4654) { - $4655 = HEAP32[$pOp>>2]|0; - $4656 = (($4655) + 16|0); - $4657 = HEAP32[$4656>>2]|0; - $4658 = ($4657|0)!=(0|0); - if ($4658) { - $4659 = HEAP32[$pC45>>2]|0; - $4660 = (($4659) + 24|0); - $4661 = HEAP8[$4660>>0]|0; - $4662 = $4661 << 24 >> 24; - $4663 = HEAP32[$db>>2]|0; - $4664 = (($4663) + 16|0); - $4665 = HEAP32[$4664>>2]|0; - $4666 = (($4665) + ($4662<<4)|0); - $4667 = HEAP32[$4666>>2]|0; - HEAP32[$zDb>>2] = $4667; - $4668 = HEAP32[$pOp>>2]|0; - $4669 = (($4668) + 16|0); - $4670 = HEAP32[$4669>>2]|0; - HEAP32[$zTbl>>2] = $4670; - $4671 = HEAP32[$pOp>>2]|0; - $4672 = (($4671) + 3|0); - $4673 = HEAP8[$4672>>0]|0; - $4674 = $4673&255; - $4675 = $4674 & 4; - $4676 = ($4675|0)!=(0); - $4677 = $4676 ? 23 : 18; - HEAP32[$op47>>2] = $4677; - $4678 = HEAP32[$db>>2]|0; - $4679 = (($4678) + 200|0); - $4680 = HEAP32[$4679>>2]|0; - $4681 = HEAP32[$db>>2]|0; - $4682 = (($4681) + 196|0); - $4683 = HEAP32[$4682>>2]|0; - $4684 = HEAP32[$op47>>2]|0; - $4685 = HEAP32[$zDb>>2]|0; - $4686 = HEAP32[$zTbl>>2]|0; - $4687 = $iKey44; - $4688 = $4687; - $4689 = HEAP32[$4688>>2]|0; - $4690 = (($4687) + 4)|0; - $4691 = $4690; - $4692 = HEAP32[$4691>>2]|0; - FUNCTION_TABLE_viiiiii[$4680 & 0]($4683,$4684,$4685,$4686,$4689,$4692); - } - } - } - break; - } - case 74: { - $4693 = HEAP32[$pOp>>2]|0; - $4694 = (($4693) + 4|0); - $4695 = HEAP32[$4694>>2]|0; - $4696 = HEAP32[$0>>2]|0; - $4697 = (($4696) + 56|0); - $4698 = HEAP32[$4697>>2]|0; - $4699 = (($4698) + ($4695<<2)|0); - $4700 = HEAP32[$4699>>2]|0; - HEAP32[$pC49>>2] = $4700; - $4701 = HEAP32[$pC49>>2]|0; - $4702 = (($4701) + 56|0); - $4703 = $4702; - $4704 = $4703; - $4705 = HEAP32[$4704>>2]|0; - $4706 = (($4703) + 4)|0; - $4707 = $4706; - $4708 = HEAP32[$4707>>2]|0; - $4709 = $iKey48; - $4710 = $4709; - HEAP32[$4710>>2] = $4705; - $4711 = (($4709) + 4)|0; - $4712 = $4711; - HEAP32[$4712>>2] = $4708; - $4713 = HEAP32[$pC49>>2]|0; - $4714 = (_sqlite3VdbeCursorMoveto($4713)|0); - HEAP32[$rc>>2] = $4714; - $4715 = HEAP32[$rc>>2]|0; - $4716 = ($4715|0)!=(0); - if ($4716) { - break L11; - } - $4717 = HEAP32[$pC49>>2]|0; - $4718 = HEAP32[$4717>>2]|0; - $4719 = (_sqlite3BtreeDelete($4718)|0); - HEAP32[$rc>>2] = $4719; - $4720 = HEAP32[$pC49>>2]|0; - $4721 = (($4720) + 68|0); - HEAP32[$4721>>2] = 0; - $4722 = HEAP32[$rc>>2]|0; - $4723 = ($4722|0)==(0); - if ($4723) { - $4724 = HEAP32[$db>>2]|0; - $4725 = (($4724) + 200|0); - $4726 = HEAP32[$4725>>2]|0; - $4727 = ($4726|0)!=(0|0); - if ($4727) { - $4728 = HEAP32[$pOp>>2]|0; - $4729 = (($4728) + 16|0); - $4730 = HEAP32[$4729>>2]|0; - $4731 = ($4730|0)!=(0|0); - if ($4731) { - $4732 = HEAP32[$pC49>>2]|0; - $4733 = (($4732) + 28|0); - $4734 = HEAP8[$4733>>0]|0; - $4735 = ($4734&255) >>> 2; - $4736 = $4735 & 1; - $4737 = $4736&255; - $4738 = ($4737|0)!=(0); - if ($4738) { - $4739 = HEAP32[$db>>2]|0; - $4740 = (($4739) + 200|0); - $4741 = HEAP32[$4740>>2]|0; - $4742 = HEAP32[$db>>2]|0; - $4743 = (($4742) + 196|0); - $4744 = HEAP32[$4743>>2]|0; - $4745 = HEAP32[$pC49>>2]|0; - $4746 = (($4745) + 24|0); - $4747 = HEAP8[$4746>>0]|0; - $4748 = $4747 << 24 >> 24; - $4749 = HEAP32[$db>>2]|0; - $4750 = (($4749) + 16|0); - $4751 = HEAP32[$4750>>2]|0; - $4752 = (($4751) + ($4748<<4)|0); - $4753 = HEAP32[$4752>>2]|0; - $4754 = HEAP32[$pOp>>2]|0; - $4755 = (($4754) + 16|0); - $4756 = HEAP32[$4755>>2]|0; - $4757 = $iKey48; - $4758 = $4757; - $4759 = HEAP32[$4758>>2]|0; - $4760 = (($4757) + 4)|0; - $4761 = $4760; - $4762 = HEAP32[$4761>>2]|0; - FUNCTION_TABLE_viiiiii[$4741 & 0]($4744,9,$4753,$4756,$4759,$4762); - } - } - } - } - $4763 = HEAP32[$pOp>>2]|0; - $4764 = (($4763) + 8|0); - $4765 = HEAP32[$4764>>2]|0; - $4766 = $4765 & 1; - $4767 = ($4766|0)!=(0); - if ($4767) { - $4768 = HEAP32[$0>>2]|0; - $4769 = (($4768) + 92|0); - $4770 = HEAP32[$4769>>2]|0; - $4771 = (($4770) + 1)|0; - HEAP32[$4769>>2] = $4771; - } - break; - } - case 75: { - $4772 = HEAP32[$db>>2]|0; - $4773 = HEAP32[$0>>2]|0; - $4774 = (($4773) + 92|0); - $4775 = HEAP32[$4774>>2]|0; - _sqlite3VdbeSetChanges($4772,$4775); - $4776 = HEAP32[$0>>2]|0; - $4777 = (($4776) + 92|0); - HEAP32[$4777>>2] = 0; - break; - } - case 84: { - $4778 = HEAP32[$pOp>>2]|0; - $4779 = (($4778) + 4|0); - $4780 = HEAP32[$4779>>2]|0; - $4781 = HEAP32[$0>>2]|0; - $4782 = (($4781) + 56|0); - $4783 = HEAP32[$4782>>2]|0; - $4784 = (($4783) + ($4780<<2)|0); - $4785 = HEAP32[$4784>>2]|0; - HEAP32[$pC50>>2] = $4785; - $4786 = HEAP32[$pOp>>2]|0; - $4787 = (($4786) + 12|0); - $4788 = HEAP32[$4787>>2]|0; - $4789 = HEAP32[$aMem>>2]|0; - $4790 = (($4789) + (($4788*40)|0)|0); - HEAP32[$pIn3>>2] = $4790; - $4791 = HEAP32[$pOp>>2]|0; - $4792 = (($4791) + 16|0); - $4793 = HEAP32[$4792>>2]|0; - HEAP32[$nIgnore>>2] = $4793; - $4794 = HEAP32[$pC50>>2]|0; - $4795 = HEAP32[$pIn3>>2]|0; - $4796 = HEAP32[$nIgnore>>2]|0; - $4797 = (_sqlite3VdbeSorterCompare($4794,$4795,$4796,$res51)|0); - HEAP32[$rc>>2] = $4797; - $4798 = HEAP32[$res51>>2]|0; - $4799 = ($4798|0)!=(0); - if ($4799) { - $4800 = HEAP32[$pOp>>2]|0; - $4801 = (($4800) + 8|0); - $4802 = HEAP32[$4801>>2]|0; - $4803 = (($4802) - 1)|0; - HEAP32[$pc>>2] = $4803; - } - break; - } - case 95: { - $4804 = HEAP32[$pOp>>2]|0; - $4805 = (($4804) + 8|0); - $4806 = HEAP32[$4805>>2]|0; - $4807 = HEAP32[$aMem>>2]|0; - $4808 = (($4807) + (($4806*40)|0)|0); - HEAP32[$pOut>>2] = $4808; - $4809 = HEAP32[$pOp>>2]|0; - $4810 = (($4809) + 4|0); - $4811 = HEAP32[$4810>>2]|0; - $4812 = HEAP32[$0>>2]|0; - $4813 = (($4812) + 56|0); - $4814 = HEAP32[$4813>>2]|0; - $4815 = (($4814) + ($4811<<2)|0); - $4816 = HEAP32[$4815>>2]|0; - HEAP32[$pC52>>2] = $4816; - $4817 = HEAP32[$pC52>>2]|0; - $4818 = HEAP32[$pOut>>2]|0; - $4819 = (_sqlite3VdbeSorterRowkey($4817,$4818)|0); - HEAP32[$rc>>2] = $4819; - break; - } - case 99: case 98: { - $4820 = HEAP32[$pOp>>2]|0; - $4821 = (($4820) + 8|0); - $4822 = HEAP32[$4821>>2]|0; - $4823 = HEAP32[$aMem>>2]|0; - $4824 = (($4823) + (($4822*40)|0)|0); - HEAP32[$pOut>>2] = $4824; - $4825 = HEAP32[$pOp>>2]|0; - $4826 = (($4825) + 4|0); - $4827 = HEAP32[$4826>>2]|0; - $4828 = HEAP32[$0>>2]|0; - $4829 = (($4828) + 56|0); - $4830 = HEAP32[$4829>>2]|0; - $4831 = (($4830) + ($4827<<2)|0); - $4832 = HEAP32[$4831>>2]|0; - HEAP32[$pC53>>2] = $4832; - $4833 = HEAP32[$pC53>>2]|0; - $4834 = HEAP32[$4833>>2]|0; - HEAP32[$pCrsr54>>2] = $4834; - $4835 = HEAP32[$pC53>>2]|0; - $4836 = (_sqlite3VdbeCursorMoveto($4835)|0); - HEAP32[$rc>>2] = $4836; - $4837 = HEAP32[$rc>>2]|0; - $4838 = ($4837|0)!=(0); - if ($4838) { - break L11; - } - $4839 = HEAP32[$pC53>>2]|0; - $4840 = (($4839) + 28|0); - $4841 = HEAP8[$4840>>0]|0; - $4842 = ($4841&255) >>> 2; - $4843 = $4842 & 1; - $4844 = $4843&255; - $4845 = ($4844|0)==(0); - $4846 = HEAP32[$pCrsr54>>2]|0; - if ($4845) { - (_sqlite3BtreeKeySize($4846,$n64)|0); - $4847 = $n64; - $4848 = $4847; - $4849 = HEAP32[$4848>>2]|0; - $4850 = (($4847) + 4)|0; - $4851 = $4850; - $4852 = HEAP32[$4851>>2]|0; - $4853 = HEAP32[$db>>2]|0; - $4854 = (($4853) + 88|0); - $4855 = HEAP32[$4854>>2]|0; - $4856 = ($4855|0)<(0); - $4857 = $4856 << 31 >> 31; - $4858 = ($4852|0)>($4857|0); - $4859 = ($4852|0)==($4857|0); - $4860 = ($4849>>>0)>($4855>>>0); - $4861 = $4859 & $4860; - $4862 = $4858 | $4861; - if ($4862) { - label = 899; - break L11; - } - $4863 = $n64; - $4864 = $4863; - $4865 = HEAP32[$4864>>2]|0; - $4866 = (($4863) + 4)|0; - $4867 = $4866; - $4868 = HEAP32[$4867>>2]|0; - HEAP32[$n55>>2] = $4865; - } else { - (_sqlite3BtreeDataSize($4846,$n55)|0); - $4869 = HEAP32[$n55>>2]|0; - $4870 = HEAP32[$db>>2]|0; - $4871 = (($4870) + 88|0); - $4872 = HEAP32[$4871>>2]|0; - $4873 = ($4869>>>0)>($4872>>>0); - if ($4873) { - label = 899; - break L11; - } - } - $4874 = HEAP32[$pOut>>2]|0; - $4875 = HEAP32[$n55>>2]|0; - $4876 = (_sqlite3VdbeMemGrow($4874,$4875,0)|0); - $4877 = ($4876|0)!=(0); - if ($4877) { - label = 900; - break L1; - } - $4878 = HEAP32[$n55>>2]|0; - $4879 = HEAP32[$pOut>>2]|0; - $4880 = (($4879) + 24|0); - HEAP32[$4880>>2] = $4878; - $4881 = HEAP32[$pOut>>2]|0; - $4882 = (($4881) + 28|0); - $4883 = HEAP16[$4882>>1]|0; - $4884 = $4883&65535; - $4885 = $4884 & -16896; - $4886 = $4885 | 16; - $4887 = $4886&65535; - $4888 = HEAP32[$pOut>>2]|0; - $4889 = (($4888) + 28|0); - HEAP16[$4889>>1] = $4887; - $4890 = HEAP32[$pC53>>2]|0; - $4891 = (($4890) + 28|0); - $4892 = HEAP8[$4891>>0]|0; - $4893 = ($4892&255) >>> 2; - $4894 = $4893 & 1; - $4895 = $4894&255; - $4896 = ($4895|0)==(0); - $4897 = HEAP32[$pCrsr54>>2]|0; - $4898 = HEAP32[$n55>>2]|0; - $4899 = HEAP32[$pOut>>2]|0; - $4900 = (($4899) + 4|0); - $4901 = HEAP32[$4900>>2]|0; - if ($4896) { - $4902 = (_sqlite3BtreeKey($4897,0,$4898,$4901)|0); - HEAP32[$rc>>2] = $4902; - } else { - $4903 = (_sqlite3BtreeData($4897,0,$4898,$4901)|0); - HEAP32[$rc>>2] = $4903; - } - $4904 = HEAP32[$pOut>>2]|0; - $4905 = (($4904) + 30|0); - HEAP8[$4905>>0] = 1; - break; - } - case 100: { - $4906 = HEAP32[$pOp>>2]|0; - $4907 = (($4906) + 4|0); - $4908 = HEAP32[$4907>>2]|0; - $4909 = HEAP32[$0>>2]|0; - $4910 = (($4909) + 56|0); - $4911 = HEAP32[$4910>>2]|0; - $4912 = (($4911) + ($4908<<2)|0); - $4913 = HEAP32[$4912>>2]|0; - HEAP32[$pC56>>2] = $4913; - $4914 = HEAP32[$pC56>>2]|0; - $4915 = (($4914) + 25|0); - $4916 = HEAP8[$4915>>0]|0; - $4917 = ($4916<<24>>24)!=(0); - if ($4917) { - $4918 = HEAP32[$pOut>>2]|0; - $4919 = (($4918) + 28|0); - HEAP16[$4919>>1] = 1; - break L21; - } - $4920 = HEAP32[$pC56>>2]|0; - $4921 = (($4920) + 27|0); - $4922 = HEAP8[$4921>>0]|0; - $4923 = ($4922<<24>>24)!=(0); - $4924 = HEAP32[$pC56>>2]|0; - do { - if ($4923) { - $4925 = (($4924) + 48|0); - $4926 = $4925; - $4927 = $4926; - $4928 = HEAP32[$4927>>2]|0; - $4929 = (($4926) + 4)|0; - $4930 = $4929; - $4931 = HEAP32[$4930>>2]|0; - $4932 = $v57; - $4933 = $4932; - HEAP32[$4933>>2] = $4928; - $4934 = (($4932) + 4)|0; - $4935 = $4934; - HEAP32[$4935>>2] = $4931; - } else { - $4936 = (($4924) + 32|0); - $4937 = HEAP32[$4936>>2]|0; - $4938 = ($4937|0)!=(0|0); - $4939 = HEAP32[$pC56>>2]|0; - if ($4938) { - $4940 = (($4939) + 32|0); - $4941 = HEAP32[$4940>>2]|0; - $4942 = HEAP32[$4941>>2]|0; - HEAP32[$pVtab>>2] = $4942; - $4943 = HEAP32[$pVtab>>2]|0; - $4944 = HEAP32[$4943>>2]|0; - HEAP32[$pModule>>2] = $4944; - $4945 = HEAP32[$pModule>>2]|0; - $4946 = (($4945) + 48|0); - $4947 = HEAP32[$4946>>2]|0; - $4948 = HEAP32[$pC56>>2]|0; - $4949 = (($4948) + 32|0); - $4950 = HEAP32[$4949>>2]|0; - $4951 = (FUNCTION_TABLE_iii[$4947 & 63]($4950,$v57)|0); - HEAP32[$rc>>2] = $4951; - $4952 = HEAP32[$0>>2]|0; - $4953 = HEAP32[$pVtab>>2]|0; - _sqlite3VtabImportErrmsg($4952,$4953); - break; - } - $4954 = (_sqlite3VdbeCursorMoveto($4939)|0); - HEAP32[$rc>>2] = $4954; - $4955 = HEAP32[$rc>>2]|0; - $4956 = ($4955|0)!=(0); - if ($4956) { - break L11; - } - $4957 = HEAP32[$pC56>>2]|0; - $4958 = (($4957) + 26|0); - $4959 = HEAP8[$4958>>0]|0; - $4960 = ($4959<<24>>24)!=(0); - $4961 = HEAP32[$pC56>>2]|0; - if ($4960) { - $4962 = (($4961) + 56|0); - $4963 = $4962; - $4964 = $4963; - $4965 = HEAP32[$4964>>2]|0; - $4966 = (($4963) + 4)|0; - $4967 = $4966; - $4968 = HEAP32[$4967>>2]|0; - $4969 = $v57; - $4970 = $4969; - HEAP32[$4970>>2] = $4965; - $4971 = (($4969) + 4)|0; - $4972 = $4971; - HEAP32[$4972>>2] = $4968; - break; - } else { - $4973 = HEAP32[$4961>>2]|0; - $4974 = (_sqlite3BtreeKeySize($4973,$v57)|0); - HEAP32[$rc>>2] = $4974; - break; - } - } - } while(0); - $4975 = $v57; - $4976 = $4975; - $4977 = HEAP32[$4976>>2]|0; - $4978 = (($4975) + 4)|0; - $4979 = $4978; - $4980 = HEAP32[$4979>>2]|0; - $4981 = HEAP32[$pOut>>2]|0; - $4982 = (($4981) + 16|0); - $4983 = $4982; - $4984 = $4983; - HEAP32[$4984>>2] = $4977; - $4985 = (($4983) + 4)|0; - $4986 = $4985; - HEAP32[$4986>>2] = $4980; - break; - } - case 102: { - $5006 = HEAP32[$pOp>>2]|0; - $5007 = (($5006) + 4|0); - $5008 = HEAP32[$5007>>2]|0; - $5009 = HEAP32[$0>>2]|0; - $5010 = (($5009) + 56|0); - $5011 = HEAP32[$5010>>2]|0; - $5012 = (($5011) + ($5008<<2)|0); - $5013 = HEAP32[$5012>>2]|0; - HEAP32[$pC59>>2] = $5013; - $5014 = HEAP32[$pC59>>2]|0; - $5015 = HEAP32[$5014>>2]|0; - HEAP32[$pCrsr60>>2] = $5015; - HEAP32[$res61>>2] = 0; - $5016 = HEAP32[$pCrsr60>>2]|0; - $5017 = (_sqlite3BtreeLast($5016,$res61)|0); - HEAP32[$rc>>2] = $5017; - $5018 = HEAP32[$res61>>2]|0; - $5019 = $5018&255; - $5020 = HEAP32[$pC59>>2]|0; - $5021 = (($5020) + 25|0); - HEAP8[$5021>>0] = $5019; - $5022 = HEAP32[$pC59>>2]|0; - $5023 = (($5022) + 27|0); - HEAP8[$5023>>0] = 0; - $5024 = HEAP32[$pC59>>2]|0; - $5025 = (($5024) + 26|0); - HEAP8[$5025>>0] = 0; - $5026 = HEAP32[$pC59>>2]|0; - $5027 = (($5026) + 68|0); - HEAP32[$5027>>2] = 0; - $5028 = HEAP32[$pOp>>2]|0; - $5029 = (($5028) + 8|0); - $5030 = HEAP32[$5029>>2]|0; - $5031 = ($5030|0)>(0); - if ($5031) { - $5032 = HEAP32[$res61>>2]|0; - $5033 = ($5032|0)!=(0); - if ($5033) { - $5034 = HEAP32[$pOp>>2]|0; - $5035 = (($5034) + 8|0); - $5036 = HEAP32[$5035>>2]|0; - $5037 = (($5036) - 1)|0; - HEAP32[$pc>>2] = $5037; - } - } - break; - } - case 101: { - $4987 = HEAP32[$pOp>>2]|0; - $4988 = (($4987) + 4|0); - $4989 = HEAP32[$4988>>2]|0; - $4990 = HEAP32[$0>>2]|0; - $4991 = (($4990) + 56|0); - $4992 = HEAP32[$4991>>2]|0; - $4993 = (($4992) + ($4989<<2)|0); - $4994 = HEAP32[$4993>>2]|0; - HEAP32[$pC58>>2] = $4994; - $4995 = HEAP32[$pC58>>2]|0; - $4996 = (($4995) + 25|0); - HEAP8[$4996>>0] = 1; - $4997 = HEAP32[$pC58>>2]|0; - $4998 = (($4997) + 26|0); - HEAP8[$4998>>0] = 0; - $4999 = HEAP32[$pC58>>2]|0; - $5000 = (($4999) + 68|0); - HEAP32[$5000>>2] = 0; - $5001 = HEAP32[$pC58>>2]|0; - $5002 = HEAP32[$5001>>2]|0; - $5003 = ($5002|0)!=(0|0); - if ($5003) { - $5004 = HEAP32[$pC58>>2]|0; - $5005 = HEAP32[$5004>>2]|0; - _sqlite3BtreeClearCursor($5005); - } - break; - } - case 104: case 103: { - $5038 = HEAP32[$0>>2]|0; - $5039 = (($5038) + 108|0); - $5040 = (($5039) + 8|0); - $5041 = HEAP32[$5040>>2]|0; - $5042 = (($5041) + 1)|0; - HEAP32[$5040>>2] = $5042; - label = 646; - break; - } - case 105: { - label = 646; - break; - } - case 107: case 106: { - $5136 = HEAP32[$pOp>>2]|0; - $5137 = (($5136) + 4|0); - $5138 = HEAP32[$5137>>2]|0; - $5139 = HEAP32[$0>>2]|0; - $5140 = (($5139) + 56|0); - $5141 = HEAP32[$5140>>2]|0; - $5142 = (($5141) + ($5138<<2)|0); - $5143 = HEAP32[$5142>>2]|0; - HEAP32[$pC67>>2] = $5143; - $5144 = HEAP32[$pOp>>2]|0; - $5145 = (($5144) + 8|0); - $5146 = HEAP32[$5145>>2]|0; - $5147 = HEAP32[$aMem>>2]|0; - $5148 = (($5147) + (($5146*40)|0)|0); - HEAP32[$pIn2>>2] = $5148; - $5149 = HEAP32[$pC67>>2]|0; - $5150 = HEAP32[$5149>>2]|0; - HEAP32[$pCrsr68>>2] = $5150; - $5151 = HEAP32[$pOp>>2]|0; - $5152 = (($5151) + 3|0); - $5153 = HEAP8[$5152>>0]|0; - $5154 = $5153&255; - $5155 = $5154 & 1; - $5156 = ($5155|0)!=(0); - if ($5156) { - $5157 = HEAP32[$0>>2]|0; - $5158 = (($5157) + 92|0); - $5159 = HEAP32[$5158>>2]|0; - $5160 = (($5159) + 1)|0; - HEAP32[$5158>>2] = $5160; - } - $5161 = HEAP32[$pIn2>>2]|0; - $5162 = (($5161) + 28|0); - $5163 = HEAP16[$5162>>1]|0; - $5164 = $5163&65535; - $5165 = $5164 & 16384; - $5166 = ($5165|0)!=(0); - if ($5166) { - $5167 = HEAP32[$pIn2>>2]|0; - $5168 = (_sqlite3VdbeMemExpandBlob($5167)|0); - $5169 = $5168; - } else { - $5169 = 0; - } - HEAP32[$rc>>2] = $5169; - $5170 = HEAP32[$rc>>2]|0; - $5171 = ($5170|0)==(0); - if ($5171) { - $5172 = HEAP32[$pC67>>2]|0; - $5173 = (($5172) + 64|0); - $5174 = HEAP32[$5173>>2]|0; - $5175 = ($5174|0)!=(0|0); - if ($5175) { - $5176 = HEAP32[$db>>2]|0; - $5177 = HEAP32[$pC67>>2]|0; - $5178 = HEAP32[$pIn2>>2]|0; - $5179 = (_sqlite3VdbeSorterWrite($5176,$5177,$5178)|0); - HEAP32[$rc>>2] = $5179; - break L21; - } - $5180 = HEAP32[$pIn2>>2]|0; - $5181 = (($5180) + 24|0); - $5182 = HEAP32[$5181>>2]|0; - HEAP32[$nKey>>2] = $5182; - $5183 = HEAP32[$pIn2>>2]|0; - $5184 = (($5183) + 4|0); - $5185 = HEAP32[$5184>>2]|0; - HEAP32[$zKey>>2] = $5185; - $5186 = HEAP32[$pCrsr68>>2]|0; - $5187 = HEAP32[$zKey>>2]|0; - $5188 = HEAP32[$nKey>>2]|0; - $5189 = ($5188|0)<(0); - $5190 = $5189 << 31 >> 31; - $5191 = HEAP32[$pOp>>2]|0; - $5192 = (($5191) + 12|0); - $5193 = HEAP32[$5192>>2]|0; - $5194 = HEAP32[$pOp>>2]|0; - $5195 = (($5194) + 3|0); - $5196 = HEAP8[$5195>>0]|0; - $5197 = $5196&255; - $5198 = $5197 & 16; - $5199 = ($5198|0)!=(0); - if ($5199) { - $5200 = HEAP32[$pC67>>2]|0; - $5201 = (($5200) + 12|0); - $5202 = HEAP32[$5201>>2]|0; - $5203 = $5202; - } else { - $5203 = 0; - } - $5204 = (_sqlite3BtreeInsert($5186,$5187,$5188,$5190,1472,0,0,$5193,$5203)|0); - HEAP32[$rc>>2] = $5204; - $5205 = HEAP32[$pC67>>2]|0; - $5206 = (($5205) + 68|0); - HEAP32[$5206>>2] = 0; - } - break; - } - case 5: { - $5078 = HEAP32[$pOp>>2]|0; - $5079 = (($5078) + 4|0); - $5080 = HEAP32[$5079>>2]|0; - $5081 = HEAP32[$0>>2]|0; - $5082 = (($5081) + 56|0); - $5083 = HEAP32[$5082>>2]|0; - $5084 = (($5083) + ($5080<<2)|0); - $5085 = HEAP32[$5084>>2]|0; - HEAP32[$pC65>>2] = $5085; - HEAP32[$res66>>2] = 0; - $5086 = HEAP32[$db>>2]|0; - $5087 = HEAP32[$pC65>>2]|0; - $5088 = (_sqlite3VdbeSorterNext($5086,$5087,$res66)|0); - HEAP32[$rc>>2] = $5088; - label = 654; - break; - } - case 7: case 6: { - $5089 = HEAP32[$pOp>>2]|0; - $5090 = (($5089) + 4|0); - $5091 = HEAP32[$5090>>2]|0; - $5092 = HEAP32[$0>>2]|0; - $5093 = (($5092) + 56|0); - $5094 = HEAP32[$5093>>2]|0; - $5095 = (($5094) + ($5091<<2)|0); - $5096 = HEAP32[$5095>>2]|0; - $5097 = ($5096|0)==(0|0); - if (!($5097)) { - label = 653; - } - break; - } - case 9: case 8: { - label = 653; - break; - } - case 108: { - $5207 = HEAP32[$pOp>>2]|0; - $5208 = (($5207) + 4|0); - $5209 = HEAP32[$5208>>2]|0; - $5210 = HEAP32[$0>>2]|0; - $5211 = (($5210) + 56|0); - $5212 = HEAP32[$5211>>2]|0; - $5213 = (($5212) + ($5209<<2)|0); - $5214 = HEAP32[$5213>>2]|0; - HEAP32[$pC69>>2] = $5214; - $5215 = HEAP32[$pC69>>2]|0; - $5216 = HEAP32[$5215>>2]|0; - HEAP32[$pCrsr70>>2] = $5216; - $5217 = HEAP32[$pC69>>2]|0; - $5218 = (($5217) + 8|0); - $5219 = HEAP32[$5218>>2]|0; - HEAP32[$r72>>2] = $5219; - $5220 = HEAP32[$pOp>>2]|0; - $5221 = (($5220) + 12|0); - $5222 = HEAP32[$5221>>2]|0; - $5223 = $5222&65535; - $5224 = (($r72) + 4|0); - HEAP16[$5224>>1] = $5223; - $5225 = (($r72) + 6|0); - HEAP8[$5225>>0] = 0; - $5226 = HEAP32[$pOp>>2]|0; - $5227 = (($5226) + 8|0); - $5228 = HEAP32[$5227>>2]|0; - $5229 = HEAP32[$aMem>>2]|0; - $5230 = (($5229) + (($5228*40)|0)|0); - $5231 = (($r72) + 8|0); - HEAP32[$5231>>2] = $5230; - $5232 = HEAP32[$pCrsr70>>2]|0; - $5233 = (_sqlite3BtreeMovetoUnpacked($5232,$r72,0,0,0,$res71)|0); - HEAP32[$rc>>2] = $5233; - $5234 = HEAP32[$rc>>2]|0; - $5235 = ($5234|0)==(0); - if ($5235) { - $5236 = HEAP32[$res71>>2]|0; - $5237 = ($5236|0)==(0); - if ($5237) { - $5238 = HEAP32[$pCrsr70>>2]|0; - $5239 = (_sqlite3BtreeDelete($5238)|0); - HEAP32[$rc>>2] = $5239; - } - } - $5240 = HEAP32[$pC69>>2]|0; - $5241 = (($5240) + 68|0); - HEAP32[$5241>>2] = 0; - break; - } - case 109: { - $5242 = HEAP32[$pOp>>2]|0; - $5243 = (($5242) + 4|0); - $5244 = HEAP32[$5243>>2]|0; - $5245 = HEAP32[$0>>2]|0; - $5246 = (($5245) + 56|0); - $5247 = HEAP32[$5246>>2]|0; - $5248 = (($5247) + ($5244<<2)|0); - $5249 = HEAP32[$5248>>2]|0; - HEAP32[$pC74>>2] = $5249; - $5250 = HEAP32[$pC74>>2]|0; - $5251 = HEAP32[$5250>>2]|0; - HEAP32[$pCrsr73>>2] = $5251; - $5252 = HEAP32[$pOut>>2]|0; - $5253 = (($5252) + 28|0); - HEAP16[$5253>>1] = 1; - $5254 = HEAP32[$pC74>>2]|0; - $5255 = (_sqlite3VdbeCursorMoveto($5254)|0); - HEAP32[$rc>>2] = $5255; - $5256 = HEAP32[$rc>>2]|0; - $5257 = ($5256|0)!=(0); - if ($5257) { - break L11; - } - $5258 = HEAP32[$pC74>>2]|0; - $5259 = (($5258) + 25|0); - $5260 = HEAP8[$5259>>0]|0; - $5261 = ($5260<<24>>24)!=(0); - if (!($5261)) { - $5262 = $rowid; - $5263 = $5262; - HEAP32[$5263>>2] = 0; - $5264 = (($5262) + 4)|0; - $5265 = $5264; - HEAP32[$5265>>2] = 0; - $5266 = HEAP32[$db>>2]|0; - $5267 = HEAP32[$pCrsr73>>2]|0; - $5268 = (_sqlite3VdbeIdxRowid($5266,$5267,$rowid)|0); - HEAP32[$rc>>2] = $5268; - $5269 = HEAP32[$rc>>2]|0; - $5270 = ($5269|0)!=(0); - if ($5270) { - break L11; - } - $5271 = $rowid; - $5272 = $5271; - $5273 = HEAP32[$5272>>2]|0; - $5274 = (($5271) + 4)|0; - $5275 = $5274; - $5276 = HEAP32[$5275>>2]|0; - $5277 = HEAP32[$pOut>>2]|0; - $5278 = (($5277) + 16|0); - $5279 = $5278; - $5280 = $5279; - HEAP32[$5280>>2] = $5273; - $5281 = (($5279) + 4)|0; - $5282 = $5281; - HEAP32[$5282>>2] = $5276; - $5283 = HEAP32[$pOut>>2]|0; - $5284 = (($5283) + 28|0); - HEAP16[$5284>>1] = 4; - } - break; - } - case 113: case 112: case 111: case 110: { - $5285 = HEAP32[$pOp>>2]|0; - $5286 = (($5285) + 4|0); - $5287 = HEAP32[$5286>>2]|0; - $5288 = HEAP32[$0>>2]|0; - $5289 = (($5288) + 56|0); - $5290 = HEAP32[$5289>>2]|0; - $5291 = (($5290) + ($5287<<2)|0); - $5292 = HEAP32[$5291>>2]|0; - HEAP32[$pC75>>2] = $5292; - $5293 = HEAP32[$pC75>>2]|0; - $5294 = (($5293) + 8|0); - $5295 = HEAP32[$5294>>2]|0; - HEAP32[$r77>>2] = $5295; - $5296 = HEAP32[$pOp>>2]|0; - $5297 = (($5296) + 16|0); - $5298 = HEAP32[$5297>>2]|0; - $5299 = $5298&65535; - $5300 = (($r77) + 4|0); - HEAP16[$5300>>1] = $5299; - $5301 = HEAP32[$pOp>>2]|0; - $5302 = HEAP8[$5301>>0]|0; - $5303 = $5302&255; - $5304 = ($5303|0)<(112); - $5305 = (($r77) + 6|0); - if ($5304) { - HEAP8[$5305>>0] = -1; - } else { - HEAP8[$5305>>0] = 0; - } - $5306 = HEAP32[$pOp>>2]|0; - $5307 = (($5306) + 12|0); - $5308 = HEAP32[$5307>>2]|0; - $5309 = HEAP32[$aMem>>2]|0; - $5310 = (($5309) + (($5308*40)|0)|0); - $5311 = (($r77) + 8|0); - HEAP32[$5311>>2] = $5310; - HEAP32[$res76>>2] = 0; - $5312 = HEAP32[$pC75>>2]|0; - $5313 = (_sqlite3VdbeIdxKeyCompare($5312,$r77,$res76)|0); - HEAP32[$rc>>2] = $5313; - $5314 = HEAP32[$pOp>>2]|0; - $5315 = HEAP8[$5314>>0]|0; - $5316 = $5315&255; - $5317 = $5316 & 1; - $5318 = ($5317|0)==(0); - $5319 = HEAP32[$res76>>2]|0; - if ($5318) { - $5320 = (0 - ($5319))|0; - HEAP32[$res76>>2] = $5320; - } else { - $5321 = (($5319) + 1)|0; - HEAP32[$res76>>2] = $5321; - } - $5322 = HEAP32[$res76>>2]|0; - $5323 = ($5322|0)>(0); - if ($5323) { - $5324 = HEAP32[$pOp>>2]|0; - $5325 = (($5324) + 8|0); - $5326 = HEAP32[$5325>>2]|0; - $5327 = (($5326) - 1)|0; - HEAP32[$pc>>2] = $5327; - } - break; - } - case 114: { - HEAP32[$iCnt>>2] = 0; - $5328 = HEAP32[$db>>2]|0; - $5329 = (($5328) + 4|0); - $5330 = HEAP32[$5329>>2]|0; - HEAP32[$pVdbe>>2] = $5330; - while(1) { - $5331 = HEAP32[$pVdbe>>2]|0; - $5332 = ($5331|0)!=(0|0); - if (!($5332)) { - break; - } - $5333 = HEAP32[$pVdbe>>2]|0; - $5334 = (($5333) + 40|0); - $5335 = HEAP32[$5334>>2]|0; - $5336 = ($5335|0)==(-1108210269); - if ($5336) { - $5337 = HEAP32[$pVdbe>>2]|0; - $5338 = (($5337) + 88|0); - $5339 = HEAP16[$5338>>1]|0; - $5340 = ($5339&65535) >>> 9; - $5341 = $5340 & 1; - $5342 = $5341&65535; - $5343 = ($5342|0)!=(0); - if ($5343) { - $5344 = HEAP32[$pVdbe>>2]|0; - $5345 = (($5344) + 88|0); - $5346 = HEAP16[$5345>>1]|0; - $5347 = ($5346&65535) >>> 2; - $5348 = $5347 & 3; - $5349 = $5348&65535; - $5350 = ($5349|0)<(2); - if ($5350) { - $5351 = HEAP32[$pVdbe>>2]|0; - $5352 = (($5351) + 76|0); - $5353 = HEAP32[$5352>>2]|0; - $5354 = ($5353|0)>=(0); - if ($5354) { - $5355 = HEAP32[$iCnt>>2]|0; - $5356 = (($5355) + 1)|0; - HEAP32[$iCnt>>2] = $5356; - } - } - } - } - $5357 = HEAP32[$pVdbe>>2]|0; - $5358 = (($5357) + 52|0); - $5359 = HEAP32[$5358>>2]|0; - HEAP32[$pVdbe>>2] = $5359; - } - $5360 = HEAP32[$pOut>>2]|0; - $5361 = (($5360) + 28|0); - HEAP16[$5361>>1] = 1; - $5362 = HEAP32[$iCnt>>2]|0; - $5363 = ($5362|0)>(1); - if ($5363) { - HEAP32[$rc>>2] = 6; - $5364 = HEAP32[$0>>2]|0; - $5365 = (($5364) + 86|0); - HEAP8[$5365>>0] = 2; - break L21; - } - $5366 = HEAP32[$pOp>>2]|0; - $5367 = (($5366) + 12|0); - $5368 = HEAP32[$5367>>2]|0; - HEAP32[$iDb78>>2] = $5368; - HEAP32[$iMoved>>2] = 0; - $5369 = HEAP32[$iDb78>>2]|0; - $5370 = HEAP32[$db>>2]|0; - $5371 = (($5370) + 16|0); - $5372 = HEAP32[$5371>>2]|0; - $5373 = (($5372) + ($5369<<4)|0); - $5374 = (($5373) + 4|0); - $5375 = HEAP32[$5374>>2]|0; - $5376 = HEAP32[$pOp>>2]|0; - $5377 = (($5376) + 4|0); - $5378 = HEAP32[$5377>>2]|0; - $5379 = (_sqlite3BtreeDropTable($5375,$5378,$iMoved)|0); - HEAP32[$rc>>2] = $5379; - $5380 = HEAP32[$pOut>>2]|0; - $5381 = (($5380) + 28|0); - HEAP16[$5381>>1] = 4; - $5382 = HEAP32[$iMoved>>2]|0; - $5383 = ($5382|0)<(0); - $5384 = $5383 << 31 >> 31; - $5385 = HEAP32[$pOut>>2]|0; - $5386 = (($5385) + 16|0); - $5387 = $5386; - $5388 = $5387; - HEAP32[$5388>>2] = $5382; - $5389 = (($5387) + 4)|0; - $5390 = $5389; - HEAP32[$5390>>2] = $5384; - $5391 = HEAP32[$rc>>2]|0; - $5392 = ($5391|0)==(0); - if ($5392) { - $5393 = HEAP32[$iMoved>>2]|0; - $5394 = ($5393|0)!=(0); - if ($5394) { - $5395 = HEAP32[$db>>2]|0; - $5396 = HEAP32[$iDb78>>2]|0; - $5397 = HEAP32[$iMoved>>2]|0; - $5398 = HEAP32[$pOp>>2]|0; - $5399 = (($5398) + 4|0); - $5400 = HEAP32[$5399>>2]|0; - _sqlite3RootPageMoved($5395,$5396,$5397,$5400); - $5401 = HEAP32[$iDb78>>2]|0; - $5402 = (($5401) + 1)|0; - $5403 = $5402&255; - HEAP8[$resetSchemaOnFault>>0] = $5403; - } - } - break; - } - case 115: { - HEAP32[$nChange>>2] = 0; - $5404 = HEAP32[$pOp>>2]|0; - $5405 = (($5404) + 8|0); - $5406 = HEAP32[$5405>>2]|0; - $5407 = HEAP32[$db>>2]|0; - $5408 = (($5407) + 16|0); - $5409 = HEAP32[$5408>>2]|0; - $5410 = (($5409) + ($5406<<4)|0); - $5411 = (($5410) + 4|0); - $5412 = HEAP32[$5411>>2]|0; - $5413 = HEAP32[$pOp>>2]|0; - $5414 = (($5413) + 4|0); - $5415 = HEAP32[$5414>>2]|0; - $5416 = HEAP32[$pOp>>2]|0; - $5417 = (($5416) + 12|0); - $5418 = HEAP32[$5417>>2]|0; - $5419 = ($5418|0)!=(0); - $nChange$ = $5419 ? $nChange : 0; - $5420 = (_sqlite3BtreeClearTable($5412,$5415,$nChange$)|0); - HEAP32[$rc>>2] = $5420; - $5421 = HEAP32[$pOp>>2]|0; - $5422 = (($5421) + 12|0); - $5423 = HEAP32[$5422>>2]|0; - $5424 = ($5423|0)!=(0); - if ($5424) { - $5425 = HEAP32[$nChange>>2]|0; - $5426 = HEAP32[$0>>2]|0; - $5427 = (($5426) + 92|0); - $5428 = HEAP32[$5427>>2]|0; - $5429 = (($5428) + ($5425))|0; - HEAP32[$5427>>2] = $5429; - $5430 = HEAP32[$pOp>>2]|0; - $5431 = (($5430) + 12|0); - $5432 = HEAP32[$5431>>2]|0; - $5433 = ($5432|0)>(0); - if ($5433) { - $5434 = HEAP32[$nChange>>2]|0; - $5435 = ($5434|0)<(0); - $5436 = $5435 << 31 >> 31; - $5437 = HEAP32[$pOp>>2]|0; - $5438 = (($5437) + 12|0); - $5439 = HEAP32[$5438>>2]|0; - $5440 = HEAP32[$aMem>>2]|0; - $5441 = (($5440) + (($5439*40)|0)|0); - $5442 = (($5441) + 16|0); - $5443 = $5442; - $5444 = $5443; - $5445 = HEAP32[$5444>>2]|0; - $5446 = (($5443) + 4)|0; - $5447 = $5446; - $5448 = HEAP32[$5447>>2]|0; - $5449 = (_i64Add(($5445|0),($5448|0),($5434|0),($5436|0))|0); - $5450 = tempRet0; - $5451 = $5442; - $5452 = $5451; - HEAP32[$5452>>2] = $5449; - $5453 = (($5451) + 4)|0; - $5454 = $5453; - HEAP32[$5454>>2] = $5450; - } - } - break; - } - case 118: case 117: { - HEAP32[$pgno80>>2] = 0; - $5474 = HEAP32[$pOp>>2]|0; - $5475 = (($5474) + 4|0); - $5476 = HEAP32[$5475>>2]|0; - $5477 = HEAP32[$db>>2]|0; - $5478 = (($5477) + 16|0); - $5479 = HEAP32[$5478>>2]|0; - $5480 = (($5479) + ($5476<<4)|0); - HEAP32[$pDb82>>2] = $5480; - $5481 = HEAP32[$pOp>>2]|0; - $5482 = HEAP8[$5481>>0]|0; - $5483 = $5482&255; - $5484 = ($5483|0)==(118); - if ($5484) { - HEAP32[$flags81>>2] = 1; - } else { - HEAP32[$flags81>>2] = 2; - } - $5485 = HEAP32[$pDb82>>2]|0; - $5486 = (($5485) + 4|0); - $5487 = HEAP32[$5486>>2]|0; - $5488 = HEAP32[$flags81>>2]|0; - $5489 = (_sqlite3BtreeCreateTable($5487,$pgno80,$5488)|0); - HEAP32[$rc>>2] = $5489; - $5490 = HEAP32[$pgno80>>2]|0; - $5491 = ($5490|0)<(0); - $5492 = $5491 << 31 >> 31; - $5493 = HEAP32[$pOut>>2]|0; - $5494 = (($5493) + 16|0); - $5495 = $5494; - $5496 = $5495; - HEAP32[$5496>>2] = $5490; - $5497 = (($5495) + 4)|0; - $5498 = $5497; - HEAP32[$5498>>2] = $5492; - break; - } - case 116: { - $5455 = HEAP32[$pOp>>2]|0; - $5456 = (($5455) + 4|0); - $5457 = HEAP32[$5456>>2]|0; - $5458 = HEAP32[$0>>2]|0; - $5459 = (($5458) + 56|0); - $5460 = HEAP32[$5459>>2]|0; - $5461 = (($5460) + ($5457<<2)|0); - $5462 = HEAP32[$5461>>2]|0; - HEAP32[$pC79>>2] = $5462; - $5463 = HEAP32[$pC79>>2]|0; - $5464 = (($5463) + 64|0); - $5465 = HEAP32[$5464>>2]|0; - $5466 = ($5465|0)!=(0|0); - if ($5466) { - $5467 = HEAP32[$db>>2]|0; - $5468 = HEAP32[$pC79>>2]|0; - $5469 = (($5468) + 64|0); - $5470 = HEAP32[$5469>>2]|0; - _sqlite3VdbeSorterReset($5467,$5470); - break L21; - } else { - $5471 = HEAP32[$pC79>>2]|0; - $5472 = HEAP32[$5471>>2]|0; - $5473 = (_sqlite3BtreeClearTableOfCursor($5472)|0); - HEAP32[$rc>>2] = $5473; - break L21; - } - break; - } - case 120: { - $5548 = HEAP32[$db>>2]|0; - $5549 = HEAP32[$pOp>>2]|0; - $5550 = (($5549) + 4|0); - $5551 = HEAP32[$5550>>2]|0; - $5552 = (_sqlite3AnalysisLoad($5548,$5551)|0); - HEAP32[$rc>>2] = $5552; - break; - } - case 121: { - $5553 = HEAP32[$db>>2]|0; - $5554 = HEAP32[$pOp>>2]|0; - $5555 = (($5554) + 4|0); - $5556 = HEAP32[$5555>>2]|0; - $5557 = HEAP32[$pOp>>2]|0; - $5558 = (($5557) + 16|0); - $5559 = HEAP32[$5558>>2]|0; - _sqlite3UnlinkAndDeleteTable($5553,$5556,$5559); - break; - } - case 119: { - $5499 = HEAP32[$pOp>>2]|0; - $5500 = (($5499) + 4|0); - $5501 = HEAP32[$5500>>2]|0; - HEAP32[$iDb83>>2] = $5501; - $5502 = HEAP32[$iDb83>>2]|0; - $5503 = ($5502|0)==(1); - $5504 = $5503 ? 14808 : 14832; - HEAP32[$zMaster>>2] = $5504; - $5505 = HEAP32[$db>>2]|0; - HEAP32[$initData>>2] = $5505; - $5506 = HEAP32[$pOp>>2]|0; - $5507 = (($5506) + 4|0); - $5508 = HEAP32[$5507>>2]|0; - $5509 = (($initData) + 8|0); - HEAP32[$5509>>2] = $5508; - $5510 = HEAP32[$0>>2]|0; - $5511 = (($5510) + 44|0); - $5512 = (($initData) + 4|0); - HEAP32[$5512>>2] = $5511; - $5513 = HEAP32[$db>>2]|0; - $5514 = HEAP32[$iDb83>>2]|0; - $5515 = HEAP32[$db>>2]|0; - $5516 = (($5515) + 16|0); - $5517 = HEAP32[$5516>>2]|0; - $5518 = (($5517) + ($5514<<4)|0); - $5519 = HEAP32[$5518>>2]|0; - $5520 = HEAP32[$zMaster>>2]|0; - $5521 = HEAP32[$pOp>>2]|0; - $5522 = (($5521) + 16|0); - $5523 = HEAP32[$5522>>2]|0; - HEAP32[$vararg_buffer62>>2] = $5519; - $vararg_ptr34 = (($vararg_buffer62) + 4|0); - HEAP32[$vararg_ptr34>>2] = $5520; - $vararg_ptr35 = (($vararg_buffer62) + 8|0); - HEAP32[$vararg_ptr35>>2] = $5523; - $5524 = (_sqlite3MPrintf($5513,31632,$vararg_buffer62)|0); - HEAP32[$zSql>>2] = $5524; - $5525 = HEAP32[$zSql>>2]|0; - $5526 = ($5525|0)==(0|0); - if ($5526) { - HEAP32[$rc>>2] = 7; - } else { - $5527 = HEAP32[$db>>2]|0; - $5528 = (($5527) + 132|0); - $5529 = (($5528) + 5|0); - HEAP8[$5529>>0] = 1; - $5530 = (($initData) + 12|0); - HEAP32[$5530>>2] = 0; - $5531 = HEAP32[$db>>2]|0; - $5532 = HEAP32[$zSql>>2]|0; - $5533 = (_sqlite3_exec($5531,$5532,6,$initData,0)|0); - HEAP32[$rc>>2] = $5533; - $5534 = HEAP32[$rc>>2]|0; - $5535 = ($5534|0)==(0); - if ($5535) { - $5536 = (($initData) + 12|0); - $5537 = HEAP32[$5536>>2]|0; - HEAP32[$rc>>2] = $5537; - } - $5538 = HEAP32[$db>>2]|0; - $5539 = HEAP32[$zSql>>2]|0; - _sqlite3DbFree($5538,$5539); - $5540 = HEAP32[$db>>2]|0; - $5541 = (($5540) + 132|0); - $5542 = (($5541) + 5|0); - HEAP8[$5542>>0] = 0; - } - $5543 = HEAP32[$rc>>2]|0; - $5544 = ($5543|0)!=(0); - if ($5544) { - $5545 = HEAP32[$db>>2]|0; - _sqlite3ResetAllSchemasOfConnection($5545); - } - $5546 = HEAP32[$rc>>2]|0; - $5547 = ($5546|0)==(7); - if ($5547) { - label = 900; - break L1; - } - break; - } - case 123: { - $5567 = HEAP32[$db>>2]|0; - $5568 = HEAP32[$pOp>>2]|0; - $5569 = (($5568) + 4|0); - $5570 = HEAP32[$5569>>2]|0; - $5571 = HEAP32[$pOp>>2]|0; - $5572 = (($5571) + 16|0); - $5573 = HEAP32[$5572>>2]|0; - _sqlite3UnlinkAndDeleteTrigger($5567,$5570,$5573); - break; - } - case 124: { - $5574 = HEAP32[$pOp>>2]|0; - $5575 = (($5574) + 8|0); - $5576 = HEAP32[$5575>>2]|0; - HEAP32[$nRoot>>2] = $5576; - $5577 = HEAP32[$db>>2]|0; - $5578 = HEAP32[$nRoot>>2]|0; - $5579 = (($5578) + 1)|0; - $5580 = $5579<<2; - $5581 = (_sqlite3DbMallocRaw($5577,$5580)|0); - HEAP32[$aRoot>>2] = $5581; - $5582 = HEAP32[$aRoot>>2]|0; - $5583 = ($5582|0)==(0|0); - if ($5583) { - label = 900; - break L1; - } - $5584 = HEAP32[$pOp>>2]|0; - $5585 = (($5584) + 12|0); - $5586 = HEAP32[$5585>>2]|0; - $5587 = HEAP32[$aMem>>2]|0; - $5588 = (($5587) + (($5586*40)|0)|0); - HEAP32[$pnErr>>2] = $5588; - $5589 = HEAP32[$pOp>>2]|0; - $5590 = (($5589) + 4|0); - $5591 = HEAP32[$5590>>2]|0; - $5592 = HEAP32[$aMem>>2]|0; - $5593 = (($5592) + (($5591*40)|0)|0); - HEAP32[$pIn1>>2] = $5593; - HEAP32[$j84>>2] = 0; - while(1) { - $5594 = HEAP32[$j84>>2]|0; - $5595 = HEAP32[$nRoot>>2]|0; - $5596 = ($5594|0)<($5595|0); - $5597 = HEAP32[$j84>>2]|0; - if (!($5596)) { - break; - } - $5598 = HEAP32[$pIn1>>2]|0; - $5599 = (($5598) + (($5597*40)|0)|0); - $5600 = (_sqlite3VdbeIntValue($5599)|0); - $5601 = tempRet0; - $5602 = HEAP32[$j84>>2]|0; - $5603 = HEAP32[$aRoot>>2]|0; - $5604 = (($5603) + ($5602<<2)|0); - HEAP32[$5604>>2] = $5600; - $5605 = HEAP32[$j84>>2]|0; - $5606 = (($5605) + 1)|0; - HEAP32[$j84>>2] = $5606; - } - $5607 = HEAP32[$aRoot>>2]|0; - $5608 = (($5607) + ($5597<<2)|0); - HEAP32[$5608>>2] = 0; - $5609 = HEAP32[$pOp>>2]|0; - $5610 = (($5609) + 3|0); - $5611 = HEAP8[$5610>>0]|0; - $5612 = $5611&255; - $5613 = HEAP32[$db>>2]|0; - $5614 = (($5613) + 16|0); - $5615 = HEAP32[$5614>>2]|0; - $5616 = (($5615) + ($5612<<4)|0); - $5617 = (($5616) + 4|0); - $5618 = HEAP32[$5617>>2]|0; - $5619 = HEAP32[$aRoot>>2]|0; - $5620 = HEAP32[$nRoot>>2]|0; - $5621 = HEAP32[$pnErr>>2]|0; - $5622 = (($5621) + 16|0); - $5623 = $5622; - $5624 = $5623; - $5625 = HEAP32[$5624>>2]|0; - $5626 = (($5623) + 4)|0; - $5627 = $5626; - $5628 = HEAP32[$5627>>2]|0; - $5629 = (_sqlite3BtreeIntegrityCheck($5618,$5619,$5620,$5625,$nErr)|0); - HEAP32[$z>>2] = $5629; - $5630 = HEAP32[$db>>2]|0; - $5631 = HEAP32[$aRoot>>2]|0; - _sqlite3DbFree($5630,$5631); - $5632 = HEAP32[$nErr>>2]|0; - $5633 = ($5632|0)<(0); - $5634 = $5633 << 31 >> 31; - $5635 = HEAP32[$pnErr>>2]|0; - $5636 = (($5635) + 16|0); - $5637 = $5636; - $5638 = $5637; - $5639 = HEAP32[$5638>>2]|0; - $5640 = (($5637) + 4)|0; - $5641 = $5640; - $5642 = HEAP32[$5641>>2]|0; - $5643 = (_i64Subtract(($5639|0),($5642|0),($5632|0),($5634|0))|0); - $5644 = tempRet0; - $5645 = $5636; - $5646 = $5645; - HEAP32[$5646>>2] = $5643; - $5647 = (($5645) + 4)|0; - $5648 = $5647; - HEAP32[$5648>>2] = $5644; - $5649 = HEAP32[$pIn1>>2]|0; - _sqlite3VdbeMemSetNull($5649); - $5650 = HEAP32[$nErr>>2]|0; - $5651 = ($5650|0)==(0); - if (!($5651)) { - $5652 = HEAP32[$z>>2]|0; - $5653 = ($5652|0)==(0|0); - if ($5653) { - label = 900; - break L1; - } - $5654 = HEAP32[$pIn1>>2]|0; - $5655 = HEAP32[$z>>2]|0; - (_sqlite3VdbeMemSetStr($5654,$5655,-1,1,13)|0); - } - $5656 = HEAP32[$pIn1>>2]|0; - $5657 = HEAP8[$encoding>>0]|0; - $5658 = $5657&255; - (_sqlite3VdbeChangeEncoding($5656,$5658)|0); - break; - } - case 122: { - $5560 = HEAP32[$db>>2]|0; - $5561 = HEAP32[$pOp>>2]|0; - $5562 = (($5561) + 4|0); - $5563 = HEAP32[$5562>>2]|0; - $5564 = HEAP32[$pOp>>2]|0; - $5565 = (($5564) + 16|0); - $5566 = HEAP32[$5565>>2]|0; - _sqlite3UnlinkAndDeleteIndex($5560,$5563,$5566); - break; - } - case 125: { - $5659 = HEAP32[$pOp>>2]|0; - $5660 = (($5659) + 4|0); - $5661 = HEAP32[$5660>>2]|0; - $5662 = HEAP32[$aMem>>2]|0; - $5663 = (($5662) + (($5661*40)|0)|0); - HEAP32[$pIn1>>2] = $5663; - $5664 = HEAP32[$pOp>>2]|0; - $5665 = (($5664) + 8|0); - $5666 = HEAP32[$5665>>2]|0; - $5667 = HEAP32[$aMem>>2]|0; - $5668 = (($5667) + (($5666*40)|0)|0); - HEAP32[$pIn2>>2] = $5668; - $5669 = HEAP32[$pIn1>>2]|0; - $5670 = (($5669) + 28|0); - $5671 = HEAP16[$5670>>1]|0; - $5672 = $5671&65535; - $5673 = $5672 & 32; - $5674 = ($5673|0)==(0); - if ($5674) { - $5675 = HEAP32[$pIn1>>2]|0; - _sqlite3VdbeMemSetRowSet($5675); - $5676 = HEAP32[$pIn1>>2]|0; - $5677 = (($5676) + 28|0); - $5678 = HEAP16[$5677>>1]|0; - $5679 = $5678&65535; - $5680 = $5679 & 32; - $5681 = ($5680|0)==(0); - if ($5681) { - label = 900; - break L1; - } - } - $5682 = HEAP32[$pIn1>>2]|0; - $5683 = (($5682) + 16|0); - $5684 = HEAP32[$5683>>2]|0; - $5685 = HEAP32[$pIn2>>2]|0; - $5686 = (($5685) + 16|0); - $5687 = $5686; - $5688 = $5687; - $5689 = HEAP32[$5688>>2]|0; - $5690 = (($5687) + 4)|0; - $5691 = $5690; - $5692 = HEAP32[$5691>>2]|0; - _sqlite3RowSetInsert($5684,$5689,$5692); - break; - } - case 126: { - $5693 = HEAP32[$pOp>>2]|0; - $5694 = (($5693) + 4|0); - $5695 = HEAP32[$5694>>2]|0; - $5696 = HEAP32[$aMem>>2]|0; - $5697 = (($5696) + (($5695*40)|0)|0); - HEAP32[$pIn1>>2] = $5697; - $5698 = HEAP32[$pIn1>>2]|0; - $5699 = (($5698) + 28|0); - $5700 = HEAP16[$5699>>1]|0; - $5701 = $5700&65535; - $5702 = $5701 & 32; - $5703 = ($5702|0)==(0); - if (!($5703)) { - $5704 = HEAP32[$pIn1>>2]|0; - $5705 = (($5704) + 16|0); - $5706 = HEAP32[$5705>>2]|0; - $5707 = (_sqlite3RowSetNext($5706,$val)|0); - $5708 = ($5707|0)==(0); - if (!($5708)) { - $5714 = HEAP32[$pOp>>2]|0; - $5715 = (($5714) + 12|0); - $5716 = HEAP32[$5715>>2]|0; - $5717 = HEAP32[$aMem>>2]|0; - $5718 = (($5717) + (($5716*40)|0)|0); - $5719 = $val; - $5720 = $5719; - $5721 = HEAP32[$5720>>2]|0; - $5722 = (($5719) + 4)|0; - $5723 = $5722; - $5724 = HEAP32[$5723>>2]|0; - _sqlite3VdbeMemSetInt64($5718,$5721,$5724); - label = 16; - break L21; - } - } - $5709 = HEAP32[$pIn1>>2]|0; - _sqlite3VdbeMemSetNull($5709); - $5710 = HEAP32[$pOp>>2]|0; - $5711 = (($5710) + 8|0); - $5712 = HEAP32[$5711>>2]|0; - $5713 = (($5712) - 1)|0; - HEAP32[$pc>>2] = $5713; - label = 16; - break; - } - case 127: { - $5725 = HEAP32[$pOp>>2]|0; - $5726 = (($5725) + 4|0); - $5727 = HEAP32[$5726>>2]|0; - $5728 = HEAP32[$aMem>>2]|0; - $5729 = (($5728) + (($5727*40)|0)|0); - HEAP32[$pIn1>>2] = $5729; - $5730 = HEAP32[$pOp>>2]|0; - $5731 = (($5730) + 12|0); - $5732 = HEAP32[$5731>>2]|0; - $5733 = HEAP32[$aMem>>2]|0; - $5734 = (($5733) + (($5732*40)|0)|0); - HEAP32[$pIn3>>2] = $5734; - $5735 = HEAP32[$pOp>>2]|0; - $5736 = (($5735) + 16|0); - $5737 = HEAP32[$5736>>2]|0; - HEAP32[$iSet>>2] = $5737; - $5738 = HEAP32[$pIn1>>2]|0; - $5739 = (($5738) + 28|0); - $5740 = HEAP16[$5739>>1]|0; - $5741 = $5740&65535; - $5742 = $5741 & 32; - $5743 = ($5742|0)==(0); - if ($5743) { - $5744 = HEAP32[$pIn1>>2]|0; - _sqlite3VdbeMemSetRowSet($5744); - $5745 = HEAP32[$pIn1>>2]|0; - $5746 = (($5745) + 28|0); - $5747 = HEAP16[$5746>>1]|0; - $5748 = $5747&65535; - $5749 = $5748 & 32; - $5750 = ($5749|0)==(0); - if ($5750) { - label = 900; - break L1; - } - } - $5751 = HEAP32[$iSet>>2]|0; - $5752 = ($5751|0)!=(0); - if ($5752) { - $5753 = HEAP32[$pIn1>>2]|0; - $5754 = (($5753) + 16|0); - $5755 = HEAP32[$5754>>2]|0; - $5756 = HEAP32[$iSet>>2]|0; - $5757 = HEAP32[$pIn3>>2]|0; - $5758 = (($5757) + 16|0); - $5759 = $5758; - $5760 = $5759; - $5761 = HEAP32[$5760>>2]|0; - $5762 = (($5759) + 4)|0; - $5763 = $5762; - $5764 = HEAP32[$5763>>2]|0; - $5765 = (_sqlite3RowSetTest($5755,$5756,$5761,$5764)|0); - HEAP32[$exists>>2] = $5765; - $5766 = HEAP32[$exists>>2]|0; - $5767 = ($5766|0)!=(0); - if ($5767) { - $5768 = HEAP32[$pOp>>2]|0; - $5769 = (($5768) + 8|0); - $5770 = HEAP32[$5769>>2]|0; - $5771 = (($5770) - 1)|0; - HEAP32[$pc>>2] = $5771; - break L21; - } - } - $5772 = HEAP32[$iSet>>2]|0; - $5773 = ($5772|0)>=(0); - if ($5773) { - $5774 = HEAP32[$pIn1>>2]|0; - $5775 = (($5774) + 16|0); - $5776 = HEAP32[$5775>>2]|0; - $5777 = HEAP32[$pIn3>>2]|0; - $5778 = (($5777) + 16|0); - $5779 = $5778; - $5780 = $5779; - $5781 = HEAP32[$5780>>2]|0; - $5782 = (($5779) + 4)|0; - $5783 = $5782; - $5784 = HEAP32[$5783>>2]|0; - _sqlite3RowSetInsert($5776,$5781,$5784); - } - break; - } - case 128: { - $5785 = HEAP32[$pOp>>2]|0; - $5786 = (($5785) + 16|0); - $5787 = HEAP32[$5786>>2]|0; - HEAP32[$pProgram>>2] = $5787; - $5788 = HEAP32[$pOp>>2]|0; - $5789 = (($5788) + 12|0); - $5790 = HEAP32[$5789>>2]|0; - $5791 = HEAP32[$aMem>>2]|0; - $5792 = (($5791) + (($5790*40)|0)|0); - HEAP32[$pRt>>2] = $5792; - $5793 = HEAP32[$pOp>>2]|0; - $5794 = (($5793) + 3|0); - $5795 = HEAP8[$5794>>0]|0; - $5796 = ($5795<<24>>24)!=(0); - if ($5796) { - $5797 = HEAP32[$pProgram>>2]|0; - $5798 = (($5797) + 20|0); - $5799 = HEAP32[$5798>>2]|0; - HEAP32[$t88>>2] = $5799; - $5800 = HEAP32[$0>>2]|0; - $5801 = (($5800) + 176|0); - $5802 = HEAP32[$5801>>2]|0; - HEAP32[$pFrame87>>2] = $5802; - while(1) { - $5803 = HEAP32[$pFrame87>>2]|0; - $5804 = ($5803|0)!=(0|0); - if (!($5804)) { - break; - } - $5805 = HEAP32[$pFrame87>>2]|0; - $5806 = (($5805) + 24|0); - $5807 = HEAP32[$5806>>2]|0; - $5808 = HEAP32[$t88>>2]|0; - $5809 = ($5807|0)!=($5808|0); - if (!($5809)) { - break; - } - $5810 = HEAP32[$pFrame87>>2]|0; - $5811 = (($5810) + 4|0); - $5812 = HEAP32[$5811>>2]|0; - HEAP32[$pFrame87>>2] = $5812; - } - $5813 = HEAP32[$pFrame87>>2]|0; - $5814 = ($5813|0)!=(0|0); - if ($5814) { - break L21; - } - } - $5815 = HEAP32[$0>>2]|0; - $5816 = (($5815) + 184|0); - $5817 = HEAP32[$5816>>2]|0; - $5818 = HEAP32[$db>>2]|0; - $5819 = (($5818) + 88|0); - $5820 = (($5819) + 40|0); - $5821 = HEAP32[$5820>>2]|0; - $5822 = ($5817|0)>=($5821|0); - if ($5822) { - HEAP32[$rc>>2] = 1; - $5823 = HEAP32[$0>>2]|0; - $5824 = (($5823) + 44|0); - $5825 = HEAP32[$db>>2]|0; - _sqlite3SetString($5824,$5825,31696,$vararg_buffer62); - break L21; - } - $5826 = HEAP32[$pRt>>2]|0; - $5827 = (($5826) + 28|0); - $5828 = HEAP16[$5827>>1]|0; - $5829 = $5828&65535; - $5830 = $5829 & 64; - $5831 = ($5830|0)==(0); - L897: do { - if ($5831) { - $5832 = HEAP32[$pProgram>>2]|0; - $5833 = (($5832) + 8|0); - $5834 = HEAP32[$5833>>2]|0; - $5835 = HEAP32[$pProgram>>2]|0; - $5836 = (($5835) + 12|0); - $5837 = HEAP32[$5836>>2]|0; - $5838 = (($5834) + ($5837))|0; - HEAP32[$nMem>>2] = $5838; - $5839 = HEAP32[$nMem>>2]|0; - $5840 = ($5839*40)|0; - $5841 = (72 + ($5840))|0; - $5842 = HEAP32[$pProgram>>2]|0; - $5843 = (($5842) + 12|0); - $5844 = HEAP32[$5843>>2]|0; - $5845 = $5844<<2; - $5846 = (($5841) + ($5845))|0; - $5847 = HEAP32[$pProgram>>2]|0; - $5848 = (($5847) + 16|0); - $5849 = HEAP32[$5848>>2]|0; - $5850 = $5849; - $5851 = (($5846) + ($5850))|0; - HEAP32[$nByte85>>2] = $5851; - $5852 = HEAP32[$db>>2]|0; - $5853 = HEAP32[$nByte85>>2]|0; - $5854 = (_sqlite3DbMallocZero($5852,$5853)|0); - HEAP32[$pFrame87>>2] = $5854; - $5855 = HEAP32[$pFrame87>>2]|0; - $5856 = ($5855|0)!=(0|0); - if (!($5856)) { - label = 900; - break L1; - } - $5857 = HEAP32[$pRt>>2]|0; - _sqlite3VdbeMemRelease($5857); - $5858 = HEAP32[$pRt>>2]|0; - $5859 = (($5858) + 28|0); - HEAP16[$5859>>1] = 64; - $5860 = HEAP32[$pFrame87>>2]|0; - $5861 = HEAP32[$pRt>>2]|0; - $5862 = (($5861) + 16|0); - HEAP32[$5862>>2] = $5860; - $5863 = HEAP32[$0>>2]|0; - $5864 = HEAP32[$pFrame87>>2]|0; - HEAP32[$5864>>2] = $5863; - $5865 = HEAP32[$nMem>>2]|0; - $5866 = HEAP32[$pFrame87>>2]|0; - $5867 = (($5866) + 60|0); - HEAP32[$5867>>2] = $5865; - $5868 = HEAP32[$pProgram>>2]|0; - $5869 = (($5868) + 12|0); - $5870 = HEAP32[$5869>>2]|0; - $5871 = HEAP32[$pFrame87>>2]|0; - $5872 = (($5871) + 64|0); - HEAP32[$5872>>2] = $5870; - $5873 = HEAP32[$pc>>2]|0; - $5874 = HEAP32[$pFrame87>>2]|0; - $5875 = (($5874) + 44|0); - HEAP32[$5875>>2] = $5873; - $5876 = HEAP32[$0>>2]|0; - $5877 = (($5876) + 8|0); - $5878 = HEAP32[$5877>>2]|0; - $5879 = HEAP32[$pFrame87>>2]|0; - $5880 = (($5879) + 12|0); - HEAP32[$5880>>2] = $5878; - $5881 = HEAP32[$0>>2]|0; - $5882 = (($5881) + 28|0); - $5883 = HEAP32[$5882>>2]|0; - $5884 = HEAP32[$pFrame87>>2]|0; - $5885 = (($5884) + 52|0); - HEAP32[$5885>>2] = $5883; - $5886 = HEAP32[$0>>2]|0; - $5887 = (($5886) + 56|0); - $5888 = HEAP32[$5887>>2]|0; - $5889 = HEAP32[$pFrame87>>2]|0; - $5890 = (($5889) + 20|0); - HEAP32[$5890>>2] = $5888; - $5891 = HEAP32[$0>>2]|0; - $5892 = (($5891) + 36|0); - $5893 = HEAP32[$5892>>2]|0; - $5894 = HEAP32[$pFrame87>>2]|0; - $5895 = (($5894) + 40|0); - HEAP32[$5895>>2] = $5893; - $5896 = HEAP32[$0>>2]|0; - $5897 = (($5896) + 4|0); - $5898 = HEAP32[$5897>>2]|0; - $5899 = HEAP32[$pFrame87>>2]|0; - $5900 = (($5899) + 8|0); - HEAP32[$5900>>2] = $5898; - $5901 = HEAP32[$0>>2]|0; - $5902 = (($5901) + 32|0); - $5903 = HEAP32[$5902>>2]|0; - $5904 = HEAP32[$pFrame87>>2]|0; - $5905 = (($5904) + 48|0); - HEAP32[$5905>>2] = $5903; - $5906 = HEAP32[$pProgram>>2]|0; - $5907 = (($5906) + 20|0); - $5908 = HEAP32[$5907>>2]|0; - $5909 = HEAP32[$pFrame87>>2]|0; - $5910 = (($5909) + 24|0); - HEAP32[$5910>>2] = $5908; - $5911 = HEAP32[$0>>2]|0; - $5912 = (($5911) + 200|0); - $5913 = HEAP32[$5912>>2]|0; - $5914 = HEAP32[$pFrame87>>2]|0; - $5915 = (($5914) + 16|0); - HEAP32[$5915>>2] = $5913; - $5916 = HEAP32[$0>>2]|0; - $5917 = (($5916) + 196|0); - $5918 = HEAP32[$5917>>2]|0; - $5919 = HEAP32[$pFrame87>>2]|0; - $5920 = (($5919) + 56|0); - HEAP32[$5920>>2] = $5918; - $5921 = HEAP32[$pFrame87>>2]|0; - $5922 = (($5921) + 60|0); - $5923 = HEAP32[$5922>>2]|0; - $5924 = HEAP32[$pFrame87>>2]|0; - $5925 = (($5924) + 72|0); - $5926 = (($5925) + (($5923*40)|0)|0); - HEAP32[$pEnd>>2] = $5926; - $5927 = HEAP32[$pFrame87>>2]|0; - $5928 = (($5927) + 72|0); - HEAP32[$pMem86>>2] = $5928; - while(1) { - $5929 = HEAP32[$pMem86>>2]|0; - $5930 = HEAP32[$pEnd>>2]|0; - $5931 = ($5929|0)!=($5930|0); - if (!($5931)) { - break L897; - } - $5932 = HEAP32[$pMem86>>2]|0; - $5933 = (($5932) + 28|0); - HEAP16[$5933>>1] = 128; - $5934 = HEAP32[$db>>2]|0; - $5935 = HEAP32[$pMem86>>2]|0; - HEAP32[$5935>>2] = $5934; - $5936 = HEAP32[$pMem86>>2]|0; - $5937 = (($5936) + 40|0); - HEAP32[$pMem86>>2] = $5937; - } - } else { - $5938 = HEAP32[$pRt>>2]|0; - $5939 = (($5938) + 16|0); - $5940 = HEAP32[$5939>>2]|0; - HEAP32[$pFrame87>>2] = $5940; - } - } while(0); - $5941 = HEAP32[$0>>2]|0; - $5942 = (($5941) + 184|0); - $5943 = HEAP32[$5942>>2]|0; - $5944 = (($5943) + 1)|0; - HEAP32[$5942>>2] = $5944; - $5945 = HEAP32[$0>>2]|0; - $5946 = (($5945) + 176|0); - $5947 = HEAP32[$5946>>2]|0; - $5948 = HEAP32[$pFrame87>>2]|0; - $5949 = (($5948) + 4|0); - HEAP32[$5949>>2] = $5947; - $5950 = $lastRowid; - $5951 = $5950; - $5952 = HEAP32[$5951>>2]|0; - $5953 = (($5950) + 4)|0; - $5954 = $5953; - $5955 = HEAP32[$5954>>2]|0; - $5956 = HEAP32[$pFrame87>>2]|0; - $5957 = (($5956) + 32|0); - $5958 = $5957; - $5959 = $5958; - HEAP32[$5959>>2] = $5952; - $5960 = (($5958) + 4)|0; - $5961 = $5960; - HEAP32[$5961>>2] = $5955; - $5962 = HEAP32[$0>>2]|0; - $5963 = (($5962) + 92|0); - $5964 = HEAP32[$5963>>2]|0; - $5965 = HEAP32[$pFrame87>>2]|0; - $5966 = (($5965) + 68|0); - HEAP32[$5966>>2] = $5964; - $5967 = HEAP32[$0>>2]|0; - $5968 = (($5967) + 92|0); - HEAP32[$5968>>2] = 0; - $5969 = HEAP32[$pFrame87>>2]|0; - $5970 = HEAP32[$0>>2]|0; - $5971 = (($5970) + 176|0); - HEAP32[$5971>>2] = $5969; - $5972 = HEAP32[$pFrame87>>2]|0; - $5973 = (($5972) + 72|0); - $5974 = (($5973) + -40|0); - HEAP32[$aMem>>2] = $5974; - $5975 = HEAP32[$0>>2]|0; - $5976 = (($5975) + 8|0); - HEAP32[$5976>>2] = $5974; - $5977 = HEAP32[$pFrame87>>2]|0; - $5978 = (($5977) + 60|0); - $5979 = HEAP32[$5978>>2]|0; - $5980 = HEAP32[$0>>2]|0; - $5981 = (($5980) + 28|0); - HEAP32[$5981>>2] = $5979; - $5982 = HEAP32[$pFrame87>>2]|0; - $5983 = (($5982) + 64|0); - $5984 = HEAP32[$5983>>2]|0; - $5985 = $5984&65535; - $5986 = $5985&65535; - $5987 = HEAP32[$0>>2]|0; - $5988 = (($5987) + 36|0); - HEAP32[$5988>>2] = $5986; - $5989 = HEAP32[$0>>2]|0; - $5990 = (($5989) + 28|0); - $5991 = HEAP32[$5990>>2]|0; - $5992 = (($5991) + 1)|0; - $5993 = HEAP32[$aMem>>2]|0; - $5994 = (($5993) + (($5992*40)|0)|0); - $5995 = HEAP32[$0>>2]|0; - $5996 = (($5995) + 56|0); - HEAP32[$5996>>2] = $5994; - $5997 = HEAP32[$pProgram>>2]|0; - $5998 = HEAP32[$5997>>2]|0; - HEAP32[$aOp>>2] = $5998; - $5999 = HEAP32[$0>>2]|0; - $6000 = (($5999) + 4|0); - HEAP32[$6000>>2] = $5998; - $6001 = HEAP32[$pProgram>>2]|0; - $6002 = (($6001) + 4|0); - $6003 = HEAP32[$6002>>2]|0; - $6004 = HEAP32[$0>>2]|0; - $6005 = (($6004) + 32|0); - HEAP32[$6005>>2] = $6003; - $6006 = HEAP32[$0>>2]|0; - $6007 = (($6006) + 36|0); - $6008 = HEAP32[$6007>>2]|0; - $6009 = HEAP32[$0>>2]|0; - $6010 = (($6009) + 56|0); - $6011 = HEAP32[$6010>>2]|0; - $6012 = (($6011) + ($6008<<2)|0); - $6013 = HEAP32[$0>>2]|0; - $6014 = (($6013) + 200|0); - HEAP32[$6014>>2] = $6012; - $6015 = HEAP32[$pProgram>>2]|0; - $6016 = (($6015) + 16|0); - $6017 = HEAP32[$6016>>2]|0; - $6018 = HEAP32[$0>>2]|0; - $6019 = (($6018) + 196|0); - HEAP32[$6019>>2] = $6017; - HEAP32[$pc>>2] = -1; - $6020 = HEAP32[$0>>2]|0; - $6021 = (($6020) + 200|0); - $6022 = HEAP32[$6021>>2]|0; - $6023 = HEAP32[$0>>2]|0; - $6024 = (($6023) + 196|0); - $6025 = HEAP32[$6024>>2]|0; - _memset(($6022|0),0,($6025|0))|0; - break; - } - case 129: { - $6026 = HEAP32[$0>>2]|0; - $6027 = (($6026) + 176|0); - $6028 = HEAP32[$6027>>2]|0; - HEAP32[$pFrame89>>2] = $6028; - $6029 = HEAP32[$pOp>>2]|0; - $6030 = (($6029) + 4|0); - $6031 = HEAP32[$6030>>2]|0; - $6032 = HEAP32[$pFrame89>>2]|0; - $6033 = (($6032) + 44|0); - $6034 = HEAP32[$6033>>2]|0; - $6035 = HEAP32[$pFrame89>>2]|0; - $6036 = (($6035) + 8|0); - $6037 = HEAP32[$6036>>2]|0; - $6038 = (($6037) + (($6034*20)|0)|0); - $6039 = (($6038) + 4|0); - $6040 = HEAP32[$6039>>2]|0; - $6041 = (($6031) + ($6040))|0; - $6042 = HEAP32[$pFrame89>>2]|0; - $6043 = (($6042) + 12|0); - $6044 = HEAP32[$6043>>2]|0; - $6045 = (($6044) + (($6041*40)|0)|0); - HEAP32[$pIn>>2] = $6045; - $6046 = HEAP32[$pOut>>2]|0; - $6047 = HEAP32[$pIn>>2]|0; - _sqlite3VdbeMemShallowCopy($6046,$6047,4096); - break; - } - case 130: { - $6048 = HEAP32[$db>>2]|0; - $6049 = (($6048) + 24|0); - $6050 = HEAP32[$6049>>2]|0; - $6051 = $6050 & 16777216; - $6052 = ($6051|0)!=(0); - $6053 = HEAP32[$pOp>>2]|0; - if ($6052) { - $6054 = (($6053) + 8|0); - $6055 = HEAP32[$6054>>2]|0; - $6056 = ($6055|0)<(0); - $6057 = $6056 << 31 >> 31; - $6058 = HEAP32[$db>>2]|0; - $6059 = (($6058) + 504|0); - $6060 = $6059; - $6061 = $6060; - $6062 = HEAP32[$6061>>2]|0; - $6063 = (($6060) + 4)|0; - $6064 = $6063; - $6065 = HEAP32[$6064>>2]|0; - $6066 = (_i64Add(($6062|0),($6065|0),($6055|0),($6057|0))|0); - $6067 = tempRet0; - $6068 = $6059; - $6069 = $6068; - HEAP32[$6069>>2] = $6066; - $6070 = (($6068) + 4)|0; - $6071 = $6070; - HEAP32[$6071>>2] = $6067; - break L21; - } - $6072 = (($6053) + 4|0); - $6073 = HEAP32[$6072>>2]|0; - $6074 = ($6073|0)!=(0); - $6075 = HEAP32[$pOp>>2]|0; - $6076 = (($6075) + 8|0); - $6077 = HEAP32[$6076>>2]|0; - $6078 = ($6077|0)<(0); - $6079 = $6078 << 31 >> 31; - if ($6074) { - $6080 = HEAP32[$db>>2]|0; - $6081 = (($6080) + 496|0); - $6082 = $6081; - $6083 = $6082; - $6084 = HEAP32[$6083>>2]|0; - $6085 = (($6082) + 4)|0; - $6086 = $6085; - $6087 = HEAP32[$6086>>2]|0; - $6088 = (_i64Add(($6084|0),($6087|0),($6077|0),($6079|0))|0); - $6089 = tempRet0; - $6090 = $6081; - $6091 = $6090; - HEAP32[$6091>>2] = $6088; - $6092 = (($6090) + 4)|0; - $6093 = $6092; - HEAP32[$6093>>2] = $6089; - break L21; - } else { - $6094 = HEAP32[$0>>2]|0; - $6095 = (($6094) + 144|0); - $6096 = $6095; - $6097 = $6096; - $6098 = HEAP32[$6097>>2]|0; - $6099 = (($6096) + 4)|0; - $6100 = $6099; - $6101 = HEAP32[$6100>>2]|0; - $6102 = (_i64Add(($6098|0),($6101|0),($6077|0),($6079|0))|0); - $6103 = tempRet0; - $6104 = $6095; - $6105 = $6104; - HEAP32[$6105>>2] = $6102; - $6106 = (($6104) + 4)|0; - $6107 = $6106; - HEAP32[$6107>>2] = $6103; - break L21; - } - break; - } - case 131: { - $6108 = HEAP32[$pOp>>2]|0; - $6109 = (($6108) + 4|0); - $6110 = HEAP32[$6109>>2]|0; - $6111 = ($6110|0)!=(0); - if ($6111) { - $6112 = HEAP32[$db>>2]|0; - $6113 = (($6112) + 496|0); - $6114 = $6113; - $6115 = $6114; - $6116 = HEAP32[$6115>>2]|0; - $6117 = (($6114) + 4)|0; - $6118 = $6117; - $6119 = HEAP32[$6118>>2]|0; - $6120 = ($6116|0)==(0); - $6121 = ($6119|0)==(0); - $6122 = $6120 & $6121; - if (!($6122)) { - break L21; - } - $6123 = HEAP32[$db>>2]|0; - $6124 = (($6123) + 504|0); - $6125 = $6124; - $6126 = $6125; - $6127 = HEAP32[$6126>>2]|0; - $6128 = (($6125) + 4)|0; - $6129 = $6128; - $6130 = HEAP32[$6129>>2]|0; - $6131 = ($6127|0)==(0); - $6132 = ($6130|0)==(0); - $6133 = $6131 & $6132; - if (!($6133)) { - break L21; - } - $6134 = HEAP32[$pOp>>2]|0; - $6135 = (($6134) + 8|0); - $6136 = HEAP32[$6135>>2]|0; - $6137 = (($6136) - 1)|0; - HEAP32[$pc>>2] = $6137; - break L21; - } else { - $6138 = HEAP32[$0>>2]|0; - $6139 = (($6138) + 144|0); - $6140 = $6139; - $6141 = $6140; - $6142 = HEAP32[$6141>>2]|0; - $6143 = (($6140) + 4)|0; - $6144 = $6143; - $6145 = HEAP32[$6144>>2]|0; - $6146 = ($6142|0)==(0); - $6147 = ($6145|0)==(0); - $6148 = $6146 & $6147; - if (!($6148)) { - break L21; - } - $6149 = HEAP32[$db>>2]|0; - $6150 = (($6149) + 504|0); - $6151 = $6150; - $6152 = $6151; - $6153 = HEAP32[$6152>>2]|0; - $6154 = (($6151) + 4)|0; - $6155 = $6154; - $6156 = HEAP32[$6155>>2]|0; - $6157 = ($6153|0)==(0); - $6158 = ($6156|0)==(0); - $6159 = $6157 & $6158; - if (!($6159)) { - break L21; - } - $6160 = HEAP32[$pOp>>2]|0; - $6161 = (($6160) + 8|0); - $6162 = HEAP32[$6161>>2]|0; - $6163 = (($6162) - 1)|0; - HEAP32[$pc>>2] = $6163; - break L21; - } - break; - } - case 132: { - $6164 = HEAP32[$0>>2]|0; - $6165 = (($6164) + 176|0); - $6166 = HEAP32[$6165>>2]|0; - $6167 = ($6166|0)!=(0|0); - if ($6167) { - $6168 = HEAP32[$0>>2]|0; - $6169 = (($6168) + 176|0); - $6170 = HEAP32[$6169>>2]|0; - HEAP32[$pFrame90>>2] = $6170; - while(1) { - $6171 = HEAP32[$pFrame90>>2]|0; - $6172 = (($6171) + 4|0); - $6173 = HEAP32[$6172>>2]|0; - $6174 = ($6173|0)!=(0|0); - if (!($6174)) { - break; - } - $6175 = HEAP32[$pFrame90>>2]|0; - $6176 = (($6175) + 4|0); - $6177 = HEAP32[$6176>>2]|0; - HEAP32[$pFrame90>>2] = $6177; - } - $6178 = HEAP32[$pOp>>2]|0; - $6179 = (($6178) + 4|0); - $6180 = HEAP32[$6179>>2]|0; - $6181 = HEAP32[$pFrame90>>2]|0; - $6182 = (($6181) + 12|0); - $6183 = HEAP32[$6182>>2]|0; - $6184 = (($6183) + (($6180*40)|0)|0); - HEAP32[$pIn1>>2] = $6184; - } else { - $6185 = HEAP32[$pOp>>2]|0; - $6186 = (($6185) + 4|0); - $6187 = HEAP32[$6186>>2]|0; - $6188 = HEAP32[$aMem>>2]|0; - $6189 = (($6188) + (($6187*40)|0)|0); - HEAP32[$pIn1>>2] = $6189; - } - $6190 = HEAP32[$pIn1>>2]|0; - (_sqlite3VdbeMemIntegerify($6190)|0); - $6191 = HEAP32[$pOp>>2]|0; - $6192 = (($6191) + 8|0); - $6193 = HEAP32[$6192>>2]|0; - $6194 = HEAP32[$aMem>>2]|0; - $6195 = (($6194) + (($6193*40)|0)|0); - HEAP32[$pIn2>>2] = $6195; - $6196 = HEAP32[$pIn2>>2]|0; - (_sqlite3VdbeMemIntegerify($6196)|0); - $6197 = HEAP32[$pIn1>>2]|0; - $6198 = (($6197) + 16|0); - $6199 = $6198; - $6200 = $6199; - $6201 = HEAP32[$6200>>2]|0; - $6202 = (($6199) + 4)|0; - $6203 = $6202; - $6204 = HEAP32[$6203>>2]|0; - $6205 = HEAP32[$pIn2>>2]|0; - $6206 = (($6205) + 16|0); - $6207 = $6206; - $6208 = $6207; - $6209 = HEAP32[$6208>>2]|0; - $6210 = (($6207) + 4)|0; - $6211 = $6210; - $6212 = HEAP32[$6211>>2]|0; - $6213 = ($6204|0)<($6212|0); - $6214 = ($6204|0)==($6212|0); - $6215 = ($6201>>>0)<($6209>>>0); - $6216 = $6214 & $6215; - $6217 = $6213 | $6216; - if ($6217) { - $6218 = HEAP32[$pIn2>>2]|0; - $6219 = (($6218) + 16|0); - $6220 = $6219; - $6221 = $6220; - $6222 = HEAP32[$6221>>2]|0; - $6223 = (($6220) + 4)|0; - $6224 = $6223; - $6225 = HEAP32[$6224>>2]|0; - $6226 = HEAP32[$pIn1>>2]|0; - $6227 = (($6226) + 16|0); - $6228 = $6227; - $6229 = $6228; - HEAP32[$6229>>2] = $6222; - $6230 = (($6228) + 4)|0; - $6231 = $6230; - HEAP32[$6231>>2] = $6225; - } - break; - } - case 134: { - $6232 = HEAP32[$pOp>>2]|0; - $6233 = (($6232) + 4|0); - $6234 = HEAP32[$6233>>2]|0; - $6235 = HEAP32[$aMem>>2]|0; - $6236 = (($6235) + (($6234*40)|0)|0); - HEAP32[$pIn1>>2] = $6236; - $6237 = HEAP32[$pIn1>>2]|0; - $6238 = (($6237) + 16|0); - $6239 = $6238; - $6240 = $6239; - $6241 = HEAP32[$6240>>2]|0; - $6242 = (($6239) + 4)|0; - $6243 = $6242; - $6244 = HEAP32[$6243>>2]|0; - $6245 = ($6244|0)>(0); - $6246 = ($6244|0)==(0); - $6247 = ($6241>>>0)>(0); - $6248 = $6246 & $6247; - $6249 = $6245 | $6248; - if ($6249) { - $6250 = HEAP32[$pOp>>2]|0; - $6251 = (($6250) + 8|0); - $6252 = HEAP32[$6251>>2]|0; - $6253 = (($6252) - 1)|0; - HEAP32[$pc>>2] = $6253; - } - break; - } - case 135: { - $6254 = HEAP32[$pOp>>2]|0; - $6255 = (($6254) + 4|0); - $6256 = HEAP32[$6255>>2]|0; - $6257 = HEAP32[$aMem>>2]|0; - $6258 = (($6257) + (($6256*40)|0)|0); - HEAP32[$pIn1>>2] = $6258; - $6259 = HEAP32[$pIn1>>2]|0; - $6260 = (($6259) + 16|0); - $6261 = $6260; - $6262 = $6261; - $6263 = HEAP32[$6262>>2]|0; - $6264 = (($6261) + 4)|0; - $6265 = $6264; - $6266 = HEAP32[$6265>>2]|0; - $6267 = ($6266|0)<(0); - if ($6267) { - $6268 = HEAP32[$pOp>>2]|0; - $6269 = (($6268) + 8|0); - $6270 = HEAP32[$6269>>2]|0; - $6271 = (($6270) - 1)|0; - HEAP32[$pc>>2] = $6271; - } - break; - } - case 136: { - $6272 = HEAP32[$pOp>>2]|0; - $6273 = (($6272) + 4|0); - $6274 = HEAP32[$6273>>2]|0; - $6275 = HEAP32[$aMem>>2]|0; - $6276 = (($6275) + (($6274*40)|0)|0); - HEAP32[$pIn1>>2] = $6276; - $6277 = HEAP32[$pOp>>2]|0; - $6278 = (($6277) + 12|0); - $6279 = HEAP32[$6278>>2]|0; - $6280 = ($6279|0)<(0); - $6281 = $6280 << 31 >> 31; - $6282 = HEAP32[$pIn1>>2]|0; - $6283 = (($6282) + 16|0); - $6284 = $6283; - $6285 = $6284; - $6286 = HEAP32[$6285>>2]|0; - $6287 = (($6284) + 4)|0; - $6288 = $6287; - $6289 = HEAP32[$6288>>2]|0; - $6290 = (_i64Add(($6286|0),($6289|0),($6279|0),($6281|0))|0); - $6291 = tempRet0; - $6292 = $6283; - $6293 = $6292; - HEAP32[$6293>>2] = $6290; - $6294 = (($6292) + 4)|0; - $6295 = $6294; - HEAP32[$6295>>2] = $6291; - $6296 = HEAP32[$pIn1>>2]|0; - $6297 = (($6296) + 16|0); - $6298 = $6297; - $6299 = $6298; - $6300 = HEAP32[$6299>>2]|0; - $6301 = (($6298) + 4)|0; - $6302 = $6301; - $6303 = HEAP32[$6302>>2]|0; - $6304 = ($6300|0)==(0); - $6305 = ($6303|0)==(0); - $6306 = $6304 & $6305; - if ($6306) { - $6307 = HEAP32[$pOp>>2]|0; - $6308 = (($6307) + 8|0); - $6309 = HEAP32[$6308>>2]|0; - $6310 = (($6309) - 1)|0; - HEAP32[$pc>>2] = $6310; - } - break; - } - case 10: { - $6311 = HEAP32[$pOp>>2]|0; - $6312 = (($6311) + 3|0); - $6313 = HEAP8[$6312>>0]|0; - $6314 = $6313&255; - HEAP32[$n91>>2] = $6314; - $6315 = HEAP32[$pOp>>2]|0; - $6316 = (($6315) + 8|0); - $6317 = HEAP32[$6316>>2]|0; - $6318 = HEAP32[$aMem>>2]|0; - $6319 = (($6318) + (($6317*40)|0)|0); - HEAP32[$pRec94>>2] = $6319; - $6320 = HEAP32[$0>>2]|0; - $6321 = (($6320) + 12|0); - $6322 = HEAP32[$6321>>2]|0; - HEAP32[$apVal96>>2] = $6322; - HEAP32[$i92>>2] = 0; - while(1) { - $6323 = HEAP32[$i92>>2]|0; - $6324 = HEAP32[$n91>>2]|0; - $6325 = ($6323|0)<($6324|0); - if (!($6325)) { - break; - } - $6326 = HEAP32[$pRec94>>2]|0; - $6327 = HEAP32[$i92>>2]|0; - $6328 = HEAP32[$apVal96>>2]|0; - $6329 = (($6328) + ($6327<<2)|0); - HEAP32[$6329>>2] = $6326; - $6330 = HEAP32[$i92>>2]|0; - $6331 = (($6330) + 1)|0; - HEAP32[$i92>>2] = $6331; - $6332 = HEAP32[$pRec94>>2]|0; - $6333 = (($6332) + 40|0); - HEAP32[$pRec94>>2] = $6333; - } - $6334 = HEAP32[$pOp>>2]|0; - $6335 = (($6334) + 16|0); - $6336 = HEAP32[$6335>>2]|0; - HEAP32[$ctx95>>2] = $6336; - $6337 = HEAP32[$pOp>>2]|0; - $6338 = (($6337) + 12|0); - $6339 = HEAP32[$6338>>2]|0; - $6340 = HEAP32[$aMem>>2]|0; - $6341 = (($6340) + (($6339*40)|0)|0); - HEAP32[$pMem93>>2] = $6341; - $6342 = (($ctx95) + 48|0); - HEAP32[$6342>>2] = $6341; - $6343 = HEAP32[$pMem93>>2]|0; - $6344 = (($6343) + 24|0); - $6345 = HEAP32[$6344>>2]|0; - $6346 = (($6345) + 1)|0; - HEAP32[$6344>>2] = $6346; - $6347 = (($ctx95) + 8|0); - $6348 = (($6347) + 28|0); - HEAP16[$6348>>1] = 1; - $6349 = (($ctx95) + 8|0); - $6350 = (($6349) + 4|0); - HEAP32[$6350>>2] = 0; - $6351 = (($ctx95) + 8|0); - $6352 = (($6351) + 36|0); - HEAP32[$6352>>2] = 0; - $6353 = (($ctx95) + 8|0); - $6354 = (($6353) + 32|0); - HEAP32[$6354>>2] = 0; - $6355 = HEAP32[$db>>2]|0; - $6356 = (($ctx95) + 8|0); - HEAP32[$6356>>2] = $6355; - $6357 = (($ctx95) + 64|0); - HEAP32[$6357>>2] = 0; - $6358 = (($ctx95) + 52|0); - HEAP32[$6358>>2] = 0; - $6359 = (($ctx95) + 68|0); - HEAP8[$6359>>0] = 0; - $6360 = HEAP32[$ctx95>>2]|0; - $6361 = (($6360) + 2|0); - $6362 = HEAP16[$6361>>1]|0; - $6363 = $6362&65535; - $6364 = $6363 & 32; - $6365 = ($6364|0)!=(0); - if ($6365) { - $6366 = HEAP32[$pOp>>2]|0; - $6367 = (($6366) + -20|0); - $6368 = (($6367) + 16|0); - $6369 = HEAP32[$6368>>2]|0; - $6370 = (($ctx95) + 52|0); - HEAP32[$6370>>2] = $6369; - } - $6371 = HEAP32[$ctx95>>2]|0; - $6372 = (($6371) + 16|0); - $6373 = HEAP32[$6372>>2]|0; - $6374 = HEAP32[$n91>>2]|0; - $6375 = HEAP32[$apVal96>>2]|0; - FUNCTION_TABLE_viii[$6373 & 63]($ctx95,$6374,$6375); - $6376 = (($ctx95) + 64|0); - $6377 = HEAP32[$6376>>2]|0; - $6378 = ($6377|0)!=(0); - if ($6378) { - $6379 = HEAP32[$0>>2]|0; - $6380 = (($6379) + 44|0); - $6381 = HEAP32[$db>>2]|0; - $6382 = (($ctx95) + 8|0); - $6383 = (_sqlite3_value_text($6382)|0); - HEAP32[$vararg_buffer62>>2] = $6383; - _sqlite3SetString($6380,$6381,1456,$vararg_buffer62); - $6384 = (($ctx95) + 64|0); - $6385 = HEAP32[$6384>>2]|0; - HEAP32[$rc>>2] = $6385; - } - $6386 = (($ctx95) + 68|0); - $6387 = HEAP8[$6386>>0]|0; - $6388 = ($6387<<24>>24)!=(0); - if ($6388) { - $6389 = HEAP32[$pOp>>2]|0; - $6390 = (($6389) + -20|0); - $6391 = (($6390) + 4|0); - $6392 = HEAP32[$6391>>2]|0; - HEAP32[$i92>>2] = $6392; - $6393 = HEAP32[$i92>>2]|0; - $6394 = ($6393|0)!=(0); - if ($6394) { - $6395 = HEAP32[$i92>>2]|0; - $6396 = HEAP32[$aMem>>2]|0; - $6397 = (($6396) + (($6395*40)|0)|0); - _sqlite3VdbeMemSetInt64($6397,1,0); - } - } - $6398 = (($ctx95) + 8|0); - _sqlite3VdbeMemRelease($6398); - break; - } - case 137: { - $6399 = HEAP32[$pOp>>2]|0; - $6400 = (($6399) + 4|0); - $6401 = HEAP32[$6400>>2]|0; - $6402 = HEAP32[$aMem>>2]|0; - $6403 = (($6402) + (($6401*40)|0)|0); - HEAP32[$pMem97>>2] = $6403; - $6404 = HEAP32[$pMem97>>2]|0; - $6405 = HEAP32[$pOp>>2]|0; - $6406 = (($6405) + 16|0); - $6407 = HEAP32[$6406>>2]|0; - $6408 = (_sqlite3VdbeMemFinalize($6404,$6407)|0); - HEAP32[$rc>>2] = $6408; - $6409 = HEAP32[$rc>>2]|0; - $6410 = ($6409|0)!=(0); - if ($6410) { - $6411 = HEAP32[$0>>2]|0; - $6412 = (($6411) + 44|0); - $6413 = HEAP32[$db>>2]|0; - $6414 = HEAP32[$pMem97>>2]|0; - $6415 = (_sqlite3_value_text($6414)|0); - HEAP32[$vararg_buffer62>>2] = $6415; - _sqlite3SetString($6412,$6413,1456,$vararg_buffer62); - } - $6416 = HEAP32[$pMem97>>2]|0; - $6417 = HEAP8[$encoding>>0]|0; - $6418 = $6417&255; - (_sqlite3VdbeChangeEncoding($6416,$6418)|0); - $6419 = HEAP32[$pMem97>>2]|0; - $6420 = (_sqlite3VdbeMemTooBig($6419)|0); - $6421 = ($6420|0)!=(0); - if ($6421) { - label = 899; - break L11; - } - break; - } - case 12: { - $6453 = HEAP32[$pOp>>2]|0; - $6454 = (($6453) + 12|0); - $6455 = HEAP32[$6454>>2]|0; - HEAP32[$eNew>>2] = $6455; - $6456 = HEAP32[$pOp>>2]|0; - $6457 = (($6456) + 4|0); - $6458 = HEAP32[$6457>>2]|0; - $6459 = HEAP32[$db>>2]|0; - $6460 = (($6459) + 16|0); - $6461 = HEAP32[$6460>>2]|0; - $6462 = (($6461) + ($6458<<4)|0); - $6463 = (($6462) + 4|0); - $6464 = HEAP32[$6463>>2]|0; - HEAP32[$pBt100>>2] = $6464; - $6465 = HEAP32[$pBt100>>2]|0; - $6466 = (_sqlite3BtreePager($6465)|0); - HEAP32[$pPager>>2] = $6466; - $6467 = HEAP32[$pPager>>2]|0; - $6468 = (_sqlite3PagerGetJournalMode($6467)|0); - HEAP32[$eOld>>2] = $6468; - $6469 = HEAP32[$eNew>>2]|0; - $6470 = ($6469|0)==(-1); - if ($6470) { - $6471 = HEAP32[$eOld>>2]|0; - HEAP32[$eNew>>2] = $6471; - } - $6472 = HEAP32[$pPager>>2]|0; - $6473 = (_sqlite3PagerOkToChangeJournalMode($6472)|0); - $6474 = ($6473|0)!=(0); - if (!($6474)) { - $6475 = HEAP32[$eOld>>2]|0; - HEAP32[$eNew>>2] = $6475; - } - $6476 = HEAP32[$pPager>>2]|0; - $6477 = (_sqlite3PagerFilename($6476,1)|0); - HEAP32[$zFilename>>2] = $6477; - $6478 = HEAP32[$eNew>>2]|0; - $6479 = ($6478|0)==(5); - do { - if ($6479) { - $6480 = HEAP32[$zFilename>>2]|0; - $6481 = (_sqlite3Strlen30($6480)|0); - $6482 = ($6481|0)==(0); - if (!($6482)) { - $6483 = HEAP32[$pPager>>2]|0; - $6484 = (_sqlite3PagerWalSupported($6483)|0); - $6485 = ($6484|0)!=(0); - if ($6485) { - break; - } - } - $6486 = HEAP32[$eOld>>2]|0; - HEAP32[$eNew>>2] = $6486; - } - } while(0); - $6487 = HEAP32[$eNew>>2]|0; - $6488 = HEAP32[$eOld>>2]|0; - $6489 = ($6487|0)!=($6488|0); - do { - if ($6489) { - $6490 = HEAP32[$eOld>>2]|0; - $6491 = ($6490|0)==(5); - if (!($6491)) { - $6492 = HEAP32[$eNew>>2]|0; - $6493 = ($6492|0)==(5); - if (!($6493)) { - break; - } - } - $6494 = HEAP32[$db>>2]|0; - $6495 = (($6494) + 62|0); - $6496 = HEAP8[$6495>>0]|0; - $6497 = ($6496<<24>>24)!=(0); - if ($6497) { - $6498 = HEAP32[$db>>2]|0; - $6499 = (($6498) + 144|0); - $6500 = HEAP32[$6499>>2]|0; - $6501 = ($6500|0)>(1); - if (!($6501)) { - $6508 = HEAP32[$eOld>>2]|0; - $6509 = ($6508|0)==(5); - do { - if ($6509) { - $6510 = HEAP32[$pPager>>2]|0; - $6511 = (_sqlite3PagerCloseWal($6510)|0); - HEAP32[$rc>>2] = $6511; - $6512 = HEAP32[$rc>>2]|0; - $6513 = ($6512|0)==(0); - if (!($6513)) { - break; - } - $6514 = HEAP32[$pPager>>2]|0; - $6515 = HEAP32[$eNew>>2]|0; - (_sqlite3PagerSetJournalMode($6514,$6515)|0); - } else { - $6516 = HEAP32[$eOld>>2]|0; - $6517 = ($6516|0)==(4); - if (!($6517)) { - break; - } - $6518 = HEAP32[$pPager>>2]|0; - (_sqlite3PagerSetJournalMode($6518,2)|0); - } - } while(0); - $6519 = HEAP32[$rc>>2]|0; - $6520 = ($6519|0)==(0); - if (!($6520)) { - break; - } - $6521 = HEAP32[$pBt100>>2]|0; - $6522 = HEAP32[$eNew>>2]|0; - $6523 = ($6522|0)==(5); - $6524 = $6523 ? 2 : 1; - $6525 = (_sqlite3BtreeSetVersion($6521,$6524)|0); - HEAP32[$rc>>2] = $6525; - break; - } - } - HEAP32[$rc>>2] = 1; - $6502 = HEAP32[$0>>2]|0; - $6503 = (($6502) + 44|0); - $6504 = HEAP32[$db>>2]|0; - $6505 = HEAP32[$eNew>>2]|0; - $6506 = ($6505|0)==(5); - $6507 = $6506 ? 31792 : 31800; - HEAP32[$vararg_buffer62>>2] = $6507; - _sqlite3SetString($6503,$6504,31736,$vararg_buffer62); - break L21; - } - } while(0); - $6526 = HEAP32[$rc>>2]|0; - $6527 = ($6526|0)!=(0); - if ($6527) { - $6528 = HEAP32[$eOld>>2]|0; - HEAP32[$eNew>>2] = $6528; - } - $6529 = HEAP32[$pPager>>2]|0; - $6530 = HEAP32[$eNew>>2]|0; - $6531 = (_sqlite3PagerSetJournalMode($6529,$6530)|0); - HEAP32[$eNew>>2] = $6531; - $6532 = HEAP32[$pOp>>2]|0; - $6533 = (($6532) + 8|0); - $6534 = HEAP32[$6533>>2]|0; - $6535 = HEAP32[$aMem>>2]|0; - $6536 = (($6535) + (($6534*40)|0)|0); - HEAP32[$pOut>>2] = $6536; - $6537 = HEAP32[$pOut>>2]|0; - $6538 = (($6537) + 28|0); - HEAP16[$6538>>1] = 2562; - $6539 = HEAP32[$eNew>>2]|0; - $6540 = (_sqlite3JournalModename($6539)|0); - $6541 = HEAP32[$pOut>>2]|0; - $6542 = (($6541) + 4|0); - HEAP32[$6542>>2] = $6540; - $6543 = HEAP32[$pOut>>2]|0; - $6544 = (($6543) + 4|0); - $6545 = HEAP32[$6544>>2]|0; - $6546 = (_sqlite3Strlen30($6545)|0); - $6547 = HEAP32[$pOut>>2]|0; - $6548 = (($6547) + 24|0); - HEAP32[$6548>>2] = $6546; - $6549 = HEAP32[$pOut>>2]|0; - $6550 = (($6549) + 30|0); - HEAP8[$6550>>0] = 1; - $6551 = HEAP32[$pOut>>2]|0; - $6552 = HEAP8[$encoding>>0]|0; - $6553 = $6552&255; - (_sqlite3VdbeChangeEncoding($6551,$6553)|0); - break; - } - case 11: { - HEAP32[$aRes>>2] = 0; - $6422 = (($aRes) + 8|0); - HEAP32[$6422>>2] = -1; - $6423 = (($aRes) + 4|0); - HEAP32[$6423>>2] = -1; - $6424 = HEAP32[$db>>2]|0; - $6425 = HEAP32[$pOp>>2]|0; - $6426 = (($6425) + 4|0); - $6427 = HEAP32[$6426>>2]|0; - $6428 = HEAP32[$pOp>>2]|0; - $6429 = (($6428) + 8|0); - $6430 = HEAP32[$6429>>2]|0; - $6431 = (($aRes) + 4|0); - $6432 = (($aRes) + 8|0); - $6433 = (_sqlite3Checkpoint($6424,$6427,$6430,$6431,$6432)|0); - HEAP32[$rc>>2] = $6433; - $6434 = HEAP32[$rc>>2]|0; - $6435 = ($6434|0)==(5); - if ($6435) { - HEAP32[$rc>>2] = 0; - HEAP32[$aRes>>2] = 1; - } - HEAP32[$i98>>2] = 0; - $6436 = HEAP32[$pOp>>2]|0; - $6437 = (($6436) + 12|0); - $6438 = HEAP32[$6437>>2]|0; - $6439 = HEAP32[$aMem>>2]|0; - $6440 = (($6439) + (($6438*40)|0)|0); - HEAP32[$pMem99>>2] = $6440; - while(1) { - $6441 = HEAP32[$i98>>2]|0; - $6442 = ($6441|0)<(3); - if (!($6442)) { - break L21; - } - $6443 = HEAP32[$pMem99>>2]|0; - $6444 = HEAP32[$i98>>2]|0; - $6445 = (($aRes) + ($6444<<2)|0); - $6446 = HEAP32[$6445>>2]|0; - $6447 = ($6446|0)<(0); - $6448 = $6447 << 31 >> 31; - _sqlite3VdbeMemSetInt64($6443,$6446,$6448); - $6449 = HEAP32[$i98>>2]|0; - $6450 = (($6449) + 1)|0; - HEAP32[$i98>>2] = $6450; - $6451 = HEAP32[$pMem99>>2]|0; - $6452 = (($6451) + 40|0); - HEAP32[$pMem99>>2] = $6452; - } - break; - } - case 138: { - $6558 = HEAP32[$pOp>>2]|0; - $6559 = (($6558) + 4|0); - $6560 = HEAP32[$6559>>2]|0; - $6561 = HEAP32[$db>>2]|0; - $6562 = (($6561) + 16|0); - $6563 = HEAP32[$6562>>2]|0; - $6564 = (($6563) + ($6560<<4)|0); - $6565 = (($6564) + 4|0); - $6566 = HEAP32[$6565>>2]|0; - HEAP32[$pBt101>>2] = $6566; - $6567 = HEAP32[$pBt101>>2]|0; - $6568 = (_sqlite3BtreeIncrVacuum($6567)|0); - HEAP32[$rc>>2] = $6568; - $6569 = HEAP32[$rc>>2]|0; - $6570 = ($6569|0)==(101); - if ($6570) { - $6571 = HEAP32[$pOp>>2]|0; - $6572 = (($6571) + 8|0); - $6573 = HEAP32[$6572>>2]|0; - $6574 = (($6573) - 1)|0; - HEAP32[$pc>>2] = $6574; - HEAP32[$rc>>2] = 0; - } - break; - } - case 139: { - $6575 = HEAP32[$pOp>>2]|0; - $6576 = (($6575) + 4|0); - $6577 = HEAP32[$6576>>2]|0; - $6578 = ($6577|0)!=(0); - if ($6578) { - $6580 = HEAP32[$0>>2]|0; - $6581 = (($6580) + 88|0); - $6582 = HEAP16[$6581>>1]|0; - $6583 = $6582 & -33; - $6584 = $6583 | 32; - HEAP16[$6581>>1] = $6584; - break L21; - } else { - $6579 = HEAP32[$db>>2]|0; - _sqlite3ExpirePreparedStatements($6579); - break L21; - } - break; - } - case 13: { - $6554 = HEAP32[$0>>2]|0; - $6555 = (($6554) + 44|0); - $6556 = HEAP32[$db>>2]|0; - $6557 = (_sqlite3RunVacuum($6555,$6556)|0); - HEAP32[$rc>>2] = $6557; - break; - } - case 140: { - $6585 = HEAP32[$pOp>>2]|0; - $6586 = (($6585) + 12|0); - $6587 = HEAP32[$6586>>2]|0; - $6588 = $6587&255; - HEAP8[$isWriteLock>>0] = $6588; - $6589 = HEAP8[$isWriteLock>>0]|0; - $6590 = $6589&255; - $6591 = ($6590|0)!=(0); - if (!($6591)) { - $6592 = HEAP32[$db>>2]|0; - $6593 = (($6592) + 24|0); - $6594 = HEAP32[$6593>>2]|0; - $6595 = $6594 & 16384; - $6596 = (0)==($6595|0); - if (!($6596)) { - break L21; - } - } - $6597 = HEAP32[$pOp>>2]|0; - $6598 = (($6597) + 4|0); - $6599 = HEAP32[$6598>>2]|0; - HEAP32[$p1102>>2] = $6599; - $6600 = HEAP32[$p1102>>2]|0; - $6601 = HEAP32[$db>>2]|0; - $6602 = (($6601) + 16|0); - $6603 = HEAP32[$6602>>2]|0; - $6604 = (($6603) + ($6600<<4)|0); - $6605 = (($6604) + 4|0); - $6606 = HEAP32[$6605>>2]|0; - $6607 = HEAP32[$pOp>>2]|0; - $6608 = (($6607) + 8|0); - $6609 = HEAP32[$6608>>2]|0; - $6610 = HEAP8[$isWriteLock>>0]|0; - $6611 = (_sqlite3BtreeLockTable($6606,$6609,$6610)|0); - HEAP32[$rc>>2] = $6611; - $6612 = HEAP32[$rc>>2]|0; - $6613 = $6612 & 255; - $6614 = ($6613|0)==(6); - if ($6614) { - $6615 = HEAP32[$pOp>>2]|0; - $6616 = (($6615) + 16|0); - $6617 = HEAP32[$6616>>2]|0; - HEAP32[$z103>>2] = $6617; - $6618 = HEAP32[$0>>2]|0; - $6619 = (($6618) + 44|0); - $6620 = HEAP32[$db>>2]|0; - $6621 = HEAP32[$z103>>2]|0; - HEAP32[$vararg_buffer62>>2] = $6621; - _sqlite3SetString($6619,$6620,31808,$vararg_buffer62); - } - break; - } - case 142: { - $6634 = HEAP32[$db>>2]|0; - $6635 = HEAP32[$pOp>>2]|0; - $6636 = (($6635) + 4|0); - $6637 = HEAP32[$6636>>2]|0; - $6638 = HEAP32[$pOp>>2]|0; - $6639 = (($6638) + 16|0); - $6640 = HEAP32[$6639>>2]|0; - $6641 = HEAP32[$0>>2]|0; - $6642 = (($6641) + 44|0); - $6643 = (_sqlite3VtabCallCreate($6634,$6637,$6640,$6642)|0); - HEAP32[$rc>>2] = $6643; - break; - } - case 148: { - $6644 = HEAP32[$0>>2]|0; - $6645 = (($6644) + 88|0); - $6646 = HEAP16[$6645>>1]|0; - $6647 = $6646 & -13; - $6648 = $6647 | 8; - HEAP16[$6645>>1] = $6648; - $6649 = HEAP32[$db>>2]|0; - $6650 = HEAP32[$pOp>>2]|0; - $6651 = (($6650) + 4|0); - $6652 = HEAP32[$6651>>2]|0; - $6653 = HEAP32[$pOp>>2]|0; - $6654 = (($6653) + 16|0); - $6655 = HEAP32[$6654>>2]|0; - $6656 = (_sqlite3VtabCallDestroy($6649,$6652,$6655)|0); - HEAP32[$rc>>2] = $6656; - $6657 = HEAP32[$0>>2]|0; - $6658 = (($6657) + 88|0); - $6659 = HEAP16[$6658>>1]|0; - $6660 = $6659 & -13; - HEAP16[$6658>>1] = $6660; - break; - } - case 141: { - $6622 = HEAP32[$pOp>>2]|0; - $6623 = (($6622) + 16|0); - $6624 = HEAP32[$6623>>2]|0; - HEAP32[$pVTab>>2] = $6624; - $6625 = HEAP32[$db>>2]|0; - $6626 = HEAP32[$pVTab>>2]|0; - $6627 = (_sqlite3VtabBegin($6625,$6626)|0); - HEAP32[$rc>>2] = $6627; - $6628 = HEAP32[$pVTab>>2]|0; - $6629 = ($6628|0)!=(0|0); - if ($6629) { - $6630 = HEAP32[$0>>2]|0; - $6631 = HEAP32[$pVTab>>2]|0; - $6632 = (($6631) + 8|0); - $6633 = HEAP32[$6632>>2]|0; - _sqlite3VtabImportErrmsg($6630,$6633); - } - break; - } - case 150: { - $6785 = HEAP32[$pOp>>2]|0; - $6786 = (($6785) + 4|0); - $6787 = HEAP32[$6786>>2]|0; - $6788 = HEAP32[$0>>2]|0; - $6789 = (($6788) + 56|0); - $6790 = HEAP32[$6789>>2]|0; - $6791 = (($6790) + ($6787<<2)|0); - $6792 = HEAP32[$6791>>2]|0; - HEAP32[$pCur116>>2] = $6792; - $6793 = HEAP32[$pOp>>2]|0; - $6794 = (($6793) + 12|0); - $6795 = HEAP32[$6794>>2]|0; - $6796 = HEAP32[$aMem>>2]|0; - $6797 = (($6796) + (($6795*40)|0)|0); - HEAP32[$pDest115>>2] = $6797; - $6798 = HEAP32[$pCur116>>2]|0; - $6799 = (($6798) + 25|0); - $6800 = HEAP8[$6799>>0]|0; - $6801 = ($6800<<24>>24)!=(0); - if ($6801) { - $6802 = HEAP32[$pDest115>>2]|0; - _sqlite3VdbeMemSetNull($6802); - break L21; - } - $6803 = HEAP32[$pCur116>>2]|0; - $6804 = (($6803) + 32|0); - $6805 = HEAP32[$6804>>2]|0; - $6806 = HEAP32[$6805>>2]|0; - HEAP32[$pVtab113>>2] = $6806; - $6807 = HEAP32[$pVtab113>>2]|0; - $6808 = HEAP32[$6807>>2]|0; - HEAP32[$pModule114>>2] = $6808; - dest=$sContext+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $6809 = (($sContext) + 8|0); - $6810 = HEAP32[$pDest115>>2]|0; - _sqlite3VdbeMemMove($6809,$6810); - $6811 = (($sContext) + 8|0); - $6812 = (($6811) + 28|0); - $6813 = HEAP16[$6812>>1]|0; - $6814 = $6813&65535; - $6815 = $6814 & -16896; - $6816 = $6815 | 1; - $6817 = $6816&65535; - $6818 = (($sContext) + 8|0); - $6819 = (($6818) + 28|0); - HEAP16[$6819>>1] = $6817; - $6820 = HEAP32[$pModule114>>2]|0; - $6821 = (($6820) + 44|0); - $6822 = HEAP32[$6821>>2]|0; - $6823 = HEAP32[$pCur116>>2]|0; - $6824 = (($6823) + 32|0); - $6825 = HEAP32[$6824>>2]|0; - $6826 = HEAP32[$pOp>>2]|0; - $6827 = (($6826) + 8|0); - $6828 = HEAP32[$6827>>2]|0; - $6829 = (FUNCTION_TABLE_iiii[$6822 & 15]($6825,$sContext,$6828)|0); - HEAP32[$rc>>2] = $6829; - $6830 = HEAP32[$0>>2]|0; - $6831 = HEAP32[$pVtab113>>2]|0; - _sqlite3VtabImportErrmsg($6830,$6831); - $6832 = (($sContext) + 64|0); - $6833 = HEAP32[$6832>>2]|0; - $6834 = ($6833|0)!=(0); - if ($6834) { - $6835 = (($sContext) + 64|0); - $6836 = HEAP32[$6835>>2]|0; - HEAP32[$rc>>2] = $6836; - } - $6837 = (($sContext) + 8|0); - $6838 = HEAP8[$encoding>>0]|0; - $6839 = $6838&255; - (_sqlite3VdbeChangeEncoding($6837,$6839)|0); - $6840 = HEAP32[$pDest115>>2]|0; - $6841 = (($sContext) + 8|0); - _sqlite3VdbeMemMove($6840,$6841); - $6842 = HEAP32[$pDest115>>2]|0; - $6843 = (_sqlite3VdbeMemTooBig($6842)|0); - $6844 = ($6843|0)!=(0); - if ($6844) { - label = 899; - break L11; - } - break; - } - case 149: { - HEAP32[$pCur104>>2] = 0; - HEAP32[$pVtabCursor>>2] = 0; - $6661 = HEAP32[$pOp>>2]|0; - $6662 = (($6661) + 16|0); - $6663 = HEAP32[$6662>>2]|0; - $6664 = (($6663) + 8|0); - $6665 = HEAP32[$6664>>2]|0; - HEAP32[$pVtab105>>2] = $6665; - $6666 = HEAP32[$pVtab105>>2]|0; - $6667 = HEAP32[$6666>>2]|0; - HEAP32[$pModule106>>2] = $6667; - $6668 = HEAP32[$pModule106>>2]|0; - $6669 = (($6668) + 24|0); - $6670 = HEAP32[$6669>>2]|0; - $6671 = HEAP32[$pVtab105>>2]|0; - $6672 = (FUNCTION_TABLE_iii[$6670 & 63]($6671,$pVtabCursor)|0); - HEAP32[$rc>>2] = $6672; - $6673 = HEAP32[$0>>2]|0; - $6674 = HEAP32[$pVtab105>>2]|0; - _sqlite3VtabImportErrmsg($6673,$6674); - $6675 = HEAP32[$rc>>2]|0; - $6676 = (0)==($6675|0); - if ($6676) { - $6677 = HEAP32[$pVtab105>>2]|0; - $6678 = HEAP32[$pVtabCursor>>2]|0; - HEAP32[$6678>>2] = $6677; - $6679 = HEAP32[$0>>2]|0; - $6680 = HEAP32[$pOp>>2]|0; - $6681 = (($6680) + 4|0); - $6682 = HEAP32[$6681>>2]|0; - $6683 = (_allocateCursor($6679,$6682,0,-1,0)|0); - HEAP32[$pCur104>>2] = $6683; - $6684 = HEAP32[$pCur104>>2]|0; - $6685 = ($6684|0)!=(0|0); - if ($6685) { - $6686 = HEAP32[$pVtabCursor>>2]|0; - $6687 = HEAP32[$pCur104>>2]|0; - $6688 = (($6687) + 32|0); - HEAP32[$6688>>2] = $6686; - break L21; - } else { - $6689 = HEAP32[$db>>2]|0; - $6690 = (($6689) + 64|0); - HEAP8[$6690>>0] = 1; - $6691 = HEAP32[$pModule106>>2]|0; - $6692 = (($6691) + 28|0); - $6693 = HEAP32[$6692>>2]|0; - $6694 = HEAP32[$pVtabCursor>>2]|0; - (FUNCTION_TABLE_ii[$6693 & 31]($6694)|0); - break L21; - } - } - break; - } - case 14: { - $6695 = HEAP32[$pOp>>2]|0; - $6696 = (($6695) + 12|0); - $6697 = HEAP32[$6696>>2]|0; - $6698 = HEAP32[$aMem>>2]|0; - $6699 = (($6698) + (($6697*40)|0)|0); - HEAP32[$pQuery>>2] = $6699; - $6700 = HEAP32[$pQuery>>2]|0; - $6701 = (($6700) + 40|0); - HEAP32[$pArgc>>2] = $6701; - $6702 = HEAP32[$pOp>>2]|0; - $6703 = (($6702) + 4|0); - $6704 = HEAP32[$6703>>2]|0; - $6705 = HEAP32[$0>>2]|0; - $6706 = (($6705) + 56|0); - $6707 = HEAP32[$6706>>2]|0; - $6708 = (($6707) + ($6704<<2)|0); - $6709 = HEAP32[$6708>>2]|0; - HEAP32[$pCur110>>2] = $6709; - $6710 = HEAP32[$pCur110>>2]|0; - $6711 = (($6710) + 32|0); - $6712 = HEAP32[$6711>>2]|0; - HEAP32[$pVtabCursor108>>2] = $6712; - $6713 = HEAP32[$pVtabCursor108>>2]|0; - $6714 = HEAP32[$6713>>2]|0; - HEAP32[$pVtab109>>2] = $6714; - $6715 = HEAP32[$pVtab109>>2]|0; - $6716 = HEAP32[$6715>>2]|0; - HEAP32[$pModule107>>2] = $6716; - $6717 = HEAP32[$pArgc>>2]|0; - $6718 = (($6717) + 16|0); - $6719 = $6718; - $6720 = $6719; - $6721 = HEAP32[$6720>>2]|0; - $6722 = (($6719) + 4)|0; - $6723 = $6722; - $6724 = HEAP32[$6723>>2]|0; - HEAP32[$nArg>>2] = $6721; - $6725 = HEAP32[$pQuery>>2]|0; - $6726 = (($6725) + 16|0); - $6727 = $6726; - $6728 = $6727; - $6729 = HEAP32[$6728>>2]|0; - $6730 = (($6727) + 4)|0; - $6731 = $6730; - $6732 = HEAP32[$6731>>2]|0; - HEAP32[$iQuery>>2] = $6729; - HEAP32[$res111>>2] = 0; - $6733 = HEAP32[$0>>2]|0; - $6734 = (($6733) + 12|0); - $6735 = HEAP32[$6734>>2]|0; - HEAP32[$apArg>>2] = $6735; - HEAP32[$i112>>2] = 0; - while(1) { - $6736 = HEAP32[$i112>>2]|0; - $6737 = HEAP32[$nArg>>2]|0; - $6738 = ($6736|0)<($6737|0); - if (!($6738)) { - break; - } - $6739 = HEAP32[$i112>>2]|0; - $6740 = (($6739) + 1)|0; - $6741 = HEAP32[$pArgc>>2]|0; - $6742 = (($6741) + (($6740*40)|0)|0); - $6743 = HEAP32[$i112>>2]|0; - $6744 = HEAP32[$apArg>>2]|0; - $6745 = (($6744) + ($6743<<2)|0); - HEAP32[$6745>>2] = $6742; - $6746 = HEAP32[$i112>>2]|0; - $6747 = (($6746) + 1)|0; - HEAP32[$i112>>2] = $6747; - } - $6748 = HEAP32[$0>>2]|0; - $6749 = (($6748) + 88|0); - $6750 = HEAP16[$6749>>1]|0; - $6751 = $6750 & -13; - $6752 = $6751 | 4; - HEAP16[$6749>>1] = $6752; - $6753 = HEAP32[$pModule107>>2]|0; - $6754 = (($6753) + 32|0); - $6755 = HEAP32[$6754>>2]|0; - $6756 = HEAP32[$pVtabCursor108>>2]|0; - $6757 = HEAP32[$iQuery>>2]|0; - $6758 = HEAP32[$pOp>>2]|0; - $6759 = (($6758) + 16|0); - $6760 = HEAP32[$6759>>2]|0; - $6761 = HEAP32[$nArg>>2]|0; - $6762 = HEAP32[$apArg>>2]|0; - $6763 = (FUNCTION_TABLE_iiiiii[$6755 & 15]($6756,$6757,$6760,$6761,$6762)|0); - HEAP32[$rc>>2] = $6763; - $6764 = HEAP32[$0>>2]|0; - $6765 = (($6764) + 88|0); - $6766 = HEAP16[$6765>>1]|0; - $6767 = $6766 & -13; - HEAP16[$6765>>1] = $6767; - $6768 = HEAP32[$0>>2]|0; - $6769 = HEAP32[$pVtab109>>2]|0; - _sqlite3VtabImportErrmsg($6768,$6769); - $6770 = HEAP32[$rc>>2]|0; - $6771 = ($6770|0)==(0); - if ($6771) { - $6772 = HEAP32[$pModule107>>2]|0; - $6773 = (($6772) + 40|0); - $6774 = HEAP32[$6773>>2]|0; - $6775 = HEAP32[$pVtabCursor108>>2]|0; - $6776 = (FUNCTION_TABLE_ii[$6774 & 31]($6775)|0); - HEAP32[$res111>>2] = $6776; - } - $6777 = HEAP32[$res111>>2]|0; - $6778 = ($6777|0)!=(0); - if ($6778) { - $6779 = HEAP32[$pOp>>2]|0; - $6780 = (($6779) + 8|0); - $6781 = HEAP32[$6780>>2]|0; - $6782 = (($6781) - 1)|0; - HEAP32[$pc>>2] = $6782; - } - $6783 = HEAP32[$pCur110>>2]|0; - $6784 = (($6783) + 25|0); - HEAP8[$6784>>0] = 0; - break; - } - case 152: { - $6896 = HEAP32[$pOp>>2]|0; - $6897 = (($6896) + 16|0); - $6898 = HEAP32[$6897>>2]|0; - $6899 = (($6898) + 8|0); - $6900 = HEAP32[$6899>>2]|0; - HEAP32[$pVtab121>>2] = $6900; - $6901 = HEAP32[$pOp>>2]|0; - $6902 = (($6901) + 4|0); - $6903 = HEAP32[$6902>>2]|0; - $6904 = HEAP32[$aMem>>2]|0; - $6905 = (($6904) + (($6903*40)|0)|0); - HEAP32[$pName>>2] = $6905; - $6906 = HEAP32[$pName>>2]|0; - $6907 = (_sqlite3VdbeChangeEncoding($6906,1)|0); - HEAP32[$rc>>2] = $6907; - $6908 = HEAP32[$rc>>2]|0; - $6909 = ($6908|0)==(0); - if ($6909) { - $6910 = HEAP32[$pVtab121>>2]|0; - $6911 = HEAP32[$6910>>2]|0; - $6912 = (($6911) + 76|0); - $6913 = HEAP32[$6912>>2]|0; - $6914 = HEAP32[$pVtab121>>2]|0; - $6915 = HEAP32[$pName>>2]|0; - $6916 = (($6915) + 4|0); - $6917 = HEAP32[$6916>>2]|0; - $6918 = (FUNCTION_TABLE_iii[$6913 & 63]($6914,$6917)|0); - HEAP32[$rc>>2] = $6918; - $6919 = HEAP32[$0>>2]|0; - $6920 = HEAP32[$pVtab121>>2]|0; - _sqlite3VtabImportErrmsg($6919,$6920); - $6921 = HEAP32[$0>>2]|0; - $6922 = (($6921) + 88|0); - $6923 = HEAP16[$6922>>1]|0; - $6924 = $6923 & -33; - HEAP16[$6922>>1] = $6924; - } - break; - } - case 151: { - HEAP32[$res119>>2] = 0; - $6845 = HEAP32[$pOp>>2]|0; - $6846 = (($6845) + 4|0); - $6847 = HEAP32[$6846>>2]|0; - $6848 = HEAP32[$0>>2]|0; - $6849 = (($6848) + 56|0); - $6850 = HEAP32[$6849>>2]|0; - $6851 = (($6850) + ($6847<<2)|0); - $6852 = HEAP32[$6851>>2]|0; - HEAP32[$pCur120>>2] = $6852; - $6853 = HEAP32[$pCur120>>2]|0; - $6854 = (($6853) + 25|0); - $6855 = HEAP8[$6854>>0]|0; - $6856 = ($6855<<24>>24)!=(0); - if (!($6856)) { - $6857 = HEAP32[$pCur120>>2]|0; - $6858 = (($6857) + 32|0); - $6859 = HEAP32[$6858>>2]|0; - $6860 = HEAP32[$6859>>2]|0; - HEAP32[$pVtab117>>2] = $6860; - $6861 = HEAP32[$pVtab117>>2]|0; - $6862 = HEAP32[$6861>>2]|0; - HEAP32[$pModule118>>2] = $6862; - $6863 = HEAP32[$0>>2]|0; - $6864 = (($6863) + 88|0); - $6865 = HEAP16[$6864>>1]|0; - $6866 = $6865 & -13; - $6867 = $6866 | 4; - HEAP16[$6864>>1] = $6867; - $6868 = HEAP32[$pModule118>>2]|0; - $6869 = (($6868) + 36|0); - $6870 = HEAP32[$6869>>2]|0; - $6871 = HEAP32[$pCur120>>2]|0; - $6872 = (($6871) + 32|0); - $6873 = HEAP32[$6872>>2]|0; - $6874 = (FUNCTION_TABLE_ii[$6870 & 31]($6873)|0); - HEAP32[$rc>>2] = $6874; - $6875 = HEAP32[$0>>2]|0; - $6876 = (($6875) + 88|0); - $6877 = HEAP16[$6876>>1]|0; - $6878 = $6877 & -13; - HEAP16[$6876>>1] = $6878; - $6879 = HEAP32[$0>>2]|0; - $6880 = HEAP32[$pVtab117>>2]|0; - _sqlite3VtabImportErrmsg($6879,$6880); - $6881 = HEAP32[$rc>>2]|0; - $6882 = ($6881|0)==(0); - if ($6882) { - $6883 = HEAP32[$pModule118>>2]|0; - $6884 = (($6883) + 40|0); - $6885 = HEAP32[$6884>>2]|0; - $6886 = HEAP32[$pCur120>>2]|0; - $6887 = (($6886) + 32|0); - $6888 = HEAP32[$6887>>2]|0; - $6889 = (FUNCTION_TABLE_ii[$6885 & 31]($6888)|0); - HEAP32[$res119>>2] = $6889; - } - $6890 = HEAP32[$res119>>2]|0; - $6891 = ($6890|0)!=(0); - if ($6891) { - label = 16; - } else { - $6892 = HEAP32[$pOp>>2]|0; - $6893 = (($6892) + 8|0); - $6894 = HEAP32[$6893>>2]|0; - $6895 = (($6894) - 1)|0; - HEAP32[$pc>>2] = $6895; - label = 16; - } - } - break; - } - case 15: { - $6925 = HEAP32[$pOp>>2]|0; - $6926 = (($6925) + 16|0); - $6927 = HEAP32[$6926>>2]|0; - $6928 = (($6927) + 8|0); - $6929 = HEAP32[$6928>>2]|0; - HEAP32[$pVtab122>>2] = $6929; - $6930 = HEAP32[$pVtab122>>2]|0; - $6931 = HEAP32[$6930>>2]|0; - HEAP32[$pModule123>>2] = $6931; - $6932 = HEAP32[$pOp>>2]|0; - $6933 = (($6932) + 8|0); - $6934 = HEAP32[$6933>>2]|0; - HEAP32[$nArg124>>2] = $6934; - $6935 = HEAP32[$pModule123>>2]|0; - $6936 = (($6935) + 52|0); - $6937 = HEAP32[$6936>>2]|0; - $6938 = ($6937|0)!=(0|0); - if ($6938) { - $6939 = HEAP32[$db>>2]|0; - $6940 = (($6939) + 68|0); - $6941 = HEAP8[$6940>>0]|0; - HEAP8[$vtabOnConflict>>0] = $6941; - $6942 = HEAP32[$0>>2]|0; - $6943 = (($6942) + 12|0); - $6944 = HEAP32[$6943>>2]|0; - HEAP32[$apArg127>>2] = $6944; - $6945 = HEAP32[$pOp>>2]|0; - $6946 = (($6945) + 12|0); - $6947 = HEAP32[$6946>>2]|0; - $6948 = HEAP32[$aMem>>2]|0; - $6949 = (($6948) + (($6947*40)|0)|0); - HEAP32[$pX128>>2] = $6949; - HEAP32[$i125>>2] = 0; - while(1) { - $6950 = HEAP32[$i125>>2]|0; - $6951 = HEAP32[$nArg124>>2]|0; - $6952 = ($6950|0)<($6951|0); - if (!($6952)) { - break; - } - $6953 = HEAP32[$pX128>>2]|0; - $6954 = HEAP32[$i125>>2]|0; - $6955 = HEAP32[$apArg127>>2]|0; - $6956 = (($6955) + ($6954<<2)|0); - HEAP32[$6956>>2] = $6953; - $6957 = HEAP32[$pX128>>2]|0; - $6958 = (($6957) + 40|0); - HEAP32[$pX128>>2] = $6958; - $6959 = HEAP32[$i125>>2]|0; - $6960 = (($6959) + 1)|0; - HEAP32[$i125>>2] = $6960; - } - $6961 = HEAP32[$pOp>>2]|0; - $6962 = (($6961) + 3|0); - $6963 = HEAP8[$6962>>0]|0; - $6964 = HEAP32[$db>>2]|0; - $6965 = (($6964) + 68|0); - HEAP8[$6965>>0] = $6963; - $6966 = HEAP32[$pModule123>>2]|0; - $6967 = (($6966) + 52|0); - $6968 = HEAP32[$6967>>2]|0; - $6969 = HEAP32[$pVtab122>>2]|0; - $6970 = HEAP32[$nArg124>>2]|0; - $6971 = HEAP32[$apArg127>>2]|0; - $6972 = (FUNCTION_TABLE_iiiii[$6968 & 15]($6969,$6970,$6971,$rowid126)|0); - HEAP32[$rc>>2] = $6972; - $6973 = HEAP8[$vtabOnConflict>>0]|0; - $6974 = HEAP32[$db>>2]|0; - $6975 = (($6974) + 68|0); - HEAP8[$6975>>0] = $6973; - $6976 = HEAP32[$0>>2]|0; - $6977 = HEAP32[$pVtab122>>2]|0; - _sqlite3VtabImportErrmsg($6976,$6977); - $6978 = HEAP32[$rc>>2]|0; - $6979 = ($6978|0)==(0); - if ($6979) { - $6980 = HEAP32[$pOp>>2]|0; - $6981 = (($6980) + 4|0); - $6982 = HEAP32[$6981>>2]|0; - $6983 = ($6982|0)!=(0); - if ($6983) { - $6984 = $rowid126; - $6985 = $6984; - $6986 = HEAP32[$6985>>2]|0; - $6987 = (($6984) + 4)|0; - $6988 = $6987; - $6989 = HEAP32[$6988>>2]|0; - $6990 = $lastRowid; - $6991 = $6990; - HEAP32[$6991>>2] = $6986; - $6992 = (($6990) + 4)|0; - $6993 = $6992; - HEAP32[$6993>>2] = $6989; - $6994 = HEAP32[$db>>2]|0; - $6995 = (($6994) + 32|0); - $6996 = $6995; - $6997 = $6996; - HEAP32[$6997>>2] = $6986; - $6998 = (($6996) + 4)|0; - $6999 = $6998; - HEAP32[$6999>>2] = $6989; - } - } - $7000 = HEAP32[$rc>>2]|0; - $7001 = $7000 & 255; - $7002 = ($7001|0)==(19); - if ($7002) { - $7003 = HEAP32[$pOp>>2]|0; - $7004 = (($7003) + 16|0); - $7005 = HEAP32[$7004>>2]|0; - $7006 = (($7005) + 16|0); - $7007 = HEAP8[$7006>>0]|0; - $7008 = $7007&255; - $7009 = ($7008|0)!=(0); - if ($7009) { - $7010 = HEAP32[$pOp>>2]|0; - $7011 = (($7010) + 3|0); - $7012 = HEAP8[$7011>>0]|0; - $7013 = $7012&255; - $7014 = ($7013|0)==(4); - if ($7014) { - HEAP32[$rc>>2] = 0; - break L21; - } - $7015 = HEAP32[$pOp>>2]|0; - $7016 = (($7015) + 3|0); - $7017 = HEAP8[$7016>>0]|0; - $7018 = $7017&255; - $7019 = ($7018|0)==(5); - if ($7019) { - $7025 = 2; - } else { - $7020 = HEAP32[$pOp>>2]|0; - $7021 = (($7020) + 3|0); - $7022 = HEAP8[$7021>>0]|0; - $7023 = $7022&255; - $7025 = $7023; - } - $7024 = $7025&255; - $7026 = HEAP32[$0>>2]|0; - $7027 = (($7026) + 86|0); - HEAP8[$7027>>0] = $7024; - break L21; - } - } - $7028 = HEAP32[$0>>2]|0; - $7029 = (($7028) + 92|0); - $7030 = HEAP32[$7029>>2]|0; - $7031 = (($7030) + 1)|0; - HEAP32[$7029>>2] = $7031; - } - break; - } - case 155: { - $7082 = HEAP32[$pOp>>2]|0; - $7083 = (($7082) + 8|0); - $7084 = HEAP32[$7083>>2]|0; - $7085 = ($7084|0)!=(0); - if ($7085) { - $7086 = HEAP32[$pOp>>2]|0; - $7087 = (($7086) + 8|0); - $7088 = HEAP32[$7087>>2]|0; - $7089 = (($7088) - 1)|0; - HEAP32[$pc>>2] = $7089; - } - $7090 = HEAP32[$db>>2]|0; - $7091 = (($7090) + 164|0); - $7092 = HEAP32[$7091>>2]|0; - $7093 = ($7092|0)!=(0|0); - if ($7093) { - $7094 = HEAP32[$0>>2]|0; - $7095 = (($7094) + 88|0); - $7096 = HEAP16[$7095>>1]|0; - $7097 = ($7096&65535) >>> 11; - $7098 = $7097 & 1; - $7099 = $7098&65535; - $7100 = ($7099|0)!=(0); - if (!($7100)) { - $7101 = HEAP32[$pOp>>2]|0; - $7102 = (($7101) + 16|0); - $7103 = HEAP32[$7102>>2]|0; - $7104 = ($7103|0)!=(0|0); - if ($7104) { - $7105 = HEAP32[$pOp>>2]|0; - $7106 = (($7105) + 16|0); - $7107 = HEAP32[$7106>>2]|0; - $7111 = $7107; - } else { - $7108 = HEAP32[$0>>2]|0; - $7109 = (($7108) + 168|0); - $7110 = HEAP32[$7109>>2]|0; - $7111 = $7110; - } - HEAP32[$zTrace>>2] = $7111; - $7112 = ($7111|0)!=(0|0); - if ($7112) { - $7113 = HEAP32[$0>>2]|0; - $7114 = HEAP32[$zTrace>>2]|0; - $7115 = (_sqlite3VdbeExpandSql($7113,$7114)|0); - HEAP32[$z130>>2] = $7115; - $7116 = HEAP32[$db>>2]|0; - $7117 = (($7116) + 164|0); - $7118 = HEAP32[$7117>>2]|0; - $7119 = HEAP32[$db>>2]|0; - $7120 = (($7119) + 168|0); - $7121 = HEAP32[$7120>>2]|0; - $7122 = HEAP32[$z130>>2]|0; - FUNCTION_TABLE_vii[$7118 & 7]($7121,$7122); - $7123 = HEAP32[$db>>2]|0; - $7124 = HEAP32[$z130>>2]|0; - _sqlite3DbFree($7123,$7124); - } - } - } - break; - } - case 153: { - $7032 = HEAP32[$pOp>>2]|0; - $7033 = (($7032) + 4|0); - $7034 = HEAP32[$7033>>2]|0; - $7035 = HEAP32[$db>>2]|0; - $7036 = (($7035) + 16|0); - $7037 = HEAP32[$7036>>2]|0; - $7038 = (($7037) + ($7034<<4)|0); - $7039 = (($7038) + 4|0); - $7040 = HEAP32[$7039>>2]|0; - $7041 = (_sqlite3BtreeLastPage($7040)|0); - $7042 = HEAP32[$pOut>>2]|0; - $7043 = (($7042) + 16|0); - $7044 = $7043; - $7045 = $7044; - HEAP32[$7045>>2] = $7041; - $7046 = (($7044) + 4)|0; - $7047 = $7046; - HEAP32[$7047>>2] = 0; - break; - } - case 154: { - $7048 = HEAP32[$pOp>>2]|0; - $7049 = (($7048) + 4|0); - $7050 = HEAP32[$7049>>2]|0; - $7051 = HEAP32[$db>>2]|0; - $7052 = (($7051) + 16|0); - $7053 = HEAP32[$7052>>2]|0; - $7054 = (($7053) + ($7050<<4)|0); - $7055 = (($7054) + 4|0); - $7056 = HEAP32[$7055>>2]|0; - HEAP32[$pBt129>>2] = $7056; - HEAP32[$newMax>>2] = 0; - $7057 = HEAP32[$pOp>>2]|0; - $7058 = (($7057) + 12|0); - $7059 = HEAP32[$7058>>2]|0; - $7060 = ($7059|0)!=(0); - if ($7060) { - $7061 = HEAP32[$pBt129>>2]|0; - $7062 = (_sqlite3BtreeLastPage($7061)|0); - HEAP32[$newMax>>2] = $7062; - $7063 = HEAP32[$newMax>>2]|0; - $7064 = HEAP32[$pOp>>2]|0; - $7065 = (($7064) + 12|0); - $7066 = HEAP32[$7065>>2]|0; - $7067 = ($7063>>>0)<($7066>>>0); - if ($7067) { - $7068 = HEAP32[$pOp>>2]|0; - $7069 = (($7068) + 12|0); - $7070 = HEAP32[$7069>>2]|0; - HEAP32[$newMax>>2] = $7070; - } - } - $7071 = HEAP32[$pBt129>>2]|0; - $7072 = HEAP32[$newMax>>2]|0; - $7073 = (_sqlite3BtreeMaxPageCount($7071,$7072)|0); - $7074 = ($7073|0)<(0); - $7075 = $7074 << 31 >> 31; - $7076 = HEAP32[$pOut>>2]|0; - $7077 = (($7076) + 16|0); - $7078 = $7077; - $7079 = $7078; - HEAP32[$7079>>2] = $7073; - $7080 = (($7078) + 4)|0; - $7081 = $7080; - HEAP32[$7081>>2] = $7075; - break; - } - default: { - } - } - } while(0); - if ((label|0) == 28) { - label = 0; - $254 = HEAP32[$pOp>>2]|0; - $255 = (($254) + 4|0); - $256 = HEAP32[$255>>2]|0; - $257 = ($256|0)==(0); - if (!($257)) { - label = 33; - break; - } - $258 = HEAP32[$0>>2]|0; - $259 = (($258) + 176|0); - $260 = HEAP32[$259>>2]|0; - $261 = ($260|0)!=(0|0); - if (!($261)) { - label = 33; - break; - } - $262 = HEAP32[$0>>2]|0; - $263 = (($262) + 176|0); - $264 = HEAP32[$263>>2]|0; - HEAP32[$pFrame>>2] = $264; - $265 = HEAP32[$pFrame>>2]|0; - $266 = (($265) + 4|0); - $267 = HEAP32[$266>>2]|0; - $268 = HEAP32[$0>>2]|0; - $269 = (($268) + 176|0); - HEAP32[$269>>2] = $267; - $270 = HEAP32[$0>>2]|0; - $271 = (($270) + 184|0); - $272 = HEAP32[$271>>2]|0; - $273 = (($272) + -1)|0; - HEAP32[$271>>2] = $273; - $274 = HEAP32[$db>>2]|0; - $275 = HEAP32[$0>>2]|0; - $276 = (($275) + 92|0); - $277 = HEAP32[$276>>2]|0; - _sqlite3VdbeSetChanges($274,$277); - $278 = HEAP32[$pFrame>>2]|0; - $279 = (_sqlite3VdbeFrameRestore($278)|0); - HEAP32[$pc>>2] = $279; - $280 = HEAP32[$db>>2]|0; - $281 = (($280) + 32|0); - $282 = $281; - $283 = $282; - $284 = HEAP32[$283>>2]|0; - $285 = (($282) + 4)|0; - $286 = $285; - $287 = HEAP32[$286>>2]|0; - $288 = $lastRowid; - $289 = $288; - HEAP32[$289>>2] = $284; - $290 = (($288) + 4)|0; - $291 = $290; - HEAP32[$291>>2] = $287; - $292 = HEAP32[$pOp>>2]|0; - $293 = (($292) + 8|0); - $294 = HEAP32[$293>>2]|0; - $295 = ($294|0)==(4); - if ($295) { - $296 = HEAP32[$pc>>2]|0; - $297 = HEAP32[$0>>2]|0; - $298 = (($297) + 4|0); - $299 = HEAP32[$298>>2]|0; - $300 = (($299) + (($296*20)|0)|0); - $301 = (($300) + 8|0); - $302 = HEAP32[$301>>2]|0; - $303 = (($302) - 1)|0; - HEAP32[$pc>>2] = $303; - } - $304 = HEAP32[$0>>2]|0; - $305 = (($304) + 4|0); - $306 = HEAP32[$305>>2]|0; - HEAP32[$aOp>>2] = $306; - $307 = HEAP32[$0>>2]|0; - $308 = (($307) + 8|0); - $309 = HEAP32[$308>>2]|0; - HEAP32[$aMem>>2] = $309; - } - else if ((label|0) == 57) { - label = 0; - $477 = HEAP32[$pOut>>2]|0; - $478 = (($477) + 28|0); - HEAP16[$478>>1] = 2562; - $479 = HEAP32[$pOp>>2]|0; - $480 = (($479) + 16|0); - $481 = HEAP32[$480>>2]|0; - $482 = HEAP32[$pOut>>2]|0; - $483 = (($482) + 4|0); - HEAP32[$483>>2] = $481; - $484 = HEAP32[$pOp>>2]|0; - $485 = (($484) + 4|0); - $486 = HEAP32[$485>>2]|0; - $487 = HEAP32[$pOut>>2]|0; - $488 = (($487) + 24|0); - HEAP32[$488>>2] = $486; - $489 = HEAP8[$encoding>>0]|0; - $490 = HEAP32[$pOut>>2]|0; - $491 = (($490) + 30|0); - HEAP8[$491>>0] = $489; - } - else if ((label|0) == 646) { - label = 0; - $5043 = HEAP32[$pOp>>2]|0; - $5044 = (($5043) + 4|0); - $5045 = HEAP32[$5044>>2]|0; - $5046 = HEAP32[$0>>2]|0; - $5047 = (($5046) + 56|0); - $5048 = HEAP32[$5047>>2]|0; - $5049 = (($5048) + ($5045<<2)|0); - $5050 = HEAP32[$5049>>2]|0; - HEAP32[$pC62>>2] = $5050; - HEAP32[$res64>>2] = 1; - $5051 = HEAP32[$pC62>>2]|0; - $5052 = (($5051) + 64|0); - $5053 = HEAP32[$5052>>2]|0; - $5054 = ($5053|0)!=(0|0); - if ($5054) { - $5055 = HEAP32[$db>>2]|0; - $5056 = HEAP32[$pC62>>2]|0; - $5057 = (_sqlite3VdbeSorterRewind($5055,$5056,$res64)|0); - HEAP32[$rc>>2] = $5057; - } else { - $5058 = HEAP32[$pC62>>2]|0; - $5059 = HEAP32[$5058>>2]|0; - HEAP32[$pCrsr63>>2] = $5059; - $5060 = HEAP32[$pCrsr63>>2]|0; - $5061 = (_sqlite3BtreeFirst($5060,$res64)|0); - HEAP32[$rc>>2] = $5061; - $5062 = HEAP32[$pC62>>2]|0; - $5063 = (($5062) + 27|0); - HEAP8[$5063>>0] = 0; - $5064 = HEAP32[$pC62>>2]|0; - $5065 = (($5064) + 68|0); - HEAP32[$5065>>2] = 0; - $5066 = HEAP32[$pC62>>2]|0; - $5067 = (($5066) + 26|0); - HEAP8[$5067>>0] = 0; - } - $5068 = HEAP32[$res64>>2]|0; - $5069 = $5068&255; - $5070 = HEAP32[$pC62>>2]|0; - $5071 = (($5070) + 25|0); - HEAP8[$5071>>0] = $5069; - $5072 = HEAP32[$res64>>2]|0; - $5073 = ($5072|0)!=(0); - if ($5073) { - $5074 = HEAP32[$pOp>>2]|0; - $5075 = (($5074) + 8|0); - $5076 = HEAP32[$5075>>2]|0; - $5077 = (($5076) - 1)|0; - HEAP32[$pc>>2] = $5077; - } - } - else if ((label|0) == 653) { - label = 0; - $5098 = HEAP32[$pOp>>2]|0; - $5099 = (($5098) + 4|0); - $5100 = HEAP32[$5099>>2]|0; - $5101 = HEAP32[$0>>2]|0; - $5102 = (($5101) + 56|0); - $5103 = HEAP32[$5102>>2]|0; - $5104 = (($5103) + ($5100<<2)|0); - $5105 = HEAP32[$5104>>2]|0; - HEAP32[$pC65>>2] = $5105; - $5106 = HEAP32[$pOp>>2]|0; - $5107 = (($5106) + 12|0); - $5108 = HEAP32[$5107>>2]|0; - HEAP32[$res66>>2] = $5108; - $5109 = HEAP32[$pOp>>2]|0; - $5110 = (($5109) + 16|0); - $5111 = HEAP32[$5110>>2]|0; - $5112 = HEAP32[$pC65>>2]|0; - $5113 = HEAP32[$5112>>2]|0; - $5114 = (FUNCTION_TABLE_iii[$5111 & 63]($5113,$res66)|0); - HEAP32[$rc>>2] = $5114; - label = 654; - } - if ((label|0) == 654) { - label = 0; - $5115 = HEAP32[$pC65>>2]|0; - $5116 = (($5115) + 68|0); - HEAP32[$5116>>2] = 0; - $5117 = HEAP32[$res66>>2]|0; - $5118 = ($5117|0)==(0); - $5119 = HEAP32[$pC65>>2]|0; - $5120 = (($5119) + 25|0); - if ($5118) { - HEAP8[$5120>>0] = 0; - $5121 = HEAP32[$pOp>>2]|0; - $5122 = (($5121) + 8|0); - $5123 = HEAP32[$5122>>2]|0; - $5124 = (($5123) - 1)|0; - HEAP32[$pc>>2] = $5124; - $5125 = HEAP32[$pOp>>2]|0; - $5126 = (($5125) + 3|0); - $5127 = HEAP8[$5126>>0]|0; - $5128 = $5127&255; - $5129 = HEAP32[$0>>2]|0; - $5130 = (($5129) + 108|0); - $5131 = (($5130) + ($5128<<2)|0); - $5132 = HEAP32[$5131>>2]|0; - $5133 = (($5132) + 1)|0; - HEAP32[$5131>>2] = $5133; - } else { - HEAP8[$5120>>0] = 1; - } - $5134 = HEAP32[$pC65>>2]|0; - $5135 = (($5134) + 26|0); - HEAP8[$5135>>0] = 0; - label = 16; - } - if ((label|0) == 16) { - label = 0; - $105 = HEAP32[$db>>2]|0; - $106 = (($105) + 232|0); - $107 = HEAP32[$106>>2]|0; - $108 = ($107|0)!=(0); - if ($108) { - break L3; - } - $109 = HEAP32[$db>>2]|0; - $110 = (($109) + 284|0); - $111 = HEAP32[$110>>2]|0; - $112 = ($111|0)!=(0|0); - if ($112) { - $113 = HEAP32[$nVmStep>>2]|0; - $114 = HEAP32[$nProgressLimit>>2]|0; - $115 = ($113>>>0)>=($114>>>0); - if ($115) { - $116 = HEAP32[$nVmStep>>2]|0; - $117 = HEAP32[$db>>2]|0; - $118 = (($117) + 292|0); - $119 = HEAP32[$118>>2]|0; - $120 = (($116) + ($119))|0; - $121 = HEAP32[$nVmStep>>2]|0; - $122 = HEAP32[$db>>2]|0; - $123 = (($122) + 292|0); - $124 = HEAP32[$123>>2]|0; - $125 = (($121>>>0) % ($124>>>0))&-1; - $126 = (($120) - ($125))|0; - HEAP32[$nProgressLimit>>2] = $126; - $127 = HEAP32[$db>>2]|0; - $128 = (($127) + 284|0); - $129 = HEAP32[$128>>2]|0; - $130 = HEAP32[$db>>2]|0; - $131 = (($130) + 288|0); - $132 = HEAP32[$131>>2]|0; - $133 = (FUNCTION_TABLE_ii[$129 & 31]($132)|0); - $134 = ($133|0)!=(0); - if ($134) { - label = 20; - break; - } - } - } - } - $7125 = HEAP32[$pc>>2]|0; - $7126 = (($7125) + 1)|0; - HEAP32[$pc>>2] = $7126; - } - switch (label|0) { - case 20: { - HEAP32[$rc>>2] = 9; - break L1; - break; - } - case 33: { - $310 = HEAP32[$pOp>>2]|0; - $311 = (($310) + 4|0); - $312 = HEAP32[$311>>2]|0; - $313 = HEAP32[$0>>2]|0; - $314 = (($313) + 80|0); - HEAP32[$314>>2] = $312; - $315 = HEAP32[$pOp>>2]|0; - $316 = (($315) + 8|0); - $317 = HEAP32[$316>>2]|0; - $318 = $317&255; - $319 = HEAP32[$0>>2]|0; - $320 = (($319) + 86|0); - HEAP8[$320>>0] = $318; - $321 = HEAP32[$pc>>2]|0; - $322 = HEAP32[$0>>2]|0; - $323 = (($322) + 76|0); - HEAP32[$323>>2] = $321; - $324 = HEAP32[$0>>2]|0; - $325 = (($324) + 80|0); - $326 = HEAP32[$325>>2]|0; - $327 = ($326|0)!=(0); - if ($327) { - $328 = HEAP32[$pOp>>2]|0; - $329 = (($328) + 3|0); - $330 = HEAP8[$329>>0]|0; - $331 = ($330<<24>>24)!=(0); - if ($331) { - $332 = HEAP32[$pOp>>2]|0; - $333 = (($332) + 3|0); - $334 = HEAP8[$333>>0]|0; - $335 = $334&255; - $336 = (($335) - 1)|0; - $337 = (31120 + ($336<<2)|0); - $338 = HEAP32[$337>>2]|0; - HEAP32[$zType>>2] = $338; - } else { - HEAP32[$zType>>2] = 0; - } - HEAP32[$zLogFmt>>2] = 31184; - $339 = HEAP32[$zType>>2]|0; - $340 = ($339|0)!=(0|0); - if ($340) { - $341 = HEAP32[$pOp>>2]|0; - $342 = (($341) + 16|0); - $343 = HEAP32[$342>>2]|0; - $344 = ($343|0)!=(0|0); - if ($344) { - $345 = HEAP32[$0>>2]|0; - $346 = (($345) + 44|0); - $347 = HEAP32[$db>>2]|0; - $348 = HEAP32[$zType>>2]|0; - $349 = HEAP32[$pOp>>2]|0; - $350 = (($349) + 16|0); - $351 = HEAP32[$350>>2]|0; - HEAP32[$vararg_buffer62>>2] = $348; - $vararg_ptr5 = (($vararg_buffer62) + 4|0); - HEAP32[$vararg_ptr5>>2] = $351; - _sqlite3SetString($346,$347,31208,$vararg_buffer62); - } else { - label = 40; - } - } else { - label = 40; - } - do { - if ((label|0) == 40) { - $352 = HEAP32[$pOp>>2]|0; - $353 = (($352) + 16|0); - $354 = HEAP32[$353>>2]|0; - $355 = ($354|0)!=(0|0); - $356 = HEAP32[$0>>2]|0; - $357 = (($356) + 44|0); - $358 = HEAP32[$db>>2]|0; - if ($355) { - $359 = HEAP32[$pOp>>2]|0; - $360 = (($359) + 16|0); - $361 = HEAP32[$360>>2]|0; - HEAP32[$vararg_buffer62>>2] = $361; - _sqlite3SetString($357,$358,1456,$vararg_buffer62); - break; - } else { - $362 = HEAP32[$zType>>2]|0; - HEAP32[$vararg_buffer62>>2] = $362; - _sqlite3SetString($357,$358,31240,$vararg_buffer62); - break; - } - } - } while(0); - $363 = HEAP32[$pOp>>2]|0; - $364 = (($363) + 4|0); - $365 = HEAP32[$364>>2]|0; - $366 = HEAP32[$zLogFmt>>2]|0; - $367 = HEAP32[$pc>>2]|0; - $368 = HEAP32[$0>>2]|0; - $369 = (($368) + 168|0); - $370 = HEAP32[$369>>2]|0; - $371 = HEAP32[$0>>2]|0; - $372 = (($371) + 44|0); - $373 = HEAP32[$372>>2]|0; - HEAP32[$vararg_buffer62>>2] = $367; - $vararg_ptr15 = (($vararg_buffer62) + 4|0); - HEAP32[$vararg_ptr15>>2] = $370; - $vararg_ptr16 = (($vararg_buffer62) + 8|0); - HEAP32[$vararg_ptr16>>2] = $373; - _sqlite3_log($365,$366,$vararg_buffer62); - } - $374 = HEAP32[$0>>2]|0; - $375 = (_sqlite3VdbeHalt($374)|0); - HEAP32[$rc>>2] = $375; - $376 = HEAP32[$rc>>2]|0; - $377 = ($376|0)==(5); - if ($377) { - HEAP32[$rc>>2] = 5; - $378 = HEAP32[$0>>2]|0; - $379 = (($378) + 80|0); - HEAP32[$379>>2] = 5; - $7150 = $lastRowid; - $7151 = $7150; - $7152 = HEAP32[$7151>>2]|0; - $7153 = (($7150) + 4)|0; - $7154 = $7153; - $7155 = HEAP32[$7154>>2]|0; - $7156 = HEAP32[$db>>2]|0; - $7157 = (($7156) + 32|0); - $7158 = $7157; - $7159 = $7158; - HEAP32[$7159>>2] = $7152; - $7160 = (($7158) + 4)|0; - $7161 = $7160; - HEAP32[$7161>>2] = $7155; - $7162 = HEAP32[$nVmStep>>2]|0; - $7163 = HEAP32[$0>>2]|0; - $7164 = (($7163) + 108|0); - $7165 = (($7164) + 16|0); - $7166 = HEAP32[$7165>>2]|0; - $7167 = (($7166) + ($7162))|0; - HEAP32[$7165>>2] = $7167; - $7168 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($7168|0); - } else { - $380 = HEAP32[$0>>2]|0; - $381 = (($380) + 80|0); - $382 = HEAP32[$381>>2]|0; - $383 = ($382|0)!=(0); - $384 = $383 ? 1 : 101; - HEAP32[$rc>>2] = $384; - $7150 = $lastRowid; - $7151 = $7150; - $7152 = HEAP32[$7151>>2]|0; - $7153 = (($7150) + 4)|0; - $7154 = $7153; - $7155 = HEAP32[$7154>>2]|0; - $7156 = HEAP32[$db>>2]|0; - $7157 = (($7156) + 32|0); - $7158 = $7157; - $7159 = $7158; - HEAP32[$7159>>2] = $7152; - $7160 = (($7158) + 4)|0; - $7161 = $7160; - HEAP32[$7161>>2] = $7155; - $7162 = HEAP32[$nVmStep>>2]|0; - $7163 = HEAP32[$0>>2]|0; - $7164 = (($7163) + 108|0); - $7165 = (($7164) + 16|0); - $7166 = HEAP32[$7165>>2]|0; - $7167 = (($7166) + ($7162))|0; - HEAP32[$7165>>2] = $7167; - $7168 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($7168|0); - } - break; - } - case 80: { - HEAP32[$rc>>2] = 9; - break L1; - break; - } - case 83: { - $666 = HEAP32[$0>>2]|0; - $667 = (($666) + 72|0); - $668 = HEAP32[$667>>2]|0; - $669 = (($668) + 2)|0; - $670 = $669 | 1; - $671 = HEAP32[$0>>2]|0; - $672 = (($671) + 72|0); - HEAP32[$672>>2] = $670; - $673 = HEAP32[$pOp>>2]|0; - $674 = (($673) + 4|0); - $675 = HEAP32[$674>>2]|0; - $676 = HEAP32[$aMem>>2]|0; - $677 = (($676) + (($675*40)|0)|0); - $678 = HEAP32[$0>>2]|0; - $679 = (($678) + 20|0); - HEAP32[$679>>2] = $677; - HEAP32[$pMem>>2] = $677; - HEAP32[$i>>2] = 0; - while(1) { - $680 = HEAP32[$i>>2]|0; - $681 = HEAP32[$pOp>>2]|0; - $682 = (($681) + 8|0); - $683 = HEAP32[$682>>2]|0; - $684 = ($680|0)<($683|0); - if (!($684)) { - break; - } - $685 = HEAP32[$i>>2]|0; - $686 = HEAP32[$pMem>>2]|0; - $687 = (($686) + (($685*40)|0)|0); - $688 = (($687) + 28|0); - $689 = HEAP16[$688>>1]|0; - $690 = $689&65535; - $691 = $690 & 4096; - $692 = ($691|0)!=(0); - if ($692) { - $693 = HEAP32[$i>>2]|0; - $694 = HEAP32[$pMem>>2]|0; - $695 = (($694) + (($693*40)|0)|0); - $696 = (_sqlite3VdbeMemMakeWriteable($695)|0); - $697 = ($696|0)!=(0); - if ($697) { - label = 900; - break L1; - } - } - $698 = HEAP32[$i>>2]|0; - $699 = HEAP32[$pMem>>2]|0; - $700 = (($699) + (($698*40)|0)|0); - (_sqlite3VdbeMemNulTerminate($700)|0); - $701 = HEAP32[$i>>2]|0; - $702 = (($701) + 1)|0; - HEAP32[$i>>2] = $702; - } - $703 = HEAP32[$db>>2]|0; - $704 = (($703) + 64|0); - $705 = HEAP8[$704>>0]|0; - $706 = ($705<<24>>24)!=(0); - if ($706) { - label = 900; - break L1; - } - $707 = HEAP32[$pc>>2]|0; - $708 = (($707) + 1)|0; - $709 = HEAP32[$0>>2]|0; - $710 = (($709) + 76|0); - HEAP32[$710>>2] = $708; - HEAP32[$rc>>2] = 100; - $7150 = $lastRowid; - $7151 = $7150; - $7152 = HEAP32[$7151>>2]|0; - $7153 = (($7150) + 4)|0; - $7154 = $7153; - $7155 = HEAP32[$7154>>2]|0; - $7156 = HEAP32[$db>>2]|0; - $7157 = (($7156) + 32|0); - $7158 = $7157; - $7159 = $7158; - HEAP32[$7159>>2] = $7152; - $7160 = (($7158) + 4)|0; - $7161 = $7160; - HEAP32[$7161>>2] = $7155; - $7162 = HEAP32[$nVmStep>>2]|0; - $7163 = HEAP32[$0>>2]|0; - $7164 = (($7163) + 108|0); - $7165 = (($7164) + 16|0); - $7166 = HEAP32[$7165>>2]|0; - $7167 = (($7166) + ($7162))|0; - HEAP32[$7165>>2] = $7167; - $7168 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($7168|0); - break; - } - case 146: { - $1304 = (($ctx) + 8|0); - _sqlite3VdbeMemRelease($1304); - label = 900; - break L1; - break; - } - case 177: { - HEAP32[$rc>>2] = 20; - break; - } - case 395: { - $3061 = HEAP32[$pc>>2]|0; - $3062 = HEAP32[$0>>2]|0; - $3063 = (($3062) + 76|0); - HEAP32[$3063>>2] = $3061; - $3064 = HEAP32[$db>>2]|0; - $3065 = (($3064) + 62|0); - HEAP8[$3065>>0] = 0; - HEAP32[$rc>>2] = 5; - $3066 = HEAP32[$0>>2]|0; - $3067 = (($3066) + 80|0); - HEAP32[$3067>>2] = 5; - $7150 = $lastRowid; - $7151 = $7150; - $7152 = HEAP32[$7151>>2]|0; - $7153 = (($7150) + 4)|0; - $7154 = $7153; - $7155 = HEAP32[$7154>>2]|0; - $7156 = HEAP32[$db>>2]|0; - $7157 = (($7156) + 32|0); - $7158 = $7157; - $7159 = $7158; - HEAP32[$7159>>2] = $7152; - $7160 = (($7158) + 4)|0; - $7161 = $7160; - HEAP32[$7161>>2] = $7155; - $7162 = HEAP32[$nVmStep>>2]|0; - $7163 = HEAP32[$0>>2]|0; - $7164 = (($7163) + 108|0); - $7165 = (($7164) + 16|0); - $7166 = HEAP32[$7165>>2]|0; - $7167 = (($7166) + ($7162))|0; - HEAP32[$7165>>2] = $7167; - $7168 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($7168|0); - break; - } - case 423: { - $3230 = HEAP32[$iRollback>>2]|0; - $3231 = ($3230|0)!=(0); - if ($3231) { - $3232 = HEAP32[$db>>2]|0; - _sqlite3RollbackAll($3232,516); - $3233 = HEAP32[$db>>2]|0; - $3234 = (($3233) + 62|0); - HEAP8[$3234>>0] = 1; - } else { - $3235 = HEAP32[$0>>2]|0; - $3236 = (_sqlite3VdbeCheckFk($3235,1)|0); - HEAP32[$rc>>2] = $3236; - $3237 = ($3236|0)!=(0); - if ($3237) { - $7150 = $lastRowid; - $7151 = $7150; - $7152 = HEAP32[$7151>>2]|0; - $7153 = (($7150) + 4)|0; - $7154 = $7153; - $7155 = HEAP32[$7154>>2]|0; - $7156 = HEAP32[$db>>2]|0; - $7157 = (($7156) + 32|0); - $7158 = $7157; - $7159 = $7158; - HEAP32[$7159>>2] = $7152; - $7160 = (($7158) + 4)|0; - $7161 = $7160; - HEAP32[$7161>>2] = $7155; - $7162 = HEAP32[$nVmStep>>2]|0; - $7163 = HEAP32[$0>>2]|0; - $7164 = (($7163) + 108|0); - $7165 = (($7164) + 16|0); - $7166 = HEAP32[$7165>>2]|0; - $7167 = (($7166) + ($7162))|0; - HEAP32[$7165>>2] = $7167; - $7168 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($7168|0); - } - $3238 = HEAP32[$desiredAutoCommit>>2]|0; - $3239 = $3238&255; - $3240 = HEAP32[$db>>2]|0; - $3241 = (($3240) + 62|0); - HEAP8[$3241>>0] = $3239; - $3242 = HEAP32[$0>>2]|0; - $3243 = (_sqlite3VdbeHalt($3242)|0); - $3244 = ($3243|0)==(5); - if ($3244) { - $3245 = HEAP32[$pc>>2]|0; - $3246 = HEAP32[$0>>2]|0; - $3247 = (($3246) + 76|0); - HEAP32[$3247>>2] = $3245; - $3248 = HEAP32[$desiredAutoCommit>>2]|0; - $3249 = (1 - ($3248))|0; - $3250 = $3249&255; - $3251 = HEAP32[$db>>2]|0; - $3252 = (($3251) + 62|0); - HEAP8[$3252>>0] = $3250; - HEAP32[$rc>>2] = 5; - $3253 = HEAP32[$0>>2]|0; - $3254 = (($3253) + 80|0); - HEAP32[$3254>>2] = 5; - $7150 = $lastRowid; - $7151 = $7150; - $7152 = HEAP32[$7151>>2]|0; - $7153 = (($7150) + 4)|0; - $7154 = $7153; - $7155 = HEAP32[$7154>>2]|0; - $7156 = HEAP32[$db>>2]|0; - $7157 = (($7156) + 32|0); - $7158 = $7157; - $7159 = $7158; - HEAP32[$7159>>2] = $7152; - $7160 = (($7158) + 4)|0; - $7161 = $7160; - HEAP32[$7161>>2] = $7155; - $7162 = HEAP32[$nVmStep>>2]|0; - $7163 = HEAP32[$0>>2]|0; - $7164 = (($7163) + 108|0); - $7165 = (($7164) + 16|0); - $7166 = HEAP32[$7165>>2]|0; - $7167 = (($7166) + ($7162))|0; - HEAP32[$7165>>2] = $7167; - $7168 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($7168|0); - } - } - $3255 = HEAP32[$db>>2]|0; - _sqlite3CloseSavepoints($3255); - $3256 = HEAP32[$0>>2]|0; - $3257 = (($3256) + 80|0); - $3258 = HEAP32[$3257>>2]|0; - $3259 = ($3258|0)==(0); - if ($3259) { - HEAP32[$rc>>2] = 101; - $7150 = $lastRowid; - $7151 = $7150; - $7152 = HEAP32[$7151>>2]|0; - $7153 = (($7150) + 4)|0; - $7154 = $7153; - $7155 = HEAP32[$7154>>2]|0; - $7156 = HEAP32[$db>>2]|0; - $7157 = (($7156) + 32|0); - $7158 = $7157; - $7159 = $7158; - HEAP32[$7159>>2] = $7152; - $7160 = (($7158) + 4)|0; - $7161 = $7160; - HEAP32[$7161>>2] = $7155; - $7162 = HEAP32[$nVmStep>>2]|0; - $7163 = HEAP32[$0>>2]|0; - $7164 = (($7163) + 108|0); - $7165 = (($7164) + 16|0); - $7166 = HEAP32[$7165>>2]|0; - $7167 = (($7166) + ($7162))|0; - HEAP32[$7165>>2] = $7167; - $7168 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($7168|0); - } else { - HEAP32[$rc>>2] = 1; - $7150 = $lastRowid; - $7151 = $7150; - $7152 = HEAP32[$7151>>2]|0; - $7153 = (($7150) + 4)|0; - $7154 = $7153; - $7155 = HEAP32[$7154>>2]|0; - $7156 = HEAP32[$db>>2]|0; - $7157 = (($7156) + 32|0); - $7158 = $7157; - $7159 = $7158; - HEAP32[$7159>>2] = $7152; - $7160 = (($7158) + 4)|0; - $7161 = $7160; - HEAP32[$7161>>2] = $7155; - $7162 = HEAP32[$nVmStep>>2]|0; - $7163 = HEAP32[$0>>2]|0; - $7164 = (($7163) + 108|0); - $7165 = (($7164) + 16|0); - $7166 = HEAP32[$7165>>2]|0; - $7167 = (($7166) + ($7162))|0; - HEAP32[$7165>>2] = $7167; - $7168 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($7168|0); - } - break; - } - case 436: { - HEAP32[$rc>>2] = 8; - break; - } - case 439: { - $3296 = HEAP32[$pc>>2]|0; - $3297 = HEAP32[$0>>2]|0; - $3298 = (($3297) + 76|0); - HEAP32[$3298>>2] = $3296; - HEAP32[$rc>>2] = 5; - $3299 = HEAP32[$0>>2]|0; - $3300 = (($3299) + 80|0); - HEAP32[$3300>>2] = 5; - $7150 = $lastRowid; - $7151 = $7150; - $7152 = HEAP32[$7151>>2]|0; - $7153 = (($7150) + 4)|0; - $7154 = $7153; - $7155 = HEAP32[$7154>>2]|0; - $7156 = HEAP32[$db>>2]|0; - $7157 = (($7156) + 32|0); - $7158 = $7157; - $7159 = $7158; - HEAP32[$7159>>2] = $7152; - $7160 = (($7158) + 4)|0; - $7161 = $7160; - HEAP32[$7161>>2] = $7155; - $7162 = HEAP32[$nVmStep>>2]|0; - $7163 = HEAP32[$0>>2]|0; - $7164 = (($7163) + 108|0); - $7165 = (($7164) + 16|0); - $7166 = HEAP32[$7165>>2]|0; - $7167 = (($7166) + ($7162))|0; - HEAP32[$7165>>2] = $7167; - $7168 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($7168|0); - break; - } - case 473: { - $3596 = (_sqlite3CorruptError(70771)|0); - HEAP32[$rc>>2] = $3596; - break; - } - case 572: { - HEAP32[$rc>>2] = 13; - break; - } - case 586: { - HEAP32[$rc>>2] = 13; - break; - } - case 898: { - $7150 = $lastRowid; - $7151 = $7150; - $7152 = HEAP32[$7151>>2]|0; - $7153 = (($7150) + 4)|0; - $7154 = $7153; - $7155 = HEAP32[$7154>>2]|0; - $7156 = HEAP32[$db>>2]|0; - $7157 = (($7156) + 32|0); - $7158 = $7157; - $7159 = $7158; - HEAP32[$7159>>2] = $7152; - $7160 = (($7158) + 4)|0; - $7161 = $7160; - HEAP32[$7161>>2] = $7155; - $7162 = HEAP32[$nVmStep>>2]|0; - $7163 = HEAP32[$0>>2]|0; - $7164 = (($7163) + 108|0); - $7165 = (($7164) + 16|0); - $7166 = HEAP32[$7165>>2]|0; - $7167 = (($7166) + ($7162))|0; - HEAP32[$7165>>2] = $7167; - $7168 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($7168|0); - break; - } - case 899: { - $7169 = HEAP32[$0>>2]|0; - $7170 = (($7169) + 44|0); - $7171 = HEAP32[$db>>2]|0; - _sqlite3SetString($7170,$7171,1432,$vararg_buffer62); - HEAP32[$rc>>2] = 18; - break L1; - break; - } - } - $7177 = HEAP32[$db>>2]|0; - $7178 = (($7177) + 64|0); - $7179 = HEAP8[$7178>>0]|0; - $7180 = ($7179<<24>>24)!=(0); - if ($7180) { - HEAP32[$rc>>2] = 7; - } - $7181 = HEAP32[$rc>>2]|0; - $7182 = ($7181|0)!=(3082); - if (!($7182)) { - break L1; - } - $7183 = HEAP32[$0>>2]|0; - $7184 = (($7183) + 44|0); - $7185 = HEAP32[$db>>2]|0; - $7186 = HEAP32[$rc>>2]|0; - $7187 = (_sqlite3ErrStr($7186)|0); - HEAP32[$vararg_buffer62>>2] = $7187; - _sqlite3SetString($7184,$7185,1456,$vararg_buffer62); - break L1; - } - } while(0); - HEAP32[$rc>>2] = 9; - $7188 = HEAP32[$rc>>2]|0; - $7189 = HEAP32[$0>>2]|0; - $7190 = (($7189) + 80|0); - HEAP32[$7190>>2] = $7188; - $7191 = HEAP32[$0>>2]|0; - $7192 = (($7191) + 44|0); - $7193 = HEAP32[$db>>2]|0; - $7194 = HEAP32[$rc>>2]|0; - $7195 = (_sqlite3ErrStr($7194)|0); - HEAP32[$vararg_buffer62>>2] = $7195; - _sqlite3SetString($7192,$7193,1456,$vararg_buffer62); - } - } while(0); - if ((label|0) == 900) { - $7172 = HEAP32[$db>>2]|0; - $7173 = (($7172) + 64|0); - HEAP8[$7173>>0] = 1; - $7174 = HEAP32[$0>>2]|0; - $7175 = (($7174) + 44|0); - $7176 = HEAP32[$db>>2]|0; - _sqlite3SetString($7175,$7176,5352,$vararg_buffer62); - HEAP32[$rc>>2] = 7; - } - $7127 = HEAP32[$rc>>2]|0; - $7128 = HEAP32[$0>>2]|0; - $7129 = (($7128) + 80|0); - HEAP32[$7129>>2] = $7127; - $7130 = HEAP32[$rc>>2]|0; - $7131 = HEAP32[$pc>>2]|0; - $7132 = HEAP32[$0>>2]|0; - $7133 = (($7132) + 168|0); - $7134 = HEAP32[$7133>>2]|0; - $7135 = HEAP32[$0>>2]|0; - $7136 = (($7135) + 44|0); - $7137 = HEAP32[$7136>>2]|0; - HEAP32[$vararg_buffer62>>2] = $7131; - $vararg_ptr53 = (($vararg_buffer62) + 4|0); - HEAP32[$vararg_ptr53>>2] = $7134; - $vararg_ptr54 = (($vararg_buffer62) + 8|0); - HEAP32[$vararg_ptr54>>2] = $7137; - _sqlite3_log($7130,31840,$vararg_buffer62); - $7138 = HEAP32[$0>>2]|0; - (_sqlite3VdbeHalt($7138)|0); - $7139 = HEAP32[$rc>>2]|0; - $7140 = ($7139|0)==(3082); - if ($7140) { - $7141 = HEAP32[$db>>2]|0; - $7142 = (($7141) + 64|0); - HEAP8[$7142>>0] = 1; - } - HEAP32[$rc>>2] = 1; - $7143 = HEAP8[$resetSchemaOnFault>>0]|0; - $7144 = $7143&255; - $7145 = ($7144|0)>(0); - if (!($7145)) { - $7150 = $lastRowid; - $7151 = $7150; - $7152 = HEAP32[$7151>>2]|0; - $7153 = (($7150) + 4)|0; - $7154 = $7153; - $7155 = HEAP32[$7154>>2]|0; - $7156 = HEAP32[$db>>2]|0; - $7157 = (($7156) + 32|0); - $7158 = $7157; - $7159 = $7158; - HEAP32[$7159>>2] = $7152; - $7160 = (($7158) + 4)|0; - $7161 = $7160; - HEAP32[$7161>>2] = $7155; - $7162 = HEAP32[$nVmStep>>2]|0; - $7163 = HEAP32[$0>>2]|0; - $7164 = (($7163) + 108|0); - $7165 = (($7164) + 16|0); - $7166 = HEAP32[$7165>>2]|0; - $7167 = (($7166) + ($7162))|0; - HEAP32[$7165>>2] = $7167; - $7168 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($7168|0); - } - $7146 = HEAP32[$db>>2]|0; - $7147 = HEAP8[$resetSchemaOnFault>>0]|0; - $7148 = $7147&255; - $7149 = (($7148) - 1)|0; - _sqlite3ResetOneSchema($7146,$7149); - $7150 = $lastRowid; - $7151 = $7150; - $7152 = HEAP32[$7151>>2]|0; - $7153 = (($7150) + 4)|0; - $7154 = $7153; - $7155 = HEAP32[$7154>>2]|0; - $7156 = HEAP32[$db>>2]|0; - $7157 = (($7156) + 32|0); - $7158 = $7157; - $7159 = $7158; - HEAP32[$7159>>2] = $7152; - $7160 = (($7158) + 4)|0; - $7161 = $7160; - HEAP32[$7161>>2] = $7155; - $7162 = HEAP32[$nVmStep>>2]|0; - $7163 = HEAP32[$0>>2]|0; - $7164 = (($7163) + 108|0); - $7165 = (($7164) + 16|0); - $7166 = HEAP32[$7165>>2]|0; - $7167 = (($7166) + ($7162))|0; - HEAP32[$7165>>2] = $7167; - $7168 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($7168|0); -} -function _doWalCallbacks($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $nEntry = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $rc = sp + 12|0; - $i = sp + 8|0; - $pBt = sp + 4|0; - $nEntry = sp; - HEAP32[$0>>2] = $db; - HEAP32[$rc>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $1 = HEAP32[$i>>2]|0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 20|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($1|0)<($4|0); - if (!($5)) { - break; - } - $6 = HEAP32[$i>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 16|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + ($6<<4)|0); - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$pBt>>2] = $12; - $13 = HEAP32[$pBt>>2]|0; - $14 = ($13|0)!=(0|0); - if ($14) { - $15 = HEAP32[$pBt>>2]|0; - $16 = (_sqlite3BtreePager($15)|0); - $17 = (_sqlite3PagerWalCallback($16)|0); - HEAP32[$nEntry>>2] = $17; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 204|0); - $20 = HEAP32[$19>>2]|0; - $21 = ($20|0)!=(0|0); - if ($21) { - $22 = HEAP32[$nEntry>>2]|0; - $23 = ($22|0)>(0); - if ($23) { - $24 = HEAP32[$rc>>2]|0; - $25 = ($24|0)==(0); - if ($25) { - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 204|0); - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$0>>2]|0; - $30 = (($29) + 208|0); - $31 = HEAP32[$30>>2]|0; - $32 = HEAP32[$0>>2]|0; - $33 = HEAP32[$i>>2]|0; - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 16|0); - $36 = HEAP32[$35>>2]|0; - $37 = (($36) + ($33<<4)|0); - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$nEntry>>2]|0; - $40 = (FUNCTION_TABLE_iiiii[$28 & 15]($31,$32,$38,$39)|0); - HEAP32[$rc>>2] = $40; - } - } - } - } - $41 = HEAP32[$i>>2]|0; - $42 = (($41) + 1)|0; - HEAP32[$i>>2] = $42; - } - $43 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($43|0); -} -function _sqlite3VdbeTransferError($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $mallocFailed = 0, $rc = 0, $vararg_buffer = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 12|0; - $db = sp + 8|0; - $rc = sp + 4|0; - $mallocFailed = sp + 16|0; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$db>>2] = $2; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 80|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$rc>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 44|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)!=(0|0); - $10 = HEAP32[$db>>2]|0; - if (!($9)) { - $33 = HEAP32[$rc>>2]|0; - _sqlite3Error($10,$33,0,$vararg_buffer); - $34 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($34|0); - } - $11 = (($10) + 64|0); - $12 = HEAP8[$11>>0]|0; - HEAP8[$mallocFailed>>0] = $12; - _sqlite3BeginBenignMalloc(); - $13 = HEAP32[$db>>2]|0; - $14 = (($13) + 224|0); - $15 = HEAP32[$14>>2]|0; - $16 = ($15|0)==(0|0); - if ($16) { - $17 = HEAP32[$db>>2]|0; - $18 = (_sqlite3ValueNew($17)|0); - $19 = HEAP32[$db>>2]|0; - $20 = (($19) + 224|0); - HEAP32[$20>>2] = $18; - } - $21 = HEAP32[$db>>2]|0; - $22 = (($21) + 224|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 44|0); - $26 = HEAP32[$25>>2]|0; - _sqlite3ValueSetStr($23,-1,$26,1,(-1)); - _sqlite3EndBenignMalloc(); - $27 = HEAP8[$mallocFailed>>0]|0; - $28 = HEAP32[$db>>2]|0; - $29 = (($28) + 64|0); - HEAP8[$29>>0] = $27; - $30 = HEAP32[$rc>>2]|0; - $31 = HEAP32[$db>>2]|0; - $32 = (($31) + 52|0); - HEAP32[$32>>2] = $30; - $34 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($34|0); -} -function _sqlite3PagerWalCallback($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 208|0); - $3 = HEAP32[$2>>2]|0; - $4 = (_sqlite3WalCallback($3)|0); - STACKTOP = sp;return ($4|0); -} -function _sqlite3WalCallback($pWal) { - $pWal = $pWal|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $ret = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $ret = sp; - HEAP32[$0>>2] = $pWal; - HEAP32[$ret>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if (!($2)) { - $8 = HEAP32[$ret>>2]|0; - STACKTOP = sp;return ($8|0); - } - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 12|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$ret>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 12|0); - HEAP32[$7>>2] = 0; - $8 = HEAP32[$ret>>2]|0; - STACKTOP = sp;return ($8|0); -} -function _sqlite3VdbeSetChanges($db,$nChange) { - $db = $db|0; - $nChange = $nChange|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $nChange; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 80|0); - HEAP32[$4>>2] = $2; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 84|0); - $8 = HEAP32[$7>>2]|0; - $9 = (($8) + ($5))|0; - HEAP32[$7>>2] = $9; - STACKTOP = sp;return; -} -function _sqlite3VdbeFrameRestore($pFrame) { - $pFrame = $pFrame|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $v = sp; - HEAP32[$0>>2] = $pFrame; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$v>>2] = $2; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 16|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$v>>2]|0; - $7 = (($6) + 200|0); - HEAP32[$7>>2] = $5; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 56|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$v>>2]|0; - $12 = (($11) + 196|0); - HEAP32[$12>>2] = $10; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 8|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$v>>2]|0; - $17 = (($16) + 4|0); - HEAP32[$17>>2] = $15; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 48|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$v>>2]|0; - $22 = (($21) + 32|0); - HEAP32[$22>>2] = $20; - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 12|0); - $25 = HEAP32[$24>>2]|0; - $26 = HEAP32[$v>>2]|0; - $27 = (($26) + 8|0); - HEAP32[$27>>2] = $25; - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 52|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$v>>2]|0; - $32 = (($31) + 28|0); - HEAP32[$32>>2] = $30; - $33 = HEAP32[$0>>2]|0; - $34 = (($33) + 20|0); - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$v>>2]|0; - $37 = (($36) + 56|0); - HEAP32[$37>>2] = $35; - $38 = HEAP32[$0>>2]|0; - $39 = (($38) + 40|0); - $40 = HEAP32[$39>>2]|0; - $41 = HEAP32[$v>>2]|0; - $42 = (($41) + 36|0); - HEAP32[$42>>2] = $40; - $43 = HEAP32[$0>>2]|0; - $44 = (($43) + 32|0); - $45 = $44; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = (($45) + 4)|0; - $49 = $48; - $50 = HEAP32[$49>>2]|0; - $51 = HEAP32[$v>>2]|0; - $52 = HEAP32[$51>>2]|0; - $53 = (($52) + 32|0); - $54 = $53; - $55 = $54; - HEAP32[$55>>2] = $47; - $56 = (($54) + 4)|0; - $57 = $56; - HEAP32[$57>>2] = $50; - $58 = HEAP32[$0>>2]|0; - $59 = (($58) + 68|0); - $60 = HEAP32[$59>>2]|0; - $61 = HEAP32[$v>>2]|0; - $62 = (($61) + 92|0); - HEAP32[$62>>2] = $60; - $63 = HEAP32[$0>>2]|0; - $64 = (($63) + 44|0); - $65 = HEAP32[$64>>2]|0; - STACKTOP = sp;return ($65|0); -} -function _sqlite3VdbeHalt($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $28 = 0, $29 = 0, $3 = 0; - var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; - var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; - var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; - var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $eStatementOp = 0, $isSpecialError = 0, $mrc = 0; - var $or$cond = 0, $or$cond3 = 0, $or$cond5 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $rc = sp + 16|0; - $db = sp + 12|0; - $mrc = sp + 8|0; - $eStatementOp = sp + 4|0; - $isSpecialError = sp; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = (($5) + 64|0); - $7 = HEAP8[$6>>0]|0; - $8 = ($7<<24>>24)!=(0); - if ($8) { - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 80|0); - HEAP32[$10>>2] = 7; - } - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 200|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)!=(0|0); - if ($14) { - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 200|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 196|0); - $20 = HEAP32[$19>>2]|0; - _memset(($17|0),0,($20|0))|0; - } - $21 = HEAP32[$1>>2]|0; - _closeAllCursors($21); - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 40|0); - $24 = HEAP32[$23>>2]|0; - $25 = ($24|0)!=(-1108210269); - if ($25) { - HEAP32[$0>>2] = 0; - $275 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($275|0); - } - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 76|0); - $28 = HEAP32[$27>>2]|0; - $29 = ($28|0)>=(0); - if ($29) { - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 88|0); - $32 = HEAP16[$31>>1]|0; - $33 = ($32&65535) >>> 9; - $34 = $33 & 1; - $35 = $34&65535; - $36 = ($35|0)!=(0); - if ($36) { - HEAP32[$eStatementOp>>2] = 0; - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 80|0); - $39 = HEAP32[$38>>2]|0; - $40 = $39 & 255; - HEAP32[$mrc>>2] = $40; - $41 = HEAP32[$mrc>>2]|0; - $42 = ($41|0)==(7); - $43 = HEAP32[$mrc>>2]|0; - $44 = ($43|0)==(10); - $or$cond = $42 | $44; - $45 = HEAP32[$mrc>>2]|0; - $46 = ($45|0)==(9); - $or$cond3 = $or$cond | $46; - if ($or$cond3) { - $50 = 1; - } else { - $47 = HEAP32[$mrc>>2]|0; - $48 = ($47|0)==(13); - $50 = $48; - } - $49 = $50&1; - HEAP32[$isSpecialError>>2] = $49; - $51 = HEAP32[$isSpecialError>>2]|0; - $52 = ($51|0)!=(0); - do { - if ($52) { - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + 88|0); - $55 = HEAP16[$54>>1]|0; - $56 = ($55&65535) >>> 8; - $57 = $56 & 1; - $58 = $57&65535; - $59 = ($58|0)!=(0); - if ($59) { - $60 = HEAP32[$mrc>>2]|0; - $61 = ($60|0)!=(9); - if (!($61)) { - break; - } - } - $62 = HEAP32[$mrc>>2]|0; - $63 = ($62|0)==(7); - $64 = HEAP32[$mrc>>2]|0; - $65 = ($64|0)==(13); - $or$cond5 = $63 | $65; - if ($or$cond5) { - $66 = HEAP32[$1>>2]|0; - $67 = (($66) + 88|0); - $68 = HEAP16[$67>>1]|0; - $69 = ($68&65535) >>> 7; - $70 = $69 & 1; - $71 = $70&65535; - $72 = ($71|0)!=(0); - if ($72) { - HEAP32[$eStatementOp>>2] = 2; - break; - } - } - $73 = HEAP32[$db>>2]|0; - _sqlite3RollbackAll($73,516); - $74 = HEAP32[$db>>2]|0; - _sqlite3CloseSavepoints($74); - $75 = HEAP32[$db>>2]|0; - $76 = (($75) + 62|0); - HEAP8[$76>>0] = 1; - } - } while(0); - $77 = HEAP32[$1>>2]|0; - $78 = (($77) + 80|0); - $79 = HEAP32[$78>>2]|0; - $80 = ($79|0)==(0); - if ($80) { - $81 = HEAP32[$1>>2]|0; - (_sqlite3VdbeCheckFk($81,0)|0); - } - $82 = HEAP32[$db>>2]|0; - $83 = (($82) + 296|0); - $84 = HEAP32[$83>>2]|0; - $85 = ($84|0)>(0); - if ($85) { - $86 = HEAP32[$db>>2]|0; - $87 = (($86) + 320|0); - $88 = HEAP32[$87>>2]|0; - $89 = ($88|0)==(0|0); - if ($89) { - label = 40; - } else { - label = 22; - } - } else { - label = 22; - } - if ((label|0) == 22) { - $90 = HEAP32[$db>>2]|0; - $91 = (($90) + 62|0); - $92 = HEAP8[$91>>0]|0; - $93 = $92&255; - $94 = ($93|0)!=(0); - if ($94) { - $95 = HEAP32[$db>>2]|0; - $96 = (($95) + 148|0); - $97 = HEAP32[$96>>2]|0; - $98 = HEAP32[$1>>2]|0; - $99 = (($98) + 88|0); - $100 = HEAP16[$99>>1]|0; - $101 = ($100&65535) >>> 8; - $102 = $101 & 1; - $103 = $102&65535; - $104 = ($103|0)==(0); - $105 = $104&1; - $106 = ($97|0)==($105|0); - if ($106) { - $107 = HEAP32[$1>>2]|0; - $108 = (($107) + 80|0); - $109 = HEAP32[$108>>2]|0; - $110 = ($109|0)==(0); - do { - if ($110) { - label = 27; - } else { - $111 = HEAP32[$1>>2]|0; - $112 = (($111) + 86|0); - $113 = HEAP8[$112>>0]|0; - $114 = $113&255; - $115 = ($114|0)==(3); - if ($115) { - $116 = HEAP32[$isSpecialError>>2]|0; - $117 = ($116|0)!=(0); - if (!($117)) { - label = 27; - break; - } - } - $164 = HEAP32[$db>>2]|0; - _sqlite3RollbackAll($164,0); - } - } while(0); - do { - if ((label|0) == 27) { - $118 = HEAP32[$1>>2]|0; - $119 = (_sqlite3VdbeCheckFk($118,1)|0); - HEAP32[$rc>>2] = $119; - $120 = HEAP32[$rc>>2]|0; - $121 = ($120|0)!=(0); - do { - if ($121) { - $122 = HEAP32[$1>>2]|0; - $123 = (($122) + 88|0); - $124 = HEAP16[$123>>1]|0; - $125 = ($124&65535) >>> 8; - $126 = $125 & 1; - $127 = $126&65535; - $128 = ($127|0)!=(0); - if (!($128)) { - HEAP32[$rc>>2] = 787; - break; - } - HEAP32[$0>>2] = 1; - $275 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($275|0); - } else { - $129 = HEAP32[$db>>2]|0; - $130 = HEAP32[$1>>2]|0; - $131 = (_vdbeCommit($129,$130)|0); - HEAP32[$rc>>2] = $131; - } - } while(0); - $132 = HEAP32[$rc>>2]|0; - $133 = ($132|0)==(5); - if ($133) { - $134 = HEAP32[$1>>2]|0; - $135 = (($134) + 88|0); - $136 = HEAP16[$135>>1]|0; - $137 = ($136&65535) >>> 8; - $138 = $137 & 1; - $139 = $138&65535; - $140 = ($139|0)!=(0); - if ($140) { - HEAP32[$0>>2] = 5; - $275 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($275|0); - } - } - $141 = HEAP32[$rc>>2]|0; - $142 = ($141|0)!=(0); - if ($142) { - $143 = HEAP32[$rc>>2]|0; - $144 = HEAP32[$1>>2]|0; - $145 = (($144) + 80|0); - HEAP32[$145>>2] = $143; - $146 = HEAP32[$db>>2]|0; - _sqlite3RollbackAll($146,0); - break; - } else { - $147 = HEAP32[$db>>2]|0; - $148 = (($147) + 496|0); - $149 = $148; - $150 = $149; - HEAP32[$150>>2] = 0; - $151 = (($149) + 4)|0; - $152 = $151; - HEAP32[$152>>2] = 0; - $153 = HEAP32[$db>>2]|0; - $154 = (($153) + 504|0); - $155 = $154; - $156 = $155; - HEAP32[$156>>2] = 0; - $157 = (($155) + 4)|0; - $158 = $157; - HEAP32[$158>>2] = 0; - $159 = HEAP32[$db>>2]|0; - $160 = (($159) + 24|0); - $161 = HEAP32[$160>>2]|0; - $162 = $161 & -16777217; - HEAP32[$160>>2] = $162; - $163 = HEAP32[$db>>2]|0; - _sqlite3CommitInternalChanges($163); - break; - } - } - } while(0); - $165 = HEAP32[$db>>2]|0; - $166 = (($165) + 492|0); - HEAP32[$166>>2] = 0; - } else { - label = 40; - } - } else { - label = 40; - } - } - do { - if ((label|0) == 40) { - $167 = HEAP32[$eStatementOp>>2]|0; - $168 = ($167|0)==(0); - if ($168) { - $169 = HEAP32[$1>>2]|0; - $170 = (($169) + 80|0); - $171 = HEAP32[$170>>2]|0; - $172 = ($171|0)==(0); - if (!($172)) { - $173 = HEAP32[$1>>2]|0; - $174 = (($173) + 86|0); - $175 = HEAP8[$174>>0]|0; - $176 = $175&255; - $177 = ($176|0)==(3); - if (!($177)) { - $178 = HEAP32[$1>>2]|0; - $179 = (($178) + 86|0); - $180 = HEAP8[$179>>0]|0; - $181 = $180&255; - $182 = ($181|0)==(2); - if ($182) { - HEAP32[$eStatementOp>>2] = 2; - break; - } else { - $183 = HEAP32[$db>>2]|0; - _sqlite3RollbackAll($183,516); - $184 = HEAP32[$db>>2]|0; - _sqlite3CloseSavepoints($184); - $185 = HEAP32[$db>>2]|0; - $186 = (($185) + 62|0); - HEAP8[$186>>0] = 1; - break; - } - } - } - HEAP32[$eStatementOp>>2] = 1; - } - } - } while(0); - $187 = HEAP32[$eStatementOp>>2]|0; - $188 = ($187|0)!=(0); - if ($188) { - $189 = HEAP32[$1>>2]|0; - $190 = HEAP32[$eStatementOp>>2]|0; - $191 = (_sqlite3VdbeCloseStatement($189,$190)|0); - HEAP32[$rc>>2] = $191; - $192 = HEAP32[$rc>>2]|0; - $193 = ($192|0)!=(0); - if ($193) { - $194 = HEAP32[$1>>2]|0; - $195 = (($194) + 80|0); - $196 = HEAP32[$195>>2]|0; - $197 = ($196|0)==(0); - if ($197) { - label = 51; - } else { - $198 = HEAP32[$1>>2]|0; - $199 = (($198) + 80|0); - $200 = HEAP32[$199>>2]|0; - $201 = $200 & 255; - $202 = ($201|0)==(19); - if ($202) { - label = 51; - } - } - if ((label|0) == 51) { - $203 = HEAP32[$rc>>2]|0; - $204 = HEAP32[$1>>2]|0; - $205 = (($204) + 80|0); - HEAP32[$205>>2] = $203; - $206 = HEAP32[$db>>2]|0; - $207 = HEAP32[$1>>2]|0; - $208 = (($207) + 44|0); - $209 = HEAP32[$208>>2]|0; - _sqlite3DbFree($206,$209); - $210 = HEAP32[$1>>2]|0; - $211 = (($210) + 44|0); - HEAP32[$211>>2] = 0; - } - $212 = HEAP32[$db>>2]|0; - _sqlite3RollbackAll($212,516); - $213 = HEAP32[$db>>2]|0; - _sqlite3CloseSavepoints($213); - $214 = HEAP32[$db>>2]|0; - $215 = (($214) + 62|0); - HEAP8[$215>>0] = 1; - } - } - $216 = HEAP32[$1>>2]|0; - $217 = (($216) + 88|0); - $218 = HEAP16[$217>>1]|0; - $219 = ($218&65535) >>> 4; - $220 = $219 & 1; - $221 = $220&65535; - $222 = ($221|0)!=(0); - if ($222) { - $223 = HEAP32[$eStatementOp>>2]|0; - $224 = ($223|0)!=(2); - $225 = HEAP32[$db>>2]|0; - if ($224) { - $226 = HEAP32[$1>>2]|0; - $227 = (($226) + 92|0); - $228 = HEAP32[$227>>2]|0; - _sqlite3VdbeSetChanges($225,$228); - } else { - _sqlite3VdbeSetChanges($225,0); - } - $229 = HEAP32[$1>>2]|0; - $230 = (($229) + 92|0); - HEAP32[$230>>2] = 0; - } - } - } - $231 = HEAP32[$1>>2]|0; - $232 = (($231) + 76|0); - $233 = HEAP32[$232>>2]|0; - $234 = ($233|0)>=(0); - if ($234) { - $235 = HEAP32[$db>>2]|0; - $236 = (($235) + 140|0); - $237 = HEAP32[$236>>2]|0; - $238 = (($237) + -1)|0; - HEAP32[$236>>2] = $238; - $239 = HEAP32[$1>>2]|0; - $240 = (($239) + 88|0); - $241 = HEAP16[$240>>1]|0; - $242 = ($241&65535) >>> 8; - $243 = $242 & 1; - $244 = $243&65535; - $245 = ($244|0)!=(0); - if (!($245)) { - $246 = HEAP32[$db>>2]|0; - $247 = (($246) + 148|0); - $248 = HEAP32[$247>>2]|0; - $249 = (($248) + -1)|0; - HEAP32[$247>>2] = $249; - } - $250 = HEAP32[$1>>2]|0; - $251 = (($250) + 88|0); - $252 = HEAP16[$251>>1]|0; - $253 = ($252&65535) >>> 9; - $254 = $253 & 1; - $255 = $254&65535; - $256 = ($255|0)!=(0); - if ($256) { - $257 = HEAP32[$db>>2]|0; - $258 = (($257) + 144|0); - $259 = HEAP32[$258>>2]|0; - $260 = (($259) + -1)|0; - HEAP32[$258>>2] = $260; - } - } - $261 = HEAP32[$1>>2]|0; - $262 = (($261) + 40|0); - HEAP32[$262>>2] = 1369188723; - $263 = HEAP32[$1>>2]|0; - $264 = HEAP32[$263>>2]|0; - $265 = (($264) + 64|0); - $266 = HEAP8[$265>>0]|0; - $267 = ($266<<24>>24)!=(0); - if ($267) { - $268 = HEAP32[$1>>2]|0; - $269 = (($268) + 80|0); - HEAP32[$269>>2] = 7; - } - $270 = HEAP32[$1>>2]|0; - $271 = (($270) + 80|0); - $272 = HEAP32[$271>>2]|0; - $273 = ($272|0)==(5); - $274 = $273 ? 5 : 0; - HEAP32[$0>>2] = $274; - $275 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($275|0); -} -function _sqlite3VdbeMemTooBig($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $n = sp; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 28|0); - $4 = HEAP16[$3>>1]|0; - $5 = $4&65535; - $6 = $5 & 18; - $7 = ($6|0)!=(0); - if (!($7)) { - HEAP32[$0>>2] = 0; - $29 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($29|0); - } - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 24|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$n>>2] = $10; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 28|0); - $13 = HEAP16[$12>>1]|0; - $14 = $13&65535; - $15 = $14 & 16384; - $16 = ($15|0)!=(0); - if ($16) { - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 16|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$n>>2]|0; - $21 = (($20) + ($19))|0; - HEAP32[$n>>2] = $21; - } - $22 = HEAP32[$n>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + 88|0); - $26 = HEAP32[$25>>2]|0; - $27 = ($22|0)>($26|0); - $28 = $27&1; - HEAP32[$0>>2] = $28; - $29 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($29|0); -} -function _sqlite3VdbeCheckFk($p,$deferred) { - $p = $p|0; - $deferred = $deferred|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $db = sp + 4|0; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $deferred; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$db>>2] = $4; - $5 = HEAP32[$2>>2]|0; - $6 = ($5|0)!=(0); - if ($6) { - $7 = HEAP32[$db>>2]|0; - $8 = (($7) + 496|0); - $9 = $8; - $10 = $9; - $11 = HEAP32[$10>>2]|0; - $12 = (($9) + 4)|0; - $13 = $12; - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$db>>2]|0; - $16 = (($15) + 504|0); - $17 = $16; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = (($17) + 4)|0; - $21 = $20; - $22 = HEAP32[$21>>2]|0; - $23 = (_i64Add(($11|0),($14|0),($19|0),($22|0))|0); - $24 = tempRet0; - $25 = ($24|0)>(0); - $26 = ($24|0)==(0); - $27 = ($23>>>0)>(0); - $28 = $26 & $27; - $29 = $25 | $28; - if (!($29)) { - label = 3; - } - } else { - label = 3; - } - do { - if ((label|0) == 3) { - $30 = HEAP32[$2>>2]|0; - $31 = ($30|0)!=(0); - if (!($31)) { - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 144|0); - $34 = $33; - $35 = $34; - $36 = HEAP32[$35>>2]|0; - $37 = (($34) + 4)|0; - $38 = $37; - $39 = HEAP32[$38>>2]|0; - $40 = ($39|0)>(0); - $41 = ($39|0)==(0); - $42 = ($36>>>0)>(0); - $43 = $41 & $42; - $44 = $40 | $43; - if ($44) { - break; - } - } - HEAP32[$0>>2] = 0; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); - } - } while(0); - $45 = HEAP32[$1>>2]|0; - $46 = (($45) + 80|0); - HEAP32[$46>>2] = 787; - $47 = HEAP32[$1>>2]|0; - $48 = (($47) + 86|0); - HEAP8[$48>>0] = 2; - $49 = HEAP32[$1>>2]|0; - $50 = (($49) + 44|0); - $51 = HEAP32[$db>>2]|0; - _sqlite3SetString($50,$51,24256,$vararg_buffer); - HEAP32[$0>>2] = 1; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); -} -function _sqlite3VdbeCloseStatement($p,$eOp) { - $p = $p|0; - $eOp = $eOp|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $db = 0, $i = 0, $iSavepoint = 0, $pBt = 0, $rc = 0, $rc2 = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $db = sp + 20|0; - $rc = sp + 16|0; - $i = sp + 12|0; - $iSavepoint = sp + 8|0; - $rc2 = sp + 4|0; - $pBt = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $eOp; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - HEAP32[$rc>>2] = 0; - $4 = HEAP32[$db>>2]|0; - $5 = (($4) + 492|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0); - if (!($7)) { - $93 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($93|0); - } - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 104|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)!=(0); - if (!($11)) { - $93 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($93|0); - } - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 104|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) - 1)|0; - HEAP32[$iSavepoint>>2] = $15; - HEAP32[$i>>2] = 0; - while(1) { - $16 = HEAP32[$i>>2]|0; - $17 = HEAP32[$db>>2]|0; - $18 = (($17) + 20|0); - $19 = HEAP32[$18>>2]|0; - $20 = ($16|0)<($19|0); - if (!($20)) { - break; - } - HEAP32[$rc2>>2] = 0; - $21 = HEAP32[$i>>2]|0; - $22 = HEAP32[$db>>2]|0; - $23 = (($22) + 16|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + ($21<<4)|0); - $26 = (($25) + 4|0); - $27 = HEAP32[$26>>2]|0; - HEAP32[$pBt>>2] = $27; - $28 = HEAP32[$pBt>>2]|0; - $29 = ($28|0)!=(0|0); - if ($29) { - $30 = HEAP32[$1>>2]|0; - $31 = ($30|0)==(2); - if ($31) { - $32 = HEAP32[$pBt>>2]|0; - $33 = HEAP32[$iSavepoint>>2]|0; - $34 = (_sqlite3BtreeSavepoint($32,2,$33)|0); - HEAP32[$rc2>>2] = $34; - } - $35 = HEAP32[$rc2>>2]|0; - $36 = ($35|0)==(0); - if ($36) { - $37 = HEAP32[$pBt>>2]|0; - $38 = HEAP32[$iSavepoint>>2]|0; - $39 = (_sqlite3BtreeSavepoint($37,1,$38)|0); - HEAP32[$rc2>>2] = $39; - } - $40 = HEAP32[$rc>>2]|0; - $41 = ($40|0)==(0); - if ($41) { - $42 = HEAP32[$rc2>>2]|0; - HEAP32[$rc>>2] = $42; - } - } - $43 = HEAP32[$i>>2]|0; - $44 = (($43) + 1)|0; - HEAP32[$i>>2] = $44; - } - $45 = HEAP32[$db>>2]|0; - $46 = (($45) + 492|0); - $47 = HEAP32[$46>>2]|0; - $48 = (($47) + -1)|0; - HEAP32[$46>>2] = $48; - $49 = HEAP32[$0>>2]|0; - $50 = (($49) + 104|0); - HEAP32[$50>>2] = 0; - $51 = HEAP32[$rc>>2]|0; - $52 = ($51|0)==(0); - if ($52) { - $53 = HEAP32[$1>>2]|0; - $54 = ($53|0)==(2); - if ($54) { - $55 = HEAP32[$db>>2]|0; - $56 = HEAP32[$iSavepoint>>2]|0; - $57 = (_sqlite3VtabSavepoint($55,2,$56)|0); - HEAP32[$rc>>2] = $57; - } - $58 = HEAP32[$rc>>2]|0; - $59 = ($58|0)==(0); - if ($59) { - $60 = HEAP32[$db>>2]|0; - $61 = HEAP32[$iSavepoint>>2]|0; - $62 = (_sqlite3VtabSavepoint($60,1,$61)|0); - HEAP32[$rc>>2] = $62; - } - } - $63 = HEAP32[$1>>2]|0; - $64 = ($63|0)==(2); - if (!($64)) { - $93 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($93|0); - } - $65 = HEAP32[$0>>2]|0; - $66 = (($65) + 152|0); - $67 = $66; - $68 = $67; - $69 = HEAP32[$68>>2]|0; - $70 = (($67) + 4)|0; - $71 = $70; - $72 = HEAP32[$71>>2]|0; - $73 = HEAP32[$db>>2]|0; - $74 = (($73) + 496|0); - $75 = $74; - $76 = $75; - HEAP32[$76>>2] = $69; - $77 = (($75) + 4)|0; - $78 = $77; - HEAP32[$78>>2] = $72; - $79 = HEAP32[$0>>2]|0; - $80 = (($79) + 160|0); - $81 = $80; - $82 = $81; - $83 = HEAP32[$82>>2]|0; - $84 = (($81) + 4)|0; - $85 = $84; - $86 = HEAP32[$85>>2]|0; - $87 = HEAP32[$db>>2]|0; - $88 = (($87) + 504|0); - $89 = $88; - $90 = $89; - HEAP32[$90>>2] = $83; - $91 = (($89) + 4)|0; - $92 = $91; - HEAP32[$92>>2] = $86; - $93 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($93|0); -} -function _sqlite3VdbeMemNulTerminate($pMem) { - $pMem = $pMem|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $pMem; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 28|0); - $4 = HEAP16[$3>>1]|0; - $5 = $4&65535; - $6 = $5 & 512; - $7 = ($6|0)!=(0); - if (!($7)) { - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 28|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10&65535; - $12 = $11 & 2; - $13 = ($12|0)==(0); - if (!($13)) { - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 24|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + 2)|0; - $19 = (_sqlite3VdbeMemGrow($14,$18,1)|0); - $20 = ($19|0)!=(0); - if ($20) { - HEAP32[$0>>2] = 7; - $42 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($42|0); - } else { - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 24|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 4|0); - $26 = HEAP32[$25>>2]|0; - $27 = (($26) + ($23)|0); - HEAP8[$27>>0] = 0; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 24|0); - $30 = HEAP32[$29>>2]|0; - $31 = (($30) + 1)|0; - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 4|0); - $34 = HEAP32[$33>>2]|0; - $35 = (($34) + ($31)|0); - HEAP8[$35>>0] = 0; - $36 = HEAP32[$1>>2]|0; - $37 = (($36) + 28|0); - $38 = HEAP16[$37>>1]|0; - $39 = $38&65535; - $40 = $39 | 512; - $41 = $40&65535; - HEAP16[$37>>1] = $41; - HEAP32[$0>>2] = 0; - $42 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($42|0); - } - } - } - HEAP32[$0>>2] = 0; - $42 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($42|0); -} -function _numericType($pMem) { - $pMem = $pMem|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $pMem; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 28|0); - $4 = HEAP16[$3>>1]|0; - $5 = $4&65535; - $6 = $5 & 12; - $7 = ($6|0)!=(0); - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 28|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10&65535; - if ($7) { - $12 = $11 & 12; - $13 = $12&65535; - HEAP16[$0>>1] = $13; - $42 = HEAP16[$0>>1]|0; - STACKTOP = sp;return ($42|0); - } - $14 = $11 & 18; - $15 = ($14|0)!=(0); - if (!($15)) { - HEAP16[$0>>1] = 0; - $42 = HEAP16[$0>>1]|0; - STACKTOP = sp;return ($42|0); - } - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 4|0); - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 8|0); - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 24|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 30|0); - $26 = HEAP8[$25>>0]|0; - $27 = (_sqlite3AtoF($18,$20,$23,$26)|0); - $28 = ($27|0)==(0); - if ($28) { - HEAP16[$0>>1] = 0; - $42 = HEAP16[$0>>1]|0; - STACKTOP = sp;return ($42|0); - } - $29 = HEAP32[$1>>2]|0; - $30 = (($29) + 4|0); - $31 = HEAP32[$30>>2]|0; - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 16|0); - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 24|0); - $36 = HEAP32[$35>>2]|0; - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 30|0); - $39 = HEAP8[$38>>0]|0; - $40 = (_sqlite3Atoi64($31,$33,$36,$39)|0); - $41 = ($40|0)==(0); - if ($41) { - HEAP16[$0>>1] = 4; - $42 = HEAP16[$0>>1]|0; - STACKTOP = sp;return ($42|0); - } else { - HEAP16[$0>>1] = 8; - $42 = HEAP16[$0>>1]|0; - STACKTOP = sp;return ($42|0); - } - return 0|0; -} -function _sqlite3SubInt64($pA,$0,$1) { - $pA = $pA|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp; - HEAP32[$3>>2] = $pA; - $5 = $4; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - $9 = $4; - $10 = $9; - $11 = HEAP32[$10>>2]|0; - $12 = (($9) + 4)|0; - $13 = $12; - $14 = HEAP32[$13>>2]|0; - $15 = ($11|0)==(0); - $16 = ($14|0)==(-2147483648); - $17 = $15 & $16; - $18 = HEAP32[$3>>2]|0; - if (!($17)) { - $49 = $4; - $50 = $49; - $51 = HEAP32[$50>>2]|0; - $52 = (($49) + 4)|0; - $53 = $52; - $54 = HEAP32[$53>>2]|0; - $55 = (_i64Subtract(0,0,($51|0),($54|0))|0); - $56 = tempRet0; - $57 = (_sqlite3AddInt64($18,$55,$56)|0); - HEAP32[$2>>2] = $57; - $58 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($58|0); - } - $19 = $18; - $20 = $19; - $21 = HEAP32[$20>>2]|0; - $22 = (($19) + 4)|0; - $23 = $22; - $24 = HEAP32[$23>>2]|0; - $25 = ($24|0)>(0); - $26 = ($24|0)==(0); - $27 = ($21>>>0)>=(0); - $28 = $26 & $27; - $29 = $25 | $28; - if ($29) { - HEAP32[$2>>2] = 1; - $58 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($58|0); - } else { - $30 = $4; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $33 = (($30) + 4)|0; - $34 = $33; - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$3>>2]|0; - $37 = $36; - $38 = $37; - $39 = HEAP32[$38>>2]|0; - $40 = (($37) + 4)|0; - $41 = $40; - $42 = HEAP32[$41>>2]|0; - $43 = (_i64Subtract(($39|0),($42|0),($32|0),($35|0))|0); - $44 = tempRet0; - $45 = $36; - $46 = $45; - HEAP32[$46>>2] = $43; - $47 = (($45) + 4)|0; - $48 = $47; - HEAP32[$48>>2] = $44; - HEAP32[$2>>2] = 0; - $58 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($58|0); - } - return 0|0; -} -function _sqlite3MulInt64($pA,$0,$1) { - $pA = $pA|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; - var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; - var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; - var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; - var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; - var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; - var $99 = 0, $iA = 0, $iA0 = 0, $iA1 = 0, $iB0 = 0, $iB1 = 0, $or$cond = 0, $r = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $2 = sp + 60|0; - $3 = sp + 56|0; - $4 = sp + 48|0; - $iA = sp + 40|0; - $iA1 = sp + 32|0; - $iA0 = sp + 24|0; - $iB1 = sp + 16|0; - $iB0 = sp + 8|0; - $r = sp; - HEAP32[$3>>2] = $pA; - $5 = $4; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - $9 = HEAP32[$3>>2]|0; - $10 = $9; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = (($10) + 4)|0; - $14 = $13; - $15 = HEAP32[$14>>2]|0; - $16 = $iA; - $17 = $16; - HEAP32[$17>>2] = $12; - $18 = (($16) + 4)|0; - $19 = $18; - HEAP32[$19>>2] = $15; - $20 = $iA; - $21 = $20; - $22 = HEAP32[$21>>2]|0; - $23 = (($20) + 4)|0; - $24 = $23; - $25 = HEAP32[$24>>2]|0; - $26 = (___divdi3(($22|0),($25|0),0,1)|0); - $27 = tempRet0; - $28 = $iA1; - $29 = $28; - HEAP32[$29>>2] = $26; - $30 = (($28) + 4)|0; - $31 = $30; - HEAP32[$31>>2] = $27; - $32 = $iA; - $33 = $32; - $34 = HEAP32[$33>>2]|0; - $35 = (($32) + 4)|0; - $36 = $35; - $37 = HEAP32[$36>>2]|0; - $38 = (___remdi3(($34|0),($37|0),0,1)|0); - $39 = tempRet0; - $40 = $iA0; - $41 = $40; - HEAP32[$41>>2] = $38; - $42 = (($40) + 4)|0; - $43 = $42; - HEAP32[$43>>2] = $39; - $44 = $4; - $45 = $44; - $46 = HEAP32[$45>>2]|0; - $47 = (($44) + 4)|0; - $48 = $47; - $49 = HEAP32[$48>>2]|0; - $50 = (___divdi3(($46|0),($49|0),0,1)|0); - $51 = tempRet0; - $52 = $iB1; - $53 = $52; - HEAP32[$53>>2] = $50; - $54 = (($52) + 4)|0; - $55 = $54; - HEAP32[$55>>2] = $51; - $56 = $4; - $57 = $56; - $58 = HEAP32[$57>>2]|0; - $59 = (($56) + 4)|0; - $60 = $59; - $61 = HEAP32[$60>>2]|0; - $62 = (___remdi3(($58|0),($61|0),0,1)|0); - $63 = tempRet0; - $64 = $iB0; - $65 = $64; - HEAP32[$65>>2] = $62; - $66 = (($64) + 4)|0; - $67 = $66; - HEAP32[$67>>2] = $63; - $68 = $iA1; - $69 = $68; - $70 = HEAP32[$69>>2]|0; - $71 = (($68) + 4)|0; - $72 = $71; - $73 = HEAP32[$72>>2]|0; - $74 = ($70|0)==(0); - $75 = ($73|0)==(0); - $76 = $74 & $75; - $77 = $iB1; - $78 = $77; - $79 = HEAP32[$78>>2]|0; - $80 = (($77) + 4)|0; - $81 = $80; - $82 = HEAP32[$81>>2]|0; - $83 = ($79|0)==(0); - $84 = ($82|0)==(0); - $85 = $83 & $84; - do { - if ($76) { - if (!($85)) { - $105 = $iA0; - $106 = $105; - $107 = HEAP32[$106>>2]|0; - $108 = (($105) + 4)|0; - $109 = $108; - $110 = HEAP32[$109>>2]|0; - $111 = $iB1; - $112 = $111; - $113 = HEAP32[$112>>2]|0; - $114 = (($111) + 4)|0; - $115 = $114; - $116 = HEAP32[$115>>2]|0; - $117 = (___muldi3(($107|0),($110|0),($113|0),($116|0))|0); - $118 = tempRet0; - $119 = $r; - $120 = $119; - HEAP32[$120>>2] = $117; - $121 = (($119) + 4)|0; - $122 = $121; - HEAP32[$122>>2] = $118; - break; - } - $86 = $4; - $87 = $86; - $88 = HEAP32[$87>>2]|0; - $89 = (($86) + 4)|0; - $90 = $89; - $91 = HEAP32[$90>>2]|0; - $92 = HEAP32[$3>>2]|0; - $93 = $92; - $94 = $93; - $95 = HEAP32[$94>>2]|0; - $96 = (($93) + 4)|0; - $97 = $96; - $98 = HEAP32[$97>>2]|0; - $99 = (___muldi3(($95|0),($98|0),($88|0),($91|0))|0); - $100 = tempRet0; - $101 = $92; - $102 = $101; - HEAP32[$102>>2] = $99; - $103 = (($101) + 4)|0; - $104 = $103; - HEAP32[$104>>2] = $100; - HEAP32[$2>>2] = 0; - $202 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($202|0); - } else { - if ($85) { - $123 = $iA1; - $124 = $123; - $125 = HEAP32[$124>>2]|0; - $126 = (($123) + 4)|0; - $127 = $126; - $128 = HEAP32[$127>>2]|0; - $129 = $iB0; - $130 = $129; - $131 = HEAP32[$130>>2]|0; - $132 = (($129) + 4)|0; - $133 = $132; - $134 = HEAP32[$133>>2]|0; - $135 = (___muldi3(($125|0),($128|0),($131|0),($134|0))|0); - $136 = tempRet0; - $137 = $r; - $138 = $137; - HEAP32[$138>>2] = $135; - $139 = (($137) + 4)|0; - $140 = $139; - HEAP32[$140>>2] = $136; - break; - } - HEAP32[$2>>2] = 1; - $202 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($202|0); - } - } while(0); - $141 = $r; - $142 = $141; - $143 = HEAP32[$142>>2]|0; - $144 = (($141) + 4)|0; - $145 = $144; - $146 = HEAP32[$145>>2]|0; - $147 = ($146|0)<(-1); - $148 = ($146|0)==(-1); - $149 = ($143>>>0)<(2147483648); - $150 = $148 & $149; - $151 = $147 | $150; - $152 = $r; - $153 = $152; - $154 = HEAP32[$153>>2]|0; - $155 = (($152) + 4)|0; - $156 = $155; - $157 = HEAP32[$156>>2]|0; - $158 = ($157|0)>(0); - $159 = ($157|0)==(0); - $160 = ($154>>>0)>=(2147483648); - $161 = $159 & $160; - $162 = $158 | $161; - $or$cond = $151 | $162; - if ($or$cond) { - HEAP32[$2>>2] = 1; - $202 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($202|0); - } - $163 = $r; - $164 = $163; - $165 = HEAP32[$164>>2]|0; - $166 = (($163) + 4)|0; - $167 = $166; - $168 = HEAP32[$167>>2]|0; - $169 = (___muldi3(($165|0),($168|0),0,1)|0); - $170 = tempRet0; - $171 = $r; - $172 = $171; - HEAP32[$172>>2] = $169; - $173 = (($171) + 4)|0; - $174 = $173; - HEAP32[$174>>2] = $170; - $175 = $iA0; - $176 = $175; - $177 = HEAP32[$176>>2]|0; - $178 = (($175) + 4)|0; - $179 = $178; - $180 = HEAP32[$179>>2]|0; - $181 = $iB0; - $182 = $181; - $183 = HEAP32[$182>>2]|0; - $184 = (($181) + 4)|0; - $185 = $184; - $186 = HEAP32[$185>>2]|0; - $187 = (___muldi3(($177|0),($180|0),($183|0),($186|0))|0); - $188 = tempRet0; - $189 = (_sqlite3AddInt64($r,$187,$188)|0); - $190 = ($189|0)!=(0); - if ($190) { - HEAP32[$2>>2] = 1; - $202 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($202|0); - } else { - $191 = $r; - $192 = $191; - $193 = HEAP32[$192>>2]|0; - $194 = (($191) + 4)|0; - $195 = $194; - $196 = HEAP32[$195>>2]|0; - $197 = HEAP32[$3>>2]|0; - $198 = $197; - $199 = $198; - HEAP32[$199>>2] = $193; - $200 = (($198) + 4)|0; - $201 = $200; - HEAP32[$201>>2] = $196; - HEAP32[$2>>2] = 0; - $202 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($202|0); - } - return 0|0; -} -function _sqlite3VdbeDeleteAuxData($pVdbe,$iOp,$mask) { - $pVdbe = $pVdbe|0; - $iOp = $iOp|0; - $mask = $mask|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pAux = 0, $pp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $pp = sp + 4|0; - $pAux = sp; - HEAP32[$0>>2] = $pVdbe; - HEAP32[$1>>2] = $iOp; - HEAP32[$2>>2] = $mask; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 204|0); - HEAP32[$pp>>2] = $4; - L1: while(1) { - $5 = HEAP32[$pp>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0|0); - if (!($7)) { - break; - } - $8 = HEAP32[$pp>>2]|0; - $9 = HEAP32[$8>>2]|0; - HEAP32[$pAux>>2] = $9; - $10 = HEAP32[$1>>2]|0; - $11 = ($10|0)<(0); - do { - if (!($11)) { - $12 = HEAP32[$pAux>>2]|0; - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = ($13|0)==($14|0); - if ($15) { - $16 = HEAP32[$pAux>>2]|0; - $17 = (($16) + 4|0); - $18 = HEAP32[$17>>2]|0; - $19 = ($18|0)>(31); - if ($19) { - break; - } - $20 = HEAP32[$2>>2]|0; - $21 = HEAP32[$pAux>>2]|0; - $22 = (($21) + 4|0); - $23 = HEAP32[$22>>2]|0; - $24 = 1 << $23; - $25 = $20 & $24; - $26 = ($25|0)!=(0); - if (!($26)) { - break; - } - } - $44 = HEAP32[$pAux>>2]|0; - $45 = (($44) + 16|0); - HEAP32[$pp>>2] = $45; - continue L1; - } - } while(0); - $27 = HEAP32[$pAux>>2]|0; - $28 = (($27) + 12|0); - $29 = HEAP32[$28>>2]|0; - $30 = ($29|0)!=(0|0); - if ($30) { - $31 = HEAP32[$pAux>>2]|0; - $32 = (($31) + 12|0); - $33 = HEAP32[$32>>2]|0; - $34 = HEAP32[$pAux>>2]|0; - $35 = (($34) + 8|0); - $36 = HEAP32[$35>>2]|0; - FUNCTION_TABLE_vi[$33 & 31]($36); - } - $37 = HEAP32[$pAux>>2]|0; - $38 = (($37) + 16|0); - $39 = HEAP32[$38>>2]|0; - $40 = HEAP32[$pp>>2]|0; - HEAP32[$40>>2] = $39; - $41 = HEAP32[$0>>2]|0; - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$pAux>>2]|0; - _sqlite3DbFree($42,$43); - } - STACKTOP = sp;return; -} -function _sqlite3VdbeMemIntegerify($pMem) { - $pMem = $pMem|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pMem; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3VdbeIntValue($1)|0); - $3 = tempRet0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 16|0); - $6 = $5; - $7 = $6; - HEAP32[$7>>2] = $2; - $8 = (($6) + 4)|0; - $9 = $8; - HEAP32[$9>>2] = $3; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 28|0); - $12 = HEAP16[$11>>1]|0; - $13 = $12&65535; - $14 = $13 & -16896; - $15 = $14 | 4; - $16 = $15&65535; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 28|0); - HEAP16[$18>>1] = $16; - STACKTOP = sp;return 0; -} -function _sqlite3VdbeMemRealify($pMem) { - $pMem = $pMem|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0.0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pMem; - $1 = HEAP32[$0>>2]|0; - $2 = (+_sqlite3VdbeRealValue($1)); - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 8|0); - HEAPF64[$4>>3] = $2; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 28|0); - $7 = HEAP16[$6>>1]|0; - $8 = $7&65535; - $9 = $8 & -16896; - $10 = $9 | 8; - $11 = $10&65535; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 28|0); - HEAP16[$13>>1] = $11; - STACKTOP = sp;return 0; -} -function _sqlite3VdbeCursorMoveto($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $hasMoved = 0; - var $rc = 0, $rc1 = 0, $res = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $res = sp + 12|0; - $rc = sp + 8|0; - $hasMoved = sp + 4|0; - $rc1 = sp; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 27|0); - $4 = HEAP8[$3>>0]|0; - $5 = ($4<<24>>24)!=(0); - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$6>>2]|0; - do { - if ($5) { - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 48|0); - $10 = $9; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = (($10) + 4)|0; - $14 = $13; - $15 = HEAP32[$14>>2]|0; - $16 = (_sqlite3BtreeMovetoUnpacked($7,0,$12,$15,0,$res)|0); - HEAP32[$rc>>2] = $16; - $17 = HEAP32[$rc>>2]|0; - $18 = ($17|0)!=(0); - if ($18) { - $19 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $19; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); - } - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 48|0); - $22 = $21; - $23 = $22; - $24 = HEAP32[$23>>2]|0; - $25 = (($22) + 4)|0; - $26 = $25; - $27 = HEAP32[$26>>2]|0; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 56|0); - $30 = $29; - $31 = $30; - HEAP32[$31>>2] = $24; - $32 = (($30) + 4)|0; - $33 = $32; - HEAP32[$33>>2] = $27; - $34 = HEAP32[$res>>2]|0; - $35 = ($34|0)!=(0); - if (!($35)) { - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 26|0); - HEAP8[$38>>0] = 1; - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + 27|0); - HEAP8[$40>>0] = 0; - $41 = HEAP32[$1>>2]|0; - $42 = (($41) + 68|0); - HEAP32[$42>>2] = 0; - break; - } - $36 = (_sqlite3CorruptError(64453)|0); - HEAP32[$0>>2] = $36; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); - } else { - $43 = ($7|0)!=(0|0); - if ($43) { - $44 = HEAP32[$1>>2]|0; - $45 = HEAP32[$44>>2]|0; - $46 = (_sqlite3BtreeCursorHasMoved($45,$hasMoved)|0); - HEAP32[$rc1>>2] = $46; - $47 = HEAP32[$rc1>>2]|0; - $48 = ($47|0)!=(0); - if ($48) { - $49 = HEAP32[$rc1>>2]|0; - HEAP32[$0>>2] = $49; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); - } - $50 = HEAP32[$hasMoved>>2]|0; - $51 = ($50|0)!=(0); - if ($51) { - $52 = HEAP32[$1>>2]|0; - $53 = (($52) + 68|0); - HEAP32[$53>>2] = 0; - $54 = HEAP32[$hasMoved>>2]|0; - $55 = ($54|0)==(2); - if ($55) { - $56 = HEAP32[$1>>2]|0; - $57 = (($56) + 25|0); - HEAP8[$57>>0] = 1; - } - } - } - } - } while(0); - HEAP32[$0>>2] = 0; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); -} -function _sqlite3BtreeKeyFetch($pCur,$pAmt) { - $pCur = $pCur|0; - $pAmt = $pAmt|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pCur; - HEAP32[$1>>2] = $pAmt; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_fetchPayload($2,$3)|0); - STACKTOP = sp;return ($4|0); -} -function _sqlite3BtreeDataSize($pCur,$pSize) { - $pCur = $pCur|0; - $pSize = $pSize|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iPage = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $iPage = sp; - HEAP32[$0>>2] = $pCur; - HEAP32[$1>>2] = $pSize; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 24|0); - $4 = (($3) + 26|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5&65535; - $7 = ($6|0)==(0); - if (!($7)) { - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 24|0); - $33 = (($32) + 12|0); - $34 = HEAP32[$33>>2]|0; - $35 = HEAP32[$1>>2]|0; - HEAP32[$35>>2] = $34; - STACKTOP = sp;return 0; - } - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 84|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10 << 16 >> 16; - HEAP32[$iPage>>2] = $11; - $12 = HEAP32[$iPage>>2]|0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 128|0); - $15 = (($14) + ($12<<2)|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$iPage>>2]|0; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 86|0); - $20 = (($19) + ($17<<1)|0); - $21 = HEAP16[$20>>1]|0; - $22 = $21&65535; - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 24|0); - _btreeParseCell($16,$22,$24); - $25 = HEAP32[$0>>2]|0; - $26 = (($25) + 80|0); - $27 = HEAP8[$26>>0]|0; - $28 = $27&255; - $29 = $28 | 2; - $30 = $29&255; - HEAP8[$26>>0] = $30; - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 24|0); - $33 = (($32) + 12|0); - $34 = HEAP32[$33>>2]|0; - $35 = HEAP32[$1>>2]|0; - HEAP32[$35>>2] = $34; - STACKTOP = sp;return 0; -} -function _sqlite3BtreeDataFetch($pCur,$pAmt) { - $pCur = $pCur|0; - $pAmt = $pAmt|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pCur; - HEAP32[$1>>2] = $pAmt; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_fetchPayload($2,$3)|0); - STACKTOP = sp;return ($4|0); -} -function _sqlite3VdbeMemFromBtree($pCur,$offset,$amt,$key,$pMem) { - $pCur = $pCur|0; - $offset = $offset|0; - $amt = $amt|0; - $key = $key|0; - $pMem = $pMem|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $available = 0, $rc = 0, $zData = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $zData = sp + 8|0; - $available = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pCur; - HEAP32[$1>>2] = $offset; - HEAP32[$2>>2] = $amt; - HEAP32[$3>>2] = $key; - HEAP32[$4>>2] = $pMem; - HEAP32[$available>>2] = 0; - HEAP32[$rc>>2] = 0; - $5 = HEAP32[$3>>2]|0; - $6 = ($5|0)!=(0); - $7 = HEAP32[$0>>2]|0; - if ($6) { - $8 = (_sqlite3BtreeKeyFetch($7,$available)|0); - HEAP32[$zData>>2] = $8; - } else { - $9 = (_sqlite3BtreeDataFetch($7,$available)|0); - HEAP32[$zData>>2] = $9; - } - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = (($10) + ($11))|0; - $13 = HEAP32[$available>>2]|0; - $14 = ($12>>>0)<=($13>>>0); - $15 = HEAP32[$4>>2]|0; - if ($14) { - _sqlite3VdbeMemRelease($15); - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$zData>>2]|0; - $18 = (($17) + ($16)|0); - $19 = HEAP32[$4>>2]|0; - $20 = (($19) + 4|0); - HEAP32[$20>>2] = $18; - $21 = HEAP32[$4>>2]|0; - $22 = (($21) + 28|0); - HEAP16[$22>>1] = 4112; - $23 = HEAP32[$2>>2]|0; - $24 = HEAP32[$4>>2]|0; - $25 = (($24) + 24|0); - HEAP32[$25>>2] = $23; - $59 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($59|0); - } - $26 = HEAP32[$2>>2]|0; - $27 = (($26) + 2)|0; - $28 = (_sqlite3VdbeMemGrow($15,$27,0)|0); - HEAP32[$rc>>2] = $28; - $29 = (0)==($28|0); - if (!($29)) { - $59 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($59|0); - } - $30 = HEAP32[$3>>2]|0; - $31 = ($30|0)!=(0); - $32 = HEAP32[$0>>2]|0; - $33 = HEAP32[$1>>2]|0; - $34 = HEAP32[$2>>2]|0; - $35 = HEAP32[$4>>2]|0; - $36 = (($35) + 4|0); - $37 = HEAP32[$36>>2]|0; - if ($31) { - $38 = (_sqlite3BtreeKey($32,$33,$34,$37)|0); - HEAP32[$rc>>2] = $38; - } else { - $39 = (_sqlite3BtreeData($32,$33,$34,$37)|0); - HEAP32[$rc>>2] = $39; - } - $40 = HEAP32[$rc>>2]|0; - $41 = ($40|0)==(0); - if ($41) { - $42 = HEAP32[$2>>2]|0; - $43 = HEAP32[$4>>2]|0; - $44 = (($43) + 4|0); - $45 = HEAP32[$44>>2]|0; - $46 = (($45) + ($42)|0); - HEAP8[$46>>0] = 0; - $47 = HEAP32[$2>>2]|0; - $48 = (($47) + 1)|0; - $49 = HEAP32[$4>>2]|0; - $50 = (($49) + 4|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + ($48)|0); - HEAP8[$52>>0] = 0; - $53 = HEAP32[$4>>2]|0; - $54 = (($53) + 28|0); - HEAP16[$54>>1] = 528; - $55 = HEAP32[$2>>2]|0; - $56 = HEAP32[$4>>2]|0; - $57 = (($56) + 24|0); - HEAP32[$57>>2] = $55; - $59 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($59|0); - } else { - $58 = HEAP32[$4>>2]|0; - _sqlite3VdbeMemRelease($58); - $59 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($59|0); - } - return 0|0; -} -function _sqlite3VdbeSerialType($pMem,$file_format) { - $pMem = $pMem|0; - $file_format = $file_format|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; - var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; - var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; - var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; - var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; - var $97 = 0, $98 = 0, $99 = 0, $flags = 0, $i = 0, $n = 0, $u = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $flags = sp + 20|0; - $n = sp + 16|0; - $i = sp + 8|0; - $u = sp; - HEAP32[$1>>2] = $pMem; - HEAP32[$2>>2] = $file_format; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 28|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5&65535; - HEAP32[$flags>>2] = $6; - $7 = HEAP32[$flags>>2]|0; - $8 = $7 & 1; - $9 = ($8|0)!=(0); - if ($9) { - HEAP32[$0>>2] = 0; - $162 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($162|0); - } - $10 = HEAP32[$flags>>2]|0; - $11 = $10 & 4; - $12 = ($11|0)!=(0); - if (!($12)) { - $140 = HEAP32[$flags>>2]|0; - $141 = $140 & 8; - $142 = ($141|0)!=(0); - if ($142) { - HEAP32[$0>>2] = 7; - $162 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($162|0); - } - $143 = HEAP32[$1>>2]|0; - $144 = (($143) + 24|0); - $145 = HEAP32[$144>>2]|0; - HEAP32[$n>>2] = $145; - $146 = HEAP32[$flags>>2]|0; - $147 = $146 & 16384; - $148 = ($147|0)!=(0); - if ($148) { - $149 = HEAP32[$1>>2]|0; - $150 = (($149) + 16|0); - $151 = HEAP32[$150>>2]|0; - $152 = HEAP32[$n>>2]|0; - $153 = (($152) + ($151))|0; - HEAP32[$n>>2] = $153; - } - $154 = HEAP32[$n>>2]|0; - $155 = $154<<1; - $156 = (($155) + 12)|0; - $157 = HEAP32[$flags>>2]|0; - $158 = $157 & 2; - $159 = ($158|0)!=(0); - $160 = $159&1; - $161 = (($156) + ($160))|0; - HEAP32[$0>>2] = $161; - $162 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($162|0); - } - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 16|0); - $15 = $14; - $16 = $15; - $17 = HEAP32[$16>>2]|0; - $18 = (($15) + 4)|0; - $19 = $18; - $20 = HEAP32[$19>>2]|0; - $21 = $i; - $22 = $21; - HEAP32[$22>>2] = $17; - $23 = (($21) + 4)|0; - $24 = $23; - HEAP32[$24>>2] = $20; - $25 = $i; - $26 = $25; - $27 = HEAP32[$26>>2]|0; - $28 = (($25) + 4)|0; - $29 = $28; - $30 = HEAP32[$29>>2]|0; - $31 = ($30|0)<(0); - $32 = $i; - $33 = $32; - $34 = HEAP32[$33>>2]|0; - $35 = (($32) + 4)|0; - $36 = $35; - $37 = HEAP32[$36>>2]|0; - do { - if ($31) { - $38 = ($37|0)<(-32768); - $39 = ($37|0)==(-32768); - $40 = ($34>>>0)<(1); - $41 = $39 & $40; - $42 = $38 | $41; - if (!($42)) { - $43 = $i; - $44 = $43; - $45 = HEAP32[$44>>2]|0; - $46 = (($43) + 4)|0; - $47 = $46; - $48 = HEAP32[$47>>2]|0; - $49 = (_i64Subtract(0,0,($45|0),($48|0))|0); - $50 = tempRet0; - $51 = $u; - $52 = $51; - HEAP32[$52>>2] = $49; - $53 = (($51) + 4)|0; - $54 = $53; - HEAP32[$54>>2] = $50; - break; - } - HEAP32[$0>>2] = 6; - $162 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($162|0); - } else { - $55 = $u; - $56 = $55; - HEAP32[$56>>2] = $34; - $57 = (($55) + 4)|0; - $58 = $57; - HEAP32[$58>>2] = $37; - } - } while(0); - $59 = $u; - $60 = $59; - $61 = HEAP32[$60>>2]|0; - $62 = (($59) + 4)|0; - $63 = $62; - $64 = HEAP32[$63>>2]|0; - $65 = ($64>>>0)<(0); - $66 = ($64|0)==(0); - $67 = ($61>>>0)<=(127); - $68 = $66 & $67; - $69 = $65 | $68; - if ($69) { - $70 = $i; - $71 = $70; - $72 = HEAP32[$71>>2]|0; - $73 = (($70) + 4)|0; - $74 = $73; - $75 = HEAP32[$74>>2]|0; - $76 = $72 & 1; - $77 = $i; - $78 = $77; - $79 = HEAP32[$78>>2]|0; - $80 = (($77) + 4)|0; - $81 = $80; - $82 = HEAP32[$81>>2]|0; - $83 = ($76|0)==($79|0); - $84 = (0)==($82|0); - $85 = $83 & $84; - if ($85) { - $86 = HEAP32[$2>>2]|0; - $87 = ($86|0)>=(4); - if ($87) { - $88 = $u; - $89 = $88; - $90 = HEAP32[$89>>2]|0; - $91 = (($88) + 4)|0; - $92 = $91; - $93 = HEAP32[$92>>2]|0; - $94 = (8 + ($90))|0; - $95 = $94; - } else { - $95 = 1; - } - } else { - $95 = 1; - } - HEAP32[$0>>2] = $95; - $162 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($162|0); - } - $96 = $u; - $97 = $96; - $98 = HEAP32[$97>>2]|0; - $99 = (($96) + 4)|0; - $100 = $99; - $101 = HEAP32[$100>>2]|0; - $102 = ($101>>>0)<(0); - $103 = ($101|0)==(0); - $104 = ($98>>>0)<=(32767); - $105 = $103 & $104; - $106 = $102 | $105; - if ($106) { - HEAP32[$0>>2] = 2; - $162 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($162|0); - } - $107 = $u; - $108 = $107; - $109 = HEAP32[$108>>2]|0; - $110 = (($107) + 4)|0; - $111 = $110; - $112 = HEAP32[$111>>2]|0; - $113 = ($112>>>0)<(0); - $114 = ($112|0)==(0); - $115 = ($109>>>0)<=(8388607); - $116 = $114 & $115; - $117 = $113 | $116; - if ($117) { - HEAP32[$0>>2] = 3; - $162 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($162|0); - } - $118 = $u; - $119 = $118; - $120 = HEAP32[$119>>2]|0; - $121 = (($118) + 4)|0; - $122 = $121; - $123 = HEAP32[$122>>2]|0; - $124 = ($123>>>0)<(0); - $125 = ($123|0)==(0); - $126 = ($120>>>0)<=(2147483647); - $127 = $125 & $126; - $128 = $124 | $127; - if ($128) { - HEAP32[$0>>2] = 4; - $162 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($162|0); - } - $129 = $u; - $130 = $129; - $131 = HEAP32[$130>>2]|0; - $132 = (($129) + 4)|0; - $133 = $132; - $134 = HEAP32[$133>>2]|0; - $135 = ($134>>>0)<(32767); - $136 = ($134|0)==(32767); - $137 = ($131>>>0)<=(4294967295); - $138 = $136 & $137; - $139 = $135 | $138; - if ($139) { - HEAP32[$0>>2] = 5; - $162 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($162|0); - } else { - HEAP32[$0>>2] = 6; - $162 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($162|0); - } - return 0|0; -} -function _sqlite3PutVarint32($p,$v) { - $p = $p|0; - $v = $v|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $v; - $3 = HEAP32[$2>>2]|0; - $4 = $3 & -16384; - $5 = ($4|0)==(0); - if ($5) { - $6 = HEAP32[$2>>2]|0; - $7 = $6 >>> 7; - $8 = $7 | 128; - $9 = $8&255; - $10 = HEAP32[$1>>2]|0; - HEAP8[$10>>0] = $9; - $11 = HEAP32[$2>>2]|0; - $12 = $11 & 127; - $13 = $12&255; - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 1|0); - HEAP8[$15>>0] = $13; - HEAP32[$0>>2] = 2; - $19 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($19|0); - } else { - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = (_sqlite3PutVarint($16,$17,0)|0); - HEAP32[$0>>2] = $18; - $19 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($19|0); - } - return 0|0; -} -function _sqlite3VdbeSerialPut($buf,$pMem,$serial_type) { - $buf = $buf|0; - $pMem = $pMem|0; - $serial_type = $serial_type|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $len = 0, $or$cond = 0, $v = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $len = sp + 12|0; - $v = sp; - $i = sp + 8|0; - HEAP32[$1>>2] = $buf; - HEAP32[$2>>2] = $pMem; - HEAP32[$3>>2] = $serial_type; - $4 = HEAP32[$3>>2]|0; - $5 = ($4>>>0)<=(7); - $6 = HEAP32[$3>>2]|0; - $7 = ($6>>>0)>(0); - $or$cond = $5 & $7; - $8 = HEAP32[$3>>2]|0; - if (!($or$cond)) { - $53 = ($8>>>0)>=(12); - if ($53) { - $54 = HEAP32[$2>>2]|0; - $55 = (($54) + 24|0); - $56 = HEAP32[$55>>2]|0; - HEAP32[$len>>2] = $56; - $57 = HEAP32[$1>>2]|0; - $58 = HEAP32[$2>>2]|0; - $59 = (($58) + 4|0); - $60 = HEAP32[$59>>2]|0; - $61 = HEAP32[$len>>2]|0; - _memcpy(($57|0),($60|0),($61|0))|0; - $62 = HEAP32[$len>>2]|0; - HEAP32[$0>>2] = $62; - $63 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($63|0); - } else { - HEAP32[$0>>2] = 0; - $63 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($63|0); - } - } - $9 = ($8|0)==(7); - if ($9) { - $10 = HEAP32[$2>>2]|0; - $11 = (($10) + 8|0); - ;HEAP32[$v+0>>2]=HEAP32[$11+0>>2]|0;HEAP32[$v+4>>2]=HEAP32[$11+4>>2]|0; - } else { - $12 = HEAP32[$2>>2]|0; - $13 = (($12) + 16|0); - $14 = $13; - $15 = $14; - $16 = HEAP32[$15>>2]|0; - $17 = (($14) + 4)|0; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = $v; - $21 = $20; - HEAP32[$21>>2] = $16; - $22 = (($20) + 4)|0; - $23 = $22; - HEAP32[$23>>2] = $19; - } - $24 = HEAP32[$3>>2]|0; - $25 = (_sqlite3VdbeSerialTypeLen($24)|0); - HEAP32[$i>>2] = $25; - HEAP32[$len>>2] = $25; - while(1) { - $26 = HEAP32[$i>>2]|0; - $27 = (($26) + -1)|0; - HEAP32[$i>>2] = $27; - $28 = ($26|0)!=(0); - if (!($28)) { - break; - } - $29 = $v; - $30 = $29; - $31 = HEAP32[$30>>2]|0; - $32 = (($29) + 4)|0; - $33 = $32; - $34 = HEAP32[$33>>2]|0; - $35 = $31 & 255; - $36 = $35&255; - $37 = HEAP32[$i>>2]|0; - $38 = HEAP32[$1>>2]|0; - $39 = (($38) + ($37)|0); - HEAP8[$39>>0] = $36; - $40 = $v; - $41 = $40; - $42 = HEAP32[$41>>2]|0; - $43 = (($40) + 4)|0; - $44 = $43; - $45 = HEAP32[$44>>2]|0; - $46 = (_bitshift64Lshr(($42|0),($45|0),8)|0); - $47 = tempRet0; - $48 = $v; - $49 = $48; - HEAP32[$49>>2] = $46; - $50 = (($48) + 4)|0; - $51 = $50; - HEAP32[$51>>2] = $47; - } - $52 = HEAP32[$len>>2]|0; - HEAP32[$0>>2] = $52; - $63 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($63|0); -} -function _sqlite3BtreeCount($pCur,$pnEntry) { - $pCur = $pCur|0; - $pnEntry = $pnEntry|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; - var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; - var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; - var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; - var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iIdx = 0, $nEntry = 0, $pPage = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $nEntry = sp; - $rc = sp + 16|0; - $iIdx = sp + 12|0; - $pPage = sp + 8|0; - HEAP32[$1>>2] = $pCur; - HEAP32[$2>>2] = $pnEntry; - $3 = $nEntry; - $4 = $3; - HEAP32[$4>>2] = 0; - $5 = (($3) + 4)|0; - $6 = $5; - HEAP32[$6>>2] = 0; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 68|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)==(0); - if ($10) { - $11 = HEAP32[$2>>2]|0; - $12 = $11; - $13 = $12; - HEAP32[$13>>2] = 0; - $14 = (($12) + 4)|0; - $15 = $14; - HEAP32[$15>>2] = 0; - HEAP32[$0>>2] = 0; - $169 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($169|0); - } - $16 = HEAP32[$1>>2]|0; - $17 = (_moveToRoot($16)|0); - HEAP32[$rc>>2] = $17; - L5: while(1) { - $18 = HEAP32[$rc>>2]|0; - $19 = ($18|0)==(0); - if (!($19)) { - label = 16; - break; - } - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 84|0); - $22 = HEAP16[$21>>1]|0; - $23 = $22 << 16 >> 16; - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 128|0); - $26 = (($25) + ($23<<2)|0); - $27 = HEAP32[$26>>2]|0; - HEAP32[$pPage>>2] = $27; - $28 = HEAP32[$pPage>>2]|0; - $29 = (($28) + 3|0); - $30 = HEAP8[$29>>0]|0; - $31 = $30&255; - $32 = ($31|0)!=(0); - if ($32) { - label = 7; - } else { - $33 = HEAP32[$pPage>>2]|0; - $34 = (($33) + 2|0); - $35 = HEAP8[$34>>0]|0; - $36 = ($35<<24>>24)!=(0); - if (!($36)) { - label = 7; - } - } - if ((label|0) == 7) { - label = 0; - $37 = HEAP32[$pPage>>2]|0; - $38 = (($37) + 16|0); - $39 = HEAP16[$38>>1]|0; - $40 = $39&65535; - $41 = $nEntry; - $42 = $41; - $43 = HEAP32[$42>>2]|0; - $44 = (($41) + 4)|0; - $45 = $44; - $46 = HEAP32[$45>>2]|0; - $47 = (_i64Add(($43|0),($46|0),($40|0),0)|0); - $48 = tempRet0; - $49 = $nEntry; - $50 = $49; - HEAP32[$50>>2] = $47; - $51 = (($49) + 4)|0; - $52 = $51; - HEAP32[$52>>2] = $48; - } - $53 = HEAP32[$pPage>>2]|0; - $54 = (($53) + 3|0); - $55 = HEAP8[$54>>0]|0; - $56 = ($55<<24>>24)!=(0); - if ($56) { - while(1) { - $57 = HEAP32[$1>>2]|0; - $58 = (($57) + 84|0); - $59 = HEAP16[$58>>1]|0; - $60 = $59 << 16 >> 16; - $61 = ($60|0)==(0); - if ($61) { - label = 10; - break L5; - } - $73 = HEAP32[$1>>2]|0; - _moveToParent($73); - $74 = HEAP32[$1>>2]|0; - $75 = (($74) + 84|0); - $76 = HEAP16[$75>>1]|0; - $77 = $76 << 16 >> 16; - $78 = HEAP32[$1>>2]|0; - $79 = (($78) + 86|0); - $80 = (($79) + ($77<<1)|0); - $81 = HEAP16[$80>>1]|0; - $82 = $81&65535; - $83 = HEAP32[$1>>2]|0; - $84 = (($83) + 84|0); - $85 = HEAP16[$84>>1]|0; - $86 = $85 << 16 >> 16; - $87 = HEAP32[$1>>2]|0; - $88 = (($87) + 128|0); - $89 = (($88) + ($86<<2)|0); - $90 = HEAP32[$89>>2]|0; - $91 = (($90) + 16|0); - $92 = HEAP16[$91>>1]|0; - $93 = $92&65535; - $94 = ($82|0)>=($93|0); - if (!($94)) { - break; - } - } - $95 = HEAP32[$1>>2]|0; - $96 = (($95) + 84|0); - $97 = HEAP16[$96>>1]|0; - $98 = $97 << 16 >> 16; - $99 = HEAP32[$1>>2]|0; - $100 = (($99) + 86|0); - $101 = (($100) + ($98<<1)|0); - $102 = HEAP16[$101>>1]|0; - $103 = (($102) + 1)<<16>>16; - HEAP16[$101>>1] = $103; - $104 = HEAP32[$1>>2]|0; - $105 = (($104) + 84|0); - $106 = HEAP16[$105>>1]|0; - $107 = $106 << 16 >> 16; - $108 = HEAP32[$1>>2]|0; - $109 = (($108) + 128|0); - $110 = (($109) + ($107<<2)|0); - $111 = HEAP32[$110>>2]|0; - HEAP32[$pPage>>2] = $111; - } - $112 = HEAP32[$1>>2]|0; - $113 = (($112) + 84|0); - $114 = HEAP16[$113>>1]|0; - $115 = $114 << 16 >> 16; - $116 = HEAP32[$1>>2]|0; - $117 = (($116) + 86|0); - $118 = (($117) + ($115<<1)|0); - $119 = HEAP16[$118>>1]|0; - $120 = $119&65535; - HEAP32[$iIdx>>2] = $120; - $121 = HEAP32[$iIdx>>2]|0; - $122 = HEAP32[$pPage>>2]|0; - $123 = (($122) + 16|0); - $124 = HEAP16[$123>>1]|0; - $125 = $124&65535; - $126 = ($121|0)==($125|0); - $127 = HEAP32[$1>>2]|0; - $128 = HEAP32[$pPage>>2]|0; - if ($126) { - $129 = (($128) + 5|0); - $130 = HEAP8[$129>>0]|0; - $131 = $130&255; - $132 = (($131) + 8)|0; - $133 = HEAP32[$pPage>>2]|0; - $134 = (($133) + 56|0); - $135 = HEAP32[$134>>2]|0; - $136 = (($135) + ($132)|0); - $137 = (_sqlite3Get4byte($136)|0); - $138 = (_moveToChild($127,$137)|0); - HEAP32[$rc>>2] = $138; - continue; - } else { - $139 = (($128) + 56|0); - $140 = HEAP32[$139>>2]|0; - $141 = HEAP32[$pPage>>2]|0; - $142 = (($141) + 18|0); - $143 = HEAP16[$142>>1]|0; - $144 = $143&65535; - $145 = HEAP32[$iIdx>>2]|0; - $146 = $145<<1; - $147 = HEAP32[$pPage>>2]|0; - $148 = (($147) + 64|0); - $149 = HEAP32[$148>>2]|0; - $150 = (($149) + ($146)|0); - $151 = HEAP8[$150>>0]|0; - $152 = $151&255; - $153 = $152 << 8; - $154 = HEAP32[$iIdx>>2]|0; - $155 = $154<<1; - $156 = HEAP32[$pPage>>2]|0; - $157 = (($156) + 64|0); - $158 = HEAP32[$157>>2]|0; - $159 = (($158) + ($155)|0); - $160 = (($159) + 1|0); - $161 = HEAP8[$160>>0]|0; - $162 = $161&255; - $163 = $153 | $162; - $164 = $144 & $163; - $165 = (($140) + ($164)|0); - $166 = (_sqlite3Get4byte($165)|0); - $167 = (_moveToChild($127,$166)|0); - HEAP32[$rc>>2] = $167; - continue; - } - } - if ((label|0) == 10) { - $62 = $nEntry; - $63 = $62; - $64 = HEAP32[$63>>2]|0; - $65 = (($62) + 4)|0; - $66 = $65; - $67 = HEAP32[$66>>2]|0; - $68 = HEAP32[$2>>2]|0; - $69 = $68; - $70 = $69; - HEAP32[$70>>2] = $64; - $71 = (($69) + 4)|0; - $72 = $71; - HEAP32[$72>>2] = $67; - HEAP32[$0>>2] = 0; - $169 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($169|0); - } - else if ((label|0) == 16) { - $168 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $168; - $169 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($169|0); - } - return 0|0; -} -function _sqlite3VtabSavepoint($db,$op,$iSavepoint) { - $db = $db|0; - $op = $op|0; - $iSavepoint = $iSavepoint|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; - var $9 = 0, $i = 0, $pMod = 0, $pVTab = 0, $rc = 0, $xMethod = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $rc = sp + 16|0; - $i = sp + 12|0; - $pVTab = sp + 8|0; - $pMod = sp + 4|0; - $xMethod = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $op; - HEAP32[$2>>2] = $iSavepoint; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 320|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - $60 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($60|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $7 = HEAP32[$rc>>2]|0; - $8 = ($7|0)==(0); - if (!($8)) { - label = 15; - break; - } - $9 = HEAP32[$i>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 296|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($9|0)<($12|0); - if (!($13)) { - label = 15; - break; - } - $14 = HEAP32[$i>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 320|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + ($14<<2)|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$pVTab>>2] = $19; - $20 = HEAP32[$pVTab>>2]|0; - $21 = (($20) + 4|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$22>>2]|0; - HEAP32[$pMod>>2] = $23; - $24 = HEAP32[$pVTab>>2]|0; - $25 = (($24) + 8|0); - $26 = HEAP32[$25>>2]|0; - $27 = ($26|0)!=(0|0); - if ($27) { - $28 = HEAP32[$pMod>>2]|0; - $29 = HEAP32[$28>>2]|0; - $30 = ($29|0)>=(2); - if ($30) { - $31 = HEAP32[$1>>2]|0; - if ((($31|0) == 2)) { - $39 = HEAP32[$pMod>>2]|0; - $40 = (($39) + 88|0); - $41 = HEAP32[$40>>2]|0; - HEAP32[$xMethod>>2] = $41; - } else if ((($31|0) == 0)) { - $32 = HEAP32[$pMod>>2]|0; - $33 = (($32) + 80|0); - $34 = HEAP32[$33>>2]|0; - HEAP32[$xMethod>>2] = $34; - $35 = HEAP32[$2>>2]|0; - $36 = (($35) + 1)|0; - $37 = HEAP32[$pVTab>>2]|0; - $38 = (($37) + 20|0); - HEAP32[$38>>2] = $36; - } else { - $42 = HEAP32[$pMod>>2]|0; - $43 = (($42) + 84|0); - $44 = HEAP32[$43>>2]|0; - HEAP32[$xMethod>>2] = $44; - } - $45 = HEAP32[$xMethod>>2]|0; - $46 = ($45|0)!=(0|0); - if ($46) { - $47 = HEAP32[$pVTab>>2]|0; - $48 = (($47) + 20|0); - $49 = HEAP32[$48>>2]|0; - $50 = HEAP32[$2>>2]|0; - $51 = ($49|0)>($50|0); - if ($51) { - $52 = HEAP32[$xMethod>>2]|0; - $53 = HEAP32[$pVTab>>2]|0; - $54 = (($53) + 8|0); - $55 = HEAP32[$54>>2]|0; - $56 = HEAP32[$2>>2]|0; - $57 = (FUNCTION_TABLE_iii[$52 & 63]($55,$56)|0); - HEAP32[$rc>>2] = $57; - } - } - } - } - $58 = HEAP32[$i>>2]|0; - $59 = (($58) + 1)|0; - HEAP32[$i>>2] = $59; - } - if ((label|0) == 15) { - $60 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($60|0); - } - return 0|0; -} -function _sqlite3BtreeTripAllCursors($pBtree,$errCode) { - $pBtree = $pBtree|0; - $errCode = $errCode|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $p = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $pBtree; - HEAP32[$1>>2] = $errCode; - $2 = HEAP32[$0>>2]|0; - $3 = ($2|0)==(0|0); - if ($3) { - STACKTOP = sp;return; - } - $4 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($4); - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 4|0); - $7 = HEAP32[$6>>2]|0; - $8 = (($7) + 8|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$p>>2] = $9; - while(1) { - $10 = HEAP32[$p>>2]|0; - $11 = ($10|0)!=(0|0); - if (!($11)) { - break; - } - $12 = HEAP32[$p>>2]|0; - _sqlite3BtreeClearCursor($12); - $13 = HEAP32[$p>>2]|0; - $14 = (($13) + 81|0); - HEAP8[$14>>0] = 4; - $15 = HEAP32[$1>>2]|0; - $16 = HEAP32[$p>>2]|0; - $17 = (($16) + 76|0); - HEAP32[$17>>2] = $15; - HEAP32[$i>>2] = 0; - while(1) { - $18 = HEAP32[$i>>2]|0; - $19 = HEAP32[$p>>2]|0; - $20 = (($19) + 84|0); - $21 = HEAP16[$20>>1]|0; - $22 = $21 << 16 >> 16; - $23 = ($18|0)<=($22|0); - if (!($23)) { - break; - } - $24 = HEAP32[$i>>2]|0; - $25 = HEAP32[$p>>2]|0; - $26 = (($25) + 128|0); - $27 = (($26) + ($24<<2)|0); - $28 = HEAP32[$27>>2]|0; - _releasePage($28); - $29 = HEAP32[$i>>2]|0; - $30 = HEAP32[$p>>2]|0; - $31 = (($30) + 128|0); - $32 = (($31) + ($29<<2)|0); - HEAP32[$32>>2] = 0; - $33 = HEAP32[$i>>2]|0; - $34 = (($33) + 1)|0; - HEAP32[$i>>2] = $34; - } - $35 = HEAP32[$p>>2]|0; - $36 = (($35) + 8|0); - $37 = HEAP32[$36>>2]|0; - HEAP32[$p>>2] = $37; - } - STACKTOP = sp;return; -} -function _sqlite3BtreeSavepoint($p,$op,$iSavepoint) { - $p = $p|0; - $op = $op|0; - $iSavepoint = $iSavepoint|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $rc = sp + 4|0; - $pBt = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $op; - HEAP32[$2>>2] = $iSavepoint; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$0>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - $42 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($42|0); - } - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 8|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = ($8|0)==(2); - if (!($9)) { - $42 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($42|0); - } - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 4|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$pBt>>2] = $12; - $13 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($13); - $14 = HEAP32[$pBt>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = (_sqlite3PagerSavepoint($15,$16,$17)|0); - HEAP32[$rc>>2] = $18; - $19 = HEAP32[$rc>>2]|0; - $20 = ($19|0)==(0); - if (!($20)) { - $42 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($42|0); - } - $21 = HEAP32[$2>>2]|0; - $22 = ($21|0)<(0); - if ($22) { - $23 = HEAP32[$pBt>>2]|0; - $24 = (($23) + 22|0); - $25 = HEAP16[$24>>1]|0; - $26 = $25&65535; - $27 = $26 & 8; - $28 = ($27|0)!=(0); - if ($28) { - $29 = HEAP32[$pBt>>2]|0; - $30 = (($29) + 44|0); - HEAP32[$30>>2] = 0; - } - } - $31 = HEAP32[$pBt>>2]|0; - $32 = (_newDatabase($31)|0); - HEAP32[$rc>>2] = $32; - $33 = HEAP32[$pBt>>2]|0; - $34 = (($33) + 12|0); - $35 = HEAP32[$34>>2]|0; - $36 = (($35) + 56|0); - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + 28|0); - $39 = (_sqlite3Get4byte($38)|0); - $40 = HEAP32[$pBt>>2]|0; - $41 = (($40) + 44|0); - HEAP32[$41>>2] = $39; - $42 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($42|0); -} -function _sqlite3BtreeBeginStmt($p,$iStatement) { - $p = $p|0; - $iStatement = $iStatement|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $rc = sp + 4|0; - $pBt = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $iStatement; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pBt>>2] = $4; - $5 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($5); - $6 = HEAP32[$pBt>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = (_sqlite3PagerOpenSavepoint($7,$8)|0); - HEAP32[$rc>>2] = $9; - $10 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($10|0); -} -function _allocateCursor($p,$iCur,$nField,$iDb,$isBtreeCursor) { - $p = $p|0; - $iCur = $iCur|0; - $nField = $nField|0; - $iDb = $iDb|0; - $isBtreeCursor = $isBtreeCursor|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $8 = 0, $9 = 0, $nByte = 0, $pCx = 0, $pMem = 0, dest = 0, label = 0; - var sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $pMem = sp + 8|0; - $nByte = sp + 4|0; - $pCx = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $iCur; - HEAP32[$2>>2] = $nField; - HEAP32[$3>>2] = $iDb; - HEAP32[$4>>2] = $isBtreeCursor; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 28|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = (($7) - ($8))|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 8|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + (($9*40)|0)|0); - HEAP32[$pMem>>2] = $13; - HEAP32[$pCx>>2] = 0; - $14 = HEAP32[$2>>2]|0; - $15 = $14<<3; - $16 = (96 + ($15))|0; - $17 = HEAP32[$4>>2]|0; - $18 = ($17|0)!=(0); - if ($18) { - $19 = (_sqlite3BtreeCursorSize()|0); - $21 = $19; - } else { - $21 = 0; - } - $20 = (($16) + ($21))|0; - HEAP32[$nByte>>2] = $20; - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 56|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + ($22<<2)|0); - $27 = HEAP32[$26>>2]|0; - $28 = ($27|0)!=(0|0); - if ($28) { - $29 = HEAP32[$0>>2]|0; - $30 = HEAP32[$1>>2]|0; - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 56|0); - $33 = HEAP32[$32>>2]|0; - $34 = (($33) + ($30<<2)|0); - $35 = HEAP32[$34>>2]|0; - _sqlite3VdbeFreeCursor($29,$35); - $36 = HEAP32[$1>>2]|0; - $37 = HEAP32[$0>>2]|0; - $38 = (($37) + 56|0); - $39 = HEAP32[$38>>2]|0; - $40 = (($39) + ($36<<2)|0); - HEAP32[$40>>2] = 0; - } - $41 = HEAP32[$pMem>>2]|0; - $42 = HEAP32[$nByte>>2]|0; - $43 = (_sqlite3VdbeMemGrow($41,$42,0)|0); - $44 = (0)==($43|0); - if (!($44)) { - $74 = HEAP32[$pCx>>2]|0; - STACKTOP = sp;return ($74|0); - } - $45 = HEAP32[$pMem>>2]|0; - $46 = (($45) + 4|0); - $47 = HEAP32[$46>>2]|0; - HEAP32[$pCx>>2] = $47; - $48 = HEAP32[$1>>2]|0; - $49 = HEAP32[$0>>2]|0; - $50 = (($49) + 56|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + ($48<<2)|0); - HEAP32[$52>>2] = $47; - $53 = HEAP32[$pCx>>2]|0; - dest=$53+0|0; stop=dest+96|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $54 = HEAP32[$3>>2]|0; - $55 = $54&255; - $56 = HEAP32[$pCx>>2]|0; - $57 = (($56) + 24|0); - HEAP8[$57>>0] = $55; - $58 = HEAP32[$2>>2]|0; - $59 = $58&65535; - $60 = HEAP32[$pCx>>2]|0; - $61 = (($60) + 20|0); - HEAP16[$61>>1] = $59; - $62 = HEAP32[$4>>2]|0; - $63 = ($62|0)!=(0); - if (!($63)) { - $74 = HEAP32[$pCx>>2]|0; - STACKTOP = sp;return ($74|0); - } - $64 = HEAP32[$2>>2]|0; - $65 = $64<<3; - $66 = (96 + ($65))|0; - $67 = HEAP32[$pMem>>2]|0; - $68 = (($67) + 4|0); - $69 = HEAP32[$68>>2]|0; - $70 = (($69) + ($66)|0); - $71 = HEAP32[$pCx>>2]|0; - HEAP32[$71>>2] = $70; - $72 = HEAP32[$pCx>>2]|0; - $73 = HEAP32[$72>>2]|0; - _sqlite3BtreeCursorZero($73); - $74 = HEAP32[$pCx>>2]|0; - STACKTOP = sp;return ($74|0); -} -function _sqlite3BtreeCursor($p,$iTable,$wrFlag,$pKeyInfo,$pCur) { - $p = $p|0; - $iTable = $iTable|0; - $wrFlag = $wrFlag|0; - $pKeyInfo = $pKeyInfo|0; - $pCur = $pCur|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $iTable; - HEAP32[$2>>2] = $wrFlag; - HEAP32[$3>>2] = $pKeyInfo; - HEAP32[$4>>2] = $pCur; - $5 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($5); - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$3>>2]|0; - $10 = HEAP32[$4>>2]|0; - $11 = (_btreeCursor($6,$7,$8,$9,$10)|0); - HEAP32[$rc>>2] = $11; - $12 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($12|0); -} -function _sqlite3BtreeCursorHints($pCsr,$mask) { - $pCsr = $pCsr|0; - $mask = $mask|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pCsr; - HEAP32[$1>>2] = $mask; - $2 = HEAP32[$1>>2]|0; - $3 = $2&255; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 82|0); - HEAP8[$5>>0] = $3; - STACKTOP = sp;return; -} -function _sqlite3BtreeCreateTable($p,$piTable,$flags) { - $p = $p|0; - $piTable = $piTable|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $piTable; - HEAP32[$2>>2] = $flags; - $3 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($3); - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = (_btreeCreateTable($4,$5,$6)|0); - HEAP32[$rc>>2] = $7; - $8 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($8|0); -} -function _sqlite3VdbeSorterInit($db,$pCsr) { - $db = $db|0; - $pCsr = $pCsr|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $d = 0, $mxCache = 0, $pSorter = 0, $pgsz = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $pgsz = sp + 12|0; - $mxCache = sp + 8|0; - $pSorter = sp + 4|0; - $d = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pCsr; - $3 = HEAP32[$1>>2]|0; - $4 = (_sqlite3DbMallocZero($3,56)|0); - HEAP32[$pSorter>>2] = $4; - $5 = HEAP32[$2>>2]|0; - $6 = (($5) + 64|0); - HEAP32[$6>>2] = $4; - $7 = HEAP32[$pSorter>>2]|0; - $8 = ($7|0)==(0|0); - if ($8) { - HEAP32[$0>>2] = 7; - $46 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($46|0); - } - $9 = HEAP32[$2>>2]|0; - $10 = (($9) + 8|0); - $11 = HEAP32[$10>>2]|0; - $12 = (_sqlite3VdbeAllocUnpackedRecord($11,0,0,$d)|0); - $13 = HEAP32[$pSorter>>2]|0; - $14 = (($13) + 52|0); - HEAP32[$14>>2] = $12; - $15 = HEAP32[$pSorter>>2]|0; - $16 = (($15) + 52|0); - $17 = HEAP32[$16>>2]|0; - $18 = ($17|0)==(0|0); - if ($18) { - HEAP32[$0>>2] = 7; - $46 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($46|0); - } - $19 = HEAP32[$1>>2]|0; - $20 = (_sqlite3TempInMemory($19)|0); - $21 = ($20|0)!=(0); - if (!($21)) { - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 16|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + 4|0); - $26 = HEAP32[$25>>2]|0; - $27 = (_sqlite3BtreeGetPageSize($26)|0); - HEAP32[$pgsz>>2] = $27; - $28 = HEAP32[$pgsz>>2]|0; - $29 = ($28*10)|0; - $30 = HEAP32[$pSorter>>2]|0; - $31 = (($30) + 28|0); - HEAP32[$31>>2] = $29; - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 16|0); - $34 = HEAP32[$33>>2]|0; - $35 = (($34) + 12|0); - $36 = HEAP32[$35>>2]|0; - $37 = (($36) + 80|0); - $38 = HEAP32[$37>>2]|0; - HEAP32[$mxCache>>2] = $38; - $39 = HEAP32[$mxCache>>2]|0; - $40 = ($39|0)<(10); - $$ = $40 ? 10 : $38; - HEAP32[$mxCache>>2] = $$; - $41 = HEAP32[$mxCache>>2]|0; - $42 = HEAP32[$pgsz>>2]|0; - $43 = Math_imul($41, $42)|0; - $44 = HEAP32[$pSorter>>2]|0; - $45 = (($44) + 32|0); - HEAP32[$45>>2] = $43; - } - HEAP32[$0>>2] = 0; - $46 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($46|0); -} -function _sqlite3VdbeFreeCursor($p,$pCx) { - $p = $p|0; - $pCx = $pCx|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $pModule = 0, $pVtabCursor = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $pVtabCursor = sp + 4|0; - $pModule = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $pCx; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)==(0|0); - if ($3) { - STACKTOP = sp;return; - } - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$1>>2]|0; - _sqlite3VdbeSorterClose($5,$6); - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)!=(0|0); - $11 = HEAP32[$1>>2]|0; - if ($10) { - $12 = (($11) + 4|0); - $13 = HEAP32[$12>>2]|0; - (_sqlite3BtreeClose($13)|0); - } else { - $14 = HEAP32[$11>>2]|0; - $15 = ($14|0)!=(0|0); - if ($15) { - $16 = HEAP32[$1>>2]|0; - $17 = HEAP32[$16>>2]|0; - (_sqlite3BtreeCloseCursor($17)|0); - } - } - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 32|0); - $20 = HEAP32[$19>>2]|0; - $21 = ($20|0)!=(0|0); - if (!($21)) { - STACKTOP = sp;return; - } - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 32|0); - $24 = HEAP32[$23>>2]|0; - HEAP32[$pVtabCursor>>2] = $24; - $25 = HEAP32[$pVtabCursor>>2]|0; - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$26>>2]|0; - HEAP32[$pModule>>2] = $27; - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 88|0); - $30 = HEAP16[$29>>1]|0; - $31 = $30 & -13; - $32 = $31 | 4; - HEAP16[$29>>1] = $32; - $33 = HEAP32[$pModule>>2]|0; - $34 = (($33) + 28|0); - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$pVtabCursor>>2]|0; - (FUNCTION_TABLE_ii[$35 & 31]($36)|0); - $37 = HEAP32[$0>>2]|0; - $38 = (($37) + 88|0); - $39 = HEAP16[$38>>1]|0; - $40 = $39 & -13; - HEAP16[$38>>1] = $40; - STACKTOP = sp;return; -} -function _sqlite3BtreeEof($pCur) { - $pCur = $pCur|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pCur; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 81|0); - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - $5 = (1)!=($4|0); - $6 = $5&1; - STACKTOP = sp;return ($6|0); -} -function _sqlite3BtreeLast($pCur,$pRes) { - $pCur = $pCur|0; - $pRes = $pRes|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pCur; - HEAP32[$2>>2] = $pRes; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 81|0); - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = (1)==($6|0); - if ($7) { - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 80|0); - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - $12 = $11 & 8; - $13 = ($12|0)!=(0); - if ($13) { - HEAP32[$0>>2] = 0; - $37 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($37|0); - } - } - $14 = HEAP32[$1>>2]|0; - $15 = (_moveToRoot($14)|0); - HEAP32[$rc>>2] = $15; - $16 = HEAP32[$rc>>2]|0; - $17 = ($16|0)==(0); - do { - if ($17) { - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 81|0); - $20 = HEAP8[$19>>0]|0; - $21 = $20&255; - $22 = (0)==($21|0); - $23 = HEAP32[$2>>2]|0; - if ($22) { - HEAP32[$23>>2] = 1; - break; - } - HEAP32[$23>>2] = 0; - $24 = HEAP32[$1>>2]|0; - $25 = (_moveToRightmost($24)|0); - HEAP32[$rc>>2] = $25; - $26 = HEAP32[$rc>>2]|0; - $27 = ($26|0)==(0); - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 80|0); - $30 = HEAP8[$29>>0]|0; - $31 = $30&255; - if ($27) { - $32 = $31 | 8; - $33 = $32&255; - HEAP8[$29>>0] = $33; - break; - } else { - $34 = $31 & -9; - $35 = $34&255; - HEAP8[$29>>0] = $35; - break; - } - } - } while(0); - $36 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $36; - $37 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($37|0); -} -function _sqlite3BtreeInsert($pCur,$pKey,$0,$1,$pData,$nData,$nZero,$appendBias,$seekResult) { - $pCur = $pCur|0; - $pKey = $pKey|0; - $0 = $0|0; - $1 = $1|0; - $pData = $pData|0; - $nData = $nData|0; - $nZero = $nZero|0; - $appendBias = $appendBias|0; - $seekResult = $seekResult|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; - var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; - var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; - var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; - var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; - var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0; - var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0; - var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; - var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; - var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; - var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; - var $98 = 0, $99 = 0, $idx = 0, $loc = 0, $newCell = 0, $oldCell = 0, $p = 0, $pBt = 0, $pPage = 0, $rc = 0, $szNew = 0, $szOld = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $2 = sp + 72|0; - $3 = sp + 68|0; - $4 = sp + 64|0; - $5 = sp; - $6 = sp + 60|0; - $7 = sp + 56|0; - $8 = sp + 52|0; - $9 = sp + 48|0; - $10 = sp + 44|0; - $rc = sp + 40|0; - $loc = sp + 36|0; - $szNew = sp + 32|0; - $idx = sp + 28|0; - $pPage = sp + 24|0; - $p = sp + 20|0; - $pBt = sp + 16|0; - $oldCell = sp + 12|0; - $newCell = sp + 8|0; - $szOld = sp + 76|0; - HEAP32[$3>>2] = $pCur; - HEAP32[$4>>2] = $pKey; - $11 = $5; - $12 = $11; - HEAP32[$12>>2] = $0; - $13 = (($11) + 4)|0; - $14 = $13; - HEAP32[$14>>2] = $1; - HEAP32[$6>>2] = $pData; - HEAP32[$7>>2] = $nData; - HEAP32[$8>>2] = $nZero; - HEAP32[$9>>2] = $appendBias; - HEAP32[$10>>2] = $seekResult; - $15 = HEAP32[$10>>2]|0; - HEAP32[$loc>>2] = $15; - HEAP32[$szNew>>2] = 0; - $16 = HEAP32[$3>>2]|0; - $17 = HEAP32[$16>>2]|0; - HEAP32[$p>>2] = $17; - $18 = HEAP32[$p>>2]|0; - $19 = (($18) + 4|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$pBt>>2] = $20; - HEAP32[$newCell>>2] = 0; - $21 = HEAP32[$3>>2]|0; - $22 = (($21) + 81|0); - $23 = HEAP8[$22>>0]|0; - $24 = $23&255; - $25 = ($24|0)==(4); - if ($25) { - $26 = HEAP32[$3>>2]|0; - $27 = (($26) + 76|0); - $28 = HEAP32[$27>>2]|0; - HEAP32[$2>>2] = $28; - $243 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($243|0); - } - $29 = HEAP32[$pBt>>2]|0; - $30 = HEAP32[$3>>2]|0; - $31 = (($30) + 68|0); - $32 = HEAP32[$31>>2]|0; - $33 = HEAP32[$3>>2]|0; - $34 = (_saveAllCursors($29,$32,$33)|0); - HEAP32[$rc>>2] = $34; - $35 = HEAP32[$rc>>2]|0; - $36 = ($35|0)!=(0); - if ($36) { - $37 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $37; - $243 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($243|0); - } - $38 = HEAP32[$3>>2]|0; - $39 = (($38) + 16|0); - $40 = HEAP32[$39>>2]|0; - $41 = ($40|0)==(0|0); - if ($41) { - $42 = HEAP32[$p>>2]|0; - $43 = $5; - $44 = $43; - $45 = HEAP32[$44>>2]|0; - $46 = (($43) + 4)|0; - $47 = $46; - $48 = HEAP32[$47>>2]|0; - _invalidateIncrblobCursors($42,$45,$48,0); - $49 = HEAP32[$3>>2]|0; - $50 = (($49) + 80|0); - $51 = HEAP8[$50>>0]|0; - $52 = $51&255; - $53 = $52 & 2; - $54 = ($53|0)!=(0); - if ($54) { - $55 = $5; - $56 = $55; - $57 = HEAP32[$56>>2]|0; - $58 = (($55) + 4)|0; - $59 = $58; - $60 = HEAP32[$59>>2]|0; - $61 = ($60|0)>(0); - $62 = ($60|0)==(0); - $63 = ($57>>>0)>(0); - $64 = $62 & $63; - $65 = $61 | $64; - if ($65) { - $66 = HEAP32[$3>>2]|0; - $67 = (($66) + 24|0); - $68 = $67; - $69 = $68; - $70 = HEAP32[$69>>2]|0; - $71 = (($68) + 4)|0; - $72 = $71; - $73 = HEAP32[$72>>2]|0; - $74 = $5; - $75 = $74; - $76 = HEAP32[$75>>2]|0; - $77 = (($74) + 4)|0; - $78 = $77; - $79 = HEAP32[$78>>2]|0; - $80 = (_i64Subtract(($76|0),($79|0),1,0)|0); - $81 = tempRet0; - $82 = ($70|0)==($80|0); - $83 = ($73|0)==($81|0); - $84 = $82 & $83; - if ($84) { - HEAP32[$loc>>2] = -1; - } - } - } - } - $85 = HEAP32[$loc>>2]|0; - $86 = ($85|0)!=(0); - if (!($86)) { - $87 = HEAP32[$3>>2]|0; - $88 = HEAP32[$4>>2]|0; - $89 = $5; - $90 = $89; - $91 = HEAP32[$90>>2]|0; - $92 = (($89) + 4)|0; - $93 = $92; - $94 = HEAP32[$93>>2]|0; - $95 = HEAP32[$9>>2]|0; - $96 = (_btreeMoveto($87,$88,$91,$94,$95,$loc)|0); - HEAP32[$rc>>2] = $96; - $97 = HEAP32[$rc>>2]|0; - $98 = ($97|0)!=(0); - if ($98) { - $99 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $99; - $243 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($243|0); - } - } - $100 = HEAP32[$3>>2]|0; - $101 = (($100) + 84|0); - $102 = HEAP16[$101>>1]|0; - $103 = $102 << 16 >> 16; - $104 = HEAP32[$3>>2]|0; - $105 = (($104) + 128|0); - $106 = (($105) + ($103<<2)|0); - $107 = HEAP32[$106>>2]|0; - HEAP32[$pPage>>2] = $107; - $108 = HEAP32[$pBt>>2]|0; - _allocateTempSpace($108); - $109 = HEAP32[$pBt>>2]|0; - $110 = (($109) + 80|0); - $111 = HEAP32[$110>>2]|0; - HEAP32[$newCell>>2] = $111; - $112 = HEAP32[$newCell>>2]|0; - $113 = ($112|0)==(0|0); - if ($113) { - HEAP32[$2>>2] = 7; - $243 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($243|0); - } - $114 = HEAP32[$pPage>>2]|0; - $115 = HEAP32[$newCell>>2]|0; - $116 = HEAP32[$4>>2]|0; - $117 = $5; - $118 = $117; - $119 = HEAP32[$118>>2]|0; - $120 = (($117) + 4)|0; - $121 = $120; - $122 = HEAP32[$121>>2]|0; - $123 = HEAP32[$6>>2]|0; - $124 = HEAP32[$7>>2]|0; - $125 = HEAP32[$8>>2]|0; - $126 = (_fillInCell($114,$115,$116,$119,$122,$123,$124,$125,$szNew)|0); - HEAP32[$rc>>2] = $126; - $127 = HEAP32[$rc>>2]|0; - $128 = ($127|0)!=(0); - do { - if (!($128)) { - $129 = HEAP32[$3>>2]|0; - $130 = (($129) + 84|0); - $131 = HEAP16[$130>>1]|0; - $132 = $131 << 16 >> 16; - $133 = HEAP32[$3>>2]|0; - $134 = (($133) + 86|0); - $135 = (($134) + ($132<<1)|0); - $136 = HEAP16[$135>>1]|0; - $137 = $136&65535; - HEAP32[$idx>>2] = $137; - $138 = HEAP32[$loc>>2]|0; - $139 = ($138|0)==(0); - if ($139) { - $140 = HEAP32[$pPage>>2]|0; - $141 = (($140) + 68|0); - $142 = HEAP32[$141>>2]|0; - $143 = (_sqlite3PagerWrite($142)|0); - HEAP32[$rc>>2] = $143; - $144 = HEAP32[$rc>>2]|0; - $145 = ($144|0)!=(0); - if ($145) { - break; - } - $146 = HEAP32[$pPage>>2]|0; - $147 = (($146) + 56|0); - $148 = HEAP32[$147>>2]|0; - $149 = HEAP32[$pPage>>2]|0; - $150 = (($149) + 18|0); - $151 = HEAP16[$150>>1]|0; - $152 = $151&65535; - $153 = HEAP32[$idx>>2]|0; - $154 = $153<<1; - $155 = HEAP32[$pPage>>2]|0; - $156 = (($155) + 64|0); - $157 = HEAP32[$156>>2]|0; - $158 = (($157) + ($154)|0); - $159 = HEAP8[$158>>0]|0; - $160 = $159&255; - $161 = $160 << 8; - $162 = HEAP32[$idx>>2]|0; - $163 = $162<<1; - $164 = HEAP32[$pPage>>2]|0; - $165 = (($164) + 64|0); - $166 = HEAP32[$165>>2]|0; - $167 = (($166) + ($163)|0); - $168 = (($167) + 1|0); - $169 = HEAP8[$168>>0]|0; - $170 = $169&255; - $171 = $161 | $170; - $172 = $152 & $171; - $173 = (($148) + ($172)|0); - HEAP32[$oldCell>>2] = $173; - $174 = HEAP32[$pPage>>2]|0; - $175 = (($174) + 3|0); - $176 = HEAP8[$175>>0]|0; - $177 = ($176<<24>>24)!=(0); - if (!($177)) { - $178 = HEAP32[$newCell>>2]|0; - $179 = HEAP32[$oldCell>>2]|0; - ;HEAP8[$178+0>>0]=HEAP8[$179+0>>0]|0;HEAP8[$178+1>>0]=HEAP8[$179+1>>0]|0;HEAP8[$178+2>>0]=HEAP8[$179+2>>0]|0;HEAP8[$178+3>>0]=HEAP8[$179+3>>0]|0; - } - $180 = HEAP32[$pPage>>2]|0; - $181 = HEAP32[$oldCell>>2]|0; - $182 = (_cellSizePtr($180,$181)|0); - HEAP16[$szOld>>1] = $182; - $183 = HEAP32[$pPage>>2]|0; - $184 = HEAP32[$oldCell>>2]|0; - $185 = (_clearCell($183,$184)|0); - HEAP32[$rc>>2] = $185; - $186 = HEAP32[$pPage>>2]|0; - $187 = HEAP32[$idx>>2]|0; - $188 = HEAP16[$szOld>>1]|0; - $189 = $188&65535; - _dropCell($186,$187,$189,$rc); - $190 = HEAP32[$rc>>2]|0; - $191 = ($190|0)!=(0); - if ($191) { - break; - } - } else { - $192 = HEAP32[$loc>>2]|0; - $193 = ($192|0)<(0); - if ($193) { - $194 = HEAP32[$pPage>>2]|0; - $195 = (($194) + 16|0); - $196 = HEAP16[$195>>1]|0; - $197 = $196&65535; - $198 = ($197|0)>(0); - if ($198) { - $199 = HEAP32[$3>>2]|0; - $200 = (($199) + 84|0); - $201 = HEAP16[$200>>1]|0; - $202 = $201 << 16 >> 16; - $203 = HEAP32[$3>>2]|0; - $204 = (($203) + 86|0); - $205 = (($204) + ($202<<1)|0); - $206 = HEAP16[$205>>1]|0; - $207 = (($206) + 1)<<16>>16; - HEAP16[$205>>1] = $207; - $208 = $207&65535; - HEAP32[$idx>>2] = $208; - } - } - } - $209 = HEAP32[$pPage>>2]|0; - $210 = HEAP32[$idx>>2]|0; - $211 = HEAP32[$newCell>>2]|0; - $212 = HEAP32[$szNew>>2]|0; - _insertCell($209,$210,$211,$212,0,0,$rc); - $213 = HEAP32[$3>>2]|0; - $214 = (($213) + 24|0); - $215 = (($214) + 26|0); - HEAP16[$215>>1] = 0; - $216 = HEAP32[$rc>>2]|0; - $217 = ($216|0)==(0); - if ($217) { - $218 = HEAP32[$pPage>>2]|0; - $219 = (($218) + 1|0); - $220 = HEAP8[$219>>0]|0; - $221 = $220&255; - $222 = ($221|0)!=(0); - if ($222) { - $223 = HEAP32[$3>>2]|0; - $224 = (($223) + 80|0); - $225 = HEAP8[$224>>0]|0; - $226 = $225&255; - $227 = $226 & -3; - $228 = $227&255; - HEAP8[$224>>0] = $228; - $229 = HEAP32[$3>>2]|0; - $230 = (_balance($229)|0); - HEAP32[$rc>>2] = $230; - $231 = HEAP32[$3>>2]|0; - $232 = (($231) + 84|0); - $233 = HEAP16[$232>>1]|0; - $234 = $233 << 16 >> 16; - $235 = HEAP32[$3>>2]|0; - $236 = (($235) + 128|0); - $237 = (($236) + ($234<<2)|0); - $238 = HEAP32[$237>>2]|0; - $239 = (($238) + 1|0); - HEAP8[$239>>0] = 0; - $240 = HEAP32[$3>>2]|0; - $241 = (($240) + 81|0); - HEAP8[$241>>0] = 0; - } - } - } - } while(0); - $242 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $242; - $243 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($243|0); -} -function _sqlite3BtreeDelete($pCur) { - $pCur = $pCur|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; - var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; - var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; - var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; - var $97 = 0, $98 = 0, $99 = 0, $iCellDepth = 0, $iCellIdx = 0, $n = 0, $nCell = 0, $notUsed = 0, $p = 0, $pBt = 0, $pCell = 0, $pLeaf = 0, $pPage = 0, $pTmp = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 52|0; - $1 = sp + 48|0; - $p = sp + 44|0; - $pBt = sp + 40|0; - $rc = sp + 36|0; - $pPage = sp + 32|0; - $pCell = sp + 28|0; - $iCellIdx = sp + 24|0; - $iCellDepth = sp + 20|0; - $notUsed = sp + 16|0; - $pLeaf = sp + 12|0; - $nCell = sp + 8|0; - $n = sp + 4|0; - $pTmp = sp; - HEAP32[$1>>2] = $pCur; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$p>>2] = $3; - $4 = HEAP32[$p>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$pBt>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 84|0); - $9 = HEAP16[$8>>1]|0; - $10 = $9 << 16 >> 16; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 86|0); - $13 = (($12) + ($10<<1)|0); - $14 = HEAP16[$13>>1]|0; - $15 = $14&65535; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 84|0); - $18 = HEAP16[$17>>1]|0; - $19 = $18 << 16 >> 16; - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 128|0); - $22 = (($21) + ($19<<2)|0); - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + 16|0); - $25 = HEAP16[$24>>1]|0; - $26 = $25&65535; - $27 = ($15|0)>=($26|0); - if (!($27)) { - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 81|0); - $30 = HEAP8[$29>>0]|0; - $31 = $30&255; - $32 = ($31|0)!=(1); - if (!($32)) { - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 84|0); - $35 = HEAP16[$34>>1]|0; - $36 = $35 << 16 >> 16; - HEAP32[$iCellDepth>>2] = $36; - $37 = HEAP32[$iCellDepth>>2]|0; - $38 = HEAP32[$1>>2]|0; - $39 = (($38) + 86|0); - $40 = (($39) + ($37<<1)|0); - $41 = HEAP16[$40>>1]|0; - $42 = $41&65535; - HEAP32[$iCellIdx>>2] = $42; - $43 = HEAP32[$iCellDepth>>2]|0; - $44 = HEAP32[$1>>2]|0; - $45 = (($44) + 128|0); - $46 = (($45) + ($43<<2)|0); - $47 = HEAP32[$46>>2]|0; - HEAP32[$pPage>>2] = $47; - $48 = HEAP32[$pPage>>2]|0; - $49 = (($48) + 56|0); - $50 = HEAP32[$49>>2]|0; - $51 = HEAP32[$pPage>>2]|0; - $52 = (($51) + 18|0); - $53 = HEAP16[$52>>1]|0; - $54 = $53&65535; - $55 = HEAP32[$iCellIdx>>2]|0; - $56 = $55<<1; - $57 = HEAP32[$pPage>>2]|0; - $58 = (($57) + 64|0); - $59 = HEAP32[$58>>2]|0; - $60 = (($59) + ($56)|0); - $61 = HEAP8[$60>>0]|0; - $62 = $61&255; - $63 = $62 << 8; - $64 = HEAP32[$iCellIdx>>2]|0; - $65 = $64<<1; - $66 = HEAP32[$pPage>>2]|0; - $67 = (($66) + 64|0); - $68 = HEAP32[$67>>2]|0; - $69 = (($68) + ($65)|0); - $70 = (($69) + 1|0); - $71 = HEAP8[$70>>0]|0; - $72 = $71&255; - $73 = $63 | $72; - $74 = $54 & $73; - $75 = (($50) + ($74)|0); - HEAP32[$pCell>>2] = $75; - $76 = HEAP32[$pPage>>2]|0; - $77 = (($76) + 3|0); - $78 = HEAP8[$77>>0]|0; - $79 = ($78<<24>>24)!=(0); - if (!($79)) { - HEAP32[$notUsed>>2] = 0; - $80 = HEAP32[$1>>2]|0; - $81 = (_sqlite3BtreePrevious($80,$notUsed)|0); - HEAP32[$rc>>2] = $81; - $82 = HEAP32[$rc>>2]|0; - $83 = ($82|0)!=(0); - if ($83) { - $84 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $84; - $242 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($242|0); - } - } - $85 = HEAP32[$pBt>>2]|0; - $86 = HEAP32[$1>>2]|0; - $87 = (($86) + 68|0); - $88 = HEAP32[$87>>2]|0; - $89 = HEAP32[$1>>2]|0; - $90 = (_saveAllCursors($85,$88,$89)|0); - HEAP32[$rc>>2] = $90; - $91 = HEAP32[$rc>>2]|0; - $92 = ($91|0)!=(0); - if ($92) { - $93 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $93; - $242 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($242|0); - } - $94 = HEAP32[$1>>2]|0; - $95 = (($94) + 16|0); - $96 = HEAP32[$95>>2]|0; - $97 = ($96|0)==(0|0); - if ($97) { - $98 = HEAP32[$p>>2]|0; - $99 = HEAP32[$1>>2]|0; - $100 = (($99) + 24|0); - $101 = $100; - $102 = $101; - $103 = HEAP32[$102>>2]|0; - $104 = (($101) + 4)|0; - $105 = $104; - $106 = HEAP32[$105>>2]|0; - _invalidateIncrblobCursors($98,$103,$106,0); - } - $107 = HEAP32[$pPage>>2]|0; - $108 = (($107) + 68|0); - $109 = HEAP32[$108>>2]|0; - $110 = (_sqlite3PagerWrite($109)|0); - HEAP32[$rc>>2] = $110; - $111 = HEAP32[$rc>>2]|0; - $112 = ($111|0)!=(0); - if ($112) { - $113 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $113; - $242 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($242|0); - } - $114 = HEAP32[$pPage>>2]|0; - $115 = HEAP32[$pCell>>2]|0; - $116 = (_clearCell($114,$115)|0); - HEAP32[$rc>>2] = $116; - $117 = HEAP32[$pPage>>2]|0; - $118 = HEAP32[$iCellIdx>>2]|0; - $119 = HEAP32[$pPage>>2]|0; - $120 = HEAP32[$pCell>>2]|0; - $121 = (_cellSizePtr($119,$120)|0); - $122 = $121&65535; - _dropCell($117,$118,$122,$rc); - $123 = HEAP32[$rc>>2]|0; - $124 = ($123|0)!=(0); - if ($124) { - $125 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $125; - $242 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($242|0); - } - $126 = HEAP32[$pPage>>2]|0; - $127 = (($126) + 3|0); - $128 = HEAP8[$127>>0]|0; - $129 = ($128<<24>>24)!=(0); - if (!($129)) { - $130 = HEAP32[$1>>2]|0; - $131 = (($130) + 84|0); - $132 = HEAP16[$131>>1]|0; - $133 = $132 << 16 >> 16; - $134 = HEAP32[$1>>2]|0; - $135 = (($134) + 128|0); - $136 = (($135) + ($133<<2)|0); - $137 = HEAP32[$136>>2]|0; - HEAP32[$pLeaf>>2] = $137; - $138 = HEAP32[$iCellDepth>>2]|0; - $139 = (($138) + 1)|0; - $140 = HEAP32[$1>>2]|0; - $141 = (($140) + 128|0); - $142 = (($141) + ($139<<2)|0); - $143 = HEAP32[$142>>2]|0; - $144 = (($143) + 72|0); - $145 = HEAP32[$144>>2]|0; - HEAP32[$n>>2] = $145; - $146 = HEAP32[$pLeaf>>2]|0; - $147 = (($146) + 56|0); - $148 = HEAP32[$147>>2]|0; - $149 = HEAP32[$pLeaf>>2]|0; - $150 = (($149) + 18|0); - $151 = HEAP16[$150>>1]|0; - $152 = $151&65535; - $153 = HEAP32[$pLeaf>>2]|0; - $154 = (($153) + 16|0); - $155 = HEAP16[$154>>1]|0; - $156 = $155&65535; - $157 = (($156) - 1)|0; - $158 = $157<<1; - $159 = HEAP32[$pLeaf>>2]|0; - $160 = (($159) + 64|0); - $161 = HEAP32[$160>>2]|0; - $162 = (($161) + ($158)|0); - $163 = HEAP8[$162>>0]|0; - $164 = $163&255; - $165 = $164 << 8; - $166 = HEAP32[$pLeaf>>2]|0; - $167 = (($166) + 16|0); - $168 = HEAP16[$167>>1]|0; - $169 = $168&65535; - $170 = (($169) - 1)|0; - $171 = $170<<1; - $172 = HEAP32[$pLeaf>>2]|0; - $173 = (($172) + 64|0); - $174 = HEAP32[$173>>2]|0; - $175 = (($174) + ($171)|0); - $176 = (($175) + 1|0); - $177 = HEAP8[$176>>0]|0; - $178 = $177&255; - $179 = $165 | $178; - $180 = $152 & $179; - $181 = (($148) + ($180)|0); - HEAP32[$pCell>>2] = $181; - $182 = HEAP32[$pLeaf>>2]|0; - $183 = HEAP32[$pCell>>2]|0; - $184 = (_cellSizePtr($182,$183)|0); - $185 = $184&65535; - HEAP32[$nCell>>2] = $185; - $186 = HEAP32[$pBt>>2]|0; - _allocateTempSpace($186); - $187 = HEAP32[$pBt>>2]|0; - $188 = (($187) + 80|0); - $189 = HEAP32[$188>>2]|0; - HEAP32[$pTmp>>2] = $189; - $190 = HEAP32[$pLeaf>>2]|0; - $191 = (($190) + 68|0); - $192 = HEAP32[$191>>2]|0; - $193 = (_sqlite3PagerWrite($192)|0); - HEAP32[$rc>>2] = $193; - $194 = HEAP32[$pPage>>2]|0; - $195 = HEAP32[$iCellIdx>>2]|0; - $196 = HEAP32[$pCell>>2]|0; - $197 = (($196) + -4|0); - $198 = HEAP32[$nCell>>2]|0; - $199 = (($198) + 4)|0; - $200 = HEAP32[$pTmp>>2]|0; - $201 = HEAP32[$n>>2]|0; - _insertCell($194,$195,$197,$199,$200,$201,$rc); - $202 = HEAP32[$pLeaf>>2]|0; - $203 = HEAP32[$pLeaf>>2]|0; - $204 = (($203) + 16|0); - $205 = HEAP16[$204>>1]|0; - $206 = $205&65535; - $207 = (($206) - 1)|0; - $208 = HEAP32[$nCell>>2]|0; - _dropCell($202,$207,$208,$rc); - $209 = HEAP32[$rc>>2]|0; - $210 = ($209|0)!=(0); - if ($210) { - $211 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $211; - $242 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($242|0); - } - } - $212 = HEAP32[$1>>2]|0; - $213 = (_balance($212)|0); - HEAP32[$rc>>2] = $213; - $214 = HEAP32[$rc>>2]|0; - $215 = ($214|0)==(0); - if ($215) { - $216 = HEAP32[$1>>2]|0; - $217 = (($216) + 84|0); - $218 = HEAP16[$217>>1]|0; - $219 = $218 << 16 >> 16; - $220 = HEAP32[$iCellDepth>>2]|0; - $221 = ($219|0)>($220|0); - if ($221) { - while(1) { - $222 = HEAP32[$1>>2]|0; - $223 = (($222) + 84|0); - $224 = HEAP16[$223>>1]|0; - $225 = $224 << 16 >> 16; - $226 = HEAP32[$iCellDepth>>2]|0; - $227 = ($225|0)>($226|0); - $228 = HEAP32[$1>>2]|0; - if (!($227)) { - break; - } - $229 = (($228) + 84|0); - $230 = HEAP16[$229>>1]|0; - $231 = (($230) + -1)<<16>>16; - HEAP16[$229>>1] = $231; - $232 = $230 << 16 >> 16; - $233 = HEAP32[$1>>2]|0; - $234 = (($233) + 128|0); - $235 = (($234) + ($232<<2)|0); - $236 = HEAP32[$235>>2]|0; - _releasePage($236); - } - $237 = (_balance($228)|0); - HEAP32[$rc>>2] = $237; - } - } - $238 = HEAP32[$rc>>2]|0; - $239 = ($238|0)==(0); - if ($239) { - $240 = HEAP32[$1>>2]|0; - (_moveToRoot($240)|0); - } - $241 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $241; - $242 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($242|0); - } - } - HEAP32[$0>>2] = 1; - $242 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($242|0); -} -function _sqlite3VdbeSorterCompare($pCsr,$pVal,$nIgnore,$pRes) { - $pCsr = $pCsr|0; - $pVal = $pVal|0; - $nIgnore = $nIgnore|0; - $pRes = $pRes|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $nKey = 0, $pKey = 0, $pSorter = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $pSorter = sp + 8|0; - $pKey = sp + 4|0; - $nKey = sp; - HEAP32[$0>>2] = $pCsr; - HEAP32[$1>>2] = $pVal; - HEAP32[$2>>2] = $nIgnore; - HEAP32[$3>>2] = $pRes; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 64|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$pSorter>>2] = $6; - $7 = HEAP32[$pSorter>>2]|0; - $8 = (_vdbeSorterRowkey($7,$nKey)|0); - HEAP32[$pKey>>2] = $8; - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 4|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 24|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$pKey>>2]|0; - $18 = HEAP32[$nKey>>2]|0; - $19 = HEAP32[$3>>2]|0; - _vdbeSorterCompare($9,$10,$13,$16,$17,$18,$19); - STACKTOP = sp;return 0; -} -function _sqlite3VdbeSorterRowkey($pCsr,$pOut) { - $pCsr = $pCsr|0; - $pOut = $pOut|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nKey = 0, $pKey = 0, $pSorter = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $pSorter = sp + 8|0; - $pKey = sp + 4|0; - $nKey = sp; - HEAP32[$1>>2] = $pCsr; - HEAP32[$2>>2] = $pOut; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 64|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pSorter>>2] = $5; - $6 = HEAP32[$pSorter>>2]|0; - $7 = (_vdbeSorterRowkey($6,$nKey)|0); - HEAP32[$pKey>>2] = $7; - $8 = HEAP32[$2>>2]|0; - $9 = HEAP32[$nKey>>2]|0; - $10 = (_sqlite3VdbeMemGrow($8,$9,0)|0); - $11 = ($10|0)!=(0); - if ($11) { - HEAP32[$0>>2] = 7; - $29 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($29|0); - } else { - $12 = HEAP32[$nKey>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = (($13) + 24|0); - HEAP32[$14>>2] = $12; - $15 = HEAP32[$2>>2]|0; - $16 = (($15) + 28|0); - $17 = HEAP16[$16>>1]|0; - $18 = $17&65535; - $19 = $18 & -16896; - $20 = $19 | 16; - $21 = $20&65535; - $22 = HEAP32[$2>>2]|0; - $23 = (($22) + 28|0); - HEAP16[$23>>1] = $21; - $24 = HEAP32[$2>>2]|0; - $25 = (($24) + 4|0); - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$pKey>>2]|0; - $28 = HEAP32[$nKey>>2]|0; - _memcpy(($26|0),($27|0),($28|0))|0; - HEAP32[$0>>2] = 0; - $29 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($29|0); - } - return 0|0; -} -function _sqlite3VtabImportErrmsg($p,$pVtab) { - $p = $p|0; - $pVtab = $pVtab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $db = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $pVtab; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$db>>2]|0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 44|0); - $7 = HEAP32[$6>>2]|0; - _sqlite3DbFree($4,$7); - $8 = HEAP32[$db>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 8|0); - $11 = HEAP32[$10>>2]|0; - $12 = (_sqlite3DbStrDup($8,$11)|0); - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 44|0); - HEAP32[$14>>2] = $12; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 8|0); - $17 = HEAP32[$16>>2]|0; - _sqlite3_free($17); - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 8|0); - HEAP32[$19>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3VdbeSorterRewind($db,$pCsr,$pbEof) { - $db = $db|0; - $pCsr = $pCsr|0; - $pbEof = $pbEof|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; - var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; - var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; - var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; - var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; - var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; - var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; - var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; - var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; - var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $N = 0, $bEof = 0, $iNew = 0, $iWrite2 = 0, $nByte = 0, $nIter = 0, $nWrite = 0, $pIter = 0, $pSorter = 0, $pTemp2 = 0, $pTmp = 0; - var $rc = 0, $rc2 = 0, $writer = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $0 = sp + 112|0; - $1 = sp + 108|0; - $2 = sp + 104|0; - $3 = sp + 100|0; - $pSorter = sp + 96|0; - $rc = sp + 92|0; - $pTemp2 = sp + 88|0; - $iWrite2 = sp + 48|0; - $nIter = sp + 84|0; - $nByte = sp + 80|0; - $N = sp + 76|0; - $iNew = sp + 72|0; - $rc2 = sp + 68|0; - $writer = sp + 8|0; - $nWrite = sp; - $bEof = sp + 64|0; - $pIter = sp + 60|0; - $pTmp = sp + 56|0; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pCsr; - HEAP32[$3>>2] = $pbEof; - $4 = HEAP32[$2>>2]|0; - $5 = (($4) + 64|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$pSorter>>2] = $6; - HEAP32[$pTemp2>>2] = 0; - $7 = $iWrite2; - $8 = $7; - HEAP32[$8>>2] = 0; - $9 = (($7) + 4)|0; - $10 = $9; - HEAP32[$10>>2] = 0; - HEAP32[$N>>2] = 2; - $11 = HEAP32[$pSorter>>2]|0; - $12 = (($11) + 24|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)==(0); - if ($14) { - $15 = HEAP32[$pSorter>>2]|0; - $16 = (($15) + 48|0); - $17 = HEAP32[$16>>2]|0; - $18 = ($17|0)!=(0|0); - $19 = $18 ^ 1; - $20 = $19&1; - $21 = HEAP32[$3>>2]|0; - HEAP32[$21>>2] = $20; - $22 = HEAP32[$2>>2]|0; - $23 = (_vdbeSorterSort($22)|0); - HEAP32[$0>>2] = $23; - $187 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($187|0); - } - $24 = HEAP32[$1>>2]|0; - $25 = HEAP32[$2>>2]|0; - $26 = (_vdbeSorterListToPMA($24,$25)|0); - HEAP32[$rc>>2] = $26; - $27 = HEAP32[$rc>>2]|0; - $28 = ($27|0)!=(0); - if ($28) { - $29 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $29; - $187 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($187|0); - } - $30 = HEAP32[$pSorter>>2]|0; - $31 = (($30) + 24|0); - $32 = HEAP32[$31>>2]|0; - HEAP32[$nIter>>2] = $32; - $33 = HEAP32[$nIter>>2]|0; - $34 = ($33|0)>(16); - $$ = $34 ? 16 : $32; - HEAP32[$nIter>>2] = $$; - while(1) { - $35 = HEAP32[$N>>2]|0; - $36 = HEAP32[$nIter>>2]|0; - $37 = ($35|0)<($36|0); - $38 = HEAP32[$N>>2]|0; - if (!($37)) { - break; - } - $39 = HEAP32[$N>>2]|0; - $40 = (($39) + ($38))|0; - HEAP32[$N>>2] = $40; - } - $41 = ($38*52)|0; - HEAP32[$nByte>>2] = $41; - $42 = HEAP32[$1>>2]|0; - $43 = HEAP32[$nByte>>2]|0; - $44 = (_sqlite3DbMallocZero($42,$43)|0); - $45 = HEAP32[$pSorter>>2]|0; - $46 = (($45) + 36|0); - HEAP32[$46>>2] = $44; - $47 = HEAP32[$pSorter>>2]|0; - $48 = (($47) + 36|0); - $49 = HEAP32[$48>>2]|0; - $50 = ($49|0)!=(0|0); - if (!($50)) { - HEAP32[$0>>2] = 7; - $187 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($187|0); - } - $51 = HEAP32[$N>>2]|0; - $52 = HEAP32[$pSorter>>2]|0; - $53 = (($52) + 36|0); - $54 = HEAP32[$53>>2]|0; - $55 = (($54) + (($51*48)|0)|0); - $56 = HEAP32[$pSorter>>2]|0; - $57 = (($56) + 40|0); - HEAP32[$57>>2] = $55; - $58 = HEAP32[$N>>2]|0; - $59 = HEAP32[$pSorter>>2]|0; - $60 = (($59) + 20|0); - HEAP32[$60>>2] = $58; - while(1) { - HEAP32[$iNew>>2] = 0; - while(1) { - $61 = HEAP32[$rc>>2]|0; - $62 = ($61|0)==(0); - if (!($62)) { - break; - } - $63 = HEAP32[$iNew>>2]|0; - $64 = $63<<4; - $65 = HEAP32[$pSorter>>2]|0; - $66 = (($65) + 24|0); - $67 = HEAP32[$66>>2]|0; - $68 = ($64|0)<($67|0); - if (!($68)) { - break; - } - dest=$writer+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $69 = HEAP32[$1>>2]|0; - $70 = HEAP32[$2>>2]|0; - $71 = (_vdbeSorterInitMerge($69,$70,$nWrite)|0); - HEAP32[$rc>>2] = $71; - $72 = HEAP32[$rc>>2]|0; - $73 = ($72|0)!=(0); - if ($73) { - break; - } - $74 = HEAP32[$pSorter>>2]|0; - $75 = (($74) + 24|0); - $76 = HEAP32[$75>>2]|0; - $77 = ($76|0)<=(16); - if ($77) { - break; - } - $78 = HEAP32[$pTemp2>>2]|0; - $79 = ($78|0)==(0|0); - if ($79) { - $80 = HEAP32[$1>>2]|0; - $81 = (_vdbeSorterOpenTempFile($80,$pTemp2)|0); - HEAP32[$rc>>2] = $81; - } - $82 = HEAP32[$rc>>2]|0; - $83 = ($82|0)==(0); - if ($83) { - HEAP32[$bEof>>2] = 0; - $84 = HEAP32[$1>>2]|0; - $85 = HEAP32[$pTemp2>>2]|0; - $86 = $iWrite2; - $87 = $86; - $88 = HEAP32[$87>>2]|0; - $89 = (($86) + 4)|0; - $90 = $89; - $91 = HEAP32[$90>>2]|0; - _fileWriterInit($84,$85,$writer,$88,$91); - $92 = $nWrite; - $93 = $92; - $94 = HEAP32[$93>>2]|0; - $95 = (($92) + 4)|0; - $96 = $95; - $97 = HEAP32[$96>>2]|0; - _fileWriterWriteVarint($writer,$94,$97); - while(1) { - $98 = HEAP32[$rc>>2]|0; - $99 = ($98|0)==(0); - if (!($99)) { - break; - } - $100 = HEAP32[$bEof>>2]|0; - $101 = ($100|0)==(0); - if (!($101)) { - break; - } - $102 = HEAP32[$pSorter>>2]|0; - $103 = (($102) + 40|0); - $104 = HEAP32[$103>>2]|0; - $105 = (($104) + 4|0); - $106 = HEAP32[$105>>2]|0; - $107 = HEAP32[$pSorter>>2]|0; - $108 = (($107) + 36|0); - $109 = HEAP32[$108>>2]|0; - $110 = (($109) + (($106*48)|0)|0); - HEAP32[$pIter>>2] = $110; - $111 = HEAP32[$pIter>>2]|0; - $112 = (($111) + 20|0); - $113 = HEAP32[$112>>2]|0; - $114 = ($113|0)<(0); - $115 = $114 << 31 >> 31; - _fileWriterWriteVarint($writer,$113,$115); - $116 = HEAP32[$pIter>>2]|0; - $117 = (($116) + 32|0); - $118 = HEAP32[$117>>2]|0; - $119 = HEAP32[$pIter>>2]|0; - $120 = (($119) + 20|0); - $121 = HEAP32[$120>>2]|0; - _fileWriterWrite($writer,$118,$121); - $122 = HEAP32[$1>>2]|0; - $123 = HEAP32[$2>>2]|0; - $124 = (_sqlite3VdbeSorterNext($122,$123,$bEof)|0); - HEAP32[$rc>>2] = $124; - } - $125 = HEAP32[$1>>2]|0; - $126 = (_fileWriterFinish($125,$writer,$iWrite2)|0); - HEAP32[$rc2>>2] = $126; - $127 = HEAP32[$rc>>2]|0; - $128 = ($127|0)==(0); - if ($128) { - $129 = HEAP32[$rc2>>2]|0; - HEAP32[$rc>>2] = $129; - } - } - $130 = HEAP32[$iNew>>2]|0; - $131 = (($130) + 1)|0; - HEAP32[$iNew>>2] = $131; - } - $132 = HEAP32[$pSorter>>2]|0; - $133 = (($132) + 24|0); - $134 = HEAP32[$133>>2]|0; - $135 = ($134|0)<=(16); - if ($135) { - break; - } - $136 = HEAP32[$pSorter>>2]|0; - $137 = (($136) + 44|0); - $138 = HEAP32[$137>>2]|0; - HEAP32[$pTmp>>2] = $138; - $139 = HEAP32[$iNew>>2]|0; - $140 = HEAP32[$pSorter>>2]|0; - $141 = (($140) + 24|0); - HEAP32[$141>>2] = $139; - $142 = HEAP32[$pTemp2>>2]|0; - $143 = HEAP32[$pSorter>>2]|0; - $144 = (($143) + 44|0); - HEAP32[$144>>2] = $142; - $145 = HEAP32[$pTmp>>2]|0; - HEAP32[$pTemp2>>2] = $145; - $146 = $iWrite2; - $147 = $146; - $148 = HEAP32[$147>>2]|0; - $149 = (($146) + 4)|0; - $150 = $149; - $151 = HEAP32[$150>>2]|0; - $152 = HEAP32[$pSorter>>2]|0; - $153 = $152; - $154 = $153; - HEAP32[$154>>2] = $148; - $155 = (($153) + 4)|0; - $156 = $155; - HEAP32[$156>>2] = $151; - $157 = HEAP32[$pSorter>>2]|0; - $158 = (($157) + 8|0); - $159 = $158; - $160 = $159; - HEAP32[$160>>2] = 0; - $161 = (($159) + 4)|0; - $162 = $161; - HEAP32[$162>>2] = 0; - $163 = $iWrite2; - $164 = $163; - HEAP32[$164>>2] = 0; - $165 = (($163) + 4)|0; - $166 = $165; - HEAP32[$166>>2] = 0; - $167 = HEAP32[$rc>>2]|0; - $168 = ($167|0)==(0); - if (!($168)) { - break; - } - } - $169 = HEAP32[$pTemp2>>2]|0; - $170 = ($169|0)!=(0|0); - if ($170) { - $171 = HEAP32[$pTemp2>>2]|0; - (_sqlite3OsCloseFree($171)|0); - } - $172 = HEAP32[$pSorter>>2]|0; - $173 = (($172) + 40|0); - $174 = HEAP32[$173>>2]|0; - $175 = (($174) + 4|0); - $176 = HEAP32[$175>>2]|0; - $177 = HEAP32[$pSorter>>2]|0; - $178 = (($177) + 36|0); - $179 = HEAP32[$178>>2]|0; - $180 = (($179) + (($176*48)|0)|0); - $181 = (($180) + 24|0); - $182 = HEAP32[$181>>2]|0; - $183 = ($182|0)==(0|0); - $184 = $183&1; - $185 = HEAP32[$3>>2]|0; - HEAP32[$185>>2] = $184; - $186 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $186; - $187 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($187|0); -} -function _sqlite3BtreeFirst($pCur,$pRes) { - $pCur = $pCur|0; - $pRes = $pRes|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pCur; - HEAP32[$1>>2] = $pRes; - $2 = HEAP32[$0>>2]|0; - $3 = (_moveToRoot($2)|0); - HEAP32[$rc>>2] = $3; - $4 = HEAP32[$rc>>2]|0; - $5 = ($4|0)==(0); - do { - if ($5) { - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 81|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - $10 = ($9|0)==(0); - $11 = HEAP32[$1>>2]|0; - if ($10) { - HEAP32[$11>>2] = 1; - break; - } else { - HEAP32[$11>>2] = 0; - $12 = HEAP32[$0>>2]|0; - $13 = (_moveToLeftmost($12)|0); - HEAP32[$rc>>2] = $13; - break; - } - } - } while(0); - $14 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($14|0); -} -function _sqlite3VdbeSorterNext($db,$pCsr,$pbEof) { - $db = $db|0; - $pCsr = $pCsr|0; - $pbEof = $pbEof|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; - var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; - var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; - var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; - var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iPrev = 0, $iRes = 0; - var $pFree = 0, $pIter1 = 0, $pIter2 = 0, $pKey2 = 0, $pSorter = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $pSorter = sp + 32|0; - $rc = sp + 28|0; - $iPrev = sp + 24|0; - $i = sp + 20|0; - $pIter1 = sp + 16|0; - $pIter2 = sp + 12|0; - $pKey2 = sp + 8|0; - $iRes = sp + 4|0; - $pFree = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pCsr; - HEAP32[$2>>2] = $pbEof; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 64|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pSorter>>2] = $5; - $6 = HEAP32[$pSorter>>2]|0; - $7 = (($6) + 40|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)!=(0|0); - $10 = HEAP32[$pSorter>>2]|0; - if (!($9)) { - $138 = (($10) + 48|0); - $139 = HEAP32[$138>>2]|0; - HEAP32[$pFree>>2] = $139; - $140 = HEAP32[$pFree>>2]|0; - $141 = (($140) + 8|0); - $142 = HEAP32[$141>>2]|0; - $143 = HEAP32[$pSorter>>2]|0; - $144 = (($143) + 48|0); - HEAP32[$144>>2] = $142; - $145 = HEAP32[$pFree>>2]|0; - $146 = (($145) + 8|0); - HEAP32[$146>>2] = 0; - $147 = HEAP32[$0>>2]|0; - $148 = HEAP32[$pFree>>2]|0; - _vdbeSorterRecordFree($147,$148); - $149 = HEAP32[$pSorter>>2]|0; - $150 = (($149) + 48|0); - $151 = HEAP32[$150>>2]|0; - $152 = ($151|0)!=(0|0); - $153 = $152 ^ 1; - $154 = $153&1; - $155 = HEAP32[$2>>2]|0; - HEAP32[$155>>2] = $154; - HEAP32[$rc>>2] = 0; - $156 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($156|0); - } - $11 = (($10) + 40|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$iPrev>>2] = $14; - $15 = HEAP32[$0>>2]|0; - $16 = HEAP32[$iPrev>>2]|0; - $17 = HEAP32[$pSorter>>2]|0; - $18 = (($17) + 36|0); - $19 = HEAP32[$18>>2]|0; - $20 = (($19) + (($16*48)|0)|0); - $21 = (_vdbeSorterIterNext($15,$20)|0); - HEAP32[$rc>>2] = $21; - $22 = HEAP32[$rc>>2]|0; - $23 = ($22|0)==(0); - if (!($23)) { - $156 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($156|0); - } - $24 = HEAP32[$iPrev>>2]|0; - $25 = $24 & 65534; - $26 = HEAP32[$pSorter>>2]|0; - $27 = (($26) + 36|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + (($25*48)|0)|0); - HEAP32[$pIter1>>2] = $29; - $30 = HEAP32[$iPrev>>2]|0; - $31 = $30 | 1; - $32 = HEAP32[$pSorter>>2]|0; - $33 = (($32) + 36|0); - $34 = HEAP32[$33>>2]|0; - $35 = (($34) + (($31*48)|0)|0); - HEAP32[$pIter2>>2] = $35; - $36 = HEAP32[$pIter2>>2]|0; - $37 = (($36) + 32|0); - $38 = HEAP32[$37>>2]|0; - HEAP32[$pKey2>>2] = $38; - $39 = HEAP32[$pSorter>>2]|0; - $40 = (($39) + 20|0); - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$iPrev>>2]|0; - $43 = (($41) + ($42))|0; - $44 = (($43|0) / 2)&-1; - HEAP32[$i>>2] = $44; - while(1) { - $45 = HEAP32[$i>>2]|0; - $46 = ($45|0)>(0); - if (!($46)) { - break; - } - $47 = HEAP32[$pIter1>>2]|0; - $48 = (($47) + 24|0); - $49 = HEAP32[$48>>2]|0; - $50 = ($49|0)==(0|0); - do { - if ($50) { - HEAP32[$iRes>>2] = 1; - } else { - $51 = HEAP32[$pIter2>>2]|0; - $52 = (($51) + 24|0); - $53 = HEAP32[$52>>2]|0; - $54 = ($53|0)==(0|0); - if ($54) { - HEAP32[$iRes>>2] = -1; - break; - } else { - $55 = HEAP32[$1>>2]|0; - $56 = HEAP32[$pIter1>>2]|0; - $57 = (($56) + 32|0); - $58 = HEAP32[$57>>2]|0; - $59 = HEAP32[$pIter1>>2]|0; - $60 = (($59) + 20|0); - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$pKey2>>2]|0; - $63 = HEAP32[$pIter2>>2]|0; - $64 = (($63) + 20|0); - $65 = HEAP32[$64>>2]|0; - _vdbeSorterCompare($55,0,$58,$61,$62,$65,$iRes); - break; - } - } - } while(0); - $66 = HEAP32[$iRes>>2]|0; - $67 = ($66|0)<=(0); - $68 = HEAP32[$pIter1>>2]|0; - if ($67) { - $69 = HEAP32[$pSorter>>2]|0; - $70 = (($69) + 36|0); - $71 = HEAP32[$70>>2]|0; - $72 = $68; - $73 = $71; - $74 = (($72) - ($73))|0; - $75 = (($74|0) / 48)&-1; - $76 = HEAP32[$i>>2]|0; - $77 = HEAP32[$pSorter>>2]|0; - $78 = (($77) + 40|0); - $79 = HEAP32[$78>>2]|0; - $80 = (($79) + ($76<<2)|0); - HEAP32[$80>>2] = $75; - $81 = HEAP32[$i>>2]|0; - $82 = $81 ^ 1; - $83 = HEAP32[$pSorter>>2]|0; - $84 = (($83) + 40|0); - $85 = HEAP32[$84>>2]|0; - $86 = (($85) + ($82<<2)|0); - $87 = HEAP32[$86>>2]|0; - $88 = HEAP32[$pSorter>>2]|0; - $89 = (($88) + 36|0); - $90 = HEAP32[$89>>2]|0; - $91 = (($90) + (($87*48)|0)|0); - HEAP32[$pIter2>>2] = $91; - $92 = HEAP32[$pIter2>>2]|0; - $93 = (($92) + 32|0); - $94 = HEAP32[$93>>2]|0; - HEAP32[$pKey2>>2] = $94; - } else { - $95 = (($68) + 24|0); - $96 = HEAP32[$95>>2]|0; - $97 = ($96|0)!=(0|0); - if ($97) { - HEAP32[$pKey2>>2] = 0; - } - $98 = HEAP32[$pIter2>>2]|0; - $99 = HEAP32[$pSorter>>2]|0; - $100 = (($99) + 36|0); - $101 = HEAP32[$100>>2]|0; - $102 = $98; - $103 = $101; - $104 = (($102) - ($103))|0; - $105 = (($104|0) / 48)&-1; - $106 = HEAP32[$i>>2]|0; - $107 = HEAP32[$pSorter>>2]|0; - $108 = (($107) + 40|0); - $109 = HEAP32[$108>>2]|0; - $110 = (($109) + ($106<<2)|0); - HEAP32[$110>>2] = $105; - $111 = HEAP32[$i>>2]|0; - $112 = $111 ^ 1; - $113 = HEAP32[$pSorter>>2]|0; - $114 = (($113) + 40|0); - $115 = HEAP32[$114>>2]|0; - $116 = (($115) + ($112<<2)|0); - $117 = HEAP32[$116>>2]|0; - $118 = HEAP32[$pSorter>>2]|0; - $119 = (($118) + 36|0); - $120 = HEAP32[$119>>2]|0; - $121 = (($120) + (($117*48)|0)|0); - HEAP32[$pIter1>>2] = $121; - } - $122 = HEAP32[$i>>2]|0; - $123 = (($122|0) / 2)&-1; - HEAP32[$i>>2] = $123; - } - $124 = HEAP32[$pSorter>>2]|0; - $125 = (($124) + 40|0); - $126 = HEAP32[$125>>2]|0; - $127 = (($126) + 4|0); - $128 = HEAP32[$127>>2]|0; - $129 = HEAP32[$pSorter>>2]|0; - $130 = (($129) + 36|0); - $131 = HEAP32[$130>>2]|0; - $132 = (($131) + (($128*48)|0)|0); - $133 = (($132) + 24|0); - $134 = HEAP32[$133>>2]|0; - $135 = ($134|0)==(0|0); - $136 = $135&1; - $137 = HEAP32[$2>>2]|0; - HEAP32[$137>>2] = $136; - $156 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($156|0); -} -function _sqlite3VdbeSorterWrite($db,$pCsr,$pVal) { - $db = $db|0; - $pCsr = $pCsr|0; - $pVal = $pVal|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; - var $pNew = 0, $pSorter = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $pSorter = sp + 8|0; - $rc = sp + 4|0; - $pNew = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pCsr; - HEAP32[$2>>2] = $pVal; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 64|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pSorter>>2] = $5; - HEAP32[$rc>>2] = 0; - $6 = HEAP32[$2>>2]|0; - $7 = (($6) + 24|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)<(0); - $10 = $9 << 31 >> 31; - $11 = (_sqlite3VarintLen($8,$10)|0); - $12 = HEAP32[$2>>2]|0; - $13 = (($12) + 24|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($11) + ($14))|0; - $16 = HEAP32[$pSorter>>2]|0; - $17 = (($16) + 16|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + ($15))|0; - HEAP32[$17>>2] = $19; - $20 = HEAP32[$0>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = (($21) + 24|0); - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + 12)|0; - $25 = (_sqlite3DbMallocRaw($20,$24)|0); - HEAP32[$pNew>>2] = $25; - $26 = HEAP32[$pNew>>2]|0; - $27 = ($26|0)==(0|0); - if ($27) { - HEAP32[$rc>>2] = 7; - } else { - $28 = HEAP32[$pNew>>2]|0; - $29 = (($28) + 12|0); - $30 = HEAP32[$pNew>>2]|0; - HEAP32[$30>>2] = $29; - $31 = HEAP32[$pNew>>2]|0; - $32 = HEAP32[$31>>2]|0; - $33 = HEAP32[$2>>2]|0; - $34 = (($33) + 4|0); - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$2>>2]|0; - $37 = (($36) + 24|0); - $38 = HEAP32[$37>>2]|0; - _memcpy(($32|0),($35|0),($38|0))|0; - $39 = HEAP32[$2>>2]|0; - $40 = (($39) + 24|0); - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$pNew>>2]|0; - $43 = (($42) + 4|0); - HEAP32[$43>>2] = $41; - $44 = HEAP32[$pSorter>>2]|0; - $45 = (($44) + 48|0); - $46 = HEAP32[$45>>2]|0; - $47 = HEAP32[$pNew>>2]|0; - $48 = (($47) + 8|0); - HEAP32[$48>>2] = $46; - $49 = HEAP32[$pNew>>2]|0; - $50 = HEAP32[$pSorter>>2]|0; - $51 = (($50) + 48|0); - HEAP32[$51>>2] = $49; - } - $52 = HEAP32[$rc>>2]|0; - $53 = ($52|0)==(0); - if (!($53)) { - $79 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($79|0); - } - $54 = HEAP32[$pSorter>>2]|0; - $55 = (($54) + 32|0); - $56 = HEAP32[$55>>2]|0; - $57 = ($56|0)>(0); - if (!($57)) { - $79 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($79|0); - } - $58 = HEAP32[$pSorter>>2]|0; - $59 = (($58) + 16|0); - $60 = HEAP32[$59>>2]|0; - $61 = HEAP32[$pSorter>>2]|0; - $62 = (($61) + 32|0); - $63 = HEAP32[$62>>2]|0; - $64 = ($60|0)>($63|0); - if (!($64)) { - $65 = HEAP32[$pSorter>>2]|0; - $66 = (($65) + 16|0); - $67 = HEAP32[$66>>2]|0; - $68 = HEAP32[$pSorter>>2]|0; - $69 = (($68) + 28|0); - $70 = HEAP32[$69>>2]|0; - $71 = ($67|0)>($70|0); - if (!($71)) { - $79 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($79|0); - } - $72 = (_sqlite3HeapNearlyFull()|0); - $73 = ($72|0)!=(0); - if (!($73)) { - $79 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($79|0); - } - } - $74 = HEAP32[$0>>2]|0; - $75 = HEAP32[$1>>2]|0; - $76 = (_vdbeSorterListToPMA($74,$75)|0); - HEAP32[$rc>>2] = $76; - $77 = HEAP32[$pSorter>>2]|0; - $78 = (($77) + 16|0); - HEAP32[$78>>2] = 0; - $79 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($79|0); -} -function _sqlite3VdbeIdxRowid($db,$pCur,$rowid) { - $db = $db|0; - $pCur = $pCur|0; - $rowid = $rowid|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $9 = 0, $lenRowid = 0, $m = 0, $nCellKey = 0, $or$cond = 0, $or$cond3 = 0, $rc = 0, $szHdr = 0, $typeRowid = 0, $v = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $0 = sp + 116|0; - $1 = sp + 112|0; - $2 = sp + 108|0; - $3 = sp + 104|0; - $nCellKey = sp + 80|0; - $rc = sp + 100|0; - $szHdr = sp + 96|0; - $typeRowid = sp + 92|0; - $lenRowid = sp + 88|0; - $m = sp + 40|0; - $v = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pCur; - HEAP32[$3>>2] = $rowid; - $4 = $nCellKey; - $5 = $4; - HEAP32[$5>>2] = 0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = 0; - $8 = HEAP32[$2>>2]|0; - (_sqlite3BtreeKeySize($8,$nCellKey)|0); - dest=$m+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $9 = HEAP32[$2>>2]|0; - $10 = $nCellKey; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = (($10) + 4)|0; - $14 = $13; - $15 = HEAP32[$14>>2]|0; - $16 = (_sqlite3VdbeMemFromBtree($9,0,$12,1,$m)|0); - HEAP32[$rc>>2] = $16; - $17 = HEAP32[$rc>>2]|0; - $18 = ($17|0)!=(0); - if ($18) { - $19 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $19; - $85 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($85|0); - } - $20 = (($m) + 4|0); - $21 = HEAP32[$20>>2]|0; - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = ($23|0)<(128); - $25 = (($m) + 4|0); - $26 = HEAP32[$25>>2]|0; - if ($24) { - $27 = HEAP8[$26>>0]|0; - $28 = $27&255; - HEAP32[$szHdr>>2] = $28; - } else { - (_sqlite3GetVarint32($26,$szHdr)|0); - } - $29 = HEAP32[$szHdr>>2]|0; - $30 = ($29>>>0)<(3); - if (!($30)) { - $31 = HEAP32[$szHdr>>2]|0; - $32 = (($m) + 24|0); - $33 = HEAP32[$32>>2]|0; - $34 = ($31|0)>($33|0); - if (!($34)) { - $35 = HEAP32[$szHdr>>2]|0; - $36 = (($35) - 1)|0; - $37 = (($m) + 4|0); - $38 = HEAP32[$37>>2]|0; - $39 = (($38) + ($36)|0); - $40 = HEAP8[$39>>0]|0; - $41 = $40&255; - $42 = ($41|0)<(128); - $43 = HEAP32[$szHdr>>2]|0; - $44 = (($43) - 1)|0; - $45 = (($m) + 4|0); - $46 = HEAP32[$45>>2]|0; - $47 = (($46) + ($44)|0); - if ($42) { - $48 = HEAP8[$47>>0]|0; - $49 = $48&255; - HEAP32[$typeRowid>>2] = $49; - } else { - (_sqlite3GetVarint32($47,$typeRowid)|0); - } - $50 = HEAP32[$typeRowid>>2]|0; - $51 = ($50>>>0)<(1); - $52 = HEAP32[$typeRowid>>2]|0; - $53 = ($52>>>0)>(9); - $or$cond = $51 | $53; - $54 = HEAP32[$typeRowid>>2]|0; - $55 = ($54|0)==(7); - $or$cond3 = $or$cond | $55; - if (!($or$cond3)) { - $56 = HEAP32[$typeRowid>>2]|0; - $57 = (_sqlite3VdbeSerialTypeLen($56)|0); - HEAP32[$lenRowid>>2] = $57; - $58 = (($m) + 24|0); - $59 = HEAP32[$58>>2]|0; - $60 = HEAP32[$szHdr>>2]|0; - $61 = HEAP32[$lenRowid>>2]|0; - $62 = (($60) + ($61))|0; - $63 = ($59>>>0)<($62>>>0); - if (!($63)) { - $64 = (($m) + 24|0); - $65 = HEAP32[$64>>2]|0; - $66 = HEAP32[$lenRowid>>2]|0; - $67 = (($65) - ($66))|0; - $68 = (($m) + 4|0); - $69 = HEAP32[$68>>2]|0; - $70 = (($69) + ($67)|0); - $71 = HEAP32[$typeRowid>>2]|0; - (_sqlite3VdbeSerialGet($70,$71,$v)|0); - $72 = (($v) + 16|0); - $73 = $72; - $74 = $73; - $75 = HEAP32[$74>>2]|0; - $76 = (($73) + 4)|0; - $77 = $76; - $78 = HEAP32[$77>>2]|0; - $79 = HEAP32[$3>>2]|0; - $80 = $79; - $81 = $80; - HEAP32[$81>>2] = $75; - $82 = (($80) + 4)|0; - $83 = $82; - HEAP32[$83>>2] = $78; - _sqlite3VdbeMemRelease($m); - HEAP32[$0>>2] = 0; - $85 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($85|0); - } - } - } - } - _sqlite3VdbeMemRelease($m); - $84 = (_sqlite3CorruptError(65606)|0); - HEAP32[$0>>2] = $84; - $85 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($85|0); -} -function _sqlite3VdbeIdxKeyCompare($pC,$pUnpacked,$res) { - $pC = $pC|0; - $pUnpacked = $pUnpacked|0; - $res = $res|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $m = 0, $nCellKey = 0, $or$cond = 0, $pCur = 0, $rc = 0; - var dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 68|0; - $1 = sp + 64|0; - $2 = sp + 60|0; - $3 = sp + 56|0; - $nCellKey = sp + 40|0; - $rc = sp + 52|0; - $pCur = sp + 48|0; - $m = sp; - HEAP32[$1>>2] = $pC; - HEAP32[$2>>2] = $pUnpacked; - HEAP32[$3>>2] = $res; - $4 = $nCellKey; - $5 = $4; - HEAP32[$5>>2] = 0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = 0; - $8 = HEAP32[$1>>2]|0; - $9 = HEAP32[$8>>2]|0; - HEAP32[$pCur>>2] = $9; - $10 = HEAP32[$pCur>>2]|0; - (_sqlite3BtreeKeySize($10,$nCellKey)|0); - $11 = $nCellKey; - $12 = $11; - $13 = HEAP32[$12>>2]|0; - $14 = (($11) + 4)|0; - $15 = $14; - $16 = HEAP32[$15>>2]|0; - $17 = ($16|0)<(0); - $18 = ($16|0)==(0); - $19 = ($13>>>0)<=(0); - $20 = $18 & $19; - $21 = $17 | $20; - $22 = $nCellKey; - $23 = $22; - $24 = HEAP32[$23>>2]|0; - $25 = (($22) + 4)|0; - $26 = $25; - $27 = HEAP32[$26>>2]|0; - $28 = ($27|0)>(0); - $29 = ($27|0)==(0); - $30 = ($24>>>0)>(2147483647); - $31 = $29 & $30; - $32 = $28 | $31; - $or$cond = $21 | $32; - if ($or$cond) { - $33 = HEAP32[$3>>2]|0; - HEAP32[$33>>2] = 0; - $34 = (_sqlite3CorruptError(65637)|0); - HEAP32[$0>>2] = $34; - $54 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($54|0); - } - dest=$m+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $35 = HEAP32[$1>>2]|0; - $36 = HEAP32[$35>>2]|0; - $37 = $nCellKey; - $38 = $37; - $39 = HEAP32[$38>>2]|0; - $40 = (($37) + 4)|0; - $41 = $40; - $42 = HEAP32[$41>>2]|0; - $43 = (_sqlite3VdbeMemFromBtree($36,0,$39,1,$m)|0); - HEAP32[$rc>>2] = $43; - $44 = HEAP32[$rc>>2]|0; - $45 = ($44|0)!=(0); - if ($45) { - $46 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $46; - $54 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($54|0); - } else { - $47 = (($m) + 24|0); - $48 = HEAP32[$47>>2]|0; - $49 = (($m) + 4|0); - $50 = HEAP32[$49>>2]|0; - $51 = HEAP32[$2>>2]|0; - $52 = (_sqlite3VdbeRecordCompare($48,$50,$51,0)|0); - $53 = HEAP32[$3>>2]|0; - HEAP32[$53>>2] = $52; - _sqlite3VdbeMemRelease($m); - HEAP32[$0>>2] = 0; - $54 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($54|0); - } - return 0|0; -} -function _sqlite3BtreeDropTable($p,$iTable,$piMoved) { - $p = $p|0; - $iTable = $iTable|0; - $piMoved = $piMoved|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $iTable; - HEAP32[$2>>2] = $piMoved; - $3 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($3); - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$2>>2]|0; - $7 = (_btreeDropTable($4,$5,$6)|0); - HEAP32[$rc>>2] = $7; - $8 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($8|0); -} -function _sqlite3RootPageMoved($db,$iDb,$iFrom,$iTo) { - $db = $db|0; - $iDb = $iDb|0; - $iFrom = $iFrom|0; - $iTo = $iTo|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDb = 0, $pElem = 0, $pHash = 0, $pIdx = 0, $pTab = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $pElem = sp + 16|0; - $pHash = sp + 12|0; - $pDb = sp + 8|0; - $pTab = sp + 4|0; - $pIdx = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $iDb; - HEAP32[$2>>2] = $iFrom; - HEAP32[$3>>2] = $iTo; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 16|0); - $7 = HEAP32[$6>>2]|0; - $8 = (($7) + ($4<<4)|0); - HEAP32[$pDb>>2] = $8; - $9 = HEAP32[$pDb>>2]|0; - $10 = (($9) + 12|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + 8|0); - HEAP32[$pHash>>2] = $12; - $13 = HEAP32[$pHash>>2]|0; - $14 = (($13) + 8|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$pElem>>2] = $15; - while(1) { - $16 = HEAP32[$pElem>>2]|0; - $17 = ($16|0)!=(0|0); - if (!($17)) { - break; - } - $18 = HEAP32[$pElem>>2]|0; - $19 = (($18) + 8|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$pTab>>2] = $20; - $21 = HEAP32[$pTab>>2]|0; - $22 = (($21) + 32|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$2>>2]|0; - $25 = ($23|0)==($24|0); - if ($25) { - $26 = HEAP32[$3>>2]|0; - $27 = HEAP32[$pTab>>2]|0; - $28 = (($27) + 32|0); - HEAP32[$28>>2] = $26; - } - $29 = HEAP32[$pElem>>2]|0; - $30 = HEAP32[$29>>2]|0; - HEAP32[$pElem>>2] = $30; - } - $31 = HEAP32[$pDb>>2]|0; - $32 = (($31) + 12|0); - $33 = HEAP32[$32>>2]|0; - $34 = (($33) + 24|0); - HEAP32[$pHash>>2] = $34; - $35 = HEAP32[$pHash>>2]|0; - $36 = (($35) + 8|0); - $37 = HEAP32[$36>>2]|0; - HEAP32[$pElem>>2] = $37; - while(1) { - $38 = HEAP32[$pElem>>2]|0; - $39 = ($38|0)!=(0|0); - if (!($39)) { - break; - } - $40 = HEAP32[$pElem>>2]|0; - $41 = (($40) + 8|0); - $42 = HEAP32[$41>>2]|0; - HEAP32[$pIdx>>2] = $42; - $43 = HEAP32[$pIdx>>2]|0; - $44 = (($43) + 44|0); - $45 = HEAP32[$44>>2]|0; - $46 = HEAP32[$2>>2]|0; - $47 = ($45|0)==($46|0); - if ($47) { - $48 = HEAP32[$3>>2]|0; - $49 = HEAP32[$pIdx>>2]|0; - $50 = (($49) + 44|0); - HEAP32[$50>>2] = $48; - } - $51 = HEAP32[$pElem>>2]|0; - $52 = HEAP32[$51>>2]|0; - HEAP32[$pElem>>2] = $52; - } - STACKTOP = sp;return; -} -function _sqlite3BtreeClearTable($p,$iTable,$pnChange) { - $p = $p|0; - $iTable = $iTable|0; - $pnChange = $pnChange|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $rc = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $rc = sp + 4|0; - $pBt = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $iTable; - HEAP32[$2>>2] = $pnChange; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 4|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pBt>>2] = $5; - $6 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($6); - $7 = HEAP32[$pBt>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = (_saveAllCursors($7,$8,0)|0); - HEAP32[$rc>>2] = $9; - $10 = HEAP32[$rc>>2]|0; - $11 = (0)==($10|0); - if (!($11)) { - $17 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($17|0); - } - $12 = HEAP32[$0>>2]|0; - _invalidateIncrblobCursors($12,0,0,1); - $13 = HEAP32[$pBt>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = (_clearDatabasePage($13,$14,0,$15)|0); - HEAP32[$rc>>2] = $16; - $17 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($17|0); -} -function _sqlite3VdbeSorterReset($db,$pSorter) { - $db = $db|0; - $pSorter = $pSorter|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pSorter; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 36|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0|0); - if ($5) { - HEAP32[$i>>2] = 0; - while(1) { - $6 = HEAP32[$i>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 20|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($6|0)<($9|0); - $11 = HEAP32[$0>>2]|0; - if (!($10)) { - break; - } - $12 = HEAP32[$i>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 36|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + (($12*48)|0)|0); - _vdbeSorterIterZero($11,$16); - $17 = HEAP32[$i>>2]|0; - $18 = (($17) + 1)|0; - HEAP32[$i>>2] = $18; - } - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 36|0); - $21 = HEAP32[$20>>2]|0; - _sqlite3DbFree($11,$21); - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 36|0); - HEAP32[$23>>2] = 0; - } - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 44|0); - $26 = HEAP32[$25>>2]|0; - $27 = ($26|0)!=(0|0); - if ($27) { - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 44|0); - $30 = HEAP32[$29>>2]|0; - (_sqlite3OsCloseFree($30)|0); - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 44|0); - HEAP32[$32>>2] = 0; - } - $33 = HEAP32[$0>>2]|0; - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 48|0); - $36 = HEAP32[$35>>2]|0; - _vdbeSorterRecordFree($33,$36); - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 48|0); - HEAP32[$38>>2] = 0; - $39 = HEAP32[$1>>2]|0; - $40 = $39; - $41 = $40; - HEAP32[$41>>2] = 0; - $42 = (($40) + 4)|0; - $43 = $42; - HEAP32[$43>>2] = 0; - $44 = HEAP32[$1>>2]|0; - $45 = (($44) + 8|0); - $46 = $45; - $47 = $46; - HEAP32[$47>>2] = 0; - $48 = (($46) + 4)|0; - $49 = $48; - HEAP32[$49>>2] = 0; - $50 = HEAP32[$1>>2]|0; - $51 = (($50) + 16|0); - HEAP32[$51>>2] = 0; - $52 = HEAP32[$1>>2]|0; - $53 = (($52) + 20|0); - HEAP32[$53>>2] = 0; - $54 = HEAP32[$1>>2]|0; - $55 = (($54) + 24|0); - HEAP32[$55>>2] = 0; - $56 = HEAP32[$1>>2]|0; - $57 = (($56) + 40|0); - HEAP32[$57>>2] = 0; - STACKTOP = sp;return; -} -function _sqlite3BtreeClearTableOfCursor($pCur) { - $pCur = $pCur|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pCur; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 68|0); - $5 = HEAP32[$4>>2]|0; - $6 = (_sqlite3BtreeClearTable($2,$5,0)|0); - STACKTOP = sp;return ($6|0); -} -function _sqlite3UnlinkAndDeleteTable($db,$iDb,$zTabName) { - $db = $db|0; - $iDb = $iDb|0; - $zTabName = $zTabName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $p = 0, $pDb = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $p = sp + 4|0; - $pDb = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $iDb; - HEAP32[$2>>2] = $zTabName; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 16|0); - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + ($3<<4)|0); - HEAP32[$pDb>>2] = $7; - $8 = HEAP32[$pDb>>2]|0; - $9 = (($8) + 12|0); - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + 8|0); - $12 = HEAP32[$2>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = (_sqlite3Strlen30($13)|0); - $15 = (_sqlite3HashInsert($11,$12,$14,0)|0); - HEAP32[$p>>2] = $15; - $16 = HEAP32[$0>>2]|0; - $17 = HEAP32[$p>>2]|0; - _sqlite3DeleteTable($16,$17); - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 24|0); - $20 = HEAP32[$19>>2]|0; - $21 = $20 | 2; - HEAP32[$19>>2] = $21; - STACKTOP = sp;return; -} -function _sqlite3UnlinkAndDeleteIndex($db,$iDb,$zIdxName) { - $db = $db|0; - $iDb = $iDb|0; - $zIdxName = $zIdxName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $len = 0, $p = 0, $pHash = 0, $pIndex = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $pIndex = sp + 12|0; - $len = sp + 8|0; - $pHash = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $iDb; - HEAP32[$2>>2] = $zIdxName; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 16|0); - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + ($3<<4)|0); - $8 = (($7) + 12|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + 24|0); - HEAP32[$pHash>>2] = $10; - $11 = HEAP32[$2>>2]|0; - $12 = (_sqlite3Strlen30($11)|0); - HEAP32[$len>>2] = $12; - $13 = HEAP32[$pHash>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$len>>2]|0; - $16 = (_sqlite3HashInsert($13,$14,$15,0)|0); - HEAP32[$pIndex>>2] = $16; - $17 = HEAP32[$pIndex>>2]|0; - $18 = ($17|0)!=(0|0); - if (!($18)) { - $60 = HEAP32[$0>>2]|0; - $61 = (($60) + 24|0); - $62 = HEAP32[$61>>2]|0; - $63 = $62 | 2; - HEAP32[$61>>2] = $63; - STACKTOP = sp;return; - } - $19 = HEAP32[$pIndex>>2]|0; - $20 = (($19) + 12|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($21) + 8|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$pIndex>>2]|0; - $25 = ($23|0)==($24|0); - $26 = HEAP32[$pIndex>>2]|0; - if ($25) { - $27 = (($26) + 20|0); - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$pIndex>>2]|0; - $30 = (($29) + 12|0); - $31 = HEAP32[$30>>2]|0; - $32 = (($31) + 8|0); - HEAP32[$32>>2] = $28; - } else { - $33 = (($26) + 12|0); - $34 = HEAP32[$33>>2]|0; - $35 = (($34) + 8|0); - $36 = HEAP32[$35>>2]|0; - HEAP32[$p>>2] = $36; - while(1) { - $37 = HEAP32[$p>>2]|0; - $38 = ($37|0)!=(0|0); - if ($38) { - $39 = HEAP32[$p>>2]|0; - $40 = (($39) + 20|0); - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$pIndex>>2]|0; - $43 = ($41|0)!=($42|0); - $64 = $43; - } else { - $64 = 0; - } - $44 = HEAP32[$p>>2]|0; - if (!($64)) { - break; - } - $45 = (($44) + 20|0); - $46 = HEAP32[$45>>2]|0; - HEAP32[$p>>2] = $46; - } - $47 = ($44|0)!=(0|0); - if ($47) { - $48 = HEAP32[$p>>2]|0; - $49 = (($48) + 20|0); - $50 = HEAP32[$49>>2]|0; - $51 = HEAP32[$pIndex>>2]|0; - $52 = ($50|0)==($51|0); - if ($52) { - $53 = HEAP32[$pIndex>>2]|0; - $54 = (($53) + 20|0); - $55 = HEAP32[$54>>2]|0; - $56 = HEAP32[$p>>2]|0; - $57 = (($56) + 20|0); - HEAP32[$57>>2] = $55; - } - } - } - $58 = HEAP32[$0>>2]|0; - $59 = HEAP32[$pIndex>>2]|0; - _freeIndex($58,$59); - $60 = HEAP32[$0>>2]|0; - $61 = (($60) + 24|0); - $62 = HEAP32[$61>>2]|0; - $63 = $62 | 2; - HEAP32[$61>>2] = $63; - STACKTOP = sp;return; -} -function _sqlite3UnlinkAndDeleteTrigger($db,$iDb,$zName) { - $db = $db|0; - $iDb = $iDb|0; - $zName = $zName|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pHash = 0, $pTab = 0, $pTrigger = 0, $pp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $pTrigger = sp + 12|0; - $pHash = sp + 8|0; - $pTab = sp + 4|0; - $pp = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $iDb; - HEAP32[$2>>2] = $zName; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 16|0); - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + ($3<<4)|0); - $8 = (($7) + 12|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + 40|0); - HEAP32[$pHash>>2] = $10; - $11 = HEAP32[$pHash>>2]|0; - $12 = HEAP32[$2>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = (_sqlite3Strlen30($13)|0); - $15 = (_sqlite3HashInsert($11,$12,$14,0)|0); - HEAP32[$pTrigger>>2] = $15; - $16 = HEAP32[$pTrigger>>2]|0; - $17 = ($16|0)!=(0|0); - if (!($17)) { - STACKTOP = sp;return; - } - $18 = HEAP32[$pTrigger>>2]|0; - $19 = (($18) + 20|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$pTrigger>>2]|0; - $22 = (($21) + 24|0); - $23 = HEAP32[$22>>2]|0; - $24 = ($20|0)==($23|0); - if ($24) { - $25 = HEAP32[$pTrigger>>2]|0; - $26 = (_tableOfTrigger($25)|0); - HEAP32[$pTab>>2] = $26; - $27 = HEAP32[$pTab>>2]|0; - $28 = (($27) + 64|0); - HEAP32[$pp>>2] = $28; - while(1) { - $29 = HEAP32[$pp>>2]|0; - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$pTrigger>>2]|0; - $32 = ($30|0)!=($31|0); - $33 = HEAP32[$pp>>2]|0; - $34 = HEAP32[$33>>2]|0; - $35 = (($34) + 32|0); - if (!($32)) { - break; - } - HEAP32[$pp>>2] = $35; - } - $36 = HEAP32[$35>>2]|0; - $37 = HEAP32[$pp>>2]|0; - HEAP32[$37>>2] = $36; - } - $38 = HEAP32[$0>>2]|0; - $39 = HEAP32[$pTrigger>>2]|0; - _sqlite3DeleteTrigger($38,$39); - $40 = HEAP32[$0>>2]|0; - $41 = (($40) + 24|0); - $42 = HEAP32[$41>>2]|0; - $43 = $42 | 2; - HEAP32[$41>>2] = $43; - STACKTOP = sp;return; -} -function _sqlite3BtreeIntegrityCheck($p,$aRoot,$nRoot,$mxErr,$pnErr) { - $p = $p|0; - $aRoot = $aRoot|0; - $nRoot = $nRoot|0; - $mxErr = $mxErr|0; - $pnErr = $pnErr|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; - var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; - var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; - var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; - var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; - var $98 = 0, $99 = 0, $i = 0, $nRef = 0, $pBt = 0, $sCheck = 0, $vararg_buffer5 = 0, $vararg_ptr8 = 0, $zErr = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 208|0; - $vararg_buffer5 = sp; - $0 = sp + 100|0; - $1 = sp + 96|0; - $2 = sp + 92|0; - $3 = sp + 88|0; - $4 = sp + 84|0; - $5 = sp + 80|0; - $i = sp + 76|0; - $nRef = sp + 72|0; - $sCheck = sp + 16|0; - $pBt = sp + 8|0; - $zErr = sp + 104|0; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $aRoot; - HEAP32[$3>>2] = $nRoot; - HEAP32[$4>>2] = $mxErr; - HEAP32[$5>>2] = $pnErr; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pBt>>2] = $8; - $9 = HEAP32[$1>>2]|0; - _sqlite3BtreeEnter($9); - $10 = HEAP32[$pBt>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = (_sqlite3PagerRefcount($11)|0); - HEAP32[$nRef>>2] = $12; - $13 = HEAP32[$pBt>>2]|0; - HEAP32[$sCheck>>2] = $13; - $14 = HEAP32[$pBt>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = (($sCheck) + 4|0); - HEAP32[$16>>2] = $15; - $17 = HEAP32[$sCheck>>2]|0; - $18 = (_btreePagecount($17)|0); - $19 = (($sCheck) + 12|0); - HEAP32[$19>>2] = $18; - $20 = HEAP32[$4>>2]|0; - $21 = (($sCheck) + 16|0); - HEAP32[$21>>2] = $20; - $22 = (($sCheck) + 20|0); - HEAP32[$22>>2] = 0; - $23 = (($sCheck) + 24|0); - HEAP32[$23>>2] = 0; - $24 = HEAP32[$5>>2]|0; - HEAP32[$24>>2] = 0; - $25 = (($sCheck) + 12|0); - $26 = HEAP32[$25>>2]|0; - $27 = ($26|0)==(0); - if ($27) { - HEAP32[$0>>2] = 0; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - $28 = (($sCheck) + 12|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29>>>0) / 8)&-1; - $31 = (($30) + 1)|0; - $32 = (_sqlite3MallocZero($31)|0); - $33 = (($sCheck) + 8|0); - HEAP32[$33>>2] = $32; - $34 = (($sCheck) + 8|0); - $35 = HEAP32[$34>>2]|0; - $36 = ($35|0)!=(0|0); - if (!($36)) { - $37 = HEAP32[$5>>2]|0; - HEAP32[$37>>2] = 1; - HEAP32[$0>>2] = 0; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - $38 = HEAP32[1384>>2]|0; - $39 = HEAP32[$pBt>>2]|0; - $40 = (($39) + 32|0); - $41 = HEAP32[$40>>2]|0; - $42 = (($38>>>0) / ($41>>>0))&-1; - $43 = (($42) + 1)|0; - HEAP32[$i>>2] = $43; - $44 = HEAP32[$i>>2]|0; - $45 = (($sCheck) + 12|0); - $46 = HEAP32[$45>>2]|0; - $47 = ($44>>>0)<=($46>>>0); - if ($47) { - $48 = HEAP32[$i>>2]|0; - _setPageReferenced($sCheck,$48); - } - $49 = (($sCheck) + 28|0); - _sqlite3StrAccumInit($49,$zErr,100,1000000000); - $50 = (($sCheck) + 28|0); - $51 = (($50) + 24|0); - HEAP8[$51>>0] = 2; - $52 = HEAP32[$pBt>>2]|0; - $53 = (($52) + 12|0); - $54 = HEAP32[$53>>2]|0; - $55 = (($54) + 56|0); - $56 = HEAP32[$55>>2]|0; - $57 = (($56) + 32|0); - $58 = (_sqlite3Get4byte($57)|0); - $59 = HEAP32[$pBt>>2]|0; - $60 = (($59) + 12|0); - $61 = HEAP32[$60>>2]|0; - $62 = (($61) + 56|0); - $63 = HEAP32[$62>>2]|0; - $64 = (($63) + 36|0); - $65 = (_sqlite3Get4byte($64)|0); - _checkList($sCheck,1,$58,$65,33176); - HEAP32[$i>>2] = 0; - while(1) { - $66 = HEAP32[$i>>2]|0; - $67 = HEAP32[$3>>2]|0; - $68 = ($66|0)<($67|0); - if (!($68)) { - break; - } - $69 = (($sCheck) + 16|0); - $70 = HEAP32[$69>>2]|0; - $71 = ($70|0)!=(0); - if (!($71)) { - break; - } - $72 = HEAP32[$i>>2]|0; - $73 = HEAP32[$2>>2]|0; - $74 = (($73) + ($72<<2)|0); - $75 = HEAP32[$74>>2]|0; - $76 = ($75|0)==(0); - if (!($76)) { - $77 = HEAP32[$pBt>>2]|0; - $78 = (($77) + 17|0); - $79 = HEAP8[$78>>0]|0; - $80 = $79&255; - $81 = ($80|0)!=(0); - if ($81) { - $82 = HEAP32[$i>>2]|0; - $83 = HEAP32[$2>>2]|0; - $84 = (($83) + ($82<<2)|0); - $85 = HEAP32[$84>>2]|0; - $86 = ($85|0)>(1); - if ($86) { - $87 = HEAP32[$i>>2]|0; - $88 = HEAP32[$2>>2]|0; - $89 = (($88) + ($87<<2)|0); - $90 = HEAP32[$89>>2]|0; - _checkPtrmap($sCheck,$90,1,0,0); - } - } - $91 = HEAP32[$i>>2]|0; - $92 = HEAP32[$2>>2]|0; - $93 = (($92) + ($91<<2)|0); - $94 = HEAP32[$93>>2]|0; - (_checkTreePage($sCheck,$94,33192,0,0)|0); - } - $95 = HEAP32[$i>>2]|0; - $96 = (($95) + 1)|0; - HEAP32[$i>>2] = $96; - } - HEAP32[$i>>2] = 1; - while(1) { - $97 = HEAP32[$i>>2]|0; - $98 = (($sCheck) + 12|0); - $99 = HEAP32[$98>>2]|0; - $100 = ($97>>>0)<=($99>>>0); - if (!($100)) { - break; - } - $101 = (($sCheck) + 16|0); - $102 = HEAP32[$101>>2]|0; - $103 = ($102|0)!=(0); - if (!($103)) { - break; - } - $104 = HEAP32[$i>>2]|0; - $105 = (_getPageReferenced($sCheck,$104)|0); - $106 = ($105|0)==(0); - do { - if ($106) { - $107 = HEAP32[$pBt>>2]|0; - $108 = HEAP32[$i>>2]|0; - $109 = (_ptrmapPageno($107,$108)|0); - $110 = HEAP32[$i>>2]|0; - $111 = ($109|0)!=($110|0); - if (!($111)) { - $112 = HEAP32[$pBt>>2]|0; - $113 = (($112) + 17|0); - $114 = HEAP8[$113>>0]|0; - $115 = ($114<<24>>24)!=(0); - if ($115) { - break; - } - } - $116 = HEAP32[$i>>2]|0; - HEAP32[$vararg_buffer5>>2] = $116; - _checkAppendMsg($sCheck,0,33216,$vararg_buffer5); - } - } while(0); - $117 = HEAP32[$i>>2]|0; - $118 = (_getPageReferenced($sCheck,$117)|0); - $119 = ($118|0)!=(0); - if ($119) { - $120 = HEAP32[$pBt>>2]|0; - $121 = HEAP32[$i>>2]|0; - $122 = (_ptrmapPageno($120,$121)|0); - $123 = HEAP32[$i>>2]|0; - $124 = ($122|0)==($123|0); - if ($124) { - $125 = HEAP32[$pBt>>2]|0; - $126 = (($125) + 17|0); - $127 = HEAP8[$126>>0]|0; - $128 = $127&255; - $129 = ($128|0)!=(0); - if ($129) { - $130 = HEAP32[$i>>2]|0; - HEAP32[$vararg_buffer5>>2] = $130; - _checkAppendMsg($sCheck,0,33240,$vararg_buffer5); - } - } - } - $131 = HEAP32[$i>>2]|0; - $132 = (($131) + 1)|0; - HEAP32[$i>>2] = $132; - } - $133 = HEAP32[$nRef>>2]|0; - $134 = HEAP32[$pBt>>2]|0; - $135 = HEAP32[$134>>2]|0; - $136 = (_sqlite3PagerRefcount($135)|0); - $137 = ($133|0)!=($136|0); - if ($137) { - $138 = HEAP32[$nRef>>2]|0; - $139 = HEAP32[$pBt>>2]|0; - $140 = HEAP32[$139>>2]|0; - $141 = (_sqlite3PagerRefcount($140)|0); - HEAP32[$vararg_buffer5>>2] = $138; - $vararg_ptr8 = (($vararg_buffer5) + 4|0); - HEAP32[$vararg_ptr8>>2] = $141; - _checkAppendMsg($sCheck,0,33280,$vararg_buffer5); - } - $142 = (($sCheck) + 8|0); - $143 = HEAP32[$142>>2]|0; - _sqlite3_free($143); - $144 = (($sCheck) + 24|0); - $145 = HEAP32[$144>>2]|0; - $146 = ($145|0)!=(0); - if ($146) { - $147 = (($sCheck) + 28|0); - _sqlite3StrAccumReset($147); - $148 = (($sCheck) + 20|0); - $149 = HEAP32[$148>>2]|0; - $150 = (($149) + 1)|0; - $151 = HEAP32[$5>>2]|0; - HEAP32[$151>>2] = $150; - HEAP32[$0>>2] = 0; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - $152 = (($sCheck) + 20|0); - $153 = HEAP32[$152>>2]|0; - $154 = HEAP32[$5>>2]|0; - HEAP32[$154>>2] = $153; - $155 = (($sCheck) + 20|0); - $156 = HEAP32[$155>>2]|0; - $157 = ($156|0)==(0); - if ($157) { - $158 = (($sCheck) + 28|0); - _sqlite3StrAccumReset($158); - } - $159 = (($sCheck) + 28|0); - $160 = (_sqlite3StrAccumFinish($159)|0); - HEAP32[$0>>2] = $160; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); -} -function _sqlite3VdbeMemSetRowSet($pMem) { - $pMem = $pMem|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $pMem; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$db>>2] = $2; - $3 = HEAP32[$0>>2]|0; - _sqlite3VdbeMemRelease($3); - $4 = HEAP32[$db>>2]|0; - $5 = (_sqlite3DbMallocRaw($4,64)|0); - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 36|0); - HEAP32[$7>>2] = $5; - $8 = HEAP32[$db>>2]|0; - $9 = (($8) + 64|0); - $10 = HEAP8[$9>>0]|0; - $11 = ($10<<24>>24)!=(0); - if ($11) { - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 28|0); - HEAP16[$13>>1] = 1; - STACKTOP = sp;return; - } else { - $14 = HEAP32[$db>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 36|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$db>>2]|0; - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 36|0); - $21 = HEAP32[$20>>2]|0; - $22 = (_sqlite3DbMallocSize($18,$21)|0); - $23 = (_sqlite3RowSetInit($14,$17,$22)|0); - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 16|0); - HEAP32[$25>>2] = $23; - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 28|0); - HEAP16[$27>>1] = 32; - STACKTOP = sp;return; - } -} -function _sqlite3RowSetInsert($p,$0,$1) { - $p = $p|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $pEntry = 0, $pLast = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 16|0; - $3 = sp; - $pEntry = sp + 12|0; - $pLast = sp + 8|0; - HEAP32[$2>>2] = $p; - $4 = $3; - $5 = $4; - HEAP32[$5>>2] = $0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = $1; - $8 = HEAP32[$2>>2]|0; - $9 = (_rowSetEntryAlloc($8)|0); - HEAP32[$pEntry>>2] = $9; - $10 = HEAP32[$pEntry>>2]|0; - $11 = ($10|0)==(0|0); - if ($11) { - STACKTOP = sp;return; - } - $12 = $3; - $13 = $12; - $14 = HEAP32[$13>>2]|0; - $15 = (($12) + 4)|0; - $16 = $15; - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$pEntry>>2]|0; - $19 = $18; - $20 = $19; - HEAP32[$20>>2] = $14; - $21 = (($19) + 4)|0; - $22 = $21; - HEAP32[$22>>2] = $17; - $23 = HEAP32[$pEntry>>2]|0; - $24 = (($23) + 8|0); - HEAP32[$24>>2] = 0; - $25 = HEAP32[$2>>2]|0; - $26 = (($25) + 12|0); - $27 = HEAP32[$26>>2]|0; - HEAP32[$pLast>>2] = $27; - $28 = HEAP32[$pLast>>2]|0; - $29 = ($28|0)!=(0|0); - if ($29) { - $30 = HEAP32[$2>>2]|0; - $31 = (($30) + 26|0); - $32 = HEAP16[$31>>1]|0; - $33 = $32&65535; - $34 = $33 & 1; - $35 = ($34|0)!=(0); - if ($35) { - $36 = $3; - $37 = $36; - $38 = HEAP32[$37>>2]|0; - $39 = (($36) + 4)|0; - $40 = $39; - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$pLast>>2]|0; - $43 = $42; - $44 = $43; - $45 = HEAP32[$44>>2]|0; - $46 = (($43) + 4)|0; - $47 = $46; - $48 = HEAP32[$47>>2]|0; - $49 = ($41|0)<($48|0); - $50 = ($41|0)==($48|0); - $51 = ($38>>>0)<=($45>>>0); - $52 = $50 & $51; - $53 = $49 | $52; - if ($53) { - $54 = HEAP32[$2>>2]|0; - $55 = (($54) + 26|0); - $56 = HEAP16[$55>>1]|0; - $57 = $56&65535; - $58 = $57 & -2; - $59 = $58&65535; - HEAP16[$55>>1] = $59; - } - } - $60 = HEAP32[$pEntry>>2]|0; - $61 = HEAP32[$pLast>>2]|0; - $62 = (($61) + 8|0); - HEAP32[$62>>2] = $60; - } else { - $63 = HEAP32[$pEntry>>2]|0; - $64 = HEAP32[$2>>2]|0; - $65 = (($64) + 8|0); - HEAP32[$65>>2] = $63; - } - $66 = HEAP32[$pEntry>>2]|0; - $67 = HEAP32[$2>>2]|0; - $68 = (($67) + 12|0); - HEAP32[$68>>2] = $66; - STACKTOP = sp;return; -} -function _sqlite3RowSetNext($p,$pRowid) { - $p = $p|0; - $pRowid = $pRowid|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $pRowid; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 26|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5&65535; - $7 = $6 & 2; - $8 = ($7|0)==(0); - if ($8) { - $9 = HEAP32[$1>>2]|0; - _rowSetToList($9); - } - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 8|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)!=(0|0); - if (!($13)) { - HEAP32[$0>>2] = 0; - $40 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($40|0); - } - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 8|0); - $16 = HEAP32[$15>>2]|0; - $17 = $16; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = (($17) + 4)|0; - $21 = $20; - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$2>>2]|0; - $24 = $23; - $25 = $24; - HEAP32[$25>>2] = $19; - $26 = (($24) + 4)|0; - $27 = $26; - HEAP32[$27>>2] = $22; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 8|0); - $30 = HEAP32[$29>>2]|0; - $31 = (($30) + 8|0); - $32 = HEAP32[$31>>2]|0; - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 8|0); - HEAP32[$34>>2] = $32; - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 8|0); - $37 = HEAP32[$36>>2]|0; - $38 = ($37|0)==(0|0); - if ($38) { - $39 = HEAP32[$1>>2]|0; - _sqlite3RowSetClear($39); - } - HEAP32[$0>>2] = 1; - $40 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($40|0); -} -function _sqlite3RowSetTest($pRowSet,$iBatch,$0,$1) { - $pRowSet = $pRowSet|0; - $iBatch = $iBatch|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; - var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $p = 0, $pAux = 0, $pTail = 0, $pTree = 0, $ppPrevTree = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $4 = sp + 28|0; - $5 = sp; - $p = sp + 24|0; - $pTree = sp + 20|0; - $ppPrevTree = sp + 16|0; - $pAux = sp + 12|0; - $pTail = sp + 8|0; - HEAP32[$3>>2] = $pRowSet; - HEAP32[$4>>2] = $iBatch; - $6 = $5; - $7 = $6; - HEAP32[$7>>2] = $0; - $8 = (($6) + 4)|0; - $9 = $8; - HEAP32[$9>>2] = $1; - $10 = HEAP32[$4>>2]|0; - $11 = HEAP32[$3>>2]|0; - $12 = (($11) + 28|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($10|0)!=($13|0); - if ($14) { - $15 = HEAP32[$3>>2]|0; - $16 = (($15) + 8|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$p>>2] = $17; - $18 = HEAP32[$p>>2]|0; - $19 = ($18|0)!=(0|0); - if ($19) { - $20 = HEAP32[$3>>2]|0; - $21 = (($20) + 20|0); - HEAP32[$ppPrevTree>>2] = $21; - $22 = HEAP32[$3>>2]|0; - $23 = (($22) + 26|0); - $24 = HEAP16[$23>>1]|0; - $25 = $24&65535; - $26 = $25 & 1; - $27 = ($26|0)==(0); - if ($27) { - $28 = HEAP32[$p>>2]|0; - $29 = (_rowSetEntrySort($28)|0); - HEAP32[$p>>2] = $29; - } - $30 = HEAP32[$3>>2]|0; - $31 = (($30) + 20|0); - $32 = HEAP32[$31>>2]|0; - HEAP32[$pTree>>2] = $32; - while(1) { - $33 = HEAP32[$pTree>>2]|0; - $34 = ($33|0)!=(0|0); - if (!($34)) { - break; - } - $35 = HEAP32[$pTree>>2]|0; - $36 = (($35) + 8|0); - HEAP32[$ppPrevTree>>2] = $36; - $37 = HEAP32[$pTree>>2]|0; - $38 = (($37) + 12|0); - $39 = HEAP32[$38>>2]|0; - $40 = ($39|0)==(0|0); - if ($40) { - label = 8; - break; - } - $45 = HEAP32[$pTree>>2]|0; - $46 = (($45) + 12|0); - $47 = HEAP32[$46>>2]|0; - _rowSetTreeToList($47,$pAux,$pTail); - $48 = HEAP32[$pTree>>2]|0; - $49 = (($48) + 12|0); - HEAP32[$49>>2] = 0; - $50 = HEAP32[$pAux>>2]|0; - $51 = HEAP32[$p>>2]|0; - $52 = (_rowSetEntryMerge($50,$51)|0); - HEAP32[$p>>2] = $52; - $53 = HEAP32[$pTree>>2]|0; - $54 = (($53) + 8|0); - $55 = HEAP32[$54>>2]|0; - HEAP32[$pTree>>2] = $55; - } - if ((label|0) == 8) { - $41 = HEAP32[$p>>2]|0; - $42 = (_rowSetListToTree($41)|0); - $43 = HEAP32[$pTree>>2]|0; - $44 = (($43) + 12|0); - HEAP32[$44>>2] = $42; - } - $56 = HEAP32[$pTree>>2]|0; - $57 = ($56|0)==(0|0); - if ($57) { - $58 = HEAP32[$3>>2]|0; - $59 = (_rowSetEntryAlloc($58)|0); - HEAP32[$pTree>>2] = $59; - $60 = HEAP32[$ppPrevTree>>2]|0; - HEAP32[$60>>2] = $59; - $61 = HEAP32[$pTree>>2]|0; - $62 = ($61|0)!=(0|0); - if ($62) { - $63 = HEAP32[$pTree>>2]|0; - $64 = $63; - $65 = $64; - HEAP32[$65>>2] = 0; - $66 = (($64) + 4)|0; - $67 = $66; - HEAP32[$67>>2] = 0; - $68 = HEAP32[$pTree>>2]|0; - $69 = (($68) + 8|0); - HEAP32[$69>>2] = 0; - $70 = HEAP32[$p>>2]|0; - $71 = (_rowSetListToTree($70)|0); - $72 = HEAP32[$pTree>>2]|0; - $73 = (($72) + 12|0); - HEAP32[$73>>2] = $71; - } - } - $74 = HEAP32[$3>>2]|0; - $75 = (($74) + 8|0); - HEAP32[$75>>2] = 0; - $76 = HEAP32[$3>>2]|0; - $77 = (($76) + 12|0); - HEAP32[$77>>2] = 0; - $78 = HEAP32[$3>>2]|0; - $79 = (($78) + 26|0); - $80 = HEAP16[$79>>1]|0; - $81 = $80&65535; - $82 = $81 | 1; - $83 = $82&65535; - HEAP16[$79>>1] = $83; - } - $84 = HEAP32[$4>>2]|0; - $85 = HEAP32[$3>>2]|0; - $86 = (($85) + 28|0); - HEAP32[$86>>2] = $84; - } - $87 = HEAP32[$3>>2]|0; - $88 = (($87) + 20|0); - $89 = HEAP32[$88>>2]|0; - HEAP32[$pTree>>2] = $89; - L21: while(1) { - $90 = HEAP32[$pTree>>2]|0; - $91 = ($90|0)!=(0|0); - if (!($91)) { - label = 25; - break; - } - $92 = HEAP32[$pTree>>2]|0; - $93 = (($92) + 12|0); - $94 = HEAP32[$93>>2]|0; - HEAP32[$p>>2] = $94; - while(1) { - $95 = HEAP32[$p>>2]|0; - $96 = ($95|0)!=(0|0); - if (!($96)) { - break; - } - $97 = HEAP32[$p>>2]|0; - $98 = $97; - $99 = $98; - $100 = HEAP32[$99>>2]|0; - $101 = (($98) + 4)|0; - $102 = $101; - $103 = HEAP32[$102>>2]|0; - $104 = $5; - $105 = $104; - $106 = HEAP32[$105>>2]|0; - $107 = (($104) + 4)|0; - $108 = $107; - $109 = HEAP32[$108>>2]|0; - $110 = ($103|0)<($109|0); - $111 = ($103|0)==($109|0); - $112 = ($100>>>0)<($106>>>0); - $113 = $111 & $112; - $114 = $110 | $113; - $115 = HEAP32[$p>>2]|0; - if ($114) { - $116 = (($115) + 8|0); - $117 = HEAP32[$116>>2]|0; - HEAP32[$p>>2] = $117; - continue; - } - $118 = $115; - $119 = $118; - $120 = HEAP32[$119>>2]|0; - $121 = (($118) + 4)|0; - $122 = $121; - $123 = HEAP32[$122>>2]|0; - $124 = $5; - $125 = $124; - $126 = HEAP32[$125>>2]|0; - $127 = (($124) + 4)|0; - $128 = $127; - $129 = HEAP32[$128>>2]|0; - $130 = ($123|0)>($129|0); - $131 = ($123|0)==($129|0); - $132 = ($120>>>0)>($126>>>0); - $133 = $131 & $132; - $134 = $130 | $133; - if (!($134)) { - label = 23; - break L21; - } - $135 = HEAP32[$p>>2]|0; - $136 = (($135) + 12|0); - $137 = HEAP32[$136>>2]|0; - HEAP32[$p>>2] = $137; - } - $138 = HEAP32[$pTree>>2]|0; - $139 = (($138) + 8|0); - $140 = HEAP32[$139>>2]|0; - HEAP32[$pTree>>2] = $140; - } - if ((label|0) == 23) { - HEAP32[$2>>2] = 1; - $141 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($141|0); - } - else if ((label|0) == 25) { - HEAP32[$2>>2] = 0; - $141 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($141|0); - } - return 0|0; -} -function _sqlite3PagerOkToChangeJournalMode($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $pPager; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 16|0); - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - $6 = ($5|0)>=(3); - if ($6) { - HEAP32[$0>>2] = 0; - $25 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($25|0); - } - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 64|0); - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)!=(0|0); - if ($11) { - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 72|0); - $14 = $13; - $15 = $14; - $16 = HEAP32[$15>>2]|0; - $17 = (($14) + 4)|0; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = ($19|0)>(0); - $21 = ($19|0)==(0); - $22 = ($16>>>0)>(0); - $23 = $21 & $22; - $24 = $20 | $23; - if ($24) { - HEAP32[$0>>2] = 0; - $25 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($25|0); - } - } - HEAP32[$0>>2] = 1; - $25 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($25|0); -} -function _sqlite3PagerWalSupported($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pMethods = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pMethods = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 60|0); - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - HEAP32[$pMethods>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 4|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = ($8|0)!=(0); - if ($9) { - $18 = 1; - $17 = $18&1; - STACKTOP = sp;return ($17|0); - } - $10 = HEAP32[$pMethods>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)>=(2); - if (!($12)) { - $18 = 0; - $17 = $18&1; - STACKTOP = sp;return ($17|0); - } - $13 = HEAP32[$pMethods>>2]|0; - $14 = (($13) + 52|0); - $15 = HEAP32[$14>>2]|0; - $16 = ($15|0)!=(0|0); - $18 = $16; - $17 = $18&1; - STACKTOP = sp;return ($17|0); -} -function _sqlite3PagerCloseWal($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $logexists = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $rc = sp + 4|0; - $logexists = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$rc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 208|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - HEAP32[$logexists>>2] = 0; - $5 = HEAP32[$0>>2]|0; - $6 = (_pagerLockDb($5,1)|0); - HEAP32[$rc>>2] = $6; - $7 = HEAP32[$rc>>2]|0; - $8 = ($7|0)==(0); - if ($8) { - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 212|0); - $13 = HEAP32[$12>>2]|0; - $14 = (_sqlite3OsAccess($10,$13,0,$logexists)|0); - HEAP32[$rc>>2] = $14; - } - $15 = HEAP32[$rc>>2]|0; - $16 = ($15|0)==(0); - if ($16) { - $17 = HEAP32[$logexists>>2]|0; - $18 = ($17|0)!=(0); - if ($18) { - $19 = HEAP32[$0>>2]|0; - $20 = (_pagerOpenWal($19)|0); - HEAP32[$rc>>2] = $20; - } - } - } - $21 = HEAP32[$rc>>2]|0; - $22 = ($21|0)==(0); - if (!($22)) { - $48 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($48|0); - } - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 208|0); - $25 = HEAP32[$24>>2]|0; - $26 = ($25|0)!=(0|0); - if (!($26)) { - $48 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($48|0); - } - $27 = HEAP32[$0>>2]|0; - $28 = (_pagerExclusiveLock($27)|0); - HEAP32[$rc>>2] = $28; - $29 = HEAP32[$rc>>2]|0; - $30 = ($29|0)==(0); - if (!($30)) { - $48 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($48|0); - } - $31 = HEAP32[$0>>2]|0; - $32 = (($31) + 208|0); - $33 = HEAP32[$32>>2]|0; - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 9|0); - $36 = HEAP8[$35>>0]|0; - $37 = $36&255; - $38 = HEAP32[$0>>2]|0; - $39 = (($38) + 152|0); - $40 = HEAP32[$39>>2]|0; - $41 = HEAP32[$0>>2]|0; - $42 = (($41) + 200|0); - $43 = HEAP32[$42>>2]|0; - $44 = (_sqlite3WalClose($33,$37,$40,$43)|0); - HEAP32[$rc>>2] = $44; - $45 = HEAP32[$0>>2]|0; - $46 = (($45) + 208|0); - HEAP32[$46>>2] = 0; - $47 = HEAP32[$0>>2]|0; - _pagerFixMaplimit($47); - $48 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($48|0); -} -function _sqlite3PagerSetJournalMode($pPager,$eMode) { - $pPager = $pPager|0; - $eMode = $eMode|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $9 = 0, $eOld = 0, $or$cond = 0, $rc = 0, $state = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $eOld = sp + 16|0; - $rc = sp + 4|0; - $state = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $eMode; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 5|0); - $4 = HEAP8[$3>>0]|0; - HEAP8[$eOld>>0] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 15|0); - $7 = HEAP8[$6>>0]|0; - $8 = ($7<<24>>24)!=(0); - if ($8) { - $9 = HEAP32[$1>>2]|0; - $10 = ($9|0)!=(4); - $11 = HEAP32[$1>>2]|0; - $12 = ($11|0)!=(2); - $or$cond = $10 & $12; - if ($or$cond) { - $13 = HEAP8[$eOld>>0]|0; - $14 = $13&255; - HEAP32[$1>>2] = $14; - } - } - $15 = HEAP32[$1>>2]|0; - $16 = HEAP8[$eOld>>0]|0; - $17 = $16&255; - $18 = ($15|0)!=($17|0); - do { - if ($18) { - $19 = HEAP32[$1>>2]|0; - $20 = $19&255; - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 5|0); - HEAP8[$22>>0] = $20; - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 4|0); - $25 = HEAP8[$24>>0]|0; - $26 = ($25<<24>>24)!=(0); - if (!($26)) { - $27 = HEAP8[$eOld>>0]|0; - $28 = $27&255; - $29 = $28 & 5; - $30 = ($29|0)==(1); - if ($30) { - $31 = HEAP32[$1>>2]|0; - $32 = $31 & 1; - $33 = ($32|0)==(0); - if ($33) { - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 64|0); - $36 = HEAP32[$35>>2]|0; - (_sqlite3OsClose($36)|0); - $37 = HEAP32[$0>>2]|0; - $38 = (($37) + 17|0); - $39 = HEAP8[$38>>0]|0; - $40 = $39&255; - $41 = ($40|0)>=(2); - if ($41) { - $42 = HEAP32[$0>>2]|0; - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$0>>2]|0; - $45 = (($44) + 172|0); - $46 = HEAP32[$45>>2]|0; - (_sqlite3OsDelete($43,$46,0)|0); - break; - } - HEAP32[$rc>>2] = 0; - $47 = HEAP32[$0>>2]|0; - $48 = (($47) + 16|0); - $49 = HEAP8[$48>>0]|0; - $50 = $49&255; - HEAP32[$state>>2] = $50; - $51 = HEAP32[$state>>2]|0; - $52 = ($51|0)==(0); - if ($52) { - $53 = HEAP32[$0>>2]|0; - $54 = (_sqlite3PagerSharedLock($53)|0); - HEAP32[$rc>>2] = $54; - } - $55 = HEAP32[$0>>2]|0; - $56 = (($55) + 16|0); - $57 = HEAP8[$56>>0]|0; - $58 = $57&255; - $59 = ($58|0)==(1); - if ($59) { - $60 = HEAP32[$0>>2]|0; - $61 = (_pagerLockDb($60,2)|0); - HEAP32[$rc>>2] = $61; - } - $62 = HEAP32[$rc>>2]|0; - $63 = ($62|0)==(0); - if ($63) { - $64 = HEAP32[$0>>2]|0; - $65 = HEAP32[$64>>2]|0; - $66 = HEAP32[$0>>2]|0; - $67 = (($66) + 172|0); - $68 = HEAP32[$67>>2]|0; - (_sqlite3OsDelete($65,$68,0)|0); - } - $69 = HEAP32[$rc>>2]|0; - $70 = ($69|0)==(0); - if ($70) { - $71 = HEAP32[$state>>2]|0; - $72 = ($71|0)==(1); - if ($72) { - $73 = HEAP32[$0>>2]|0; - (_pagerUnlockDb($73,1)|0); - break; - } - } - $74 = HEAP32[$state>>2]|0; - $75 = ($74|0)==(0); - if ($75) { - $76 = HEAP32[$0>>2]|0; - _pager_unlock($76); - } - } - } - } - } - } while(0); - $77 = HEAP32[$0>>2]|0; - $78 = (($77) + 5|0); - $79 = HEAP8[$78>>0]|0; - $80 = $79&255; - STACKTOP = sp;return ($80|0); -} -function _sqlite3RunVacuum($pzErrMsg,$db) { - $pzErrMsg = $pzErrMsg|0; - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; - var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $isMemDb = 0; - var $meta = 0, $nDb = 0, $nRes = 0, $pDb = 0, $pMain = 0, $pTemp = 0, $rc = 0, $saved_flags = 0, $saved_nChange = 0, $saved_nTotalChange = 0, $saved_xTrace = 0, $vararg_buffer1 = 0, $zSql = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $vararg_buffer1 = sp; - $0 = sp + 68|0; - $1 = sp + 64|0; - $2 = sp + 60|0; - $rc = sp + 56|0; - $pMain = sp + 52|0; - $pTemp = sp + 48|0; - $zSql = sp + 44|0; - $saved_flags = sp + 40|0; - $saved_nChange = sp + 36|0; - $saved_nTotalChange = sp + 32|0; - $saved_xTrace = sp + 28|0; - $pDb = sp + 24|0; - $isMemDb = sp + 20|0; - $nRes = sp + 16|0; - $nDb = sp + 12|0; - $meta = sp + 8|0; - $i = sp + 4|0; - HEAP32[$1>>2] = $pzErrMsg; - HEAP32[$2>>2] = $db; - HEAP32[$rc>>2] = 0; - HEAP32[$zSql>>2] = 0; - HEAP32[$pDb>>2] = 0; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 62|0); - $5 = HEAP8[$4>>0]|0; - $6 = ($5<<24>>24)!=(0); - if (!($6)) { - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$2>>2]|0; - _sqlite3SetString($7,$8,31928,$vararg_buffer1); - HEAP32[$0>>2] = 1; - $237 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($237|0); - } - $9 = HEAP32[$2>>2]|0; - $10 = (($9) + 140|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)>(1); - if ($12) { - $13 = HEAP32[$1>>2]|0; - $14 = HEAP32[$2>>2]|0; - _sqlite3SetString($13,$14,31968,$vararg_buffer1); - HEAP32[$0>>2] = 1; - $237 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($237|0); - } - $15 = HEAP32[$2>>2]|0; - $16 = (($15) + 24|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$saved_flags>>2] = $17; - $18 = HEAP32[$2>>2]|0; - $19 = (($18) + 80|0); - $20 = HEAP32[$19>>2]|0; - HEAP32[$saved_nChange>>2] = $20; - $21 = HEAP32[$2>>2]|0; - $22 = (($21) + 84|0); - $23 = HEAP32[$22>>2]|0; - HEAP32[$saved_nTotalChange>>2] = $23; - $24 = HEAP32[$2>>2]|0; - $25 = (($24) + 164|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$saved_xTrace>>2] = $26; - $27 = HEAP32[$2>>2]|0; - $28 = (($27) + 24|0); - $29 = HEAP32[$28>>2]|0; - $30 = $29 | 2107392; - HEAP32[$28>>2] = $30; - $31 = HEAP32[$2>>2]|0; - $32 = (($31) + 24|0); - $33 = HEAP32[$32>>2]|0; - $34 = $33 & -655361; - HEAP32[$32>>2] = $34; - $35 = HEAP32[$2>>2]|0; - $36 = (($35) + 164|0); - HEAP32[$36>>2] = 0; - $37 = HEAP32[$2>>2]|0; - $38 = (($37) + 16|0); - $39 = HEAP32[$38>>2]|0; - $40 = (($39) + 4|0); - $41 = HEAP32[$40>>2]|0; - HEAP32[$pMain>>2] = $41; - $42 = HEAP32[$pMain>>2]|0; - $43 = (_sqlite3BtreePager($42)|0); - $44 = (_sqlite3PagerIsMemdb($43)|0); - HEAP32[$isMemDb>>2] = $44; - $45 = HEAP32[$2>>2]|0; - $46 = (($45) + 20|0); - $47 = HEAP32[$46>>2]|0; - HEAP32[$nDb>>2] = $47; - $48 = HEAP32[$2>>2]|0; - $49 = (_sqlite3TempInMemory($48)|0); - $50 = ($49|0)!=(0); - if ($50) { - HEAP32[$zSql>>2] = 32016; - } else { - HEAP32[$zSql>>2] = 32048; - } - $51 = HEAP32[$2>>2]|0; - $52 = HEAP32[$1>>2]|0; - $53 = HEAP32[$zSql>>2]|0; - $54 = (_execSql($51,$52,$53)|0); - HEAP32[$rc>>2] = $54; - $55 = HEAP32[$2>>2]|0; - $56 = (($55) + 20|0); - $57 = HEAP32[$56>>2]|0; - $58 = HEAP32[$nDb>>2]|0; - $59 = ($57|0)>($58|0); - if ($59) { - $60 = HEAP32[$2>>2]|0; - $61 = (($60) + 20|0); - $62 = HEAP32[$61>>2]|0; - $63 = (($62) - 1)|0; - $64 = HEAP32[$2>>2]|0; - $65 = (($64) + 16|0); - $66 = HEAP32[$65>>2]|0; - $67 = (($66) + ($63<<4)|0); - HEAP32[$pDb>>2] = $67; - } - $68 = HEAP32[$rc>>2]|0; - $69 = ($68|0)!=(0); - L16: do { - if (!($69)) { - $70 = HEAP32[$2>>2]|0; - $71 = (($70) + 20|0); - $72 = HEAP32[$71>>2]|0; - $73 = (($72) - 1)|0; - $74 = HEAP32[$2>>2]|0; - $75 = (($74) + 16|0); - $76 = HEAP32[$75>>2]|0; - $77 = (($76) + ($73<<4)|0); - $78 = (($77) + 4|0); - $79 = HEAP32[$78>>2]|0; - HEAP32[$pTemp>>2] = $79; - $80 = HEAP32[$pTemp>>2]|0; - (_sqlite3BtreeCommit($80)|0); - $81 = HEAP32[$pMain>>2]|0; - $82 = (_sqlite3BtreeGetReserve($81)|0); - HEAP32[$nRes>>2] = $82; - $83 = HEAP32[$2>>2]|0; - $84 = HEAP32[$1>>2]|0; - $85 = (_execSql($83,$84,32072)|0); - HEAP32[$rc>>2] = $85; - $86 = HEAP32[$rc>>2]|0; - $87 = ($86|0)!=(0); - if (!($87)) { - $88 = HEAP32[$2>>2]|0; - $89 = HEAP32[$1>>2]|0; - $90 = (_execSql($88,$89,32112)|0); - HEAP32[$rc>>2] = $90; - $91 = HEAP32[$rc>>2]|0; - $92 = ($91|0)!=(0); - if (!($92)) { - $93 = HEAP32[$pMain>>2]|0; - $94 = (_sqlite3BtreeBeginTrans($93,2)|0); - HEAP32[$rc>>2] = $94; - $95 = HEAP32[$rc>>2]|0; - $96 = ($95|0)!=(0); - if (!($96)) { - $97 = HEAP32[$pMain>>2]|0; - $98 = (_sqlite3BtreePager($97)|0); - $99 = (_sqlite3PagerGetJournalMode($98)|0); - $100 = ($99|0)==(5); - if ($100) { - $101 = HEAP32[$2>>2]|0; - $102 = (($101) + 72|0); - HEAP32[$102>>2] = 0; - } - $103 = HEAP32[$pTemp>>2]|0; - $104 = HEAP32[$pMain>>2]|0; - $105 = (_sqlite3BtreeGetPageSize($104)|0); - $106 = HEAP32[$nRes>>2]|0; - $107 = (_sqlite3BtreeSetPageSize($103,$105,$106,0)|0); - $108 = ($107|0)!=(0); - do { - if (!($108)) { - $109 = HEAP32[$isMemDb>>2]|0; - $110 = ($109|0)!=(0); - if (!($110)) { - $111 = HEAP32[$pTemp>>2]|0; - $112 = HEAP32[$2>>2]|0; - $113 = (($112) + 72|0); - $114 = HEAP32[$113>>2]|0; - $115 = HEAP32[$nRes>>2]|0; - $116 = (_sqlite3BtreeSetPageSize($111,$114,$115,0)|0); - $117 = ($116|0)!=(0); - if ($117) { - break; - } - } - $118 = HEAP32[$2>>2]|0; - $119 = (($118) + 64|0); - $120 = HEAP8[$119>>0]|0; - $121 = $120&255; - $122 = ($121|0)!=(0); - if (!($122)) { - $123 = HEAP32[$pTemp>>2]|0; - $124 = HEAP32[$2>>2]|0; - $125 = (($124) + 66|0); - $126 = HEAP8[$125>>0]|0; - $127 = $126 << 24 >> 24; - $128 = ($127|0)>=(0); - if ($128) { - $129 = HEAP32[$2>>2]|0; - $130 = (($129) + 66|0); - $131 = HEAP8[$130>>0]|0; - $132 = $131 << 24 >> 24; - $135 = $132; - } else { - $133 = HEAP32[$pMain>>2]|0; - $134 = (_sqlite3BtreeGetAutoVacuum($133)|0); - $135 = $134; - } - (_sqlite3BtreeSetAutoVacuum($123,$135)|0); - $136 = HEAP32[$2>>2]|0; - $137 = HEAP32[$1>>2]|0; - $138 = (_execExecSql($136,$137,32120)|0); - HEAP32[$rc>>2] = $138; - $139 = HEAP32[$rc>>2]|0; - $140 = ($139|0)!=(0); - if ($140) { - break L16; - } - $141 = HEAP32[$2>>2]|0; - $142 = HEAP32[$1>>2]|0; - $143 = (_execExecSql($141,$142,32272)|0); - HEAP32[$rc>>2] = $143; - $144 = HEAP32[$rc>>2]|0; - $145 = ($144|0)!=(0); - if ($145) { - break L16; - } - $146 = HEAP32[$2>>2]|0; - $147 = HEAP32[$1>>2]|0; - $148 = (_execExecSql($146,$147,32376)|0); - HEAP32[$rc>>2] = $148; - $149 = HEAP32[$rc>>2]|0; - $150 = ($149|0)!=(0); - if ($150) { - break L16; - } - $151 = HEAP32[$2>>2]|0; - $152 = HEAP32[$1>>2]|0; - $153 = (_execExecSql($151,$152,32496)|0); - HEAP32[$rc>>2] = $153; - $154 = HEAP32[$rc>>2]|0; - $155 = ($154|0)!=(0); - if ($155) { - break L16; - } - $156 = HEAP32[$2>>2]|0; - $157 = HEAP32[$1>>2]|0; - $158 = (_execExecSql($156,$157,32696)|0); - HEAP32[$rc>>2] = $158; - $159 = HEAP32[$rc>>2]|0; - $160 = ($159|0)!=(0); - if ($160) { - break L16; - } - $161 = HEAP32[$2>>2]|0; - $162 = HEAP32[$1>>2]|0; - $163 = (_execExecSql($161,$162,32816)|0); - HEAP32[$rc>>2] = $163; - $164 = HEAP32[$rc>>2]|0; - $165 = ($164|0)!=(0); - if ($165) { - break L16; - } - $166 = HEAP32[$2>>2]|0; - $167 = HEAP32[$1>>2]|0; - $168 = (_execSql($166,$167,32976)|0); - HEAP32[$rc>>2] = $168; - $169 = HEAP32[$rc>>2]|0; - $170 = ($169|0)!=(0); - if ($170) { - break L16; - } - HEAP32[$i>>2] = 0; - while(1) { - $171 = HEAP32[$i>>2]|0; - $172 = ($171|0)<(10); - $173 = HEAP32[$pMain>>2]|0; - if (!($172)) { - break; - } - $174 = HEAP32[$i>>2]|0; - $175 = (33160 + ($174)|0); - $176 = HEAP8[$175>>0]|0; - $177 = $176&255; - _sqlite3BtreeGetMeta($173,$177,$meta); - $178 = HEAP32[$pTemp>>2]|0; - $179 = HEAP32[$i>>2]|0; - $180 = (33160 + ($179)|0); - $181 = HEAP8[$180>>0]|0; - $182 = $181&255; - $183 = HEAP32[$meta>>2]|0; - $184 = HEAP32[$i>>2]|0; - $185 = (($184) + 1)|0; - $186 = (33160 + ($185)|0); - $187 = HEAP8[$186>>0]|0; - $188 = $187&255; - $189 = (($183) + ($188))|0; - $190 = (_sqlite3BtreeUpdateMeta($178,$182,$189)|0); - HEAP32[$rc>>2] = $190; - $191 = HEAP32[$rc>>2]|0; - $192 = ($191|0)!=(0); - if ($192) { - break L16; - } - $193 = HEAP32[$i>>2]|0; - $194 = (($193) + 2)|0; - HEAP32[$i>>2] = $194; - } - $195 = HEAP32[$pTemp>>2]|0; - $196 = (_sqlite3BtreeCopyFile($173,$195)|0); - HEAP32[$rc>>2] = $196; - $197 = HEAP32[$rc>>2]|0; - $198 = ($197|0)!=(0); - if ($198) { - break L16; - } - $199 = HEAP32[$pTemp>>2]|0; - $200 = (_sqlite3BtreeCommit($199)|0); - HEAP32[$rc>>2] = $200; - $201 = HEAP32[$rc>>2]|0; - $202 = ($201|0)!=(0); - if ($202) { - break L16; - } - $203 = HEAP32[$pMain>>2]|0; - $204 = HEAP32[$pTemp>>2]|0; - $205 = (_sqlite3BtreeGetAutoVacuum($204)|0); - (_sqlite3BtreeSetAutoVacuum($203,$205)|0); - $206 = HEAP32[$pMain>>2]|0; - $207 = HEAP32[$pTemp>>2]|0; - $208 = (_sqlite3BtreeGetPageSize($207)|0); - $209 = HEAP32[$nRes>>2]|0; - $210 = (_sqlite3BtreeSetPageSize($206,$208,$209,1)|0); - HEAP32[$rc>>2] = $210; - break L16; - } - } - } while(0); - HEAP32[$rc>>2] = 7; - } - } - } - } - } while(0); - $211 = HEAP32[$saved_flags>>2]|0; - $212 = HEAP32[$2>>2]|0; - $213 = (($212) + 24|0); - HEAP32[$213>>2] = $211; - $214 = HEAP32[$saved_nChange>>2]|0; - $215 = HEAP32[$2>>2]|0; - $216 = (($215) + 80|0); - HEAP32[$216>>2] = $214; - $217 = HEAP32[$saved_nTotalChange>>2]|0; - $218 = HEAP32[$2>>2]|0; - $219 = (($218) + 84|0); - HEAP32[$219>>2] = $217; - $220 = HEAP32[$saved_xTrace>>2]|0; - $221 = HEAP32[$2>>2]|0; - $222 = (($221) + 164|0); - HEAP32[$222>>2] = $220; - $223 = HEAP32[$pMain>>2]|0; - (_sqlite3BtreeSetPageSize($223,-1,-1,1)|0); - $224 = HEAP32[$2>>2]|0; - $225 = (($224) + 62|0); - HEAP8[$225>>0] = 1; - $226 = HEAP32[$pDb>>2]|0; - $227 = ($226|0)!=(0|0); - if ($227) { - $228 = HEAP32[$pDb>>2]|0; - $229 = (($228) + 4|0); - $230 = HEAP32[$229>>2]|0; - (_sqlite3BtreeClose($230)|0); - $231 = HEAP32[$pDb>>2]|0; - $232 = (($231) + 4|0); - HEAP32[$232>>2] = 0; - $233 = HEAP32[$pDb>>2]|0; - $234 = (($233) + 12|0); - HEAP32[$234>>2] = 0; - } - $235 = HEAP32[$2>>2]|0; - _sqlite3ResetAllSchemasOfConnection($235); - $236 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $236; - $237 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($237|0); -} -function _sqlite3BtreeIncrVacuum($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nFin = 0, $nFree = 0, $nOrig = 0, $pBt = 0, $rc = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $rc = sp + 16|0; - $pBt = sp + 12|0; - $nOrig = sp + 8|0; - $nFree = sp + 4|0; - $nFin = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pBt>>2] = $3; - $4 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($4); - $5 = HEAP32[$pBt>>2]|0; - $6 = (($5) + 17|0); - $7 = HEAP8[$6>>0]|0; - $8 = ($7<<24>>24)!=(0); - if (!($8)) { - HEAP32[$rc>>2] = 101; - $54 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($54|0); - } - $9 = HEAP32[$pBt>>2]|0; - $10 = (_btreePagecount($9)|0); - HEAP32[$nOrig>>2] = $10; - $11 = HEAP32[$pBt>>2]|0; - $12 = (($11) + 12|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + 56|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + 36|0); - $17 = (_sqlite3Get4byte($16)|0); - HEAP32[$nFree>>2] = $17; - $18 = HEAP32[$pBt>>2]|0; - $19 = HEAP32[$nOrig>>2]|0; - $20 = HEAP32[$nFree>>2]|0; - $21 = (_finalDbSize($18,$19,$20)|0); - HEAP32[$nFin>>2] = $21; - $22 = HEAP32[$nOrig>>2]|0; - $23 = HEAP32[$nFin>>2]|0; - $24 = ($22>>>0)<($23>>>0); - if ($24) { - $25 = (_sqlite3CorruptError(54318)|0); - HEAP32[$rc>>2] = $25; - $54 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($54|0); - } - $26 = HEAP32[$nFree>>2]|0; - $27 = ($26>>>0)>(0); - if (!($27)) { - HEAP32[$rc>>2] = 101; - $54 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($54|0); - } - $28 = HEAP32[$pBt>>2]|0; - $29 = (_saveAllCursors($28,0,0)|0); - HEAP32[$rc>>2] = $29; - $30 = HEAP32[$rc>>2]|0; - $31 = ($30|0)==(0); - if ($31) { - $32 = HEAP32[$pBt>>2]|0; - _invalidateAllOverflowCache($32); - $33 = HEAP32[$pBt>>2]|0; - $34 = HEAP32[$nFin>>2]|0; - $35 = HEAP32[$nOrig>>2]|0; - $36 = (_incrVacuumStep($33,$34,$35,0)|0); - HEAP32[$rc>>2] = $36; - } - $37 = HEAP32[$rc>>2]|0; - $38 = ($37|0)==(0); - if (!($38)) { - $54 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($54|0); - } - $39 = HEAP32[$pBt>>2]|0; - $40 = (($39) + 12|0); - $41 = HEAP32[$40>>2]|0; - $42 = (($41) + 68|0); - $43 = HEAP32[$42>>2]|0; - $44 = (_sqlite3PagerWrite($43)|0); - HEAP32[$rc>>2] = $44; - $45 = HEAP32[$pBt>>2]|0; - $46 = (($45) + 12|0); - $47 = HEAP32[$46>>2]|0; - $48 = (($47) + 56|0); - $49 = HEAP32[$48>>2]|0; - $50 = (($49) + 28|0); - $51 = HEAP32[$pBt>>2]|0; - $52 = (($51) + 44|0); - $53 = HEAP32[$52>>2]|0; - _sqlite3Put4byte($50,$53); - $54 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($54|0); -} -function _sqlite3BtreeLockTable($p,$iTab,$isWriteLock) { - $p = $p|0; - $iTab = $iTab|0; - $isWriteLock = $isWriteLock|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $lockType = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp + 13|0; - $rc = sp; - $lockType = sp + 12|0; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $iTab; - HEAP8[$2>>0] = $isWriteLock; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 9|0); - $5 = HEAP8[$4>>0]|0; - $6 = ($5<<24>>24)!=(0); - if (!($6)) { - $22 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($22|0); - } - $7 = HEAP8[$2>>0]|0; - $8 = $7&255; - $9 = (1 + ($8))|0; - $10 = $9&255; - HEAP8[$lockType>>0] = $10; - $11 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($11); - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = HEAP8[$lockType>>0]|0; - $15 = (_querySharedCacheTableLock($12,$13,$14)|0); - HEAP32[$rc>>2] = $15; - $16 = HEAP32[$rc>>2]|0; - $17 = ($16|0)==(0); - if (!($17)) { - $22 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($22|0); - } - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$1>>2]|0; - $20 = HEAP8[$lockType>>0]|0; - $21 = (_setSharedCacheTableLock($18,$19,$20)|0); - HEAP32[$rc>>2] = $21; - $22 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($22|0); -} -function _sqlite3VtabBegin($db,$pVTab) { - $db = $db|0; - $pVTab = $pVTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pModule = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $rc = sp + 8|0; - $pModule = sp + 4|0; - $i = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pVTab; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 296|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)>(0); - if ($6) { - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 320|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)==(0|0); - if ($10) { - HEAP32[$0>>2] = 6; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); - } - } - $11 = HEAP32[$2>>2]|0; - $12 = ($11|0)!=(0|0); - if (!($12)) { - HEAP32[$0>>2] = 0; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); - } - $13 = HEAP32[$2>>2]|0; - $14 = (($13) + 8|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$15>>2]|0; - HEAP32[$pModule>>2] = $16; - $17 = HEAP32[$pModule>>2]|0; - $18 = (($17) + 56|0); - $19 = HEAP32[$18>>2]|0; - $20 = ($19|0)!=(0|0); - if ($20) { - HEAP32[$i>>2] = 0; - while(1) { - $21 = HEAP32[$i>>2]|0; - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 296|0); - $24 = HEAP32[$23>>2]|0; - $25 = ($21|0)<($24|0); - if (!($25)) { - break; - } - $26 = HEAP32[$i>>2]|0; - $27 = HEAP32[$1>>2]|0; - $28 = (($27) + 320|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + ($26<<2)|0); - $31 = HEAP32[$30>>2]|0; - $32 = HEAP32[$2>>2]|0; - $33 = ($31|0)==($32|0); - if ($33) { - label = 10; - break; - } - $34 = HEAP32[$i>>2]|0; - $35 = (($34) + 1)|0; - HEAP32[$i>>2] = $35; - } - if ((label|0) == 10) { - HEAP32[$0>>2] = 0; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); - } - $36 = HEAP32[$1>>2]|0; - $37 = (_growVTrans($36)|0); - HEAP32[$rc>>2] = $37; - $38 = HEAP32[$rc>>2]|0; - $39 = ($38|0)==(0); - if ($39) { - $40 = HEAP32[$pModule>>2]|0; - $41 = (($40) + 56|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$2>>2]|0; - $44 = (($43) + 8|0); - $45 = HEAP32[$44>>2]|0; - $46 = (FUNCTION_TABLE_ii[$42 & 31]($45)|0); - HEAP32[$rc>>2] = $46; - $47 = HEAP32[$rc>>2]|0; - $48 = ($47|0)==(0); - if ($48) { - $49 = HEAP32[$1>>2]|0; - $50 = HEAP32[$2>>2]|0; - _addToVTrans($49,$50); - } - } - } - $51 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $51; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); -} -function _sqlite3VtabCallCreate($db,$iDb,$zTab,$pzErr) { - $db = $db|0; - $iDb = $iDb|0; - $zTab = $zTab|0; - $pzErr = $pzErr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pMod = 0, $pTab = 0, $rc = 0, $vararg_buffer = 0, $zMod = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $rc = sp + 16|0; - $pTab = sp + 12|0; - $pMod = sp + 8|0; - $zMod = sp + 4|0; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $iDb; - HEAP32[$2>>2] = $zTab; - HEAP32[$3>>2] = $pzErr; - HEAP32[$rc>>2] = 0; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 16|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + ($6<<4)|0); - $11 = HEAP32[$10>>2]|0; - $12 = (_sqlite3FindTable($4,$5,$11)|0); - HEAP32[$pTab>>2] = $12; - $13 = HEAP32[$pTab>>2]|0; - $14 = (($13) + 56|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$15>>2]|0; - HEAP32[$zMod>>2] = $16; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 300|0); - $19 = HEAP32[$zMod>>2]|0; - $20 = HEAP32[$zMod>>2]|0; - $21 = (_sqlite3Strlen30($20)|0); - $22 = (_sqlite3HashFind($18,$19,$21)|0); - HEAP32[$pMod>>2] = $22; - $23 = HEAP32[$pMod>>2]|0; - $24 = ($23|0)!=(0|0); - $25 = HEAP32[$0>>2]|0; - if ($24) { - $29 = HEAP32[$pTab>>2]|0; - $30 = HEAP32[$pMod>>2]|0; - $31 = HEAP32[$pMod>>2]|0; - $32 = HEAP32[$31>>2]|0; - $33 = (($32) + 4|0); - $34 = HEAP32[$33>>2]|0; - $35 = HEAP32[$3>>2]|0; - $36 = (_vtabCallConstructor($25,$29,$30,$34,$35)|0); - HEAP32[$rc>>2] = $36; - } else { - $26 = HEAP32[$zMod>>2]|0; - HEAP32[$vararg_buffer>>2] = $26; - $27 = (_sqlite3MPrintf($25,17848,$vararg_buffer)|0); - $28 = HEAP32[$3>>2]|0; - HEAP32[$28>>2] = $27; - HEAP32[$rc>>2] = 1; - } - $37 = HEAP32[$rc>>2]|0; - $38 = ($37|0)==(0); - if (!($38)) { - $51 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($51|0); - } - $39 = HEAP32[$0>>2]|0; - $40 = HEAP32[$pTab>>2]|0; - $41 = (_sqlite3GetVTable($39,$40)|0); - $42 = ($41|0)!=(0|0); - if (!($42)) { - $51 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($51|0); - } - $43 = HEAP32[$0>>2]|0; - $44 = (_growVTrans($43)|0); - HEAP32[$rc>>2] = $44; - $45 = HEAP32[$rc>>2]|0; - $46 = ($45|0)==(0); - if (!($46)) { - $51 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($51|0); - } - $47 = HEAP32[$0>>2]|0; - $48 = HEAP32[$0>>2]|0; - $49 = HEAP32[$pTab>>2]|0; - $50 = (_sqlite3GetVTable($48,$49)|0); - _addToVTrans($47,$50); - $51 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($51|0); -} -function _sqlite3VtabCallDestroy($db,$iDb,$zTab) { - $db = $db|0; - $iDb = $iDb|0; - $zTab = $zTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0; - var $pTab = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $rc = sp + 8|0; - $pTab = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $iDb; - HEAP32[$2>>2] = $zTab; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$2>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 16|0); - $8 = HEAP32[$7>>2]|0; - $9 = (($8) + ($5<<4)|0); - $10 = HEAP32[$9>>2]|0; - $11 = (_sqlite3FindTable($3,$4,$10)|0); - HEAP32[$pTab>>2] = $11; - $12 = HEAP32[$pTab>>2]|0; - $13 = ($12|0)!=(0|0); - if (!($13)) { - $38 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($38|0); - } - $14 = HEAP32[$pTab>>2]|0; - $15 = (($14) + 60|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($16|0)!=(0|0); - if (!($17)) { - $38 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($38|0); - } - $18 = HEAP32[$0>>2]|0; - $19 = HEAP32[$pTab>>2]|0; - $20 = (_vtabDisconnectAll($18,$19)|0); - HEAP32[$p>>2] = $20; - $21 = HEAP32[$p>>2]|0; - $22 = (($21) + 4|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + 20|0); - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$p>>2]|0; - $28 = (($27) + 8|0); - $29 = HEAP32[$28>>2]|0; - $30 = (FUNCTION_TABLE_ii[$26 & 31]($29)|0); - HEAP32[$rc>>2] = $30; - $31 = HEAP32[$rc>>2]|0; - $32 = ($31|0)==(0); - if (!($32)) { - $38 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($38|0); - } - $33 = HEAP32[$p>>2]|0; - $34 = (($33) + 8|0); - HEAP32[$34>>2] = 0; - $35 = HEAP32[$pTab>>2]|0; - $36 = (($35) + 60|0); - HEAP32[$36>>2] = 0; - $37 = HEAP32[$p>>2]|0; - _sqlite3VtabUnlock($37); - $38 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($38|0); -} -function _sqlite3BtreeMaxPageCount($p,$mxPage) { - $p = $p|0; - $mxPage = $mxPage|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $n = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $mxPage; - $2 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($2); - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 4|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (_sqlite3PagerMaxPageCount($6,$7)|0); - HEAP32[$n>>2] = $8; - $9 = HEAP32[$n>>2]|0; - STACKTOP = sp;return ($9|0); -} -function _sqlite3VdbeExpandSql($p,$zRawSql) { - $p = $p|0; - $zRawSql = $zRawSql|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; - var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0.0, $99 = 0, $db = 0, $enc = 0; - var $i = 0, $idx = 0, $n = 0, $nOut = 0, $nOut1 = 0, $nToken = 0, $nextIndex = 0, $out = 0, $pVar = 0, $utf8 = 0, $vararg_buffer11 = 0, $vararg_ptr7 = 0, $zBase = 0, $zStart = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 240|0; - $vararg_buffer11 = sp + 40|0; - $0 = sp + 120|0; - $1 = sp + 116|0; - $db = sp + 112|0; - $idx = sp + 108|0; - $nextIndex = sp + 104|0; - $n = sp + 100|0; - $nToken = sp + 96|0; - $i = sp + 92|0; - $pVar = sp + 88|0; - $out = sp + 60|0; - $zBase = sp + 128|0; - $zStart = sp + 56|0; - $nOut = sp + 52|0; - $enc = sp + 124|0; - $utf8 = sp; - $nOut1 = sp + 48|0; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $zRawSql; - HEAP32[$idx>>2] = 0; - HEAP32[$nextIndex>>2] = 1; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$db>>2] = $3; - $4 = HEAP32[$db>>2]|0; - $5 = (($4) + 88|0); - $6 = HEAP32[$5>>2]|0; - _sqlite3StrAccumInit($out,$zBase,100,$6); - $7 = HEAP32[$db>>2]|0; - HEAP32[$out>>2] = $7; - $8 = HEAP32[$db>>2]|0; - $9 = (($8) + 152|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)>(1); - if ($11) { - while(1) { - $12 = HEAP32[$1>>2]|0; - $13 = HEAP8[$12>>0]|0; - $14 = ($13<<24>>24)!=(0); - if (!($14)) { - break; - } - $15 = HEAP32[$1>>2]|0; - HEAP32[$zStart>>2] = $15; - while(1) { - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 1|0); - HEAP32[$1>>2] = $17; - $18 = HEAP8[$16>>0]|0; - $19 = $18 << 24 >> 24; - $20 = ($19|0)!=(10); - if (!($20)) { - break; - } - $21 = HEAP32[$1>>2]|0; - $22 = HEAP8[$21>>0]|0; - $23 = $22 << 24 >> 24; - $24 = ($23|0)!=(0); - if (!($24)) { - break; - } - } - _sqlite3StrAccumAppend($out,31872,3); - $25 = HEAP32[$zStart>>2]|0; - $26 = HEAP32[$1>>2]|0; - $27 = HEAP32[$zStart>>2]|0; - $28 = $26; - $29 = $27; - $30 = (($28) - ($29))|0; - _sqlite3StrAccumAppend($out,$25,$30); - } - $157 = (_sqlite3StrAccumFinish($out)|0); - STACKTOP = sp;return ($157|0); - } - while(1) { - $31 = HEAP32[$1>>2]|0; - $32 = HEAP8[$31>>0]|0; - $33 = ($32<<24>>24)!=(0); - if (!($33)) { - label = 31; - break; - } - $34 = HEAP32[$1>>2]|0; - $35 = (_findNextHostParameter($34,$nToken)|0); - HEAP32[$n>>2] = $35; - $36 = HEAP32[$1>>2]|0; - $37 = HEAP32[$n>>2]|0; - _sqlite3StrAccumAppend($out,$36,$37); - $38 = HEAP32[$n>>2]|0; - $39 = HEAP32[$1>>2]|0; - $40 = (($39) + ($38)|0); - HEAP32[$1>>2] = $40; - $41 = HEAP32[$nToken>>2]|0; - $42 = ($41|0)==(0); - if ($42) { - label = 31; - break; - } - $43 = HEAP32[$1>>2]|0; - $44 = HEAP8[$43>>0]|0; - $45 = $44 << 24 >> 24; - $46 = ($45|0)==(63); - do { - if ($46) { - $47 = HEAP32[$nToken>>2]|0; - $48 = ($47|0)>(1); - if ($48) { - $49 = HEAP32[$1>>2]|0; - $50 = (($49) + 1|0); - (_sqlite3GetInt32($50,$idx)|0); - break; - } else { - $51 = HEAP32[$nextIndex>>2]|0; - HEAP32[$idx>>2] = $51; - break; - } - } else { - $52 = HEAP32[$0>>2]|0; - $53 = HEAP32[$1>>2]|0; - $54 = HEAP32[$nToken>>2]|0; - $55 = (_sqlite3VdbeParameterIndex($52,$53,$54)|0); - HEAP32[$idx>>2] = $55; - } - } while(0); - $56 = HEAP32[$nToken>>2]|0; - $57 = HEAP32[$1>>2]|0; - $58 = (($57) + ($56)|0); - HEAP32[$1>>2] = $58; - $59 = HEAP32[$idx>>2]|0; - $60 = (($59) + 1)|0; - HEAP32[$nextIndex>>2] = $60; - $61 = HEAP32[$idx>>2]|0; - $62 = (($61) - 1)|0; - $63 = HEAP32[$0>>2]|0; - $64 = (($63) + 60|0); - $65 = HEAP32[$64>>2]|0; - $66 = (($65) + (($62*40)|0)|0); - HEAP32[$pVar>>2] = $66; - $67 = HEAP32[$pVar>>2]|0; - $68 = (($67) + 28|0); - $69 = HEAP16[$68>>1]|0; - $70 = $69&65535; - $71 = $70 & 1; - $72 = ($71|0)!=(0); - if ($72) { - _sqlite3StrAccumAppend($out,9744,4); - continue; - } - $73 = HEAP32[$pVar>>2]|0; - $74 = (($73) + 28|0); - $75 = HEAP16[$74>>1]|0; - $76 = $75&65535; - $77 = $76 & 4; - $78 = ($77|0)!=(0); - $79 = HEAP32[$pVar>>2]|0; - if ($78) { - $80 = (($79) + 16|0); - $81 = $80; - $82 = $81; - $83 = HEAP32[$82>>2]|0; - $84 = (($81) + 4)|0; - $85 = $84; - $86 = HEAP32[$85>>2]|0; - $87 = $vararg_buffer11; - $88 = $87; - HEAP32[$88>>2] = $83; - $89 = (($87) + 4)|0; - $90 = $89; - HEAP32[$90>>2] = $86; - _sqlite3XPrintf($out,0,9360,$vararg_buffer11); - continue; - } - $91 = (($79) + 28|0); - $92 = HEAP16[$91>>1]|0; - $93 = $92&65535; - $94 = $93 & 8; - $95 = ($94|0)!=(0); - $96 = HEAP32[$pVar>>2]|0; - if ($95) { - $97 = (($96) + 8|0); - $98 = +HEAPF64[$97>>3]; - HEAPF64[tempDoublePtr>>3]=$98;HEAP32[$vararg_buffer11>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_buffer11+4>>2]=HEAP32[tempDoublePtr+4>>2]; - _sqlite3XPrintf($out,0,9712,$vararg_buffer11); - continue; - } - $99 = (($96) + 28|0); - $100 = HEAP16[$99>>1]|0; - $101 = $100&65535; - $102 = $101 & 2; - $103 = ($102|0)!=(0); - if ($103) { - $104 = HEAP32[$db>>2]|0; - $105 = (($104) + 16|0); - $106 = HEAP32[$105>>2]|0; - $107 = (($106) + 12|0); - $108 = HEAP32[$107>>2]|0; - $109 = (($108) + 77|0); - $110 = HEAP8[$109>>0]|0; - HEAP8[$enc>>0] = $110; - $111 = HEAP8[$enc>>0]|0; - $112 = $111&255; - $113 = ($112|0)!=(1); - if ($113) { - dest=$utf8+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $114 = HEAP32[$db>>2]|0; - HEAP32[$utf8>>2] = $114; - $115 = HEAP32[$pVar>>2]|0; - $116 = (($115) + 4|0); - $117 = HEAP32[$116>>2]|0; - $118 = HEAP32[$pVar>>2]|0; - $119 = (($118) + 24|0); - $120 = HEAP32[$119>>2]|0; - $121 = HEAP8[$enc>>0]|0; - (_sqlite3VdbeMemSetStr($utf8,$117,$120,$121,0)|0); - (_sqlite3VdbeChangeEncoding($utf8,1)|0); - HEAP32[$pVar>>2] = $utf8; - } - $122 = HEAP32[$pVar>>2]|0; - $123 = (($122) + 24|0); - $124 = HEAP32[$123>>2]|0; - HEAP32[$nOut>>2] = $124; - $125 = HEAP32[$nOut>>2]|0; - $126 = HEAP32[$pVar>>2]|0; - $127 = (($126) + 4|0); - $128 = HEAP32[$127>>2]|0; - HEAP32[$vararg_buffer11>>2] = $125; - $vararg_ptr7 = (($vararg_buffer11) + 4|0); - HEAP32[$vararg_ptr7>>2] = $128; - _sqlite3XPrintf($out,0,31880,$vararg_buffer11); - $129 = HEAP8[$enc>>0]|0; - $130 = $129&255; - $131 = ($130|0)!=(1); - if (!($131)) { - continue; - } - _sqlite3VdbeMemRelease($utf8); - continue; - } - $132 = HEAP32[$pVar>>2]|0; - $133 = (($132) + 28|0); - $134 = HEAP16[$133>>1]|0; - $135 = $134&65535; - $136 = $135 & 16384; - $137 = ($136|0)!=(0); - if ($137) { - $138 = HEAP32[$pVar>>2]|0; - $139 = (($138) + 16|0); - $140 = HEAP32[$139>>2]|0; - HEAP32[$vararg_buffer11>>2] = $140; - _sqlite3XPrintf($out,0,31888,$vararg_buffer11); - continue; - } - _sqlite3StrAccumAppend($out,31904,2); - $141 = HEAP32[$pVar>>2]|0; - $142 = (($141) + 24|0); - $143 = HEAP32[$142>>2]|0; - HEAP32[$nOut1>>2] = $143; - HEAP32[$i>>2] = 0; - while(1) { - $144 = HEAP32[$i>>2]|0; - $145 = HEAP32[$nOut1>>2]|0; - $146 = ($144|0)<($145|0); - if (!($146)) { - break; - } - $147 = HEAP32[$i>>2]|0; - $148 = HEAP32[$pVar>>2]|0; - $149 = (($148) + 4|0); - $150 = HEAP32[$149>>2]|0; - $151 = (($150) + ($147)|0); - $152 = HEAP8[$151>>0]|0; - $153 = $152 << 24 >> 24; - $154 = $153 & 255; - HEAP32[$vararg_buffer11>>2] = $154; - _sqlite3XPrintf($out,0,31912,$vararg_buffer11); - $155 = HEAP32[$i>>2]|0; - $156 = (($155) + 1)|0; - HEAP32[$i>>2] = $156; - } - _sqlite3StrAccumAppend($out,31920,1); - } - if ((label|0) == 31) { - $157 = (_sqlite3StrAccumFinish($out)|0); - STACKTOP = sp;return ($157|0); - } - return 0|0; -} -function _findNextHostParameter($zSql,$pnToken) { - $zSql = $zSql|0; - $pnToken = $pnToken|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, $nTotal = 0; - var $tokenType = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $tokenType = sp + 8|0; - $nTotal = sp + 4|0; - $n = sp; - HEAP32[$0>>2] = $zSql; - HEAP32[$1>>2] = $pnToken; - HEAP32[$nTotal>>2] = 0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$2>>2] = 0; - while(1) { - $3 = HEAP32[$0>>2]|0; - $4 = HEAP8[$3>>0]|0; - $5 = ($4<<24>>24)!=(0); - if (!($5)) { - label = 6; - break; - } - $6 = HEAP32[$0>>2]|0; - $7 = (_sqlite3GetToken($6,$tokenType)|0); - HEAP32[$n>>2] = $7; - $8 = HEAP32[$tokenType>>2]|0; - $9 = ($8|0)==(135); - $10 = HEAP32[$n>>2]|0; - if ($9) { - break; - } - $12 = HEAP32[$nTotal>>2]|0; - $13 = (($12) + ($10))|0; - HEAP32[$nTotal>>2] = $13; - $14 = HEAP32[$n>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + ($14)|0); - HEAP32[$0>>2] = $16; - } - if ((label|0) == 6) { - $17 = HEAP32[$nTotal>>2]|0; - STACKTOP = sp;return ($17|0); - } - $11 = HEAP32[$1>>2]|0; - HEAP32[$11>>2] = $10; - $17 = HEAP32[$nTotal>>2]|0; - STACKTOP = sp;return ($17|0); -} -function _sqlite3PagerMaxPageCount($pPager,$mxPage) { - $pPager = $pPager|0; - $mxPage = $mxPage|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $mxPage; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)>(0); - if ($3) { - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 156|0); - HEAP32[$6>>2] = $4; - } - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 156|0); - $9 = HEAP32[$8>>2]|0; - STACKTOP = sp;return ($9|0); -} -function _growVTrans($db) { - $db = $db|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ARRAY_INCR = 0, $aVTrans = 0, $nBytes = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $ARRAY_INCR = sp + 8|0; - $aVTrans = sp + 4|0; - $nBytes = sp; - HEAP32[$1>>2] = $db; - HEAP32[$ARRAY_INCR>>2] = 5; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 296|0); - $4 = HEAP32[$3>>2]|0; - $5 = (($4|0) % 5)&-1; - $6 = ($5|0)==(0); - do { - if ($6) { - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 296|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + 5)|0; - $11 = $10<<2; - HEAP32[$nBytes>>2] = $11; - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 320|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$nBytes>>2]|0; - $17 = (_sqlite3DbRealloc($12,$15,$16)|0); - HEAP32[$aVTrans>>2] = $17; - $18 = HEAP32[$aVTrans>>2]|0; - $19 = ($18|0)!=(0|0); - if ($19) { - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 296|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$aVTrans>>2]|0; - $24 = (($23) + ($22<<2)|0); - ;HEAP32[$24+0>>2]=0|0;HEAP32[$24+4>>2]=0|0;HEAP32[$24+8>>2]=0|0;HEAP32[$24+12>>2]=0|0;HEAP32[$24+16>>2]=0|0; - $25 = HEAP32[$aVTrans>>2]|0; - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 320|0); - HEAP32[$27>>2] = $25; - break; - } - HEAP32[$0>>2] = 7; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); - } - } while(0); - HEAP32[$0>>2] = 0; - $28 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($28|0); -} -function _addToVTrans($db,$pVTab) { - $db = $db|0; - $pVTab = $pVTab|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pVTab; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 296|0); - $5 = HEAP32[$4>>2]|0; - $6 = (($5) + 1)|0; - HEAP32[$4>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 320|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + ($5<<2)|0); - HEAP32[$10>>2] = $2; - $11 = HEAP32[$1>>2]|0; - _sqlite3VtabLock($11); - STACKTOP = sp;return; -} -function _setSharedCacheTableLock($p,$iTable,$eLock) { - $p = $p|0; - $iTable = $iTable|0; - $eLock = $eLock|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $pIter = 0, $pLock = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 24|0; - $pBt = sp + 8|0; - $pLock = sp + 4|0; - $pIter = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $iTable; - HEAP8[$3>>0] = $eLock; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$pBt>>2] = $6; - HEAP32[$pLock>>2] = 0; - $7 = HEAP32[$pBt>>2]|0; - $8 = (($7) + 72|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$pIter>>2] = $9; - while(1) { - $10 = HEAP32[$pIter>>2]|0; - $11 = ($10|0)!=(0|0); - if (!($11)) { - break; - } - $12 = HEAP32[$pIter>>2]|0; - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$2>>2]|0; - $16 = ($14|0)==($15|0); - if ($16) { - $17 = HEAP32[$pIter>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$1>>2]|0; - $20 = ($18|0)==($19|0); - if ($20) { - label = 5; - break; - } - } - $22 = HEAP32[$pIter>>2]|0; - $23 = (($22) + 12|0); - $24 = HEAP32[$23>>2]|0; - HEAP32[$pIter>>2] = $24; - } - if ((label|0) == 5) { - $21 = HEAP32[$pIter>>2]|0; - HEAP32[$pLock>>2] = $21; - } - $25 = HEAP32[$pLock>>2]|0; - $26 = ($25|0)!=(0|0); - do { - if (!($26)) { - $27 = (_sqlite3MallocZero(16)|0); - HEAP32[$pLock>>2] = $27; - $28 = HEAP32[$pLock>>2]|0; - $29 = ($28|0)!=(0|0); - if ($29) { - $30 = HEAP32[$2>>2]|0; - $31 = HEAP32[$pLock>>2]|0; - $32 = (($31) + 4|0); - HEAP32[$32>>2] = $30; - $33 = HEAP32[$1>>2]|0; - $34 = HEAP32[$pLock>>2]|0; - HEAP32[$34>>2] = $33; - $35 = HEAP32[$pBt>>2]|0; - $36 = (($35) + 72|0); - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$pLock>>2]|0; - $39 = (($38) + 12|0); - HEAP32[$39>>2] = $37; - $40 = HEAP32[$pLock>>2]|0; - $41 = HEAP32[$pBt>>2]|0; - $42 = (($41) + 72|0); - HEAP32[$42>>2] = $40; - break; - } - HEAP32[$0>>2] = 7; - $53 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($53|0); - } - } while(0); - $43 = HEAP8[$3>>0]|0; - $44 = $43&255; - $45 = HEAP32[$pLock>>2]|0; - $46 = (($45) + 8|0); - $47 = HEAP8[$46>>0]|0; - $48 = $47&255; - $49 = ($44|0)>($48|0); - if ($49) { - $50 = HEAP8[$3>>0]|0; - $51 = HEAP32[$pLock>>2]|0; - $52 = (($51) + 8|0); - HEAP8[$52>>0] = $50; - } - HEAP32[$0>>2] = 0; - $53 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($53|0); -} -function _finalDbSize($pBt,$nOrig,$nFree) { - $pBt = $pBt|0; - $nOrig = $nOrig|0; - $nFree = $nFree|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nEntry = 0, $nFin = 0, $nPtrmap = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $nEntry = sp + 8|0; - $nPtrmap = sp + 4|0; - $nFin = sp; - HEAP32[$0>>2] = $pBt; - HEAP32[$1>>2] = $nOrig; - HEAP32[$2>>2] = $nFree; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 36|0); - $5 = HEAP32[$4>>2]|0; - $6 = (($5>>>0) / 5)&-1; - HEAP32[$nEntry>>2] = $6; - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = (($7) - ($8))|0; - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = (_ptrmapPageno($10,$11)|0); - $13 = (($9) + ($12))|0; - $14 = HEAP32[$nEntry>>2]|0; - $15 = (($13) + ($14))|0; - $16 = HEAP32[$nEntry>>2]|0; - $17 = (($15>>>0) / ($16>>>0))&-1; - HEAP32[$nPtrmap>>2] = $17; - $18 = HEAP32[$1>>2]|0; - $19 = HEAP32[$2>>2]|0; - $20 = (($18) - ($19))|0; - $21 = HEAP32[$nPtrmap>>2]|0; - $22 = (($20) - ($21))|0; - HEAP32[$nFin>>2] = $22; - $23 = HEAP32[$1>>2]|0; - $24 = HEAP32[1384>>2]|0; - $25 = HEAP32[$0>>2]|0; - $26 = (($25) + 32|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($24>>>0) / ($27>>>0))&-1; - $29 = (($28) + 1)|0; - $30 = ($23>>>0)>($29>>>0); - if ($30) { - $31 = HEAP32[$nFin>>2]|0; - $32 = HEAP32[1384>>2]|0; - $33 = HEAP32[$0>>2]|0; - $34 = (($33) + 32|0); - $35 = HEAP32[$34>>2]|0; - $36 = (($32>>>0) / ($35>>>0))&-1; - $37 = (($36) + 1)|0; - $38 = ($31>>>0)<($37>>>0); - if ($38) { - $39 = HEAP32[$nFin>>2]|0; - $40 = (($39) + -1)|0; - HEAP32[$nFin>>2] = $40; - } - } - while(1) { - $41 = HEAP32[$0>>2]|0; - $42 = HEAP32[$nFin>>2]|0; - $43 = (_ptrmapPageno($41,$42)|0); - $44 = HEAP32[$nFin>>2]|0; - $45 = ($43|0)==($44|0); - if ($45) { - $56 = 1; - } else { - $46 = HEAP32[$nFin>>2]|0; - $47 = HEAP32[1384>>2]|0; - $48 = HEAP32[$0>>2]|0; - $49 = (($48) + 32|0); - $50 = HEAP32[$49>>2]|0; - $51 = (($47>>>0) / ($50>>>0))&-1; - $52 = (($51) + 1)|0; - $53 = ($46|0)==($52|0); - $56 = $53; - } - $54 = HEAP32[$nFin>>2]|0; - if (!($56)) { - break; - } - $55 = (($54) + -1)|0; - HEAP32[$nFin>>2] = $55; - } - STACKTOP = sp;return ($54|0); -} -function _invalidateAllOverflowCache($pBt) { - $pBt = $pBt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pBt; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$p>>2] = $3; - while(1) { - $4 = HEAP32[$p>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - break; - } - $6 = HEAP32[$p>>2]|0; - $7 = (($6) + 80|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - $10 = $9 & -5; - $11 = $10&255; - HEAP8[$7>>0] = $11; - $12 = HEAP32[$p>>2]|0; - $13 = (($12) + 8|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$p>>2] = $14; - } - STACKTOP = sp;return; -} -function _incrVacuumStep($pBt,$nFin,$iLastPg,$bCommit) { - $pBt = $pBt|0; - $nFin = $nFin|0; - $iLastPg = $iLastPg|0; - $bCommit = $bCommit|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; - var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; - var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $eMode = 0, $eType = 0, $iFreePg = 0, $iFreePg1 = 0, $iNear = 0, $iPtrPage = 0, $nFreeList = 0, $pFreePg = 0, $pFreePg2 = 0, $pLastPg = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 52|0; - $1 = sp + 48|0; - $2 = sp + 44|0; - $3 = sp + 40|0; - $4 = sp + 36|0; - $nFreeList = sp + 32|0; - $rc = sp + 28|0; - $eType = sp + 57|0; - $iPtrPage = sp + 24|0; - $iFreePg = sp + 20|0; - $pFreePg = sp + 16|0; - $iFreePg1 = sp + 12|0; - $pLastPg = sp + 8|0; - $eMode = sp + 56|0; - $iNear = sp + 4|0; - $pFreePg2 = sp; - HEAP32[$1>>2] = $pBt; - HEAP32[$2>>2] = $nFin; - HEAP32[$3>>2] = $iLastPg; - HEAP32[$4>>2] = $bCommit; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$3>>2]|0; - $7 = (_ptrmapPageno($5,$6)|0); - $8 = HEAP32[$3>>2]|0; - $9 = ($7|0)==($8|0); - do { - if (!($9)) { - $10 = HEAP32[$3>>2]|0; - $11 = HEAP32[1384>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 32|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($11>>>0) / ($14>>>0))&-1; - $16 = (($15) + 1)|0; - $17 = ($10|0)!=($16|0); - if ($17) { - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 12|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($20) + 56|0); - $22 = HEAP32[$21>>2]|0; - $23 = (($22) + 36|0); - $24 = (_sqlite3Get4byte($23)|0); - HEAP32[$nFreeList>>2] = $24; - $25 = HEAP32[$nFreeList>>2]|0; - $26 = ($25|0)==(0); - if ($26) { - HEAP32[$0>>2] = 101; - $105 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($105|0); - } - $27 = HEAP32[$1>>2]|0; - $28 = HEAP32[$3>>2]|0; - $29 = (_ptrmapGet($27,$28,$eType,$iPtrPage)|0); - HEAP32[$rc>>2] = $29; - $30 = HEAP32[$rc>>2]|0; - $31 = ($30|0)!=(0); - if ($31) { - $32 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $32; - $105 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($105|0); - } - $33 = HEAP8[$eType>>0]|0; - $34 = $33&255; - $35 = ($34|0)==(1); - if ($35) { - $36 = (_sqlite3CorruptError(54203)|0); - HEAP32[$0>>2] = $36; - $105 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($105|0); - } - $37 = HEAP8[$eType>>0]|0; - $38 = $37&255; - $39 = ($38|0)==(2); - if ($39) { - $40 = HEAP32[$4>>2]|0; - $41 = ($40|0)==(0); - if (!($41)) { - break; - } - $42 = HEAP32[$1>>2]|0; - $43 = HEAP32[$3>>2]|0; - $44 = (_allocateBtreePage($42,$pFreePg,$iFreePg,$43,1)|0); - HEAP32[$rc>>2] = $44; - $45 = HEAP32[$rc>>2]|0; - $46 = ($45|0)!=(0); - if (!($46)) { - $48 = HEAP32[$pFreePg>>2]|0; - _releasePage($48); - break; - } - $47 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $47; - $105 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($105|0); - } - HEAP8[$eMode>>0] = 0; - HEAP32[$iNear>>2] = 0; - $49 = HEAP32[$1>>2]|0; - $50 = HEAP32[$3>>2]|0; - $51 = (_btreeGetPage($49,$50,$pLastPg,0)|0); - HEAP32[$rc>>2] = $51; - $52 = HEAP32[$rc>>2]|0; - $53 = ($52|0)!=(0); - if ($53) { - $54 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $54; - $105 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($105|0); - } - $55 = HEAP32[$4>>2]|0; - $56 = ($55|0)==(0); - if ($56) { - HEAP8[$eMode>>0] = 2; - $57 = HEAP32[$2>>2]|0; - HEAP32[$iNear>>2] = $57; - } - while(1) { - $58 = HEAP32[$1>>2]|0; - $59 = HEAP32[$iNear>>2]|0; - $60 = HEAP8[$eMode>>0]|0; - $61 = (_allocateBtreePage($58,$pFreePg2,$iFreePg1,$59,$60)|0); - HEAP32[$rc>>2] = $61; - $62 = HEAP32[$rc>>2]|0; - $63 = ($62|0)!=(0); - if ($63) { - label = 19; - break; - } - $66 = HEAP32[$pFreePg2>>2]|0; - _releasePage($66); - $67 = HEAP32[$4>>2]|0; - $68 = ($67|0)!=(0); - if (!($68)) { - break; - } - $69 = HEAP32[$iFreePg1>>2]|0; - $70 = HEAP32[$2>>2]|0; - $71 = ($69>>>0)>($70>>>0); - if (!($71)) { - break; - } - } - if ((label|0) == 19) { - $64 = HEAP32[$pLastPg>>2]|0; - _releasePage($64); - $65 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $65; - $105 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($105|0); - } - $72 = HEAP32[$1>>2]|0; - $73 = HEAP32[$pLastPg>>2]|0; - $74 = HEAP8[$eType>>0]|0; - $75 = HEAP32[$iPtrPage>>2]|0; - $76 = HEAP32[$iFreePg1>>2]|0; - $77 = HEAP32[$4>>2]|0; - $78 = (_relocatePage($72,$73,$74,$75,$76,$77)|0); - HEAP32[$rc>>2] = $78; - $79 = HEAP32[$pLastPg>>2]|0; - _releasePage($79); - $80 = HEAP32[$rc>>2]|0; - $81 = ($80|0)!=(0); - if ($81) { - $82 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $82; - $105 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($105|0); - } - } - } - } while(0); - $83 = HEAP32[$4>>2]|0; - $84 = ($83|0)==(0); - if ($84) { - while(1) { - $85 = HEAP32[$3>>2]|0; - $86 = (($85) + -1)|0; - HEAP32[$3>>2] = $86; - $87 = HEAP32[$3>>2]|0; - $88 = HEAP32[1384>>2]|0; - $89 = HEAP32[$1>>2]|0; - $90 = (($89) + 32|0); - $91 = HEAP32[$90>>2]|0; - $92 = (($88>>>0) / ($91>>>0))&-1; - $93 = (($92) + 1)|0; - $94 = ($87|0)==($93|0); - if ($94) { - continue; - } - $95 = HEAP32[$1>>2]|0; - $96 = HEAP32[$3>>2]|0; - $97 = (_ptrmapPageno($95,$96)|0); - $98 = HEAP32[$3>>2]|0; - $99 = ($97|0)==($98|0); - if (!($99)) { - break; - } - } - $100 = HEAP32[$1>>2]|0; - $101 = (($100) + 19|0); - HEAP8[$101>>0] = 1; - $102 = HEAP32[$3>>2]|0; - $103 = HEAP32[$1>>2]|0; - $104 = (($103) + 44|0); - HEAP32[$104>>2] = $102; - } - HEAP32[$0>>2] = 0; - $105 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($105|0); -} -function _allocateBtreePage($pBt,$ppPage,$pPgno,$nearby,$eMode) { - $pBt = $pBt|0; - $ppPage = $ppPage|0; - $pPgno = $pPgno|0; - $nearby = $nearby|0; - $eMode = $eMode|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; - var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; - var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; - var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; - var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; - var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; - var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; - var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; - var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; - var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; - var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aData = 0, $bNoContent = 0, $closest = 0, $d2 = 0, $dist = 0, $eType = 0, $i = 0, $iNewTrunk = 0, $iPage = 0, $iTrunk = 0, $k = 0, $mxPage = 0, $n = 0, $noContent = 0, $pNewTrunk = 0; - var $pPage1 = 0, $pPg = 0, $pPrevTrunk = 0, $pTrunk = 0, $rc = 0, $searchList = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 112|0; - $0 = sp + 92|0; - $1 = sp + 88|0; - $2 = sp + 84|0; - $3 = sp + 80|0; - $4 = sp + 76|0; - $5 = sp + 98|0; - $pPage1 = sp + 72|0; - $rc = sp + 68|0; - $n = sp + 64|0; - $k = sp + 60|0; - $pTrunk = sp + 56|0; - $pPrevTrunk = sp + 52|0; - $mxPage = sp + 48|0; - $iTrunk = sp + 44|0; - $searchList = sp + 97|0; - $eType = sp + 96|0; - $pNewTrunk = sp + 40|0; - $iNewTrunk = sp + 36|0; - $closest = sp + 32|0; - $iPage = sp + 28|0; - $aData = sp + 24|0; - $i = sp + 20|0; - $dist = sp + 16|0; - $d2 = sp + 12|0; - $noContent = sp + 8|0; - $bNoContent = sp + 4|0; - $pPg = sp; - HEAP32[$1>>2] = $pBt; - HEAP32[$2>>2] = $ppPage; - HEAP32[$3>>2] = $pPgno; - HEAP32[$4>>2] = $nearby; - HEAP8[$5>>0] = $eMode; - HEAP32[$pTrunk>>2] = 0; - HEAP32[$pPrevTrunk>>2] = 0; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 12|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pPage1>>2] = $8; - $9 = HEAP32[$1>>2]|0; - $10 = (_btreePagecount($9)|0); - HEAP32[$mxPage>>2] = $10; - $11 = HEAP32[$pPage1>>2]|0; - $12 = (($11) + 56|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + 36|0); - $15 = (_sqlite3Get4byte($14)|0); - HEAP32[$n>>2] = $15; - $16 = HEAP32[$n>>2]|0; - $17 = HEAP32[$mxPage>>2]|0; - $18 = ($16>>>0)>=($17>>>0); - if ($18) { - $19 = (_sqlite3CorruptError(56167)|0); - HEAP32[$0>>2] = $19; - $464 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($464|0); - } - $20 = HEAP32[$n>>2]|0; - $21 = ($20>>>0)>(0); - L5: do { - if ($21) { - HEAP8[$searchList>>0] = 0; - $22 = HEAP8[$5>>0]|0; - $23 = $22&255; - $24 = ($23|0)==(1); - do { - if ($24) { - $25 = HEAP32[$4>>2]|0; - $26 = HEAP32[$mxPage>>2]|0; - $27 = ($25>>>0)<=($26>>>0); - if ($27) { - $28 = HEAP32[$1>>2]|0; - $29 = HEAP32[$4>>2]|0; - $30 = (_ptrmapGet($28,$29,$eType,0)|0); - HEAP32[$rc>>2] = $30; - $31 = HEAP32[$rc>>2]|0; - $32 = ($31|0)!=(0); - if ($32) { - $33 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $33; - $464 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($464|0); - } else { - $34 = HEAP8[$eType>>0]|0; - $35 = $34&255; - $36 = ($35|0)==(2); - if (!($36)) { - break; - } - HEAP8[$searchList>>0] = 1; - break; - } - } - } else { - $37 = HEAP8[$5>>0]|0; - $38 = $37&255; - $39 = ($38|0)==(2); - if ($39) { - HEAP8[$searchList>>0] = 1; - } - } - } while(0); - $40 = HEAP32[$pPage1>>2]|0; - $41 = (($40) + 68|0); - $42 = HEAP32[$41>>2]|0; - $43 = (_sqlite3PagerWrite($42)|0); - HEAP32[$rc>>2] = $43; - $44 = HEAP32[$rc>>2]|0; - $45 = ($44|0)!=(0); - if ($45) { - $46 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $46; - $464 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($464|0); - } - $47 = HEAP32[$pPage1>>2]|0; - $48 = (($47) + 56|0); - $49 = HEAP32[$48>>2]|0; - $50 = (($49) + 36|0); - $51 = HEAP32[$n>>2]|0; - $52 = (($51) - 1)|0; - _sqlite3Put4byte($50,$52); - L22: while(1) { - $53 = HEAP32[$pTrunk>>2]|0; - HEAP32[$pPrevTrunk>>2] = $53; - $54 = HEAP32[$pPrevTrunk>>2]|0; - $55 = ($54|0)!=(0|0); - if ($55) { - $56 = HEAP32[$pPrevTrunk>>2]|0; - $57 = (($56) + 56|0); - $58 = HEAP32[$57>>2]|0; - $59 = (_sqlite3Get4byte($58)|0); - HEAP32[$iTrunk>>2] = $59; - } else { - $60 = HEAP32[$pPage1>>2]|0; - $61 = (($60) + 56|0); - $62 = HEAP32[$61>>2]|0; - $63 = (($62) + 32|0); - $64 = (_sqlite3Get4byte($63)|0); - HEAP32[$iTrunk>>2] = $64; - } - $65 = HEAP32[$iTrunk>>2]|0; - $66 = HEAP32[$mxPage>>2]|0; - $67 = ($65>>>0)>($66>>>0); - if ($67) { - $68 = (_sqlite3CorruptError(56216)|0); - HEAP32[$rc>>2] = $68; - } else { - $69 = HEAP32[$1>>2]|0; - $70 = HEAP32[$iTrunk>>2]|0; - $71 = (_btreeGetPage($69,$70,$pTrunk,0)|0); - HEAP32[$rc>>2] = $71; - } - $72 = HEAP32[$rc>>2]|0; - $73 = ($72|0)!=(0); - if ($73) { - label = 22; - break; - } - $74 = HEAP32[$pTrunk>>2]|0; - $75 = (($74) + 56|0); - $76 = HEAP32[$75>>2]|0; - $77 = (($76) + 4|0); - $78 = (_sqlite3Get4byte($77)|0); - HEAP32[$k>>2] = $78; - $79 = HEAP32[$k>>2]|0; - $80 = ($79|0)==(0); - if ($80) { - $81 = HEAP8[$searchList>>0]|0; - $82 = ($81<<24>>24)!=(0); - if ($82) { - label = 27; - } else { - $83 = HEAP32[$pTrunk>>2]|0; - $84 = (($83) + 68|0); - $85 = HEAP32[$84>>2]|0; - $86 = (_sqlite3PagerWrite($85)|0); - HEAP32[$rc>>2] = $86; - $87 = HEAP32[$rc>>2]|0; - $88 = ($87|0)!=(0); - if ($88) { - break L5; - } - $89 = HEAP32[$iTrunk>>2]|0; - $90 = HEAP32[$3>>2]|0; - HEAP32[$90>>2] = $89; - $91 = HEAP32[$pPage1>>2]|0; - $92 = (($91) + 56|0); - $93 = HEAP32[$92>>2]|0; - $94 = (($93) + 32|0); - $95 = HEAP32[$pTrunk>>2]|0; - $96 = (($95) + 56|0); - $97 = HEAP32[$96>>2]|0; - ;HEAP8[$94+0>>0]=HEAP8[$97+0>>0]|0;HEAP8[$94+1>>0]=HEAP8[$97+1>>0]|0;HEAP8[$94+2>>0]=HEAP8[$97+2>>0]|0;HEAP8[$94+3>>0]=HEAP8[$97+3>>0]|0; - $98 = HEAP32[$pTrunk>>2]|0; - $99 = HEAP32[$2>>2]|0; - HEAP32[$99>>2] = $98; - HEAP32[$pTrunk>>2] = 0; - } - } else { - label = 27; - } - L37: do { - if ((label|0) == 27) { - label = 0; - $100 = HEAP32[$k>>2]|0; - $101 = HEAP32[$1>>2]|0; - $102 = (($101) + 36|0); - $103 = HEAP32[$102>>2]|0; - $104 = (($103>>>0) / 4)&-1; - $105 = (($104) - 2)|0; - $106 = ($100>>>0)>($105>>>0); - if ($106) { - label = 28; - break L22; - } - $108 = HEAP8[$searchList>>0]|0; - $109 = $108&255; - $110 = ($109|0)!=(0); - do { - if ($110) { - $111 = HEAP32[$4>>2]|0; - $112 = HEAP32[$iTrunk>>2]|0; - $113 = ($111|0)==($112|0); - if (!($113)) { - $114 = HEAP32[$iTrunk>>2]|0; - $115 = HEAP32[$4>>2]|0; - $116 = ($114>>>0)<($115>>>0); - if (!($116)) { - break; - } - $117 = HEAP8[$5>>0]|0; - $118 = $117&255; - $119 = ($118|0)==(2); - if (!($119)) { - break; - } - } - $120 = HEAP32[$iTrunk>>2]|0; - $121 = HEAP32[$3>>2]|0; - HEAP32[$121>>2] = $120; - $122 = HEAP32[$pTrunk>>2]|0; - $123 = HEAP32[$2>>2]|0; - HEAP32[$123>>2] = $122; - HEAP8[$searchList>>0] = 0; - $124 = HEAP32[$pTrunk>>2]|0; - $125 = (($124) + 68|0); - $126 = HEAP32[$125>>2]|0; - $127 = (_sqlite3PagerWrite($126)|0); - HEAP32[$rc>>2] = $127; - $128 = HEAP32[$rc>>2]|0; - $129 = ($128|0)!=(0); - if ($129) { - break L5; - } - $130 = HEAP32[$k>>2]|0; - $131 = ($130|0)==(0); - do { - if ($131) { - $132 = HEAP32[$pPrevTrunk>>2]|0; - $133 = ($132|0)!=(0|0); - if (!($133)) { - $134 = HEAP32[$pPage1>>2]|0; - $135 = (($134) + 56|0); - $136 = HEAP32[$135>>2]|0; - $137 = (($136) + 32|0); - $138 = HEAP32[$pTrunk>>2]|0; - $139 = (($138) + 56|0); - $140 = HEAP32[$139>>2]|0; - ;HEAP8[$137+0>>0]=HEAP8[$140+0>>0]|0;HEAP8[$137+1>>0]=HEAP8[$140+1>>0]|0;HEAP8[$137+2>>0]=HEAP8[$140+2>>0]|0;HEAP8[$137+3>>0]=HEAP8[$140+3>>0]|0; - break; - } - $141 = HEAP32[$pPrevTrunk>>2]|0; - $142 = (($141) + 68|0); - $143 = HEAP32[$142>>2]|0; - $144 = (_sqlite3PagerWrite($143)|0); - HEAP32[$rc>>2] = $144; - $145 = HEAP32[$rc>>2]|0; - $146 = ($145|0)!=(0); - if ($146) { - break L5; - } - $147 = HEAP32[$pPrevTrunk>>2]|0; - $148 = (($147) + 56|0); - $149 = HEAP32[$148>>2]|0; - $150 = HEAP32[$pTrunk>>2]|0; - $151 = (($150) + 56|0); - $152 = HEAP32[$151>>2]|0; - ;HEAP8[$149+0>>0]=HEAP8[$152+0>>0]|0;HEAP8[$149+1>>0]=HEAP8[$152+1>>0]|0;HEAP8[$149+2>>0]=HEAP8[$152+2>>0]|0;HEAP8[$149+3>>0]=HEAP8[$152+3>>0]|0; - } else { - $153 = HEAP32[$pTrunk>>2]|0; - $154 = (($153) + 56|0); - $155 = HEAP32[$154>>2]|0; - $156 = (($155) + 8|0); - $157 = (_sqlite3Get4byte($156)|0); - HEAP32[$iNewTrunk>>2] = $157; - $158 = HEAP32[$iNewTrunk>>2]|0; - $159 = HEAP32[$mxPage>>2]|0; - $160 = ($158>>>0)>($159>>>0); - if ($160) { - label = 40; - break L22; - } - $162 = HEAP32[$1>>2]|0; - $163 = HEAP32[$iNewTrunk>>2]|0; - $164 = (_btreeGetPage($162,$163,$pNewTrunk,0)|0); - HEAP32[$rc>>2] = $164; - $165 = HEAP32[$rc>>2]|0; - $166 = ($165|0)!=(0); - if ($166) { - break L5; - } - $167 = HEAP32[$pNewTrunk>>2]|0; - $168 = (($167) + 68|0); - $169 = HEAP32[$168>>2]|0; - $170 = (_sqlite3PagerWrite($169)|0); - HEAP32[$rc>>2] = $170; - $171 = HEAP32[$rc>>2]|0; - $172 = ($171|0)!=(0); - $173 = HEAP32[$pNewTrunk>>2]|0; - if ($172) { - label = 43; - break L22; - } - $174 = (($173) + 56|0); - $175 = HEAP32[$174>>2]|0; - $176 = HEAP32[$pTrunk>>2]|0; - $177 = (($176) + 56|0); - $178 = HEAP32[$177>>2]|0; - ;HEAP8[$175+0>>0]=HEAP8[$178+0>>0]|0;HEAP8[$175+1>>0]=HEAP8[$178+1>>0]|0;HEAP8[$175+2>>0]=HEAP8[$178+2>>0]|0;HEAP8[$175+3>>0]=HEAP8[$178+3>>0]|0; - $179 = HEAP32[$pNewTrunk>>2]|0; - $180 = (($179) + 56|0); - $181 = HEAP32[$180>>2]|0; - $182 = (($181) + 4|0); - $183 = HEAP32[$k>>2]|0; - $184 = (($183) - 1)|0; - _sqlite3Put4byte($182,$184); - $185 = HEAP32[$pNewTrunk>>2]|0; - $186 = (($185) + 56|0); - $187 = HEAP32[$186>>2]|0; - $188 = (($187) + 8|0); - $189 = HEAP32[$pTrunk>>2]|0; - $190 = (($189) + 56|0); - $191 = HEAP32[$190>>2]|0; - $192 = (($191) + 12|0); - $193 = HEAP32[$k>>2]|0; - $194 = (($193) - 1)|0; - $195 = $194<<2; - _memcpy(($188|0),($192|0),($195|0))|0; - $196 = HEAP32[$pNewTrunk>>2]|0; - _releasePage($196); - $197 = HEAP32[$pPrevTrunk>>2]|0; - $198 = ($197|0)!=(0|0); - if (!($198)) { - $199 = HEAP32[$pPage1>>2]|0; - $200 = (($199) + 56|0); - $201 = HEAP32[$200>>2]|0; - $202 = (($201) + 32|0); - $203 = HEAP32[$iNewTrunk>>2]|0; - _sqlite3Put4byte($202,$203); - break; - } - $204 = HEAP32[$pPrevTrunk>>2]|0; - $205 = (($204) + 68|0); - $206 = HEAP32[$205>>2]|0; - $207 = (_sqlite3PagerWrite($206)|0); - HEAP32[$rc>>2] = $207; - $208 = HEAP32[$rc>>2]|0; - $209 = ($208|0)!=(0); - if ($209) { - break L5; - } - $210 = HEAP32[$pPrevTrunk>>2]|0; - $211 = (($210) + 56|0); - $212 = HEAP32[$211>>2]|0; - $213 = HEAP32[$iNewTrunk>>2]|0; - _sqlite3Put4byte($212,$213); - } - } while(0); - HEAP32[$pTrunk>>2] = 0; - break L37; - } - } while(0); - $214 = HEAP32[$k>>2]|0; - $215 = ($214>>>0)>(0); - if ($215) { - $216 = HEAP32[$pTrunk>>2]|0; - $217 = (($216) + 56|0); - $218 = HEAP32[$217>>2]|0; - HEAP32[$aData>>2] = $218; - $219 = HEAP32[$4>>2]|0; - $220 = ($219>>>0)>(0); - HEAP32[$closest>>2] = 0; - L64: do { - if ($220) { - $221 = HEAP8[$5>>0]|0; - $222 = $221&255; - $223 = ($222|0)==(2); - if ($223) { - HEAP32[$i>>2] = 0; - while(1) { - $224 = HEAP32[$i>>2]|0; - $225 = HEAP32[$k>>2]|0; - $226 = ($224>>>0)<($225>>>0); - if (!($226)) { - break L64; - } - $227 = HEAP32[$i>>2]|0; - $228 = $227<<2; - $229 = (8 + ($228))|0; - $230 = HEAP32[$aData>>2]|0; - $231 = (($230) + ($229)|0); - $232 = (_sqlite3Get4byte($231)|0); - HEAP32[$iPage>>2] = $232; - $233 = HEAP32[$iPage>>2]|0; - $234 = HEAP32[$4>>2]|0; - $235 = ($233>>>0)<=($234>>>0); - $236 = HEAP32[$i>>2]|0; - if ($235) { - break; - } - $237 = (($236) + 1)|0; - HEAP32[$i>>2] = $237; - } - HEAP32[$closest>>2] = $236; - break; - } else { - $238 = HEAP32[$aData>>2]|0; - $239 = (($238) + 8|0); - $240 = (_sqlite3Get4byte($239)|0); - $241 = HEAP32[$4>>2]|0; - $242 = (($240) - ($241))|0; - $243 = (_sqlite3AbsInt32($242)|0); - HEAP32[$dist>>2] = $243; - HEAP32[$i>>2] = 1; - while(1) { - $244 = HEAP32[$i>>2]|0; - $245 = HEAP32[$k>>2]|0; - $246 = ($244>>>0)<($245>>>0); - if (!($246)) { - break L64; - } - $247 = HEAP32[$i>>2]|0; - $248 = $247<<2; - $249 = (8 + ($248))|0; - $250 = HEAP32[$aData>>2]|0; - $251 = (($250) + ($249)|0); - $252 = (_sqlite3Get4byte($251)|0); - $253 = HEAP32[$4>>2]|0; - $254 = (($252) - ($253))|0; - $255 = (_sqlite3AbsInt32($254)|0); - HEAP32[$d2>>2] = $255; - $256 = HEAP32[$d2>>2]|0; - $257 = HEAP32[$dist>>2]|0; - $258 = ($256|0)<($257|0); - if ($258) { - $259 = HEAP32[$i>>2]|0; - HEAP32[$closest>>2] = $259; - $260 = HEAP32[$d2>>2]|0; - HEAP32[$dist>>2] = $260; - } - $261 = HEAP32[$i>>2]|0; - $262 = (($261) + 1)|0; - HEAP32[$i>>2] = $262; - } - } - } - } while(0); - $263 = HEAP32[$closest>>2]|0; - $264 = $263<<2; - $265 = (8 + ($264))|0; - $266 = HEAP32[$aData>>2]|0; - $267 = (($266) + ($265)|0); - $268 = (_sqlite3Get4byte($267)|0); - HEAP32[$iPage>>2] = $268; - $269 = HEAP32[$iPage>>2]|0; - $270 = HEAP32[$mxPage>>2]|0; - $271 = ($269>>>0)>($270>>>0); - if ($271) { - label = 63; - break L22; - } - $273 = HEAP8[$searchList>>0]|0; - $274 = ($273<<24>>24)!=(0); - if ($274) { - $275 = HEAP32[$iPage>>2]|0; - $276 = HEAP32[$4>>2]|0; - $277 = ($275|0)==($276|0); - if (!($277)) { - $278 = HEAP32[$iPage>>2]|0; - $279 = HEAP32[$4>>2]|0; - $280 = ($278>>>0)<($279>>>0); - if (!($280)) { - break; - } - $281 = HEAP8[$5>>0]|0; - $282 = $281&255; - $283 = ($282|0)==(2); - if (!($283)) { - break; - } - } - } - $284 = HEAP32[$iPage>>2]|0; - $285 = HEAP32[$3>>2]|0; - HEAP32[$285>>2] = $284; - $286 = HEAP32[$pTrunk>>2]|0; - $287 = (($286) + 68|0); - $288 = HEAP32[$287>>2]|0; - $289 = (_sqlite3PagerWrite($288)|0); - HEAP32[$rc>>2] = $289; - $290 = HEAP32[$rc>>2]|0; - $291 = ($290|0)!=(0); - if ($291) { - break L5; - } - $292 = HEAP32[$closest>>2]|0; - $293 = HEAP32[$k>>2]|0; - $294 = (($293) - 1)|0; - $295 = ($292>>>0)<($294>>>0); - if ($295) { - $296 = HEAP32[$closest>>2]|0; - $297 = $296<<2; - $298 = (8 + ($297))|0; - $299 = HEAP32[$aData>>2]|0; - $300 = (($299) + ($298)|0); - $301 = HEAP32[$k>>2]|0; - $302 = $301<<2; - $303 = (4 + ($302))|0; - $304 = HEAP32[$aData>>2]|0; - $305 = (($304) + ($303)|0); - ;HEAP8[$300+0>>0]=HEAP8[$305+0>>0]|0;HEAP8[$300+1>>0]=HEAP8[$305+1>>0]|0;HEAP8[$300+2>>0]=HEAP8[$305+2>>0]|0;HEAP8[$300+3>>0]=HEAP8[$305+3>>0]|0; - } - $306 = HEAP32[$aData>>2]|0; - $307 = (($306) + 4|0); - $308 = HEAP32[$k>>2]|0; - $309 = (($308) - 1)|0; - _sqlite3Put4byte($307,$309); - $310 = HEAP32[$1>>2]|0; - $311 = HEAP32[$3>>2]|0; - $312 = HEAP32[$311>>2]|0; - $313 = (_btreeGetHasContent($310,$312)|0); - $314 = ($313|0)!=(0); - $315 = $314 ^ 1; - $316 = $315 ? 1 : 0; - HEAP32[$noContent>>2] = $316; - $317 = HEAP32[$1>>2]|0; - $318 = HEAP32[$3>>2]|0; - $319 = HEAP32[$318>>2]|0; - $320 = HEAP32[$2>>2]|0; - $321 = HEAP32[$noContent>>2]|0; - $322 = (_btreeGetPage($317,$319,$320,$321)|0); - HEAP32[$rc>>2] = $322; - $323 = HEAP32[$rc>>2]|0; - $324 = ($323|0)==(0); - do { - if ($324) { - $325 = HEAP32[$2>>2]|0; - $326 = HEAP32[$325>>2]|0; - $327 = (($326) + 68|0); - $328 = HEAP32[$327>>2]|0; - $329 = (_sqlite3PagerWrite($328)|0); - HEAP32[$rc>>2] = $329; - $330 = HEAP32[$rc>>2]|0; - $331 = ($330|0)!=(0); - if (!($331)) { - break; - } - $332 = HEAP32[$2>>2]|0; - $333 = HEAP32[$332>>2]|0; - _releasePage($333); - } - } while(0); - HEAP8[$searchList>>0] = 0; - } - } - } while(0); - $334 = HEAP32[$pPrevTrunk>>2]|0; - _releasePage($334); - HEAP32[$pPrevTrunk>>2] = 0; - $335 = HEAP8[$searchList>>0]|0; - $336 = ($335<<24>>24)!=(0); - if (!($336)) { - break L5; - } - } - if ((label|0) == 22) { - HEAP32[$pTrunk>>2] = 0; - break; - } - else if ((label|0) == 28) { - $107 = (_sqlite3CorruptError(56244)|0); - HEAP32[$rc>>2] = $107; - break; - } - else if ((label|0) == 40) { - $161 = (_sqlite3CorruptError(56278)|0); - HEAP32[$rc>>2] = $161; - break; - } - else if ((label|0) == 43) { - _releasePage($173); - break; - } - else if ((label|0) == 63) { - $272 = (_sqlite3CorruptError(56343)|0); - HEAP32[$rc>>2] = $272; - break; - } - } else { - $337 = HEAP32[$1>>2]|0; - $338 = (($337) + 19|0); - $339 = HEAP8[$338>>0]|0; - $340 = $339&255; - $341 = (0)==($340|0); - $342 = $341 ? 1 : 0; - HEAP32[$bNoContent>>2] = $342; - $343 = HEAP32[$1>>2]|0; - $344 = (($343) + 12|0); - $345 = HEAP32[$344>>2]|0; - $346 = (($345) + 68|0); - $347 = HEAP32[$346>>2]|0; - $348 = (_sqlite3PagerWrite($347)|0); - HEAP32[$rc>>2] = $348; - $349 = HEAP32[$rc>>2]|0; - $350 = ($349|0)!=(0); - if ($350) { - $351 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $351; - $464 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($464|0); - } - $352 = HEAP32[$1>>2]|0; - $353 = (($352) + 44|0); - $354 = HEAP32[$353>>2]|0; - $355 = (($354) + 1)|0; - HEAP32[$353>>2] = $355; - $356 = HEAP32[$1>>2]|0; - $357 = (($356) + 44|0); - $358 = HEAP32[$357>>2]|0; - $359 = HEAP32[1384>>2]|0; - $360 = HEAP32[$1>>2]|0; - $361 = (($360) + 32|0); - $362 = HEAP32[$361>>2]|0; - $363 = (($359>>>0) / ($362>>>0))&-1; - $364 = (($363) + 1)|0; - $365 = ($358|0)==($364|0); - if ($365) { - $366 = HEAP32[$1>>2]|0; - $367 = (($366) + 44|0); - $368 = HEAP32[$367>>2]|0; - $369 = (($368) + 1)|0; - HEAP32[$367>>2] = $369; - } - $370 = HEAP32[$1>>2]|0; - $371 = (($370) + 17|0); - $372 = HEAP8[$371>>0]|0; - $373 = $372&255; - $374 = ($373|0)!=(0); - do { - if ($374) { - $375 = HEAP32[$1>>2]|0; - $376 = HEAP32[$1>>2]|0; - $377 = (($376) + 44|0); - $378 = HEAP32[$377>>2]|0; - $379 = (_ptrmapPageno($375,$378)|0); - $380 = HEAP32[$1>>2]|0; - $381 = (($380) + 44|0); - $382 = HEAP32[$381>>2]|0; - $383 = ($379|0)==($382|0); - if ($383) { - HEAP32[$pPg>>2] = 0; - $384 = HEAP32[$1>>2]|0; - $385 = HEAP32[$1>>2]|0; - $386 = (($385) + 44|0); - $387 = HEAP32[$386>>2]|0; - $388 = HEAP32[$bNoContent>>2]|0; - $389 = (_btreeGetPage($384,$387,$pPg,$388)|0); - HEAP32[$rc>>2] = $389; - $390 = HEAP32[$rc>>2]|0; - $391 = ($390|0)==(0); - if ($391) { - $392 = HEAP32[$pPg>>2]|0; - $393 = (($392) + 68|0); - $394 = HEAP32[$393>>2]|0; - $395 = (_sqlite3PagerWrite($394)|0); - HEAP32[$rc>>2] = $395; - $396 = HEAP32[$pPg>>2]|0; - _releasePage($396); - } - $397 = HEAP32[$rc>>2]|0; - $398 = ($397|0)!=(0); - if ($398) { - $399 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $399; - $464 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($464|0); - } else { - $400 = HEAP32[$1>>2]|0; - $401 = (($400) + 44|0); - $402 = HEAP32[$401>>2]|0; - $403 = (($402) + 1)|0; - HEAP32[$401>>2] = $403; - $404 = HEAP32[$1>>2]|0; - $405 = (($404) + 44|0); - $406 = HEAP32[$405>>2]|0; - $407 = HEAP32[1384>>2]|0; - $408 = HEAP32[$1>>2]|0; - $409 = (($408) + 32|0); - $410 = HEAP32[$409>>2]|0; - $411 = (($407>>>0) / ($410>>>0))&-1; - $412 = (($411) + 1)|0; - $413 = ($406|0)==($412|0); - if (!($413)) { - break; - } - $414 = HEAP32[$1>>2]|0; - $415 = (($414) + 44|0); - $416 = HEAP32[$415>>2]|0; - $417 = (($416) + 1)|0; - HEAP32[$415>>2] = $417; - break; - } - } - } - } while(0); - $418 = HEAP32[$1>>2]|0; - $419 = (($418) + 12|0); - $420 = HEAP32[$419>>2]|0; - $421 = (($420) + 56|0); - $422 = HEAP32[$421>>2]|0; - $423 = (($422) + 28|0); - $424 = HEAP32[$1>>2]|0; - $425 = (($424) + 44|0); - $426 = HEAP32[$425>>2]|0; - _sqlite3Put4byte($423,$426); - $427 = HEAP32[$1>>2]|0; - $428 = (($427) + 44|0); - $429 = HEAP32[$428>>2]|0; - $430 = HEAP32[$3>>2]|0; - HEAP32[$430>>2] = $429; - $431 = HEAP32[$1>>2]|0; - $432 = HEAP32[$3>>2]|0; - $433 = HEAP32[$432>>2]|0; - $434 = HEAP32[$2>>2]|0; - $435 = HEAP32[$bNoContent>>2]|0; - $436 = (_btreeGetPage($431,$433,$434,$435)|0); - HEAP32[$rc>>2] = $436; - $437 = HEAP32[$rc>>2]|0; - $438 = ($437|0)!=(0); - if ($438) { - $439 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $439; - $464 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($464|0); - } else { - $440 = HEAP32[$2>>2]|0; - $441 = HEAP32[$440>>2]|0; - $442 = (($441) + 68|0); - $443 = HEAP32[$442>>2]|0; - $444 = (_sqlite3PagerWrite($443)|0); - HEAP32[$rc>>2] = $444; - $445 = HEAP32[$rc>>2]|0; - $446 = ($445|0)!=(0); - if (!($446)) { - break; - } - $447 = HEAP32[$2>>2]|0; - $448 = HEAP32[$447>>2]|0; - _releasePage($448); - break; - } - } - } while(0); - $449 = HEAP32[$pTrunk>>2]|0; - _releasePage($449); - $450 = HEAP32[$pPrevTrunk>>2]|0; - _releasePage($450); - $451 = HEAP32[$rc>>2]|0; - $452 = ($451|0)==(0); - $453 = HEAP32[$2>>2]|0; - do { - if ($452) { - $454 = HEAP32[$453>>2]|0; - $455 = (($454) + 68|0); - $456 = HEAP32[$455>>2]|0; - $457 = (_sqlite3PagerPageRefcount($456)|0); - $458 = ($457|0)>(1); - $459 = HEAP32[$2>>2]|0; - $460 = HEAP32[$459>>2]|0; - if (!($458)) { - HEAP8[$460>>0] = 0; - break; - } - _releasePage($460); - $461 = HEAP32[$2>>2]|0; - HEAP32[$461>>2] = 0; - $462 = (_sqlite3CorruptError(56442)|0); - HEAP32[$0>>2] = $462; - $464 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($464|0); - } else { - HEAP32[$453>>2] = 0; - } - } while(0); - $463 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $463; - $464 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($464|0); -} -function _relocatePage($pBt,$pDbPage,$eType,$iPtrPage,$iFreePage,$isCommit) { - $pBt = $pBt|0; - $pDbPage = $pDbPage|0; - $eType = $eType|0; - $iPtrPage = $iPtrPage|0; - $iFreePage = $iFreePage|0; - $isCommit = $isCommit|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $8 = 0, $9 = 0, $iDbPage = 0, $nextOvfl = 0; - var $pPager = 0, $pPtrPage = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 44|0; - $4 = sp + 28|0; - $5 = sp + 24|0; - $6 = sp + 20|0; - $pPtrPage = sp + 16|0; - $iDbPage = sp + 12|0; - $pPager = sp + 8|0; - $rc = sp + 4|0; - $nextOvfl = sp; - HEAP32[$1>>2] = $pBt; - HEAP32[$2>>2] = $pDbPage; - HEAP8[$3>>0] = $eType; - HEAP32[$4>>2] = $iPtrPage; - HEAP32[$5>>2] = $iFreePage; - HEAP32[$6>>2] = $isCommit; - $7 = HEAP32[$2>>2]|0; - $8 = (($7) + 72|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$iDbPage>>2] = $9; - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$10>>2]|0; - HEAP32[$pPager>>2] = $11; - $12 = HEAP32[$pPager>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = (($13) + 68|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$5>>2]|0; - $17 = HEAP32[$6>>2]|0; - $18 = (_sqlite3PagerMovepage($12,$15,$16,$17)|0); - HEAP32[$rc>>2] = $18; - $19 = HEAP32[$rc>>2]|0; - $20 = ($19|0)!=(0); - if ($20) { - $21 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $21; - $77 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($77|0); - } - $22 = HEAP32[$5>>2]|0; - $23 = HEAP32[$2>>2]|0; - $24 = (($23) + 72|0); - HEAP32[$24>>2] = $22; - $25 = HEAP8[$3>>0]|0; - $26 = $25&255; - $27 = ($26|0)==(5); - if ($27) { - label = 5; - } else { - $28 = HEAP8[$3>>0]|0; - $29 = $28&255; - $30 = ($29|0)==(1); - if ($30) { - label = 5; - } else { - $36 = HEAP32[$2>>2]|0; - $37 = (($36) + 56|0); - $38 = HEAP32[$37>>2]|0; - $39 = (_sqlite3Get4byte($38)|0); - HEAP32[$nextOvfl>>2] = $39; - $40 = HEAP32[$nextOvfl>>2]|0; - $41 = ($40|0)!=(0); - if ($41) { - $42 = HEAP32[$1>>2]|0; - $43 = HEAP32[$nextOvfl>>2]|0; - $44 = HEAP32[$5>>2]|0; - _ptrmapPut($42,$43,4,$44,$rc); - $45 = HEAP32[$rc>>2]|0; - $46 = ($45|0)!=(0); - if ($46) { - $47 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $47; - $77 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($77|0); - } - } - } - } - if ((label|0) == 5) { - $31 = HEAP32[$2>>2]|0; - $32 = (_setChildPtrmaps($31)|0); - HEAP32[$rc>>2] = $32; - $33 = HEAP32[$rc>>2]|0; - $34 = ($33|0)!=(0); - if ($34) { - $35 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $35; - $77 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($77|0); - } - } - $48 = HEAP8[$3>>0]|0; - $49 = $48&255; - $50 = ($49|0)!=(1); - do { - if ($50) { - $51 = HEAP32[$1>>2]|0; - $52 = HEAP32[$4>>2]|0; - $53 = (_btreeGetPage($51,$52,$pPtrPage,0)|0); - HEAP32[$rc>>2] = $53; - $54 = HEAP32[$rc>>2]|0; - $55 = ($54|0)!=(0); - if ($55) { - $56 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $56; - $77 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($77|0); - } - $57 = HEAP32[$pPtrPage>>2]|0; - $58 = (($57) + 68|0); - $59 = HEAP32[$58>>2]|0; - $60 = (_sqlite3PagerWrite($59)|0); - HEAP32[$rc>>2] = $60; - $61 = HEAP32[$rc>>2]|0; - $62 = ($61|0)!=(0); - $63 = HEAP32[$pPtrPage>>2]|0; - if ($62) { - _releasePage($63); - $64 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $64; - $77 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($77|0); - } else { - $65 = HEAP32[$iDbPage>>2]|0; - $66 = HEAP32[$5>>2]|0; - $67 = HEAP8[$3>>0]|0; - $68 = (_modifyPagePointer($63,$65,$66,$67)|0); - HEAP32[$rc>>2] = $68; - $69 = HEAP32[$pPtrPage>>2]|0; - _releasePage($69); - $70 = HEAP32[$rc>>2]|0; - $71 = ($70|0)==(0); - if (!($71)) { - break; - } - $72 = HEAP32[$1>>2]|0; - $73 = HEAP32[$5>>2]|0; - $74 = HEAP8[$3>>0]|0; - $75 = HEAP32[$4>>2]|0; - _ptrmapPut($72,$73,$74,$75,$rc); - break; - } - } - } while(0); - $76 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $76; - $77 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($77|0); -} -function _sqlite3PagerMovepage($pPager,$pPg,$pgno,$isCommit) { - $pPager = $pPager|0; - $pPg = $pPg|0; - $pgno = $pgno|0; - $isCommit = $isCommit|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0; - var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; - var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; - var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; - var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; - var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $needSyncPgno = 0, $origPgno = 0, $pPgHdr = 0, $pPgOld = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $4 = sp + 20|0; - $pPgOld = sp + 16|0; - $needSyncPgno = sp + 12|0; - $rc = sp + 8|0; - $origPgno = sp + 4|0; - $pPgHdr = sp; - HEAP32[$1>>2] = $pPager; - HEAP32[$2>>2] = $pPg; - HEAP32[$3>>2] = $pgno; - HEAP32[$4>>2] = $isCommit; - HEAP32[$needSyncPgno>>2] = 0; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 15|0); - $7 = HEAP8[$6>>0]|0; - $8 = ($7<<24>>24)!=(0); - if ($8) { - $9 = HEAP32[$2>>2]|0; - $10 = (_sqlite3PagerWrite($9)|0); - HEAP32[$rc>>2] = $10; - $11 = HEAP32[$rc>>2]|0; - $12 = ($11|0)!=(0); - if ($12) { - $13 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $13; - $110 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($110|0); - } - } - $14 = HEAP32[$2>>2]|0; - $15 = (($14) + 24|0); - $16 = HEAP16[$15>>1]|0; - $17 = $16&65535; - $18 = $17 & 2; - $19 = ($18|0)!=(0); - if ($19) { - $20 = HEAP32[$2>>2]|0; - $21 = (_subjRequiresPage($20)|0); - $22 = ($21|0)!=(0); - if ($22) { - $23 = HEAP32[$2>>2]|0; - $24 = (_subjournalPage($23)|0); - HEAP32[$rc>>2] = $24; - $25 = (0)!=($24|0); - if ($25) { - $26 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $26; - $110 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($110|0); - } - } - } - $27 = HEAP32[$2>>2]|0; - $28 = (($27) + 24|0); - $29 = HEAP16[$28>>1]|0; - $30 = $29&65535; - $31 = $30 & 4; - $32 = ($31|0)!=(0); - if ($32) { - $33 = HEAP32[$4>>2]|0; - $34 = ($33|0)!=(0); - if (!($34)) { - $35 = HEAP32[$2>>2]|0; - $36 = (($35) + 20|0); - $37 = HEAP32[$36>>2]|0; - HEAP32[$needSyncPgno>>2] = $37; - } - } - $38 = HEAP32[$2>>2]|0; - $39 = (($38) + 24|0); - $40 = HEAP16[$39>>1]|0; - $41 = $40&65535; - $42 = $41 & -5; - $43 = $42&65535; - HEAP16[$39>>1] = $43; - $44 = HEAP32[$1>>2]|0; - $45 = HEAP32[$3>>2]|0; - $46 = (_pager_lookup($44,$45)|0); - HEAP32[$pPgOld>>2] = $46; - $47 = HEAP32[$pPgOld>>2]|0; - $48 = ($47|0)!=(0|0); - do { - if ($48) { - $49 = HEAP32[$pPgOld>>2]|0; - $50 = (($49) + 24|0); - $51 = HEAP16[$50>>1]|0; - $52 = $51&65535; - $53 = $52 & 4; - $54 = HEAP32[$2>>2]|0; - $55 = (($54) + 24|0); - $56 = HEAP16[$55>>1]|0; - $57 = $56&65535; - $58 = $57 | $53; - $59 = $58&65535; - HEAP16[$55>>1] = $59; - $60 = HEAP32[$1>>2]|0; - $61 = (($60) + 15|0); - $62 = HEAP8[$61>>0]|0; - $63 = ($62<<24>>24)!=(0); - $64 = HEAP32[$pPgOld>>2]|0; - if ($63) { - $65 = HEAP32[$1>>2]|0; - $66 = (($65) + 24|0); - $67 = HEAP32[$66>>2]|0; - $68 = (($67) + 1)|0; - _sqlite3PcacheMove($64,$68); - break; - } else { - _sqlite3PcacheDrop($64); - break; - } - } - } while(0); - $69 = HEAP32[$2>>2]|0; - $70 = (($69) + 20|0); - $71 = HEAP32[$70>>2]|0; - HEAP32[$origPgno>>2] = $71; - $72 = HEAP32[$2>>2]|0; - $73 = HEAP32[$3>>2]|0; - _sqlite3PcacheMove($72,$73); - $74 = HEAP32[$2>>2]|0; - _sqlite3PcacheMakeDirty($74); - $75 = HEAP32[$1>>2]|0; - $76 = (($75) + 15|0); - $77 = HEAP8[$76>>0]|0; - $78 = ($77<<24>>24)!=(0); - if ($78) { - $79 = HEAP32[$pPgOld>>2]|0; - $80 = HEAP32[$origPgno>>2]|0; - _sqlite3PcacheMove($79,$80); - $81 = HEAP32[$pPgOld>>2]|0; - _sqlite3PagerUnrefNotNull($81); - } - $82 = HEAP32[$needSyncPgno>>2]|0; - $83 = ($82|0)!=(0); - do { - if ($83) { - $84 = HEAP32[$1>>2]|0; - $85 = HEAP32[$needSyncPgno>>2]|0; - $86 = (_sqlite3PagerAcquire($84,$85,$pPgHdr,0)|0); - HEAP32[$rc>>2] = $86; - $87 = HEAP32[$rc>>2]|0; - $88 = ($87|0)!=(0); - if (!($88)) { - $102 = HEAP32[$pPgHdr>>2]|0; - $103 = (($102) + 24|0); - $104 = HEAP16[$103>>1]|0; - $105 = $104&65535; - $106 = $105 | 4; - $107 = $106&65535; - HEAP16[$103>>1] = $107; - $108 = HEAP32[$pPgHdr>>2]|0; - _sqlite3PcacheMakeDirty($108); - $109 = HEAP32[$pPgHdr>>2]|0; - _sqlite3PagerUnrefNotNull($109); - break; - } - $89 = HEAP32[$needSyncPgno>>2]|0; - $90 = HEAP32[$1>>2]|0; - $91 = (($90) + 28|0); - $92 = HEAP32[$91>>2]|0; - $93 = ($89>>>0)<=($92>>>0); - if ($93) { - $94 = HEAP32[$1>>2]|0; - $95 = (($94) + 56|0); - $96 = HEAP32[$95>>2]|0; - $97 = HEAP32[$needSyncPgno>>2]|0; - $98 = HEAP32[$1>>2]|0; - $99 = (($98) + 200|0); - $100 = HEAP32[$99>>2]|0; - _sqlite3BitvecClear($96,$97,$100); - } - $101 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $101; - $110 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($110|0); - } - } while(0); - HEAP32[$0>>2] = 0; - $110 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($110|0); -} -function _setChildPtrmaps($pPage) { - $pPage = $pPage|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; - var $childPgno = 0, $childPgno1 = 0, $i = 0, $isInitOrig = 0, $nCell = 0, $pBt = 0, $pCell = 0, $pgno = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $i = sp + 28|0; - $nCell = sp + 24|0; - $rc = sp + 20|0; - $pBt = sp + 16|0; - $isInitOrig = sp + 36|0; - $pgno = sp + 12|0; - $pCell = sp + 8|0; - $childPgno = sp + 4|0; - $childPgno1 = sp; - HEAP32[$0>>2] = $pPage; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 52|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pBt>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP8[$4>>0]|0; - HEAP8[$isInitOrig>>0] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 72|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pgno>>2] = $8; - $9 = HEAP32[$0>>2]|0; - $10 = (_btreeInitPage($9)|0); - HEAP32[$rc>>2] = $10; - $11 = HEAP32[$rc>>2]|0; - $12 = ($11|0)!=(0); - if ($12) { - $77 = HEAP8[$isInitOrig>>0]|0; - $78 = HEAP32[$0>>2]|0; - HEAP8[$78>>0] = $77; - $79 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($79|0); - } - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 16|0); - $15 = HEAP16[$14>>1]|0; - $16 = $15&65535; - HEAP32[$nCell>>2] = $16; - HEAP32[$i>>2] = 0; - while(1) { - $17 = HEAP32[$i>>2]|0; - $18 = HEAP32[$nCell>>2]|0; - $19 = ($17|0)<($18|0); - $20 = HEAP32[$0>>2]|0; - if (!($19)) { - break; - } - $21 = (($20) + 56|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$0>>2]|0; - $24 = (($23) + 18|0); - $25 = HEAP16[$24>>1]|0; - $26 = $25&65535; - $27 = HEAP32[$i>>2]|0; - $28 = $27<<1; - $29 = HEAP32[$0>>2]|0; - $30 = (($29) + 64|0); - $31 = HEAP32[$30>>2]|0; - $32 = (($31) + ($28)|0); - $33 = HEAP8[$32>>0]|0; - $34 = $33&255; - $35 = $34 << 8; - $36 = HEAP32[$i>>2]|0; - $37 = $36<<1; - $38 = HEAP32[$0>>2]|0; - $39 = (($38) + 64|0); - $40 = HEAP32[$39>>2]|0; - $41 = (($40) + ($37)|0); - $42 = (($41) + 1|0); - $43 = HEAP8[$42>>0]|0; - $44 = $43&255; - $45 = $35 | $44; - $46 = $26 & $45; - $47 = (($22) + ($46)|0); - HEAP32[$pCell>>2] = $47; - $48 = HEAP32[$0>>2]|0; - $49 = HEAP32[$pCell>>2]|0; - _ptrmapPutOvflPtr($48,$49,$rc); - $50 = HEAP32[$0>>2]|0; - $51 = (($50) + 3|0); - $52 = HEAP8[$51>>0]|0; - $53 = ($52<<24>>24)!=(0); - if (!($53)) { - $54 = HEAP32[$pCell>>2]|0; - $55 = (_sqlite3Get4byte($54)|0); - HEAP32[$childPgno>>2] = $55; - $56 = HEAP32[$pBt>>2]|0; - $57 = HEAP32[$childPgno>>2]|0; - $58 = HEAP32[$pgno>>2]|0; - _ptrmapPut($56,$57,5,$58,$rc); - } - $59 = HEAP32[$i>>2]|0; - $60 = (($59) + 1)|0; - HEAP32[$i>>2] = $60; - } - $61 = (($20) + 3|0); - $62 = HEAP8[$61>>0]|0; - $63 = ($62<<24>>24)!=(0); - if ($63) { - $77 = HEAP8[$isInitOrig>>0]|0; - $78 = HEAP32[$0>>2]|0; - HEAP8[$78>>0] = $77; - $79 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($79|0); - } - $64 = HEAP32[$0>>2]|0; - $65 = (($64) + 5|0); - $66 = HEAP8[$65>>0]|0; - $67 = $66&255; - $68 = (($67) + 8)|0; - $69 = HEAP32[$0>>2]|0; - $70 = (($69) + 56|0); - $71 = HEAP32[$70>>2]|0; - $72 = (($71) + ($68)|0); - $73 = (_sqlite3Get4byte($72)|0); - HEAP32[$childPgno1>>2] = $73; - $74 = HEAP32[$pBt>>2]|0; - $75 = HEAP32[$childPgno1>>2]|0; - $76 = HEAP32[$pgno>>2]|0; - _ptrmapPut($74,$75,5,$76,$rc); - $77 = HEAP8[$isInitOrig>>0]|0; - $78 = HEAP32[$0>>2]|0; - HEAP8[$78>>0] = $77; - $79 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($79|0); -} -function _ptrmapPut($pBt,$key,$eType,$parent,$pRC) { - $pBt = $pBt|0; - $key = $key|0; - $eType = $eType|0; - $parent = $parent|0; - $pRC = $pRC|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $iPtrmap = 0, $offset = 0, $pDbPage = 0, $pPtrmap = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 36|0; - $3 = sp + 24|0; - $4 = sp + 20|0; - $pDbPage = sp + 16|0; - $pPtrmap = sp + 12|0; - $iPtrmap = sp + 8|0; - $offset = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pBt; - HEAP32[$1>>2] = $key; - HEAP8[$2>>0] = $eType; - HEAP32[$3>>2] = $parent; - HEAP32[$4>>2] = $pRC; - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0); - if ($7) { - STACKTOP = sp;return; - } - $8 = HEAP32[$1>>2]|0; - $9 = ($8|0)==(0); - if ($9) { - $10 = (_sqlite3CorruptError(51976)|0); - $11 = HEAP32[$4>>2]|0; - HEAP32[$11>>2] = $10; - STACKTOP = sp;return; - } - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (_ptrmapPageno($12,$13)|0); - HEAP32[$iPtrmap>>2] = $14; - $15 = HEAP32[$0>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$iPtrmap>>2]|0; - $18 = (_sqlite3PagerAcquire($16,$17,$pDbPage,0)|0); - HEAP32[$rc>>2] = $18; - $19 = HEAP32[$rc>>2]|0; - $20 = ($19|0)!=(0); - if ($20) { - $21 = HEAP32[$rc>>2]|0; - $22 = HEAP32[$4>>2]|0; - HEAP32[$22>>2] = $21; - STACKTOP = sp;return; - } - $23 = HEAP32[$1>>2]|0; - $24 = HEAP32[$iPtrmap>>2]|0; - $25 = (($23) - ($24))|0; - $26 = (($25) - 1)|0; - $27 = ($26*5)|0; - HEAP32[$offset>>2] = $27; - $28 = HEAP32[$offset>>2]|0; - $29 = ($28|0)<(0); - do { - if ($29) { - $30 = (_sqlite3CorruptError(51987)|0); - $31 = HEAP32[$4>>2]|0; - HEAP32[$31>>2] = $30; - } else { - $32 = HEAP32[$pDbPage>>2]|0; - $33 = (_sqlite3PagerGetData($32)|0); - HEAP32[$pPtrmap>>2] = $33; - $34 = HEAP8[$2>>0]|0; - $35 = $34&255; - $36 = HEAP32[$offset>>2]|0; - $37 = HEAP32[$pPtrmap>>2]|0; - $38 = (($37) + ($36)|0); - $39 = HEAP8[$38>>0]|0; - $40 = $39&255; - $41 = ($35|0)!=($40|0); - if (!($41)) { - $42 = HEAP32[$offset>>2]|0; - $43 = (($42) + 1)|0; - $44 = HEAP32[$pPtrmap>>2]|0; - $45 = (($44) + ($43)|0); - $46 = (_sqlite3Get4byte($45)|0); - $47 = HEAP32[$3>>2]|0; - $48 = ($46|0)!=($47|0); - if (!($48)) { - break; - } - } - $49 = HEAP32[$pDbPage>>2]|0; - $50 = (_sqlite3PagerWrite($49)|0); - HEAP32[$rc>>2] = $50; - $51 = HEAP32[$4>>2]|0; - HEAP32[$51>>2] = $50; - $52 = HEAP32[$rc>>2]|0; - $53 = ($52|0)==(0); - if ($53) { - $54 = HEAP8[$2>>0]|0; - $55 = HEAP32[$offset>>2]|0; - $56 = HEAP32[$pPtrmap>>2]|0; - $57 = (($56) + ($55)|0); - HEAP8[$57>>0] = $54; - $58 = HEAP32[$offset>>2]|0; - $59 = (($58) + 1)|0; - $60 = HEAP32[$pPtrmap>>2]|0; - $61 = (($60) + ($59)|0); - $62 = HEAP32[$3>>2]|0; - _sqlite3Put4byte($61,$62); - } - } - } while(0); - $63 = HEAP32[$pDbPage>>2]|0; - _sqlite3PagerUnref($63); - STACKTOP = sp;return; -} -function _modifyPagePointer($pPage,$iFrom,$iTo,$eType) { - $pPage = $pPage|0; - $iFrom = $iFrom|0; - $iTo = $iTo|0; - $eType = $eType|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; - var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; - var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; - var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; - var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $info = 0, $isInitOrig = 0, $nCell = 0, $pCell = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 56|0; - $1 = sp + 52|0; - $2 = sp + 48|0; - $3 = sp + 44|0; - $4 = sp + 61|0; - $isInitOrig = sp + 60|0; - $i = sp + 40|0; - $nCell = sp + 36|0; - $pCell = sp + 32|0; - $info = sp; - HEAP32[$1>>2] = $pPage; - HEAP32[$2>>2] = $iFrom; - HEAP32[$3>>2] = $iTo; - HEAP8[$4>>0] = $eType; - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = ($6|0)==(4); - $8 = HEAP32[$1>>2]|0; - do { - if ($7) { - $9 = (($8) + 56|0); - $10 = HEAP32[$9>>2]|0; - $11 = (_sqlite3Get4byte($10)|0); - $12 = HEAP32[$2>>2]|0; - $13 = ($11|0)!=($12|0); - if (!($13)) { - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 56|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$3>>2]|0; - _sqlite3Put4byte($17,$18); - break; - } - $14 = (_sqlite3CorruptError(54035)|0); - HEAP32[$0>>2] = $14; - $133 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($133|0); - } else { - $19 = HEAP8[$8>>0]|0; - HEAP8[$isInitOrig>>0] = $19; - $20 = HEAP32[$1>>2]|0; - (_btreeInitPage($20)|0); - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 16|0); - $23 = HEAP16[$22>>1]|0; - $24 = $23&65535; - HEAP32[$nCell>>2] = $24; - HEAP32[$i>>2] = 0; - while(1) { - $25 = HEAP32[$i>>2]|0; - $26 = HEAP32[$nCell>>2]|0; - $27 = ($25|0)<($26|0); - if (!($27)) { - break; - } - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 56|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 18|0); - $33 = HEAP16[$32>>1]|0; - $34 = $33&65535; - $35 = HEAP32[$i>>2]|0; - $36 = $35<<1; - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 64|0); - $39 = HEAP32[$38>>2]|0; - $40 = (($39) + ($36)|0); - $41 = HEAP8[$40>>0]|0; - $42 = $41&255; - $43 = $42 << 8; - $44 = HEAP32[$i>>2]|0; - $45 = $44<<1; - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 64|0); - $48 = HEAP32[$47>>2]|0; - $49 = (($48) + ($45)|0); - $50 = (($49) + 1|0); - $51 = HEAP8[$50>>0]|0; - $52 = $51&255; - $53 = $43 | $52; - $54 = $34 & $53; - $55 = (($30) + ($54)|0); - HEAP32[$pCell>>2] = $55; - $56 = HEAP8[$4>>0]|0; - $57 = $56&255; - $58 = ($57|0)==(3); - if ($58) { - $59 = HEAP32[$1>>2]|0; - $60 = HEAP32[$pCell>>2]|0; - _btreeParseCellPtr($59,$60,$info); - $61 = (($info) + 24|0); - $62 = HEAP16[$61>>1]|0; - $63 = $62&65535; - $64 = ($63|0)!=(0); - if ($64) { - $65 = HEAP32[$pCell>>2]|0; - $66 = (($info) + 24|0); - $67 = HEAP16[$66>>1]|0; - $68 = $67&65535; - $69 = (($65) + ($68)|0); - $70 = (($69) + 3|0); - $71 = HEAP32[$1>>2]|0; - $72 = (($71) + 56|0); - $73 = HEAP32[$72>>2]|0; - $74 = HEAP32[$1>>2]|0; - $75 = (($74) + 18|0); - $76 = HEAP16[$75>>1]|0; - $77 = $76&65535; - $78 = (($73) + ($77)|0); - $79 = ($70>>>0)<=($78>>>0); - if ($79) { - $80 = HEAP32[$2>>2]|0; - $81 = (($info) + 24|0); - $82 = HEAP16[$81>>1]|0; - $83 = $82&65535; - $84 = HEAP32[$pCell>>2]|0; - $85 = (($84) + ($83)|0); - $86 = (_sqlite3Get4byte($85)|0); - $87 = ($80|0)==($86|0); - if ($87) { - label = 11; - break; - } - } - } - } else { - $94 = HEAP32[$pCell>>2]|0; - $95 = (_sqlite3Get4byte($94)|0); - $96 = HEAP32[$2>>2]|0; - $97 = ($95|0)==($96|0); - if ($97) { - label = 13; - break; - } - } - $100 = HEAP32[$i>>2]|0; - $101 = (($100) + 1)|0; - HEAP32[$i>>2] = $101; - } - if ((label|0) == 11) { - $88 = (($info) + 24|0); - $89 = HEAP16[$88>>1]|0; - $90 = $89&65535; - $91 = HEAP32[$pCell>>2]|0; - $92 = (($91) + ($90)|0); - $93 = HEAP32[$3>>2]|0; - _sqlite3Put4byte($92,$93); - } - else if ((label|0) == 13) { - $98 = HEAP32[$pCell>>2]|0; - $99 = HEAP32[$3>>2]|0; - _sqlite3Put4byte($98,$99); - } - $102 = HEAP32[$i>>2]|0; - $103 = HEAP32[$nCell>>2]|0; - $104 = ($102|0)==($103|0); - do { - if ($104) { - $105 = HEAP8[$4>>0]|0; - $106 = $105&255; - $107 = ($106|0)!=(5); - if (!($107)) { - $108 = HEAP32[$1>>2]|0; - $109 = (($108) + 5|0); - $110 = HEAP8[$109>>0]|0; - $111 = $110&255; - $112 = (($111) + 8)|0; - $113 = HEAP32[$1>>2]|0; - $114 = (($113) + 56|0); - $115 = HEAP32[$114>>2]|0; - $116 = (($115) + ($112)|0); - $117 = (_sqlite3Get4byte($116)|0); - $118 = HEAP32[$2>>2]|0; - $119 = ($117|0)!=($118|0); - if (!($119)) { - $121 = HEAP32[$1>>2]|0; - $122 = (($121) + 5|0); - $123 = HEAP8[$122>>0]|0; - $124 = $123&255; - $125 = (($124) + 8)|0; - $126 = HEAP32[$1>>2]|0; - $127 = (($126) + 56|0); - $128 = HEAP32[$127>>2]|0; - $129 = (($128) + ($125)|0); - $130 = HEAP32[$3>>2]|0; - _sqlite3Put4byte($129,$130); - break; - } - } - $120 = (_sqlite3CorruptError(54069)|0); - HEAP32[$0>>2] = $120; - $133 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($133|0); - } - } while(0); - $131 = HEAP8[$isInitOrig>>0]|0; - $132 = HEAP32[$1>>2]|0; - HEAP8[$132>>0] = $131; - } - } while(0); - HEAP32[$0>>2] = 0; - $133 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($133|0); -} -function _ptrmapPutOvflPtr($pPage,$pCell,$pRC) { - $pPage = $pPage|0; - $pCell = $pCell|0; - $pRC = $pRC|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $info = 0, $ovfl = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $info = sp; - $ovfl = sp + 32|0; - HEAP32[$0>>2] = $pPage; - HEAP32[$1>>2] = $pCell; - HEAP32[$2>>2] = $pRC; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0); - if ($5) { - STACKTOP = sp;return; - } - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - _btreeParseCellPtr($6,$7,$info); - $8 = (($info) + 24|0); - $9 = HEAP16[$8>>1]|0; - $10 = ($9<<16>>16)!=(0); - if (!($10)) { - STACKTOP = sp;return; - } - $11 = (($info) + 24|0); - $12 = HEAP16[$11>>1]|0; - $13 = $12&65535; - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + ($13)|0); - $16 = (_sqlite3Get4byte($15)|0); - HEAP32[$ovfl>>2] = $16; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 52|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$ovfl>>2]|0; - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 72|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP32[$2>>2]|0; - _ptrmapPut($19,$20,3,$23,$24); - STACKTOP = sp;return; -} -function _sqlite3PcacheMove($p,$newPgno) { - $p = $p|0; - $newPgno = $newPgno|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pCache = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $newPgno; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 28|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pCache>>2] = $4; - $5 = HEAP32[((38512 + 140|0))>>2]|0; - $6 = HEAP32[$pCache>>2]|0; - $7 = (($6) + 40|0); - $8 = HEAP32[$7>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 20|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$1>>2]|0; - FUNCTION_TABLE_viiii[$5 & 3]($8,$10,$13,$14); - $15 = HEAP32[$1>>2]|0; - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 20|0); - HEAP32[$17>>2] = $15; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 24|0); - $20 = HEAP16[$19>>1]|0; - $21 = $20&65535; - $22 = $21 & 2; - $23 = ($22|0)!=(0); - if (!($23)) { - STACKTOP = sp;return; - } - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 24|0); - $26 = HEAP16[$25>>1]|0; - $27 = $26&65535; - $28 = $27 & 4; - $29 = ($28|0)!=(0); - if (!($29)) { - STACKTOP = sp;return; - } - $30 = HEAP32[$0>>2]|0; - _pcacheRemoveFromDirtyList($30); - $31 = HEAP32[$0>>2]|0; - _pcacheAddToDirtyList($31); - STACKTOP = sp;return; -} -function _btreeGetHasContent($pBt,$pgno) { - $pBt = $pBt|0; - $pgno = $pgno|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pBt; - HEAP32[$1>>2] = $pgno; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 60|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$p>>2] = $4; - $5 = HEAP32[$p>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - $16 = 0; - $15 = $16&1; - STACKTOP = sp;return ($15|0); - } - $7 = HEAP32[$1>>2]|0; - $8 = HEAP32[$p>>2]|0; - $9 = (_sqlite3BitvecSize($8)|0); - $10 = ($7>>>0)>($9>>>0); - if ($10) { - $16 = 1; - $15 = $16&1; - STACKTOP = sp;return ($15|0); - } - $11 = HEAP32[$p>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = (_sqlite3BitvecTest($11,$12)|0); - $14 = ($13|0)!=(0); - $16 = $14; - $15 = $16&1; - STACKTOP = sp;return ($15|0); -} -function _sqlite3PagerIsMemdb($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 15|0); - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - STACKTOP = sp;return ($4|0); -} -function _execSql($db,$pzErrMsg,$zSql) { - $db = $db|0; - $pzErrMsg = $pzErrMsg|0; - $zSql = $zSql|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $pStmt = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $pStmt = sp + 4|0; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pzErrMsg; - HEAP32[$3>>2] = $zSql; - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - HEAP32[$0>>2] = 7; - $21 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($21|0); - } - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$3>>2]|0; - $8 = (_sqlite3_prepare($6,$7,-1,$pStmt,0)|0); - $9 = (0)!=($8|0); - if ($9) { - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = (_sqlite3_errmsg($12)|0); - _sqlite3SetString($10,$11,$13,$vararg_buffer); - $14 = HEAP32[$1>>2]|0; - $15 = (_sqlite3_errcode($14)|0); - HEAP32[$0>>2] = $15; - $21 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($21|0); - } else { - $16 = HEAP32[$pStmt>>2]|0; - (_sqlite3_step($16)|0); - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$pStmt>>2]|0; - $19 = HEAP32[$2>>2]|0; - $20 = (_vacuumFinalize($17,$18,$19)|0); - HEAP32[$0>>2] = $20; - $21 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($21|0); - } - return 0|0; -} -function _sqlite3BtreeGetReserve($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $n = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($1); - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 4|0); - $4 = HEAP32[$3>>2]|0; - $5 = (($4) + 32|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + 36|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($6) - ($11))|0; - HEAP32[$n>>2] = $12; - $13 = HEAP32[$n>>2]|0; - STACKTOP = sp;return ($13|0); -} -function _execExecSql($db,$pzErrMsg,$zSql) { - $db = $db|0; - $pzErrMsg = $pzErrMsg|0; - $zSql = $zSql|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $pStmt = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pzErrMsg; - HEAP32[$3>>2] = $zSql; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$3>>2]|0; - $6 = (_sqlite3_prepare($4,$5,-1,$pStmt,0)|0); - HEAP32[$rc>>2] = $6; - $7 = HEAP32[$rc>>2]|0; - $8 = ($7|0)!=(0); - if ($8) { - $9 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $9; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); - } - while(1) { - $10 = HEAP32[$pStmt>>2]|0; - $11 = (_sqlite3_step($10)|0); - $12 = (100)==($11|0); - $13 = HEAP32[$1>>2]|0; - if (!($12)) { - label = 6; - break; - } - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$pStmt>>2]|0; - $16 = (_sqlite3_column_text($15,0)|0); - $17 = (_execSql($13,$14,$16)|0); - HEAP32[$rc>>2] = $17; - $18 = HEAP32[$rc>>2]|0; - $19 = ($18|0)!=(0); - if ($19) { - label = 5; - break; - } - } - if ((label|0) == 5) { - $20 = HEAP32[$1>>2]|0; - $21 = HEAP32[$pStmt>>2]|0; - $22 = HEAP32[$2>>2]|0; - (_vacuumFinalize($20,$21,$22)|0); - $23 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $23; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); - } - else if ((label|0) == 6) { - $24 = HEAP32[$pStmt>>2]|0; - $25 = HEAP32[$2>>2]|0; - $26 = (_vacuumFinalize($13,$24,$25)|0); - HEAP32[$0>>2] = $26; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); - } - return 0|0; -} -function _sqlite3BtreeCopyFile($pTo,$pFrom) { - $pTo = $pTo|0; - $pFrom = $pFrom|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $b = 0, $nByte = 0, $pFd = 0, $rc = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 68|0; - $1 = sp + 64|0; - $rc = sp + 60|0; - $pFd = sp + 56|0; - $b = sp + 8|0; - $nByte = sp; - HEAP32[$0>>2] = $pTo; - HEAP32[$1>>2] = $pFrom; - $2 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($2); - $3 = HEAP32[$1>>2]|0; - _sqlite3BtreeEnter($3); - $4 = HEAP32[$0>>2]|0; - $5 = (_sqlite3BtreePager($4)|0); - $6 = (_sqlite3PagerFile($5)|0); - HEAP32[$pFd>>2] = $6; - $7 = HEAP32[$pFd>>2]|0; - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)!=(0|0); - if ($9) { - $10 = HEAP32[$1>>2]|0; - $11 = (_sqlite3BtreeGetPageSize($10)|0); - $12 = ($11|0)<(0); - $13 = $12 << 31 >> 31; - $14 = HEAP32[$1>>2]|0; - $15 = (_sqlite3BtreeLastPage($14)|0); - $16 = (___muldi3(($11|0),($13|0),($15|0),0)|0); - $17 = tempRet0; - $18 = $nByte; - $19 = $18; - HEAP32[$19>>2] = $16; - $20 = (($18) + 4)|0; - $21 = $20; - HEAP32[$21>>2] = $17; - $22 = HEAP32[$pFd>>2]|0; - $23 = (_sqlite3OsFileControl($22,11,$nByte)|0); - HEAP32[$rc>>2] = $23; - $24 = HEAP32[$rc>>2]|0; - $25 = ($24|0)==(12); - $$ = $25 ? 0 : $23; - HEAP32[$rc>>2] = $$; - $26 = HEAP32[$rc>>2]|0; - $27 = ($26|0)!=(0); - if ($27) { - $50 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($50|0); - } - } - dest=$b+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $28 = HEAP32[$1>>2]|0; - $29 = HEAP32[$28>>2]|0; - $30 = (($b) + 20|0); - HEAP32[$30>>2] = $29; - $31 = HEAP32[$1>>2]|0; - $32 = (($b) + 24|0); - HEAP32[$32>>2] = $31; - $33 = HEAP32[$0>>2]|0; - $34 = (($b) + 4|0); - HEAP32[$34>>2] = $33; - $35 = (($b) + 16|0); - HEAP32[$35>>2] = 1; - (_sqlite3_backup_step($b,2147483647)|0); - $36 = (_sqlite3_backup_finish($b)|0); - HEAP32[$rc>>2] = $36; - $37 = HEAP32[$rc>>2]|0; - $38 = ($37|0)==(0); - if ($38) { - $39 = HEAP32[$0>>2]|0; - $40 = (($39) + 4|0); - $41 = HEAP32[$40>>2]|0; - $42 = (($41) + 22|0); - $43 = HEAP16[$42>>1]|0; - $44 = $43&65535; - $45 = $44 & -3; - $46 = $45&65535; - HEAP16[$42>>1] = $46; - $50 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($50|0); - } else { - $47 = (($b) + 4|0); - $48 = HEAP32[$47>>2]|0; - $49 = (_sqlite3BtreePager($48)|0); - _sqlite3PagerClearCache($49); - $50 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($50|0); - } - return 0|0; -} -function _sqlite3PagerClearCache($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 15|0); - $3 = HEAP8[$2>>0]|0; - $4 = ($3<<24>>24)!=(0); - if ($4) { - STACKTOP = sp;return; - } - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 12|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = ($8|0)==(0); - if (!($9)) { - STACKTOP = sp;return; - } - $10 = HEAP32[$0>>2]|0; - _pager_reset($10); - STACKTOP = sp;return; -} -function _vacuumFinalize($db,$pStmt,$pzErrMsg) { - $db = $db|0; - $pStmt = $pStmt|0; - $pzErrMsg = $pzErrMsg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $rc = sp + 4|0; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pStmt; - HEAP32[$2>>2] = $pzErrMsg; - $3 = HEAP32[$1>>2]|0; - $4 = (_sqlite3VdbeFinalize($3)|0); - HEAP32[$rc>>2] = $4; - $5 = HEAP32[$rc>>2]|0; - $6 = ($5|0)!=(0); - if (!($6)) { - $11 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($11|0); - } - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = (_sqlite3_errmsg($9)|0); - _sqlite3SetString($7,$8,$10,$vararg_buffer); - $11 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($11|0); -} -function _sqlite3PagerSharedLock($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; - var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; - var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; - var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; - var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bExists = 0, $bHotJournal = 0, $dbFileVers = 0, $f = 0; - var $fout = 0, $nPage = 0, $or$cond = 0, $pVfs = 0, $rc = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $rc = sp + 24|0; - $bHotJournal = sp + 20|0; - $pVfs = sp + 16|0; - $bExists = sp + 12|0; - $fout = sp + 8|0; - $f = sp + 4|0; - $nPage = sp; - $dbFileVers = sp + 40|0; - HEAP32[$1>>2] = $pPager; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 15|0); - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - $6 = ($5|0)!=(0); - if ($6) { - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 40|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)!=(0); - if ($10) { - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 40|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$0>>2] = $13; - $155 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($155|0); - } - } - $14 = HEAP32[$1>>2]|0; - $15 = (_pagerUseWal($14)|0); - $16 = ($15|0)!=(0); - L6: do { - if ($16) { - label = 37; - } else { - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 16|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = ($20|0)==(0); - if ($21) { - HEAP32[$bHotJournal>>2] = 1; - $22 = HEAP32[$1>>2]|0; - $23 = (_pager_wait_on_lock($22,1)|0); - HEAP32[$rc>>2] = $23; - $24 = HEAP32[$rc>>2]|0; - $25 = ($24|0)!=(0); - if (!($25)) { - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 17|0); - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = ($29|0)<=(1); - if ($30) { - $31 = HEAP32[$1>>2]|0; - $32 = (_hasHotJournal($31,$bHotJournal)|0); - HEAP32[$rc>>2] = $32; - } - $33 = HEAP32[$rc>>2]|0; - $34 = ($33|0)!=(0); - if (!($34)) { - $35 = HEAP32[$bHotJournal>>2]|0; - $36 = ($35|0)!=(0); - if ($36) { - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 14|0); - $39 = HEAP8[$38>>0]|0; - $40 = ($39<<24>>24)!=(0); - if ($40) { - HEAP32[$rc>>2] = 776; - break; - } - $41 = HEAP32[$1>>2]|0; - $42 = (_pagerLockDb($41,4)|0); - HEAP32[$rc>>2] = $42; - $43 = HEAP32[$rc>>2]|0; - $44 = ($43|0)!=(0); - if ($44) { - break; - } - $45 = HEAP32[$1>>2]|0; - $46 = (($45) + 64|0); - $47 = HEAP32[$46>>2]|0; - $48 = HEAP32[$47>>2]|0; - $49 = ($48|0)!=(0|0); - if (!($49)) { - $50 = HEAP32[$1>>2]|0; - $51 = HEAP32[$50>>2]|0; - HEAP32[$pVfs>>2] = $51; - $52 = HEAP32[$pVfs>>2]|0; - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + 172|0); - $55 = HEAP32[$54>>2]|0; - $56 = (_sqlite3OsAccess($52,$55,0,$bExists)|0); - HEAP32[$rc>>2] = $56; - $57 = HEAP32[$rc>>2]|0; - $58 = ($57|0)==(0); - if ($58) { - $59 = HEAP32[$bExists>>2]|0; - $60 = ($59|0)!=(0); - if ($60) { - HEAP32[$fout>>2] = 0; - HEAP32[$f>>2] = 2050; - $61 = HEAP32[$pVfs>>2]|0; - $62 = HEAP32[$1>>2]|0; - $63 = (($62) + 172|0); - $64 = HEAP32[$63>>2]|0; - $65 = HEAP32[$1>>2]|0; - $66 = (($65) + 64|0); - $67 = HEAP32[$66>>2]|0; - $68 = HEAP32[$f>>2]|0; - $69 = (_sqlite3OsOpen($61,$64,$67,$68,$fout)|0); - HEAP32[$rc>>2] = $69; - $70 = HEAP32[$rc>>2]|0; - $71 = ($70|0)==(0); - if ($71) { - $72 = HEAP32[$fout>>2]|0; - $73 = $72 & 1; - $74 = ($73|0)!=(0); - if ($74) { - $75 = (_sqlite3CantopenError(44932)|0); - HEAP32[$rc>>2] = $75; - $76 = HEAP32[$1>>2]|0; - $77 = (($76) + 64|0); - $78 = HEAP32[$77>>2]|0; - (_sqlite3OsClose($78)|0); - } - } - } - } - } - $79 = HEAP32[$1>>2]|0; - $80 = (($79) + 64|0); - $81 = HEAP32[$80>>2]|0; - $82 = HEAP32[$81>>2]|0; - $83 = ($82|0)!=(0|0); - $84 = HEAP32[$1>>2]|0; - if ($83) { - $85 = (_pagerSyncHotJournal($84)|0); - HEAP32[$rc>>2] = $85; - $86 = HEAP32[$rc>>2]|0; - $87 = ($86|0)==(0); - if ($87) { - $88 = HEAP32[$1>>2]|0; - $89 = (_pager_playback($88,1)|0); - HEAP32[$rc>>2] = $89; - $90 = HEAP32[$1>>2]|0; - $91 = (($90) + 16|0); - HEAP8[$91>>0] = 0; - } - } else { - $92 = (($84) + 4|0); - $93 = HEAP8[$92>>0]|0; - $94 = ($93<<24>>24)!=(0); - if (!($94)) { - $95 = HEAP32[$1>>2]|0; - (_pagerUnlockDb($95,1)|0); - } - } - $96 = HEAP32[$rc>>2]|0; - $97 = ($96|0)!=(0); - if ($97) { - $98 = HEAP32[$1>>2]|0; - $99 = HEAP32[$rc>>2]|0; - (_pager_error($98,$99)|0); - break; - } - } - $100 = HEAP32[$1>>2]|0; - $101 = (($100) + 12|0); - $102 = HEAP8[$101>>0]|0; - $103 = ($102<<24>>24)!=(0); - do { - if (!($103)) { - $104 = HEAP32[$1>>2]|0; - $105 = (($104) + 88|0); - $106 = HEAP32[$105>>2]|0; - $107 = ($106|0)!=(0|0); - if (!($107)) { - $108 = HEAP32[$1>>2]|0; - $109 = (($108) + 204|0); - $110 = HEAP32[$109>>2]|0; - $111 = (_sqlite3PcachePagecount($110)|0); - $112 = ($111|0)>(0); - if (!($112)) { - break; - } - } - HEAP32[$nPage>>2] = 0; - $113 = HEAP32[$1>>2]|0; - $114 = (_pagerPagecount($113,$nPage)|0); - HEAP32[$rc>>2] = $114; - $115 = HEAP32[$rc>>2]|0; - $116 = ($115|0)!=(0); - if ($116) { - break L6; - } - $117 = HEAP32[$nPage>>2]|0; - $118 = ($117>>>0)>(0); - if ($118) { - $119 = HEAP32[$1>>2]|0; - $120 = (($119) + 60|0); - $121 = HEAP32[$120>>2]|0; - $122 = (_sqlite3OsRead($121,$dbFileVers,16,24,0)|0); - HEAP32[$rc>>2] = $122; - $123 = HEAP32[$rc>>2]|0; - $124 = ($123|0)!=(0); - $125 = HEAP32[$rc>>2]|0; - $126 = ($125|0)!=(522); - $or$cond = $124 & $126; - if ($or$cond) { - break L6; - } - } else { - dest=$dbFileVers+0|0; stop=dest+16|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); - } - $127 = HEAP32[$1>>2]|0; - $128 = (($127) + 100|0); - $129 = (_memcmp($128,$dbFileVers,16)|0); - $130 = ($129|0)!=(0); - if ($130) { - $131 = HEAP32[$1>>2]|0; - _pager_reset($131); - } - } - } while(0); - $132 = HEAP32[$1>>2]|0; - $133 = (_pagerOpenWalIfPresent($132)|0); - HEAP32[$rc>>2] = $133; - label = 37; - } - } - } else { - label = 37; - } - } - } while(0); - if ((label|0) == 37) { - $134 = HEAP32[$1>>2]|0; - $135 = (_pagerUseWal($134)|0); - $136 = ($135|0)!=(0); - if ($136) { - $137 = HEAP32[$1>>2]|0; - $138 = (_pagerBeginReadTransaction($137)|0); - HEAP32[$rc>>2] = $138; - } - $139 = HEAP32[$1>>2]|0; - $140 = (($139) + 16|0); - $141 = HEAP8[$140>>0]|0; - $142 = $141&255; - $143 = ($142|0)==(0); - if ($143) { - $144 = HEAP32[$rc>>2]|0; - $145 = ($144|0)==(0); - if ($145) { - $146 = HEAP32[$1>>2]|0; - $147 = HEAP32[$1>>2]|0; - $148 = (($147) + 24|0); - $149 = (_pagerPagecount($146,$148)|0); - HEAP32[$rc>>2] = $149; - } - } - } - $150 = HEAP32[$rc>>2]|0; - $151 = ($150|0)!=(0); - $152 = HEAP32[$1>>2]|0; - if ($151) { - _pager_unlock($152); - } else { - $153 = (($152) + 16|0); - HEAP8[$153>>0] = 1; - } - $154 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $154; - $155 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($155|0); -} -function _hasHotJournal($pPager,$pExists) { - $pPager = $pPager|0; - $pExists = $pExists|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; - var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $9 = 0, $exists = 0, $f = 0, $first = 0, $jrnlOpen = 0, $locked = 0, $nPage = 0, $pVfs = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $pVfs = sp + 24|0; - $rc = sp + 20|0; - $exists = sp + 16|0; - $jrnlOpen = sp + 12|0; - $locked = sp + 8|0; - $nPage = sp + 4|0; - $f = sp; - $first = sp + 36|0; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $pExists; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$pVfs>>2] = $3; - HEAP32[$rc>>2] = 0; - HEAP32[$exists>>2] = 1; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 64|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)!=(0|0); - $9 = $8 ^ 1; - $10 = $9 ^ 1; - $11 = $10&1; - HEAP32[$jrnlOpen>>2] = $11; - $12 = HEAP32[$1>>2]|0; - HEAP32[$12>>2] = 0; - $13 = HEAP32[$jrnlOpen>>2]|0; - $14 = ($13|0)!=(0); - if (!($14)) { - $15 = HEAP32[$pVfs>>2]|0; - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 172|0); - $18 = HEAP32[$17>>2]|0; - $19 = (_sqlite3OsAccess($15,$18,0,$exists)|0); - HEAP32[$rc>>2] = $19; - } - $20 = HEAP32[$rc>>2]|0; - $21 = ($20|0)==(0); - if (!($21)) { - $84 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($84|0); - } - $22 = HEAP32[$exists>>2]|0; - $23 = ($22|0)!=(0); - if (!($23)) { - $84 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($84|0); - } - HEAP32[$locked>>2] = 0; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 60|0); - $26 = HEAP32[$25>>2]|0; - $27 = (_sqlite3OsCheckReservedLock($26,$locked)|0); - HEAP32[$rc>>2] = $27; - $28 = HEAP32[$rc>>2]|0; - $29 = ($28|0)==(0); - if (!($29)) { - $84 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($84|0); - } - $30 = HEAP32[$locked>>2]|0; - $31 = ($30|0)!=(0); - if ($31) { - $84 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($84|0); - } - $32 = HEAP32[$0>>2]|0; - $33 = (_pagerPagecount($32,$nPage)|0); - HEAP32[$rc>>2] = $33; - $34 = HEAP32[$rc>>2]|0; - $35 = ($34|0)==(0); - if (!($35)) { - $84 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($84|0); - } - $36 = HEAP32[$nPage>>2]|0; - $37 = ($36|0)==(0); - if ($37) { - $38 = HEAP32[$jrnlOpen>>2]|0; - $39 = ($38|0)!=(0); - if (!($39)) { - _sqlite3BeginBenignMalloc(); - $40 = HEAP32[$0>>2]|0; - $41 = (_pagerLockDb($40,2)|0); - $42 = ($41|0)==(0); - if ($42) { - $43 = HEAP32[$pVfs>>2]|0; - $44 = HEAP32[$0>>2]|0; - $45 = (($44) + 172|0); - $46 = HEAP32[$45>>2]|0; - (_sqlite3OsDelete($43,$46,0)|0); - $47 = HEAP32[$0>>2]|0; - $48 = (($47) + 4|0); - $49 = HEAP8[$48>>0]|0; - $50 = ($49<<24>>24)!=(0); - if (!($50)) { - $51 = HEAP32[$0>>2]|0; - (_pagerUnlockDb($51,1)|0); - } - } - _sqlite3EndBenignMalloc(); - $84 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($84|0); - } - } - $52 = HEAP32[$jrnlOpen>>2]|0; - $53 = ($52|0)!=(0); - if (!($53)) { - HEAP32[$f>>2] = 2049; - $54 = HEAP32[$pVfs>>2]|0; - $55 = HEAP32[$0>>2]|0; - $56 = (($55) + 172|0); - $57 = HEAP32[$56>>2]|0; - $58 = HEAP32[$0>>2]|0; - $59 = (($58) + 64|0); - $60 = HEAP32[$59>>2]|0; - $61 = HEAP32[$f>>2]|0; - $62 = (_sqlite3OsOpen($54,$57,$60,$61,$f)|0); - HEAP32[$rc>>2] = $62; - } - $63 = HEAP32[$rc>>2]|0; - $64 = ($63|0)==(0); - if ($64) { - HEAP8[$first>>0] = 0; - $65 = HEAP32[$0>>2]|0; - $66 = (($65) + 64|0); - $67 = HEAP32[$66>>2]|0; - $68 = (_sqlite3OsRead($67,$first,1,0,0)|0); - HEAP32[$rc>>2] = $68; - $69 = HEAP32[$rc>>2]|0; - $70 = ($69|0)==(522); - $$ = $70 ? 0 : $68; - HEAP32[$rc>>2] = $$; - $71 = HEAP32[$jrnlOpen>>2]|0; - $72 = ($71|0)!=(0); - if (!($72)) { - $73 = HEAP32[$0>>2]|0; - $74 = (($73) + 64|0); - $75 = HEAP32[$74>>2]|0; - (_sqlite3OsClose($75)|0); - } - $76 = HEAP8[$first>>0]|0; - $77 = $76&255; - $78 = ($77|0)!=(0); - $79 = $78&1; - $80 = HEAP32[$1>>2]|0; - HEAP32[$80>>2] = $79; - $84 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($84|0); - } else { - $81 = HEAP32[$rc>>2]|0; - $82 = ($81|0)==(14); - if (!($82)) { - $84 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($84|0); - } - $83 = HEAP32[$1>>2]|0; - HEAP32[$83>>2] = 1; - HEAP32[$rc>>2] = 0; - $84 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($84|0); - } - return 0|0; -} -function _sqlite3PcachePagecount($pCache) { - $pCache = $pCache|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nPage = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $nPage = sp; - HEAP32[$0>>2] = $pCache; - HEAP32[$nPage>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 40|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - $10 = HEAP32[$nPage>>2]|0; - STACKTOP = sp;return ($10|0); - } - $5 = HEAP32[((38512 + 128|0))>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 40|0); - $8 = HEAP32[$7>>2]|0; - $9 = (FUNCTION_TABLE_ii[$5 & 31]($8)|0); - HEAP32[$nPage>>2] = $9; - $10 = HEAP32[$nPage>>2]|0; - STACKTOP = sp;return ($10|0); -} -function _pagerPagecount($pPager,$pnPage) { - $pPager = $pPager|0; - $pnPage = $pnPage|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, $nPage = 0; - var $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $nPage = sp + 12|0; - $n = sp; - $rc = sp + 8|0; - HEAP32[$1>>2] = $pPager; - HEAP32[$2>>2] = $pnPage; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 208|0); - $5 = HEAP32[$4>>2]|0; - $6 = (_sqlite3WalDbsize($5)|0); - HEAP32[$nPage>>2] = $6; - $7 = HEAP32[$nPage>>2]|0; - $8 = ($7|0)==(0); - if ($8) { - $9 = $n; - $10 = $9; - HEAP32[$10>>2] = 0; - $11 = (($9) + 4)|0; - $12 = $11; - HEAP32[$12>>2] = 0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 60|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = ($16|0)!=(0|0); - if ($17) { - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 60|0); - $20 = HEAP32[$19>>2]|0; - $21 = (_sqlite3OsFileSize($20,$n)|0); - HEAP32[$rc>>2] = $21; - $22 = HEAP32[$rc>>2]|0; - $23 = ($22|0)!=(0); - if ($23) { - $24 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $24; - $57 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($57|0); - } - } - $25 = $n; - $26 = $25; - $27 = HEAP32[$26>>2]|0; - $28 = (($25) + 4)|0; - $29 = $28; - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 152|0); - $33 = HEAP32[$32>>2]|0; - $34 = ($33|0)<(0); - $35 = $34 << 31 >> 31; - $36 = (_i64Add(($27|0),($30|0),($33|0),($35|0))|0); - $37 = tempRet0; - $38 = (_i64Subtract(($36|0),($37|0),1,0)|0); - $39 = tempRet0; - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 152|0); - $42 = HEAP32[$41>>2]|0; - $43 = ($42|0)<(0); - $44 = $43 << 31 >> 31; - $45 = (___divdi3(($38|0),($39|0),($42|0),($44|0))|0); - $46 = tempRet0; - HEAP32[$nPage>>2] = $45; - } - $47 = HEAP32[$nPage>>2]|0; - $48 = HEAP32[$1>>2]|0; - $49 = (($48) + 156|0); - $50 = HEAP32[$49>>2]|0; - $51 = ($47>>>0)>($50>>>0); - if ($51) { - $52 = HEAP32[$nPage>>2]|0; - $53 = HEAP32[$1>>2]|0; - $54 = (($53) + 156|0); - HEAP32[$54>>2] = $52; - } - $55 = HEAP32[$nPage>>2]|0; - $56 = HEAP32[$2>>2]|0; - HEAP32[$56>>2] = $55; - HEAP32[$0>>2] = 0; - $57 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($57|0); -} -function _pagerOpenWalIfPresent($pPager) { - $pPager = $pPager|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $isWal = 0, $nPage = 0, $rc = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $rc = sp + 8|0; - $isWal = sp + 4|0; - $nPage = sp; - HEAP32[$1>>2] = $pPager; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 12|0); - $4 = HEAP8[$3>>0]|0; - $5 = ($4<<24>>24)!=(0); - do { - if (!($5)) { - $6 = HEAP32[$1>>2]|0; - $7 = (_pagerPagecount($6,$nPage)|0); - HEAP32[$rc>>2] = $7; - $8 = HEAP32[$rc>>2]|0; - $9 = ($8|0)!=(0); - if ($9) { - $10 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $10; - $35 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($35|0); - } - $11 = HEAP32[$nPage>>2]|0; - $12 = ($11|0)==(0); - $13 = HEAP32[$1>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 212|0); - $17 = HEAP32[$16>>2]|0; - if ($12) { - $18 = (_sqlite3OsDelete($14,$17,0)|0); - HEAP32[$rc>>2] = $18; - $19 = HEAP32[$rc>>2]|0; - $20 = ($19|0)==(5898); - $$ = $20 ? 0 : $18; - HEAP32[$rc>>2] = $$; - HEAP32[$isWal>>2] = 0; - } else { - $21 = (_sqlite3OsAccess($14,$17,0,$isWal)|0); - HEAP32[$rc>>2] = $21; - } - $22 = HEAP32[$rc>>2]|0; - $23 = ($22|0)==(0); - if ($23) { - $24 = HEAP32[$isWal>>2]|0; - $25 = ($24|0)!=(0); - $26 = HEAP32[$1>>2]|0; - if ($25) { - $27 = (_sqlite3PagerOpenWal($26,0)|0); - HEAP32[$rc>>2] = $27; - break; - } - $28 = (($26) + 5|0); - $29 = HEAP8[$28>>0]|0; - $30 = $29&255; - $31 = ($30|0)==(5); - if ($31) { - $32 = HEAP32[$1>>2]|0; - $33 = (($32) + 5|0); - HEAP8[$33>>0] = 0; - } - } - } - } while(0); - $34 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $34; - $35 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($35|0); -} -function _pagerBeginReadTransaction($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $changed = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $rc = sp + 4|0; - $changed = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$changed>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 208|0); - $3 = HEAP32[$2>>2]|0; - _sqlite3WalEndReadTransaction($3); - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 208|0); - $6 = HEAP32[$5>>2]|0; - $7 = (_sqlite3WalBeginReadTransaction($6,$changed)|0); - HEAP32[$rc>>2] = $7; - $8 = HEAP32[$rc>>2]|0; - $9 = ($8|0)!=(0); - if (!($9)) { - $10 = HEAP32[$changed>>2]|0; - $11 = ($10|0)!=(0); - if (!($11)) { - $13 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($13|0); - } - } - $12 = HEAP32[$0>>2]|0; - _pager_reset($12); - $13 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($13|0); -} -function _sqlite3WalBeginReadTransaction($pWal,$pChanged) { - $pWal = $pWal|0; - $pChanged = $pChanged|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cnt = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $rc = sp + 4|0; - $cnt = sp; - HEAP32[$0>>2] = $pWal; - HEAP32[$1>>2] = $pChanged; - HEAP32[$cnt>>2] = 0; - while(1) { - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$cnt>>2]|0; - $5 = (($4) + 1)|0; - HEAP32[$cnt>>2] = $5; - $6 = (_walTryBeginRead($2,$3,0,$5)|0); - HEAP32[$rc>>2] = $6; - $7 = HEAP32[$rc>>2]|0; - $8 = ($7|0)==(-1); - if (!($8)) { - break; - } - } - $9 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($9|0); -} -function _sqlite3PagerOpenWal($pPager,$pbOpen) { - $pPager = $pPager|0; - $pbOpen = $pbOpen|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pPager; - HEAP32[$2>>2] = $pbOpen; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 12|0); - $5 = HEAP8[$4>>0]|0; - $6 = ($5<<24>>24)!=(0); - do { - if ($6) { - label = 7; - } else { - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 208|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)!=(0|0); - if ($10) { - label = 7; - } else { - $11 = HEAP32[$1>>2]|0; - $12 = (_sqlite3PagerWalSupported($11)|0); - $13 = ($12|0)!=(0); - if ($13) { - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 64|0); - $16 = HEAP32[$15>>2]|0; - (_sqlite3OsClose($16)|0); - $17 = HEAP32[$1>>2]|0; - $18 = (_pagerOpenWal($17)|0); - HEAP32[$rc>>2] = $18; - $19 = HEAP32[$rc>>2]|0; - $20 = ($19|0)==(0); - if (!($20)) { - break; - } - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 5|0); - HEAP8[$22>>0] = 5; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 16|0); - HEAP8[$24>>0] = 0; - break; - } else { - HEAP32[$0>>2] = 14; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); - } - } - } - } while(0); - if ((label|0) == 7) { - $25 = HEAP32[$2>>2]|0; - HEAP32[$25>>2] = 1; - } - $26 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $26; - $27 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($27|0); -} -function _pagerOpenWal($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$rc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP8[$2>>0]|0; - $4 = ($3<<24>>24)!=(0); - if ($4) { - $5 = HEAP32[$0>>2]|0; - $6 = (_pagerExclusiveLock($5)|0); - HEAP32[$rc>>2] = $6; - } - $7 = HEAP32[$rc>>2]|0; - $8 = ($7|0)==(0); - if (!($8)) { - $32 = HEAP32[$0>>2]|0; - _pagerFixMaplimit($32); - $33 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($33|0); - } - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 60|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 212|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 4|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = HEAP32[$0>>2]|0; - $22 = (($21) + 160|0); - $23 = $22; - $24 = $23; - $25 = HEAP32[$24>>2]|0; - $26 = (($23) + 4)|0; - $27 = $26; - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$0>>2]|0; - $30 = (($29) + 208|0); - $31 = (_sqlite3WalOpen($10,$13,$16,$20,$25,$28,$30)|0); - HEAP32[$rc>>2] = $31; - $32 = HEAP32[$0>>2]|0; - _pagerFixMaplimit($32); - $33 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($33|0); -} -function _pagerExclusiveLock($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (_pagerLockDb($1,4)|0); - HEAP32[$rc>>2] = $2; - $3 = HEAP32[$rc>>2]|0; - $4 = ($3|0)!=(0); - if (!($4)) { - $6 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($6|0); - } - $5 = HEAP32[$0>>2]|0; - (_pagerUnlockDb($5,1)|0); - $6 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($6|0); -} -function _sqlite3WalOpen($pVfs,$pDbFd,$zWalName,$bNoShm,$0,$1,$ppWal) { - $pVfs = $pVfs|0; - $pDbFd = $pDbFd|0; - $zWalName = $zWalName|0; - $bNoShm = $bNoShm|0; - $0 = $0|0; - $1 = $1|0; - $ppWal = $ppWal|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; - var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $flags = 0, $iDC = 0, $pRet = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $2 = sp + 44|0; - $3 = sp + 40|0; - $4 = sp + 36|0; - $5 = sp + 32|0; - $6 = sp + 28|0; - $7 = sp; - $8 = sp + 24|0; - $rc = sp + 20|0; - $pRet = sp + 16|0; - $flags = sp + 12|0; - $iDC = sp + 8|0; - HEAP32[$3>>2] = $pVfs; - HEAP32[$4>>2] = $pDbFd; - HEAP32[$5>>2] = $zWalName; - HEAP32[$6>>2] = $bNoShm; - $9 = $7; - $10 = $9; - HEAP32[$10>>2] = $0; - $11 = (($9) + 4)|0; - $12 = $11; - HEAP32[$12>>2] = $1; - HEAP32[$8>>2] = $ppWal; - $13 = HEAP32[$8>>2]|0; - HEAP32[$13>>2] = 0; - $14 = HEAP32[$3>>2]|0; - $15 = (($14) + 4|0); - $16 = HEAP32[$15>>2]|0; - $17 = (112 + ($16))|0; - $18 = (_sqlite3MallocZero($17)|0); - HEAP32[$pRet>>2] = $18; - $19 = HEAP32[$pRet>>2]|0; - $20 = ($19|0)!=(0|0); - if (!($20)) { - HEAP32[$2>>2] = 7; - $93 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($93|0); - } - $21 = HEAP32[$3>>2]|0; - $22 = HEAP32[$pRet>>2]|0; - HEAP32[$22>>2] = $21; - $23 = HEAP32[$pRet>>2]|0; - $24 = (($23) + 112|0); - $25 = HEAP32[$pRet>>2]|0; - $26 = (($25) + 8|0); - HEAP32[$26>>2] = $24; - $27 = HEAP32[$4>>2]|0; - $28 = HEAP32[$pRet>>2]|0; - $29 = (($28) + 4|0); - HEAP32[$29>>2] = $27; - $30 = HEAP32[$pRet>>2]|0; - $31 = (($30) + 40|0); - HEAP16[$31>>1] = -1; - $32 = $7; - $33 = $32; - $34 = HEAP32[$33>>2]|0; - $35 = (($32) + 4)|0; - $36 = $35; - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$pRet>>2]|0; - $39 = (($38) + 16|0); - $40 = $39; - $41 = $40; - HEAP32[$41>>2] = $34; - $42 = (($40) + 4)|0; - $43 = $42; - HEAP32[$43>>2] = $37; - $44 = HEAP32[$5>>2]|0; - $45 = HEAP32[$pRet>>2]|0; - $46 = (($45) + 100|0); - HEAP32[$46>>2] = $44; - $47 = HEAP32[$pRet>>2]|0; - $48 = (($47) + 48|0); - HEAP8[$48>>0] = 1; - $49 = HEAP32[$pRet>>2]|0; - $50 = (($49) + 49|0); - HEAP8[$50>>0] = 1; - $51 = HEAP32[$6>>2]|0; - $52 = ($51|0)!=(0); - $53 = $52 ? 2 : 0; - $54 = $53&255; - $55 = HEAP32[$pRet>>2]|0; - $56 = (($55) + 43|0); - HEAP8[$56>>0] = $54; - HEAP32[$flags>>2] = 524294; - $57 = HEAP32[$3>>2]|0; - $58 = HEAP32[$5>>2]|0; - $59 = HEAP32[$pRet>>2]|0; - $60 = (($59) + 8|0); - $61 = HEAP32[$60>>2]|0; - $62 = HEAP32[$flags>>2]|0; - $63 = (_sqlite3OsOpen($57,$58,$61,$62,$flags)|0); - HEAP32[$rc>>2] = $63; - $64 = HEAP32[$rc>>2]|0; - $65 = ($64|0)==(0); - if ($65) { - $66 = HEAP32[$flags>>2]|0; - $67 = $66 & 1; - $68 = ($67|0)!=(0); - if ($68) { - $69 = HEAP32[$pRet>>2]|0; - $70 = (($69) + 46|0); - HEAP8[$70>>0] = 1; - } - } - $71 = HEAP32[$rc>>2]|0; - $72 = ($71|0)!=(0); - if ($72) { - $73 = HEAP32[$pRet>>2]|0; - _walIndexClose($73,0); - $74 = HEAP32[$pRet>>2]|0; - $75 = (($74) + 8|0); - $76 = HEAP32[$75>>2]|0; - (_sqlite3OsClose($76)|0); - $77 = HEAP32[$pRet>>2]|0; - _sqlite3_free($77); - } else { - $78 = HEAP32[$4>>2]|0; - $79 = (_sqlite3OsDeviceCharacteristics($78)|0); - HEAP32[$iDC>>2] = $79; - $80 = HEAP32[$iDC>>2]|0; - $81 = $80 & 1024; - $82 = ($81|0)!=(0); - if ($82) { - $83 = HEAP32[$pRet>>2]|0; - $84 = (($83) + 48|0); - HEAP8[$84>>0] = 0; - } - $85 = HEAP32[$iDC>>2]|0; - $86 = $85 & 4096; - $87 = ($86|0)!=(0); - if ($87) { - $88 = HEAP32[$pRet>>2]|0; - $89 = (($88) + 49|0); - HEAP8[$89>>0] = 0; - } - $90 = HEAP32[$pRet>>2]|0; - $91 = HEAP32[$8>>2]|0; - HEAP32[$91>>2] = $90; - } - $92 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $92; - $93 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($93|0); -} -function _sqlite3WalDbsize($pWal) { - $pWal = $pWal|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $pWal; - $2 = HEAP32[$1>>2]|0; - $3 = ($2|0)!=(0|0); - if ($3) { - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 40|0); - $6 = HEAP16[$5>>1]|0; - $7 = $6 << 16 >> 16; - $8 = ($7|0)>=(0); - if ($8) { - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 52|0); - $11 = (($10) + 20|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$0>>2] = $12; - $13 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($13|0); - } - } - HEAP32[$0>>2] = 0; - $13 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($13|0); -} -function _sqlite3OsCheckReservedLock($id,$pResOut) { - $id = $id|0; - $pResOut = $pResOut|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $id; - HEAP32[$1>>2] = $pResOut; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 36|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (FUNCTION_TABLE_iii[$5 & 63]($6,$7)|0); - STACKTOP = sp;return ($8|0); -} -function _rowSetEntrySort($pIn) { - $pIn = $pIn|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aBucket = 0, $i = 0, $pNext = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 176|0; - $0 = sp + 168|0; - $i = sp + 164|0; - $pNext = sp + 160|0; - $aBucket = sp; - HEAP32[$0>>2] = $pIn; - _memset(($aBucket|0),0,160)|0; - while(1) { - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if (!($2)) { - break; - } - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 8|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pNext>>2] = $5; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 8|0); - HEAP32[$7>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $8 = HEAP32[$i>>2]|0; - $9 = (($aBucket) + ($8<<2)|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)!=(0|0); - if (!($11)) { - break; - } - $12 = HEAP32[$i>>2]|0; - $13 = (($aBucket) + ($12<<2)|0); - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (_rowSetEntryMerge($14,$15)|0); - HEAP32[$0>>2] = $16; - $17 = HEAP32[$i>>2]|0; - $18 = (($aBucket) + ($17<<2)|0); - HEAP32[$18>>2] = 0; - $19 = HEAP32[$i>>2]|0; - $20 = (($19) + 1)|0; - HEAP32[$i>>2] = $20; - } - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$i>>2]|0; - $23 = (($aBucket) + ($22<<2)|0); - HEAP32[$23>>2] = $21; - $24 = HEAP32[$pNext>>2]|0; - HEAP32[$0>>2] = $24; - } - HEAP32[$0>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $25 = HEAP32[$i>>2]|0; - $26 = ($25>>>0)<(40); - $27 = HEAP32[$0>>2]|0; - if (!($26)) { - break; - } - $28 = HEAP32[$i>>2]|0; - $29 = (($aBucket) + ($28<<2)|0); - $30 = HEAP32[$29>>2]|0; - $31 = (_rowSetEntryMerge($27,$30)|0); - HEAP32[$0>>2] = $31; - $32 = HEAP32[$i>>2]|0; - $33 = (($32) + 1)|0; - HEAP32[$i>>2] = $33; - } - STACKTOP = sp;return ($27|0); -} -function _rowSetListToTree($pList) { - $pList = $pList|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iDepth = 0, $p = 0, $pLeft = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $iDepth = sp + 8|0; - $p = sp + 4|0; - $pLeft = sp; - HEAP32[$0>>2] = $pList; - $1 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $1; - $2 = HEAP32[$p>>2]|0; - $3 = (($2) + 8|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$0>>2] = $4; - $5 = HEAP32[$p>>2]|0; - $6 = (($5) + 8|0); - HEAP32[$6>>2] = 0; - $7 = HEAP32[$p>>2]|0; - $8 = (($7) + 12|0); - HEAP32[$8>>2] = 0; - HEAP32[$iDepth>>2] = 1; - while(1) { - $9 = HEAP32[$0>>2]|0; - $10 = ($9|0)!=(0|0); - $11 = HEAP32[$p>>2]|0; - if (!($10)) { - break; - } - HEAP32[$pLeft>>2] = $11; - $12 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $12; - $13 = HEAP32[$p>>2]|0; - $14 = (($13) + 8|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$0>>2] = $15; - $16 = HEAP32[$pLeft>>2]|0; - $17 = HEAP32[$p>>2]|0; - $18 = (($17) + 12|0); - HEAP32[$18>>2] = $16; - $19 = HEAP32[$iDepth>>2]|0; - $20 = (_rowSetNDeepTree($0,$19)|0); - $21 = HEAP32[$p>>2]|0; - $22 = (($21) + 8|0); - HEAP32[$22>>2] = $20; - $23 = HEAP32[$iDepth>>2]|0; - $24 = (($23) + 1)|0; - HEAP32[$iDepth>>2] = $24; - } - STACKTOP = sp;return ($11|0); -} -function _rowSetTreeToList($pIn,$ppFirst,$ppLast) { - $pIn = $pIn|0; - $ppFirst = $ppFirst|0; - $ppLast = $ppLast|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pIn; - HEAP32[$1>>2] = $ppFirst; - HEAP32[$2>>2] = $ppLast; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 12|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0|0); - $7 = HEAP32[$0>>2]|0; - if ($6) { - $8 = (($7) + 12|0); - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$1>>2]|0; - _rowSetTreeToList($9,$10,$p); - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$p>>2]|0; - $13 = (($12) + 8|0); - HEAP32[$13>>2] = $11; - } else { - $14 = HEAP32[$1>>2]|0; - HEAP32[$14>>2] = $7; - } - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 8|0); - $17 = HEAP32[$16>>2]|0; - $18 = ($17|0)!=(0|0); - $19 = HEAP32[$0>>2]|0; - if ($18) { - $20 = (($19) + 8|0); - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 8|0); - $24 = HEAP32[$2>>2]|0; - _rowSetTreeToList($21,$23,$24); - STACKTOP = sp;return; - } else { - $25 = HEAP32[$2>>2]|0; - HEAP32[$25>>2] = $19; - STACKTOP = sp;return; - } -} -function _rowSetEntryMerge($pA,$pB) { - $pA = $pA|0; - $pB = $pB|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $8 = 0, $9 = 0, $head = 0, $pTail = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $head = sp; - $pTail = sp + 16|0; - HEAP32[$0>>2] = $pA; - HEAP32[$1>>2] = $pB; - HEAP32[$pTail>>2] = $head; - while(1) { - $2 = HEAP32[$0>>2]|0; - $3 = ($2|0)!=(0|0); - if ($3) { - $4 = HEAP32[$1>>2]|0; - $5 = ($4|0)!=(0|0); - $74 = $5; - } else { - $74 = 0; - } - $6 = HEAP32[$0>>2]|0; - if (!($74)) { - break; - } - $7 = $6; - $8 = $7; - $9 = HEAP32[$8>>2]|0; - $10 = (($7) + 4)|0; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = $13; - $15 = $14; - $16 = HEAP32[$15>>2]|0; - $17 = (($14) + 4)|0; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = ($12|0)<($19|0); - $21 = ($12|0)==($19|0); - $22 = ($9>>>0)<($16>>>0); - $23 = $21 & $22; - $24 = $20 | $23; - if ($24) { - $25 = HEAP32[$0>>2]|0; - $26 = HEAP32[$pTail>>2]|0; - $27 = (($26) + 8|0); - HEAP32[$27>>2] = $25; - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 8|0); - $30 = HEAP32[$29>>2]|0; - HEAP32[$0>>2] = $30; - $31 = HEAP32[$pTail>>2]|0; - $32 = (($31) + 8|0); - $33 = HEAP32[$32>>2]|0; - HEAP32[$pTail>>2] = $33; - continue; - } - $34 = HEAP32[$1>>2]|0; - $35 = $34; - $36 = $35; - $37 = HEAP32[$36>>2]|0; - $38 = (($35) + 4)|0; - $39 = $38; - $40 = HEAP32[$39>>2]|0; - $41 = HEAP32[$0>>2]|0; - $42 = $41; - $43 = $42; - $44 = HEAP32[$43>>2]|0; - $45 = (($42) + 4)|0; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = ($40|0)<($47|0); - $49 = ($40|0)==($47|0); - $50 = ($37>>>0)<($44>>>0); - $51 = $49 & $50; - $52 = $48 | $51; - if ($52) { - $53 = HEAP32[$1>>2]|0; - $54 = HEAP32[$pTail>>2]|0; - $55 = (($54) + 8|0); - HEAP32[$55>>2] = $53; - $56 = HEAP32[$1>>2]|0; - $57 = (($56) + 8|0); - $58 = HEAP32[$57>>2]|0; - HEAP32[$1>>2] = $58; - $59 = HEAP32[$pTail>>2]|0; - $60 = (($59) + 8|0); - $61 = HEAP32[$60>>2]|0; - HEAP32[$pTail>>2] = $61; - continue; - } else { - $62 = HEAP32[$0>>2]|0; - $63 = (($62) + 8|0); - $64 = HEAP32[$63>>2]|0; - HEAP32[$0>>2] = $64; - continue; - } - } - $65 = ($6|0)!=(0|0); - if ($65) { - $66 = HEAP32[$0>>2]|0; - $67 = HEAP32[$pTail>>2]|0; - $68 = (($67) + 8|0); - HEAP32[$68>>2] = $66; - $72 = (($head) + 8|0); - $73 = HEAP32[$72>>2]|0; - STACKTOP = sp;return ($73|0); - } else { - $69 = HEAP32[$1>>2]|0; - $70 = HEAP32[$pTail>>2]|0; - $71 = (($70) + 8|0); - HEAP32[$71>>2] = $69; - $72 = (($head) + 8|0); - $73 = HEAP32[$72>>2]|0; - STACKTOP = sp;return ($73|0); - } - return 0|0; -} -function _rowSetEntryAlloc($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pNew = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pNew = sp; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 24|0); - $4 = HEAP16[$3>>1]|0; - $5 = $4&65535; - $6 = ($5|0)==(0); - do { - if ($6) { - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 4|0); - $9 = HEAP32[$8>>2]|0; - $10 = (_sqlite3DbMallocRaw($9,1016)|0); - HEAP32[$pNew>>2] = $10; - $11 = HEAP32[$pNew>>2]|0; - $12 = ($11|0)==(0|0); - if (!($12)) { - $13 = HEAP32[$1>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$pNew>>2]|0; - HEAP32[$15>>2] = $14; - $16 = HEAP32[$pNew>>2]|0; - $17 = HEAP32[$1>>2]|0; - HEAP32[$17>>2] = $16; - $18 = HEAP32[$pNew>>2]|0; - $19 = (($18) + 8|0); - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 16|0); - HEAP32[$21>>2] = $19; - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 24|0); - HEAP16[$23>>1] = 63; - break; - } - HEAP32[$0>>2] = 0; - $32 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($32|0); - } - } while(0); - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 24|0); - $26 = HEAP16[$25>>1]|0; - $27 = (($26) + -1)<<16>>16; - HEAP16[$25>>1] = $27; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 16|0); - $30 = HEAP32[$29>>2]|0; - $31 = (($30) + 16|0); - HEAP32[$29>>2] = $31; - HEAP32[$0>>2] = $30; - $32 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($32|0); -} -function _rowSetNDeepTree($ppList,$iDepth) { - $ppList = $ppList|0; - $iDepth = $iDepth|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $p = 0, $pLeft = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $p = sp + 4|0; - $pLeft = sp; - HEAP32[$1>>2] = $ppList; - HEAP32[$2>>2] = $iDepth; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)==(0|0); - if ($5) { - HEAP32[$0>>2] = 0; - $40 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($40|0); - } - $6 = HEAP32[$2>>2]|0; - $7 = ($6|0)==(1); - $8 = HEAP32[$1>>2]|0; - if ($7) { - $9 = HEAP32[$8>>2]|0; - HEAP32[$p>>2] = $9; - $10 = HEAP32[$p>>2]|0; - $11 = (($10) + 8|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$1>>2]|0; - HEAP32[$13>>2] = $12; - $14 = HEAP32[$p>>2]|0; - $15 = (($14) + 8|0); - HEAP32[$15>>2] = 0; - $16 = HEAP32[$p>>2]|0; - $17 = (($16) + 12|0); - HEAP32[$17>>2] = 0; - $18 = HEAP32[$p>>2]|0; - HEAP32[$0>>2] = $18; - $40 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($40|0); - } - $19 = HEAP32[$2>>2]|0; - $20 = (($19) - 1)|0; - $21 = (_rowSetNDeepTree($8,$20)|0); - HEAP32[$pLeft>>2] = $21; - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$22>>2]|0; - HEAP32[$p>>2] = $23; - $24 = HEAP32[$p>>2]|0; - $25 = ($24|0)==(0|0); - $26 = HEAP32[$pLeft>>2]|0; - if ($25) { - HEAP32[$0>>2] = $26; - $40 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($40|0); - } else { - $27 = HEAP32[$p>>2]|0; - $28 = (($27) + 12|0); - HEAP32[$28>>2] = $26; - $29 = HEAP32[$p>>2]|0; - $30 = (($29) + 8|0); - $31 = HEAP32[$30>>2]|0; - $32 = HEAP32[$1>>2]|0; - HEAP32[$32>>2] = $31; - $33 = HEAP32[$1>>2]|0; - $34 = HEAP32[$2>>2]|0; - $35 = (($34) - 1)|0; - $36 = (_rowSetNDeepTree($33,$35)|0); - $37 = HEAP32[$p>>2]|0; - $38 = (($37) + 8|0); - HEAP32[$38>>2] = $36; - $39 = HEAP32[$p>>2]|0; - HEAP32[$0>>2] = $39; - $40 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($40|0); - } - return 0|0; -} -function _rowSetToList($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 26|0); - $3 = HEAP16[$2>>1]|0; - $4 = $3&65535; - $5 = $4 & 1; - $6 = ($5|0)==(0); - if ($6) { - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 8|0); - $9 = HEAP32[$8>>2]|0; - $10 = (_rowSetEntrySort($9)|0); - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 8|0); - HEAP32[$12>>2] = $10; - } - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 26|0); - $15 = HEAP16[$14>>1]|0; - $16 = $15&65535; - $17 = $16 | 2; - $18 = $17&65535; - HEAP16[$14>>1] = $18; - STACKTOP = sp;return; -} -function _sqlite3RowSetInit($db,$pSpace,$N) { - $db = $db|0; - $pSpace = $pSpace|0; - $N = $N|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pSpace; - HEAP32[$2>>2] = $N; - $3 = HEAP32[$1>>2]|0; - HEAP32[$p>>2] = $3; - $4 = HEAP32[$p>>2]|0; - HEAP32[$4>>2] = 0; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$p>>2]|0; - $7 = (($6) + 4|0); - HEAP32[$7>>2] = $5; - $8 = HEAP32[$p>>2]|0; - $9 = (($8) + 8|0); - HEAP32[$9>>2] = 0; - $10 = HEAP32[$p>>2]|0; - $11 = (($10) + 12|0); - HEAP32[$11>>2] = 0; - $12 = HEAP32[$p>>2]|0; - $13 = (($12) + 20|0); - HEAP32[$13>>2] = 0; - $14 = HEAP32[$p>>2]|0; - $15 = (($14) + 32|0); - $16 = HEAP32[$p>>2]|0; - $17 = (($16) + 16|0); - HEAP32[$17>>2] = $15; - $18 = HEAP32[$2>>2]|0; - $19 = (($18) - 32)|0; - $20 = (($19>>>0) / 16)&-1; - $21 = $20&65535; - $22 = HEAP32[$p>>2]|0; - $23 = (($22) + 24|0); - HEAP16[$23>>1] = $21; - $24 = HEAP32[$p>>2]|0; - $25 = (($24) + 26|0); - HEAP16[$25>>1] = 1; - $26 = HEAP32[$p>>2]|0; - $27 = (($26) + 28|0); - HEAP32[$27>>2] = 0; - $28 = HEAP32[$p>>2]|0; - STACKTOP = sp;return ($28|0); -} -function _sqlite3PagerRefcount($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 204|0); - $3 = HEAP32[$2>>2]|0; - $4 = (_sqlite3PcacheRefCount($3)|0); - STACKTOP = sp;return ($4|0); -} -function _setPageReferenced($pCheck,$iPg) { - $pCheck = $pCheck|0; - $iPg = $iPg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pCheck; - HEAP32[$1>>2] = $iPg; - $2 = HEAP32[$1>>2]|0; - $3 = $2 & 7; - $4 = 1 << $3; - $5 = HEAP32[$1>>2]|0; - $6 = (($5>>>0) / 8)&-1; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 8|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + ($6)|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = $12 | $4; - $14 = $13&255; - HEAP8[$10>>0] = $14; - STACKTOP = sp;return; -} -function _checkList($pCheck,$isFreeList,$iPage,$N,$zContext) { - $pCheck = $pCheck|0; - $isFreeList = $isFreeList|0; - $iPage = $iPage|0; - $N = $N|0; - $zContext = $zContext|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; - var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; - var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; - var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; - var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; - var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $expected = 0, $i = 0, $iFirst = 0, $iFreePage = 0, $n = 0, $pOvflData = 0, $pOvflPage = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer6 = sp; - $0 = sp + 56|0; - $1 = sp + 52|0; - $2 = sp + 48|0; - $3 = sp + 44|0; - $4 = sp + 40|0; - $i = sp + 36|0; - $expected = sp + 32|0; - $iFirst = sp + 28|0; - $pOvflPage = sp + 24|0; - $pOvflData = sp + 20|0; - $n = sp + 16|0; - $iFreePage = sp + 12|0; - HEAP32[$0>>2] = $pCheck; - HEAP32[$1>>2] = $isFreeList; - HEAP32[$2>>2] = $iPage; - HEAP32[$3>>2] = $N; - HEAP32[$4>>2] = $zContext; - $5 = HEAP32[$3>>2]|0; - HEAP32[$expected>>2] = $5; - $6 = HEAP32[$2>>2]|0; - HEAP32[$iFirst>>2] = $6; - while(1) { - $7 = HEAP32[$3>>2]|0; - $8 = (($7) + -1)|0; - HEAP32[$3>>2] = $8; - $9 = ($7|0)>(0); - if (!($9)) { - label = 24; - break; - } - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 16|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)!=(0); - if (!($13)) { - label = 24; - break; - } - $14 = HEAP32[$2>>2]|0; - $15 = ($14|0)<(1); - $16 = HEAP32[$0>>2]|0; - if ($15) { - label = 5; - break; - } - $22 = HEAP32[$2>>2]|0; - $23 = HEAP32[$4>>2]|0; - $24 = (_checkRef($16,$22,$23)|0); - $25 = ($24|0)!=(0); - if ($25) { - label = 24; - break; - } - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 4|0); - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$2>>2]|0; - $30 = (_sqlite3PagerAcquire($28,$29,$pOvflPage,0)|0); - $31 = ($30|0)!=(0); - if ($31) { - label = 8; - break; - } - $35 = HEAP32[$pOvflPage>>2]|0; - $36 = (_sqlite3PagerGetData($35)|0); - HEAP32[$pOvflData>>2] = $36; - $37 = HEAP32[$1>>2]|0; - $38 = ($37|0)!=(0); - do { - if ($38) { - $39 = HEAP32[$pOvflData>>2]|0; - $40 = (($39) + 4|0); - $41 = (_sqlite3Get4byte($40)|0); - HEAP32[$n>>2] = $41; - $42 = HEAP32[$0>>2]|0; - $43 = HEAP32[$42>>2]|0; - $44 = (($43) + 17|0); - $45 = HEAP8[$44>>0]|0; - $46 = ($45<<24>>24)!=(0); - if ($46) { - $47 = HEAP32[$0>>2]|0; - $48 = HEAP32[$2>>2]|0; - $49 = HEAP32[$4>>2]|0; - _checkPtrmap($47,$48,2,0,$49); - } - $50 = HEAP32[$n>>2]|0; - $51 = HEAP32[$0>>2]|0; - $52 = HEAP32[$51>>2]|0; - $53 = (($52) + 36|0); - $54 = HEAP32[$53>>2]|0; - $55 = (($54|0) / 4)&-1; - $56 = (($55) - 2)|0; - $57 = ($50|0)>($56|0); - if ($57) { - $58 = HEAP32[$0>>2]|0; - $59 = HEAP32[$4>>2]|0; - $60 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer6>>2] = $60; - _checkAppendMsg($58,$59,34224,$vararg_buffer6); - $61 = HEAP32[$3>>2]|0; - $62 = (($61) + -1)|0; - HEAP32[$3>>2] = $62; - break; - } - HEAP32[$i>>2] = 0; - while(1) { - $63 = HEAP32[$i>>2]|0; - $64 = HEAP32[$n>>2]|0; - $65 = ($63|0)<($64|0); - if (!($65)) { - break; - } - $66 = HEAP32[$i>>2]|0; - $67 = $66<<2; - $68 = (8 + ($67))|0; - $69 = HEAP32[$pOvflData>>2]|0; - $70 = (($69) + ($68)|0); - $71 = (_sqlite3Get4byte($70)|0); - HEAP32[$iFreePage>>2] = $71; - $72 = HEAP32[$0>>2]|0; - $73 = HEAP32[$72>>2]|0; - $74 = (($73) + 17|0); - $75 = HEAP8[$74>>0]|0; - $76 = ($75<<24>>24)!=(0); - if ($76) { - $77 = HEAP32[$0>>2]|0; - $78 = HEAP32[$iFreePage>>2]|0; - $79 = HEAP32[$4>>2]|0; - _checkPtrmap($77,$78,2,0,$79); - } - $80 = HEAP32[$0>>2]|0; - $81 = HEAP32[$iFreePage>>2]|0; - $82 = HEAP32[$4>>2]|0; - (_checkRef($80,$81,$82)|0); - $83 = HEAP32[$i>>2]|0; - $84 = (($83) + 1)|0; - HEAP32[$i>>2] = $84; - } - $85 = HEAP32[$n>>2]|0; - $86 = HEAP32[$3>>2]|0; - $87 = (($86) - ($85))|0; - HEAP32[$3>>2] = $87; - } else { - $88 = HEAP32[$0>>2]|0; - $89 = HEAP32[$88>>2]|0; - $90 = (($89) + 17|0); - $91 = HEAP8[$90>>0]|0; - $92 = $91&255; - $93 = ($92|0)!=(0); - if ($93) { - $94 = HEAP32[$3>>2]|0; - $95 = ($94|0)>(0); - if ($95) { - $96 = HEAP32[$pOvflData>>2]|0; - $97 = (_sqlite3Get4byte($96)|0); - HEAP32[$i>>2] = $97; - $98 = HEAP32[$0>>2]|0; - $99 = HEAP32[$i>>2]|0; - $100 = HEAP32[$2>>2]|0; - $101 = HEAP32[$4>>2]|0; - _checkPtrmap($98,$99,4,$100,$101); - } - } - } - } while(0); - $102 = HEAP32[$pOvflData>>2]|0; - $103 = (_sqlite3Get4byte($102)|0); - HEAP32[$2>>2] = $103; - $104 = HEAP32[$pOvflPage>>2]|0; - _sqlite3PagerUnref($104); - } - if ((label|0) == 5) { - $17 = HEAP32[$4>>2]|0; - $18 = HEAP32[$3>>2]|0; - $19 = (($18) + 1)|0; - $20 = HEAP32[$expected>>2]|0; - $21 = HEAP32[$iFirst>>2]|0; - HEAP32[$vararg_buffer6>>2] = $19; - $vararg_ptr1 = (($vararg_buffer6) + 4|0); - HEAP32[$vararg_ptr1>>2] = $20; - $vararg_ptr2 = (($vararg_buffer6) + 8|0); - HEAP32[$vararg_ptr2>>2] = $21; - _checkAppendMsg($16,$17,34136,$vararg_buffer6); - STACKTOP = sp;return; - } - else if ((label|0) == 8) { - $32 = HEAP32[$0>>2]|0; - $33 = HEAP32[$4>>2]|0; - $34 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer6>>2] = $34; - _checkAppendMsg($32,$33,34200,$vararg_buffer6); - STACKTOP = sp;return; - } - else if ((label|0) == 24) { - STACKTOP = sp;return; - } -} -function _checkPtrmap($pCheck,$iChild,$eType,$iParent,$zContext) { - $pCheck = $pCheck|0; - $iChild = $iChild|0; - $eType = $eType|0; - $iParent = $iParent|0; - $zContext = $zContext|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ePtrmapType = 0, $iPtrmapParent = 0, $or$cond = 0; - var $rc = 0, $vararg_buffer2 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer2 = sp; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 45|0; - $3 = sp + 32|0; - $4 = sp + 28|0; - $rc = sp + 24|0; - $ePtrmapType = sp + 44|0; - $iPtrmapParent = sp + 20|0; - HEAP32[$0>>2] = $pCheck; - HEAP32[$1>>2] = $iChild; - HEAP8[$2>>0] = $eType; - HEAP32[$3>>2] = $iParent; - HEAP32[$4>>2] = $zContext; - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (_ptrmapGet($6,$7,$ePtrmapType,$iPtrmapParent)|0); - HEAP32[$rc>>2] = $8; - $9 = HEAP32[$rc>>2]|0; - $10 = ($9|0)!=(0); - if ($10) { - $11 = HEAP32[$rc>>2]|0; - $12 = ($11|0)==(7); - $13 = HEAP32[$rc>>2]|0; - $14 = ($13|0)==(3082); - $or$cond = $12 | $14; - if ($or$cond) { - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 24|0); - HEAP32[$16>>2] = 1; - } - $17 = HEAP32[$0>>2]|0; - $18 = HEAP32[$4>>2]|0; - $19 = HEAP32[$1>>2]|0; - HEAP32[$vararg_buffer2>>2] = $19; - _checkAppendMsg($17,$18,34048,$vararg_buffer2); - STACKTOP = sp;return; - } - $20 = HEAP8[$ePtrmapType>>0]|0; - $21 = $20&255; - $22 = HEAP8[$2>>0]|0; - $23 = $22&255; - $24 = ($21|0)!=($23|0); - if (!($24)) { - $25 = HEAP32[$iPtrmapParent>>2]|0; - $26 = HEAP32[$3>>2]|0; - $27 = ($25|0)!=($26|0); - if (!($27)) { - STACKTOP = sp;return; - } - } - $28 = HEAP32[$0>>2]|0; - $29 = HEAP32[$4>>2]|0; - $30 = HEAP32[$1>>2]|0; - $31 = HEAP8[$2>>0]|0; - $32 = $31&255; - $33 = HEAP32[$3>>2]|0; - $34 = HEAP8[$ePtrmapType>>0]|0; - $35 = $34&255; - $36 = HEAP32[$iPtrmapParent>>2]|0; - HEAP32[$vararg_buffer2>>2] = $30; - $vararg_ptr5 = (($vararg_buffer2) + 4|0); - HEAP32[$vararg_ptr5>>2] = $32; - $vararg_ptr6 = (($vararg_buffer2) + 8|0); - HEAP32[$vararg_ptr6>>2] = $33; - $vararg_ptr7 = (($vararg_buffer2) + 12|0); - HEAP32[$vararg_ptr7>>2] = $35; - $vararg_ptr8 = (($vararg_buffer2) + 16|0); - HEAP32[$vararg_ptr8>>2] = $36; - _checkAppendMsg($28,$29,34080,$vararg_buffer2); - STACKTOP = sp;return; -} -function _checkTreePage($pCheck,$iPage,$zParentContext,$pnParentMinKey,$pnParentMaxKey) { - $pCheck = $pCheck|0; - $iPage = $iPage|0; - $zParentContext = $zParentContext|0; - $pnParentMinKey = $pnParentMinKey|0; - $pnParentMaxKey = $pnParentMaxKey|0; - var $$nMaxKey = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; - var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; - var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; - var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; - var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; - var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; - var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; - var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; - var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; - var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; - var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0; - var $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0; - var $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0; - var $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0; - var $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0; - var $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0; - var $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0; - var $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0; - var $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0; - var $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0; - var $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0; - var $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0; - var $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0; - var $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0; - var $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0; - var $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0; - var $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0; - var $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0; - var $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0; - var $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0; - var $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0; - var $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; - var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; - var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cellStart = 0, $cnt = 0, $contentOffset = 0, $d2 = 0, $data = 0, $depth = 0, $hdr = 0, $hit = 0, $i = 0, $info = 0, $j = 0, $j2 = 0, $nCell = 0, $nMaxKey = 0, $nMaxKey$ = 0; - var $nMinKey = 0, $nPage = 0, $pBt = 0, $pCell = 0, $pPage = 0, $pc = 0, $pgno = 0, $pgnoOvfl = 0, $rc = 0, $size = 0, $size1 = 0, $sz = 0, $usableSize = 0, $vararg_buffer44 = 0, $vararg_ptr10 = 0, $vararg_ptr14 = 0, $vararg_ptr23 = 0, $vararg_ptr27 = 0, $vararg_ptr31 = 0, $vararg_ptr35 = 0; - var $vararg_ptr39 = 0, $vararg_ptr43 = 0, $vararg_ptr47 = 0, $vararg_ptr48 = 0, $zContext = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 288|0; - $vararg_buffer44 = sp + 48|0; - $0 = sp + 180|0; - $1 = sp + 176|0; - $2 = sp + 172|0; - $3 = sp + 168|0; - $4 = sp + 164|0; - $5 = sp + 160|0; - $pPage = sp + 156|0; - $i = sp + 152|0; - $rc = sp + 148|0; - $depth = sp + 144|0; - $d2 = sp + 140|0; - $pgno = sp + 136|0; - $cnt = sp + 132|0; - $hdr = sp + 128|0; - $cellStart = sp + 124|0; - $nCell = sp + 120|0; - $data = sp + 116|0; - $pBt = sp + 112|0; - $usableSize = sp + 108|0; - $zContext = sp + 184|0; - $hit = sp + 104|0; - $nMinKey = sp + 40|0; - $nMaxKey = sp + 32|0; - $pCell = sp + 100|0; - $sz = sp + 96|0; - $info = sp; - $nPage = sp + 92|0; - $pgnoOvfl = sp + 88|0; - $contentOffset = sp + 84|0; - $pc = sp + 80|0; - $size = sp + 76|0; - $j = sp + 72|0; - $size1 = sp + 68|0; - $j2 = sp + 64|0; - HEAP32[$1>>2] = $pCheck; - HEAP32[$2>>2] = $iPage; - HEAP32[$3>>2] = $zParentContext; - HEAP32[$4>>2] = $pnParentMinKey; - HEAP32[$5>>2] = $pnParentMaxKey; - HEAP32[$hit>>2] = 0; - $6 = $nMinKey; - $7 = $6; - HEAP32[$7>>2] = 0; - $8 = (($6) + 4)|0; - $9 = $8; - HEAP32[$9>>2] = 0; - $10 = $nMaxKey; - $11 = $10; - HEAP32[$11>>2] = 0; - $12 = (($10) + 4)|0; - $13 = $12; - HEAP32[$13>>2] = 0; - $14 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer44>>2] = $14; - (_sqlite3_snprintf(100,$zContext,33352,$vararg_buffer44)|0); - $15 = HEAP32[$1>>2]|0; - $16 = HEAP32[$15>>2]|0; - HEAP32[$pBt>>2] = $16; - $17 = HEAP32[$pBt>>2]|0; - $18 = (($17) + 36|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$usableSize>>2] = $19; - $20 = HEAP32[$2>>2]|0; - $21 = ($20|0)==(0); - if ($21) { - HEAP32[$0>>2] = 0; - $663 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($663|0); - } - $22 = HEAP32[$1>>2]|0; - $23 = HEAP32[$2>>2]|0; - $24 = HEAP32[$3>>2]|0; - $25 = (_checkRef($22,$23,$24)|0); - $26 = ($25|0)!=(0); - if ($26) { - HEAP32[$0>>2] = 0; - $663 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($663|0); - } - $27 = HEAP32[$pBt>>2]|0; - $28 = HEAP32[$2>>2]|0; - $29 = (_btreeGetPage($27,$28,$pPage,0)|0); - HEAP32[$rc>>2] = $29; - $30 = ($29|0)!=(0); - if ($30) { - $31 = HEAP32[$1>>2]|0; - $32 = HEAP32[$rc>>2]|0; - HEAP32[$vararg_buffer44>>2] = $32; - _checkAppendMsg($31,$zContext,33368,$vararg_buffer44); - HEAP32[$0>>2] = 0; - $663 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($663|0); - } - $33 = HEAP32[$pPage>>2]|0; - HEAP8[$33>>0] = 0; - $34 = HEAP32[$pPage>>2]|0; - $35 = (_btreeInitPage($34)|0); - HEAP32[$rc>>2] = $35; - $36 = ($35|0)!=(0); - if ($36) { - $37 = HEAP32[$1>>2]|0; - $38 = HEAP32[$rc>>2]|0; - HEAP32[$vararg_buffer44>>2] = $38; - _checkAppendMsg($37,$zContext,33408,$vararg_buffer44); - $39 = HEAP32[$pPage>>2]|0; - _releasePage($39); - HEAP32[$0>>2] = 0; - $663 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($663|0); - } - HEAP32[$depth>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $40 = HEAP32[$i>>2]|0; - $41 = HEAP32[$pPage>>2]|0; - $42 = (($41) + 16|0); - $43 = HEAP16[$42>>1]|0; - $44 = $43&65535; - $45 = ($40|0)<($44|0); - if (!($45)) { - break; - } - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 16|0); - $48 = HEAP32[$47>>2]|0; - $49 = ($48|0)!=(0); - if (!($49)) { - break; - } - $50 = HEAP32[$2>>2]|0; - $51 = HEAP32[$i>>2]|0; - HEAP32[$vararg_buffer44>>2] = $50; - $vararg_ptr10 = (($vararg_buffer44) + 4|0); - HEAP32[$vararg_ptr10>>2] = $51; - (_sqlite3_snprintf(100,$zContext,33448,$vararg_buffer44)|0); - $52 = HEAP32[$pPage>>2]|0; - $53 = (($52) + 56|0); - $54 = HEAP32[$53>>2]|0; - $55 = HEAP32[$pPage>>2]|0; - $56 = (($55) + 18|0); - $57 = HEAP16[$56>>1]|0; - $58 = $57&65535; - $59 = HEAP32[$i>>2]|0; - $60 = $59<<1; - $61 = HEAP32[$pPage>>2]|0; - $62 = (($61) + 64|0); - $63 = HEAP32[$62>>2]|0; - $64 = (($63) + ($60)|0); - $65 = HEAP8[$64>>0]|0; - $66 = $65&255; - $67 = $66 << 8; - $68 = HEAP32[$i>>2]|0; - $69 = $68<<1; - $70 = HEAP32[$pPage>>2]|0; - $71 = (($70) + 64|0); - $72 = HEAP32[$71>>2]|0; - $73 = (($72) + ($69)|0); - $74 = (($73) + 1|0); - $75 = HEAP8[$74>>0]|0; - $76 = $75&255; - $77 = $67 | $76; - $78 = $58 & $77; - $79 = (($54) + ($78)|0); - HEAP32[$pCell>>2] = $79; - $80 = HEAP32[$pPage>>2]|0; - $81 = HEAP32[$pCell>>2]|0; - _btreeParseCellPtr($80,$81,$info); - $82 = (($info) + 12|0); - $83 = HEAP32[$82>>2]|0; - HEAP32[$sz>>2] = $83; - $84 = HEAP32[$pPage>>2]|0; - $85 = (($84) + 2|0); - $86 = HEAP8[$85>>0]|0; - $87 = ($86<<24>>24)!=(0); - do { - if ($87) { - $96 = HEAP32[$i>>2]|0; - $97 = ($96|0)==(0); - $98 = $info; - $99 = $98; - $100 = HEAP32[$99>>2]|0; - $101 = (($98) + 4)|0; - $102 = $101; - $103 = HEAP32[$102>>2]|0; - if ($97) { - $104 = $nMaxKey; - $105 = $104; - HEAP32[$105>>2] = $100; - $106 = (($104) + 4)|0; - $107 = $106; - HEAP32[$107>>2] = $103; - $108 = $nMinKey; - $109 = $108; - HEAP32[$109>>2] = $100; - $110 = (($108) + 4)|0; - $111 = $110; - HEAP32[$111>>2] = $103; - break; - } - $112 = $nMaxKey; - $113 = $112; - $114 = HEAP32[$113>>2]|0; - $115 = (($112) + 4)|0; - $116 = $115; - $117 = HEAP32[$116>>2]|0; - $118 = ($103|0)<($117|0); - $119 = ($103|0)==($117|0); - $120 = ($100>>>0)<=($114>>>0); - $121 = $119 & $120; - $122 = $118 | $121; - if ($122) { - $123 = HEAP32[$1>>2]|0; - $124 = $info; - $125 = $124; - $126 = HEAP32[$125>>2]|0; - $127 = (($124) + 4)|0; - $128 = $127; - $129 = HEAP32[$128>>2]|0; - $130 = $nMaxKey; - $131 = $130; - $132 = HEAP32[$131>>2]|0; - $133 = (($130) + 4)|0; - $134 = $133; - $135 = HEAP32[$134>>2]|0; - $136 = $vararg_buffer44; - $137 = $136; - HEAP32[$137>>2] = $126; - $138 = (($136) + 4)|0; - $139 = $138; - HEAP32[$139>>2] = $129; - $vararg_ptr14 = (($vararg_buffer44) + 8|0); - $140 = $vararg_ptr14; - $141 = $140; - HEAP32[$141>>2] = $132; - $142 = (($140) + 4)|0; - $143 = $142; - HEAP32[$143>>2] = $135; - _checkAppendMsg($123,$zContext,33480,$vararg_buffer44); - } - $144 = $info; - $145 = $144; - $146 = HEAP32[$145>>2]|0; - $147 = (($144) + 4)|0; - $148 = $147; - $149 = HEAP32[$148>>2]|0; - $150 = $nMaxKey; - $151 = $150; - HEAP32[$151>>2] = $146; - $152 = (($150) + 4)|0; - $153 = $152; - HEAP32[$153>>2] = $149; - } else { - $88 = $info; - $89 = $88; - $90 = HEAP32[$89>>2]|0; - $91 = (($88) + 4)|0; - $92 = $91; - $93 = HEAP32[$92>>2]|0; - $94 = HEAP32[$sz>>2]|0; - $95 = (($94) + ($90))|0; - HEAP32[$sz>>2] = $95; - } - } while(0); - $154 = HEAP32[$sz>>2]|0; - $155 = (($info) + 22|0); - $156 = HEAP16[$155>>1]|0; - $157 = $156&65535; - $158 = ($154>>>0)>($157>>>0); - if ($158) { - $159 = (($info) + 24|0); - $160 = HEAP16[$159>>1]|0; - $161 = $160&65535; - $162 = HEAP32[$pCell>>2]|0; - $163 = (($162) + ($161)|0); - $164 = HEAP32[$pBt>>2]|0; - $165 = (($164) + 36|0); - $166 = HEAP32[$165>>2]|0; - $167 = HEAP32[$pPage>>2]|0; - $168 = (($167) + 56|0); - $169 = HEAP32[$168>>2]|0; - $170 = (($169) + ($166)|0); - $171 = ($163>>>0)<=($170>>>0); - if ($171) { - $172 = HEAP32[$sz>>2]|0; - $173 = (($info) + 22|0); - $174 = HEAP16[$173>>1]|0; - $175 = $174&65535; - $176 = (($172) - ($175))|0; - $177 = HEAP32[$usableSize>>2]|0; - $178 = (($176) + ($177))|0; - $179 = (($178) - 5)|0; - $180 = HEAP32[$usableSize>>2]|0; - $181 = (($180) - 4)|0; - $182 = (($179>>>0) / ($181>>>0))&-1; - HEAP32[$nPage>>2] = $182; - $183 = (($info) + 24|0); - $184 = HEAP16[$183>>1]|0; - $185 = $184&65535; - $186 = HEAP32[$pCell>>2]|0; - $187 = (($186) + ($185)|0); - $188 = (_sqlite3Get4byte($187)|0); - HEAP32[$pgnoOvfl>>2] = $188; - $189 = HEAP32[$pBt>>2]|0; - $190 = (($189) + 17|0); - $191 = HEAP8[$190>>0]|0; - $192 = ($191<<24>>24)!=(0); - if ($192) { - $193 = HEAP32[$1>>2]|0; - $194 = HEAP32[$pgnoOvfl>>2]|0; - $195 = HEAP32[$2>>2]|0; - _checkPtrmap($193,$194,3,$195,$zContext); - } - $196 = HEAP32[$1>>2]|0; - $197 = HEAP32[$pgnoOvfl>>2]|0; - $198 = HEAP32[$nPage>>2]|0; - _checkList($196,0,$197,$198,$zContext); - } - } - $199 = HEAP32[$pPage>>2]|0; - $200 = (($199) + 3|0); - $201 = HEAP8[$200>>0]|0; - $202 = ($201<<24>>24)!=(0); - if (!($202)) { - $203 = HEAP32[$pCell>>2]|0; - $204 = (_sqlite3Get4byte($203)|0); - HEAP32[$pgno>>2] = $204; - $205 = HEAP32[$pBt>>2]|0; - $206 = (($205) + 17|0); - $207 = HEAP8[$206>>0]|0; - $208 = ($207<<24>>24)!=(0); - if ($208) { - $209 = HEAP32[$1>>2]|0; - $210 = HEAP32[$pgno>>2]|0; - $211 = HEAP32[$2>>2]|0; - _checkPtrmap($209,$210,5,$211,$zContext); - } - $212 = HEAP32[$1>>2]|0; - $213 = HEAP32[$pgno>>2]|0; - $214 = HEAP32[$i>>2]|0; - $215 = ($214|0)==(0); - $$nMaxKey = $215 ? 0 : $nMaxKey; - $216 = (_checkTreePage($212,$213,$zContext,$nMinKey,$$nMaxKey)|0); - HEAP32[$d2>>2] = $216; - $217 = HEAP32[$i>>2]|0; - $218 = ($217|0)>(0); - if ($218) { - $219 = HEAP32[$d2>>2]|0; - $220 = HEAP32[$depth>>2]|0; - $221 = ($219|0)!=($220|0); - if ($221) { - $222 = HEAP32[$1>>2]|0; - _checkAppendMsg($222,$zContext,33528,$vararg_buffer44); - } - } - $223 = HEAP32[$d2>>2]|0; - HEAP32[$depth>>2] = $223; - } - $224 = HEAP32[$i>>2]|0; - $225 = (($224) + 1)|0; - HEAP32[$i>>2] = $225; - } - $226 = HEAP32[$pPage>>2]|0; - $227 = (($226) + 3|0); - $228 = HEAP8[$227>>0]|0; - $229 = ($228<<24>>24)!=(0); - if (!($229)) { - $230 = HEAP32[$pPage>>2]|0; - $231 = (($230) + 5|0); - $232 = HEAP8[$231>>0]|0; - $233 = $232&255; - $234 = (($233) + 8)|0; - $235 = HEAP32[$pPage>>2]|0; - $236 = (($235) + 56|0); - $237 = HEAP32[$236>>2]|0; - $238 = (($237) + ($234)|0); - $239 = (_sqlite3Get4byte($238)|0); - HEAP32[$pgno>>2] = $239; - $240 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer44>>2] = $240; - (_sqlite3_snprintf(100,$zContext,33560,$vararg_buffer44)|0); - $241 = HEAP32[$pBt>>2]|0; - $242 = (($241) + 17|0); - $243 = HEAP8[$242>>0]|0; - $244 = ($243<<24>>24)!=(0); - if ($244) { - $245 = HEAP32[$1>>2]|0; - $246 = HEAP32[$pgno>>2]|0; - $247 = HEAP32[$2>>2]|0; - _checkPtrmap($245,$246,5,$247,$zContext); - } - $248 = HEAP32[$1>>2]|0; - $249 = HEAP32[$pgno>>2]|0; - $250 = HEAP32[$pPage>>2]|0; - $251 = (($250) + 16|0); - $252 = HEAP16[$251>>1]|0; - $253 = ($252<<16>>16)!=(0); - $nMaxKey$ = $253 ? $nMaxKey : 0; - (_checkTreePage($248,$249,$zContext,0,$nMaxKey$)|0); - } - $254 = HEAP32[$pPage>>2]|0; - $255 = (($254) + 3|0); - $256 = HEAP8[$255>>0]|0; - $257 = $256&255; - $258 = ($257|0)!=(0); - do { - if ($258) { - $259 = HEAP32[$pPage>>2]|0; - $260 = (($259) + 2|0); - $261 = HEAP8[$260>>0]|0; - $262 = $261&255; - $263 = ($262|0)!=(0); - if ($263) { - $264 = HEAP32[$4>>2]|0; - $265 = ($264|0)!=(0|0); - $266 = HEAP32[$5>>2]|0; - $267 = ($266|0)!=(0|0); - if (!($265)) { - if (!($267)) { - break; - } - $399 = $nMinKey; - $400 = $399; - $401 = HEAP32[$400>>2]|0; - $402 = (($399) + 4)|0; - $403 = $402; - $404 = HEAP32[$403>>2]|0; - $405 = HEAP32[$5>>2]|0; - $406 = $405; - $407 = $406; - $408 = HEAP32[$407>>2]|0; - $409 = (($406) + 4)|0; - $410 = $409; - $411 = HEAP32[$410>>2]|0; - $412 = ($404|0)<($411|0); - $413 = ($404|0)==($411|0); - $414 = ($401>>>0)<=($408>>>0); - $415 = $413 & $414; - $416 = $412 | $415; - if (!($416)) { - break; - } - $417 = HEAP32[$1>>2]|0; - $418 = $nMinKey; - $419 = $418; - $420 = HEAP32[$419>>2]|0; - $421 = (($418) + 4)|0; - $422 = $421; - $423 = HEAP32[$422>>2]|0; - $424 = HEAP32[$5>>2]|0; - $425 = $424; - $426 = $425; - $427 = HEAP32[$426>>2]|0; - $428 = (($425) + 4)|0; - $429 = $428; - $430 = HEAP32[$429>>2]|0; - $431 = $vararg_buffer44; - $432 = $431; - HEAP32[$432>>2] = $420; - $433 = (($431) + 4)|0; - $434 = $433; - HEAP32[$434>>2] = $423; - $vararg_ptr35 = (($vararg_buffer44) + 8|0); - $435 = $vararg_ptr35; - $436 = $435; - HEAP32[$436>>2] = $427; - $437 = (($435) + 4)|0; - $438 = $437; - HEAP32[$438>>2] = $430; - _checkAppendMsg($417,$zContext,33784,$vararg_buffer44); - break; - } - if (!($267)) { - $268 = $nMaxKey; - $269 = $268; - $270 = HEAP32[$269>>2]|0; - $271 = (($268) + 4)|0; - $272 = $271; - $273 = HEAP32[$272>>2]|0; - $274 = HEAP32[$4>>2]|0; - $275 = $274; - $276 = $275; - $277 = HEAP32[$276>>2]|0; - $278 = (($275) + 4)|0; - $279 = $278; - $280 = HEAP32[$279>>2]|0; - $281 = ($273|0)>($280|0); - $282 = ($273|0)==($280|0); - $283 = ($270>>>0)>($277>>>0); - $284 = $282 & $283; - $285 = $281 | $284; - if (!($285)) { - break; - } - $286 = HEAP32[$1>>2]|0; - $287 = $nMaxKey; - $288 = $287; - $289 = HEAP32[$288>>2]|0; - $290 = (($287) + 4)|0; - $291 = $290; - $292 = HEAP32[$291>>2]|0; - $293 = HEAP32[$4>>2]|0; - $294 = $293; - $295 = $294; - $296 = HEAP32[$295>>2]|0; - $297 = (($294) + 4)|0; - $298 = $297; - $299 = HEAP32[$298>>2]|0; - $300 = $vararg_buffer44; - $301 = $300; - HEAP32[$301>>2] = $289; - $302 = (($300) + 4)|0; - $303 = $302; - HEAP32[$303>>2] = $292; - $vararg_ptr23 = (($vararg_buffer44) + 8|0); - $304 = $vararg_ptr23; - $305 = $304; - HEAP32[$305>>2] = $296; - $306 = (($304) + 4)|0; - $307 = $306; - HEAP32[$307>>2] = $299; - _checkAppendMsg($286,$zContext,33592,$vararg_buffer44); - break; - } - $308 = $nMinKey; - $309 = $308; - $310 = HEAP32[$309>>2]|0; - $311 = (($308) + 4)|0; - $312 = $311; - $313 = HEAP32[$312>>2]|0; - $314 = HEAP32[$4>>2]|0; - $315 = $314; - $316 = $315; - $317 = HEAP32[$316>>2]|0; - $318 = (($315) + 4)|0; - $319 = $318; - $320 = HEAP32[$319>>2]|0; - $321 = ($313|0)<($320|0); - $322 = ($313|0)==($320|0); - $323 = ($310>>>0)<=($317>>>0); - $324 = $322 & $323; - $325 = $321 | $324; - if ($325) { - $326 = HEAP32[$1>>2]|0; - $327 = $nMinKey; - $328 = $327; - $329 = HEAP32[$328>>2]|0; - $330 = (($327) + 4)|0; - $331 = $330; - $332 = HEAP32[$331>>2]|0; - $333 = HEAP32[$4>>2]|0; - $334 = $333; - $335 = $334; - $336 = HEAP32[$335>>2]|0; - $337 = (($334) + 4)|0; - $338 = $337; - $339 = HEAP32[$338>>2]|0; - $340 = $vararg_buffer44; - $341 = $340; - HEAP32[$341>>2] = $329; - $342 = (($340) + 4)|0; - $343 = $342; - HEAP32[$343>>2] = $332; - $vararg_ptr27 = (($vararg_buffer44) + 8|0); - $344 = $vararg_ptr27; - $345 = $344; - HEAP32[$345>>2] = $336; - $346 = (($344) + 4)|0; - $347 = $346; - HEAP32[$347>>2] = $339; - _checkAppendMsg($326,$zContext,33656,$vararg_buffer44); - } - $348 = $nMaxKey; - $349 = $348; - $350 = HEAP32[$349>>2]|0; - $351 = (($348) + 4)|0; - $352 = $351; - $353 = HEAP32[$352>>2]|0; - $354 = HEAP32[$5>>2]|0; - $355 = $354; - $356 = $355; - $357 = HEAP32[$356>>2]|0; - $358 = (($355) + 4)|0; - $359 = $358; - $360 = HEAP32[$359>>2]|0; - $361 = ($353|0)>($360|0); - $362 = ($353|0)==($360|0); - $363 = ($350>>>0)>($357>>>0); - $364 = $362 & $363; - $365 = $361 | $364; - if ($365) { - $366 = HEAP32[$1>>2]|0; - $367 = $nMaxKey; - $368 = $367; - $369 = HEAP32[$368>>2]|0; - $370 = (($367) + 4)|0; - $371 = $370; - $372 = HEAP32[$371>>2]|0; - $373 = HEAP32[$5>>2]|0; - $374 = $373; - $375 = $374; - $376 = HEAP32[$375>>2]|0; - $377 = (($374) + 4)|0; - $378 = $377; - $379 = HEAP32[$378>>2]|0; - $380 = $vararg_buffer44; - $381 = $380; - HEAP32[$381>>2] = $369; - $382 = (($380) + 4)|0; - $383 = $382; - HEAP32[$383>>2] = $372; - $vararg_ptr31 = (($vararg_buffer44) + 8|0); - $384 = $vararg_ptr31; - $385 = $384; - HEAP32[$385>>2] = $376; - $386 = (($384) + 4)|0; - $387 = $386; - HEAP32[$387>>2] = $379; - _checkAppendMsg($366,$zContext,33720,$vararg_buffer44); - } - $388 = $nMaxKey; - $389 = $388; - $390 = HEAP32[$389>>2]|0; - $391 = (($388) + 4)|0; - $392 = $391; - $393 = HEAP32[$392>>2]|0; - $394 = HEAP32[$4>>2]|0; - $395 = $394; - $396 = $395; - HEAP32[$396>>2] = $390; - $397 = (($395) + 4)|0; - $398 = $397; - HEAP32[$398>>2] = $393; - } - } - } while(0); - $439 = HEAP32[$pPage>>2]|0; - $440 = (($439) + 56|0); - $441 = HEAP32[$440>>2]|0; - HEAP32[$data>>2] = $441; - $442 = HEAP32[$pPage>>2]|0; - $443 = (($442) + 5|0); - $444 = HEAP8[$443>>0]|0; - $445 = $444&255; - HEAP32[$hdr>>2] = $445; - $446 = HEAP32[$pBt>>2]|0; - $447 = (($446) + 32|0); - $448 = HEAP32[$447>>2]|0; - $449 = (_sqlite3PageMalloc($448)|0); - HEAP32[$hit>>2] = $449; - $450 = HEAP32[$hit>>2]|0; - $451 = ($450|0)==(0|0); - if ($451) { - $452 = HEAP32[$1>>2]|0; - $453 = (($452) + 24|0); - HEAP32[$453>>2] = 1; - } else { - $454 = HEAP32[$hdr>>2]|0; - $455 = (($454) + 5)|0; - $456 = HEAP32[$data>>2]|0; - $457 = (($456) + ($455)|0); - $458 = HEAP8[$457>>0]|0; - $459 = $458&255; - $460 = $459 << 8; - $461 = HEAP32[$hdr>>2]|0; - $462 = (($461) + 5)|0; - $463 = HEAP32[$data>>2]|0; - $464 = (($463) + ($462)|0); - $465 = (($464) + 1|0); - $466 = HEAP8[$465>>0]|0; - $467 = $466&255; - $468 = $460 | $467; - $469 = (($468) - 1)|0; - $470 = $469 & 65535; - $471 = (($470) + 1)|0; - HEAP32[$contentOffset>>2] = $471; - $472 = HEAP32[$hit>>2]|0; - $473 = HEAP32[$contentOffset>>2]|0; - $474 = (($472) + ($473)|0); - $475 = HEAP32[$usableSize>>2]|0; - $476 = HEAP32[$contentOffset>>2]|0; - $477 = (($475) - ($476))|0; - _memset(($474|0),0,($477|0))|0; - $478 = HEAP32[$hit>>2]|0; - $479 = HEAP32[$contentOffset>>2]|0; - _memset(($478|0),1,($479|0))|0; - $480 = HEAP32[$hdr>>2]|0; - $481 = (($480) + 3)|0; - $482 = HEAP32[$data>>2]|0; - $483 = (($482) + ($481)|0); - $484 = HEAP8[$483>>0]|0; - $485 = $484&255; - $486 = $485 << 8; - $487 = HEAP32[$hdr>>2]|0; - $488 = (($487) + 3)|0; - $489 = HEAP32[$data>>2]|0; - $490 = (($489) + ($488)|0); - $491 = (($490) + 1|0); - $492 = HEAP8[$491>>0]|0; - $493 = $492&255; - $494 = $486 | $493; - HEAP32[$nCell>>2] = $494; - $495 = HEAP32[$hdr>>2]|0; - $496 = (($495) + 12)|0; - $497 = HEAP32[$pPage>>2]|0; - $498 = (($497) + 3|0); - $499 = HEAP8[$498>>0]|0; - $500 = $499&255; - $501 = $500<<2; - $502 = (($496) - ($501))|0; - HEAP32[$cellStart>>2] = $502; - HEAP32[$i>>2] = 0; - while(1) { - $503 = HEAP32[$i>>2]|0; - $504 = HEAP32[$nCell>>2]|0; - $505 = ($503|0)<($504|0); - if (!($505)) { - break; - } - $506 = HEAP32[$cellStart>>2]|0; - $507 = HEAP32[$i>>2]|0; - $508 = $507<<1; - $509 = (($506) + ($508))|0; - $510 = HEAP32[$data>>2]|0; - $511 = (($510) + ($509)|0); - $512 = HEAP8[$511>>0]|0; - $513 = $512&255; - $514 = $513 << 8; - $515 = HEAP32[$cellStart>>2]|0; - $516 = HEAP32[$i>>2]|0; - $517 = $516<<1; - $518 = (($515) + ($517))|0; - $519 = HEAP32[$data>>2]|0; - $520 = (($519) + ($518)|0); - $521 = (($520) + 1|0); - $522 = HEAP8[$521>>0]|0; - $523 = $522&255; - $524 = $514 | $523; - HEAP32[$pc>>2] = $524; - HEAP32[$size>>2] = 65536; - $525 = HEAP32[$pc>>2]|0; - $526 = HEAP32[$usableSize>>2]|0; - $527 = (($526) - 4)|0; - $528 = ($525|0)<=($527|0); - if ($528) { - $529 = HEAP32[$pPage>>2]|0; - $530 = HEAP32[$pc>>2]|0; - $531 = HEAP32[$data>>2]|0; - $532 = (($531) + ($530)|0); - $533 = (_cellSizePtr($529,$532)|0); - $534 = $533&65535; - HEAP32[$size>>2] = $534; - } - $535 = HEAP32[$pc>>2]|0; - $536 = HEAP32[$size>>2]|0; - $537 = (($535) + ($536))|0; - $538 = (($537) - 1)|0; - $539 = HEAP32[$usableSize>>2]|0; - $540 = ($538|0)>=($539|0); - L82: do { - if ($540) { - $541 = HEAP32[$1>>2]|0; - $542 = HEAP32[$i>>2]|0; - $543 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer44>>2] = $542; - $vararg_ptr39 = (($vararg_buffer44) + 4|0); - HEAP32[$vararg_ptr39>>2] = $543; - _checkAppendMsg($541,0,33848,$vararg_buffer44); - } else { - $544 = HEAP32[$pc>>2]|0; - $545 = HEAP32[$size>>2]|0; - $546 = (($544) + ($545))|0; - $547 = (($546) - 1)|0; - HEAP32[$j>>2] = $547; - while(1) { - $548 = HEAP32[$j>>2]|0; - $549 = HEAP32[$pc>>2]|0; - $550 = ($548|0)>=($549|0); - if (!($550)) { - break L82; - } - $551 = HEAP32[$j>>2]|0; - $552 = HEAP32[$hit>>2]|0; - $553 = (($552) + ($551)|0); - $554 = HEAP8[$553>>0]|0; - $555 = (($554) + 1)<<24>>24; - HEAP8[$553>>0] = $555; - $556 = HEAP32[$j>>2]|0; - $557 = (($556) + -1)|0; - HEAP32[$j>>2] = $557; - } - } - } while(0); - $558 = HEAP32[$i>>2]|0; - $559 = (($558) + 1)|0; - HEAP32[$i>>2] = $559; - } - $560 = HEAP32[$hdr>>2]|0; - $561 = (($560) + 1)|0; - $562 = HEAP32[$data>>2]|0; - $563 = (($562) + ($561)|0); - $564 = HEAP8[$563>>0]|0; - $565 = $564&255; - $566 = $565 << 8; - $567 = HEAP32[$hdr>>2]|0; - $568 = (($567) + 1)|0; - $569 = HEAP32[$data>>2]|0; - $570 = (($569) + ($568)|0); - $571 = (($570) + 1|0); - $572 = HEAP8[$571>>0]|0; - $573 = $572&255; - $574 = $566 | $573; - HEAP32[$i>>2] = $574; - while(1) { - $575 = HEAP32[$i>>2]|0; - $576 = ($575|0)>(0); - if (!($576)) { - break; - } - $577 = HEAP32[$i>>2]|0; - $578 = (($577) + 2)|0; - $579 = HEAP32[$data>>2]|0; - $580 = (($579) + ($578)|0); - $581 = HEAP8[$580>>0]|0; - $582 = $581&255; - $583 = $582 << 8; - $584 = HEAP32[$i>>2]|0; - $585 = (($584) + 2)|0; - $586 = HEAP32[$data>>2]|0; - $587 = (($586) + ($585)|0); - $588 = (($587) + 1|0); - $589 = HEAP8[$588>>0]|0; - $590 = $589&255; - $591 = $583 | $590; - HEAP32[$size1>>2] = $591; - $592 = HEAP32[$i>>2]|0; - $593 = HEAP32[$size1>>2]|0; - $594 = (($592) + ($593))|0; - $595 = (($594) - 1)|0; - HEAP32[$j2>>2] = $595; - while(1) { - $596 = HEAP32[$j2>>2]|0; - $597 = HEAP32[$i>>2]|0; - $598 = ($596|0)>=($597|0); - if (!($598)) { - break; - } - $599 = HEAP32[$j2>>2]|0; - $600 = HEAP32[$hit>>2]|0; - $601 = (($600) + ($599)|0); - $602 = HEAP8[$601>>0]|0; - $603 = (($602) + 1)<<24>>24; - HEAP8[$601>>0] = $603; - $604 = HEAP32[$j2>>2]|0; - $605 = (($604) + -1)|0; - HEAP32[$j2>>2] = $605; - } - $606 = HEAP32[$i>>2]|0; - $607 = HEAP32[$data>>2]|0; - $608 = (($607) + ($606)|0); - $609 = HEAP8[$608>>0]|0; - $610 = $609&255; - $611 = $610 << 8; - $612 = HEAP32[$i>>2]|0; - $613 = HEAP32[$data>>2]|0; - $614 = (($613) + ($612)|0); - $615 = (($614) + 1|0); - $616 = HEAP8[$615>>0]|0; - $617 = $616&255; - $618 = $611 | $617; - HEAP32[$j2>>2] = $618; - $619 = HEAP32[$j2>>2]|0; - HEAP32[$i>>2] = $619; - } - HEAP32[$cnt>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $620 = HEAP32[$i>>2]|0; - $621 = HEAP32[$usableSize>>2]|0; - $622 = ($620|0)<($621|0); - if (!($622)) { - break; - } - $623 = HEAP32[$i>>2]|0; - $624 = HEAP32[$hit>>2]|0; - $625 = (($624) + ($623)|0); - $626 = HEAP8[$625>>0]|0; - $627 = $626 << 24 >> 24; - $628 = ($627|0)==(0); - if ($628) { - $629 = HEAP32[$cnt>>2]|0; - $630 = (($629) + 1)|0; - HEAP32[$cnt>>2] = $630; - } else { - $631 = HEAP32[$i>>2]|0; - $632 = HEAP32[$hit>>2]|0; - $633 = (($632) + ($631)|0); - $634 = HEAP8[$633>>0]|0; - $635 = $634 << 24 >> 24; - $636 = ($635|0)>(1); - if ($636) { - label = 73; - break; - } - } - $640 = HEAP32[$i>>2]|0; - $641 = (($640) + 1)|0; - HEAP32[$i>>2] = $641; - } - if ((label|0) == 73) { - $637 = HEAP32[$1>>2]|0; - $638 = HEAP32[$i>>2]|0; - $639 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer44>>2] = $638; - $vararg_ptr43 = (($vararg_buffer44) + 4|0); - HEAP32[$vararg_ptr43>>2] = $639; - _checkAppendMsg($637,0,33896,$vararg_buffer44); - } - $642 = HEAP32[$cnt>>2]|0; - $643 = HEAP32[$hdr>>2]|0; - $644 = (($643) + 7)|0; - $645 = HEAP32[$data>>2]|0; - $646 = (($645) + ($644)|0); - $647 = HEAP8[$646>>0]|0; - $648 = $647&255; - $649 = ($642|0)!=($648|0); - if ($649) { - $650 = HEAP32[$1>>2]|0; - $651 = HEAP32[$cnt>>2]|0; - $652 = HEAP32[$hdr>>2]|0; - $653 = (($652) + 7)|0; - $654 = HEAP32[$data>>2]|0; - $655 = (($654) + ($653)|0); - $656 = HEAP8[$655>>0]|0; - $657 = $656&255; - $658 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer44>>2] = $651; - $vararg_ptr47 = (($vararg_buffer44) + 4|0); - HEAP32[$vararg_ptr47>>2] = $657; - $vararg_ptr48 = (($vararg_buffer44) + 8|0); - HEAP32[$vararg_ptr48>>2] = $658; - _checkAppendMsg($650,0,33936,$vararg_buffer44); - } - } - $659 = HEAP32[$hit>>2]|0; - _sqlite3PageFree($659); - $660 = HEAP32[$pPage>>2]|0; - _releasePage($660); - $661 = HEAP32[$depth>>2]|0; - $662 = (($661) + 1)|0; - HEAP32[$0>>2] = $662; - $663 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($663|0); -} -function _getPageReferenced($pCheck,$iPg) { - $pCheck = $pCheck|0; - $iPg = $iPg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pCheck; - HEAP32[$1>>2] = $iPg; - $2 = HEAP32[$1>>2]|0; - $3 = (($2>>>0) / 8)&-1; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 8|0); - $6 = HEAP32[$5>>2]|0; - $7 = (($6) + ($3)|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - $10 = HEAP32[$1>>2]|0; - $11 = $10 & 7; - $12 = 1 << $11; - $13 = $9 & $12; - STACKTOP = sp;return ($13|0); -} -function _checkAppendMsg($pCheck,$zMsg1,$zFormat,$varargs) { - $pCheck = $pCheck|0; - $zMsg1 = $zMsg1|0; - $zFormat = $zFormat|0; - $varargs = $varargs|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ap = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $ap = sp; - HEAP32[$0>>2] = $pCheck; - HEAP32[$1>>2] = $zMsg1; - HEAP32[$2>>2] = $zFormat; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 16|0); - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0); - if (!($6)) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 16|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + -1)|0; - HEAP32[$8>>2] = $10; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 20|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + 1)|0; - HEAP32[$12>>2] = $14; - HEAP32[$ap>>2] = $varargs; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 28|0); - $17 = (($16) + 12|0); - $18 = HEAP32[$17>>2]|0; - $19 = ($18|0)!=(0); - if ($19) { - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 28|0); - _sqlite3StrAccumAppend($21,33344,1); - } - $22 = HEAP32[$1>>2]|0; - $23 = ($22|0)!=(0|0); - if ($23) { - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 28|0); - $26 = HEAP32[$1>>2]|0; - _sqlite3StrAccumAppendAll($25,$26); - } - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 28|0); - $29 = HEAP32[$2>>2]|0; - _sqlite3VXPrintf($28,1,$29,$ap); - $30 = HEAP32[$0>>2]|0; - $31 = (($30) + 28|0); - $32 = (($31) + 25|0); - $33 = HEAP8[$32>>0]|0; - $34 = $33&255; - $35 = ($34|0)==(1); - if (!($35)) { - STACKTOP = sp;return; - } - $36 = HEAP32[$0>>2]|0; - $37 = (($36) + 24|0); - HEAP32[$37>>2] = 1; - STACKTOP = sp;return; -} -function _checkRef($pCheck,$iPage,$zContext) { - $pCheck = $pCheck|0; - $iPage = $iPage|0; - $zContext = $zContext|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $vararg_buffer1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer1 = sp; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - HEAP32[$1>>2] = $pCheck; - HEAP32[$2>>2] = $iPage; - HEAP32[$3>>2] = $zContext; - $4 = HEAP32[$2>>2]|0; - $5 = ($4|0)==(0); - if ($5) { - HEAP32[$0>>2] = 1; - $21 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($21|0); - } - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 12|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($6>>>0)>($9>>>0); - $11 = HEAP32[$1>>2]|0; - if ($10) { - $12 = HEAP32[$3>>2]|0; - $13 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer1>>2] = $13; - _checkAppendMsg($11,$12,33992,$vararg_buffer1); - HEAP32[$0>>2] = 1; - $21 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($21|0); - } - $14 = HEAP32[$2>>2]|0; - $15 = (_getPageReferenced($11,$14)|0); - $16 = ($15|0)!=(0); - $17 = HEAP32[$1>>2]|0; - if ($16) { - $18 = HEAP32[$3>>2]|0; - $19 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer1>>2] = $19; - _checkAppendMsg($17,$18,34016,$vararg_buffer1); - HEAP32[$0>>2] = 1; - $21 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($21|0); - } else { - $20 = HEAP32[$2>>2]|0; - _setPageReferenced($17,$20); - HEAP32[$0>>2] = 0; - $21 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($21|0); - } - return 0|0; -} -function _cellSizePtr($pPage,$pCell) { - $pPage = $pPage|0; - $pCell = $pCell|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; - var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; - var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $minLocal = 0, $nSize = 0; - var $pEnd = 0, $pIter = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $pIter = sp + 12|0; - $nSize = sp + 8|0; - $pEnd = sp + 4|0; - $minLocal = sp; - HEAP32[$0>>2] = $pPage; - HEAP32[$1>>2] = $pCell; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 6|0); - $4 = HEAP8[$3>>0]|0; - $5 = $4&255; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + ($5)|0); - HEAP32[$pIter>>2] = $7; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 2|0); - $10 = HEAP8[$9>>0]|0; - $11 = ($10<<24>>24)!=(0); - L1: do { - if ($11) { - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 4|0); - $14 = HEAP8[$13>>0]|0; - $15 = ($14<<24>>24)!=(0); - if ($15) { - $16 = HEAP32[$pIter>>2]|0; - $17 = HEAP8[$16>>0]|0; - $18 = $17&255; - $19 = ($18|0)<(128); - $20 = HEAP32[$pIter>>2]|0; - if ($19) { - $21 = HEAP8[$20>>0]|0; - $22 = $21&255; - HEAP32[$nSize>>2] = $22; - $26 = 1; - } else { - $23 = (_sqlite3GetVarint32($20,$nSize)|0); - $24 = $23&255; - $26 = $24; - } - $25 = $26&255; - $27 = $25&255; - $28 = HEAP32[$pIter>>2]|0; - $29 = (($28) + ($27)|0); - HEAP32[$pIter>>2] = $29; - } else { - HEAP32[$nSize>>2] = 0; - } - $30 = HEAP32[$pIter>>2]|0; - $31 = (($30) + 9|0); - HEAP32[$pEnd>>2] = $31; - while(1) { - $32 = HEAP32[$pIter>>2]|0; - $33 = (($32) + 1|0); - HEAP32[$pIter>>2] = $33; - $34 = HEAP8[$32>>0]|0; - $35 = $34&255; - $36 = $35 & 128; - $37 = ($36|0)!=(0); - if (!($37)) { - break L1; - } - $38 = HEAP32[$pIter>>2]|0; - $39 = HEAP32[$pEnd>>2]|0; - $40 = ($38>>>0)<($39>>>0); - if (!($40)) { - break; - } - } - } else { - $41 = HEAP32[$pIter>>2]|0; - $42 = HEAP8[$41>>0]|0; - $43 = $42&255; - $44 = ($43|0)<(128); - $45 = HEAP32[$pIter>>2]|0; - if ($44) { - $46 = HEAP8[$45>>0]|0; - $47 = $46&255; - HEAP32[$nSize>>2] = $47; - $51 = 1; - } else { - $48 = (_sqlite3GetVarint32($45,$nSize)|0); - $49 = $48&255; - $51 = $49; - } - $50 = $51&255; - $52 = $50&255; - $53 = HEAP32[$pIter>>2]|0; - $54 = (($53) + ($52)|0); - HEAP32[$pIter>>2] = $54; - } - } while(0); - $55 = HEAP32[$nSize>>2]|0; - $56 = HEAP32[$0>>2]|0; - $57 = (($56) + 8|0); - $58 = HEAP16[$57>>1]|0; - $59 = $58&65535; - $60 = ($55>>>0)>($59>>>0); - if (!($60)) { - $86 = HEAP32[$pIter>>2]|0; - $87 = HEAP32[$1>>2]|0; - $88 = $86; - $89 = $87; - $90 = (($88) - ($89))|0; - $91 = HEAP32[$nSize>>2]|0; - $92 = (($91) + ($90))|0; - HEAP32[$nSize>>2] = $92; - $93 = HEAP32[$nSize>>2]|0; - $94 = ($93>>>0)<(4); - $$ = $94 ? 4 : $92; - HEAP32[$nSize>>2] = $$; - $95 = HEAP32[$nSize>>2]|0; - $96 = $95&65535; - STACKTOP = sp;return ($96|0); - } - $61 = HEAP32[$0>>2]|0; - $62 = (($61) + 10|0); - $63 = HEAP16[$62>>1]|0; - $64 = $63&65535; - HEAP32[$minLocal>>2] = $64; - $65 = HEAP32[$minLocal>>2]|0; - $66 = HEAP32[$nSize>>2]|0; - $67 = HEAP32[$minLocal>>2]|0; - $68 = (($66) - ($67))|0; - $69 = HEAP32[$0>>2]|0; - $70 = (($69) + 52|0); - $71 = HEAP32[$70>>2]|0; - $72 = (($71) + 36|0); - $73 = HEAP32[$72>>2]|0; - $74 = (($73) - 4)|0; - $75 = (($68>>>0) % ($74>>>0))&-1; - $76 = (($65) + ($75))|0; - HEAP32[$nSize>>2] = $76; - $77 = HEAP32[$nSize>>2]|0; - $78 = HEAP32[$0>>2]|0; - $79 = (($78) + 8|0); - $80 = HEAP16[$79>>1]|0; - $81 = $80&65535; - $82 = ($77>>>0)>($81>>>0); - if ($82) { - $83 = HEAP32[$minLocal>>2]|0; - HEAP32[$nSize>>2] = $83; - } - $84 = HEAP32[$nSize>>2]|0; - $85 = (($84) + 4)|0; - HEAP32[$nSize>>2] = $85; - $86 = HEAP32[$pIter>>2]|0; - $87 = HEAP32[$1>>2]|0; - $88 = $86; - $89 = $87; - $90 = (($88) - ($89))|0; - $91 = HEAP32[$nSize>>2]|0; - $92 = (($91) + ($90))|0; - HEAP32[$nSize>>2] = $92; - $93 = HEAP32[$nSize>>2]|0; - $94 = ($93>>>0)<(4); - $$ = $94 ? 4 : $92; - HEAP32[$nSize>>2] = $$; - $95 = HEAP32[$nSize>>2]|0; - $96 = $95&65535; - STACKTOP = sp;return ($96|0); -} -function _vdbeSorterIterZero($db,$pIter) { - $db = $db|0; - $pIter = $pIter|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pIter; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 28|0); - $5 = HEAP32[$4>>2]|0; - _sqlite3DbFree($2,$5); - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 36|0); - $9 = HEAP32[$8>>2]|0; - _sqlite3DbFree($6,$9); - $10 = HEAP32[$1>>2]|0; - dest=$10+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - STACKTOP = sp;return; -} -function _sqlite3OsCloseFree($pFile) { - $pFile = $pFile|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pFile; - HEAP32[$rc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (_sqlite3OsClose($1)|0); - HEAP32[$rc>>2] = $2; - $3 = HEAP32[$0>>2]|0; - _sqlite3_free($3); - $4 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($4|0); -} -function _vdbeSorterRecordFree($db,$pRecord) { - $db = $db|0; - $pRecord = $pRecord|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pNext = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $p = sp + 4|0; - $pNext = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pRecord; - $2 = HEAP32[$1>>2]|0; - HEAP32[$p>>2] = $2; - while(1) { - $3 = HEAP32[$p>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - break; - } - $5 = HEAP32[$p>>2]|0; - $6 = (($5) + 8|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pNext>>2] = $7; - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$p>>2]|0; - _sqlite3DbFree($8,$9); - $10 = HEAP32[$pNext>>2]|0; - HEAP32[$p>>2] = $10; - } - STACKTOP = sp;return; -} -function _invalidateIncrblobCursors($pBtree,$0,$1,$isClearTable) { - $pBtree = $pBtree|0; - $0 = $0|0; - $1 = $1|0; - $isClearTable = $isClearTable|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pBt = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 20|0; - $3 = sp; - $4 = sp + 16|0; - $p = sp + 12|0; - $pBt = sp + 8|0; - HEAP32[$2>>2] = $pBtree; - $5 = $3; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - HEAP32[$4>>2] = $isClearTable; - $9 = HEAP32[$2>>2]|0; - $10 = (($9) + 4|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$pBt>>2] = $11; - $12 = HEAP32[$pBt>>2]|0; - $13 = (($12) + 8|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$p>>2] = $14; - while(1) { - $15 = HEAP32[$p>>2]|0; - $16 = ($15|0)!=(0|0); - if (!($16)) { - break; - } - $17 = HEAP32[$p>>2]|0; - $18 = (($17) + 80|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = $20 & 16; - $22 = ($21|0)!=(0); - do { - if ($22) { - $23 = HEAP32[$4>>2]|0; - $24 = ($23|0)!=(0); - if (!($24)) { - $25 = HEAP32[$p>>2]|0; - $26 = (($25) + 24|0); - $27 = $26; - $28 = $27; - $29 = HEAP32[$28>>2]|0; - $30 = (($27) + 4)|0; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $33 = $3; - $34 = $33; - $35 = HEAP32[$34>>2]|0; - $36 = (($33) + 4)|0; - $37 = $36; - $38 = HEAP32[$37>>2]|0; - $39 = ($29|0)==($35|0); - $40 = ($32|0)==($38|0); - $41 = $39 & $40; - if (!($41)) { - break; - } - } - $42 = HEAP32[$p>>2]|0; - $43 = (($42) + 81|0); - HEAP8[$43>>0] = 0; - } - } while(0); - $44 = HEAP32[$p>>2]|0; - $45 = (($44) + 8|0); - $46 = HEAP32[$45>>2]|0; - HEAP32[$p>>2] = $46; - } - STACKTOP = sp;return; -} -function _clearDatabasePage($pBt,$pgno,$freePageFlag,$pnChange) { - $pBt = $pBt|0; - $pgno = $pgno|0; - $freePageFlag = $freePageFlag|0; - $pnChange = $pnChange|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $12 = 0; - var $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; - var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; - var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; - var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; - var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $hdr = 0, $i = 0, $pCell = 0, $pPage = 0, $rc = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $4 = sp + 20|0; - $pPage = sp + 16|0; - $rc = sp + 12|0; - $pCell = sp + 8|0; - $i = sp + 4|0; - $hdr = sp; - HEAP32[$1>>2] = $pBt; - HEAP32[$2>>2] = $pgno; - HEAP32[$3>>2] = $freePageFlag; - HEAP32[$4>>2] = $pnChange; - $5 = HEAP32[$2>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = (_btreePagecount($6)|0); - $8 = ($5>>>0)>($7>>>0); - if ($8) { - $9 = (_sqlite3CorruptError(58551)|0); - HEAP32[$0>>2] = $9; - $114 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($114|0); - } - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = (_getAndInitPage($10,$11,$pPage,0)|0); - HEAP32[$rc>>2] = $12; - $13 = HEAP32[$rc>>2]|0; - $14 = ($13|0)!=(0); - if ($14) { - $15 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $15; - $114 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($114|0); - } - $16 = HEAP32[$pPage>>2]|0; - $17 = (($16) + 5|0); - $18 = HEAP8[$17>>0]|0; - $19 = $18&255; - HEAP32[$hdr>>2] = $19; - HEAP32[$i>>2] = 0; - while(1) { - $20 = HEAP32[$i>>2]|0; - $21 = HEAP32[$pPage>>2]|0; - $22 = (($21) + 16|0); - $23 = HEAP16[$22>>1]|0; - $24 = $23&65535; - $25 = ($20|0)<($24|0); - $26 = HEAP32[$pPage>>2]|0; - if (!($25)) { - label = 11; - break; - } - $27 = (($26) + 56|0); - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$pPage>>2]|0; - $30 = (($29) + 18|0); - $31 = HEAP16[$30>>1]|0; - $32 = $31&65535; - $33 = HEAP32[$i>>2]|0; - $34 = $33<<1; - $35 = HEAP32[$pPage>>2]|0; - $36 = (($35) + 64|0); - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + ($34)|0); - $39 = HEAP8[$38>>0]|0; - $40 = $39&255; - $41 = $40 << 8; - $42 = HEAP32[$i>>2]|0; - $43 = $42<<1; - $44 = HEAP32[$pPage>>2]|0; - $45 = (($44) + 64|0); - $46 = HEAP32[$45>>2]|0; - $47 = (($46) + ($43)|0); - $48 = (($47) + 1|0); - $49 = HEAP8[$48>>0]|0; - $50 = $49&255; - $51 = $41 | $50; - $52 = $32 & $51; - $53 = (($28) + ($52)|0); - HEAP32[$pCell>>2] = $53; - $54 = HEAP32[$pPage>>2]|0; - $55 = (($54) + 3|0); - $56 = HEAP8[$55>>0]|0; - $57 = ($56<<24>>24)!=(0); - if (!($57)) { - $58 = HEAP32[$1>>2]|0; - $59 = HEAP32[$pCell>>2]|0; - $60 = (_sqlite3Get4byte($59)|0); - $61 = HEAP32[$4>>2]|0; - $62 = (_clearDatabasePage($58,$60,1,$61)|0); - HEAP32[$rc>>2] = $62; - $63 = HEAP32[$rc>>2]|0; - $64 = ($63|0)!=(0); - if ($64) { - break; - } - } - $65 = HEAP32[$pPage>>2]|0; - $66 = HEAP32[$pCell>>2]|0; - $67 = (_clearCell($65,$66)|0); - HEAP32[$rc>>2] = $67; - $68 = HEAP32[$rc>>2]|0; - $69 = ($68|0)!=(0); - if ($69) { - break; - } - $70 = HEAP32[$i>>2]|0; - $71 = (($70) + 1)|0; - HEAP32[$i>>2] = $71; - } - do { - if ((label|0) == 11) { - $72 = (($26) + 3|0); - $73 = HEAP8[$72>>0]|0; - $74 = ($73<<24>>24)!=(0); - if ($74) { - $87 = HEAP32[$4>>2]|0; - $88 = ($87|0)!=(0|0); - if ($88) { - $89 = HEAP32[$pPage>>2]|0; - $90 = (($89) + 16|0); - $91 = HEAP16[$90>>1]|0; - $92 = $91&65535; - $93 = HEAP32[$4>>2]|0; - $94 = HEAP32[$93>>2]|0; - $95 = (($94) + ($92))|0; - HEAP32[$93>>2] = $95; - } - } else { - $75 = HEAP32[$1>>2]|0; - $76 = HEAP32[$hdr>>2]|0; - $77 = (($76) + 8)|0; - $78 = HEAP32[$pPage>>2]|0; - $79 = (($78) + 56|0); - $80 = HEAP32[$79>>2]|0; - $81 = (($80) + ($77)|0); - $82 = (_sqlite3Get4byte($81)|0); - $83 = HEAP32[$4>>2]|0; - $84 = (_clearDatabasePage($75,$82,1,$83)|0); - HEAP32[$rc>>2] = $84; - $85 = HEAP32[$rc>>2]|0; - $86 = ($85|0)!=(0); - if ($86) { - break; - } - } - $96 = HEAP32[$3>>2]|0; - $97 = ($96|0)!=(0); - $98 = HEAP32[$pPage>>2]|0; - if ($97) { - _freePage($98,$rc); - break; - } - $99 = (($98) + 68|0); - $100 = HEAP32[$99>>2]|0; - $101 = (_sqlite3PagerWrite($100)|0); - HEAP32[$rc>>2] = $101; - $102 = ($101|0)==(0); - if ($102) { - $103 = HEAP32[$pPage>>2]|0; - $104 = HEAP32[$hdr>>2]|0; - $105 = HEAP32[$pPage>>2]|0; - $106 = (($105) + 56|0); - $107 = HEAP32[$106>>2]|0; - $108 = (($107) + ($104)|0); - $109 = HEAP8[$108>>0]|0; - $110 = $109&255; - $111 = $110 | 8; - _zeroPage($103,$111); - } - } - } while(0); - $112 = HEAP32[$pPage>>2]|0; - _releasePage($112); - $113 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $113; - $114 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($114|0); -} -function _clearCell($pPage,$pCell) { - $pPage = $pPage|0; - $pCell = $pCell|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $iNext = 0, $info = 0, $nOvfl = 0, $ovflPageSize = 0, $ovflPgno = 0, $pBt = 0, $pOvfl = 0; - var $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 68|0; - $1 = sp + 64|0; - $2 = sp + 60|0; - $pBt = sp + 56|0; - $info = sp; - $ovflPgno = sp + 52|0; - $rc = sp + 48|0; - $nOvfl = sp + 44|0; - $ovflPageSize = sp + 40|0; - $iNext = sp + 36|0; - $pOvfl = sp + 32|0; - HEAP32[$1>>2] = $pPage; - HEAP32[$2>>2] = $pCell; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 52|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pBt>>2] = $5; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$2>>2]|0; - _btreeParseCellPtr($6,$7,$info); - $8 = (($info) + 24|0); - $9 = HEAP16[$8>>1]|0; - $10 = $9&65535; - $11 = ($10|0)==(0); - if ($11) { - HEAP32[$0>>2] = 0; - $92 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($92|0); - } - $12 = HEAP32[$2>>2]|0; - $13 = (($info) + 24|0); - $14 = HEAP16[$13>>1]|0; - $15 = $14&65535; - $16 = (($12) + ($15)|0); - $17 = (($16) + 3|0); - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 56|0); - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 18|0); - $23 = HEAP16[$22>>1]|0; - $24 = $23&65535; - $25 = (($20) + ($24)|0); - $26 = ($17>>>0)>($25>>>0); - if ($26) { - $27 = (_sqlite3CorruptError(56609)|0); - HEAP32[$0>>2] = $27; - $92 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($92|0); - } - $28 = (($info) + 24|0); - $29 = HEAP16[$28>>1]|0; - $30 = $29&65535; - $31 = HEAP32[$2>>2]|0; - $32 = (($31) + ($30)|0); - $33 = (_sqlite3Get4byte($32)|0); - HEAP32[$ovflPgno>>2] = $33; - $34 = HEAP32[$pBt>>2]|0; - $35 = (($34) + 36|0); - $36 = HEAP32[$35>>2]|0; - $37 = (($36) - 4)|0; - HEAP32[$ovflPageSize>>2] = $37; - $38 = (($info) + 16|0); - $39 = HEAP32[$38>>2]|0; - $40 = (($info) + 22|0); - $41 = HEAP16[$40>>1]|0; - $42 = $41&65535; - $43 = (($39) - ($42))|0; - $44 = HEAP32[$ovflPageSize>>2]|0; - $45 = (($43) + ($44))|0; - $46 = (($45) - 1)|0; - $47 = HEAP32[$ovflPageSize>>2]|0; - $48 = (($46>>>0) / ($47>>>0))&-1; - HEAP32[$nOvfl>>2] = $48; - while(1) { - $49 = HEAP32[$nOvfl>>2]|0; - $50 = (($49) + -1)|0; - HEAP32[$nOvfl>>2] = $50; - $51 = ($49|0)!=(0); - if (!($51)) { - label = 23; - break; - } - HEAP32[$iNext>>2] = 0; - HEAP32[$pOvfl>>2] = 0; - $52 = HEAP32[$ovflPgno>>2]|0; - $53 = ($52>>>0)<(2); - if ($53) { - label = 9; - break; - } - $54 = HEAP32[$ovflPgno>>2]|0; - $55 = HEAP32[$pBt>>2]|0; - $56 = (_btreePagecount($55)|0); - $57 = ($54>>>0)>($56>>>0); - if ($57) { - label = 9; - break; - } - $59 = HEAP32[$nOvfl>>2]|0; - $60 = ($59|0)!=(0); - if ($60) { - $61 = HEAP32[$pBt>>2]|0; - $62 = HEAP32[$ovflPgno>>2]|0; - $63 = (_getOverflowPage($61,$62,$pOvfl,$iNext)|0); - HEAP32[$rc>>2] = $63; - $64 = HEAP32[$rc>>2]|0; - $65 = ($64|0)!=(0); - if ($65) { - label = 12; - break; - } - } - $67 = HEAP32[$pOvfl>>2]|0; - $68 = ($67|0)!=(0|0); - if ($68) { - label = 15; - } else { - $69 = HEAP32[$pBt>>2]|0; - $70 = HEAP32[$ovflPgno>>2]|0; - $71 = (_btreePageLookup($69,$70)|0); - HEAP32[$pOvfl>>2] = $71; - $72 = ($71|0)!=(0|0); - if ($72) { - label = 15; - } else { - label = 17; - } - } - if ((label|0) == 15) { - label = 0; - $73 = HEAP32[$pOvfl>>2]|0; - $74 = (($73) + 68|0); - $75 = HEAP32[$74>>2]|0; - $76 = (_sqlite3PagerPageRefcount($75)|0); - $77 = ($76|0)!=(1); - if ($77) { - $78 = (_sqlite3CorruptError(56643)|0); - HEAP32[$rc>>2] = $78; - } else { - label = 17; - } - } - if ((label|0) == 17) { - label = 0; - $79 = HEAP32[$pBt>>2]|0; - $80 = HEAP32[$pOvfl>>2]|0; - $81 = HEAP32[$ovflPgno>>2]|0; - $82 = (_freePage2($79,$80,$81)|0); - HEAP32[$rc>>2] = $82; - } - $83 = HEAP32[$pOvfl>>2]|0; - $84 = ($83|0)!=(0|0); - if ($84) { - $85 = HEAP32[$pOvfl>>2]|0; - $86 = (($85) + 68|0); - $87 = HEAP32[$86>>2]|0; - _sqlite3PagerUnref($87); - } - $88 = HEAP32[$rc>>2]|0; - $89 = ($88|0)!=(0); - if ($89) { - label = 21; - break; - } - $91 = HEAP32[$iNext>>2]|0; - HEAP32[$ovflPgno>>2] = $91; - } - if ((label|0) == 9) { - $58 = (_sqlite3CorruptError(56623)|0); - HEAP32[$0>>2] = $58; - $92 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($92|0); - } - else if ((label|0) == 12) { - $66 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $66; - $92 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($92|0); - } - else if ((label|0) == 21) { - $90 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $90; - $92 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($92|0); - } - else if ((label|0) == 23) { - HEAP32[$0>>2] = 0; - $92 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($92|0); - } - return 0|0; -} -function _freePage($pPage,$pRC) { - $pPage = $pPage|0; - $pRC = $pRC|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pPage; - HEAP32[$1>>2] = $pRC; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)==(0); - if (!($4)) { - STACKTOP = sp;return; - } - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 52|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 72|0); - $11 = HEAP32[$10>>2]|0; - $12 = (_freePage2($7,$8,$11)|0); - $13 = HEAP32[$1>>2]|0; - HEAP32[$13>>2] = $12; - STACKTOP = sp;return; -} -function _zeroPage($pPage,$flags) { - $pPage = $pPage|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0; - var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; - var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; - var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; - var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; - var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $data = 0, $first = 0, $hdr = 0, $pBt = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $data = sp + 4|0; - $pBt = sp; - $hdr = sp + 18|0; - $first = sp + 16|0; - HEAP32[$0>>2] = $pPage; - HEAP32[$1>>2] = $flags; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 56|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$data>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 52|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pBt>>2] = $7; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 5|0); - $10 = HEAP8[$9>>0]|0; - HEAP8[$hdr>>0] = $10; - $11 = HEAP32[$pBt>>2]|0; - $12 = (($11) + 22|0); - $13 = HEAP16[$12>>1]|0; - $14 = $13&65535; - $15 = $14 & 4; - $16 = ($15|0)!=(0); - if ($16) { - $17 = HEAP8[$hdr>>0]|0; - $18 = $17&255; - $19 = HEAP32[$data>>2]|0; - $20 = (($19) + ($18)|0); - $21 = HEAP32[$pBt>>2]|0; - $22 = (($21) + 36|0); - $23 = HEAP32[$22>>2]|0; - $24 = HEAP8[$hdr>>0]|0; - $25 = $24&255; - $26 = (($23) - ($25))|0; - _memset(($20|0),0,($26|0))|0; - } - $27 = HEAP32[$1>>2]|0; - $28 = $27&255; - $29 = HEAP8[$hdr>>0]|0; - $30 = $29&255; - $31 = HEAP32[$data>>2]|0; - $32 = (($31) + ($30)|0); - HEAP8[$32>>0] = $28; - $33 = HEAP8[$hdr>>0]|0; - $34 = $33&255; - $35 = HEAP32[$1>>2]|0; - $36 = $35 & 8; - $37 = ($36|0)==(0); - $38 = $37 ? 12 : 8; - $39 = (($34) + ($38))|0; - $40 = $39&65535; - HEAP16[$first>>1] = $40; - $41 = HEAP8[$hdr>>0]|0; - $42 = $41&255; - $43 = (($42) + 1)|0; - $44 = HEAP32[$data>>2]|0; - $45 = (($44) + ($43)|0); - ;HEAP8[$45+0>>0]=0|0;HEAP8[$45+1>>0]=0|0;HEAP8[$45+2>>0]=0|0;HEAP8[$45+3>>0]=0|0; - $46 = HEAP8[$hdr>>0]|0; - $47 = $46&255; - $48 = (($47) + 7)|0; - $49 = HEAP32[$data>>2]|0; - $50 = (($49) + ($48)|0); - HEAP8[$50>>0] = 0; - $51 = HEAP32[$pBt>>2]|0; - $52 = (($51) + 36|0); - $53 = HEAP32[$52>>2]|0; - $54 = $53 >>> 8; - $55 = $54&255; - $56 = HEAP8[$hdr>>0]|0; - $57 = $56&255; - $58 = (($57) + 5)|0; - $59 = HEAP32[$data>>2]|0; - $60 = (($59) + ($58)|0); - HEAP8[$60>>0] = $55; - $61 = HEAP32[$pBt>>2]|0; - $62 = (($61) + 36|0); - $63 = HEAP32[$62>>2]|0; - $64 = $63&255; - $65 = HEAP8[$hdr>>0]|0; - $66 = $65&255; - $67 = (($66) + 5)|0; - $68 = HEAP32[$data>>2]|0; - $69 = (($68) + ($67)|0); - $70 = (($69) + 1|0); - HEAP8[$70>>0] = $64; - $71 = HEAP32[$pBt>>2]|0; - $72 = (($71) + 36|0); - $73 = HEAP32[$72>>2]|0; - $74 = HEAP16[$first>>1]|0; - $75 = $74&65535; - $76 = (($73) - ($75))|0; - $77 = $76&65535; - $78 = HEAP32[$0>>2]|0; - $79 = (($78) + 14|0); - HEAP16[$79>>1] = $77; - $80 = HEAP32[$0>>2]|0; - $81 = HEAP32[$1>>2]|0; - (_decodeFlags($80,$81)|0); - $82 = HEAP16[$first>>1]|0; - $83 = HEAP32[$0>>2]|0; - $84 = (($83) + 12|0); - HEAP16[$84>>1] = $82; - $85 = HEAP32[$pBt>>2]|0; - $86 = (($85) + 36|0); - $87 = HEAP32[$86>>2]|0; - $88 = HEAP32[$data>>2]|0; - $89 = (($88) + ($87)|0); - $90 = HEAP32[$0>>2]|0; - $91 = (($90) + 60|0); - HEAP32[$91>>2] = $89; - $92 = HEAP16[$first>>1]|0; - $93 = $92&65535; - $94 = HEAP32[$data>>2]|0; - $95 = (($94) + ($93)|0); - $96 = HEAP32[$0>>2]|0; - $97 = (($96) + 64|0); - HEAP32[$97>>2] = $95; - $98 = HEAP32[$0>>2]|0; - $99 = (($98) + 1|0); - HEAP8[$99>>0] = 0; - $100 = HEAP32[$pBt>>2]|0; - $101 = (($100) + 32|0); - $102 = HEAP32[$101>>2]|0; - $103 = (($102) - 1)|0; - $104 = $103&65535; - $105 = HEAP32[$0>>2]|0; - $106 = (($105) + 18|0); - HEAP16[$106>>1] = $104; - $107 = HEAP32[$0>>2]|0; - $108 = (($107) + 16|0); - HEAP16[$108>>1] = 0; - $109 = HEAP32[$0>>2]|0; - HEAP8[$109>>0] = 1; - STACKTOP = sp;return; -} -function _freePage2($pBt,$pMemPage,$iPage) { - $pBt = $pBt|0; - $pMemPage = $pMemPage|0; - $iPage = $iPage|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; - var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; - var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; - var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; - var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; - var $98 = 0, $99 = 0, $iTrunk = 0, $nFree = 0, $nLeaf = 0, $pPage = 0, $pPage1 = 0, $pTrunk = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $pTrunk = sp + 24|0; - $iTrunk = sp + 20|0; - $pPage1 = sp + 16|0; - $pPage = sp + 12|0; - $rc = sp + 8|0; - $nFree = sp + 4|0; - $nLeaf = sp; - HEAP32[$0>>2] = $pBt; - HEAP32[$1>>2] = $pMemPage; - HEAP32[$2>>2] = $iPage; - HEAP32[$pTrunk>>2] = 0; - HEAP32[$iTrunk>>2] = 0; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 12|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pPage1>>2] = $5; - $6 = HEAP32[$1>>2]|0; - $7 = ($6|0)!=(0|0); - if ($7) { - $8 = HEAP32[$1>>2]|0; - HEAP32[$pPage>>2] = $8; - $9 = HEAP32[$pPage>>2]|0; - $10 = (($9) + 68|0); - $11 = HEAP32[$10>>2]|0; - _sqlite3PagerRef($11); - } else { - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$2>>2]|0; - $14 = (_btreePageLookup($12,$13)|0); - HEAP32[$pPage>>2] = $14; - } - $15 = HEAP32[$pPage1>>2]|0; - $16 = (($15) + 68|0); - $17 = HEAP32[$16>>2]|0; - $18 = (_sqlite3PagerWrite($17)|0); - HEAP32[$rc>>2] = $18; - $19 = HEAP32[$rc>>2]|0; - $20 = ($19|0)!=(0); - do { - if (!($20)) { - $21 = HEAP32[$pPage1>>2]|0; - $22 = (($21) + 56|0); - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + 36|0); - $25 = (_sqlite3Get4byte($24)|0); - HEAP32[$nFree>>2] = $25; - $26 = HEAP32[$pPage1>>2]|0; - $27 = (($26) + 56|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + 36|0); - $30 = HEAP32[$nFree>>2]|0; - $31 = (($30) + 1)|0; - _sqlite3Put4byte($29,$31); - $32 = HEAP32[$0>>2]|0; - $33 = (($32) + 22|0); - $34 = HEAP16[$33>>1]|0; - $35 = $34&65535; - $36 = $35 & 4; - $37 = ($36|0)!=(0); - if ($37) { - $38 = HEAP32[$pPage>>2]|0; - $39 = ($38|0)!=(0|0); - if (!($39)) { - $40 = HEAP32[$0>>2]|0; - $41 = HEAP32[$2>>2]|0; - $42 = (_btreeGetPage($40,$41,$pPage,0)|0); - HEAP32[$rc>>2] = $42; - $43 = ($42|0)!=(0); - if ($43) { - break; - } - } - $44 = HEAP32[$pPage>>2]|0; - $45 = (($44) + 68|0); - $46 = HEAP32[$45>>2]|0; - $47 = (_sqlite3PagerWrite($46)|0); - HEAP32[$rc>>2] = $47; - $48 = ($47|0)!=(0); - if ($48) { - break; - } - $49 = HEAP32[$pPage>>2]|0; - $50 = (($49) + 56|0); - $51 = HEAP32[$50>>2]|0; - $52 = HEAP32[$pPage>>2]|0; - $53 = (($52) + 52|0); - $54 = HEAP32[$53>>2]|0; - $55 = (($54) + 32|0); - $56 = HEAP32[$55>>2]|0; - _memset(($51|0),0,($56|0))|0; - } - $57 = HEAP32[$0>>2]|0; - $58 = (($57) + 17|0); - $59 = HEAP8[$58>>0]|0; - $60 = ($59<<24>>24)!=(0); - if ($60) { - $61 = HEAP32[$0>>2]|0; - $62 = HEAP32[$2>>2]|0; - _ptrmapPut($61,$62,2,0,$rc); - $63 = HEAP32[$rc>>2]|0; - $64 = ($63|0)!=(0); - if ($64) { - break; - } - } - $65 = HEAP32[$nFree>>2]|0; - $66 = ($65|0)!=(0); - if ($66) { - $67 = HEAP32[$pPage1>>2]|0; - $68 = (($67) + 56|0); - $69 = HEAP32[$68>>2]|0; - $70 = (($69) + 32|0); - $71 = (_sqlite3Get4byte($70)|0); - HEAP32[$iTrunk>>2] = $71; - $72 = HEAP32[$0>>2]|0; - $73 = HEAP32[$iTrunk>>2]|0; - $74 = (_btreeGetPage($72,$73,$pTrunk,0)|0); - HEAP32[$rc>>2] = $74; - $75 = HEAP32[$rc>>2]|0; - $76 = ($75|0)!=(0); - if ($76) { - break; - } - $77 = HEAP32[$pTrunk>>2]|0; - $78 = (($77) + 56|0); - $79 = HEAP32[$78>>2]|0; - $80 = (($79) + 4|0); - $81 = (_sqlite3Get4byte($80)|0); - HEAP32[$nLeaf>>2] = $81; - $82 = HEAP32[$nLeaf>>2]|0; - $83 = HEAP32[$0>>2]|0; - $84 = (($83) + 36|0); - $85 = HEAP32[$84>>2]|0; - $86 = (($85>>>0) / 4)&-1; - $87 = (($86) - 2)|0; - $88 = ($82>>>0)>($87>>>0); - if ($88) { - $89 = (_sqlite3CorruptError(56528)|0); - HEAP32[$rc>>2] = $89; - break; - } - $90 = HEAP32[$nLeaf>>2]|0; - $91 = HEAP32[$0>>2]|0; - $92 = (($91) + 36|0); - $93 = HEAP32[$92>>2]|0; - $94 = (($93>>>0) / 4)&-1; - $95 = (($94) - 8)|0; - $96 = ($90>>>0)<($95>>>0); - if ($96) { - $97 = HEAP32[$pTrunk>>2]|0; - $98 = (($97) + 68|0); - $99 = HEAP32[$98>>2]|0; - $100 = (_sqlite3PagerWrite($99)|0); - HEAP32[$rc>>2] = $100; - $101 = HEAP32[$rc>>2]|0; - $102 = ($101|0)==(0); - if (!($102)) { - break; - } - $103 = HEAP32[$pTrunk>>2]|0; - $104 = (($103) + 56|0); - $105 = HEAP32[$104>>2]|0; - $106 = (($105) + 4|0); - $107 = HEAP32[$nLeaf>>2]|0; - $108 = (($107) + 1)|0; - _sqlite3Put4byte($106,$108); - $109 = HEAP32[$nLeaf>>2]|0; - $110 = $109<<2; - $111 = (8 + ($110))|0; - $112 = HEAP32[$pTrunk>>2]|0; - $113 = (($112) + 56|0); - $114 = HEAP32[$113>>2]|0; - $115 = (($114) + ($111)|0); - $116 = HEAP32[$2>>2]|0; - _sqlite3Put4byte($115,$116); - $117 = HEAP32[$pPage>>2]|0; - $118 = ($117|0)!=(0|0); - if ($118) { - $119 = HEAP32[$0>>2]|0; - $120 = (($119) + 22|0); - $121 = HEAP16[$120>>1]|0; - $122 = $121&65535; - $123 = $122 & 4; - $124 = ($123|0)==(0); - if ($124) { - $125 = HEAP32[$pPage>>2]|0; - $126 = (($125) + 68|0); - $127 = HEAP32[$126>>2]|0; - _sqlite3PagerDontWrite($127); - } - } - $128 = HEAP32[$0>>2]|0; - $129 = HEAP32[$2>>2]|0; - $130 = (_btreeSetHasContent($128,$129)|0); - HEAP32[$rc>>2] = $130; - break; - } - } - $131 = HEAP32[$pPage>>2]|0; - $132 = ($131|0)==(0|0); - if ($132) { - $133 = HEAP32[$0>>2]|0; - $134 = HEAP32[$2>>2]|0; - $135 = (_btreeGetPage($133,$134,$pPage,0)|0); - HEAP32[$rc>>2] = $135; - $136 = (0)!=($135|0); - if ($136) { - break; - } - } - $137 = HEAP32[$pPage>>2]|0; - $138 = (($137) + 68|0); - $139 = HEAP32[$138>>2]|0; - $140 = (_sqlite3PagerWrite($139)|0); - HEAP32[$rc>>2] = $140; - $141 = HEAP32[$rc>>2]|0; - $142 = ($141|0)!=(0); - if (!($142)) { - $143 = HEAP32[$pPage>>2]|0; - $144 = (($143) + 56|0); - $145 = HEAP32[$144>>2]|0; - $146 = HEAP32[$iTrunk>>2]|0; - _sqlite3Put4byte($145,$146); - $147 = HEAP32[$pPage>>2]|0; - $148 = (($147) + 56|0); - $149 = HEAP32[$148>>2]|0; - $150 = (($149) + 4|0); - _sqlite3Put4byte($150,0); - $151 = HEAP32[$pPage1>>2]|0; - $152 = (($151) + 56|0); - $153 = HEAP32[$152>>2]|0; - $154 = (($153) + 32|0); - $155 = HEAP32[$2>>2]|0; - _sqlite3Put4byte($154,$155); - } - } - } while(0); - $156 = HEAP32[$pPage>>2]|0; - $157 = ($156|0)!=(0|0); - if (!($157)) { - $159 = HEAP32[$pPage>>2]|0; - _releasePage($159); - $160 = HEAP32[$pTrunk>>2]|0; - _releasePage($160); - $161 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($161|0); - } - $158 = HEAP32[$pPage>>2]|0; - HEAP8[$158>>0] = 0; - $159 = HEAP32[$pPage>>2]|0; - _releasePage($159); - $160 = HEAP32[$pTrunk>>2]|0; - _releasePage($160); - $161 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($161|0); -} -function _sqlite3PagerRef($pPg) { - $pPg = $pPg|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPg; - $1 = HEAP32[$0>>2]|0; - _sqlite3PcacheRef($1); - STACKTOP = sp;return; -} -function _btreePageLookup($pBt,$pgno) { - $pBt = $pBt|0; - $pgno = $pgno|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDbPage = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pDbPage = sp; - HEAP32[$1>>2] = $pBt; - HEAP32[$2>>2] = $pgno; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$2>>2]|0; - $6 = (_sqlite3PagerLookup($4,$5)|0); - HEAP32[$pDbPage>>2] = $6; - $7 = HEAP32[$pDbPage>>2]|0; - $8 = ($7|0)!=(0|0); - if ($8) { - $9 = HEAP32[$pDbPage>>2]|0; - $10 = HEAP32[$2>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = (_btreePageFromDbPage($9,$10,$11)|0); - HEAP32[$0>>2] = $12; - $13 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($13|0); - } else { - HEAP32[$0>>2] = 0; - $13 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($13|0); - } - return 0|0; -} -function _sqlite3PagerDontWrite($pPg) { - $pPg = $pPg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $pPager = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pPager = sp; - HEAP32[$0>>2] = $pPg; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 16|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pPager>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 24|0); - $6 = HEAP16[$5>>1]|0; - $7 = $6&65535; - $8 = $7 & 2; - $9 = ($8|0)!=(0); - if (!($9)) { - STACKTOP = sp;return; - } - $10 = HEAP32[$pPager>>2]|0; - $11 = (($10) + 96|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)==(0); - if (!($13)) { - STACKTOP = sp;return; - } - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 24|0); - $16 = HEAP16[$15>>1]|0; - $17 = $16&65535; - $18 = $17 | 32; - $19 = $18&65535; - HEAP16[$15>>1] = $19; - STACKTOP = sp;return; -} -function _btreeSetHasContent($pBt,$pgno) { - $pBt = $pBt|0; - $pgno = $pgno|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pBt; - HEAP32[$1>>2] = $pgno; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 60|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 44|0); - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3BitvecCreate($8)|0); - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 60|0); - HEAP32[$11>>2] = $9; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 60|0); - $14 = HEAP32[$13>>2]|0; - $15 = ($14|0)!=(0|0); - if (!($15)) { - HEAP32[$rc>>2] = 7; - } - } - $16 = HEAP32[$rc>>2]|0; - $17 = ($16|0)==(0); - if (!($17)) { - $29 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($29|0); - } - $18 = HEAP32[$1>>2]|0; - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 60|0); - $21 = HEAP32[$20>>2]|0; - $22 = (_sqlite3BitvecSize($21)|0); - $23 = ($18>>>0)<=($22>>>0); - if (!($23)) { - $29 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($29|0); - } - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 60|0); - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$1>>2]|0; - $28 = (_sqlite3BitvecSet($26,$27)|0); - HEAP32[$rc>>2] = $28; - $29 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($29|0); -} -function _sqlite3PcacheRef($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 26|0); - $3 = HEAP16[$2>>1]|0; - $4 = (($3) + 1)<<16>>16; - HEAP16[$2>>1] = $4; - STACKTOP = sp;return; -} -function _btreeDropTable($p,$iTable,$piMoved) { - $p = $p|0; - $iTable = $iTable|0; - $piMoved = $piMoved|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $maxRootPgno = 0, $pBt = 0, $pMove = 0, $pPage = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $rc = sp + 16|0; - $pPage = sp + 12|0; - $pBt = sp + 8|0; - $maxRootPgno = sp + 4|0; - $pMove = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $iTable; - HEAP32[$3>>2] = $piMoved; - HEAP32[$pPage>>2] = 0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$pBt>>2] = $6; - $7 = HEAP32[$pBt>>2]|0; - $8 = (($7) + 8|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($9|0)!=(0|0); - if ($10) { - HEAP32[$0>>2] = 262; - $89 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($89|0); - } - $11 = HEAP32[$pBt>>2]|0; - $12 = HEAP32[$2>>2]|0; - $13 = (_btreeGetPage($11,$12,$pPage,0)|0); - HEAP32[$rc>>2] = $13; - $14 = HEAP32[$rc>>2]|0; - $15 = ($14|0)!=(0); - if ($15) { - $16 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $16; - $89 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($89|0); - } - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$2>>2]|0; - $19 = (_sqlite3BtreeClearTable($17,$18,0)|0); - HEAP32[$rc>>2] = $19; - $20 = HEAP32[$rc>>2]|0; - $21 = ($20|0)!=(0); - if ($21) { - $22 = HEAP32[$pPage>>2]|0; - _releasePage($22); - $23 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $23; - $89 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($89|0); - } - $24 = HEAP32[$3>>2]|0; - HEAP32[$24>>2] = 0; - $25 = HEAP32[$2>>2]|0; - $26 = ($25>>>0)>(1); - do { - if ($26) { - $27 = HEAP32[$pBt>>2]|0; - $28 = (($27) + 17|0); - $29 = HEAP8[$28>>0]|0; - $30 = ($29<<24>>24)!=(0); - if (!($30)) { - $84 = HEAP32[$pPage>>2]|0; - _freePage($84,$rc); - $85 = HEAP32[$pPage>>2]|0; - _releasePage($85); - break; - } - $31 = HEAP32[$1>>2]|0; - _sqlite3BtreeGetMeta($31,4,$maxRootPgno); - $32 = HEAP32[$2>>2]|0; - $33 = HEAP32[$maxRootPgno>>2]|0; - $34 = ($32|0)==($33|0); - $35 = HEAP32[$pPage>>2]|0; - do { - if ($34) { - _freePage($35,$rc); - $36 = HEAP32[$pPage>>2]|0; - _releasePage($36); - $37 = HEAP32[$rc>>2]|0; - $38 = ($37|0)!=(0); - if ($38) { - $39 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $39; - $89 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($89|0); - } - } else { - _releasePage($35); - $40 = HEAP32[$pBt>>2]|0; - $41 = HEAP32[$maxRootPgno>>2]|0; - $42 = (_btreeGetPage($40,$41,$pMove,0)|0); - HEAP32[$rc>>2] = $42; - $43 = HEAP32[$rc>>2]|0; - $44 = ($43|0)!=(0); - if ($44) { - $45 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $45; - $89 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($89|0); - } - $46 = HEAP32[$pBt>>2]|0; - $47 = HEAP32[$pMove>>2]|0; - $48 = HEAP32[$2>>2]|0; - $49 = (_relocatePage($46,$47,1,0,$48,0)|0); - HEAP32[$rc>>2] = $49; - $50 = HEAP32[$pMove>>2]|0; - _releasePage($50); - $51 = HEAP32[$rc>>2]|0; - $52 = ($51|0)!=(0); - if ($52) { - $53 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $53; - $89 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($89|0); - } - HEAP32[$pMove>>2] = 0; - $54 = HEAP32[$pBt>>2]|0; - $55 = HEAP32[$maxRootPgno>>2]|0; - $56 = (_btreeGetPage($54,$55,$pMove,0)|0); - HEAP32[$rc>>2] = $56; - $57 = HEAP32[$pMove>>2]|0; - _freePage($57,$rc); - $58 = HEAP32[$pMove>>2]|0; - _releasePage($58); - $59 = HEAP32[$rc>>2]|0; - $60 = ($59|0)!=(0); - if (!($60)) { - $62 = HEAP32[$maxRootPgno>>2]|0; - $63 = HEAP32[$3>>2]|0; - HEAP32[$63>>2] = $62; - break; - } - $61 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $61; - $89 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($89|0); - } - } while(0); - $64 = HEAP32[$maxRootPgno>>2]|0; - $65 = (($64) + -1)|0; - HEAP32[$maxRootPgno>>2] = $65; - while(1) { - $66 = HEAP32[$maxRootPgno>>2]|0; - $67 = HEAP32[1384>>2]|0; - $68 = HEAP32[$pBt>>2]|0; - $69 = (($68) + 32|0); - $70 = HEAP32[$69>>2]|0; - $71 = (($67>>>0) / ($70>>>0))&-1; - $72 = (($71) + 1)|0; - $73 = ($66|0)==($72|0); - if (!($73)) { - $74 = HEAP32[$pBt>>2]|0; - $75 = HEAP32[$maxRootPgno>>2]|0; - $76 = (_ptrmapPageno($74,$75)|0); - $77 = HEAP32[$maxRootPgno>>2]|0; - $78 = ($76|0)==($77|0); - if (!($78)) { - break; - } - } - $79 = HEAP32[$maxRootPgno>>2]|0; - $80 = (($79) + -1)|0; - HEAP32[$maxRootPgno>>2] = $80; - } - $81 = HEAP32[$1>>2]|0; - $82 = HEAP32[$maxRootPgno>>2]|0; - $83 = (_sqlite3BtreeUpdateMeta($81,4,$82)|0); - HEAP32[$rc>>2] = $83; - } else { - $86 = HEAP32[$pPage>>2]|0; - _zeroPage($86,9); - $87 = HEAP32[$pPage>>2]|0; - _releasePage($87); - } - } while(0); - $88 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $88; - $89 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($89|0); -} -function _vdbeSorterListToPMA($db,$pCsr) { - $db = $db|0; - $pCsr = $pCsr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $p = 0, $pNext = 0, $pSorter = 0, $rc = 0, $writer = 0, dest = 0, label = 0; - var sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 64|0; - $1 = sp + 60|0; - $2 = sp + 56|0; - $rc = sp + 52|0; - $pSorter = sp + 48|0; - $writer = sp; - $p = sp + 44|0; - $pNext = sp + 40|0; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pCsr; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 64|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pSorter>>2] = $5; - dest=$writer+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $6 = HEAP32[$pSorter>>2]|0; - $7 = (($6) + 16|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)==(0); - if ($9) { - $10 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $10; - $72 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($72|0); - } - $11 = HEAP32[$2>>2]|0; - $12 = (_vdbeSorterSort($11)|0); - HEAP32[$rc>>2] = $12; - $13 = HEAP32[$rc>>2]|0; - $14 = ($13|0)==(0); - if ($14) { - $15 = HEAP32[$pSorter>>2]|0; - $16 = (($15) + 44|0); - $17 = HEAP32[$16>>2]|0; - $18 = ($17|0)==(0|0); - if ($18) { - $19 = HEAP32[$1>>2]|0; - $20 = HEAP32[$pSorter>>2]|0; - $21 = (($20) + 44|0); - $22 = (_vdbeSorterOpenTempFile($19,$21)|0); - HEAP32[$rc>>2] = $22; - } - } - $23 = HEAP32[$rc>>2]|0; - $24 = ($23|0)==(0); - if ($24) { - HEAP32[$pNext>>2] = 0; - $25 = HEAP32[$1>>2]|0; - $26 = HEAP32[$pSorter>>2]|0; - $27 = (($26) + 44|0); - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$pSorter>>2]|0; - $30 = $29; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $33 = (($30) + 4)|0; - $34 = $33; - $35 = HEAP32[$34>>2]|0; - _fileWriterInit($25,$28,$writer,$32,$35); - $36 = HEAP32[$pSorter>>2]|0; - $37 = (($36) + 24|0); - $38 = HEAP32[$37>>2]|0; - $39 = (($38) + 1)|0; - HEAP32[$37>>2] = $39; - $40 = HEAP32[$pSorter>>2]|0; - $41 = (($40) + 16|0); - $42 = HEAP32[$41>>2]|0; - $43 = ($42|0)<(0); - $44 = $43 << 31 >> 31; - _fileWriterWriteVarint($writer,$42,$44); - $45 = HEAP32[$pSorter>>2]|0; - $46 = (($45) + 48|0); - $47 = HEAP32[$46>>2]|0; - HEAP32[$p>>2] = $47; - while(1) { - $48 = HEAP32[$p>>2]|0; - $49 = ($48|0)!=(0|0); - $50 = HEAP32[$p>>2]|0; - if (!($49)) { - break; - } - $51 = (($50) + 8|0); - $52 = HEAP32[$51>>2]|0; - HEAP32[$pNext>>2] = $52; - $53 = HEAP32[$p>>2]|0; - $54 = (($53) + 4|0); - $55 = HEAP32[$54>>2]|0; - $56 = ($55|0)<(0); - $57 = $56 << 31 >> 31; - _fileWriterWriteVarint($writer,$55,$57); - $58 = HEAP32[$p>>2]|0; - $59 = HEAP32[$58>>2]|0; - $60 = HEAP32[$p>>2]|0; - $61 = (($60) + 4|0); - $62 = HEAP32[$61>>2]|0; - _fileWriterWrite($writer,$59,$62); - $63 = HEAP32[$1>>2]|0; - $64 = HEAP32[$p>>2]|0; - _sqlite3DbFree($63,$64); - $65 = HEAP32[$pNext>>2]|0; - HEAP32[$p>>2] = $65; - } - $66 = HEAP32[$pSorter>>2]|0; - $67 = (($66) + 48|0); - HEAP32[$67>>2] = $50; - $68 = HEAP32[$1>>2]|0; - $69 = HEAP32[$pSorter>>2]|0; - $70 = (_fileWriterFinish($68,$writer,$69)|0); - HEAP32[$rc>>2] = $70; - } - $71 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $71; - $72 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($72|0); -} -function _vdbeSorterSort($pCsr) { - $pCsr = $pCsr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aSlot = 0, $i = 0, $p = 0, $pNext = 0, $pSorter = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $i = sp + 16|0; - $aSlot = sp + 12|0; - $p = sp + 8|0; - $pSorter = sp + 4|0; - $pNext = sp; - HEAP32[$1>>2] = $pCsr; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 64|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pSorter>>2] = $4; - $5 = (_sqlite3MallocZero(256)|0); - HEAP32[$aSlot>>2] = $5; - $6 = HEAP32[$aSlot>>2]|0; - $7 = ($6|0)!=(0|0); - if (!($7)) { - HEAP32[$0>>2] = 7; - $53 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($53|0); - } - $8 = HEAP32[$pSorter>>2]|0; - $9 = (($8) + 48|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$p>>2] = $10; - while(1) { - $11 = HEAP32[$p>>2]|0; - $12 = ($11|0)!=(0|0); - if (!($12)) { - break; - } - $13 = HEAP32[$p>>2]|0; - $14 = (($13) + 8|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$pNext>>2] = $15; - $16 = HEAP32[$p>>2]|0; - $17 = (($16) + 8|0); - HEAP32[$17>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $18 = HEAP32[$i>>2]|0; - $19 = HEAP32[$aSlot>>2]|0; - $20 = (($19) + ($18<<2)|0); - $21 = HEAP32[$20>>2]|0; - $22 = ($21|0)!=(0|0); - if (!($22)) { - break; - } - $23 = HEAP32[$1>>2]|0; - $24 = HEAP32[$p>>2]|0; - $25 = HEAP32[$i>>2]|0; - $26 = HEAP32[$aSlot>>2]|0; - $27 = (($26) + ($25<<2)|0); - $28 = HEAP32[$27>>2]|0; - _vdbeSorterMerge($23,$24,$28,$p); - $29 = HEAP32[$i>>2]|0; - $30 = HEAP32[$aSlot>>2]|0; - $31 = (($30) + ($29<<2)|0); - HEAP32[$31>>2] = 0; - $32 = HEAP32[$i>>2]|0; - $33 = (($32) + 1)|0; - HEAP32[$i>>2] = $33; - } - $34 = HEAP32[$p>>2]|0; - $35 = HEAP32[$i>>2]|0; - $36 = HEAP32[$aSlot>>2]|0; - $37 = (($36) + ($35<<2)|0); - HEAP32[$37>>2] = $34; - $38 = HEAP32[$pNext>>2]|0; - HEAP32[$p>>2] = $38; - } - HEAP32[$p>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $39 = HEAP32[$i>>2]|0; - $40 = ($39|0)<(64); - if (!($40)) { - break; - } - $41 = HEAP32[$1>>2]|0; - $42 = HEAP32[$p>>2]|0; - $43 = HEAP32[$i>>2]|0; - $44 = HEAP32[$aSlot>>2]|0; - $45 = (($44) + ($43<<2)|0); - $46 = HEAP32[$45>>2]|0; - _vdbeSorterMerge($41,$42,$46,$p); - $47 = HEAP32[$i>>2]|0; - $48 = (($47) + 1)|0; - HEAP32[$i>>2] = $48; - } - $49 = HEAP32[$p>>2]|0; - $50 = HEAP32[$pSorter>>2]|0; - $51 = (($50) + 48|0); - HEAP32[$51>>2] = $49; - $52 = HEAP32[$aSlot>>2]|0; - _sqlite3_free($52); - HEAP32[$0>>2] = 0; - $53 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($53|0); -} -function _vdbeSorterOpenTempFile($db,$ppFile) { - $db = $db|0; - $ppFile = $ppFile|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $dummy = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $dummy = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $ppFile; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (_sqlite3OsOpenMalloc($3,0,$4,4126,$dummy)|0); - STACKTOP = sp;return ($5|0); -} -function _fileWriterInit($db,$pFile,$p,$0,$1) { - $db = $db|0; - $pFile = $pFile|0; - $p = $p|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $nBuf = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp + 12|0; - $5 = sp; - $nBuf = sp + 8|0; - HEAP32[$2>>2] = $db; - HEAP32[$3>>2] = $pFile; - HEAP32[$4>>2] = $p; - $6 = $5; - $7 = $6; - HEAP32[$7>>2] = $0; - $8 = (($6) + 4)|0; - $9 = $8; - HEAP32[$9>>2] = $1; - $10 = HEAP32[$2>>2]|0; - $11 = (($10) + 16|0); - $12 = HEAP32[$11>>2]|0; - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - $15 = (_sqlite3BtreeGetPageSize($14)|0); - HEAP32[$nBuf>>2] = $15; - $16 = HEAP32[$4>>2]|0; - dest=$16+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $17 = HEAP32[$2>>2]|0; - $18 = HEAP32[$nBuf>>2]|0; - $19 = (_sqlite3DbMallocRaw($17,$18)|0); - $20 = HEAP32[$4>>2]|0; - $21 = (($20) + 4|0); - HEAP32[$21>>2] = $19; - $22 = HEAP32[$4>>2]|0; - $23 = (($22) + 4|0); - $24 = HEAP32[$23>>2]|0; - $25 = ($24|0)!=(0|0); - if ($25) { - $27 = $5; - $28 = $27; - $29 = HEAP32[$28>>2]|0; - $30 = (($27) + 4)|0; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $33 = HEAP32[$nBuf>>2]|0; - $34 = ($33|0)<(0); - $35 = $34 << 31 >> 31; - $36 = (___remdi3(($29|0),($32|0),($33|0),($35|0))|0); - $37 = tempRet0; - $38 = HEAP32[$4>>2]|0; - $39 = (($38) + 12|0); - HEAP32[$39>>2] = $36; - $40 = HEAP32[$4>>2]|0; - $41 = (($40) + 16|0); - HEAP32[$41>>2] = $36; - $42 = $5; - $43 = $42; - $44 = HEAP32[$43>>2]|0; - $45 = (($42) + 4)|0; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = HEAP32[$4>>2]|0; - $49 = (($48) + 12|0); - $50 = HEAP32[$49>>2]|0; - $51 = ($50|0)<(0); - $52 = $51 << 31 >> 31; - $53 = (_i64Subtract(($44|0),($47|0),($50|0),($52|0))|0); - $54 = tempRet0; - $55 = HEAP32[$4>>2]|0; - $56 = (($55) + 24|0); - $57 = $56; - $58 = $57; - HEAP32[$58>>2] = $53; - $59 = (($57) + 4)|0; - $60 = $59; - HEAP32[$60>>2] = $54; - $61 = HEAP32[$nBuf>>2]|0; - $62 = HEAP32[$4>>2]|0; - $63 = (($62) + 8|0); - HEAP32[$63>>2] = $61; - $64 = HEAP32[$3>>2]|0; - $65 = HEAP32[$4>>2]|0; - $66 = (($65) + 32|0); - HEAP32[$66>>2] = $64; - STACKTOP = sp;return; - } else { - $26 = HEAP32[$4>>2]|0; - HEAP32[$26>>2] = 7; - STACKTOP = sp;return; - } -} -function _fileWriterWriteVarint($p,$0,$1) { - $p = $p|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aByte = 0, $nByte = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 12|0; - $3 = sp; - $nByte = sp + 8|0; - $aByte = sp + 16|0; - HEAP32[$2>>2] = $p; - $4 = $3; - $5 = $4; - HEAP32[$5>>2] = $0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = $1; - $8 = $3; - $9 = $8; - $10 = HEAP32[$9>>2]|0; - $11 = (($8) + 4)|0; - $12 = $11; - $13 = HEAP32[$12>>2]|0; - $14 = (_sqlite3PutVarint($aByte,$10,$13)|0); - HEAP32[$nByte>>2] = $14; - $15 = HEAP32[$2>>2]|0; - $16 = HEAP32[$nByte>>2]|0; - _fileWriterWrite($15,$aByte,$16); - STACKTOP = sp;return; -} -function _fileWriterWrite($p,$pData,$nData) { - $p = $p|0; - $pData = $pData|0; - $nData = $nData|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0; - var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; - var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; - var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; - var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; - var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $nCopy = 0, $nRem = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $nRem = sp + 4|0; - $nCopy = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $pData; - HEAP32[$2>>2] = $nData; - $3 = HEAP32[$2>>2]|0; - HEAP32[$nRem>>2] = $3; - while(1) { - $4 = HEAP32[$nRem>>2]|0; - $5 = ($4|0)>(0); - if (!($5)) { - label = 9; - break; - } - $6 = HEAP32[$0>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)==(0); - if (!($8)) { - label = 9; - break; - } - $9 = HEAP32[$nRem>>2]|0; - HEAP32[$nCopy>>2] = $9; - $10 = HEAP32[$nCopy>>2]|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 8|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 16|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($13) - ($16))|0; - $18 = ($10|0)>($17|0); - if ($18) { - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 8|0); - $21 = HEAP32[$20>>2]|0; - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 16|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($21) - ($24))|0; - HEAP32[$nCopy>>2] = $25; - } - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 16|0); - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$0>>2]|0; - $30 = (($29) + 4|0); - $31 = HEAP32[$30>>2]|0; - $32 = (($31) + ($28)|0); - $33 = HEAP32[$2>>2]|0; - $34 = HEAP32[$nRem>>2]|0; - $35 = (($33) - ($34))|0; - $36 = HEAP32[$1>>2]|0; - $37 = (($36) + ($35)|0); - $38 = HEAP32[$nCopy>>2]|0; - _memcpy(($32|0),($37|0),($38|0))|0; - $39 = HEAP32[$nCopy>>2]|0; - $40 = HEAP32[$0>>2]|0; - $41 = (($40) + 16|0); - $42 = HEAP32[$41>>2]|0; - $43 = (($42) + ($39))|0; - HEAP32[$41>>2] = $43; - $44 = HEAP32[$0>>2]|0; - $45 = (($44) + 16|0); - $46 = HEAP32[$45>>2]|0; - $47 = HEAP32[$0>>2]|0; - $48 = (($47) + 8|0); - $49 = HEAP32[$48>>2]|0; - $50 = ($46|0)==($49|0); - if ($50) { - $51 = HEAP32[$0>>2]|0; - $52 = (($51) + 32|0); - $53 = HEAP32[$52>>2]|0; - $54 = HEAP32[$0>>2]|0; - $55 = (($54) + 12|0); - $56 = HEAP32[$55>>2]|0; - $57 = HEAP32[$0>>2]|0; - $58 = (($57) + 4|0); - $59 = HEAP32[$58>>2]|0; - $60 = (($59) + ($56)|0); - $61 = HEAP32[$0>>2]|0; - $62 = (($61) + 16|0); - $63 = HEAP32[$62>>2]|0; - $64 = HEAP32[$0>>2]|0; - $65 = (($64) + 12|0); - $66 = HEAP32[$65>>2]|0; - $67 = (($63) - ($66))|0; - $68 = HEAP32[$0>>2]|0; - $69 = (($68) + 24|0); - $70 = $69; - $71 = $70; - $72 = HEAP32[$71>>2]|0; - $73 = (($70) + 4)|0; - $74 = $73; - $75 = HEAP32[$74>>2]|0; - $76 = HEAP32[$0>>2]|0; - $77 = (($76) + 12|0); - $78 = HEAP32[$77>>2]|0; - $79 = ($78|0)<(0); - $80 = $79 << 31 >> 31; - $81 = (_i64Add(($72|0),($75|0),($78|0),($80|0))|0); - $82 = tempRet0; - $83 = (_sqlite3OsWrite($53,$60,$67,$81,$82)|0); - $84 = HEAP32[$0>>2]|0; - HEAP32[$84>>2] = $83; - $85 = HEAP32[$0>>2]|0; - $86 = (($85) + 16|0); - HEAP32[$86>>2] = 0; - $87 = HEAP32[$0>>2]|0; - $88 = (($87) + 12|0); - HEAP32[$88>>2] = 0; - $89 = HEAP32[$0>>2]|0; - $90 = (($89) + 8|0); - $91 = HEAP32[$90>>2]|0; - $92 = ($91|0)<(0); - $93 = $92 << 31 >> 31; - $94 = HEAP32[$0>>2]|0; - $95 = (($94) + 24|0); - $96 = $95; - $97 = $96; - $98 = HEAP32[$97>>2]|0; - $99 = (($96) + 4)|0; - $100 = $99; - $101 = HEAP32[$100>>2]|0; - $102 = (_i64Add(($98|0),($101|0),($91|0),($93|0))|0); - $103 = tempRet0; - $104 = $95; - $105 = $104; - HEAP32[$105>>2] = $102; - $106 = (($104) + 4)|0; - $107 = $106; - HEAP32[$107>>2] = $103; - } - $108 = HEAP32[$nCopy>>2]|0; - $109 = HEAP32[$nRem>>2]|0; - $110 = (($109) - ($108))|0; - HEAP32[$nRem>>2] = $110; - } - if ((label|0) == 9) { - STACKTOP = sp;return; - } -} -function _fileWriterFinish($db,$p,$piEof) { - $db = $db|0; - $p = $p|0; - $piEof = $piEof|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $8 = 0, $9 = 0, $rc = 0; - var dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $piEof; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)==(0); - if ($5) { - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)!=(0|0); - if ($9) { - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 16|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 12|0); - $15 = HEAP32[$14>>2]|0; - $16 = ($12|0)>($15|0); - if ($16) { - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 32|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 12|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 4|0); - $25 = HEAP32[$24>>2]|0; - $26 = (($25) + ($22)|0); - $27 = HEAP32[$1>>2]|0; - $28 = (($27) + 16|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 12|0); - $32 = HEAP32[$31>>2]|0; - $33 = (($29) - ($32))|0; - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 24|0); - $36 = $35; - $37 = $36; - $38 = HEAP32[$37>>2]|0; - $39 = (($36) + 4)|0; - $40 = $39; - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$1>>2]|0; - $43 = (($42) + 12|0); - $44 = HEAP32[$43>>2]|0; - $45 = ($44|0)<(0); - $46 = $45 << 31 >> 31; - $47 = (_i64Add(($38|0),($41|0),($44|0),($46|0))|0); - $48 = tempRet0; - $49 = (_sqlite3OsWrite($19,$26,$33,$47,$48)|0); - $50 = HEAP32[$1>>2]|0; - HEAP32[$50>>2] = $49; - } - } - } - $51 = HEAP32[$1>>2]|0; - $52 = (($51) + 24|0); - $53 = $52; - $54 = $53; - $55 = HEAP32[$54>>2]|0; - $56 = (($53) + 4)|0; - $57 = $56; - $58 = HEAP32[$57>>2]|0; - $59 = HEAP32[$1>>2]|0; - $60 = (($59) + 16|0); - $61 = HEAP32[$60>>2]|0; - $62 = ($61|0)<(0); - $63 = $62 << 31 >> 31; - $64 = (_i64Add(($55|0),($58|0),($61|0),($63|0))|0); - $65 = tempRet0; - $66 = HEAP32[$2>>2]|0; - $67 = $66; - $68 = $67; - HEAP32[$68>>2] = $64; - $69 = (($67) + 4)|0; - $70 = $69; - HEAP32[$70>>2] = $65; - $71 = HEAP32[$0>>2]|0; - $72 = HEAP32[$1>>2]|0; - $73 = (($72) + 4|0); - $74 = HEAP32[$73>>2]|0; - _sqlite3DbFree($71,$74); - $75 = HEAP32[$1>>2]|0; - $76 = HEAP32[$75>>2]|0; - HEAP32[$rc>>2] = $76; - $77 = HEAP32[$1>>2]|0; - dest=$77+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $78 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($78|0); -} -function _sqlite3PutVarint($p,$0,$1) { - $p = $p|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; - var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; - var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; - var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; - var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $buf = 0; - var $i = 0, $j = 0, $n = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $4 = sp; - $i = sp + 16|0; - $j = sp + 12|0; - $n = sp + 8|0; - $buf = sp + 28|0; - HEAP32[$3>>2] = $p; - $5 = $4; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - $9 = $4; - $10 = $9; - $11 = HEAP32[$10>>2]|0; - $12 = (($9) + 4)|0; - $13 = $12; - $14 = HEAP32[$13>>2]|0; - $15 = $14 & -16777216; - $16 = (0)!=(0); - $17 = ($15|0)!=(0); - $18 = $16 | $17; - if ($18) { - $19 = $4; - $20 = $19; - $21 = HEAP32[$20>>2]|0; - $22 = (($19) + 4)|0; - $23 = $22; - $24 = HEAP32[$23>>2]|0; - $25 = $21&255; - $26 = HEAP32[$3>>2]|0; - $27 = (($26) + 8|0); - HEAP8[$27>>0] = $25; - $28 = $4; - $29 = $28; - $30 = HEAP32[$29>>2]|0; - $31 = (($28) + 4)|0; - $32 = $31; - $33 = HEAP32[$32>>2]|0; - $34 = (_bitshift64Lshr(($30|0),($33|0),8)|0); - $35 = tempRet0; - $36 = $4; - $37 = $36; - HEAP32[$37>>2] = $34; - $38 = (($36) + 4)|0; - $39 = $38; - HEAP32[$39>>2] = $35; - HEAP32[$i>>2] = 7; - while(1) { - $40 = HEAP32[$i>>2]|0; - $41 = ($40|0)>=(0); - if (!($41)) { - break; - } - $42 = $4; - $43 = $42; - $44 = HEAP32[$43>>2]|0; - $45 = (($42) + 4)|0; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = $44 & 127; - $49 = $48 | 128; - $50 = $49&255; - $51 = HEAP32[$i>>2]|0; - $52 = HEAP32[$3>>2]|0; - $53 = (($52) + ($51)|0); - HEAP8[$53>>0] = $50; - $54 = $4; - $55 = $54; - $56 = HEAP32[$55>>2]|0; - $57 = (($54) + 4)|0; - $58 = $57; - $59 = HEAP32[$58>>2]|0; - $60 = (_bitshift64Lshr(($56|0),($59|0),7)|0); - $61 = tempRet0; - $62 = $4; - $63 = $62; - HEAP32[$63>>2] = $60; - $64 = (($62) + 4)|0; - $65 = $64; - HEAP32[$65>>2] = $61; - $66 = HEAP32[$i>>2]|0; - $67 = (($66) + -1)|0; - HEAP32[$i>>2] = $67; - } - HEAP32[$2>>2] = 9; - $120 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($120|0); - } - HEAP32[$n>>2] = 0; - while(1) { - $68 = $4; - $69 = $68; - $70 = HEAP32[$69>>2]|0; - $71 = (($68) + 4)|0; - $72 = $71; - $73 = HEAP32[$72>>2]|0; - $74 = $70 & 127; - $75 = $74 | 128; - $76 = $75&255; - $77 = HEAP32[$n>>2]|0; - $78 = (($77) + 1)|0; - HEAP32[$n>>2] = $78; - $79 = (($buf) + ($77)|0); - HEAP8[$79>>0] = $76; - $80 = $4; - $81 = $80; - $82 = HEAP32[$81>>2]|0; - $83 = (($80) + 4)|0; - $84 = $83; - $85 = HEAP32[$84>>2]|0; - $86 = (_bitshift64Lshr(($82|0),($85|0),7)|0); - $87 = tempRet0; - $88 = $4; - $89 = $88; - HEAP32[$89>>2] = $86; - $90 = (($88) + 4)|0; - $91 = $90; - HEAP32[$91>>2] = $87; - $92 = $4; - $93 = $92; - $94 = HEAP32[$93>>2]|0; - $95 = (($92) + 4)|0; - $96 = $95; - $97 = HEAP32[$96>>2]|0; - $98 = ($94|0)!=(0); - $99 = ($97|0)!=(0); - $100 = $98 | $99; - if (!($100)) { - break; - } - } - $101 = HEAP8[$buf>>0]|0; - $102 = $101&255; - $103 = $102 & 127; - $104 = $103&255; - HEAP8[$buf>>0] = $104; - HEAP32[$i>>2] = 0; - $105 = HEAP32[$n>>2]|0; - $106 = (($105) - 1)|0; - HEAP32[$j>>2] = $106; - while(1) { - $107 = HEAP32[$j>>2]|0; - $108 = ($107|0)>=(0); - if (!($108)) { - break; - } - $109 = HEAP32[$j>>2]|0; - $110 = (($buf) + ($109)|0); - $111 = HEAP8[$110>>0]|0; - $112 = HEAP32[$i>>2]|0; - $113 = HEAP32[$3>>2]|0; - $114 = (($113) + ($112)|0); - HEAP8[$114>>0] = $111; - $115 = HEAP32[$j>>2]|0; - $116 = (($115) + -1)|0; - HEAP32[$j>>2] = $116; - $117 = HEAP32[$i>>2]|0; - $118 = (($117) + 1)|0; - HEAP32[$i>>2] = $118; - } - $119 = HEAP32[$n>>2]|0; - HEAP32[$2>>2] = $119; - $120 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($120|0); -} -function _sqlite3OsOpenMalloc($pVfs,$zFile,$ppFile,$flags,$pOutFlags) { - $pVfs = $pVfs|0; - $zFile = $zFile|0; - $ppFile = $ppFile|0; - $flags = $flags|0; - $pOutFlags = $pOutFlags|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $pFile = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $rc = sp + 4|0; - $pFile = sp; - HEAP32[$0>>2] = $pVfs; - HEAP32[$1>>2] = $zFile; - HEAP32[$2>>2] = $ppFile; - HEAP32[$3>>2] = $flags; - HEAP32[$4>>2] = $pOutFlags; - HEAP32[$rc>>2] = 7; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 4|0); - $7 = HEAP32[$6>>2]|0; - $8 = (_sqlite3MallocZero($7)|0); - HEAP32[$pFile>>2] = $8; - $9 = HEAP32[$pFile>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - $21 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($21|0); - } - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$pFile>>2]|0; - $14 = HEAP32[$3>>2]|0; - $15 = HEAP32[$4>>2]|0; - $16 = (_sqlite3OsOpen($11,$12,$13,$14,$15)|0); - HEAP32[$rc>>2] = $16; - $17 = HEAP32[$rc>>2]|0; - $18 = ($17|0)!=(0); - $19 = HEAP32[$pFile>>2]|0; - if ($18) { - _sqlite3_free($19); - $21 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($21|0); - } else { - $20 = HEAP32[$2>>2]|0; - HEAP32[$20>>2] = $19; - $21 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($21|0); - } - return 0|0; -} -function _vdbeSorterMerge($pCsr,$p1,$p2,$ppOut) { - $pCsr = $pCsr|0; - $p1 = $p1|0; - $p2 = $p2|0; - $ppOut = $ppOut|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pFinal = 0, $pVal2 = 0, $pp = 0, $res = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $pFinal = sp + 12|0; - $pp = sp + 8|0; - $pVal2 = sp + 4|0; - $res = sp; - HEAP32[$0>>2] = $pCsr; - HEAP32[$1>>2] = $p1; - HEAP32[$2>>2] = $p2; - HEAP32[$3>>2] = $ppOut; - HEAP32[$pFinal>>2] = 0; - HEAP32[$pp>>2] = $pFinal; - $4 = HEAP32[$2>>2]|0; - $5 = ($4|0)!=(0|0); - if ($5) { - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = $7; - } else { - $8 = 0; - } - HEAP32[$pVal2>>2] = $8; - while(1) { - $9 = HEAP32[$1>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - break; - } - $11 = HEAP32[$2>>2]|0; - $12 = ($11|0)!=(0|0); - if (!($12)) { - break; - } - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 4|0); - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$pVal2>>2]|0; - $20 = HEAP32[$2>>2]|0; - $21 = (($20) + 4|0); - $22 = HEAP32[$21>>2]|0; - _vdbeSorterCompare($13,0,$15,$18,$19,$22,$res); - $23 = HEAP32[$res>>2]|0; - $24 = ($23|0)<=(0); - if ($24) { - $25 = HEAP32[$1>>2]|0; - $26 = HEAP32[$pp>>2]|0; - HEAP32[$26>>2] = $25; - $27 = HEAP32[$1>>2]|0; - $28 = (($27) + 8|0); - HEAP32[$pp>>2] = $28; - $29 = HEAP32[$1>>2]|0; - $30 = (($29) + 8|0); - $31 = HEAP32[$30>>2]|0; - HEAP32[$1>>2] = $31; - HEAP32[$pVal2>>2] = 0; - continue; - } - $32 = HEAP32[$2>>2]|0; - $33 = HEAP32[$pp>>2]|0; - HEAP32[$33>>2] = $32; - $34 = HEAP32[$2>>2]|0; - $35 = (($34) + 8|0); - HEAP32[$pp>>2] = $35; - $36 = HEAP32[$2>>2]|0; - $37 = (($36) + 8|0); - $38 = HEAP32[$37>>2]|0; - HEAP32[$2>>2] = $38; - $39 = HEAP32[$2>>2]|0; - $40 = ($39|0)==(0|0); - if ($40) { - break; - } - $41 = HEAP32[$2>>2]|0; - $42 = HEAP32[$41>>2]|0; - HEAP32[$pVal2>>2] = $42; - } - $43 = HEAP32[$1>>2]|0; - $44 = ($43|0)!=(0|0); - $45 = HEAP32[$1>>2]|0; - $46 = HEAP32[$2>>2]|0; - $47 = $44 ? $45 : $46; - $48 = HEAP32[$pp>>2]|0; - HEAP32[$48>>2] = $47; - $49 = HEAP32[$pFinal>>2]|0; - $50 = HEAP32[$3>>2]|0; - HEAP32[$50>>2] = $49; - STACKTOP = sp;return; -} -function _vdbeSorterCompare($pCsr,$nIgnore,$pKey1,$nKey1,$pKey2,$nKey2,$pRes) { - $pCsr = $pCsr|0; - $nIgnore = $nIgnore|0; - $pKey1 = $pKey1|0; - $nKey1 = $nKey1|0; - $pKey2 = $pKey2|0; - $nKey2 = $nKey2|0; - $pRes = $pRes|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pKeyInfo = 0, $pSorter = 0; - var $r2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $4 = sp + 24|0; - $5 = sp + 20|0; - $6 = sp + 16|0; - $pKeyInfo = sp + 12|0; - $pSorter = sp + 8|0; - $r2 = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $pCsr; - HEAP32[$1>>2] = $nIgnore; - HEAP32[$2>>2] = $pKey1; - HEAP32[$3>>2] = $nKey1; - HEAP32[$4>>2] = $pKey2; - HEAP32[$5>>2] = $nKey2; - HEAP32[$6>>2] = $pRes; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 8|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$pKeyInfo>>2] = $9; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 64|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$pSorter>>2] = $12; - $13 = HEAP32[$pSorter>>2]|0; - $14 = (($13) + 52|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$r2>>2] = $15; - $16 = HEAP32[$4>>2]|0; - $17 = ($16|0)!=(0|0); - if ($17) { - $18 = HEAP32[$pKeyInfo>>2]|0; - $19 = HEAP32[$5>>2]|0; - $20 = HEAP32[$4>>2]|0; - $21 = HEAP32[$r2>>2]|0; - _sqlite3VdbeRecordUnpack($18,$19,$20,$21); - } - $22 = HEAP32[$1>>2]|0; - $23 = ($22|0)!=(0); - L4: do { - if ($23) { - $24 = HEAP32[$pKeyInfo>>2]|0; - $25 = (($24) + 6|0); - $26 = HEAP16[$25>>1]|0; - $27 = $26&65535; - $28 = HEAP32[$1>>2]|0; - $29 = (($27) - ($28))|0; - $30 = $29&65535; - $31 = HEAP32[$r2>>2]|0; - $32 = (($31) + 4|0); - HEAP16[$32>>1] = $30; - HEAP32[$i>>2] = 0; - while(1) { - $33 = HEAP32[$i>>2]|0; - $34 = HEAP32[$r2>>2]|0; - $35 = (($34) + 4|0); - $36 = HEAP16[$35>>1]|0; - $37 = $36&65535; - $38 = ($33|0)<($37|0); - if (!($38)) { - break L4; - } - $39 = HEAP32[$i>>2]|0; - $40 = HEAP32[$r2>>2]|0; - $41 = (($40) + 8|0); - $42 = HEAP32[$41>>2]|0; - $43 = (($42) + (($39*40)|0)|0); - $44 = (($43) + 28|0); - $45 = HEAP16[$44>>1]|0; - $46 = $45&65535; - $47 = $46 & 1; - $48 = ($47|0)!=(0); - if ($48) { - break; - } - $50 = HEAP32[$i>>2]|0; - $51 = (($50) + 1)|0; - HEAP32[$i>>2] = $51; - } - $49 = HEAP32[$6>>2]|0; - HEAP32[$49>>2] = -1; - STACKTOP = sp;return; - } - } while(0); - $52 = HEAP32[$3>>2]|0; - $53 = HEAP32[$2>>2]|0; - $54 = HEAP32[$r2>>2]|0; - $55 = (_sqlite3VdbeRecordCompare($52,$53,$54,0)|0); - $56 = HEAP32[$6>>2]|0; - HEAP32[$56>>2] = $55; - STACKTOP = sp;return; -} -function _vdbeSorterIterNext($db,$pIter) { - $db = $db|0; - $pIter = $pIter|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nRec = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $rc = sp + 8|0; - $nRec = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $pIter; - $3 = $nRec; - $4 = $3; - HEAP32[$4>>2] = 0; - $5 = (($3) + 4)|0; - $6 = $5; - HEAP32[$6>>2] = 0; - $7 = HEAP32[$2>>2]|0; - $8 = $7; - $9 = $8; - $10 = HEAP32[$9>>2]|0; - $11 = (($8) + 4)|0; - $12 = $11; - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = (($14) + 8|0); - $16 = $15; - $17 = $16; - $18 = HEAP32[$17>>2]|0; - $19 = (($16) + 4)|0; - $20 = $19; - $21 = HEAP32[$20>>2]|0; - $22 = ($13|0)>($21|0); - $23 = ($13|0)==($21|0); - $24 = ($10>>>0)>=($18>>>0); - $25 = $23 & $24; - $26 = $22 | $25; - $27 = HEAP32[$1>>2]|0; - $28 = HEAP32[$2>>2]|0; - if ($26) { - _vdbeSorterIterZero($27,$28); - HEAP32[$0>>2] = 0; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); - } - $29 = (_vdbeSorterIterVarint($27,$28,$nRec)|0); - HEAP32[$rc>>2] = $29; - $30 = HEAP32[$rc>>2]|0; - $31 = ($30|0)==(0); - if ($31) { - $32 = $nRec; - $33 = $32; - $34 = HEAP32[$33>>2]|0; - $35 = (($32) + 4)|0; - $36 = $35; - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$2>>2]|0; - $39 = (($38) + 20|0); - HEAP32[$39>>2] = $34; - $40 = HEAP32[$1>>2]|0; - $41 = HEAP32[$2>>2]|0; - $42 = $nRec; - $43 = $42; - $44 = HEAP32[$43>>2]|0; - $45 = (($42) + 4)|0; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = HEAP32[$2>>2]|0; - $49 = (($48) + 32|0); - $50 = (_vdbeSorterIterRead($40,$41,$44,$49)|0); - HEAP32[$rc>>2] = $50; - } - $51 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $51; - $52 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($52|0); -} -function _vdbeSorterIterVarint($db,$p,$pnOut) { - $db = $db|0; - $p = $p|0; - $pnOut = $pnOut|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $aVarint = 0, $i = 0, $iBuf = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $iBuf = sp + 12|0; - $aVarint = sp + 32|0; - $a = sp + 8|0; - $i = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $p; - HEAP32[$3>>2] = $pnOut; - $4 = HEAP32[$2>>2]|0; - $5 = $4; - $6 = $5; - $7 = HEAP32[$6>>2]|0; - $8 = (($5) + 4)|0; - $9 = $8; - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 40|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)<(0); - $15 = $14 << 31 >> 31; - $16 = (___remdi3(($7|0),($10|0),($13|0),($15|0))|0); - $17 = tempRet0; - HEAP32[$iBuf>>2] = $16; - $18 = HEAP32[$iBuf>>2]|0; - $19 = ($18|0)!=(0); - if ($19) { - $20 = HEAP32[$2>>2]|0; - $21 = (($20) + 40|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$iBuf>>2]|0; - $24 = (($22) - ($23))|0; - $25 = ($24|0)>=(9); - if ($25) { - $26 = HEAP32[$iBuf>>2]|0; - $27 = HEAP32[$2>>2]|0; - $28 = (($27) + 36|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + ($26)|0); - $31 = HEAP32[$3>>2]|0; - $32 = (_sqlite3GetVarint($30,$31)|0); - $33 = $32&255; - $34 = HEAP32[$2>>2]|0; - $35 = $34; - $36 = $35; - $37 = HEAP32[$36>>2]|0; - $38 = (($35) + 4)|0; - $39 = $38; - $40 = HEAP32[$39>>2]|0; - $41 = (_i64Add(($37|0),($40|0),($33|0),0)|0); - $42 = tempRet0; - $43 = $34; - $44 = $43; - HEAP32[$44>>2] = $41; - $45 = (($43) + 4)|0; - $46 = $45; - HEAP32[$46>>2] = $42; - } else { - label = 4; - } - } else { - label = 4; - } - do { - if ((label|0) == 4) { - HEAP32[$i>>2] = 0; - while(1) { - $47 = HEAP32[$1>>2]|0; - $48 = HEAP32[$2>>2]|0; - $49 = (_vdbeSorterIterRead($47,$48,1,$a)|0); - HEAP32[$rc>>2] = $49; - $50 = HEAP32[$rc>>2]|0; - $51 = ($50|0)!=(0); - if ($51) { - break; - } - $53 = HEAP32[$a>>2]|0; - $54 = HEAP8[$53>>0]|0; - $55 = HEAP32[$i>>2]|0; - $56 = (($55) + 1)|0; - HEAP32[$i>>2] = $56; - $57 = $55 & 15; - $58 = (($aVarint) + ($57)|0); - HEAP8[$58>>0] = $54; - $59 = HEAP32[$a>>2]|0; - $60 = HEAP8[$59>>0]|0; - $61 = $60&255; - $62 = $61 & 128; - $63 = ($62|0)!=(0); - if (!($63)) { - label = 8; - break; - } - } - if ((label|0) == 8) { - $64 = HEAP32[$3>>2]|0; - (_sqlite3GetVarint($aVarint,$64)|0); - break; - } - $52 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $52; - $65 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($65|0); - } - } while(0); - HEAP32[$0>>2] = 0; - $65 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($65|0); -} -function _vdbeSorterIterRead($db,$p,$nByte,$ppOut) { - $db = $db|0; - $p = $p|0; - $nByte = $nByte|0; - $ppOut = $ppOut|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; - var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; - var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; - var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; - var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aNext = 0, $iBuf = 0, $nAvail = 0, $nCopy = 0, $nNew = 0, $nRead = 0, $nRem = 0, $rc = 0, $rc1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 52|0; - $1 = sp + 48|0; - $2 = sp + 44|0; - $3 = sp + 40|0; - $4 = sp + 36|0; - $iBuf = sp + 32|0; - $nAvail = sp + 28|0; - $nRead = sp + 24|0; - $rc = sp + 20|0; - $nRem = sp + 16|0; - $nNew = sp + 12|0; - $rc1 = sp + 8|0; - $nCopy = sp + 4|0; - $aNext = sp; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $p; - HEAP32[$3>>2] = $nByte; - HEAP32[$4>>2] = $ppOut; - $5 = HEAP32[$2>>2]|0; - $6 = $5; - $7 = $6; - $8 = HEAP32[$7>>2]|0; - $9 = (($6) + 4)|0; - $10 = $9; - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$2>>2]|0; - $13 = (($12) + 40|0); - $14 = HEAP32[$13>>2]|0; - $15 = ($14|0)<(0); - $16 = $15 << 31 >> 31; - $17 = (___remdi3(($8|0),($11|0),($14|0),($16|0))|0); - $18 = tempRet0; - HEAP32[$iBuf>>2] = $17; - $19 = HEAP32[$iBuf>>2]|0; - $20 = ($19|0)==(0); - if ($20) { - $21 = HEAP32[$2>>2]|0; - $22 = (($21) + 8|0); - $23 = $22; - $24 = $23; - $25 = HEAP32[$24>>2]|0; - $26 = (($23) + 4)|0; - $27 = $26; - $28 = HEAP32[$27>>2]|0; - $29 = HEAP32[$2>>2]|0; - $30 = $29; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - $33 = (($30) + 4)|0; - $34 = $33; - $35 = HEAP32[$34>>2]|0; - $36 = (_i64Subtract(($25|0),($28|0),($32|0),($35|0))|0); - $37 = tempRet0; - $38 = HEAP32[$2>>2]|0; - $39 = (($38) + 40|0); - $40 = HEAP32[$39>>2]|0; - $41 = ($40|0)<(0); - $42 = $41 << 31 >> 31; - $43 = ($37|0)>($42|0); - $44 = ($37|0)==($42|0); - $45 = ($36>>>0)>($40>>>0); - $46 = $44 & $45; - $47 = $43 | $46; - $48 = HEAP32[$2>>2]|0; - if ($47) { - $49 = (($48) + 40|0); - $50 = HEAP32[$49>>2]|0; - HEAP32[$nRead>>2] = $50; - } else { - $51 = (($48) + 8|0); - $52 = $51; - $53 = $52; - $54 = HEAP32[$53>>2]|0; - $55 = (($52) + 4)|0; - $56 = $55; - $57 = HEAP32[$56>>2]|0; - $58 = HEAP32[$2>>2]|0; - $59 = $58; - $60 = $59; - $61 = HEAP32[$60>>2]|0; - $62 = (($59) + 4)|0; - $63 = $62; - $64 = HEAP32[$63>>2]|0; - $65 = (_i64Subtract(($54|0),($57|0),($61|0),($64|0))|0); - $66 = tempRet0; - HEAP32[$nRead>>2] = $65; - } - $67 = HEAP32[$2>>2]|0; - $68 = (($67) + 24|0); - $69 = HEAP32[$68>>2]|0; - $70 = HEAP32[$2>>2]|0; - $71 = (($70) + 36|0); - $72 = HEAP32[$71>>2]|0; - $73 = HEAP32[$nRead>>2]|0; - $74 = HEAP32[$2>>2]|0; - $75 = $74; - $76 = $75; - $77 = HEAP32[$76>>2]|0; - $78 = (($75) + 4)|0; - $79 = $78; - $80 = HEAP32[$79>>2]|0; - $81 = (_sqlite3OsRead($69,$72,$73,$77,$80)|0); - HEAP32[$rc>>2] = $81; - $82 = HEAP32[$rc>>2]|0; - $83 = ($82|0)!=(0); - if ($83) { - $84 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $84; - $206 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($206|0); - } - } - $85 = HEAP32[$2>>2]|0; - $86 = (($85) + 40|0); - $87 = HEAP32[$86>>2]|0; - $88 = HEAP32[$iBuf>>2]|0; - $89 = (($87) - ($88))|0; - HEAP32[$nAvail>>2] = $89; - $90 = HEAP32[$3>>2]|0; - $91 = HEAP32[$nAvail>>2]|0; - $92 = ($90|0)<=($91|0); - do { - if ($92) { - $93 = HEAP32[$iBuf>>2]|0; - $94 = HEAP32[$2>>2]|0; - $95 = (($94) + 36|0); - $96 = HEAP32[$95>>2]|0; - $97 = (($96) + ($93)|0); - $98 = HEAP32[$4>>2]|0; - HEAP32[$98>>2] = $97; - $99 = HEAP32[$3>>2]|0; - $100 = ($99|0)<(0); - $101 = $100 << 31 >> 31; - $102 = HEAP32[$2>>2]|0; - $103 = $102; - $104 = $103; - $105 = HEAP32[$104>>2]|0; - $106 = (($103) + 4)|0; - $107 = $106; - $108 = HEAP32[$107>>2]|0; - $109 = (_i64Add(($105|0),($108|0),($99|0),($101|0))|0); - $110 = tempRet0; - $111 = $102; - $112 = $111; - HEAP32[$112>>2] = $109; - $113 = (($111) + 4)|0; - $114 = $113; - HEAP32[$114>>2] = $110; - } else { - $115 = HEAP32[$2>>2]|0; - $116 = (($115) + 16|0); - $117 = HEAP32[$116>>2]|0; - $118 = HEAP32[$3>>2]|0; - $119 = ($117|0)<($118|0); - do { - if ($119) { - $120 = HEAP32[$2>>2]|0; - $121 = (($120) + 16|0); - $122 = HEAP32[$121>>2]|0; - $123 = $122<<1; - HEAP32[$nNew>>2] = $123; - while(1) { - $124 = HEAP32[$3>>2]|0; - $125 = HEAP32[$nNew>>2]|0; - $126 = ($124|0)>($125|0); - if (!($126)) { - break; - } - $127 = HEAP32[$nNew>>2]|0; - $128 = $127<<1; - HEAP32[$nNew>>2] = $128; - } - $129 = HEAP32[$1>>2]|0; - $130 = HEAP32[$2>>2]|0; - $131 = (($130) + 28|0); - $132 = HEAP32[$131>>2]|0; - $133 = HEAP32[$nNew>>2]|0; - $134 = (_sqlite3DbReallocOrFree($129,$132,$133)|0); - $135 = HEAP32[$2>>2]|0; - $136 = (($135) + 28|0); - HEAP32[$136>>2] = $134; - $137 = HEAP32[$2>>2]|0; - $138 = (($137) + 28|0); - $139 = HEAP32[$138>>2]|0; - $140 = ($139|0)!=(0|0); - if ($140) { - $141 = HEAP32[$nNew>>2]|0; - $142 = HEAP32[$2>>2]|0; - $143 = (($142) + 16|0); - HEAP32[$143>>2] = $141; - break; - } - HEAP32[$0>>2] = 7; - $206 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($206|0); - } - } while(0); - $144 = HEAP32[$2>>2]|0; - $145 = (($144) + 28|0); - $146 = HEAP32[$145>>2]|0; - $147 = HEAP32[$iBuf>>2]|0; - $148 = HEAP32[$2>>2]|0; - $149 = (($148) + 36|0); - $150 = HEAP32[$149>>2]|0; - $151 = (($150) + ($147)|0); - $152 = HEAP32[$nAvail>>2]|0; - _memcpy(($146|0),($151|0),($152|0))|0; - $153 = HEAP32[$nAvail>>2]|0; - $154 = ($153|0)<(0); - $155 = $154 << 31 >> 31; - $156 = HEAP32[$2>>2]|0; - $157 = $156; - $158 = $157; - $159 = HEAP32[$158>>2]|0; - $160 = (($157) + 4)|0; - $161 = $160; - $162 = HEAP32[$161>>2]|0; - $163 = (_i64Add(($159|0),($162|0),($153|0),($155|0))|0); - $164 = tempRet0; - $165 = $156; - $166 = $165; - HEAP32[$166>>2] = $163; - $167 = (($165) + 4)|0; - $168 = $167; - HEAP32[$168>>2] = $164; - $169 = HEAP32[$3>>2]|0; - $170 = HEAP32[$nAvail>>2]|0; - $171 = (($169) - ($170))|0; - HEAP32[$nRem>>2] = $171; - while(1) { - $172 = HEAP32[$nRem>>2]|0; - $173 = ($172|0)>(0); - if (!($173)) { - label = 23; - break; - } - $174 = HEAP32[$nRem>>2]|0; - HEAP32[$nCopy>>2] = $174; - $175 = HEAP32[$nRem>>2]|0; - $176 = HEAP32[$2>>2]|0; - $177 = (($176) + 40|0); - $178 = HEAP32[$177>>2]|0; - $179 = ($175|0)>($178|0); - if ($179) { - $180 = HEAP32[$2>>2]|0; - $181 = (($180) + 40|0); - $182 = HEAP32[$181>>2]|0; - HEAP32[$nCopy>>2] = $182; - } - $183 = HEAP32[$1>>2]|0; - $184 = HEAP32[$2>>2]|0; - $185 = HEAP32[$nCopy>>2]|0; - $186 = (_vdbeSorterIterRead($183,$184,$185,$aNext)|0); - HEAP32[$rc1>>2] = $186; - $187 = HEAP32[$rc1>>2]|0; - $188 = ($187|0)!=(0); - if ($188) { - break; - } - $190 = HEAP32[$3>>2]|0; - $191 = HEAP32[$nRem>>2]|0; - $192 = (($190) - ($191))|0; - $193 = HEAP32[$2>>2]|0; - $194 = (($193) + 28|0); - $195 = HEAP32[$194>>2]|0; - $196 = (($195) + ($192)|0); - $197 = HEAP32[$aNext>>2]|0; - $198 = HEAP32[$nCopy>>2]|0; - _memcpy(($196|0),($197|0),($198|0))|0; - $199 = HEAP32[$nCopy>>2]|0; - $200 = HEAP32[$nRem>>2]|0; - $201 = (($200) - ($199))|0; - HEAP32[$nRem>>2] = $201; - } - if ((label|0) == 23) { - $202 = HEAP32[$2>>2]|0; - $203 = (($202) + 28|0); - $204 = HEAP32[$203>>2]|0; - $205 = HEAP32[$4>>2]|0; - HEAP32[$205>>2] = $204; - break; - } - $189 = HEAP32[$rc1>>2]|0; - HEAP32[$0>>2] = $189; - $206 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($206|0); - } - } while(0); - HEAP32[$0>>2] = 0; - $206 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($206|0); -} -function _vdbeSorterInitMerge($db,$pCsr,$pnByte) { - $db = $db|0; - $pCsr = $pCsr|0; - $pnByte = $pnByte|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $i = 0, $nByte = 0, $pIter = 0, $pSorter = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $pSorter = sp + 20|0; - $rc = sp + 16|0; - $i = sp + 12|0; - $nByte = sp; - $pIter = sp + 8|0; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pCsr; - HEAP32[$2>>2] = $pnByte; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 64|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pSorter>>2] = $5; - HEAP32[$rc>>2] = 0; - $6 = $nByte; - $7 = $6; - HEAP32[$7>>2] = 0; - $8 = (($6) + 4)|0; - $9 = $8; - HEAP32[$9>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $10 = HEAP32[$i>>2]|0; - $11 = ($10|0)<(16); - if (!($11)) { - break; - } - $12 = HEAP32[$i>>2]|0; - $13 = HEAP32[$pSorter>>2]|0; - $14 = (($13) + 36|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + (($12*48)|0)|0); - HEAP32[$pIter>>2] = $16; - $17 = HEAP32[$0>>2]|0; - $18 = HEAP32[$pSorter>>2]|0; - $19 = HEAP32[$pSorter>>2]|0; - $20 = (($19) + 8|0); - $21 = $20; - $22 = $21; - $23 = HEAP32[$22>>2]|0; - $24 = (($21) + 4)|0; - $25 = $24; - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$pIter>>2]|0; - $28 = (_vdbeSorterIterInit($17,$18,$23,$26,$27,$nByte)|0); - HEAP32[$rc>>2] = $28; - $29 = HEAP32[$pIter>>2]|0; - $30 = (($29) + 8|0); - $31 = $30; - $32 = $31; - $33 = HEAP32[$32>>2]|0; - $34 = (($31) + 4)|0; - $35 = $34; - $36 = HEAP32[$35>>2]|0; - $37 = HEAP32[$pSorter>>2]|0; - $38 = (($37) + 8|0); - $39 = $38; - $40 = $39; - HEAP32[$40>>2] = $33; - $41 = (($39) + 4)|0; - $42 = $41; - HEAP32[$42>>2] = $36; - $43 = HEAP32[$rc>>2]|0; - $44 = ($43|0)!=(0); - if ($44) { - break; - } - $45 = HEAP32[$pSorter>>2]|0; - $46 = (($45) + 8|0); - $47 = $46; - $48 = $47; - $49 = HEAP32[$48>>2]|0; - $50 = (($47) + 4)|0; - $51 = $50; - $52 = HEAP32[$51>>2]|0; - $53 = HEAP32[$pSorter>>2]|0; - $54 = $53; - $55 = $54; - $56 = HEAP32[$55>>2]|0; - $57 = (($54) + 4)|0; - $58 = $57; - $59 = HEAP32[$58>>2]|0; - $60 = ($52|0)>($59|0); - $61 = ($52|0)==($59|0); - $62 = ($49>>>0)>=($56>>>0); - $63 = $61 & $62; - $64 = $60 | $63; - if ($64) { - break; - } - $65 = HEAP32[$i>>2]|0; - $66 = (($65) + 1)|0; - HEAP32[$i>>2] = $66; - } - $67 = HEAP32[$pSorter>>2]|0; - $68 = (($67) + 20|0); - $69 = HEAP32[$68>>2]|0; - $70 = (($69) - 1)|0; - HEAP32[$i>>2] = $70; - while(1) { - $71 = HEAP32[$rc>>2]|0; - $72 = ($71|0)==(0); - if (!($72)) { - label = 10; - break; - } - $73 = HEAP32[$i>>2]|0; - $74 = ($73|0)>(0); - if (!($74)) { - label = 10; - break; - } - $75 = HEAP32[$1>>2]|0; - $76 = HEAP32[$i>>2]|0; - $77 = (_vdbeSorterDoCompare($75,$76)|0); - HEAP32[$rc>>2] = $77; - $78 = HEAP32[$i>>2]|0; - $79 = (($78) + -1)|0; - HEAP32[$i>>2] = $79; - } - if ((label|0) == 10) { - $80 = $nByte; - $81 = $80; - $82 = HEAP32[$81>>2]|0; - $83 = (($80) + 4)|0; - $84 = $83; - $85 = HEAP32[$84>>2]|0; - $86 = HEAP32[$2>>2]|0; - $87 = $86; - $88 = $87; - HEAP32[$88>>2] = $82; - $89 = (($87) + 4)|0; - $90 = $89; - HEAP32[$90>>2] = $85; - $91 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($91|0); - } - return 0|0; -} -function _vdbeSorterIterInit($db,$pSorter,$0,$1,$pIter,$pnByte) { - $db = $db|0; - $pSorter = $pSorter|0; - $0 = $0|0; - $1 = $1|0; - $pIter = $pIter|0; - $pnByte = $pnByte|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; - var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; - var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; - var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $19 = 0, $2 = 0, $20 = 0; - var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; - var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iBuf = 0, $nBuf = 0, $nByte = 0, $nRead = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $2 = sp + 44|0; - $3 = sp + 40|0; - $4 = sp + 8|0; - $5 = sp + 36|0; - $6 = sp + 32|0; - $rc = sp + 28|0; - $nBuf = sp + 24|0; - $iBuf = sp + 20|0; - $nRead = sp + 16|0; - $nByte = sp; - HEAP32[$2>>2] = $db; - HEAP32[$3>>2] = $pSorter; - $7 = $4; - $8 = $7; - HEAP32[$8>>2] = $0; - $9 = (($7) + 4)|0; - $10 = $9; - HEAP32[$10>>2] = $1; - HEAP32[$5>>2] = $pIter; - HEAP32[$6>>2] = $pnByte; - HEAP32[$rc>>2] = 0; - $11 = HEAP32[$2>>2]|0; - $12 = (($11) + 16|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - $16 = (_sqlite3BtreeGetPageSize($15)|0); - HEAP32[$nBuf>>2] = $16; - $17 = HEAP32[$3>>2]|0; - $18 = (($17) + 44|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$5>>2]|0; - $21 = (($20) + 24|0); - HEAP32[$21>>2] = $19; - $22 = $4; - $23 = $22; - $24 = HEAP32[$23>>2]|0; - $25 = (($22) + 4)|0; - $26 = $25; - $27 = HEAP32[$26>>2]|0; - $28 = HEAP32[$5>>2]|0; - $29 = $28; - $30 = $29; - HEAP32[$30>>2] = $24; - $31 = (($29) + 4)|0; - $32 = $31; - HEAP32[$32>>2] = $27; - $33 = HEAP32[$5>>2]|0; - $34 = (($33) + 16|0); - HEAP32[$34>>2] = 128; - $35 = HEAP32[$2>>2]|0; - $36 = HEAP32[$5>>2]|0; - $37 = (($36) + 16|0); - $38 = HEAP32[$37>>2]|0; - $39 = (_sqlite3DbMallocRaw($35,$38)|0); - $40 = HEAP32[$5>>2]|0; - $41 = (($40) + 28|0); - HEAP32[$41>>2] = $39; - $42 = HEAP32[$nBuf>>2]|0; - $43 = HEAP32[$5>>2]|0; - $44 = (($43) + 40|0); - HEAP32[$44>>2] = $42; - $45 = HEAP32[$2>>2]|0; - $46 = HEAP32[$nBuf>>2]|0; - $47 = (_sqlite3DbMallocRaw($45,$46)|0); - $48 = HEAP32[$5>>2]|0; - $49 = (($48) + 36|0); - HEAP32[$49>>2] = $47; - $50 = HEAP32[$5>>2]|0; - $51 = (($50) + 36|0); - $52 = HEAP32[$51>>2]|0; - $53 = ($52|0)!=(0|0); - if ($53) { - $54 = $4; - $55 = $54; - $56 = HEAP32[$55>>2]|0; - $57 = (($54) + 4)|0; - $58 = $57; - $59 = HEAP32[$58>>2]|0; - $60 = HEAP32[$nBuf>>2]|0; - $61 = ($60|0)<(0); - $62 = $61 << 31 >> 31; - $63 = (___remdi3(($56|0),($59|0),($60|0),($62|0))|0); - $64 = tempRet0; - HEAP32[$iBuf>>2] = $63; - $65 = HEAP32[$iBuf>>2]|0; - $66 = ($65|0)!=(0); - if ($66) { - $67 = HEAP32[$nBuf>>2]|0; - $68 = HEAP32[$iBuf>>2]|0; - $69 = (($67) - ($68))|0; - HEAP32[$nRead>>2] = $69; - $70 = $4; - $71 = $70; - $72 = HEAP32[$71>>2]|0; - $73 = (($70) + 4)|0; - $74 = $73; - $75 = HEAP32[$74>>2]|0; - $76 = HEAP32[$nRead>>2]|0; - $77 = ($76|0)<(0); - $78 = $77 << 31 >> 31; - $79 = (_i64Add(($72|0),($75|0),($76|0),($78|0))|0); - $80 = tempRet0; - $81 = HEAP32[$3>>2]|0; - $82 = $81; - $83 = $82; - $84 = HEAP32[$83>>2]|0; - $85 = (($82) + 4)|0; - $86 = $85; - $87 = HEAP32[$86>>2]|0; - $88 = ($80|0)>($87|0); - $89 = ($80|0)==($87|0); - $90 = ($79>>>0)>($84>>>0); - $91 = $89 & $90; - $92 = $88 | $91; - if ($92) { - $93 = HEAP32[$3>>2]|0; - $94 = $93; - $95 = $94; - $96 = HEAP32[$95>>2]|0; - $97 = (($94) + 4)|0; - $98 = $97; - $99 = HEAP32[$98>>2]|0; - $100 = $4; - $101 = $100; - $102 = HEAP32[$101>>2]|0; - $103 = (($100) + 4)|0; - $104 = $103; - $105 = HEAP32[$104>>2]|0; - $106 = (_i64Subtract(($96|0),($99|0),($102|0),($105|0))|0); - $107 = tempRet0; - HEAP32[$nRead>>2] = $106; - } - $108 = HEAP32[$3>>2]|0; - $109 = (($108) + 44|0); - $110 = HEAP32[$109>>2]|0; - $111 = HEAP32[$iBuf>>2]|0; - $112 = HEAP32[$5>>2]|0; - $113 = (($112) + 36|0); - $114 = HEAP32[$113>>2]|0; - $115 = (($114) + ($111)|0); - $116 = HEAP32[$nRead>>2]|0; - $117 = $4; - $118 = $117; - $119 = HEAP32[$118>>2]|0; - $120 = (($117) + 4)|0; - $121 = $120; - $122 = HEAP32[$121>>2]|0; - $123 = (_sqlite3OsRead($110,$115,$116,$119,$122)|0); - HEAP32[$rc>>2] = $123; - } - $124 = HEAP32[$rc>>2]|0; - $125 = ($124|0)==(0); - if ($125) { - $126 = HEAP32[$3>>2]|0; - $127 = $126; - $128 = $127; - $129 = HEAP32[$128>>2]|0; - $130 = (($127) + 4)|0; - $131 = $130; - $132 = HEAP32[$131>>2]|0; - $133 = HEAP32[$5>>2]|0; - $134 = (($133) + 8|0); - $135 = $134; - $136 = $135; - HEAP32[$136>>2] = $129; - $137 = (($135) + 4)|0; - $138 = $137; - HEAP32[$138>>2] = $132; - $139 = HEAP32[$2>>2]|0; - $140 = HEAP32[$5>>2]|0; - $141 = (_vdbeSorterIterVarint($139,$140,$nByte)|0); - HEAP32[$rc>>2] = $141; - $142 = HEAP32[$5>>2]|0; - $143 = $142; - $144 = $143; - $145 = HEAP32[$144>>2]|0; - $146 = (($143) + 4)|0; - $147 = $146; - $148 = HEAP32[$147>>2]|0; - $149 = $nByte; - $150 = $149; - $151 = HEAP32[$150>>2]|0; - $152 = (($149) + 4)|0; - $153 = $152; - $154 = HEAP32[$153>>2]|0; - $155 = (_i64Add(($145|0),($148|0),($151|0),($154|0))|0); - $156 = tempRet0; - $157 = HEAP32[$5>>2]|0; - $158 = (($157) + 8|0); - $159 = $158; - $160 = $159; - HEAP32[$160>>2] = $155; - $161 = (($159) + 4)|0; - $162 = $161; - HEAP32[$162>>2] = $156; - $163 = $nByte; - $164 = $163; - $165 = HEAP32[$164>>2]|0; - $166 = (($163) + 4)|0; - $167 = $166; - $168 = HEAP32[$167>>2]|0; - $169 = HEAP32[$6>>2]|0; - $170 = $169; - $171 = $170; - $172 = HEAP32[$171>>2]|0; - $173 = (($170) + 4)|0; - $174 = $173; - $175 = HEAP32[$174>>2]|0; - $176 = (_i64Add(($172|0),($175|0),($165|0),($168|0))|0); - $177 = tempRet0; - $178 = $169; - $179 = $178; - HEAP32[$179>>2] = $176; - $180 = (($178) + 4)|0; - $181 = $180; - HEAP32[$181>>2] = $177; - } - } else { - HEAP32[$rc>>2] = 7; - } - $182 = HEAP32[$rc>>2]|0; - $183 = ($182|0)==(0); - if (!($183)) { - $187 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($187|0); - } - $184 = HEAP32[$2>>2]|0; - $185 = HEAP32[$5>>2]|0; - $186 = (_vdbeSorterIterNext($184,$185)|0); - HEAP32[$rc>>2] = $186; - $187 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($187|0); -} -function _vdbeSorterDoCompare($pCsr,$iOut) { - $pCsr = $pCsr|0; - $iOut = $iOut|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $8 = 0, $9 = 0, $i1 = 0, $i2 = 0, $iRes = 0; - var $p1 = 0, $p2 = 0, $pSorter = 0, $res = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $pSorter = sp + 24|0; - $i1 = sp + 20|0; - $i2 = sp + 16|0; - $iRes = sp + 12|0; - $p1 = sp + 8|0; - $p2 = sp + 4|0; - $res = sp; - HEAP32[$0>>2] = $pCsr; - HEAP32[$1>>2] = $iOut; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 64|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pSorter>>2] = $4; - $5 = HEAP32[$1>>2]|0; - $6 = HEAP32[$pSorter>>2]|0; - $7 = (($6) + 20|0); - $8 = HEAP32[$7>>2]|0; - $9 = (($8|0) / 2)&-1; - $10 = ($5|0)>=($9|0); - $11 = HEAP32[$1>>2]|0; - if ($10) { - $12 = HEAP32[$pSorter>>2]|0; - $13 = (($12) + 20|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14|0) / 2)&-1; - $16 = (($11) - ($15))|0; - $17 = $16<<1; - HEAP32[$i1>>2] = $17; - $18 = HEAP32[$i1>>2]|0; - $19 = (($18) + 1)|0; - HEAP32[$i2>>2] = $19; - } else { - $20 = $11<<1; - $21 = HEAP32[$pSorter>>2]|0; - $22 = (($21) + 40|0); - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + ($20<<2)|0); - $25 = HEAP32[$24>>2]|0; - HEAP32[$i1>>2] = $25; - $26 = HEAP32[$1>>2]|0; - $27 = $26<<1; - $28 = (($27) + 1)|0; - $29 = HEAP32[$pSorter>>2]|0; - $30 = (($29) + 40|0); - $31 = HEAP32[$30>>2]|0; - $32 = (($31) + ($28<<2)|0); - $33 = HEAP32[$32>>2]|0; - HEAP32[$i2>>2] = $33; - } - $34 = HEAP32[$i1>>2]|0; - $35 = HEAP32[$pSorter>>2]|0; - $36 = (($35) + 36|0); - $37 = HEAP32[$36>>2]|0; - $38 = (($37) + (($34*48)|0)|0); - HEAP32[$p1>>2] = $38; - $39 = HEAP32[$i2>>2]|0; - $40 = HEAP32[$pSorter>>2]|0; - $41 = (($40) + 36|0); - $42 = HEAP32[$41>>2]|0; - $43 = (($42) + (($39*48)|0)|0); - HEAP32[$p2>>2] = $43; - $44 = HEAP32[$p1>>2]|0; - $45 = (($44) + 24|0); - $46 = HEAP32[$45>>2]|0; - $47 = ($46|0)==(0|0); - do { - if ($47) { - $48 = HEAP32[$i2>>2]|0; - HEAP32[$iRes>>2] = $48; - } else { - $49 = HEAP32[$p2>>2]|0; - $50 = (($49) + 24|0); - $51 = HEAP32[$50>>2]|0; - $52 = ($51|0)==(0|0); - if ($52) { - $53 = HEAP32[$i1>>2]|0; - HEAP32[$iRes>>2] = $53; - break; - } - $54 = HEAP32[$0>>2]|0; - $55 = HEAP32[$p1>>2]|0; - $56 = (($55) + 32|0); - $57 = HEAP32[$56>>2]|0; - $58 = HEAP32[$p1>>2]|0; - $59 = (($58) + 20|0); - $60 = HEAP32[$59>>2]|0; - $61 = HEAP32[$p2>>2]|0; - $62 = (($61) + 32|0); - $63 = HEAP32[$62>>2]|0; - $64 = HEAP32[$p2>>2]|0; - $65 = (($64) + 20|0); - $66 = HEAP32[$65>>2]|0; - _vdbeSorterCompare($54,0,$57,$60,$63,$66,$res); - $67 = HEAP32[$res>>2]|0; - $68 = ($67|0)<=(0); - if ($68) { - $69 = HEAP32[$i1>>2]|0; - HEAP32[$iRes>>2] = $69; - break; - } else { - $70 = HEAP32[$i2>>2]|0; - HEAP32[$iRes>>2] = $70; - break; - } - } - } while(0); - $71 = HEAP32[$iRes>>2]|0; - $72 = HEAP32[$1>>2]|0; - $73 = HEAP32[$pSorter>>2]|0; - $74 = (($73) + 40|0); - $75 = HEAP32[$74>>2]|0; - $76 = (($75) + ($72<<2)|0); - HEAP32[$76>>2] = $71; - STACKTOP = sp;return 0; -} -function _vdbeSorterRowkey($pSorter,$pnKey) { - $pSorter = $pSorter|0; - $pnKey = $pnKey|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pIter = 0, $pKey = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $pKey = sp + 4|0; - $pIter = sp; - HEAP32[$0>>2] = $pSorter; - HEAP32[$1>>2] = $pnKey; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 40|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0|0); - $6 = HEAP32[$0>>2]|0; - if ($5) { - $7 = (($6) + 40|0); - $8 = HEAP32[$7>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 36|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + (($10*48)|0)|0); - HEAP32[$pIter>>2] = $14; - $15 = HEAP32[$pIter>>2]|0; - $16 = (($15) + 20|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$1>>2]|0; - HEAP32[$18>>2] = $17; - $19 = HEAP32[$pIter>>2]|0; - $20 = (($19) + 32|0); - $21 = HEAP32[$20>>2]|0; - HEAP32[$pKey>>2] = $21; - $31 = HEAP32[$pKey>>2]|0; - STACKTOP = sp;return ($31|0); - } else { - $22 = (($6) + 48|0); - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + 4|0); - $25 = HEAP32[$24>>2]|0; - $26 = HEAP32[$1>>2]|0; - HEAP32[$26>>2] = $25; - $27 = HEAP32[$0>>2]|0; - $28 = (($27) + 48|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$29>>2]|0; - HEAP32[$pKey>>2] = $30; - $31 = HEAP32[$pKey>>2]|0; - STACKTOP = sp;return ($31|0); - } - return 0|0; -} -function _dropCell($pPage,$idx,$sz,$pRC) { - $pPage = $pPage|0; - $idx = $idx|0; - $sz = $sz|0; - $pRC = $pRC|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; - var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; - var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; - var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; - var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; - var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $data = 0, $hdr = 0, $pc = 0, $ptr = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $pc = sp + 16|0; - $data = sp + 12|0; - $ptr = sp + 8|0; - $rc = sp + 4|0; - $hdr = sp; - HEAP32[$0>>2] = $pPage; - HEAP32[$1>>2] = $idx; - HEAP32[$2>>2] = $sz; - HEAP32[$3>>2] = $pRC; - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = ($5|0)!=(0); - if ($6) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 56|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$data>>2] = $9; - $10 = HEAP32[$1>>2]|0; - $11 = $10<<1; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 64|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + ($11)|0); - HEAP32[$ptr>>2] = $15; - $16 = HEAP32[$ptr>>2]|0; - $17 = HEAP8[$16>>0]|0; - $18 = $17&255; - $19 = $18 << 8; - $20 = HEAP32[$ptr>>2]|0; - $21 = (($20) + 1|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = $19 | $23; - HEAP32[$pc>>2] = $24; - $25 = HEAP32[$0>>2]|0; - $26 = (($25) + 5|0); - $27 = HEAP8[$26>>0]|0; - $28 = $27&255; - HEAP32[$hdr>>2] = $28; - $29 = HEAP32[$pc>>2]|0; - $30 = HEAP32[$hdr>>2]|0; - $31 = (($30) + 5)|0; - $32 = HEAP32[$data>>2]|0; - $33 = (($32) + ($31)|0); - $34 = HEAP8[$33>>0]|0; - $35 = $34&255; - $36 = $35 << 8; - $37 = HEAP32[$hdr>>2]|0; - $38 = (($37) + 5)|0; - $39 = HEAP32[$data>>2]|0; - $40 = (($39) + ($38)|0); - $41 = (($40) + 1|0); - $42 = HEAP8[$41>>0]|0; - $43 = $42&255; - $44 = $36 | $43; - $45 = ($29>>>0)<($44>>>0); - if (!($45)) { - $46 = HEAP32[$pc>>2]|0; - $47 = HEAP32[$2>>2]|0; - $48 = (($46) + ($47))|0; - $49 = HEAP32[$0>>2]|0; - $50 = (($49) + 52|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + 36|0); - $53 = HEAP32[$52>>2]|0; - $54 = ($48>>>0)>($53>>>0); - if (!($54)) { - $57 = HEAP32[$0>>2]|0; - $58 = HEAP32[$pc>>2]|0; - $59 = HEAP32[$2>>2]|0; - $60 = (_freeSpace($57,$58,$59)|0); - HEAP32[$rc>>2] = $60; - $61 = HEAP32[$rc>>2]|0; - $62 = ($61|0)!=(0); - if ($62) { - $63 = HEAP32[$rc>>2]|0; - $64 = HEAP32[$3>>2]|0; - HEAP32[$64>>2] = $63; - STACKTOP = sp;return; - } else { - $65 = HEAP32[$0>>2]|0; - $66 = (($65) + 16|0); - $67 = HEAP16[$66>>1]|0; - $68 = (($67) + -1)<<16>>16; - HEAP16[$66>>1] = $68; - $69 = HEAP32[$ptr>>2]|0; - $70 = HEAP32[$ptr>>2]|0; - $71 = (($70) + 2|0); - $72 = HEAP32[$0>>2]|0; - $73 = (($72) + 16|0); - $74 = HEAP16[$73>>1]|0; - $75 = $74&65535; - $76 = HEAP32[$1>>2]|0; - $77 = (($75) - ($76))|0; - $78 = $77<<1; - _memmove(($69|0),($71|0),($78|0))|0; - $79 = HEAP32[$0>>2]|0; - $80 = (($79) + 16|0); - $81 = HEAP16[$80>>1]|0; - $82 = $81&65535; - $83 = $82 >> 8; - $84 = $83&255; - $85 = HEAP32[$hdr>>2]|0; - $86 = (($85) + 3)|0; - $87 = HEAP32[$data>>2]|0; - $88 = (($87) + ($86)|0); - HEAP8[$88>>0] = $84; - $89 = HEAP32[$0>>2]|0; - $90 = (($89) + 16|0); - $91 = HEAP16[$90>>1]|0; - $92 = $91&255; - $93 = HEAP32[$hdr>>2]|0; - $94 = (($93) + 3)|0; - $95 = HEAP32[$data>>2]|0; - $96 = (($95) + ($94)|0); - $97 = (($96) + 1|0); - HEAP8[$97>>0] = $92; - $98 = HEAP32[$0>>2]|0; - $99 = (($98) + 14|0); - $100 = HEAP16[$99>>1]|0; - $101 = $100&65535; - $102 = (($101) + 2)|0; - $103 = $102&65535; - HEAP16[$99>>1] = $103; - STACKTOP = sp;return; - } - } - } - $55 = (_sqlite3CorruptError(56847)|0); - $56 = HEAP32[$3>>2]|0; - HEAP32[$56>>2] = $55; - STACKTOP = sp;return; -} -function _allocateTempSpace($pBt) { - $pBt = $pBt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pBt; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 80|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - if ($4) { - STACKTOP = sp;return; - } - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 32|0); - $7 = HEAP32[$6>>2]|0; - $8 = (_sqlite3PageMalloc($7)|0); - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 80|0); - HEAP32[$10>>2] = $8; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 80|0); - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)!=(0|0); - if (!($14)) { - STACKTOP = sp;return; - } - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 80|0); - $17 = HEAP32[$16>>2]|0; - ;HEAP8[$17+0>>0]=0|0;HEAP8[$17+1>>0]=0|0;HEAP8[$17+2>>0]=0|0;HEAP8[$17+3>>0]=0|0; - STACKTOP = sp;return; -} -function _insertCell($pPage,$i,$pCell,$sz,$pTemp,$iChild,$pRC) { - $pPage = $pPage|0; - $i = $i|0; - $pCell = $pCell|0; - $sz = $sz|0; - $pTemp = $pTemp|0; - $iChild = $iChild|0; - $pRC = $pRC|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; - var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; - var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; - var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; - var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cellOffset = 0, $data = 0, $end = 0; - var $idx = 0, $ins = 0, $j = 0, $nSkip = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 56|0; - $1 = sp + 52|0; - $2 = sp + 48|0; - $3 = sp + 44|0; - $4 = sp + 40|0; - $5 = sp + 36|0; - $6 = sp + 32|0; - $idx = sp + 28|0; - $j = sp + 24|0; - $end = sp + 20|0; - $ins = sp + 16|0; - $cellOffset = sp + 12|0; - $data = sp + 8|0; - $nSkip = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $pPage; - HEAP32[$1>>2] = $i; - HEAP32[$2>>2] = $pCell; - HEAP32[$3>>2] = $sz; - HEAP32[$4>>2] = $pTemp; - HEAP32[$5>>2] = $iChild; - HEAP32[$6>>2] = $pRC; - HEAP32[$idx>>2] = 0; - $7 = HEAP32[$5>>2]|0; - $8 = ($7|0)!=(0); - $9 = $8 ? 4 : 0; - HEAP32[$nSkip>>2] = $9; - $10 = HEAP32[$6>>2]|0; - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)!=(0); - if ($12) { - STACKTOP = sp;return; - } - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 1|0); - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - $17 = ($16|0)!=(0); - if (!($17)) { - $18 = HEAP32[$3>>2]|0; - $19 = (($18) + 2)|0; - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 14|0); - $22 = HEAP16[$21>>1]|0; - $23 = $22&65535; - $24 = ($19|0)>($23|0); - if (!($24)) { - $57 = HEAP32[$0>>2]|0; - $58 = (($57) + 68|0); - $59 = HEAP32[$58>>2]|0; - $60 = (_sqlite3PagerWrite($59)|0); - HEAP32[$rc>>2] = $60; - $61 = HEAP32[$rc>>2]|0; - $62 = ($61|0)!=(0); - if ($62) { - $63 = HEAP32[$rc>>2]|0; - $64 = HEAP32[$6>>2]|0; - HEAP32[$64>>2] = $63; - STACKTOP = sp;return; - } - $65 = HEAP32[$0>>2]|0; - $66 = (($65) + 56|0); - $67 = HEAP32[$66>>2]|0; - HEAP32[$data>>2] = $67; - $68 = HEAP32[$0>>2]|0; - $69 = (($68) + 12|0); - $70 = HEAP16[$69>>1]|0; - $71 = $70&65535; - HEAP32[$cellOffset>>2] = $71; - $72 = HEAP32[$cellOffset>>2]|0; - $73 = HEAP32[$0>>2]|0; - $74 = (($73) + 16|0); - $75 = HEAP16[$74>>1]|0; - $76 = $75&65535; - $77 = $76<<1; - $78 = (($72) + ($77))|0; - HEAP32[$end>>2] = $78; - $79 = HEAP32[$cellOffset>>2]|0; - $80 = HEAP32[$1>>2]|0; - $81 = $80<<1; - $82 = (($79) + ($81))|0; - HEAP32[$ins>>2] = $82; - $83 = HEAP32[$0>>2]|0; - $84 = HEAP32[$3>>2]|0; - $85 = (_allocateSpace($83,$84,$idx)|0); - HEAP32[$rc>>2] = $85; - $86 = HEAP32[$rc>>2]|0; - $87 = ($86|0)!=(0); - if ($87) { - $88 = HEAP32[$rc>>2]|0; - $89 = HEAP32[$6>>2]|0; - HEAP32[$89>>2] = $88; - STACKTOP = sp;return; - } - $90 = HEAP32[$0>>2]|0; - $91 = (($90) + 16|0); - $92 = HEAP16[$91>>1]|0; - $93 = (($92) + 1)<<16>>16; - HEAP16[$91>>1] = $93; - $94 = HEAP32[$3>>2]|0; - $95 = (2 + ($94))|0; - $96 = $95&65535; - $97 = $96&65535; - $98 = HEAP32[$0>>2]|0; - $99 = (($98) + 14|0); - $100 = HEAP16[$99>>1]|0; - $101 = $100&65535; - $102 = (($101) - ($97))|0; - $103 = $102&65535; - HEAP16[$99>>1] = $103; - $104 = HEAP32[$idx>>2]|0; - $105 = HEAP32[$nSkip>>2]|0; - $106 = (($104) + ($105))|0; - $107 = HEAP32[$data>>2]|0; - $108 = (($107) + ($106)|0); - $109 = HEAP32[$2>>2]|0; - $110 = HEAP32[$nSkip>>2]|0; - $111 = (($109) + ($110)|0); - $112 = HEAP32[$3>>2]|0; - $113 = HEAP32[$nSkip>>2]|0; - $114 = (($112) - ($113))|0; - _memcpy(($108|0),($111|0),($114|0))|0; - $115 = HEAP32[$5>>2]|0; - $116 = ($115|0)!=(0); - if ($116) { - $117 = HEAP32[$idx>>2]|0; - $118 = HEAP32[$data>>2]|0; - $119 = (($118) + ($117)|0); - $120 = HEAP32[$5>>2]|0; - _sqlite3Put4byte($119,$120); - } - $121 = HEAP32[$ins>>2]|0; - $122 = (($121) + 2)|0; - $123 = HEAP32[$data>>2]|0; - $124 = (($123) + ($122)|0); - $125 = HEAP32[$ins>>2]|0; - $126 = HEAP32[$data>>2]|0; - $127 = (($126) + ($125)|0); - $128 = HEAP32[$end>>2]|0; - $129 = HEAP32[$ins>>2]|0; - $130 = (($128) - ($129))|0; - _memmove(($124|0),($127|0),($130|0))|0; - $131 = HEAP32[$idx>>2]|0; - $132 = $131 >> 8; - $133 = $132&255; - $134 = HEAP32[$ins>>2]|0; - $135 = HEAP32[$data>>2]|0; - $136 = (($135) + ($134)|0); - HEAP8[$136>>0] = $133; - $137 = HEAP32[$idx>>2]|0; - $138 = $137&255; - $139 = HEAP32[$ins>>2]|0; - $140 = HEAP32[$data>>2]|0; - $141 = (($140) + ($139)|0); - $142 = (($141) + 1|0); - HEAP8[$142>>0] = $138; - $143 = HEAP32[$0>>2]|0; - $144 = (($143) + 16|0); - $145 = HEAP16[$144>>1]|0; - $146 = $145&65535; - $147 = $146 >> 8; - $148 = $147&255; - $149 = HEAP32[$0>>2]|0; - $150 = (($149) + 5|0); - $151 = HEAP8[$150>>0]|0; - $152 = $151&255; - $153 = (($152) + 3)|0; - $154 = HEAP32[$data>>2]|0; - $155 = (($154) + ($153)|0); - HEAP8[$155>>0] = $148; - $156 = HEAP32[$0>>2]|0; - $157 = (($156) + 16|0); - $158 = HEAP16[$157>>1]|0; - $159 = $158&255; - $160 = HEAP32[$0>>2]|0; - $161 = (($160) + 5|0); - $162 = HEAP8[$161>>0]|0; - $163 = $162&255; - $164 = (($163) + 3)|0; - $165 = HEAP32[$data>>2]|0; - $166 = (($165) + ($164)|0); - $167 = (($166) + 1|0); - HEAP8[$167>>0] = $159; - $168 = HEAP32[$0>>2]|0; - $169 = (($168) + 52|0); - $170 = HEAP32[$169>>2]|0; - $171 = (($170) + 17|0); - $172 = HEAP8[$171>>0]|0; - $173 = ($172<<24>>24)!=(0); - if (!($173)) { - STACKTOP = sp;return; - } - $174 = HEAP32[$0>>2]|0; - $175 = HEAP32[$2>>2]|0; - $176 = HEAP32[$6>>2]|0; - _ptrmapPutOvflPtr($174,$175,$176); - STACKTOP = sp;return; - } - } - $25 = HEAP32[$4>>2]|0; - $26 = ($25|0)!=(0|0); - if ($26) { - $27 = HEAP32[$4>>2]|0; - $28 = HEAP32[$nSkip>>2]|0; - $29 = (($27) + ($28)|0); - $30 = HEAP32[$2>>2]|0; - $31 = HEAP32[$nSkip>>2]|0; - $32 = (($30) + ($31)|0); - $33 = HEAP32[$3>>2]|0; - $34 = HEAP32[$nSkip>>2]|0; - $35 = (($33) - ($34))|0; - _memcpy(($29|0),($32|0),($35|0))|0; - $36 = HEAP32[$4>>2]|0; - HEAP32[$2>>2] = $36; - } - $37 = HEAP32[$5>>2]|0; - $38 = ($37|0)!=(0); - if ($38) { - $39 = HEAP32[$2>>2]|0; - $40 = HEAP32[$5>>2]|0; - _sqlite3Put4byte($39,$40); - } - $41 = HEAP32[$0>>2]|0; - $42 = (($41) + 1|0); - $43 = HEAP8[$42>>0]|0; - $44 = (($43) + 1)<<24>>24; - HEAP8[$42>>0] = $44; - $45 = $43&255; - HEAP32[$j>>2] = $45; - $46 = HEAP32[$2>>2]|0; - $47 = HEAP32[$j>>2]|0; - $48 = HEAP32[$0>>2]|0; - $49 = (($48) + 32|0); - $50 = (($49) + ($47<<2)|0); - HEAP32[$50>>2] = $46; - $51 = HEAP32[$1>>2]|0; - $52 = $51&65535; - $53 = HEAP32[$j>>2]|0; - $54 = HEAP32[$0>>2]|0; - $55 = (($54) + 20|0); - $56 = (($55) + ($53<<1)|0); - HEAP16[$56>>1] = $52; - STACKTOP = sp;return; -} -function _balance($pCur) { - $pCur = $pCur|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0; - var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; - var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; - var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; - var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; - var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aBalanceQuickSpace = 0, $iIdx = 0, $iPage = 0, $nMin = 0, $pFree = 0, $pPage = 0, $pParent = 0, $pSpace = 0, $rc = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 32|0; - $rc = sp + 28|0; - $nMin = sp + 24|0; - $aBalanceQuickSpace = sp + 36|0; - $pFree = sp + 20|0; - $iPage = sp + 16|0; - $pPage = sp + 12|0; - $pParent = sp + 8|0; - $iIdx = sp + 4|0; - $pSpace = sp; - HEAP32[$0>>2] = $pCur; - HEAP32[$rc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 36|0); - $5 = HEAP32[$4>>2]|0; - $6 = $5<<1; - $7 = (($6>>>0) / 3)&-1; - HEAP32[$nMin>>2] = $7; - HEAP32[$pFree>>2] = 0; - while(1) { - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 84|0); - $10 = HEAP16[$9>>1]|0; - $11 = $10 << 16 >> 16; - HEAP32[$iPage>>2] = $11; - $12 = HEAP32[$iPage>>2]|0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 128|0); - $15 = (($14) + ($12<<2)|0); - $16 = HEAP32[$15>>2]|0; - HEAP32[$pPage>>2] = $16; - $17 = HEAP32[$iPage>>2]|0; - $18 = ($17|0)==(0); - $19 = HEAP32[$pPage>>2]|0; - $20 = (($19) + 1|0); - $21 = HEAP8[$20>>0]|0; - if ($18) { - $22 = ($21<<24>>24)!=(0); - if (!($22)) { - break; - } - $23 = HEAP32[$pPage>>2]|0; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 128|0); - $26 = (($25) + 4|0); - $27 = (_balance_deeper($23,$26)|0); - HEAP32[$rc>>2] = $27; - $28 = HEAP32[$rc>>2]|0; - $29 = ($28|0)==(0); - if ($29) { - $30 = HEAP32[$0>>2]|0; - $31 = (($30) + 84|0); - HEAP16[$31>>1] = 1; - $32 = HEAP32[$0>>2]|0; - $33 = (($32) + 86|0); - HEAP16[$33>>1] = 0; - $34 = HEAP32[$0>>2]|0; - $35 = (($34) + 86|0); - $36 = (($35) + 2|0); - HEAP16[$36>>1] = 0; - } - } else { - $37 = $21&255; - $38 = ($37|0)==(0); - if ($38) { - $39 = HEAP32[$pPage>>2]|0; - $40 = (($39) + 14|0); - $41 = HEAP16[$40>>1]|0; - $42 = $41&65535; - $43 = HEAP32[$nMin>>2]|0; - $44 = ($42|0)<=($43|0); - if ($44) { - break; - } - } - $45 = HEAP32[$iPage>>2]|0; - $46 = (($45) - 1)|0; - $47 = HEAP32[$0>>2]|0; - $48 = (($47) + 128|0); - $49 = (($48) + ($46<<2)|0); - $50 = HEAP32[$49>>2]|0; - HEAP32[$pParent>>2] = $50; - $51 = HEAP32[$iPage>>2]|0; - $52 = (($51) - 1)|0; - $53 = HEAP32[$0>>2]|0; - $54 = (($53) + 86|0); - $55 = (($54) + ($52<<1)|0); - $56 = HEAP16[$55>>1]|0; - $57 = $56&65535; - HEAP32[$iIdx>>2] = $57; - $58 = HEAP32[$pParent>>2]|0; - $59 = (($58) + 68|0); - $60 = HEAP32[$59>>2]|0; - $61 = (_sqlite3PagerWrite($60)|0); - HEAP32[$rc>>2] = $61; - $62 = HEAP32[$rc>>2]|0; - $63 = ($62|0)==(0); - do { - if ($63) { - $64 = HEAP32[$pPage>>2]|0; - $65 = (($64) + 4|0); - $66 = HEAP8[$65>>0]|0; - $67 = $66&255; - $68 = ($67|0)!=(0); - if ($68) { - $69 = HEAP32[$pPage>>2]|0; - $70 = (($69) + 1|0); - $71 = HEAP8[$70>>0]|0; - $72 = $71&255; - $73 = ($72|0)==(1); - if ($73) { - $74 = HEAP32[$pPage>>2]|0; - $75 = (($74) + 20|0); - $76 = HEAP16[$75>>1]|0; - $77 = $76&65535; - $78 = HEAP32[$pPage>>2]|0; - $79 = (($78) + 16|0); - $80 = HEAP16[$79>>1]|0; - $81 = $80&65535; - $82 = ($77|0)==($81|0); - if ($82) { - $83 = HEAP32[$pParent>>2]|0; - $84 = (($83) + 72|0); - $85 = HEAP32[$84>>2]|0; - $86 = ($85|0)!=(1); - if ($86) { - $87 = HEAP32[$pParent>>2]|0; - $88 = (($87) + 16|0); - $89 = HEAP16[$88>>1]|0; - $90 = $89&65535; - $91 = HEAP32[$iIdx>>2]|0; - $92 = ($90|0)==($91|0); - if ($92) { - $93 = HEAP32[$pParent>>2]|0; - $94 = HEAP32[$pPage>>2]|0; - $95 = (_balance_quick($93,$94,$aBalanceQuickSpace)|0); - HEAP32[$rc>>2] = $95; - break; - } - } - } - } - } - $96 = HEAP32[$0>>2]|0; - $97 = (($96) + 4|0); - $98 = HEAP32[$97>>2]|0; - $99 = (($98) + 32|0); - $100 = HEAP32[$99>>2]|0; - $101 = (_sqlite3PageMalloc($100)|0); - HEAP32[$pSpace>>2] = $101; - $102 = HEAP32[$pParent>>2]|0; - $103 = HEAP32[$iIdx>>2]|0; - $104 = HEAP32[$pSpace>>2]|0; - $105 = HEAP32[$iPage>>2]|0; - $106 = ($105|0)==(1); - $107 = $106&1; - $108 = HEAP32[$0>>2]|0; - $109 = (($108) + 82|0); - $110 = HEAP8[$109>>0]|0; - $111 = $110&255; - $112 = (_balance_nonroot($102,$103,$104,$107,$111)|0); - HEAP32[$rc>>2] = $112; - $113 = HEAP32[$pFree>>2]|0; - $114 = ($113|0)!=(0|0); - if ($114) { - $115 = HEAP32[$pFree>>2]|0; - _sqlite3PageFree($115); - } - $116 = HEAP32[$pSpace>>2]|0; - HEAP32[$pFree>>2] = $116; - } - } while(0); - $117 = HEAP32[$pPage>>2]|0; - $118 = (($117) + 1|0); - HEAP8[$118>>0] = 0; - $119 = HEAP32[$pPage>>2]|0; - _releasePage($119); - $120 = HEAP32[$0>>2]|0; - $121 = (($120) + 84|0); - $122 = HEAP16[$121>>1]|0; - $123 = (($122) + -1)<<16>>16; - HEAP16[$121>>1] = $123; - } - $124 = HEAP32[$rc>>2]|0; - $125 = ($124|0)==(0); - if (!($125)) { - break; - } - } - $126 = HEAP32[$pFree>>2]|0; - $127 = ($126|0)!=(0|0); - if (!($127)) { - $129 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($129|0); - } - $128 = HEAP32[$pFree>>2]|0; - _sqlite3PageFree($128); - $129 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($129|0); -} -function _balance_deeper($pRoot,$ppChild) { - $pRoot = $pRoot|0; - $ppChild = $ppChild|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $8 = 0, $9 = 0, $pBt = 0, $pChild = 0, $pgnoChild = 0, $rc = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $rc = sp + 12|0; - $pChild = sp + 8|0; - $pgnoChild = sp + 4|0; - $pBt = sp; - HEAP32[$1>>2] = $pRoot; - HEAP32[$2>>2] = $ppChild; - HEAP32[$pChild>>2] = 0; - HEAP32[$pgnoChild>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 52|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pBt>>2] = $5; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 68|0); - $8 = HEAP32[$7>>2]|0; - $9 = (_sqlite3PagerWrite($8)|0); - HEAP32[$rc>>2] = $9; - $10 = HEAP32[$rc>>2]|0; - $11 = ($10|0)==(0); - if ($11) { - $12 = HEAP32[$pBt>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 72|0); - $15 = HEAP32[$14>>2]|0; - $16 = (_allocateBtreePage($12,$pChild,$pgnoChild,$15,0)|0); - HEAP32[$rc>>2] = $16; - $17 = HEAP32[$1>>2]|0; - $18 = HEAP32[$pChild>>2]|0; - _copyNodeContent($17,$18,$rc); - $19 = HEAP32[$pBt>>2]|0; - $20 = (($19) + 17|0); - $21 = HEAP8[$20>>0]|0; - $22 = ($21<<24>>24)!=(0); - if ($22) { - $23 = HEAP32[$pBt>>2]|0; - $24 = HEAP32[$pgnoChild>>2]|0; - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 72|0); - $27 = HEAP32[$26>>2]|0; - _ptrmapPut($23,$24,5,$27,$rc); - } - } - $28 = HEAP32[$rc>>2]|0; - $29 = ($28|0)!=(0); - if ($29) { - $30 = HEAP32[$2>>2]|0; - HEAP32[$30>>2] = 0; - $31 = HEAP32[$pChild>>2]|0; - _releasePage($31); - $32 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $32; - $75 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($75|0); - } else { - $33 = HEAP32[$pChild>>2]|0; - $34 = (($33) + 20|0); - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 20|0); - $37 = HEAP32[$1>>2]|0; - $38 = (($37) + 1|0); - $39 = HEAP8[$38>>0]|0; - $40 = $39&255; - $41 = $40<<1; - _memcpy(($34|0),($36|0),($41|0))|0; - $42 = HEAP32[$pChild>>2]|0; - $43 = (($42) + 32|0); - $44 = HEAP32[$1>>2]|0; - $45 = (($44) + 32|0); - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 1|0); - $48 = HEAP8[$47>>0]|0; - $49 = $48&255; - $50 = $49<<2; - _memcpy(($43|0),($45|0),($50|0))|0; - $51 = HEAP32[$1>>2]|0; - $52 = (($51) + 1|0); - $53 = HEAP8[$52>>0]|0; - $54 = HEAP32[$pChild>>2]|0; - $55 = (($54) + 1|0); - HEAP8[$55>>0] = $53; - $56 = HEAP32[$1>>2]|0; - $57 = HEAP32[$pChild>>2]|0; - $58 = (($57) + 56|0); - $59 = HEAP32[$58>>2]|0; - $60 = HEAP8[$59>>0]|0; - $61 = $60&255; - $62 = $61 & -9; - _zeroPage($56,$62); - $63 = HEAP32[$1>>2]|0; - $64 = (($63) + 5|0); - $65 = HEAP8[$64>>0]|0; - $66 = $65&255; - $67 = (($66) + 8)|0; - $68 = HEAP32[$1>>2]|0; - $69 = (($68) + 56|0); - $70 = HEAP32[$69>>2]|0; - $71 = (($70) + ($67)|0); - $72 = HEAP32[$pgnoChild>>2]|0; - _sqlite3Put4byte($71,$72); - $73 = HEAP32[$pChild>>2]|0; - $74 = HEAP32[$2>>2]|0; - HEAP32[$74>>2] = $73; - HEAP32[$0>>2] = 0; - $75 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($75|0); - } - return 0|0; -} -function _balance_quick($pParent,$pPage,$pSpace) { - $pParent = $pParent|0; - $pPage = $pPage|0; - $pSpace = $pSpace|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $14 = 0, $15 = 0; - var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; - var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; - var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; - var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; - var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $pBt = 0, $pCell = 0, $pNew = 0, $pOut = 0, $pStop = 0, $pgnoNew = 0, $rc = 0, $szCell = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $pBt = sp + 24|0; - $pNew = sp + 20|0; - $rc = sp + 16|0; - $pgnoNew = sp + 12|0; - $pOut = sp + 8|0; - $pCell = sp + 4|0; - $szCell = sp + 44|0; - $pStop = sp; - HEAP32[$1>>2] = $pParent; - HEAP32[$2>>2] = $pPage; - HEAP32[$3>>2] = $pSpace; - $4 = HEAP32[$2>>2]|0; - $5 = (($4) + 52|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$pBt>>2] = $6; - $7 = HEAP32[$2>>2]|0; - $8 = (($7) + 16|0); - $9 = HEAP16[$8>>1]|0; - $10 = $9&65535; - $11 = ($10|0)==(0); - if ($11) { - $12 = (_sqlite3CorruptError(57050)|0); - HEAP32[$0>>2] = $12; - $131 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($131|0); - } - $13 = HEAP32[$pBt>>2]|0; - $14 = (_allocateBtreePage($13,$pNew,$pgnoNew,0,0)|0); - HEAP32[$rc>>2] = $14; - $15 = HEAP32[$rc>>2]|0; - $16 = ($15|0)==(0); - if ($16) { - $17 = HEAP32[$3>>2]|0; - $18 = (($17) + 4|0); - HEAP32[$pOut>>2] = $18; - $19 = HEAP32[$2>>2]|0; - $20 = (($19) + 32|0); - $21 = HEAP32[$20>>2]|0; - HEAP32[$pCell>>2] = $21; - $22 = HEAP32[$2>>2]|0; - $23 = HEAP32[$pCell>>2]|0; - $24 = (_cellSizePtr($22,$23)|0); - HEAP16[$szCell>>1] = $24; - $25 = HEAP32[$pNew>>2]|0; - _zeroPage($25,13); - $26 = HEAP32[$pNew>>2]|0; - _assemblePage($26,1,$pCell,$szCell); - $27 = HEAP32[$pBt>>2]|0; - $28 = (($27) + 17|0); - $29 = HEAP8[$28>>0]|0; - $30 = ($29<<24>>24)!=(0); - if ($30) { - $31 = HEAP32[$pBt>>2]|0; - $32 = HEAP32[$pgnoNew>>2]|0; - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 72|0); - $35 = HEAP32[$34>>2]|0; - _ptrmapPut($31,$32,5,$35,$rc); - $36 = HEAP16[$szCell>>1]|0; - $37 = $36&65535; - $38 = HEAP32[$pNew>>2]|0; - $39 = (($38) + 10|0); - $40 = HEAP16[$39>>1]|0; - $41 = $40&65535; - $42 = ($37|0)>($41|0); - if ($42) { - $43 = HEAP32[$pNew>>2]|0; - $44 = HEAP32[$pCell>>2]|0; - _ptrmapPutOvflPtr($43,$44,$rc); - } - } - $45 = HEAP32[$2>>2]|0; - $46 = (($45) + 56|0); - $47 = HEAP32[$46>>2]|0; - $48 = HEAP32[$2>>2]|0; - $49 = (($48) + 18|0); - $50 = HEAP16[$49>>1]|0; - $51 = $50&65535; - $52 = HEAP32[$2>>2]|0; - $53 = (($52) + 16|0); - $54 = HEAP16[$53>>1]|0; - $55 = $54&65535; - $56 = (($55) - 1)|0; - $57 = $56<<1; - $58 = HEAP32[$2>>2]|0; - $59 = (($58) + 64|0); - $60 = HEAP32[$59>>2]|0; - $61 = (($60) + ($57)|0); - $62 = HEAP8[$61>>0]|0; - $63 = $62&255; - $64 = $63 << 8; - $65 = HEAP32[$2>>2]|0; - $66 = (($65) + 16|0); - $67 = HEAP16[$66>>1]|0; - $68 = $67&65535; - $69 = (($68) - 1)|0; - $70 = $69<<1; - $71 = HEAP32[$2>>2]|0; - $72 = (($71) + 64|0); - $73 = HEAP32[$72>>2]|0; - $74 = (($73) + ($70)|0); - $75 = (($74) + 1|0); - $76 = HEAP8[$75>>0]|0; - $77 = $76&255; - $78 = $64 | $77; - $79 = $51 & $78; - $80 = (($47) + ($79)|0); - HEAP32[$pCell>>2] = $80; - $81 = HEAP32[$pCell>>2]|0; - $82 = (($81) + 9|0); - HEAP32[$pStop>>2] = $82; - while(1) { - $83 = HEAP32[$pCell>>2]|0; - $84 = (($83) + 1|0); - HEAP32[$pCell>>2] = $84; - $85 = HEAP8[$83>>0]|0; - $86 = $85&255; - $87 = $86 & 128; - $88 = ($87|0)!=(0); - if (!($88)) { - break; - } - $89 = HEAP32[$pCell>>2]|0; - $90 = HEAP32[$pStop>>2]|0; - $91 = ($89>>>0)<($90>>>0); - if (!($91)) { - break; - } - } - $92 = HEAP32[$pCell>>2]|0; - $93 = (($92) + 9|0); - HEAP32[$pStop>>2] = $93; - while(1) { - $94 = HEAP32[$pCell>>2]|0; - $95 = (($94) + 1|0); - HEAP32[$pCell>>2] = $95; - $96 = HEAP8[$94>>0]|0; - $97 = HEAP32[$pOut>>2]|0; - $98 = (($97) + 1|0); - HEAP32[$pOut>>2] = $98; - HEAP8[$97>>0] = $96; - $99 = $96&255; - $100 = $99 & 128; - $101 = ($100|0)!=(0); - if (!($101)) { - break; - } - $102 = HEAP32[$pCell>>2]|0; - $103 = HEAP32[$pStop>>2]|0; - $104 = ($102>>>0)<($103>>>0); - if (!($104)) { - break; - } - } - $105 = HEAP32[$1>>2]|0; - $106 = HEAP32[$1>>2]|0; - $107 = (($106) + 16|0); - $108 = HEAP16[$107>>1]|0; - $109 = $108&65535; - $110 = HEAP32[$3>>2]|0; - $111 = HEAP32[$pOut>>2]|0; - $112 = HEAP32[$3>>2]|0; - $113 = $111; - $114 = $112; - $115 = (($113) - ($114))|0; - $116 = HEAP32[$2>>2]|0; - $117 = (($116) + 72|0); - $118 = HEAP32[$117>>2]|0; - _insertCell($105,$109,$110,$115,0,$118,$rc); - $119 = HEAP32[$1>>2]|0; - $120 = (($119) + 5|0); - $121 = HEAP8[$120>>0]|0; - $122 = $121&255; - $123 = (($122) + 8)|0; - $124 = HEAP32[$1>>2]|0; - $125 = (($124) + 56|0); - $126 = HEAP32[$125>>2]|0; - $127 = (($126) + ($123)|0); - $128 = HEAP32[$pgnoNew>>2]|0; - _sqlite3Put4byte($127,$128); - $129 = HEAP32[$pNew>>2]|0; - _releasePage($129); - } - $130 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $130; - $131 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($131|0); -} -function _balance_nonroot($pParent,$iParentIdx,$aOvflSpace,$isRoot,$bBulk) { - $pParent = $pParent|0; - $iParentIdx = $iParentIdx|0; - $aOvflSpace = $aOvflSpace|0; - $isRoot = $isRoot|0; - $bBulk = $bBulk|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0; - var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0; - var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0; - var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0; - var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; - var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; - var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; - var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; - var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; - var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0; - var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0; - var $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0; - var $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0; - var $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0; - var $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0; - var $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0; - var $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0; - var $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0; - var $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0; - var $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0; - var $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0; - var $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0; - var $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0; - var $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0; - var $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0; - var $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0; - var $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0; - var $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0; - var $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0; - var $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0; - var $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0; - var $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0; - var $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0; - var $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0; - var $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0; - var $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0; - var $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0; - var $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0; - var $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0; - var $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0; - var $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0; - var $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0; - var $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0; - var $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0; - var $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0; - var $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0; - var $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0; - var $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0; - var $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0; - var $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0; - var $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0; - var $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0; - var $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $aData = 0, $aSpace1 = 0; - var $apCell = 0, $apCopy = 0, $apDiv = 0, $apNew = 0, $apOld = 0, $cellOffset = 0, $cntNew = 0, $d = 0, $i = 0, $iNextOld = 0, $iOff = 0, $iOverflow = 0, $iOvflSpace = 0, $iSpace1 = 0, $info = 0, $isDivider = 0, $j = 0, $k = 0, $key = 0, $leafCorrection = 0; - var $leafData = 0, $limit = 0, $maskPage = 0, $minI = 0, $minV = 0, $nCell = 0, $nMaxCells = 0, $nNew = 0, $nOld = 0, $nOverflow = 0, $nxDiv = 0, $pBt = 0, $pCell = 0, $pNew = 0, $pNew1 = 0, $pNew4 = 0, $pOld = 0, $pOld5 = 0, $pRight = 0, $pT = 0; - var $pTemp = 0, $pTemp2 = 0, $pageFlags = 0, $pgno = 0, $r = 0, $rc = 0, $subtotal = 0, $sz = 0, $sz3 = 0, $szCell = 0, $szLeft = 0, $szNew = 0, $szRight = 0, $szScratch = 0, $usableSpace = 0, $zChild = 0, dest = 0, label = 0, sp = 0, src = 0; - var stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 352|0; - $0 = sp + 336|0; - $1 = sp + 332|0; - $2 = sp + 328|0; - $3 = sp + 324|0; - $4 = sp + 320|0; - $5 = sp + 316|0; - $pBt = sp + 312|0; - $nCell = sp + 308|0; - $nMaxCells = sp + 304|0; - $nNew = sp + 300|0; - $nOld = sp + 296|0; - $i = sp + 292|0; - $j = sp + 288|0; - $k = sp + 284|0; - $nxDiv = sp + 280|0; - $rc = sp + 276|0; - $leafCorrection = sp + 346|0; - $leafData = sp + 272|0; - $usableSpace = sp + 268|0; - $pageFlags = sp + 264|0; - $subtotal = sp + 260|0; - $iSpace1 = sp + 256|0; - $iOvflSpace = sp + 252|0; - $szScratch = sp + 248|0; - $apOld = sp + 236|0; - $apCopy = sp + 224|0; - $apNew = sp + 204|0; - $pRight = sp + 200|0; - $apDiv = sp + 192|0; - $cntNew = sp + 168|0; - $szNew = sp + 148|0; - $apCell = sp + 144|0; - $szCell = sp + 140|0; - $aSpace1 = sp + 136|0; - $pgno = sp + 132|0; - $iOff = sp + 128|0; - $limit = sp + 124|0; - $pOld = sp + 120|0; - $aData = sp + 116|0; - $maskPage = sp + 344|0; - $cellOffset = sp + 342|0; - $sz = sp + 340|0; - $pTemp = sp + 112|0; - $szRight = sp + 108|0; - $szLeft = sp + 104|0; - $r = sp + 100|0; - $d = sp + 96|0; - $pNew = sp + 92|0; - $minV = sp + 88|0; - $minI = sp + 84|0; - $pT = sp + 80|0; - $pNew1 = sp + 76|0; - $pCell = sp + 72|0; - $pTemp2 = sp + 68|0; - $sz3 = sp + 64|0; - $info = sp; - $zChild = sp + 60|0; - $pNew4 = sp + 56|0; - $pOld5 = sp + 52|0; - $nOverflow = sp + 48|0; - $iNextOld = sp + 44|0; - $iOverflow = sp + 40|0; - $isDivider = sp + 36|0; - $key = sp + 32|0; - HEAP32[$1>>2] = $pParent; - HEAP32[$2>>2] = $iParentIdx; - HEAP32[$3>>2] = $aOvflSpace; - HEAP32[$4>>2] = $isRoot; - HEAP32[$5>>2] = $bBulk; - HEAP32[$nCell>>2] = 0; - HEAP32[$nMaxCells>>2] = 0; - HEAP32[$nNew>>2] = 0; - HEAP32[$rc>>2] = 0; - HEAP32[$iSpace1>>2] = 0; - HEAP32[$iOvflSpace>>2] = 0; - HEAP32[$apCell>>2] = 0; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 52|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pBt>>2] = $8; - $9 = HEAP32[$3>>2]|0; - $10 = ($9|0)!=(0|0); - if (!($10)) { - HEAP32[$0>>2] = 7; - $1077 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($1077|0); - } - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 1|0); - $13 = HEAP8[$12>>0]|0; - $14 = $13&255; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 16|0); - $17 = HEAP16[$16>>1]|0; - $18 = $17&65535; - $19 = (($14) + ($18))|0; - HEAP32[$i>>2] = $19; - $20 = HEAP32[$i>>2]|0; - $21 = ($20|0)<(2); - if ($21) { - HEAP32[$nxDiv>>2] = 0; - } else { - $22 = HEAP32[$2>>2]|0; - $23 = ($22|0)==(0); - do { - if ($23) { - HEAP32[$nxDiv>>2] = 0; - } else { - $24 = HEAP32[$2>>2]|0; - $25 = HEAP32[$i>>2]|0; - $26 = ($24|0)==($25|0); - if ($26) { - $27 = HEAP32[$i>>2]|0; - $28 = (($27) - 2)|0; - $29 = HEAP32[$5>>2]|0; - $30 = (($28) + ($29))|0; - HEAP32[$nxDiv>>2] = $30; - break; - } else { - $31 = HEAP32[$2>>2]|0; - $32 = (($31) - 1)|0; - HEAP32[$nxDiv>>2] = $32; - break; - } - } - } while(0); - $33 = HEAP32[$5>>2]|0; - $34 = (2 - ($33))|0; - HEAP32[$i>>2] = $34; - } - $35 = HEAP32[$i>>2]|0; - $36 = (($35) + 1)|0; - HEAP32[$nOld>>2] = $36; - $37 = HEAP32[$i>>2]|0; - $38 = HEAP32[$nxDiv>>2]|0; - $39 = (($37) + ($38))|0; - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 1|0); - $42 = HEAP8[$41>>0]|0; - $43 = $42&255; - $44 = (($39) - ($43))|0; - $45 = HEAP32[$1>>2]|0; - $46 = (($45) + 16|0); - $47 = HEAP16[$46>>1]|0; - $48 = $47&65535; - $49 = ($44|0)==($48|0); - $50 = HEAP32[$1>>2]|0; - if ($49) { - $51 = (($50) + 5|0); - $52 = HEAP8[$51>>0]|0; - $53 = $52&255; - $54 = (($53) + 8)|0; - $55 = HEAP32[$1>>2]|0; - $56 = (($55) + 56|0); - $57 = HEAP32[$56>>2]|0; - $58 = (($57) + ($54)|0); - HEAP32[$pRight>>2] = $58; - } else { - $59 = (($50) + 56|0); - $60 = HEAP32[$59>>2]|0; - $61 = HEAP32[$1>>2]|0; - $62 = (($61) + 18|0); - $63 = HEAP16[$62>>1]|0; - $64 = $63&65535; - $65 = HEAP32[$i>>2]|0; - $66 = HEAP32[$nxDiv>>2]|0; - $67 = (($65) + ($66))|0; - $68 = HEAP32[$1>>2]|0; - $69 = (($68) + 1|0); - $70 = HEAP8[$69>>0]|0; - $71 = $70&255; - $72 = (($67) - ($71))|0; - $73 = $72<<1; - $74 = HEAP32[$1>>2]|0; - $75 = (($74) + 64|0); - $76 = HEAP32[$75>>2]|0; - $77 = (($76) + ($73)|0); - $78 = HEAP8[$77>>0]|0; - $79 = $78&255; - $80 = $79 << 8; - $81 = HEAP32[$i>>2]|0; - $82 = HEAP32[$nxDiv>>2]|0; - $83 = (($81) + ($82))|0; - $84 = HEAP32[$1>>2]|0; - $85 = (($84) + 1|0); - $86 = HEAP8[$85>>0]|0; - $87 = $86&255; - $88 = (($83) - ($87))|0; - $89 = $88<<1; - $90 = HEAP32[$1>>2]|0; - $91 = (($90) + 64|0); - $92 = HEAP32[$91>>2]|0; - $93 = (($92) + ($89)|0); - $94 = (($93) + 1|0); - $95 = HEAP8[$94>>0]|0; - $96 = $95&255; - $97 = $80 | $96; - $98 = $64 & $97; - $99 = (($60) + ($98)|0); - HEAP32[$pRight>>2] = $99; - } - $100 = HEAP32[$pRight>>2]|0; - $101 = (_sqlite3Get4byte($100)|0); - HEAP32[$pgno>>2] = $101; - while(1) { - $102 = HEAP32[$pBt>>2]|0; - $103 = HEAP32[$pgno>>2]|0; - $104 = HEAP32[$i>>2]|0; - $105 = (($apOld) + ($104<<2)|0); - $106 = (_getAndInitPage($102,$103,$105,0)|0); - HEAP32[$rc>>2] = $106; - $107 = HEAP32[$rc>>2]|0; - $108 = ($107|0)!=(0); - if ($108) { - label = 16; - break; - } - $112 = HEAP32[$i>>2]|0; - $113 = (($apOld) + ($112<<2)|0); - $114 = HEAP32[$113>>2]|0; - $115 = (($114) + 16|0); - $116 = HEAP16[$115>>1]|0; - $117 = $116&65535; - $118 = (1 + ($117))|0; - $119 = HEAP32[$i>>2]|0; - $120 = (($apOld) + ($119<<2)|0); - $121 = HEAP32[$120>>2]|0; - $122 = (($121) + 1|0); - $123 = HEAP8[$122>>0]|0; - $124 = $123&255; - $125 = (($118) + ($124))|0; - $126 = HEAP32[$nMaxCells>>2]|0; - $127 = (($126) + ($125))|0; - HEAP32[$nMaxCells>>2] = $127; - $128 = HEAP32[$i>>2]|0; - $129 = (($128) + -1)|0; - HEAP32[$i>>2] = $129; - $130 = ($128|0)==(0); - if ($130) { - label = 26; - break; - } - $131 = HEAP32[$i>>2]|0; - $132 = HEAP32[$nxDiv>>2]|0; - $133 = (($131) + ($132))|0; - $134 = HEAP32[$1>>2]|0; - $135 = (($134) + 20|0); - $136 = HEAP16[$135>>1]|0; - $137 = $136&65535; - $138 = ($133|0)==($137|0); - if ($138) { - $139 = HEAP32[$1>>2]|0; - $140 = (($139) + 1|0); - $141 = HEAP8[$140>>0]|0; - $142 = $141&255; - $143 = ($142|0)!=(0); - if ($143) { - $144 = HEAP32[$1>>2]|0; - $145 = (($144) + 32|0); - $146 = HEAP32[$145>>2]|0; - $147 = HEAP32[$i>>2]|0; - $148 = (($apDiv) + ($147<<2)|0); - HEAP32[$148>>2] = $146; - $149 = HEAP32[$i>>2]|0; - $150 = (($apDiv) + ($149<<2)|0); - $151 = HEAP32[$150>>2]|0; - $152 = (_sqlite3Get4byte($151)|0); - HEAP32[$pgno>>2] = $152; - $153 = HEAP32[$1>>2]|0; - $154 = HEAP32[$i>>2]|0; - $155 = (($apDiv) + ($154<<2)|0); - $156 = HEAP32[$155>>2]|0; - $157 = (_cellSizePtr($153,$156)|0); - $158 = $157&65535; - $159 = HEAP32[$i>>2]|0; - $160 = (($szNew) + ($159<<2)|0); - HEAP32[$160>>2] = $158; - $161 = HEAP32[$1>>2]|0; - $162 = (($161) + 1|0); - HEAP8[$162>>0] = 0; - continue; - } - } - $163 = HEAP32[$1>>2]|0; - $164 = (($163) + 56|0); - $165 = HEAP32[$164>>2]|0; - $166 = HEAP32[$1>>2]|0; - $167 = (($166) + 18|0); - $168 = HEAP16[$167>>1]|0; - $169 = $168&65535; - $170 = HEAP32[$i>>2]|0; - $171 = HEAP32[$nxDiv>>2]|0; - $172 = (($170) + ($171))|0; - $173 = HEAP32[$1>>2]|0; - $174 = (($173) + 1|0); - $175 = HEAP8[$174>>0]|0; - $176 = $175&255; - $177 = (($172) - ($176))|0; - $178 = $177<<1; - $179 = HEAP32[$1>>2]|0; - $180 = (($179) + 64|0); - $181 = HEAP32[$180>>2]|0; - $182 = (($181) + ($178)|0); - $183 = HEAP8[$182>>0]|0; - $184 = $183&255; - $185 = $184 << 8; - $186 = HEAP32[$i>>2]|0; - $187 = HEAP32[$nxDiv>>2]|0; - $188 = (($186) + ($187))|0; - $189 = HEAP32[$1>>2]|0; - $190 = (($189) + 1|0); - $191 = HEAP8[$190>>0]|0; - $192 = $191&255; - $193 = (($188) - ($192))|0; - $194 = $193<<1; - $195 = HEAP32[$1>>2]|0; - $196 = (($195) + 64|0); - $197 = HEAP32[$196>>2]|0; - $198 = (($197) + ($194)|0); - $199 = (($198) + 1|0); - $200 = HEAP8[$199>>0]|0; - $201 = $200&255; - $202 = $185 | $201; - $203 = $169 & $202; - $204 = (($165) + ($203)|0); - $205 = HEAP32[$i>>2]|0; - $206 = (($apDiv) + ($205<<2)|0); - HEAP32[$206>>2] = $204; - $207 = HEAP32[$i>>2]|0; - $208 = (($apDiv) + ($207<<2)|0); - $209 = HEAP32[$208>>2]|0; - $210 = (_sqlite3Get4byte($209)|0); - HEAP32[$pgno>>2] = $210; - $211 = HEAP32[$1>>2]|0; - $212 = HEAP32[$i>>2]|0; - $213 = (($apDiv) + ($212<<2)|0); - $214 = HEAP32[$213>>2]|0; - $215 = (_cellSizePtr($211,$214)|0); - $216 = $215&65535; - $217 = HEAP32[$i>>2]|0; - $218 = (($szNew) + ($217<<2)|0); - HEAP32[$218>>2] = $216; - $219 = HEAP32[$pBt>>2]|0; - $220 = (($219) + 22|0); - $221 = HEAP16[$220>>1]|0; - $222 = $221&65535; - $223 = $222 & 4; - $224 = ($223|0)!=(0); - if ($224) { - $225 = HEAP32[$i>>2]|0; - $226 = (($apDiv) + ($225<<2)|0); - $227 = HEAP32[$226>>2]|0; - $228 = $227; - $229 = HEAP32[$1>>2]|0; - $230 = (($229) + 56|0); - $231 = HEAP32[$230>>2]|0; - $232 = $231; - $233 = (($228) - ($232))|0; - HEAP32[$iOff>>2] = $233; - $234 = HEAP32[$iOff>>2]|0; - $235 = HEAP32[$i>>2]|0; - $236 = (($szNew) + ($235<<2)|0); - $237 = HEAP32[$236>>2]|0; - $238 = (($234) + ($237))|0; - $239 = HEAP32[$pBt>>2]|0; - $240 = (($239) + 36|0); - $241 = HEAP32[$240>>2]|0; - $242 = ($238|0)>($241|0); - if ($242) { - label = 23; - break; - } - $247 = HEAP32[$iOff>>2]|0; - $248 = HEAP32[$3>>2]|0; - $249 = (($248) + ($247)|0); - $250 = HEAP32[$i>>2]|0; - $251 = (($apDiv) + ($250<<2)|0); - $252 = HEAP32[$251>>2]|0; - $253 = HEAP32[$i>>2]|0; - $254 = (($szNew) + ($253<<2)|0); - $255 = HEAP32[$254>>2]|0; - _memcpy(($249|0),($252|0),($255|0))|0; - $256 = HEAP32[$i>>2]|0; - $257 = (($apDiv) + ($256<<2)|0); - $258 = HEAP32[$257>>2]|0; - $259 = HEAP32[$1>>2]|0; - $260 = (($259) + 56|0); - $261 = HEAP32[$260>>2]|0; - $262 = $258; - $263 = $261; - $264 = (($262) - ($263))|0; - $265 = HEAP32[$3>>2]|0; - $266 = (($265) + ($264)|0); - $267 = HEAP32[$i>>2]|0; - $268 = (($apDiv) + ($267<<2)|0); - HEAP32[$268>>2] = $266; - } - $269 = HEAP32[$1>>2]|0; - $270 = HEAP32[$i>>2]|0; - $271 = HEAP32[$nxDiv>>2]|0; - $272 = (($270) + ($271))|0; - $273 = HEAP32[$1>>2]|0; - $274 = (($273) + 1|0); - $275 = HEAP8[$274>>0]|0; - $276 = $275&255; - $277 = (($272) - ($276))|0; - $278 = HEAP32[$i>>2]|0; - $279 = (($szNew) + ($278<<2)|0); - $280 = HEAP32[$279>>2]|0; - _dropCell($269,$277,$280,$rc); - } - L32: do { - if ((label|0) == 16) { - $109 = HEAP32[$i>>2]|0; - $110 = (($109) + 1)|0; - $111 = $110<<2; - _memset(($apOld|0),0,($111|0))|0; - } - else if ((label|0) == 23) { - $243 = (_sqlite3CorruptError(57387)|0); - HEAP32[$rc>>2] = $243; - $244 = HEAP32[$i>>2]|0; - $245 = (($244) + 1)|0; - $246 = $245<<2; - _memset(($apOld|0),0,($246|0))|0; - } - else if ((label|0) == 26) { - $281 = HEAP32[$nMaxCells>>2]|0; - $282 = (($281) + 3)|0; - $283 = $282 & -4; - HEAP32[$nMaxCells>>2] = $283; - $284 = HEAP32[$pBt>>2]|0; - $285 = (($284) + 32|0); - $286 = HEAP32[$285>>2]|0; - $287 = (($286) + 80)|0; - HEAP32[$k>>2] = $287; - $288 = HEAP32[$nMaxCells>>2]|0; - $289 = $288<<2; - $290 = HEAP32[$nMaxCells>>2]|0; - $291 = $290<<1; - $292 = (($289) + ($291))|0; - $293 = HEAP32[$pBt>>2]|0; - $294 = (($293) + 32|0); - $295 = HEAP32[$294>>2]|0; - $296 = (($292) + ($295))|0; - $297 = HEAP32[$k>>2]|0; - $298 = HEAP32[$nOld>>2]|0; - $299 = Math_imul($297, $298)|0; - $300 = (($296) + ($299))|0; - HEAP32[$szScratch>>2] = $300; - $301 = HEAP32[$szScratch>>2]|0; - $302 = (_sqlite3ScratchMalloc($301)|0); - HEAP32[$apCell>>2] = $302; - $303 = HEAP32[$apCell>>2]|0; - $304 = ($303|0)==(0|0); - if ($304) { - HEAP32[$rc>>2] = 7; - break; - } - $305 = HEAP32[$nMaxCells>>2]|0; - $306 = HEAP32[$apCell>>2]|0; - $307 = (($306) + ($305<<2)|0); - HEAP32[$szCell>>2] = $307; - $308 = HEAP32[$nMaxCells>>2]|0; - $309 = HEAP32[$szCell>>2]|0; - $310 = (($309) + ($308<<1)|0); - HEAP32[$aSpace1>>2] = $310; - $311 = HEAP32[$apOld>>2]|0; - $312 = (($311) + 3|0); - $313 = HEAP8[$312>>0]|0; - $314 = $313&255; - $315 = $314<<2; - $316 = $315&65535; - HEAP16[$leafCorrection>>1] = $316; - $317 = HEAP32[$apOld>>2]|0; - $318 = (($317) + 4|0); - $319 = HEAP8[$318>>0]|0; - $320 = $319&255; - HEAP32[$leafData>>2] = $320; - HEAP32[$i>>2] = 0; - while(1) { - $321 = HEAP32[$i>>2]|0; - $322 = HEAP32[$nOld>>2]|0; - $323 = ($321|0)<($322|0); - $324 = HEAP32[$pBt>>2]|0; - if (!($323)) { - break; - } - $325 = (($324) + 32|0); - $326 = HEAP32[$325>>2]|0; - $327 = HEAP32[$k>>2]|0; - $328 = HEAP32[$i>>2]|0; - $329 = Math_imul($327, $328)|0; - $330 = (($326) + ($329))|0; - $331 = HEAP32[$aSpace1>>2]|0; - $332 = (($331) + ($330)|0); - $333 = HEAP32[$i>>2]|0; - $334 = (($apCopy) + ($333<<2)|0); - HEAP32[$334>>2] = $332; - HEAP32[$pOld>>2] = $332; - $335 = HEAP32[$pOld>>2]|0; - $336 = HEAP32[$i>>2]|0; - $337 = (($apOld) + ($336<<2)|0); - $338 = HEAP32[$337>>2]|0; - dest=$335+0|0; src=$338+0|0; stop=dest+76|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); - $339 = HEAP32[$pOld>>2]|0; - $340 = (($339) + 76|0); - $341 = HEAP32[$pOld>>2]|0; - $342 = (($341) + 56|0); - HEAP32[$342>>2] = $340; - $343 = HEAP32[$pOld>>2]|0; - $344 = (($343) + 56|0); - $345 = HEAP32[$344>>2]|0; - $346 = HEAP32[$i>>2]|0; - $347 = (($apOld) + ($346<<2)|0); - $348 = HEAP32[$347>>2]|0; - $349 = (($348) + 56|0); - $350 = HEAP32[$349>>2]|0; - $351 = HEAP32[$pBt>>2]|0; - $352 = (($351) + 32|0); - $353 = HEAP32[$352>>2]|0; - _memcpy(($345|0),($350|0),($353|0))|0; - $354 = HEAP32[$pOld>>2]|0; - $355 = (($354) + 16|0); - $356 = HEAP16[$355>>1]|0; - $357 = $356&65535; - $358 = HEAP32[$pOld>>2]|0; - $359 = (($358) + 1|0); - $360 = HEAP8[$359>>0]|0; - $361 = $360&255; - $362 = (($357) + ($361))|0; - HEAP32[$limit>>2] = $362; - $363 = HEAP32[$pOld>>2]|0; - $364 = (($363) + 1|0); - $365 = HEAP8[$364>>0]|0; - $366 = $365&255; - $367 = ($366|0)>(0); - L40: do { - if ($367) { - HEAP32[$j>>2] = 0; - while(1) { - $368 = HEAP32[$j>>2]|0; - $369 = HEAP32[$limit>>2]|0; - $370 = ($368|0)<($369|0); - if (!($370)) { - break L40; - } - $371 = HEAP32[$pOld>>2]|0; - $372 = HEAP32[$j>>2]|0; - $373 = (_findOverflowCell($371,$372)|0); - $374 = HEAP32[$nCell>>2]|0; - $375 = HEAP32[$apCell>>2]|0; - $376 = (($375) + ($374<<2)|0); - HEAP32[$376>>2] = $373; - $377 = HEAP32[$pOld>>2]|0; - $378 = HEAP32[$nCell>>2]|0; - $379 = HEAP32[$apCell>>2]|0; - $380 = (($379) + ($378<<2)|0); - $381 = HEAP32[$380>>2]|0; - $382 = (_cellSizePtr($377,$381)|0); - $383 = HEAP32[$nCell>>2]|0; - $384 = HEAP32[$szCell>>2]|0; - $385 = (($384) + ($383<<1)|0); - HEAP16[$385>>1] = $382; - $386 = HEAP32[$nCell>>2]|0; - $387 = (($386) + 1)|0; - HEAP32[$nCell>>2] = $387; - $388 = HEAP32[$j>>2]|0; - $389 = (($388) + 1)|0; - HEAP32[$j>>2] = $389; - } - } else { - $390 = HEAP32[$pOld>>2]|0; - $391 = (($390) + 56|0); - $392 = HEAP32[$391>>2]|0; - HEAP32[$aData>>2] = $392; - $393 = HEAP32[$pOld>>2]|0; - $394 = (($393) + 18|0); - $395 = HEAP16[$394>>1]|0; - HEAP16[$maskPage>>1] = $395; - $396 = HEAP32[$pOld>>2]|0; - $397 = (($396) + 12|0); - $398 = HEAP16[$397>>1]|0; - HEAP16[$cellOffset>>1] = $398; - HEAP32[$j>>2] = 0; - while(1) { - $399 = HEAP32[$j>>2]|0; - $400 = HEAP32[$limit>>2]|0; - $401 = ($399|0)<($400|0); - if (!($401)) { - break L40; - } - $402 = HEAP32[$aData>>2]|0; - $403 = HEAP16[$maskPage>>1]|0; - $404 = $403&65535; - $405 = HEAP32[$aData>>2]|0; - $406 = HEAP16[$cellOffset>>1]|0; - $407 = $406&65535; - $408 = HEAP32[$j>>2]|0; - $409 = $408<<1; - $410 = (($407) + ($409))|0; - $411 = (($405) + ($410)|0); - $412 = HEAP8[$411>>0]|0; - $413 = $412&255; - $414 = $413 << 8; - $415 = HEAP32[$aData>>2]|0; - $416 = HEAP16[$cellOffset>>1]|0; - $417 = $416&65535; - $418 = HEAP32[$j>>2]|0; - $419 = $418<<1; - $420 = (($417) + ($419))|0; - $421 = (($415) + ($420)|0); - $422 = (($421) + 1|0); - $423 = HEAP8[$422>>0]|0; - $424 = $423&255; - $425 = $414 | $424; - $426 = $404 & $425; - $427 = (($402) + ($426)|0); - $428 = HEAP32[$nCell>>2]|0; - $429 = HEAP32[$apCell>>2]|0; - $430 = (($429) + ($428<<2)|0); - HEAP32[$430>>2] = $427; - $431 = HEAP32[$pOld>>2]|0; - $432 = HEAP32[$nCell>>2]|0; - $433 = HEAP32[$apCell>>2]|0; - $434 = (($433) + ($432<<2)|0); - $435 = HEAP32[$434>>2]|0; - $436 = (_cellSizePtr($431,$435)|0); - $437 = HEAP32[$nCell>>2]|0; - $438 = HEAP32[$szCell>>2]|0; - $439 = (($438) + ($437<<1)|0); - HEAP16[$439>>1] = $436; - $440 = HEAP32[$nCell>>2]|0; - $441 = (($440) + 1)|0; - HEAP32[$nCell>>2] = $441; - $442 = HEAP32[$j>>2]|0; - $443 = (($442) + 1)|0; - HEAP32[$j>>2] = $443; - } - } - } while(0); - $444 = HEAP32[$i>>2]|0; - $445 = HEAP32[$nOld>>2]|0; - $446 = (($445) - 1)|0; - $447 = ($444|0)<($446|0); - if ($447) { - $448 = HEAP32[$leafData>>2]|0; - $449 = ($448|0)!=(0); - if (!($449)) { - $450 = HEAP32[$i>>2]|0; - $451 = (($szNew) + ($450<<2)|0); - $452 = HEAP32[$451>>2]|0; - $453 = $452&65535; - HEAP16[$sz>>1] = $453; - $454 = HEAP16[$sz>>1]|0; - $455 = HEAP32[$nCell>>2]|0; - $456 = HEAP32[$szCell>>2]|0; - $457 = (($456) + ($455<<1)|0); - HEAP16[$457>>1] = $454; - $458 = HEAP32[$iSpace1>>2]|0; - $459 = HEAP32[$aSpace1>>2]|0; - $460 = (($459) + ($458)|0); - HEAP32[$pTemp>>2] = $460; - $461 = HEAP16[$sz>>1]|0; - $462 = $461&65535; - $463 = HEAP32[$iSpace1>>2]|0; - $464 = (($463) + ($462))|0; - HEAP32[$iSpace1>>2] = $464; - $465 = HEAP32[$pTemp>>2]|0; - $466 = HEAP32[$i>>2]|0; - $467 = (($apDiv) + ($466<<2)|0); - $468 = HEAP32[$467>>2]|0; - $469 = HEAP16[$sz>>1]|0; - $470 = $469&65535; - _memcpy(($465|0),($468|0),($470|0))|0; - $471 = HEAP32[$pTemp>>2]|0; - $472 = HEAP16[$leafCorrection>>1]|0; - $473 = $472&65535; - $474 = (($471) + ($473)|0); - $475 = HEAP32[$nCell>>2]|0; - $476 = HEAP32[$apCell>>2]|0; - $477 = (($476) + ($475<<2)|0); - HEAP32[$477>>2] = $474; - $478 = HEAP32[$nCell>>2]|0; - $479 = HEAP32[$szCell>>2]|0; - $480 = (($479) + ($478<<1)|0); - $481 = HEAP16[$480>>1]|0; - $482 = $481&65535; - $483 = HEAP16[$leafCorrection>>1]|0; - $484 = $483&65535; - $485 = (($482) - ($484))|0; - $486 = $485&65535; - $487 = HEAP32[$nCell>>2]|0; - $488 = HEAP32[$szCell>>2]|0; - $489 = (($488) + ($487<<1)|0); - HEAP16[$489>>1] = $486; - $490 = HEAP32[$pOld>>2]|0; - $491 = (($490) + 3|0); - $492 = HEAP8[$491>>0]|0; - $493 = ($492<<24>>24)!=(0); - $494 = HEAP32[$nCell>>2]|0; - if ($493) { - $502 = HEAP32[$szCell>>2]|0; - $503 = (($502) + ($494<<1)|0); - $504 = HEAP16[$503>>1]|0; - $505 = $504&65535; - $506 = ($505|0)<(4); - if ($506) { - $507 = HEAP32[$nCell>>2]|0; - $508 = HEAP32[$szCell>>2]|0; - $509 = (($508) + ($507<<1)|0); - HEAP16[$509>>1] = 4; - } - } else { - $495 = HEAP32[$apCell>>2]|0; - $496 = (($495) + ($494<<2)|0); - $497 = HEAP32[$496>>2]|0; - $498 = HEAP32[$pOld>>2]|0; - $499 = (($498) + 56|0); - $500 = HEAP32[$499>>2]|0; - $501 = (($500) + 8|0); - ;HEAP8[$497+0>>0]=HEAP8[$501+0>>0]|0;HEAP8[$497+1>>0]=HEAP8[$501+1>>0]|0;HEAP8[$497+2>>0]=HEAP8[$501+2>>0]|0;HEAP8[$497+3>>0]=HEAP8[$501+3>>0]|0; - } - $510 = HEAP32[$nCell>>2]|0; - $511 = (($510) + 1)|0; - HEAP32[$nCell>>2] = $511; - } - } - $512 = HEAP32[$i>>2]|0; - $513 = (($512) + 1)|0; - HEAP32[$i>>2] = $513; - } - $514 = (($324) + 36|0); - $515 = HEAP32[$514>>2]|0; - $516 = (($515) - 12)|0; - $517 = HEAP16[$leafCorrection>>1]|0; - $518 = $517&65535; - $519 = (($516) + ($518))|0; - HEAP32[$usableSpace>>2] = $519; - HEAP32[$i>>2] = 0; - HEAP32[$k>>2] = 0; - HEAP32[$subtotal>>2] = 0; - while(1) { - $520 = HEAP32[$i>>2]|0; - $521 = HEAP32[$nCell>>2]|0; - $522 = ($520|0)<($521|0); - if (!($522)) { - break; - } - $523 = HEAP32[$i>>2]|0; - $524 = HEAP32[$szCell>>2]|0; - $525 = (($524) + ($523<<1)|0); - $526 = HEAP16[$525>>1]|0; - $527 = $526&65535; - $528 = (($527) + 2)|0; - $529 = HEAP32[$subtotal>>2]|0; - $530 = (($529) + ($528))|0; - HEAP32[$subtotal>>2] = $530; - $531 = HEAP32[$subtotal>>2]|0; - $532 = HEAP32[$usableSpace>>2]|0; - $533 = ($531|0)>($532|0); - if ($533) { - $534 = HEAP32[$subtotal>>2]|0; - $535 = HEAP32[$i>>2]|0; - $536 = HEAP32[$szCell>>2]|0; - $537 = (($536) + ($535<<1)|0); - $538 = HEAP16[$537>>1]|0; - $539 = $538&65535; - $540 = (($534) - ($539))|0; - $541 = HEAP32[$k>>2]|0; - $542 = (($szNew) + ($541<<2)|0); - HEAP32[$542>>2] = $540; - $543 = HEAP32[$i>>2]|0; - $544 = HEAP32[$k>>2]|0; - $545 = (($cntNew) + ($544<<2)|0); - HEAP32[$545>>2] = $543; - $546 = HEAP32[$leafData>>2]|0; - $547 = ($546|0)!=(0); - if ($547) { - $548 = HEAP32[$i>>2]|0; - $549 = (($548) + -1)|0; - HEAP32[$i>>2] = $549; - } - HEAP32[$subtotal>>2] = 0; - $550 = HEAP32[$k>>2]|0; - $551 = (($550) + 1)|0; - HEAP32[$k>>2] = $551; - $552 = HEAP32[$k>>2]|0; - $553 = ($552|0)>(4); - if ($553) { - label = 51; - break; - } - } - $555 = HEAP32[$i>>2]|0; - $556 = (($555) + 1)|0; - HEAP32[$i>>2] = $556; - } - if ((label|0) == 51) { - $554 = (_sqlite3CorruptError(57526)|0); - HEAP32[$rc>>2] = $554; - break; - } - $557 = HEAP32[$subtotal>>2]|0; - $558 = HEAP32[$k>>2]|0; - $559 = (($szNew) + ($558<<2)|0); - HEAP32[$559>>2] = $557; - $560 = HEAP32[$nCell>>2]|0; - $561 = HEAP32[$k>>2]|0; - $562 = (($cntNew) + ($561<<2)|0); - HEAP32[$562>>2] = $560; - $563 = HEAP32[$k>>2]|0; - $564 = (($563) + 1)|0; - HEAP32[$k>>2] = $564; - $565 = HEAP32[$k>>2]|0; - $566 = (($565) - 1)|0; - HEAP32[$i>>2] = $566; - while(1) { - $567 = HEAP32[$i>>2]|0; - $568 = ($567|0)>(0); - if (!($568)) { - break; - } - $569 = HEAP32[$i>>2]|0; - $570 = (($szNew) + ($569<<2)|0); - $571 = HEAP32[$570>>2]|0; - HEAP32[$szRight>>2] = $571; - $572 = HEAP32[$i>>2]|0; - $573 = (($572) - 1)|0; - $574 = (($szNew) + ($573<<2)|0); - $575 = HEAP32[$574>>2]|0; - HEAP32[$szLeft>>2] = $575; - $576 = HEAP32[$i>>2]|0; - $577 = (($576) - 1)|0; - $578 = (($cntNew) + ($577<<2)|0); - $579 = HEAP32[$578>>2]|0; - $580 = (($579) - 1)|0; - HEAP32[$r>>2] = $580; - $581 = HEAP32[$r>>2]|0; - $582 = (($581) + 1)|0; - $583 = HEAP32[$leafData>>2]|0; - $584 = (($582) - ($583))|0; - HEAP32[$d>>2] = $584; - while(1) { - $585 = HEAP32[$szRight>>2]|0; - $586 = ($585|0)==(0); - if (!($586)) { - $587 = HEAP32[$5>>2]|0; - $588 = ($587|0)!=(0); - if ($588) { - break; - } - $589 = HEAP32[$szRight>>2]|0; - $590 = HEAP32[$d>>2]|0; - $591 = HEAP32[$szCell>>2]|0; - $592 = (($591) + ($590<<1)|0); - $593 = HEAP16[$592>>1]|0; - $594 = $593&65535; - $595 = (($589) + ($594))|0; - $596 = (($595) + 2)|0; - $597 = HEAP32[$szLeft>>2]|0; - $598 = HEAP32[$r>>2]|0; - $599 = HEAP32[$szCell>>2]|0; - $600 = (($599) + ($598<<1)|0); - $601 = HEAP16[$600>>1]|0; - $602 = $601&65535; - $603 = (($602) + 2)|0; - $604 = (($597) - ($603))|0; - $605 = ($596|0)<=($604|0); - if (!($605)) { - break; - } - } - $606 = HEAP32[$d>>2]|0; - $607 = HEAP32[$szCell>>2]|0; - $608 = (($607) + ($606<<1)|0); - $609 = HEAP16[$608>>1]|0; - $610 = $609&65535; - $611 = (($610) + 2)|0; - $612 = HEAP32[$szRight>>2]|0; - $613 = (($612) + ($611))|0; - HEAP32[$szRight>>2] = $613; - $614 = HEAP32[$r>>2]|0; - $615 = HEAP32[$szCell>>2]|0; - $616 = (($615) + ($614<<1)|0); - $617 = HEAP16[$616>>1]|0; - $618 = $617&65535; - $619 = (($618) + 2)|0; - $620 = HEAP32[$szLeft>>2]|0; - $621 = (($620) - ($619))|0; - HEAP32[$szLeft>>2] = $621; - $622 = HEAP32[$i>>2]|0; - $623 = (($622) - 1)|0; - $624 = (($cntNew) + ($623<<2)|0); - $625 = HEAP32[$624>>2]|0; - $626 = (($625) + -1)|0; - HEAP32[$624>>2] = $626; - $627 = HEAP32[$i>>2]|0; - $628 = (($627) - 1)|0; - $629 = (($cntNew) + ($628<<2)|0); - $630 = HEAP32[$629>>2]|0; - $631 = (($630) - 1)|0; - HEAP32[$r>>2] = $631; - $632 = HEAP32[$r>>2]|0; - $633 = (($632) + 1)|0; - $634 = HEAP32[$leafData>>2]|0; - $635 = (($633) - ($634))|0; - HEAP32[$d>>2] = $635; - } - $636 = HEAP32[$szRight>>2]|0; - $637 = HEAP32[$i>>2]|0; - $638 = (($szNew) + ($637<<2)|0); - HEAP32[$638>>2] = $636; - $639 = HEAP32[$szLeft>>2]|0; - $640 = HEAP32[$i>>2]|0; - $641 = (($640) - 1)|0; - $642 = (($szNew) + ($641<<2)|0); - HEAP32[$642>>2] = $639; - $643 = HEAP32[$i>>2]|0; - $644 = (($643) + -1)|0; - HEAP32[$i>>2] = $644; - } - $645 = HEAP32[$apOld>>2]|0; - $646 = (($645) + 72|0); - $647 = HEAP32[$646>>2]|0; - $648 = ($647>>>0)<=(1); - if ($648) { - $649 = (_sqlite3CorruptError(57588)|0); - HEAP32[$rc>>2] = $649; - break; - } - $650 = HEAP32[$apOld>>2]|0; - $651 = (($650) + 56|0); - $652 = HEAP32[$651>>2]|0; - $653 = HEAP8[$652>>0]|0; - $654 = $653&255; - HEAP32[$pageFlags>>2] = $654; - HEAP32[$i>>2] = 0; - while(1) { - $655 = HEAP32[$i>>2]|0; - $656 = HEAP32[$k>>2]|0; - $657 = ($655|0)<($656|0); - if (!($657)) { - break; - } - $658 = HEAP32[$i>>2]|0; - $659 = HEAP32[$nOld>>2]|0; - $660 = ($658|0)<($659|0); - if ($660) { - $661 = HEAP32[$i>>2]|0; - $662 = (($apOld) + ($661<<2)|0); - $663 = HEAP32[$662>>2]|0; - $664 = HEAP32[$i>>2]|0; - $665 = (($apNew) + ($664<<2)|0); - HEAP32[$665>>2] = $663; - HEAP32[$pNew>>2] = $663; - $666 = HEAP32[$i>>2]|0; - $667 = (($apOld) + ($666<<2)|0); - HEAP32[$667>>2] = 0; - $668 = HEAP32[$pNew>>2]|0; - $669 = (($668) + 68|0); - $670 = HEAP32[$669>>2]|0; - $671 = (_sqlite3PagerWrite($670)|0); - HEAP32[$rc>>2] = $671; - $672 = HEAP32[$nNew>>2]|0; - $673 = (($672) + 1)|0; - HEAP32[$nNew>>2] = $673; - $674 = HEAP32[$rc>>2]|0; - $675 = ($674|0)!=(0); - if ($675) { - break L32; - } - } else { - $676 = HEAP32[$pBt>>2]|0; - $677 = HEAP32[$5>>2]|0; - $678 = ($677|0)!=(0); - $679 = HEAP32[$pgno>>2]|0; - $680 = $678 ? 1 : $679; - $681 = (_allocateBtreePage($676,$pNew,$pgno,$680,0)|0); - HEAP32[$rc>>2] = $681; - $682 = HEAP32[$rc>>2]|0; - $683 = ($682|0)!=(0); - if ($683) { - break L32; - } - $684 = HEAP32[$pNew>>2]|0; - $685 = HEAP32[$i>>2]|0; - $686 = (($apNew) + ($685<<2)|0); - HEAP32[$686>>2] = $684; - $687 = HEAP32[$nNew>>2]|0; - $688 = (($687) + 1)|0; - HEAP32[$nNew>>2] = $688; - $689 = HEAP32[$pBt>>2]|0; - $690 = (($689) + 17|0); - $691 = HEAP8[$690>>0]|0; - $692 = ($691<<24>>24)!=(0); - if ($692) { - $693 = HEAP32[$pBt>>2]|0; - $694 = HEAP32[$pNew>>2]|0; - $695 = (($694) + 72|0); - $696 = HEAP32[$695>>2]|0; - $697 = HEAP32[$1>>2]|0; - $698 = (($697) + 72|0); - $699 = HEAP32[$698>>2]|0; - _ptrmapPut($693,$696,5,$699,$rc); - $700 = HEAP32[$rc>>2]|0; - $701 = ($700|0)!=(0); - if ($701) { - break L32; - } - } - } - $702 = HEAP32[$i>>2]|0; - $703 = (($702) + 1)|0; - HEAP32[$i>>2] = $703; - } - while(1) { - $704 = HEAP32[$i>>2]|0; - $705 = HEAP32[$nOld>>2]|0; - $706 = ($704|0)<($705|0); - if (!($706)) { - break; - } - $707 = HEAP32[$i>>2]|0; - $708 = (($apOld) + ($707<<2)|0); - $709 = HEAP32[$708>>2]|0; - _freePage($709,$rc); - $710 = HEAP32[$rc>>2]|0; - $711 = ($710|0)!=(0); - if ($711) { - break L32; - } - $712 = HEAP32[$i>>2]|0; - $713 = (($apOld) + ($712<<2)|0); - $714 = HEAP32[$713>>2]|0; - _releasePage($714); - $715 = HEAP32[$i>>2]|0; - $716 = (($apOld) + ($715<<2)|0); - HEAP32[$716>>2] = 0; - $717 = HEAP32[$i>>2]|0; - $718 = (($717) + 1)|0; - HEAP32[$i>>2] = $718; - } - HEAP32[$i>>2] = 0; - while(1) { - $719 = HEAP32[$i>>2]|0; - $720 = HEAP32[$k>>2]|0; - $721 = (($720) - 1)|0; - $722 = ($719|0)<($721|0); - if (!($722)) { - break; - } - $723 = HEAP32[$i>>2]|0; - $724 = (($apNew) + ($723<<2)|0); - $725 = HEAP32[$724>>2]|0; - $726 = (($725) + 72|0); - $727 = HEAP32[$726>>2]|0; - HEAP32[$minV>>2] = $727; - $728 = HEAP32[$i>>2]|0; - HEAP32[$minI>>2] = $728; - $729 = HEAP32[$i>>2]|0; - $730 = (($729) + 1)|0; - HEAP32[$j>>2] = $730; - while(1) { - $731 = HEAP32[$j>>2]|0; - $732 = HEAP32[$k>>2]|0; - $733 = ($731|0)<($732|0); - if (!($733)) { - break; - } - $734 = HEAP32[$j>>2]|0; - $735 = (($apNew) + ($734<<2)|0); - $736 = HEAP32[$735>>2]|0; - $737 = (($736) + 72|0); - $738 = HEAP32[$737>>2]|0; - $739 = HEAP32[$minV>>2]|0; - $740 = ($738>>>0)<($739>>>0); - if ($740) { - $741 = HEAP32[$j>>2]|0; - HEAP32[$minI>>2] = $741; - $742 = HEAP32[$j>>2]|0; - $743 = (($apNew) + ($742<<2)|0); - $744 = HEAP32[$743>>2]|0; - $745 = (($744) + 72|0); - $746 = HEAP32[$745>>2]|0; - HEAP32[$minV>>2] = $746; - } - $747 = HEAP32[$j>>2]|0; - $748 = (($747) + 1)|0; - HEAP32[$j>>2] = $748; - } - $749 = HEAP32[$minI>>2]|0; - $750 = HEAP32[$i>>2]|0; - $751 = ($749|0)>($750|0); - if ($751) { - $752 = HEAP32[$i>>2]|0; - $753 = (($apNew) + ($752<<2)|0); - $754 = HEAP32[$753>>2]|0; - HEAP32[$pT>>2] = $754; - $755 = HEAP32[$minI>>2]|0; - $756 = (($apNew) + ($755<<2)|0); - $757 = HEAP32[$756>>2]|0; - $758 = HEAP32[$i>>2]|0; - $759 = (($apNew) + ($758<<2)|0); - HEAP32[$759>>2] = $757; - $760 = HEAP32[$pT>>2]|0; - $761 = HEAP32[$minI>>2]|0; - $762 = (($apNew) + ($761<<2)|0); - HEAP32[$762>>2] = $760; - } - $763 = HEAP32[$i>>2]|0; - $764 = (($763) + 1)|0; - HEAP32[$i>>2] = $764; - } - $765 = HEAP32[$pRight>>2]|0; - $766 = HEAP32[$nNew>>2]|0; - $767 = (($766) - 1)|0; - $768 = (($apNew) + ($767<<2)|0); - $769 = HEAP32[$768>>2]|0; - $770 = (($769) + 72|0); - $771 = HEAP32[$770>>2]|0; - _sqlite3Put4byte($765,$771); - HEAP32[$j>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $772 = HEAP32[$i>>2]|0; - $773 = HEAP32[$nNew>>2]|0; - $774 = ($772|0)<($773|0); - if (!($774)) { - break; - } - $775 = HEAP32[$i>>2]|0; - $776 = (($apNew) + ($775<<2)|0); - $777 = HEAP32[$776>>2]|0; - HEAP32[$pNew1>>2] = $777; - $778 = HEAP32[$pNew1>>2]|0; - $779 = HEAP32[$pageFlags>>2]|0; - _zeroPage($778,$779); - $780 = HEAP32[$pNew1>>2]|0; - $781 = HEAP32[$i>>2]|0; - $782 = (($cntNew) + ($781<<2)|0); - $783 = HEAP32[$782>>2]|0; - $784 = HEAP32[$j>>2]|0; - $785 = (($783) - ($784))|0; - $786 = HEAP32[$j>>2]|0; - $787 = HEAP32[$apCell>>2]|0; - $788 = (($787) + ($786<<2)|0); - $789 = HEAP32[$j>>2]|0; - $790 = HEAP32[$szCell>>2]|0; - $791 = (($790) + ($789<<1)|0); - _assemblePage($780,$785,$788,$791); - $792 = HEAP32[$i>>2]|0; - $793 = (($cntNew) + ($792<<2)|0); - $794 = HEAP32[$793>>2]|0; - HEAP32[$j>>2] = $794; - $795 = HEAP32[$j>>2]|0; - $796 = HEAP32[$nCell>>2]|0; - $797 = ($795|0)<($796|0); - if ($797) { - $798 = HEAP32[$j>>2]|0; - $799 = HEAP32[$apCell>>2]|0; - $800 = (($799) + ($798<<2)|0); - $801 = HEAP32[$800>>2]|0; - HEAP32[$pCell>>2] = $801; - $802 = HEAP32[$j>>2]|0; - $803 = HEAP32[$szCell>>2]|0; - $804 = (($803) + ($802<<1)|0); - $805 = HEAP16[$804>>1]|0; - $806 = $805&65535; - $807 = HEAP16[$leafCorrection>>1]|0; - $808 = $807&65535; - $809 = (($806) + ($808))|0; - HEAP32[$sz3>>2] = $809; - $810 = HEAP32[$iOvflSpace>>2]|0; - $811 = HEAP32[$3>>2]|0; - $812 = (($811) + ($810)|0); - HEAP32[$pTemp2>>2] = $812; - $813 = HEAP32[$pNew1>>2]|0; - $814 = (($813) + 3|0); - $815 = HEAP8[$814>>0]|0; - $816 = ($815<<24>>24)!=(0); - do { - if ($816) { - $822 = HEAP32[$leafData>>2]|0; - $823 = ($822|0)!=(0); - if ($823) { - $824 = HEAP32[$j>>2]|0; - $825 = (($824) + -1)|0; - HEAP32[$j>>2] = $825; - $826 = HEAP32[$pNew1>>2]|0; - $827 = HEAP32[$j>>2]|0; - $828 = HEAP32[$apCell>>2]|0; - $829 = (($828) + ($827<<2)|0); - $830 = HEAP32[$829>>2]|0; - _btreeParseCellPtr($826,$830,$info); - $831 = HEAP32[$pTemp2>>2]|0; - HEAP32[$pCell>>2] = $831; - $832 = HEAP32[$pCell>>2]|0; - $833 = (($832) + 4|0); - $834 = $info; - $835 = $834; - $836 = HEAP32[$835>>2]|0; - $837 = (($834) + 4)|0; - $838 = $837; - $839 = HEAP32[$838>>2]|0; - $840 = (_sqlite3PutVarint($833,$836,$839)|0); - $841 = (4 + ($840))|0; - HEAP32[$sz3>>2] = $841; - HEAP32[$pTemp2>>2] = 0; - break; - } - $842 = HEAP32[$pCell>>2]|0; - $843 = (($842) + -4|0); - HEAP32[$pCell>>2] = $843; - $844 = HEAP32[$j>>2]|0; - $845 = HEAP32[$szCell>>2]|0; - $846 = (($845) + ($844<<1)|0); - $847 = HEAP16[$846>>1]|0; - $848 = $847&65535; - $849 = ($848|0)==(4); - if ($849) { - $850 = HEAP32[$1>>2]|0; - $851 = HEAP32[$pCell>>2]|0; - $852 = (_cellSizePtr($850,$851)|0); - $853 = $852&65535; - HEAP32[$sz3>>2] = $853; - } - } else { - $817 = HEAP32[$pNew1>>2]|0; - $818 = (($817) + 56|0); - $819 = HEAP32[$818>>2]|0; - $820 = (($819) + 8|0); - $821 = HEAP32[$pCell>>2]|0; - ;HEAP8[$820+0>>0]=HEAP8[$821+0>>0]|0;HEAP8[$820+1>>0]=HEAP8[$821+1>>0]|0;HEAP8[$820+2>>0]=HEAP8[$821+2>>0]|0;HEAP8[$820+3>>0]=HEAP8[$821+3>>0]|0; - } - } while(0); - $854 = HEAP32[$sz3>>2]|0; - $855 = HEAP32[$iOvflSpace>>2]|0; - $856 = (($855) + ($854))|0; - HEAP32[$iOvflSpace>>2] = $856; - $857 = HEAP32[$1>>2]|0; - $858 = HEAP32[$nxDiv>>2]|0; - $859 = HEAP32[$pCell>>2]|0; - $860 = HEAP32[$sz3>>2]|0; - $861 = HEAP32[$pTemp2>>2]|0; - $862 = HEAP32[$pNew1>>2]|0; - $863 = (($862) + 72|0); - $864 = HEAP32[$863>>2]|0; - _insertCell($857,$858,$859,$860,$861,$864,$rc); - $865 = HEAP32[$rc>>2]|0; - $866 = ($865|0)!=(0); - if ($866) { - break L32; - } - $867 = HEAP32[$j>>2]|0; - $868 = (($867) + 1)|0; - HEAP32[$j>>2] = $868; - $869 = HEAP32[$nxDiv>>2]|0; - $870 = (($869) + 1)|0; - HEAP32[$nxDiv>>2] = $870; - } - $871 = HEAP32[$i>>2]|0; - $872 = (($871) + 1)|0; - HEAP32[$i>>2] = $872; - } - $873 = HEAP32[$pageFlags>>2]|0; - $874 = $873 & 8; - $875 = ($874|0)==(0); - if ($875) { - $876 = HEAP32[$nOld>>2]|0; - $877 = (($876) - 1)|0; - $878 = (($apCopy) + ($877<<2)|0); - $879 = HEAP32[$878>>2]|0; - $880 = (($879) + 56|0); - $881 = HEAP32[$880>>2]|0; - $882 = (($881) + 8|0); - HEAP32[$zChild>>2] = $882; - $883 = HEAP32[$nNew>>2]|0; - $884 = (($883) - 1)|0; - $885 = (($apNew) + ($884<<2)|0); - $886 = HEAP32[$885>>2]|0; - $887 = (($886) + 56|0); - $888 = HEAP32[$887>>2]|0; - $889 = (($888) + 8|0); - $890 = HEAP32[$zChild>>2]|0; - ;HEAP8[$889+0>>0]=HEAP8[$890+0>>0]|0;HEAP8[$889+1>>0]=HEAP8[$890+1>>0]|0;HEAP8[$889+2>>0]=HEAP8[$890+2>>0]|0;HEAP8[$889+3>>0]=HEAP8[$890+3>>0]|0; - } - $891 = HEAP32[$4>>2]|0; - $892 = ($891|0)!=(0); - if ($892) { - $893 = HEAP32[$1>>2]|0; - $894 = (($893) + 16|0); - $895 = HEAP16[$894>>1]|0; - $896 = $895&65535; - $897 = ($896|0)==(0); - if ($897) { - $898 = HEAP32[$1>>2]|0; - $899 = (($898) + 5|0); - $900 = HEAP8[$899>>0]|0; - $901 = $900&255; - $902 = HEAP32[$apNew>>2]|0; - $903 = (($902) + 14|0); - $904 = HEAP16[$903>>1]|0; - $905 = $904&65535; - $906 = ($901|0)<=($905|0); - if ($906) { - $907 = HEAP32[$apNew>>2]|0; - $908 = HEAP32[$1>>2]|0; - _copyNodeContent($907,$908,$rc); - $909 = HEAP32[$apNew>>2]|0; - _freePage($909,$rc); - break; - } - } - } - $910 = HEAP32[$pBt>>2]|0; - $911 = (($910) + 17|0); - $912 = HEAP8[$911>>0]|0; - $913 = ($912<<24>>24)!=(0); - if ($913) { - $914 = HEAP32[$apNew>>2]|0; - HEAP32[$pNew4>>2] = $914; - $915 = HEAP32[$apCopy>>2]|0; - HEAP32[$pOld5>>2] = $915; - $916 = HEAP32[$pOld5>>2]|0; - $917 = (($916) + 1|0); - $918 = HEAP8[$917>>0]|0; - $919 = $918&255; - HEAP32[$nOverflow>>2] = $919; - $920 = HEAP32[$pOld5>>2]|0; - $921 = (($920) + 16|0); - $922 = HEAP16[$921>>1]|0; - $923 = $922&65535; - $924 = HEAP32[$nOverflow>>2]|0; - $925 = (($923) + ($924))|0; - HEAP32[$iNextOld>>2] = $925; - $926 = HEAP32[$nOverflow>>2]|0; - $927 = ($926|0)!=(0); - if ($927) { - $928 = HEAP32[$pOld5>>2]|0; - $929 = (($928) + 20|0); - $930 = HEAP16[$929>>1]|0; - $931 = $930&65535; - $932 = $931; - } else { - $932 = -1; - } - HEAP32[$iOverflow>>2] = $932; - HEAP32[$j>>2] = 0; - HEAP32[$k>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $933 = HEAP32[$i>>2]|0; - $934 = HEAP32[$nCell>>2]|0; - $935 = ($933|0)<($934|0); - if (!($935)) { - break; - } - HEAP32[$isDivider>>2] = 0; - while(1) { - $936 = HEAP32[$i>>2]|0; - $937 = HEAP32[$iNextOld>>2]|0; - $938 = ($936|0)==($937|0); - if (!($938)) { - break; - } - $939 = HEAP32[$j>>2]|0; - $940 = (($939) + 1)|0; - HEAP32[$j>>2] = $940; - $941 = (($apCopy) + ($940<<2)|0); - $942 = HEAP32[$941>>2]|0; - HEAP32[$pOld5>>2] = $942; - $943 = HEAP32[$i>>2]|0; - $944 = HEAP32[$leafData>>2]|0; - $945 = ($944|0)!=(0); - $946 = $945 ^ 1; - $947 = $946&1; - $948 = (($943) + ($947))|0; - $949 = HEAP32[$pOld5>>2]|0; - $950 = (($949) + 16|0); - $951 = HEAP16[$950>>1]|0; - $952 = $951&65535; - $953 = (($948) + ($952))|0; - $954 = HEAP32[$pOld5>>2]|0; - $955 = (($954) + 1|0); - $956 = HEAP8[$955>>0]|0; - $957 = $956&255; - $958 = (($953) + ($957))|0; - HEAP32[$iNextOld>>2] = $958; - $959 = HEAP32[$pOld5>>2]|0; - $960 = (($959) + 1|0); - $961 = HEAP8[$960>>0]|0; - $962 = ($961<<24>>24)!=(0); - if ($962) { - $963 = HEAP32[$pOld5>>2]|0; - $964 = (($963) + 1|0); - $965 = HEAP8[$964>>0]|0; - $966 = $965&255; - HEAP32[$nOverflow>>2] = $966; - $967 = HEAP32[$i>>2]|0; - $968 = HEAP32[$leafData>>2]|0; - $969 = ($968|0)!=(0); - $970 = $969 ^ 1; - $971 = $970&1; - $972 = (($967) + ($971))|0; - $973 = HEAP32[$pOld5>>2]|0; - $974 = (($973) + 20|0); - $975 = HEAP16[$974>>1]|0; - $976 = $975&65535; - $977 = (($972) + ($976))|0; - HEAP32[$iOverflow>>2] = $977; - } - $978 = HEAP32[$leafData>>2]|0; - $979 = ($978|0)!=(0); - $980 = $979 ^ 1; - $981 = $980&1; - HEAP32[$isDivider>>2] = $981; - } - $982 = HEAP32[$i>>2]|0; - $983 = HEAP32[$iOverflow>>2]|0; - $984 = ($982|0)==($983|0); - if ($984) { - HEAP32[$isDivider>>2] = 1; - $985 = HEAP32[$nOverflow>>2]|0; - $986 = (($985) + -1)|0; - HEAP32[$nOverflow>>2] = $986; - $987 = ($986|0)>(0); - if ($987) { - $988 = HEAP32[$iOverflow>>2]|0; - $989 = (($988) + 1)|0; - HEAP32[$iOverflow>>2] = $989; - } - } - $990 = HEAP32[$i>>2]|0; - $991 = HEAP32[$k>>2]|0; - $992 = (($cntNew) + ($991<<2)|0); - $993 = HEAP32[$992>>2]|0; - $994 = ($990|0)==($993|0); - if ($994) { - $995 = HEAP32[$k>>2]|0; - $996 = (($995) + 1)|0; - HEAP32[$k>>2] = $996; - $997 = (($apNew) + ($996<<2)|0); - $998 = HEAP32[$997>>2]|0; - HEAP32[$pNew4>>2] = $998; - $999 = HEAP32[$leafData>>2]|0; - $1000 = ($999|0)!=(0); - if ($1000) { - label = 117; - } - } else { - label = 117; - } - do { - if ((label|0) == 117) { - label = 0; - $1001 = HEAP32[$isDivider>>2]|0; - $1002 = ($1001|0)!=(0); - if (!($1002)) { - $1003 = HEAP32[$pOld5>>2]|0; - $1004 = (($1003) + 72|0); - $1005 = HEAP32[$1004>>2]|0; - $1006 = HEAP32[$pNew4>>2]|0; - $1007 = (($1006) + 72|0); - $1008 = HEAP32[$1007>>2]|0; - $1009 = ($1005|0)!=($1008|0); - if (!($1009)) { - break; - } - } - $1010 = HEAP16[$leafCorrection>>1]|0; - $1011 = ($1010<<16>>16)!=(0); - if (!($1011)) { - $1012 = HEAP32[$pBt>>2]|0; - $1013 = HEAP32[$i>>2]|0; - $1014 = HEAP32[$apCell>>2]|0; - $1015 = (($1014) + ($1013<<2)|0); - $1016 = HEAP32[$1015>>2]|0; - $1017 = (_sqlite3Get4byte($1016)|0); - $1018 = HEAP32[$pNew4>>2]|0; - $1019 = (($1018) + 72|0); - $1020 = HEAP32[$1019>>2]|0; - _ptrmapPut($1012,$1017,5,$1020,$rc); - } - $1021 = HEAP32[$i>>2]|0; - $1022 = HEAP32[$szCell>>2]|0; - $1023 = (($1022) + ($1021<<1)|0); - $1024 = HEAP16[$1023>>1]|0; - $1025 = $1024&65535; - $1026 = HEAP32[$pNew4>>2]|0; - $1027 = (($1026) + 10|0); - $1028 = HEAP16[$1027>>1]|0; - $1029 = $1028&65535; - $1030 = ($1025|0)>($1029|0); - if ($1030) { - $1031 = HEAP32[$pNew4>>2]|0; - $1032 = HEAP32[$i>>2]|0; - $1033 = HEAP32[$apCell>>2]|0; - $1034 = (($1033) + ($1032<<2)|0); - $1035 = HEAP32[$1034>>2]|0; - _ptrmapPutOvflPtr($1031,$1035,$rc); - } - } - } while(0); - $1036 = HEAP32[$i>>2]|0; - $1037 = (($1036) + 1)|0; - HEAP32[$i>>2] = $1037; - } - $1038 = HEAP16[$leafCorrection>>1]|0; - $1039 = ($1038<<16>>16)!=(0); - if (!($1039)) { - HEAP32[$i>>2] = 0; - while(1) { - $1040 = HEAP32[$i>>2]|0; - $1041 = HEAP32[$nNew>>2]|0; - $1042 = ($1040|0)<($1041|0); - if (!($1042)) { - break L32; - } - $1043 = HEAP32[$i>>2]|0; - $1044 = (($apNew) + ($1043<<2)|0); - $1045 = HEAP32[$1044>>2]|0; - $1046 = (($1045) + 56|0); - $1047 = HEAP32[$1046>>2]|0; - $1048 = (($1047) + 8|0); - $1049 = (_sqlite3Get4byte($1048)|0); - HEAP32[$key>>2] = $1049; - $1050 = HEAP32[$pBt>>2]|0; - $1051 = HEAP32[$key>>2]|0; - $1052 = HEAP32[$i>>2]|0; - $1053 = (($apNew) + ($1052<<2)|0); - $1054 = HEAP32[$1053>>2]|0; - $1055 = (($1054) + 72|0); - $1056 = HEAP32[$1055>>2]|0; - _ptrmapPut($1050,$1051,5,$1056,$rc); - $1057 = HEAP32[$i>>2]|0; - $1058 = (($1057) + 1)|0; - HEAP32[$i>>2] = $1058; - } - } - } - } - } while(0); - $1059 = HEAP32[$apCell>>2]|0; - _sqlite3ScratchFree($1059); - HEAP32[$i>>2] = 0; - while(1) { - $1060 = HEAP32[$i>>2]|0; - $1061 = HEAP32[$nOld>>2]|0; - $1062 = ($1060|0)<($1061|0); - if (!($1062)) { - break; - } - $1063 = HEAP32[$i>>2]|0; - $1064 = (($apOld) + ($1063<<2)|0); - $1065 = HEAP32[$1064>>2]|0; - _releasePage($1065); - $1066 = HEAP32[$i>>2]|0; - $1067 = (($1066) + 1)|0; - HEAP32[$i>>2] = $1067; - } - HEAP32[$i>>2] = 0; - while(1) { - $1068 = HEAP32[$i>>2]|0; - $1069 = HEAP32[$nNew>>2]|0; - $1070 = ($1068|0)<($1069|0); - if (!($1070)) { - break; - } - $1071 = HEAP32[$i>>2]|0; - $1072 = (($apNew) + ($1071<<2)|0); - $1073 = HEAP32[$1072>>2]|0; - _releasePage($1073); - $1074 = HEAP32[$i>>2]|0; - $1075 = (($1074) + 1)|0; - HEAP32[$i>>2] = $1075; - } - $1076 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $1076; - $1077 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($1077|0); -} -function _findOverflowCell($pPage,$iCell) { - $pPage = $pPage|0; - $iCell = $iCell|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $i = 0, $k = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $i = sp + 4|0; - $k = sp; - HEAP32[$1>>2] = $pPage; - HEAP32[$2>>2] = $iCell; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 1|0); - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = (($6) - 1)|0; - HEAP32[$i>>2] = $7; - while(1) { - $8 = HEAP32[$i>>2]|0; - $9 = ($8|0)>=(0); - if (!($9)) { - label = 8; - break; - } - $10 = HEAP32[$i>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 20|0); - $13 = (($12) + ($10<<1)|0); - $14 = HEAP16[$13>>1]|0; - $15 = $14&65535; - HEAP32[$k>>2] = $15; - $16 = HEAP32[$k>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = ($16|0)<=($17|0); - if ($18) { - $19 = HEAP32[$k>>2]|0; - $20 = HEAP32[$2>>2]|0; - $21 = ($19|0)==($20|0); - if ($21) { - label = 5; - break; - } - $27 = HEAP32[$2>>2]|0; - $28 = (($27) + -1)|0; - HEAP32[$2>>2] = $28; - } - $29 = HEAP32[$i>>2]|0; - $30 = (($29) + -1)|0; - HEAP32[$i>>2] = $30; - } - if ((label|0) == 5) { - $22 = HEAP32[$i>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 32|0); - $25 = (($24) + ($22<<2)|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$0>>2] = $26; - $59 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($59|0); - } - else if ((label|0) == 8) { - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 56|0); - $33 = HEAP32[$32>>2]|0; - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 18|0); - $36 = HEAP16[$35>>1]|0; - $37 = $36&65535; - $38 = HEAP32[$2>>2]|0; - $39 = $38<<1; - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 64|0); - $42 = HEAP32[$41>>2]|0; - $43 = (($42) + ($39)|0); - $44 = HEAP8[$43>>0]|0; - $45 = $44&255; - $46 = $45 << 8; - $47 = HEAP32[$2>>2]|0; - $48 = $47<<1; - $49 = HEAP32[$1>>2]|0; - $50 = (($49) + 64|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + ($48)|0); - $53 = (($52) + 1|0); - $54 = HEAP8[$53>>0]|0; - $55 = $54&255; - $56 = $46 | $55; - $57 = $37 & $56; - $58 = (($33) + ($57)|0); - HEAP32[$0>>2] = $58; - $59 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($59|0); - } - return 0|0; -} -function _assemblePage($pPage,$nCell,$apCell,$aSize) { - $pPage = $pPage|0; - $nCell = $nCell|0; - $apCell = $apCell|0; - $aSize = $aSize|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $cellbody = 0, $data = 0, $hdr = 0, $i = 0, $nUsable = 0, $pCellptr = 0, $sz = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $i = sp + 20|0; - $pCellptr = sp + 16|0; - $cellbody = sp + 12|0; - $data = sp + 8|0; - $hdr = sp + 4|0; - $nUsable = sp; - $sz = sp + 40|0; - HEAP32[$0>>2] = $pPage; - HEAP32[$1>>2] = $nCell; - HEAP32[$2>>2] = $apCell; - HEAP32[$3>>2] = $aSize; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 56|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$data>>2] = $6; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 5|0); - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - HEAP32[$hdr>>2] = $10; - $11 = HEAP32[$0>>2]|0; - $12 = (($11) + 52|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + 36|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$nUsable>>2] = $15; - $16 = HEAP32[$1>>2]|0; - $17 = $16<<1; - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 64|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($20) + ($17)|0); - HEAP32[$pCellptr>>2] = $21; - $22 = HEAP32[$nUsable>>2]|0; - HEAP32[$cellbody>>2] = $22; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) - 1)|0; - HEAP32[$i>>2] = $24; - while(1) { - $25 = HEAP32[$i>>2]|0; - $26 = ($25|0)>=(0); - if (!($26)) { - break; - } - $27 = HEAP32[$i>>2]|0; - $28 = HEAP32[$3>>2]|0; - $29 = (($28) + ($27<<1)|0); - $30 = HEAP16[$29>>1]|0; - HEAP16[$sz>>1] = $30; - $31 = HEAP32[$pCellptr>>2]|0; - $32 = (($31) + -2|0); - HEAP32[$pCellptr>>2] = $32; - $33 = HEAP16[$sz>>1]|0; - $34 = $33&65535; - $35 = HEAP32[$cellbody>>2]|0; - $36 = (($35) - ($34))|0; - HEAP32[$cellbody>>2] = $36; - $37 = HEAP32[$cellbody>>2]|0; - $38 = $37 >> 8; - $39 = $38&255; - $40 = HEAP32[$pCellptr>>2]|0; - HEAP8[$40>>0] = $39; - $41 = HEAP32[$cellbody>>2]|0; - $42 = $41&255; - $43 = HEAP32[$pCellptr>>2]|0; - $44 = (($43) + 1|0); - HEAP8[$44>>0] = $42; - $45 = HEAP32[$cellbody>>2]|0; - $46 = HEAP32[$data>>2]|0; - $47 = (($46) + ($45)|0); - $48 = HEAP32[$i>>2]|0; - $49 = HEAP32[$2>>2]|0; - $50 = (($49) + ($48<<2)|0); - $51 = HEAP32[$50>>2]|0; - $52 = HEAP16[$sz>>1]|0; - $53 = $52&65535; - _memcpy(($47|0),($51|0),($53|0))|0; - $54 = HEAP32[$i>>2]|0; - $55 = (($54) + -1)|0; - HEAP32[$i>>2] = $55; - } - $56 = HEAP32[$1>>2]|0; - $57 = $56 >> 8; - $58 = $57&255; - $59 = HEAP32[$hdr>>2]|0; - $60 = (($59) + 3)|0; - $61 = HEAP32[$data>>2]|0; - $62 = (($61) + ($60)|0); - HEAP8[$62>>0] = $58; - $63 = HEAP32[$1>>2]|0; - $64 = $63&255; - $65 = HEAP32[$hdr>>2]|0; - $66 = (($65) + 3)|0; - $67 = HEAP32[$data>>2]|0; - $68 = (($67) + ($66)|0); - $69 = (($68) + 1|0); - HEAP8[$69>>0] = $64; - $70 = HEAP32[$cellbody>>2]|0; - $71 = $70 >> 8; - $72 = $71&255; - $73 = HEAP32[$hdr>>2]|0; - $74 = (($73) + 5)|0; - $75 = HEAP32[$data>>2]|0; - $76 = (($75) + ($74)|0); - HEAP8[$76>>0] = $72; - $77 = HEAP32[$cellbody>>2]|0; - $78 = $77&255; - $79 = HEAP32[$hdr>>2]|0; - $80 = (($79) + 5)|0; - $81 = HEAP32[$data>>2]|0; - $82 = (($81) + ($80)|0); - $83 = (($82) + 1|0); - HEAP8[$83>>0] = $78; - $84 = HEAP32[$1>>2]|0; - $85 = $84<<1; - $86 = HEAP32[$nUsable>>2]|0; - $87 = (($85) + ($86))|0; - $88 = HEAP32[$cellbody>>2]|0; - $89 = (($87) - ($88))|0; - $90 = HEAP32[$0>>2]|0; - $91 = (($90) + 14|0); - $92 = HEAP16[$91>>1]|0; - $93 = $92&65535; - $94 = (($93) - ($89))|0; - $95 = $94&65535; - HEAP16[$91>>1] = $95; - $96 = HEAP32[$1>>2]|0; - $97 = $96&65535; - $98 = HEAP32[$0>>2]|0; - $99 = (($98) + 16|0); - HEAP16[$99>>1] = $97; - STACKTOP = sp;return; -} -function _copyNodeContent($pFrom,$pTo,$pRC) { - $pFrom = $pFrom|0; - $pTo = $pTo|0; - $pRC = $pRC|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; - var $aFrom = 0, $aTo = 0, $iData = 0, $iFromHdr = 0, $iToHdr = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $pBt = sp + 24|0; - $aFrom = sp + 20|0; - $aTo = sp + 16|0; - $iFromHdr = sp + 12|0; - $iToHdr = sp + 8|0; - $rc = sp + 4|0; - $iData = sp; - HEAP32[$0>>2] = $pFrom; - HEAP32[$1>>2] = $pTo; - HEAP32[$2>>2] = $pRC; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)==(0); - if (!($5)) { - STACKTOP = sp;return; - } - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 52|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pBt>>2] = $8; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 56|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$aFrom>>2] = $11; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 56|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$aTo>>2] = $14; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 5|0); - $17 = HEAP8[$16>>0]|0; - $18 = $17&255; - HEAP32[$iFromHdr>>2] = $18; - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 72|0); - $21 = HEAP32[$20>>2]|0; - $22 = ($21|0)==(1); - $23 = $22 ? 100 : 0; - HEAP32[$iToHdr>>2] = $23; - $24 = HEAP32[$iFromHdr>>2]|0; - $25 = (($24) + 5)|0; - $26 = HEAP32[$aFrom>>2]|0; - $27 = (($26) + ($25)|0); - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = $29 << 8; - $31 = HEAP32[$iFromHdr>>2]|0; - $32 = (($31) + 5)|0; - $33 = HEAP32[$aFrom>>2]|0; - $34 = (($33) + ($32)|0); - $35 = (($34) + 1|0); - $36 = HEAP8[$35>>0]|0; - $37 = $36&255; - $38 = $30 | $37; - HEAP32[$iData>>2] = $38; - $39 = HEAP32[$iData>>2]|0; - $40 = HEAP32[$aTo>>2]|0; - $41 = (($40) + ($39)|0); - $42 = HEAP32[$iData>>2]|0; - $43 = HEAP32[$aFrom>>2]|0; - $44 = (($43) + ($42)|0); - $45 = HEAP32[$pBt>>2]|0; - $46 = (($45) + 36|0); - $47 = HEAP32[$46>>2]|0; - $48 = HEAP32[$iData>>2]|0; - $49 = (($47) - ($48))|0; - _memcpy(($41|0),($44|0),($49|0))|0; - $50 = HEAP32[$iToHdr>>2]|0; - $51 = HEAP32[$aTo>>2]|0; - $52 = (($51) + ($50)|0); - $53 = HEAP32[$iFromHdr>>2]|0; - $54 = HEAP32[$aFrom>>2]|0; - $55 = (($54) + ($53)|0); - $56 = HEAP32[$0>>2]|0; - $57 = (($56) + 12|0); - $58 = HEAP16[$57>>1]|0; - $59 = $58&65535; - $60 = HEAP32[$0>>2]|0; - $61 = (($60) + 16|0); - $62 = HEAP16[$61>>1]|0; - $63 = $62&65535; - $64 = $63<<1; - $65 = (($59) + ($64))|0; - _memcpy(($52|0),($55|0),($65|0))|0; - $66 = HEAP32[$1>>2]|0; - HEAP8[$66>>0] = 0; - $67 = HEAP32[$1>>2]|0; - $68 = (_btreeInitPage($67)|0); - HEAP32[$rc>>2] = $68; - $69 = HEAP32[$rc>>2]|0; - $70 = ($69|0)!=(0); - if ($70) { - $71 = HEAP32[$rc>>2]|0; - $72 = HEAP32[$2>>2]|0; - HEAP32[$72>>2] = $71; - STACKTOP = sp;return; - } - $73 = HEAP32[$pBt>>2]|0; - $74 = (($73) + 17|0); - $75 = HEAP8[$74>>0]|0; - $76 = ($75<<24>>24)!=(0); - if (!($76)) { - STACKTOP = sp;return; - } - $77 = HEAP32[$1>>2]|0; - $78 = (_setChildPtrmaps($77)|0); - $79 = HEAP32[$2>>2]|0; - HEAP32[$79>>2] = $78; - STACKTOP = sp;return; -} -function _allocateSpace($pPage,$nByte,$pIdx) { - $pPage = $pPage|0; - $nByte = $nByte|0; - $pIdx = $pIdx|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; - var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; - var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; - var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; - var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr = 0; - var $data = 0, $gap = 0, $hdr = 0, $nFrag = 0, $pc = 0, $rc = 0, $size = 0, $top = 0, $usableSize = 0, $x = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 56|0; - $1 = sp + 52|0; - $2 = sp + 48|0; - $3 = sp + 44|0; - $hdr = sp + 40|0; - $data = sp + 36|0; - $nFrag = sp + 32|0; - $top = sp + 28|0; - $gap = sp + 24|0; - $rc = sp + 20|0; - $usableSize = sp + 16|0; - $pc = sp + 12|0; - $addr = sp + 8|0; - $size = sp + 4|0; - $x = sp; - HEAP32[$1>>2] = $pPage; - HEAP32[$2>>2] = $nByte; - HEAP32[$3>>2] = $pIdx; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 5|0); - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - HEAP32[$hdr>>2] = $7; - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 56|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$data>>2] = $10; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 52|0); - $13 = HEAP32[$12>>2]|0; - $14 = (($13) + 36|0); - $15 = HEAP32[$14>>2]|0; - HEAP32[$usableSize>>2] = $15; - $16 = HEAP32[$hdr>>2]|0; - $17 = (($16) + 7)|0; - $18 = HEAP32[$data>>2]|0; - $19 = (($18) + ($17)|0); - $20 = HEAP8[$19>>0]|0; - $21 = $20&255; - HEAP32[$nFrag>>2] = $21; - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 12|0); - $24 = HEAP16[$23>>1]|0; - $25 = $24&65535; - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 16|0); - $28 = HEAP16[$27>>1]|0; - $29 = $28&65535; - $30 = $29<<1; - $31 = (($25) + ($30))|0; - HEAP32[$gap>>2] = $31; - $32 = HEAP32[$hdr>>2]|0; - $33 = (($32) + 5)|0; - $34 = HEAP32[$data>>2]|0; - $35 = (($34) + ($33)|0); - $36 = HEAP8[$35>>0]|0; - $37 = $36&255; - $38 = $37 << 8; - $39 = HEAP32[$hdr>>2]|0; - $40 = (($39) + 5)|0; - $41 = HEAP32[$data>>2]|0; - $42 = (($41) + ($40)|0); - $43 = (($42) + 1|0); - $44 = HEAP8[$43>>0]|0; - $45 = $44&255; - $46 = $38 | $45; - $47 = (($46) - 1)|0; - $48 = $47 & 65535; - $49 = (($48) + 1)|0; - HEAP32[$top>>2] = $49; - $50 = HEAP32[$gap>>2]|0; - $51 = HEAP32[$top>>2]|0; - $52 = ($50|0)>($51|0); - if ($52) { - $53 = (_sqlite3CorruptError(52373)|0); - HEAP32[$0>>2] = $53; - $218 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($218|0); - } - $54 = HEAP32[$nFrag>>2]|0; - $55 = ($54|0)>=(60); - L5: do { - if ($55) { - $56 = HEAP32[$1>>2]|0; - $57 = (_defragmentPage($56)|0); - HEAP32[$rc>>2] = $57; - $58 = HEAP32[$rc>>2]|0; - $59 = ($58|0)!=(0); - if (!($59)) { - $61 = HEAP32[$hdr>>2]|0; - $62 = (($61) + 5)|0; - $63 = HEAP32[$data>>2]|0; - $64 = (($63) + ($62)|0); - $65 = HEAP8[$64>>0]|0; - $66 = $65&255; - $67 = $66 << 8; - $68 = HEAP32[$hdr>>2]|0; - $69 = (($68) + 5)|0; - $70 = HEAP32[$data>>2]|0; - $71 = (($70) + ($69)|0); - $72 = (($71) + 1|0); - $73 = HEAP8[$72>>0]|0; - $74 = $73&255; - $75 = $67 | $74; - $76 = (($75) - 1)|0; - $77 = $76 & 65535; - $78 = (($77) + 1)|0; - HEAP32[$top>>2] = $78; - break; - } - $60 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $60; - $218 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($218|0); - } else { - $79 = HEAP32[$gap>>2]|0; - $80 = (($79) + 2)|0; - $81 = HEAP32[$top>>2]|0; - $82 = ($80|0)<=($81|0); - if ($82) { - $83 = HEAP32[$hdr>>2]|0; - $84 = (($83) + 1)|0; - HEAP32[$addr>>2] = $84; - while(1) { - $85 = HEAP32[$addr>>2]|0; - $86 = HEAP32[$data>>2]|0; - $87 = (($86) + ($85)|0); - $88 = HEAP8[$87>>0]|0; - $89 = $88&255; - $90 = $89 << 8; - $91 = HEAP32[$addr>>2]|0; - $92 = HEAP32[$data>>2]|0; - $93 = (($92) + ($91)|0); - $94 = (($93) + 1|0); - $95 = HEAP8[$94>>0]|0; - $96 = $95&255; - $97 = $90 | $96; - HEAP32[$pc>>2] = $97; - $98 = ($97|0)>(0); - if (!($98)) { - break L5; - } - $99 = HEAP32[$pc>>2]|0; - $100 = HEAP32[$usableSize>>2]|0; - $101 = (($100) - 4)|0; - $102 = ($99|0)>($101|0); - if ($102) { - label = 12; - break; - } - $103 = HEAP32[$pc>>2]|0; - $104 = HEAP32[$addr>>2]|0; - $105 = (($104) + 4)|0; - $106 = ($103|0)<($105|0); - if ($106) { - label = 12; - break; - } - $108 = HEAP32[$pc>>2]|0; - $109 = (($108) + 2)|0; - $110 = HEAP32[$data>>2]|0; - $111 = (($110) + ($109)|0); - $112 = HEAP8[$111>>0]|0; - $113 = $112&255; - $114 = $113 << 8; - $115 = HEAP32[$pc>>2]|0; - $116 = (($115) + 2)|0; - $117 = HEAP32[$data>>2]|0; - $118 = (($117) + ($116)|0); - $119 = (($118) + 1|0); - $120 = HEAP8[$119>>0]|0; - $121 = $120&255; - $122 = $114 | $121; - HEAP32[$size>>2] = $122; - $123 = HEAP32[$size>>2]|0; - $124 = HEAP32[$2>>2]|0; - $125 = ($123|0)>=($124|0); - if ($125) { - break; - } - $169 = HEAP32[$pc>>2]|0; - HEAP32[$addr>>2] = $169; - } - if ((label|0) == 12) { - $107 = (_sqlite3CorruptError(52392)|0); - HEAP32[$0>>2] = $107; - $218 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($218|0); - } - $126 = HEAP32[$size>>2]|0; - $127 = HEAP32[$2>>2]|0; - $128 = (($126) - ($127))|0; - HEAP32[$x>>2] = $128; - $129 = HEAP32[$x>>2]|0; - $130 = ($129|0)<(4); - do { - if ($130) { - $131 = HEAP32[$addr>>2]|0; - $132 = HEAP32[$data>>2]|0; - $133 = (($132) + ($131)|0); - $134 = HEAP32[$pc>>2]|0; - $135 = HEAP32[$data>>2]|0; - $136 = (($135) + ($134)|0); - ;HEAP8[$133+0>>0]=HEAP8[$136+0>>0]|0;HEAP8[$133+1>>0]=HEAP8[$136+1>>0]|0; - $137 = HEAP32[$nFrag>>2]|0; - $138 = HEAP32[$x>>2]|0; - $139 = (($137) + ($138))|0; - $140 = $139&255; - $141 = HEAP32[$hdr>>2]|0; - $142 = (($141) + 7)|0; - $143 = HEAP32[$data>>2]|0; - $144 = (($143) + ($142)|0); - HEAP8[$144>>0] = $140; - } else { - $145 = HEAP32[$size>>2]|0; - $146 = HEAP32[$pc>>2]|0; - $147 = (($145) + ($146))|0; - $148 = HEAP32[$usableSize>>2]|0; - $149 = ($147|0)>($148|0); - if (!($149)) { - $151 = HEAP32[$x>>2]|0; - $152 = $151 >> 8; - $153 = $152&255; - $154 = HEAP32[$pc>>2]|0; - $155 = (($154) + 2)|0; - $156 = HEAP32[$data>>2]|0; - $157 = (($156) + ($155)|0); - HEAP8[$157>>0] = $153; - $158 = HEAP32[$x>>2]|0; - $159 = $158&255; - $160 = HEAP32[$pc>>2]|0; - $161 = (($160) + 2)|0; - $162 = HEAP32[$data>>2]|0; - $163 = (($162) + ($161)|0); - $164 = (($163) + 1|0); - HEAP8[$164>>0] = $159; - break; - } - $150 = (_sqlite3CorruptError(52405)|0); - HEAP32[$0>>2] = $150; - $218 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($218|0); - } - } while(0); - $165 = HEAP32[$pc>>2]|0; - $166 = HEAP32[$x>>2]|0; - $167 = (($165) + ($166))|0; - $168 = HEAP32[$3>>2]|0; - HEAP32[$168>>2] = $167; - HEAP32[$0>>2] = 0; - $218 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($218|0); - } - } - } while(0); - $170 = HEAP32[$gap>>2]|0; - $171 = (($170) + 2)|0; - $172 = HEAP32[$2>>2]|0; - $173 = (($171) + ($172))|0; - $174 = HEAP32[$top>>2]|0; - $175 = ($173|0)>($174|0); - do { - if ($175) { - $176 = HEAP32[$1>>2]|0; - $177 = (_defragmentPage($176)|0); - HEAP32[$rc>>2] = $177; - $178 = HEAP32[$rc>>2]|0; - $179 = ($178|0)!=(0); - if (!($179)) { - $181 = HEAP32[$hdr>>2]|0; - $182 = (($181) + 5)|0; - $183 = HEAP32[$data>>2]|0; - $184 = (($183) + ($182)|0); - $185 = HEAP8[$184>>0]|0; - $186 = $185&255; - $187 = $186 << 8; - $188 = HEAP32[$hdr>>2]|0; - $189 = (($188) + 5)|0; - $190 = HEAP32[$data>>2]|0; - $191 = (($190) + ($189)|0); - $192 = (($191) + 1|0); - $193 = HEAP8[$192>>0]|0; - $194 = $193&255; - $195 = $187 | $194; - $196 = (($195) - 1)|0; - $197 = $196 & 65535; - $198 = (($197) + 1)|0; - HEAP32[$top>>2] = $198; - break; - } - $180 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $180; - $218 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($218|0); - } - } while(0); - $199 = HEAP32[$2>>2]|0; - $200 = HEAP32[$top>>2]|0; - $201 = (($200) - ($199))|0; - HEAP32[$top>>2] = $201; - $202 = HEAP32[$top>>2]|0; - $203 = $202 >> 8; - $204 = $203&255; - $205 = HEAP32[$hdr>>2]|0; - $206 = (($205) + 5)|0; - $207 = HEAP32[$data>>2]|0; - $208 = (($207) + ($206)|0); - HEAP8[$208>>0] = $204; - $209 = HEAP32[$top>>2]|0; - $210 = $209&255; - $211 = HEAP32[$hdr>>2]|0; - $212 = (($211) + 5)|0; - $213 = HEAP32[$data>>2]|0; - $214 = (($213) + ($212)|0); - $215 = (($214) + 1|0); - HEAP8[$215>>0] = $210; - $216 = HEAP32[$top>>2]|0; - $217 = HEAP32[$3>>2]|0; - HEAP32[$217>>2] = $216; - HEAP32[$0>>2] = 0; - $218 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($218|0); -} -function _defragmentPage($pPage) { - $pPage = $pPage|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $cbrk = 0, $cellOffset = 0, $data = 0, $hdr = 0, $i = 0, $iCellFirst = 0, $iCellLast = 0, $nCell = 0, $pAddr = 0, $pc = 0, $size = 0, $temp = 0, $usableSize = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 56|0; - $1 = sp + 52|0; - $i = sp + 48|0; - $pc = sp + 44|0; - $hdr = sp + 40|0; - $size = sp + 36|0; - $usableSize = sp + 32|0; - $cellOffset = sp + 28|0; - $cbrk = sp + 24|0; - $nCell = sp + 20|0; - $data = sp + 16|0; - $temp = sp + 12|0; - $iCellFirst = sp + 8|0; - $iCellLast = sp + 4|0; - $pAddr = sp; - HEAP32[$1>>2] = $pPage; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 52|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$4>>2]|0; - $6 = (_sqlite3PagerTempSpace($5)|0); - HEAP32[$temp>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 56|0); - $9 = HEAP32[$8>>2]|0; - HEAP32[$data>>2] = $9; - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 5|0); - $12 = HEAP8[$11>>0]|0; - $13 = $12&255; - HEAP32[$hdr>>2] = $13; - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 12|0); - $16 = HEAP16[$15>>1]|0; - $17 = $16&65535; - HEAP32[$cellOffset>>2] = $17; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 16|0); - $20 = HEAP16[$19>>1]|0; - $21 = $20&65535; - HEAP32[$nCell>>2] = $21; - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 52|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + 36|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$usableSize>>2] = $26; - $27 = HEAP32[$hdr>>2]|0; - $28 = (($27) + 5)|0; - $29 = HEAP32[$data>>2]|0; - $30 = (($29) + ($28)|0); - $31 = HEAP8[$30>>0]|0; - $32 = $31&255; - $33 = $32 << 8; - $34 = HEAP32[$hdr>>2]|0; - $35 = (($34) + 5)|0; - $36 = HEAP32[$data>>2]|0; - $37 = (($36) + ($35)|0); - $38 = (($37) + 1|0); - $39 = HEAP8[$38>>0]|0; - $40 = $39&255; - $41 = $33 | $40; - HEAP32[$cbrk>>2] = $41; - $42 = HEAP32[$cbrk>>2]|0; - $43 = HEAP32[$temp>>2]|0; - $44 = (($43) + ($42)|0); - $45 = HEAP32[$cbrk>>2]|0; - $46 = HEAP32[$data>>2]|0; - $47 = (($46) + ($45)|0); - $48 = HEAP32[$usableSize>>2]|0; - $49 = HEAP32[$cbrk>>2]|0; - $50 = (($48) - ($49))|0; - _memcpy(($44|0),($47|0),($50|0))|0; - $51 = HEAP32[$usableSize>>2]|0; - HEAP32[$cbrk>>2] = $51; - $52 = HEAP32[$cellOffset>>2]|0; - $53 = HEAP32[$nCell>>2]|0; - $54 = $53<<1; - $55 = (($52) + ($54))|0; - HEAP32[$iCellFirst>>2] = $55; - $56 = HEAP32[$usableSize>>2]|0; - $57 = (($56) - 4)|0; - HEAP32[$iCellLast>>2] = $57; - HEAP32[$i>>2] = 0; - while(1) { - $58 = HEAP32[$i>>2]|0; - $59 = HEAP32[$nCell>>2]|0; - $60 = ($58|0)<($59|0); - if (!($60)) { - label = 10; - break; - } - $61 = HEAP32[$cellOffset>>2]|0; - $62 = HEAP32[$i>>2]|0; - $63 = $62<<1; - $64 = (($61) + ($63))|0; - $65 = HEAP32[$data>>2]|0; - $66 = (($65) + ($64)|0); - HEAP32[$pAddr>>2] = $66; - $67 = HEAP32[$pAddr>>2]|0; - $68 = HEAP8[$67>>0]|0; - $69 = $68&255; - $70 = $69 << 8; - $71 = HEAP32[$pAddr>>2]|0; - $72 = (($71) + 1|0); - $73 = HEAP8[$72>>0]|0; - $74 = $73&255; - $75 = $70 | $74; - HEAP32[$pc>>2] = $75; - $76 = HEAP32[$pc>>2]|0; - $77 = HEAP32[$iCellFirst>>2]|0; - $78 = ($76|0)<($77|0); - if ($78) { - label = 5; - break; - } - $79 = HEAP32[$pc>>2]|0; - $80 = HEAP32[$iCellLast>>2]|0; - $81 = ($79|0)>($80|0); - if ($81) { - label = 5; - break; - } - $83 = HEAP32[$1>>2]|0; - $84 = HEAP32[$pc>>2]|0; - $85 = HEAP32[$temp>>2]|0; - $86 = (($85) + ($84)|0); - $87 = (_cellSizePtr($83,$86)|0); - $88 = $87&65535; - HEAP32[$size>>2] = $88; - $89 = HEAP32[$size>>2]|0; - $90 = HEAP32[$cbrk>>2]|0; - $91 = (($90) - ($89))|0; - HEAP32[$cbrk>>2] = $91; - $92 = HEAP32[$cbrk>>2]|0; - $93 = HEAP32[$iCellFirst>>2]|0; - $94 = ($92|0)<($93|0); - if ($94) { - label = 8; - break; - } - $95 = HEAP32[$pc>>2]|0; - $96 = HEAP32[$size>>2]|0; - $97 = (($95) + ($96))|0; - $98 = HEAP32[$usableSize>>2]|0; - $99 = ($97|0)>($98|0); - if ($99) { - label = 8; - break; - } - $101 = HEAP32[$cbrk>>2]|0; - $102 = HEAP32[$data>>2]|0; - $103 = (($102) + ($101)|0); - $104 = HEAP32[$pc>>2]|0; - $105 = HEAP32[$temp>>2]|0; - $106 = (($105) + ($104)|0); - $107 = HEAP32[$size>>2]|0; - _memcpy(($103|0),($106|0),($107|0))|0; - $108 = HEAP32[$cbrk>>2]|0; - $109 = $108 >> 8; - $110 = $109&255; - $111 = HEAP32[$pAddr>>2]|0; - HEAP8[$111>>0] = $110; - $112 = HEAP32[$cbrk>>2]|0; - $113 = $112&255; - $114 = HEAP32[$pAddr>>2]|0; - $115 = (($114) + 1|0); - HEAP8[$115>>0] = $113; - $116 = HEAP32[$i>>2]|0; - $117 = (($116) + 1)|0; - HEAP32[$i>>2] = $117; - } - if ((label|0) == 5) { - $82 = (_sqlite3CorruptError(52304)|0); - HEAP32[$0>>2] = $82; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - else if ((label|0) == 8) { - $100 = (_sqlite3CorruptError(52316)|0); - HEAP32[$0>>2] = $100; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - else if ((label|0) == 10) { - $118 = HEAP32[$cbrk>>2]|0; - $119 = $118 >> 8; - $120 = $119&255; - $121 = HEAP32[$hdr>>2]|0; - $122 = (($121) + 5)|0; - $123 = HEAP32[$data>>2]|0; - $124 = (($123) + ($122)|0); - HEAP8[$124>>0] = $120; - $125 = HEAP32[$cbrk>>2]|0; - $126 = $125&255; - $127 = HEAP32[$hdr>>2]|0; - $128 = (($127) + 5)|0; - $129 = HEAP32[$data>>2]|0; - $130 = (($129) + ($128)|0); - $131 = (($130) + 1|0); - HEAP8[$131>>0] = $126; - $132 = HEAP32[$hdr>>2]|0; - $133 = (($132) + 1)|0; - $134 = HEAP32[$data>>2]|0; - $135 = (($134) + ($133)|0); - HEAP8[$135>>0] = 0; - $136 = HEAP32[$hdr>>2]|0; - $137 = (($136) + 2)|0; - $138 = HEAP32[$data>>2]|0; - $139 = (($138) + ($137)|0); - HEAP8[$139>>0] = 0; - $140 = HEAP32[$hdr>>2]|0; - $141 = (($140) + 7)|0; - $142 = HEAP32[$data>>2]|0; - $143 = (($142) + ($141)|0); - HEAP8[$143>>0] = 0; - $144 = HEAP32[$iCellFirst>>2]|0; - $145 = HEAP32[$data>>2]|0; - $146 = (($145) + ($144)|0); - $147 = HEAP32[$cbrk>>2]|0; - $148 = HEAP32[$iCellFirst>>2]|0; - $149 = (($147) - ($148))|0; - _memset(($146|0),0,($149|0))|0; - $150 = HEAP32[$cbrk>>2]|0; - $151 = HEAP32[$iCellFirst>>2]|0; - $152 = (($150) - ($151))|0; - $153 = HEAP32[$1>>2]|0; - $154 = (($153) + 14|0); - $155 = HEAP16[$154>>1]|0; - $156 = $155&65535; - $157 = ($152|0)!=($156|0); - if ($157) { - $158 = (_sqlite3CorruptError(52333)|0); - HEAP32[$0>>2] = $158; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } else { - HEAP32[$0>>2] = 0; - $159 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($159|0); - } - } - return 0|0; -} -function _sqlite3PagerTempSpace($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 200|0); - $3 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _freeSpace($pPage,$start,$size) { - $pPage = $pPage|0; - $start = $start|0; - $size = $size|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; - var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; - var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; - var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; - var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; - var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; - var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr = 0; - var $data = 0, $frag = 0, $hdr = 0, $iLast = 0, $or$cond = 0, $pbegin = 0, $pnext = 0, $psize = 0, $top = 0, $x = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 52|0; - $1 = sp + 48|0; - $2 = sp + 44|0; - $3 = sp + 40|0; - $addr = sp + 36|0; - $pbegin = sp + 32|0; - $hdr = sp + 28|0; - $iLast = sp + 24|0; - $data = sp + 20|0; - $pnext = sp + 16|0; - $psize = sp + 12|0; - $x = sp + 8|0; - $frag = sp + 4|0; - $top = sp; - HEAP32[$1>>2] = $pPage; - HEAP32[$2>>2] = $start; - HEAP32[$3>>2] = $size; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 56|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$data>>2] = $6; - $7 = HEAP32[$1>>2]|0; - $8 = (($7) + 52|0); - $9 = HEAP32[$8>>2]|0; - $10 = (($9) + 22|0); - $11 = HEAP16[$10>>1]|0; - $12 = $11&65535; - $13 = $12 & 4; - $14 = ($13|0)!=(0); - if ($14) { - $15 = HEAP32[$2>>2]|0; - $16 = HEAP32[$data>>2]|0; - $17 = (($16) + ($15)|0); - $18 = HEAP32[$3>>2]|0; - _memset(($17|0),0,($18|0))|0; - } - $19 = HEAP32[$1>>2]|0; - $20 = (($19) + 5|0); - $21 = HEAP8[$20>>0]|0; - $22 = $21&255; - HEAP32[$hdr>>2] = $22; - $23 = HEAP32[$hdr>>2]|0; - $24 = (($23) + 1)|0; - HEAP32[$addr>>2] = $24; - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 52|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + 36|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) - 4)|0; - HEAP32[$iLast>>2] = $30; - while(1) { - $31 = HEAP32[$addr>>2]|0; - $32 = HEAP32[$data>>2]|0; - $33 = (($32) + ($31)|0); - $34 = HEAP8[$33>>0]|0; - $35 = $34&255; - $36 = $35 << 8; - $37 = HEAP32[$addr>>2]|0; - $38 = HEAP32[$data>>2]|0; - $39 = (($38) + ($37)|0); - $40 = (($39) + 1|0); - $41 = HEAP8[$40>>0]|0; - $42 = $41&255; - $43 = $36 | $42; - HEAP32[$pbegin>>2] = $43; - $44 = HEAP32[$2>>2]|0; - $45 = ($43|0)<($44|0); - if ($45) { - $46 = HEAP32[$pbegin>>2]|0; - $47 = ($46|0)>(0); - $338 = $47; - } else { - $338 = 0; - } - $48 = HEAP32[$pbegin>>2]|0; - if (!($338)) { - break; - } - $49 = HEAP32[$addr>>2]|0; - $50 = (($49) + 4)|0; - $51 = ($48|0)<($50|0); - if ($51) { - label = 8; - break; - } - $53 = HEAP32[$pbegin>>2]|0; - HEAP32[$addr>>2] = $53; - } - if ((label|0) == 8) { - $52 = (_sqlite3CorruptError(52483)|0); - HEAP32[$0>>2] = $52; - $337 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($337|0); - } - $54 = HEAP32[$iLast>>2]|0; - $55 = ($48|0)>($54|0); - if ($55) { - $56 = (_sqlite3CorruptError(52488)|0); - HEAP32[$0>>2] = $56; - $337 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($337|0); - } - $57 = HEAP32[$2>>2]|0; - $58 = $57 >> 8; - $59 = $58&255; - $60 = HEAP32[$addr>>2]|0; - $61 = HEAP32[$data>>2]|0; - $62 = (($61) + ($60)|0); - HEAP8[$62>>0] = $59; - $63 = HEAP32[$2>>2]|0; - $64 = $63&255; - $65 = HEAP32[$addr>>2]|0; - $66 = HEAP32[$data>>2]|0; - $67 = (($66) + ($65)|0); - $68 = (($67) + 1|0); - HEAP8[$68>>0] = $64; - $69 = HEAP32[$pbegin>>2]|0; - $70 = $69 >> 8; - $71 = $70&255; - $72 = HEAP32[$2>>2]|0; - $73 = HEAP32[$data>>2]|0; - $74 = (($73) + ($72)|0); - HEAP8[$74>>0] = $71; - $75 = HEAP32[$pbegin>>2]|0; - $76 = $75&255; - $77 = HEAP32[$2>>2]|0; - $78 = HEAP32[$data>>2]|0; - $79 = (($78) + ($77)|0); - $80 = (($79) + 1|0); - HEAP8[$80>>0] = $76; - $81 = HEAP32[$3>>2]|0; - $82 = $81 >> 8; - $83 = $82&255; - $84 = HEAP32[$2>>2]|0; - $85 = (($84) + 2)|0; - $86 = HEAP32[$data>>2]|0; - $87 = (($86) + ($85)|0); - HEAP8[$87>>0] = $83; - $88 = HEAP32[$3>>2]|0; - $89 = $88&255; - $90 = HEAP32[$2>>2]|0; - $91 = (($90) + 2)|0; - $92 = HEAP32[$data>>2]|0; - $93 = (($92) + ($91)|0); - $94 = (($93) + 1|0); - HEAP8[$94>>0] = $89; - $95 = HEAP32[$1>>2]|0; - $96 = (($95) + 14|0); - $97 = HEAP16[$96>>1]|0; - $98 = $97&65535; - $99 = HEAP32[$3>>2]|0; - $100 = $99&65535; - $101 = $100&65535; - $102 = (($98) + ($101))|0; - $103 = $102&65535; - $104 = HEAP32[$1>>2]|0; - $105 = (($104) + 14|0); - HEAP16[$105>>1] = $103; - $106 = HEAP32[$hdr>>2]|0; - $107 = (($106) + 1)|0; - HEAP32[$addr>>2] = $107; - while(1) { - $108 = HEAP32[$addr>>2]|0; - $109 = HEAP32[$data>>2]|0; - $110 = (($109) + ($108)|0); - $111 = HEAP8[$110>>0]|0; - $112 = $111&255; - $113 = $112 << 8; - $114 = HEAP32[$addr>>2]|0; - $115 = HEAP32[$data>>2]|0; - $116 = (($115) + ($114)|0); - $117 = (($116) + 1|0); - $118 = HEAP8[$117>>0]|0; - $119 = $118&255; - $120 = $113 | $119; - HEAP32[$pbegin>>2] = $120; - $121 = ($120|0)>(0); - if (!($121)) { - break; - } - $122 = HEAP32[$pbegin>>2]|0; - $123 = HEAP32[$data>>2]|0; - $124 = (($123) + ($122)|0); - $125 = HEAP8[$124>>0]|0; - $126 = $125&255; - $127 = $126 << 8; - $128 = HEAP32[$pbegin>>2]|0; - $129 = HEAP32[$data>>2]|0; - $130 = (($129) + ($128)|0); - $131 = (($130) + 1|0); - $132 = HEAP8[$131>>0]|0; - $133 = $132&255; - $134 = $127 | $133; - HEAP32[$pnext>>2] = $134; - $135 = HEAP32[$pbegin>>2]|0; - $136 = (($135) + 2)|0; - $137 = HEAP32[$data>>2]|0; - $138 = (($137) + ($136)|0); - $139 = HEAP8[$138>>0]|0; - $140 = $139&255; - $141 = $140 << 8; - $142 = HEAP32[$pbegin>>2]|0; - $143 = (($142) + 2)|0; - $144 = HEAP32[$data>>2]|0; - $145 = (($144) + ($143)|0); - $146 = (($145) + 1|0); - $147 = HEAP8[$146>>0]|0; - $148 = $147&255; - $149 = $141 | $148; - HEAP32[$psize>>2] = $149; - $150 = HEAP32[$pbegin>>2]|0; - $151 = HEAP32[$psize>>2]|0; - $152 = (($150) + ($151))|0; - $153 = (($152) + 3)|0; - $154 = HEAP32[$pnext>>2]|0; - $155 = ($153|0)>=($154|0); - $156 = HEAP32[$pnext>>2]|0; - $157 = ($156|0)>(0); - $or$cond = $155 & $157; - if (!($or$cond)) { - $243 = HEAP32[$pbegin>>2]|0; - HEAP32[$addr>>2] = $243; - continue; - } - $158 = HEAP32[$pnext>>2]|0; - $159 = HEAP32[$pbegin>>2]|0; - $160 = HEAP32[$psize>>2]|0; - $161 = (($159) + ($160))|0; - $162 = (($158) - ($161))|0; - HEAP32[$frag>>2] = $162; - $163 = HEAP32[$frag>>2]|0; - $164 = ($163|0)<(0); - if ($164) { - label = 17; - break; - } - $165 = HEAP32[$frag>>2]|0; - $166 = HEAP32[$hdr>>2]|0; - $167 = (($166) + 7)|0; - $168 = HEAP32[$data>>2]|0; - $169 = (($168) + ($167)|0); - $170 = HEAP8[$169>>0]|0; - $171 = $170&255; - $172 = ($165|0)>($171|0); - if ($172) { - label = 17; - break; - } - $174 = HEAP32[$frag>>2]|0; - $175 = $174&255; - $176 = $175&255; - $177 = HEAP32[$hdr>>2]|0; - $178 = (($177) + 7)|0; - $179 = HEAP32[$data>>2]|0; - $180 = (($179) + ($178)|0); - $181 = HEAP8[$180>>0]|0; - $182 = $181&255; - $183 = (($182) - ($176))|0; - $184 = $183&255; - HEAP8[$180>>0] = $184; - $185 = HEAP32[$pnext>>2]|0; - $186 = HEAP32[$data>>2]|0; - $187 = (($186) + ($185)|0); - $188 = HEAP8[$187>>0]|0; - $189 = $188&255; - $190 = $189 << 8; - $191 = HEAP32[$pnext>>2]|0; - $192 = HEAP32[$data>>2]|0; - $193 = (($192) + ($191)|0); - $194 = (($193) + 1|0); - $195 = HEAP8[$194>>0]|0; - $196 = $195&255; - $197 = $190 | $196; - HEAP32[$x>>2] = $197; - $198 = HEAP32[$x>>2]|0; - $199 = $198 >> 8; - $200 = $199&255; - $201 = HEAP32[$pbegin>>2]|0; - $202 = HEAP32[$data>>2]|0; - $203 = (($202) + ($201)|0); - HEAP8[$203>>0] = $200; - $204 = HEAP32[$x>>2]|0; - $205 = $204&255; - $206 = HEAP32[$pbegin>>2]|0; - $207 = HEAP32[$data>>2]|0; - $208 = (($207) + ($206)|0); - $209 = (($208) + 1|0); - HEAP8[$209>>0] = $205; - $210 = HEAP32[$pnext>>2]|0; - $211 = HEAP32[$pnext>>2]|0; - $212 = (($211) + 2)|0; - $213 = HEAP32[$data>>2]|0; - $214 = (($213) + ($212)|0); - $215 = HEAP8[$214>>0]|0; - $216 = $215&255; - $217 = $216 << 8; - $218 = HEAP32[$pnext>>2]|0; - $219 = (($218) + 2)|0; - $220 = HEAP32[$data>>2]|0; - $221 = (($220) + ($219)|0); - $222 = (($221) + 1|0); - $223 = HEAP8[$222>>0]|0; - $224 = $223&255; - $225 = $217 | $224; - $226 = (($210) + ($225))|0; - $227 = HEAP32[$pbegin>>2]|0; - $228 = (($226) - ($227))|0; - HEAP32[$x>>2] = $228; - $229 = HEAP32[$x>>2]|0; - $230 = $229 >> 8; - $231 = $230&255; - $232 = HEAP32[$pbegin>>2]|0; - $233 = (($232) + 2)|0; - $234 = HEAP32[$data>>2]|0; - $235 = (($234) + ($233)|0); - HEAP8[$235>>0] = $231; - $236 = HEAP32[$x>>2]|0; - $237 = $236&255; - $238 = HEAP32[$pbegin>>2]|0; - $239 = (($238) + 2)|0; - $240 = HEAP32[$data>>2]|0; - $241 = (($240) + ($239)|0); - $242 = (($241) + 1|0); - HEAP8[$242>>0] = $237; - } - if ((label|0) == 17) { - $173 = (_sqlite3CorruptError(52507)|0); - HEAP32[$0>>2] = $173; - $337 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($337|0); - } - $244 = HEAP32[$hdr>>2]|0; - $245 = (($244) + 1)|0; - $246 = HEAP32[$data>>2]|0; - $247 = (($246) + ($245)|0); - $248 = HEAP8[$247>>0]|0; - $249 = $248&255; - $250 = HEAP32[$hdr>>2]|0; - $251 = (($250) + 5)|0; - $252 = HEAP32[$data>>2]|0; - $253 = (($252) + ($251)|0); - $254 = HEAP8[$253>>0]|0; - $255 = $254&255; - $256 = ($249|0)==($255|0); - if ($256) { - $257 = HEAP32[$hdr>>2]|0; - $258 = (($257) + 2)|0; - $259 = HEAP32[$data>>2]|0; - $260 = (($259) + ($258)|0); - $261 = HEAP8[$260>>0]|0; - $262 = $261&255; - $263 = HEAP32[$hdr>>2]|0; - $264 = (($263) + 6)|0; - $265 = HEAP32[$data>>2]|0; - $266 = (($265) + ($264)|0); - $267 = HEAP8[$266>>0]|0; - $268 = $267&255; - $269 = ($262|0)==($268|0); - if ($269) { - $270 = HEAP32[$hdr>>2]|0; - $271 = (($270) + 1)|0; - $272 = HEAP32[$data>>2]|0; - $273 = (($272) + ($271)|0); - $274 = HEAP8[$273>>0]|0; - $275 = $274&255; - $276 = $275 << 8; - $277 = HEAP32[$hdr>>2]|0; - $278 = (($277) + 1)|0; - $279 = HEAP32[$data>>2]|0; - $280 = (($279) + ($278)|0); - $281 = (($280) + 1|0); - $282 = HEAP8[$281>>0]|0; - $283 = $282&255; - $284 = $276 | $283; - HEAP32[$pbegin>>2] = $284; - $285 = HEAP32[$hdr>>2]|0; - $286 = (($285) + 1)|0; - $287 = HEAP32[$data>>2]|0; - $288 = (($287) + ($286)|0); - $289 = HEAP32[$pbegin>>2]|0; - $290 = HEAP32[$data>>2]|0; - $291 = (($290) + ($289)|0); - ;HEAP8[$288+0>>0]=HEAP8[$291+0>>0]|0;HEAP8[$288+1>>0]=HEAP8[$291+1>>0]|0; - $292 = HEAP32[$hdr>>2]|0; - $293 = (($292) + 5)|0; - $294 = HEAP32[$data>>2]|0; - $295 = (($294) + ($293)|0); - $296 = HEAP8[$295>>0]|0; - $297 = $296&255; - $298 = $297 << 8; - $299 = HEAP32[$hdr>>2]|0; - $300 = (($299) + 5)|0; - $301 = HEAP32[$data>>2]|0; - $302 = (($301) + ($300)|0); - $303 = (($302) + 1|0); - $304 = HEAP8[$303>>0]|0; - $305 = $304&255; - $306 = $298 | $305; - $307 = HEAP32[$pbegin>>2]|0; - $308 = (($307) + 2)|0; - $309 = HEAP32[$data>>2]|0; - $310 = (($309) + ($308)|0); - $311 = HEAP8[$310>>0]|0; - $312 = $311&255; - $313 = $312 << 8; - $314 = HEAP32[$pbegin>>2]|0; - $315 = (($314) + 2)|0; - $316 = HEAP32[$data>>2]|0; - $317 = (($316) + ($315)|0); - $318 = (($317) + 1|0); - $319 = HEAP8[$318>>0]|0; - $320 = $319&255; - $321 = $313 | $320; - $322 = (($306) + ($321))|0; - HEAP32[$top>>2] = $322; - $323 = HEAP32[$top>>2]|0; - $324 = $323 >> 8; - $325 = $324&255; - $326 = HEAP32[$hdr>>2]|0; - $327 = (($326) + 5)|0; - $328 = HEAP32[$data>>2]|0; - $329 = (($328) + ($327)|0); - HEAP8[$329>>0] = $325; - $330 = HEAP32[$top>>2]|0; - $331 = $330&255; - $332 = HEAP32[$hdr>>2]|0; - $333 = (($332) + 5)|0; - $334 = HEAP32[$data>>2]|0; - $335 = (($334) + ($333)|0); - $336 = (($335) + 1|0); - HEAP8[$336>>0] = $331; - } - } - HEAP32[$0>>2] = 0; - $337 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($337|0); -} -function _fillInCell($pPage,$pCell,$pKey,$0,$1,$pData,$nData,$nZero,$pnSize) { - $pPage = $pPage|0; - $pCell = $pCell|0; - $pKey = $pKey|0; - $0 = $0|0; - $1 = $1|0; - $pData = $pData|0; - $nData = $nData|0; - $nZero = $nZero|0; - $pnSize = $pnSize|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; - var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; - var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; - var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; - var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; - var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; - var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $eType = 0, $info = 0; - var $n = 0, $nHeader = 0, $nPayload = 0, $nSrc = 0, $pBt = 0, $pOvfl = 0, $pPayload = 0, $pPrior = 0, $pSrc = 0, $pToRelease = 0, $pgnoOvfl = 0, $pgnoPtrmap = 0, $rc = 0, $spaceLeft = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 144|0; - $2 = sp + 124|0; - $3 = sp + 120|0; - $4 = sp + 116|0; - $5 = sp + 112|0; - $6 = sp + 32|0; - $7 = sp + 108|0; - $8 = sp + 104|0; - $9 = sp + 100|0; - $10 = sp + 96|0; - $nPayload = sp + 92|0; - $pSrc = sp + 88|0; - $nSrc = sp + 84|0; - $n = sp + 80|0; - $rc = sp + 76|0; - $spaceLeft = sp + 72|0; - $pOvfl = sp + 68|0; - $pToRelease = sp + 64|0; - $pPrior = sp + 60|0; - $pPayload = sp + 56|0; - $pBt = sp + 52|0; - $pgnoOvfl = sp + 48|0; - $nHeader = sp + 44|0; - $info = sp; - $pgnoPtrmap = sp + 40|0; - $eType = sp + 128|0; - HEAP32[$3>>2] = $pPage; - HEAP32[$4>>2] = $pCell; - HEAP32[$5>>2] = $pKey; - $11 = $6; - $12 = $11; - HEAP32[$12>>2] = $0; - $13 = (($11) + 4)|0; - $14 = $13; - HEAP32[$14>>2] = $1; - HEAP32[$7>>2] = $pData; - HEAP32[$8>>2] = $nData; - HEAP32[$9>>2] = $nZero; - HEAP32[$10>>2] = $pnSize; - HEAP32[$pOvfl>>2] = 0; - HEAP32[$pToRelease>>2] = 0; - $15 = HEAP32[$3>>2]|0; - $16 = (($15) + 52|0); - $17 = HEAP32[$16>>2]|0; - HEAP32[$pBt>>2] = $17; - HEAP32[$pgnoOvfl>>2] = 0; - HEAP32[$nHeader>>2] = 0; - $18 = HEAP32[$3>>2]|0; - $19 = (($18) + 3|0); - $20 = HEAP8[$19>>0]|0; - $21 = ($20<<24>>24)!=(0); - if (!($21)) { - $22 = HEAP32[$nHeader>>2]|0; - $23 = (($22) + 4)|0; - HEAP32[$nHeader>>2] = $23; - } - $24 = HEAP32[$3>>2]|0; - $25 = (($24) + 4|0); - $26 = HEAP8[$25>>0]|0; - $27 = ($26<<24>>24)!=(0); - if ($27) { - $28 = HEAP32[$8>>2]|0; - $29 = HEAP32[$9>>2]|0; - $30 = (($28) + ($29))|0; - $31 = ($30>>>0)<(128); - if ($31) { - $32 = HEAP32[$8>>2]|0; - $33 = HEAP32[$9>>2]|0; - $34 = (($32) + ($33))|0; - $35 = $34&255; - $36 = HEAP32[$nHeader>>2]|0; - $37 = HEAP32[$4>>2]|0; - $38 = (($37) + ($36)|0); - HEAP8[$38>>0] = $35; - $47 = 1; - } else { - $39 = HEAP32[$nHeader>>2]|0; - $40 = HEAP32[$4>>2]|0; - $41 = (($40) + ($39)|0); - $42 = HEAP32[$8>>2]|0; - $43 = HEAP32[$9>>2]|0; - $44 = (($42) + ($43))|0; - $45 = (_sqlite3PutVarint32($41,$44)|0); - $47 = $45; - } - $46 = $47&255; - $48 = $46&255; - $49 = HEAP32[$nHeader>>2]|0; - $50 = (($49) + ($48))|0; - HEAP32[$nHeader>>2] = $50; - } else { - HEAP32[$9>>2] = 0; - HEAP32[$8>>2] = 0; - } - $51 = HEAP32[$nHeader>>2]|0; - $52 = HEAP32[$4>>2]|0; - $53 = (($52) + ($51)|0); - $54 = $6; - $55 = $54; - $56 = HEAP32[$55>>2]|0; - $57 = (($54) + 4)|0; - $58 = $57; - $59 = HEAP32[$58>>2]|0; - $60 = (_sqlite3PutVarint($53,$56,$59)|0); - $61 = HEAP32[$nHeader>>2]|0; - $62 = (($61) + ($60))|0; - HEAP32[$nHeader>>2] = $62; - $63 = HEAP32[$3>>2]|0; - $64 = HEAP32[$4>>2]|0; - _btreeParseCellPtr($63,$64,$info); - $65 = HEAP32[$8>>2]|0; - $66 = HEAP32[$9>>2]|0; - $67 = (($65) + ($66))|0; - HEAP32[$nPayload>>2] = $67; - $68 = HEAP32[$3>>2]|0; - $69 = (($68) + 2|0); - $70 = HEAP8[$69>>0]|0; - $71 = ($70<<24>>24)!=(0); - do { - if ($71) { - $72 = HEAP32[$7>>2]|0; - HEAP32[$pSrc>>2] = $72; - $73 = HEAP32[$8>>2]|0; - HEAP32[$nSrc>>2] = $73; - HEAP32[$8>>2] = 0; - } else { - $74 = $6; - $75 = $74; - $76 = HEAP32[$75>>2]|0; - $77 = (($74) + 4)|0; - $78 = $77; - $79 = HEAP32[$78>>2]|0; - $80 = ($79|0)>(0); - $81 = ($79|0)==(0); - $82 = ($76>>>0)>(2147483647); - $83 = $81 & $82; - $84 = $80 | $83; - if (!($84)) { - $85 = HEAP32[$5>>2]|0; - $86 = ($85|0)==(0|0); - if (!($86)) { - $88 = $6; - $89 = $88; - $90 = HEAP32[$89>>2]|0; - $91 = (($88) + 4)|0; - $92 = $91; - $93 = HEAP32[$92>>2]|0; - $94 = HEAP32[$nPayload>>2]|0; - $95 = (($94) + ($90))|0; - HEAP32[$nPayload>>2] = $95; - $96 = HEAP32[$5>>2]|0; - HEAP32[$pSrc>>2] = $96; - $97 = $6; - $98 = $97; - $99 = HEAP32[$98>>2]|0; - $100 = (($97) + 4)|0; - $101 = $100; - $102 = HEAP32[$101>>2]|0; - HEAP32[$nSrc>>2] = $99; - break; - } - } - $87 = (_sqlite3CorruptError(56721)|0); - HEAP32[$2>>2] = $87; - $219 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($219|0); - } - } while(0); - $103 = (($info) + 26|0); - $104 = HEAP16[$103>>1]|0; - $105 = $104&65535; - $106 = HEAP32[$10>>2]|0; - HEAP32[$106>>2] = $105; - $107 = (($info) + 22|0); - $108 = HEAP16[$107>>1]|0; - $109 = $108&65535; - HEAP32[$spaceLeft>>2] = $109; - $110 = HEAP32[$nHeader>>2]|0; - $111 = HEAP32[$4>>2]|0; - $112 = (($111) + ($110)|0); - HEAP32[$pPayload>>2] = $112; - $113 = (($info) + 24|0); - $114 = HEAP16[$113>>1]|0; - $115 = $114&65535; - $116 = HEAP32[$4>>2]|0; - $117 = (($116) + ($115)|0); - HEAP32[$pPrior>>2] = $117; - while(1) { - $118 = HEAP32[$nPayload>>2]|0; - $119 = ($118|0)>(0); - if (!($119)) { - label = 37; - break; - } - $120 = HEAP32[$spaceLeft>>2]|0; - $121 = ($120|0)==(0); - if ($121) { - $122 = HEAP32[$pgnoOvfl>>2]|0; - HEAP32[$pgnoPtrmap>>2] = $122; - $123 = HEAP32[$pBt>>2]|0; - $124 = (($123) + 17|0); - $125 = HEAP8[$124>>0]|0; - $126 = ($125<<24>>24)!=(0); - if ($126) { - while(1) { - $127 = HEAP32[$pgnoOvfl>>2]|0; - $128 = (($127) + 1)|0; - HEAP32[$pgnoOvfl>>2] = $128; - $129 = HEAP32[$pBt>>2]|0; - $130 = HEAP32[$pgnoOvfl>>2]|0; - $131 = (_ptrmapPageno($129,$130)|0); - $132 = HEAP32[$pgnoOvfl>>2]|0; - $133 = ($131|0)==($132|0); - if ($133) { - continue; - } - $134 = HEAP32[$pgnoOvfl>>2]|0; - $135 = HEAP32[1384>>2]|0; - $136 = HEAP32[$pBt>>2]|0; - $137 = (($136) + 32|0); - $138 = HEAP32[$137>>2]|0; - $139 = (($135>>>0) / ($138>>>0))&-1; - $140 = (($139) + 1)|0; - $141 = ($134|0)==($140|0); - if (!($141)) { - break; - } - } - } - $142 = HEAP32[$pBt>>2]|0; - $143 = HEAP32[$pgnoOvfl>>2]|0; - $144 = (_allocateBtreePage($142,$pOvfl,$pgnoOvfl,$143,0)|0); - HEAP32[$rc>>2] = $144; - $145 = HEAP32[$pBt>>2]|0; - $146 = (($145) + 17|0); - $147 = HEAP8[$146>>0]|0; - $148 = $147&255; - $149 = ($148|0)!=(0); - if ($149) { - $150 = HEAP32[$rc>>2]|0; - $151 = ($150|0)==(0); - if ($151) { - $152 = HEAP32[$pgnoPtrmap>>2]|0; - $153 = ($152|0)!=(0); - $154 = $153 ? 4 : 3; - $155 = $154&255; - HEAP8[$eType>>0] = $155; - $156 = HEAP32[$pBt>>2]|0; - $157 = HEAP32[$pgnoOvfl>>2]|0; - $158 = HEAP8[$eType>>0]|0; - $159 = HEAP32[$pgnoPtrmap>>2]|0; - _ptrmapPut($156,$157,$158,$159,$rc); - $160 = HEAP32[$rc>>2]|0; - $161 = ($160|0)!=(0); - if ($161) { - $162 = HEAP32[$pOvfl>>2]|0; - _releasePage($162); - } - } - } - $163 = HEAP32[$rc>>2]|0; - $164 = ($163|0)!=(0); - if ($164) { - label = 26; - break; - } - $167 = HEAP32[$pPrior>>2]|0; - $168 = HEAP32[$pgnoOvfl>>2]|0; - _sqlite3Put4byte($167,$168); - $169 = HEAP32[$pToRelease>>2]|0; - _releasePage($169); - $170 = HEAP32[$pOvfl>>2]|0; - HEAP32[$pToRelease>>2] = $170; - $171 = HEAP32[$pOvfl>>2]|0; - $172 = (($171) + 56|0); - $173 = HEAP32[$172>>2]|0; - HEAP32[$pPrior>>2] = $173; - $174 = HEAP32[$pPrior>>2]|0; - _sqlite3Put4byte($174,0); - $175 = HEAP32[$pOvfl>>2]|0; - $176 = (($175) + 56|0); - $177 = HEAP32[$176>>2]|0; - $178 = (($177) + 4|0); - HEAP32[$pPayload>>2] = $178; - $179 = HEAP32[$pBt>>2]|0; - $180 = (($179) + 36|0); - $181 = HEAP32[$180>>2]|0; - $182 = (($181) - 4)|0; - HEAP32[$spaceLeft>>2] = $182; - } - $183 = HEAP32[$nPayload>>2]|0; - HEAP32[$n>>2] = $183; - $184 = HEAP32[$n>>2]|0; - $185 = HEAP32[$spaceLeft>>2]|0; - $186 = ($184|0)>($185|0); - if ($186) { - $187 = HEAP32[$spaceLeft>>2]|0; - HEAP32[$n>>2] = $187; - } - $188 = HEAP32[$nSrc>>2]|0; - $189 = ($188|0)>(0); - if ($189) { - $190 = HEAP32[$n>>2]|0; - $191 = HEAP32[$nSrc>>2]|0; - $192 = ($190|0)>($191|0); - if ($192) { - $193 = HEAP32[$nSrc>>2]|0; - HEAP32[$n>>2] = $193; - } - $194 = HEAP32[$pPayload>>2]|0; - $195 = HEAP32[$pSrc>>2]|0; - $196 = HEAP32[$n>>2]|0; - _memcpy(($194|0),($195|0),($196|0))|0; - } else { - $197 = HEAP32[$pPayload>>2]|0; - $198 = HEAP32[$n>>2]|0; - _memset(($197|0),0,($198|0))|0; - } - $199 = HEAP32[$n>>2]|0; - $200 = HEAP32[$nPayload>>2]|0; - $201 = (($200) - ($199))|0; - HEAP32[$nPayload>>2] = $201; - $202 = HEAP32[$n>>2]|0; - $203 = HEAP32[$pPayload>>2]|0; - $204 = (($203) + ($202)|0); - HEAP32[$pPayload>>2] = $204; - $205 = HEAP32[$n>>2]|0; - $206 = HEAP32[$pSrc>>2]|0; - $207 = (($206) + ($205)|0); - HEAP32[$pSrc>>2] = $207; - $208 = HEAP32[$n>>2]|0; - $209 = HEAP32[$nSrc>>2]|0; - $210 = (($209) - ($208))|0; - HEAP32[$nSrc>>2] = $210; - $211 = HEAP32[$n>>2]|0; - $212 = HEAP32[$spaceLeft>>2]|0; - $213 = (($212) - ($211))|0; - HEAP32[$spaceLeft>>2] = $213; - $214 = HEAP32[$nSrc>>2]|0; - $215 = ($214|0)==(0); - if (!($215)) { - continue; - } - $216 = HEAP32[$8>>2]|0; - HEAP32[$nSrc>>2] = $216; - $217 = HEAP32[$7>>2]|0; - HEAP32[$pSrc>>2] = $217; - } - if ((label|0) == 26) { - $165 = HEAP32[$pToRelease>>2]|0; - _releasePage($165); - $166 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $166; - $219 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($219|0); - } - else if ((label|0) == 37) { - $218 = HEAP32[$pToRelease>>2]|0; - _releasePage($218); - HEAP32[$2>>2] = 0; - $219 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($219|0); - } - return 0|0; -} -function _sqlite3VdbeSorterClose($db,$pCsr) { - $db = $db|0; - $pCsr = $pCsr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pSorter = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $pSorter = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $pCsr; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 64|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pSorter>>2] = $4; - $5 = HEAP32[$pSorter>>2]|0; - $6 = ($5|0)!=(0|0); - if (!($6)) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - $8 = HEAP32[$pSorter>>2]|0; - _sqlite3VdbeSorterReset($7,$8); - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$pSorter>>2]|0; - $11 = (($10) + 52|0); - $12 = HEAP32[$11>>2]|0; - _sqlite3DbFree($9,$12); - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$pSorter>>2]|0; - _sqlite3DbFree($13,$14); - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 64|0); - HEAP32[$16>>2] = 0; - STACKTOP = sp;return; -} -function _btreeCreateTable($p,$piTable,$createTabFlags) { - $p = $p|0; - $piTable = $piTable|0; - $createTabFlags = $createTabFlags|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; - var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $eType = 0, $iPtrPage = 0; - var $pBt = 0, $pPageMove = 0, $pRoot = 0, $pgnoMove = 0, $pgnoRoot = 0, $ptfFlags = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $pBt = sp + 28|0; - $pRoot = sp + 24|0; - $pgnoRoot = sp + 20|0; - $rc = sp + 16|0; - $ptfFlags = sp + 12|0; - $pgnoMove = sp + 8|0; - $pPageMove = sp + 4|0; - $eType = sp + 48|0; - $iPtrPage = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $piTable; - HEAP32[$3>>2] = $createTabFlags; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$pBt>>2] = $6; - $7 = HEAP32[$pBt>>2]|0; - $8 = (($7) + 17|0); - $9 = HEAP8[$8>>0]|0; - $10 = ($9<<24>>24)!=(0); - $11 = HEAP32[$pBt>>2]|0; - if ($10) { - _invalidateAllOverflowCache($11); - $12 = HEAP32[$1>>2]|0; - _sqlite3BtreeGetMeta($12,4,$pgnoRoot); - $13 = HEAP32[$pgnoRoot>>2]|0; - $14 = (($13) + 1)|0; - HEAP32[$pgnoRoot>>2] = $14; - while(1) { - $15 = HEAP32[$pgnoRoot>>2]|0; - $16 = HEAP32[$pBt>>2]|0; - $17 = HEAP32[$pgnoRoot>>2]|0; - $18 = (_ptrmapPageno($16,$17)|0); - $19 = ($15|0)==($18|0); - if (!($19)) { - $20 = HEAP32[$pgnoRoot>>2]|0; - $21 = HEAP32[1384>>2]|0; - $22 = HEAP32[$pBt>>2]|0; - $23 = (($22) + 32|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($21>>>0) / ($24>>>0))&-1; - $26 = (($25) + 1)|0; - $27 = ($20|0)==($26|0); - if (!($27)) { - break; - } - } - $28 = HEAP32[$pgnoRoot>>2]|0; - $29 = (($28) + 1)|0; - HEAP32[$pgnoRoot>>2] = $29; - } - $30 = HEAP32[$pBt>>2]|0; - $31 = HEAP32[$pgnoRoot>>2]|0; - $32 = (_allocateBtreePage($30,$pPageMove,$pgnoMove,$31,1)|0); - HEAP32[$rc>>2] = $32; - $33 = HEAP32[$rc>>2]|0; - $34 = ($33|0)!=(0); - if ($34) { - $35 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $35; - $117 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($117|0); - } - $36 = HEAP32[$pgnoMove>>2]|0; - $37 = HEAP32[$pgnoRoot>>2]|0; - $38 = ($36|0)!=($37|0); - if ($38) { - HEAP8[$eType>>0] = 0; - HEAP32[$iPtrPage>>2] = 0; - $39 = HEAP32[$pBt>>2]|0; - $40 = (_saveAllCursors($39,0,0)|0); - HEAP32[$rc>>2] = $40; - $41 = HEAP32[$pPageMove>>2]|0; - _releasePage($41); - $42 = HEAP32[$rc>>2]|0; - $43 = ($42|0)!=(0); - if ($43) { - $44 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $44; - $117 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($117|0); - } - $45 = HEAP32[$pBt>>2]|0; - $46 = HEAP32[$pgnoRoot>>2]|0; - $47 = (_btreeGetPage($45,$46,$pRoot,0)|0); - HEAP32[$rc>>2] = $47; - $48 = HEAP32[$rc>>2]|0; - $49 = ($48|0)!=(0); - if ($49) { - $50 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $50; - $117 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($117|0); - } - $51 = HEAP32[$pBt>>2]|0; - $52 = HEAP32[$pgnoRoot>>2]|0; - $53 = (_ptrmapGet($51,$52,$eType,$iPtrPage)|0); - HEAP32[$rc>>2] = $53; - $54 = HEAP8[$eType>>0]|0; - $55 = $54&255; - $56 = ($55|0)==(1); - if ($56) { - label = 15; - } else { - $57 = HEAP8[$eType>>0]|0; - $58 = $57&255; - $59 = ($58|0)==(2); - if ($59) { - label = 15; - } - } - if ((label|0) == 15) { - $60 = (_sqlite3CorruptError(58462)|0); - HEAP32[$rc>>2] = $60; - } - $61 = HEAP32[$rc>>2]|0; - $62 = ($61|0)!=(0); - if ($62) { - $63 = HEAP32[$pRoot>>2]|0; - _releasePage($63); - $64 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $64; - $117 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($117|0); - } - $65 = HEAP32[$pBt>>2]|0; - $66 = HEAP32[$pRoot>>2]|0; - $67 = HEAP8[$eType>>0]|0; - $68 = HEAP32[$iPtrPage>>2]|0; - $69 = HEAP32[$pgnoMove>>2]|0; - $70 = (_relocatePage($65,$66,$67,$68,$69,0)|0); - HEAP32[$rc>>2] = $70; - $71 = HEAP32[$pRoot>>2]|0; - _releasePage($71); - $72 = HEAP32[$rc>>2]|0; - $73 = ($72|0)!=(0); - if ($73) { - $74 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $74; - $117 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($117|0); - } - $75 = HEAP32[$pBt>>2]|0; - $76 = HEAP32[$pgnoRoot>>2]|0; - $77 = (_btreeGetPage($75,$76,$pRoot,0)|0); - HEAP32[$rc>>2] = $77; - $78 = HEAP32[$rc>>2]|0; - $79 = ($78|0)!=(0); - if ($79) { - $80 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $80; - $117 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($117|0); - } - $81 = HEAP32[$pRoot>>2]|0; - $82 = (($81) + 68|0); - $83 = HEAP32[$82>>2]|0; - $84 = (_sqlite3PagerWrite($83)|0); - HEAP32[$rc>>2] = $84; - $85 = HEAP32[$rc>>2]|0; - $86 = ($85|0)!=(0); - if ($86) { - $87 = HEAP32[$pRoot>>2]|0; - _releasePage($87); - $88 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $88; - $117 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($117|0); - } - } else { - $89 = HEAP32[$pPageMove>>2]|0; - HEAP32[$pRoot>>2] = $89; - } - $90 = HEAP32[$pBt>>2]|0; - $91 = HEAP32[$pgnoRoot>>2]|0; - _ptrmapPut($90,$91,1,0,$rc); - $92 = HEAP32[$rc>>2]|0; - $93 = ($92|0)!=(0); - if ($93) { - $94 = HEAP32[$pRoot>>2]|0; - _releasePage($94); - $95 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $95; - $117 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($117|0); - } - $96 = HEAP32[$1>>2]|0; - $97 = HEAP32[$pgnoRoot>>2]|0; - $98 = (_sqlite3BtreeUpdateMeta($96,4,$97)|0); - HEAP32[$rc>>2] = $98; - $99 = HEAP32[$rc>>2]|0; - $100 = ($99|0)!=(0); - if ($100) { - $101 = HEAP32[$pRoot>>2]|0; - _releasePage($101); - $102 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $102; - $117 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($117|0); - } - } else { - $103 = (_allocateBtreePage($11,$pRoot,$pgnoRoot,1,0)|0); - HEAP32[$rc>>2] = $103; - $104 = HEAP32[$rc>>2]|0; - $105 = ($104|0)!=(0); - if ($105) { - $106 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $106; - $117 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($117|0); - } - } - $107 = HEAP32[$3>>2]|0; - $108 = $107 & 1; - $109 = ($108|0)!=(0); - if ($109) { - HEAP32[$ptfFlags>>2] = 13; - } else { - HEAP32[$ptfFlags>>2] = 10; - } - $110 = HEAP32[$pRoot>>2]|0; - $111 = HEAP32[$ptfFlags>>2]|0; - _zeroPage($110,$111); - $112 = HEAP32[$pRoot>>2]|0; - $113 = (($112) + 68|0); - $114 = HEAP32[$113>>2]|0; - _sqlite3PagerUnref($114); - $115 = HEAP32[$pgnoRoot>>2]|0; - $116 = HEAP32[$2>>2]|0; - HEAP32[$116>>2] = $115; - HEAP32[$0>>2] = 0; - $117 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($117|0); -} -function _btreeCursor($p,$iTable,$wrFlag,$pKeyInfo,$pCur) { - $p = $p|0; - $iTable = $iTable|0; - $wrFlag = $wrFlag|0; - $pKeyInfo = $pKeyInfo|0; - $pCur = $pCur|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $3 = sp + 12|0; - $4 = sp + 8|0; - $5 = sp + 4|0; - $pBt = sp; - HEAP32[$1>>2] = $p; - HEAP32[$2>>2] = $iTable; - HEAP32[$3>>2] = $wrFlag; - HEAP32[$4>>2] = $pKeyInfo; - HEAP32[$5>>2] = $pCur; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 4|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pBt>>2] = $8; - $9 = HEAP32[$3>>2]|0; - $10 = ($9|0)!=(0); - if ($10) { - $11 = HEAP32[$pBt>>2]|0; - $12 = (($11) + 22|0); - $13 = HEAP16[$12>>1]|0; - $14 = $13&65535; - $15 = $14 & 1; - $16 = ($15|0)!=(0); - if ($16) { - HEAP32[$0>>2] = 8; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); - } - } - $17 = HEAP32[$2>>2]|0; - $18 = ($17|0)==(1); - if ($18) { - $19 = HEAP32[$pBt>>2]|0; - $20 = (_btreePagecount($19)|0); - $21 = ($20|0)==(0); - if ($21) { - HEAP32[$2>>2] = 0; - } - } - $22 = HEAP32[$2>>2]|0; - $23 = HEAP32[$5>>2]|0; - $24 = (($23) + 68|0); - HEAP32[$24>>2] = $22; - $25 = HEAP32[$5>>2]|0; - $26 = (($25) + 84|0); - HEAP16[$26>>1] = -1; - $27 = HEAP32[$4>>2]|0; - $28 = HEAP32[$5>>2]|0; - $29 = (($28) + 16|0); - HEAP32[$29>>2] = $27; - $30 = HEAP32[$1>>2]|0; - $31 = HEAP32[$5>>2]|0; - HEAP32[$31>>2] = $30; - $32 = HEAP32[$pBt>>2]|0; - $33 = HEAP32[$5>>2]|0; - $34 = (($33) + 4|0); - HEAP32[$34>>2] = $32; - $35 = HEAP32[$3>>2]|0; - $36 = $35&255; - $37 = HEAP32[$5>>2]|0; - $38 = (($37) + 80|0); - HEAP8[$38>>0] = $36; - $39 = HEAP32[$pBt>>2]|0; - $40 = (($39) + 8|0); - $41 = HEAP32[$40>>2]|0; - $42 = HEAP32[$5>>2]|0; - $43 = (($42) + 8|0); - HEAP32[$43>>2] = $41; - $44 = HEAP32[$5>>2]|0; - $45 = (($44) + 8|0); - $46 = HEAP32[$45>>2]|0; - $47 = ($46|0)!=(0|0); - if ($47) { - $48 = HEAP32[$5>>2]|0; - $49 = HEAP32[$5>>2]|0; - $50 = (($49) + 8|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + 12|0); - HEAP32[$52>>2] = $48; - } - $53 = HEAP32[$5>>2]|0; - $54 = HEAP32[$pBt>>2]|0; - $55 = (($54) + 8|0); - HEAP32[$55>>2] = $53; - $56 = HEAP32[$5>>2]|0; - $57 = (($56) + 81|0); - HEAP8[$57>>0] = 0; - HEAP32[$0>>2] = 0; - $58 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($58|0); -} -function _sqlite3BtreeCursorSize() { - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = sp;return 208; -} -function _sqlite3BtreeCursorZero($p) { - $p = $p|0; - var $0 = 0, $1 = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - dest=$1+0|0; stop=dest+84|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - STACKTOP = sp;return; -} -function _sqlite3PagerOpenSavepoint($pPager,$nSavepoint) { - $pPager = $pPager|0; - $nSavepoint = $nSavepoint|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; - var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; - var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; - var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; - var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; - var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aNew = 0, $ii = 0, $nCurrent = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $rc = sp + 12|0; - $nCurrent = sp + 8|0; - $ii = sp + 4|0; - $aNew = sp; - HEAP32[$1>>2] = $pPager; - HEAP32[$2>>2] = $nSavepoint; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 96|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$nCurrent>>2] = $5; - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$nCurrent>>2]|0; - $8 = ($6|0)>($7|0); - L1: do { - if ($8) { - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 6|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = ($12|0)!=(0); - if ($13) { - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 92|0); - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$2>>2]|0; - $18 = ($17*48)|0; - $19 = (_sqlite3Realloc($16,$18)|0); - HEAP32[$aNew>>2] = $19; - $20 = HEAP32[$aNew>>2]|0; - $21 = ($20|0)!=(0|0); - if (!($21)) { - HEAP32[$0>>2] = 7; - $124 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($124|0); - } - $22 = HEAP32[$nCurrent>>2]|0; - $23 = HEAP32[$aNew>>2]|0; - $24 = (($23) + (($22*48)|0)|0); - $25 = HEAP32[$2>>2]|0; - $26 = HEAP32[$nCurrent>>2]|0; - $27 = (($25) - ($26))|0; - $28 = ($27*48)|0; - _memset(($24|0),0,($28|0))|0; - $29 = HEAP32[$aNew>>2]|0; - $30 = HEAP32[$1>>2]|0; - $31 = (($30) + 92|0); - HEAP32[$31>>2] = $29; - $32 = HEAP32[$nCurrent>>2]|0; - HEAP32[$ii>>2] = $32; - while(1) { - $33 = HEAP32[$ii>>2]|0; - $34 = HEAP32[$2>>2]|0; - $35 = ($33|0)<($34|0); - if (!($35)) { - break L1; - } - $36 = HEAP32[$1>>2]|0; - $37 = (($36) + 24|0); - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$ii>>2]|0; - $40 = HEAP32[$aNew>>2]|0; - $41 = (($40) + (($39*48)|0)|0); - $42 = (($41) + 20|0); - HEAP32[$42>>2] = $38; - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + 64|0); - $45 = HEAP32[$44>>2]|0; - $46 = HEAP32[$45>>2]|0; - $47 = ($46|0)!=(0|0); - if ($47) { - $48 = HEAP32[$1>>2]|0; - $49 = (($48) + 72|0); - $50 = $49; - $51 = $50; - $52 = HEAP32[$51>>2]|0; - $53 = (($50) + 4)|0; - $54 = $53; - $55 = HEAP32[$54>>2]|0; - $56 = ($55|0)>(0); - $57 = ($55|0)==(0); - $58 = ($52>>>0)>(0); - $59 = $57 & $58; - $60 = $56 | $59; - if ($60) { - $61 = HEAP32[$1>>2]|0; - $62 = (($61) + 72|0); - $63 = $62; - $64 = $63; - $65 = HEAP32[$64>>2]|0; - $66 = (($63) + 4)|0; - $67 = $66; - $68 = HEAP32[$67>>2]|0; - $69 = HEAP32[$ii>>2]|0; - $70 = HEAP32[$aNew>>2]|0; - $71 = (($70) + (($69*48)|0)|0); - $72 = $71; - $73 = $72; - HEAP32[$73>>2] = $65; - $74 = (($72) + 4)|0; - $75 = $74; - HEAP32[$75>>2] = $68; - } else { - label = 10; - } - } else { - label = 10; - } - if ((label|0) == 10) { - label = 0; - $76 = HEAP32[$1>>2]|0; - $77 = (($76) + 148|0); - $78 = HEAP32[$77>>2]|0; - $79 = HEAP32[$ii>>2]|0; - $80 = HEAP32[$aNew>>2]|0; - $81 = (($80) + (($79*48)|0)|0); - $82 = $81; - $83 = $82; - HEAP32[$83>>2] = $78; - $84 = (($82) + 4)|0; - $85 = $84; - HEAP32[$85>>2] = 0; - } - $86 = HEAP32[$1>>2]|0; - $87 = (($86) + 52|0); - $88 = HEAP32[$87>>2]|0; - $89 = HEAP32[$ii>>2]|0; - $90 = HEAP32[$aNew>>2]|0; - $91 = (($90) + (($89*48)|0)|0); - $92 = (($91) + 24|0); - HEAP32[$92>>2] = $88; - $93 = HEAP32[$1>>2]|0; - $94 = (($93) + 24|0); - $95 = HEAP32[$94>>2]|0; - $96 = (_sqlite3BitvecCreate($95)|0); - $97 = HEAP32[$ii>>2]|0; - $98 = HEAP32[$aNew>>2]|0; - $99 = (($98) + (($97*48)|0)|0); - $100 = (($99) + 16|0); - HEAP32[$100>>2] = $96; - $101 = HEAP32[$ii>>2]|0; - $102 = HEAP32[$aNew>>2]|0; - $103 = (($102) + (($101*48)|0)|0); - $104 = (($103) + 16|0); - $105 = HEAP32[$104>>2]|0; - $106 = ($105|0)!=(0|0); - if (!($106)) { - break; - } - $107 = HEAP32[$1>>2]|0; - $108 = (_pagerUseWal($107)|0); - $109 = ($108|0)!=(0); - if ($109) { - $110 = HEAP32[$1>>2]|0; - $111 = (($110) + 208|0); - $112 = HEAP32[$111>>2]|0; - $113 = HEAP32[$ii>>2]|0; - $114 = HEAP32[$aNew>>2]|0; - $115 = (($114) + (($113*48)|0)|0); - $116 = (($115) + 28|0); - _sqlite3WalSavepoint($112,$116); - } - $117 = HEAP32[$ii>>2]|0; - $118 = (($117) + 1)|0; - $119 = HEAP32[$1>>2]|0; - $120 = (($119) + 96|0); - HEAP32[$120>>2] = $118; - $121 = HEAP32[$ii>>2]|0; - $122 = (($121) + 1)|0; - HEAP32[$ii>>2] = $122; - } - HEAP32[$0>>2] = 7; - $124 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($124|0); - } - } - } while(0); - $123 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $123; - $124 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($124|0); -} -function _sqlite3WalSavepoint($pWal,$aWalData) { - $pWal = $pWal|0; - $aWalData = $aWalData|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pWal; - HEAP32[$1>>2] = $aWalData; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 52|0); - $4 = (($3) + 16|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$1>>2]|0; - HEAP32[$6>>2] = $5; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 52|0); - $9 = (($8) + 24|0); - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 4|0); - HEAP32[$12>>2] = $10; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 52|0); - $15 = (($14) + 24|0); - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 8|0); - HEAP32[$19>>2] = $17; - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 104|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 12|0); - HEAP32[$24>>2] = $22; - STACKTOP = sp;return; -} -function _newDatabase($pBt) { - $pBt = $pBt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $9 = 0, $data = 0, $pP1 = 0, $rc = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $pP1 = sp + 8|0; - $data = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pBt; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 44|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4>>>0)>(0); - if ($5) { - HEAP32[$0>>2] = 0; - $81 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($81|0); - } - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 12|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pP1>>2] = $8; - $9 = HEAP32[$pP1>>2]|0; - $10 = (($9) + 56|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$data>>2] = $11; - $12 = HEAP32[$pP1>>2]|0; - $13 = (($12) + 68|0); - $14 = HEAP32[$13>>2]|0; - $15 = (_sqlite3PagerWrite($14)|0); - HEAP32[$rc>>2] = $15; - $16 = HEAP32[$rc>>2]|0; - $17 = ($16|0)!=(0); - if ($17) { - $18 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $18; - $81 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($81|0); - } else { - $19 = HEAP32[$data>>2]|0; - dest=$19+0|0; src=34264+0|0; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 32|0); - $22 = HEAP32[$21>>2]|0; - $23 = $22 >>> 8; - $24 = $23 & 255; - $25 = $24&255; - $26 = HEAP32[$data>>2]|0; - $27 = (($26) + 16|0); - HEAP8[$27>>0] = $25; - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 32|0); - $30 = HEAP32[$29>>2]|0; - $31 = $30 >>> 16; - $32 = $31 & 255; - $33 = $32&255; - $34 = HEAP32[$data>>2]|0; - $35 = (($34) + 17|0); - HEAP8[$35>>0] = $33; - $36 = HEAP32[$data>>2]|0; - $37 = (($36) + 18|0); - HEAP8[$37>>0] = 1; - $38 = HEAP32[$data>>2]|0; - $39 = (($38) + 19|0); - HEAP8[$39>>0] = 1; - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 32|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$1>>2]|0; - $44 = (($43) + 36|0); - $45 = HEAP32[$44>>2]|0; - $46 = (($42) - ($45))|0; - $47 = $46&255; - $48 = HEAP32[$data>>2]|0; - $49 = (($48) + 20|0); - HEAP8[$49>>0] = $47; - $50 = HEAP32[$data>>2]|0; - $51 = (($50) + 21|0); - HEAP8[$51>>0] = 64; - $52 = HEAP32[$data>>2]|0; - $53 = (($52) + 22|0); - HEAP8[$53>>0] = 32; - $54 = HEAP32[$data>>2]|0; - $55 = (($54) + 23|0); - HEAP8[$55>>0] = 32; - $56 = HEAP32[$data>>2]|0; - $57 = (($56) + 24|0); - dest=$57+0|0; stop=dest+76|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); - $58 = HEAP32[$pP1>>2]|0; - _zeroPage($58,13); - $59 = HEAP32[$1>>2]|0; - $60 = (($59) + 22|0); - $61 = HEAP16[$60>>1]|0; - $62 = $61&65535; - $63 = $62 | 2; - $64 = $63&65535; - HEAP16[$60>>1] = $64; - $65 = HEAP32[$data>>2]|0; - $66 = (($65) + 52|0); - $67 = HEAP32[$1>>2]|0; - $68 = (($67) + 17|0); - $69 = HEAP8[$68>>0]|0; - $70 = $69&255; - _sqlite3Put4byte($66,$70); - $71 = HEAP32[$data>>2]|0; - $72 = (($71) + 64|0); - $73 = HEAP32[$1>>2]|0; - $74 = (($73) + 18|0); - $75 = HEAP8[$74>>0]|0; - $76 = $75&255; - _sqlite3Put4byte($72,$76); - $77 = HEAP32[$1>>2]|0; - $78 = (($77) + 44|0); - HEAP32[$78>>2] = 1; - $79 = HEAP32[$data>>2]|0; - $80 = (($79) + 31|0); - HEAP8[$80>>0] = 1; - HEAP32[$0>>2] = 0; - $81 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($81|0); - } - return 0|0; -} -function _fetchPayload($pCur,$pAmt) { - $pCur = $pCur|0; - $pAmt = $pAmt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pCur; - HEAP32[$1>>2] = $pAmt; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 24|0); - $4 = (($3) + 22|0); - $5 = HEAP16[$4>>1]|0; - $6 = $5&65535; - $7 = HEAP32[$1>>2]|0; - HEAP32[$7>>2] = $6; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 24|0); - $10 = (($9) + 8|0); - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$0>>2]|0; - $13 = (($12) + 24|0); - $14 = (($13) + 20|0); - $15 = HEAP16[$14>>1]|0; - $16 = $15&65535; - $17 = (($11) + ($16)|0); - STACKTOP = sp;return ($17|0); -} -function _sqlite3BtreeCursorHasMoved($pCur,$pHasMoved) { - $pCur = $pCur|0; - $pHasMoved = $pHasMoved|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pCur; - HEAP32[$2>>2] = $pHasMoved; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 81|0); - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = ($6|0)==(1); - if ($7) { - $8 = HEAP32[$2>>2]|0; - HEAP32[$8>>2] = 0; - HEAP32[$0>>2] = 0; - $32 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($32|0); - } - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 81|0); - $11 = HEAP8[$10>>0]|0; - $12 = $11&255; - $13 = ($12|0)>=(3); - if ($13) { - $14 = HEAP32[$1>>2]|0; - $15 = (_btreeRestoreCursorPosition($14)|0); - $16 = $15; - } else { - $16 = 0; - } - HEAP32[$rc>>2] = $16; - $17 = HEAP32[$rc>>2]|0; - $18 = ($17|0)!=(0); - if ($18) { - $19 = HEAP32[$2>>2]|0; - HEAP32[$19>>2] = 2; - $20 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $20; - $32 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($32|0); - } - $21 = HEAP32[$1>>2]|0; - $22 = (($21) + 81|0); - $23 = HEAP8[$22>>0]|0; - $24 = $23&255; - $25 = ($24|0)!=(1); - if ($25) { - label = 9; - } else { - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 76|0); - $28 = HEAP32[$27>>2]|0; - $29 = ($28|0)!=(0); - if ($29) { - label = 9; - } else { - $31 = HEAP32[$2>>2]|0; - HEAP32[$31>>2] = 1; - } - } - if ((label|0) == 9) { - $30 = HEAP32[$2>>2]|0; - HEAP32[$30>>2] = 2; - } - HEAP32[$0>>2] = 0; - $32 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($32|0); -} -function _closeAllCursors($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pC = 0, $pDel = 0, $pFrame = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $pFrame = sp + 12|0; - $i = sp + 8|0; - $pC = sp + 4|0; - $pDel = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 176|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - if ($4) { - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 176|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$pFrame>>2] = $7; - while(1) { - $8 = HEAP32[$pFrame>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)!=(0|0); - $12 = HEAP32[$pFrame>>2]|0; - if (!($11)) { - break; - } - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - HEAP32[$pFrame>>2] = $14; - } - (_sqlite3VdbeFrameRestore($12)|0); - } - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 176|0); - HEAP32[$16>>2] = 0; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 184|0); - HEAP32[$18>>2] = 0; - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 56|0); - $21 = HEAP32[$20>>2]|0; - $22 = ($21|0)!=(0|0); - L8: do { - if ($22) { - HEAP32[$i>>2] = 0; - while(1) { - $23 = HEAP32[$i>>2]|0; - $24 = HEAP32[$0>>2]|0; - $25 = (($24) + 36|0); - $26 = HEAP32[$25>>2]|0; - $27 = ($23|0)<($26|0); - if (!($27)) { - break L8; - } - $28 = HEAP32[$i>>2]|0; - $29 = HEAP32[$0>>2]|0; - $30 = (($29) + 56|0); - $31 = HEAP32[$30>>2]|0; - $32 = (($31) + ($28<<2)|0); - $33 = HEAP32[$32>>2]|0; - HEAP32[$pC>>2] = $33; - $34 = HEAP32[$pC>>2]|0; - $35 = ($34|0)!=(0|0); - if ($35) { - $36 = HEAP32[$0>>2]|0; - $37 = HEAP32[$pC>>2]|0; - _sqlite3VdbeFreeCursor($36,$37); - $38 = HEAP32[$i>>2]|0; - $39 = HEAP32[$0>>2]|0; - $40 = (($39) + 56|0); - $41 = HEAP32[$40>>2]|0; - $42 = (($41) + ($38<<2)|0); - HEAP32[$42>>2] = 0; - } - $43 = HEAP32[$i>>2]|0; - $44 = (($43) + 1)|0; - HEAP32[$i>>2] = $44; - } - } - } while(0); - $45 = HEAP32[$0>>2]|0; - $46 = (($45) + 8|0); - $47 = HEAP32[$46>>2]|0; - $48 = ($47|0)!=(0|0); - if ($48) { - $49 = HEAP32[$0>>2]|0; - $50 = (($49) + 8|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + 40|0); - $53 = HEAP32[$0>>2]|0; - $54 = (($53) + 28|0); - $55 = HEAP32[$54>>2]|0; - _releaseMemArray($52,$55); - } - while(1) { - $56 = HEAP32[$0>>2]|0; - $57 = (($56) + 180|0); - $58 = HEAP32[$57>>2]|0; - $59 = ($58|0)!=(0|0); - $60 = HEAP32[$0>>2]|0; - if (!($59)) { - break; - } - $61 = (($60) + 180|0); - $62 = HEAP32[$61>>2]|0; - HEAP32[$pDel>>2] = $62; - $63 = HEAP32[$pDel>>2]|0; - $64 = (($63) + 4|0); - $65 = HEAP32[$64>>2]|0; - $66 = HEAP32[$0>>2]|0; - $67 = (($66) + 180|0); - HEAP32[$67>>2] = $65; - $68 = HEAP32[$pDel>>2]|0; - _sqlite3VdbeFrameDelete($68); - } - _sqlite3VdbeDeleteAuxData($60,-1,0); - STACKTOP = sp;return; -} -function _vdbeCommit($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; - var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; - var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; - var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; - var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; - var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; - var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; - var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; - var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iRandom = 0, $nMainFile = 0, $nTrans = 0, $needSync = 0, $needXcommit = 0, $offset = 0; - var $pBt = 0, $pBt1 = 0, $pBt2 = 0, $pBt3 = 0, $pBt4 = 0, $pBt5 = 0, $pMaster = 0, $pVfs = 0, $rc = 0, $res = 0, $retryCount = 0, $vararg_buffer11 = 0, $vararg_ptr14 = 0, $zFile = 0, $zMainFile = 0, $zMaster = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 112|0; - $vararg_buffer11 = sp + 8|0; - $0 = sp + 104|0; - $1 = sp + 100|0; - $2 = sp + 96|0; - $i = sp + 92|0; - $nTrans = sp + 88|0; - $rc = sp + 84|0; - $needXcommit = sp + 80|0; - $pBt = sp + 76|0; - $pBt1 = sp + 72|0; - $pBt2 = sp + 68|0; - $pVfs = sp + 64|0; - $needSync = sp + 60|0; - $zMaster = sp + 56|0; - $zMainFile = sp + 52|0; - $pMaster = sp + 48|0; - $offset = sp; - $res = sp + 44|0; - $retryCount = sp + 40|0; - $nMainFile = sp + 36|0; - $iRandom = sp + 32|0; - $pBt3 = sp + 28|0; - $zFile = sp + 24|0; - $pBt4 = sp + 20|0; - $pBt5 = sp + 16|0; - HEAP32[$1>>2] = $db; - HEAP32[$2>>2] = $p; - HEAP32[$nTrans>>2] = 0; - HEAP32[$rc>>2] = 0; - HEAP32[$needXcommit>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = HEAP32[$2>>2]|0; - $5 = (_sqlite3VtabSync($3,$4)|0); - HEAP32[$rc>>2] = $5; - HEAP32[$i>>2] = 0; - while(1) { - $6 = HEAP32[$rc>>2]|0; - $7 = ($6|0)==(0); - if (!($7)) { - break; - } - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = (($9) + 20|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($8|0)<($11|0); - if (!($12)) { - break; - } - $13 = HEAP32[$i>>2]|0; - $14 = HEAP32[$1>>2]|0; - $15 = (($14) + 16|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + ($13<<4)|0); - $18 = (($17) + 4|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$pBt>>2] = $19; - $20 = HEAP32[$pBt>>2]|0; - $21 = (_sqlite3BtreeIsInTrans($20)|0); - $22 = ($21|0)!=(0); - if ($22) { - HEAP32[$needXcommit>>2] = 1; - $23 = HEAP32[$i>>2]|0; - $24 = ($23|0)!=(1); - if ($24) { - $25 = HEAP32[$nTrans>>2]|0; - $26 = (($25) + 1)|0; - HEAP32[$nTrans>>2] = $26; - } - $27 = HEAP32[$pBt>>2]|0; - _sqlite3BtreeEnter($27); - $28 = HEAP32[$pBt>>2]|0; - $29 = (_sqlite3BtreePager($28)|0); - $30 = (_sqlite3PagerExclusiveLock($29)|0); - HEAP32[$rc>>2] = $30; - } - $31 = HEAP32[$i>>2]|0; - $32 = (($31) + 1)|0; - HEAP32[$i>>2] = $32; - } - $33 = HEAP32[$rc>>2]|0; - $34 = ($33|0)!=(0); - if ($34) { - $35 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $35; - $292 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($292|0); - } - $36 = HEAP32[$needXcommit>>2]|0; - $37 = ($36|0)!=(0); - if ($37) { - $38 = HEAP32[$1>>2]|0; - $39 = (($38) + 184|0); - $40 = HEAP32[$39>>2]|0; - $41 = ($40|0)!=(0|0); - if ($41) { - $42 = HEAP32[$1>>2]|0; - $43 = (($42) + 184|0); - $44 = HEAP32[$43>>2]|0; - $45 = HEAP32[$1>>2]|0; - $46 = (($45) + 180|0); - $47 = HEAP32[$46>>2]|0; - $48 = (FUNCTION_TABLE_ii[$44 & 31]($47)|0); - HEAP32[$rc>>2] = $48; - $49 = HEAP32[$rc>>2]|0; - $50 = ($49|0)!=(0); - if ($50) { - HEAP32[$0>>2] = 531; - $292 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($292|0); - } - } - } - $51 = HEAP32[$1>>2]|0; - $52 = (($51) + 16|0); - $53 = HEAP32[$52>>2]|0; - $54 = (($53) + 4|0); - $55 = HEAP32[$54>>2]|0; - $56 = (_sqlite3BtreeGetFilename($55)|0); - $57 = (_sqlite3Strlen30($56)|0); - $58 = (0)==($57|0); - if ($58) { - label = 17; - } else { - $59 = HEAP32[$nTrans>>2]|0; - $60 = ($59|0)<=(1); - if ($60) { - label = 17; - } else { - $104 = HEAP32[$1>>2]|0; - $105 = HEAP32[$104>>2]|0; - HEAP32[$pVfs>>2] = $105; - HEAP32[$needSync>>2] = 0; - HEAP32[$zMaster>>2] = 0; - $106 = HEAP32[$1>>2]|0; - $107 = (($106) + 16|0); - $108 = HEAP32[$107>>2]|0; - $109 = (($108) + 4|0); - $110 = HEAP32[$109>>2]|0; - $111 = (_sqlite3BtreeGetFilename($110)|0); - HEAP32[$zMainFile>>2] = $111; - HEAP32[$pMaster>>2] = 0; - $112 = $offset; - $113 = $112; - HEAP32[$113>>2] = 0; - $114 = (($112) + 4)|0; - $115 = $114; - HEAP32[$115>>2] = 0; - HEAP32[$retryCount>>2] = 0; - $116 = HEAP32[$zMainFile>>2]|0; - $117 = (_sqlite3Strlen30($116)|0); - HEAP32[$nMainFile>>2] = $117; - $118 = HEAP32[$1>>2]|0; - $119 = HEAP32[$zMainFile>>2]|0; - HEAP32[$vararg_buffer11>>2] = $119; - $120 = (_sqlite3MPrintf($118,34280,$vararg_buffer11)|0); - HEAP32[$zMaster>>2] = $120; - $121 = HEAP32[$zMaster>>2]|0; - $122 = ($121|0)==(0|0); - if ($122) { - HEAP32[$0>>2] = 7; - $292 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($292|0); - } - while(1) { - $123 = HEAP32[$retryCount>>2]|0; - $124 = ($123|0)!=(0); - if ($124) { - $125 = HEAP32[$retryCount>>2]|0; - $126 = ($125|0)>(100); - if ($126) { - label = 35; - break; - } - $130 = HEAP32[$retryCount>>2]|0; - $131 = ($130|0)==(1); - if ($131) { - $132 = HEAP32[$zMaster>>2]|0; - HEAP32[$vararg_buffer11>>2] = $132; - _sqlite3_log(13,34312,$vararg_buffer11); - } - } - $133 = HEAP32[$retryCount>>2]|0; - $134 = (($133) + 1)|0; - HEAP32[$retryCount>>2] = $134; - _sqlite3_randomness(4,$iRandom); - $135 = HEAP32[$nMainFile>>2]|0; - $136 = HEAP32[$zMaster>>2]|0; - $137 = (($136) + ($135)|0); - $138 = HEAP32[$iRandom>>2]|0; - $139 = $138 >>> 8; - $140 = $139 & 16777215; - $141 = HEAP32[$iRandom>>2]|0; - $142 = $141 & 255; - HEAP32[$vararg_buffer11>>2] = $140; - $vararg_ptr14 = (($vararg_buffer11) + 4|0); - HEAP32[$vararg_ptr14>>2] = $142; - (_sqlite3_snprintf(13,$137,34328,$vararg_buffer11)|0); - $143 = HEAP32[$pVfs>>2]|0; - $144 = HEAP32[$zMaster>>2]|0; - $145 = (_sqlite3OsAccess($143,$144,0,$res)|0); - HEAP32[$rc>>2] = $145; - $146 = HEAP32[$rc>>2]|0; - $147 = ($146|0)==(0); - if (!($147)) { - break; - } - $148 = HEAP32[$res>>2]|0; - $149 = ($148|0)!=(0); - if (!($149)) { - break; - } - } - if ((label|0) == 35) { - $127 = HEAP32[$zMaster>>2]|0; - HEAP32[$vararg_buffer11>>2] = $127; - _sqlite3_log(13,34296,$vararg_buffer11); - $128 = HEAP32[$pVfs>>2]|0; - $129 = HEAP32[$zMaster>>2]|0; - (_sqlite3OsDelete($128,$129,0)|0); - } - $150 = HEAP32[$rc>>2]|0; - $151 = ($150|0)==(0); - if ($151) { - $152 = HEAP32[$pVfs>>2]|0; - $153 = HEAP32[$zMaster>>2]|0; - $154 = (_sqlite3OsOpenMalloc($152,$153,$pMaster,16406,0)|0); - HEAP32[$rc>>2] = $154; - } - $155 = HEAP32[$rc>>2]|0; - $156 = ($155|0)!=(0); - if ($156) { - $157 = HEAP32[$1>>2]|0; - $158 = HEAP32[$zMaster>>2]|0; - _sqlite3DbFree($157,$158); - $159 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $159; - $292 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($292|0); - } - HEAP32[$i>>2] = 0; - while(1) { - $160 = HEAP32[$i>>2]|0; - $161 = HEAP32[$1>>2]|0; - $162 = (($161) + 20|0); - $163 = HEAP32[$162>>2]|0; - $164 = ($160|0)<($163|0); - if (!($164)) { - break; - } - $165 = HEAP32[$i>>2]|0; - $166 = HEAP32[$1>>2]|0; - $167 = (($166) + 16|0); - $168 = HEAP32[$167>>2]|0; - $169 = (($168) + ($165<<4)|0); - $170 = (($169) + 4|0); - $171 = HEAP32[$170>>2]|0; - HEAP32[$pBt3>>2] = $171; - $172 = HEAP32[$pBt3>>2]|0; - $173 = (_sqlite3BtreeIsInTrans($172)|0); - $174 = ($173|0)!=(0); - if ($174) { - $175 = HEAP32[$pBt3>>2]|0; - $176 = (_sqlite3BtreeGetJournalname($175)|0); - HEAP32[$zFile>>2] = $176; - $177 = HEAP32[$zFile>>2]|0; - $178 = ($177|0)==(0|0); - if (!($178)) { - $179 = HEAP32[$needSync>>2]|0; - $180 = ($179|0)!=(0); - if (!($180)) { - $181 = HEAP32[$pBt3>>2]|0; - $182 = (_sqlite3BtreeSyncDisabled($181)|0); - $183 = ($182|0)!=(0); - if (!($183)) { - HEAP32[$needSync>>2] = 1; - } - } - $184 = HEAP32[$pMaster>>2]|0; - $185 = HEAP32[$zFile>>2]|0; - $186 = HEAP32[$zFile>>2]|0; - $187 = (_sqlite3Strlen30($186)|0); - $188 = (($187) + 1)|0; - $189 = $offset; - $190 = $189; - $191 = HEAP32[$190>>2]|0; - $192 = (($189) + 4)|0; - $193 = $192; - $194 = HEAP32[$193>>2]|0; - $195 = (_sqlite3OsWrite($184,$185,$188,$191,$194)|0); - HEAP32[$rc>>2] = $195; - $196 = HEAP32[$zFile>>2]|0; - $197 = (_sqlite3Strlen30($196)|0); - $198 = (($197) + 1)|0; - $199 = ($198|0)<(0); - $200 = $199 << 31 >> 31; - $201 = $offset; - $202 = $201; - $203 = HEAP32[$202>>2]|0; - $204 = (($201) + 4)|0; - $205 = $204; - $206 = HEAP32[$205>>2]|0; - $207 = (_i64Add(($203|0),($206|0),($198|0),($200|0))|0); - $208 = tempRet0; - $209 = $offset; - $210 = $209; - HEAP32[$210>>2] = $207; - $211 = (($209) + 4)|0; - $212 = $211; - HEAP32[$212>>2] = $208; - $213 = HEAP32[$rc>>2]|0; - $214 = ($213|0)!=(0); - if ($214) { - label = 52; - break; - } - } - } - $221 = HEAP32[$i>>2]|0; - $222 = (($221) + 1)|0; - HEAP32[$i>>2] = $222; - } - if ((label|0) == 52) { - $215 = HEAP32[$pMaster>>2]|0; - (_sqlite3OsCloseFree($215)|0); - $216 = HEAP32[$pVfs>>2]|0; - $217 = HEAP32[$zMaster>>2]|0; - (_sqlite3OsDelete($216,$217,0)|0); - $218 = HEAP32[$1>>2]|0; - $219 = HEAP32[$zMaster>>2]|0; - _sqlite3DbFree($218,$219); - $220 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $220; - $292 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($292|0); - } - $223 = HEAP32[$needSync>>2]|0; - $224 = ($223|0)!=(0); - if ($224) { - $225 = HEAP32[$pMaster>>2]|0; - $226 = (_sqlite3OsDeviceCharacteristics($225)|0); - $227 = $226 & 1024; - $228 = (0)==($227|0); - if ($228) { - $229 = HEAP32[$pMaster>>2]|0; - $230 = (_sqlite3OsSync($229,2)|0); - HEAP32[$rc>>2] = $230; - $231 = (0)!=($230|0); - if ($231) { - $232 = HEAP32[$pMaster>>2]|0; - (_sqlite3OsCloseFree($232)|0); - $233 = HEAP32[$pVfs>>2]|0; - $234 = HEAP32[$zMaster>>2]|0; - (_sqlite3OsDelete($233,$234,0)|0); - $235 = HEAP32[$1>>2]|0; - $236 = HEAP32[$zMaster>>2]|0; - _sqlite3DbFree($235,$236); - $237 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $237; - $292 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($292|0); - } - } - } - HEAP32[$i>>2] = 0; - while(1) { - $238 = HEAP32[$rc>>2]|0; - $239 = ($238|0)==(0); - if (!($239)) { - break; - } - $240 = HEAP32[$i>>2]|0; - $241 = HEAP32[$1>>2]|0; - $242 = (($241) + 20|0); - $243 = HEAP32[$242>>2]|0; - $244 = ($240|0)<($243|0); - if (!($244)) { - break; - } - $245 = HEAP32[$i>>2]|0; - $246 = HEAP32[$1>>2]|0; - $247 = (($246) + 16|0); - $248 = HEAP32[$247>>2]|0; - $249 = (($248) + ($245<<4)|0); - $250 = (($249) + 4|0); - $251 = HEAP32[$250>>2]|0; - HEAP32[$pBt4>>2] = $251; - $252 = HEAP32[$pBt4>>2]|0; - $253 = ($252|0)!=(0|0); - if ($253) { - $254 = HEAP32[$pBt4>>2]|0; - $255 = HEAP32[$zMaster>>2]|0; - $256 = (_sqlite3BtreeCommitPhaseOne($254,$255)|0); - HEAP32[$rc>>2] = $256; - } - $257 = HEAP32[$i>>2]|0; - $258 = (($257) + 1)|0; - HEAP32[$i>>2] = $258; - } - $259 = HEAP32[$pMaster>>2]|0; - (_sqlite3OsCloseFree($259)|0); - $260 = HEAP32[$rc>>2]|0; - $261 = ($260|0)!=(0); - if ($261) { - $262 = HEAP32[$1>>2]|0; - $263 = HEAP32[$zMaster>>2]|0; - _sqlite3DbFree($262,$263); - $264 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $264; - $292 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($292|0); - } - $265 = HEAP32[$pVfs>>2]|0; - $266 = HEAP32[$zMaster>>2]|0; - $267 = (_sqlite3OsDelete($265,$266,1)|0); - HEAP32[$rc>>2] = $267; - $268 = HEAP32[$1>>2]|0; - $269 = HEAP32[$zMaster>>2]|0; - _sqlite3DbFree($268,$269); - HEAP32[$zMaster>>2] = 0; - $270 = HEAP32[$rc>>2]|0; - $271 = ($270|0)!=(0); - if ($271) { - $272 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $272; - $292 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($292|0); - } - _sqlite3BeginBenignMalloc(); - HEAP32[$i>>2] = 0; - while(1) { - $273 = HEAP32[$i>>2]|0; - $274 = HEAP32[$1>>2]|0; - $275 = (($274) + 20|0); - $276 = HEAP32[$275>>2]|0; - $277 = ($273|0)<($276|0); - if (!($277)) { - break; - } - $278 = HEAP32[$i>>2]|0; - $279 = HEAP32[$1>>2]|0; - $280 = (($279) + 16|0); - $281 = HEAP32[$280>>2]|0; - $282 = (($281) + ($278<<4)|0); - $283 = (($282) + 4|0); - $284 = HEAP32[$283>>2]|0; - HEAP32[$pBt5>>2] = $284; - $285 = HEAP32[$pBt5>>2]|0; - $286 = ($285|0)!=(0|0); - if ($286) { - $287 = HEAP32[$pBt5>>2]|0; - (_sqlite3BtreeCommitPhaseTwo($287,1)|0); - } - $288 = HEAP32[$i>>2]|0; - $289 = (($288) + 1)|0; - HEAP32[$i>>2] = $289; - } - _sqlite3EndBenignMalloc(); - $290 = HEAP32[$1>>2]|0; - (_sqlite3VtabCommit($290)|0); - } - } - if ((label|0) == 17) { - HEAP32[$i>>2] = 0; - while(1) { - $61 = HEAP32[$rc>>2]|0; - $62 = ($61|0)==(0); - if (!($62)) { - break; - } - $63 = HEAP32[$i>>2]|0; - $64 = HEAP32[$1>>2]|0; - $65 = (($64) + 20|0); - $66 = HEAP32[$65>>2]|0; - $67 = ($63|0)<($66|0); - if (!($67)) { - break; - } - $68 = HEAP32[$i>>2]|0; - $69 = HEAP32[$1>>2]|0; - $70 = (($69) + 16|0); - $71 = HEAP32[$70>>2]|0; - $72 = (($71) + ($68<<4)|0); - $73 = (($72) + 4|0); - $74 = HEAP32[$73>>2]|0; - HEAP32[$pBt1>>2] = $74; - $75 = HEAP32[$pBt1>>2]|0; - $76 = ($75|0)!=(0|0); - if ($76) { - $77 = HEAP32[$pBt1>>2]|0; - $78 = (_sqlite3BtreeCommitPhaseOne($77,0)|0); - HEAP32[$rc>>2] = $78; - } - $79 = HEAP32[$i>>2]|0; - $80 = (($79) + 1)|0; - HEAP32[$i>>2] = $80; - } - HEAP32[$i>>2] = 0; - while(1) { - $81 = HEAP32[$rc>>2]|0; - $82 = ($81|0)==(0); - if (!($82)) { - break; - } - $83 = HEAP32[$i>>2]|0; - $84 = HEAP32[$1>>2]|0; - $85 = (($84) + 20|0); - $86 = HEAP32[$85>>2]|0; - $87 = ($83|0)<($86|0); - if (!($87)) { - break; - } - $88 = HEAP32[$i>>2]|0; - $89 = HEAP32[$1>>2]|0; - $90 = (($89) + 16|0); - $91 = HEAP32[$90>>2]|0; - $92 = (($91) + ($88<<4)|0); - $93 = (($92) + 4|0); - $94 = HEAP32[$93>>2]|0; - HEAP32[$pBt2>>2] = $94; - $95 = HEAP32[$pBt2>>2]|0; - $96 = ($95|0)!=(0|0); - if ($96) { - $97 = HEAP32[$pBt2>>2]|0; - $98 = (_sqlite3BtreeCommitPhaseTwo($97,0)|0); - HEAP32[$rc>>2] = $98; - } - $99 = HEAP32[$i>>2]|0; - $100 = (($99) + 1)|0; - HEAP32[$i>>2] = $100; - } - $101 = HEAP32[$rc>>2]|0; - $102 = ($101|0)==(0); - if ($102) { - $103 = HEAP32[$1>>2]|0; - (_sqlite3VtabCommit($103)|0); - } - } - $291 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $291; - $292 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($292|0); -} -function _sqlite3VtabSync($db,$p) { - $db = $db|0; - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aVTrans = 0, $i = 0; - var $pVtab = 0, $rc = 0, $x = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $i = sp + 16|0; - $rc = sp + 12|0; - $aVTrans = sp + 8|0; - $x = sp + 4|0; - $pVtab = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $p; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 320|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$aVTrans>>2] = $4; - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 320|0); - HEAP32[$6>>2] = 0; - HEAP32[$i>>2] = 0; - while(1) { - $7 = HEAP32[$rc>>2]|0; - $8 = ($7|0)==(0); - if (!($8)) { - label = 8; - break; - } - $9 = HEAP32[$i>>2]|0; - $10 = HEAP32[$0>>2]|0; - $11 = (($10) + 296|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($9|0)<($12|0); - if (!($13)) { - label = 8; - break; - } - $14 = HEAP32[$i>>2]|0; - $15 = HEAP32[$aVTrans>>2]|0; - $16 = (($15) + ($14<<2)|0); - $17 = HEAP32[$16>>2]|0; - $18 = (($17) + 8|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$pVtab>>2] = $19; - $20 = HEAP32[$pVtab>>2]|0; - $21 = ($20|0)!=(0|0); - if ($21) { - $22 = HEAP32[$pVtab>>2]|0; - $23 = HEAP32[$22>>2]|0; - $24 = (($23) + 60|0); - $25 = HEAP32[$24>>2]|0; - HEAP32[$x>>2] = $25; - $26 = ($25|0)!=(0|0); - if ($26) { - $27 = HEAP32[$x>>2]|0; - $28 = HEAP32[$pVtab>>2]|0; - $29 = (FUNCTION_TABLE_ii[$27 & 31]($28)|0); - HEAP32[$rc>>2] = $29; - $30 = HEAP32[$1>>2]|0; - $31 = HEAP32[$pVtab>>2]|0; - _sqlite3VtabImportErrmsg($30,$31); - } - } - $32 = HEAP32[$i>>2]|0; - $33 = (($32) + 1)|0; - HEAP32[$i>>2] = $33; - } - if ((label|0) == 8) { - $34 = HEAP32[$aVTrans>>2]|0; - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + 320|0); - HEAP32[$36>>2] = $34; - $37 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($37|0); - } - return 0|0; -} -function _sqlite3VtabCommit($db) { - $db = $db|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $db; - $1 = HEAP32[$0>>2]|0; - _callFinaliser($1,64); - STACKTOP = sp;return 0; -} -function _sqlite3BtreeGetJournalname($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = (_sqlite3PagerJournalname($4)|0); - STACKTOP = sp;return ($5|0); -} -function _sqlite3BtreeSyncDisabled($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $pBt = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pBt>>2] = $3; - $4 = HEAP32[$0>>2]|0; - _sqlite3BtreeEnter($4); - $5 = HEAP32[$pBt>>2]|0; - $6 = HEAP32[$5>>2]|0; - $7 = (_sqlite3PagerNosync($6)|0); - HEAP32[$rc>>2] = $7; - $8 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($8|0); -} -function _sqlite3PagerNosync($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 7|0); - $3 = HEAP8[$2>>0]|0; - $4 = $3&255; - STACKTOP = sp;return ($4|0); -} -function _sqlite3PagerJournalname($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pPager; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 172|0); - $3 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _sqlite3VdbeFrameDelete($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aMem = 0, $apCsr = 0, $i = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $i = sp + 8|0; - $aMem = sp + 4|0; - $apCsr = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 72|0); - HEAP32[$aMem>>2] = $2; - $3 = HEAP32[$0>>2]|0; - $4 = (($3) + 60|0); - $5 = HEAP32[$4>>2]|0; - $6 = HEAP32[$aMem>>2]|0; - $7 = (($6) + (($5*40)|0)|0); - HEAP32[$apCsr>>2] = $7; - HEAP32[$i>>2] = 0; - while(1) { - $8 = HEAP32[$i>>2]|0; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 64|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($8|0)<($11|0); - if (!($12)) { - break; - } - $13 = HEAP32[$0>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$i>>2]|0; - $16 = HEAP32[$apCsr>>2]|0; - $17 = (($16) + ($15<<2)|0); - $18 = HEAP32[$17>>2]|0; - _sqlite3VdbeFreeCursor($14,$18); - $19 = HEAP32[$i>>2]|0; - $20 = (($19) + 1)|0; - HEAP32[$i>>2] = $20; - } - $21 = HEAP32[$aMem>>2]|0; - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 60|0); - $24 = HEAP32[$23>>2]|0; - _releaseMemArray($21,$24); - $25 = HEAP32[$0>>2]|0; - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$26>>2]|0; - $28 = HEAP32[$0>>2]|0; - _sqlite3DbFree($27,$28); - STACKTOP = sp;return; -} -function _sqlite3OpcodeName($i) { - $i = $i|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $i; - $1 = HEAP32[$0>>2]|0; - $2 = (34456 + ($1<<2)|0); - $3 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($3|0); -} -function _displayP4($pOp,$zTemp,$nTemp) { - $pOp = $pOp|0; - $zTemp = $zTemp|0; - $nTemp = $nTemp|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0.0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0.0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; - var $i = 0, $j = 0, $n = 0, $pColl = 0, $pColl1 = 0, $pDef = 0, $pKeyInfo = 0, $pMem = 0, $pVtab = 0, $vararg_buffer31 = 0, $vararg_ptr28 = 0, $vararg_ptr7 = 0, $zColl = 0, $zP4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 64|0; - $vararg_buffer31 = sp; - $0 = sp + 60|0; - $1 = sp + 56|0; - $2 = sp + 52|0; - $zP4 = sp + 48|0; - $i = sp + 44|0; - $j = sp + 40|0; - $pKeyInfo = sp + 36|0; - $pColl = sp + 32|0; - $zColl = sp + 28|0; - $n = sp + 24|0; - $pColl1 = sp + 20|0; - $pDef = sp + 16|0; - $pMem = sp + 12|0; - $pVtab = sp + 8|0; - HEAP32[$0>>2] = $pOp; - HEAP32[$1>>2] = $zTemp; - HEAP32[$2>>2] = $nTemp; - $3 = HEAP32[$1>>2]|0; - HEAP32[$zP4>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 1|0); - $6 = HEAP8[$5>>0]|0; - $7 = $6 << 24 >> 24; - do { - switch ($7|0) { - case -18: { - $189 = HEAP32[$2>>2]|0; - $190 = HEAP32[$1>>2]|0; - (_sqlite3_snprintf($189,$190,34448,$vararg_buffer31)|0); - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - break; - } - case -19: { - $191 = HEAP32[$1>>2]|0; - HEAP8[$191>>0] = 0; - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - break; - } - case -12: { - $121 = HEAP32[$2>>2]|0; - $122 = HEAP32[$1>>2]|0; - $123 = HEAP32[$0>>2]|0; - $124 = (($123) + 16|0); - $125 = HEAP32[$124>>2]|0; - $126 = +HEAPF64[$125>>3]; - HEAPF64[tempDoublePtr>>3]=$126;HEAP32[$vararg_buffer31>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_buffer31+4>>2]=HEAP32[tempDoublePtr+4>>2]; - (_sqlite3_snprintf($121,$122,9352,$vararg_buffer31)|0); - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - break; - } - case -15: { - $187 = HEAP32[$2>>2]|0; - $188 = HEAP32[$1>>2]|0; - (_sqlite3_snprintf($187,$188,34432,$vararg_buffer31)|0); - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - break; - } - case -8: { - $127 = HEAP32[$0>>2]|0; - $128 = (($127) + 16|0); - $129 = HEAP32[$128>>2]|0; - HEAP32[$pMem>>2] = $129; - $130 = HEAP32[$pMem>>2]|0; - $131 = (($130) + 28|0); - $132 = HEAP16[$131>>1]|0; - $133 = $132&65535; - $134 = $133 & 2; - $135 = ($134|0)!=(0); - $136 = HEAP32[$pMem>>2]|0; - if ($135) { - $137 = (($136) + 4|0); - $138 = HEAP32[$137>>2]|0; - HEAP32[$zP4>>2] = $138; - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - } - $139 = (($136) + 28|0); - $140 = HEAP16[$139>>1]|0; - $141 = $140&65535; - $142 = $141 & 4; - $143 = ($142|0)!=(0); - if ($143) { - $144 = HEAP32[$2>>2]|0; - $145 = HEAP32[$1>>2]|0; - $146 = HEAP32[$pMem>>2]|0; - $147 = (($146) + 16|0); - $148 = $147; - $149 = $148; - $150 = HEAP32[$149>>2]|0; - $151 = (($148) + 4)|0; - $152 = $151; - $153 = HEAP32[$152>>2]|0; - $154 = $vararg_buffer31; - $155 = $154; - HEAP32[$155>>2] = $150; - $156 = (($154) + 4)|0; - $157 = $156; - HEAP32[$157>>2] = $153; - (_sqlite3_snprintf($144,$145,9360,$vararg_buffer31)|0); - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - } - $158 = HEAP32[$pMem>>2]|0; - $159 = (($158) + 28|0); - $160 = HEAP16[$159>>1]|0; - $161 = $160&65535; - $162 = $161 & 8; - $163 = ($162|0)!=(0); - if ($163) { - $164 = HEAP32[$2>>2]|0; - $165 = HEAP32[$1>>2]|0; - $166 = HEAP32[$pMem>>2]|0; - $167 = (($166) + 8|0); - $168 = +HEAPF64[$167>>3]; - HEAPF64[tempDoublePtr>>3]=$168;HEAP32[$vararg_buffer31>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_buffer31+4>>2]=HEAP32[tempDoublePtr+4>>2]; - (_sqlite3_snprintf($164,$165,9352,$vararg_buffer31)|0); - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - } - $169 = HEAP32[$pMem>>2]|0; - $170 = (($169) + 28|0); - $171 = HEAP16[$170>>1]|0; - $172 = $171&65535; - $173 = $172 & 1; - $174 = ($173|0)!=(0); - if ($174) { - $175 = HEAP32[$2>>2]|0; - $176 = HEAP32[$1>>2]|0; - (_sqlite3_snprintf($175,$176,9744,$vararg_buffer31)|0); - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - } else { - HEAP32[$zP4>>2] = 34408; - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - } - break; - } - case -5: { - $90 = HEAP32[$0>>2]|0; - $91 = (($90) + 16|0); - $92 = HEAP32[$91>>2]|0; - HEAP32[$pDef>>2] = $92; - $93 = HEAP32[$2>>2]|0; - $94 = HEAP32[$1>>2]|0; - $95 = HEAP32[$pDef>>2]|0; - $96 = (($95) + 24|0); - $97 = HEAP32[$96>>2]|0; - $98 = HEAP32[$pDef>>2]|0; - $99 = HEAP16[$98>>1]|0; - $100 = $99 << 16 >> 16; - HEAP32[$vararg_buffer31>>2] = $97; - $vararg_ptr7 = (($vararg_buffer31) + 4|0); - HEAP32[$vararg_ptr7>>2] = $100; - (_sqlite3_snprintf($93,$94,34392,$vararg_buffer31)|0); - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - break; - } - case -14: { - $116 = HEAP32[$2>>2]|0; - $117 = HEAP32[$1>>2]|0; - $118 = HEAP32[$0>>2]|0; - $119 = (($118) + 16|0); - $120 = HEAP32[$119>>2]|0; - HEAP32[$vararg_buffer31>>2] = $120; - (_sqlite3_snprintf($116,$117,34400,$vararg_buffer31)|0); - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - break; - } - case -13: { - $101 = HEAP32[$2>>2]|0; - $102 = HEAP32[$1>>2]|0; - $103 = HEAP32[$0>>2]|0; - $104 = (($103) + 16|0); - $105 = HEAP32[$104>>2]|0; - $106 = $105; - $107 = $106; - $108 = HEAP32[$107>>2]|0; - $109 = (($106) + 4)|0; - $110 = $109; - $111 = HEAP32[$110>>2]|0; - $112 = $vararg_buffer31; - $113 = $112; - HEAP32[$113>>2] = $108; - $114 = (($112) + 4)|0; - $115 = $114; - HEAP32[$115>>2] = $111; - (_sqlite3_snprintf($101,$102,9360,$vararg_buffer31)|0); - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - break; - } - case -4: { - $83 = HEAP32[$0>>2]|0; - $84 = (($83) + 16|0); - $85 = HEAP32[$84>>2]|0; - HEAP32[$pColl1>>2] = $85; - $86 = HEAP32[$2>>2]|0; - $87 = HEAP32[$1>>2]|0; - $88 = HEAP32[$pColl1>>2]|0; - $89 = HEAP32[$88>>2]|0; - HEAP32[$vararg_buffer31>>2] = $89; - (_sqlite3_snprintf($86,$87,34384,$vararg_buffer31)|0); - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - break; - } - case -10: { - $177 = HEAP32[$0>>2]|0; - $178 = (($177) + 16|0); - $179 = HEAP32[$178>>2]|0; - $180 = (($179) + 8|0); - $181 = HEAP32[$180>>2]|0; - HEAP32[$pVtab>>2] = $181; - $182 = HEAP32[$2>>2]|0; - $183 = HEAP32[$1>>2]|0; - $184 = HEAP32[$pVtab>>2]|0; - $185 = HEAP32[$pVtab>>2]|0; - $186 = HEAP32[$185>>2]|0; - HEAP32[$vararg_buffer31>>2] = $184; - $vararg_ptr28 = (($vararg_buffer31) + 4|0); - HEAP32[$vararg_ptr28>>2] = $186; - (_sqlite3_snprintf($182,$183,34416,$vararg_buffer31)|0); - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - break; - } - case -6: { - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 16|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$pKeyInfo>>2] = $10; - $11 = HEAP32[$2>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = HEAP32[$pKeyInfo>>2]|0; - $14 = (($13) + 6|0); - $15 = HEAP16[$14>>1]|0; - $16 = $15&65535; - HEAP32[$vararg_buffer31>>2] = $16; - (_sqlite3_snprintf($11,$12,34352,$vararg_buffer31)|0); - $17 = HEAP32[$1>>2]|0; - $18 = (_sqlite3Strlen30($17)|0); - HEAP32[$i>>2] = $18; - HEAP32[$j>>2] = 0; - while(1) { - $19 = HEAP32[$j>>2]|0; - $20 = HEAP32[$pKeyInfo>>2]|0; - $21 = (($20) + 6|0); - $22 = HEAP16[$21>>1]|0; - $23 = $22&65535; - $24 = ($19|0)<($23|0); - if (!($24)) { - break; - } - $25 = HEAP32[$j>>2]|0; - $26 = HEAP32[$pKeyInfo>>2]|0; - $27 = (($26) + 20|0); - $28 = (($27) + ($25<<2)|0); - $29 = HEAP32[$28>>2]|0; - HEAP32[$pColl>>2] = $29; - $30 = HEAP32[$pColl>>2]|0; - $31 = ($30|0)!=(0|0); - if ($31) { - $32 = HEAP32[$pColl>>2]|0; - $33 = HEAP32[$32>>2]|0; - $34 = $33; - } else { - $34 = 34360; - } - HEAP32[$zColl>>2] = $34; - $35 = HEAP32[$zColl>>2]|0; - $36 = (_sqlite3Strlen30($35)|0); - HEAP32[$n>>2] = $36; - $37 = HEAP32[$n>>2]|0; - $38 = ($37|0)==(6); - if ($38) { - $39 = HEAP32[$zColl>>2]|0; - $40 = (_memcmp($39,3320,6)|0); - $41 = ($40|0)==(0); - if ($41) { - HEAP32[$zColl>>2] = 34368; - HEAP32[$n>>2] = 1; - } - } - $42 = HEAP32[$i>>2]|0; - $43 = HEAP32[$n>>2]|0; - $44 = (($42) + ($43))|0; - $45 = HEAP32[$2>>2]|0; - $46 = (($45) - 6)|0; - $47 = ($44|0)>($46|0); - $48 = HEAP32[$i>>2]|0; - if ($47) { - label = 10; - break; - } - $51 = (($48) + 1)|0; - HEAP32[$i>>2] = $51; - $52 = HEAP32[$1>>2]|0; - $53 = (($52) + ($48)|0); - HEAP8[$53>>0] = 44; - $54 = HEAP32[$j>>2]|0; - $55 = HEAP32[$pKeyInfo>>2]|0; - $56 = (($55) + 16|0); - $57 = HEAP32[$56>>2]|0; - $58 = (($57) + ($54)|0); - $59 = HEAP8[$58>>0]|0; - $60 = ($59<<24>>24)!=(0); - if ($60) { - $61 = HEAP32[$i>>2]|0; - $62 = (($61) + 1)|0; - HEAP32[$i>>2] = $62; - $63 = HEAP32[$1>>2]|0; - $64 = (($63) + ($61)|0); - HEAP8[$64>>0] = 45; - } - $65 = HEAP32[$i>>2]|0; - $66 = HEAP32[$1>>2]|0; - $67 = (($66) + ($65)|0); - $68 = HEAP32[$zColl>>2]|0; - $69 = HEAP32[$n>>2]|0; - $70 = (($69) + 1)|0; - _memcpy(($67|0),($68|0),($70|0))|0; - $71 = HEAP32[$n>>2]|0; - $72 = HEAP32[$i>>2]|0; - $73 = (($72) + ($71))|0; - HEAP32[$i>>2] = $73; - $74 = HEAP32[$j>>2]|0; - $75 = (($74) + 1)|0; - HEAP32[$j>>2] = $75; - } - if ((label|0) == 10) { - $49 = HEAP32[$1>>2]|0; - $50 = (($49) + ($48)|0); - ;HEAP8[$50+0>>0]=HEAP8[34376+0>>0]|0;HEAP8[$50+1>>0]=HEAP8[34376+1>>0]|0;HEAP8[$50+2>>0]=HEAP8[34376+2>>0]|0;HEAP8[$50+3>>0]=HEAP8[34376+3>>0]|0; - } - $76 = HEAP32[$i>>2]|0; - $77 = (($76) + 1)|0; - HEAP32[$i>>2] = $77; - $78 = HEAP32[$1>>2]|0; - $79 = (($78) + ($76)|0); - HEAP8[$79>>0] = 41; - $80 = HEAP32[$i>>2]|0; - $81 = HEAP32[$1>>2]|0; - $82 = (($81) + ($80)|0); - HEAP8[$82>>0] = 0; - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - break; - } - default: { - $192 = HEAP32[$0>>2]|0; - $193 = (($192) + 16|0); - $194 = HEAP32[$193>>2]|0; - HEAP32[$zP4>>2] = $194; - $195 = HEAP32[$zP4>>2]|0; - $196 = ($195|0)==(0|0); - if (!($196)) { - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - } - $197 = HEAP32[$1>>2]|0; - HEAP32[$zP4>>2] = $197; - $198 = HEAP32[$1>>2]|0; - HEAP8[$198>>0] = 0; - $199 = HEAP32[$zP4>>2]|0; - STACKTOP = sp;return ($199|0); - } - } - } while(0); - return 0|0; -} -function _sqlite3VdbeMemHandleBom($pMem) { - $pMem = $pMem|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $b1 = 0, $b2 = 0, $bom = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $rc = sp; - $bom = sp + 10|0; - $b1 = sp + 9|0; - $b2 = sp + 8|0; - HEAP32[$0>>2] = $pMem; - HEAP32[$rc>>2] = 0; - HEAP8[$bom>>0] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 24|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)>(1); - if ($4) { - $5 = HEAP32[$0>>2]|0; - $6 = (($5) + 4|0); - $7 = HEAP32[$6>>2]|0; - $8 = HEAP8[$7>>0]|0; - HEAP8[$b1>>0] = $8; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 4|0); - $11 = HEAP32[$10>>2]|0; - $12 = (($11) + 1|0); - $13 = HEAP8[$12>>0]|0; - HEAP8[$b2>>0] = $13; - $14 = HEAP8[$b1>>0]|0; - $15 = $14&255; - $16 = ($15|0)==(254); - if ($16) { - $17 = HEAP8[$b2>>0]|0; - $18 = $17&255; - $19 = ($18|0)==(255); - if ($19) { - HEAP8[$bom>>0] = 3; - } - } - $20 = HEAP8[$b1>>0]|0; - $21 = $20&255; - $22 = ($21|0)==(255); - if ($22) { - $23 = HEAP8[$b2>>0]|0; - $24 = $23&255; - $25 = ($24|0)==(254); - if ($25) { - HEAP8[$bom>>0] = 2; - } - } - } - $26 = HEAP8[$bom>>0]|0; - $27 = ($26<<24>>24)!=(0); - if (!($27)) { - $70 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($70|0); - } - $28 = HEAP32[$0>>2]|0; - $29 = (_sqlite3VdbeMemMakeWriteable($28)|0); - HEAP32[$rc>>2] = $29; - $30 = HEAP32[$rc>>2]|0; - $31 = ($30|0)==(0); - if (!($31)) { - $70 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($70|0); - } - $32 = HEAP32[$0>>2]|0; - $33 = (($32) + 24|0); - $34 = HEAP32[$33>>2]|0; - $35 = (($34) - 2)|0; - HEAP32[$33>>2] = $35; - $36 = HEAP32[$0>>2]|0; - $37 = (($36) + 4|0); - $38 = HEAP32[$37>>2]|0; - $39 = HEAP32[$0>>2]|0; - $40 = (($39) + 4|0); - $41 = HEAP32[$40>>2]|0; - $42 = (($41) + 2|0); - $43 = HEAP32[$0>>2]|0; - $44 = (($43) + 24|0); - $45 = HEAP32[$44>>2]|0; - _memmove(($38|0),($42|0),($45|0))|0; - $46 = HEAP32[$0>>2]|0; - $47 = (($46) + 24|0); - $48 = HEAP32[$47>>2]|0; - $49 = HEAP32[$0>>2]|0; - $50 = (($49) + 4|0); - $51 = HEAP32[$50>>2]|0; - $52 = (($51) + ($48)|0); - HEAP8[$52>>0] = 0; - $53 = HEAP32[$0>>2]|0; - $54 = (($53) + 24|0); - $55 = HEAP32[$54>>2]|0; - $56 = (($55) + 1)|0; - $57 = HEAP32[$0>>2]|0; - $58 = (($57) + 4|0); - $59 = HEAP32[$58>>2]|0; - $60 = (($59) + ($56)|0); - HEAP8[$60>>0] = 0; - $61 = HEAP32[$0>>2]|0; - $62 = (($61) + 28|0); - $63 = HEAP16[$62>>1]|0; - $64 = $63&65535; - $65 = $64 | 512; - $66 = $65&65535; - HEAP16[$62>>1] = $66; - $67 = HEAP8[$bom>>0]|0; - $68 = HEAP32[$0>>2]|0; - $69 = (($68) + 30|0); - HEAP8[$69>>0] = $67; - $70 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($70|0); -} -function _Cleanup($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = HEAP32[$1>>2]|0; - HEAP32[$db>>2] = $2; - $3 = HEAP32[$db>>2]|0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 44|0); - $6 = HEAP32[$5>>2]|0; - _sqlite3DbFree($3,$6); - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 44|0); - HEAP32[$8>>2] = 0; - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 20|0); - HEAP32[$10>>2] = 0; - STACKTOP = sp;return; -} -function _vdbeFreeOpArray($db,$aOp,$nOp) { - $db = $db|0; - $aOp = $aOp|0; - $nOp = $nOp|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $pOp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $pOp = sp; - HEAP32[$0>>2] = $db; - HEAP32[$1>>2] = $aOp; - HEAP32[$2>>2] = $nOp; - $3 = HEAP32[$1>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$1>>2]|0; - _sqlite3DbFree($21,$22); - STACKTOP = sp;return; - } - $5 = HEAP32[$1>>2]|0; - HEAP32[$pOp>>2] = $5; - while(1) { - $6 = HEAP32[$pOp>>2]|0; - $7 = HEAP32[$2>>2]|0; - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + (($7*20)|0)|0); - $10 = ($6>>>0)<($9>>>0); - if (!($10)) { - break; - } - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$pOp>>2]|0; - $13 = (($12) + 1|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14 << 24 >> 24; - $16 = HEAP32[$pOp>>2]|0; - $17 = (($16) + 16|0); - $18 = HEAP32[$17>>2]|0; - _freeP4($11,$15,$18); - $19 = HEAP32[$pOp>>2]|0; - $20 = (($19) + 20|0); - HEAP32[$pOp>>2] = $20; - } - $21 = HEAP32[$0>>2]|0; - $22 = HEAP32[$1>>2]|0; - _sqlite3DbFree($21,$22); - STACKTOP = sp;return; -} -function _btreeClearHasContent($pBt) { - $pBt = $pBt|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $pBt; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 60|0); - $3 = HEAP32[$2>>2]|0; - _sqlite3BitvecDestroy($3); - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 60|0); - HEAP32[$5>>2] = 0; - STACKTOP = sp;return; -} -function _btreeEndTransaction($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0; - var $pBt = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $pBt = sp + 4|0; - $db = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pBt>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = HEAP32[$4>>2]|0; - HEAP32[$db>>2] = $5; - $6 = HEAP32[$pBt>>2]|0; - $7 = (($6) + 19|0); - HEAP8[$7>>0] = 0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 8|0); - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - $12 = ($11|0)>(0); - if ($12) { - $13 = HEAP32[$db>>2]|0; - $14 = (($13) + 144|0); - $15 = HEAP32[$14>>2]|0; - $16 = ($15|0)>(1); - if ($16) { - $17 = HEAP32[$0>>2]|0; - _downgradeAllSharedCacheTableLocks($17); - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 8|0); - HEAP8[$19>>0] = 1; - STACKTOP = sp;return; - } - } - $20 = HEAP32[$0>>2]|0; - $21 = (($20) + 8|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = ($23|0)!=(0); - if ($24) { - $25 = HEAP32[$0>>2]|0; - _clearAllSharedCacheTableLocks($25); - $26 = HEAP32[$pBt>>2]|0; - $27 = (($26) + 40|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + -1)|0; - HEAP32[$27>>2] = $29; - $30 = HEAP32[$pBt>>2]|0; - $31 = (($30) + 40|0); - $32 = HEAP32[$31>>2]|0; - $33 = (0)==($32|0); - if ($33) { - $34 = HEAP32[$pBt>>2]|0; - $35 = (($34) + 20|0); - HEAP8[$35>>0] = 0; - } - } - $36 = HEAP32[$0>>2]|0; - $37 = (($36) + 8|0); - HEAP8[$37>>0] = 0; - $38 = HEAP32[$pBt>>2]|0; - _unlockBtreeIfUnused($38); - STACKTOP = sp;return; -} -function _downgradeAllSharedCacheTableLocks($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $pLock = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $pBt = sp + 4|0; - $pLock = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pBt>>2] = $3; - $4 = HEAP32[$pBt>>2]|0; - $5 = (($4) + 76|0); - $6 = HEAP32[$5>>2]|0; - $7 = HEAP32[$0>>2]|0; - $8 = ($6|0)==($7|0); - if (!($8)) { - STACKTOP = sp;return; - } - $9 = HEAP32[$pBt>>2]|0; - $10 = (($9) + 76|0); - HEAP32[$10>>2] = 0; - $11 = HEAP32[$pBt>>2]|0; - $12 = (($11) + 22|0); - $13 = HEAP16[$12>>1]|0; - $14 = $13&65535; - $15 = $14 & -97; - $16 = $15&65535; - HEAP16[$12>>1] = $16; - $17 = HEAP32[$pBt>>2]|0; - $18 = (($17) + 72|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$pLock>>2] = $19; - while(1) { - $20 = HEAP32[$pLock>>2]|0; - $21 = ($20|0)!=(0|0); - if (!($21)) { - break; - } - $22 = HEAP32[$pLock>>2]|0; - $23 = (($22) + 8|0); - HEAP8[$23>>0] = 1; - $24 = HEAP32[$pLock>>2]|0; - $25 = (($24) + 12|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$pLock>>2] = $26; - } - STACKTOP = sp;return; -} -function _clearAllSharedCacheTableLocks($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $pLock = 0, $ppIter = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $pBt = sp + 8|0; - $ppIter = sp + 4|0; - $pLock = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 4|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pBt>>2] = $3; - $4 = HEAP32[$pBt>>2]|0; - $5 = (($4) + 72|0); - HEAP32[$ppIter>>2] = $5; - while(1) { - $6 = HEAP32[$ppIter>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)!=(0|0); - if (!($8)) { - break; - } - $9 = HEAP32[$ppIter>>2]|0; - $10 = HEAP32[$9>>2]|0; - HEAP32[$pLock>>2] = $10; - $11 = HEAP32[$pLock>>2]|0; - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$0>>2]|0; - $14 = ($12|0)==($13|0); - $15 = HEAP32[$pLock>>2]|0; - $16 = (($15) + 12|0); - if (!($14)) { - HEAP32[$ppIter>>2] = $16; - continue; - } - $17 = HEAP32[$16>>2]|0; - $18 = HEAP32[$ppIter>>2]|0; - HEAP32[$18>>2] = $17; - $19 = HEAP32[$pLock>>2]|0; - $20 = (($19) + 4|0); - $21 = HEAP32[$20>>2]|0; - $22 = ($21|0)!=(1); - if (!($22)) { - continue; - } - $23 = HEAP32[$pLock>>2]|0; - _sqlite3_free($23); - } - $24 = HEAP32[$pBt>>2]|0; - $25 = (($24) + 76|0); - $26 = HEAP32[$25>>2]|0; - $27 = HEAP32[$0>>2]|0; - $28 = ($26|0)==($27|0); - $29 = HEAP32[$pBt>>2]|0; - if ($28) { - $30 = (($29) + 76|0); - HEAP32[$30>>2] = 0; - $31 = HEAP32[$pBt>>2]|0; - $32 = (($31) + 22|0); - $33 = HEAP16[$32>>1]|0; - $34 = $33&65535; - $35 = $34 & -97; - $36 = $35&65535; - HEAP16[$32>>1] = $36; - STACKTOP = sp;return; - } - $37 = (($29) + 40|0); - $38 = HEAP32[$37>>2]|0; - $39 = ($38|0)==(2); - if (!($39)) { - STACKTOP = sp;return; - } - $40 = HEAP32[$pBt>>2]|0; - $41 = (($40) + 22|0); - $42 = HEAP16[$41>>1]|0; - $43 = $42&65535; - $44 = $43 & -65; - $45 = $44&65535; - HEAP16[$41>>1] = $45; - STACKTOP = sp;return; -} -function _autoVacuumCommit($pBt) { - $pBt = $pBt|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $iFree = 0, $nFin = 0; - var $nFree = 0, $nOrig = 0, $or$cond = 0, $pPager = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $rc = sp + 20|0; - $pPager = sp + 16|0; - $nFin = sp + 12|0; - $nFree = sp + 8|0; - $iFree = sp + 4|0; - $nOrig = sp; - HEAP32[$1>>2] = $pBt; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$pPager>>2] = $3; - $4 = HEAP32[$1>>2]|0; - _invalidateAllOverflowCache($4); - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 18|0); - $7 = HEAP8[$6>>0]|0; - $8 = ($7<<24>>24)!=(0); - do { - if (!($8)) { - $9 = HEAP32[$1>>2]|0; - $10 = (_btreePagecount($9)|0); - HEAP32[$nOrig>>2] = $10; - $11 = HEAP32[$1>>2]|0; - $12 = HEAP32[$nOrig>>2]|0; - $13 = (_ptrmapPageno($11,$12)|0); - $14 = HEAP32[$nOrig>>2]|0; - $15 = ($13|0)==($14|0); - if (!($15)) { - $16 = HEAP32[$nOrig>>2]|0; - $17 = HEAP32[1384>>2]|0; - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 32|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($17>>>0) / ($20>>>0))&-1; - $22 = (($21) + 1)|0; - $23 = ($16|0)==($22|0); - if (!($23)) { - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 12|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + 56|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + 36|0); - $31 = (_sqlite3Get4byte($30)|0); - HEAP32[$nFree>>2] = $31; - $32 = HEAP32[$1>>2]|0; - $33 = HEAP32[$nOrig>>2]|0; - $34 = HEAP32[$nFree>>2]|0; - $35 = (_finalDbSize($32,$33,$34)|0); - HEAP32[$nFin>>2] = $35; - $36 = HEAP32[$nFin>>2]|0; - $37 = HEAP32[$nOrig>>2]|0; - $38 = ($36>>>0)>($37>>>0); - if ($38) { - $39 = (_sqlite3CorruptError(54371)|0); - HEAP32[$0>>2] = $39; - $97 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($97|0); - } - $40 = HEAP32[$nFin>>2]|0; - $41 = HEAP32[$nOrig>>2]|0; - $42 = ($40>>>0)<($41>>>0); - if ($42) { - $43 = HEAP32[$1>>2]|0; - $44 = (_saveAllCursors($43,0,0)|0); - HEAP32[$rc>>2] = $44; - } - $45 = HEAP32[$nOrig>>2]|0; - HEAP32[$iFree>>2] = $45; - while(1) { - $46 = HEAP32[$iFree>>2]|0; - $47 = HEAP32[$nFin>>2]|0; - $48 = ($46>>>0)>($47>>>0); - if (!($48)) { - break; - } - $49 = HEAP32[$rc>>2]|0; - $50 = ($49|0)==(0); - if (!($50)) { - break; - } - $51 = HEAP32[$1>>2]|0; - $52 = HEAP32[$nFin>>2]|0; - $53 = HEAP32[$iFree>>2]|0; - $54 = (_incrVacuumStep($51,$52,$53,1)|0); - HEAP32[$rc>>2] = $54; - $55 = HEAP32[$iFree>>2]|0; - $56 = (($55) + -1)|0; - HEAP32[$iFree>>2] = $56; - } - $57 = HEAP32[$rc>>2]|0; - $58 = ($57|0)==(101); - $59 = HEAP32[$rc>>2]|0; - $60 = ($59|0)==(0); - $or$cond = $58 | $60; - if ($or$cond) { - $61 = HEAP32[$nFree>>2]|0; - $62 = ($61>>>0)>(0); - if ($62) { - $63 = HEAP32[$1>>2]|0; - $64 = (($63) + 12|0); - $65 = HEAP32[$64>>2]|0; - $66 = (($65) + 68|0); - $67 = HEAP32[$66>>2]|0; - $68 = (_sqlite3PagerWrite($67)|0); - HEAP32[$rc>>2] = $68; - $69 = HEAP32[$1>>2]|0; - $70 = (($69) + 12|0); - $71 = HEAP32[$70>>2]|0; - $72 = (($71) + 56|0); - $73 = HEAP32[$72>>2]|0; - $74 = (($73) + 32|0); - _sqlite3Put4byte($74,0); - $75 = HEAP32[$1>>2]|0; - $76 = (($75) + 12|0); - $77 = HEAP32[$76>>2]|0; - $78 = (($77) + 56|0); - $79 = HEAP32[$78>>2]|0; - $80 = (($79) + 36|0); - _sqlite3Put4byte($80,0); - $81 = HEAP32[$1>>2]|0; - $82 = (($81) + 12|0); - $83 = HEAP32[$82>>2]|0; - $84 = (($83) + 56|0); - $85 = HEAP32[$84>>2]|0; - $86 = (($85) + 28|0); - $87 = HEAP32[$nFin>>2]|0; - _sqlite3Put4byte($86,$87); - $88 = HEAP32[$1>>2]|0; - $89 = (($88) + 19|0); - HEAP8[$89>>0] = 1; - $90 = HEAP32[$nFin>>2]|0; - $91 = HEAP32[$1>>2]|0; - $92 = (($91) + 44|0); - HEAP32[$92>>2] = $90; - } - } - $93 = HEAP32[$rc>>2]|0; - $94 = ($93|0)!=(0); - if (!($94)) { - break; - } - $95 = HEAP32[$pPager>>2]|0; - (_sqlite3PagerRollback($95)|0); - break; - } - } - $24 = (_sqlite3CorruptError(54366)|0); - HEAP32[$0>>2] = $24; - $97 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($97|0); - } - } while(0); - $96 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $96; - $97 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($97|0); -} -function _sqlite3PagerCommitPhaseTwo($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pPager; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 40|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)!=(0); - $6 = HEAP32[$1>>2]|0; - if ($5) { - $7 = (($6) + 40|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$0>>2] = $8; - $34 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($34|0); - } - $9 = (($6) + 16|0); - $10 = HEAP8[$9>>0]|0; - $11 = $10&255; - $12 = ($11|0)==(2); - if ($12) { - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - $17 = ($16|0)!=(0); - if ($17) { - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 5|0); - $20 = HEAP8[$19>>0]|0; - $21 = $20&255; - $22 = ($21|0)==(1); - if ($22) { - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 16|0); - HEAP8[$24>>0] = 1; - HEAP32[$0>>2] = 0; - $34 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($34|0); - } - } - } - $25 = HEAP32[$1>>2]|0; - $26 = HEAP32[$1>>2]|0; - $27 = (($26) + 19|0); - $28 = HEAP8[$27>>0]|0; - $29 = $28&255; - $30 = (_pager_end_transaction($25,$29,1)|0); - HEAP32[$rc>>2] = $30; - $31 = HEAP32[$1>>2]|0; - $32 = HEAP32[$rc>>2]|0; - $33 = (_pager_error($31,$32)|0); - HEAP32[$0>>2] = $33; - $34 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($34|0); -} -function _pager_incr_changecounter($pPager,$isDirectMode) { - $pPager = $pPager|0; - $isDirectMode = $isDirectMode|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $pPgHdr = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $rc = sp + 4|0; - $pPgHdr = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $isDirectMode; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 18|0); - $4 = HEAP8[$3>>0]|0; - $5 = ($4<<24>>24)!=(0); - if ($5) { - $22 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($22|0); - } - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 24|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8>>>0)>(0); - if (!($9)) { - $22 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($22|0); - } - $10 = HEAP32[$0>>2]|0; - $11 = (_sqlite3PagerAcquire($10,1,$pPgHdr,0)|0); - HEAP32[$rc>>2] = $11; - $12 = HEAP32[$rc>>2]|0; - $13 = ($12|0)==(0); - if ($13) { - $14 = HEAP32[$pPgHdr>>2]|0; - $15 = (_sqlite3PagerWrite($14)|0); - HEAP32[$rc>>2] = $15; - } - $16 = HEAP32[$rc>>2]|0; - $17 = ($16|0)==(0); - if ($17) { - $18 = HEAP32[$pPgHdr>>2]|0; - _pager_write_changecounter($18); - $19 = HEAP32[$0>>2]|0; - $20 = (($19) + 18|0); - HEAP8[$20>>0] = 1; - } - $21 = HEAP32[$pPgHdr>>2]|0; - _sqlite3PagerUnref($21); - $22 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($22|0); -} -function _writeMasterJournal($pPager,$zMaster) { - $pPager = $pPager|0; - $zMaster = $zMaster|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $21 = 0; - var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; - var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; - var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; - var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; - var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cksum = 0, $iHdrOff = 0, $jrnlSize = 0, $nMaster = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $rc = sp + 24|0; - $nMaster = sp + 20|0; - $iHdrOff = sp + 8|0; - $jrnlSize = sp; - $cksum = sp + 16|0; - HEAP32[$1>>2] = $pPager; - HEAP32[$2>>2] = $zMaster; - HEAP32[$cksum>>2] = 0; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - if ($4) { - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 5|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = ($8|0)==(4); - if (!($9)) { - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 64|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$12>>2]|0; - $14 = ($13|0)!=(0|0); - if ($14) { - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 19|0); - HEAP8[$16>>0] = 1; - HEAP32[$nMaster>>2] = 0; - while(1) { - $17 = HEAP32[$nMaster>>2]|0; - $18 = HEAP32[$2>>2]|0; - $19 = (($18) + ($17)|0); - $20 = HEAP8[$19>>0]|0; - $21 = ($20<<24>>24)!=(0); - if (!($21)) { - break; - } - $22 = HEAP32[$nMaster>>2]|0; - $23 = HEAP32[$2>>2]|0; - $24 = (($23) + ($22)|0); - $25 = HEAP8[$24>>0]|0; - $26 = $25 << 24 >> 24; - $27 = HEAP32[$cksum>>2]|0; - $28 = (($27) + ($26))|0; - HEAP32[$cksum>>2] = $28; - $29 = HEAP32[$nMaster>>2]|0; - $30 = (($29) + 1)|0; - HEAP32[$nMaster>>2] = $30; - } - $31 = HEAP32[$1>>2]|0; - $32 = (($31) + 8|0); - $33 = HEAP8[$32>>0]|0; - $34 = ($33<<24>>24)!=(0); - if ($34) { - $35 = HEAP32[$1>>2]|0; - $36 = (_journalHdrOffset($35)|0); - $37 = tempRet0; - $38 = HEAP32[$1>>2]|0; - $39 = (($38) + 72|0); - $40 = $39; - $41 = $40; - HEAP32[$41>>2] = $36; - $42 = (($40) + 4)|0; - $43 = $42; - HEAP32[$43>>2] = $37; - } - $44 = HEAP32[$1>>2]|0; - $45 = (($44) + 72|0); - $46 = $45; - $47 = $46; - $48 = HEAP32[$47>>2]|0; - $49 = (($46) + 4)|0; - $50 = $49; - $51 = HEAP32[$50>>2]|0; - $52 = $iHdrOff; - $53 = $52; - HEAP32[$53>>2] = $48; - $54 = (($52) + 4)|0; - $55 = $54; - HEAP32[$55>>2] = $51; - $56 = HEAP32[$1>>2]|0; - $57 = (($56) + 64|0); - $58 = HEAP32[$57>>2]|0; - $59 = $iHdrOff; - $60 = $59; - $61 = HEAP32[$60>>2]|0; - $62 = (($59) + 4)|0; - $63 = $62; - $64 = HEAP32[$63>>2]|0; - $65 = HEAP32[1384>>2]|0; - $66 = HEAP32[$1>>2]|0; - $67 = (($66) + 152|0); - $68 = HEAP32[$67>>2]|0; - $69 = (($65|0) / ($68|0))&-1; - $70 = (($69) + 1)|0; - $71 = (_write32bits($58,$61,$64,$70)|0); - HEAP32[$rc>>2] = $71; - $72 = (0)!=($71|0); - if (!($72)) { - $73 = HEAP32[$1>>2]|0; - $74 = (($73) + 64|0); - $75 = HEAP32[$74>>2]|0; - $76 = HEAP32[$2>>2]|0; - $77 = HEAP32[$nMaster>>2]|0; - $78 = $iHdrOff; - $79 = $78; - $80 = HEAP32[$79>>2]|0; - $81 = (($78) + 4)|0; - $82 = $81; - $83 = HEAP32[$82>>2]|0; - $84 = (_i64Add(($80|0),($83|0),4,0)|0); - $85 = tempRet0; - $86 = (_sqlite3OsWrite($75,$76,$77,$84,$85)|0); - HEAP32[$rc>>2] = $86; - $87 = (0)!=($86|0); - if (!($87)) { - $88 = HEAP32[$1>>2]|0; - $89 = (($88) + 64|0); - $90 = HEAP32[$89>>2]|0; - $91 = $iHdrOff; - $92 = $91; - $93 = HEAP32[$92>>2]|0; - $94 = (($91) + 4)|0; - $95 = $94; - $96 = HEAP32[$95>>2]|0; - $97 = (_i64Add(($93|0),($96|0),4,0)|0); - $98 = tempRet0; - $99 = HEAP32[$nMaster>>2]|0; - $100 = ($99|0)<(0); - $101 = $100 << 31 >> 31; - $102 = (_i64Add(($97|0),($98|0),($99|0),($101|0))|0); - $103 = tempRet0; - $104 = HEAP32[$nMaster>>2]|0; - $105 = (_write32bits($90,$102,$103,$104)|0); - HEAP32[$rc>>2] = $105; - $106 = (0)!=($105|0); - if (!($106)) { - $107 = HEAP32[$1>>2]|0; - $108 = (($107) + 64|0); - $109 = HEAP32[$108>>2]|0; - $110 = $iHdrOff; - $111 = $110; - $112 = HEAP32[$111>>2]|0; - $113 = (($110) + 4)|0; - $114 = $113; - $115 = HEAP32[$114>>2]|0; - $116 = (_i64Add(($112|0),($115|0),4,0)|0); - $117 = tempRet0; - $118 = HEAP32[$nMaster>>2]|0; - $119 = ($118|0)<(0); - $120 = $119 << 31 >> 31; - $121 = (_i64Add(($116|0),($117|0),($118|0),($120|0))|0); - $122 = tempRet0; - $123 = (_i64Add(($121|0),($122|0),4,0)|0); - $124 = tempRet0; - $125 = HEAP32[$cksum>>2]|0; - $126 = (_write32bits($109,$123,$124,$125)|0); - HEAP32[$rc>>2] = $126; - $127 = (0)!=($126|0); - if (!($127)) { - $128 = HEAP32[$1>>2]|0; - $129 = (($128) + 64|0); - $130 = HEAP32[$129>>2]|0; - $131 = $iHdrOff; - $132 = $131; - $133 = HEAP32[$132>>2]|0; - $134 = (($131) + 4)|0; - $135 = $134; - $136 = HEAP32[$135>>2]|0; - $137 = (_i64Add(($133|0),($136|0),4,0)|0); - $138 = tempRet0; - $139 = HEAP32[$nMaster>>2]|0; - $140 = ($139|0)<(0); - $141 = $140 << 31 >> 31; - $142 = (_i64Add(($137|0),($138|0),($139|0),($141|0))|0); - $143 = tempRet0; - $144 = (_i64Add(($142|0),($143|0),8,0)|0); - $145 = tempRet0; - $146 = (_sqlite3OsWrite($130,4336,8,$144,$145)|0); - HEAP32[$rc>>2] = $146; - $147 = (0)!=($146|0); - if (!($147)) { - $149 = HEAP32[$nMaster>>2]|0; - $150 = (($149) + 20)|0; - $151 = ($150|0)<(0); - $152 = $151 << 31 >> 31; - $153 = HEAP32[$1>>2]|0; - $154 = (($153) + 72|0); - $155 = $154; - $156 = $155; - $157 = HEAP32[$156>>2]|0; - $158 = (($155) + 4)|0; - $159 = $158; - $160 = HEAP32[$159>>2]|0; - $161 = (_i64Add(($157|0),($160|0),($150|0),($152|0))|0); - $162 = tempRet0; - $163 = $154; - $164 = $163; - HEAP32[$164>>2] = $161; - $165 = (($163) + 4)|0; - $166 = $165; - HEAP32[$166>>2] = $162; - $167 = HEAP32[$1>>2]|0; - $168 = (($167) + 64|0); - $169 = HEAP32[$168>>2]|0; - $170 = (_sqlite3OsFileSize($169,$jrnlSize)|0); - HEAP32[$rc>>2] = $170; - $171 = (0)==($170|0); - if ($171) { - $172 = $jrnlSize; - $173 = $172; - $174 = HEAP32[$173>>2]|0; - $175 = (($172) + 4)|0; - $176 = $175; - $177 = HEAP32[$176>>2]|0; - $178 = HEAP32[$1>>2]|0; - $179 = (($178) + 72|0); - $180 = $179; - $181 = $180; - $182 = HEAP32[$181>>2]|0; - $183 = (($180) + 4)|0; - $184 = $183; - $185 = HEAP32[$184>>2]|0; - $186 = ($177|0)>($185|0); - $187 = ($177|0)==($185|0); - $188 = ($174>>>0)>($182>>>0); - $189 = $187 & $188; - $190 = $186 | $189; - if ($190) { - $191 = HEAP32[$1>>2]|0; - $192 = (($191) + 64|0); - $193 = HEAP32[$192>>2]|0; - $194 = HEAP32[$1>>2]|0; - $195 = (($194) + 72|0); - $196 = $195; - $197 = $196; - $198 = HEAP32[$197>>2]|0; - $199 = (($196) + 4)|0; - $200 = $199; - $201 = HEAP32[$200>>2]|0; - $202 = (_sqlite3OsTruncate($193,$198,$201)|0); - HEAP32[$rc>>2] = $202; - } - } - $203 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $203; - $204 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($204|0); - } - } - } - } - } - $148 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $148; - $204 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($204|0); - } - } - } - HEAP32[$0>>2] = 0; - $204 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($204|0); -} -function _pager_write($pPg) { - $pPg = $pPg|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; - var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; - var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; - var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; - var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; - var $98 = 0, $99 = 0, $cksum = 0, $iOff = 0, $inJournal = 0, $pData2 = 0, $pPager = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $pPager = sp + 24|0; - $rc = sp + 20|0; - $inJournal = sp + 16|0; - $cksum = sp + 12|0; - $pData2 = sp + 8|0; - $iOff = sp; - HEAP32[$1>>2] = $pPg; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 16|0); - $4 = HEAP32[$3>>2]|0; - HEAP32[$pPager>>2] = $4; - HEAP32[$rc>>2] = 0; - $5 = HEAP32[$pPager>>2]|0; - $6 = (($5) + 16|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = ($8|0)==(2); - if ($9) { - $10 = HEAP32[$pPager>>2]|0; - $11 = (_pager_open_journal($10)|0); - HEAP32[$rc>>2] = $11; - $12 = HEAP32[$rc>>2]|0; - $13 = ($12|0)!=(0); - if ($13) { - $14 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $14; - $201 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($201|0); - } - } - $15 = HEAP32[$1>>2]|0; - _sqlite3PcacheMakeDirty($15); - $16 = HEAP32[$pPager>>2]|0; - $17 = HEAP32[$1>>2]|0; - $18 = (_pageInJournal($16,$17)|0); - HEAP32[$inJournal>>2] = $18; - $19 = HEAP32[$inJournal>>2]|0; - $20 = ($19|0)!=(0); - if ($20) { - $21 = HEAP32[$pPager>>2]|0; - $22 = (($21) + 96|0); - $23 = HEAP32[$22>>2]|0; - $24 = ($23|0)==(0); - if (!($24)) { - $25 = HEAP32[$1>>2]|0; - $26 = (_subjRequiresPage($25)|0); - $27 = ($26|0)!=(0); - if ($27) { - label = 7; - } - } - } else { - label = 7; - } - if ((label|0) == 7) { - $28 = HEAP32[$inJournal>>2]|0; - $29 = ($28|0)!=(0); - do { - if (!($29)) { - $30 = HEAP32[$pPager>>2]|0; - $31 = (_pagerUseWal($30)|0); - $32 = ($31|0)!=(0); - if (!($32)) { - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 20|0); - $35 = HEAP32[$34>>2]|0; - $36 = HEAP32[$pPager>>2]|0; - $37 = (($36) + 28|0); - $38 = HEAP32[$37>>2]|0; - $39 = ($35>>>0)<=($38>>>0); - if ($39) { - $40 = HEAP32[$pPager>>2]|0; - $41 = (($40) + 64|0); - $42 = HEAP32[$41>>2]|0; - $43 = HEAP32[$42>>2]|0; - $44 = ($43|0)!=(0|0); - if ($44) { - $45 = HEAP32[$pPager>>2]|0; - $46 = (($45) + 72|0); - $47 = $46; - $48 = $47; - $49 = HEAP32[$48>>2]|0; - $50 = (($47) + 4)|0; - $51 = $50; - $52 = HEAP32[$51>>2]|0; - $53 = $iOff; - $54 = $53; - HEAP32[$54>>2] = $49; - $55 = (($53) + 4)|0; - $56 = $55; - HEAP32[$56>>2] = $52; - $57 = HEAP32[$1>>2]|0; - $58 = (($57) + 4|0); - $59 = HEAP32[$58>>2]|0; - HEAP32[$pData2>>2] = $59; - $60 = HEAP32[$pPager>>2]|0; - $61 = HEAP32[$pData2>>2]|0; - $62 = (_pager_cksum($60,$61)|0); - HEAP32[$cksum>>2] = $62; - $63 = HEAP32[$1>>2]|0; - $64 = (($63) + 24|0); - $65 = HEAP16[$64>>1]|0; - $66 = $65&65535; - $67 = $66 | 4; - $68 = $67&65535; - HEAP16[$64>>1] = $68; - $69 = HEAP32[$pPager>>2]|0; - $70 = (($69) + 64|0); - $71 = HEAP32[$70>>2]|0; - $72 = $iOff; - $73 = $72; - $74 = HEAP32[$73>>2]|0; - $75 = (($72) + 4)|0; - $76 = $75; - $77 = HEAP32[$76>>2]|0; - $78 = HEAP32[$1>>2]|0; - $79 = (($78) + 20|0); - $80 = HEAP32[$79>>2]|0; - $81 = (_write32bits($71,$74,$77,$80)|0); - HEAP32[$rc>>2] = $81; - $82 = HEAP32[$rc>>2]|0; - $83 = ($82|0)!=(0); - if ($83) { - $84 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $84; - $201 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($201|0); - } - $85 = HEAP32[$pPager>>2]|0; - $86 = (($85) + 64|0); - $87 = HEAP32[$86>>2]|0; - $88 = HEAP32[$pData2>>2]|0; - $89 = HEAP32[$pPager>>2]|0; - $90 = (($89) + 152|0); - $91 = HEAP32[$90>>2]|0; - $92 = $iOff; - $93 = $92; - $94 = HEAP32[$93>>2]|0; - $95 = (($92) + 4)|0; - $96 = $95; - $97 = HEAP32[$96>>2]|0; - $98 = (_i64Add(($94|0),($97|0),4,0)|0); - $99 = tempRet0; - $100 = (_sqlite3OsWrite($87,$88,$91,$98,$99)|0); - HEAP32[$rc>>2] = $100; - $101 = HEAP32[$rc>>2]|0; - $102 = ($101|0)!=(0); - if ($102) { - $103 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $103; - $201 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($201|0); - } - $104 = HEAP32[$pPager>>2]|0; - $105 = (($104) + 64|0); - $106 = HEAP32[$105>>2]|0; - $107 = $iOff; - $108 = $107; - $109 = HEAP32[$108>>2]|0; - $110 = (($107) + 4)|0; - $111 = $110; - $112 = HEAP32[$111>>2]|0; - $113 = HEAP32[$pPager>>2]|0; - $114 = (($113) + 152|0); - $115 = HEAP32[$114>>2]|0; - $116 = ($115|0)<(0); - $117 = $116 << 31 >> 31; - $118 = (_i64Add(($109|0),($112|0),($115|0),($117|0))|0); - $119 = tempRet0; - $120 = (_i64Add(($118|0),($119|0),4,0)|0); - $121 = tempRet0; - $122 = HEAP32[$cksum>>2]|0; - $123 = (_write32bits($106,$120,$121,$122)|0); - HEAP32[$rc>>2] = $123; - $124 = HEAP32[$rc>>2]|0; - $125 = ($124|0)!=(0); - if ($125) { - $126 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $126; - $201 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($201|0); - } - $127 = HEAP32[$pPager>>2]|0; - $128 = (($127) + 152|0); - $129 = HEAP32[$128>>2]|0; - $130 = (8 + ($129))|0; - $131 = ($130|0)<(0); - $132 = $131 << 31 >> 31; - $133 = HEAP32[$pPager>>2]|0; - $134 = (($133) + 72|0); - $135 = $134; - $136 = $135; - $137 = HEAP32[$136>>2]|0; - $138 = (($135) + 4)|0; - $139 = $138; - $140 = HEAP32[$139>>2]|0; - $141 = (_i64Add(($137|0),($140|0),($130|0),($132|0))|0); - $142 = tempRet0; - $143 = $134; - $144 = $143; - HEAP32[$144>>2] = $141; - $145 = (($143) + 4)|0; - $146 = $145; - HEAP32[$146>>2] = $142; - $147 = HEAP32[$pPager>>2]|0; - $148 = (($147) + 44|0); - $149 = HEAP32[$148>>2]|0; - $150 = (($149) + 1)|0; - HEAP32[$148>>2] = $150; - $151 = HEAP32[$pPager>>2]|0; - $152 = (($151) + 56|0); - $153 = HEAP32[$152>>2]|0; - $154 = HEAP32[$1>>2]|0; - $155 = (($154) + 20|0); - $156 = HEAP32[$155>>2]|0; - $157 = (_sqlite3BitvecSet($153,$156)|0); - HEAP32[$rc>>2] = $157; - $158 = HEAP32[$pPager>>2]|0; - $159 = HEAP32[$1>>2]|0; - $160 = (($159) + 20|0); - $161 = HEAP32[$160>>2]|0; - $162 = (_addToSavepointBitvecs($158,$161)|0); - $163 = HEAP32[$rc>>2]|0; - $164 = $163 | $162; - HEAP32[$rc>>2] = $164; - $165 = HEAP32[$rc>>2]|0; - $166 = ($165|0)!=(0); - if (!($166)) { - break; - } - $167 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $167; - $201 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($201|0); - } - } - $168 = HEAP32[$pPager>>2]|0; - $169 = (($168) + 16|0); - $170 = HEAP8[$169>>0]|0; - $171 = $170&255; - $172 = ($171|0)!=(4); - if ($172) { - $173 = HEAP32[$1>>2]|0; - $174 = (($173) + 24|0); - $175 = HEAP16[$174>>1]|0; - $176 = $175&65535; - $177 = $176 | 4; - $178 = $177&65535; - HEAP16[$174>>1] = $178; - } - } - } - } while(0); - $179 = HEAP32[$pPager>>2]|0; - $180 = (($179) + 96|0); - $181 = HEAP32[$180>>2]|0; - $182 = ($181|0)>(0); - if ($182) { - $183 = HEAP32[$1>>2]|0; - $184 = (_subjRequiresPage($183)|0); - $185 = ($184|0)!=(0); - if ($185) { - $186 = HEAP32[$1>>2]|0; - $187 = (_subjournalPage($186)|0); - HEAP32[$rc>>2] = $187; - } - } - } - $188 = HEAP32[$pPager>>2]|0; - $189 = (($188) + 24|0); - $190 = HEAP32[$189>>2]|0; - $191 = HEAP32[$1>>2]|0; - $192 = (($191) + 20|0); - $193 = HEAP32[$192>>2]|0; - $194 = ($190>>>0)<($193>>>0); - if ($194) { - $195 = HEAP32[$1>>2]|0; - $196 = (($195) + 20|0); - $197 = HEAP32[$196>>2]|0; - $198 = HEAP32[$pPager>>2]|0; - $199 = (($198) + 24|0); - HEAP32[$199>>2] = $197; - } - $200 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $200; - $201 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($201|0); -} -function _pager_open_journal($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $flags = 0, $pVfs = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $rc = sp + 8|0; - $pVfs = sp + 4|0; - $flags = sp; - HEAP32[$1>>2] = $pPager; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - HEAP32[$pVfs>>2] = $3; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 40|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0); - $8 = HEAP32[$1>>2]|0; - if ($7) { - $9 = (($8) + 40|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$0>>2] = $10; - $89 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($89|0); - } - $11 = (_pagerUseWal($8)|0); - $12 = ($11|0)!=(0); - if (!($12)) { - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 5|0); - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - $17 = ($16|0)!=(2); - if ($17) { - $18 = HEAP32[$1>>2]|0; - $19 = (($18) + 24|0); - $20 = HEAP32[$19>>2]|0; - $21 = (_sqlite3BitvecCreate($20)|0); - $22 = HEAP32[$1>>2]|0; - $23 = (($22) + 56|0); - HEAP32[$23>>2] = $21; - $24 = HEAP32[$1>>2]|0; - $25 = (($24) + 56|0); - $26 = HEAP32[$25>>2]|0; - $27 = ($26|0)==(0|0); - if ($27) { - HEAP32[$0>>2] = 7; - $89 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($89|0); - } - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 64|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$30>>2]|0; - $32 = ($31|0)!=(0|0); - do { - if (!($32)) { - $33 = HEAP32[$1>>2]|0; - $34 = (($33) + 5|0); - $35 = HEAP8[$34>>0]|0; - $36 = $35&255; - $37 = ($36|0)==(4); - $38 = HEAP32[$1>>2]|0; - if ($37) { - $39 = (($38) + 64|0); - $40 = HEAP32[$39>>2]|0; - _sqlite3MemJournalOpen($40); - break; - } - $41 = (($38) + 12|0); - $42 = HEAP8[$41>>0]|0; - $43 = $42&255; - $44 = ($43|0)!=(0); - $45 = $44 ? 4104 : 2048; - $46 = 6 | $45; - HEAP32[$flags>>2] = $46; - $47 = HEAP32[$1>>2]|0; - $48 = (_databaseIsUnmoved($47)|0); - HEAP32[$rc>>2] = $48; - $49 = HEAP32[$rc>>2]|0; - $50 = ($49|0)==(0); - if ($50) { - $51 = HEAP32[$pVfs>>2]|0; - $52 = HEAP32[$1>>2]|0; - $53 = (($52) + 172|0); - $54 = HEAP32[$53>>2]|0; - $55 = HEAP32[$1>>2]|0; - $56 = (($55) + 64|0); - $57 = HEAP32[$56>>2]|0; - $58 = HEAP32[$flags>>2]|0; - $59 = (_sqlite3OsOpen($51,$54,$57,$58,0)|0); - HEAP32[$rc>>2] = $59; - } - } - } while(0); - $60 = HEAP32[$rc>>2]|0; - $61 = ($60|0)==(0); - if ($61) { - $62 = HEAP32[$1>>2]|0; - $63 = (($62) + 44|0); - HEAP32[$63>>2] = 0; - $64 = HEAP32[$1>>2]|0; - $65 = (($64) + 72|0); - $66 = $65; - $67 = $66; - HEAP32[$67>>2] = 0; - $68 = (($66) + 4)|0; - $69 = $68; - HEAP32[$69>>2] = 0; - $70 = HEAP32[$1>>2]|0; - $71 = (($70) + 19|0); - HEAP8[$71>>0] = 0; - $72 = HEAP32[$1>>2]|0; - $73 = (($72) + 80|0); - $74 = $73; - $75 = $74; - HEAP32[$75>>2] = 0; - $76 = (($74) + 4)|0; - $77 = $76; - HEAP32[$77>>2] = 0; - $78 = HEAP32[$1>>2]|0; - $79 = (_writeJournalHdr($78)|0); - HEAP32[$rc>>2] = $79; - } - } - } - $80 = HEAP32[$rc>>2]|0; - $81 = ($80|0)!=(0); - $82 = HEAP32[$1>>2]|0; - if ($81) { - $83 = (($82) + 56|0); - $84 = HEAP32[$83>>2]|0; - _sqlite3BitvecDestroy($84); - $85 = HEAP32[$1>>2]|0; - $86 = (($85) + 56|0); - HEAP32[$86>>2] = 0; - } else { - $87 = (($82) + 16|0); - HEAP8[$87>>0] = 3; - } - $88 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $88; - $89 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($89|0); -} -function _pageInJournal($pPager,$pPg) { - $pPager = $pPager|0; - $pPg = $pPg|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $pPager; - HEAP32[$1>>2] = $pPg; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 56|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 20|0); - $7 = HEAP32[$6>>2]|0; - $8 = (_sqlite3BitvecTest($4,$7)|0); - STACKTOP = sp;return ($8|0); -} -function _databaseIsUnmoved($pPager) { - $pPager = $pPager|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $bHasMoved = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $bHasMoved = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pPager; - HEAP32[$bHasMoved>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 12|0); - $4 = HEAP8[$3>>0]|0; - $5 = ($4<<24>>24)!=(0); - if ($5) { - HEAP32[$0>>2] = 0; - $21 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($21|0); - } - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 24|0); - $8 = HEAP32[$7>>2]|0; - $9 = ($8|0)==(0); - if ($9) { - HEAP32[$0>>2] = 0; - $21 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($21|0); - } - $10 = HEAP32[$1>>2]|0; - $11 = (($10) + 60|0); - $12 = HEAP32[$11>>2]|0; - $13 = (_sqlite3OsFileControl($12,20,$bHasMoved)|0); - HEAP32[$rc>>2] = $13; - $14 = HEAP32[$rc>>2]|0; - $15 = ($14|0)==(12); - if ($15) { - HEAP32[$rc>>2] = 0; - } else { - $16 = HEAP32[$rc>>2]|0; - $17 = ($16|0)==(0); - if ($17) { - $18 = HEAP32[$bHasMoved>>2]|0; - $19 = ($18|0)!=(0); - if ($19) { - HEAP32[$rc>>2] = 1032; - } - } - } - $20 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $20; - $21 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($21|0); -} -function _sqlite3OsFetch($id,$0,$1,$iAmt,$pp) { - $id = $id|0; - $0 = $0|0; - $1 = $1|0; - $iAmt = $iAmt|0; - $pp = $pp|0; - var $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 16|0; - $3 = sp; - $4 = sp + 12|0; - $5 = sp + 8|0; - HEAP32[$2>>2] = $id; - $6 = $3; - $7 = $6; - HEAP32[$7>>2] = $0; - $8 = (($6) + 4)|0; - $9 = $8; - HEAP32[$9>>2] = $1; - HEAP32[$4>>2] = $iAmt; - HEAP32[$5>>2] = $pp; - $10 = HEAP32[$5>>2]|0; - HEAP32[$10>>2] = 0; - STACKTOP = sp;return 0; -} -function _pagerAcquireMapPage($pPager,$pgno,$pData,$ppPage) { - $pPager = $pPager|0; - $pgno = $pgno|0; - $pData = $pData|0; - $ppPage = $ppPage|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $3 = sp + 8|0; - $4 = sp + 4|0; - $p = sp; - HEAP32[$1>>2] = $pPager; - HEAP32[$2>>2] = $pgno; - HEAP32[$3>>2] = $pData; - HEAP32[$4>>2] = $ppPage; - $5 = HEAP32[$1>>2]|0; - $6 = (($5) + 136|0); - $7 = HEAP32[$6>>2]|0; - $8 = ($7|0)!=(0|0); - $9 = HEAP32[$1>>2]|0; - do { - if ($8) { - $10 = (($9) + 136|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$p>>2] = $11; - $12 = HEAP32[$4>>2]|0; - HEAP32[$12>>2] = $11; - $13 = HEAP32[$p>>2]|0; - $14 = (($13) + 12|0); - $15 = HEAP32[$14>>2]|0; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 136|0); - HEAP32[$17>>2] = $15; - $18 = HEAP32[$p>>2]|0; - $19 = (($18) + 12|0); - HEAP32[$19>>2] = 0; - $20 = HEAP32[$p>>2]|0; - $21 = (($20) + 8|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$1>>2]|0; - $24 = (($23) + 140|0); - $25 = HEAP16[$24>>1]|0; - $26 = $25&65535; - _memset(($22|0),0,($26|0))|0; - } else { - $27 = (($9) + 140|0); - $28 = HEAP16[$27>>1]|0; - $29 = $28&65535; - $30 = (40 + ($29))|0; - $31 = (_sqlite3MallocZero($30)|0); - HEAP32[$p>>2] = $31; - $32 = HEAP32[$4>>2]|0; - HEAP32[$32>>2] = $31; - $33 = HEAP32[$p>>2]|0; - $34 = ($33|0)==(0|0); - if (!($34)) { - $48 = HEAP32[$p>>2]|0; - $49 = (($48) + 40|0); - $50 = HEAP32[$p>>2]|0; - $51 = (($50) + 8|0); - HEAP32[$51>>2] = $49; - $52 = HEAP32[$p>>2]|0; - $53 = (($52) + 24|0); - HEAP16[$53>>1] = 64; - $54 = HEAP32[$p>>2]|0; - $55 = (($54) + 26|0); - HEAP16[$55>>1] = 1; - $56 = HEAP32[$1>>2]|0; - $57 = HEAP32[$p>>2]|0; - $58 = (($57) + 16|0); - HEAP32[$58>>2] = $56; - break; - } - $35 = HEAP32[$1>>2]|0; - $36 = (($35) + 60|0); - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$2>>2]|0; - $39 = (($38) - 1)|0; - $40 = HEAP32[$1>>2]|0; - $41 = (($40) + 152|0); - $42 = HEAP32[$41>>2]|0; - $43 = ($42|0)<(0); - $44 = $43 << 31 >> 31; - $45 = (___muldi3(($39|0),0,($42|0),($44|0))|0); - $46 = tempRet0; - $47 = HEAP32[$3>>2]|0; - (_sqlite3OsUnfetch($37,$45,$46,$47)|0); - HEAP32[$0>>2] = 7; - $69 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($69|0); - } - } while(0); - $59 = HEAP32[$2>>2]|0; - $60 = HEAP32[$p>>2]|0; - $61 = (($60) + 20|0); - HEAP32[$61>>2] = $59; - $62 = HEAP32[$3>>2]|0; - $63 = HEAP32[$p>>2]|0; - $64 = (($63) + 4|0); - HEAP32[$64>>2] = $62; - $65 = HEAP32[$1>>2]|0; - $66 = (($65) + 120|0); - $67 = HEAP32[$66>>2]|0; - $68 = (($67) + 1)|0; - HEAP32[$66>>2] = $68; - HEAP32[$0>>2] = 0; - $69 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($69|0); -} -function _lockBtree($pBt) { - $pBt = $pBt|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; - var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $23 = 0; - var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; - var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; - var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; - var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; - var $97 = 0, $98 = 0, $99 = 0, $isOpen = 0, $nPage = 0, $nPageFile = 0, $nPageHeader = 0, $or$cond = 0, $or$cond3 = 0, $pPage1 = 0, $page1 = 0, $pageSize = 0, $rc = 0, $usableSize = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 40|0; - $1 = sp + 36|0; - $rc = sp + 32|0; - $pPage1 = sp + 28|0; - $nPage = sp + 24|0; - $nPageFile = sp + 20|0; - $nPageHeader = sp + 16|0; - $pageSize = sp + 12|0; - $usableSize = sp + 8|0; - $page1 = sp + 4|0; - $isOpen = sp; - HEAP32[$1>>2] = $pBt; - HEAP32[$nPageFile>>2] = 0; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = (_sqlite3PagerSharedLock($3)|0); - HEAP32[$rc>>2] = $4; - $5 = HEAP32[$rc>>2]|0; - $6 = ($5|0)!=(0); - if ($6) { - $7 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $7; - $222 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($222|0); - } - $8 = HEAP32[$1>>2]|0; - $9 = (_btreeGetPage($8,1,$pPage1,0)|0); - HEAP32[$rc>>2] = $9; - $10 = HEAP32[$rc>>2]|0; - $11 = ($10|0)!=(0); - if ($11) { - $12 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $12; - $222 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($222|0); - } - $13 = HEAP32[$pPage1>>2]|0; - $14 = (($13) + 56|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + 28|0); - $17 = (_sqlite3Get4byte($16)|0); - HEAP32[$nPageHeader>>2] = $17; - HEAP32[$nPage>>2] = $17; - $18 = HEAP32[$1>>2]|0; - $19 = HEAP32[$18>>2]|0; - _sqlite3PagerPagecount($19,$nPageFile); - $20 = HEAP32[$nPage>>2]|0; - $21 = ($20|0)==(0); - if ($21) { - label = 7; - } else { - $22 = HEAP32[$pPage1>>2]|0; - $23 = (($22) + 56|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + 24|0); - $26 = HEAP32[$pPage1>>2]|0; - $27 = (($26) + 56|0); - $28 = HEAP32[$27>>2]|0; - $29 = (($28) + 92|0); - $30 = (_memcmp($25,$29,4)|0); - $31 = ($30|0)!=(0); - if ($31) { - label = 7; - } - } - if ((label|0) == 7) { - $32 = HEAP32[$nPageFile>>2]|0; - HEAP32[$nPage>>2] = $32; - } - $33 = HEAP32[$nPage>>2]|0; - $34 = ($33|0)>(0); - L14: do { - if ($34) { - $35 = HEAP32[$pPage1>>2]|0; - $36 = (($35) + 56|0); - $37 = HEAP32[$36>>2]|0; - HEAP32[$page1>>2] = $37; - HEAP32[$rc>>2] = 26; - $38 = HEAP32[$page1>>2]|0; - $39 = (_memcmp($38,34264,16)|0); - $40 = ($39|0)!=(0); - L16: do { - if (!($40)) { - $41 = HEAP32[$page1>>2]|0; - $42 = (($41) + 18|0); - $43 = HEAP8[$42>>0]|0; - $44 = $43&255; - $45 = ($44|0)>(2); - if ($45) { - $46 = HEAP32[$1>>2]|0; - $47 = (($46) + 22|0); - $48 = HEAP16[$47>>1]|0; - $49 = $48&65535; - $50 = $49 | 1; - $51 = $50&65535; - HEAP16[$47>>1] = $51; - } - $52 = HEAP32[$page1>>2]|0; - $53 = (($52) + 19|0); - $54 = HEAP8[$53>>0]|0; - $55 = $54&255; - $56 = ($55|0)>(2); - if (!($56)) { - $57 = HEAP32[$page1>>2]|0; - $58 = (($57) + 19|0); - $59 = HEAP8[$58>>0]|0; - $60 = $59&255; - $61 = ($60|0)==(2); - do { - if ($61) { - $62 = HEAP32[$1>>2]|0; - $63 = (($62) + 22|0); - $64 = HEAP16[$63>>1]|0; - $65 = $64&65535; - $66 = $65 & 16; - $67 = ($66|0)==(0); - if ($67) { - HEAP32[$isOpen>>2] = 0; - $68 = HEAP32[$1>>2]|0; - $69 = HEAP32[$68>>2]|0; - $70 = (_sqlite3PagerOpenWal($69,$isOpen)|0); - HEAP32[$rc>>2] = $70; - $71 = HEAP32[$rc>>2]|0; - $72 = ($71|0)!=(0); - if ($72) { - break L16; - } - $73 = HEAP32[$isOpen>>2]|0; - $74 = ($73|0)==(0); - if (!($74)) { - HEAP32[$rc>>2] = 26; - break; - } - $75 = HEAP32[$pPage1>>2]|0; - _releasePage($75); - HEAP32[$0>>2] = 0; - $222 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($222|0); - } - } - } while(0); - $76 = HEAP32[$page1>>2]|0; - $77 = (($76) + 21|0); - $78 = (_memcmp($77,36976,3)|0); - $79 = ($78|0)!=(0); - if (!($79)) { - $80 = HEAP32[$page1>>2]|0; - $81 = (($80) + 16|0); - $82 = HEAP8[$81>>0]|0; - $83 = $82&255; - $84 = $83 << 8; - $85 = HEAP32[$page1>>2]|0; - $86 = (($85) + 17|0); - $87 = HEAP8[$86>>0]|0; - $88 = $87&255; - $89 = $88 << 16; - $90 = $84 | $89; - HEAP32[$pageSize>>2] = $90; - $91 = HEAP32[$pageSize>>2]|0; - $92 = (($91) - 1)|0; - $93 = HEAP32[$pageSize>>2]|0; - $94 = $92 & $93; - $95 = ($94|0)!=(0); - $96 = HEAP32[$pageSize>>2]|0; - $97 = ($96>>>0)>(65536); - $or$cond = $95 | $97; - $98 = HEAP32[$pageSize>>2]|0; - $99 = ($98>>>0)<=(256); - $or$cond3 = $or$cond | $99; - if (!($or$cond3)) { - $100 = HEAP32[$pageSize>>2]|0; - $101 = HEAP32[$page1>>2]|0; - $102 = (($101) + 20|0); - $103 = HEAP8[$102>>0]|0; - $104 = $103&255; - $105 = (($100) - ($104))|0; - HEAP32[$usableSize>>2] = $105; - $106 = HEAP32[$pageSize>>2]|0; - $107 = HEAP32[$1>>2]|0; - $108 = (($107) + 32|0); - $109 = HEAP32[$108>>2]|0; - $110 = ($106|0)!=($109|0); - if ($110) { - $111 = HEAP32[$pPage1>>2]|0; - _releasePage($111); - $112 = HEAP32[$usableSize>>2]|0; - $113 = HEAP32[$1>>2]|0; - $114 = (($113) + 36|0); - HEAP32[$114>>2] = $112; - $115 = HEAP32[$pageSize>>2]|0; - $116 = HEAP32[$1>>2]|0; - $117 = (($116) + 32|0); - HEAP32[$117>>2] = $115; - $118 = HEAP32[$1>>2]|0; - _freeTempSpace($118); - $119 = HEAP32[$1>>2]|0; - $120 = HEAP32[$119>>2]|0; - $121 = HEAP32[$1>>2]|0; - $122 = (($121) + 32|0); - $123 = HEAP32[$pageSize>>2]|0; - $124 = HEAP32[$usableSize>>2]|0; - $125 = (($123) - ($124))|0; - $126 = (_sqlite3PagerSetPagesize($120,$122,$125)|0); - HEAP32[$rc>>2] = $126; - $127 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $127; - $222 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($222|0); - } - $128 = HEAP32[$1>>2]|0; - $129 = (($128) + 4|0); - $130 = HEAP32[$129>>2]|0; - $131 = (($130) + 24|0); - $132 = HEAP32[$131>>2]|0; - $133 = $132 & 65536; - $134 = ($133|0)==(0); - if ($134) { - $135 = HEAP32[$nPage>>2]|0; - $136 = HEAP32[$nPageFile>>2]|0; - $137 = ($135|0)>($136|0); - if ($137) { - $138 = (_sqlite3CorruptError(53650)|0); - HEAP32[$rc>>2] = $138; - break; - } - } - $139 = HEAP32[$usableSize>>2]|0; - $140 = ($139>>>0)<(480); - if (!($140)) { - $141 = HEAP32[$pageSize>>2]|0; - $142 = HEAP32[$1>>2]|0; - $143 = (($142) + 32|0); - HEAP32[$143>>2] = $141; - $144 = HEAP32[$usableSize>>2]|0; - $145 = HEAP32[$1>>2]|0; - $146 = (($145) + 36|0); - HEAP32[$146>>2] = $144; - $147 = HEAP32[$page1>>2]|0; - $148 = (($147) + 52|0); - $149 = (_sqlite3Get4byte($148)|0); - $150 = ($149|0)!=(0); - $151 = $150 ? 1 : 0; - $152 = $151&255; - $153 = HEAP32[$1>>2]|0; - $154 = (($153) + 17|0); - HEAP8[$154>>0] = $152; - $155 = HEAP32[$page1>>2]|0; - $156 = (($155) + 64|0); - $157 = (_sqlite3Get4byte($156)|0); - $158 = ($157|0)!=(0); - $159 = $158 ? 1 : 0; - $160 = $159&255; - $161 = HEAP32[$1>>2]|0; - $162 = (($161) + 18|0); - HEAP8[$162>>0] = $160; - break L14; - } - } - } - } - } - } while(0); - $218 = HEAP32[$pPage1>>2]|0; - _releasePage($218); - $219 = HEAP32[$1>>2]|0; - $220 = (($219) + 12|0); - HEAP32[$220>>2] = 0; - $221 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $221; - $222 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($222|0); - } - } while(0); - $163 = HEAP32[$1>>2]|0; - $164 = (($163) + 36|0); - $165 = HEAP32[$164>>2]|0; - $166 = (($165) - 12)|0; - $167 = $166<<6; - $168 = (($167>>>0) / 255)&-1; - $169 = (($168) - 23)|0; - $170 = $169&65535; - $171 = HEAP32[$1>>2]|0; - $172 = (($171) + 24|0); - HEAP16[$172>>1] = $170; - $173 = HEAP32[$1>>2]|0; - $174 = (($173) + 36|0); - $175 = HEAP32[$174>>2]|0; - $176 = (($175) - 12)|0; - $177 = $176<<5; - $178 = (($177>>>0) / 255)&-1; - $179 = (($178) - 23)|0; - $180 = $179&65535; - $181 = HEAP32[$1>>2]|0; - $182 = (($181) + 26|0); - HEAP16[$182>>1] = $180; - $183 = HEAP32[$1>>2]|0; - $184 = (($183) + 36|0); - $185 = HEAP32[$184>>2]|0; - $186 = (($185) - 35)|0; - $187 = $186&65535; - $188 = HEAP32[$1>>2]|0; - $189 = (($188) + 28|0); - HEAP16[$189>>1] = $187; - $190 = HEAP32[$1>>2]|0; - $191 = (($190) + 36|0); - $192 = HEAP32[$191>>2]|0; - $193 = (($192) - 12)|0; - $194 = $193<<5; - $195 = (($194>>>0) / 255)&-1; - $196 = (($195) - 23)|0; - $197 = $196&65535; - $198 = HEAP32[$1>>2]|0; - $199 = (($198) + 30|0); - HEAP16[$199>>1] = $197; - $200 = HEAP32[$1>>2]|0; - $201 = (($200) + 24|0); - $202 = HEAP16[$201>>1]|0; - $203 = $202&65535; - $204 = ($203|0)>(127); - $205 = HEAP32[$1>>2]|0; - if ($204) { - $206 = (($205) + 21|0); - HEAP8[$206>>0] = 127; - } else { - $207 = (($205) + 24|0); - $208 = HEAP16[$207>>1]|0; - $209 = $208&255; - $210 = HEAP32[$1>>2]|0; - $211 = (($210) + 21|0); - HEAP8[$211>>0] = $209; - } - $212 = HEAP32[$pPage1>>2]|0; - $213 = HEAP32[$1>>2]|0; - $214 = (($213) + 12|0); - HEAP32[$214>>2] = $212; - $215 = HEAP32[$nPage>>2]|0; - $216 = HEAP32[$1>>2]|0; - $217 = (($216) + 44|0); - HEAP32[$217>>2] = $215; - HEAP32[$0>>2] = 0; - $222 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($222|0); -} -function _sqlite3PagerBegin($pPager,$exFlag,$subjInMemory) { - $pPager = $pPager|0; - $exFlag = $exFlag|0; - $subjInMemory = $subjInMemory|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $8 = 0, $9 = 0, $rc = 0; - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 16|0; - $1 = sp + 12|0; - $2 = sp + 8|0; - $3 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pPager; - HEAP32[$2>>2] = $exFlag; - HEAP32[$3>>2] = $subjInMemory; - HEAP32[$rc>>2] = 0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 40|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0); - if ($7) { - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 40|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$0>>2] = $10; - $78 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($78|0); - } - $11 = HEAP32[$3>>2]|0; - $12 = $11&255; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 21|0); - HEAP8[$14>>0] = $12; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 16|0); - $17 = HEAP8[$16>>0]|0; - $18 = $17&255; - $19 = ($18|0)==(1); - if ($19) { - $20 = HEAP32[$1>>2]|0; - $21 = (_pagerUseWal($20)|0); - $22 = ($21|0)!=(0); - $23 = HEAP32[$1>>2]|0; - if ($22) { - $24 = (($23) + 4|0); - $25 = HEAP8[$24>>0]|0; - $26 = $25&255; - $27 = ($26|0)!=(0); - do { - if ($27) { - $28 = HEAP32[$1>>2]|0; - $29 = (($28) + 208|0); - $30 = HEAP32[$29>>2]|0; - $31 = (_sqlite3WalExclusiveMode($30,-1)|0); - $32 = ($31|0)!=(0); - if ($32) { - $33 = HEAP32[$1>>2]|0; - $34 = (_pagerLockDb($33,4)|0); - HEAP32[$rc>>2] = $34; - $35 = HEAP32[$rc>>2]|0; - $36 = ($35|0)!=(0); - if (!($36)) { - $38 = HEAP32[$1>>2]|0; - $39 = (($38) + 208|0); - $40 = HEAP32[$39>>2]|0; - (_sqlite3WalExclusiveMode($40,1)|0); - break; - } - $37 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $37; - $78 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($78|0); - } - } - } while(0); - $41 = HEAP32[$1>>2]|0; - $42 = (($41) + 208|0); - $43 = HEAP32[$42>>2]|0; - $44 = (_sqlite3WalBeginWriteTransaction($43)|0); - HEAP32[$rc>>2] = $44; - } else { - $45 = (_pagerLockDb($23,2)|0); - HEAP32[$rc>>2] = $45; - $46 = HEAP32[$rc>>2]|0; - $47 = ($46|0)==(0); - if ($47) { - $48 = HEAP32[$2>>2]|0; - $49 = ($48|0)!=(0); - if ($49) { - $50 = HEAP32[$1>>2]|0; - $51 = (_pager_wait_on_lock($50,4)|0); - HEAP32[$rc>>2] = $51; - } - } - } - $52 = HEAP32[$rc>>2]|0; - $53 = ($52|0)==(0); - if ($53) { - $54 = HEAP32[$1>>2]|0; - $55 = (($54) + 16|0); - HEAP8[$55>>0] = 2; - $56 = HEAP32[$1>>2]|0; - $57 = (($56) + 24|0); - $58 = HEAP32[$57>>2]|0; - $59 = HEAP32[$1>>2]|0; - $60 = (($59) + 36|0); - HEAP32[$60>>2] = $58; - $61 = HEAP32[$1>>2]|0; - $62 = (($61) + 24|0); - $63 = HEAP32[$62>>2]|0; - $64 = HEAP32[$1>>2]|0; - $65 = (($64) + 32|0); - HEAP32[$65>>2] = $63; - $66 = HEAP32[$1>>2]|0; - $67 = (($66) + 24|0); - $68 = HEAP32[$67>>2]|0; - $69 = HEAP32[$1>>2]|0; - $70 = (($69) + 28|0); - HEAP32[$70>>2] = $68; - $71 = HEAP32[$1>>2]|0; - $72 = (($71) + 72|0); - $73 = $72; - $74 = $73; - HEAP32[$74>>2] = 0; - $75 = (($73) + 4)|0; - $76 = $75; - HEAP32[$76>>2] = 0; - } - } - $77 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $77; - $78 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($78|0); -} -function _sqlite3WalBeginWriteTransaction($pWal) { - $pWal = $pWal|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $rc = sp; - HEAP32[$1>>2] = $pWal; - $2 = HEAP32[$1>>2]|0; - $3 = (($2) + 46|0); - $4 = HEAP8[$3>>0]|0; - $5 = ($4<<24>>24)!=(0); - if ($5) { - HEAP32[$0>>2] = 8; - $23 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($23|0); - } - $6 = HEAP32[$1>>2]|0; - $7 = (_walLockExclusive($6,0,1)|0); - HEAP32[$rc>>2] = $7; - $8 = HEAP32[$rc>>2]|0; - $9 = ($8|0)!=(0); - if ($9) { - $10 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $10; - $23 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($23|0); - } - $11 = HEAP32[$1>>2]|0; - $12 = (($11) + 44|0); - HEAP8[$12>>0] = 1; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 52|0); - $15 = HEAP32[$1>>2]|0; - $16 = (_walIndexHdr($15)|0); - $17 = (_memcmp($14,$16,48)|0); - $18 = ($17|0)!=(0); - if ($18) { - $19 = HEAP32[$1>>2]|0; - _walUnlockExclusive($19,0,1); - $20 = HEAP32[$1>>2]|0; - $21 = (($20) + 44|0); - HEAP8[$21>>0] = 0; - HEAP32[$rc>>2] = 517; - } - $22 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $22; - $23 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($23|0); -} -function _sqlite3ValueSetNull($p) { - $p = $p|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $p; - $1 = HEAP32[$0>>2]|0; - _sqlite3VdbeMemSetNull($1); - STACKTOP = sp;return; -} -function _dotlockIoFinderImpl($z,$p) { - $z = $z|0; - $p = $p|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $z; - HEAP32[$1>>2] = $p; - STACKTOP = sp;return (36984|0); -} -function _dotlockClose($id) { - $id = $id|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pFile = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $rc = sp + 4|0; - $pFile = sp; - HEAP32[$0>>2] = $id; - HEAP32[$rc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - $2 = ($1|0)!=(0|0); - if (!($2)) { - $10 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($10|0); - } - $3 = HEAP32[$0>>2]|0; - HEAP32[$pFile>>2] = $3; - $4 = HEAP32[$0>>2]|0; - (_dotlockUnlock($4,0)|0); - $5 = HEAP32[$pFile>>2]|0; - $6 = (($5) + 24|0); - $7 = HEAP32[$6>>2]|0; - _sqlite3_free($7); - $8 = HEAP32[$0>>2]|0; - $9 = (_closeUnixFile($8)|0); - HEAP32[$rc>>2] = $9; - $10 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($10|0); -} -function _unixRead($id,$pBuf,$amt,$0,$1) { - $id = $id|0; - $pBuf = $pBuf|0; - $amt = $amt|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $got = 0, $pFile = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $4 = sp + 20|0; - $5 = sp + 16|0; - $6 = sp; - $pFile = sp + 12|0; - $got = sp + 8|0; - HEAP32[$3>>2] = $id; - HEAP32[$4>>2] = $pBuf; - HEAP32[$5>>2] = $amt; - $7 = $6; - $8 = $7; - HEAP32[$8>>2] = $0; - $9 = (($7) + 4)|0; - $10 = $9; - HEAP32[$10>>2] = $1; - $11 = HEAP32[$3>>2]|0; - HEAP32[$pFile>>2] = $11; - $12 = HEAP32[$pFile>>2]|0; - $13 = $6; - $14 = $13; - $15 = HEAP32[$14>>2]|0; - $16 = (($13) + 4)|0; - $17 = $16; - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$4>>2]|0; - $20 = HEAP32[$5>>2]|0; - $21 = (_seekAndRead($12,$15,$18,$19,$20)|0); - HEAP32[$got>>2] = $21; - $22 = HEAP32[$got>>2]|0; - $23 = HEAP32[$5>>2]|0; - $24 = ($22|0)==($23|0); - if ($24) { - HEAP32[$2>>2] = 0; - $35 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($35|0); - } - $25 = HEAP32[$got>>2]|0; - $26 = ($25|0)<(0); - if ($26) { - HEAP32[$2>>2] = 266; - $35 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($35|0); - } else { - $27 = HEAP32[$pFile>>2]|0; - $28 = (($27) + 20|0); - HEAP32[$28>>2] = 0; - $29 = HEAP32[$got>>2]|0; - $30 = HEAP32[$4>>2]|0; - $31 = (($30) + ($29)|0); - $32 = HEAP32[$5>>2]|0; - $33 = HEAP32[$got>>2]|0; - $34 = (($32) - ($33))|0; - _memset(($31|0),0,($34|0))|0; - HEAP32[$2>>2] = 522; - $35 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($35|0); - } - return 0|0; -} -function _unixWrite($id,$pBuf,$amt,$0,$1) { - $id = $id|0; - $pBuf = $pBuf|0; - $amt = $amt|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pFile = 0, $wrote = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $4 = sp + 20|0; - $5 = sp + 16|0; - $6 = sp; - $pFile = sp + 12|0; - $wrote = sp + 8|0; - HEAP32[$3>>2] = $id; - HEAP32[$4>>2] = $pBuf; - HEAP32[$5>>2] = $amt; - $7 = $6; - $8 = $7; - HEAP32[$8>>2] = $0; - $9 = (($7) + 4)|0; - $10 = $9; - HEAP32[$10>>2] = $1; - $11 = HEAP32[$3>>2]|0; - HEAP32[$pFile>>2] = $11; - HEAP32[$wrote>>2] = 0; - while(1) { - $12 = HEAP32[$5>>2]|0; - $13 = ($12|0)>(0); - if (!($13)) { - break; - } - $14 = HEAP32[$pFile>>2]|0; - $15 = $6; - $16 = $15; - $17 = HEAP32[$16>>2]|0; - $18 = (($15) + 4)|0; - $19 = $18; - $20 = HEAP32[$19>>2]|0; - $21 = HEAP32[$4>>2]|0; - $22 = HEAP32[$5>>2]|0; - $23 = (_seekAndWrite($14,$17,$20,$21,$22)|0); - HEAP32[$wrote>>2] = $23; - $24 = ($23|0)>(0); - if (!($24)) { - break; - } - $25 = HEAP32[$wrote>>2]|0; - $26 = HEAP32[$5>>2]|0; - $27 = (($26) - ($25))|0; - HEAP32[$5>>2] = $27; - $28 = HEAP32[$wrote>>2]|0; - $29 = ($28|0)<(0); - $30 = $29 << 31 >> 31; - $31 = $6; - $32 = $31; - $33 = HEAP32[$32>>2]|0; - $34 = (($31) + 4)|0; - $35 = $34; - $36 = HEAP32[$35>>2]|0; - $37 = (_i64Add(($33|0),($36|0),($28|0),($30|0))|0); - $38 = tempRet0; - $39 = $6; - $40 = $39; - HEAP32[$40>>2] = $37; - $41 = (($39) + 4)|0; - $42 = $41; - HEAP32[$42>>2] = $38; - $43 = HEAP32[$wrote>>2]|0; - $44 = HEAP32[$4>>2]|0; - $45 = (($44) + ($43)|0); - HEAP32[$4>>2] = $45; - } - $46 = HEAP32[$5>>2]|0; - $47 = ($46|0)>(0); - if (!($47)) { - HEAP32[$2>>2] = 0; - $56 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($56|0); - } - $48 = HEAP32[$wrote>>2]|0; - $49 = ($48|0)<(0); - if ($49) { - $50 = HEAP32[$pFile>>2]|0; - $51 = (($50) + 20|0); - $52 = HEAP32[$51>>2]|0; - $53 = ($52|0)!=(28); - if ($53) { - HEAP32[$2>>2] = 778; - $56 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($56|0); - } - } - $54 = HEAP32[$pFile>>2]|0; - $55 = (($54) + 20|0); - HEAP32[$55>>2] = 0; - HEAP32[$2>>2] = 13; - $56 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($56|0); -} -function _unixTruncate($id,$0,$1) { - $id = $id|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $pFile = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $4 = sp; - $pFile = sp + 12|0; - $rc = sp + 8|0; - HEAP32[$3>>2] = $id; - $5 = $4; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - $9 = HEAP32[$3>>2]|0; - HEAP32[$pFile>>2] = $9; - $10 = HEAP32[$pFile>>2]|0; - $11 = (($10) + 40|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)>(0); - if ($13) { - $14 = $4; - $15 = $14; - $16 = HEAP32[$15>>2]|0; - $17 = (($14) + 4)|0; - $18 = $17; - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$pFile>>2]|0; - $21 = (($20) + 40|0); - $22 = HEAP32[$21>>2]|0; - $23 = ($22|0)<(0); - $24 = $23 << 31 >> 31; - $25 = (_i64Add(($16|0),($19|0),($22|0),($24|0))|0); - $26 = tempRet0; - $27 = (_i64Subtract(($25|0),($26|0),1,0)|0); - $28 = tempRet0; - $29 = HEAP32[$pFile>>2]|0; - $30 = (($29) + 40|0); - $31 = HEAP32[$30>>2]|0; - $32 = ($31|0)<(0); - $33 = $32 << 31 >> 31; - $34 = (___divdi3(($27|0),($28|0),($31|0),($33|0))|0); - $35 = tempRet0; - $36 = HEAP32[$pFile>>2]|0; - $37 = (($36) + 40|0); - $38 = HEAP32[$37>>2]|0; - $39 = ($38|0)<(0); - $40 = $39 << 31 >> 31; - $41 = (___muldi3(($34|0),($35|0),($38|0),($40|0))|0); - $42 = tempRet0; - $43 = $4; - $44 = $43; - HEAP32[$44>>2] = $41; - $45 = (($43) + 4)|0; - $46 = $45; - HEAP32[$46>>2] = $42; - } - $47 = HEAP32[$pFile>>2]|0; - $48 = (($47) + 12|0); - $49 = HEAP32[$48>>2]|0; - $50 = $4; - $51 = $50; - $52 = HEAP32[$51>>2]|0; - $53 = (($50) + 4)|0; - $54 = $53; - $55 = HEAP32[$54>>2]|0; - $56 = ($52|0)<(0); - $57 = $56 << 31 >> 31; - $58 = (_robust_ftruncate($49,$52,$57)|0); - HEAP32[$rc>>2] = $58; - $59 = HEAP32[$rc>>2]|0; - $60 = ($59|0)!=(0); - if ($60) { - $61 = (___errno_location()|0); - $62 = HEAP32[$61>>2]|0; - $63 = HEAP32[$pFile>>2]|0; - $64 = (($63) + 20|0); - HEAP32[$64>>2] = $62; - $65 = HEAP32[$pFile>>2]|0; - $66 = (($65) + 32|0); - $67 = HEAP32[$66>>2]|0; - $68 = (_unixLogErrorAtLine(1546,37440,$67,27527)|0); - HEAP32[$2>>2] = $68; - $69 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($69|0); - } else { - HEAP32[$2>>2] = 0; - $69 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($69|0); - } - return 0|0; -} -function _unixSync($id,$flags) { - $id = $id|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dirfd = 0, $isDataOnly = 0, $isFullsync = 0, $pFile = 0, $rc = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $rc = sp + 16|0; - $pFile = sp + 12|0; - $isDataOnly = sp + 8|0; - $isFullsync = sp + 4|0; - $dirfd = sp; - HEAP32[$1>>2] = $id; - HEAP32[$2>>2] = $flags; - $3 = HEAP32[$1>>2]|0; - HEAP32[$pFile>>2] = $3; - $4 = HEAP32[$2>>2]|0; - $5 = $4 & 16; - HEAP32[$isDataOnly>>2] = $5; - $6 = HEAP32[$2>>2]|0; - $7 = $6 & 15; - $8 = ($7|0)==(3); - $9 = $8&1; - HEAP32[$isFullsync>>2] = $9; - $10 = HEAP32[$pFile>>2]|0; - $11 = (($10) + 12|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$isFullsync>>2]|0; - $14 = HEAP32[$isDataOnly>>2]|0; - $15 = (_full_fsync($12,$13,$14)|0); - HEAP32[$rc>>2] = $15; - $16 = HEAP32[$rc>>2]|0; - $17 = ($16|0)!=(0); - if ($17) { - $18 = (___errno_location()|0); - $19 = HEAP32[$18>>2]|0; - $20 = HEAP32[$pFile>>2]|0; - $21 = (($20) + 20|0); - HEAP32[$21>>2] = $19; - $22 = HEAP32[$pFile>>2]|0; - $23 = (($22) + 32|0); - $24 = HEAP32[$23>>2]|0; - $25 = (_unixLogErrorAtLine(1034,37896,$24,27483)|0); - HEAP32[$0>>2] = $25; - $53 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($53|0); - } - $26 = HEAP32[$pFile>>2]|0; - $27 = (($26) + 18|0); - $28 = HEAP16[$27>>1]|0; - $29 = $28&65535; - $30 = $29 & 8; - $31 = ($30|0)!=(0); - if ($31) { - $32 = HEAP32[((37064 + 208|0))>>2]|0; - $33 = HEAP32[$pFile>>2]|0; - $34 = (($33) + 32|0); - $35 = HEAP32[$34>>2]|0; - $36 = (FUNCTION_TABLE_iii[$32 & 63]($35,$dirfd)|0); - HEAP32[$rc>>2] = $36; - $37 = HEAP32[$rc>>2]|0; - $38 = ($37|0)==(0); - if ($38) { - $39 = HEAP32[$dirfd>>2]|0; - $40 = ($39|0)>=(0); - if ($40) { - $41 = HEAP32[$dirfd>>2]|0; - (_full_fsync($41,0,0)|0); - $42 = HEAP32[$pFile>>2]|0; - $43 = HEAP32[$dirfd>>2]|0; - _robust_close($42,$43,27497); - } else { - label = 7; - } - } else { - label = 7; - } - if ((label|0) == 7) { - $44 = HEAP32[$rc>>2]|0; - $45 = ($44|0)==(14); - if ($45) { - HEAP32[$rc>>2] = 0; - } - } - $46 = HEAP32[$pFile>>2]|0; - $47 = (($46) + 18|0); - $48 = HEAP16[$47>>1]|0; - $49 = $48&65535; - $50 = $49 & -9; - $51 = $50&65535; - HEAP16[$47>>1] = $51; - } - $52 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $52; - $53 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($53|0); -} -function _unixFileSize($id,$pSize) { - $id = $id|0; - $pSize = $pSize|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $buf = 0; - var $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $0 = sp + 88|0; - $1 = sp + 84|0; - $2 = sp + 80|0; - $rc = sp + 76|0; - $buf = sp; - HEAP32[$1>>2] = $id; - HEAP32[$2>>2] = $pSize; - $3 = HEAP32[((37064 + 64|0))>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 12|0); - $6 = HEAP32[$5>>2]|0; - $7 = (FUNCTION_TABLE_iii[$3 & 63]($6,$buf)|0); - HEAP32[$rc>>2] = $7; - $8 = HEAP32[$rc>>2]|0; - $9 = ($8|0)!=(0); - if ($9) { - $10 = (___errno_location()|0); - $11 = HEAP32[$10>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 20|0); - HEAP32[$13>>2] = $11; - HEAP32[$0>>2] = 1802; - $38 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($38|0); - } - $14 = (($buf) + 36|0); - $15 = HEAP32[$14>>2]|0; - $16 = ($15|0)<(0); - $17 = $16 << 31 >> 31; - $18 = HEAP32[$2>>2]|0; - $19 = $18; - $20 = $19; - HEAP32[$20>>2] = $15; - $21 = (($19) + 4)|0; - $22 = $21; - HEAP32[$22>>2] = $17; - $23 = HEAP32[$2>>2]|0; - $24 = $23; - $25 = $24; - $26 = HEAP32[$25>>2]|0; - $27 = (($24) + 4)|0; - $28 = $27; - $29 = HEAP32[$28>>2]|0; - $30 = ($26|0)==(1); - $31 = ($29|0)==(0); - $32 = $30 & $31; - if ($32) { - $33 = HEAP32[$2>>2]|0; - $34 = $33; - $35 = $34; - HEAP32[$35>>2] = 0; - $36 = (($34) + 4)|0; - $37 = $36; - HEAP32[$37>>2] = 0; - } - HEAP32[$0>>2] = 0; - $38 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($38|0); -} -function _dotlockLock($id,$eFileLock) { - $id = $id|0; - $eFileLock = $eFileLock|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, $or$cond = 0, $pFile = 0, $rc = 0, $tErrno = 0, $zLockFile = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $pFile = sp + 12|0; - $zLockFile = sp + 8|0; - $rc = sp + 4|0; - $tErrno = sp; - HEAP32[$1>>2] = $id; - HEAP32[$2>>2] = $eFileLock; - $3 = HEAP32[$1>>2]|0; - HEAP32[$pFile>>2] = $3; - $4 = HEAP32[$pFile>>2]|0; - $5 = (($4) + 24|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$zLockFile>>2] = $6; - HEAP32[$rc>>2] = 0; - $7 = HEAP32[$pFile>>2]|0; - $8 = (($7) + 16|0); - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - $11 = ($10|0)>(0); - if ($11) { - $12 = HEAP32[$2>>2]|0; - $13 = $12&255; - $14 = HEAP32[$pFile>>2]|0; - $15 = (($14) + 16|0); - HEAP8[$15>>0] = $13; - $16 = HEAP32[$zLockFile>>2]|0; - (_utimes(($16|0),(0|0))|0); - HEAP32[$0>>2] = 0; - $41 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($41|0); - } - $17 = HEAP32[((37064 + 220|0))>>2]|0; - $18 = HEAP32[$zLockFile>>2]|0; - $19 = (FUNCTION_TABLE_iii[$17 & 63]($18,511)|0); - HEAP32[$rc>>2] = $19; - $20 = HEAP32[$rc>>2]|0; - $21 = ($20|0)<(0); - if (!($21)) { - $36 = HEAP32[$2>>2]|0; - $37 = $36&255; - $38 = HEAP32[$pFile>>2]|0; - $39 = (($38) + 16|0); - HEAP8[$39>>0] = $37; - $40 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $40; - $41 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($41|0); - } - $22 = (___errno_location()|0); - $23 = HEAP32[$22>>2]|0; - HEAP32[$tErrno>>2] = $23; - $24 = HEAP32[$tErrno>>2]|0; - $25 = (17)==($24|0); - if ($25) { - HEAP32[$rc>>2] = 5; - } else { - $26 = HEAP32[$tErrno>>2]|0; - $27 = (_sqliteErrorFromPosixError($26,3850)|0); - HEAP32[$rc>>2] = $27; - $28 = HEAP32[$rc>>2]|0; - $29 = ($28|0)!=(0); - $30 = HEAP32[$rc>>2]|0; - $31 = ($30|0)!=(5); - $or$cond = $29 & $31; - if ($or$cond) { - $32 = HEAP32[$tErrno>>2]|0; - $33 = HEAP32[$pFile>>2]|0; - $34 = (($33) + 20|0); - HEAP32[$34>>2] = $32; - } - } - $35 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $35; - $41 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($41|0); -} -function _dotlockUnlock($id,$eFileLock) { - $id = $id|0; - $eFileLock = $eFileLock|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $pFile = 0, $rc = 0, $tErrno = 0, $zLockFile = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $pFile = sp + 12|0; - $zLockFile = sp + 8|0; - $rc = sp + 4|0; - $tErrno = sp; - HEAP32[$1>>2] = $id; - HEAP32[$2>>2] = $eFileLock; - $3 = HEAP32[$1>>2]|0; - HEAP32[$pFile>>2] = $3; - $4 = HEAP32[$pFile>>2]|0; - $5 = (($4) + 24|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$zLockFile>>2] = $6; - $7 = HEAP32[$pFile>>2]|0; - $8 = (($7) + 16|0); - $9 = HEAP8[$8>>0]|0; - $10 = $9&255; - $11 = HEAP32[$2>>2]|0; - $12 = ($10|0)==($11|0); - if ($12) { - HEAP32[$0>>2] = 0; - $44 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($44|0); - } - $13 = HEAP32[$2>>2]|0; - $14 = ($13|0)==(1); - if ($14) { - $15 = HEAP32[$pFile>>2]|0; - $16 = (($15) + 16|0); - HEAP8[$16>>0] = 1; - HEAP32[$0>>2] = 0; - $44 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($44|0); - } - $17 = HEAP32[((37064 + 232|0))>>2]|0; - $18 = HEAP32[$zLockFile>>2]|0; - $19 = (FUNCTION_TABLE_ii[$17 & 31]($18)|0); - HEAP32[$rc>>2] = $19; - $20 = HEAP32[$rc>>2]|0; - $21 = ($20|0)<(0); - if ($21) { - $22 = (___errno_location()|0); - $23 = HEAP32[$22>>2]|0; - $24 = ($23|0)==(20); - if ($24) { - $25 = HEAP32[((37064 + 196|0))>>2]|0; - $26 = HEAP32[$zLockFile>>2]|0; - $27 = (FUNCTION_TABLE_ii[$25 & 31]($26)|0); - HEAP32[$rc>>2] = $27; - } - } - $28 = HEAP32[$rc>>2]|0; - $29 = ($28|0)<(0); - if (!($29)) { - $42 = HEAP32[$pFile>>2]|0; - $43 = (($42) + 16|0); - HEAP8[$43>>0] = 0; - HEAP32[$0>>2] = 0; - $44 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($44|0); - } - $30 = (___errno_location()|0); - $31 = HEAP32[$30>>2]|0; - HEAP32[$tErrno>>2] = $31; - HEAP32[$rc>>2] = 0; - $32 = HEAP32[$tErrno>>2]|0; - $33 = (2)!=($32|0); - $$ = $33 ? 2058 : 0; - HEAP32[$rc>>2] = $$; - $34 = HEAP32[$rc>>2]|0; - $35 = ($34|0)!=(0); - $36 = HEAP32[$rc>>2]|0; - $37 = ($36|0)!=(5); - $or$cond = $35 & $37; - if ($or$cond) { - $38 = HEAP32[$tErrno>>2]|0; - $39 = HEAP32[$pFile>>2]|0; - $40 = (($39) + 20|0); - HEAP32[$40>>2] = $38; - } - $41 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $41; - $44 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($44|0); -} -function _dotlockCheckReservedLock($id,$pResOut) { - $id = $id|0; - $pResOut = $pResOut|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pFile = 0; - var $rc = 0, $reserved = 0, $zLockFile = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $rc = sp + 12|0; - $reserved = sp + 8|0; - $pFile = sp + 4|0; - $zLockFile = sp; - HEAP32[$0>>2] = $id; - HEAP32[$1>>2] = $pResOut; - HEAP32[$rc>>2] = 0; - HEAP32[$reserved>>2] = 0; - $2 = HEAP32[$0>>2]|0; - HEAP32[$pFile>>2] = $2; - $3 = HEAP32[$pFile>>2]|0; - $4 = (($3) + 16|0); - $5 = HEAP8[$4>>0]|0; - $6 = $5&255; - $7 = ($6|0)>(1); - if ($7) { - HEAP32[$reserved>>2] = 1; - $16 = HEAP32[$reserved>>2]|0; - $17 = HEAP32[$1>>2]|0; - HEAP32[$17>>2] = $16; - $18 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($18|0); - } else { - $8 = HEAP32[$pFile>>2]|0; - $9 = (($8) + 24|0); - $10 = HEAP32[$9>>2]|0; - HEAP32[$zLockFile>>2] = $10; - $11 = HEAP32[((37064 + 28|0))>>2]|0; - $12 = HEAP32[$zLockFile>>2]|0; - $13 = (FUNCTION_TABLE_iii[$11 & 63]($12,0)|0); - $14 = ($13|0)==(0); - $15 = $14&1; - HEAP32[$reserved>>2] = $15; - $16 = HEAP32[$reserved>>2]|0; - $17 = HEAP32[$1>>2]|0; - HEAP32[$17>>2] = $16; - $18 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($18|0); - } - return 0|0; -} -function _unixFileControl($id,$op,$pArg) { - $id = $id|0; - $op = $op|0; - $pArg = $pArg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - var $pFile = 0, $rc = 0, $vararg_buffer = 0, $zTFile = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 28|0; - $1 = sp + 24|0; - $2 = sp + 20|0; - $3 = sp + 16|0; - $pFile = sp + 12|0; - $rc = sp + 8|0; - $zTFile = sp + 4|0; - HEAP32[$1>>2] = $id; - HEAP32[$2>>2] = $op; - HEAP32[$3>>2] = $pArg; - $4 = HEAP32[$1>>2]|0; - HEAP32[$pFile>>2] = $4; - $5 = HEAP32[$2>>2]|0; - do { - switch ($5|0) { - case 20: { - $56 = HEAP32[$pFile>>2]|0; - $57 = (_fileHasMoved($56)|0); - $58 = HEAP32[$3>>2]|0; - HEAP32[$58>>2] = $57; - HEAP32[$0>>2] = 0; - break; - } - case 16: { - $40 = HEAP32[$pFile>>2]|0; - $41 = (($40) + 4|0); - $42 = HEAP32[$41>>2]|0; - $43 = (($42) + 8|0); - $44 = HEAP32[$43>>2]|0; - $45 = (_sqlite3_malloc($44)|0); - HEAP32[$zTFile>>2] = $45; - $46 = HEAP32[$zTFile>>2]|0; - $47 = ($46|0)!=(0|0); - if ($47) { - $48 = HEAP32[$pFile>>2]|0; - $49 = (($48) + 4|0); - $50 = HEAP32[$49>>2]|0; - $51 = (($50) + 8|0); - $52 = HEAP32[$51>>2]|0; - $53 = HEAP32[$zTFile>>2]|0; - (_unixGetTempname($52,$53)|0); - $54 = HEAP32[$zTFile>>2]|0; - $55 = HEAP32[$3>>2]|0; - HEAP32[$55>>2] = $54; - } - HEAP32[$0>>2] = 0; - break; - } - case 6: { - $15 = HEAP32[$3>>2]|0; - $16 = HEAP32[$15>>2]|0; - $17 = HEAP32[$pFile>>2]|0; - $18 = (($17) + 40|0); - HEAP32[$18>>2] = $16; - HEAP32[$0>>2] = 0; - break; - } - case 4: { - $11 = HEAP32[$pFile>>2]|0; - $12 = (($11) + 20|0); - $13 = HEAP32[$12>>2]|0; - $14 = HEAP32[$3>>2]|0; - HEAP32[$14>>2] = $13; - HEAP32[$0>>2] = 0; - break; - } - case 5: { - $19 = HEAP32[$pFile>>2]|0; - $20 = HEAP32[$3>>2]|0; - $21 = $20; - $22 = $21; - $23 = HEAP32[$22>>2]|0; - $24 = (($21) + 4)|0; - $25 = $24; - $26 = HEAP32[$25>>2]|0; - $27 = (_fcntlSizeHint($19,$23,$26)|0); - HEAP32[$rc>>2] = $27; - $28 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $28; - break; - } - case 13: { - $31 = HEAP32[$pFile>>2]|0; - $32 = HEAP32[$3>>2]|0; - _unixModeBit($31,16,$32); - HEAP32[$0>>2] = 0; - break; - } - case 10: { - $29 = HEAP32[$pFile>>2]|0; - $30 = HEAP32[$3>>2]|0; - _unixModeBit($29,4,$30); - HEAP32[$0>>2] = 0; - break; - } - case 1: { - $6 = HEAP32[$pFile>>2]|0; - $7 = (($6) + 16|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8&255; - $10 = HEAP32[$3>>2]|0; - HEAP32[$10>>2] = $9; - HEAP32[$0>>2] = 0; - break; - } - case 12: { - $33 = HEAP32[$pFile>>2]|0; - $34 = (($33) + 4|0); - $35 = HEAP32[$34>>2]|0; - $36 = (($35) + 16|0); - $37 = HEAP32[$36>>2]|0; - HEAP32[$vararg_buffer>>2] = $37; - $38 = (_sqlite3_mprintf(1456,$vararg_buffer)|0); - $39 = HEAP32[$3>>2]|0; - HEAP32[$39>>2] = $38; - HEAP32[$0>>2] = 0; - break; - } - default: { - HEAP32[$0>>2] = 12; - } - } - } while(0); - $59 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($59|0); -} -function _unixSectorSize($NotUsed) { - $NotUsed = $NotUsed|0; - var $0 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $NotUsed; - STACKTOP = sp;return 4096; -} -function _unixDeviceCharacteristics($id) { - $id = $id|0; - var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $p = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $id; - $1 = HEAP32[$0>>2]|0; - HEAP32[$p>>2] = $1; - HEAP32[$rc>>2] = 0; - $2 = HEAP32[$p>>2]|0; - $3 = (($2) + 18|0); - $4 = HEAP16[$3>>1]|0; - $5 = $4&65535; - $6 = $5 & 16; - $7 = ($6|0)!=(0); - if (!($7)) { - $10 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($10|0); - } - $8 = HEAP32[$rc>>2]|0; - $9 = $8 | 4096; - HEAP32[$rc>>2] = $9; - $10 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($10|0); -} -function _unixShmMap($fd,$iRegion,$szRegion,$bExtend,$pp) { - $fd = $fd|0; - $iRegion = $iRegion|0; - $szRegion = $szRegion|0; - $bExtend = $bExtend|0; - $pp = $pp|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; - var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; - var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; - var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; - var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; - var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; - var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $apNew = 0, $i = 0, $iPg = 0, $nByte = 0, $nMap = 0, $nReqRegion = 0, $nShmPerMap = 0, $p = 0, $pDbFd = 0, $pMem = 0, $pShmNode = 0; - var $rc = 0, $sStat = 0, $zFile = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 160|0; - $0 = sp + 148|0; - $1 = sp + 144|0; - $2 = sp + 140|0; - $3 = sp + 136|0; - $4 = sp + 132|0; - $5 = sp + 128|0; - $pDbFd = sp + 124|0; - $p = sp + 120|0; - $pShmNode = sp + 116|0; - $rc = sp + 112|0; - $nShmPerMap = sp + 108|0; - $nReqRegion = sp + 104|0; - $apNew = sp + 100|0; - $nByte = sp + 96|0; - $sStat = sp + 20|0; - $iPg = sp + 16|0; - $zFile = sp + 12|0; - $nMap = sp + 8|0; - $i = sp + 4|0; - $pMem = sp; - HEAP32[$1>>2] = $fd; - HEAP32[$2>>2] = $iRegion; - HEAP32[$3>>2] = $szRegion; - HEAP32[$4>>2] = $bExtend; - HEAP32[$5>>2] = $pp; - $6 = HEAP32[$1>>2]|0; - HEAP32[$pDbFd>>2] = $6; - HEAP32[$rc>>2] = 0; - $7 = (_unixShmRegionPerMap()|0); - HEAP32[$nShmPerMap>>2] = $7; - $8 = HEAP32[$pDbFd>>2]|0; - $9 = (($8) + 36|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)==(0|0); - if ($11) { - $12 = HEAP32[$pDbFd>>2]|0; - $13 = (_unixOpenSharedMemory($12)|0); - HEAP32[$rc>>2] = $13; - $14 = HEAP32[$rc>>2]|0; - $15 = ($14|0)!=(0); - if ($15) { - $16 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $16; - $188 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($188|0); - } - } - $17 = HEAP32[$pDbFd>>2]|0; - $18 = (($17) + 36|0); - $19 = HEAP32[$18>>2]|0; - HEAP32[$p>>2] = $19; - $20 = HEAP32[$p>>2]|0; - $21 = HEAP32[$20>>2]|0; - HEAP32[$pShmNode>>2] = $21; - $22 = HEAP32[$2>>2]|0; - $23 = HEAP32[$nShmPerMap>>2]|0; - $24 = (($22) + ($23))|0; - $25 = HEAP32[$nShmPerMap>>2]|0; - $26 = (($24|0) / ($25|0))&-1; - $27 = HEAP32[$nShmPerMap>>2]|0; - $28 = Math_imul($26, $27)|0; - HEAP32[$nReqRegion>>2] = $28; - $29 = HEAP32[$pShmNode>>2]|0; - $30 = (($29) + 20|0); - $31 = HEAP16[$30>>1]|0; - $32 = $31&65535; - $33 = HEAP32[$nReqRegion>>2]|0; - $34 = ($32|0)<($33|0); - L6: do { - if ($34) { - $35 = HEAP32[$nReqRegion>>2]|0; - $36 = HEAP32[$3>>2]|0; - $37 = Math_imul($35, $36)|0; - HEAP32[$nByte>>2] = $37; - $38 = HEAP32[$3>>2]|0; - $39 = HEAP32[$pShmNode>>2]|0; - $40 = (($39) + 16|0); - HEAP32[$40>>2] = $38; - $41 = HEAP32[$pShmNode>>2]|0; - $42 = (($41) + 12|0); - $43 = HEAP32[$42>>2]|0; - $44 = ($43|0)>=(0); - L8: do { - if ($44) { - $45 = HEAP32[((37064 + 64|0))>>2]|0; - $46 = HEAP32[$pShmNode>>2]|0; - $47 = (($46) + 12|0); - $48 = HEAP32[$47>>2]|0; - $49 = (FUNCTION_TABLE_iii[$45 & 63]($48,$sStat)|0); - $50 = ($49|0)!=(0); - if ($50) { - HEAP32[$rc>>2] = 4874; - break L6; - } - $51 = (($sStat) + 36|0); - $52 = HEAP32[$51>>2]|0; - $53 = HEAP32[$nByte>>2]|0; - $54 = ($52|0)<($53|0); - if ($54) { - $55 = HEAP32[$4>>2]|0; - $56 = ($55|0)!=(0); - if (!($56)) { - break L6; - } - $57 = (($sStat) + 36|0); - $58 = HEAP32[$57>>2]|0; - $59 = (($58|0) / 4096)&-1; - HEAP32[$iPg>>2] = $59; - while(1) { - $60 = HEAP32[$iPg>>2]|0; - $61 = HEAP32[$nByte>>2]|0; - $62 = (($61|0) / 4096)&-1; - $63 = ($60|0)<($62|0); - if (!($63)) { - break L8; - } - $64 = HEAP32[$pShmNode>>2]|0; - $65 = (($64) + 12|0); - $66 = HEAP32[$65>>2]|0; - $67 = HEAP32[$iPg>>2]|0; - $68 = $67<<12; - $69 = (($68) + 4096)|0; - $70 = (($69) - 1)|0; - $71 = ($70|0)<(0); - $72 = $71 << 31 >> 31; - $73 = (_seekAndWriteFd($66,$70,$72,1472,1,0)|0); - $74 = ($73|0)!=(1); - if ($74) { - break; - } - $80 = HEAP32[$iPg>>2]|0; - $81 = (($80) + 1)|0; - HEAP32[$iPg>>2] = $81; - } - $75 = HEAP32[$pShmNode>>2]|0; - $76 = (($75) + 8|0); - $77 = HEAP32[$76>>2]|0; - HEAP32[$zFile>>2] = $77; - $78 = HEAP32[$zFile>>2]|0; - $79 = (_unixLogErrorAtLine(4874,37488,$78,28353)|0); - HEAP32[$rc>>2] = $79; - break L6; - } - } - } while(0); - $82 = HEAP32[$pShmNode>>2]|0; - $83 = (($82) + 24|0); - $84 = HEAP32[$83>>2]|0; - $85 = HEAP32[$nReqRegion>>2]|0; - $86 = $85<<2; - $87 = (_sqlite3_realloc($84,$86)|0); - HEAP32[$apNew>>2] = $87; - $88 = HEAP32[$apNew>>2]|0; - $89 = ($88|0)!=(0|0); - if (!($89)) { - HEAP32[$rc>>2] = 3082; - break; - } - $90 = HEAP32[$apNew>>2]|0; - $91 = HEAP32[$pShmNode>>2]|0; - $92 = (($91) + 24|0); - HEAP32[$92>>2] = $90; - while(1) { - $93 = HEAP32[$pShmNode>>2]|0; - $94 = (($93) + 20|0); - $95 = HEAP16[$94>>1]|0; - $96 = $95&65535; - $97 = HEAP32[$nReqRegion>>2]|0; - $98 = ($96|0)<($97|0); - if (!($98)) { - break L6; - } - $99 = HEAP32[$3>>2]|0; - $100 = HEAP32[$nShmPerMap>>2]|0; - $101 = Math_imul($99, $100)|0; - HEAP32[$nMap>>2] = $101; - $102 = HEAP32[$pShmNode>>2]|0; - $103 = (($102) + 12|0); - $104 = HEAP32[$103>>2]|0; - $105 = ($104|0)>=(0); - if ($105) { - $106 = HEAP32[((37064 + 256|0))>>2]|0; - $107 = HEAP32[$nMap>>2]|0; - $108 = HEAP32[$pShmNode>>2]|0; - $109 = (($108) + 22|0); - $110 = HEAP8[$109>>0]|0; - $111 = $110&255; - $112 = ($111|0)!=(0); - $113 = $112 ? 1 : 3; - $114 = HEAP32[$pShmNode>>2]|0; - $115 = (($114) + 12|0); - $116 = HEAP32[$115>>2]|0; - $117 = HEAP32[$3>>2]|0; - $118 = ($117|0)<(0); - $119 = $118 << 31 >> 31; - $120 = HEAP32[$pShmNode>>2]|0; - $121 = (($120) + 20|0); - $122 = HEAP16[$121>>1]|0; - $123 = $122&65535; - $124 = (___muldi3(($117|0),($119|0),($123|0),0)|0); - $125 = tempRet0; - $126 = (FUNCTION_TABLE_iiiiiii[$106 & 1](0,$107,$113,1,$116,$124)|0); - HEAP32[$pMem>>2] = $126; - $127 = HEAP32[$pMem>>2]|0; - $128 = ($127|0)==((-1)|0); - if ($128) { - label = 21; - break; - } - } else { - $133 = HEAP32[$3>>2]|0; - $134 = (_sqlite3_malloc($133)|0); - HEAP32[$pMem>>2] = $134; - $135 = HEAP32[$pMem>>2]|0; - $136 = ($135|0)==(0|0); - if ($136) { - label = 23; - break; - } - $137 = HEAP32[$pMem>>2]|0; - $138 = HEAP32[$3>>2]|0; - _memset(($137|0),0,($138|0))|0; - } - HEAP32[$i>>2] = 0; - while(1) { - $139 = HEAP32[$i>>2]|0; - $140 = HEAP32[$nShmPerMap>>2]|0; - $141 = ($139|0)<($140|0); - if (!($141)) { - break; - } - $142 = HEAP32[$3>>2]|0; - $143 = HEAP32[$i>>2]|0; - $144 = Math_imul($142, $143)|0; - $145 = HEAP32[$pMem>>2]|0; - $146 = (($145) + ($144)|0); - $147 = HEAP32[$pShmNode>>2]|0; - $148 = (($147) + 20|0); - $149 = HEAP16[$148>>1]|0; - $150 = $149&65535; - $151 = HEAP32[$i>>2]|0; - $152 = (($150) + ($151))|0; - $153 = HEAP32[$pShmNode>>2]|0; - $154 = (($153) + 24|0); - $155 = HEAP32[$154>>2]|0; - $156 = (($155) + ($152<<2)|0); - HEAP32[$156>>2] = $146; - $157 = HEAP32[$i>>2]|0; - $158 = (($157) + 1)|0; - HEAP32[$i>>2] = $158; - } - $159 = HEAP32[$nShmPerMap>>2]|0; - $160 = HEAP32[$pShmNode>>2]|0; - $161 = (($160) + 20|0); - $162 = HEAP16[$161>>1]|0; - $163 = $162&65535; - $164 = (($163) + ($159))|0; - $165 = $164&65535; - HEAP16[$161>>1] = $165; - } - if ((label|0) == 21) { - $129 = HEAP32[$pShmNode>>2]|0; - $130 = (($129) + 8|0); - $131 = HEAP32[$130>>2]|0; - $132 = (_unixLogErrorAtLine(5386,37592,$131,28380)|0); - HEAP32[$rc>>2] = $132; - break; - } - else if ((label|0) == 23) { - HEAP32[$rc>>2] = 7; - break; - } - } - } while(0); - $166 = HEAP32[$pShmNode>>2]|0; - $167 = (($166) + 20|0); - $168 = HEAP16[$167>>1]|0; - $169 = $168&65535; - $170 = HEAP32[$2>>2]|0; - $171 = ($169|0)>($170|0); - if ($171) { - $172 = HEAP32[$2>>2]|0; - $173 = HEAP32[$pShmNode>>2]|0; - $174 = (($173) + 24|0); - $175 = HEAP32[$174>>2]|0; - $176 = (($175) + ($172<<2)|0); - $177 = HEAP32[$176>>2]|0; - $178 = HEAP32[$5>>2]|0; - HEAP32[$178>>2] = $177; - } else { - $179 = HEAP32[$5>>2]|0; - HEAP32[$179>>2] = 0; - } - $180 = HEAP32[$pShmNode>>2]|0; - $181 = (($180) + 22|0); - $182 = HEAP8[$181>>0]|0; - $183 = $182&255; - $184 = ($183|0)!=(0); - if ($184) { - $185 = HEAP32[$rc>>2]|0; - $186 = ($185|0)==(0); - if ($186) { - HEAP32[$rc>>2] = 8; - } - } - $187 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $187; - $188 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($188|0); -} -function _unixShmLock($fd,$ofst,$n,$flags) { - $fd = $fd|0; - $ofst = $ofst|0; - $n = $n|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; - var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; - var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; - var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; - var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; - var $97 = 0, $98 = 0, $99 = 0, $allMask = 0, $allShared = 0, $mask = 0, $p = 0, $pDbFd = 0, $pShmNode = 0, $pX = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 32|0; - $1 = sp + 28|0; - $2 = sp + 24|0; - $3 = sp + 20|0; - $pDbFd = sp + 16|0; - $p = sp + 12|0; - $pX = sp + 8|0; - $pShmNode = sp + 4|0; - $rc = sp; - $mask = sp + 40|0; - $allMask = sp + 38|0; - $allShared = sp + 36|0; - HEAP32[$0>>2] = $fd; - HEAP32[$1>>2] = $ofst; - HEAP32[$2>>2] = $n; - HEAP32[$3>>2] = $flags; - $4 = HEAP32[$0>>2]|0; - HEAP32[$pDbFd>>2] = $4; - $5 = HEAP32[$pDbFd>>2]|0; - $6 = (($5) + 36|0); - $7 = HEAP32[$6>>2]|0; - HEAP32[$p>>2] = $7; - $8 = HEAP32[$p>>2]|0; - $9 = HEAP32[$8>>2]|0; - HEAP32[$pShmNode>>2] = $9; - HEAP32[$rc>>2] = 0; - $10 = HEAP32[$1>>2]|0; - $11 = HEAP32[$2>>2]|0; - $12 = (($10) + ($11))|0; - $13 = 1 << $12; - $14 = HEAP32[$1>>2]|0; - $15 = 1 << $14; - $16 = (($13) - ($15))|0; - $17 = $16&65535; - HEAP16[$mask>>1] = $17; - $18 = HEAP32[$3>>2]|0; - $19 = $18 & 1; - $20 = ($19|0)!=(0); - if ($20) { - HEAP16[$allMask>>1] = 0; - $21 = HEAP32[$pShmNode>>2]|0; - $22 = (($21) + 32|0); - $23 = HEAP32[$22>>2]|0; - HEAP32[$pX>>2] = $23; - while(1) { - $24 = HEAP32[$pX>>2]|0; - $25 = ($24|0)!=(0|0); - if (!($25)) { - break; - } - $26 = HEAP32[$pX>>2]|0; - $27 = HEAP32[$p>>2]|0; - $28 = ($26|0)==($27|0); - if (!($28)) { - $29 = HEAP32[$pX>>2]|0; - $30 = (($29) + 10|0); - $31 = HEAP16[$30>>1]|0; - $32 = $31&65535; - $33 = HEAP16[$allMask>>1]|0; - $34 = $33&65535; - $35 = $34 | $32; - $36 = $35&65535; - HEAP16[$allMask>>1] = $36; - } - $37 = HEAP32[$pX>>2]|0; - $38 = (($37) + 4|0); - $39 = HEAP32[$38>>2]|0; - HEAP32[$pX>>2] = $39; - } - $40 = HEAP16[$mask>>1]|0; - $41 = $40&65535; - $42 = HEAP16[$allMask>>1]|0; - $43 = $42&65535; - $44 = $41 & $43; - $45 = ($44|0)==(0); - if ($45) { - $46 = HEAP32[$pShmNode>>2]|0; - $47 = HEAP32[$1>>2]|0; - $48 = (($47) + 120)|0; - $49 = HEAP32[$2>>2]|0; - $50 = (_unixShmSystemLock($46,2,$48,$49)|0); - HEAP32[$rc>>2] = $50; - } else { - HEAP32[$rc>>2] = 0; - } - $51 = HEAP32[$rc>>2]|0; - $52 = ($51|0)==(0); - if (!($52)) { - $162 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($162|0); - } - $53 = HEAP16[$mask>>1]|0; - $54 = $53&65535; - $55 = $54 ^ -1; - $56 = HEAP32[$p>>2]|0; - $57 = (($56) + 12|0); - $58 = HEAP16[$57>>1]|0; - $59 = $58&65535; - $60 = $59 & $55; - $61 = $60&65535; - HEAP16[$57>>1] = $61; - $62 = HEAP16[$mask>>1]|0; - $63 = $62&65535; - $64 = $63 ^ -1; - $65 = HEAP32[$p>>2]|0; - $66 = (($65) + 10|0); - $67 = HEAP16[$66>>1]|0; - $68 = $67&65535; - $69 = $68 & $64; - $70 = $69&65535; - HEAP16[$66>>1] = $70; - $162 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($162|0); - } - $71 = HEAP32[$3>>2]|0; - $72 = $71 & 4; - $73 = ($72|0)!=(0); - if (!($73)) { - $121 = HEAP32[$pShmNode>>2]|0; - $122 = (($121) + 32|0); - $123 = HEAP32[$122>>2]|0; - HEAP32[$pX>>2] = $123; - while(1) { - $124 = HEAP32[$pX>>2]|0; - $125 = ($124|0)!=(0|0); - if (!($125)) { - break; - } - $126 = HEAP32[$pX>>2]|0; - $127 = (($126) + 12|0); - $128 = HEAP16[$127>>1]|0; - $129 = $128&65535; - $130 = HEAP16[$mask>>1]|0; - $131 = $130&65535; - $132 = $129 & $131; - $133 = ($132|0)!=(0); - if ($133) { - label = 28; - break; - } - $134 = HEAP32[$pX>>2]|0; - $135 = (($134) + 10|0); - $136 = HEAP16[$135>>1]|0; - $137 = $136&65535; - $138 = HEAP16[$mask>>1]|0; - $139 = $138&65535; - $140 = $137 & $139; - $141 = ($140|0)!=(0); - if ($141) { - label = 28; - break; - } - $142 = HEAP32[$pX>>2]|0; - $143 = (($142) + 4|0); - $144 = HEAP32[$143>>2]|0; - HEAP32[$pX>>2] = $144; - } - if ((label|0) == 28) { - HEAP32[$rc>>2] = 5; - } - $145 = HEAP32[$rc>>2]|0; - $146 = ($145|0)==(0); - if (!($146)) { - $162 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($162|0); - } - $147 = HEAP32[$pShmNode>>2]|0; - $148 = HEAP32[$1>>2]|0; - $149 = (($148) + 120)|0; - $150 = HEAP32[$2>>2]|0; - $151 = (_unixShmSystemLock($147,1,$149,$150)|0); - HEAP32[$rc>>2] = $151; - $152 = HEAP32[$rc>>2]|0; - $153 = ($152|0)==(0); - if (!($153)) { - $162 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($162|0); - } - $154 = HEAP16[$mask>>1]|0; - $155 = $154&65535; - $156 = HEAP32[$p>>2]|0; - $157 = (($156) + 12|0); - $158 = HEAP16[$157>>1]|0; - $159 = $158&65535; - $160 = $159 | $155; - $161 = $160&65535; - HEAP16[$157>>1] = $161; - $162 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($162|0); - } - HEAP16[$allShared>>1] = 0; - $74 = HEAP32[$pShmNode>>2]|0; - $75 = (($74) + 32|0); - $76 = HEAP32[$75>>2]|0; - HEAP32[$pX>>2] = $76; - while(1) { - $77 = HEAP32[$pX>>2]|0; - $78 = ($77|0)!=(0|0); - if (!($78)) { - break; - } - $79 = HEAP32[$pX>>2]|0; - $80 = (($79) + 12|0); - $81 = HEAP16[$80>>1]|0; - $82 = $81&65535; - $83 = HEAP16[$mask>>1]|0; - $84 = $83&65535; - $85 = $82 & $84; - $86 = ($85|0)!=(0); - if ($86) { - label = 16; - break; - } - $87 = HEAP32[$pX>>2]|0; - $88 = (($87) + 10|0); - $89 = HEAP16[$88>>1]|0; - $90 = $89&65535; - $91 = HEAP16[$allShared>>1]|0; - $92 = $91&65535; - $93 = $92 | $90; - $94 = $93&65535; - HEAP16[$allShared>>1] = $94; - $95 = HEAP32[$pX>>2]|0; - $96 = (($95) + 4|0); - $97 = HEAP32[$96>>2]|0; - HEAP32[$pX>>2] = $97; - } - if ((label|0) == 16) { - HEAP32[$rc>>2] = 5; - } - $98 = HEAP32[$rc>>2]|0; - $99 = ($98|0)==(0); - do { - if ($99) { - $100 = HEAP16[$allShared>>1]|0; - $101 = $100&65535; - $102 = HEAP16[$mask>>1]|0; - $103 = $102&65535; - $104 = $101 & $103; - $105 = ($104|0)==(0); - if ($105) { - $106 = HEAP32[$pShmNode>>2]|0; - $107 = HEAP32[$1>>2]|0; - $108 = (($107) + 120)|0; - $109 = HEAP32[$2>>2]|0; - $110 = (_unixShmSystemLock($106,0,$108,$109)|0); - HEAP32[$rc>>2] = $110; - break; - } else { - HEAP32[$rc>>2] = 0; - break; - } - } - } while(0); - $111 = HEAP32[$rc>>2]|0; - $112 = ($111|0)==(0); - if (!($112)) { - $162 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($162|0); - } - $113 = HEAP16[$mask>>1]|0; - $114 = $113&65535; - $115 = HEAP32[$p>>2]|0; - $116 = (($115) + 10|0); - $117 = HEAP16[$116>>1]|0; - $118 = $117&65535; - $119 = $118 | $114; - $120 = $119&65535; - HEAP16[$116>>1] = $120; - $162 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($162|0); -} -function _unixShmBarrier($fd) { - $fd = $fd|0; - var $0 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $fd; - _unixEnterMutex(); - _unixLeaveMutex(); - STACKTOP = sp;return; -} -function _unixShmUnmap($fd,$deleteFlag) { - $fd = $fd|0; - $deleteFlag = $deleteFlag|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pDbFd = 0, $pShmNode = 0, $pp = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $p = sp + 12|0; - $pShmNode = sp + 8|0; - $pp = sp + 4|0; - $pDbFd = sp; - HEAP32[$1>>2] = $fd; - HEAP32[$2>>2] = $deleteFlag; - $3 = HEAP32[$1>>2]|0; - HEAP32[$pDbFd>>2] = $3; - $4 = HEAP32[$pDbFd>>2]|0; - $5 = (($4) + 36|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$p>>2] = $6; - $7 = HEAP32[$p>>2]|0; - $8 = ($7|0)==(0|0); - if ($8) { - HEAP32[$0>>2] = 0; - $46 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($46|0); - } - $9 = HEAP32[$p>>2]|0; - $10 = HEAP32[$9>>2]|0; - HEAP32[$pShmNode>>2] = $10; - $11 = HEAP32[$pShmNode>>2]|0; - $12 = (($11) + 32|0); - HEAP32[$pp>>2] = $12; - while(1) { - $13 = HEAP32[$pp>>2]|0; - $14 = HEAP32[$13>>2]|0; - $15 = HEAP32[$p>>2]|0; - $16 = ($14|0)!=($15|0); - if (!($16)) { - break; - } - $17 = HEAP32[$pp>>2]|0; - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + 4|0); - HEAP32[$pp>>2] = $19; - } - $20 = HEAP32[$p>>2]|0; - $21 = (($20) + 4|0); - $22 = HEAP32[$21>>2]|0; - $23 = HEAP32[$pp>>2]|0; - HEAP32[$23>>2] = $22; - $24 = HEAP32[$p>>2]|0; - _sqlite3_free($24); - $25 = HEAP32[$pDbFd>>2]|0; - $26 = (($25) + 36|0); - HEAP32[$26>>2] = 0; - _unixEnterMutex(); - $27 = HEAP32[$pShmNode>>2]|0; - $28 = (($27) + 28|0); - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + -1)|0; - HEAP32[$28>>2] = $30; - $31 = HEAP32[$pShmNode>>2]|0; - $32 = (($31) + 28|0); - $33 = HEAP32[$32>>2]|0; - $34 = ($33|0)==(0); - if ($34) { - $35 = HEAP32[$2>>2]|0; - $36 = ($35|0)!=(0); - if ($36) { - $37 = HEAP32[$pShmNode>>2]|0; - $38 = (($37) + 12|0); - $39 = HEAP32[$38>>2]|0; - $40 = ($39|0)>=(0); - if ($40) { - $41 = HEAP32[((37064 + 196|0))>>2]|0; - $42 = HEAP32[$pShmNode>>2]|0; - $43 = (($42) + 8|0); - $44 = HEAP32[$43>>2]|0; - (FUNCTION_TABLE_ii[$41 & 31]($44)|0); - } - } - $45 = HEAP32[$pDbFd>>2]|0; - _unixShmPurge($45); - } - _unixLeaveMutex(); - HEAP32[$0>>2] = 0; - $46 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($46|0); -} -function _unixFetch($fd,$0,$1,$nAmt,$pp) { - $fd = $fd|0; - $0 = $0|0; - $1 = $1|0; - $nAmt = $nAmt|0; - $pp = $pp|0; - var $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 16|0; - $3 = sp; - $4 = sp + 12|0; - $5 = sp + 8|0; - HEAP32[$2>>2] = $fd; - $6 = $3; - $7 = $6; - HEAP32[$7>>2] = $0; - $8 = (($6) + 4)|0; - $9 = $8; - HEAP32[$9>>2] = $1; - HEAP32[$4>>2] = $nAmt; - HEAP32[$5>>2] = $pp; - $10 = HEAP32[$5>>2]|0; - HEAP32[$10>>2] = 0; - STACKTOP = sp;return 0; -} -function _unixUnfetch($fd,$0,$1,$p) { - $fd = $fd|0; - $0 = $0|0; - $1 = $1|0; - $p = $p|0; - var $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $2 = sp + 12|0; - $3 = sp; - $4 = sp + 8|0; - HEAP32[$2>>2] = $fd; - $5 = $3; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - HEAP32[$4>>2] = $p; - STACKTOP = sp;return 0; -} -function _unixEnterMutex() { - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = sp;return; -} -function _unixShmPurge($pFd) { - $pFd = $pFd|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $nShmPerMap = 0; - var $p = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $p = sp + 8|0; - $nShmPerMap = sp + 4|0; - $i = sp; - HEAP32[$0>>2] = $pFd; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP32[$2>>2]|0; - $4 = (($3) + 20|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$p>>2] = $5; - $6 = HEAP32[$p>>2]|0; - $7 = ($6|0)!=(0|0); - if (!($7)) { - STACKTOP = sp;return; - } - $8 = HEAP32[$p>>2]|0; - $9 = (($8) + 28|0); - $10 = HEAP32[$9>>2]|0; - $11 = ($10|0)==(0); - if (!($11)) { - STACKTOP = sp;return; - } - $12 = (_unixShmRegionPerMap()|0); - HEAP32[$nShmPerMap>>2] = $12; - HEAP32[$i>>2] = 0; - while(1) { - $13 = HEAP32[$i>>2]|0; - $14 = HEAP32[$p>>2]|0; - $15 = (($14) + 20|0); - $16 = HEAP16[$15>>1]|0; - $17 = $16&65535; - $18 = ($13|0)<($17|0); - $19 = HEAP32[$p>>2]|0; - if (!($18)) { - break; - } - $20 = (($19) + 12|0); - $21 = HEAP32[$20>>2]|0; - $22 = ($21|0)>=(0); - if ($22) { - $23 = HEAP32[((37064 + 268|0))>>2]|0; - $24 = HEAP32[$i>>2]|0; - $25 = HEAP32[$p>>2]|0; - $26 = (($25) + 24|0); - $27 = HEAP32[$26>>2]|0; - $28 = (($27) + ($24<<2)|0); - $29 = HEAP32[$28>>2]|0; - $30 = HEAP32[$p>>2]|0; - $31 = (($30) + 16|0); - $32 = HEAP32[$31>>2]|0; - (FUNCTION_TABLE_iii[$23 & 63]($29,$32)|0); - } else { - $33 = HEAP32[$i>>2]|0; - $34 = HEAP32[$p>>2]|0; - $35 = (($34) + 24|0); - $36 = HEAP32[$35>>2]|0; - $37 = (($36) + ($33<<2)|0); - $38 = HEAP32[$37>>2]|0; - _sqlite3_free($38); - } - $39 = HEAP32[$nShmPerMap>>2]|0; - $40 = HEAP32[$i>>2]|0; - $41 = (($40) + ($39))|0; - HEAP32[$i>>2] = $41; - } - $42 = (($19) + 24|0); - $43 = HEAP32[$42>>2]|0; - _sqlite3_free($43); - $44 = HEAP32[$p>>2]|0; - $45 = (($44) + 12|0); - $46 = HEAP32[$45>>2]|0; - $47 = ($46|0)>=(0); - if ($47) { - $48 = HEAP32[$0>>2]|0; - $49 = HEAP32[$p>>2]|0; - $50 = (($49) + 12|0); - $51 = HEAP32[$50>>2]|0; - _robust_close($48,$51,28094); - $52 = HEAP32[$p>>2]|0; - $53 = (($52) + 12|0); - HEAP32[$53>>2] = -1; - } - $54 = HEAP32[$p>>2]|0; - $55 = HEAP32[$54>>2]|0; - $56 = (($55) + 20|0); - HEAP32[$56>>2] = 0; - $57 = HEAP32[$p>>2]|0; - _sqlite3_free($57); - STACKTOP = sp;return; -} -function _unixLeaveMutex() { - var label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = sp;return; -} -function _unixShmRegionPerMap() { - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pgsz = 0, $shmsz = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $shmsz = sp + 4|0; - $pgsz = sp; - HEAP32[$shmsz>>2] = 32768; - $1 = HEAP32[((37064 + 292|0))>>2]|0; - $2 = (FUNCTION_TABLE_i[$1 & 1]()|0); - HEAP32[$pgsz>>2] = $2; - $3 = HEAP32[$pgsz>>2]|0; - $4 = HEAP32[$shmsz>>2]|0; - $5 = ($3|0)<($4|0); - if ($5) { - HEAP32[$0>>2] = 1; - $9 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($9|0); - } else { - $6 = HEAP32[$pgsz>>2]|0; - $7 = HEAP32[$shmsz>>2]|0; - $8 = (($6|0) / ($7|0))&-1; - HEAP32[$0>>2] = $8; - $9 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($9|0); - } - return 0|0; -} -function _robust_close($pFile,$h,$lineno) { - $pFile = $pFile|0; - $h = $h|0; - $lineno = $lineno|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $pFile; - HEAP32[$1>>2] = $h; - HEAP32[$2>>2] = $lineno; - $3 = HEAP32[((37064 + 16|0))>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (FUNCTION_TABLE_ii[$3 & 31]($4)|0); - $6 = ($5|0)!=(0); - if (!($6)) { - STACKTOP = sp;return; - } - $7 = HEAP32[$0>>2]|0; - $8 = ($7|0)!=(0|0); - if ($8) { - $9 = HEAP32[$0>>2]|0; - $10 = (($9) + 32|0); - $11 = HEAP32[$10>>2]|0; - $13 = $11; - } else { - $13 = 0; - } - $12 = HEAP32[$2>>2]|0; - (_unixLogErrorAtLine(4106,37368,$13,$12)|0); - STACKTOP = sp;return; -} -function _unixLogErrorAtLine($errcode,$zFunc,$zPath,$iLine) { - $errcode = $errcode|0; - $zFunc = $zFunc|0; - $zPath = $zPath|0; - $iLine = $iLine|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iErrno = 0, $vararg_buffer = 0, $vararg_ptr1 = 0; - var $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $zErr = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $zErr = sp + 24|0; - $iErrno = sp + 20|0; - HEAP32[$0>>2] = $errcode; - HEAP32[$1>>2] = $zFunc; - HEAP32[$2>>2] = $zPath; - HEAP32[$3>>2] = $iLine; - $4 = (___errno_location()|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$iErrno>>2] = $5; - $6 = HEAP32[$iErrno>>2]|0; - $7 = (_strerror(($6|0))|0); - HEAP32[$zErr>>2] = $7; - $8 = HEAP32[$2>>2]|0; - $9 = ($8|0)==(0|0); - if ($9) { - HEAP32[$2>>2] = 1472; - } - $10 = HEAP32[$0>>2]|0; - $11 = HEAP32[$3>>2]|0; - $12 = HEAP32[$iErrno>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$zErr>>2]|0; - HEAP32[$vararg_buffer>>2] = $11; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $12; - $vararg_ptr2 = (($vararg_buffer) + 8|0); - HEAP32[$vararg_ptr2>>2] = $13; - $vararg_ptr3 = (($vararg_buffer) + 12|0); - HEAP32[$vararg_ptr3>>2] = $14; - $vararg_ptr4 = (($vararg_buffer) + 16|0); - HEAP32[$vararg_ptr4>>2] = $15; - _sqlite3_log($10,37376,$vararg_buffer); - $16 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($16|0); -} -function _posixOpen($zFile,$flags,$mode) { - $zFile = $zFile|0; - $flags = $flags|0; - $mode = $mode|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $vararg_buffer = sp; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - HEAP32[$0>>2] = $zFile; - HEAP32[$1>>2] = $flags; - HEAP32[$2>>2] = $mode; - $3 = HEAP32[$0>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer>>2] = $5; - $6 = (_open(($3|0),($4|0),($vararg_buffer|0))|0); - STACKTOP = sp;return ($6|0); -} -function _openDirectory($zFilename,$pFd) { - $zFilename = $zFilename|0; - $pFd = $pFd|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $fd = 0, $ii = 0, $vararg_buffer = 0, $zDirname = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 544|0; - $vararg_buffer = sp; - $0 = sp + 16|0; - $1 = sp + 12|0; - $ii = sp + 8|0; - $fd = sp + 4|0; - $zDirname = sp + 20|0; - HEAP32[$0>>2] = $zFilename; - HEAP32[$1>>2] = $pFd; - HEAP32[$fd>>2] = -1; - $2 = HEAP32[$0>>2]|0; - HEAP32[$vararg_buffer>>2] = $2; - (_sqlite3_snprintf(512,$zDirname,1456,$vararg_buffer)|0); - $3 = (_strlen(($zDirname|0))|0); - HEAP32[$ii>>2] = $3; - while(1) { - $4 = HEAP32[$ii>>2]|0; - $5 = ($4|0)>(1); - if (!($5)) { - break; - } - $6 = HEAP32[$ii>>2]|0; - $7 = (($zDirname) + ($6)|0); - $8 = HEAP8[$7>>0]|0; - $9 = $8 << 24 >> 24; - $10 = ($9|0)!=(47); - if (!($10)) { - break; - } - $11 = HEAP32[$ii>>2]|0; - $12 = (($11) + -1)|0; - HEAP32[$ii>>2] = $12; - } - $13 = HEAP32[$ii>>2]|0; - $14 = ($13|0)>(0); - if ($14) { - $15 = HEAP32[$ii>>2]|0; - $16 = (($zDirname) + ($15)|0); - HEAP8[$16>>0] = 0; - $17 = (_robust_open($zDirname,0,0)|0); - HEAP32[$fd>>2] = $17; - } - $18 = HEAP32[$fd>>2]|0; - $19 = HEAP32[$1>>2]|0; - HEAP32[$19>>2] = $18; - $20 = HEAP32[$fd>>2]|0; - $21 = ($20|0)>=(0); - if ($21) { - $24 = 0; - STACKTOP = sp;return ($24|0); - } - $22 = (_sqlite3CantopenError(27442)|0); - $23 = (_unixLogErrorAtLine($22,37408,$zDirname,27442)|0); - $24 = $23; - STACKTOP = sp;return ($24|0); -} -function _posixFchown($fd,$uid,$gid) { - $fd = $fd|0; - $uid = $uid|0; - $gid = $gid|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$0>>2] = $fd; - HEAP32[$1>>2] = $uid; - HEAP32[$2>>2] = $gid; - $3 = (_geteuid()|0); - $4 = ($3|0)!=(0); - if ($4) { - $9 = 0; - STACKTOP = sp;return ($9|0); - } - $5 = HEAP32[$0>>2]|0; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$2>>2]|0; - $8 = (_fchown(($5|0),($6|0),($7|0))|0); - $9 = $8; - STACKTOP = sp;return ($9|0); -} -function _unixGetpagesize() { - var $0 = 0, label = 0, sp = 0; - sp = STACKTOP; - $0 = (_sysconf(30)|0); - STACKTOP = sp;return ($0|0); -} -function _robust_open($z,$f,$m) { - $z = $z|0; - $f = $f|0; - $m = $m|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $fd = 0, $m2 = 0, $statbuf = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 112|0; - $vararg_buffer = sp; - $0 = sp + 100|0; - $1 = sp + 96|0; - $2 = sp + 92|0; - $fd = sp + 88|0; - $m2 = sp + 84|0; - $statbuf = sp + 8|0; - HEAP32[$0>>2] = $z; - HEAP32[$1>>2] = $f; - HEAP32[$2>>2] = $m; - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0); - $5 = HEAP32[$2>>2]|0; - $6 = $4 ? $5 : 420; - HEAP32[$m2>>2] = $6; - while(1) { - $7 = HEAP32[((37064 + 4|0))>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = HEAP32[$1>>2]|0; - $10 = $9 | 524288; - $11 = HEAP32[$m2>>2]|0; - $12 = (FUNCTION_TABLE_iiii[$7 & 15]($8,$10,$11)|0); - HEAP32[$fd>>2] = $12; - $13 = HEAP32[$fd>>2]|0; - $14 = ($13|0)<(0); - if ($14) { - $15 = (___errno_location()|0); - $16 = HEAP32[$15>>2]|0; - $17 = ($16|0)==(4); - if ($17) { - continue; - } else { - break; - } - } - $18 = HEAP32[$fd>>2]|0; - $19 = ($18|0)>=(3); - if ($19) { - break; - } - $20 = HEAP32[((37064 + 16|0))>>2]|0; - $21 = HEAP32[$fd>>2]|0; - (FUNCTION_TABLE_ii[$20 & 31]($21)|0); - $22 = HEAP32[$0>>2]|0; - $23 = HEAP32[$fd>>2]|0; - HEAP32[$vararg_buffer>>2] = $22; - $vararg_ptr1 = (($vararg_buffer) + 4|0); - HEAP32[$vararg_ptr1>>2] = $23; - _sqlite3_log(28,37632,$vararg_buffer); - HEAP32[$fd>>2] = -1; - $24 = HEAP32[((37064 + 4|0))>>2]|0; - $25 = HEAP32[$1>>2]|0; - $26 = HEAP32[$2>>2]|0; - $27 = (FUNCTION_TABLE_iiii[$24 & 15](37680,$25,$26)|0); - $28 = ($27|0)<(0); - if ($28) { - break; - } - } - $29 = HEAP32[$fd>>2]|0; - $30 = ($29|0)>=(0); - if (!($30)) { - $48 = HEAP32[$fd>>2]|0; - STACKTOP = sp;return ($48|0); - } - $31 = HEAP32[$2>>2]|0; - $32 = ($31|0)!=(0); - if (!($32)) { - $48 = HEAP32[$fd>>2]|0; - STACKTOP = sp;return ($48|0); - } - $33 = HEAP32[((37064 + 64|0))>>2]|0; - $34 = HEAP32[$fd>>2]|0; - $35 = (FUNCTION_TABLE_iii[$33 & 63]($34,$statbuf)|0); - $36 = ($35|0)==(0); - if (!($36)) { - $48 = HEAP32[$fd>>2]|0; - STACKTOP = sp;return ($48|0); - } - $37 = (($statbuf) + 36|0); - $38 = HEAP32[$37>>2]|0; - $39 = ($38|0)==(0); - if (!($39)) { - $48 = HEAP32[$fd>>2]|0; - STACKTOP = sp;return ($48|0); - } - $40 = (($statbuf) + 12|0); - $41 = HEAP32[$40>>2]|0; - $42 = $41 & 511; - $43 = HEAP32[$2>>2]|0; - $44 = ($42|0)!=($43|0); - if (!($44)) { - $48 = HEAP32[$fd>>2]|0; - STACKTOP = sp;return ($48|0); - } - $45 = HEAP32[((37064 + 172|0))>>2]|0; - $46 = HEAP32[$fd>>2]|0; - $47 = HEAP32[$2>>2]|0; - (FUNCTION_TABLE_iii[$45 & 63]($46,$47)|0); - $48 = HEAP32[$fd>>2]|0; - STACKTOP = sp;return ($48|0); -} -function _unixShmSystemLock($pShmNode,$lockType,$ofst,$n) { - $pShmNode = $pShmNode|0; - $lockType = $lockType|0; - $ofst = $ofst|0; - $n = $n|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $f = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 36|0; - $1 = sp + 32|0; - $2 = sp + 28|0; - $3 = sp + 24|0; - $f = sp + 8|0; - $rc = sp + 4|0; - HEAP32[$0>>2] = $pShmNode; - HEAP32[$1>>2] = $lockType; - HEAP32[$2>>2] = $ofst; - HEAP32[$3>>2] = $n; - HEAP32[$rc>>2] = 0; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 12|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)>=(0); - if (!($7)) { - $23 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($23|0); - } - ;HEAP32[$f+0>>2]=0|0;HEAP32[$f+4>>2]=0|0;HEAP32[$f+8>>2]=0|0;HEAP32[$f+12>>2]=0|0; - $8 = HEAP32[$1>>2]|0; - $9 = $8&65535; - HEAP16[$f>>1] = $9; - $10 = (($f) + 2|0); - HEAP16[$10>>1] = 0; - $11 = HEAP32[$2>>2]|0; - $12 = (($f) + 4|0); - HEAP32[$12>>2] = $11; - $13 = HEAP32[$3>>2]|0; - $14 = (($f) + 8|0); - HEAP32[$14>>2] = $13; - $15 = HEAP32[((37064 + 88|0))>>2]|0; - $16 = HEAP32[$0>>2]|0; - $17 = (($16) + 12|0); - $18 = HEAP32[$17>>2]|0; - HEAP32[$vararg_buffer>>2] = $f; - $19 = (FUNCTION_TABLE_iiii[$15 & 15]($18,13,$vararg_buffer)|0); - HEAP32[$rc>>2] = $19; - $20 = HEAP32[$rc>>2]|0; - $21 = ($20|0)!=(-1); - $22 = $21 ? 0 : 5; - HEAP32[$rc>>2] = $22; - $23 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($23|0); -} -function _unixOpenSharedMemory($pDbFd) { - $pDbFd = $pDbFd|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; - var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; - var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; - var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; - var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $nShmFilename = 0, $openFlags = 0, $p = 0, $pInode = 0; - var $pShmNode = 0, $rc = 0, $sStat = 0, $vararg_buffer = 0, $zShmFilename = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $vararg_buffer = sp; - $0 = sp + 112|0; - $1 = sp + 108|0; - $p = sp + 104|0; - $pShmNode = sp + 100|0; - $rc = sp + 96|0; - $pInode = sp + 92|0; - $zShmFilename = sp + 88|0; - $nShmFilename = sp + 84|0; - $sStat = sp + 8|0; - $openFlags = sp + 4|0; - HEAP32[$1>>2] = $pDbFd; - HEAP32[$p>>2] = 0; - $2 = (_sqlite3_malloc(16)|0); - HEAP32[$p>>2] = $2; - $3 = HEAP32[$p>>2]|0; - $4 = ($3|0)==(0|0); - if ($4) { - HEAP32[$0>>2] = 7; - $135 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($135|0); - } - $5 = HEAP32[$p>>2]|0; - ;HEAP32[$5+0>>2]=0|0;HEAP32[$5+4>>2]=0|0;HEAP32[$5+8>>2]=0|0;HEAP32[$5+12>>2]=0|0; - _unixEnterMutex(); - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 8|0); - $8 = HEAP32[$7>>2]|0; - HEAP32[$pInode>>2] = $8; - $9 = HEAP32[$pInode>>2]|0; - $10 = (($9) + 20|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$pShmNode>>2] = $11; - $12 = HEAP32[$pShmNode>>2]|0; - $13 = ($12|0)==(0|0); - L5: do { - if ($13) { - $14 = HEAP32[((37064 + 64|0))>>2]|0; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 12|0); - $17 = HEAP32[$16>>2]|0; - $18 = (FUNCTION_TABLE_iii[$14 & 63]($17,$sStat)|0); - $19 = ($18|0)!=(0); - if ($19) { - $20 = HEAP32[$pInode>>2]|0; - $21 = (($20) + 13|0); - $22 = HEAP8[$21>>0]|0; - $23 = $22&255; - $24 = ($23|0)==(0); - if ($24) { - HEAP32[$rc>>2] = 1802; - } else { - label = 7; - } - } else { - label = 7; - } - do { - if ((label|0) == 7) { - $25 = HEAP32[$1>>2]|0; - $26 = (($25) + 32|0); - $27 = HEAP32[$26>>2]|0; - $28 = (_strlen(($27|0))|0); - $29 = (6 + ($28))|0; - HEAP32[$nShmFilename>>2] = $29; - $30 = HEAP32[$nShmFilename>>2]|0; - $31 = (36 + ($30))|0; - $32 = (_sqlite3_malloc($31)|0); - HEAP32[$pShmNode>>2] = $32; - $33 = HEAP32[$pShmNode>>2]|0; - $34 = ($33|0)==(0|0); - if ($34) { - HEAP32[$rc>>2] = 7; - break; - } - $35 = HEAP32[$pShmNode>>2]|0; - $36 = HEAP32[$nShmFilename>>2]|0; - $37 = (36 + ($36))|0; - _memset(($35|0),0,($37|0))|0; - $38 = HEAP32[$pShmNode>>2]|0; - $39 = (($38) + 36|0); - $40 = HEAP32[$pShmNode>>2]|0; - $41 = (($40) + 8|0); - HEAP32[$41>>2] = $39; - HEAP32[$zShmFilename>>2] = $39; - $42 = HEAP32[$nShmFilename>>2]|0; - $43 = HEAP32[$zShmFilename>>2]|0; - $44 = HEAP32[$1>>2]|0; - $45 = (($44) + 32|0); - $46 = HEAP32[$45>>2]|0; - HEAP32[$vararg_buffer>>2] = $46; - (_sqlite3_snprintf($42,$43,37696,$vararg_buffer)|0); - $47 = HEAP32[$pShmNode>>2]|0; - $48 = (($47) + 12|0); - HEAP32[$48>>2] = -1; - $49 = HEAP32[$pShmNode>>2]|0; - $50 = HEAP32[$1>>2]|0; - $51 = (($50) + 8|0); - $52 = HEAP32[$51>>2]|0; - $53 = (($52) + 20|0); - HEAP32[$53>>2] = $49; - $54 = HEAP32[$1>>2]|0; - $55 = (($54) + 8|0); - $56 = HEAP32[$55>>2]|0; - $57 = HEAP32[$pShmNode>>2]|0; - HEAP32[$57>>2] = $56; - $58 = HEAP32[$pShmNode>>2]|0; - $59 = (($58) + 4|0); - HEAP32[$59>>2] = (8); - $60 = HEAP32[$pShmNode>>2]|0; - $61 = (($60) + 4|0); - $62 = HEAP32[$61>>2]|0; - $63 = ($62|0)==(0|0); - if ($63) { - HEAP32[$rc>>2] = 7; - break; - } - $64 = HEAP32[$pInode>>2]|0; - $65 = (($64) + 13|0); - $66 = HEAP8[$65>>0]|0; - $67 = $66&255; - $68 = ($67|0)==(0); - if (!($68)) { - break L5; - } - HEAP32[$openFlags>>2] = 66; - $69 = HEAP32[$1>>2]|0; - $70 = (($69) + 32|0); - $71 = HEAP32[$70>>2]|0; - $72 = (_sqlite3_uri_boolean($71,37704,0)|0); - $73 = ($72|0)!=(0); - if ($73) { - HEAP32[$openFlags>>2] = 0; - $74 = HEAP32[$pShmNode>>2]|0; - $75 = (($74) + 22|0); - HEAP8[$75>>0] = 1; - } - $76 = HEAP32[$zShmFilename>>2]|0; - $77 = HEAP32[$openFlags>>2]|0; - $78 = (($sStat) + 12|0); - $79 = HEAP32[$78>>2]|0; - $80 = $79 & 511; - $81 = (_robust_open($76,$77,$80)|0); - $82 = HEAP32[$pShmNode>>2]|0; - $83 = (($82) + 12|0); - HEAP32[$83>>2] = $81; - $84 = HEAP32[$pShmNode>>2]|0; - $85 = (($84) + 12|0); - $86 = HEAP32[$85>>2]|0; - $87 = ($86|0)<(0); - if ($87) { - $88 = (_sqlite3CantopenError(28206)|0); - $89 = HEAP32[$zShmFilename>>2]|0; - $90 = (_unixLogErrorAtLine($88,37408,$89,28206)|0); - HEAP32[$rc>>2] = $90; - break; - } - $91 = HEAP32[((37064 + 244|0))>>2]|0; - $92 = HEAP32[$pShmNode>>2]|0; - $93 = (($92) + 12|0); - $94 = HEAP32[$93>>2]|0; - $95 = (($sStat) + 20|0); - $96 = HEAP32[$95>>2]|0; - $97 = (($sStat) + 24|0); - $98 = HEAP32[$97>>2]|0; - (FUNCTION_TABLE_iiii[$91 & 15]($94,$96,$98)|0); - HEAP32[$rc>>2] = 0; - $99 = HEAP32[$pShmNode>>2]|0; - $100 = (_unixShmSystemLock($99,1,128,1)|0); - $101 = ($100|0)==(0); - if ($101) { - $102 = HEAP32[$pShmNode>>2]|0; - $103 = (($102) + 12|0); - $104 = HEAP32[$103>>2]|0; - $105 = (_robust_ftruncate($104,0,0)|0); - $106 = ($105|0)!=(0); - if ($106) { - $107 = HEAP32[$zShmFilename>>2]|0; - $108 = (_unixLogErrorAtLine(4618,37440,$107,28222)|0); - HEAP32[$rc>>2] = $108; - } - } - $109 = HEAP32[$rc>>2]|0; - $110 = ($109|0)==(0); - if ($110) { - $111 = HEAP32[$pShmNode>>2]|0; - $112 = (_unixShmSystemLock($111,0,128,1)|0); - HEAP32[$rc>>2] = $112; - } - $113 = HEAP32[$rc>>2]|0; - $114 = ($113|0)!=(0); - if (!($114)) { - break L5; - } - } - } while(0); - $132 = HEAP32[$1>>2]|0; - _unixShmPurge($132); - $133 = HEAP32[$p>>2]|0; - _sqlite3_free($133); - _unixLeaveMutex(); - $134 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $134; - $135 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($135|0); - } - } while(0); - $115 = HEAP32[$pShmNode>>2]|0; - $116 = HEAP32[$p>>2]|0; - HEAP32[$116>>2] = $115; - $117 = HEAP32[$pShmNode>>2]|0; - $118 = (($117) + 28|0); - $119 = HEAP32[$118>>2]|0; - $120 = (($119) + 1)|0; - HEAP32[$118>>2] = $120; - $121 = HEAP32[$p>>2]|0; - $122 = HEAP32[$1>>2]|0; - $123 = (($122) + 36|0); - HEAP32[$123>>2] = $121; - _unixLeaveMutex(); - $124 = HEAP32[$pShmNode>>2]|0; - $125 = (($124) + 32|0); - $126 = HEAP32[$125>>2]|0; - $127 = HEAP32[$p>>2]|0; - $128 = (($127) + 4|0); - HEAP32[$128>>2] = $126; - $129 = HEAP32[$p>>2]|0; - $130 = HEAP32[$pShmNode>>2]|0; - $131 = (($130) + 32|0); - HEAP32[$131>>2] = $129; - HEAP32[$0>>2] = 0; - $135 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($135|0); -} -function _seekAndWriteFd($fd,$0,$1,$pBuf,$nBuf,$piErrno) { - $fd = $fd|0; - $0 = $0|0; - $1 = $1|0; - $pBuf = $pBuf|0; - $nBuf = $nBuf|0; - $piErrno = $piErrno|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; - var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; - var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; - var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $8 = 0, $9 = 0, $iSeek = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $4 = sp + 8|0; - $5 = sp + 28|0; - $6 = sp + 24|0; - $7 = sp + 20|0; - $rc = sp + 16|0; - $iSeek = sp; - HEAP32[$3>>2] = $fd; - $8 = $4; - $9 = $8; - HEAP32[$9>>2] = $0; - $10 = (($8) + 4)|0; - $11 = $10; - HEAP32[$11>>2] = $1; - HEAP32[$5>>2] = $pBuf; - HEAP32[$6>>2] = $nBuf; - HEAP32[$7>>2] = $piErrno; - HEAP32[$rc>>2] = 0; - $12 = HEAP32[$6>>2]|0; - $13 = $12 & 131071; - HEAP32[$6>>2] = $13; - while(1) { - $14 = HEAP32[$3>>2]|0; - $15 = $4; - $16 = $15; - $17 = HEAP32[$16>>2]|0; - $18 = (($15) + 4)|0; - $19 = $18; - $20 = HEAP32[$19>>2]|0; - $21 = (_lseek(($14|0),($17|0),0)|0); - $22 = ($21|0)<(0); - $23 = $22 << 31 >> 31; - $24 = $iSeek; - $25 = $24; - HEAP32[$25>>2] = $21; - $26 = (($24) + 4)|0; - $27 = $26; - HEAP32[$27>>2] = $23; - $28 = $iSeek; - $29 = $28; - $30 = HEAP32[$29>>2]|0; - $31 = (($28) + 4)|0; - $32 = $31; - $33 = HEAP32[$32>>2]|0; - $34 = $4; - $35 = $34; - $36 = HEAP32[$35>>2]|0; - $37 = (($34) + 4)|0; - $38 = $37; - $39 = HEAP32[$38>>2]|0; - $40 = ($30|0)!=($36|0); - $41 = ($33|0)!=($39|0); - $42 = $40 | $41; - if ($42) { - break; - } - $58 = HEAP32[((37064 + 136|0))>>2]|0; - $59 = HEAP32[$3>>2]|0; - $60 = HEAP32[$5>>2]|0; - $61 = HEAP32[$6>>2]|0; - $62 = (FUNCTION_TABLE_iiii[$58 & 15]($59,$60,$61)|0); - HEAP32[$rc>>2] = $62; - $63 = HEAP32[$rc>>2]|0; - $64 = ($63|0)<(0); - if (!($64)) { - label = 10; - break; - } - $65 = (___errno_location()|0); - $66 = HEAP32[$65>>2]|0; - $67 = ($66|0)==(4); - if (!($67)) { - label = 10; - break; - } - } - if ((label|0) == 10) { - $68 = HEAP32[$rc>>2]|0; - $69 = ($68|0)<(0); - if ($69) { - $70 = HEAP32[$7>>2]|0; - $71 = ($70|0)!=(0|0); - if ($71) { - $72 = (___errno_location()|0); - $73 = HEAP32[$72>>2]|0; - $74 = HEAP32[$7>>2]|0; - HEAP32[$74>>2] = $73; - } - } - $75 = HEAP32[$rc>>2]|0; - HEAP32[$2>>2] = $75; - $76 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($76|0); - } - $43 = HEAP32[$7>>2]|0; - $44 = ($43|0)!=(0|0); - if ($44) { - $45 = $iSeek; - $46 = $45; - $47 = HEAP32[$46>>2]|0; - $48 = (($45) + 4)|0; - $49 = $48; - $50 = HEAP32[$49>>2]|0; - $51 = ($47|0)==(-1); - $52 = ($50|0)==(-1); - $53 = $51 & $52; - if ($53) { - $54 = (___errno_location()|0); - $55 = HEAP32[$54>>2]|0; - $57 = $55; - } else { - $57 = 0; - } - $56 = HEAP32[$7>>2]|0; - HEAP32[$56>>2] = $57; - } - HEAP32[$2>>2] = -1; - $76 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($76|0); -} -function _robust_ftruncate($h,$0,$1) { - $h = $h|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $2 = sp + 12|0; - $3 = sp; - $rc = sp + 8|0; - HEAP32[$2>>2] = $h; - $4 = $3; - $5 = $4; - HEAP32[$5>>2] = $0; - $6 = (($4) + 4)|0; - $7 = $6; - HEAP32[$7>>2] = $1; - while(1) { - $8 = HEAP32[((37064 + 76|0))>>2]|0; - $9 = HEAP32[$2>>2]|0; - $10 = $3; - $11 = $10; - $12 = HEAP32[$11>>2]|0; - $13 = (($10) + 4)|0; - $14 = $13; - $15 = HEAP32[$14>>2]|0; - $16 = (FUNCTION_TABLE_iii[$8 & 63]($9,$12)|0); - HEAP32[$rc>>2] = $16; - $17 = HEAP32[$rc>>2]|0; - $18 = ($17|0)<(0); - if (!($18)) { - label = 4; - break; - } - $19 = (___errno_location()|0); - $20 = HEAP32[$19>>2]|0; - $21 = ($20|0)==(4); - if (!($21)) { - label = 4; - break; - } - } - if ((label|0) == 4) { - $22 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($22|0); - } - return 0|0; -} -function _fcntlSizeHint($pFile,$0,$1) { - $pFile = $pFile|0; - $0 = $0|0; - $1 = $1|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; - var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; - var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; - var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; - var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; - var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; - var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; - var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $buf = 0, $iWrite = 0, $nBlk = 0, $nSize = 0, $nWrite = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 128|0; - $2 = sp + 112|0; - $3 = sp + 108|0; - $4 = sp + 16|0; - $nSize = sp + 8|0; - $buf = sp + 32|0; - $nBlk = sp + 28|0; - $iWrite = sp; - $nWrite = sp + 24|0; - HEAP32[$3>>2] = $pFile; - $5 = $4; - $6 = $5; - HEAP32[$6>>2] = $0; - $7 = (($5) + 4)|0; - $8 = $7; - HEAP32[$8>>2] = $1; - $9 = HEAP32[$3>>2]|0; - $10 = (($9) + 40|0); - $11 = HEAP32[$10>>2]|0; - $12 = ($11|0)>(0); - L1: do { - if ($12) { - $13 = HEAP32[((37064 + 64|0))>>2]|0; - $14 = HEAP32[$3>>2]|0; - $15 = (($14) + 12|0); - $16 = HEAP32[$15>>2]|0; - $17 = (FUNCTION_TABLE_iii[$13 & 63]($16,$buf)|0); - $18 = ($17|0)!=(0); - if ($18) { - HEAP32[$2>>2] = 1802; - $147 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($147|0); - } - $19 = $4; - $20 = $19; - $21 = HEAP32[$20>>2]|0; - $22 = (($19) + 4)|0; - $23 = $22; - $24 = HEAP32[$23>>2]|0; - $25 = HEAP32[$3>>2]|0; - $26 = (($25) + 40|0); - $27 = HEAP32[$26>>2]|0; - $28 = ($27|0)<(0); - $29 = $28 << 31 >> 31; - $30 = (_i64Add(($21|0),($24|0),($27|0),($29|0))|0); - $31 = tempRet0; - $32 = (_i64Subtract(($30|0),($31|0),1,0)|0); - $33 = tempRet0; - $34 = HEAP32[$3>>2]|0; - $35 = (($34) + 40|0); - $36 = HEAP32[$35>>2]|0; - $37 = ($36|0)<(0); - $38 = $37 << 31 >> 31; - $39 = (___divdi3(($32|0),($33|0),($36|0),($38|0))|0); - $40 = tempRet0; - $41 = HEAP32[$3>>2]|0; - $42 = (($41) + 40|0); - $43 = HEAP32[$42>>2]|0; - $44 = ($43|0)<(0); - $45 = $44 << 31 >> 31; - $46 = (___muldi3(($39|0),($40|0),($43|0),($45|0))|0); - $47 = tempRet0; - $48 = $nSize; - $49 = $48; - HEAP32[$49>>2] = $46; - $50 = (($48) + 4)|0; - $51 = $50; - HEAP32[$51>>2] = $47; - $52 = $nSize; - $53 = $52; - $54 = HEAP32[$53>>2]|0; - $55 = (($52) + 4)|0; - $56 = $55; - $57 = HEAP32[$56>>2]|0; - $58 = (($buf) + 36|0); - $59 = HEAP32[$58>>2]|0; - $60 = ($59|0)<(0); - $61 = $60 << 31 >> 31; - $62 = ($57|0)>($61|0); - $63 = ($57|0)==($61|0); - $64 = ($54>>>0)>($59>>>0); - $65 = $63 & $64; - $66 = $62 | $65; - if ($66) { - $67 = (($buf) + 40|0); - $68 = HEAP32[$67>>2]|0; - HEAP32[$nBlk>>2] = $68; - $69 = HEAP32[$3>>2]|0; - $70 = (($69) + 12|0); - $71 = HEAP32[$70>>2]|0; - $72 = $nSize; - $73 = $72; - $74 = HEAP32[$73>>2]|0; - $75 = (($72) + 4)|0; - $76 = $75; - $77 = HEAP32[$76>>2]|0; - $78 = (_robust_ftruncate($71,$74,$77)|0); - $79 = ($78|0)!=(0); - if ($79) { - $80 = (___errno_location()|0); - $81 = HEAP32[$80>>2]|0; - $82 = HEAP32[$3>>2]|0; - $83 = (($82) + 20|0); - HEAP32[$83>>2] = $81; - $84 = HEAP32[$3>>2]|0; - $85 = (($84) + 32|0); - $86 = HEAP32[$85>>2]|0; - $87 = (_unixLogErrorAtLine(1546,37440,$86,27628)|0); - HEAP32[$2>>2] = $87; - $147 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($147|0); - } - $88 = (($buf) + 36|0); - $89 = HEAP32[$88>>2]|0; - $90 = HEAP32[$nBlk>>2]|0; - $91 = $90<<1; - $92 = (($89) + ($91))|0; - $93 = (($92) - 1)|0; - $94 = HEAP32[$nBlk>>2]|0; - $95 = (($93|0) / ($94|0))&-1; - $96 = HEAP32[$nBlk>>2]|0; - $97 = Math_imul($95, $96)|0; - $98 = (($97) - 1)|0; - $99 = ($98|0)<(0); - $100 = $99 << 31 >> 31; - $101 = $iWrite; - $102 = $101; - HEAP32[$102>>2] = $98; - $103 = (($101) + 4)|0; - $104 = $103; - HEAP32[$104>>2] = $100; - while(1) { - $105 = $iWrite; - $106 = $105; - $107 = HEAP32[$106>>2]|0; - $108 = (($105) + 4)|0; - $109 = $108; - $110 = HEAP32[$109>>2]|0; - $111 = $nSize; - $112 = $111; - $113 = HEAP32[$112>>2]|0; - $114 = (($111) + 4)|0; - $115 = $114; - $116 = HEAP32[$115>>2]|0; - $117 = ($110|0)<($116|0); - $118 = ($110|0)==($116|0); - $119 = ($107>>>0)<($113>>>0); - $120 = $118 & $119; - $121 = $117 | $120; - if (!($121)) { - break L1; - } - $122 = HEAP32[$3>>2]|0; - $123 = $iWrite; - $124 = $123; - $125 = HEAP32[$124>>2]|0; - $126 = (($123) + 4)|0; - $127 = $126; - $128 = HEAP32[$127>>2]|0; - $129 = (_seekAndWrite($122,$125,$128,1472,1)|0); - HEAP32[$nWrite>>2] = $129; - $130 = HEAP32[$nWrite>>2]|0; - $131 = ($130|0)!=(1); - if ($131) { - break; - } - $132 = HEAP32[$nBlk>>2]|0; - $133 = ($132|0)<(0); - $134 = $133 << 31 >> 31; - $135 = $iWrite; - $136 = $135; - $137 = HEAP32[$136>>2]|0; - $138 = (($135) + 4)|0; - $139 = $138; - $140 = HEAP32[$139>>2]|0; - $141 = (_i64Add(($137|0),($140|0),($132|0),($134|0))|0); - $142 = tempRet0; - $143 = $iWrite; - $144 = $143; - HEAP32[$144>>2] = $141; - $145 = (($143) + 4)|0; - $146 = $145; - HEAP32[$146>>2] = $142; - } - HEAP32[$2>>2] = 778; - $147 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($147|0); - } - } - } while(0); - HEAP32[$2>>2] = 0; - $147 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($147|0); -} -function _unixModeBit($pFile,$mask,$pArg) { - $pFile = $pFile|0; - $mask = $mask|0; - $pArg = $pArg|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp + 8|0; - $2 = sp; - HEAP32[$0>>2] = $pFile; - HEAP8[$1>>0] = $mask; - HEAP32[$2>>2] = $pArg; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)<(0); - if ($5) { - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 18|0); - $8 = HEAP16[$7>>1]|0; - $9 = $8&65535; - $10 = HEAP8[$1>>0]|0; - $11 = $10&255; - $12 = $9 & $11; - $13 = ($12|0)!=(0); - $14 = $13&1; - $15 = HEAP32[$2>>2]|0; - HEAP32[$15>>2] = $14; - STACKTOP = sp;return; - } - $16 = HEAP32[$2>>2]|0; - $17 = HEAP32[$16>>2]|0; - $18 = ($17|0)==(0); - $19 = HEAP8[$1>>0]|0; - $20 = $19&255; - if ($18) { - $21 = $20 ^ -1; - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 18|0); - $24 = HEAP16[$23>>1]|0; - $25 = $24&65535; - $26 = $25 & $21; - $27 = $26&65535; - HEAP16[$23>>1] = $27; - STACKTOP = sp;return; - } else { - $28 = HEAP32[$0>>2]|0; - $29 = (($28) + 18|0); - $30 = HEAP16[$29>>1]|0; - $31 = $30&65535; - $32 = $31 | $20; - $33 = $32&65535; - HEAP16[$29>>1] = $33; - STACKTOP = sp;return; - } -} -function _unixGetTempname($nBuf,$zBuf) { - $nBuf = $nBuf|0; - $zBuf = $zBuf|0; - var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; - var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; - var $44 = 0, $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $j = 0, $vararg_buffer = 0, $zDir = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $vararg_buffer = sp; - $0 = sp + 24|0; - $1 = sp + 20|0; - $2 = sp + 16|0; - $i = sp + 12|0; - $j = sp + 8|0; - $zDir = sp + 4|0; - HEAP32[$1>>2] = $nBuf; - HEAP32[$2>>2] = $zBuf; - $3 = (_unixTempFileDir()|0); - HEAP32[$zDir>>2] = $3; - $4 = HEAP32[$zDir>>2]|0; - $5 = ($4|0)==(0|0); - $$ = $5 ? 19024 : $3; - HEAP32[$zDir>>2] = $$; - $6 = HEAP32[$zDir>>2]|0; - $7 = (_strlen(($6|0))|0); - $8 = (($7) + 7)|0; - $9 = (($8) + 18)|0; - $10 = HEAP32[$1>>2]|0; - $11 = ($9>>>0)>=($10>>>0); - if ($11) { - HEAP32[$0>>2] = 1; - $46 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($46|0); - } - while(1) { - $12 = HEAP32[$1>>2]|0; - $13 = (($12) - 18)|0; - $14 = HEAP32[$2>>2]|0; - $15 = HEAP32[$zDir>>2]|0; - HEAP32[$vararg_buffer>>2] = $15; - (_sqlite3_snprintf($13,$14,37784,$vararg_buffer)|0); - $16 = HEAP32[$2>>2]|0; - $17 = (_strlen(($16|0))|0); - HEAP32[$j>>2] = $17; - $18 = HEAP32[$j>>2]|0; - $19 = HEAP32[$2>>2]|0; - $20 = (($19) + ($18)|0); - _sqlite3_randomness(15,$20); - HEAP32[$i>>2] = 0; - while(1) { - $21 = HEAP32[$i>>2]|0; - $22 = ($21>>>0)<(15); - $23 = HEAP32[$j>>2]|0; - $24 = HEAP32[$2>>2]|0; - $25 = (($24) + ($23)|0); - if (!($22)) { - break; - } - $26 = HEAP8[$25>>0]|0; - $27 = $26&255; - $28 = (($27>>>0) % 62)&-1; - $29 = (37720 + ($28)|0); - $30 = HEAP8[$29>>0]|0; - $31 = HEAP32[$j>>2]|0; - $32 = HEAP32[$2>>2]|0; - $33 = (($32) + ($31)|0); - HEAP8[$33>>0] = $30; - $34 = HEAP32[$i>>2]|0; - $35 = (($34) + 1)|0; - HEAP32[$i>>2] = $35; - $36 = HEAP32[$j>>2]|0; - $37 = (($36) + 1)|0; - HEAP32[$j>>2] = $37; - } - HEAP8[$25>>0] = 0; - $38 = HEAP32[$j>>2]|0; - $39 = (($38) + 1)|0; - $40 = HEAP32[$2>>2]|0; - $41 = (($40) + ($39)|0); - HEAP8[$41>>0] = 0; - $42 = HEAP32[((37064 + 28|0))>>2]|0; - $43 = HEAP32[$2>>2]|0; - $44 = (FUNCTION_TABLE_iii[$42 & 63]($43,0)|0); - $45 = ($44|0)==(0); - if (!($45)) { - break; - } - } - HEAP32[$0>>2] = 0; - $46 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($46|0); -} -function _fileHasMoved($pFile) { - $pFile = $pFile|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; - var $9 = 0, $buf = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 80|0; - $0 = sp + 76|0; - $buf = sp; - HEAP32[$0>>2] = $pFile; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP32[$2>>2]|0; - $4 = ($3|0)!=(0|0); - if (!($4)) { - $20 = 0; - $19 = $20&1; - STACKTOP = sp;return ($19|0); - } - $5 = HEAP32[((37064 + 52|0))>>2]|0; - $6 = HEAP32[$0>>2]|0; - $7 = (($6) + 32|0); - $8 = HEAP32[$7>>2]|0; - $9 = (FUNCTION_TABLE_iii[$5 & 63]($8,$buf)|0); - $10 = ($9|0)!=(0); - if ($10) { - $20 = 1; - $19 = $20&1; - STACKTOP = sp;return ($19|0); - } - $11 = (($buf) + 72|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$0>>2]|0; - $14 = (($13) + 8|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($15) + 4|0); - $17 = HEAP32[$16>>2]|0; - $18 = ($12|0)!=($17|0); - $20 = $18; - $19 = $20&1; - STACKTOP = sp;return ($19|0); -} -function _unixTempFileDir() { - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $buf = 0, $i = 0, $zDir = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $i = sp + 80|0; - $buf = sp + 4|0; - $zDir = sp; - HEAP32[$zDir>>2] = 0; - $0 = HEAP32[1568>>2]|0; - HEAP32[37800>>2] = $0; - $1 = HEAP32[((37800 + 4|0))>>2]|0; - $2 = ($1|0)!=(0|0); - if (!($2)) { - $3 = (_getenv((37872|0))|0); - HEAP32[((37800 + 4|0))>>2] = $3; - } - $4 = HEAP32[((37800 + 8|0))>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - $6 = (_getenv((37888|0))|0); - HEAP32[((37800 + 8|0))>>2] = $6; - } - HEAP32[$i>>2] = 0; - while(1) { - $7 = HEAP32[$i>>2]|0; - $8 = ($7>>>0)<(7); - if (!($8)) { - label = 12; - break; - } - $9 = HEAP32[$zDir>>2]|0; - $10 = ($9|0)==(0|0); - if (!($10)) { - $11 = HEAP32[((37064 + 52|0))>>2]|0; - $12 = HEAP32[$zDir>>2]|0; - $13 = (FUNCTION_TABLE_iii[$11 & 63]($12,$buf)|0); - $14 = ($13|0)!=(0); - if (!($14)) { - $15 = (($buf) + 12|0); - $16 = HEAP32[$15>>2]|0; - $17 = $16 & 61440; - $18 = ($17|0)==(16384); - if ($18) { - $19 = HEAP32[((37064 + 28|0))>>2]|0; - $20 = HEAP32[$zDir>>2]|0; - $21 = (FUNCTION_TABLE_iii[$19 & 63]($20,7)|0); - $22 = ($21|0)!=(0); - if (!($22)) { - label = 12; - break; - } - } - } - } - $23 = HEAP32[$i>>2]|0; - $24 = (($23) + 1)|0; - HEAP32[$i>>2] = $24; - $25 = (37800 + ($23<<2)|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$zDir>>2] = $26; - } - if ((label|0) == 12) { - $27 = HEAP32[$zDir>>2]|0; - STACKTOP = sp;return ($27|0); - } - return 0|0; -} -function _seekAndWrite($id,$0,$1,$pBuf,$cnt) { - $id = $id|0; - $0 = $0|0; - $1 = $1|0; - $pBuf = $pBuf|0; - $cnt = $cnt|0; - var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; - var $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $2 = sp + 16|0; - $3 = sp; - $4 = sp + 12|0; - $5 = sp + 8|0; - HEAP32[$2>>2] = $id; - $6 = $3; - $7 = $6; - HEAP32[$7>>2] = $0; - $8 = (($6) + 4)|0; - $9 = $8; - HEAP32[$9>>2] = $1; - HEAP32[$4>>2] = $pBuf; - HEAP32[$5>>2] = $cnt; - $10 = HEAP32[$2>>2]|0; - $11 = (($10) + 12|0); - $12 = HEAP32[$11>>2]|0; - $13 = $3; - $14 = $13; - $15 = HEAP32[$14>>2]|0; - $16 = (($13) + 4)|0; - $17 = $16; - $18 = HEAP32[$17>>2]|0; - $19 = HEAP32[$4>>2]|0; - $20 = HEAP32[$5>>2]|0; - $21 = HEAP32[$2>>2]|0; - $22 = (($21) + 20|0); - $23 = (_seekAndWriteFd($12,$15,$18,$19,$20,$22)|0); - STACKTOP = sp;return ($23|0); -} -function _sqliteErrorFromPosixError($posixError,$sqliteIOErr) { - $posixError = $posixError|0; - $sqliteIOErr = $sqliteIOErr|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond3 = 0, $or$cond5 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $1 = sp + 4|0; - $2 = sp; - HEAP32[$1>>2] = $posixError; - HEAP32[$2>>2] = $sqliteIOErr; - $3 = HEAP32[$1>>2]|0; - switch ($3|0) { - case 13: { - $4 = HEAP32[$2>>2]|0; - $5 = ($4|0)==(3850); - $6 = HEAP32[$2>>2]|0; - $7 = ($6|0)==(2058); - $or$cond = $5 | $7; - $8 = HEAP32[$2>>2]|0; - $9 = ($8|0)==(2314); - $or$cond3 = $or$cond | $9; - $10 = HEAP32[$2>>2]|0; - $11 = ($10|0)==(3594); - $or$cond5 = $or$cond3 | $11; - if ($or$cond5) { - HEAP32[$0>>2] = 5; - } else { - label = 5; - } - break; - } - case 1: { - label = 5; - break; - } - case 37: case 4: case 16: case 110: case 11: { - HEAP32[$0>>2] = 5; - break; - } - default: { - $12 = HEAP32[$2>>2]|0; - HEAP32[$0>>2] = $12; - } - } - if ((label|0) == 5) { - HEAP32[$0>>2] = 3; - } - $13 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($13|0); -} -function _full_fsync($fd,$fullSync,$dataOnly) { - $fd = $fd|0; - $fullSync = $fullSync|0; - $dataOnly = $dataOnly|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $1 = sp + 8|0; - $2 = sp + 4|0; - $rc = sp; - HEAP32[$0>>2] = $fd; - HEAP32[$1>>2] = $fullSync; - HEAP32[$2>>2] = $dataOnly; - $3 = HEAP32[$0>>2]|0; - $4 = (_fsync(($3|0))|0); - HEAP32[$rc>>2] = $4; - $5 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($5|0); -} -function _seekAndRead($id,$0,$1,$pBuf,$cnt) { - $id = $id|0; - $0 = $0|0; - $1 = $1|0; - $pBuf = $pBuf|0; - $cnt = $cnt|0; - var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; - var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; - var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; - var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; - var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; - var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $got = 0, $newOffset = 0, $prior = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $4 = sp + 8|0; - $5 = sp + 28|0; - $6 = sp + 24|0; - $got = sp + 20|0; - $prior = sp + 16|0; - $newOffset = sp; - HEAP32[$3>>2] = $id; - $7 = $4; - $8 = $7; - HEAP32[$8>>2] = $0; - $9 = (($7) + 4)|0; - $10 = $9; - HEAP32[$10>>2] = $1; - HEAP32[$5>>2] = $pBuf; - HEAP32[$6>>2] = $cnt; - HEAP32[$prior>>2] = 0; - $11 = HEAP32[$6>>2]|0; - $12 = $11 & 131071; - HEAP32[$6>>2] = $12; - while(1) { - $13 = HEAP32[$3>>2]|0; - $14 = (($13) + 12|0); - $15 = HEAP32[$14>>2]|0; - $16 = $4; - $17 = $16; - $18 = HEAP32[$17>>2]|0; - $19 = (($16) + 4)|0; - $20 = $19; - $21 = HEAP32[$20>>2]|0; - $22 = (_lseek(($15|0),($18|0),0)|0); - $23 = ($22|0)<(0); - $24 = $23 << 31 >> 31; - $25 = $newOffset; - $26 = $25; - HEAP32[$26>>2] = $22; - $27 = (($25) + 4)|0; - $28 = $27; - HEAP32[$28>>2] = $24; - $29 = $newOffset; - $30 = $29; - $31 = HEAP32[$30>>2]|0; - $32 = (($29) + 4)|0; - $33 = $32; - $34 = HEAP32[$33>>2]|0; - $35 = $4; - $36 = $35; - $37 = HEAP32[$36>>2]|0; - $38 = (($35) + 4)|0; - $39 = $38; - $40 = HEAP32[$39>>2]|0; - $41 = ($31|0)!=($37|0); - $42 = ($34|0)!=($40|0); - $43 = $41 | $42; - if ($43) { - label = 3; - break; - } - $59 = HEAP32[((37064 + 100|0))>>2]|0; - $60 = HEAP32[$3>>2]|0; - $61 = (($60) + 12|0); - $62 = HEAP32[$61>>2]|0; - $63 = HEAP32[$5>>2]|0; - $64 = HEAP32[$6>>2]|0; - $65 = (FUNCTION_TABLE_iiii[$59 & 15]($62,$63,$64)|0); - HEAP32[$got>>2] = $65; - $66 = HEAP32[$got>>2]|0; - $67 = HEAP32[$6>>2]|0; - $68 = ($66|0)==($67|0); - if ($68) { - break; - } - $69 = HEAP32[$got>>2]|0; - $70 = ($69|0)<(0); - if ($70) { - $71 = (___errno_location()|0); - $72 = HEAP32[$71>>2]|0; - $73 = ($72|0)==(4); - if (!($73)) { - label = 11; - break; - } - HEAP32[$got>>2] = 1; - } else { - $78 = HEAP32[$got>>2]|0; - $79 = ($78|0)>(0); - if ($79) { - $80 = HEAP32[$got>>2]|0; - $81 = HEAP32[$6>>2]|0; - $82 = (($81) - ($80))|0; - HEAP32[$6>>2] = $82; - $83 = HEAP32[$got>>2]|0; - $84 = ($83|0)<(0); - $85 = $84 << 31 >> 31; - $86 = $4; - $87 = $86; - $88 = HEAP32[$87>>2]|0; - $89 = (($86) + 4)|0; - $90 = $89; - $91 = HEAP32[$90>>2]|0; - $92 = (_i64Add(($88|0),($91|0),($83|0),($85|0))|0); - $93 = tempRet0; - $94 = $4; - $95 = $94; - HEAP32[$95>>2] = $92; - $96 = (($94) + 4)|0; - $97 = $96; - HEAP32[$97>>2] = $93; - $98 = HEAP32[$got>>2]|0; - $99 = HEAP32[$prior>>2]|0; - $100 = (($99) + ($98))|0; - HEAP32[$prior>>2] = $100; - $101 = HEAP32[$got>>2]|0; - $102 = HEAP32[$5>>2]|0; - $103 = (($102) + ($101)|0); - HEAP32[$5>>2] = $103; - } - } - $104 = HEAP32[$got>>2]|0; - $105 = ($104|0)>(0); - if (!($105)) { - break; - } - } - if ((label|0) == 3) { - $44 = $newOffset; - $45 = $44; - $46 = HEAP32[$45>>2]|0; - $47 = (($44) + 4)|0; - $48 = $47; - $49 = HEAP32[$48>>2]|0; - $50 = ($46|0)==(-1); - $51 = ($49|0)==(-1); - $52 = $50 & $51; - if ($52) { - $53 = (___errno_location()|0); - $54 = HEAP32[$53>>2]|0; - $55 = HEAP32[$3>>2]|0; - $56 = (($55) + 20|0); - HEAP32[$56>>2] = $54; - } else { - $57 = HEAP32[$3>>2]|0; - $58 = (($57) + 20|0); - HEAP32[$58>>2] = 0; - } - HEAP32[$2>>2] = -1; - $109 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($109|0); - } - else if ((label|0) == 11) { - HEAP32[$prior>>2] = 0; - $74 = (___errno_location()|0); - $75 = HEAP32[$74>>2]|0; - $76 = HEAP32[$3>>2]|0; - $77 = (($76) + 20|0); - HEAP32[$77>>2] = $75; - } - $106 = HEAP32[$got>>2]|0; - $107 = HEAP32[$prior>>2]|0; - $108 = (($106) + ($107))|0; - HEAP32[$2>>2] = $108; - $109 = HEAP32[$2>>2]|0; - STACKTOP = sp;return ($109|0); -} -function _closeUnixFile($id) { - $id = $id|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pFile = 0, dest = 0, label = 0, sp = 0; - var stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pFile = sp; - HEAP32[$0>>2] = $id; - $1 = HEAP32[$0>>2]|0; - HEAP32[$pFile>>2] = $1; - $2 = HEAP32[$pFile>>2]|0; - $3 = (($2) + 12|0); - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)>=(0); - if ($5) { - $6 = HEAP32[$pFile>>2]|0; - $7 = HEAP32[$pFile>>2]|0; - $8 = (($7) + 12|0); - $9 = HEAP32[$8>>2]|0; - _robust_close($6,$9,25838); - $10 = HEAP32[$pFile>>2]|0; - $11 = (($10) + 12|0); - HEAP32[$11>>2] = -1; - } - $12 = HEAP32[$pFile>>2]|0; - $13 = (($12) + 28|0); - $14 = HEAP32[$13>>2]|0; - _sqlite3_free($14); - $15 = HEAP32[$pFile>>2]|0; - dest=$15+0|0; stop=dest+44|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - STACKTOP = sp;return 0; -} -function _nolockIoFinderImpl($z,$p) { - $z = $z|0; - $p = $p|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $z; - HEAP32[$1>>2] = $p; - STACKTOP = sp;return (37912|0); -} -function _nolockClose($id) { - $id = $id|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - HEAP32[$0>>2] = $id; - $1 = HEAP32[$0>>2]|0; - $2 = (_closeUnixFile($1)|0); - STACKTOP = sp;return ($2|0); -} -function _nolockLock($NotUsed,$NotUsed2) { - $NotUsed = $NotUsed|0; - $NotUsed2 = $NotUsed2|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $NotUsed; - HEAP32[$1>>2] = $NotUsed2; - STACKTOP = sp;return 0; -} -function _nolockUnlock($NotUsed,$NotUsed2) { - $NotUsed = $NotUsed|0; - $NotUsed2 = $NotUsed2|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $NotUsed; - HEAP32[$1>>2] = $NotUsed2; - STACKTOP = sp;return 0; -} -function _nolockCheckReservedLock($NotUsed,$pResOut) { - $NotUsed = $NotUsed|0; - $pResOut = $pResOut|0; - var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $NotUsed; - HEAP32[$1>>2] = $pResOut; - $2 = HEAP32[$1>>2]|0; - HEAP32[$2>>2] = 0; - STACKTOP = sp;return 0; -} -function _findReusableFd($zPath,$flags) { - $zPath = $zPath|0; - $flags = $flags|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pInode = 0, $pUnused = 0, $pp = 0, $sStat = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $0 = sp + 92|0; - $1 = sp + 88|0; - $pUnused = sp + 84|0; - $sStat = sp + 8|0; - $pInode = sp + 4|0; - $pp = sp; - HEAP32[$0>>2] = $zPath; - HEAP32[$1>>2] = $flags; - HEAP32[$pUnused>>2] = 0; - $2 = HEAP32[((37064 + 52|0))>>2]|0; - $3 = HEAP32[$0>>2]|0; - $4 = (FUNCTION_TABLE_iii[$2 & 63]($3,$sStat)|0); - $5 = (0)==($4|0); - if (!($5)) { - $45 = HEAP32[$pUnused>>2]|0; - STACKTOP = sp;return ($45|0); - } - _unixEnterMutex(); - $6 = HEAP32[38248>>2]|0; - HEAP32[$pInode>>2] = $6; - while(1) { - $7 = HEAP32[$pInode>>2]|0; - $8 = ($7|0)!=(0|0); - if ($8) { - $9 = HEAP32[$pInode>>2]|0; - $10 = HEAP32[$9>>2]|0; - $11 = HEAP32[$sStat>>2]|0; - $12 = ($10|0)!=($11|0); - if ($12) { - $46 = 1; - } else { - $13 = HEAP32[$pInode>>2]|0; - $14 = (($13) + 4|0); - $15 = HEAP32[$14>>2]|0; - $16 = (($sStat) + 72|0); - $17 = HEAP32[$16>>2]|0; - $18 = ($15|0)!=($17|0); - $46 = $18; - } - } else { - $46 = 0; - } - $19 = HEAP32[$pInode>>2]|0; - if (!($46)) { - break; - } - $20 = (($19) + 32|0); - $21 = HEAP32[$20>>2]|0; - HEAP32[$pInode>>2] = $21; - } - $22 = ($19|0)!=(0|0); - if ($22) { - $23 = HEAP32[$pInode>>2]|0; - $24 = (($23) + 28|0); - HEAP32[$pp>>2] = $24; - while(1) { - $25 = HEAP32[$pp>>2]|0; - $26 = HEAP32[$25>>2]|0; - $27 = ($26|0)!=(0|0); - if (!($27)) { - break; - } - $28 = HEAP32[$pp>>2]|0; - $29 = HEAP32[$28>>2]|0; - $30 = (($29) + 4|0); - $31 = HEAP32[$30>>2]|0; - $32 = HEAP32[$1>>2]|0; - $33 = ($31|0)!=($32|0); - if (!($33)) { - break; - } - $34 = HEAP32[$pp>>2]|0; - $35 = HEAP32[$34>>2]|0; - $36 = (($35) + 8|0); - HEAP32[$pp>>2] = $36; - } - $37 = HEAP32[$pp>>2]|0; - $38 = HEAP32[$37>>2]|0; - HEAP32[$pUnused>>2] = $38; - $39 = HEAP32[$pUnused>>2]|0; - $40 = ($39|0)!=(0|0); - if ($40) { - $41 = HEAP32[$pUnused>>2]|0; - $42 = (($41) + 8|0); - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$pp>>2]|0; - HEAP32[$44>>2] = $43; - } - } - _unixLeaveMutex(); - $45 = HEAP32[$pUnused>>2]|0; - STACKTOP = sp;return ($45|0); -} -function _findCreateFileMode($zPath,$flags,$pMode,$pUid,$pGid) { - $zPath = $zPath|0; - $flags = $flags|0; - $pMode = $pMode|0; - $pUid = $pUid|0; - $pGid = $pGid|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; - var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nDb = 0, $rc = 0, $sStat = 0, $zDb = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 624|0; - $0 = sp + 100|0; - $1 = sp + 96|0; - $2 = sp + 92|0; - $3 = sp + 88|0; - $4 = sp + 84|0; - $rc = sp + 80|0; - $zDb = sp + 104|0; - $nDb = sp + 76|0; - $sStat = sp; - HEAP32[$0>>2] = $zPath; - HEAP32[$1>>2] = $flags; - HEAP32[$2>>2] = $pMode; - HEAP32[$3>>2] = $pUid; - HEAP32[$4>>2] = $pGid; - HEAP32[$rc>>2] = 0; - $5 = HEAP32[$2>>2]|0; - HEAP32[$5>>2] = 0; - $6 = HEAP32[$3>>2]|0; - HEAP32[$6>>2] = 0; - $7 = HEAP32[$4>>2]|0; - HEAP32[$7>>2] = 0; - $8 = HEAP32[$1>>2]|0; - $9 = $8 & 526336; - $10 = ($9|0)!=(0); - if (!($10)) { - $39 = HEAP32[$1>>2]|0; - $40 = $39 & 8; - $41 = ($40|0)!=(0); - if (!($41)) { - $43 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($43|0); - } - $42 = HEAP32[$2>>2]|0; - HEAP32[$42>>2] = 384; - $43 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($43|0); - } - $11 = HEAP32[$0>>2]|0; - $12 = (_sqlite3Strlen30($11)|0); - $13 = (($12) - 1)|0; - HEAP32[$nDb>>2] = $13; - while(1) { - $14 = HEAP32[$nDb>>2]|0; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + ($14)|0); - $17 = HEAP8[$16>>0]|0; - $18 = $17 << 24 >> 24; - $19 = ($18|0)!=(45); - if (!($19)) { - break; - } - $20 = HEAP32[$nDb>>2]|0; - $21 = (($20) + -1)|0; - HEAP32[$nDb>>2] = $21; - } - $22 = HEAP32[$0>>2]|0; - $23 = HEAP32[$nDb>>2]|0; - _memcpy(($zDb|0),($22|0),($23|0))|0; - $24 = HEAP32[$nDb>>2]|0; - $25 = (($zDb) + ($24)|0); - HEAP8[$25>>0] = 0; - $26 = HEAP32[((37064 + 52|0))>>2]|0; - $27 = (FUNCTION_TABLE_iii[$26 & 63]($zDb,$sStat)|0); - $28 = (0)==($27|0); - if ($28) { - $29 = (($sStat) + 12|0); - $30 = HEAP32[$29>>2]|0; - $31 = $30 & 511; - $32 = HEAP32[$2>>2]|0; - HEAP32[$32>>2] = $31; - $33 = (($sStat) + 20|0); - $34 = HEAP32[$33>>2]|0; - $35 = HEAP32[$3>>2]|0; - HEAP32[$35>>2] = $34; - $36 = (($sStat) + 24|0); - $37 = HEAP32[$36>>2]|0; - $38 = HEAP32[$4>>2]|0; - HEAP32[$38>>2] = $37; - $43 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($43|0); - } else { - HEAP32[$rc>>2] = 1802; - $43 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($43|0); - } - return 0|0; -} -function _fillInUnixFile($pVfs,$h,$pId,$zFilename,$ctrlFlags) { - $pVfs = $pVfs|0; - $h = $h|0; - $pId = $pId|0; - $zFilename = $zFilename|0; - $ctrlFlags = $ctrlFlags|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $nFilename = 0, $pLockingStyle = 0, $pNew = 0, $rc = 0, $vararg_buffer = 0, $zLockFile = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $3 = sp + 28|0; - $4 = sp + 24|0; - $pLockingStyle = sp + 20|0; - $pNew = sp + 16|0; - $rc = sp + 12|0; - $zLockFile = sp + 8|0; - $nFilename = sp + 4|0; - HEAP32[$0>>2] = $pVfs; - HEAP32[$1>>2] = $h; - HEAP32[$2>>2] = $pId; - HEAP32[$3>>2] = $zFilename; - HEAP32[$4>>2] = $ctrlFlags; - $5 = HEAP32[$2>>2]|0; - HEAP32[$pNew>>2] = $5; - HEAP32[$rc>>2] = 0; - $6 = HEAP32[$1>>2]|0; - $7 = HEAP32[$pNew>>2]|0; - $8 = (($7) + 12|0); - HEAP32[$8>>2] = $6; - $9 = HEAP32[$0>>2]|0; - $10 = HEAP32[$pNew>>2]|0; - $11 = (($10) + 4|0); - HEAP32[$11>>2] = $9; - $12 = HEAP32[$3>>2]|0; - $13 = HEAP32[$pNew>>2]|0; - $14 = (($13) + 32|0); - HEAP32[$14>>2] = $12; - $15 = HEAP32[$4>>2]|0; - $16 = $15&255; - $17 = $16&255; - $18 = HEAP32[$pNew>>2]|0; - $19 = (($18) + 18|0); - HEAP16[$19>>1] = $17; - $20 = HEAP32[$4>>2]|0; - $21 = $20 & 64; - $22 = ($21|0)!=(0); - $23 = HEAP32[$3>>2]|0; - $24 = $22 ? $23 : 0; - $25 = (_sqlite3_uri_boolean($24,38032,1)|0); - $26 = ($25|0)!=(0); - if ($26) { - $27 = HEAP32[$pNew>>2]|0; - $28 = (($27) + 18|0); - $29 = HEAP16[$28>>1]|0; - $30 = $29&65535; - $31 = $30 | 16; - $32 = $31&65535; - HEAP16[$28>>1] = $32; - } - $33 = HEAP32[$0>>2]|0; - $34 = (($33) + 16|0); - $35 = HEAP32[$34>>2]|0; - $36 = (_strcmp($35,1368)|0); - $37 = ($36|0)==(0); - if ($37) { - $38 = HEAP32[$pNew>>2]|0; - $39 = (($38) + 18|0); - $40 = HEAP16[$39>>1]|0; - $41 = $40&65535; - $42 = $41 | 1; - $43 = $42&65535; - HEAP16[$39>>1] = $43; - } - $44 = HEAP32[$4>>2]|0; - $45 = $44 & 128; - $46 = ($45|0)!=(0); - if ($46) { - HEAP32[$pLockingStyle>>2] = 37912; - } else { - $47 = HEAP32[$0>>2]|0; - $48 = (($47) + 20|0); - $49 = HEAP32[$48>>2]|0; - $50 = HEAP32[$49>>2]|0; - $51 = HEAP32[$3>>2]|0; - $52 = HEAP32[$pNew>>2]|0; - $53 = (FUNCTION_TABLE_iii[$50 & 63]($51,$52)|0); - HEAP32[$pLockingStyle>>2] = $53; - } - $54 = HEAP32[$pLockingStyle>>2]|0; - $55 = ($54|0)==(38040|0); - if ($55) { - _unixEnterMutex(); - $56 = HEAP32[$pNew>>2]|0; - $57 = HEAP32[$pNew>>2]|0; - $58 = (($57) + 8|0); - $59 = (_findInodeInfo($56,$58)|0); - HEAP32[$rc>>2] = $59; - $60 = HEAP32[$rc>>2]|0; - $61 = ($60|0)!=(0); - if ($61) { - $62 = HEAP32[$pNew>>2]|0; - $63 = HEAP32[$1>>2]|0; - _robust_close($62,$63,29201); - HEAP32[$1>>2] = -1; - } - _unixLeaveMutex(); - } else { - $64 = HEAP32[$pLockingStyle>>2]|0; - $65 = ($64|0)==(36984|0); - if ($65) { - $66 = HEAP32[$3>>2]|0; - $67 = (_strlen(($66|0))|0); - $68 = (($67) + 6)|0; - HEAP32[$nFilename>>2] = $68; - $69 = HEAP32[$nFilename>>2]|0; - $70 = (_sqlite3_malloc($69)|0); - HEAP32[$zLockFile>>2] = $70; - $71 = HEAP32[$zLockFile>>2]|0; - $72 = ($71|0)==(0|0); - if ($72) { - HEAP32[$rc>>2] = 7; - } else { - $73 = HEAP32[$nFilename>>2]|0; - $74 = HEAP32[$zLockFile>>2]|0; - $75 = HEAP32[$3>>2]|0; - HEAP32[$vararg_buffer>>2] = $75; - (_sqlite3_snprintf($73,$74,38120,$vararg_buffer)|0); - } - $76 = HEAP32[$zLockFile>>2]|0; - $77 = HEAP32[$pNew>>2]|0; - $78 = (($77) + 24|0); - HEAP32[$78>>2] = $76; - } - } - $79 = HEAP32[$pNew>>2]|0; - $80 = (($79) + 20|0); - HEAP32[$80>>2] = 0; - $81 = HEAP32[$rc>>2]|0; - $82 = ($81|0)!=(0); - if (!($82)) { - $87 = HEAP32[$pLockingStyle>>2]|0; - $88 = HEAP32[$pNew>>2]|0; - HEAP32[$88>>2] = $87; - $89 = HEAP32[$pNew>>2]|0; - _verifyDbFile($89); - $90 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($90|0); - } - $83 = HEAP32[$1>>2]|0; - $84 = ($83|0)>=(0); - if (!($84)) { - $90 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($90|0); - } - $85 = HEAP32[$pNew>>2]|0; - $86 = HEAP32[$1>>2]|0; - _robust_close($85,$86,29286); - $90 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($90|0); -} -function _findInodeInfo($pFile,$ppInode) { - $pFile = $pFile|0; - $ppInode = $ppInode|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $fd = 0; - var $fileId = 0, $pInode = 0, $rc = 0, $statbuf = 0, dest = 0, label = 0, sp = 0, stop = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 112|0; - $0 = sp + 104|0; - $1 = sp + 100|0; - $2 = sp + 96|0; - $rc = sp + 92|0; - $fd = sp + 88|0; - $fileId = sp + 80|0; - $statbuf = sp + 4|0; - $pInode = sp; - HEAP32[$1>>2] = $pFile; - HEAP32[$2>>2] = $ppInode; - HEAP32[$pInode>>2] = 0; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 12|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$fd>>2] = $5; - $6 = HEAP32[((37064 + 64|0))>>2]|0; - $7 = HEAP32[$fd>>2]|0; - $8 = (FUNCTION_TABLE_iii[$6 & 63]($7,$statbuf)|0); - HEAP32[$rc>>2] = $8; - $9 = HEAP32[$rc>>2]|0; - $10 = ($9|0)!=(0); - if ($10) { - $11 = (___errno_location()|0); - $12 = HEAP32[$11>>2]|0; - $13 = HEAP32[$1>>2]|0; - $14 = (($13) + 20|0); - HEAP32[$14>>2] = $12; - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + 20|0); - $17 = HEAP32[$16>>2]|0; - $18 = ($17|0)==(75); - if ($18) { - HEAP32[$0>>2] = 22; - $57 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($57|0); - } else { - HEAP32[$0>>2] = 10; - $57 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($57|0); - } - } - ;HEAP32[$fileId+0>>2]=0|0;HEAP32[$fileId+4>>2]=0|0; - $19 = HEAP32[$statbuf>>2]|0; - HEAP32[$fileId>>2] = $19; - $20 = (($statbuf) + 72|0); - $21 = HEAP32[$20>>2]|0; - $22 = (($fileId) + 4|0); - HEAP32[$22>>2] = $21; - $23 = HEAP32[38248>>2]|0; - HEAP32[$pInode>>2] = $23; - while(1) { - $24 = HEAP32[$pInode>>2]|0; - $25 = ($24|0)!=(0|0); - if ($25) { - $26 = HEAP32[$pInode>>2]|0; - $27 = (_memcmp($fileId,$26,8)|0); - $28 = ($27|0)!=(0); - $58 = $28; - } else { - $58 = 0; - } - $29 = HEAP32[$pInode>>2]|0; - if (!($58)) { - break; - } - $30 = (($29) + 32|0); - $31 = HEAP32[$30>>2]|0; - HEAP32[$pInode>>2] = $31; - } - $32 = ($29|0)==(0|0); - if ($32) { - $33 = (_sqlite3_malloc(40)|0); - HEAP32[$pInode>>2] = $33; - $34 = HEAP32[$pInode>>2]|0; - $35 = ($34|0)==(0|0); - if ($35) { - HEAP32[$0>>2] = 7; - $57 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($57|0); - } - $36 = HEAP32[$pInode>>2]|0; - dest=$36+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); - $37 = HEAP32[$pInode>>2]|0; - ;HEAP32[$37+0>>2]=HEAP32[$fileId+0>>2]|0;HEAP32[$37+4>>2]=HEAP32[$fileId+4>>2]|0; - $38 = HEAP32[$pInode>>2]|0; - $39 = (($38) + 16|0); - HEAP32[$39>>2] = 1; - $40 = HEAP32[38248>>2]|0; - $41 = HEAP32[$pInode>>2]|0; - $42 = (($41) + 32|0); - HEAP32[$42>>2] = $40; - $43 = HEAP32[$pInode>>2]|0; - $44 = (($43) + 36|0); - HEAP32[$44>>2] = 0; - $45 = HEAP32[38248>>2]|0; - $46 = ($45|0)!=(0|0); - if ($46) { - $47 = HEAP32[$pInode>>2]|0; - $48 = HEAP32[38248>>2]|0; - $49 = (($48) + 36|0); - HEAP32[$49>>2] = $47; - } - $50 = HEAP32[$pInode>>2]|0; - HEAP32[38248>>2] = $50; - } else { - $51 = HEAP32[$pInode>>2]|0; - $52 = (($51) + 16|0); - $53 = HEAP32[$52>>2]|0; - $54 = (($53) + 1)|0; - HEAP32[$52>>2] = $54; - } - $55 = HEAP32[$pInode>>2]|0; - $56 = HEAP32[$2>>2]|0; - HEAP32[$56>>2] = $55; - HEAP32[$0>>2] = 0; - $57 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($57|0); -} -function _verifyDbFile($pFile) { - $pFile = $pFile|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $buf = 0, $rc = 0, $vararg_buffer7 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 96|0; - $vararg_buffer7 = sp; - $0 = sp + 84|0; - $buf = sp + 8|0; - $rc = sp + 4|0; - HEAP32[$0>>2] = $pFile; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 18|0); - $3 = HEAP16[$2>>1]|0; - $4 = $3&65535; - $5 = $4 & 256; - $6 = ($5|0)!=(0); - if ($6) { - STACKTOP = sp;return; - } - $7 = HEAP32[((37064 + 64|0))>>2]|0; - $8 = HEAP32[$0>>2]|0; - $9 = (($8) + 12|0); - $10 = HEAP32[$9>>2]|0; - $11 = (FUNCTION_TABLE_iii[$7 & 63]($10,$buf)|0); - HEAP32[$rc>>2] = $11; - $12 = HEAP32[$rc>>2]|0; - $13 = ($12|0)!=(0); - if ($13) { - $14 = HEAP32[$0>>2]|0; - $15 = (($14) + 32|0); - $16 = HEAP32[$15>>2]|0; - HEAP32[$vararg_buffer7>>2] = $16; - _sqlite3_log(28,38128,$vararg_buffer7); - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 18|0); - $19 = HEAP16[$18>>1]|0; - $20 = $19&65535; - $21 = $20 | 256; - $22 = $21&65535; - HEAP16[$18>>1] = $22; - STACKTOP = sp;return; - } - $23 = (($buf) + 16|0); - $24 = HEAP32[$23>>2]|0; - $25 = ($24|0)==(0); - if ($25) { - $26 = HEAP32[$0>>2]|0; - $27 = (($26) + 18|0); - $28 = HEAP16[$27>>1]|0; - $29 = $28&65535; - $30 = $29 & 32; - $31 = ($30|0)==(0); - if ($31) { - $32 = HEAP32[$0>>2]|0; - $33 = (($32) + 32|0); - $34 = HEAP32[$33>>2]|0; - HEAP32[$vararg_buffer7>>2] = $34; - _sqlite3_log(28,38152,$vararg_buffer7); - $35 = HEAP32[$0>>2]|0; - $36 = (($35) + 18|0); - $37 = HEAP16[$36>>1]|0; - $38 = $37&65535; - $39 = $38 | 256; - $40 = $39&65535; - HEAP16[$36>>1] = $40; - STACKTOP = sp;return; - } - } - $41 = (($buf) + 16|0); - $42 = HEAP32[$41>>2]|0; - $43 = ($42>>>0)>(1); - $44 = HEAP32[$0>>2]|0; - if ($43) { - $45 = (($44) + 32|0); - $46 = HEAP32[$45>>2]|0; - HEAP32[$vararg_buffer7>>2] = $46; - _sqlite3_log(28,38184,$vararg_buffer7); - $47 = HEAP32[$0>>2]|0; - $48 = (($47) + 18|0); - $49 = HEAP16[$48>>1]|0; - $50 = $49&65535; - $51 = $50 | 256; - $52 = $51&65535; - HEAP16[$48>>1] = $52; - STACKTOP = sp;return; - } - $53 = (_fileHasMoved($44)|0); - $54 = ($53|0)!=(0); - if (!($54)) { - STACKTOP = sp;return; - } - $55 = HEAP32[$0>>2]|0; - $56 = (($55) + 32|0); - $57 = HEAP32[$56>>2]|0; - HEAP32[$vararg_buffer7>>2] = $57; - _sqlite3_log(28,38216,$vararg_buffer7); - $58 = HEAP32[$0>>2]|0; - $59 = (($58) + 18|0); - $60 = HEAP16[$59>>1]|0; - $61 = $60&65535; - $62 = $61 | 256; - $63 = $62&65535; - HEAP16[$59>>1] = $63; - STACKTOP = sp;return; -} -function _unixClose($id) { - $id = $id|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pFile = 0; - var $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $rc = sp + 4|0; - $pFile = sp; - HEAP32[$0>>2] = $id; - HEAP32[$rc>>2] = 0; - $1 = HEAP32[$0>>2]|0; - HEAP32[$pFile>>2] = $1; - $2 = HEAP32[$pFile>>2]|0; - _verifyDbFile($2); - $3 = HEAP32[$0>>2]|0; - (_unixUnlock($3,0)|0); - _unixEnterMutex(); - $4 = HEAP32[$pFile>>2]|0; - $5 = (($4) + 8|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($6|0)!=(0|0); - if ($7) { - $8 = HEAP32[$pFile>>2]|0; - $9 = (($8) + 8|0); - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + 24|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)!=(0); - if ($13) { - $14 = HEAP32[$pFile>>2]|0; - _setPendingFd($14); - } - } - $15 = HEAP32[$pFile>>2]|0; - _releaseInodeInfo($15); - $16 = HEAP32[$0>>2]|0; - $17 = (_closeUnixFile($16)|0); - HEAP32[$rc>>2] = $17; - _unixLeaveMutex(); - $18 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($18|0); -} -function _unixLock($id,$eFileLock) { - $id = $id|0; - $eFileLock = $eFileLock|0; - var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; - var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; - var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; - var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; - var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; - var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; - var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; - var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; - var $98 = 0, $99 = 0, $lock = 0, $pFile = 0, $pInode = 0, $rc = 0, $tErrno = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $rc = sp + 32|0; - $pFile = sp + 28|0; - $pInode = sp + 24|0; - $lock = sp + 8|0; - $tErrno = sp; - HEAP32[$1>>2] = $id; - HEAP32[$2>>2] = $eFileLock; - HEAP32[$rc>>2] = 0; - $3 = HEAP32[$1>>2]|0; - HEAP32[$pFile>>2] = $3; - HEAP32[$tErrno>>2] = 0; - $4 = HEAP32[$pFile>>2]|0; - $5 = (($4) + 16|0); - $6 = HEAP8[$5>>0]|0; - $7 = $6&255; - $8 = HEAP32[$2>>2]|0; - $9 = ($7|0)>=($8|0); - if ($9) { - HEAP32[$0>>2] = 0; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); - } - _unixEnterMutex(); - $10 = HEAP32[$pFile>>2]|0; - $11 = (($10) + 8|0); - $12 = HEAP32[$11>>2]|0; - HEAP32[$pInode>>2] = $12; - $13 = HEAP32[$pFile>>2]|0; - $14 = (($13) + 16|0); - $15 = HEAP8[$14>>0]|0; - $16 = $15&255; - $17 = HEAP32[$pInode>>2]|0; - $18 = (($17) + 12|0); - $19 = HEAP8[$18>>0]|0; - $20 = $19&255; - $21 = ($16|0)!=($20|0); - do { - if ($21) { - $22 = HEAP32[$pInode>>2]|0; - $23 = (($22) + 12|0); - $24 = HEAP8[$23>>0]|0; - $25 = $24&255; - $26 = ($25|0)>=(3); - if (!($26)) { - $27 = HEAP32[$2>>2]|0; - $28 = ($27|0)>(1); - if (!($28)) { - label = 7; - break; - } - } - HEAP32[$rc>>2] = 5; - } else { - label = 7; - } - } while(0); - L10: do { - if ((label|0) == 7) { - $29 = HEAP32[$2>>2]|0; - $30 = ($29|0)==(1); - do { - if ($30) { - $31 = HEAP32[$pInode>>2]|0; - $32 = (($31) + 12|0); - $33 = HEAP8[$32>>0]|0; - $34 = $33&255; - $35 = ($34|0)==(1); - if (!($35)) { - $36 = HEAP32[$pInode>>2]|0; - $37 = (($36) + 12|0); - $38 = HEAP8[$37>>0]|0; - $39 = $38&255; - $40 = ($39|0)==(2); - if (!($40)) { - break; - } - } - $41 = HEAP32[$pFile>>2]|0; - $42 = (($41) + 16|0); - HEAP8[$42>>0] = 1; - $43 = HEAP32[$pInode>>2]|0; - $44 = (($43) + 8|0); - $45 = HEAP32[$44>>2]|0; - $46 = (($45) + 1)|0; - HEAP32[$44>>2] = $46; - $47 = HEAP32[$pInode>>2]|0; - $48 = (($47) + 24|0); - $49 = HEAP32[$48>>2]|0; - $50 = (($49) + 1)|0; - HEAP32[$48>>2] = $50; - break L10; - } - } while(0); - $51 = (($lock) + 8|0); - HEAP32[$51>>2] = 1; - $52 = (($lock) + 2|0); - HEAP16[$52>>1] = 0; - $53 = HEAP32[$2>>2]|0; - $54 = ($53|0)==(1); - if ($54) { - label = 14; - } else { - $55 = HEAP32[$2>>2]|0; - $56 = ($55|0)==(4); - if ($56) { - $57 = HEAP32[$pFile>>2]|0; - $58 = (($57) + 16|0); - $59 = HEAP8[$58>>0]|0; - $60 = $59&255; - $61 = ($60|0)<(3); - if ($61) { - label = 14; - } - } - } - if ((label|0) == 14) { - $62 = HEAP32[$2>>2]|0; - $63 = ($62|0)==(1); - $64 = $63 ? 0 : 1; - $65 = $64&65535; - HEAP16[$lock>>1] = $65; - $66 = HEAP32[1384>>2]|0; - $67 = (($lock) + 4|0); - HEAP32[$67>>2] = $66; - $68 = HEAP32[$pFile>>2]|0; - $69 = (_unixFileLock($68,$lock)|0); - $70 = ($69|0)!=(0); - if ($70) { - $71 = (___errno_location()|0); - $72 = HEAP32[$71>>2]|0; - HEAP32[$tErrno>>2] = $72; - $73 = HEAP32[$tErrno>>2]|0; - $74 = (_sqliteErrorFromPosixError($73,3850)|0); - HEAP32[$rc>>2] = $74; - $75 = HEAP32[$rc>>2]|0; - $76 = ($75|0)!=(5); - if (!($76)) { - break; - } - $77 = HEAP32[$tErrno>>2]|0; - $78 = HEAP32[$pFile>>2]|0; - $79 = (($78) + 20|0); - HEAP32[$79>>2] = $77; - break; - } - } - $80 = HEAP32[$2>>2]|0; - $81 = ($80|0)==(1); - do { - if ($81) { - $82 = HEAP32[1384>>2]|0; - $83 = (($82) + 2)|0; - $84 = (($lock) + 4|0); - HEAP32[$84>>2] = $83; - $85 = (($lock) + 8|0); - HEAP32[$85>>2] = 510; - $86 = HEAP32[$pFile>>2]|0; - $87 = (_unixFileLock($86,$lock)|0); - $88 = ($87|0)!=(0); - if ($88) { - $89 = (___errno_location()|0); - $90 = HEAP32[$89>>2]|0; - HEAP32[$tErrno>>2] = $90; - $91 = HEAP32[$tErrno>>2]|0; - $92 = (_sqliteErrorFromPosixError($91,3850)|0); - HEAP32[$rc>>2] = $92; - } - $93 = HEAP32[1384>>2]|0; - $94 = (($lock) + 4|0); - HEAP32[$94>>2] = $93; - $95 = (($lock) + 8|0); - HEAP32[$95>>2] = 1; - HEAP16[$lock>>1] = 2; - $96 = HEAP32[$pFile>>2]|0; - $97 = (_unixFileLock($96,$lock)|0); - $98 = ($97|0)!=(0); - if ($98) { - $99 = HEAP32[$rc>>2]|0; - $100 = ($99|0)==(0); - if ($100) { - $101 = (___errno_location()|0); - $102 = HEAP32[$101>>2]|0; - HEAP32[$tErrno>>2] = $102; - HEAP32[$rc>>2] = 2058; - } - } - $103 = HEAP32[$rc>>2]|0; - $104 = ($103|0)!=(0); - if (!($104)) { - $110 = HEAP32[$pFile>>2]|0; - $111 = (($110) + 16|0); - HEAP8[$111>>0] = 1; - $112 = HEAP32[$pInode>>2]|0; - $113 = (($112) + 24|0); - $114 = HEAP32[$113>>2]|0; - $115 = (($114) + 1)|0; - HEAP32[$113>>2] = $115; - $116 = HEAP32[$pInode>>2]|0; - $117 = (($116) + 8|0); - HEAP32[$117>>2] = 1; - break; - } - $105 = HEAP32[$rc>>2]|0; - $106 = ($105|0)!=(5); - if (!($106)) { - break L10; - } - $107 = HEAP32[$tErrno>>2]|0; - $108 = HEAP32[$pFile>>2]|0; - $109 = (($108) + 20|0); - HEAP32[$109>>2] = $107; - break L10; - } else { - $118 = HEAP32[$2>>2]|0; - $119 = ($118|0)==(4); - if ($119) { - $120 = HEAP32[$pInode>>2]|0; - $121 = (($120) + 8|0); - $122 = HEAP32[$121>>2]|0; - $123 = ($122|0)>(1); - if ($123) { - HEAP32[$rc>>2] = 5; - break; - } - } - HEAP16[$lock>>1] = 1; - $124 = HEAP32[$2>>2]|0; - $125 = ($124|0)==(2); - $126 = HEAP32[1384>>2]|0; - if ($125) { - $127 = (($126) + 1)|0; - $128 = (($lock) + 4|0); - HEAP32[$128>>2] = $127; - $129 = (($lock) + 8|0); - HEAP32[$129>>2] = 1; - } else { - $130 = (($126) + 2)|0; - $131 = (($lock) + 4|0); - HEAP32[$131>>2] = $130; - $132 = (($lock) + 8|0); - HEAP32[$132>>2] = 510; - } - $133 = HEAP32[$pFile>>2]|0; - $134 = (_unixFileLock($133,$lock)|0); - $135 = ($134|0)!=(0); - if ($135) { - $136 = (___errno_location()|0); - $137 = HEAP32[$136>>2]|0; - HEAP32[$tErrno>>2] = $137; - $138 = HEAP32[$tErrno>>2]|0; - $139 = (_sqliteErrorFromPosixError($138,3850)|0); - HEAP32[$rc>>2] = $139; - $140 = HEAP32[$rc>>2]|0; - $141 = ($140|0)!=(5); - if ($141) { - $142 = HEAP32[$tErrno>>2]|0; - $143 = HEAP32[$pFile>>2]|0; - $144 = (($143) + 20|0); - HEAP32[$144>>2] = $142; - } - } - } - } while(0); - $145 = HEAP32[$rc>>2]|0; - $146 = ($145|0)==(0); - $147 = HEAP32[$2>>2]|0; - if ($146) { - $148 = $147&255; - $149 = HEAP32[$pFile>>2]|0; - $150 = (($149) + 16|0); - HEAP8[$150>>0] = $148; - $151 = HEAP32[$2>>2]|0; - $152 = $151&255; - $153 = HEAP32[$pInode>>2]|0; - $154 = (($153) + 12|0); - HEAP8[$154>>0] = $152; - break; - } - $155 = ($147|0)==(4); - if ($155) { - $156 = HEAP32[$pFile>>2]|0; - $157 = (($156) + 16|0); - HEAP8[$157>>0] = 3; - $158 = HEAP32[$pInode>>2]|0; - $159 = (($158) + 12|0); - HEAP8[$159>>0] = 3; - } - } - } while(0); - _unixLeaveMutex(); - $160 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $160; - $161 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($161|0); -} -function _unixUnlock($id,$eFileLock) { - $id = $id|0; - $eFileLock = $eFileLock|0; - var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $id; - HEAP32[$1>>2] = $eFileLock; - $2 = HEAP32[$0>>2]|0; - $3 = HEAP32[$1>>2]|0; - $4 = (_posixUnlock($2,$3,0)|0); - STACKTOP = sp;return ($4|0); -} -function _unixCheckReservedLock($id,$pResOut) { - $id = $id|0; - $pResOut = $pResOut|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $lock = 0; - var $pFile = 0, $rc = 0, $reserved = 0, $vararg_buffer = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer = sp; - $0 = sp + 40|0; - $1 = sp + 36|0; - $rc = sp + 32|0; - $reserved = sp + 28|0; - $pFile = sp + 24|0; - $lock = sp + 8|0; - HEAP32[$0>>2] = $id; - HEAP32[$1>>2] = $pResOut; - HEAP32[$rc>>2] = 0; - HEAP32[$reserved>>2] = 0; - $2 = HEAP32[$0>>2]|0; - HEAP32[$pFile>>2] = $2; - _unixEnterMutex(); - $3 = HEAP32[$pFile>>2]|0; - $4 = (($3) + 8|0); - $5 = HEAP32[$4>>2]|0; - $6 = (($5) + 12|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = ($8|0)>(1); - if ($9) { - HEAP32[$reserved>>2] = 1; - } - $10 = HEAP32[$reserved>>2]|0; - $11 = ($10|0)!=(0); - do { - if (!($11)) { - $12 = HEAP32[$pFile>>2]|0; - $13 = (($12) + 8|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + 13|0); - $16 = HEAP8[$15>>0]|0; - $17 = ($16<<24>>24)!=(0); - if (!($17)) { - $18 = (($lock) + 2|0); - HEAP16[$18>>1] = 0; - $19 = HEAP32[1384>>2]|0; - $20 = (($19) + 1)|0; - $21 = (($lock) + 4|0); - HEAP32[$21>>2] = $20; - $22 = (($lock) + 8|0); - HEAP32[$22>>2] = 1; - HEAP16[$lock>>1] = 1; - $23 = HEAP32[((37064 + 88|0))>>2]|0; - $24 = HEAP32[$pFile>>2]|0; - $25 = (($24) + 12|0); - $26 = HEAP32[$25>>2]|0; - HEAP32[$vararg_buffer>>2] = $lock; - $27 = (FUNCTION_TABLE_iiii[$23 & 15]($26,12,$vararg_buffer)|0); - $28 = ($27|0)!=(0); - if ($28) { - HEAP32[$rc>>2] = 3594; - $29 = (___errno_location()|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$pFile>>2]|0; - $32 = (($31) + 20|0); - HEAP32[$32>>2] = $30; - break; - } - $33 = HEAP16[$lock>>1]|0; - $34 = $33 << 16 >> 16; - $35 = ($34|0)!=(2); - if ($35) { - HEAP32[$reserved>>2] = 1; - } - } - } - } while(0); - _unixLeaveMutex(); - $36 = HEAP32[$reserved>>2]|0; - $37 = HEAP32[$1>>2]|0; - HEAP32[$37>>2] = $36; - $38 = HEAP32[$rc>>2]|0; - STACKTOP = sp;return ($38|0); -} -function _posixUnlock($id,$eFileLock,$handleNFSUnlock) { - $id = $id|0; - $eFileLock = $eFileLock|0; - $handleNFSUnlock = $handleNFSUnlock|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; - var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; - var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $9 = 0, $lock = 0, $pFile = 0, $pInode = 0, $rc = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $0 = sp + 44|0; - $1 = sp + 40|0; - $2 = sp + 36|0; - $3 = sp + 32|0; - $pFile = sp + 28|0; - $pInode = sp + 24|0; - $lock = sp + 8|0; - $rc = sp; - HEAP32[$1>>2] = $id; - HEAP32[$2>>2] = $eFileLock; - HEAP32[$3>>2] = $handleNFSUnlock; - $4 = HEAP32[$1>>2]|0; - HEAP32[$pFile>>2] = $4; - HEAP32[$rc>>2] = 0; - $5 = HEAP32[$pFile>>2]|0; - $6 = (($5) + 16|0); - $7 = HEAP8[$6>>0]|0; - $8 = $7&255; - $9 = HEAP32[$2>>2]|0; - $10 = ($8|0)<=($9|0); - if ($10) { - HEAP32[$0>>2] = 0; - $88 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($88|0); - } - _unixEnterMutex(); - $11 = HEAP32[$pFile>>2]|0; - $12 = (($11) + 8|0); - $13 = HEAP32[$12>>2]|0; - HEAP32[$pInode>>2] = $13; - $14 = HEAP32[$pFile>>2]|0; - $15 = (($14) + 16|0); - $16 = HEAP8[$15>>0]|0; - $17 = $16&255; - $18 = ($17|0)>(1); - do { - if ($18) { - $19 = HEAP32[$2>>2]|0; - $20 = ($19|0)==(1); - if ($20) { - HEAP16[$lock>>1] = 0; - $21 = (($lock) + 2|0); - HEAP16[$21>>1] = 0; - $22 = HEAP32[1384>>2]|0; - $23 = (($22) + 2)|0; - $24 = (($lock) + 4|0); - HEAP32[$24>>2] = $23; - $25 = (($lock) + 8|0); - HEAP32[$25>>2] = 510; - $26 = HEAP32[$pFile>>2]|0; - $27 = (_unixFileLock($26,$lock)|0); - $28 = ($27|0)!=(0); - if ($28) { - HEAP32[$rc>>2] = 2314; - $29 = (___errno_location()|0); - $30 = HEAP32[$29>>2]|0; - $31 = HEAP32[$pFile>>2]|0; - $32 = (($31) + 20|0); - HEAP32[$32>>2] = $30; - break; - } - } - HEAP16[$lock>>1] = 2; - $33 = (($lock) + 2|0); - HEAP16[$33>>1] = 0; - $34 = HEAP32[1384>>2]|0; - $35 = (($lock) + 4|0); - HEAP32[$35>>2] = $34; - $36 = (($lock) + 8|0); - HEAP32[$36>>2] = 2; - $37 = HEAP32[$pFile>>2]|0; - $38 = (_unixFileLock($37,$lock)|0); - $39 = ($38|0)==(0); - if ($39) { - $40 = HEAP32[$pInode>>2]|0; - $41 = (($40) + 12|0); - HEAP8[$41>>0] = 1; - label = 10; - break; - } else { - HEAP32[$rc>>2] = 2058; - $42 = (___errno_location()|0); - $43 = HEAP32[$42>>2]|0; - $44 = HEAP32[$pFile>>2]|0; - $45 = (($44) + 20|0); - HEAP32[$45>>2] = $43; - break; - } - } else { - label = 10; - } - } while(0); - if ((label|0) == 10) { - $46 = HEAP32[$2>>2]|0; - $47 = ($46|0)==(0); - if ($47) { - $48 = HEAP32[$pInode>>2]|0; - $49 = (($48) + 8|0); - $50 = HEAP32[$49>>2]|0; - $51 = (($50) + -1)|0; - HEAP32[$49>>2] = $51; - $52 = HEAP32[$pInode>>2]|0; - $53 = (($52) + 8|0); - $54 = HEAP32[$53>>2]|0; - $55 = ($54|0)==(0); - do { - if ($55) { - HEAP16[$lock>>1] = 2; - $56 = (($lock) + 2|0); - HEAP16[$56>>1] = 0; - $57 = (($lock) + 8|0); - HEAP32[$57>>2] = 0; - $58 = (($lock) + 4|0); - HEAP32[$58>>2] = 0; - $59 = HEAP32[$pFile>>2]|0; - $60 = (_unixFileLock($59,$lock)|0); - $61 = ($60|0)==(0); - if ($61) { - $62 = HEAP32[$pInode>>2]|0; - $63 = (($62) + 12|0); - HEAP8[$63>>0] = 0; - break; - } else { - HEAP32[$rc>>2] = 2058; - $64 = (___errno_location()|0); - $65 = HEAP32[$64>>2]|0; - $66 = HEAP32[$pFile>>2]|0; - $67 = (($66) + 20|0); - HEAP32[$67>>2] = $65; - $68 = HEAP32[$pInode>>2]|0; - $69 = (($68) + 12|0); - HEAP8[$69>>0] = 0; - $70 = HEAP32[$pFile>>2]|0; - $71 = (($70) + 16|0); - HEAP8[$71>>0] = 0; - break; - } - } - } while(0); - $72 = HEAP32[$pInode>>2]|0; - $73 = (($72) + 24|0); - $74 = HEAP32[$73>>2]|0; - $75 = (($74) + -1)|0; - HEAP32[$73>>2] = $75; - $76 = HEAP32[$pInode>>2]|0; - $77 = (($76) + 24|0); - $78 = HEAP32[$77>>2]|0; - $79 = ($78|0)==(0); - if ($79) { - $80 = HEAP32[$pFile>>2]|0; - _closePendingFds($80); - } - } - } - _unixLeaveMutex(); - $81 = HEAP32[$rc>>2]|0; - $82 = ($81|0)==(0); - if ($82) { - $83 = HEAP32[$2>>2]|0; - $84 = $83&255; - $85 = HEAP32[$pFile>>2]|0; - $86 = (($85) + 16|0); - HEAP8[$86>>0] = $84; - } - $87 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $87; - $88 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($88|0); -} -function _unixFileLock($pFile,$pLock) { - $pFile = $pFile|0; - $pLock = $pLock|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; - var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $lock = 0, $pInode = 0, $rc = 0, $vararg_buffer1 = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 48|0; - $vararg_buffer1 = sp; - $0 = sp + 40|0; - $1 = sp + 36|0; - $2 = sp + 32|0; - $rc = sp + 28|0; - $pInode = sp + 24|0; - $lock = sp + 8|0; - HEAP32[$1>>2] = $pFile; - HEAP32[$2>>2] = $pLock; - $3 = HEAP32[$1>>2]|0; - $4 = (($3) + 8|0); - $5 = HEAP32[$4>>2]|0; - HEAP32[$pInode>>2] = $5; - $6 = HEAP32[$1>>2]|0; - $7 = (($6) + 18|0); - $8 = HEAP16[$7>>1]|0; - $9 = $8&65535; - $10 = $9 & 1; - $11 = ($10|0)!=(0); - if ($11) { - label = 3; - } else { - $12 = HEAP32[$pInode>>2]|0; - $13 = (($12) + 13|0); - $14 = HEAP8[$13>>0]|0; - $15 = $14&255; - $16 = ($15|0)!=(0); - if ($16) { - label = 3; - } else { - label = 9; - } - } - do { - if ((label|0) == 3) { - $17 = HEAP32[$1>>2]|0; - $18 = (($17) + 18|0); - $19 = HEAP16[$18>>1]|0; - $20 = $19&65535; - $21 = $20 & 2; - $22 = ($21|0)==(0); - if ($22) { - $23 = HEAP32[$pInode>>2]|0; - $24 = (($23) + 13|0); - $25 = HEAP8[$24>>0]|0; - $26 = $25&255; - $27 = ($26|0)==(0); - if (!($27)) { - HEAP32[$rc>>2] = 0; - break; - } - $28 = (($lock) + 2|0); - HEAP16[$28>>1] = 0; - $29 = HEAP32[1384>>2]|0; - $30 = (($29) + 2)|0; - $31 = (($lock) + 4|0); - HEAP32[$31>>2] = $30; - $32 = (($lock) + 8|0); - HEAP32[$32>>2] = 510; - HEAP16[$lock>>1] = 1; - $33 = HEAP32[((37064 + 88|0))>>2]|0; - $34 = HEAP32[$1>>2]|0; - $35 = (($34) + 12|0); - $36 = HEAP32[$35>>2]|0; - HEAP32[$vararg_buffer1>>2] = $lock; - $37 = (FUNCTION_TABLE_iiii[$33 & 15]($36,13,$vararg_buffer1)|0); - HEAP32[$rc>>2] = $37; - $38 = HEAP32[$rc>>2]|0; - $39 = ($38|0)<(0); - if (!($39)) { - $41 = HEAP32[$pInode>>2]|0; - $42 = (($41) + 13|0); - HEAP8[$42>>0] = 1; - $43 = HEAP32[$pInode>>2]|0; - $44 = (($43) + 24|0); - $45 = HEAP32[$44>>2]|0; - $46 = (($45) + 1)|0; - HEAP32[$44>>2] = $46; - break; - } - $40 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $40; - $54 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($54|0); - } else { - label = 9; - } - } - } while(0); - if ((label|0) == 9) { - $47 = HEAP32[((37064 + 88|0))>>2]|0; - $48 = HEAP32[$1>>2]|0; - $49 = (($48) + 12|0); - $50 = HEAP32[$49>>2]|0; - $51 = HEAP32[$2>>2]|0; - HEAP32[$vararg_buffer1>>2] = $51; - $52 = (FUNCTION_TABLE_iiii[$47 & 15]($50,13,$vararg_buffer1)|0); - HEAP32[$rc>>2] = $52; - } - $53 = HEAP32[$rc>>2]|0; - HEAP32[$0>>2] = $53; - $54 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($54|0); -} -function _closePendingFds($pFile) { - $pFile = $pFile|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0; - var $pInode = 0, $pNext = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 12|0; - $pInode = sp + 8|0; - $p = sp + 4|0; - $pNext = sp; - HEAP32[$0>>2] = $pFile; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pInode>>2] = $3; - $4 = HEAP32[$pInode>>2]|0; - $5 = (($4) + 28|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$p>>2] = $6; - while(1) { - $7 = HEAP32[$p>>2]|0; - $8 = ($7|0)!=(0|0); - if (!($8)) { - break; - } - $9 = HEAP32[$p>>2]|0; - $10 = (($9) + 8|0); - $11 = HEAP32[$10>>2]|0; - HEAP32[$pNext>>2] = $11; - $12 = HEAP32[$0>>2]|0; - $13 = HEAP32[$p>>2]|0; - $14 = HEAP32[$13>>2]|0; - _robust_close($12,$14,25104); - $15 = HEAP32[$p>>2]|0; - _sqlite3_free($15); - $16 = HEAP32[$pNext>>2]|0; - HEAP32[$p>>2] = $16; - } - $17 = HEAP32[$pInode>>2]|0; - $18 = (($17) + 28|0); - HEAP32[$18>>2] = 0; - STACKTOP = sp;return; -} -function _setPendingFd($pFile) { - $pFile = $pFile|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0; - var $pInode = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 8|0; - $pInode = sp + 4|0; - $p = sp; - HEAP32[$0>>2] = $pFile; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pInode>>2] = $3; - $4 = HEAP32[$0>>2]|0; - $5 = (($4) + 28|0); - $6 = HEAP32[$5>>2]|0; - HEAP32[$p>>2] = $6; - $7 = HEAP32[$pInode>>2]|0; - $8 = (($7) + 28|0); - $9 = HEAP32[$8>>2]|0; - $10 = HEAP32[$p>>2]|0; - $11 = (($10) + 8|0); - HEAP32[$11>>2] = $9; - $12 = HEAP32[$p>>2]|0; - $13 = HEAP32[$pInode>>2]|0; - $14 = (($13) + 28|0); - HEAP32[$14>>2] = $12; - $15 = HEAP32[$0>>2]|0; - $16 = (($15) + 12|0); - HEAP32[$16>>2] = -1; - $17 = HEAP32[$0>>2]|0; - $18 = (($17) + 28|0); - HEAP32[$18>>2] = 0; - STACKTOP = sp;return; -} -function _releaseInodeInfo($pFile) { - $pFile = $pFile|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pInode = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $pInode = sp; - HEAP32[$0>>2] = $pFile; - $1 = HEAP32[$0>>2]|0; - $2 = (($1) + 8|0); - $3 = HEAP32[$2>>2]|0; - HEAP32[$pInode>>2] = $3; - $4 = HEAP32[$pInode>>2]|0; - $5 = ($4|0)!=(0|0); - if (!($5)) { - STACKTOP = sp;return; - } - $6 = HEAP32[$pInode>>2]|0; - $7 = (($6) + 16|0); - $8 = HEAP32[$7>>2]|0; - $9 = (($8) + -1)|0; - HEAP32[$7>>2] = $9; - $10 = HEAP32[$pInode>>2]|0; - $11 = (($10) + 16|0); - $12 = HEAP32[$11>>2]|0; - $13 = ($12|0)==(0); - if (!($13)) { - STACKTOP = sp;return; - } - $14 = HEAP32[$0>>2]|0; - _closePendingFds($14); - $15 = HEAP32[$pInode>>2]|0; - $16 = (($15) + 36|0); - $17 = HEAP32[$16>>2]|0; - $18 = ($17|0)!=(0|0); - $19 = HEAP32[$pInode>>2]|0; - $20 = (($19) + 32|0); - $21 = HEAP32[$20>>2]|0; - if ($18) { - $22 = HEAP32[$pInode>>2]|0; - $23 = (($22) + 36|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + 32|0); - HEAP32[$25>>2] = $21; - } else { - HEAP32[38248>>2] = $21; - } - $26 = HEAP32[$pInode>>2]|0; - $27 = (($26) + 32|0); - $28 = HEAP32[$27>>2]|0; - $29 = ($28|0)!=(0|0); - if ($29) { - $30 = HEAP32[$pInode>>2]|0; - $31 = (($30) + 36|0); - $32 = HEAP32[$31>>2]|0; - $33 = HEAP32[$pInode>>2]|0; - $34 = (($33) + 32|0); - $35 = HEAP32[$34>>2]|0; - $36 = (($35) + 36|0); - HEAP32[$36>>2] = $32; - } - $37 = HEAP32[$pInode>>2]|0; - _sqlite3_free($37); - STACKTOP = sp;return; -} -function _posixIoFinderImpl($z,$p) { - $z = $z|0; - $p = $p|0; - var $0 = 0, $1 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $z; - HEAP32[$1>>2] = $p; - STACKTOP = sp;return (38040|0); -} -function _getIntArg($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; - var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - $1 = sp + 8|0; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($3|0)<=($6|0); - if ($7) { - $8 = $0; - $9 = $8; - HEAP32[$9>>2] = 0; - $10 = (($8) + 4)|0; - $11 = $10; - HEAP32[$11>>2] = 0; - $27 = $0; - $28 = $27; - $29 = HEAP32[$28>>2]|0; - $30 = (($27) + 4)|0; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - tempRet0 = $32; - STACKTOP = sp;return ($29|0); - } else { - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 4|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + 1)|0; - HEAP32[$13>>2] = $15; - $16 = HEAP32[$1>>2]|0; - $17 = (($16) + 8|0); - $18 = HEAP32[$17>>2]|0; - $19 = (($18) + ($14<<2)|0); - $20 = HEAP32[$19>>2]|0; - $21 = (_sqlite3_value_int64($20)|0); - $22 = tempRet0; - $23 = $0; - $24 = $23; - HEAP32[$24>>2] = $21; - $25 = (($23) + 4)|0; - $26 = $25; - HEAP32[$26>>2] = $22; - $27 = $0; - $28 = $27; - $29 = HEAP32[$28>>2]|0; - $30 = (($27) + 4)|0; - $31 = $30; - $32 = HEAP32[$31>>2]|0; - tempRet0 = $32; - STACKTOP = sp;return ($29|0); - } - return 0|0; -} -function _getDoubleArg($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0.0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp; - $1 = sp + 8|0; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($3|0)<=($6|0); - if ($7) { - HEAPF64[$0>>3] = 0.0; - $18 = +HEAPF64[$0>>3]; - STACKTOP = sp;return (+$18); - } else { - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + 1)|0; - HEAP32[$9>>2] = $11; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 8|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + ($10<<2)|0); - $16 = HEAP32[$15>>2]|0; - $17 = (+_sqlite3_value_double($16)); - HEAPF64[$0>>3] = $17; - $18 = +HEAPF64[$0>>3]; - STACKTOP = sp;return (+$18); - } - return +0; -} -function _et_getdigit($val,$cnt) { - $val = $val|0; - $cnt = $cnt|0; - var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; - var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $d = 0, $digit = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 32|0; - $0 = sp + 20|0; - $1 = sp + 16|0; - $2 = sp + 12|0; - $digit = sp + 8|0; - $d = sp; - HEAP32[$1>>2] = $val; - HEAP32[$2>>2] = $cnt; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$3>>2]|0; - $5 = ($4|0)<=(0); - if ($5) { - HEAP8[$0>>0] = 48; - $24 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($24|0); - } else { - $6 = HEAP32[$2>>2]|0; - $7 = HEAP32[$6>>2]|0; - $8 = (($7) + -1)|0; - HEAP32[$6>>2] = $8; - $9 = HEAP32[$1>>2]|0; - $10 = +HEAPF64[$9>>3]; - $11 = (~~(($10))); - HEAP32[$digit>>2] = $11; - $12 = HEAP32[$digit>>2]|0; - $13 = (+($12|0)); - HEAPF64[$d>>3] = $13; - $14 = HEAP32[$digit>>2]|0; - $15 = (($14) + 48)|0; - HEAP32[$digit>>2] = $15; - $16 = HEAP32[$1>>2]|0; - $17 = +HEAPF64[$16>>3]; - $18 = +HEAPF64[$d>>3]; - $19 = $17 - $18; - $20 = $19 * 10.0; - $21 = HEAP32[$1>>2]|0; - HEAPF64[$21>>3] = $20; - $22 = HEAP32[$digit>>2]|0; - $23 = $22&255; - HEAP8[$0>>0] = $23; - $24 = HEAP8[$0>>0]|0; - STACKTOP = sp;return ($24|0); - } - return 0|0; -} -function _getTextArg($p) { - $p = $p|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; - var sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$1>>2] = $p; - $2 = HEAP32[$1>>2]|0; - $3 = HEAP32[$2>>2]|0; - $4 = HEAP32[$1>>2]|0; - $5 = (($4) + 4|0); - $6 = HEAP32[$5>>2]|0; - $7 = ($3|0)<=($6|0); - if ($7) { - HEAP32[$0>>2] = 0; - $18 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($18|0); - } else { - $8 = HEAP32[$1>>2]|0; - $9 = (($8) + 4|0); - $10 = HEAP32[$9>>2]|0; - $11 = (($10) + 1)|0; - HEAP32[$9>>2] = $11; - $12 = HEAP32[$1>>2]|0; - $13 = (($12) + 8|0); - $14 = HEAP32[$13>>2]|0; - $15 = (($14) + ($10<<2)|0); - $16 = HEAP32[$15>>2]|0; - $17 = (_sqlite3_value_text($16)|0); - HEAP32[$0>>2] = $17; - $18 = HEAP32[$0>>2]|0; - STACKTOP = sp;return ($18|0); - } - return 0|0; -} -function _sqlite3AppendSpace($p,$N) { - $p = $p|0; - $N = $N|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; - sp = STACKTOP; - STACKTOP = STACKTOP + 16|0; - $0 = sp + 4|0; - $1 = sp; - HEAP32[$0>>2] = $p; - HEAP32[$1>>2] = $N; - $2 = HEAP32[$0>>2]|0; - $3 = (($2) + 12|0); - $4 = HEAP32[$3>>2]|0; - $5 = HEAP32[$1>>2]|0; - $6 = (($4) + ($5))|0; - $7 = HEAP32[$0>>2]|0; - $8 = (($7) + 16|0); - $9 = HEAP32[$8>>2]|0; - $10 = ($6|0)>=($9|0); - if ($10) { - $11 = HEAP32[$0>>2]|0; - $12 = HEAP32[$1>>2]|0; - $13 = (_sqlite3StrAccumEnlarge($11,$12)|0); - HEAP32[$1>>2] = $13; - $14 = ($13|0)<=(0); - if ($14) { - STACKTOP = sp;return; - } - } - while(1) { - $15 = HEAP32[$1>>2]|0; - $16 = (($15) + -1)|0; - HEAP32[$1>>2] = $16; - $17 = ($15|0)>(0); - if (!($17)) { - break; - } - $18 = HEAP32[$0>>2]|0; - $19 = (($18) + 12|0); - $20 = HEAP32[$19>>2]|0; - $21 = (($20) + 1)|0; - HEAP32[$19>>2] = $21; - $22 = HEAP32[$0>>2]|0; - $23 = (($22) + 8|0); - $24 = HEAP32[$23>>2]|0; - $25 = (($24) + ($20)|0); - HEAP8[$25>>0] = 32; - } - STACKTOP = sp;return; -} -function _malloc($bytes) { - $bytes = $bytes|0; - var $$$i = 0, $$3$i = 0, $$4$i = 0, $$pre = 0, $$pre$i = 0, $$pre$i$i = 0, $$pre$i25 = 0, $$pre$i25$i = 0, $$pre$phi$i$iZ2D = 0, $$pre$phi$i26$iZ2D = 0, $$pre$phi$i26Z2D = 0, $$pre$phi$iZ2D = 0, $$pre$phi58$i$iZ2D = 0, $$pre$phiZ2D = 0, $$pre57$i$i = 0, $$rsize$0$i = 0, $$rsize$3$i = 0, $$sum = 0, $$sum$i$i = 0, $$sum$i$i$i = 0; - var $$sum$i14$i = 0, $$sum$i15$i = 0, $$sum$i18$i = 0, $$sum$i21$i = 0, $$sum$i2334 = 0, $$sum$i32 = 0, $$sum$i35 = 0, $$sum1 = 0, $$sum1$i = 0, $$sum1$i$i = 0, $$sum1$i16$i = 0, $$sum1$i22$i = 0, $$sum1$i24 = 0, $$sum10 = 0, $$sum10$i = 0, $$sum10$i$i = 0, $$sum10$pre$i$i = 0, $$sum107$i = 0, $$sum108$i = 0, $$sum109$i = 0; - var $$sum11$i = 0, $$sum11$i$i = 0, $$sum11$i24$i = 0, $$sum110$i = 0, $$sum111$i = 0, $$sum1112 = 0, $$sum112$i = 0, $$sum113$i = 0, $$sum114$i = 0, $$sum115$i = 0, $$sum116$i = 0, $$sum117$i = 0, $$sum118$i = 0, $$sum119$i = 0, $$sum12$i = 0, $$sum12$i$i = 0, $$sum120$i = 0, $$sum13$i = 0, $$sum13$i$i = 0, $$sum14$i$i = 0; - var $$sum14$pre$i = 0, $$sum15$i = 0, $$sum15$i$i = 0, $$sum16$i = 0, $$sum16$i$i = 0, $$sum17$i = 0, $$sum17$i$i = 0, $$sum18$i = 0, $$sum1819$i$i = 0, $$sum2 = 0, $$sum2$i = 0, $$sum2$i$i = 0, $$sum2$i$i$i = 0, $$sum2$i17$i = 0, $$sum2$i19$i = 0, $$sum2$i23$i = 0, $$sum2$pre$i = 0, $$sum20$i$i = 0, $$sum21$i$i = 0, $$sum22$i$i = 0; - var $$sum23$i$i = 0, $$sum24$i$i = 0, $$sum25$i$i = 0, $$sum26$pre$i$i = 0, $$sum27$i$i = 0, $$sum28$i$i = 0, $$sum29$i$i = 0, $$sum3$i = 0, $$sum3$i$i = 0, $$sum3$i27 = 0, $$sum30$i$i = 0, $$sum3132$i$i = 0, $$sum34$i$i = 0, $$sum3536$i$i = 0, $$sum3738$i$i = 0, $$sum39$i$i = 0, $$sum4 = 0, $$sum4$i = 0, $$sum4$i28 = 0, $$sum40$i$i = 0; - var $$sum41$i$i = 0, $$sum42$i$i = 0, $$sum5$i = 0, $$sum5$i$i = 0, $$sum56 = 0, $$sum6$i = 0, $$sum67$i$i = 0, $$sum7$i = 0, $$sum8$i = 0, $$sum8$pre = 0, $$sum9 = 0, $$sum9$i = 0, $$sum9$i$i = 0, $$tsize$1$i = 0, $$v$0$i = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0; - var $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0, $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0; - var $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0, $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0; - var $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0, $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0; - var $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0, $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0; - var $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0; - var $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0; - var $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0; - var $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0; - var $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0; - var $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0; - var $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0; - var $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0; - var $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0; - var $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0; - var $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0; - var $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0; - var $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0; - var $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0; - var $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0; - var $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0; - var $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0; - var $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0; - var $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0; - var $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0; - var $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0; - var $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0; - var $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0; - var $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0; - var $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0; - var $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0; - var $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0; - var $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0; - var $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0; - var $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0; - var $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0; - var $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0; - var $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0; - var $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0; - var $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0; - var $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0; - var $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0; - var $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0; - var $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0; - var $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0; - var $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0; - var $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0; - var $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0; - var $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0; - var $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0; - var $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0; - var $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0; - var $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0; - var $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0; - var $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $F$0$i$i = 0, $F1$0$i = 0, $F4$0 = 0, $F4$0$i$i = 0, $F5$0$i = 0; - var $I1$0$c$i$i = 0, $I1$0$i$i = 0, $I7$0$i = 0, $I7$0$i$i = 0, $K12$025$i = 0, $K2$014$i$i = 0, $K8$052$i$i = 0, $R$0$i = 0, $R$0$i$i = 0, $R$0$i18 = 0, $R$1$i = 0, $R$1$i$i = 0, $R$1$i20 = 0, $RP$0$i = 0, $RP$0$i$i = 0, $RP$0$i17 = 0, $T$0$lcssa$i = 0, $T$0$lcssa$i$i = 0, $T$0$lcssa$i28$i = 0, $T$013$i$i = 0; - var $T$024$i = 0, $T$051$i$i = 0, $br$0$i = 0, $cond$i = 0, $cond$i$i = 0, $cond$i21 = 0, $exitcond$i$i = 0, $i$02$i$i = 0, $idx$0$i = 0, $mem$0 = 0, $nb$0 = 0, $notlhs$i = 0, $notrhs$i = 0, $oldfirst$0$i$i = 0, $or$cond$i = 0, $or$cond$i29 = 0, $or$cond1$i = 0, $or$cond10$i = 0, $or$cond19$i = 0, $or$cond2$i = 0; - var $or$cond49$i = 0, $or$cond5$i = 0, $or$cond6$i = 0, $or$cond8$not$i = 0, $or$cond9$i = 0, $qsize$0$i$i = 0, $rsize$0$i = 0, $rsize$0$i15 = 0, $rsize$1$i = 0, $rsize$2$i = 0, $rsize$3$lcssa$i = 0, $rsize$329$i = 0, $rst$0$i = 0, $rst$1$i = 0, $sizebits$0$i = 0, $sp$0$i$i = 0, $sp$0$i$i$i = 0, $sp$075$i = 0, $sp$168$i = 0, $ssize$0$$i = 0; - var $ssize$0$i = 0, $ssize$1$i = 0, $ssize$2$i = 0, $t$0$i = 0, $t$0$i14 = 0, $t$1$i = 0, $t$2$ph$i = 0, $t$2$v$3$i = 0, $t$228$i = 0, $tbase$0$i = 0, $tbase$247$i = 0, $tsize$0$i = 0, $tsize$0323841$i = 0, $tsize$1$i = 0, $tsize$246$i = 0, $v$0$i = 0, $v$0$i16 = 0, $v$1$i = 0, $v$2$i = 0, $v$3$lcssa$i = 0; - var $v$330$i = 0, label = 0, sp = 0; - sp = STACKTOP; - $0 = ($bytes>>>0)<(245); - do { - if ($0) { - $1 = ($bytes>>>0)<(11); - if ($1) { - $5 = 16; - } else { - $2 = (($bytes) + 11)|0; - $3 = $2 & -8; - $5 = $3; - } - $4 = $5 >>> 3; - $6 = HEAP32[38872>>2]|0; - $7 = $6 >>> $4; - $8 = $7 & 3; - $9 = ($8|0)==(0); - if (!($9)) { - $10 = $7 & 1; - $11 = $10 ^ 1; - $12 = (($11) + ($4))|0; - $13 = $12 << 1; - $14 = ((38872 + ($13<<2)|0) + 40|0); - $$sum10 = (($13) + 2)|0; - $15 = ((38872 + ($$sum10<<2)|0) + 40|0); - $16 = HEAP32[$15>>2]|0; - $17 = (($16) + 8|0); - $18 = HEAP32[$17>>2]|0; - $19 = ($14|0)==($18|0); - do { - if ($19) { - $20 = 1 << $12; - $21 = $20 ^ -1; - $22 = $6 & $21; - HEAP32[38872>>2] = $22; - } else { - $23 = HEAP32[((38872 + 16|0))>>2]|0; - $24 = ($18>>>0)<($23>>>0); - if ($24) { - _abort(); - // unreachable; - } - $25 = (($18) + 12|0); - $26 = HEAP32[$25>>2]|0; - $27 = ($26|0)==($16|0); - if ($27) { - HEAP32[$25>>2] = $14; - HEAP32[$15>>2] = $18; - break; - } else { - _abort(); - // unreachable; - } - } - } while(0); - $28 = $12 << 3; - $29 = $28 | 3; - $30 = (($16) + 4|0); - HEAP32[$30>>2] = $29; - $$sum1112 = $28 | 4; - $31 = (($16) + ($$sum1112)|0); - $32 = HEAP32[$31>>2]|0; - $33 = $32 | 1; - HEAP32[$31>>2] = $33; - $mem$0 = $17; - STACKTOP = sp;return ($mem$0|0); - } - $34 = HEAP32[((38872 + 8|0))>>2]|0; - $35 = ($5>>>0)>($34>>>0); - if ($35) { - $36 = ($7|0)==(0); - if (!($36)) { - $37 = $7 << $4; - $38 = 2 << $4; - $39 = (0 - ($38))|0; - $40 = $38 | $39; - $41 = $37 & $40; - $42 = (0 - ($41))|0; - $43 = $41 & $42; - $44 = (($43) + -1)|0; - $45 = $44 >>> 12; - $46 = $45 & 16; - $47 = $44 >>> $46; - $48 = $47 >>> 5; - $49 = $48 & 8; - $50 = $49 | $46; - $51 = $47 >>> $49; - $52 = $51 >>> 2; - $53 = $52 & 4; - $54 = $50 | $53; - $55 = $51 >>> $53; - $56 = $55 >>> 1; - $57 = $56 & 2; - $58 = $54 | $57; - $59 = $55 >>> $57; - $60 = $59 >>> 1; - $61 = $60 & 1; - $62 = $58 | $61; - $63 = $59 >>> $61; - $64 = (($62) + ($63))|0; - $65 = $64 << 1; - $66 = ((38872 + ($65<<2)|0) + 40|0); - $$sum4 = (($65) + 2)|0; - $67 = ((38872 + ($$sum4<<2)|0) + 40|0); - $68 = HEAP32[$67>>2]|0; - $69 = (($68) + 8|0); - $70 = HEAP32[$69>>2]|0; - $71 = ($66|0)==($70|0); - do { - if ($71) { - $72 = 1 << $64; - $73 = $72 ^ -1; - $74 = $6 & $73; - HEAP32[38872>>2] = $74; - } else { - $75 = HEAP32[((38872 + 16|0))>>2]|0; - $76 = ($70>>>0)<($75>>>0); - if ($76) { - _abort(); - // unreachable; - } - $77 = (($70) + 12|0); - $78 = HEAP32[$77>>2]|0; - $79 = ($78|0)==($68|0); - if ($79) { - HEAP32[$77>>2] = $66; - HEAP32[$67>>2] = $70; - break; - } else { - _abort(); - // unreachable; - } - } - } while(0); - $80 = $64 << 3; - $81 = (($80) - ($5))|0; - $82 = $5 | 3; - $83 = (($68) + 4|0); - HEAP32[$83>>2] = $82; - $84 = (($68) + ($5)|0); - $85 = $81 | 1; - $$sum56 = $5 | 4; - $86 = (($68) + ($$sum56)|0); - HEAP32[$86>>2] = $85; - $87 = (($68) + ($80)|0); - HEAP32[$87>>2] = $81; - $88 = HEAP32[((38872 + 8|0))>>2]|0; - $89 = ($88|0)==(0); - if (!($89)) { - $90 = HEAP32[((38872 + 20|0))>>2]|0; - $91 = $88 >>> 3; - $92 = $91 << 1; - $93 = ((38872 + ($92<<2)|0) + 40|0); - $94 = HEAP32[38872>>2]|0; - $95 = 1 << $91; - $96 = $94 & $95; - $97 = ($96|0)==(0); - if ($97) { - $98 = $94 | $95; - HEAP32[38872>>2] = $98; - $$sum8$pre = (($92) + 2)|0; - $$pre = ((38872 + ($$sum8$pre<<2)|0) + 40|0); - $$pre$phiZ2D = $$pre;$F4$0 = $93; - } else { - $$sum9 = (($92) + 2)|0; - $99 = ((38872 + ($$sum9<<2)|0) + 40|0); - $100 = HEAP32[$99>>2]|0; - $101 = HEAP32[((38872 + 16|0))>>2]|0; - $102 = ($100>>>0)<($101>>>0); - if ($102) { - _abort(); - // unreachable; - } else { - $$pre$phiZ2D = $99;$F4$0 = $100; - } - } - HEAP32[$$pre$phiZ2D>>2] = $90; - $103 = (($F4$0) + 12|0); - HEAP32[$103>>2] = $90; - $104 = (($90) + 8|0); - HEAP32[$104>>2] = $F4$0; - $105 = (($90) + 12|0); - HEAP32[$105>>2] = $93; - } - HEAP32[((38872 + 8|0))>>2] = $81; - HEAP32[((38872 + 20|0))>>2] = $84; - $mem$0 = $69; - STACKTOP = sp;return ($mem$0|0); - } - $106 = HEAP32[((38872 + 4|0))>>2]|0; - $107 = ($106|0)==(0); - if ($107) { - $nb$0 = $5; - } else { - $108 = (0 - ($106))|0; - $109 = $106 & $108; - $110 = (($109) + -1)|0; - $111 = $110 >>> 12; - $112 = $111 & 16; - $113 = $110 >>> $112; - $114 = $113 >>> 5; - $115 = $114 & 8; - $116 = $115 | $112; - $117 = $113 >>> $115; - $118 = $117 >>> 2; - $119 = $118 & 4; - $120 = $116 | $119; - $121 = $117 >>> $119; - $122 = $121 >>> 1; - $123 = $122 & 2; - $124 = $120 | $123; - $125 = $121 >>> $123; - $126 = $125 >>> 1; - $127 = $126 & 1; - $128 = $124 | $127; - $129 = $125 >>> $127; - $130 = (($128) + ($129))|0; - $131 = ((38872 + ($130<<2)|0) + 304|0); - $132 = HEAP32[$131>>2]|0; - $133 = (($132) + 4|0); - $134 = HEAP32[$133>>2]|0; - $135 = $134 & -8; - $136 = (($135) - ($5))|0; - $rsize$0$i = $136;$t$0$i = $132;$v$0$i = $132; - while(1) { - $137 = (($t$0$i) + 16|0); - $138 = HEAP32[$137>>2]|0; - $139 = ($138|0)==(0|0); - if ($139) { - $140 = (($t$0$i) + 20|0); - $141 = HEAP32[$140>>2]|0; - $142 = ($141|0)==(0|0); - if ($142) { - break; - } else { - $144 = $141; - } - } else { - $144 = $138; - } - $143 = (($144) + 4|0); - $145 = HEAP32[$143>>2]|0; - $146 = $145 & -8; - $147 = (($146) - ($5))|0; - $148 = ($147>>>0)<($rsize$0$i>>>0); - $$rsize$0$i = $148 ? $147 : $rsize$0$i; - $$v$0$i = $148 ? $144 : $v$0$i; - $rsize$0$i = $$rsize$0$i;$t$0$i = $144;$v$0$i = $$v$0$i; - } - $149 = HEAP32[((38872 + 16|0))>>2]|0; - $150 = ($v$0$i>>>0)<($149>>>0); - if ($150) { - _abort(); - // unreachable; - } - $151 = (($v$0$i) + ($5)|0); - $152 = ($v$0$i>>>0)<($151>>>0); - if (!($152)) { - _abort(); - // unreachable; - } - $153 = (($v$0$i) + 24|0); - $154 = HEAP32[$153>>2]|0; - $155 = (($v$0$i) + 12|0); - $156 = HEAP32[$155>>2]|0; - $157 = ($156|0)==($v$0$i|0); - do { - if ($157) { - $167 = (($v$0$i) + 20|0); - $168 = HEAP32[$167>>2]|0; - $169 = ($168|0)==(0|0); - if ($169) { - $170 = (($v$0$i) + 16|0); - $171 = HEAP32[$170>>2]|0; - $172 = ($171|0)==(0|0); - if ($172) { - $R$1$i = 0; - break; - } else { - $R$0$i = $171;$RP$0$i = $170; - } - } else { - $R$0$i = $168;$RP$0$i = $167; - } - while(1) { - $173 = (($R$0$i) + 20|0); - $174 = HEAP32[$173>>2]|0; - $175 = ($174|0)==(0|0); - if (!($175)) { - $R$0$i = $174;$RP$0$i = $173; - continue; - } - $176 = (($R$0$i) + 16|0); - $177 = HEAP32[$176>>2]|0; - $178 = ($177|0)==(0|0); - if ($178) { - break; - } else { - $R$0$i = $177;$RP$0$i = $176; - } - } - $179 = ($RP$0$i>>>0)<($149>>>0); - if ($179) { - _abort(); - // unreachable; - } else { - HEAP32[$RP$0$i>>2] = 0; - $R$1$i = $R$0$i; - break; - } - } else { - $158 = (($v$0$i) + 8|0); - $159 = HEAP32[$158>>2]|0; - $160 = ($159>>>0)<($149>>>0); - if ($160) { - _abort(); - // unreachable; - } - $161 = (($159) + 12|0); - $162 = HEAP32[$161>>2]|0; - $163 = ($162|0)==($v$0$i|0); - if (!($163)) { - _abort(); - // unreachable; - } - $164 = (($156) + 8|0); - $165 = HEAP32[$164>>2]|0; - $166 = ($165|0)==($v$0$i|0); - if ($166) { - HEAP32[$161>>2] = $156; - HEAP32[$164>>2] = $159; - $R$1$i = $156; - break; - } else { - _abort(); - // unreachable; - } - } - } while(0); - $180 = ($154|0)==(0|0); - do { - if (!($180)) { - $181 = (($v$0$i) + 28|0); - $182 = HEAP32[$181>>2]|0; - $183 = ((38872 + ($182<<2)|0) + 304|0); - $184 = HEAP32[$183>>2]|0; - $185 = ($v$0$i|0)==($184|0); - if ($185) { - HEAP32[$183>>2] = $R$1$i; - $cond$i = ($R$1$i|0)==(0|0); - if ($cond$i) { - $186 = 1 << $182; - $187 = $186 ^ -1; - $188 = HEAP32[((38872 + 4|0))>>2]|0; - $189 = $188 & $187; - HEAP32[((38872 + 4|0))>>2] = $189; - break; - } - } else { - $190 = HEAP32[((38872 + 16|0))>>2]|0; - $191 = ($154>>>0)<($190>>>0); - if ($191) { - _abort(); - // unreachable; - } - $192 = (($154) + 16|0); - $193 = HEAP32[$192>>2]|0; - $194 = ($193|0)==($v$0$i|0); - if ($194) { - HEAP32[$192>>2] = $R$1$i; - } else { - $195 = (($154) + 20|0); - HEAP32[$195>>2] = $R$1$i; - } - $196 = ($R$1$i|0)==(0|0); - if ($196) { - break; - } - } - $197 = HEAP32[((38872 + 16|0))>>2]|0; - $198 = ($R$1$i>>>0)<($197>>>0); - if ($198) { - _abort(); - // unreachable; - } - $199 = (($R$1$i) + 24|0); - HEAP32[$199>>2] = $154; - $200 = (($v$0$i) + 16|0); - $201 = HEAP32[$200>>2]|0; - $202 = ($201|0)==(0|0); - do { - if (!($202)) { - $203 = HEAP32[((38872 + 16|0))>>2]|0; - $204 = ($201>>>0)<($203>>>0); - if ($204) { - _abort(); - // unreachable; - } else { - $205 = (($R$1$i) + 16|0); - HEAP32[$205>>2] = $201; - $206 = (($201) + 24|0); - HEAP32[$206>>2] = $R$1$i; - break; - } - } - } while(0); - $207 = (($v$0$i) + 20|0); - $208 = HEAP32[$207>>2]|0; - $209 = ($208|0)==(0|0); - if (!($209)) { - $210 = HEAP32[((38872 + 16|0))>>2]|0; - $211 = ($208>>>0)<($210>>>0); - if ($211) { - _abort(); - // unreachable; - } else { - $212 = (($R$1$i) + 20|0); - HEAP32[$212>>2] = $208; - $213 = (($208) + 24|0); - HEAP32[$213>>2] = $R$1$i; - break; - } - } - } - } while(0); - $214 = ($rsize$0$i>>>0)<(16); - if ($214) { - $215 = (($rsize$0$i) + ($5))|0; - $216 = $215 | 3; - $217 = (($v$0$i) + 4|0); - HEAP32[$217>>2] = $216; - $$sum4$i = (($215) + 4)|0; - $218 = (($v$0$i) + ($$sum4$i)|0); - $219 = HEAP32[$218>>2]|0; - $220 = $219 | 1; - HEAP32[$218>>2] = $220; - } else { - $221 = $5 | 3; - $222 = (($v$0$i) + 4|0); - HEAP32[$222>>2] = $221; - $223 = $rsize$0$i | 1; - $$sum$i35 = $5 | 4; - $224 = (($v$0$i) + ($$sum$i35)|0); - HEAP32[$224>>2] = $223; - $$sum1$i = (($rsize$0$i) + ($5))|0; - $225 = (($v$0$i) + ($$sum1$i)|0); - HEAP32[$225>>2] = $rsize$0$i; - $226 = HEAP32[((38872 + 8|0))>>2]|0; - $227 = ($226|0)==(0); - if (!($227)) { - $228 = HEAP32[((38872 + 20|0))>>2]|0; - $229 = $226 >>> 3; - $230 = $229 << 1; - $231 = ((38872 + ($230<<2)|0) + 40|0); - $232 = HEAP32[38872>>2]|0; - $233 = 1 << $229; - $234 = $232 & $233; - $235 = ($234|0)==(0); - if ($235) { - $236 = $232 | $233; - HEAP32[38872>>2] = $236; - $$sum2$pre$i = (($230) + 2)|0; - $$pre$i = ((38872 + ($$sum2$pre$i<<2)|0) + 40|0); - $$pre$phi$iZ2D = $$pre$i;$F1$0$i = $231; - } else { - $$sum3$i = (($230) + 2)|0; - $237 = ((38872 + ($$sum3$i<<2)|0) + 40|0); - $238 = HEAP32[$237>>2]|0; - $239 = HEAP32[((38872 + 16|0))>>2]|0; - $240 = ($238>>>0)<($239>>>0); - if ($240) { - _abort(); - // unreachable; - } else { - $$pre$phi$iZ2D = $237;$F1$0$i = $238; - } - } - HEAP32[$$pre$phi$iZ2D>>2] = $228; - $241 = (($F1$0$i) + 12|0); - HEAP32[$241>>2] = $228; - $242 = (($228) + 8|0); - HEAP32[$242>>2] = $F1$0$i; - $243 = (($228) + 12|0); - HEAP32[$243>>2] = $231; - } - HEAP32[((38872 + 8|0))>>2] = $rsize$0$i; - HEAP32[((38872 + 20|0))>>2] = $151; - } - $244 = (($v$0$i) + 8|0); - $mem$0 = $244; - STACKTOP = sp;return ($mem$0|0); - } - } else { - $nb$0 = $5; - } - } else { - $245 = ($bytes>>>0)>(4294967231); - if ($245) { - $nb$0 = -1; - } else { - $246 = (($bytes) + 11)|0; - $247 = $246 & -8; - $248 = HEAP32[((38872 + 4|0))>>2]|0; - $249 = ($248|0)==(0); - if ($249) { - $nb$0 = $247; - } else { - $250 = (0 - ($247))|0; - $251 = $246 >>> 8; - $252 = ($251|0)==(0); - if ($252) { - $idx$0$i = 0; - } else { - $253 = ($247>>>0)>(16777215); - if ($253) { - $idx$0$i = 31; - } else { - $254 = (($251) + 1048320)|0; - $255 = $254 >>> 16; - $256 = $255 & 8; - $257 = $251 << $256; - $258 = (($257) + 520192)|0; - $259 = $258 >>> 16; - $260 = $259 & 4; - $261 = $260 | $256; - $262 = $257 << $260; - $263 = (($262) + 245760)|0; - $264 = $263 >>> 16; - $265 = $264 & 2; - $266 = $261 | $265; - $267 = (14 - ($266))|0; - $268 = $262 << $265; - $269 = $268 >>> 15; - $270 = (($267) + ($269))|0; - $271 = $270 << 1; - $272 = (($270) + 7)|0; - $273 = $247 >>> $272; - $274 = $273 & 1; - $275 = $274 | $271; - $idx$0$i = $275; - } - } - $276 = ((38872 + ($idx$0$i<<2)|0) + 304|0); - $277 = HEAP32[$276>>2]|0; - $278 = ($277|0)==(0|0); - L9: do { - if ($278) { - $rsize$2$i = $250;$t$1$i = 0;$v$2$i = 0; - } else { - $279 = ($idx$0$i|0)==(31); - if ($279) { - $283 = 0; - } else { - $280 = $idx$0$i >>> 1; - $281 = (25 - ($280))|0; - $283 = $281; - } - $282 = $247 << $283; - $rsize$0$i15 = $250;$rst$0$i = 0;$sizebits$0$i = $282;$t$0$i14 = $277;$v$0$i16 = 0; - while(1) { - $284 = (($t$0$i14) + 4|0); - $285 = HEAP32[$284>>2]|0; - $286 = $285 & -8; - $287 = (($286) - ($247))|0; - $288 = ($287>>>0)<($rsize$0$i15>>>0); - if ($288) { - $289 = ($286|0)==($247|0); - if ($289) { - $rsize$2$i = $287;$t$1$i = $t$0$i14;$v$2$i = $t$0$i14; - break L9; - } else { - $rsize$1$i = $287;$v$1$i = $t$0$i14; - } - } else { - $rsize$1$i = $rsize$0$i15;$v$1$i = $v$0$i16; - } - $290 = (($t$0$i14) + 20|0); - $291 = HEAP32[$290>>2]|0; - $292 = $sizebits$0$i >>> 31; - $293 = ((($t$0$i14) + ($292<<2)|0) + 16|0); - $294 = HEAP32[$293>>2]|0; - $295 = ($291|0)==(0|0); - $296 = ($291|0)==($294|0); - $or$cond$i = $295 | $296; - $rst$1$i = $or$cond$i ? $rst$0$i : $291; - $297 = ($294|0)==(0|0); - $298 = $sizebits$0$i << 1; - if ($297) { - $rsize$2$i = $rsize$1$i;$t$1$i = $rst$1$i;$v$2$i = $v$1$i; - break; - } else { - $rsize$0$i15 = $rsize$1$i;$rst$0$i = $rst$1$i;$sizebits$0$i = $298;$t$0$i14 = $294;$v$0$i16 = $v$1$i; - } - } - } - } while(0); - $299 = ($t$1$i|0)==(0|0); - $300 = ($v$2$i|0)==(0|0); - $or$cond19$i = $299 & $300; - if ($or$cond19$i) { - $301 = 2 << $idx$0$i; - $302 = (0 - ($301))|0; - $303 = $301 | $302; - $304 = $248 & $303; - $305 = ($304|0)==(0); - if ($305) { - $nb$0 = $247; - break; - } - $306 = (0 - ($304))|0; - $307 = $304 & $306; - $308 = (($307) + -1)|0; - $309 = $308 >>> 12; - $310 = $309 & 16; - $311 = $308 >>> $310; - $312 = $311 >>> 5; - $313 = $312 & 8; - $314 = $313 | $310; - $315 = $311 >>> $313; - $316 = $315 >>> 2; - $317 = $316 & 4; - $318 = $314 | $317; - $319 = $315 >>> $317; - $320 = $319 >>> 1; - $321 = $320 & 2; - $322 = $318 | $321; - $323 = $319 >>> $321; - $324 = $323 >>> 1; - $325 = $324 & 1; - $326 = $322 | $325; - $327 = $323 >>> $325; - $328 = (($326) + ($327))|0; - $329 = ((38872 + ($328<<2)|0) + 304|0); - $330 = HEAP32[$329>>2]|0; - $t$2$ph$i = $330; - } else { - $t$2$ph$i = $t$1$i; - } - $331 = ($t$2$ph$i|0)==(0|0); - if ($331) { - $rsize$3$lcssa$i = $rsize$2$i;$v$3$lcssa$i = $v$2$i; - } else { - $rsize$329$i = $rsize$2$i;$t$228$i = $t$2$ph$i;$v$330$i = $v$2$i; - while(1) { - $332 = (($t$228$i) + 4|0); - $333 = HEAP32[$332>>2]|0; - $334 = $333 & -8; - $335 = (($334) - ($247))|0; - $336 = ($335>>>0)<($rsize$329$i>>>0); - $$rsize$3$i = $336 ? $335 : $rsize$329$i; - $t$2$v$3$i = $336 ? $t$228$i : $v$330$i; - $337 = (($t$228$i) + 16|0); - $338 = HEAP32[$337>>2]|0; - $339 = ($338|0)==(0|0); - if (!($339)) { - $rsize$329$i = $$rsize$3$i;$t$228$i = $338;$v$330$i = $t$2$v$3$i; - continue; - } - $340 = (($t$228$i) + 20|0); - $341 = HEAP32[$340>>2]|0; - $342 = ($341|0)==(0|0); - if ($342) { - $rsize$3$lcssa$i = $$rsize$3$i;$v$3$lcssa$i = $t$2$v$3$i; - break; - } else { - $rsize$329$i = $$rsize$3$i;$t$228$i = $341;$v$330$i = $t$2$v$3$i; - } - } - } - $343 = ($v$3$lcssa$i|0)==(0|0); - if ($343) { - $nb$0 = $247; - } else { - $344 = HEAP32[((38872 + 8|0))>>2]|0; - $345 = (($344) - ($247))|0; - $346 = ($rsize$3$lcssa$i>>>0)<($345>>>0); - if ($346) { - $347 = HEAP32[((38872 + 16|0))>>2]|0; - $348 = ($v$3$lcssa$i>>>0)<($347>>>0); - if ($348) { - _abort(); - // unreachable; - } - $349 = (($v$3$lcssa$i) + ($247)|0); - $350 = ($v$3$lcssa$i>>>0)<($349>>>0); - if (!($350)) { - _abort(); - // unreachable; - } - $351 = (($v$3$lcssa$i) + 24|0); - $352 = HEAP32[$351>>2]|0; - $353 = (($v$3$lcssa$i) + 12|0); - $354 = HEAP32[$353>>2]|0; - $355 = ($354|0)==($v$3$lcssa$i|0); - do { - if ($355) { - $365 = (($v$3$lcssa$i) + 20|0); - $366 = HEAP32[$365>>2]|0; - $367 = ($366|0)==(0|0); - if ($367) { - $368 = (($v$3$lcssa$i) + 16|0); - $369 = HEAP32[$368>>2]|0; - $370 = ($369|0)==(0|0); - if ($370) { - $R$1$i20 = 0; - break; - } else { - $R$0$i18 = $369;$RP$0$i17 = $368; - } - } else { - $R$0$i18 = $366;$RP$0$i17 = $365; - } - while(1) { - $371 = (($R$0$i18) + 20|0); - $372 = HEAP32[$371>>2]|0; - $373 = ($372|0)==(0|0); - if (!($373)) { - $R$0$i18 = $372;$RP$0$i17 = $371; - continue; - } - $374 = (($R$0$i18) + 16|0); - $375 = HEAP32[$374>>2]|0; - $376 = ($375|0)==(0|0); - if ($376) { - break; - } else { - $R$0$i18 = $375;$RP$0$i17 = $374; - } - } - $377 = ($RP$0$i17>>>0)<($347>>>0); - if ($377) { - _abort(); - // unreachable; - } else { - HEAP32[$RP$0$i17>>2] = 0; - $R$1$i20 = $R$0$i18; - break; - } - } else { - $356 = (($v$3$lcssa$i) + 8|0); - $357 = HEAP32[$356>>2]|0; - $358 = ($357>>>0)<($347>>>0); - if ($358) { - _abort(); - // unreachable; - } - $359 = (($357) + 12|0); - $360 = HEAP32[$359>>2]|0; - $361 = ($360|0)==($v$3$lcssa$i|0); - if (!($361)) { - _abort(); - // unreachable; - } - $362 = (($354) + 8|0); - $363 = HEAP32[$362>>2]|0; - $364 = ($363|0)==($v$3$lcssa$i|0); - if ($364) { - HEAP32[$359>>2] = $354; - HEAP32[$362>>2] = $357; - $R$1$i20 = $354; - break; - } else { - _abort(); - // unreachable; - } - } - } while(0); - $378 = ($352|0)==(0|0); - do { - if (!($378)) { - $379 = (($v$3$lcssa$i) + 28|0); - $380 = HEAP32[$379>>2]|0; - $381 = ((38872 + ($380<<2)|0) + 304|0); - $382 = HEAP32[$381>>2]|0; - $383 = ($v$3$lcssa$i|0)==($382|0); - if ($383) { - HEAP32[$381>>2] = $R$1$i20; - $cond$i21 = ($R$1$i20|0)==(0|0); - if ($cond$i21) { - $384 = 1 << $380; - $385 = $384 ^ -1; - $386 = HEAP32[((38872 + 4|0))>>2]|0; - $387 = $386 & $385; - HEAP32[((38872 + 4|0))>>2] = $387; - break; - } - } else { - $388 = HEAP32[((38872 + 16|0))>>2]|0; - $389 = ($352>>>0)<($388>>>0); - if ($389) { - _abort(); - // unreachable; - } - $390 = (($352) + 16|0); - $391 = HEAP32[$390>>2]|0; - $392 = ($391|0)==($v$3$lcssa$i|0); - if ($392) { - HEAP32[$390>>2] = $R$1$i20; - } else { - $393 = (($352) + 20|0); - HEAP32[$393>>2] = $R$1$i20; - } - $394 = ($R$1$i20|0)==(0|0); - if ($394) { - break; - } - } - $395 = HEAP32[((38872 + 16|0))>>2]|0; - $396 = ($R$1$i20>>>0)<($395>>>0); - if ($396) { - _abort(); - // unreachable; - } - $397 = (($R$1$i20) + 24|0); - HEAP32[$397>>2] = $352; - $398 = (($v$3$lcssa$i) + 16|0); - $399 = HEAP32[$398>>2]|0; - $400 = ($399|0)==(0|0); - do { - if (!($400)) { - $401 = HEAP32[((38872 + 16|0))>>2]|0; - $402 = ($399>>>0)<($401>>>0); - if ($402) { - _abort(); - // unreachable; - } else { - $403 = (($R$1$i20) + 16|0); - HEAP32[$403>>2] = $399; - $404 = (($399) + 24|0); - HEAP32[$404>>2] = $R$1$i20; - break; - } - } - } while(0); - $405 = (($v$3$lcssa$i) + 20|0); - $406 = HEAP32[$405>>2]|0; - $407 = ($406|0)==(0|0); - if (!($407)) { - $408 = HEAP32[((38872 + 16|0))>>2]|0; - $409 = ($406>>>0)<($408>>>0); - if ($409) { - _abort(); - // unreachable; - } else { - $410 = (($R$1$i20) + 20|0); - HEAP32[$410>>2] = $406; - $411 = (($406) + 24|0); - HEAP32[$411>>2] = $R$1$i20; - break; - } - } - } - } while(0); - $412 = ($rsize$3$lcssa$i>>>0)<(16); - L87: do { - if ($412) { - $413 = (($rsize$3$lcssa$i) + ($247))|0; - $414 = $413 | 3; - $415 = (($v$3$lcssa$i) + 4|0); - HEAP32[$415>>2] = $414; - $$sum18$i = (($413) + 4)|0; - $416 = (($v$3$lcssa$i) + ($$sum18$i)|0); - $417 = HEAP32[$416>>2]|0; - $418 = $417 | 1; - HEAP32[$416>>2] = $418; - } else { - $419 = $247 | 3; - $420 = (($v$3$lcssa$i) + 4|0); - HEAP32[$420>>2] = $419; - $421 = $rsize$3$lcssa$i | 1; - $$sum$i2334 = $247 | 4; - $422 = (($v$3$lcssa$i) + ($$sum$i2334)|0); - HEAP32[$422>>2] = $421; - $$sum1$i24 = (($rsize$3$lcssa$i) + ($247))|0; - $423 = (($v$3$lcssa$i) + ($$sum1$i24)|0); - HEAP32[$423>>2] = $rsize$3$lcssa$i; - $424 = $rsize$3$lcssa$i >>> 3; - $425 = ($rsize$3$lcssa$i>>>0)<(256); - if ($425) { - $426 = $424 << 1; - $427 = ((38872 + ($426<<2)|0) + 40|0); - $428 = HEAP32[38872>>2]|0; - $429 = 1 << $424; - $430 = $428 & $429; - $431 = ($430|0)==(0); - do { - if ($431) { - $432 = $428 | $429; - HEAP32[38872>>2] = $432; - $$sum14$pre$i = (($426) + 2)|0; - $$pre$i25 = ((38872 + ($$sum14$pre$i<<2)|0) + 40|0); - $$pre$phi$i26Z2D = $$pre$i25;$F5$0$i = $427; - } else { - $$sum17$i = (($426) + 2)|0; - $433 = ((38872 + ($$sum17$i<<2)|0) + 40|0); - $434 = HEAP32[$433>>2]|0; - $435 = HEAP32[((38872 + 16|0))>>2]|0; - $436 = ($434>>>0)<($435>>>0); - if (!($436)) { - $$pre$phi$i26Z2D = $433;$F5$0$i = $434; - break; - } - _abort(); - // unreachable; - } - } while(0); - HEAP32[$$pre$phi$i26Z2D>>2] = $349; - $437 = (($F5$0$i) + 12|0); - HEAP32[$437>>2] = $349; - $$sum15$i = (($247) + 8)|0; - $438 = (($v$3$lcssa$i) + ($$sum15$i)|0); - HEAP32[$438>>2] = $F5$0$i; - $$sum16$i = (($247) + 12)|0; - $439 = (($v$3$lcssa$i) + ($$sum16$i)|0); - HEAP32[$439>>2] = $427; - break; - } - $440 = $rsize$3$lcssa$i >>> 8; - $441 = ($440|0)==(0); - if ($441) { - $I7$0$i = 0; - } else { - $442 = ($rsize$3$lcssa$i>>>0)>(16777215); - if ($442) { - $I7$0$i = 31; - } else { - $443 = (($440) + 1048320)|0; - $444 = $443 >>> 16; - $445 = $444 & 8; - $446 = $440 << $445; - $447 = (($446) + 520192)|0; - $448 = $447 >>> 16; - $449 = $448 & 4; - $450 = $449 | $445; - $451 = $446 << $449; - $452 = (($451) + 245760)|0; - $453 = $452 >>> 16; - $454 = $453 & 2; - $455 = $450 | $454; - $456 = (14 - ($455))|0; - $457 = $451 << $454; - $458 = $457 >>> 15; - $459 = (($456) + ($458))|0; - $460 = $459 << 1; - $461 = (($459) + 7)|0; - $462 = $rsize$3$lcssa$i >>> $461; - $463 = $462 & 1; - $464 = $463 | $460; - $I7$0$i = $464; - } - } - $465 = ((38872 + ($I7$0$i<<2)|0) + 304|0); - $$sum2$i = (($247) + 28)|0; - $466 = (($v$3$lcssa$i) + ($$sum2$i)|0); - HEAP32[$466>>2] = $I7$0$i; - $$sum3$i27 = (($247) + 16)|0; - $467 = (($v$3$lcssa$i) + ($$sum3$i27)|0); - $$sum4$i28 = (($247) + 20)|0; - $468 = (($v$3$lcssa$i) + ($$sum4$i28)|0); - HEAP32[$468>>2] = 0; - HEAP32[$467>>2] = 0; - $469 = HEAP32[((38872 + 4|0))>>2]|0; - $470 = 1 << $I7$0$i; - $471 = $469 & $470; - $472 = ($471|0)==(0); - if ($472) { - $473 = $469 | $470; - HEAP32[((38872 + 4|0))>>2] = $473; - HEAP32[$465>>2] = $349; - $$sum5$i = (($247) + 24)|0; - $474 = (($v$3$lcssa$i) + ($$sum5$i)|0); - HEAP32[$474>>2] = $465; - $$sum6$i = (($247) + 12)|0; - $475 = (($v$3$lcssa$i) + ($$sum6$i)|0); - HEAP32[$475>>2] = $349; - $$sum7$i = (($247) + 8)|0; - $476 = (($v$3$lcssa$i) + ($$sum7$i)|0); - HEAP32[$476>>2] = $349; - break; - } - $477 = HEAP32[$465>>2]|0; - $478 = ($I7$0$i|0)==(31); - if ($478) { - $486 = 0; - } else { - $479 = $I7$0$i >>> 1; - $480 = (25 - ($479))|0; - $486 = $480; - } - $481 = (($477) + 4|0); - $482 = HEAP32[$481>>2]|0; - $483 = $482 & -8; - $484 = ($483|0)==($rsize$3$lcssa$i|0); - L107: do { - if ($484) { - $T$0$lcssa$i = $477; - } else { - $485 = $rsize$3$lcssa$i << $486; - $K12$025$i = $485;$T$024$i = $477; - while(1) { - $493 = $K12$025$i >>> 31; - $494 = ((($T$024$i) + ($493<<2)|0) + 16|0); - $489 = HEAP32[$494>>2]|0; - $495 = ($489|0)==(0|0); - if ($495) { - break; - } - $487 = $K12$025$i << 1; - $488 = (($489) + 4|0); - $490 = HEAP32[$488>>2]|0; - $491 = $490 & -8; - $492 = ($491|0)==($rsize$3$lcssa$i|0); - if ($492) { - $T$0$lcssa$i = $489; - break L107; - } else { - $K12$025$i = $487;$T$024$i = $489; - } - } - $496 = HEAP32[((38872 + 16|0))>>2]|0; - $497 = ($494>>>0)<($496>>>0); - if ($497) { - _abort(); - // unreachable; - } else { - HEAP32[$494>>2] = $349; - $$sum11$i = (($247) + 24)|0; - $498 = (($v$3$lcssa$i) + ($$sum11$i)|0); - HEAP32[$498>>2] = $T$024$i; - $$sum12$i = (($247) + 12)|0; - $499 = (($v$3$lcssa$i) + ($$sum12$i)|0); - HEAP32[$499>>2] = $349; - $$sum13$i = (($247) + 8)|0; - $500 = (($v$3$lcssa$i) + ($$sum13$i)|0); - HEAP32[$500>>2] = $349; - break L87; - } - } - } while(0); - $501 = (($T$0$lcssa$i) + 8|0); - $502 = HEAP32[$501>>2]|0; - $503 = HEAP32[((38872 + 16|0))>>2]|0; - $504 = ($T$0$lcssa$i>>>0)<($503>>>0); - if ($504) { - _abort(); - // unreachable; - } - $505 = ($502>>>0)<($503>>>0); - if ($505) { - _abort(); - // unreachable; - } else { - $506 = (($502) + 12|0); - HEAP32[$506>>2] = $349; - HEAP32[$501>>2] = $349; - $$sum8$i = (($247) + 8)|0; - $507 = (($v$3$lcssa$i) + ($$sum8$i)|0); - HEAP32[$507>>2] = $502; - $$sum9$i = (($247) + 12)|0; - $508 = (($v$3$lcssa$i) + ($$sum9$i)|0); - HEAP32[$508>>2] = $T$0$lcssa$i; - $$sum10$i = (($247) + 24)|0; - $509 = (($v$3$lcssa$i) + ($$sum10$i)|0); - HEAP32[$509>>2] = 0; - break; - } - } - } while(0); - $510 = (($v$3$lcssa$i) + 8|0); - $mem$0 = $510; - STACKTOP = sp;return ($mem$0|0); - } else { - $nb$0 = $247; - } - } - } - } - } - } while(0); - $511 = HEAP32[((38872 + 8|0))>>2]|0; - $512 = ($nb$0>>>0)>($511>>>0); - if (!($512)) { - $513 = (($511) - ($nb$0))|0; - $514 = HEAP32[((38872 + 20|0))>>2]|0; - $515 = ($513>>>0)>(15); - if ($515) { - $516 = (($514) + ($nb$0)|0); - HEAP32[((38872 + 20|0))>>2] = $516; - HEAP32[((38872 + 8|0))>>2] = $513; - $517 = $513 | 1; - $$sum2 = (($nb$0) + 4)|0; - $518 = (($514) + ($$sum2)|0); - HEAP32[$518>>2] = $517; - $519 = (($514) + ($511)|0); - HEAP32[$519>>2] = $513; - $520 = $nb$0 | 3; - $521 = (($514) + 4|0); - HEAP32[$521>>2] = $520; - } else { - HEAP32[((38872 + 8|0))>>2] = 0; - HEAP32[((38872 + 20|0))>>2] = 0; - $522 = $511 | 3; - $523 = (($514) + 4|0); - HEAP32[$523>>2] = $522; - $$sum1 = (($511) + 4)|0; - $524 = (($514) + ($$sum1)|0); - $525 = HEAP32[$524>>2]|0; - $526 = $525 | 1; - HEAP32[$524>>2] = $526; - } - $527 = (($514) + 8|0); - $mem$0 = $527; - STACKTOP = sp;return ($mem$0|0); - } - $528 = HEAP32[((38872 + 12|0))>>2]|0; - $529 = ($nb$0>>>0)<($528>>>0); - if ($529) { - $530 = (($528) - ($nb$0))|0; - HEAP32[((38872 + 12|0))>>2] = $530; - $531 = HEAP32[((38872 + 24|0))>>2]|0; - $532 = (($531) + ($nb$0)|0); - HEAP32[((38872 + 24|0))>>2] = $532; - $533 = $530 | 1; - $$sum = (($nb$0) + 4)|0; - $534 = (($531) + ($$sum)|0); - HEAP32[$534>>2] = $533; - $535 = $nb$0 | 3; - $536 = (($531) + 4|0); - HEAP32[$536>>2] = $535; - $537 = (($531) + 8|0); - $mem$0 = $537; - STACKTOP = sp;return ($mem$0|0); - } - $538 = HEAP32[39344>>2]|0; - $539 = ($538|0)==(0); - do { - if ($539) { - $540 = (_sysconf(30)|0); - $541 = (($540) + -1)|0; - $542 = $541 & $540; - $543 = ($542|0)==(0); - if ($543) { - HEAP32[((39344 + 8|0))>>2] = $540; - HEAP32[((39344 + 4|0))>>2] = $540; - HEAP32[((39344 + 12|0))>>2] = -1; - HEAP32[((39344 + 16|0))>>2] = -1; - HEAP32[((39344 + 20|0))>>2] = 0; - HEAP32[((38872 + 444|0))>>2] = 0; - $544 = (_time((0|0))|0); - $545 = $544 & -16; - $546 = $545 ^ 1431655768; - HEAP32[39344>>2] = $546; - break; - } else { - _abort(); - // unreachable; - } - } - } while(0); - $547 = (($nb$0) + 48)|0; - $548 = HEAP32[((39344 + 8|0))>>2]|0; - $549 = (($nb$0) + 47)|0; - $550 = (($548) + ($549))|0; - $551 = (0 - ($548))|0; - $552 = $550 & $551; - $553 = ($552>>>0)>($nb$0>>>0); - if (!($553)) { - $mem$0 = 0; - STACKTOP = sp;return ($mem$0|0); - } - $554 = HEAP32[((38872 + 440|0))>>2]|0; - $555 = ($554|0)==(0); - if (!($555)) { - $556 = HEAP32[((38872 + 432|0))>>2]|0; - $557 = (($556) + ($552))|0; - $558 = ($557>>>0)<=($556>>>0); - $559 = ($557>>>0)>($554>>>0); - $or$cond1$i = $558 | $559; - if ($or$cond1$i) { - $mem$0 = 0; - STACKTOP = sp;return ($mem$0|0); - } - } - $560 = HEAP32[((38872 + 444|0))>>2]|0; - $561 = $560 & 4; - $562 = ($561|0)==(0); - L269: do { - if ($562) { - $563 = HEAP32[((38872 + 24|0))>>2]|0; - $564 = ($563|0)==(0|0); - L271: do { - if ($564) { - label = 182; - } else { - $sp$0$i$i = ((38872 + 448|0)); - while(1) { - $565 = HEAP32[$sp$0$i$i>>2]|0; - $566 = ($565>>>0)>($563>>>0); - if (!($566)) { - $567 = (($sp$0$i$i) + 4|0); - $568 = HEAP32[$567>>2]|0; - $569 = (($565) + ($568)|0); - $570 = ($569>>>0)>($563>>>0); - if ($570) { - break; - } - } - $571 = (($sp$0$i$i) + 8|0); - $572 = HEAP32[$571>>2]|0; - $573 = ($572|0)==(0|0); - if ($573) { - label = 182; - break L271; - } else { - $sp$0$i$i = $572; - } - } - $574 = ($sp$0$i$i|0)==(0|0); - if ($574) { - label = 182; - } else { - $597 = HEAP32[((38872 + 12|0))>>2]|0; - $598 = (($550) - ($597))|0; - $599 = $598 & $551; - $600 = ($599>>>0)<(2147483647); - if ($600) { - $601 = (_sbrk(($599|0))|0); - $602 = HEAP32[$sp$0$i$i>>2]|0; - $603 = HEAP32[$567>>2]|0; - $604 = (($602) + ($603)|0); - $605 = ($601|0)==($604|0); - $$3$i = $605 ? $599 : 0; - $$4$i = $605 ? $601 : (-1); - $br$0$i = $601;$ssize$1$i = $599;$tbase$0$i = $$4$i;$tsize$0$i = $$3$i; - label = 191; - } else { - $tsize$0323841$i = 0; - } - } - } - } while(0); - do { - if ((label|0) == 182) { - $575 = (_sbrk(0)|0); - $576 = ($575|0)==((-1)|0); - if ($576) { - $tsize$0323841$i = 0; - } else { - $577 = $575; - $578 = HEAP32[((39344 + 4|0))>>2]|0; - $579 = (($578) + -1)|0; - $580 = $579 & $577; - $581 = ($580|0)==(0); - if ($581) { - $ssize$0$i = $552; - } else { - $582 = (($579) + ($577))|0; - $583 = (0 - ($578))|0; - $584 = $582 & $583; - $585 = (($552) - ($577))|0; - $586 = (($585) + ($584))|0; - $ssize$0$i = $586; - } - $587 = HEAP32[((38872 + 432|0))>>2]|0; - $588 = (($587) + ($ssize$0$i))|0; - $589 = ($ssize$0$i>>>0)>($nb$0>>>0); - $590 = ($ssize$0$i>>>0)<(2147483647); - $or$cond$i29 = $589 & $590; - if ($or$cond$i29) { - $591 = HEAP32[((38872 + 440|0))>>2]|0; - $592 = ($591|0)==(0); - if (!($592)) { - $593 = ($588>>>0)<=($587>>>0); - $594 = ($588>>>0)>($591>>>0); - $or$cond2$i = $593 | $594; - if ($or$cond2$i) { - $tsize$0323841$i = 0; - break; - } - } - $595 = (_sbrk(($ssize$0$i|0))|0); - $596 = ($595|0)==($575|0); - $ssize$0$$i = $596 ? $ssize$0$i : 0; - $$$i = $596 ? $575 : (-1); - $br$0$i = $595;$ssize$1$i = $ssize$0$i;$tbase$0$i = $$$i;$tsize$0$i = $ssize$0$$i; - label = 191; - } else { - $tsize$0323841$i = 0; - } - } - } - } while(0); - L291: do { - if ((label|0) == 191) { - $606 = (0 - ($ssize$1$i))|0; - $607 = ($tbase$0$i|0)==((-1)|0); - if (!($607)) { - $tbase$247$i = $tbase$0$i;$tsize$246$i = $tsize$0$i; - label = 202; - break L269; - } - $608 = ($br$0$i|0)!=((-1)|0); - $609 = ($ssize$1$i>>>0)<(2147483647); - $or$cond5$i = $608 & $609; - $610 = ($ssize$1$i>>>0)<($547>>>0); - $or$cond6$i = $or$cond5$i & $610; - do { - if ($or$cond6$i) { - $611 = HEAP32[((39344 + 8|0))>>2]|0; - $612 = (($549) - ($ssize$1$i))|0; - $613 = (($612) + ($611))|0; - $614 = (0 - ($611))|0; - $615 = $613 & $614; - $616 = ($615>>>0)<(2147483647); - if ($616) { - $617 = (_sbrk(($615|0))|0); - $618 = ($617|0)==((-1)|0); - if ($618) { - (_sbrk(($606|0))|0); - $tsize$0323841$i = $tsize$0$i; - break L291; - } else { - $619 = (($615) + ($ssize$1$i))|0; - $ssize$2$i = $619; - break; - } - } else { - $ssize$2$i = $ssize$1$i; - } - } else { - $ssize$2$i = $ssize$1$i; - } - } while(0); - $620 = ($br$0$i|0)==((-1)|0); - if ($620) { - $tsize$0323841$i = $tsize$0$i; - } else { - $tbase$247$i = $br$0$i;$tsize$246$i = $ssize$2$i; - label = 202; - break L269; - } - } - } while(0); - $621 = HEAP32[((38872 + 444|0))>>2]|0; - $622 = $621 | 4; - HEAP32[((38872 + 444|0))>>2] = $622; - $tsize$1$i = $tsize$0323841$i; - label = 199; - } else { - $tsize$1$i = 0; - label = 199; - } - } while(0); - if ((label|0) == 199) { - $623 = ($552>>>0)<(2147483647); - if ($623) { - $624 = (_sbrk(($552|0))|0); - $625 = (_sbrk(0)|0); - $notlhs$i = ($624|0)!=((-1)|0); - $notrhs$i = ($625|0)!=((-1)|0); - $or$cond8$not$i = $notrhs$i & $notlhs$i; - $626 = ($624>>>0)<($625>>>0); - $or$cond9$i = $or$cond8$not$i & $626; - if ($or$cond9$i) { - $627 = $625; - $628 = $624; - $629 = (($627) - ($628))|0; - $630 = (($nb$0) + 40)|0; - $631 = ($629>>>0)>($630>>>0); - $$tsize$1$i = $631 ? $629 : $tsize$1$i; - if ($631) { - $tbase$247$i = $624;$tsize$246$i = $$tsize$1$i; - label = 202; - } - } - } - } - if ((label|0) == 202) { - $632 = HEAP32[((38872 + 432|0))>>2]|0; - $633 = (($632) + ($tsize$246$i))|0; - HEAP32[((38872 + 432|0))>>2] = $633; - $634 = HEAP32[((38872 + 436|0))>>2]|0; - $635 = ($633>>>0)>($634>>>0); - if ($635) { - HEAP32[((38872 + 436|0))>>2] = $633; - } - $636 = HEAP32[((38872 + 24|0))>>2]|0; - $637 = ($636|0)==(0|0); - L311: do { - if ($637) { - $638 = HEAP32[((38872 + 16|0))>>2]|0; - $639 = ($638|0)==(0|0); - $640 = ($tbase$247$i>>>0)<($638>>>0); - $or$cond10$i = $639 | $640; - if ($or$cond10$i) { - HEAP32[((38872 + 16|0))>>2] = $tbase$247$i; - } - HEAP32[((38872 + 448|0))>>2] = $tbase$247$i; - HEAP32[((38872 + 452|0))>>2] = $tsize$246$i; - HEAP32[((38872 + 460|0))>>2] = 0; - $641 = HEAP32[39344>>2]|0; - HEAP32[((38872 + 36|0))>>2] = $641; - HEAP32[((38872 + 32|0))>>2] = -1; - $i$02$i$i = 0; - while(1) { - $642 = $i$02$i$i << 1; - $643 = ((38872 + ($642<<2)|0) + 40|0); - $$sum$i$i = (($642) + 3)|0; - $644 = ((38872 + ($$sum$i$i<<2)|0) + 40|0); - HEAP32[$644>>2] = $643; - $$sum1$i$i = (($642) + 2)|0; - $645 = ((38872 + ($$sum1$i$i<<2)|0) + 40|0); - HEAP32[$645>>2] = $643; - $646 = (($i$02$i$i) + 1)|0; - $exitcond$i$i = ($646|0)==(32); - if ($exitcond$i$i) { - break; - } else { - $i$02$i$i = $646; - } - } - $647 = (($tsize$246$i) + -40)|0; - $648 = (($tbase$247$i) + 8|0); - $649 = $648; - $650 = $649 & 7; - $651 = ($650|0)==(0); - if ($651) { - $655 = 0; - } else { - $652 = (0 - ($649))|0; - $653 = $652 & 7; - $655 = $653; - } - $654 = (($tbase$247$i) + ($655)|0); - $656 = (($647) - ($655))|0; - HEAP32[((38872 + 24|0))>>2] = $654; - HEAP32[((38872 + 12|0))>>2] = $656; - $657 = $656 | 1; - $$sum$i14$i = (($655) + 4)|0; - $658 = (($tbase$247$i) + ($$sum$i14$i)|0); - HEAP32[$658>>2] = $657; - $$sum2$i$i = (($tsize$246$i) + -36)|0; - $659 = (($tbase$247$i) + ($$sum2$i$i)|0); - HEAP32[$659>>2] = 40; - $660 = HEAP32[((39344 + 16|0))>>2]|0; - HEAP32[((38872 + 28|0))>>2] = $660; - } else { - $sp$075$i = ((38872 + 448|0)); - while(1) { - $661 = HEAP32[$sp$075$i>>2]|0; - $662 = (($sp$075$i) + 4|0); - $663 = HEAP32[$662>>2]|0; - $664 = (($661) + ($663)|0); - $665 = ($tbase$247$i|0)==($664|0); - if ($665) { - label = 214; - break; - } - $666 = (($sp$075$i) + 8|0); - $667 = HEAP32[$666>>2]|0; - $668 = ($667|0)==(0|0); - if ($668) { - break; - } else { - $sp$075$i = $667; - } - } - if ((label|0) == 214) { - $669 = (($sp$075$i) + 12|0); - $670 = HEAP32[$669>>2]|0; - $671 = $670 & 8; - $672 = ($671|0)==(0); - if ($672) { - $673 = ($636>>>0)>=($661>>>0); - $674 = ($636>>>0)<($tbase$247$i>>>0); - $or$cond49$i = $673 & $674; - if ($or$cond49$i) { - $675 = (($663) + ($tsize$246$i))|0; - HEAP32[$662>>2] = $675; - $676 = HEAP32[((38872 + 12|0))>>2]|0; - $677 = (($676) + ($tsize$246$i))|0; - $678 = (($636) + 8|0); - $679 = $678; - $680 = $679 & 7; - $681 = ($680|0)==(0); - if ($681) { - $685 = 0; - } else { - $682 = (0 - ($679))|0; - $683 = $682 & 7; - $685 = $683; - } - $684 = (($636) + ($685)|0); - $686 = (($677) - ($685))|0; - HEAP32[((38872 + 24|0))>>2] = $684; - HEAP32[((38872 + 12|0))>>2] = $686; - $687 = $686 | 1; - $$sum$i18$i = (($685) + 4)|0; - $688 = (($636) + ($$sum$i18$i)|0); - HEAP32[$688>>2] = $687; - $$sum2$i19$i = (($677) + 4)|0; - $689 = (($636) + ($$sum2$i19$i)|0); - HEAP32[$689>>2] = 40; - $690 = HEAP32[((39344 + 16|0))>>2]|0; - HEAP32[((38872 + 28|0))>>2] = $690; - break; - } - } - } - $691 = HEAP32[((38872 + 16|0))>>2]|0; - $692 = ($tbase$247$i>>>0)<($691>>>0); - if ($692) { - HEAP32[((38872 + 16|0))>>2] = $tbase$247$i; - } - $693 = (($tbase$247$i) + ($tsize$246$i)|0); - $sp$168$i = ((38872 + 448|0)); - while(1) { - $694 = HEAP32[$sp$168$i>>2]|0; - $695 = ($694|0)==($693|0); - if ($695) { - label = 224; - break; - } - $696 = (($sp$168$i) + 8|0); - $697 = HEAP32[$696>>2]|0; - $698 = ($697|0)==(0|0); - if ($698) { - break; - } else { - $sp$168$i = $697; - } - } - if ((label|0) == 224) { - $699 = (($sp$168$i) + 12|0); - $700 = HEAP32[$699>>2]|0; - $701 = $700 & 8; - $702 = ($701|0)==(0); - if ($702) { - HEAP32[$sp$168$i>>2] = $tbase$247$i; - $703 = (($sp$168$i) + 4|0); - $704 = HEAP32[$703>>2]|0; - $705 = (($704) + ($tsize$246$i))|0; - HEAP32[$703>>2] = $705; - $706 = (($tbase$247$i) + 8|0); - $707 = $706; - $708 = $707 & 7; - $709 = ($708|0)==(0); - if ($709) { - $713 = 0; - } else { - $710 = (0 - ($707))|0; - $711 = $710 & 7; - $713 = $711; - } - $712 = (($tbase$247$i) + ($713)|0); - $$sum107$i = (($tsize$246$i) + 8)|0; - $714 = (($tbase$247$i) + ($$sum107$i)|0); - $715 = $714; - $716 = $715 & 7; - $717 = ($716|0)==(0); - if ($717) { - $720 = 0; - } else { - $718 = (0 - ($715))|0; - $719 = $718 & 7; - $720 = $719; - } - $$sum108$i = (($720) + ($tsize$246$i))|0; - $721 = (($tbase$247$i) + ($$sum108$i)|0); - $722 = $721; - $723 = $712; - $724 = (($722) - ($723))|0; - $$sum$i21$i = (($713) + ($nb$0))|0; - $725 = (($tbase$247$i) + ($$sum$i21$i)|0); - $726 = (($724) - ($nb$0))|0; - $727 = $nb$0 | 3; - $$sum1$i22$i = (($713) + 4)|0; - $728 = (($tbase$247$i) + ($$sum1$i22$i)|0); - HEAP32[$728>>2] = $727; - $729 = HEAP32[((38872 + 24|0))>>2]|0; - $730 = ($721|0)==($729|0); - L348: do { - if ($730) { - $731 = HEAP32[((38872 + 12|0))>>2]|0; - $732 = (($731) + ($726))|0; - HEAP32[((38872 + 12|0))>>2] = $732; - HEAP32[((38872 + 24|0))>>2] = $725; - $733 = $732 | 1; - $$sum42$i$i = (($$sum$i21$i) + 4)|0; - $734 = (($tbase$247$i) + ($$sum42$i$i)|0); - HEAP32[$734>>2] = $733; - } else { - $735 = HEAP32[((38872 + 20|0))>>2]|0; - $736 = ($721|0)==($735|0); - if ($736) { - $737 = HEAP32[((38872 + 8|0))>>2]|0; - $738 = (($737) + ($726))|0; - HEAP32[((38872 + 8|0))>>2] = $738; - HEAP32[((38872 + 20|0))>>2] = $725; - $739 = $738 | 1; - $$sum40$i$i = (($$sum$i21$i) + 4)|0; - $740 = (($tbase$247$i) + ($$sum40$i$i)|0); - HEAP32[$740>>2] = $739; - $$sum41$i$i = (($738) + ($$sum$i21$i))|0; - $741 = (($tbase$247$i) + ($$sum41$i$i)|0); - HEAP32[$741>>2] = $738; - break; - } - $$sum2$i23$i = (($tsize$246$i) + 4)|0; - $$sum109$i = (($$sum2$i23$i) + ($720))|0; - $742 = (($tbase$247$i) + ($$sum109$i)|0); - $743 = HEAP32[$742>>2]|0; - $744 = $743 & 3; - $745 = ($744|0)==(1); - if ($745) { - $746 = $743 & -8; - $747 = $743 >>> 3; - $748 = ($743>>>0)<(256); - L356: do { - if ($748) { - $$sum3738$i$i = $720 | 8; - $$sum119$i = (($$sum3738$i$i) + ($tsize$246$i))|0; - $749 = (($tbase$247$i) + ($$sum119$i)|0); - $750 = HEAP32[$749>>2]|0; - $$sum39$i$i = (($tsize$246$i) + 12)|0; - $$sum120$i = (($$sum39$i$i) + ($720))|0; - $751 = (($tbase$247$i) + ($$sum120$i)|0); - $752 = HEAP32[$751>>2]|0; - $753 = $747 << 1; - $754 = ((38872 + ($753<<2)|0) + 40|0); - $755 = ($750|0)==($754|0); - do { - if (!($755)) { - $756 = HEAP32[((38872 + 16|0))>>2]|0; - $757 = ($750>>>0)<($756>>>0); - if ($757) { - _abort(); - // unreachable; - } - $758 = (($750) + 12|0); - $759 = HEAP32[$758>>2]|0; - $760 = ($759|0)==($721|0); - if ($760) { - break; - } - _abort(); - // unreachable; - } - } while(0); - $761 = ($752|0)==($750|0); - if ($761) { - $762 = 1 << $747; - $763 = $762 ^ -1; - $764 = HEAP32[38872>>2]|0; - $765 = $764 & $763; - HEAP32[38872>>2] = $765; - break; - } - $766 = ($752|0)==($754|0); - do { - if ($766) { - $$pre57$i$i = (($752) + 8|0); - $$pre$phi58$i$iZ2D = $$pre57$i$i; - } else { - $767 = HEAP32[((38872 + 16|0))>>2]|0; - $768 = ($752>>>0)<($767>>>0); - if ($768) { - _abort(); - // unreachable; - } - $769 = (($752) + 8|0); - $770 = HEAP32[$769>>2]|0; - $771 = ($770|0)==($721|0); - if ($771) { - $$pre$phi58$i$iZ2D = $769; - break; - } - _abort(); - // unreachable; - } - } while(0); - $772 = (($750) + 12|0); - HEAP32[$772>>2] = $752; - HEAP32[$$pre$phi58$i$iZ2D>>2] = $750; - } else { - $$sum34$i$i = $720 | 24; - $$sum110$i = (($$sum34$i$i) + ($tsize$246$i))|0; - $773 = (($tbase$247$i) + ($$sum110$i)|0); - $774 = HEAP32[$773>>2]|0; - $$sum5$i$i = (($tsize$246$i) + 12)|0; - $$sum111$i = (($$sum5$i$i) + ($720))|0; - $775 = (($tbase$247$i) + ($$sum111$i)|0); - $776 = HEAP32[$775>>2]|0; - $777 = ($776|0)==($721|0); - do { - if ($777) { - $$sum67$i$i = $720 | 16; - $$sum117$i = (($$sum2$i23$i) + ($$sum67$i$i))|0; - $788 = (($tbase$247$i) + ($$sum117$i)|0); - $789 = HEAP32[$788>>2]|0; - $790 = ($789|0)==(0|0); - if ($790) { - $$sum118$i = (($$sum67$i$i) + ($tsize$246$i))|0; - $791 = (($tbase$247$i) + ($$sum118$i)|0); - $792 = HEAP32[$791>>2]|0; - $793 = ($792|0)==(0|0); - if ($793) { - $R$1$i$i = 0; - break; - } else { - $R$0$i$i = $792;$RP$0$i$i = $791; - } - } else { - $R$0$i$i = $789;$RP$0$i$i = $788; - } - while(1) { - $794 = (($R$0$i$i) + 20|0); - $795 = HEAP32[$794>>2]|0; - $796 = ($795|0)==(0|0); - if (!($796)) { - $R$0$i$i = $795;$RP$0$i$i = $794; - continue; - } - $797 = (($R$0$i$i) + 16|0); - $798 = HEAP32[$797>>2]|0; - $799 = ($798|0)==(0|0); - if ($799) { - break; - } else { - $R$0$i$i = $798;$RP$0$i$i = $797; - } - } - $800 = HEAP32[((38872 + 16|0))>>2]|0; - $801 = ($RP$0$i$i>>>0)<($800>>>0); - if ($801) { - _abort(); - // unreachable; - } else { - HEAP32[$RP$0$i$i>>2] = 0; - $R$1$i$i = $R$0$i$i; - break; - } - } else { - $$sum3536$i$i = $720 | 8; - $$sum112$i = (($$sum3536$i$i) + ($tsize$246$i))|0; - $778 = (($tbase$247$i) + ($$sum112$i)|0); - $779 = HEAP32[$778>>2]|0; - $780 = HEAP32[((38872 + 16|0))>>2]|0; - $781 = ($779>>>0)<($780>>>0); - if ($781) { - _abort(); - // unreachable; - } - $782 = (($779) + 12|0); - $783 = HEAP32[$782>>2]|0; - $784 = ($783|0)==($721|0); - if (!($784)) { - _abort(); - // unreachable; - } - $785 = (($776) + 8|0); - $786 = HEAP32[$785>>2]|0; - $787 = ($786|0)==($721|0); - if ($787) { - HEAP32[$782>>2] = $776; - HEAP32[$785>>2] = $779; - $R$1$i$i = $776; - break; - } else { - _abort(); - // unreachable; - } - } - } while(0); - $802 = ($774|0)==(0|0); - if ($802) { - break; - } - $$sum30$i$i = (($tsize$246$i) + 28)|0; - $$sum113$i = (($$sum30$i$i) + ($720))|0; - $803 = (($tbase$247$i) + ($$sum113$i)|0); - $804 = HEAP32[$803>>2]|0; - $805 = ((38872 + ($804<<2)|0) + 304|0); - $806 = HEAP32[$805>>2]|0; - $807 = ($721|0)==($806|0); - do { - if ($807) { - HEAP32[$805>>2] = $R$1$i$i; - $cond$i$i = ($R$1$i$i|0)==(0|0); - if (!($cond$i$i)) { - break; - } - $808 = 1 << $804; - $809 = $808 ^ -1; - $810 = HEAP32[((38872 + 4|0))>>2]|0; - $811 = $810 & $809; - HEAP32[((38872 + 4|0))>>2] = $811; - break L356; - } else { - $812 = HEAP32[((38872 + 16|0))>>2]|0; - $813 = ($774>>>0)<($812>>>0); - if ($813) { - _abort(); - // unreachable; - } - $814 = (($774) + 16|0); - $815 = HEAP32[$814>>2]|0; - $816 = ($815|0)==($721|0); - if ($816) { - HEAP32[$814>>2] = $R$1$i$i; - } else { - $817 = (($774) + 20|0); - HEAP32[$817>>2] = $R$1$i$i; - } - $818 = ($R$1$i$i|0)==(0|0); - if ($818) { - break L356; - } - } - } while(0); - $819 = HEAP32[((38872 + 16|0))>>2]|0; - $820 = ($R$1$i$i>>>0)<($819>>>0); - if ($820) { - _abort(); - // unreachable; - } - $821 = (($R$1$i$i) + 24|0); - HEAP32[$821>>2] = $774; - $$sum3132$i$i = $720 | 16; - $$sum114$i = (($$sum3132$i$i) + ($tsize$246$i))|0; - $822 = (($tbase$247$i) + ($$sum114$i)|0); - $823 = HEAP32[$822>>2]|0; - $824 = ($823|0)==(0|0); - do { - if (!($824)) { - $825 = HEAP32[((38872 + 16|0))>>2]|0; - $826 = ($823>>>0)<($825>>>0); - if ($826) { - _abort(); - // unreachable; - } else { - $827 = (($R$1$i$i) + 16|0); - HEAP32[$827>>2] = $823; - $828 = (($823) + 24|0); - HEAP32[$828>>2] = $R$1$i$i; - break; - } - } - } while(0); - $$sum115$i = (($$sum2$i23$i) + ($$sum3132$i$i))|0; - $829 = (($tbase$247$i) + ($$sum115$i)|0); - $830 = HEAP32[$829>>2]|0; - $831 = ($830|0)==(0|0); - if ($831) { - break; - } - $832 = HEAP32[((38872 + 16|0))>>2]|0; - $833 = ($830>>>0)<($832>>>0); - if ($833) { - _abort(); - // unreachable; - } else { - $834 = (($R$1$i$i) + 20|0); - HEAP32[$834>>2] = $830; - $835 = (($830) + 24|0); - HEAP32[$835>>2] = $R$1$i$i; - break; - } - } - } while(0); - $$sum9$i$i = $746 | $720; - $$sum116$i = (($$sum9$i$i) + ($tsize$246$i))|0; - $836 = (($tbase$247$i) + ($$sum116$i)|0); - $837 = (($746) + ($726))|0; - $oldfirst$0$i$i = $836;$qsize$0$i$i = $837; - } else { - $oldfirst$0$i$i = $721;$qsize$0$i$i = $726; - } - $838 = (($oldfirst$0$i$i) + 4|0); - $839 = HEAP32[$838>>2]|0; - $840 = $839 & -2; - HEAP32[$838>>2] = $840; - $841 = $qsize$0$i$i | 1; - $$sum10$i$i = (($$sum$i21$i) + 4)|0; - $842 = (($tbase$247$i) + ($$sum10$i$i)|0); - HEAP32[$842>>2] = $841; - $$sum11$i24$i = (($qsize$0$i$i) + ($$sum$i21$i))|0; - $843 = (($tbase$247$i) + ($$sum11$i24$i)|0); - HEAP32[$843>>2] = $qsize$0$i$i; - $844 = $qsize$0$i$i >>> 3; - $845 = ($qsize$0$i$i>>>0)<(256); - if ($845) { - $846 = $844 << 1; - $847 = ((38872 + ($846<<2)|0) + 40|0); - $848 = HEAP32[38872>>2]|0; - $849 = 1 << $844; - $850 = $848 & $849; - $851 = ($850|0)==(0); - do { - if ($851) { - $852 = $848 | $849; - HEAP32[38872>>2] = $852; - $$sum26$pre$i$i = (($846) + 2)|0; - $$pre$i25$i = ((38872 + ($$sum26$pre$i$i<<2)|0) + 40|0); - $$pre$phi$i26$iZ2D = $$pre$i25$i;$F4$0$i$i = $847; - } else { - $$sum29$i$i = (($846) + 2)|0; - $853 = ((38872 + ($$sum29$i$i<<2)|0) + 40|0); - $854 = HEAP32[$853>>2]|0; - $855 = HEAP32[((38872 + 16|0))>>2]|0; - $856 = ($854>>>0)<($855>>>0); - if (!($856)) { - $$pre$phi$i26$iZ2D = $853;$F4$0$i$i = $854; - break; - } - _abort(); - // unreachable; - } - } while(0); - HEAP32[$$pre$phi$i26$iZ2D>>2] = $725; - $857 = (($F4$0$i$i) + 12|0); - HEAP32[$857>>2] = $725; - $$sum27$i$i = (($$sum$i21$i) + 8)|0; - $858 = (($tbase$247$i) + ($$sum27$i$i)|0); - HEAP32[$858>>2] = $F4$0$i$i; - $$sum28$i$i = (($$sum$i21$i) + 12)|0; - $859 = (($tbase$247$i) + ($$sum28$i$i)|0); - HEAP32[$859>>2] = $847; - break; - } - $860 = $qsize$0$i$i >>> 8; - $861 = ($860|0)==(0); - do { - if ($861) { - $I7$0$i$i = 0; - } else { - $862 = ($qsize$0$i$i>>>0)>(16777215); - if ($862) { - $I7$0$i$i = 31; - break; - } - $863 = (($860) + 1048320)|0; - $864 = $863 >>> 16; - $865 = $864 & 8; - $866 = $860 << $865; - $867 = (($866) + 520192)|0; - $868 = $867 >>> 16; - $869 = $868 & 4; - $870 = $869 | $865; - $871 = $866 << $869; - $872 = (($871) + 245760)|0; - $873 = $872 >>> 16; - $874 = $873 & 2; - $875 = $870 | $874; - $876 = (14 - ($875))|0; - $877 = $871 << $874; - $878 = $877 >>> 15; - $879 = (($876) + ($878))|0; - $880 = $879 << 1; - $881 = (($879) + 7)|0; - $882 = $qsize$0$i$i >>> $881; - $883 = $882 & 1; - $884 = $883 | $880; - $I7$0$i$i = $884; - } - } while(0); - $885 = ((38872 + ($I7$0$i$i<<2)|0) + 304|0); - $$sum12$i$i = (($$sum$i21$i) + 28)|0; - $886 = (($tbase$247$i) + ($$sum12$i$i)|0); - HEAP32[$886>>2] = $I7$0$i$i; - $$sum13$i$i = (($$sum$i21$i) + 16)|0; - $887 = (($tbase$247$i) + ($$sum13$i$i)|0); - $$sum14$i$i = (($$sum$i21$i) + 20)|0; - $888 = (($tbase$247$i) + ($$sum14$i$i)|0); - HEAP32[$888>>2] = 0; - HEAP32[$887>>2] = 0; - $889 = HEAP32[((38872 + 4|0))>>2]|0; - $890 = 1 << $I7$0$i$i; - $891 = $889 & $890; - $892 = ($891|0)==(0); - if ($892) { - $893 = $889 | $890; - HEAP32[((38872 + 4|0))>>2] = $893; - HEAP32[$885>>2] = $725; - $$sum15$i$i = (($$sum$i21$i) + 24)|0; - $894 = (($tbase$247$i) + ($$sum15$i$i)|0); - HEAP32[$894>>2] = $885; - $$sum16$i$i = (($$sum$i21$i) + 12)|0; - $895 = (($tbase$247$i) + ($$sum16$i$i)|0); - HEAP32[$895>>2] = $725; - $$sum17$i$i = (($$sum$i21$i) + 8)|0; - $896 = (($tbase$247$i) + ($$sum17$i$i)|0); - HEAP32[$896>>2] = $725; - break; - } - $897 = HEAP32[$885>>2]|0; - $898 = ($I7$0$i$i|0)==(31); - if ($898) { - $906 = 0; - } else { - $899 = $I7$0$i$i >>> 1; - $900 = (25 - ($899))|0; - $906 = $900; - } - $901 = (($897) + 4|0); - $902 = HEAP32[$901>>2]|0; - $903 = $902 & -8; - $904 = ($903|0)==($qsize$0$i$i|0); - L445: do { - if ($904) { - $T$0$lcssa$i28$i = $897; - } else { - $905 = $qsize$0$i$i << $906; - $K8$052$i$i = $905;$T$051$i$i = $897; - while(1) { - $913 = $K8$052$i$i >>> 31; - $914 = ((($T$051$i$i) + ($913<<2)|0) + 16|0); - $909 = HEAP32[$914>>2]|0; - $915 = ($909|0)==(0|0); - if ($915) { - break; - } - $907 = $K8$052$i$i << 1; - $908 = (($909) + 4|0); - $910 = HEAP32[$908>>2]|0; - $911 = $910 & -8; - $912 = ($911|0)==($qsize$0$i$i|0); - if ($912) { - $T$0$lcssa$i28$i = $909; - break L445; - } else { - $K8$052$i$i = $907;$T$051$i$i = $909; - } - } - $916 = HEAP32[((38872 + 16|0))>>2]|0; - $917 = ($914>>>0)<($916>>>0); - if ($917) { - _abort(); - // unreachable; - } else { - HEAP32[$914>>2] = $725; - $$sum23$i$i = (($$sum$i21$i) + 24)|0; - $918 = (($tbase$247$i) + ($$sum23$i$i)|0); - HEAP32[$918>>2] = $T$051$i$i; - $$sum24$i$i = (($$sum$i21$i) + 12)|0; - $919 = (($tbase$247$i) + ($$sum24$i$i)|0); - HEAP32[$919>>2] = $725; - $$sum25$i$i = (($$sum$i21$i) + 8)|0; - $920 = (($tbase$247$i) + ($$sum25$i$i)|0); - HEAP32[$920>>2] = $725; - break L348; - } - } - } while(0); - $921 = (($T$0$lcssa$i28$i) + 8|0); - $922 = HEAP32[$921>>2]|0; - $923 = HEAP32[((38872 + 16|0))>>2]|0; - $924 = ($T$0$lcssa$i28$i>>>0)<($923>>>0); - if ($924) { - _abort(); - // unreachable; - } - $925 = ($922>>>0)<($923>>>0); - if ($925) { - _abort(); - // unreachable; - } else { - $926 = (($922) + 12|0); - HEAP32[$926>>2] = $725; - HEAP32[$921>>2] = $725; - $$sum20$i$i = (($$sum$i21$i) + 8)|0; - $927 = (($tbase$247$i) + ($$sum20$i$i)|0); - HEAP32[$927>>2] = $922; - $$sum21$i$i = (($$sum$i21$i) + 12)|0; - $928 = (($tbase$247$i) + ($$sum21$i$i)|0); - HEAP32[$928>>2] = $T$0$lcssa$i28$i; - $$sum22$i$i = (($$sum$i21$i) + 24)|0; - $929 = (($tbase$247$i) + ($$sum22$i$i)|0); - HEAP32[$929>>2] = 0; - break; - } - } - } while(0); - $$sum1819$i$i = $713 | 8; - $930 = (($tbase$247$i) + ($$sum1819$i$i)|0); - $mem$0 = $930; - STACKTOP = sp;return ($mem$0|0); - } - } - $sp$0$i$i$i = ((38872 + 448|0)); - while(1) { - $931 = HEAP32[$sp$0$i$i$i>>2]|0; - $932 = ($931>>>0)>($636>>>0); - if (!($932)) { - $933 = (($sp$0$i$i$i) + 4|0); - $934 = HEAP32[$933>>2]|0; - $935 = (($931) + ($934)|0); - $936 = ($935>>>0)>($636>>>0); - if ($936) { - break; - } - } - $937 = (($sp$0$i$i$i) + 8|0); - $938 = HEAP32[$937>>2]|0; - $sp$0$i$i$i = $938; - } - $$sum$i15$i = (($934) + -47)|0; - $$sum1$i16$i = (($934) + -39)|0; - $939 = (($931) + ($$sum1$i16$i)|0); - $940 = $939; - $941 = $940 & 7; - $942 = ($941|0)==(0); - if ($942) { - $945 = 0; - } else { - $943 = (0 - ($940))|0; - $944 = $943 & 7; - $945 = $944; - } - $$sum2$i17$i = (($$sum$i15$i) + ($945))|0; - $946 = (($931) + ($$sum2$i17$i)|0); - $947 = (($636) + 16|0); - $948 = ($946>>>0)<($947>>>0); - $949 = $948 ? $636 : $946; - $950 = (($949) + 8|0); - $951 = (($tsize$246$i) + -40)|0; - $952 = (($tbase$247$i) + 8|0); - $953 = $952; - $954 = $953 & 7; - $955 = ($954|0)==(0); - if ($955) { - $959 = 0; - } else { - $956 = (0 - ($953))|0; - $957 = $956 & 7; - $959 = $957; - } - $958 = (($tbase$247$i) + ($959)|0); - $960 = (($951) - ($959))|0; - HEAP32[((38872 + 24|0))>>2] = $958; - HEAP32[((38872 + 12|0))>>2] = $960; - $961 = $960 | 1; - $$sum$i$i$i = (($959) + 4)|0; - $962 = (($tbase$247$i) + ($$sum$i$i$i)|0); - HEAP32[$962>>2] = $961; - $$sum2$i$i$i = (($tsize$246$i) + -36)|0; - $963 = (($tbase$247$i) + ($$sum2$i$i$i)|0); - HEAP32[$963>>2] = 40; - $964 = HEAP32[((39344 + 16|0))>>2]|0; - HEAP32[((38872 + 28|0))>>2] = $964; - $965 = (($949) + 4|0); - HEAP32[$965>>2] = 27; - ;HEAP32[$950+0>>2]=HEAP32[((38872 + 448|0))+0>>2]|0;HEAP32[$950+4>>2]=HEAP32[((38872 + 448|0))+4>>2]|0;HEAP32[$950+8>>2]=HEAP32[((38872 + 448|0))+8>>2]|0;HEAP32[$950+12>>2]=HEAP32[((38872 + 448|0))+12>>2]|0; - HEAP32[((38872 + 448|0))>>2] = $tbase$247$i; - HEAP32[((38872 + 452|0))>>2] = $tsize$246$i; - HEAP32[((38872 + 460|0))>>2] = 0; - HEAP32[((38872 + 456|0))>>2] = $950; - $966 = (($949) + 28|0); - HEAP32[$966>>2] = 7; - $967 = (($949) + 32|0); - $968 = ($967>>>0)<($935>>>0); - if ($968) { - $970 = $966; - while(1) { - $969 = (($970) + 4|0); - HEAP32[$969>>2] = 7; - $971 = (($970) + 8|0); - $972 = ($971>>>0)<($935>>>0); - if ($972) { - $970 = $969; - } else { - break; - } - } - } - $973 = ($949|0)==($636|0); - if (!($973)) { - $974 = $949; - $975 = $636; - $976 = (($974) - ($975))|0; - $977 = (($636) + ($976)|0); - $$sum3$i$i = (($976) + 4)|0; - $978 = (($636) + ($$sum3$i$i)|0); - $979 = HEAP32[$978>>2]|0; - $980 = $979 & -2; - HEAP32[$978>>2] = $980; - $981 = $976 | 1; - $982 = (($636) + 4|0); - HEAP32[$982>>2] = $981; - HEAP32[$977>>2] = $976; - $983 = $976 >>> 3; - $984 = ($976>>>0)<(256); - if ($984) { - $985 = $983 << 1; - $986 = ((38872 + ($985<<2)|0) + 40|0); - $987 = HEAP32[38872>>2]|0; - $988 = 1 << $983; - $989 = $987 & $988; - $990 = ($989|0)==(0); - do { - if ($990) { - $991 = $987 | $988; - HEAP32[38872>>2] = $991; - $$sum10$pre$i$i = (($985) + 2)|0; - $$pre$i$i = ((38872 + ($$sum10$pre$i$i<<2)|0) + 40|0); - $$pre$phi$i$iZ2D = $$pre$i$i;$F$0$i$i = $986; - } else { - $$sum11$i$i = (($985) + 2)|0; - $992 = ((38872 + ($$sum11$i$i<<2)|0) + 40|0); - $993 = HEAP32[$992>>2]|0; - $994 = HEAP32[((38872 + 16|0))>>2]|0; - $995 = ($993>>>0)<($994>>>0); - if (!($995)) { - $$pre$phi$i$iZ2D = $992;$F$0$i$i = $993; - break; - } - _abort(); - // unreachable; - } - } while(0); - HEAP32[$$pre$phi$i$iZ2D>>2] = $636; - $996 = (($F$0$i$i) + 12|0); - HEAP32[$996>>2] = $636; - $997 = (($636) + 8|0); - HEAP32[$997>>2] = $F$0$i$i; - $998 = (($636) + 12|0); - HEAP32[$998>>2] = $986; - break; - } - $999 = $976 >>> 8; - $1000 = ($999|0)==(0); - if ($1000) { - $I1$0$i$i = 0; - } else { - $1001 = ($976>>>0)>(16777215); - if ($1001) { - $I1$0$i$i = 31; - } else { - $1002 = (($999) + 1048320)|0; - $1003 = $1002 >>> 16; - $1004 = $1003 & 8; - $1005 = $999 << $1004; - $1006 = (($1005) + 520192)|0; - $1007 = $1006 >>> 16; - $1008 = $1007 & 4; - $1009 = $1008 | $1004; - $1010 = $1005 << $1008; - $1011 = (($1010) + 245760)|0; - $1012 = $1011 >>> 16; - $1013 = $1012 & 2; - $1014 = $1009 | $1013; - $1015 = (14 - ($1014))|0; - $1016 = $1010 << $1013; - $1017 = $1016 >>> 15; - $1018 = (($1015) + ($1017))|0; - $1019 = $1018 << 1; - $1020 = (($1018) + 7)|0; - $1021 = $976 >>> $1020; - $1022 = $1021 & 1; - $1023 = $1022 | $1019; - $I1$0$i$i = $1023; - } - } - $1024 = ((38872 + ($I1$0$i$i<<2)|0) + 304|0); - $1025 = (($636) + 28|0); - $I1$0$c$i$i = $I1$0$i$i; - HEAP32[$1025>>2] = $I1$0$c$i$i; - $1026 = (($636) + 20|0); - HEAP32[$1026>>2] = 0; - $1027 = (($636) + 16|0); - HEAP32[$1027>>2] = 0; - $1028 = HEAP32[((38872 + 4|0))>>2]|0; - $1029 = 1 << $I1$0$i$i; - $1030 = $1028 & $1029; - $1031 = ($1030|0)==(0); - if ($1031) { - $1032 = $1028 | $1029; - HEAP32[((38872 + 4|0))>>2] = $1032; - HEAP32[$1024>>2] = $636; - $1033 = (($636) + 24|0); - HEAP32[$1033>>2] = $1024; - $1034 = (($636) + 12|0); - HEAP32[$1034>>2] = $636; - $1035 = (($636) + 8|0); - HEAP32[$1035>>2] = $636; - break; - } - $1036 = HEAP32[$1024>>2]|0; - $1037 = ($I1$0$i$i|0)==(31); - if ($1037) { - $1045 = 0; - } else { - $1038 = $I1$0$i$i >>> 1; - $1039 = (25 - ($1038))|0; - $1045 = $1039; - } - $1040 = (($1036) + 4|0); - $1041 = HEAP32[$1040>>2]|0; - $1042 = $1041 & -8; - $1043 = ($1042|0)==($976|0); - L499: do { - if ($1043) { - $T$0$lcssa$i$i = $1036; - } else { - $1044 = $976 << $1045; - $K2$014$i$i = $1044;$T$013$i$i = $1036; - while(1) { - $1052 = $K2$014$i$i >>> 31; - $1053 = ((($T$013$i$i) + ($1052<<2)|0) + 16|0); - $1048 = HEAP32[$1053>>2]|0; - $1054 = ($1048|0)==(0|0); - if ($1054) { - break; - } - $1046 = $K2$014$i$i << 1; - $1047 = (($1048) + 4|0); - $1049 = HEAP32[$1047>>2]|0; - $1050 = $1049 & -8; - $1051 = ($1050|0)==($976|0); - if ($1051) { - $T$0$lcssa$i$i = $1048; - break L499; - } else { - $K2$014$i$i = $1046;$T$013$i$i = $1048; - } - } - $1055 = HEAP32[((38872 + 16|0))>>2]|0; - $1056 = ($1053>>>0)<($1055>>>0); - if ($1056) { - _abort(); - // unreachable; - } else { - HEAP32[$1053>>2] = $636; - $1057 = (($636) + 24|0); - HEAP32[$1057>>2] = $T$013$i$i; - $1058 = (($636) + 12|0); - HEAP32[$1058>>2] = $636; - $1059 = (($636) + 8|0); - HEAP32[$1059>>2] = $636; - break L311; - } - } - } while(0); - $1060 = (($T$0$lcssa$i$i) + 8|0); - $1061 = HEAP32[$1060>>2]|0; - $1062 = HEAP32[((38872 + 16|0))>>2]|0; - $1063 = ($T$0$lcssa$i$i>>>0)<($1062>>>0); - if ($1063) { - _abort(); - // unreachable; - } - $1064 = ($1061>>>0)<($1062>>>0); - if ($1064) { - _abort(); - // unreachable; - } else { - $1065 = (($1061) + 12|0); - HEAP32[$1065>>2] = $636; - HEAP32[$1060>>2] = $636; - $1066 = (($636) + 8|0); - HEAP32[$1066>>2] = $1061; - $1067 = (($636) + 12|0); - HEAP32[$1067>>2] = $T$0$lcssa$i$i; - $1068 = (($636) + 24|0); - HEAP32[$1068>>2] = 0; - break; - } - } - } - } while(0); - $1069 = HEAP32[((38872 + 12|0))>>2]|0; - $1070 = ($1069>>>0)>($nb$0>>>0); - if ($1070) { - $1071 = (($1069) - ($nb$0))|0; - HEAP32[((38872 + 12|0))>>2] = $1071; - $1072 = HEAP32[((38872 + 24|0))>>2]|0; - $1073 = (($1072) + ($nb$0)|0); - HEAP32[((38872 + 24|0))>>2] = $1073; - $1074 = $1071 | 1; - $$sum$i32 = (($nb$0) + 4)|0; - $1075 = (($1072) + ($$sum$i32)|0); - HEAP32[$1075>>2] = $1074; - $1076 = $nb$0 | 3; - $1077 = (($1072) + 4|0); - HEAP32[$1077>>2] = $1076; - $1078 = (($1072) + 8|0); - $mem$0 = $1078; - STACKTOP = sp;return ($mem$0|0); - } - } - $1079 = (___errno_location()|0); - HEAP32[$1079>>2] = 12; - $mem$0 = 0; - STACKTOP = sp;return ($mem$0|0); -} -function _free($mem) { - $mem = $mem|0; - var $$pre = 0, $$pre$phi68Z2D = 0, $$pre$phi70Z2D = 0, $$pre$phiZ2D = 0, $$pre67 = 0, $$pre69 = 0, $$sum = 0, $$sum16$pre = 0, $$sum17 = 0, $$sum18 = 0, $$sum19 = 0, $$sum2 = 0, $$sum20 = 0, $$sum2324 = 0, $$sum25 = 0, $$sum26 = 0, $$sum28 = 0, $$sum29 = 0, $$sum3 = 0, $$sum30 = 0; - var $$sum31 = 0, $$sum32 = 0, $$sum33 = 0, $$sum34 = 0, $$sum35 = 0, $$sum36 = 0, $$sum37 = 0, $$sum5 = 0, $$sum67 = 0, $$sum8 = 0, $$sum9 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0; - var $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0; - var $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0; - var $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0; - var $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0; - var $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0; - var $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0; - var $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0; - var $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0; - var $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0; - var $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0; - var $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0; - var $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0; - var $322 = 0, $323 = 0, $324 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; - var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; - var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; - var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $F16$0 = 0, $I18$0 = 0, $I18$0$c = 0, $K19$057 = 0; - var $R$0 = 0, $R$1 = 0, $R7$0 = 0, $R7$1 = 0, $RP$0 = 0, $RP9$0 = 0, $T$0$lcssa = 0, $T$056 = 0, $cond = 0, $cond54 = 0, $p$0 = 0, $psize$0 = 0, $psize$1 = 0, $sp$0$i = 0, $sp$0$in$i = 0, label = 0, sp = 0; - sp = STACKTOP; - $0 = ($mem|0)==(0|0); - if ($0) { - STACKTOP = sp;return; - } - $1 = (($mem) + -8|0); - $2 = HEAP32[((38872 + 16|0))>>2]|0; - $3 = ($1>>>0)<($2>>>0); - if ($3) { - _abort(); - // unreachable; - } - $4 = (($mem) + -4|0); - $5 = HEAP32[$4>>2]|0; - $6 = $5 & 3; - $7 = ($6|0)==(1); - if ($7) { - _abort(); - // unreachable; - } - $8 = $5 & -8; - $$sum = (($8) + -8)|0; - $9 = (($mem) + ($$sum)|0); - $10 = $5 & 1; - $11 = ($10|0)==(0); - do { - if ($11) { - $12 = HEAP32[$1>>2]|0; - $13 = ($6|0)==(0); - if ($13) { - STACKTOP = sp;return; - } - $$sum2 = (-8 - ($12))|0; - $14 = (($mem) + ($$sum2)|0); - $15 = (($12) + ($8))|0; - $16 = ($14>>>0)<($2>>>0); - if ($16) { - _abort(); - // unreachable; - } - $17 = HEAP32[((38872 + 20|0))>>2]|0; - $18 = ($14|0)==($17|0); - if ($18) { - $$sum3 = (($8) + -4)|0; - $104 = (($mem) + ($$sum3)|0); - $105 = HEAP32[$104>>2]|0; - $106 = $105 & 3; - $107 = ($106|0)==(3); - if (!($107)) { - $p$0 = $14;$psize$0 = $15; - break; - } - HEAP32[((38872 + 8|0))>>2] = $15; - $108 = HEAP32[$104>>2]|0; - $109 = $108 & -2; - HEAP32[$104>>2] = $109; - $110 = $15 | 1; - $$sum26 = (($$sum2) + 4)|0; - $111 = (($mem) + ($$sum26)|0); - HEAP32[$111>>2] = $110; - HEAP32[$9>>2] = $15; - STACKTOP = sp;return; - } - $19 = $12 >>> 3; - $20 = ($12>>>0)<(256); - if ($20) { - $$sum36 = (($$sum2) + 8)|0; - $21 = (($mem) + ($$sum36)|0); - $22 = HEAP32[$21>>2]|0; - $$sum37 = (($$sum2) + 12)|0; - $23 = (($mem) + ($$sum37)|0); - $24 = HEAP32[$23>>2]|0; - $25 = $19 << 1; - $26 = ((38872 + ($25<<2)|0) + 40|0); - $27 = ($22|0)==($26|0); - if (!($27)) { - $28 = ($22>>>0)<($2>>>0); - if ($28) { - _abort(); - // unreachable; - } - $29 = (($22) + 12|0); - $30 = HEAP32[$29>>2]|0; - $31 = ($30|0)==($14|0); - if (!($31)) { - _abort(); - // unreachable; - } - } - $32 = ($24|0)==($22|0); - if ($32) { - $33 = 1 << $19; - $34 = $33 ^ -1; - $35 = HEAP32[38872>>2]|0; - $36 = $35 & $34; - HEAP32[38872>>2] = $36; - $p$0 = $14;$psize$0 = $15; - break; - } - $37 = ($24|0)==($26|0); - if ($37) { - $$pre69 = (($24) + 8|0); - $$pre$phi70Z2D = $$pre69; - } else { - $38 = ($24>>>0)<($2>>>0); - if ($38) { - _abort(); - // unreachable; - } - $39 = (($24) + 8|0); - $40 = HEAP32[$39>>2]|0; - $41 = ($40|0)==($14|0); - if ($41) { - $$pre$phi70Z2D = $39; - } else { - _abort(); - // unreachable; - } - } - $42 = (($22) + 12|0); - HEAP32[$42>>2] = $24; - HEAP32[$$pre$phi70Z2D>>2] = $22; - $p$0 = $14;$psize$0 = $15; - break; - } - $$sum28 = (($$sum2) + 24)|0; - $43 = (($mem) + ($$sum28)|0); - $44 = HEAP32[$43>>2]|0; - $$sum29 = (($$sum2) + 12)|0; - $45 = (($mem) + ($$sum29)|0); - $46 = HEAP32[$45>>2]|0; - $47 = ($46|0)==($14|0); - do { - if ($47) { - $$sum31 = (($$sum2) + 20)|0; - $57 = (($mem) + ($$sum31)|0); - $58 = HEAP32[$57>>2]|0; - $59 = ($58|0)==(0|0); - if ($59) { - $$sum30 = (($$sum2) + 16)|0; - $60 = (($mem) + ($$sum30)|0); - $61 = HEAP32[$60>>2]|0; - $62 = ($61|0)==(0|0); - if ($62) { - $R$1 = 0; - break; - } else { - $R$0 = $61;$RP$0 = $60; - } - } else { - $R$0 = $58;$RP$0 = $57; - } - while(1) { - $63 = (($R$0) + 20|0); - $64 = HEAP32[$63>>2]|0; - $65 = ($64|0)==(0|0); - if (!($65)) { - $R$0 = $64;$RP$0 = $63; - continue; - } - $66 = (($R$0) + 16|0); - $67 = HEAP32[$66>>2]|0; - $68 = ($67|0)==(0|0); - if ($68) { - break; - } else { - $R$0 = $67;$RP$0 = $66; - } - } - $69 = ($RP$0>>>0)<($2>>>0); - if ($69) { - _abort(); - // unreachable; - } else { - HEAP32[$RP$0>>2] = 0; - $R$1 = $R$0; - break; - } - } else { - $$sum35 = (($$sum2) + 8)|0; - $48 = (($mem) + ($$sum35)|0); - $49 = HEAP32[$48>>2]|0; - $50 = ($49>>>0)<($2>>>0); - if ($50) { - _abort(); - // unreachable; - } - $51 = (($49) + 12|0); - $52 = HEAP32[$51>>2]|0; - $53 = ($52|0)==($14|0); - if (!($53)) { - _abort(); - // unreachable; - } - $54 = (($46) + 8|0); - $55 = HEAP32[$54>>2]|0; - $56 = ($55|0)==($14|0); - if ($56) { - HEAP32[$51>>2] = $46; - HEAP32[$54>>2] = $49; - $R$1 = $46; - break; - } else { - _abort(); - // unreachable; - } - } - } while(0); - $70 = ($44|0)==(0|0); - if ($70) { - $p$0 = $14;$psize$0 = $15; - } else { - $$sum32 = (($$sum2) + 28)|0; - $71 = (($mem) + ($$sum32)|0); - $72 = HEAP32[$71>>2]|0; - $73 = ((38872 + ($72<<2)|0) + 304|0); - $74 = HEAP32[$73>>2]|0; - $75 = ($14|0)==($74|0); - if ($75) { - HEAP32[$73>>2] = $R$1; - $cond = ($R$1|0)==(0|0); - if ($cond) { - $76 = 1 << $72; - $77 = $76 ^ -1; - $78 = HEAP32[((38872 + 4|0))>>2]|0; - $79 = $78 & $77; - HEAP32[((38872 + 4|0))>>2] = $79; - $p$0 = $14;$psize$0 = $15; - break; - } - } else { - $80 = HEAP32[((38872 + 16|0))>>2]|0; - $81 = ($44>>>0)<($80>>>0); - if ($81) { - _abort(); - // unreachable; - } - $82 = (($44) + 16|0); - $83 = HEAP32[$82>>2]|0; - $84 = ($83|0)==($14|0); - if ($84) { - HEAP32[$82>>2] = $R$1; - } else { - $85 = (($44) + 20|0); - HEAP32[$85>>2] = $R$1; - } - $86 = ($R$1|0)==(0|0); - if ($86) { - $p$0 = $14;$psize$0 = $15; - break; - } - } - $87 = HEAP32[((38872 + 16|0))>>2]|0; - $88 = ($R$1>>>0)<($87>>>0); - if ($88) { - _abort(); - // unreachable; - } - $89 = (($R$1) + 24|0); - HEAP32[$89>>2] = $44; - $$sum33 = (($$sum2) + 16)|0; - $90 = (($mem) + ($$sum33)|0); - $91 = HEAP32[$90>>2]|0; - $92 = ($91|0)==(0|0); - do { - if (!($92)) { - $93 = HEAP32[((38872 + 16|0))>>2]|0; - $94 = ($91>>>0)<($93>>>0); - if ($94) { - _abort(); - // unreachable; - } else { - $95 = (($R$1) + 16|0); - HEAP32[$95>>2] = $91; - $96 = (($91) + 24|0); - HEAP32[$96>>2] = $R$1; - break; - } - } - } while(0); - $$sum34 = (($$sum2) + 20)|0; - $97 = (($mem) + ($$sum34)|0); - $98 = HEAP32[$97>>2]|0; - $99 = ($98|0)==(0|0); - if ($99) { - $p$0 = $14;$psize$0 = $15; - } else { - $100 = HEAP32[((38872 + 16|0))>>2]|0; - $101 = ($98>>>0)<($100>>>0); - if ($101) { - _abort(); - // unreachable; - } else { - $102 = (($R$1) + 20|0); - HEAP32[$102>>2] = $98; - $103 = (($98) + 24|0); - HEAP32[$103>>2] = $R$1; - $p$0 = $14;$psize$0 = $15; - break; - } - } - } - } else { - $p$0 = $1;$psize$0 = $8; - } - } while(0); - $112 = ($p$0>>>0)<($9>>>0); - if (!($112)) { - _abort(); - // unreachable; - } - $$sum25 = (($8) + -4)|0; - $113 = (($mem) + ($$sum25)|0); - $114 = HEAP32[$113>>2]|0; - $115 = $114 & 1; - $116 = ($115|0)==(0); - if ($116) { - _abort(); - // unreachable; - } - $117 = $114 & 2; - $118 = ($117|0)==(0); - if ($118) { - $119 = HEAP32[((38872 + 24|0))>>2]|0; - $120 = ($9|0)==($119|0); - if ($120) { - $121 = HEAP32[((38872 + 12|0))>>2]|0; - $122 = (($121) + ($psize$0))|0; - HEAP32[((38872 + 12|0))>>2] = $122; - HEAP32[((38872 + 24|0))>>2] = $p$0; - $123 = $122 | 1; - $124 = (($p$0) + 4|0); - HEAP32[$124>>2] = $123; - $125 = HEAP32[((38872 + 20|0))>>2]|0; - $126 = ($p$0|0)==($125|0); - if (!($126)) { - STACKTOP = sp;return; - } - HEAP32[((38872 + 20|0))>>2] = 0; - HEAP32[((38872 + 8|0))>>2] = 0; - STACKTOP = sp;return; - } - $127 = HEAP32[((38872 + 20|0))>>2]|0; - $128 = ($9|0)==($127|0); - if ($128) { - $129 = HEAP32[((38872 + 8|0))>>2]|0; - $130 = (($129) + ($psize$0))|0; - HEAP32[((38872 + 8|0))>>2] = $130; - HEAP32[((38872 + 20|0))>>2] = $p$0; - $131 = $130 | 1; - $132 = (($p$0) + 4|0); - HEAP32[$132>>2] = $131; - $133 = (($p$0) + ($130)|0); - HEAP32[$133>>2] = $130; - STACKTOP = sp;return; - } - $134 = $114 & -8; - $135 = (($134) + ($psize$0))|0; - $136 = $114 >>> 3; - $137 = ($114>>>0)<(256); - do { - if ($137) { - $138 = (($mem) + ($8)|0); - $139 = HEAP32[$138>>2]|0; - $$sum2324 = $8 | 4; - $140 = (($mem) + ($$sum2324)|0); - $141 = HEAP32[$140>>2]|0; - $142 = $136 << 1; - $143 = ((38872 + ($142<<2)|0) + 40|0); - $144 = ($139|0)==($143|0); - if (!($144)) { - $145 = HEAP32[((38872 + 16|0))>>2]|0; - $146 = ($139>>>0)<($145>>>0); - if ($146) { - _abort(); - // unreachable; - } - $147 = (($139) + 12|0); - $148 = HEAP32[$147>>2]|0; - $149 = ($148|0)==($9|0); - if (!($149)) { - _abort(); - // unreachable; - } - } - $150 = ($141|0)==($139|0); - if ($150) { - $151 = 1 << $136; - $152 = $151 ^ -1; - $153 = HEAP32[38872>>2]|0; - $154 = $153 & $152; - HEAP32[38872>>2] = $154; - break; - } - $155 = ($141|0)==($143|0); - if ($155) { - $$pre67 = (($141) + 8|0); - $$pre$phi68Z2D = $$pre67; - } else { - $156 = HEAP32[((38872 + 16|0))>>2]|0; - $157 = ($141>>>0)<($156>>>0); - if ($157) { - _abort(); - // unreachable; - } - $158 = (($141) + 8|0); - $159 = HEAP32[$158>>2]|0; - $160 = ($159|0)==($9|0); - if ($160) { - $$pre$phi68Z2D = $158; - } else { - _abort(); - // unreachable; - } - } - $161 = (($139) + 12|0); - HEAP32[$161>>2] = $141; - HEAP32[$$pre$phi68Z2D>>2] = $139; - } else { - $$sum5 = (($8) + 16)|0; - $162 = (($mem) + ($$sum5)|0); - $163 = HEAP32[$162>>2]|0; - $$sum67 = $8 | 4; - $164 = (($mem) + ($$sum67)|0); - $165 = HEAP32[$164>>2]|0; - $166 = ($165|0)==($9|0); - do { - if ($166) { - $$sum9 = (($8) + 12)|0; - $177 = (($mem) + ($$sum9)|0); - $178 = HEAP32[$177>>2]|0; - $179 = ($178|0)==(0|0); - if ($179) { - $$sum8 = (($8) + 8)|0; - $180 = (($mem) + ($$sum8)|0); - $181 = HEAP32[$180>>2]|0; - $182 = ($181|0)==(0|0); - if ($182) { - $R7$1 = 0; - break; - } else { - $R7$0 = $181;$RP9$0 = $180; - } - } else { - $R7$0 = $178;$RP9$0 = $177; - } - while(1) { - $183 = (($R7$0) + 20|0); - $184 = HEAP32[$183>>2]|0; - $185 = ($184|0)==(0|0); - if (!($185)) { - $R7$0 = $184;$RP9$0 = $183; - continue; - } - $186 = (($R7$0) + 16|0); - $187 = HEAP32[$186>>2]|0; - $188 = ($187|0)==(0|0); - if ($188) { - break; - } else { - $R7$0 = $187;$RP9$0 = $186; - } - } - $189 = HEAP32[((38872 + 16|0))>>2]|0; - $190 = ($RP9$0>>>0)<($189>>>0); - if ($190) { - _abort(); - // unreachable; - } else { - HEAP32[$RP9$0>>2] = 0; - $R7$1 = $R7$0; - break; - } - } else { - $167 = (($mem) + ($8)|0); - $168 = HEAP32[$167>>2]|0; - $169 = HEAP32[((38872 + 16|0))>>2]|0; - $170 = ($168>>>0)<($169>>>0); - if ($170) { - _abort(); - // unreachable; - } - $171 = (($168) + 12|0); - $172 = HEAP32[$171>>2]|0; - $173 = ($172|0)==($9|0); - if (!($173)) { - _abort(); - // unreachable; - } - $174 = (($165) + 8|0); - $175 = HEAP32[$174>>2]|0; - $176 = ($175|0)==($9|0); - if ($176) { - HEAP32[$171>>2] = $165; - HEAP32[$174>>2] = $168; - $R7$1 = $165; - break; - } else { - _abort(); - // unreachable; - } - } - } while(0); - $191 = ($163|0)==(0|0); - if (!($191)) { - $$sum18 = (($8) + 20)|0; - $192 = (($mem) + ($$sum18)|0); - $193 = HEAP32[$192>>2]|0; - $194 = ((38872 + ($193<<2)|0) + 304|0); - $195 = HEAP32[$194>>2]|0; - $196 = ($9|0)==($195|0); - if ($196) { - HEAP32[$194>>2] = $R7$1; - $cond54 = ($R7$1|0)==(0|0); - if ($cond54) { - $197 = 1 << $193; - $198 = $197 ^ -1; - $199 = HEAP32[((38872 + 4|0))>>2]|0; - $200 = $199 & $198; - HEAP32[((38872 + 4|0))>>2] = $200; - break; - } - } else { - $201 = HEAP32[((38872 + 16|0))>>2]|0; - $202 = ($163>>>0)<($201>>>0); - if ($202) { - _abort(); - // unreachable; - } - $203 = (($163) + 16|0); - $204 = HEAP32[$203>>2]|0; - $205 = ($204|0)==($9|0); - if ($205) { - HEAP32[$203>>2] = $R7$1; - } else { - $206 = (($163) + 20|0); - HEAP32[$206>>2] = $R7$1; - } - $207 = ($R7$1|0)==(0|0); - if ($207) { - break; - } - } - $208 = HEAP32[((38872 + 16|0))>>2]|0; - $209 = ($R7$1>>>0)<($208>>>0); - if ($209) { - _abort(); - // unreachable; - } - $210 = (($R7$1) + 24|0); - HEAP32[$210>>2] = $163; - $$sum19 = (($8) + 8)|0; - $211 = (($mem) + ($$sum19)|0); - $212 = HEAP32[$211>>2]|0; - $213 = ($212|0)==(0|0); - do { - if (!($213)) { - $214 = HEAP32[((38872 + 16|0))>>2]|0; - $215 = ($212>>>0)<($214>>>0); - if ($215) { - _abort(); - // unreachable; - } else { - $216 = (($R7$1) + 16|0); - HEAP32[$216>>2] = $212; - $217 = (($212) + 24|0); - HEAP32[$217>>2] = $R7$1; - break; - } - } - } while(0); - $$sum20 = (($8) + 12)|0; - $218 = (($mem) + ($$sum20)|0); - $219 = HEAP32[$218>>2]|0; - $220 = ($219|0)==(0|0); - if (!($220)) { - $221 = HEAP32[((38872 + 16|0))>>2]|0; - $222 = ($219>>>0)<($221>>>0); - if ($222) { - _abort(); - // unreachable; - } else { - $223 = (($R7$1) + 20|0); - HEAP32[$223>>2] = $219; - $224 = (($219) + 24|0); - HEAP32[$224>>2] = $R7$1; - break; - } - } - } - } - } while(0); - $225 = $135 | 1; - $226 = (($p$0) + 4|0); - HEAP32[$226>>2] = $225; - $227 = (($p$0) + ($135)|0); - HEAP32[$227>>2] = $135; - $228 = HEAP32[((38872 + 20|0))>>2]|0; - $229 = ($p$0|0)==($228|0); - if ($229) { - HEAP32[((38872 + 8|0))>>2] = $135; - STACKTOP = sp;return; - } else { - $psize$1 = $135; - } - } else { - $230 = $114 & -2; - HEAP32[$113>>2] = $230; - $231 = $psize$0 | 1; - $232 = (($p$0) + 4|0); - HEAP32[$232>>2] = $231; - $233 = (($p$0) + ($psize$0)|0); - HEAP32[$233>>2] = $psize$0; - $psize$1 = $psize$0; - } - $234 = $psize$1 >>> 3; - $235 = ($psize$1>>>0)<(256); - if ($235) { - $236 = $234 << 1; - $237 = ((38872 + ($236<<2)|0) + 40|0); - $238 = HEAP32[38872>>2]|0; - $239 = 1 << $234; - $240 = $238 & $239; - $241 = ($240|0)==(0); - if ($241) { - $242 = $238 | $239; - HEAP32[38872>>2] = $242; - $$sum16$pre = (($236) + 2)|0; - $$pre = ((38872 + ($$sum16$pre<<2)|0) + 40|0); - $$pre$phiZ2D = $$pre;$F16$0 = $237; - } else { - $$sum17 = (($236) + 2)|0; - $243 = ((38872 + ($$sum17<<2)|0) + 40|0); - $244 = HEAP32[$243>>2]|0; - $245 = HEAP32[((38872 + 16|0))>>2]|0; - $246 = ($244>>>0)<($245>>>0); - if ($246) { - _abort(); - // unreachable; - } else { - $$pre$phiZ2D = $243;$F16$0 = $244; - } - } - HEAP32[$$pre$phiZ2D>>2] = $p$0; - $247 = (($F16$0) + 12|0); - HEAP32[$247>>2] = $p$0; - $248 = (($p$0) + 8|0); - HEAP32[$248>>2] = $F16$0; - $249 = (($p$0) + 12|0); - HEAP32[$249>>2] = $237; - STACKTOP = sp;return; - } - $250 = $psize$1 >>> 8; - $251 = ($250|0)==(0); - if ($251) { - $I18$0 = 0; - } else { - $252 = ($psize$1>>>0)>(16777215); - if ($252) { - $I18$0 = 31; - } else { - $253 = (($250) + 1048320)|0; - $254 = $253 >>> 16; - $255 = $254 & 8; - $256 = $250 << $255; - $257 = (($256) + 520192)|0; - $258 = $257 >>> 16; - $259 = $258 & 4; - $260 = $259 | $255; - $261 = $256 << $259; - $262 = (($261) + 245760)|0; - $263 = $262 >>> 16; - $264 = $263 & 2; - $265 = $260 | $264; - $266 = (14 - ($265))|0; - $267 = $261 << $264; - $268 = $267 >>> 15; - $269 = (($266) + ($268))|0; - $270 = $269 << 1; - $271 = (($269) + 7)|0; - $272 = $psize$1 >>> $271; - $273 = $272 & 1; - $274 = $273 | $270; - $I18$0 = $274; - } - } - $275 = ((38872 + ($I18$0<<2)|0) + 304|0); - $276 = (($p$0) + 28|0); - $I18$0$c = $I18$0; - HEAP32[$276>>2] = $I18$0$c; - $277 = (($p$0) + 20|0); - HEAP32[$277>>2] = 0; - $278 = (($p$0) + 16|0); - HEAP32[$278>>2] = 0; - $279 = HEAP32[((38872 + 4|0))>>2]|0; - $280 = 1 << $I18$0; - $281 = $279 & $280; - $282 = ($281|0)==(0); - L199: do { - if ($282) { - $283 = $279 | $280; - HEAP32[((38872 + 4|0))>>2] = $283; - HEAP32[$275>>2] = $p$0; - $284 = (($p$0) + 24|0); - HEAP32[$284>>2] = $275; - $285 = (($p$0) + 12|0); - HEAP32[$285>>2] = $p$0; - $286 = (($p$0) + 8|0); - HEAP32[$286>>2] = $p$0; - } else { - $287 = HEAP32[$275>>2]|0; - $288 = ($I18$0|0)==(31); - if ($288) { - $296 = 0; - } else { - $289 = $I18$0 >>> 1; - $290 = (25 - ($289))|0; - $296 = $290; - } - $291 = (($287) + 4|0); - $292 = HEAP32[$291>>2]|0; - $293 = $292 & -8; - $294 = ($293|0)==($psize$1|0); - L205: do { - if ($294) { - $T$0$lcssa = $287; - } else { - $295 = $psize$1 << $296; - $K19$057 = $295;$T$056 = $287; - while(1) { - $303 = $K19$057 >>> 31; - $304 = ((($T$056) + ($303<<2)|0) + 16|0); - $299 = HEAP32[$304>>2]|0; - $305 = ($299|0)==(0|0); - if ($305) { - break; - } - $297 = $K19$057 << 1; - $298 = (($299) + 4|0); - $300 = HEAP32[$298>>2]|0; - $301 = $300 & -8; - $302 = ($301|0)==($psize$1|0); - if ($302) { - $T$0$lcssa = $299; - break L205; - } else { - $K19$057 = $297;$T$056 = $299; - } - } - $306 = HEAP32[((38872 + 16|0))>>2]|0; - $307 = ($304>>>0)<($306>>>0); - if ($307) { - _abort(); - // unreachable; - } else { - HEAP32[$304>>2] = $p$0; - $308 = (($p$0) + 24|0); - HEAP32[$308>>2] = $T$056; - $309 = (($p$0) + 12|0); - HEAP32[$309>>2] = $p$0; - $310 = (($p$0) + 8|0); - HEAP32[$310>>2] = $p$0; - break L199; - } - } - } while(0); - $311 = (($T$0$lcssa) + 8|0); - $312 = HEAP32[$311>>2]|0; - $313 = HEAP32[((38872 + 16|0))>>2]|0; - $314 = ($T$0$lcssa>>>0)<($313>>>0); - if ($314) { - _abort(); - // unreachable; - } - $315 = ($312>>>0)<($313>>>0); - if ($315) { - _abort(); - // unreachable; - } else { - $316 = (($312) + 12|0); - HEAP32[$316>>2] = $p$0; - HEAP32[$311>>2] = $p$0; - $317 = (($p$0) + 8|0); - HEAP32[$317>>2] = $312; - $318 = (($p$0) + 12|0); - HEAP32[$318>>2] = $T$0$lcssa; - $319 = (($p$0) + 24|0); - HEAP32[$319>>2] = 0; - break; - } - } - } while(0); - $320 = HEAP32[((38872 + 32|0))>>2]|0; - $321 = (($320) + -1)|0; - HEAP32[((38872 + 32|0))>>2] = $321; - $322 = ($321|0)==(0); - if ($322) { - $sp$0$in$i = ((38872 + 456|0)); - } else { - STACKTOP = sp;return; - } - while(1) { - $sp$0$i = HEAP32[$sp$0$in$i>>2]|0; - $323 = ($sp$0$i|0)==(0|0); - $324 = (($sp$0$i) + 8|0); - if ($323) { - break; - } else { - $sp$0$in$i = $324; - } - } - HEAP32[((38872 + 32|0))>>2] = -1; - STACKTOP = sp;return; -} -function _realloc($oldmem,$bytes) { - $oldmem = $oldmem|0; - $bytes = $bytes|0; - var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - var $7 = 0, $8 = 0, $9 = 0, $mem$0 = 0, label = 0, sp = 0; - sp = STACKTOP; - $0 = ($oldmem|0)==(0|0); - do { - if ($0) { - $1 = (_malloc($bytes)|0); - $mem$0 = $1; - } else { - $2 = ($bytes>>>0)>(4294967231); - if ($2) { - $3 = (___errno_location()|0); - HEAP32[$3>>2] = 12; - $mem$0 = 0; - break; - } - $4 = ($bytes>>>0)<(11); - if ($4) { - $8 = 16; - } else { - $5 = (($bytes) + 11)|0; - $6 = $5 & -8; - $8 = $6; - } - $7 = (($oldmem) + -8|0); - $9 = (_try_realloc_chunk($7,$8)|0); - $10 = ($9|0)==(0|0); - if (!($10)) { - $11 = (($9) + 8|0); - $mem$0 = $11; - break; - } - $12 = (_malloc($bytes)|0); - $13 = ($12|0)==(0|0); - if ($13) { - $mem$0 = 0; - } else { - $14 = (($oldmem) + -4|0); - $15 = HEAP32[$14>>2]|0; - $16 = $15 & -8; - $17 = $15 & 3; - $18 = ($17|0)==(0); - $19 = $18 ? 8 : 4; - $20 = (($16) - ($19))|0; - $21 = ($20>>>0)<($bytes>>>0); - $22 = $21 ? $20 : $bytes; - _memcpy(($12|0),($oldmem|0),($22|0))|0; - _free($oldmem); - $mem$0 = $12; - } - } - } while(0); - STACKTOP = sp;return ($mem$0|0); -} -function _try_realloc_chunk($p,$nb) { - $p = $p|0; - $nb = $nb|0; - var $$pre = 0, $$pre$phiZ2D = 0, $$sum = 0, $$sum11 = 0, $$sum12 = 0, $$sum13 = 0, $$sum14 = 0, $$sum15 = 0, $$sum16 = 0, $$sum17 = 0, $$sum19 = 0, $$sum2 = 0, $$sum20 = 0, $$sum22 = 0, $$sum23 = 0, $$sum2728 = 0, $$sum3 = 0, $$sum4 = 0, $$sum5 = 0, $$sum78 = 0; - var $$sum910 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; - var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; - var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; - var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; - var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; - var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; - var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; - var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; - var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $R$0 = 0, $R$1 = 0, $RP$0 = 0; - var $cond = 0, $newp$0 = 0, $or$cond = 0, $storemerge = 0, $storemerge21 = 0, label = 0, sp = 0; - sp = STACKTOP; - $0 = (($p) + 4|0); - $1 = HEAP32[$0>>2]|0; - $2 = $1 & -8; - $3 = (($p) + ($2)|0); - $4 = HEAP32[((38872 + 16|0))>>2]|0; - $5 = ($p>>>0)<($4>>>0); - if ($5) { - _abort(); - // unreachable; - } - $6 = $1 & 3; - $7 = ($6|0)!=(1); - $8 = ($p>>>0)<($3>>>0); - $or$cond = $7 & $8; - if (!($or$cond)) { - _abort(); - // unreachable; - } - $$sum2728 = $2 | 4; - $9 = (($p) + ($$sum2728)|0); - $10 = HEAP32[$9>>2]|0; - $11 = $10 & 1; - $12 = ($11|0)==(0); - if ($12) { - _abort(); - // unreachable; - } - $13 = ($6|0)==(0); - if ($13) { - $14 = ($nb>>>0)<(256); - if ($14) { - $newp$0 = 0; - STACKTOP = sp;return ($newp$0|0); - } - $15 = (($nb) + 4)|0; - $16 = ($2>>>0)<($15>>>0); - if (!($16)) { - $17 = (($2) - ($nb))|0; - $18 = HEAP32[((39344 + 8|0))>>2]|0; - $19 = $18 << 1; - $20 = ($17>>>0)>($19>>>0); - if (!($20)) { - $newp$0 = $p; - STACKTOP = sp;return ($newp$0|0); - } - } - $newp$0 = 0; - STACKTOP = sp;return ($newp$0|0); - } - $21 = ($2>>>0)<($nb>>>0); - if (!($21)) { - $22 = (($2) - ($nb))|0; - $23 = ($22>>>0)>(15); - if (!($23)) { - $newp$0 = $p; - STACKTOP = sp;return ($newp$0|0); - } - $24 = (($p) + ($nb)|0); - $25 = $1 & 1; - $26 = $25 | $nb; - $27 = $26 | 2; - HEAP32[$0>>2] = $27; - $$sum23 = (($nb) + 4)|0; - $28 = (($p) + ($$sum23)|0); - $29 = $22 | 3; - HEAP32[$28>>2] = $29; - $30 = HEAP32[$9>>2]|0; - $31 = $30 | 1; - HEAP32[$9>>2] = $31; - _dispose_chunk($24,$22); - $newp$0 = $p; - STACKTOP = sp;return ($newp$0|0); - } - $32 = HEAP32[((38872 + 24|0))>>2]|0; - $33 = ($3|0)==($32|0); - if ($33) { - $34 = HEAP32[((38872 + 12|0))>>2]|0; - $35 = (($34) + ($2))|0; - $36 = ($35>>>0)>($nb>>>0); - if (!($36)) { - $newp$0 = 0; - STACKTOP = sp;return ($newp$0|0); - } - $37 = (($35) - ($nb))|0; - $38 = (($p) + ($nb)|0); - $39 = $1 & 1; - $40 = $39 | $nb; - $41 = $40 | 2; - HEAP32[$0>>2] = $41; - $$sum22 = (($nb) + 4)|0; - $42 = (($p) + ($$sum22)|0); - $43 = $37 | 1; - HEAP32[$42>>2] = $43; - HEAP32[((38872 + 24|0))>>2] = $38; - HEAP32[((38872 + 12|0))>>2] = $37; - $newp$0 = $p; - STACKTOP = sp;return ($newp$0|0); - } - $44 = HEAP32[((38872 + 20|0))>>2]|0; - $45 = ($3|0)==($44|0); - if ($45) { - $46 = HEAP32[((38872 + 8|0))>>2]|0; - $47 = (($46) + ($2))|0; - $48 = ($47>>>0)<($nb>>>0); - if ($48) { - $newp$0 = 0; - STACKTOP = sp;return ($newp$0|0); - } - $49 = (($47) - ($nb))|0; - $50 = ($49>>>0)>(15); - if ($50) { - $51 = (($p) + ($nb)|0); - $52 = (($p) + ($47)|0); - $53 = $1 & 1; - $54 = $53 | $nb; - $55 = $54 | 2; - HEAP32[$0>>2] = $55; - $$sum19 = (($nb) + 4)|0; - $56 = (($p) + ($$sum19)|0); - $57 = $49 | 1; - HEAP32[$56>>2] = $57; - HEAP32[$52>>2] = $49; - $$sum20 = (($47) + 4)|0; - $58 = (($p) + ($$sum20)|0); - $59 = HEAP32[$58>>2]|0; - $60 = $59 & -2; - HEAP32[$58>>2] = $60; - $storemerge = $51;$storemerge21 = $49; - } else { - $61 = $1 & 1; - $62 = $61 | $47; - $63 = $62 | 2; - HEAP32[$0>>2] = $63; - $$sum17 = (($47) + 4)|0; - $64 = (($p) + ($$sum17)|0); - $65 = HEAP32[$64>>2]|0; - $66 = $65 | 1; - HEAP32[$64>>2] = $66; - $storemerge = 0;$storemerge21 = 0; - } - HEAP32[((38872 + 8|0))>>2] = $storemerge21; - HEAP32[((38872 + 20|0))>>2] = $storemerge; - $newp$0 = $p; - STACKTOP = sp;return ($newp$0|0); - } - $67 = $10 & 2; - $68 = ($67|0)==(0); - if (!($68)) { - $newp$0 = 0; - STACKTOP = sp;return ($newp$0|0); - } - $69 = $10 & -8; - $70 = (($69) + ($2))|0; - $71 = ($70>>>0)<($nb>>>0); - if ($71) { - $newp$0 = 0; - STACKTOP = sp;return ($newp$0|0); - } - $72 = (($70) - ($nb))|0; - $73 = $10 >>> 3; - $74 = ($10>>>0)<(256); - do { - if ($74) { - $$sum15 = (($2) + 8)|0; - $75 = (($p) + ($$sum15)|0); - $76 = HEAP32[$75>>2]|0; - $$sum16 = (($2) + 12)|0; - $77 = (($p) + ($$sum16)|0); - $78 = HEAP32[$77>>2]|0; - $79 = $73 << 1; - $80 = ((38872 + ($79<<2)|0) + 40|0); - $81 = ($76|0)==($80|0); - if (!($81)) { - $82 = ($76>>>0)<($4>>>0); - if ($82) { - _abort(); - // unreachable; - } - $83 = (($76) + 12|0); - $84 = HEAP32[$83>>2]|0; - $85 = ($84|0)==($3|0); - if (!($85)) { - _abort(); - // unreachable; - } - } - $86 = ($78|0)==($76|0); - if ($86) { - $87 = 1 << $73; - $88 = $87 ^ -1; - $89 = HEAP32[38872>>2]|0; - $90 = $89 & $88; - HEAP32[38872>>2] = $90; - break; - } - $91 = ($78|0)==($80|0); - if ($91) { - $$pre = (($78) + 8|0); - $$pre$phiZ2D = $$pre; - } else { - $92 = ($78>>>0)<($4>>>0); - if ($92) { - _abort(); - // unreachable; - } - $93 = (($78) + 8|0); - $94 = HEAP32[$93>>2]|0; - $95 = ($94|0)==($3|0); - if ($95) { - $$pre$phiZ2D = $93; - } else { - _abort(); - // unreachable; - } - } - $96 = (($76) + 12|0); - HEAP32[$96>>2] = $78; - HEAP32[$$pre$phiZ2D>>2] = $76; - } else { - $$sum = (($2) + 24)|0; - $97 = (($p) + ($$sum)|0); - $98 = HEAP32[$97>>2]|0; - $$sum2 = (($2) + 12)|0; - $99 = (($p) + ($$sum2)|0); - $100 = HEAP32[$99>>2]|0; - $101 = ($100|0)==($3|0); - do { - if ($101) { - $$sum4 = (($2) + 20)|0; - $111 = (($p) + ($$sum4)|0); - $112 = HEAP32[$111>>2]|0; - $113 = ($112|0)==(0|0); - if ($113) { - $$sum3 = (($2) + 16)|0; - $114 = (($p) + ($$sum3)|0); - $115 = HEAP32[$114>>2]|0; - $116 = ($115|0)==(0|0); - if ($116) { - $R$1 = 0; - break; - } else { - $R$0 = $115;$RP$0 = $114; - } - } else { - $R$0 = $112;$RP$0 = $111; - } - while(1) { - $117 = (($R$0) + 20|0); - $118 = HEAP32[$117>>2]|0; - $119 = ($118|0)==(0|0); - if (!($119)) { - $R$0 = $118;$RP$0 = $117; - continue; - } - $120 = (($R$0) + 16|0); - $121 = HEAP32[$120>>2]|0; - $122 = ($121|0)==(0|0); - if ($122) { - break; - } else { - $R$0 = $121;$RP$0 = $120; - } - } - $123 = ($RP$0>>>0)<($4>>>0); - if ($123) { - _abort(); - // unreachable; - } else { - HEAP32[$RP$0>>2] = 0; - $R$1 = $R$0; - break; - } - } else { - $$sum14 = (($2) + 8)|0; - $102 = (($p) + ($$sum14)|0); - $103 = HEAP32[$102>>2]|0; - $104 = ($103>>>0)<($4>>>0); - if ($104) { - _abort(); - // unreachable; - } - $105 = (($103) + 12|0); - $106 = HEAP32[$105>>2]|0; - $107 = ($106|0)==($3|0); - if (!($107)) { - _abort(); - // unreachable; - } - $108 = (($100) + 8|0); - $109 = HEAP32[$108>>2]|0; - $110 = ($109|0)==($3|0); - if ($110) { - HEAP32[$105>>2] = $100; - HEAP32[$108>>2] = $103; - $R$1 = $100; - break; - } else { - _abort(); - // unreachable; - } - } - } while(0); - $124 = ($98|0)==(0|0); - if (!($124)) { - $$sum11 = (($2) + 28)|0; - $125 = (($p) + ($$sum11)|0); - $126 = HEAP32[$125>>2]|0; - $127 = ((38872 + ($126<<2)|0) + 304|0); - $128 = HEAP32[$127>>2]|0; - $129 = ($3|0)==($128|0); - if ($129) { - HEAP32[$127>>2] = $R$1; - $cond = ($R$1|0)==(0|0); - if ($cond) { - $130 = 1 << $126; - $131 = $130 ^ -1; - $132 = HEAP32[((38872 + 4|0))>>2]|0; - $133 = $132 & $131; - HEAP32[((38872 + 4|0))>>2] = $133; - break; - } - } else { - $134 = HEAP32[((38872 + 16|0))>>2]|0; - $135 = ($98>>>0)<($134>>>0); - if ($135) { - _abort(); - // unreachable; - } - $136 = (($98) + 16|0); - $137 = HEAP32[$136>>2]|0; - $138 = ($137|0)==($3|0); - if ($138) { - HEAP32[$136>>2] = $R$1; - } else { - $139 = (($98) + 20|0); - HEAP32[$139>>2] = $R$1; - } - $140 = ($R$1|0)==(0|0); - if ($140) { - break; - } - } - $141 = HEAP32[((38872 + 16|0))>>2]|0; - $142 = ($R$1>>>0)<($141>>>0); - if ($142) { - _abort(); - // unreachable; - } - $143 = (($R$1) + 24|0); - HEAP32[$143>>2] = $98; - $$sum12 = (($2) + 16)|0; - $144 = (($p) + ($$sum12)|0); - $145 = HEAP32[$144>>2]|0; - $146 = ($145|0)==(0|0); - do { - if (!($146)) { - $147 = HEAP32[((38872 + 16|0))>>2]|0; - $148 = ($145>>>0)<($147>>>0); - if ($148) { - _abort(); - // unreachable; - } else { - $149 = (($R$1) + 16|0); - HEAP32[$149>>2] = $145; - $150 = (($145) + 24|0); - HEAP32[$150>>2] = $R$1; - break; - } - } - } while(0); - $$sum13 = (($2) + 20)|0; - $151 = (($p) + ($$sum13)|0); - $152 = HEAP32[$151>>2]|0; - $153 = ($152|0)==(0|0); - if (!($153)) { - $154 = HEAP32[((38872 + 16|0))>>2]|0; - $155 = ($152>>>0)<($154>>>0); - if ($155) { - _abort(); - // unreachable; - } else { - $156 = (($R$1) + 20|0); - HEAP32[$156>>2] = $152; - $157 = (($152) + 24|0); - HEAP32[$157>>2] = $R$1; - break; - } - } - } - } - } while(0); - $158 = ($72>>>0)<(16); - if ($158) { - $159 = HEAP32[$0>>2]|0; - $160 = $159 & 1; - $161 = $70 | $160; - $162 = $161 | 2; - HEAP32[$0>>2] = $162; - $$sum910 = $70 | 4; - $163 = (($p) + ($$sum910)|0); - $164 = HEAP32[$163>>2]|0; - $165 = $164 | 1; - HEAP32[$163>>2] = $165; - $newp$0 = $p; - STACKTOP = sp;return ($newp$0|0); - } else { - $166 = (($p) + ($nb)|0); - $167 = HEAP32[$0>>2]|0; - $168 = $167 & 1; - $169 = $168 | $nb; - $170 = $169 | 2; - HEAP32[$0>>2] = $170; - $$sum5 = (($nb) + 4)|0; - $171 = (($p) + ($$sum5)|0); - $172 = $72 | 3; - HEAP32[$171>>2] = $172; - $$sum78 = $70 | 4; - $173 = (($p) + ($$sum78)|0); - $174 = HEAP32[$173>>2]|0; - $175 = $174 | 1; - HEAP32[$173>>2] = $175; - _dispose_chunk($166,$72); - $newp$0 = $p; - STACKTOP = sp;return ($newp$0|0); - } - return 0|0; -} -function _dispose_chunk($p,$psize) { - $p = $p|0; - $psize = $psize|0; - var $$0 = 0, $$02 = 0, $$1 = 0, $$pre = 0, $$pre$phi63Z2D = 0, $$pre$phi65Z2D = 0, $$pre$phiZ2D = 0, $$pre62 = 0, $$pre64 = 0, $$sum = 0, $$sum1 = 0, $$sum12$pre = 0, $$sum13 = 0, $$sum14 = 0, $$sum15 = 0, $$sum16 = 0, $$sum17 = 0, $$sum18 = 0, $$sum19 = 0, $$sum2 = 0; - var $$sum20 = 0, $$sum22 = 0, $$sum23 = 0, $$sum24 = 0, $$sum25 = 0, $$sum26 = 0, $$sum27 = 0, $$sum28 = 0, $$sum29 = 0, $$sum3 = 0, $$sum30 = 0, $$sum31 = 0, $$sum4 = 0, $$sum5 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0; - var $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0; - var $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0; - var $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0; - var $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0; - var $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0; - var $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0; - var $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0; - var $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0; - var $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0; - var $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0; - var $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0; - var $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; - var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; - var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; - var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; - var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $F16$0 = 0, $I19$0 = 0, $I19$0$c = 0, $K20$049 = 0, $R$0 = 0, $R$1 = 0, $R7$0 = 0, $R7$1 = 0, $RP$0 = 0, $RP9$0 = 0, $T$0$lcssa = 0, $T$048 = 0, $cond = 0, $cond46 = 0, label = 0; - var sp = 0; - sp = STACKTOP; - $0 = (($p) + ($psize)|0); - $1 = (($p) + 4|0); - $2 = HEAP32[$1>>2]|0; - $3 = $2 & 1; - $4 = ($3|0)==(0); - do { - if ($4) { - $5 = HEAP32[$p>>2]|0; - $6 = $2 & 3; - $7 = ($6|0)==(0); - if ($7) { - STACKTOP = sp;return; - } - $8 = (0 - ($5))|0; - $9 = (($p) + ($8)|0); - $10 = (($5) + ($psize))|0; - $11 = HEAP32[((38872 + 16|0))>>2]|0; - $12 = ($9>>>0)<($11>>>0); - if ($12) { - _abort(); - // unreachable; - } - $13 = HEAP32[((38872 + 20|0))>>2]|0; - $14 = ($9|0)==($13|0); - if ($14) { - $$sum = (($psize) + 4)|0; - $100 = (($p) + ($$sum)|0); - $101 = HEAP32[$100>>2]|0; - $102 = $101 & 3; - $103 = ($102|0)==(3); - if (!($103)) { - $$0 = $9;$$02 = $10; - break; - } - HEAP32[((38872 + 8|0))>>2] = $10; - $104 = HEAP32[$100>>2]|0; - $105 = $104 & -2; - HEAP32[$100>>2] = $105; - $106 = $10 | 1; - $$sum20 = (4 - ($5))|0; - $107 = (($p) + ($$sum20)|0); - HEAP32[$107>>2] = $106; - HEAP32[$0>>2] = $10; - STACKTOP = sp;return; - } - $15 = $5 >>> 3; - $16 = ($5>>>0)<(256); - if ($16) { - $$sum30 = (8 - ($5))|0; - $17 = (($p) + ($$sum30)|0); - $18 = HEAP32[$17>>2]|0; - $$sum31 = (12 - ($5))|0; - $19 = (($p) + ($$sum31)|0); - $20 = HEAP32[$19>>2]|0; - $21 = $15 << 1; - $22 = ((38872 + ($21<<2)|0) + 40|0); - $23 = ($18|0)==($22|0); - if (!($23)) { - $24 = ($18>>>0)<($11>>>0); - if ($24) { - _abort(); - // unreachable; - } - $25 = (($18) + 12|0); - $26 = HEAP32[$25>>2]|0; - $27 = ($26|0)==($9|0); - if (!($27)) { - _abort(); - // unreachable; - } - } - $28 = ($20|0)==($18|0); - if ($28) { - $29 = 1 << $15; - $30 = $29 ^ -1; - $31 = HEAP32[38872>>2]|0; - $32 = $31 & $30; - HEAP32[38872>>2] = $32; - $$0 = $9;$$02 = $10; - break; - } - $33 = ($20|0)==($22|0); - if ($33) { - $$pre64 = (($20) + 8|0); - $$pre$phi65Z2D = $$pre64; - } else { - $34 = ($20>>>0)<($11>>>0); - if ($34) { - _abort(); - // unreachable; - } - $35 = (($20) + 8|0); - $36 = HEAP32[$35>>2]|0; - $37 = ($36|0)==($9|0); - if ($37) { - $$pre$phi65Z2D = $35; - } else { - _abort(); - // unreachable; - } - } - $38 = (($18) + 12|0); - HEAP32[$38>>2] = $20; - HEAP32[$$pre$phi65Z2D>>2] = $18; - $$0 = $9;$$02 = $10; - break; - } - $$sum22 = (24 - ($5))|0; - $39 = (($p) + ($$sum22)|0); - $40 = HEAP32[$39>>2]|0; - $$sum23 = (12 - ($5))|0; - $41 = (($p) + ($$sum23)|0); - $42 = HEAP32[$41>>2]|0; - $43 = ($42|0)==($9|0); - do { - if ($43) { - $$sum24 = (16 - ($5))|0; - $$sum25 = (($$sum24) + 4)|0; - $53 = (($p) + ($$sum25)|0); - $54 = HEAP32[$53>>2]|0; - $55 = ($54|0)==(0|0); - if ($55) { - $56 = (($p) + ($$sum24)|0); - $57 = HEAP32[$56>>2]|0; - $58 = ($57|0)==(0|0); - if ($58) { - $R$1 = 0; - break; - } else { - $R$0 = $57;$RP$0 = $56; - } - } else { - $R$0 = $54;$RP$0 = $53; - } - while(1) { - $59 = (($R$0) + 20|0); - $60 = HEAP32[$59>>2]|0; - $61 = ($60|0)==(0|0); - if (!($61)) { - $R$0 = $60;$RP$0 = $59; - continue; - } - $62 = (($R$0) + 16|0); - $63 = HEAP32[$62>>2]|0; - $64 = ($63|0)==(0|0); - if ($64) { - break; - } else { - $R$0 = $63;$RP$0 = $62; - } - } - $65 = ($RP$0>>>0)<($11>>>0); - if ($65) { - _abort(); - // unreachable; - } else { - HEAP32[$RP$0>>2] = 0; - $R$1 = $R$0; - break; - } - } else { - $$sum29 = (8 - ($5))|0; - $44 = (($p) + ($$sum29)|0); - $45 = HEAP32[$44>>2]|0; - $46 = ($45>>>0)<($11>>>0); - if ($46) { - _abort(); - // unreachable; - } - $47 = (($45) + 12|0); - $48 = HEAP32[$47>>2]|0; - $49 = ($48|0)==($9|0); - if (!($49)) { - _abort(); - // unreachable; - } - $50 = (($42) + 8|0); - $51 = HEAP32[$50>>2]|0; - $52 = ($51|0)==($9|0); - if ($52) { - HEAP32[$47>>2] = $42; - HEAP32[$50>>2] = $45; - $R$1 = $42; - break; - } else { - _abort(); - // unreachable; - } - } - } while(0); - $66 = ($40|0)==(0|0); - if ($66) { - $$0 = $9;$$02 = $10; - } else { - $$sum26 = (28 - ($5))|0; - $67 = (($p) + ($$sum26)|0); - $68 = HEAP32[$67>>2]|0; - $69 = ((38872 + ($68<<2)|0) + 304|0); - $70 = HEAP32[$69>>2]|0; - $71 = ($9|0)==($70|0); - if ($71) { - HEAP32[$69>>2] = $R$1; - $cond = ($R$1|0)==(0|0); - if ($cond) { - $72 = 1 << $68; - $73 = $72 ^ -1; - $74 = HEAP32[((38872 + 4|0))>>2]|0; - $75 = $74 & $73; - HEAP32[((38872 + 4|0))>>2] = $75; - $$0 = $9;$$02 = $10; - break; - } - } else { - $76 = HEAP32[((38872 + 16|0))>>2]|0; - $77 = ($40>>>0)<($76>>>0); - if ($77) { - _abort(); - // unreachable; - } - $78 = (($40) + 16|0); - $79 = HEAP32[$78>>2]|0; - $80 = ($79|0)==($9|0); - if ($80) { - HEAP32[$78>>2] = $R$1; - } else { - $81 = (($40) + 20|0); - HEAP32[$81>>2] = $R$1; - } - $82 = ($R$1|0)==(0|0); - if ($82) { - $$0 = $9;$$02 = $10; - break; - } - } - $83 = HEAP32[((38872 + 16|0))>>2]|0; - $84 = ($R$1>>>0)<($83>>>0); - if ($84) { - _abort(); - // unreachable; - } - $85 = (($R$1) + 24|0); - HEAP32[$85>>2] = $40; - $$sum27 = (16 - ($5))|0; - $86 = (($p) + ($$sum27)|0); - $87 = HEAP32[$86>>2]|0; - $88 = ($87|0)==(0|0); - do { - if (!($88)) { - $89 = HEAP32[((38872 + 16|0))>>2]|0; - $90 = ($87>>>0)<($89>>>0); - if ($90) { - _abort(); - // unreachable; - } else { - $91 = (($R$1) + 16|0); - HEAP32[$91>>2] = $87; - $92 = (($87) + 24|0); - HEAP32[$92>>2] = $R$1; - break; - } - } - } while(0); - $$sum28 = (($$sum27) + 4)|0; - $93 = (($p) + ($$sum28)|0); - $94 = HEAP32[$93>>2]|0; - $95 = ($94|0)==(0|0); - if ($95) { - $$0 = $9;$$02 = $10; - } else { - $96 = HEAP32[((38872 + 16|0))>>2]|0; - $97 = ($94>>>0)<($96>>>0); - if ($97) { - _abort(); - // unreachable; - } else { - $98 = (($R$1) + 20|0); - HEAP32[$98>>2] = $94; - $99 = (($94) + 24|0); - HEAP32[$99>>2] = $R$1; - $$0 = $9;$$02 = $10; - break; - } - } - } - } else { - $$0 = $p;$$02 = $psize; - } - } while(0); - $108 = HEAP32[((38872 + 16|0))>>2]|0; - $109 = ($0>>>0)<($108>>>0); - if ($109) { - _abort(); - // unreachable; - } - $$sum1 = (($psize) + 4)|0; - $110 = (($p) + ($$sum1)|0); - $111 = HEAP32[$110>>2]|0; - $112 = $111 & 2; - $113 = ($112|0)==(0); - if ($113) { - $114 = HEAP32[((38872 + 24|0))>>2]|0; - $115 = ($0|0)==($114|0); - if ($115) { - $116 = HEAP32[((38872 + 12|0))>>2]|0; - $117 = (($116) + ($$02))|0; - HEAP32[((38872 + 12|0))>>2] = $117; - HEAP32[((38872 + 24|0))>>2] = $$0; - $118 = $117 | 1; - $119 = (($$0) + 4|0); - HEAP32[$119>>2] = $118; - $120 = HEAP32[((38872 + 20|0))>>2]|0; - $121 = ($$0|0)==($120|0); - if (!($121)) { - STACKTOP = sp;return; - } - HEAP32[((38872 + 20|0))>>2] = 0; - HEAP32[((38872 + 8|0))>>2] = 0; - STACKTOP = sp;return; - } - $122 = HEAP32[((38872 + 20|0))>>2]|0; - $123 = ($0|0)==($122|0); - if ($123) { - $124 = HEAP32[((38872 + 8|0))>>2]|0; - $125 = (($124) + ($$02))|0; - HEAP32[((38872 + 8|0))>>2] = $125; - HEAP32[((38872 + 20|0))>>2] = $$0; - $126 = $125 | 1; - $127 = (($$0) + 4|0); - HEAP32[$127>>2] = $126; - $128 = (($$0) + ($125)|0); - HEAP32[$128>>2] = $125; - STACKTOP = sp;return; - } - $129 = $111 & -8; - $130 = (($129) + ($$02))|0; - $131 = $111 >>> 3; - $132 = ($111>>>0)<(256); - do { - if ($132) { - $$sum18 = (($psize) + 8)|0; - $133 = (($p) + ($$sum18)|0); - $134 = HEAP32[$133>>2]|0; - $$sum19 = (($psize) + 12)|0; - $135 = (($p) + ($$sum19)|0); - $136 = HEAP32[$135>>2]|0; - $137 = $131 << 1; - $138 = ((38872 + ($137<<2)|0) + 40|0); - $139 = ($134|0)==($138|0); - if (!($139)) { - $140 = ($134>>>0)<($108>>>0); - if ($140) { - _abort(); - // unreachable; - } - $141 = (($134) + 12|0); - $142 = HEAP32[$141>>2]|0; - $143 = ($142|0)==($0|0); - if (!($143)) { - _abort(); - // unreachable; - } - } - $144 = ($136|0)==($134|0); - if ($144) { - $145 = 1 << $131; - $146 = $145 ^ -1; - $147 = HEAP32[38872>>2]|0; - $148 = $147 & $146; - HEAP32[38872>>2] = $148; - break; - } - $149 = ($136|0)==($138|0); - if ($149) { - $$pre62 = (($136) + 8|0); - $$pre$phi63Z2D = $$pre62; - } else { - $150 = ($136>>>0)<($108>>>0); - if ($150) { - _abort(); - // unreachable; - } - $151 = (($136) + 8|0); - $152 = HEAP32[$151>>2]|0; - $153 = ($152|0)==($0|0); - if ($153) { - $$pre$phi63Z2D = $151; - } else { - _abort(); - // unreachable; - } - } - $154 = (($134) + 12|0); - HEAP32[$154>>2] = $136; - HEAP32[$$pre$phi63Z2D>>2] = $134; - } else { - $$sum2 = (($psize) + 24)|0; - $155 = (($p) + ($$sum2)|0); - $156 = HEAP32[$155>>2]|0; - $$sum3 = (($psize) + 12)|0; - $157 = (($p) + ($$sum3)|0); - $158 = HEAP32[$157>>2]|0; - $159 = ($158|0)==($0|0); - do { - if ($159) { - $$sum5 = (($psize) + 20)|0; - $169 = (($p) + ($$sum5)|0); - $170 = HEAP32[$169>>2]|0; - $171 = ($170|0)==(0|0); - if ($171) { - $$sum4 = (($psize) + 16)|0; - $172 = (($p) + ($$sum4)|0); - $173 = HEAP32[$172>>2]|0; - $174 = ($173|0)==(0|0); - if ($174) { - $R7$1 = 0; - break; - } else { - $R7$0 = $173;$RP9$0 = $172; - } - } else { - $R7$0 = $170;$RP9$0 = $169; - } - while(1) { - $175 = (($R7$0) + 20|0); - $176 = HEAP32[$175>>2]|0; - $177 = ($176|0)==(0|0); - if (!($177)) { - $R7$0 = $176;$RP9$0 = $175; - continue; - } - $178 = (($R7$0) + 16|0); - $179 = HEAP32[$178>>2]|0; - $180 = ($179|0)==(0|0); - if ($180) { - break; - } else { - $R7$0 = $179;$RP9$0 = $178; - } - } - $181 = ($RP9$0>>>0)<($108>>>0); - if ($181) { - _abort(); - // unreachable; - } else { - HEAP32[$RP9$0>>2] = 0; - $R7$1 = $R7$0; - break; - } - } else { - $$sum17 = (($psize) + 8)|0; - $160 = (($p) + ($$sum17)|0); - $161 = HEAP32[$160>>2]|0; - $162 = ($161>>>0)<($108>>>0); - if ($162) { - _abort(); - // unreachable; - } - $163 = (($161) + 12|0); - $164 = HEAP32[$163>>2]|0; - $165 = ($164|0)==($0|0); - if (!($165)) { - _abort(); - // unreachable; - } - $166 = (($158) + 8|0); - $167 = HEAP32[$166>>2]|0; - $168 = ($167|0)==($0|0); - if ($168) { - HEAP32[$163>>2] = $158; - HEAP32[$166>>2] = $161; - $R7$1 = $158; - break; - } else { - _abort(); - // unreachable; - } - } - } while(0); - $182 = ($156|0)==(0|0); - if (!($182)) { - $$sum14 = (($psize) + 28)|0; - $183 = (($p) + ($$sum14)|0); - $184 = HEAP32[$183>>2]|0; - $185 = ((38872 + ($184<<2)|0) + 304|0); - $186 = HEAP32[$185>>2]|0; - $187 = ($0|0)==($186|0); - if ($187) { - HEAP32[$185>>2] = $R7$1; - $cond46 = ($R7$1|0)==(0|0); - if ($cond46) { - $188 = 1 << $184; - $189 = $188 ^ -1; - $190 = HEAP32[((38872 + 4|0))>>2]|0; - $191 = $190 & $189; - HEAP32[((38872 + 4|0))>>2] = $191; - break; - } - } else { - $192 = HEAP32[((38872 + 16|0))>>2]|0; - $193 = ($156>>>0)<($192>>>0); - if ($193) { - _abort(); - // unreachable; - } - $194 = (($156) + 16|0); - $195 = HEAP32[$194>>2]|0; - $196 = ($195|0)==($0|0); - if ($196) { - HEAP32[$194>>2] = $R7$1; - } else { - $197 = (($156) + 20|0); - HEAP32[$197>>2] = $R7$1; - } - $198 = ($R7$1|0)==(0|0); - if ($198) { - break; - } - } - $199 = HEAP32[((38872 + 16|0))>>2]|0; - $200 = ($R7$1>>>0)<($199>>>0); - if ($200) { - _abort(); - // unreachable; - } - $201 = (($R7$1) + 24|0); - HEAP32[$201>>2] = $156; - $$sum15 = (($psize) + 16)|0; - $202 = (($p) + ($$sum15)|0); - $203 = HEAP32[$202>>2]|0; - $204 = ($203|0)==(0|0); - do { - if (!($204)) { - $205 = HEAP32[((38872 + 16|0))>>2]|0; - $206 = ($203>>>0)<($205>>>0); - if ($206) { - _abort(); - // unreachable; - } else { - $207 = (($R7$1) + 16|0); - HEAP32[$207>>2] = $203; - $208 = (($203) + 24|0); - HEAP32[$208>>2] = $R7$1; - break; - } - } - } while(0); - $$sum16 = (($psize) + 20)|0; - $209 = (($p) + ($$sum16)|0); - $210 = HEAP32[$209>>2]|0; - $211 = ($210|0)==(0|0); - if (!($211)) { - $212 = HEAP32[((38872 + 16|0))>>2]|0; - $213 = ($210>>>0)<($212>>>0); - if ($213) { - _abort(); - // unreachable; - } else { - $214 = (($R7$1) + 20|0); - HEAP32[$214>>2] = $210; - $215 = (($210) + 24|0); - HEAP32[$215>>2] = $R7$1; - break; - } - } - } - } - } while(0); - $216 = $130 | 1; - $217 = (($$0) + 4|0); - HEAP32[$217>>2] = $216; - $218 = (($$0) + ($130)|0); - HEAP32[$218>>2] = $130; - $219 = HEAP32[((38872 + 20|0))>>2]|0; - $220 = ($$0|0)==($219|0); - if ($220) { - HEAP32[((38872 + 8|0))>>2] = $130; - STACKTOP = sp;return; - } else { - $$1 = $130; - } - } else { - $221 = $111 & -2; - HEAP32[$110>>2] = $221; - $222 = $$02 | 1; - $223 = (($$0) + 4|0); - HEAP32[$223>>2] = $222; - $224 = (($$0) + ($$02)|0); - HEAP32[$224>>2] = $$02; - $$1 = $$02; - } - $225 = $$1 >>> 3; - $226 = ($$1>>>0)<(256); - if ($226) { - $227 = $225 << 1; - $228 = ((38872 + ($227<<2)|0) + 40|0); - $229 = HEAP32[38872>>2]|0; - $230 = 1 << $225; - $231 = $229 & $230; - $232 = ($231|0)==(0); - if ($232) { - $233 = $229 | $230; - HEAP32[38872>>2] = $233; - $$sum12$pre = (($227) + 2)|0; - $$pre = ((38872 + ($$sum12$pre<<2)|0) + 40|0); - $$pre$phiZ2D = $$pre;$F16$0 = $228; - } else { - $$sum13 = (($227) + 2)|0; - $234 = ((38872 + ($$sum13<<2)|0) + 40|0); - $235 = HEAP32[$234>>2]|0; - $236 = HEAP32[((38872 + 16|0))>>2]|0; - $237 = ($235>>>0)<($236>>>0); - if ($237) { - _abort(); - // unreachable; - } else { - $$pre$phiZ2D = $234;$F16$0 = $235; - } - } - HEAP32[$$pre$phiZ2D>>2] = $$0; - $238 = (($F16$0) + 12|0); - HEAP32[$238>>2] = $$0; - $239 = (($$0) + 8|0); - HEAP32[$239>>2] = $F16$0; - $240 = (($$0) + 12|0); - HEAP32[$240>>2] = $228; - STACKTOP = sp;return; - } - $241 = $$1 >>> 8; - $242 = ($241|0)==(0); - if ($242) { - $I19$0 = 0; - } else { - $243 = ($$1>>>0)>(16777215); - if ($243) { - $I19$0 = 31; - } else { - $244 = (($241) + 1048320)|0; - $245 = $244 >>> 16; - $246 = $245 & 8; - $247 = $241 << $246; - $248 = (($247) + 520192)|0; - $249 = $248 >>> 16; - $250 = $249 & 4; - $251 = $250 | $246; - $252 = $247 << $250; - $253 = (($252) + 245760)|0; - $254 = $253 >>> 16; - $255 = $254 & 2; - $256 = $251 | $255; - $257 = (14 - ($256))|0; - $258 = $252 << $255; - $259 = $258 >>> 15; - $260 = (($257) + ($259))|0; - $261 = $260 << 1; - $262 = (($260) + 7)|0; - $263 = $$1 >>> $262; - $264 = $263 & 1; - $265 = $264 | $261; - $I19$0 = $265; - } - } - $266 = ((38872 + ($I19$0<<2)|0) + 304|0); - $267 = (($$0) + 28|0); - $I19$0$c = $I19$0; - HEAP32[$267>>2] = $I19$0$c; - $268 = (($$0) + 20|0); - HEAP32[$268>>2] = 0; - $269 = (($$0) + 16|0); - HEAP32[$269>>2] = 0; - $270 = HEAP32[((38872 + 4|0))>>2]|0; - $271 = 1 << $I19$0; - $272 = $270 & $271; - $273 = ($272|0)==(0); - if ($273) { - $274 = $270 | $271; - HEAP32[((38872 + 4|0))>>2] = $274; - HEAP32[$266>>2] = $$0; - $275 = (($$0) + 24|0); - HEAP32[$275>>2] = $266; - $276 = (($$0) + 12|0); - HEAP32[$276>>2] = $$0; - $277 = (($$0) + 8|0); - HEAP32[$277>>2] = $$0; - STACKTOP = sp;return; - } - $278 = HEAP32[$266>>2]|0; - $279 = ($I19$0|0)==(31); - if ($279) { - $287 = 0; - } else { - $280 = $I19$0 >>> 1; - $281 = (25 - ($280))|0; - $287 = $281; - } - $282 = (($278) + 4|0); - $283 = HEAP32[$282>>2]|0; - $284 = $283 & -8; - $285 = ($284|0)==($$1|0); - L194: do { - if ($285) { - $T$0$lcssa = $278; - } else { - $286 = $$1 << $287; - $K20$049 = $286;$T$048 = $278; - while(1) { - $294 = $K20$049 >>> 31; - $295 = ((($T$048) + ($294<<2)|0) + 16|0); - $290 = HEAP32[$295>>2]|0; - $296 = ($290|0)==(0|0); - if ($296) { - break; - } - $288 = $K20$049 << 1; - $289 = (($290) + 4|0); - $291 = HEAP32[$289>>2]|0; - $292 = $291 & -8; - $293 = ($292|0)==($$1|0); - if ($293) { - $T$0$lcssa = $290; - break L194; - } else { - $K20$049 = $288;$T$048 = $290; - } - } - $297 = HEAP32[((38872 + 16|0))>>2]|0; - $298 = ($295>>>0)<($297>>>0); - if ($298) { - _abort(); - // unreachable; - } - HEAP32[$295>>2] = $$0; - $299 = (($$0) + 24|0); - HEAP32[$299>>2] = $T$048; - $300 = (($$0) + 12|0); - HEAP32[$300>>2] = $$0; - $301 = (($$0) + 8|0); - HEAP32[$301>>2] = $$0; - STACKTOP = sp;return; - } - } while(0); - $302 = (($T$0$lcssa) + 8|0); - $303 = HEAP32[$302>>2]|0; - $304 = HEAP32[((38872 + 16|0))>>2]|0; - $305 = ($T$0$lcssa>>>0)<($304>>>0); - if ($305) { - _abort(); - // unreachable; - } - $306 = ($303>>>0)<($304>>>0); - if ($306) { - _abort(); - // unreachable; - } - $307 = (($303) + 12|0); - HEAP32[$307>>2] = $$0; - HEAP32[$302>>2] = $$0; - $308 = (($$0) + 8|0); - HEAP32[$308>>2] = $303; - $309 = (($$0) + 12|0); - HEAP32[$309>>2] = $T$0$lcssa; - $310 = (($$0) + 24|0); - HEAP32[$310>>2] = 0; - STACKTOP = sp;return; -} -function _memcmp($vl,$vr,$n) { - $vl = $vl|0; - $vr = $vr|0; - $n = $n|0; - var $$03 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $l$04 = 0, $r$05 = 0, label = 0, sp = 0; - sp = STACKTOP; - $0 = ($n|0)==(0); - L1: do { - if ($0) { - $11 = 0; - } else { - $$03 = $n;$l$04 = $vl;$r$05 = $vr; - while(1) { - $1 = HEAP8[$l$04>>0]|0; - $2 = HEAP8[$r$05>>0]|0; - $3 = ($1<<24>>24)==($2<<24>>24); - if (!($3)) { - break; - } - $4 = (($$03) + -1)|0; - $5 = (($l$04) + 1|0); - $6 = (($r$05) + 1|0); - $7 = ($4|0)==(0); - if ($7) { - $11 = 0; - break L1; - } else { - $$03 = $4;$l$04 = $5;$r$05 = $6; - } - } - $8 = $1&255; - $9 = $2&255; - $10 = (($8) - ($9))|0; - $11 = $10; - } - } while(0); - STACKTOP = sp;return ($11|0); -} -function _strcmp($l,$r) { - $l = $l|0; - $r = $r|0; - var $$027 = 0, $$08 = 0, $$lcssa = 0, $$lcssa4 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0; - var $or$cond3 = 0, $or$cond36 = 0, $or$cond5 = 0, label = 0, sp = 0; - sp = STACKTOP; - $0 = HEAP8[$l>>0]|0; - $1 = HEAP8[$r>>0]|0; - $2 = ($0<<24>>24)!=($1<<24>>24); - $3 = ($0<<24>>24)==(0); - $or$cond5 = $2 | $3; - $4 = ($1<<24>>24)==(0); - $or$cond36 = $or$cond5 | $4; - if ($or$cond36) { - $$lcssa = $0;$$lcssa4 = $1; - $12 = $$lcssa&255; - $13 = $$lcssa4&255; - $14 = (($12) - ($13))|0; - STACKTOP = sp;return ($14|0); - } else { - $$027 = $l;$$08 = $r; - } - while(1) { - $5 = (($$027) + 1|0); - $6 = (($$08) + 1|0); - $7 = HEAP8[$5>>0]|0; - $8 = HEAP8[$6>>0]|0; - $9 = ($7<<24>>24)!=($8<<24>>24); - $10 = ($7<<24>>24)==(0); - $or$cond = $9 | $10; - $11 = ($8<<24>>24)==(0); - $or$cond3 = $or$cond | $11; - if ($or$cond3) { - $$lcssa = $7;$$lcssa4 = $8; - break; - } else { - $$027 = $5;$$08 = $6; - } - } - $12 = $$lcssa&255; - $13 = $$lcssa4&255; - $14 = (($12) - ($13))|0; - STACKTOP = sp;return ($14|0); -} -function _strncmp($_l,$_r,$n) { - $_l = $_l|0; - $_r = $_r|0; - $n = $n|0; - var $$03 = 0, $$08 = 0, $$08$in = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $l$06 = 0, $notlhs = 0; - var $notrhs = 0, $or$cond$not = 0, $or$cond4 = 0, $r$0$lcssa = 0, $r$07 = 0, label = 0, sp = 0; - sp = STACKTOP; - $0 = ($n|0)==(0); - if ($0) { - $$03 = 0; - STACKTOP = sp;return ($$03|0); - } - $1 = HEAP8[$_l>>0]|0; - $2 = ($1<<24>>24)==(0); - L4: do { - if ($2) { - $11 = 0;$r$0$lcssa = $_r; - } else { - $$08$in = $n;$5 = $1;$l$06 = $_l;$r$07 = $_r; - while(1) { - $$08 = (($$08$in) + -1)|0; - $3 = HEAP8[$r$07>>0]|0; - $notlhs = ($3<<24>>24)!=(0); - $notrhs = ($$08|0)!=(0); - $or$cond$not = $notrhs & $notlhs; - $4 = ($5<<24>>24)==($3<<24>>24); - $or$cond4 = $or$cond$not & $4; - if (!($or$cond4)) { - $11 = $5;$r$0$lcssa = $r$07; - break L4; - } - $6 = (($l$06) + 1|0); - $7 = (($r$07) + 1|0); - $8 = HEAP8[$6>>0]|0; - $9 = ($8<<24>>24)==(0); - if ($9) { - $11 = 0;$r$0$lcssa = $7; - break; - } else { - $$08$in = $$08;$5 = $8;$l$06 = $6;$r$07 = $7; - } - } - } - } while(0); - $10 = $11&255; - $12 = HEAP8[$r$0$lcssa>>0]|0; - $13 = $12&255; - $14 = (($10) - ($13))|0; - $$03 = $14; - STACKTOP = sp;return ($$03|0); -} -function runPostSets() { - -} -function _i64Subtract(a, b, c, d) { - a = a|0; b = b|0; c = c|0; d = d|0; - var l = 0, h = 0; - l = (a - c)>>>0; - h = (b - d)>>>0; - h = (b - d - (((c>>>0) > (a>>>0))|0))>>>0; // Borrow one from high word to low word on underflow. - return ((tempRet0 = h,l|0)|0); -} -function _memset(ptr, value, num) { - ptr = ptr|0; value = value|0; num = num|0; - var stop = 0, value4 = 0, stop4 = 0, unaligned = 0; - stop = (ptr + num)|0; - if ((num|0) >= 20) { - // This is unaligned, but quite large, so work hard to get to aligned settings - value = value & 0xff; - unaligned = ptr & 3; - value4 = value | (value << 8) | (value << 16) | (value << 24); - stop4 = stop & ~3; - if (unaligned) { - unaligned = (ptr + 4 - unaligned)|0; - while ((ptr|0) < (unaligned|0)) { // no need to check for stop, since we have large num - HEAP8[((ptr)>>0)]=value; - ptr = (ptr+1)|0; - } - } - while ((ptr|0) < (stop4|0)) { - HEAP32[((ptr)>>2)]=value4; - ptr = (ptr+4)|0; - } - } - while ((ptr|0) < (stop|0)) { - HEAP8[((ptr)>>0)]=value; - ptr = (ptr+1)|0; - } - return (ptr-num)|0; -} -function _bitshift64Shl(low, high, bits) { - low = low|0; high = high|0; bits = bits|0; - var ander = 0; - if ((bits|0) < 32) { - ander = ((1 << bits) - 1)|0; - tempRet0 = (high << bits) | ((low&(ander << (32 - bits))) >>> (32 - bits)); - return low << bits; - } - tempRet0 = low << (bits - 32); - return 0; -} -function _strlen(ptr) { - ptr = ptr|0; - var curr = 0; - curr = ptr; - while (((HEAP8[((curr)>>0)])|0)) { - curr = (curr + 1)|0; - } - return (curr - ptr)|0; -} -function _i64Add(a, b, c, d) { - /* - x = a + b*2^32 - y = c + d*2^32 - result = l + h*2^32 - */ - a = a|0; b = b|0; c = c|0; d = d|0; - var l = 0, h = 0; - l = (a + c)>>>0; - h = (b + d + (((l>>>0) < (a>>>0))|0))>>>0; // Add carry from low word to high word on overflow. - return ((tempRet0 = h,l|0)|0); -} -function _bitshift64Lshr(low, high, bits) { - low = low|0; high = high|0; bits = bits|0; - var ander = 0; - if ((bits|0) < 32) { - ander = ((1 << bits) - 1)|0; - tempRet0 = high >>> bits; - return (low >>> bits) | ((high&ander) << (32 - bits)); - } - tempRet0 = 0; - return (high >>> (bits - 32))|0; -} -function _memcpy(dest, src, num) { - - dest = dest|0; src = src|0; num = num|0; - var ret = 0; - if ((num|0) >= 4096) return _emscripten_memcpy_big(dest|0, src|0, num|0)|0; - ret = dest|0; - if ((dest&3) == (src&3)) { - while (dest & 3) { - if ((num|0) == 0) return ret|0; - HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); - dest = (dest+1)|0; - src = (src+1)|0; - num = (num-1)|0; - } - while ((num|0) >= 4) { - HEAP32[((dest)>>2)]=((HEAP32[((src)>>2)])|0); - dest = (dest+4)|0; - src = (src+4)|0; - num = (num-4)|0; - } - } - while ((num|0) > 0) { - HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); - dest = (dest+1)|0; - src = (src+1)|0; - num = (num-1)|0; - } - return ret|0; -} -function _memmove(dest, src, num) { - dest = dest|0; src = src|0; num = num|0; - var ret = 0; - if (((src|0) < (dest|0)) & ((dest|0) < ((src + num)|0))) { - // Unlikely case: Copy backwards in a safe manner - ret = dest; - src = (src + num)|0; - dest = (dest + num)|0; - while ((num|0) > 0) { - dest = (dest - 1)|0; - src = (src - 1)|0; - num = (num - 1)|0; - HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); - } - dest = ret; - } else { - _memcpy(dest, src, num) | 0; - } - return dest | 0; -} -function _bitshift64Ashr(low, high, bits) { - low = low|0; high = high|0; bits = bits|0; - var ander = 0; - if ((bits|0) < 32) { - ander = ((1 << bits) - 1)|0; - tempRet0 = high >> bits; - return (low >>> bits) | ((high&ander) << (32 - bits)); - } - tempRet0 = (high|0) < 0 ? -1 : 0; - return (high >> (bits - 32))|0; - } -function _llvm_ctlz_i32(x) { - x = x|0; - var ret = 0; - ret = ((HEAP8[(((ctlz_i8)+(x >>> 24))>>0)])|0); - if ((ret|0) < 8) return ret|0; - ret = ((HEAP8[(((ctlz_i8)+((x >> 16)&0xff))>>0)])|0); - if ((ret|0) < 8) return (ret + 8)|0; - ret = ((HEAP8[(((ctlz_i8)+((x >> 8)&0xff))>>0)])|0); - if ((ret|0) < 8) return (ret + 16)|0; - return (((HEAP8[(((ctlz_i8)+(x&0xff))>>0)])|0) + 24)|0; - } - -function _llvm_cttz_i32(x) { - x = x|0; - var ret = 0; - ret = ((HEAP8[(((cttz_i8)+(x & 0xff))>>0)])|0); - if ((ret|0) < 8) return ret|0; - ret = ((HEAP8[(((cttz_i8)+((x >> 8)&0xff))>>0)])|0); - if ((ret|0) < 8) return (ret + 8)|0; - ret = ((HEAP8[(((cttz_i8)+((x >> 16)&0xff))>>0)])|0); - if ((ret|0) < 8) return (ret + 16)|0; - return (((HEAP8[(((cttz_i8)+(x >>> 24))>>0)])|0) + 24)|0; - } - -// ======== compiled code from system/lib/compiler-rt , see readme therein -function ___muldsi3($a, $b) { - $a = $a | 0; - $b = $b | 0; - var $1 = 0, $2 = 0, $3 = 0, $6 = 0, $8 = 0, $11 = 0, $12 = 0; - $1 = $a & 65535; - $2 = $b & 65535; - $3 = Math_imul($2, $1) | 0; - $6 = $a >>> 16; - $8 = ($3 >>> 16) + (Math_imul($2, $6) | 0) | 0; - $11 = $b >>> 16; - $12 = Math_imul($11, $1) | 0; - return (tempRet0 = (($8 >>> 16) + (Math_imul($11, $6) | 0) | 0) + ((($8 & 65535) + $12 | 0) >>> 16) | 0, 0 | ($8 + $12 << 16 | $3 & 65535)) | 0; -} -function ___divdi3($a$0, $a$1, $b$0, $b$1) { - $a$0 = $a$0 | 0; - $a$1 = $a$1 | 0; - $b$0 = $b$0 | 0; - $b$1 = $b$1 | 0; - var $1$0 = 0, $1$1 = 0, $2$0 = 0, $2$1 = 0, $4$0 = 0, $4$1 = 0, $6$0 = 0, $7$0 = 0, $7$1 = 0, $8$0 = 0, $10$0 = 0; - $1$0 = $a$1 >> 31 | (($a$1 | 0) < 0 ? -1 : 0) << 1; - $1$1 = (($a$1 | 0) < 0 ? -1 : 0) >> 31 | (($a$1 | 0) < 0 ? -1 : 0) << 1; - $2$0 = $b$1 >> 31 | (($b$1 | 0) < 0 ? -1 : 0) << 1; - $2$1 = (($b$1 | 0) < 0 ? -1 : 0) >> 31 | (($b$1 | 0) < 0 ? -1 : 0) << 1; - $4$0 = _i64Subtract($1$0 ^ $a$0, $1$1 ^ $a$1, $1$0, $1$1) | 0; - $4$1 = tempRet0; - $6$0 = _i64Subtract($2$0 ^ $b$0, $2$1 ^ $b$1, $2$0, $2$1) | 0; - $7$0 = $2$0 ^ $1$0; - $7$1 = $2$1 ^ $1$1; - $8$0 = ___udivmoddi4($4$0, $4$1, $6$0, tempRet0, 0) | 0; - $10$0 = _i64Subtract($8$0 ^ $7$0, tempRet0 ^ $7$1, $7$0, $7$1) | 0; - return (tempRet0 = tempRet0, $10$0) | 0; -} -function ___remdi3($a$0, $a$1, $b$0, $b$1) { - $a$0 = $a$0 | 0; - $a$1 = $a$1 | 0; - $b$0 = $b$0 | 0; - $b$1 = $b$1 | 0; - var $rem = 0, $1$0 = 0, $1$1 = 0, $2$0 = 0, $2$1 = 0, $4$0 = 0, $4$1 = 0, $6$0 = 0, $10$0 = 0, $10$1 = 0, __stackBase__ = 0; - __stackBase__ = STACKTOP; - STACKTOP = STACKTOP + 8 | 0; - $rem = __stackBase__ | 0; - $1$0 = $a$1 >> 31 | (($a$1 | 0) < 0 ? -1 : 0) << 1; - $1$1 = (($a$1 | 0) < 0 ? -1 : 0) >> 31 | (($a$1 | 0) < 0 ? -1 : 0) << 1; - $2$0 = $b$1 >> 31 | (($b$1 | 0) < 0 ? -1 : 0) << 1; - $2$1 = (($b$1 | 0) < 0 ? -1 : 0) >> 31 | (($b$1 | 0) < 0 ? -1 : 0) << 1; - $4$0 = _i64Subtract($1$0 ^ $a$0, $1$1 ^ $a$1, $1$0, $1$1) | 0; - $4$1 = tempRet0; - $6$0 = _i64Subtract($2$0 ^ $b$0, $2$1 ^ $b$1, $2$0, $2$1) | 0; - ___udivmoddi4($4$0, $4$1, $6$0, tempRet0, $rem) | 0; - $10$0 = _i64Subtract(HEAP32[$rem >> 2] ^ $1$0, HEAP32[$rem + 4 >> 2] ^ $1$1, $1$0, $1$1) | 0; - $10$1 = tempRet0; - STACKTOP = __stackBase__; - return (tempRet0 = $10$1, $10$0) | 0; -} -function ___muldi3($a$0, $a$1, $b$0, $b$1) { - $a$0 = $a$0 | 0; - $a$1 = $a$1 | 0; - $b$0 = $b$0 | 0; - $b$1 = $b$1 | 0; - var $x_sroa_0_0_extract_trunc = 0, $y_sroa_0_0_extract_trunc = 0, $1$0 = 0, $1$1 = 0, $2 = 0; - $x_sroa_0_0_extract_trunc = $a$0; - $y_sroa_0_0_extract_trunc = $b$0; - $1$0 = ___muldsi3($x_sroa_0_0_extract_trunc, $y_sroa_0_0_extract_trunc) | 0; - $1$1 = tempRet0; - $2 = Math_imul($a$1, $y_sroa_0_0_extract_trunc) | 0; - return (tempRet0 = ((Math_imul($b$1, $x_sroa_0_0_extract_trunc) | 0) + $2 | 0) + $1$1 | $1$1 & 0, 0 | $1$0 & -1) | 0; -} -function ___udivdi3($a$0, $a$1, $b$0, $b$1) { - $a$0 = $a$0 | 0; - $a$1 = $a$1 | 0; - $b$0 = $b$0 | 0; - $b$1 = $b$1 | 0; - var $1$0 = 0; - $1$0 = ___udivmoddi4($a$0, $a$1, $b$0, $b$1, 0) | 0; - return (tempRet0 = tempRet0, $1$0) | 0; -} -function ___uremdi3($a$0, $a$1, $b$0, $b$1) { - $a$0 = $a$0 | 0; - $a$1 = $a$1 | 0; - $b$0 = $b$0 | 0; - $b$1 = $b$1 | 0; - var $rem = 0, __stackBase__ = 0; - __stackBase__ = STACKTOP; - STACKTOP = STACKTOP + 8 | 0; - $rem = __stackBase__ | 0; - ___udivmoddi4($a$0, $a$1, $b$0, $b$1, $rem) | 0; - STACKTOP = __stackBase__; - return (tempRet0 = HEAP32[$rem + 4 >> 2] | 0, HEAP32[$rem >> 2] | 0) | 0; -} -function ___udivmoddi4($a$0, $a$1, $b$0, $b$1, $rem) { - $a$0 = $a$0 | 0; - $a$1 = $a$1 | 0; - $b$0 = $b$0 | 0; - $b$1 = $b$1 | 0; - $rem = $rem | 0; - var $n_sroa_0_0_extract_trunc = 0, $n_sroa_1_4_extract_shift$0 = 0, $n_sroa_1_4_extract_trunc = 0, $d_sroa_0_0_extract_trunc = 0, $d_sroa_1_4_extract_shift$0 = 0, $d_sroa_1_4_extract_trunc = 0, $4 = 0, $17 = 0, $37 = 0, $49 = 0, $51 = 0, $57 = 0, $58 = 0, $66 = 0, $78 = 0, $86 = 0, $88 = 0, $89 = 0, $91 = 0, $92 = 0, $95 = 0, $105 = 0, $117 = 0, $119 = 0, $125 = 0, $126 = 0, $130 = 0, $q_sroa_1_1_ph = 0, $q_sroa_0_1_ph = 0, $r_sroa_1_1_ph = 0, $r_sroa_0_1_ph = 0, $sr_1_ph = 0, $d_sroa_0_0_insert_insert99$0 = 0, $d_sroa_0_0_insert_insert99$1 = 0, $137$0 = 0, $137$1 = 0, $carry_0203 = 0, $sr_1202 = 0, $r_sroa_0_1201 = 0, $r_sroa_1_1200 = 0, $q_sroa_0_1199 = 0, $q_sroa_1_1198 = 0, $147 = 0, $149 = 0, $r_sroa_0_0_insert_insert42$0 = 0, $r_sroa_0_0_insert_insert42$1 = 0, $150$1 = 0, $151$0 = 0, $152 = 0, $154$0 = 0, $r_sroa_0_0_extract_trunc = 0, $r_sroa_1_4_extract_trunc = 0, $155 = 0, $carry_0_lcssa$0 = 0, $carry_0_lcssa$1 = 0, $r_sroa_0_1_lcssa = 0, $r_sroa_1_1_lcssa = 0, $q_sroa_0_1_lcssa = 0, $q_sroa_1_1_lcssa = 0, $q_sroa_0_0_insert_ext75$0 = 0, $q_sroa_0_0_insert_ext75$1 = 0, $q_sroa_0_0_insert_insert77$1 = 0, $_0$0 = 0, $_0$1 = 0; - $n_sroa_0_0_extract_trunc = $a$0; - $n_sroa_1_4_extract_shift$0 = $a$1; - $n_sroa_1_4_extract_trunc = $n_sroa_1_4_extract_shift$0; - $d_sroa_0_0_extract_trunc = $b$0; - $d_sroa_1_4_extract_shift$0 = $b$1; - $d_sroa_1_4_extract_trunc = $d_sroa_1_4_extract_shift$0; - if (($n_sroa_1_4_extract_trunc | 0) == 0) { - $4 = ($rem | 0) != 0; - if (($d_sroa_1_4_extract_trunc | 0) == 0) { - if ($4) { - HEAP32[$rem >> 2] = ($n_sroa_0_0_extract_trunc >>> 0) % ($d_sroa_0_0_extract_trunc >>> 0); - HEAP32[$rem + 4 >> 2] = 0; - } - $_0$1 = 0; - $_0$0 = ($n_sroa_0_0_extract_trunc >>> 0) / ($d_sroa_0_0_extract_trunc >>> 0) >>> 0; - return (tempRet0 = $_0$1, $_0$0) | 0; - } else { - if (!$4) { - $_0$1 = 0; - $_0$0 = 0; - return (tempRet0 = $_0$1, $_0$0) | 0; - } - HEAP32[$rem >> 2] = $a$0 & -1; - HEAP32[$rem + 4 >> 2] = $a$1 & 0; - $_0$1 = 0; - $_0$0 = 0; - return (tempRet0 = $_0$1, $_0$0) | 0; - } - } - $17 = ($d_sroa_1_4_extract_trunc | 0) == 0; - do { - if (($d_sroa_0_0_extract_trunc | 0) == 0) { - if ($17) { - if (($rem | 0) != 0) { - HEAP32[$rem >> 2] = ($n_sroa_1_4_extract_trunc >>> 0) % ($d_sroa_0_0_extract_trunc >>> 0); - HEAP32[$rem + 4 >> 2] = 0; - } - $_0$1 = 0; - $_0$0 = ($n_sroa_1_4_extract_trunc >>> 0) / ($d_sroa_0_0_extract_trunc >>> 0) >>> 0; - return (tempRet0 = $_0$1, $_0$0) | 0; - } - if (($n_sroa_0_0_extract_trunc | 0) == 0) { - if (($rem | 0) != 0) { - HEAP32[$rem >> 2] = 0; - HEAP32[$rem + 4 >> 2] = ($n_sroa_1_4_extract_trunc >>> 0) % ($d_sroa_1_4_extract_trunc >>> 0); - } - $_0$1 = 0; - $_0$0 = ($n_sroa_1_4_extract_trunc >>> 0) / ($d_sroa_1_4_extract_trunc >>> 0) >>> 0; - return (tempRet0 = $_0$1, $_0$0) | 0; - } - $37 = $d_sroa_1_4_extract_trunc - 1 | 0; - if (($37 & $d_sroa_1_4_extract_trunc | 0) == 0) { - if (($rem | 0) != 0) { - HEAP32[$rem >> 2] = 0 | $a$0 & -1; - HEAP32[$rem + 4 >> 2] = $37 & $n_sroa_1_4_extract_trunc | $a$1 & 0; - } - $_0$1 = 0; - $_0$0 = $n_sroa_1_4_extract_trunc >>> ((_llvm_cttz_i32($d_sroa_1_4_extract_trunc | 0) | 0) >>> 0); - return (tempRet0 = $_0$1, $_0$0) | 0; - } - $49 = _llvm_ctlz_i32($d_sroa_1_4_extract_trunc | 0) | 0; - $51 = $49 - (_llvm_ctlz_i32($n_sroa_1_4_extract_trunc | 0) | 0) | 0; - if ($51 >>> 0 <= 30) { - $57 = $51 + 1 | 0; - $58 = 31 - $51 | 0; - $sr_1_ph = $57; - $r_sroa_0_1_ph = $n_sroa_1_4_extract_trunc << $58 | $n_sroa_0_0_extract_trunc >>> ($57 >>> 0); - $r_sroa_1_1_ph = $n_sroa_1_4_extract_trunc >>> ($57 >>> 0); - $q_sroa_0_1_ph = 0; - $q_sroa_1_1_ph = $n_sroa_0_0_extract_trunc << $58; - break; - } - if (($rem | 0) == 0) { - $_0$1 = 0; - $_0$0 = 0; - return (tempRet0 = $_0$1, $_0$0) | 0; - } - HEAP32[$rem >> 2] = 0 | $a$0 & -1; - HEAP32[$rem + 4 >> 2] = $n_sroa_1_4_extract_shift$0 | $a$1 & 0; - $_0$1 = 0; - $_0$0 = 0; - return (tempRet0 = $_0$1, $_0$0) | 0; - } else { - if (!$17) { - $117 = _llvm_ctlz_i32($d_sroa_1_4_extract_trunc | 0) | 0; - $119 = $117 - (_llvm_ctlz_i32($n_sroa_1_4_extract_trunc | 0) | 0) | 0; - if ($119 >>> 0 <= 31) { - $125 = $119 + 1 | 0; - $126 = 31 - $119 | 0; - $130 = $119 - 31 >> 31; - $sr_1_ph = $125; - $r_sroa_0_1_ph = $n_sroa_0_0_extract_trunc >>> ($125 >>> 0) & $130 | $n_sroa_1_4_extract_trunc << $126; - $r_sroa_1_1_ph = $n_sroa_1_4_extract_trunc >>> ($125 >>> 0) & $130; - $q_sroa_0_1_ph = 0; - $q_sroa_1_1_ph = $n_sroa_0_0_extract_trunc << $126; - break; - } - if (($rem | 0) == 0) { - $_0$1 = 0; - $_0$0 = 0; - return (tempRet0 = $_0$1, $_0$0) | 0; - } - HEAP32[$rem >> 2] = 0 | $a$0 & -1; - HEAP32[$rem + 4 >> 2] = $n_sroa_1_4_extract_shift$0 | $a$1 & 0; - $_0$1 = 0; - $_0$0 = 0; - return (tempRet0 = $_0$1, $_0$0) | 0; - } - $66 = $d_sroa_0_0_extract_trunc - 1 | 0; - if (($66 & $d_sroa_0_0_extract_trunc | 0) != 0) { - $86 = (_llvm_ctlz_i32($d_sroa_0_0_extract_trunc | 0) | 0) + 33 | 0; - $88 = $86 - (_llvm_ctlz_i32($n_sroa_1_4_extract_trunc | 0) | 0) | 0; - $89 = 64 - $88 | 0; - $91 = 32 - $88 | 0; - $92 = $91 >> 31; - $95 = $88 - 32 | 0; - $105 = $95 >> 31; - $sr_1_ph = $88; - $r_sroa_0_1_ph = $91 - 1 >> 31 & $n_sroa_1_4_extract_trunc >>> ($95 >>> 0) | ($n_sroa_1_4_extract_trunc << $91 | $n_sroa_0_0_extract_trunc >>> ($88 >>> 0)) & $105; - $r_sroa_1_1_ph = $105 & $n_sroa_1_4_extract_trunc >>> ($88 >>> 0); - $q_sroa_0_1_ph = $n_sroa_0_0_extract_trunc << $89 & $92; - $q_sroa_1_1_ph = ($n_sroa_1_4_extract_trunc << $89 | $n_sroa_0_0_extract_trunc >>> ($95 >>> 0)) & $92 | $n_sroa_0_0_extract_trunc << $91 & $88 - 33 >> 31; - break; - } - if (($rem | 0) != 0) { - HEAP32[$rem >> 2] = $66 & $n_sroa_0_0_extract_trunc; - HEAP32[$rem + 4 >> 2] = 0; - } - if (($d_sroa_0_0_extract_trunc | 0) == 1) { - $_0$1 = $n_sroa_1_4_extract_shift$0 | $a$1 & 0; - $_0$0 = 0 | $a$0 & -1; - return (tempRet0 = $_0$1, $_0$0) | 0; - } else { - $78 = _llvm_cttz_i32($d_sroa_0_0_extract_trunc | 0) | 0; - $_0$1 = 0 | $n_sroa_1_4_extract_trunc >>> ($78 >>> 0); - $_0$0 = $n_sroa_1_4_extract_trunc << 32 - $78 | $n_sroa_0_0_extract_trunc >>> ($78 >>> 0) | 0; - return (tempRet0 = $_0$1, $_0$0) | 0; - } - } - } while (0); - if (($sr_1_ph | 0) == 0) { - $q_sroa_1_1_lcssa = $q_sroa_1_1_ph; - $q_sroa_0_1_lcssa = $q_sroa_0_1_ph; - $r_sroa_1_1_lcssa = $r_sroa_1_1_ph; - $r_sroa_0_1_lcssa = $r_sroa_0_1_ph; - $carry_0_lcssa$1 = 0; - $carry_0_lcssa$0 = 0; - } else { - $d_sroa_0_0_insert_insert99$0 = 0 | $b$0 & -1; - $d_sroa_0_0_insert_insert99$1 = $d_sroa_1_4_extract_shift$0 | $b$1 & 0; - $137$0 = _i64Add($d_sroa_0_0_insert_insert99$0, $d_sroa_0_0_insert_insert99$1, -1, -1) | 0; - $137$1 = tempRet0; - $q_sroa_1_1198 = $q_sroa_1_1_ph; - $q_sroa_0_1199 = $q_sroa_0_1_ph; - $r_sroa_1_1200 = $r_sroa_1_1_ph; - $r_sroa_0_1201 = $r_sroa_0_1_ph; - $sr_1202 = $sr_1_ph; - $carry_0203 = 0; - while (1) { - $147 = $q_sroa_0_1199 >>> 31 | $q_sroa_1_1198 << 1; - $149 = $carry_0203 | $q_sroa_0_1199 << 1; - $r_sroa_0_0_insert_insert42$0 = 0 | ($r_sroa_0_1201 << 1 | $q_sroa_1_1198 >>> 31); - $r_sroa_0_0_insert_insert42$1 = $r_sroa_0_1201 >>> 31 | $r_sroa_1_1200 << 1 | 0; - _i64Subtract($137$0, $137$1, $r_sroa_0_0_insert_insert42$0, $r_sroa_0_0_insert_insert42$1) | 0; - $150$1 = tempRet0; - $151$0 = $150$1 >> 31 | (($150$1 | 0) < 0 ? -1 : 0) << 1; - $152 = $151$0 & 1; - $154$0 = _i64Subtract($r_sroa_0_0_insert_insert42$0, $r_sroa_0_0_insert_insert42$1, $151$0 & $d_sroa_0_0_insert_insert99$0, ((($150$1 | 0) < 0 ? -1 : 0) >> 31 | (($150$1 | 0) < 0 ? -1 : 0) << 1) & $d_sroa_0_0_insert_insert99$1) | 0; - $r_sroa_0_0_extract_trunc = $154$0; - $r_sroa_1_4_extract_trunc = tempRet0; - $155 = $sr_1202 - 1 | 0; - if (($155 | 0) == 0) { - break; - } else { - $q_sroa_1_1198 = $147; - $q_sroa_0_1199 = $149; - $r_sroa_1_1200 = $r_sroa_1_4_extract_trunc; - $r_sroa_0_1201 = $r_sroa_0_0_extract_trunc; - $sr_1202 = $155; - $carry_0203 = $152; - } - } - $q_sroa_1_1_lcssa = $147; - $q_sroa_0_1_lcssa = $149; - $r_sroa_1_1_lcssa = $r_sroa_1_4_extract_trunc; - $r_sroa_0_1_lcssa = $r_sroa_0_0_extract_trunc; - $carry_0_lcssa$1 = 0; - $carry_0_lcssa$0 = $152; - } - $q_sroa_0_0_insert_ext75$0 = $q_sroa_0_1_lcssa; - $q_sroa_0_0_insert_ext75$1 = 0; - $q_sroa_0_0_insert_insert77$1 = $q_sroa_1_1_lcssa | $q_sroa_0_0_insert_ext75$1; - if (($rem | 0) != 0) { - HEAP32[$rem >> 2] = 0 | $r_sroa_0_1_lcssa; - HEAP32[$rem + 4 >> 2] = $r_sroa_1_1_lcssa | 0; - } - $_0$1 = (0 | $q_sroa_0_0_insert_ext75$0) >>> 31 | $q_sroa_0_0_insert_insert77$1 << 1 | ($q_sroa_0_0_insert_ext75$1 << 1 | $q_sroa_0_0_insert_ext75$0 >>> 31) & 0 | $carry_0_lcssa$1; - $_0$0 = ($q_sroa_0_0_insert_ext75$0 << 1 | 0 >>> 31) & -2 | $carry_0_lcssa$0; - return (tempRet0 = $_0$1, $_0$0) | 0; -} -// ======================================================================= - - - -// EMSCRIPTEN_END_FUNCS - - - function dynCall_iiii(index,a1,a2,a3) { - index = index|0; - a1=a1|0; a2=a2|0; a3=a3|0; - return FUNCTION_TABLE_iiii[index&15](a1|0,a2|0,a3|0)|0; - } - - - function dynCall_i(index) { - index = index|0; - - return FUNCTION_TABLE_i[index&1]()|0; - } - - - function dynCall_vi(index,a1) { - index = index|0; - a1=a1|0; - FUNCTION_TABLE_vi[index&31](a1|0); - } - - - function dynCall_vii(index,a1,a2) { - index = index|0; - a1=a1|0; a2=a2|0; - FUNCTION_TABLE_vii[index&7](a1|0,a2|0); - } - - - function dynCall_iiiiiii(index,a1,a2,a3,a4,a5,a6) { - index = index|0; - a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=a5|0; a6=a6|0; - return FUNCTION_TABLE_iiiiiii[index&1](a1|0,a2|0,a3|0,a4|0,a5|0,a6|0)|0; - } - - - function dynCall_ii(index,a1) { - index = index|0; - a1=a1|0; - return FUNCTION_TABLE_ii[index&31](a1|0)|0; - } - - - function dynCall_viii(index,a1,a2,a3) { - index = index|0; - a1=a1|0; a2=a2|0; a3=a3|0; - FUNCTION_TABLE_viii[index&63](a1|0,a2|0,a3|0); - } - - - function dynCall_v(index) { - index = index|0; - - FUNCTION_TABLE_v[index&0](); - } - - - function dynCall_iiiii(index,a1,a2,a3,a4) { - index = index|0; - a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; - return FUNCTION_TABLE_iiiii[index&15](a1|0,a2|0,a3|0,a4|0)|0; - } - - - function dynCall_viiiiii(index,a1,a2,a3,a4,a5,a6) { - index = index|0; - a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=a5|0; a6=a6|0; - FUNCTION_TABLE_viiiiii[index&0](a1|0,a2|0,a3|0,a4|0,a5|0,a6|0); - } - - - function dynCall_iii(index,a1,a2) { - index = index|0; - a1=a1|0; a2=a2|0; - return FUNCTION_TABLE_iii[index&63](a1|0,a2|0)|0; - } - - - function dynCall_iiiiii(index,a1,a2,a3,a4,a5) { - index = index|0; - a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=a5|0; - return FUNCTION_TABLE_iiiiii[index&15](a1|0,a2|0,a3|0,a4|0,a5|0)|0; - } - - - function dynCall_viiii(index,a1,a2,a3,a4) { - index = index|0; - a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; - FUNCTION_TABLE_viiii[index&3](a1|0,a2|0,a3|0,a4|0); - } - -function b0(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; abort(0);return 0; } - function _fcntl__wrapper(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; return _fcntl(p0|0,p1|0,p2|0)|0; } - function _read__wrapper(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; return _read(p0|0,p1|0,p2|0)|0; } - function _write__wrapper(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; return _write(p0|0,p1|0,p2|0)|0; } - function b1() { ; abort(1);return 0; } - function b2(p0) { p0 = p0|0; abort(2); } - function b3(p0,p1) { p0 = p0|0;p1 = p1|0; abort(3); } - function b4(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; abort(4);return 0; } - function _mmap__wrapper(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; return _mmap(p0|0,p1|0,p2|0,p3|0,p4|0,p5|0)|0; } - function b5(p0) { p0 = p0|0; abort(5);return 0; } - function _close__wrapper(p0) { p0 = p0|0; return _close(p0|0)|0; } - function _unlink__wrapper(p0) { p0 = p0|0; return _unlink(p0|0)|0; } - function _rmdir__wrapper(p0) { p0 = p0|0; return _rmdir(p0|0)|0; } - function b6(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; abort(6); } - function b7() { ; abort(7); } - function b8(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; abort(8);return 0; } - function b9(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; abort(9); } - function b10(p0,p1) { p0 = p0|0;p1 = p1|0; abort(10);return 0; } - function _access__wrapper(p0,p1) { p0 = p0|0;p1 = p1|0; return _access(p0|0,p1|0)|0; } - function _getcwd__wrapper(p0,p1) { p0 = p0|0;p1 = p1|0; return _getcwd(p0|0,p1|0)|0; } - function _stat__wrapper(p0,p1) { p0 = p0|0;p1 = p1|0; return _stat(p0|0,p1|0)|0; } - function _fstat__wrapper(p0,p1) { p0 = p0|0;p1 = p1|0; return _fstat(p0|0,p1|0)|0; } - function _ftruncate__wrapper(p0,p1) { p0 = p0|0;p1 = p1|0; return _ftruncate(p0|0,p1|0)|0; } - function _fchmod__wrapper(p0,p1) { p0 = p0|0;p1 = p1|0; return _fchmod(p0|0,p1|0)|0; } - function _mkdir__wrapper(p0,p1) { p0 = p0|0;p1 = p1|0; return _mkdir(p0|0,p1|0)|0; } - function _munmap__wrapper(p0,p1) { p0 = p0|0;p1 = p1|0; return _munmap(p0|0,p1|0)|0; } - function b11(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; abort(11);return 0; } - function b12(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; abort(12); } - // EMSCRIPTEN_END_FUNCS - var FUNCTION_TABLE_iiii = [b0,_unixDelete,_unixRandomness,_unixGetLastError,_unixSetSystemCall,_memjrnlTruncate,_pcache1Create,_pcache1Fetch,_unixTruncate,_unixFileControl,_posixOpen,_fcntl__wrapper,_read__wrapper,_write__wrapper,_posixFchown,b0]; - var FUNCTION_TABLE_i = [b1,_unixGetpagesize]; - var FUNCTION_TABLE_vi = [b2,_pcache1Shutdown,_pcache1Destroy,_pcache1Shrink,_sqlite3MemFree,_sqlite3MemShutdown,_minMaxFinalize,_sumFinalize,_totalFinalize,_avgFinalize,_countFinalize,_groupConcatFinalize,_unixShmBarrier,_sqlite3_free,_pageReinit,_sqlite3SchemaClear,_stat4Destructor,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2 - ,b2,b2,b2]; - var FUNCTION_TABLE_vii = [b3,_pcache1Cachesize,_pcache1Truncate,_selectPopWith,_selectAddSubqueryTypeInfo,b3,b3,b3]; - var FUNCTION_TABLE_iiiiiii = [b4,_mmap__wrapper]; - var FUNCTION_TABLE_ii = [b5,_memjrnlClose,_pcache1Init,_pcache1Pagecount,_sqlite3MemMalloc,_sqlite3MemSize,_sqlite3MemRoundup,_sqlite3MemInit,_dotlockClose,_unixSectorSize,_unixDeviceCharacteristics,_close__wrapper,_unlink__wrapper,_rmdir__wrapper,_nolockClose,_unixClose,_sqlite3MallocSize,_sqlite3_value_text,_sqlite3Malloc,_btreeInvokeBusyHandler,b5,b5,b5,b5,b5,b5,b5,b5,b5 - ,b5,b5,b5]; - var FUNCTION_TABLE_viii = [b6,_pcache1Unpin,_trimFunc,_minmaxFunc,_minmaxStep,_typeofFunc,_lengthFunc,_instrFunc,_substrFunc,_printfFunc,_unicodeFunc,_charFunc,_absFunc,_roundFunc,_upperFunc,_lowerFunc,_versionFunc,_hexFunc,_randomFunc,_randomBlob,_nullifFunc,_sourceidFunc,_errlogFunc,_compileoptionusedFunc,_compileoptiongetFunc,_quoteFunc,_last_insert_rowid,_changes,_total_changes - ,_replaceFunc,_zeroblobFunc,_sumStep,_countStep,_groupConcatStep,_likeFunc,_renameTableFunc,_renameTriggerFunc,_renameParentFunc,_juliandayFunc,_dateFunc,_timeFunc,_datetimeFunc,_strftimeFunc,_ctimeFunc,_ctimestampFunc,_cdateFunc,_statInit,_statPush,_statGet,_detachFunc,_attachFunc,_sqlite3InvalidFunction,b6,b6,b6,b6,b6,b6,b6 - ,b6,b6,b6,b6,b6]; - var FUNCTION_TABLE_v = [b7]; - var FUNCTION_TABLE_iiiii = [b8,_unixAccess,_unixFullPathname,_unixShmLock,_unixUnfetch,_sqlite3WalDefaultHook,_sqlite3InitCallback,_analysisLoader,_vdbeRecordCompareInt,_vdbeRecordCompareString,_sqlite3VdbeRecordCompare,b8,b8,b8,b8,b8]; - var FUNCTION_TABLE_viiiiii = [b9]; - var FUNCTION_TABLE_iii = [b10,_unixSleep,_unixCurrentTime,_unixCurrentTimeInt64,_unixGetSystemCall,_unixNextSystemCall,_posixIoFinderImpl,_nolockIoFinderImpl,_dotlockIoFinderImpl,_memjrnlSync,_memjrnlFileSize,_sqlite3MemRealloc,_unixSync,_unixFileSize,_dotlockLock,_dotlockUnlock,_dotlockCheckReservedLock,_unixShmUnmap,_access__wrapper,_getcwd__wrapper,_stat__wrapper,_fstat__wrapper,_ftruncate__wrapper,_fchmod__wrapper,_openDirectory,_mkdir__wrapper,_munmap__wrapper,_nolockLock,_nolockUnlock - ,_nolockCheckReservedLock,_unixLock,_unixUnlock,_unixCheckReservedLock,_sqliteDefaultBusyCallback,_pagerStress,_pagerUndoCallback,_exprWalkNoop,_convertCompoundSelectToSubquery,_selectExpander,_resolveExprStep,_resolveSelectStep,_incrAggDepth,_exprSrcCount,_exprNodeIsConstant,_selectNodeIsConstant,_sqlite3BtreeNext,_sqlite3BtreePrevious,_analyzeAggregate,_analyzeAggregatesInSelect,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10 - ,b10,b10,b10,b10,b10]; - var FUNCTION_TABLE_iiiiii = [b11,_unixOpen,_memjrnlRead,_memjrnlWrite,_unixRead,_unixWrite,_unixShmMap,_unixFetch,_binCollFunc,_nocaseCollatingFunc,b11,b11,b11,b11,b11,b11]; - var FUNCTION_TABLE_viiii = [b12,_pcache1Rekey,_softHeapLimitEnforcer,b12]; - - return { _strlen: _strlen, _sqlite3_column_name: _sqlite3_column_name, _sqlite3_reset: _sqlite3_reset, _sqlite3_column_type: _sqlite3_column_type, _sqlite3_exec: _sqlite3_exec, _sqlite3_step: _sqlite3_step, _bitshift64Lshr: _bitshift64Lshr, _sqlite3_prepare_v2: _sqlite3_prepare_v2, _sqlite3_close_v2: _sqlite3_close_v2, _sqlite3_open: _sqlite3_open, _bitshift64Shl: _bitshift64Shl, _sqlite3_column_bytes: _sqlite3_column_bytes, _sqlite3_bind_int: _sqlite3_bind_int, _sqlite3_bind_blob: _sqlite3_bind_blob, _memset: _memset, _memcpy: _memcpy, _sqlite3_column_blob: _sqlite3_column_blob, _sqlite3_bind_parameter_index: _sqlite3_bind_parameter_index, _i64Subtract: _i64Subtract, _sqlite3_column_text: _sqlite3_column_text, _realloc: _realloc, _i64Add: _i64Add, _sqlite3_finalize: _sqlite3_finalize, _sqlite3_column_double: _sqlite3_column_double, _sqlite3_errmsg: _sqlite3_errmsg, _sqlite3_data_count: _sqlite3_data_count, _sqlite3_bind_text: _sqlite3_bind_text, _sqlite3_bind_double: _sqlite3_bind_double, _free: _free, _memmove: _memmove, _sqlite3_free: _sqlite3_free, _sqlite3_clear_bindings: _sqlite3_clear_bindings, _malloc: _malloc, runPostSets: runPostSets, stackAlloc: stackAlloc, stackSave: stackSave, stackRestore: stackRestore, setThrew: setThrew, setTempRet0: setTempRet0, getTempRet0: getTempRet0, dynCall_iiii: dynCall_iiii, dynCall_i: dynCall_i, dynCall_vi: dynCall_vi, dynCall_vii: dynCall_vii, dynCall_iiiiiii: dynCall_iiiiiii, dynCall_ii: dynCall_ii, dynCall_viii: dynCall_viii, dynCall_v: dynCall_v, dynCall_iiiii: dynCall_iiiii, dynCall_viiiiii: dynCall_viiiiii, dynCall_iii: dynCall_iii, dynCall_iiiiii: dynCall_iiiiii, dynCall_viiii: dynCall_viiii }; - }) - // EMSCRIPTEN_END_ASM - ({ "Math": Math, "Int8Array": Int8Array, "Int16Array": Int16Array, "Int32Array": Int32Array, "Uint8Array": Uint8Array, "Uint16Array": Uint16Array, "Uint32Array": Uint32Array, "Float32Array": Float32Array, "Float64Array": Float64Array }, { "abort": abort, "assert": assert, "asmPrintInt": asmPrintInt, "asmPrintFloat": asmPrintFloat, "min": Math_min, "invoke_iiii": invoke_iiii, "invoke_i": invoke_i, "invoke_vi": invoke_vi, "invoke_vii": invoke_vii, "invoke_iiiiiii": invoke_iiiiiii, "invoke_ii": invoke_ii, "invoke_viii": invoke_viii, "invoke_v": invoke_v, "invoke_iiiii": invoke_iiiii, "invoke_viiiiii": invoke_viiiiii, "invoke_iii": invoke_iii, "invoke_iiiiii": invoke_iiiiii, "invoke_viiii": invoke_viiii, "_getgid": _getgid, "_sleep": _sleep, "_send": _send, "_getcwd": _getcwd, "_chown": _chown, "_lseek": _lseek, "___setErrNo": ___setErrNo, "_access": _access, "_fstat": _fstat, "_chmod": _chmod, "_rmdir": _rmdir, "_truncate": _truncate, "_usleep": _usleep, "_utimes": _utimes, "___buildEnvironment": ___buildEnvironment, "_fflush": _fflush, "_pwrite": _pwrite, "_strerror_r": _strerror_r, "_localtime_r": _localtime_r, "_tzset": _tzset, "_open": _open, "_getpid": _getpid, "_sbrk": _sbrk, "_fcntl": _fcntl, "_emscripten_memcpy_big": _emscripten_memcpy_big, "_unlink": _unlink, "_sysconf": _sysconf, "_fchmod": _fchmod, "_close": _close, "_ftruncate": _ftruncate, "_gettimeofday": _gettimeofday, "_munmap": _munmap, "_pread": _pread, "_getenv": _getenv, "_write": _write, "_fsync": _fsync, "___errno_location": ___errno_location, "_stat": _stat, "_recv": _recv, "_geteuid": _geteuid, "_fchown": _fchown, "_read": _read, "_abort": _abort, "_time": _time, "_mkport": _mkport, "_strerror": _strerror, "_mknod": _mknod, "_mkdir": _mkdir, "_mmap": _mmap, "_localtime": _localtime, "STACKTOP": STACKTOP, "STACK_MAX": STACK_MAX, "tempDoublePtr": tempDoublePtr, "ABORT": ABORT, "cttz_i8": cttz_i8, "ctlz_i8": ctlz_i8, "NaN": NaN, "Infinity": Infinity }, buffer); - var _strlen = Module["_strlen"] = asm["_strlen"]; -var _sqlite3_column_name = Module["_sqlite3_column_name"] = asm["_sqlite3_column_name"]; -var _sqlite3_reset = Module["_sqlite3_reset"] = asm["_sqlite3_reset"]; -var _sqlite3_column_type = Module["_sqlite3_column_type"] = asm["_sqlite3_column_type"]; -var _sqlite3_exec = Module["_sqlite3_exec"] = asm["_sqlite3_exec"]; -var _sqlite3_step = Module["_sqlite3_step"] = asm["_sqlite3_step"]; -var _bitshift64Lshr = Module["_bitshift64Lshr"] = asm["_bitshift64Lshr"]; -var _sqlite3_prepare_v2 = Module["_sqlite3_prepare_v2"] = asm["_sqlite3_prepare_v2"]; -var _sqlite3_close_v2 = Module["_sqlite3_close_v2"] = asm["_sqlite3_close_v2"]; -var _sqlite3_open = Module["_sqlite3_open"] = asm["_sqlite3_open"]; -var _bitshift64Shl = Module["_bitshift64Shl"] = asm["_bitshift64Shl"]; -var _sqlite3_column_bytes = Module["_sqlite3_column_bytes"] = asm["_sqlite3_column_bytes"]; -var _sqlite3_bind_int = Module["_sqlite3_bind_int"] = asm["_sqlite3_bind_int"]; -var _sqlite3_bind_blob = Module["_sqlite3_bind_blob"] = asm["_sqlite3_bind_blob"]; -var _memset = Module["_memset"] = asm["_memset"]; -var _memcpy = Module["_memcpy"] = asm["_memcpy"]; -var _sqlite3_column_blob = Module["_sqlite3_column_blob"] = asm["_sqlite3_column_blob"]; -var _sqlite3_bind_parameter_index = Module["_sqlite3_bind_parameter_index"] = asm["_sqlite3_bind_parameter_index"]; -var _i64Subtract = Module["_i64Subtract"] = asm["_i64Subtract"]; -var _sqlite3_column_text = Module["_sqlite3_column_text"] = asm["_sqlite3_column_text"]; -var _realloc = Module["_realloc"] = asm["_realloc"]; -var _i64Add = Module["_i64Add"] = asm["_i64Add"]; -var _sqlite3_finalize = Module["_sqlite3_finalize"] = asm["_sqlite3_finalize"]; -var _sqlite3_column_double = Module["_sqlite3_column_double"] = asm["_sqlite3_column_double"]; -var _sqlite3_errmsg = Module["_sqlite3_errmsg"] = asm["_sqlite3_errmsg"]; -var _sqlite3_data_count = Module["_sqlite3_data_count"] = asm["_sqlite3_data_count"]; -var _sqlite3_bind_text = Module["_sqlite3_bind_text"] = asm["_sqlite3_bind_text"]; -var _sqlite3_bind_double = Module["_sqlite3_bind_double"] = asm["_sqlite3_bind_double"]; -var _free = Module["_free"] = asm["_free"]; -var _memmove = Module["_memmove"] = asm["_memmove"]; -var _sqlite3_free = Module["_sqlite3_free"] = asm["_sqlite3_free"]; -var _sqlite3_clear_bindings = Module["_sqlite3_clear_bindings"] = asm["_sqlite3_clear_bindings"]; -var _malloc = Module["_malloc"] = asm["_malloc"]; -var runPostSets = Module["runPostSets"] = asm["runPostSets"]; -var dynCall_iiii = Module["dynCall_iiii"] = asm["dynCall_iiii"]; -var dynCall_i = Module["dynCall_i"] = asm["dynCall_i"]; -var dynCall_vi = Module["dynCall_vi"] = asm["dynCall_vi"]; -var dynCall_vii = Module["dynCall_vii"] = asm["dynCall_vii"]; -var dynCall_iiiiiii = Module["dynCall_iiiiiii"] = asm["dynCall_iiiiiii"]; -var dynCall_ii = Module["dynCall_ii"] = asm["dynCall_ii"]; -var dynCall_viii = Module["dynCall_viii"] = asm["dynCall_viii"]; -var dynCall_v = Module["dynCall_v"] = asm["dynCall_v"]; -var dynCall_iiiii = Module["dynCall_iiiii"] = asm["dynCall_iiiii"]; -var dynCall_viiiiii = Module["dynCall_viiiiii"] = asm["dynCall_viiiiii"]; -var dynCall_iii = Module["dynCall_iii"] = asm["dynCall_iii"]; -var dynCall_iiiiii = Module["dynCall_iiiiii"] = asm["dynCall_iiiiii"]; -var dynCall_viiii = Module["dynCall_viiii"] = asm["dynCall_viiii"]; - - Runtime.stackAlloc = asm['stackAlloc']; - Runtime.stackSave = asm['stackSave']; - Runtime.stackRestore = asm['stackRestore']; - Runtime.setTempRet0 = asm['setTempRet0']; - Runtime.getTempRet0 = asm['getTempRet0']; - - -// TODO: strip out parts of this we do not need - -//======= begin closure i64 code ======= - -// Copyright 2009 The Closure Library Authors. All Rights Reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS-IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -/** - * @fileoverview Defines a Long class for representing a 64-bit two's-complement - * integer value, which faithfully simulates the behavior of a Java "long". This - * implementation is derived from LongLib in GWT. - * - */ - -var i64Math = (function() { // Emscripten wrapper - var goog = { math: {} }; - - - /** - * Constructs a 64-bit two's-complement integer, given its low and high 32-bit - * values as *signed* integers. See the from* functions below for more - * convenient ways of constructing Longs. - * - * The internal representation of a long is the two given signed, 32-bit values. - * We use 32-bit pieces because these are the size of integers on which - * Javascript performs bit-operations. For operations like addition and - * multiplication, we split each number into 16-bit pieces, which can easily be - * multiplied within Javascript's floating-point representation without overflow - * or change in sign. - * - * In the algorithms below, we frequently reduce the negative case to the - * positive case by negating the input(s) and then post-processing the result. - * Note that we must ALWAYS check specially whether those values are MIN_VALUE - * (-2^63) because -MIN_VALUE == MIN_VALUE (since 2^63 cannot be represented as - * a positive number, it overflows back into a negative). Not handling this - * case would often result in infinite recursion. - * - * @param {number} low The low (signed) 32 bits of the long. - * @param {number} high The high (signed) 32 bits of the long. - * @constructor - */ - goog.math.Long = function(low, high) { - /** - * @type {number} - * @private - */ - this.low_ = low | 0; // force into 32 signed bits. - - /** - * @type {number} - * @private - */ - this.high_ = high | 0; // force into 32 signed bits. - }; - - - // NOTE: Common constant values ZERO, ONE, NEG_ONE, etc. are defined below the - // from* methods on which they depend. - - - /** - * A cache of the Long representations of small integer values. - * @type {!Object} - * @private - */ - goog.math.Long.IntCache_ = {}; - - - /** - * Returns a Long representing the given (32-bit) integer value. - * @param {number} value The 32-bit integer in question. - * @return {!goog.math.Long} The corresponding Long value. - */ - goog.math.Long.fromInt = function(value) { - if (-128 <= value && value < 128) { - var cachedObj = goog.math.Long.IntCache_[value]; - if (cachedObj) { - return cachedObj; - } - } - - var obj = new goog.math.Long(value | 0, value < 0 ? -1 : 0); - if (-128 <= value && value < 128) { - goog.math.Long.IntCache_[value] = obj; - } - return obj; - }; - - - /** - * Returns a Long representing the given value, provided that it is a finite - * number. Otherwise, zero is returned. - * @param {number} value The number in question. - * @return {!goog.math.Long} The corresponding Long value. - */ - goog.math.Long.fromNumber = function(value) { - if (isNaN(value) || !isFinite(value)) { - return goog.math.Long.ZERO; - } else if (value <= -goog.math.Long.TWO_PWR_63_DBL_) { - return goog.math.Long.MIN_VALUE; - } else if (value + 1 >= goog.math.Long.TWO_PWR_63_DBL_) { - return goog.math.Long.MAX_VALUE; - } else if (value < 0) { - return goog.math.Long.fromNumber(-value).negate(); - } else { - return new goog.math.Long( - (value % goog.math.Long.TWO_PWR_32_DBL_) | 0, - (value / goog.math.Long.TWO_PWR_32_DBL_) | 0); - } - }; - - - /** - * Returns a Long representing the 64-bit integer that comes by concatenating - * the given high and low bits. Each is assumed to use 32 bits. - * @param {number} lowBits The low 32-bits. - * @param {number} highBits The high 32-bits. - * @return {!goog.math.Long} The corresponding Long value. - */ - goog.math.Long.fromBits = function(lowBits, highBits) { - return new goog.math.Long(lowBits, highBits); - }; - - - /** - * Returns a Long representation of the given string, written using the given - * radix. - * @param {string} str The textual representation of the Long. - * @param {number=} opt_radix The radix in which the text is written. - * @return {!goog.math.Long} The corresponding Long value. - */ - goog.math.Long.fromString = function(str, opt_radix) { - if (str.length == 0) { - throw Error('number format error: empty string'); - } - - var radix = opt_radix || 10; - if (radix < 2 || 36 < radix) { - throw Error('radix out of range: ' + radix); - } - - if (str.charAt(0) == '-') { - return goog.math.Long.fromString(str.substring(1), radix).negate(); - } else if (str.indexOf('-') >= 0) { - throw Error('number format error: interior "-" character: ' + str); - } - - // Do several (8) digits each time through the loop, so as to - // minimize the calls to the very expensive emulated div. - var radixToPower = goog.math.Long.fromNumber(Math.pow(radix, 8)); - - var result = goog.math.Long.ZERO; - for (var i = 0; i < str.length; i += 8) { - var size = Math.min(8, str.length - i); - var value = parseInt(str.substring(i, i + size), radix); - if (size < 8) { - var power = goog.math.Long.fromNumber(Math.pow(radix, size)); - result = result.multiply(power).add(goog.math.Long.fromNumber(value)); - } else { - result = result.multiply(radixToPower); - result = result.add(goog.math.Long.fromNumber(value)); - } - } - return result; - }; - - - // NOTE: the compiler should inline these constant values below and then remove - // these variables, so there should be no runtime penalty for these. - - - /** - * Number used repeated below in calculations. This must appear before the - * first call to any from* function below. - * @type {number} - * @private - */ - goog.math.Long.TWO_PWR_16_DBL_ = 1 << 16; - - - /** - * @type {number} - * @private - */ - goog.math.Long.TWO_PWR_24_DBL_ = 1 << 24; - - - /** - * @type {number} - * @private - */ - goog.math.Long.TWO_PWR_32_DBL_ = - goog.math.Long.TWO_PWR_16_DBL_ * goog.math.Long.TWO_PWR_16_DBL_; - - - /** - * @type {number} - * @private - */ - goog.math.Long.TWO_PWR_31_DBL_ = - goog.math.Long.TWO_PWR_32_DBL_ / 2; - - - /** - * @type {number} - * @private - */ - goog.math.Long.TWO_PWR_48_DBL_ = - goog.math.Long.TWO_PWR_32_DBL_ * goog.math.Long.TWO_PWR_16_DBL_; - - - /** - * @type {number} - * @private - */ - goog.math.Long.TWO_PWR_64_DBL_ = - goog.math.Long.TWO_PWR_32_DBL_ * goog.math.Long.TWO_PWR_32_DBL_; - - - /** - * @type {number} - * @private - */ - goog.math.Long.TWO_PWR_63_DBL_ = - goog.math.Long.TWO_PWR_64_DBL_ / 2; - - - /** @type {!goog.math.Long} */ - goog.math.Long.ZERO = goog.math.Long.fromInt(0); - - - /** @type {!goog.math.Long} */ - goog.math.Long.ONE = goog.math.Long.fromInt(1); - - - /** @type {!goog.math.Long} */ - goog.math.Long.NEG_ONE = goog.math.Long.fromInt(-1); - - - /** @type {!goog.math.Long} */ - goog.math.Long.MAX_VALUE = - goog.math.Long.fromBits(0xFFFFFFFF | 0, 0x7FFFFFFF | 0); - - - /** @type {!goog.math.Long} */ - goog.math.Long.MIN_VALUE = goog.math.Long.fromBits(0, 0x80000000 | 0); - - - /** - * @type {!goog.math.Long} - * @private - */ - goog.math.Long.TWO_PWR_24_ = goog.math.Long.fromInt(1 << 24); - - - /** @return {number} The value, assuming it is a 32-bit integer. */ - goog.math.Long.prototype.toInt = function() { - return this.low_; - }; - - - /** @return {number} The closest floating-point representation to this value. */ - goog.math.Long.prototype.toNumber = function() { - return this.high_ * goog.math.Long.TWO_PWR_32_DBL_ + - this.getLowBitsUnsigned(); - }; - - - /** - * @param {number=} opt_radix The radix in which the text should be written. - * @return {string} The textual representation of this value. - */ - goog.math.Long.prototype.toString = function(opt_radix) { - var radix = opt_radix || 10; - if (radix < 2 || 36 < radix) { - throw Error('radix out of range: ' + radix); - } - - if (this.isZero()) { - return '0'; - } - - if (this.isNegative()) { - if (this.equals(goog.math.Long.MIN_VALUE)) { - // We need to change the Long value before it can be negated, so we remove - // the bottom-most digit in this base and then recurse to do the rest. - var radixLong = goog.math.Long.fromNumber(radix); - var div = this.div(radixLong); - var rem = div.multiply(radixLong).subtract(this); - return div.toString(radix) + rem.toInt().toString(radix); - } else { - return '-' + this.negate().toString(radix); - } - } - - // Do several (6) digits each time through the loop, so as to - // minimize the calls to the very expensive emulated div. - var radixToPower = goog.math.Long.fromNumber(Math.pow(radix, 6)); - - var rem = this; - var result = ''; - while (true) { - var remDiv = rem.div(radixToPower); - var intval = rem.subtract(remDiv.multiply(radixToPower)).toInt(); - var digits = intval.toString(radix); - - rem = remDiv; - if (rem.isZero()) { - return digits + result; - } else { - while (digits.length < 6) { - digits = '0' + digits; - } - result = '' + digits + result; - } - } - }; - - - /** @return {number} The high 32-bits as a signed value. */ - goog.math.Long.prototype.getHighBits = function() { - return this.high_; - }; - - - /** @return {number} The low 32-bits as a signed value. */ - goog.math.Long.prototype.getLowBits = function() { - return this.low_; - }; - - - /** @return {number} The low 32-bits as an unsigned value. */ - goog.math.Long.prototype.getLowBitsUnsigned = function() { - return (this.low_ >= 0) ? - this.low_ : goog.math.Long.TWO_PWR_32_DBL_ + this.low_; - }; - - - /** - * @return {number} Returns the number of bits needed to represent the absolute - * value of this Long. - */ - goog.math.Long.prototype.getNumBitsAbs = function() { - if (this.isNegative()) { - if (this.equals(goog.math.Long.MIN_VALUE)) { - return 64; - } else { - return this.negate().getNumBitsAbs(); - } - } else { - var val = this.high_ != 0 ? this.high_ : this.low_; - for (var bit = 31; bit > 0; bit--) { - if ((val & (1 << bit)) != 0) { - break; - } - } - return this.high_ != 0 ? bit + 33 : bit + 1; - } - }; - - - /** @return {boolean} Whether this value is zero. */ - goog.math.Long.prototype.isZero = function() { - return this.high_ == 0 && this.low_ == 0; - }; - - - /** @return {boolean} Whether this value is negative. */ - goog.math.Long.prototype.isNegative = function() { - return this.high_ < 0; - }; - - - /** @return {boolean} Whether this value is odd. */ - goog.math.Long.prototype.isOdd = function() { - return (this.low_ & 1) == 1; - }; - - - /** - * @param {goog.math.Long} other Long to compare against. - * @return {boolean} Whether this Long equals the other. - */ - goog.math.Long.prototype.equals = function(other) { - return (this.high_ == other.high_) && (this.low_ == other.low_); - }; - - - /** - * @param {goog.math.Long} other Long to compare against. - * @return {boolean} Whether this Long does not equal the other. - */ - goog.math.Long.prototype.notEquals = function(other) { - return (this.high_ != other.high_) || (this.low_ != other.low_); - }; - - - /** - * @param {goog.math.Long} other Long to compare against. - * @return {boolean} Whether this Long is less than the other. - */ - goog.math.Long.prototype.lessThan = function(other) { - return this.compare(other) < 0; - }; - - - /** - * @param {goog.math.Long} other Long to compare against. - * @return {boolean} Whether this Long is less than or equal to the other. - */ - goog.math.Long.prototype.lessThanOrEqual = function(other) { - return this.compare(other) <= 0; - }; - - - /** - * @param {goog.math.Long} other Long to compare against. - * @return {boolean} Whether this Long is greater than the other. - */ - goog.math.Long.prototype.greaterThan = function(other) { - return this.compare(other) > 0; - }; - - - /** - * @param {goog.math.Long} other Long to compare against. - * @return {boolean} Whether this Long is greater than or equal to the other. - */ - goog.math.Long.prototype.greaterThanOrEqual = function(other) { - return this.compare(other) >= 0; - }; - - - /** - * Compares this Long with the given one. - * @param {goog.math.Long} other Long to compare against. - * @return {number} 0 if they are the same, 1 if the this is greater, and -1 - * if the given one is greater. - */ - goog.math.Long.prototype.compare = function(other) { - if (this.equals(other)) { - return 0; - } - - var thisNeg = this.isNegative(); - var otherNeg = other.isNegative(); - if (thisNeg && !otherNeg) { - return -1; - } - if (!thisNeg && otherNeg) { - return 1; - } - - // at this point, the signs are the same, so subtraction will not overflow - if (this.subtract(other).isNegative()) { - return -1; - } else { - return 1; - } - }; - - - /** @return {!goog.math.Long} The negation of this value. */ - goog.math.Long.prototype.negate = function() { - if (this.equals(goog.math.Long.MIN_VALUE)) { - return goog.math.Long.MIN_VALUE; - } else { - return this.not().add(goog.math.Long.ONE); - } - }; - - - /** - * Returns the sum of this and the given Long. - * @param {goog.math.Long} other Long to add to this one. - * @return {!goog.math.Long} The sum of this and the given Long. - */ - goog.math.Long.prototype.add = function(other) { - // Divide each number into 4 chunks of 16 bits, and then sum the chunks. - - var a48 = this.high_ >>> 16; - var a32 = this.high_ & 0xFFFF; - var a16 = this.low_ >>> 16; - var a00 = this.low_ & 0xFFFF; - - var b48 = other.high_ >>> 16; - var b32 = other.high_ & 0xFFFF; - var b16 = other.low_ >>> 16; - var b00 = other.low_ & 0xFFFF; - - var c48 = 0, c32 = 0, c16 = 0, c00 = 0; - c00 += a00 + b00; - c16 += c00 >>> 16; - c00 &= 0xFFFF; - c16 += a16 + b16; - c32 += c16 >>> 16; - c16 &= 0xFFFF; - c32 += a32 + b32; - c48 += c32 >>> 16; - c32 &= 0xFFFF; - c48 += a48 + b48; - c48 &= 0xFFFF; - return goog.math.Long.fromBits((c16 << 16) | c00, (c48 << 16) | c32); - }; - - - /** - * Returns the difference of this and the given Long. - * @param {goog.math.Long} other Long to subtract from this. - * @return {!goog.math.Long} The difference of this and the given Long. - */ - goog.math.Long.prototype.subtract = function(other) { - return this.add(other.negate()); - }; - - - /** - * Returns the product of this and the given long. - * @param {goog.math.Long} other Long to multiply with this. - * @return {!goog.math.Long} The product of this and the other. - */ - goog.math.Long.prototype.multiply = function(other) { - if (this.isZero()) { - return goog.math.Long.ZERO; - } else if (other.isZero()) { - return goog.math.Long.ZERO; - } - - if (this.equals(goog.math.Long.MIN_VALUE)) { - return other.isOdd() ? goog.math.Long.MIN_VALUE : goog.math.Long.ZERO; - } else if (other.equals(goog.math.Long.MIN_VALUE)) { - return this.isOdd() ? goog.math.Long.MIN_VALUE : goog.math.Long.ZERO; - } - - if (this.isNegative()) { - if (other.isNegative()) { - return this.negate().multiply(other.negate()); - } else { - return this.negate().multiply(other).negate(); - } - } else if (other.isNegative()) { - return this.multiply(other.negate()).negate(); - } - - // If both longs are small, use float multiplication - if (this.lessThan(goog.math.Long.TWO_PWR_24_) && - other.lessThan(goog.math.Long.TWO_PWR_24_)) { - return goog.math.Long.fromNumber(this.toNumber() * other.toNumber()); - } - - // Divide each long into 4 chunks of 16 bits, and then add up 4x4 products. - // We can skip products that would overflow. - - var a48 = this.high_ >>> 16; - var a32 = this.high_ & 0xFFFF; - var a16 = this.low_ >>> 16; - var a00 = this.low_ & 0xFFFF; - - var b48 = other.high_ >>> 16; - var b32 = other.high_ & 0xFFFF; - var b16 = other.low_ >>> 16; - var b00 = other.low_ & 0xFFFF; - - var c48 = 0, c32 = 0, c16 = 0, c00 = 0; - c00 += a00 * b00; - c16 += c00 >>> 16; - c00 &= 0xFFFF; - c16 += a16 * b00; - c32 += c16 >>> 16; - c16 &= 0xFFFF; - c16 += a00 * b16; - c32 += c16 >>> 16; - c16 &= 0xFFFF; - c32 += a32 * b00; - c48 += c32 >>> 16; - c32 &= 0xFFFF; - c32 += a16 * b16; - c48 += c32 >>> 16; - c32 &= 0xFFFF; - c32 += a00 * b32; - c48 += c32 >>> 16; - c32 &= 0xFFFF; - c48 += a48 * b00 + a32 * b16 + a16 * b32 + a00 * b48; - c48 &= 0xFFFF; - return goog.math.Long.fromBits((c16 << 16) | c00, (c48 << 16) | c32); - }; - - - /** - * Returns this Long divided by the given one. - * @param {goog.math.Long} other Long by which to divide. - * @return {!goog.math.Long} This Long divided by the given one. - */ - goog.math.Long.prototype.div = function(other) { - if (other.isZero()) { - throw Error('division by zero'); - } else if (this.isZero()) { - return goog.math.Long.ZERO; - } - - if (this.equals(goog.math.Long.MIN_VALUE)) { - if (other.equals(goog.math.Long.ONE) || - other.equals(goog.math.Long.NEG_ONE)) { - return goog.math.Long.MIN_VALUE; // recall that -MIN_VALUE == MIN_VALUE - } else if (other.equals(goog.math.Long.MIN_VALUE)) { - return goog.math.Long.ONE; - } else { - // At this point, we have |other| >= 2, so |this/other| < |MIN_VALUE|. - var halfThis = this.shiftRight(1); - var approx = halfThis.div(other).shiftLeft(1); - if (approx.equals(goog.math.Long.ZERO)) { - return other.isNegative() ? goog.math.Long.ONE : goog.math.Long.NEG_ONE; - } else { - var rem = this.subtract(other.multiply(approx)); - var result = approx.add(rem.div(other)); - return result; - } - } - } else if (other.equals(goog.math.Long.MIN_VALUE)) { - return goog.math.Long.ZERO; - } - - if (this.isNegative()) { - if (other.isNegative()) { - return this.negate().div(other.negate()); - } else { - return this.negate().div(other).negate(); - } - } else if (other.isNegative()) { - return this.div(other.negate()).negate(); - } - - // Repeat the following until the remainder is less than other: find a - // floating-point that approximates remainder / other *from below*, add this - // into the result, and subtract it from the remainder. It is critical that - // the approximate value is less than or equal to the real value so that the - // remainder never becomes negative. - var res = goog.math.Long.ZERO; - var rem = this; - while (rem.greaterThanOrEqual(other)) { - // Approximate the result of division. This may be a little greater or - // smaller than the actual value. - var approx = Math.max(1, Math.floor(rem.toNumber() / other.toNumber())); - - // We will tweak the approximate result by changing it in the 48-th digit or - // the smallest non-fractional digit, whichever is larger. - var log2 = Math.ceil(Math.log(approx) / Math.LN2); - var delta = (log2 <= 48) ? 1 : Math.pow(2, log2 - 48); - - // Decrease the approximation until it is smaller than the remainder. Note - // that if it is too large, the product overflows and is negative. - var approxRes = goog.math.Long.fromNumber(approx); - var approxRem = approxRes.multiply(other); - while (approxRem.isNegative() || approxRem.greaterThan(rem)) { - approx -= delta; - approxRes = goog.math.Long.fromNumber(approx); - approxRem = approxRes.multiply(other); - } - - // We know the answer can't be zero... and actually, zero would cause - // infinite recursion since we would make no progress. - if (approxRes.isZero()) { - approxRes = goog.math.Long.ONE; - } - - res = res.add(approxRes); - rem = rem.subtract(approxRem); - } - return res; - }; - - - /** - * Returns this Long modulo the given one. - * @param {goog.math.Long} other Long by which to mod. - * @return {!goog.math.Long} This Long modulo the given one. - */ - goog.math.Long.prototype.modulo = function(other) { - return this.subtract(this.div(other).multiply(other)); - }; - - - /** @return {!goog.math.Long} The bitwise-NOT of this value. */ - goog.math.Long.prototype.not = function() { - return goog.math.Long.fromBits(~this.low_, ~this.high_); - }; - - - /** - * Returns the bitwise-AND of this Long and the given one. - * @param {goog.math.Long} other The Long with which to AND. - * @return {!goog.math.Long} The bitwise-AND of this and the other. - */ - goog.math.Long.prototype.and = function(other) { - return goog.math.Long.fromBits(this.low_ & other.low_, - this.high_ & other.high_); - }; - - - /** - * Returns the bitwise-OR of this Long and the given one. - * @param {goog.math.Long} other The Long with which to OR. - * @return {!goog.math.Long} The bitwise-OR of this and the other. - */ - goog.math.Long.prototype.or = function(other) { - return goog.math.Long.fromBits(this.low_ | other.low_, - this.high_ | other.high_); - }; - - - /** - * Returns the bitwise-XOR of this Long and the given one. - * @param {goog.math.Long} other The Long with which to XOR. - * @return {!goog.math.Long} The bitwise-XOR of this and the other. - */ - goog.math.Long.prototype.xor = function(other) { - return goog.math.Long.fromBits(this.low_ ^ other.low_, - this.high_ ^ other.high_); - }; - - - /** - * Returns this Long with bits shifted to the left by the given amount. - * @param {number} numBits The number of bits by which to shift. - * @return {!goog.math.Long} This shifted to the left by the given amount. - */ - goog.math.Long.prototype.shiftLeft = function(numBits) { - numBits &= 63; - if (numBits == 0) { - return this; - } else { - var low = this.low_; - if (numBits < 32) { - var high = this.high_; - return goog.math.Long.fromBits( - low << numBits, - (high << numBits) | (low >>> (32 - numBits))); - } else { - return goog.math.Long.fromBits(0, low << (numBits - 32)); - } - } - }; - - - /** - * Returns this Long with bits shifted to the right by the given amount. - * @param {number} numBits The number of bits by which to shift. - * @return {!goog.math.Long} This shifted to the right by the given amount. - */ - goog.math.Long.prototype.shiftRight = function(numBits) { - numBits &= 63; - if (numBits == 0) { - return this; - } else { - var high = this.high_; - if (numBits < 32) { - var low = this.low_; - return goog.math.Long.fromBits( - (low >>> numBits) | (high << (32 - numBits)), - high >> numBits); - } else { - return goog.math.Long.fromBits( - high >> (numBits - 32), - high >= 0 ? 0 : -1); - } - } - }; - - - /** - * Returns this Long with bits shifted to the right by the given amount, with - * the new top bits matching the current sign bit. - * @param {number} numBits The number of bits by which to shift. - * @return {!goog.math.Long} This shifted to the right by the given amount, with - * zeros placed into the new leading bits. - */ - goog.math.Long.prototype.shiftRightUnsigned = function(numBits) { - numBits &= 63; - if (numBits == 0) { - return this; - } else { - var high = this.high_; - if (numBits < 32) { - var low = this.low_; - return goog.math.Long.fromBits( - (low >>> numBits) | (high << (32 - numBits)), - high >>> numBits); - } else if (numBits == 32) { - return goog.math.Long.fromBits(high, 0); - } else { - return goog.math.Long.fromBits(high >>> (numBits - 32), 0); - } - } - }; - - //======= begin jsbn ======= - - var navigator = { appName: 'Modern Browser' }; // polyfill a little - - // Copyright (c) 2005 Tom Wu - // All Rights Reserved. - // http://www-cs-students.stanford.edu/~tjw/jsbn/ - - /* - * Copyright (c) 2003-2005 Tom Wu - * All Rights Reserved. - * - * 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" AND WITHOUT WARRANTY OF ANY KIND, - * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY - * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. - * - * IN NO EVENT SHALL TOM WU BE LIABLE FOR ANY SPECIAL, INCIDENTAL, - * INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER - * RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF - * THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT - * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - * - * In addition, the following condition applies: - * - * All redistributions must retain an intact copy of this copyright notice - * and disclaimer. - */ - - // Basic JavaScript BN library - subset useful for RSA encryption. - - // Bits per digit - var dbits; - - // JavaScript engine analysis - var canary = 0xdeadbeefcafe; - var j_lm = ((canary&0xffffff)==0xefcafe); - - // (public) Constructor - function BigInteger(a,b,c) { - if(a != null) - if("number" == typeof a) this.fromNumber(a,b,c); - else if(b == null && "string" != typeof a) this.fromString(a,256); - else this.fromString(a,b); - } - - // return new, unset BigInteger - function nbi() { return new BigInteger(null); } - - // am: Compute w_j += (x*this_i), propagate carries, - // c is initial carry, returns final carry. - // c < 3*dvalue, x < 2*dvalue, this_i < dvalue - // We need to select the fastest one that works in this environment. - - // am1: use a single mult and divide to get the high bits, - // max digit bits should be 26 because - // max internal value = 2*dvalue^2-2*dvalue (< 2^53) - function am1(i,x,w,j,c,n) { - while(--n >= 0) { - var v = x*this[i++]+w[j]+c; - c = Math.floor(v/0x4000000); - w[j++] = v&0x3ffffff; - } - return c; - } - // am2 avoids a big mult-and-extract completely. - // Max digit bits should be <= 30 because we do bitwise ops - // on values up to 2*hdvalue^2-hdvalue-1 (< 2^31) - function am2(i,x,w,j,c,n) { - var xl = x&0x7fff, xh = x>>15; - while(--n >= 0) { - var l = this[i]&0x7fff; - var h = this[i++]>>15; - var m = xh*l+h*xl; - l = xl*l+((m&0x7fff)<<15)+w[j]+(c&0x3fffffff); - c = (l>>>30)+(m>>>15)+xh*h+(c>>>30); - w[j++] = l&0x3fffffff; - } - return c; - } - // Alternately, set max digit bits to 28 since some - // browsers slow down when dealing with 32-bit numbers. - function am3(i,x,w,j,c,n) { - var xl = x&0x3fff, xh = x>>14; - while(--n >= 0) { - var l = this[i]&0x3fff; - var h = this[i++]>>14; - var m = xh*l+h*xl; - l = xl*l+((m&0x3fff)<<14)+w[j]+c; - c = (l>>28)+(m>>14)+xh*h; - w[j++] = l&0xfffffff; - } - return c; - } - if(j_lm && (navigator.appName == "Microsoft Internet Explorer")) { - BigInteger.prototype.am = am2; - dbits = 30; - } - else if(j_lm && (navigator.appName != "Netscape")) { - BigInteger.prototype.am = am1; - dbits = 26; - } - else { // Mozilla/Netscape seems to prefer am3 - BigInteger.prototype.am = am3; - dbits = 28; - } - - BigInteger.prototype.DB = dbits; - BigInteger.prototype.DM = ((1<= 0; --i) r[i] = this[i]; - r.t = this.t; - r.s = this.s; - } - - // (protected) set from integer value x, -DV <= x < DV - function bnpFromInt(x) { - this.t = 1; - this.s = (x<0)?-1:0; - if(x > 0) this[0] = x; - else if(x < -1) this[0] = x+DV; - else this.t = 0; - } - - // return bigint initialized to value - function nbv(i) { var r = nbi(); r.fromInt(i); return r; } - - // (protected) set from string and radix - function bnpFromString(s,b) { - var k; - if(b == 16) k = 4; - else if(b == 8) k = 3; - else if(b == 256) k = 8; // byte array - else if(b == 2) k = 1; - else if(b == 32) k = 5; - else if(b == 4) k = 2; - else { this.fromRadix(s,b); return; } - this.t = 0; - this.s = 0; - var i = s.length, mi = false, sh = 0; - while(--i >= 0) { - var x = (k==8)?s[i]&0xff:intAt(s,i); - if(x < 0) { - if(s.charAt(i) == "-") mi = true; - continue; - } - mi = false; - if(sh == 0) - this[this.t++] = x; - else if(sh+k > this.DB) { - this[this.t-1] |= (x&((1<<(this.DB-sh))-1))<>(this.DB-sh)); - } - else - this[this.t-1] |= x<= this.DB) sh -= this.DB; - } - if(k == 8 && (s[0]&0x80) != 0) { - this.s = -1; - if(sh > 0) this[this.t-1] |= ((1<<(this.DB-sh))-1)< 0 && this[this.t-1] == c) --this.t; - } - - // (public) return string representation in given radix - function bnToString(b) { - if(this.s < 0) return "-"+this.negate().toString(b); - var k; - if(b == 16) k = 4; - else if(b == 8) k = 3; - else if(b == 2) k = 1; - else if(b == 32) k = 5; - else if(b == 4) k = 2; - else return this.toRadix(b); - var km = (1< 0) { - if(p < this.DB && (d = this[i]>>p) > 0) { m = true; r = int2char(d); } - while(i >= 0) { - if(p < k) { - d = (this[i]&((1<>(p+=this.DB-k); - } - else { - d = (this[i]>>(p-=k))&km; - if(p <= 0) { p += this.DB; --i; } - } - if(d > 0) m = true; - if(m) r += int2char(d); - } - } - return m?r:"0"; - } - - // (public) -this - function bnNegate() { var r = nbi(); BigInteger.ZERO.subTo(this,r); return r; } - - // (public) |this| - function bnAbs() { return (this.s<0)?this.negate():this; } - - // (public) return + if this > a, - if this < a, 0 if equal - function bnCompareTo(a) { - var r = this.s-a.s; - if(r != 0) return r; - var i = this.t; - r = i-a.t; - if(r != 0) return (this.s<0)?-r:r; - while(--i >= 0) if((r=this[i]-a[i]) != 0) return r; - return 0; - } - - // returns bit length of the integer x - function nbits(x) { - var r = 1, t; - if((t=x>>>16) != 0) { x = t; r += 16; } - if((t=x>>8) != 0) { x = t; r += 8; } - if((t=x>>4) != 0) { x = t; r += 4; } - if((t=x>>2) != 0) { x = t; r += 2; } - if((t=x>>1) != 0) { x = t; r += 1; } - return r; - } - - // (public) return the number of bits in "this" - function bnBitLength() { - if(this.t <= 0) return 0; - return this.DB*(this.t-1)+nbits(this[this.t-1]^(this.s&this.DM)); - } - - // (protected) r = this << n*DB - function bnpDLShiftTo(n,r) { - var i; - for(i = this.t-1; i >= 0; --i) r[i+n] = this[i]; - for(i = n-1; i >= 0; --i) r[i] = 0; - r.t = this.t+n; - r.s = this.s; - } - - // (protected) r = this >> n*DB - function bnpDRShiftTo(n,r) { - for(var i = n; i < this.t; ++i) r[i-n] = this[i]; - r.t = Math.max(this.t-n,0); - r.s = this.s; - } - - // (protected) r = this << n - function bnpLShiftTo(n,r) { - var bs = n%this.DB; - var cbs = this.DB-bs; - var bm = (1<= 0; --i) { - r[i+ds+1] = (this[i]>>cbs)|c; - c = (this[i]&bm)<= 0; --i) r[i] = 0; - r[ds] = c; - r.t = this.t+ds+1; - r.s = this.s; - r.clamp(); - } - - // (protected) r = this >> n - function bnpRShiftTo(n,r) { - r.s = this.s; - var ds = Math.floor(n/this.DB); - if(ds >= this.t) { r.t = 0; return; } - var bs = n%this.DB; - var cbs = this.DB-bs; - var bm = (1<>bs; - for(var i = ds+1; i < this.t; ++i) { - r[i-ds-1] |= (this[i]&bm)<>bs; - } - if(bs > 0) r[this.t-ds-1] |= (this.s&bm)<>= this.DB; - } - if(a.t < this.t) { - c -= a.s; - while(i < this.t) { - c += this[i]; - r[i++] = c&this.DM; - c >>= this.DB; - } - c += this.s; - } - else { - c += this.s; - while(i < a.t) { - c -= a[i]; - r[i++] = c&this.DM; - c >>= this.DB; - } - c -= a.s; - } - r.s = (c<0)?-1:0; - if(c < -1) r[i++] = this.DV+c; - else if(c > 0) r[i++] = c; - r.t = i; - r.clamp(); - } - - // (protected) r = this * a, r != this,a (HAC 14.12) - // "this" should be the larger one if appropriate. - function bnpMultiplyTo(a,r) { - var x = this.abs(), y = a.abs(); - var i = x.t; - r.t = i+y.t; - while(--i >= 0) r[i] = 0; - for(i = 0; i < y.t; ++i) r[i+x.t] = x.am(0,y[i],r,i,0,x.t); - r.s = 0; - r.clamp(); - if(this.s != a.s) BigInteger.ZERO.subTo(r,r); - } - - // (protected) r = this^2, r != this (HAC 14.16) - function bnpSquareTo(r) { - var x = this.abs(); - var i = r.t = 2*x.t; - while(--i >= 0) r[i] = 0; - for(i = 0; i < x.t-1; ++i) { - var c = x.am(i,x[i],r,2*i,0,1); - if((r[i+x.t]+=x.am(i+1,2*x[i],r,2*i+1,c,x.t-i-1)) >= x.DV) { - r[i+x.t] -= x.DV; - r[i+x.t+1] = 1; - } - } - if(r.t > 0) r[r.t-1] += x.am(i,x[i],r,2*i,0,1); - r.s = 0; - r.clamp(); - } - - // (protected) divide this by m, quotient and remainder to q, r (HAC 14.20) - // r != q, this != m. q or r may be null. - function bnpDivRemTo(m,q,r) { - var pm = m.abs(); - if(pm.t <= 0) return; - var pt = this.abs(); - if(pt.t < pm.t) { - if(q != null) q.fromInt(0); - if(r != null) this.copyTo(r); - return; - } - if(r == null) r = nbi(); - var y = nbi(), ts = this.s, ms = m.s; - var nsh = this.DB-nbits(pm[pm.t-1]); // normalize modulus - if(nsh > 0) { pm.lShiftTo(nsh,y); pt.lShiftTo(nsh,r); } - else { pm.copyTo(y); pt.copyTo(r); } - var ys = y.t; - var y0 = y[ys-1]; - if(y0 == 0) return; - var yt = y0*(1<1)?y[ys-2]>>this.F2:0); - var d1 = this.FV/yt, d2 = (1<= 0) { - r[r.t++] = 1; - r.subTo(t,r); - } - BigInteger.ONE.dlShiftTo(ys,t); - t.subTo(y,y); // "negative" y so we can replace sub with am later - while(y.t < ys) y[y.t++] = 0; - while(--j >= 0) { - // Estimate quotient digit - var qd = (r[--i]==y0)?this.DM:Math.floor(r[i]*d1+(r[i-1]+e)*d2); - if((r[i]+=y.am(0,qd,r,j,0,ys)) < qd) { // Try it out - y.dlShiftTo(j,t); - r.subTo(t,r); - while(r[i] < --qd) r.subTo(t,r); - } - } - if(q != null) { - r.drShiftTo(ys,q); - if(ts != ms) BigInteger.ZERO.subTo(q,q); - } - r.t = ys; - r.clamp(); - if(nsh > 0) r.rShiftTo(nsh,r); // Denormalize remainder - if(ts < 0) BigInteger.ZERO.subTo(r,r); - } - - // (public) this mod a - function bnMod(a) { - var r = nbi(); - this.abs().divRemTo(a,null,r); - if(this.s < 0 && r.compareTo(BigInteger.ZERO) > 0) a.subTo(r,r); - return r; - } - - // Modular reduction using "classic" algorithm - function Classic(m) { this.m = m; } - function cConvert(x) { - if(x.s < 0 || x.compareTo(this.m) >= 0) return x.mod(this.m); - else return x; - } - function cRevert(x) { return x; } - function cReduce(x) { x.divRemTo(this.m,null,x); } - function cMulTo(x,y,r) { x.multiplyTo(y,r); this.reduce(r); } - function cSqrTo(x,r) { x.squareTo(r); this.reduce(r); } - - Classic.prototype.convert = cConvert; - Classic.prototype.revert = cRevert; - Classic.prototype.reduce = cReduce; - Classic.prototype.mulTo = cMulTo; - Classic.prototype.sqrTo = cSqrTo; - - // (protected) return "-1/this % 2^DB"; useful for Mont. reduction - // justification: - // xy == 1 (mod m) - // xy = 1+km - // xy(2-xy) = (1+km)(1-km) - // x[y(2-xy)] = 1-k^2m^2 - // x[y(2-xy)] == 1 (mod m^2) - // if y is 1/x mod m, then y(2-xy) is 1/x mod m^2 - // should reduce x and y(2-xy) by m^2 at each step to keep size bounded. - // JS multiply "overflows" differently from C/C++, so care is needed here. - function bnpInvDigit() { - if(this.t < 1) return 0; - var x = this[0]; - if((x&1) == 0) return 0; - var y = x&3; // y == 1/x mod 2^2 - y = (y*(2-(x&0xf)*y))&0xf; // y == 1/x mod 2^4 - y = (y*(2-(x&0xff)*y))&0xff; // y == 1/x mod 2^8 - y = (y*(2-(((x&0xffff)*y)&0xffff)))&0xffff; // y == 1/x mod 2^16 - // last step - calculate inverse mod DV directly; - // assumes 16 < DB <= 32 and assumes ability to handle 48-bit ints - y = (y*(2-x*y%this.DV))%this.DV; // y == 1/x mod 2^dbits - // we really want the negative inverse, and -DV < y < DV - return (y>0)?this.DV-y:-y; - } - - // Montgomery reduction - function Montgomery(m) { - this.m = m; - this.mp = m.invDigit(); - this.mpl = this.mp&0x7fff; - this.mph = this.mp>>15; - this.um = (1<<(m.DB-15))-1; - this.mt2 = 2*m.t; - } - - // xR mod m - function montConvert(x) { - var r = nbi(); - x.abs().dlShiftTo(this.m.t,r); - r.divRemTo(this.m,null,r); - if(x.s < 0 && r.compareTo(BigInteger.ZERO) > 0) this.m.subTo(r,r); - return r; - } - - // x/R mod m - function montRevert(x) { - var r = nbi(); - x.copyTo(r); - this.reduce(r); - return r; - } - - // x = x/R mod m (HAC 14.32) - function montReduce(x) { - while(x.t <= this.mt2) // pad x so am has enough room later - x[x.t++] = 0; - for(var i = 0; i < this.m.t; ++i) { - // faster way of calculating u0 = x[i]*mp mod DV - var j = x[i]&0x7fff; - var u0 = (j*this.mpl+(((j*this.mph+(x[i]>>15)*this.mpl)&this.um)<<15))&x.DM; - // use am to combine the multiply-shift-add into one call - j = i+this.m.t; - x[j] += this.m.am(0,u0,x,i,0,this.m.t); - // propagate carry - while(x[j] >= x.DV) { x[j] -= x.DV; x[++j]++; } - } - x.clamp(); - x.drShiftTo(this.m.t,x); - if(x.compareTo(this.m) >= 0) x.subTo(this.m,x); - } - - // r = "x^2/R mod m"; x != r - function montSqrTo(x,r) { x.squareTo(r); this.reduce(r); } - - // r = "xy/R mod m"; x,y != r - function montMulTo(x,y,r) { x.multiplyTo(y,r); this.reduce(r); } - - Montgomery.prototype.convert = montConvert; - Montgomery.prototype.revert = montRevert; - Montgomery.prototype.reduce = montReduce; - Montgomery.prototype.mulTo = montMulTo; - Montgomery.prototype.sqrTo = montSqrTo; - - // (protected) true iff this is even - function bnpIsEven() { return ((this.t>0)?(this[0]&1):this.s) == 0; } - - // (protected) this^e, e < 2^32, doing sqr and mul with "r" (HAC 14.79) - function bnpExp(e,z) { - if(e > 0xffffffff || e < 1) return BigInteger.ONE; - var r = nbi(), r2 = nbi(), g = z.convert(this), i = nbits(e)-1; - g.copyTo(r); - while(--i >= 0) { - z.sqrTo(r,r2); - if((e&(1< 0) z.mulTo(r2,g,r); - else { var t = r; r = r2; r2 = t; } - } - return z.revert(r); - } - - // (public) this^e % m, 0 <= e < 2^32 - function bnModPowInt(e,m) { - var z; - if(e < 256 || m.isEven()) z = new Classic(m); else z = new Montgomery(m); - return this.exp(e,z); - } - - // protected - BigInteger.prototype.copyTo = bnpCopyTo; - BigInteger.prototype.fromInt = bnpFromInt; - BigInteger.prototype.fromString = bnpFromString; - BigInteger.prototype.clamp = bnpClamp; - BigInteger.prototype.dlShiftTo = bnpDLShiftTo; - BigInteger.prototype.drShiftTo = bnpDRShiftTo; - BigInteger.prototype.lShiftTo = bnpLShiftTo; - BigInteger.prototype.rShiftTo = bnpRShiftTo; - BigInteger.prototype.subTo = bnpSubTo; - BigInteger.prototype.multiplyTo = bnpMultiplyTo; - BigInteger.prototype.squareTo = bnpSquareTo; - BigInteger.prototype.divRemTo = bnpDivRemTo; - BigInteger.prototype.invDigit = bnpInvDigit; - BigInteger.prototype.isEven = bnpIsEven; - BigInteger.prototype.exp = bnpExp; - - // public - BigInteger.prototype.toString = bnToString; - BigInteger.prototype.negate = bnNegate; - BigInteger.prototype.abs = bnAbs; - BigInteger.prototype.compareTo = bnCompareTo; - BigInteger.prototype.bitLength = bnBitLength; - BigInteger.prototype.mod = bnMod; - BigInteger.prototype.modPowInt = bnModPowInt; - - // "constants" - BigInteger.ZERO = nbv(0); - BigInteger.ONE = nbv(1); - - // jsbn2 stuff - - // (protected) convert from radix string - function bnpFromRadix(s,b) { - this.fromInt(0); - if(b == null) b = 10; - var cs = this.chunkSize(b); - var d = Math.pow(b,cs), mi = false, j = 0, w = 0; - for(var i = 0; i < s.length; ++i) { - var x = intAt(s,i); - if(x < 0) { - if(s.charAt(i) == "-" && this.signum() == 0) mi = true; - continue; - } - w = b*w+x; - if(++j >= cs) { - this.dMultiply(d); - this.dAddOffset(w,0); - j = 0; - w = 0; - } - } - if(j > 0) { - this.dMultiply(Math.pow(b,j)); - this.dAddOffset(w,0); - } - if(mi) BigInteger.ZERO.subTo(this,this); - } - - // (protected) return x s.t. r^x < DV - function bnpChunkSize(r) { return Math.floor(Math.LN2*this.DB/Math.log(r)); } - - // (public) 0 if this == 0, 1 if this > 0 - function bnSigNum() { - if(this.s < 0) return -1; - else if(this.t <= 0 || (this.t == 1 && this[0] <= 0)) return 0; - else return 1; - } - - // (protected) this *= n, this >= 0, 1 < n < DV - function bnpDMultiply(n) { - this[this.t] = this.am(0,n-1,this,0,0,this.t); - ++this.t; - this.clamp(); - } - - // (protected) this += n << w words, this >= 0 - function bnpDAddOffset(n,w) { - if(n == 0) return; - while(this.t <= w) this[this.t++] = 0; - this[w] += n; - while(this[w] >= this.DV) { - this[w] -= this.DV; - if(++w >= this.t) this[this.t++] = 0; - ++this[w]; - } - } - - // (protected) convert to radix string - function bnpToRadix(b) { - if(b == null) b = 10; - if(this.signum() == 0 || b < 2 || b > 36) return "0"; - var cs = this.chunkSize(b); - var a = Math.pow(b,cs); - var d = nbv(a), y = nbi(), z = nbi(), r = ""; - this.divRemTo(d,y,z); - while(y.signum() > 0) { - r = (a+z.intValue()).toString(b).substr(1) + r; - y.divRemTo(d,y,z); - } - return z.intValue().toString(b) + r; - } - - // (public) return value as integer - function bnIntValue() { - if(this.s < 0) { - if(this.t == 1) return this[0]-this.DV; - else if(this.t == 0) return -1; - } - else if(this.t == 1) return this[0]; - else if(this.t == 0) return 0; - // assumes 16 < DB < 32 - return ((this[1]&((1<<(32-this.DB))-1))<>= this.DB; - } - if(a.t < this.t) { - c += a.s; - while(i < this.t) { - c += this[i]; - r[i++] = c&this.DM; - c >>= this.DB; - } - c += this.s; - } - else { - c += this.s; - while(i < a.t) { - c += a[i]; - r[i++] = c&this.DM; - c >>= this.DB; - } - c += a.s; - } - r.s = (c<0)?-1:0; - if(c > 0) r[i++] = c; - else if(c < -1) r[i++] = this.DV+c; - r.t = i; - r.clamp(); - } - - BigInteger.prototype.fromRadix = bnpFromRadix; - BigInteger.prototype.chunkSize = bnpChunkSize; - BigInteger.prototype.signum = bnSigNum; - BigInteger.prototype.dMultiply = bnpDMultiply; - BigInteger.prototype.dAddOffset = bnpDAddOffset; - BigInteger.prototype.toRadix = bnpToRadix; - BigInteger.prototype.intValue = bnIntValue; - BigInteger.prototype.addTo = bnpAddTo; - - //======= end jsbn ======= - - // Emscripten wrapper - var Wrapper = { - abs: function(l, h) { - var x = new goog.math.Long(l, h); - var ret; - if (x.isNegative()) { - ret = x.negate(); - } else { - ret = x; - } - HEAP32[tempDoublePtr>>2] = ret.low_; - HEAP32[tempDoublePtr+4>>2] = ret.high_; - }, - ensureTemps: function() { - if (Wrapper.ensuredTemps) return; - Wrapper.ensuredTemps = true; - Wrapper.two32 = new BigInteger(); - Wrapper.two32.fromString('4294967296', 10); - Wrapper.two64 = new BigInteger(); - Wrapper.two64.fromString('18446744073709551616', 10); - Wrapper.temp1 = new BigInteger(); - Wrapper.temp2 = new BigInteger(); - }, - lh2bignum: function(l, h) { - var a = new BigInteger(); - a.fromString(h.toString(), 10); - var b = new BigInteger(); - a.multiplyTo(Wrapper.two32, b); - var c = new BigInteger(); - c.fromString(l.toString(), 10); - var d = new BigInteger(); - c.addTo(b, d); - return d; - }, - stringify: function(l, h, unsigned) { - var ret = new goog.math.Long(l, h).toString(); - if (unsigned && ret[0] == '-') { - // unsign slowly using jsbn bignums - Wrapper.ensureTemps(); - var bignum = new BigInteger(); - bignum.fromString(ret, 10); - ret = new BigInteger(); - Wrapper.two64.addTo(bignum, ret); - ret = ret.toString(10); - } - return ret; - }, - fromString: function(str, base, min, max, unsigned) { - Wrapper.ensureTemps(); - var bignum = new BigInteger(); - bignum.fromString(str, base); - var bigmin = new BigInteger(); - bigmin.fromString(min, 10); - var bigmax = new BigInteger(); - bigmax.fromString(max, 10); - if (unsigned && bignum.compareTo(BigInteger.ZERO) < 0) { - var temp = new BigInteger(); - bignum.addTo(Wrapper.two64, temp); - bignum = temp; - } - var error = false; - if (bignum.compareTo(bigmin) < 0) { - bignum = bigmin; - error = true; - } else if (bignum.compareTo(bigmax) > 0) { - bignum = bigmax; - error = true; - } - var ret = goog.math.Long.fromString(bignum.toString()); // min-max checks should have clamped this to a range goog.math.Long can handle well - HEAP32[tempDoublePtr>>2] = ret.low_; - HEAP32[tempDoublePtr+4>>2] = ret.high_; - if (error) throw 'range error'; - } - }; - return Wrapper; -})(); - -//======= end closure i64 code ======= - - - -// === Auto-generated postamble setup entry stuff === - -if (memoryInitializer) { - if (ENVIRONMENT_IS_NODE || ENVIRONMENT_IS_SHELL) { - var data = Module['readBinary'](memoryInitializer); - HEAPU8.set(data, STATIC_BASE); - } else { - addRunDependency('memory initializer'); - Browser.asyncLoad(memoryInitializer, function(data) { - HEAPU8.set(data, STATIC_BASE); - removeRunDependency('memory initializer'); - }, function(data) { - throw 'could not load memory initializer ' + memoryInitializer; - }); - } -} - -function ExitStatus(status) { - this.name = "ExitStatus"; - this.message = "Program terminated with exit(" + status + ")"; - this.status = status; -}; -ExitStatus.prototype = new Error(); -ExitStatus.prototype.constructor = ExitStatus; - -var initialStackTop; -var preloadStartTime = null; -var calledMain = false; - -dependenciesFulfilled = function runCaller() { - // If run has never been called, and we should call run (INVOKE_RUN is true, and Module.noInitialRun is not false) - if (!Module['calledRun'] && shouldRunNow) run(); - if (!Module['calledRun']) dependenciesFulfilled = runCaller; // try this again later, after new deps are fulfilled -} - -Module['callMain'] = Module.callMain = function callMain(args) { - assert(runDependencies == 0, 'cannot call main when async dependencies remain! (listen on __ATMAIN__)'); - assert(__ATPRERUN__.length == 0, 'cannot call main when preRun functions remain to be called'); - - args = args || []; - - ensureInitRuntime(); - - var argc = args.length+1; - function pad() { - for (var i = 0; i < 4-1; i++) { - argv.push(0); - } - } - var argv = [allocate(intArrayFromString(Module['thisProgram'] || '/bin/this.program'), 'i8', ALLOC_NORMAL) ]; - pad(); - for (var i = 0; i < argc-1; i = i + 1) { - argv.push(allocate(intArrayFromString(args[i]), 'i8', ALLOC_NORMAL)); - pad(); - } - argv.push(0); - argv = allocate(argv, 'i32', ALLOC_NORMAL); - - initialStackTop = STACKTOP; - - try { - - var ret = Module['_main'](argc, argv, 0); - - - // if we're not running an evented main loop, it's time to exit - if (!Module['noExitRuntime']) { - exit(ret); - } - } - catch(e) { - if (e instanceof ExitStatus) { - // exit() throws this once it's done to make sure execution - // has been stopped completely - return; - } else if (e == 'SimulateInfiniteLoop') { - // running an evented main loop, don't immediately exit - Module['noExitRuntime'] = true; - return; - } else { - if (e && typeof e === 'object' && e.stack) Module.printErr('exception thrown: ' + [e, e.stack]); - throw e; - } - } finally { - calledMain = true; - } -} - - - - -function run(args) { - args = args || Module['arguments']; - - if (preloadStartTime === null) preloadStartTime = Date.now(); - - if (runDependencies > 0) { - Module.printErr('run() called, but dependencies remain, so not running'); - return; - } - - preRun(); - - if (runDependencies > 0) return; // a preRun added a dependency, run will be called later - if (Module['calledRun']) return; // run may have just been called through dependencies being fulfilled just in this very frame - - function doRun() { - if (Module['calledRun']) return; // run may have just been called while the async setStatus time below was happening - Module['calledRun'] = true; - - ensureInitRuntime(); - - preMain(); - - if (ENVIRONMENT_IS_WEB && preloadStartTime !== null) { - Module.printErr('pre-main prep time: ' + (Date.now() - preloadStartTime) + ' ms'); - } - - if (Module['_main'] && shouldRunNow) { - Module['callMain'](args); - } - - postRun(); - } - - if (Module['setStatus']) { - Module['setStatus']('Running...'); - setTimeout(function() { - setTimeout(function() { - Module['setStatus'](''); - }, 1); - if (!ABORT) doRun(); - }, 1); - } else { - doRun(); - } -} -Module['run'] = Module.run = run; - -function exit(status) { - ABORT = true; - EXITSTATUS = status; - STACKTOP = initialStackTop; - - // exit the runtime - exitRuntime(); - - // TODO We should handle this differently based on environment. - // In the browser, the best we can do is throw an exception - // to halt execution, but in node we could process.exit and - // I'd imagine SM shell would have something equivalent. - // This would let us set a proper exit status (which - // would be great for checking test exit statuses). - // https://github.com/kripken/emscripten/issues/1371 - - // throw an exception to halt the current execution - throw new ExitStatus(status); -} -Module['exit'] = Module.exit = exit; - -function abort(text) { - if (text) { - Module.print(text); - Module.printErr(text); - } - - ABORT = true; - EXITSTATUS = 1; - - var extra = '\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.'; - - throw 'abort() at ' + stackTrace() + extra; -} -Module['abort'] = Module.abort = abort; - -// {{PRE_RUN_ADDITIONS}} - -if (Module['preInit']) { - if (typeof Module['preInit'] == 'function') Module['preInit'] = [Module['preInit']]; - while (Module['preInit'].length > 0) { - Module['preInit'].pop()(); - } -} - -// shouldRunNow refers to calling main(), not run(). -var shouldRunNow = true; -if (Module['noInitialRun']) { - shouldRunNow = false; -} - - -run(); - -// {{POST_RUN_ADDITIONS}} - - - - - - -// {{MODULE_ADDITIONS}} - - - -// Generated by CoffeeScript 1.7.1 -var Database, NULL, SQLite, Statement, apiTemp, i, sqlite3_bind_blob, sqlite3_bind_double, sqlite3_bind_int, sqlite3_bind_parameter_index, sqlite3_bind_text, sqlite3_clear_bindings, sqlite3_close_v2, sqlite3_column_blob, sqlite3_column_bytes, sqlite3_column_double, sqlite3_column_name, sqlite3_column_text, sqlite3_column_type, sqlite3_data_count, sqlite3_errmsg, sqlite3_exec, sqlite3_finalize, sqlite3_free, sqlite3_open, sqlite3_prepare_v2, sqlite3_reset, sqlite3_step; - -apiTemp = Runtime.stackAlloc(4); - -SQLite = {}; - - -/* Represents an prepared statement. - -Prepared statements allow you to have a template sql string, -that you can execute multiple times with different parameters. - -You can't instantiate this class directly, you have to use a [Database](Database.html) -object in order to create a statement. - -**Warning**: When you close a database (using db.close()), all its statements are -closed too and become unusable. - -@see Database.html#prepare-dynamic -@see https://en.wikipedia.org/wiki/Prepared_statement - */ - -Statement = (function() { - function Statement(stmt, db) { - this.stmt = stmt; - this.db = db; - this.pos = 1; - this.allocatedmem = []; - } - - - /* Bind values to the parameters, after having reseted the statement - - SQL statements can have parameters, named *'?', '?NNN', ':VVV', '@VVV', '$VVV'*, - where NNN is a number and VVV a string. - This function binds these parameters to the given values. - - *Warning*: ':', '@', and '$' are included in the parameters names - - *# Binding values to named parameters - @example Bind values to named parameters - var stmt = db.prepare("UPDATE test SET a=@newval WHERE id BETWEEN $mini AND $maxi"); - stmt.bind({$mini:10, $maxi:20, '@newval':5}); - - Create a statement that contains parameters like '$VVV', ':VVV', '@VVV' - - Call Statement.bind with an object as parameter - - *# Binding values to parameters - @example Bind values to anonymous parameters - var stmt = db.prepare("UPDATE test SET a=? WHERE id BETWEEN ? AND ?"); - stmt.bind([5, 10, 20]); - - Create a statement that contains parameters like '?', '?NNN' - - Call Statement.bind with an array as parameter - - *# Value types - Javascript type | SQLite type - --- | --- - number | REAL, INTEGER - boolean | INTEGER - string | TEXT - Array, Uint8Array | BLOB - null | NULL - @see http://www.sqlite.org/datatype3.html - - @see http://www.sqlite.org/lang_expr.html#varparam - @param values [Array,Object] The values to bind - @return [Boolean] true if it worked - @throw [String] SQLite Error - */ - - Statement.prototype['bind'] = function(values) { - this['reset'](); - if (Array.isArray(values)) { - return this.bindFromArray(values); - } else { - return this.bindFromObject(values); - } - }; - - - /* Execute the statement, fetching the the next line of result, - that can be retrieved with [Statement.get()](#get-dynamic) . - - @return [Boolean] true if a row of result available - @throw [String] SQLite Error - */ - - Statement.prototype['step'] = function() { - var ret; - if (!this.stmt) { - throw "Statement closed"; - } - this.pos = 1; - switch (ret = sqlite3_step(this.stmt)) { - case SQLite.ROW: - return true; - case SQLite.DONE: - return false; - default: - return this.db.handleError(ret); - } - }; - - Statement.prototype.getNumber = function(pos) { - if (pos == null) { - pos = this.pos++; - } - return sqlite3_column_double(this.stmt, pos); - }; - - Statement.prototype.getString = function(pos) { - if (pos == null) { - pos = this.pos++; - } - return sqlite3_column_text(this.stmt, pos); - }; - - Statement.prototype.getBlob = function(pos) { - var i, ptr, result, size, _i; - if (pos == null) { - pos = this.pos++; - } - size = sqlite3_column_bytes(this.stmt, pos); - ptr = sqlite3_column_blob(this.stmt, pos); - result = new Uint8Array(size); - for (i = _i = 0; 0 <= size ? _i < size : _i > size; i = 0 <= size ? ++_i : --_i) { - result[i] = HEAP8[ptr + i]; - } - return result; - }; - - - /* Get one row of results of a statement. - If the first parameter is not provided, step must have been called before get. - @param [Array,Object] Optional: If set, the values will be bound to the statement, and it will be executed - @return [Array] One row of result - - @example Print all the rows of the table test to the console - - var stmt = db.prepare("SELECT * FROM test"); - while (stmt.step()) console.log(stmt.get()); - */ - - Statement.prototype['get'] = function(params) { - var field, _i, _ref, _results; - if (params != null) { - this['bind'](params) && this['step'](); - } - _results = []; - for (field = _i = 0, _ref = sqlite3_data_count(this.stmt); 0 <= _ref ? _i < _ref : _i > _ref; field = 0 <= _ref ? ++_i : --_i) { - switch (sqlite3_column_type(this.stmt, field)) { - case SQLite.INTEGER: - case SQLite.FLOAT: - _results.push(this.getNumber(field)); - break; - case SQLite.TEXT: - _results.push(this.getString(field)); - break; - case SQLite.BLOB: - _results.push(this.getBlob(field)); - break; - default: - _results.push(null); - } - } - return _results; - }; - - - /* Get the list of column names of a row of result of a statement. - @return [Array] The names of the columns - @example - - var stmt = db.prepare("SELECT 5 AS nbr, x'616200' AS data, NULL AS nothing;"); - stmt.step(); // Execute the statement - console.log(stmt.getColumnNames()); // Will print ['nbr','data','nothing'] - */ - - Statement.prototype['getColumnNames'] = function() { - var i, _i, _ref, _results; - _results = []; - for (i = _i = 0, _ref = sqlite3_data_count(this.stmt); 0 <= _ref ? _i < _ref : _i > _ref; i = 0 <= _ref ? ++_i : --_i) { - _results.push(sqlite3_column_name(this.stmt, i)); - } - return _results; - }; - - - /* Get one row of result as a javascript object, associating column names with - their value in the current row. - @param [Array,Object] Optional: If set, the values will be bound to the statement, and it will be executed - @return [Object] The row of result - @see [Statement.get](#get-dynamic) - - @example - - var stmt = db.prepare("SELECT 5 AS nbr, x'616200' AS data, NULL AS nothing;"); - stmt.step(); // Execute the statement - console.log(stmt.getAsObject()); // Will print {nbr:5, data: Uint8Array([1,2,3]), nothing:null} - */ - - Statement.prototype['getAsObject'] = function(params) { - var i, name, names, rowObject, values, _i, _len; - values = this['get'](params); - names = this['getColumnNames'](); - rowObject = {}; - for (i = _i = 0, _len = names.length; _i < _len; i = ++_i) { - name = names[i]; - rowObject[name] = values[i]; - } - return rowObject; - }; - - - /* Shorthand for bind + step + reset - Bind the values, execute the statement, ignoring the rows it returns, and resets it - @param [Array,Object] Value to bind to the statement - */ - - Statement.prototype['run'] = function(values) { - if (values != null) { - this['bind'](values); - } - this['step'](); - return this['reset'](); - }; - - Statement.prototype.bindString = function(string, pos) { - var bytes, strptr; - if (pos == null) { - pos = this.pos++; - } - bytes = intArrayFromString(string); - this.allocatedmem.push(strptr = allocate(bytes, 'i8', ALLOC_NORMAL)); - this.db.handleError(sqlite3_bind_text(this.stmt, pos, strptr, bytes.length - 1, 0)); - return true; - }; - - Statement.prototype.bindBlob = function(array, pos) { - var blobptr; - if (pos == null) { - pos = this.pos++; - } - this.allocatedmem.push(blobptr = allocate(array, 'i8', ALLOC_NORMAL)); - this.db.handleError(sqlite3_bind_blob(this.stmt, pos, blobptr, array.length, 0)); - return true; - }; - - Statement.prototype.bindNumber = function(num, pos) { - var bindfunc; - if (pos == null) { - pos = this.pos++; - } - bindfunc = num === (num | 0) ? sqlite3_bind_int : sqlite3_bind_double; - this.db.handleError(bindfunc(this.stmt, pos, num)); - return true; - }; - - Statement.prototype.bindNull = function(pos) { - if (pos == null) { - pos = this.pos++; - } - return sqlite3_bind_blob(this.stmt, pos, 0, 0, 0) === SQLite.OK; - }; - - Statement.prototype.bindValue = function(val, pos) { - if (pos == null) { - pos = this.pos++; - } - switch (typeof val) { - case "string": - return this.bindString(val, pos); - case "number": - case "boolean": - return this.bindNumber(val + 0, pos); - case "object": - if (val === null) { - this.bindNull(pos); - } - if (val.length != null) { - return this.bindBlob(val, pos); - } else { - throw "Wrong API use : tried to bind a value of an unknown type (" + val + ")."; - } - } - }; - - - /* Bind names and values of an object to the named parameters of the statement - @param [Object] - @private - @nodoc - */ - - Statement.prototype.bindFromObject = function(valuesObj) { - var name, num, value; - for (name in valuesObj) { - value = valuesObj[name]; - num = sqlite3_bind_parameter_index(this.stmt, name); - if (num !== 0) { - this.bindValue(value, num); - } - } - return true; - }; - - - /* Bind values to numbered parameters - @param [Array] - @private - @nodoc - */ - - Statement.prototype.bindFromArray = function(values) { - var num, value, _i, _len; - for (num = _i = 0, _len = values.length; _i < _len; num = ++_i) { - value = values[num]; - this.bindValue(value, num + 1); - } - return true; - }; - - - /* Reset a statement, so that it's parameters can be bound to new values - It also clears all previous bindings, freeing the memory used by bound parameters. - */ - - Statement.prototype['reset'] = function() { - this.freemem(); - return sqlite3_clear_bindings(this.stmt) === SQLite.OK && sqlite3_reset(this.stmt) === SQLite.OK; - }; - - - /* Free the memory allocated during parameter binding - */ - - Statement.prototype.freemem = function() { - var mem; - while (mem = this.allocatedmem.pop()) { - _free(mem); - } - return null; - }; - - - /* Free the memory used by the statement - @return [Boolean] true in case of success - */ - - Statement.prototype['free'] = function() { - var res; - this.freemem(); - res = sqlite3_finalize(this.stmt) === SQLite.OK; - delete this.db.statements[this.stmt]; - this.stmt = NULL; - return res; - }; - - return Statement; - -})(); - -Database = (function() { - function Database(data) { - this.filename = 'dbfile_' + (0xffffffff * Math.random() >>> 0); - if (data != null) { - FS.createDataFile('/', this.filename, data, true, true); - } - this.handleError(sqlite3_open(this.filename, apiTemp)); - this.db = getValue(apiTemp, 'i32'); - this.statements = {}; - } - - - /* Execute an SQL query, ignoring the rows it returns. - - @param sql [String] a string containing some SQL text to execute - @param params [Array] (*optional*) When the SQL statement contains placeholders, you can pass them in here. They will be bound to the statement before it is executed. - - If you use the params argument, you **cannot** provide an sql string that contains several - queries (separated by ';') - - @example Insert values in a table - db.run("INSERT INTO test VALUES (:age, :name)", {':age':18, ':name':'John'}); - - @return [Database] The database object (usefull for method chaining) - */ - - Database.prototype['run'] = function(sql, params) { - var stmt; - if (!this.db) { - throw "Database closed"; - } - if (params) { - stmt = this['prepare'](sql, params); - stmt['step'](); - stmt['free'](); - } else { - this.handleError(sqlite3_exec(this.db, sql, 0, 0, apiTemp)); - } - return this; - }; - - - /* Execute an SQL query, and returns the result. - - This is a wrapper against Database.prepare, Statement.step, Statement.get, - and Statement.free. - - The result is an array of result elements. There are as many result elements - as the number of statements in your sql string (statements are separated by a semicolon) - - Each result element is an object with two properties: - 'columns' : the name of the columns of the result (as returned by Statement.getColumnNames()) - 'values' : an array of rows. Each row is itself an array of values - - *# Example use - We have the following table, named *test* : - - | id | age | name | - |:--:|:---:|:------:| - | 1 | 1 | Ling | - | 2 | 18 | Paul | - | 3 | 3 | Markus | - - - We query it like that: - ```javascript - var db = new SQL.Database(); - var res = db.exec("SELECT id FROM test; SELECT age,name FROM test;"); - ``` - - `res` is now : - ```javascript - [ - {columns: ['id'], values:[[1],[2],[3]]}, - {columns: ['age','name'], values:[[1,'Ling'],[18,'Paul'],[3,'Markus']]} - ] - ``` - - @param sql [String] a string containing some SQL text to execute - @return [Array] An array of results. - */ - - Database.prototype['exec'] = function(sql) { - var curresult, err, results, sqlstr, stmt, _i, _len, _ref; - if (!this.db) { - throw "Database closed"; - } - results = []; - _ref = sql.split(';'); - for (_i = 0, _len = _ref.length; _i < _len; _i++) { - sqlstr = _ref[_i]; - try { - stmt = this['prepare'](sqlstr); - } catch (_error) { - err = _error; - if (err === 'Nothing to prepare') { - continue; - } else { - throw err; - } - } - curresult = null; - while (stmt['step']()) { - if (curresult === null) { - curresult = { - 'columns': stmt['getColumnNames'](), - 'values': [] - }; - results.push(curresult); - } - curresult['values'].push(stmt['get']()); - } - stmt['free'](); - } - return results; - }; - - - /* Execute an sql statement, and call a callback for each row of result. - - **Currently** this method is synchronous, it will not return until the callback has - been called on every row of the result. But this might change. - - @param sql [String] A string of SQL text. Can contain placeholders that will be - bound to the parameters given as the second argument - @param params [Array] (*optional*) Parameters to bind - to the query - @param callback [Function(Object)] A function that will be called on each row of result - @param done [Function] A function that will be called when all rows have been retrieved - - @return [Database] The database object. Usefull for method chaining - - @example Read values from a table - db.each("SELECT name,age FROM users WHERE age >= $majority", - {$majority:18}, - function(row){console.log(row.name + " is a grown-up.")} - ); - */ - - Database.prototype['each'] = function(sql, params, callback, done) { - var stmt; - if (typeof params === 'function') { - done = callback; - callback = params; - params = void 0; - } - stmt = this['prepare'](sql, params); - while (stmt['step']()) { - callback(stmt['getAsObject']()); - } - stmt['free'](); - if (typeof done === 'function') { - return done(); - } - }; - - - /* Prepare an SQL statement - @param sql [String] a string of SQL, that can contain placeholders ('?', ':VVV', ':AAA', '@AAA') - @param params [Array] (*optional*) values to bind to placeholders - @return [Statement] the resulting statement - @throw [String] SQLite error - */ - - Database.prototype['prepare'] = function(sql, params) { - var pStmt, stmt; - setValue(apiTemp, 0, 'i32'); - this.handleError(sqlite3_prepare_v2(this.db, sql, -1, apiTemp, NULL)); - pStmt = getValue(apiTemp, 'i32'); - if (pStmt === NULL) { - throw 'Nothing to prepare'; - } - stmt = new Statement(pStmt, this); - if (params != null) { - stmt.bind(params); - } - this.statements[pStmt] = stmt; - return stmt; - }; - - - /* Exports the contents of the database to a binary array - @return [Uint8Array] An array of bytes of the SQLite3 database file - */ - - Database.prototype['export'] = function() { - return new Uint8Array(FS.root.contents[this.filename].contents); - }; - - - /* Close the database, and all associated prepared statements. - - The memory associated to the database and all associated statements - will be freed. - - **Warning**: A statement belonging to a database that has been closed cannot - be used anymore. - - Databases **must** be closed, when you're finished with them, or the - memory consumption will grow forever - */ - - Database.prototype['close'] = function() { - var stmt, _, _ref; - _ref = this.statements; - for (_ in _ref) { - stmt = _ref[_]; - stmt['free'](); - } - this.handleError(sqlite3_close_v2(this.db)); - FS.unlink('/' + this.filename); - return this.db = null; - }; - - - /* Analyze a result code, return null if no error occured, and throw - an error with a descriptive message otherwise - @nodoc - */ - - Database.prototype.handleError = function(returnCode) { - var errmsg; - if (returnCode === SQLite.OK) { - return null; - } else { - errmsg = sqlite3_errmsg(this.db); - throw new Error(errmsg); - } - }; - - return Database; - -})(); - -sqlite3_open = Module['cwrap']('sqlite3_open', 'number', ['string', 'number']); - -sqlite3_close_v2 = Module['cwrap']('sqlite3_close_v2', 'number', ['number']); - -sqlite3_exec = Module['cwrap']('sqlite3_exec', 'number', ['number', 'string', 'number', 'number', 'number']); - -sqlite3_free = Module['cwrap']('sqlite3_free', '', ['number']); - -sqlite3_prepare_v2 = Module['cwrap']('sqlite3_prepare_v2', 'number', ['number', 'string', 'number', 'number', 'number']); - -sqlite3_bind_text = Module['cwrap']('sqlite3_bind_text', 'number', ['number', 'number', 'number', 'number', 'number']); - -sqlite3_bind_blob = Module['cwrap']('sqlite3_bind_blob', 'number', ['number', 'number', 'number', 'number', 'number']); - -sqlite3_bind_double = Module['cwrap']('sqlite3_bind_double', 'number', ['number', 'number', 'number']); - -sqlite3_bind_int = Module['cwrap']('sqlite3_bind_int', 'number', ['number', 'number', 'number']); - -sqlite3_bind_parameter_index = Module['cwrap']('sqlite3_bind_parameter_index', 'number', ['number', 'string']); - -sqlite3_step = Module['cwrap']('sqlite3_step', 'number', ['number']); - -sqlite3_errmsg = Module['cwrap']('sqlite3_errmsg', 'string', ['number']); - -sqlite3_data_count = Module['cwrap']('sqlite3_data_count', 'number', ['number']); - -sqlite3_column_double = Module['cwrap']('sqlite3_column_double', 'number', ['number', 'number']); - -sqlite3_column_text = Module['cwrap']('sqlite3_column_text', 'string', ['number', 'number']); - -sqlite3_column_blob = Module['cwrap']('sqlite3_column_blob', 'number', ['number', 'number']); - -sqlite3_column_bytes = Module['cwrap']('sqlite3_column_bytes', 'number', ['number', 'number']); - -sqlite3_column_type = Module['cwrap']('sqlite3_column_type', 'number', ['number', 'number']); - -sqlite3_column_name = Module['cwrap']('sqlite3_column_name', 'string', ['number', 'number']); - -sqlite3_reset = Module['cwrap']('sqlite3_reset', 'number', ['number']); - -sqlite3_clear_bindings = Module['cwrap']('sqlite3_clear_bindings', 'number', ['number']); - -sqlite3_finalize = Module['cwrap']('sqlite3_finalize', 'number', ['number']); - -this['SQL'] = { - 'Database': Database -}; - -for (i in this['SQL']) { - Module[i] = this['SQL'][i]; -} - -NULL = 0; - -SQLite.OK = 0; - -SQLite.ERROR = 1; - -SQLite.INTERNAL = 2; - -SQLite.PERM = 3; - -SQLite.ABORT = 4; - -SQLite.BUSY = 5; - -SQLite.LOCKED = 6; - -SQLite.NOMEM = 7; - -SQLite.READONLY = 8; - -SQLite.INTERRUPT = 9; - -SQLite.IOERR = 10; - -SQLite.CORRUPT = 11; - -SQLite.NOTFOUND = 12; - -SQLite.FULL = 13; - -SQLite.CANTOPEN = 14; - -SQLite.PROTOCOL = 15; - -SQLite.EMPTY = 16; - -SQLite.SCHEMA = 17; - -SQLite.TOOBIG = 18; - -SQLite.CONSTRAINT = 19; - -SQLite.MISMATCH = 20; - -SQLite.MISUSE = 21; - -SQLite.NOLFS = 22; - -SQLite.AUTH = 23; - -SQLite.FORMAT = 24; - -SQLite.RANGE = 25; - -SQLite.NOTADB = 26; - -SQLite.NOTICE = 27; - -SQLite.WARNING = 28; - -SQLite.ROW = 100; - -SQLite.DONE = 101; - -SQLite.INTEGER = 1; - -SQLite.FLOAT = 2; - -SQLite.TEXT = 3; - -SQLite.BLOB = 4; - -SQLite.NULL = 5; - +// The Module object: Our interface to the outside world. We import +// and export values on it, and do the work to get that through +// closure compiler if necessary. There are various ways Module can be used: +// 1. Not defined. We create it here +// 2. A function parameter, function(Module) { ..generated code.. } +// 3. pre-run appended it, var Module = {}; ..generated code.. +// 4. External script tag defines var Module. +// We need to do an eval in order to handle the closure compiler +// case, where this code here is minified but Module was defined +// elsewhere (e.g. case 4 above). We also need to check if Module +// already exists (e.g. case 3 above). +// Note that if you want to run closure, and also to use Module +// after the generated code, you will need to define var Module = {}; +// before the code. Then that object will be used in the code, and you +// can continue to use Module afterwards as well. +var Module; +if (!Module) Module = (typeof Module !== 'undefined' ? Module : null) || {}; + +// Sometimes an existing Module object exists with properties +// meant to overwrite the default module functionality. Here +// we collect those properties and reapply _after_ we configure +// the current environment's defaults to avoid having to be so +// defensive during initialization. +var moduleOverrides = {}; +for (var key in Module) { + if (Module.hasOwnProperty(key)) { + moduleOverrides[key] = Module[key]; + } +} + +// The environment setup code below is customized to use Module. +// *** Environment setup code *** +var ENVIRONMENT_IS_NODE = typeof process === 'object' && typeof require === 'function'; +var ENVIRONMENT_IS_WEB = typeof window === 'object'; +var ENVIRONMENT_IS_WORKER = typeof importScripts === 'function'; +var ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER; + +if (ENVIRONMENT_IS_NODE) { + // Expose functionality in the same simple way that the shells work + // Note that we pollute the global namespace here, otherwise we break in node + if (!Module['print']) Module['print'] = function print(x) { + process['stdout'].write(x + '\n'); + }; + if (!Module['printErr']) Module['printErr'] = function printErr(x) { + process['stderr'].write(x + '\n'); + }; + + var nodeFS = require('fs'); + var nodePath = require('path'); + + Module['read'] = function read(filename, binary) { + filename = nodePath['normalize'](filename); + var ret = nodeFS['readFileSync'](filename); + // The path is absolute if the normalized version is the same as the resolved. + if (!ret && filename != nodePath['resolve'](filename)) { + filename = path.join(__dirname, '..', 'src', filename); + ret = nodeFS['readFileSync'](filename); + } + if (ret && !binary) ret = ret.toString(); + return ret; + }; + + Module['readBinary'] = function readBinary(filename) { return Module['read'](filename, true) }; + + Module['load'] = function load(f) { + globalEval(read(f)); + }; + + Module['thisProgram'] = process['argv'][1]; + Module['arguments'] = process['argv'].slice(2); + + module['exports'] = Module; +} +else if (ENVIRONMENT_IS_SHELL) { + if (!Module['print']) Module['print'] = print; + if (typeof printErr != 'undefined') Module['printErr'] = printErr; // not present in v8 or older sm + + if (typeof read != 'undefined') { + Module['read'] = read; + } else { + Module['read'] = function read() { throw 'no read() available (jsc?)' }; + } + + Module['readBinary'] = function readBinary(f) { + return read(f, 'binary'); + }; + + if (typeof scriptArgs != 'undefined') { + Module['arguments'] = scriptArgs; + } else if (typeof arguments != 'undefined') { + Module['arguments'] = arguments; + } + + this['Module'] = Module; + +} +else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { + Module['read'] = function read(url) { + var xhr = new XMLHttpRequest(); + xhr.open('GET', url, false); + xhr.send(null); + return xhr.responseText; + }; + + if (typeof arguments != 'undefined') { + Module['arguments'] = arguments; + } + + if (typeof console !== 'undefined') { + if (!Module['print']) Module['print'] = function print(x) { + console.log(x); + }; + if (!Module['printErr']) Module['printErr'] = function printErr(x) { + console.log(x); + }; + } else { + // Probably a worker, and without console.log. We can do very little here... + var TRY_USE_DUMP = false; + if (!Module['print']) Module['print'] = (TRY_USE_DUMP && (typeof(dump) !== "undefined") ? (function(x) { + dump(x); + }) : (function(x) { + // self.postMessage(x); // enable this if you want stdout to be sent as messages + })); + } + + if (ENVIRONMENT_IS_WEB) { + window['Module'] = Module; + } else { + Module['load'] = importScripts; + } +} +else { + // Unreachable because SHELL is dependant on the others + throw 'Unknown runtime environment. Where are we?'; +} + +function globalEval(x) { + eval.call(null, x); +} +if (!Module['load'] == 'undefined' && Module['read']) { + Module['load'] = function load(f) { + globalEval(Module['read'](f)); + }; +} +if (!Module['print']) { + Module['print'] = function(){}; +} +if (!Module['printErr']) { + Module['printErr'] = Module['print']; +} +if (!Module['arguments']) { + Module['arguments'] = []; +} +// *** Environment setup code *** + +// Closure helpers +Module.print = Module['print']; +Module.printErr = Module['printErr']; + +// Callbacks +Module['preRun'] = []; +Module['postRun'] = []; + +// Merge back in the overrides +for (var key in moduleOverrides) { + if (moduleOverrides.hasOwnProperty(key)) { + Module[key] = moduleOverrides[key]; + } +} + + + +// === Auto-generated preamble library stuff === + +//======================================== +// Runtime code shared with compiler +//======================================== + +var Runtime = { + setTempRet0: function (value) { + tempRet0 = value; + }, + getTempRet0: function () { + return tempRet0; + }, + stackSave: function () { + return STACKTOP; + }, + stackRestore: function (stackTop) { + STACKTOP = stackTop; + }, + forceAlign: function (target, quantum) { + quantum = quantum || 4; + if (quantum == 1) return target; + if (isNumber(target) && isNumber(quantum)) { + return Math.ceil(target/quantum)*quantum; + } else if (isNumber(quantum) && isPowerOfTwo(quantum)) { + return '(((' +target + ')+' + (quantum-1) + ')&' + -quantum + ')'; + } + return 'Math.ceil((' + target + ')/' + quantum + ')*' + quantum; + }, + isNumberType: function (type) { + return type in Runtime.INT_TYPES || type in Runtime.FLOAT_TYPES; + }, + isPointerType: function isPointerType(type) { + return type[type.length-1] == '*'; +}, + isStructType: function isStructType(type) { + if (isPointerType(type)) return false; + if (isArrayType(type)) return true; + if (/?/.test(type)) return true; // { i32, i8 } etc. - anonymous struct types + // See comment in isStructPointerType() + return type[0] == '%'; +}, + INT_TYPES: {"i1":0,"i8":0,"i16":0,"i32":0,"i64":0}, + FLOAT_TYPES: {"float":0,"double":0}, + or64: function (x, y) { + var l = (x | 0) | (y | 0); + var h = (Math.round(x / 4294967296) | Math.round(y / 4294967296)) * 4294967296; + return l + h; + }, + and64: function (x, y) { + var l = (x | 0) & (y | 0); + var h = (Math.round(x / 4294967296) & Math.round(y / 4294967296)) * 4294967296; + return l + h; + }, + xor64: function (x, y) { + var l = (x | 0) ^ (y | 0); + var h = (Math.round(x / 4294967296) ^ Math.round(y / 4294967296)) * 4294967296; + return l + h; + }, + getNativeTypeSize: function (type) { + switch (type) { + case 'i1': case 'i8': return 1; + case 'i16': return 2; + case 'i32': return 4; + case 'i64': return 8; + case 'float': return 4; + case 'double': return 8; + default: { + if (type[type.length-1] === '*') { + return Runtime.QUANTUM_SIZE; // A pointer + } else if (type[0] === 'i') { + var bits = parseInt(type.substr(1)); + assert(bits % 8 === 0); + return bits/8; + } else { + return 0; + } + } + } + }, + getNativeFieldSize: function (type) { + return Math.max(Runtime.getNativeTypeSize(type), Runtime.QUANTUM_SIZE); + }, + dedup: function dedup(items, ident) { + var seen = {}; + if (ident) { + return items.filter(function(item) { + if (seen[item[ident]]) return false; + seen[item[ident]] = true; + return true; + }); + } else { + return items.filter(function(item) { + if (seen[item]) return false; + seen[item] = true; + return true; + }); + } +}, + set: function set() { + var args = typeof arguments[0] === 'object' ? arguments[0] : arguments; + var ret = {}; + for (var i = 0; i < args.length; i++) { + ret[args[i]] = 0; + } + return ret; +}, + STACK_ALIGN: 8, + getAlignSize: function (type, size, vararg) { + // we align i64s and doubles on 64-bit boundaries, unlike x86 + if (!vararg && (type == 'i64' || type == 'double')) return 8; + if (!type) return Math.min(size, 8); // align structures internally to 64 bits + return Math.min(size || (type ? Runtime.getNativeFieldSize(type) : 0), Runtime.QUANTUM_SIZE); + }, + calculateStructAlignment: function calculateStructAlignment(type) { + type.flatSize = 0; + type.alignSize = 0; + var diffs = []; + var prev = -1; + var index = 0; + type.flatIndexes = type.fields.map(function(field) { + index++; + var size, alignSize; + if (Runtime.isNumberType(field) || Runtime.isPointerType(field)) { + size = Runtime.getNativeTypeSize(field); // pack char; char; in structs, also char[X]s. + alignSize = Runtime.getAlignSize(field, size); + } else if (Runtime.isStructType(field)) { + if (field[1] === '0') { + // this is [0 x something]. When inside another structure like here, it must be at the end, + // and it adds no size + // XXX this happens in java-nbody for example... assert(index === type.fields.length, 'zero-length in the middle!'); + size = 0; + if (Types.types[field]) { + alignSize = Runtime.getAlignSize(null, Types.types[field].alignSize); + } else { + alignSize = type.alignSize || QUANTUM_SIZE; + } + } else { + size = Types.types[field].flatSize; + alignSize = Runtime.getAlignSize(null, Types.types[field].alignSize); + } + } else if (field[0] == 'b') { + // bN, large number field, like a [N x i8] + size = field.substr(1)|0; + alignSize = 1; + } else if (field[0] === '<') { + // vector type + size = alignSize = Types.types[field].flatSize; // fully aligned + } else if (field[0] === 'i') { + // illegal integer field, that could not be legalized because it is an internal structure field + // it is ok to have such fields, if we just use them as markers of field size and nothing more complex + size = alignSize = parseInt(field.substr(1))/8; + assert(size % 1 === 0, 'cannot handle non-byte-size field ' + field); + } else { + assert(false, 'invalid type for calculateStructAlignment'); + } + if (type.packed) alignSize = 1; + type.alignSize = Math.max(type.alignSize, alignSize); + var curr = Runtime.alignMemory(type.flatSize, alignSize); // if necessary, place this on aligned memory + type.flatSize = curr + size; + if (prev >= 0) { + diffs.push(curr-prev); + } + prev = curr; + return curr; + }); + if (type.name_ && type.name_[0] === '[') { + // arrays have 2 elements, so we get the proper difference. then we scale here. that way we avoid + // allocating a potentially huge array for [999999 x i8] etc. + type.flatSize = parseInt(type.name_.substr(1))*type.flatSize/2; + } + type.flatSize = Runtime.alignMemory(type.flatSize, type.alignSize); + if (diffs.length == 0) { + type.flatFactor = type.flatSize; + } else if (Runtime.dedup(diffs).length == 1) { + type.flatFactor = diffs[0]; + } + type.needsFlattening = (type.flatFactor != 1); + return type.flatIndexes; + }, + generateStructInfo: function (struct, typeName, offset) { + var type, alignment; + if (typeName) { + offset = offset || 0; + type = (typeof Types === 'undefined' ? Runtime.typeInfo : Types.types)[typeName]; + if (!type) return null; + if (type.fields.length != struct.length) { + printErr('Number of named fields must match the type for ' + typeName + ': possibly duplicate struct names. Cannot return structInfo'); + return null; + } + alignment = type.flatIndexes; + } else { + var type = { fields: struct.map(function(item) { return item[0] }) }; + alignment = Runtime.calculateStructAlignment(type); + } + var ret = { + __size__: type.flatSize + }; + if (typeName) { + struct.forEach(function(item, i) { + if (typeof item === 'string') { + ret[item] = alignment[i] + offset; + } else { + // embedded struct + var key; + for (var k in item) key = k; + ret[key] = Runtime.generateStructInfo(item[key], type.fields[i], alignment[i]); + } + }); + } else { + struct.forEach(function(item, i) { + ret[item[1]] = alignment[i]; + }); + } + return ret; + }, + dynCall: function (sig, ptr, args) { + if (args && args.length) { + assert(args.length == sig.length-1); + if (!args.splice) args = Array.prototype.slice.call(args); + args.splice(0, 0, ptr); + assert(('dynCall_' + sig) in Module, 'bad function pointer type - no table for sig \'' + sig + '\''); + return Module['dynCall_' + sig].apply(null, args); + } else { + assert(sig.length == 1); + assert(('dynCall_' + sig) in Module, 'bad function pointer type - no table for sig \'' + sig + '\''); + return Module['dynCall_' + sig].call(null, ptr); + } + }, + functionPointers: [], + addFunction: function (func) { + for (var i = 0; i < Runtime.functionPointers.length; i++) { + if (!Runtime.functionPointers[i]) { + Runtime.functionPointers[i] = func; + return 2*(1 + i); + } + } + throw 'Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS.'; + }, + removeFunction: function (index) { + Runtime.functionPointers[(index-2)/2] = null; + }, + getAsmConst: function (code, numArgs) { + // code is a constant string on the heap, so we can cache these + if (!Runtime.asmConstCache) Runtime.asmConstCache = {}; + var func = Runtime.asmConstCache[code]; + if (func) return func; + var args = []; + for (var i = 0; i < numArgs; i++) { + args.push(String.fromCharCode(36) + i); // $0, $1 etc + } + var source = Pointer_stringify(code); + if (source[0] === '"') { + // tolerate EM_ASM("..code..") even though EM_ASM(..code..) is correct + if (source.indexOf('"', 1) === source.length-1) { + source = source.substr(1, source.length-2); + } else { + // something invalid happened, e.g. EM_ASM("..code($0)..", input) + abort('invalid EM_ASM input |' + source + '|. Please use EM_ASM(..code..) (no quotes) or EM_ASM({ ..code($0).. }, input) (to input values)'); + } + } + try { + var evalled = eval('(function(' + args.join(',') + '){ ' + source + ' })'); // new Function does not allow upvars in node + } catch(e) { + Module.printErr('error in executing inline EM_ASM code: ' + e + ' on: \n\n' + source + '\n\nwith args |' + args + '| (make sure to use the right one out of EM_ASM, EM_ASM_ARGS, etc.)'); + throw e; + } + return Runtime.asmConstCache[code] = evalled; + }, + warnOnce: function (text) { + if (!Runtime.warnOnce.shown) Runtime.warnOnce.shown = {}; + if (!Runtime.warnOnce.shown[text]) { + Runtime.warnOnce.shown[text] = 1; + Module.printErr(text); + } + }, + funcWrappers: {}, + getFuncWrapper: function (func, sig) { + assert(sig); + if (!Runtime.funcWrappers[func]) { + Runtime.funcWrappers[func] = function dynCall_wrapper() { + return Runtime.dynCall(sig, func, arguments); + }; + } + return Runtime.funcWrappers[func]; + }, + UTF8Processor: function () { + var buffer = []; + var needed = 0; + this.processCChar = function (code) { + code = code & 0xFF; + + if (buffer.length == 0) { + if ((code & 0x80) == 0x00) { // 0xxxxxxx + return String.fromCharCode(code); + } + buffer.push(code); + if ((code & 0xE0) == 0xC0) { // 110xxxxx + needed = 1; + } else if ((code & 0xF0) == 0xE0) { // 1110xxxx + needed = 2; + } else { // 11110xxx + needed = 3; + } + return ''; + } + + if (needed) { + buffer.push(code); + needed--; + if (needed > 0) return ''; + } + + var c1 = buffer[0]; + var c2 = buffer[1]; + var c3 = buffer[2]; + var c4 = buffer[3]; + var ret; + if (buffer.length == 2) { + ret = String.fromCharCode(((c1 & 0x1F) << 6) | (c2 & 0x3F)); + } else if (buffer.length == 3) { + ret = String.fromCharCode(((c1 & 0x0F) << 12) | ((c2 & 0x3F) << 6) | (c3 & 0x3F)); + } else { + // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae + var codePoint = ((c1 & 0x07) << 18) | ((c2 & 0x3F) << 12) | + ((c3 & 0x3F) << 6) | (c4 & 0x3F); + ret = String.fromCharCode( + Math.floor((codePoint - 0x10000) / 0x400) + 0xD800, + (codePoint - 0x10000) % 0x400 + 0xDC00); + } + buffer.length = 0; + return ret; + } + this.processJSString = function processJSString(string) { + /* TODO: use TextEncoder when present, + var encoder = new TextEncoder(); + encoder['encoding'] = "utf-8"; + var utf8Array = encoder['encode'](aMsg.data); + */ + string = unescape(encodeURIComponent(string)); + var ret = []; + for (var i = 0; i < string.length; i++) { + ret.push(string.charCodeAt(i)); + } + return ret; + } + }, + getCompilerSetting: function (name) { + throw 'You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work'; + }, + stackAlloc: function (size) { var ret = STACKTOP;STACKTOP = (STACKTOP + size)|0;STACKTOP = (((STACKTOP)+7)&-8);(assert((((STACKTOP|0) < (STACK_MAX|0))|0))|0); return ret; }, + staticAlloc: function (size) { var ret = STATICTOP;STATICTOP = (STATICTOP + (assert(!staticSealed),size))|0;STATICTOP = (((STATICTOP)+7)&-8); return ret; }, + dynamicAlloc: function (size) { var ret = DYNAMICTOP;DYNAMICTOP = (DYNAMICTOP + (assert(DYNAMICTOP > 0),size))|0;DYNAMICTOP = (((DYNAMICTOP)+7)&-8); if (DYNAMICTOP >= TOTAL_MEMORY) enlargeMemory();; return ret; }, + alignMemory: function (size,quantum) { var ret = size = Math.ceil((size)/(quantum ? quantum : 8))*(quantum ? quantum : 8); return ret; }, + makeBigInt: function (low,high,unsigned) { var ret = (unsigned ? ((+((low>>>0)))+((+((high>>>0)))*4294967296.0)) : ((+((low>>>0)))+((+((high|0)))*4294967296.0))); return ret; }, + GLOBAL_BASE: 8, + QUANTUM_SIZE: 4, + __dummy__: 0 +} + + +Module['Runtime'] = Runtime; + + + + + + + + + +//======================================== +// Runtime essentials +//======================================== + +var __THREW__ = 0; // Used in checking for thrown exceptions. + +var ABORT = false; // whether we are quitting the application. no code should run after this. set in exit() and abort() +var EXITSTATUS = 0; + +var undef = 0; +// tempInt is used for 32-bit signed values or smaller. tempBigInt is used +// for 32-bit unsigned values or more than 32 bits. TODO: audit all uses of tempInt +var tempValue, tempInt, tempBigInt, tempInt2, tempBigInt2, tempPair, tempBigIntI, tempBigIntR, tempBigIntS, tempBigIntP, tempBigIntD, tempDouble, tempFloat; +var tempI64, tempI64b; +var tempRet0, tempRet1, tempRet2, tempRet3, tempRet4, tempRet5, tempRet6, tempRet7, tempRet8, tempRet9; + +function assert(condition, text) { + if (!condition) { + abort('Assertion failed: ' + text); + } +} + +var globalScope = this; + +// Returns the C function with a specified identifier (for C++, you need to do manual name mangling) +function getCFunc(ident) { + var func = Module['_' + ident]; // closure exported function + if (!func) { + try { + func = eval('_' + ident); // explicit lookup + } catch(e) {} + } + assert(func, 'Cannot call unknown function ' + ident + ' (perhaps LLVM optimizations or closure removed it?)'); + return func; +} + +var cwrap, ccall; +(function(){ + var stack = 0; + var JSfuncs = { + 'stackSave' : function() { + stack = Runtime.stackSave(); + }, + 'stackRestore' : function() { + Runtime.stackRestore(stack); + }, + // type conversion from js to c + 'arrayToC' : function(arr) { + var ret = Runtime.stackAlloc(arr.length); + writeArrayToMemory(arr, ret); + return ret; + }, + 'stringToC' : function(str) { + var ret = 0; + if (str !== null && str !== undefined && str !== 0) { // null string + ret = Runtime.stackAlloc(str.length + 1); // +1 for the trailing '\0' + writeStringToMemory(str, ret); + } + return ret; + } + }; + // For fast lookup of conversion functions + var toC = {'string' : JSfuncs['stringToC'], 'array' : JSfuncs['arrayToC']}; + + // C calling interface. A convenient way to call C functions (in C files, or + // defined with extern "C"). + // + // Note: ccall/cwrap use the C stack for temporary values. If you pass a string + // then it is only alive until the call is complete. If the code being + // called saves the pointer to be used later, it may point to invalid + // data. If you need a string to live forever, you can create it (and + // must later delete it manually!) using malloc and writeStringToMemory, + // for example. + // + // Note: LLVM optimizations can inline and remove functions, after which you will not be + // able to call them. Closure can also do so. To avoid that, add your function to + // the exports using something like + // + // -s EXPORTED_FUNCTIONS='["_main", "_myfunc"]' + // + // @param ident The name of the C function (note that C++ functions will be name-mangled - use extern "C") + // @param returnType The return type of the function, one of the JS types 'number', 'string' or 'array' (use 'number' for any C pointer, and + // 'array' for JavaScript arrays and typed arrays; note that arrays are 8-bit). + // @param argTypes An array of the types of arguments for the function (if there are no arguments, this can be ommitted). Types are as in returnType, + // except that 'array' is not possible (there is no way for us to know the length of the array) + // @param args An array of the arguments to the function, as native JS values (as in returnType) + // Note that string arguments will be stored on the stack (the JS string will become a C string on the stack). + // @return The return value, as a native JS value (as in returnType) + ccall = function ccallFunc(ident, returnType, argTypes, args) { + assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); + var func = getCFunc(ident); + var cArgs = []; + assert(returnType !== 'array', 'Return type should not be "array".'); + if (args) { + for (var i = 0; i < args.length; i++) { + var converter = toC[argTypes[i]]; + if (converter) { + if (stack === 0) stack = Runtime.stackSave(); + cArgs[i] = converter(args[i]); + } else { + cArgs[i] = args[i]; + } + } + } + var ret = func.apply(null, cArgs); + if (returnType === 'string') ret = Pointer_stringify(ret); + if (stack !== 0) JSfuncs['stackRestore'](); + return ret; + } + + var sourceRegex = /^function\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/; + function parseJSFunc(jsfunc) { + // Match the body and the return value of a javascript function source + var parsed = jsfunc.toString().match(sourceRegex).slice(1); + return {arguments : parsed[0], body : parsed[1], returnValue: parsed[2]} + } + var JSsource = {}; + for (var fun in JSfuncs) { + if (JSfuncs.hasOwnProperty(fun)) { + // Elements of toCsource are arrays of three items: + // the code, and the return value + JSsource[fun] = parseJSFunc(JSfuncs[fun]); + } + } + // Returns a native JS wrapper for a C function. This is similar to ccall, but + // returns a function you can call repeatedly in a normal way. For example: + // + // var my_function = cwrap('my_c_function', 'number', ['number', 'number']); + // alert(my_function(5, 22)); + // alert(my_function(99, 12)); + // + cwrap = function cwrap(ident, returnType, argTypes) { + var cfunc = getCFunc(ident); + // When the function takes numbers and returns a number, we can just return + // the original function + var numericArgs = argTypes.every(function(type){ return type === 'number'}); + var numericRet = (returnType !== 'string'); + if ( numericRet && numericArgs) { + return cfunc; + } + // Creation of the arguments list (["$1","$2",...,"$nargs"]) + var argNames = argTypes.map(function(x,i){return '$'+i}); + var funcstr = "(function(" + argNames.join(',') + ") {"; + funcstr += "assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)');\n"; + var nargs = argTypes.length; + if (!numericArgs) { + // Generate the code needed to convert the arguments from javascript + // values to pointers + funcstr += JSsource['stackSave'].body + ';'; + for (var i = 0; i < nargs; i++) { + var arg = argNames[i], type = argTypes[i]; + if (type === 'number') continue; + var convertCode = JSsource[type + 'ToC']; // [code, return] + funcstr += 'var ' + convertCode.arguments + ' = ' + arg + ';'; + funcstr += convertCode.body + ';'; + funcstr += arg + '=' + convertCode.returnValue + ';'; + } + } + + // When the code is compressed, the name of cfunc is not literally 'cfunc' anymore + var cfuncname = parseJSFunc(function(){return cfunc}).returnValue; + // Call the function + funcstr += 'var ret = ' + cfuncname + '(' + argNames.join(',') + ');'; + if (!numericRet) { // Return type can only by 'string' or 'number' + // Convert the result to a string + var strgfy = parseJSFunc(function(){return Pointer_stringify}).returnValue; + funcstr += 'ret = ' + strgfy + '(ret);'; + } + if (!numericArgs) { + // If we had a stack, restore it + funcstr += JSsource['stackRestore'].body + ';'; + } + funcstr += 'return ret})'; + return eval(funcstr); + }; +})(); +Module["cwrap"] = cwrap; +Module["ccall"] = ccall; + +// Sets a value in memory in a dynamic way at run-time. Uses the +// type data. This is the same as makeSetValue, except that +// makeSetValue is done at compile-time and generates the needed +// code then, whereas this function picks the right code at +// run-time. +// Note that setValue and getValue only do *aligned* writes and reads! +// Note that ccall uses JS types as for defining types, while setValue and +// getValue need LLVM types ('i8', 'i32') - this is a lower-level operation +function setValue(ptr, value, type, noSafe) { + type = type || 'i8'; + if (type.charAt(type.length-1) === '*') type = 'i32'; // pointers are 32-bit + switch(type) { + case 'i1': HEAP8[((ptr)>>0)]=value; break; + case 'i8': HEAP8[((ptr)>>0)]=value; break; + case 'i16': HEAP16[((ptr)>>1)]=value; break; + case 'i32': HEAP32[((ptr)>>2)]=value; break; + case 'i64': (tempI64 = [value>>>0,(tempDouble=value,(+(Math_abs(tempDouble))) >= 1.0 ? (tempDouble > 0.0 ? ((Math_min((+(Math_floor((tempDouble)/4294967296.0))), 4294967295.0))|0)>>>0 : (~~((+(Math_ceil((tempDouble - +(((~~(tempDouble)))>>>0))/4294967296.0)))))>>>0) : 0)],HEAP32[((ptr)>>2)]=tempI64[0],HEAP32[(((ptr)+(4))>>2)]=tempI64[1]); break; + case 'float': HEAPF32[((ptr)>>2)]=value; break; + case 'double': HEAPF64[((ptr)>>3)]=value; break; + default: abort('invalid type for setValue: ' + type); + } +} +Module['setValue'] = setValue; + +// Parallel to setValue. +function getValue(ptr, type, noSafe) { + type = type || 'i8'; + if (type.charAt(type.length-1) === '*') type = 'i32'; // pointers are 32-bit + switch(type) { + case 'i1': return HEAP8[((ptr)>>0)]; + case 'i8': return HEAP8[((ptr)>>0)]; + case 'i16': return HEAP16[((ptr)>>1)]; + case 'i32': return HEAP32[((ptr)>>2)]; + case 'i64': return HEAP32[((ptr)>>2)]; + case 'float': return HEAPF32[((ptr)>>2)]; + case 'double': return HEAPF64[((ptr)>>3)]; + default: abort('invalid type for setValue: ' + type); + } + return null; +} +Module['getValue'] = getValue; + +var ALLOC_NORMAL = 0; // Tries to use _malloc() +var ALLOC_STACK = 1; // Lives for the duration of the current function call +var ALLOC_STATIC = 2; // Cannot be freed +var ALLOC_DYNAMIC = 3; // Cannot be freed except through sbrk +var ALLOC_NONE = 4; // Do not allocate +Module['ALLOC_NORMAL'] = ALLOC_NORMAL; +Module['ALLOC_STACK'] = ALLOC_STACK; +Module['ALLOC_STATIC'] = ALLOC_STATIC; +Module['ALLOC_DYNAMIC'] = ALLOC_DYNAMIC; +Module['ALLOC_NONE'] = ALLOC_NONE; + +// allocate(): This is for internal use. You can use it yourself as well, but the interface +// is a little tricky (see docs right below). The reason is that it is optimized +// for multiple syntaxes to save space in generated code. So you should +// normally not use allocate(), and instead allocate memory using _malloc(), +// initialize it with setValue(), and so forth. +// @slab: An array of data, or a number. If a number, then the size of the block to allocate, +// in *bytes* (note that this is sometimes confusing: the next parameter does not +// affect this!) +// @types: Either an array of types, one for each byte (or 0 if no type at that position), +// or a single type which is used for the entire block. This only matters if there +// is initial data - if @slab is a number, then this does not matter at all and is +// ignored. +// @allocator: How to allocate memory, see ALLOC_* +function allocate(slab, types, allocator, ptr) { + var zeroinit, size; + if (typeof slab === 'number') { + zeroinit = true; + size = slab; + } else { + zeroinit = false; + size = slab.length; + } + + var singleType = typeof types === 'string' ? types : null; + + var ret; + if (allocator == ALLOC_NONE) { + ret = ptr; + } else { + ret = [_malloc, Runtime.stackAlloc, Runtime.staticAlloc, Runtime.dynamicAlloc][allocator === undefined ? ALLOC_STATIC : allocator](Math.max(size, singleType ? 1 : types.length)); + } + + if (zeroinit) { + var ptr = ret, stop; + assert((ret & 3) == 0); + stop = ret + (size & ~3); + for (; ptr < stop; ptr += 4) { + HEAP32[((ptr)>>2)]=0; + } + stop = ret + size; + while (ptr < stop) { + HEAP8[((ptr++)>>0)]=0; + } + return ret; + } + + if (singleType === 'i8') { + if (slab.subarray || slab.slice) { + HEAPU8.set(slab, ret); + } else { + HEAPU8.set(new Uint8Array(slab), ret); + } + return ret; + } + + var i = 0, type, typeSize, previousType; + while (i < size) { + var curr = slab[i]; + + if (typeof curr === 'function') { + curr = Runtime.getFunctionIndex(curr); + } + + type = singleType || types[i]; + if (type === 0) { + i++; + continue; + } + assert(type, 'Must know what type to store in allocate!'); + + if (type == 'i64') type = 'i32'; // special case: we have one i32 here, and one i32 later + + setValue(ret+i, curr, type); + + // no need to look up size unless type changes, so cache it + if (previousType !== type) { + typeSize = Runtime.getNativeTypeSize(type); + previousType = type; + } + i += typeSize; + } + + return ret; +} +Module['allocate'] = allocate; + +function Pointer_stringify(ptr, /* optional */ length) { + // TODO: use TextDecoder + // Find the length, and check for UTF while doing so + var hasUtf = false; + var t; + var i = 0; + while (1) { + assert(ptr + i < TOTAL_MEMORY); + t = HEAPU8[(((ptr)+(i))>>0)]; + if (t >= 128) hasUtf = true; + else if (t == 0 && !length) break; + i++; + if (length && i == length) break; + } + if (!length) length = i; + + var ret = ''; + + if (!hasUtf) { + var MAX_CHUNK = 1024; // split up into chunks, because .apply on a huge string can overflow the stack + var curr; + while (length > 0) { + curr = String.fromCharCode.apply(String, HEAPU8.subarray(ptr, ptr + Math.min(length, MAX_CHUNK))); + ret = ret ? ret + curr : curr; + ptr += MAX_CHUNK; + length -= MAX_CHUNK; + } + return ret; + } + + var utf8 = new Runtime.UTF8Processor(); + for (i = 0; i < length; i++) { + assert(ptr + i < TOTAL_MEMORY); + t = HEAPU8[(((ptr)+(i))>>0)]; + ret += utf8.processCChar(t); + } + return ret; +} +Module['Pointer_stringify'] = Pointer_stringify; + +// Given a pointer 'ptr' to a null-terminated UTF16LE-encoded string in the emscripten HEAP, returns +// a copy of that string as a Javascript String object. +function UTF16ToString(ptr) { + var i = 0; + + var str = ''; + while (1) { + var codeUnit = HEAP16[(((ptr)+(i*2))>>1)]; + if (codeUnit == 0) + return str; + ++i; + // fromCharCode constructs a character from a UTF-16 code unit, so we can pass the UTF16 string right through. + str += String.fromCharCode(codeUnit); + } +} +Module['UTF16ToString'] = UTF16ToString; + +// Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', +// null-terminated and encoded in UTF16LE form. The copy will require at most (str.length*2+1)*2 bytes of space in the HEAP. +function stringToUTF16(str, outPtr) { + for(var i = 0; i < str.length; ++i) { + // charCodeAt returns a UTF-16 encoded code unit, so it can be directly written to the HEAP. + var codeUnit = str.charCodeAt(i); // possibly a lead surrogate + HEAP16[(((outPtr)+(i*2))>>1)]=codeUnit; + } + // Null-terminate the pointer to the HEAP. + HEAP16[(((outPtr)+(str.length*2))>>1)]=0; +} +Module['stringToUTF16'] = stringToUTF16; + +// Given a pointer 'ptr' to a null-terminated UTF32LE-encoded string in the emscripten HEAP, returns +// a copy of that string as a Javascript String object. +function UTF32ToString(ptr) { + var i = 0; + + var str = ''; + while (1) { + var utf32 = HEAP32[(((ptr)+(i*4))>>2)]; + if (utf32 == 0) + return str; + ++i; + // Gotcha: fromCharCode constructs a character from a UTF-16 encoded code (pair), not from a Unicode code point! So encode the code point to UTF-16 for constructing. + if (utf32 >= 0x10000) { + var ch = utf32 - 0x10000; + str += String.fromCharCode(0xD800 | (ch >> 10), 0xDC00 | (ch & 0x3FF)); + } else { + str += String.fromCharCode(utf32); + } + } +} +Module['UTF32ToString'] = UTF32ToString; + +// Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', +// null-terminated and encoded in UTF32LE form. The copy will require at most (str.length+1)*4 bytes of space in the HEAP, +// but can use less, since str.length does not return the number of characters in the string, but the number of UTF-16 code units in the string. +function stringToUTF32(str, outPtr) { + var iChar = 0; + for(var iCodeUnit = 0; iCodeUnit < str.length; ++iCodeUnit) { + // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! We must decode the string to UTF-32 to the heap. + var codeUnit = str.charCodeAt(iCodeUnit); // possibly a lead surrogate + if (codeUnit >= 0xD800 && codeUnit <= 0xDFFF) { + var trailSurrogate = str.charCodeAt(++iCodeUnit); + codeUnit = 0x10000 + ((codeUnit & 0x3FF) << 10) | (trailSurrogate & 0x3FF); + } + HEAP32[(((outPtr)+(iChar*4))>>2)]=codeUnit; + ++iChar; + } + // Null-terminate the pointer to the HEAP. + HEAP32[(((outPtr)+(iChar*4))>>2)]=0; +} +Module['stringToUTF32'] = stringToUTF32; + +function demangle(func) { + var i = 3; + // params, etc. + var basicTypes = { + 'v': 'void', + 'b': 'bool', + 'c': 'char', + 's': 'short', + 'i': 'int', + 'l': 'long', + 'f': 'float', + 'd': 'double', + 'w': 'wchar_t', + 'a': 'signed char', + 'h': 'unsigned char', + 't': 'unsigned short', + 'j': 'unsigned int', + 'm': 'unsigned long', + 'x': 'long long', + 'y': 'unsigned long long', + 'z': '...' + }; + var subs = []; + var first = true; + function dump(x) { + //return; + if (x) Module.print(x); + Module.print(func); + var pre = ''; + for (var a = 0; a < i; a++) pre += ' '; + Module.print (pre + '^'); + } + function parseNested() { + i++; + if (func[i] === 'K') i++; // ignore const + var parts = []; + while (func[i] !== 'E') { + if (func[i] === 'S') { // substitution + i++; + var next = func.indexOf('_', i); + var num = func.substring(i, next) || 0; + parts.push(subs[num] || '?'); + i = next+1; + continue; + } + if (func[i] === 'C') { // constructor + parts.push(parts[parts.length-1]); + i += 2; + continue; + } + var size = parseInt(func.substr(i)); + var pre = size.toString().length; + if (!size || !pre) { i--; break; } // counter i++ below us + var curr = func.substr(i + pre, size); + parts.push(curr); + subs.push(curr); + i += pre + size; + } + i++; // skip E + return parts; + } + function parse(rawList, limit, allowVoid) { // main parser + limit = limit || Infinity; + var ret = '', list = []; + function flushList() { + return '(' + list.join(', ') + ')'; + } + var name; + if (func[i] === 'N') { + // namespaced N-E + name = parseNested().join('::'); + limit--; + if (limit === 0) return rawList ? [name] : name; + } else { + // not namespaced + if (func[i] === 'K' || (first && func[i] === 'L')) i++; // ignore const and first 'L' + var size = parseInt(func.substr(i)); + if (size) { + var pre = size.toString().length; + name = func.substr(i + pre, size); + i += pre + size; + } + } + first = false; + if (func[i] === 'I') { + i++; + var iList = parse(true); + var iRet = parse(true, 1, true); + ret += iRet[0] + ' ' + name + '<' + iList.join(', ') + '>'; + } else { + ret = name; + } + paramLoop: while (i < func.length && limit-- > 0) { + //dump('paramLoop'); + var c = func[i++]; + if (c in basicTypes) { + list.push(basicTypes[c]); + } else { + switch (c) { + case 'P': list.push(parse(true, 1, true)[0] + '*'); break; // pointer + case 'R': list.push(parse(true, 1, true)[0] + '&'); break; // reference + case 'L': { // literal + i++; // skip basic type + var end = func.indexOf('E', i); + var size = end - i; + list.push(func.substr(i, size)); + i += size + 2; // size + 'EE' + break; + } + case 'A': { // array + var size = parseInt(func.substr(i)); + i += size.toString().length; + if (func[i] !== '_') throw '?'; + i++; // skip _ + list.push(parse(true, 1, true)[0] + ' [' + size + ']'); + break; + } + case 'E': break paramLoop; + default: ret += '?' + c; break paramLoop; + } + } + } + if (!allowVoid && list.length === 1 && list[0] === 'void') list = []; // avoid (void) + if (rawList) { + if (ret) { + list.push(ret + '?'); + } + return list; + } else { + return ret + flushList(); + } + } + try { + // Special-case the entry point, since its name differs from other name mangling. + if (func == 'Object._main' || func == '_main') { + return 'main()'; + } + if (typeof func === 'number') func = Pointer_stringify(func); + if (func[0] !== '_') return func; + if (func[1] !== '_') return func; // C function + if (func[2] !== 'Z') return func; + switch (func[3]) { + case 'n': return 'operator new()'; + case 'd': return 'operator delete()'; + } + return parse(); + } catch(e) { + return func; + } +} + +function demangleAll(text) { + return text.replace(/__Z[\w\d_]+/g, function(x) { var y = demangle(x); return x === y ? x : (x + ' [' + y + ']') }); +} + +function stackTrace() { + var stack = new Error().stack; + return stack ? demangleAll(stack) : '(no stack trace available)'; // Stack trace is not available at least on IE10 and Safari 6. +} + +// Memory management + +var PAGE_SIZE = 4096; +function alignMemoryPage(x) { + return (x+4095)&-4096; +} + +var HEAP; +var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; + +var STATIC_BASE = 0, STATICTOP = 0, staticSealed = false; // static area +var STACK_BASE = 0, STACKTOP = 0, STACK_MAX = 0; // stack area +var DYNAMIC_BASE = 0, DYNAMICTOP = 0; // dynamic area handled by sbrk + +function enlargeMemory() { + abort('Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value ' + TOTAL_MEMORY + ', (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.'); +} + +var TOTAL_STACK = Module['TOTAL_STACK'] || 5242880; +var TOTAL_MEMORY = Module['TOTAL_MEMORY'] || 16777216; +var FAST_MEMORY = Module['FAST_MEMORY'] || 2097152; + +var totalMemory = 4096; +while (totalMemory < TOTAL_MEMORY || totalMemory < 2*TOTAL_STACK) { + if (totalMemory < 16*1024*1024) { + totalMemory *= 2; + } else { + totalMemory += 16*1024*1024 + } +} +if (totalMemory !== TOTAL_MEMORY) { + Module.printErr('increasing TOTAL_MEMORY to ' + totalMemory + ' to be more reasonable'); + TOTAL_MEMORY = totalMemory; +} + +// Initialize the runtime's memory +// check for full engine support (use string 'subarray' to avoid closure compiler confusion) +assert(typeof Int32Array !== 'undefined' && typeof Float64Array !== 'undefined' && !!(new Int32Array(1)['subarray']) && !!(new Int32Array(1)['set']), + 'JS engine does not provide full typed array support'); + +var buffer = new ArrayBuffer(TOTAL_MEMORY); +HEAP8 = new Int8Array(buffer); +HEAP16 = new Int16Array(buffer); +HEAP32 = new Int32Array(buffer); +HEAPU8 = new Uint8Array(buffer); +HEAPU16 = new Uint16Array(buffer); +HEAPU32 = new Uint32Array(buffer); +HEAPF32 = new Float32Array(buffer); +HEAPF64 = new Float64Array(buffer); + +// Endianness check (note: assumes compiler arch was little-endian) +HEAP32[0] = 255; +assert(HEAPU8[0] === 255 && HEAPU8[3] === 0, 'Typed arrays 2 must be run on a little-endian system'); + +Module['HEAP'] = HEAP; +Module['HEAP8'] = HEAP8; +Module['HEAP16'] = HEAP16; +Module['HEAP32'] = HEAP32; +Module['HEAPU8'] = HEAPU8; +Module['HEAPU16'] = HEAPU16; +Module['HEAPU32'] = HEAPU32; +Module['HEAPF32'] = HEAPF32; +Module['HEAPF64'] = HEAPF64; + +function callRuntimeCallbacks(callbacks) { + while(callbacks.length > 0) { + var callback = callbacks.shift(); + if (typeof callback == 'function') { + callback(); + continue; + } + var func = callback.func; + if (typeof func === 'number') { + if (callback.arg === undefined) { + Runtime.dynCall('v', func); + } else { + Runtime.dynCall('vi', func, [callback.arg]); + } + } else { + func(callback.arg === undefined ? null : callback.arg); + } + } +} + +var __ATPRERUN__ = []; // functions called before the runtime is initialized +var __ATINIT__ = []; // functions called during startup +var __ATMAIN__ = []; // functions called when main() is to be run +var __ATEXIT__ = []; // functions called during shutdown +var __ATPOSTRUN__ = []; // functions called after the runtime has exited + +var runtimeInitialized = false; + +function preRun() { + // compatibility - merge in anything from Module['preRun'] at this time + if (Module['preRun']) { + if (typeof Module['preRun'] == 'function') Module['preRun'] = [Module['preRun']]; + while (Module['preRun'].length) { + addOnPreRun(Module['preRun'].shift()); + } + } + callRuntimeCallbacks(__ATPRERUN__); +} + +function ensureInitRuntime() { + if (runtimeInitialized) return; + runtimeInitialized = true; + callRuntimeCallbacks(__ATINIT__); +} + +function preMain() { + callRuntimeCallbacks(__ATMAIN__); +} + +function exitRuntime() { + if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { + Module.printErr('Exiting runtime. Any attempt to access the compiled C code may fail from now. If you want to keep the runtime alive, set Module["noExitRuntime"] = true or build with -s NO_EXIT_RUNTIME=1'); + } + callRuntimeCallbacks(__ATEXIT__); + runtimeInitialized = false; +} + +function postRun() { + // compatibility - merge in anything from Module['postRun'] at this time + 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); +} +Module['addOnPreRun'] = Module.addOnPreRun = addOnPreRun; + +function addOnInit(cb) { + __ATINIT__.unshift(cb); +} +Module['addOnInit'] = Module.addOnInit = addOnInit; + +function addOnPreMain(cb) { + __ATMAIN__.unshift(cb); +} +Module['addOnPreMain'] = Module.addOnPreMain = addOnPreMain; + +function addOnExit(cb) { + __ATEXIT__.unshift(cb); +} +Module['addOnExit'] = Module.addOnExit = addOnExit; + +function addOnPostRun(cb) { + __ATPOSTRUN__.unshift(cb); +} +Module['addOnPostRun'] = Module.addOnPostRun = addOnPostRun; + +// Tools + +// This processes a JS string into a C-line array of numbers, 0-terminated. +// For LLVM-originating strings, see parser.js:parseLLVMString function +function intArrayFromString(stringy, dontAddNull, length /* optional */) { + var ret = (new Runtime.UTF8Processor()).processJSString(stringy); + if (length) { + ret.length = length; + } + if (!dontAddNull) { + ret.push(0); + } + return ret; +} +Module['intArrayFromString'] = intArrayFromString; + +function intArrayToString(array) { + var ret = []; + for (var i = 0; i < array.length; i++) { + var chr = array[i]; + if (chr > 0xFF) { + assert(false, 'Character code ' + chr + ' (' + String.fromCharCode(chr) + ') at offset ' + i + ' not in 0x00-0xFF.'); + chr &= 0xFF; + } + ret.push(String.fromCharCode(chr)); + } + return ret.join(''); +} +Module['intArrayToString'] = intArrayToString; + +// Write a Javascript array to somewhere in the heap +function writeStringToMemory(string, buffer, dontAddNull) { + var array = intArrayFromString(string, dontAddNull); + var i = 0; + while (i < array.length) { + var chr = array[i]; + HEAP8[(((buffer)+(i))>>0)]=chr; + i = i + 1; + } +} +Module['writeStringToMemory'] = writeStringToMemory; + +function writeArrayToMemory(array, buffer) { + for (var i = 0; i < array.length; i++) { + HEAP8[(((buffer)+(i))>>0)]=array[i]; + } +} +Module['writeArrayToMemory'] = writeArrayToMemory; + +function writeAsciiToMemory(str, buffer, dontAddNull) { + for (var i = 0; i < str.length; i++) { + assert(str.charCodeAt(i) === str.charCodeAt(i)&0xff); + HEAP8[(((buffer)+(i))>>0)]=str.charCodeAt(i); + } + if (!dontAddNull) HEAP8[(((buffer)+(str.length))>>0)]=0; +} +Module['writeAsciiToMemory'] = writeAsciiToMemory; + +function unSign(value, bits, ignore) { + if (value >= 0) { + return value; + } + return bits <= 32 ? 2*Math.abs(1 << (bits-1)) + value // Need some trickery, since if bits == 32, we are right at the limit of the bits JS uses in bitshifts + : Math.pow(2, bits) + value; +} +function reSign(value, bits, ignore) { + if (value <= 0) { + return value; + } + var half = bits <= 32 ? Math.abs(1 << (bits-1)) // abs is needed if bits == 32 + : Math.pow(2, bits-1); + if (value >= half && (bits <= 32 || value > half)) { // for huge values, we can hit the precision limit and always get true here. so don't do that + // but, in general there is no perfect solution here. With 64-bit ints, we get rounding and errors + // TODO: In i64 mode 1, resign the two parts separately and safely + value = -2*half + value; // Cannot bitshift half, as it may be at the limit of the bits JS uses in bitshifts + } + return value; +} + +// check for imul support, and also for correctness ( https://bugs.webkit.org/show_bug.cgi?id=126345 ) +if (!Math['imul'] || Math['imul'](0xffffffff, 5) !== -5) Math['imul'] = function imul(a, b) { + var ah = a >>> 16; + var al = a & 0xffff; + var bh = b >>> 16; + var bl = b & 0xffff; + return (al*bl + ((ah*bl + al*bh) << 16))|0; +}; +Math.imul = Math['imul']; + + +var Math_abs = Math.abs; +var Math_cos = Math.cos; +var Math_sin = Math.sin; +var Math_tan = Math.tan; +var Math_acos = Math.acos; +var Math_asin = Math.asin; +var Math_atan = Math.atan; +var Math_atan2 = Math.atan2; +var Math_exp = Math.exp; +var Math_log = Math.log; +var Math_sqrt = Math.sqrt; +var Math_ceil = Math.ceil; +var Math_floor = Math.floor; +var Math_pow = Math.pow; +var Math_imul = Math.imul; +var Math_fround = Math.fround; +var Math_min = Math.min; + +// A counter of dependencies for calling run(). If we need to +// do asynchronous work before running, increment this and +// decrement it. Incrementing must happen in a place like +// PRE_RUN_ADDITIONS (used by emcc to add file preloading). +// Note that you can add dependencies in preRun, even though +// it happens right before run - run will be postponed until +// the dependencies are met. +var runDependencies = 0; +var runDependencyWatcher = null; +var dependenciesFulfilled = null; // overridden to take different actions when all run dependencies are fulfilled +var runDependencyTracking = {}; + +function addRunDependency(id) { + runDependencies++; + if (Module['monitorRunDependencies']) { + Module['monitorRunDependencies'](runDependencies); + } + if (id) { + assert(!runDependencyTracking[id]); + runDependencyTracking[id] = 1; + if (runDependencyWatcher === null && typeof setInterval !== 'undefined') { + // Check for missing dependencies every few seconds + runDependencyWatcher = setInterval(function() { + if (ABORT) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + return; + } + var shown = false; + for (var dep in runDependencyTracking) { + if (!shown) { + shown = true; + Module.printErr('still waiting on run dependencies:'); + } + Module.printErr('dependency: ' + dep); + } + if (shown) { + Module.printErr('(end of list)'); + } + }, 10000); + } + } else { + Module.printErr('warning: run dependency added without ID'); + } +} +Module['addRunDependency'] = addRunDependency; +function removeRunDependency(id) { + runDependencies--; + if (Module['monitorRunDependencies']) { + Module['monitorRunDependencies'](runDependencies); + } + if (id) { + assert(runDependencyTracking[id]); + delete runDependencyTracking[id]; + } else { + Module.printErr('warning: run dependency removed without ID'); + } + if (runDependencies == 0) { + if (runDependencyWatcher !== null) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + } + if (dependenciesFulfilled) { + var callback = dependenciesFulfilled; + dependenciesFulfilled = null; + callback(); // can add another dependenciesFulfilled + } + } +} +Module['removeRunDependency'] = removeRunDependency; + +Module["preloadedImages"] = {}; // maps url to image data +Module["preloadedAudios"] = {}; // maps url to audio data + + +var memoryInitializer = null; + +// === Body === + + + + + +STATIC_BASE = 8; + +STATICTOP = STATIC_BASE + Runtime.alignMemory(46019); + /* global initializers */ __ATINIT__.push(); + + +/* memory initializer */ allocate([0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,99,104,97,114,97,99,116,101,114,0,0,0,0,0,0,0,83,69,76,69,67,84,32,102,116,115,51,95,116,111,107,101,110,105,122,101,114,40,63,44,32,63,41,0,0,0,0,0,51,46,56,46,53,0,0,0,83,81,76,73,84,69,95,0,96,177,0,0,112,177,0,0,128,177,0,0,144,177,0,0,160,177,0,0,184,177,0,0,200,177,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,10,10,10,10,10,10,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,64,0,42,42,42,42,42,42,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,0,0,0,0,0,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,112,5,0,0,120,5,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,128,5,0,0,144,5,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,152,5,0,0,168,5,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,176,5,0,0,120,5,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,5,0,0,0,117,110,105,120,0,0,0,0,6,0,0,0,0,0,0,0,117,110,105,120,45,110,111,110,101,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,117,110,105,120,45,100,111,116,102,105,108,101,0,0,0,0,8,0,0,0,0,0,0,0,117,110,105,120,45,101,120,99,108,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,1,0,0,0,0,0,0,0,4,5,3,5,1,5,1,5,2,5,2,5,1,5,1,5,4,5,3,5,1,5,1,5,2,5,2,5,1,5,1,5,115,116,114,105,110,103,32,111,114,32,98,108,111,98,32,116,111,111,32,98,105,103,0,0,140,0,0,0,52,0,0,0,53,0,0,0,31,1,1,1,67,0,10,1,46,0,0,1,35,1,0,0,16,0,4,0,58,0,0,0,24,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,118,105,114,116,117,97,108,32,116,97,98,108,101,58,32,37,115,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,116,97,98,108,101,32,119,105,116,104,111,117,116,32,114,111,119,105,100,58,32,37,115,0,0,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,118,105,101,119,58,32,37,115,0,0,0,0,110,111,32,115,117,99,104,32,99,111,108,117,109,110,58,32,34,37,115,34,0,0,0,0,102,111,114,101,105,103,110,32,107,101,121,0,0,0,0,0,105,110,100,101,120,101,100,0,99,97,110,110,111,116,32,111,112,101,110,32,37,115,32,99,111,108,117,109,110,32,102,111,114,32,119,114,105,116,105,110,103,0,0,0,0,0,0,0,37,115,0,0,0,0,0,0,42,63,91,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,4,3,2,5,0,0,0,116,114,105,103,103,101,114,0,116,101,109,112,0,0,0,0,50,48,49,52,45,48,54,45,48,52,32,49,52,58,48,54,58,51,52,32,98,49,101,100,52,102,50,97,51,52,98,97,54,54,99,50,57,98,49,51,48,102,56,100,49,51,101,57,48,57,50,55,53,56,48,49,57,50,49,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,100,97,116,97,98,97,115,101,58,32,37,115,0,0,0,0,0,202,154,59,0,202,154,59,208,7,0,0,232,3,0,0,244,1,0,0,168,97,0,0,127,0,0,0,10,0,0,0,80,195,0,0,231,3,0,0,232,3,0,0,0,0,0,0,57,50,50,51,51,55,50,48,51,54,56,53,52,55,55,53,56,48,0,0,0,0,0,0,111,110,111,102,102,97,108,115,101,121,101,115,116,114,117,101,102,117,108,108,0,0,0,0,0,1,2,4,9,12,16,0,2,2,3,5,3,4,4,0,1,0,0,0,1,1,2,0,82,69,73,78,68,69,88,69,68,69,83,67,65,80,69,65,67,72,69,67,75,69,89,66,69,70,79,82,69,73,71,78,79,82,69,71,69,88,80,76,65,73,78,83,84,69,65,68,68,65,84,65,66,65,83,69,76,69,67,84,65,66,76,69,70,84,72,69,78,68,69,70,69,82,82,65,66,76,69,76,83,69,88,67,69,80,84,82,65,78,83,65,67,84,73,79,78,65,84,85,82,65,76,84,69,82,65,73,83,69,88,67,76,85,83,73,86,69,88,73,83,84,83,65,86,69,80,79,73,78,84,69,82,83,69,67,84,82,73,71,71,69,82,69,70,69,82,69,78,67,69,83,67,79,78,83,84,82,65,73,78,84,79,70,70,83,69,84,69,77,80,79,82,65,82,89,85,78,73,81,85,69,82,89,87,73,84,72,79,85,84,69,82,69,76,69,65,83,69,65,84,84,65,67,72,65,86,73,78,71,82,79,85,80,68,65,84,69,66,69,71,73,78,78,69,82,69,67,85,82,83,73,86,69,66,69,84,87,69,69,78,79,84,78,85,76,76,73,75,69,67,65,83,67,65,68,69,76,69,84,69,67,65,83,69,67,79,76,76,65,84,69,67,82,69,65,84,69,67,85,82,82,69,78,84,95,68,65,84,69,68,69,84,65,67,72,73,77,77,69,68,73,65,84,69,74,79,73,78,83,69,82,84,77,65,84,67,72,80,76,65,78,65,76,89,90,69,80,82,65,71,77,65,66,79,82,84,86,65,76,85,69,83,86,73,82,84,85,65,76,73,77,73,84,87,72,69,78,87,72,69,82,69,78,65,77,69,65,70,84,69,82,69,80,76,65,67,69,65,78,68,69,70,65,85,76,84,65,85,84,79,73,78,67,82,69,77,69,78,84,67,65,83,84,67,79,76,85,77,78,67,79,77,77,73,84,67,79,78,70,76,73,67,84,67,82,79,83,83,67,85,82,82,69,78,84,95,84,73,77,69,83,84,65,77,80,82,73,77,65,82,89,68,69,70,69,82,82,69,68,73,83,84,73,78,67,84,68,82,79,80,70,65,73,76,70,82,79,77,70,85,76,76,71,76,79,66,89,73,70,73,83,78,85,76,76,79,82,68,69,82,69,83,84,82,73,67,84,82,73,71,72,84,82,79,76,76,66,65,67,75,82,79,87,85,78,73,79,78,85,83,73,78,71,86,65,67,85,85,77,86,73,69,87,73,78,73,84,73,65,76,76,89,0,0,0,0,0,0,0,76,105,117,74,0,45,0,0,82,0,77,0,0,42,12,78,15,0,116,85,54,112,0,19,0,0,121,0,119,115,0,22,93,0,9,0,0,70,71,0,69,6,0,48,90,102,0,118,101,0,0,44,0,103,24,0,17,0,122,53,23,0,5,110,25,96,0,0,124,106,60,123,57,28,55,0,91,0,100,26,0,99,0,0,0,95,92,97,88,109,14,39,108,0,81,0,18,89,111,32,0,120,80,113,62,46,84,0,0,94,40,59,114,0,36,0,0,29,0,86,63,64,0,20,61,0,56,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,13,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,33,0,21,0,0,0,0,0,50,0,43,3,47,0,0,0,0,30,0,58,0,38,0,0,0,1,66,0,0,67,0,41,0,0,0,0,0,0,49,65,0,0,0,0,31,52,16,34,10,0,0,0,0,0,0,0,11,72,79,0,8,0,104,98,0,107,0,87,0,75,51,0,27,37,73,83,0,35,68,0,0,0,0,0,0,7,7,5,4,6,4,5,3,6,7,3,6,6,7,7,3,8,2,6,5,4,4,3,10,4,6,11,6,2,7,5,5,9,6,9,9,7,10,10,4,6,2,3,9,4,2,6,5,7,4,5,7,6,6,5,6,5,5,9,7,7,3,2,4,4,7,3,6,4,7,6,12,6,9,4,6,5,4,7,6,5,6,7,5,4,5,6,5,7,3,7,13,2,2,4,6,6,8,5,17,12,7,8,8,2,4,4,4,4,4,2,2,6,5,8,5,8,3,5,5,6,4,9,3,0,0,0,0,0,0,2,0,2,0,8,0,9,0,14,0,16,0,20,0,23,0,25,0,25,0,29,0,33,0,36,0,41,0,46,0,48,0,53,0,54,0,59,0,62,0,65,0,67,0,69,0,78,0,81,0,86,0,91,0,95,0,96,0,101,0,105,0,109,0,117,0,122,0,128,0,136,0,142,0,152,0,159,0,162,0,162,0,165,0,167,0,167,0,171,0,176,0,179,0,184,0,184,0,188,0,192,0,199,0,204,0,209,0,212,0,218,0,221,0,225,0,234,0,240,0,240,0,240,0,243,0,246,0,250,0,251,0,255,0,5,1,9,1,16,1,22,1,34,1,40,1,49,1,51,1,57,1,62,1,64,1,71,1,76,1,81,1,87,1,93,1,98,1,102,1,105,1,111,1,115,1,122,1,124,1,131,1,133,1,135,1,144,1,148,1,154,1,160,1,168,1,173,1,173,1,189,1,196,1,203,1,204,1,211,1,215,1,219,1,223,1,227,1,230,1,232,1,234,1,240,1,244,1,252,1,1,2,9,2,12,2,17,2,22,2,28,2,32,2,37,2,67,28,140,42,84,44,104,53,35,113,46,47,50,2,49,142,41,24,119,16,98,138,11,112,139,117,6,30,107,98,141,57,9,20,13,118,62,105,99,131,55,54,111,21,21,71,103,3,25,66,98,14,34,128,127,110,5,98,58,74,77,19,52,101,50,37,33,109,136,95,17,69,43,8,124,108,51,4,32,56,29,120,65,129,137,130,68,31,59,72,100,106,15,75,38,39,10,40,98,69,69,102,7,121,73,114,45,123,98,50,36,18,76,126,60,98,12,61,115,125,63,64,48,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,109,105,115,117,115,101,32,97,116,32,108,105,110,101,32,37,100,32,111,102,32,91,37,46,49,48,115,93,0,0,0,0,117,110,97,98,108,101,32,116,111,32,100,101,108,101,116,101,47,109,111,100,105,102,121,32,99,111,108,108,97,116,105,111,110,32,115,101,113,117,101,110,99,101,32,100,117,101,32,116,111,32,97,99,116,105,118,101,32,115,116,97,116,101,109,101,110,116,115,0,0,0,0,0,66,73,78,65,82,89,0,0,82,84,82,73,77,0,0,0,78,79,67,65,83,69,0,0,109,97,105,110,0,0,0,0,115,105,109,112,108,101,0,0,112,111,114,116,101,114,0,0,102,116,115,51,95,116,111,107,101,110,105,122,101,114,0,0,115,110,105,112,112,101,116,0,111,102,102,115,101,116,115,0,109,97,116,99,104,105,110,102,111,0,0,0,0,0,0,0,111,112,116,105,109,105,122,101,0,0,0,0,0,0,0,0,102,116,115,51,0,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,9,0,0,0,3,0,0,0,4,0,0,0,10,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,7,0,0,0,6,0,0,0,11,0,0,0,4,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,3,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,102,116,115,52,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,16,0,0,0,12,0,0,0,12,0,0,0,17,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,15,0,0,0,7,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102,116,115,51,116,111,107,101,110,105,122,101,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,120,40,105,110,112,117,116,44,32,116,111,107,101,110,44,32,115,116,97,114,116,44,32,101,110,100,44,32,112,111,115,105,116,105,111,110,41,0,0,0,0,0,0,117,110,107,110,111,119,110,32,116,111,107,101,110,105,122,101,114,58,32,37,115,0,0,0,65,76,84,69,82,32,84,65,66,76,69,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,32,32,82,69,78,65,77,69,32,84,79,32,39,37,113,95,99,111,110,116,101,110,116,39,59,0,0,0,0,65,76,84,69,82,32,84,65,66,76,69,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,32,32,82,69,78,65,77,69,32,84,79,32,39,37,113,95,100,111,99,115,105,122,101,39,59,0,0,0,0,65,76,84,69,82,32,84,65,66,76,69,32,37,81,46,39,37,113,95,115,116,97,116,39,32,32,82,69,78,65,77,69,32,84,79,32,39,37,113,95,115,116,97,116,39,59,0,0,65,76,84,69,82,32,84,65,66,76,69,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,32,82,69,78,65,77,69,32,84,79,32,39,37,113,95,115,101,103,109,101,110,116,115,39,59,0,0,0,65,76,84,69,82,32,84,65,66,76,69,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,32,32,82,69,78,65,77,69,32,84,79,32,39,37,113,95,115,101,103,100,105,114,39,59,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,32,87,72,69,82,69,32,114,111,119,105,100,32,61,32,63,0,0,0,0,0,83,69,76,69,67,84,32,78,79,84,32,69,88,73,83,84,83,40,83,69,76,69,67,84,32,100,111,99,105,100,32,70,82,79,77,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,32,87,72,69,82,69,32,114,111,119,105,100,33,61,63,41,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,0,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,116,97,116,39,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,37,115,32,87,72,69,82,69,32,114,111,119,105,100,61,63,0,83,69,76,69,67,84,32,40,83,69,76,69,67,84,32,109,97,120,40,105,100,120,41,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,41,32,43,32,49,0,0,0,0,0,0,0,0,82,69,80,76,65,67,69,32,73,78,84,79,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,40,98,108,111,99,107,105,100,44,32,98,108,111,99,107,41,32,86,65,76,85,69,83,40,63,44,32,63,41,0,0,0,0,0,0,83,69,76,69,67,84,32,99,111,97,108,101,115,99,101,40,40,83,69,76,69,67,84,32,109,97,120,40,98,108,111,99,107,105,100,41,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,41,32,43,32,49,44,32,49,41,0,0,0,0,0,82,69,80,76,65,67,69,32,73,78,84,79,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,86,65,76,85,69,83,40,63,44,63,44,63,44,63,44,63,44,63,41,0,83,69,76,69,67,84,32,105,100,120,44,32,115,116,97,114,116,95,98,108,111,99,107,44,32,108,101,97,118,101,115,95,101,110,100,95,98,108,111,99,107,44,32,101,110,100,95,98,108,111,99,107,44,32,114,111,111,116,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,32,79,82,68,69,82,32,66,89,32,105,100,120,32,65,83,67,0,83,69,76,69,67,84,32,105,100,120,44,32,115,116,97,114,116,95,98,108,111,99,107,44,32,108,101,97,118,101,115,95,101,110,100,95,98,108,111,99,107,44,32,101,110,100,95,98,108,111,99,107,44,32,114,111,111,116,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,66,69,84,87,69,69,78,32,63,32,65,78,68,32,63,79,82,68,69,82,32,66,89,32,108,101,118,101,108,32,68,69,83,67,44,32,105,100,120,32,65,83,67,0,0,83,69,76,69,67,84,32,99,111,117,110,116,40,42,41,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,0,0,0,0,0,83,69,76,69,67,84,32,109,97,120,40,108,101,118,101,108,41,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,66,69,84,87,69,69,78,32,63,32,65,78,68,32,63,0,0,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,0,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,32,87,72,69,82,69,32,98,108,111,99,107,105,100,32,66,69,84,87,69,69,78,32,63,32,65,78,68,32,63,0,0,0,0,0,0,73,78,83,69,82,84,32,73,78,84,79,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,32,86,65,76,85,69,83,40,37,115,41,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,32,87,72,69,82,69,32,100,111,99,105,100,32,61,32,63,0,0,0,0,0,82,69,80,76,65,67,69,32,73,78,84,79,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,32,86,65,76,85,69,83,40,63,44,63,41,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,115,105,122,101,32,70,82,79,77,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,32,87,72,69,82,69,32,100,111,99,105,100,61,63,0,0,83,69,76,69,67,84,32,118,97,108,117,101,32,70,82,79,77,32,37,81,46,39,37,113,95,115,116,97,116,39,32,87,72,69,82,69,32,105,100,61,63,0,0,0,0,0,0,0,82,69,80,76,65,67,69,32,73,78,84,79,32,37,81,46,39,37,113,95,115,116,97,116,39,32,86,65,76,85,69,83,40,63,44,63,41,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,66,69,84,87,69,69,78,32,63,32,65,78,68,32,63,0,0,83,69,76,69,67,84,32,68,73,83,84,73,78,67,84,32,108,101,118,101,108,32,47,32,40,49,48,50,52,32,42,32,63,41,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,0,0,83,69,76,69,67,84,32,108,101,118,101,108,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,71,82,79,85,80,32,66,89,32,108,101,118,101,108,32,72,65,86,73,78,71,32,99,111,117,110,116,40,42,41,62,61,63,32,32,79,82,68,69,82,32,66,89,32,40,108,101,118,101,108,32,37,37,32,49,48,50,52,41,32,65,83,67,32,76,73,77,73,84,32,49,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,50,32,42,32,116,111,116,97,108,40,49,32,43,32,108,101,97,118,101,115,95,101,110,100,95,98,108,111,99,107,32,45,32,115,116,97,114,116,95,98,108,111,99,107,41,32,32,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,32,65,78,68,32,105,100,120,32,60,32,63,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,32,65,78,68,32,105,100,120,32,61,32,63,0,0,85,80,68,65,84,69,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,83,69,84,32,105,100,120,32,61,32,63,32,87,72,69,82,69,32,108,101,118,101,108,61,63,32,65,78,68,32,105,100,120,61,63,0,0,0,0,0,0,0,83,69,76,69,67,84,32,105,100,120,44,32,115,116,97,114,116,95,98,108,111,99,107,44,32,108,101,97,118,101,115,95,101,110,100,95,98,108,111,99,107,44,32,101,110,100,95,98,108,111,99,107,44,32,114,111,111,116,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,32,65,78,68,32,105,100,120,32,61,32,63,0,0,0,0,0,0,85,80,68,65,84,69,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,83,69,84,32,115,116,97,114,116,95,98,108,111,99,107,32,61,32,63,44,32,114,111,111,116,32,61,32,63,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,32,65,78,68,32,105,100,120,32,61,32,63,0,0,83,69,76,69,67,84,32,49,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,32,87,72,69,82,69,32,98,108,111,99,107,105,100,61,63,32,65,78,68,32,98,108,111,99,107,32,73,83,32,78,85,76,76,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,105,100,120,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,61,63,32,79,82,68,69,82,32,66,89,32,49,32,65,83,67,0,0,0,0,0,83,69,76,69,67,84,32,109,97,120,40,32,108,101,118,101,108,32,37,37,32,49,48,50,52,32,41,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,0,83,69,76,69,67,84,32,108,101,118,101,108,44,32,105,100,120,44,32,101,110,100,95,98,108,111,99,107,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,66,69,84,87,69,69,78,32,63,32,65,78,68,32,63,32,79,82,68,69,82,32,66,89,32,108,101,118,101,108,32,68,69,83,67,44,32,105,100,120,32,65,83,67,0,0,0,0,0,0,0,85,80,68,65,84,69,32,79,82,32,70,65,73,76,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,83,69,84,32,108,101,118,101,108,61,45,49,44,105,100,120,61,63,32,87,72,69,82,69,32,108,101,118,101,108,61,63,32,65,78,68,32,105,100,120,61,63,0,0,0,0,0,0,0,0,85,80,68,65,84,69,32,79,82,32,70,65,73,76,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,83,69,84,32,108,101,118,101,108,61,63,32,87,72,69,82,69,32,108,101,118,101,108,61,45,49,0,0,0,0,0,0,0,0,232,16,0,0,24,17,0,0,96,17,0,0,128,17,0,0,160,17,0,0,192,17,0,0,224,17,0,0,0,18,0,0,24,18,0,0,96,18,0,0,160,18,0,0,232,18,0,0,24,19,0,0,136,19,0,0,16,20,0,0,72,20,0,0,144,20,0,0,192,20,0,0,0,21,0,0,40,21,0,0,88,21,0,0,136,21,0,0,184,21,0,0,232,21,0,0,248,6,0,0,248,6,0,0,16,22,0,0,72,22,0,0,128,22,0,0,240,22,0,0,88,23,0,0,144,23,0,0,208,23,0,0,64,24,0,0,144,24,0,0,216,24,0,0,24,25,0,0,72,25,0,0,184,25,0,0,8,26,0,0,37,108,108,100,32,37,108,108,100,0,0,0,0,0,0,0,37,115,95,115,101,103,109,101,110,116,115,0,0,0,0,0,98,108,111,99,107,0,0,0,83,69,76,69,67,84,32,49,32,70,82,79,77,32,37,81,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,116,98,108,95,110,97,109,101,61,39,37,113,95,115,116,97,116,39,0,120,14,0,0,1,0,0,0,128,14,0,0,2,0,0,0,152,14,0,0,3,0,0,0,136,14,0,0,4,0,0,0,112,99,120,0,0,0,0,0,83,69,76,69,67,84,32,37,115,32,87,72,69,82,69,32,114,111,119,105,100,32,61,32,63,0,0,0,0,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,109,97,116,99,104,105,110,102,111,32,114,101,113,117,101,115,116,58,32,37,99,0,0,0,0,0,0,105,108,108,101,103,97,108,32,102,105,114,115,116,32,97,114,103,117,109,101,110,116,32,116,111,32,37,115,0,0,0,0,73,110,100,101,120,32,111,112,116,105,109,105,122,101,100,0,73,110,100,101,120,32,97,108,114,101,97,100,121,32,111,112,116,105,109,97,108,0,0,0,83,65,86,69,80,79,73,78,84,32,102,116,115,51,0,0,82,69,76,69,65,83,69,32,102,116,115,51,0,0,0,0,82,79,76,76,66,65,67,75,32,84,79,32,102,116,115,51,0,0,0,0,0,0,0,0,37,100,32,37,100,32,37,100,32,37,100,32,0,0,0,0,60,98,62,0,0,0,0,0,60,47,98,62,0,0,0,0,60,98,62,46,46,46,60,47,98,62,0,0,0,0,0,0,119,114,111,110,103,32,110,117,109,98,101,114,32,111,102,32,97,114,103,117,109,101,110,116,115,32,116,111,32,102,117,110,99,116,105,111,110,32,115,110,105,112,112,101,116,40,41,0,114,101,98,117,105,108,100,0,105,110,116,101,103,114,105,116,121,45,99,104,101,99,107,0,109,101,114,103,101,61,0,0,97,117,116,111,109,101,114,103,101,61,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,73,70,32,78,79,84,32,69,88,73,83,84,83,32,37,81,46,39,37,113,95,115,116,97,116,39,40,105,100,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,44,32,118,97,108,117,101,32,66,76,79,66,41,59,0,0,0,0,83,69,76,69,67,84,32,37,115,0,0,0,0,0,0,0,83,69,76,69,67,84,32,37,115,32,79,82,68,69,82,32,66,89,32,114,111,119,105,100,32,37,115,0,0,0,0,0,68,69,83,67,0,0,0,0,65,83,67,0,0,0,0,0,70,84,83,32,101,120,112,114,101,115,115,105,111,110,32,116,114,101,101,32,105,115,32,116,111,111,32,108,97,114,103,101,32,40,109,97,120,105,109,117,109,32,100,101,112,116,104,32,37,100,41,0,0,0,0,0,109,97,108,102,111,114,109,101,100,32,77,65,84,67,72,32,101,120,112,114,101,115,115,105,111,110,58,32,91,37,115,93,0,0,0,0,0,0,0,0,216,29,0,0,2,0,4,0,224,29,0,0,3,1,3,0,232,29,0,0,3,1,2,0,240,29,0,0,4,0,1,0,79,82,0,0,0,0,0,0,65,78,68,0,0,0,0,0,78,79,84,0,0,0,0,0,78,69,65,82,0,0,0,0,68,82,79,80,32,84,65,66,76,69,32,73,70,32,69,88,73,83,84,83,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,0,0,0,0,68,82,79,80,32,84,65,66,76,69,32,73,70,32,69,88,73,83,84,83,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,0,0,0,68,82,79,80,32,84,65,66,76,69,32,73,70,32,69,88,73,83,84,83,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,0,0,0,0,0,68,82,79,80,32,84,65,66,76,69,32,73,70,32,69,88,73,83,84,83,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,0,0,0,0,68,82,79,80,32,84,65,66,76,69,32,73,70,32,69,88,73,83,84,83,32,37,81,46,39,37,113,95,115,116,97,116,39,0,0,0,0,0,0,0,116,111,107,101,110,105,122,101,0,0,0,0,0,0,0,0,112,114,101,102,105,120,0,0,99,111,109,112,114,101,115,115,0,0,0,0,0,0,0,0,117,110,99,111,109,112,114,101,115,115,0,0,0,0,0,0,111,114,100,101,114,0,0,0,99,111,110,116,101,110,116,0,108,97,110,103,117,97,103,101,105,100,0,0,0,0,0,0,110,111,116,105,110,100,101,120,101,100,0,0,0,0,0,0,136,14,0,0,9,0,0,0,208,30,0,0,6,0,0,0,216,30,0,0,8,0,0,0,232,30,0,0,10,0,0,0,248,30,0,0,5,0,0,0,0,31,0,0,7,0,0,0,8,31,0,0,10,0,0,0,24,31,0,0,10,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,112,97,114,97,109,101,116,101,114,58,32,37,115,0,0,0,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,109,97,116,99,104,105,110,102,111,58,32,37,115,0,0,0,0,0,0,97,115,99,0,0,0,0,0,100,101,115,99,0,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,111,114,100,101,114,58,32,37,115,0,0,101,114,114,111,114,32,112,97,114,115,105,110,103,32,112,114,101,102,105,120,32,112,97,114,97,109,101,116,101,114,58,32,37,115,0,0,0,0,0,0,110,111,32,115,117,99,104,32,99,111,108,117,109,110,58,32,37,115,0,0,0,0,0,0,109,105,115,115,105,110,103,32,37,115,32,112,97,114,97,109,101,116,101,114,32,105,110,32,102,116,115,52,32,99,111,110,115,116,114,117,99,116,111,114,0,0,0,0,0,0,0,0,95,95,108,97,110,103,105,100,0,0,0,0,0,0,0,0,37,81,44,32,0,0,0,0,37,122,37,81,44,32,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,120,40,37,115,32,37,81,32,72,73,68,68,69,78,44,32,100,111,99,105,100,32,72,73,68,68,69,78,44,32,37,81,32,72,73,68,68,69,78,41,0,0,0,80,82,65,71,77,65,32,37,81,46,112,97,103,101,95,115,105,122,101,0,0,0,0,0,100,111,99,105,100,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,0,0,0,0,0,0,0,37,122,44,32,39,99,37,100,37,113,39,0,0,0,0,0,37,122,44,32,108,97,110,103,105,100,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,40,37,115,41,0,0,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,40,98,108,111,99,107,105,100,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,44,32,98,108,111,99,107,32,66,76,79,66,41,59,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,40,108,101,118,101,108,32,73,78,84,69,71,69,82,44,105,100,120,32,73,78,84,69,71,69,82,44,115,116,97,114,116,95,98,108,111,99,107,32,73,78,84,69,71,69,82,44,108,101,97,118,101,115,95,101,110,100,95,98,108,111,99,107,32,73,78,84,69,71,69,82,44,101,110,100,95,98,108,111,99,107,32,73,78,84,69,71,69,82,44,114,111,111,116,32,66,76,79,66,44,80,82,73,77,65,82,89,32,75,69,89,40,108,101,118,101,108,44,32,105,100,120,41,41,59,0,0,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,40,100,111,99,105,100,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,44,32,115,105,122,101,32,66,76,79,66,41,59,0,0,0,0,0,63,0,0,0,0,0,0,0,44,37,115,40,63,41,0,0,44,32,63,0,0,0,0,0,37,115,37,115,0,0,0,0,100,111,99,105,100,0,0,0,44,37,115,40,120,46,39,99,37,100,37,113,39,41,0,0,44,32,120,46,37,81,0,0,108,97,110,103,105,100,0,0,114,111,119,105,100,0,0,0,44,32,120,46,39,37,113,39,0,0,0,0,0,0,0,0,32,70,82,79,77,32,39,37,113,39,46,39,37,113,37,115,39,32,65,83,32,120,0,0,95,99,111,110,116,101,110,116,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,42,32,70,82,79,77,32,37,81,46,37,81,0,0,0,0,0,117,110,107,110,111,119,110,32,116,111,107,101,110,105,122,101,114,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,97,114,103,117,109,101,110,116,32,116,121,112,101,32,109,105,115,109,97,116,99,104,0,0,111,117,116,32,111,102,32,109,101,109,111,114,121,0,0,0,0,0,0,0,8,0,0,0,16,0,0,0,5,0,0,0,17,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,115,101,115,115,0,0,0,0,115,115,0,0,0,0,0,0,115,101,105,0,0,0,0,0,105,0,0,0,0,0,0,0,100,101,101,0,0,0,0,0,101,101,0,0,0,0,0,0,103,110,105,0,0,0,0,0,100,101,0,0,0,0,0,0,116,97,0,0,0,0,0,0,97,116,101,0,0,0,0,0,108,98,0,0,0,0,0,0,98,108,101,0,0,0,0,0,122,105,0,0,0,0,0,0,105,122,101,0,0,0,0,0,108,97,110,111,105,116,97,0,108,97,110,111,105,116,0,0,116,105,111,110,0,0,0,0,105,99,110,101,0,0,0,0,101,110,99,101,0,0,0,0,105,99,110,97,0,0,0,0,97,110,99,101,0,0,0,0,114,101,122,105,0,0,0,0,105,103,111,108,0,0,0,0,108,111,103,0,0,0,0,0,105,108,98,0,0,0,0,0,105,108,108,97,0,0,0,0,97,108,0,0,0,0,0,0,105,108,116,110,101,0,0,0,101,110,116,0,0,0,0,0,105,108,101,0,0,0,0,0,101,0,0,0,0,0,0,0,105,108,115,117,111,0,0,0,111,117,115,0,0,0,0,0,110,111,105,116,97,122,105,0,110,111,105,116,97,0,0,0,114,111,116,97,0,0,0,0,109,115,105,108,97,0,0,0,115,115,101,110,101,118,105,0,105,118,101,0,0,0,0,0,115,115,101,110,108,117,102,0,102,117,108,0,0,0,0,0,115,115,101,110,115,117,111,0,105,116,105,108,97,0,0,0,105,116,105,118,105,0,0,0,105,116,105,108,105,98,0,0,101,116,97,99,105,0,0,0,105,99,0,0,0,0,0,0,101,118,105,116,97,0,0,0,101,122,105,108,97,0,0,0,105,116,105,99,105,0,0,0,108,97,99,105,0,0,0,0,108,117,102,0,0,0,0,0,115,115,101,110,0,0,0,0,116,110,101,109,101,0,0,0,116,110,101,109,0,0,0,0,116,110,101,0,0,0,0,0,110,111,105,0,0,0,0,0,101,116,97,0,0,0,0,0,105,116,105,0,0,0,0,0,0,1,1,1,0,1,1,1,0,1,1,1,1,1,0,1,1,1,1,1,0,1,1,1,2,1,0,0,0,0,0,0,0,0,0,0,9,0,0,0,18,0,0,0,6,0,0,0,19,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,7,0,0,0,19,0,0,0,20,0,0,0,20,0,0,0,20,0,0,0,21,0,0,0,5,0,0,0,22,0,0,0,23,0,0,0,10,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102,116,115,52,97,117,120,0,42,0,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,120,40,116,101,114,109,44,32,99,111,108,44,32,100,111,99,117,109,101,110,116,115,44,32,111,99,99,117,114,114,101,110,99,101,115,44,32,108,97,110,103,117,97,103,101,105,100,32,72,73,68,68,69,78,41,0,0,0,0,105,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,115,32,116,111,32,102,116,115,52,97,117,120,32,99,111,110,115,116,114,117,99,116,111,114], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE); +/* memory initializer */ allocate([97,117,116,111,109,97,116,105,99,32,101,120,116,101,110,115,105,111,110,32,108,111,97,100,105,110,103,32,102,97,105,108,101,100,58,32,37,115,0,0,77,65,84,67,72,0,0,0,58,109,101,109,111,114,121,58,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,24,0,0,0,6,0,0,0,7,0,0,0,11,0,0,0,22,0,0,0,23,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,101,99,111,118,101,114,101,100,32,37,100,32,112,97,103,101,115,32,102,114,111,109,32,37,115,0,0,0,0,0,0,217,213,5,249,32,161,99,215,100,97,116,97,98,97,115,101,32,99,111,114,114,117,112,116,105,111,110,32,97,116,32,108,105,110,101,32,37,100,32,111,102,32,91,37,46,49,48,115,93,0,0,0,0,0,0,0,99,97,110,110,111,116,32,108,105,109,105,116,32,87,65,76,32,115,105,122,101,58,32,37,115,0,0,0,0,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,102,105,108,101,32,97,116,32,108,105,110,101,32,37,100,32,111,102,32,91,37,46,49,48,115,93,0,0,114,101,99,111,118,101,114,101,100,32,37,100,32,102,114,97,109,101,115,32,102,114,111,109,32,87,65,76,32,102,105,108,101,32,37,115,0,0,0,0,45,106,111,117,114,110,97,108,0,0,0,0,0,0,0,0,45,119,97,108,0,0,0,0,110,111,108,111,99,107,0,0,105,109,109,117,116,97,98,108,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102,105,108,101,58,0,0,0,108,111,99,97,108,104,111,115,116,0,0,0,0,0,0,0,105,110,118,97,108,105,100,32,117,114,105,32,97,117,116,104,111,114,105,116,121,58,32,37,46,42,115,0,0,0,0,0,118,102,115,0,0,0,0,0,99,97,99,104,101,0,0,0,48,44,0,0,0,0,2,0,56,44,0,0,0,0,4,0,0,0,0,0,0,0,0,0,115,104,97,114,101,100,0,0,112,114,105,118,97,116,101,0,109,111,100,101,0,0,0,0,112,44,0,0,1,0,0,0,120,44,0,0,2,0,0,0,128,44,0,0,6,0,0,0,136,44,0,0,128,0,0,0,0,0,0,0,0,0,0,0,114,111,0,0,0,0,0,0,114,119,0,0,0,0,0,0,114,119,99,0,0,0,0,0,109,101,109,111,114,121,0,0,97,99,99,101,115,115,0,0,110,111,32,115,117,99,104,32,37,115,32,109,111,100,101,58,32,37,115,0,0,0,0,0,37,115,32,109,111,100,101,32,110,111,116,32,97,108,108,111,119,101,100,58,32,37,115,0,110,111,32,115,117,99,104,32,118,102,115,58,32,37,115,0,105,110,118,97,108,105,100,0,65,80,73,32,99,97,108,108,32,119,105,116,104,32,37,115,32,100,97,116,97,98,97,115,101,32,99,111,110,110,101,99,116,105,111,110,32,112,111,105,110,116,101,114,0,0,0,0,117,110,97,98,108,101,32,116,111,32,117,115,101,32,102,117,110,99,116,105,111,110,32,37,115,32,105,110,32,116,104,101,32,114,101,113,117,101,115,116,101,100,32,99,111,110,116,101,120,116,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,0,1,2,3,4,5,6,7,0,1,2,3,0,1,0,0,117,110,97,98,108,101,32,116,111,32,100,101,108,101,116,101,47,109,111,100,105,102,121,32,117,115,101,114,45,102,117,110,99,116,105,111,110,32,100,117,101,32,116,111,32,97,99,116,105,118,101,32,115,116,97,116,101,109,101,110,116,115,0,0,56,46,0,0,72,46,0,0,0,0,0,0,112,46,0,0,144,46,0,0,176,46,0,0,200,46,0,0,152,35,0,0,232,46,0,0,16,47,0,0,32,47,0,0,48,47,0,0,88,47,0,0,112,47,0,0,144,47,0,0,176,47,0,0,200,47,0,0,224,47,0,0,240,5,0,0,0,48,0,0,24,48,0,0,48,48,0,0,88,48,0,0,120,48,0,0,144,48,0,0,176,48,0,0,216,48,0,0,0,0,0,0,110,111,116,32,97,110,32,101,114,114,111,114,0,0,0,0,83,81,76,32,108,111,103,105,99,32,101,114,114,111,114,32,111,114,32,109,105,115,115,105,110,103,32,100,97,116,97,98,97,115,101,0,0,0,0,0,97,99,99,101,115,115,32,112,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,0,0,0,0,0,0,0,99,97,108,108,98,97,99,107,32,114,101,113,117,101,115,116,101,100,32,113,117,101,114,121,32,97,98,111,114,116,0,0,100,97,116,97,98,97,115,101,32,105,115,32,108,111,99,107,101,100,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,116,97,98,108,101,32,105,115,32,108,111,99,107,101,100,0,0,0,0,0,0,0,0,97,116,116,101,109,112,116,32,116,111,32,119,114,105,116,101,32,97,32,114,101,97,100,111,110,108,121,32,100,97,116,97,98,97,115,101,0,0,0,0,105,110,116,101,114,114,117,112,116,101,100,0,0,0,0,0,100,105,115,107,32,73,47,79,32,101,114,114,111,114,0,0,100,97,116,97,98,97,115,101,32,100,105,115,107,32,105,109,97,103,101,32,105,115,32,109,97,108,102,111,114,109,101,100,0,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,111,112,101,114,97,116,105,111,110,0,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,111,114,32,100,105,115,107,32,105,115,32,102,117,108,108,0,0,0,0,0,0,0,0,117,110,97,98,108,101,32,116,111,32,111,112,101,110,32,100,97,116,97,98,97,115,101,32,102,105,108,101,0,0,0,0,108,111,99,107,105,110,103,32,112,114,111,116,111,99,111,108,0,0,0,0,0,0,0,0,116,97,98,108,101,32,99,111,110,116,97,105,110,115,32,110,111,32,100,97,116,97,0,0,100,97,116,97,98,97,115,101,32,115,99,104,101,109,97,32,104,97,115,32,99,104,97,110,103,101,100,0,0,0,0,0,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,0,0,0,0,0,0,0,100,97,116,97,116,121,112,101,32,109,105,115,109,97,116,99,104,0,0,0,0,0,0,0,108,105,98,114,97,114,121,32,114,111,117,116,105,110,101,32,99,97,108,108,101,100,32,111,117,116,32,111,102,32,115,101,113,117,101,110,99,101,0,0,108,97,114,103,101,32,102,105,108,101,32,115,117,112,112,111,114,116,32,105,115,32,100,105,115,97,98,108,101,100,0,0,97,117,116,104,111,114,105,122,97,116,105,111,110,32,100,101,110,105,101,100,0,0,0,0,97,117,120,105,108,105,97,114,121,32,100,97,116,97,98,97,115,101,32,102,111,114,109,97,116,32,101,114,114,111,114,0,98,105,110,100,32,111,114,32,99,111,108,117,109,110,32,105,110,100,101,120,32,111,117,116,32,111,102,32,114,97,110,103,101,0,0,0,0,0,0,0,102,105,108,101,32,105,115,32,101,110,99,114,121,112,116,101,100,32,111,114,32,105,115,32,110,111,116,32,97,32,100,97,116,97,98,97,115,101,0,0,117,110,107,110,111,119,110,32,101,114,114,111,114,0,0,0,97,98,111,114,116,32,100,117,101,32,116,111,32,82,79,76,76,66,65,67,75,0,0,0,117,110,97,98,108,101,32,116,111,32,99,108,111,115,101,32,100,117,101,32,116,111,32,117,110,102,105,110,97,108,105,122,101,100,32,115,116,97,116,101,109,101,110,116,115,32,111,114,32,117,110,102,105,110,105,115,104,101,100,32,98,97,99,107,117,112,115,0,0,0,0,0,1,0,0,0,0,0,0,0,25,0,0,0,1,0,0,0,12,0,0,0,1,0,0,0,26,0,0,0,13,0,0,0,5,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,27,0,0,0,4,0,0,0,24,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,5,0,0,0,0,0,0,0,102,97,105,108,101,100,32,109,101,109,111,114,121,32,114,101,115,105,122,101,32,37,117,32,116,111,32,37,117,32,98,121,116,101,115,0,0,0,0,0,102,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,37,117,32,98,121,116,101,115,32,111,102,32,109,101,109,111,114,121,0,0,0,1,0,1,8,1,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,248,57,0,0,0,0,0,0,0,0,0,0,2,0,1,8,1,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,248,57,0,0,0,0,0,0,0,0,0,0,1,0,1,8,2,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,2,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,3,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,8,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,3,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,8,58,0,0,0,0,0,0,0,0,0,0,255,255,33,8,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,16,58,0,0,0,0,0,0,0,0,0,0,0,0,33,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,58,0,0,0,0,0,0,0,0,0,0,1,0,33,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,6,0,0,0,16,58,0,0,0,0,0,0,0,0,0,0,255,255,33,8,1,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,24,58,0,0,0,0,0,0,0,0,0,0,0,0,33,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,58,0,0,0,0,0,0,0,0,0,0,1,0,33,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,6,0,0,0,24,58,0,0,0,0,0,0,0,0,0,0,1,0,129,8,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,32,58,0,0,0,0,0,0,0,0,0,0,1,0,65,8,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,40,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,48,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,56,58,0,0,0,0,0,0,0,0,0,0,3,0,1,8,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,56,58,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,64,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,72,58,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,80,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,88,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,96,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,96,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,104,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,112,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,120,58,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,120,58,0,0,0,0,0,0,0,0,0,0,255,255,1,10,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,120,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,136,58,0,0,0,0,0,0,0,0,0,0,2,0,1,10,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,144,58,0,0,0,0,0,0,0,0,0,0,1,0,1,12,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,152,58,0,0,0,0,0,0,0,0,0,0,2,0,1,12,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,168,58,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,184,58,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,23,0,0,0,0,0,0,0,0,0,0,0,192,58,0,0,0,0,0,0,0,0,0,0,2,0,33,8,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,208,58,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,216,58,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,25,0,0,0,0,0,0,0,0,0,0,0,232,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,26,0,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,16,59,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,0,0,0,0,48,59,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,80,59,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,88,59,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,112,59,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,120,59,0,0,0,0,0,0,0,0,0,0,3,0,1,8,0,0,0,0,0,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,136,59,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,34,0,0,0,0,0,0,0,0,0,0,0,144,59,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,35,0,0,0,7,0,0,0,160,59,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,35,0,0,0,8,0,0,0,168,59,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,35,0,0,0,9,0,0,0,176,59,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,10,0,0,0,184,59,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,10,0,0,0,184,59,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,11,0,0,0,192,59,0,0,0,0,0,0,0,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,11,0,0,0,192,59,0,0,0,0,0,0,0,0,0,0,2,0,13,8,240,6,0,0,0,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,208,59,0,0,0,0,0,0,0,0,0,0,2,0,5,8,216,59,0,0,0,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,224,59,0,0,0,0,0,0,0,0,0,0,3,0,5,8,216,59,0,0,0,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,224,59,0,0,0,0,0,0,0,0,0,0,108,116,114,105,109,0,0,0,114,116,114,105,109,0,0,0,116,114,105,109,0,0,0,0,109,105,110,0,0,0,0,0,109,97,120,0,0,0,0,0,116,121,112,101,111,102,0,0,108,101,110,103,116,104,0,0,105,110,115,116,114,0,0,0,115,117,98,115,116,114,0,0,112,114,105,110,116,102,0,0,117,110,105,99,111,100,101,0,99,104,97,114,0,0,0,0,97,98,115,0,0,0,0,0,114,111,117,110,100,0,0,0,117,112,112,101,114,0,0,0,108,111,119,101,114,0,0,0,99,111,97,108,101,115,99,101,0,0,0,0,0,0,0,0,104,101,120,0,0,0,0,0,105,102,110,117,108,108,0,0,117,110,108,105,107,101,108,121,0,0,0,0,0,0,0,0,108,105,107,101,108,105,104,111,111,100,0,0,0,0,0,0,114,97,110,100,111,109,0,0,114,97,110,100,111,109,98,108,111,98,0,0,0,0,0,0,110,117,108,108,105,102,0,0,115,113,108,105,116,101,95,118,101,114,115,105,111,110,0,0,115,113,108,105,116,101,95,115,111,117,114,99,101,95,105,100,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,108,111,103,0,0,0,0,0,0,115,113,108,105,116,101,95,99,111,109,112,105,108,101,111,112,116,105,111,110,95,117,115,101,100,0,0,0,0,0,0,0,115,113,108,105,116,101,95,99,111,109,112,105,108,101,111,112,116,105,111,110,95,103,101,116,0,0,0,0,0,0,0,0,113,117,111,116,101,0,0,0,108,97,115,116,95,105,110,115,101,114,116,95,114,111,119,105,100,0,0,0,0,0,0,0,99,104,97,110,103,101,115,0,116,111,116,97,108,95,99,104,97,110,103,101,115,0,0,0,114,101,112,108,97,99,101,0,122,101,114,111,98,108,111,98,0,0,0,0,0,0,0,0,115,117,109,0,0,0,0,0,116,111,116,97,108,0,0,0,97,118,103,0,0,0,0,0,99,111,117,110,116,0,0,0,103,114,111,117,112,95,99,111,110,99,97,116,0,0,0,0,103,108,111,98,0,0,0,0,37,95,0,1,0,0,0,0,108,105,107,101,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,88,60,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0,112,60,0,0,0,0,0,0,0,0,0,0,3,0,1,8,0,0,0,0,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,136,60,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,97,98,108,101,0,0,0,0,0,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,114,105,103,103,101,114,0,0,0,115,113,108,105,116,101,95,114,101,110,97,109,101,95,112,97,114,101,110,116,0,0,0,0,37,115,37,46,42,115,34,37,119,34,0,0,0,0,0,0,37,46,42,115,34,37,119,34,37,115,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,42,0,0,0,0,0,0,0,0,0,0,0,224,61,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,43,0,0,0,0,0,0,0,0,0,0,0,240,61,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,248,61,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,0,62,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,46,0,0,0,0,0,0,0,0,0,0,0,16,62,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,47,0,0,0,0,0,0,0,0,0,0,0,32,62,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,48,62,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,72,62,0,0,0,0,0,0,0,0,0,0,106,117,108,105,97,110,100,97,121,0,0,0,0,0,0,0,100,97,116,101,0,0,0,0,116,105,109,101,0,0,0,0,100,97,116,101,116,105,109,101,0,0,0,0,0,0,0,0,115,116,114,102,116,105,109,101,0,0,0,0,0,0,0,0,99,117,114,114,101,110,116,95,116,105,109,101,0,0,0,0,99,117,114,114,101,110,116,95,116,105,109,101,115,116,97,109,112,0,0,0,0,0,0,0,99,117,114,114,101,110,116,95,100,97,116,101,0,0,0,0,37,48,50,100,0,0,0,0,37,48,54,46,51,102,0,0,37,48,51,100,0,0,0,0,37,46,49,54,103,0,0,0,37,108,108,100,0,0,0,0,37,48,52,100,0,0,0,0,108,111,99,97,108,116,105,109,101,0,0,0,0,0,0,0,117,110,105,120,101,112,111,99,104,0,0,0,0,0,0,0,117,116,99,0,0,0,0,0,119,101,101,107,100,97,121,32,0,0,0,0,0,0,0,0,115,116,97,114,116,32,111,102,32,0,0,0,0,0,0,0,109,111,110,116,104,0,0,0,121,101,97,114,0,0,0,0,100,97,121,0,0,0,0,0,104,111,117,114,0,0,0,0,109,105,110,117,116,101,0,0,115,101,99,111,110,100,0,0,108,111,99,97,108,32,116,105,109,101,32,117,110,97,118,97,105,108,97,98,108,101,0,0,110,111,119,0,0,0,0,0,37,48,52,100,45,37,48,50,100,45,37,48,50,100,32,37,48,50,100,58,37,48,50,100,58,37,48,50,100,0,0,0,37,48,50,100,58,37,48,50,100,58,37,48,50,100,0,0,37,48,52,100,45,37,48,50,100,45,37,48,50,100,0,0,76,73,75,69,32,111,114,32,71,76,79,66,32,112,97,116,116,101,114,110,32,116,111,111,32,99,111,109,112,108,101,120,0,0,0,0,0,0,0,0,69,83,67,65,80,69,32,101,120,112,114,101,115,115,105,111,110,32,109,117,115,116,32,98,101,32,97,32,115,105,110,103,108,101,32,99,104,97,114,97,99,116,101,114,0,0,0,0,44,0,0,0,0,0,0,0,105,110,116,101,103,101,114,32,111,118,101,114,102,108,111,119,0,0,0,0,0,0,0,0,37,33,46,49,53,103,0,0,37,33,46,50,48,101,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,78,85,76,76,0,0,0,0,37,46,42,102,0,0,0,0,105,110,116,101,103,101,114,0,116,101,120,116,0,0,0,0,114,101,97,108,0,0,0,0,98,108,111,98,0,0,0,0,110,117,108,108,0,0,0,0,1,0,0,0,0,0,0,0,64,64,0,0,0,0,0,0,32,0,0,0,0,0,0,0,105,110,116,101,114,114,117,112,116,0,0,0,0,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,116,111,107,101,110,58,32,34,37,84,34,0,0,0,0,0,0,0,0,110,101,97,114,32,34,37,84,34,58,32,115,121,110,116,97,120,32,101,114,114,111,114,0,117,110,107,110,111,119,110,32,116,97,98,108,101,32,111,112,116,105,111,110,58,32,37,46,42,115,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,116,101,114,109,115,32,105,110,32,99,111,109,112,111,117,110,100,32,83,69,76,69,67,84,0,0,0,0,0,0,0,115,101,116,32,108,105,115,116,0,0,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,97,114,103,117,109,101,110,116,115,32,111,110,32,102,117,110,99,116,105,111,110,32,37,84,0,0,0,0,0,0,0,48,116,0,0,1,0,0,0,168,98,0,0,1,0,0,0,105,110,100,101,120,0,0,0,113,117,97,108,105,102,105,101,100,32,116,97,98,108,101,32,110,97,109,101,115,32,97,114,101,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,73,78,83,69,82,84,44,32,85,80,68,65,84,69,44,32,97,110,100,32,68,69,76,69,84,69,32,115,116,97,116,101,109,101,110,116,115,32,119,105,116,104,105,110,32,116,114,105,103,103,101,114,115,0,0,116,104,101,32,73,78,68,69,88,69,68,32,66,89,32,99,108,97,117,115,101,32,105,115,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,85,80,68,65,84,69,32,111,114,32,68,69,76,69,84,69,32,115,116,97,116,101,109,101,110,116,115,32,119,105,116,104,105,110,32,116,114,105,103,103,101,114,115,0,0,0,0,0,116,104,101,32,78,79,84,32,73,78,68,69,88,69,68,32,99,108,97,117,115,101,32,105,115,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,85,80,68,65,84,69,32,111,114,32,68,69,76,69,84,69,32,115,116,97,116,101,109,101,110,116,115,32,119,105,116,104,105,110,32,116,114,105,103,103,101,114,115,0,0,0,0,144,1,145,2,145,1,146,1,146,3,147,0,147,1,147,3,148,1,149,3,151,0,151,1,151,2,150,0,150,1,150,1,150,1,149,2,149,2,149,2,153,1,153,0,149,2,149,3,149,5,149,2,154,6,156,1,158,0,158,3,157,1,157,0,155,5,155,2,162,0,162,2,160,3,160,1,164,3,165,1,152,1,152,1,152,1,166,0,166,1,168,1,168,4,168,6,169,1,169,2,170,1,170,1,167,2,167,0,173,2,173,2,173,4,173,3,173,3,173,2,173,2,173,3,173,5,173,2,173,4,173,4,173,1,173,2,178,0,178,1,180,0,180,2,182,2,182,3,182,3,182,3,183,2,183,2,183,1,183,1,183,2,181,3,181,2,184,0,184,2,184,2,161,0,161,2,185,3,185,1,186,1,186,0,187,2,187,7,187,5,187,5,187,10,189,0,189,1,176,0,176,3,190,0,190,2,191,1,191,1,191,1,149,4,193,2,193,0,149,8,149,4,149,1,163,2,195,1,195,3,198,1,198,2,198,1,196,9,196,1,207,4,207,5,199,1,199,1,199,0,210,2,210,0,200,3,200,2,200,4,211,2,211,1,211,0,201,0,201,2,213,2,213,0,212,7,212,7,212,7,159,0,159,2,194,2,214,1,214,2,214,3,214,4,216,2,216,0,215,0,215,3,215,2,217,4,217,0,205,0,205,3,220,4,220,2,177,1,177,1,177,0,203,0,203,3,204,0,204,2,206,0,206,2,206,4,206,4,149,6,202,0,202,2,149,8,221,5,221,3,149,6,149,7,222,2,222,1,223,0,223,3,219,3,219,1,175,1,175,3,174,1,175,1,175,1,175,3,175,5,174,1,174,1,175,1,175,3,175,6,175,5,175,4,174,1,175,3,175,3,175,3,175,3,175,3,175,3,175,3,175,3,224,1,224,2,175,3,175,5,175,2,175,3,175,3,175,4,175,2,175,2,175,2,175,2,225,1,225,2,175,5,226,1,226,2,175,5,175,3,175,5,175,4,175,4,175,5,228,5,228,4,229,2,229,0,227,1,227,0,209,1,209,0,208,3,208,1,149,12,230,1,230,0,179,0,179,3,188,5,188,3,231,0,231,2,149,4,149,1,149,2,149,3,149,5,149,6,149,5,149,6,232,1,232,1,232,1,232,1,232,1,171,2,171,1,172,2,149,5,233,11,235,1,235,1,235,2,235,0,236,1,236,1,236,3,237,0,237,3,238,0,238,2,234,3,234,2,240,1,240,3,241,0,241,3,241,2,239,7,239,5,239,5,239,1,175,4,175,6,192,1,192,1,192,1,149,4,149,6,149,3,243,0,243,2,242,1,242,0,149,1,149,3,149,1,149,3,149,6,149,6,244,1,245,0,245,1,149,1,149,4,246,8,247,1,247,3,248,0,248,2,249,1,249,3,250,1,251,0,251,4,251,2,197,0,197,2,197,3,252,6,252,8,0,0,238,0,186,3,213,0,33,1,54,1,234,0,144,0,61,1,147,255,126,1,121,1,47,1,205,1,133,1,122,1,112,1,46,1,38,1,253,0,139,1,37,1,68,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,254,3,244,3,237,3,230,3,195,3,193,3,191,3,189,3,182,3,179,3,162,3,144,3,105,3,93,3,55,3,42,3,3,3,247,2,208,2,196,2,158,2,145,2,107,2,102,2,100,2,98,2,96,2,94,2,92,2,86,2,83,2,81,2,68,2,30,2,28,2,25,2,23,2,21,2,19,2,17,2,15,2,247,1,130,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,95,0,191,1,82,0,78,1,248,1,211,1,147,1,221,1,208,1,147,1,147,1,147,1,147,1,92,3,235,2,232,2,17,3,126,2,126,2,158,3,123,3,132,3,131,3,119,3,76,3,72,3,67,3,80,3,62,3,75,3,61,3,24,3,71,3,58,3,225,2,70,3,27,3,21,3,47,0,222,2,18,2,184,2,9,3,199,2,165,2,221,2,218,2,217,2,216,2,215,2,115,2,192,1,64,0,187,0,25,5,22,5,228,4,10,5,249,4,43,5,42,5,41,5,39,5,38,5,36,5,35,5,34,5,33,5,32,5,31,5,30,5,28,5,27,5,24,5,23,5,21,5,18,5,14,5,12,5,9,5,242,4,240,4,235,4,8,5,7,5,214,4,5,5,1,5,0,5,255,4,254,4,227,4,253,4,252,4,251,4,249,4,244,4,243,4,241,4,239,4,237,4,233,4,224,4,213,4,223,4,222,4,219,4,214,4,216,4,211,4,225,4,210,4,209,4,206,4,196,4,190,4,186,4,201,4,195,4,208,4,207,4,173,4,171,4,203,4,200,4,177,4,184,4,218,4,113,4,212,4,205,4,169,4,157,4,197,4,153,4,172,4,155,4,167,4,166,4,162,4,158,4,194,4,192,4,152,4,138,4,159,4,156,4,136,4,175,4,179,4,109,4,71,4,174,4,170,4,164,4,168,4,147,4,145,4,144,4,149,4,150,4,142,4,135,4,117,4,146,4,134,4,143,4,133,4,108,4,121,4,119,4,100,4,104,4,79,4,78,4,76,4,72,4,126,4,125,4,61,4,101,4,56,4,40,4,96,4,73,4,58,4,54,4,49,4,43,4,85,4,83,4,95,4,93,4,92,4,89,4,87,4,84,4,239,3,232,3,234,3,52,4,51,4,57,4,0,0,0,0,50,1,212,0,176,1,187,3,127,2,191,0,187,3,39,1,47,2,88,0,88,0,88,0,88,0,81,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,185,0,184,0,183,0,123,2,123,2,36,1,94,2,94,2,88,0,88,0,88,0,88,0,171,2,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,16,0,180,1,85,2,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,172,2,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,47,2,84,0,84,0,84,0,83,0,74,1,65,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,123,2,123,2,122,2,121,2,182,0,170,2,38,2,123,1,120,1,119,1,17,0,66,1,94,2,94,2,115,1,198,0,223,1,91,0,118,1,82,0,79,0,165,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,86,2,123,2,123,2,107,0,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,186,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,82,2,82,2,142,0,72,1,71,1,228,1,249,0,88,1,238,0,123,2,123,2,122,2,121,2,73,2,192,1,14,2,13,2,229,0,132,1,1,0,138,1,194,1,72,2,193,1,123,2,123,2,123,2,123,2,63,1,139,1,94,2,94,2,199,0,157,0,17,1,126,1,12,1,125,1,187,0,123,2,123,2,122,2,121,2,55,1,43,2,10,1,81,2,81,2,10,1,91,1,76,2,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,222,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,16,1,24,2,122,2,121,2,146,0,98,2,197,0,54,1,63,2,182,0,226,1,15,1,123,1,120,1,119,1,250,1,21,0,122,2,121,2,122,2,121,2,123,2,123,2,118,1,99,2,62,2,36,2,184,1,111,0,51,2,94,2,94,2,122,2,121,2,68,1,223,1,96,2,96,2,96,2,44,1,179,1,61,2,119,0,151,1,210,0,162,0,50,2,115,3,80,2,80,2,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,250,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,108,2,111,0,123,2,123,2,105,1,94,2,94,2,102,1,249,0,93,1,248,0,177,1,243,0,223,1,74,2,122,2,121,2,195,0,99,2,93,0,119,0,221,0,63,2,241,1,22,2,22,2,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,62,2,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,77,0,173,1,126,2,61,2,77,2,18,2,240,0,230,0,242,0,105,0,249,0,93,1,248,0,3,2,76,2,208,0,204,1,17,2,52,2,173,0,122,2,121,2,202,3,144,0,174,1,2,0,168,1,228,0,124,1,45,2,94,2,94,2,190,0,153,0,159,0,158,0,2,2,51,0,120,2,119,2,118,2,71,0,24,2,176,1,186,3,196,0,98,2,186,3,102,2,45,0,18,0,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,5,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,96,2,96,2,96,2,30,2,168,1,146,1,129,1,241,0,250,1,195,1,64,1,211,0,31,2,164,0,180,1,130,1,37,1,195,1,75,2,108,0,240,1,111,0,78,1,135,1,79,2,168,1,102,2,27,0,196,1,197,1,94,2,94,2,72,0,1,1,70,0,3,1,196,1,83,1,86,1,52,2,70,2,68,0,159,1,213,1,72,1,71,1,62,0,102,2,45,0,110,0,137,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,152,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,110,0,243,1,8,2,26,2,146,1,133,1,168,1,110,0,54,2,244,1,81,2,81,2,198,1,82,0,79,0,165,0,168,1,79,2,128,1,52,2,84,1,103,2,188,0,162,0,168,1,94,1,104,2,168,1,102,2,44,0,94,2,94,2,189,1,70,2,44,1,178,1,151,0,19,0,102,2,9,0,56,2,68,2,92,1,103,2,213,1,55,2,102,2,26,0,104,2,102,2,45,0,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,155,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,67,2,110,0,66,2,9,2,26,1,177,1,142,1,144,1,255,0,230,1,82,0,79,0,165,0,231,1,164,0,82,0,79,0,165,0,232,1,232,1,108,1,131,1,168,1,32,2,32,2,253,1,94,1,106,1,155,0,191,0,94,2,94,2,47,2,130,2,128,2,77,1,82,0,79,0,165,0,49,1,52,2,251,1,56,1,101,1,102,2,45,0,73,1,84,2,83,2,194,0,81,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,20,0,67,1,150,0,7,1,211,0,31,2,165,1,84,2,83,2,102,2,22,0,168,1,193,0,168,1,28,1,168,1,135,1,168,1,253,1,168,1,65,2,168,1,186,0,79,1,168,1,47,2,168,1,57,1,120,0,34,2,94,2,94,2,67,0,102,2,47,0,102,2,50,0,102,2,48,0,102,2,100,0,102,2,99,0,102,2,101,0,64,2,102,2,102,0,102,2,109,0,70,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,168,1,55,1,168,1,73,2,54,0,168,1,4,2,5,2,78,2,102,2,112,0,168,1,72,2,168,1,60,2,168,1,195,0,168,1,59,2,168,1,67,0,168,1,102,2,94,0,102,2,98,0,168,1,102,2,97,0,8,1,94,2,94,2,195,0,102,2,46,0,102,2,96,0,102,2,30,0,102,2,49,0,102,2,115,0,102,2,114,0,162,1,229,0,132,1,102,2,113,0,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,119,0,168,1,78,2,110,0,116,1,94,2,94,2,195,0,53,0,250,0,102,2,29,0,195,0,216,1,182,1,217,2,190,0,46,1,242,1,14,0,11,2,129,2,2,0,102,2,43,0,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,168,1,101,2,196,3,196,3,98,1,94,2,94,2,164,1,56,1,64,0,102,2,42,0,135,1,99,1,27,1,181,1,45,1,255,0,158,1,154,1,239,1,236,1,102,2,28,0,215,1,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,168,1,110,0,110,0,110,0,110,0,94,2,94,2,110,0,254,0,13,0,102,2,41,0,20,2,19,2,27,1,225,1,19,2,201,1,28,1,119,0,49,2,100,1,102,2,40,0,28,1,50,1,89,0,78,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,110,0,168,1,85,1,220,0,43,2,94,2,94,2,95,1,43,2,62,1,102,2,95,0,157,1,255,0,83,0,74,1,28,1,28,1,255,0,128,2,77,1,100,1,255,0,102,2,39,0,50,1,100,1,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,168,1,61,1,60,1,141,0,209,1,94,2,94,2,219,0,107,2,207,1,102,2,10,0,161,1,206,1,255,0,189,0,254,1,41,2,95,1,207,0,107,1,161,0,102,2,38,0,59,1,218,0,255,0,255,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,76,0,163,1,255,0,3,0,110,3,205,1,168,1,247,0,75,1,75,1,102,2,37,0,217,0,76,0,163,1,134,1,3,0,216,0,215,0,166,1,4,0,75,1,75,1,168,1,35,2,12,0,168,1,33,2,102,2,36,0,168,1,29,2,166,1,168,1,28,2,168,1,214,0,168,1,152,1,168,1,27,2,147,1,93,2,93,2,237,0,102,2,25,0,119,0,102,2,24,0,76,2,152,1,102,2,45,0,118,0,102,2,35,0,102,2,34,0,102,2,33,0,102,2,23,0,76,2,60,0,223,0,91,2,90,2,1,2,122,1,73,0,74,0,140,0,139,0,168,1,110,0,9,1,75,0,170,1,169,1,59,0,168,1,98,2,73,0,74,0,37,2,146,1,148,1,168,1,117,1,75,0,170,1,169,1,92,2,138,0,98,2,102,2,11,0,136,1,76,0,163,1,181,0,3,0,102,2,32,0,15,1,113,1,75,1,75,1,237,1,102,2,31,0,149,0,96,2,96,2,96,2,95,2,15,0,166,1,109,1,102,2,8,0,137,0,233,1,136,0,190,0,96,2,96,2,96,2,95,2,15,0,229,1,176,0,135,0,7,0,252,0,221,1,152,1,174,0,133,0,175,0,218,1,57,0,56,0,132,0,130,0,119,0,76,0,163,1,76,2,3,0,212,1,245,0,208,1,171,0,75,1,75,1,125,0,123,0,200,1,191,1,122,0,190,1,104,0,80,1,231,0,166,1,166,0,154,0,73,0,74,0,76,1,116,0,175,1,121,0,53,1,75,0,170,1,169,1,222,0,106,0,98,2,52,1,125,2,204,0,152,1,117,2,115,2,116,2,6,0,200,0,172,1,171,1,34,1,203,0,110,2,201,0,76,2,62,0,63,0,33,1,66,0,163,1,143,1,3,0,145,1,32,1,92,0,143,0,75,1,75,1,31,1,96,2,96,2,96,2,95,2,15,0,73,0,74,0,227,0,166,1,69,1,69,0,160,1,75,0,170,1,169,1,100,2,156,1,98,2,192,0,61,0,57,2,209,0,140,1,226,0,22,1,225,0,127,1,152,1,15,2,46,2,20,1,21,2,40,2,16,2,65,1,11,2,114,1,252,1,180,0,76,2,238,1,179,0,110,1,117,0,253,0,13,1,10,2,247,1,96,2,96,2,96,2,95,2,15,0,39,2,246,1,58,0,18,1,12,2,178,0,73,0,74,0,48,1,245,1,112,1,47,1,206,0,75,0,170,1,169,1,235,1,104,1,98,2,213,0,177,0,227,1,131,0,89,1,42,1,41,1,40,1,202,0,38,1,224,1,234,1,210,1,134,0,172,0,129,0,188,1,90,1,214,1,128,0,58,1,203,1,103,0,127], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE+10768); +/* memory initializer */ allocate([126,0,148,0,124,0,167,0,187,1,235,0,96,2,96,2,96,2,95,2,15,0,186,1,183,1,111,2,234,0,43,1,145,0,71,2,35,1,121,1,69,2,160,0,119,0,156,0,14,1,124,2,203,3,169,0,23,1,114,2,8,2,113,2,217,1,112,2,170,0,109,2,106,2,119,0,168,0,55,0,153,1,167,1,25,2,97,2,30,1,29,1,149,1,58,2,48,2,44,2,5,0,52,0,202,1,42,2,147,0,11,1,7,2,248,1,6,2,150,1,6,1,239,0,4,1,0,2,87,1,255,1,2,1,97,1,53,2,0,1,224,0,251,0,103,1,21,1,19,1,220,1,219,1,246,0,96,1,244,0,211,1,199,1,236,0,233,0,232,0,51,1,185,1,25,1,205,0,163,0,141,1,24,1,23,2,249,1,74,1,105,2,203,3,203,3,203,3,203,3,111,1,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,82,1,0,0,0,0,0,0,100,117,112,108,105,99,97,116,101,32,87,73,84,72,32,116,97,98,108,101,32,110,97,109,101,58,32,37,115,0,0,0,110,111,116,32,97,117,116,104,111,114,105,122,101,100,0,0,97,117,116,104,111,114,105,122,101,114,32,109,97,108,102,117,110,99,116,105,111,110,0,0,67,82,69,65,84,69,32,86,73,82,84,85,65,76,32,84,65,66,76,69,32,37,84,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,116,121,112,101,61,39,116,97,98,108,101,39,44,32,110,97,109,101,61,37,81,44,32,116,98,108,95,110,97,109,101,61,37,81,44,32,114,111,111,116,112,97,103,101,61,48,44,32,115,113,108,61,37,81,32,87,72,69,82,69,32,114,111,119,105,100,61,35,37,100,0,115,113,108,105,116,101,95,116,101,109,112,95,109,97,115,116,101,114,0,0,0,0,0,0,115,113,108,105,116,101,95,109,97,115,116,101,114,0,0,0,110,97,109,101,61,39,37,113,39,32,65,78,68,32,116,121,112,101,61,39,116,97,98,108,101,39,0,0,0,0,0,0,118,105,114,116,117,97,108,32,116,97,98,108,101,115,32,109,97,121,32,110,111,116,32,98,101,32,97,108,116,101,114,101,100,0,0,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,99,111,108,117,109,110,32,116,111,32,97,32,118,105,101,119,0,0,0,115,113,108,105,116,101,95,97,108,116,101,114,116,97,98,95,37,115,0,0,0,0,0,0,117,110,97,98,108,101,32,116,111,32,111,112,101,110,32,97,32,116,101,109,112,111,114,97,114,121,32,100,97,116,97,98,97,115,101,32,102,105,108,101,32,102,111,114,32,115,116,111,114,105,110,103,32,116,101,109,112,111,114,97,114,121,32,116,97,98,108,101,115,0,0,0,115,113,108,105,116,101,95,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,97,108,116,101,114,101,100,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,80,82,73,77,65,82,89,32,75,69,89,32,99,111,108,117,109,110,0,67,97,110,110,111,116,32,97,100,100,32,97,32,85,78,73,81,85,69,32,99,111,108,117,109,110,0,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,82,69,70,69,82,69,78,67,69,83,32,99,111,108,117,109,110,32,119,105,116,104,32,110,111,110,45,78,85,76,76,32,100,101,102,97,117,108,116,32,118,97,108,117,101,0,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,78,79,84,32,78,85,76,76,32,99,111,108,117,109,110,32,119,105,116,104,32,100,101,102,97,117,108,116,32,118,97,108,117,101,32,78,85,76,76,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,99,111,108,117,109,110,32,119,105,116,104,32,110,111,110,45,99,111,110,115,116,97,110,116,32,100,101,102,97,117,108,116,0,0,0,85,80,68,65,84,69,32,34,37,119,34,46,37,115,32,83,69,84,32,115,113,108,32,61,32,115,117,98,115,116,114,40,115,113,108,44,49,44,37,100,41,32,124,124,32,39,44,32,39,32,124,124,32,37,81,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,37,100,41,32,87,72,69,82,69,32,116,121,112,101,32,61,32,39,116,97,98,108,101,39,32,65,78,68,32,110,97,109,101,32,61,32,37,81,0,0,0,0,116,98,108,95,110,97,109,101,61,37,81,0,0,0,0,0,116,121,112,101,61,39,116,114,105,103,103,101,114,39,32,65,78,68,32,40,37,115,41,0,110,97,109,101,61,37,81,0,37,115,32,79,82,32,110,97,109,101,61,37,81,0,0,0,45,0,0,0,0,0,0,0,116,104,101,114,101,32,105,115,32,97,108,114,101,97,100,121,32,97,110,111,116,104,101,114,32,116,97,98,108,101,32,111,114,32,105,110,100,101,120,32,119,105,116,104,32,116,104,105,115,32,110,97,109,101,58,32,37,115,0,0,0,0,0,0,118,105,101,119,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,97,108,116,101,114,101,100,0,0,0,0,0,0,85,80,68,65,84,69,32,34,37,119,34,46,37,115,32,83,69,84,32,115,113,108,32,61,32,115,113,108,105,116,101,95,114,101,110,97,109,101,95,112,97,114,101,110,116,40,115,113,108,44,32,37,81,44,32,37,81,41,32,87,72,69,82,69,32,37,115,59,0,0,0,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,115,113,108,32,61,32,67,65,83,69,32,87,72,69,78,32,116,121,112,101,32,61,32,39,116,114,105,103,103,101,114,39,32,84,72,69,78,32,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,114,105,103,103,101,114,40,115,113,108,44,32,37,81,41,69,76,83,69,32,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,97,98,108,101,40,115,113,108,44,32,37,81,41,32,69,78,68,44,32,116,98,108,95,110,97,109,101,32,61,32,37,81,44,32,110,97,109,101,32,61,32,67,65,83,69,32,87,72,69,78,32,116,121,112,101,61,39,116,97,98,108,101,39,32,84,72,69,78,32,37,81,32,87,72,69,78,32,110,97,109,101,32,76,73,75,69,32,39,115,113,108,105,116,101,95,97,117,116,111,105,110,100,101,120,37,37,39,32,65,78,68,32,116,121,112,101,61,39,105,110,100,101,120,39,32,84,72,69,78,32,39,115,113,108,105,116,101,95,97,117,116,111,105,110,100,101,120,95,39,32,124,124,32,37,81,32,124,124,32,115,117,98,115,116,114,40,110,97,109,101,44,37,100,43,49,56,41,32,69,76,83,69,32,110,97,109,101,32,69,78,68,32,87,72,69,82,69,32,116,98,108,95,110,97,109,101,61,37,81,32,67,79,76,76,65,84,69,32,110,111,99,97,115,101,32,65,78,68,32,40,116,121,112,101,61,39,116,97,98,108,101,39,32,79,82,32,116,121,112,101,61,39,105,110,100,101,120,39,32,79,82,32,116,121,112,101,61,39,116,114,105,103,103,101,114,39,41,59,0,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,0,85,80,68,65,84,69,32,34,37,119,34,46,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,32,115,101,116,32,110,97,109,101,32,61,32,37,81,32,87,72,69,82,69,32,110,97,109,101,32,61,32,37,81,0,0,0,0,0,0,0,85,80,68,65,84,69,32,115,113,108,105,116,101,95,116,101,109,112,95,109,97,115,116,101,114,32,83,69,84,32,115,113,108,32,61,32,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,114,105,103,103,101,114,40,115,113,108,44,32,37,81,41,44,32,116,98,108,95,110,97,109,101,32,61,32,37,81,32,87,72,69,82,69,32,37,115,59,0,0,0,0,0,118,105,101,119,32,37,115,32,105,115,32,99,105,114,99,117,108,97,114,108,121,32,100,101,102,105,110,101,100,0,0,0,0,0,2,0,3,0,5,0,6,0,7,0,8,0,9,0,110,111,32,115,117,99,104,32,99,111,108,108,97,116,105,111,110,32,115,101,113,117,101,110,99,101,58,32,37,115,0,0,3,2,1,0,0,0,0,0,73,78,84,69,71,69,82,0,37,115,58,37,100,0,0,0,97,32,71,82,79,85,80,32,66,89,32,99,108,97,117,115,101,32,105,115,32,114,101,113,117,105,114,101,100,32,98,101,102,111,114,101,32,72,65,86,73,78,71,0,0,0,0,0,79,82,68,69,82,0,0,0,71,82,79,85,80,0,0,0,97,103,103,114,101,103,97,116,101,32,102,117,110,99,116,105,111,110,115,32,97,114,101,32,110,111,116,32,97,108,108,111,119,101,100,32,105,110,32,116,104,101,32,71,82,79,85,80,32,66,89,32,99,108,97,117,115,101,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,116,101,114,109,115,32,105,110,32,79,82,68,69,82,32,66,89,32,99,108,97,117,115,101,0,0,0,0,0,0,0,37,114,32,79,82,68,69,82,32,66,89,32,116,101,114,109,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,97,110,121,32,99,111,108,117,109,110,32,105,110,32,116,104,101,32,114,101,115,117,108,116,32,115,101,116,0,0,0,0,37,114,32,37,115,32,66,89,32,116,101,114,109,32,111,117,116,32,111,102,32,114,97,110,103,101,32,45,32,115,104,111,117,108,100,32,98,101,32,98,101,116,119,101,101,110,32,49,32,97,110,100,32,37,100,0,116,111,111,32,109,97,110,121,32,116,101,114,109,115,32,105,110,32,37,115,32,66,89,32,99,108,97,117,115,101,0,0,69,120,112,114,101,115,115,105,111,110,32,116,114,101,101,32,105,115,32,116,111,111,32,108,97,114,103,101,32,40,109,97,120,105,109,117,109,32,100,101,112,116,104,32,37,100,41,0,102,117,110,99,116,105,111,110,115,0,0,0,0,0,0,0,115,101,99,111,110,100,32,97,114,103,117,109,101,110,116,32,116,111,32,108,105,107,101,108,105,104,111,111,100,40,41,32,109,117,115,116,32,98,101,32,97,32,99,111,110,115,116,97,110,116,32,98,101,116,119,101,101,110,32,48,46,48,32,97,110,100,32,49,46,48,0,0,110,111,116,32,97,117,116,104,111,114,105,122,101,100,32,116,111,32,117,115,101,32,102,117,110,99,116,105,111,110,58,32,37,115,0,0,0,0,0,0,109,105,115,117,115,101,32,111,102,32,97,103,103,114,101,103,97,116,101,32,102,117,110,99,116,105,111,110,32,37,46,42,115,40,41,0,0,0,0,0,110,111,32,115,117,99,104,32,102,117,110,99,116,105,111,110,58,32,37,46,42,115,0,0,119,114,111,110,103,32,110,117,109,98,101,114,32,111,102,32,97,114,103,117,109,101,110,116,115,32,116,111,32,102,117,110,99,116,105,111,110,32,37,46,42,115,40,41,0,0,0,0,115,117,98,113,117,101,114,105,101,115,0,0,0,0,0,0,112,97,114,97,109,101,116,101,114,115,0,0,0,0,0,0,37,115,32,112,114,111,104,105,98,105,116,101,100,32,105,110,32,67,72,69,67,75,32,99,111,110,115,116,114,97,105,110,116,115,0,0,0,0,0,0,37,115,32,112,114,111,104,105,98,105,116,101,100,32,105,110,32,112,97,114,116,105,97,108,32,105,110,100,101,120,32,87,72,69,82,69,32,99,108,97,117,115,101,115,0,0,0,0,110,101,119,0,0,0,0,0,111,108,100,0,0,0,0,0,109,105,115,117,115,101,32,111,102,32,97,108,105,97,115,101,100,32,97,103,103,114,101,103,97,116,101,32,37,115,0,0,110,111,32,115,117,99,104,32,99,111,108,117,109,110,0,0,97,109,98,105,103,117,111,117,115,32,99,111,108,117,109,110,32,110,97,109,101,0,0,0,37,115,58,32,37,115,46,37,115,46,37,115,0,0,0,0,37,115,58,32,37,115,46,37,115,0,0,0,0,0,0,0,37,115,58,32,37,115,0,0,82,79,87,73,68,0,0,0,97,99,99,101,115,115,32,116,111,32,37,115,46,37,115,46,37,115,32,105,115,32,112,114,111,104,105,98,105,116,101,100,0,0,0,0,0,0,0,0,97,99,99,101,115,115,32,116,111,32,37,115,46,37,115,32,105,115,32,112,114,111,104,105,98,105,116,101,100,0,0,0,95,82,79,87,73,68,95,0,79,73,68,0,0,0,0,0,115,113,108,105,116,101,95,115,113,95,37,112,0,0,0,0,116,111,111,32,109,97,110,121,32,114,101,102,101,114,101,110,99,101,115,32,116,111,32,34,37,115,34,58,32,109,97,120,32,54,53,53,51,53,0,0,37,115,46,37,115,0,0,0,37,115,46,37,115,46,37,115,0,0,0,0,0,0,0,0,110,111,32,115,117,99,104,32,116,97,98,108,101,58,32,37,115,0,0,0,0,0,0,0,110,111,32,116,97,98,108,101,115,32,115,112,101,99,105,102,105,101,100,0,0,0,0,0,116,111,111,32,109,97,110,121,32,99,111,108,117,109,110,115,32,105,110,32,114,101,115,117,108,116,32,115,101,116,0,0,97,32,78,65,84,85,82,65,76,32,106,111,105,110,32,109,97,121,32,110,111,116,32,104,97,118,101,32,97,110,32,79,78,32,111,114,32,85,83,73,78,71,32,99,108,97,117,115,101,0,0,0,0,0,0,0,99,97,110,110,111,116,32,104,97,118,101,32,98,111,116,104,32,79,78,32,97,110,100,32,85,83,73,78,71,32,99,108,97,117,115,101,115,32,105,110,32,116,104,101,32,115,97,109,101,32,106,111,105,110,0,0,99,97,110,110,111,116,32,106,111,105,110,32,117,115,105,110,103,32,99,111,108,117,109,110,32,37,115,32,45,32,99,111,108,117,109,110,32,110,111,116,32,112,114,101,115,101,110,116,32,105,110,32,98,111,116,104,32,116,97,98,108,101,115,0,110,111,32,115,117,99,104,32,105,110,100,101,120,58,32,37,115,0,0,0,0,0,0,0,109,117,108,116,105,112,108,101,32,114,101,102,101,114,101,110,99,101,115,32,116,111,32,114,101,99,117,114,115,105,118,101,32,116,97,98,108,101,58,32,37,115,0,0,0,0,0,0,99,105,114,99,117,108,97,114,32,114,101,102,101,114,101,110,99,101,58,32,37,115,0,0,116,97,98,108,101,32,37,115,32,104,97,115,32,37,100,32,118,97,108,117,101,115,32,102,111,114,32,37,100,32,99,111,108,117,109,110,115,0,0,0,109,117,108,116,105,112,108,101,32,114,101,99,117,114,115,105,118,101,32,114,101,102,101,114,101,110,99,101,115,58,32,37,115,0,0,0,0,0,0,0,114,101,99,117,114,115,105,118,101,32,114,101,102,101,114,101,110,99,101,32,105,110,32,97,32,115,117,98,113,117,101,114,121,58,32,37,115,0,0,0,110,111,32,115,117,99,104,32,109,111,100,117,108,101,58,32,37,115,0,0,0,0,0,0,118,116,97,98,108,101,32,99,111,110,115,116,114,117,99,116,111,114,32,102,97,105,108,101,100,58,32,37,115,0,0,0,118,116,97,98,108,101,32,99,111,110,115,116,114,117,99,116,111,114,32,100,105,100,32,110,111,116,32,100,101,99,108,97,114,101,32,115,99,104,101,109,97,58,32,37,115,0,0,0,104,105,100,100,101,110,0,0,32,104,105,100,100,101,110,0,111,98,106,101,99,116,32,110,97,109,101,32,114,101,115,101,114,118,101,100,32,102,111,114,32,105,110,116,101,114,110,97,108,32,117,115,101,58,32,37,115,0,0,0,0,0,0,0,99,111,114,114,117,112,116,32,100,97,116,97,98,97,115,101,0,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,100,97,116,97,98,97,115,101,32,37,84,0,0,0,0,0,105,100,120,0,0,0,0,0,116,98,108,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,40,97,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,51,0,0,0,0,0,0,0,0,0,0,0,24,97,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,97,97,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,52,0,0,0,0,0,0,0,0,0,0,0,248,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,116,97,116,95,103,101,116,0,0,0,0,0,0,0,0,37,108,108,117,0,0,0,0,32,37,108,108,117,0,0,0,115,116,97,116,95,112,117,115,104,0,0,0,0,0,0,0,115,116,97,116,95,105,110,105,116,0,0,0,0,0,0,0,80,97,0,0,96,97,0,0,112,97,0,0,0,0,0,0,128,97,0,0,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,49,0,0,0,0,116,98,108,44,105,100,120,44,115,116,97,116,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,51,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,52,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,37,115,40,37,115,41,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,37,115,32,87,72,69,82,69,32,37,115,61,37,81,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,115,113,108,105,116,101,95,109,97,115,116,101,114,40,10,32,32,116,121,112,101,32,116,101,120,116,44,10,32,32,110,97,109,101,32,116,101,120,116,44,10,32,32,116,98,108,95,110,97,109,101,32,116,101,120,116,44,10,32,32,114,111,111,116,112,97,103,101,32,105,110,116,101,103,101,114,44,10,32,32,115,113,108,32,116,101,120,116,10,41,0,67,82,69,65,84,69,32,84,69,77,80,32,84,65,66,76,69,32,115,113,108,105,116,101,95,116,101,109,112,95,109,97,115,116,101,114,40,10,32,32,116,121,112,101,32,116,101,120,116,44,10,32,32,110,97,109,101,32,116,101,120,116,44,10,32,32,116,98,108,95,110,97,109,101,32,116,101,120,116,44,10,32,32,114,111,111,116,112,97,103,101,32,105,110,116,101,103,101,114,44,10,32,32,115,113,108,32,116,101,120,116,10,41,0,0,0,0,0,0,0,49,0,0,0,0,0,0,0,97,116,116,97,99,104,101,100,32,100,97,116,97,98,97,115,101,115,32,109,117,115,116,32,117,115,101,32,116,104,101,32,115,97,109,101,32,116,101,120,116,32,101,110,99,111,100,105,110,103,32,97,115,32,109,97,105,110,32,100,97,116,97,98,97,115,101,0,0,0,0,0,117,110,115,117,112,112,111,114,116,101,100,32,102,105,108,101,32,102,111,114,109,97,116,0,83,69,76,69,67,84,32,110,97,109,101,44,32,114,111,111,116,112,97,103,101,44,32,115,113,108,32,70,82,79,77,32,39,37,113,39,46,37,115,32,79,82,68,69,82,32,66,89,32,114,111,119,105,100,0,0,83,69,76,69,67,84,32,116,98,108,44,105,100,120,44,115,116,97,116,32,70,82,79,77,32,37,81,46,115,113,108,105,116,101,95,115,116,97,116,49,0,0,0,0,0,0,0,0,117,110,111,114,100,101,114,101,100,0,0,0,0,0,0,0,115,122,61,91,48,45,57,93,42,0,0,0,0,0,0,0,33,0,32,0,30,0,28,0,26,0,0,0,0,0,0,0,105,110,118,97,108,105,100,32,114,111,111,116,112,97,103,101,0,0,0,0,0,0,0,0,109,97,108,102,111,114,109,101,100,32,100,97,116,97,98,97,115,101,32,115,99,104,101,109,97,32,40,37,115,41,0,0,37,115,32,45,32,37,115,0,117,110,97,98,108,101,32,116,111,32,105,100,101,110,116,105,102,121,32,116,104,101,32,111,98,106,101,99,116,32,116,111,32,98,101,32,114,101,105,110,100,101,120,101,100,0,0,0,44,32,0,0,0,0,0,0,46,0,0,0,0,0,0,0,109,105,115,117,115,101,32,111,102,32,97,103,103,114,101,103,97,116,101,58,32,37,115,40,41,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,102,117,110,99,116,105,111,110,58,32,37,46,42,115,40,41,0,0,0,0,0,0,0,0,82,65,73,83,69,40,41,32,109,97,121,32,111,110,108,121,32,98,101,32,117,115,101,100,32,119,105,116,104,105,110,32,97,32,116,114,105,103,103,101,114,45,112,114,111,103,114,97,109,0,0,0,0,0,0,0,69,88,69,67,85,84,69,32,37,115,37,115,32,83,85,66,81,85,69,82,89,32,37,100,0,0,0,0,0,0,0,0,67,79,82,82,69,76,65,84,69,68,32,0,0,0,0,0,76,73,83,84,0,0,0,0,83,67,65,76,65,82,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,53,0,0,0,0,0,0,0,0,0,0,0,32,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,100,101,116,97,99,104,0,0,0,110,111,32,115,117,99,104,32,100,97,116,97,98,97,115,101,58,32,37,115,0,0,0,0,99,97,110,110,111,116,32,100,101,116,97,99,104,32,100,97,116,97,98,97,115,101,32,37,115,0,0,0,0,0,0,0,99,97,110,110,111,116,32,68,69,84,65,67,72,32,100,97,116,97,98,97,115,101,32,119,105,116,104,105,110,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,37,115,32,105,115,32,108,111,99,107,101,100,0,0,0,3,0,1,0,0,0,0,0,0,0,0,0,54,0,0,0,0,0,0,0,0,0,0,0,216,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,97,116,116,97,99,104,0,0,0,116,111,111,32,109,97,110,121,32,97,116,116,97,99,104,101,100,32,100,97,116,97,98,97,115,101,115,32,45,32,109,97,120,32,37,100,0,0,0,0,99,97,110,110,111,116,32,65,84,84,65,67,72,32,100,97,116,97,98,97,115,101,32,119,105,116,104,105,110,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,37,115,32,105,115,32,97,108,114,101,97,100,121,32,105,110,32,117,115,101,0,0,0,100,97,116,97,98,97,115,101,32,105,115,32,97,108,114,101,97,100,121,32,97,116,116,97,99,104,101,100,0,0,0,0,117,110,97,98,108,101,32,116,111,32,111,112,101,110,32,100,97,116,97,98,97,115,101,58,32,37,115,0,0,0,0,0,110,111,32,115,117,99,104,32,116,114,105,103,103,101,114,58,32,37,83,0,0,0,0,0,105,0,246,0,97,0,1,0,46,0,1,2,78,2,247,1,97,0,1,0,46,0,0,2,78,2,247,1,74,0,0,0,9,0,254,0,0,0,0,0,116,101,109,112,111,114,97,114,121,32,116,114,105,103,103,101,114,32,109,97,121,32,110,111,116,32,104,97,118,101,32,113,117,97,108,105,102,105,101,100,32,110,97,109,101,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,116,114,105,103,103,101,114,115,32,111,110,32,118,105,114,116,117,97,108,32,116,97,98,108,101,115,0,0,0,0,0,0,0,0,116,114,105,103,103,101,114,32,37,84,32,97,108,114,101,97,100,121,32,101,120,105,115,116,115,0,0,0,0,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,116,114,105,103,103,101,114,32,111,110,32,115,121,115,116,101,109,32,116,97,98,108,101,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,37,115,32,116,114,105,103,103,101,114,32,111,110,32,118,105,101,119,58,32,37,83,0,0,0,0,66,69,70,79,82,69,0,0,65,70,84,69,82,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,73,78,83,84,69,65,68,32,79,70,32,116,114,105,103,103,101,114,32,111,110,32,116,97,98,108,101,58,32,37,83,0,0,0,37,115,32,37,84,32,99,97,110,110,111,116,32,114,101,102,101,114,101,110,99,101,32,111,98,106,101,99,116,115,32,105,110,32,100,97,116,97,98,97,115,101,32,37,115,0,0,0,37,115,32,99,97,110,110,111,116,32,117,115,101,32,118,97,114,105,97,98,108,101,115,0,73,78,83,69,82,84,32,73,78,84,79,32,37,81,46,37,115,32,86,65,76,85,69,83,40,39,116,114,105,103,103,101,114,39,44,37,81,44,37,81,44,48,44,39,67,82,69,65,84,69,32,84,82,73,71,71,69,82,32,37,113,39,41,0,116,121,112,101,61,39,116,114,105,103,103,101,114,39,32,65,78,68,32,110,97,109,101,61,39,37,113,39,0,0,0,0,45,37,84,0,0,0,0,0,114,101,115,117,108,116,0,0,88,112,0,0,0,0,0,0,0,0,0,0,216,107,0,0,1,1,0,0,0,0,0,0,104,112,0,0,2,0,0,0,0,0,16,0,120,112,0,0,3,0,0,0,0,0,0,0,88,107,0,0,4,1,0,0,0,0,0,0,136,112,0,0,2,0,0,0,16,0,0,0,152,112,0,0,5,0,0,0,0,0,0,0,176,112,0,0,2,0,0,0,8,0,0,0,200,112,0,0,6,0,0,0,0,0,0,0,216,112,0,0,7,0,0,0,0,0,0,0,232,112,0,0,2,0,0,0,128,0,0,0,248,112,0,0,9,1,0,0,0,0,0,0,8,113,0,0,10,1,0,0,0,0,0,0,32,113,0,0,2,0,0,0,0,0,0,1,56,113,0,0,2,0,0,0,0,1,0,0,128,110,0,0,11,0,0,0,0,0,0,0,80,113,0,0,12,1,0,0,0,0,0,0,104,113,0,0,13,1,0,0,0,0,0,0,128,113,0,0,2,0,0,0,0,0,8,0,144,113,0,0,0,0,0,0,0,0,0,0,160,113,0,0,2,0,0,0,32,0,0,0,184,113,0,0,2,0,0,0,4,0,0,0,200,113,0,0,2,0,0,0,0,32,0,0,232,113,0,0,14,1,0,0,0,0,0,0,0,114,0,0,15,1,0,0,0,0,0,0,16,114,0,0,16,1,0,0,0,0,0,0,120,109,0,0,17,1,0,0,0,0,0,0,176,107,0,0,18,1,0,0,0,0,0,0,192,107,0,0,19,0,0,0,0,0,0,0,32,114,0,0,2,0,0,0,0,128,0,0,160,107,0,0,21,0,0,0,0,0,0,0,56,114,0,0,22,1,0,0,0,0,0,0,0,108,0,0,23,0,0,0,0,0,0,0,72,114,0,0,22,1,0,0,0,0,0,0,104,107,0,0,24,0,0,0,0,0,0,0,88,114,0,0,2,0,0,0,0,0,0,2,104,114,0,0,17,1,0,0,0,0,0,0,120,114,0,0,2,0,0,0,0,64,0,0,144,114,0,0,2,0,0,0,0,0,4,0,168,114,0,0,2,0,0,0,0,0,2,0,200,114,0,0,0,0,0,0,0,0,0,0,120,107,0,0,25,0,0,0,0,0,0,0,216,114,0,0,2,0,0,0,64,0,0,0,240,114,0,0,26,0,0,0,0,0,0,0,40,111,0,0,27,0,0,0,0,0,0,0,0,115,0,0,28,1,0,0,0,0,0,0,88,108,0,0,29,1,0,0,0,0,0,0,8,115,0,0,30,1,0,0,0,0,0,0,16,108,0,0,31,0,0,0,0,0,0,0,32,108,0,0,32,0,0,0,0,0,0,0,24,115,0,0,0,0,0,0,0,0,0,0,8,111,0,0,33,0,0,0,0,0,0,0,40,115,0,0,34,1,0,0,0,0,0,0,56,115,0,0,2,0,0,0,0,8,1,0,4,0,0,0,50,0,1,3,134,1,8,0,25,0,2,0,90,1,2,1,134,1,8,0,25,0,1,0,156,0,0,0,35,1,1,0,0,0,0,0,99,97,99,104,101,95,115,105,122,101,0,0,0,0,0,0,112,97,103,101,95,115,105,122,101,0,0,0,0,0,0,0,115,101,99,117,114,101,95,100,101,108,101,116,101,0,0,0,110,111,114,109,97,108,0,0,101,120,99,108,117,115,105,118,101,0,0,0,0,0,0,0,108,111,99,107,105,110,103,95,109,111,100,101,0,0,0,0,106,111,117,114,110,97,108,95,109,111,100,101,0,0,0,0,106,111,117,114,110,97,108,95,115,105,122,101,95,108,105,109,105,116,0,0,0,0,0,0,97,117,116,111,95,118,97,99,117,117,109,0,0,0,0,0,4,0,1,0,50,0,1,4,44,1,0,0,24,0,2,0,25,0,1,0,51,0,7,1,109,109,97,112,95,115,105,122,101,0,0,0,0,0,0,0,116,101,109,112,95,115,116,111,114,101,0,0,0,0,0,0,116,101,109,112,95,115,116,111,114,101,95,100,105,114,101,99,116,111,114,121,0,0,0,0,110,111,116,32,97,32,119,114,105,116,97,98,108,101,32,100,105,114,101,99,116,111,114,121,0,0,0,0,0,0,0,0,115,121,110,99,104,114,111,110,111,117,115,0,0,0,0,0,83,97,102,101,116,121,32,108,101,118,101,108,32,109,97,121,32,110,111,116,32,98,101,32,99,104,97,110,103,101,100,32,105,110,115,105,100,101,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,99,105,100,0,0,0,0,0,110,97,109,101,0,0,0,0,116,121,112,101,0,0,0,0,110,111,116,110,117,108,108,0,100,102,108,116,95,118,97,108,117,101,0,0,0,0,0,0,112,107,0,0,0,0,0,0,116,97,98,108,101,0,0,0,119,105,100,116,104,0,0,0,104,101,105,103,104,116,0,0,115,101,113,110,111,0,0,0,115,101,113,0,0,0,0,0,117,110,105,113,117,101,0,0,102,105,108,101,0,0,0,0,105,100,0,0,0,0,0,0,102,114,111,109,0,0,0,0,116,111,0,0,0,0,0,0,111,110,95,117,112,100,97,116,101,0,0,0,0,0,0,0,111,110,95,100,101,108,101,116,101,0,0,0,0,0,0,0,109,97,116,99,104,0,0,0,78,79,78,69,0,0,0,0,112,97,114,101,110,116,0,0,102,107,105,100,0,0,0,0,37,1,0,0,135,1,0,0,97,0,3,0,35,3,1,0,105,110,116,101,103,114,105,116,121,95,99,104,101,99,107,0,42,42,42,32,105,110,32,100,97,116,97,98,97,115,101,32,37,115,32,42,42,42,10,0,114,111,119,32,0,0,0,0,32,109,105,115,115,105,110,103,32,102,114,111,109,32,105,110,100,101,120,32,0,0,0,0,119,114,111,110,103,32,35,32,111,102,32,101,110,116,114,105,101,115,32,105,110,32,105,110,100,101,120,32,0,0,0,0,111,107,0,0,0,0,0,0,48,110,0,0,1,0,0,0,56,110,0,0,1,0,0,0,64,110,0,0,2,0,0,0,80,110,0,0,3,0,0,0,96,110,0,0,2,0,0,0,104,110,0,0,3,0,0,0,112,110,0,0,0,0,0,0,120,110,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,84,70,56,0,0,0,0,85,84,70,45,56,0,0,0,85,84,70,45,49,54,108,101,0,0,0,0,0,0,0,0,85,84,70,45,49,54,98,101,0,0,0,0,0,0,0,0,85,84,70,49,54,108,101,0,85,84,70,49,54,98,101,0,85,84,70,45,49,54,0,0,85,84,70,49,54,0,0,0,101,110,99,111,100,105,110,103,0,0,0,0,0,0,0,0,117,110,115,117,112,112,111,114,116,101,100,32,101,110,99,111,100,105,110,103,58,32,37,115,0,0,0,0,0,0,0,0,4,0,1,0,25,0,1,0,51,0,0,1,0,0,0,0,4,0,0,0,50,0,1,0,35,1,1,0,0,0,0,0,99,111,109,112,105,108,101,95,111,112,116,105,111,110,0,0,102,117,108,108,0,0,0,0,114,101,115,116,97,114,116,0,98,117,115,121,0,0,0,0,99,104,101,99,107,112,111,105,110,116,101,100,0,0,0,0,119,97,108,95,97,117,116,111,99,104,101,99,107,112,111,105,110,116,0,0,0,0,0,0,116,105,109,101,111,117,116,0,115,111,102,116,95,104,101,97,112,95,108,105,109,105,116,0,37,95,0,0,0,0,0,0,102,111,114,101,105,103,110,32,107,101,121,32,109,105,115,109,97,116,99,104,32,45,32,34,37,119,34,32,114,101,102,101,114,101,110,99,105,110,103,32,34,37,119,34,0,0,0,0,83,69,84,32,78,85,76,76,0,0,0,0,0,0,0,0,83,69,84,32,68,69,70,65,85,76,84,0,0,0,0,0,67,65,83,67,65,68,69,0,82,69,83,84,82,73,67,84,0,0,0,0,0,0,0,0,78,79,32,65,67,84,73,79,78,0,0,0,0,0,0,0,116,101,109,112,111,114,97,114,121,32,115,116,111,114,97,103,101,32,99,97,110,110,111,116,32,98,101,32,99,104,97,110,103,101,100,32,102,114,111,109,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,110,111,110,101,0,0,0,0,105,110,99,114,101,109,101,110,116,97,108,0,0,0,0,0,40,112,0,0,48,112,0,0,56,112,0,0,64,112,0,0,136,44,0,0,80,112,0,0,100,101,108,101,116,101,0,0,112,101,114,115,105,115,116,0,111,102,102,0,0,0,0,0,116,114,117,110,99,97,116,101,0,0,0,0,0,0,0,0,119,97,108,0,0,0,0,0,97,112,112,108,105,99,97,116,105,111,110,95,105,100,0,0,97,117,116,111,109,97,116,105,99,95,105,110,100,101,120,0,98,117,115,121,95,116,105,109,101,111,117,116,0,0,0,0,99,97,99,104,101,95,115,112,105,108,108,0,0,0,0,0,99,97,115,101,95,115,101,110,115,105,116,105,118,101,95,108,105,107,101,0,0,0,0,0,99,104,101,99,107,112,111,105,110,116,95,102,117,108,108,102,115,121,110,99,0,0,0,0,99,111,108,108,97,116,105,111,110,95,108,105,115,116,0,0,99,111,109,112,105,108,101,95,111,112,116,105,111,110,115,0,99,111,117,110,116,95,99,104,97,110,103,101,115,0,0,0,100,97,116,97,98,97,115,101,95,108,105,115,116,0,0,0,100,101,102,97,117,108,116,95,99,97,99,104,101,95,115,105,122,101,0,0,0,0,0,0,100,101,102,101,114,95,102,111,114,101,105,103,110,95,107,101,121,115,0,0,0,0,0,0,101,109,112,116,121,95,114,101,115,117,108,116,95,99,97,108,108,98,97,99,107,115,0,0,102,111,114,101,105,103,110,95,107,101,121,95,99,104,101,99,107,0,0,0,0,0,0,0,102,111,114,101,105,103,110,95,107,101,121,95,108,105,115,116,0,0,0,0,0,0,0,0,102,111,114,101,105,103,110,95,107,101,121,115,0,0,0,0,102,114,101,101,108,105,115,116,95,99,111,117,110,116,0,0,102,117,108,108,95,99,111,108,117,109,110,95,110,97,109,101,115,0,0,0,0,0,0,0,102,117,108,108,102,115,121,110,99,0,0,0,0,0,0,0,105,103,110,111,114,101,95,99,104,101,99,107,95,99,111,110,115,116,114,97,105,110,116,115,0,0,0,0,0,0,0,0,105,110,99,114,101,109,101,110,116,97,108,95,118,97,99,117,117,109,0,0,0,0,0,0,105,110,100,101,120,95,105,110,102,111,0,0,0,0,0,0,105,110,100,101,120,95,108,105,115,116,0,0,0,0,0,0,108,101,103,97,99,121,95,102,105,108,101,95,102,111,114,109,97,116,0,0,0,0,0,0,109,97,120,95,112,97,103,101,95,99,111,117,110,116,0,0,112,97,103,101,95,99,111,117,110,116,0,0,0,0,0,0,113,117,101,114,121,95,111,110,108,121,0,0,0,0,0,0,113,117,105,99,107,95,99,104,101,99,107,0,0,0,0,0,114,101,97,100,95,117,110,99,111,109,109,105,116,116,101,100,0,0,0,0,0,0,0,0,114,101,99,117,114,115,105,118,101,95,116,114,105,103,103,101,114,115,0,0,0,0,0,0,114,101,118,101,114,115,101,95,117,110,111,114,100,101,114,101,100,95,115,101,108,101,99,116,115,0,0,0,0,0,0,0,115,99,104,101,109,97,95,118,101,114,115,105,111,110,0,0,115,104,111,114,116,95,99,111,108,117,109,110,95,110,97,109,101,115,0,0,0,0,0,0,115,104,114,105,110,107,95,109,101,109,111,114,121,0,0,0,115,116,97,116,115,0,0,0,116,97,98,108,101,95,105,110,102,111,0,0,0,0,0,0,117,115,101,114,95,118,101,114,115,105,111,110,0,0,0,0,119,97,108,95,99,104,101,99,107,112,111,105,110,116,0,0,119,114,105,116,97,98,108,101,95,115,99,104,101,109,97,0,110,111,32,115,117,99,104,32,105,110,100,101,120,58,32,37,83,0,0,0,0,0,0,0,105,110,100,101,120,32,97,115,115,111,99,105,97,116,101,100,32,119,105,116,104,32,85,78,73,81,85,69,32,111,114,32,80,82,73,77,65,82,89,32,75,69,89,32,99,111,110,115,116,114,97,105,110,116,32,99,97,110,110,111,116,32,98,101,32,100,114,111,112,112,101,100,0,0,0,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,37,115,32,87,72,69,82,69,32,110,97,109,101,61,37,81,32,65,78,68,32,116,121,112,101,61,39,105,110,100,101,120,39,0,0,0,0,0,0,0,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,114,111,111,116,112,97,103,101,61,37,100,32,87,72,69,82,69,32,35,37,100,32,65,78,68,32,114,111,111,116,112,97,103,101,61,35,37,100,0,115,113,108,105,116,101,95,115,116,97,116,37,100,0,0,0,48,0,0,0,0,0,0,0,118,97,114,105,97,98,108,101,32,110,117,109,98,101,114,32,109,117,115,116,32,98,101,32,98,101,116,119,101,101,110,32,63,49,32,97,110,100,32,63,37,100,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,83,81,76,32,118,97,114,105,97,98,108,101,115,0,0,116,97,98,108,101,32,37,83,32,104,97,115,32,110,111,32,99,111,108,117,109,110,32,110,97,109,101,100,32,37,115,0,116,97,98,108,101,32,37,83,32,104,97,115,32,37,100,32,99,111,108,117,109,110,115,32,98,117,116,32,37,100,32,118,97,108,117,101,115,32,119,101,114,101,32,115,117,112,112,108,105,101,100,0,0,0,0,0,37,100,32,118,97,108,117,101,115,32,102,111,114,32,37,100,32,99,111,108,117,109,110,115,0,0,0,0,0,0,0,0,114,111,119,115,32,105,110,115,101,114,116,101,100,0,0,0,97,116,32,109,111,115,116,32,37,100,32,116,97,98,108,101,115,32,105,110,32,97,32,106,111,105,110,0,0,0,0,0,62,60,59,61,0,0,0,0,0,0,105,102,62,59,61,60,113,111,110,112,0,0,0,0,9,8,0,0,0,0,0,0,105,102,0,0,0,0,0,0,83,69,65,82,67,72,0,0,83,67,65,78,0,0,0,0,37,115,32,83,85,66,81,85,69,82,89,32,37,100,0,0,37,115,32,84,65,66,76,69,32,37,115,0,0,0,0,0,37,115,32,65,83,32,37,115,0,0,0,0,0,0,0,0,37,115,32,85,83,73,78,71,32,80,82,73,77,65,82,89,32,75,69,89,37,46,48,115,37,115,0,0,0,0,0,0,37,115,37,46,48,115,37,115,0,0,0,0,0,0,0,0,37,115,32,85,83,73,78,71,32,65,85,84,79,77,65,84,73,67,32,67,79,86,69,82,73,78,71,32,73,78,68,69,88,37,46,48,115,37,115,0,37,115,32,85,83,73,78,71,32,67,79,86,69,82,73,78,71,32,73,78,68,69,88,32,37,115,37,115,0,0,0,0,37,115,32,85,83,73,78,71,32,73,78,68,69,88,32,37,115,37,115,0,0,0,0,0,37,115,32,85,83,73,78,71,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,0,0,0,0,37,115,32,40,114,111,119,105,100,61,63,41,0,0,0,0,37,115,32,40,114,111,119,105,100,62,63,32,65,78,68,32,114,111,119,105,100,60,63,41,0,0,0,0,0,0,0,0,37,115,32,40,114,111,119,105,100,62,63,41,0,0,0,0,37,115,32,40,114,111,119,105,100,60,63,41,0,0,0,0,37,115,32,86,73,82,84,85,65,76,32,84,65,66,76,69,32,73,78,68,69,88,32,37,100,58,37,115,0,0,0,0,32,40,0,0,0,0,0,0,61,0,0,0,0,0,0,0,32,65,78,68,32,0,0,0,65,78,89,40,0,0,0,0,41,0,0,0,0,0,0,0,62,0,0,0,0,0,0,0,60,0,0,0,0,0,0,0,97,117,116,111,109,97,116,105,99,32,105,110,100,101,120,32,111,110,32,37,115,40,37,115,41,0,0,0,0,0,0,0,97,117,116,111,45,105,110,100,101,120,0,0,0,0,0,0,110,111,32,113,117,101,114,121,32,115,111,108,117,116,105,111,110,0,0,0,0,0,0,0,10,10,9,9,8,8,7,7,7,6,6,6,5,5,5,4,4,4,4,3,3,3,3,3,3,2,2,2,2,2,2,2,37,115,46,120,66,101,115,116,73,110,100,101,120,40,41,32,109,97,108,102,117,110,99,116,105,111,110,0,0,0,0,0,116,97,98,108,101,32,37,115,58,32,120,66,101,115,116,73,110,100,101,120,32,114,101,116,117,114,110,101,100,32,97,110,32,105,110,118,97,108,105,100,32,112,108,97,110,0,0,0,83,81,0,0,0,0,0,0,45,45,32,84,82,73,71,71,69,82,32,37,115,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,2,0,1,0,1,1,4,36,1,4,5,16,0,2,2,2,2,0,2,2,0,0,32,0,0,4,5,4,0,0,1,1,5,5,0,0,0,2,2,16,0,0,0,0,0,0,0,17,17,17,17,8,17,17,17,17,2,2,0,76,76,0,0,0,5,5,21,21,21,21,21,21,0,76,76,76,76,76,76,76,76,76,76,0,36,2,0,0,2,0,1,1,1,1,8,8,0,2,1,1,1,1,2,0,0,2,2,0,0,0,0,0,0,12,69,21,1,2,0,1,8,2,5,5,5,0,1,0,0,0,0,4,4,4,4,4,0,0,0,1,0,2,2,1,0,0,0,0,16,16,2,16,0,0,0,0,0,1,2,3,4,6,8,8,0,0,0,0,0,0,0,0,144,92,0,0,3,0,0,0,136,92,0,0,3,0,0,0,111,105,100,0,0,0,0,0,70,79,82,69,73,71,78,32,75,69,89,32,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,0,0,0,37,115,46,114,111,119,105,100,0,0,0,0,0,0,0,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,109,111,100,105,102,105,101,100,0,0,0,0,99,97,110,110,111,116,32,109,111,100,105,102,121,32,37,115,32,98,101,99,97,117,115,101,32,105,116,32,105,115,32,97,32,118,105,101,119,0,0,0,114,111,119,115,32,117,112,100,97,116,101,100,0,0,0,0,95,114,111,119,105,100,95,0,116,111,111,32,109,97,110,121,32,99,111,108,117,109,110,115,32,105,110,32,37,115,0,0,114,111,119,115,32,100,101,108,101,116,101,100,0,0,0,0,110,97,116,117,114,97,108,101,102,116,111,117,116,101,114,105,103,104,116,102,117,108,108,105,110,110,101,114,99,114,111,115,115,0,0,0,0,0,0,0,0,7,4,6,4,40,10,5,32,14,5,48,19,4,56,23,5,1,28,5,3,0,0,0,117,110,107,110,111,119,110,32,111,114,32,117,110,115,117,112,112,111,114,116,101,100,32,106,111,105,110,32,116,121,112,101,58,32,37,84,32,37,84,37,115,37,84,0,0,0,0,0,82,73,71,72,84,32,97,110,100,32,70,85,76,76,32,79,85,84,69,82,32,74,79,73,78,115,32,97,114,101,32,110,111,116,32,99,117,114,114,101,110,116,108,121,32,115,117,112,112,111,114,116,101,100,0,0,97,32,74,79,73,78,32,99,108,97,117,115,101,32,105,115,32,114,101,113,117,105,114,101,100,32,98,101,102,111,114,101,32,37,115,0,0,0,0,0,79,78], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE+21008); +/* memory initializer */ allocate([85,83,73,78,71,0,0,0,68,73,83,84,73,78,67,84,0,0,0,0,0,0,0,0,71,82,79,85,80,32,66,89,0,0,0,0,0,0,0,0,82,73,71,72,84,32,80,65,82,84,32,79,70,32,79,82,68,69,82,32,66,89,0,0,79,82,68,69,82,32,66,89,0,0,0,0,0,0,0,0,99,111,108,117,109,110,37,100,0,0,0,0,0,0,0,0,83,67,65,78,32,84,65,66,76,69,32,37,115,37,115,37,115,0,0,0,0,0,0,0,32,85,83,73,78,71,32,67,79,86,69,82,73,78,71,32,73,78,68,69,88,32,0,0,68,73,83,84,73,78,67,84,32,97,103,103,114,101,103,97,116,101,115,32,109,117,115,116,32,104,97,118,101,32,101,120,97,99,116,108,121,32,111,110,101,32,97,114,103,117,109,101,110,116,0,0,0,0,0,0,85,83,69,32,84,69,77,80,32,66,45,84,82,69,69,32,70,79,82,32,37,115,0,0,79,82,68,69,82,32,66,89,32,99,108,97,117,115,101,32,115,104,111,117,108,100,32,99,111,109,101,32,97,102,116,101,114,32,37,115,32,110,111,116,32,98,101,102,111,114,101,0,76,73,77,73,84,32,99,108,97,117,115,101,32,115,104,111,117,108,100,32,99,111,109,101,32,97,102,116,101,114,32,37,115,32,110,111,116,32,98,101,102,111,114,101,0,0,0,0,97,108,108,32,86,65,76,85,69,83,32,109,117,115,116,32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,116,101,114,109,115,0,0,0,83,69,76,69,67,84,115,32,116,111,32,116,104,101,32,108,101,102,116,32,97,110,100,32,114,105,103,104,116,32,111,102,32,37,115,32,100,111,32,110,111,116,32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,117,108,116,32,99,111,108,117,109,110,115,0,0,0,0,0,0,0,67,79,77,80,79,85,78,68,32,83,85,66,81,85,69,82,73,69,83,32,37,100,32,65,78,68,32,37,100,32,37,115,40,37,115,41,0,0,0,0,85,83,73,78,71,32,84,69,77,80,32,66,45,84,82,69,69,32,0,0,0,0,0,0,85,78,73,79,78,32,65,76,76,0,0,0,0,0,0,0,73,78,84,69,82,83,69,67,84,0,0,0,0,0,0,0,69,88,67,69,80,84,0,0,85,78,73,79,78,0,0,0,111,110,108,121,32,97,32,115,105,110,103,108,101,32,114,101,115,117,108,116,32,97,108,108,111,119,101,100,32,102,111,114,32,97,32,83,69,76,69,67,84,32,116,104,97,116,32,105,115,32,112,97,114,116,32,111,102,32,97,110,32,101,120,112,114,101,115,115,105,111,110,0,112,97,114,97,109,101,116,101,114,115,32,97,114,101,32,110,111,116,32,97,108,108,111,119,101,100,32,105,110,32,118,105,101,119,115,0,0,0,0,0,118,105,101,119,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,0,0,0,0,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,100,114,111,112,112,101,100,0,0,0,0,0,117,115,101,32,68,82,79,80,32,84,65,66,76,69,32,116,111,32,100,101,108,101,116,101,32,116,97,98,108,101,32,37,115,0,0,0,0,0,0,0,117,115,101,32,68,82,79,80,32,86,73,69,87,32,116,111,32,100,101,108,101,116,101,32,118,105,101,119,32,37,115,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,32,87,72,69,82,69,32,110,97,109,101,61,37,81,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,37,115,32,87,72,69,82,69,32,116,98,108,95,110,97,109,101,61,37,81,32,97,110,100,32,116,121,112,101,33,61,39,116,114,105,103,103,101,114,39,0,102,111,114,101,105,103,110,32,107,101,121,32,111,110,32,37,115,32,115,104,111,117,108,100,32,114,101,102,101,114,101,110,99,101,32,111,110,108,121,32,111,110,101,32,99,111,108,117,109,110,32,111,102,32,116,97,98,108,101,32,37,84,0,0,110,117,109,98,101,114,32,111,102,32,99,111,108,117,109,110,115,32,105,110,32,102,111,114,101,105,103,110,32,107,101,121,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,99,111,108,117,109,110,115,32,105,110,32,116,104,101,32,114,101,102,101,114,101,110,99,101,100,32,116,97,98,108,101,0,0,0,117,110,107,110,111,119,110,32,99,111,108,117,109,110,32,34,37,115,34,32,105,110,32,102,111,114,101,105,103,110,32,107,101,121,32,100,101,102,105,110,105,116,105,111,110,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,97,32,84,69,77,80,32,105,110,100,101,120,32,111,110,32,110,111,110,45,84,69,77,80,32,116,97,98,108,101,32,34,37,115,34,0,0,0,0,0,0,0,97,108,116,101,114,116,97,98,95,0,0,0,0,0,0,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,105,110,100,101,120,101,100,0,0,0,0,0,118,105,101,119,115,32,109,97,121,32,110,111,116,32,98,101,32,105,110,100,101,120,101,100,0,0,0,0,0,0,0,0,118,105,114,116,117,97,108,32,116,97,98,108,101,115,32,109,97,121,32,110,111,116,32,98,101,32,105,110,100,101,120,101,100,0,0,0,0,0,0,0,116,104,101,114,101,32,105,115,32,97,108,114,101,97,100,121,32,97,32,116,97,98,108,101,32,110,97,109,101,100,32,37,115,0,0,0,0,0,0,0,105,110,100,101,120,32,37,115,32,97,108,114,101,97,100,121,32,101,120,105,115,116,115,0,115,113,108,105,116,101,95,97,117,116,111,105,110,100,101,120,95,37,115,95,37,100,0,0,116,97,98,108,101,32,37,115,32,104,97,115,32,110,111,32,99,111,108,117,109,110,32,110,97,109,101,100,32,37,115,0,99,111,110,102,108,105,99,116,105,110,103,32,79,78,32,67,79,78,70,76,73,67,84,32,99,108,97,117,115,101,115,32,115,112,101,99,105,102,105,101,100,0,0,0,0,0,0,0,67,82,69,65,84,69,37,115,32,73,78,68,69,88,32,37,46,42,115,0,0,0,0,0,32,85,78,73,81,85,69,0,73,78,83,69,82,84,32,73,78,84,79,32,37,81,46,37,115,32,86,65,76,85,69,83,40,39,105,110,100,101,120,39,44,37,81,44,37,81,44,35,37,100,44,37,81,41,59,0,110,97,109,101,61,39,37,113,39,32,65,78,68,32,116,121,112,101,61,39,105,110,100,101,120,39,0,0,0,0,0,0,116,97,98,108,101,32,34,37,115,34,32,104,97,115,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,112,114,105,109,97,114,121,32,107,101,121,0,0,0,0,0,0,0,0,65,85,84,79,73,78,67,82,69,77,69,78,84,32,105,115,32,111,110,108,121,32,97,108,108,111,119,101,100,32,111,110,32,97,110,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,0,100,101,102,97,117,108,116,32,118,97,108,117,101,32,111,102,32,99,111,108,117,109,110,32,91,37,115,93,32,105,115,32,110,111,116,32,99,111,110,115,116,97,110,116,0,0,0,0,116,111,111,32,109,97,110,121,32,99,111,108,117,109,110,115,32,111,110,32,37,115,0,0,100,117,112,108,105,99,97,116,101,32,99,111,108,117,109,110,32,110,97,109,101,58,32,37,115,0,0,0,0,0,0,0,65,85,84,79,73,78,67,82,69,77,69,78,84,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,87,73,84,72,79,85,84,32,82,79,87,73,68,32,116,97,98,108,101,115,0,0,0,0,0,0,0,80,82,73,77,65,82,89,32,75,69,89,32,109,105,115,115,105,110,103,32,111,110,32,116,97,98,108,101,32,37,115,0,84,65,66,76,69,0,0,0,86,73,69,87,0,0,0,0,67,82,69,65,84,69,32,37,115,32,37,46,42,115,0,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,116,121,112,101,61,39,37,115,39,44,32,110,97,109,101,61,37,81,44,32,116,98,108,95,110,97,109,101,61,37,81,44,32,114,111,111,116,112,97,103,101,61,35,37,100,44,32,115,113,108,61,37,81,32,87,72,69,82,69,32,114,111,119,105,100,61,35,37,100,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,40,110,97,109,101,44,115,101,113,41,0,0,0,0,0,0,0,116,98,108,95,110,97,109,101,61,39,37,113,39,32,65,78,68,32,116,121,112,101,33,61,39,116,114,105,103,103,101,114,39,0,0,0,0,0,0,0,10,32,32,0,0,0,0,0,44,10,32,32,0,0,0,0,10,41,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,0,0,0,120,130,0,0,248,6,0,0,128,130,0,0,136,130,0,0,144,130,0,0,0,0,0,0,32,84,69,88,84,0,0,0,32,78,85,77,0,0,0,0,32,73,78,84,0,0,0,0,32,82,69,65,76,0,0,0,116,101,109,112,111,114,97,114,121,32,116,97,98,108,101,32,110,97,109,101,32,109,117,115,116,32,98,101,32,117,110,113,117,97,108,105,102,105,101,100,0,0,0,0,0,0,0,0,116,97,98,108,101,32,37,84,32,97,108,114,101,97,100,121,32,101,120,105,115,116,115,0,116,104,101,114,101,32,105,115,32,97,108,114,101,97,100,121,32,97,110,32,105,110,100,101,120,32,110,97,109,101,100,32,37,115,0,0,0,0,0,0,24,131,0,0,32,131,0,0,40,131,0,0,0,0,0,0,66,69,71,73,78,0,0,0,82,69,76,69,65,83,69,0,82,79,76,76,66,65,67,75,0,0,0,0,0,0,0,0,67,79,77,77,73,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,97,114,115,101,114,32,115,116,97,99,107,32,111,118,101,114,102,108,111,119,0,0,0,224,3,33,4,75,5,132,4,180,4,180,4,1,0,6,1,237,255,135,0,135,0,8,3,180,4,180,4,180,4,180,4,69,0,69,0,53,0,208,0,27,1,243,2,58,0,213,2,136,2,59,2,238,1,161,1,84,1,7,1,212,0,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,110,3,59,3,161,3,212,3,212,3,46,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,234,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,185,255,209,255,209,255,209,255,209,255,209,255,0,0,29,0,244,255,27,1,27,1,139,0,91,0,136,1,136,1,126,3,160,2,214,2,103,5,170,255,170,255,170,255,88,0,62,1,62,1,99,0,125,1,236,255,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,112,2,108,3,214,2,160,2,60,5,60,5,60,5,60,5,60,5,60,5,170,255,170,255,170,255,49,1,136,0,136,0,142,0,167,0,226,0,154,0,137,0,152,0,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,80,1,80,1,80,1,27,1,27,1,96,1,27,1,27,1,27,1,27,1,27,1,228,0,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,245,1,57,2,84,2,84,2,84,2,251,1,241,1,185,1,135,1,97,1,156,0,156,0,89,3,97,1,89,3,223,2,45,3,127,2,203,2,156,0,76,1,203,2,203,2,240,1,163,1,134,2,77,5,160,4,160,4,55,5,55,5,160,4,61,5,236,4,120,4,66,5,66,5,66,5,66,5,160,4,26,5,120,4,61,5,236,4,236,4,120,4,160,4,26,5,182,4,4,5,160,4,160,4,26,5,160,4,26,5,160,4,26,5,238,4,183,4,183,4,183,4,250,4,238,4,183,4,193,4,183,4,250,4,183,4,183,4,161,4,176,4,161,4,176,4,161,4,176,4,160,4,160,4,137,4,238,4,178,4,178,4,238,4,130,4,131,4,123,4,128,4,120,4,217,4,215,4,226,4,226,4,230,4,230,4,230,4,230,4,170,255,170,255,170,255,170,255,170,255,170,255,44,4,48,1,14,2,249,0,152,1,173,255,178,1,44,3,27,0,43,3,39,3,34,3,239,2,77,2,139,2,163,0,131,0,162,2,110,1,194,1,43,1,148,0,23,0,102,0,229,0,235,255,221,4,220,4,198,4,75,4,204,4,148,4,199,4,191,4,189,4,91,4,82,4,99,4,86,4,185,4,81,4,188,4,202,4,74,4,65,4,116,4,115,4,80,4,165,4,154,4,70,4,187,4,181,4,163,4,77,4,47,4,129,4,151,4,122,4,114,4,127,4,67,4,140,4,141,4,139,4,45,4,48,4,124,4,88,4,110,4,103,4,105,4,102,4,68,4,90,4,94,4,64,4,66,4,69,4,63,4,60,4,219,3,55,4,53,4,50,4,41,4,156,3,253,3,246,3,236,3,238,3,51,3,227,2,128,3,87,3,36,3,227,2,228,2,224,2,178,2,142,2,153,2,106,2,70,2,56,2,16,2,42,2,123,1,20,2,223,1,199,1,123,1,176,1,115,1,85,1,28,0,82,1,116,0,245,255,199,255,171,255,7,0,248,255,3,0,0,0,0,0,135,2,196,3,196,3,196,3,110,3,110,3,201,3,196,3,6,3,34,3,34,3,170,3,201,3,201,3,201,3,108,3,201,3,201,3,201,3,196,3,201,3,10,3,40,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,169,3,171,3,48,3,47,3,150,3,21,3,45,3,38,3,42,3,111,3,104,3,105,3,103,3,107,3,112,3,201,3,41,3,73,3,88,3,72,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,82,3,87,3,94,3,86,3,83,3,75,3,74,3,76,3,77,3,201,3,201,3,161,2,227,2,201,3,201,3,78,3,201,3,173,2,79,3,91,3,90,3,89,3,168,2,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,135,2,196,3,201,3,201,3,196,3,196,3,196,3,196,3,196,3,196,3,188,3,10,3,0,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,176,3,174,3,201,3,123,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,141,2,201,3,143,3,6,3,6,3,6,3,8,3,242,2,254,2,143,2,44,3,23,3,23,3,155,3,44,3,155,3,198,2,221,2,195,2,34,3,23,3,106,3,34,3,34,3,7,3,254,2,201,3,181,3,14,3,14,3,173,3,173,3,14,3,53,3,231,2,44,3,238,2,238,2,238,2,238,2,14,3,158,2,44,3,53,3,231,2,231,2,44,3,14,3,158,2,149,3,147,3,14,3,14,3,158,2,14,3,158,2,14,3,158,2,116,3,229,2,229,2,229,2,213,2,116,3,229,2,198,2,229,2,213,2,229,2,229,2,27,3,22,3,27,3,22,3,27,3,22,3,14,3,14,3,201,3,116,3,120,3,120,3,116,3,39,3,28,3,37,3,35,3,44,3,164,2,216,2,151,2,151,2,140,2,140,2,140,2,140,2,193,3,193,3,188,3,200,2,200,2,183,2,201,3,201,3,201,3,201,3,201,3,201,3,175,2,201,3,125,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,60,3,201,3,136,2,183,3,201,3,201,3,180,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,153,3,201,3,201,3,201,3,201,3,201,3,201,3,146,3,145,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,245,2,201,3,201,3,201,3,249,2,201,3,201,3,201,3,201,3,201,3,201,3,36,3,201,3,29,3,201,3,109,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,198,3,201,3,201,3,201,3,197,3,201,3,201,3,201,3,201,3,201,3,62,3,201,3,61,3,65,3,201,3,149,2,201,3,132,2,137,2,192,3,195,3,194,3,191,3,190,3,189,3,184,3,182,3,179,3,178,3,177,3,175,3,172,3,168,3,129,3,127,3,134,3,133,3,132,3,131,3,130,3,128,3,126,3,124,3,50,3,49,3,46,3,43,3,241,2,167,3,122,3,240,2,237,2,236,2,157,2,185,3,152,3,161,3,160,3,159,3,54,3,158,3,157,3,156,3,154,3,151,3,138,3,52,3,51,3,232,2,114,3,113,3,160,2,142,3,141,3,140,3,144,3,148,3,139,3,16,3,239,2,159,2,156,2,163,2,167,2,219,2,220,2,228,2,226,2,225,2,224,2,223,2,222,2,218,2,169,2,174,2,212,2,197,2,196,2,205,2,204,2,210,2,209,2,208,2,207,2,206,2,203,2,202,2,201,2,194,2,193,2,199,2,192,2,215,2,214,2,211,2,191,2,235,2,234,2,233,2,230,2,190,2,189,2,188,2,65,3,187,2,186,2,70,3,69,3,98,3,58,3,243,2,247,2,246,2,250,2,251,2,3,3,2,3,1,3,12,3,13,3,25,3,24,3,56,3,55,3,26,3,11,3,5,3,4,3,20,3,19,3,18,3,17,3,9,3,255,2,31,3,30,3,100,3,15,3,99,3,97,3,166,3,165,3,164,3,163,3,162,3,102,3,199,3,200,3,119,3,121,3,118,3,33,3,32,3,117,3,101,3,71,3,68,3,178,2,179,2,137,3,136,3,135,3,181,2,180,2,177,2,176,2,95,3,92,3,84,3,96,3,93,3,85,3,81,3,80,3,66,3,64,3,63,3,59,3,67,3,248,2,244,2,57,3,253,2,252,2,185,2,184,2,182,2,166,2,165,2,162,2,155,2,153,2,152,2,154,2,150,2,148,2,147,2,146,2,145,2,144,2,172,2,171,2,170,2,142,2,139,2,138,2,134,2,133,2,131,2,0,0,0,0,19,22,22,23,1,24,26,15,27,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,108,109,110,27,28,23,50,51,80,81,82,83,122,85,86,87,88,89,90,91,92,93,94,95,22,70,23,71,72,73,74,75,76,77,78,79,80,81,82,83,122,85,86,87,88,89,90,91,92,93,94,95,19,97,91,92,93,94,95,26,85,86,87,88,89,90,91,92,93,94,95,27,28,97,98,99,122,211,102,103,104,79,19,50,51,19,122,59,55,113,224,225,226,89,90,91,92,93,94,95,23,27,28,26,71,72,73,74,75,76,77,78,79,80,81,82,83,51,85,86,87,88,89,90,91,92,93,94,95,19,132,133,58,89,90,21,108,109,110,27,28,97,98,33,100,7,8,119,120,22,19,107,42,109,27,28,27,28,95,28,50,51,99,100,101,102,103,104,105,27,28,97,98,107,152,112,132,133,112,65,69,71,72,73,74,75,76,77,78,79,80,81,82,83,11,85,86,87,88,89,90,91,92,93,94,95,19,101,97,97,98,24,101,122,157,12,99,103,112,102,103,104,152,22,97,98,97,98,27,28,113,27,29,91,164,165,124,50,51,97,98,219,59,132,133,134,22,23,45,66,47,212,213,124,140,132,133,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,164,165,27,28,230,50,51,233,108,109,110,70,16,59,23,97,98,26,97,22,66,185,12,187,27,28,71,72,73,74,75,76,77,78,79,80,81,82,83,29,85,86,87,88,89,90,91,92,93,94,95,19,22,148,149,45,23,47,62,154,64,156,108,109,110,37,69,23,163,59,26,26,97,98,144,145,146,147,152,200,52,23,50,51,26,22,89,90,60,210,7,8,9,138,97,22,23,26,101,26,174,175,197,71,72,73,74,75,76,77,78,79,80,81,82,83,16,85,86,87,88,89,90,91,92,93,94,95,19,132,133,134,23,152,208,209,140,152,152,111,195,196,98,70,163,160,152,23,22,164,165,246,207,27,152,174,175,171,172,50,51,137,62,139,64,171,172,222,124,27,138,24,163,89,90,130,174,175,197,163,71,72,73,74,75,76,77,78,79,80,81,82,83,22,85,86,87,88,89,90,91,92,93,94,95,19,197,181,182,23,208,209,152,197,26,189,132,133,232,224,225,226,152,97,91,26,232,116,212,213,152,222,121,152,174,175,50,51,243,97,22,23,22,234,174,175,177,23,239,116,163,177,174,175,121,174,175,71,72,73,74,75,76,77,78,79,80,81,82,83,24,85,86,87,88,89,90,91,92,93,94,95,19,23,197,11,23,227,70,208,220,152,31,224,225,226,35,98,224,225,226,108,109,110,115,152,117,118,27,222,49,123,24,50,51,27,0,1,2,224,225,226,166,124,168,169,239,174,175,170,171,172,22,194,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,19,22,208,24,23,195,196,170,171,172,174,175,152,26,152,152,152,207,152,97,152,23,152,51,244,152,97,152,247,248,23,50,51,26,174,175,174,175,174,175,174,175,174,175,174,175,23,174,175,174,175,188,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,19,152,107,152,33,24,152,100,101,27,174,175,152,42,152,23,152,26,152,23,152,26,152,174,175,174,175,152,174,175,23,50,51,26,174,175,174,175,174,175,174,175,174,175,174,175,163,119,120,174,175,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,66,152,97,197,23,50,51,26,53,23,174,175,26,23,23,23,26,26,26,36,106,146,147,174,175,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,152,196,119,120,19,50,51,168,169,26,174,175,207,28,152,249,250,152,163,163,163,163,174,175,163,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,152,197,197,197,197,50,51,197,194,36,174,175,191,192,152,191,192,163,152,66,124,152,174,175,152,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,197,152,100,188,152,50,51,152,152,188,174,175,252,152,94,95,152,152,152,1,2,152,152,174,175,19,152,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,152,188,188,22,194,50,51,240,173,194,174,175,252,194,152,36,181,28,152,23,219,122,174,175,219,221,152,152,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,19,20,152,22,23,194,152,240,27,28,174,175,240,19,20,26,22,194,194,38,22,27,28,152,23,22,152,116,174,175,152,23,38,152,23,152,221,152,57,152,23,163,50,51,194,174,175,66,174,175,69,57,174,175,40,174,175,174,175,174,175,174,175,69,22,53,74,75,30,53,89,90,22,22,152,197,23,96,97,98,22,152,101,89,90,91,208,209,152,53,96,97,98,101,22,101,174,175,152,19,20,105,22,174,175,112,19,27,28,20,174,175,24,132,133,134,135,136,38,44,174,175,107,61,54,26,132,133,134,135,136,54,107,22,5,140,1,57,36,111,122,28,79,79,131,123,66,19,20,69,22,1,16,20,125,27,28,123,111,120,23,131,23,16,68,142,38,15,22,89,90,3,167,4,248,251,96,97,98,180,180,101,251,151,6,57,151,13,151,26,25,151,161,202,153,162,153,69,130,128,203,19,20,127,22,126,204,129,22,27,28,205,132,133,134,135,136,89,90,231,38,95,137,179,96,97,98,206,179,101,122,107,159,159,125,231,216,228,107,57,184,217,216,176,217,176,48,106,18,184,158,69,159,158,46,71,237,176,176,176,132,133,134,135,136,217,176,137,216,178,158,89,90,179,176,159,179,159,96,97,98,159,159,101,5,158,202,22,18,10,11,12,13,14,190,238,17,190,158,193,41,159,202,193,159,202,245,193,193,223,190,32,159,34,132,133,134,135,136,159,39,155,43,150,223,177,201,178,177,186,66,199,177,152,253,56,215,152,182,152,202,152,63,152,152,66,67,242,229,152,174,152,152,152,152,152,152,152,199,242,202,152,198,152,152,152,183,192,152,215,152,183,215,183,152,241,214,152,211,152,152,211,211,152,152,241,152,152,152,152,152,152,152,114,152,152,235,152,152,152,174,187,95,174,253,253,253,253,236,253,253,253,253,253,253,253,253,253,253,253,141,0,0,0,0,0,0,0,0,0,27,27,27,27,0,27,27,27,0,27,27,27,27,0,0,0,27,0,0,27,0,0,0,27,0,0,0,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,0,0,100,97,116,97,98,97,115,101,32,115,99,104,101,109,97,32,105,115,32,108,111,99,107,101,100,58,32,37,115,0,0,0,115,116,97,116,101,109,101,110,116,32,116,111,111,32,108,111,110,103,0,0,0,0,0,0,96,146,0,0,104,146,0,0,112,146,0,0,120,146,0,0,128,146,0,0,136,146,0,0,144,146,0,0,152,146,0,0,160,146,0,0,248,30,0,0,24,109,0,0,176,146,0,0,97,100,100,114,0,0,0,0,111,112,99,111,100,101,0,0,112,49,0,0,0,0,0,0,112,50,0,0,0,0,0,0,112,51,0,0,0,0,0,0,112,52,0,0,0,0,0,0,112,53,0,0,0,0,0,0,99,111,109,109,101,110,116,0,115,101,108,101,99,116,105,100,0,0,0,0,0,0,0,0,100,101,116,97,105,108,0,0,117,110,111,112,101,110,101,100,0,0,0,0,0,0,0,0,110,111,32,115,117,99,104,32,118,105,101,119,0,0,0,0,110,111,32,115,117,99,104,32,116,97,98,108,101,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,118,97,108,117,101,32,111,102,32,116,121,112,101,32,37,115,0,0,0,0,110,111,32,115,117,99,104,32,114,111,119,105,100,58,32,37,108,108,100,0,0,0,0,0,98,105,110,100,32,111,110,32,97,32,98,117,115,121,32,112,114,101,112,97,114,101,100,32,115,116,97,116,101,109,101,110,116,58,32,91,37,115,93,0,0,0,0,0,248,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,128,147,0,0,144,147,0,0,152,147,0,0,160,147,0,0,78,79,84,32,78,85,76,76,0,0,0,0,0,0,0,0,85,78,73,81,85,69,0,0,67,72,69,67,75,0,0,0,70,79,82,69,73,71,78,32,75,69,89,0,0,0,0,0,97,98,111,114,116,32,97,116,32,37,100,32,105,110,32,91,37,115,93,58,32,37,115,0,37,115,32,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,58,32,37,115,0,0,0,0,0,0,0,0,37,115,32,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,0,0,0,0,0,0,0,0,1,2,0,2,2,0,0,0,0,0,0,0,0,1,2,1,1,1,2,1,2,0,0,0,0,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,115,97,118,101,112,111,105,110,116,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114,101,115,115,0,0,0,0,0,0,110,111,32,115,117,99,104,32,115,97,118,101,112,111,105,110,116,58,32,37,115,0,0,0,99,97,110,110,111,116,32,114,101,108,101,97,115,101,32,115,97,118,101,112,111,105,110,116,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114,101,115,115,0,0,0,99,97,110,110,111,116,32,99,111,109,109,105,116,32,116,114,97,110,115,97,99,116,105,111,110,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114,101,115,115,0,0,99,97,110,110,111,116,32,115,116,97,114,116,32,97,32,116,114,97,110,115,97,99,116,105,111,110,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,99,97,110,110,111,116,32,114,111,108,108,98,97,99,107,32,45,32,110,111,32,116,114,97,110,115,97,99,116,105,111,110,32,105,115,32,97,99,116,105,118,101,0,0,0,0,0,0,99,97,110,110,111,116,32,99,111,109,109,105,116,32,45,32,110,111,32,116,114,97,110,115,97,99,116,105,111,110,32,105,115,32,97,99,116,105,118,101,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,110,97,109,101,44,32,114,111,111,116,112,97,103,101,44,32,115,113,108,32,70,82,79,77,32,39,37,113,39,46,37,115,32,87,72,69,82,69,32,37,115,32,79,82,68,69,82,32,66,89,32,114,111,119,105,100,0,116,111,111,32,109,97,110,121,32,108,101,118,101,108,115,32,111,102,32,116,114,105,103,103,101,114,32,114,101,99,117,114,115,105,111,110,0,0,0,0,99,97,110,110,111,116,32,99,104,97,110,103,101,32,37,115,32,119,97,108,32,109,111,100,101,32,102,114,111,109,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,105,110,116,111,0,0,0,0,111,117,116,32,111,102,0,0,100,97,116,97,98,97,115,101,32,116,97,98,108,101,32,105,115,32,108,111,99,107,101,100,58,32,37,115,0,0,0,0,115,116,97,116,101,109,101,110,116,32,97,98,111,114,116,115,32,97,116,32,37,100,58,32,91,37,115,93,32,37,115,0,45,45,32,0,0,0,0,0,39,37,46,42,113,39,0,0,122,101,114,111,98,108,111,98,40,37,100,41,0,0,0,0,120,39,0,0,0,0,0,0,37,48,50,120,0,0,0,0,39,0,0,0,0,0,0,0,99,97,110,110,111,116,32,86,65,67,85,85,77,32,102,114,111,109,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,99,97,110,110,111,116,32,86,65,67,85,85,77,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114,101,115,115,0,0,0,0,0,0,65,84,84,65,67,72,32,39,58,109,101,109,111,114,121,58,39,32,65,83,32,118,97,99,117,117,109,95,100,98,59,0,65,84,84,65,67,72,32,39,39,32,65,83,32,118,97,99,117,117,109,95,100,98,59,0,80,82,65,71,77,65,32,118,97,99,117,117,109,95,100,98,46,115,121,110,99,104,114,111,110,111,117,115,61,79,70,70,0,0,0,0,0,0,0,0,66,69,71,73,78,59,0,0,83,69,76,69,67,84,32,39,67,82,69,65,84,69,32,84,65,66,76,69,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,49,52,41,32,32,32,70,82,79,77,32,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,116,121,112,101,61,39,116,97,98,108,101,39,32,65,78,68,32,110,97,109,101,33,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,32,32,32,65,78,68,32,99,111,97,108,101,115,99,101,40,114,111,111,116,112,97,103,101,44,49,41,62,48,0,0,0,0,0,83,69,76,69,67,84,32,39,67,82,69,65,84,69,32,73,78,68,69,88,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,49,52,41,32,32,70,82,79,77,32,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,115,113,108,32,76,73,75,69,32,39,67,82,69,65,84,69,32,73,78,68,69,88,32,37,39,32,0,83,69,76,69,67,84,32,39,67,82,69,65,84,69,32,85,78,73,81,85,69,32,73,78,68,69,88,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,50,49,41,32,32,32,70,82,79,77,32,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,115,113,108,32,76,73,75,69,32,39,67,82,69,65,84,69,32,85,78,73,81,85,69,32,73,78,68,69,88,32,37,39,0,0,0,83,69,76,69,67,84,32,39,73,78,83,69,82,84,32,73,78,84,79,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,32,83,69,76,69,67,84,32,42,32,70,82,79,77,32,109,97,105,110,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,59,39,70,82,79,77,32,109,97,105,110,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,116,121,112,101,32,61,32,39,116,97,98,108,101,39,32,65,78,68,32,110,97,109,101,33,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,32,32,32,65,78,68,32,99,111,97,108,101,115,99,101,40,114,111,111,116,112,97,103,101,44,49,41,62,48,0,0,0,0,0,83,69,76,69,67,84,32,39,68,69,76,69,84,69,32,70,82,79,77,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,59,39,32,70,82,79,77,32,118,97,99,117,117,109,95,100,98,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,110,97,109,101,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,32,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,39,73,78,83,69,82,84,32,73,78,84,79,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,32,83,69,76,69,67,84,32,42,32,70,82,79,77,32,109,97,105,110,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,59,39,32,70,82,79,77,32,118,97,99,117,117,109,95,100,98,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,110,97,109,101,61,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,59,0,0,0,0,0,0,73,78,83,69,82,84,32,73,78,84,79,32,118,97,99,117,117,109,95,100,98,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,32,32,83,69,76,69,67,84,32,116,121,112,101,44,32,110,97,109,101,44,32,116,98,108,95,110,97,109,101,44,32,114,111,111,116,112,97,103,101,44,32,115,113,108,32,32,32,32,70,82,79,77,32,109,97,105,110,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,32,32,87,72,69,82,69,32,116,121,112,101,61,39,118,105,101,119,39,32,79,82,32,116,121,112,101,61,39,116,114,105,103,103,101,114,39,32,32,32,32,32,32,79,82,32,40,116,121,112,101,61,39,116,97,98,108,101,39,32,65,78,68,32,114,111,111,116,112,97,103,101,61,48,41,0,1,1,3,0,5,0,6,0,8,0,0,0,0,0,0,0,77,97,105,110,32,102,114,101,101,108,105,115,116,58,32,0,76,105,115,116,32,111,102,32,116,114,101,101,32,114,111,111,116,115,58,32,0,0,0,0,80,97,103,101,32,37,100,32,105,115,32,110,101,118,101,114,32,117,115,101,100,0,0,0,80,111,105,110,116,101,114,32,109,97,112,32,112,97,103,101,32,37,100,32,105,115,32,114,101,102,101,114,101,110,99,101,100,0,0,0,0,0,0,0,79,117,116,115,116,97,110,100,105,110,103,32,112,97,103,101,32,99,111,117,110,116,32,103,111,101,115,32,102,114,111,109,32,37,100,32,116,111,32,37,100,32,100,117,114,105,110,103,32,116,104,105,115,32,97,110,97,108,121,115,105,115,0,0,10,0,0,0,0,0,0,0,80,97,103,101,32,37,100,58,32,0,0,0,0,0,0,0,117,110,97,98,108,101,32,116,111,32,103,101,116,32,116,104,101,32,112,97,103,101,46,32,101,114,114,111,114,32,99,111,100,101,61,37,100,0,0,0,98,116,114,101,101,73,110,105,116,80,97,103,101,40,41,32,114,101,116,117,114,110,115,32,101,114,114,111,114,32,99,111,100,101,32,37,100,0,0,0,79,110,32,116,114,101,101,32,112,97,103,101,32,37,100,32,99,101,108,108,32,37,100,58,32,0,0,0,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,112,114,101,118,105,111,117,115,32,119,97,115,32,37,108,108,100,41,0,0,0,0,0,67,104,105,108,100,32,112,97,103,101,32,100,101,112,116,104,32,100,105,102,102,101,114,115,0,0,0,0,0,0,0,0,79,110,32,112,97,103,101,32,37,100,32,97,116,32,114,105,103,104,116,32,99,104,105,108,100,58,32,0,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,97,120,32,108,97,114,103,101,114,32,116,104,97,110,32,112,97,114,101,110,116,32,109,105,110,32,111,102,32,37,108,108,100,41,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,105,110,32,108,101,115,115,32,116,104,97,110,32,112,97,114,101,110,116,32,109,105,110,32,111,102,32,37,108,108,100,41,0,0,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,97,120,32,108,97,114,103,101,114,32,116,104,97,110,32,112,97,114,101,110,116,32,109,97,120,32,111,102,32,37,108,108,100,41,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,105,110,32,108,101,115,115,32,116,104,97,110,32,112,97,114,101,110,116,32,109,97,120,32,111,102,32,37,108,108,100,41,0,0,0,0,0,0,67,111,114,114,117,112,116,105,111,110,32,100,101,116,101,99,116,101,100,32,105,110,32,99,101,108,108,32,37,100,32,111,110,32,112,97,103,101,32,37,100,0,0,0,0,0,0,0,77,117,108,116,105,112,108,101,32,117,115,101,115,32,102,111,114,32,98,121,116,101,32,37,100,32,111,102,32,112,97,103,101,32,37,100,0,0,0,0,70,114,97,103,109,101,110,116,97,116,105,111,110,32,111,102,32,37,100,32,98,121,116,101,115,32,114,101,112,111,114,116,101,100,32,97,115,32,37,100,32,111,110,32,112,97,103,101,32,37,100,0,0,0,0,0,105,110,118,97,108,105,100,32,112,97,103,101,32,110,117,109,98,101,114,32,37,100,0,0,50,110,100,32,114,101,102,101,114,101,110,99,101,32,116,111,32,112,97,103,101,32,37,100,0,0,0,0,0,0,0,0,70,97,105,108,101,100,32,116,111,32,114,101,97,100,32,112,116,114,109,97,112,32,107,101,121,61,37,100,0,0,0,0,66,97,100,32,112,116,114,32,109,97,112,32,101,110,116,114,121,32,107,101,121,61,37,100,32,101,120,112,101,99,116,101,100,61,40,37,100,44,37,100,41,32,103,111,116,61,40,37,100,44,37,100,41,0,0,0,37,100,32,111,102,32,37,100,32,112,97,103,101,115,32,109,105,115,115,105,110,103,32,102,114,111,109,32,111,118,101,114,102,108,111,119,32,108,105,115,116,32,115,116,97,114,116,105,110,103,32,97,116,32,37,100,0,0,0,0,0,0,0,0,102,97,105,108,101,100,32,116,111,32,103,101,116,32,112,97,103,101,32,37,100,0,0,0,102,114,101,101,108,105,115,116,32,108,101,97,102,32,99,111,117,110,116,32,116,111,111,32,98,105,103,32,111,110,32,112,97,103,101,32,37,100,0,0,83,81,76,105,116,101,32,102,111,114,109,97,116,32,51,0,37,115,45,109,106,88,88,88,88,88,88,57,88,88,122,0,77,74,32,100,101,108,101,116,101,58,32,37,115,0,0,0,77,74,32,99,111,108,108,105,100,101,58,32,37,115,0,0,45,109,106,37,48,54,88,57,37,48,50,88,0,0,0,0,37,46,50,120,0,0,0,0,107,40,37,100,0,0,0,0,110,105,108,0,0,0,0,0,66,0,0,0,0,0,0,0,44,46,46,46,0,0,0,0,40,37,46,50,48,115,41,0,37,115,40,37,100,41,0,0,37,100,0,0,0,0,0,0,40,98,108,111,98,41,0,0,118,116,97,98,58,37,112,58,37,112,0,0,0,0,0,0,105,110,116,97,114,114,97,121,0,0,0,0,0,0,0,0,112,114,111,103,114,97,109,0,72,34,0,0,240,162,0,0,0,163,0,0,16,163,0,0,32,163,0,0,48,163,0,0,64,163,0,0,80,163,0,0,96,163,0,0,104,163,0,0,112,163,0,0,120,163,0,0,136,163,0,0,152,163,0,0,160,163,0,0,168,163,0,0,176,163,0,0,184,163,0,0,192,163,0,0,200,163,0,0,208,163,0,0,224,163,0,0,240,163,0,0,248,163,0,0,8,164,0,0,16,164,0,0,24,164,0,0,32,164,0,0,40,164,0,0,48,164,0,0,64,164,0,0,72,164,0,0,88,164,0,0,96,164,0,0,104,164,0,0,112,164,0,0,128,164,0,0,136,164,0,0,144,164,0,0,160,164,0,0,176,164,0,0,192,164,0,0,200,164,0,0,208,164,0,0,216,164,0,0,224,164,0,0,232,164,0,0,240,164,0,0,0,165,0,0,16,165,0,0,24,165,0,0,40,165,0,0,56,165,0,0,72,165,0,0,88,165,0,0,104,165,0,0,120,165,0,0,136,165,0,0,152,165,0,0,160,165,0,0,168,165,0,0,176,165,0,0,184,165,0,0,192,165,0,0,200,165,0,0,216,165,0,0,232,165,0,0,240,165,0,0,0,166,0,0,16,166,0,0,32,166,0,0,40,166,0,0,48,166,0,0,56,166,0,0,72,166,0,0,80,166,0,0,96,166,0,0,104,166,0,0,112,166,0,0,120,166,0,0,128,166,0,0,136,166,0,0,144,166,0,0,152,166,0,0,160,166,0,0,176,166,0,0,184,166,0,0,192,166,0,0,208,166,0,0,224,166,0,0,232,166,0,0,248,166,0,0,8,167,0,0,16,167,0,0,32,167,0,0,40,167,0,0,56,167,0,0,64,167,0,0,72,167,0,0,80,167,0,0,88,167,0,0,96,167,0,0,104,167,0,0,112,167], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE+31248); +/* memory initializer */ allocate([128,167,0,0,136,167,0,0,144,167,0,0,160,167,0,0,176,167,0,0,192,167,0,0,208,167,0,0,216,167,0,0,224,167,0,0,232,167,0,0,240,167,0,0,248,167,0,0,0,168,0,0,16,168,0,0,32,168,0,0,48,168,0,0,64,168,0,0,80,168,0,0,96,168,0,0,112,168,0,0,128,168,0,0,144,168,0,0,160,168,0,0,176,168,0,0,192,168,0,0,200,168,0,0,208,168,0,0,224,168,0,0,240,168,0,0,248,168,0,0,0,169,0,0,8,169,0,0,16,169,0,0,24,169,0,0,40,169,0,0,56,169,0,0,64,169,0,0,80,169,0,0,88,169,0,0,96,169,0,0,104,169,0,0,112,169,0,0,128,169,0,0,136,169,0,0,144,169,0,0,160,169,0,0,168,169,0,0,176,169,0,0,184,169,0,0,192,169,0,0,208,169,0,0,224,169,0,0,232,169,0,0,240,169,0,0,70,117,110,99,116,105,111,110,0,0,0,0,0,0,0,0,83,97,118,101,112,111,105,110,116,0,0,0,0,0,0,0,65,117,116,111,67,111,109,109,105,116,0,0,0,0,0,0,84,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,83,111,114,116,101,114,78,101,120,116,0,0,0,0,0,0,80,114,101,118,73,102,79,112,101,110,0,0,0,0,0,0,78,101,120,116,73,102,79,112,101,110,0,0,0,0,0,0,80,114,101,118,0,0,0,0,78,101,120,116,0,0,0,0,65,103,103,83,116,101,112,0,67,104,101,99,107,112,111,105,110,116,0,0,0,0,0,0,74,111,117,114,110,97,108,77,111,100,101,0,0,0,0,0,86,97,99,117,117,109,0,0,86,70,105,108,116,101,114,0,86,85,112,100,97,116,101,0,71,111,116,111,0,0,0,0,71,111,115,117,98,0,0,0,82,101,116,117,114,110,0,0,78,111,116,0,0,0,0,0,73,110,105,116,67,111,114,111,117,116,105,110,101,0,0,0,69,110,100,67,111,114,111,117,116,105,110,101,0,0,0,0,89,105,101,108,100,0,0,0,72,97,108,116,73,102,78,117,108,108,0,0,0,0,0,0,72,97,108,116,0,0,0,0,73,110,116,101,103,101,114,0,73,110,116,54,52,0,0,0,83,116,114,105,110,103,0,0,78,117,108,108,0,0,0,0,83,111,102,116,78,117,108,108,0,0,0,0,0,0,0,0,66,108,111,98,0,0,0,0,86,97,114,105,97,98,108,101,0,0,0,0,0,0,0,0,77,111,118,101,0,0,0,0,67,111,112,121,0,0,0,0,83,67,111,112,121,0,0,0,82,101,115,117,108,116,82,111,119,0,0,0,0,0,0,0,67,111,108,108,83,101,113,0,65,100,100,73,109,109,0,0,77,117,115,116,66,101,73,110,116,0,0,0,0,0,0,0,82,101,97,108,65,102,102,105,110,105,116,121,0,0,0,0,80,101,114,109,117,116,97,116,105,111,110,0,0,0,0,0,67,111,109,112,97,114,101,0,74,117,109,112,0,0,0,0,79,110,99,101,0,0,0,0,73,102,0,0,0,0,0,0,73,102,78,111,116,0,0,0,67,111,108,117,109,110,0,0,65,102,102,105,110,105,116,121,0,0,0,0,0,0,0,0,77,97,107,101,82,101,99,111,114,100,0,0,0,0,0,0,67,111,117,110,116,0,0,0,82,101,97,100,67,111,111,107,105,101,0,0,0,0,0,0,83,101,116,67,111,111,107,105,101,0,0,0,0,0,0,0,79,112,101,110,82,101,97,100,0,0,0,0,0,0,0,0,79,112,101,110,87,114,105,116,101,0,0,0,0,0,0,0,79,112,101,110,65,117,116,111,105,110,100,101,120,0,0,0,79,112,101,110,69,112,104,101,109,101,114,97,108,0,0,0,83,111,114,116,101,114,79,112,101,110,0,0,0,0,0,0,79,112,101,110,80,115,101,117,100,111,0,0,0,0,0,0,67,108,111,115,101,0,0,0,83,101,101,107,76,84,0,0,83,101,101,107,76,69,0,0,83,101,101,107,71,69,0,0,83,101,101,107,71,84,0,0,83,101,101,107,0,0,0,0,78,111,67,111,110,102,108,105,99,116,0,0,0,0,0,0,78,111,116,70,111,117,110,100,0,0,0,0,0,0,0,0,70,111,117,110,100,0,0,0,78,111,116,69,120,105,115,116,115,0,0,0,0,0,0,0,83,101,113,117,101,110,99,101,0,0,0,0,0,0,0,0,78,101,119,82,111,119,105,100,0,0,0,0,0,0,0,0,73,110,115,101,114,116,0,0,79,114,0,0,0,0,0,0,65,110,100,0,0,0,0,0,73,110,115,101,114,116,73,110,116,0,0,0,0,0,0,0,68,101,108,101,116,101,0,0,82,101,115,101,116,67,111,117,110,116,0,0,0,0,0,0,73,115,78,117,108,108,0,0,78,111,116,78,117,108,108,0,78,101,0,0,0,0,0,0,69,113,0,0,0,0,0,0,71,116,0,0,0,0,0,0,76,101,0,0,0,0,0,0,76,116,0,0,0,0,0,0,71,101,0,0,0,0,0,0,83,111,114,116,101,114,67,111,109,112,97,114,101,0,0,0,66,105,116,65,110,100,0,0,66,105,116,79,114,0,0,0,83,104,105,102,116,76,101,102,116,0,0,0,0,0,0,0,83,104,105,102,116,82,105,103,104,116,0,0,0,0,0,0,65,100,100,0,0,0,0,0,83,117,98,116,114,97,99,116,0,0,0,0,0,0,0,0,77,117,108,116,105,112,108,121,0,0,0,0,0,0,0,0,68,105,118,105,100,101,0,0,82,101,109,97,105,110,100,101,114,0,0,0,0,0,0,0,67,111,110,99,97,116,0,0,83,111,114,116,101,114,68,97,116,97,0,0,0,0,0,0,66,105,116,78,111,116,0,0,83,116,114,105,110,103,56,0,82,111,119,75,101,121,0,0,82,111,119,68,97,116,97,0,82,111,119,105,100,0,0,0,78,117,108,108,82,111,119,0,76,97,115,116,0,0,0,0,83,111,114,116,101,114,83,111,114,116,0,0,0,0,0,0,83,111,114,116,0,0,0,0,82,101,119,105,110,100,0,0,83,111,114,116,101,114,73,110,115,101,114,116,0,0,0,0,73,100,120,73,110,115,101,114,116,0,0,0,0,0,0,0,73,100,120,68,101,108,101,116,101,0,0,0,0,0,0,0,73,100,120,82,111,119,105,100,0,0,0,0,0,0,0,0,73,100,120,76,69,0,0,0,73,100,120,71,84,0,0,0,73,100,120,76,84,0,0,0,73,100,120,71,69,0,0,0,68,101,115,116,114,111,121,0,67,108,101,97,114,0,0,0,82,101,115,101,116,83,111,114,116,101,114,0,0,0,0,0,67,114,101,97,116,101,73,110,100,101,120,0,0,0,0,0,67,114,101,97,116,101,84,97,98,108,101,0,0,0,0,0,80,97,114,115,101,83,99,104,101,109,97,0,0,0,0,0,76,111,97,100,65,110,97,108,121,115,105,115,0,0,0,0,68,114,111,112,84,97,98,108,101,0,0,0,0,0,0,0,68,114,111,112,73,110,100,101,120,0,0,0,0,0,0,0,68,114,111,112,84,114,105,103,103,101,114,0,0,0,0,0,73,110,116,101,103,114,105,116,121,67,107,0,0,0,0,0,82,111,119,83,101,116,65,100,100,0,0,0,0,0,0,0,82,111,119,83,101,116,82,101,97,100,0,0,0,0,0,0,82,111,119,83,101,116,84,101,115,116,0,0,0,0,0,0,80,114,111,103,114,97,109,0,80,97,114,97,109,0,0,0,70,107,67,111,117,110,116,101,114,0,0,0,0,0,0,0,70,107,73,102,90,101,114,111,0,0,0,0,0,0,0,0,77,101,109,77,97,120,0,0,82,101,97,108,0,0,0,0,73,102,80,111,115,0,0,0,73,102,78,101,103,0,0,0,73,102,90,101,114,111,0,0,65,103,103,70,105,110,97,108,0,0,0,0,0,0,0,0,73,110,99,114,86,97,99,117,117,109,0,0,0,0,0,0,69,120,112,105,114,101,0,0,84,97,98,108,101,76,111,99,107,0,0,0,0,0,0,0,86,66,101,103,105,110,0,0,86,67,114,101,97,116,101,0,84,111,84,101,120,116,0,0,84,111,66,108,111,98,0,0,84,111,78,117,109,101,114,105,99,0,0,0,0,0,0,0,84,111,73,110,116,0,0,0,84,111,82,101,97,108,0,0,86,68,101,115,116,114,111,121,0,0,0,0,0,0,0,0,86,79,112,101,110,0,0,0,86,67,111,108,117,109,110,0,86,78,101,120,116,0,0,0,86,82,101,110,97,109,101,0,80,97,103,101,99,111,117,110,116,0,0,0,0,0,0,0,77,97,120,80,103,99,110,116,0,0,0,0,0,0,0,0,73,110,105,116,0,0,0,0,78,111,111,112,0,0,0,0,69,120,112,108,97,105,110,0,65,80,73,32,99,97,108,108,101,100,32,119,105,116,104,32,78,85,76,76,32,112,114,101,112,97,114,101,100,32,115,116,97,116,101,109,101,110,116,0,65,80,73,32,99,97,108,108,101,100,32,119,105,116,104,32,102,105,110,97,108,105,122,101,100,32,112,114,101,112,97,114,101,100,32,115,116,97,116,101,109,101,110,116,0,0,0,0,64,32,32,0,0,0,0,0,1,0,0,0,31,0,0,0,8,0,0,0,9,0,0,0,14,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,15,0,0,0,32,0,0,0,33,0,0,0,10,0,0,0,7,0,0,0,12,0,0,0,30,0,0,0,11,0,0,0,8,0,0,0,0,0,0,0,0,172,0,0,16,0,0,0,0,0,0,0,216,171,0,0,34,0,0,0,0,0,0,0,144,44,0,0,31,0,0,0,0,0,0,0,8,172,0,0,32,0,0,0,0,0,0,0,16,172,0,0,33,0,0,0,0,0,0,0,24,172,0,0,34,0,0,0,0,0,0,0,32,172,0,0,35,0,0,0,0,0,0,0,48,172,0,0,17,0,0,0,0,0,0,0,56,172,0,0,18,0,0,0,0,0,0,0,64,172,0,0,0,0,0,0,0,0,0,0,72,172,0,0,0,0,0,0,0,0,0,0,80,172,0,0,19,0,0,0,0,0,0,0,88,172,0,0,0,0,0,0,0,0,0,0,96,172,0,0,0,0,0,0,0,0,0,0,112,172,0,0,36,0,0,0,0,0,0,0,120,172,0,0,0,0,0,0,0,0,0,0,136,172,0,0,35,0,0,0,0,0,0,0,144,172,0,0,37,0,0,0,0,0,0,0,160,172,0,0,38,0,0,0,0,0,0,0,168,172,0,0,36,0,0,0,0,0,0,0,176,172,0,0,20,0,0,0,0,0,0,0,184,172,0,0,8,0,0,0,0,0,0,0,192,172,0,0,39,0,0,0,0,0,0,0,200,172,0,0,0,0,0,0,0,0,0,0,208,172,0,0,1,0,0,0,0,0,0,0,0,0,0,0,99,108,111,115,101,0,0,0,111,115,95,117,110,105,120,46,99,58,37,100,58,32,40,37,100,41,32,37,115,40,37,115,41,32,45,32,37,115,0,0,111,112,101,110,0,0,0,0,103,101,116,99,119,100,0,0,115,116,97,116,0,0,0,0,102,115,116,97,116,0,0,0,102,116,114,117,110,99,97,116,101,0,0,0,0,0,0,0,102,99,110,116,108,0,0,0,114,101,97,100,0,0,0,0,112,114,101,97,100,0,0,0,112,114,101,97,100,54,52,0,119,114,105,116,101,0,0,0,112,119,114,105,116,101,0,0,112,119,114,105,116,101,54,52,0,0,0,0,0,0,0,0,102,99,104,109,111,100,0,0,102,97,108,108,111,99,97,116,101,0,0,0,0,0,0,0,117,110,108,105,110,107,0,0,111,112,101,110,68,105,114,101,99,116,111,114,121,0,0,0,109,107,100,105,114,0,0,0,114,109,100,105,114,0,0,0,102,99,104,111,119,110,0,0,109,109,97,112,0,0,0,0,109,117,110,109,97,112,0,0,109,114,101,109,97,112,0,0,103,101,116,112,97,103,101,115,105,122,101,0,0,0,0,0,97,116,116,101,109,112,116,32,116,111,32,111,112,101,110,32,34,37,115,34,32,97,115,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,37,100,0,0,0,0,0,0,47,100,101,118,47,110,117,108,108,0,0,0,0,0,0,0,37,115,45,115,104,109,0,0,114,101,97,100,111,110,108,121,95,115,104,109,0,0,0,0,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,48,49,50,51,52,53,54,55,56,57,0,0,37,115,47,101,116,105,108,113,115,95,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,168,173,0,0,184,173,0,0,200,173,0,0,0,0,0,0,0,0,0,0,47,118,97,114,47,116,109,112,0,0,0,0,0,0,0,0,47,117,115,114,47,116,109,112,0,0,0,0,0,0,0,0,47,116,109,112,0,0,0,0,83,81,76,73,84,69,95,84,77,80,68,73,82,0,0,0,84,77,80,68,73,82,0,0,102,117,108,108,95,102,115,121,110,99,0,0,0,0,0,0,1,0,0,0,37,0,0,0,8,0,0,0,9,0,0,0,14,0,0,0,25,0,0,0,26,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,15,0,0,0,32,0,0,0,33,0,0,0,10,0,0,0,7,0,0,0,12,0,0,0,30,0,0,0,11,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,100,101,118,47,117,114,97,110,100,111,109,0,0,0,0,47,37,115,0,0,0,0,0,102,115,121,110,99,0,0,0,112,115,111,119,0,0,0,0,3,0,0,0,38,0,0,0,8,0,0,0,9,0,0,0,14,0,0,0,25,0,0,0,26,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,15,0,0,0,32,0,0,0,33,0,0,0,10,0,0,0,7,0,0,0,12,0,0,0,30,0,0,0,11,0,0,0,8,0,0,0,0,0,0,0,37,115,46,108,111,99,107,0,99,97,110,110,111,116,32,102,115,116,97,116,32,100,98,32,102,105,108,101,32,37,115,0,102,105,108,101,32,117,110,108,105,110,107,101,100,32,119,104,105,108,101,32,111,112,101,110,58,32,37,115,0,0,0,0,109,117,108,116,105,112,108,101,32,108,105,110,107,115,32,116,111,32,102,105,108,101,58,32,37,115,0,0,0,0,0,0,102,105,108,101,32,114,101,110,97,109,101,100,32,119,104,105,108,101,32,111,112,101,110,58,32,37,115,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,0,0,0,0,100,10,1,1,0,0,115,0,4,6,0,0,103,0,1,4,30,0,122,0,4,7,0,0,113,0,4,10,0,0,81,0,4,11,0,0,119,0,4,15,0,0,99,0,0,9,0,0,111,8,0,1,0,2,117,10,0,1,0,0,120,16,0,1,16,1,88,16,0,1,0,4,102,0,1,2,0,0,101,0,1,3,30,0,69,0,1,3,14,0,71,0,1,4,14,0,105,10,1,1,0,0,110,0,0,5,0,0,37,0,0,8,0,0,112,16,0,14,0,1,84,0,2,12,0,0,83,0,2,13,0,0,114,10,3,16,0,0,0,0,0,0,0,0,116,104,115,116,110,100,114,100,0,0,0,0,0,0,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0,0,0,0,0,0,0,0,45,120,48,0,88,48,0,0,78,97,78,0,0,0,0,0,45,73,110,102,0,0,0,0,43,73,110,102,0,0,0,0,73,110,102,0,0,0,0,0,40,78,85,76,76,41,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,254,255,255,127,0,0,0,0,128,0,0,0,244,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,73,83,65,66,76,69,95,76,70,83,0,0,0,0,0,69,78,65,66,76,69,95,70,84,83,51,0,0,0,0,0,69,78,65,66,76,69,95,70,84,83,52,0,0,0,0,0,73,78,84,54,52,95,84,89,80,69,0,0,0,0,0,0,79,77,73,84,95,76,79,65,68,95,69,88,84,69,78,83,73,79,78,0,0,0,0,0,83,89,83,84,69,77,95,77,65,76,76,79,67,0,0,0,84,72,82,69,65,68,83,65,70,69,61,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, Runtime.GLOBAL_BASE+41488); + + + + +var tempDoublePtr = Runtime.alignMemory(allocate(12, "i8", ALLOC_STATIC), 8); + +assert(tempDoublePtr % 8 == 0); + +function copyTempFloat(ptr) { // functions, because inlining this code increases code size too much + + HEAP8[tempDoublePtr] = HEAP8[ptr]; + + HEAP8[tempDoublePtr+1] = HEAP8[ptr+1]; + + HEAP8[tempDoublePtr+2] = HEAP8[ptr+2]; + + HEAP8[tempDoublePtr+3] = HEAP8[ptr+3]; + +} + +function copyTempDouble(ptr) { + + HEAP8[tempDoublePtr] = HEAP8[ptr]; + + HEAP8[tempDoublePtr+1] = HEAP8[ptr+1]; + + HEAP8[tempDoublePtr+2] = HEAP8[ptr+2]; + + HEAP8[tempDoublePtr+3] = HEAP8[ptr+3]; + + HEAP8[tempDoublePtr+4] = HEAP8[ptr+4]; + + HEAP8[tempDoublePtr+5] = HEAP8[ptr+5]; + + HEAP8[tempDoublePtr+6] = HEAP8[ptr+6]; + + HEAP8[tempDoublePtr+7] = HEAP8[ptr+7]; + +} + + + + + var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86}; + + var ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"}; + + + var ___errno_state=0;function ___setErrNo(value) { + // For convenient setting and returning of errno. + HEAP32[((___errno_state)>>2)]=value; + return value; + } + + var PATH={splitPath:function (filename) { + var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; + return splitPathRe.exec(filename).slice(1); + },normalizeArray:function (parts, allowAboveRoot) { + // if the path tries to go above the root, `up` ends up > 0 + 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 the path is allowed to go above the root, restore leading ..s + if (allowAboveRoot) { + for (; up--; up) { + parts.unshift('..'); + } + } + return parts; + },normalize:function (path) { + var isAbsolute = path.charAt(0) === '/', + trailingSlash = path.substr(-1) === '/'; + // Normalize the path + 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) { + // No dirname whatsoever + return '.'; + } + if (dir) { + // It has a dirname, strip trailing slash + dir = dir.substr(0, dir.length - 1); + } + return root + dir; + },basename:function (path) { + // EMSCRIPTEN return '/'' for '/', not an empty string + if (path === '/') return '/'; + var lastSlash = path.lastIndexOf('/'); + if (lastSlash === -1) return path; + return path.substr(lastSlash+1); + },extname:function (path) { + return PATH.splitPath(path)[3]; + },join:function () { + var paths = Array.prototype.slice.call(arguments, 0); + return PATH.normalize(paths.join('/')); + },join2:function (l, r) { + return PATH.normalize(l + '/' + r); + },resolve:function () { + var resolvedPath = '', + resolvedAbsolute = false; + for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { + var path = (i >= 0) ? arguments[i] : FS.cwd(); + // Skip empty and invalid entries + if (typeof path !== 'string') { + throw new TypeError('Arguments to path.resolve must be strings'); + } else if (!path) { + continue; + } + resolvedPath = path + '/' + resolvedPath; + resolvedAbsolute = path.charAt(0) === '/'; + } + // At this point the path should be resolved to a full absolute path, but + // handle relative paths to be safe (might happen when process.cwd() fails) + resolvedPath = PATH.normalizeArray(resolvedPath.split('/').filter(function(p) { + return !!p; + }), !resolvedAbsolute).join('/'); + return ((resolvedAbsolute ? '/' : '') + resolvedPath) || '.'; + },relative:function (from, to) { + from = PATH.resolve(from).substr(1); + to = PATH.resolve(to).substr(1); + function trim(arr) { + var start = 0; + for (; start < 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('/'); + }}; + + var TTY={ttys:[],init:function () { + // https://github.com/kripken/emscripten/pull/1555 + // if (ENVIRONMENT_IS_NODE) { + // // currently, FS.init does not distinguish if process.stdin is a file or TTY + // // device, it always assumes it's a TTY device. because of this, we're forcing + // // process.stdin to UTF8 encoding to at least make stdin reading compatible + // // with text files until FS.init can be refactored. + // process['stdin']['setEncoding']('utf8'); + // } + },shutdown:function () { + // https://github.com/kripken/emscripten/pull/1555 + // if (ENVIRONMENT_IS_NODE) { + // // inolen: any idea as to why node -e 'process.stdin.read()' wouldn't exit immediately (with process.stdin being a tty)? + // // isaacs: because now it's reading from the stream, you've expressed interest in it, so that read() kicks off a _read() which creates a ReadReq operation + // // inolen: I thought read() in that case was a synchronous operation that just grabbed some amount of buffered data if it exists? + // // isaacs: it is. but it also triggers a _read() call, which calls readStart() on the handle + // // isaacs: do process.stdin.pause() and i'd think it'd probably close the pending call + // process['stdin']['pause'](); + // } + },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(ERRNO_CODES.ENODEV); + } + stream.tty = tty; + stream.seekable = false; + },close:function (stream) { + // flush any pending line data + if (stream.tty.output.length) { + stream.tty.ops.put_char(stream.tty, 10); + } + },read:function (stream, buffer, offset, length, pos /* ignored */) { + if (!stream.tty || !stream.tty.ops.get_char) { + throw new FS.ErrnoError(ERRNO_CODES.ENXIO); + } + 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(ERRNO_CODES.EIO); + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(ERRNO_CODES.EAGAIN); + } + 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(ERRNO_CODES.ENXIO); + } + for (var i = 0; i < length; i++) { + try { + stream.tty.ops.put_char(stream.tty, buffer[offset+i]); + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES.EIO); + } + } + 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) { + result = process['stdin']['read'](); + if (!result) { + if (process['stdin']['_readableState'] && process['stdin']['_readableState']['ended']) { + return null; // EOF + } + return undefined; // no data available + } + } else if (typeof window != 'undefined' && + typeof window.prompt == 'function') { + // Browser. + result = window.prompt('Input: '); // returns null on cancel + if (result !== null) { + result += '\n'; + } + } else if (typeof readline == 'function') { + // Command line. + result = readline(); + if (result !== null) { + result += '\n'; + } + } + if (!result) { + return null; + } + tty.input = intArrayFromString(result, true); + } + return tty.input.shift(); + },put_char:function (tty, val) { + if (val === null || val === 10) { + Module['print'](tty.output.join('')); + tty.output = []; + } else { + tty.output.push(TTY.utf8.processCChar(val)); + } + }},default_tty1_ops:{put_char:function (tty, val) { + if (val === null || val === 10) { + Module['printErr'](tty.output.join('')); + tty.output = []; + } else { + tty.output.push(TTY.utf8.processCChar(val)); + } + }}}; + + var MEMFS={ops_table:null,mount:function (mount) { + return MEMFS.createNode(null, '/', 16384 | 511 /* 0777 */, 0); + },createNode:function (parent, name, mode, dev) { + if (FS.isBlkdev(mode) || FS.isFIFO(mode)) { + // no supported + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + if (!MEMFS.ops_table) { + MEMFS.ops_table = { + dir: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + lookup: MEMFS.node_ops.lookup, + mknod: MEMFS.node_ops.mknod, + rename: MEMFS.node_ops.rename, + unlink: MEMFS.node_ops.unlink, + rmdir: MEMFS.node_ops.rmdir, + readdir: MEMFS.node_ops.readdir, + symlink: MEMFS.node_ops.symlink + }, + stream: { + llseek: MEMFS.stream_ops.llseek + } + }, + file: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: { + llseek: MEMFS.stream_ops.llseek, + read: MEMFS.stream_ops.read, + write: MEMFS.stream_ops.write, + allocate: MEMFS.stream_ops.allocate, + mmap: MEMFS.stream_ops.mmap + } + }, + 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; // The actual number of bytes used in the typed array, as opposed to contents.buffer.byteLength which gives the whole capacity. + // When the byte data of the file is populated, this will point to either a typed array, or a normal JS array. Typed arrays are preferred + // for performance, and used by default. However, typed arrays are not resizable like normal JS arrays are, so there is a small disk size + // penalty involved for appending file writes that continuously grow a file similar to std::vector capacity vs used -scheme. + 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(); + // add the new node to the parent + if (parent) { + parent.contents[name] = node; + } + return node; + },getFileDataAsRegularArray:function (node) { + if (node.contents && node.contents.subarray) { + var arr = []; + for (var i = 0; i < node.usedBytes; ++i) arr.push(node.contents[i]); + return arr; // Returns a copy of the original data. + } + return node.contents; // No-op, the file contents are already in a JS array. Return as-is. + },getFileDataAsTypedArray:function (node) { + if (node.contents && node.contents.subarray) return node.contents.subarray(0, node.usedBytes); // Make sure to not return excess unused bytes. + return new Uint8Array(node.contents); + },expandFileStorage:function (node, newCapacity) { + + // If we are asked to expand the size of a file that already exists, revert to using a standard JS array to store the file + // instead of a typed array. This makes resizing the array more flexible because we can just .push() elements at the back to + // increase the size. + if (node.contents && node.contents.subarray && newCapacity > node.contents.length) { + node.contents = MEMFS.getFileDataAsRegularArray(node); + node.usedBytes = node.contents.length; // We might be writing to a lazy-loaded file which had overridden this property, so force-reset it. + } + + if (!node.contents || node.contents.subarray) { // Keep using a typed array if creating a new storage, or if old one was a typed array as well. + var prevCapacity = node.contents ? node.contents.buffer.byteLength : 0; + if (prevCapacity >= newCapacity) return; // No need to expand, the storage was already large enough. + // Don't expand strictly to the given requested limit if it's only a very small increase, but instead geometrically grow capacity. + // For small filesizes (<1MB), perform size*2 geometric increase, but for large sizes, do a much more conservative size*1.125 increase to + // avoid overshooting the allocation cap by a very large margin. + var CAPACITY_DOUBLING_MAX = 1024 * 1024; + newCapacity = Math.max(newCapacity, (prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2.0 : 1.125)) | 0); + if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256); // At minimum allocate 256b for each file when expanding. + var oldContents = node.contents; + node.contents = new Uint8Array(newCapacity); // Allocate new storage. + if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, node.usedBytes), 0); // Copy old data over to the new storage. + return; + } + // Not using a typed array to back the file storage. Use a standard JS array instead. + if (!node.contents && newCapacity > 0) node.contents = []; + while (node.contents.length < newCapacity) node.contents.push(0); + },resizeFileStorage:function (node, newSize) { + if (node.usedBytes == newSize) return; + if (newSize == 0) { + node.contents = null; // Fully decommit when requesting a resize to zero. + node.usedBytes = 0; + return; + } + + if (!node.contents || node.contents.subarray) { // Resize a typed array if that is being used as the backing store. + var oldContents = node.contents; + node.contents = new Uint8Array(new ArrayBuffer(newSize)); // Allocate new storage. + node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes))); // Copy old data over to the new storage. + node.usedBytes = newSize; + return; + } + // Backing with a JS array. + if (!node.contents) node.contents = []; + if (node.contents.length > newSize) node.contents.length = newSize; + else while (node.contents.length < newSize) node.contents.push(0); + node.usedBytes = newSize; + },node_ops:{getattr:function (node) { + var attr = {}; + // device numbers reuse inode numbers. + 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); + // NOTE: In our implementation, st_blocks = Math.ceil(st_size/st_blksize), + // but this is not required by the standard. + 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[ERRNO_CODES.ENOENT]; + },mknod:function (parent, name, mode, dev) { + return MEMFS.createNode(parent, name, mode, dev); + },rename:function (old_node, new_dir, new_name) { + // if we're overwriting a directory at new_name, make sure it's empty. + 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(ERRNO_CODES.ENOTEMPTY); + } + } + } + // do the internal rewiring + delete old_node.parent.contents[old_node.name]; + old_node.name = new_name; + new_dir.contents[new_name] = old_node; + old_node.parent = new_dir; + },unlink:function (parent, name) { + delete parent.contents[name]; + },rmdir:function (parent, name) { + var node = FS.lookupNode(parent, name); + for (var i in node.contents) { + throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY); + } + delete parent.contents[name]; + },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 /* 0777 */ | 40960, 0); + node.link = oldpath; + return node; + },readlink:function (node) { + if (!FS.isLink(node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + 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); + assert(size >= 0); + if (size > 8 && contents.subarray) { // non-trivial, and typed array + 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)) { // This write is from a typed array to a typed array? + if (canOwn) { // Can we just reuse the buffer we are given? + assert(position === 0, 'canOwn must imply no weird position inside the file'); + node.contents = buffer.subarray(offset, offset + length); + node.usedBytes = length; + return length; + } else if (node.usedBytes === 0 && position === 0) { // If this is a simple first write to an empty file, do a fast set since we don't need to care about old data. + node.contents = new Uint8Array(buffer.subarray(offset, offset + length)); + node.usedBytes = length; + return length; + } else if (position + length <= node.usedBytes) { // Writing to an already allocated and used subrange of the file? + node.contents.set(buffer.subarray(offset, offset + length), position); + return length; + } + } + // Appending to an existing file and we need to reallocate, or source data did not come as a typed array. + MEMFS.expandFileStorage(node, position+length); + if (node.contents.subarray && buffer.subarray) node.contents.set(buffer.subarray(offset, offset + length), position); // Use typed array write if available. + else + for (var i = 0; i < length; i++) { + node.contents[position + i] = buffer[offset + i]; // Or fall back to manual write if not. + } + node.usedBytes = Math.max(node.usedBytes, position+length); + return length; + },llseek:function (stream, offset, whence) { + var position = offset; + if (whence === 1) { // SEEK_CUR. + position += stream.position; + } else if (whence === 2) { // SEEK_END. + if (FS.isFile(stream.node.mode)) { + position += stream.node.usedBytes; + } + } + if (position < 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + stream.ungotten = []; + stream.position = position; + 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, buffer, offset, length, position, prot, flags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.ENODEV); + } + var ptr; + var allocated; + var contents = stream.node.contents; + // Only make a new copy when MAP_PRIVATE is specified. + if ( !(flags & 2) && + (contents.buffer === buffer || contents.buffer === buffer.buffer) ) { + // We can't emulate MAP_SHARED when the file is not backed by the buffer + // we're mapping to (e.g. the HEAP buffer). + allocated = false; + ptr = contents.byteOffset; + } else { + // Try to avoid unnecessary slices. + if (position > 0 || position + length < stream.node.usedBytes) { + if (contents.subarray) { + contents = contents.subarray(position, position + length); + } else { + contents = Array.prototype.slice.call(contents, position, position + length); + } + } + allocated = true; + ptr = _malloc(length); + if (!ptr) { + throw new FS.ErrnoError(ERRNO_CODES.ENOMEM); + } + buffer.set(contents, ptr); + } + return { ptr: ptr, allocated: allocated }; + }}}; + + var IDBFS={dbs:{},indexedDB:function () { + return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; + },DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:function (mount) { + // reuse all of the core MEMFS functionality + return MEMFS.mount.apply(null, arguments); + },syncfs:function (mount, populate, callback) { + IDBFS.getLocalSet(mount, function(err, local) { + if (err) return callback(err); + + IDBFS.getRemoteSet(mount, function(err, remote) { + if (err) return callback(err); + + var src = populate ? remote : local; + var dst = populate ? local : remote; + + IDBFS.reconcile(src, dst, callback); + }); + }); + },getDB:function (name, callback) { + // check the cache first + var db = IDBFS.dbs[name]; + if (db) { + return callback(null, db); + } + + var req; + try { + req = IDBFS.indexedDB().open(name, IDBFS.DB_VERSION); + } catch (e) { + return callback(e); + } + req.onupgradeneeded = function(e) { + var db = e.target.result; + var transaction = e.target.transaction; + + var fileStore; + + if (db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)) { + fileStore = transaction.objectStore(IDBFS.DB_STORE_NAME); + } else { + fileStore = db.createObjectStore(IDBFS.DB_STORE_NAME); + } + + fileStore.createIndex('timestamp', 'timestamp', { unique: false }); + }; + req.onsuccess = function() { + db = req.result; + + // add to the cache + IDBFS.dbs[name] = db; + callback(null, db); + }; + req.onerror = function() { + callback(this.error); + }; + },getLocalSet:function (mount, callback) { + var entries = {}; + + function isRealDir(p) { + return p !== '.' && p !== '..'; + }; + function toAbsolute(root) { + return function(p) { + return PATH.join2(root, p); + } + }; + + var check = FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint)); + + while (check.length) { + var path = check.pop(); + var stat; + + try { + stat = FS.stat(path); + } catch (e) { + return callback(e); + } + + if (FS.isDir(stat.mode)) { + check.push.apply(check, FS.readdir(path).filter(isRealDir).map(toAbsolute(path))); + } + + entries[path] = { timestamp: stat.mtime }; + } + + return callback(null, { type: 'local', entries: entries }); + },getRemoteSet:function (mount, callback) { + var entries = {}; + + IDBFS.getDB(mount.mountpoint, function(err, db) { + if (err) return callback(err); + + var transaction = db.transaction([IDBFS.DB_STORE_NAME], 'readonly'); + transaction.onerror = function() { callback(this.error); }; + + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + var index = store.index('timestamp'); + + index.openKeyCursor().onsuccess = function(event) { + var cursor = event.target.result; + + if (!cursor) { + return callback(null, { type: 'remote', db: db, entries: entries }); + } + + entries[cursor.primaryKey] = { timestamp: cursor.key }; + + cursor.continue(); + }; + }); + },loadLocalEntry:function (path, callback) { + var stat, node; + + try { + var lookup = FS.lookupPath(path); + node = lookup.node; + stat = FS.stat(path); + } catch (e) { + return callback(e); + } + + if (FS.isDir(stat.mode)) { + return callback(null, { timestamp: stat.mtime, mode: stat.mode }); + } else if (FS.isFile(stat.mode)) { + // Performance consideration: storing a normal JavaScript array to a IndexedDB is much slower than storing a typed array. + // Therefore always convert the file contents to a typed array first before writing the data to IndexedDB. + node.contents = MEMFS.getFileDataAsTypedArray(node); + return callback(null, { timestamp: stat.mtime, mode: stat.mode, contents: node.contents }); + } else { + return callback(new Error('node type not supported')); + } + },storeLocalEntry:function (path, entry, callback) { + try { + if (FS.isDir(entry.mode)) { + FS.mkdir(path, entry.mode); + } else if (FS.isFile(entry.mode)) { + FS.writeFile(path, entry.contents, { encoding: 'binary', canOwn: true }); + } else { + return callback(new Error('node type not supported')); + } + + FS.utime(path, entry.timestamp, entry.timestamp); + } catch (e) { + return callback(e); + } + + callback(null); + },removeLocalEntry:function (path, callback) { + try { + var lookup = FS.lookupPath(path); + var stat = FS.stat(path); + + if (FS.isDir(stat.mode)) { + FS.rmdir(path); + } else if (FS.isFile(stat.mode)) { + FS.unlink(path); + } + } catch (e) { + return callback(e); + } + + callback(null); + },loadRemoteEntry:function (store, path, callback) { + var req = store.get(path); + req.onsuccess = function(event) { callback(null, event.target.result); }; + req.onerror = function() { callback(this.error); }; + },storeRemoteEntry:function (store, path, entry, callback) { + var req = store.put(entry, path); + req.onsuccess = function() { callback(null); }; + req.onerror = function() { callback(this.error); }; + },removeRemoteEntry:function (store, path, callback) { + var req = store.delete(path); + req.onsuccess = function() { callback(null); }; + req.onerror = function() { callback(this.error); }; + },reconcile:function (src, dst, callback) { + var total = 0; + + var create = []; + Object.keys(src.entries).forEach(function (key) { + var e = src.entries[key]; + var e2 = dst.entries[key]; + if (!e2 || e.timestamp > e2.timestamp) { + create.push(key); + total++; + } + }); + + var remove = []; + Object.keys(dst.entries).forEach(function (key) { + var e = dst.entries[key]; + var e2 = src.entries[key]; + if (!e2) { + remove.push(key); + total++; + } + }); + + if (!total) { + return callback(null); + } + + var errored = false; + var completed = 0; + var db = src.type === 'remote' ? src.db : dst.db; + var transaction = db.transaction([IDBFS.DB_STORE_NAME], 'readwrite'); + var store = transaction.objectStore(IDBFS.DB_STORE_NAME); + + function done(err) { + if (err) { + if (!done.errored) { + done.errored = true; + return callback(err); + } + return; + } + if (++completed >= total) { + return callback(null); + } + }; + + transaction.onerror = function() { done(this.error); }; + + // sort paths in ascending order so directory entries are created + // before the files inside them + create.sort().forEach(function (path) { + if (dst.type === 'local') { + IDBFS.loadRemoteEntry(store, path, function (err, entry) { + if (err) return done(err); + IDBFS.storeLocalEntry(path, entry, done); + }); + } else { + IDBFS.loadLocalEntry(path, function (err, entry) { + if (err) return done(err); + IDBFS.storeRemoteEntry(store, path, entry, done); + }); + } + }); + + // sort paths in descending order so files are deleted before their + // parent directories + remove.sort().reverse().forEach(function(path) { + if (dst.type === 'local') { + IDBFS.removeLocalEntry(path, done); + } else { + IDBFS.removeRemoteEntry(store, path, done); + } + }); + }}; + + var NODEFS={isWindows:false,staticInit:function () { + NODEFS.isWindows = !!process.platform.match(/^win/); + },mount:function (mount) { + assert(ENVIRONMENT_IS_NODE); + return NODEFS.createNode(null, '/', NODEFS.getMode(mount.opts.root), 0); + },createNode:function (parent, name, mode, dev) { + if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + var node = FS.createNode(parent, name, mode); + node.node_ops = NODEFS.node_ops; + node.stream_ops = NODEFS.stream_ops; + return node; + },getMode:function (path) { + var stat; + try { + stat = fs.lstatSync(path); + if (NODEFS.isWindows) { + // On Windows, directories return permission bits 'rw-rw-rw-', even though they have 'rwxrwxrwx', so + // propagate write bits to execute bits. + stat.mode = stat.mode | ((stat.mode & 146) >> 1); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + return stat.mode; + },realPath:function (node) { + var parts = []; + while (node.parent !== node) { + parts.push(node.name); + node = node.parent; + } + parts.push(node.mount.opts.root); + parts.reverse(); + return PATH.join.apply(null, parts); + },flagsToPermissionStringMap:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},flagsToPermissionString:function (flags) { + if (flags in NODEFS.flagsToPermissionStringMap) { + return NODEFS.flagsToPermissionStringMap[flags]; + } else { + return flags; + } + },node_ops:{getattr:function (node) { + var path = NODEFS.realPath(node); + var stat; + try { + stat = fs.lstatSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + // node.js v0.10.20 doesn't report blksize and blocks on Windows. Fake them with default blksize of 4096. + // See http://support.microsoft.com/kb/140365 + if (NODEFS.isWindows && !stat.blksize) { + stat.blksize = 4096; + } + if (NODEFS.isWindows && !stat.blocks) { + stat.blocks = (stat.size+stat.blksize-1)/stat.blksize|0; + } + return { + dev: stat.dev, + ino: stat.ino, + mode: stat.mode, + nlink: stat.nlink, + uid: stat.uid, + gid: stat.gid, + rdev: stat.rdev, + size: stat.size, + atime: stat.atime, + mtime: stat.mtime, + ctime: stat.ctime, + blksize: stat.blksize, + blocks: stat.blocks + }; + },setattr:function (node, attr) { + var path = NODEFS.realPath(node); + try { + if (attr.mode !== undefined) { + fs.chmodSync(path, attr.mode); + // update the common node structure mode as well + node.mode = attr.mode; + } + if (attr.timestamp !== undefined) { + var date = new Date(attr.timestamp); + fs.utimesSync(path, date, date); + } + if (attr.size !== undefined) { + fs.truncateSync(path, attr.size); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + },lookup:function (parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + var mode = NODEFS.getMode(path); + return NODEFS.createNode(parent, name, mode); + },mknod:function (parent, name, mode, dev) { + var node = NODEFS.createNode(parent, name, mode, dev); + // create the backing node for this in the fs root as well + var path = NODEFS.realPath(node); + try { + if (FS.isDir(node.mode)) { + fs.mkdirSync(path, node.mode); + } else { + fs.writeFileSync(path, '', { mode: node.mode }); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + return node; + },rename:function (oldNode, newDir, newName) { + var oldPath = NODEFS.realPath(oldNode); + var newPath = PATH.join2(NODEFS.realPath(newDir), newName); + try { + fs.renameSync(oldPath, newPath); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + },unlink:function (parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.unlinkSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + },rmdir:function (parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.rmdirSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + },readdir:function (node) { + var path = NODEFS.realPath(node); + try { + return fs.readdirSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + },symlink:function (parent, newName, oldPath) { + var newPath = PATH.join2(NODEFS.realPath(parent), newName); + try { + fs.symlinkSync(oldPath, newPath); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + },readlink:function (node) { + var path = NODEFS.realPath(node); + try { + return fs.readlinkSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + }},stream_ops:{open:function (stream) { + var path = NODEFS.realPath(stream.node); + try { + if (FS.isFile(stream.node.mode)) { + stream.nfd = fs.openSync(path, NODEFS.flagsToPermissionString(stream.flags)); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + },close:function (stream) { + try { + if (FS.isFile(stream.node.mode) && stream.nfd) { + fs.closeSync(stream.nfd); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + },read:function (stream, buffer, offset, length, position) { + // FIXME this is terrible. + var nbuffer = new Buffer(length); + var res; + try { + res = fs.readSync(stream.nfd, nbuffer, 0, length, position); + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + if (res > 0) { + for (var i = 0; i < res; i++) { + buffer[offset + i] = nbuffer[i]; + } + } + return res; + },write:function (stream, buffer, offset, length, position) { + // FIXME this is terrible. + var nbuffer = new Buffer(buffer.subarray(offset, offset + length)); + var res; + try { + res = fs.writeSync(stream.nfd, nbuffer, 0, length, position); + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + return res; + },llseek:function (stream, offset, whence) { + var position = offset; + if (whence === 1) { // SEEK_CUR. + position += stream.position; + } else if (whence === 2) { // SEEK_END. + if (FS.isFile(stream.node.mode)) { + try { + var stat = fs.fstatSync(stream.nfd); + position += stat.size; + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + } + } + + if (position < 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + + stream.position = position; + return position; + }}}; + + var _stdin=allocate(1, "i32*", ALLOC_STATIC); + + var _stdout=allocate(1, "i32*", ALLOC_STATIC); + + var _stderr=allocate(1, "i32*", ALLOC_STATIC); + + function _fflush(stream) { + // int fflush(FILE *stream); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/fflush.html + // we don't currently perform any user-space buffering of data + }var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},handleFSError:function (e) { + if (!(e instanceof FS.ErrnoError)) throw e + ' : ' + stackTrace(); + return ___setErrNo(e.errno); + },lookupPath:function (path, opts) { + path = PATH.resolve(FS.cwd(), path); + opts = opts || {}; + + var defaults = { + follow_mount: true, + recurse_count: 0 + }; + for (var key in defaults) { + if (opts[key] === undefined) { + opts[key] = defaults[key]; + } + } + + if (opts.recurse_count > 8) { // max recursive lookup of 8 + throw new FS.ErrnoError(ERRNO_CODES.ELOOP); + } + + // split the path + var parts = PATH.normalizeArray(path.split('/').filter(function(p) { + return !!p; + }), false); + + // start at the root + 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) { + // stop resolving + break; + } + + current = FS.lookupNode(current, parts[i]); + current_path = PATH.join2(current_path, parts[i]); + + // jump to the mount's root node if this is a mountpoint + if (FS.isMountpoint(current)) { + if (!islast || (islast && opts.follow_mount)) { + current = current.mounted.root; + } + } + + // by default, lookupPath will not follow a symlink if it is the final path component. + // setting opts.follow = true will override this behavior. + if (!islast || opts.follow) { + var count = 0; + while (FS.isLink(current.mode)) { + var link = FS.readlink(current_path); + current_path = PATH.resolve(PATH.dirname(current_path), link); + + var lookup = FS.lookupPath(current_path, { recurse_count: opts.recurse_count }); + current = lookup.node; + + if (count++ > 40) { // limit max consecutive symlinks to 40 (SYMLOOP_MAX). + throw new FS.ErrnoError(ERRNO_CODES.ELOOP); + } + } + } + } + + return { path: current_path, node: current }; + },getPath:function (node) { + var path; + while (true) { + if (FS.isRoot(node)) { + var mount = node.mount.mountpoint; + if (!path) return mount; + return mount[mount.length-1] !== '/' ? mount + '/' + path : mount + path; + } + path = path ? node.name + '/' + path : node.name; + node = node.parent; + } + },hashName:function (parentid, name) { + var hash = 0; + + + for (var i = 0; i < name.length; i++) { + hash = ((hash << 5) - hash + name.charCodeAt(i)) | 0; + } + return ((parentid + hash) >>> 0) % FS.nameTable.length; + },hashAddNode:function (node) { + var hash = FS.hashName(node.parent.id, node.name); + node.name_next = FS.nameTable[hash]; + FS.nameTable[hash] = node; + },hashRemoveNode:function (node) { + var hash = FS.hashName(node.parent.id, node.name); + if (FS.nameTable[hash] === node) { + FS.nameTable[hash] = node.name_next; + } else { + var current = FS.nameTable[hash]; + while (current) { + if (current.name_next === node) { + current.name_next = node.name_next; + break; + } + current = current.name_next; + } + } + },lookupNode:function (parent, name) { + var err = FS.mayLookup(parent); + if (err) { + throw new FS.ErrnoError(err); + } + 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; + } + } + // if we failed to find it in the cache, call into the VFS + return FS.lookup(parent, name); + },createNode:function (parent, name, mode, rdev) { + if (!FS.FSNode) { + FS.FSNode = function(parent, name, mode, rdev) { + if (!parent) { + parent = this; // root node sets parent to itself + } + this.parent = parent; + this.mount = parent.mount; + this.mounted = null; + this.id = FS.nextInode++; + this.name = name; + this.mode = mode; + this.node_ops = {}; + this.stream_ops = {}; + this.rdev = rdev; + }; + + FS.FSNode.prototype = {}; + + // compatibility + var readMode = 292 | 73; + var writeMode = 146; + + // NOTE we must use Object.defineProperties instead of individual calls to + // Object.defineProperty in order to make closure compiler happy + Object.defineProperties(FS.FSNode.prototype, { + read: { + get: function() { return (this.mode & readMode) === readMode; }, + set: function(val) { val ? this.mode |= readMode : this.mode &= ~readMode; } + }, + write: { + get: function() { return (this.mode & writeMode) === writeMode; }, + set: function(val) { val ? this.mode |= writeMode : this.mode &= ~writeMode; } + }, + isFolder: { + get: function() { return FS.isDir(this.mode); }, + }, + isDevice: { + get: function() { return FS.isChrdev(this.mode); }, + }, + }); + } + + var node = new FS.FSNode(parent, name, mode, rdev); + + FS.hashAddNode(node); + + return node; + },destroyNode:function (node) { + FS.hashRemoveNode(node); + },isRoot:function (node) { + return node === node.parent; + },isMountpoint:function (node) { + return !!node.mounted; + },isFile:function (mode) { + return (mode & 61440) === 32768; + },isDir:function (mode) { + return (mode & 61440) === 16384; + },isLink:function (mode) { + return (mode & 61440) === 40960; + },isChrdev:function (mode) { + return (mode & 61440) === 8192; + },isBlkdev:function (mode) { + return (mode & 61440) === 24576; + },isFIFO:function (mode) { + return (mode & 61440) === 4096; + },isSocket:function (mode) { + return (mode & 49152) === 49152; + },flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function (str) { + var flags = FS.flagModes[str]; + if (typeof flags === 'undefined') { + throw new Error('Unknown file open mode: ' + str); + } + return flags; + },flagsToPermissionString:function (flag) { + var accmode = flag & 2097155; + var perms = ['r', 'w', 'rw'][accmode]; + if ((flag & 512)) { + perms += 'w'; + } + return perms; + },nodePermissions:function (node, perms) { + if (FS.ignorePermissions) { + return 0; + } + // return 0 if any user, group or owner bits are set. + if (perms.indexOf('r') !== -1 && !(node.mode & 292)) { + return ERRNO_CODES.EACCES; + } else if (perms.indexOf('w') !== -1 && !(node.mode & 146)) { + return ERRNO_CODES.EACCES; + } else if (perms.indexOf('x') !== -1 && !(node.mode & 73)) { + return ERRNO_CODES.EACCES; + } + return 0; + },mayLookup:function (dir) { + return FS.nodePermissions(dir, 'x'); + },mayCreate:function (dir, name) { + try { + var node = FS.lookupNode(dir, name); + return ERRNO_CODES.EEXIST; + } catch (e) { + } + return FS.nodePermissions(dir, 'wx'); + },mayDelete:function (dir, name, isdir) { + var node; + try { + node = FS.lookupNode(dir, name); + } catch (e) { + return e.errno; + } + var err = FS.nodePermissions(dir, 'wx'); + if (err) { + return err; + } + if (isdir) { + if (!FS.isDir(node.mode)) { + return ERRNO_CODES.ENOTDIR; + } + if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) { + return ERRNO_CODES.EBUSY; + } + } else { + if (FS.isDir(node.mode)) { + return ERRNO_CODES.EISDIR; + } + } + return 0; + },mayOpen:function (node, flags) { + if (!node) { + return ERRNO_CODES.ENOENT; + } + if (FS.isLink(node.mode)) { + return ERRNO_CODES.ELOOP; + } else if (FS.isDir(node.mode)) { + if ((flags & 2097155) !== 0 || // opening for write + (flags & 512)) { + return ERRNO_CODES.EISDIR; + } + } + return FS.nodePermissions(node, FS.flagsToPermissionString(flags)); + },MAX_OPEN_FDS:4096,nextfd:function (fd_start, fd_end) { + fd_start = fd_start || 0; + fd_end = fd_end || FS.MAX_OPEN_FDS; + for (var fd = fd_start; fd <= fd_end; fd++) { + if (!FS.streams[fd]) { + return fd; + } + } + throw new FS.ErrnoError(ERRNO_CODES.EMFILE); + },getStream:function (fd) { + return FS.streams[fd]; + },createStream:function (stream, fd_start, fd_end) { + if (!FS.FSStream) { + FS.FSStream = function(){}; + FS.FSStream.prototype = {}; + // compatibility + Object.defineProperties(FS.FSStream.prototype, { + object: { + get: function() { return this.node; }, + set: function(val) { this.node = val; } + }, + isRead: { + get: function() { return (this.flags & 2097155) !== 1; } + }, + isWrite: { + get: function() { return (this.flags & 2097155) !== 0; } + }, + isAppend: { + get: function() { return (this.flags & 1024); } + } + }); + } + // clone it, so we can return an instance of FSStream + var newStream = new FS.FSStream(); + for (var p in stream) { + newStream[p] = stream[p]; + } + stream = newStream; + var fd = FS.nextfd(fd_start, fd_end); + stream.fd = fd; + FS.streams[fd] = stream; + return stream; + },closeStream:function (fd) { + FS.streams[fd] = null; + },getStreamFromPtr:function (ptr) { + return FS.streams[ptr - 1]; + },getPtrForStream:function (stream) { + return stream ? stream.fd + 1 : 0; + },chrdev_stream_ops:{open:function (stream) { + var device = FS.getDevice(stream.node.rdev); + // override node's stream ops with the device's + stream.stream_ops = device.stream_ops; + // forward the open call + if (stream.stream_ops.open) { + stream.stream_ops.open(stream); + } + },llseek:function () { + throw new FS.ErrnoError(ERRNO_CODES.ESPIPE); + }},major:function (dev) { + return ((dev) >> 8); + },minor:function (dev) { + return ((dev) & 0xff); + },makedev:function (ma, mi) { + return ((ma) << 8 | (mi)); + },registerDevice:function (dev, ops) { + FS.devices[dev] = { stream_ops: ops }; + },getDevice:function (dev) { + return FS.devices[dev]; + },getMounts:function (mount) { + var mounts = []; + var check = [mount]; + + while (check.length) { + var m = check.pop(); + + mounts.push(m); + + check.push.apply(check, m.mounts); + } + + return mounts; + },syncfs:function (populate, callback) { + if (typeof(populate) === 'function') { + callback = populate; + populate = false; + } + + var mounts = FS.getMounts(FS.root.mount); + var completed = 0; + + function done(err) { + if (err) { + if (!done.errored) { + done.errored = true; + return callback(err); + } + return; + } + if (++completed >= mounts.length) { + callback(null); + } + }; + + // sync all mounts + mounts.forEach(function (mount) { + if (!mount.type.syncfs) { + return done(null); + } + mount.type.syncfs(mount, populate, done); + }); + },mount:function (type, opts, mountpoint) { + var root = mountpoint === '/'; + var pseudo = !mountpoint; + var node; + + if (root && FS.root) { + throw new FS.ErrnoError(ERRNO_CODES.EBUSY); + } else if (!root && !pseudo) { + var lookup = FS.lookupPath(mountpoint, { follow_mount: false }); + + mountpoint = lookup.path; // use the absolute path + node = lookup.node; + + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(ERRNO_CODES.EBUSY); + } + + if (!FS.isDir(node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR); + } + } + + var mount = { + type: type, + opts: opts, + mountpoint: mountpoint, + mounts: [] + }; + + // create a root node for the fs + var mountRoot = type.mount(mount); + mountRoot.mount = mount; + mount.root = mountRoot; + + if (root) { + FS.root = mountRoot; + } else if (node) { + // set as a mountpoint + node.mounted = mount; + + // add the new mount to the current mount's children + if (node.mount) { + node.mount.mounts.push(mount); + } + } + + return mountRoot; + },unmount:function (mountpoint) { + var lookup = FS.lookupPath(mountpoint, { follow_mount: false }); + + if (!FS.isMountpoint(lookup.node)) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + + // destroy the nodes for this mount, and all its child mounts + var node = lookup.node; + var mount = node.mounted; + var mounts = FS.getMounts(mount); + + Object.keys(FS.nameTable).forEach(function (hash) { + var current = FS.nameTable[hash]; + + while (current) { + var next = current.name_next; + + if (mounts.indexOf(current.mount) !== -1) { + FS.destroyNode(current); + } + + current = next; + } + }); + + // no longer a mountpoint + node.mounted = null; + + // remove this mount from the child mounts + var idx = node.mount.mounts.indexOf(mount); + assert(idx !== -1); + node.mount.mounts.splice(idx, 1); + },lookup:function (parent, name) { + return parent.node_ops.lookup(parent, name); + },mknod:function (path, mode, dev) { + var lookup = FS.lookupPath(path, { parent: true }); + var parent = lookup.node; + var name = PATH.basename(path); + var err = FS.mayCreate(parent, name); + if (err) { + throw new FS.ErrnoError(err); + } + if (!parent.node_ops.mknod) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + return parent.node_ops.mknod(parent, name, mode, dev); + },create:function (path, mode) { + mode = mode !== undefined ? mode : 438 /* 0666 */; + mode &= 4095; + mode |= 32768; + return FS.mknod(path, mode, 0); + },mkdir:function (path, mode) { + mode = mode !== undefined ? mode : 511 /* 0777 */; + mode &= 511 | 512; + mode |= 16384; + return FS.mknod(path, mode, 0); + },mkdev:function (path, mode, dev) { + if (typeof(dev) === 'undefined') { + dev = mode; + mode = 438 /* 0666 */; + } + mode |= 8192; + return FS.mknod(path, mode, dev); + },symlink:function (oldpath, newpath) { + var lookup = FS.lookupPath(newpath, { parent: true }); + var parent = lookup.node; + var newname = PATH.basename(newpath); + var err = FS.mayCreate(parent, newname); + if (err) { + throw new FS.ErrnoError(err); + } + if (!parent.node_ops.symlink) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + return parent.node_ops.symlink(parent, newname, oldpath); + },rename:function (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); + // parents must exist + var lookup, old_dir, new_dir; + try { + lookup = FS.lookupPath(old_path, { parent: true }); + old_dir = lookup.node; + lookup = FS.lookupPath(new_path, { parent: true }); + new_dir = lookup.node; + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES.EBUSY); + } + // need to be part of the same mount + if (old_dir.mount !== new_dir.mount) { + throw new FS.ErrnoError(ERRNO_CODES.EXDEV); + } + // source must exist + var old_node = FS.lookupNode(old_dir, old_name); + // old path should not be an ancestor of the new path + var relative = PATH.relative(old_path, new_dirname); + if (relative.charAt(0) !== '.') { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + // new path should not be an ancestor of the old path + relative = PATH.relative(new_path, old_dirname); + if (relative.charAt(0) !== '.') { + throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY); + } + // see if the new path already exists + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name); + } catch (e) { + // not fatal + } + // early out if nothing needs to change + if (old_node === new_node) { + return; + } + // we'll need to delete the old entry + var isdir = FS.isDir(old_node.mode); + var err = FS.mayDelete(old_dir, old_name, isdir); + if (err) { + throw new FS.ErrnoError(err); + } + // need delete permissions if we'll be overwriting. + // need create permissions if new doesn't already exist. + err = new_node ? + FS.mayDelete(new_dir, new_name, isdir) : + FS.mayCreate(new_dir, new_name); + if (err) { + throw new FS.ErrnoError(err); + } + if (!old_dir.node_ops.rename) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + if (FS.isMountpoint(old_node) || (new_node && FS.isMountpoint(new_node))) { + throw new FS.ErrnoError(ERRNO_CODES.EBUSY); + } + // if we are going to change the parent, check write permissions + if (new_dir !== old_dir) { + err = FS.nodePermissions(old_dir, 'w'); + if (err) { + throw new FS.ErrnoError(err); + } + } + try { + if (FS.trackingDelegate['willMovePath']) { + FS.trackingDelegate['willMovePath'](old_path, new_path); + } + } catch(e) { + console.log("FS.trackingDelegate['willMovePath']('"+old_path+"', '"+new_path+"') threw an exception: " + e.message); + } + // remove the node from the lookup hash + FS.hashRemoveNode(old_node); + // do the underlying fs rename + try { + old_dir.node_ops.rename(old_node, new_dir, new_name); + } catch (e) { + throw e; + } finally { + // add the node back to the hash (in case node_ops.rename + // changed its name) + FS.hashAddNode(old_node); + } + try { + if (FS.trackingDelegate['onMovePath']) FS.trackingDelegate['onMovePath'](old_path, new_path); + } catch(e) { + console.log("FS.trackingDelegate['onMovePath']('"+old_path+"', '"+new_path+"') threw an exception: " + e.message); + } + },rmdir:function (path) { + var lookup = FS.lookupPath(path, { parent: true }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, true); + if (err) { + throw new FS.ErrnoError(err); + } + if (!parent.node_ops.rmdir) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(ERRNO_CODES.EBUSY); + } + try { + if (FS.trackingDelegate['willDeletePath']) { + FS.trackingDelegate['willDeletePath'](path); + } + } catch(e) { + console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: " + e.message); + } + parent.node_ops.rmdir(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate['onDeletePath']) FS.trackingDelegate['onDeletePath'](path); + } catch(e) { + console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: " + e.message); + } + },readdir:function (path) { + var lookup = FS.lookupPath(path, { follow: true }); + var node = lookup.node; + if (!node.node_ops.readdir) { + throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR); + } + return node.node_ops.readdir(node); + },unlink:function (path) { + var lookup = FS.lookupPath(path, { parent: true }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var err = FS.mayDelete(parent, name, false); + if (err) { + // POSIX says unlink should set EPERM, not EISDIR + if (err === ERRNO_CODES.EISDIR) err = ERRNO_CODES.EPERM; + throw new FS.ErrnoError(err); + } + if (!parent.node_ops.unlink) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(ERRNO_CODES.EBUSY); + } + try { + if (FS.trackingDelegate['willDeletePath']) { + FS.trackingDelegate['willDeletePath'](path); + } + } catch(e) { + console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: " + e.message); + } + parent.node_ops.unlink(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate['onDeletePath']) FS.trackingDelegate['onDeletePath'](path); + } catch(e) { + console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: " + e.message); + } + },readlink:function (path) { + var lookup = FS.lookupPath(path); + var link = lookup.node; + if (!link.node_ops.readlink) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + return link.node_ops.readlink(link); + },stat:function (path, dontFollow) { + var lookup = FS.lookupPath(path, { follow: !dontFollow }); + var node = lookup.node; + if (!node.node_ops.getattr) { + throw new FS.ErrnoError(ERRNO_CODES.EPERM); + } + return node.node_ops.getattr(node); + },lstat:function (path) { + return FS.stat(path, true); + },chmod:function (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(ERRNO_CODES.EPERM); + } + node.node_ops.setattr(node, { + mode: (mode & 4095) | (node.mode & ~4095), + timestamp: Date.now() + }); + },lchmod:function (path, mode) { + FS.chmod(path, mode, true); + },fchmod:function (fd, mode) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(ERRNO_CODES.EBADF); + } + FS.chmod(stream.node, mode); + },chown:function (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(ERRNO_CODES.EPERM); + } + node.node_ops.setattr(node, { + timestamp: Date.now() + // we ignore the uid / gid for now + }); + },lchown:function (path, uid, gid) { + FS.chown(path, uid, gid, true); + },fchown:function (fd, uid, gid) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(ERRNO_CODES.EBADF); + } + FS.chown(stream.node, uid, gid); + },truncate:function (path, len) { + if (len < 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + 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(ERRNO_CODES.EPERM); + } + if (FS.isDir(node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.EISDIR); + } + if (!FS.isFile(node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + var err = FS.nodePermissions(node, 'w'); + if (err) { + throw new FS.ErrnoError(err); + } + node.node_ops.setattr(node, { + size: len, + timestamp: Date.now() + }); + },ftruncate:function (fd, len) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(ERRNO_CODES.EBADF); + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + FS.truncate(stream.node, len); + },utime:function (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:function (path, flags, mode, fd_start, fd_end) { + if (path === "") { + throw new FS.ErrnoError(ERRNO_CODES.ENOENT); + } + flags = typeof flags === 'string' ? FS.modeStringToFlags(flags) : flags; + mode = typeof mode === 'undefined' ? 438 /* 0666 */ : 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) { + // ignore + } + } + // perhaps we need to create the node + if ((flags & 64)) { + if (node) { + // if O_CREAT and O_EXCL are set, error out if the node already exists + if ((flags & 128)) { + throw new FS.ErrnoError(ERRNO_CODES.EEXIST); + } + } else { + // node doesn't exist, try to create it + node = FS.mknod(path, mode, 0); + } + } + if (!node) { + throw new FS.ErrnoError(ERRNO_CODES.ENOENT); + } + // can't truncate a device + if (FS.isChrdev(node.mode)) { + flags &= ~512; + } + // check permissions + var err = FS.mayOpen(node, flags); + if (err) { + throw new FS.ErrnoError(err); + } + // do truncation if necessary + if ((flags & 512)) { + FS.truncate(node, 0); + } + // we've already handled these, don't pass down to the underlying vfs + flags &= ~(128 | 512); + + // register the stream with the filesystem + var stream = FS.createStream({ + node: node, + path: FS.getPath(node), // we want the absolute path to the node + flags: flags, + seekable: true, + position: 0, + stream_ops: node.stream_ops, + // used by the file family libc calls (fopen, fwrite, ferror, etc.) + ungotten: [], + error: false + }, fd_start, fd_end); + // call the new stream's open function + 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; + Module['printErr']('read file: ' + path); + } + } + try { + if (FS.trackingDelegate['onOpenFile']) { + var trackingFlags = 0; + if ((flags & 2097155) !== 1) { + trackingFlags |= FS.tracking.openFlags.READ; + } + if ((flags & 2097155) !== 0) { + trackingFlags |= FS.tracking.openFlags.WRITE; + } + FS.trackingDelegate['onOpenFile'](path, trackingFlags); + } + } catch(e) { + console.log("FS.trackingDelegate['onOpenFile']('"+path+"', flags) threw an exception: " + e.message); + } + return stream; + },close:function (stream) { + try { + if (stream.stream_ops.close) { + stream.stream_ops.close(stream); + } + } catch (e) { + throw e; + } finally { + FS.closeStream(stream.fd); + } + },llseek:function (stream, offset, whence) { + if (!stream.seekable || !stream.stream_ops.llseek) { + throw new FS.ErrnoError(ERRNO_CODES.ESPIPE); + } + return stream.stream_ops.llseek(stream, offset, whence); + },read:function (stream, buffer, offset, length, position) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(ERRNO_CODES.EBADF); + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.EISDIR); + } + if (!stream.stream_ops.read) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + var seeking = true; + if (typeof position === 'undefined') { + position = stream.position; + seeking = false; + } else if (!stream.seekable) { + throw new FS.ErrnoError(ERRNO_CODES.ESPIPE); + } + var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position); + if (!seeking) stream.position += bytesRead; + return bytesRead; + },write:function (stream, buffer, offset, length, position, canOwn) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(ERRNO_CODES.EBADF); + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.EISDIR); + } + if (!stream.stream_ops.write) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + if (stream.flags & 1024) { + // seek to the end before writing in append mode + FS.llseek(stream, 0, 2); + } + var seeking = true; + if (typeof position === 'undefined') { + position = stream.position; + seeking = false; + } else if (!stream.seekable) { + throw new FS.ErrnoError(ERRNO_CODES.ESPIPE); + } + var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn); + if (!seeking) stream.position += bytesWritten; + try { + if (stream.path && FS.trackingDelegate['onWriteToFile']) FS.trackingDelegate['onWriteToFile'](stream.path); + } catch(e) { + console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: " + e.message); + } + return bytesWritten; + },allocate:function (stream, offset, length) { + if (offset < 0 || length <= 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(ERRNO_CODES.EBADF); + } + if (!FS.isFile(stream.node.mode) && !FS.isDir(node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.ENODEV); + } + if (!stream.stream_ops.allocate) { + throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP); + } + stream.stream_ops.allocate(stream, offset, length); + },mmap:function (stream, buffer, offset, length, position, prot, flags) { + // TODO if PROT is PROT_WRITE, make sure we have write access + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(ERRNO_CODES.EACCES); + } + if (!stream.stream_ops.mmap) { + throw new FS.ErrnoError(ERRNO_CODES.ENODEV); + } + return stream.stream_ops.mmap(stream, buffer, offset, length, position, prot, flags); + },ioctl:function (stream, cmd, arg) { + if (!stream.stream_ops.ioctl) { + throw new FS.ErrnoError(ERRNO_CODES.ENOTTY); + } + return stream.stream_ops.ioctl(stream, cmd, arg); + },readFile:function (path, opts) { + opts = opts || {}; + opts.flags = opts.flags || 'r'; + 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 = ''; + var utf8 = new Runtime.UTF8Processor(); + for (var i = 0; i < length; i++) { + ret += utf8.processCChar(buf[i]); + } + } else if (opts.encoding === 'binary') { + ret = buf; + } + FS.close(stream); + return ret; + },writeFile:function (path, data, opts) { + opts = opts || {}; + opts.flags = opts.flags || 'w'; + opts.encoding = opts.encoding || 'utf8'; + if (opts.encoding !== 'utf8' && opts.encoding !== 'binary') { + throw new Error('Invalid encoding type "' + opts.encoding + '"'); + } + var stream = FS.open(path, opts.flags, opts.mode); + if (opts.encoding === 'utf8') { + var utf8 = new Runtime.UTF8Processor(); + var buf = new Uint8Array(utf8.processJSString(data)); + FS.write(stream, buf, 0, buf.length, 0, opts.canOwn); + } else if (opts.encoding === 'binary') { + FS.write(stream, data, 0, data.length, 0, opts.canOwn); + } + FS.close(stream); + },cwd:function () { + return FS.currentPath; + },chdir:function (path) { + var lookup = FS.lookupPath(path, { follow: true }); + if (!FS.isDir(lookup.node.mode)) { + throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR); + } + var err = FS.nodePermissions(lookup.node, 'x'); + if (err) { + throw new FS.ErrnoError(err); + } + FS.currentPath = lookup.path; + },createDefaultDirectories:function () { + FS.mkdir('/tmp'); + },createDefaultDevices:function () { + // create /dev + FS.mkdir('/dev'); + // setup /dev/null + FS.registerDevice(FS.makedev(1, 3), { + read: function() { return 0; }, + write: function() { return 0; } + }); + FS.mkdev('/dev/null', FS.makedev(1, 3)); + // setup /dev/tty and /dev/tty1 + // stderr needs to print output using Module['printErr'] + // so we register a second tty just for it. + 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)); + // setup /dev/[u]random + var random_device; + if (typeof crypto !== 'undefined') { + // for modern web browsers + var randomBuffer = new Uint8Array(1); + random_device = function() { crypto.getRandomValues(randomBuffer); return randomBuffer[0]; }; + } else if (ENVIRONMENT_IS_NODE) { + // for nodejs + random_device = function() { return require('crypto').randomBytes(1)[0]; }; + } else { + // default for ES5 platforms + random_device = function() { return Math.floor(Math.random()*256); }; + } + FS.createDevice('/dev', 'random', random_device); + FS.createDevice('/dev', 'urandom', random_device); + // we're not going to emulate the actual shm device, + // just create the tmp dirs that reside in it commonly + FS.mkdir('/dev/shm'); + FS.mkdir('/dev/shm/tmp'); + },createStandardStreams:function () { + // TODO deprecate the old functionality of a single + // input / output callback and that utilizes FS.createDevice + // and instead require a unique set of stream ops + + // by default, we symlink the standard streams to the + // default tty devices. however, if the standard streams + // have been overwritten we create a unique device for + // them instead. + 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'); + } + + // open default streams for the stdin, stdout and stderr devices + var stdin = FS.open('/dev/stdin', 'r'); + HEAP32[((_stdin)>>2)]=FS.getPtrForStream(stdin); + assert(stdin.fd === 0, 'invalid handle for stdin (' + stdin.fd + ')'); + + var stdout = FS.open('/dev/stdout', 'w'); + HEAP32[((_stdout)>>2)]=FS.getPtrForStream(stdout); + assert(stdout.fd === 1, 'invalid handle for stdout (' + stdout.fd + ')'); + + var stderr = FS.open('/dev/stderr', 'w'); + HEAP32[((_stderr)>>2)]=FS.getPtrForStream(stderr); + assert(stderr.fd === 2, 'invalid handle for stderr (' + stderr.fd + ')'); + },ensureErrnoError:function () { + if (FS.ErrnoError) return; + FS.ErrnoError = function ErrnoError(errno) { + this.errno = errno; + for (var key in ERRNO_CODES) { + if (ERRNO_CODES[key] === errno) { + this.code = key; + break; + } + } + this.message = ERRNO_MESSAGES[errno]; + if (this.stack) this.stack = demangleAll(this.stack); + }; + FS.ErrnoError.prototype = new Error(); + FS.ErrnoError.prototype.constructor = FS.ErrnoError; + // Some errors may happen quite a bit, to avoid overhead we reuse them (and suffer a lack of stack info) + [ERRNO_CODES.ENOENT].forEach(function(code) { + FS.genericErrors[code] = new FS.ErrnoError(code); + FS.genericErrors[code].stack = ''; + }); + },staticInit:function () { + FS.ensureErrnoError(); + + FS.nameTable = new Array(4096); + + FS.mount(MEMFS, {}, '/'); + + FS.createDefaultDirectories(); + FS.createDefaultDevices(); + },init:function (input, output, error) { + assert(!FS.init.initialized, 'FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)'); + FS.init.initialized = true; + + FS.ensureErrnoError(); + + // Allow Module.stdin etc. to provide defaults, if none explicitly passed to us here + Module['stdin'] = input || Module['stdin']; + Module['stdout'] = output || Module['stdout']; + Module['stderr'] = error || Module['stderr']; + + FS.createStandardStreams(); + },quit:function () { + 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:function (canRead, canWrite) { + var mode = 0; + if (canRead) mode |= 292 | 73; + if (canWrite) mode |= 146; + return mode; + },joinPath:function (parts, forceRelative) { + var path = PATH.join.apply(null, parts); + if (forceRelative && path[0] == '/') path = path.substr(1); + return path; + },absolutePath:function (relative, base) { + return PATH.resolve(base, relative); + },standardizePath:function (path) { + return PATH.normalize(path); + },findObject:function (path, dontResolveLastLink) { + var ret = FS.analyzePath(path, dontResolveLastLink); + if (ret.exists) { + return ret.object; + } else { + ___setErrNo(ret.error); + return null; + } + },analyzePath:function (path, dontResolveLastLink) { + // operate from within the context of the symlink's target + 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; + },createFolder:function (parent, name, canRead, canWrite) { + var path = PATH.join2(typeof parent === 'string' ? parent : FS.getPath(parent), name); + var mode = FS.getMode(canRead, canWrite); + return FS.mkdir(path, mode); + },createPath:function (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) { + // ignore EEXIST + } + parent = current; + } + return current; + },createFile:function (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:function (parent, name, data, canRead, canWrite, canOwn) { + var path = name ? PATH.join2(typeof parent === 'string' ? parent : FS.getPath(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; + } + // make sure we can write to the file + FS.chmod(node, mode | 146); + var stream = FS.open(node, 'w'); + FS.write(stream, data, 0, data.length, 0, canOwn); + FS.close(stream); + FS.chmod(node, mode); + } + return node; + },createDevice:function (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); + // Create a fake device that a set of stream ops to emulate + // the old behavior. + FS.registerDevice(dev, { + open: function(stream) { + stream.seekable = false; + }, + close: function(stream) { + // flush any pending line data + if (output && output.buffer && output.buffer.length) { + output(10); + } + }, + read: function(stream, buffer, offset, length, pos /* ignored */) { + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = input(); + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES.EIO); + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(ERRNO_CODES.EAGAIN); + } + 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) { + for (var i = 0; i < length; i++) { + try { + output(buffer[offset+i]); + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES.EIO); + } + } + if (length) { + stream.node.timestamp = Date.now(); + } + return i; + } + }); + return FS.mkdev(path, mode, dev); + },createLink:function (parent, name, target, canRead, canWrite) { + var path = PATH.join2(typeof parent === 'string' ? parent : FS.getPath(parent), name); + return FS.symlink(target, path); + },forceLoadFile:function (obj) { + if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true; + var success = 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 (Module['read']) { + // Command-line. + try { + // WARNING: Can't read binary files in V8's d8 or tracemonkey's js, as + // read() will try to parse UTF8. + obj.contents = intArrayFromString(Module['read'](obj.url), true); + obj.usedBytes = obj.contents.length; + } catch (e) { + success = false; + } + } else { + throw new Error('Cannot load without read() or XMLHttpRequest.'); + } + if (!success) ___setErrNo(ERRNO_CODES.EIO); + return success; + },createLazyFile:function (parent, name, url, canRead, canWrite) { + // Lazy chunked Uint8Array (implements get and length from Uint8Array). Actual getting is abstracted away for eventual reuse. + function LazyUint8Array() { + this.lengthKnown = false; + this.chunks = []; // Loaded chunks. Index is the chunk number + } + LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) { + if (idx > this.length-1 || idx < 0) { + return undefined; + } + var chunkOffset = idx % this.chunkSize; + var chunkNum = Math.floor(idx / this.chunkSize); + return this.getter(chunkNum)[chunkOffset]; + } + LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) { + this.getter = getter; + } + LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() { + // Find length + 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 chunkSize = 1024*1024; // Chunk size in bytes + + if (!hasByteServing) chunkSize = datalength; + + // Function to get a range from the remote URL. + var doXHR = (function(from, to) { + if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!"); + if (to > datalength-1) throw new Error("only " + datalength + " bytes available! programmer error!"); + + // TODO: Use mozResponseArrayBuffer, responseStream, etc. if available. + var xhr = new XMLHttpRequest(); + xhr.open('GET', url, false); + if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to); + + // Some hints to the browser that we want binary data. + if (typeof Uint8Array != 'undefined') xhr.responseType = 'arraybuffer'; + if (xhr.overrideMimeType) { + xhr.overrideMimeType('text/plain; charset=x-user-defined'); + } + + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + if (xhr.response !== undefined) { + return new Uint8Array(xhr.response || []); + } else { + return intArrayFromString(xhr.responseText || '', true); + } + }); + var lazyArray = this; + lazyArray.setDataGetter(function(chunkNum) { + var start = chunkNum * chunkSize; + var end = (chunkNum+1) * chunkSize - 1; // including this byte + end = Math.min(end, datalength-1); // if datalength-1 is selected, this is the last block + 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]; + }); + + 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.defineProperty(lazyArray, "length", { + get: function() { + if(!this.lengthKnown) { + this.cacheLength(); + } + return this._length; + } + }); + Object.defineProperty(lazyArray, "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); + // This is a total hack, but I want to get this lazy file code out of the + // core of MEMFS. If we want to keep this lazy file concept I feel it should + // be its own thin LAZYFS proxying calls to MEMFS. + if (properties.contents) { + node.contents = properties.contents; + } else if (properties.url) { + node.contents = null; + node.url = properties.url; + } + // Add a function that defers querying the file size until it is asked the first time. + Object.defineProperty(node, "usedBytes", { + get: function() { return this.contents.length; } + }); + // override each stream op with one that tries to force load the lazy file first + var stream_ops = {}; + var keys = Object.keys(node.stream_ops); + keys.forEach(function(key) { + var fn = node.stream_ops[key]; + stream_ops[key] = function forceLoadLazyFile() { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(ERRNO_CODES.EIO); + } + return fn.apply(null, arguments); + }; + }); + // use a custom read function + stream_ops.read = function stream_ops_read(stream, buffer, offset, length, position) { + if (!FS.forceLoadFile(node)) { + throw new FS.ErrnoError(ERRNO_CODES.EIO); + } + var contents = stream.node.contents; + if (position >= contents.length) + return 0; + var size = Math.min(contents.length - position, length); + assert(size >= 0); + if (contents.slice) { // normal array + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents[position + i]; + } + } else { + for (var i = 0; i < size; i++) { // LazyUint8Array from sync binary XHR + buffer[offset + i] = contents.get(position + i); + } + } + return size; + }; + node.stream_ops = stream_ops; + return node; + },createPreloadedFile:function (parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn) { + Browser.init(); + // TODO we should allow people to just pass in a complete filename instead + // of parent and name being that we just join them anyways + var fullname = name ? PATH.resolve(PATH.join2(parent, name)) : parent; + function processData(byteArray) { + function finish(byteArray) { + if (!dontCreateFile) { + FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn); + } + if (onload) onload(); + removeRunDependency('cp ' + fullname); + } + var handled = false; + Module['preloadPlugins'].forEach(function(plugin) { + if (handled) return; + if (plugin['canHandle'](fullname)) { + plugin['handle'](byteArray, fullname, finish, function() { + if (onerror) onerror(); + removeRunDependency('cp ' + fullname); + }); + handled = true; + } + }); + if (!handled) finish(byteArray); + } + addRunDependency('cp ' + fullname); + if (typeof url == 'string') { + Browser.asyncLoad(url, function(byteArray) { + processData(byteArray); + }, onerror); + } else { + processData(url); + } + },indexedDB:function () { + return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB; + },DB_NAME:function () { + return 'EM_FS_' + window.location.pathname; + },DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:function (paths, onload, onerror) { + onload = onload || function(){}; + onerror = onerror || function(){}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION); + } catch (e) { + return onerror(e); + } + openRequest.onupgradeneeded = function openRequest_onupgradeneeded() { + console.log('creating db'); + var db = openRequest.result; + db.createObjectStore(FS.DB_STORE_NAME); + }; + openRequest.onsuccess = function 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(function(path) { + var putRequest = files.put(FS.analyzePath(path).object.contents, path); + putRequest.onsuccess = function putRequest_onsuccess() { ok++; if (ok + fail == total) finish() }; + putRequest.onerror = function putRequest_onerror() { fail++; if (ok + fail == total) finish() }; + }); + transaction.onerror = onerror; + }; + openRequest.onerror = onerror; + },loadFilesFromDB:function (paths, onload, onerror) { + onload = onload || function(){}; + onerror = onerror || function(){}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION); + } catch (e) { + return onerror(e); + } + openRequest.onupgradeneeded = onerror; // no database to load from + openRequest.onsuccess = function 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(function(path) { + var getRequest = files.get(path); + getRequest.onsuccess = function 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 = function getRequest_onerror() { fail++; if (ok + fail == total) finish() }; + }); + transaction.onerror = onerror; + }; + openRequest.onerror = onerror; + }};function _lseek(fildes, offset, whence) { + // off_t lseek(int fildes, off_t offset, int whence); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/lseek.html + var stream = FS.getStream(fildes); + if (!stream) { + ___setErrNo(ERRNO_CODES.EBADF); + return -1; + } + try { + return FS.llseek(stream, offset, whence); + } catch (e) { + FS.handleFSError(e); + return -1; + } + } + + + Module["_i64Subtract"] = _i64Subtract; + + var _DtoILow=true; + + function _sysconf(name) { + // long sysconf(int name); + // http://pubs.opengroup.org/onlinepubs/009695399/functions/sysconf.html + switch(name) { + case 30: return PAGE_SIZE; + case 132: + case 133: + case 12: + case 137: + case 138: + case 15: + case 235: + case 16: + case 17: + case 18: + case 19: + case 20: + case 149: + case 13: + case 10: + case 236: + case 153: + case 9: + case 21: + case 22: + case 159: + case 154: + case 14: + case 77: + case 78: + case 139: + case 80: + case 81: + case 79: + case 82: + case 68: + case 67: + case 164: + case 11: + case 29: + case 47: + case 48: + case 95: + case 52: + case 51: + case 46: + return 200809; + case 27: + case 246: + case 127: + case 128: + case 23: + case 24: + case 160: + case 161: + case 181: + case 182: + case 242: + case 183: + case 184: + case 243: + case 244: + case 245: + case 165: + case 178: + case 179: + case 49: + case 50: + case 168: + case 169: + case 175: + case 170: + case 171: + case 172: + case 97: + case 76: + case 32: + case 173: + case 35: + return -1; + case 176: + case 177: + case 7: + case 155: + case 8: + case 157: + case 125: + case 126: + case 92: + case 93: + case 129: + case 130: + case 131: + case 94: + case 91: + return 1; + case 74: + case 60: + case 69: + case 70: + case 4: + return 1024; + case 31: + case 42: + case 72: + return 32; + case 87: + case 26: + case 33: + return 2147483647; + case 34: + case 1: + return 47839; + case 38: + case 36: + return 99; + case 43: + case 37: + return 2048; + case 0: return 2097152; + case 3: return 65536; + case 28: return 32768; + case 44: return 32767; + case 75: return 16384; + case 39: return 1000; + case 89: return 700; + case 71: return 256; + case 40: return 255; + case 2: return 100; + case 180: return 64; + case 25: return 20; + case 5: return 16; + case 6: return 6; + case 73: return 4; + case 84: { + if (typeof navigator === 'object') return navigator['hardwareConcurrency'] || 1; + return 1; + } + } + ___setErrNo(ERRNO_CODES.EINVAL); + return -1; + } + + var _SItoD=true; + + + Module["_memset"] = _memset; + + function _stat(path, buf, dontResolveLastLink) { + // http://pubs.opengroup.org/onlinepubs/7908799/xsh/stat.html + // int stat(const char *path, struct stat *buf); + // NOTE: dontResolveLastLink is a shortcut for lstat(). It should never be + // used in client code. + path = typeof path !== 'string' ? Pointer_stringify(path) : path; + try { + var stat = dontResolveLastLink ? FS.lstat(path) : FS.stat(path); + 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; + HEAP32[(((buf)+(36))>>2)]=stat.size; + HEAP32[(((buf)+(40))>>2)]=4096; + HEAP32[(((buf)+(44))>>2)]=stat.blocks; + HEAP32[(((buf)+(48))>>2)]=Math.floor(stat.atime.getTime() / 1000); + HEAP32[(((buf)+(52))>>2)]=0; + HEAP32[(((buf)+(56))>>2)]=Math.floor(stat.mtime.getTime() / 1000); + HEAP32[(((buf)+(60))>>2)]=0; + HEAP32[(((buf)+(64))>>2)]=Math.floor(stat.ctime.getTime() / 1000); + HEAP32[(((buf)+(68))>>2)]=0; + HEAP32[(((buf)+(72))>>2)]=stat.ino; + return 0; + } catch (e) { + FS.handleFSError(e); + return -1; + } + } + + var _DtoIHigh=true; + + + Module["_bitshift64Shl"] = _bitshift64Shl; + + function _abort() { + Module['abort'](); + } + + + function _usleep(useconds) { + // int usleep(useconds_t useconds); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/usleep.html + // We're single-threaded, so use a busy loop. Super-ugly. + var msec = useconds / 1000; + if (ENVIRONMENT_IS_WEB && window['performance'] && window['performance']['now']) { + var start = window['performance']['now'](); + while (window['performance']['now']() - start < msec) { + // Do nothing. + } + } else { + var start = Date.now(); + while (Date.now() - start < msec) { + // Do nothing. + } + } + return 0; + }function _sleep(seconds) { + // unsigned sleep(unsigned seconds); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/sleep.html + return _usleep(seconds * 1e6); + } + + function _close(fildes) { + // int close(int fildes); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/close.html + var stream = FS.getStream(fildes); + if (!stream) { + ___setErrNo(ERRNO_CODES.EBADF); + return -1; + } + try { + FS.close(stream); + return 0; + } catch (e) { + FS.handleFSError(e); + return -1; + } + } + + + Module["_strlen"] = _strlen; + + function _access(path, amode) { + // int access(const char *path, int amode); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/access.html + path = Pointer_stringify(path); + if (amode & ~7) { + // need a valid mode + ___setErrNo(ERRNO_CODES.EINVAL); + return -1; + } + var node; + try { + var lookup = FS.lookupPath(path, { follow: true }); + node = lookup.node; + } catch (e) { + FS.handleFSError(e); + return -1; + } + var perms = ''; + if (amode & 4) perms += 'r'; + if (amode & 2) perms += 'w'; + if (amode & 1) perms += 'x'; + if (perms /* otherwise, they've just passed F_OK */ && FS.nodePermissions(node, perms)) { + ___setErrNo(ERRNO_CODES.EACCES); + return -1; + } + return 0; + } + + function _unlink(path) { + // int unlink(const char *path); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/unlink.html + path = Pointer_stringify(path); + try { + FS.unlink(path); + return 0; + } catch (e) { + FS.handleFSError(e); + return -1; + } + } + + + Module["_i64Add"] = _i64Add; + + function _open(path, oflag, varargs) { + // int open(const char *path, int oflag, ...); + // http://pubs.opengroup.org/onlinepubs/009695399/functions/open.html + var mode = HEAP32[((varargs)>>2)]; + path = Pointer_stringify(path); + try { + var stream = FS.open(path, oflag, mode); + return stream.fd; + } catch (e) { + FS.handleFSError(e); + return -1; + } + } + + + function _getgid() { + // gid_t getgid(void); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/getgid.html + // We have just one process/group/user, all with ID 0. + return 0; + }function _geteuid() { + return _getgid.apply(null, arguments) + } + + + function _mknod(path, mode, dev) { + // int mknod(const char *path, mode_t mode, dev_t dev); + // http://pubs.opengroup.org/onlinepubs/7908799/xsh/mknod.html + path = Pointer_stringify(path); + // we don't want this in the JS API as the JS API + // uses mknod to create all nodes. + switch (mode & 61440) { + case 32768: + case 8192: + case 24576: + case 4096: + case 49152: + break; + default: + ___setErrNo(ERRNO_CODES.EINVAL); + return -1; + } + try { + FS.mknod(path, mode, dev); + return 0; + } catch (e) { + FS.handleFSError(e); + return -1; + } + }function _mkdir(path, mode) { + // int mkdir(const char *path, mode_t mode); + // http://pubs.opengroup.org/onlinepubs/7908799/xsh/mkdir.html + path = Pointer_stringify(path); + // remove a trailing slash, if one - /a/b/ has basename of '', but + // we want to create b in the context of this function + if (path[path.length-1] === '/') path = path.substr(0, path.length-1); + try { + FS.mkdir(path, mode, 0); + return 0; + } catch (e) { + FS.handleFSError(e); + return -1; + } + } + + + + + function _mkport() { throw 'TODO' }var SOCKFS={mount:function (mount) { + return FS.createNode(null, '/', 16384 | 511 /* 0777 */, 0); + },createSocket:function (family, type, protocol) { + var streaming = type == 1; + if (protocol) { + assert(streaming == (protocol == 6)); // if SOCK_STREAM, must be tcp + } + + // create our internal socket structure + var sock = { + family: family, + type: type, + protocol: protocol, + server: null, + peers: {}, + pending: [], + recv_queue: [], + sock_ops: SOCKFS.websocket_sock_ops + }; + + // create the filesystem node to store the socket structure + var name = SOCKFS.nextname(); + var node = FS.createNode(SOCKFS.root, name, 49152, 0); + node.sock = sock; + + // and the wrapping stream that enables library functions such + // as read and write to indirectly interact with the socket + var stream = FS.createStream({ + path: name, + node: node, + flags: FS.modeStringToFlags('r+'), + seekable: false, + stream_ops: SOCKFS.stream_ops + }); + + // map the new stream to the socket structure (sockets have a 1:1 + // relationship with a stream) + sock.stream = stream; + + return sock; + },getSocket:function (fd) { + var stream = FS.getStream(fd); + if (!stream || !FS.isSocket(stream.node.mode)) { + return null; + } + return stream.node.sock; + },stream_ops:{poll:function (stream) { + var sock = stream.node.sock; + return sock.sock_ops.poll(sock); + },ioctl:function (stream, request, varargs) { + var sock = stream.node.sock; + return sock.sock_ops.ioctl(sock, request, varargs); + },read:function (stream, buffer, offset, length, position /* ignored */) { + var sock = stream.node.sock; + var msg = sock.sock_ops.recvmsg(sock, length); + if (!msg) { + // socket is closed + return 0; + } + buffer.set(msg.buffer, offset); + return msg.buffer.length; + },write:function (stream, buffer, offset, length, position /* ignored */) { + var sock = stream.node.sock; + return sock.sock_ops.sendmsg(sock, buffer, offset, length); + },close:function (stream) { + var sock = stream.node.sock; + sock.sock_ops.close(sock); + }},nextname:function () { + if (!SOCKFS.nextname.current) { + SOCKFS.nextname.current = 0; + } + return 'socket[' + (SOCKFS.nextname.current++) + ']'; + },websocket_sock_ops:{createPeer:function (sock, addr, port) { + var ws; + + if (typeof addr === 'object') { + ws = addr; + addr = null; + port = null; + } + + if (ws) { + // for sockets that've already connected (e.g. we're the server) + // we can inspect the _socket property for the address + if (ws._socket) { + addr = ws._socket.remoteAddress; + port = ws._socket.remotePort; + } + // if we're just now initializing a connection to the remote, + // inspect the url property + else { + var result = /ws[s]?:\/\/([^:]+):(\d+)/.exec(ws.url); + if (!result) { + throw new Error('WebSocket URL must be in the format ws(s)://address:port'); + } + addr = result[1]; + port = parseInt(result[2], 10); + } + } else { + // create the actual websocket object and connect + try { + // runtimeConfig gets set to true if WebSocket runtime configuration is available. + var runtimeConfig = (Module['websocket'] && ('object' === typeof Module['websocket'])); + + // The default value is 'ws://' the replace is needed because the compiler replaces "//" comments with '#' + // comments without checking context, so we'd end up with ws:#, the replace swaps the "#" for "//" again. + var url = 'ws:#'.replace('#', '//'); + + if (runtimeConfig) { + if ('string' === typeof Module['websocket']['url']) { + url = Module['websocket']['url']; // Fetch runtime WebSocket URL config. + } + } + + if (url === 'ws://' || url === 'wss://') { // Is the supplied URL config just a prefix, if so complete it. + url = url + addr + ':' + port; + } + + // Make the WebSocket subprotocol (Sec-WebSocket-Protocol) default to binary if no configuration is set. + var subProtocols = 'binary'; // The default value is 'binary' + + if (runtimeConfig) { + if ('string' === typeof Module['websocket']['subprotocol']) { + subProtocols = Module['websocket']['subprotocol']; // Fetch runtime WebSocket subprotocol config. + } + } + + // The regex trims the string (removes spaces at the beginning and end, then splits the string by + // , into an Array. Whitespace removal is important for Websockify and ws. + subProtocols = subProtocols.replace(/^ +| +$/g,"").split(/ *, */); + + // The node ws library API for specifying optional subprotocol is slightly different than the browser's. + var opts = ENVIRONMENT_IS_NODE ? {'protocol': subProtocols.toString()} : subProtocols; + + // If node we use the ws library. + var WebSocket = ENVIRONMENT_IS_NODE ? require('ws') : window['WebSocket']; + ws = new WebSocket(url, opts); + ws.binaryType = 'arraybuffer'; + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES.EHOSTUNREACH); + } + } + + + var peer = { + addr: addr, + port: port, + socket: ws, + dgram_send_queue: [] + }; + + SOCKFS.websocket_sock_ops.addPeer(sock, peer); + SOCKFS.websocket_sock_ops.handlePeerEvents(sock, peer); + + // if this is a bound dgram socket, send the port number first to allow + // us to override the ephemeral port reported to us by remotePort on the + // remote end. + if (sock.type === 2 && typeof sock.sport !== 'undefined') { + peer.dgram_send_queue.push(new Uint8Array([ + 255, 255, 255, 255, + 'p'.charCodeAt(0), 'o'.charCodeAt(0), 'r'.charCodeAt(0), 't'.charCodeAt(0), + ((sock.sport & 0xff00) >> 8) , (sock.sport & 0xff) + ])); + } + + return peer; + },getPeer:function (sock, addr, port) { + return sock.peers[addr + ':' + port]; + },addPeer:function (sock, peer) { + sock.peers[peer.addr + ':' + peer.port] = peer; + },removePeer:function (sock, peer) { + delete sock.peers[peer.addr + ':' + peer.port]; + },handlePeerEvents:function (sock, peer) { + var first = true; + + var handleOpen = function () { + try { + var queued = peer.dgram_send_queue.shift(); + while (queued) { + peer.socket.send(queued); + queued = peer.dgram_send_queue.shift(); + } + } catch (e) { + // not much we can do here in the way of proper error handling as we've already + // lied and said this data was sent. shut it down. + peer.socket.close(); + } + }; + + function handleMessage(data) { + assert(typeof data !== 'string' && data.byteLength !== undefined); // must receive an ArrayBuffer + data = new Uint8Array(data); // make a typed array view on the array buffer + + + // if this is the port message, override the peer's port with it + var wasfirst = first; + first = false; + if (wasfirst && + data.length === 10 && + data[0] === 255 && data[1] === 255 && data[2] === 255 && data[3] === 255 && + data[4] === 'p'.charCodeAt(0) && data[5] === 'o'.charCodeAt(0) && data[6] === 'r'.charCodeAt(0) && data[7] === 't'.charCodeAt(0)) { + // update the peer's port and it's key in the peer map + var newport = ((data[8] << 8) | data[9]); + SOCKFS.websocket_sock_ops.removePeer(sock, peer); + peer.port = newport; + SOCKFS.websocket_sock_ops.addPeer(sock, peer); + return; + } + + sock.recv_queue.push({ addr: peer.addr, port: peer.port, data: data }); + }; + + if (ENVIRONMENT_IS_NODE) { + peer.socket.on('open', handleOpen); + peer.socket.on('message', function(data, flags) { + if (!flags.binary) { + return; + } + handleMessage((new Uint8Array(data)).buffer); // copy from node Buffer -> ArrayBuffer + }); + peer.socket.on('error', function() { + // don't throw + }); + } else { + peer.socket.onopen = handleOpen; + peer.socket.onmessage = function peer_socket_onmessage(event) { + handleMessage(event.data); + }; + } + },poll:function (sock) { + if (sock.type === 1 && sock.server) { + // listen sockets should only say they're available for reading + // if there are pending clients. + return sock.pending.length ? (64 | 1) : 0; + } + + var mask = 0; + var dest = sock.type === 1 ? // we only care about the socket state for connection-based sockets + SOCKFS.websocket_sock_ops.getPeer(sock, sock.daddr, sock.dport) : + null; + + if (sock.recv_queue.length || + !dest || // connection-less sockets are always ready to read + (dest && dest.socket.readyState === dest.socket.CLOSING) || + (dest && dest.socket.readyState === dest.socket.CLOSED)) { // let recv return 0 once closed + mask |= (64 | 1); + } + + if (!dest || // connection-less sockets are always ready to write + (dest && dest.socket.readyState === dest.socket.OPEN)) { + mask |= 4; + } + + if ((dest && dest.socket.readyState === dest.socket.CLOSING) || + (dest && dest.socket.readyState === dest.socket.CLOSED)) { + mask |= 16; + } + + return mask; + },ioctl:function (sock, request, arg) { + switch (request) { + case 21531: + var bytes = 0; + if (sock.recv_queue.length) { + bytes = sock.recv_queue[0].data.length; + } + HEAP32[((arg)>>2)]=bytes; + return 0; + default: + return ERRNO_CODES.EINVAL; + } + },close:function (sock) { + // if we've spawned a listen server, close it + if (sock.server) { + try { + sock.server.close(); + } catch (e) { + } + sock.server = null; + } + // close any peer connections + var peers = Object.keys(sock.peers); + for (var i = 0; i < peers.length; i++) { + var peer = sock.peers[peers[i]]; + try { + peer.socket.close(); + } catch (e) { + } + SOCKFS.websocket_sock_ops.removePeer(sock, peer); + } + return 0; + },bind:function (sock, addr, port) { + if (typeof sock.saddr !== 'undefined' || typeof sock.sport !== 'undefined') { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); // already bound + } + sock.saddr = addr; + sock.sport = port || _mkport(); + // in order to emulate dgram sockets, we need to launch a listen server when + // binding on a connection-less socket + // note: this is only required on the server side + if (sock.type === 2) { + // close the existing server if it exists + if (sock.server) { + sock.server.close(); + sock.server = null; + } + // swallow error operation not supported error that occurs when binding in the + // browser where this isn't supported + try { + sock.sock_ops.listen(sock, 0); + } catch (e) { + if (!(e instanceof FS.ErrnoError)) throw e; + if (e.errno !== ERRNO_CODES.EOPNOTSUPP) throw e; + } + } + },connect:function (sock, addr, port) { + if (sock.server) { + throw new FS.ErrnoError(ERRNO_CODS.EOPNOTSUPP); + } + + // TODO autobind + // if (!sock.addr && sock.type == 2) { + // } + + // early out if we're already connected / in the middle of connecting + if (typeof sock.daddr !== 'undefined' && typeof sock.dport !== 'undefined') { + var dest = SOCKFS.websocket_sock_ops.getPeer(sock, sock.daddr, sock.dport); + if (dest) { + if (dest.socket.readyState === dest.socket.CONNECTING) { + throw new FS.ErrnoError(ERRNO_CODES.EALREADY); + } else { + throw new FS.ErrnoError(ERRNO_CODES.EISCONN); + } + } + } + + // add the socket to our peer list and set our + // destination address / port to match + var peer = SOCKFS.websocket_sock_ops.createPeer(sock, addr, port); + sock.daddr = peer.addr; + sock.dport = peer.port; + + // always "fail" in non-blocking mode + throw new FS.ErrnoError(ERRNO_CODES.EINPROGRESS); + },listen:function (sock, backlog) { + if (!ENVIRONMENT_IS_NODE) { + throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP); + } + if (sock.server) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); // already listening + } + var WebSocketServer = require('ws').Server; + var host = sock.saddr; + sock.server = new WebSocketServer({ + host: host, + port: sock.sport + // TODO support backlog + }); + + sock.server.on('connection', function(ws) { + if (sock.type === 1) { + var newsock = SOCKFS.createSocket(sock.family, sock.type, sock.protocol); + + // create a peer on the new socket + var peer = SOCKFS.websocket_sock_ops.createPeer(newsock, ws); + newsock.daddr = peer.addr; + newsock.dport = peer.port; + + // push to queue for accept to pick up + sock.pending.push(newsock); + } else { + // create a peer on the listen socket so calling sendto + // with the listen socket and an address will resolve + // to the correct client + SOCKFS.websocket_sock_ops.createPeer(sock, ws); + } + }); + sock.server.on('closed', function() { + sock.server = null; + }); + sock.server.on('error', function() { + // don't throw + }); + },accept:function (listensock) { + if (!listensock.server) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + var newsock = listensock.pending.shift(); + newsock.stream.flags = listensock.stream.flags; + return newsock; + },getname:function (sock, peer) { + var addr, port; + if (peer) { + if (sock.daddr === undefined || sock.dport === undefined) { + throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN); + } + addr = sock.daddr; + port = sock.dport; + } else { + // TODO saddr and sport will be set for bind()'d UDP sockets, but what + // should we be returning for TCP sockets that've been connect()'d? + addr = sock.saddr || 0; + port = sock.sport || 0; + } + return { addr: addr, port: port }; + },sendmsg:function (sock, buffer, offset, length, addr, port) { + if (sock.type === 2) { + // connection-less sockets will honor the message address, + // and otherwise fall back to the bound destination address + if (addr === undefined || port === undefined) { + addr = sock.daddr; + port = sock.dport; + } + // if there was no address to fall back to, error out + if (addr === undefined || port === undefined) { + throw new FS.ErrnoError(ERRNO_CODES.EDESTADDRREQ); + } + } else { + // connection-based sockets will only use the bound + addr = sock.daddr; + port = sock.dport; + } + + // find the peer for the destination address + var dest = SOCKFS.websocket_sock_ops.getPeer(sock, addr, port); + + // early out if not connected with a connection-based socket + if (sock.type === 1) { + if (!dest || dest.socket.readyState === dest.socket.CLOSING || dest.socket.readyState === dest.socket.CLOSED) { + throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN); + } else if (dest.socket.readyState === dest.socket.CONNECTING) { + throw new FS.ErrnoError(ERRNO_CODES.EAGAIN); + } + } + + // create a copy of the incoming data to send, as the WebSocket API + // doesn't work entirely with an ArrayBufferView, it'll just send + // the entire underlying buffer + var data; + if (buffer instanceof Array || buffer instanceof ArrayBuffer) { + data = buffer.slice(offset, offset + length); + } else { // ArrayBufferView + data = buffer.buffer.slice(buffer.byteOffset + offset, buffer.byteOffset + offset + length); + } + + // if we're emulating a connection-less dgram socket and don't have + // a cached connection, queue the buffer to send upon connect and + // lie, saying the data was sent now. + if (sock.type === 2) { + if (!dest || dest.socket.readyState !== dest.socket.OPEN) { + // if we're not connected, open a new connection + if (!dest || dest.socket.readyState === dest.socket.CLOSING || dest.socket.readyState === dest.socket.CLOSED) { + dest = SOCKFS.websocket_sock_ops.createPeer(sock, addr, port); + } + dest.dgram_send_queue.push(data); + return length; + } + } + + try { + // send the actual data + dest.socket.send(data); + return length; + } catch (e) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + },recvmsg:function (sock, length) { + // http://pubs.opengroup.org/onlinepubs/7908799/xns/recvmsg.html + if (sock.type === 1 && sock.server) { + // tcp servers should not be recv()'ing on the listen socket + throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN); + } + + var queued = sock.recv_queue.shift(); + if (!queued) { + if (sock.type === 1) { + var dest = SOCKFS.websocket_sock_ops.getPeer(sock, sock.daddr, sock.dport); + + if (!dest) { + // if we have a destination address but are not connected, error out + throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN); + } + else if (dest.socket.readyState === dest.socket.CLOSING || dest.socket.readyState === dest.socket.CLOSED) { + // return null if the socket has closed + return null; + } + else { + // else, our socket is in a valid state but truly has nothing available + throw new FS.ErrnoError(ERRNO_CODES.EAGAIN); + } + } else { + throw new FS.ErrnoError(ERRNO_CODES.EAGAIN); + } + } + + // queued.data will be an ArrayBuffer if it's unadulterated, but if it's + // requeued TCP data it'll be an ArrayBufferView + var queuedLength = queued.data.byteLength || queued.data.length; + var queuedOffset = queued.data.byteOffset || 0; + var queuedBuffer = queued.data.buffer || queued.data; + var bytesRead = Math.min(length, queuedLength); + var res = { + buffer: new Uint8Array(queuedBuffer, queuedOffset, bytesRead), + addr: queued.addr, + port: queued.port + }; + + + // push back any unread data for TCP connections + if (sock.type === 1 && bytesRead < queuedLength) { + var bytesRemaining = queuedLength - bytesRead; + queued.data = new Uint8Array(queuedBuffer, queuedOffset + bytesRead, bytesRemaining); + sock.recv_queue.unshift(queued); + } + + return res; + }}};function _send(fd, buf, len, flags) { + var sock = SOCKFS.getSocket(fd); + if (!sock) { + ___setErrNo(ERRNO_CODES.EBADF); + return -1; + } + // TODO honor flags + return _write(fd, buf, len); + } + + function _pwrite(fildes, buf, nbyte, offset) { + // ssize_t pwrite(int fildes, const void *buf, size_t nbyte, off_t offset); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/write.html + var stream = FS.getStream(fildes); + if (!stream) { + ___setErrNo(ERRNO_CODES.EBADF); + return -1; + } + try { + var slab = HEAP8; + return FS.write(stream, slab, buf, nbyte, offset); + } catch (e) { + FS.handleFSError(e); + return -1; + } + }function _write(fildes, buf, nbyte) { + // ssize_t write(int fildes, const void *buf, size_t nbyte); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/write.html + var stream = FS.getStream(fildes); + if (!stream) { + ___setErrNo(ERRNO_CODES.EBADF); + return -1; + } + + + try { + var slab = HEAP8; + return FS.write(stream, slab, buf, nbyte); + } catch (e) { + FS.handleFSError(e); + return -1; + } + } + + + function _chmod(path, mode, dontResolveLastLink) { + // int chmod(const char *path, mode_t mode); + // http://pubs.opengroup.org/onlinepubs/7908799/xsh/chmod.html + // NOTE: dontResolveLastLink is a shortcut for lchmod(). It should never be + // used in client code. + path = typeof path !== 'string' ? Pointer_stringify(path) : path; + try { + FS.chmod(path, mode); + return 0; + } catch (e) { + FS.handleFSError(e); + return -1; + } + }function _fchmod(fildes, mode) { + // int fchmod(int fildes, mode_t mode); + // http://pubs.opengroup.org/onlinepubs/7908799/xsh/fchmod.html + try { + FS.fchmod(fildes, mode); + return 0; + } catch (e) { + FS.handleFSError(e); + return -1; + } + } + + var Browser={mainLoop:{scheduler:null,method:"",shouldPause:false,paused:false,queue:[],pause:function () { + Browser.mainLoop.shouldPause = true; + },resume:function () { + if (Browser.mainLoop.paused) { + Browser.mainLoop.paused = false; + Browser.mainLoop.scheduler(); + } + Browser.mainLoop.shouldPause = false; + },updateStatus:function () { + if (Module['setStatus']) { + var message = Module['statusMessage'] || 'Please wait...'; + var remaining = Browser.mainLoop.remainingBlockers; + var expected = Browser.mainLoop.expectedBlockers; + if (remaining) { + if (remaining < expected) { + Module['setStatus'](message + ' (' + (expected - remaining) + '/' + expected + ')'); + } else { + Module['setStatus'](message); + } + } else { + Module['setStatus'](''); + } + } + },runIter:function (func) { + if (ABORT) return; + if (Module['preMainLoop']) { + var preRet = Module['preMainLoop'](); + if (preRet === false) { + return; // |return false| skips a frame + } + } + try { + func(); + } catch (e) { + if (e instanceof ExitStatus) { + return; + } else { + if (e && typeof e === 'object' && e.stack) Module.printErr('exception thrown: ' + [e, e.stack]); + throw e; + } + } + if (Module['postMainLoop']) Module['postMainLoop'](); + }},isFullScreen:false,pointerLock:false,moduleContextCreatedCallbacks:[],workers:[],init:function () { + if (!Module["preloadPlugins"]) Module["preloadPlugins"] = []; // needs to exist even in workers + + if (Browser.initted) return; + Browser.initted = true; + + try { + new Blob(); + Browser.hasBlobConstructor = true; + } catch(e) { + Browser.hasBlobConstructor = false; + console.log("warning: no blob constructor, cannot create blobs with mimetypes"); + } + Browser.BlobBuilder = typeof MozBlobBuilder != "undefined" ? MozBlobBuilder : (typeof WebKitBlobBuilder != "undefined" ? WebKitBlobBuilder : (!Browser.hasBlobConstructor ? console.log("warning: no BlobBuilder") : null)); + Browser.URLObject = typeof window != "undefined" ? (window.URL ? window.URL : window.webkitURL) : undefined; + if (!Module.noImageDecoding && typeof Browser.URLObject === 'undefined') { + console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."); + Module.noImageDecoding = true; + } + + // Support for plugins that can process preloaded files. You can add more of these to + // your app by creating and appending to Module.preloadPlugins. + // + // Each plugin is asked if it can handle a file based on the file's name. If it can, + // it is given the file's raw data. When it is done, it calls a callback with the file's + // (possibly modified) data. For example, a plugin might decompress a file, or it + // might create some side data structure for use later (like an Image element, etc.). + + var imagePlugin = {}; + imagePlugin['canHandle'] = function imagePlugin_canHandle(name) { + return !Module.noImageDecoding && /\.(jpg|jpeg|png|bmp)$/i.test(name); + }; + imagePlugin['handle'] = function imagePlugin_handle(byteArray, name, onload, onerror) { + var b = null; + if (Browser.hasBlobConstructor) { + try { + b = new Blob([byteArray], { type: Browser.getMimetype(name) }); + if (b.size !== byteArray.length) { // Safari bug #118630 + // Safari's Blob can only take an ArrayBuffer + b = new Blob([(new Uint8Array(byteArray)).buffer], { type: Browser.getMimetype(name) }); + } + } catch(e) { + Runtime.warnOnce('Blob constructor present but fails: ' + e + '; falling back to blob builder'); + } + } + if (!b) { + var bb = new Browser.BlobBuilder(); + bb.append((new Uint8Array(byteArray)).buffer); // we need to pass a buffer, and must copy the array to get the right data range + b = bb.getBlob(); + } + var url = Browser.URLObject.createObjectURL(b); + assert(typeof url == 'string', 'createObjectURL must return a url as a string'); + var img = new Image(); + img.onload = function img_onload() { + assert(img.complete, 'Image ' + name + ' could not be decoded'); + var canvas = document.createElement('canvas'); + canvas.width = img.width; + canvas.height = img.height; + var ctx = canvas.getContext('2d'); + ctx.drawImage(img, 0, 0); + Module["preloadedImages"][name] = canvas; + Browser.URLObject.revokeObjectURL(url); + if (onload) onload(byteArray); + }; + img.onerror = function img_onerror(event) { + console.log('Image ' + url + ' could not be decoded'); + if (onerror) onerror(); + }; + img.src = url; + }; + Module['preloadPlugins'].push(imagePlugin); + + var audioPlugin = {}; + audioPlugin['canHandle'] = function audioPlugin_canHandle(name) { + return !Module.noAudioDecoding && name.substr(-4) in { '.ogg': 1, '.wav': 1, '.mp3': 1 }; + }; + audioPlugin['handle'] = function audioPlugin_handle(byteArray, name, onload, onerror) { + var done = false; + function finish(audio) { + if (done) return; + done = true; + Module["preloadedAudios"][name] = audio; + if (onload) onload(byteArray); + } + function fail() { + if (done) return; + done = true; + Module["preloadedAudios"][name] = new Audio(); // empty shim + if (onerror) onerror(); + } + if (Browser.hasBlobConstructor) { + try { + var b = new Blob([byteArray], { type: Browser.getMimetype(name) }); + } catch(e) { + return fail(); + } + var url = Browser.URLObject.createObjectURL(b); // XXX we never revoke this! + assert(typeof url == 'string', 'createObjectURL must return a url as a string'); + var audio = new Audio(); + audio.addEventListener('canplaythrough', function() { finish(audio) }, false); // use addEventListener due to chromium bug 124926 + audio.onerror = function audio_onerror(event) { + if (done) return; + console.log('warning: browser could not fully decode audio ' + name + ', trying slower base64 approach'); + function encode64(data) { + var BASE = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; + var PAD = '='; + var ret = ''; + var leftchar = 0; + var leftbits = 0; + for (var i = 0; i < data.length; i++) { + leftchar = (leftchar << 8) | data[i]; + leftbits += 8; + while (leftbits >= 6) { + var curr = (leftchar >> (leftbits-6)) & 0x3f; + leftbits -= 6; + ret += BASE[curr]; + } + } + if (leftbits == 2) { + ret += BASE[(leftchar&3) << 4]; + ret += PAD + PAD; + } else if (leftbits == 4) { + ret += BASE[(leftchar&0xf) << 2]; + ret += PAD; + } + return ret; + } + audio.src = 'data:audio/x-' + name.substr(-3) + ';base64,' + encode64(byteArray); + finish(audio); // we don't wait for confirmation this worked - but it's worth trying + }; + audio.src = url; + // workaround for chrome bug 124926 - we do not always get oncanplaythrough or onerror + Browser.safeSetTimeout(function() { + finish(audio); // try to use it even though it is not necessarily ready to play + }, 10000); + } else { + return fail(); + } + }; + Module['preloadPlugins'].push(audioPlugin); + + // Canvas event setup + + var canvas = Module['canvas']; + function pointerLockChange() { + Browser.pointerLock = document['pointerLockElement'] === canvas || + document['mozPointerLockElement'] === canvas || + document['webkitPointerLockElement'] === canvas || + document['msPointerLockElement'] === canvas; + } + if (canvas) { + // forced aspect ratio can be enabled by defining 'forcedAspectRatio' on Module + // Module['forcedAspectRatio'] = 4 / 3; + + canvas.requestPointerLock = canvas['requestPointerLock'] || + canvas['mozRequestPointerLock'] || + canvas['webkitRequestPointerLock'] || + canvas['msRequestPointerLock'] || + function(){}; + canvas.exitPointerLock = document['exitPointerLock'] || + document['mozExitPointerLock'] || + document['webkitExitPointerLock'] || + document['msExitPointerLock'] || + function(){}; // no-op if function does not exist + canvas.exitPointerLock = canvas.exitPointerLock.bind(document); + + + document.addEventListener('pointerlockchange', pointerLockChange, false); + document.addEventListener('mozpointerlockchange', pointerLockChange, false); + document.addEventListener('webkitpointerlockchange', pointerLockChange, false); + document.addEventListener('mspointerlockchange', pointerLockChange, false); + + if (Module['elementPointerLock']) { + canvas.addEventListener("click", function(ev) { + if (!Browser.pointerLock && canvas.requestPointerLock) { + canvas.requestPointerLock(); + ev.preventDefault(); + } + }, false); + } + } + },createContext:function (canvas, useWebGL, setInModule, webGLContextAttributes) { + if (useWebGL && Module.ctx) return Module.ctx; // no need to recreate singleton GL context + + var ctx; + var errorInfo = '?'; + function onContextCreationError(event) { + errorInfo = event.statusMessage || errorInfo; + } + try { + if (useWebGL) { + var contextAttributes = { + antialias: false, + alpha: false + }; + + if (webGLContextAttributes) { + for (var attribute in webGLContextAttributes) { + contextAttributes[attribute] = webGLContextAttributes[attribute]; + } + } + + + canvas.addEventListener('webglcontextcreationerror', onContextCreationError, false); + try { + ['experimental-webgl', 'webgl'].some(function(webglId) { + return ctx = canvas.getContext(webglId, contextAttributes); + }); + } finally { + canvas.removeEventListener('webglcontextcreationerror', onContextCreationError, false); + } + } else { + ctx = canvas.getContext('2d'); + } + if (!ctx) throw ':('; + } catch (e) { + Module.print('Could not create canvas: ' + [errorInfo, e]); + return null; + } + if (useWebGL) { + // possible GL_DEBUG entry point: ctx = wrapDebugGL(ctx); + + // Set the background of the WebGL canvas to black + canvas.style.backgroundColor = "black"; + } + if (setInModule) { + if (!useWebGL) assert(typeof GLctx === 'undefined', 'cannot set in module if GLctx is used, but we are a non-GL context that would replace it'); + Module.ctx = ctx; + if (useWebGL) GLctx = ctx; + Module.useWebGL = useWebGL; + Browser.moduleContextCreatedCallbacks.forEach(function(callback) { callback() }); + Browser.init(); + } + return ctx; + },destroyContext:function (canvas, useWebGL, setInModule) {},fullScreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullScreen:function (lockPointer, resizeCanvas) { + Browser.lockPointer = lockPointer; + Browser.resizeCanvas = resizeCanvas; + if (typeof Browser.lockPointer === 'undefined') Browser.lockPointer = true; + if (typeof Browser.resizeCanvas === 'undefined') Browser.resizeCanvas = false; + + var canvas = Module['canvas']; + function fullScreenChange() { + Browser.isFullScreen = false; + var canvasContainer = canvas.parentNode; + if ((document['webkitFullScreenElement'] || document['webkitFullscreenElement'] || + document['mozFullScreenElement'] || document['mozFullscreenElement'] || + document['fullScreenElement'] || document['fullscreenElement'] || + document['msFullScreenElement'] || document['msFullscreenElement'] || + document['webkitCurrentFullScreenElement']) === canvasContainer) { + canvas.cancelFullScreen = document['cancelFullScreen'] || + document['mozCancelFullScreen'] || + document['webkitCancelFullScreen'] || + document['msExitFullscreen'] || + document['exitFullscreen'] || + function() {}; + canvas.cancelFullScreen = canvas.cancelFullScreen.bind(document); + if (Browser.lockPointer) canvas.requestPointerLock(); + Browser.isFullScreen = true; + if (Browser.resizeCanvas) Browser.setFullScreenCanvasSize(); + } else { + + // remove the full screen specific parent of the canvas again to restore the HTML structure from before going full screen + canvasContainer.parentNode.insertBefore(canvas, canvasContainer); + canvasContainer.parentNode.removeChild(canvasContainer); + + if (Browser.resizeCanvas) Browser.setWindowedCanvasSize(); + } + if (Module['onFullScreen']) Module['onFullScreen'](Browser.isFullScreen); + Browser.updateCanvasDimensions(canvas); + } + + if (!Browser.fullScreenHandlersInstalled) { + Browser.fullScreenHandlersInstalled = true; + document.addEventListener('fullscreenchange', fullScreenChange, false); + document.addEventListener('mozfullscreenchange', fullScreenChange, false); + document.addEventListener('webkitfullscreenchange', fullScreenChange, false); + document.addEventListener('MSFullscreenChange', fullScreenChange, false); + } + + // create a new parent to ensure the canvas has no siblings. this allows browsers to optimize full screen performance when its parent is the full screen root + var canvasContainer = document.createElement("div"); + canvas.parentNode.insertBefore(canvasContainer, canvas); + canvasContainer.appendChild(canvas); + + // use parent of canvas as full screen root to allow aspect ratio correction (Firefox stretches the root to screen size) + canvasContainer.requestFullScreen = canvasContainer['requestFullScreen'] || + canvasContainer['mozRequestFullScreen'] || + canvasContainer['msRequestFullscreen'] || + (canvasContainer['webkitRequestFullScreen'] ? function() { canvasContainer['webkitRequestFullScreen'](Element['ALLOW_KEYBOARD_INPUT']) } : null); + canvasContainer.requestFullScreen(); + },nextRAF:0,fakeRequestAnimationFrame:function (func) { + // try to keep 60fps between calls to here + var now = Date.now(); + if (Browser.nextRAF === 0) { + Browser.nextRAF = now + 1000/60; + } else { + while (now + 2 >= Browser.nextRAF) { // fudge a little, to avoid timer jitter causing us to do lots of delay:0 + Browser.nextRAF += 1000/60; + } + } + var delay = Math.max(Browser.nextRAF - now, 0); + setTimeout(func, delay); + },requestAnimationFrame:function requestAnimationFrame(func) { + if (typeof window === 'undefined') { // Provide fallback to setTimeout if window is undefined (e.g. in Node.js) + Browser.fakeRequestAnimationFrame(func); + } else { + if (!window.requestAnimationFrame) { + window.requestAnimationFrame = window['requestAnimationFrame'] || + window['mozRequestAnimationFrame'] || + window['webkitRequestAnimationFrame'] || + window['msRequestAnimationFrame'] || + window['oRequestAnimationFrame'] || + Browser.fakeRequestAnimationFrame; + } + window.requestAnimationFrame(func); + } + },safeCallback:function (func) { + return function() { + if (!ABORT) return func.apply(null, arguments); + }; + },safeRequestAnimationFrame:function (func) { + return Browser.requestAnimationFrame(function() { + if (!ABORT) func(); + }); + },safeSetTimeout:function (func, timeout) { + Module['noExitRuntime'] = true; + return setTimeout(function() { + if (!ABORT) func(); + }, timeout); + },safeSetInterval:function (func, timeout) { + Module['noExitRuntime'] = true; + return setInterval(function() { + if (!ABORT) func(); + }, timeout); + },getMimetype:function (name) { + return { + 'jpg': 'image/jpeg', + 'jpeg': 'image/jpeg', + 'png': 'image/png', + 'bmp': 'image/bmp', + 'ogg': 'audio/ogg', + 'wav': 'audio/wav', + 'mp3': 'audio/mpeg' + }[name.substr(name.lastIndexOf('.')+1)]; + },getUserMedia:function (func) { + if(!window.getUserMedia) { + window.getUserMedia = navigator['getUserMedia'] || + navigator['mozGetUserMedia']; + } + window.getUserMedia(func); + },getMovementX:function (event) { + return event['movementX'] || + event['mozMovementX'] || + event['webkitMovementX'] || + 0; + },getMovementY:function (event) { + return event['movementY'] || + event['mozMovementY'] || + event['webkitMovementY'] || + 0; + },getMouseWheelDelta:function (event) { + var delta = 0; + switch (event.type) { + case 'DOMMouseScroll': + delta = event.detail; + break; + case 'mousewheel': + delta = -event.wheelDelta; + break; + case 'wheel': + delta = event.deltaY; + break; + default: + throw 'unrecognized mouse wheel event: ' + event.type; + } + return Math.max(-1, Math.min(1, delta)); + },mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function (event) { // event should be mousemove, mousedown or mouseup + if (Browser.pointerLock) { + // When the pointer is locked, calculate the coordinates + // based on the movement of the mouse. + // Workaround for Firefox bug 764498 + if (event.type != 'mousemove' && + ('mozMovementX' in event)) { + Browser.mouseMovementX = Browser.mouseMovementY = 0; + } else { + Browser.mouseMovementX = Browser.getMovementX(event); + Browser.mouseMovementY = Browser.getMovementY(event); + } + + // check if SDL is available + if (typeof SDL != "undefined") { + Browser.mouseX = SDL.mouseX + Browser.mouseMovementX; + Browser.mouseY = SDL.mouseY + Browser.mouseMovementY; + } else { + // just add the mouse delta to the current absolut mouse position + // FIXME: ideally this should be clamped against the canvas size and zero + Browser.mouseX += Browser.mouseMovementX; + Browser.mouseY += Browser.mouseMovementY; + } + } else { + // Otherwise, calculate the movement based on the changes + // in the coordinates. + var rect = Module["canvas"].getBoundingClientRect(); + var cw = Module["canvas"].width; + var ch = Module["canvas"].height; + + // Neither .scrollX or .pageXOffset are defined in a spec, but + // we prefer .scrollX because it is currently in a spec draft. + // (see: http://www.w3.org/TR/2013/WD-cssom-view-20131217/) + var scrollX = ((typeof window.scrollX !== 'undefined') ? window.scrollX : window.pageXOffset); + var scrollY = ((typeof window.scrollY !== 'undefined') ? window.scrollY : window.pageYOffset); + // If this assert lands, it's likely because the browser doesn't support scrollX or pageXOffset + // and we have no viable fallback. + assert((typeof scrollX !== 'undefined') && (typeof scrollY !== 'undefined'), 'Unable to retrieve scroll position, mouse positions likely broken.'); + + if (event.type === 'touchstart' || event.type === 'touchend' || event.type === 'touchmove') { + var touch = event.touch; + if (touch === undefined) { + return; // the "touch" property is only defined in SDL + + } + var adjustedX = touch.pageX - (scrollX + rect.left); + var adjustedY = touch.pageY - (scrollY + rect.top); + + adjustedX = adjustedX * (cw / rect.width); + adjustedY = adjustedY * (ch / rect.height); + + var coords = { x: adjustedX, y: adjustedY }; + + if (event.type === 'touchstart') { + Browser.lastTouches[touch.identifier] = coords; + Browser.touches[touch.identifier] = coords; + } else if (event.type === 'touchend' || event.type === 'touchmove') { + Browser.lastTouches[touch.identifier] = Browser.touches[touch.identifier]; + Browser.touches[touch.identifier] = { x: adjustedX, y: adjustedY }; + } + return; + } + + var x = event.pageX - (scrollX + rect.left); + var y = event.pageY - (scrollY + rect.top); + + // the canvas might be CSS-scaled compared to its backbuffer; + // SDL-using content will want mouse coordinates in terms + // of backbuffer units. + x = x * (cw / rect.width); + y = y * (ch / rect.height); + + Browser.mouseMovementX = x - Browser.mouseX; + Browser.mouseMovementY = y - Browser.mouseY; + Browser.mouseX = x; + Browser.mouseY = y; + } + },xhrLoad:function (url, onload, onerror) { + var xhr = new XMLHttpRequest(); + xhr.open('GET', url, true); + xhr.responseType = 'arraybuffer'; + xhr.onload = function xhr_onload() { + if (xhr.status == 200 || (xhr.status == 0 && xhr.response)) { // file URLs can return 0 + onload(xhr.response); + } else { + onerror(); + } + }; + xhr.onerror = onerror; + xhr.send(null); + },asyncLoad:function (url, onload, onerror, noRunDep) { + Browser.xhrLoad(url, function(arrayBuffer) { + assert(arrayBuffer, 'Loading data file "' + url + '" failed (no arrayBuffer).'); + onload(new Uint8Array(arrayBuffer)); + if (!noRunDep) removeRunDependency('al ' + url); + }, function(event) { + if (onerror) { + onerror(); + } else { + throw 'Loading data file "' + url + '" failed.'; + } + }); + if (!noRunDep) addRunDependency('al ' + url); + },resizeListeners:[],updateResizeListeners:function () { + var canvas = Module['canvas']; + Browser.resizeListeners.forEach(function(listener) { + listener(canvas.width, canvas.height); + }); + },setCanvasSize:function (width, height, noUpdates) { + var canvas = Module['canvas']; + Browser.updateCanvasDimensions(canvas, width, height); + if (!noUpdates) Browser.updateResizeListeners(); + },windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:function () { + // check if SDL is available + if (typeof SDL != "undefined") { + var flags = HEAPU32[((SDL.screen+Runtime.QUANTUM_SIZE*0)>>2)]; + flags = flags | 0x00800000; // set SDL_FULLSCREEN flag + HEAP32[((SDL.screen+Runtime.QUANTUM_SIZE*0)>>2)]=flags + } + Browser.updateResizeListeners(); + },setWindowedCanvasSize:function () { + // check if SDL is available + if (typeof SDL != "undefined") { + var flags = HEAPU32[((SDL.screen+Runtime.QUANTUM_SIZE*0)>>2)]; + flags = flags & ~0x00800000; // clear SDL_FULLSCREEN flag + HEAP32[((SDL.screen+Runtime.QUANTUM_SIZE*0)>>2)]=flags + } + Browser.updateResizeListeners(); + },updateCanvasDimensions:function (canvas, wNative, hNative) { + if (wNative && hNative) { + canvas.widthNative = wNative; + canvas.heightNative = hNative; + } else { + wNative = canvas.widthNative; + hNative = canvas.heightNative; + } + var w = wNative; + var h = hNative; + if (Module['forcedAspectRatio'] && Module['forcedAspectRatio'] > 0) { + if (w/h < Module['forcedAspectRatio']) { + w = Math.round(h * Module['forcedAspectRatio']); + } else { + h = Math.round(w / Module['forcedAspectRatio']); + } + } + if (((document['webkitFullScreenElement'] || document['webkitFullscreenElement'] || + document['mozFullScreenElement'] || document['mozFullscreenElement'] || + document['fullScreenElement'] || document['fullscreenElement'] || + document['msFullScreenElement'] || document['msFullscreenElement'] || + document['webkitCurrentFullScreenElement']) === canvas.parentNode) && (typeof screen != 'undefined')) { + var factor = Math.min(screen.width / w, screen.height / h); + w = Math.round(w * factor); + h = Math.round(h * factor); + } + if (Browser.resizeCanvas) { + if (canvas.width != w) canvas.width = w; + if (canvas.height != h) canvas.height = h; + if (typeof canvas.style != 'undefined') { + canvas.style.removeProperty( "width"); + canvas.style.removeProperty("height"); + } + } else { + if (canvas.width != wNative) canvas.width = wNative; + if (canvas.height != hNative) canvas.height = hNative; + if (typeof canvas.style != 'undefined') { + if (w != wNative || h != hNative) { + canvas.style.setProperty( "width", w + "px", "important"); + canvas.style.setProperty("height", h + "px", "important"); + } else { + canvas.style.removeProperty( "width"); + canvas.style.removeProperty("height"); + } + } + } + }}; + + function _rmdir(path) { + // int rmdir(const char *path); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/rmdir.html + path = Pointer_stringify(path); + try { + FS.rmdir(path); + return 0; + } catch (e) { + FS.handleFSError(e); + return -1; + } + } + + function _munmap(start, num) { + if (!_mmap.mappings) _mmap.mappings = {}; + // TODO: support unmmap'ing parts of allocations + var info = _mmap.mappings[start]; + if (!info) return 0; + if (num == info.num) { + _mmap.mappings[start] = null; + if (info.allocated) { + _free(info.malloc); + } + } + return 0; + } + + function _fstat(fildes, buf) { + // int fstat(int fildes, struct stat *buf); + // http://pubs.opengroup.org/onlinepubs/7908799/xsh/fstat.html + var stream = FS.getStream(fildes); + if (!stream) { + ___setErrNo(ERRNO_CODES.EBADF); + return -1; + } + return _stat(stream.path, buf); + } + + + function _malloc(bytes) { + /* Over-allocate to make sure it is byte-aligned by 8. + * This will leak memory, but this is only the dummy + * implementation (replaced by dlmalloc normally) so + * not an issue. + */ + var ptr = Runtime.dynamicAlloc(bytes + 8); + return (ptr+8) & 0xFFFFFFF8; + } + Module["_malloc"] = _malloc; + + var ___tm_current=allocate(44, "i8", ALLOC_STATIC); + + + var ___tm_timezone=allocate(intArrayFromString("GMT"), "i8", ALLOC_STATIC); + + + var _tzname=allocate(8, "i32*", ALLOC_STATIC); + + var _daylight=allocate(1, "i32*", ALLOC_STATIC); + + var _timezone=allocate(1, "i32*", ALLOC_STATIC);function _tzset() { + // TODO: Use (malleable) environment variables instead of system settings. + if (_tzset.called) return; + _tzset.called = true; + + HEAP32[((_timezone)>>2)]=-(new Date()).getTimezoneOffset() * 60; + + var winter = new Date(2000, 0, 1); + var summer = new Date(2000, 6, 1); + HEAP32[((_daylight)>>2)]=Number(winter.getTimezoneOffset() != summer.getTimezoneOffset()); + + var winterName = 'GMT'; // XXX do not rely on browser timezone info, it is very unpredictable | winter.toString().match(/\(([A-Z]+)\)/)[1]; + var summerName = 'GMT'; // XXX do not rely on browser timezone info, it is very unpredictable | summer.toString().match(/\(([A-Z]+)\)/)[1]; + var winterNamePtr = allocate(intArrayFromString(winterName), 'i8', ALLOC_NORMAL); + var summerNamePtr = allocate(intArrayFromString(summerName), 'i8', ALLOC_NORMAL); + HEAP32[((_tzname)>>2)]=winterNamePtr; + HEAP32[(((_tzname)+(4))>>2)]=summerNamePtr; + }function _localtime_r(time, tmPtr) { + _tzset(); + var date = new Date(HEAP32[((time)>>2)]*1000); + HEAP32[((tmPtr)>>2)]=date.getSeconds(); + HEAP32[(((tmPtr)+(4))>>2)]=date.getMinutes(); + HEAP32[(((tmPtr)+(8))>>2)]=date.getHours(); + HEAP32[(((tmPtr)+(12))>>2)]=date.getDate(); + HEAP32[(((tmPtr)+(16))>>2)]=date.getMonth(); + HEAP32[(((tmPtr)+(20))>>2)]=date.getFullYear()-1900; + HEAP32[(((tmPtr)+(24))>>2)]=date.getDay(); + + var start = new Date(date.getFullYear(), 0, 1); + var yday = Math.floor((date.getTime() - start.getTime()) / (1000 * 60 * 60 * 24)); + HEAP32[(((tmPtr)+(28))>>2)]=yday; + HEAP32[(((tmPtr)+(36))>>2)]=start.getTimezoneOffset() * 60; + + var dst = Number(start.getTimezoneOffset() != date.getTimezoneOffset()); + HEAP32[(((tmPtr)+(32))>>2)]=dst; + + HEAP32[(((tmPtr)+(40))>>2)]=___tm_timezone; + + return tmPtr; + }function _localtime(time) { + return _localtime_r(time, ___tm_current); + } + + function _fcntl(fildes, cmd, varargs, dup2) { + // int fcntl(int fildes, int cmd, ...); + // http://pubs.opengroup.org/onlinepubs/009695399/functions/fcntl.html + var stream = FS.getStream(fildes); + if (!stream) { + ___setErrNo(ERRNO_CODES.EBADF); + return -1; + } + switch (cmd) { + case 0: + var arg = HEAP32[((varargs)>>2)]; + if (arg < 0) { + ___setErrNo(ERRNO_CODES.EINVAL); + return -1; + } + var newStream; + try { + newStream = FS.open(stream.path, stream.flags, 0, arg); + } catch (e) { + FS.handleFSError(e); + return -1; + } + return newStream.fd; + case 1: + case 2: + return 0; // FD_CLOEXEC makes no sense for a single process. + case 3: + return stream.flags; + case 4: + var arg = HEAP32[((varargs)>>2)]; + stream.flags |= arg; + return 0; + case 12: + case 12: + var arg = HEAP32[((varargs)>>2)]; + var offset = 0; + // We're always unlocked. + HEAP16[(((arg)+(offset))>>1)]=2; + return 0; + case 13: + case 14: + case 13: + case 14: + // Pretend that the locking is successful. + return 0; + case 8: + case 9: + // These are for sockets. We don't have them fully implemented yet. + ___setErrNo(ERRNO_CODES.EINVAL); + return -1; + default: + ___setErrNo(ERRNO_CODES.EINVAL); + return -1; + } + // Should never be reached. Only to silence strict warnings. + return -1; + } + + + Module["_bitshift64Lshr"] = _bitshift64Lshr; + + + function _recv(fd, buf, len, flags) { + var sock = SOCKFS.getSocket(fd); + if (!sock) { + ___setErrNo(ERRNO_CODES.EBADF); + return -1; + } + // TODO honor flags + return _read(fd, buf, len); + } + + function _pread(fildes, buf, nbyte, offset) { + // ssize_t pread(int fildes, void *buf, size_t nbyte, off_t offset); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/read.html + var stream = FS.getStream(fildes); + if (!stream) { + ___setErrNo(ERRNO_CODES.EBADF); + return -1; + } + try { + var slab = HEAP8; + return FS.read(stream, slab, buf, nbyte, offset); + } catch (e) { + FS.handleFSError(e); + return -1; + } + }function _read(fildes, buf, nbyte) { + // ssize_t read(int fildes, void *buf, size_t nbyte); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/read.html + var stream = FS.getStream(fildes); + if (!stream) { + ___setErrNo(ERRNO_CODES.EBADF); + return -1; + } + + + try { + var slab = HEAP8; + return FS.read(stream, slab, buf, nbyte); + } catch (e) { + FS.handleFSError(e); + return -1; + } + } + + function _time(ptr) { + var ret = Math.floor(Date.now()/1000); + if (ptr) { + HEAP32[((ptr)>>2)]=ret; + } + return ret; + } + + function _getcwd(buf, size) { + // char *getcwd(char *buf, size_t size); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/getcwd.html + if (size == 0) { + ___setErrNo(ERRNO_CODES.EINVAL); + return 0; + } + var cwd = FS.cwd(); + if (size < cwd.length + 1) { + ___setErrNo(ERRNO_CODES.ERANGE); + return 0; + } else { + writeAsciiToMemory(cwd, buf); + return buf; + } + } + + function _getpid() { + return _getgid.apply(null, arguments) + } + + + + + + var _environ=allocate(1, "i32*", ALLOC_STATIC);var ___environ=_environ;function ___buildEnvironment(env) { + // WARNING: Arbitrary limit! + var MAX_ENV_VALUES = 64; + var TOTAL_ENV_SIZE = 1024; + + // Statically allocate memory for the environment. + var poolPtr; + var envPtr; + if (!___buildEnvironment.called) { + ___buildEnvironment.called = true; + // Set default values. Use string keys for Closure Compiler compatibility. + ENV['USER'] = 'root'; + ENV['PATH'] = '/'; + ENV['PWD'] = '/'; + ENV['HOME'] = '/home/emscripten'; + ENV['LANG'] = 'en_US.UTF-8'; + ENV['_'] = './this.program'; + // Allocate memory. + poolPtr = allocate(TOTAL_ENV_SIZE, 'i8', ALLOC_STATIC); + envPtr = allocate(MAX_ENV_VALUES * 4, + 'i8*', ALLOC_STATIC); + HEAP32[((envPtr)>>2)]=poolPtr; + HEAP32[((_environ)>>2)]=envPtr; + } else { + envPtr = HEAP32[((_environ)>>2)]; + poolPtr = HEAP32[((envPtr)>>2)]; + } + + // Collect key=value lines. + var strings = []; + var totalSize = 0; + for (var key in env) { + if (typeof env[key] === 'string') { + var line = key + '=' + env[key]; + strings.push(line); + totalSize += line.length; + } + } + if (totalSize > TOTAL_ENV_SIZE) { + throw new Error('Environment size exceeded TOTAL_ENV_SIZE!'); + } + + // Make new. + var ptrSize = 4; + for (var i = 0; i < strings.length; i++) { + var line = strings[i]; + writeAsciiToMemory(line, poolPtr); + HEAP32[(((envPtr)+(i * ptrSize))>>2)]=poolPtr; + poolPtr += line.length + 1; + } + HEAP32[(((envPtr)+(strings.length * ptrSize))>>2)]=0; + }var ENV={};function _getenv(name) { + // char *getenv(const char *name); + // http://pubs.opengroup.org/onlinepubs/009695399/functions/getenv.html + if (name === 0) return 0; + name = Pointer_stringify(name); + if (!ENV.hasOwnProperty(name)) return 0; + + if (_getenv.ret) _free(_getenv.ret); + _getenv.ret = allocate(intArrayFromString(ENV[name]), 'i8', ALLOC_NORMAL); + return _getenv.ret; + } + + function _gettimeofday(ptr) { + var now = Date.now(); + HEAP32[((ptr)>>2)]=Math.floor(now/1000); // seconds + HEAP32[(((ptr)+(4))>>2)]=Math.floor((now-1000*Math.floor(now/1000))*1000); // microseconds + return 0; + } + + + function _chown(path, owner, group, dontResolveLastLink) { + // int chown(const char *path, uid_t owner, gid_t group); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/chown.html + // We don't support multiple users, so changing ownership makes no sense. + // NOTE: The path argument may be a string, to simplify fchown(). + // NOTE: dontResolveLastLink is a shortcut for lchown(). It should never be + // used in client code. + if (typeof path !== 'string') path = Pointer_stringify(path); + try { + FS.chown(path, owner, group); + return 0; + } catch (e) { + FS.handleFSError(e); + return -1; + } + }function _fchown(fildes, owner, group) { + // int fchown(int fildes, uid_t owner, gid_t group); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/fchown.html + try { + FS.fchown(fildes, owner, group); + return 0; + } catch (e) { + FS.handleFSError(e); + return -1; + } + } + + + function _emscripten_memcpy_big(dest, src, num) { + HEAPU8.set(HEAPU8.subarray(src, src+num), dest); + return dest; + } + Module["_memcpy"] = _memcpy; + + function _fsync(fildes) { + // int fsync(int fildes); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/fsync.html + var stream = FS.getStream(fildes); + if (stream) { + // We write directly to the file system, so there's nothing to do here. + return 0; + } else { + ___setErrNo(ERRNO_CODES.EBADF); + return -1; + } + } + + function _sbrk(bytes) { + // Implement a Linux-like 'memory area' for our 'process'. + // Changes the size of the memory area by |bytes|; returns the + // address of the previous top ('break') of the memory area + // We control the "dynamic" memory - DYNAMIC_BASE to DYNAMICTOP + var self = _sbrk; + if (!self.called) { + DYNAMICTOP = alignMemoryPage(DYNAMICTOP); // make sure we start out aligned + self.called = true; + assert(Runtime.dynamicAlloc); + self.alloc = Runtime.dynamicAlloc; + Runtime.dynamicAlloc = function() { abort('cannot dynamically allocate, sbrk now has control') }; + } + var ret = DYNAMICTOP; + if (bytes != 0) self.alloc(bytes); + return ret; // Previous break location. + } + + + Module["_memmove"] = _memmove; + + function ___errno_location() { + return ___errno_state; + } + + + function _strerror_r(errnum, strerrbuf, buflen) { + if (errnum in ERRNO_MESSAGES) { + if (ERRNO_MESSAGES[errnum].length > buflen - 1) { + return ___setErrNo(ERRNO_CODES.ERANGE); + } else { + var msg = ERRNO_MESSAGES[errnum]; + writeAsciiToMemory(msg, strerrbuf); + return 0; + } + } else { + return ___setErrNo(ERRNO_CODES.EINVAL); + } + }function _strerror(errnum) { + if (!_strerror.buffer) _strerror.buffer = _malloc(256); + _strerror_r(errnum, _strerror.buffer, 256); + return _strerror.buffer; + } + + function _mmap(start, num, prot, flags, fd, offset) { + /* FIXME: Since mmap is normally implemented at the kernel level, + * this implementation simply uses malloc underneath the call to + * mmap. + */ + var MAP_PRIVATE = 2; + var ptr; + var allocated = false; + + if (!_mmap.mappings) _mmap.mappings = {}; + + if (fd == -1) { + ptr = _malloc(num); + if (!ptr) return -1; + _memset(ptr, 0, num); + allocated = true; + } else { + var info = FS.getStream(fd); + if (!info) return -1; + try { + var res = FS.mmap(info, HEAPU8, start, num, offset, prot, flags); + ptr = res.ptr; + allocated = res.allocated; + } catch (e) { + FS.handleFSError(e); + return -1; + } + } + + _mmap.mappings[ptr] = { malloc: ptr, num: num, allocated: allocated }; + return ptr; + } + + + function _truncate(path, length) { + // int truncate(const char *path, off_t length); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/truncate.html + // NOTE: The path argument may be a string, to simplify ftruncate(). + if (typeof path !== 'string') path = Pointer_stringify(path); + try { + FS.truncate(path, length); + return 0; + } catch (e) { + FS.handleFSError(e); + return -1; + } + }function _ftruncate(fildes, length) { + // int ftruncate(int fildes, off_t length); + // http://pubs.opengroup.org/onlinepubs/000095399/functions/ftruncate.html + try { + FS.ftruncate(fildes, length); + return 0; + } catch (e) { + FS.handleFSError(e); + return -1; + } + } + + function _utimes() { throw 'utimes not implemented' } +FS.staticInit();__ATINIT__.unshift({ func: function() { if (!Module["noFSInit"] && !FS.init.initialized) FS.init() } });__ATMAIN__.push({ func: function() { FS.ignorePermissions = false } });__ATEXIT__.push({ func: function() { FS.quit() } });Module["FS_createFolder"] = FS.createFolder;Module["FS_createPath"] = FS.createPath;Module["FS_createDataFile"] = FS.createDataFile;Module["FS_createPreloadedFile"] = FS.createPreloadedFile;Module["FS_createLazyFile"] = FS.createLazyFile;Module["FS_createLink"] = FS.createLink;Module["FS_createDevice"] = FS.createDevice; +___errno_state = Runtime.staticAlloc(4); HEAP32[((___errno_state)>>2)]=0; +__ATINIT__.unshift({ func: function() { TTY.init() } });__ATEXIT__.push({ func: function() { TTY.shutdown() } });TTY.utf8 = new Runtime.UTF8Processor(); +if (ENVIRONMENT_IS_NODE) { var fs = require("fs"); NODEFS.staticInit(); } +__ATINIT__.push({ func: function() { SOCKFS.root = FS.mount(SOCKFS, {}, null); } }); +Module["requestFullScreen"] = function Module_requestFullScreen(lockPointer, resizeCanvas) { Browser.requestFullScreen(lockPointer, resizeCanvas) }; + Module["requestAnimationFrame"] = function Module_requestAnimationFrame(func) { Browser.requestAnimationFrame(func) }; + Module["setCanvasSize"] = function Module_setCanvasSize(width, height, noUpdates) { Browser.setCanvasSize(width, height, noUpdates) }; + Module["pauseMainLoop"] = function Module_pauseMainLoop() { Browser.mainLoop.pause() }; + Module["resumeMainLoop"] = function Module_resumeMainLoop() { Browser.mainLoop.resume() }; + Module["getUserMedia"] = function Module_getUserMedia() { Browser.getUserMedia() } +___buildEnvironment(ENV); +STACK_BASE = STACKTOP = Runtime.alignMemory(STATICTOP); + +staticSealed = true; // seal the static portion of memory + +STACK_MAX = STACK_BASE + 5242880; + +DYNAMIC_BASE = DYNAMICTOP = Runtime.alignMemory(STACK_MAX); + +assert(DYNAMIC_BASE < TOTAL_MEMORY, "TOTAL_MEMORY not big enough for stack"); + + var ctlz_i8 = allocate([8,7,6,6,5,5,5,5,4,4,4,4,4,4,4,4,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_DYNAMIC); + var cttz_i8 = allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0], "i8", ALLOC_DYNAMIC); + + var Math_min = Math.min; +function nullFunc_iiii(x) { Module["printErr"]("Invalid function pointer called with signature 'iiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info."); abort(x) } + +function nullFunc_i(x) { Module["printErr"]("Invalid function pointer called with signature 'i'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info."); abort(x) } + +function nullFunc_vi(x) { Module["printErr"]("Invalid function pointer called with signature 'vi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info."); abort(x) } + +function nullFunc_vii(x) { Module["printErr"]("Invalid function pointer called with signature 'vii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info."); abort(x) } + +function nullFunc_iiiiiii(x) { Module["printErr"]("Invalid function pointer called with signature 'iiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info."); abort(x) } + +function nullFunc_ii(x) { Module["printErr"]("Invalid function pointer called with signature 'ii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info."); abort(x) } + +function nullFunc_viii(x) { Module["printErr"]("Invalid function pointer called with signature 'viii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info."); abort(x) } + +function nullFunc_v(x) { Module["printErr"]("Invalid function pointer called with signature 'v'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info."); abort(x) } + +function nullFunc_iiiii(x) { Module["printErr"]("Invalid function pointer called with signature 'iiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info."); abort(x) } + +function nullFunc_viiiiii(x) { Module["printErr"]("Invalid function pointer called with signature 'viiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info."); abort(x) } + +function nullFunc_iii(x) { Module["printErr"]("Invalid function pointer called with signature 'iii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info."); abort(x) } + +function nullFunc_iiiiii(x) { Module["printErr"]("Invalid function pointer called with signature 'iiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info."); abort(x) } + +function nullFunc_viiii(x) { Module["printErr"]("Invalid function pointer called with signature 'viiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info."); abort(x) } + +function invoke_iiii(index,a1,a2,a3) { + try { + return Module["dynCall_iiii"](index,a1,a2,a3); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_i(index) { + try { + return Module["dynCall_i"](index); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_vi(index,a1) { + try { + Module["dynCall_vi"](index,a1); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_vii(index,a1,a2) { + try { + Module["dynCall_vii"](index,a1,a2); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6) { + try { + return Module["dynCall_iiiiiii"](index,a1,a2,a3,a4,a5,a6); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_ii(index,a1) { + try { + return Module["dynCall_ii"](index,a1); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_viii(index,a1,a2,a3) { + try { + Module["dynCall_viii"](index,a1,a2,a3); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_v(index) { + try { + Module["dynCall_v"](index); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_iiiii(index,a1,a2,a3,a4) { + try { + return Module["dynCall_iiiii"](index,a1,a2,a3,a4); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6) { + try { + Module["dynCall_viiiiii"](index,a1,a2,a3,a4,a5,a6); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_iii(index,a1,a2) { + try { + return Module["dynCall_iii"](index,a1,a2); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_iiiiii(index,a1,a2,a3,a4,a5) { + try { + return Module["dynCall_iiiiii"](index,a1,a2,a3,a4,a5); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + +function invoke_viiii(index,a1,a2,a3,a4) { + try { + Module["dynCall_viiii"](index,a1,a2,a3,a4); + } catch(e) { + if (typeof e !== 'number' && e !== 'longjmp') throw e; + asm["setThrew"](1, 0); + } +} + + function asmPrintInt(x, y) { + Module.print('int ' + x + ',' + y);// + ' ' + new Error().stack); + } + function asmPrintFloat(x, y) { + Module.print('float ' + x + ',' + y);// + ' ' + new Error().stack); + } + // EMSCRIPTEN_START_ASM + var asm = (function(global, env, buffer) { + 'use asm'; + var HEAP8 = new global.Int8Array(buffer); + var HEAP16 = new global.Int16Array(buffer); + var HEAP32 = new global.Int32Array(buffer); + var HEAPU8 = new global.Uint8Array(buffer); + var HEAPU16 = new global.Uint16Array(buffer); + var HEAPU32 = new global.Uint32Array(buffer); + var HEAPF32 = new global.Float32Array(buffer); + var HEAPF64 = new global.Float64Array(buffer); + + var STACKTOP=env.STACKTOP|0; + var STACK_MAX=env.STACK_MAX|0; + var tempDoublePtr=env.tempDoublePtr|0; + var ABORT=env.ABORT|0; + var cttz_i8=env.cttz_i8|0; + var ctlz_i8=env.ctlz_i8|0; + + var __THREW__ = 0; + var threwValue = 0; + var setjmpId = 0; + var undef = 0; + var nan = +env.NaN, inf = +env.Infinity; + var tempInt = 0, tempBigInt = 0, tempBigIntP = 0, tempBigIntS = 0, tempBigIntR = 0.0, tempBigIntI = 0, tempBigIntD = 0, tempValue = 0, tempDouble = 0.0; + + var tempRet0 = 0; + var tempRet1 = 0; + var tempRet2 = 0; + var tempRet3 = 0; + var tempRet4 = 0; + var tempRet5 = 0; + var tempRet6 = 0; + var tempRet7 = 0; + var tempRet8 = 0; + var tempRet9 = 0; + var Math_floor=global.Math.floor; + var Math_abs=global.Math.abs; + var Math_sqrt=global.Math.sqrt; + var Math_pow=global.Math.pow; + var Math_cos=global.Math.cos; + var Math_sin=global.Math.sin; + var Math_tan=global.Math.tan; + var Math_acos=global.Math.acos; + var Math_asin=global.Math.asin; + var Math_atan=global.Math.atan; + var Math_atan2=global.Math.atan2; + var Math_exp=global.Math.exp; + var Math_log=global.Math.log; + var Math_ceil=global.Math.ceil; + var Math_imul=global.Math.imul; + var abort=env.abort; + var assert=env.assert; + var asmPrintInt=env.asmPrintInt; + var asmPrintFloat=env.asmPrintFloat; + var Math_min=env.min; + var nullFunc_iiii=env.nullFunc_iiii; + var nullFunc_i=env.nullFunc_i; + var nullFunc_vi=env.nullFunc_vi; + var nullFunc_vii=env.nullFunc_vii; + var nullFunc_iiiiiii=env.nullFunc_iiiiiii; + var nullFunc_ii=env.nullFunc_ii; + var nullFunc_viii=env.nullFunc_viii; + var nullFunc_v=env.nullFunc_v; + var nullFunc_iiiii=env.nullFunc_iiiii; + var nullFunc_viiiiii=env.nullFunc_viiiiii; + var nullFunc_iii=env.nullFunc_iii; + var nullFunc_iiiiii=env.nullFunc_iiiiii; + var nullFunc_viiii=env.nullFunc_viiii; + var invoke_iiii=env.invoke_iiii; + var invoke_i=env.invoke_i; + var invoke_vi=env.invoke_vi; + var invoke_vii=env.invoke_vii; + var invoke_iiiiiii=env.invoke_iiiiiii; + var invoke_ii=env.invoke_ii; + var invoke_viii=env.invoke_viii; + var invoke_v=env.invoke_v; + var invoke_iiiii=env.invoke_iiiii; + var invoke_viiiiii=env.invoke_viiiiii; + var invoke_iii=env.invoke_iii; + var invoke_iiiiii=env.invoke_iiiiii; + var invoke_viiii=env.invoke_viiii; + var _getgid=env._getgid; + var _sleep=env._sleep; + var _send=env._send; + var _getcwd=env._getcwd; + var _chown=env._chown; + var _lseek=env._lseek; + var ___setErrNo=env.___setErrNo; + var _access=env._access; + var _fstat=env._fstat; + var _chmod=env._chmod; + var _rmdir=env._rmdir; + var _truncate=env._truncate; + var _usleep=env._usleep; + var _utimes=env._utimes; + var ___buildEnvironment=env.___buildEnvironment; + var _fflush=env._fflush; + var _pwrite=env._pwrite; + var _strerror_r=env._strerror_r; + var _localtime_r=env._localtime_r; + var _tzset=env._tzset; + var _open=env._open; + var _getpid=env._getpid; + var _sbrk=env._sbrk; + var _fcntl=env._fcntl; + var _emscripten_memcpy_big=env._emscripten_memcpy_big; + var _unlink=env._unlink; + var _sysconf=env._sysconf; + var _fchmod=env._fchmod; + var _close=env._close; + var _ftruncate=env._ftruncate; + var _gettimeofday=env._gettimeofday; + var _munmap=env._munmap; + var _pread=env._pread; + var _getenv=env._getenv; + var _write=env._write; + var _fsync=env._fsync; + var ___errno_location=env.___errno_location; + var _stat=env._stat; + var _recv=env._recv; + var _geteuid=env._geteuid; + var _fchown=env._fchown; + var _read=env._read; + var _abort=env._abort; + var _time=env._time; + var _mkport=env._mkport; + var _strerror=env._strerror; + var _mknod=env._mknod; + var _mkdir=env._mkdir; + var _mmap=env._mmap; + var _localtime=env._localtime; + var tempFloat = 0.0; + + // EMSCRIPTEN_START_FUNCS + function stackAlloc(size) { + size = size|0; + var ret = 0; + ret = STACKTOP; + STACKTOP = (STACKTOP + size)|0; + STACKTOP = (STACKTOP + 7)&-8; + return ret|0; + } + function stackSave() { + return STACKTOP|0; + } + function stackRestore(top) { + top = top|0; + STACKTOP = top; + } + function setThrew(threw, value) { + threw = threw|0; + value = value|0; + if ((__THREW__|0) == 0) { + __THREW__ = threw; + threwValue = value; + } + } + function copyTempFloat(ptr) { + ptr = ptr|0; + HEAP8[tempDoublePtr>>0] = HEAP8[ptr>>0]; + HEAP8[tempDoublePtr+1>>0] = HEAP8[ptr+1>>0]; + HEAP8[tempDoublePtr+2>>0] = HEAP8[ptr+2>>0]; + HEAP8[tempDoublePtr+3>>0] = HEAP8[ptr+3>>0]; + } + function copyTempDouble(ptr) { + ptr = ptr|0; + HEAP8[tempDoublePtr>>0] = HEAP8[ptr>>0]; + HEAP8[tempDoublePtr+1>>0] = HEAP8[ptr+1>>0]; + HEAP8[tempDoublePtr+2>>0] = HEAP8[ptr+2>>0]; + HEAP8[tempDoublePtr+3>>0] = HEAP8[ptr+3>>0]; + HEAP8[tempDoublePtr+4>>0] = HEAP8[ptr+4>>0]; + HEAP8[tempDoublePtr+5>>0] = HEAP8[ptr+5>>0]; + HEAP8[tempDoublePtr+6>>0] = HEAP8[ptr+6>>0]; + HEAP8[tempDoublePtr+7>>0] = HEAP8[ptr+7>>0]; + } + function setTempRet0(value) { + value = value|0; + tempRet0 = value; + } + function getTempRet0() { + return tempRet0|0; + } + +function _get_character_tokenizer_module($ppModule) { + $ppModule = $ppModule|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $ppModule; + $1 = HEAP32[$0>>2]|0; + HEAP32[$1>>2] = 8; + STACKTOP = sp;return; +} +function _register_character_tokenizer($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $ptr = 0, $token_name = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 4|0; + $ptr = sp; + $token_name = sp + 8|0; + HEAP32[$0>>2] = $db; + dest=$token_name+0|0; src=40+0|0; stop=dest+10|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + _get_character_tokenizer_module($ptr); + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$ptr>>2]|0; + $3 = (_registerTokenizer($1,$token_name,$2)|0); + STACKTOP = sp;return ($3|0); +} +function _registerTokenizer($db,$zName,$p) { + $db = $db|0; + $zName = $zName|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pStmt = 0, $rc = 0, $zSql = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $rc = sp + 12|0; + $pStmt = sp + 16|0; + $zSql = sp + 20|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $zName; + HEAP32[$3>>2] = $p; + HEAP32[$zSql>>2] = 56; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$zSql>>2]|0; + $6 = (_sqlite3_prepare_v2($4,$5,-1,$pStmt,0)|0); + HEAP32[$rc>>2] = $6; + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)!=(0); + if ($8) { + $9 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $9; + $16 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($16|0); + } else { + $10 = HEAP32[$pStmt>>2]|0; + $11 = HEAP32[$2>>2]|0; + (_sqlite3_bind_text($10,1,$11,-1,0)|0); + $12 = HEAP32[$pStmt>>2]|0; + (_sqlite3_bind_blob($12,2,$3,4,0)|0); + $13 = HEAP32[$pStmt>>2]|0; + (_sqlite3_step($13)|0); + $14 = HEAP32[$pStmt>>2]|0; + $15 = (_sqlite3_finalize($14)|0); + HEAP32[$0>>2] = $15; + $16 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($16|0); + } + return 0|0; +} +function _characterCreate($argc,$argv,$ppTokenizer) { + $argc = $argc|0; + $argv = $argv|0; + $ppTokenizer = $ppTokenizer|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $t = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $t = sp + 12|0; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + HEAP32[$3>>2] = $ppTokenizer; + $4 = (_sqlite3_malloc(4)|0); + HEAP32[$t>>2] = $4; + $5 = HEAP32[$t>>2]|0; + $6 = ($5|0)==(0|0); + if ($6) { + HEAP32[$0>>2] = 7; + $10 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($10|0); + } else { + $7 = HEAP32[$t>>2]|0; + ;HEAP32[$7+0>>2]=0|0; + $8 = HEAP32[$t>>2]|0; + $9 = HEAP32[$3>>2]|0; + HEAP32[$9>>2] = $8; + HEAP32[$0>>2] = 0; + $10 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($10|0); + } + return 0|0; +} +function _characterDestroy($pTokenizer) { + $pTokenizer = $pTokenizer|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pTokenizer; + $1 = HEAP32[$0>>2]|0; + _sqlite3_free($1); + STACKTOP = sp;return 0; +} +function _characterOpen($pTokenizer,$pInput,$nBytes,$ppCursor) { + $pTokenizer = $pTokenizer|0; + $pInput = $pInput|0; + $nBytes = $nBytes|0; + $ppCursor = $ppCursor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $c = sp + 16|0; + HEAP32[$1>>2] = $pTokenizer; + HEAP32[$2>>2] = $pInput; + HEAP32[$3>>2] = $nBytes; + HEAP32[$4>>2] = $ppCursor; + $5 = HEAP32[$2>>2]|0; + $6 = ($5|0)==(0|0); + if ($6) { + HEAP32[$3>>2] = 0; + } else { + $7 = HEAP32[$3>>2]|0; + $8 = ($7|0)<(0); + if ($8) { + $9 = HEAP32[$2>>2]|0; + $10 = (_strlen(($9|0))|0); + HEAP32[$3>>2] = $10; + } + } + $11 = (_sqlite3_malloc(24)|0); + HEAP32[$c>>2] = $11; + $12 = HEAP32[$c>>2]|0; + $13 = ($12|0)==(0|0); + if ($13) { + HEAP32[$0>>2] = 7; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } else { + $14 = HEAP32[$c>>2]|0; + $15 = (($14) + 12|0); + HEAP32[$15>>2] = 0; + $16 = HEAP32[$c>>2]|0; + $17 = (($16) + 16|0); + HEAP32[$17>>2] = 0; + $18 = HEAP32[$c>>2]|0; + $19 = (($18) + 20|0); + HEAP32[$19>>2] = 0; + $20 = HEAP32[$3>>2]|0; + $21 = HEAP32[$c>>2]|0; + $22 = (($21) + 8|0); + HEAP32[$22>>2] = $20; + $23 = HEAP32[$2>>2]|0; + $24 = HEAP32[$c>>2]|0; + $25 = (($24) + 4|0); + HEAP32[$25>>2] = $23; + $26 = HEAP32[$c>>2]|0; + $27 = HEAP32[$4>>2]|0; + HEAP32[$27>>2] = $26; + HEAP32[$0>>2] = 0; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } + return 0|0; +} +function _characterClose($pCursor) { + $pCursor = $pCursor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $c = sp; + HEAP32[$0>>2] = $pCursor; + $1 = HEAP32[$0>>2]|0; + HEAP32[$c>>2] = $1; + $2 = HEAP32[$c>>2]|0; + $3 = (($2) + 20|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $11 = HEAP32[$c>>2]|0; + _sqlite3_free($11); + STACKTOP = sp;return 0; + } + $6 = HEAP32[$c>>2]|0; + $7 = (($6) + 20|0); + $8 = HEAP32[$7>>2]|0; + _sqlite3_free($8); + $9 = HEAP32[$c>>2]|0; + $10 = (($9) + 20|0); + HEAP32[$10>>2] = 0; + $11 = HEAP32[$c>>2]|0; + _sqlite3_free($11); + STACKTOP = sp;return 0; +} +function _characterNext($pCursor,$ppToken,$pnBytes,$piStartOffset,$piEndOffset,$piPosition) { + $pCursor = $pCursor|0; + $ppToken = $ppToken|0; + $pnBytes = $pnBytes|0; + $piStartOffset = $piStartOffset|0; + $piEndOffset = $piEndOffset|0; + $piPosition = $piPosition|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; + var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $byte = 0, $byte1 = 0, $c = 0, $i = 0, $length = 0, $token = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 20|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $4 = sp + 28|0; + $5 = sp + 24|0; + $6 = sp + 16|0; + $c = sp + 12|0; + $length = sp + 8|0; + $token = sp + 4|0; + $byte = sp + 45|0; + $i = sp; + $byte1 = sp + 44|0; + HEAP32[$1>>2] = $pCursor; + HEAP32[$2>>2] = $ppToken; + HEAP32[$3>>2] = $pnBytes; + HEAP32[$4>>2] = $piStartOffset; + HEAP32[$5>>2] = $piEndOffset; + HEAP32[$6>>2] = $piPosition; + $7 = HEAP32[$1>>2]|0; + HEAP32[$c>>2] = $7; + $8 = HEAP32[$c>>2]|0; + $9 = (($8) + 20|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = HEAP32[$c>>2]|0; + $13 = (($12) + 20|0); + $14 = HEAP32[$13>>2]|0; + _sqlite3_free($14); + $15 = HEAP32[$c>>2]|0; + $16 = (($15) + 20|0); + HEAP32[$16>>2] = 0; + } + $17 = HEAP32[$c>>2]|0; + $18 = (($17) + 12|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$c>>2]|0; + $21 = (($20) + 8|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($19|0)>=($22|0); + if ($23) { + HEAP32[$0>>2] = 101; + $126 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($126|0); + } + HEAP32[$length>>2] = 1; + $24 = HEAP32[$c>>2]|0; + $25 = (($24) + 12|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$c>>2]|0; + $28 = (($27) + 4|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + ($26)|0); + HEAP32[$token>>2] = $30; + $31 = HEAP32[$c>>2]|0; + $32 = (($31) + 12|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$4>>2]|0; + HEAP32[$34>>2] = $33; + $35 = HEAP32[$c>>2]|0; + $36 = (($35) + 12|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + 1)|0; + HEAP32[$36>>2] = $38; + while(1) { + $39 = HEAP32[$c>>2]|0; + $40 = (($39) + 12|0); + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$c>>2]|0; + $43 = (($42) + 8|0); + $44 = HEAP32[$43>>2]|0; + $45 = ($41|0)<($44|0); + if (!($45)) { + break; + } + $46 = HEAP32[$c>>2]|0; + $47 = (($46) + 12|0); + $48 = HEAP32[$47>>2]|0; + $49 = HEAP32[$c>>2]|0; + $50 = (($49) + 4|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + ($48)|0); + $53 = HEAP8[$52>>0]|0; + HEAP8[$byte>>0] = $53; + $54 = HEAP8[$byte>>0]|0; + $55 = $54 << 24 >> 24; + $56 = $55 & 128; + $57 = ($56|0)==(0); + if ($57) { + break; + } + $58 = HEAP8[$byte>>0]|0; + $59 = $58 << 24 >> 24; + $60 = $59 & 192; + $61 = ($60|0)==(192); + if ($61) { + break; + } + $62 = HEAP32[$length>>2]|0; + $63 = (($62) + 1)|0; + HEAP32[$length>>2] = $63; + $64 = HEAP32[$c>>2]|0; + $65 = (($64) + 12|0); + $66 = HEAP32[$65>>2]|0; + $67 = (($66) + 1)|0; + HEAP32[$65>>2] = $67; + } + $68 = HEAP32[$length>>2]|0; + $69 = (($68) + 1)|0; + $70 = (_sqlite3_malloc($69)|0); + $71 = HEAP32[$c>>2]|0; + $72 = (($71) + 20|0); + HEAP32[$72>>2] = $70; + $73 = HEAP32[$c>>2]|0; + $74 = (($73) + 20|0); + $75 = HEAP32[$74>>2]|0; + $76 = ($75|0)==(0|0); + if ($76) { + HEAP32[$0>>2] = 7; + $126 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($126|0); + } + $77 = HEAP32[$length>>2]|0; + $78 = HEAP32[$c>>2]|0; + $79 = (($78) + 20|0); + $80 = HEAP32[$79>>2]|0; + $81 = (($80) + ($77)|0); + HEAP8[$81>>0] = 0; + $82 = HEAP32[$c>>2]|0; + $83 = (($82) + 20|0); + $84 = HEAP32[$83>>2]|0; + $85 = HEAP32[$token>>2]|0; + $86 = HEAP32[$length>>2]|0; + _memcpy(($84|0),($85|0),($86|0))|0; + HEAP32[$i>>2] = 0; + while(1) { + $87 = HEAP32[$i>>2]|0; + $88 = HEAP32[$length>>2]|0; + $89 = ($87|0)<($88|0); + if (!($89)) { + break; + } + $90 = HEAP32[$i>>2]|0; + $91 = HEAP32[$c>>2]|0; + $92 = (($91) + 20|0); + $93 = HEAP32[$92>>2]|0; + $94 = (($93) + ($90)|0); + $95 = HEAP8[$94>>0]|0; + HEAP8[$byte1>>0] = $95; + $96 = HEAP8[$byte1>>0]|0; + $97 = $96&255; + $98 = ($97|0)<(128); + if ($98) { + $99 = HEAP8[$byte1>>0]|0; + $100 = $99&255; + $101 = (_tolower($100)|0); + $102 = $101&255; + $103 = HEAP32[$i>>2]|0; + $104 = HEAP32[$c>>2]|0; + $105 = (($104) + 20|0); + $106 = HEAP32[$105>>2]|0; + $107 = (($106) + ($103)|0); + HEAP8[$107>>0] = $102; + } + $108 = HEAP32[$i>>2]|0; + $109 = (($108) + 1)|0; + HEAP32[$i>>2] = $109; + } + $110 = HEAP32[$c>>2]|0; + $111 = (($110) + 20|0); + $112 = HEAP32[$111>>2]|0; + $113 = HEAP32[$2>>2]|0; + HEAP32[$113>>2] = $112; + $114 = HEAP32[$length>>2]|0; + $115 = HEAP32[$3>>2]|0; + HEAP32[$115>>2] = $114; + $116 = HEAP32[$4>>2]|0; + $117 = HEAP32[$116>>2]|0; + $118 = HEAP32[$length>>2]|0; + $119 = (($117) + ($118))|0; + $120 = HEAP32[$5>>2]|0; + HEAP32[$120>>2] = $119; + $121 = HEAP32[$c>>2]|0; + $122 = (($121) + 16|0); + $123 = HEAP32[$122>>2]|0; + $124 = (($123) + 1)|0; + HEAP32[$122>>2] = $124; + $125 = HEAP32[$6>>2]|0; + HEAP32[$125>>2] = $123; + HEAP32[$0>>2] = 0; + $126 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($126|0); +} +function _sqlite3_compileoption_used($zOptName) { + $zOptName = $zOptName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $i = sp + 4|0; + $n = sp + 8|0; + HEAP32[$1>>2] = $zOptName; + $2 = HEAP32[$1>>2]|0; + $3 = (_sqlite3_strnicmp($2,96,7)|0); + $4 = ($3|0)==(0); + if ($4) { + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 7|0); + HEAP32[$1>>2] = $6; + } + $7 = HEAP32[$1>>2]|0; + $8 = (_sqlite3Strlen30($7)|0); + HEAP32[$n>>2] = $8; + HEAP32[$i>>2] = 0; + while(1) { + $9 = HEAP32[$i>>2]|0; + $10 = ($9|0)<(7); + if (!($10)) { + label = 9; + break; + } + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$i>>2]|0; + $13 = (104 + ($12<<2)|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$n>>2]|0; + $16 = (_sqlite3_strnicmp($11,$14,$15)|0); + $17 = ($16|0)==(0); + if ($17) { + $18 = HEAP32[$n>>2]|0; + $19 = HEAP32[$i>>2]|0; + $20 = (104 + ($19<<2)|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + ($18)|0); + $23 = HEAP8[$22>>0]|0; + $24 = $23&255; + $25 = (136 + ($24)|0); + $26 = HEAP8[$25>>0]|0; + $27 = $26&255; + $28 = ($27|0)==(0); + if ($28) { + label = 7; + break; + } + } + $29 = HEAP32[$i>>2]|0; + $30 = (($29) + 1)|0; + HEAP32[$i>>2] = $30; + } + if ((label|0) == 7) { + HEAP32[$0>>2] = 1; + $31 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($31|0); + } + else if ((label|0) == 9) { + HEAP32[$0>>2] = 0; + $31 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($31|0); + } + return 0|0; +} +function _sqlite3_strnicmp($zLeft,$zRight,$N) { + $zLeft = $zLeft|0; + $zRight = $zRight|0; + $N = $N|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $b = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $a = sp + 8|0; + $b = sp + 12|0; + HEAP32[$0>>2] = $zLeft; + HEAP32[$1>>2] = $zRight; + HEAP32[$2>>2] = $N; + $3 = HEAP32[$0>>2]|0; + HEAP32[$a>>2] = $3; + $4 = HEAP32[$1>>2]|0; + HEAP32[$b>>2] = $4; + while(1) { + $5 = HEAP32[$2>>2]|0; + $6 = (($5) + -1)|0; + HEAP32[$2>>2] = $6; + $7 = ($5|0)>(0); + if (!($7)) { + break; + } + $8 = HEAP32[$a>>2]|0; + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = ($10|0)!=(0); + if (!($11)) { + break; + } + $12 = HEAP32[$a>>2]|0; + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = (784 + ($14)|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = HEAP32[$b>>2]|0; + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = (784 + ($20)|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = ($17|0)==($23|0); + if (!($24)) { + break; + } + $25 = HEAP32[$a>>2]|0; + $26 = (($25) + 1|0); + HEAP32[$a>>2] = $26; + $27 = HEAP32[$b>>2]|0; + $28 = (($27) + 1|0); + HEAP32[$b>>2] = $28; + } + $29 = HEAP32[$2>>2]|0; + $30 = ($29|0)<(0); + if ($30) { + $44 = 0; + STACKTOP = sp;return ($44|0); + } + $31 = HEAP32[$a>>2]|0; + $32 = HEAP8[$31>>0]|0; + $33 = $32&255; + $34 = (784 + ($33)|0); + $35 = HEAP8[$34>>0]|0; + $36 = $35&255; + $37 = HEAP32[$b>>2]|0; + $38 = HEAP8[$37>>0]|0; + $39 = $38&255; + $40 = (784 + ($39)|0); + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = (($36) - ($42))|0; + $44 = $43; + STACKTOP = sp;return ($44|0); +} +function _sqlite3Strlen30($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $z2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $z2 = sp + 4|0; + HEAP32[$1>>2] = $z; + $2 = HEAP32[$1>>2]|0; + HEAP32[$z2>>2] = $2; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + HEAP32[$0>>2] = 0; + $15 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($15|0); + } + while(1) { + $5 = HEAP32[$z2>>2]|0; + $6 = HEAP8[$5>>0]|0; + $7 = ($6<<24>>24)!=(0); + $8 = HEAP32[$z2>>2]|0; + if (!($7)) { + break; + } + $9 = (($8) + 1|0); + HEAP32[$z2>>2] = $9; + } + $10 = HEAP32[$1>>2]|0; + $11 = $8; + $12 = $10; + $13 = (($11) - ($12))|0; + $14 = 1073741823 & $13; + HEAP32[$0>>2] = $14; + $15 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($15|0); +} +function _sqlite3_compileoption_get($N) { + $N = $N|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $N; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)>=(0); + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)<(7); + $or$cond = $3 & $5; + if ($or$cond) { + $6 = HEAP32[$1>>2]|0; + $7 = (104 + ($6<<2)|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$0>>2] = $8; + $9 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($9|0); + } else { + HEAP32[$0>>2] = 0; + $9 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($9|0); + } + return 0|0; +} +function _sqlite3_status($op,$pCurrent,$pHighwater,$resetFlag) { + $op = $op|0; + $pCurrent = $pCurrent|0; + $pHighwater = $pHighwater|0; + $resetFlag = $resetFlag|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + HEAP32[$1>>2] = $op; + HEAP32[$2>>2] = $pCurrent; + HEAP32[$3>>2] = $pHighwater; + HEAP32[$4>>2] = $resetFlag; + $5 = HEAP32[$1>>2]|0; + $6 = ($5|0)<(0); + $7 = HEAP32[$1>>2]|0; + $8 = ($7|0)>=(10); + $or$cond = $6 | $8; + if ($or$cond) { + $9 = (_sqlite3MisuseError(14363)|0); + HEAP32[$0>>2] = $9; + $25 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($25|0); + } + $10 = HEAP32[$1>>2]|0; + $11 = (392 + ($10<<2)|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$2>>2]|0; + HEAP32[$13>>2] = $12; + $14 = HEAP32[$1>>2]|0; + $15 = (((392 + 40|0)) + ($14<<2)|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$3>>2]|0; + HEAP32[$17>>2] = $16; + $18 = HEAP32[$4>>2]|0; + $19 = ($18|0)!=(0); + if ($19) { + $20 = HEAP32[$1>>2]|0; + $21 = (392 + ($20<<2)|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (((392 + 40|0)) + ($23<<2)|0); + HEAP32[$24>>2] = $22; + } + HEAP32[$0>>2] = 0; + $25 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($25|0); +} +function _sqlite3MisuseError($lineno) { + $lineno = $lineno|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 8|0; + HEAP32[$0>>2] = $lineno; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3_sourceid()|0); + $3 = (($2) + 20|0); + HEAP32[$vararg_buffer>>2] = $1; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $3; + _sqlite3_log(21,3536,$vararg_buffer); + STACKTOP = sp;return 21; +} +function _sqlite3BtreeEnterAll($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $i = sp; + $p = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$i>>2] = 0; + while(1) { + $1 = HEAP32[$i>>2]|0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 20|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($1|0)<($4|0); + if (!($5)) { + break; + } + $6 = HEAP32[$i>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + ($6<<4)|0); + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$p>>2] = $12; + $13 = HEAP32[$p>>2]|0; + $14 = ($13|0)!=(0|0); + if ($14) { + $15 = HEAP32[$p>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$p>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + 4|0); + HEAP32[$20>>2] = $16; + } + $21 = HEAP32[$i>>2]|0; + $22 = (($21) + 1)|0; + HEAP32[$i>>2] = $22; + } + STACKTOP = sp;return; +} +function _sqlite3BtreePager($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + STACKTOP = sp;return ($4|0); +} +function _sqlite3MallocSize($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[((45136 + 48|0))>>2]|0; + $2 = HEAP32[$0>>2]|0; + $3 = (FUNCTION_TABLE_ii[$1 & 63]($2)|0); + STACKTOP = sp;return ($3|0); +} +function _sqlite3DeleteTrigger($db,$pTrigger) { + $db = $db|0; + $pTrigger = $pTrigger|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pTrigger; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0|0); + if ($3) { + STACKTOP = sp;return; + } + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 28|0); + $7 = HEAP32[$6>>2]|0; + _sqlite3DeleteTriggerStep($4,$7); + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$9>>2]|0; + _sqlite3DbFree($8,$10); + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + _sqlite3DbFree($11,$14); + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 12|0); + $18 = HEAP32[$17>>2]|0; + _sqlite3ExprDelete($15,$18); + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 16|0); + $22 = HEAP32[$21>>2]|0; + _sqlite3IdListDelete($19,$22); + $23 = HEAP32[$0>>2]|0; + $24 = HEAP32[$1>>2]|0; + _sqlite3DbFree($23,$24); + STACKTOP = sp;return; +} +function _sqlite3DeleteTable($db,$pTable) { + $db = $db|0; + $pTable = $pTable|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $pIndex = 0, $pNext = 0, $zName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $pIndex = sp + 4|0; + $pNext = sp + 8|0; + $zName = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pTable; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + $4 = HEAP32[$0>>2]|0; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 512|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + label = 4; + } + } else { + label = 4; + } + if ((label|0) == 4) { + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 40|0); + $12 = HEAP16[$11>>1]|0; + $13 = (($12) + -1)<<16>>16; + HEAP16[$11>>1] = $13; + $14 = $13&65535; + $15 = ($14|0)>(0); + if ($15) { + STACKTOP = sp;return; + } + } + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 8|0); + $18 = HEAP32[$17>>2]|0; + HEAP32[$pIndex>>2] = $18; + while(1) { + $19 = HEAP32[$pIndex>>2]|0; + $20 = ($19|0)!=(0|0); + if (!($20)) { + break; + } + $21 = HEAP32[$pIndex>>2]|0; + $22 = (($21) + 20|0); + $23 = HEAP32[$22>>2]|0; + HEAP32[$pNext>>2] = $23; + $24 = HEAP32[$0>>2]|0; + $25 = ($24|0)!=(0|0); + if ($25) { + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 512|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)==(0|0); + if ($29) { + label = 9; + } + } else { + label = 9; + } + if ((label|0) == 9) { + label = 0; + $30 = HEAP32[$pIndex>>2]|0; + $31 = HEAP32[$30>>2]|0; + HEAP32[$zName>>2] = $31; + $32 = HEAP32[$pIndex>>2]|0; + $33 = (($32) + 24|0); + $34 = HEAP32[$33>>2]|0; + $35 = (($34) + 24|0); + $36 = HEAP32[$zName>>2]|0; + $37 = HEAP32[$zName>>2]|0; + $38 = (_sqlite3Strlen30($37)|0); + (_sqlite3HashInsert($35,$36,$38,0)|0); + } + $39 = HEAP32[$0>>2]|0; + $40 = HEAP32[$pIndex>>2]|0; + _freeIndex($39,$40); + $41 = HEAP32[$pNext>>2]|0; + HEAP32[$pIndex>>2] = $41; + } + $42 = HEAP32[$0>>2]|0; + $43 = HEAP32[$1>>2]|0; + _sqlite3FkDelete($42,$43); + $44 = HEAP32[$0>>2]|0; + $45 = HEAP32[$1>>2]|0; + _sqliteDeleteColumnNames($44,$45); + $46 = HEAP32[$0>>2]|0; + $47 = HEAP32[$1>>2]|0; + $48 = HEAP32[$47>>2]|0; + _sqlite3DbFree($46,$48); + $49 = HEAP32[$0>>2]|0; + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 20|0); + $52 = HEAP32[$51>>2]|0; + _sqlite3DbFree($49,$52); + $53 = HEAP32[$0>>2]|0; + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 12|0); + $56 = HEAP32[$55>>2]|0; + _sqlite3SelectDelete($53,$56); + $57 = HEAP32[$0>>2]|0; + $58 = HEAP32[$1>>2]|0; + $59 = (($58) + 24|0); + $60 = HEAP32[$59>>2]|0; + _sqlite3ExprListDelete($57,$60); + $61 = HEAP32[$0>>2]|0; + $62 = HEAP32[$1>>2]|0; + _sqlite3VtabClear($61,$62); + $63 = HEAP32[$0>>2]|0; + $64 = HEAP32[$1>>2]|0; + _sqlite3DbFree($63,$64); + STACKTOP = sp;return; +} +function _sqlite3VdbeClearObject($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pNext = 0, $pSub = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $pSub = sp + 4|0; + $pNext = sp + 8|0; + $i = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 60|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 68|0); + $7 = HEAP16[$6>>1]|0; + $8 = $7 << 16 >> 16; + _releaseMemArray($4,$8); + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 16|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 84|0); + $14 = HEAP16[$13>>1]|0; + $15 = $14&65535; + $16 = $15<<1; + _releaseMemArray($11,$16); + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 192|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$pSub>>2] = $19; + while(1) { + $20 = HEAP32[$pSub>>2]|0; + $21 = ($20|0)!=(0|0); + if (!($21)) { + break; + } + $22 = HEAP32[$pSub>>2]|0; + $23 = (($22) + 24|0); + $24 = HEAP32[$23>>2]|0; + HEAP32[$pNext>>2] = $24; + $25 = HEAP32[$0>>2]|0; + $26 = HEAP32[$pSub>>2]|0; + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$pSub>>2]|0; + $29 = (($28) + 4|0); + $30 = HEAP32[$29>>2]|0; + _vdbeFreeOpArray($25,$27,$30); + $31 = HEAP32[$0>>2]|0; + $32 = HEAP32[$pSub>>2]|0; + _sqlite3DbFree($31,$32); + $33 = HEAP32[$pNext>>2]|0; + HEAP32[$pSub>>2] = $33; + } + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 70|0); + $36 = HEAP16[$35>>1]|0; + $37 = $36 << 16 >> 16; + $38 = (($37) - 1)|0; + HEAP32[$i>>2] = $38; + while(1) { + $39 = HEAP32[$i>>2]|0; + $40 = ($39|0)>=(0); + $41 = HEAP32[$0>>2]|0; + if (!($40)) { + break; + } + $42 = HEAP32[$i>>2]|0; + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 64|0); + $45 = HEAP32[$44>>2]|0; + $46 = (($45) + ($42<<2)|0); + $47 = HEAP32[$46>>2]|0; + _sqlite3DbFree($41,$47); + $48 = HEAP32[$i>>2]|0; + $49 = (($48) + -1)|0; + HEAP32[$i>>2] = $49; + } + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 4|0); + $52 = HEAP32[$51>>2]|0; + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 32|0); + $55 = HEAP32[$54>>2]|0; + _vdbeFreeOpArray($41,$52,$55); + $56 = HEAP32[$0>>2]|0; + $57 = HEAP32[$1>>2]|0; + $58 = (($57) + 16|0); + $59 = HEAP32[$58>>2]|0; + _sqlite3DbFree($56,$59); + $60 = HEAP32[$0>>2]|0; + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 168|0); + $63 = HEAP32[$62>>2]|0; + _sqlite3DbFree($60,$63); + $64 = HEAP32[$0>>2]|0; + $65 = HEAP32[$1>>2]|0; + $66 = (($65) + 172|0); + $67 = HEAP32[$66>>2]|0; + _sqlite3DbFree($64,$67); + STACKTOP = sp;return; +} +function _sqlite3DbFree($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBuf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pBuf = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0|0); + if ($3) { + STACKTOP = sp;return; + } + $4 = HEAP32[$0>>2]|0; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 512|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$1>>2]|0; + if ($9) { + $12 = (_sqlite3DbMallocSize($10,$11)|0); + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 512|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + ($12))|0; + HEAP32[$15>>2] = $17; + STACKTOP = sp;return; + } + $18 = (_isLookaside($10,$11)|0); + $19 = ($18|0)!=(0); + if ($19) { + $20 = HEAP32[$1>>2]|0; + HEAP32[$pBuf>>2] = $20; + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 240|0); + $23 = (($22) + 24|0); + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$pBuf>>2]|0; + HEAP32[$25>>2] = $24; + $26 = HEAP32[$pBuf>>2]|0; + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 240|0); + $29 = (($28) + 24|0); + HEAP32[$29>>2] = $26; + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 240|0); + $32 = (($31) + 4|0); + $33 = HEAP32[$32>>2]|0; + $34 = (($33) + -1)|0; + HEAP32[$32>>2] = $34; + STACKTOP = sp;return; + } + } + $35 = HEAP32[$1>>2]|0; + _sqlite3_free($35); + STACKTOP = sp;return; +} +function _sqlite3_vfs_find($zVfs) { + $zVfs = $zVfs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $pVfs = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $pVfs = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$1>>2] = $zVfs; + HEAP32[$pVfs>>2] = 0; + $2 = (_sqlite3_initialize()|0); + HEAP32[$rc>>2] = $2; + $3 = HEAP32[$rc>>2]|0; + $4 = ($3|0)!=(0); + if ($4) { + HEAP32[$0>>2] = 0; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } + $5 = HEAP32[472>>2]|0; + HEAP32[$pVfs>>2] = $5; + while(1) { + $6 = HEAP32[$pVfs>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + break; + } + $8 = HEAP32[$1>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + break; + } + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$pVfs>>2]|0; + $12 = (($11) + 16|0); + $13 = HEAP32[$12>>2]|0; + $14 = (_strcmp($10,$13)|0); + $15 = ($14|0)==(0); + if ($15) { + break; + } + $16 = HEAP32[$pVfs>>2]|0; + $17 = (($16) + 12|0); + $18 = HEAP32[$17>>2]|0; + HEAP32[$pVfs>>2] = $18; + } + $19 = HEAP32[$pVfs>>2]|0; + HEAP32[$0>>2] = $19; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); +} +function _sqlite3_initialize() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pHash = 0, $rc = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $rc = sp; + $pHash = sp + 4|0; + $1 = HEAP32[((45136 + 224|0))>>2]|0; + $2 = ($1|0)!=(0); + if ($2) { + HEAP32[$0>>2] = 0; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); + } + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$rc>>2]|0; + $4 = ($3|0)!=(0); + if ($4) { + $5 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $5; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); + } + HEAP32[((45136 + 232|0))>>2] = 1; + $6 = HEAP32[((45136 + 236|0))>>2]|0; + $7 = ($6|0)!=(0); + if (!($7)) { + $8 = (_sqlite3MallocInit()|0); + HEAP32[$rc>>2] = $8; + } + $9 = HEAP32[$rc>>2]|0; + $10 = ($9|0)==(0); + if ($10) { + HEAP32[((45136 + 236|0))>>2] = 1; + $11 = HEAP32[((45136 + 248|0))>>2]|0; + $12 = ($11|0)!=(0|0); + if (!($12)) { + HEAP32[((45136 + 248|0))>>2] = (8); + $13 = HEAP32[((45136 + 4|0))>>2]|0; + $14 = ($13|0)!=(0); + if ($14) { + $15 = HEAP32[((45136 + 248|0))>>2]|0; + $16 = ($15|0)!=(0|0); + if (!($16)) { + HEAP32[$rc>>2] = 7; + } + } + } + } + $17 = HEAP32[$rc>>2]|0; + $18 = ($17|0)==(0); + if ($18) { + $19 = HEAP32[((45136 + 244|0))>>2]|0; + $20 = (($19) + 1)|0; + HEAP32[((45136 + 244|0))>>2] = $20; + } + $21 = HEAP32[$rc>>2]|0; + $22 = ($21|0)!=(0); + if ($22) { + $23 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $23; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); + } + $24 = HEAP32[((45136 + 224|0))>>2]|0; + $25 = ($24|0)==(0); + if ($25) { + $26 = HEAP32[((45136 + 228|0))>>2]|0; + $27 = ($26|0)==(0); + if ($27) { + HEAP32[$pHash>>2] = 1896; + HEAP32[((45136 + 228|0))>>2] = 1; + $28 = HEAP32[$pHash>>2]|0; + dest=$28+0|0; stop=dest+92|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + _sqlite3RegisterGlobalFunctions(); + $29 = HEAP32[((45136 + 240|0))>>2]|0; + $30 = ($29|0)==(0); + if ($30) { + $31 = (_sqlite3PcacheInitialize()|0); + HEAP32[$rc>>2] = $31; + } + $32 = HEAP32[$rc>>2]|0; + $33 = ($32|0)==(0); + if ($33) { + HEAP32[((45136 + 240|0))>>2] = 1; + $34 = (_sqlite3OsInit()|0); + HEAP32[$rc>>2] = $34; + } + $35 = HEAP32[$rc>>2]|0; + $36 = ($35|0)==(0); + if ($36) { + $37 = HEAP32[((45136 + 204|0))>>2]|0; + $38 = HEAP32[((45136 + 208|0))>>2]|0; + $39 = HEAP32[((45136 + 212|0))>>2]|0; + _sqlite3PCacheBufferSetup($37,$38,$39); + HEAP32[((45136 + 224|0))>>2] = 1; + } + HEAP32[((45136 + 228|0))>>2] = 0; + } + } + $40 = HEAP32[((45136 + 244|0))>>2]|0; + $41 = (($40) + -1)|0; + HEAP32[((45136 + 244|0))>>2] = $41; + $42 = HEAP32[((45136 + 244|0))>>2]|0; + $43 = ($42|0)<=(0); + if ($43) { + HEAP32[((45136 + 248|0))>>2] = 0; + } + $44 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $44; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); +} +function _sqlite3_vfs_register($pVfs,$makeDflt) { + $pVfs = $pVfs|0; + $makeDflt = $makeDflt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$1>>2] = $pVfs; + HEAP32[$2>>2] = $makeDflt; + $3 = (_sqlite3_initialize()|0); + HEAP32[$rc>>2] = $3; + $4 = HEAP32[$rc>>2]|0; + $5 = ($4|0)!=(0); + if ($5) { + $6 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $6; + $23 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($23|0); + } + $7 = HEAP32[$1>>2]|0; + _vfsUnlink($7); + $8 = HEAP32[$2>>2]|0; + $9 = ($8|0)!=(0); + $10 = HEAP32[472>>2]|0; + $11 = ($10|0)==(0|0); + $or$cond = $9 | $11; + $12 = HEAP32[472>>2]|0; + if ($or$cond) { + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 12|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$1>>2]|0; + HEAP32[472>>2] = $15; + } else { + $16 = (($12) + 12|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 12|0); + HEAP32[$19>>2] = $17; + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[472>>2]|0; + $22 = (($21) + 12|0); + HEAP32[$22>>2] = $20; + } + HEAP32[$0>>2] = 0; + $23 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($23|0); +} +function _vfsUnlink($pVfs) { + $pVfs = $pVfs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pVfs; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)==(0|0); + if ($2) { + STACKTOP = sp;return; + } + $3 = HEAP32[472>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = ($3|0)==($4|0); + if ($5) { + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 12|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[472>>2] = $8; + STACKTOP = sp;return; + } + $9 = HEAP32[472>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + STACKTOP = sp;return; + } + $11 = HEAP32[472>>2]|0; + HEAP32[$p>>2] = $11; + while(1) { + $12 = HEAP32[$p>>2]|0; + $13 = (($12) + 12|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = HEAP32[$p>>2]|0; + $17 = (($16) + 12|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$0>>2]|0; + $20 = ($18|0)!=($19|0); + $31 = $20; + } else { + $31 = 0; + } + $21 = HEAP32[$p>>2]|0; + $22 = (($21) + 12|0); + $23 = HEAP32[$22>>2]|0; + if (!($31)) { + break; + } + HEAP32[$p>>2] = $23; + } + $24 = HEAP32[$0>>2]|0; + $25 = ($23|0)==($24|0); + if (!($25)) { + STACKTOP = sp;return; + } + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 12|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$p>>2]|0; + $30 = (($29) + 12|0); + HEAP32[$30>>2] = $28; + STACKTOP = sp;return; +} +function _sqlite3_release_memory($n) { + $n = $n|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $n; + STACKTOP = sp;return 0; +} +function _sqlite3MemoryAlarm($xCallback,$pArg,$0,$1) { + $xCallback = $xCallback|0; + $pArg = $pArg|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nUsed = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 16|0; + $3 = sp + 8|0; + $4 = sp; + $nUsed = sp + 12|0; + HEAP32[$2>>2] = $xCallback; + HEAP32[$3>>2] = $pArg; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + $9 = HEAP32[$2>>2]|0; + HEAP32[((480 + 16|0))>>2] = $9; + $10 = HEAP32[$3>>2]|0; + HEAP32[((480 + 20|0))>>2] = $10; + $11 = $4; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = (($11) + 4)|0; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = ((480 + 8|0)); + $18 = $17; + HEAP32[$18>>2] = $13; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = $16; + $21 = (_sqlite3StatusValue(0)|0); + HEAP32[$nUsed>>2] = $21; + $22 = $4; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (($22) + 4)|0; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)>(0); + $29 = ($27|0)==(0); + $30 = ($24>>>0)>(0); + $31 = $29 & $30; + $32 = $28 | $31; + if (!($32)) { + $48 = 0; + $47 = $48&1; + HEAP32[((480 + 36|0))>>2] = $47; + STACKTOP = sp;return 0; + } + $33 = $4; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = (($33) + 4)|0; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$nUsed>>2]|0; + $40 = ($39|0)<(0); + $41 = $40 << 31 >> 31; + $42 = ($38|0)<($41|0); + $43 = ($38|0)==($41|0); + $44 = ($35>>>0)<=($39>>>0); + $45 = $43 & $44; + $46 = $42 | $45; + $48 = $46; + $47 = $48&1; + HEAP32[((480 + 36|0))>>2] = $47; + STACKTOP = sp;return 0; +} +function _sqlite3_soft_heap_limit64($0,$1) { + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $excess = 0, $priorLimit = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $2 = sp + 24|0; + $3 = sp; + $priorLimit = sp + 8|0; + $excess = sp + 16|0; + $rc = sp + 32|0; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = (_sqlite3_initialize()|0); + HEAP32[$rc>>2] = $8; + $9 = HEAP32[$rc>>2]|0; + $10 = ($9|0)!=(0); + if ($10) { + $11 = $2; + $12 = $11; + HEAP32[$12>>2] = -1; + $13 = (($11) + 4)|0; + $14 = $13; + HEAP32[$14>>2] = -1; + $101 = $2; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = (($101) + 4)|0; + $105 = $104; + $106 = HEAP32[$105>>2]|0; + tempRet0 = $106; + STACKTOP = sp;return ($103|0); + } + $15 = ((480 + 8|0)); + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = (($15) + 4)|0; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = $priorLimit; + $22 = $21; + HEAP32[$22>>2] = $17; + $23 = (($21) + 4)|0; + $24 = $23; + HEAP32[$24>>2] = $20; + $25 = $3; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = ($30|0)<(0); + if ($31) { + $32 = $priorLimit; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = (($32) + 4)|0; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = $2; + $39 = $38; + HEAP32[$39>>2] = $34; + $40 = (($38) + 4)|0; + $41 = $40; + HEAP32[$41>>2] = $37; + $101 = $2; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = (($101) + 4)|0; + $105 = $104; + $106 = HEAP32[$105>>2]|0; + tempRet0 = $106; + STACKTOP = sp;return ($103|0); + } + $42 = $3; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = ($47|0)>(0); + $49 = ($47|0)==(0); + $50 = ($44>>>0)>(0); + $51 = $49 & $50; + $52 = $48 | $51; + if ($52) { + $53 = $3; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + $56 = (($53) + 4)|0; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + (_sqlite3MemoryAlarm(2,0,$55,$58)|0); + } else { + (_sqlite3MemoryAlarm(0,0,0,0)|0); + } + $59 = (_sqlite3_memory_used()|0); + $60 = tempRet0; + $61 = $3; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = (($61) + 4)|0; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = (_i64Subtract(($59|0),($60|0),($63|0),($66|0))|0); + $68 = tempRet0; + $69 = $excess; + $70 = $69; + HEAP32[$70>>2] = $67; + $71 = (($69) + 4)|0; + $72 = $71; + HEAP32[$72>>2] = $68; + $73 = $excess; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $76 = (($73) + 4)|0; + $77 = $76; + $78 = HEAP32[$77>>2]|0; + $79 = ($78|0)>(0); + $80 = ($78|0)==(0); + $81 = ($75>>>0)>(0); + $82 = $80 & $81; + $83 = $79 | $82; + if ($83) { + $84 = $excess; + $85 = $84; + $86 = HEAP32[$85>>2]|0; + $87 = (($84) + 4)|0; + $88 = $87; + $89 = HEAP32[$88>>2]|0; + $90 = $86 & 2147483647; + (_sqlite3_release_memory($90)|0); + } + $91 = $priorLimit; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $94 = (($91) + 4)|0; + $95 = $94; + $96 = HEAP32[$95>>2]|0; + $97 = $2; + $98 = $97; + HEAP32[$98>>2] = $93; + $99 = (($97) + 4)|0; + $100 = $99; + HEAP32[$100>>2] = $96; + $101 = $2; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = (($101) + 4)|0; + $105 = $104; + $106 = HEAP32[$105>>2]|0; + tempRet0 = $106; + STACKTOP = sp;return ($103|0); +} +function _softHeapLimitEnforcer($NotUsed,$0,$1,$allocSize) { + $NotUsed = $NotUsed|0; + $0 = $0|0; + $1 = $1|0; + $allocSize = $allocSize|0; + var $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp + 12|0; + $3 = sp; + $4 = sp + 8|0; + HEAP32[$2>>2] = $NotUsed; + $5 = $3; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + HEAP32[$4>>2] = $allocSize; + $9 = HEAP32[$4>>2]|0; + (_sqlite3_release_memory($9)|0); + STACKTOP = sp;return; +} +function _sqlite3_memory_used() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mx = 0, $n = 0, $res = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $n = sp + 12|0; + $mx = sp + 8|0; + $res = sp; + (_sqlite3_status(0,$n,$mx,0)|0); + $0 = HEAP32[$n>>2]|0; + $1 = ($0|0)<(0); + $2 = $1 << 31 >> 31; + $3 = $res; + $4 = $3; + HEAP32[$4>>2] = $0; + $5 = (($3) + 4)|0; + $6 = $5; + HEAP32[$6>>2] = $2; + $7 = $res; + $8 = $7; + $9 = HEAP32[$8>>2]|0; + $10 = (($7) + 4)|0; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + tempRet0 = $12; + STACKTOP = sp;return ($9|0); +} +function _sqlite3_malloc($n) { + $n = $n|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $n; + $2 = (_sqlite3_initialize()|0); + $3 = ($2|0)!=(0); + if ($3) { + HEAP32[$0>>2] = 0; + } else { + $4 = HEAP32[$1>>2]|0; + $5 = (_sqlite3Malloc($4)|0); + HEAP32[$0>>2] = $5; + } + $6 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($6|0); +} +function _sqlite3Malloc($n) { + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $n; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)<=(0); + $3 = HEAP32[$0>>2]|0; + $4 = ($3|0)>=(2147483392); + $or$cond = $2 | $4; + do { + if ($or$cond) { + HEAP32[$p>>2] = 0; + } else { + $5 = HEAP32[45136>>2]|0; + $6 = ($5|0)!=(0); + if ($6) { + $7 = HEAP32[$0>>2]|0; + (_mallocWithAlarm($7,$p)|0); + break; + } else { + $8 = HEAP32[((45136 + 36|0))>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = (FUNCTION_TABLE_ii[$8 & 63]($9)|0); + HEAP32[$p>>2] = $10; + break; + } + } + } while(0); + $11 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($11|0); +} +function _sqlite3_free($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)==(0|0); + if ($2) { + STACKTOP = sp;return; + } + $3 = HEAP32[45136>>2]|0; + $4 = ($3|0)!=(0); + if ($4) { + $5 = HEAP32[$0>>2]|0; + $6 = (_sqlite3MallocSize($5)|0); + $7 = (0 - ($6))|0; + _sqlite3StatusAdd(0,$7); + _sqlite3StatusAdd(9,-1); + $8 = HEAP32[((45136 + 40|0))>>2]|0; + $9 = HEAP32[$0>>2]|0; + FUNCTION_TABLE_vi[$8 & 31]($9); + STACKTOP = sp;return; + } else { + $10 = HEAP32[((45136 + 40|0))>>2]|0; + $11 = HEAP32[$0>>2]|0; + FUNCTION_TABLE_vi[$10 & 31]($11); + STACKTOP = sp;return; + } +} +function _sqlite3StatusAdd($op,$N) { + $op = $op|0; + $N = $N|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $op; + HEAP32[$1>>2] = $N; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (392 + ($3<<2)|0); + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + ($2))|0; + HEAP32[$4>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = (392 + ($7<<2)|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (((392 + 40|0)) + ($10<<2)|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($9|0)>($12|0); + if (!($13)) { + STACKTOP = sp;return; + } + $14 = HEAP32[$0>>2]|0; + $15 = (392 + ($14<<2)|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$0>>2]|0; + $18 = (((392 + 40|0)) + ($17<<2)|0); + HEAP32[$18>>2] = $16; + STACKTOP = sp;return; +} +function _sqlite3_realloc($pOld,$n) { + $pOld = $pOld|0; + $n = $n|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$1>>2] = $pOld; + HEAP32[$2>>2] = $n; + $3 = (_sqlite3_initialize()|0); + $4 = ($3|0)!=(0); + if ($4) { + HEAP32[$0>>2] = 0; + $8 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($8|0); + } else { + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = (_sqlite3Realloc($5,$6)|0); + HEAP32[$0>>2] = $7; + $8 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($8|0); + } + return 0|0; +} +function _sqlite3Realloc($pOld,$nBytes) { + $pOld = $pOld|0; + $nBytes = $nBytes|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $8 = 0, $9 = 0, $nDiff = 0, $nNew = 0, $nOld = 0, $or$cond = 0, $pNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $nOld = sp + 8|0; + $nNew = sp + 12|0; + $nDiff = sp + 16|0; + $pNew = sp + 20|0; + HEAP32[$1>>2] = $pOld; + HEAP32[$2>>2] = $nBytes; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)==(0|0); + $5 = HEAP32[$2>>2]|0; + if ($4) { + $6 = (_sqlite3Malloc($5)|0); + HEAP32[$0>>2] = $6; + $71 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($71|0); + } + $7 = ($5|0)<=(0); + if ($7) { + $8 = HEAP32[$1>>2]|0; + _sqlite3_free($8); + HEAP32[$0>>2] = 0; + $71 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($71|0); + } + $9 = HEAP32[$2>>2]|0; + $10 = ($9|0)>=(2147483392); + if ($10) { + HEAP32[$0>>2] = 0; + $71 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($71|0); + } + $11 = HEAP32[$1>>2]|0; + $12 = (_sqlite3MallocSize($11)|0); + HEAP32[$nOld>>2] = $12; + $13 = HEAP32[((45136 + 52|0))>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (FUNCTION_TABLE_ii[$13 & 63]($14)|0); + HEAP32[$nNew>>2] = $15; + $16 = HEAP32[$nOld>>2]|0; + $17 = HEAP32[$nNew>>2]|0; + $18 = ($16|0)==($17|0); + do { + if ($18) { + $19 = HEAP32[$1>>2]|0; + HEAP32[$pNew>>2] = $19; + } else { + $20 = HEAP32[45136>>2]|0; + $21 = ($20|0)!=(0); + if (!($21)) { + $66 = HEAP32[((45136 + 44|0))>>2]|0; + $67 = HEAP32[$1>>2]|0; + $68 = HEAP32[$nNew>>2]|0; + $69 = (FUNCTION_TABLE_iii[$66 & 127]($67,$68)|0); + HEAP32[$pNew>>2] = $69; + break; + } + $22 = HEAP32[$2>>2]|0; + _sqlite3StatusSet(5,$22); + $23 = HEAP32[$nNew>>2]|0; + $24 = HEAP32[$nOld>>2]|0; + $25 = (($23) - ($24))|0; + HEAP32[$nDiff>>2] = $25; + $26 = (_sqlite3StatusValue(0)|0); + $27 = ($26|0)<(0); + $28 = $27 << 31 >> 31; + $29 = ((480 + 8|0)); + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = (($29) + 4)|0; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$nDiff>>2]|0; + $36 = ($35|0)<(0); + $37 = $36 << 31 >> 31; + $38 = (_i64Subtract(($31|0),($34|0),($35|0),($37|0))|0); + $39 = tempRet0; + $40 = ($28|0)>($39|0); + $41 = ($28|0)==($39|0); + $42 = ($26>>>0)>=($38>>>0); + $43 = $41 & $42; + $44 = $40 | $43; + if ($44) { + $45 = HEAP32[$nDiff>>2]|0; + _sqlite3MallocAlarm($45); + } + $46 = HEAP32[((45136 + 44|0))>>2]|0; + $47 = HEAP32[$1>>2]|0; + $48 = HEAP32[$nNew>>2]|0; + $49 = (FUNCTION_TABLE_iii[$46 & 127]($47,$48)|0); + HEAP32[$pNew>>2] = $49; + $50 = HEAP32[$pNew>>2]|0; + $51 = ($50|0)==(0|0); + $52 = HEAP32[((480 + 16|0))>>2]|0; + $53 = ($52|0)!=(0|0); + $or$cond = $51 & $53; + if ($or$cond) { + $54 = HEAP32[$2>>2]|0; + _sqlite3MallocAlarm($54); + $55 = HEAP32[((45136 + 44|0))>>2]|0; + $56 = HEAP32[$1>>2]|0; + $57 = HEAP32[$nNew>>2]|0; + $58 = (FUNCTION_TABLE_iii[$55 & 127]($56,$57)|0); + HEAP32[$pNew>>2] = $58; + } + $59 = HEAP32[$pNew>>2]|0; + $60 = ($59|0)!=(0|0); + if ($60) { + $61 = HEAP32[$pNew>>2]|0; + $62 = (_sqlite3MallocSize($61)|0); + HEAP32[$nNew>>2] = $62; + $63 = HEAP32[$nNew>>2]|0; + $64 = HEAP32[$nOld>>2]|0; + $65 = (($63) - ($64))|0; + _sqlite3StatusAdd(0,$65); + } + } + } while(0); + $70 = HEAP32[$pNew>>2]|0; + HEAP32[$0>>2] = $70; + $71 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($71|0); +} +function _sqlite3_vmprintf($zFormat,$ap) { + $zFormat = $zFormat|0; + $ap = $ap|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $acc = 0, $z = 0, $zBase = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $0 = sp + 40|0; + $1 = sp; + $2 = sp + 4|0; + $z = sp + 8|0; + $zBase = sp + 44|0; + $acc = sp + 12|0; + HEAP32[$1>>2] = $zFormat; + HEAP32[$2>>2] = $ap; + $3 = (_sqlite3_initialize()|0); + $4 = ($3|0)!=(0); + if ($4) { + HEAP32[$0>>2] = 0; + $10 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($10|0); + } else { + _sqlite3StrAccumInit($acc,$zBase,70,1000000000); + $5 = (($acc) + 24|0); + HEAP8[$5>>0] = 2; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$2>>2]|0; + _sqlite3VXPrintf($acc,0,$6,$7); + $8 = (_sqlite3StrAccumFinish($acc)|0); + HEAP32[$z>>2] = $8; + $9 = HEAP32[$z>>2]|0; + HEAP32[$0>>2] = $9; + $10 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($10|0); + } + return 0|0; +} +function _sqlite3StrAccumInit($p,$zBase,$n,$mx) { + $p = $p|0; + $zBase = $zBase|0; + $n = $n|0; + $mx = $mx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $zBase; + HEAP32[$2>>2] = $n; + HEAP32[$3>>2] = $mx; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 4|0); + HEAP32[$6>>2] = $4; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 8|0); + HEAP32[$8>>2] = $4; + $9 = HEAP32[$0>>2]|0; + HEAP32[$9>>2] = 0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 12|0); + HEAP32[$11>>2] = 0; + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 16|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$3>>2]|0; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 20|0); + HEAP32[$17>>2] = $15; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 24|0); + HEAP8[$19>>0] = 1; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 25|0); + HEAP8[$21>>0] = 0; + STACKTOP = sp;return; +} +function _sqlite3VXPrintf($pAccum,$bFlags,$fmt,$ap) { + $pAccum = $pAccum|0; + $bFlags = $bFlags|0; + $fmt = $fmt|0; + $ap = $ap|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0.0, $438 = 0, $439 = 0.0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0.0, $443 = 0, $444 = 0.0, $445 = 0.0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0.0, $463 = 0.0, $464 = 0, $465 = 0, $466 = 0, $467 = 0.0, $468 = 0.0, $469 = 0.0, $47 = 0, $470 = 0.0, $471 = 0, $472 = 0, $473 = 0.0, $474 = 0, $475 = 0.0, $476 = 0.0; + var $477 = 0.0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0.0, $482 = 0.0, $483 = 0, $484 = 0, $485 = 0.0, $486 = 0.0, $487 = 0.0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0.0, $492 = 0.0, $493 = 0, $494 = 0; + var $495 = 0.0, $496 = 0.0, $497 = 0.0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0.0, $502 = 0.0, $503 = 0, $504 = 0, $505 = 0.0, $506 = 0.0, $507 = 0.0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0.0; + var $512 = 0.0, $513 = 0, $514 = 0, $515 = 0.0, $516 = 0.0, $517 = 0.0, $518 = 0, $519 = 0.0, $52 = 0, $520 = 0.0, $521 = 0, $522 = 0, $523 = 0.0, $524 = 0, $525 = 0.0, $526 = 0.0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0.0, $543 = 0.0, $544 = 0.0, $545 = 0.0, $546 = 0, $547 = 0.0, $548 = 0.0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; + var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; + var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; + var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; + var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; + var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0; + var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0; + var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0; + var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0; + var $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0; + var $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0; + var $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0; + var $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0; + var $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0; + var $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0; + var $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0; + var $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0; + var $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0; + var $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0; + var $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0; + var $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0; + var $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $98 = 0, $99 = 0, $arglist_current = 0, $arglist_current13 = 0, $arglist_current16 = 0, $arglist_current19 = 0, $arglist_current22 = 0; + var $arglist_current25 = 0, $arglist_current28 = 0, $arglist_current31 = 0, $arglist_current34 = 0, $arglist_current37 = 0, $arglist_current40 = 0, $arglist_current43 = 0, $arglist_current46 = 0, $arglist_current49 = 0, $arglist_current52 = 0, $arglist_next = 0, $arglist_next14 = 0, $arglist_next17 = 0, $arglist_next20 = 0, $arglist_next23 = 0, $arglist_next26 = 0, $arglist_next29 = 0, $arglist_next32 = 0, $arglist_next35 = 0, $arglist_next38 = 0; + var $arglist_next41 = 0, $arglist_next44 = 0, $arglist_next47 = 0, $arglist_next50 = 0, $arglist_next53 = 0, $bArgList = 0, $base = 0, $buf = 0, $bufpt = 0, $c = 0, $ch = 0, $cset = 0, $done = 0, $e2 = 0, $escarg = 0, $exp = 0, $flag_alternateform = 0, $flag_altform2 = 0, $flag_blanksign = 0, $flag_dp = 0; + var $flag_leftjustify = 0, $flag_long = 0, $flag_longlong = 0, $flag_plussign = 0, $flag_rtz = 0, $flag_zeropad = 0, $i = 0, $i2 = 0, $idx = 0, $infop = 0, $isnull = 0, $j = 0, $k = 0, $k3 = 0, $length = 0, $longvalue = 0, $n = 0, $nOut = 0, $nPad = 0, $needQuote = 0; + var $nsd = 0, $or$cond = 0, $or$cond11 = 0, $pArgList = 0, $pItem = 0, $pSrc = 0, $pToken = 0, $pre = 0, $precision = 0, $prefix = 0, $q = 0, $realvalue = 0, $rounder = 0, $scale = 0, $useIntern = 0, $v = 0, $width = 0, $x = 0, $x1 = 0, $xtype = 0; + var $zExtra = 0, $zOut = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 272|0; + $0 = sp + 156|0; + $1 = sp + 172|0; + $2 = sp + 160|0; + $3 = sp + 168|0; + $c = sp + 164|0; + $bufpt = sp + 152|0; + $precision = sp + 148|0; + $length = sp + 144|0; + $idx = sp + 140|0; + $width = sp + 136|0; + $flag_leftjustify = sp + 177|0; + $flag_plussign = sp + 178|0; + $flag_blanksign = sp + 180|0; + $flag_alternateform = sp + 181|0; + $flag_altform2 = sp + 183|0; + $flag_zeropad = sp + 185|0; + $flag_long = sp + 186|0; + $flag_longlong = sp + 187|0; + $done = sp + 258|0; + $xtype = sp + 261|0; + $bArgList = sp + 262|0; + $useIntern = sp + 263|0; + $prefix = sp + 264|0; + $longvalue = sp + 8|0; + $realvalue = sp + 16|0; + $infop = sp + 68|0; + $zOut = sp + 72|0; + $nOut = sp + 76|0; + $zExtra = sp + 80|0; + $exp = sp + 64|0; + $e2 = sp + 60|0; + $nsd = sp + 48|0; + $rounder = sp + 24|0; + $flag_dp = sp + 260|0; + $flag_rtz = sp + 259|0; + $pArgList = sp + 44|0; + $buf = sp + 188|0; + $v = sp; + $x = sp + 56|0; + $cset = sp + 52|0; + $base = sp + 184|0; + $pre = sp + 40|0; + $x1 = sp + 182|0; + $scale = sp + 32|0; + $i = sp + 84|0; + $nPad = sp + 88|0; + $i2 = sp + 92|0; + $j = sp + 96|0; + $k = sp + 100|0; + $n = sp + 104|0; + $isnull = sp + 108|0; + $needQuote = sp + 112|0; + $ch = sp + 179|0; + $q = sp + 176|0; + $escarg = sp + 116|0; + $pToken = sp + 120|0; + $pSrc = sp + 124|0; + $k3 = sp + 128|0; + $pItem = sp + 132|0; + HEAP32[$0>>2] = $pAccum; + HEAP32[$1>>2] = $bFlags; + HEAP32[$2>>2] = $fmt; + HEAP32[$3>>2] = $ap; + HEAP8[$xtype>>0] = 0; + HEAP32[$pArgList>>2] = 0; + HEAP32[$bufpt>>2] = 0; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)!=(0); + if ($5) { + $6 = HEAP32[$1>>2]|0; + $7 = $6 & 2; + $8 = $7&255; + HEAP8[$bArgList>>0] = $8; + $9 = $8&255; + $10 = ($9|0)!=(0); + if ($10) { + $11 = HEAP32[$3>>2]|0; + $arglist_current = HEAP32[$11>>2]|0; + $12 = HEAP32[$arglist_current>>2]|0; + $arglist_next = (($arglist_current) + 4|0); + HEAP32[$11>>2] = $arglist_next; + HEAP32[$pArgList>>2] = $12; + } + $13 = HEAP32[$1>>2]|0; + $14 = $13 & 1; + $15 = $14&255; + HEAP8[$useIntern>>0] = $15; + } else { + HEAP8[$useIntern>>0] = 0; + HEAP8[$bArgList>>0] = 0; + } + L7: while(1) { + $16 = HEAP32[$2>>2]|0; + $17 = HEAP8[$16>>0]|0; + $18 = $17 << 24 >> 24; + HEAP32[$c>>2] = $18; + $19 = ($18|0)!=(0); + if (!($19)) { + label = 283; + break; + } + $20 = HEAP32[$c>>2]|0; + $21 = ($20|0)!=(37); + if ($21) { + $22 = HEAP32[$2>>2]|0; + HEAP32[$bufpt>>2] = $22; + while(1) { + $23 = HEAP32[$2>>2]|0; + $24 = (($23) + 1|0); + HEAP32[$2>>2] = $24; + $25 = HEAP8[$24>>0]|0; + $26 = $25 << 24 >> 24; + HEAP32[$c>>2] = $26; + $27 = ($26|0)!=(37); + if (!($27)) { + break; + } + $28 = HEAP32[$c>>2]|0; + $29 = ($28|0)!=(0); + if (!($29)) { + break; + } + } + $30 = HEAP32[$0>>2]|0; + $31 = HEAP32[$bufpt>>2]|0; + $32 = HEAP32[$2>>2]|0; + $33 = HEAP32[$bufpt>>2]|0; + $34 = $32; + $35 = $33; + $36 = (($34) - ($35))|0; + _sqlite3StrAccumAppend($30,$31,$36); + $37 = HEAP32[$c>>2]|0; + $38 = ($37|0)==(0); + if ($38) { + label = 283; + break; + } + } + $39 = HEAP32[$2>>2]|0; + $40 = (($39) + 1|0); + HEAP32[$2>>2] = $40; + $41 = HEAP8[$40>>0]|0; + $42 = $41 << 24 >> 24; + HEAP32[$c>>2] = $42; + $43 = ($42|0)==(0); + if ($43) { + label = 13; + break; + } + HEAP8[$flag_zeropad>>0] = 0; + HEAP8[$flag_altform2>>0] = 0; + HEAP8[$flag_alternateform>>0] = 0; + HEAP8[$flag_blanksign>>0] = 0; + HEAP8[$flag_plussign>>0] = 0; + HEAP8[$flag_leftjustify>>0] = 0; + HEAP8[$done>>0] = 0; + while(1) { + $45 = HEAP32[$c>>2]|0; + switch ($45|0) { + case 43: { + HEAP8[$flag_plussign>>0] = 1; + break; + } + case 35: { + HEAP8[$flag_alternateform>>0] = 1; + break; + } + case 32: { + HEAP8[$flag_blanksign>>0] = 1; + break; + } + case 33: { + HEAP8[$flag_altform2>>0] = 1; + break; + } + case 48: { + HEAP8[$flag_zeropad>>0] = 1; + break; + } + case 45: { + HEAP8[$flag_leftjustify>>0] = 1; + break; + } + default: { + HEAP8[$done>>0] = 1; + } + } + $46 = HEAP8[$done>>0]|0; + $47 = ($46<<24>>24)!=(0); + if ($47) { + break; + } + $48 = HEAP32[$2>>2]|0; + $49 = (($48) + 1|0); + HEAP32[$2>>2] = $49; + $50 = HEAP8[$49>>0]|0; + $51 = $50 << 24 >> 24; + HEAP32[$c>>2] = $51; + $52 = ($51|0)!=(0); + if (!($52)) { + break; + } + } + HEAP32[$width>>2] = 0; + $53 = HEAP32[$c>>2]|0; + $54 = ($53|0)==(42); + L31: do { + if ($54) { + $55 = HEAP8[$bArgList>>0]|0; + $56 = ($55<<24>>24)!=(0); + if ($56) { + $57 = HEAP32[$pArgList>>2]|0; + $58 = (_getIntArg($57)|0); + $59 = tempRet0; + HEAP32[$width>>2] = $58; + } else { + $60 = HEAP32[$3>>2]|0; + $arglist_current13 = HEAP32[$60>>2]|0; + $61 = HEAP32[$arglist_current13>>2]|0; + $arglist_next14 = (($arglist_current13) + 4|0); + HEAP32[$60>>2] = $arglist_next14; + HEAP32[$width>>2] = $61; + } + $62 = HEAP32[$width>>2]|0; + $63 = ($62|0)<(0); + if ($63) { + HEAP8[$flag_leftjustify>>0] = 1; + $64 = HEAP32[$width>>2]|0; + $65 = (0 - ($64))|0; + HEAP32[$width>>2] = $65; + } + $66 = HEAP32[$2>>2]|0; + $67 = (($66) + 1|0); + HEAP32[$2>>2] = $67; + $68 = HEAP8[$67>>0]|0; + $69 = $68 << 24 >> 24; + HEAP32[$c>>2] = $69; + } else { + while(1) { + $70 = HEAP32[$c>>2]|0; + $71 = ($70|0)>=(48); + $72 = HEAP32[$c>>2]|0; + $73 = ($72|0)<=(57); + $or$cond = $71 & $73; + if (!($or$cond)) { + break L31; + } + $74 = HEAP32[$width>>2]|0; + $75 = ($74*10)|0; + $76 = HEAP32[$c>>2]|0; + $77 = (($75) + ($76))|0; + $78 = (($77) - 48)|0; + HEAP32[$width>>2] = $78; + $79 = HEAP32[$2>>2]|0; + $80 = (($79) + 1|0); + HEAP32[$2>>2] = $80; + $81 = HEAP8[$80>>0]|0; + $82 = $81 << 24 >> 24; + HEAP32[$c>>2] = $82; + } + } + } while(0); + $83 = HEAP32[$c>>2]|0; + $84 = ($83|0)==(46); + L44: do { + if ($84) { + HEAP32[$precision>>2] = 0; + $85 = HEAP32[$2>>2]|0; + $86 = (($85) + 1|0); + HEAP32[$2>>2] = $86; + $87 = HEAP8[$86>>0]|0; + $88 = $87 << 24 >> 24; + HEAP32[$c>>2] = $88; + $89 = HEAP32[$c>>2]|0; + $90 = ($89|0)==(42); + if (!($90)) { + while(1) { + $106 = HEAP32[$c>>2]|0; + $107 = ($106|0)>=(48); + $108 = HEAP32[$c>>2]|0; + $109 = ($108|0)<=(57); + $or$cond11 = $107 & $109; + if (!($or$cond11)) { + break L44; + } + $110 = HEAP32[$precision>>2]|0; + $111 = ($110*10)|0; + $112 = HEAP32[$c>>2]|0; + $113 = (($111) + ($112))|0; + $114 = (($113) - 48)|0; + HEAP32[$precision>>2] = $114; + $115 = HEAP32[$2>>2]|0; + $116 = (($115) + 1|0); + HEAP32[$2>>2] = $116; + $117 = HEAP8[$116>>0]|0; + $118 = $117 << 24 >> 24; + HEAP32[$c>>2] = $118; + } + } + $91 = HEAP8[$bArgList>>0]|0; + $92 = ($91<<24>>24)!=(0); + if ($92) { + $93 = HEAP32[$pArgList>>2]|0; + $94 = (_getIntArg($93)|0); + $95 = tempRet0; + HEAP32[$precision>>2] = $94; + } else { + $96 = HEAP32[$3>>2]|0; + $arglist_current16 = HEAP32[$96>>2]|0; + $97 = HEAP32[$arglist_current16>>2]|0; + $arglist_next17 = (($arglist_current16) + 4|0); + HEAP32[$96>>2] = $arglist_next17; + HEAP32[$precision>>2] = $97; + } + $98 = HEAP32[$precision>>2]|0; + $99 = ($98|0)<(0); + if ($99) { + $100 = HEAP32[$precision>>2]|0; + $101 = (0 - ($100))|0; + HEAP32[$precision>>2] = $101; + } + $102 = HEAP32[$2>>2]|0; + $103 = (($102) + 1|0); + HEAP32[$2>>2] = $103; + $104 = HEAP8[$103>>0]|0; + $105 = $104 << 24 >> 24; + HEAP32[$c>>2] = $105; + } else { + HEAP32[$precision>>2] = -1; + } + } while(0); + $119 = HEAP32[$c>>2]|0; + $120 = ($119|0)==(108); + do { + if ($120) { + HEAP8[$flag_long>>0] = 1; + $121 = HEAP32[$2>>2]|0; + $122 = (($121) + 1|0); + HEAP32[$2>>2] = $122; + $123 = HEAP8[$122>>0]|0; + $124 = $123 << 24 >> 24; + HEAP32[$c>>2] = $124; + $125 = HEAP32[$c>>2]|0; + $126 = ($125|0)==(108); + if ($126) { + HEAP8[$flag_longlong>>0] = 1; + $127 = HEAP32[$2>>2]|0; + $128 = (($127) + 1|0); + HEAP32[$2>>2] = $128; + $129 = HEAP8[$128>>0]|0; + $130 = $129 << 24 >> 24; + HEAP32[$c>>2] = $130; + break; + } else { + HEAP8[$flag_longlong>>0] = 0; + break; + } + } else { + HEAP8[$flag_longlong>>0] = 0; + HEAP8[$flag_long>>0] = 0; + } + } while(0); + HEAP32[$infop>>2] = 44888; + HEAP8[$xtype>>0] = 0; + HEAP32[$idx>>2] = 0; + while(1) { + $131 = HEAP32[$idx>>2]|0; + $132 = ($131|0)<(23); + if (!($132)) { + break; + } + $133 = HEAP32[$c>>2]|0; + $134 = HEAP32[$idx>>2]|0; + $135 = (44888 + (($134*6)|0)|0); + $136 = HEAP8[$135>>0]|0; + $137 = $136 << 24 >> 24; + $138 = ($133|0)==($137|0); + $139 = HEAP32[$idx>>2]|0; + if ($138) { + label = 53; + break; + } + $153 = (($139) + 1)|0; + HEAP32[$idx>>2] = $153; + } + if ((label|0) == 53) { + label = 0; + $140 = (44888 + (($139*6)|0)|0); + HEAP32[$infop>>2] = $140; + $141 = HEAP8[$useIntern>>0]|0; + $142 = $141&255; + $143 = ($142|0)!=(0); + if (!($143)) { + $144 = HEAP32[$infop>>2]|0; + $145 = (($144) + 2|0); + $146 = HEAP8[$145>>0]|0; + $147 = $146&255; + $148 = $147 & 2; + $149 = ($148|0)==(0); + if (!($149)) { + label = 283; + break; + } + } + $150 = HEAP32[$infop>>2]|0; + $151 = (($150) + 3|0); + $152 = HEAP8[$151>>0]|0; + HEAP8[$xtype>>0] = $152; + } + HEAP32[$zExtra>>2] = 0; + $154 = HEAP8[$xtype>>0]|0; + $155 = $154&255; + L77: do { + switch ($155|0) { + case 14: { + HEAP8[$flag_longlong>>0] = 0; + HEAP8[$flag_long>>0] = 1; + label = 59; + break; + } + case 1: case 16: { + label = 59; + break; + } + case 4: case 3: case 2: { + $434 = HEAP8[$bArgList>>0]|0; + $435 = ($434<<24>>24)!=(0); + if ($435) { + $436 = HEAP32[$pArgList>>2]|0; + $437 = (+_getDoubleArg($436)); + HEAPF64[$realvalue>>3] = $437; + } else { + $438 = HEAP32[$3>>2]|0; + $arglist_current31 = HEAP32[$438>>2]|0; + HEAP32[tempDoublePtr>>2]=HEAP32[$arglist_current31>>2];HEAP32[tempDoublePtr+4>>2]=HEAP32[$arglist_current31+4>>2];$439 = +HEAPF64[tempDoublePtr>>3]; + $arglist_next32 = (($arglist_current31) + 8|0); + HEAP32[$438>>2] = $arglist_next32; + HEAPF64[$realvalue>>3] = $439; + } + $440 = HEAP32[$precision>>2]|0; + $441 = ($440|0)<(0); + if ($441) { + HEAP32[$precision>>2] = 6; + } + $442 = +HEAPF64[$realvalue>>3]; + $443 = $442 < 0.0; + do { + if ($443) { + $444 = +HEAPF64[$realvalue>>3]; + $445 = -$444; + HEAPF64[$realvalue>>3] = $445; + HEAP8[$prefix>>0] = 45; + } else { + $446 = HEAP8[$flag_plussign>>0]|0; + $447 = ($446<<24>>24)!=(0); + if ($447) { + HEAP8[$prefix>>0] = 43; + break; + } + $448 = HEAP8[$flag_blanksign>>0]|0; + $449 = ($448<<24>>24)!=(0); + if ($449) { + HEAP8[$prefix>>0] = 32; + break; + } else { + HEAP8[$prefix>>0] = 0; + break; + } + } + } while(0); + $450 = HEAP8[$xtype>>0]|0; + $451 = $450&255; + $452 = ($451|0)==(4); + if ($452) { + $453 = HEAP32[$precision>>2]|0; + $454 = ($453|0)>(0); + if ($454) { + $455 = HEAP32[$precision>>2]|0; + $456 = (($455) + -1)|0; + HEAP32[$precision>>2] = $456; + } + } + $457 = HEAP32[$precision>>2]|0; + HEAP32[$idx>>2] = $457; + HEAPF64[$rounder>>3] = 0.5; + while(1) { + $458 = HEAP32[$idx>>2]|0; + $459 = ($458|0)>(0); + if (!($459)) { + break; + } + $460 = HEAP32[$idx>>2]|0; + $461 = (($460) + -1)|0; + HEAP32[$idx>>2] = $461; + $462 = +HEAPF64[$rounder>>3]; + $463 = $462 * 0.100000000000000005551; + HEAPF64[$rounder>>3] = $463; + } + $464 = HEAP8[$xtype>>0]|0; + $465 = $464&255; + $466 = ($465|0)==(2); + if ($466) { + $467 = +HEAPF64[$rounder>>3]; + $468 = +HEAPF64[$realvalue>>3]; + $469 = $468 + $467; + HEAPF64[$realvalue>>3] = $469; + } + HEAP32[$exp>>2] = 0; + $470 = +HEAPF64[$realvalue>>3]; + $471 = (_sqlite3IsNaN($470)|0); + $472 = ($471|0)!=(0); + if ($472) { + HEAP32[$bufpt>>2] = 45096; + HEAP32[$length>>2] = 3; + break L77; + } + $473 = +HEAPF64[$realvalue>>3]; + $474 = $473 > 0.0; + if ($474) { + HEAPF64[$scale>>3] = 1.0; + while(1) { + $475 = +HEAPF64[$realvalue>>3]; + $476 = +HEAPF64[$scale>>3]; + $477 = 1.0000000000000000159E+100 * $476; + $478 = $475 >= $477; + if (!($478)) { + break; + } + $479 = HEAP32[$exp>>2]|0; + $480 = ($479|0)<=(350); + if (!($480)) { + break; + } + $481 = +HEAPF64[$scale>>3]; + $482 = $481 * 1.0000000000000000159E+100; + HEAPF64[$scale>>3] = $482; + $483 = HEAP32[$exp>>2]|0; + $484 = (($483) + 100)|0; + HEAP32[$exp>>2] = $484; + } + while(1) { + $485 = +HEAPF64[$realvalue>>3]; + $486 = +HEAPF64[$scale>>3]; + $487 = 1.00000000000000002132E+64 * $486; + $488 = $485 >= $487; + if (!($488)) { + break; + } + $489 = HEAP32[$exp>>2]|0; + $490 = ($489|0)<=(350); + if (!($490)) { + break; + } + $491 = +HEAPF64[$scale>>3]; + $492 = $491 * 1.00000000000000002132E+64; + HEAPF64[$scale>>3] = $492; + $493 = HEAP32[$exp>>2]|0; + $494 = (($493) + 64)|0; + HEAP32[$exp>>2] = $494; + } + while(1) { + $495 = +HEAPF64[$realvalue>>3]; + $496 = +HEAPF64[$scale>>3]; + $497 = 1.0E+8 * $496; + $498 = $495 >= $497; + if (!($498)) { + break; + } + $499 = HEAP32[$exp>>2]|0; + $500 = ($499|0)<=(350); + if (!($500)) { + break; + } + $501 = +HEAPF64[$scale>>3]; + $502 = $501 * 1.0E+8; + HEAPF64[$scale>>3] = $502; + $503 = HEAP32[$exp>>2]|0; + $504 = (($503) + 8)|0; + HEAP32[$exp>>2] = $504; + } + while(1) { + $505 = +HEAPF64[$realvalue>>3]; + $506 = +HEAPF64[$scale>>3]; + $507 = 10.0 * $506; + $508 = $505 >= $507; + if ($508) { + $509 = HEAP32[$exp>>2]|0; + $510 = ($509|0)<=(350); + $974 = $510; + } else { + $974 = 0; + } + $511 = +HEAPF64[$scale>>3]; + if (!($974)) { + break; + } + $512 = $511 * 10.0; + HEAPF64[$scale>>3] = $512; + $513 = HEAP32[$exp>>2]|0; + $514 = (($513) + 1)|0; + HEAP32[$exp>>2] = $514; + } + $515 = +HEAPF64[$realvalue>>3]; + $516 = $515 / $511; + HEAPF64[$realvalue>>3] = $516; + while(1) { + $517 = +HEAPF64[$realvalue>>3]; + $518 = $517 < 1.00000000000000002092E-8; + if (!($518)) { + break; + } + $519 = +HEAPF64[$realvalue>>3]; + $520 = $519 * 1.0E+8; + HEAPF64[$realvalue>>3] = $520; + $521 = HEAP32[$exp>>2]|0; + $522 = (($521) - 8)|0; + HEAP32[$exp>>2] = $522; + } + while(1) { + $523 = +HEAPF64[$realvalue>>3]; + $524 = $523 < 1.0; + if (!($524)) { + break; + } + $525 = +HEAPF64[$realvalue>>3]; + $526 = $525 * 10.0; + HEAPF64[$realvalue>>3] = $526; + $527 = HEAP32[$exp>>2]|0; + $528 = (($527) + -1)|0; + HEAP32[$exp>>2] = $528; + } + $529 = HEAP32[$exp>>2]|0; + $530 = ($529|0)>(350); + if ($530) { + $531 = HEAP8[$prefix>>0]|0; + $532 = $531 << 24 >> 24; + $533 = ($532|0)==(45); + do { + if ($533) { + HEAP32[$bufpt>>2] = 45104; + } else { + $534 = HEAP8[$prefix>>0]|0; + $535 = $534 << 24 >> 24; + $536 = ($535|0)==(43); + if ($536) { + HEAP32[$bufpt>>2] = 45112; + break; + } else { + HEAP32[$bufpt>>2] = 45120; + break; + } + } + } while(0); + $537 = HEAP32[$bufpt>>2]|0; + $538 = (_sqlite3Strlen30($537)|0); + HEAP32[$length>>2] = $538; + break L77; + } + } + HEAP32[$bufpt>>2] = $buf; + $539 = HEAP8[$xtype>>0]|0; + $540 = $539&255; + $541 = ($540|0)!=(2); + if ($541) { + $542 = +HEAPF64[$rounder>>3]; + $543 = +HEAPF64[$realvalue>>3]; + $544 = $543 + $542; + HEAPF64[$realvalue>>3] = $544; + $545 = +HEAPF64[$realvalue>>3]; + $546 = $545 >= 10.0; + if ($546) { + $547 = +HEAPF64[$realvalue>>3]; + $548 = $547 * 0.100000000000000005551; + HEAPF64[$realvalue>>3] = $548; + $549 = HEAP32[$exp>>2]|0; + $550 = (($549) + 1)|0; + HEAP32[$exp>>2] = $550; + } + } + $551 = HEAP8[$xtype>>0]|0; + $552 = $551&255; + $553 = ($552|0)==(4); + L152: do { + if ($553) { + $554 = HEAP8[$flag_alternateform>>0]|0; + $555 = ($554<<24>>24)!=(0); + $556 = $555 ^ 1; + $557 = $556&1; + $558 = $557&255; + HEAP8[$flag_rtz>>0] = $558; + $559 = HEAP32[$exp>>2]|0; + $560 = ($559|0)<(-4); + do { + if (!($560)) { + $561 = HEAP32[$exp>>2]|0; + $562 = HEAP32[$precision>>2]|0; + $563 = ($561|0)>($562|0); + if ($563) { + break; + } + $564 = HEAP32[$precision>>2]|0; + $565 = HEAP32[$exp>>2]|0; + $566 = (($564) - ($565))|0; + HEAP32[$precision>>2] = $566; + HEAP8[$xtype>>0] = 2; + break L152; + } + } while(0); + HEAP8[$xtype>>0] = 3; + } else { + $567 = HEAP8[$flag_altform2>>0]|0; + HEAP8[$flag_rtz>>0] = $567; + } + } while(0); + $568 = HEAP8[$xtype>>0]|0; + $569 = $568&255; + $570 = ($569|0)==(3); + if ($570) { + HEAP32[$e2>>2] = 0; + } else { + $571 = HEAP32[$exp>>2]|0; + HEAP32[$e2>>2] = $571; + } + $572 = HEAP32[$e2>>2]|0; + $573 = ($572|0)>(0); + $574 = HEAP32[$e2>>2]|0; + $575 = $573 ? $574 : 0; + $576 = HEAP32[$precision>>2]|0; + $577 = (($575) + ($576))|0; + $578 = HEAP32[$width>>2]|0; + $579 = (($577) + ($578))|0; + $580 = ($579|0)>(55); + if ($580) { + $581 = HEAP32[$e2>>2]|0; + $582 = ($581|0)>(0); + $583 = HEAP32[$e2>>2]|0; + $584 = $582 ? $583 : 0; + $585 = HEAP32[$precision>>2]|0; + $586 = (($584) + ($585))|0; + $587 = HEAP32[$width>>2]|0; + $588 = (($586) + ($587))|0; + $589 = (($588) + 15)|0; + $590 = (_sqlite3Malloc($589)|0); + HEAP32[$zExtra>>2] = $590; + HEAP32[$bufpt>>2] = $590; + $591 = HEAP32[$bufpt>>2]|0; + $592 = ($591|0)==(0|0); + if ($592) { + label = 171; + break L7; + } + } + $594 = HEAP32[$bufpt>>2]|0; + HEAP32[$zOut>>2] = $594; + $595 = HEAP8[$flag_altform2>>0]|0; + $596 = $595&255; + $597 = ($596*10)|0; + $598 = (16 + ($597))|0; + HEAP32[$nsd>>2] = $598; + $599 = HEAP32[$precision>>2]|0; + $600 = ($599|0)>(0); + $601 = $600 ? 1 : 0; + $602 = HEAP8[$flag_alternateform>>0]|0; + $603 = $602&255; + $604 = $601 | $603; + $605 = HEAP8[$flag_altform2>>0]|0; + $606 = $605&255; + $607 = $604 | $606; + $608 = $607&255; + HEAP8[$flag_dp>>0] = $608; + $609 = HEAP8[$prefix>>0]|0; + $610 = ($609<<24>>24)!=(0); + if ($610) { + $611 = HEAP8[$prefix>>0]|0; + $612 = HEAP32[$bufpt>>2]|0; + $613 = (($612) + 1|0); + HEAP32[$bufpt>>2] = $613; + HEAP8[$612>>0] = $611; + } + $614 = HEAP32[$e2>>2]|0; + $615 = ($614|0)<(0); + L170: do { + if ($615) { + $616 = HEAP32[$bufpt>>2]|0; + $617 = (($616) + 1|0); + HEAP32[$bufpt>>2] = $617; + HEAP8[$616>>0] = 48; + } else { + while(1) { + $618 = HEAP32[$e2>>2]|0; + $619 = ($618|0)>=(0); + if (!($619)) { + break L170; + } + $620 = (_et_getdigit($realvalue,$nsd)|0); + $621 = HEAP32[$bufpt>>2]|0; + $622 = (($621) + 1|0); + HEAP32[$bufpt>>2] = $622; + HEAP8[$621>>0] = $620; + $623 = HEAP32[$e2>>2]|0; + $624 = (($623) + -1)|0; + HEAP32[$e2>>2] = $624; + } + } + } while(0); + $625 = HEAP8[$flag_dp>>0]|0; + $626 = ($625<<24>>24)!=(0); + if ($626) { + $627 = HEAP32[$bufpt>>2]|0; + $628 = (($627) + 1|0); + HEAP32[$bufpt>>2] = $628; + HEAP8[$627>>0] = 46; + } + $629 = HEAP32[$e2>>2]|0; + $630 = (($629) + 1)|0; + HEAP32[$e2>>2] = $630; + while(1) { + $631 = HEAP32[$e2>>2]|0; + $632 = ($631|0)<(0); + if (!($632)) { + break; + } + $633 = HEAP32[$bufpt>>2]|0; + $634 = (($633) + 1|0); + HEAP32[$bufpt>>2] = $634; + HEAP8[$633>>0] = 48; + $635 = HEAP32[$precision>>2]|0; + $636 = (($635) + -1)|0; + HEAP32[$precision>>2] = $636; + $637 = HEAP32[$e2>>2]|0; + $638 = (($637) + 1)|0; + HEAP32[$e2>>2] = $638; + } + while(1) { + $639 = HEAP32[$precision>>2]|0; + $640 = (($639) + -1)|0; + HEAP32[$precision>>2] = $640; + $641 = ($639|0)>(0); + if (!($641)) { + break; + } + $642 = (_et_getdigit($realvalue,$nsd)|0); + $643 = HEAP32[$bufpt>>2]|0; + $644 = (($643) + 1|0); + HEAP32[$bufpt>>2] = $644; + HEAP8[$643>>0] = $642; + } + $645 = HEAP8[$flag_rtz>>0]|0; + $646 = $645&255; + $647 = ($646|0)!=(0); + do { + if ($647) { + $648 = HEAP8[$flag_dp>>0]|0; + $649 = $648&255; + $650 = ($649|0)!=(0); + if (!($650)) { + break; + } + while(1) { + $651 = HEAP32[$bufpt>>2]|0; + $652 = (($651) + -1|0); + $653 = HEAP8[$652>>0]|0; + $654 = $653 << 24 >> 24; + $655 = ($654|0)==(48); + $656 = HEAP32[$bufpt>>2]|0; + $657 = (($656) + -1|0); + if (!($655)) { + break; + } + HEAP32[$bufpt>>2] = $657; + HEAP8[$657>>0] = 0; + } + $658 = HEAP8[$657>>0]|0; + $659 = $658 << 24 >> 24; + $660 = ($659|0)==(46); + if (!($660)) { + break; + } + $661 = HEAP8[$flag_altform2>>0]|0; + $662 = ($661<<24>>24)!=(0); + $663 = HEAP32[$bufpt>>2]|0; + if ($662) { + $664 = (($663) + 1|0); + HEAP32[$bufpt>>2] = $664; + HEAP8[$663>>0] = 48; + break; + } else { + $665 = (($663) + -1|0); + HEAP32[$bufpt>>2] = $665; + HEAP8[$665>>0] = 0; + break; + } + } + } while(0); + $666 = HEAP8[$xtype>>0]|0; + $667 = $666&255; + $668 = ($667|0)==(3); + if ($668) { + $669 = HEAP32[$infop>>2]|0; + $670 = (($669) + 4|0); + $671 = HEAP8[$670>>0]|0; + $672 = $671&255; + $673 = (45048 + ($672)|0); + $674 = HEAP8[$673>>0]|0; + $675 = HEAP32[$bufpt>>2]|0; + $676 = (($675) + 1|0); + HEAP32[$bufpt>>2] = $676; + HEAP8[$675>>0] = $674; + $677 = HEAP32[$exp>>2]|0; + $678 = ($677|0)<(0); + $679 = HEAP32[$bufpt>>2]|0; + $680 = (($679) + 1|0); + HEAP32[$bufpt>>2] = $680; + if ($678) { + HEAP8[$679>>0] = 45; + $681 = HEAP32[$exp>>2]|0; + $682 = (0 - ($681))|0; + HEAP32[$exp>>2] = $682; + } else { + HEAP8[$679>>0] = 43; + } + $683 = HEAP32[$exp>>2]|0; + $684 = ($683|0)>=(100); + if ($684) { + $685 = HEAP32[$exp>>2]|0; + $686 = (($685|0) / 100)&-1; + $687 = (($686) + 48)|0; + $688 = $687&255; + $689 = HEAP32[$bufpt>>2]|0; + $690 = (($689) + 1|0); + HEAP32[$bufpt>>2] = $690; + HEAP8[$689>>0] = $688; + $691 = HEAP32[$exp>>2]|0; + $692 = (($691|0) % 100)&-1; + HEAP32[$exp>>2] = $692; + } + $693 = HEAP32[$exp>>2]|0; + $694 = (($693|0) / 10)&-1; + $695 = (($694) + 48)|0; + $696 = $695&255; + $697 = HEAP32[$bufpt>>2]|0; + $698 = (($697) + 1|0); + HEAP32[$bufpt>>2] = $698; + HEAP8[$697>>0] = $696; + $699 = HEAP32[$exp>>2]|0; + $700 = (($699|0) % 10)&-1; + $701 = (($700) + 48)|0; + $702 = $701&255; + $703 = HEAP32[$bufpt>>2]|0; + $704 = (($703) + 1|0); + HEAP32[$bufpt>>2] = $704; + HEAP8[$703>>0] = $702; + } + $705 = HEAP32[$bufpt>>2]|0; + HEAP8[$705>>0] = 0; + $706 = HEAP32[$bufpt>>2]|0; + $707 = HEAP32[$zOut>>2]|0; + $708 = $706; + $709 = $707; + $710 = (($708) - ($709))|0; + HEAP32[$length>>2] = $710; + $711 = HEAP32[$zOut>>2]|0; + HEAP32[$bufpt>>2] = $711; + $712 = HEAP8[$flag_zeropad>>0]|0; + $713 = $712&255; + $714 = ($713|0)!=(0); + if (!($714)) { + break L77; + } + $715 = HEAP8[$flag_leftjustify>>0]|0; + $716 = ($715<<24>>24)!=(0); + if ($716) { + break L77; + } + $717 = HEAP32[$length>>2]|0; + $718 = HEAP32[$width>>2]|0; + $719 = ($717|0)<($718|0); + if (!($719)) { + break L77; + } + $720 = HEAP32[$width>>2]|0; + $721 = HEAP32[$length>>2]|0; + $722 = (($720) - ($721))|0; + HEAP32[$nPad>>2] = $722; + $723 = HEAP32[$width>>2]|0; + HEAP32[$i>>2] = $723; + while(1) { + $724 = HEAP32[$i>>2]|0; + $725 = HEAP32[$nPad>>2]|0; + $726 = ($724|0)>=($725|0); + if (!($726)) { + break; + } + $727 = HEAP32[$i>>2]|0; + $728 = HEAP32[$nPad>>2]|0; + $729 = (($727) - ($728))|0; + $730 = HEAP32[$bufpt>>2]|0; + $731 = (($730) + ($729)|0); + $732 = HEAP8[$731>>0]|0; + $733 = HEAP32[$i>>2]|0; + $734 = HEAP32[$bufpt>>2]|0; + $735 = (($734) + ($733)|0); + HEAP8[$735>>0] = $732; + $736 = HEAP32[$i>>2]|0; + $737 = (($736) + -1)|0; + HEAP32[$i>>2] = $737; + } + $738 = HEAP8[$prefix>>0]|0; + $739 = $738 << 24 >> 24; + $740 = ($739|0)!=(0); + $741 = $740&1; + HEAP32[$i>>2] = $741; + while(1) { + $742 = HEAP32[$nPad>>2]|0; + $743 = (($742) + -1)|0; + HEAP32[$nPad>>2] = $743; + $744 = ($742|0)!=(0); + if (!($744)) { + break; + } + $745 = HEAP32[$i>>2]|0; + $746 = (($745) + 1)|0; + HEAP32[$i>>2] = $746; + $747 = HEAP32[$bufpt>>2]|0; + $748 = (($747) + ($745)|0); + HEAP8[$748>>0] = 48; + } + $749 = HEAP32[$width>>2]|0; + HEAP32[$length>>2] = $749; + break; + } + case 15: case 11: case 10: { + $812 = HEAP8[$xtype>>0]|0; + $813 = $812&255; + $814 = ($813|0)==(15); + $815 = $814 ? 34 : 39; + $816 = $815&255; + HEAP8[$q>>0] = $816; + $817 = HEAP8[$bArgList>>0]|0; + $818 = ($817<<24>>24)!=(0); + if ($818) { + $819 = HEAP32[$pArgList>>2]|0; + $820 = (_getTextArg($819)|0); + HEAP32[$escarg>>2] = $820; + } else { + $821 = HEAP32[$3>>2]|0; + $arglist_current43 = HEAP32[$821>>2]|0; + $822 = HEAP32[$arglist_current43>>2]|0; + $arglist_next44 = (($arglist_current43) + 4|0); + HEAP32[$821>>2] = $arglist_next44; + HEAP32[$escarg>>2] = $822; + } + $823 = HEAP32[$escarg>>2]|0; + $824 = ($823|0)==(0|0); + $825 = $824&1; + HEAP32[$isnull>>2] = $825; + $826 = HEAP32[$isnull>>2]|0; + $827 = ($826|0)!=(0); + if ($827) { + $828 = HEAP8[$xtype>>0]|0; + $829 = $828&255; + $830 = ($829|0)==(11); + $831 = $830 ? 16376 : 45128; + HEAP32[$escarg>>2] = $831; + } + $832 = HEAP32[$precision>>2]|0; + HEAP32[$k>>2] = $832; + HEAP32[$n>>2] = 0; + HEAP32[$i2>>2] = 0; + while(1) { + $833 = HEAP32[$k>>2]|0; + $834 = ($833|0)!=(0); + if (!($834)) { + break; + } + $835 = HEAP32[$i2>>2]|0; + $836 = HEAP32[$escarg>>2]|0; + $837 = (($836) + ($835)|0); + $838 = HEAP8[$837>>0]|0; + HEAP8[$ch>>0] = $838; + $839 = $838 << 24 >> 24; + $840 = ($839|0)!=(0); + if (!($840)) { + break; + } + $841 = HEAP8[$ch>>0]|0; + $842 = $841 << 24 >> 24; + $843 = HEAP8[$q>>0]|0; + $844 = $843 << 24 >> 24; + $845 = ($842|0)==($844|0); + if ($845) { + $846 = HEAP32[$n>>2]|0; + $847 = (($846) + 1)|0; + HEAP32[$n>>2] = $847; + } + $848 = HEAP32[$i2>>2]|0; + $849 = (($848) + 1)|0; + HEAP32[$i2>>2] = $849; + $850 = HEAP32[$k>>2]|0; + $851 = (($850) + -1)|0; + HEAP32[$k>>2] = $851; + } + $852 = HEAP32[$isnull>>2]|0; + $853 = ($852|0)!=(0); + if ($853) { + $858 = 0; + } else { + $854 = HEAP8[$xtype>>0]|0; + $855 = $854&255; + $856 = ($855|0)==(11); + $858 = $856; + } + $857 = $858&1; + HEAP32[$needQuote>>2] = $857; + $859 = HEAP32[$i2>>2]|0; + $860 = (($859) + 1)|0; + $861 = HEAP32[$needQuote>>2]|0; + $862 = $861<<1; + $863 = (($860) + ($862))|0; + $864 = HEAP32[$n>>2]|0; + $865 = (($864) + ($863))|0; + HEAP32[$n>>2] = $865; + $866 = HEAP32[$n>>2]|0; + $867 = ($866|0)>(70); + if ($867) { + $868 = HEAP32[$n>>2]|0; + $869 = (_sqlite3Malloc($868)|0); + HEAP32[$zExtra>>2] = $869; + HEAP32[$bufpt>>2] = $869; + $870 = HEAP32[$bufpt>>2]|0; + $871 = ($870|0)==(0|0); + if ($871) { + label = 255; + break L7; + } + } else { + HEAP32[$bufpt>>2] = $buf; + } + HEAP32[$j>>2] = 0; + $873 = HEAP32[$needQuote>>2]|0; + $874 = ($873|0)!=(0); + if ($874) { + $875 = HEAP8[$q>>0]|0; + $876 = HEAP32[$j>>2]|0; + $877 = (($876) + 1)|0; + HEAP32[$j>>2] = $877; + $878 = HEAP32[$bufpt>>2]|0; + $879 = (($878) + ($876)|0); + HEAP8[$879>>0] = $875; + } + $880 = HEAP32[$i2>>2]|0; + HEAP32[$k>>2] = $880; + HEAP32[$i2>>2] = 0; + while(1) { + $881 = HEAP32[$i2>>2]|0; + $882 = HEAP32[$k>>2]|0; + $883 = ($881|0)<($882|0); + if (!($883)) { + break; + } + $884 = HEAP32[$i2>>2]|0; + $885 = HEAP32[$escarg>>2]|0; + $886 = (($885) + ($884)|0); + $887 = HEAP8[$886>>0]|0; + HEAP8[$ch>>0] = $887; + $888 = HEAP32[$j>>2]|0; + $889 = (($888) + 1)|0; + HEAP32[$j>>2] = $889; + $890 = HEAP32[$bufpt>>2]|0; + $891 = (($890) + ($888)|0); + HEAP8[$891>>0] = $887; + $892 = HEAP8[$ch>>0]|0; + $893 = $892 << 24 >> 24; + $894 = HEAP8[$q>>0]|0; + $895 = $894 << 24 >> 24; + $896 = ($893|0)==($895|0); + if ($896) { + $897 = HEAP8[$ch>>0]|0; + $898 = HEAP32[$j>>2]|0; + $899 = (($898) + 1)|0; + HEAP32[$j>>2] = $899; + $900 = HEAP32[$bufpt>>2]|0; + $901 = (($900) + ($898)|0); + HEAP8[$901>>0] = $897; + } + $902 = HEAP32[$i2>>2]|0; + $903 = (($902) + 1)|0; + HEAP32[$i2>>2] = $903; + } + $904 = HEAP32[$needQuote>>2]|0; + $905 = ($904|0)!=(0); + if ($905) { + $906 = HEAP8[$q>>0]|0; + $907 = HEAP32[$j>>2]|0; + $908 = (($907) + 1)|0; + HEAP32[$j>>2] = $908; + $909 = HEAP32[$bufpt>>2]|0; + $910 = (($909) + ($907)|0); + HEAP8[$910>>0] = $906; + } + $911 = HEAP32[$j>>2]|0; + $912 = HEAP32[$bufpt>>2]|0; + $913 = (($912) + ($911)|0); + HEAP8[$913>>0] = 0; + $914 = HEAP32[$j>>2]|0; + HEAP32[$length>>2] = $914; + break; + } + case 5: { + $750 = HEAP8[$bArgList>>0]|0; + $751 = ($750<<24>>24)!=(0); + if (!($751)) { + $752 = HEAP32[$0>>2]|0; + $753 = (($752) + 12|0); + $754 = HEAP32[$753>>2]|0; + $755 = HEAP32[$3>>2]|0; + $arglist_current34 = HEAP32[$755>>2]|0; + $756 = HEAP32[$arglist_current34>>2]|0; + $arglist_next35 = (($arglist_current34) + 4|0); + HEAP32[$755>>2] = $arglist_next35; + HEAP32[$756>>2] = $754; + } + HEAP32[$width>>2] = 0; + HEAP32[$length>>2] = 0; + break; + } + case 8: { + HEAP8[$buf>>0] = 37; + HEAP32[$bufpt>>2] = $buf; + HEAP32[$length>>2] = 1; + break; + } + case 9: { + $757 = HEAP8[$bArgList>>0]|0; + $758 = ($757<<24>>24)!=(0); + if ($758) { + $759 = HEAP32[$pArgList>>2]|0; + $760 = (_getTextArg($759)|0); + HEAP32[$bufpt>>2] = $760; + $761 = HEAP32[$bufpt>>2]|0; + $762 = ($761|0)!=(0|0); + if ($762) { + $763 = HEAP32[$bufpt>>2]|0; + $764 = HEAP8[$763>>0]|0; + $765 = $764 << 24 >> 24; + $766 = $765; + } else { + $766 = 0; + } + HEAP32[$c>>2] = $766; + } else { + $767 = HEAP32[$3>>2]|0; + $arglist_current37 = HEAP32[$767>>2]|0; + $768 = HEAP32[$arglist_current37>>2]|0; + $arglist_next38 = (($arglist_current37) + 4|0); + HEAP32[$767>>2] = $arglist_next38; + HEAP32[$c>>2] = $768; + } + $769 = HEAP32[$c>>2]|0; + $770 = $769&255; + HEAP8[$buf>>0] = $770; + $771 = HEAP32[$precision>>2]|0; + $772 = ($771|0)>=(0); + if ($772) { + HEAP32[$idx>>2] = 1; + while(1) { + $773 = HEAP32[$idx>>2]|0; + $774 = HEAP32[$precision>>2]|0; + $775 = ($773|0)<($774|0); + if (!($775)) { + break; + } + $776 = HEAP32[$c>>2]|0; + $777 = $776&255; + $778 = HEAP32[$idx>>2]|0; + $779 = (($buf) + ($778)|0); + HEAP8[$779>>0] = $777; + $780 = HEAP32[$idx>>2]|0; + $781 = (($780) + 1)|0; + HEAP32[$idx>>2] = $781; + } + $782 = HEAP32[$precision>>2]|0; + HEAP32[$length>>2] = $782; + } else { + HEAP32[$length>>2] = 1; + } + HEAP32[$bufpt>>2] = $buf; + break; + } + case 7: case 6: { + $783 = HEAP8[$bArgList>>0]|0; + $784 = ($783<<24>>24)!=(0); + if ($784) { + $785 = HEAP32[$pArgList>>2]|0; + $786 = (_getTextArg($785)|0); + HEAP32[$bufpt>>2] = $786; + } else { + $787 = HEAP32[$3>>2]|0; + $arglist_current40 = HEAP32[$787>>2]|0; + $788 = HEAP32[$arglist_current40>>2]|0; + $arglist_next41 = (($arglist_current40) + 4|0); + HEAP32[$787>>2] = $arglist_next41; + HEAP32[$bufpt>>2] = $788; + } + $789 = HEAP32[$bufpt>>2]|0; + $790 = ($789|0)==(0|0); + if ($790) { + HEAP32[$bufpt>>2] = 1784; + } else { + $791 = HEAP8[$xtype>>0]|0; + $792 = $791&255; + $793 = ($792|0)==(7); + if ($793) { + $794 = HEAP8[$bArgList>>0]|0; + $795 = ($794<<24>>24)!=(0); + if (!($795)) { + $796 = HEAP32[$bufpt>>2]|0; + HEAP32[$zExtra>>2] = $796; + } + } + } + $797 = HEAP32[$precision>>2]|0; + $798 = ($797|0)>=(0); + if (!($798)) { + $810 = HEAP32[$bufpt>>2]|0; + $811 = (_sqlite3Strlen30($810)|0); + HEAP32[$length>>2] = $811; + break L77; + } + HEAP32[$length>>2] = 0; + while(1) { + $799 = HEAP32[$length>>2]|0; + $800 = HEAP32[$precision>>2]|0; + $801 = ($799|0)<($800|0); + if (!($801)) { + break L77; + } + $802 = HEAP32[$length>>2]|0; + $803 = HEAP32[$bufpt>>2]|0; + $804 = (($803) + ($802)|0); + $805 = HEAP8[$804>>0]|0; + $806 = $805 << 24 >> 24; + $807 = ($806|0)!=(0); + if (!($807)) { + break L77; + } + $808 = HEAP32[$length>>2]|0; + $809 = (($808) + 1)|0; + HEAP32[$length>>2] = $809; + } + break; + } + case 13: { + $929 = HEAP32[$3>>2]|0; + $arglist_current49 = HEAP32[$929>>2]|0; + $930 = HEAP32[$arglist_current49>>2]|0; + $arglist_next50 = (($arglist_current49) + 4|0); + HEAP32[$929>>2] = $arglist_next50; + HEAP32[$pSrc>>2] = $930; + $931 = HEAP32[$3>>2]|0; + $arglist_current52 = HEAP32[$931>>2]|0; + $932 = HEAP32[$arglist_current52>>2]|0; + $arglist_next53 = (($arglist_current52) + 4|0); + HEAP32[$931>>2] = $arglist_next53; + HEAP32[$k3>>2] = $932; + $933 = HEAP32[$k3>>2]|0; + $934 = HEAP32[$pSrc>>2]|0; + $935 = (($934) + 8|0); + $936 = (($935) + (($933*72)|0)|0); + HEAP32[$pItem>>2] = $936; + $937 = HEAP32[$pItem>>2]|0; + $938 = (($937) + 4|0); + $939 = HEAP32[$938>>2]|0; + $940 = ($939|0)!=(0|0); + if ($940) { + $941 = HEAP32[$0>>2]|0; + $942 = HEAP32[$pItem>>2]|0; + $943 = (($942) + 4|0); + $944 = HEAP32[$943>>2]|0; + _sqlite3StrAccumAppendAll($941,$944); + $945 = HEAP32[$0>>2]|0; + _sqlite3StrAccumAppend($945,25632,1); + } + $946 = HEAP32[$0>>2]|0; + $947 = HEAP32[$pItem>>2]|0; + $948 = (($947) + 8|0); + $949 = HEAP32[$948>>2]|0; + _sqlite3StrAccumAppendAll($946,$949); + HEAP32[$width>>2] = 0; + HEAP32[$length>>2] = 0; + break; + } + case 12: { + $915 = HEAP32[$3>>2]|0; + $arglist_current46 = HEAP32[$915>>2]|0; + $916 = HEAP32[$arglist_current46>>2]|0; + $arglist_next47 = (($arglist_current46) + 4|0); + HEAP32[$915>>2] = $arglist_next47; + HEAP32[$pToken>>2] = $916; + $917 = HEAP32[$pToken>>2]|0; + $918 = ($917|0)!=(0|0); + if ($918) { + $919 = HEAP32[$pToken>>2]|0; + $920 = (($919) + 4|0); + $921 = HEAP32[$920>>2]|0; + $922 = ($921|0)!=(0); + if ($922) { + $923 = HEAP32[$0>>2]|0; + $924 = HEAP32[$pToken>>2]|0; + $925 = HEAP32[$924>>2]|0; + $926 = HEAP32[$pToken>>2]|0; + $927 = (($926) + 4|0); + $928 = HEAP32[$927>>2]|0; + _sqlite3StrAccumAppend($923,$925,$928); + } + } + HEAP32[$width>>2] = 0; + HEAP32[$length>>2] = 0; + break; + } + default: { + label = 283; + break L7; + } + } + } while(0); + if ((label|0) == 59) { + label = 0; + $156 = HEAP32[$infop>>2]|0; + $157 = (($156) + 2|0); + $158 = HEAP8[$157>>0]|0; + $159 = $158&255; + $160 = $159 & 1; + $161 = ($160|0)!=(0); + $162 = HEAP8[$bArgList>>0]|0; + $163 = ($162<<24>>24)!=(0); + do { + if ($161) { + do { + if ($163) { + $164 = HEAP32[$pArgList>>2]|0; + $165 = (_getIntArg($164)|0); + $166 = tempRet0; + $167 = $v; + $168 = $167; + HEAP32[$168>>2] = $165; + $169 = (($167) + 4)|0; + $170 = $169; + HEAP32[$170>>2] = $166; + } else { + $171 = HEAP8[$flag_longlong>>0]|0; + $172 = ($171<<24>>24)!=(0); + $173 = HEAP32[$3>>2]|0; + if ($172) { + $arglist_current19 = HEAP32[$173>>2]|0; + $174 = $arglist_current19; + $175 = $174; + $176 = HEAP32[$175>>2]|0; + $177 = (($174) + 4)|0; + $178 = $177; + $179 = HEAP32[$178>>2]|0; + $arglist_next20 = (($arglist_current19) + 8|0); + HEAP32[$173>>2] = $arglist_next20; + $180 = $v; + $181 = $180; + HEAP32[$181>>2] = $176; + $182 = (($180) + 4)|0; + $183 = $182; + HEAP32[$183>>2] = $179; + break; + } else { + $arglist_current22 = HEAP32[$173>>2]|0; + $184 = HEAP32[$arglist_current22>>2]|0; + $arglist_next23 = (($arglist_current22) + 4|0); + HEAP32[$173>>2] = $arglist_next23; + $185 = ($184|0)<(0); + $186 = $185 << 31 >> 31; + $187 = $v; + $188 = $187; + HEAP32[$188>>2] = $184; + $189 = (($187) + 4)|0; + $190 = $189; + HEAP32[$190>>2] = $186; + break; + } + } + } while(0); + $191 = $v; + $192 = $191; + $193 = HEAP32[$192>>2]|0; + $194 = (($191) + 4)|0; + $195 = $194; + $196 = HEAP32[$195>>2]|0; + $197 = ($196|0)<(0); + $198 = $v; + $199 = $198; + $200 = HEAP32[$199>>2]|0; + $201 = (($198) + 4)|0; + $202 = $201; + $203 = HEAP32[$202>>2]|0; + if ($197) { + $204 = ($200|0)==(0); + $205 = ($203|0)==(-2147483648); + $206 = $204 & $205; + if ($206) { + $207 = $longvalue; + $208 = $207; + HEAP32[$208>>2] = 0; + $209 = (($207) + 4)|0; + $210 = $209; + HEAP32[$210>>2] = -2147483648; + } else { + $211 = $v; + $212 = $211; + $213 = HEAP32[$212>>2]|0; + $214 = (($211) + 4)|0; + $215 = $214; + $216 = HEAP32[$215>>2]|0; + $217 = (_i64Subtract(0,0,($213|0),($216|0))|0); + $218 = tempRet0; + $219 = $longvalue; + $220 = $219; + HEAP32[$220>>2] = $217; + $221 = (($219) + 4)|0; + $222 = $221; + HEAP32[$222>>2] = $218; + } + HEAP8[$prefix>>0] = 45; + break; + } + $223 = $longvalue; + $224 = $223; + HEAP32[$224>>2] = $200; + $225 = (($223) + 4)|0; + $226 = $225; + HEAP32[$226>>2] = $203; + $227 = HEAP8[$flag_plussign>>0]|0; + $228 = ($227<<24>>24)!=(0); + if ($228) { + HEAP8[$prefix>>0] = 43; + break; + } + $229 = HEAP8[$flag_blanksign>>0]|0; + $230 = ($229<<24>>24)!=(0); + if ($230) { + HEAP8[$prefix>>0] = 32; + break; + } else { + HEAP8[$prefix>>0] = 0; + break; + } + } else { + do { + if ($163) { + $231 = HEAP32[$pArgList>>2]|0; + $232 = (_getIntArg($231)|0); + $233 = tempRet0; + $234 = $longvalue; + $235 = $234; + HEAP32[$235>>2] = $232; + $236 = (($234) + 4)|0; + $237 = $236; + HEAP32[$237>>2] = $233; + } else { + $238 = HEAP8[$flag_longlong>>0]|0; + $239 = ($238<<24>>24)!=(0); + $240 = HEAP32[$3>>2]|0; + if ($239) { + $arglist_current25 = HEAP32[$240>>2]|0; + $241 = $arglist_current25; + $242 = $241; + $243 = HEAP32[$242>>2]|0; + $244 = (($241) + 4)|0; + $245 = $244; + $246 = HEAP32[$245>>2]|0; + $arglist_next26 = (($arglist_current25) + 8|0); + HEAP32[$240>>2] = $arglist_next26; + $247 = $longvalue; + $248 = $247; + HEAP32[$248>>2] = $243; + $249 = (($247) + 4)|0; + $250 = $249; + HEAP32[$250>>2] = $246; + break; + } else { + $arglist_current28 = HEAP32[$240>>2]|0; + $251 = HEAP32[$arglist_current28>>2]|0; + $arglist_next29 = (($arglist_current28) + 4|0); + HEAP32[$240>>2] = $arglist_next29; + $252 = $longvalue; + $253 = $252; + HEAP32[$253>>2] = $251; + $254 = (($252) + 4)|0; + $255 = $254; + HEAP32[$255>>2] = 0; + break; + } + } + } while(0); + HEAP8[$prefix>>0] = 0; + } + } while(0); + $256 = $longvalue; + $257 = $256; + $258 = HEAP32[$257>>2]|0; + $259 = (($256) + 4)|0; + $260 = $259; + $261 = HEAP32[$260>>2]|0; + $262 = ($258|0)==(0); + $263 = ($261|0)==(0); + $264 = $262 & $263; + if ($264) { + HEAP8[$flag_alternateform>>0] = 0; + } + $265 = HEAP8[$flag_zeropad>>0]|0; + $266 = $265&255; + $267 = ($266|0)!=(0); + if ($267) { + $268 = HEAP32[$precision>>2]|0; + $269 = HEAP32[$width>>2]|0; + $270 = HEAP8[$prefix>>0]|0; + $271 = $270 << 24 >> 24; + $272 = ($271|0)!=(0); + $273 = $272&1; + $274 = (($269) - ($273))|0; + $275 = ($268|0)<($274|0); + if ($275) { + $276 = HEAP32[$width>>2]|0; + $277 = HEAP8[$prefix>>0]|0; + $278 = $277 << 24 >> 24; + $279 = ($278|0)!=(0); + $280 = $279&1; + $281 = (($276) - ($280))|0; + HEAP32[$precision>>2] = $281; + } + } + $282 = HEAP32[$precision>>2]|0; + $283 = ($282|0)<(60); + if ($283) { + HEAP32[$nOut>>2] = 70; + HEAP32[$zOut>>2] = $buf; + } else { + $284 = HEAP32[$precision>>2]|0; + $285 = (($284) + 10)|0; + HEAP32[$nOut>>2] = $285; + $286 = HEAP32[$nOut>>2]|0; + $287 = (_sqlite3Malloc($286)|0); + HEAP32[$zExtra>>2] = $287; + HEAP32[$zOut>>2] = $287; + $288 = HEAP32[$zOut>>2]|0; + $289 = ($288|0)==(0|0); + if ($289) { + label = 89; + break; + } + } + $291 = HEAP32[$nOut>>2]|0; + $292 = (($291) - 1)|0; + $293 = HEAP32[$zOut>>2]|0; + $294 = (($293) + ($292)|0); + HEAP32[$bufpt>>2] = $294; + $295 = HEAP8[$xtype>>0]|0; + $296 = $295&255; + $297 = ($296|0)==(16); + if ($297) { + $298 = $longvalue; + $299 = $298; + $300 = HEAP32[$299>>2]|0; + $301 = (($298) + 4)|0; + $302 = $301; + $303 = HEAP32[$302>>2]|0; + $304 = (___uremdi3(($300|0),($303|0),10,0)|0); + $305 = tempRet0; + HEAP32[$x>>2] = $304; + $306 = HEAP32[$x>>2]|0; + $307 = ($306|0)>=(4); + if ($307) { + label = 93; + } else { + $308 = $longvalue; + $309 = $308; + $310 = HEAP32[$309>>2]|0; + $311 = (($308) + 4)|0; + $312 = $311; + $313 = HEAP32[$312>>2]|0; + $314 = (___udivdi3(($310|0),($313|0),10,0)|0); + $315 = tempRet0; + $316 = (___uremdi3(($314|0),($315|0),10,0)|0); + $317 = tempRet0; + $318 = ($316|0)==(1); + $319 = ($317|0)==(0); + $320 = $318 & $319; + if ($320) { + label = 93; + } + } + if ((label|0) == 93) { + label = 0; + HEAP32[$x>>2] = 0; + } + $321 = HEAP32[$x>>2]|0; + $322 = $321<<1; + $323 = (($322) + 1)|0; + $324 = (45032 + ($323)|0); + $325 = HEAP8[$324>>0]|0; + $326 = HEAP32[$bufpt>>2]|0; + $327 = (($326) + -1|0); + HEAP32[$bufpt>>2] = $327; + HEAP8[$327>>0] = $325; + $328 = HEAP32[$x>>2]|0; + $329 = $328<<1; + $330 = (45032 + ($329)|0); + $331 = HEAP8[$330>>0]|0; + $332 = HEAP32[$bufpt>>2]|0; + $333 = (($332) + -1|0); + HEAP32[$bufpt>>2] = $333; + HEAP8[$333>>0] = $331; + } + $334 = HEAP32[$infop>>2]|0; + $335 = (($334) + 4|0); + $336 = HEAP8[$335>>0]|0; + $337 = $336&255; + $338 = (45048 + ($337)|0); + HEAP32[$cset>>2] = $338; + $339 = HEAP32[$infop>>2]|0; + $340 = (($339) + 1|0); + $341 = HEAP8[$340>>0]|0; + HEAP8[$base>>0] = $341; + while(1) { + $342 = $longvalue; + $343 = $342; + $344 = HEAP32[$343>>2]|0; + $345 = (($342) + 4)|0; + $346 = $345; + $347 = HEAP32[$346>>2]|0; + $348 = HEAP8[$base>>0]|0; + $349 = $348&255; + $350 = (___uremdi3(($344|0),($347|0),($349|0),0)|0); + $351 = tempRet0; + $352 = HEAP32[$cset>>2]|0; + $353 = (($352) + ($350)|0); + $354 = HEAP8[$353>>0]|0; + $355 = HEAP32[$bufpt>>2]|0; + $356 = (($355) + -1|0); + HEAP32[$bufpt>>2] = $356; + HEAP8[$356>>0] = $354; + $357 = $longvalue; + $358 = $357; + $359 = HEAP32[$358>>2]|0; + $360 = (($357) + 4)|0; + $361 = $360; + $362 = HEAP32[$361>>2]|0; + $363 = HEAP8[$base>>0]|0; + $364 = $363&255; + $365 = (___udivdi3(($359|0),($362|0),($364|0),0)|0); + $366 = tempRet0; + $367 = $longvalue; + $368 = $367; + HEAP32[$368>>2] = $365; + $369 = (($367) + 4)|0; + $370 = $369; + HEAP32[$370>>2] = $366; + $371 = $longvalue; + $372 = $371; + $373 = HEAP32[$372>>2]|0; + $374 = (($371) + 4)|0; + $375 = $374; + $376 = HEAP32[$375>>2]|0; + $377 = ($376>>>0)>(0); + $378 = ($376|0)==(0); + $379 = ($373>>>0)>(0); + $380 = $378 & $379; + $381 = $377 | $380; + if (!($381)) { + break; + } + } + $382 = HEAP32[$nOut>>2]|0; + $383 = (($382) - 1)|0; + $384 = HEAP32[$zOut>>2]|0; + $385 = (($384) + ($383)|0); + $386 = HEAP32[$bufpt>>2]|0; + $387 = $385; + $388 = $386; + $389 = (($387) - ($388))|0; + HEAP32[$length>>2] = $389; + $390 = HEAP32[$precision>>2]|0; + $391 = HEAP32[$length>>2]|0; + $392 = (($390) - ($391))|0; + HEAP32[$idx>>2] = $392; + while(1) { + $393 = HEAP32[$idx>>2]|0; + $394 = ($393|0)>(0); + if (!($394)) { + break; + } + $395 = HEAP32[$bufpt>>2]|0; + $396 = (($395) + -1|0); + HEAP32[$bufpt>>2] = $396; + HEAP8[$396>>0] = 48; + $397 = HEAP32[$idx>>2]|0; + $398 = (($397) + -1)|0; + HEAP32[$idx>>2] = $398; + } + $399 = HEAP8[$prefix>>0]|0; + $400 = ($399<<24>>24)!=(0); + if ($400) { + $401 = HEAP8[$prefix>>0]|0; + $402 = HEAP32[$bufpt>>2]|0; + $403 = (($402) + -1|0); + HEAP32[$bufpt>>2] = $403; + HEAP8[$403>>0] = $401; + } + $404 = HEAP8[$flag_alternateform>>0]|0; + $405 = $404&255; + $406 = ($405|0)!=(0); + L364: do { + if ($406) { + $407 = HEAP32[$infop>>2]|0; + $408 = (($407) + 5|0); + $409 = HEAP8[$408>>0]|0; + $410 = $409&255; + $411 = ($410|0)!=(0); + if ($411) { + $412 = HEAP32[$infop>>2]|0; + $413 = (($412) + 5|0); + $414 = HEAP8[$413>>0]|0; + $415 = $414&255; + $416 = (45088 + ($415)|0); + HEAP32[$pre>>2] = $416; + while(1) { + $417 = HEAP32[$pre>>2]|0; + $418 = HEAP8[$417>>0]|0; + HEAP8[$x1>>0] = $418; + $419 = $418 << 24 >> 24; + $420 = ($419|0)!=(0); + if (!($420)) { + break L364; + } + $421 = HEAP8[$x1>>0]|0; + $422 = HEAP32[$bufpt>>2]|0; + $423 = (($422) + -1|0); + HEAP32[$bufpt>>2] = $423; + HEAP8[$423>>0] = $421; + $424 = HEAP32[$pre>>2]|0; + $425 = (($424) + 1|0); + HEAP32[$pre>>2] = $425; + } + } + } + } while(0); + $426 = HEAP32[$nOut>>2]|0; + $427 = (($426) - 1)|0; + $428 = HEAP32[$zOut>>2]|0; + $429 = (($428) + ($427)|0); + $430 = HEAP32[$bufpt>>2]|0; + $431 = $429; + $432 = $430; + $433 = (($431) - ($432))|0; + HEAP32[$length>>2] = $433; + } + $950 = HEAP32[$length>>2]|0; + $951 = HEAP32[$width>>2]|0; + $952 = (($951) - ($950))|0; + HEAP32[$width>>2] = $952; + $953 = HEAP32[$width>>2]|0; + $954 = ($953|0)>(0); + if ($954) { + $955 = HEAP8[$flag_leftjustify>>0]|0; + $956 = ($955<<24>>24)!=(0); + if (!($956)) { + $957 = HEAP32[$0>>2]|0; + $958 = HEAP32[$width>>2]|0; + _sqlite3AppendSpace($957,$958); + } + } + $959 = HEAP32[$0>>2]|0; + $960 = HEAP32[$bufpt>>2]|0; + $961 = HEAP32[$length>>2]|0; + _sqlite3StrAccumAppend($959,$960,$961); + $962 = HEAP32[$width>>2]|0; + $963 = ($962|0)>(0); + if ($963) { + $964 = HEAP8[$flag_leftjustify>>0]|0; + $965 = $964&255; + $966 = ($965|0)!=(0); + if ($966) { + $967 = HEAP32[$0>>2]|0; + $968 = HEAP32[$width>>2]|0; + _sqlite3AppendSpace($967,$968); + } + } + $969 = HEAP32[$zExtra>>2]|0; + $970 = ($969|0)!=(0|0); + if ($970) { + $971 = HEAP32[$zExtra>>2]|0; + _sqlite3_free($971); + } + $972 = HEAP32[$2>>2]|0; + $973 = (($972) + 1|0); + HEAP32[$2>>2] = $973; + } + if ((label|0) == 13) { + $44 = HEAP32[$0>>2]|0; + _sqlite3StrAccumAppend($44,44880,1); + STACKTOP = sp;return; + } + else if ((label|0) == 89) { + $290 = HEAP32[$0>>2]|0; + _setStrAccumError($290,1); + STACKTOP = sp;return; + } + else if ((label|0) == 171) { + $593 = HEAP32[$0>>2]|0; + _setStrAccumError($593,1); + STACKTOP = sp;return; + } + else if ((label|0) == 255) { + $872 = HEAP32[$0>>2]|0; + _setStrAccumError($872,1); + STACKTOP = sp;return; + } + else if ((label|0) == 283) { + STACKTOP = sp;return; + } +} +function _sqlite3StrAccumFinish($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + do { + if ($4) { + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 12|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 8|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + ($7)|0); + HEAP8[$11>>0] = 0; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 24|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = ($15|0)!=(0); + if ($16) { + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 8|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 4|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($19|0)==($22|0); + if ($23) { + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 24|0); + $26 = HEAP8[$25>>0]|0; + $27 = $26&255; + $28 = ($27|0)==(1); + $29 = HEAP32[$0>>2]|0; + if ($28) { + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 12|0); + $33 = HEAP32[$32>>2]|0; + $34 = (($33) + 1)|0; + $35 = (_sqlite3DbMallocRaw($30,$34)|0); + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + 8|0); + HEAP32[$37>>2] = $35; + } else { + $38 = (($29) + 12|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + 1)|0; + $41 = (_sqlite3_malloc($40)|0); + $42 = HEAP32[$0>>2]|0; + $43 = (($42) + 8|0); + HEAP32[$43>>2] = $41; + } + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 8|0); + $46 = HEAP32[$45>>2]|0; + $47 = ($46|0)!=(0|0); + $48 = HEAP32[$0>>2]|0; + if ($47) { + $49 = (($48) + 8|0); + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$0>>2]|0; + $52 = (($51) + 4|0); + $53 = HEAP32[$52>>2]|0; + $54 = HEAP32[$0>>2]|0; + $55 = (($54) + 12|0); + $56 = HEAP32[$55>>2]|0; + $57 = (($56) + 1)|0; + _memcpy(($50|0),($53|0),($57|0))|0; + break; + } else { + _setStrAccumError($48,1); + break; + } + } + } + } + } while(0); + $58 = HEAP32[$0>>2]|0; + $59 = (($58) + 8|0); + $60 = HEAP32[$59>>2]|0; + STACKTOP = sp;return ($60|0); +} +function _sqlite3_mprintf($zFormat,$varargs) { + $zFormat = $zFormat|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $ap = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $ap = sp + 8|0; + $z = sp + 24|0; + HEAP32[$1>>2] = $zFormat; + $2 = (_sqlite3_initialize()|0); + $3 = ($2|0)!=(0); + if ($3) { + HEAP32[$0>>2] = 0; + $7 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($7|0); + } else { + HEAP32[$ap>>2] = $varargs; + $4 = HEAP32[$1>>2]|0; + $5 = (_sqlite3_vmprintf($4,$ap)|0); + HEAP32[$z>>2] = $5; + $6 = HEAP32[$z>>2]|0; + HEAP32[$0>>2] = $6; + $7 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($7|0); + } + return 0|0; +} +function _sqlite3_vsnprintf($n,$zBuf,$zFormat,$ap) { + $n = $n|0; + $zBuf = $zBuf|0; + $zFormat = $zFormat|0; + $ap = $ap|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $acc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $acc = sp + 16|0; + HEAP32[$1>>2] = $n; + HEAP32[$2>>2] = $zBuf; + HEAP32[$3>>2] = $zFormat; + HEAP32[$4>>2] = $ap; + $5 = HEAP32[$1>>2]|0; + $6 = ($5|0)<=(0); + $7 = HEAP32[$2>>2]|0; + if ($6) { + HEAP32[$0>>2] = $7; + $13 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($13|0); + } else { + $8 = HEAP32[$1>>2]|0; + _sqlite3StrAccumInit($acc,$7,$8,0); + $9 = (($acc) + 24|0); + HEAP8[$9>>0] = 0; + $10 = HEAP32[$3>>2]|0; + $11 = HEAP32[$4>>2]|0; + _sqlite3VXPrintf($acc,0,$10,$11); + $12 = (_sqlite3StrAccumFinish($acc)|0); + HEAP32[$0>>2] = $12; + $13 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($13|0); + } + return 0|0; +} +function _sqlite3_snprintf($n,$zBuf,$zFormat,$varargs) { + $n = $n|0; + $zBuf = $zBuf|0; + $zFormat = $zFormat|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $ap = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp; + $2 = sp + 4|0; + $z = sp + 8|0; + $ap = sp + 16|0; + HEAP32[$0>>2] = $n; + HEAP32[$1>>2] = $zBuf; + HEAP32[$2>>2] = $zFormat; + HEAP32[$ap>>2] = $varargs; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = (_sqlite3_vsnprintf($3,$4,$5,$ap)|0); + HEAP32[$z>>2] = $6; + $7 = HEAP32[$z>>2]|0; + STACKTOP = sp;return ($7|0); +} +function _sqlite3_log($iErrCode,$zFormat,$varargs) { + $iErrCode = $iErrCode|0; + $zFormat = $zFormat|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $ap = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $ap = sp + 8|0; + HEAP32[$0>>2] = $iErrCode; + HEAP32[$1>>2] = $zFormat; + $2 = HEAP32[((45136 + 252|0))>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + HEAP32[$ap>>2] = $varargs; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + _renderLogMsg($4,$5,$ap); + STACKTOP = sp;return; +} +function _renderLogMsg($iErrCode,$zFormat,$ap) { + $iErrCode = $iErrCode|0; + $zFormat = $zFormat|0; + $ap = $ap|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $acc = 0, $zMsg = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 256|0; + $0 = sp + 36|0; + $1 = sp; + $2 = sp + 4|0; + $acc = sp + 8|0; + $zMsg = sp + 40|0; + HEAP32[$0>>2] = $iErrCode; + HEAP32[$1>>2] = $zFormat; + HEAP32[$2>>2] = $ap; + _sqlite3StrAccumInit($acc,$zMsg,210,0); + $3 = (($acc) + 24|0); + HEAP8[$3>>0] = 0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + _sqlite3VXPrintf($acc,0,$4,$5); + $6 = HEAP32[((45136 + 252|0))>>2]|0; + $7 = HEAP32[((45136 + 256|0))>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (_sqlite3StrAccumFinish($acc)|0); + FUNCTION_TABLE_viii[$6 & 63]($7,$8,$9); + STACKTOP = sp;return; +} +function _sqlite3_randomness($N,$pBuf) { + $N = $N|0; + $pBuf = $pBuf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $i = 0, $k = 0, $t = 0, $zBuf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 288|0; + $0 = sp + 12|0; + $1 = sp; + $t = sp + 272|0; + $zBuf = sp + 8|0; + $i = sp + 4|0; + $k = sp + 16|0; + HEAP32[$0>>2] = $N; + HEAP32[$1>>2] = $pBuf; + $2 = HEAP32[$1>>2]|0; + HEAP32[$zBuf>>2] = $2; + $3 = HEAP32[$0>>2]|0; + $4 = ($3|0)<=(0); + if ($4) { + HEAP8[520>>0] = 0; + STACKTOP = sp;return; + } + $5 = HEAP8[520>>0]|0; + $6 = ($5<<24>>24)!=(0); + if (!($6)) { + HEAP8[((520 + 2|0))>>0] = 0; + HEAP8[((520 + 1|0))>>0] = 0; + $7 = (_sqlite3_vfs_find(0)|0); + (_sqlite3OsRandomness($7,256,$k)|0); + HEAP32[$i>>2] = 0; + while(1) { + $8 = HEAP32[$i>>2]|0; + $9 = ($8|0)<(256); + if (!($9)) { + break; + } + $10 = HEAP32[$i>>2]|0; + $11 = $10&255; + $12 = HEAP32[$i>>2]|0; + $13 = (((520 + 3|0)) + ($12)|0); + HEAP8[$13>>0] = $11; + $14 = HEAP32[$i>>2]|0; + $15 = (($14) + 1)|0; + HEAP32[$i>>2] = $15; + } + HEAP32[$i>>2] = 0; + while(1) { + $16 = HEAP32[$i>>2]|0; + $17 = ($16|0)<(256); + if (!($17)) { + break; + } + $18 = HEAP32[$i>>2]|0; + $19 = (((520 + 3|0)) + ($18)|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = HEAP32[$i>>2]|0; + $23 = (($k) + ($22)|0); + $24 = HEAP8[$23>>0]|0; + $25 = $24 << 24 >> 24; + $26 = (($21) + ($25))|0; + $27 = HEAP8[((520 + 2|0))>>0]|0; + $28 = $27&255; + $29 = (($28) + ($26))|0; + $30 = $29&255; + HEAP8[((520 + 2|0))>>0] = $30; + $31 = HEAP8[((520 + 2|0))>>0]|0; + $32 = $31&255; + $33 = (((520 + 3|0)) + ($32)|0); + $34 = HEAP8[$33>>0]|0; + HEAP8[$t>>0] = $34; + $35 = HEAP32[$i>>2]|0; + $36 = (((520 + 3|0)) + ($35)|0); + $37 = HEAP8[$36>>0]|0; + $38 = HEAP8[((520 + 2|0))>>0]|0; + $39 = $38&255; + $40 = (((520 + 3|0)) + ($39)|0); + HEAP8[$40>>0] = $37; + $41 = HEAP8[$t>>0]|0; + $42 = HEAP32[$i>>2]|0; + $43 = (((520 + 3|0)) + ($42)|0); + HEAP8[$43>>0] = $41; + $44 = HEAP32[$i>>2]|0; + $45 = (($44) + 1)|0; + HEAP32[$i>>2] = $45; + } + HEAP8[520>>0] = 1; + } + while(1) { + $46 = HEAP8[((520 + 1|0))>>0]|0; + $47 = (($46) + 1)<<24>>24; + HEAP8[((520 + 1|0))>>0] = $47; + $48 = HEAP8[((520 + 1|0))>>0]|0; + $49 = $48&255; + $50 = (((520 + 3|0)) + ($49)|0); + $51 = HEAP8[$50>>0]|0; + HEAP8[$t>>0] = $51; + $52 = HEAP8[$t>>0]|0; + $53 = $52&255; + $54 = HEAP8[((520 + 2|0))>>0]|0; + $55 = $54&255; + $56 = (($55) + ($53))|0; + $57 = $56&255; + HEAP8[((520 + 2|0))>>0] = $57; + $58 = HEAP8[((520 + 2|0))>>0]|0; + $59 = $58&255; + $60 = (((520 + 3|0)) + ($59)|0); + $61 = HEAP8[$60>>0]|0; + $62 = HEAP8[((520 + 1|0))>>0]|0; + $63 = $62&255; + $64 = (((520 + 3|0)) + ($63)|0); + HEAP8[$64>>0] = $61; + $65 = HEAP8[$t>>0]|0; + $66 = HEAP8[((520 + 2|0))>>0]|0; + $67 = $66&255; + $68 = (((520 + 3|0)) + ($67)|0); + HEAP8[$68>>0] = $65; + $69 = HEAP8[((520 + 1|0))>>0]|0; + $70 = $69&255; + $71 = (((520 + 3|0)) + ($70)|0); + $72 = HEAP8[$71>>0]|0; + $73 = $72&255; + $74 = HEAP8[$t>>0]|0; + $75 = $74&255; + $76 = (($75) + ($73))|0; + $77 = $76&255; + HEAP8[$t>>0] = $77; + $78 = HEAP8[$t>>0]|0; + $79 = $78&255; + $80 = (((520 + 3|0)) + ($79)|0); + $81 = HEAP8[$80>>0]|0; + $82 = HEAP32[$zBuf>>2]|0; + $83 = (($82) + 1|0); + HEAP32[$zBuf>>2] = $83; + HEAP8[$82>>0] = $81; + $84 = HEAP32[$0>>2]|0; + $85 = (($84) + -1)|0; + HEAP32[$0>>2] = $85; + $86 = ($85|0)!=(0); + if (!($86)) { + break; + } + } + STACKTOP = sp;return; +} +function _sqlite3OsRandomness($pVfs,$nByte,$zBufOut) { + $pVfs = $pVfs|0; + $nByte = $nByte|0; + $zBufOut = $zBufOut|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pVfs; + HEAP32[$1>>2] = $nByte; + HEAP32[$2>>2] = $zBufOut; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 56|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = (FUNCTION_TABLE_iiii[$5 & 31]($6,$7,$8)|0); + STACKTOP = sp;return ($9|0); +} +function _sqlite3_stricmp($zLeft,$zRight) { + $zLeft = $zLeft|0; + $zRight = $zRight|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $b = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $a = sp + 4|0; + $b = sp + 8|0; + HEAP32[$0>>2] = $zLeft; + HEAP32[$1>>2] = $zRight; + $2 = HEAP32[$0>>2]|0; + HEAP32[$a>>2] = $2; + $3 = HEAP32[$1>>2]|0; + HEAP32[$b>>2] = $3; + while(1) { + $4 = HEAP32[$a>>2]|0; + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = ($6|0)!=(0); + if ($7) { + $8 = HEAP32[$a>>2]|0; + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = (784 + ($10)|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = HEAP32[$b>>2]|0; + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = (784 + ($16)|0); + $18 = HEAP8[$17>>0]|0; + $19 = $18&255; + $20 = ($13|0)==($19|0); + $37 = $20; + } else { + $37 = 0; + } + $21 = HEAP32[$a>>2]|0; + if (!($37)) { + break; + } + $22 = (($21) + 1|0); + HEAP32[$a>>2] = $22; + $23 = HEAP32[$b>>2]|0; + $24 = (($23) + 1|0); + HEAP32[$b>>2] = $24; + } + $25 = HEAP8[$21>>0]|0; + $26 = $25&255; + $27 = (784 + ($26)|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = HEAP32[$b>>2]|0; + $31 = HEAP8[$30>>0]|0; + $32 = $31&255; + $33 = (784 + ($32)|0); + $34 = HEAP8[$33>>0]|0; + $35 = $34&255; + $36 = (($29) - ($35))|0; + STACKTOP = sp;return ($36|0); +} +function _sqlite3_os_init() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $i = sp; + HEAP32[$i>>2] = 0; + while(1) { + $0 = HEAP32[$i>>2]|0; + $1 = ($0>>>0)<(4); + if (!($1)) { + break; + } + $2 = HEAP32[$i>>2]|0; + $3 = (1040 + (($2*88)|0)|0); + $4 = HEAP32[$i>>2]|0; + $5 = ($4|0)==(0); + $6 = $5&1; + (_sqlite3_vfs_register($3,$6)|0); + $7 = HEAP32[$i>>2]|0; + $8 = (($7) + 1)|0; + HEAP32[$i>>2] = $8; + } + STACKTOP = sp;return 0; +} +function _unixOpen($pVfs,$zPath,$pFile,$flags,$pOutFlags) { + $pVfs = $pVfs|0; + $zPath = $zPath|0; + $pFile = $pFile|0; + $flags = $flags|0; + $pOutFlags = $pOutFlags|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; + var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; + var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; + var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $ctrlFlags = 0, $eType = 0, $fd = 0, $gid = 0, $isCreate = 0, $isDelete = 0, $isExclusive = 0; + var $isReadWrite = 0, $isReadonly = 0, $noLock = 0, $openFlags = 0, $openMode = 0, $or$cond = 0, $p = 0, $pUnused = 0, $rc = 0, $syncDir = 0, $uid = 0, $zName = 0, $zTmpname = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 624|0; + $0 = sp + 92|0; + $1 = sp + 88|0; + $2 = sp + 84|0; + $3 = sp + 80|0; + $4 = sp + 76|0; + $5 = sp + 72|0; + $p = sp + 68|0; + $fd = sp + 64|0; + $openFlags = sp + 60|0; + $eType = sp + 56|0; + $noLock = sp + 52|0; + $rc = sp + 48|0; + $ctrlFlags = sp + 44|0; + $isExclusive = sp + 16|0; + $isDelete = sp; + $isCreate = sp + 4|0; + $isReadonly = sp + 8|0; + $isReadWrite = sp + 12|0; + $syncDir = sp + 20|0; + $zTmpname = sp + 96|0; + $zName = sp + 24|0; + $pUnused = sp + 28|0; + $openMode = sp + 32|0; + $uid = sp + 36|0; + $gid = sp + 40|0; + HEAP32[$1>>2] = $pVfs; + HEAP32[$2>>2] = $zPath; + HEAP32[$3>>2] = $pFile; + HEAP32[$4>>2] = $flags; + HEAP32[$5>>2] = $pOutFlags; + $6 = HEAP32[$3>>2]|0; + HEAP32[$p>>2] = $6; + HEAP32[$fd>>2] = -1; + HEAP32[$openFlags>>2] = 0; + $7 = HEAP32[$4>>2]|0; + $8 = $7 & -256; + HEAP32[$eType>>2] = $8; + HEAP32[$rc>>2] = 0; + HEAP32[$ctrlFlags>>2] = 0; + $9 = HEAP32[$4>>2]|0; + $10 = $9 & 16; + HEAP32[$isExclusive>>2] = $10; + $11 = HEAP32[$4>>2]|0; + $12 = $11 & 8; + HEAP32[$isDelete>>2] = $12; + $13 = HEAP32[$4>>2]|0; + $14 = $13 & 4; + HEAP32[$isCreate>>2] = $14; + $15 = HEAP32[$4>>2]|0; + $16 = $15 & 1; + HEAP32[$isReadonly>>2] = $16; + $17 = HEAP32[$4>>2]|0; + $18 = $17 & 2; + HEAP32[$isReadWrite>>2] = $18; + $19 = HEAP32[$isCreate>>2]|0; + $20 = ($19|0)!=(0); + if ($20) { + $21 = HEAP32[$eType>>2]|0; + $22 = ($21|0)==(16384); + $23 = HEAP32[$eType>>2]|0; + $24 = ($23|0)==(2048); + $or$cond = $22 | $24; + if ($or$cond) { + $28 = 1; + } else { + $25 = HEAP32[$eType>>2]|0; + $26 = ($25|0)==(524288); + $28 = $26; + } + } else { + $28 = 0; + } + $27 = $28&1; + HEAP32[$syncDir>>2] = $27; + $29 = HEAP32[$2>>2]|0; + HEAP32[$zName>>2] = $29; + $30 = HEAP32[44616>>2]|0; + $31 = (_getpid()|0); + $32 = ($30|0)!=($31|0); + if ($32) { + $33 = (_getpid()|0); + HEAP32[44616>>2] = $33; + _sqlite3_randomness(0,0); + } + $34 = HEAP32[$p>>2]|0; + dest=$34+0|0; stop=dest+44|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $35 = HEAP32[$eType>>2]|0; + $36 = ($35|0)==(256); + $37 = HEAP32[$zName>>2]|0; + do { + if ($36) { + $38 = HEAP32[$4>>2]|0; + $39 = (_findReusableFd($37,$38)|0); + HEAP32[$pUnused>>2] = $39; + $40 = HEAP32[$pUnused>>2]|0; + $41 = ($40|0)!=(0|0); + if ($41) { + $42 = HEAP32[$pUnused>>2]|0; + $43 = HEAP32[$42>>2]|0; + HEAP32[$fd>>2] = $43; + } else { + $44 = (_sqlite3_malloc(12)|0); + HEAP32[$pUnused>>2] = $44; + $45 = HEAP32[$pUnused>>2]|0; + $46 = ($45|0)!=(0|0); + if (!($46)) { + HEAP32[$0>>2] = 7; + $172 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($172|0); + } + } + $47 = HEAP32[$pUnused>>2]|0; + $48 = HEAP32[$p>>2]|0; + $49 = (($48) + 28|0); + HEAP32[$49>>2] = $47; + } else { + $50 = ($37|0)!=(0|0); + if (!($50)) { + $51 = (_unixGetTempname(514,$zTmpname)|0); + HEAP32[$rc>>2] = $51; + $52 = HEAP32[$rc>>2]|0; + $53 = ($52|0)!=(0); + if (!($53)) { + HEAP32[$zName>>2] = $zTmpname; + break; + } + $54 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $54; + $172 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($172|0); + } + } + } while(0); + $55 = HEAP32[$isReadonly>>2]|0; + $56 = ($55|0)!=(0); + if ($56) { + $57 = HEAP32[$openFlags>>2]|0; + HEAP32[$openFlags>>2] = $57; + } + $58 = HEAP32[$isReadWrite>>2]|0; + $59 = ($58|0)!=(0); + if ($59) { + $60 = HEAP32[$openFlags>>2]|0; + $61 = $60 | 2; + HEAP32[$openFlags>>2] = $61; + } + $62 = HEAP32[$isCreate>>2]|0; + $63 = ($62|0)!=(0); + if ($63) { + $64 = HEAP32[$openFlags>>2]|0; + $65 = $64 | 64; + HEAP32[$openFlags>>2] = $65; + } + $66 = HEAP32[$isExclusive>>2]|0; + $67 = ($66|0)!=(0); + if ($67) { + $68 = HEAP32[$openFlags>>2]|0; + $69 = $68 | 131200; + HEAP32[$openFlags>>2] = $69; + } + $70 = HEAP32[$openFlags>>2]|0; + HEAP32[$openFlags>>2] = $70; + $71 = HEAP32[$fd>>2]|0; + $72 = ($71|0)<(0); + do { + if ($72) { + $73 = HEAP32[$zName>>2]|0; + $74 = HEAP32[$4>>2]|0; + $75 = (_findCreateFileMode($73,$74,$openMode,$uid,$gid)|0); + HEAP32[$rc>>2] = $75; + $76 = HEAP32[$rc>>2]|0; + $77 = ($76|0)!=(0); + if ($77) { + $78 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $78; + $172 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($172|0); + } + $79 = HEAP32[$zName>>2]|0; + $80 = HEAP32[$openFlags>>2]|0; + $81 = HEAP32[$openMode>>2]|0; + $82 = (_robust_open($79,$80,$81)|0); + HEAP32[$fd>>2] = $82; + $83 = HEAP32[$fd>>2]|0; + $84 = ($83|0)<(0); + if ($84) { + $85 = (___errno_location()|0); + $86 = HEAP32[$85>>2]|0; + $87 = ($86|0)!=(21); + if ($87) { + $88 = HEAP32[$isReadWrite>>2]|0; + $89 = ($88|0)!=(0); + if ($89) { + $90 = HEAP32[$isExclusive>>2]|0; + $91 = ($90|0)!=(0); + if (!($91)) { + $92 = HEAP32[$4>>2]|0; + $93 = $92 & -7; + HEAP32[$4>>2] = $93; + $94 = HEAP32[$openFlags>>2]|0; + $95 = $94 & -67; + HEAP32[$openFlags>>2] = $95; + $96 = HEAP32[$4>>2]|0; + $97 = $96 | 1; + HEAP32[$4>>2] = $97; + $98 = HEAP32[$openFlags>>2]|0; + HEAP32[$openFlags>>2] = $98; + HEAP32[$isReadonly>>2] = 1; + $99 = HEAP32[$zName>>2]|0; + $100 = HEAP32[$openFlags>>2]|0; + $101 = HEAP32[$openMode>>2]|0; + $102 = (_robust_open($99,$100,$101)|0); + HEAP32[$fd>>2] = $102; + } + } + } + } + $103 = HEAP32[$fd>>2]|0; + $104 = ($103|0)<(0); + if ($104) { + $105 = (_sqlite3CantopenError(29678)|0); + $106 = HEAP32[$zName>>2]|0; + $107 = (_unixLogErrorAtLine($105,44032,$106,29678)|0); + HEAP32[$rc>>2] = $107; + break; + } + $108 = HEAP32[$4>>2]|0; + $109 = $108 & 526336; + $110 = ($109|0)!=(0); + if ($110) { + $111 = HEAP32[((43688 + 244|0))>>2]|0; + $112 = HEAP32[$fd>>2]|0; + $113 = HEAP32[$uid>>2]|0; + $114 = HEAP32[$gid>>2]|0; + (FUNCTION_TABLE_iiii[$111 & 31]($112,$113,$114)|0); + label = 36; + } else { + label = 36; + } + } else { + label = 36; + } + } while(0); + if ((label|0) == 36) { + $115 = HEAP32[$5>>2]|0; + $116 = ($115|0)!=(0|0); + if ($116) { + $117 = HEAP32[$4>>2]|0; + $118 = HEAP32[$5>>2]|0; + HEAP32[$118>>2] = $117; + } + $119 = HEAP32[$p>>2]|0; + $120 = (($119) + 28|0); + $121 = HEAP32[$120>>2]|0; + $122 = ($121|0)!=(0|0); + if ($122) { + $123 = HEAP32[$fd>>2]|0; + $124 = HEAP32[$p>>2]|0; + $125 = (($124) + 28|0); + $126 = HEAP32[$125>>2]|0; + HEAP32[$126>>2] = $123; + $127 = HEAP32[$4>>2]|0; + $128 = HEAP32[$p>>2]|0; + $129 = (($128) + 28|0); + $130 = HEAP32[$129>>2]|0; + $131 = (($130) + 4|0); + HEAP32[$131>>2] = $127; + } + $132 = HEAP32[$isDelete>>2]|0; + $133 = ($132|0)!=(0); + if ($133) { + $134 = HEAP32[((43688 + 196|0))>>2]|0; + $135 = HEAP32[$zName>>2]|0; + (FUNCTION_TABLE_ii[$134 & 63]($135)|0); + } + $136 = HEAP32[$eType>>2]|0; + $137 = ($136|0)!=(256); + $138 = $137&1; + HEAP32[$noLock>>2] = $138; + $139 = HEAP32[$isDelete>>2]|0; + $140 = ($139|0)!=(0); + if ($140) { + $141 = HEAP32[$ctrlFlags>>2]|0; + $142 = $141 | 32; + HEAP32[$ctrlFlags>>2] = $142; + } + $143 = HEAP32[$isReadonly>>2]|0; + $144 = ($143|0)!=(0); + if ($144) { + $145 = HEAP32[$ctrlFlags>>2]|0; + $146 = $145 | 2; + HEAP32[$ctrlFlags>>2] = $146; + } + $147 = HEAP32[$noLock>>2]|0; + $148 = ($147|0)!=(0); + if ($148) { + $149 = HEAP32[$ctrlFlags>>2]|0; + $150 = $149 | 128; + HEAP32[$ctrlFlags>>2] = $150; + } + $151 = HEAP32[$syncDir>>2]|0; + $152 = ($151|0)!=(0); + if ($152) { + $153 = HEAP32[$ctrlFlags>>2]|0; + $154 = $153 | 8; + HEAP32[$ctrlFlags>>2] = $154; + } + $155 = HEAP32[$4>>2]|0; + $156 = $155 & 64; + $157 = ($156|0)!=(0); + if ($157) { + $158 = HEAP32[$ctrlFlags>>2]|0; + $159 = $158 | 64; + HEAP32[$ctrlFlags>>2] = $159; + } + $160 = HEAP32[$1>>2]|0; + $161 = HEAP32[$fd>>2]|0; + $162 = HEAP32[$3>>2]|0; + $163 = HEAP32[$2>>2]|0; + $164 = HEAP32[$ctrlFlags>>2]|0; + $165 = (_fillInUnixFile($160,$161,$162,$163,$164)|0); + HEAP32[$rc>>2] = $165; + } + $166 = HEAP32[$rc>>2]|0; + $167 = ($166|0)!=(0); + if ($167) { + $168 = HEAP32[$p>>2]|0; + $169 = (($168) + 28|0); + $170 = HEAP32[$169>>2]|0; + _sqlite3_free($170); + } + $171 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $171; + $172 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($172|0); +} +function _unixDelete($NotUsed,$zPath,$dirSync) { + $NotUsed = $NotUsed|0; + $zPath = $zPath|0; + $dirSync = $dirSync|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $fd = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $rc = sp + 12|0; + $fd = sp + 16|0; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $zPath; + HEAP32[$3>>2] = $dirSync; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[((43688 + 196|0))>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = (FUNCTION_TABLE_ii[$4 & 63]($5)|0); + $7 = ($6|0)==(-1); + if ($7) { + $8 = (___errno_location()|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)==(2); + if ($10) { + HEAP32[$rc>>2] = 5898; + } else { + $11 = HEAP32[$2>>2]|0; + $12 = (_unixLogErrorAtLine(2570,44168,$11,29806)|0); + HEAP32[$rc>>2] = $12; + } + $13 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $13; + $31 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($31|0); + } + $14 = HEAP32[$3>>2]|0; + $15 = $14 & 1; + $16 = ($15|0)!=(0); + do { + if ($16) { + $17 = HEAP32[((43688 + 208|0))>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = (FUNCTION_TABLE_iii[$17 & 127]($18,$fd)|0); + HEAP32[$rc>>2] = $19; + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)==(0); + if (!($21)) { + $28 = HEAP32[$rc>>2]|0; + $29 = ($28|0)==(14); + if (!($29)) { + break; + } + HEAP32[$rc>>2] = 0; + break; + } + $22 = HEAP32[$fd>>2]|0; + $23 = (_fsync(($22|0))|0); + $24 = ($23|0)!=(0); + if ($24) { + $25 = HEAP32[$2>>2]|0; + $26 = (_unixLogErrorAtLine(1290,44648,$25,29821)|0); + HEAP32[$rc>>2] = $26; + } + $27 = HEAP32[$fd>>2]|0; + _robust_close(0,$27,29823); + } + } while(0); + $30 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $30; + $31 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($31|0); +} +function _unixAccess($NotUsed,$zPath,$flags,$pResOut) { + $NotUsed = $NotUsed|0; + $zPath = $zPath|0; + $flags = $flags|0; + $pResOut = $pResOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $amode = 0, $buf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 92|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $amode = sp + 12|0; + $buf = sp + 16|0; + HEAP32[$0>>2] = $NotUsed; + HEAP32[$1>>2] = $zPath; + HEAP32[$2>>2] = $flags; + HEAP32[$3>>2] = $pResOut; + HEAP32[$amode>>2] = 0; + $4 = HEAP32[$2>>2]|0; + if ((($4|0) == 2)) { + HEAP32[$amode>>2] = 4; + } else if ((($4|0) == 0)) { + HEAP32[$amode>>2] = 0; + } else if ((($4|0) == 1)) { + HEAP32[$amode>>2] = 6; + } + $5 = HEAP32[((43688 + 28|0))>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$amode>>2]|0; + $8 = (FUNCTION_TABLE_iii[$5 & 127]($6,$7)|0); + $9 = ($8|0)==(0); + $10 = $9&1; + $11 = HEAP32[$3>>2]|0; + HEAP32[$11>>2] = $10; + $12 = HEAP32[$2>>2]|0; + $13 = ($12|0)==(0); + if (!($13)) { + STACKTOP = sp;return 0; + } + $14 = HEAP32[$3>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0); + if (!($16)) { + STACKTOP = sp;return 0; + } + $17 = HEAP32[((43688 + 52|0))>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (FUNCTION_TABLE_iii[$17 & 127]($18,$buf)|0); + $20 = (0)==($19|0); + if (!($20)) { + STACKTOP = sp;return 0; + } + $21 = (($buf) + 36|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)==(0); + if (!($23)) { + STACKTOP = sp;return 0; + } + $24 = HEAP32[$3>>2]|0; + HEAP32[$24>>2] = 0; + STACKTOP = sp;return 0; +} +function _unixFullPathname($pVfs,$zPath,$nOut,$zOut) { + $pVfs = $pVfs|0; + $zPath = $zPath|0; + $nOut = $nOut|0; + $zOut = $zOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nCwd = 0, $vararg_buffer1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer1 = sp; + $0 = sp + 24|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $4 = sp + 16|0; + $nCwd = sp + 20|0; + HEAP32[$1>>2] = $pVfs; + HEAP32[$2>>2] = $zPath; + HEAP32[$3>>2] = $nOut; + HEAP32[$4>>2] = $zOut; + $5 = HEAP32[$3>>2]|0; + $6 = (($5) - 1)|0; + $7 = HEAP32[$4>>2]|0; + $8 = (($7) + ($6)|0); + HEAP8[$8>>0] = 0; + $9 = HEAP32[$2>>2]|0; + $10 = HEAP8[$9>>0]|0; + $11 = $10 << 24 >> 24; + $12 = ($11|0)==(47); + do { + if ($12) { + $13 = HEAP32[$3>>2]|0; + $14 = HEAP32[$4>>2]|0; + $15 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer1>>2] = $15; + (_sqlite3_snprintf($13,$14,1768,$vararg_buffer1)|0); + } else { + $16 = HEAP32[((43688 + 40|0))>>2]|0; + $17 = HEAP32[$4>>2]|0; + $18 = HEAP32[$3>>2]|0; + $19 = (($18) - 1)|0; + $20 = (FUNCTION_TABLE_iii[$16 & 127]($17,$19)|0); + $21 = ($20|0)==(0|0); + if (!($21)) { + $25 = HEAP32[$4>>2]|0; + $26 = (_strlen(($25|0))|0); + HEAP32[$nCwd>>2] = $26; + $27 = HEAP32[$3>>2]|0; + $28 = HEAP32[$nCwd>>2]|0; + $29 = (($27) - ($28))|0; + $30 = HEAP32[$nCwd>>2]|0; + $31 = HEAP32[$4>>2]|0; + $32 = (($31) + ($30)|0); + $33 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer1>>2] = $33; + (_sqlite3_snprintf($29,$32,44640,$vararg_buffer1)|0); + break; + } + $22 = (_sqlite3CantopenError(29908)|0); + $23 = HEAP32[$2>>2]|0; + $24 = (_unixLogErrorAtLine($22,44040,$23,29908)|0); + HEAP32[$0>>2] = $24; + $34 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($34|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $34 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($34|0); +} +function _unixRandomness($NotUsed,$nBuf,$zBuf) { + $NotUsed = $NotUsed|0; + $nBuf = $nBuf|0; + $zBuf = $zBuf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $fd = 0, $got = 0, $t = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $fd = sp + 8|0; + $got = sp + 12|0; + $t = sp + 16|0; + HEAP32[$0>>2] = $NotUsed; + HEAP32[$1>>2] = $nBuf; + HEAP32[$2>>2] = $zBuf; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$1>>2]|0; + _memset(($3|0),0,($4|0))|0; + $5 = (_getpid()|0); + HEAP32[44616>>2] = $5; + $6 = (_robust_open(44624,0,0)|0); + HEAP32[$fd>>2] = $6; + $7 = HEAP32[$fd>>2]|0; + $8 = ($7|0)<(0); + if ($8) { + (_time(($t|0))|0); + $9 = HEAP32[$2>>2]|0; + ;HEAP8[$9+0>>0]=HEAP8[$t+0>>0]|0;HEAP8[$9+1>>0]=HEAP8[$t+1>>0]|0;HEAP8[$9+2>>0]=HEAP8[$t+2>>0]|0;HEAP8[$9+3>>0]=HEAP8[$t+3>>0]|0; + $10 = HEAP32[$2>>2]|0; + $11 = (($10) + 4|0); + ;HEAP8[$11+0>>0]=HEAP8[44616+0>>0]|0;HEAP8[$11+1>>0]=HEAP8[44616+1>>0]|0;HEAP8[$11+2>>0]=HEAP8[44616+2>>0]|0;HEAP8[$11+3>>0]=HEAP8[44616+3>>0]|0; + HEAP32[$1>>2] = 8; + $23 = HEAP32[$1>>2]|0; + STACKTOP = sp;return ($23|0); + } + while(1) { + $12 = HEAP32[((43688 + 100|0))>>2]|0; + $13 = HEAP32[$fd>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (FUNCTION_TABLE_iiii[$12 & 31]($13,$14,$15)|0); + HEAP32[$got>>2] = $16; + $17 = HEAP32[$got>>2]|0; + $18 = ($17|0)<(0); + if (!($18)) { + break; + } + $19 = (___errno_location()|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)==(4); + if (!($21)) { + break; + } + } + $22 = HEAP32[$fd>>2]|0; + _robust_close(0,$22,30013); + $23 = HEAP32[$1>>2]|0; + STACKTOP = sp;return ($23|0); +} +function _unixSleep($NotUsed,$microseconds) { + $NotUsed = $NotUsed|0; + $microseconds = $microseconds|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $seconds = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $seconds = sp + 4|0; + HEAP32[$0>>2] = $NotUsed; + HEAP32[$1>>2] = $microseconds; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 999999)|0; + $4 = (($3|0) / 1000000)&-1; + HEAP32[$seconds>>2] = $4; + $5 = HEAP32[$seconds>>2]|0; + (_sleep(($5|0))|0); + $6 = HEAP32[$seconds>>2]|0; + $7 = ($6*1000000)|0; + STACKTOP = sp;return ($7|0); +} +function _unixCurrentTime($NotUsed,$prNow) { + $NotUsed = $NotUsed|0; + $prNow = $prNow|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0.0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $rc = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp + 8|0; + $i = sp; + $rc = sp + 12|0; + HEAP32[$0>>2] = $NotUsed; + HEAP32[$1>>2] = $prNow; + $2 = $i; + $3 = $2; + HEAP32[$3>>2] = 0; + $4 = (($2) + 4)|0; + $5 = $4; + HEAP32[$5>>2] = 0; + $6 = (_unixCurrentTimeInt64(0,$i)|0); + HEAP32[$rc>>2] = $6; + $7 = $i; + $8 = $7; + $9 = HEAP32[$8>>2]|0; + $10 = (($7) + 4)|0; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (+($9>>>0)) + (4294967296.0*(+($12|0))); + $14 = $13 / 8.64E+7; + $15 = HEAP32[$1>>2]|0; + HEAPF64[$15>>3] = $14; + $16 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($16|0); +} +function _unixGetLastError($NotUsed,$NotUsed2,$NotUsed3) { + $NotUsed = $NotUsed|0; + $NotUsed2 = $NotUsed2|0; + $NotUsed3 = $NotUsed3|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $NotUsed; + HEAP32[$1>>2] = $NotUsed2; + HEAP32[$2>>2] = $NotUsed3; + STACKTOP = sp;return 0; +} +function _unixCurrentTimeInt64($NotUsed,$piNow) { + $NotUsed = $NotUsed|0; + $piNow = $piNow|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $sNow = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $rc = sp + 4|0; + $sNow = sp + 8|0; + HEAP32[$0>>2] = $NotUsed; + HEAP32[$1>>2] = $piNow; + HEAP32[$rc>>2] = 0; + $2 = (_gettimeofday(($sNow|0),(0|0))|0); + $3 = ($2|0)==(0); + if ($3) { + $4 = HEAP32[$sNow>>2]|0; + $5 = ($4|0)<(0); + $6 = $5 << 31 >> 31; + $7 = (___muldi3(1000,0,($4|0),($6|0))|0); + $8 = tempRet0; + $9 = (_i64Add(1045635584,49096,($7|0),($8|0))|0); + $10 = tempRet0; + $11 = (($sNow) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12|0) / 1000)&-1; + $14 = ($13|0)<(0); + $15 = $14 << 31 >> 31; + $16 = (_i64Add(($9|0),($10|0),($13|0),($15|0))|0); + $17 = tempRet0; + $18 = HEAP32[$1>>2]|0; + $19 = $18; + $20 = $19; + HEAP32[$20>>2] = $16; + $21 = (($19) + 4)|0; + $22 = $21; + HEAP32[$22>>2] = $17; + $23 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($23|0); + } else { + HEAP32[$rc>>2] = 1; + $23 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($23|0); + } + return 0|0; +} +function _unixSetSystemCall($pNotUsed,$zName,$pNewFunc) { + $pNotUsed = $pNotUsed|0; + $zName = $zName|0; + $pNewFunc = $pNewFunc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + $rc = sp + 12|0; + HEAP32[$0>>2] = $pNotUsed; + HEAP32[$1>>2] = $zName; + HEAP32[$2>>2] = $pNewFunc; + HEAP32[$rc>>2] = 12; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + HEAP32[$rc>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $5 = HEAP32[$i>>2]|0; + $6 = ($5>>>0)<(25); + if (!($6)) { + break; + } + $7 = HEAP32[$i>>2]|0; + $8 = (43688 + (($7*12)|0)|0); + $9 = (($8) + 8|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = HEAP32[$i>>2]|0; + $13 = (43688 + (($12*12)|0)|0); + $14 = (($13) + 8|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$i>>2]|0; + $17 = (43688 + (($16*12)|0)|0); + $18 = (($17) + 4|0); + HEAP32[$18>>2] = $15; + } + $19 = HEAP32[$i>>2]|0; + $20 = (($19) + 1)|0; + HEAP32[$i>>2] = $20; + } + $52 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($52|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $21 = HEAP32[$i>>2]|0; + $22 = ($21>>>0)<(25); + if (!($22)) { + label = 16; + break; + } + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$i>>2]|0; + $25 = (43688 + (($24*12)|0)|0); + $26 = HEAP32[$25>>2]|0; + $27 = (_strcmp($23,$26)|0); + $28 = ($27|0)==(0); + $29 = HEAP32[$i>>2]|0; + if ($28) { + break; + } + $51 = (($29) + 1)|0; + HEAP32[$i>>2] = $51; + } + if ((label|0) == 16) { + $52 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($52|0); + } + $30 = (43688 + (($29*12)|0)|0); + $31 = (($30) + 8|0); + $32 = HEAP32[$31>>2]|0; + $33 = ($32|0)==(0|0); + if ($33) { + $34 = HEAP32[$i>>2]|0; + $35 = (43688 + (($34*12)|0)|0); + $36 = (($35) + 4|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$i>>2]|0; + $39 = (43688 + (($38*12)|0)|0); + $40 = (($39) + 8|0); + HEAP32[$40>>2] = $37; + } + HEAP32[$rc>>2] = 0; + $41 = HEAP32[$2>>2]|0; + $42 = ($41|0)==(0|0); + if ($42) { + $43 = HEAP32[$i>>2]|0; + $44 = (43688 + (($43*12)|0)|0); + $45 = (($44) + 8|0); + $46 = HEAP32[$45>>2]|0; + HEAP32[$2>>2] = $46; + } + $47 = HEAP32[$2>>2]|0; + $48 = HEAP32[$i>>2]|0; + $49 = (43688 + (($48*12)|0)|0); + $50 = (($49) + 4|0); + HEAP32[$50>>2] = $47; + $52 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($52|0); +} +function _unixGetSystemCall($pNotUsed,$zName) { + $pNotUsed = $pNotUsed|0; + $zName = $zName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + HEAP32[$1>>2] = $pNotUsed; + HEAP32[$2>>2] = $zName; + HEAP32[$i>>2] = 0; + while(1) { + $3 = HEAP32[$i>>2]|0; + $4 = ($3>>>0)<(25); + if (!($4)) { + label = 6; + break; + } + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$i>>2]|0; + $7 = (43688 + (($6*12)|0)|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_strcmp($5,$8)|0); + $10 = ($9|0)==(0); + $11 = HEAP32[$i>>2]|0; + if ($10) { + label = 4; + break; + } + $15 = (($11) + 1)|0; + HEAP32[$i>>2] = $15; + } + if ((label|0) == 4) { + $12 = (43688 + (($11*12)|0)|0); + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$0>>2] = $14; + $16 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($16|0); + } + else if ((label|0) == 6) { + HEAP32[$0>>2] = 0; + $16 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($16|0); + } + return 0|0; +} +function _unixNextSystemCall($p,$zName) { + $p = $p|0; + $zName = $zName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $zName; + HEAP32[$i>>2] = -1; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + L1: do { + if ($4) { + HEAP32[$i>>2] = 0; + while(1) { + $5 = HEAP32[$i>>2]|0; + $6 = ($5|0)<(24); + if (!($6)) { + break L1; + } + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$i>>2]|0; + $9 = (43688 + (($8*12)|0)|0); + $10 = HEAP32[$9>>2]|0; + $11 = (_strcmp($7,$10)|0); + $12 = ($11|0)==(0); + if ($12) { + break L1; + } + $13 = HEAP32[$i>>2]|0; + $14 = (($13) + 1)|0; + HEAP32[$i>>2] = $14; + } + } + } while(0); + $15 = HEAP32[$i>>2]|0; + $16 = (($15) + 1)|0; + HEAP32[$i>>2] = $16; + while(1) { + $17 = HEAP32[$i>>2]|0; + $18 = ($17|0)<(25); + if (!($18)) { + label = 11; + break; + } + $19 = HEAP32[$i>>2]|0; + $20 = (43688 + (($19*12)|0)|0); + $21 = (($20) + 4|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)!=(0|0); + $24 = HEAP32[$i>>2]|0; + if ($23) { + label = 9; + break; + } + $27 = (($24) + 1)|0; + HEAP32[$i>>2] = $27; + } + if ((label|0) == 9) { + $25 = (43688 + (($24*12)|0)|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$0>>2] = $26; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } + else if ((label|0) == 11) { + HEAP32[$0>>2] = 0; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } + return 0|0; +} +function _sqlite3Error($db,$err_code,$zFormat,$varargs) { + $db = $db|0; + $err_code = $err_code|0; + $zFormat = $zFormat|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ap = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp; + $2 = sp + 4|0; + $z = sp + 8|0; + $ap = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $err_code; + HEAP32[$2>>2] = $zFormat; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 52|0); + HEAP32[$5>>2] = $3; + $6 = HEAP32[$2>>2]|0; + $7 = ($6|0)!=(0|0); + do { + if ($7) { + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 224|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if (!($11)) { + $12 = HEAP32[$0>>2]|0; + $13 = (_sqlite3ValueNew($12)|0); + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 224|0); + HEAP32[$15>>2] = $13; + $16 = ($13|0)!=(0|0); + if (!($16)) { + break; + } + } + HEAP32[$ap>>2] = $varargs; + $17 = HEAP32[$0>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = (_sqlite3VMPrintf($17,$18,$ap)|0); + HEAP32[$z>>2] = $19; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 224|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$z>>2]|0; + _sqlite3ValueSetStr($22,-1,$23,1,39); + STACKTOP = sp;return; + } + } while(0); + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 224|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)!=(0|0); + if (!($27)) { + STACKTOP = sp;return; + } + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 224|0); + $30 = HEAP32[$29>>2]|0; + _sqlite3ValueSetNull($30); + STACKTOP = sp;return; +} +function _sqlite3MallocZero($n) { + $n = $n|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $n; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3Malloc($1)|0); + HEAP32[$p>>2] = $2; + $3 = HEAP32[$p>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + $7 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($7|0); + } + $5 = HEAP32[$p>>2]|0; + $6 = HEAP32[$0>>2]|0; + _memset(($5|0),0,($6|0))|0; + $7 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($7|0); +} +function _sqlite3_backup_step($p,$nPage) { + $p = $p|0; + $nPage = $nPage|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; + var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; + var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; + var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; + var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; + var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; + var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; + var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; + var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; + var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; + var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0; + var $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0; + var $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0; + var $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0; + var $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0; + var $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0; + var $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0; + var $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bCloseTrans = 0, $destMode = 0, $iEnd = 0, $iOff = 0, $iPg = 0; + var $iSize = 0, $iSrcPg = 0, $iSrcPg2 = 0, $ii = 0, $nDestTruncate = 0, $nDstPage = 0, $nSrcPage = 0, $or$cond = 0, $pDestPager = 0, $pFile = 0, $pPg = 0, $pSrcPager = 0, $pSrcPg = 0, $pSrcPg1 = 0, $pgszDest = 0, $pgszSrc = 0, $ratio = 0, $rc = 0, $zData = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $0 = sp + 108|0; + $1 = sp + 104|0; + $rc = sp + 100|0; + $destMode = sp + 96|0; + $pgszSrc = sp + 92|0; + $pgszDest = sp + 88|0; + $pSrcPager = sp + 84|0; + $pDestPager = sp + 80|0; + $ii = sp + 76|0; + $nSrcPage = sp + 72|0; + $bCloseTrans = sp + 68|0; + $iSrcPg = sp + 64|0; + $pSrcPg = sp + 60|0; + $nDestTruncate = sp + 40|0; + $ratio = sp + 28|0; + $iSize = sp + 8|0; + $pFile = sp + 24|0; + $iPg = sp + 36|0; + $nDstPage = sp + 32|0; + $iOff = sp + 16|0; + $iEnd = sp; + $pPg = sp + 44|0; + $pSrcPg1 = sp + 48|0; + $iSrcPg2 = sp + 52|0; + $zData = sp + 56|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $nPage; + HEAP32[$pgszSrc>>2] = 0; + HEAP32[$pgszDest>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 24|0); + $4 = HEAP32[$3>>2]|0; + _sqlite3BtreeEnter($4); + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 28|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$rc>>2] = $7; + $8 = HEAP32[$rc>>2]|0; + $9 = (_isFatalError($8)|0); + $10 = ($9|0)!=(0); + if ($10) { + $413 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($413|0); + } + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 24|0); + $13 = HEAP32[$12>>2]|0; + $14 = (_sqlite3BtreePager($13)|0); + HEAP32[$pSrcPager>>2] = $14; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = (_sqlite3BtreePager($17)|0); + HEAP32[$pDestPager>>2] = $18; + HEAP32[$nSrcPage>>2] = -1; + HEAP32[$bCloseTrans>>2] = 0; + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)!=(0|0); + if ($21) { + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 24|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + 4|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($26) + 20|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = ($29|0)==(2); + if ($30) { + HEAP32[$rc>>2] = 5; + } else { + label = 5; + } + } else { + label = 5; + } + if ((label|0) == 5) { + HEAP32[$rc>>2] = 0; + } + $31 = HEAP32[$rc>>2]|0; + $32 = (0)==($31|0); + if ($32) { + $33 = HEAP32[$0>>2]|0; + $34 = (($33) + 12|0); + $35 = HEAP32[$34>>2]|0; + $36 = ($35|0)==(0); + if ($36) { + $37 = HEAP32[$0>>2]|0; + $38 = (($37) + 4|0); + $39 = HEAP32[$38>>2]|0; + $40 = (_sqlite3BtreeBeginTrans($39,2)|0); + HEAP32[$rc>>2] = $40; + $41 = (0)==($40|0); + if ($41) { + $42 = HEAP32[$0>>2]|0; + $43 = (($42) + 12|0); + HEAP32[$43>>2] = 1; + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 4|0); + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$0>>2]|0; + $48 = (($47) + 8|0); + _sqlite3BtreeGetMeta($46,1,$48); + } + } + } + $49 = HEAP32[$rc>>2]|0; + $50 = ($49|0)==(0); + if ($50) { + $51 = HEAP32[$0>>2]|0; + $52 = (($51) + 24|0); + $53 = HEAP32[$52>>2]|0; + $54 = (_sqlite3BtreeIsInReadTrans($53)|0); + $55 = (0)==($54|0); + if ($55) { + $56 = HEAP32[$0>>2]|0; + $57 = (($56) + 24|0); + $58 = HEAP32[$57>>2]|0; + $59 = (_sqlite3BtreeBeginTrans($58,0)|0); + HEAP32[$rc>>2] = $59; + HEAP32[$bCloseTrans>>2] = 1; + } + } + $60 = HEAP32[$0>>2]|0; + $61 = (($60) + 24|0); + $62 = HEAP32[$61>>2]|0; + $63 = (_sqlite3BtreeGetPageSize($62)|0); + HEAP32[$pgszSrc>>2] = $63; + $64 = HEAP32[$0>>2]|0; + $65 = (($64) + 4|0); + $66 = HEAP32[$65>>2]|0; + $67 = (_sqlite3BtreeGetPageSize($66)|0); + HEAP32[$pgszDest>>2] = $67; + $68 = HEAP32[$0>>2]|0; + $69 = (($68) + 4|0); + $70 = HEAP32[$69>>2]|0; + $71 = (_sqlite3BtreePager($70)|0); + $72 = (_sqlite3PagerGetJournalMode($71)|0); + HEAP32[$destMode>>2] = $72; + $73 = HEAP32[$rc>>2]|0; + $74 = (0)==($73|0); + if ($74) { + $75 = HEAP32[$destMode>>2]|0; + $76 = ($75|0)==(5); + if ($76) { + $77 = HEAP32[$pgszSrc>>2]|0; + $78 = HEAP32[$pgszDest>>2]|0; + $79 = ($77|0)!=($78|0); + if ($79) { + HEAP32[$rc>>2] = 8; + } + } + } + $80 = HEAP32[$0>>2]|0; + $81 = (($80) + 24|0); + $82 = HEAP32[$81>>2]|0; + $83 = (_sqlite3BtreeLastPage($82)|0); + HEAP32[$nSrcPage>>2] = $83; + HEAP32[$ii>>2] = 0; + while(1) { + $84 = HEAP32[$1>>2]|0; + $85 = ($84|0)<(0); + if (!($85)) { + $86 = HEAP32[$ii>>2]|0; + $87 = HEAP32[$1>>2]|0; + $88 = ($86|0)<($87|0); + if (!($88)) { + break; + } + } + $89 = HEAP32[$0>>2]|0; + $90 = (($89) + 16|0); + $91 = HEAP32[$90>>2]|0; + $92 = HEAP32[$nSrcPage>>2]|0; + $93 = ($91>>>0)<=($92>>>0); + if (!($93)) { + break; + } + $94 = HEAP32[$rc>>2]|0; + $95 = ($94|0)!=(0); + $96 = $95 ^ 1; + if (!($96)) { + break; + } + $97 = HEAP32[$0>>2]|0; + $98 = (($97) + 16|0); + $99 = HEAP32[$98>>2]|0; + HEAP32[$iSrcPg>>2] = $99; + $100 = HEAP32[$iSrcPg>>2]|0; + $101 = HEAP32[1472>>2]|0; + $102 = HEAP32[$0>>2]|0; + $103 = (($102) + 24|0); + $104 = HEAP32[$103>>2]|0; + $105 = (($104) + 4|0); + $106 = HEAP32[$105>>2]|0; + $107 = (($106) + 32|0); + $108 = HEAP32[$107>>2]|0; + $109 = (($101>>>0) / ($108>>>0))&-1; + $110 = (($109) + 1)|0; + $111 = ($100|0)!=($110|0); + if ($111) { + $112 = HEAP32[$pSrcPager>>2]|0; + $113 = HEAP32[$iSrcPg>>2]|0; + $114 = (_sqlite3PagerAcquire($112,$113,$pSrcPg,2)|0); + HEAP32[$rc>>2] = $114; + $115 = HEAP32[$rc>>2]|0; + $116 = ($115|0)==(0); + if ($116) { + $117 = HEAP32[$0>>2]|0; + $118 = HEAP32[$iSrcPg>>2]|0; + $119 = HEAP32[$pSrcPg>>2]|0; + $120 = (_sqlite3PagerGetData($119)|0); + $121 = (_backupOnePage($117,$118,$120,0)|0); + HEAP32[$rc>>2] = $121; + $122 = HEAP32[$pSrcPg>>2]|0; + _sqlite3PagerUnref($122); + } + } + $123 = HEAP32[$0>>2]|0; + $124 = (($123) + 16|0); + $125 = HEAP32[$124>>2]|0; + $126 = (($125) + 1)|0; + HEAP32[$124>>2] = $126; + $127 = HEAP32[$ii>>2]|0; + $128 = (($127) + 1)|0; + HEAP32[$ii>>2] = $128; + } + $129 = HEAP32[$rc>>2]|0; + $130 = ($129|0)==(0); + do { + if ($130) { + $131 = HEAP32[$nSrcPage>>2]|0; + $132 = HEAP32[$0>>2]|0; + $133 = (($132) + 36|0); + HEAP32[$133>>2] = $131; + $134 = HEAP32[$nSrcPage>>2]|0; + $135 = (($134) + 1)|0; + $136 = HEAP32[$0>>2]|0; + $137 = (($136) + 16|0); + $138 = HEAP32[$137>>2]|0; + $139 = (($135) - ($138))|0; + $140 = HEAP32[$0>>2]|0; + $141 = (($140) + 32|0); + HEAP32[$141>>2] = $139; + $142 = HEAP32[$0>>2]|0; + $143 = (($142) + 16|0); + $144 = HEAP32[$143>>2]|0; + $145 = HEAP32[$nSrcPage>>2]|0; + $146 = ($144>>>0)>($145>>>0); + if ($146) { + HEAP32[$rc>>2] = 101; + break; + } + $147 = HEAP32[$0>>2]|0; + $148 = (($147) + 40|0); + $149 = HEAP32[$148>>2]|0; + $150 = ($149|0)!=(0); + if (!($150)) { + $151 = HEAP32[$0>>2]|0; + _attachBackupObject($151); + } + } + } while(0); + $152 = HEAP32[$rc>>2]|0; + $153 = ($152|0)==(101); + if ($153) { + $154 = HEAP32[$nSrcPage>>2]|0; + $155 = ($154|0)==(0); + if ($155) { + $156 = HEAP32[$0>>2]|0; + $157 = (($156) + 4|0); + $158 = HEAP32[$157>>2]|0; + $159 = (_sqlite3BtreeNewDb($158)|0); + HEAP32[$rc>>2] = $159; + HEAP32[$nSrcPage>>2] = 1; + } + $160 = HEAP32[$rc>>2]|0; + $161 = ($160|0)==(0); + $162 = HEAP32[$rc>>2]|0; + $163 = ($162|0)==(101); + $or$cond = $161 | $163; + if ($or$cond) { + $164 = HEAP32[$0>>2]|0; + $165 = (($164) + 4|0); + $166 = HEAP32[$165>>2]|0; + $167 = HEAP32[$0>>2]|0; + $168 = (($167) + 8|0); + $169 = HEAP32[$168>>2]|0; + $170 = (($169) + 1)|0; + $171 = (_sqlite3BtreeUpdateMeta($166,1,$170)|0); + HEAP32[$rc>>2] = $171; + } + $172 = HEAP32[$rc>>2]|0; + $173 = ($172|0)==(0); + if ($173) { + $174 = HEAP32[$0>>2]|0; + $175 = HEAP32[$174>>2]|0; + $176 = ($175|0)!=(0|0); + if ($176) { + $177 = HEAP32[$0>>2]|0; + $178 = HEAP32[$177>>2]|0; + _sqlite3ResetAllSchemasOfConnection($178); + } + $179 = HEAP32[$destMode>>2]|0; + $180 = ($179|0)==(5); + if ($180) { + $181 = HEAP32[$0>>2]|0; + $182 = (($181) + 4|0); + $183 = HEAP32[$182>>2]|0; + $184 = (_sqlite3BtreeSetVersion($183,2)|0); + HEAP32[$rc>>2] = $184; + } + } + $185 = HEAP32[$rc>>2]|0; + $186 = ($185|0)==(0); + if ($186) { + $187 = HEAP32[$pgszSrc>>2]|0; + $188 = HEAP32[$pgszDest>>2]|0; + $189 = ($187|0)<($188|0); + if ($189) { + $190 = HEAP32[$pgszDest>>2]|0; + $191 = HEAP32[$pgszSrc>>2]|0; + $192 = (($190|0) / ($191|0))&-1; + HEAP32[$ratio>>2] = $192; + $193 = HEAP32[$nSrcPage>>2]|0; + $194 = HEAP32[$ratio>>2]|0; + $195 = (($193) + ($194))|0; + $196 = (($195) - 1)|0; + $197 = HEAP32[$ratio>>2]|0; + $198 = (($196|0) / ($197|0))&-1; + HEAP32[$nDestTruncate>>2] = $198; + $199 = HEAP32[$nDestTruncate>>2]|0; + $200 = HEAP32[1472>>2]|0; + $201 = HEAP32[$0>>2]|0; + $202 = (($201) + 4|0); + $203 = HEAP32[$202>>2]|0; + $204 = (($203) + 4|0); + $205 = HEAP32[$204>>2]|0; + $206 = (($205) + 32|0); + $207 = HEAP32[$206>>2]|0; + $208 = (($200>>>0) / ($207>>>0))&-1; + $209 = (($208) + 1)|0; + $210 = ($199|0)==($209|0); + if ($210) { + $211 = HEAP32[$nDestTruncate>>2]|0; + $212 = (($211) + -1)|0; + HEAP32[$nDestTruncate>>2] = $212; + } + } else { + $213 = HEAP32[$nSrcPage>>2]|0; + $214 = HEAP32[$pgszSrc>>2]|0; + $215 = HEAP32[$pgszDest>>2]|0; + $216 = (($214|0) / ($215|0))&-1; + $217 = Math_imul($213, $216)|0; + HEAP32[$nDestTruncate>>2] = $217; + } + $218 = HEAP32[$pgszSrc>>2]|0; + $219 = HEAP32[$pgszDest>>2]|0; + $220 = ($218|0)<($219|0); + if ($220) { + $221 = HEAP32[$pgszSrc>>2]|0; + $222 = ($221|0)<(0); + $223 = $222 << 31 >> 31; + $224 = HEAP32[$nSrcPage>>2]|0; + $225 = ($224|0)<(0); + $226 = $225 << 31 >> 31; + $227 = (___muldi3(($221|0),($223|0),($224|0),($226|0))|0); + $228 = tempRet0; + $229 = $iSize; + $230 = $229; + HEAP32[$230>>2] = $227; + $231 = (($229) + 4)|0; + $232 = $231; + HEAP32[$232>>2] = $228; + $233 = HEAP32[$pDestPager>>2]|0; + $234 = (_sqlite3PagerFile($233)|0); + HEAP32[$pFile>>2] = $234; + $235 = HEAP32[$pDestPager>>2]|0; + _sqlite3PagerPagecount($235,$nDstPage); + $236 = HEAP32[$nDestTruncate>>2]|0; + HEAP32[$iPg>>2] = $236; + while(1) { + $237 = HEAP32[$rc>>2]|0; + $238 = ($237|0)==(0); + if (!($238)) { + break; + } + $239 = HEAP32[$iPg>>2]|0; + $240 = HEAP32[$nDstPage>>2]|0; + $241 = ($239>>>0)<=($240>>>0); + if (!($241)) { + break; + } + $242 = HEAP32[$iPg>>2]|0; + $243 = HEAP32[1472>>2]|0; + $244 = HEAP32[$0>>2]|0; + $245 = (($244) + 4|0); + $246 = HEAP32[$245>>2]|0; + $247 = (($246) + 4|0); + $248 = HEAP32[$247>>2]|0; + $249 = (($248) + 32|0); + $250 = HEAP32[$249>>2]|0; + $251 = (($243>>>0) / ($250>>>0))&-1; + $252 = (($251) + 1)|0; + $253 = ($242|0)!=($252|0); + do { + if ($253) { + $254 = HEAP32[$pDestPager>>2]|0; + $255 = HEAP32[$iPg>>2]|0; + $256 = (_sqlite3PagerAcquire($254,$255,$pPg,0)|0); + HEAP32[$rc>>2] = $256; + $257 = HEAP32[$rc>>2]|0; + $258 = ($257|0)==(0); + if (!($258)) { + break; + } + $259 = HEAP32[$pPg>>2]|0; + $260 = (_sqlite3PagerWrite($259)|0); + HEAP32[$rc>>2] = $260; + $261 = HEAP32[$pPg>>2]|0; + _sqlite3PagerUnref($261); + } + } while(0); + $262 = HEAP32[$iPg>>2]|0; + $263 = (($262) + 1)|0; + HEAP32[$iPg>>2] = $263; + } + $264 = HEAP32[$rc>>2]|0; + $265 = ($264|0)==(0); + if ($265) { + $266 = HEAP32[$pDestPager>>2]|0; + $267 = (_sqlite3PagerCommitPhaseOne($266,0,1)|0); + HEAP32[$rc>>2] = $267; + } + $268 = HEAP32[1472>>2]|0; + $269 = HEAP32[$pgszDest>>2]|0; + $270 = (($268) + ($269))|0; + $271 = ($270|0)<(0); + $272 = $271 << 31 >> 31; + $273 = $iSize; + $274 = $273; + $275 = HEAP32[$274>>2]|0; + $276 = (($273) + 4)|0; + $277 = $276; + $278 = HEAP32[$277>>2]|0; + $279 = ($272|0)<($278|0); + $280 = ($272|0)==($278|0); + $281 = ($270>>>0)<($275>>>0); + $282 = $280 & $281; + $283 = $279 | $282; + if ($283) { + $284 = HEAP32[1472>>2]|0; + $285 = HEAP32[$pgszDest>>2]|0; + $286 = (($284) + ($285))|0; + $287 = ($286|0)<(0); + $288 = $287 << 31 >> 31; + $297 = $286;$300 = $288; + } else { + $289 = $iSize; + $290 = $289; + $291 = HEAP32[$290>>2]|0; + $292 = (($289) + 4)|0; + $293 = $292; + $294 = HEAP32[$293>>2]|0; + $297 = $291;$300 = $294; + } + $295 = $iEnd; + $296 = $295; + HEAP32[$296>>2] = $297; + $298 = (($295) + 4)|0; + $299 = $298; + HEAP32[$299>>2] = $300; + $301 = HEAP32[1472>>2]|0; + $302 = HEAP32[$pgszSrc>>2]|0; + $303 = (($301) + ($302))|0; + $304 = ($303|0)<(0); + $305 = $304 << 31 >> 31; + $306 = $iOff; + $307 = $306; + HEAP32[$307>>2] = $303; + $308 = (($306) + 4)|0; + $309 = $308; + HEAP32[$309>>2] = $305; + while(1) { + $310 = HEAP32[$rc>>2]|0; + $311 = ($310|0)==(0); + if (!($311)) { + break; + } + $312 = $iOff; + $313 = $312; + $314 = HEAP32[$313>>2]|0; + $315 = (($312) + 4)|0; + $316 = $315; + $317 = HEAP32[$316>>2]|0; + $318 = $iEnd; + $319 = $318; + $320 = HEAP32[$319>>2]|0; + $321 = (($318) + 4)|0; + $322 = $321; + $323 = HEAP32[$322>>2]|0; + $324 = ($317|0)<($323|0); + $325 = ($317|0)==($323|0); + $326 = ($314>>>0)<($320>>>0); + $327 = $325 & $326; + $328 = $324 | $327; + if (!($328)) { + break; + } + HEAP32[$pSrcPg1>>2] = 0; + $329 = $iOff; + $330 = $329; + $331 = HEAP32[$330>>2]|0; + $332 = (($329) + 4)|0; + $333 = $332; + $334 = HEAP32[$333>>2]|0; + $335 = HEAP32[$pgszSrc>>2]|0; + $336 = ($335|0)<(0); + $337 = $336 << 31 >> 31; + $338 = (___divdi3(($331|0),($334|0),($335|0),($337|0))|0); + $339 = tempRet0; + $340 = (_i64Add(($338|0),($339|0),1,0)|0); + $341 = tempRet0; + HEAP32[$iSrcPg2>>2] = $340; + $342 = HEAP32[$pSrcPager>>2]|0; + $343 = HEAP32[$iSrcPg2>>2]|0; + $344 = (_sqlite3PagerAcquire($342,$343,$pSrcPg1,0)|0); + HEAP32[$rc>>2] = $344; + $345 = HEAP32[$rc>>2]|0; + $346 = ($345|0)==(0); + if ($346) { + $347 = HEAP32[$pSrcPg1>>2]|0; + $348 = (_sqlite3PagerGetData($347)|0); + HEAP32[$zData>>2] = $348; + $349 = HEAP32[$pFile>>2]|0; + $350 = HEAP32[$zData>>2]|0; + $351 = HEAP32[$pgszSrc>>2]|0; + $352 = $iOff; + $353 = $352; + $354 = HEAP32[$353>>2]|0; + $355 = (($352) + 4)|0; + $356 = $355; + $357 = HEAP32[$356>>2]|0; + $358 = (_sqlite3OsWrite($349,$350,$351,$354,$357)|0); + HEAP32[$rc>>2] = $358; + } + $359 = HEAP32[$pSrcPg1>>2]|0; + _sqlite3PagerUnref($359); + $360 = HEAP32[$pgszSrc>>2]|0; + $361 = ($360|0)<(0); + $362 = $361 << 31 >> 31; + $363 = $iOff; + $364 = $363; + $365 = HEAP32[$364>>2]|0; + $366 = (($363) + 4)|0; + $367 = $366; + $368 = HEAP32[$367>>2]|0; + $369 = (_i64Add(($365|0),($368|0),($360|0),($362|0))|0); + $370 = tempRet0; + $371 = $iOff; + $372 = $371; + HEAP32[$372>>2] = $369; + $373 = (($371) + 4)|0; + $374 = $373; + HEAP32[$374>>2] = $370; + } + $375 = HEAP32[$rc>>2]|0; + $376 = ($375|0)==(0); + if ($376) { + $377 = HEAP32[$pFile>>2]|0; + $378 = $iSize; + $379 = $378; + $380 = HEAP32[$379>>2]|0; + $381 = (($378) + 4)|0; + $382 = $381; + $383 = HEAP32[$382>>2]|0; + $384 = (_backupTruncateFile($377,$380,$383)|0); + HEAP32[$rc>>2] = $384; + } + $385 = HEAP32[$rc>>2]|0; + $386 = ($385|0)==(0); + if ($386) { + $387 = HEAP32[$pDestPager>>2]|0; + $388 = (_sqlite3PagerSync($387,0)|0); + HEAP32[$rc>>2] = $388; + } + } else { + $389 = HEAP32[$pDestPager>>2]|0; + $390 = HEAP32[$nDestTruncate>>2]|0; + _sqlite3PagerTruncateImage($389,$390); + $391 = HEAP32[$pDestPager>>2]|0; + $392 = (_sqlite3PagerCommitPhaseOne($391,0,0)|0); + HEAP32[$rc>>2] = $392; + } + $393 = HEAP32[$rc>>2]|0; + $394 = (0)==($393|0); + if ($394) { + $395 = HEAP32[$0>>2]|0; + $396 = (($395) + 4|0); + $397 = HEAP32[$396>>2]|0; + $398 = (_sqlite3BtreeCommitPhaseTwo($397,0)|0); + HEAP32[$rc>>2] = $398; + $399 = (0)==($398|0); + $$ = $399 ? 101 : $398; + HEAP32[$rc>>2] = $$; + } + } + } + $400 = HEAP32[$bCloseTrans>>2]|0; + $401 = ($400|0)!=(0); + if ($401) { + $402 = HEAP32[$0>>2]|0; + $403 = (($402) + 24|0); + $404 = HEAP32[$403>>2]|0; + (_sqlite3BtreeCommitPhaseOne($404,0)|0); + $405 = HEAP32[$0>>2]|0; + $406 = (($405) + 24|0); + $407 = HEAP32[$406>>2]|0; + (_sqlite3BtreeCommitPhaseTwo($407,0)|0); + } + $408 = HEAP32[$rc>>2]|0; + $409 = ($408|0)==(3082); + if ($409) { + HEAP32[$rc>>2] = 7; + } + $410 = HEAP32[$rc>>2]|0; + $411 = HEAP32[$0>>2]|0; + $412 = (($411) + 28|0); + HEAP32[$412>>2] = $410; + $413 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($413|0); +} +function _sqlite3BtreeEnter($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + 4|0); + HEAP32[$6>>2] = $2; + STACKTOP = sp;return; +} +function _isFatalError($rc) { + $rc = $rc|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $rc; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0); + $3 = HEAP32[$0>>2]|0; + $4 = ($3|0)!=(5); + $or$cond = $2 & $4; + if (!($or$cond)) { + $8 = 0; + $7 = $8&1; + STACKTOP = sp;return ($7|0); + } + $5 = HEAP32[$0>>2]|0; + $6 = ($5|0)!=(6); + $8 = $6; + $7 = $8&1; + STACKTOP = sp;return ($7|0); +} +function _sqlite3BtreeBeginTrans($p,$wrflag) { + $p = $p|0; + $wrflag = $wrflag|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $pBlock = 0, $pBt = 0, $pIter = 0, $pPage1 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $pBlock = sp + 4|0; + $pBt = sp + 8|0; + $rc = sp + 12|0; + $pIter = sp + 16|0; + $pPage1 = sp + 20|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $wrflag; + HEAP32[$pBlock>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pBt>>2] = $4; + HEAP32[$rc>>2] = 0; + $5 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($5); + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 8|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = ($9|0)==(2); + do { + if (!($10)) { + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 8|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = ($14|0)==(1); + if ($15) { + $16 = HEAP32[$1>>2]|0; + $17 = ($16|0)!=(0); + if (!($17)) { + break; + } + } + $18 = HEAP32[$pBt>>2]|0; + $19 = (($18) + 22|0); + $20 = HEAP16[$19>>1]|0; + $21 = $20&65535; + $22 = $21 & 1; + $23 = ($22|0)!=(0); + if ($23) { + $24 = HEAP32[$1>>2]|0; + $25 = ($24|0)!=(0); + if ($25) { + HEAP32[$rc>>2] = 8; + break; + } + } + $26 = HEAP32[$1>>2]|0; + $27 = ($26|0)!=(0); + if ($27) { + $28 = HEAP32[$pBt>>2]|0; + $29 = (($28) + 20|0); + $30 = HEAP8[$29>>0]|0; + $31 = $30&255; + $32 = ($31|0)==(2); + if ($32) { + label = 10; + } else { + label = 9; + } + } else { + label = 9; + } + L12: do { + if ((label|0) == 9) { + $33 = HEAP32[$pBt>>2]|0; + $34 = (($33) + 22|0); + $35 = HEAP16[$34>>1]|0; + $36 = $35&65535; + $37 = $36 & 64; + $38 = ($37|0)!=(0); + if ($38) { + label = 10; + } else { + $43 = HEAP32[$1>>2]|0; + $44 = ($43|0)>(1); + if ($44) { + $45 = HEAP32[$pBt>>2]|0; + $46 = (($45) + 72|0); + $47 = HEAP32[$46>>2]|0; + HEAP32[$pIter>>2] = $47; + while(1) { + $48 = HEAP32[$pIter>>2]|0; + $49 = ($48|0)!=(0|0); + if (!($49)) { + break L12; + } + $50 = HEAP32[$pIter>>2]|0; + $51 = HEAP32[$50>>2]|0; + $52 = HEAP32[$0>>2]|0; + $53 = ($51|0)!=($52|0); + $54 = HEAP32[$pIter>>2]|0; + if ($53) { + break; + } + $57 = (($54) + 12|0); + $58 = HEAP32[$57>>2]|0; + HEAP32[$pIter>>2] = $58; + } + $55 = HEAP32[$54>>2]|0; + $56 = HEAP32[$55>>2]|0; + HEAP32[$pBlock>>2] = $56; + } + } + } + } while(0); + if ((label|0) == 10) { + $39 = HEAP32[$pBt>>2]|0; + $40 = (($39) + 76|0); + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$41>>2]|0; + HEAP32[$pBlock>>2] = $42; + } + $59 = HEAP32[$pBlock>>2]|0; + $60 = ($59|0)!=(0|0); + if ($60) { + HEAP32[$rc>>2] = 262; + break; + } + $61 = HEAP32[$0>>2]|0; + $62 = (_querySharedCacheTableLock($61,1,1)|0); + HEAP32[$rc>>2] = $62; + $63 = HEAP32[$rc>>2]|0; + $64 = (0)!=($63|0); + if (!($64)) { + $65 = HEAP32[$pBt>>2]|0; + $66 = (($65) + 22|0); + $67 = HEAP16[$66>>1]|0; + $68 = $67&65535; + $69 = $68 & -9; + $70 = $69&65535; + HEAP16[$66>>1] = $70; + $71 = HEAP32[$pBt>>2]|0; + $72 = (($71) + 44|0); + $73 = HEAP32[$72>>2]|0; + $74 = ($73|0)==(0); + if ($74) { + $75 = HEAP32[$pBt>>2]|0; + $76 = (($75) + 22|0); + $77 = HEAP16[$76>>1]|0; + $78 = $77&65535; + $79 = $78 | 8; + $80 = $79&65535; + HEAP16[$76>>1] = $80; + } + while(1) { + $81 = HEAP32[$pBt>>2]|0; + $82 = (($81) + 12|0); + $83 = HEAP32[$82>>2]|0; + $84 = ($83|0)==(0|0); + if ($84) { + $85 = HEAP32[$pBt>>2]|0; + $86 = (_lockBtree($85)|0); + HEAP32[$rc>>2] = $86; + $87 = (0)==($86|0); + if ($87) { + continue; + } + } + $88 = HEAP32[$rc>>2]|0; + $89 = ($88|0)==(0); + do { + if ($89) { + $90 = HEAP32[$1>>2]|0; + $91 = ($90|0)!=(0); + if ($91) { + $92 = HEAP32[$pBt>>2]|0; + $93 = (($92) + 22|0); + $94 = HEAP16[$93>>1]|0; + $95 = $94&65535; + $96 = $95 & 1; + $97 = ($96|0)!=(0); + if ($97) { + HEAP32[$rc>>2] = 8; + break; + } + $98 = HEAP32[$pBt>>2]|0; + $99 = HEAP32[$98>>2]|0; + $100 = HEAP32[$1>>2]|0; + $101 = ($100|0)>(1); + $102 = $101&1; + $103 = HEAP32[$0>>2]|0; + $104 = HEAP32[$103>>2]|0; + $105 = (_sqlite3TempInMemory($104)|0); + $106 = (_sqlite3PagerBegin($99,$102,$105)|0); + HEAP32[$rc>>2] = $106; + $107 = HEAP32[$rc>>2]|0; + $108 = ($107|0)==(0); + if ($108) { + $109 = HEAP32[$pBt>>2]|0; + $110 = (_newDatabase($109)|0); + HEAP32[$rc>>2] = $110; + } + } + } + } while(0); + $111 = HEAP32[$rc>>2]|0; + $112 = ($111|0)!=(0); + if ($112) { + $113 = HEAP32[$pBt>>2]|0; + _unlockBtreeIfUnused($113); + } + $114 = HEAP32[$rc>>2]|0; + $115 = $114 & 255; + $116 = ($115|0)==(5); + if (!($116)) { + break; + } + $117 = HEAP32[$pBt>>2]|0; + $118 = (($117) + 20|0); + $119 = HEAP8[$118>>0]|0; + $120 = $119&255; + $121 = ($120|0)==(0); + if (!($121)) { + break; + } + $122 = HEAP32[$pBt>>2]|0; + $123 = (_btreeInvokeBusyHandler($122)|0); + $124 = ($123|0)!=(0); + if (!($124)) { + break; + } + } + $125 = HEAP32[$rc>>2]|0; + $126 = ($125|0)==(0); + if ($126) { + $127 = HEAP32[$0>>2]|0; + $128 = (($127) + 8|0); + $129 = HEAP8[$128>>0]|0; + $130 = $129&255; + $131 = ($130|0)==(0); + if ($131) { + $132 = HEAP32[$pBt>>2]|0; + $133 = (($132) + 40|0); + $134 = HEAP32[$133>>2]|0; + $135 = (($134) + 1)|0; + HEAP32[$133>>2] = $135; + $136 = HEAP32[$0>>2]|0; + $137 = (($136) + 9|0); + $138 = HEAP8[$137>>0]|0; + $139 = ($138<<24>>24)!=(0); + if ($139) { + $140 = HEAP32[$0>>2]|0; + $141 = (($140) + 28|0); + $142 = (($141) + 8|0); + HEAP8[$142>>0] = 1; + $143 = HEAP32[$pBt>>2]|0; + $144 = (($143) + 72|0); + $145 = HEAP32[$144>>2]|0; + $146 = HEAP32[$0>>2]|0; + $147 = (($146) + 28|0); + $148 = (($147) + 12|0); + HEAP32[$148>>2] = $145; + $149 = HEAP32[$0>>2]|0; + $150 = (($149) + 28|0); + $151 = HEAP32[$pBt>>2]|0; + $152 = (($151) + 72|0); + HEAP32[$152>>2] = $150; + } + } + $153 = HEAP32[$1>>2]|0; + $154 = ($153|0)!=(0); + $155 = $154 ? 2 : 1; + $156 = $155&255; + $157 = HEAP32[$0>>2]|0; + $158 = (($157) + 8|0); + HEAP8[$158>>0] = $156; + $159 = HEAP32[$0>>2]|0; + $160 = (($159) + 8|0); + $161 = HEAP8[$160>>0]|0; + $162 = $161&255; + $163 = HEAP32[$pBt>>2]|0; + $164 = (($163) + 20|0); + $165 = HEAP8[$164>>0]|0; + $166 = $165&255; + $167 = ($162|0)>($166|0); + if ($167) { + $168 = HEAP32[$0>>2]|0; + $169 = (($168) + 8|0); + $170 = HEAP8[$169>>0]|0; + $171 = HEAP32[$pBt>>2]|0; + $172 = (($171) + 20|0); + HEAP8[$172>>0] = $170; + } + $173 = HEAP32[$1>>2]|0; + $174 = ($173|0)!=(0); + if ($174) { + $175 = HEAP32[$pBt>>2]|0; + $176 = (($175) + 12|0); + $177 = HEAP32[$176>>2]|0; + HEAP32[$pPage1>>2] = $177; + $178 = HEAP32[$0>>2]|0; + $179 = HEAP32[$pBt>>2]|0; + $180 = (($179) + 76|0); + HEAP32[$180>>2] = $178; + $181 = HEAP32[$pBt>>2]|0; + $182 = (($181) + 22|0); + $183 = HEAP16[$182>>1]|0; + $184 = $183&65535; + $185 = $184 & -33; + $186 = $185&65535; + HEAP16[$182>>1] = $186; + $187 = HEAP32[$1>>2]|0; + $188 = ($187|0)>(1); + if ($188) { + $189 = HEAP32[$pBt>>2]|0; + $190 = (($189) + 22|0); + $191 = HEAP16[$190>>1]|0; + $192 = $191&65535; + $193 = $192 | 32; + $194 = $193&65535; + HEAP16[$190>>1] = $194; + } + $195 = HEAP32[$pBt>>2]|0; + $196 = (($195) + 44|0); + $197 = HEAP32[$196>>2]|0; + $198 = HEAP32[$pPage1>>2]|0; + $199 = (($198) + 56|0); + $200 = HEAP32[$199>>2]|0; + $201 = (($200) + 28|0); + $202 = (_sqlite3Get4byte($201)|0); + $203 = ($197|0)!=($202|0); + if ($203) { + $204 = HEAP32[$pPage1>>2]|0; + $205 = (($204) + 68|0); + $206 = HEAP32[$205>>2]|0; + $207 = (_sqlite3PagerWrite($206)|0); + HEAP32[$rc>>2] = $207; + $208 = HEAP32[$rc>>2]|0; + $209 = ($208|0)==(0); + if ($209) { + $210 = HEAP32[$pPage1>>2]|0; + $211 = (($210) + 56|0); + $212 = HEAP32[$211>>2]|0; + $213 = (($212) + 28|0); + $214 = HEAP32[$pBt>>2]|0; + $215 = (($214) + 44|0); + $216 = HEAP32[$215>>2]|0; + _sqlite3Put4byte($213,$216); + } + } + } + } + } + } + } while(0); + $217 = HEAP32[$rc>>2]|0; + $218 = ($217|0)==(0); + if (!($218)) { + $228 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($228|0); + } + $219 = HEAP32[$1>>2]|0; + $220 = ($219|0)!=(0); + if (!($220)) { + $228 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($228|0); + } + $221 = HEAP32[$pBt>>2]|0; + $222 = HEAP32[$221>>2]|0; + $223 = HEAP32[$0>>2]|0; + $224 = HEAP32[$223>>2]|0; + $225 = (($224) + 488|0); + $226 = HEAP32[$225>>2]|0; + $227 = (_sqlite3PagerOpenSavepoint($222,$226)|0); + HEAP32[$rc>>2] = $227; + $228 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($228|0); +} +function _sqlite3BtreeGetMeta($p,$idx,$pMeta) { + $p = $p|0; + $idx = $idx|0; + $pMeta = $pMeta|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pBt = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $idx; + HEAP32[$2>>2] = $pMeta; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pBt>>2] = $5; + $6 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($6); + $7 = HEAP32[$1>>2]|0; + $8 = $7<<2; + $9 = (36 + ($8))|0; + $10 = HEAP32[$pBt>>2]|0; + $11 = (($10) + 12|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + 56|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + ($9)|0); + $16 = (_sqlite3Get4byte($15)|0); + $17 = HEAP32[$2>>2]|0; + HEAP32[$17>>2] = $16; + STACKTOP = sp;return; +} +function _sqlite3BtreeIsInReadTrans($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = ($4|0)!=(0); + $6 = $5&1; + STACKTOP = sp;return ($6|0); +} +function _sqlite3BtreeGetPageSize($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 32|0); + $5 = HEAP32[$4>>2]|0; + STACKTOP = sp;return ($5|0); +} +function _sqlite3PagerGetJournalMode($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 5|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + STACKTOP = sp;return ($4|0); +} +function _sqlite3BtreeLastPage($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + $4 = (_btreePagecount($3)|0); + STACKTOP = sp;return ($4|0); +} +function _sqlite3PagerAcquire($pPager,$pgno,$ppPage,$flags) { + $pPager = $pPager|0; + $pgno = $pgno|0; + $ppPage = $ppPage|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bMmapOk = 0, $iFrame = 0, $noContent = 0, $pData = 0, $pPg = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $rc = sp + 20|0; + $pPg = sp + 12|0; + $iFrame = sp + 8|0; + $noContent = sp + 4|0; + $bMmapOk = sp; + $pData = sp + 16|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$2>>2] = $pgno; + HEAP32[$3>>2] = $ppPage; + HEAP32[$4>>2] = $flags; + HEAP32[$rc>>2] = 0; + HEAP32[$pPg>>2] = 0; + HEAP32[$iFrame>>2] = 0; + $5 = HEAP32[$4>>2]|0; + $6 = $5 & 1; + HEAP32[$noContent>>2] = $6; + $7 = 0; + HEAP32[$bMmapOk>>2] = $7; + $8 = HEAP32[$2>>2]|0; + $9 = ($8|0)==(0); + if ($9) { + $10 = (_sqlite3CorruptError(45156)|0); + HEAP32[$0>>2] = $10; + $191 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($191|0); + } + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 40|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(0); + do { + if ($14) { + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 40|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$rc>>2] = $17; + label = 21; + } else { + $18 = HEAP32[$bMmapOk>>2]|0; + $19 = ($18|0)!=(0); + if ($19) { + $20 = HEAP32[$1>>2]|0; + $21 = (_pagerUseWal($20)|0); + $22 = ($21|0)!=(0); + if ($22) { + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 208|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$2>>2]|0; + $27 = (_sqlite3WalFindFrame($25,$26,$iFrame)|0); + HEAP32[$rc>>2] = $27; + $28 = HEAP32[$rc>>2]|0; + $29 = ($28|0)!=(0); + if ($29) { + break; + } + } + } + $30 = HEAP32[$bMmapOk>>2]|0; + $31 = ($30|0)!=(0); + if ($31) { + $32 = HEAP32[$iFrame>>2]|0; + $33 = ($32|0)==(0); + if ($33) { + HEAP32[$pData>>2] = 0; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 60|0); + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$2>>2]|0; + $38 = (($37) - 1)|0; + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 152|0); + $41 = HEAP32[$40>>2]|0; + $42 = ($41|0)<(0); + $43 = $42 << 31 >> 31; + $44 = (___muldi3(($38|0),0,($41|0),($43|0))|0); + $45 = tempRet0; + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 152|0); + $48 = HEAP32[$47>>2]|0; + $49 = (_sqlite3OsFetch($36,$44,$45,$48,$pData)|0); + HEAP32[$rc>>2] = $49; + $50 = HEAP32[$rc>>2]|0; + $51 = ($50|0)==(0); + if ($51) { + $52 = HEAP32[$pData>>2]|0; + $53 = ($52|0)!=(0|0); + if ($53) { + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 16|0); + $56 = HEAP8[$55>>0]|0; + $57 = $56&255; + $58 = ($57|0)>(1); + if ($58) { + $59 = HEAP32[$1>>2]|0; + $60 = (($59) + 204|0); + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$2>>2]|0; + (_sqlite3PcacheFetch($61,$62,0,$pPg)|0); + } + $63 = HEAP32[$pPg>>2]|0; + $64 = ($63|0)==(0|0); + $65 = HEAP32[$1>>2]|0; + if ($64) { + $66 = HEAP32[$2>>2]|0; + $67 = HEAP32[$pData>>2]|0; + $68 = (_pagerAcquireMapPage($65,$66,$67,$pPg)|0); + HEAP32[$rc>>2] = $68; + } else { + $69 = (($65) + 60|0); + $70 = HEAP32[$69>>2]|0; + $71 = HEAP32[$2>>2]|0; + $72 = (($71) - 1)|0; + $73 = HEAP32[$1>>2]|0; + $74 = (($73) + 152|0); + $75 = HEAP32[$74>>2]|0; + $76 = ($75|0)<(0); + $77 = $76 << 31 >> 31; + $78 = (___muldi3(($72|0),0,($75|0),($77|0))|0); + $79 = tempRet0; + $80 = HEAP32[$pData>>2]|0; + (_sqlite3OsUnfetch($70,$78,$79,$80)|0); + } + $81 = HEAP32[$pPg>>2]|0; + $82 = ($81|0)!=(0|0); + if ($82) { + $83 = HEAP32[$pPg>>2]|0; + $84 = HEAP32[$3>>2]|0; + HEAP32[$84>>2] = $83; + HEAP32[$0>>2] = 0; + $191 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($191|0); + } + } + } + $85 = HEAP32[$rc>>2]|0; + $86 = ($85|0)!=(0); + if ($86) { + break; + } + } + } + $87 = HEAP32[$1>>2]|0; + $88 = (($87) + 204|0); + $89 = HEAP32[$88>>2]|0; + $90 = HEAP32[$2>>2]|0; + $91 = HEAP32[$3>>2]|0; + $92 = (_sqlite3PcacheFetch($89,$90,1,$91)|0); + HEAP32[$rc>>2] = $92; + label = 21; + } + } while(0); + do { + if ((label|0) == 21) { + $93 = HEAP32[$rc>>2]|0; + $94 = ($93|0)!=(0); + if ($94) { + HEAP32[$pPg>>2] = 0; + break; + } + $95 = HEAP32[$3>>2]|0; + $96 = HEAP32[$95>>2]|0; + $97 = (($96) + 16|0); + $98 = HEAP32[$97>>2]|0; + $99 = ($98|0)!=(0|0); + if ($99) { + $100 = HEAP32[$noContent>>2]|0; + $101 = ($100|0)!=(0); + if (!($101)) { + $102 = HEAP32[$1>>2]|0; + $103 = (($102) + 184|0); + $104 = HEAP32[$103>>2]|0; + $105 = (($104) + 1)|0; + HEAP32[$103>>2] = $105; + HEAP32[$0>>2] = 0; + $191 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($191|0); + } + } + $106 = HEAP32[$3>>2]|0; + $107 = HEAP32[$106>>2]|0; + HEAP32[$pPg>>2] = $107; + $108 = HEAP32[$1>>2]|0; + $109 = HEAP32[$pPg>>2]|0; + $110 = (($109) + 16|0); + HEAP32[$110>>2] = $108; + $111 = HEAP32[$2>>2]|0; + $112 = ($111>>>0)>(2147483647); + if (!($112)) { + $113 = HEAP32[$2>>2]|0; + $114 = HEAP32[1472>>2]|0; + $115 = HEAP32[$1>>2]|0; + $116 = (($115) + 152|0); + $117 = HEAP32[$116>>2]|0; + $118 = (($114|0) / ($117|0))&-1; + $119 = (($118) + 1)|0; + $120 = ($113|0)==($119|0); + if (!($120)) { + $122 = HEAP32[$1>>2]|0; + $123 = (($122) + 15|0); + $124 = HEAP8[$123>>0]|0; + $125 = $124&255; + $126 = ($125|0)!=(0); + if ($126) { + label = 33; + } else { + $127 = HEAP32[$1>>2]|0; + $128 = (($127) + 24|0); + $129 = HEAP32[$128>>2]|0; + $130 = HEAP32[$2>>2]|0; + $131 = ($129>>>0)<($130>>>0); + if ($131) { + label = 33; + } else { + $132 = HEAP32[$noContent>>2]|0; + $133 = ($132|0)!=(0); + if ($133) { + label = 33; + } else { + $134 = HEAP32[$1>>2]|0; + $135 = (($134) + 60|0); + $136 = HEAP32[$135>>2]|0; + $137 = HEAP32[$136>>2]|0; + $138 = ($137|0)!=(0|0); + if ($138) { + $163 = HEAP32[$1>>2]|0; + $164 = (_pagerUseWal($163)|0); + $165 = ($164|0)!=(0); + if ($165) { + $166 = HEAP32[$bMmapOk>>2]|0; + $167 = ($166|0)==(0); + if ($167) { + $168 = HEAP32[$1>>2]|0; + $169 = (($168) + 208|0); + $170 = HEAP32[$169>>2]|0; + $171 = HEAP32[$2>>2]|0; + $172 = (_sqlite3WalFindFrame($170,$171,$iFrame)|0); + HEAP32[$rc>>2] = $172; + $173 = HEAP32[$rc>>2]|0; + $174 = ($173|0)!=(0); + if ($174) { + break; + } + } + } + $175 = HEAP32[$1>>2]|0; + $176 = (($175) + 184|0); + $177 = (($176) + 4|0); + $178 = HEAP32[$177>>2]|0; + $179 = (($178) + 1)|0; + HEAP32[$177>>2] = $179; + $180 = HEAP32[$pPg>>2]|0; + $181 = HEAP32[$iFrame>>2]|0; + $182 = (_readDbPage($180,$181)|0); + HEAP32[$rc>>2] = $182; + $183 = HEAP32[$rc>>2]|0; + $184 = ($183|0)!=(0); + if ($184) { + break; + } + } else { + label = 33; + } + } + } + } + if ((label|0) == 33) { + $139 = HEAP32[$2>>2]|0; + $140 = HEAP32[$1>>2]|0; + $141 = (($140) + 156|0); + $142 = HEAP32[$141>>2]|0; + $143 = ($139>>>0)>($142>>>0); + if ($143) { + HEAP32[$rc>>2] = 13; + break; + } + $144 = HEAP32[$noContent>>2]|0; + $145 = ($144|0)!=(0); + if ($145) { + _sqlite3BeginBenignMalloc(); + $146 = HEAP32[$2>>2]|0; + $147 = HEAP32[$1>>2]|0; + $148 = (($147) + 28|0); + $149 = HEAP32[$148>>2]|0; + $150 = ($146>>>0)<=($149>>>0); + if ($150) { + $151 = HEAP32[$1>>2]|0; + $152 = (($151) + 56|0); + $153 = HEAP32[$152>>2]|0; + $154 = HEAP32[$2>>2]|0; + (_sqlite3BitvecSet($153,$154)|0); + } + $155 = HEAP32[$1>>2]|0; + $156 = HEAP32[$2>>2]|0; + (_addToSavepointBitvecs($155,$156)|0); + _sqlite3EndBenignMalloc(); + } + $157 = HEAP32[$pPg>>2]|0; + $158 = (($157) + 4|0); + $159 = HEAP32[$158>>2]|0; + $160 = HEAP32[$1>>2]|0; + $161 = (($160) + 152|0); + $162 = HEAP32[$161>>2]|0; + _memset(($159|0),0,($162|0))|0; + } + HEAP32[$0>>2] = 0; + $191 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($191|0); + } + } + $121 = (_sqlite3CorruptError(45227)|0); + HEAP32[$rc>>2] = $121; + } + } while(0); + $185 = HEAP32[$pPg>>2]|0; + $186 = ($185|0)!=(0|0); + if ($186) { + $187 = HEAP32[$pPg>>2]|0; + _sqlite3PcacheDrop($187); + } + $188 = HEAP32[$1>>2]|0; + _pagerUnlockIfUnused($188); + $189 = HEAP32[$3>>2]|0; + HEAP32[$189>>2] = 0; + $190 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $190; + $191 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($191|0); +} +function _backupOnePage($p,$iSrcPg,$zSrcData,$bUpdate) { + $p = $p|0; + $iSrcPg = $iSrcPg|0; + $zSrcData = $zSrcData|0; + $bUpdate = $bUpdate|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iDest = 0, $iEnd = 0, $iOff = 0, $nCopy = 0, $nDestPgsz = 0, $nSrcPgsz = 0, $pDestPager = 0, $pDestPg = 0, $rc = 0, $zDestData = 0; + var $zIn = 0, $zOut = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 68|0; + $1 = sp + 64|0; + $2 = sp + 60|0; + $3 = sp + 56|0; + $pDestPager = sp + 52|0; + $nSrcPgsz = sp + 48|0; + $nDestPgsz = sp + 44|0; + $nCopy = sp + 40|0; + $iEnd = sp + 8|0; + $rc = sp + 28|0; + $iOff = sp; + $pDestPg = sp + 20|0; + $iDest = sp + 16|0; + $zIn = sp + 24|0; + $zDestData = sp + 32|0; + $zOut = sp + 36|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iSrcPg; + HEAP32[$2>>2] = $zSrcData; + HEAP32[$3>>2] = $bUpdate; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + $7 = (_sqlite3BtreePager($6)|0); + HEAP32[$pDestPager>>2] = $7; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 24|0); + $10 = HEAP32[$9>>2]|0; + $11 = (_sqlite3BtreeGetPageSize($10)|0); + HEAP32[$nSrcPgsz>>2] = $11; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = (_sqlite3BtreeGetPageSize($14)|0); + HEAP32[$nDestPgsz>>2] = $15; + $16 = HEAP32[$nSrcPgsz>>2]|0; + $17 = HEAP32[$nDestPgsz>>2]|0; + $18 = ($16|0)<($17|0); + $19 = HEAP32[$nSrcPgsz>>2]|0; + $20 = HEAP32[$nDestPgsz>>2]|0; + $21 = $18 ? $19 : $20; + HEAP32[$nCopy>>2] = $21; + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$nSrcPgsz>>2]|0; + $24 = ($23|0)<(0); + $25 = $24 << 31 >> 31; + $26 = (___muldi3(($22|0),0,($23|0),($25|0))|0); + $27 = tempRet0; + $28 = $iEnd; + $29 = $28; + HEAP32[$29>>2] = $26; + $30 = (($28) + 4)|0; + $31 = $30; + HEAP32[$31>>2] = $27; + HEAP32[$rc>>2] = 0; + $32 = HEAP32[$nSrcPgsz>>2]|0; + $33 = HEAP32[$nDestPgsz>>2]|0; + $34 = ($32|0)!=($33|0); + if ($34) { + $35 = HEAP32[$pDestPager>>2]|0; + $36 = (_sqlite3PagerIsMemdb($35)|0); + $37 = ($36|0)!=(0); + if ($37) { + HEAP32[$rc>>2] = 8; + } + } + $38 = $iEnd; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = (($38) + 4)|0; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$nSrcPgsz>>2]|0; + $45 = ($44|0)<(0); + $46 = $45 << 31 >> 31; + $47 = (_i64Subtract(($40|0),($43|0),($44|0),($46|0))|0); + $48 = tempRet0; + $49 = $iOff; + $50 = $49; + HEAP32[$50>>2] = $47; + $51 = (($49) + 4)|0; + $52 = $51; + HEAP32[$52>>2] = $48; + while(1) { + $53 = HEAP32[$rc>>2]|0; + $54 = ($53|0)==(0); + if (!($54)) { + label = 15; + break; + } + $55 = $iOff; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = (($55) + 4)|0; + $59 = $58; + $60 = HEAP32[$59>>2]|0; + $61 = $iEnd; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = (($61) + 4)|0; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = ($60|0)<($66|0); + $68 = ($60|0)==($66|0); + $69 = ($57>>>0)<($63>>>0); + $70 = $68 & $69; + $71 = $67 | $70; + if (!($71)) { + label = 15; + break; + } + HEAP32[$pDestPg>>2] = 0; + $72 = $iOff; + $73 = $72; + $74 = HEAP32[$73>>2]|0; + $75 = (($72) + 4)|0; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = HEAP32[$nDestPgsz>>2]|0; + $79 = ($78|0)<(0); + $80 = $79 << 31 >> 31; + $81 = (___divdi3(($74|0),($77|0),($78|0),($80|0))|0); + $82 = tempRet0; + $83 = (($81) + 1)|0; + HEAP32[$iDest>>2] = $83; + $84 = HEAP32[$iDest>>2]|0; + $85 = HEAP32[1472>>2]|0; + $86 = HEAP32[$0>>2]|0; + $87 = (($86) + 4|0); + $88 = HEAP32[$87>>2]|0; + $89 = (($88) + 4|0); + $90 = HEAP32[$89>>2]|0; + $91 = (($90) + 32|0); + $92 = HEAP32[$91>>2]|0; + $93 = (($85>>>0) / ($92>>>0))&-1; + $94 = (($93) + 1)|0; + $95 = ($84|0)==($94|0); + if (!($95)) { + $96 = HEAP32[$pDestPager>>2]|0; + $97 = HEAP32[$iDest>>2]|0; + $98 = (_sqlite3PagerAcquire($96,$97,$pDestPg,0)|0); + HEAP32[$rc>>2] = $98; + $99 = (0)==($98|0); + if ($99) { + $100 = HEAP32[$pDestPg>>2]|0; + $101 = (_sqlite3PagerWrite($100)|0); + HEAP32[$rc>>2] = $101; + $102 = (0)==($101|0); + if ($102) { + $103 = $iOff; + $104 = $103; + $105 = HEAP32[$104>>2]|0; + $106 = (($103) + 4)|0; + $107 = $106; + $108 = HEAP32[$107>>2]|0; + $109 = HEAP32[$nSrcPgsz>>2]|0; + $110 = ($109|0)<(0); + $111 = $110 << 31 >> 31; + $112 = (___remdi3(($105|0),($108|0),($109|0),($111|0))|0); + $113 = tempRet0; + $114 = HEAP32[$2>>2]|0; + $115 = (($114) + ($112)|0); + HEAP32[$zIn>>2] = $115; + $116 = HEAP32[$pDestPg>>2]|0; + $117 = (_sqlite3PagerGetData($116)|0); + HEAP32[$zDestData>>2] = $117; + $118 = $iOff; + $119 = $118; + $120 = HEAP32[$119>>2]|0; + $121 = (($118) + 4)|0; + $122 = $121; + $123 = HEAP32[$122>>2]|0; + $124 = HEAP32[$nDestPgsz>>2]|0; + $125 = ($124|0)<(0); + $126 = $125 << 31 >> 31; + $127 = (___remdi3(($120|0),($123|0),($124|0),($126|0))|0); + $128 = tempRet0; + $129 = HEAP32[$zDestData>>2]|0; + $130 = (($129) + ($127)|0); + HEAP32[$zOut>>2] = $130; + $131 = HEAP32[$zOut>>2]|0; + $132 = HEAP32[$zIn>>2]|0; + $133 = HEAP32[$nCopy>>2]|0; + _memcpy(($131|0),($132|0),($133|0))|0; + $134 = HEAP32[$pDestPg>>2]|0; + $135 = (_sqlite3PagerGetExtra($134)|0); + HEAP8[$135>>0] = 0; + $136 = $iOff; + $137 = $136; + $138 = HEAP32[$137>>2]|0; + $139 = (($136) + 4)|0; + $140 = $139; + $141 = HEAP32[$140>>2]|0; + $142 = ($138|0)==(0); + $143 = ($141|0)==(0); + $144 = $142 & $143; + if ($144) { + $145 = HEAP32[$3>>2]|0; + $146 = ($145|0)==(0); + if ($146) { + $147 = HEAP32[$zOut>>2]|0; + $148 = (($147) + 28|0); + $149 = HEAP32[$0>>2]|0; + $150 = (($149) + 24|0); + $151 = HEAP32[$150>>2]|0; + $152 = (_sqlite3BtreeLastPage($151)|0); + _sqlite3Put4byte($148,$152); + } + } + } + } + $153 = HEAP32[$pDestPg>>2]|0; + _sqlite3PagerUnref($153); + } + $154 = HEAP32[$nDestPgsz>>2]|0; + $155 = ($154|0)<(0); + $156 = $155 << 31 >> 31; + $157 = $iOff; + $158 = $157; + $159 = HEAP32[$158>>2]|0; + $160 = (($157) + 4)|0; + $161 = $160; + $162 = HEAP32[$161>>2]|0; + $163 = (_i64Add(($159|0),($162|0),($154|0),($156|0))|0); + $164 = tempRet0; + $165 = $iOff; + $166 = $165; + HEAP32[$166>>2] = $163; + $167 = (($165) + 4)|0; + $168 = $167; + HEAP32[$168>>2] = $164; + } + if ((label|0) == 15) { + $169 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($169|0); + } + return 0|0; +} +function _sqlite3PagerGetData($pPg) { + $pPg = $pPg|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPg; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _sqlite3PagerUnref($pPg) { + $pPg = $pPg|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPg; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = HEAP32[$0>>2]|0; + _sqlite3PagerUnrefNotNull($3); + STACKTOP = sp;return; +} +function _attachBackupObject($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pp = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 24|0); + $3 = HEAP32[$2>>2]|0; + $4 = (_sqlite3BtreePager($3)|0); + $5 = (_sqlite3PagerBackupPtr($4)|0); + HEAP32[$pp>>2] = $5; + $6 = HEAP32[$pp>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 44|0); + HEAP32[$9>>2] = $7; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$pp>>2]|0; + HEAP32[$11>>2] = $10; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 40|0); + HEAP32[$13>>2] = 1; + STACKTOP = sp;return; +} +function _sqlite3BtreeNewDb($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $rc = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($1); + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 44|0); + HEAP32[$5>>2] = 0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_newDatabase($8)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($10|0); +} +function _sqlite3BtreeUpdateMeta($p,$idx,$iMeta) { + $p = $p|0; + $idx = $idx|0; + $iMeta = $iMeta|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $pP1 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $pBt = sp + 8|0; + $pP1 = sp + 12|0; + $rc = sp + 16|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $idx; + HEAP32[$2>>2] = $iMeta; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pBt>>2] = $5; + $6 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($6); + $7 = HEAP32[$pBt>>2]|0; + $8 = (($7) + 12|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 56|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$pP1>>2] = $11; + $12 = HEAP32[$pBt>>2]|0; + $13 = (($12) + 12|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + 68|0); + $16 = HEAP32[$15>>2]|0; + $17 = (_sqlite3PagerWrite($16)|0); + HEAP32[$rc>>2] = $17; + $18 = HEAP32[$rc>>2]|0; + $19 = ($18|0)==(0); + if (!($19)) { + $32 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($32|0); + } + $20 = HEAP32[$1>>2]|0; + $21 = $20<<2; + $22 = (36 + ($21))|0; + $23 = HEAP32[$pP1>>2]|0; + $24 = (($23) + ($22)|0); + $25 = HEAP32[$2>>2]|0; + _sqlite3Put4byte($24,$25); + $26 = HEAP32[$1>>2]|0; + $27 = ($26|0)==(7); + if (!($27)) { + $32 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($32|0); + } + $28 = HEAP32[$2>>2]|0; + $29 = $28&255; + $30 = HEAP32[$pBt>>2]|0; + $31 = (($30) + 18|0); + HEAP8[$31>>0] = $29; + $32 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($32|0); +} +function _sqlite3ResetAllSchemasOfConnection($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pDb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $i = sp; + $pDb = sp + 4|0; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnterAll($1); + HEAP32[$i>>2] = 0; + while(1) { + $2 = HEAP32[$i>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 20|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($2|0)<($5|0); + if (!($6)) { + break; + } + $7 = HEAP32[$i>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 16|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + ($7<<4)|0); + HEAP32[$pDb>>2] = $11; + $12 = HEAP32[$pDb>>2]|0; + $13 = (($12) + 12|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = HEAP32[$pDb>>2]|0; + $17 = (($16) + 12|0); + $18 = HEAP32[$17>>2]|0; + _sqlite3SchemaClear($18); + } + $19 = HEAP32[$i>>2]|0; + $20 = (($19) + 1)|0; + HEAP32[$i>>2] = $20; + } + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 24|0); + $23 = HEAP32[$22>>2]|0; + $24 = $23 & -3; + HEAP32[$22>>2] = $24; + $25 = HEAP32[$0>>2]|0; + _sqlite3VtabUnlockList($25); + $26 = HEAP32[$0>>2]|0; + _sqlite3CollapseDatabaseArray($26); + STACKTOP = sp;return; +} +function _sqlite3BtreeSetVersion($pBtree,$iVersion) { + $pBtree = $pBtree|0; + $iVersion = $iVersion|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $aData = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $pBt = sp + 4|0; + $rc = sp + 8|0; + $aData = sp + 12|0; + HEAP32[$0>>2] = $pBtree; + HEAP32[$1>>2] = $iVersion; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pBt>>2] = $4; + $5 = HEAP32[$pBt>>2]|0; + $6 = (($5) + 22|0); + $7 = HEAP16[$6>>1]|0; + $8 = $7&65535; + $9 = $8 & -17; + $10 = $9&65535; + HEAP16[$6>>1] = $10; + $11 = HEAP32[$1>>2]|0; + $12 = ($11|0)==(1); + if ($12) { + $13 = HEAP32[$pBt>>2]|0; + $14 = (($13) + 22|0); + $15 = HEAP16[$14>>1]|0; + $16 = $15&65535; + $17 = $16 | 16; + $18 = $17&65535; + HEAP16[$14>>1] = $18; + } + $19 = HEAP32[$0>>2]|0; + $20 = (_sqlite3BtreeBeginTrans($19,0)|0); + HEAP32[$rc>>2] = $20; + $21 = HEAP32[$rc>>2]|0; + $22 = ($21|0)==(0); + do { + if ($22) { + $23 = HEAP32[$pBt>>2]|0; + $24 = (($23) + 12|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + 56|0); + $27 = HEAP32[$26>>2]|0; + HEAP32[$aData>>2] = $27; + $28 = HEAP32[$aData>>2]|0; + $29 = (($28) + 18|0); + $30 = HEAP8[$29>>0]|0; + $31 = $30&255; + $32 = HEAP32[$1>>2]|0; + $33 = $32&255; + $34 = $33&255; + $35 = ($31|0)!=($34|0); + if (!($35)) { + $36 = HEAP32[$aData>>2]|0; + $37 = (($36) + 19|0); + $38 = HEAP8[$37>>0]|0; + $39 = $38&255; + $40 = HEAP32[$1>>2]|0; + $41 = $40&255; + $42 = $41&255; + $43 = ($39|0)!=($42|0); + if (!($43)) { + break; + } + } + $44 = HEAP32[$0>>2]|0; + $45 = (_sqlite3BtreeBeginTrans($44,2)|0); + HEAP32[$rc>>2] = $45; + $46 = HEAP32[$rc>>2]|0; + $47 = ($46|0)==(0); + if ($47) { + $48 = HEAP32[$pBt>>2]|0; + $49 = (($48) + 12|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + 68|0); + $52 = HEAP32[$51>>2]|0; + $53 = (_sqlite3PagerWrite($52)|0); + HEAP32[$rc>>2] = $53; + $54 = HEAP32[$rc>>2]|0; + $55 = ($54|0)==(0); + if ($55) { + $56 = HEAP32[$1>>2]|0; + $57 = $56&255; + $58 = HEAP32[$aData>>2]|0; + $59 = (($58) + 18|0); + HEAP8[$59>>0] = $57; + $60 = HEAP32[$1>>2]|0; + $61 = $60&255; + $62 = HEAP32[$aData>>2]|0; + $63 = (($62) + 19|0); + HEAP8[$63>>0] = $61; + } + } + } + } while(0); + $64 = HEAP32[$pBt>>2]|0; + $65 = (($64) + 22|0); + $66 = HEAP16[$65>>1]|0; + $67 = $66&65535; + $68 = $67 & -17; + $69 = $68&65535; + HEAP16[$65>>1] = $69; + $70 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($70|0); +} +function _sqlite3PagerFile($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 60|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _sqlite3PagerPagecount($pPager,$pnPage) { + $pPager = $pPager|0; + $pnPage = $pnPage|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $pnPage; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 24|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$1>>2]|0; + HEAP32[$5>>2] = $4; + STACKTOP = sp;return; +} +function _sqlite3PagerWrite($pDbPage) { + $pDbPage = $pDbPage|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $ii = 0, $nPage = 0, $nPageCount = 0, $nPagePerSector = 0, $needSync = 0, $pPage = 0, $pPage1 = 0, $pPager = 0, $pPg = 0, $pg = 0, $pg1 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 48|0; + $rc = sp + 44|0; + $pPg = sp + 40|0; + $pPager = sp + 36|0; + $nPageCount = sp + 32|0; + $pg1 = sp + 28|0; + $nPage = sp + 24|0; + $ii = sp + 16|0; + $needSync = sp + 12|0; + $nPagePerSector = sp + 8|0; + $pg = sp + 4|0; + $pPage = sp; + $pPage1 = sp + 20|0; + HEAP32[$0>>2] = $pDbPage; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pPg>>2] = $1; + $2 = HEAP32[$pPg>>2]|0; + $3 = (($2) + 16|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pPager>>2] = $4; + $5 = HEAP32[$pPager>>2]|0; + $6 = (($5) + 148|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$pPager>>2]|0; + $9 = (($8) + 152|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($7>>>0)>($10>>>0); + if (!($11)) { + $142 = HEAP32[$0>>2]|0; + $143 = (_pager_write($142)|0); + HEAP32[$rc>>2] = $143; + $144 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($144|0); + } + HEAP32[$nPage>>2] = 0; + HEAP32[$needSync>>2] = 0; + $12 = HEAP32[$pPager>>2]|0; + $13 = (($12) + 148|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$pPager>>2]|0; + $16 = (($15) + 152|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($14>>>0) / ($17>>>0))&-1; + HEAP32[$nPagePerSector>>2] = $18; + $19 = HEAP32[$pPager>>2]|0; + $20 = (($19) + 20|0); + $21 = HEAP8[$20>>0]|0; + $22 = $21&255; + $23 = $22 | 4; + $24 = $23&255; + HEAP8[$20>>0] = $24; + $25 = HEAP32[$pPg>>2]|0; + $26 = (($25) + 20|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) - 1)|0; + $29 = HEAP32[$nPagePerSector>>2]|0; + $30 = (($29) - 1)|0; + $31 = $30 ^ -1; + $32 = $28 & $31; + $33 = (($32) + 1)|0; + HEAP32[$pg1>>2] = $33; + $34 = HEAP32[$pPager>>2]|0; + $35 = (($34) + 24|0); + $36 = HEAP32[$35>>2]|0; + HEAP32[$nPageCount>>2] = $36; + $37 = HEAP32[$pPg>>2]|0; + $38 = (($37) + 20|0); + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$nPageCount>>2]|0; + $41 = ($39>>>0)>($40>>>0); + do { + if ($41) { + $42 = HEAP32[$pPg>>2]|0; + $43 = (($42) + 20|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$pg1>>2]|0; + $46 = (($44) - ($45))|0; + $47 = (($46) + 1)|0; + HEAP32[$nPage>>2] = $47; + } else { + $48 = HEAP32[$pg1>>2]|0; + $49 = HEAP32[$nPagePerSector>>2]|0; + $50 = (($48) + ($49))|0; + $51 = (($50) - 1)|0; + $52 = HEAP32[$nPageCount>>2]|0; + $53 = ($51>>>0)>($52>>>0); + if ($53) { + $54 = HEAP32[$nPageCount>>2]|0; + $55 = (($54) + 1)|0; + $56 = HEAP32[$pg1>>2]|0; + $57 = (($55) - ($56))|0; + HEAP32[$nPage>>2] = $57; + break; + } else { + $58 = HEAP32[$nPagePerSector>>2]|0; + HEAP32[$nPage>>2] = $58; + break; + } + } + } while(0); + HEAP32[$ii>>2] = 0; + while(1) { + $59 = HEAP32[$ii>>2]|0; + $60 = HEAP32[$nPage>>2]|0; + $61 = ($59|0)<($60|0); + if (!($61)) { + break; + } + $62 = HEAP32[$rc>>2]|0; + $63 = ($62|0)==(0); + if (!($63)) { + break; + } + $64 = HEAP32[$pg1>>2]|0; + $65 = HEAP32[$ii>>2]|0; + $66 = (($64) + ($65))|0; + HEAP32[$pg>>2] = $66; + $67 = HEAP32[$pg>>2]|0; + $68 = HEAP32[$pPg>>2]|0; + $69 = (($68) + 20|0); + $70 = HEAP32[$69>>2]|0; + $71 = ($67|0)==($70|0); + if ($71) { + label = 12; + } else { + $72 = HEAP32[$pPager>>2]|0; + $73 = (($72) + 56|0); + $74 = HEAP32[$73>>2]|0; + $75 = HEAP32[$pg>>2]|0; + $76 = (_sqlite3BitvecTest($74,$75)|0); + $77 = ($76|0)!=(0); + if ($77) { + $100 = HEAP32[$pPager>>2]|0; + $101 = HEAP32[$pg>>2]|0; + $102 = (_pager_lookup($100,$101)|0); + HEAP32[$pPage>>2] = $102; + $103 = ($102|0)!=(0|0); + if ($103) { + $104 = HEAP32[$pPage>>2]|0; + $105 = (($104) + 24|0); + $106 = HEAP16[$105>>1]|0; + $107 = $106&65535; + $108 = $107 & 4; + $109 = ($108|0)!=(0); + if ($109) { + HEAP32[$needSync>>2] = 1; + } + $110 = HEAP32[$pPage>>2]|0; + _sqlite3PagerUnrefNotNull($110); + } + } else { + label = 12; + } + } + if ((label|0) == 12) { + label = 0; + $78 = HEAP32[$pg>>2]|0; + $79 = HEAP32[1472>>2]|0; + $80 = HEAP32[$pPager>>2]|0; + $81 = (($80) + 152|0); + $82 = HEAP32[$81>>2]|0; + $83 = (($79|0) / ($82|0))&-1; + $84 = (($83) + 1)|0; + $85 = ($78|0)!=($84|0); + if ($85) { + $86 = HEAP32[$pPager>>2]|0; + $87 = HEAP32[$pg>>2]|0; + $88 = (_sqlite3PagerAcquire($86,$87,$pPage,0)|0); + HEAP32[$rc>>2] = $88; + $89 = HEAP32[$rc>>2]|0; + $90 = ($89|0)==(0); + if ($90) { + $91 = HEAP32[$pPage>>2]|0; + $92 = (_pager_write($91)|0); + HEAP32[$rc>>2] = $92; + $93 = HEAP32[$pPage>>2]|0; + $94 = (($93) + 24|0); + $95 = HEAP16[$94>>1]|0; + $96 = $95&65535; + $97 = $96 & 4; + $98 = ($97|0)!=(0); + if ($98) { + HEAP32[$needSync>>2] = 1; + } + $99 = HEAP32[$pPage>>2]|0; + _sqlite3PagerUnrefNotNull($99); + } + } + } + $111 = HEAP32[$ii>>2]|0; + $112 = (($111) + 1)|0; + HEAP32[$ii>>2] = $112; + } + $113 = HEAP32[$rc>>2]|0; + $114 = ($113|0)==(0); + L32: do { + if ($114) { + $115 = HEAP32[$needSync>>2]|0; + $116 = ($115|0)!=(0); + if ($116) { + HEAP32[$ii>>2] = 0; + while(1) { + $117 = HEAP32[$ii>>2]|0; + $118 = HEAP32[$nPage>>2]|0; + $119 = ($117|0)<($118|0); + if (!($119)) { + break L32; + } + $120 = HEAP32[$pPager>>2]|0; + $121 = HEAP32[$pg1>>2]|0; + $122 = HEAP32[$ii>>2]|0; + $123 = (($121) + ($122))|0; + $124 = (_pager_lookup($120,$123)|0); + HEAP32[$pPage1>>2] = $124; + $125 = HEAP32[$pPage1>>2]|0; + $126 = ($125|0)!=(0|0); + if ($126) { + $127 = HEAP32[$pPage1>>2]|0; + $128 = (($127) + 24|0); + $129 = HEAP16[$128>>1]|0; + $130 = $129&65535; + $131 = $130 | 4; + $132 = $131&65535; + HEAP16[$128>>1] = $132; + $133 = HEAP32[$pPage1>>2]|0; + _sqlite3PagerUnrefNotNull($133); + } + $134 = HEAP32[$ii>>2]|0; + $135 = (($134) + 1)|0; + HEAP32[$ii>>2] = $135; + } + } + } + } while(0); + $136 = HEAP32[$pPager>>2]|0; + $137 = (($136) + 20|0); + $138 = HEAP8[$137>>0]|0; + $139 = $138&255; + $140 = $139 & -5; + $141 = $140&255; + HEAP8[$137>>0] = $141; + $144 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($144|0); +} +function _sqlite3PagerCommitPhaseOne($pPager,$zMaster,$noSync) { + $pPager = $pPager|0; + $zMaster = $zMaster|0; + $noSync = $noSync|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $12 = 0, $13 = 0, $14 = 0; + var $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; + var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; + var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; + var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $nNew = 0, $pList = 0, $pPageOne = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $rc = sp + 12|0; + $pList = sp + 16|0; + $pPageOne = sp + 20|0; + $nNew = sp + 24|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$2>>2] = $zMaster; + HEAP32[$3>>2] = $noSync; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 40|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0); + $8 = HEAP32[$1>>2]|0; + if ($7) { + $9 = (($8) + 40|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$0>>2] = $10; + $112 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($112|0); + } + $11 = (($8) + 16|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = ($13|0)<(3); + if ($14) { + HEAP32[$0>>2] = 0; + $112 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($112|0); + } + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 15|0); + $17 = HEAP8[$16>>0]|0; + $18 = ($17<<24>>24)!=(0); + $19 = HEAP32[$1>>2]|0; + do { + if ($18) { + $20 = (($19) + 88|0); + $21 = HEAP32[$20>>2]|0; + _sqlite3BackupRestart($21); + } else { + $22 = (_pagerUseWal($19)|0); + $23 = ($22|0)!=(0); + $24 = HEAP32[$1>>2]|0; + if ($23) { + $25 = (($24) + 204|0); + $26 = HEAP32[$25>>2]|0; + $27 = (_sqlite3PcacheDirtyList($26)|0); + HEAP32[$pList>>2] = $27; + HEAP32[$pPageOne>>2] = 0; + $28 = HEAP32[$pList>>2]|0; + $29 = ($28|0)==(0|0); + if ($29) { + $30 = HEAP32[$1>>2]|0; + $31 = (_sqlite3PagerAcquire($30,1,$pPageOne,0)|0); + HEAP32[$rc>>2] = $31; + $32 = HEAP32[$pPageOne>>2]|0; + HEAP32[$pList>>2] = $32; + $33 = HEAP32[$pList>>2]|0; + $34 = (($33) + 12|0); + HEAP32[$34>>2] = 0; + } + $35 = HEAP32[$pList>>2]|0; + $36 = ($35|0)!=(0|0); + if ($36) { + $37 = HEAP32[$1>>2]|0; + $38 = HEAP32[$pList>>2]|0; + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 24|0); + $41 = HEAP32[$40>>2]|0; + $42 = (_pagerWalFrames($37,$38,$41,1)|0); + HEAP32[$rc>>2] = $42; + } + $43 = HEAP32[$pPageOne>>2]|0; + _sqlite3PagerUnref($43); + $44 = HEAP32[$rc>>2]|0; + $45 = ($44|0)==(0); + if (!($45)) { + break; + } + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 204|0); + $48 = HEAP32[$47>>2]|0; + _sqlite3PcacheCleanAll($48); + break; + } + $49 = (_pager_incr_changecounter($24,0)|0); + HEAP32[$rc>>2] = $49; + $50 = HEAP32[$rc>>2]|0; + $51 = ($50|0)!=(0); + if (!($51)) { + $52 = HEAP32[$1>>2]|0; + $53 = HEAP32[$2>>2]|0; + $54 = (_writeMasterJournal($52,$53)|0); + HEAP32[$rc>>2] = $54; + $55 = HEAP32[$rc>>2]|0; + $56 = ($55|0)!=(0); + if (!($56)) { + $57 = HEAP32[$1>>2]|0; + $58 = (_syncJournal($57,0)|0); + HEAP32[$rc>>2] = $58; + $59 = HEAP32[$rc>>2]|0; + $60 = ($59|0)!=(0); + if (!($60)) { + $61 = HEAP32[$1>>2]|0; + $62 = HEAP32[$1>>2]|0; + $63 = (($62) + 204|0); + $64 = HEAP32[$63>>2]|0; + $65 = (_sqlite3PcacheDirtyList($64)|0); + $66 = (_pager_write_pagelist($61,$65)|0); + HEAP32[$rc>>2] = $66; + $67 = HEAP32[$rc>>2]|0; + $68 = ($67|0)!=(0); + if (!($68)) { + $69 = HEAP32[$1>>2]|0; + $70 = (($69) + 204|0); + $71 = HEAP32[$70>>2]|0; + _sqlite3PcacheCleanAll($71); + $72 = HEAP32[$1>>2]|0; + $73 = (($72) + 24|0); + $74 = HEAP32[$73>>2]|0; + $75 = HEAP32[$1>>2]|0; + $76 = (($75) + 32|0); + $77 = HEAP32[$76>>2]|0; + $78 = ($74>>>0)>($77>>>0); + if ($78) { + $79 = HEAP32[$1>>2]|0; + $80 = (($79) + 24|0); + $81 = HEAP32[$80>>2]|0; + $82 = HEAP32[$1>>2]|0; + $83 = (($82) + 24|0); + $84 = HEAP32[$83>>2]|0; + $85 = HEAP32[1472>>2]|0; + $86 = HEAP32[$1>>2]|0; + $87 = (($86) + 152|0); + $88 = HEAP32[$87>>2]|0; + $89 = (($85|0) / ($88|0))&-1; + $90 = (($89) + 1)|0; + $91 = ($84|0)==($90|0); + $92 = $91&1; + $93 = (($81) - ($92))|0; + HEAP32[$nNew>>2] = $93; + $94 = HEAP32[$1>>2]|0; + $95 = HEAP32[$nNew>>2]|0; + $96 = (_pager_truncate($94,$95)|0); + HEAP32[$rc>>2] = $96; + $97 = HEAP32[$rc>>2]|0; + $98 = ($97|0)!=(0); + if ($98) { + break; + } + } + $99 = HEAP32[$3>>2]|0; + $100 = ($99|0)!=(0); + if (!($100)) { + $101 = HEAP32[$1>>2]|0; + $102 = HEAP32[$2>>2]|0; + $103 = (_sqlite3PagerSync($101,$102)|0); + HEAP32[$rc>>2] = $103; + } + } + } + } + } + } + } while(0); + $104 = HEAP32[$rc>>2]|0; + $105 = ($104|0)==(0); + if ($105) { + $106 = HEAP32[$1>>2]|0; + $107 = (_pagerUseWal($106)|0); + $108 = ($107|0)!=(0); + if (!($108)) { + $109 = HEAP32[$1>>2]|0; + $110 = (($109) + 16|0); + HEAP8[$110>>0] = 5; + } + } + $111 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $111; + $112 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($112|0); +} +function _sqlite3OsWrite($id,$pBuf,$amt,$0,$1) { + $id = $id|0; + $pBuf = $pBuf|0; + $amt = $amt|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 16|0; + $3 = sp + 12|0; + $4 = sp + 8|0; + $5 = sp; + HEAP32[$2>>2] = $id; + HEAP32[$3>>2] = $pBuf; + HEAP32[$4>>2] = $amt; + $6 = $5; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + 12|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$3>>2]|0; + $16 = HEAP32[$4>>2]|0; + $17 = $5; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (($17) + 4)|0; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = (FUNCTION_TABLE_iiiiii[$13 & 15]($14,$15,$16,$19,$22)|0); + STACKTOP = sp;return ($23|0); +} +function _backupTruncateFile($pFile,$0,$1) { + $pFile = $pFile|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iCurrent = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 20|0; + $3 = sp; + $iCurrent = sp + 8|0; + $rc = sp + 16|0; + HEAP32[$2>>2] = $pFile; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = HEAP32[$2>>2]|0; + $9 = (_sqlite3OsFileSize($8,$iCurrent)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + $11 = ($10|0)==(0); + if (!($11)) { + $37 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($37|0); + } + $12 = $iCurrent; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = (($12) + 4)|0; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = $3; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = (($18) + 4)|0; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = ($17|0)>($23|0); + $25 = ($17|0)==($23|0); + $26 = ($14>>>0)>($20>>>0); + $27 = $25 & $26; + $28 = $24 | $27; + if (!($28)) { + $37 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($37|0); + } + $29 = HEAP32[$2>>2]|0; + $30 = $3; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = (_sqlite3OsTruncate($29,$32,$35)|0); + HEAP32[$rc>>2] = $36; + $37 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($37|0); +} +function _sqlite3PagerSync($pPager,$zMaster) { + $pPager = $pPager|0; + $zMaster = $zMaster|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pArg = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $rc = sp + 4|0; + $pArg = sp + 8|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $zMaster; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 60|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if ($6) { + $7 = HEAP32[$1>>2]|0; + HEAP32[$pArg>>2] = $7; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 60|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$pArg>>2]|0; + $12 = (_sqlite3OsFileControl($10,21,$11)|0); + HEAP32[$rc>>2] = $12; + $13 = HEAP32[$rc>>2]|0; + $14 = ($13|0)==(12); + $$ = $14 ? 0 : $12; + HEAP32[$rc>>2] = $$; + } + $15 = HEAP32[$rc>>2]|0; + $16 = ($15|0)==(0); + if (!($16)) { + $29 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($29|0); + } + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 7|0); + $19 = HEAP8[$18>>0]|0; + $20 = ($19<<24>>24)!=(0); + if ($20) { + $29 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($29|0); + } + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 60|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 11|0); + $26 = HEAP8[$25>>0]|0; + $27 = $26&255; + $28 = (_sqlite3OsSync($23,$27)|0); + HEAP32[$rc>>2] = $28; + $29 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($29|0); +} +function _sqlite3PagerTruncateImage($pPager,$nPage) { + $pPager = $pPager|0; + $nPage = $nPage|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $nPage; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 24|0); + HEAP32[$4>>2] = $2; + STACKTOP = sp;return; +} +function _sqlite3BtreeCommitPhaseTwo($p,$bCleanup) { + $p = $p|0; + $bCleanup = $bCleanup|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $pBt = sp + 12|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $bCleanup; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = ($6|0)==(0); + if ($7) { + HEAP32[$0>>2] = 0; + $29 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($29|0); + } + $8 = HEAP32[$1>>2]|0; + _sqlite3BtreeEnter($8); + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 8|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = ($12|0)==(2); + if ($13) { + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$pBt>>2] = $16; + $17 = HEAP32[$pBt>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = (_sqlite3PagerCommitPhaseTwo($18)|0); + HEAP32[$rc>>2] = $19; + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)!=(0); + if ($21) { + $22 = HEAP32[$2>>2]|0; + $23 = ($22|0)==(0); + if ($23) { + $24 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $24; + $29 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($29|0); + } + } + $25 = HEAP32[$pBt>>2]|0; + $26 = (($25) + 20|0); + HEAP8[$26>>0] = 1; + $27 = HEAP32[$pBt>>2]|0; + _btreeClearHasContent($27); + } + $28 = HEAP32[$1>>2]|0; + _btreeEndTransaction($28); + HEAP32[$0>>2] = 0; + $29 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($29|0); +} +function _sqlite3BtreeCommitPhaseOne($p,$zMaster) { + $p = $p|0; + $zMaster = $zMaster|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $pBt = sp + 12|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $zMaster; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = ($6|0)==(2); + if ($7) { + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$pBt>>2] = $10; + $11 = HEAP32[$1>>2]|0; + _sqlite3BtreeEnter($11); + $12 = HEAP32[$pBt>>2]|0; + $13 = (($12) + 17|0); + $14 = HEAP8[$13>>0]|0; + $15 = ($14<<24>>24)!=(0); + if ($15) { + $16 = HEAP32[$pBt>>2]|0; + $17 = (_autoVacuumCommit($16)|0); + HEAP32[$rc>>2] = $17; + $18 = HEAP32[$rc>>2]|0; + $19 = ($18|0)!=(0); + if ($19) { + $20 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $20; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); + } + } + $21 = HEAP32[$pBt>>2]|0; + $22 = (($21) + 19|0); + $23 = HEAP8[$22>>0]|0; + $24 = ($23<<24>>24)!=(0); + if ($24) { + $25 = HEAP32[$pBt>>2]|0; + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$pBt>>2]|0; + $28 = (($27) + 44|0); + $29 = HEAP32[$28>>2]|0; + _sqlite3PagerTruncateImage($26,$29); + } + $30 = HEAP32[$pBt>>2]|0; + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$2>>2]|0; + $33 = (_sqlite3PagerCommitPhaseOne($31,$32,0)|0); + HEAP32[$rc>>2] = $33; + } + $34 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $34; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); +} +function _sqlite3_backup_finish($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $pSrcDb = 0, $pp = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 20|0; + $1 = sp + 4|0; + $pp = sp + 8|0; + $pSrcDb = sp + 12|0; + $rc = sp + 16|0; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0|0); + if ($3) { + HEAP32[$0>>2] = 0; + $64 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($64|0); + } + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 20|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$pSrcDb>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 24|0); + $9 = HEAP32[$8>>2]|0; + _sqlite3BtreeEnter($9); + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0|0); + if ($12) { + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 24|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + 16|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + -1)|0; + HEAP32[$16>>2] = $18; + } + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 40|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)!=(0); + if ($22) { + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 24|0); + $25 = HEAP32[$24>>2]|0; + $26 = (_sqlite3BtreePager($25)|0); + $27 = (_sqlite3PagerBackupPtr($26)|0); + HEAP32[$pp>>2] = $27; + while(1) { + $28 = HEAP32[$pp>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$1>>2]|0; + $31 = ($29|0)!=($30|0); + if (!($31)) { + break; + } + $32 = HEAP32[$pp>>2]|0; + $33 = HEAP32[$32>>2]|0; + $34 = (($33) + 44|0); + HEAP32[$pp>>2] = $34; + } + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 44|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$pp>>2]|0; + HEAP32[$38>>2] = $37; + } + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 4|0); + $41 = HEAP32[$40>>2]|0; + (_sqlite3BtreeRollback($41,0)|0); + $42 = HEAP32[$1>>2]|0; + $43 = (($42) + 28|0); + $44 = HEAP32[$43>>2]|0; + $45 = ($44|0)==(101); + if ($45) { + $49 = 0; + } else { + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 28|0); + $48 = HEAP32[$47>>2]|0; + $49 = $48; + } + HEAP32[$rc>>2] = $49; + $50 = HEAP32[$1>>2]|0; + $51 = HEAP32[$50>>2]|0; + $52 = ($51|0)!=(0|0); + if ($52) { + $53 = HEAP32[$1>>2]|0; + $54 = HEAP32[$53>>2]|0; + $55 = HEAP32[$rc>>2]|0; + _sqlite3Error($54,$55,0,$vararg_buffer); + $56 = HEAP32[$1>>2]|0; + $57 = HEAP32[$56>>2]|0; + _sqlite3LeaveMutexAndCloseZombie($57); + } + $58 = HEAP32[$1>>2]|0; + $59 = HEAP32[$58>>2]|0; + $60 = ($59|0)!=(0|0); + if ($60) { + $61 = HEAP32[$1>>2]|0; + _sqlite3_free($61); + } + $62 = HEAP32[$pSrcDb>>2]|0; + _sqlite3LeaveMutexAndCloseZombie($62); + $63 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $63; + $64 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($64|0); +} +function _sqlite3PagerBackupPtr($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 88|0); + STACKTOP = sp;return ($2|0); +} +function _sqlite3BtreeRollback($p,$tripCode) { + $p = $p|0; + $tripCode = $tripCode|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nPage = 0, $pBt = 0, $pPage1 = 0, $rc = 0, $rc2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $rc = sp + 4|0; + $pBt = sp + 8|0; + $pPage1 = sp + 12|0; + $rc2 = sp + 16|0; + $nPage = sp + 20|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $tripCode; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pBt>>2] = $4; + $5 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($5); + $6 = HEAP32[$1>>2]|0; + $7 = ($6|0)==(0); + if ($7) { + $8 = HEAP32[$pBt>>2]|0; + $9 = (_saveAllCursors($8,0,0)|0); + HEAP32[$1>>2] = $9; + HEAP32[$rc>>2] = $9; + } else { + HEAP32[$rc>>2] = 0; + } + $10 = HEAP32[$1>>2]|0; + $11 = ($10|0)!=(0); + if ($11) { + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$1>>2]|0; + _sqlite3BtreeTripAllCursors($12,$13); + } + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 8|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = ($17|0)==(2); + if (!($18)) { + $44 = HEAP32[$0>>2]|0; + _btreeEndTransaction($44); + $45 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($45|0); + } + $19 = HEAP32[$pBt>>2]|0; + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3PagerRollback($20)|0); + HEAP32[$rc2>>2] = $21; + $22 = HEAP32[$rc2>>2]|0; + $23 = ($22|0)!=(0); + if ($23) { + $24 = HEAP32[$rc2>>2]|0; + HEAP32[$rc>>2] = $24; + } + $25 = HEAP32[$pBt>>2]|0; + $26 = (_btreeGetPage($25,1,$pPage1,0)|0); + $27 = ($26|0)==(0); + if ($27) { + $28 = HEAP32[$pPage1>>2]|0; + $29 = (($28) + 56|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + 28|0); + $32 = (_sqlite3Get4byte($31)|0); + HEAP32[$nPage>>2] = $32; + $33 = HEAP32[$nPage>>2]|0; + $34 = ($33|0)==(0); + if ($34) { + $35 = HEAP32[$pBt>>2]|0; + $36 = HEAP32[$35>>2]|0; + _sqlite3PagerPagecount($36,$nPage); + } + $37 = HEAP32[$nPage>>2]|0; + $38 = HEAP32[$pBt>>2]|0; + $39 = (($38) + 44|0); + HEAP32[$39>>2] = $37; + $40 = HEAP32[$pPage1>>2]|0; + _releasePage($40); + } + $41 = HEAP32[$pBt>>2]|0; + $42 = (($41) + 20|0); + HEAP8[$42>>0] = 1; + $43 = HEAP32[$pBt>>2]|0; + _btreeClearHasContent($43); + $44 = HEAP32[$0>>2]|0; + _btreeEndTransaction($44); + $45 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($45|0); +} +function _sqlite3LeaveMutexAndCloseZombie($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $i = 0, $j = 0, $p = 0, $pColl = 0, $pDb = 0, $pHash = 0, $pMod = 0, $pNext = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 32|0; + $i = sp + 28|0; + $j = sp + 24|0; + $pDb = sp + 20|0; + $pNext = sp + 36|0; + $pHash = sp + 8|0; + $p = sp + 4|0; + $pColl = sp + 12|0; + $pMod = sp + 16|0; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 76|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(1691352191); + if ($4) { + STACKTOP = sp;return; + } + $5 = HEAP32[$0>>2]|0; + $6 = (_connectionIsBusy($5)|0); + $7 = ($6|0)!=(0); + if ($7) { + STACKTOP = sp;return; + } + $8 = HEAP32[$0>>2]|0; + _sqlite3RollbackAll($8,0); + $9 = HEAP32[$0>>2]|0; + _sqlite3CloseSavepoints($9); + HEAP32[$j>>2] = 0; + while(1) { + $10 = HEAP32[$j>>2]|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 20|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($10|0)<($13|0); + if (!($14)) { + break; + } + $15 = HEAP32[$j>>2]|0; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 16|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + ($15<<4)|0); + HEAP32[$pDb>>2] = $19; + $20 = HEAP32[$pDb>>2]|0; + $21 = (($20) + 4|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)!=(0|0); + if ($23) { + $24 = HEAP32[$pDb>>2]|0; + $25 = (($24) + 4|0); + $26 = HEAP32[$25>>2]|0; + (_sqlite3BtreeClose($26)|0); + $27 = HEAP32[$pDb>>2]|0; + $28 = (($27) + 4|0); + HEAP32[$28>>2] = 0; + $29 = HEAP32[$j>>2]|0; + $30 = ($29|0)!=(1); + if ($30) { + $31 = HEAP32[$pDb>>2]|0; + $32 = (($31) + 12|0); + HEAP32[$32>>2] = 0; + } + } + $33 = HEAP32[$j>>2]|0; + $34 = (($33) + 1)|0; + HEAP32[$j>>2] = $34; + } + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 16|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + 16|0); + $39 = (($38) + 12|0); + $40 = HEAP32[$39>>2]|0; + $41 = ($40|0)!=(0|0); + if ($41) { + $42 = HEAP32[$0>>2]|0; + $43 = (($42) + 16|0); + $44 = HEAP32[$43>>2]|0; + $45 = (($44) + 16|0); + $46 = (($45) + 12|0); + $47 = HEAP32[$46>>2]|0; + _sqlite3SchemaClear($47); + } + $48 = HEAP32[$0>>2]|0; + _sqlite3VtabUnlockList($48); + $49 = HEAP32[$0>>2]|0; + _sqlite3CollapseDatabaseArray($49); + HEAP32[$j>>2] = 0; + while(1) { + $50 = HEAP32[$j>>2]|0; + $51 = ($50|0)<(23); + if (!($51)) { + break; + } + $52 = HEAP32[$j>>2]|0; + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 328|0); + $55 = (($54) + ($52<<2)|0); + $56 = HEAP32[$55>>2]|0; + HEAP32[$p>>2] = $56; + while(1) { + $57 = HEAP32[$p>>2]|0; + $58 = ($57|0)!=(0|0); + if (!($58)) { + break; + } + $59 = HEAP32[$p>>2]|0; + $60 = (($59) + 28|0); + $61 = HEAP32[$60>>2]|0; + HEAP32[$pHash>>2] = $61; + while(1) { + $62 = HEAP32[$p>>2]|0; + $63 = ($62|0)!=(0|0); + if (!($63)) { + break; + } + $64 = HEAP32[$0>>2]|0; + $65 = HEAP32[$p>>2]|0; + _functionDestroy($64,$65); + $66 = HEAP32[$p>>2]|0; + $67 = (($66) + 8|0); + $68 = HEAP32[$67>>2]|0; + HEAP32[$pNext>>2] = $68; + $69 = HEAP32[$0>>2]|0; + $70 = HEAP32[$p>>2]|0; + _sqlite3DbFree($69,$70); + $71 = HEAP32[$pNext>>2]|0; + HEAP32[$p>>2] = $71; + } + $72 = HEAP32[$pHash>>2]|0; + HEAP32[$p>>2] = $72; + } + $73 = HEAP32[$j>>2]|0; + $74 = (($73) + 1)|0; + HEAP32[$j>>2] = $74; + } + $75 = HEAP32[$0>>2]|0; + $76 = (($75) + 420|0); + $77 = (($76) + 8|0); + $78 = HEAP32[$77>>2]|0; + HEAP32[$i>>2] = $78; + while(1) { + $79 = HEAP32[$i>>2]|0; + $80 = ($79|0)!=(0|0); + if (!($80)) { + break; + } + $81 = HEAP32[$i>>2]|0; + $82 = (($81) + 8|0); + $83 = HEAP32[$82>>2]|0; + HEAP32[$pColl>>2] = $83; + HEAP32[$j>>2] = 0; + while(1) { + $84 = HEAP32[$j>>2]|0; + $85 = ($84|0)<(3); + if (!($85)) { + break; + } + $86 = HEAP32[$j>>2]|0; + $87 = HEAP32[$pColl>>2]|0; + $88 = (($87) + (($86*20)|0)|0); + $89 = (($88) + 16|0); + $90 = HEAP32[$89>>2]|0; + $91 = ($90|0)!=(0|0); + if ($91) { + $92 = HEAP32[$j>>2]|0; + $93 = HEAP32[$pColl>>2]|0; + $94 = (($93) + (($92*20)|0)|0); + $95 = (($94) + 16|0); + $96 = HEAP32[$95>>2]|0; + $97 = HEAP32[$j>>2]|0; + $98 = HEAP32[$pColl>>2]|0; + $99 = (($98) + (($97*20)|0)|0); + $100 = (($99) + 8|0); + $101 = HEAP32[$100>>2]|0; + FUNCTION_TABLE_vi[$96 & 31]($101); + } + $102 = HEAP32[$j>>2]|0; + $103 = (($102) + 1)|0; + HEAP32[$j>>2] = $103; + } + $104 = HEAP32[$0>>2]|0; + $105 = HEAP32[$pColl>>2]|0; + _sqlite3DbFree($104,$105); + $106 = HEAP32[$i>>2]|0; + $107 = HEAP32[$106>>2]|0; + HEAP32[$i>>2] = $107; + } + $108 = HEAP32[$0>>2]|0; + $109 = (($108) + 420|0); + _sqlite3HashClear($109); + $110 = HEAP32[$0>>2]|0; + $111 = (($110) + 300|0); + $112 = (($111) + 8|0); + $113 = HEAP32[$112>>2]|0; + HEAP32[$i>>2] = $113; + while(1) { + $114 = HEAP32[$i>>2]|0; + $115 = ($114|0)!=(0|0); + if (!($115)) { + break; + } + $116 = HEAP32[$i>>2]|0; + $117 = (($116) + 8|0); + $118 = HEAP32[$117>>2]|0; + HEAP32[$pMod>>2] = $118; + $119 = HEAP32[$pMod>>2]|0; + $120 = (($119) + 12|0); + $121 = HEAP32[$120>>2]|0; + $122 = ($121|0)!=(0|0); + if ($122) { + $123 = HEAP32[$pMod>>2]|0; + $124 = (($123) + 12|0); + $125 = HEAP32[$124>>2]|0; + $126 = HEAP32[$pMod>>2]|0; + $127 = (($126) + 8|0); + $128 = HEAP32[$127>>2]|0; + FUNCTION_TABLE_vi[$125 & 31]($128); + } + $129 = HEAP32[$0>>2]|0; + $130 = HEAP32[$pMod>>2]|0; + _sqlite3DbFree($129,$130); + $131 = HEAP32[$i>>2]|0; + $132 = HEAP32[$131>>2]|0; + HEAP32[$i>>2] = $132; + } + $133 = HEAP32[$0>>2]|0; + $134 = (($133) + 300|0); + _sqlite3HashClear($134); + $135 = HEAP32[$0>>2]|0; + _sqlite3Error($135,0,0,$vararg_buffer); + $136 = HEAP32[$0>>2]|0; + $137 = (($136) + 224|0); + $138 = HEAP32[$137>>2]|0; + _sqlite3ValueFree($138); + $139 = HEAP32[$0>>2]|0; + $140 = (($139) + 76|0); + HEAP32[$140>>2] = -1254786768; + $141 = HEAP32[$0>>2]|0; + $142 = HEAP32[$0>>2]|0; + $143 = (($142) + 16|0); + $144 = HEAP32[$143>>2]|0; + $145 = (($144) + 16|0); + $146 = (($145) + 12|0); + $147 = HEAP32[$146>>2]|0; + _sqlite3DbFree($141,$147); + $148 = HEAP32[$0>>2]|0; + $149 = (($148) + 76|0); + HEAP32[$149>>2] = -1623446221; + $150 = HEAP32[$0>>2]|0; + $151 = (($150) + 240|0); + $152 = (($151) + 3|0); + $153 = HEAP8[$152>>0]|0; + $154 = ($153<<24>>24)!=(0); + if ($154) { + $155 = HEAP32[$0>>2]|0; + $156 = (($155) + 240|0); + $157 = (($156) + 28|0); + $158 = HEAP32[$157>>2]|0; + _sqlite3_free($158); + } + $159 = HEAP32[$0>>2]|0; + _sqlite3_free($159); + STACKTOP = sp;return; +} +function _sqlite3_sql($pStmt) { + $pStmt = $pStmt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pStmt; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + $2 = HEAP32[$p>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $14 = 0; + STACKTOP = sp;return ($14|0); + } + $4 = HEAP32[$p>>2]|0; + $5 = (($4) + 88|0); + $6 = HEAP16[$5>>1]|0; + $7 = ($6&65535) >>> 10; + $8 = $7 & 1; + $9 = $8&65535; + $10 = ($9|0)!=(0); + if (!($10)) { + $14 = 0; + STACKTOP = sp;return ($14|0); + } + $11 = HEAP32[$p>>2]|0; + $12 = (($11) + 168|0); + $13 = HEAP32[$12>>2]|0; + $14 = $13; + STACKTOP = sp;return ($14|0); +} +function _sqlite3_finalize($pStmt) { + $pStmt = $pStmt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0; + var $rc = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $rc = sp + 4|0; + $v = sp + 8|0; + $db = sp + 12|0; + HEAP32[$1>>2] = $pStmt; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0|0); + do { + if ($3) { + HEAP32[$rc>>2] = 0; + } else { + $4 = HEAP32[$1>>2]|0; + HEAP32[$v>>2] = $4; + $5 = HEAP32[$v>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$v>>2]|0; + $8 = (_vdbeSafety($7)|0); + $9 = ($8|0)!=(0); + if (!($9)) { + $11 = HEAP32[$v>>2]|0; + $12 = (_sqlite3VdbeFinalize($11)|0); + HEAP32[$rc>>2] = $12; + $13 = HEAP32[$db>>2]|0; + $14 = HEAP32[$rc>>2]|0; + $15 = (_sqlite3ApiExit($13,$14)|0); + HEAP32[$rc>>2] = $15; + $16 = HEAP32[$db>>2]|0; + _sqlite3LeaveMutexAndCloseZombie($16); + break; + } + $10 = (_sqlite3MisuseError(65817)|0); + HEAP32[$0>>2] = $10; + $18 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($18|0); + } + } while(0); + $17 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $17; + $18 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($18|0); +} +function _vdbeSafety($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 8|0; + $1 = sp + 4|0; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + _sqlite3_log(21,43552,$vararg_buffer); + HEAP32[$0>>2] = 1; + $5 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($5|0); + } else { + HEAP32[$0>>2] = 0; + $5 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($5|0); + } + return 0|0; +} +function _sqlite3VdbeFinalize($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $rc = sp; + HEAP32[$0>>2] = $p; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 40|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)==(-1108210269); + if ($4) { + label = 3; + } else { + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 40|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)==(1369188723); + if ($8) { + label = 3; + } + } + if ((label|0) == 3) { + $9 = HEAP32[$0>>2]|0; + $10 = (_sqlite3VdbeReset($9)|0); + HEAP32[$rc>>2] = $10; + } + $11 = HEAP32[$0>>2]|0; + _sqlite3VdbeDelete($11); + $12 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($12|0); +} +function _sqlite3ApiExit($db,$rc) { + $db = $db|0; + $rc = $rc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 8|0; + $1 = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $rc; + $2 = HEAP32[$0>>2]|0; + $3 = ($2|0)!=(0|0); + do { + if ($3) { + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 64|0); + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = ($7|0)!=(0); + if (!($8)) { + $9 = HEAP32[$1>>2]|0; + $10 = ($9|0)==(3082); + if (!($10)) { + break; + } + } + $11 = HEAP32[$0>>2]|0; + _sqlite3Error($11,7,0,$vararg_buffer); + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 64|0); + HEAP8[$13>>0] = 0; + HEAP32[$1>>2] = 7; + } + } while(0); + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = ($15|0)!=(0|0); + if (!($16)) { + $21 = 255; + $20 = $14 & $21; + STACKTOP = sp;return ($20|0); + } + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 56|0); + $19 = HEAP32[$18>>2]|0; + $21 = $19; + $20 = $14 & $21; + STACKTOP = sp;return ($20|0); +} +function _sqlite3_reset($pStmt) { + $pStmt = $pStmt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $rc = sp; + $v = sp + 4|0; + HEAP32[$0>>2] = $pStmt; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)==(0|0); + if ($2) { + HEAP32[$rc>>2] = 0; + $11 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($11|0); + } else { + $3 = HEAP32[$0>>2]|0; + HEAP32[$v>>2] = $3; + $4 = HEAP32[$v>>2]|0; + $5 = (_sqlite3VdbeReset($4)|0); + HEAP32[$rc>>2] = $5; + $6 = HEAP32[$v>>2]|0; + _sqlite3VdbeRewind($6); + $7 = HEAP32[$v>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$rc>>2]|0; + $10 = (_sqlite3ApiExit($8,$9)|0); + HEAP32[$rc>>2] = $10; + $11 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($11|0); + } + return 0|0; +} +function _sqlite3VdbeReset($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $db = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 8|0; + $db = sp + 4|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$db>>2] = $2; + $3 = HEAP32[$0>>2]|0; + (_sqlite3VdbeHalt($3)|0); + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 76|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)>=(0); + $8 = HEAP32[$0>>2]|0; + if ($7) { + (_sqlite3VdbeTransferError($8)|0); + $9 = HEAP32[$db>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 44|0); + $12 = HEAP32[$11>>2]|0; + _sqlite3DbFree($9,$12); + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 44|0); + HEAP32[$14>>2] = 0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 88|0); + $17 = HEAP16[$16>>1]|0; + $18 = ($17&65535) >>> 6; + $19 = $18 & 1; + $20 = $19&65535; + $21 = ($20|0)!=(0); + if ($21) { + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 88|0); + $24 = HEAP16[$23>>1]|0; + $25 = $24 & -33; + $26 = $25 | 32; + HEAP16[$23>>1] = $26; + } + } else { + $27 = (($8) + 80|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)!=(0); + if ($29) { + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 88|0); + $32 = HEAP16[$31>>1]|0; + $33 = ($32&65535) >>> 5; + $34 = $33 & 1; + $35 = $34&65535; + $36 = ($35|0)!=(0); + if ($36) { + $37 = HEAP32[$db>>2]|0; + $38 = HEAP32[$0>>2]|0; + $39 = (($38) + 80|0); + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + 44|0); + $43 = HEAP32[$42>>2]|0; + $44 = ($43|0)!=(0|0); + $45 = $44 ? 1768 : 0; + $46 = HEAP32[$0>>2]|0; + $47 = (($46) + 44|0); + $48 = HEAP32[$47>>2]|0; + HEAP32[$vararg_buffer>>2] = $48; + _sqlite3Error($37,$40,$45,$vararg_buffer); + $49 = HEAP32[$db>>2]|0; + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 44|0); + $52 = HEAP32[$51>>2]|0; + _sqlite3DbFree($49,$52); + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 44|0); + HEAP32[$54>>2] = 0; + } + } + } + $55 = HEAP32[$0>>2]|0; + _Cleanup($55); + $56 = HEAP32[$0>>2]|0; + $57 = (($56) + 136|0); + $58 = $57; + $59 = $58; + HEAP32[$59>>2] = 0; + $60 = (($58) + 4)|0; + $61 = $60; + HEAP32[$61>>2] = 0; + $62 = HEAP32[$0>>2]|0; + $63 = (($62) + 40|0); + HEAP32[$63>>2] = 649915045; + $64 = HEAP32[$0>>2]|0; + $65 = (($64) + 80|0); + $66 = HEAP32[$65>>2]|0; + $67 = HEAP32[$db>>2]|0; + $68 = (($67) + 56|0); + $69 = HEAP32[$68>>2]|0; + $70 = $66 & $69; + STACKTOP = sp;return ($70|0); +} +function _sqlite3VdbeRewind($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 40|0); + HEAP32[$2>>2] = -1108210269; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 76|0); + HEAP32[$4>>2] = -1; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 80|0); + HEAP32[$6>>2] = 0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 86|0); + HEAP8[$8>>0] = 2; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 40|0); + HEAP32[$10>>2] = -1108210269; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 92|0); + HEAP32[$12>>2] = 0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 72|0); + HEAP32[$14>>2] = 1; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 87|0); + HEAP8[$16>>0] = -1; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 104|0); + HEAP32[$18>>2] = 0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 144|0); + $21 = $20; + $22 = $21; + HEAP32[$22>>2] = 0; + $23 = (($21) + 4)|0; + $24 = $23; + HEAP32[$24>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3_clear_bindings($pStmt) { + $pStmt = $pStmt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $i = sp; + $rc = sp + 4|0; + $p = sp + 8|0; + HEAP32[$0>>2] = $pStmt; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + HEAP32[$i>>2] = 0; + while(1) { + $2 = HEAP32[$i>>2]|0; + $3 = HEAP32[$p>>2]|0; + $4 = (($3) + 68|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5 << 16 >> 16; + $7 = ($2|0)<($6|0); + if (!($7)) { + break; + } + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$p>>2]|0; + $10 = (($9) + 60|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + (($8*40)|0)|0); + _sqlite3VdbeMemRelease($12); + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 60|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + (($13*40)|0)|0); + $18 = (($17) + 28|0); + HEAP16[$18>>1] = 1; + $19 = HEAP32[$i>>2]|0; + $20 = (($19) + 1)|0; + HEAP32[$i>>2] = $20; + } + $21 = HEAP32[$p>>2]|0; + $22 = (($21) + 88|0); + $23 = HEAP16[$22>>1]|0; + $24 = ($23&65535) >>> 10; + $25 = $24 & 1; + $26 = $25&65535; + $27 = ($26|0)!=(0); + if (!($27)) { + $37 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($37|0); + } + $28 = HEAP32[$p>>2]|0; + $29 = (($28) + 188|0); + $30 = HEAP32[$29>>2]|0; + $31 = ($30|0)!=(0); + if (!($31)) { + $37 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($37|0); + } + $32 = HEAP32[$p>>2]|0; + $33 = (($32) + 88|0); + $34 = HEAP16[$33>>1]|0; + $35 = $34 & -33; + $36 = $35 | 32; + HEAP16[$33>>1] = $36; + $37 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($37|0); +} +function _sqlite3VdbeMemRelease($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 28|0); + $3 = HEAP16[$2>>1]|0; + $4 = $3&65535; + $5 = $4 & 9312; + $6 = ($5|0)!=(0); + if ($6) { + $7 = HEAP32[$0>>2]|0; + _sqlite3VdbeMemReleaseExternal($7); + } + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 36|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if (!($11)) { + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 4|0); + HEAP32[$20>>2] = 0; + STACKTOP = sp;return; + } + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 36|0); + $16 = HEAP32[$15>>2]|0; + _sqlite3DbFree($13,$16); + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 36|0); + HEAP32[$18>>2] = 0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 4|0); + HEAP32[$20>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3_value_blob($pVal) { + $pVal = $pVal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $p = sp + 4|0; + HEAP32[$1>>2] = $pVal; + $2 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $2; + $3 = HEAP32[$p>>2]|0; + $4 = (($3) + 28|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5&65535; + $7 = $6 & 18; + $8 = ($7|0)!=(0); + if (!($8)) { + $24 = HEAP32[$1>>2]|0; + $25 = (_sqlite3_value_text($24)|0); + HEAP32[$0>>2] = $25; + $26 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($26|0); + } + $9 = HEAP32[$p>>2]|0; + (_sqlite3VdbeMemExpandBlob($9)|0); + $10 = HEAP32[$p>>2]|0; + $11 = (($10) + 28|0); + $12 = HEAP16[$11>>1]|0; + $13 = $12&65535; + $14 = $13 | 16; + $15 = $14&65535; + HEAP16[$11>>1] = $15; + $16 = HEAP32[$p>>2]|0; + $17 = (($16) + 24|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($18|0)!=(0); + if ($19) { + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 4|0); + $22 = HEAP32[$21>>2]|0; + $23 = $22; + } else { + $23 = 0; + } + HEAP32[$0>>2] = $23; + $26 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($26|0); +} +function _sqlite3VdbeMemExpandBlob($pMem) { + $pMem = $pMem|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nByte = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $nByte = sp + 4|0; + HEAP32[$1>>2] = $pMem; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 28|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4&65535; + $6 = $5 & 16384; + $7 = ($6|0)!=(0); + do { + if ($7) { + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 24|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 16|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($10) + ($13))|0; + HEAP32[$nByte>>2] = $14; + $15 = HEAP32[$nByte>>2]|0; + $16 = ($15|0)<=(0); + $$ = $16 ? 1 : $14; + HEAP32[$nByte>>2] = $$; + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$nByte>>2]|0; + $19 = (_sqlite3VdbeMemGrow($17,$18,1)|0); + $20 = ($19|0)!=(0); + if (!($20)) { + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 24|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 4|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($26) + ($23)|0); + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 16|0); + $30 = HEAP32[$29>>2]|0; + _memset(($27|0),0,($30|0))|0; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 16|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 24|0); + $36 = HEAP32[$35>>2]|0; + $37 = (($36) + ($33))|0; + HEAP32[$35>>2] = $37; + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 28|0); + $40 = HEAP16[$39>>1]|0; + $41 = $40&65535; + $42 = $41 & -16897; + $43 = $42&65535; + HEAP16[$39>>1] = $43; + break; + } + HEAP32[$0>>2] = 7; + $44 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($44|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $44 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($44|0); +} +function _sqlite3_value_text($pVal) { + $pVal = $pVal|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pVal; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3ValueText($1,1)|0); + STACKTOP = sp;return ($2|0); +} +function _sqlite3_value_bytes($pVal) { + $pVal = $pVal|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pVal; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3ValueBytes($1,1)|0); + STACKTOP = sp;return ($2|0); +} +function _sqlite3ValueBytes($pVal,$enc) { + $pVal = $pVal|0; + $enc = $enc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 12|0; + $p = sp + 4|0; + HEAP32[$1>>2] = $pVal; + HEAP8[$2>>0] = $enc; + $3 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $3; + $4 = HEAP32[$p>>2]|0; + $5 = (($4) + 28|0); + $6 = HEAP16[$5>>1]|0; + $7 = $6&65535; + $8 = $7 & 16; + $9 = ($8|0)!=(0); + if (!($9)) { + $10 = HEAP32[$1>>2]|0; + $11 = HEAP8[$2>>0]|0; + $12 = (_sqlite3ValueText($10,$11)|0); + $13 = ($12|0)!=(0|0); + if (!($13)) { + HEAP32[$0>>2] = 0; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); + } + } + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 28|0); + $16 = HEAP16[$15>>1]|0; + $17 = $16&65535; + $18 = $17 & 16384; + $19 = ($18|0)!=(0); + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 24|0); + $22 = HEAP32[$21>>2]|0; + if ($19) { + $23 = HEAP32[$p>>2]|0; + $24 = (($23) + 16|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($22) + ($25))|0; + HEAP32[$0>>2] = $26; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); + } else { + HEAP32[$0>>2] = $22; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); + } + return 0|0; +} +function _sqlite3_value_double($pVal) { + $pVal = $pVal|0; + var $0 = 0, $1 = 0, $2 = 0.0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pVal; + $1 = HEAP32[$0>>2]|0; + $2 = (+_sqlite3VdbeRealValue($1)); + STACKTOP = sp;return (+$2); +} +function _sqlite3VdbeRealValue($pMem) { + $pMem = $pMem|0; + var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0.0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $val = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 8|0; + $1 = sp + 16|0; + $val = sp; + HEAP32[$1>>2] = $pMem; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 28|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4&65535; + $6 = $5 & 8; + $7 = ($6|0)!=(0); + $8 = HEAP32[$1>>2]|0; + if ($7) { + $9 = (($8) + 8|0); + $10 = +HEAPF64[$9>>3]; + HEAPF64[$0>>3] = $10; + $40 = +HEAPF64[$0>>3]; + STACKTOP = sp;return (+$40); + } + $11 = (($8) + 28|0); + $12 = HEAP16[$11>>1]|0; + $13 = $12&65535; + $14 = $13 & 4; + $15 = ($14|0)!=(0); + $16 = HEAP32[$1>>2]|0; + if ($15) { + $17 = (($16) + 16|0); + $18 = $17; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = (($18) + 4)|0; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (+($20>>>0)) + (4294967296.0*(+($23|0))); + HEAPF64[$0>>3] = $24; + $40 = +HEAPF64[$0>>3]; + STACKTOP = sp;return (+$40); + } + $25 = (($16) + 28|0); + $26 = HEAP16[$25>>1]|0; + $27 = $26&65535; + $28 = $27 & 18; + $29 = ($28|0)!=(0); + if ($29) { + HEAPF64[$val>>3] = 0.0; + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 4|0); + $32 = HEAP32[$31>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 24|0); + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$1>>2]|0; + $37 = (($36) + 30|0); + $38 = HEAP8[$37>>0]|0; + (_sqlite3AtoF($32,$val,$35,$38)|0); + $39 = +HEAPF64[$val>>3]; + HEAPF64[$0>>3] = $39; + $40 = +HEAPF64[$0>>3]; + STACKTOP = sp;return (+$40); + } else { + HEAPF64[$0>>3] = 0.0; + $40 = +HEAPF64[$0>>3]; + STACKTOP = sp;return (+$40); + } + return +0; +} +function _sqlite3_value_int($pVal) { + $pVal = $pVal|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pVal; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3VdbeIntValue($1)|0); + $3 = tempRet0; + STACKTOP = sp;return ($2|0); +} +function _sqlite3VdbeIntValue($pMem) { + $pMem = $pMem|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0.0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $flags = 0, $value = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 8|0; + $1 = sp + 20|0; + $flags = sp + 16|0; + $value = sp; + HEAP32[$1>>2] = $pMem; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 28|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4&65535; + HEAP32[$flags>>2] = $5; + $6 = HEAP32[$flags>>2]|0; + $7 = $6 & 4; + $8 = ($7|0)!=(0); + do { + if ($8) { + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 16|0); + $11 = $10; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = (($11) + 4)|0; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = $0; + $18 = $17; + HEAP32[$18>>2] = $13; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = $16; + } else { + $21 = HEAP32[$flags>>2]|0; + $22 = $21 & 8; + $23 = ($22|0)!=(0); + if ($23) { + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 8|0); + $26 = +HEAPF64[$25>>3]; + $27 = (_doubleToInt64($26)|0); + $28 = tempRet0; + $29 = $0; + $30 = $29; + HEAP32[$30>>2] = $27; + $31 = (($29) + 4)|0; + $32 = $31; + HEAP32[$32>>2] = $28; + break; + } + $33 = HEAP32[$flags>>2]|0; + $34 = $33 & 18; + $35 = ($34|0)!=(0); + if ($35) { + $36 = $value; + $37 = $36; + HEAP32[$37>>2] = 0; + $38 = (($36) + 4)|0; + $39 = $38; + HEAP32[$39>>2] = 0; + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 4|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 24|0); + $45 = HEAP32[$44>>2]|0; + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 30|0); + $48 = HEAP8[$47>>0]|0; + (_sqlite3Atoi64($42,$value,$45,$48)|0); + $49 = $value; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = (($49) + 4)|0; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = $0; + $56 = $55; + HEAP32[$56>>2] = $51; + $57 = (($55) + 4)|0; + $58 = $57; + HEAP32[$58>>2] = $54; + break; + } else { + $59 = $0; + $60 = $59; + HEAP32[$60>>2] = 0; + $61 = (($59) + 4)|0; + $62 = $61; + HEAP32[$62>>2] = 0; + break; + } + } + } while(0); + $63 = $0; + $64 = $63; + $65 = HEAP32[$64>>2]|0; + $66 = (($63) + 4)|0; + $67 = $66; + $68 = HEAP32[$67>>2]|0; + tempRet0 = $68; + STACKTOP = sp;return ($65|0); +} +function _sqlite3_value_int64($pVal) { + $pVal = $pVal|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pVal; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3VdbeIntValue($1)|0); + $3 = tempRet0; + tempRet0 = $3; + STACKTOP = sp;return ($2|0); +} +function _sqlite3ValueText($pVal,$enc) { + $pVal = $pVal|0; + $enc = $enc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + $2 = sp + 8|0; + HEAP32[$1>>2] = $pVal; + HEAP8[$2>>0] = $enc; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + HEAP32[$0>>2] = 0; + $65 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($65|0); + } + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 28|0); + $7 = HEAP16[$6>>1]|0; + $8 = $7&65535; + $9 = $8 & 1; + $10 = ($9|0)!=(0); + if ($10) { + HEAP32[$0>>2] = 0; + $65 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($65|0); + } + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 28|0); + $13 = HEAP16[$12>>1]|0; + $14 = $13&65535; + $15 = $14 & 16; + $16 = $15 >> 3; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 28|0); + $19 = HEAP16[$18>>1]|0; + $20 = $19&65535; + $21 = $20 | $16; + $22 = $21&65535; + HEAP16[$18>>1] = $22; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 28|0); + $25 = HEAP16[$24>>1]|0; + $26 = $25&65535; + $27 = $26 & 16384; + $28 = ($27|0)!=(0); + if ($28) { + $29 = HEAP32[$1>>2]|0; + (_sqlite3VdbeMemExpandBlob($29)|0); + } + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 28|0); + $32 = HEAP16[$31>>1]|0; + $33 = $32&65535; + $34 = $33 & 2; + $35 = ($34|0)!=(0); + $36 = HEAP32[$1>>2]|0; + $37 = HEAP8[$2>>0]|0; + $38 = $37&255; + if ($35) { + $39 = $38 & -9; + (_sqlite3VdbeChangeEncoding($36,$39)|0); + $40 = HEAP8[$2>>0]|0; + $41 = $40&255; + $42 = $41 & 8; + $43 = ($42|0)!=(0); + if ($43) { + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 4|0); + $46 = HEAP32[$45>>2]|0; + $47 = $46; + $48 = 1 & $47; + $49 = (1)==($48|0); + if ($49) { + $50 = HEAP32[$1>>2]|0; + $51 = (_sqlite3VdbeMemMakeWriteable($50)|0); + $52 = ($51|0)!=(0); + if ($52) { + HEAP32[$0>>2] = 0; + $65 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($65|0); + } + } + } + $53 = HEAP32[$1>>2]|0; + (_sqlite3VdbeMemNulTerminate($53)|0); + } else { + (_sqlite3VdbeMemStringify($36,$38)|0); + } + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 30|0); + $56 = HEAP8[$55>>0]|0; + $57 = $56&255; + $58 = HEAP8[$2>>0]|0; + $59 = $58&255; + $60 = $59 & -9; + $61 = ($57|0)==($60|0); + if ($61) { + $62 = HEAP32[$1>>2]|0; + $63 = (($62) + 4|0); + $64 = HEAP32[$63>>2]|0; + HEAP32[$0>>2] = $64; + $65 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($65|0); + } else { + HEAP32[$0>>2] = 0; + $65 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($65|0); + } + return 0|0; +} +function _sqlite3_value_type($pVal) { + $pVal = $pVal|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pVal; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 28|0); + $3 = HEAP16[$2>>1]|0; + $4 = $3&65535; + $5 = $4 & 31; + $6 = (1488 + ($5)|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + STACKTOP = sp;return ($8|0); +} +function _sqlite3_result_blob($pCtx,$z,$n,$xDel) { + $pCtx = $pCtx|0; + $z = $z|0; + $n = $n|0; + $xDel = $xDel|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $pCtx; + HEAP32[$1>>2] = $z; + HEAP32[$2>>2] = $n; + HEAP32[$3>>2] = $xDel; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$3>>2]|0; + _setResultStrOrError($4,$5,$6,0,$7); + STACKTOP = sp;return; +} +function _setResultStrOrError($pCtx,$z,$n,$enc,$xDel) { + $pCtx = $pCtx|0; + $z = $z|0; + $n = $n|0; + $enc = $enc|0; + $xDel = $xDel|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 16|0; + $4 = sp + 8|0; + HEAP32[$0>>2] = $pCtx; + HEAP32[$1>>2] = $z; + HEAP32[$2>>2] = $n; + HEAP8[$3>>0] = $enc; + HEAP32[$4>>2] = $xDel; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 8|0); + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP8[$3>>0]|0; + $10 = HEAP32[$4>>2]|0; + $11 = (_sqlite3VdbeMemSetStr($6,$7,$8,$9,$10)|0); + $12 = ($11|0)==(18); + if (!($12)) { + STACKTOP = sp;return; + } + $13 = HEAP32[$0>>2]|0; + _sqlite3_result_error_toobig($13); + STACKTOP = sp;return; +} +function _sqlite3_result_double($pCtx,$rVal) { + $pCtx = $pCtx|0; + $rVal = +$rVal; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0.0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + HEAP32[$0>>2] = $pCtx; + HEAPF64[$1>>3] = $rVal; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 8|0); + $4 = +HEAPF64[$1>>3]; + _sqlite3VdbeMemSetDouble($3,$4); + STACKTOP = sp;return; +} +function _sqlite3VdbeMemSetDouble($pMem,$val) { + $pMem = $pMem|0; + $val = +$val; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0.0, $3 = 0, $4 = 0, $5 = 0, $6 = 0.0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + HEAP32[$0>>2] = $pMem; + HEAPF64[$1>>3] = $val; + $2 = +HEAPF64[$1>>3]; + $3 = (_sqlite3IsNaN($2)|0); + $4 = ($3|0)!=(0); + $5 = HEAP32[$0>>2]|0; + if ($4) { + _sqlite3VdbeMemSetNull($5); + STACKTOP = sp;return; + } else { + _sqlite3VdbeMemRelease($5); + $6 = +HEAPF64[$1>>3]; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 8|0); + HEAPF64[$8>>3] = $6; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 28|0); + HEAP16[$10>>1] = 8; + STACKTOP = sp;return; + } +} +function _sqlite3_result_error($pCtx,$z,$n) { + $pCtx = $pCtx|0; + $z = $z|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pCtx; + HEAP32[$1>>2] = $z; + HEAP32[$2>>2] = $n; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 64|0); + HEAP32[$4>>2] = 1; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 69|0); + HEAP8[$6>>0] = 1; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 8|0); + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$2>>2]|0; + (_sqlite3VdbeMemSetStr($8,$9,$10,1,(-1))|0); + STACKTOP = sp;return; +} +function _sqlite3VdbeMemSetStr($pMem,$z,$n,$enc,$xDel) { + $pMem = $pMem|0; + $z = $z|0; + $n = $n|0; + $enc = $enc|0; + $xDel = $xDel|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $14 = 0, $15 = 0, $16 = 0; + var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $flags = 0, $iLimit = 0, $nAlloc = 0, $nByte = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 28|0; + $1 = sp + 24|0; + $2 = sp + 20|0; + $3 = sp + 16|0; + $4 = sp + 34|0; + $5 = sp + 12|0; + $nByte = sp + 4|0; + $iLimit = sp; + $flags = sp + 32|0; + $nAlloc = sp + 8|0; + HEAP32[$1>>2] = $pMem; + HEAP32[$2>>2] = $z; + HEAP32[$3>>2] = $n; + HEAP8[$4>>0] = $enc; + HEAP32[$5>>2] = $xDel; + $6 = HEAP32[$3>>2]|0; + HEAP32[$nByte>>2] = $6; + HEAP16[$flags>>1] = 0; + $7 = HEAP32[$2>>2]|0; + $8 = ($7|0)!=(0|0); + $9 = HEAP32[$1>>2]|0; + if (!($8)) { + _sqlite3VdbeMemSetNull($9); + HEAP32[$0>>2] = 0; + $130 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($130|0); + } + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 88|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$iLimit>>2] = $15; + } else { + HEAP32[$iLimit>>2] = 1000000000; + } + $16 = HEAP8[$4>>0]|0; + $17 = $16&255; + $18 = ($17|0)==(0); + $19 = $18 ? 16 : 2; + $20 = $19&65535; + HEAP16[$flags>>1] = $20; + $21 = HEAP32[$nByte>>2]|0; + $22 = ($21|0)<(0); + if ($22) { + $23 = HEAP8[$4>>0]|0; + $24 = $23&255; + $25 = ($24|0)==(1); + HEAP32[$nByte>>2] = 0; + L11: do { + if ($25) { + while(1) { + $26 = HEAP32[$nByte>>2]|0; + $27 = HEAP32[$iLimit>>2]|0; + $28 = ($26|0)<=($27|0); + if (!($28)) { + break L11; + } + $29 = HEAP32[$nByte>>2]|0; + $30 = HEAP32[$2>>2]|0; + $31 = (($30) + ($29)|0); + $32 = HEAP8[$31>>0]|0; + $33 = $32 << 24 >> 24; + $34 = ($33|0)!=(0); + if (!($34)) { + break L11; + } + $35 = HEAP32[$nByte>>2]|0; + $36 = (($35) + 1)|0; + HEAP32[$nByte>>2] = $36; + } + } else { + while(1) { + $37 = HEAP32[$nByte>>2]|0; + $38 = HEAP32[$iLimit>>2]|0; + $39 = ($37|0)<=($38|0); + if (!($39)) { + break L11; + } + $40 = HEAP32[$nByte>>2]|0; + $41 = HEAP32[$2>>2]|0; + $42 = (($41) + ($40)|0); + $43 = HEAP8[$42>>0]|0; + $44 = $43 << 24 >> 24; + $45 = HEAP32[$nByte>>2]|0; + $46 = (($45) + 1)|0; + $47 = HEAP32[$2>>2]|0; + $48 = (($47) + ($46)|0); + $49 = HEAP8[$48>>0]|0; + $50 = $49 << 24 >> 24; + $51 = $44 | $50; + $52 = ($51|0)!=(0); + if (!($52)) { + break L11; + } + $53 = HEAP32[$nByte>>2]|0; + $54 = (($53) + 2)|0; + HEAP32[$nByte>>2] = $54; + } + } + } while(0); + $55 = HEAP16[$flags>>1]|0; + $56 = $55&65535; + $57 = $56 | 512; + $58 = $57&65535; + HEAP16[$flags>>1] = $58; + } + $59 = HEAP32[$5>>2]|0; + $60 = ($59|0)==((-1)|0); + do { + if ($60) { + $61 = HEAP32[$nByte>>2]|0; + HEAP32[$nAlloc>>2] = $61; + $62 = HEAP16[$flags>>1]|0; + $63 = $62&65535; + $64 = $63 & 512; + $65 = ($64|0)!=(0); + if ($65) { + $66 = HEAP8[$4>>0]|0; + $67 = $66&255; + $68 = ($67|0)==(1); + $69 = $68 ? 1 : 2; + $70 = HEAP32[$nAlloc>>2]|0; + $71 = (($70) + ($69))|0; + HEAP32[$nAlloc>>2] = $71; + } + $72 = HEAP32[$nByte>>2]|0; + $73 = HEAP32[$iLimit>>2]|0; + $74 = ($72|0)>($73|0); + if ($74) { + HEAP32[$0>>2] = 18; + $130 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($130|0); + } + $75 = HEAP32[$1>>2]|0; + $76 = HEAP32[$nAlloc>>2]|0; + $77 = (_sqlite3VdbeMemGrow($75,$76,0)|0); + $78 = ($77|0)!=(0); + if (!($78)) { + $79 = HEAP32[$1>>2]|0; + $80 = (($79) + 4|0); + $81 = HEAP32[$80>>2]|0; + $82 = HEAP32[$2>>2]|0; + $83 = HEAP32[$nAlloc>>2]|0; + _memcpy(($81|0),($82|0),($83|0))|0; + break; + } + HEAP32[$0>>2] = 7; + $130 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($130|0); + } else { + $84 = HEAP32[$5>>2]|0; + $85 = ($84|0)==(39|0); + $86 = HEAP32[$1>>2]|0; + _sqlite3VdbeMemRelease($86); + $87 = HEAP32[$2>>2]|0; + $88 = HEAP32[$1>>2]|0; + $89 = (($88) + 4|0); + HEAP32[$89>>2] = $87; + if ($85) { + $90 = HEAP32[$1>>2]|0; + $91 = (($90) + 36|0); + HEAP32[$91>>2] = $87; + $92 = HEAP32[$1>>2]|0; + $93 = (($92) + 32|0); + HEAP32[$93>>2] = 0; + break; + } else { + $94 = HEAP32[$5>>2]|0; + $95 = HEAP32[$1>>2]|0; + $96 = (($95) + 32|0); + HEAP32[$96>>2] = $94; + $97 = HEAP32[$5>>2]|0; + $98 = ($97|0)==(0|0); + $99 = $98 ? 2048 : 1024; + $100 = HEAP16[$flags>>1]|0; + $101 = $100&65535; + $102 = $101 | $99; + $103 = $102&65535; + HEAP16[$flags>>1] = $103; + break; + } + } + } while(0); + $104 = HEAP32[$nByte>>2]|0; + $105 = HEAP32[$1>>2]|0; + $106 = (($105) + 24|0); + HEAP32[$106>>2] = $104; + $107 = HEAP16[$flags>>1]|0; + $108 = HEAP32[$1>>2]|0; + $109 = (($108) + 28|0); + HEAP16[$109>>1] = $107; + $110 = HEAP8[$4>>0]|0; + $111 = $110&255; + $112 = ($111|0)==(0); + if ($112) { + $116 = 1; + } else { + $113 = HEAP8[$4>>0]|0; + $114 = $113&255; + $116 = $114; + } + $115 = $116&255; + $117 = HEAP32[$1>>2]|0; + $118 = (($117) + 30|0); + HEAP8[$118>>0] = $115; + $119 = HEAP32[$1>>2]|0; + $120 = (($119) + 30|0); + $121 = HEAP8[$120>>0]|0; + $122 = $121&255; + $123 = ($122|0)!=(1); + if ($123) { + $124 = HEAP32[$1>>2]|0; + $125 = (_sqlite3VdbeMemHandleBom($124)|0); + $126 = ($125|0)!=(0); + if ($126) { + HEAP32[$0>>2] = 7; + $130 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($130|0); + } + } + $127 = HEAP32[$nByte>>2]|0; + $128 = HEAP32[$iLimit>>2]|0; + $129 = ($127|0)>($128|0); + if ($129) { + HEAP32[$0>>2] = 18; + $130 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($130|0); + } else { + HEAP32[$0>>2] = 0; + $130 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($130|0); + } + return 0|0; +} +function _sqlite3_result_int($pCtx,$iVal) { + $pCtx = $pCtx|0; + $iVal = $iVal|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pCtx; + HEAP32[$1>>2] = $iVal; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 8|0); + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)<(0); + $6 = $5 << 31 >> 31; + _sqlite3VdbeMemSetInt64($3,$4,$6); + STACKTOP = sp;return; +} +function _sqlite3VdbeMemSetInt64($pMem,$0,$1) { + $pMem = $pMem|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp + 8|0; + $3 = sp; + HEAP32[$2>>2] = $pMem; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = HEAP32[$2>>2]|0; + _sqlite3VdbeMemRelease($8); + $9 = $3; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = (($9) + 4)|0; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 16|0); + $17 = $16; + $18 = $17; + HEAP32[$18>>2] = $11; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = $14; + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 28|0); + HEAP16[$22>>1] = 4; + STACKTOP = sp;return; +} +function _sqlite3_result_int64($pCtx,$0,$1) { + $pCtx = $pCtx|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp + 8|0; + $3 = sp; + HEAP32[$2>>2] = $pCtx; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 8|0); + $10 = $3; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (($10) + 4)|0; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + _sqlite3VdbeMemSetInt64($9,$12,$15); + STACKTOP = sp;return; +} +function _sqlite3_result_null($pCtx) { + $pCtx = $pCtx|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pCtx; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + _sqlite3VdbeMemSetNull($2); + STACKTOP = sp;return; +} +function _sqlite3VdbeMemSetNull($pMem) { + $pMem = $pMem|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pFrame = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pFrame = sp; + HEAP32[$0>>2] = $pMem; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 28|0); + $3 = HEAP16[$2>>1]|0; + $4 = $3&65535; + $5 = $4 & 64; + $6 = ($5|0)!=(0); + if ($6) { + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$pFrame>>2] = $9; + $10 = HEAP32[$pFrame>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + 180|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$pFrame>>2]|0; + $15 = (($14) + 4|0); + HEAP32[$15>>2] = $13; + $16 = HEAP32[$pFrame>>2]|0; + $17 = HEAP32[$pFrame>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + 180|0); + HEAP32[$19>>2] = $16; + } + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 28|0); + $22 = HEAP16[$21>>1]|0; + $23 = $22&65535; + $24 = $23 & 32; + $25 = ($24|0)!=(0); + if ($25) { + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 16|0); + $28 = HEAP32[$27>>2]|0; + _sqlite3RowSetClear($28); + } + $29 = HEAP32[$0>>2]|0; + $30 = (($29) + 28|0); + $31 = HEAP16[$30>>1]|0; + $32 = $31&65535; + $33 = $32 & -16896; + $34 = $33 | 1; + $35 = $34&65535; + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + 28|0); + HEAP16[$37>>1] = $35; + STACKTOP = sp;return; +} +function _sqlite3_result_text($pCtx,$z,$n,$xDel) { + $pCtx = $pCtx|0; + $z = $z|0; + $n = $n|0; + $xDel = $xDel|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $pCtx; + HEAP32[$1>>2] = $z; + HEAP32[$2>>2] = $n; + HEAP32[$3>>2] = $xDel; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$3>>2]|0; + _setResultStrOrError($4,$5,$6,1,$7); + STACKTOP = sp;return; +} +function _sqlite3_result_value($pCtx,$pValue) { + $pCtx = $pCtx|0; + $pValue = $pValue|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pCtx; + HEAP32[$1>>2] = $pValue; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 8|0); + $4 = HEAP32[$1>>2]|0; + (_sqlite3VdbeMemCopy($3,$4)|0); + STACKTOP = sp;return; +} +function _sqlite3VdbeMemCopy($pTo,$pFrom) { + $pTo = $pTo|0; + $pFrom = $pFrom|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $rc = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $pTo; + HEAP32[$1>>2] = $pFrom; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 28|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4&65535; + $6 = $5 & 9312; + $7 = ($6|0)!=(0); + if ($7) { + $8 = HEAP32[$0>>2]|0; + _sqlite3VdbeMemReleaseExternal($8); + } + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$1>>2]|0; + dest=$9+0|0; src=$10+0|0; stop=dest+36|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 28|0); + $13 = HEAP16[$12>>1]|0; + $14 = $13&65535; + $15 = $14 & -1025; + $16 = $15&65535; + HEAP16[$12>>1] = $16; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 32|0); + HEAP32[$18>>2] = 0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 28|0); + $21 = HEAP16[$20>>1]|0; + $22 = $21&65535; + $23 = $22 & 18; + $24 = ($23|0)!=(0); + if (!($24)) { + $39 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($39|0); + } + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 28|0); + $27 = HEAP16[$26>>1]|0; + $28 = $27&65535; + $29 = $28 & 2048; + $30 = (0)==($29|0); + if (!($30)) { + $39 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($39|0); + } + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 28|0); + $33 = HEAP16[$32>>1]|0; + $34 = $33&65535; + $35 = $34 | 4096; + $36 = $35&65535; + HEAP16[$32>>1] = $36; + $37 = HEAP32[$0>>2]|0; + $38 = (_sqlite3VdbeMemMakeWriteable($37)|0); + HEAP32[$rc>>2] = $38; + $39 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($39|0); +} +function _sqlite3_result_zeroblob($pCtx,$n) { + $pCtx = $pCtx|0; + $n = $n|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pCtx; + HEAP32[$1>>2] = $n; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 8|0); + $4 = HEAP32[$1>>2]|0; + _sqlite3VdbeMemSetZeroBlob($3,$4); + STACKTOP = sp;return; +} +function _sqlite3VdbeMemSetZeroBlob($pMem,$n) { + $pMem = $pMem|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pMem; + HEAP32[$1>>2] = $n; + $2 = HEAP32[$0>>2]|0; + _sqlite3VdbeMemRelease($2); + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 28|0); + HEAP16[$4>>1] = 16400; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 24|0); + HEAP32[$6>>2] = 0; + $7 = HEAP32[$1>>2]|0; + $8 = ($7|0)<(0); + if ($8) { + HEAP32[$1>>2] = 0; + } + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 16|0); + HEAP32[$11>>2] = $9; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 30|0); + HEAP8[$13>>0] = 1; + STACKTOP = sp;return; +} +function _sqlite3_result_error_code($pCtx,$errCode) { + $pCtx = $pCtx|0; + $errCode = $errCode|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pCtx; + HEAP32[$1>>2] = $errCode; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 64|0); + HEAP32[$4>>2] = $2; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 69|0); + HEAP8[$6>>0] = 1; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 8|0); + $9 = (($8) + 28|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10&65535; + $12 = $11 & 1; + $13 = ($12|0)!=(0); + if (!($13)) { + STACKTOP = sp;return; + } + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 8|0); + $16 = HEAP32[$1>>2]|0; + $17 = (_sqlite3ErrStr($16)|0); + (_sqlite3VdbeMemSetStr($15,$17,-1,1,0)|0); + STACKTOP = sp;return; +} +function _sqlite3ErrStr($rc) { + $rc = $rc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cond = 0, $or$cond = 0, $zErr = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $zErr = sp; + HEAP32[$0>>2] = $rc; + HEAP32[$zErr>>2] = 12544; + $1 = HEAP32[$0>>2]|0; + $cond = ($1|0)==(516); + if ($cond) { + HEAP32[$zErr>>2] = 12560; + } else { + $2 = HEAP32[$0>>2]|0; + $3 = $2 & 255; + HEAP32[$0>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = ($4|0)>=(0); + $6 = HEAP32[$0>>2]|0; + $7 = ($6|0)<(27); + $or$cond = $5 & $7; + if ($or$cond) { + $8 = HEAP32[$0>>2]|0; + $9 = (11720 + ($8<<2)|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = HEAP32[$0>>2]|0; + $13 = (11720 + ($12<<2)|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$zErr>>2] = $14; + } + } + } + $15 = HEAP32[$zErr>>2]|0; + STACKTOP = sp;return ($15|0); +} +function _sqlite3_result_error_toobig($pCtx) { + $pCtx = $pCtx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pCtx; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 64|0); + HEAP32[$2>>2] = 18; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 69|0); + HEAP8[$4>>0] = 1; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 8|0); + (_sqlite3VdbeMemSetStr($6,1520,-1,1,0)|0); + STACKTOP = sp;return; +} +function _sqlite3_result_error_nomem($pCtx) { + $pCtx = $pCtx|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pCtx; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + _sqlite3VdbeMemSetNull($2); + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 64|0); + HEAP32[$4>>2] = 7; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 69|0); + HEAP8[$6>>0] = 1; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 8|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 64|0); + HEAP8[$10>>0] = 1; + STACKTOP = sp;return; +} +function _sqlite3_step($pStmt) { + $pStmt = $pStmt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cnt = 0; + var $db = 0, $rc = 0, $rc2 = 0, $v = 0, $zErr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $rc = sp + 4|0; + $rc2 = sp + 8|0; + $v = sp + 12|0; + $cnt = sp + 16|0; + $db = sp + 20|0; + $zErr = sp + 24|0; + HEAP32[$1>>2] = $pStmt; + HEAP32[$rc>>2] = 0; + HEAP32[$rc2>>2] = 0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$v>>2] = $2; + HEAP32[$cnt>>2] = 0; + $3 = HEAP32[$v>>2]|0; + $4 = (_vdbeSafetyNotNull($3)|0); + $5 = ($4|0)!=(0); + if ($5) { + $6 = (_sqlite3MisuseError(66253)|0); + HEAP32[$0>>2] = $6; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); + } + $7 = HEAP32[$v>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$db>>2] = $8; + $9 = HEAP32[$v>>2]|0; + $10 = (($9) + 88|0); + $11 = HEAP16[$10>>1]|0; + $12 = $11 & -2049; + HEAP16[$10>>1] = $12; + while(1) { + $13 = HEAP32[$v>>2]|0; + $14 = (_sqlite3Step($13)|0); + HEAP32[$rc>>2] = $14; + $15 = ($14|0)==(17); + if (!($15)) { + break; + } + $16 = HEAP32[$cnt>>2]|0; + $17 = (($16) + 1)|0; + HEAP32[$cnt>>2] = $17; + $18 = ($16|0)<(50); + if (!($18)) { + break; + } + $19 = HEAP32[$v>>2]|0; + $20 = (_sqlite3Reprepare($19)|0); + HEAP32[$rc>>2] = $20; + HEAP32[$rc2>>2] = $20; + $21 = ($20|0)==(0); + if (!($21)) { + break; + } + $22 = HEAP32[$1>>2]|0; + (_sqlite3_reset($22)|0); + $23 = HEAP32[$v>>2]|0; + $24 = (($23) + 88|0); + $25 = HEAP16[$24>>1]|0; + $26 = $25 & -2049; + $27 = $26 | 2048; + HEAP16[$24>>1] = $27; + } + $28 = HEAP32[$rc2>>2]|0; + $29 = ($28|0)!=(0); + do { + if ($29) { + $30 = HEAP32[$db>>2]|0; + $31 = (($30) + 224|0); + $32 = HEAP32[$31>>2]|0; + $33 = (_sqlite3_value_text($32)|0); + HEAP32[$zErr>>2] = $33; + $34 = HEAP32[$db>>2]|0; + $35 = HEAP32[$v>>2]|0; + $36 = (($35) + 44|0); + $37 = HEAP32[$36>>2]|0; + _sqlite3DbFree($34,$37); + $38 = HEAP32[$db>>2]|0; + $39 = (($38) + 64|0); + $40 = HEAP8[$39>>0]|0; + $41 = ($40<<24>>24)!=(0); + if ($41) { + $50 = HEAP32[$v>>2]|0; + $51 = (($50) + 44|0); + HEAP32[$51>>2] = 0; + HEAP32[$rc>>2] = 7; + $52 = HEAP32[$v>>2]|0; + $53 = (($52) + 80|0); + HEAP32[$53>>2] = 7; + break; + } else { + $42 = HEAP32[$db>>2]|0; + $43 = HEAP32[$zErr>>2]|0; + $44 = (_sqlite3DbStrDup($42,$43)|0); + $45 = HEAP32[$v>>2]|0; + $46 = (($45) + 44|0); + HEAP32[$46>>2] = $44; + $47 = HEAP32[$rc2>>2]|0; + $48 = HEAP32[$v>>2]|0; + $49 = (($48) + 80|0); + HEAP32[$49>>2] = $47; + break; + } + } + } while(0); + $54 = HEAP32[$db>>2]|0; + $55 = HEAP32[$rc>>2]|0; + $56 = (_sqlite3ApiExit($54,$55)|0); + HEAP32[$rc>>2] = $56; + $57 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $57; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); +} +function _vdbeSafetyNotNull($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 8|0; + $1 = sp + 4|0; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0|0); + if ($3) { + _sqlite3_log(21,43512,$vararg_buffer); + HEAP32[$0>>2] = 1; + $6 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($6|0); + } else { + $4 = HEAP32[$1>>2]|0; + $5 = (_vdbeSafety($4)|0); + HEAP32[$0>>2] = $5; + $6 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($6|0); + } + return 0|0; +} +function _sqlite3Step($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $db = 0, $iNow = 0, $or$cond = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp + 16|0; + $db = sp + 8|0; + $rc = sp + 12|0; + $iNow = sp; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 40|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(-1108210269); + if ($5) { + $6 = HEAP32[$1>>2]|0; + (_sqlite3_reset($6)|0); + } + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$db>>2] = $8; + $9 = HEAP32[$db>>2]|0; + $10 = (($9) + 64|0); + $11 = HEAP8[$10>>0]|0; + $12 = ($11<<24>>24)!=(0); + $13 = HEAP32[$1>>2]|0; + if ($12) { + $14 = (($13) + 80|0); + HEAP32[$14>>2] = 7; + HEAP32[$0>>2] = 7; + $180 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($180|0); + } + $15 = (($13) + 76|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)<=(0); + if ($17) { + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 88|0); + $20 = HEAP16[$19>>1]|0; + $21 = ($20&65535) >>> 5; + $22 = $21 & 1; + $23 = $22&65535; + $24 = ($23|0)!=(0); + if ($24) { + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 80|0); + HEAP32[$26>>2] = 17; + HEAP32[$rc>>2] = 1; + } else { + label = 8; + } + } else { + label = 8; + } + if ((label|0) == 8) { + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 76|0); + $29 = HEAP32[$28>>2]|0; + $30 = ($29|0)<(0); + if ($30) { + $31 = HEAP32[$db>>2]|0; + $32 = (($31) + 140|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($33|0)==(0); + if ($34) { + $35 = HEAP32[$db>>2]|0; + $36 = (($35) + 232|0); + HEAP32[$36>>2] = 0; + } + $37 = HEAP32[$db>>2]|0; + $38 = (($37) + 172|0); + $39 = HEAP32[$38>>2]|0; + $40 = ($39|0)!=(0|0); + if ($40) { + $41 = HEAP32[$db>>2]|0; + $42 = (($41) + 132|0); + $43 = (($42) + 5|0); + $44 = HEAP8[$43>>0]|0; + $45 = ($44<<24>>24)!=(0); + if (!($45)) { + $46 = HEAP32[$db>>2]|0; + $47 = HEAP32[$46>>2]|0; + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + 128|0); + (_sqlite3OsCurrentTimeInt64($47,$49)|0); + } + } + $50 = HEAP32[$db>>2]|0; + $51 = (($50) + 140|0); + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + 1)|0; + HEAP32[$51>>2] = $53; + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 88|0); + $56 = HEAP16[$55>>1]|0; + $57 = ($56&65535) >>> 8; + $58 = $57 & 1; + $59 = $58&65535; + $60 = ($59|0)==(0); + if ($60) { + $61 = HEAP32[$db>>2]|0; + $62 = (($61) + 148|0); + $63 = HEAP32[$62>>2]|0; + $64 = (($63) + 1)|0; + HEAP32[$62>>2] = $64; + } + $65 = HEAP32[$1>>2]|0; + $66 = (($65) + 88|0); + $67 = HEAP16[$66>>1]|0; + $68 = ($67&65535) >>> 9; + $69 = $68 & 1; + $70 = $69&65535; + $71 = ($70|0)!=(0); + if ($71) { + $72 = HEAP32[$db>>2]|0; + $73 = (($72) + 144|0); + $74 = HEAP32[$73>>2]|0; + $75 = (($74) + 1)|0; + HEAP32[$73>>2] = $75; + } + $76 = HEAP32[$1>>2]|0; + $77 = (($76) + 76|0); + HEAP32[$77>>2] = 0; + } + $78 = HEAP32[$1>>2]|0; + $79 = (($78) + 88|0); + $80 = HEAP16[$79>>1]|0; + $81 = $80 & 3; + $82 = $81&65535; + $83 = ($82|0)!=(0); + if ($83) { + $84 = HEAP32[$1>>2]|0; + $85 = (_sqlite3VdbeList($84)|0); + HEAP32[$rc>>2] = $85; + } else { + $86 = HEAP32[$db>>2]|0; + $87 = (($86) + 152|0); + $88 = HEAP32[$87>>2]|0; + $89 = (($88) + 1)|0; + HEAP32[$87>>2] = $89; + $90 = HEAP32[$1>>2]|0; + $91 = (_sqlite3VdbeExec($90)|0); + HEAP32[$rc>>2] = $91; + $92 = HEAP32[$db>>2]|0; + $93 = (($92) + 152|0); + $94 = HEAP32[$93>>2]|0; + $95 = (($94) + -1)|0; + HEAP32[$93>>2] = $95; + } + $96 = HEAP32[$rc>>2]|0; + $97 = ($96|0)!=(100); + if ($97) { + $98 = HEAP32[$db>>2]|0; + $99 = (($98) + 172|0); + $100 = HEAP32[$99>>2]|0; + $101 = ($100|0)!=(0|0); + if ($101) { + $102 = HEAP32[$db>>2]|0; + $103 = (($102) + 132|0); + $104 = (($103) + 5|0); + $105 = HEAP8[$104>>0]|0; + $106 = ($105<<24>>24)!=(0); + if (!($106)) { + $107 = HEAP32[$1>>2]|0; + $108 = (($107) + 168|0); + $109 = HEAP32[$108>>2]|0; + $110 = ($109|0)!=(0|0); + if ($110) { + $111 = HEAP32[$db>>2]|0; + $112 = HEAP32[$111>>2]|0; + (_sqlite3OsCurrentTimeInt64($112,$iNow)|0); + $113 = HEAP32[$db>>2]|0; + $114 = (($113) + 172|0); + $115 = HEAP32[$114>>2]|0; + $116 = HEAP32[$db>>2]|0; + $117 = (($116) + 176|0); + $118 = HEAP32[$117>>2]|0; + $119 = HEAP32[$1>>2]|0; + $120 = (($119) + 168|0); + $121 = HEAP32[$120>>2]|0; + $122 = $iNow; + $123 = $122; + $124 = HEAP32[$123>>2]|0; + $125 = (($122) + 4)|0; + $126 = $125; + $127 = HEAP32[$126>>2]|0; + $128 = HEAP32[$1>>2]|0; + $129 = (($128) + 128|0); + $130 = $129; + $131 = $130; + $132 = HEAP32[$131>>2]|0; + $133 = (($130) + 4)|0; + $134 = $133; + $135 = HEAP32[$134>>2]|0; + $136 = (_i64Subtract(($124|0),($127|0),($132|0),($135|0))|0); + $137 = tempRet0; + $138 = (___muldi3(($136|0),($137|0),1000000,0)|0); + $139 = tempRet0; + FUNCTION_TABLE_viiii[$115 & 3]($118,$121,$138,$139); + } + } + } + } + $140 = HEAP32[$rc>>2]|0; + $141 = ($140|0)==(101); + if ($141) { + $142 = HEAP32[$db>>2]|0; + $143 = (_doWalCallbacks($142)|0); + $144 = HEAP32[$1>>2]|0; + $145 = (($144) + 80|0); + HEAP32[$145>>2] = $143; + $146 = HEAP32[$1>>2]|0; + $147 = (($146) + 80|0); + $148 = HEAP32[$147>>2]|0; + $149 = ($148|0)!=(0); + if ($149) { + HEAP32[$rc>>2] = 1; + } + } + $150 = HEAP32[$rc>>2]|0; + $151 = HEAP32[$db>>2]|0; + $152 = (($151) + 52|0); + HEAP32[$152>>2] = $150; + $153 = HEAP32[$1>>2]|0; + $154 = HEAP32[$153>>2]|0; + $155 = HEAP32[$1>>2]|0; + $156 = (($155) + 80|0); + $157 = HEAP32[$156>>2]|0; + $158 = (_sqlite3ApiExit($154,$157)|0); + $159 = (7)==($158|0); + if ($159) { + $160 = HEAP32[$1>>2]|0; + $161 = (($160) + 80|0); + HEAP32[$161>>2] = 7; + } + } + $162 = HEAP32[$1>>2]|0; + $163 = (($162) + 88|0); + $164 = HEAP16[$163>>1]|0; + $165 = ($164&65535) >>> 10; + $166 = $165 & 1; + $167 = $166&65535; + $168 = ($167|0)!=(0); + if ($168) { + $169 = HEAP32[$rc>>2]|0; + $170 = ($169|0)!=(100); + $171 = HEAP32[$rc>>2]|0; + $172 = ($171|0)!=(101); + $or$cond = $170 & $172; + if ($or$cond) { + $173 = HEAP32[$1>>2]|0; + $174 = (_sqlite3VdbeTransferError($173)|0); + HEAP32[$rc>>2] = $174; + } + } + $175 = HEAP32[$rc>>2]|0; + $176 = HEAP32[$db>>2]|0; + $177 = (($176) + 56|0); + $178 = HEAP32[$177>>2]|0; + $179 = $175 & $178; + HEAP32[$0>>2] = $179; + $180 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($180|0); +} +function _sqlite3Reprepare($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $pNew = 0, $rc = 0, $zSql = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $rc = sp + 4|0; + $pNew = sp + 8|0; + $zSql = sp + 12|0; + $db = sp + 16|0; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = (_sqlite3_sql($2)|0); + HEAP32[$zSql>>2] = $3; + $4 = HEAP32[$1>>2]|0; + $5 = (_sqlite3VdbeDb($4)|0); + HEAP32[$db>>2] = $5; + $6 = HEAP32[$db>>2]|0; + $7 = HEAP32[$zSql>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (_sqlite3LockAndPrepare($6,$7,-1,0,$8,$pNew,0)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + $11 = ($10|0)!=(0); + if (!($11)) { + $17 = HEAP32[$pNew>>2]|0; + $18 = HEAP32[$1>>2]|0; + _sqlite3VdbeSwap($17,$18); + $19 = HEAP32[$pNew>>2]|0; + $20 = HEAP32[$1>>2]|0; + (_sqlite3TransferBindings($19,$20)|0); + $21 = HEAP32[$pNew>>2]|0; + _sqlite3VdbeResetStepResult($21); + $22 = HEAP32[$pNew>>2]|0; + (_sqlite3VdbeFinalize($22)|0); + HEAP32[$0>>2] = 0; + $23 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($23|0); + } + $12 = HEAP32[$rc>>2]|0; + $13 = ($12|0)==(7); + if ($13) { + $14 = HEAP32[$db>>2]|0; + $15 = (($14) + 64|0); + HEAP8[$15>>0] = 1; + } + $16 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $16; + $23 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($23|0); +} +function _sqlite3DbStrDup($db,$z) { + $db = $db|0; + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, $zNew = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $zNew = sp + 8|0; + $n = sp + 12|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $z; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + HEAP32[$0>>2] = 0; + $17 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($17|0); + } + $5 = HEAP32[$2>>2]|0; + $6 = (_sqlite3Strlen30($5)|0); + $7 = (($6) + 1)|0; + HEAP32[$n>>2] = $7; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$n>>2]|0; + $10 = (_sqlite3DbMallocRaw($8,$9)|0); + HEAP32[$zNew>>2] = $10; + $11 = HEAP32[$zNew>>2]|0; + $12 = ($11|0)!=(0|0); + if ($12) { + $13 = HEAP32[$zNew>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$n>>2]|0; + _memcpy(($13|0),($14|0),($15|0))|0; + } + $16 = HEAP32[$zNew>>2]|0; + HEAP32[$0>>2] = $16; + $17 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($17|0); +} +function _sqlite3_user_data($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + STACKTOP = sp;return ($4|0); +} +function _sqlite3_context_db_handle($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _sqlite3_aggregate_context($p,$nByte) { + $p = $p|0; + $nByte = $nByte|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pMem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pMem = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $nByte; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 48|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pMem>>2] = $4; + $5 = HEAP32[$pMem>>2]|0; + $6 = (($5) + 28|0); + $7 = HEAP16[$6>>1]|0; + $8 = $7&65535; + $9 = $8 & 8192; + $10 = ($9|0)==(0); + do { + if ($10) { + $11 = HEAP32[$1>>2]|0; + $12 = ($11|0)<=(0); + $13 = HEAP32[$pMem>>2]|0; + if ($12) { + _sqlite3VdbeMemReleaseExternal($13); + $14 = HEAP32[$pMem>>2]|0; + $15 = (($14) + 28|0); + HEAP16[$15>>1] = 1; + $16 = HEAP32[$pMem>>2]|0; + $17 = (($16) + 4|0); + HEAP32[$17>>2] = 0; + break; + } + $18 = HEAP32[$1>>2]|0; + (_sqlite3VdbeMemGrow($13,$18,0)|0); + $19 = HEAP32[$pMem>>2]|0; + $20 = (($19) + 28|0); + HEAP16[$20>>1] = 8192; + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$pMem>>2]|0; + $24 = (($23) + 16|0); + HEAP32[$24>>2] = $22; + $25 = HEAP32[$pMem>>2]|0; + $26 = (($25) + 4|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)!=(0|0); + if ($28) { + $29 = HEAP32[$pMem>>2]|0; + $30 = (($29) + 4|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$1>>2]|0; + _memset(($31|0),0,($32|0))|0; + } + } + } while(0); + $33 = HEAP32[$pMem>>2]|0; + $34 = (($33) + 4|0); + $35 = HEAP32[$34>>2]|0; + STACKTOP = sp;return ($35|0); +} +function _sqlite3VdbeMemReleaseExternal($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 28|0); + $3 = HEAP16[$2>>1]|0; + $4 = $3&65535; + $5 = $4 & 8192; + $6 = ($5|0)!=(0); + $7 = HEAP32[$0>>2]|0; + if ($6) { + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 16|0); + $10 = HEAP32[$9>>2]|0; + (_sqlite3VdbeMemFinalize($7,$10)|0); + $11 = HEAP32[$0>>2]|0; + _sqlite3VdbeMemRelease($11); + STACKTOP = sp;return; + } + $12 = (($7) + 28|0); + $13 = HEAP16[$12>>1]|0; + $14 = $13&65535; + $15 = $14 & 1024; + $16 = ($15|0)!=(0); + $17 = HEAP32[$0>>2]|0; + if ($16) { + $18 = (($17) + 32|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 4|0); + $22 = HEAP32[$21>>2]|0; + FUNCTION_TABLE_vi[$19 & 31]($22); + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 32|0); + HEAP32[$24>>2] = 0; + STACKTOP = sp;return; + } + $25 = (($17) + 28|0); + $26 = HEAP16[$25>>1]|0; + $27 = $26&65535; + $28 = $27 & 32; + $29 = ($28|0)!=(0); + $30 = HEAP32[$0>>2]|0; + if ($29) { + $31 = (($30) + 16|0); + $32 = HEAP32[$31>>2]|0; + _sqlite3RowSetClear($32); + STACKTOP = sp;return; + } + $33 = (($30) + 28|0); + $34 = HEAP16[$33>>1]|0; + $35 = $34&65535; + $36 = $35 & 64; + $37 = ($36|0)!=(0); + if (!($37)) { + STACKTOP = sp;return; + } + $38 = HEAP32[$0>>2]|0; + _sqlite3VdbeMemSetNull($38); + STACKTOP = sp;return; +} +function _sqlite3VdbeMemGrow($pMem,$n,$bPreserve) { + $pMem = $pMem|0; + $n = $n|0; + $bPreserve = $bPreserve|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0; + var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$1>>2] = $pMem; + HEAP32[$2>>2] = $n; + HEAP32[$3>>2] = $bPreserve; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 36|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)==(0|0); + if ($7) { + label = 3; + } else { + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 36|0); + $12 = HEAP32[$11>>2]|0; + $13 = (_sqlite3DbMallocSize($9,$12)|0); + $14 = HEAP32[$2>>2]|0; + $15 = ($13|0)<($14|0); + if ($15) { + label = 3; + } + } + if ((label|0) == 3) { + $16 = HEAP32[$2>>2]|0; + $17 = ($16|0)<(32); + if ($17) { + HEAP32[$2>>2] = 32; + } + $18 = HEAP32[$3>>2]|0; + $19 = ($18|0)!=(0); + if ($19) { + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 4|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 36|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($22|0)==($25|0); + if ($26) { + $27 = HEAP32[$1>>2]|0; + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$1>>2]|0; + $30 = (($29) + 4|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$2>>2]|0; + $33 = (_sqlite3DbReallocOrFree($28,$31,$32)|0); + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 36|0); + HEAP32[$35>>2] = $33; + $36 = HEAP32[$1>>2]|0; + $37 = (($36) + 4|0); + HEAP32[$37>>2] = $33; + HEAP32[$3>>2] = 0; + } else { + label = 8; + } + } else { + label = 8; + } + if ((label|0) == 8) { + $38 = HEAP32[$1>>2]|0; + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 36|0); + $42 = HEAP32[$41>>2]|0; + _sqlite3DbFree($39,$42); + $43 = HEAP32[$1>>2]|0; + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$2>>2]|0; + $46 = (_sqlite3DbMallocRaw($44,$45)|0); + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 36|0); + HEAP32[$48>>2] = $46; + } + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 36|0); + $51 = HEAP32[$50>>2]|0; + $52 = ($51|0)==(0|0); + if ($52) { + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 28|0); + $55 = HEAP16[$54>>1]|0; + $56 = $55&65535; + $57 = $56 & 9312; + $58 = ($57|0)!=(0); + if ($58) { + $59 = HEAP32[$1>>2]|0; + _sqlite3VdbeMemReleaseExternal($59); + } + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 4|0); + HEAP32[$61>>2] = 0; + $62 = HEAP32[$1>>2]|0; + $63 = (($62) + 28|0); + HEAP16[$63>>1] = 1; + HEAP32[$0>>2] = 7; + $111 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($111|0); + } + } + $64 = HEAP32[$1>>2]|0; + $65 = (($64) + 4|0); + $66 = HEAP32[$65>>2]|0; + $67 = ($66|0)!=(0|0); + if ($67) { + $68 = HEAP32[$3>>2]|0; + $69 = ($68|0)!=(0); + if ($69) { + $70 = HEAP32[$1>>2]|0; + $71 = (($70) + 4|0); + $72 = HEAP32[$71>>2]|0; + $73 = HEAP32[$1>>2]|0; + $74 = (($73) + 36|0); + $75 = HEAP32[$74>>2]|0; + $76 = ($72|0)!=($75|0); + if ($76) { + $77 = HEAP32[$1>>2]|0; + $78 = (($77) + 36|0); + $79 = HEAP32[$78>>2]|0; + $80 = HEAP32[$1>>2]|0; + $81 = (($80) + 4|0); + $82 = HEAP32[$81>>2]|0; + $83 = HEAP32[$1>>2]|0; + $84 = (($83) + 24|0); + $85 = HEAP32[$84>>2]|0; + _memcpy(($79|0),($82|0),($85|0))|0; + } + } + } + $86 = HEAP32[$1>>2]|0; + $87 = (($86) + 28|0); + $88 = HEAP16[$87>>1]|0; + $89 = $88&65535; + $90 = $89 & 1024; + $91 = ($90|0)!=(0); + if ($91) { + $92 = HEAP32[$1>>2]|0; + $93 = (($92) + 32|0); + $94 = HEAP32[$93>>2]|0; + $95 = HEAP32[$1>>2]|0; + $96 = (($95) + 4|0); + $97 = HEAP32[$96>>2]|0; + FUNCTION_TABLE_vi[$94 & 31]($97); + } + $98 = HEAP32[$1>>2]|0; + $99 = (($98) + 36|0); + $100 = HEAP32[$99>>2]|0; + $101 = HEAP32[$1>>2]|0; + $102 = (($101) + 4|0); + HEAP32[$102>>2] = $100; + $103 = HEAP32[$1>>2]|0; + $104 = (($103) + 28|0); + $105 = HEAP16[$104>>1]|0; + $106 = $105&65535; + $107 = $106 & -7169; + $108 = $107&65535; + HEAP16[$104>>1] = $108; + $109 = HEAP32[$1>>2]|0; + $110 = (($109) + 32|0); + HEAP32[$110>>2] = 0; + HEAP32[$0>>2] = 0; + $111 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($111|0); +} +function _sqlite3DbMallocZero($db,$n) { + $db = $db|0; + $n = $n|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $p = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $n; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3DbMallocRaw($2,$3)|0); + HEAP32[$p>>2] = $4; + $5 = HEAP32[$p>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $9 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($9|0); + } + $7 = HEAP32[$p>>2]|0; + $8 = HEAP32[$1>>2]|0; + _memset(($7|0),0,($8|0))|0; + $9 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($9|0); +} +function _sqlite3_column_count($pStmt) { + $pStmt = $pStmt|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $pVm = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pVm = sp; + HEAP32[$0>>2] = $pStmt; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pVm>>2] = $1; + $2 = HEAP32[$pVm>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $8 = 0; + STACKTOP = sp;return ($8|0); + } + $4 = HEAP32[$pVm>>2]|0; + $5 = (($4) + 84|0); + $6 = HEAP16[$5>>1]|0; + $7 = $6&65535; + $8 = $7; + STACKTOP = sp;return ($8|0); +} +function _sqlite3_data_count($pStmt) { + $pStmt = $pStmt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pVm = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pVm = sp + 4|0; + HEAP32[$1>>2] = $pStmt; + $2 = HEAP32[$1>>2]|0; + HEAP32[$pVm>>2] = $2; + $3 = HEAP32[$pVm>>2]|0; + $4 = ($3|0)==(0|0); + if (!($4)) { + $5 = HEAP32[$pVm>>2]|0; + $6 = (($5) + 20|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)==(0|0); + if (!($8)) { + $9 = HEAP32[$pVm>>2]|0; + $10 = (($9) + 84|0); + $11 = HEAP16[$10>>1]|0; + $12 = $11&65535; + HEAP32[$0>>2] = $12; + $13 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($13|0); + } + } + HEAP32[$0>>2] = 0; + $13 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($13|0); +} +function _sqlite3_column_blob($pStmt,$i) { + $pStmt = $pStmt|0; + $i = $i|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $val = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $val = sp + 4|0; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $i; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_columnMem($2,$3)|0); + $5 = (_sqlite3_value_blob($4)|0); + HEAP32[$val>>2] = $5; + $6 = HEAP32[$0>>2]|0; + _columnMallocFailure($6); + $7 = HEAP32[$val>>2]|0; + STACKTOP = sp;return ($7|0); +} +function _columnMem($pStmt,$i) { + $pStmt = $pStmt|0; + $i = $i|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $pOut = 0, $pVm = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 16|0; + $1 = sp + 4|0; + $pVm = sp + 8|0; + $pOut = sp + 12|0; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $i; + $2 = HEAP32[$0>>2]|0; + HEAP32[$pVm>>2] = $2; + $3 = HEAP32[$pVm>>2]|0; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = HEAP32[$pVm>>2]|0; + $6 = (($5) + 20|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$pVm>>2]|0; + $11 = (($10) + 84|0); + $12 = HEAP16[$11>>1]|0; + $13 = $12&65535; + $14 = ($9|0)<($13|0); + $15 = HEAP32[$1>>2]|0; + $16 = ($15|0)>=(0); + $or$cond = $14 & $16; + if ($or$cond) { + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$pVm>>2]|0; + $19 = (($18) + 20|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + (($17*40)|0)|0); + HEAP32[$pOut>>2] = $21; + $30 = HEAP32[$pOut>>2]|0; + STACKTOP = sp;return ($30|0); + } + } + } + $22 = HEAP32[$pVm>>2]|0; + $23 = ($22|0)!=(0|0); + if ($23) { + $24 = HEAP32[$pVm>>2]|0; + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)!=(0|0); + if ($26) { + $27 = HEAP32[$pVm>>2]|0; + $28 = HEAP32[$27>>2]|0; + _sqlite3Error($28,25,0,$vararg_buffer); + } + } + $29 = (_columnNullValue()|0); + HEAP32[$pOut>>2] = $29; + $30 = HEAP32[$pOut>>2]|0; + STACKTOP = sp;return ($30|0); +} +function _columnMallocFailure($pStmt) { + $pStmt = $pStmt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pStmt; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + $2 = HEAP32[$p>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + $4 = HEAP32[$p>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$p>>2]|0; + $7 = (($6) + 80|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3ApiExit($5,$8)|0); + $10 = HEAP32[$p>>2]|0; + $11 = (($10) + 80|0); + HEAP32[$11>>2] = $9; + STACKTOP = sp;return; +} +function _sqlite3_column_bytes($pStmt,$i) { + $pStmt = $pStmt|0; + $i = $i|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $val = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $val = sp + 4|0; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $i; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_columnMem($2,$3)|0); + $5 = (_sqlite3_value_bytes($4)|0); + HEAP32[$val>>2] = $5; + $6 = HEAP32[$0>>2]|0; + _columnMallocFailure($6); + $7 = HEAP32[$val>>2]|0; + STACKTOP = sp;return ($7|0); +} +function _sqlite3_column_double($pStmt,$i) { + $pStmt = $pStmt|0; + $i = $i|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0.0, $6 = 0, $7 = 0.0, $val = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp + 8|0; + $val = sp; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $i; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_columnMem($2,$3)|0); + $5 = (+_sqlite3_value_double($4)); + HEAPF64[$val>>3] = $5; + $6 = HEAP32[$0>>2]|0; + _columnMallocFailure($6); + $7 = +HEAPF64[$val>>3]; + STACKTOP = sp;return (+$7); +} +function _sqlite3_column_int($pStmt,$i) { + $pStmt = $pStmt|0; + $i = $i|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $val = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $val = sp + 4|0; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $i; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_columnMem($2,$3)|0); + $5 = (_sqlite3_value_int($4)|0); + HEAP32[$val>>2] = $5; + $6 = HEAP32[$0>>2]|0; + _columnMallocFailure($6); + $7 = HEAP32[$val>>2]|0; + STACKTOP = sp;return ($7|0); +} +function _sqlite3_column_int64($pStmt,$i) { + $pStmt = $pStmt|0; + $i = $i|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $val = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp + 8|0; + $val = sp; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $i; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_columnMem($2,$3)|0); + $5 = (_sqlite3_value_int64($4)|0); + $6 = tempRet0; + $7 = $val; + $8 = $7; + HEAP32[$8>>2] = $5; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = $6; + $11 = HEAP32[$0>>2]|0; + _columnMallocFailure($11); + $12 = $val; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = (($12) + 4)|0; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + tempRet0 = $17; + STACKTOP = sp;return ($14|0); +} +function _sqlite3_column_text($pStmt,$i) { + $pStmt = $pStmt|0; + $i = $i|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $val = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $val = sp + 4|0; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $i; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_columnMem($2,$3)|0); + $5 = (_sqlite3_value_text($4)|0); + HEAP32[$val>>2] = $5; + $6 = HEAP32[$0>>2]|0; + _columnMallocFailure($6); + $7 = HEAP32[$val>>2]|0; + STACKTOP = sp;return ($7|0); +} +function _sqlite3_column_value($pStmt,$i) { + $pStmt = $pStmt|0; + $i = $i|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pOut = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pOut = sp + 4|0; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $i; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_columnMem($2,$3)|0); + HEAP32[$pOut>>2] = $4; + $5 = HEAP32[$pOut>>2]|0; + $6 = (($5) + 28|0); + $7 = HEAP16[$6>>1]|0; + $8 = $7&65535; + $9 = $8 & 2048; + $10 = ($9|0)!=(0); + if (!($10)) { + $23 = HEAP32[$0>>2]|0; + _columnMallocFailure($23); + $24 = HEAP32[$pOut>>2]|0; + STACKTOP = sp;return ($24|0); + } + $11 = HEAP32[$pOut>>2]|0; + $12 = (($11) + 28|0); + $13 = HEAP16[$12>>1]|0; + $14 = $13&65535; + $15 = $14 & -2049; + $16 = $15&65535; + HEAP16[$12>>1] = $16; + $17 = HEAP32[$pOut>>2]|0; + $18 = (($17) + 28|0); + $19 = HEAP16[$18>>1]|0; + $20 = $19&65535; + $21 = $20 | 4096; + $22 = $21&65535; + HEAP16[$18>>1] = $22; + $23 = HEAP32[$0>>2]|0; + _columnMallocFailure($23); + $24 = HEAP32[$pOut>>2]|0; + STACKTOP = sp;return ($24|0); +} +function _sqlite3_column_type($pStmt,$i) { + $pStmt = $pStmt|0; + $i = $i|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $iType = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $iType = sp + 4|0; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $i; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_columnMem($2,$3)|0); + $5 = (_sqlite3_value_type($4)|0); + HEAP32[$iType>>2] = $5; + $6 = HEAP32[$0>>2]|0; + _columnMallocFailure($6); + $7 = HEAP32[$iType>>2]|0; + STACKTOP = sp;return ($7|0); +} +function _sqlite3_column_name($pStmt,$N) { + $pStmt = $pStmt|0; + $N = $N|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $N; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_columnName($2,$3,40,0)|0); + STACKTOP = sp;return ($4|0); +} +function _columnName($pStmt,$N,$xFunc,$useType) { + $pStmt = $pStmt|0; + $N = $N|0; + $xFunc = $xFunc|0; + $useType = $useType|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $n = 0, $or$cond = 0, $p = 0, $ret = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $ret = sp + 12|0; + $p = sp + 16|0; + $n = sp + 20|0; + $db = sp + 24|0; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $N; + HEAP32[$2>>2] = $xFunc; + HEAP32[$3>>2] = $useType; + HEAP32[$ret>>2] = 0; + $4 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $4; + $5 = HEAP32[$p>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = (_sqlite3_column_count($7)|0); + HEAP32[$n>>2] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$n>>2]|0; + $11 = ($9|0)<($10|0); + $12 = HEAP32[$1>>2]|0; + $13 = ($12|0)>=(0); + $or$cond = $11 & $13; + if (!($or$cond)) { + $32 = HEAP32[$ret>>2]|0; + STACKTOP = sp;return ($32|0); + } + $14 = HEAP32[$3>>2]|0; + $15 = HEAP32[$n>>2]|0; + $16 = Math_imul($14, $15)|0; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + ($16))|0; + HEAP32[$1>>2] = $18; + $19 = HEAP32[$2>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$p>>2]|0; + $22 = (($21) + 16|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + (($20*40)|0)|0); + $25 = (FUNCTION_TABLE_ii[$19 & 63]($24)|0); + HEAP32[$ret>>2] = $25; + $26 = HEAP32[$db>>2]|0; + $27 = (($26) + 64|0); + $28 = HEAP8[$27>>0]|0; + $29 = ($28<<24>>24)!=(0); + if (!($29)) { + $32 = HEAP32[$ret>>2]|0; + STACKTOP = sp;return ($32|0); + } + $30 = HEAP32[$db>>2]|0; + $31 = (($30) + 64|0); + HEAP8[$31>>0] = 0; + HEAP32[$ret>>2] = 0; + $32 = HEAP32[$ret>>2]|0; + STACKTOP = sp;return ($32|0); +} +function _sqlite3_bind_blob($pStmt,$i,$zData,$nData,$xDel) { + $pStmt = $pStmt|0; + $i = $i|0; + $zData = $zData|0; + $nData = $nData|0; + $xDel = $xDel|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $i; + HEAP32[$2>>2] = $zData; + HEAP32[$3>>2] = $nData; + HEAP32[$4>>2] = $xDel; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$3>>2]|0; + $9 = HEAP32[$4>>2]|0; + $10 = (_bindText($5,$6,$7,$8,$9,0)|0); + STACKTOP = sp;return ($10|0); +} +function _bindText($pStmt,$i,$zData,$nData,$xDel,$encoding) { + $pStmt = $pStmt|0; + $i = $i|0; + $zData = $zData|0; + $nData = $nData|0; + $xDel = $xDel|0; + $encoding = $encoding|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $p = 0, $pVar = 0, $rc = 0; + var $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 28|0; + $1 = sp + 24|0; + $2 = sp + 20|0; + $3 = sp + 12|0; + $4 = sp + 32|0; + $5 = sp + 36|0; + $p = sp + 4|0; + $pVar = sp + 16|0; + $rc = sp + 8|0; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $i; + HEAP32[$2>>2] = $zData; + HEAP32[$3>>2] = $nData; + HEAP32[$4>>2] = $xDel; + HEAP8[$5>>0] = $encoding; + $6 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $6; + $7 = HEAP32[$p>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (_vdbeUnbind($7,$8)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + $11 = ($10|0)==(0); + if (!($11)) { + $49 = HEAP32[$4>>2]|0; + $50 = ($49|0)!=(0|0); + $51 = HEAP32[$4>>2]|0; + $52 = ($51|0)!=((-1)|0); + $or$cond = $50 & $52; + if (!($or$cond)) { + $55 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($55|0); + } + $53 = HEAP32[$4>>2]|0; + $54 = HEAP32[$2>>2]|0; + FUNCTION_TABLE_vi[$53 & 31]($54); + $55 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($55|0); + } + $12 = HEAP32[$2>>2]|0; + $13 = ($12|0)!=(0|0); + if (!($13)) { + $55 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($55|0); + } + $14 = HEAP32[$1>>2]|0; + $15 = (($14) - 1)|0; + $16 = HEAP32[$p>>2]|0; + $17 = (($16) + 60|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + (($15*40)|0)|0); + HEAP32[$pVar>>2] = $19; + $20 = HEAP32[$pVar>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = HEAP32[$3>>2]|0; + $23 = HEAP8[$5>>0]|0; + $24 = HEAP32[$4>>2]|0; + $25 = (_sqlite3VdbeMemSetStr($20,$21,$22,$23,$24)|0); + HEAP32[$rc>>2] = $25; + $26 = HEAP32[$rc>>2]|0; + $27 = ($26|0)==(0); + if ($27) { + $28 = HEAP8[$5>>0]|0; + $29 = $28&255; + $30 = ($29|0)!=(0); + if ($30) { + $31 = HEAP32[$pVar>>2]|0; + $32 = HEAP32[$p>>2]|0; + $33 = HEAP32[$32>>2]|0; + $34 = (($33) + 16|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + 12|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + 77|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39&255; + $41 = (_sqlite3VdbeChangeEncoding($31,$40)|0); + HEAP32[$rc>>2] = $41; + } + } + $42 = HEAP32[$p>>2]|0; + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$rc>>2]|0; + _sqlite3Error($43,$44,0,$vararg_buffer); + $45 = HEAP32[$p>>2]|0; + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$rc>>2]|0; + $48 = (_sqlite3ApiExit($46,$47)|0); + HEAP32[$rc>>2] = $48; + $55 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($55|0); +} +function _sqlite3_bind_double($pStmt,$i,$rValue) { + $pStmt = $pStmt|0; + $i = $i|0; + $rValue = +$rValue; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0.0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $rc = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp + 8|0; + $2 = sp; + $rc = sp + 12|0; + $p = sp + 16|0; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $i; + HEAPF64[$2>>3] = $rValue; + $3 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $3; + $4 = HEAP32[$p>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (_vdbeUnbind($4,$5)|0); + HEAP32[$rc>>2] = $6; + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)==(0); + if (!($8)) { + $16 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($16|0); + } + $9 = HEAP32[$1>>2]|0; + $10 = (($9) - 1)|0; + $11 = HEAP32[$p>>2]|0; + $12 = (($11) + 60|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + (($10*40)|0)|0); + $15 = +HEAPF64[$2>>3]; + _sqlite3VdbeMemSetDouble($14,$15); + $16 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($16|0); +} +function _vdbeUnbind($p,$i) { + $p = $p|0; + $i = $i|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $pVar = 0, $vararg_buffer5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer5 = sp; + $0 = sp + 16|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $pVar = sp + 12|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $i; + $3 = HEAP32[$1>>2]|0; + $4 = (_vdbeSafetyNotNull($3)|0); + $5 = ($4|0)!=(0); + if ($5) { + $6 = (_sqlite3MisuseError(66775)|0); + HEAP32[$0>>2] = $6; + $68 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($68|0); + } + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 40|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(-1108210269); + if (!($10)) { + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 76|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)>=(0); + if (!($14)) { + $21 = HEAP32[$2>>2]|0; + $22 = ($21|0)<(1); + if (!($22)) { + $23 = HEAP32[$2>>2]|0; + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 68|0); + $26 = HEAP16[$25>>1]|0; + $27 = $26 << 16 >> 16; + $28 = ($23|0)>($27|0); + if (!($28)) { + $31 = HEAP32[$2>>2]|0; + $32 = (($31) + -1)|0; + HEAP32[$2>>2] = $32; + $33 = HEAP32[$2>>2]|0; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 60|0); + $36 = HEAP32[$35>>2]|0; + $37 = (($36) + (($33*40)|0)|0); + HEAP32[$pVar>>2] = $37; + $38 = HEAP32[$pVar>>2]|0; + _sqlite3VdbeMemRelease($38); + $39 = HEAP32[$pVar>>2]|0; + $40 = (($39) + 28|0); + HEAP16[$40>>1] = 1; + $41 = HEAP32[$1>>2]|0; + $42 = HEAP32[$41>>2]|0; + _sqlite3Error($42,0,0,$vararg_buffer5); + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 88|0); + $45 = HEAP16[$44>>1]|0; + $46 = ($45&65535) >>> 10; + $47 = $46 & 1; + $48 = $47&65535; + $49 = ($48|0)!=(0); + do { + if ($49) { + $50 = HEAP32[$2>>2]|0; + $51 = ($50|0)<(32); + if ($51) { + $52 = HEAP32[$1>>2]|0; + $53 = (($52) + 188|0); + $54 = HEAP32[$53>>2]|0; + $55 = HEAP32[$2>>2]|0; + $56 = 1 << $55; + $57 = $54 & $56; + $58 = ($57|0)!=(0); + if (!($58)) { + label = 12; + } + } else { + label = 12; + } + if ((label|0) == 12) { + $59 = HEAP32[$1>>2]|0; + $60 = (($59) + 188|0); + $61 = HEAP32[$60>>2]|0; + $62 = ($61|0)==(-1); + if (!($62)) { + break; + } + } + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + 88|0); + $65 = HEAP16[$64>>1]|0; + $66 = $65 & -33; + $67 = $66 | 32; + HEAP16[$64>>1] = $67; + } + } while(0); + HEAP32[$0>>2] = 0; + $68 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($68|0); + } + } + $29 = HEAP32[$1>>2]|0; + $30 = HEAP32[$29>>2]|0; + _sqlite3Error($30,25,0,$vararg_buffer5); + HEAP32[$0>>2] = 25; + $68 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($68|0); + } + } + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$15>>2]|0; + _sqlite3Error($16,21,0,$vararg_buffer5); + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 168|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$vararg_buffer5>>2] = $19; + _sqlite3_log(21,37664,$vararg_buffer5); + $20 = (_sqlite3MisuseError(66783)|0); + HEAP32[$0>>2] = $20; + $68 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($68|0); +} +function _sqlite3_bind_int($p,$i,$iValue) { + $p = $p|0; + $i = $i|0; + $iValue = $iValue|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $i; + HEAP32[$2>>2] = $iValue; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = ($5|0)<(0); + $7 = $6 << 31 >> 31; + $8 = (_sqlite3_bind_int64($3,$4,$5,$7)|0); + STACKTOP = sp;return ($8|0); +} +function _sqlite3_bind_int64($pStmt,$i,$0,$1) { + $pStmt = $pStmt|0; + $i = $i|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 20|0; + $3 = sp + 8|0; + $4 = sp; + $rc = sp + 12|0; + $p = sp + 16|0; + HEAP32[$2>>2] = $pStmt; + HEAP32[$3>>2] = $i; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + $9 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $9; + $10 = HEAP32[$p>>2]|0; + $11 = HEAP32[$3>>2]|0; + $12 = (_vdbeUnbind($10,$11)|0); + HEAP32[$rc>>2] = $12; + $13 = HEAP32[$rc>>2]|0; + $14 = ($13|0)==(0); + if (!($14)) { + $27 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($27|0); + } + $15 = HEAP32[$3>>2]|0; + $16 = (($15) - 1)|0; + $17 = HEAP32[$p>>2]|0; + $18 = (($17) + 60|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + (($16*40)|0)|0); + $21 = $4; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (($21) + 4)|0; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + _sqlite3VdbeMemSetInt64($20,$23,$26); + $27 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($27|0); +} +function _sqlite3_bind_null($pStmt,$i) { + $pStmt = $pStmt|0; + $i = $i|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $p = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $rc = sp + 4|0; + $p = sp + 8|0; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $i; + $2 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $2; + $3 = HEAP32[$p>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (_vdbeUnbind($3,$4)|0); + HEAP32[$rc>>2] = $5; + $6 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($6|0); +} +function _sqlite3_bind_text($pStmt,$i,$zData,$nData,$xDel) { + $pStmt = $pStmt|0; + $i = $i|0; + $zData = $zData|0; + $nData = $nData|0; + $xDel = $xDel|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $i; + HEAP32[$2>>2] = $zData; + HEAP32[$3>>2] = $nData; + HEAP32[$4>>2] = $xDel; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$3>>2]|0; + $9 = HEAP32[$4>>2]|0; + $10 = (_bindText($5,$6,$7,$8,$9,1)|0); + STACKTOP = sp;return ($10|0); +} +function _sqlite3_bind_value($pStmt,$i,$pValue) { + $pStmt = $pStmt|0; + $i = $i|0; + $pValue = $pValue|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $i; + HEAP32[$2>>2] = $pValue; + $3 = HEAP32[$2>>2]|0; + $4 = (_sqlite3_value_type($3)|0); + if ((($4|0) == 3)) { + $40 = HEAP32[$0>>2]|0; + $41 = HEAP32[$1>>2]|0; + $42 = HEAP32[$2>>2]|0; + $43 = (($42) + 4|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$2>>2]|0; + $46 = (($45) + 24|0); + $47 = HEAP32[$46>>2]|0; + $48 = HEAP32[$2>>2]|0; + $49 = (($48) + 30|0); + $50 = HEAP8[$49>>0]|0; + $51 = (_bindText($40,$41,$44,$47,(-1),$50)|0); + HEAP32[$rc>>2] = $51; + $55 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($55|0); + } else if ((($4|0) == 1)) { + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 16|0); + $9 = $8; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = (($9) + 4)|0; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = (_sqlite3_bind_int64($5,$6,$11,$14)|0); + HEAP32[$rc>>2] = $15; + $55 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($55|0); + } else if ((($4|0) == 4)) { + $22 = HEAP32[$2>>2]|0; + $23 = (($22) + 28|0); + $24 = HEAP16[$23>>1]|0; + $25 = $24&65535; + $26 = $25 & 16384; + $27 = ($26|0)!=(0); + $28 = HEAP32[$0>>2]|0; + $29 = HEAP32[$1>>2]|0; + $30 = HEAP32[$2>>2]|0; + if ($27) { + $31 = (($30) + 16|0); + $32 = HEAP32[$31>>2]|0; + $33 = (_sqlite3_bind_zeroblob($28,$29,$32)|0); + HEAP32[$rc>>2] = $33; + $55 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($55|0); + } else { + $34 = (($30) + 4|0); + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$2>>2]|0; + $37 = (($36) + 24|0); + $38 = HEAP32[$37>>2]|0; + $39 = (_sqlite3_bind_blob($28,$29,$35,$38,(-1))|0); + HEAP32[$rc>>2] = $39; + $55 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($55|0); + } + } else if ((($4|0) == 2)) { + $16 = HEAP32[$0>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = (($18) + 8|0); + $20 = +HEAPF64[$19>>3]; + $21 = (_sqlite3_bind_double($16,$17,$20)|0); + HEAP32[$rc>>2] = $21; + $55 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($55|0); + } else { + $52 = HEAP32[$0>>2]|0; + $53 = HEAP32[$1>>2]|0; + $54 = (_sqlite3_bind_null($52,$53)|0); + HEAP32[$rc>>2] = $54; + $55 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($55|0); + } + return 0|0; +} +function _sqlite3_bind_zeroblob($pStmt,$i,$n) { + $pStmt = $pStmt|0; + $i = $i|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $rc = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $p = sp + 12|0; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $i; + HEAP32[$2>>2] = $n; + $3 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $3; + $4 = HEAP32[$p>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (_vdbeUnbind($4,$5)|0); + HEAP32[$rc>>2] = $6; + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)==(0); + if (!($8)) { + $16 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($16|0); + } + $9 = HEAP32[$1>>2]|0; + $10 = (($9) - 1)|0; + $11 = HEAP32[$p>>2]|0; + $12 = (($11) + 60|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + (($10*40)|0)|0); + $15 = HEAP32[$2>>2]|0; + _sqlite3VdbeMemSetZeroBlob($14,$15); + $16 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($16|0); +} +function _sqlite3_bind_parameter_count($pStmt) { + $pStmt = $pStmt|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pStmt; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + $2 = HEAP32[$p>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $8 = 0; + STACKTOP = sp;return ($8|0); + } + $4 = HEAP32[$p>>2]|0; + $5 = (($4) + 68|0); + $6 = HEAP16[$5>>1]|0; + $7 = $6 << 16 >> 16; + $8 = $7; + STACKTOP = sp;return ($8|0); +} +function _sqlite3_bind_parameter_index($pStmt,$zName) { + $pStmt = $pStmt|0; + $zName = $zName|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $zName; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (_sqlite3Strlen30($4)|0); + $6 = (_sqlite3VdbeParameterIndex($2,$3,$5)|0); + STACKTOP = sp;return ($6|0); +} +function _sqlite3VdbeParameterIndex($p,$zName,$nName) { + $p = $p|0; + $zName = $zName|0; + $nName = $nName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $z = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $i = sp + 12|0; + $z = sp + 16|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $zName; + HEAP32[$3>>2] = $nName; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)==(0|0); + if ($5) { + HEAP32[$0>>2] = 0; + $37 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($37|0); + } + $6 = HEAP32[$2>>2]|0; + $7 = ($6|0)!=(0|0); + L5: do { + if ($7) { + HEAP32[$i>>2] = 0; + while(1) { + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 70|0); + $11 = HEAP16[$10>>1]|0; + $12 = $11 << 16 >> 16; + $13 = ($8|0)<($12|0); + if (!($13)) { + break L5; + } + $14 = HEAP32[$i>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 64|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + ($14<<2)|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$z>>2] = $19; + $20 = HEAP32[$z>>2]|0; + $21 = ($20|0)!=(0|0); + if ($21) { + $22 = HEAP32[$z>>2]|0; + $23 = HEAP32[$2>>2]|0; + $24 = HEAP32[$3>>2]|0; + $25 = (_strncmp($22,$23,$24)|0); + $26 = ($25|0)==(0); + if ($26) { + $27 = HEAP32[$3>>2]|0; + $28 = HEAP32[$z>>2]|0; + $29 = (($28) + ($27)|0); + $30 = HEAP8[$29>>0]|0; + $31 = $30 << 24 >> 24; + $32 = ($31|0)==(0); + if ($32) { + break; + } + } + } + $35 = HEAP32[$i>>2]|0; + $36 = (($35) + 1)|0; + HEAP32[$i>>2] = $36; + } + $33 = HEAP32[$i>>2]|0; + $34 = (($33) + 1)|0; + HEAP32[$0>>2] = $34; + $37 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($37|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $37 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($37|0); +} +function _sqlite3TransferBindings($pFromStmt,$pToStmt) { + $pFromStmt = $pFromStmt|0; + $pToStmt = $pToStmt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $i = 0, $pFrom = 0, $pTo = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $pFrom = sp + 4|0; + $pTo = sp + 8|0; + $i = sp + 12|0; + HEAP32[$0>>2] = $pFromStmt; + HEAP32[$1>>2] = $pToStmt; + $2 = HEAP32[$0>>2]|0; + HEAP32[$pFrom>>2] = $2; + $3 = HEAP32[$1>>2]|0; + HEAP32[$pTo>>2] = $3; + HEAP32[$i>>2] = 0; + while(1) { + $4 = HEAP32[$i>>2]|0; + $5 = HEAP32[$pFrom>>2]|0; + $6 = (($5) + 68|0); + $7 = HEAP16[$6>>1]|0; + $8 = $7 << 16 >> 16; + $9 = ($4|0)<($8|0); + if (!($9)) { + break; + } + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$pTo>>2]|0; + $12 = (($11) + 60|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + (($10*40)|0)|0); + $15 = HEAP32[$i>>2]|0; + $16 = HEAP32[$pFrom>>2]|0; + $17 = (($16) + 60|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + (($15*40)|0)|0); + _sqlite3VdbeMemMove($14,$19); + $20 = HEAP32[$i>>2]|0; + $21 = (($20) + 1)|0; + HEAP32[$i>>2] = $21; + } + STACKTOP = sp;return 0; +} +function _sqlite3_value_numeric_type($pVal) { + $pVal = $pVal|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $eType = 0, $pMem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $eType = sp; + $pMem = sp + 4|0; + HEAP32[$0>>2] = $pVal; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3_value_type($1)|0); + HEAP32[$eType>>2] = $2; + $3 = HEAP32[$eType>>2]|0; + $4 = ($3|0)==(3); + if (!($4)) { + $9 = HEAP32[$eType>>2]|0; + STACKTOP = sp;return ($9|0); + } + $5 = HEAP32[$0>>2]|0; + HEAP32[$pMem>>2] = $5; + $6 = HEAP32[$pMem>>2]|0; + _applyNumericAffinity($6); + $7 = HEAP32[$0>>2]|0; + $8 = (_sqlite3_value_type($7)|0); + HEAP32[$eType>>2] = $8; + $9 = HEAP32[$eType>>2]|0; + STACKTOP = sp;return ($9|0); +} +function _applyNumericAffinity($pRec) { + $pRec = $pRec|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0.0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; + var $9 = 0, $enc = 0, $iValue = 0, $rValue = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $rValue = sp; + $iValue = sp + 8|0; + $enc = sp + 20|0; + HEAP32[$0>>2] = $pRec; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 28|0); + $3 = HEAP16[$2>>1]|0; + $4 = $3&65535; + $5 = $4 & 12; + $6 = ($5|0)==(0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 30|0); + $9 = HEAP8[$8>>0]|0; + HEAP8[$enc>>0] = $9; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 28|0); + $12 = HEAP16[$11>>1]|0; + $13 = $12&65535; + $14 = $13 & 2; + $15 = ($14|0)==(0); + if ($15) { + STACKTOP = sp;return; + } + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 24|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP8[$enc>>0]|0; + $23 = (_sqlite3AtoF($18,$rValue,$21,$22)|0); + $24 = ($23|0)==(0); + if ($24) { + STACKTOP = sp;return; + } + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 4|0); + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 24|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP8[$enc>>0]|0; + $32 = (_sqlite3Atoi64($27,$iValue,$30,$31)|0); + $33 = (0)==($32|0); + if ($33) { + $34 = $iValue; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$0>>2]|0; + $41 = (($40) + 16|0); + $42 = $41; + $43 = $42; + HEAP32[$43>>2] = $36; + $44 = (($42) + 4)|0; + $45 = $44; + HEAP32[$45>>2] = $39; + $46 = HEAP32[$0>>2]|0; + $47 = (($46) + 28|0); + $48 = HEAP16[$47>>1]|0; + $49 = $48&65535; + $50 = $49 | 4; + $51 = $50&65535; + HEAP16[$47>>1] = $51; + STACKTOP = sp;return; + } else { + $52 = +HEAPF64[$rValue>>3]; + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 8|0); + HEAPF64[$54>>3] = $52; + $55 = HEAP32[$0>>2]|0; + $56 = (($55) + 28|0); + $57 = HEAP16[$56>>1]|0; + $58 = $57&65535; + $59 = $58 | 8; + $60 = $59&65535; + HEAP16[$56>>1] = $60; + STACKTOP = sp;return; + } +} +function _sqlite3_blob_open($db,$zDb,$zTable,$zColumn,$0,$1,$flags,$ppBlob) { + $db = $db|0; + $zDb = $zDb|0; + $zTable = $zTable|0; + $zColumn = $zColumn|0; + $0 = $0|0; + $1 = $1|0; + $flags = $flags|0; + $ppBlob = $ppBlob|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; + var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; + var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; + var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0; + var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0; + var $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0; + var $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0; + var $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0; + var $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0; + var $316 = 0, $317 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; + var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; + var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; + var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iCol = 0, $iDb = 0, $j = 0, $j1 = 0; + var $nAttempt = 0, $pBlob = 0, $pFKey = 0, $pIdx = 0, $pParse = 0, $pTab = 0, $rc = 0, $v = 0, $vararg_buffer13 = 0, $zErr = 0, $zFault = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $vararg_buffer13 = sp + 8|0; + $2 = sp + 84|0; + $3 = sp + 80|0; + $4 = sp + 76|0; + $5 = sp + 72|0; + $6 = sp; + $7 = sp + 68|0; + $8 = sp + 64|0; + $nAttempt = sp + 60|0; + $iCol = sp + 56|0; + $rc = sp + 52|0; + $zErr = sp + 88|0; + $pTab = sp + 24|0; + $pParse = sp + 12|0; + $pBlob = sp + 16|0; + $zFault = sp + 20|0; + $pIdx = sp + 28|0; + $pFKey = sp + 36|0; + $j = sp + 40|0; + $j1 = sp + 44|0; + $v = sp + 32|0; + $iDb = sp + 48|0; + HEAP32[$2>>2] = $db; + HEAP32[$3>>2] = $zDb; + HEAP32[$4>>2] = $zTable; + HEAP32[$5>>2] = $zColumn; + $9 = $6; + $10 = $9; + HEAP32[$10>>2] = $0; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = $1; + HEAP32[$7>>2] = $flags; + HEAP32[$8>>2] = $ppBlob; + HEAP32[$nAttempt>>2] = 0; + HEAP32[$rc>>2] = 0; + HEAP32[$zErr>>2] = 0; + HEAP32[$pParse>>2] = 0; + HEAP32[$pBlob>>2] = 0; + $13 = HEAP32[$7>>2]|0; + $14 = ($13|0)!=(0); + $15 = $14 ^ 1; + $16 = $15 ^ 1; + $17 = $16&1; + HEAP32[$7>>2] = $17; + $18 = HEAP32[$8>>2]|0; + HEAP32[$18>>2] = 0; + $19 = HEAP32[$2>>2]|0; + $20 = (_sqlite3DbMallocZero($19,28)|0); + HEAP32[$pBlob>>2] = $20; + $21 = HEAP32[$pBlob>>2]|0; + $22 = ($21|0)!=(0|0); + L1: do { + if ($22) { + $23 = HEAP32[$2>>2]|0; + $24 = (_sqlite3DbMallocRaw($23,536)|0); + HEAP32[$pParse>>2] = $24; + $25 = HEAP32[$pParse>>2]|0; + $26 = ($25|0)!=(0|0); + if ($26) { + while(1) { + $27 = HEAP32[$pParse>>2]|0; + _memset(($27|0),0,536)|0; + $28 = HEAP32[$2>>2]|0; + $29 = HEAP32[$pParse>>2]|0; + HEAP32[$29>>2] = $28; + $30 = HEAP32[$2>>2]|0; + $31 = HEAP32[$zErr>>2]|0; + _sqlite3DbFree($30,$31); + HEAP32[$zErr>>2] = 0; + $32 = HEAP32[$2>>2]|0; + _sqlite3BtreeEnterAll($32); + $33 = HEAP32[$pParse>>2]|0; + $34 = HEAP32[$4>>2]|0; + $35 = HEAP32[$3>>2]|0; + $36 = (_sqlite3LocateTable($33,0,$34,$35)|0); + HEAP32[$pTab>>2] = $36; + $37 = HEAP32[$pTab>>2]|0; + $38 = ($37|0)!=(0|0); + if ($38) { + $39 = HEAP32[$pTab>>2]|0; + $40 = (($39) + 44|0); + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = $42 & 16; + $44 = ($43|0)!=(0); + if ($44) { + HEAP32[$pTab>>2] = 0; + $45 = HEAP32[$pParse>>2]|0; + $46 = HEAP32[$4>>2]|0; + HEAP32[$vararg_buffer13>>2] = $46; + _sqlite3ErrorMsg($45,1584,$vararg_buffer13); + } + } + $47 = HEAP32[$pTab>>2]|0; + $48 = ($47|0)!=(0|0); + if ($48) { + $49 = HEAP32[$pTab>>2]|0; + $50 = (($49) + 44|0); + $51 = HEAP8[$50>>0]|0; + $52 = $51&255; + $53 = $52 & 32; + $54 = ($53|0)==(0); + if (!($54)) { + HEAP32[$pTab>>2] = 0; + $55 = HEAP32[$pParse>>2]|0; + $56 = HEAP32[$4>>2]|0; + HEAP32[$vararg_buffer13>>2] = $56; + _sqlite3ErrorMsg($55,1616,$vararg_buffer13); + } + } + $57 = HEAP32[$pTab>>2]|0; + $58 = ($57|0)!=(0|0); + if ($58) { + $59 = HEAP32[$pTab>>2]|0; + $60 = (($59) + 12|0); + $61 = HEAP32[$60>>2]|0; + $62 = ($61|0)!=(0|0); + if ($62) { + HEAP32[$pTab>>2] = 0; + $63 = HEAP32[$pParse>>2]|0; + $64 = HEAP32[$4>>2]|0; + HEAP32[$vararg_buffer13>>2] = $64; + _sqlite3ErrorMsg($63,1656,$vararg_buffer13); + } + } + $65 = HEAP32[$pTab>>2]|0; + $66 = ($65|0)!=(0|0); + if (!($66)) { + label = 13; + break; + } + HEAP32[$iCol>>2] = 0; + while(1) { + $78 = HEAP32[$iCol>>2]|0; + $79 = HEAP32[$pTab>>2]|0; + $80 = (($79) + 38|0); + $81 = HEAP16[$80>>1]|0; + $82 = $81 << 16 >> 16; + $83 = ($78|0)<($82|0); + if (!($83)) { + break; + } + $84 = HEAP32[$iCol>>2]|0; + $85 = HEAP32[$pTab>>2]|0; + $86 = (($85) + 4|0); + $87 = HEAP32[$86>>2]|0; + $88 = (($87) + (($84*24)|0)|0); + $89 = HEAP32[$88>>2]|0; + $90 = HEAP32[$5>>2]|0; + $91 = (_sqlite3_stricmp($89,$90)|0); + $92 = ($91|0)==(0); + if ($92) { + break; + } + $93 = HEAP32[$iCol>>2]|0; + $94 = (($93) + 1)|0; + HEAP32[$iCol>>2] = $94; + } + $95 = HEAP32[$iCol>>2]|0; + $96 = HEAP32[$pTab>>2]|0; + $97 = (($96) + 38|0); + $98 = HEAP16[$97>>1]|0; + $99 = $98 << 16 >> 16; + $100 = ($95|0)==($99|0); + if ($100) { + label = 21; + break; + } + $106 = HEAP32[$7>>2]|0; + $107 = ($106|0)!=(0); + if ($107) { + HEAP32[$zFault>>2] = 0; + $108 = HEAP32[$2>>2]|0; + $109 = (($108) + 24|0); + $110 = HEAP32[$109>>2]|0; + $111 = $110 & 524288; + $112 = ($111|0)!=(0); + L26: do { + if ($112) { + $113 = HEAP32[$pTab>>2]|0; + $114 = (($113) + 16|0); + $115 = HEAP32[$114>>2]|0; + HEAP32[$pFKey>>2] = $115; + while(1) { + $116 = HEAP32[$pFKey>>2]|0; + $117 = ($116|0)!=(0|0); + if (!($117)) { + break L26; + } + HEAP32[$j>>2] = 0; + while(1) { + $118 = HEAP32[$j>>2]|0; + $119 = HEAP32[$pFKey>>2]|0; + $120 = (($119) + 20|0); + $121 = HEAP32[$120>>2]|0; + $122 = ($118|0)<($121|0); + if (!($122)) { + break; + } + $123 = HEAP32[$j>>2]|0; + $124 = HEAP32[$pFKey>>2]|0; + $125 = (($124) + 36|0); + $126 = (($125) + ($123<<3)|0); + $127 = HEAP32[$126>>2]|0; + $128 = HEAP32[$iCol>>2]|0; + $129 = ($127|0)==($128|0); + if ($129) { + HEAP32[$zFault>>2] = 1704; + } + $130 = HEAP32[$j>>2]|0; + $131 = (($130) + 1)|0; + HEAP32[$j>>2] = $131; + } + $132 = HEAP32[$pFKey>>2]|0; + $133 = (($132) + 4|0); + $134 = HEAP32[$133>>2]|0; + HEAP32[$pFKey>>2] = $134; + } + } + } while(0); + $135 = HEAP32[$pTab>>2]|0; + $136 = (($135) + 8|0); + $137 = HEAP32[$136>>2]|0; + HEAP32[$pIdx>>2] = $137; + while(1) { + $138 = HEAP32[$pIdx>>2]|0; + $139 = ($138|0)!=(0|0); + if (!($139)) { + break; + } + HEAP32[$j1>>2] = 0; + while(1) { + $140 = HEAP32[$j1>>2]|0; + $141 = HEAP32[$pIdx>>2]|0; + $142 = (($141) + 50|0); + $143 = HEAP16[$142>>1]|0; + $144 = $143&65535; + $145 = ($140|0)<($144|0); + if (!($145)) { + break; + } + $146 = HEAP32[$j1>>2]|0; + $147 = HEAP32[$pIdx>>2]|0; + $148 = (($147) + 4|0); + $149 = HEAP32[$148>>2]|0; + $150 = (($149) + ($146<<1)|0); + $151 = HEAP16[$150>>1]|0; + $152 = $151 << 16 >> 16; + $153 = HEAP32[$iCol>>2]|0; + $154 = ($152|0)==($153|0); + if ($154) { + HEAP32[$zFault>>2] = 1720; + } + $155 = HEAP32[$j1>>2]|0; + $156 = (($155) + 1)|0; + HEAP32[$j1>>2] = $156; + } + $157 = HEAP32[$pIdx>>2]|0; + $158 = (($157) + 20|0); + $159 = HEAP32[$158>>2]|0; + HEAP32[$pIdx>>2] = $159; + } + $160 = HEAP32[$zFault>>2]|0; + $161 = ($160|0)!=(0|0); + if ($161) { + label = 41; + break; + } + } + $167 = HEAP32[$pParse>>2]|0; + $168 = (_sqlite3VdbeCreate($167)|0); + $169 = HEAP32[$pBlob>>2]|0; + $170 = (($169) + 20|0); + HEAP32[$170>>2] = $168; + $171 = HEAP32[$pBlob>>2]|0; + $172 = (($171) + 20|0); + $173 = HEAP32[$172>>2]|0; + $174 = ($173|0)!=(0|0); + if ($174) { + $175 = HEAP32[$pBlob>>2]|0; + $176 = (($175) + 20|0); + $177 = HEAP32[$176>>2]|0; + HEAP32[$v>>2] = $177; + $178 = HEAP32[$2>>2]|0; + $179 = HEAP32[$pTab>>2]|0; + $180 = (($179) + 68|0); + $181 = HEAP32[$180>>2]|0; + $182 = (_sqlite3SchemaToIndex($178,$181)|0); + HEAP32[$iDb>>2] = $182; + $183 = HEAP32[$v>>2]|0; + $184 = HEAP32[$iDb>>2]|0; + $185 = HEAP32[$7>>2]|0; + $186 = HEAP32[$pTab>>2]|0; + $187 = (($186) + 68|0); + $188 = HEAP32[$187>>2]|0; + $189 = HEAP32[$188>>2]|0; + $190 = HEAP32[$pTab>>2]|0; + $191 = (($190) + 68|0); + $192 = HEAP32[$191>>2]|0; + $193 = (($192) + 4|0); + $194 = HEAP32[$193>>2]|0; + (_sqlite3VdbeAddOp4Int($183,4,$184,$185,$189,$194)|0); + $195 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($195,1); + $196 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOpList($196,10,1544,0)|0); + $197 = HEAP32[$v>>2]|0; + $198 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeUsesBtree($197,$198); + $199 = HEAP32[$v>>2]|0; + $200 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeChangeP1($199,1,$200); + $201 = HEAP32[$v>>2]|0; + $202 = HEAP32[$pTab>>2]|0; + $203 = (($202) + 32|0); + $204 = HEAP32[$203>>2]|0; + _sqlite3VdbeChangeP2($201,1,$204); + $205 = HEAP32[$v>>2]|0; + $206 = HEAP32[$7>>2]|0; + _sqlite3VdbeChangeP3($205,1,$206); + $207 = HEAP32[$v>>2]|0; + $208 = HEAP32[$pTab>>2]|0; + $209 = HEAP32[$208>>2]|0; + _sqlite3VdbeChangeP4($207,1,$209,0); + $210 = HEAP32[$v>>2]|0; + $211 = HEAP32[$7>>2]|0; + $212 = (3 - ($211))|0; + _sqlite3VdbeChangeToNoop($210,$212); + $213 = HEAP32[$v>>2]|0; + $214 = HEAP32[$7>>2]|0; + $215 = (2 + ($214))|0; + $216 = HEAP32[$pTab>>2]|0; + $217 = (($216) + 32|0); + $218 = HEAP32[$217>>2]|0; + _sqlite3VdbeChangeP2($213,$215,$218); + $219 = HEAP32[$v>>2]|0; + $220 = HEAP32[$7>>2]|0; + $221 = (2 + ($220))|0; + $222 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeChangeP3($219,$221,$222); + $223 = HEAP32[$v>>2]|0; + $224 = HEAP32[$7>>2]|0; + $225 = (2 + ($224))|0; + $226 = HEAP32[$pTab>>2]|0; + $227 = (($226) + 38|0); + $228 = HEAP16[$227>>1]|0; + $229 = $228 << 16 >> 16; + $230 = (($229) + 1)|0; + $231 = $230; + _sqlite3VdbeChangeP4($223,$225,$231,-14); + $232 = HEAP32[$v>>2]|0; + $233 = HEAP32[$pTab>>2]|0; + $234 = (($233) + 38|0); + $235 = HEAP16[$234>>1]|0; + $236 = $235 << 16 >> 16; + _sqlite3VdbeChangeP2($232,6,$236); + $237 = HEAP32[$2>>2]|0; + $238 = (($237) + 64|0); + $239 = HEAP8[$238>>0]|0; + $240 = ($239<<24>>24)!=(0); + if (!($240)) { + $241 = HEAP32[$pParse>>2]|0; + $242 = (($241) + 440|0); + HEAP32[$242>>2] = 1; + $243 = HEAP32[$pParse>>2]|0; + $244 = (($243) + 72|0); + HEAP32[$244>>2] = 1; + $245 = HEAP32[$pParse>>2]|0; + $246 = (($245) + 68|0); + HEAP32[$246>>2] = 1; + $247 = HEAP32[$v>>2]|0; + $248 = HEAP32[$pParse>>2]|0; + _sqlite3VdbeMakeReady($247,$248); + } + } + $249 = HEAP32[$7>>2]|0; + $250 = HEAP32[$pBlob>>2]|0; + HEAP32[$250>>2] = $249; + $251 = HEAP32[$iCol>>2]|0; + $252 = HEAP32[$pBlob>>2]|0; + $253 = (($252) + 12|0); + HEAP32[$253>>2] = $251; + $254 = HEAP32[$2>>2]|0; + $255 = HEAP32[$pBlob>>2]|0; + $256 = (($255) + 24|0); + HEAP32[$256>>2] = $254; + $257 = HEAP32[$2>>2]|0; + $258 = (($257) + 64|0); + $259 = HEAP8[$258>>0]|0; + $260 = ($259<<24>>24)!=(0); + if ($260) { + break L1; + } + $261 = HEAP32[$pBlob>>2]|0; + $262 = (($261) + 20|0); + $263 = HEAP32[$262>>2]|0; + $264 = $6; + $265 = $264; + $266 = HEAP32[$265>>2]|0; + $267 = (($264) + 4)|0; + $268 = $267; + $269 = HEAP32[$268>>2]|0; + (_sqlite3_bind_int64($263,1,$266,$269)|0); + $270 = HEAP32[$pBlob>>2]|0; + $271 = $6; + $272 = $271; + $273 = HEAP32[$272>>2]|0; + $274 = (($271) + 4)|0; + $275 = $274; + $276 = HEAP32[$275>>2]|0; + $277 = (_blobSeekToRow($270,$273,$276,$zErr)|0); + HEAP32[$rc>>2] = $277; + $278 = HEAP32[$nAttempt>>2]|0; + $279 = (($278) + 1)|0; + HEAP32[$nAttempt>>2] = $279; + $280 = ($279|0)<(50); + if (!($280)) { + break L1; + } + $281 = HEAP32[$rc>>2]|0; + $282 = ($281|0)==(17); + if (!($282)) { + break L1; + } + } + if ((label|0) == 13) { + $67 = HEAP32[$pParse>>2]|0; + $68 = (($67) + 4|0); + $69 = HEAP32[$68>>2]|0; + $70 = ($69|0)!=(0|0); + if ($70) { + $71 = HEAP32[$2>>2]|0; + $72 = HEAP32[$zErr>>2]|0; + _sqlite3DbFree($71,$72); + $73 = HEAP32[$pParse>>2]|0; + $74 = (($73) + 4|0); + $75 = HEAP32[$74>>2]|0; + HEAP32[$zErr>>2] = $75; + $76 = HEAP32[$pParse>>2]|0; + $77 = (($76) + 4|0); + HEAP32[$77>>2] = 0; + } + HEAP32[$rc>>2] = 1; + break; + } + else if ((label|0) == 21) { + $101 = HEAP32[$2>>2]|0; + $102 = HEAP32[$zErr>>2]|0; + _sqlite3DbFree($101,$102); + $103 = HEAP32[$2>>2]|0; + $104 = HEAP32[$5>>2]|0; + HEAP32[$vararg_buffer13>>2] = $104; + $105 = (_sqlite3MPrintf($103,1680,$vararg_buffer13)|0); + HEAP32[$zErr>>2] = $105; + HEAP32[$rc>>2] = 1; + break; + } + else if ((label|0) == 41) { + $162 = HEAP32[$2>>2]|0; + $163 = HEAP32[$zErr>>2]|0; + _sqlite3DbFree($162,$163); + $164 = HEAP32[$2>>2]|0; + $165 = HEAP32[$zFault>>2]|0; + HEAP32[$vararg_buffer13>>2] = $165; + $166 = (_sqlite3MPrintf($164,1728,$vararg_buffer13)|0); + HEAP32[$zErr>>2] = $166; + HEAP32[$rc>>2] = 1; + break; + } + } + } + } while(0); + $283 = HEAP32[$rc>>2]|0; + $284 = ($283|0)==(0); + if ($284) { + $285 = HEAP32[$2>>2]|0; + $286 = (($285) + 64|0); + $287 = HEAP8[$286>>0]|0; + $288 = $287&255; + $289 = ($288|0)==(0); + if ($289) { + $290 = HEAP32[$pBlob>>2]|0; + $291 = HEAP32[$8>>2]|0; + HEAP32[$291>>2] = $290; + $303 = HEAP32[$2>>2]|0; + $304 = HEAP32[$rc>>2]|0; + $305 = HEAP32[$zErr>>2]|0; + $306 = ($305|0)!=(0|0); + $307 = $306 ? 1768 : 0; + $308 = HEAP32[$zErr>>2]|0; + HEAP32[$vararg_buffer13>>2] = $308; + _sqlite3Error($303,$304,$307,$vararg_buffer13); + $309 = HEAP32[$2>>2]|0; + $310 = HEAP32[$zErr>>2]|0; + _sqlite3DbFree($309,$310); + $311 = HEAP32[$pParse>>2]|0; + _sqlite3ParserReset($311); + $312 = HEAP32[$2>>2]|0; + $313 = HEAP32[$pParse>>2]|0; + _sqlite3DbFree($312,$313); + $314 = HEAP32[$2>>2]|0; + $315 = HEAP32[$rc>>2]|0; + $316 = (_sqlite3ApiExit($314,$315)|0); + HEAP32[$rc>>2] = $316; + $317 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($317|0); + } + } + $292 = HEAP32[$pBlob>>2]|0; + $293 = ($292|0)!=(0|0); + if ($293) { + $294 = HEAP32[$pBlob>>2]|0; + $295 = (($294) + 20|0); + $296 = HEAP32[$295>>2]|0; + $297 = ($296|0)!=(0|0); + if ($297) { + $298 = HEAP32[$pBlob>>2]|0; + $299 = (($298) + 20|0); + $300 = HEAP32[$299>>2]|0; + (_sqlite3VdbeFinalize($300)|0); + } + } + $301 = HEAP32[$2>>2]|0; + $302 = HEAP32[$pBlob>>2]|0; + _sqlite3DbFree($301,$302); + $303 = HEAP32[$2>>2]|0; + $304 = HEAP32[$rc>>2]|0; + $305 = HEAP32[$zErr>>2]|0; + $306 = ($305|0)!=(0|0); + $307 = $306 ? 1768 : 0; + $308 = HEAP32[$zErr>>2]|0; + HEAP32[$vararg_buffer13>>2] = $308; + _sqlite3Error($303,$304,$307,$vararg_buffer13); + $309 = HEAP32[$2>>2]|0; + $310 = HEAP32[$zErr>>2]|0; + _sqlite3DbFree($309,$310); + $311 = HEAP32[$pParse>>2]|0; + _sqlite3ParserReset($311); + $312 = HEAP32[$2>>2]|0; + $313 = HEAP32[$pParse>>2]|0; + _sqlite3DbFree($312,$313); + $314 = HEAP32[$2>>2]|0; + $315 = HEAP32[$rc>>2]|0; + $316 = (_sqlite3ApiExit($314,$315)|0); + HEAP32[$rc>>2] = $316; + $317 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($317|0); +} +function _sqlite3DbMallocRaw($db,$n) { + $db = $db|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $8 = 0, $9 = 0, $p = 0, $pBuf = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + $pBuf = sp + 12|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $n; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)!=(0|0); + do { + if ($4) { + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 64|0); + $7 = HEAP8[$6>>0]|0; + $8 = ($7<<24>>24)!=(0); + if ($8) { + HEAP32[$0>>2] = 0; + $76 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($76|0); + } + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 240|0); + $11 = (($10) + 2|0); + $12 = HEAP8[$11>>0]|0; + $13 = ($12<<24>>24)!=(0); + if ($13) { + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 240|0); + $17 = HEAP16[$16>>1]|0; + $18 = $17&65535; + $19 = ($14|0)>($18|0); + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 240|0); + if ($19) { + $22 = (($21) + 12|0); + $23 = (($22) + 4|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + 1)|0; + HEAP32[$23>>2] = $25; + break; + } + $26 = (($21) + 24|0); + $27 = HEAP32[$26>>2]|0; + HEAP32[$pBuf>>2] = $27; + $28 = ($27|0)==(0|0); + if ($28) { + $29 = HEAP32[$1>>2]|0; + $30 = (($29) + 240|0); + $31 = (($30) + 12|0); + $32 = (($31) + 8|0); + $33 = HEAP32[$32>>2]|0; + $34 = (($33) + 1)|0; + HEAP32[$32>>2] = $34; + break; + } + $35 = HEAP32[$pBuf>>2]|0; + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 240|0); + $39 = (($38) + 24|0); + HEAP32[$39>>2] = $36; + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 240|0); + $42 = (($41) + 4|0); + $43 = HEAP32[$42>>2]|0; + $44 = (($43) + 1)|0; + HEAP32[$42>>2] = $44; + $45 = HEAP32[$1>>2]|0; + $46 = (($45) + 240|0); + $47 = (($46) + 12|0); + $48 = HEAP32[$47>>2]|0; + $49 = (($48) + 1)|0; + HEAP32[$47>>2] = $49; + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 240|0); + $52 = (($51) + 4|0); + $53 = HEAP32[$52>>2]|0; + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 240|0); + $56 = (($55) + 8|0); + $57 = HEAP32[$56>>2]|0; + $58 = ($53|0)>($57|0); + if ($58) { + $59 = HEAP32[$1>>2]|0; + $60 = (($59) + 240|0); + $61 = (($60) + 4|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + 240|0); + $65 = (($64) + 8|0); + HEAP32[$65>>2] = $62; + } + $66 = HEAP32[$pBuf>>2]|0; + HEAP32[$0>>2] = $66; + $76 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($76|0); + } + } + } while(0); + $67 = HEAP32[$2>>2]|0; + $68 = (_sqlite3Malloc($67)|0); + HEAP32[$p>>2] = $68; + $69 = HEAP32[$p>>2]|0; + $70 = ($69|0)!=(0|0); + if (!($70)) { + $71 = HEAP32[$1>>2]|0; + $72 = ($71|0)!=(0|0); + if ($72) { + $73 = HEAP32[$1>>2]|0; + $74 = (($73) + 64|0); + HEAP8[$74>>0] = 1; + } + } + $75 = HEAP32[$p>>2]|0; + HEAP32[$0>>2] = $75; + $76 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($76|0); +} +function _sqlite3LocateTable($pParse,$isView,$zName,$zDbase) { + $pParse = $pParse|0; + $isView = $isView|0; + $zName = $zName|0; + $zDbase = $zDbase|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $vararg_buffer3 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr6 = 0, $zMsg = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer3 = sp; + $0 = sp + 36|0; + $1 = sp + 12|0; + $2 = sp + 16|0; + $3 = sp + 20|0; + $4 = sp + 24|0; + $p = sp + 28|0; + $zMsg = sp + 32|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $isView; + HEAP32[$3>>2] = $zName; + HEAP32[$4>>2] = $zDbase; + $5 = HEAP32[$1>>2]|0; + $6 = (_sqlite3ReadSchema($5)|0); + $7 = (0)!=($6|0); + if ($7) { + HEAP32[$0>>2] = 0; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$3>>2]|0; + $11 = HEAP32[$4>>2]|0; + $12 = (_sqlite3FindTable($9,$10,$11)|0); + HEAP32[$p>>2] = $12; + $13 = HEAP32[$p>>2]|0; + $14 = ($13|0)==(0|0); + if ($14) { + $15 = HEAP32[$2>>2]|0; + $16 = ($15|0)!=(0); + $17 = $16 ? 37576 : 37592; + HEAP32[$zMsg>>2] = $17; + $18 = HEAP32[$4>>2]|0; + $19 = ($18|0)!=(0|0); + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$zMsg>>2]|0; + if ($19) { + $22 = HEAP32[$4>>2]|0; + $23 = HEAP32[$3>>2]|0; + HEAP32[$vararg_buffer3>>2] = $21; + $vararg_ptr1 = (($vararg_buffer3) + 4|0); + HEAP32[$vararg_ptr1>>2] = $22; + $vararg_ptr2 = (($vararg_buffer3) + 8|0); + HEAP32[$vararg_ptr2>>2] = $23; + _sqlite3ErrorMsg($20,23792,$vararg_buffer3); + } else { + $24 = HEAP32[$3>>2]|0; + HEAP32[$vararg_buffer3>>2] = $21; + $vararg_ptr6 = (($vararg_buffer3) + 4|0); + HEAP32[$vararg_ptr6>>2] = $24; + _sqlite3ErrorMsg($20,23808,$vararg_buffer3); + } + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 17|0); + HEAP8[$26>>0] = 1; + } + $27 = HEAP32[$p>>2]|0; + HEAP32[$0>>2] = $27; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); +} +function _sqlite3ErrorMsg($pParse,$zFormat,$varargs) { + $pParse = $pParse|0; + $zFormat = $zFormat|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ap = 0, $db = 0, $zMsg = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $zMsg = sp + 4|0; + $ap = sp + 8|0; + $db = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $zFormat; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + HEAP32[$ap>>2] = $varargs; + $4 = HEAP32[$db>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (_sqlite3VMPrintf($4,$5,$ap)|0); + HEAP32[$zMsg>>2] = $6; + $7 = HEAP32[$db>>2]|0; + $8 = (($7) + 67|0); + $9 = HEAP8[$8>>0]|0; + $10 = ($9<<24>>24)!=(0); + if ($10) { + $11 = HEAP32[$db>>2]|0; + $12 = HEAP32[$zMsg>>2]|0; + _sqlite3DbFree($11,$12); + STACKTOP = sp;return; + } else { + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 64|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + 1)|0; + HEAP32[$14>>2] = $16; + $17 = HEAP32[$db>>2]|0; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + _sqlite3DbFree($17,$20); + $21 = HEAP32[$zMsg>>2]|0; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 4|0); + HEAP32[$23>>2] = $21; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 12|0); + HEAP32[$25>>2] = 1; + STACKTOP = sp;return; + } +} +function _sqlite3MPrintf($db,$zFormat,$varargs) { + $db = $db|0; + $zFormat = $zFormat|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $ap = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $ap = sp + 8|0; + $z = sp + 24|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zFormat; + HEAP32[$ap>>2] = $varargs; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3VMPrintf($2,$3,$ap)|0); + HEAP32[$z>>2] = $4; + $5 = HEAP32[$z>>2]|0; + STACKTOP = sp;return ($5|0); +} +function _sqlite3VdbeCreate($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $db = sp + 4|0; + $p = sp + 8|0; + HEAP32[$1>>2] = $pParse; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$db>>2]|0; + $5 = (_sqlite3DbMallocZero($4,208)|0); + HEAP32[$p>>2] = $5; + $6 = HEAP32[$p>>2]|0; + $7 = ($6|0)==(0|0); + if ($7) { + HEAP32[$0>>2] = 0; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); + } + $8 = HEAP32[$db>>2]|0; + $9 = HEAP32[$p>>2]|0; + HEAP32[$9>>2] = $8; + $10 = HEAP32[$db>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)!=(0|0); + if ($13) { + $14 = HEAP32[$p>>2]|0; + $15 = HEAP32[$db>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + 48|0); + HEAP32[$18>>2] = $14; + } + $19 = HEAP32[$db>>2]|0; + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$p>>2]|0; + $23 = (($22) + 52|0); + HEAP32[$23>>2] = $21; + $24 = HEAP32[$p>>2]|0; + $25 = (($24) + 48|0); + HEAP32[$25>>2] = 0; + $26 = HEAP32[$p>>2]|0; + $27 = HEAP32[$db>>2]|0; + $28 = (($27) + 4|0); + HEAP32[$28>>2] = $26; + $29 = HEAP32[$p>>2]|0; + $30 = (($29) + 40|0); + HEAP32[$30>>2] = 649915045; + $31 = HEAP32[$1>>2]|0; + $32 = HEAP32[$p>>2]|0; + $33 = (($32) + 24|0); + HEAP32[$33>>2] = $31; + $34 = HEAP32[$p>>2]|0; + HEAP32[$0>>2] = $34; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); +} +function _sqlite3SchemaToIndex($db,$pSchema) { + $db = $db|0; + $pSchema = $pSchema|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $i = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pSchema; + HEAP32[$i>>2] = -1000000; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $20 = HEAP32[$i>>2]|0; + STACKTOP = sp;return ($20|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $4 = HEAP32[$i>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 20|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($4|0)<($7|0); + if (!($8)) { + label = 6; + break; + } + $9 = HEAP32[$i>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 16|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + ($9<<4)|0); + $14 = (($13) + 12|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = ($15|0)==($16|0); + if ($17) { + label = 6; + break; + } + $18 = HEAP32[$i>>2]|0; + $19 = (($18) + 1)|0; + HEAP32[$i>>2] = $19; + } + if ((label|0) == 6) { + $20 = HEAP32[$i>>2]|0; + STACKTOP = sp;return ($20|0); + } + return 0|0; +} +function _sqlite3VdbeAddOp4Int($p,$op,$p1,$p2,$p3,$p4) { + $p = $p|0; + $op = $op|0; + $p1 = $p1|0; + $p2 = $p2|0; + $p3 = $p3|0; + $p4 = $p4|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $addr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $5 = sp + 16|0; + $addr = sp + 20|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $op; + HEAP32[$2>>2] = $p1; + HEAP32[$3>>2] = $p2; + HEAP32[$4>>2] = $p3; + HEAP32[$5>>2] = $p4; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$3>>2]|0; + $10 = HEAP32[$4>>2]|0; + $11 = (_sqlite3VdbeAddOp3($6,$7,$8,$9,$10)|0); + HEAP32[$addr>>2] = $11; + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$addr>>2]|0; + $14 = HEAP32[$5>>2]|0; + $15 = $14; + _sqlite3VdbeChangeP4($12,$13,$15,-14); + $16 = HEAP32[$addr>>2]|0; + STACKTOP = sp;return ($16|0); +} +function _sqlite3VdbeChangeP5($p,$val) { + $p = $p|0; + $val = $val|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + $1 = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP8[$1>>0] = $val; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP8[$1>>0]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 32|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) - 1)|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + (($10*20)|0)|0); + $15 = (($14) + 3|0); + HEAP8[$15>>0] = $6; + STACKTOP = sp;return; +} +function _sqlite3VdbeAddOpList($p,$nOp,$aOp,$iLineno) { + $p = $p|0; + $nOp = $nOp|0; + $aOp = $aOp|0; + $iLineno = $iLineno|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $9 = 0, $addr = 0, $i = 0, $p2 = 0, $pIn = 0, $pOut = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 20|0; + $addr = sp + 16|0; + $i = sp + 8|0; + $pIn = sp + 4|0; + $p2 = sp; + $pOut = sp + 12|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $nOp; + HEAP32[$3>>2] = $aOp; + HEAP32[$4>>2] = $iLineno; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 32|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = (($7) + ($8))|0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 24|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + 84|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($9|0)>($14|0); + if ($15) { + $16 = HEAP32[$1>>2]|0; + $17 = (_growOpArray($16)|0); + $18 = ($17|0)!=(0); + if ($18) { + HEAP32[$0>>2] = 0; + $81 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($81|0); + } + } + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 32|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$addr>>2] = $21; + $22 = HEAP32[$2>>2]|0; + $23 = ($22|0)>(0); + if ($23) { + $24 = HEAP32[$3>>2]|0; + HEAP32[$pIn>>2] = $24; + HEAP32[$i>>2] = 0; + while(1) { + $25 = HEAP32[$i>>2]|0; + $26 = HEAP32[$2>>2]|0; + $27 = ($25|0)<($26|0); + if (!($27)) { + break; + } + $28 = HEAP32[$pIn>>2]|0; + $29 = (($28) + 2|0); + $30 = HEAP8[$29>>0]|0; + $31 = $30 << 24 >> 24; + HEAP32[$p2>>2] = $31; + $32 = HEAP32[$i>>2]|0; + $33 = HEAP32[$addr>>2]|0; + $34 = (($32) + ($33))|0; + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 4|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + (($34*20)|0)|0); + HEAP32[$pOut>>2] = $38; + $39 = HEAP32[$pIn>>2]|0; + $40 = HEAP8[$39>>0]|0; + $41 = HEAP32[$pOut>>2]|0; + HEAP8[$41>>0] = $40; + $42 = HEAP32[$pIn>>2]|0; + $43 = (($42) + 1|0); + $44 = HEAP8[$43>>0]|0; + $45 = $44 << 24 >> 24; + $46 = HEAP32[$pOut>>2]|0; + $47 = (($46) + 4|0); + HEAP32[$47>>2] = $45; + $48 = HEAP32[$p2>>2]|0; + $49 = ($48|0)<(0); + if ($49) { + $50 = HEAP32[$addr>>2]|0; + $51 = HEAP32[$p2>>2]|0; + $52 = (-1 - ($51))|0; + $53 = (($50) + ($52))|0; + $54 = HEAP32[$pOut>>2]|0; + $55 = (($54) + 8|0); + HEAP32[$55>>2] = $53; + } else { + $56 = HEAP32[$p2>>2]|0; + $57 = HEAP32[$pOut>>2]|0; + $58 = (($57) + 8|0); + HEAP32[$58>>2] = $56; + } + $59 = HEAP32[$pIn>>2]|0; + $60 = (($59) + 3|0); + $61 = HEAP8[$60>>0]|0; + $62 = $61 << 24 >> 24; + $63 = HEAP32[$pOut>>2]|0; + $64 = (($63) + 12|0); + HEAP32[$64>>2] = $62; + $65 = HEAP32[$pOut>>2]|0; + $66 = (($65) + 1|0); + HEAP8[$66>>0] = 0; + $67 = HEAP32[$pOut>>2]|0; + $68 = (($67) + 16|0); + HEAP32[$68>>2] = 0; + $69 = HEAP32[$pOut>>2]|0; + $70 = (($69) + 3|0); + HEAP8[$70>>0] = 0; + $71 = HEAP32[$i>>2]|0; + $72 = (($71) + 1)|0; + HEAP32[$i>>2] = $72; + $73 = HEAP32[$pIn>>2]|0; + $74 = (($73) + 4|0); + HEAP32[$pIn>>2] = $74; + } + $75 = HEAP32[$2>>2]|0; + $76 = HEAP32[$1>>2]|0; + $77 = (($76) + 32|0); + $78 = HEAP32[$77>>2]|0; + $79 = (($78) + ($75))|0; + HEAP32[$77>>2] = $79; + } + $80 = HEAP32[$addr>>2]|0; + HEAP32[$0>>2] = $80; + $81 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($81|0); +} +function _sqlite3VdbeUsesBtree($p,$i) { + $p = $p|0; + $i = $i|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $i; + $2 = HEAP32[$1>>2]|0; + $3 = 1 << $2; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 96|0); + $6 = HEAP32[$5>>2]|0; + $7 = $6 | $3; + HEAP32[$5>>2] = $7; + STACKTOP = sp;return; +} +function _sqlite3VdbeChangeP1($p,$addr,$val) { + $p = $p|0; + $addr = $addr|0; + $val = $val|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $addr; + HEAP32[$2>>2] = $val; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 32|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = ($5>>>0)>($6>>>0); + if (!($7)) { + STACKTOP = sp;return; + } + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + (($9*20)|0)|0); + $14 = (($13) + 4|0); + HEAP32[$14>>2] = $8; + STACKTOP = sp;return; +} +function _sqlite3VdbeChangeP2($p,$addr,$val) { + $p = $p|0; + $addr = $addr|0; + $val = $val|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $addr; + HEAP32[$2>>2] = $val; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 32|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = ($5>>>0)>($6>>>0); + if (!($7)) { + STACKTOP = sp;return; + } + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + (($9*20)|0)|0); + $14 = (($13) + 8|0); + HEAP32[$14>>2] = $8; + STACKTOP = sp;return; +} +function _sqlite3VdbeChangeP3($p,$addr,$val) { + $p = $p|0; + $addr = $addr|0; + $val = $val|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $addr; + HEAP32[$2>>2] = $val; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 32|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = ($5>>>0)>($6>>>0); + if (!($7)) { + STACKTOP = sp;return; + } + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + (($9*20)|0)|0); + $14 = (($13) + 12|0); + HEAP32[$14>>2] = $8; + STACKTOP = sp;return; +} +function _sqlite3VdbeChangeP4($p,$addr,$zP4,$n) { + $p = $p|0; + $addr = $addr|0; + $zP4 = $zP4|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $db = 0, $pOp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pOp = sp + 12|0; + $db = sp + 16|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $addr; + HEAP32[$2>>2] = $zP4; + HEAP32[$3>>2] = $n; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)==(0|0); + if (!($9)) { + $10 = HEAP32[$db>>2]|0; + $11 = (($10) + 64|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = ($13|0)!=(0); + if (!($14)) { + $20 = HEAP32[$1>>2]|0; + $21 = ($20|0)<(0); + if ($21) { + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 32|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) - 1)|0; + HEAP32[$1>>2] = $25; + } + $26 = HEAP32[$1>>2]|0; + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 4|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + (($26*20)|0)|0); + HEAP32[$pOp>>2] = $30; + $31 = HEAP32[$db>>2]|0; + $32 = HEAP32[$pOp>>2]|0; + $33 = (($32) + 1|0); + $34 = HEAP8[$33>>0]|0; + $35 = $34 << 24 >> 24; + $36 = HEAP32[$pOp>>2]|0; + $37 = (($36) + 16|0); + $38 = HEAP32[$37>>2]|0; + _freeP4($31,$35,$38); + $39 = HEAP32[$pOp>>2]|0; + $40 = (($39) + 16|0); + HEAP32[$40>>2] = 0; + $41 = HEAP32[$3>>2]|0; + $42 = ($41|0)==(-14); + $43 = HEAP32[$2>>2]|0; + if ($42) { + $44 = $43; + $45 = HEAP32[$pOp>>2]|0; + $46 = (($45) + 16|0); + HEAP32[$46>>2] = $44; + $47 = HEAP32[$pOp>>2]|0; + $48 = (($47) + 1|0); + HEAP8[$48>>0] = -14; + STACKTOP = sp;return; + } + $49 = ($43|0)==(0|0); + if ($49) { + $50 = HEAP32[$pOp>>2]|0; + $51 = (($50) + 16|0); + HEAP32[$51>>2] = 0; + $52 = HEAP32[$pOp>>2]|0; + $53 = (($52) + 1|0); + HEAP8[$53>>0] = 0; + STACKTOP = sp;return; + } + $54 = HEAP32[$3>>2]|0; + $55 = ($54|0)==(-6); + if ($55) { + $56 = HEAP32[$2>>2]|0; + $57 = HEAP32[$pOp>>2]|0; + $58 = (($57) + 16|0); + HEAP32[$58>>2] = $56; + $59 = HEAP32[$pOp>>2]|0; + $60 = (($59) + 1|0); + HEAP8[$60>>0] = -6; + STACKTOP = sp;return; + } + $61 = HEAP32[$3>>2]|0; + $62 = ($61|0)==(-10); + if ($62) { + $63 = HEAP32[$2>>2]|0; + $64 = HEAP32[$pOp>>2]|0; + $65 = (($64) + 16|0); + HEAP32[$65>>2] = $63; + $66 = HEAP32[$pOp>>2]|0; + $67 = (($66) + 1|0); + HEAP8[$67>>0] = -10; + $68 = HEAP32[$2>>2]|0; + _sqlite3VtabLock($68); + STACKTOP = sp;return; + } + $69 = HEAP32[$3>>2]|0; + $70 = ($69|0)<(0); + if ($70) { + $71 = HEAP32[$2>>2]|0; + $72 = HEAP32[$pOp>>2]|0; + $73 = (($72) + 16|0); + HEAP32[$73>>2] = $71; + $74 = HEAP32[$3>>2]|0; + $75 = $74&255; + $76 = HEAP32[$pOp>>2]|0; + $77 = (($76) + 1|0); + HEAP8[$77>>0] = $75; + STACKTOP = sp;return; + } + $78 = HEAP32[$3>>2]|0; + $79 = ($78|0)==(0); + if ($79) { + $80 = HEAP32[$2>>2]|0; + $81 = (_sqlite3Strlen30($80)|0); + HEAP32[$3>>2] = $81; + } + $82 = HEAP32[$0>>2]|0; + $83 = HEAP32[$82>>2]|0; + $84 = HEAP32[$2>>2]|0; + $85 = HEAP32[$3>>2]|0; + $86 = (_sqlite3DbStrNDup($83,$84,$85)|0); + $87 = HEAP32[$pOp>>2]|0; + $88 = (($87) + 16|0); + HEAP32[$88>>2] = $86; + $89 = HEAP32[$pOp>>2]|0; + $90 = (($89) + 1|0); + HEAP8[$90>>0] = -1; + STACKTOP = sp;return; + } + } + $15 = HEAP32[$3>>2]|0; + $16 = ($15|0)!=(-10); + if (!($16)) { + STACKTOP = sp;return; + } + $17 = HEAP32[$db>>2]|0; + $18 = HEAP32[$3>>2]|0; + $19 = HEAP32[$2>>2]|0; + _freeP4($17,$18,$19); + STACKTOP = sp;return; +} +function _sqlite3VdbeChangeToNoop($p,$addr) { + $p = $p|0; + $addr = $addr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $pOp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $pOp = sp + 4|0; + $db = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $addr; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + (($6*20)|0)|0); + HEAP32[$pOp>>2] = $10; + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$11>>2]|0; + HEAP32[$db>>2] = $12; + $13 = HEAP32[$db>>2]|0; + $14 = HEAP32[$pOp>>2]|0; + $15 = (($14) + 1|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16 << 24 >> 24; + $18 = HEAP32[$pOp>>2]|0; + $19 = (($18) + 16|0); + $20 = HEAP32[$19>>2]|0; + _freeP4($13,$17,$20); + $21 = HEAP32[$pOp>>2]|0; + ;HEAP32[$21+0>>2]=0|0;HEAP32[$21+4>>2]=0|0;HEAP32[$21+8>>2]=0|0;HEAP32[$21+12>>2]=0|0;HEAP32[$21+16>>2]=0|0; + $22 = HEAP32[$pOp>>2]|0; + HEAP8[$22>>0] = -100; + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 32|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($26) - 1)|0; + $28 = ($23|0)==($27|0); + if (!($28)) { + STACKTOP = sp;return; + } + $29 = HEAP32[$0>>2]|0; + $30 = (($29) + 32|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + -1)|0; + HEAP32[$30>>2] = $32; + STACKTOP = sp;return; +} +function _sqlite3VdbeMakeReady($p,$pParse) { + $p = $p|0; + $pParse = $pParse|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; + var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; + var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; + var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; + var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; + var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; + var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; + var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; + var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; + var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; + var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; + var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; + var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $n = 0, $nArg = 0; + var $nByte = 0, $nCursor = 0, $nMem = 0, $nOnce = 0, $nVar = 0, $zCsr = 0, $zEnd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $db = sp + 36|0; + $nVar = sp + 32|0; + $nMem = sp + 28|0; + $nCursor = sp + 24|0; + $nArg = sp + 20|0; + $nOnce = sp + 12|0; + $n = sp + 8|0; + $zCsr = sp + 4|0; + $zEnd = sp; + $nByte = sp + 16|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pParse; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 440|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$nVar>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 72|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$nMem>>2] = $9; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 68|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$nCursor>>2] = $12; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 392|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$nArg>>2] = $15; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 80|0); + $18 = HEAP32[$17>>2]|0; + HEAP32[$nOnce>>2] = $18; + $19 = HEAP32[$nOnce>>2]|0; + $20 = ($19|0)==(0); + $$ = $20 ? 1 : $18; + HEAP32[$nOnce>>2] = $$; + $21 = HEAP32[$nCursor>>2]|0; + $22 = HEAP32[$nMem>>2]|0; + $23 = (($22) + ($21))|0; + HEAP32[$nMem>>2] = $23; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 32|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 4|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + (($26*20)|0)|0); + HEAP32[$zCsr>>2] = $30; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 84|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 4|0); + $36 = HEAP32[$35>>2]|0; + $37 = (($36) + (($33*20)|0)|0); + HEAP32[$zEnd>>2] = $37; + $38 = HEAP32[$0>>2]|0; + _resolveP2Values($38,$nArg); + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 20|0); + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = ($42|0)!=(0); + if ($43) { + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 21|0); + $46 = HEAP8[$45>>0]|0; + $47 = $46&255; + $48 = ($47|0)!=(0); + $50 = $48; + } else { + $50 = 0; + } + $49 = $50&1; + $51 = $49&255; + $52 = $51&255; + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 88|0); + $55 = $52&65535; + $56 = HEAP16[$54>>1]|0; + $57 = $55 & 1; + $58 = ($57 << 7)&65535; + $59 = $56 & -129; + $60 = $59 | $58; + HEAP16[$54>>1] = $60; + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 450|0); + $63 = HEAP8[$62>>0]|0; + $64 = $63&255; + $65 = ($64|0)!=(0); + if ($65) { + $66 = HEAP32[$nMem>>2]|0; + $67 = ($66|0)<(10); + if ($67) { + HEAP32[$nMem>>2] = 10; + } + } + $68 = HEAP32[$zCsr>>2]|0; + $69 = HEAP32[$zEnd>>2]|0; + $70 = HEAP32[$zCsr>>2]|0; + $71 = $69; + $72 = $70; + $73 = (($71) - ($72))|0; + _memset(($68|0),0,($73|0))|0; + $74 = HEAP32[$zCsr>>2]|0; + $75 = $74; + $76 = (($75) - 0)|0; + $77 = $76 & 7; + $78 = HEAP32[$zCsr>>2]|0; + $79 = (($78) + ($77)|0); + HEAP32[$zCsr>>2] = $79; + $80 = HEAP32[$0>>2]|0; + $81 = (($80) + 88|0); + $82 = HEAP16[$81>>1]|0; + $83 = $82 & -33; + HEAP16[$81>>1] = $83; + while(1) { + HEAP32[$nByte>>2] = 0; + $84 = HEAP32[$0>>2]|0; + $85 = (($84) + 8|0); + $86 = HEAP32[$85>>2]|0; + $87 = HEAP32[$nMem>>2]|0; + $88 = ($87*40)|0; + $89 = HEAP32[$zEnd>>2]|0; + $90 = (_allocSpace($86,$88,$zCsr,$89,$nByte)|0); + $91 = HEAP32[$0>>2]|0; + $92 = (($91) + 8|0); + HEAP32[$92>>2] = $90; + $93 = HEAP32[$0>>2]|0; + $94 = (($93) + 60|0); + $95 = HEAP32[$94>>2]|0; + $96 = HEAP32[$nVar>>2]|0; + $97 = ($96*40)|0; + $98 = HEAP32[$zEnd>>2]|0; + $99 = (_allocSpace($95,$97,$zCsr,$98,$nByte)|0); + $100 = HEAP32[$0>>2]|0; + $101 = (($100) + 60|0); + HEAP32[$101>>2] = $99; + $102 = HEAP32[$0>>2]|0; + $103 = (($102) + 12|0); + $104 = HEAP32[$103>>2]|0; + $105 = HEAP32[$nArg>>2]|0; + $106 = $105<<2; + $107 = HEAP32[$zEnd>>2]|0; + $108 = (_allocSpace($104,$106,$zCsr,$107,$nByte)|0); + $109 = HEAP32[$0>>2]|0; + $110 = (($109) + 12|0); + HEAP32[$110>>2] = $108; + $111 = HEAP32[$0>>2]|0; + $112 = (($111) + 64|0); + $113 = HEAP32[$112>>2]|0; + $114 = HEAP32[$nVar>>2]|0; + $115 = $114<<2; + $116 = HEAP32[$zEnd>>2]|0; + $117 = (_allocSpace($113,$115,$zCsr,$116,$nByte)|0); + $118 = HEAP32[$0>>2]|0; + $119 = (($118) + 64|0); + HEAP32[$119>>2] = $117; + $120 = HEAP32[$0>>2]|0; + $121 = (($120) + 56|0); + $122 = HEAP32[$121>>2]|0; + $123 = HEAP32[$nCursor>>2]|0; + $124 = $123<<2; + $125 = HEAP32[$zEnd>>2]|0; + $126 = (_allocSpace($122,$124,$zCsr,$125,$nByte)|0); + $127 = HEAP32[$0>>2]|0; + $128 = (($127) + 56|0); + HEAP32[$128>>2] = $126; + $129 = HEAP32[$0>>2]|0; + $130 = (($129) + 200|0); + $131 = HEAP32[$130>>2]|0; + $132 = HEAP32[$nOnce>>2]|0; + $133 = HEAP32[$zEnd>>2]|0; + $134 = (_allocSpace($131,$132,$zCsr,$133,$nByte)|0); + $135 = HEAP32[$0>>2]|0; + $136 = (($135) + 200|0); + HEAP32[$136>>2] = $134; + $137 = HEAP32[$nByte>>2]|0; + $138 = ($137|0)!=(0); + if ($138) { + $139 = HEAP32[$db>>2]|0; + $140 = HEAP32[$nByte>>2]|0; + $141 = (_sqlite3DbMallocZero($139,$140)|0); + $142 = HEAP32[$0>>2]|0; + $143 = (($142) + 172|0); + HEAP32[$143>>2] = $141; + } + $144 = HEAP32[$0>>2]|0; + $145 = (($144) + 172|0); + $146 = HEAP32[$145>>2]|0; + HEAP32[$zCsr>>2] = $146; + $147 = HEAP32[$nByte>>2]|0; + $148 = HEAP32[$zCsr>>2]|0; + $149 = (($148) + ($147)|0); + HEAP32[$zEnd>>2] = $149; + $150 = HEAP32[$nByte>>2]|0; + $151 = ($150|0)!=(0); + if (!($151)) { + break; + } + $152 = HEAP32[$db>>2]|0; + $153 = (($152) + 64|0); + $154 = HEAP8[$153>>0]|0; + $155 = ($154<<24>>24)!=(0); + $156 = $155 ^ 1; + if (!($156)) { + break; + } + } + $157 = HEAP32[$nCursor>>2]|0; + $158 = HEAP32[$0>>2]|0; + $159 = (($158) + 36|0); + HEAP32[$159>>2] = $157; + $160 = HEAP32[$nOnce>>2]|0; + $161 = HEAP32[$0>>2]|0; + $162 = (($161) + 196|0); + HEAP32[$162>>2] = $160; + $163 = HEAP32[$0>>2]|0; + $164 = (($163) + 60|0); + $165 = HEAP32[$164>>2]|0; + $166 = ($165|0)!=(0|0); + L15: do { + if ($166) { + $167 = HEAP32[$nVar>>2]|0; + $168 = $167&65535; + $169 = HEAP32[$0>>2]|0; + $170 = (($169) + 68|0); + HEAP16[$170>>1] = $168; + HEAP32[$n>>2] = 0; + while(1) { + $171 = HEAP32[$n>>2]|0; + $172 = HEAP32[$nVar>>2]|0; + $173 = ($171|0)<($172|0); + if (!($173)) { + break L15; + } + $174 = HEAP32[$n>>2]|0; + $175 = HEAP32[$0>>2]|0; + $176 = (($175) + 60|0); + $177 = HEAP32[$176>>2]|0; + $178 = (($177) + (($174*40)|0)|0); + $179 = (($178) + 28|0); + HEAP16[$179>>1] = 1; + $180 = HEAP32[$db>>2]|0; + $181 = HEAP32[$n>>2]|0; + $182 = HEAP32[$0>>2]|0; + $183 = (($182) + 60|0); + $184 = HEAP32[$183>>2]|0; + $185 = (($184) + (($181*40)|0)|0); + HEAP32[$185>>2] = $180; + $186 = HEAP32[$n>>2]|0; + $187 = (($186) + 1)|0; + HEAP32[$n>>2] = $187; + } + } + } while(0); + $188 = HEAP32[$0>>2]|0; + $189 = (($188) + 64|0); + $190 = HEAP32[$189>>2]|0; + $191 = ($190|0)!=(0|0); + if ($191) { + $192 = HEAP32[$1>>2]|0; + $193 = (($192) + 444|0); + $194 = HEAP32[$193>>2]|0; + $195 = $194&65535; + $196 = HEAP32[$0>>2]|0; + $197 = (($196) + 70|0); + HEAP16[$197>>1] = $195; + $198 = HEAP32[$0>>2]|0; + $199 = (($198) + 64|0); + $200 = HEAP32[$199>>2]|0; + $201 = HEAP32[$1>>2]|0; + $202 = (($201) + 472|0); + $203 = HEAP32[$202>>2]|0; + $204 = HEAP32[$0>>2]|0; + $205 = (($204) + 70|0); + $206 = HEAP16[$205>>1]|0; + $207 = $206 << 16 >> 16; + $208 = $207<<2; + _memcpy(($200|0),($203|0),($208|0))|0; + $209 = HEAP32[$1>>2]|0; + $210 = (($209) + 472|0); + $211 = HEAP32[$210>>2]|0; + $212 = HEAP32[$1>>2]|0; + $213 = (($212) + 444|0); + $214 = HEAP32[$213>>2]|0; + $215 = $214<<2; + _memset(($211|0),0,($215|0))|0; + } + $216 = HEAP32[$0>>2]|0; + $217 = (($216) + 8|0); + $218 = HEAP32[$217>>2]|0; + $219 = ($218|0)!=(0|0); + if (!($219)) { + $244 = HEAP32[$1>>2]|0; + $245 = (($244) + 450|0); + $246 = HEAP8[$245>>0]|0; + $247 = $246&255; + $248 = HEAP32[$0>>2]|0; + $249 = (($248) + 88|0); + $250 = $247&65535; + $251 = HEAP16[$249>>1]|0; + $252 = $250 & 3; + $253 = $251 & -4; + $254 = $253 | $252; + HEAP16[$249>>1] = $254; + $255 = HEAP32[$0>>2]|0; + _sqlite3VdbeRewind($255); + STACKTOP = sp;return; + } + $220 = HEAP32[$0>>2]|0; + $221 = (($220) + 8|0); + $222 = HEAP32[$221>>2]|0; + $223 = (($222) + -40|0); + HEAP32[$221>>2] = $223; + $224 = HEAP32[$nMem>>2]|0; + $225 = HEAP32[$0>>2]|0; + $226 = (($225) + 28|0); + HEAP32[$226>>2] = $224; + HEAP32[$n>>2] = 1; + while(1) { + $227 = HEAP32[$n>>2]|0; + $228 = HEAP32[$nMem>>2]|0; + $229 = ($227|0)<=($228|0); + if (!($229)) { + break; + } + $230 = HEAP32[$n>>2]|0; + $231 = HEAP32[$0>>2]|0; + $232 = (($231) + 8|0); + $233 = HEAP32[$232>>2]|0; + $234 = (($233) + (($230*40)|0)|0); + $235 = (($234) + 28|0); + HEAP16[$235>>1] = 128; + $236 = HEAP32[$db>>2]|0; + $237 = HEAP32[$n>>2]|0; + $238 = HEAP32[$0>>2]|0; + $239 = (($238) + 8|0); + $240 = HEAP32[$239>>2]|0; + $241 = (($240) + (($237*40)|0)|0); + HEAP32[$241>>2] = $236; + $242 = HEAP32[$n>>2]|0; + $243 = (($242) + 1)|0; + HEAP32[$n>>2] = $243; + } + $244 = HEAP32[$1>>2]|0; + $245 = (($244) + 450|0); + $246 = HEAP8[$245>>0]|0; + $247 = $246&255; + $248 = HEAP32[$0>>2]|0; + $249 = (($248) + 88|0); + $250 = $247&65535; + $251 = HEAP16[$249>>1]|0; + $252 = $250 & 3; + $253 = $251 & -4; + $254 = $253 | $252; + HEAP16[$249>>1] = $254; + $255 = HEAP32[$0>>2]|0; + _sqlite3VdbeRewind($255); + STACKTOP = sp;return; +} +function _blobSeekToRow($p,$0,$1,$pzErr) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + $pzErr = $pzErr|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $pC = 0, $rc = 0; + var $type = 0, $v = 0, $vararg_buffer4 = 0, $zErr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer4 = sp + 8|0; + $2 = sp + 36|0; + $3 = sp; + $4 = sp + 32|0; + $rc = sp + 40|0; + $zErr = sp + 24|0; + $v = sp + 16|0; + $pC = sp + 28|0; + $type = sp + 20|0; + HEAP32[$2>>2] = $p; + $5 = $3; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + HEAP32[$4>>2] = $pzErr; + HEAP32[$zErr>>2] = 0; + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 20|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$v>>2] = $11; + $12 = $3; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = (($12) + 4)|0; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$v>>2]|0; + $19 = (($18) + 60|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + 16|0); + $22 = $21; + $23 = $22; + HEAP32[$23>>2] = $14; + $24 = (($22) + 4)|0; + $25 = $24; + HEAP32[$25>>2] = $17; + $26 = HEAP32[$2>>2]|0; + $27 = (($26) + 20|0); + $28 = HEAP32[$27>>2]|0; + $29 = (_sqlite3_step($28)|0); + HEAP32[$rc>>2] = $29; + $30 = HEAP32[$rc>>2]|0; + $31 = ($30|0)==(100); + do { + if ($31) { + $32 = HEAP32[$v>>2]|0; + $33 = (($32) + 56|0); + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$34>>2]|0; + HEAP32[$pC>>2] = $35; + $36 = HEAP32[$2>>2]|0; + $37 = (($36) + 12|0); + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$pC>>2]|0; + $40 = (($39) + 88|0); + $41 = (($40) + ($38<<2)|0); + $42 = HEAP32[$41>>2]|0; + HEAP32[$type>>2] = $42; + $43 = HEAP32[$type>>2]|0; + $44 = ($43>>>0)<(12); + $45 = HEAP32[$2>>2]|0; + if (!($44)) { + $60 = (($45) + 12|0); + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$pC>>2]|0; + $63 = (($62) + 20|0); + $64 = HEAP16[$63>>1]|0; + $65 = $64 << 16 >> 16; + $66 = (($61) + ($65))|0; + $67 = HEAP32[$pC>>2]|0; + $68 = (($67) + 88|0); + $69 = (($68) + ($66<<2)|0); + $70 = HEAP32[$69>>2]|0; + $71 = HEAP32[$2>>2]|0; + $72 = (($71) + 8|0); + HEAP32[$72>>2] = $70; + $73 = HEAP32[$type>>2]|0; + $74 = (_sqlite3VdbeSerialTypeLen($73)|0); + $75 = HEAP32[$2>>2]|0; + $76 = (($75) + 4|0); + HEAP32[$76>>2] = $74; + $77 = HEAP32[$pC>>2]|0; + $78 = HEAP32[$77>>2]|0; + $79 = HEAP32[$2>>2]|0; + $80 = (($79) + 16|0); + HEAP32[$80>>2] = $78; + $81 = HEAP32[$2>>2]|0; + $82 = (($81) + 16|0); + $83 = HEAP32[$82>>2]|0; + _sqlite3BtreeIncrblobCursor($83); + break; + } + $46 = (($45) + 24|0); + $47 = HEAP32[$46>>2]|0; + $48 = HEAP32[$type>>2]|0; + $49 = ($48|0)==(0); + if ($49) { + $53 = 16424; + } else { + $50 = HEAP32[$type>>2]|0; + $51 = ($50|0)==(7); + $52 = $51 ? 16408 : 16392; + $53 = $52; + } + HEAP32[$vararg_buffer4>>2] = $53; + $54 = (_sqlite3MPrintf($47,37608,$vararg_buffer4)|0); + HEAP32[$zErr>>2] = $54; + HEAP32[$rc>>2] = 1; + $55 = HEAP32[$2>>2]|0; + $56 = (($55) + 20|0); + $57 = HEAP32[$56>>2]|0; + (_sqlite3_finalize($57)|0); + $58 = HEAP32[$2>>2]|0; + $59 = (($58) + 20|0); + HEAP32[$59>>2] = 0; + } + } while(0); + $84 = HEAP32[$rc>>2]|0; + $85 = ($84|0)==(100); + if ($85) { + HEAP32[$rc>>2] = 0; + $117 = HEAP32[$zErr>>2]|0; + $118 = HEAP32[$4>>2]|0; + HEAP32[$118>>2] = $117; + $119 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($119|0); + } + $86 = HEAP32[$2>>2]|0; + $87 = (($86) + 20|0); + $88 = HEAP32[$87>>2]|0; + $89 = ($88|0)!=(0|0); + if (!($89)) { + $117 = HEAP32[$zErr>>2]|0; + $118 = HEAP32[$4>>2]|0; + HEAP32[$118>>2] = $117; + $119 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($119|0); + } + $90 = HEAP32[$2>>2]|0; + $91 = (($90) + 20|0); + $92 = HEAP32[$91>>2]|0; + $93 = (_sqlite3_finalize($92)|0); + HEAP32[$rc>>2] = $93; + $94 = HEAP32[$2>>2]|0; + $95 = (($94) + 20|0); + HEAP32[$95>>2] = 0; + $96 = HEAP32[$rc>>2]|0; + $97 = ($96|0)==(0); + $98 = HEAP32[$2>>2]|0; + $99 = (($98) + 24|0); + $100 = HEAP32[$99>>2]|0; + if ($97) { + $101 = $3; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = (($101) + 4)|0; + $105 = $104; + $106 = HEAP32[$105>>2]|0; + $107 = $vararg_buffer4; + $108 = $107; + HEAP32[$108>>2] = $103; + $109 = (($107) + 4)|0; + $110 = $109; + HEAP32[$110>>2] = $106; + $111 = (_sqlite3MPrintf($100,37640,$vararg_buffer4)|0); + HEAP32[$zErr>>2] = $111; + HEAP32[$rc>>2] = 1; + $117 = HEAP32[$zErr>>2]|0; + $118 = HEAP32[$4>>2]|0; + HEAP32[$118>>2] = $117; + $119 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($119|0); + } else { + $112 = HEAP32[$2>>2]|0; + $113 = (($112) + 24|0); + $114 = HEAP32[$113>>2]|0; + $115 = (_sqlite3_errmsg($114)|0); + HEAP32[$vararg_buffer4>>2] = $115; + $116 = (_sqlite3MPrintf($100,1768,$vararg_buffer4)|0); + HEAP32[$zErr>>2] = $116; + $117 = HEAP32[$zErr>>2]|0; + $118 = HEAP32[$4>>2]|0; + HEAP32[$118>>2] = $117; + $119 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($119|0); + } + return 0|0; +} +function _sqlite3ParserReset($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $db = sp; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + $5 = HEAP32[$db>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 112|0); + $8 = HEAP32[$7>>2]|0; + _sqlite3DbFree($5,$8); + $9 = HEAP32[$db>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 316|0); + $12 = HEAP32[$11>>2]|0; + _sqlite3ExprListDelete($9,$12); + STACKTOP = sp;return; +} +function _sqlite3_blob_close($pBlob) { + $pBlob = $pBlob|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $p = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $p = sp; + $rc = sp + 4|0; + $db = sp + 8|0; + HEAP32[$0>>2] = $pBlob; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + $2 = HEAP32[$p>>2]|0; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = HEAP32[$p>>2]|0; + $5 = (($4) + 24|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$p>>2]|0; + $8 = (($7) + 20|0); + $9 = HEAP32[$8>>2]|0; + $10 = (_sqlite3_finalize($9)|0); + HEAP32[$rc>>2] = $10; + $11 = HEAP32[$db>>2]|0; + $12 = HEAP32[$p>>2]|0; + _sqlite3DbFree($11,$12); + $13 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($13|0); + } else { + HEAP32[$rc>>2] = 0; + $13 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($13|0); + } + return 0|0; +} +function _sqlite3_blob_read($pBlob,$z,$n,$iOffset) { + $pBlob = $pBlob|0; + $z = $z|0; + $n = $n|0; + $iOffset = $iOffset|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $pBlob; + HEAP32[$1>>2] = $z; + HEAP32[$2>>2] = $n; + HEAP32[$3>>2] = $iOffset; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$3>>2]|0; + $8 = (_blobReadWrite($4,$5,$6,$7,9)|0); + STACKTOP = sp;return ($8|0); +} +function _blobReadWrite($pBlob,$z,$n,$iOffset,$xCall) { + $pBlob = $pBlob|0; + $z = $z|0; + $n = $n|0; + $iOffset = $iOffset|0; + $xCall = $xCall|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $p = 0; + var $rc = 0, $v = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 40|0; + $5 = sp + 12|0; + $rc = sp + 8|0; + $p = sp + 4|0; + $v = sp + 16|0; + $db = sp + 20|0; + HEAP32[$1>>2] = $pBlob; + HEAP32[$2>>2] = $z; + HEAP32[$3>>2] = $n; + HEAP32[$4>>2] = $iOffset; + HEAP32[$5>>2] = $xCall; + $6 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $6; + $7 = HEAP32[$p>>2]|0; + $8 = ($7|0)==(0|0); + if ($8) { + $9 = (_sqlite3MisuseError(74274)|0); + HEAP32[$0>>2] = $9; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); + } + $10 = HEAP32[$p>>2]|0; + $11 = (($10) + 24|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$db>>2] = $12; + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 20|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$v>>2] = $15; + $16 = HEAP32[$3>>2]|0; + $17 = ($16|0)<(0); + do { + if ($17) { + label = 6; + } else { + $18 = HEAP32[$4>>2]|0; + $19 = ($18|0)<(0); + if ($19) { + label = 6; + } else { + $20 = HEAP32[$4>>2]|0; + $21 = HEAP32[$3>>2]|0; + $22 = (($20) + ($21))|0; + $23 = HEAP32[$p>>2]|0; + $24 = (($23) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($22|0)>($25|0); + if ($26) { + label = 6; + } else { + $28 = HEAP32[$v>>2]|0; + $29 = ($28|0)==(0|0); + if ($29) { + HEAP32[$rc>>2] = 4; + break; + } + $30 = HEAP32[$5>>2]|0; + $31 = HEAP32[$p>>2]|0; + $32 = (($31) + 16|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$4>>2]|0; + $35 = HEAP32[$p>>2]|0; + $36 = (($35) + 8|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($34) + ($37))|0; + $39 = HEAP32[$3>>2]|0; + $40 = HEAP32[$2>>2]|0; + $41 = (FUNCTION_TABLE_iiiii[$30 & 31]($33,$38,$39,$40)|0); + HEAP32[$rc>>2] = $41; + $42 = HEAP32[$rc>>2]|0; + $43 = ($42|0)==(4); + if ($43) { + $44 = HEAP32[$v>>2]|0; + (_sqlite3VdbeFinalize($44)|0); + $45 = HEAP32[$p>>2]|0; + $46 = (($45) + 20|0); + HEAP32[$46>>2] = 0; + break; + } else { + $47 = HEAP32[$rc>>2]|0; + $48 = HEAP32[$db>>2]|0; + $49 = (($48) + 52|0); + HEAP32[$49>>2] = $47; + $50 = HEAP32[$rc>>2]|0; + $51 = HEAP32[$v>>2]|0; + $52 = (($51) + 80|0); + HEAP32[$52>>2] = $50; + break; + } + } + } + } + } while(0); + if ((label|0) == 6) { + HEAP32[$rc>>2] = 1; + $27 = HEAP32[$db>>2]|0; + _sqlite3Error($27,1,0,$vararg_buffer); + } + $53 = HEAP32[$db>>2]|0; + $54 = HEAP32[$rc>>2]|0; + $55 = (_sqlite3ApiExit($53,$54)|0); + HEAP32[$rc>>2] = $55; + $56 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $56; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); +} +function _sqlite3BtreeData($pCur,$offset,$amt,$pBuf) { + $pCur = $pCur|0; + $offset = $offset|0; + $amt = $amt|0; + $pBuf = $pBuf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $rc = sp + 16|0; + HEAP32[$1>>2] = $pCur; + HEAP32[$2>>2] = $offset; + HEAP32[$3>>2] = $amt; + HEAP32[$4>>2] = $pBuf; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 81|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = ($8|0)==(0); + if ($9) { + HEAP32[$0>>2] = 4; + $26 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($26|0); + } + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 81|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = ($13|0)>=(3); + if ($14) { + $15 = HEAP32[$1>>2]|0; + $16 = (_btreeRestoreCursorPosition($15)|0); + $17 = $16; + } else { + $17 = 0; + } + HEAP32[$rc>>2] = $17; + $18 = HEAP32[$rc>>2]|0; + $19 = ($18|0)==(0); + if ($19) { + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = HEAP32[$3>>2]|0; + $23 = HEAP32[$4>>2]|0; + $24 = (_accessPayload($20,$21,$22,$23,0)|0); + HEAP32[$rc>>2] = $24; + } + $25 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $25; + $26 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($26|0); +} +function _sqlite3_blob_bytes($pBlob) { + $pBlob = $pBlob|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pBlob; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + $2 = HEAP32[$p>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $11 = 0; + STACKTOP = sp;return ($11|0); + } + $4 = HEAP32[$p>>2]|0; + $5 = (($4) + 20|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + $11 = 0; + STACKTOP = sp;return ($11|0); + } + $8 = HEAP32[$p>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = $10; + STACKTOP = sp;return ($11|0); +} +function _sqlite3_blob_reopen($pBlob,$0,$1) { + $pBlob = $pBlob|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $db = 0, $p = 0, $rc = 0, $vararg_buffer = 0, $zErr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp + 8|0; + $2 = sp + 32|0; + $3 = sp + 12|0; + $4 = sp; + $rc = sp + 16|0; + $p = sp + 20|0; + $db = sp + 24|0; + $zErr = sp + 28|0; + HEAP32[$3>>2] = $pBlob; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + $9 = HEAP32[$3>>2]|0; + HEAP32[$p>>2] = $9; + $10 = HEAP32[$p>>2]|0; + $11 = ($10|0)==(0|0); + if ($11) { + $12 = (_sqlite3MisuseError(74349)|0); + HEAP32[$2>>2] = $12; + $42 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($42|0); + } + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 24|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$db>>2] = $15; + $16 = HEAP32[$p>>2]|0; + $17 = (($16) + 20|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($18|0)==(0|0); + if ($19) { + HEAP32[$rc>>2] = 4; + } else { + $20 = HEAP32[$p>>2]|0; + $21 = $4; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (($21) + 4)|0; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = (_blobSeekToRow($20,$23,$26,$zErr)|0); + HEAP32[$rc>>2] = $27; + $28 = HEAP32[$rc>>2]|0; + $29 = ($28|0)!=(0); + if ($29) { + $30 = HEAP32[$db>>2]|0; + $31 = HEAP32[$rc>>2]|0; + $32 = HEAP32[$zErr>>2]|0; + $33 = ($32|0)!=(0|0); + $34 = $33 ? 1768 : 0; + $35 = HEAP32[$zErr>>2]|0; + HEAP32[$vararg_buffer>>2] = $35; + _sqlite3Error($30,$31,$34,$vararg_buffer); + $36 = HEAP32[$db>>2]|0; + $37 = HEAP32[$zErr>>2]|0; + _sqlite3DbFree($36,$37); + } + } + $38 = HEAP32[$db>>2]|0; + $39 = HEAP32[$rc>>2]|0; + $40 = (_sqlite3ApiExit($38,$39)|0); + HEAP32[$rc>>2] = $40; + $41 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $41; + $42 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($42|0); +} +function _sqlite3ExpirePreparedStatements($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $3; + while(1) { + $4 = HEAP32[$p>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + break; + } + $6 = HEAP32[$p>>2]|0; + $7 = (($6) + 88|0); + $8 = HEAP16[$7>>1]|0; + $9 = $8 & -33; + $10 = $9 | 32; + HEAP16[$7>>1] = $10; + $11 = HEAP32[$p>>2]|0; + $12 = (($11) + 52|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$p>>2] = $13; + } + STACKTOP = sp;return; +} +function _sqlite3_strglob($zGlobPattern,$zString) { + $zGlobPattern = $zGlobPattern|0; + $zString = $zString|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $zGlobPattern; + HEAP32[$1>>2] = $zString; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_patternCompare($2,$3,1776,0)|0); + $5 = ($4|0)==(0); + $6 = $5&1; + STACKTOP = sp;return ($6|0); +} +function _patternCompare($zPattern,$zString,$pInfo,$esc) { + $zPattern = $zPattern|0; + $zString = $zString|0; + $pInfo = $pInfo|0; + $esc = $esc|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $c2 = 0, $invert = 0, $matchAll = 0, $matchOne = 0, $matchSet = 0, $noCase = 0, $prevEscape = 0; + var $prior_c = 0, $seen = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 12|0; + $c = sp + 16|0; + $c2 = sp + 20|0; + $invert = sp + 8|0; + $seen = sp + 4|0; + $matchOne = sp + 47|0; + $matchAll = sp + 46|0; + $matchSet = sp + 45|0; + $noCase = sp + 44|0; + $prevEscape = sp; + $prior_c = sp + 24|0; + HEAP32[$1>>2] = $zPattern; + HEAP32[$2>>2] = $zString; + HEAP32[$3>>2] = $pInfo; + HEAP32[$4>>2] = $esc; + $5 = HEAP32[$3>>2]|0; + $6 = (($5) + 1|0); + $7 = HEAP8[$6>>0]|0; + HEAP8[$matchOne>>0] = $7; + $8 = HEAP32[$3>>2]|0; + $9 = HEAP8[$8>>0]|0; + HEAP8[$matchAll>>0] = $9; + $10 = HEAP32[$3>>2]|0; + $11 = (($10) + 2|0); + $12 = HEAP8[$11>>0]|0; + HEAP8[$matchSet>>0] = $12; + $13 = HEAP32[$3>>2]|0; + $14 = (($13) + 3|0); + $15 = HEAP8[$14>>0]|0; + HEAP8[$noCase>>0] = $15; + HEAP32[$prevEscape>>2] = 0; + while(1) { + $16 = (_sqlite3Utf8Read($1)|0); + HEAP32[$c>>2] = $16; + $17 = ($16|0)!=(0); + if (!($17)) { + label = 84; + break; + } + $18 = HEAP32[$c>>2]|0; + $19 = HEAP8[$matchAll>>0]|0; + $20 = $19&255; + $21 = ($18|0)==($20|0); + if ($21) { + $22 = HEAP32[$prevEscape>>2]|0; + $23 = ($22|0)!=(0); + if (!($23)) { + label = 5; + break; + } + } + $121 = HEAP32[$c>>2]|0; + $122 = HEAP8[$matchOne>>0]|0; + $123 = $122&255; + $124 = ($121|0)==($123|0); + if ($124) { + $125 = HEAP32[$prevEscape>>2]|0; + $126 = ($125|0)!=(0); + if (!($126)) { + $127 = (_sqlite3Utf8Read($2)|0); + $128 = ($127|0)==(0); + if ($128) { + label = 45; + break; + } else { + continue; + } + } + } + $129 = HEAP32[$c>>2]|0; + $130 = HEAP8[$matchSet>>0]|0; + $131 = $130&255; + $132 = ($129|0)==($131|0); + if (!($132)) { + $178 = HEAP32[$4>>2]|0; + $179 = HEAP32[$c>>2]|0; + $180 = ($178|0)==($179|0); + if ($180) { + $181 = HEAP32[$prevEscape>>2]|0; + $182 = ($181|0)!=(0); + if (!($182)) { + HEAP32[$prevEscape>>2] = 1; + continue; + } + } + $183 = (_sqlite3Utf8Read($2)|0); + HEAP32[$c2>>2] = $183; + $184 = HEAP8[$noCase>>0]|0; + $185 = ($184<<24>>24)!=(0); + if ($185) { + $186 = HEAP32[$c>>2]|0; + $187 = $186 & -128; + $188 = ($187|0)!=(0); + if (!($188)) { + $189 = HEAP32[$c>>2]|0; + $190 = (784 + ($189)|0); + $191 = HEAP8[$190>>0]|0; + $192 = $191&255; + HEAP32[$c>>2] = $192; + } + $193 = HEAP32[$c2>>2]|0; + $194 = $193 & -128; + $195 = ($194|0)!=(0); + if (!($195)) { + $196 = HEAP32[$c2>>2]|0; + $197 = (784 + ($196)|0); + $198 = HEAP8[$197>>0]|0; + $199 = $198&255; + HEAP32[$c2>>2] = $199; + } + } + $200 = HEAP32[$c>>2]|0; + $201 = HEAP32[$c2>>2]|0; + $202 = ($200|0)!=($201|0); + if ($202) { + label = 82; + break; + } + HEAP32[$prevEscape>>2] = 0; + continue; + } + HEAP32[$prior_c>>2] = 0; + HEAP32[$seen>>2] = 0; + HEAP32[$invert>>2] = 0; + $133 = (_sqlite3Utf8Read($2)|0); + HEAP32[$c>>2] = $133; + $134 = HEAP32[$c>>2]|0; + $135 = ($134|0)==(0); + if ($135) { + label = 48; + break; + } + $136 = (_sqlite3Utf8Read($1)|0); + HEAP32[$c2>>2] = $136; + $137 = HEAP32[$c2>>2]|0; + $138 = ($137|0)==(94); + if ($138) { + HEAP32[$invert>>2] = 1; + $139 = (_sqlite3Utf8Read($1)|0); + HEAP32[$c2>>2] = $139; + } + $140 = HEAP32[$c2>>2]|0; + $141 = ($140|0)==(93); + if ($141) { + $142 = HEAP32[$c>>2]|0; + $143 = ($142|0)==(93); + if ($143) { + HEAP32[$seen>>2] = 1; + } + $144 = (_sqlite3Utf8Read($1)|0); + HEAP32[$c2>>2] = $144; + } + while(1) { + $145 = HEAP32[$c2>>2]|0; + $146 = ($145|0)!=(0); + if ($146) { + $147 = HEAP32[$c2>>2]|0; + $148 = ($147|0)!=(93); + $211 = $148; + } else { + $211 = 0; + } + $149 = HEAP32[$c2>>2]|0; + if (!($211)) { + break; + } + $150 = ($149|0)==(45); + if ($150) { + $151 = HEAP32[$1>>2]|0; + $152 = HEAP8[$151>>0]|0; + $153 = $152&255; + $154 = ($153|0)!=(93); + if ($154) { + $155 = HEAP32[$1>>2]|0; + $156 = HEAP8[$155>>0]|0; + $157 = $156&255; + $158 = ($157|0)!=(0); + if ($158) { + $159 = HEAP32[$prior_c>>2]|0; + $160 = ($159>>>0)>(0); + if ($160) { + $161 = (_sqlite3Utf8Read($1)|0); + HEAP32[$c2>>2] = $161; + $162 = HEAP32[$c>>2]|0; + $163 = HEAP32[$prior_c>>2]|0; + $164 = ($162>>>0)>=($163>>>0); + if ($164) { + $165 = HEAP32[$c>>2]|0; + $166 = HEAP32[$c2>>2]|0; + $167 = ($165>>>0)<=($166>>>0); + if ($167) { + HEAP32[$seen>>2] = 1; + } + } + HEAP32[$prior_c>>2] = 0; + } else { + label = 66; + } + } else { + label = 66; + } + } else { + label = 66; + } + } else { + label = 66; + } + if ((label|0) == 66) { + label = 0; + $168 = HEAP32[$c>>2]|0; + $169 = HEAP32[$c2>>2]|0; + $170 = ($168|0)==($169|0); + if ($170) { + HEAP32[$seen>>2] = 1; + } + $171 = HEAP32[$c2>>2]|0; + HEAP32[$prior_c>>2] = $171; + } + $172 = (_sqlite3Utf8Read($1)|0); + HEAP32[$c2>>2] = $172; + } + $173 = ($149|0)==(0); + if ($173) { + label = 72; + break; + } + $174 = HEAP32[$seen>>2]|0; + $175 = HEAP32[$invert>>2]|0; + $176 = $174 ^ $175; + $177 = ($176|0)==(0); + if ($177) { + label = 72; + break; + } + } + if ((label|0) == 5) { + while(1) { + label = 0; + $24 = (_sqlite3Utf8Read($1)|0); + HEAP32[$c>>2] = $24; + $25 = HEAP8[$matchAll>>0]|0; + $26 = $25&255; + $27 = ($24|0)==($26|0); + if ($27) { + $209 = 1; + } else { + $28 = HEAP32[$c>>2]|0; + $29 = HEAP8[$matchOne>>0]|0; + $30 = $29&255; + $31 = ($28|0)==($30|0); + $209 = $31; + } + $32 = HEAP32[$c>>2]|0; + if (!($209)) { + break; + } + $33 = HEAP8[$matchOne>>0]|0; + $34 = $33&255; + $35 = ($32|0)==($34|0); + if (!($35)) { + label = 5; + continue; + } + $36 = (_sqlite3Utf8Read($2)|0); + $37 = ($36|0)==(0); + if ($37) { + label = 10; + break; + } else { + label = 5; + } + } + if ((label|0) == 10) { + HEAP32[$0>>2] = 0; + $208 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($208|0); + } + $38 = ($32|0)==(0); + if ($38) { + HEAP32[$0>>2] = 1; + $208 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($208|0); + } + $39 = HEAP32[$c>>2]|0; + $40 = HEAP32[$4>>2]|0; + $41 = ($39|0)==($40|0); + if ($41) { + $42 = (_sqlite3Utf8Read($1)|0); + HEAP32[$c>>2] = $42; + $43 = HEAP32[$c>>2]|0; + $44 = ($43|0)==(0); + if ($44) { + HEAP32[$0>>2] = 0; + $208 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($208|0); + } + } else { + $45 = HEAP32[$c>>2]|0; + $46 = HEAP8[$matchSet>>0]|0; + $47 = $46&255; + $48 = ($45|0)==($47|0); + if ($48) { + L79: while(1) { + $49 = HEAP32[$2>>2]|0; + $50 = HEAP8[$49>>0]|0; + $51 = $50&255; + $52 = ($51|0)!=(0); + if ($52) { + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + -1|0); + $55 = HEAP32[$2>>2]|0; + $56 = HEAP32[$3>>2]|0; + $57 = HEAP32[$4>>2]|0; + $58 = (_patternCompare($54,$55,$56,$57)|0); + $59 = ($58|0)==(0); + $210 = $59; + } else { + $210 = 0; + } + $60 = HEAP32[$2>>2]|0; + if (!($210)) { + break; + } + $61 = (($60) + 1|0); + HEAP32[$2>>2] = $61; + $62 = HEAP8[$60>>0]|0; + $63 = $62&255; + $64 = ($63|0)>=(192); + if (!($64)) { + continue; + } + while(1) { + $65 = HEAP32[$2>>2]|0; + $66 = HEAP8[$65>>0]|0; + $67 = $66&255; + $68 = $67 & 192; + $69 = ($68|0)==(128); + if (!($69)) { + continue L79; + } + $70 = HEAP32[$2>>2]|0; + $71 = (($70) + 1|0); + HEAP32[$2>>2] = $71; + } + } + $72 = HEAP8[$60>>0]|0; + $73 = $72&255; + $74 = ($73|0)!=(0); + $75 = $74&1; + HEAP32[$0>>2] = $75; + $208 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($208|0); + } + } + while(1) { + $76 = (_sqlite3Utf8Read($2)|0); + HEAP32[$c2>>2] = $76; + $77 = ($76|0)!=(0); + if (!($77)) { + label = 41; + break; + } + $78 = HEAP8[$noCase>>0]|0; + $79 = ($78<<24>>24)!=(0); + L93: do { + if ($79) { + $80 = HEAP32[$c2>>2]|0; + $81 = $80 & -128; + $82 = ($81|0)!=(0); + if (!($82)) { + $83 = HEAP32[$c2>>2]|0; + $84 = (784 + ($83)|0); + $85 = HEAP8[$84>>0]|0; + $86 = $85&255; + HEAP32[$c2>>2] = $86; + } + $87 = HEAP32[$c>>2]|0; + $88 = $87 & -128; + $89 = ($88|0)!=(0); + if (!($89)) { + $90 = HEAP32[$c>>2]|0; + $91 = (784 + ($90)|0); + $92 = HEAP8[$91>>0]|0; + $93 = $92&255; + HEAP32[$c>>2] = $93; + } + while(1) { + $94 = HEAP32[$c2>>2]|0; + $95 = ($94|0)!=(0); + if (!($95)) { + break L93; + } + $96 = HEAP32[$c2>>2]|0; + $97 = HEAP32[$c>>2]|0; + $98 = ($96|0)!=($97|0); + if (!($98)) { + break L93; + } + $99 = (_sqlite3Utf8Read($2)|0); + HEAP32[$c2>>2] = $99; + $100 = HEAP32[$c2>>2]|0; + $101 = $100 & -128; + $102 = ($101|0)!=(0); + if ($102) { + continue; + } + $103 = HEAP32[$c2>>2]|0; + $104 = (784 + ($103)|0); + $105 = HEAP8[$104>>0]|0; + $106 = $105&255; + HEAP32[$c2>>2] = $106; + } + } else { + while(1) { + $107 = HEAP32[$c2>>2]|0; + $108 = ($107|0)!=(0); + if (!($108)) { + break L93; + } + $109 = HEAP32[$c2>>2]|0; + $110 = HEAP32[$c>>2]|0; + $111 = ($109|0)!=($110|0); + if (!($111)) { + break L93; + } + $112 = (_sqlite3Utf8Read($2)|0); + HEAP32[$c2>>2] = $112; + } + } + } while(0); + $113 = HEAP32[$c2>>2]|0; + $114 = ($113|0)==(0); + if ($114) { + label = 38; + break; + } + $115 = HEAP32[$1>>2]|0; + $116 = HEAP32[$2>>2]|0; + $117 = HEAP32[$3>>2]|0; + $118 = HEAP32[$4>>2]|0; + $119 = (_patternCompare($115,$116,$117,$118)|0); + $120 = ($119|0)!=(0); + if ($120) { + label = 40; + break; + } + } + if ((label|0) == 38) { + HEAP32[$0>>2] = 0; + $208 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($208|0); + } + else if ((label|0) == 40) { + HEAP32[$0>>2] = 1; + $208 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($208|0); + } + else if ((label|0) == 41) { + HEAP32[$0>>2] = 0; + $208 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($208|0); + } + } + else if ((label|0) == 45) { + HEAP32[$0>>2] = 0; + $208 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($208|0); + } + else if ((label|0) == 48) { + HEAP32[$0>>2] = 0; + $208 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($208|0); + } + else if ((label|0) == 72) { + HEAP32[$0>>2] = 0; + $208 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($208|0); + } + else if ((label|0) == 82) { + HEAP32[$0>>2] = 0; + $208 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($208|0); + } + else if ((label|0) == 84) { + $203 = HEAP32[$2>>2]|0; + $204 = HEAP8[$203>>0]|0; + $205 = $204&255; + $206 = ($205|0)==(0); + $207 = $206&1; + HEAP32[$0>>2] = $207; + $208 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($208|0); + } + return 0|0; +} +function _sqlite3_exec($db,$zSql,$xCallback,$pArg,$pzErrMsg) { + $db = $db|0; + $zSql = $zSql|0; + $xCallback = $xCallback|0; + $pArg = $pArg|0; + $pzErrMsg = $pzErrMsg|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $azCols = 0, $azVals = 0, $callbackIsInit = 0, $i = 0, $nCol = 0; + var $nErrMsg = 0, $pStmt = 0, $rc = 0, $vararg_buffer3 = 0, $zLeftover = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer3 = sp; + $0 = sp + 56|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $3 = sp + 44|0; + $4 = sp + 40|0; + $5 = sp + 36|0; + $rc = sp + 32|0; + $zLeftover = sp + 60|0; + $pStmt = sp + 20|0; + $azCols = sp + 16|0; + $callbackIsInit = sp + 12|0; + $nCol = sp + 8|0; + $azVals = sp + 4|0; + $i = sp + 24|0; + $nErrMsg = sp + 28|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $zSql; + HEAP32[$3>>2] = $xCallback; + HEAP32[$4>>2] = $pArg; + HEAP32[$5>>2] = $pzErrMsg; + HEAP32[$rc>>2] = 0; + HEAP32[$pStmt>>2] = 0; + HEAP32[$azCols>>2] = 0; + $6 = HEAP32[$1>>2]|0; + $7 = (_sqlite3SafetyCheckOk($6)|0); + $8 = ($7|0)!=(0); + if (!($8)) { + $9 = (_sqlite3MisuseError(96044)|0); + HEAP32[$0>>2] = $9; + $154 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($154|0); + } + $10 = HEAP32[$2>>2]|0; + $11 = ($10|0)==(0|0); + if ($11) { + HEAP32[$2>>2] = 1784; + } + $12 = HEAP32[$1>>2]|0; + _sqlite3Error($12,0,0,$vararg_buffer3); + L8: while(1) { + $13 = HEAP32[$rc>>2]|0; + $14 = ($13|0)==(0); + if (!($14)) { + break; + } + $15 = HEAP32[$2>>2]|0; + $16 = HEAP8[$15>>0]|0; + $17 = $16 << 24 >> 24; + $18 = ($17|0)!=(0); + if (!($18)) { + break; + } + HEAP32[$azVals>>2] = 0; + HEAP32[$pStmt>>2] = 0; + $19 = HEAP32[$1>>2]|0; + $20 = HEAP32[$2>>2]|0; + $21 = (_sqlite3_prepare_v2($19,$20,-1,$pStmt,$zLeftover)|0); + HEAP32[$rc>>2] = $21; + $22 = HEAP32[$rc>>2]|0; + $23 = ($22|0)!=(0); + if ($23) { + continue; + } + $24 = HEAP32[$pStmt>>2]|0; + $25 = ($24|0)!=(0|0); + if (!($25)) { + $26 = HEAP32[$zLeftover>>2]|0; + HEAP32[$2>>2] = $26; + continue; + } + HEAP32[$callbackIsInit>>2] = 0; + $27 = HEAP32[$pStmt>>2]|0; + $28 = (_sqlite3_column_count($27)|0); + HEAP32[$nCol>>2] = $28; + while(1) { + $29 = HEAP32[$pStmt>>2]|0; + $30 = (_sqlite3_step($29)|0); + HEAP32[$rc>>2] = $30; + $31 = HEAP32[$3>>2]|0; + $32 = ($31|0)!=(0|0); + do { + if ($32) { + $33 = HEAP32[$rc>>2]|0; + $34 = (100)==($33|0); + if (!($34)) { + $35 = HEAP32[$rc>>2]|0; + $36 = (101)==($35|0); + if (!($36)) { + break; + } + $37 = HEAP32[$callbackIsInit>>2]|0; + $38 = ($37|0)!=(0); + if ($38) { + break; + } + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 24|0); + $41 = HEAP32[$40>>2]|0; + $42 = $41 & 256; + $43 = ($42|0)!=(0); + if (!($43)) { + break; + } + } + $44 = HEAP32[$callbackIsInit>>2]|0; + $45 = ($44|0)!=(0); + if (!($45)) { + $46 = HEAP32[$1>>2]|0; + $47 = HEAP32[$nCol>>2]|0; + $48 = $47<<1; + $49 = $48<<2; + $50 = (($49) + 1)|0; + $51 = (_sqlite3DbMallocZero($46,$50)|0); + HEAP32[$azCols>>2] = $51; + $52 = HEAP32[$azCols>>2]|0; + $53 = ($52|0)==(0|0); + if ($53) { + break L8; + } + HEAP32[$i>>2] = 0; + while(1) { + $54 = HEAP32[$i>>2]|0; + $55 = HEAP32[$nCol>>2]|0; + $56 = ($54|0)<($55|0); + if (!($56)) { + break; + } + $57 = HEAP32[$pStmt>>2]|0; + $58 = HEAP32[$i>>2]|0; + $59 = (_sqlite3_column_name($57,$58)|0); + $60 = HEAP32[$i>>2]|0; + $61 = HEAP32[$azCols>>2]|0; + $62 = (($61) + ($60<<2)|0); + HEAP32[$62>>2] = $59; + $63 = HEAP32[$i>>2]|0; + $64 = (($63) + 1)|0; + HEAP32[$i>>2] = $64; + } + HEAP32[$callbackIsInit>>2] = 1; + } + $65 = HEAP32[$rc>>2]|0; + $66 = ($65|0)==(100); + L33: do { + if ($66) { + $67 = HEAP32[$nCol>>2]|0; + $68 = HEAP32[$azCols>>2]|0; + $69 = (($68) + ($67<<2)|0); + HEAP32[$azVals>>2] = $69; + HEAP32[$i>>2] = 0; + while(1) { + $70 = HEAP32[$i>>2]|0; + $71 = HEAP32[$nCol>>2]|0; + $72 = ($70|0)<($71|0); + if (!($72)) { + break L33; + } + $73 = HEAP32[$pStmt>>2]|0; + $74 = HEAP32[$i>>2]|0; + $75 = (_sqlite3_column_text($73,$74)|0); + $76 = HEAP32[$i>>2]|0; + $77 = HEAP32[$azVals>>2]|0; + $78 = (($77) + ($76<<2)|0); + HEAP32[$78>>2] = $75; + $79 = HEAP32[$i>>2]|0; + $80 = HEAP32[$azVals>>2]|0; + $81 = (($80) + ($79<<2)|0); + $82 = HEAP32[$81>>2]|0; + $83 = ($82|0)!=(0|0); + if (!($83)) { + $84 = HEAP32[$pStmt>>2]|0; + $85 = HEAP32[$i>>2]|0; + $86 = (_sqlite3_column_type($84,$85)|0); + $87 = ($86|0)!=(5); + if ($87) { + label = 28; + break L8; + } + } + $90 = HEAP32[$i>>2]|0; + $91 = (($90) + 1)|0; + HEAP32[$i>>2] = $91; + } + } + } while(0); + $92 = HEAP32[$3>>2]|0; + $93 = HEAP32[$4>>2]|0; + $94 = HEAP32[$nCol>>2]|0; + $95 = HEAP32[$azVals>>2]|0; + $96 = HEAP32[$azCols>>2]|0; + $97 = (FUNCTION_TABLE_iiiii[$92 & 31]($93,$94,$95,$96)|0); + $98 = ($97|0)!=(0); + if ($98) { + label = 31; + break L8; + } + } + } while(0); + $101 = HEAP32[$rc>>2]|0; + $102 = ($101|0)!=(100); + if ($102) { + break; + } + } + $103 = HEAP32[$pStmt>>2]|0; + $104 = (_sqlite3VdbeFinalize($103)|0); + HEAP32[$rc>>2] = $104; + HEAP32[$pStmt>>2] = 0; + $105 = HEAP32[$zLeftover>>2]|0; + HEAP32[$2>>2] = $105; + while(1) { + $106 = HEAP32[$2>>2]|0; + $107 = HEAP8[$106>>0]|0; + $108 = $107&255; + $109 = (136 + ($108)|0); + $110 = HEAP8[$109>>0]|0; + $111 = $110&255; + $112 = $111 & 1; + $113 = ($112|0)!=(0); + if (!($113)) { + break; + } + $114 = HEAP32[$2>>2]|0; + $115 = (($114) + 1|0); + HEAP32[$2>>2] = $115; + } + $116 = HEAP32[$1>>2]|0; + $117 = HEAP32[$azCols>>2]|0; + _sqlite3DbFree($116,$117); + HEAP32[$azCols>>2] = 0; + } + if ((label|0) == 28) { + $88 = HEAP32[$1>>2]|0; + $89 = (($88) + 64|0); + HEAP8[$89>>0] = 1; + } + else if ((label|0) == 31) { + HEAP32[$rc>>2] = 4; + $99 = HEAP32[$pStmt>>2]|0; + (_sqlite3VdbeFinalize($99)|0); + HEAP32[$pStmt>>2] = 0; + $100 = HEAP32[$1>>2]|0; + _sqlite3Error($100,4,0,$vararg_buffer3); + } + $118 = HEAP32[$pStmt>>2]|0; + $119 = ($118|0)!=(0|0); + if ($119) { + $120 = HEAP32[$pStmt>>2]|0; + (_sqlite3VdbeFinalize($120)|0); + } + $121 = HEAP32[$1>>2]|0; + $122 = HEAP32[$azCols>>2]|0; + _sqlite3DbFree($121,$122); + $123 = HEAP32[$1>>2]|0; + $124 = HEAP32[$rc>>2]|0; + $125 = (_sqlite3ApiExit($123,$124)|0); + HEAP32[$rc>>2] = $125; + $126 = HEAP32[$rc>>2]|0; + $127 = ($126|0)!=(0); + do { + if ($127) { + $128 = HEAP32[$rc>>2]|0; + $129 = HEAP32[$1>>2]|0; + $130 = (_sqlite3_errcode($129)|0); + $131 = ($128|0)==($130|0); + if ($131) { + $132 = HEAP32[$5>>2]|0; + $133 = ($132|0)!=(0|0); + if ($133) { + $134 = HEAP32[$1>>2]|0; + $135 = (_sqlite3_errmsg($134)|0); + $136 = (_sqlite3Strlen30($135)|0); + $137 = (1 + ($136))|0; + HEAP32[$nErrMsg>>2] = $137; + $138 = HEAP32[$nErrMsg>>2]|0; + $139 = (_sqlite3Malloc($138)|0); + $140 = HEAP32[$5>>2]|0; + HEAP32[$140>>2] = $139; + $141 = HEAP32[$5>>2]|0; + $142 = HEAP32[$141>>2]|0; + $143 = ($142|0)!=(0|0); + if ($143) { + $144 = HEAP32[$5>>2]|0; + $145 = HEAP32[$144>>2]|0; + $146 = HEAP32[$1>>2]|0; + $147 = (_sqlite3_errmsg($146)|0); + $148 = HEAP32[$nErrMsg>>2]|0; + _memcpy(($145|0),($147|0),($148|0))|0; + break; + } else { + HEAP32[$rc>>2] = 7; + $149 = HEAP32[$1>>2]|0; + _sqlite3Error($149,7,0,$vararg_buffer3); + break; + } + } else { + label = 45; + } + } else { + label = 45; + } + } else { + label = 45; + } + } while(0); + if ((label|0) == 45) { + $150 = HEAP32[$5>>2]|0; + $151 = ($150|0)!=(0|0); + if ($151) { + $152 = HEAP32[$5>>2]|0; + HEAP32[$152>>2] = 0; + } + } + $153 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $153; + $154 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($154|0); +} +function _sqlite3SafetyCheckOk($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $magic = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $magic = sp + 4|0; + HEAP32[$1>>2] = $db; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0|0); + do { + if ($3) { + _logBadConnection(16376); + HEAP32[$0>>2] = 0; + } else { + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 76|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$magic>>2] = $6; + $7 = HEAP32[$magic>>2]|0; + $8 = ($7|0)!=(-1607883113); + if (!($8)) { + HEAP32[$0>>2] = 1; + break; + } + $9 = HEAP32[$1>>2]|0; + $10 = (_sqlite3SafetyCheckSickOrOk($9)|0); + $11 = ($10|0)!=(0); + if ($11) { + _logBadConnection(37560); + } + HEAP32[$0>>2] = 0; + } + } while(0); + $12 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($12|0); +} +function _sqlite3_prepare_v2($db,$zSql,$nBytes,$ppStmt,$pzTail) { + $db = $db|0; + $zSql = $zSql|0; + $nBytes = $nBytes|0; + $ppStmt = $ppStmt|0; + $pzTail = $pzTail|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $rc = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zSql; + HEAP32[$2>>2] = $nBytes; + HEAP32[$3>>2] = $ppStmt; + HEAP32[$4>>2] = $pzTail; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$3>>2]|0; + $9 = HEAP32[$4>>2]|0; + $10 = (_sqlite3LockAndPrepare($5,$6,$7,1,0,$8,$9)|0); + HEAP32[$rc>>2] = $10; + $11 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($11|0); +} +function _sqlite3_errcode($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $db; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = HEAP32[$1>>2]|0; + $5 = (_sqlite3SafetyCheckSickOrOk($4)|0); + $6 = ($5|0)!=(0); + if (!($6)) { + $7 = (_sqlite3MisuseError(123013)|0); + HEAP32[$0>>2] = $7; + $22 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($22|0); + } + } + $8 = HEAP32[$1>>2]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 64|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = ($13|0)!=(0); + if (!($14)) { + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 52|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 56|0); + $20 = HEAP32[$19>>2]|0; + $21 = $17 & $20; + HEAP32[$0>>2] = $21; + $22 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($22|0); + } + } + HEAP32[$0>>2] = 7; + $22 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($22|0); +} +function _sqlite3_errmsg($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $z = sp + 4|0; + HEAP32[$1>>2] = $db; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $4 = (_sqlite3ErrStr(7)|0); + HEAP32[$0>>2] = $4; + $26 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($26|0); + } + $5 = HEAP32[$1>>2]|0; + $6 = (_sqlite3SafetyCheckSickOrOk($5)|0); + $7 = ($6|0)!=(0); + if (!($7)) { + $8 = (_sqlite3MisuseError(122944)|0); + $9 = (_sqlite3ErrStr($8)|0); + HEAP32[$0>>2] = $9; + $26 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($26|0); + } + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 64|0); + $12 = HEAP8[$11>>0]|0; + $13 = ($12<<24>>24)!=(0); + if ($13) { + $14 = (_sqlite3ErrStr(7)|0); + HEAP32[$z>>2] = $14; + } else { + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 224|0); + $17 = HEAP32[$16>>2]|0; + $18 = (_sqlite3_value_text($17)|0); + HEAP32[$z>>2] = $18; + $19 = HEAP32[$z>>2]|0; + $20 = ($19|0)==(0|0); + if ($20) { + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 52|0); + $23 = HEAP32[$22>>2]|0; + $24 = (_sqlite3ErrStr($23)|0); + HEAP32[$z>>2] = $24; + } + } + $25 = HEAP32[$z>>2]|0; + HEAP32[$0>>2] = $25; + $26 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($26|0); +} +function _sqlite3_prepare($db,$zSql,$nBytes,$ppStmt,$pzTail) { + $db = $db|0; + $zSql = $zSql|0; + $nBytes = $nBytes|0; + $ppStmt = $ppStmt|0; + $pzTail = $pzTail|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $rc = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zSql; + HEAP32[$2>>2] = $nBytes; + HEAP32[$3>>2] = $ppStmt; + HEAP32[$4>>2] = $pzTail; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$3>>2]|0; + $9 = HEAP32[$4>>2]|0; + $10 = (_sqlite3LockAndPrepare($5,$6,$7,0,0,$8,$9)|0); + HEAP32[$rc>>2] = $10; + $11 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($11|0); +} +function _sqlite3LockAndPrepare($db,$zSql,$nBytes,$saveSqlFlag,$pOld,$ppStmt,$pzTail) { + $db = $db|0; + $zSql = $zSql|0; + $nBytes = $nBytes|0; + $saveSqlFlag = $saveSqlFlag|0; + $pOld = $pOld|0; + $ppStmt = $ppStmt|0; + $pzTail = $pzTail|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $4 = sp + 16|0; + $5 = sp + 8|0; + $6 = sp + 4|0; + $7 = sp; + $rc = sp + 12|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $zSql; + HEAP32[$3>>2] = $nBytes; + HEAP32[$4>>2] = $saveSqlFlag; + HEAP32[$5>>2] = $pOld; + HEAP32[$6>>2] = $ppStmt; + HEAP32[$7>>2] = $pzTail; + $8 = HEAP32[$6>>2]|0; + HEAP32[$8>>2] = 0; + $9 = HEAP32[$1>>2]|0; + $10 = (_sqlite3SafetyCheckOk($9)|0); + $11 = ($10|0)!=(0); + if (!($11)) { + $12 = (_sqlite3MisuseError(100422)|0); + HEAP32[$0>>2] = $12; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); + } + $13 = HEAP32[$1>>2]|0; + _sqlite3BtreeEnterAll($13); + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$3>>2]|0; + $17 = HEAP32[$4>>2]|0; + $18 = HEAP32[$5>>2]|0; + $19 = HEAP32[$6>>2]|0; + $20 = HEAP32[$7>>2]|0; + $21 = (_sqlite3Prepare($14,$15,$16,$17,$18,$19,$20)|0); + HEAP32[$rc>>2] = $21; + $22 = HEAP32[$rc>>2]|0; + $23 = ($22|0)==(17); + if ($23) { + $24 = HEAP32[$6>>2]|0; + $25 = HEAP32[$24>>2]|0; + (_sqlite3_finalize($25)|0); + $26 = HEAP32[$1>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = HEAP32[$3>>2]|0; + $29 = HEAP32[$4>>2]|0; + $30 = HEAP32[$5>>2]|0; + $31 = HEAP32[$6>>2]|0; + $32 = HEAP32[$7>>2]|0; + $33 = (_sqlite3Prepare($26,$27,$28,$29,$30,$31,$32)|0); + HEAP32[$rc>>2] = $33; + } + $34 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $34; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); +} +function _sqlite3_create_module($db,$zName,$pModule,$pAux) { + $db = $db|0; + $zName = $zName|0; + $pModule = $pModule|0; + $pAux = $pAux|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zName; + HEAP32[$2>>2] = $pModule; + HEAP32[$3>>2] = $pAux; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$3>>2]|0; + $8 = (_createModule($4,$5,$6,$7,0)|0); + STACKTOP = sp;return ($8|0); +} +function _createModule($db,$zName,$pModule,$pAux,$xDestroy) { + $db = $db|0; + $zName = $zName|0; + $pModule = $pModule|0; + $pAux = $pAux|0; + $xDestroy = $xDestroy|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $nName = 0, $pDel = 0, $pMod = 0, $rc = 0, $zCopy = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 20|0; + $rc = sp + 16|0; + $nName = sp + 8|0; + $pMod = sp + 4|0; + $pDel = sp; + $zCopy = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zName; + HEAP32[$2>>2] = $pModule; + HEAP32[$3>>2] = $pAux; + HEAP32[$4>>2] = $xDestroy; + HEAP32[$rc>>2] = 0; + $5 = HEAP32[$1>>2]|0; + $6 = (_sqlite3Strlen30($5)|0); + HEAP32[$nName>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 300|0); + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$nName>>2]|0; + $11 = (_sqlite3HashFind($8,$9,$10)|0); + $12 = ($11|0)!=(0|0); + if ($12) { + $13 = (_sqlite3MisuseError(108523)|0); + HEAP32[$rc>>2] = $13; + } else { + $14 = HEAP32[$0>>2]|0; + $15 = HEAP32[$nName>>2]|0; + $16 = (16 + ($15))|0; + $17 = (($16) + 1)|0; + $18 = (_sqlite3DbMallocRaw($14,$17)|0); + HEAP32[$pMod>>2] = $18; + $19 = HEAP32[$pMod>>2]|0; + $20 = ($19|0)!=(0|0); + if ($20) { + $21 = HEAP32[$pMod>>2]|0; + $22 = (($21) + 16|0); + HEAP32[$zCopy>>2] = $22; + $23 = HEAP32[$zCopy>>2]|0; + $24 = HEAP32[$1>>2]|0; + $25 = HEAP32[$nName>>2]|0; + $26 = (($25) + 1)|0; + _memcpy(($23|0),($24|0),($26|0))|0; + $27 = HEAP32[$zCopy>>2]|0; + $28 = HEAP32[$pMod>>2]|0; + $29 = (($28) + 4|0); + HEAP32[$29>>2] = $27; + $30 = HEAP32[$2>>2]|0; + $31 = HEAP32[$pMod>>2]|0; + HEAP32[$31>>2] = $30; + $32 = HEAP32[$3>>2]|0; + $33 = HEAP32[$pMod>>2]|0; + $34 = (($33) + 8|0); + HEAP32[$34>>2] = $32; + $35 = HEAP32[$4>>2]|0; + $36 = HEAP32[$pMod>>2]|0; + $37 = (($36) + 12|0); + HEAP32[$37>>2] = $35; + $38 = HEAP32[$0>>2]|0; + $39 = (($38) + 300|0); + $40 = HEAP32[$zCopy>>2]|0; + $41 = HEAP32[$nName>>2]|0; + $42 = HEAP32[$pMod>>2]|0; + $43 = (_sqlite3HashInsert($39,$40,$41,$42)|0); + HEAP32[$pDel>>2] = $43; + $44 = HEAP32[$pDel>>2]|0; + $45 = ($44|0)!=(0|0); + if ($45) { + $46 = HEAP32[$0>>2]|0; + $47 = (($46) + 64|0); + HEAP8[$47>>0] = 1; + $48 = HEAP32[$0>>2]|0; + $49 = HEAP32[$pDel>>2]|0; + _sqlite3DbFree($48,$49); + } + } + } + $50 = HEAP32[$0>>2]|0; + $51 = HEAP32[$rc>>2]|0; + $52 = (_sqlite3ApiExit($50,$51)|0); + HEAP32[$rc>>2] = $52; + $53 = HEAP32[$rc>>2]|0; + $54 = ($53|0)!=(0); + if (!($54)) { + $59 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($59|0); + } + $55 = HEAP32[$4>>2]|0; + $56 = ($55|0)!=(0|0); + if (!($56)) { + $59 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($59|0); + } + $57 = HEAP32[$4>>2]|0; + $58 = HEAP32[$3>>2]|0; + FUNCTION_TABLE_vi[$57 & 31]($58); + $59 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($59|0); +} +function _sqlite3_create_module_v2($db,$zName,$pModule,$pAux,$xDestroy) { + $db = $db|0; + $zName = $zName|0; + $pModule = $pModule|0; + $pAux = $pAux|0; + $xDestroy = $xDestroy|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zName; + HEAP32[$2>>2] = $pModule; + HEAP32[$3>>2] = $pAux; + HEAP32[$4>>2] = $xDestroy; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$3>>2]|0; + $9 = HEAP32[$4>>2]|0; + $10 = (_createModule($5,$6,$7,$8,$9)|0); + STACKTOP = sp;return ($10|0); +} +function _sqlite3_declare_vtab($db,$zCreateTable) { + $db = $db|0; + $zCreateTable = $zCreateTable|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $pParse = 0, $pTab = 0, $rc = 0, $vararg_buffer1 = 0, $zErr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer1 = sp; + $0 = sp + 28|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $pParse = sp + 12|0; + $rc = sp + 16|0; + $pTab = sp + 20|0; + $zErr = sp + 24|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $zCreateTable; + HEAP32[$rc>>2] = 0; + HEAP32[$zErr>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 316|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 316|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 4|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$pTab>>2] = $11; + $12 = ($11|0)!=(0|0); + if ($12) { + $15 = HEAP32[$1>>2]|0; + $16 = (_sqlite3DbMallocZero($15,536)|0); + HEAP32[$pParse>>2] = $16; + $17 = HEAP32[$pParse>>2]|0; + $18 = ($17|0)==(0|0); + if ($18) { + HEAP32[$rc>>2] = 7; + } else { + $19 = HEAP32[$pParse>>2]|0; + $20 = (($19) + 451|0); + HEAP8[$20>>0] = 1; + $21 = HEAP32[$1>>2]|0; + $22 = HEAP32[$pParse>>2]|0; + HEAP32[$22>>2] = $21; + $23 = HEAP32[$pParse>>2]|0; + $24 = (($23) + 424|0); + HEAP32[$24>>2] = 1; + $25 = HEAP32[$pParse>>2]|0; + $26 = HEAP32[$2>>2]|0; + $27 = (_sqlite3RunParser($25,$26,$zErr)|0); + $28 = (0)==($27|0); + if ($28) { + $29 = HEAP32[$pParse>>2]|0; + $30 = (($29) + 484|0); + $31 = HEAP32[$30>>2]|0; + $32 = ($31|0)!=(0|0); + if ($32) { + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 64|0); + $35 = HEAP8[$34>>0]|0; + $36 = ($35<<24>>24)!=(0); + if ($36) { + label = 14; + } else { + $37 = HEAP32[$pParse>>2]|0; + $38 = (($37) + 484|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + 12|0); + $41 = HEAP32[$40>>2]|0; + $42 = ($41|0)!=(0|0); + if ($42) { + label = 14; + } else { + $43 = HEAP32[$pParse>>2]|0; + $44 = (($43) + 484|0); + $45 = HEAP32[$44>>2]|0; + $46 = (($45) + 44|0); + $47 = HEAP8[$46>>0]|0; + $48 = $47&255; + $49 = $48 & 16; + $50 = ($49|0)==(0); + if ($50) { + $51 = HEAP32[$pTab>>2]|0; + $52 = (($51) + 4|0); + $53 = HEAP32[$52>>2]|0; + $54 = ($53|0)!=(0|0); + if (!($54)) { + $55 = HEAP32[$pParse>>2]|0; + $56 = (($55) + 484|0); + $57 = HEAP32[$56>>2]|0; + $58 = (($57) + 4|0); + $59 = HEAP32[$58>>2]|0; + $60 = HEAP32[$pTab>>2]|0; + $61 = (($60) + 4|0); + HEAP32[$61>>2] = $59; + $62 = HEAP32[$pParse>>2]|0; + $63 = (($62) + 484|0); + $64 = HEAP32[$63>>2]|0; + $65 = (($64) + 38|0); + $66 = HEAP16[$65>>1]|0; + $67 = HEAP32[$pTab>>2]|0; + $68 = (($67) + 38|0); + HEAP16[$68>>1] = $66; + $69 = HEAP32[$pParse>>2]|0; + $70 = (($69) + 484|0); + $71 = HEAP32[$70>>2]|0; + $72 = (($71) + 38|0); + HEAP16[$72>>1] = 0; + $73 = HEAP32[$pParse>>2]|0; + $74 = (($73) + 484|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($75) + 4|0); + HEAP32[$76>>2] = 0; + } + $77 = HEAP32[$1>>2]|0; + $78 = (($77) + 316|0); + $79 = HEAP32[$78>>2]|0; + $80 = (($79) + 4|0); + HEAP32[$80>>2] = 0; + } else { + label = 14; + } + } + } + } else { + label = 14; + } + } else { + label = 14; + } + if ((label|0) == 14) { + $81 = HEAP32[$1>>2]|0; + $82 = HEAP32[$zErr>>2]|0; + $83 = ($82|0)!=(0|0); + $84 = $83 ? 1768 : 0; + $85 = HEAP32[$zErr>>2]|0; + HEAP32[$vararg_buffer1>>2] = $85; + _sqlite3Error($81,1,$84,$vararg_buffer1); + $86 = HEAP32[$1>>2]|0; + $87 = HEAP32[$zErr>>2]|0; + _sqlite3DbFree($86,$87); + HEAP32[$rc>>2] = 1; + } + $88 = HEAP32[$pParse>>2]|0; + $89 = (($88) + 451|0); + HEAP8[$89>>0] = 0; + $90 = HEAP32[$pParse>>2]|0; + $91 = (($90) + 8|0); + $92 = HEAP32[$91>>2]|0; + $93 = ($92|0)!=(0|0); + if ($93) { + $94 = HEAP32[$pParse>>2]|0; + $95 = (($94) + 8|0); + $96 = HEAP32[$95>>2]|0; + (_sqlite3VdbeFinalize($96)|0); + } + $97 = HEAP32[$1>>2]|0; + $98 = HEAP32[$pParse>>2]|0; + $99 = (($98) + 484|0); + $100 = HEAP32[$99>>2]|0; + _sqlite3DeleteTable($97,$100); + $101 = HEAP32[$pParse>>2]|0; + _sqlite3ParserReset($101); + $102 = HEAP32[$1>>2]|0; + $103 = HEAP32[$pParse>>2]|0; + _sqlite3DbFree($102,$103); + } + $104 = HEAP32[$1>>2]|0; + $105 = HEAP32[$rc>>2]|0; + $106 = (_sqlite3ApiExit($104,$105)|0); + HEAP32[$rc>>2] = $106; + $107 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $107; + $108 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($108|0); + } + } + $13 = HEAP32[$1>>2]|0; + _sqlite3Error($13,21,0,$vararg_buffer1); + $14 = (_sqlite3MisuseError(109181)|0); + HEAP32[$0>>2] = $14; + $108 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($108|0); +} +function _sqlite3RunParser($pParse,$zSql,$pzErrMsg) { + $pParse = $pParse|0; + $zSql = $zSql|0; + $pzErrMsg = $pzErrMsg|0; + var $$byval_copy10 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; + var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; + var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; + var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; + var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; + var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; + var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; + var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; + var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; + var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; + var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $enableLookaside = 0, $i = 0, $lastTokenParsed = 0, $mxSqlLen = 0, $nErr = 0, $p = 0, $p1 = 0, $pEngine = 0, $tokenType = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $$byval_copy10 = sp; + $0 = sp + 52|0; + $1 = sp + 48|0; + $2 = sp + 44|0; + $3 = sp + 40|0; + $nErr = sp + 36|0; + $i = sp + 32|0; + $pEngine = sp + 56|0; + $tokenType = sp + 20|0; + $lastTokenParsed = sp + 16|0; + $enableLookaside = sp + 60|0; + $db = sp + 12|0; + $mxSqlLen = sp + 8|0; + $p = sp + 24|0; + $p1 = sp + 28|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $zSql; + HEAP32[$3>>2] = $pzErrMsg; + HEAP32[$nErr>>2] = 0; + HEAP32[$lastTokenParsed>>2] = -1; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$db>>2]|0; + $7 = (($6) + 88|0); + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$mxSqlLen>>2] = $9; + $10 = HEAP32[$db>>2]|0; + $11 = (($10) + 140|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)==(0); + if ($13) { + $14 = HEAP32[$db>>2]|0; + $15 = (($14) + 232|0); + HEAP32[$15>>2] = 0; + } + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 12|0); + HEAP32[$17>>2] = 0; + $18 = HEAP32[$2>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 480|0); + HEAP32[$20>>2] = $18; + HEAP32[$i>>2] = 0; + $21 = (_sqlite3ParserAlloc(41)|0); + HEAP32[$pEngine>>2] = $21; + $22 = HEAP32[$pEngine>>2]|0; + $23 = ($22|0)==(0|0); + $24 = HEAP32[$db>>2]|0; + if ($23) { + $25 = (($24) + 64|0); + HEAP8[$25>>0] = 1; + HEAP32[$0>>2] = 7; + $285 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($285|0); + } + $26 = (($24) + 240|0); + $27 = (($26) + 2|0); + $28 = HEAP8[$27>>0]|0; + HEAP8[$enableLookaside>>0] = $28; + $29 = HEAP32[$db>>2]|0; + $30 = (($29) + 240|0); + $31 = (($30) + 28|0); + $32 = HEAP32[$31>>2]|0; + $33 = ($32|0)!=(0|0); + if ($33) { + $34 = HEAP32[$db>>2]|0; + $35 = (($34) + 240|0); + $36 = (($35) + 2|0); + HEAP8[$36>>0] = 1; + } + while(1) { + $37 = HEAP32[$db>>2]|0; + $38 = (($37) + 64|0); + $39 = HEAP8[$38>>0]|0; + $40 = ($39<<24>>24)!=(0); + if ($40) { + break; + } + $41 = HEAP32[$i>>2]|0; + $42 = HEAP32[$2>>2]|0; + $43 = (($42) + ($41)|0); + $44 = HEAP8[$43>>0]|0; + $45 = $44 << 24 >> 24; + $46 = ($45|0)!=(0); + if (!($46)) { + break; + } + $47 = HEAP32[$i>>2]|0; + $48 = HEAP32[$2>>2]|0; + $49 = (($48) + ($47)|0); + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 504|0); + HEAP32[$51>>2] = $49; + $52 = HEAP32[$i>>2]|0; + $53 = HEAP32[$2>>2]|0; + $54 = (($53) + ($52)|0); + $55 = (_sqlite3GetToken($54,$tokenType)|0); + $56 = HEAP32[$1>>2]|0; + $57 = (($56) + 504|0); + $58 = (($57) + 4|0); + HEAP32[$58>>2] = $55; + $59 = HEAP32[$1>>2]|0; + $60 = (($59) + 504|0); + $61 = (($60) + 4|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$i>>2]|0; + $64 = (($63) + ($62))|0; + HEAP32[$i>>2] = $64; + $65 = HEAP32[$i>>2]|0; + $66 = HEAP32[$mxSqlLen>>2]|0; + $67 = ($65|0)>($66|0); + if ($67) { + label = 10; + break; + } + $70 = HEAP32[$tokenType>>2]|0; + if ((($70|0) == 1)) { + $88 = HEAP32[$i>>2]|0; + $89 = HEAP32[$2>>2]|0; + $90 = (($89) + ($88)|0); + $91 = HEAP32[$1>>2]|0; + $92 = (($91) + 480|0); + HEAP32[$92>>2] = $90; + } else if ((($70|0) == 150)) { + label = 14; + break; + } else if ((($70|0) == 151)) { + $71 = HEAP32[$db>>2]|0; + $72 = (($71) + 232|0); + $73 = HEAP32[$72>>2]|0; + $74 = ($73|0)!=(0); + if ($74) { + label = 13; + break; + } else { + continue; + } + } + $93 = HEAP32[$pEngine>>2]|0; + $94 = HEAP32[$tokenType>>2]|0; + $95 = HEAP32[$1>>2]|0; + $96 = (($95) + 504|0); + $97 = HEAP32[$1>>2]|0; + ;HEAP32[$$byval_copy10+0>>2]=HEAP32[$96+0>>2]|0;HEAP32[$$byval_copy10+4>>2]=HEAP32[$96+4>>2]|0; + _sqlite3Parser($93,$94,$$byval_copy10,$97); + $98 = HEAP32[$tokenType>>2]|0; + HEAP32[$lastTokenParsed>>2] = $98; + $99 = HEAP32[$1>>2]|0; + $100 = (($99) + 12|0); + $101 = HEAP32[$100>>2]|0; + $102 = ($101|0)!=(0); + if ($102) { + break; + } + } + if ((label|0) == 10) { + $68 = HEAP32[$1>>2]|0; + $69 = (($68) + 12|0); + HEAP32[$69>>2] = 18; + } + else if ((label|0) == 13) { + $75 = HEAP32[$1>>2]|0; + _sqlite3ErrorMsg($75,16456,$$byval_copy10); + $76 = HEAP32[$1>>2]|0; + $77 = (($76) + 12|0); + HEAP32[$77>>2] = 9; + } + else if ((label|0) == 14) { + $78 = HEAP32[$db>>2]|0; + $79 = HEAP32[$3>>2]|0; + $80 = HEAP32[$79>>2]|0; + _sqlite3DbFree($78,$80); + $81 = HEAP32[$db>>2]|0; + $82 = HEAP32[$1>>2]|0; + $83 = (($82) + 504|0); + HEAP32[$$byval_copy10>>2] = $83; + $84 = (_sqlite3MPrintf($81,16472,$$byval_copy10)|0); + $85 = HEAP32[$3>>2]|0; + HEAP32[$85>>2] = $84; + $86 = HEAP32[$nErr>>2]|0; + $87 = (($86) + 1)|0; + HEAP32[$nErr>>2] = $87; + } + $103 = HEAP32[$i>>2]|0; + $104 = HEAP32[$2>>2]|0; + $105 = (($104) + ($103)|0); + $106 = HEAP8[$105>>0]|0; + $107 = $106 << 24 >> 24; + $108 = ($107|0)==(0); + if ($108) { + $109 = HEAP32[$nErr>>2]|0; + $110 = ($109|0)==(0); + if ($110) { + $111 = HEAP32[$1>>2]|0; + $112 = (($111) + 12|0); + $113 = HEAP32[$112>>2]|0; + $114 = ($113|0)==(0); + if ($114) { + $115 = HEAP32[$lastTokenParsed>>2]|0; + $116 = ($115|0)!=(1); + if ($116) { + $117 = HEAP32[$pEngine>>2]|0; + $118 = HEAP32[$1>>2]|0; + $119 = (($118) + 504|0); + $120 = HEAP32[$1>>2]|0; + ;HEAP32[$$byval_copy10+0>>2]=HEAP32[$119+0>>2]|0;HEAP32[$$byval_copy10+4>>2]=HEAP32[$119+4>>2]|0; + _sqlite3Parser($117,1,$$byval_copy10,$120); + $121 = HEAP32[$i>>2]|0; + $122 = HEAP32[$2>>2]|0; + $123 = (($122) + ($121)|0); + $124 = HEAP32[$1>>2]|0; + $125 = (($124) + 480|0); + HEAP32[$125>>2] = $123; + } + $126 = HEAP32[$pEngine>>2]|0; + $127 = HEAP32[$1>>2]|0; + $128 = (($127) + 504|0); + $129 = HEAP32[$1>>2]|0; + ;HEAP32[$$byval_copy10+0>>2]=HEAP32[$128+0>>2]|0;HEAP32[$$byval_copy10+4>>2]=HEAP32[$128+4>>2]|0; + _sqlite3Parser($126,0,$$byval_copy10,$129); + } + } + } + $130 = HEAP32[$pEngine>>2]|0; + _sqlite3ParserFree($130,13); + $131 = HEAP8[$enableLookaside>>0]|0; + $132 = HEAP32[$db>>2]|0; + $133 = (($132) + 240|0); + $134 = (($133) + 2|0); + HEAP8[$134>>0] = $131; + $135 = HEAP32[$db>>2]|0; + $136 = (($135) + 64|0); + $137 = HEAP8[$136>>0]|0; + $138 = ($137<<24>>24)!=(0); + if ($138) { + $139 = HEAP32[$1>>2]|0; + $140 = (($139) + 12|0); + HEAP32[$140>>2] = 7; + } + $141 = HEAP32[$1>>2]|0; + $142 = (($141) + 12|0); + $143 = HEAP32[$142>>2]|0; + $144 = ($143|0)!=(0); + if ($144) { + $145 = HEAP32[$1>>2]|0; + $146 = (($145) + 12|0); + $147 = HEAP32[$146>>2]|0; + $148 = ($147|0)!=(101); + if ($148) { + $149 = HEAP32[$1>>2]|0; + $150 = (($149) + 4|0); + $151 = HEAP32[$150>>2]|0; + $152 = ($151|0)==(0|0); + if ($152) { + $153 = HEAP32[$1>>2]|0; + $154 = (($153) + 4|0); + $155 = HEAP32[$db>>2]|0; + $156 = HEAP32[$1>>2]|0; + $157 = (($156) + 12|0); + $158 = HEAP32[$157>>2]|0; + $159 = (_sqlite3ErrStr($158)|0); + HEAP32[$$byval_copy10>>2] = $159; + _sqlite3SetString($154,$155,1768,$$byval_copy10); + } + } + } + $160 = HEAP32[$1>>2]|0; + $161 = (($160) + 4|0); + $162 = HEAP32[$161>>2]|0; + $163 = ($162|0)!=(0|0); + if ($163) { + $164 = HEAP32[$1>>2]|0; + $165 = (($164) + 4|0); + $166 = HEAP32[$165>>2]|0; + $167 = HEAP32[$3>>2]|0; + HEAP32[$167>>2] = $166; + $168 = HEAP32[$1>>2]|0; + $169 = (($168) + 12|0); + $170 = HEAP32[$169>>2]|0; + $171 = HEAP32[$3>>2]|0; + $172 = HEAP32[$171>>2]|0; + HEAP32[$$byval_copy10>>2] = $172; + _sqlite3_log($170,1768,$$byval_copy10); + $173 = HEAP32[$1>>2]|0; + $174 = (($173) + 4|0); + HEAP32[$174>>2] = 0; + $175 = HEAP32[$nErr>>2]|0; + $176 = (($175) + 1)|0; + HEAP32[$nErr>>2] = $176; + } + $177 = HEAP32[$1>>2]|0; + $178 = (($177) + 8|0); + $179 = HEAP32[$178>>2]|0; + $180 = ($179|0)!=(0|0); + if ($180) { + $181 = HEAP32[$1>>2]|0; + $182 = (($181) + 64|0); + $183 = HEAP32[$182>>2]|0; + $184 = ($183|0)>(0); + if ($184) { + $185 = HEAP32[$1>>2]|0; + $186 = (($185) + 18|0); + $187 = HEAP8[$186>>0]|0; + $188 = $187&255; + $189 = ($188|0)==(0); + if ($189) { + $190 = HEAP32[$1>>2]|0; + $191 = (($190) + 8|0); + $192 = HEAP32[$191>>2]|0; + _sqlite3VdbeDelete($192); + $193 = HEAP32[$1>>2]|0; + $194 = (($193) + 8|0); + HEAP32[$194>>2] = 0; + } + } + } + $195 = HEAP32[$1>>2]|0; + $196 = (($195) + 18|0); + $197 = HEAP8[$196>>0]|0; + $198 = $197&255; + $199 = ($198|0)==(0); + if ($199) { + $200 = HEAP32[$db>>2]|0; + $201 = HEAP32[$1>>2]|0; + $202 = (($201) + 400|0); + $203 = HEAP32[$202>>2]|0; + _sqlite3DbFree($200,$203); + $204 = HEAP32[$1>>2]|0; + $205 = (($204) + 400|0); + HEAP32[$205>>2] = 0; + $206 = HEAP32[$1>>2]|0; + $207 = (($206) + 396|0); + HEAP32[$207>>2] = 0; + } + $208 = HEAP32[$1>>2]|0; + $209 = (($208) + 520|0); + $210 = HEAP32[$209>>2]|0; + _sqlite3_free($210); + $211 = HEAP32[$1>>2]|0; + $212 = (($211) + 451|0); + $213 = HEAP8[$212>>0]|0; + $214 = ($213<<24>>24)!=(0); + if (!($214)) { + $215 = HEAP32[$db>>2]|0; + $216 = HEAP32[$1>>2]|0; + $217 = (($216) + 484|0); + $218 = HEAP32[$217>>2]|0; + _sqlite3DeleteTable($215,$218); + } + $219 = HEAP32[$1>>2]|0; + $220 = (($219) + 449|0); + $221 = HEAP8[$220>>0]|0; + $222 = ($221<<24>>24)!=(0); + if ($222) { + $223 = HEAP32[$db>>2]|0; + $224 = HEAP32[$1>>2]|0; + $225 = (($224) + 532|0); + $226 = HEAP32[$225>>2]|0; + _sqlite3WithDelete($223,$226); + } + $227 = HEAP32[$db>>2]|0; + $228 = HEAP32[$1>>2]|0; + $229 = (($228) + 488|0); + $230 = HEAP32[$229>>2]|0; + _sqlite3DeleteTrigger($227,$230); + $231 = HEAP32[$1>>2]|0; + $232 = (($231) + 444|0); + $233 = HEAP32[$232>>2]|0; + $234 = (($233) - 1)|0; + HEAP32[$i>>2] = $234; + while(1) { + $235 = HEAP32[$i>>2]|0; + $236 = ($235|0)>=(0); + $237 = HEAP32[$db>>2]|0; + if (!($236)) { + break; + } + $238 = HEAP32[$i>>2]|0; + $239 = HEAP32[$1>>2]|0; + $240 = (($239) + 472|0); + $241 = HEAP32[$240>>2]|0; + $242 = (($241) + ($238<<2)|0); + $243 = HEAP32[$242>>2]|0; + _sqlite3DbFree($237,$243); + $244 = HEAP32[$i>>2]|0; + $245 = (($244) + -1)|0; + HEAP32[$i>>2] = $245; + } + $246 = HEAP32[$1>>2]|0; + $247 = (($246) + 472|0); + $248 = HEAP32[$247>>2]|0; + _sqlite3DbFree($237,$248); + while(1) { + $249 = HEAP32[$1>>2]|0; + $250 = (($249) + 404|0); + $251 = HEAP32[$250>>2]|0; + $252 = ($251|0)!=(0|0); + if (!($252)) { + break; + } + $253 = HEAP32[$1>>2]|0; + $254 = (($253) + 404|0); + $255 = HEAP32[$254>>2]|0; + HEAP32[$p>>2] = $255; + $256 = HEAP32[$p>>2]|0; + $257 = HEAP32[$256>>2]|0; + $258 = HEAP32[$1>>2]|0; + $259 = (($258) + 404|0); + HEAP32[$259>>2] = $257; + $260 = HEAP32[$db>>2]|0; + $261 = HEAP32[$p>>2]|0; + _sqlite3DbFree($260,$261); + } + while(1) { + $262 = HEAP32[$1>>2]|0; + $263 = (($262) + 524|0); + $264 = HEAP32[$263>>2]|0; + $265 = ($264|0)!=(0|0); + if (!($265)) { + break; + } + $266 = HEAP32[$1>>2]|0; + $267 = (($266) + 524|0); + $268 = HEAP32[$267>>2]|0; + HEAP32[$p1>>2] = $268; + $269 = HEAP32[$p1>>2]|0; + $270 = (($269) + 72|0); + $271 = HEAP32[$270>>2]|0; + $272 = HEAP32[$1>>2]|0; + $273 = (($272) + 524|0); + HEAP32[$273>>2] = $271; + $274 = HEAP32[$db>>2]|0; + $275 = HEAP32[$p1>>2]|0; + _sqlite3DeleteTable($274,$275); + } + $276 = HEAP32[$nErr>>2]|0; + $277 = ($276|0)>(0); + if ($277) { + $278 = HEAP32[$1>>2]|0; + $279 = (($278) + 12|0); + $280 = HEAP32[$279>>2]|0; + $281 = ($280|0)==(0); + if ($281) { + $282 = HEAP32[$1>>2]|0; + $283 = (($282) + 12|0); + HEAP32[$283>>2] = 1; + } + } + $284 = HEAP32[$nErr>>2]|0; + HEAP32[$0>>2] = $284; + $285 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($285|0); +} +function _sqlite3_vtab_on_conflict($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 68|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = (($4) - 1)|0; + $6 = (1800 + ($5)|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + STACKTOP = sp;return ($8|0); +} +function _sqlite3_vtab_config($db,$op,$varargs) { + $db = $db|0; + $op = $op|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $ap = 0, $arglist_current = 0, $arglist_next = 0, $cond = 0, $p = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 32|0; + $1 = sp + 4|0; + $ap = sp + 8|0; + $rc = sp + 24|0; + $p = sp + 28|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $op; + HEAP32[$rc>>2] = 0; + HEAP32[$ap>>2] = $varargs; + $2 = HEAP32[$1>>2]|0; + $cond = ($2|0)==(1); + do { + if ($cond) { + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 316|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$p>>2] = $5; + $6 = HEAP32[$p>>2]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + $arglist_current = HEAP32[$ap>>2]|0; + $9 = HEAP32[$arglist_current>>2]|0; + $arglist_next = (($arglist_current) + 4|0); + HEAP32[$ap>>2] = $arglist_next; + $10 = $9&255; + $11 = HEAP32[$p>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + 16|0); + HEAP8[$13>>0] = $10; + break; + } else { + $8 = (_sqlite3MisuseError(109555)|0); + HEAP32[$rc>>2] = $8; + break; + } + } else { + $14 = (_sqlite3MisuseError(109563)|0); + HEAP32[$rc>>2] = $14; + } + } while(0); + $15 = HEAP32[$rc>>2]|0; + $16 = ($15|0)!=(0); + if (!($16)) { + $19 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($19|0); + } + $17 = HEAP32[$0>>2]|0; + $18 = HEAP32[$rc>>2]|0; + _sqlite3Error($17,$18,0,$vararg_buffer); + $19 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($19|0); +} +function _sqlite3ValueNew($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3DbMallocZero($1,40)|0); + HEAP32[$p>>2] = $2; + $3 = HEAP32[$p>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + $9 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($9|0); + } + $5 = HEAP32[$p>>2]|0; + $6 = (($5) + 28|0); + HEAP16[$6>>1] = 1; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$p>>2]|0; + HEAP32[$8>>2] = $7; + $9 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($9|0); +} +function _sqlite3ValueSetStr($v,$n,$z,$enc,$xDel) { + $v = $v|0; + $n = $n|0; + $z = $z|0; + $enc = $enc|0; + $xDel = $xDel|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 16|0; + $4 = sp + 8|0; + HEAP32[$0>>2] = $v; + HEAP32[$1>>2] = $n; + HEAP32[$2>>2] = $z; + HEAP8[$3>>0] = $enc; + HEAP32[$4>>2] = $xDel; + $5 = HEAP32[$0>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP8[$3>>0]|0; + $11 = HEAP32[$4>>2]|0; + (_sqlite3VdbeMemSetStr($7,$8,$9,$10,$11)|0); + STACKTOP = sp;return; +} +function _sqlite3ValueFree($v) { + $v = $v|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $v; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = HEAP32[$0>>2]|0; + _sqlite3VdbeMemRelease($3); + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$0>>2]|0; + _sqlite3DbFree($5,$6); + STACKTOP = sp;return; +} +function _sqlite3_libversion() { + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = sp;return (88|0); +} +function _sqlite3_sourceid() { + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = sp;return (1824|0); +} +function _sqlite3_libversion_number() { + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = sp;return 3008005; +} +function _sqlite3MallocInit() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $i = 0, $n = 0, $pSlot = 0, $sz = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $i = sp + 12|0; + $n = sp; + $sz = sp + 4|0; + $pSlot = sp + 8|0; + $0 = HEAP32[((45136 + 36|0))>>2]|0; + $1 = ($0|0)==(0|0); + if ($1) { + _sqlite3MemSetDefault(); + } + dest=480+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $2 = HEAP32[((45136 + 4|0))>>2]|0; + $3 = ($2|0)!=(0); + if ($3) { + HEAP32[480>>2] = (8); + } + $4 = HEAP32[((45136 + 192|0))>>2]|0; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = HEAP32[((45136 + 196|0))>>2]|0; + $7 = ($6|0)>=(100); + if ($7) { + $8 = HEAP32[((45136 + 200|0))>>2]|0; + $9 = ($8|0)>(0); + if ($9) { + $10 = HEAP32[((45136 + 196|0))>>2]|0; + $11 = $10 & -8; + HEAP32[$sz>>2] = $11; + $12 = HEAP32[$sz>>2]|0; + HEAP32[((45136 + 196|0))>>2] = $12; + $13 = HEAP32[((45136 + 192|0))>>2]|0; + HEAP32[$pSlot>>2] = $13; + $14 = HEAP32[((45136 + 200|0))>>2]|0; + HEAP32[$n>>2] = $14; + $15 = HEAP32[$pSlot>>2]|0; + HEAP32[((480 + 28|0))>>2] = $15; + $16 = HEAP32[$n>>2]|0; + HEAP32[((480 + 32|0))>>2] = $16; + HEAP32[$i>>2] = 0; + while(1) { + $17 = HEAP32[$i>>2]|0; + $18 = HEAP32[$n>>2]|0; + $19 = (($18) - 1)|0; + $20 = ($17|0)<($19|0); + if (!($20)) { + break; + } + $21 = HEAP32[$sz>>2]|0; + $22 = HEAP32[$pSlot>>2]|0; + $23 = (($22) + ($21)|0); + $24 = HEAP32[$pSlot>>2]|0; + HEAP32[$24>>2] = $23; + $25 = HEAP32[$pSlot>>2]|0; + $26 = HEAP32[$25>>2]|0; + HEAP32[$pSlot>>2] = $26; + $27 = HEAP32[$i>>2]|0; + $28 = (($27) + 1)|0; + HEAP32[$i>>2] = $28; + } + $29 = HEAP32[$pSlot>>2]|0; + HEAP32[$29>>2] = 0; + $30 = HEAP32[$pSlot>>2]|0; + $31 = (($30) + 4|0); + HEAP32[((480 + 24|0))>>2] = $31; + } else { + label = 12; + } + } else { + label = 12; + } + } else { + label = 12; + } + if ((label|0) == 12) { + HEAP32[((480 + 24|0))>>2] = 0; + HEAP32[((45136 + 192|0))>>2] = 0; + HEAP32[((45136 + 196|0))>>2] = 0; + HEAP32[((45136 + 200|0))>>2] = 0; + } + $32 = HEAP32[((45136 + 204|0))>>2]|0; + $33 = ($32|0)==(0|0); + if (!($33)) { + $34 = HEAP32[((45136 + 208|0))>>2]|0; + $35 = ($34|0)<(512); + if (!($35)) { + $36 = HEAP32[((45136 + 212|0))>>2]|0; + $37 = ($36|0)<(1); + if (!($37)) { + $38 = HEAP32[((45136 + 56|0))>>2]|0; + $39 = HEAP32[((45136 + 64|0))>>2]|0; + $40 = (FUNCTION_TABLE_ii[$38 & 63]($39)|0); + STACKTOP = sp;return ($40|0); + } + } + } + HEAP32[((45136 + 204|0))>>2] = 0; + HEAP32[((45136 + 208|0))>>2] = 0; + HEAP32[((45136 + 212|0))>>2] = 0; + $38 = HEAP32[((45136 + 56|0))>>2]|0; + $39 = HEAP32[((45136 + 64|0))>>2]|0; + $40 = (FUNCTION_TABLE_ii[$38 & 63]($39)|0); + STACKTOP = sp;return ($40|0); +} +function _sqlite3RegisterGlobalFunctions() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $aFunc = 0, $i = 0, $pHash = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $i = sp + 8|0; + $pHash = sp; + $aFunc = sp + 4|0; + HEAP32[$pHash>>2] = 1896; + HEAP32[$aFunc>>2] = 12824; + HEAP32[$i>>2] = 0; + while(1) { + $0 = HEAP32[$i>>2]|0; + $1 = ($0|0)<(56); + if (!($1)) { + break; + } + $2 = HEAP32[$pHash>>2]|0; + $3 = HEAP32[$i>>2]|0; + $4 = HEAP32[$aFunc>>2]|0; + $5 = (($4) + (($3*36)|0)|0); + _sqlite3FuncDefInsert($2,$5); + $6 = HEAP32[$i>>2]|0; + $7 = (($6) + 1)|0; + HEAP32[$i>>2] = $7; + } + _sqlite3RegisterDateTimeFunctions(); + _sqlite3AlterFunctions(); + STACKTOP = sp;return; +} +function _sqlite3PcacheInitialize() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[((45136 + 112|0))>>2]|0; + $1 = ($0|0)==(0|0); + if ($1) { + _sqlite3PCacheSetDefault(); + } + $2 = HEAP32[((45136 + 112|0))>>2]|0; + $3 = HEAP32[((45136 + 108|0))>>2]|0; + $4 = (FUNCTION_TABLE_ii[$2 & 63]($3)|0); + STACKTOP = sp;return ($4|0); +} +function _sqlite3OsInit() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + $1 = (_sqlite3_malloc(10)|0); + HEAP32[$p>>2] = $1; + $2 = HEAP32[$p>>2]|0; + $3 = ($2|0)==(0|0); + if ($3) { + HEAP32[$0>>2] = 7; + $6 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($6|0); + } else { + $4 = HEAP32[$p>>2]|0; + _sqlite3_free($4); + $5 = (_sqlite3_os_init()|0); + HEAP32[$0>>2] = $5; + $6 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($6|0); + } + return 0|0; +} +function _sqlite3PCacheBufferSetup($pBuf,$sz,$n) { + $pBuf = $pBuf|0; + $sz = $sz|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + HEAP32[$0>>2] = $pBuf; + HEAP32[$1>>2] = $sz; + HEAP32[$2>>2] = $n; + $3 = HEAP32[((3456 + 28|0))>>2]|0; + $4 = ($3|0)!=(0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$1>>2]|0; + $6 = $5 & -8; + HEAP32[$1>>2] = $6; + $7 = HEAP32[$1>>2]|0; + HEAP32[((3456 + 32|0))>>2] = $7; + $8 = HEAP32[$2>>2]|0; + HEAP32[((3456 + 60|0))>>2] = $8; + HEAP32[((3456 + 36|0))>>2] = $8; + $9 = HEAP32[$2>>2]|0; + $10 = ($9|0)>(90); + if ($10) { + $14 = 10; + } else { + $11 = HEAP32[$2>>2]|0; + $12 = (($11|0) / 10)&-1; + $13 = (($12) + 1)|0; + $14 = $13; + } + HEAP32[((3456 + 40|0))>>2] = $14; + $15 = HEAP32[$0>>2]|0; + HEAP32[((3456 + 44|0))>>2] = $15; + HEAP32[((3456 + 56|0))>>2] = 0; + HEAP32[((3456 + 64|0))>>2] = 0; + while(1) { + $16 = HEAP32[$2>>2]|0; + $17 = (($16) + -1)|0; + HEAP32[$2>>2] = $17; + $18 = ($16|0)!=(0); + $19 = HEAP32[$0>>2]|0; + if (!($18)) { + break; + } + HEAP32[$p>>2] = $19; + $20 = HEAP32[((3456 + 56|0))>>2]|0; + $21 = HEAP32[$p>>2]|0; + HEAP32[$21>>2] = $20; + $22 = HEAP32[$p>>2]|0; + HEAP32[((3456 + 56|0))>>2] = $22; + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + ($23)|0); + HEAP32[$0>>2] = $25; + } + HEAP32[((3456 + 48|0))>>2] = $19; + STACKTOP = sp;return; +} +function _sqlite3_config($op,$varargs) { + $op = $op|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $14 = 0, $15 = 0, $16 = 0; + var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $ap = 0, $arglist_current = 0, $arglist_current12 = 0, $arglist_current15 = 0, $arglist_current18 = 0, $arglist_current21 = 0, $arglist_current24 = 0, $arglist_current27 = 0, $arglist_current3 = 0; + var $arglist_current30 = 0, $arglist_current33 = 0, $arglist_current36 = 0, $arglist_current39 = 0, $arglist_current42 = 0, $arglist_current45 = 0, $arglist_current48 = 0, $arglist_current51 = 0, $arglist_current54 = 0, $arglist_current6 = 0, $arglist_current9 = 0, $arglist_next = 0, $arglist_next10 = 0, $arglist_next13 = 0, $arglist_next16 = 0, $arglist_next19 = 0, $arglist_next22 = 0, $arglist_next25 = 0, $arglist_next28 = 0, $arglist_next31 = 0; + var $arglist_next34 = 0, $arglist_next37 = 0, $arglist_next4 = 0, $arglist_next40 = 0, $arglist_next43 = 0, $arglist_next46 = 0, $arglist_next49 = 0, $arglist_next52 = 0, $arglist_next55 = 0, $arglist_next7 = 0, $mxMmap = 0, $or$cond = 0, $rc = 0, $szMmap = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $ap = sp + 24|0; + $rc = sp + 16|0; + $szMmap = sp; + $mxMmap = sp + 8|0; + HEAP32[$1>>2] = $op; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[((45136 + 224|0))>>2]|0; + $3 = ($2|0)!=(0); + if ($3) { + $4 = (_sqlite3MisuseError(121405)|0); + HEAP32[$0>>2] = $4; + $130 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($130|0); + } + HEAP32[$ap>>2] = $varargs; + $5 = HEAP32[$1>>2]|0; + do { + switch ($5|0) { + case 4: { + $arglist_current = HEAP32[$ap>>2]|0; + $6 = HEAP32[$arglist_current>>2]|0; + $arglist_next = (($arglist_current) + 4|0); + HEAP32[$ap>>2] = $arglist_next; + ;HEAP32[((45136 + 36|0))+0>>2]=HEAP32[$6+0>>2]|0;HEAP32[((45136 + 36|0))+4>>2]=HEAP32[$6+4>>2]|0;HEAP32[((45136 + 36|0))+8>>2]=HEAP32[$6+8>>2]|0;HEAP32[((45136 + 36|0))+12>>2]=HEAP32[$6+12>>2]|0;HEAP32[((45136 + 36|0))+16>>2]=HEAP32[$6+16>>2]|0;HEAP32[((45136 + 36|0))+20>>2]=HEAP32[$6+20>>2]|0;HEAP32[((45136 + 36|0))+24>>2]=HEAP32[$6+24>>2]|0;HEAP32[((45136 + 36|0))+28>>2]=HEAP32[$6+28>>2]|0; + break; + } + case 22: { + $arglist_current51 = HEAP32[$ap>>2]|0; + $27 = $arglist_current51; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (($27) + 4)|0; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $arglist_next52 = (($arglist_current51) + 8|0); + HEAP32[$ap>>2] = $arglist_next52; + $33 = $szMmap; + $34 = $33; + HEAP32[$34>>2] = $29; + $35 = (($33) + 4)|0; + $36 = $35; + HEAP32[$36>>2] = $32; + $arglist_current54 = HEAP32[$ap>>2]|0; + $37 = $arglist_current54; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (($37) + 4)|0; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $arglist_next55 = (($arglist_current54) + 8|0); + HEAP32[$ap>>2] = $arglist_next55; + $43 = $mxMmap; + $44 = $43; + HEAP32[$44>>2] = $39; + $45 = (($43) + 4)|0; + $46 = $45; + HEAP32[$46>>2] = $42; + $47 = $mxMmap; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = (($47) + 4)|0; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = ($52|0)<(0); + $54 = $mxMmap; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = (($54) + 4)|0; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = ($59|0)>(0); + $61 = ($59|0)==(0); + $62 = ($56>>>0)>(0); + $63 = $61 & $62; + $64 = $60 | $63; + $or$cond = $53 | $64; + $65 = $or$cond ? 0 : $39; + $66 = $or$cond ? 0 : $42; + $67 = $mxMmap; + $68 = $67; + HEAP32[$68>>2] = $65; + $69 = (($67) + 4)|0; + $70 = $69; + HEAP32[$70>>2] = $66; + $71 = $mxMmap; + $72 = $71; + $73 = HEAP32[$72>>2]|0; + $74 = (($71) + 4)|0; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = ((45136 + 184|0)); + $78 = $77; + HEAP32[$78>>2] = $73; + $79 = (($77) + 4)|0; + $80 = $79; + HEAP32[$80>>2] = $76; + $81 = $szMmap; + $82 = $81; + $83 = HEAP32[$82>>2]|0; + $84 = (($81) + 4)|0; + $85 = $84; + $86 = HEAP32[$85>>2]|0; + $87 = ($86|0)<(0); + if ($87) { + $88 = $szMmap; + $89 = $88; + HEAP32[$89>>2] = 0; + $90 = (($88) + 4)|0; + $91 = $90; + HEAP32[$91>>2] = 0; + } + $92 = $szMmap; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = (($92) + 4)|0; + $96 = $95; + $97 = HEAP32[$96>>2]|0; + $98 = $mxMmap; + $99 = $98; + $100 = HEAP32[$99>>2]|0; + $101 = (($98) + 4)|0; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = ($97|0)>($103|0); + $105 = ($97|0)==($103|0); + $106 = ($94>>>0)>($100>>>0); + $107 = $105 & $106; + $108 = $104 | $107; + if ($108) { + $109 = $mxMmap; + $110 = $109; + $111 = HEAP32[$110>>2]|0; + $112 = (($109) + 4)|0; + $113 = $112; + $114 = HEAP32[$113>>2]|0; + $115 = $szMmap; + $116 = $115; + HEAP32[$116>>2] = $111; + $117 = (($115) + 4)|0; + $118 = $117; + HEAP32[$118>>2] = $114; + } + $119 = $szMmap; + $120 = $119; + $121 = HEAP32[$120>>2]|0; + $122 = (($119) + 4)|0; + $123 = $122; + $124 = HEAP32[$123>>2]|0; + $125 = ((45136 + 176|0)); + $126 = $125; + HEAP32[$126>>2] = $121; + $127 = (($125) + 4)|0; + $128 = $127; + HEAP32[$128>>2] = $124; + break; + } + case 9: { + $arglist_current6 = HEAP32[$ap>>2]|0; + $10 = HEAP32[$arglist_current6>>2]|0; + $arglist_next7 = (($arglist_current6) + 4|0); + HEAP32[$ap>>2] = $arglist_next7; + HEAP32[45136>>2] = $10; + break; + } + case 7: { + $arglist_current18 = HEAP32[$ap>>2]|0; + $14 = HEAP32[$arglist_current18>>2]|0; + $arglist_next19 = (($arglist_current18) + 4|0); + HEAP32[$ap>>2] = $arglist_next19; + HEAP32[((45136 + 204|0))>>2] = $14; + $arglist_current21 = HEAP32[$ap>>2]|0; + $15 = HEAP32[$arglist_current21>>2]|0; + $arglist_next22 = (($arglist_current21) + 4|0); + HEAP32[$ap>>2] = $arglist_next22; + HEAP32[((45136 + 208|0))>>2] = $15; + $arglist_current24 = HEAP32[$ap>>2]|0; + $16 = HEAP32[$arglist_current24>>2]|0; + $arglist_next25 = (($arglist_current24) + 4|0); + HEAP32[$ap>>2] = $arglist_next25; + HEAP32[((45136 + 212|0))>>2] = $16; + break; + } + case 15: { + HEAP32[$rc>>2] = 1; + break; + } + case 16: { + $arglist_current39 = HEAP32[$ap>>2]|0; + $23 = HEAP32[$arglist_current39>>2]|0; + $arglist_next40 = (($arglist_current39) + 4|0); + HEAP32[$ap>>2] = $arglist_next40; + HEAP32[((45136 + 252|0))>>2] = $23; + $arglist_current42 = HEAP32[$ap>>2]|0; + $24 = HEAP32[$arglist_current42>>2]|0; + $arglist_next43 = (($arglist_current42) + 4|0); + HEAP32[$ap>>2] = $arglist_next43; + HEAP32[((45136 + 256|0))>>2] = $24; + break; + } + case 20: { + $arglist_current48 = HEAP32[$ap>>2]|0; + $26 = HEAP32[$arglist_current48>>2]|0; + $arglist_next49 = (($arglist_current48) + 4|0); + HEAP32[$ap>>2] = $arglist_next49; + HEAP32[((45136 + 16|0))>>2] = $26; + break; + } + case 14: { + break; + } + case 6: { + $arglist_current9 = HEAP32[$ap>>2]|0; + $11 = HEAP32[$arglist_current9>>2]|0; + $arglist_next10 = (($arglist_current9) + 4|0); + HEAP32[$ap>>2] = $arglist_next10; + HEAP32[((45136 + 192|0))>>2] = $11; + $arglist_current12 = HEAP32[$ap>>2]|0; + $12 = HEAP32[$arglist_current12>>2]|0; + $arglist_next13 = (($arglist_current12) + 4|0); + HEAP32[$ap>>2] = $arglist_next13; + HEAP32[((45136 + 196|0))>>2] = $12; + $arglist_current15 = HEAP32[$ap>>2]|0; + $13 = HEAP32[$arglist_current15>>2]|0; + $arglist_next16 = (($arglist_current15) + 4|0); + HEAP32[$ap>>2] = $arglist_next16; + HEAP32[((45136 + 200|0))>>2] = $13; + break; + } + case 19: { + $18 = HEAP32[((45136 + 112|0))>>2]|0; + $19 = ($18|0)==(0|0); + if ($19) { + _sqlite3PCacheSetDefault(); + } + $arglist_current30 = HEAP32[$ap>>2]|0; + $20 = HEAP32[$arglist_current30>>2]|0; + $arglist_next31 = (($arglist_current30) + 4|0); + HEAP32[$ap>>2] = $arglist_next31; + dest=$20+0|0; src=((45136 + 104|0))+0|0; stop=dest+52|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + break; + } + case 5: { + $7 = HEAP32[((45136 + 36|0))>>2]|0; + $8 = ($7|0)==(0|0); + if ($8) { + _sqlite3MemSetDefault(); + } + $arglist_current3 = HEAP32[$ap>>2]|0; + $9 = HEAP32[$arglist_current3>>2]|0; + $arglist_next4 = (($arglist_current3) + 4|0); + HEAP32[$ap>>2] = $arglist_next4; + ;HEAP32[$9+0>>2]=HEAP32[((45136 + 36|0))+0>>2]|0;HEAP32[$9+4>>2]=HEAP32[((45136 + 36|0))+4>>2]|0;HEAP32[$9+8>>2]=HEAP32[((45136 + 36|0))+8>>2]|0;HEAP32[$9+12>>2]=HEAP32[((45136 + 36|0))+12>>2]|0;HEAP32[$9+16>>2]=HEAP32[((45136 + 36|0))+16>>2]|0;HEAP32[$9+20>>2]=HEAP32[((45136 + 36|0))+20>>2]|0;HEAP32[$9+24>>2]=HEAP32[((45136 + 36|0))+24>>2]|0;HEAP32[$9+28>>2]=HEAP32[((45136 + 36|0))+28>>2]|0; + break; + } + case 18: { + $arglist_current27 = HEAP32[$ap>>2]|0; + $17 = HEAP32[$arglist_current27>>2]|0; + $arglist_next28 = (($arglist_current27) + 4|0); + HEAP32[$ap>>2] = $arglist_next28; + dest=((45136 + 104|0))+0|0; src=$17+0|0; stop=dest+52|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + break; + } + case 13: { + $arglist_current33 = HEAP32[$ap>>2]|0; + $21 = HEAP32[$arglist_current33>>2]|0; + $arglist_next34 = (($arglist_current33) + 4|0); + HEAP32[$ap>>2] = $arglist_next34; + HEAP32[((45136 + 28|0))>>2] = $21; + $arglist_current36 = HEAP32[$ap>>2]|0; + $22 = HEAP32[$arglist_current36>>2]|0; + $arglist_next37 = (($arglist_current36) + 4|0); + HEAP32[$ap>>2] = $arglist_next37; + HEAP32[((45136 + 32|0))>>2] = $22; + break; + } + case 17: { + $arglist_current45 = HEAP32[$ap>>2]|0; + $25 = HEAP32[$arglist_current45>>2]|0; + $arglist_next46 = (($arglist_current45) + 4|0); + HEAP32[$ap>>2] = $arglist_next46; + HEAP32[((45136 + 12|0))>>2] = $25; + break; + } + default: { + HEAP32[$rc>>2] = 1; + } + } + } while(0); + $129 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $129; + $130 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($130|0); +} +function _sqlite3MemSetDefault() { + var $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + HEAP32[$vararg_buffer>>2] = 12712; + (_sqlite3_config(4,$vararg_buffer)|0); + STACKTOP = sp;return; +} +function _sqlite3PCacheSetDefault() { + var $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + HEAP32[$vararg_buffer>>2] = 12656; + (_sqlite3_config(18,$vararg_buffer)|0); + STACKTOP = sp;return; +} +function _sqlite3_db_release_memory($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $i = 0, $pBt = 0, $pPager = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $i = sp; + $pBt = sp + 4|0; + $pPager = sp + 8|0; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnterAll($1); + HEAP32[$i>>2] = 0; + while(1) { + $2 = HEAP32[$i>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 20|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($2|0)<($5|0); + if (!($6)) { + break; + } + $7 = HEAP32[$i>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 16|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + ($7<<4)|0); + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pBt>>2] = $13; + $14 = HEAP32[$pBt>>2]|0; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = HEAP32[$pBt>>2]|0; + $17 = (_sqlite3BtreePager($16)|0); + HEAP32[$pPager>>2] = $17; + $18 = HEAP32[$pPager>>2]|0; + _sqlite3PagerShrink($18); + } + $19 = HEAP32[$i>>2]|0; + $20 = (($19) + 1)|0; + HEAP32[$i>>2] = $20; + } + STACKTOP = sp;return 0; +} +function _sqlite3PagerShrink($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 204|0); + $3 = HEAP32[$2>>2]|0; + _sqlite3PcacheShrink($3); + STACKTOP = sp;return; +} +function _setupLookaside($db,$pBuf,$sz,$cnt) { + $db = $db|0; + $pBuf = $pBuf|0; + $sz = $sz|0; + $cnt = $cnt|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; + var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; + var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; + var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; + var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; + var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $p = 0, $pStart = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $pStart = sp + 16|0; + $i = sp + 20|0; + $p = sp + 24|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pBuf; + HEAP32[$3>>2] = $sz; + HEAP32[$4>>2] = $cnt; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 240|0); + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0); + if ($9) { + HEAP32[$0>>2] = 5; + $102 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($102|0); + } + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 240|0); + $12 = (($11) + 3|0); + $13 = HEAP8[$12>>0]|0; + $14 = ($13<<24>>24)!=(0); + if ($14) { + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 240|0); + $17 = (($16) + 28|0); + $18 = HEAP32[$17>>2]|0; + _sqlite3_free($18); + } + $19 = HEAP32[$3>>2]|0; + $20 = $19 & -8; + HEAP32[$3>>2] = $20; + $21 = HEAP32[$3>>2]|0; + $22 = ($21|0)<=(4); + $$ = $22 ? 0 : $20; + HEAP32[$3>>2] = $$; + $23 = HEAP32[$4>>2]|0; + $24 = ($23|0)<(0); + if ($24) { + HEAP32[$4>>2] = 0; + } + $25 = HEAP32[$3>>2]|0; + $26 = ($25|0)==(0); + do { + if ($26) { + label = 9; + } else { + $27 = HEAP32[$4>>2]|0; + $28 = ($27|0)==(0); + if ($28) { + label = 9; + } else { + $29 = HEAP32[$2>>2]|0; + $30 = ($29|0)==(0|0); + if (!($30)) { + $41 = HEAP32[$2>>2]|0; + HEAP32[$pStart>>2] = $41; + break; + } + _sqlite3BeginBenignMalloc(); + $31 = HEAP32[$3>>2]|0; + $32 = HEAP32[$4>>2]|0; + $33 = Math_imul($31, $32)|0; + $34 = (_sqlite3Malloc($33)|0); + HEAP32[$pStart>>2] = $34; + _sqlite3EndBenignMalloc(); + $35 = HEAP32[$pStart>>2]|0; + $36 = ($35|0)!=(0|0); + if ($36) { + $37 = HEAP32[$pStart>>2]|0; + $38 = (_sqlite3MallocSize($37)|0); + $39 = HEAP32[$3>>2]|0; + $40 = (($38|0) / ($39|0))&-1; + HEAP32[$4>>2] = $40; + } + } + } + } while(0); + if ((label|0) == 9) { + HEAP32[$3>>2] = 0; + HEAP32[$pStart>>2] = 0; + } + $42 = HEAP32[$pStart>>2]|0; + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 240|0); + $45 = (($44) + 28|0); + HEAP32[$45>>2] = $42; + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 240|0); + $48 = (($47) + 24|0); + HEAP32[$48>>2] = 0; + $49 = HEAP32[$3>>2]|0; + $50 = $49&65535; + $51 = HEAP32[$1>>2]|0; + $52 = (($51) + 240|0); + HEAP16[$52>>1] = $50; + $53 = HEAP32[$pStart>>2]|0; + $54 = ($53|0)!=(0|0); + if ($54) { + $55 = HEAP32[$pStart>>2]|0; + HEAP32[$p>>2] = $55; + $56 = HEAP32[$4>>2]|0; + $57 = (($56) - 1)|0; + HEAP32[$i>>2] = $57; + while(1) { + $58 = HEAP32[$i>>2]|0; + $59 = ($58|0)>=(0); + if (!($59)) { + break; + } + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 240|0); + $62 = (($61) + 24|0); + $63 = HEAP32[$62>>2]|0; + $64 = HEAP32[$p>>2]|0; + HEAP32[$64>>2] = $63; + $65 = HEAP32[$p>>2]|0; + $66 = HEAP32[$1>>2]|0; + $67 = (($66) + 240|0); + $68 = (($67) + 24|0); + HEAP32[$68>>2] = $65; + $69 = HEAP32[$3>>2]|0; + $70 = HEAP32[$p>>2]|0; + $71 = (($70) + ($69)|0); + HEAP32[$p>>2] = $71; + $72 = HEAP32[$i>>2]|0; + $73 = (($72) + -1)|0; + HEAP32[$i>>2] = $73; + } + $74 = HEAP32[$p>>2]|0; + $75 = HEAP32[$1>>2]|0; + $76 = (($75) + 240|0); + $77 = (($76) + 32|0); + HEAP32[$77>>2] = $74; + $78 = HEAP32[$1>>2]|0; + $79 = (($78) + 240|0); + $80 = (($79) + 2|0); + HEAP8[$80>>0] = 1; + $81 = HEAP32[$2>>2]|0; + $82 = ($81|0)==(0|0); + $83 = $82 ? 1 : 0; + $84 = $83&255; + $85 = HEAP32[$1>>2]|0; + $86 = (($85) + 240|0); + $87 = (($86) + 3|0); + HEAP8[$87>>0] = $84; + } else { + $88 = HEAP32[$1>>2]|0; + $89 = HEAP32[$1>>2]|0; + $90 = (($89) + 240|0); + $91 = (($90) + 28|0); + HEAP32[$91>>2] = $88; + $92 = HEAP32[$1>>2]|0; + $93 = HEAP32[$1>>2]|0; + $94 = (($93) + 240|0); + $95 = (($94) + 32|0); + HEAP32[$95>>2] = $92; + $96 = HEAP32[$1>>2]|0; + $97 = (($96) + 240|0); + $98 = (($97) + 2|0); + HEAP8[$98>>0] = 0; + $99 = HEAP32[$1>>2]|0; + $100 = (($99) + 240|0); + $101 = (($100) + 3|0); + HEAP8[$101>>0] = 0; + } + HEAP32[$0>>2] = 0; + $102 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($102|0); +} +function _sqlite3_last_insert_rowid($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 32|0); + $3 = $2; + $4 = $3; + $5 = HEAP32[$4>>2]|0; + $6 = (($3) + 4)|0; + $7 = $6; + $8 = HEAP32[$7>>2]|0; + tempRet0 = $8; + STACKTOP = sp;return ($5|0); +} +function _sqlite3_changes($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 80|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _sqlite3_total_changes($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 84|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _sqlite3_close($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3Close($1,0)|0); + STACKTOP = sp;return ($2|0); +} +function _sqlite3Close($db,$forceZombie) { + $db = $db|0; + $forceZombie = $forceZombie|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 12|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $forceZombie; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + HEAP32[$0>>2] = 0; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } + $5 = HEAP32[$1>>2]|0; + $6 = (_sqlite3SafetyCheckSickOrOk($5)|0); + $7 = ($6|0)!=(0); + if (!($7)) { + $8 = (_sqlite3MisuseError(121912)|0); + HEAP32[$0>>2] = $8; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } + $9 = HEAP32[$1>>2]|0; + _disconnectAllVtab($9); + $10 = HEAP32[$1>>2]|0; + (_sqlite3VtabRollback($10)|0); + $11 = HEAP32[$2>>2]|0; + $12 = ($11|0)!=(0); + if (!($12)) { + $13 = HEAP32[$1>>2]|0; + $14 = (_connectionIsBusy($13)|0); + $15 = ($14|0)!=(0); + if ($15) { + $16 = HEAP32[$1>>2]|0; + _sqlite3Error($16,5,12584,$vararg_buffer); + HEAP32[$0>>2] = 5; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } + } + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 76|0); + HEAP32[$18>>2] = 1691352191; + $19 = HEAP32[$1>>2]|0; + _sqlite3LeaveMutexAndCloseZombie($19); + HEAP32[$0>>2] = 0; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); +} +function _sqlite3_close_v2($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3Close($1,1)|0); + STACKTOP = sp;return ($2|0); +} +function _sqlite3_busy_handler($db,$xBusy,$pArg) { + $db = $db|0; + $xBusy = $xBusy|0; + $pArg = $pArg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $xBusy; + HEAP32[$2>>2] = $pArg; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 436|0); + HEAP32[$5>>2] = $3; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 436|0); + $9 = (($8) + 4|0); + HEAP32[$9>>2] = $6; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 436|0); + $12 = (($11) + 8|0); + HEAP32[$12>>2] = 0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 484|0); + HEAP32[$14>>2] = 0; + STACKTOP = sp;return 0; +} +function _sqlite3_busy_timeout($db,$ms) { + $db = $db|0; + $ms = $ms|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $ms; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)>(0); + $4 = HEAP32[$0>>2]|0; + if ($3) { + $5 = HEAP32[$0>>2]|0; + (_sqlite3_busy_handler($4,46,$5)|0); + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 484|0); + HEAP32[$8>>2] = $6; + STACKTOP = sp;return 0; + } else { + (_sqlite3_busy_handler($4,0,0)|0); + STACKTOP = sp;return 0; + } + return 0|0; +} +function _sqliteDefaultBusyCallback($ptr,$count) { + $ptr = $ptr|0; + $count = $count|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $timeout = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $db = sp + 8|0; + $timeout = sp + 12|0; + HEAP32[$1>>2] = $ptr; + HEAP32[$2>>2] = $count; + $3 = HEAP32[$1>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 484|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$timeout>>2] = $6; + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 1)|0; + $9 = ($8*1000)|0; + $10 = HEAP32[$timeout>>2]|0; + $11 = ($9|0)>($10|0); + if ($11) { + HEAP32[$0>>2] = 0; + $14 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($14|0); + } else { + $12 = HEAP32[$db>>2]|0; + $13 = HEAP32[$12>>2]|0; + (_sqlite3OsSleep($13,1000000)|0); + HEAP32[$0>>2] = 1; + $14 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($14|0); + } + return 0|0; +} +function _sqlite3_create_function($db,$zFunc,$nArg,$enc,$p,$xFunc,$xStep,$xFinal) { + $db = $db|0; + $zFunc = $zFunc|0; + $nArg = $nArg|0; + $enc = $enc|0; + $p = $p|0; + $xFunc = $xFunc|0; + $xStep = $xStep|0; + $xFinal = $xFinal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $5 = sp + 16|0; + $6 = sp + 20|0; + $7 = sp + 24|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zFunc; + HEAP32[$2>>2] = $nArg; + HEAP32[$3>>2] = $enc; + HEAP32[$4>>2] = $p; + HEAP32[$5>>2] = $xFunc; + HEAP32[$6>>2] = $xStep; + HEAP32[$7>>2] = $xFinal; + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$3>>2]|0; + $12 = HEAP32[$4>>2]|0; + $13 = HEAP32[$5>>2]|0; + $14 = HEAP32[$6>>2]|0; + $15 = HEAP32[$7>>2]|0; + $16 = (_sqlite3_create_function_v2($8,$9,$10,$11,$12,$13,$14,$15,0)|0); + STACKTOP = sp;return ($16|0); +} +function _sqlite3_create_function_v2($db,$zFunc,$nArg,$enc,$p,$xFunc,$xStep,$xFinal,$xDestroy) { + $db = $db|0; + $zFunc = $zFunc|0; + $nArg = $nArg|0; + $enc = $enc|0; + $p = $p|0; + $xFunc = $xFunc|0; + $xStep = $xStep|0; + $xFinal = $xFinal|0; + $xDestroy = $xDestroy|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pArg = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $5 = sp + 20|0; + $6 = sp + 12|0; + $7 = sp + 8|0; + $8 = sp + 4|0; + $rc = sp; + $pArg = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zFunc; + HEAP32[$2>>2] = $nArg; + HEAP32[$3>>2] = $enc; + HEAP32[$4>>2] = $p; + HEAP32[$5>>2] = $xFunc; + HEAP32[$6>>2] = $xStep; + HEAP32[$7>>2] = $xFinal; + HEAP32[$8>>2] = $xDestroy; + HEAP32[$rc>>2] = 1; + HEAP32[$pArg>>2] = 0; + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0|0); + do { + if ($10) { + $11 = HEAP32[$0>>2]|0; + $12 = (_sqlite3DbMallocZero($11,12)|0); + HEAP32[$pArg>>2] = $12; + $13 = HEAP32[$pArg>>2]|0; + $14 = ($13|0)!=(0|0); + $15 = HEAP32[$8>>2]|0; + if ($14) { + $17 = HEAP32[$pArg>>2]|0; + $18 = (($17) + 4|0); + HEAP32[$18>>2] = $15; + $19 = HEAP32[$4>>2]|0; + $20 = HEAP32[$pArg>>2]|0; + $21 = (($20) + 8|0); + HEAP32[$21>>2] = $19; + label = 5; + break; + } else { + $16 = HEAP32[$4>>2]|0; + FUNCTION_TABLE_vi[$15 & 31]($16); + break; + } + } else { + label = 5; + } + } while(0); + if ((label|0) == 5) { + $22 = HEAP32[$0>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$2>>2]|0; + $25 = HEAP32[$3>>2]|0; + $26 = HEAP32[$4>>2]|0; + $27 = HEAP32[$5>>2]|0; + $28 = HEAP32[$6>>2]|0; + $29 = HEAP32[$7>>2]|0; + $30 = HEAP32[$pArg>>2]|0; + $31 = (_sqlite3CreateFunc($22,$23,$24,$25,$26,$27,$28,$29,$30)|0); + HEAP32[$rc>>2] = $31; + $32 = HEAP32[$pArg>>2]|0; + $33 = ($32|0)!=(0|0); + if ($33) { + $34 = HEAP32[$pArg>>2]|0; + $35 = HEAP32[$34>>2]|0; + $36 = ($35|0)==(0); + if ($36) { + $37 = HEAP32[$8>>2]|0; + $38 = HEAP32[$4>>2]|0; + FUNCTION_TABLE_vi[$37 & 31]($38); + $39 = HEAP32[$0>>2]|0; + $40 = HEAP32[$pArg>>2]|0; + _sqlite3DbFree($39,$40); + } + } + } + $41 = HEAP32[$0>>2]|0; + $42 = HEAP32[$rc>>2]|0; + $43 = (_sqlite3ApiExit($41,$42)|0); + HEAP32[$rc>>2] = $43; + $44 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($44|0); +} +function _sqlite3CreateFunc($db,$zFunctionName,$nArg,$enc,$pUserData,$xFunc,$xStep,$xFinal,$pDestructor) { + $db = $db|0; + $zFunctionName = $zFunctionName|0; + $nArg = $nArg|0; + $enc = $enc|0; + $pUserData = $pUserData|0; + $xFunc = $xFunc|0; + $xStep = $xStep|0; + $xFinal = $xFinal|0; + $pDestructor = $pDestructor|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; + var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $extraFlags = 0, $nName = 0, $or$cond = 0, $p = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer = sp; + $0 = sp + 52|0; + $1 = sp + 48|0; + $2 = sp + 44|0; + $3 = sp + 40|0; + $4 = sp + 36|0; + $5 = sp + 32|0; + $6 = sp + 56|0; + $7 = sp + 20|0; + $8 = sp + 16|0; + $9 = sp + 12|0; + $p = sp + 8|0; + $nName = sp + 4|0; + $extraFlags = sp + 24|0; + $rc = sp + 28|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $zFunctionName; + HEAP32[$3>>2] = $nArg; + HEAP32[$4>>2] = $enc; + HEAP32[$5>>2] = $pUserData; + HEAP32[$6>>2] = $xFunc; + HEAP32[$7>>2] = $xStep; + HEAP32[$8>>2] = $xFinal; + HEAP32[$9>>2] = $pDestructor; + $10 = HEAP32[$2>>2]|0; + $11 = ($10|0)==(0|0); + do { + if (!($11)) { + $12 = HEAP32[$6>>2]|0; + $13 = ($12|0)!=(0|0); + if ($13) { + $14 = HEAP32[$8>>2]|0; + $15 = ($14|0)!=(0|0); + if ($15) { + break; + } + $16 = HEAP32[$7>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + break; + } + } + $18 = HEAP32[$6>>2]|0; + $19 = ($18|0)!=(0|0); + if (!($19)) { + $20 = HEAP32[$8>>2]|0; + $21 = ($20|0)!=(0|0); + if ($21) { + $22 = HEAP32[$7>>2]|0; + $23 = ($22|0)!=(0|0); + if (!($23)) { + break; + } + } + } + $24 = HEAP32[$6>>2]|0; + $25 = ($24|0)!=(0|0); + if (!($25)) { + $26 = HEAP32[$8>>2]|0; + $27 = ($26|0)!=(0|0); + if (!($27)) { + $28 = HEAP32[$7>>2]|0; + $29 = ($28|0)!=(0|0); + if ($29) { + break; + } + } + } + $30 = HEAP32[$3>>2]|0; + $31 = ($30|0)<(-1); + $32 = HEAP32[$3>>2]|0; + $33 = ($32|0)>(127); + $or$cond = $31 | $33; + if (!($or$cond)) { + $34 = HEAP32[$2>>2]|0; + $35 = (_sqlite3Strlen30($34)|0); + HEAP32[$nName>>2] = $35; + $36 = (255)<($35|0); + if (!($36)) { + $38 = HEAP32[$4>>2]|0; + $39 = $38 & 2048; + HEAP32[$extraFlags>>2] = $39; + $40 = HEAP32[$4>>2]|0; + $41 = $40 & 7; + HEAP32[$4>>2] = $41; + $42 = HEAP32[$4>>2]|0; + $43 = ($42|0)==(4); + do { + if ($43) { + $44 = HEAP8[1480>>0]|0; + $45 = $44 << 24 >> 24; + $46 = ($45|0)==(0); + $47 = $46 ? 3 : 2; + HEAP32[$4>>2] = $47; + } else { + $48 = HEAP32[$4>>2]|0; + $49 = ($48|0)==(5); + if ($49) { + $50 = HEAP32[$1>>2]|0; + $51 = HEAP32[$2>>2]|0; + $52 = HEAP32[$3>>2]|0; + $53 = HEAP32[$extraFlags>>2]|0; + $54 = 1 | $53; + $55 = HEAP32[$5>>2]|0; + $56 = HEAP32[$6>>2]|0; + $57 = HEAP32[$7>>2]|0; + $58 = HEAP32[$8>>2]|0; + $59 = HEAP32[$9>>2]|0; + $60 = (_sqlite3CreateFunc($50,$51,$52,$54,$55,$56,$57,$58,$59)|0); + HEAP32[$rc>>2] = $60; + $61 = HEAP32[$rc>>2]|0; + $62 = ($61|0)==(0); + if ($62) { + $63 = HEAP32[$1>>2]|0; + $64 = HEAP32[$2>>2]|0; + $65 = HEAP32[$3>>2]|0; + $66 = HEAP32[$extraFlags>>2]|0; + $67 = 2 | $66; + $68 = HEAP32[$5>>2]|0; + $69 = HEAP32[$6>>2]|0; + $70 = HEAP32[$7>>2]|0; + $71 = HEAP32[$8>>2]|0; + $72 = HEAP32[$9>>2]|0; + $73 = (_sqlite3CreateFunc($63,$64,$65,$67,$68,$69,$70,$71,$72)|0); + HEAP32[$rc>>2] = $73; + } + $74 = HEAP32[$rc>>2]|0; + $75 = ($74|0)!=(0); + if (!($75)) { + HEAP32[$4>>2] = 3; + break; + } + $76 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $76; + $147 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($147|0); + } + } + } while(0); + $77 = HEAP32[$1>>2]|0; + $78 = HEAP32[$2>>2]|0; + $79 = HEAP32[$nName>>2]|0; + $80 = HEAP32[$3>>2]|0; + $81 = HEAP32[$4>>2]|0; + $82 = $81&255; + $83 = (_sqlite3FindFunction($77,$78,$79,$80,$82,0)|0); + HEAP32[$p>>2] = $83; + $84 = HEAP32[$p>>2]|0; + $85 = ($84|0)!=(0|0); + do { + if ($85) { + $86 = HEAP32[$p>>2]|0; + $87 = (($86) + 2|0); + $88 = HEAP16[$87>>1]|0; + $89 = $88&65535; + $90 = $89 & 3; + $91 = HEAP32[$4>>2]|0; + $92 = ($90|0)==($91|0); + if ($92) { + $93 = HEAP32[$p>>2]|0; + $94 = HEAP16[$93>>1]|0; + $95 = $94 << 16 >> 16; + $96 = HEAP32[$3>>2]|0; + $97 = ($95|0)==($96|0); + if ($97) { + $98 = HEAP32[$1>>2]|0; + $99 = (($98) + 140|0); + $100 = HEAP32[$99>>2]|0; + $101 = ($100|0)!=(0); + $102 = HEAP32[$1>>2]|0; + if (!($101)) { + _sqlite3ExpirePreparedStatements($102); + break; + } + _sqlite3Error($102,5,11656,$vararg_buffer); + HEAP32[$0>>2] = 5; + $147 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($147|0); + } + } + } + } while(0); + $103 = HEAP32[$1>>2]|0; + $104 = HEAP32[$2>>2]|0; + $105 = HEAP32[$nName>>2]|0; + $106 = HEAP32[$3>>2]|0; + $107 = HEAP32[$4>>2]|0; + $108 = $107&255; + $109 = (_sqlite3FindFunction($103,$104,$105,$106,$108,1)|0); + HEAP32[$p>>2] = $109; + $110 = HEAP32[$p>>2]|0; + $111 = ($110|0)!=(0|0); + if (!($111)) { + HEAP32[$0>>2] = 7; + $147 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($147|0); + } + $112 = HEAP32[$1>>2]|0; + $113 = HEAP32[$p>>2]|0; + _functionDestroy($112,$113); + $114 = HEAP32[$9>>2]|0; + $115 = ($114|0)!=(0|0); + if ($115) { + $116 = HEAP32[$9>>2]|0; + $117 = HEAP32[$116>>2]|0; + $118 = (($117) + 1)|0; + HEAP32[$116>>2] = $118; + } + $119 = HEAP32[$9>>2]|0; + $120 = HEAP32[$p>>2]|0; + $121 = (($120) + 32|0); + HEAP32[$121>>2] = $119; + $122 = HEAP32[$p>>2]|0; + $123 = (($122) + 2|0); + $124 = HEAP16[$123>>1]|0; + $125 = $124&65535; + $126 = $125 & 3; + $127 = HEAP32[$extraFlags>>2]|0; + $128 = $126 | $127; + $129 = $128&65535; + $130 = HEAP32[$p>>2]|0; + $131 = (($130) + 2|0); + HEAP16[$131>>1] = $129; + $132 = HEAP32[$6>>2]|0; + $133 = HEAP32[$p>>2]|0; + $134 = (($133) + 12|0); + HEAP32[$134>>2] = $132; + $135 = HEAP32[$7>>2]|0; + $136 = HEAP32[$p>>2]|0; + $137 = (($136) + 16|0); + HEAP32[$137>>2] = $135; + $138 = HEAP32[$8>>2]|0; + $139 = HEAP32[$p>>2]|0; + $140 = (($139) + 20|0); + HEAP32[$140>>2] = $138; + $141 = HEAP32[$5>>2]|0; + $142 = HEAP32[$p>>2]|0; + $143 = (($142) + 4|0); + HEAP32[$143>>2] = $141; + $144 = HEAP32[$3>>2]|0; + $145 = $144&65535; + $146 = HEAP32[$p>>2]|0; + HEAP16[$146>>1] = $145; + HEAP32[$0>>2] = 0; + $147 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($147|0); + } + } + } + } while(0); + $37 = (_sqlite3MisuseError(122454)|0); + HEAP32[$0>>2] = $37; + $147 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($147|0); +} +function _sqlite3_overload_function($db,$zName,$nArg) { + $db = $db|0; + $zName = $zName|0; + $nArg = $nArg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nName = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $nName = sp + 8|0; + $rc = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zName; + HEAP32[$2>>2] = $nArg; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3Strlen30($3)|0); + HEAP32[$nName>>2] = $4; + HEAP32[$rc>>2] = 0; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$nName>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = (_sqlite3FindFunction($5,$6,$7,$8,1,0)|0); + $10 = ($9|0)==(0|0); + if ($10) { + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = (_sqlite3CreateFunc($11,$12,$13,1,0,55,0,0,0)|0); + HEAP32[$rc>>2] = $14; + } + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$rc>>2]|0; + $17 = (_sqlite3ApiExit($15,$16)|0); + HEAP32[$rc>>2] = $17; + $18 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($18|0); +} +function _sqlite3FindFunction($db,$zName,$nName,$nArg,$enc,$createFlag) { + $db = $db|0; + $zName = $zName|0; + $nName = $nName|0; + $nArg = $nArg|0; + $enc = $enc|0; + $createFlag = $createFlag|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $12 = 0, $13 = 0; + var $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bestScore = 0, $h = 0, $p = 0, $pBest = 0, $pHash = 0, $score = 0; + var $score1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 44|0; + $1 = sp + 28|0; + $2 = sp + 40|0; + $3 = sp + 36|0; + $4 = sp + 32|0; + $5 = sp + 48|0; + $6 = sp + 49|0; + $p = sp + 24|0; + $pBest = sp + 16|0; + $bestScore = sp + 12|0; + $h = sp + 8|0; + $score = sp + 4|0; + $pHash = sp; + $score1 = sp + 20|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $zName; + HEAP32[$3>>2] = $nName; + HEAP32[$4>>2] = $nArg; + HEAP8[$5>>0] = $enc; + HEAP8[$6>>0] = $createFlag; + HEAP32[$pBest>>2] = 0; + HEAP32[$bestScore>>2] = 0; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = (784 + ($9)|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = HEAP32[$3>>2]|0; + $14 = (($12) + ($13))|0; + $15 = (($14|0) % 23)&-1; + HEAP32[$h>>2] = $15; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 328|0); + $18 = HEAP32[$h>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = HEAP32[$3>>2]|0; + $21 = (_functionSearch($17,$18,$19,$20)|0); + HEAP32[$p>>2] = $21; + while(1) { + $22 = HEAP32[$p>>2]|0; + $23 = ($22|0)!=(0|0); + if (!($23)) { + break; + } + $24 = HEAP32[$p>>2]|0; + $25 = HEAP32[$4>>2]|0; + $26 = HEAP8[$5>>0]|0; + $27 = (_matchQuality($24,$25,$26)|0); + HEAP32[$score>>2] = $27; + $28 = HEAP32[$score>>2]|0; + $29 = HEAP32[$bestScore>>2]|0; + $30 = ($28|0)>($29|0); + if ($30) { + $31 = HEAP32[$p>>2]|0; + HEAP32[$pBest>>2] = $31; + $32 = HEAP32[$score>>2]|0; + HEAP32[$bestScore>>2] = $32; + } + $33 = HEAP32[$p>>2]|0; + $34 = (($33) + 8|0); + $35 = HEAP32[$34>>2]|0; + HEAP32[$p>>2] = $35; + } + $36 = HEAP8[$6>>0]|0; + $37 = ($36<<24>>24)!=(0); + L8: do { + if (!($37)) { + $38 = HEAP32[$pBest>>2]|0; + $39 = ($38|0)==(0|0); + if (!($39)) { + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 24|0); + $42 = HEAP32[$41>>2]|0; + $43 = $42 & 2097152; + $44 = ($43|0)!=(0); + if (!($44)) { + break; + } + } + HEAP32[$pHash>>2] = 1896; + HEAP32[$bestScore>>2] = 0; + $45 = HEAP32[$pHash>>2]|0; + $46 = HEAP32[$h>>2]|0; + $47 = HEAP32[$2>>2]|0; + $48 = HEAP32[$3>>2]|0; + $49 = (_functionSearch($45,$46,$47,$48)|0); + HEAP32[$p>>2] = $49; + while(1) { + $50 = HEAP32[$p>>2]|0; + $51 = ($50|0)!=(0|0); + if (!($51)) { + break L8; + } + $52 = HEAP32[$p>>2]|0; + $53 = HEAP32[$4>>2]|0; + $54 = HEAP8[$5>>0]|0; + $55 = (_matchQuality($52,$53,$54)|0); + HEAP32[$score1>>2] = $55; + $56 = HEAP32[$score1>>2]|0; + $57 = HEAP32[$bestScore>>2]|0; + $58 = ($56|0)>($57|0); + if ($58) { + $59 = HEAP32[$p>>2]|0; + HEAP32[$pBest>>2] = $59; + $60 = HEAP32[$score1>>2]|0; + HEAP32[$bestScore>>2] = $60; + } + $61 = HEAP32[$p>>2]|0; + $62 = (($61) + 8|0); + $63 = HEAP32[$62>>2]|0; + HEAP32[$p>>2] = $63; + } + } + } while(0); + $64 = HEAP8[$6>>0]|0; + $65 = $64&255; + $66 = ($65|0)!=(0); + if ($66) { + $67 = HEAP32[$bestScore>>2]|0; + $68 = ($67|0)<(6); + if ($68) { + $69 = HEAP32[$1>>2]|0; + $70 = HEAP32[$3>>2]|0; + $71 = (36 + ($70))|0; + $72 = (($71) + 1)|0; + $73 = (_sqlite3DbMallocZero($69,$72)|0); + HEAP32[$pBest>>2] = $73; + $74 = ($73|0)!=(0|0); + if ($74) { + $75 = HEAP32[$pBest>>2]|0; + $76 = (($75) + 36|0); + $77 = HEAP32[$pBest>>2]|0; + $78 = (($77) + 24|0); + HEAP32[$78>>2] = $76; + $79 = HEAP32[$4>>2]|0; + $80 = $79&65535; + $81 = HEAP32[$pBest>>2]|0; + HEAP16[$81>>1] = $80; + $82 = HEAP8[$5>>0]|0; + $83 = $82&255; + $84 = HEAP32[$pBest>>2]|0; + $85 = (($84) + 2|0); + HEAP16[$85>>1] = $83; + $86 = HEAP32[$pBest>>2]|0; + $87 = (($86) + 24|0); + $88 = HEAP32[$87>>2]|0; + $89 = HEAP32[$2>>2]|0; + $90 = HEAP32[$3>>2]|0; + _memcpy(($88|0),($89|0),($90|0))|0; + $91 = HEAP32[$3>>2]|0; + $92 = HEAP32[$pBest>>2]|0; + $93 = (($92) + 24|0); + $94 = HEAP32[$93>>2]|0; + $95 = (($94) + ($91)|0); + HEAP8[$95>>0] = 0; + $96 = HEAP32[$1>>2]|0; + $97 = (($96) + 328|0); + $98 = HEAP32[$pBest>>2]|0; + _sqlite3FuncDefInsert($97,$98); + } + } + } + $99 = HEAP32[$pBest>>2]|0; + $100 = ($99|0)!=(0|0); + do { + if ($100) { + $101 = HEAP32[$pBest>>2]|0; + $102 = (($101) + 16|0); + $103 = HEAP32[$102>>2]|0; + $104 = ($103|0)!=(0|0); + if (!($104)) { + $105 = HEAP32[$pBest>>2]|0; + $106 = (($105) + 12|0); + $107 = HEAP32[$106>>2]|0; + $108 = ($107|0)!=(0|0); + if (!($108)) { + $109 = HEAP8[$6>>0]|0; + $110 = $109&255; + $111 = ($110|0)!=(0); + if (!($111)) { + break; + } + } + } + $112 = HEAP32[$pBest>>2]|0; + HEAP32[$0>>2] = $112; + $113 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($113|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $113 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($113|0); +} +function _sqlite3InvalidFunction($context,$NotUsed,$NotUsed2) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $NotUsed2 = $NotUsed2|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $zErr = 0, $zName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 20|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $zName = sp + 12|0; + $zErr = sp + 16|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $NotUsed2; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 24|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$zName>>2] = $6; + $7 = HEAP32[$zName>>2]|0; + HEAP32[$vararg_buffer>>2] = $7; + $8 = (_sqlite3_mprintf(11536,$vararg_buffer)|0); + HEAP32[$zErr>>2] = $8; + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$zErr>>2]|0; + _sqlite3_result_error($9,$10,-1); + $11 = HEAP32[$zErr>>2]|0; + _sqlite3_free($11); + STACKTOP = sp;return; +} +function _sqlite3_wal_autocheckpoint($db,$nFrame) { + $db = $db|0; + $nFrame = $nFrame|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $nFrame; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)>(0); + $4 = HEAP32[$0>>2]|0; + if ($3) { + $5 = HEAP32[$1>>2]|0; + $6 = $5; + (_sqlite3_wal_hook($4,10,$6)|0); + STACKTOP = sp;return 0; + } else { + (_sqlite3_wal_hook($4,0,0)|0); + STACKTOP = sp;return 0; + } + return 0|0; +} +function _sqlite3_wal_hook($db,$xCallback,$pArg) { + $db = $db|0; + $xCallback = $xCallback|0; + $pArg = $pArg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pRet = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pRet = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $xCallback; + HEAP32[$2>>2] = $pArg; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 208|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pRet>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 204|0); + HEAP32[$8>>2] = $6; + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 208|0); + HEAP32[$11>>2] = $9; + $12 = HEAP32[$pRet>>2]|0; + STACKTOP = sp;return ($12|0); +} +function _sqlite3WalDefaultHook($pClientData,$db,$zDb,$nFrame) { + $pClientData = $pClientData|0; + $db = $db|0; + $zDb = $zDb|0; + $nFrame = $nFrame|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $pClientData; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $zDb; + HEAP32[$3>>2] = $nFrame; + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = $5; + $7 = ($4|0)>=($6|0); + if (!($7)) { + STACKTOP = sp;return 0; + } + _sqlite3BeginBenignMalloc(); + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$2>>2]|0; + (_sqlite3_wal_checkpoint($8,$9)|0); + _sqlite3EndBenignMalloc(); + STACKTOP = sp;return 0; +} +function _sqlite3_wal_checkpoint_v2($db,$zDb,$eMode,$pnLog,$pnCkpt) { + $db = $db|0; + $zDb = $zDb|0; + $eMode = $eMode|0; + $pnLog = $pnLog|0; + $pnCkpt = $pnCkpt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $iDb = 0, $or$cond = 0, $rc = 0, $vararg_buffer2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer2 = sp; + $0 = sp + 28|0; + $1 = sp + 24|0; + $2 = sp + 20|0; + $3 = sp + 32|0; + $4 = sp + 8|0; + $5 = sp + 4|0; + $rc = sp + 12|0; + $iDb = sp + 16|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $zDb; + HEAP32[$3>>2] = $eMode; + HEAP32[$4>>2] = $pnLog; + HEAP32[$5>>2] = $pnCkpt; + HEAP32[$iDb>>2] = 10; + $6 = HEAP32[$4>>2]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = HEAP32[$4>>2]|0; + HEAP32[$8>>2] = -1; + } + $9 = HEAP32[$5>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = HEAP32[$5>>2]|0; + HEAP32[$11>>2] = -1; + } + $12 = HEAP32[$3>>2]|0; + $13 = ($12|0)<(0); + $14 = HEAP32[$3>>2]|0; + $15 = ($14|0)>(2); + $or$cond = $13 | $15; + if ($or$cond) { + HEAP32[$0>>2] = 21; + $41 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($41|0); + } + $16 = HEAP32[$2>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = HEAP32[$2>>2]|0; + $19 = HEAP8[$18>>0]|0; + $20 = $19 << 24 >> 24; + $21 = ($20|0)!=(0); + if ($21) { + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$2>>2]|0; + $24 = (_sqlite3FindDbName($22,$23)|0); + HEAP32[$iDb>>2] = $24; + } + } + $25 = HEAP32[$iDb>>2]|0; + $26 = ($25|0)<(0); + if ($26) { + HEAP32[$rc>>2] = 1; + $27 = HEAP32[$1>>2]|0; + $28 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer2>>2] = $28; + _sqlite3Error($27,1,1992,$vararg_buffer2); + } else { + $29 = HEAP32[$1>>2]|0; + $30 = HEAP32[$iDb>>2]|0; + $31 = HEAP32[$3>>2]|0; + $32 = HEAP32[$4>>2]|0; + $33 = HEAP32[$5>>2]|0; + $34 = (_sqlite3Checkpoint($29,$30,$31,$32,$33)|0); + HEAP32[$rc>>2] = $34; + $35 = HEAP32[$1>>2]|0; + $36 = HEAP32[$rc>>2]|0; + _sqlite3Error($35,$36,0,$vararg_buffer2); + } + $37 = HEAP32[$1>>2]|0; + $38 = HEAP32[$rc>>2]|0; + $39 = (_sqlite3ApiExit($37,$38)|0); + HEAP32[$rc>>2] = $39; + $40 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $40; + $41 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($41|0); +} +function _sqlite3FindDbName($db,$zName) { + $db = $db|0; + $zName = $zName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $n = 0, $pDb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $i = sp + 4|0; + $pDb = sp + 8|0; + $n = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zName; + HEAP32[$i>>2] = -1; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $31 = HEAP32[$i>>2]|0; + STACKTOP = sp;return ($31|0); + } + $4 = HEAP32[$1>>2]|0; + $5 = (_sqlite3Strlen30($4)|0); + HEAP32[$n>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 20|0); + $8 = HEAP32[$7>>2]|0; + $9 = (($8) - 1)|0; + HEAP32[$i>>2] = $9; + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 16|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + ($10<<4)|0); + HEAP32[$pDb>>2] = $14; + while(1) { + $15 = HEAP32[$i>>2]|0; + $16 = ($15|0)>=(0); + if (!($16)) { + label = 7; + break; + } + $17 = HEAP32[$n>>2]|0; + $18 = HEAP32[$pDb>>2]|0; + $19 = HEAP32[$18>>2]|0; + $20 = (_sqlite3Strlen30($19)|0); + $21 = ($17|0)==($20|0); + if ($21) { + $22 = HEAP32[$pDb>>2]|0; + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$1>>2]|0; + $25 = (_sqlite3_stricmp($23,$24)|0); + $26 = (0)==($25|0); + if ($26) { + label = 7; + break; + } + } + $27 = HEAP32[$i>>2]|0; + $28 = (($27) + -1)|0; + HEAP32[$i>>2] = $28; + $29 = HEAP32[$pDb>>2]|0; + $30 = (($29) + -16|0); + HEAP32[$pDb>>2] = $30; + } + if ((label|0) == 7) { + $31 = HEAP32[$i>>2]|0; + STACKTOP = sp;return ($31|0); + } + return 0|0; +} +function _sqlite3Checkpoint($db,$iDb,$eMode,$pnLog,$pnCkpt) { + $db = $db|0; + $iDb = $iDb|0; + $eMode = $eMode|0; + $pnLog = $pnLog|0; + $pnCkpt = $pnCkpt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $bBusy = 0, $i = 0; + var $or$cond = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $rc = sp + 16|0; + $i = sp + 20|0; + $bBusy = sp + 24|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $iDb; + HEAP32[$2>>2] = $eMode; + HEAP32[$3>>2] = $pnLog; + HEAP32[$4>>2] = $pnCkpt; + HEAP32[$rc>>2] = 0; + HEAP32[$bBusy>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $5 = HEAP32[$i>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 20|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($5|0)<($8|0); + if (!($9)) { + break; + } + $10 = HEAP32[$rc>>2]|0; + $11 = ($10|0)==(0); + if (!($11)) { + break; + } + $12 = HEAP32[$i>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = ($12|0)==($13|0); + $15 = HEAP32[$1>>2]|0; + $16 = ($15|0)==(10); + $or$cond = $14 | $16; + if ($or$cond) { + $17 = HEAP32[$i>>2]|0; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 16|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + ($17<<4)|0); + $22 = (($21) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$2>>2]|0; + $25 = HEAP32[$3>>2]|0; + $26 = HEAP32[$4>>2]|0; + $27 = (_sqlite3BtreeCheckpoint($23,$24,$25,$26)|0); + HEAP32[$rc>>2] = $27; + HEAP32[$3>>2] = 0; + HEAP32[$4>>2] = 0; + $28 = HEAP32[$rc>>2]|0; + $29 = ($28|0)==(5); + if ($29) { + HEAP32[$bBusy>>2] = 1; + HEAP32[$rc>>2] = 0; + } + } + $30 = HEAP32[$i>>2]|0; + $31 = (($30) + 1)|0; + HEAP32[$i>>2] = $31; + } + $32 = HEAP32[$rc>>2]|0; + $33 = ($32|0)==(0); + if ($33) { + $34 = HEAP32[$bBusy>>2]|0; + $35 = ($34|0)!=(0); + if ($35) { + $37 = 5; + STACKTOP = sp;return ($37|0); + } + } + $36 = HEAP32[$rc>>2]|0; + $37 = $36; + STACKTOP = sp;return ($37|0); +} +function _sqlite3_wal_checkpoint($db,$zDb) { + $db = $db|0; + $zDb = $zDb|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zDb; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3_wal_checkpoint_v2($2,$3,0,0,0)|0); + STACKTOP = sp;return ($4|0); +} +function _sqlite3SafetyCheckSickOrOk($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $magic = 0, $or$cond = 0, $or$cond3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $magic = sp + 4|0; + HEAP32[$1>>2] = $db; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 76|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$magic>>2] = $4; + $5 = HEAP32[$magic>>2]|0; + $6 = ($5|0)!=(1266094736); + $7 = HEAP32[$magic>>2]|0; + $8 = ($7|0)!=(-1607883113); + $or$cond = $6 & $8; + $9 = HEAP32[$magic>>2]|0; + $10 = ($9|0)!=(-264537850); + $or$cond3 = $or$cond & $10; + if ($or$cond3) { + _logBadConnection(11480); + HEAP32[$0>>2] = 0; + $11 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($11|0); + } else { + HEAP32[$0>>2] = 1; + $11 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($11|0); + } + return 0|0; +} +function _sqlite3_open($zFilename,$ppDb) { + $zFilename = $zFilename|0; + $ppDb = $ppDb|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $zFilename; + HEAP32[$1>>2] = $ppDb; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_openDatabase($2,$3,6,0)|0); + STACKTOP = sp;return ($4|0); +} +function _openDatabase($zFilename,$ppDb,$flags,$zVfs) { + $zFilename = $zFilename|0; + $ppDb = $ppDb|0; + $flags = $flags|0; + $zVfs = $zVfs|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $isThreadsafe = 0; + var $rc = 0, $vararg_buffer5 = 0, $zErrMsg = 0, $zOpen = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer5 = sp; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 40|0; + $db = sp + 12|0; + $rc = sp + 8|0; + $isThreadsafe = sp + 4|0; + $zOpen = sp + 16|0; + $zErrMsg = sp + 20|0; + HEAP32[$1>>2] = $zFilename; + HEAP32[$2>>2] = $ppDb; + HEAP32[$3>>2] = $flags; + HEAP32[$4>>2] = $zVfs; + HEAP32[$zOpen>>2] = 0; + HEAP32[$zErrMsg>>2] = 0; + $5 = HEAP32[$2>>2]|0; + HEAP32[$5>>2] = 0; + $6 = (_sqlite3_initialize()|0); + HEAP32[$rc>>2] = $6; + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)!=(0); + if ($8) { + $9 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $9; + $217 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($217|0); + } + $10 = HEAP32[$3>>2]|0; + $11 = $10 & 7; + $12 = 1 << $11; + $13 = $12 & 70; + $14 = ($13|0)==(0); + if ($14) { + $15 = (_sqlite3MisuseError(123516)|0); + HEAP32[$0>>2] = $15; + $217 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($217|0); + } + $16 = HEAP32[((45136 + 4|0))>>2]|0; + $17 = ($16|0)==(0); + do { + if ($17) { + HEAP32[$isThreadsafe>>2] = 0; + } else { + $18 = HEAP32[$3>>2]|0; + $19 = $18 & 32768; + $20 = ($19|0)!=(0); + if ($20) { + HEAP32[$isThreadsafe>>2] = 0; + break; + } + $21 = HEAP32[$3>>2]|0; + $22 = $21 & 65536; + $23 = ($22|0)!=(0); + if ($23) { + HEAP32[$isThreadsafe>>2] = 1; + break; + } else { + $24 = HEAP32[((45136 + 8|0))>>2]|0; + HEAP32[$isThreadsafe>>2] = $24; + break; + } + } + } while(0); + $25 = HEAP32[$3>>2]|0; + $26 = $25 & 262144; + $27 = ($26|0)!=(0); + if ($27) { + $28 = HEAP32[$3>>2]|0; + $29 = $28 & -131073; + HEAP32[$3>>2] = $29; + } else { + $30 = HEAP32[((45136 + 220|0))>>2]|0; + $31 = ($30|0)!=(0); + if ($31) { + $32 = HEAP32[$3>>2]|0; + $33 = $32 | 131072; + HEAP32[$3>>2] = $33; + } + } + $34 = HEAP32[$3>>2]|0; + $35 = $34 & -655129; + HEAP32[$3>>2] = $35; + $36 = (_sqlite3MallocZero(520)|0); + HEAP32[$db>>2] = $36; + $37 = HEAP32[$db>>2]|0; + $38 = ($37|0)==(0|0); + do { + if (!($38)) { + $39 = HEAP32[$isThreadsafe>>2]|0; + $40 = ($39|0)!=(0); + if ($40) { + $41 = HEAP32[$db>>2]|0; + $42 = (($41) + 12|0); + HEAP32[$42>>2] = (8); + $43 = HEAP32[$db>>2]|0; + $44 = (($43) + 12|0); + $45 = HEAP32[$44>>2]|0; + $46 = ($45|0)==(0|0); + if ($46) { + $47 = HEAP32[$db>>2]|0; + _sqlite3_free($47); + HEAP32[$db>>2] = 0; + break; + } + } + $48 = HEAP32[$db>>2]|0; + $49 = (($48) + 56|0); + HEAP32[$49>>2] = 255; + $50 = HEAP32[$db>>2]|0; + $51 = (($50) + 20|0); + HEAP32[$51>>2] = 2; + $52 = HEAP32[$db>>2]|0; + $53 = (($52) + 76|0); + HEAP32[$53>>2] = -264537850; + $54 = HEAP32[$db>>2]|0; + $55 = (($54) + 448|0); + $56 = HEAP32[$db>>2]|0; + $57 = (($56) + 16|0); + HEAP32[$57>>2] = $55; + $58 = HEAP32[$db>>2]|0; + $59 = (($58) + 88|0); + dest=$59+0|0; src=2016+0|0; stop=dest+44|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $60 = HEAP32[$db>>2]|0; + $61 = (($60) + 62|0); + HEAP8[$61>>0] = 1; + $62 = HEAP32[$db>>2]|0; + $63 = (($62) + 66|0); + HEAP8[$63>>0] = -1; + $64 = ((45136 + 176|0)); + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = (($64) + 4)|0; + $68 = $67; + $69 = HEAP32[$68>>2]|0; + $70 = HEAP32[$db>>2]|0; + $71 = (($70) + 40|0); + $72 = $71; + $73 = $72; + HEAP32[$73>>2] = $66; + $74 = (($72) + 4)|0; + $75 = $74; + HEAP32[$75>>2] = $69; + $76 = HEAP32[$db>>2]|0; + $77 = (($76) + 72|0); + HEAP32[$77>>2] = 0; + $78 = HEAP32[$db>>2]|0; + $79 = (($78) + 24|0); + $80 = HEAP32[$79>>2]|0; + $81 = $80 | 9437264; + HEAP32[$79>>2] = $81; + $82 = HEAP32[$db>>2]|0; + $83 = (($82) + 420|0); + _sqlite3HashInit($83); + $84 = HEAP32[$db>>2]|0; + $85 = (($84) + 300|0); + _sqlite3HashInit($85); + $86 = HEAP32[$db>>2]|0; + (_createCollation($86,3640,1,0,12,0)|0); + $87 = HEAP32[$db>>2]|0; + (_createCollation($87,3640,3,0,12,0)|0); + $88 = HEAP32[$db>>2]|0; + (_createCollation($88,3640,2,0,12,0)|0); + $89 = HEAP32[$db>>2]|0; + (_createCollation($89,3648,1,(1),12,0)|0); + $90 = HEAP32[$db>>2]|0; + $91 = (($90) + 64|0); + $92 = HEAP8[$91>>0]|0; + $93 = ($92<<24>>24)!=(0); + if (!($93)) { + $94 = HEAP32[$db>>2]|0; + $95 = (_sqlite3FindCollSeq($94,1,3640,0)|0); + $96 = HEAP32[$db>>2]|0; + $97 = (($96) + 8|0); + HEAP32[$97>>2] = $95; + $98 = HEAP32[$db>>2]|0; + (_createCollation($98,3656,1,0,13,0)|0); + $99 = HEAP32[$3>>2]|0; + $100 = HEAP32[$db>>2]|0; + $101 = (($100) + 48|0); + HEAP32[$101>>2] = $99; + $102 = HEAP32[$4>>2]|0; + $103 = HEAP32[$1>>2]|0; + $104 = HEAP32[$db>>2]|0; + $105 = (_sqlite3ParseUri($102,$103,$3,$104,$zOpen,$zErrMsg)|0); + HEAP32[$rc>>2] = $105; + $106 = HEAP32[$rc>>2]|0; + $107 = ($106|0)!=(0); + if ($107) { + $108 = HEAP32[$rc>>2]|0; + $109 = ($108|0)==(7); + if ($109) { + $110 = HEAP32[$db>>2]|0; + $111 = (($110) + 64|0); + HEAP8[$111>>0] = 1; + } + $112 = HEAP32[$db>>2]|0; + $113 = HEAP32[$rc>>2]|0; + $114 = HEAP32[$zErrMsg>>2]|0; + $115 = ($114|0)!=(0|0); + $116 = $115 ? 1768 : 0; + $117 = HEAP32[$zErrMsg>>2]|0; + HEAP32[$vararg_buffer5>>2] = $117; + _sqlite3Error($112,$113,$116,$vararg_buffer5); + $118 = HEAP32[$zErrMsg>>2]|0; + _sqlite3_free($118); + break; + } + $119 = HEAP32[$db>>2]|0; + $120 = HEAP32[$119>>2]|0; + $121 = HEAP32[$zOpen>>2]|0; + $122 = HEAP32[$db>>2]|0; + $123 = HEAP32[$db>>2]|0; + $124 = (($123) + 16|0); + $125 = HEAP32[$124>>2]|0; + $126 = (($125) + 4|0); + $127 = HEAP32[$3>>2]|0; + $128 = $127 | 256; + $129 = (_sqlite3BtreeOpen($120,$121,$122,$126,0,$128)|0); + HEAP32[$rc>>2] = $129; + $130 = HEAP32[$rc>>2]|0; + $131 = ($130|0)!=(0); + if ($131) { + $132 = HEAP32[$rc>>2]|0; + $133 = ($132|0)==(3082); + if ($133) { + HEAP32[$rc>>2] = 7; + } + $134 = HEAP32[$db>>2]|0; + $135 = HEAP32[$rc>>2]|0; + _sqlite3Error($134,$135,0,$vararg_buffer5); + break; + } + $136 = HEAP32[$db>>2]|0; + $137 = HEAP32[$db>>2]|0; + $138 = (($137) + 16|0); + $139 = HEAP32[$138>>2]|0; + $140 = (($139) + 4|0); + $141 = HEAP32[$140>>2]|0; + $142 = (_sqlite3SchemaGet($136,$141)|0); + $143 = HEAP32[$db>>2]|0; + $144 = (($143) + 16|0); + $145 = HEAP32[$144>>2]|0; + $146 = (($145) + 12|0); + HEAP32[$146>>2] = $142; + $147 = HEAP32[$db>>2]|0; + $148 = (_sqlite3SchemaGet($147,0)|0); + $149 = HEAP32[$db>>2]|0; + $150 = (($149) + 16|0); + $151 = HEAP32[$150>>2]|0; + $152 = (($151) + 16|0); + $153 = (($152) + 12|0); + HEAP32[$153>>2] = $148; + $154 = HEAP32[$db>>2]|0; + $155 = (($154) + 16|0); + $156 = HEAP32[$155>>2]|0; + HEAP32[$156>>2] = 3664; + $157 = HEAP32[$db>>2]|0; + $158 = (($157) + 16|0); + $159 = HEAP32[$158>>2]|0; + $160 = (($159) + 8|0); + HEAP8[$160>>0] = 3; + $161 = HEAP32[$db>>2]|0; + $162 = (($161) + 16|0); + $163 = HEAP32[$162>>2]|0; + $164 = (($163) + 16|0); + HEAP32[$164>>2] = 1816; + $165 = HEAP32[$db>>2]|0; + $166 = (($165) + 16|0); + $167 = HEAP32[$166>>2]|0; + $168 = (($167) + 16|0); + $169 = (($168) + 8|0); + HEAP8[$169>>0] = 1; + $170 = HEAP32[$db>>2]|0; + $171 = (($170) + 76|0); + HEAP32[$171>>2] = -1607883113; + $172 = HEAP32[$db>>2]|0; + $173 = (($172) + 64|0); + $174 = HEAP8[$173>>0]|0; + $175 = ($174<<24>>24)!=(0); + if (!($175)) { + $176 = HEAP32[$db>>2]|0; + _sqlite3Error($176,0,0,$vararg_buffer5); + $177 = HEAP32[$db>>2]|0; + _sqlite3RegisterBuiltinFunctions($177); + $178 = HEAP32[$db>>2]|0; + $179 = (_sqlite3_errcode($178)|0); + HEAP32[$rc>>2] = $179; + $180 = HEAP32[$rc>>2]|0; + $181 = ($180|0)==(0); + if ($181) { + $182 = HEAP32[$db>>2]|0; + _sqlite3AutoLoadExtensions($182); + $183 = HEAP32[$db>>2]|0; + $184 = (_sqlite3_errcode($183)|0); + HEAP32[$rc>>2] = $184; + $185 = HEAP32[$rc>>2]|0; + $186 = ($185|0)!=(0); + if ($186) { + break; + } + } + $187 = HEAP32[$db>>2]|0; + $188 = (($187) + 64|0); + $189 = HEAP8[$188>>0]|0; + $190 = ($189<<24>>24)!=(0); + if (!($190)) { + $191 = HEAP32[$rc>>2]|0; + $192 = ($191|0)==(0); + if ($192) { + $193 = HEAP32[$db>>2]|0; + $194 = (_sqlite3Fts3Init($193)|0); + HEAP32[$rc>>2] = $194; + } + } + $195 = HEAP32[$rc>>2]|0; + $196 = ($195|0)!=(0); + if ($196) { + $197 = HEAP32[$db>>2]|0; + $198 = HEAP32[$rc>>2]|0; + _sqlite3Error($197,$198,0,$vararg_buffer5); + } + $199 = HEAP32[$db>>2]|0; + $200 = HEAP32[((45136 + 28|0))>>2]|0; + $201 = HEAP32[((45136 + 32|0))>>2]|0; + (_setupLookaside($199,0,$200,$201)|0); + $202 = HEAP32[$db>>2]|0; + (_sqlite3_wal_autocheckpoint($202,1000)|0); + } + } + } + } while(0); + $203 = HEAP32[$zOpen>>2]|0; + _sqlite3_free($203); + $204 = HEAP32[$db>>2]|0; + $205 = (_sqlite3_errcode($204)|0); + HEAP32[$rc>>2] = $205; + $206 = HEAP32[$rc>>2]|0; + $207 = ($206|0)==(7); + if ($207) { + $208 = HEAP32[$db>>2]|0; + (_sqlite3_close($208)|0); + HEAP32[$db>>2] = 0; + } else { + $209 = HEAP32[$rc>>2]|0; + $210 = ($209|0)!=(0); + if ($210) { + $211 = HEAP32[$db>>2]|0; + $212 = (($211) + 76|0); + HEAP32[$212>>2] = 1266094736; + } + } + $213 = HEAP32[$db>>2]|0; + $214 = HEAP32[$2>>2]|0; + HEAP32[$214>>2] = $213; + $215 = HEAP32[$rc>>2]|0; + $216 = (_sqlite3ApiExit(0,$215)|0); + HEAP32[$0>>2] = $216; + $217 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($217|0); +} +function _createCollation($db,$zName,$enc,$pCtx,$xCompare,$xDel) { + $db = $db|0; + $zName = $zName|0; + $enc = $enc|0; + $pCtx = $pCtx|0; + $xCompare = $xCompare|0; + $xDel = $xDel|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; + var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aColl = 0, $enc2 = 0, $j = 0, $nName = 0, $or$cond = 0, $or$cond3 = 0, $p = 0, $pColl = 0, $vararg_buffer4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer4 = sp; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $3 = sp + 52|0; + $4 = sp + 32|0; + $5 = sp + 28|0; + $6 = sp + 48|0; + $pColl = sp + 16|0; + $enc2 = sp + 12|0; + $nName = sp + 8|0; + $aColl = sp + 4|0; + $j = sp + 20|0; + $p = sp + 24|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $zName; + HEAP8[$3>>0] = $enc; + HEAP32[$4>>2] = $pCtx; + HEAP32[$5>>2] = $xCompare; + HEAP32[$6>>2] = $xDel; + $7 = HEAP32[$2>>2]|0; + $8 = (_sqlite3Strlen30($7)|0); + HEAP32[$nName>>2] = $8; + $9 = HEAP8[$3>>0]|0; + $10 = $9&255; + HEAP32[$enc2>>2] = $10; + $11 = HEAP32[$enc2>>2]|0; + $12 = ($11|0)==(4); + $13 = HEAP32[$enc2>>2]|0; + $14 = ($13|0)==(8); + $or$cond = $12 | $14; + if ($or$cond) { + $15 = HEAP8[1480>>0]|0; + $16 = $15 << 24 >> 24; + $17 = ($16|0)==(0); + $18 = $17 ? 3 : 2; + HEAP32[$enc2>>2] = $18; + } + $19 = HEAP32[$enc2>>2]|0; + $20 = ($19|0)<(1); + $21 = HEAP32[$enc2>>2]|0; + $22 = ($21|0)>(3); + $or$cond3 = $20 | $22; + if ($or$cond3) { + $23 = (_sqlite3MisuseError(123094)|0); + HEAP32[$0>>2] = $23; + $106 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($106|0); + } + $24 = HEAP32[$1>>2]|0; + $25 = HEAP32[$enc2>>2]|0; + $26 = $25&255; + $27 = HEAP32[$2>>2]|0; + $28 = (_sqlite3FindCollSeq($24,$26,$27,0)|0); + HEAP32[$pColl>>2] = $28; + $29 = HEAP32[$pColl>>2]|0; + $30 = ($29|0)!=(0|0); + L8: do { + if ($30) { + $31 = HEAP32[$pColl>>2]|0; + $32 = (($31) + 12|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($33|0)!=(0|0); + if ($34) { + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 140|0); + $37 = HEAP32[$36>>2]|0; + $38 = ($37|0)!=(0); + $39 = HEAP32[$1>>2]|0; + if ($38) { + _sqlite3Error($39,5,3568,$vararg_buffer4); + HEAP32[$0>>2] = 5; + $106 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($106|0); + } + _sqlite3ExpirePreparedStatements($39); + $40 = HEAP32[$1>>2]|0; + _invalidateCachedKeyInfo($40); + $41 = HEAP32[$pColl>>2]|0; + $42 = (($41) + 4|0); + $43 = HEAP8[$42>>0]|0; + $44 = $43&255; + $45 = $44 & -9; + $46 = HEAP32[$enc2>>2]|0; + $47 = ($45|0)==($46|0); + if ($47) { + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + 420|0); + $50 = HEAP32[$2>>2]|0; + $51 = HEAP32[$nName>>2]|0; + $52 = (_sqlite3HashFind($49,$50,$51)|0); + HEAP32[$aColl>>2] = $52; + HEAP32[$j>>2] = 0; + while(1) { + $53 = HEAP32[$j>>2]|0; + $54 = ($53|0)<(3); + if (!($54)) { + break L8; + } + $55 = HEAP32[$j>>2]|0; + $56 = HEAP32[$aColl>>2]|0; + $57 = (($56) + (($55*20)|0)|0); + HEAP32[$p>>2] = $57; + $58 = HEAP32[$p>>2]|0; + $59 = (($58) + 4|0); + $60 = HEAP8[$59>>0]|0; + $61 = $60&255; + $62 = HEAP32[$pColl>>2]|0; + $63 = (($62) + 4|0); + $64 = HEAP8[$63>>0]|0; + $65 = $64&255; + $66 = ($61|0)==($65|0); + if ($66) { + $67 = HEAP32[$p>>2]|0; + $68 = (($67) + 16|0); + $69 = HEAP32[$68>>2]|0; + $70 = ($69|0)!=(0|0); + if ($70) { + $71 = HEAP32[$p>>2]|0; + $72 = (($71) + 16|0); + $73 = HEAP32[$72>>2]|0; + $74 = HEAP32[$p>>2]|0; + $75 = (($74) + 8|0); + $76 = HEAP32[$75>>2]|0; + FUNCTION_TABLE_vi[$73 & 31]($76); + } + $77 = HEAP32[$p>>2]|0; + $78 = (($77) + 12|0); + HEAP32[$78>>2] = 0; + } + $79 = HEAP32[$j>>2]|0; + $80 = (($79) + 1)|0; + HEAP32[$j>>2] = $80; + } + } + } + } + } while(0); + $81 = HEAP32[$1>>2]|0; + $82 = HEAP32[$enc2>>2]|0; + $83 = $82&255; + $84 = HEAP32[$2>>2]|0; + $85 = (_sqlite3FindCollSeq($81,$83,$84,1)|0); + HEAP32[$pColl>>2] = $85; + $86 = HEAP32[$pColl>>2]|0; + $87 = ($86|0)==(0|0); + if ($87) { + HEAP32[$0>>2] = 7; + $106 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($106|0); + } else { + $88 = HEAP32[$5>>2]|0; + $89 = HEAP32[$pColl>>2]|0; + $90 = (($89) + 12|0); + HEAP32[$90>>2] = $88; + $91 = HEAP32[$4>>2]|0; + $92 = HEAP32[$pColl>>2]|0; + $93 = (($92) + 8|0); + HEAP32[$93>>2] = $91; + $94 = HEAP32[$6>>2]|0; + $95 = HEAP32[$pColl>>2]|0; + $96 = (($95) + 16|0); + HEAP32[$96>>2] = $94; + $97 = HEAP32[$enc2>>2]|0; + $98 = HEAP8[$3>>0]|0; + $99 = $98&255; + $100 = $99 & 8; + $101 = $97 | $100; + $102 = $101&255; + $103 = HEAP32[$pColl>>2]|0; + $104 = (($103) + 4|0); + HEAP8[$104>>0] = $102; + $105 = HEAP32[$1>>2]|0; + _sqlite3Error($105,0,0,$vararg_buffer4); + HEAP32[$0>>2] = 0; + $106 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($106|0); + } + return 0|0; +} +function _sqlite3OsSleep($pVfs,$nMicro) { + $pVfs = $pVfs|0; + $nMicro = $nMicro|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pVfs; + HEAP32[$1>>2] = $nMicro; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 60|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (FUNCTION_TABLE_iii[$4 & 127]($5,$6)|0); + STACKTOP = sp;return ($7|0); +} +function _sqlite3_file_control($db,$zDbName,$op,$pArg) { + $db = $db|0; + $zDbName = $zDbName|0; + $op = $op|0; + $pArg = $pArg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $fd = 0, $pBtree = 0, $pPager = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $rc = sp + 12|0; + $pBtree = sp + 16|0; + $pPager = sp + 20|0; + $fd = sp + 24|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zDbName; + HEAP32[$2>>2] = $op; + HEAP32[$3>>2] = $pArg; + HEAP32[$rc>>2] = 1; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (_sqlite3DbNameToBtree($4,$5)|0); + HEAP32[$pBtree>>2] = $6; + $7 = HEAP32[$pBtree>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + $24 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($24|0); + } + $9 = HEAP32[$pBtree>>2]|0; + _sqlite3BtreeEnter($9); + $10 = HEAP32[$pBtree>>2]|0; + $11 = (_sqlite3BtreePager($10)|0); + HEAP32[$pPager>>2] = $11; + $12 = HEAP32[$pPager>>2]|0; + $13 = (_sqlite3PagerFile($12)|0); + HEAP32[$fd>>2] = $13; + $14 = HEAP32[$2>>2]|0; + $15 = ($14|0)==(7); + $16 = HEAP32[$fd>>2]|0; + if ($15) { + $17 = HEAP32[$3>>2]|0; + HEAP32[$17>>2] = $16; + HEAP32[$rc>>2] = 0; + $24 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($24|0); + } + $18 = HEAP32[$16>>2]|0; + $19 = ($18|0)!=(0|0); + if ($19) { + $20 = HEAP32[$fd>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = HEAP32[$3>>2]|0; + $23 = (_sqlite3OsFileControl($20,$21,$22)|0); + HEAP32[$rc>>2] = $23; + $24 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($24|0); + } else { + HEAP32[$rc>>2] = 12; + $24 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($24|0); + } + return 0|0; +} +function _sqlite3DbNameToBtree($db,$zDbName) { + $db = $db|0; + $zDbName = $zDbName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $zDbName; + HEAP32[$i>>2] = 0; + while(1) { + $3 = HEAP32[$i>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 20|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($3|0)<($6|0); + if (!($7)) { + label = 8; + break; + } + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 16|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + ($8<<4)|0); + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = HEAP32[$2>>2]|0; + $17 = ($16|0)==(0|0); + if ($17) { + label = 6; + break; + } + $18 = HEAP32[$2>>2]|0; + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 16|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + ($19<<4)|0); + $24 = HEAP32[$23>>2]|0; + $25 = (_sqlite3_stricmp($18,$24)|0); + $26 = ($25|0)==(0); + if ($26) { + label = 6; + break; + } + } + $34 = HEAP32[$i>>2]|0; + $35 = (($34) + 1)|0; + HEAP32[$i>>2] = $35; + } + if ((label|0) == 6) { + $27 = HEAP32[$i>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 16|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + ($27<<4)|0); + $32 = (($31) + 4|0); + $33 = HEAP32[$32>>2]|0; + HEAP32[$0>>2] = $33; + $36 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($36|0); + } + else if ((label|0) == 8) { + HEAP32[$0>>2] = 0; + $36 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($36|0); + } + return 0|0; +} +function _sqlite3OsFileControl($id,$op,$pArg) { + $id = $id|0; + $op = $op|0; + $pArg = $pArg|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $id; + HEAP32[$1>>2] = $op; + HEAP32[$2>>2] = $pArg; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 40|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = (FUNCTION_TABLE_iiii[$6 & 31]($7,$8,$9)|0); + STACKTOP = sp;return ($10|0); +} +function _sqlite3BtreeSetPageSize($p,$pageSize,$nReserve,$iFix) { + $p = $p|0; + $pageSize = $pageSize|0; + $nReserve = $nReserve|0; + $iFix = $iFix|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0; + var $8 = 0, $9 = 0, $or$cond = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $rc = sp + 16|0; + $pBt = sp + 20|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pageSize; + HEAP32[$3>>2] = $nReserve; + HEAP32[$4>>2] = $iFix; + HEAP32[$rc>>2] = 0; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 4|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pBt>>2] = $7; + $8 = HEAP32[$1>>2]|0; + _sqlite3BtreeEnter($8); + $9 = HEAP32[$pBt>>2]|0; + $10 = (($9) + 22|0); + $11 = HEAP16[$10>>1]|0; + $12 = $11&65535; + $13 = $12 & 2; + $14 = ($13|0)!=(0); + if ($14) { + HEAP32[$0>>2] = 8; + $61 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($61|0); + } + $15 = HEAP32[$3>>2]|0; + $16 = ($15|0)<(0); + if ($16) { + $17 = HEAP32[$pBt>>2]|0; + $18 = (($17) + 32|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$pBt>>2]|0; + $21 = (($20) + 36|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($19) - ($22))|0; + HEAP32[$3>>2] = $23; + } + $24 = HEAP32[$2>>2]|0; + $25 = ($24|0)>=(512); + $26 = HEAP32[$2>>2]|0; + $27 = ($26|0)<=(65536); + $or$cond = $25 & $27; + if ($or$cond) { + $28 = HEAP32[$2>>2]|0; + $29 = (($28) - 1)|0; + $30 = HEAP32[$2>>2]|0; + $31 = $29 & $30; + $32 = ($31|0)==(0); + if ($32) { + $33 = HEAP32[$2>>2]|0; + $34 = HEAP32[$pBt>>2]|0; + $35 = (($34) + 32|0); + HEAP32[$35>>2] = $33; + $36 = HEAP32[$pBt>>2]|0; + _freeTempSpace($36); + } + } + $37 = HEAP32[$pBt>>2]|0; + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$pBt>>2]|0; + $40 = (($39) + 32|0); + $41 = HEAP32[$3>>2]|0; + $42 = (_sqlite3PagerSetPagesize($38,$40,$41)|0); + HEAP32[$rc>>2] = $42; + $43 = HEAP32[$pBt>>2]|0; + $44 = (($43) + 32|0); + $45 = HEAP32[$44>>2]|0; + $46 = HEAP32[$3>>2]|0; + $47 = $46&65535; + $48 = $47&65535; + $49 = (($45) - ($48))|0; + $50 = HEAP32[$pBt>>2]|0; + $51 = (($50) + 36|0); + HEAP32[$51>>2] = $49; + $52 = HEAP32[$4>>2]|0; + $53 = ($52|0)!=(0); + if ($53) { + $54 = HEAP32[$pBt>>2]|0; + $55 = (($54) + 22|0); + $56 = HEAP16[$55>>1]|0; + $57 = $56&65535; + $58 = $57 | 2; + $59 = $58&65535; + HEAP16[$55>>1] = $59; + } + $60 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $60; + $61 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($61|0); +} +function _sqlite3KeywordCode($z,$n) { + $z = $z|0; + $n = $n|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $z; + HEAP32[$1>>2] = $n; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_keywordCode($2,$3)|0); + STACKTOP = sp;return ($4|0); +} +function _sqlite3ScratchMalloc($n) { + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $n; + $1 = HEAP32[((480 + 32|0))>>2]|0; + $2 = ($1|0)!=(0); + if ($2) { + $3 = HEAP32[((45136 + 196|0))>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = ($3|0)>=($4|0); + if ($5) { + $6 = HEAP32[((480 + 28|0))>>2]|0; + HEAP32[$p>>2] = $6; + $7 = HEAP32[((480 + 28|0))>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[((480 + 28|0))>>2] = $8; + $9 = HEAP32[((480 + 32|0))>>2]|0; + $10 = (($9) + -1)|0; + HEAP32[((480 + 32|0))>>2] = $10; + _sqlite3StatusAdd(3,1); + $11 = HEAP32[$0>>2]|0; + _sqlite3StatusSet(8,$11); + $23 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($23|0); + } + } + $12 = HEAP32[45136>>2]|0; + $13 = ($12|0)!=(0); + if (!($13)) { + $20 = HEAP32[((45136 + 36|0))>>2]|0; + $21 = HEAP32[$0>>2]|0; + $22 = (FUNCTION_TABLE_ii[$20 & 63]($21)|0); + HEAP32[$p>>2] = $22; + $23 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($23|0); + } + $14 = HEAP32[$0>>2]|0; + _sqlite3StatusSet(8,$14); + $15 = HEAP32[$0>>2]|0; + $16 = (_mallocWithAlarm($15,$p)|0); + HEAP32[$0>>2] = $16; + $17 = HEAP32[$p>>2]|0; + $18 = ($17|0)!=(0|0); + if (!($18)) { + $23 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($23|0); + } + $19 = HEAP32[$0>>2]|0; + _sqlite3StatusAdd(4,$19); + $23 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($23|0); +} +function _sqlite3ScratchFree($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iSize = 0, $pSlot = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $pSlot = sp; + $iSize = sp + 4|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[((45136 + 192|0))>>2]|0; + $5 = ($3>>>0)>=($4>>>0); + if ($5) { + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[((480 + 24|0))>>2]|0; + $8 = ($6>>>0)<($7>>>0); + if ($8) { + $9 = HEAP32[$0>>2]|0; + HEAP32[$pSlot>>2] = $9; + $10 = HEAP32[((480 + 28|0))>>2]|0; + $11 = HEAP32[$pSlot>>2]|0; + HEAP32[$11>>2] = $10; + $12 = HEAP32[$pSlot>>2]|0; + HEAP32[((480 + 28|0))>>2] = $12; + $13 = HEAP32[((480 + 32|0))>>2]|0; + $14 = (($13) + 1)|0; + HEAP32[((480 + 32|0))>>2] = $14; + _sqlite3StatusAdd(3,-1); + STACKTOP = sp;return; + } + } + $15 = HEAP32[45136>>2]|0; + $16 = ($15|0)!=(0); + if ($16) { + $17 = HEAP32[$0>>2]|0; + $18 = (_sqlite3MallocSize($17)|0); + HEAP32[$iSize>>2] = $18; + $19 = HEAP32[$iSize>>2]|0; + $20 = (0 - ($19))|0; + _sqlite3StatusAdd(4,$20); + $21 = HEAP32[$iSize>>2]|0; + $22 = (0 - ($21))|0; + _sqlite3StatusAdd(0,$22); + _sqlite3StatusAdd(9,-1); + $23 = HEAP32[((45136 + 40|0))>>2]|0; + $24 = HEAP32[$0>>2]|0; + FUNCTION_TABLE_vi[$23 & 31]($24); + STACKTOP = sp;return; + } else { + $25 = HEAP32[((45136 + 40|0))>>2]|0; + $26 = HEAP32[$0>>2]|0; + FUNCTION_TABLE_vi[$25 & 31]($26); + STACKTOP = sp;return; + } +} +function _sqlite3_uri_parameter($zFilename,$zParam) { + $zFilename = $zFilename|0; + $zParam = $zParam|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $x = sp + 8|0; + HEAP32[$1>>2] = $zFilename; + HEAP32[$2>>2] = $zParam; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + HEAP32[$0>>2] = 0; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } + $5 = HEAP32[$1>>2]|0; + $6 = (_sqlite3Strlen30($5)|0); + $7 = (($6) + 1)|0; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + ($7)|0); + HEAP32[$1>>2] = $9; + while(1) { + $10 = HEAP32[$1>>2]|0; + $11 = HEAP8[$10>>0]|0; + $12 = ($11<<24>>24)!=(0); + if (!($12)) { + label = 8; + break; + } + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (_strcmp($13,$14)|0); + HEAP32[$x>>2] = $15; + $16 = HEAP32[$1>>2]|0; + $17 = (_sqlite3Strlen30($16)|0); + $18 = (($17) + 1)|0; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + ($18)|0); + HEAP32[$1>>2] = $20; + $21 = HEAP32[$x>>2]|0; + $22 = ($21|0)==(0); + $23 = HEAP32[$1>>2]|0; + if ($22) { + label = 6; + break; + } + $24 = (_sqlite3Strlen30($23)|0); + $25 = (($24) + 1)|0; + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + ($25)|0); + HEAP32[$1>>2] = $27; + } + if ((label|0) == 6) { + HEAP32[$0>>2] = $23; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } + else if ((label|0) == 8) { + HEAP32[$0>>2] = 0; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } + return 0|0; +} +function _sqlite3_uri_boolean($zFilename,$zParam,$bDflt) { + $zFilename = $zFilename|0; + $zParam = $zParam|0; + $bDflt = $bDflt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $z = sp + 8|0; + HEAP32[$0>>2] = $zFilename; + HEAP32[$1>>2] = $zParam; + HEAP32[$2>>2] = $bDflt; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (_sqlite3_uri_parameter($3,$4)|0); + HEAP32[$z>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = ($6|0)!=(0); + $8 = $7&1; + HEAP32[$2>>2] = $8; + $9 = HEAP32[$z>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = HEAP32[$z>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = (_sqlite3GetBoolean($11,$12)|0); + $14 = $13&255; + $16 = $14; + STACKTOP = sp;return ($16|0); + } else { + $15 = HEAP32[$2>>2]|0; + $16 = $15; + STACKTOP = sp;return ($16|0); + } + return 0|0; +} +function _sqlite3GetBoolean($z,$dflt) { + $z = $z|0; + $dflt = $dflt|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $z; + HEAP32[$1>>2] = $dflt; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_getSafetyLevel($2,1,$3)|0); + $5 = $4&255; + $6 = ($5|0)!=(0); + $7 = $6&1; + $8 = $7&255; + STACKTOP = sp;return ($8|0); +} +function _sqlite3Atoi64($zNum,$pNum,$length,$enc) { + $zNum = $zNum|0; + $pNum = $pNum|0; + $length = $length|0; + $enc = $enc|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $19 = 0; + var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $i = 0, $incr = 0, $neg = 0, $nonNum = 0, $u = 0, $zEnd = 0, $zStart = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 48|0; + $1 = sp + 44|0; + $2 = sp + 40|0; + $3 = sp + 36|0; + $4 = sp + 52|0; + $incr = sp + 32|0; + $u = sp; + $neg = sp + 20|0; + $i = sp + 16|0; + $c = sp + 12|0; + $nonNum = sp + 8|0; + $zStart = sp + 24|0; + $zEnd = sp + 28|0; + HEAP32[$1>>2] = $zNum; + HEAP32[$2>>2] = $pNum; + HEAP32[$3>>2] = $length; + HEAP8[$4>>0] = $enc; + $5 = $u; + $6 = $5; + HEAP32[$6>>2] = 0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = 0; + HEAP32[$neg>>2] = 0; + HEAP32[$c>>2] = 0; + HEAP32[$nonNum>>2] = 0; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$3>>2]|0; + $11 = (($9) + ($10)|0); + HEAP32[$zEnd>>2] = $11; + $12 = HEAP8[$4>>0]|0; + $13 = $12&255; + $14 = ($13|0)==(1); + if ($14) { + HEAP32[$incr>>2] = 1; + } else { + HEAP32[$incr>>2] = 2; + $15 = HEAP8[$4>>0]|0; + $16 = $15&255; + $17 = (3 - ($16))|0; + HEAP32[$i>>2] = $17; + while(1) { + $18 = HEAP32[$i>>2]|0; + $19 = HEAP32[$3>>2]|0; + $20 = ($18|0)<($19|0); + if (!($20)) { + break; + } + $21 = HEAP32[$i>>2]|0; + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + ($21)|0); + $24 = HEAP8[$23>>0]|0; + $25 = $24 << 24 >> 24; + $26 = ($25|0)==(0); + if (!($26)) { + break; + } + $27 = HEAP32[$i>>2]|0; + $28 = (($27) + 2)|0; + HEAP32[$i>>2] = $28; + } + $29 = HEAP32[$i>>2]|0; + $30 = HEAP32[$3>>2]|0; + $31 = ($29|0)<($30|0); + $32 = $31&1; + HEAP32[$nonNum>>2] = $32; + $33 = HEAP32[$1>>2]|0; + $34 = HEAP32[$i>>2]|0; + $35 = (($33) + ($34)|0); + $36 = HEAP8[$4>>0]|0; + $37 = $36&255; + $38 = (($35) + ($37)|0); + $39 = (($38) + -3|0); + HEAP32[$zEnd>>2] = $39; + $40 = HEAP8[$4>>0]|0; + $41 = $40&255; + $42 = $41 & 1; + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + ($42)|0); + HEAP32[$1>>2] = $44; + } + while(1) { + $45 = HEAP32[$1>>2]|0; + $46 = HEAP32[$zEnd>>2]|0; + $47 = ($45>>>0)<($46>>>0); + if (!($47)) { + break; + } + $48 = HEAP32[$1>>2]|0; + $49 = HEAP8[$48>>0]|0; + $50 = $49&255; + $51 = (136 + ($50)|0); + $52 = HEAP8[$51>>0]|0; + $53 = $52&255; + $54 = $53 & 1; + $55 = ($54|0)!=(0); + if (!($55)) { + break; + } + $56 = HEAP32[$incr>>2]|0; + $57 = HEAP32[$1>>2]|0; + $58 = (($57) + ($56)|0); + HEAP32[$1>>2] = $58; + } + $59 = HEAP32[$1>>2]|0; + $60 = HEAP32[$zEnd>>2]|0; + $61 = ($59>>>0)<($60>>>0); + do { + if ($61) { + $62 = HEAP32[$1>>2]|0; + $63 = HEAP8[$62>>0]|0; + $64 = $63 << 24 >> 24; + $65 = ($64|0)==(45); + if ($65) { + HEAP32[$neg>>2] = 1; + $66 = HEAP32[$incr>>2]|0; + $67 = HEAP32[$1>>2]|0; + $68 = (($67) + ($66)|0); + HEAP32[$1>>2] = $68; + break; + } + $69 = HEAP32[$1>>2]|0; + $70 = HEAP8[$69>>0]|0; + $71 = $70 << 24 >> 24; + $72 = ($71|0)==(43); + if ($72) { + $73 = HEAP32[$incr>>2]|0; + $74 = HEAP32[$1>>2]|0; + $75 = (($74) + ($73)|0); + HEAP32[$1>>2] = $75; + } + } + } while(0); + $76 = HEAP32[$1>>2]|0; + HEAP32[$zStart>>2] = $76; + while(1) { + $77 = HEAP32[$1>>2]|0; + $78 = HEAP32[$zEnd>>2]|0; + $79 = ($77>>>0)<($78>>>0); + if (!($79)) { + break; + } + $80 = HEAP32[$1>>2]|0; + $81 = HEAP8[$80>>0]|0; + $82 = $81 << 24 >> 24; + $83 = ($82|0)==(48); + if (!($83)) { + break; + } + $84 = HEAP32[$incr>>2]|0; + $85 = HEAP32[$1>>2]|0; + $86 = (($85) + ($84)|0); + HEAP32[$1>>2] = $86; + } + HEAP32[$i>>2] = 0; + while(1) { + $87 = HEAP32[$i>>2]|0; + $88 = HEAP32[$1>>2]|0; + $89 = (($88) + ($87)|0); + $90 = HEAP32[$zEnd>>2]|0; + $91 = ($89>>>0)<($90>>>0); + if ($91) { + $92 = HEAP32[$i>>2]|0; + $93 = HEAP32[$1>>2]|0; + $94 = (($93) + ($92)|0); + $95 = HEAP8[$94>>0]|0; + $96 = $95 << 24 >> 24; + HEAP32[$c>>2] = $96; + $97 = ($96|0)>=(48); + if ($97) { + $98 = HEAP32[$c>>2]|0; + $99 = ($98|0)<=(57); + $187 = $99; + } else { + $187 = 0; + } + } else { + $187 = 0; + } + $100 = $u; + $101 = $100; + $102 = HEAP32[$101>>2]|0; + $103 = (($100) + 4)|0; + $104 = $103; + $105 = HEAP32[$104>>2]|0; + if (!($187)) { + break; + } + $106 = (___muldi3(($102|0),($105|0),10,0)|0); + $107 = tempRet0; + $108 = HEAP32[$c>>2]|0; + $109 = ($108|0)<(0); + $110 = $109 << 31 >> 31; + $111 = (_i64Add(($106|0),($107|0),($108|0),($110|0))|0); + $112 = tempRet0; + $113 = (_i64Subtract(($111|0),($112|0),48,0)|0); + $114 = tempRet0; + $115 = $u; + $116 = $115; + HEAP32[$116>>2] = $113; + $117 = (($115) + 4)|0; + $118 = $117; + HEAP32[$118>>2] = $114; + $119 = HEAP32[$incr>>2]|0; + $120 = HEAP32[$i>>2]|0; + $121 = (($120) + ($119))|0; + HEAP32[$i>>2] = $121; + } + $122 = ($105>>>0)>(2147483647); + $123 = ($105|0)==(2147483647); + $124 = ($102>>>0)>(4294967295); + $125 = $123 & $124; + $126 = $122 | $125; + $127 = HEAP32[$neg>>2]|0; + $128 = ($127|0)!=(0); + do { + if ($126) { + $129 = $128 ? 0 : -1; + $130 = $128 ? -2147483648 : 2147483647; + $131 = HEAP32[$2>>2]|0; + $132 = $131; + $133 = $132; + HEAP32[$133>>2] = $129; + $134 = (($132) + 4)|0; + $135 = $134; + HEAP32[$135>>2] = $130; + } else { + $136 = $u; + $137 = $136; + $138 = HEAP32[$137>>2]|0; + $139 = (($136) + 4)|0; + $140 = $139; + $141 = HEAP32[$140>>2]|0; + if ($128) { + $142 = (_i64Subtract(0,0,($138|0),($141|0))|0); + $143 = tempRet0; + $144 = HEAP32[$2>>2]|0; + $145 = $144; + $146 = $145; + HEAP32[$146>>2] = $142; + $147 = (($145) + 4)|0; + $148 = $147; + HEAP32[$148>>2] = $143; + break; + } else { + $149 = HEAP32[$2>>2]|0; + $150 = $149; + $151 = $150; + HEAP32[$151>>2] = $138; + $152 = (($150) + 4)|0; + $153 = $152; + HEAP32[$153>>2] = $141; + break; + } + } + } while(0); + $154 = HEAP32[$c>>2]|0; + $155 = ($154|0)!=(0); + if ($155) { + $156 = HEAP32[$i>>2]|0; + $157 = HEAP32[$1>>2]|0; + $158 = (($157) + ($156)|0); + $159 = HEAP32[$zEnd>>2]|0; + $160 = ($158>>>0)<($159>>>0); + if (!($160)) { + label = 33; + } + } else { + label = 33; + } + do { + if ((label|0) == 33) { + $161 = HEAP32[$i>>2]|0; + $162 = ($161|0)==(0); + if ($162) { + $163 = HEAP32[$zStart>>2]|0; + $164 = HEAP32[$1>>2]|0; + $165 = ($163|0)==($164|0); + if ($165) { + break; + } + } + $166 = HEAP32[$i>>2]|0; + $167 = HEAP32[$incr>>2]|0; + $168 = ($167*19)|0; + $169 = ($166|0)>($168|0); + if (!($169)) { + $170 = HEAP32[$nonNum>>2]|0; + $171 = ($170|0)!=(0); + if (!($171)) { + $172 = HEAP32[$i>>2]|0; + $173 = HEAP32[$incr>>2]|0; + $174 = ($173*19)|0; + $175 = ($172|0)<($174|0); + if ($175) { + HEAP32[$0>>2] = 0; + $186 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($186|0); + } + $176 = HEAP32[$1>>2]|0; + $177 = HEAP32[$incr>>2]|0; + $178 = (_compare2pow63($176,$177)|0); + HEAP32[$c>>2] = $178; + $179 = HEAP32[$c>>2]|0; + $180 = ($179|0)<(0); + if ($180) { + HEAP32[$0>>2] = 0; + $186 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($186|0); + } + $181 = HEAP32[$c>>2]|0; + $182 = ($181|0)>(0); + if ($182) { + HEAP32[$0>>2] = 1; + $186 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($186|0); + } else { + $183 = HEAP32[$neg>>2]|0; + $184 = ($183|0)!=(0); + $185 = $184 ? 0 : 2; + HEAP32[$0>>2] = $185; + $186 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($186|0); + } + } + } + } + } while(0); + HEAP32[$0>>2] = 1; + $186 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($186|0); +} +function _sqlite3BtreeGetFilename($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3PagerFilename($4,1)|0); + STACKTOP = sp;return ($5|0); +} +function _sqlite3BtreeIsReadonly($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 22|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5&65535; + $7 = $6 & 1; + $8 = ($7|0)!=(0); + $9 = $8&1; + STACKTOP = sp;return ($9|0); +} +function _sqlite3PagerFilename($pPager,$nullIfMemDb) { + $pPager = $pPager|0; + $nullIfMemDb = $nullIfMemDb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $nullIfMemDb; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0); + if ($3) { + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 15|0); + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = ($7|0)!=(0); + if ($8) { + $12 = 1784; + STACKTOP = sp;return ($12|0); + } + } + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 168|0); + $11 = HEAP32[$10>>2]|0; + $12 = $11; + STACKTOP = sp;return ($12|0); +} +function _compare2pow63($zNum,$incr) { + $zNum = $zNum|0; + $incr = $incr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, $i = 0, $pow63 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $c = sp + 4|0; + $i = sp + 8|0; + $pow63 = sp + 12|0; + HEAP32[$0>>2] = $zNum; + HEAP32[$1>>2] = $incr; + HEAP32[$c>>2] = 0; + HEAP32[$pow63>>2] = 2064; + HEAP32[$i>>2] = 0; + while(1) { + $2 = HEAP32[$c>>2]|0; + $3 = ($2|0)==(0); + if (!($3)) { + break; + } + $4 = HEAP32[$i>>2]|0; + $5 = ($4|0)<(18); + if (!($5)) { + break; + } + $6 = HEAP32[$i>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = Math_imul($6, $7)|0; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + ($8)|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11 << 24 >> 24; + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$pow63>>2]|0; + $15 = (($14) + ($13)|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16 << 24 >> 24; + $18 = (($12) - ($17))|0; + $19 = ($18*10)|0; + HEAP32[$c>>2] = $19; + $20 = HEAP32[$i>>2]|0; + $21 = (($20) + 1)|0; + HEAP32[$i>>2] = $21; + } + $22 = HEAP32[$c>>2]|0; + $23 = ($22|0)==(0); + if (!($23)) { + $31 = HEAP32[$c>>2]|0; + STACKTOP = sp;return ($31|0); + } + $24 = HEAP32[$1>>2]|0; + $25 = ($24*18)|0; + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + ($25)|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28 << 24 >> 24; + $30 = (($29) - 56)|0; + HEAP32[$c>>2] = $30; + $31 = HEAP32[$c>>2]|0; + STACKTOP = sp;return ($31|0); +} +function _getSafetyLevel($z,$omitFull,$dflt) { + $z = $z|0; + $omitFull = $omitFull|0; + $dflt = $dflt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $i = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $i = sp + 12|0; + $n = sp + 16|0; + HEAP32[$1>>2] = $z; + HEAP32[$2>>2] = $omitFull; + HEAP32[$3>>2] = $dflt; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = (136 + ($6)|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = $9 & 4; + $11 = ($10|0)!=(0); + $12 = HEAP32[$1>>2]|0; + if ($11) { + $13 = (_sqlite3Atoi($12)|0); + $14 = $13&255; + HEAP8[$0>>0] = $14; + $42 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($42|0); + } + $15 = (_sqlite3Strlen30($12)|0); + HEAP32[$n>>2] = $15; + HEAP32[$i>>2] = 0; + while(1) { + $16 = HEAP32[$i>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = (7 - ($17))|0; + $19 = ($16|0)<($18|0); + if (!($19)) { + label = 9; + break; + } + $20 = HEAP32[$i>>2]|0; + $21 = (2120 + ($20)|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = HEAP32[$n>>2]|0; + $25 = ($23|0)==($24|0); + if ($25) { + $26 = HEAP32[$i>>2]|0; + $27 = (2112 + ($26)|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = (2088 + ($29)|0); + $31 = HEAP32[$1>>2]|0; + $32 = HEAP32[$n>>2]|0; + $33 = (_sqlite3_strnicmp($30,$31,$32)|0); + $34 = ($33|0)==(0); + if ($34) { + label = 7; + break; + } + } + $38 = HEAP32[$i>>2]|0; + $39 = (($38) + 1)|0; + HEAP32[$i>>2] = $39; + } + if ((label|0) == 7) { + $35 = HEAP32[$i>>2]|0; + $36 = (2128 + ($35)|0); + $37 = HEAP8[$36>>0]|0; + HEAP8[$0>>0] = $37; + $42 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($42|0); + } + else if ((label|0) == 9) { + $40 = HEAP32[$3>>2]|0; + $41 = $40&255; + HEAP8[$0>>0] = $41; + $42 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($42|0); + } + return 0|0; +} +function _sqlite3Atoi($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $x = sp; + HEAP32[$0>>2] = $z; + HEAP32[$x>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if ($2) { + $3 = HEAP32[$0>>2]|0; + (_sqlite3GetInt32($3,$x)|0); + } + $4 = HEAP32[$x>>2]|0; + STACKTOP = sp;return ($4|0); +} +function _sqlite3GetInt32($zNum,$pValue) { + $zNum = $zNum|0; + $pValue = $pValue|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $c = 0, $i = 0, $neg = 0, $v = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp + 12|0; + $2 = sp + 8|0; + $v = sp; + $i = sp + 16|0; + $c = sp + 20|0; + $neg = sp + 24|0; + HEAP32[$1>>2] = $zNum; + HEAP32[$2>>2] = $pValue; + $3 = $v; + $4 = $3; + HEAP32[$4>>2] = 0; + $5 = (($3) + 4)|0; + $6 = $5; + HEAP32[$6>>2] = 0; + HEAP32[$neg>>2] = 0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP8[$7>>0]|0; + $9 = $8 << 24 >> 24; + $10 = ($9|0)==(45); + if ($10) { + HEAP32[$neg>>2] = 1; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 1|0); + HEAP32[$1>>2] = $12; + } else { + $13 = HEAP32[$1>>2]|0; + $14 = HEAP8[$13>>0]|0; + $15 = $14 << 24 >> 24; + $16 = ($15|0)==(43); + if ($16) { + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 1|0); + HEAP32[$1>>2] = $18; + } + } + while(1) { + $19 = HEAP32[$1>>2]|0; + $20 = HEAP8[$19>>0]|0; + $21 = $20 << 24 >> 24; + $22 = ($21|0)==(48); + if (!($22)) { + break; + } + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 1|0); + HEAP32[$1>>2] = $24; + } + HEAP32[$i>>2] = 0; + while(1) { + $25 = HEAP32[$i>>2]|0; + $26 = ($25|0)<(11); + if (!($26)) { + break; + } + $27 = HEAP32[$i>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + ($27)|0); + $30 = HEAP8[$29>>0]|0; + $31 = $30 << 24 >> 24; + $32 = (($31) - 48)|0; + HEAP32[$c>>2] = $32; + $33 = ($32|0)>=(0); + if (!($33)) { + break; + } + $34 = HEAP32[$c>>2]|0; + $35 = ($34|0)<=(9); + if (!($35)) { + break; + } + $36 = $v; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + $39 = (($36) + 4)|0; + $40 = $39; + $41 = HEAP32[$40>>2]|0; + $42 = (___muldi3(($38|0),($41|0),10,0)|0); + $43 = tempRet0; + $44 = HEAP32[$c>>2]|0; + $45 = ($44|0)<(0); + $46 = $45 << 31 >> 31; + $47 = (_i64Add(($42|0),($43|0),($44|0),($46|0))|0); + $48 = tempRet0; + $49 = $v; + $50 = $49; + HEAP32[$50>>2] = $47; + $51 = (($49) + 4)|0; + $52 = $51; + HEAP32[$52>>2] = $48; + $53 = HEAP32[$i>>2]|0; + $54 = (($53) + 1)|0; + HEAP32[$i>>2] = $54; + } + $55 = HEAP32[$i>>2]|0; + $56 = ($55|0)>(10); + if ($56) { + HEAP32[$0>>2] = 0; + $94 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($94|0); + } + $57 = $v; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = (($57) + 4)|0; + $61 = $60; + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$neg>>2]|0; + $64 = ($63|0)<(0); + $65 = $64 << 31 >> 31; + $66 = (_i64Subtract(($59|0),($62|0),($63|0),($65|0))|0); + $67 = tempRet0; + $68 = ($67|0)>(0); + $69 = ($67|0)==(0); + $70 = ($66>>>0)>(2147483647); + $71 = $69 & $70; + $72 = $68 | $71; + if ($72) { + HEAP32[$0>>2] = 0; + $94 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($94|0); + } + $73 = HEAP32[$neg>>2]|0; + $74 = ($73|0)!=(0); + if ($74) { + $75 = $v; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = (($75) + 4)|0; + $79 = $78; + $80 = HEAP32[$79>>2]|0; + $81 = (_i64Subtract(0,0,($77|0),($80|0))|0); + $82 = tempRet0; + $83 = $v; + $84 = $83; + HEAP32[$84>>2] = $81; + $85 = (($83) + 4)|0; + $86 = $85; + HEAP32[$86>>2] = $82; + } + $87 = $v; + $88 = $87; + $89 = HEAP32[$88>>2]|0; + $90 = (($87) + 4)|0; + $91 = $90; + $92 = HEAP32[$91>>2]|0; + $93 = HEAP32[$2>>2]|0; + HEAP32[$93>>2] = $89; + HEAP32[$0>>2] = 1; + $94 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($94|0); +} +function _sqlite3StatusSet($op,$X) { + $op = $op|0; + $X = $X|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $op; + HEAP32[$1>>2] = $X; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (392 + ($3<<2)|0); + HEAP32[$4>>2] = $2; + $5 = HEAP32[$0>>2]|0; + $6 = (392 + ($5<<2)|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (((392 + 40|0)) + ($8<<2)|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($7|0)>($10|0); + if (!($11)) { + STACKTOP = sp;return; + } + $12 = HEAP32[$0>>2]|0; + $13 = (392 + ($12<<2)|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (((392 + 40|0)) + ($15<<2)|0); + HEAP32[$16>>2] = $14; + STACKTOP = sp;return; +} +function _mallocWithAlarm($n,$pp) { + $n = $n|0; + $pp = $pp|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $nFull = 0, $nUsed = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $nFull = sp + 4|0; + $p = sp + 8|0; + $nUsed = sp + 12|0; + HEAP32[$0>>2] = $n; + HEAP32[$1>>2] = $pp; + $2 = HEAP32[((45136 + 52|0))>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (FUNCTION_TABLE_ii[$2 & 63]($3)|0); + HEAP32[$nFull>>2] = $4; + $5 = HEAP32[$0>>2]|0; + _sqlite3StatusSet(5,$5); + $6 = HEAP32[((480 + 16|0))>>2]|0; + $7 = ($6|0)!=(0|0); + do { + if ($7) { + $8 = (_sqlite3StatusValue(0)|0); + HEAP32[$nUsed>>2] = $8; + $9 = HEAP32[$nUsed>>2]|0; + $10 = ($9|0)<(0); + $11 = $10 << 31 >> 31; + $12 = ((480 + 8|0)); + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = (($12) + 4)|0; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$nFull>>2]|0; + $19 = ($18|0)<(0); + $20 = $19 << 31 >> 31; + $21 = (_i64Subtract(($14|0),($17|0),($18|0),($20|0))|0); + $22 = tempRet0; + $23 = ($11|0)>($22|0); + $24 = ($11|0)==($22|0); + $25 = ($9>>>0)>=($21>>>0); + $26 = $24 & $25; + $27 = $23 | $26; + if ($27) { + HEAP32[((480 + 36|0))>>2] = 1; + $28 = HEAP32[$nFull>>2]|0; + _sqlite3MallocAlarm($28); + break; + } else { + HEAP32[((480 + 36|0))>>2] = 0; + break; + } + } + } while(0); + $29 = HEAP32[((45136 + 36|0))>>2]|0; + $30 = HEAP32[$nFull>>2]|0; + $31 = (FUNCTION_TABLE_ii[$29 & 63]($30)|0); + HEAP32[$p>>2] = $31; + $32 = HEAP32[$p>>2]|0; + $33 = ($32|0)!=(0|0); + if (!($33)) { + $37 = HEAP32[$p>>2]|0; + $38 = HEAP32[$1>>2]|0; + HEAP32[$38>>2] = $37; + $39 = HEAP32[$nFull>>2]|0; + STACKTOP = sp;return ($39|0); + } + $34 = HEAP32[$p>>2]|0; + $35 = (_sqlite3MallocSize($34)|0); + HEAP32[$nFull>>2] = $35; + $36 = HEAP32[$nFull>>2]|0; + _sqlite3StatusAdd(0,$36); + _sqlite3StatusAdd(9,1); + $37 = HEAP32[$p>>2]|0; + $38 = HEAP32[$1>>2]|0; + HEAP32[$38>>2] = $37; + $39 = HEAP32[$nFull>>2]|0; + STACKTOP = sp;return ($39|0); +} +function _sqlite3StatusValue($op) { + $op = $op|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $op; + $1 = HEAP32[$0>>2]|0; + $2 = (392 + ($1<<2)|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _sqlite3MallocAlarm($nByte) { + $nByte = $nByte|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $nowUsed = 0, $pArg = 0, $xCallback = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $xCallback = sp + 8|0; + $nowUsed = sp; + $pArg = sp + 12|0; + HEAP32[$0>>2] = $nByte; + $1 = HEAP32[((480 + 16|0))>>2]|0; + $2 = ($1|0)==(0|0); + if ($2) { + STACKTOP = sp;return; + } + $3 = HEAP32[((480 + 16|0))>>2]|0; + HEAP32[$xCallback>>2] = $3; + $4 = (_sqlite3StatusValue(0)|0); + $5 = ($4|0)<(0); + $6 = $5 << 31 >> 31; + $7 = $nowUsed; + $8 = $7; + HEAP32[$8>>2] = $4; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = $6; + $11 = HEAP32[((480 + 20|0))>>2]|0; + HEAP32[$pArg>>2] = $11; + HEAP32[((480 + 16|0))>>2] = 0; + $12 = HEAP32[$xCallback>>2]|0; + $13 = HEAP32[$pArg>>2]|0; + $14 = $nowUsed; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$0>>2]|0; + FUNCTION_TABLE_viiii[$12 & 3]($13,$16,$19,$20); + $21 = HEAP32[$xCallback>>2]|0; + HEAP32[((480 + 16|0))>>2] = $21; + $22 = HEAP32[$pArg>>2]|0; + HEAP32[((480 + 20|0))>>2] = $22; + STACKTOP = sp;return; +} +function _keywordCode($z,$n) { + $z = $z|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $h = 0, $i = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $h = sp + 8|0; + $i = sp + 12|0; + HEAP32[$1>>2] = $z; + HEAP32[$2>>2] = $n; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)<(2); + if ($4) { + HEAP32[$0>>2] = 27; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); + } + $5 = HEAP32[$1>>2]|0; + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = (784 + ($7)|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = $10<<2; + $12 = HEAP32[$2>>2]|0; + $13 = (($12) - 1)|0; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + ($13)|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = (784 + ($17)|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = ($20*3)|0; + $22 = $11 ^ $21; + $23 = HEAP32[$2>>2]|0; + $24 = $22 ^ $23; + $25 = (($24|0) % 127)&-1; + HEAP32[$h>>2] = $25; + $26 = HEAP32[$h>>2]|0; + $27 = (2696 + ($26)|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = (($29) - 1)|0; + HEAP32[$i>>2] = $30; + while(1) { + $31 = HEAP32[$i>>2]|0; + $32 = ($31|0)>=(0); + if (!($32)) { + label = 9; + break; + } + $33 = HEAP32[$i>>2]|0; + $34 = (2952 + ($33)|0); + $35 = HEAP8[$34>>0]|0; + $36 = $35&255; + $37 = HEAP32[$2>>2]|0; + $38 = ($36|0)==($37|0); + if ($38) { + $39 = HEAP32[$i>>2]|0; + $40 = (3080 + ($39<<1)|0); + $41 = HEAP16[$40>>1]|0; + $42 = $41&65535; + $43 = (2136 + ($42)|0); + $44 = HEAP32[$1>>2]|0; + $45 = HEAP32[$2>>2]|0; + $46 = (_sqlite3_strnicmp($43,$44,$45)|0); + $47 = ($46|0)==(0); + if ($47) { + label = 7; + break; + } + } + $52 = HEAP32[$i>>2]|0; + $53 = (2824 + ($52)|0); + $54 = HEAP8[$53>>0]|0; + $55 = $54&255; + $56 = (($55) - 1)|0; + HEAP32[$i>>2] = $56; + } + if ((label|0) == 7) { + $48 = HEAP32[$i>>2]|0; + $49 = (3328 + ($48)|0); + $50 = HEAP8[$49>>0]|0; + $51 = $50&255; + HEAP32[$0>>2] = $51; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); + } + else if ((label|0) == 9) { + HEAP32[$0>>2] = 27; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); + } + return 0|0; +} +function _freeTempSpace($pBt) { + $pBt = $pBt|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pBt; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 80|0); + $3 = HEAP32[$2>>2]|0; + _sqlite3PageFree($3); + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 80|0); + HEAP32[$5>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3PagerSetPagesize($pPager,$pPageSize,$nReserve) { + $pPager = $pPager|0; + $pPageSize = $pPageSize|0; + $nReserve = $nReserve|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $nByte = 0, $pNew = 0, $pageSize = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp + 24|0; + $2 = sp + 8|0; + $rc = sp + 12|0; + $pageSize = sp + 16|0; + $pNew = sp + 20|0; + $nByte = sp; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $pPageSize; + HEAP32[$2>>2] = $nReserve; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$pageSize>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 15|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = ($8|0)==(0); + if ($9) { + label = 3; + } else { + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 24|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)==(0); + if ($13) { + label = 3; + } + } + if ((label|0) == 3) { + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 204|0); + $16 = HEAP32[$15>>2]|0; + $17 = (_sqlite3PcacheRefCount($16)|0); + $18 = ($17|0)==(0); + if ($18) { + $19 = HEAP32[$pageSize>>2]|0; + $20 = ($19|0)!=(0); + if ($20) { + $21 = HEAP32[$pageSize>>2]|0; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 152|0); + $24 = HEAP32[$23>>2]|0; + $25 = ($21|0)!=($24|0); + if ($25) { + HEAP32[$pNew>>2] = 0; + $26 = $nByte; + $27 = $26; + HEAP32[$27>>2] = 0; + $28 = (($26) + 4)|0; + $29 = $28; + HEAP32[$29>>2] = 0; + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 16|0); + $32 = HEAP8[$31>>0]|0; + $33 = $32&255; + $34 = ($33|0)>(0); + if ($34) { + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 60|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$37>>2]|0; + $39 = ($38|0)!=(0|0); + if ($39) { + $40 = HEAP32[$0>>2]|0; + $41 = (($40) + 60|0); + $42 = HEAP32[$41>>2]|0; + $43 = (_sqlite3OsFileSize($42,$nByte)|0); + HEAP32[$rc>>2] = $43; + } + } + $44 = HEAP32[$rc>>2]|0; + $45 = ($44|0)==(0); + if ($45) { + $46 = HEAP32[$pageSize>>2]|0; + $47 = (_sqlite3PageMalloc($46)|0); + HEAP32[$pNew>>2] = $47; + $48 = HEAP32[$pNew>>2]|0; + $49 = ($48|0)!=(0|0); + if (!($49)) { + HEAP32[$rc>>2] = 7; + } + } + $50 = HEAP32[$rc>>2]|0; + $51 = ($50|0)==(0); + if ($51) { + $52 = HEAP32[$0>>2]|0; + _pager_reset($52); + $53 = $nByte; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + $56 = (($53) + 4)|0; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = HEAP32[$pageSize>>2]|0; + $60 = (_i64Add(($55|0),($58|0),($59|0),0)|0); + $61 = tempRet0; + $62 = (_i64Subtract(($60|0),($61|0),1,0)|0); + $63 = tempRet0; + $64 = HEAP32[$pageSize>>2]|0; + $65 = (___divdi3(($62|0),($63|0),($64|0),0)|0); + $66 = tempRet0; + $67 = HEAP32[$0>>2]|0; + $68 = (($67) + 24|0); + HEAP32[$68>>2] = $65; + $69 = HEAP32[$pageSize>>2]|0; + $70 = HEAP32[$0>>2]|0; + $71 = (($70) + 152|0); + HEAP32[$71>>2] = $69; + $72 = HEAP32[$0>>2]|0; + $73 = (($72) + 200|0); + $74 = HEAP32[$73>>2]|0; + _sqlite3PageFree($74); + $75 = HEAP32[$pNew>>2]|0; + $76 = HEAP32[$0>>2]|0; + $77 = (($76) + 200|0); + HEAP32[$77>>2] = $75; + $78 = HEAP32[$0>>2]|0; + $79 = (($78) + 204|0); + $80 = HEAP32[$79>>2]|0; + $81 = HEAP32[$pageSize>>2]|0; + _sqlite3PcacheSetPageSize($80,$81); + } + } + } + } + } + $82 = HEAP32[$0>>2]|0; + $83 = (($82) + 152|0); + $84 = HEAP32[$83>>2]|0; + $85 = HEAP32[$1>>2]|0; + HEAP32[$85>>2] = $84; + $86 = HEAP32[$rc>>2]|0; + $87 = ($86|0)==(0); + if (!($87)) { + $99 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($99|0); + } + $88 = HEAP32[$2>>2]|0; + $89 = ($88|0)<(0); + if ($89) { + $90 = HEAP32[$0>>2]|0; + $91 = (($90) + 142|0); + $92 = HEAP16[$91>>1]|0; + $93 = $92 << 16 >> 16; + HEAP32[$2>>2] = $93; + } + $94 = HEAP32[$2>>2]|0; + $95 = $94&65535; + $96 = HEAP32[$0>>2]|0; + $97 = (($96) + 142|0); + HEAP16[$97>>1] = $95; + $98 = HEAP32[$0>>2]|0; + _pagerFixMaplimit($98); + $99 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($99|0); +} +function _sqlite3PcacheRefCount($pCache) { + $pCache = $pCache|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pCache; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 12|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _sqlite3OsFileSize($id,$pSize) { + $id = $id|0; + $pSize = $pSize|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $id; + HEAP32[$1>>2] = $pSize; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 24|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (FUNCTION_TABLE_iii[$5 & 127]($6,$7)|0); + STACKTOP = sp;return ($8|0); +} +function _sqlite3PageMalloc($sz) { + $sz = $sz|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $sz; + $1 = HEAP32[$0>>2]|0; + $2 = (_pcache1Alloc($1)|0); + STACKTOP = sp;return ($2|0); +} +function _pager_reset($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 88|0); + $3 = HEAP32[$2>>2]|0; + _sqlite3BackupRestart($3); + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 204|0); + $6 = HEAP32[$5>>2]|0; + _sqlite3PcacheClear($6); + STACKTOP = sp;return; +} +function _sqlite3PageFree($p) { + $p = $p|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + (_pcache1Free($1)|0); + STACKTOP = sp;return; +} +function _sqlite3PcacheSetPageSize($pCache,$szPage) { + $pCache = $pCache|0; + $szPage = $szPage|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pCache; + HEAP32[$1>>2] = $szPage; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 40|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = HEAP32[((45136 + 148|0))>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 40|0); + $9 = HEAP32[$8>>2]|0; + FUNCTION_TABLE_vi[$6 & 31]($9); + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 40|0); + HEAP32[$11>>2] = 0; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 44|0); + HEAP32[$13>>2] = 0; + } + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 20|0); + HEAP32[$16>>2] = $14; + STACKTOP = sp;return; +} +function _pagerFixMaplimit($pPager) { + $pPager = $pPager|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + STACKTOP = sp;return; +} +function _pcache1Free($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nFreed = 0, $pSlot = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $nFreed = sp + 4|0; + $pSlot = sp + 8|0; + HEAP32[$1>>2] = $p; + HEAP32[$nFreed>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0|0); + if ($3) { + HEAP32[$0>>2] = 0; + $26 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($26|0); + } + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[((3456 + 44|0))>>2]|0; + $6 = ($4>>>0)>=($5>>>0); + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[((3456 + 48|0))>>2]|0; + $9 = ($7>>>0)<($8>>>0); + if ($9) { + _sqlite3StatusAdd(1,-1); + $10 = HEAP32[$1>>2]|0; + HEAP32[$pSlot>>2] = $10; + $11 = HEAP32[((3456 + 56|0))>>2]|0; + $12 = HEAP32[$pSlot>>2]|0; + HEAP32[$12>>2] = $11; + $13 = HEAP32[$pSlot>>2]|0; + HEAP32[((3456 + 56|0))>>2] = $13; + $14 = HEAP32[((3456 + 60|0))>>2]|0; + $15 = (($14) + 1)|0; + HEAP32[((3456 + 60|0))>>2] = $15; + $16 = HEAP32[((3456 + 60|0))>>2]|0; + $17 = HEAP32[((3456 + 40|0))>>2]|0; + $18 = ($16|0)<($17|0); + $19 = $18&1; + HEAP32[((3456 + 64|0))>>2] = $19; + } else { + label = 6; + } + } else { + label = 6; + } + if ((label|0) == 6) { + $20 = HEAP32[$1>>2]|0; + $21 = (_sqlite3MallocSize($20)|0); + HEAP32[$nFreed>>2] = $21; + $22 = HEAP32[$nFreed>>2]|0; + $23 = (0 - ($22))|0; + _sqlite3StatusAdd(2,$23); + $24 = HEAP32[$1>>2]|0; + _sqlite3_free($24); + } + $25 = HEAP32[$nFreed>>2]|0; + HEAP32[$0>>2] = $25; + $26 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($26|0); +} +function _sqlite3BackupRestart($pBackup) { + $pBackup = $pBackup|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pBackup; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + while(1) { + $2 = HEAP32[$p>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + break; + } + $4 = HEAP32[$p>>2]|0; + $5 = (($4) + 16|0); + HEAP32[$5>>2] = 1; + $6 = HEAP32[$p>>2]|0; + $7 = (($6) + 44|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$p>>2] = $8; + } + STACKTOP = sp;return; +} +function _sqlite3PcacheClear($pCache) { + $pCache = $pCache|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pCache; + $1 = HEAP32[$0>>2]|0; + _sqlite3PcacheTruncate($1,0); + STACKTOP = sp;return; +} +function _sqlite3PcacheTruncate($pCache,$pgno) { + $pCache = $pCache|0; + $pgno = $pgno|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $p = 0, $pNext = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $p = sp + 4|0; + $pNext = sp + 8|0; + HEAP32[$0>>2] = $pCache; + HEAP32[$1>>2] = $pgno; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 40|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$p>>2] = $7; + while(1) { + $8 = HEAP32[$p>>2]|0; + $9 = ($8|0)!=(0|0); + if (!($9)) { + break; + } + $10 = HEAP32[$p>>2]|0; + $11 = (($10) + 32|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$pNext>>2] = $12; + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 20|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = ($15>>>0)>($16>>>0); + if ($17) { + $18 = HEAP32[$p>>2]|0; + _sqlite3PcacheMakeClean($18); + } + $19 = HEAP32[$pNext>>2]|0; + HEAP32[$p>>2] = $19; + } + $20 = HEAP32[$1>>2]|0; + $21 = ($20|0)==(0); + if ($21) { + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 44|0); + $24 = HEAP32[$23>>2]|0; + $25 = ($24|0)!=(0|0); + if ($25) { + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 44|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + 4|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 20|0); + $33 = HEAP32[$32>>2]|0; + _memset(($30|0),0,($33|0))|0; + HEAP32[$1>>2] = 1; + } + } + $34 = HEAP32[((45136 + 144|0))>>2]|0; + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 40|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 1)|0; + FUNCTION_TABLE_vii[$34 & 7]($37,$39); + STACKTOP = sp;return; +} +function _sqlite3PcacheMakeClean($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 24|0); + $3 = HEAP16[$2>>1]|0; + $4 = $3&65535; + $5 = $4 & 2; + $6 = ($5|0)!=(0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + _pcacheRemoveFromDirtyList($7); + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 24|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10&65535; + $12 = $11 & -7; + $13 = $12&65535; + HEAP16[$9>>1] = $13; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 26|0); + $16 = HEAP16[$15>>1]|0; + $17 = $16 << 16 >> 16; + $18 = ($17|0)==(0); + if (!($18)) { + STACKTOP = sp;return; + } + $19 = HEAP32[$0>>2]|0; + _pcacheUnpin($19); + STACKTOP = sp;return; +} +function _pcacheRemoveFromDirtyList($pPage) { + $pPage = $pPage|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pSynced = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $p = sp; + $pSynced = sp + 4|0; + HEAP32[$0>>2] = $pPage; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 28|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $3; + $4 = HEAP32[$p>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = ($6|0)==($7|0); + if ($8) { + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 36|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$pSynced>>2] = $11; + while(1) { + $12 = HEAP32[$pSynced>>2]|0; + $13 = ($12|0)!=(0|0); + if ($13) { + $14 = HEAP32[$pSynced>>2]|0; + $15 = (($14) + 24|0); + $16 = HEAP16[$15>>1]|0; + $17 = $16&65535; + $18 = $17 & 4; + $19 = ($18|0)!=(0); + $64 = $19; + } else { + $64 = 0; + } + $20 = HEAP32[$pSynced>>2]|0; + if (!($64)) { + break; + } + $21 = (($20) + 36|0); + $22 = HEAP32[$21>>2]|0; + HEAP32[$pSynced>>2] = $22; + } + $23 = HEAP32[$p>>2]|0; + $24 = (($23) + 8|0); + HEAP32[$24>>2] = $20; + } + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 32|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)!=(0|0); + $29 = HEAP32[$0>>2]|0; + $30 = (($29) + 36|0); + $31 = HEAP32[$30>>2]|0; + if ($28) { + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 32|0); + $34 = HEAP32[$33>>2]|0; + $35 = (($34) + 36|0); + HEAP32[$35>>2] = $31; + } else { + $36 = HEAP32[$p>>2]|0; + $37 = (($36) + 4|0); + HEAP32[$37>>2] = $31; + } + $38 = HEAP32[$0>>2]|0; + $39 = (($38) + 36|0); + $40 = HEAP32[$39>>2]|0; + $41 = ($40|0)!=(0|0); + $42 = HEAP32[$0>>2]|0; + $43 = (($42) + 32|0); + $44 = HEAP32[$43>>2]|0; + if ($41) { + $45 = HEAP32[$0>>2]|0; + $46 = (($45) + 36|0); + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + 32|0); + HEAP32[$48>>2] = $44; + } else { + $49 = HEAP32[$p>>2]|0; + HEAP32[$49>>2] = $44; + $50 = HEAP32[$p>>2]|0; + $51 = HEAP32[$50>>2]|0; + $52 = ($51|0)==(0|0); + if ($52) { + $53 = HEAP32[$p>>2]|0; + $54 = (($53) + 28|0); + $55 = HEAP8[$54>>0]|0; + $56 = $55&255; + $57 = ($56|0)!=(0); + if ($57) { + $58 = HEAP32[$p>>2]|0; + $59 = (($58) + 29|0); + HEAP8[$59>>0] = 2; + } + } + } + $60 = HEAP32[$0>>2]|0; + $61 = (($60) + 32|0); + HEAP32[$61>>2] = 0; + $62 = HEAP32[$0>>2]|0; + $63 = (($62) + 36|0); + HEAP32[$63>>2] = 0; + STACKTOP = sp;return; +} +function _pcacheUnpin($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $pCache = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pCache = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 28|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pCache>>2] = $3; + $4 = HEAP32[$pCache>>2]|0; + $5 = (($4) + 28|0); + $6 = HEAP8[$5>>0]|0; + $7 = ($6<<24>>24)!=(0); + if (!($7)) { + STACKTOP = sp;return; + } + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 20|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)==(1); + if ($11) { + $12 = HEAP32[$pCache>>2]|0; + $13 = (($12) + 44|0); + HEAP32[$13>>2] = 0; + } + $14 = HEAP32[((45136 + 136|0))>>2]|0; + $15 = HEAP32[$pCache>>2]|0; + $16 = (($15) + 40|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$18>>2]|0; + FUNCTION_TABLE_viii[$14 & 63]($17,$19,0); + STACKTOP = sp;return; +} +function _pcache1Alloc($nByte) { + $nByte = $nByte|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $sz = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $p = sp; + $sz = sp + 4|0; + HEAP32[$0>>2] = $nByte; + HEAP32[$p>>2] = 0; + $1 = HEAP32[$0>>2]|0; + _sqlite3StatusSet(7,$1); + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[((3456 + 32|0))>>2]|0; + $4 = ($2|0)<=($3|0); + if ($4) { + $5 = HEAP32[((3456 + 56|0))>>2]|0; + HEAP32[$p>>2] = $5; + $6 = HEAP32[$p>>2]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = HEAP32[((3456 + 56|0))>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[((3456 + 56|0))>>2] = $9; + $10 = HEAP32[((3456 + 60|0))>>2]|0; + $11 = (($10) + -1)|0; + HEAP32[((3456 + 60|0))>>2] = $11; + $12 = HEAP32[((3456 + 60|0))>>2]|0; + $13 = HEAP32[((3456 + 40|0))>>2]|0; + $14 = ($12|0)<($13|0); + $15 = $14&1; + HEAP32[((3456 + 64|0))>>2] = $15; + _sqlite3StatusAdd(1,1); + } + } + $16 = HEAP32[$p>>2]|0; + $17 = ($16|0)==(0|0); + if (!($17)) { + $25 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($25|0); + } + $18 = HEAP32[$0>>2]|0; + $19 = (_sqlite3Malloc($18)|0); + HEAP32[$p>>2] = $19; + $20 = HEAP32[$p>>2]|0; + $21 = ($20|0)!=(0|0); + if (!($21)) { + $25 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($25|0); + } + $22 = HEAP32[$p>>2]|0; + $23 = (_sqlite3MallocSize($22)|0); + HEAP32[$sz>>2] = $23; + $24 = HEAP32[$sz>>2]|0; + _sqlite3StatusAdd(2,$24); + $25 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($25|0); +} +function _sqlite3BitvecCreate($iSize) { + $iSize = $iSize|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $iSize; + $1 = (_sqlite3MallocZero(512)|0); + HEAP32[$p>>2] = $1; + $2 = HEAP32[$p>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $6 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($6|0); + } + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$p>>2]|0; + HEAP32[$5>>2] = $4; + $6 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($6|0); +} +function _sqlite3BitvecSet($p,$i) { + $p = $p|0; + $i = $i|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; + var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; + var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aiValues = 0, $bin = 0, $h = 0, $j = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $h = sp + 8|0; + $bin = sp + 12|0; + $j = sp + 16|0; + $rc = sp + 20|0; + $aiValues = sp + 24|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $i; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + HEAP32[$0>>2] = 0; + $144 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($144|0); + } + $5 = HEAP32[$2>>2]|0; + $6 = (($5) + -1)|0; + HEAP32[$2>>2] = $6; + while(1) { + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = ($8>>>0)>(4000); + if (!($9)) { + break; + } + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 8|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)!=(0); + if (!($13)) { + break; + } + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 8|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($14>>>0) / ($17>>>0))&-1; + HEAP32[$bin>>2] = $18; + $19 = HEAP32[$2>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 8|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($19>>>0) % ($22>>>0))&-1; + HEAP32[$2>>2] = $23; + $24 = HEAP32[$bin>>2]|0; + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 12|0); + $27 = (($26) + ($24<<2)|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)==(0|0); + if ($29) { + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 8|0); + $32 = HEAP32[$31>>2]|0; + $33 = (_sqlite3BitvecCreate($32)|0); + $34 = HEAP32[$bin>>2]|0; + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 12|0); + $37 = (($36) + ($34<<2)|0); + HEAP32[$37>>2] = $33; + $38 = HEAP32[$bin>>2]|0; + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 12|0); + $41 = (($40) + ($38<<2)|0); + $42 = HEAP32[$41>>2]|0; + $43 = ($42|0)==(0|0); + if ($43) { + label = 8; + break; + } + } + $44 = HEAP32[$bin>>2]|0; + $45 = HEAP32[$1>>2]|0; + $46 = (($45) + 12|0); + $47 = (($46) + ($44<<2)|0); + $48 = HEAP32[$47>>2]|0; + HEAP32[$1>>2] = $48; + } + if ((label|0) == 8) { + HEAP32[$0>>2] = 7; + $144 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($144|0); + } + $49 = HEAP32[$1>>2]|0; + $50 = HEAP32[$49>>2]|0; + $51 = ($50>>>0)<=(4000); + $52 = HEAP32[$2>>2]|0; + if ($51) { + $53 = $52 & 7; + $54 = 1 << $53; + $55 = HEAP32[$2>>2]|0; + $56 = (($55>>>0) / 8)&-1; + $57 = HEAP32[$1>>2]|0; + $58 = (($57) + 12|0); + $59 = (($58) + ($56)|0); + $60 = HEAP8[$59>>0]|0; + $61 = $60&255; + $62 = $61 | $54; + $63 = $62&255; + HEAP8[$59>>0] = $63; + HEAP32[$0>>2] = 0; + $144 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($144|0); + } + $64 = (($52) + 1)|0; + HEAP32[$2>>2] = $64; + $65 = $52; + $66 = (($65>>>0) % 125)&-1; + HEAP32[$h>>2] = $66; + $67 = HEAP32[$h>>2]|0; + $68 = HEAP32[$1>>2]|0; + $69 = (($68) + 12|0); + $70 = (($69) + ($67<<2)|0); + $71 = HEAP32[$70>>2]|0; + $72 = ($71|0)!=(0); + L20: do { + if ($72) { + while(1) { + $77 = HEAP32[$h>>2]|0; + $78 = HEAP32[$1>>2]|0; + $79 = (($78) + 12|0); + $80 = (($79) + ($77<<2)|0); + $81 = HEAP32[$80>>2]|0; + $82 = HEAP32[$2>>2]|0; + $83 = ($81|0)==($82|0); + if ($83) { + break; + } + $84 = HEAP32[$h>>2]|0; + $85 = (($84) + 1)|0; + HEAP32[$h>>2] = $85; + $86 = HEAP32[$h>>2]|0; + $87 = ($86>>>0)>=(125); + $$ = $87 ? 0 : $85; + HEAP32[$h>>2] = $$; + $88 = HEAP32[$h>>2]|0; + $89 = HEAP32[$1>>2]|0; + $90 = (($89) + 12|0); + $91 = (($90) + ($88<<2)|0); + $92 = HEAP32[$91>>2]|0; + $93 = ($92|0)!=(0); + if (!($93)) { + label = 17; + break L20; + } + } + HEAP32[$0>>2] = 0; + $144 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($144|0); + } else { + $73 = HEAP32[$1>>2]|0; + $74 = (($73) + 4|0); + $75 = HEAP32[$74>>2]|0; + $76 = ($75>>>0)<(124); + if (!($76)) { + label = 17; + } + } + } while(0); + if ((label|0) == 17) { + $94 = HEAP32[$1>>2]|0; + $95 = (($94) + 4|0); + $96 = HEAP32[$95>>2]|0; + $97 = ($96>>>0)>=(62); + if ($97) { + $98 = (_sqlite3DbMallocRaw(0,500)|0); + HEAP32[$aiValues>>2] = $98; + $99 = HEAP32[$aiValues>>2]|0; + $100 = ($99|0)==(0|0); + if ($100) { + HEAP32[$0>>2] = 7; + $144 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($144|0); + } + $101 = HEAP32[$aiValues>>2]|0; + $102 = HEAP32[$1>>2]|0; + $103 = (($102) + 12|0); + _memcpy(($101|0),($103|0),500)|0; + $104 = HEAP32[$1>>2]|0; + $105 = (($104) + 12|0); + _memset(($105|0),0,500)|0; + $106 = HEAP32[$1>>2]|0; + $107 = HEAP32[$106>>2]|0; + $108 = (($107) + 125)|0; + $109 = (($108) - 1)|0; + $110 = (($109>>>0) / 125)&-1; + $111 = HEAP32[$1>>2]|0; + $112 = (($111) + 8|0); + HEAP32[$112>>2] = $110; + $113 = HEAP32[$1>>2]|0; + $114 = HEAP32[$2>>2]|0; + $115 = (_sqlite3BitvecSet($113,$114)|0); + HEAP32[$rc>>2] = $115; + HEAP32[$j>>2] = 0; + while(1) { + $116 = HEAP32[$j>>2]|0; + $117 = ($116>>>0)<(125); + if (!($117)) { + break; + } + $118 = HEAP32[$j>>2]|0; + $119 = HEAP32[$aiValues>>2]|0; + $120 = (($119) + ($118<<2)|0); + $121 = HEAP32[$120>>2]|0; + $122 = ($121|0)!=(0); + if ($122) { + $123 = HEAP32[$1>>2]|0; + $124 = HEAP32[$j>>2]|0; + $125 = HEAP32[$aiValues>>2]|0; + $126 = (($125) + ($124<<2)|0); + $127 = HEAP32[$126>>2]|0; + $128 = (_sqlite3BitvecSet($123,$127)|0); + $129 = HEAP32[$rc>>2]|0; + $130 = $129 | $128; + HEAP32[$rc>>2] = $130; + } + $131 = HEAP32[$j>>2]|0; + $132 = (($131) + 1)|0; + HEAP32[$j>>2] = $132; + } + $133 = HEAP32[$aiValues>>2]|0; + _sqlite3DbFree(0,$133); + $134 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $134; + $144 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($144|0); + } + } + $135 = HEAP32[$1>>2]|0; + $136 = (($135) + 4|0); + $137 = HEAP32[$136>>2]|0; + $138 = (($137) + 1)|0; + HEAP32[$136>>2] = $138; + $139 = HEAP32[$2>>2]|0; + $140 = HEAP32[$h>>2]|0; + $141 = HEAP32[$1>>2]|0; + $142 = (($141) + 12|0); + $143 = (($142) + ($140<<2)|0); + HEAP32[$143>>2] = $139; + HEAP32[$0>>2] = 0; + $144 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($144|0); +} +function _sqlite3BitvecClear($p,$i,$pBuf) { + $p = $p|0; + $i = $i|0; + $pBuf = $pBuf|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $aiValues = 0, $bin = 0; + var $h = 0, $j = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $bin = sp + 8|0; + $j = sp + 12|0; + $aiValues = sp + 16|0; + $h = sp + 20|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $i; + HEAP32[$2>>2] = $pBuf; + $3 = HEAP32[$0>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + STACKTOP = sp;return; + } + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + -1)|0; + HEAP32[$1>>2] = $6; + while(1) { + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 8|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0); + if (!($10)) { + break; + } + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 8|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($11>>>0) / ($14>>>0))&-1; + HEAP32[$bin>>2] = $15; + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 8|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($16>>>0) % ($19>>>0))&-1; + HEAP32[$1>>2] = $20; + $21 = HEAP32[$bin>>2]|0; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 12|0); + $24 = (($23) + ($21<<2)|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$0>>2] = $25; + $26 = HEAP32[$0>>2]|0; + $27 = ($26|0)!=(0|0); + if (!($27)) { + label = 16; + break; + } + } + if ((label|0) == 16) { + STACKTOP = sp;return; + } + $28 = HEAP32[$0>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = ($29>>>0)<=(4000); + if ($30) { + $31 = HEAP32[$1>>2]|0; + $32 = $31 & 7; + $33 = 1 << $32; + $34 = $33 ^ -1; + $35 = HEAP32[$1>>2]|0; + $36 = (($35>>>0) / 8)&-1; + $37 = HEAP32[$0>>2]|0; + $38 = (($37) + 12|0); + $39 = (($38) + ($36)|0); + $40 = HEAP8[$39>>0]|0; + $41 = $40&255; + $42 = $41 & $34; + $43 = $42&255; + HEAP8[$39>>0] = $43; + STACKTOP = sp;return; + } + $44 = HEAP32[$2>>2]|0; + HEAP32[$aiValues>>2] = $44; + $45 = HEAP32[$aiValues>>2]|0; + $46 = HEAP32[$0>>2]|0; + $47 = (($46) + 12|0); + _memcpy(($45|0),($47|0),500)|0; + $48 = HEAP32[$0>>2]|0; + $49 = (($48) + 12|0); + _memset(($49|0),0,500)|0; + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 4|0); + HEAP32[$51>>2] = 0; + HEAP32[$j>>2] = 0; + while(1) { + $52 = HEAP32[$j>>2]|0; + $53 = ($52>>>0)<(125); + if (!($53)) { + break; + } + $54 = HEAP32[$j>>2]|0; + $55 = HEAP32[$aiValues>>2]|0; + $56 = (($55) + ($54<<2)|0); + $57 = HEAP32[$56>>2]|0; + $58 = ($57|0)!=(0); + if ($58) { + $59 = HEAP32[$j>>2]|0; + $60 = HEAP32[$aiValues>>2]|0; + $61 = (($60) + ($59<<2)|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + 1)|0; + $65 = ($62|0)!=($64|0); + if ($65) { + $66 = HEAP32[$j>>2]|0; + $67 = HEAP32[$aiValues>>2]|0; + $68 = (($67) + ($66<<2)|0); + $69 = HEAP32[$68>>2]|0; + $70 = (($69) - 1)|0; + $71 = $70; + $72 = (($71>>>0) % 125)&-1; + HEAP32[$h>>2] = $72; + $73 = HEAP32[$0>>2]|0; + $74 = (($73) + 4|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($75) + 1)|0; + HEAP32[$74>>2] = $76; + while(1) { + $77 = HEAP32[$h>>2]|0; + $78 = HEAP32[$0>>2]|0; + $79 = (($78) + 12|0); + $80 = (($79) + ($77<<2)|0); + $81 = HEAP32[$80>>2]|0; + $82 = ($81|0)!=(0); + if (!($82)) { + break; + } + $83 = HEAP32[$h>>2]|0; + $84 = (($83) + 1)|0; + HEAP32[$h>>2] = $84; + $85 = HEAP32[$h>>2]|0; + $86 = ($85>>>0)>=(125); + $$ = $86 ? 0 : $84; + HEAP32[$h>>2] = $$; + } + $87 = HEAP32[$j>>2]|0; + $88 = HEAP32[$aiValues>>2]|0; + $89 = (($88) + ($87<<2)|0); + $90 = HEAP32[$89>>2]|0; + $91 = HEAP32[$h>>2]|0; + $92 = HEAP32[$0>>2]|0; + $93 = (($92) + 12|0); + $94 = (($93) + ($91<<2)|0); + HEAP32[$94>>2] = $90; + } + } + $95 = HEAP32[$j>>2]|0; + $96 = (($95) + 1)|0; + HEAP32[$j>>2] = $96; + } + STACKTOP = sp;return; +} +function _sqlite3BitvecTest($p,$i) { + $p = $p|0; + $i = $i|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $bin = 0, $h = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $bin = sp + 8|0; + $h = sp + 12|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $i; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + HEAP32[$0>>2] = 0; + $69 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($69|0); + } + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = ($5>>>0)>($7>>>0); + $9 = HEAP32[$2>>2]|0; + $10 = ($9|0)==(0); + $or$cond = $8 | $10; + if ($or$cond) { + HEAP32[$0>>2] = 0; + $69 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($69|0); + } + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + -1)|0; + HEAP32[$2>>2] = $12; + while(1) { + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 8|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0); + if (!($16)) { + break; + } + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 8|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($17>>>0) / ($20>>>0))&-1; + HEAP32[$bin>>2] = $21; + $22 = HEAP32[$2>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 8|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($22>>>0) % ($25>>>0))&-1; + HEAP32[$2>>2] = $26; + $27 = HEAP32[$bin>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 12|0); + $30 = (($29) + ($27<<2)|0); + $31 = HEAP32[$30>>2]|0; + HEAP32[$1>>2] = $31; + $32 = HEAP32[$1>>2]|0; + $33 = ($32|0)!=(0|0); + if (!($33)) { + label = 8; + break; + } + } + if ((label|0) == 8) { + HEAP32[$0>>2] = 0; + $69 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($69|0); + } + $34 = HEAP32[$1>>2]|0; + $35 = HEAP32[$34>>2]|0; + $36 = ($35>>>0)<=(4000); + $37 = HEAP32[$2>>2]|0; + if ($36) { + $38 = (($37>>>0) / 8)&-1; + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 12|0); + $41 = (($40) + ($38)|0); + $42 = HEAP8[$41>>0]|0; + $43 = $42&255; + $44 = HEAP32[$2>>2]|0; + $45 = $44 & 7; + $46 = 1 << $45; + $47 = $43 & $46; + $48 = ($47|0)!=(0); + $49 = $48&1; + HEAP32[$0>>2] = $49; + $69 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($69|0); + } + $50 = (($37) + 1)|0; + HEAP32[$2>>2] = $50; + $51 = $37; + $52 = (($51>>>0) % 125)&-1; + HEAP32[$h>>2] = $52; + while(1) { + $53 = HEAP32[$h>>2]|0; + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 12|0); + $56 = (($55) + ($53<<2)|0); + $57 = HEAP32[$56>>2]|0; + $58 = ($57|0)!=(0); + if (!($58)) { + label = 16; + break; + } + $59 = HEAP32[$h>>2]|0; + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 12|0); + $62 = (($61) + ($59<<2)|0); + $63 = HEAP32[$62>>2]|0; + $64 = HEAP32[$2>>2]|0; + $65 = ($63|0)==($64|0); + if ($65) { + label = 14; + break; + } + $66 = HEAP32[$h>>2]|0; + $67 = (($66) + 1)|0; + $68 = (($67>>>0) % 125)&-1; + HEAP32[$h>>2] = $68; + } + if ((label|0) == 14) { + HEAP32[$0>>2] = 1; + $69 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($69|0); + } + else if ((label|0) == 16) { + HEAP32[$0>>2] = 0; + $69 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($69|0); + } + return 0|0; +} +function _sqlite3BitvecSize($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + STACKTOP = sp;return ($2|0); +} +function _sqlite3BitvecDestroy($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $i = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)==(0|0); + if ($2) { + STACKTOP = sp;return; + } + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0); + L4: do { + if ($6) { + HEAP32[$i>>2] = 0; + while(1) { + $7 = HEAP32[$i>>2]|0; + $8 = ($7>>>0)<(125); + if (!($8)) { + break L4; + } + $9 = HEAP32[$i>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 12|0); + $12 = (($11) + ($9<<2)|0); + $13 = HEAP32[$12>>2]|0; + _sqlite3BitvecDestroy($13); + $14 = HEAP32[$i>>2]|0; + $15 = (($14) + 1)|0; + HEAP32[$i>>2] = $15; + } + } + } while(0); + $16 = HEAP32[$0>>2]|0; + _sqlite3_free($16); + STACKTOP = sp;return; +} +function _sqlite3FindCollSeq($db,$enc,$zName,$create) { + $db = $db|0; + $enc = $enc|0; + $zName = $zName|0; + $create = $create|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $pColl = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 12|0; + $1 = sp + 16|0; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pColl = sp; + HEAP32[$0>>2] = $db; + HEAP8[$1>>0] = $enc; + HEAP32[$2>>2] = $zName; + HEAP32[$3>>2] = $create; + $4 = HEAP32[$2>>2]|0; + $5 = ($4|0)!=(0|0); + $6 = HEAP32[$0>>2]|0; + if ($5) { + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$3>>2]|0; + $9 = (_findCollSeqEntry($6,$7,$8)|0); + HEAP32[$pColl>>2] = $9; + } else { + $10 = (($6) + 8|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$pColl>>2] = $11; + } + $12 = HEAP32[$pColl>>2]|0; + $13 = ($12|0)!=(0|0); + if (!($13)) { + $19 = HEAP32[$pColl>>2]|0; + STACKTOP = sp;return ($19|0); + } + $14 = HEAP8[$1>>0]|0; + $15 = $14&255; + $16 = (($15) - 1)|0; + $17 = HEAP32[$pColl>>2]|0; + $18 = (($17) + (($16*20)|0)|0); + HEAP32[$pColl>>2] = $18; + $19 = HEAP32[$pColl>>2]|0; + STACKTOP = sp;return ($19|0); +} +function _invalidateCachedKeyInfo($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iDb = 0, $k = 0, $pDb = 0; + var $pIdx = 0, $pTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $pDb = sp; + $iDb = sp + 4|0; + $k = sp + 8|0; + $pTab = sp + 12|0; + $pIdx = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$iDb>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 16|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pDb>>2] = $3; + while(1) { + $4 = HEAP32[$iDb>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 20|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($4|0)<($7|0); + if (!($8)) { + break; + } + $9 = HEAP32[$pDb>>2]|0; + $10 = (($9) + 4|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)==(0|0); + L4: do { + if (!($12)) { + $13 = HEAP32[$pDb>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + _sqlite3BtreeEnter($15); + $16 = HEAP32[$pDb>>2]|0; + $17 = (($16) + 12|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + 8|0); + $20 = (($19) + 8|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$k>>2] = $21; + while(1) { + $22 = HEAP32[$k>>2]|0; + $23 = ($22|0)!=(0|0); + if (!($23)) { + break L4; + } + $24 = HEAP32[$k>>2]|0; + $25 = (($24) + 8|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$pTab>>2] = $26; + $27 = HEAP32[$pTab>>2]|0; + $28 = (($27) + 8|0); + $29 = HEAP32[$28>>2]|0; + HEAP32[$pIdx>>2] = $29; + while(1) { + $30 = HEAP32[$pIdx>>2]|0; + $31 = ($30|0)!=(0|0); + if (!($31)) { + break; + } + $32 = HEAP32[$pIdx>>2]|0; + $33 = (($32) + 40|0); + $34 = HEAP32[$33>>2]|0; + $35 = ($34|0)!=(0|0); + if ($35) { + $36 = HEAP32[$pIdx>>2]|0; + $37 = (($36) + 40|0); + $38 = HEAP32[$37>>2]|0; + $39 = (($38) + 12|0); + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$0>>2]|0; + $42 = ($40|0)==($41|0); + if ($42) { + $43 = HEAP32[$pIdx>>2]|0; + $44 = (($43) + 40|0); + $45 = HEAP32[$44>>2]|0; + _sqlite3KeyInfoUnref($45); + $46 = HEAP32[$pIdx>>2]|0; + $47 = (($46) + 40|0); + HEAP32[$47>>2] = 0; + } + } + $48 = HEAP32[$pIdx>>2]|0; + $49 = (($48) + 20|0); + $50 = HEAP32[$49>>2]|0; + HEAP32[$pIdx>>2] = $50; + } + $51 = HEAP32[$k>>2]|0; + $52 = HEAP32[$51>>2]|0; + HEAP32[$k>>2] = $52; + } + } + } while(0); + $53 = HEAP32[$iDb>>2]|0; + $54 = (($53) + 1)|0; + HEAP32[$iDb>>2] = $54; + $55 = HEAP32[$pDb>>2]|0; + $56 = (($55) + 16|0); + HEAP32[$pDb>>2] = $56; + } + STACKTOP = sp;return; +} +function _sqlite3HashFind($pH,$pKey,$nKey) { + $pH = $pH|0; + $pKey = $pKey|0; + $nKey = $nKey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $elem = 0, $h = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $elem = sp + 8|0; + $h = sp + 12|0; + HEAP32[$0>>2] = $pH; + HEAP32[$1>>2] = $pKey; + HEAP32[$2>>2] = $nKey; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = (_strHash($7,$8)|0); + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = (($9>>>0) % ($11>>>0))&-1; + HEAP32[$h>>2] = $12; + } else { + HEAP32[$h>>2] = 0; + } + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$h>>2]|0; + $17 = (_findElementGivenHash($13,$14,$15,$16)|0); + HEAP32[$elem>>2] = $17; + $18 = HEAP32[$elem>>2]|0; + $19 = ($18|0)!=(0|0); + if (!($19)) { + $23 = 0; + STACKTOP = sp;return ($23|0); + } + $20 = HEAP32[$elem>>2]|0; + $21 = (($20) + 8|0); + $22 = HEAP32[$21>>2]|0; + $23 = $22; + STACKTOP = sp;return ($23|0); +} +function _strHash($z,$nKey) { + $z = $z|0; + $nKey = $nKey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $h = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $h = sp + 4|0; + HEAP32[$0>>2] = $z; + HEAP32[$1>>2] = $nKey; + HEAP32[$h>>2] = 0; + while(1) { + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)>(0); + $4 = HEAP32[$h>>2]|0; + if (!($3)) { + break; + } + $5 = $4 << 3; + $6 = HEAP32[$h>>2]|0; + $7 = $5 ^ $6; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 1|0); + HEAP32[$0>>2] = $9; + $10 = HEAP8[$8>>0]|0; + $11 = $10&255; + $12 = (784 + ($11)|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = $7 ^ $14; + HEAP32[$h>>2] = $15; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + -1)|0; + HEAP32[$1>>2] = $17; + } + STACKTOP = sp;return ($4|0); +} +function _findElementGivenHash($pH,$pKey,$nKey,$h) { + $pH = $pH|0; + $pKey = $pKey|0; + $nKey = $nKey|0; + $h = $h|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $count = 0, $elem = 0, $pEntry = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $elem = sp + 16|0; + $count = sp + 20|0; + $pEntry = sp + 24|0; + HEAP32[$1>>2] = $pH; + HEAP32[$2>>2] = $pKey; + HEAP32[$3>>2] = $nKey; + HEAP32[$4>>2] = $h; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 12|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = HEAP32[$4>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 12|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + ($9<<3)|0); + HEAP32[$pEntry>>2] = $13; + $14 = HEAP32[$pEntry>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$elem>>2] = $16; + $17 = HEAP32[$pEntry>>2]|0; + $18 = HEAP32[$17>>2]|0; + HEAP32[$count>>2] = $18; + } else { + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 8|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$elem>>2] = $21; + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 4|0); + $24 = HEAP32[$23>>2]|0; + HEAP32[$count>>2] = $24; + } + while(1) { + $25 = HEAP32[$count>>2]|0; + $26 = (($25) + -1)|0; + HEAP32[$count>>2] = $26; + $27 = ($25|0)!=(0); + if (!($27)) { + label = 10; + break; + } + $28 = HEAP32[$elem>>2]|0; + $29 = ($28|0)!=(0|0); + if (!($29)) { + label = 10; + break; + } + $30 = HEAP32[$elem>>2]|0; + $31 = (($30) + 16|0); + $32 = HEAP32[$31>>2]|0; + $33 = HEAP32[$3>>2]|0; + $34 = ($32|0)==($33|0); + if ($34) { + $35 = HEAP32[$elem>>2]|0; + $36 = (($35) + 12|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$2>>2]|0; + $39 = HEAP32[$3>>2]|0; + $40 = (_sqlite3_strnicmp($37,$38,$39)|0); + $41 = ($40|0)==(0); + if ($41) { + label = 8; + break; + } + } + $43 = HEAP32[$elem>>2]|0; + $44 = HEAP32[$43>>2]|0; + HEAP32[$elem>>2] = $44; + } + if ((label|0) == 8) { + $42 = HEAP32[$elem>>2]|0; + HEAP32[$0>>2] = $42; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); + } + else if ((label|0) == 10) { + HEAP32[$0>>2] = 0; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); + } + return 0|0; +} +function _sqlite3KeyInfoUnref($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + -1)|0; + HEAP32[$3>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)==(0); + if (!($8)) { + STACKTOP = sp;return; + } + $9 = HEAP32[$0>>2]|0; + _sqlite3DbFree(0,$9); + STACKTOP = sp;return; +} +function _findCollSeqEntry($db,$zName,$create) { + $db = $db|0; + $zName = $zName|0; + $create = $create|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0; + var $8 = 0, $9 = 0, $nName = 0, $pColl = 0, $pDel = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $pColl = sp + 8|0; + $nName = sp + 12|0; + $pDel = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zName; + HEAP32[$2>>2] = $create; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3Strlen30($3)|0); + HEAP32[$nName>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 420|0); + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$nName>>2]|0; + $9 = (_sqlite3HashFind($6,$7,$8)|0); + HEAP32[$pColl>>2] = $9; + $10 = HEAP32[$pColl>>2]|0; + $11 = (0|0)==($10|0); + if (!($11)) { + $61 = HEAP32[$pColl>>2]|0; + STACKTOP = sp;return ($61|0); + } + $12 = HEAP32[$2>>2]|0; + $13 = ($12|0)!=(0); + if (!($13)) { + $61 = HEAP32[$pColl>>2]|0; + STACKTOP = sp;return ($61|0); + } + $14 = HEAP32[$0>>2]|0; + $15 = HEAP32[$nName>>2]|0; + $16 = (60 + ($15))|0; + $17 = (($16) + 1)|0; + $18 = (_sqlite3DbMallocZero($14,$17)|0); + HEAP32[$pColl>>2] = $18; + $19 = HEAP32[$pColl>>2]|0; + $20 = ($19|0)!=(0|0); + if (!($20)) { + $61 = HEAP32[$pColl>>2]|0; + STACKTOP = sp;return ($61|0); + } + HEAP32[$pDel>>2] = 0; + $21 = HEAP32[$pColl>>2]|0; + $22 = (($21) + 60|0); + $23 = HEAP32[$pColl>>2]|0; + HEAP32[$23>>2] = $22; + $24 = HEAP32[$pColl>>2]|0; + $25 = (($24) + 4|0); + HEAP8[$25>>0] = 1; + $26 = HEAP32[$pColl>>2]|0; + $27 = (($26) + 60|0); + $28 = HEAP32[$pColl>>2]|0; + $29 = (($28) + 20|0); + HEAP32[$29>>2] = $27; + $30 = HEAP32[$pColl>>2]|0; + $31 = (($30) + 20|0); + $32 = (($31) + 4|0); + HEAP8[$32>>0] = 2; + $33 = HEAP32[$pColl>>2]|0; + $34 = (($33) + 60|0); + $35 = HEAP32[$pColl>>2]|0; + $36 = (($35) + 40|0); + HEAP32[$36>>2] = $34; + $37 = HEAP32[$pColl>>2]|0; + $38 = (($37) + 40|0); + $39 = (($38) + 4|0); + HEAP8[$39>>0] = 3; + $40 = HEAP32[$pColl>>2]|0; + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$1>>2]|0; + $43 = HEAP32[$nName>>2]|0; + _memcpy(($41|0),($42|0),($43|0))|0; + $44 = HEAP32[$nName>>2]|0; + $45 = HEAP32[$pColl>>2]|0; + $46 = HEAP32[$45>>2]|0; + $47 = (($46) + ($44)|0); + HEAP8[$47>>0] = 0; + $48 = HEAP32[$0>>2]|0; + $49 = (($48) + 420|0); + $50 = HEAP32[$pColl>>2]|0; + $51 = HEAP32[$50>>2]|0; + $52 = HEAP32[$nName>>2]|0; + $53 = HEAP32[$pColl>>2]|0; + $54 = (_sqlite3HashInsert($49,$51,$52,$53)|0); + HEAP32[$pDel>>2] = $54; + $55 = HEAP32[$pDel>>2]|0; + $56 = ($55|0)!=(0|0); + if (!($56)) { + $61 = HEAP32[$pColl>>2]|0; + STACKTOP = sp;return ($61|0); + } + $57 = HEAP32[$0>>2]|0; + $58 = (($57) + 64|0); + HEAP8[$58>>0] = 1; + $59 = HEAP32[$0>>2]|0; + $60 = HEAP32[$pDel>>2]|0; + _sqlite3DbFree($59,$60); + HEAP32[$pColl>>2] = 0; + $61 = HEAP32[$pColl>>2]|0; + STACKTOP = sp;return ($61|0); +} +function _sqlite3HashInsert($pH,$pKey,$nKey,$data) { + $pH = $pH|0; + $pKey = $pKey|0; + $nKey = $nKey|0; + $data = $data|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $elem = 0, $h = 0, $new_elem = 0, $old_data = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $4 = sp + 16|0; + $h = sp + 8|0; + $elem = sp + 4|0; + $new_elem = sp; + $old_data = sp + 12|0; + HEAP32[$1>>2] = $pH; + HEAP32[$2>>2] = $pKey; + HEAP32[$3>>2] = $nKey; + HEAP32[$4>>2] = $data; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0); + if ($7) { + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$3>>2]|0; + $10 = (_strHash($8,$9)|0); + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = (($10>>>0) % ($12>>>0))&-1; + HEAP32[$h>>2] = $13; + } else { + HEAP32[$h>>2] = 0; + } + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$3>>2]|0; + $17 = HEAP32[$h>>2]|0; + $18 = (_findElementGivenHash($14,$15,$16,$17)|0); + HEAP32[$elem>>2] = $18; + $19 = HEAP32[$elem>>2]|0; + $20 = ($19|0)!=(0|0); + if ($20) { + $21 = HEAP32[$elem>>2]|0; + $22 = (($21) + 8|0); + $23 = HEAP32[$22>>2]|0; + HEAP32[$old_data>>2] = $23; + $24 = HEAP32[$4>>2]|0; + $25 = ($24|0)==(0|0); + if ($25) { + $26 = HEAP32[$1>>2]|0; + $27 = HEAP32[$elem>>2]|0; + $28 = HEAP32[$h>>2]|0; + _removeElementGivenHash($26,$27,$28); + } else { + $29 = HEAP32[$4>>2]|0; + $30 = HEAP32[$elem>>2]|0; + $31 = (($30) + 8|0); + HEAP32[$31>>2] = $29; + $32 = HEAP32[$2>>2]|0; + $33 = HEAP32[$elem>>2]|0; + $34 = (($33) + 12|0); + HEAP32[$34>>2] = $32; + } + $35 = HEAP32[$old_data>>2]|0; + HEAP32[$0>>2] = $35; + $91 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($91|0); + } + $36 = HEAP32[$4>>2]|0; + $37 = ($36|0)==(0|0); + if ($37) { + HEAP32[$0>>2] = 0; + $91 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($91|0); + } + $38 = (_sqlite3Malloc(20)|0); + HEAP32[$new_elem>>2] = $38; + $39 = HEAP32[$new_elem>>2]|0; + $40 = ($39|0)==(0|0); + if ($40) { + $41 = HEAP32[$4>>2]|0; + HEAP32[$0>>2] = $41; + $91 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($91|0); + } + $42 = HEAP32[$2>>2]|0; + $43 = HEAP32[$new_elem>>2]|0; + $44 = (($43) + 12|0); + HEAP32[$44>>2] = $42; + $45 = HEAP32[$3>>2]|0; + $46 = HEAP32[$new_elem>>2]|0; + $47 = (($46) + 16|0); + HEAP32[$47>>2] = $45; + $48 = HEAP32[$4>>2]|0; + $49 = HEAP32[$new_elem>>2]|0; + $50 = (($49) + 8|0); + HEAP32[$50>>2] = $48; + $51 = HEAP32[$1>>2]|0; + $52 = (($51) + 4|0); + $53 = HEAP32[$52>>2]|0; + $54 = (($53) + 1)|0; + HEAP32[$52>>2] = $54; + $55 = HEAP32[$1>>2]|0; + $56 = (($55) + 4|0); + $57 = HEAP32[$56>>2]|0; + $58 = ($57>>>0)>=(10); + if ($58) { + $59 = HEAP32[$1>>2]|0; + $60 = (($59) + 4|0); + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$1>>2]|0; + $63 = HEAP32[$62>>2]|0; + $64 = $63<<1; + $65 = ($61>>>0)>($64>>>0); + if ($65) { + $66 = HEAP32[$1>>2]|0; + $67 = HEAP32[$1>>2]|0; + $68 = (($67) + 4|0); + $69 = HEAP32[$68>>2]|0; + $70 = $69<<1; + $71 = (_rehash($66,$70)|0); + $72 = ($71|0)!=(0); + if ($72) { + $73 = HEAP32[$2>>2]|0; + $74 = HEAP32[$3>>2]|0; + $75 = (_strHash($73,$74)|0); + $76 = HEAP32[$1>>2]|0; + $77 = HEAP32[$76>>2]|0; + $78 = (($75>>>0) % ($77>>>0))&-1; + HEAP32[$h>>2] = $78; + } + } + } + $79 = HEAP32[$1>>2]|0; + $80 = (($79) + 12|0); + $81 = HEAP32[$80>>2]|0; + $82 = ($81|0)!=(0|0); + $83 = HEAP32[$1>>2]|0; + if ($82) { + $84 = HEAP32[$h>>2]|0; + $85 = HEAP32[$1>>2]|0; + $86 = (($85) + 12|0); + $87 = HEAP32[$86>>2]|0; + $88 = (($87) + ($84<<3)|0); + $89 = HEAP32[$new_elem>>2]|0; + _insertElement($83,$88,$89); + } else { + $90 = HEAP32[$new_elem>>2]|0; + _insertElement($83,0,$90); + } + HEAP32[$0>>2] = 0; + $91 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($91|0); +} +function _removeElementGivenHash($pH,$elem,$h) { + $pH = $pH|0; + $elem = $elem|0; + $h = $h|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pEntry = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pEntry = sp + 8|0; + HEAP32[$0>>2] = $pH; + HEAP32[$1>>2] = $elem; + HEAP32[$2>>2] = $h; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + if ($6) { + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 4|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$11>>2] = $8; + } else { + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 8|0); + HEAP32[$13>>2] = $8; + } + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + 4|0); + HEAP32[$22>>2] = $19; + } + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 12|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)!=(0|0); + if ($26) { + $27 = HEAP32[$2>>2]|0; + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 12|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + ($27<<3)|0); + HEAP32[$pEntry>>2] = $31; + $32 = HEAP32[$pEntry>>2]|0; + $33 = (($32) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$1>>2]|0; + $36 = ($34|0)==($35|0); + if ($36) { + $37 = HEAP32[$1>>2]|0; + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$pEntry>>2]|0; + $40 = (($39) + 4|0); + HEAP32[$40>>2] = $38; + } + $41 = HEAP32[$pEntry>>2]|0; + $42 = HEAP32[$41>>2]|0; + $43 = (($42) + -1)|0; + HEAP32[$41>>2] = $43; + } + $44 = HEAP32[$1>>2]|0; + _sqlite3_free($44); + $45 = HEAP32[$0>>2]|0; + $46 = (($45) + 4|0); + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + -1)|0; + HEAP32[$46>>2] = $48; + $49 = HEAP32[$0>>2]|0; + $50 = (($49) + 4|0); + $51 = HEAP32[$50>>2]|0; + $52 = ($51|0)==(0); + if (!($52)) { + STACKTOP = sp;return; + } + $53 = HEAP32[$0>>2]|0; + _sqlite3HashClear($53); + STACKTOP = sp;return; +} +function _rehash($pH,$new_size) { + $pH = $pH|0; + $new_size = $new_size|0; + var $$new_size = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $elem = 0, $h = 0, $new_ht = 0, $next_elem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $new_ht = sp + 8|0; + $elem = sp + 12|0; + $next_elem = sp + 16|0; + $h = sp + 20|0; + HEAP32[$1>>2] = $pH; + HEAP32[$2>>2] = $new_size; + $3 = HEAP32[$2>>2]|0; + $4 = $3<<3; + $5 = ($4>>>0)>(1024); + $$new_size = $5 ? 128 : $new_size; + HEAP32[$2>>2] = $$new_size; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = ($6|0)==($8|0); + if ($9) { + HEAP32[$0>>2] = 0; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); + } + _sqlite3BeginBenignMalloc(); + $10 = HEAP32[$2>>2]|0; + $11 = $10<<3; + $12 = (_sqlite3Malloc($11)|0); + HEAP32[$new_ht>>2] = $12; + _sqlite3EndBenignMalloc(); + $13 = HEAP32[$new_ht>>2]|0; + $14 = ($13|0)==(0|0); + if ($14) { + HEAP32[$0>>2] = 0; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); + } + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 12|0); + $17 = HEAP32[$16>>2]|0; + _sqlite3_free($17); + $18 = HEAP32[$new_ht>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 12|0); + HEAP32[$20>>2] = $18; + $21 = HEAP32[$new_ht>>2]|0; + $22 = (_sqlite3MallocSize($21)|0); + $23 = (($22>>>0) / 8)&-1; + HEAP32[$2>>2] = $23; + $24 = HEAP32[$1>>2]|0; + HEAP32[$24>>2] = $23; + $25 = HEAP32[$new_ht>>2]|0; + $26 = HEAP32[$2>>2]|0; + $27 = $26<<3; + _memset(($25|0),0,($27|0))|0; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 8|0); + $30 = HEAP32[$29>>2]|0; + HEAP32[$elem>>2] = $30; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 8|0); + HEAP32[$32>>2] = 0; + while(1) { + $33 = HEAP32[$elem>>2]|0; + $34 = ($33|0)!=(0|0); + if (!($34)) { + break; + } + $35 = HEAP32[$elem>>2]|0; + $36 = (($35) + 12|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$elem>>2]|0; + $39 = (($38) + 16|0); + $40 = HEAP32[$39>>2]|0; + $41 = (_strHash($37,$40)|0); + $42 = HEAP32[$2>>2]|0; + $43 = (($41>>>0) % ($42>>>0))&-1; + HEAP32[$h>>2] = $43; + $44 = HEAP32[$elem>>2]|0; + $45 = HEAP32[$44>>2]|0; + HEAP32[$next_elem>>2] = $45; + $46 = HEAP32[$1>>2]|0; + $47 = HEAP32[$h>>2]|0; + $48 = HEAP32[$new_ht>>2]|0; + $49 = (($48) + ($47<<3)|0); + $50 = HEAP32[$elem>>2]|0; + _insertElement($46,$49,$50); + $51 = HEAP32[$next_elem>>2]|0; + HEAP32[$elem>>2] = $51; + } + HEAP32[$0>>2] = 1; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); +} +function _insertElement($pH,$pEntry,$pNew) { + $pH = $pH|0; + $pEntry = $pEntry|0; + $pNew = $pNew|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pHead = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pHead = sp + 8|0; + HEAP32[$0>>2] = $pH; + HEAP32[$1>>2] = $pEntry; + HEAP32[$2>>2] = $pNew; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0); + if ($7) { + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = $10; + } else { + $11 = 0; + } + HEAP32[$pHead>>2] = $11; + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 1)|0; + HEAP32[$12>>2] = $14; + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 4|0); + HEAP32[$17>>2] = $15; + } else { + HEAP32[$pHead>>2] = 0; + } + $18 = HEAP32[$pHead>>2]|0; + $19 = ($18|0)!=(0|0); + if (!($19)) { + $40 = HEAP32[$0>>2]|0; + $41 = (($40) + 8|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$2>>2]|0; + HEAP32[$43>>2] = $42; + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 8|0); + $46 = HEAP32[$45>>2]|0; + $47 = ($46|0)!=(0|0); + if ($47) { + $48 = HEAP32[$2>>2]|0; + $49 = HEAP32[$0>>2]|0; + $50 = (($49) + 8|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + 4|0); + HEAP32[$52>>2] = $48; + } + $53 = HEAP32[$2>>2]|0; + $54 = (($53) + 4|0); + HEAP32[$54>>2] = 0; + $55 = HEAP32[$2>>2]|0; + $56 = HEAP32[$0>>2]|0; + $57 = (($56) + 8|0); + HEAP32[$57>>2] = $55; + STACKTOP = sp;return; + } + $20 = HEAP32[$pHead>>2]|0; + $21 = HEAP32[$2>>2]|0; + HEAP32[$21>>2] = $20; + $22 = HEAP32[$pHead>>2]|0; + $23 = (($22) + 4|0); + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 4|0); + HEAP32[$26>>2] = $24; + $27 = HEAP32[$pHead>>2]|0; + $28 = (($27) + 4|0); + $29 = HEAP32[$28>>2]|0; + $30 = ($29|0)!=(0|0); + $31 = HEAP32[$2>>2]|0; + if ($30) { + $32 = HEAP32[$pHead>>2]|0; + $33 = (($32) + 4|0); + $34 = HEAP32[$33>>2]|0; + HEAP32[$34>>2] = $31; + } else { + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 8|0); + HEAP32[$36>>2] = $31; + } + $37 = HEAP32[$2>>2]|0; + $38 = HEAP32[$pHead>>2]|0; + $39 = (($38) + 4|0); + HEAP32[$39>>2] = $37; + STACKTOP = sp;return; +} +function _sqlite3BeginBenignMalloc() { + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[3528>>2]|0; + $1 = ($0|0)!=(0|0); + if (!($1)) { + STACKTOP = sp;return; + } + $2 = HEAP32[3528>>2]|0; + FUNCTION_TABLE_v[$2 & 0](); + STACKTOP = sp;return; +} +function _sqlite3EndBenignMalloc() { + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[((3528 + 4|0))>>2]|0; + $1 = ($0|0)!=(0|0); + if (!($1)) { + STACKTOP = sp;return; + } + $2 = HEAP32[((3528 + 4|0))>>2]|0; + FUNCTION_TABLE_v[$2 & 0](); + STACKTOP = sp;return; +} +function _sqlite3HashClear($pH) { + $pH = $pH|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $elem = 0, $next_elem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $elem = sp; + $next_elem = sp + 4|0; + HEAP32[$0>>2] = $pH; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$elem>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 8|0); + HEAP32[$5>>2] = 0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 12|0); + $8 = HEAP32[$7>>2]|0; + _sqlite3_free($8); + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 12|0); + HEAP32[$10>>2] = 0; + $11 = HEAP32[$0>>2]|0; + HEAP32[$11>>2] = 0; + while(1) { + $12 = HEAP32[$elem>>2]|0; + $13 = ($12|0)!=(0|0); + if (!($13)) { + break; + } + $14 = HEAP32[$elem>>2]|0; + $15 = HEAP32[$14>>2]|0; + HEAP32[$next_elem>>2] = $15; + $16 = HEAP32[$elem>>2]|0; + _sqlite3_free($16); + $17 = HEAP32[$next_elem>>2]|0; + HEAP32[$elem>>2] = $17; + } + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 4|0); + HEAP32[$19>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3HashInit($pNew) { + $pNew = $pNew|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pNew; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + HEAP32[$2>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 4|0); + HEAP32[$4>>2] = 0; + $5 = HEAP32[$0>>2]|0; + HEAP32[$5>>2] = 0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 12|0); + HEAP32[$7>>2] = 0; + STACKTOP = sp;return; +} +function _binCollFunc($padFlag,$nKey1,$pKey1,$nKey2,$pKey2) { + $padFlag = $padFlag|0; + $nKey1 = $nKey1|0; + $pKey1 = $pKey1|0; + $nKey2 = $nKey2|0; + $pKey2 = $pKey2|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $rc = sp + 16|0; + $n = sp + 20|0; + HEAP32[$0>>2] = $padFlag; + HEAP32[$1>>2] = $nKey1; + HEAP32[$2>>2] = $pKey1; + HEAP32[$3>>2] = $nKey2; + HEAP32[$4>>2] = $pKey2; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$3>>2]|0; + $7 = ($5|0)<($6|0); + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$3>>2]|0; + $10 = $7 ? $8 : $9; + HEAP32[$n>>2] = $10; + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$4>>2]|0; + $13 = HEAP32[$n>>2]|0; + $14 = (_memcmp($11,$12,$13)|0); + HEAP32[$rc>>2] = $14; + $15 = HEAP32[$rc>>2]|0; + $16 = ($15|0)==(0); + if (!($16)) { + $38 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($38|0); + } + $17 = HEAP32[$0>>2]|0; + $18 = ($17|0)!=(0|0); + if ($18) { + $19 = HEAP32[$2>>2]|0; + $20 = HEAP32[$n>>2]|0; + $21 = (($19) + ($20)|0); + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$n>>2]|0; + $24 = (($22) - ($23))|0; + $25 = (_allSpaces($21,$24)|0); + $26 = ($25|0)!=(0); + if ($26) { + $27 = HEAP32[$4>>2]|0; + $28 = HEAP32[$n>>2]|0; + $29 = (($27) + ($28)|0); + $30 = HEAP32[$3>>2]|0; + $31 = HEAP32[$n>>2]|0; + $32 = (($30) - ($31))|0; + $33 = (_allSpaces($29,$32)|0); + $34 = ($33|0)!=(0); + if ($34) { + $38 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($38|0); + } + } + } + $35 = HEAP32[$1>>2]|0; + $36 = HEAP32[$3>>2]|0; + $37 = (($35) - ($36))|0; + HEAP32[$rc>>2] = $37; + $38 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($38|0); +} +function _nocaseCollatingFunc($NotUsed,$nKey1,$pKey1,$nKey2,$pKey2) { + $NotUsed = $NotUsed|0; + $nKey1 = $nKey1|0; + $pKey1 = $pKey1|0; + $nKey2 = $nKey2|0; + $pKey2 = $pKey2|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $r = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $r = sp + 16|0; + HEAP32[$0>>2] = $NotUsed; + HEAP32[$1>>2] = $nKey1; + HEAP32[$2>>2] = $pKey1; + HEAP32[$3>>2] = $nKey2; + HEAP32[$4>>2] = $pKey2; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$4>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$3>>2]|0; + $9 = ($7|0)<($8|0); + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$3>>2]|0; + $12 = $9 ? $10 : $11; + $13 = (_sqlite3_strnicmp($5,$6,$12)|0); + HEAP32[$r>>2] = $13; + $14 = HEAP32[$r>>2]|0; + $15 = (0)==($14|0); + if (!($15)) { + $19 = HEAP32[$r>>2]|0; + STACKTOP = sp;return ($19|0); + } + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$3>>2]|0; + $18 = (($16) - ($17))|0; + HEAP32[$r>>2] = $18; + $19 = HEAP32[$r>>2]|0; + STACKTOP = sp;return ($19|0); +} +function _sqlite3ParseUri($zDefaultVfs,$zUri,$pFlags,$ppVfs,$pzFile,$pzErrMsg) { + $zDefaultVfs = $zDefaultVfs|0; + $zUri = $zUri|0; + $pFlags = $pFlags|0; + $ppVfs = $ppVfs|0; + $pzFile = $pzFile|0; + $pzErrMsg = $pzErrMsg|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $aMode = 0, $c = 0, $eState = 0, $flags = 0, $i = 0, $iIn = 0, $iOut = 0, $limit = 0, $mask = 0, $mode = 0, $nByte = 0, $nOpt = 0, $nUri = 0, $nVal = 0, $octet = 0, $rc = 0, $vararg_buffer18 = 0; + var $vararg_ptr13 = 0, $vararg_ptr17 = 0, $vararg_ptr9 = 0, $z = 0, $zFile = 0, $zModeType = 0, $zOpt = 0, $zVal = 0, $zVfs = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $vararg_buffer18 = sp; + $0 = sp + 72|0; + $1 = sp + 76|0; + $2 = sp + 80|0; + $3 = sp + 84|0; + $4 = sp + 88|0; + $5 = sp + 96|0; + $6 = sp + 100|0; + $rc = sp + 104|0; + $flags = sp + 108|0; + $zVfs = sp + 112|0; + $zFile = sp + 116|0; + $c = sp + 120|0; + $nUri = sp + 68|0; + $zOpt = sp + 64|0; + $eState = sp + 92|0; + $iIn = sp + 28|0; + $iOut = sp + 24|0; + $nByte = sp + 8|0; + $octet = sp + 12|0; + $nOpt = sp + 16|0; + $zVal = sp + 20|0; + $nVal = sp + 56|0; + $aMode = sp + 32|0; + $zModeType = sp + 36|0; + $mask = sp + 40|0; + $limit = sp + 44|0; + $i = sp + 48|0; + $mode = sp + 52|0; + $z = sp + 60|0; + HEAP32[$1>>2] = $zDefaultVfs; + HEAP32[$2>>2] = $zUri; + HEAP32[$3>>2] = $pFlags; + HEAP32[$4>>2] = $ppVfs; + HEAP32[$5>>2] = $pzFile; + HEAP32[$6>>2] = $pzErrMsg; + HEAP32[$rc>>2] = 0; + $7 = HEAP32[$3>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$flags>>2] = $8; + $9 = HEAP32[$1>>2]|0; + HEAP32[$zVfs>>2] = $9; + $10 = HEAP32[$2>>2]|0; + $11 = (_sqlite3Strlen30($10)|0); + HEAP32[$nUri>>2] = $11; + $12 = HEAP32[$flags>>2]|0; + $13 = $12 & 64; + $14 = ($13|0)!=(0); + if ($14) { + label = 3; + } else { + $15 = HEAP32[((45136 + 12|0))>>2]|0; + $16 = ($15|0)!=(0); + if ($16) { + label = 3; + } else { + label = 83; + } + } + L3: do { + if ((label|0) == 3) { + $17 = HEAP32[$nUri>>2]|0; + $18 = ($17|0)>=(5); + if ($18) { + $19 = HEAP32[$2>>2]|0; + $20 = (_memcmp($19,11216,5)|0); + $21 = ($20|0)==(0); + if ($21) { + HEAP32[$iOut>>2] = 0; + $22 = HEAP32[$nUri>>2]|0; + $23 = (($22) + 2)|0; + HEAP32[$nByte>>2] = $23; + $24 = HEAP32[$flags>>2]|0; + $25 = $24 | 64; + HEAP32[$flags>>2] = $25; + HEAP32[$iIn>>2] = 0; + while(1) { + $26 = HEAP32[$iIn>>2]|0; + $27 = HEAP32[$nUri>>2]|0; + $28 = ($26|0)<($27|0); + if (!($28)) { + break; + } + $29 = HEAP32[$iIn>>2]|0; + $30 = HEAP32[$2>>2]|0; + $31 = (($30) + ($29)|0); + $32 = HEAP8[$31>>0]|0; + $33 = $32 << 24 >> 24; + $34 = ($33|0)==(38); + $35 = $34&1; + $36 = HEAP32[$nByte>>2]|0; + $37 = (($36) + ($35))|0; + HEAP32[$nByte>>2] = $37; + $38 = HEAP32[$iIn>>2]|0; + $39 = (($38) + 1)|0; + HEAP32[$iIn>>2] = $39; + } + $40 = HEAP32[$nByte>>2]|0; + $41 = (_sqlite3_malloc($40)|0); + HEAP32[$zFile>>2] = $41; + $42 = HEAP32[$zFile>>2]|0; + $43 = ($42|0)!=(0|0); + if (!($43)) { + HEAP32[$0>>2] = 7; + $361 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($361|0); + } + HEAP32[$iIn>>2] = 5; + $44 = HEAP32[$2>>2]|0; + $45 = (($44) + 5|0); + $46 = HEAP8[$45>>0]|0; + $47 = $46 << 24 >> 24; + $48 = ($47|0)==(47); + do { + if ($48) { + $49 = HEAP32[$2>>2]|0; + $50 = (($49) + 6|0); + $51 = HEAP8[$50>>0]|0; + $52 = $51 << 24 >> 24; + $53 = ($52|0)==(47); + if ($53) { + HEAP32[$iIn>>2] = 7; + while(1) { + $54 = HEAP32[$iIn>>2]|0; + $55 = HEAP32[$2>>2]|0; + $56 = (($55) + ($54)|0); + $57 = HEAP8[$56>>0]|0; + $58 = $57 << 24 >> 24; + $59 = ($58|0)!=(0); + if ($59) { + $60 = HEAP32[$iIn>>2]|0; + $61 = HEAP32[$2>>2]|0; + $62 = (($61) + ($60)|0); + $63 = HEAP8[$62>>0]|0; + $64 = $63 << 24 >> 24; + $65 = ($64|0)!=(47); + $362 = $65; + } else { + $362 = 0; + } + $66 = HEAP32[$iIn>>2]|0; + if (!($362)) { + break; + } + $67 = (($66) + 1)|0; + HEAP32[$iIn>>2] = $67; + } + $68 = ($66|0)!=(7); + if ($68) { + $69 = HEAP32[$iIn>>2]|0; + $70 = ($69|0)!=(16); + if (!($70)) { + $71 = HEAP32[$2>>2]|0; + $72 = (($71) + 7|0); + $73 = (_memcmp(11224,$72,9)|0); + $74 = ($73|0)!=(0); + if (!($74)) { + break; + } + } + $75 = HEAP32[$iIn>>2]|0; + $76 = (($75) - 7)|0; + $77 = HEAP32[$2>>2]|0; + $78 = (($77) + 7|0); + HEAP32[$vararg_buffer18>>2] = $76; + $vararg_ptr9 = (($vararg_buffer18) + 4|0); + HEAP32[$vararg_ptr9>>2] = $78; + $79 = (_sqlite3_mprintf(11240,$vararg_buffer18)|0); + $80 = HEAP32[$6>>2]|0; + HEAP32[$80>>2] = $79; + HEAP32[$rc>>2] = 1; + break L3; + } + } + } + } while(0); + HEAP32[$eState>>2] = 0; + L30: while(1) { + $81 = HEAP32[$iIn>>2]|0; + $82 = HEAP32[$2>>2]|0; + $83 = (($82) + ($81)|0); + $84 = HEAP8[$83>>0]|0; + HEAP8[$c>>0] = $84; + $85 = $84 << 24 >> 24; + $86 = ($85|0)!=(0); + if (!($86)) { + break; + } + $87 = HEAP8[$c>>0]|0; + $88 = $87 << 24 >> 24; + $89 = ($88|0)!=(35); + if (!($89)) { + break; + } + $90 = HEAP32[$iIn>>2]|0; + $91 = (($90) + 1)|0; + HEAP32[$iIn>>2] = $91; + $92 = HEAP8[$c>>0]|0; + $93 = $92 << 24 >> 24; + $94 = ($93|0)==(37); + do { + if ($94) { + $95 = HEAP32[$iIn>>2]|0; + $96 = HEAP32[$2>>2]|0; + $97 = (($96) + ($95)|0); + $98 = HEAP8[$97>>0]|0; + $99 = $98&255; + $100 = (136 + ($99)|0); + $101 = HEAP8[$100>>0]|0; + $102 = $101&255; + $103 = $102 & 8; + $104 = ($103|0)!=(0); + if ($104) { + $105 = HEAP32[$iIn>>2]|0; + $106 = (($105) + 1)|0; + $107 = HEAP32[$2>>2]|0; + $108 = (($107) + ($106)|0); + $109 = HEAP8[$108>>0]|0; + $110 = $109&255; + $111 = (136 + ($110)|0); + $112 = HEAP8[$111>>0]|0; + $113 = $112&255; + $114 = $113 & 8; + $115 = ($114|0)!=(0); + if ($115) { + $116 = HEAP32[$iIn>>2]|0; + $117 = (($116) + 1)|0; + HEAP32[$iIn>>2] = $117; + $118 = HEAP32[$2>>2]|0; + $119 = (($118) + ($116)|0); + $120 = HEAP8[$119>>0]|0; + $121 = $120 << 24 >> 24; + $122 = (_sqlite3HexToInt($121)|0); + $123 = $122&255; + $124 = $123 << 4; + HEAP32[$octet>>2] = $124; + $125 = HEAP32[$iIn>>2]|0; + $126 = (($125) + 1)|0; + HEAP32[$iIn>>2] = $126; + $127 = HEAP32[$2>>2]|0; + $128 = (($127) + ($125)|0); + $129 = HEAP8[$128>>0]|0; + $130 = $129 << 24 >> 24; + $131 = (_sqlite3HexToInt($130)|0); + $132 = $131&255; + $133 = HEAP32[$octet>>2]|0; + $134 = (($133) + ($132))|0; + HEAP32[$octet>>2] = $134; + $135 = HEAP32[$octet>>2]|0; + $136 = ($135|0)==(0); + if (!($136)) { + $166 = HEAP32[$octet>>2]|0; + $167 = $166&255; + HEAP8[$c>>0] = $167; + break; + } + while(1) { + $137 = HEAP32[$iIn>>2]|0; + $138 = HEAP32[$2>>2]|0; + $139 = (($138) + ($137)|0); + $140 = HEAP8[$139>>0]|0; + HEAP8[$c>>0] = $140; + $141 = $140 << 24 >> 24; + $142 = ($141|0)!=(0); + if (!($142)) { + continue L30; + } + $143 = HEAP8[$c>>0]|0; + $144 = $143 << 24 >> 24; + $145 = ($144|0)!=(35); + if (!($145)) { + continue L30; + } + $146 = HEAP32[$eState>>2]|0; + $147 = ($146|0)!=(0); + if (!($147)) { + $148 = HEAP8[$c>>0]|0; + $149 = $148 << 24 >> 24; + $150 = ($149|0)!=(63); + if (!($150)) { + continue L30; + } + } + $151 = HEAP32[$eState>>2]|0; + $152 = ($151|0)!=(1); + if (!($152)) { + $153 = HEAP8[$c>>0]|0; + $154 = $153 << 24 >> 24; + $155 = ($154|0)!=(61); + if (!($155)) { + continue L30; + } + $156 = HEAP8[$c>>0]|0; + $157 = $156 << 24 >> 24; + $158 = ($157|0)!=(38); + if (!($158)) { + continue L30; + } + } + $159 = HEAP32[$eState>>2]|0; + $160 = ($159|0)!=(2); + if (!($160)) { + $161 = HEAP8[$c>>0]|0; + $162 = $161 << 24 >> 24; + $163 = ($162|0)!=(38); + if (!($163)) { + continue L30; + } + } + $164 = HEAP32[$iIn>>2]|0; + $165 = (($164) + 1)|0; + HEAP32[$iIn>>2] = $165; + } + } else { + label = 39; + } + } else { + label = 39; + } + } else { + label = 39; + } + } while(0); + L54: do { + if ((label|0) == 39) { + label = 0; + $168 = HEAP32[$eState>>2]|0; + $169 = ($168|0)==(1); + do { + if ($169) { + $170 = HEAP8[$c>>0]|0; + $171 = $170 << 24 >> 24; + $172 = ($171|0)==(38); + if (!($172)) { + $173 = HEAP8[$c>>0]|0; + $174 = $173 << 24 >> 24; + $175 = ($174|0)==(61); + if (!($175)) { + break; + } + } + $176 = HEAP32[$iOut>>2]|0; + $177 = (($176) - 1)|0; + $178 = HEAP32[$zFile>>2]|0; + $179 = (($178) + ($177)|0); + $180 = HEAP8[$179>>0]|0; + $181 = $180 << 24 >> 24; + $182 = ($181|0)==(0); + if ($182) { + while(1) { + $183 = HEAP32[$iIn>>2]|0; + $184 = HEAP32[$2>>2]|0; + $185 = (($184) + ($183)|0); + $186 = HEAP8[$185>>0]|0; + $187 = $186 << 24 >> 24; + $188 = ($187|0)!=(0); + if (!($188)) { + continue L30; + } + $189 = HEAP32[$iIn>>2]|0; + $190 = HEAP32[$2>>2]|0; + $191 = (($190) + ($189)|0); + $192 = HEAP8[$191>>0]|0; + $193 = $192 << 24 >> 24; + $194 = ($193|0)!=(35); + if (!($194)) { + continue L30; + } + $195 = HEAP32[$iIn>>2]|0; + $196 = (($195) - 1)|0; + $197 = HEAP32[$2>>2]|0; + $198 = (($197) + ($196)|0); + $199 = HEAP8[$198>>0]|0; + $200 = $199 << 24 >> 24; + $201 = ($200|0)!=(38); + if (!($201)) { + continue L30; + } + $202 = HEAP32[$iIn>>2]|0; + $203 = (($202) + 1)|0; + HEAP32[$iIn>>2] = $203; + } + } else { + $204 = HEAP8[$c>>0]|0; + $205 = $204 << 24 >> 24; + $206 = ($205|0)==(38); + if ($206) { + $207 = HEAP32[$iOut>>2]|0; + $208 = (($207) + 1)|0; + HEAP32[$iOut>>2] = $208; + $209 = HEAP32[$zFile>>2]|0; + $210 = (($209) + ($207)|0); + HEAP8[$210>>0] = 0; + } else { + HEAP32[$eState>>2] = 2; + } + HEAP8[$c>>0] = 0; + break L54; + } + } + } while(0); + $211 = HEAP32[$eState>>2]|0; + $212 = ($211|0)==(0); + if ($212) { + $213 = HEAP8[$c>>0]|0; + $214 = $213 << 24 >> 24; + $215 = ($214|0)==(63); + if (!($215)) { + label = 53; + } + } else { + label = 53; + } + if ((label|0) == 53) { + label = 0; + $216 = HEAP32[$eState>>2]|0; + $217 = ($216|0)==(2); + if (!($217)) { + break; + } + $218 = HEAP8[$c>>0]|0; + $219 = $218 << 24 >> 24; + $220 = ($219|0)==(38); + if (!($220)) { + break; + } + } + HEAP8[$c>>0] = 0; + HEAP32[$eState>>2] = 1; + } + } while(0); + $221 = HEAP8[$c>>0]|0; + $222 = HEAP32[$iOut>>2]|0; + $223 = (($222) + 1)|0; + HEAP32[$iOut>>2] = $223; + $224 = HEAP32[$zFile>>2]|0; + $225 = (($224) + ($222)|0); + HEAP8[$225>>0] = $221; + } + $226 = HEAP32[$eState>>2]|0; + $227 = ($226|0)==(1); + if ($227) { + $228 = HEAP32[$iOut>>2]|0; + $229 = (($228) + 1)|0; + HEAP32[$iOut>>2] = $229; + $230 = HEAP32[$zFile>>2]|0; + $231 = (($230) + ($228)|0); + HEAP8[$231>>0] = 0; + } + $232 = HEAP32[$iOut>>2]|0; + $233 = (($232) + 1)|0; + HEAP32[$iOut>>2] = $233; + $234 = HEAP32[$zFile>>2]|0; + $235 = (($234) + ($232)|0); + HEAP8[$235>>0] = 0; + $236 = HEAP32[$iOut>>2]|0; + $237 = (($236) + 1)|0; + HEAP32[$iOut>>2] = $237; + $238 = HEAP32[$zFile>>2]|0; + $239 = (($238) + ($236)|0); + HEAP8[$239>>0] = 0; + $240 = HEAP32[$zFile>>2]|0; + $241 = (_sqlite3Strlen30($240)|0); + $242 = (($241) + 1)|0; + $243 = HEAP32[$zFile>>2]|0; + $244 = (($243) + ($242)|0); + HEAP32[$zOpt>>2] = $244; + while(1) { + $245 = HEAP32[$zOpt>>2]|0; + $246 = HEAP8[$245>>0]|0; + $247 = ($246<<24>>24)!=(0); + if (!($247)) { + label = 86; + break L3; + } + $248 = HEAP32[$zOpt>>2]|0; + $249 = (_sqlite3Strlen30($248)|0); + HEAP32[$nOpt>>2] = $249; + $250 = HEAP32[$nOpt>>2]|0; + $251 = (($250) + 1)|0; + $252 = HEAP32[$zOpt>>2]|0; + $253 = (($252) + ($251)|0); + HEAP32[$zVal>>2] = $253; + $254 = HEAP32[$zVal>>2]|0; + $255 = (_sqlite3Strlen30($254)|0); + HEAP32[$nVal>>2] = $255; + $256 = HEAP32[$nOpt>>2]|0; + $257 = ($256|0)==(3); + if ($257) { + $258 = HEAP32[$zOpt>>2]|0; + $259 = (_memcmp(11272,$258,3)|0); + $260 = ($259|0)==(0); + if ($260) { + $261 = HEAP32[$zVal>>2]|0; + HEAP32[$zVfs>>2] = $261; + } else { + label = 64; + } + } else { + label = 64; + } + if ((label|0) == 64) { + label = 0; + HEAP32[$aMode>>2] = 0; + HEAP32[$zModeType>>2] = 0; + HEAP32[$mask>>2] = 0; + HEAP32[$limit>>2] = 0; + $262 = HEAP32[$nOpt>>2]|0; + $263 = ($262|0)==(5); + if ($263) { + $264 = HEAP32[$zOpt>>2]|0; + $265 = (_memcmp(11280,$264,5)|0); + $266 = ($265|0)==(0); + if ($266) { + HEAP32[$mask>>2] = 393216; + HEAP32[$aMode>>2] = 11288; + $267 = HEAP32[$mask>>2]|0; + HEAP32[$limit>>2] = $267; + HEAP32[$zModeType>>2] = 11280; + } + } + $268 = HEAP32[$nOpt>>2]|0; + $269 = ($268|0)==(4); + if ($269) { + $270 = HEAP32[$zOpt>>2]|0; + $271 = (_memcmp(11328,$270,4)|0); + $272 = ($271|0)==(0); + if ($272) { + HEAP32[$mask>>2] = 135; + HEAP32[$aMode>>2] = 11336; + $273 = HEAP32[$mask>>2]|0; + $274 = HEAP32[$flags>>2]|0; + $275 = $273 & $274; + HEAP32[$limit>>2] = $275; + HEAP32[$zModeType>>2] = 11408; + } + } + $276 = HEAP32[$aMode>>2]|0; + $277 = ($276|0)!=(0|0); + if ($277) { + HEAP32[$mode>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $278 = HEAP32[$i>>2]|0; + $279 = HEAP32[$aMode>>2]|0; + $280 = (($279) + ($278<<3)|0); + $281 = HEAP32[$280>>2]|0; + $282 = ($281|0)!=(0|0); + if (!($282)) { + break; + } + $283 = HEAP32[$i>>2]|0; + $284 = HEAP32[$aMode>>2]|0; + $285 = (($284) + ($283<<3)|0); + $286 = HEAP32[$285>>2]|0; + HEAP32[$z>>2] = $286; + $287 = HEAP32[$nVal>>2]|0; + $288 = HEAP32[$z>>2]|0; + $289 = (_sqlite3Strlen30($288)|0); + $290 = ($287|0)==($289|0); + if ($290) { + $291 = HEAP32[$zVal>>2]|0; + $292 = HEAP32[$z>>2]|0; + $293 = HEAP32[$nVal>>2]|0; + $294 = (_memcmp($291,$292,$293)|0); + $295 = (0)==($294|0); + if ($295) { + label = 75; + break; + } + } + $301 = HEAP32[$i>>2]|0; + $302 = (($301) + 1)|0; + HEAP32[$i>>2] = $302; + } + if ((label|0) == 75) { + label = 0; + $296 = HEAP32[$i>>2]|0; + $297 = HEAP32[$aMode>>2]|0; + $298 = (($297) + ($296<<3)|0); + $299 = (($298) + 4|0); + $300 = HEAP32[$299>>2]|0; + HEAP32[$mode>>2] = $300; + } + $303 = HEAP32[$mode>>2]|0; + $304 = ($303|0)==(0); + if ($304) { + label = 78; + break; + } + $309 = HEAP32[$mode>>2]|0; + $310 = $309 & -129; + $311 = HEAP32[$limit>>2]|0; + $312 = ($310|0)>($311|0); + if ($312) { + label = 80; + break; + } + $317 = HEAP32[$flags>>2]|0; + $318 = HEAP32[$mask>>2]|0; + $319 = $318 ^ -1; + $320 = $317 & $319; + $321 = HEAP32[$mode>>2]|0; + $322 = $320 | $321; + HEAP32[$flags>>2] = $322; + } + } + $323 = HEAP32[$nVal>>2]|0; + $324 = (($323) + 1)|0; + $325 = HEAP32[$zVal>>2]|0; + $326 = (($325) + ($324)|0); + HEAP32[$zOpt>>2] = $326; + } + if ((label|0) == 78) { + $305 = HEAP32[$zModeType>>2]|0; + $306 = HEAP32[$zVal>>2]|0; + HEAP32[$vararg_buffer18>>2] = $305; + $vararg_ptr13 = (($vararg_buffer18) + 4|0); + HEAP32[$vararg_ptr13>>2] = $306; + $307 = (_sqlite3_mprintf(11416,$vararg_buffer18)|0); + $308 = HEAP32[$6>>2]|0; + HEAP32[$308>>2] = $307; + HEAP32[$rc>>2] = 1; + break; + } + else if ((label|0) == 80) { + $313 = HEAP32[$zModeType>>2]|0; + $314 = HEAP32[$zVal>>2]|0; + HEAP32[$vararg_buffer18>>2] = $313; + $vararg_ptr17 = (($vararg_buffer18) + 4|0); + HEAP32[$vararg_ptr17>>2] = $314; + $315 = (_sqlite3_mprintf(11440,$vararg_buffer18)|0); + $316 = HEAP32[$6>>2]|0; + HEAP32[$316>>2] = $315; + HEAP32[$rc>>2] = 3; + break; + } + } else { + label = 83; + } + } else { + label = 83; + } + } + } while(0); + do { + if ((label|0) == 83) { + $327 = HEAP32[$nUri>>2]|0; + $328 = (($327) + 2)|0; + $329 = (_sqlite3_malloc($328)|0); + HEAP32[$zFile>>2] = $329; + $330 = HEAP32[$zFile>>2]|0; + $331 = ($330|0)!=(0|0); + if ($331) { + $332 = HEAP32[$zFile>>2]|0; + $333 = HEAP32[$2>>2]|0; + $334 = HEAP32[$nUri>>2]|0; + _memcpy(($332|0),($333|0),($334|0))|0; + $335 = HEAP32[$nUri>>2]|0; + $336 = HEAP32[$zFile>>2]|0; + $337 = (($336) + ($335)|0); + HEAP8[$337>>0] = 0; + $338 = HEAP32[$nUri>>2]|0; + $339 = (($338) + 1)|0; + $340 = HEAP32[$zFile>>2]|0; + $341 = (($340) + ($339)|0); + HEAP8[$341>>0] = 0; + $342 = HEAP32[$flags>>2]|0; + $343 = $342 & -65; + HEAP32[$flags>>2] = $343; + label = 86; + break; + } + HEAP32[$0>>2] = 7; + $361 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($361|0); + } + } while(0); + if ((label|0) == 86) { + $344 = HEAP32[$zVfs>>2]|0; + $345 = (_sqlite3_vfs_find($344)|0); + $346 = HEAP32[$4>>2]|0; + HEAP32[$346>>2] = $345; + $347 = HEAP32[$4>>2]|0; + $348 = HEAP32[$347>>2]|0; + $349 = ($348|0)==(0|0); + if ($349) { + $350 = HEAP32[$zVfs>>2]|0; + HEAP32[$vararg_buffer18>>2] = $350; + $351 = (_sqlite3_mprintf(11464,$vararg_buffer18)|0); + $352 = HEAP32[$6>>2]|0; + HEAP32[$352>>2] = $351; + HEAP32[$rc>>2] = 1; + } + } + $353 = HEAP32[$rc>>2]|0; + $354 = ($353|0)!=(0); + if ($354) { + $355 = HEAP32[$zFile>>2]|0; + _sqlite3_free($355); + HEAP32[$zFile>>2] = 0; + } + $356 = HEAP32[$flags>>2]|0; + $357 = HEAP32[$3>>2]|0; + HEAP32[$357>>2] = $356; + $358 = HEAP32[$zFile>>2]|0; + $359 = HEAP32[$5>>2]|0; + HEAP32[$359>>2] = $358; + $360 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $360; + $361 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($361|0); +} +function _sqlite3BtreeOpen($pVfs,$zFilename,$db,$ppBtree,$flags,$vfsFlags) { + $pVfs = $pVfs|0; + $zFilename = $zFilename|0; + $db = $db|0; + $ppBtree = $ppBtree|0; + $flags = $flags|0; + $vfsFlags = $vfsFlags|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iDb = 0, $isMemdb = 0, $isTempDb = 0, $mutexOpen = 0, $nFullPathname = 0, $nReserve = 0, $p = 0, $pBt = 0, $pExisting = 0, $pSib = 0; + var $rc = 0, $zDbHeader = 0, $zFullPathname = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 192|0; + $0 = sp + 56|0; + $1 = sp + 44|0; + $2 = sp + 48|0; + $3 = sp + 52|0; + $4 = sp + 60|0; + $5 = sp + 64|0; + $6 = sp + 68|0; + $pBt = sp + 72|0; + $p = sp + 40|0; + $mutexOpen = sp + 12|0; + $rc = sp; + $nReserve = sp + 76|0; + $zDbHeader = sp + 80|0; + $isTempDb = sp + 4|0; + $isMemdb = sp + 8|0; + $nFullPathname = sp + 16|0; + $zFullPathname = sp + 20|0; + $iDb = sp + 24|0; + $pExisting = sp + 28|0; + $i = sp + 32|0; + $pSib = sp + 36|0; + HEAP32[$1>>2] = $pVfs; + HEAP32[$2>>2] = $zFilename; + HEAP32[$3>>2] = $db; + HEAP32[$4>>2] = $ppBtree; + HEAP32[$5>>2] = $flags; + HEAP32[$6>>2] = $vfsFlags; + HEAP32[$pBt>>2] = 0; + HEAP32[$mutexOpen>>2] = 0; + HEAP32[$rc>>2] = 0; + $7 = HEAP32[$2>>2]|0; + $8 = ($7|0)==(0|0); + if ($8) { + $14 = 1; + } else { + $9 = HEAP32[$2>>2]|0; + $10 = HEAP8[$9>>0]|0; + $11 = $10 << 24 >> 24; + $12 = ($11|0)==(0); + $14 = $12; + } + $13 = $14&1; + HEAP32[$isTempDb>>2] = $13; + $15 = HEAP32[$2>>2]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = HEAP32[$2>>2]|0; + $18 = (_strcmp($17,10824)|0); + $19 = ($18|0)==(0); + if ($19) { + $29 = 1; + } else { + label = 5; + } + } else { + label = 5; + } + do { + if ((label|0) == 5) { + $20 = HEAP32[$isTempDb>>2]|0; + $21 = ($20|0)!=(0); + if ($21) { + $22 = HEAP32[$3>>2]|0; + $23 = (_sqlite3TempInMemory($22)|0); + $24 = ($23|0)!=(0); + if ($24) { + $29 = 1; + break; + } + } + $25 = HEAP32[$6>>2]|0; + $26 = $25 & 128; + $27 = ($26|0)!=(0); + $29 = $27; + } + } while(0); + $28 = $29&1; + HEAP32[$isMemdb>>2] = $28; + $30 = HEAP32[$isMemdb>>2]|0; + $31 = ($30|0)!=(0); + if ($31) { + $32 = HEAP32[$5>>2]|0; + $33 = $32 | 2; + HEAP32[$5>>2] = $33; + } + $34 = HEAP32[$6>>2]|0; + $35 = $34 & 256; + $36 = ($35|0)!=(0); + do { + if ($36) { + $37 = HEAP32[$isMemdb>>2]|0; + $38 = ($37|0)!=(0); + if (!($38)) { + $39 = HEAP32[$isTempDb>>2]|0; + $40 = ($39|0)!=(0); + if (!($40)) { + break; + } + } + $41 = HEAP32[$6>>2]|0; + $42 = $41 & -257; + $43 = $42 | 512; + HEAP32[$6>>2] = $43; + } + } while(0); + $44 = (_sqlite3MallocZero(44)|0); + HEAP32[$p>>2] = $44; + $45 = HEAP32[$p>>2]|0; + $46 = ($45|0)!=(0|0); + if (!($46)) { + HEAP32[$0>>2] = 7; + $387 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($387|0); + } + $47 = HEAP32[$p>>2]|0; + $48 = (($47) + 8|0); + HEAP8[$48>>0] = 0; + $49 = HEAP32[$3>>2]|0; + $50 = HEAP32[$p>>2]|0; + HEAP32[$50>>2] = $49; + $51 = HEAP32[$p>>2]|0; + $52 = HEAP32[$p>>2]|0; + $53 = (($52) + 28|0); + HEAP32[$53>>2] = $51; + $54 = HEAP32[$p>>2]|0; + $55 = (($54) + 28|0); + $56 = (($55) + 4|0); + HEAP32[$56>>2] = 1; + $57 = HEAP32[$isTempDb>>2]|0; + $58 = ($57|0)==(0); + do { + if ($58) { + $59 = HEAP32[$isMemdb>>2]|0; + $60 = ($59|0)==(0); + if (!($60)) { + $61 = HEAP32[$6>>2]|0; + $62 = $61 & 64; + $63 = ($62|0)!=(0); + if (!($63)) { + break; + } + } + $64 = HEAP32[$6>>2]|0; + $65 = $64 & 131072; + $66 = ($65|0)!=(0); + if ($66) { + $67 = HEAP32[$1>>2]|0; + $68 = (($67) + 8|0); + $69 = HEAP32[$68>>2]|0; + $70 = (($69) + 1)|0; + HEAP32[$nFullPathname>>2] = $70; + $71 = HEAP32[$nFullPathname>>2]|0; + $72 = (_sqlite3Malloc($71)|0); + HEAP32[$zFullPathname>>2] = $72; + $73 = HEAP32[$p>>2]|0; + $74 = (($73) + 9|0); + HEAP8[$74>>0] = 1; + $75 = HEAP32[$zFullPathname>>2]|0; + $76 = ($75|0)!=(0|0); + if (!($76)) { + $77 = HEAP32[$p>>2]|0; + _sqlite3_free($77); + HEAP32[$0>>2] = 7; + $387 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($387|0); + } + $78 = HEAP32[$isMemdb>>2]|0; + $79 = ($78|0)!=(0); + if ($79) { + $80 = HEAP32[$zFullPathname>>2]|0; + $81 = HEAP32[$2>>2]|0; + $82 = HEAP32[$2>>2]|0; + $83 = (_sqlite3Strlen30($82)|0); + $84 = (($83) + 1)|0; + _memcpy(($80|0),($81|0),($84|0))|0; + } else { + $85 = HEAP32[$1>>2]|0; + $86 = HEAP32[$2>>2]|0; + $87 = HEAP32[$nFullPathname>>2]|0; + $88 = HEAP32[$zFullPathname>>2]|0; + $89 = (_sqlite3OsFullPathname($85,$86,$87,$88)|0); + HEAP32[$rc>>2] = $89; + $90 = HEAP32[$rc>>2]|0; + $91 = ($90|0)!=(0); + if ($91) { + $92 = HEAP32[$zFullPathname>>2]|0; + _sqlite3_free($92); + $93 = HEAP32[$p>>2]|0; + _sqlite3_free($93); + $94 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $94; + $387 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($387|0); + } + } + $95 = HEAP32[10840>>2]|0; + HEAP32[$pBt>>2] = $95; + while(1) { + $96 = HEAP32[$pBt>>2]|0; + $97 = ($96|0)!=(0|0); + if (!($97)) { + break; + } + $98 = HEAP32[$zFullPathname>>2]|0; + $99 = HEAP32[$pBt>>2]|0; + $100 = HEAP32[$99>>2]|0; + $101 = (_sqlite3PagerFilename($100,0)|0); + $102 = (_strcmp($98,$101)|0); + $103 = (0)==($102|0); + if ($103) { + $104 = HEAP32[$pBt>>2]|0; + $105 = HEAP32[$104>>2]|0; + $106 = (_sqlite3PagerVfs($105)|0); + $107 = HEAP32[$1>>2]|0; + $108 = ($106|0)==($107|0); + if ($108) { + label = 30; + break; + } + } + $140 = HEAP32[$pBt>>2]|0; + $141 = (($140) + 68|0); + $142 = HEAP32[$141>>2]|0; + HEAP32[$pBt>>2] = $142; + } + do { + if ((label|0) == 30) { + $109 = HEAP32[$3>>2]|0; + $110 = (($109) + 20|0); + $111 = HEAP32[$110>>2]|0; + $112 = (($111) - 1)|0; + HEAP32[$iDb>>2] = $112; + while(1) { + $113 = HEAP32[$iDb>>2]|0; + $114 = ($113|0)>=(0); + if (!($114)) { + label = 36; + break; + } + $115 = HEAP32[$iDb>>2]|0; + $116 = HEAP32[$3>>2]|0; + $117 = (($116) + 16|0); + $118 = HEAP32[$117>>2]|0; + $119 = (($118) + ($115<<4)|0); + $120 = (($119) + 4|0); + $121 = HEAP32[$120>>2]|0; + HEAP32[$pExisting>>2] = $121; + $122 = HEAP32[$pExisting>>2]|0; + $123 = ($122|0)!=(0|0); + if ($123) { + $124 = HEAP32[$pExisting>>2]|0; + $125 = (($124) + 4|0); + $126 = HEAP32[$125>>2]|0; + $127 = HEAP32[$pBt>>2]|0; + $128 = ($126|0)==($127|0); + if ($128) { + break; + } + } + $131 = HEAP32[$iDb>>2]|0; + $132 = (($131) + -1)|0; + HEAP32[$iDb>>2] = $132; + } + if ((label|0) == 36) { + $133 = HEAP32[$pBt>>2]|0; + $134 = HEAP32[$p>>2]|0; + $135 = (($134) + 4|0); + HEAP32[$135>>2] = $133; + $136 = HEAP32[$pBt>>2]|0; + $137 = (($136) + 64|0); + $138 = HEAP32[$137>>2]|0; + $139 = (($138) + 1)|0; + HEAP32[$137>>2] = $139; + break; + } + $129 = HEAP32[$zFullPathname>>2]|0; + _sqlite3_free($129); + $130 = HEAP32[$p>>2]|0; + _sqlite3_free($130); + HEAP32[$0>>2] = 19; + $387 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($387|0); + } + } while(0); + $143 = HEAP32[$zFullPathname>>2]|0; + _sqlite3_free($143); + } + } + } while(0); + $144 = HEAP32[$pBt>>2]|0; + $145 = ($144|0)==(0|0); + do { + if ($145) { + $146 = (_sqlite3MallocZero(84)|0); + HEAP32[$pBt>>2] = $146; + $147 = HEAP32[$pBt>>2]|0; + $148 = ($147|0)==(0|0); + if ($148) { + HEAP32[$rc>>2] = 7; + break; + } + $149 = HEAP32[$1>>2]|0; + $150 = HEAP32[$pBt>>2]|0; + $151 = HEAP32[$2>>2]|0; + $152 = HEAP32[$5>>2]|0; + $153 = HEAP32[$6>>2]|0; + $154 = (_sqlite3PagerOpen($149,$150,$151,76,$152,$153,14)|0); + HEAP32[$rc>>2] = $154; + $155 = HEAP32[$rc>>2]|0; + $156 = ($155|0)==(0); + if ($156) { + $157 = HEAP32[$pBt>>2]|0; + $158 = HEAP32[$157>>2]|0; + $159 = HEAP32[$3>>2]|0; + $160 = (($159) + 40|0); + $161 = $160; + $162 = $161; + $163 = HEAP32[$162>>2]|0; + $164 = (($161) + 4)|0; + $165 = $164; + $166 = HEAP32[$165>>2]|0; + _sqlite3PagerSetMmapLimit($158,$163,$166); + $167 = HEAP32[$pBt>>2]|0; + $168 = HEAP32[$167>>2]|0; + $169 = (_sqlite3PagerReadFileheader($168,100,$zDbHeader)|0); + HEAP32[$rc>>2] = $169; + } + $170 = HEAP32[$rc>>2]|0; + $171 = ($170|0)!=(0); + if (!($171)) { + $172 = HEAP32[$5>>2]|0; + $173 = $172&255; + $174 = HEAP32[$pBt>>2]|0; + $175 = (($174) + 16|0); + HEAP8[$175>>0] = $173; + $176 = HEAP32[$3>>2]|0; + $177 = HEAP32[$pBt>>2]|0; + $178 = (($177) + 4|0); + HEAP32[$178>>2] = $176; + $179 = HEAP32[$pBt>>2]|0; + $180 = HEAP32[$179>>2]|0; + $181 = HEAP32[$pBt>>2]|0; + _sqlite3PagerSetBusyhandler($180,42,$181); + $182 = HEAP32[$pBt>>2]|0; + $183 = HEAP32[$p>>2]|0; + $184 = (($183) + 4|0); + HEAP32[$184>>2] = $182; + $185 = HEAP32[$pBt>>2]|0; + $186 = (($185) + 8|0); + HEAP32[$186>>2] = 0; + $187 = HEAP32[$pBt>>2]|0; + $188 = (($187) + 12|0); + HEAP32[$188>>2] = 0; + $189 = HEAP32[$pBt>>2]|0; + $190 = HEAP32[$189>>2]|0; + $191 = (_sqlite3PagerIsreadonly($190)|0); + $192 = ($191<<24>>24)!=(0); + if ($192) { + $193 = HEAP32[$pBt>>2]|0; + $194 = (($193) + 22|0); + $195 = HEAP16[$194>>1]|0; + $196 = $195&65535; + $197 = $196 | 1; + $198 = $197&65535; + HEAP16[$194>>1] = $198; + } + $199 = (($zDbHeader) + 16|0); + $200 = HEAP8[$199>>0]|0; + $201 = $200&255; + $202 = $201 << 8; + $203 = (($zDbHeader) + 17|0); + $204 = HEAP8[$203>>0]|0; + $205 = $204&255; + $206 = $205 << 16; + $207 = $202 | $206; + $208 = HEAP32[$pBt>>2]|0; + $209 = (($208) + 32|0); + HEAP32[$209>>2] = $207; + $210 = HEAP32[$pBt>>2]|0; + $211 = (($210) + 32|0); + $212 = HEAP32[$211>>2]|0; + $213 = ($212>>>0)<(512); + if ($213) { + label = 50; + } else { + $214 = HEAP32[$pBt>>2]|0; + $215 = (($214) + 32|0); + $216 = HEAP32[$215>>2]|0; + $217 = ($216>>>0)>(65536); + if ($217) { + label = 50; + } else { + $218 = HEAP32[$pBt>>2]|0; + $219 = (($218) + 32|0); + $220 = HEAP32[$219>>2]|0; + $221 = (($220) - 1)|0; + $222 = HEAP32[$pBt>>2]|0; + $223 = (($222) + 32|0); + $224 = HEAP32[$223>>2]|0; + $225 = $221 & $224; + $226 = ($225|0)!=(0); + if ($226) { + label = 50; + } else { + $237 = (($zDbHeader) + 20|0); + $238 = HEAP8[$237>>0]|0; + HEAP8[$nReserve>>0] = $238; + $239 = HEAP32[$pBt>>2]|0; + $240 = (($239) + 22|0); + $241 = HEAP16[$240>>1]|0; + $242 = $241&65535; + $243 = $242 | 2; + $244 = $243&65535; + HEAP16[$240>>1] = $244; + $245 = (($zDbHeader) + 52|0); + $246 = (_sqlite3Get4byte($245)|0); + $247 = ($246|0)!=(0); + $248 = $247 ? 1 : 0; + $249 = $248&255; + $250 = HEAP32[$pBt>>2]|0; + $251 = (($250) + 17|0); + HEAP8[$251>>0] = $249; + $252 = (($zDbHeader) + 64|0); + $253 = (_sqlite3Get4byte($252)|0); + $254 = ($253|0)!=(0); + $255 = $254 ? 1 : 0; + $256 = $255&255; + $257 = HEAP32[$pBt>>2]|0; + $258 = (($257) + 18|0); + HEAP8[$258>>0] = $256; + } + } + } + if ((label|0) == 50) { + $227 = HEAP32[$pBt>>2]|0; + $228 = (($227) + 32|0); + HEAP32[$228>>2] = 0; + $229 = HEAP32[$2>>2]|0; + $230 = ($229|0)!=(0|0); + if ($230) { + $231 = HEAP32[$isMemdb>>2]|0; + $232 = ($231|0)!=(0); + if (!($232)) { + $233 = HEAP32[$pBt>>2]|0; + $234 = (($233) + 17|0); + HEAP8[$234>>0] = 0; + $235 = HEAP32[$pBt>>2]|0; + $236 = (($235) + 18|0); + HEAP8[$236>>0] = 0; + } + } + HEAP8[$nReserve>>0] = 0; + } + $259 = HEAP32[$pBt>>2]|0; + $260 = HEAP32[$259>>2]|0; + $261 = HEAP32[$pBt>>2]|0; + $262 = (($261) + 32|0); + $263 = HEAP8[$nReserve>>0]|0; + $264 = $263&255; + $265 = (_sqlite3PagerSetPagesize($260,$262,$264)|0); + HEAP32[$rc>>2] = $265; + $266 = HEAP32[$rc>>2]|0; + $267 = ($266|0)!=(0); + if (!($267)) { + $268 = HEAP32[$pBt>>2]|0; + $269 = (($268) + 32|0); + $270 = HEAP32[$269>>2]|0; + $271 = HEAP8[$nReserve>>0]|0; + $272 = $271&255; + $273 = (($270) - ($272))|0; + $274 = HEAP32[$pBt>>2]|0; + $275 = (($274) + 36|0); + HEAP32[$275>>2] = $273; + $276 = HEAP32[$p>>2]|0; + $277 = (($276) + 9|0); + $278 = HEAP8[$277>>0]|0; + $279 = ($278<<24>>24)!=(0); + if ($279) { + $280 = HEAP32[$pBt>>2]|0; + $281 = (($280) + 64|0); + HEAP32[$281>>2] = 1; + $282 = HEAP32[10840>>2]|0; + $283 = HEAP32[$pBt>>2]|0; + $284 = (($283) + 68|0); + HEAP32[$284>>2] = $282; + $285 = HEAP32[$pBt>>2]|0; + HEAP32[10840>>2] = $285; + label = 58; + } else { + label = 58; + } + } + } + } else { + label = 58; + } + } while(0); + if ((label|0) == 58) { + $286 = HEAP32[$p>>2]|0; + $287 = (($286) + 9|0); + $288 = HEAP8[$287>>0]|0; + $289 = ($288<<24>>24)!=(0); + L88: do { + if ($289) { + HEAP32[$i>>2] = 0; + while(1) { + $290 = HEAP32[$i>>2]|0; + $291 = HEAP32[$3>>2]|0; + $292 = (($291) + 20|0); + $293 = HEAP32[$292>>2]|0; + $294 = ($290|0)<($293|0); + if (!($294)) { + break L88; + } + $295 = HEAP32[$i>>2]|0; + $296 = HEAP32[$3>>2]|0; + $297 = (($296) + 16|0); + $298 = HEAP32[$297>>2]|0; + $299 = (($298) + ($295<<4)|0); + $300 = (($299) + 4|0); + $301 = HEAP32[$300>>2]|0; + HEAP32[$pSib>>2] = $301; + $302 = ($301|0)!=(0|0); + if ($302) { + $303 = HEAP32[$pSib>>2]|0; + $304 = (($303) + 9|0); + $305 = HEAP8[$304>>0]|0; + $306 = $305&255; + $307 = ($306|0)!=(0); + if ($307) { + break; + } + } + $363 = HEAP32[$i>>2]|0; + $364 = (($363) + 1)|0; + HEAP32[$i>>2] = $364; + } + while(1) { + $308 = HEAP32[$pSib>>2]|0; + $309 = (($308) + 24|0); + $310 = HEAP32[$309>>2]|0; + $311 = ($310|0)!=(0|0); + if (!($311)) { + break; + } + $312 = HEAP32[$pSib>>2]|0; + $313 = (($312) + 24|0); + $314 = HEAP32[$313>>2]|0; + HEAP32[$pSib>>2] = $314; + } + $315 = HEAP32[$p>>2]|0; + $316 = (($315) + 4|0); + $317 = HEAP32[$316>>2]|0; + $318 = HEAP32[$pSib>>2]|0; + $319 = (($318) + 4|0); + $320 = HEAP32[$319>>2]|0; + $321 = ($317>>>0)<($320>>>0); + if ($321) { + $322 = HEAP32[$pSib>>2]|0; + $323 = HEAP32[$p>>2]|0; + $324 = (($323) + 20|0); + HEAP32[$324>>2] = $322; + $325 = HEAP32[$p>>2]|0; + $326 = (($325) + 24|0); + HEAP32[$326>>2] = 0; + $327 = HEAP32[$p>>2]|0; + $328 = HEAP32[$pSib>>2]|0; + $329 = (($328) + 24|0); + HEAP32[$329>>2] = $327; + break; + } + while(1) { + $330 = HEAP32[$pSib>>2]|0; + $331 = (($330) + 20|0); + $332 = HEAP32[$331>>2]|0; + $333 = ($332|0)!=(0|0); + if ($333) { + $334 = HEAP32[$pSib>>2]|0; + $335 = (($334) + 20|0); + $336 = HEAP32[$335>>2]|0; + $337 = (($336) + 4|0); + $338 = HEAP32[$337>>2]|0; + $339 = HEAP32[$p>>2]|0; + $340 = (($339) + 4|0); + $341 = HEAP32[$340>>2]|0; + $342 = ($338>>>0)<($341>>>0); + $388 = $342; + } else { + $388 = 0; + } + $343 = HEAP32[$pSib>>2]|0; + $344 = (($343) + 20|0); + $345 = HEAP32[$344>>2]|0; + if (!($388)) { + break; + } + HEAP32[$pSib>>2] = $345; + } + $346 = HEAP32[$p>>2]|0; + $347 = (($346) + 20|0); + HEAP32[$347>>2] = $345; + $348 = HEAP32[$pSib>>2]|0; + $349 = HEAP32[$p>>2]|0; + $350 = (($349) + 24|0); + HEAP32[$350>>2] = $348; + $351 = HEAP32[$p>>2]|0; + $352 = (($351) + 20|0); + $353 = HEAP32[$352>>2]|0; + $354 = ($353|0)!=(0|0); + if ($354) { + $355 = HEAP32[$p>>2]|0; + $356 = HEAP32[$p>>2]|0; + $357 = (($356) + 20|0); + $358 = HEAP32[$357>>2]|0; + $359 = (($358) + 24|0); + HEAP32[$359>>2] = $355; + } + $360 = HEAP32[$p>>2]|0; + $361 = HEAP32[$pSib>>2]|0; + $362 = (($361) + 20|0); + HEAP32[$362>>2] = $360; + } + } while(0); + $365 = HEAP32[$p>>2]|0; + $366 = HEAP32[$4>>2]|0; + HEAP32[$366>>2] = $365; + } + $367 = HEAP32[$rc>>2]|0; + $368 = ($367|0)!=(0); + if ($368) { + $369 = HEAP32[$pBt>>2]|0; + $370 = ($369|0)!=(0|0); + if ($370) { + $371 = HEAP32[$pBt>>2]|0; + $372 = HEAP32[$371>>2]|0; + $373 = ($372|0)!=(0|0); + if ($373) { + $374 = HEAP32[$pBt>>2]|0; + $375 = HEAP32[$374>>2]|0; + (_sqlite3PagerClose($375)|0); + } + } + $376 = HEAP32[$pBt>>2]|0; + _sqlite3_free($376); + $377 = HEAP32[$p>>2]|0; + _sqlite3_free($377); + $378 = HEAP32[$4>>2]|0; + HEAP32[$378>>2] = 0; + } else { + $379 = HEAP32[$p>>2]|0; + $380 = (_sqlite3BtreeSchema($379,0,0)|0); + $381 = ($380|0)==(0|0); + if ($381) { + $382 = HEAP32[$p>>2]|0; + $383 = (($382) + 4|0); + $384 = HEAP32[$383>>2]|0; + $385 = HEAP32[$384>>2]|0; + _sqlite3PagerSetCachesize($385,2000); + } + } + $386 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $386; + $387 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($387|0); +} +function _sqlite3SchemaGet($db,$pBt) { + $db = $db|0; + $pBt = $pBt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $p = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pBt; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = HEAP32[$1>>2]|0; + $5 = (_sqlite3BtreeSchema($4,84,15)|0); + HEAP32[$p>>2] = $5; + } else { + $6 = (_sqlite3DbMallocZero(0,84)|0); + HEAP32[$p>>2] = $6; + } + $7 = HEAP32[$p>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 64|0); + HEAP8[$10>>0] = 1; + $26 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($26|0); + } + $11 = HEAP32[$p>>2]|0; + $12 = (($11) + 76|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = (0)==($14|0); + if (!($15)) { + $26 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($26|0); + } + $16 = HEAP32[$p>>2]|0; + $17 = (($16) + 8|0); + _sqlite3HashInit($17); + $18 = HEAP32[$p>>2]|0; + $19 = (($18) + 24|0); + _sqlite3HashInit($19); + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 40|0); + _sqlite3HashInit($21); + $22 = HEAP32[$p>>2]|0; + $23 = (($22) + 56|0); + _sqlite3HashInit($23); + $24 = HEAP32[$p>>2]|0; + $25 = (($24) + 77|0); + HEAP8[$25>>0] = 1; + $26 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($26|0); +} +function _sqlite3RegisterBuiltinFunctions($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $rc = sp; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3_overload_function($1,10816,2)|0); + HEAP32[$rc>>2] = $2; + $3 = HEAP32[$rc>>2]|0; + $4 = ($3|0)==(7); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 64|0); + HEAP8[$6>>0] = 1; + STACKTOP = sp;return; +} +function _sqlite3AutoLoadExtensions($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $go = 0, $i = 0, $rc = 0, $vararg_buffer = 0, $xInit = 0, $zErrmsg = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 24|0; + $i = sp + 4|0; + $go = sp + 8|0; + $rc = sp + 12|0; + $xInit = sp + 16|0; + $zErrmsg = sp + 20|0; + HEAP32[$0>>2] = $db; + HEAP32[$go>>2] = 1; + $1 = HEAP32[1792>>2]|0; + $2 = ($1|0)==(0); + if ($2) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $3 = HEAP32[$go>>2]|0; + $4 = ($3|0)!=(0); + if (!($4)) { + break; + } + $5 = HEAP32[$i>>2]|0; + $6 = HEAP32[1792>>2]|0; + $7 = ($5|0)>=($6|0); + if ($7) { + HEAP32[$xInit>>2] = 0; + HEAP32[$go>>2] = 0; + } else { + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[((1792 + 4|0))>>2]|0; + $10 = (($9) + ($8<<2)|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$xInit>>2] = $11; + } + HEAP32[$zErrmsg>>2] = 0; + $12 = HEAP32[$xInit>>2]|0; + $13 = ($12|0)!=(0|0); + if ($13) { + $14 = HEAP32[$xInit>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (FUNCTION_TABLE_iiii[$14 & 31]($15,$zErrmsg,10008)|0); + HEAP32[$rc>>2] = $16; + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$rc>>2]|0; + $20 = HEAP32[$zErrmsg>>2]|0; + HEAP32[$vararg_buffer>>2] = $20; + _sqlite3Error($18,$19,10776,$vararg_buffer); + HEAP32[$go>>2] = 0; + } + } + $21 = HEAP32[$zErrmsg>>2]|0; + _sqlite3_free($21); + $22 = HEAP32[$i>>2]|0; + $23 = (($22) + 1)|0; + HEAP32[$i>>2] = $23; + } + STACKTOP = sp;return; +} +function _sqlite3Fts3Init($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0; + var $8 = 0, $9 = 0, $pHash = 0, $pPorter = 0, $pSimple = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $rc = sp + 4|0; + $pHash = sp + 8|0; + $pSimple = sp + 12|0; + $pPorter = sp + 16|0; + HEAP32[$1>>2] = $db; + HEAP32[$rc>>2] = 0; + HEAP32[$pHash>>2] = 0; + HEAP32[$pSimple>>2] = 0; + HEAP32[$pPorter>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = (_sqlite3Fts3InitAux($2)|0); + HEAP32[$rc>>2] = $3; + $4 = HEAP32[$rc>>2]|0; + $5 = ($4|0)!=(0); + if ($5) { + $6 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $6; + $61 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($61|0); + } + _sqlite3Fts3SimpleTokenizerModule($pSimple); + _sqlite3Fts3PorterTokenizerModule($pPorter); + $7 = (_sqlite3_malloc(20)|0); + HEAP32[$pHash>>2] = $7; + $8 = HEAP32[$pHash>>2]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = HEAP32[$pHash>>2]|0; + _sqlite3Fts3HashInit($10,1,1); + } else { + HEAP32[$rc>>2] = 7; + } + $11 = HEAP32[$rc>>2]|0; + $12 = ($11|0)==(0); + do { + if ($12) { + $13 = HEAP32[$pHash>>2]|0; + $14 = HEAP32[$pSimple>>2]|0; + $15 = (_sqlite3Fts3HashInsert($13,3672,7,$14)|0); + $16 = ($15|0)!=(0|0); + if (!($16)) { + $17 = HEAP32[$pHash>>2]|0; + $18 = HEAP32[$pPorter>>2]|0; + $19 = (_sqlite3Fts3HashInsert($17,3680,7,$18)|0); + $20 = ($19|0)!=(0|0); + if (!($20)) { + break; + } + } + HEAP32[$rc>>2] = 7; + } + } while(0); + $21 = HEAP32[$rc>>2]|0; + $22 = (0)==($21|0); + if ($22) { + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$pHash>>2]|0; + $25 = (_sqlite3Fts3InitHashTable($23,$24,3688)|0); + HEAP32[$rc>>2] = $25; + $26 = (0)==($25|0); + if ($26) { + $27 = HEAP32[$1>>2]|0; + $28 = (_sqlite3_overload_function($27,3704,-1)|0); + HEAP32[$rc>>2] = $28; + $29 = (0)==($28|0); + if ($29) { + $30 = HEAP32[$1>>2]|0; + $31 = (_sqlite3_overload_function($30,3712,1)|0); + HEAP32[$rc>>2] = $31; + $32 = (0)==($31|0); + if ($32) { + $33 = HEAP32[$1>>2]|0; + $34 = (_sqlite3_overload_function($33,3720,1)|0); + HEAP32[$rc>>2] = $34; + $35 = (0)==($34|0); + if ($35) { + $36 = HEAP32[$1>>2]|0; + $37 = (_sqlite3_overload_function($36,3720,2)|0); + HEAP32[$rc>>2] = $37; + $38 = (0)==($37|0); + if ($38) { + $39 = HEAP32[$1>>2]|0; + $40 = (_sqlite3_overload_function($39,3736,1)|0); + HEAP32[$rc>>2] = $40; + $41 = (0)==($40|0); + if ($41) { + $42 = HEAP32[$1>>2]|0; + $43 = HEAP32[$pHash>>2]|0; + $44 = (_sqlite3_create_module_v2($42,3752,3760,$43,16)|0); + HEAP32[$rc>>2] = $44; + $45 = HEAP32[$rc>>2]|0; + $46 = ($45|0)==(0); + if ($46) { + $47 = HEAP32[$1>>2]|0; + $48 = HEAP32[$pHash>>2]|0; + $49 = (_sqlite3_create_module_v2($47,3856,3760,$48,0)|0); + HEAP32[$rc>>2] = $49; + } + $50 = HEAP32[$rc>>2]|0; + $51 = ($50|0)==(0); + if ($51) { + $52 = HEAP32[$1>>2]|0; + $53 = HEAP32[$pHash>>2]|0; + $54 = (_sqlite3Fts3InitTok($52,$53)|0); + HEAP32[$rc>>2] = $54; + } + $55 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $55; + $61 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($61|0); + } + } + } + } + } + } + } + $56 = HEAP32[$pHash>>2]|0; + $57 = ($56|0)!=(0|0); + if ($57) { + $58 = HEAP32[$pHash>>2]|0; + _sqlite3Fts3HashClear($58); + $59 = HEAP32[$pHash>>2]|0; + _sqlite3_free($59); + } + $60 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $60; + $61 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($61|0); +} +function _sqlite3Fts3InitAux($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $rc = sp; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3_create_module($1,9872,9776,0)|0); + HEAP32[$rc>>2] = $2; + $3 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _sqlite3Fts3SimpleTokenizerModule($ppModule) { + $ppModule = $ppModule|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $ppModule; + $1 = HEAP32[$0>>2]|0; + HEAP32[$1>>2] = 9744; + STACKTOP = sp;return; +} +function _sqlite3Fts3PorterTokenizerModule($ppModule) { + $ppModule = $ppModule|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $ppModule; + $1 = HEAP32[$0>>2]|0; + HEAP32[$1>>2] = 9128; + STACKTOP = sp;return; +} +function _sqlite3Fts3HashInit($pNew,$keyClass,$copyKey) { + $pNew = $pNew|0; + $keyClass = $keyClass|0; + $copyKey = $copyKey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + $1 = sp + 5|0; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pNew; + HEAP8[$1>>0] = $keyClass; + HEAP8[$2>>0] = $copyKey; + $3 = HEAP8[$1>>0]|0; + $4 = HEAP32[$0>>2]|0; + HEAP8[$4>>0] = $3; + $5 = HEAP8[$2>>0]|0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 1|0); + HEAP8[$7>>0] = $5; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 8|0); + HEAP32[$9>>2] = 0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 4|0); + HEAP32[$11>>2] = 0; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 12|0); + HEAP32[$13>>2] = 0; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 16|0); + HEAP32[$15>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3Fts3HashInsert($pH,$pKey,$nKey,$data) { + $pH = $pH|0; + $pKey = $pKey|0; + $nKey = $nKey|0; + $data = $data|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; + var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; + var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; + var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; + var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $elem = 0, $h = 0, $hraw = 0, $new_elem = 0; + var $old_data = 0, $xHash = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $hraw = sp + 20|0; + $h = sp + 12|0; + $elem = sp + 8|0; + $new_elem = sp + 4|0; + $xHash = sp; + $old_data = sp + 16|0; + HEAP32[$1>>2] = $pH; + HEAP32[$2>>2] = $pKey; + HEAP32[$3>>2] = $nKey; + HEAP32[$4>>2] = $data; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP8[$5>>0]|0; + $7 = $6 << 24 >> 24; + $8 = (_ftsHashFunction($7)|0); + HEAP32[$xHash>>2] = $8; + $9 = HEAP32[$xHash>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$3>>2]|0; + $12 = (FUNCTION_TABLE_iii[$9 & 127]($10,$11)|0); + HEAP32[$hraw>>2] = $12; + $13 = HEAP32[$hraw>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 12|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) - 1)|0; + $18 = $13 & $17; + HEAP32[$h>>2] = $18; + $19 = HEAP32[$1>>2]|0; + $20 = HEAP32[$2>>2]|0; + $21 = HEAP32[$3>>2]|0; + $22 = HEAP32[$h>>2]|0; + $23 = (_fts3FindElementByHash($19,$20,$21,$22)|0); + HEAP32[$elem>>2] = $23; + $24 = HEAP32[$elem>>2]|0; + $25 = ($24|0)!=(0|0); + if ($25) { + $26 = HEAP32[$elem>>2]|0; + $27 = (($26) + 8|0); + $28 = HEAP32[$27>>2]|0; + HEAP32[$old_data>>2] = $28; + $29 = HEAP32[$4>>2]|0; + $30 = ($29|0)==(0|0); + if ($30) { + $31 = HEAP32[$1>>2]|0; + $32 = HEAP32[$elem>>2]|0; + $33 = HEAP32[$h>>2]|0; + _fts3RemoveElementByHash($31,$32,$33); + } else { + $34 = HEAP32[$4>>2]|0; + $35 = HEAP32[$elem>>2]|0; + $36 = (($35) + 8|0); + HEAP32[$36>>2] = $34; + } + $37 = HEAP32[$old_data>>2]|0; + HEAP32[$0>>2] = $37; + $115 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($115|0); + } + $38 = HEAP32[$4>>2]|0; + $39 = ($38|0)==(0|0); + if ($39) { + HEAP32[$0>>2] = 0; + $115 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($115|0); + } + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 12|0); + $42 = HEAP32[$41>>2]|0; + $43 = ($42|0)==(0); + if ($43) { + $44 = HEAP32[$1>>2]|0; + $45 = (_fts3Rehash($44,8)|0); + $46 = ($45|0)!=(0); + if (!($46)) { + label = 10; + } + } else { + label = 10; + } + do { + if ((label|0) == 10) { + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 4|0); + $49 = HEAP32[$48>>2]|0; + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 12|0); + $52 = HEAP32[$51>>2]|0; + $53 = ($49|0)>=($52|0); + if ($53) { + $54 = HEAP32[$1>>2]|0; + $55 = HEAP32[$1>>2]|0; + $56 = (($55) + 12|0); + $57 = HEAP32[$56>>2]|0; + $58 = $57<<1; + $59 = (_fts3Rehash($54,$58)|0); + $60 = ($59|0)!=(0); + if ($60) { + break; + } + } + $64 = (_fts3HashMalloc(20)|0); + HEAP32[$new_elem>>2] = $64; + $65 = HEAP32[$new_elem>>2]|0; + $66 = ($65|0)==(0|0); + if ($66) { + $67 = HEAP32[$4>>2]|0; + HEAP32[$0>>2] = $67; + $115 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($115|0); + } + $68 = HEAP32[$1>>2]|0; + $69 = (($68) + 1|0); + $70 = HEAP8[$69>>0]|0; + $71 = $70 << 24 >> 24; + $72 = ($71|0)!=(0); + do { + if ($72) { + $73 = HEAP32[$2>>2]|0; + $74 = ($73|0)!=(0|0); + if ($74) { + $75 = HEAP32[$3>>2]|0; + $76 = (_fts3HashMalloc($75)|0); + $77 = HEAP32[$new_elem>>2]|0; + $78 = (($77) + 12|0); + HEAP32[$78>>2] = $76; + $79 = HEAP32[$new_elem>>2]|0; + $80 = (($79) + 12|0); + $81 = HEAP32[$80>>2]|0; + $82 = ($81|0)==(0|0); + $83 = HEAP32[$new_elem>>2]|0; + if (!($82)) { + $85 = (($83) + 12|0); + $86 = HEAP32[$85>>2]|0; + $87 = HEAP32[$2>>2]|0; + $88 = HEAP32[$3>>2]|0; + _memcpy(($86|0),($87|0),($88|0))|0; + break; + } + _fts3HashFree($83); + $84 = HEAP32[$4>>2]|0; + HEAP32[$0>>2] = $84; + $115 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($115|0); + } else { + label = 20; + } + } else { + label = 20; + } + } while(0); + if ((label|0) == 20) { + $89 = HEAP32[$2>>2]|0; + $90 = HEAP32[$new_elem>>2]|0; + $91 = (($90) + 12|0); + HEAP32[$91>>2] = $89; + } + $92 = HEAP32[$3>>2]|0; + $93 = HEAP32[$new_elem>>2]|0; + $94 = (($93) + 16|0); + HEAP32[$94>>2] = $92; + $95 = HEAP32[$1>>2]|0; + $96 = (($95) + 4|0); + $97 = HEAP32[$96>>2]|0; + $98 = (($97) + 1)|0; + HEAP32[$96>>2] = $98; + $99 = HEAP32[$hraw>>2]|0; + $100 = HEAP32[$1>>2]|0; + $101 = (($100) + 12|0); + $102 = HEAP32[$101>>2]|0; + $103 = (($102) - 1)|0; + $104 = $99 & $103; + HEAP32[$h>>2] = $104; + $105 = HEAP32[$1>>2]|0; + $106 = HEAP32[$h>>2]|0; + $107 = HEAP32[$1>>2]|0; + $108 = (($107) + 16|0); + $109 = HEAP32[$108>>2]|0; + $110 = (($109) + ($106<<3)|0); + $111 = HEAP32[$new_elem>>2]|0; + _fts3HashInsertElement($105,$110,$111); + $112 = HEAP32[$4>>2]|0; + $113 = HEAP32[$new_elem>>2]|0; + $114 = (($113) + 8|0); + HEAP32[$114>>2] = $112; + HEAP32[$0>>2] = 0; + $115 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($115|0); + } + } while(0); + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 4|0); + HEAP32[$62>>2] = 0; + $63 = HEAP32[$4>>2]|0; + HEAP32[$0>>2] = $63; + $115 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($115|0); +} +function _sqlite3Fts3InitHashTable($db,$pHash,$zName) { + $db = $db|0; + $pHash = $pHash|0; + $zName = $zName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $any = 0, $p = 0, $rc = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $p = sp + 12|0; + $any = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pHash; + HEAP32[$2>>2] = $zName; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $3; + HEAP32[$any>>2] = 5; + $4 = HEAP32[$rc>>2]|0; + $5 = (0)==($4|0); + if ($5) { + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$p>>2]|0; + $9 = (_sqlite3_create_function($6,$7,1,5,$8,56,0,0)|0); + HEAP32[$rc>>2] = $9; + } + $10 = HEAP32[$rc>>2]|0; + $11 = (0)==($10|0); + if (!($11)) { + $16 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($16|0); + } + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = HEAP32[$p>>2]|0; + $15 = (_sqlite3_create_function($12,$13,2,5,$14,56,0,0)|0); + HEAP32[$rc>>2] = $15; + $16 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($16|0); +} +function _hashDestroy($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $pHash = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pHash = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pHash>>2] = $1; + $2 = HEAP32[$pHash>>2]|0; + _sqlite3Fts3HashClear($2); + $3 = HEAP32[$pHash>>2]|0; + _sqlite3_free($3); + STACKTOP = sp;return; +} +function _sqlite3Fts3InitTok($db,$pHash) { + $db = $db|0; + $pHash = $pHash|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pHash; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3_create_module($2,3960,3864,$3)|0); + HEAP32[$rc>>2] = $4; + $5 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($5|0); +} +function _sqlite3Fts3HashClear($pH) { + $pH = $pH|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $elem = 0, $next_elem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $elem = sp; + $next_elem = sp + 4|0; + HEAP32[$0>>2] = $pH; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$elem>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 8|0); + HEAP32[$5>>2] = 0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 16|0); + $8 = HEAP32[$7>>2]|0; + _fts3HashFree($8); + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 16|0); + HEAP32[$10>>2] = 0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 12|0); + HEAP32[$12>>2] = 0; + while(1) { + $13 = HEAP32[$elem>>2]|0; + $14 = ($13|0)!=(0|0); + if (!($14)) { + break; + } + $15 = HEAP32[$elem>>2]|0; + $16 = HEAP32[$15>>2]|0; + HEAP32[$next_elem>>2] = $16; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 1|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19 << 24 >> 24; + $21 = ($20|0)!=(0); + if ($21) { + $22 = HEAP32[$elem>>2]|0; + $23 = (($22) + 12|0); + $24 = HEAP32[$23>>2]|0; + $25 = ($24|0)!=(0|0); + if ($25) { + $26 = HEAP32[$elem>>2]|0; + $27 = (($26) + 12|0); + $28 = HEAP32[$27>>2]|0; + _fts3HashFree($28); + } + } + $29 = HEAP32[$elem>>2]|0; + _fts3HashFree($29); + $30 = HEAP32[$next_elem>>2]|0; + HEAP32[$elem>>2] = $30; + } + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 4|0); + HEAP32[$32>>2] = 0; + STACKTOP = sp;return; +} +function _fts3HashFree($p) { + $p = $p|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + _sqlite3_free($1); + STACKTOP = sp;return; +} +function _fts3tokConnectMethod($db,$pHash,$argc,$argv,$ppVtab,$pzErr) { + $db = $db|0; + $pHash = $pHash|0; + $argc = $argc|0; + $argv = $argv|0; + $ppVtab = $ppVtab|0; + $pzErr = $pzErr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $azArg = 0, $azDequote = 0, $nDequote = 0, $pMod = 0, $pTab = 0, $pTok = 0, $rc = 0, $zModule = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 56|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $3 = sp + 44|0; + $4 = sp + 40|0; + $5 = sp + 36|0; + $6 = sp + 32|0; + $pTab = sp + 28|0; + $pMod = sp + 20|0; + $pTok = sp + 16|0; + $rc = sp + 12|0; + $azDequote = sp + 8|0; + $nDequote = sp + 4|0; + $zModule = sp; + $azArg = sp + 24|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pHash; + HEAP32[$3>>2] = $argc; + HEAP32[$4>>2] = $argv; + HEAP32[$5>>2] = $ppVtab; + HEAP32[$6>>2] = $pzErr; + HEAP32[$pMod>>2] = 0; + HEAP32[$pTok>>2] = 0; + HEAP32[$azDequote>>2] = 0; + $7 = HEAP32[$1>>2]|0; + $8 = (_sqlite3_declare_vtab($7,3976)|0); + HEAP32[$rc>>2] = $8; + $9 = HEAP32[$rc>>2]|0; + $10 = ($9|0)!=(0); + if ($10) { + $11 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $11; + $66 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($66|0); + } + $12 = HEAP32[$3>>2]|0; + $13 = (($12) - 3)|0; + HEAP32[$nDequote>>2] = $13; + $14 = HEAP32[$nDequote>>2]|0; + $15 = HEAP32[$4>>2]|0; + $16 = (($15) + 12|0); + $17 = (_fts3tokDequoteArray($14,$16,$azDequote)|0); + HEAP32[$rc>>2] = $17; + $18 = HEAP32[$rc>>2]|0; + $19 = ($18|0)==(0); + if ($19) { + $20 = HEAP32[$nDequote>>2]|0; + $21 = ($20|0)<(1); + if ($21) { + HEAP32[$zModule>>2] = 3672; + } else { + $22 = HEAP32[$azDequote>>2]|0; + $23 = HEAP32[$22>>2]|0; + HEAP32[$zModule>>2] = $23; + } + $24 = HEAP32[$2>>2]|0; + $25 = HEAP32[$zModule>>2]|0; + $26 = HEAP32[$6>>2]|0; + $27 = (_fts3tokQueryTokenizer($24,$25,$pMod,$26)|0); + HEAP32[$rc>>2] = $27; + } + $28 = HEAP32[$rc>>2]|0; + $29 = ($28|0)==(0); + if ($29) { + $30 = HEAP32[$azDequote>>2]|0; + $31 = (($30) + 4|0); + HEAP32[$azArg>>2] = $31; + $32 = HEAP32[$pMod>>2]|0; + $33 = (($32) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$nDequote>>2]|0; + $36 = ($35|0)>(1); + if ($36) { + $37 = HEAP32[$nDequote>>2]|0; + $38 = (($37) - 1)|0; + $40 = $38; + } else { + $40 = 0; + } + $39 = HEAP32[$azArg>>2]|0; + $41 = (FUNCTION_TABLE_iiii[$34 & 31]($40,$39,$pTok)|0); + HEAP32[$rc>>2] = $41; + } + $42 = HEAP32[$rc>>2]|0; + $43 = ($42|0)==(0); + if ($43) { + $44 = (_sqlite3_malloc(20)|0); + HEAP32[$pTab>>2] = $44; + $45 = HEAP32[$pTab>>2]|0; + $46 = ($45|0)==(0|0); + if ($46) { + HEAP32[$rc>>2] = 7; + } + } + $47 = HEAP32[$rc>>2]|0; + $48 = ($47|0)==(0); + if ($48) { + $49 = HEAP32[$pTab>>2]|0; + ;HEAP32[$49+0>>2]=0|0;HEAP32[$49+4>>2]=0|0;HEAP32[$49+8>>2]=0|0;HEAP32[$49+12>>2]=0|0;HEAP32[$49+16>>2]=0|0; + $50 = HEAP32[$pMod>>2]|0; + $51 = HEAP32[$pTab>>2]|0; + $52 = (($51) + 12|0); + HEAP32[$52>>2] = $50; + $53 = HEAP32[$pTok>>2]|0; + $54 = HEAP32[$pTab>>2]|0; + $55 = (($54) + 16|0); + HEAP32[$55>>2] = $53; + $56 = HEAP32[$pTab>>2]|0; + $57 = HEAP32[$5>>2]|0; + HEAP32[$57>>2] = $56; + } else { + $58 = HEAP32[$pTok>>2]|0; + $59 = ($58|0)!=(0|0); + if ($59) { + $60 = HEAP32[$pMod>>2]|0; + $61 = (($60) + 8|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$pTok>>2]|0; + (FUNCTION_TABLE_ii[$62 & 63]($63)|0); + } + } + $64 = HEAP32[$azDequote>>2]|0; + _sqlite3_free($64); + $65 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $65; + $66 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($66|0); +} +function _fts3tokBestIndexMethod($pVTab,$pInfo) { + $pVTab = $pVTab|0; + $pInfo = $pInfo|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + HEAP32[$1>>2] = $pVTab; + HEAP32[$2>>2] = $pInfo; + HEAP32[$i>>2] = 0; + while(1) { + $3 = HEAP32[$i>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = ($3|0)<($5|0); + if (!($6)) { + label = 8; + break; + } + $7 = HEAP32[$i>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + (($7*12)|0)|0); + $12 = (($11) + 5|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = ($14|0)!=(0); + if ($15) { + $16 = HEAP32[$i>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + (($16*12)|0)|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)==(0); + if ($22) { + $23 = HEAP32[$i>>2]|0; + $24 = HEAP32[$2>>2]|0; + $25 = (($24) + 4|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($26) + (($23*12)|0)|0); + $28 = (($27) + 4|0); + $29 = HEAP8[$28>>0]|0; + $30 = $29&255; + $31 = ($30|0)==(2); + if ($31) { + label = 6; + break; + } + } + } + $47 = HEAP32[$i>>2]|0; + $48 = (($47) + 1)|0; + HEAP32[$i>>2] = $48; + } + if ((label|0) == 6) { + $32 = HEAP32[$2>>2]|0; + $33 = (($32) + 20|0); + HEAP32[$33>>2] = 1; + $34 = HEAP32[$i>>2]|0; + $35 = HEAP32[$2>>2]|0; + $36 = (($35) + 16|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + ($34<<3)|0); + HEAP32[$38>>2] = 1; + $39 = HEAP32[$i>>2]|0; + $40 = HEAP32[$2>>2]|0; + $41 = (($40) + 16|0); + $42 = HEAP32[$41>>2]|0; + $43 = (($42) + ($39<<3)|0); + $44 = (($43) + 4|0); + HEAP8[$44>>0] = 1; + $45 = HEAP32[$2>>2]|0; + $46 = (($45) + 40|0); + HEAPF64[$46>>3] = 1.0; + HEAP32[$0>>2] = 0; + $51 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($51|0); + } + else if ((label|0) == 8) { + $49 = HEAP32[$2>>2]|0; + $50 = (($49) + 20|0); + HEAP32[$50>>2] = 0; + HEAP32[$0>>2] = 0; + $51 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($51|0); + } + return 0|0; +} +function _fts3tokDisconnectMethod($pVtab) { + $pVtab = $pVtab|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pTab = sp; + HEAP32[$0>>2] = $pVtab; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pTab>>2] = $1; + $2 = HEAP32[$pTab>>2]|0; + $3 = (($2) + 12|0); + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$pTab>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP32[$8>>2]|0; + (FUNCTION_TABLE_ii[$6 & 63]($9)|0); + $10 = HEAP32[$pTab>>2]|0; + _sqlite3_free($10); + STACKTOP = sp;return 0; +} +function _fts3tokOpenMethod($pVTab,$ppCsr) { + $pVTab = $pVTab|0; + $ppCsr = $ppCsr|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCsr = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pCsr = sp + 8|0; + HEAP32[$1>>2] = $pVTab; + HEAP32[$2>>2] = $ppCsr; + $3 = (_sqlite3_malloc(36)|0); + HEAP32[$pCsr>>2] = $3; + $4 = HEAP32[$pCsr>>2]|0; + $5 = ($4|0)==(0|0); + if ($5) { + HEAP32[$0>>2] = 7; + $9 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($9|0); + } else { + $6 = HEAP32[$pCsr>>2]|0; + dest=$6+0|0; stop=dest+36|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $7 = HEAP32[$pCsr>>2]|0; + $8 = HEAP32[$2>>2]|0; + HEAP32[$8>>2] = $7; + HEAP32[$0>>2] = 0; + $9 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($9|0); + } + return 0|0; +} +function _fts3tokCloseMethod($pCursor) { + $pCursor = $pCursor|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $pCsr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pCsr = sp; + HEAP32[$0>>2] = $pCursor; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pCsr>>2] = $1; + $2 = HEAP32[$pCsr>>2]|0; + _fts3tokResetCursor($2); + $3 = HEAP32[$pCsr>>2]|0; + _sqlite3_free($3); + STACKTOP = sp;return 0; +} +function _fts3tokFilterMethod($pCursor,$idxNum,$idxStr,$nVal,$apVal) { + $pCursor = $pCursor|0; + $idxNum = $idxNum|0; + $idxStr = $idxStr|0; + $nVal = $nVal|0; + $apVal = $apVal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, $nByte = 0, $pCsr = 0, $pTab = 0, $rc = 0, $zByte = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $5 = sp + 20|0; + $rc = sp + 12|0; + $pCsr = sp + 8|0; + $pTab = sp + 4|0; + $zByte = sp; + $nByte = sp + 16|0; + HEAP32[$1>>2] = $pCursor; + HEAP32[$2>>2] = $idxNum; + HEAP32[$3>>2] = $idxStr; + HEAP32[$4>>2] = $nVal; + HEAP32[$5>>2] = $apVal; + HEAP32[$rc>>2] = 1; + $6 = HEAP32[$1>>2]|0; + HEAP32[$pCsr>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$pTab>>2] = $8; + $9 = HEAP32[$pCsr>>2]|0; + _fts3tokResetCursor($9); + $10 = HEAP32[$2>>2]|0; + $11 = ($10|0)==(1); + do { + if ($11) { + $12 = HEAP32[$5>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = (_sqlite3_value_text($13)|0); + HEAP32[$zByte>>2] = $14; + $15 = HEAP32[$5>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = (_sqlite3_value_bytes($16)|0); + HEAP32[$nByte>>2] = $17; + $18 = HEAP32[$nByte>>2]|0; + $19 = (($18) + 1)|0; + $20 = (_sqlite3_malloc($19)|0); + $21 = HEAP32[$pCsr>>2]|0; + $22 = (($21) + 4|0); + HEAP32[$22>>2] = $20; + $23 = HEAP32[$pCsr>>2]|0; + $24 = (($23) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)==(0|0); + if ($26) { + HEAP32[$rc>>2] = 7; + break; + } + $27 = HEAP32[$pCsr>>2]|0; + $28 = (($27) + 4|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$zByte>>2]|0; + $31 = HEAP32[$nByte>>2]|0; + _memcpy(($29|0),($30|0),($31|0))|0; + $32 = HEAP32[$nByte>>2]|0; + $33 = HEAP32[$pCsr>>2]|0; + $34 = (($33) + 4|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + ($32)|0); + HEAP8[$36>>0] = 0; + $37 = HEAP32[$pTab>>2]|0; + $38 = (($37) + 12|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + 12|0); + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$pTab>>2]|0; + $43 = (($42) + 16|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$pCsr>>2]|0; + $46 = (($45) + 4|0); + $47 = HEAP32[$46>>2]|0; + $48 = HEAP32[$nByte>>2]|0; + $49 = HEAP32[$pCsr>>2]|0; + $50 = (($49) + 8|0); + $51 = (FUNCTION_TABLE_iiiii[$41 & 31]($44,$47,$48,$50)|0); + HEAP32[$rc>>2] = $51; + $52 = HEAP32[$rc>>2]|0; + $53 = ($52|0)==(0); + if ($53) { + $54 = HEAP32[$pTab>>2]|0; + $55 = (($54) + 16|0); + $56 = HEAP32[$55>>2]|0; + $57 = HEAP32[$pCsr>>2]|0; + $58 = (($57) + 8|0); + $59 = HEAP32[$58>>2]|0; + HEAP32[$59>>2] = $56; + } + } + } while(0); + $60 = HEAP32[$rc>>2]|0; + $61 = ($60|0)!=(0); + if ($61) { + $62 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $62; + $65 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($65|0); + } else { + $63 = HEAP32[$1>>2]|0; + $64 = (_fts3tokNextMethod($63)|0); + HEAP32[$0>>2] = $64; + $65 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($65|0); + } + return 0|0; +} +function _fts3tokNextMethod($pCursor) { + $pCursor = $pCursor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCsr = 0, $pTab = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $pCsr = sp; + $pTab = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$0>>2] = $pCursor; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pCsr>>2] = $1; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$pTab>>2] = $3; + $4 = HEAP32[$pCsr>>2]|0; + $5 = (($4) + 12|0); + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + 1)|0; + HEAP32[$5>>2] = $7; + $8 = HEAP32[$pTab>>2]|0; + $9 = (($8) + 12|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + 20|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$pCsr>>2]|0; + $14 = (($13) + 8|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$pCsr>>2]|0; + $17 = (($16) + 16|0); + $18 = HEAP32[$pCsr>>2]|0; + $19 = (($18) + 20|0); + $20 = HEAP32[$pCsr>>2]|0; + $21 = (($20) + 24|0); + $22 = HEAP32[$pCsr>>2]|0; + $23 = (($22) + 28|0); + $24 = HEAP32[$pCsr>>2]|0; + $25 = (($24) + 32|0); + $26 = (FUNCTION_TABLE_iiiiiii[$12 & 15]($15,$17,$19,$21,$23,$25)|0); + HEAP32[$rc>>2] = $26; + $27 = HEAP32[$rc>>2]|0; + $28 = ($27|0)!=(0); + if (!($28)) { + $32 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($32|0); + } + $29 = HEAP32[$pCsr>>2]|0; + _fts3tokResetCursor($29); + $30 = HEAP32[$rc>>2]|0; + $31 = ($30|0)==(101); + if (!($31)) { + $32 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($32|0); + } + HEAP32[$rc>>2] = 0; + $32 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($32|0); +} +function _fts3tokEofMethod($pCursor) { + $pCursor = $pCursor|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $pCsr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pCsr = sp; + HEAP32[$0>>2] = $pCursor; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pCsr>>2] = $1; + $2 = HEAP32[$pCsr>>2]|0; + $3 = (($2) + 16|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)==(0|0); + $6 = $5&1; + STACKTOP = sp;return ($6|0); +} +function _fts3tokColumnMethod($pCursor,$pCtx,$iCol) { + $pCursor = $pCursor|0; + $pCtx = $pCtx|0; + $iCol = $iCol|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCsr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pCsr = sp + 8|0; + HEAP32[$0>>2] = $pCursor; + HEAP32[$1>>2] = $pCtx; + HEAP32[$2>>2] = $iCol; + $3 = HEAP32[$0>>2]|0; + HEAP32[$pCsr>>2] = $3; + $4 = HEAP32[$2>>2]|0; + if ((($4|0) == 0)) { + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$pCsr>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + _sqlite3_result_text($5,$8,-1,(-1)); + STACKTOP = sp;return 0; + } else if ((($4|0) == 2)) { + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$pCsr>>2]|0; + $18 = (($17) + 24|0); + $19 = HEAP32[$18>>2]|0; + _sqlite3_result_int($16,$19); + STACKTOP = sp;return 0; + } else if ((($4|0) == 3)) { + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$pCsr>>2]|0; + $22 = (($21) + 28|0); + $23 = HEAP32[$22>>2]|0; + _sqlite3_result_int($20,$23); + STACKTOP = sp;return 0; + } else if ((($4|0) == 1)) { + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$pCsr>>2]|0; + $11 = (($10) + 16|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$pCsr>>2]|0; + $14 = (($13) + 20|0); + $15 = HEAP32[$14>>2]|0; + _sqlite3_result_text($9,$12,$15,(-1)); + STACKTOP = sp;return 0; + } else { + $24 = HEAP32[$1>>2]|0; + $25 = HEAP32[$pCsr>>2]|0; + $26 = (($25) + 32|0); + $27 = HEAP32[$26>>2]|0; + _sqlite3_result_int($24,$27); + STACKTOP = sp;return 0; + } + return 0|0; +} +function _fts3tokRowidMethod($pCursor,$pRowid) { + $pCursor = $pCursor|0; + $pRowid = $pRowid|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCsr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pCsr = sp + 4|0; + HEAP32[$0>>2] = $pCursor; + HEAP32[$1>>2] = $pRowid; + $2 = HEAP32[$0>>2]|0; + HEAP32[$pCsr>>2] = $2; + $3 = HEAP32[$pCsr>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)<(0); + $7 = $6 << 31 >> 31; + $8 = HEAP32[$1>>2]|0; + $9 = $8; + $10 = $9; + HEAP32[$10>>2] = $5; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = $7; + STACKTOP = sp;return 0; +} +function _fts3tokResetCursor($pCsr) { + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pTab = sp; + HEAP32[$0>>2] = $pCsr; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$pTab>>2] = $6; + $7 = HEAP32[$pTab>>2]|0; + $8 = (($7) + 12|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 16|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 8|0); + $14 = HEAP32[$13>>2]|0; + (FUNCTION_TABLE_ii[$11 & 63]($14)|0); + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 8|0); + HEAP32[$16>>2] = 0; + } + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + _sqlite3_free($19); + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 4|0); + HEAP32[$21>>2] = 0; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 16|0); + HEAP32[$23>>2] = 0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 20|0); + HEAP32[$25>>2] = 0; + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 24|0); + HEAP32[$27>>2] = 0; + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 28|0); + HEAP32[$29>>2] = 0; + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 32|0); + HEAP32[$31>>2] = 0; + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 12|0); + HEAP32[$33>>2] = 0; + STACKTOP = sp;return; +} +function _fts3tokDequoteArray($argc,$argv,$pazDequote) { + $argc = $argc|0; + $argv = $argv|0; + $pazDequote = $pazDequote|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $azDequote = 0, $i = 0, $n = 0; + var $nByte = 0, $pSpace = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $rc = sp + 20|0; + $i = sp + 16|0; + $nByte = sp + 8|0; + $azDequote = sp + 4|0; + $pSpace = sp; + $n = sp + 12|0; + HEAP32[$0>>2] = $argc; + HEAP32[$1>>2] = $argv; + HEAP32[$2>>2] = $pazDequote; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = ($3|0)==(0); + if ($4) { + $5 = HEAP32[$2>>2]|0; + HEAP32[$5>>2] = 0; + $56 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($56|0); + } + HEAP32[$nByte>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $6 = HEAP32[$i>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = ($6|0)<($7|0); + if (!($8)) { + break; + } + $9 = HEAP32[$i>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + ($9<<2)|0); + $12 = HEAP32[$11>>2]|0; + $13 = (_strlen(($12|0))|0); + $14 = (($13) + 1)|0; + $15 = HEAP32[$nByte>>2]|0; + $16 = (($15) + ($14))|0; + HEAP32[$nByte>>2] = $16; + $17 = HEAP32[$i>>2]|0; + $18 = (($17) + 1)|0; + HEAP32[$i>>2] = $18; + } + $19 = HEAP32[$0>>2]|0; + $20 = $19<<2; + $21 = HEAP32[$nByte>>2]|0; + $22 = (($20) + ($21))|0; + $23 = (_sqlite3_malloc($22)|0); + HEAP32[$azDequote>>2] = $23; + $24 = HEAP32[$2>>2]|0; + HEAP32[$24>>2] = $23; + $25 = HEAP32[$azDequote>>2]|0; + $26 = ($25|0)==(0|0); + if ($26) { + HEAP32[$rc>>2] = 7; + $56 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($56|0); + } + $27 = HEAP32[$0>>2]|0; + $28 = HEAP32[$azDequote>>2]|0; + $29 = (($28) + ($27<<2)|0); + HEAP32[$pSpace>>2] = $29; + HEAP32[$i>>2] = 0; + while(1) { + $30 = HEAP32[$i>>2]|0; + $31 = HEAP32[$0>>2]|0; + $32 = ($30|0)<($31|0); + if (!($32)) { + break; + } + $33 = HEAP32[$i>>2]|0; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + ($33<<2)|0); + $36 = HEAP32[$35>>2]|0; + $37 = (_strlen(($36|0))|0); + HEAP32[$n>>2] = $37; + $38 = HEAP32[$pSpace>>2]|0; + $39 = HEAP32[$i>>2]|0; + $40 = HEAP32[$azDequote>>2]|0; + $41 = (($40) + ($39<<2)|0); + HEAP32[$41>>2] = $38; + $42 = HEAP32[$pSpace>>2]|0; + $43 = HEAP32[$i>>2]|0; + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + ($43<<2)|0); + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$n>>2]|0; + $48 = (($47) + 1)|0; + _memcpy(($42|0),($46|0),($48|0))|0; + $49 = HEAP32[$pSpace>>2]|0; + _sqlite3Fts3Dequote($49); + $50 = HEAP32[$n>>2]|0; + $51 = (($50) + 1)|0; + $52 = HEAP32[$pSpace>>2]|0; + $53 = (($52) + ($51)|0); + HEAP32[$pSpace>>2] = $53; + $54 = HEAP32[$i>>2]|0; + $55 = (($54) + 1)|0; + HEAP32[$i>>2] = $55; + } + $56 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($56|0); +} +function _fts3tokQueryTokenizer($pHash,$zName,$pp,$pzErr) { + $pHash = $pHash|0; + $zName = $zName|0; + $pp = $pp|0; + $pzErr = $pzErr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $nName = 0, $p = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 28|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $4 = sp + 16|0; + $p = sp + 20|0; + $nName = sp + 24|0; + HEAP32[$1>>2] = $pHash; + HEAP32[$2>>2] = $zName; + HEAP32[$3>>2] = $pp; + HEAP32[$4>>2] = $pzErr; + $5 = HEAP32[$2>>2]|0; + $6 = (_strlen(($5|0))|0); + HEAP32[$nName>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$nName>>2]|0; + $10 = (($9) + 1)|0; + $11 = (_sqlite3Fts3HashFind($7,$8,$10)|0); + HEAP32[$p>>2] = $11; + $12 = HEAP32[$p>>2]|0; + $13 = ($12|0)!=(0|0); + if ($13) { + $17 = HEAP32[$p>>2]|0; + $18 = HEAP32[$3>>2]|0; + HEAP32[$18>>2] = $17; + HEAP32[$0>>2] = 0; + $19 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($19|0); + } else { + $14 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer>>2] = $14; + $15 = (_sqlite3_mprintf(4032,$vararg_buffer)|0); + $16 = HEAP32[$4>>2]|0; + HEAP32[$16>>2] = $15; + HEAP32[$0>>2] = 1; + $19 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($19|0); + } + return 0|0; +} +function _sqlite3Fts3HashFind($pH,$pKey,$nKey) { + $pH = $pH|0; + $pKey = $pKey|0; + $nKey = $nKey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pElem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pElem = sp + 8|0; + HEAP32[$0>>2] = $pH; + HEAP32[$1>>2] = $pKey; + HEAP32[$2>>2] = $nKey; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = (_sqlite3Fts3HashFindElem($3,$4,$5)|0); + HEAP32[$pElem>>2] = $6; + $7 = HEAP32[$pElem>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + $12 = 0; + STACKTOP = sp;return ($12|0); + } + $9 = HEAP32[$pElem>>2]|0; + $10 = (($9) + 8|0); + $11 = HEAP32[$10>>2]|0; + $12 = $11; + STACKTOP = sp;return ($12|0); +} +function _sqlite3Fts3HashFindElem($pH,$pKey,$nKey) { + $pH = $pH|0; + $pKey = $pKey|0; + $nKey = $nKey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $h = 0, $xHash = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $h = sp + 12|0; + $xHash = sp + 16|0; + HEAP32[$1>>2] = $pH; + HEAP32[$2>>2] = $pKey; + HEAP32[$3>>2] = $nKey; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)==(0|0); + if (!($5)) { + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 16|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)==(0|0); + if (!($9)) { + $10 = HEAP32[$1>>2]|0; + $11 = HEAP8[$10>>0]|0; + $12 = $11 << 24 >> 24; + $13 = (_ftsHashFunction($12)|0); + HEAP32[$xHash>>2] = $13; + $14 = HEAP32[$xHash>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$3>>2]|0; + $17 = (FUNCTION_TABLE_iii[$14 & 127]($15,$16)|0); + HEAP32[$h>>2] = $17; + $18 = HEAP32[$1>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = HEAP32[$3>>2]|0; + $21 = HEAP32[$h>>2]|0; + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 12|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) - 1)|0; + $26 = $21 & $25; + $27 = (_fts3FindElementByHash($18,$19,$20,$26)|0); + HEAP32[$0>>2] = $27; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } + } + HEAP32[$0>>2] = 0; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); +} +function _ftsHashFunction($keyClass) { + $keyClass = $keyClass|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $keyClass; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(1); + if ($3) { + HEAP32[$0>>2] = 47; + } else { + HEAP32[$0>>2] = 48; + } + $4 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($4|0); +} +function _fts3FindElementByHash($pH,$pKey,$nKey,$h) { + $pH = $pH|0; + $pKey = $pKey|0; + $nKey = $nKey|0; + $h = $h|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $count = 0, $elem = 0, $pEntry = 0, $xCompare = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $4 = sp + 16|0; + $elem = sp + 8|0; + $count = sp + 4|0; + $xCompare = sp; + $pEntry = sp + 12|0; + HEAP32[$1>>2] = $pH; + HEAP32[$2>>2] = $pKey; + HEAP32[$3>>2] = $nKey; + HEAP32[$4>>2] = $h; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 16|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + L1: do { + if ($8) { + $9 = HEAP32[$4>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 16|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + ($9<<3)|0); + HEAP32[$pEntry>>2] = $13; + $14 = HEAP32[$pEntry>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$elem>>2] = $16; + $17 = HEAP32[$pEntry>>2]|0; + $18 = HEAP32[$17>>2]|0; + HEAP32[$count>>2] = $18; + $19 = HEAP32[$1>>2]|0; + $20 = HEAP8[$19>>0]|0; + $21 = $20 << 24 >> 24; + $22 = (_ftsCompareFunction($21)|0); + HEAP32[$xCompare>>2] = $22; + while(1) { + $23 = HEAP32[$count>>2]|0; + $24 = (($23) + -1)|0; + HEAP32[$count>>2] = $24; + $25 = ($23|0)!=(0); + if (!($25)) { + break L1; + } + $26 = HEAP32[$elem>>2]|0; + $27 = ($26|0)!=(0|0); + if (!($27)) { + break L1; + } + $28 = HEAP32[$xCompare>>2]|0; + $29 = HEAP32[$elem>>2]|0; + $30 = (($29) + 12|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$elem>>2]|0; + $33 = (($32) + 16|0); + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$2>>2]|0; + $36 = HEAP32[$3>>2]|0; + $37 = (FUNCTION_TABLE_iiiii[$28 & 31]($31,$34,$35,$36)|0); + $38 = ($37|0)==(0); + $39 = HEAP32[$elem>>2]|0; + if ($38) { + break; + } + $40 = HEAP32[$39>>2]|0; + HEAP32[$elem>>2] = $40; + } + HEAP32[$0>>2] = $39; + $41 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($41|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $41 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($41|0); +} +function _ftsCompareFunction($keyClass) { + $keyClass = $keyClass|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $keyClass; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(1); + if ($3) { + HEAP32[$0>>2] = 11; + } else { + HEAP32[$0>>2] = 12; + } + $4 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($4|0); +} +function _fts3StrCompare($pKey1,$n1,$pKey2,$n2) { + $pKey1 = $pKey1|0; + $n1 = $n1|0; + $pKey2 = $pKey2|0; + $n2 = $n2|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + HEAP32[$1>>2] = $pKey1; + HEAP32[$2>>2] = $n1; + HEAP32[$3>>2] = $pKey2; + HEAP32[$4>>2] = $n2; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$4>>2]|0; + $7 = ($5|0)!=($6|0); + if ($7) { + HEAP32[$0>>2] = 1; + $12 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($12|0); + } else { + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$3>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = (_strncmp($8,$9,$10)|0); + HEAP32[$0>>2] = $11; + $12 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($12|0); + } + return 0|0; +} +function _fts3BinCompare($pKey1,$n1,$pKey2,$n2) { + $pKey1 = $pKey1|0; + $n1 = $n1|0; + $pKey2 = $pKey2|0; + $n2 = $n2|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + HEAP32[$1>>2] = $pKey1; + HEAP32[$2>>2] = $n1; + HEAP32[$3>>2] = $pKey2; + HEAP32[$4>>2] = $n2; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$4>>2]|0; + $7 = ($5|0)!=($6|0); + if ($7) { + HEAP32[$0>>2] = 1; + $12 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($12|0); + } else { + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$3>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = (_memcmp($8,$9,$10)|0); + HEAP32[$0>>2] = $11; + $12 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($12|0); + } + return 0|0; +} +function _fts3StrHash($pKey,$nKey) { + $pKey = $pKey|0; + $nKey = $nKey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $h = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $z = sp + 4|0; + $h = sp + 8|0; + HEAP32[$0>>2] = $pKey; + HEAP32[$1>>2] = $nKey; + $2 = HEAP32[$0>>2]|0; + HEAP32[$z>>2] = $2; + HEAP32[$h>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)<=(0); + if ($4) { + $5 = HEAP32[$z>>2]|0; + $6 = (_strlen(($5|0))|0); + HEAP32[$1>>2] = $6; + } + while(1) { + $7 = HEAP32[$1>>2]|0; + $8 = ($7|0)>(0); + $9 = HEAP32[$h>>2]|0; + if (!($8)) { + break; + } + $10 = $9 << 3; + $11 = HEAP32[$h>>2]|0; + $12 = $10 ^ $11; + $13 = HEAP32[$z>>2]|0; + $14 = (($13) + 1|0); + HEAP32[$z>>2] = $14; + $15 = HEAP8[$13>>0]|0; + $16 = $15 << 24 >> 24; + $17 = $12 ^ $16; + HEAP32[$h>>2] = $17; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + -1)|0; + HEAP32[$1>>2] = $19; + } + $20 = $9 & 2147483647; + STACKTOP = sp;return ($20|0); +} +function _fts3BinHash($pKey,$nKey) { + $pKey = $pKey|0; + $nKey = $nKey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $h = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $h = sp + 4|0; + $z = sp + 8|0; + HEAP32[$0>>2] = $pKey; + HEAP32[$1>>2] = $nKey; + HEAP32[$h>>2] = 0; + $2 = HEAP32[$0>>2]|0; + HEAP32[$z>>2] = $2; + while(1) { + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + -1)|0; + HEAP32[$1>>2] = $4; + $5 = ($3|0)>(0); + $6 = HEAP32[$h>>2]|0; + if (!($5)) { + break; + } + $7 = $6 << 3; + $8 = HEAP32[$h>>2]|0; + $9 = $7 ^ $8; + $10 = HEAP32[$z>>2]|0; + $11 = (($10) + 1|0); + HEAP32[$z>>2] = $11; + $12 = HEAP8[$10>>0]|0; + $13 = $12 << 24 >> 24; + $14 = $9 ^ $13; + HEAP32[$h>>2] = $14; + } + $15 = $6 & 2147483647; + STACKTOP = sp;return ($15|0); +} +function _sqlite3Fts3Dequote($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iIn = 0, $iOut = 0, $quote = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $quote = sp + 12|0; + $iIn = sp + 4|0; + $iOut = sp; + HEAP32[$0>>2] = $z; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP8[$1>>0]|0; + HEAP8[$quote>>0] = $2; + $3 = HEAP8[$quote>>0]|0; + $4 = $3 << 24 >> 24; + $5 = ($4|0)==(91); + if (!($5)) { + $6 = HEAP8[$quote>>0]|0; + $7 = $6 << 24 >> 24; + $8 = ($7|0)==(39); + if (!($8)) { + $9 = HEAP8[$quote>>0]|0; + $10 = $9 << 24 >> 24; + $11 = ($10|0)==(34); + if (!($11)) { + $12 = HEAP8[$quote>>0]|0; + $13 = $12 << 24 >> 24; + $14 = ($13|0)==(96); + if (!($14)) { + STACKTOP = sp;return; + } + } + } + } + HEAP32[$iIn>>2] = 1; + HEAP32[$iOut>>2] = 0; + $15 = HEAP8[$quote>>0]|0; + $16 = $15 << 24 >> 24; + $17 = ($16|0)==(91); + if ($17) { + HEAP8[$quote>>0] = 93; + } + while(1) { + $18 = HEAP32[$iIn>>2]|0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + ($18)|0); + $21 = HEAP8[$20>>0]|0; + $22 = ($21<<24>>24)!=(0); + if (!($22)) { + break; + } + $23 = HEAP32[$iIn>>2]|0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + ($23)|0); + $26 = HEAP8[$25>>0]|0; + $27 = $26 << 24 >> 24; + $28 = HEAP8[$quote>>0]|0; + $29 = $28 << 24 >> 24; + $30 = ($27|0)==($29|0); + $31 = HEAP32[$iIn>>2]|0; + $32 = (($31) + 1)|0; + if (!($30)) { + HEAP32[$iIn>>2] = $32; + $47 = HEAP32[$0>>2]|0; + $48 = (($47) + ($31)|0); + $49 = HEAP8[$48>>0]|0; + $50 = HEAP32[$iOut>>2]|0; + $51 = (($50) + 1)|0; + HEAP32[$iOut>>2] = $51; + $52 = HEAP32[$0>>2]|0; + $53 = (($52) + ($50)|0); + HEAP8[$53>>0] = $49; + continue; + } + $33 = HEAP32[$0>>2]|0; + $34 = (($33) + ($32)|0); + $35 = HEAP8[$34>>0]|0; + $36 = $35 << 24 >> 24; + $37 = HEAP8[$quote>>0]|0; + $38 = $37 << 24 >> 24; + $39 = ($36|0)!=($38|0); + if ($39) { + break; + } + $40 = HEAP8[$quote>>0]|0; + $41 = HEAP32[$iOut>>2]|0; + $42 = (($41) + 1)|0; + HEAP32[$iOut>>2] = $42; + $43 = HEAP32[$0>>2]|0; + $44 = (($43) + ($41)|0); + HEAP8[$44>>0] = $40; + $45 = HEAP32[$iIn>>2]|0; + $46 = (($45) + 2)|0; + HEAP32[$iIn>>2] = $46; + } + $54 = HEAP32[$iOut>>2]|0; + $55 = HEAP32[$0>>2]|0; + $56 = (($55) + ($54)|0); + HEAP8[$56>>0] = 0; + STACKTOP = sp;return; +} +function _fts3CreateMethod($db,$pAux,$argc,$argv,$ppVtab,$pzErr) { + $db = $db|0; + $pAux = $pAux|0; + $argc = $argc|0; + $argv = $argv|0; + $ppVtab = $ppVtab|0; + $pzErr = $pzErr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $5 = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pAux; + HEAP32[$2>>2] = $argc; + HEAP32[$3>>2] = $argv; + HEAP32[$4>>2] = $ppVtab; + HEAP32[$5>>2] = $pzErr; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$3>>2]|0; + $10 = HEAP32[$4>>2]|0; + $11 = HEAP32[$5>>2]|0; + $12 = (_fts3InitVtab(1,$6,$7,$8,$9,$10,$11)|0); + STACKTOP = sp;return ($12|0); +} +function _fts3ConnectMethod($db,$pAux,$argc,$argv,$ppVtab,$pzErr) { + $db = $db|0; + $pAux = $pAux|0; + $argc = $argc|0; + $argv = $argv|0; + $ppVtab = $ppVtab|0; + $pzErr = $pzErr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $5 = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pAux; + HEAP32[$2>>2] = $argc; + HEAP32[$3>>2] = $argv; + HEAP32[$4>>2] = $ppVtab; + HEAP32[$5>>2] = $pzErr; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$3>>2]|0; + $10 = HEAP32[$4>>2]|0; + $11 = HEAP32[$5>>2]|0; + $12 = (_fts3InitVtab(0,$6,$7,$8,$9,$10,$11)|0); + STACKTOP = sp;return ($12|0); +} +function _fts3BestIndexMethod($pVTab,$pInfo) { + $pVTab = $pVTab|0; + $pInfo = $pInfo|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $bDocid = 0, $i = 0, $iCons = 0, $iDocidGe = 0, $iDocidLe = 0, $iIdx = 0, $iLangidCons = 0, $p = 0, $pCons = 0, $pOrder = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 48|0; + $1 = sp + 44|0; + $2 = sp + 40|0; + $p = sp + 36|0; + $i = sp + 32|0; + $iCons = sp + 28|0; + $iLangidCons = sp + 24|0; + $iDocidGe = sp + 16|0; + $iDocidLe = sp + 12|0; + $iIdx = sp + 8|0; + $bDocid = sp + 4|0; + $pCons = sp; + $pOrder = sp + 20|0; + HEAP32[$1>>2] = $pVTab; + HEAP32[$2>>2] = $pInfo; + $3 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $3; + HEAP32[$iCons>>2] = -1; + HEAP32[$iLangidCons>>2] = -1; + HEAP32[$iDocidGe>>2] = -1; + HEAP32[$iDocidLe>>2] = -1; + $4 = HEAP32[$2>>2]|0; + $5 = (($4) + 20|0); + HEAP32[$5>>2] = 0; + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + 40|0); + HEAPF64[$7>>3] = 5.0E+6; + HEAP32[$i>>2] = 0; + L1: while(1) { + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = ($8|0)<($10|0); + if (!($11)) { + break; + } + $12 = HEAP32[$i>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + (($12*12)|0)|0); + HEAP32[$pCons>>2] = $16; + $17 = HEAP32[$pCons>>2]|0; + $18 = (($17) + 5|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = ($20|0)==(0); + $22 = HEAP32[$pCons>>2]|0; + do { + if ($21) { + $23 = (($22) + 4|0); + $24 = HEAP8[$23>>0]|0; + $25 = $24&255; + $26 = ($25|0)==(64); + if ($26) { + label = 5; + break L1; + } + } else { + $32 = HEAP32[$22>>2]|0; + $33 = ($32|0)<(0); + if ($33) { + $42 = 1; + } else { + $34 = HEAP32[$pCons>>2]|0; + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$p>>2]|0; + $37 = (($36) + 24|0); + $38 = HEAP32[$37>>2]|0; + $39 = (($38) + 1)|0; + $40 = ($35|0)==($39|0); + $42 = $40; + } + $41 = $42&1; + HEAP32[$bDocid>>2] = $41; + $43 = HEAP32[$iCons>>2]|0; + $44 = ($43|0)<(0); + if ($44) { + $45 = HEAP32[$pCons>>2]|0; + $46 = (($45) + 4|0); + $47 = HEAP8[$46>>0]|0; + $48 = $47&255; + $49 = ($48|0)==(2); + if ($49) { + $50 = HEAP32[$bDocid>>2]|0; + $51 = ($50|0)!=(0); + if ($51) { + $52 = HEAP32[$2>>2]|0; + $53 = (($52) + 20|0); + HEAP32[$53>>2] = 1; + $54 = HEAP32[$2>>2]|0; + $55 = (($54) + 40|0); + HEAPF64[$55>>3] = 1.0; + $56 = HEAP32[$i>>2]|0; + HEAP32[$iCons>>2] = $56; + } + } + } + $57 = HEAP32[$pCons>>2]|0; + $58 = (($57) + 4|0); + $59 = HEAP8[$58>>0]|0; + $60 = $59&255; + $61 = ($60|0)==(64); + if ($61) { + $62 = HEAP32[$pCons>>2]|0; + $63 = HEAP32[$62>>2]|0; + $64 = ($63|0)>=(0); + if ($64) { + $65 = HEAP32[$pCons>>2]|0; + $66 = HEAP32[$65>>2]|0; + $67 = HEAP32[$p>>2]|0; + $68 = (($67) + 24|0); + $69 = HEAP32[$68>>2]|0; + $70 = ($66|0)<=($69|0); + if ($70) { + $71 = HEAP32[$pCons>>2]|0; + $72 = HEAP32[$71>>2]|0; + $73 = (2 + ($72))|0; + $74 = HEAP32[$2>>2]|0; + $75 = (($74) + 20|0); + HEAP32[$75>>2] = $73; + $76 = HEAP32[$2>>2]|0; + $77 = (($76) + 40|0); + HEAPF64[$77>>3] = 2.0; + $78 = HEAP32[$i>>2]|0; + HEAP32[$iCons>>2] = $78; + } + } + } + $79 = HEAP32[$pCons>>2]|0; + $80 = (($79) + 4|0); + $81 = HEAP8[$80>>0]|0; + $82 = $81&255; + $83 = ($82|0)==(2); + if ($83) { + $84 = HEAP32[$pCons>>2]|0; + $85 = HEAP32[$84>>2]|0; + $86 = HEAP32[$p>>2]|0; + $87 = (($86) + 24|0); + $88 = HEAP32[$87>>2]|0; + $89 = (($88) + 2)|0; + $90 = ($85|0)==($89|0); + if ($90) { + $91 = HEAP32[$i>>2]|0; + HEAP32[$iLangidCons>>2] = $91; + } + } + $92 = HEAP32[$bDocid>>2]|0; + $93 = ($92|0)!=(0); + if ($93) { + $94 = HEAP32[$pCons>>2]|0; + $95 = (($94) + 4|0); + $96 = HEAP8[$95>>0]|0; + $97 = $96&255; + if ((($97|0) == 4) | (($97|0) == 32)) { + $98 = HEAP32[$i>>2]|0; + HEAP32[$iDocidGe>>2] = $98; + break; + } else if ((($97|0) == 16) | (($97|0) == 8)) { + $99 = HEAP32[$i>>2]|0; + HEAP32[$iDocidLe>>2] = $99; + break; + } else { + break; + } + } + } + } while(0); + $100 = HEAP32[$i>>2]|0; + $101 = (($100) + 1)|0; + HEAP32[$i>>2] = $101; + } + if ((label|0) == 5) { + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 20|0); + HEAP32[$28>>2] = 0; + $29 = HEAP32[$2>>2]|0; + $30 = (($29) + 40|0); + HEAPF64[$30>>3] = 1.0000000000000000763E+50; + $31 = HEAP32[$2>>2]|0; + _fts3SetEstimatedRows($31,0,262144); + HEAP32[$0>>2] = 0; + $181 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($181|0); + } + HEAP32[$iIdx>>2] = 1; + $102 = HEAP32[$iCons>>2]|0; + $103 = ($102|0)>=(0); + if ($103) { + $104 = HEAP32[$iIdx>>2]|0; + $105 = (($104) + 1)|0; + HEAP32[$iIdx>>2] = $105; + $106 = HEAP32[$iCons>>2]|0; + $107 = HEAP32[$2>>2]|0; + $108 = (($107) + 16|0); + $109 = HEAP32[$108>>2]|0; + $110 = (($109) + ($106<<3)|0); + HEAP32[$110>>2] = $104; + $111 = HEAP32[$iCons>>2]|0; + $112 = HEAP32[$2>>2]|0; + $113 = (($112) + 16|0); + $114 = HEAP32[$113>>2]|0; + $115 = (($114) + ($111<<3)|0); + $116 = (($115) + 4|0); + HEAP8[$116>>0] = 1; + } + $117 = HEAP32[$iLangidCons>>2]|0; + $118 = ($117|0)>=(0); + if ($118) { + $119 = HEAP32[$2>>2]|0; + $120 = (($119) + 20|0); + $121 = HEAP32[$120>>2]|0; + $122 = $121 | 65536; + HEAP32[$120>>2] = $122; + $123 = HEAP32[$iIdx>>2]|0; + $124 = (($123) + 1)|0; + HEAP32[$iIdx>>2] = $124; + $125 = HEAP32[$iLangidCons>>2]|0; + $126 = HEAP32[$2>>2]|0; + $127 = (($126) + 16|0); + $128 = HEAP32[$127>>2]|0; + $129 = (($128) + ($125<<3)|0); + HEAP32[$129>>2] = $123; + } + $130 = HEAP32[$iDocidGe>>2]|0; + $131 = ($130|0)>=(0); + if ($131) { + $132 = HEAP32[$2>>2]|0; + $133 = (($132) + 20|0); + $134 = HEAP32[$133>>2]|0; + $135 = $134 | 131072; + HEAP32[$133>>2] = $135; + $136 = HEAP32[$iIdx>>2]|0; + $137 = (($136) + 1)|0; + HEAP32[$iIdx>>2] = $137; + $138 = HEAP32[$iDocidGe>>2]|0; + $139 = HEAP32[$2>>2]|0; + $140 = (($139) + 16|0); + $141 = HEAP32[$140>>2]|0; + $142 = (($141) + ($138<<3)|0); + HEAP32[$142>>2] = $136; + } + $143 = HEAP32[$iDocidLe>>2]|0; + $144 = ($143|0)>=(0); + if ($144) { + $145 = HEAP32[$2>>2]|0; + $146 = (($145) + 20|0); + $147 = HEAP32[$146>>2]|0; + $148 = $147 | 262144; + HEAP32[$146>>2] = $148; + $149 = HEAP32[$iIdx>>2]|0; + $150 = (($149) + 1)|0; + HEAP32[$iIdx>>2] = $150; + $151 = HEAP32[$iDocidLe>>2]|0; + $152 = HEAP32[$2>>2]|0; + $153 = (($152) + 16|0); + $154 = HEAP32[$153>>2]|0; + $155 = (($154) + ($151<<3)|0); + HEAP32[$155>>2] = $149; + } + $156 = HEAP32[$2>>2]|0; + $157 = (($156) + 8|0); + $158 = HEAP32[$157>>2]|0; + $159 = ($158|0)==(1); + do { + if ($159) { + $160 = HEAP32[$2>>2]|0; + $161 = (($160) + 12|0); + $162 = HEAP32[$161>>2]|0; + HEAP32[$pOrder>>2] = $162; + $163 = HEAP32[$pOrder>>2]|0; + $164 = HEAP32[$163>>2]|0; + $165 = ($164|0)<(0); + if (!($165)) { + $166 = HEAP32[$pOrder>>2]|0; + $167 = HEAP32[$166>>2]|0; + $168 = HEAP32[$p>>2]|0; + $169 = (($168) + 24|0); + $170 = HEAP32[$169>>2]|0; + $171 = (($170) + 1)|0; + $172 = ($167|0)==($171|0); + if (!($172)) { + break; + } + } + $173 = HEAP32[$pOrder>>2]|0; + $174 = (($173) + 4|0); + $175 = HEAP8[$174>>0]|0; + $176 = ($175<<24>>24)!=(0); + $177 = HEAP32[$2>>2]|0; + $178 = (($177) + 24|0); + if ($176) { + HEAP32[$178>>2] = 7496; + } else { + HEAP32[$178>>2] = 7504; + } + $179 = HEAP32[$2>>2]|0; + $180 = (($179) + 32|0); + HEAP32[$180>>2] = 1; + } + } while(0); + HEAP32[$0>>2] = 0; + $181 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($181|0); +} +function _fts3DisconnectMethod($pVtab) { + $pVtab = $pVtab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $p = sp; + $i = sp + 4|0; + HEAP32[$0>>2] = $pVtab; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + HEAP32[$i>>2] = 0; + while(1) { + $2 = HEAP32[$i>>2]|0; + $3 = ($2|0)<(40); + if (!($3)) { + break; + } + $4 = HEAP32[$i>>2]|0; + $5 = HEAP32[$p>>2]|0; + $6 = (($5) + 56|0); + $7 = (($6) + ($4<<2)|0); + $8 = HEAP32[$7>>2]|0; + (_sqlite3_finalize($8)|0); + $9 = HEAP32[$i>>2]|0; + $10 = (($9) + 1)|0; + HEAP32[$i>>2] = $10; + } + $11 = HEAP32[$p>>2]|0; + $12 = (($11) + 240|0); + $13 = HEAP32[$12>>2]|0; + _sqlite3_free($13); + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 216|0); + $16 = HEAP32[$15>>2]|0; + _sqlite3_free($16); + $17 = HEAP32[$p>>2]|0; + $18 = (($17) + 220|0); + $19 = HEAP32[$18>>2]|0; + _sqlite3_free($19); + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 40|0); + $22 = HEAP32[$21>>2]|0; + _sqlite3_free($22); + $23 = HEAP32[$p>>2]|0; + $24 = (($23) + 44|0); + $25 = HEAP32[$24>>2]|0; + _sqlite3_free($25); + $26 = HEAP32[$p>>2]|0; + $27 = (($26) + 36|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + 8|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$p>>2]|0; + $33 = (($32) + 36|0); + $34 = HEAP32[$33>>2]|0; + (FUNCTION_TABLE_ii[$31 & 63]($34)|0); + $35 = HEAP32[$p>>2]|0; + _sqlite3_free($35); + STACKTOP = sp;return 0; +} +function _fts3DestroyMethod($pVtab) { + $pVtab = $pVtab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $db = 0, $p = 0, $rc = 0, $vararg_buffer14 = 0, $vararg_ptr1 = 0, $vararg_ptr13 = 0, $vararg_ptr17 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, $zDb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer14 = sp; + $0 = sp + 24|0; + $p = sp + 8|0; + $rc = sp + 12|0; + $zDb = sp + 16|0; + $db = sp + 20|0; + HEAP32[$0>>2] = $pVtab; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$p>>2]|0; + $3 = (($2) + 16|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$zDb>>2] = $4; + $5 = HEAP32[$p>>2]|0; + $6 = (($5) + 12|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$db>>2] = $7; + $8 = HEAP32[$p>>2]|0; + $9 = (($8) + 40|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)==(0|0); + if ($11) { + $12 = HEAP32[$db>>2]|0; + $13 = HEAP32[$zDb>>2]|0; + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 20|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$vararg_buffer14>>2] = $13; + $vararg_ptr1 = (($vararg_buffer14) + 4|0); + HEAP32[$vararg_ptr1>>2] = $16; + _fts3DbExec($rc,$12,7672,$vararg_buffer14); + } + $17 = HEAP32[$db>>2]|0; + $18 = HEAP32[$zDb>>2]|0; + $19 = HEAP32[$p>>2]|0; + $20 = (($19) + 20|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$vararg_buffer14>>2] = $18; + $vararg_ptr5 = (($vararg_buffer14) + 4|0); + HEAP32[$vararg_ptr5>>2] = $21; + _fts3DbExec($rc,$17,7712,$vararg_buffer14); + $22 = HEAP32[$db>>2]|0; + $23 = HEAP32[$zDb>>2]|0; + $24 = HEAP32[$p>>2]|0; + $25 = (($24) + 20|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$vararg_buffer14>>2] = $23; + $vararg_ptr9 = (($vararg_buffer14) + 4|0); + HEAP32[$vararg_ptr9>>2] = $26; + _fts3DbExec($rc,$22,7752,$vararg_buffer14); + $27 = HEAP32[$db>>2]|0; + $28 = HEAP32[$zDb>>2]|0; + $29 = HEAP32[$p>>2]|0; + $30 = (($29) + 20|0); + $31 = HEAP32[$30>>2]|0; + HEAP32[$vararg_buffer14>>2] = $28; + $vararg_ptr13 = (($vararg_buffer14) + 4|0); + HEAP32[$vararg_ptr13>>2] = $31; + _fts3DbExec($rc,$27,7792,$vararg_buffer14); + $32 = HEAP32[$db>>2]|0; + $33 = HEAP32[$zDb>>2]|0; + $34 = HEAP32[$p>>2]|0; + $35 = (($34) + 20|0); + $36 = HEAP32[$35>>2]|0; + HEAP32[$vararg_buffer14>>2] = $33; + $vararg_ptr17 = (($vararg_buffer14) + 4|0); + HEAP32[$vararg_ptr17>>2] = $36; + _fts3DbExec($rc,$32,7832,$vararg_buffer14); + $37 = HEAP32[$rc>>2]|0; + $38 = ($37|0)==(0); + if ($38) { + $39 = HEAP32[$0>>2]|0; + $40 = (_fts3DisconnectMethod($39)|0); + $42 = $40; + STACKTOP = sp;return ($42|0); + } else { + $41 = HEAP32[$rc>>2]|0; + $42 = $41; + STACKTOP = sp;return ($42|0); + } + return 0|0; +} +function _fts3OpenMethod($pVTab,$ppCsr) { + $pVTab = $pVTab|0; + $ppCsr = $ppCsr|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $pCsr = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pCsr = sp + 8|0; + HEAP32[$1>>2] = $pVTab; + HEAP32[$2>>2] = $ppCsr; + $3 = (_sqlite3_malloc(104)|0); + HEAP32[$pCsr>>2] = $3; + $4 = HEAP32[$2>>2]|0; + HEAP32[$4>>2] = $3; + $5 = HEAP32[$pCsr>>2]|0; + $6 = ($5|0)!=(0|0); + if ($6) { + $7 = HEAP32[$pCsr>>2]|0; + dest=$7+0|0; stop=dest+104|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + HEAP32[$0>>2] = 0; + $8 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($8|0); + } else { + HEAP32[$0>>2] = 7; + $8 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($8|0); + } + return 0|0; +} +function _fts3CloseMethod($pCursor) { + $pCursor = $pCursor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCsr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pCsr = sp; + HEAP32[$0>>2] = $pCursor; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pCsr>>2] = $1; + $2 = HEAP32[$pCsr>>2]|0; + $3 = (($2) + 8|0); + $4 = HEAP32[$3>>2]|0; + (_sqlite3_finalize($4)|0); + $5 = HEAP32[$pCsr>>2]|0; + $6 = (($5) + 12|0); + $7 = HEAP32[$6>>2]|0; + _sqlite3Fts3ExprFree($7); + $8 = HEAP32[$pCsr>>2]|0; + _sqlite3Fts3FreeDeferredTokens($8); + $9 = HEAP32[$pCsr>>2]|0; + $10 = (($9) + 44|0); + $11 = HEAP32[$10>>2]|0; + _sqlite3_free($11); + $12 = HEAP32[$pCsr>>2]|0; + $13 = (($12) + 92|0); + $14 = HEAP32[$13>>2]|0; + _sqlite3_free($14); + $15 = HEAP32[$pCsr>>2]|0; + _sqlite3_free($15); + STACKTOP = sp;return 0; +} +function _fts3FilterMethod($pCursor,$idxNum,$idxStr,$nVal,$apVal) { + $pCursor = $pCursor|0; + $idxNum = $idxNum|0; + $idxStr = $idxStr|0; + $nVal = $nVal|0; + $apVal = $apVal|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $eSearch = 0, $iCol = 0, $iIdx = 0, $or$cond = 0, $p = 0; + var $pCons = 0, $pCsr = 0, $pDocidGe = 0, $pDocidLe = 0, $pLangid = 0, $rc = 0, $vararg_buffer = 0, $vararg_ptr2 = 0, $zQuery = 0, $zSql = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer = sp; + $0 = sp + 72|0; + $1 = sp + 68|0; + $2 = sp + 64|0; + $3 = sp + 60|0; + $4 = sp + 56|0; + $5 = sp + 52|0; + $rc = sp + 48|0; + $zSql = sp + 44|0; + $eSearch = sp + 76|0; + $p = sp + 20|0; + $pCsr = sp + 16|0; + $pCons = sp + 8|0; + $pLangid = sp + 12|0; + $pDocidGe = sp + 36|0; + $pDocidLe = sp + 24|0; + $iIdx = sp + 28|0; + $iCol = sp + 32|0; + $zQuery = sp + 40|0; + HEAP32[$1>>2] = $pCursor; + HEAP32[$2>>2] = $idxNum; + HEAP32[$3>>2] = $idxStr; + HEAP32[$4>>2] = $nVal; + HEAP32[$5>>2] = $apVal; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$p>>2] = $7; + $8 = HEAP32[$1>>2]|0; + HEAP32[$pCsr>>2] = $8; + HEAP32[$pCons>>2] = 0; + HEAP32[$pLangid>>2] = 0; + HEAP32[$pDocidGe>>2] = 0; + HEAP32[$pDocidLe>>2] = 0; + $9 = HEAP32[$2>>2]|0; + $10 = $9 & 65535; + HEAP32[$eSearch>>2] = $10; + HEAP32[$iIdx>>2] = 0; + $11 = HEAP32[$eSearch>>2]|0; + $12 = ($11|0)!=(0); + if ($12) { + $13 = HEAP32[$iIdx>>2]|0; + $14 = (($13) + 1)|0; + HEAP32[$iIdx>>2] = $14; + $15 = HEAP32[$5>>2]|0; + $16 = (($15) + ($13<<2)|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$pCons>>2] = $17; + } + $18 = HEAP32[$2>>2]|0; + $19 = $18 & 65536; + $20 = ($19|0)!=(0); + if ($20) { + $21 = HEAP32[$iIdx>>2]|0; + $22 = (($21) + 1)|0; + HEAP32[$iIdx>>2] = $22; + $23 = HEAP32[$5>>2]|0; + $24 = (($23) + ($21<<2)|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$pLangid>>2] = $25; + } + $26 = HEAP32[$2>>2]|0; + $27 = $26 & 131072; + $28 = ($27|0)!=(0); + if ($28) { + $29 = HEAP32[$iIdx>>2]|0; + $30 = (($29) + 1)|0; + HEAP32[$iIdx>>2] = $30; + $31 = HEAP32[$5>>2]|0; + $32 = (($31) + ($29<<2)|0); + $33 = HEAP32[$32>>2]|0; + HEAP32[$pDocidGe>>2] = $33; + } + $34 = HEAP32[$2>>2]|0; + $35 = $34 & 262144; + $36 = ($35|0)!=(0); + if ($36) { + $37 = HEAP32[$iIdx>>2]|0; + $38 = (($37) + 1)|0; + HEAP32[$iIdx>>2] = $38; + $39 = HEAP32[$5>>2]|0; + $40 = (($39) + ($37<<2)|0); + $41 = HEAP32[$40>>2]|0; + HEAP32[$pDocidLe>>2] = $41; + } + $42 = HEAP32[$pCsr>>2]|0; + $43 = (($42) + 8|0); + $44 = HEAP32[$43>>2]|0; + (_sqlite3_finalize($44)|0); + $45 = HEAP32[$pCsr>>2]|0; + $46 = (($45) + 44|0); + $47 = HEAP32[$46>>2]|0; + _sqlite3_free($47); + $48 = HEAP32[$pCsr>>2]|0; + $49 = (($48) + 12|0); + $50 = HEAP32[$49>>2]|0; + _sqlite3Fts3ExprFree($50); + $51 = HEAP32[$1>>2]|0; + $52 = (($51) + 4|0); + dest=$52+0|0; stop=dest+100|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $53 = HEAP32[$pDocidGe>>2]|0; + $54 = (_fts3DocidRange($53,0,-2147483648)|0); + $55 = tempRet0; + $56 = HEAP32[$pCsr>>2]|0; + $57 = (($56) + 72|0); + $58 = $57; + $59 = $58; + HEAP32[$59>>2] = $54; + $60 = (($58) + 4)|0; + $61 = $60; + HEAP32[$61>>2] = $55; + $62 = HEAP32[$pDocidLe>>2]|0; + $63 = (_fts3DocidRange($62,-1,2147483647)|0); + $64 = tempRet0; + $65 = HEAP32[$pCsr>>2]|0; + $66 = (($65) + 80|0); + $67 = $66; + $68 = $67; + HEAP32[$68>>2] = $63; + $69 = (($67) + 4)|0; + $70 = $69; + HEAP32[$70>>2] = $64; + $71 = HEAP32[$3>>2]|0; + $72 = ($71|0)!=(0|0); + if ($72) { + $73 = HEAP32[$3>>2]|0; + $74 = HEAP8[$73>>0]|0; + $75 = $74 << 24 >> 24; + $76 = ($75|0)==(68); + $77 = $76&1; + $78 = $77&255; + $79 = HEAP32[$pCsr>>2]|0; + $80 = (($79) + 52|0); + HEAP8[$80>>0] = $78; + } else { + $81 = HEAP32[$p>>2]|0; + $82 = (($81) + 231|0); + $83 = HEAP8[$82>>0]|0; + $84 = HEAP32[$pCsr>>2]|0; + $85 = (($84) + 52|0); + HEAP8[$85>>0] = $83; + } + $86 = HEAP32[$eSearch>>2]|0; + $87 = $86&65535; + $88 = HEAP32[$pCsr>>2]|0; + $89 = (($88) + 4|0); + HEAP16[$89>>1] = $87; + $90 = HEAP32[$eSearch>>2]|0; + $91 = ($90|0)!=(1); + $92 = HEAP32[$eSearch>>2]|0; + $93 = ($92|0)!=(0); + $or$cond = $91 & $93; + do { + if ($or$cond) { + $94 = HEAP32[$eSearch>>2]|0; + $95 = (($94) - 2)|0; + HEAP32[$iCol>>2] = $95; + $96 = HEAP32[$pCons>>2]|0; + $97 = (_sqlite3_value_text($96)|0); + HEAP32[$zQuery>>2] = $97; + $98 = HEAP32[$zQuery>>2]|0; + $99 = ($98|0)==(0|0); + if ($99) { + $100 = HEAP32[$pCons>>2]|0; + $101 = (_sqlite3_value_type($100)|0); + $102 = ($101|0)!=(5); + if ($102) { + HEAP32[$0>>2] = 7; + $194 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($194|0); + } + } + $103 = HEAP32[$pCsr>>2]|0; + $104 = (($103) + 16|0); + HEAP32[$104>>2] = 0; + $105 = HEAP32[$pLangid>>2]|0; + $106 = ($105|0)!=(0|0); + if ($106) { + $107 = HEAP32[$pLangid>>2]|0; + $108 = (_sqlite3_value_int($107)|0); + $109 = HEAP32[$pCsr>>2]|0; + $110 = (($109) + 16|0); + HEAP32[$110>>2] = $108; + } + $111 = HEAP32[$p>>2]|0; + $112 = (($111) + 36|0); + $113 = HEAP32[$112>>2]|0; + $114 = HEAP32[$pCsr>>2]|0; + $115 = (($114) + 16|0); + $116 = HEAP32[$115>>2]|0; + $117 = HEAP32[$p>>2]|0; + $118 = (($117) + 28|0); + $119 = HEAP32[$118>>2]|0; + $120 = HEAP32[$p>>2]|0; + $121 = (($120) + 228|0); + $122 = HEAP8[$121>>0]|0; + $123 = $122&255; + $124 = HEAP32[$p>>2]|0; + $125 = (($124) + 24|0); + $126 = HEAP32[$125>>2]|0; + $127 = HEAP32[$iCol>>2]|0; + $128 = HEAP32[$zQuery>>2]|0; + $129 = HEAP32[$pCsr>>2]|0; + $130 = (($129) + 12|0); + $131 = HEAP32[$p>>2]|0; + $132 = (($131) + 8|0); + $133 = (_sqlite3Fts3ExprParse($113,$116,$119,$123,$126,$127,$128,-1,$130,$132)|0); + HEAP32[$rc>>2] = $133; + $134 = HEAP32[$rc>>2]|0; + $135 = ($134|0)!=(0); + if ($135) { + $136 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $136; + $194 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($194|0); + } + $137 = HEAP32[$pCsr>>2]|0; + $138 = (_fts3EvalStart($137)|0); + HEAP32[$rc>>2] = $138; + $139 = HEAP32[$p>>2]|0; + _sqlite3Fts3SegmentsClose($139); + $140 = HEAP32[$rc>>2]|0; + $141 = ($140|0)!=(0); + if (!($141)) { + $143 = HEAP32[$pCsr>>2]|0; + $144 = (($143) + 44|0); + $145 = HEAP32[$144>>2]|0; + $146 = HEAP32[$pCsr>>2]|0; + $147 = (($146) + 40|0); + HEAP32[$147>>2] = $145; + $148 = HEAP32[$pCsr>>2]|0; + $149 = (($148) + 32|0); + $150 = $149; + $151 = $150; + HEAP32[$151>>2] = 0; + $152 = (($150) + 4)|0; + $153 = $152; + HEAP32[$153>>2] = 0; + break; + } + $142 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $142; + $194 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($194|0); + } + } while(0); + $154 = HEAP32[$eSearch>>2]|0; + $155 = ($154|0)==(0); + do { + if ($155) { + $156 = HEAP32[$p>>2]|0; + $157 = (($156) + 216|0); + $158 = HEAP32[$157>>2]|0; + $159 = HEAP32[$pCsr>>2]|0; + $160 = (($159) + 52|0); + $161 = HEAP8[$160>>0]|0; + $162 = $161&255; + $163 = ($162|0)!=(0); + $164 = $163 ? 7496 : 7504; + HEAP32[$vararg_buffer>>2] = $158; + $vararg_ptr2 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr2>>2] = $164; + $165 = (_sqlite3_mprintf(7464,$vararg_buffer)|0); + HEAP32[$zSql>>2] = $165; + $166 = HEAP32[$zSql>>2]|0; + $167 = ($166|0)!=(0|0); + if ($167) { + $168 = HEAP32[$p>>2]|0; + $169 = (($168) + 12|0); + $170 = HEAP32[$169>>2]|0; + $171 = HEAP32[$zSql>>2]|0; + $172 = HEAP32[$pCsr>>2]|0; + $173 = (($172) + 8|0); + $174 = (_sqlite3_prepare_v2($170,$171,-1,$173,0)|0); + HEAP32[$rc>>2] = $174; + $175 = HEAP32[$zSql>>2]|0; + _sqlite3_free($175); + break; + } else { + HEAP32[$rc>>2] = 7; + break; + } + } else { + $176 = HEAP32[$eSearch>>2]|0; + $177 = ($176|0)==(1); + if ($177) { + $178 = HEAP32[$pCsr>>2]|0; + $179 = HEAP32[$pCsr>>2]|0; + $180 = (($179) + 8|0); + $181 = (_fts3CursorSeekStmt($178,$180)|0); + HEAP32[$rc>>2] = $181; + $182 = HEAP32[$rc>>2]|0; + $183 = ($182|0)==(0); + if ($183) { + $184 = HEAP32[$pCsr>>2]|0; + $185 = (($184) + 8|0); + $186 = HEAP32[$185>>2]|0; + $187 = HEAP32[$pCons>>2]|0; + $188 = (_sqlite3_bind_value($186,1,$187)|0); + HEAP32[$rc>>2] = $188; + } + } + } + } while(0); + $189 = HEAP32[$rc>>2]|0; + $190 = ($189|0)!=(0); + if ($190) { + $191 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $191; + $194 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($194|0); + } else { + $192 = HEAP32[$1>>2]|0; + $193 = (_fts3NextMethod($192)|0); + HEAP32[$0>>2] = $193; + $194 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($194|0); + } + return 0|0; +} +function _fts3NextMethod($pCursor) { + $pCursor = $pCursor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCsr = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $rc = sp; + $pCsr = sp + 4|0; + HEAP32[$0>>2] = $pCursor; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pCsr>>2] = $1; + $2 = HEAP32[$pCsr>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4 << 16 >> 16; + $6 = ($5|0)==(1); + if (!($6)) { + $7 = HEAP32[$pCsr>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP16[$8>>1]|0; + $10 = $9 << 16 >> 16; + $11 = ($10|0)==(0); + if (!($11)) { + $33 = HEAP32[$0>>2]|0; + $34 = (_fts3EvalNext($33)|0); + HEAP32[$rc>>2] = $34; + $35 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($35|0); + } + } + $12 = HEAP32[$pCsr>>2]|0; + $13 = (($12) + 8|0); + $14 = HEAP32[$13>>2]|0; + $15 = (_sqlite3_step($14)|0); + $16 = (100)!=($15|0); + $17 = HEAP32[$pCsr>>2]|0; + if ($16) { + $18 = (($17) + 6|0); + HEAP8[$18>>0] = 1; + $19 = HEAP32[$pCsr>>2]|0; + $20 = (($19) + 8|0); + $21 = HEAP32[$20>>2]|0; + $22 = (_sqlite3_reset($21)|0); + HEAP32[$rc>>2] = $22; + $35 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($35|0); + } else { + $23 = (($17) + 8|0); + $24 = HEAP32[$23>>2]|0; + $25 = (_sqlite3_column_int64($24,0)|0); + $26 = tempRet0; + $27 = HEAP32[$pCsr>>2]|0; + $28 = (($27) + 32|0); + $29 = $28; + $30 = $29; + HEAP32[$30>>2] = $25; + $31 = (($29) + 4)|0; + $32 = $31; + HEAP32[$32>>2] = $26; + HEAP32[$rc>>2] = 0; + $35 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($35|0); + } + return 0|0; +} +function _fts3EofMethod($pCursor) { + $pCursor = $pCursor|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pCursor; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 6|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + STACKTOP = sp;return ($4|0); +} +function _fts3ColumnMethod($pCursor,$pCtx,$iCol) { + $pCursor = $pCursor|0; + $pCtx = $pCtx|0; + $iCol = $iCol|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $9 = 0, $iLangid = 0, $p = 0, $pCsr = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $pCsr = sp + 12|0; + $p = sp + 16|0; + $iLangid = sp + 20|0; + HEAP32[$0>>2] = $pCursor; + HEAP32[$1>>2] = $pCtx; + HEAP32[$2>>2] = $iCol; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$0>>2]|0; + HEAP32[$pCsr>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$p>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$p>>2]|0; + $8 = (($7) + 24|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 1)|0; + $11 = ($6|0)==($10|0); + if ($11) { + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$pCsr>>2]|0; + $14 = (($13) + 32|0); + $15 = $14; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = (($15) + 4)|0; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + _sqlite3_result_int64($12,$17,$20); + $81 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($81|0); + } + $21 = HEAP32[$2>>2]|0; + $22 = HEAP32[$p>>2]|0; + $23 = (($22) + 24|0); + $24 = HEAP32[$23>>2]|0; + $25 = ($21|0)==($24|0); + if ($25) { + $26 = HEAP32[$1>>2]|0; + _sqlite3_result_blob($26,$pCsr,4,(-1)); + $81 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($81|0); + } + $27 = HEAP32[$2>>2]|0; + $28 = HEAP32[$p>>2]|0; + $29 = (($28) + 24|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + 2)|0; + $32 = ($27|0)==($31|0); + if ($32) { + $33 = HEAP32[$pCsr>>2]|0; + $34 = (($33) + 12|0); + $35 = HEAP32[$34>>2]|0; + $36 = ($35|0)!=(0|0); + if ($36) { + $37 = HEAP32[$1>>2]|0; + $38 = HEAP32[$pCsr>>2]|0; + $39 = (($38) + 16|0); + $40 = HEAP32[$39>>2]|0; + $41 = ($40|0)<(0); + $42 = $41 << 31 >> 31; + _sqlite3_result_int64($37,$40,$42); + $81 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($81|0); + } + } + $43 = HEAP32[$pCsr>>2]|0; + $44 = (_fts3CursorSeek(0,$43)|0); + HEAP32[$rc>>2] = $44; + $45 = HEAP32[$rc>>2]|0; + $46 = ($45|0)==(0); + if (!($46)) { + $81 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($81|0); + } + $47 = HEAP32[$2>>2]|0; + $48 = HEAP32[$p>>2]|0; + $49 = (($48) + 24|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + 2)|0; + $52 = ($47|0)==($51|0); + if ($52) { + HEAP32[$iLangid>>2] = 0; + $53 = HEAP32[$p>>2]|0; + $54 = (($53) + 44|0); + $55 = HEAP32[$54>>2]|0; + $56 = ($55|0)!=(0|0); + if ($56) { + $57 = HEAP32[$pCsr>>2]|0; + $58 = (($57) + 8|0); + $59 = HEAP32[$58>>2]|0; + $60 = HEAP32[$p>>2]|0; + $61 = (($60) + 24|0); + $62 = HEAP32[$61>>2]|0; + $63 = (($62) + 1)|0; + $64 = (_sqlite3_column_int($59,$63)|0); + HEAP32[$iLangid>>2] = $64; + } + $65 = HEAP32[$1>>2]|0; + $66 = HEAP32[$iLangid>>2]|0; + _sqlite3_result_int($65,$66); + $81 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($81|0); + } else { + $67 = HEAP32[$pCsr>>2]|0; + $68 = (($67) + 8|0); + $69 = HEAP32[$68>>2]|0; + $70 = (_sqlite3_data_count($69)|0); + $71 = HEAP32[$2>>2]|0; + $72 = (($71) + 1)|0; + $73 = ($70|0)>($72|0); + if (!($73)) { + $81 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($81|0); + } + $74 = HEAP32[$1>>2]|0; + $75 = HEAP32[$pCsr>>2]|0; + $76 = (($75) + 8|0); + $77 = HEAP32[$76>>2]|0; + $78 = HEAP32[$2>>2]|0; + $79 = (($78) + 1)|0; + $80 = (_sqlite3_column_value($77,$79)|0); + _sqlite3_result_value($74,$80); + $81 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($81|0); + } + return 0|0; +} +function _fts3RowidMethod($pCursor,$pRowid) { + $pCursor = $pCursor|0; + $pRowid = $pRowid|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCsr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pCsr = sp + 4|0; + HEAP32[$0>>2] = $pCursor; + HEAP32[$1>>2] = $pRowid; + $2 = HEAP32[$0>>2]|0; + HEAP32[$pCsr>>2] = $2; + $3 = HEAP32[$pCsr>>2]|0; + $4 = (($3) + 32|0); + $5 = $4; + $6 = $5; + $7 = HEAP32[$6>>2]|0; + $8 = (($5) + 4)|0; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = $11; + $13 = $12; + HEAP32[$13>>2] = $7; + $14 = (($12) + 4)|0; + $15 = $14; + HEAP32[$15>>2] = $10; + STACKTOP = sp;return 0; +} +function _fts3UpdateMethod($pVtab,$nArg,$apVal,$pRowid) { + $pVtab = $pVtab|0; + $nArg = $nArg|0; + $apVal = $apVal|0; + $pRowid = $pRowid|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $pVtab; + HEAP32[$1>>2] = $nArg; + HEAP32[$2>>2] = $apVal; + HEAP32[$3>>2] = $pRowid; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$3>>2]|0; + $8 = (_sqlite3Fts3UpdateMethod($4,$5,$6,$7)|0); + STACKTOP = sp;return ($8|0); +} +function _fts3BeginMethod($pVtab) { + $pVtab = $pVtab|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pVtab; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + $2 = HEAP32[$p>>2]|0; + $3 = (($2) + 52|0); + HEAP32[$3>>2] = 0; + $4 = HEAP32[$p>>2]|0; + $5 = (_fts3SetHasStat($4)|0); + STACKTOP = sp;return ($5|0); +} +function _fts3SyncMethod($pVtab) { + $pVtab = $pVtab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $A = 0; + var $mxLevel = 0, $nMinMerge = 0, $p = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $nMinMerge = sp; + $p = sp + 4|0; + $rc = sp + 8|0; + $mxLevel = sp + 12|0; + $A = sp + 16|0; + HEAP32[$0>>2] = $pVtab; + HEAP32[$nMinMerge>>2] = 64; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + $2 = HEAP32[$p>>2]|0; + $3 = (_sqlite3Fts3PendingTermsFlush($2)|0); + HEAP32[$rc>>2] = $3; + $4 = HEAP32[$rc>>2]|0; + $5 = ($4|0)==(0); + if ($5) { + $6 = HEAP32[$p>>2]|0; + $7 = (($6) + 52|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8>>>0)>(4); + if ($9) { + $10 = HEAP32[$p>>2]|0; + $11 = (($10) + 48|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)!=(0); + if ($13) { + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 48|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(255); + if ($17) { + HEAP32[$mxLevel>>2] = 0; + $18 = HEAP32[$p>>2]|0; + $19 = (_sqlite3Fts3MaxLevel($18,$mxLevel)|0); + HEAP32[$rc>>2] = $19; + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 52|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$mxLevel>>2]|0; + $24 = Math_imul($22, $23)|0; + HEAP32[$A>>2] = $24; + $25 = HEAP32[$A>>2]|0; + $26 = (($25|0) / 2)&-1; + $27 = HEAP32[$A>>2]|0; + $28 = (($27) + ($26))|0; + HEAP32[$A>>2] = $28; + $29 = HEAP32[$A>>2]|0; + $30 = ($29|0)>(64); + if ($30) { + $31 = HEAP32[$p>>2]|0; + $32 = HEAP32[$A>>2]|0; + $33 = HEAP32[$p>>2]|0; + $34 = (($33) + 48|0); + $35 = HEAP32[$34>>2]|0; + $36 = (_sqlite3Fts3Incrmerge($31,$32,$35)|0); + HEAP32[$rc>>2] = $36; + } + } + } + } + } + $37 = HEAP32[$p>>2]|0; + _sqlite3Fts3SegmentsClose($37); + $38 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($38|0); +} +function _fts3CommitMethod($pVtab) { + $pVtab = $pVtab|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pVtab; + STACKTOP = sp;return 0; +} +function _fts3RollbackMethod($pVtab) { + $pVtab = $pVtab|0; + var $0 = 0, $1 = 0, $2 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pVtab; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + $2 = HEAP32[$p>>2]|0; + _sqlite3Fts3PendingTermsClear($2); + STACKTOP = sp;return 0; +} +function _fts3FindFunctionMethod($pVtab,$nArg,$zName,$pxFunc$coerce,$ppArg) { + $pVtab = $pVtab|0; + $nArg = $nArg|0; + $zName = $zName|0; + $pxFunc$coerce = $pxFunc$coerce|0; + $ppArg = $ppArg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $aOverload = 0, $i = 0, $pxFunc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 60|0; + $1 = sp + 56|0; + $2 = sp + 52|0; + $3 = sp + 48|0; + $4 = sp + 44|0; + $5 = sp + 36|0; + $6 = sp + 32|0; + $aOverload = sp; + $i = sp + 40|0; + HEAP32[$1>>2] = $pVtab; + HEAP32[$2>>2] = $nArg; + HEAP32[$3>>2] = $zName; + HEAP32[$4>>2] = $pxFunc$coerce; + $pxFunc = HEAP32[$4>>2]|0; + HEAP32[$5>>2] = $pxFunc; + HEAP32[$6>>2] = $ppArg; + ;HEAP32[$aOverload+0>>2]=HEAP32[6984+0>>2]|0;HEAP32[$aOverload+4>>2]=HEAP32[6984+4>>2]|0;HEAP32[$aOverload+8>>2]=HEAP32[6984+8>>2]|0;HEAP32[$aOverload+12>>2]=HEAP32[6984+12>>2]|0;HEAP32[$aOverload+16>>2]=HEAP32[6984+16>>2]|0;HEAP32[$aOverload+20>>2]=HEAP32[6984+20>>2]|0;HEAP32[$aOverload+24>>2]=HEAP32[6984+24>>2]|0;HEAP32[$aOverload+28>>2]=HEAP32[6984+28>>2]|0; + HEAP32[$i>>2] = 0; + while(1) { + $7 = HEAP32[$i>>2]|0; + $8 = ($7|0)<(4); + if (!($8)) { + label = 6; + break; + } + $9 = HEAP32[$3>>2]|0; + $10 = HEAP32[$i>>2]|0; + $11 = (($aOverload) + ($10<<3)|0); + $12 = HEAP32[$11>>2]|0; + $13 = (_strcmp($9,$12)|0); + $14 = ($13|0)==(0); + $15 = HEAP32[$i>>2]|0; + if ($14) { + label = 4; + break; + } + $20 = (($15) + 1)|0; + HEAP32[$i>>2] = $20; + } + if ((label|0) == 4) { + $16 = (($aOverload) + ($15<<3)|0); + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$5>>2]|0; + HEAP32[$19>>2] = $18; + HEAP32[$0>>2] = 1; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); + } + else if ((label|0) == 6) { + HEAP32[$0>>2] = 0; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); + } + return 0|0; +} +function _fts3RenameMethod($pVtab,$zName) { + $pVtab = $pVtab|0; + $zName = $zName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $p = 0, $rc = 0, $vararg_buffer18 = 0, $vararg_ptr1 = 0, $vararg_ptr11 = 0, $vararg_ptr12 = 0, $vararg_ptr16 = 0, $vararg_ptr17 = 0, $vararg_ptr2 = 0, $vararg_ptr21 = 0, $vararg_ptr22 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer18 = sp; + $0 = sp + 28|0; + $1 = sp + 12|0; + $p = sp + 16|0; + $db = sp + 20|0; + $rc = sp + 24|0; + HEAP32[$0>>2] = $pVtab; + HEAP32[$1>>2] = $zName; + $2 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $2; + $3 = HEAP32[$p>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$p>>2]|0; + $7 = (_fts3SetHasStat($6)|0); + HEAP32[$rc>>2] = $7; + $8 = HEAP32[$rc>>2]|0; + $9 = ($8|0)==(0); + if ($9) { + $10 = HEAP32[$p>>2]|0; + $11 = (_sqlite3Fts3PendingTermsFlush($10)|0); + HEAP32[$rc>>2] = $11; + } + $12 = HEAP32[$p>>2]|0; + $13 = (($12) + 40|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)==(0|0); + if ($15) { + $16 = HEAP32[$db>>2]|0; + $17 = HEAP32[$p>>2]|0; + $18 = (($17) + 16|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 20|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$1>>2]|0; + HEAP32[$vararg_buffer18>>2] = $19; + $vararg_ptr1 = (($vararg_buffer18) + 4|0); + HEAP32[$vararg_ptr1>>2] = $22; + $vararg_ptr2 = (($vararg_buffer18) + 8|0); + HEAP32[$vararg_ptr2>>2] = $23; + _fts3DbExec($rc,$16,4056,$vararg_buffer18); + } + $24 = HEAP32[$p>>2]|0; + $25 = (($24) + 230|0); + $26 = HEAP8[$25>>0]|0; + $27 = ($26<<24>>24)!=(0); + if ($27) { + $28 = HEAP32[$db>>2]|0; + $29 = HEAP32[$p>>2]|0; + $30 = (($29) + 16|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$p>>2]|0; + $33 = (($32) + 20|0); + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$1>>2]|0; + HEAP32[$vararg_buffer18>>2] = $31; + $vararg_ptr6 = (($vararg_buffer18) + 4|0); + HEAP32[$vararg_ptr6>>2] = $34; + $vararg_ptr7 = (($vararg_buffer18) + 8|0); + HEAP32[$vararg_ptr7>>2] = $35; + _fts3DbExec($rc,$28,4112,$vararg_buffer18); + } + $36 = HEAP32[$p>>2]|0; + $37 = (($36) + 229|0); + $38 = HEAP8[$37>>0]|0; + $39 = ($38<<24>>24)!=(0); + if ($39) { + $40 = HEAP32[$db>>2]|0; + $41 = HEAP32[$p>>2]|0; + $42 = (($41) + 16|0); + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$p>>2]|0; + $45 = (($44) + 20|0); + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$1>>2]|0; + HEAP32[$vararg_buffer18>>2] = $43; + $vararg_ptr11 = (($vararg_buffer18) + 4|0); + HEAP32[$vararg_ptr11>>2] = $46; + $vararg_ptr12 = (($vararg_buffer18) + 8|0); + HEAP32[$vararg_ptr12>>2] = $47; + _fts3DbExec($rc,$40,4168,$vararg_buffer18); + } + $48 = HEAP32[$db>>2]|0; + $49 = HEAP32[$p>>2]|0; + $50 = (($49) + 16|0); + $51 = HEAP32[$50>>2]|0; + $52 = HEAP32[$p>>2]|0; + $53 = (($52) + 20|0); + $54 = HEAP32[$53>>2]|0; + $55 = HEAP32[$1>>2]|0; + HEAP32[$vararg_buffer18>>2] = $51; + $vararg_ptr16 = (($vararg_buffer18) + 4|0); + HEAP32[$vararg_ptr16>>2] = $54; + $vararg_ptr17 = (($vararg_buffer18) + 8|0); + HEAP32[$vararg_ptr17>>2] = $55; + _fts3DbExec($rc,$48,4216,$vararg_buffer18); + $56 = HEAP32[$db>>2]|0; + $57 = HEAP32[$p>>2]|0; + $58 = (($57) + 16|0); + $59 = HEAP32[$58>>2]|0; + $60 = HEAP32[$p>>2]|0; + $61 = (($60) + 20|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$1>>2]|0; + HEAP32[$vararg_buffer18>>2] = $59; + $vararg_ptr21 = (($vararg_buffer18) + 4|0); + HEAP32[$vararg_ptr21>>2] = $62; + $vararg_ptr22 = (($vararg_buffer18) + 8|0); + HEAP32[$vararg_ptr22>>2] = $63; + _fts3DbExec($rc,$56,4272,$vararg_buffer18); + $64 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($64|0); +} +function _fts3SavepointMethod($pVtab,$iSavepoint) { + $pVtab = $pVtab|0; + $iSavepoint = $iSavepoint|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $pVtab; + HEAP32[$1>>2] = $iSavepoint; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 232|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = ($5|0)==(0); + if (!($6)) { + $9 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($9|0); + } + $7 = HEAP32[$0>>2]|0; + $8 = (_fts3SyncMethod($7)|0); + HEAP32[$rc>>2] = $8; + $9 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($9|0); +} +function _fts3ReleaseMethod($pVtab,$iSavepoint) { + $pVtab = $pVtab|0; + $iSavepoint = $iSavepoint|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pVtab; + HEAP32[$1>>2] = $iSavepoint; + STACKTOP = sp;return 0; +} +function _fts3RollbackToMethod($pVtab,$iSavepoint) { + $pVtab = $pVtab|0; + $iSavepoint = $iSavepoint|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $p = sp + 4|0; + HEAP32[$0>>2] = $pVtab; + HEAP32[$1>>2] = $iSavepoint; + $2 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $2; + $3 = HEAP32[$p>>2]|0; + _sqlite3Fts3PendingTermsClear($3); + STACKTOP = sp;return 0; +} +function _sqlite3Fts3PendingTermsClear($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pElem = 0, $pHash = 0, $pList = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $i = sp; + $pElem = sp + 4|0; + $pHash = sp + 8|0; + $pList = sp + 12|0; + HEAP32[$0>>2] = $p; + HEAP32[$i>>2] = 0; + while(1) { + $1 = HEAP32[$i>>2]|0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 248|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($1|0)<($4|0); + if (!($5)) { + break; + } + $6 = HEAP32[$i>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 252|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + (($6*24)|0)|0); + $11 = (($10) + 4|0); + HEAP32[$pHash>>2] = $11; + $12 = HEAP32[$pHash>>2]|0; + $13 = (($12) + 8|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$pElem>>2] = $14; + while(1) { + $15 = HEAP32[$pElem>>2]|0; + $16 = ($15|0)!=(0|0); + if (!($16)) { + break; + } + $17 = HEAP32[$pElem>>2]|0; + $18 = (($17) + 8|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$pList>>2] = $19; + $20 = HEAP32[$pList>>2]|0; + _fts3PendingListDelete($20); + $21 = HEAP32[$pElem>>2]|0; + $22 = HEAP32[$21>>2]|0; + HEAP32[$pElem>>2] = $22; + } + $23 = HEAP32[$pHash>>2]|0; + _sqlite3Fts3HashClear($23); + $24 = HEAP32[$i>>2]|0; + $25 = (($24) + 1)|0; + HEAP32[$i>>2] = $25; + } + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 260|0); + HEAP32[$27>>2] = 0; + STACKTOP = sp;return; +} +function _fts3PendingListDelete($pList) { + $pList = $pList|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pList; + $1 = HEAP32[$0>>2]|0; + _sqlite3_free($1); + STACKTOP = sp;return; +} +function _fts3SetHasStat($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $bHasStat = 0, $pStmt = 0, $rc = 0; + var $vararg_buffer = 0, $vararg_ptr1 = 0, $zFmt = 0, $zSql = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 28|0; + $rc = sp + 8|0; + $zFmt = sp + 12|0; + $zSql = sp + 16|0; + $pStmt = sp + 20|0; + $bHasStat = sp + 24|0; + HEAP32[$0>>2] = $p; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 229|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = ($4|0)==(2); + if (!($5)) { + $36 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($36|0); + } + HEAP32[$zFmt>>2] = 6928; + $6 = HEAP32[$zFmt>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 20|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$vararg_buffer>>2] = $9; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $12; + $13 = (_sqlite3_mprintf($6,$vararg_buffer)|0); + HEAP32[$zSql>>2] = $13; + $14 = HEAP32[$zSql>>2]|0; + $15 = ($14|0)!=(0|0); + if (!($15)) { + HEAP32[$rc>>2] = 7; + $36 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($36|0); + } + HEAP32[$pStmt>>2] = 0; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 12|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$zSql>>2]|0; + $20 = (_sqlite3_prepare_v2($18,$19,-1,$pStmt,0)|0); + HEAP32[$rc>>2] = $20; + $21 = HEAP32[$rc>>2]|0; + $22 = ($21|0)==(0); + if ($22) { + $23 = HEAP32[$pStmt>>2]|0; + $24 = (_sqlite3_step($23)|0); + $25 = ($24|0)==(100); + $26 = $25&1; + HEAP32[$bHasStat>>2] = $26; + $27 = HEAP32[$pStmt>>2]|0; + $28 = (_sqlite3_finalize($27)|0); + HEAP32[$rc>>2] = $28; + $29 = HEAP32[$rc>>2]|0; + $30 = ($29|0)==(0); + if ($30) { + $31 = HEAP32[$bHasStat>>2]|0; + $32 = $31&255; + $33 = HEAP32[$0>>2]|0; + $34 = (($33) + 229|0); + HEAP8[$34>>0] = $32; + } + } + $35 = HEAP32[$zSql>>2]|0; + _sqlite3_free($35); + $36 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($36|0); +} +function _sqlite3Fts3PendingTermsFlush($p) { + $p = $p|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $i = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $rc = sp; + $i = sp + 4|0; + $pStmt = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$rc>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $1 = HEAP32[$rc>>2]|0; + $2 = ($1|0)==(0); + if ($2) { + $3 = HEAP32[$i>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 248|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($3|0)<($6|0); + $59 = $7; + } else { + $59 = 0; + } + $8 = HEAP32[$0>>2]|0; + if (!($59)) { + break; + } + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 272|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$i>>2]|0; + $13 = (_fts3SegmentMerge($8,$11,$12,-1)|0); + HEAP32[$rc>>2] = $13; + $14 = HEAP32[$rc>>2]|0; + $15 = ($14|0)==(101); + $$ = $15 ? 0 : $13; + HEAP32[$rc>>2] = $$; + $16 = HEAP32[$i>>2]|0; + $17 = (($16) + 1)|0; + HEAP32[$i>>2] = $17; + } + _sqlite3Fts3PendingTermsClear($8); + $18 = HEAP32[$rc>>2]|0; + $19 = ($18|0)==(0); + if (!($19)) { + $58 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($58|0); + } + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 229|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = ($23|0)!=(0); + if (!($24)) { + $58 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($58|0); + } + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 48|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)==(255); + if (!($28)) { + $58 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($58|0); + } + $29 = HEAP32[$0>>2]|0; + $30 = (($29) + 52|0); + $31 = HEAP32[$30>>2]|0; + $32 = ($31>>>0)>(0); + if (!($32)) { + $58 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($58|0); + } + HEAP32[$pStmt>>2] = 0; + $33 = HEAP32[$0>>2]|0; + $34 = (_fts3SqlStmt($33,22,$pStmt,0)|0); + HEAP32[$rc>>2] = $34; + $35 = HEAP32[$rc>>2]|0; + $36 = ($35|0)==(0); + if (!($36)) { + $58 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($58|0); + } + $37 = HEAP32[$pStmt>>2]|0; + (_sqlite3_bind_int($37,1,2)|0); + $38 = HEAP32[$pStmt>>2]|0; + $39 = (_sqlite3_step($38)|0); + HEAP32[$rc>>2] = $39; + $40 = HEAP32[$rc>>2]|0; + $41 = ($40|0)==(100); + if ($41) { + $42 = HEAP32[$pStmt>>2]|0; + $43 = (_sqlite3_column_int($42,0)|0); + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 48|0); + HEAP32[$45>>2] = $43; + $46 = HEAP32[$0>>2]|0; + $47 = (($46) + 48|0); + $48 = HEAP32[$47>>2]|0; + $49 = ($48|0)==(1); + if ($49) { + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 48|0); + HEAP32[$51>>2] = 8; + } + } else { + $52 = HEAP32[$rc>>2]|0; + $53 = ($52|0)==(101); + if ($53) { + $54 = HEAP32[$0>>2]|0; + $55 = (($54) + 48|0); + HEAP32[$55>>2] = 0; + } + } + $56 = HEAP32[$pStmt>>2]|0; + $57 = (_sqlite3_reset($56)|0); + HEAP32[$rc>>2] = $57; + $58 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($58|0); +} +function _fts3DbExec($pRc,$db,$zFormat,$varargs) { + $pRc = $pRc|0; + $db = $db|0; + $zFormat = $zFormat|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ap = 0, $zSql = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $ap = sp + 8|0; + $zSql = sp + 24|0; + HEAP32[$0>>2] = $pRc; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $zFormat; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0); + if ($5) { + STACKTOP = sp;return; + } + HEAP32[$ap>>2] = $varargs; + $6 = HEAP32[$2>>2]|0; + $7 = (_sqlite3_vmprintf($6,$ap)|0); + HEAP32[$zSql>>2] = $7; + $8 = HEAP32[$zSql>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + $10 = HEAP32[$0>>2]|0; + HEAP32[$10>>2] = 7; + STACKTOP = sp;return; + } else { + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$zSql>>2]|0; + $13 = (_sqlite3_exec($11,$12,0,0,0)|0); + $14 = HEAP32[$0>>2]|0; + HEAP32[$14>>2] = $13; + $15 = HEAP32[$zSql>>2]|0; + _sqlite3_free($15); + STACKTOP = sp;return; + } +} +function _fts3SegmentMerge($p,$iLangid,$iIndex,$iLevel) { + $p = $p|0; + $iLangid = $iLangid|0; + $iIndex = $iIndex|0; + $iLevel = $iLevel|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bIgnoreEmpty = 0, $csr = 0, $filter = 0, $iIdx = 0, $iMaxLevel = 0; + var $iNewLevel = 0, $pWriter = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $0 = sp + 96|0; + $1 = sp + 104|0; + $2 = sp + 120|0; + $3 = sp + 116|0; + $rc = sp + 112|0; + $iIdx = sp + 108|0; + $iNewLevel = sp + 8|0; + $pWriter = sp + 100|0; + $filter = sp + 80|0; + $csr = sp + 24|0; + $bIgnoreEmpty = sp + 16|0; + $iMaxLevel = sp; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iLangid; + HEAP32[$2>>2] = $iIndex; + HEAP32[$3>>2] = $iLevel; + HEAP32[$iIdx>>2] = 0; + $4 = $iNewLevel; + $5 = $4; + HEAP32[$5>>2] = 0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = 0; + HEAP32[$pWriter>>2] = 0; + HEAP32[$bIgnoreEmpty>>2] = 0; + $8 = $iMaxLevel; + $9 = $8; + HEAP32[$9>>2] = 0; + $10 = (($8) + 4)|0; + $11 = $10; + HEAP32[$11>>2] = 0; + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$3>>2]|0; + $16 = (_sqlite3Fts3SegReaderCursor($12,$13,$14,$15,0,0,1,0,$csr)|0); + HEAP32[$rc>>2] = $16; + $17 = HEAP32[$rc>>2]|0; + $18 = ($17|0)!=(0); + L1: do { + if (!($18)) { + $19 = (($csr) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)==(0); + if (!($21)) { + $22 = HEAP32[$3>>2]|0; + $23 = ($22|0)!=(-1); + if ($23) { + $24 = HEAP32[$0>>2]|0; + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$2>>2]|0; + $27 = (_fts3SegmentMaxLevel($24,$25,$26,$iMaxLevel)|0); + HEAP32[$rc>>2] = $27; + $28 = HEAP32[$rc>>2]|0; + $29 = ($28|0)!=(0); + if ($29) { + break; + } + } + $30 = HEAP32[$3>>2]|0; + $31 = ($30|0)==(-2); + do { + if ($31) { + $32 = (($csr) + 4|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($33|0)==(1); + if ($34) { + HEAP32[$rc>>2] = 101; + break L1; + } else { + $35 = $iMaxLevel; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = (($35) + 4)|0; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = $iNewLevel; + $42 = $41; + HEAP32[$42>>2] = $37; + $43 = (($41) + 4)|0; + $44 = $43; + HEAP32[$44>>2] = $40; + HEAP32[$bIgnoreEmpty>>2] = 1; + break; + } + } else { + $45 = HEAP32[$0>>2]|0; + $46 = HEAP32[$1>>2]|0; + $47 = HEAP32[$2>>2]|0; + $48 = HEAP32[$3>>2]|0; + $49 = (($48) + 1)|0; + $50 = (_getAbsoluteLevel($45,$46,$47,$49)|0); + $51 = tempRet0; + $52 = $iNewLevel; + $53 = $52; + HEAP32[$53>>2] = $50; + $54 = (($52) + 4)|0; + $55 = $54; + HEAP32[$55>>2] = $51; + $56 = HEAP32[$0>>2]|0; + $57 = HEAP32[$1>>2]|0; + $58 = HEAP32[$2>>2]|0; + $59 = HEAP32[$3>>2]|0; + $60 = (($59) + 1)|0; + $61 = (_fts3AllocateSegdirIdx($56,$57,$58,$60,$iIdx)|0); + HEAP32[$rc>>2] = $61; + $62 = HEAP32[$3>>2]|0; + $63 = ($62|0)!=(-1); + if ($63) { + $64 = $iNewLevel; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = (($64) + 4)|0; + $68 = $67; + $69 = HEAP32[$68>>2]|0; + $70 = $iMaxLevel; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = (($70) + 4)|0; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $76 = ($69|0)>($75|0); + $77 = ($69|0)==($75|0); + $78 = ($66>>>0)>($72>>>0); + $79 = $77 & $78; + $80 = $76 | $79; + $82 = $80; + } else { + $82 = 0; + } + $81 = $82&1; + HEAP32[$bIgnoreEmpty>>2] = $81; + } + } while(0); + $83 = HEAP32[$rc>>2]|0; + $84 = ($83|0)!=(0); + if (!($84)) { + ;HEAP32[$filter+0>>2]=0|0;HEAP32[$filter+4>>2]=0|0;HEAP32[$filter+8>>2]=0|0;HEAP32[$filter+12>>2]=0|0; + $85 = (($filter) + 12|0); + HEAP32[$85>>2] = 1; + $86 = HEAP32[$bIgnoreEmpty>>2]|0; + $87 = ($86|0)!=(0); + $88 = $87 ? 2 : 0; + $89 = (($filter) + 12|0); + $90 = HEAP32[$89>>2]|0; + $91 = $90 | $88; + HEAP32[$89>>2] = $91; + $92 = HEAP32[$0>>2]|0; + $93 = (_sqlite3Fts3SegReaderStart($92,$csr,$filter)|0); + HEAP32[$rc>>2] = $93; + while(1) { + $94 = HEAP32[$rc>>2]|0; + $95 = (0)==($94|0); + if (!($95)) { + break; + } + $96 = HEAP32[$0>>2]|0; + $97 = (_sqlite3Fts3SegReaderStep($96,$csr)|0); + HEAP32[$rc>>2] = $97; + $98 = HEAP32[$rc>>2]|0; + $99 = ($98|0)!=(100); + if ($99) { + break; + } + $100 = HEAP32[$0>>2]|0; + $101 = (($csr) + 40|0); + $102 = HEAP32[$101>>2]|0; + $103 = (($csr) + 44|0); + $104 = HEAP32[$103>>2]|0; + $105 = (($csr) + 48|0); + $106 = HEAP32[$105>>2]|0; + $107 = (($csr) + 52|0); + $108 = HEAP32[$107>>2]|0; + $109 = (_fts3SegWriterAdd($100,$pWriter,1,$102,$104,$106,$108)|0); + HEAP32[$rc>>2] = $109; + } + $110 = HEAP32[$rc>>2]|0; + $111 = ($110|0)!=(0); + if (!($111)) { + $112 = HEAP32[$3>>2]|0; + $113 = ($112|0)!=(-1); + if ($113) { + $114 = HEAP32[$0>>2]|0; + $115 = HEAP32[$1>>2]|0; + $116 = HEAP32[$2>>2]|0; + $117 = HEAP32[$3>>2]|0; + $118 = HEAP32[$csr>>2]|0; + $119 = (($csr) + 4|0); + $120 = HEAP32[$119>>2]|0; + $121 = (_fts3DeleteSegdir($114,$115,$116,$117,$118,$120)|0); + HEAP32[$rc>>2] = $121; + $122 = HEAP32[$rc>>2]|0; + $123 = ($122|0)!=(0); + if ($123) { + break; + } + } + $124 = HEAP32[$pWriter>>2]|0; + $125 = ($124|0)!=(0|0); + if ($125) { + $126 = HEAP32[$0>>2]|0; + $127 = HEAP32[$pWriter>>2]|0; + $128 = $iNewLevel; + $129 = $128; + $130 = HEAP32[$129>>2]|0; + $131 = (($128) + 4)|0; + $132 = $131; + $133 = HEAP32[$132>>2]|0; + $134 = HEAP32[$iIdx>>2]|0; + $135 = (_fts3SegWriterFlush($126,$127,$130,$133,$134)|0); + HEAP32[$rc>>2] = $135; + $136 = HEAP32[$rc>>2]|0; + $137 = ($136|0)==(0); + if ($137) { + $138 = HEAP32[$3>>2]|0; + $139 = ($138|0)==(-1); + if (!($139)) { + $140 = $iNewLevel; + $141 = $140; + $142 = HEAP32[$141>>2]|0; + $143 = (($140) + 4)|0; + $144 = $143; + $145 = HEAP32[$144>>2]|0; + $146 = $iMaxLevel; + $147 = $146; + $148 = HEAP32[$147>>2]|0; + $149 = (($146) + 4)|0; + $150 = $149; + $151 = HEAP32[$150>>2]|0; + $152 = ($145|0)<($151|0); + $153 = ($145|0)==($151|0); + $154 = ($142>>>0)<($148>>>0); + $155 = $153 & $154; + $156 = $152 | $155; + if (!($156)) { + break; + } + } + $157 = HEAP32[$0>>2]|0; + $158 = $iNewLevel; + $159 = $158; + $160 = HEAP32[$159>>2]|0; + $161 = (($158) + 4)|0; + $162 = $161; + $163 = HEAP32[$162>>2]|0; + $164 = HEAP32[$pWriter>>2]|0; + $165 = (($164) + 56|0); + $166 = $165; + $167 = $166; + $168 = HEAP32[$167>>2]|0; + $169 = (($166) + 4)|0; + $170 = $169; + $171 = HEAP32[$170>>2]|0; + $172 = (_fts3PromoteSegments($157,$160,$163,$168,$171)|0); + HEAP32[$rc>>2] = $172; + } + } + } + } + } + } + } while(0); + $173 = HEAP32[$pWriter>>2]|0; + _fts3SegWriterFree($173); + _sqlite3Fts3SegReaderFinish($csr); + $174 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($174|0); +} +function _fts3SqlStmt($p,$eStmt,$pp,$apVal) { + $p = $p|0; + $eStmt = $eStmt|0; + $pp = $pp|0; + $apVal = $apVal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $8 = 0, $9 = 0, $azSql = 0, $i = 0, $nParam = 0, $pStmt = 0, $rc = 0; + var $vararg_buffer6 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr9 = 0, $zSql = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 208|0; + $vararg_buffer6 = sp; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $azSql = sp + 48|0; + $rc = sp + 20|0; + $pStmt = sp + 16|0; + $zSql = sp + 12|0; + $i = sp + 24|0; + $nParam = sp + 28|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $eStmt; + HEAP32[$2>>2] = $pp; + HEAP32[$3>>2] = $apVal; + _memcpy(($azSql|0),(6728|0),160)|0; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 56|0); + $7 = (($6) + ($4<<2)|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pStmt>>2] = $8; + $9 = HEAP32[$pStmt>>2]|0; + $10 = ($9|0)!=(0|0); + do { + if (!($10)) { + $11 = HEAP32[$1>>2]|0; + $12 = ($11|0)==(18); + $13 = HEAP32[$1>>2]|0; + do { + if ($12) { + $14 = (($azSql) + ($13<<2)|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 16|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 20|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 220|0); + $24 = HEAP32[$23>>2]|0; + HEAP32[$vararg_buffer6>>2] = $18; + $vararg_ptr1 = (($vararg_buffer6) + 4|0); + HEAP32[$vararg_ptr1>>2] = $21; + $vararg_ptr2 = (($vararg_buffer6) + 8|0); + HEAP32[$vararg_ptr2>>2] = $24; + $25 = (_sqlite3_mprintf($15,$vararg_buffer6)|0); + HEAP32[$zSql>>2] = $25; + } else { + $26 = ($13|0)==(7); + $27 = HEAP32[$1>>2]|0; + $28 = (($azSql) + ($27<<2)|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$0>>2]|0; + if ($26) { + $31 = (($30) + 216|0); + $32 = HEAP32[$31>>2]|0; + HEAP32[$vararg_buffer6>>2] = $32; + $33 = (_sqlite3_mprintf($29,$vararg_buffer6)|0); + HEAP32[$zSql>>2] = $33; + break; + } else { + $34 = (($30) + 16|0); + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + 20|0); + $38 = HEAP32[$37>>2]|0; + HEAP32[$vararg_buffer6>>2] = $35; + $vararg_ptr9 = (($vararg_buffer6) + 4|0); + HEAP32[$vararg_ptr9>>2] = $38; + $39 = (_sqlite3_mprintf($29,$vararg_buffer6)|0); + HEAP32[$zSql>>2] = $39; + break; + } + } + } while(0); + $40 = HEAP32[$zSql>>2]|0; + $41 = ($40|0)!=(0|0); + if ($41) { + $42 = HEAP32[$0>>2]|0; + $43 = (($42) + 12|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$zSql>>2]|0; + $46 = (_sqlite3_prepare_v2($44,$45,-1,$pStmt,0)|0); + HEAP32[$rc>>2] = $46; + $47 = HEAP32[$zSql>>2]|0; + _sqlite3_free($47); + $48 = HEAP32[$pStmt>>2]|0; + $49 = HEAP32[$1>>2]|0; + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 56|0); + $52 = (($51) + ($49<<2)|0); + HEAP32[$52>>2] = $48; + break; + } else { + HEAP32[$rc>>2] = 7; + break; + } + } + } while(0); + $53 = HEAP32[$3>>2]|0; + $54 = ($53|0)!=(0|0); + if (!($54)) { + $72 = HEAP32[$pStmt>>2]|0; + $73 = HEAP32[$2>>2]|0; + HEAP32[$73>>2] = $72; + $74 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($74|0); + } + $55 = HEAP32[$pStmt>>2]|0; + $56 = (_sqlite3_bind_parameter_count($55)|0); + HEAP32[$nParam>>2] = $56; + HEAP32[$i>>2] = 0; + while(1) { + $57 = HEAP32[$rc>>2]|0; + $58 = ($57|0)==(0); + if (!($58)) { + label = 15; + break; + } + $59 = HEAP32[$i>>2]|0; + $60 = HEAP32[$nParam>>2]|0; + $61 = ($59|0)<($60|0); + if (!($61)) { + label = 15; + break; + } + $62 = HEAP32[$pStmt>>2]|0; + $63 = HEAP32[$i>>2]|0; + $64 = (($63) + 1)|0; + $65 = HEAP32[$i>>2]|0; + $66 = HEAP32[$3>>2]|0; + $67 = (($66) + ($65<<2)|0); + $68 = HEAP32[$67>>2]|0; + $69 = (_sqlite3_bind_value($62,$64,$68)|0); + HEAP32[$rc>>2] = $69; + $70 = HEAP32[$i>>2]|0; + $71 = (($70) + 1)|0; + HEAP32[$i>>2] = $71; + } + if ((label|0) == 15) { + $72 = HEAP32[$pStmt>>2]|0; + $73 = HEAP32[$2>>2]|0; + HEAP32[$73>>2] = $72; + $74 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($74|0); + } + return 0|0; +} +function _sqlite3Fts3SegReaderCursor($p,$iLangid,$iIndex,$iLevel,$zTerm,$nTerm,$isPrefix,$isScan,$pCsr) { + $p = $p|0; + $iLangid = $iLangid|0; + $iIndex = $iIndex|0; + $iLevel = $iLevel|0; + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + $isPrefix = $isPrefix|0; + $isScan = $isScan|0; + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $4 = sp + 16|0; + $5 = sp + 8|0; + $6 = sp + 4|0; + $7 = sp; + $8 = sp + 12|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iLangid; + HEAP32[$2>>2] = $iIndex; + HEAP32[$3>>2] = $iLevel; + HEAP32[$4>>2] = $zTerm; + HEAP32[$5>>2] = $nTerm; + HEAP32[$6>>2] = $isPrefix; + HEAP32[$7>>2] = $isScan; + HEAP32[$8>>2] = $pCsr; + $9 = HEAP32[$8>>2]|0; + dest=$9+0|0; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$3>>2]|0; + $14 = HEAP32[$4>>2]|0; + $15 = HEAP32[$5>>2]|0; + $16 = HEAP32[$6>>2]|0; + $17 = HEAP32[$7>>2]|0; + $18 = HEAP32[$8>>2]|0; + $19 = (_fts3SegReaderCursor($10,$11,$12,$13,$14,$15,$16,$17,$18)|0); + STACKTOP = sp;return ($19|0); +} +function _fts3SegmentMaxLevel($p,$iLangid,$iIndex,$pnMax) { + $p = $p|0; + $iLangid = $iLangid|0; + $iIndex = $iIndex|0; + $pnMax = $pnMax|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $pStmt = sp + 16|0; + $rc = sp + 20|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $iLangid; + HEAP32[$3>>2] = $iIndex; + HEAP32[$4>>2] = $pnMax; + $5 = HEAP32[$1>>2]|0; + $6 = (_fts3SqlStmt($5,15,$pStmt,0)|0); + HEAP32[$rc>>2] = $6; + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)!=(0); + if ($8) { + $9 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $9; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); + } + $10 = HEAP32[$pStmt>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$3>>2]|0; + $14 = (_getAbsoluteLevel($11,$12,$13,0)|0); + $15 = tempRet0; + (_sqlite3_bind_int64($10,1,$14,$15)|0); + $16 = HEAP32[$pStmt>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = HEAP32[$3>>2]|0; + $20 = (_getAbsoluteLevel($17,$18,$19,1023)|0); + $21 = tempRet0; + (_sqlite3_bind_int64($16,2,$20,$21)|0); + $22 = HEAP32[$pStmt>>2]|0; + $23 = (_sqlite3_step($22)|0); + $24 = (100)==($23|0); + if ($24) { + $25 = HEAP32[$pStmt>>2]|0; + $26 = (_sqlite3_column_int64($25,0)|0); + $27 = tempRet0; + $28 = HEAP32[$4>>2]|0; + $29 = $28; + $30 = $29; + HEAP32[$30>>2] = $26; + $31 = (($29) + 4)|0; + $32 = $31; + HEAP32[$32>>2] = $27; + } + $33 = HEAP32[$pStmt>>2]|0; + $34 = (_sqlite3_reset($33)|0); + HEAP32[$0>>2] = $34; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); +} +function _getAbsoluteLevel($p,$iLangid,$iIndex,$iLevel) { + $p = $p|0; + $iLangid = $iLangid|0; + $iIndex = $iIndex|0; + $iLevel = $iLevel|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iBase = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp + 16|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $iBase = sp; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iLangid; + HEAP32[$2>>2] = $iIndex; + HEAP32[$3>>2] = $iLevel; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)<(0); + $6 = $5 << 31 >> 31; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 248|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)<(0); + $11 = $10 << 31 >> 31; + $12 = (___muldi3(($4|0),($6|0),($9|0),($11|0))|0); + $13 = tempRet0; + $14 = HEAP32[$2>>2]|0; + $15 = ($14|0)<(0); + $16 = $15 << 31 >> 31; + $17 = (_i64Add(($12|0),($13|0),($14|0),($16|0))|0); + $18 = tempRet0; + $19 = (___muldi3(($17|0),($18|0),1024,0)|0); + $20 = tempRet0; + $21 = $iBase; + $22 = $21; + HEAP32[$22>>2] = $19; + $23 = (($21) + 4)|0; + $24 = $23; + HEAP32[$24>>2] = $20; + $25 = $iBase; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$3>>2]|0; + $32 = ($31|0)<(0); + $33 = $32 << 31 >> 31; + $34 = (_i64Add(($27|0),($30|0),($31|0),($33|0))|0); + $35 = tempRet0; + tempRet0 = $35; + STACKTOP = sp;return ($34|0); +} +function _fts3AllocateSegdirIdx($p,$iLangid,$iIndex,$iLevel,$piIdx) { + $p = $p|0; + $iLangid = $iLangid|0; + $iIndex = $iIndex|0; + $iLevel = $iLevel|0; + $piIdx = $piIdx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iNext = 0, $pNextIdx = 0, $rc = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $rc = sp + 16|0; + $pNextIdx = sp + 20|0; + $iNext = sp + 24|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iLangid; + HEAP32[$2>>2] = $iIndex; + HEAP32[$3>>2] = $iLevel; + HEAP32[$4>>2] = $piIdx; + HEAP32[$iNext>>2] = 0; + $5 = HEAP32[$0>>2]|0; + $6 = (_fts3SqlStmt($5,8,$pNextIdx,0)|0); + HEAP32[$rc>>2] = $6; + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)==(0); + if ($8) { + $9 = HEAP32[$pNextIdx>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$3>>2]|0; + $14 = (_getAbsoluteLevel($10,$11,$12,$13)|0); + $15 = tempRet0; + (_sqlite3_bind_int64($9,1,$14,$15)|0); + $16 = HEAP32[$pNextIdx>>2]|0; + $17 = (_sqlite3_step($16)|0); + $18 = (100)==($17|0); + if ($18) { + $19 = HEAP32[$pNextIdx>>2]|0; + $20 = (_sqlite3_column_int($19,0)|0); + HEAP32[$iNext>>2] = $20; + } + $21 = HEAP32[$pNextIdx>>2]|0; + $22 = (_sqlite3_reset($21)|0); + HEAP32[$rc>>2] = $22; + } + $23 = HEAP32[$rc>>2]|0; + $24 = ($23|0)==(0); + if (!($24)) { + $35 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($35|0); + } + $25 = HEAP32[$iNext>>2]|0; + $26 = ($25|0)>=(16); + if ($26) { + $27 = HEAP32[$0>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = HEAP32[$2>>2]|0; + $30 = HEAP32[$3>>2]|0; + $31 = (_fts3SegmentMerge($27,$28,$29,$30)|0); + HEAP32[$rc>>2] = $31; + $32 = HEAP32[$4>>2]|0; + HEAP32[$32>>2] = 0; + $35 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($35|0); + } else { + $33 = HEAP32[$iNext>>2]|0; + $34 = HEAP32[$4>>2]|0; + HEAP32[$34>>2] = $33; + $35 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($35|0); + } + return 0|0; +} +function _sqlite3Fts3SegReaderStart($p,$pCsr,$pFilter) { + $p = $p|0; + $pCsr = $pCsr|0; + $pFilter = $pFilter|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $pFilter; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 12|0); + HEAP32[$5>>2] = $3; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = (_fts3SegReaderStart($6,$7,$9,$12)|0); + STACKTOP = sp;return ($13|0); +} +function _sqlite3Fts3SegReaderStep($p,$pCsr) { + $p = $p|0; + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; + var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; + var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a = 0, $aNew = 0, $apSegment = 0; + var $i = 0, $iDelta = 0, $iDocid = 0, $iPrev = 0, $isColFilter = 0, $isFirst = 0, $isIgnoreEmpty = 0, $isPrefix = 0, $isRequirePos = 0, $isScan = 0, $j = 0, $nByte = 0, $nDoclist = 0, $nList = 0, $nMerge = 0, $nSegment = 0, $nWrite = 0, $pFilter = 0, $pList = 0, $pSeg = 0; + var $rc = 0, $xCmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $0 = sp + 120|0; + $1 = sp + 116|0; + $2 = sp + 112|0; + $rc = sp + 108|0; + $isIgnoreEmpty = sp + 104|0; + $isRequirePos = sp + 100|0; + $isColFilter = sp + 96|0; + $isPrefix = sp + 92|0; + $isScan = sp + 88|0; + $isFirst = sp + 84|0; + $apSegment = sp + 80|0; + $nSegment = sp + 76|0; + $pFilter = sp + 72|0; + $xCmp = sp + 68|0; + $nMerge = sp + 64|0; + $i = sp + 44|0; + $pSeg = sp + 40|0; + $nDoclist = sp + 36|0; + $iPrev = sp; + $j = sp + 24|0; + $pList = sp + 32|0; + $nList = sp + 28|0; + $nByte = sp + 48|0; + $iDocid = sp + 16|0; + $iDelta = sp + 8|0; + $aNew = sp + 52|0; + $a = sp + 56|0; + $nWrite = sp + 60|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pCsr; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + 12|0); + $7 = HEAP32[$6>>2]|0; + $8 = $7 & 2; + HEAP32[$isIgnoreEmpty>>2] = $8; + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + 12|0); + $13 = HEAP32[$12>>2]|0; + $14 = $13 & 1; + HEAP32[$isRequirePos>>2] = $14; + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 12|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + 12|0); + $19 = HEAP32[$18>>2]|0; + $20 = $19 & 4; + HEAP32[$isColFilter>>2] = $20; + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 12|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + 12|0); + $25 = HEAP32[$24>>2]|0; + $26 = $25 & 8; + HEAP32[$isPrefix>>2] = $26; + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 12|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + 12|0); + $31 = HEAP32[$30>>2]|0; + $32 = $31 & 16; + HEAP32[$isScan>>2] = $32; + $33 = HEAP32[$2>>2]|0; + $34 = (($33) + 12|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + 12|0); + $37 = HEAP32[$36>>2]|0; + $38 = $37 & 32; + HEAP32[$isFirst>>2] = $38; + $39 = HEAP32[$2>>2]|0; + $40 = HEAP32[$39>>2]|0; + HEAP32[$apSegment>>2] = $40; + $41 = HEAP32[$2>>2]|0; + $42 = (($41) + 4|0); + $43 = HEAP32[$42>>2]|0; + HEAP32[$nSegment>>2] = $43; + $44 = HEAP32[$2>>2]|0; + $45 = (($44) + 12|0); + $46 = HEAP32[$45>>2]|0; + HEAP32[$pFilter>>2] = $46; + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 231|0); + $49 = HEAP8[$48>>0]|0; + $50 = $49&255; + $51 = ($50|0)!=(0); + $52 = $51 ? 49 : 50; + HEAP32[$xCmp>>2] = $52; + $53 = HEAP32[$2>>2]|0; + $54 = (($53) + 4|0); + $55 = HEAP32[$54>>2]|0; + $56 = ($55|0)==(0); + if ($56) { + HEAP32[$0>>2] = 0; + $475 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($475|0); + } + L4: while(1) { + HEAP32[$i>>2] = 0; + while(1) { + $57 = HEAP32[$i>>2]|0; + $58 = HEAP32[$2>>2]|0; + $59 = (($58) + 8|0); + $60 = HEAP32[$59>>2]|0; + $61 = ($57|0)<($60|0); + if (!($61)) { + break; + } + $62 = HEAP32[$i>>2]|0; + $63 = HEAP32[$apSegment>>2]|0; + $64 = (($63) + ($62<<2)|0); + $65 = HEAP32[$64>>2]|0; + HEAP32[$pSeg>>2] = $65; + $66 = HEAP32[$pSeg>>2]|0; + $67 = (($66) + 4|0); + $68 = HEAP8[$67>>0]|0; + $69 = ($68<<24>>24)!=(0); + if ($69) { + $70 = HEAP32[$pSeg>>2]|0; + _fts3SegReaderSetEof($70); + } else { + $71 = HEAP32[$1>>2]|0; + $72 = HEAP32[$pSeg>>2]|0; + $73 = (_fts3SegReaderNext($71,$72,0)|0); + HEAP32[$rc>>2] = $73; + } + $74 = HEAP32[$rc>>2]|0; + $75 = ($74|0)!=(0); + if ($75) { + label = 9; + break L4; + } + $77 = HEAP32[$i>>2]|0; + $78 = (($77) + 1)|0; + HEAP32[$i>>2] = $78; + } + $79 = HEAP32[$apSegment>>2]|0; + $80 = HEAP32[$nSegment>>2]|0; + $81 = HEAP32[$2>>2]|0; + $82 = (($81) + 8|0); + $83 = HEAP32[$82>>2]|0; + _fts3SegReaderSort($79,$80,$83,51); + $84 = HEAP32[$2>>2]|0; + $85 = (($84) + 8|0); + HEAP32[$85>>2] = 0; + $86 = HEAP32[$apSegment>>2]|0; + $87 = HEAP32[$86>>2]|0; + $88 = (($87) + 40|0); + $89 = HEAP32[$88>>2]|0; + $90 = ($89|0)==(0|0); + if ($90) { + label = 68; + break; + } + $91 = HEAP32[$apSegment>>2]|0; + $92 = HEAP32[$91>>2]|0; + $93 = (($92) + 60|0); + $94 = HEAP32[$93>>2]|0; + $95 = HEAP32[$2>>2]|0; + $96 = (($95) + 44|0); + HEAP32[$96>>2] = $94; + $97 = HEAP32[$apSegment>>2]|0; + $98 = HEAP32[$97>>2]|0; + $99 = (($98) + 64|0); + $100 = HEAP32[$99>>2]|0; + $101 = HEAP32[$2>>2]|0; + $102 = (($101) + 40|0); + HEAP32[$102>>2] = $100; + $103 = HEAP32[$pFilter>>2]|0; + $104 = HEAP32[$103>>2]|0; + $105 = ($104|0)!=(0|0); + if ($105) { + $106 = HEAP32[$isScan>>2]|0; + $107 = ($106|0)!=(0); + if (!($107)) { + $108 = HEAP32[$2>>2]|0; + $109 = (($108) + 44|0); + $110 = HEAP32[$109>>2]|0; + $111 = HEAP32[$pFilter>>2]|0; + $112 = (($111) + 4|0); + $113 = HEAP32[$112>>2]|0; + $114 = ($110|0)<($113|0); + if ($114) { + label = 68; + break; + } + $115 = HEAP32[$isPrefix>>2]|0; + $116 = ($115|0)!=(0); + if (!($116)) { + $117 = HEAP32[$2>>2]|0; + $118 = (($117) + 44|0); + $119 = HEAP32[$118>>2]|0; + $120 = HEAP32[$pFilter>>2]|0; + $121 = (($120) + 4|0); + $122 = HEAP32[$121>>2]|0; + $123 = ($119|0)>($122|0); + if ($123) { + label = 68; + break; + } + } + $124 = HEAP32[$2>>2]|0; + $125 = (($124) + 40|0); + $126 = HEAP32[$125>>2]|0; + $127 = HEAP32[$pFilter>>2]|0; + $128 = HEAP32[$127>>2]|0; + $129 = HEAP32[$pFilter>>2]|0; + $130 = (($129) + 4|0); + $131 = HEAP32[$130>>2]|0; + $132 = (_memcmp($126,$128,$131)|0); + $133 = ($132|0)!=(0); + if ($133) { + label = 68; + break; + } + } + } + HEAP32[$nMerge>>2] = 1; + while(1) { + $134 = HEAP32[$nMerge>>2]|0; + $135 = HEAP32[$nSegment>>2]|0; + $136 = ($134|0)<($135|0); + if ($136) { + $137 = HEAP32[$nMerge>>2]|0; + $138 = HEAP32[$apSegment>>2]|0; + $139 = (($138) + ($137<<2)|0); + $140 = HEAP32[$139>>2]|0; + $141 = (($140) + 40|0); + $142 = HEAP32[$141>>2]|0; + $143 = ($142|0)!=(0|0); + if ($143) { + $144 = HEAP32[$nMerge>>2]|0; + $145 = HEAP32[$apSegment>>2]|0; + $146 = (($145) + ($144<<2)|0); + $147 = HEAP32[$146>>2]|0; + $148 = (($147) + 60|0); + $149 = HEAP32[$148>>2]|0; + $150 = HEAP32[$2>>2]|0; + $151 = (($150) + 44|0); + $152 = HEAP32[$151>>2]|0; + $153 = ($149|0)==($152|0); + if ($153) { + $154 = HEAP32[$2>>2]|0; + $155 = (($154) + 40|0); + $156 = HEAP32[$155>>2]|0; + $157 = HEAP32[$nMerge>>2]|0; + $158 = HEAP32[$apSegment>>2]|0; + $159 = (($158) + ($157<<2)|0); + $160 = HEAP32[$159>>2]|0; + $161 = (($160) + 64|0); + $162 = HEAP32[$161>>2]|0; + $163 = HEAP32[$2>>2]|0; + $164 = (($163) + 44|0); + $165 = HEAP32[$164>>2]|0; + $166 = (_memcmp($156,$162,$165)|0); + $167 = (0)==($166|0); + $476 = $167; + } else { + $476 = 0; + } + } else { + $476 = 0; + } + } else { + $476 = 0; + } + $168 = HEAP32[$nMerge>>2]|0; + if (!($476)) { + break; + } + $169 = (($168) + 1)|0; + HEAP32[$nMerge>>2] = $169; + } + $170 = ($168|0)==(1); + do { + if ($170) { + $171 = HEAP32[$isIgnoreEmpty>>2]|0; + $172 = ($171|0)!=(0); + if ($172) { + label = 35; + } else { + $173 = HEAP32[$isFirst>>2]|0; + $174 = ($173|0)!=(0); + if ($174) { + label = 35; + } else { + $175 = HEAP32[$1>>2]|0; + $176 = (($175) + 231|0); + $177 = HEAP8[$176>>0]|0; + $178 = $177&255; + $179 = ($178|0)==(0); + if (!($179)) { + $180 = HEAP32[$apSegment>>2]|0; + $181 = HEAP32[$180>>2]|0; + $182 = (($181) + 56|0); + $183 = HEAP32[$182>>2]|0; + $184 = ($183|0)!=(0|0); + $185 = $184&1; + $186 = ($185|0)==(0); + if (!($186)) { + label = 35; + break; + } + } + $187 = HEAP32[$apSegment>>2]|0; + $188 = HEAP32[$187>>2]|0; + $189 = (($188) + 76|0); + $190 = HEAP32[$189>>2]|0; + $191 = HEAP32[$2>>2]|0; + $192 = (($191) + 52|0); + HEAP32[$192>>2] = $190; + $193 = HEAP32[$apSegment>>2]|0; + $194 = HEAP32[$193>>2]|0; + $195 = (($194) + 56|0); + $196 = HEAP32[$195>>2]|0; + $197 = ($196|0)!=(0|0); + if ($197) { + $198 = HEAP32[$2>>2]|0; + $199 = HEAP32[$apSegment>>2]|0; + $200 = HEAP32[$199>>2]|0; + $201 = (($200) + 72|0); + $202 = HEAP32[$201>>2]|0; + $203 = HEAP32[$2>>2]|0; + $204 = (($203) + 52|0); + $205 = HEAP32[$204>>2]|0; + $206 = (_fts3MsrBufferData($198,$202,$205)|0); + HEAP32[$rc>>2] = $206; + $207 = HEAP32[$2>>2]|0; + $208 = (($207) + 16|0); + $209 = HEAP32[$208>>2]|0; + $210 = HEAP32[$2>>2]|0; + $211 = (($210) + 48|0); + HEAP32[$211>>2] = $209; + } else { + $212 = HEAP32[$apSegment>>2]|0; + $213 = HEAP32[$212>>2]|0; + $214 = (($213) + 72|0); + $215 = HEAP32[$214>>2]|0; + $216 = HEAP32[$2>>2]|0; + $217 = (($216) + 48|0); + HEAP32[$217>>2] = $215; + } + $218 = HEAP32[$rc>>2]|0; + $219 = ($218|0)==(0); + if ($219) { + HEAP32[$rc>>2] = 100; + } + } + } + } else { + label = 35; + } + } while(0); + if ((label|0) == 35) { + label = 0; + HEAP32[$nDoclist>>2] = 0; + $220 = $iPrev; + $221 = $220; + HEAP32[$221>>2] = 0; + $222 = (($220) + 4)|0; + $223 = $222; + HEAP32[$223>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $224 = HEAP32[$i>>2]|0; + $225 = HEAP32[$nMerge>>2]|0; + $226 = ($224|0)<($225|0); + if (!($226)) { + break; + } + $227 = HEAP32[$1>>2]|0; + $228 = HEAP32[$i>>2]|0; + $229 = HEAP32[$apSegment>>2]|0; + $230 = (($229) + ($228<<2)|0); + $231 = HEAP32[$230>>2]|0; + (_fts3SegReaderFirstDocid($227,$231)|0); + $232 = HEAP32[$i>>2]|0; + $233 = (($232) + 1)|0; + HEAP32[$i>>2] = $233; + } + $234 = HEAP32[$apSegment>>2]|0; + $235 = HEAP32[$nMerge>>2]|0; + $236 = HEAP32[$nMerge>>2]|0; + $237 = HEAP32[$xCmp>>2]|0; + _fts3SegReaderSort($234,$235,$236,$237); + while(1) { + $238 = HEAP32[$apSegment>>2]|0; + $239 = HEAP32[$238>>2]|0; + $240 = (($239) + 80|0); + $241 = HEAP32[$240>>2]|0; + $242 = ($241|0)!=(0|0); + if (!($242)) { + break; + } + HEAP32[$pList>>2] = 0; + HEAP32[$nList>>2] = 0; + $243 = HEAP32[$apSegment>>2]|0; + $244 = HEAP32[$243>>2]|0; + $245 = (($244) + 88|0); + $246 = $245; + $247 = $246; + $248 = HEAP32[$247>>2]|0; + $249 = (($246) + 4)|0; + $250 = $249; + $251 = HEAP32[$250>>2]|0; + $252 = $iDocid; + $253 = $252; + HEAP32[$253>>2] = $248; + $254 = (($252) + 4)|0; + $255 = $254; + HEAP32[$255>>2] = $251; + $256 = HEAP32[$1>>2]|0; + $257 = HEAP32[$apSegment>>2]|0; + $258 = HEAP32[$257>>2]|0; + (_fts3SegReaderNextDocid($256,$258,$pList,$nList)|0); + HEAP32[$j>>2] = 1; + while(1) { + $259 = HEAP32[$j>>2]|0; + $260 = HEAP32[$nMerge>>2]|0; + $261 = ($259|0)<($260|0); + if (!($261)) { + break; + } + $262 = HEAP32[$j>>2]|0; + $263 = HEAP32[$apSegment>>2]|0; + $264 = (($263) + ($262<<2)|0); + $265 = HEAP32[$264>>2]|0; + $266 = (($265) + 80|0); + $267 = HEAP32[$266>>2]|0; + $268 = ($267|0)!=(0|0); + if (!($268)) { + break; + } + $269 = HEAP32[$j>>2]|0; + $270 = HEAP32[$apSegment>>2]|0; + $271 = (($270) + ($269<<2)|0); + $272 = HEAP32[$271>>2]|0; + $273 = (($272) + 88|0); + $274 = $273; + $275 = $274; + $276 = HEAP32[$275>>2]|0; + $277 = (($274) + 4)|0; + $278 = $277; + $279 = HEAP32[$278>>2]|0; + $280 = $iDocid; + $281 = $280; + $282 = HEAP32[$281>>2]|0; + $283 = (($280) + 4)|0; + $284 = $283; + $285 = HEAP32[$284>>2]|0; + $286 = ($276|0)==($282|0); + $287 = ($279|0)==($285|0); + $288 = $286 & $287; + if (!($288)) { + break; + } + $289 = HEAP32[$1>>2]|0; + $290 = HEAP32[$j>>2]|0; + $291 = HEAP32[$apSegment>>2]|0; + $292 = (($291) + ($290<<2)|0); + $293 = HEAP32[$292>>2]|0; + (_fts3SegReaderNextDocid($289,$293,0,0)|0); + $294 = HEAP32[$j>>2]|0; + $295 = (($294) + 1)|0; + HEAP32[$j>>2] = $295; + } + $296 = HEAP32[$isColFilter>>2]|0; + $297 = ($296|0)!=(0); + if ($297) { + $298 = HEAP32[$pFilter>>2]|0; + $299 = (($298) + 8|0); + $300 = HEAP32[$299>>2]|0; + _fts3ColumnFilter($300,0,$pList,$nList); + } + $301 = HEAP32[$isIgnoreEmpty>>2]|0; + $302 = ($301|0)!=(0); + if ($302) { + $303 = HEAP32[$nList>>2]|0; + $304 = ($303|0)>(0); + if ($304) { + label = 49; + } + } else { + label = 49; + } + do { + if ((label|0) == 49) { + label = 0; + $305 = HEAP32[$1>>2]|0; + $306 = (($305) + 231|0); + $307 = HEAP8[$306>>0]|0; + $308 = $307&255; + $309 = ($308|0)!=(0); + if ($309) { + $310 = HEAP32[$nDoclist>>2]|0; + $311 = ($310|0)>(0); + if ($311) { + $312 = $iPrev; + $313 = $312; + $314 = HEAP32[$313>>2]|0; + $315 = (($312) + 4)|0; + $316 = $315; + $317 = HEAP32[$316>>2]|0; + $318 = $iDocid; + $319 = $318; + $320 = HEAP32[$319>>2]|0; + $321 = (($318) + 4)|0; + $322 = $321; + $323 = HEAP32[$322>>2]|0; + $324 = (_i64Subtract(($314|0),($317|0),($320|0),($323|0))|0); + $325 = tempRet0; + $326 = $iDelta; + $327 = $326; + HEAP32[$327>>2] = $324; + $328 = (($326) + 4)|0; + $329 = $328; + HEAP32[$329>>2] = $325; + } else { + label = 52; + } + } else { + label = 52; + } + if ((label|0) == 52) { + label = 0; + $330 = $iDocid; + $331 = $330; + $332 = HEAP32[$331>>2]|0; + $333 = (($330) + 4)|0; + $334 = $333; + $335 = HEAP32[$334>>2]|0; + $336 = $iPrev; + $337 = $336; + $338 = HEAP32[$337>>2]|0; + $339 = (($336) + 4)|0; + $340 = $339; + $341 = HEAP32[$340>>2]|0; + $342 = (_i64Subtract(($332|0),($335|0),($338|0),($341|0))|0); + $343 = tempRet0; + $344 = $iDelta; + $345 = $344; + HEAP32[$345>>2] = $342; + $346 = (($344) + 4)|0; + $347 = $346; + HEAP32[$347>>2] = $343; + } + $348 = $iDelta; + $349 = $348; + $350 = HEAP32[$349>>2]|0; + $351 = (($348) + 4)|0; + $352 = $351; + $353 = HEAP32[$352>>2]|0; + $354 = (_sqlite3Fts3VarintLen($350,$353)|0); + $355 = HEAP32[$isRequirePos>>2]|0; + $356 = ($355|0)!=(0); + if ($356) { + $357 = HEAP32[$nList>>2]|0; + $358 = (($357) + 1)|0; + $360 = $358; + } else { + $360 = 0; + } + $359 = (($354) + ($360))|0; + HEAP32[$nByte>>2] = $359; + $361 = HEAP32[$nDoclist>>2]|0; + $362 = HEAP32[$nByte>>2]|0; + $363 = (($361) + ($362))|0; + $364 = HEAP32[$2>>2]|0; + $365 = (($364) + 20|0); + $366 = HEAP32[$365>>2]|0; + $367 = ($363|0)>($366|0); + if ($367) { + $368 = HEAP32[$nDoclist>>2]|0; + $369 = HEAP32[$nByte>>2]|0; + $370 = (($368) + ($369))|0; + $371 = $370<<1; + $372 = HEAP32[$2>>2]|0; + $373 = (($372) + 20|0); + HEAP32[$373>>2] = $371; + $374 = HEAP32[$2>>2]|0; + $375 = (($374) + 16|0); + $376 = HEAP32[$375>>2]|0; + $377 = HEAP32[$2>>2]|0; + $378 = (($377) + 20|0); + $379 = HEAP32[$378>>2]|0; + $380 = (_sqlite3_realloc($376,$379)|0); + HEAP32[$aNew>>2] = $380; + $381 = HEAP32[$aNew>>2]|0; + $382 = ($381|0)!=(0|0); + if (!($382)) { + label = 57; + break L4; + } + $383 = HEAP32[$aNew>>2]|0; + $384 = HEAP32[$2>>2]|0; + $385 = (($384) + 16|0); + HEAP32[$385>>2] = $383; + } + $386 = HEAP32[$isFirst>>2]|0; + $387 = ($386|0)!=(0); + $388 = HEAP32[$nDoclist>>2]|0; + $389 = HEAP32[$2>>2]|0; + $390 = (($389) + 16|0); + $391 = HEAP32[$390>>2]|0; + $392 = (($391) + ($388)|0); + if ($387) { + HEAP32[$a>>2] = $392; + $393 = $iDelta; + $394 = $393; + $395 = HEAP32[$394>>2]|0; + $396 = (($393) + 4)|0; + $397 = $396; + $398 = HEAP32[$397>>2]|0; + $399 = HEAP32[$pList>>2]|0; + $400 = HEAP32[$nList>>2]|0; + $401 = HEAP32[$a>>2]|0; + $402 = (_sqlite3Fts3FirstFilter($395,$398,$399,$400,$401)|0); + HEAP32[$nWrite>>2] = $402; + $403 = HEAP32[$nWrite>>2]|0; + $404 = ($403|0)!=(0); + if (!($404)) { + break; + } + $405 = $iDocid; + $406 = $405; + $407 = HEAP32[$406>>2]|0; + $408 = (($405) + 4)|0; + $409 = $408; + $410 = HEAP32[$409>>2]|0; + $411 = $iPrev; + $412 = $411; + HEAP32[$412>>2] = $407; + $413 = (($411) + 4)|0; + $414 = $413; + HEAP32[$414>>2] = $410; + $415 = HEAP32[$nWrite>>2]|0; + $416 = HEAP32[$nDoclist>>2]|0; + $417 = (($416) + ($415))|0; + HEAP32[$nDoclist>>2] = $417; + break; + } else { + $418 = $iDelta; + $419 = $418; + $420 = HEAP32[$419>>2]|0; + $421 = (($418) + 4)|0; + $422 = $421; + $423 = HEAP32[$422>>2]|0; + $424 = (_sqlite3Fts3PutVarint($392,$420,$423)|0); + $425 = HEAP32[$nDoclist>>2]|0; + $426 = (($425) + ($424))|0; + HEAP32[$nDoclist>>2] = $426; + $427 = $iDocid; + $428 = $427; + $429 = HEAP32[$428>>2]|0; + $430 = (($427) + 4)|0; + $431 = $430; + $432 = HEAP32[$431>>2]|0; + $433 = $iPrev; + $434 = $433; + HEAP32[$434>>2] = $429; + $435 = (($433) + 4)|0; + $436 = $435; + HEAP32[$436>>2] = $432; + $437 = HEAP32[$isRequirePos>>2]|0; + $438 = ($437|0)!=(0); + if (!($438)) { + break; + } + $439 = HEAP32[$nDoclist>>2]|0; + $440 = HEAP32[$2>>2]|0; + $441 = (($440) + 16|0); + $442 = HEAP32[$441>>2]|0; + $443 = (($442) + ($439)|0); + $444 = HEAP32[$pList>>2]|0; + $445 = HEAP32[$nList>>2]|0; + _memcpy(($443|0),($444|0),($445|0))|0; + $446 = HEAP32[$nList>>2]|0; + $447 = HEAP32[$nDoclist>>2]|0; + $448 = (($447) + ($446))|0; + HEAP32[$nDoclist>>2] = $448; + $449 = HEAP32[$nDoclist>>2]|0; + $450 = (($449) + 1)|0; + HEAP32[$nDoclist>>2] = $450; + $451 = HEAP32[$2>>2]|0; + $452 = (($451) + 16|0); + $453 = HEAP32[$452>>2]|0; + $454 = (($453) + ($449)|0); + HEAP8[$454>>0] = 0; + break; + } + } + } while(0); + $455 = HEAP32[$apSegment>>2]|0; + $456 = HEAP32[$nMerge>>2]|0; + $457 = HEAP32[$j>>2]|0; + $458 = HEAP32[$xCmp>>2]|0; + _fts3SegReaderSort($455,$456,$457,$458); + } + $459 = HEAP32[$nDoclist>>2]|0; + $460 = ($459|0)>(0); + if ($460) { + $461 = HEAP32[$2>>2]|0; + $462 = (($461) + 16|0); + $463 = HEAP32[$462>>2]|0; + $464 = HEAP32[$2>>2]|0; + $465 = (($464) + 48|0); + HEAP32[$465>>2] = $463; + $466 = HEAP32[$nDoclist>>2]|0; + $467 = HEAP32[$2>>2]|0; + $468 = (($467) + 52|0); + HEAP32[$468>>2] = $466; + HEAP32[$rc>>2] = 100; + } + } + $469 = HEAP32[$nMerge>>2]|0; + $470 = HEAP32[$2>>2]|0; + $471 = (($470) + 8|0); + HEAP32[$471>>2] = $469; + $472 = HEAP32[$rc>>2]|0; + $473 = ($472|0)==(0); + if (!($473)) { + label = 68; + break; + } + } + if ((label|0) == 9) { + $76 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $76; + $475 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($475|0); + } + else if ((label|0) == 57) { + HEAP32[$0>>2] = 7; + $475 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($475|0); + } + else if ((label|0) == 68) { + $474 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $474; + $475 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($475|0); + } + return 0|0; +} +function _fts3SegWriterAdd($p,$ppWriter,$isCopyTerm,$zTerm,$nTerm,$aDoclist,$nDoclist) { + $p = $p|0; + $ppWriter = $ppWriter|0; + $isCopyTerm = $isCopyTerm|0; + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + $aDoclist = $aDoclist|0; + $nDoclist = $nDoclist|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aNew = 0, $nData = 0, $nPrefix = 0, $nReq = 0, $nSuffix = 0, $pStmt = 0; + var $pWriter = 0, $rc = 0, $rc1 = 0, $zNew = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 68|0; + $1 = sp + 64|0; + $2 = sp + 60|0; + $3 = sp + 56|0; + $4 = sp + 52|0; + $5 = sp + 48|0; + $6 = sp + 44|0; + $7 = sp + 40|0; + $nPrefix = sp + 36|0; + $nSuffix = sp + 32|0; + $nReq = sp + 24|0; + $nData = sp + 20|0; + $pWriter = sp + 16|0; + $rc = sp + 12|0; + $pStmt = sp + 8|0; + $rc1 = sp + 4|0; + $aNew = sp; + $zNew = sp + 28|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $ppWriter; + HEAP32[$3>>2] = $isCopyTerm; + HEAP32[$4>>2] = $zTerm; + HEAP32[$5>>2] = $nTerm; + HEAP32[$6>>2] = $aDoclist; + HEAP32[$7>>2] = $nDoclist; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$pWriter>>2] = $9; + $10 = HEAP32[$pWriter>>2]|0; + $11 = ($10|0)!=(0|0); + if (!($11)) { + $12 = (_sqlite3_malloc(64)|0); + HEAP32[$pWriter>>2] = $12; + $13 = HEAP32[$pWriter>>2]|0; + $14 = ($13|0)!=(0|0); + if (!($14)) { + HEAP32[$0>>2] = 7; + $293 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($293|0); + } + $15 = HEAP32[$pWriter>>2]|0; + dest=$15+0|0; stop=dest+64|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $16 = HEAP32[$pWriter>>2]|0; + $17 = HEAP32[$2>>2]|0; + HEAP32[$17>>2] = $16; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 224|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3_malloc($20)|0); + $22 = HEAP32[$pWriter>>2]|0; + $23 = (($22) + 48|0); + HEAP32[$23>>2] = $21; + $24 = HEAP32[$pWriter>>2]|0; + $25 = (($24) + 48|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)!=(0|0); + if (!($27)) { + HEAP32[$0>>2] = 7; + $293 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($293|0); + } + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 224|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$pWriter>>2]|0; + $32 = (($31) + 40|0); + HEAP32[$32>>2] = $30; + $33 = HEAP32[$1>>2]|0; + $34 = (_fts3SqlStmt($33,10,$pStmt,0)|0); + HEAP32[$rc>>2] = $34; + $35 = HEAP32[$rc>>2]|0; + $36 = ($35|0)!=(0); + if ($36) { + $37 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $37; + $293 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($293|0); + } + $38 = HEAP32[$pStmt>>2]|0; + $39 = (_sqlite3_step($38)|0); + $40 = (100)==($39|0); + if ($40) { + $41 = HEAP32[$pStmt>>2]|0; + $42 = (_sqlite3_column_int64($41,0)|0); + $43 = tempRet0; + $44 = HEAP32[$pWriter>>2]|0; + $45 = (($44) + 16|0); + $46 = $45; + $47 = $46; + HEAP32[$47>>2] = $42; + $48 = (($46) + 4)|0; + $49 = $48; + HEAP32[$49>>2] = $43; + $50 = HEAP32[$pWriter>>2]|0; + $51 = (($50) + 16|0); + $52 = $51; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = (($52) + 4)|0; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = HEAP32[$pWriter>>2]|0; + $59 = (($58) + 8|0); + $60 = $59; + $61 = $60; + HEAP32[$61>>2] = $54; + $62 = (($60) + 4)|0; + $63 = $62; + HEAP32[$63>>2] = $57; + } + $64 = HEAP32[$pStmt>>2]|0; + $65 = (_sqlite3_reset($64)|0); + HEAP32[$rc>>2] = $65; + $66 = HEAP32[$rc>>2]|0; + $67 = ($66|0)!=(0); + if ($67) { + $68 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $68; + $293 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($293|0); + } + } + $69 = HEAP32[$pWriter>>2]|0; + $70 = (($69) + 44|0); + $71 = HEAP32[$70>>2]|0; + HEAP32[$nData>>2] = $71; + $72 = HEAP32[$pWriter>>2]|0; + $73 = (($72) + 24|0); + $74 = HEAP32[$73>>2]|0; + $75 = HEAP32[$pWriter>>2]|0; + $76 = (($75) + 28|0); + $77 = HEAP32[$76>>2]|0; + $78 = HEAP32[$4>>2]|0; + $79 = HEAP32[$5>>2]|0; + $80 = (_fts3PrefixCompress($74,$77,$78,$79)|0); + HEAP32[$nPrefix>>2] = $80; + $81 = HEAP32[$5>>2]|0; + $82 = HEAP32[$nPrefix>>2]|0; + $83 = (($81) - ($82))|0; + HEAP32[$nSuffix>>2] = $83; + $84 = HEAP32[$nPrefix>>2]|0; + $85 = ($84|0)<(0); + $86 = $85 << 31 >> 31; + $87 = (_sqlite3Fts3VarintLen($84,$86)|0); + $88 = HEAP32[$nSuffix>>2]|0; + $89 = ($88|0)<(0); + $90 = $89 << 31 >> 31; + $91 = (_sqlite3Fts3VarintLen($88,$90)|0); + $92 = (($87) + ($91))|0; + $93 = HEAP32[$nSuffix>>2]|0; + $94 = (($92) + ($93))|0; + $95 = HEAP32[$7>>2]|0; + $96 = ($95|0)<(0); + $97 = $96 << 31 >> 31; + $98 = (_sqlite3Fts3VarintLen($95,$97)|0); + $99 = (($94) + ($98))|0; + $100 = HEAP32[$7>>2]|0; + $101 = (($99) + ($100))|0; + HEAP32[$nReq>>2] = $101; + $102 = HEAP32[$nData>>2]|0; + $103 = ($102|0)>(0); + do { + if ($103) { + $104 = HEAP32[$nData>>2]|0; + $105 = HEAP32[$nReq>>2]|0; + $106 = (($104) + ($105))|0; + $107 = HEAP32[$1>>2]|0; + $108 = (($107) + 224|0); + $109 = HEAP32[$108>>2]|0; + $110 = ($106|0)>($109|0); + if ($110) { + $111 = HEAP32[$1>>2]|0; + $112 = HEAP32[$pWriter>>2]|0; + $113 = (($112) + 16|0); + $114 = $113; + $115 = $114; + $116 = HEAP32[$115>>2]|0; + $117 = (($114) + 4)|0; + $118 = $117; + $119 = HEAP32[$118>>2]|0; + $120 = (_i64Add(($116|0),($119|0),1,0)|0); + $121 = tempRet0; + $122 = $113; + $123 = $122; + HEAP32[$123>>2] = $120; + $124 = (($122) + 4)|0; + $125 = $124; + HEAP32[$125>>2] = $121; + $126 = HEAP32[$pWriter>>2]|0; + $127 = (($126) + 48|0); + $128 = HEAP32[$127>>2]|0; + $129 = HEAP32[$nData>>2]|0; + $130 = (_fts3WriteSegment($111,$116,$119,$128,$129)|0); + HEAP32[$rc1>>2] = $130; + $131 = HEAP32[$rc1>>2]|0; + $132 = ($131|0)!=(0); + if ($132) { + $133 = HEAP32[$rc1>>2]|0; + HEAP32[$0>>2] = $133; + $293 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($293|0); + } + $134 = HEAP32[$1>>2]|0; + $135 = (($134) + 52|0); + $136 = HEAP32[$135>>2]|0; + $137 = (($136) + 1)|0; + HEAP32[$135>>2] = $137; + $138 = HEAP32[$1>>2]|0; + $139 = HEAP32[$pWriter>>2]|0; + $140 = HEAP32[$3>>2]|0; + $141 = HEAP32[$4>>2]|0; + $142 = HEAP32[$nPrefix>>2]|0; + $143 = (($142) + 1)|0; + $144 = (_fts3NodeAddTerm($138,$139,$140,$141,$143)|0); + HEAP32[$rc1>>2] = $144; + $145 = HEAP32[$rc1>>2]|0; + $146 = ($145|0)!=(0); + if (!($146)) { + HEAP32[$nData>>2] = 0; + $148 = HEAP32[$pWriter>>2]|0; + $149 = (($148) + 28|0); + HEAP32[$149>>2] = 0; + HEAP32[$nPrefix>>2] = 0; + $150 = HEAP32[$5>>2]|0; + HEAP32[$nSuffix>>2] = $150; + $151 = HEAP32[$5>>2]|0; + $152 = ($151|0)<(0); + $153 = $152 << 31 >> 31; + $154 = (_sqlite3Fts3VarintLen($151,$153)|0); + $155 = (1 + ($154))|0; + $156 = HEAP32[$5>>2]|0; + $157 = (($155) + ($156))|0; + $158 = HEAP32[$7>>2]|0; + $159 = ($158|0)<(0); + $160 = $159 << 31 >> 31; + $161 = (_sqlite3Fts3VarintLen($158,$160)|0); + $162 = (($157) + ($161))|0; + $163 = HEAP32[$7>>2]|0; + $164 = (($162) + ($163))|0; + HEAP32[$nReq>>2] = $164; + break; + } + $147 = HEAP32[$rc1>>2]|0; + HEAP32[$0>>2] = $147; + $293 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($293|0); + } + } + } while(0); + $165 = HEAP32[$nReq>>2]|0; + $166 = ($165|0)<(0); + $167 = $166 << 31 >> 31; + $168 = HEAP32[$pWriter>>2]|0; + $169 = (($168) + 56|0); + $170 = $169; + $171 = $170; + $172 = HEAP32[$171>>2]|0; + $173 = (($170) + 4)|0; + $174 = $173; + $175 = HEAP32[$174>>2]|0; + $176 = (_i64Add(($172|0),($175|0),($165|0),($167|0))|0); + $177 = tempRet0; + $178 = $169; + $179 = $178; + HEAP32[$179>>2] = $176; + $180 = (($178) + 4)|0; + $181 = $180; + HEAP32[$181>>2] = $177; + $182 = HEAP32[$nReq>>2]|0; + $183 = HEAP32[$pWriter>>2]|0; + $184 = (($183) + 40|0); + $185 = HEAP32[$184>>2]|0; + $186 = ($182|0)>($185|0); + do { + if ($186) { + $187 = HEAP32[$pWriter>>2]|0; + $188 = (($187) + 48|0); + $189 = HEAP32[$188>>2]|0; + $190 = HEAP32[$nReq>>2]|0; + $191 = (_sqlite3_realloc($189,$190)|0); + HEAP32[$aNew>>2] = $191; + $192 = HEAP32[$aNew>>2]|0; + $193 = ($192|0)!=(0|0); + if ($193) { + $194 = HEAP32[$aNew>>2]|0; + $195 = HEAP32[$pWriter>>2]|0; + $196 = (($195) + 48|0); + HEAP32[$196>>2] = $194; + $197 = HEAP32[$nReq>>2]|0; + $198 = HEAP32[$pWriter>>2]|0; + $199 = (($198) + 40|0); + HEAP32[$199>>2] = $197; + break; + } + HEAP32[$0>>2] = 7; + $293 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($293|0); + } + } while(0); + $200 = HEAP32[$nData>>2]|0; + $201 = HEAP32[$pWriter>>2]|0; + $202 = (($201) + 48|0); + $203 = HEAP32[$202>>2]|0; + $204 = (($203) + ($200)|0); + $205 = HEAP32[$nPrefix>>2]|0; + $206 = ($205|0)<(0); + $207 = $206 << 31 >> 31; + $208 = (_sqlite3Fts3PutVarint($204,$205,$207)|0); + $209 = HEAP32[$nData>>2]|0; + $210 = (($209) + ($208))|0; + HEAP32[$nData>>2] = $210; + $211 = HEAP32[$nData>>2]|0; + $212 = HEAP32[$pWriter>>2]|0; + $213 = (($212) + 48|0); + $214 = HEAP32[$213>>2]|0; + $215 = (($214) + ($211)|0); + $216 = HEAP32[$nSuffix>>2]|0; + $217 = ($216|0)<(0); + $218 = $217 << 31 >> 31; + $219 = (_sqlite3Fts3PutVarint($215,$216,$218)|0); + $220 = HEAP32[$nData>>2]|0; + $221 = (($220) + ($219))|0; + HEAP32[$nData>>2] = $221; + $222 = HEAP32[$nData>>2]|0; + $223 = HEAP32[$pWriter>>2]|0; + $224 = (($223) + 48|0); + $225 = HEAP32[$224>>2]|0; + $226 = (($225) + ($222)|0); + $227 = HEAP32[$nPrefix>>2]|0; + $228 = HEAP32[$4>>2]|0; + $229 = (($228) + ($227)|0); + $230 = HEAP32[$nSuffix>>2]|0; + _memcpy(($226|0),($229|0),($230|0))|0; + $231 = HEAP32[$nSuffix>>2]|0; + $232 = HEAP32[$nData>>2]|0; + $233 = (($232) + ($231))|0; + HEAP32[$nData>>2] = $233; + $234 = HEAP32[$nData>>2]|0; + $235 = HEAP32[$pWriter>>2]|0; + $236 = (($235) + 48|0); + $237 = HEAP32[$236>>2]|0; + $238 = (($237) + ($234)|0); + $239 = HEAP32[$7>>2]|0; + $240 = ($239|0)<(0); + $241 = $240 << 31 >> 31; + $242 = (_sqlite3Fts3PutVarint($238,$239,$241)|0); + $243 = HEAP32[$nData>>2]|0; + $244 = (($243) + ($242))|0; + HEAP32[$nData>>2] = $244; + $245 = HEAP32[$nData>>2]|0; + $246 = HEAP32[$pWriter>>2]|0; + $247 = (($246) + 48|0); + $248 = HEAP32[$247>>2]|0; + $249 = (($248) + ($245)|0); + $250 = HEAP32[$6>>2]|0; + $251 = HEAP32[$7>>2]|0; + _memcpy(($249|0),($250|0),($251|0))|0; + $252 = HEAP32[$nData>>2]|0; + $253 = HEAP32[$7>>2]|0; + $254 = (($252) + ($253))|0; + $255 = HEAP32[$pWriter>>2]|0; + $256 = (($255) + 44|0); + HEAP32[$256>>2] = $254; + $257 = HEAP32[$3>>2]|0; + $258 = ($257|0)!=(0); + if ($258) { + $259 = HEAP32[$5>>2]|0; + $260 = HEAP32[$pWriter>>2]|0; + $261 = (($260) + 32|0); + $262 = HEAP32[$261>>2]|0; + $263 = ($259|0)>($262|0); + do { + if ($263) { + $264 = HEAP32[$pWriter>>2]|0; + $265 = (($264) + 36|0); + $266 = HEAP32[$265>>2]|0; + $267 = HEAP32[$5>>2]|0; + $268 = $267<<1; + $269 = (_sqlite3_realloc($266,$268)|0); + HEAP32[$zNew>>2] = $269; + $270 = HEAP32[$zNew>>2]|0; + $271 = ($270|0)!=(0|0); + if ($271) { + $272 = HEAP32[$5>>2]|0; + $273 = $272<<1; + $274 = HEAP32[$pWriter>>2]|0; + $275 = (($274) + 32|0); + HEAP32[$275>>2] = $273; + $276 = HEAP32[$zNew>>2]|0; + $277 = HEAP32[$pWriter>>2]|0; + $278 = (($277) + 36|0); + HEAP32[$278>>2] = $276; + $279 = HEAP32[$zNew>>2]|0; + $280 = HEAP32[$pWriter>>2]|0; + $281 = (($280) + 24|0); + HEAP32[$281>>2] = $279; + break; + } + HEAP32[$0>>2] = 7; + $293 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($293|0); + } + } while(0); + $282 = HEAP32[$pWriter>>2]|0; + $283 = (($282) + 24|0); + $284 = HEAP32[$283>>2]|0; + $285 = HEAP32[$4>>2]|0; + $286 = HEAP32[$5>>2]|0; + _memcpy(($284|0),($285|0),($286|0))|0; + } else { + $287 = HEAP32[$4>>2]|0; + $288 = HEAP32[$pWriter>>2]|0; + $289 = (($288) + 24|0); + HEAP32[$289>>2] = $287; + } + $290 = HEAP32[$5>>2]|0; + $291 = HEAP32[$pWriter>>2]|0; + $292 = (($291) + 28|0); + HEAP32[$292>>2] = $290; + HEAP32[$0>>2] = 0; + $293 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($293|0); +} +function _fts3DeleteSegdir($p,$iLangid,$iIndex,$iLevel,$apSegment,$nReader) { + $p = $p|0; + $iLangid = $iLangid|0; + $iIndex = $iIndex|0; + $iLevel = $iLevel|0; + $apSegment = $apSegment|0; + $nReader = $nReader|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pDelete = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 20|0; + $5 = sp + 16|0; + $6 = sp + 8|0; + $rc = sp + 4|0; + $i = sp; + $pDelete = sp + 12|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $iLangid; + HEAP32[$3>>2] = $iIndex; + HEAP32[$4>>2] = $iLevel; + HEAP32[$5>>2] = $apSegment; + HEAP32[$6>>2] = $nReader; + HEAP32[$rc>>2] = 0; + HEAP32[$pDelete>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)==(0); + if (!($8)) { + break; + } + $9 = HEAP32[$i>>2]|0; + $10 = HEAP32[$6>>2]|0; + $11 = ($9|0)<($10|0); + if (!($11)) { + break; + } + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$5>>2]|0; + $15 = (($14) + ($13<<2)|0); + $16 = HEAP32[$15>>2]|0; + $17 = (_fts3DeleteSegment($12,$16)|0); + HEAP32[$rc>>2] = $17; + $18 = HEAP32[$i>>2]|0; + $19 = (($18) + 1)|0; + HEAP32[$i>>2] = $19; + } + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)!=(0); + if ($21) { + $22 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $22; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); + } + $23 = HEAP32[$4>>2]|0; + $24 = ($23|0)==(-2); + $25 = HEAP32[$1>>2]|0; + if ($24) { + $26 = (_fts3SqlStmt($25,26,$pDelete,0)|0); + HEAP32[$rc>>2] = $26; + $27 = HEAP32[$rc>>2]|0; + $28 = ($27|0)==(0); + if ($28) { + $29 = HEAP32[$pDelete>>2]|0; + $30 = HEAP32[$1>>2]|0; + $31 = HEAP32[$2>>2]|0; + $32 = HEAP32[$3>>2]|0; + $33 = (_getAbsoluteLevel($30,$31,$32,0)|0); + $34 = tempRet0; + (_sqlite3_bind_int64($29,1,$33,$34)|0); + $35 = HEAP32[$pDelete>>2]|0; + $36 = HEAP32[$1>>2]|0; + $37 = HEAP32[$2>>2]|0; + $38 = HEAP32[$3>>2]|0; + $39 = (_getAbsoluteLevel($36,$37,$38,1023)|0); + $40 = tempRet0; + (_sqlite3_bind_int64($35,2,$39,$40)|0); + } + } else { + $41 = (_fts3SqlStmt($25,16,$pDelete,0)|0); + HEAP32[$rc>>2] = $41; + $42 = HEAP32[$rc>>2]|0; + $43 = ($42|0)==(0); + if ($43) { + $44 = HEAP32[$pDelete>>2]|0; + $45 = HEAP32[$1>>2]|0; + $46 = HEAP32[$2>>2]|0; + $47 = HEAP32[$3>>2]|0; + $48 = HEAP32[$4>>2]|0; + $49 = (_getAbsoluteLevel($45,$46,$47,$48)|0); + $50 = tempRet0; + (_sqlite3_bind_int64($44,1,$49,$50)|0); + } + } + $51 = HEAP32[$rc>>2]|0; + $52 = ($51|0)==(0); + if ($52) { + $53 = HEAP32[$pDelete>>2]|0; + (_sqlite3_step($53)|0); + $54 = HEAP32[$pDelete>>2]|0; + $55 = (_sqlite3_reset($54)|0); + HEAP32[$rc>>2] = $55; + } + $56 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $56; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); +} +function _fts3SegWriterFlush($p,$pWriter,$0,$1,$iIdx) { + $p = $p|0; + $pWriter = $pWriter|0; + $0 = $0|0; + $1 = $1|0; + $iIdx = $iIdx|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $iLast = 0, $iLastLeaf = 0, $nRoot = 0, $rc = 0, $zRoot = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $2 = sp + 44|0; + $3 = sp + 40|0; + $4 = sp + 8|0; + $5 = sp + 36|0; + $rc = sp + 24|0; + $iLast = sp + 16|0; + $iLastLeaf = sp; + $zRoot = sp + 28|0; + $nRoot = sp + 32|0; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $pWriter; + $6 = $4; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + HEAP32[$5>>2] = $iIdx; + $10 = HEAP32[$3>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0|0); + if (!($12)) { + $114 = HEAP32[$2>>2]|0; + $115 = $4; + $116 = $115; + $117 = HEAP32[$116>>2]|0; + $118 = (($115) + 4)|0; + $119 = $118; + $120 = HEAP32[$119>>2]|0; + $121 = HEAP32[$5>>2]|0; + $122 = HEAP32[$3>>2]|0; + $123 = (($122) + 56|0); + $124 = $123; + $125 = $124; + $126 = HEAP32[$125>>2]|0; + $127 = (($124) + 4)|0; + $128 = $127; + $129 = HEAP32[$128>>2]|0; + $130 = HEAP32[$3>>2]|0; + $131 = (($130) + 48|0); + $132 = HEAP32[$131>>2]|0; + $133 = HEAP32[$3>>2]|0; + $134 = (($133) + 44|0); + $135 = HEAP32[$134>>2]|0; + $136 = (_fts3WriteSegdir($114,$117,$120,$121,0,0,0,0,0,0,$126,$129,$132,$135)|0); + HEAP32[$rc>>2] = $136; + $137 = HEAP32[$2>>2]|0; + $138 = (($137) + 52|0); + $139 = HEAP32[$138>>2]|0; + $140 = (($139) + 1)|0; + HEAP32[$138>>2] = $140; + $141 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($141|0); + } + $13 = $iLast; + $14 = $13; + HEAP32[$14>>2] = 0; + $15 = (($13) + 4)|0; + $16 = $15; + HEAP32[$16>>2] = 0; + HEAP32[$zRoot>>2] = 0; + HEAP32[$nRoot>>2] = 0; + $17 = HEAP32[$3>>2]|0; + $18 = (($17) + 16|0); + $19 = $18; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (($19) + 4)|0; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = $iLastLeaf; + $26 = $25; + HEAP32[$26>>2] = $21; + $27 = (($25) + 4)|0; + $28 = $27; + HEAP32[$28>>2] = $24; + $29 = HEAP32[$2>>2]|0; + $30 = HEAP32[$3>>2]|0; + $31 = (($30) + 16|0); + $32 = $31; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = (($32) + 4)|0; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = (_i64Add(($34|0),($37|0),1,0)|0); + $39 = tempRet0; + $40 = $31; + $41 = $40; + HEAP32[$41>>2] = $38; + $42 = (($40) + 4)|0; + $43 = $42; + HEAP32[$43>>2] = $39; + $44 = HEAP32[$3>>2]|0; + $45 = (($44) + 48|0); + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$3>>2]|0; + $48 = (($47) + 44|0); + $49 = HEAP32[$48>>2]|0; + $50 = (_fts3WriteSegment($29,$34,$37,$46,$49)|0); + HEAP32[$rc>>2] = $50; + $51 = HEAP32[$rc>>2]|0; + $52 = ($51|0)==(0); + if ($52) { + $53 = HEAP32[$2>>2]|0; + $54 = HEAP32[$3>>2]|0; + $55 = HEAP32[$54>>2]|0; + $56 = HEAP32[$3>>2]|0; + $57 = (($56) + 8|0); + $58 = $57; + $59 = $58; + $60 = HEAP32[$59>>2]|0; + $61 = (($58) + 4)|0; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = HEAP32[$3>>2]|0; + $65 = (($64) + 16|0); + $66 = $65; + $67 = $66; + $68 = HEAP32[$67>>2]|0; + $69 = (($66) + 4)|0; + $70 = $69; + $71 = HEAP32[$70>>2]|0; + $72 = (_fts3NodeWrite($53,$55,1,$60,$63,$68,$71,$iLast,$zRoot,$nRoot)|0); + HEAP32[$rc>>2] = $72; + } + $73 = HEAP32[$rc>>2]|0; + $74 = ($73|0)==(0); + if (!($74)) { + $137 = HEAP32[$2>>2]|0; + $138 = (($137) + 52|0); + $139 = HEAP32[$138>>2]|0; + $140 = (($139) + 1)|0; + HEAP32[$138>>2] = $140; + $141 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($141|0); + } + $75 = HEAP32[$2>>2]|0; + $76 = $4; + $77 = $76; + $78 = HEAP32[$77>>2]|0; + $79 = (($76) + 4)|0; + $80 = $79; + $81 = HEAP32[$80>>2]|0; + $82 = HEAP32[$5>>2]|0; + $83 = HEAP32[$3>>2]|0; + $84 = (($83) + 8|0); + $85 = $84; + $86 = $85; + $87 = HEAP32[$86>>2]|0; + $88 = (($85) + 4)|0; + $89 = $88; + $90 = HEAP32[$89>>2]|0; + $91 = $iLastLeaf; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $94 = (($91) + 4)|0; + $95 = $94; + $96 = HEAP32[$95>>2]|0; + $97 = $iLast; + $98 = $97; + $99 = HEAP32[$98>>2]|0; + $100 = (($97) + 4)|0; + $101 = $100; + $102 = HEAP32[$101>>2]|0; + $103 = HEAP32[$3>>2]|0; + $104 = (($103) + 56|0); + $105 = $104; + $106 = $105; + $107 = HEAP32[$106>>2]|0; + $108 = (($105) + 4)|0; + $109 = $108; + $110 = HEAP32[$109>>2]|0; + $111 = HEAP32[$zRoot>>2]|0; + $112 = HEAP32[$nRoot>>2]|0; + $113 = (_fts3WriteSegdir($75,$78,$81,$82,$87,$90,$93,$96,$99,$102,$107,$110,$111,$112)|0); + HEAP32[$rc>>2] = $113; + $137 = HEAP32[$2>>2]|0; + $138 = (($137) + 52|0); + $139 = HEAP32[$138>>2]|0; + $140 = (($139) + 1)|0; + HEAP32[$138>>2] = $140; + $141 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($141|0); +} +function _fts3PromoteSegments($p,$0,$1,$2,$3) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + $2 = $2|0; + $3 = $3|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bOk = 0, $dummy = 0, $iIdx = 0, $iLast = 0, $nLimit = 0; + var $nSize = 0, $pRange = 0, $pUpdate1 = 0, $pUpdate2 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $4 = sp + 72|0; + $5 = sp + 40|0; + $6 = sp + 32|0; + $rc = sp + 68|0; + $pRange = sp + 64|0; + $bOk = sp + 60|0; + $iLast = sp + 24|0; + $nLimit = sp; + $nSize = sp + 16|0; + $dummy = sp + 8|0; + $iIdx = sp + 52|0; + $pUpdate1 = sp + 56|0; + $pUpdate2 = sp + 48|0; + HEAP32[$4>>2] = $p; + $7 = $5; + $8 = $7; + HEAP32[$8>>2] = $0; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = $1; + $11 = $6; + $12 = $11; + HEAP32[$12>>2] = $2; + $13 = (($11) + 4)|0; + $14 = $13; + HEAP32[$14>>2] = $3; + HEAP32[$rc>>2] = 0; + $15 = HEAP32[$4>>2]|0; + $16 = (_fts3SqlStmt($15,37,$pRange,0)|0); + HEAP32[$rc>>2] = $16; + $17 = HEAP32[$rc>>2]|0; + $18 = ($17|0)==(0); + if (!($18)) { + $158 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($158|0); + } + HEAP32[$bOk>>2] = 0; + $19 = $5; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (($19) + 4)|0; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (___divdi3(($21|0),($24|0),1024,0)|0); + $26 = tempRet0; + $27 = (_i64Add(($25|0),($26|0),1,0)|0); + $28 = tempRet0; + $29 = (___muldi3(($27|0),($28|0),1024,0)|0); + $30 = tempRet0; + $31 = (_i64Subtract(($29|0),($30|0),1,0)|0); + $32 = tempRet0; + $33 = $iLast; + $34 = $33; + HEAP32[$34>>2] = $31; + $35 = (($33) + 4)|0; + $36 = $35; + HEAP32[$36>>2] = $32; + $37 = $6; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (($37) + 4)|0; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (___muldi3(($39|0),($42|0),3,0)|0); + $44 = tempRet0; + $45 = (___divdi3(($43|0),($44|0),2,0)|0); + $46 = tempRet0; + $47 = $nLimit; + $48 = $47; + HEAP32[$48>>2] = $45; + $49 = (($47) + 4)|0; + $50 = $49; + HEAP32[$50>>2] = $46; + $51 = HEAP32[$pRange>>2]|0; + $52 = $5; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = (($52) + 4)|0; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = (_i64Add(($54|0),($57|0),1,0)|0); + $59 = tempRet0; + (_sqlite3_bind_int64($51,1,$58,$59)|0); + $60 = HEAP32[$pRange>>2]|0; + $61 = $iLast; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = (($61) + 4)|0; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + (_sqlite3_bind_int64($60,2,$63,$66)|0); + while(1) { + $67 = HEAP32[$pRange>>2]|0; + $68 = (_sqlite3_step($67)|0); + $69 = (100)==($68|0); + if (!($69)) { + break; + } + $70 = $nSize; + $71 = $70; + HEAP32[$71>>2] = 0; + $72 = (($70) + 4)|0; + $73 = $72; + HEAP32[$73>>2] = 0; + $74 = HEAP32[$pRange>>2]|0; + _fts3ReadEndBlockField($74,2,$dummy,$nSize); + $75 = $nSize; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = (($75) + 4)|0; + $79 = $78; + $80 = HEAP32[$79>>2]|0; + $81 = ($80|0)<(0); + $82 = ($80|0)==(0); + $83 = ($77>>>0)<=(0); + $84 = $82 & $83; + $85 = $81 | $84; + if ($85) { + label = 6; + break; + } + $86 = $nSize; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = (($86) + 4)|0; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + $92 = $nLimit; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = (($92) + 4)|0; + $96 = $95; + $97 = HEAP32[$96>>2]|0; + $98 = ($91|0)>($97|0); + $99 = ($91|0)==($97|0); + $100 = ($88>>>0)>($94>>>0); + $101 = $99 & $100; + $102 = $98 | $101; + if ($102) { + label = 6; + break; + } + HEAP32[$bOk>>2] = 1; + } + if ((label|0) == 6) { + HEAP32[$bOk>>2] = 0; + } + $103 = HEAP32[$pRange>>2]|0; + $104 = (_sqlite3_reset($103)|0); + HEAP32[$rc>>2] = $104; + $105 = HEAP32[$bOk>>2]|0; + $106 = ($105|0)!=(0); + if (!($106)) { + $158 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($158|0); + } + HEAP32[$iIdx>>2] = 0; + $107 = HEAP32[$rc>>2]|0; + $108 = ($107|0)==(0); + if ($108) { + $109 = HEAP32[$4>>2]|0; + $110 = (_fts3SqlStmt($109,38,$pUpdate1,0)|0); + HEAP32[$rc>>2] = $110; + } + $111 = HEAP32[$rc>>2]|0; + $112 = ($111|0)==(0); + if ($112) { + $113 = HEAP32[$4>>2]|0; + $114 = (_fts3SqlStmt($113,39,$pUpdate2,0)|0); + HEAP32[$rc>>2] = $114; + } + $115 = HEAP32[$rc>>2]|0; + $116 = ($115|0)==(0); + L21: do { + if ($116) { + $117 = HEAP32[$pRange>>2]|0; + $118 = $5; + $119 = $118; + $120 = HEAP32[$119>>2]|0; + $121 = (($118) + 4)|0; + $122 = $121; + $123 = HEAP32[$122>>2]|0; + (_sqlite3_bind_int64($117,1,$120,$123)|0); + while(1) { + $124 = HEAP32[$pRange>>2]|0; + $125 = (_sqlite3_step($124)|0); + $126 = (100)==($125|0); + if (!($126)) { + break L21; + } + $127 = HEAP32[$pUpdate1>>2]|0; + $128 = HEAP32[$iIdx>>2]|0; + $129 = (($128) + 1)|0; + HEAP32[$iIdx>>2] = $129; + (_sqlite3_bind_int($127,1,$128)|0); + $130 = HEAP32[$pUpdate1>>2]|0; + $131 = HEAP32[$pRange>>2]|0; + $132 = (_sqlite3_column_int($131,0)|0); + (_sqlite3_bind_int($130,2,$132)|0); + $133 = HEAP32[$pUpdate1>>2]|0; + $134 = HEAP32[$pRange>>2]|0; + $135 = (_sqlite3_column_int($134,1)|0); + (_sqlite3_bind_int($133,3,$135)|0); + $136 = HEAP32[$pUpdate1>>2]|0; + (_sqlite3_step($136)|0); + $137 = HEAP32[$pUpdate1>>2]|0; + $138 = (_sqlite3_reset($137)|0); + HEAP32[$rc>>2] = $138; + $139 = HEAP32[$rc>>2]|0; + $140 = ($139|0)!=(0); + if ($140) { + break; + } + } + $141 = HEAP32[$pRange>>2]|0; + (_sqlite3_reset($141)|0); + } + } while(0); + $142 = HEAP32[$rc>>2]|0; + $143 = ($142|0)==(0); + if ($143) { + $144 = HEAP32[$pRange>>2]|0; + $145 = (_sqlite3_reset($144)|0); + HEAP32[$rc>>2] = $145; + } + $146 = HEAP32[$rc>>2]|0; + $147 = ($146|0)==(0); + if (!($147)) { + $158 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($158|0); + } + $148 = HEAP32[$pUpdate2>>2]|0; + $149 = $5; + $150 = $149; + $151 = HEAP32[$150>>2]|0; + $152 = (($149) + 4)|0; + $153 = $152; + $154 = HEAP32[$153>>2]|0; + (_sqlite3_bind_int64($148,1,$151,$154)|0); + $155 = HEAP32[$pUpdate2>>2]|0; + (_sqlite3_step($155)|0); + $156 = HEAP32[$pUpdate2>>2]|0; + $157 = (_sqlite3_reset($156)|0); + HEAP32[$rc>>2] = $157; + $158 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($158|0); +} +function _fts3SegWriterFree($pWriter) { + $pWriter = $pWriter|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pWriter; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 48|0); + $5 = HEAP32[$4>>2]|0; + _sqlite3_free($5); + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 36|0); + $8 = HEAP32[$7>>2]|0; + _sqlite3_free($8); + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$9>>2]|0; + _fts3NodeFree($10); + $11 = HEAP32[$0>>2]|0; + _sqlite3_free($11); + STACKTOP = sp;return; +} +function _sqlite3Fts3SegReaderFinish($pCsr) { + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $i = sp; + HEAP32[$0>>2] = $pCsr; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $3 = HEAP32[$i>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($3|0)<($6|0); + if (!($7)) { + break; + } + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + ($8<<2)|0); + $12 = HEAP32[$11>>2]|0; + _sqlite3Fts3SegReaderFree($12); + $13 = HEAP32[$i>>2]|0; + $14 = (($13) + 1)|0; + HEAP32[$i>>2] = $14; + } + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$15>>2]|0; + _sqlite3_free($16); + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 16|0); + $19 = HEAP32[$18>>2]|0; + _sqlite3_free($19); + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 4|0); + HEAP32[$21>>2] = 0; + $22 = HEAP32[$0>>2]|0; + HEAP32[$22>>2] = 0; + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 16|0); + HEAP32[$24>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3Fts3SegReaderFree($pReader) { + $pReader = $pReader|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pReader; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if ($2) { + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 56|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 64|0); + $9 = HEAP32[$8>>2]|0; + _sqlite3_free($9); + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 5|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = ($13|0)!=(0); + if (!($14)) { + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 40|0); + $17 = HEAP32[$16>>2]|0; + _sqlite3_free($17); + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 52|0); + $20 = HEAP32[$19>>2]|0; + (_sqlite3_blob_close($20)|0); + } + } + } + $21 = HEAP32[$0>>2]|0; + _sqlite3_free($21); + STACKTOP = sp;return; +} +function _fts3NodeFree($pTree) { + $pTree = $pTree|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pRight = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $p = sp; + $pRight = sp + 4|0; + HEAP32[$0>>2] = $pTree; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$p>>2] = $5; + $6 = HEAP32[$p>>2]|0; + $7 = HEAP32[$6>>2]|0; + _fts3NodeFree($7); + while(1) { + $8 = HEAP32[$p>>2]|0; + $9 = ($8|0)!=(0|0); + if (!($9)) { + break; + } + $10 = HEAP32[$p>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$pRight>>2] = $12; + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 36|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$p>>2]|0; + $17 = (($16) + 40|0); + $18 = ($15|0)!=($17|0); + if ($18) { + $19 = HEAP32[$p>>2]|0; + $20 = (($19) + 36|0); + $21 = HEAP32[$20>>2]|0; + _sqlite3_free($21); + } + $22 = HEAP32[$p>>2]|0; + $23 = (($22) + 28|0); + $24 = HEAP32[$23>>2]|0; + _sqlite3_free($24); + $25 = HEAP32[$p>>2]|0; + _sqlite3_free($25); + $26 = HEAP32[$pRight>>2]|0; + HEAP32[$p>>2] = $26; + } + STACKTOP = sp;return; +} +function _fts3ReadEndBlockField($pStmt,$iCol,$piEndBlock,$pnByte) { + $pStmt = $pStmt|0; + $iCol = $iCol|0; + $piEndBlock = $piEndBlock|0; + $pnByte = $pnByte|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $i = 0, $iMul = 0, $iVal = 0, $zText = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $zText = sp + 16|0; + $i = sp + 20|0; + $iMul = sp + 24|0; + $iVal = sp; + HEAP32[$0>>2] = $pStmt; + HEAP32[$1>>2] = $iCol; + HEAP32[$2>>2] = $piEndBlock; + HEAP32[$3>>2] = $pnByte; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (_sqlite3_column_text($4,$5)|0); + HEAP32[$zText>>2] = $6; + $7 = HEAP32[$zText>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + STACKTOP = sp;return; + } + HEAP32[$iMul>>2] = 1; + $9 = $iVal; + $10 = $9; + HEAP32[$10>>2] = 0; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$zText>>2]|0; + $15 = (($14) + ($13)|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = ($17|0)>=(48); + if ($18) { + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$zText>>2]|0; + $21 = (($20) + ($19)|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = ($23|0)<=(57); + $120 = $24; + } else { + $120 = 0; + } + $25 = $iVal; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + if (!($120)) { + break; + } + $31 = (___muldi3(($27|0),($30|0),10,0)|0); + $32 = tempRet0; + $33 = HEAP32[$i>>2]|0; + $34 = HEAP32[$zText>>2]|0; + $35 = (($34) + ($33)|0); + $36 = HEAP8[$35>>0]|0; + $37 = $36&255; + $38 = (($37) - 48)|0; + $39 = ($38|0)<(0); + $40 = $39 << 31 >> 31; + $41 = (_i64Add(($31|0),($32|0),($38|0),($40|0))|0); + $42 = tempRet0; + $43 = $iVal; + $44 = $43; + HEAP32[$44>>2] = $41; + $45 = (($43) + 4)|0; + $46 = $45; + HEAP32[$46>>2] = $42; + $47 = HEAP32[$i>>2]|0; + $48 = (($47) + 1)|0; + HEAP32[$i>>2] = $48; + } + $49 = HEAP32[$2>>2]|0; + $50 = $49; + $51 = $50; + HEAP32[$51>>2] = $27; + $52 = (($50) + 4)|0; + $53 = $52; + HEAP32[$53>>2] = $30; + while(1) { + $54 = HEAP32[$i>>2]|0; + $55 = HEAP32[$zText>>2]|0; + $56 = (($55) + ($54)|0); + $57 = HEAP8[$56>>0]|0; + $58 = $57&255; + $59 = ($58|0)==(32); + if (!($59)) { + break; + } + $60 = HEAP32[$i>>2]|0; + $61 = (($60) + 1)|0; + HEAP32[$i>>2] = $61; + } + $62 = $iVal; + $63 = $62; + HEAP32[$63>>2] = 0; + $64 = (($62) + 4)|0; + $65 = $64; + HEAP32[$65>>2] = 0; + $66 = HEAP32[$i>>2]|0; + $67 = HEAP32[$zText>>2]|0; + $68 = (($67) + ($66)|0); + $69 = HEAP8[$68>>0]|0; + $70 = $69&255; + $71 = ($70|0)==(45); + if ($71) { + $72 = HEAP32[$i>>2]|0; + $73 = (($72) + 1)|0; + HEAP32[$i>>2] = $73; + HEAP32[$iMul>>2] = -1; + } + while(1) { + $74 = HEAP32[$i>>2]|0; + $75 = HEAP32[$zText>>2]|0; + $76 = (($75) + ($74)|0); + $77 = HEAP8[$76>>0]|0; + $78 = $77&255; + $79 = ($78|0)>=(48); + if ($79) { + $80 = HEAP32[$i>>2]|0; + $81 = HEAP32[$zText>>2]|0; + $82 = (($81) + ($80)|0); + $83 = HEAP8[$82>>0]|0; + $84 = $83&255; + $85 = ($84|0)<=(57); + $121 = $85; + } else { + $121 = 0; + } + $86 = $iVal; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = (($86) + 4)|0; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + if (!($121)) { + break; + } + $92 = (___muldi3(($88|0),($91|0),10,0)|0); + $93 = tempRet0; + $94 = HEAP32[$i>>2]|0; + $95 = HEAP32[$zText>>2]|0; + $96 = (($95) + ($94)|0); + $97 = HEAP8[$96>>0]|0; + $98 = $97&255; + $99 = (($98) - 48)|0; + $100 = ($99|0)<(0); + $101 = $100 << 31 >> 31; + $102 = (_i64Add(($92|0),($93|0),($99|0),($101|0))|0); + $103 = tempRet0; + $104 = $iVal; + $105 = $104; + HEAP32[$105>>2] = $102; + $106 = (($104) + 4)|0; + $107 = $106; + HEAP32[$107>>2] = $103; + $108 = HEAP32[$i>>2]|0; + $109 = (($108) + 1)|0; + HEAP32[$i>>2] = $109; + } + $110 = HEAP32[$iMul>>2]|0; + $111 = ($110|0)<(0); + $112 = $111 << 31 >> 31; + $113 = (___muldi3(($88|0),($91|0),($110|0),($112|0))|0); + $114 = tempRet0; + $115 = HEAP32[$3>>2]|0; + $116 = $115; + $117 = $116; + HEAP32[$117>>2] = $113; + $118 = (($116) + 4)|0; + $119 = $118; + HEAP32[$119>>2] = $114; + STACKTOP = sp;return; +} +function _fts3WriteSegment($p,$0,$1,$z,$n) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + $z = $z|0; + $n = $n|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 24|0; + $3 = sp; + $4 = sp + 8|0; + $5 = sp + 12|0; + $pStmt = sp + 16|0; + $rc = sp + 20|0; + HEAP32[$2>>2] = $p; + $6 = $3; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + HEAP32[$4>>2] = $z; + HEAP32[$5>>2] = $n; + $10 = HEAP32[$2>>2]|0; + $11 = (_fts3SqlStmt($10,9,$pStmt,0)|0); + HEAP32[$rc>>2] = $11; + $12 = HEAP32[$rc>>2]|0; + $13 = ($12|0)==(0); + if (!($13)) { + $27 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($27|0); + } + $14 = HEAP32[$pStmt>>2]|0; + $15 = $3; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = (($15) + 4)|0; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + (_sqlite3_bind_int64($14,1,$17,$20)|0); + $21 = HEAP32[$pStmt>>2]|0; + $22 = HEAP32[$4>>2]|0; + $23 = HEAP32[$5>>2]|0; + (_sqlite3_bind_blob($21,2,$22,$23,0)|0); + $24 = HEAP32[$pStmt>>2]|0; + (_sqlite3_step($24)|0); + $25 = HEAP32[$pStmt>>2]|0; + $26 = (_sqlite3_reset($25)|0); + HEAP32[$rc>>2] = $26; + $27 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($27|0); +} +function _fts3NodeWrite($p,$pTree,$iHeight,$0,$1,$2,$3,$piLast,$paRoot,$pnRoot) { + $p = $p|0; + $pTree = $pTree|0; + $iHeight = $iHeight|0; + $0 = $0|0; + $1 = $1|0; + $2 = $2|0; + $3 = $3|0; + $piLast = $piLast|0; + $paRoot = $paRoot|0; + $pnRoot = $pnRoot|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iNextFree = 0, $iNextLeaf = 0, $nStart = 0, $nStart1 = 0, $nWrite = 0, $pIter = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $4 = sp + 72|0; + $5 = sp + 68|0; + $6 = sp + 64|0; + $7 = sp + 16|0; + $8 = sp; + $9 = sp + 60|0; + $10 = sp + 56|0; + $11 = sp + 40|0; + $rc = sp + 44|0; + $nStart = sp + 32|0; + $pIter = sp + 36|0; + $iNextFree = sp + 24|0; + $iNextLeaf = sp + 8|0; + $nStart1 = sp + 48|0; + $nWrite = sp + 52|0; + HEAP32[$4>>2] = $p; + HEAP32[$5>>2] = $pTree; + HEAP32[$6>>2] = $iHeight; + $12 = $7; + $13 = $12; + HEAP32[$13>>2] = $0; + $14 = (($12) + 4)|0; + $15 = $14; + HEAP32[$15>>2] = $1; + $16 = $8; + $17 = $16; + HEAP32[$17>>2] = $2; + $18 = (($16) + 4)|0; + $19 = $18; + HEAP32[$19>>2] = $3; + HEAP32[$9>>2] = $piLast; + HEAP32[$10>>2] = $paRoot; + HEAP32[$11>>2] = $pnRoot; + HEAP32[$rc>>2] = 0; + $20 = HEAP32[$5>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)!=(0|0); + if (!($22)) { + $23 = HEAP32[$5>>2]|0; + $24 = HEAP32[$6>>2]|0; + $25 = $7; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = (_fts3TreeFinishNode($23,$24,$27,$30)|0); + HEAP32[$nStart>>2] = $31; + $32 = $8; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = (($32) + 4)|0; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = (_i64Subtract(($34|0),($37|0),1,0)|0); + $39 = tempRet0; + $40 = HEAP32[$9>>2]|0; + $41 = $40; + $42 = $41; + HEAP32[$42>>2] = $38; + $43 = (($41) + 4)|0; + $44 = $43; + HEAP32[$44>>2] = $39; + $45 = HEAP32[$5>>2]|0; + $46 = (($45) + 32|0); + $47 = HEAP32[$46>>2]|0; + $48 = HEAP32[$nStart>>2]|0; + $49 = (($47) - ($48))|0; + $50 = HEAP32[$11>>2]|0; + HEAP32[$50>>2] = $49; + $51 = HEAP32[$nStart>>2]|0; + $52 = HEAP32[$5>>2]|0; + $53 = (($52) + 36|0); + $54 = HEAP32[$53>>2]|0; + $55 = (($54) + ($51)|0); + $56 = HEAP32[$10>>2]|0; + HEAP32[$56>>2] = $55; + $168 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($168|0); + } + $57 = $8; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = (($57) + 4)|0; + $61 = $60; + $62 = HEAP32[$61>>2]|0; + $63 = $iNextFree; + $64 = $63; + HEAP32[$64>>2] = $59; + $65 = (($63) + 4)|0; + $66 = $65; + HEAP32[$66>>2] = $62; + $67 = $7; + $68 = $67; + $69 = HEAP32[$68>>2]|0; + $70 = (($67) + 4)|0; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = $iNextLeaf; + $74 = $73; + HEAP32[$74>>2] = $69; + $75 = (($73) + 4)|0; + $76 = $75; + HEAP32[$76>>2] = $72; + $77 = HEAP32[$5>>2]|0; + $78 = (($77) + 8|0); + $79 = HEAP32[$78>>2]|0; + HEAP32[$pIter>>2] = $79; + while(1) { + $80 = HEAP32[$pIter>>2]|0; + $81 = ($80|0)!=(0|0); + if (!($81)) { + break; + } + $82 = HEAP32[$rc>>2]|0; + $83 = ($82|0)==(0); + if (!($83)) { + break; + } + $84 = HEAP32[$pIter>>2]|0; + $85 = HEAP32[$6>>2]|0; + $86 = $iNextLeaf; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = (($86) + 4)|0; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + $92 = (_fts3TreeFinishNode($84,$85,$88,$91)|0); + HEAP32[$nStart1>>2] = $92; + $93 = HEAP32[$pIter>>2]|0; + $94 = (($93) + 32|0); + $95 = HEAP32[$94>>2]|0; + $96 = HEAP32[$nStart1>>2]|0; + $97 = (($95) - ($96))|0; + HEAP32[$nWrite>>2] = $97; + $98 = HEAP32[$4>>2]|0; + $99 = $iNextFree; + $100 = $99; + $101 = HEAP32[$100>>2]|0; + $102 = (($99) + 4)|0; + $103 = $102; + $104 = HEAP32[$103>>2]|0; + $105 = HEAP32[$nStart1>>2]|0; + $106 = HEAP32[$pIter>>2]|0; + $107 = (($106) + 36|0); + $108 = HEAP32[$107>>2]|0; + $109 = (($108) + ($105)|0); + $110 = HEAP32[$nWrite>>2]|0; + $111 = (_fts3WriteSegment($98,$101,$104,$109,$110)|0); + HEAP32[$rc>>2] = $111; + $112 = $iNextFree; + $113 = $112; + $114 = HEAP32[$113>>2]|0; + $115 = (($112) + 4)|0; + $116 = $115; + $117 = HEAP32[$116>>2]|0; + $118 = (_i64Add(($114|0),($117|0),1,0)|0); + $119 = tempRet0; + $120 = $iNextFree; + $121 = $120; + HEAP32[$121>>2] = $118; + $122 = (($120) + 4)|0; + $123 = $122; + HEAP32[$123>>2] = $119; + $124 = HEAP32[$pIter>>2]|0; + $125 = (($124) + 12|0); + $126 = HEAP32[$125>>2]|0; + $127 = (($126) + 1)|0; + $128 = ($127|0)<(0); + $129 = $128 << 31 >> 31; + $130 = $iNextLeaf; + $131 = $130; + $132 = HEAP32[$131>>2]|0; + $133 = (($130) + 4)|0; + $134 = $133; + $135 = HEAP32[$134>>2]|0; + $136 = (_i64Add(($132|0),($135|0),($127|0),($129|0))|0); + $137 = tempRet0; + $138 = $iNextLeaf; + $139 = $138; + HEAP32[$139>>2] = $136; + $140 = (($138) + 4)|0; + $141 = $140; + HEAP32[$141>>2] = $137; + $142 = HEAP32[$pIter>>2]|0; + $143 = (($142) + 4|0); + $144 = HEAP32[$143>>2]|0; + HEAP32[$pIter>>2] = $144; + } + $145 = HEAP32[$rc>>2]|0; + $146 = ($145|0)==(0); + if (!($146)) { + $168 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($168|0); + } + $147 = HEAP32[$4>>2]|0; + $148 = HEAP32[$5>>2]|0; + $149 = HEAP32[$148>>2]|0; + $150 = HEAP32[$6>>2]|0; + $151 = (($150) + 1)|0; + $152 = $8; + $153 = $152; + $154 = HEAP32[$153>>2]|0; + $155 = (($152) + 4)|0; + $156 = $155; + $157 = HEAP32[$156>>2]|0; + $158 = $iNextFree; + $159 = $158; + $160 = HEAP32[$159>>2]|0; + $161 = (($158) + 4)|0; + $162 = $161; + $163 = HEAP32[$162>>2]|0; + $164 = HEAP32[$9>>2]|0; + $165 = HEAP32[$10>>2]|0; + $166 = HEAP32[$11>>2]|0; + $167 = (_fts3NodeWrite($147,$149,$151,$154,$157,$160,$163,$164,$165,$166)|0); + HEAP32[$rc>>2] = $167; + $168 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($168|0); +} +function _fts3WriteSegdir($p,$0,$1,$iIdx,$2,$3,$4,$5,$6,$7,$8,$9,$zRoot,$nRoot) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + $iIdx = $iIdx|0; + $2 = $2|0; + $3 = $3|0; + $4 = $4|0; + $5 = $5|0; + $6 = $6|0; + $7 = $7|0; + $8 = $8|0; + $9 = $9|0; + $zRoot = $zRoot|0; + $nRoot = $nRoot|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $12 = 0, $13 = 0; + var $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $pStmt = 0, $rc = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $zEnd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $vararg_buffer = sp + 8|0; + $10 = sp + 60|0; + $11 = sp + 56|0; + $12 = sp + 24|0; + $13 = sp + 84|0; + $14 = sp + 40|0; + $15 = sp + 32|0; + $16 = sp + 48|0; + $17 = sp; + $18 = sp + 64|0; + $19 = sp + 68|0; + $pStmt = sp + 72|0; + $rc = sp + 76|0; + $zEnd = sp + 80|0; + HEAP32[$11>>2] = $p; + $20 = $12; + $21 = $20; + HEAP32[$21>>2] = $0; + $22 = (($20) + 4)|0; + $23 = $22; + HEAP32[$23>>2] = $1; + HEAP32[$13>>2] = $iIdx; + $24 = $14; + $25 = $24; + HEAP32[$25>>2] = $2; + $26 = (($24) + 4)|0; + $27 = $26; + HEAP32[$27>>2] = $3; + $28 = $15; + $29 = $28; + HEAP32[$29>>2] = $4; + $30 = (($28) + 4)|0; + $31 = $30; + HEAP32[$31>>2] = $5; + $32 = $16; + $33 = $32; + HEAP32[$33>>2] = $6; + $34 = (($32) + 4)|0; + $35 = $34; + HEAP32[$35>>2] = $7; + $36 = $17; + $37 = $36; + HEAP32[$37>>2] = $8; + $38 = (($36) + 4)|0; + $39 = $38; + HEAP32[$39>>2] = $9; + HEAP32[$18>>2] = $zRoot; + HEAP32[$19>>2] = $nRoot; + $40 = HEAP32[$11>>2]|0; + $41 = (_fts3SqlStmt($40,11,$pStmt,0)|0); + HEAP32[$rc>>2] = $41; + $42 = HEAP32[$rc>>2]|0; + $43 = ($42|0)==(0); + if ($43) { + $44 = HEAP32[$pStmt>>2]|0; + $45 = $12; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (($45) + 4)|0; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + (_sqlite3_bind_int64($44,1,$47,$50)|0); + $51 = HEAP32[$pStmt>>2]|0; + $52 = HEAP32[$13>>2]|0; + (_sqlite3_bind_int($51,2,$52)|0); + $53 = HEAP32[$pStmt>>2]|0; + $54 = $14; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = (($54) + 4)|0; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + (_sqlite3_bind_int64($53,3,$56,$59)|0); + $60 = HEAP32[$pStmt>>2]|0; + $61 = $15; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = (($61) + 4)|0; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + (_sqlite3_bind_int64($60,4,$63,$66)|0); + $67 = $17; + $68 = $67; + $69 = HEAP32[$68>>2]|0; + $70 = (($67) + 4)|0; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = ($69|0)==(0); + $74 = ($72|0)==(0); + $75 = $73 & $74; + do { + if ($75) { + $76 = HEAP32[$pStmt>>2]|0; + $77 = $16; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = (($77) + 4)|0; + $81 = $80; + $82 = HEAP32[$81>>2]|0; + (_sqlite3_bind_int64($76,5,$79,$82)|0); + } else { + $83 = $16; + $84 = $83; + $85 = HEAP32[$84>>2]|0; + $86 = (($83) + 4)|0; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = $17; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + $92 = (($89) + 4)|0; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = $vararg_buffer; + $96 = $95; + HEAP32[$96>>2] = $85; + $97 = (($95) + 4)|0; + $98 = $97; + HEAP32[$98>>2] = $88; + $vararg_ptr1 = (($vararg_buffer) + 8|0); + $99 = $vararg_ptr1; + $100 = $99; + HEAP32[$100>>2] = $91; + $101 = (($99) + 4)|0; + $102 = $101; + HEAP32[$102>>2] = $94; + $103 = (_sqlite3_mprintf(6888,$vararg_buffer)|0); + HEAP32[$zEnd>>2] = $103; + $104 = HEAP32[$zEnd>>2]|0; + $105 = ($104|0)!=(0|0); + if ($105) { + $106 = HEAP32[$pStmt>>2]|0; + $107 = HEAP32[$zEnd>>2]|0; + (_sqlite3_bind_text($106,5,$107,-1,13)|0); + break; + } + HEAP32[$10>>2] = 7; + $115 = HEAP32[$10>>2]|0; + STACKTOP = sp;return ($115|0); + } + } while(0); + $108 = HEAP32[$pStmt>>2]|0; + $109 = HEAP32[$18>>2]|0; + $110 = HEAP32[$19>>2]|0; + (_sqlite3_bind_blob($108,6,$109,$110,0)|0); + $111 = HEAP32[$pStmt>>2]|0; + (_sqlite3_step($111)|0); + $112 = HEAP32[$pStmt>>2]|0; + $113 = (_sqlite3_reset($112)|0); + HEAP32[$rc>>2] = $113; + } + $114 = HEAP32[$rc>>2]|0; + HEAP32[$10>>2] = $114; + $115 = HEAP32[$10>>2]|0; + STACKTOP = sp;return ($115|0); +} +function _fts3TreeFinishNode($pTree,$iHeight,$0,$1) { + $pTree = $pTree|0; + $iHeight = $iHeight|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nStart = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 16|0; + $3 = sp + 8|0; + $4 = sp; + $nStart = sp + 12|0; + HEAP32[$2>>2] = $pTree; + HEAP32[$3>>2] = $iHeight; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + $9 = $4; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = (($9) + 4)|0; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = (_sqlite3Fts3VarintLen($11,$14)|0); + $16 = (10 - ($15))|0; + HEAP32[$nStart>>2] = $16; + $17 = HEAP32[$3>>2]|0; + $18 = $17&255; + $19 = HEAP32[$nStart>>2]|0; + $20 = HEAP32[$2>>2]|0; + $21 = (($20) + 36|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + ($19)|0); + HEAP8[$23>>0] = $18; + $24 = HEAP32[$nStart>>2]|0; + $25 = (($24) + 1)|0; + $26 = HEAP32[$2>>2]|0; + $27 = (($26) + 36|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + ($25)|0); + $30 = $4; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + (_sqlite3Fts3PutVarint($29,$32,$35)|0); + $36 = HEAP32[$nStart>>2]|0; + STACKTOP = sp;return ($36|0); +} +function _sqlite3Fts3VarintLen($0,$1) { + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp; + $i = sp + 8|0; + $3 = $2; + $4 = $3; + HEAP32[$4>>2] = $0; + $5 = (($3) + 4)|0; + $6 = $5; + HEAP32[$6>>2] = $1; + HEAP32[$i>>2] = 0; + while(1) { + $7 = HEAP32[$i>>2]|0; + $8 = (($7) + 1)|0; + HEAP32[$i>>2] = $8; + $9 = $2; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = (($9) + 4)|0; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = (_bitshift64Lshr(($11|0),($14|0),7)|0); + $16 = tempRet0; + $17 = $2; + $18 = $17; + HEAP32[$18>>2] = $15; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = $16; + $21 = $2; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (($21) + 4)|0; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = ($23|0)!=(0); + $28 = ($26|0)!=(0); + $29 = $27 | $28; + if (!($29)) { + break; + } + } + $30 = HEAP32[$i>>2]|0; + STACKTOP = sp;return ($30|0); +} +function _sqlite3Fts3PutVarint($p,$0,$1) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0, $8 = 0, $9 = 0; + var $q = 0, $vu = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 20|0; + $3 = sp; + $q = sp + 16|0; + $vu = sp + 8|0; + HEAP32[$2>>2] = $p; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = HEAP32[$2>>2]|0; + HEAP32[$q>>2] = $8; + $9 = $3; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = (($9) + 4)|0; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = $vu; + $16 = $15; + HEAP32[$16>>2] = $11; + $17 = (($15) + 4)|0; + $18 = $17; + HEAP32[$18>>2] = $14; + while(1) { + $19 = $vu; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (($19) + 4)|0; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = $21 & 127; + $26 = $25 | 128; + $27 = $26&255; + $28 = HEAP32[$q>>2]|0; + $29 = (($28) + 1|0); + HEAP32[$q>>2] = $29; + HEAP8[$28>>0] = $27; + $30 = $vu; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = (_bitshift64Lshr(($32|0),($35|0),7)|0); + $37 = tempRet0; + $38 = $vu; + $39 = $38; + HEAP32[$39>>2] = $36; + $40 = (($38) + 4)|0; + $41 = $40; + HEAP32[$41>>2] = $37; + $42 = $vu; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = ($44|0)!=(0); + $49 = ($47|0)!=(0); + $50 = $48 | $49; + if (!($50)) { + break; + } + } + $51 = HEAP32[$q>>2]|0; + $52 = (($51) + -1|0); + $53 = HEAP8[$52>>0]|0; + $54 = $53&255; + $55 = $54 & 127; + $56 = $55&255; + HEAP8[$52>>0] = $56; + $57 = HEAP32[$q>>2]|0; + $58 = HEAP32[$2>>2]|0; + $59 = $57; + $60 = $58; + $61 = (($59) - ($60))|0; + STACKTOP = sp;return ($61|0); +} +function _fts3DeleteSegment($p,$pSeg) { + $p = $p|0; + $pSeg = $pSeg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDelete = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $rc = sp + 4|0; + $pDelete = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pSeg; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 8|0); + $4 = $3; + $5 = $4; + $6 = HEAP32[$5>>2]|0; + $7 = (($4) + 4)|0; + $8 = $7; + $9 = HEAP32[$8>>2]|0; + $10 = ($6|0)!=(0); + $11 = ($9|0)!=(0); + $12 = $10 | $11; + if (!($12)) { + $38 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($38|0); + } + $13 = HEAP32[$0>>2]|0; + $14 = (_fts3SqlStmt($13,17,$pDelete,0)|0); + HEAP32[$rc>>2] = $14; + $15 = HEAP32[$rc>>2]|0; + $16 = ($15|0)==(0); + if (!($16)) { + $38 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($38|0); + } + $17 = HEAP32[$pDelete>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 8|0); + $20 = $19; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = (($20) + 4)|0; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + (_sqlite3_bind_int64($17,1,$22,$25)|0); + $26 = HEAP32[$pDelete>>2]|0; + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 24|0); + $29 = $28; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = (($29) + 4)|0; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + (_sqlite3_bind_int64($26,2,$31,$34)|0); + $35 = HEAP32[$pDelete>>2]|0; + (_sqlite3_step($35)|0); + $36 = HEAP32[$pDelete>>2]|0; + $37 = (_sqlite3_reset($36)|0); + HEAP32[$rc>>2] = $37; + $38 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($38|0); +} +function _fts3PrefixCompress($zPrev,$nPrev,$zNext,$nNext) { + $zPrev = $zPrev|0; + $nPrev = $nPrev|0; + $zNext = $zNext|0; + $nNext = $nNext|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $n = sp + 12|0; + HEAP32[$0>>2] = $zPrev; + HEAP32[$1>>2] = $nPrev; + HEAP32[$2>>2] = $zNext; + HEAP32[$3>>2] = $nNext; + HEAP32[$n>>2] = 0; + while(1) { + $4 = HEAP32[$n>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = ($4|0)<($5|0); + if (!($6)) { + label = 5; + break; + } + $7 = HEAP32[$n>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + ($7)|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10 << 24 >> 24; + $12 = HEAP32[$n>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + ($12)|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15 << 24 >> 24; + $17 = ($11|0)==($16|0); + if (!($17)) { + label = 5; + break; + } + $18 = HEAP32[$n>>2]|0; + $19 = (($18) + 1)|0; + HEAP32[$n>>2] = $19; + } + if ((label|0) == 5) { + $20 = HEAP32[$n>>2]|0; + STACKTOP = sp;return ($20|0); + } + return 0|0; +} +function _fts3NodeAddTerm($p,$ppTree,$isCopyTerm,$zTerm,$nTerm) { + $p = $p|0; + $ppTree = $ppTree|0; + $isCopyTerm = $isCopyTerm|0; + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $nData = 0, $nPrefix = 0, $nReq = 0, $nSuffix = 0, $pNew = 0, $pParent = 0, $pTree = 0, $rc = 0, $zNew = 0, dest = 0, label = 0, sp = 0; + var stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 56|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $3 = sp + 44|0; + $4 = sp + 40|0; + $5 = sp + 36|0; + $pTree = sp + 32|0; + $rc = sp + 28|0; + $pNew = sp + 20|0; + $nData = sp + 16|0; + $nReq = sp + 12|0; + $nPrefix = sp + 8|0; + $nSuffix = sp + 4|0; + $zNew = sp; + $pParent = sp + 24|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $ppTree; + HEAP32[$3>>2] = $isCopyTerm; + HEAP32[$4>>2] = $zTerm; + HEAP32[$5>>2] = $nTerm; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$pTree>>2] = $7; + $8 = HEAP32[$pTree>>2]|0; + $9 = ($8|0)!=(0|0); + do { + if ($9) { + $10 = HEAP32[$pTree>>2]|0; + $11 = (($10) + 32|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$nData>>2] = $12; + $13 = HEAP32[$nData>>2]|0; + HEAP32[$nReq>>2] = $13; + $14 = HEAP32[$pTree>>2]|0; + $15 = (($14) + 16|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$pTree>>2]|0; + $18 = (($17) + 20|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$4>>2]|0; + $21 = HEAP32[$5>>2]|0; + $22 = (_fts3PrefixCompress($16,$19,$20,$21)|0); + HEAP32[$nPrefix>>2] = $22; + $23 = HEAP32[$5>>2]|0; + $24 = HEAP32[$nPrefix>>2]|0; + $25 = (($23) - ($24))|0; + HEAP32[$nSuffix>>2] = $25; + $26 = HEAP32[$nPrefix>>2]|0; + $27 = ($26|0)<(0); + $28 = $27 << 31 >> 31; + $29 = (_sqlite3Fts3VarintLen($26,$28)|0); + $30 = HEAP32[$nSuffix>>2]|0; + $31 = ($30|0)<(0); + $32 = $31 << 31 >> 31; + $33 = (_sqlite3Fts3VarintLen($30,$32)|0); + $34 = (($29) + ($33))|0; + $35 = HEAP32[$nSuffix>>2]|0; + $36 = (($34) + ($35))|0; + $37 = HEAP32[$nReq>>2]|0; + $38 = (($37) + ($36))|0; + HEAP32[$nReq>>2] = $38; + $39 = HEAP32[$nReq>>2]|0; + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 224|0); + $42 = HEAP32[$41>>2]|0; + $43 = ($39|0)<=($42|0); + if (!($43)) { + $44 = HEAP32[$pTree>>2]|0; + $45 = (($44) + 16|0); + $46 = HEAP32[$45>>2]|0; + $47 = ($46|0)!=(0|0); + if ($47) { + break; + } + } + $48 = HEAP32[$nReq>>2]|0; + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 224|0); + $51 = HEAP32[$50>>2]|0; + $52 = ($48|0)>($51|0); + if ($52) { + $53 = HEAP32[$nReq>>2]|0; + $54 = (_sqlite3_malloc($53)|0); + $55 = HEAP32[$pTree>>2]|0; + $56 = (($55) + 36|0); + HEAP32[$56>>2] = $54; + $57 = HEAP32[$pTree>>2]|0; + $58 = (($57) + 36|0); + $59 = HEAP32[$58>>2]|0; + $60 = ($59|0)!=(0|0); + if (!($60)) { + HEAP32[$0>>2] = 7; + $207 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($207|0); + } + } + $61 = HEAP32[$pTree>>2]|0; + $62 = (($61) + 16|0); + $63 = HEAP32[$62>>2]|0; + $64 = ($63|0)!=(0|0); + if ($64) { + $65 = HEAP32[$nData>>2]|0; + $66 = HEAP32[$pTree>>2]|0; + $67 = (($66) + 36|0); + $68 = HEAP32[$67>>2]|0; + $69 = (($68) + ($65)|0); + $70 = HEAP32[$nPrefix>>2]|0; + $71 = ($70|0)<(0); + $72 = $71 << 31 >> 31; + $73 = (_sqlite3Fts3PutVarint($69,$70,$72)|0); + $74 = HEAP32[$nData>>2]|0; + $75 = (($74) + ($73))|0; + HEAP32[$nData>>2] = $75; + } + $76 = HEAP32[$nData>>2]|0; + $77 = HEAP32[$pTree>>2]|0; + $78 = (($77) + 36|0); + $79 = HEAP32[$78>>2]|0; + $80 = (($79) + ($76)|0); + $81 = HEAP32[$nSuffix>>2]|0; + $82 = ($81|0)<(0); + $83 = $82 << 31 >> 31; + $84 = (_sqlite3Fts3PutVarint($80,$81,$83)|0); + $85 = HEAP32[$nData>>2]|0; + $86 = (($85) + ($84))|0; + HEAP32[$nData>>2] = $86; + $87 = HEAP32[$nData>>2]|0; + $88 = HEAP32[$pTree>>2]|0; + $89 = (($88) + 36|0); + $90 = HEAP32[$89>>2]|0; + $91 = (($90) + ($87)|0); + $92 = HEAP32[$nPrefix>>2]|0; + $93 = HEAP32[$4>>2]|0; + $94 = (($93) + ($92)|0); + $95 = HEAP32[$nSuffix>>2]|0; + _memcpy(($91|0),($94|0),($95|0))|0; + $96 = HEAP32[$nData>>2]|0; + $97 = HEAP32[$nSuffix>>2]|0; + $98 = (($96) + ($97))|0; + $99 = HEAP32[$pTree>>2]|0; + $100 = (($99) + 32|0); + HEAP32[$100>>2] = $98; + $101 = HEAP32[$pTree>>2]|0; + $102 = (($101) + 12|0); + $103 = HEAP32[$102>>2]|0; + $104 = (($103) + 1)|0; + HEAP32[$102>>2] = $104; + $105 = HEAP32[$3>>2]|0; + $106 = ($105|0)!=(0); + if ($106) { + $107 = HEAP32[$pTree>>2]|0; + $108 = (($107) + 24|0); + $109 = HEAP32[$108>>2]|0; + $110 = HEAP32[$5>>2]|0; + $111 = ($109|0)<($110|0); + do { + if ($111) { + $112 = HEAP32[$pTree>>2]|0; + $113 = (($112) + 28|0); + $114 = HEAP32[$113>>2]|0; + $115 = HEAP32[$5>>2]|0; + $116 = $115<<1; + $117 = (_sqlite3_realloc($114,$116)|0); + HEAP32[$zNew>>2] = $117; + $118 = HEAP32[$zNew>>2]|0; + $119 = ($118|0)!=(0|0); + if ($119) { + $120 = HEAP32[$5>>2]|0; + $121 = $120<<1; + $122 = HEAP32[$pTree>>2]|0; + $123 = (($122) + 24|0); + HEAP32[$123>>2] = $121; + $124 = HEAP32[$zNew>>2]|0; + $125 = HEAP32[$pTree>>2]|0; + $126 = (($125) + 28|0); + HEAP32[$126>>2] = $124; + break; + } + HEAP32[$0>>2] = 7; + $207 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($207|0); + } + } while(0); + $127 = HEAP32[$pTree>>2]|0; + $128 = (($127) + 28|0); + $129 = HEAP32[$128>>2]|0; + $130 = HEAP32[$pTree>>2]|0; + $131 = (($130) + 16|0); + HEAP32[$131>>2] = $129; + $132 = HEAP32[$pTree>>2]|0; + $133 = (($132) + 16|0); + $134 = HEAP32[$133>>2]|0; + $135 = HEAP32[$4>>2]|0; + $136 = HEAP32[$5>>2]|0; + _memcpy(($134|0),($135|0),($136|0))|0; + $137 = HEAP32[$5>>2]|0; + $138 = HEAP32[$pTree>>2]|0; + $139 = (($138) + 20|0); + HEAP32[$139>>2] = $137; + } else { + $140 = HEAP32[$4>>2]|0; + $141 = HEAP32[$pTree>>2]|0; + $142 = (($141) + 16|0); + HEAP32[$142>>2] = $140; + $143 = HEAP32[$5>>2]|0; + $144 = HEAP32[$pTree>>2]|0; + $145 = (($144) + 20|0); + HEAP32[$145>>2] = $143; + } + HEAP32[$0>>2] = 0; + $207 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($207|0); + } + } while(0); + $146 = HEAP32[$1>>2]|0; + $147 = (($146) + 224|0); + $148 = HEAP32[$147>>2]|0; + $149 = (40 + ($148))|0; + $150 = (_sqlite3_malloc($149)|0); + HEAP32[$pNew>>2] = $150; + $151 = HEAP32[$pNew>>2]|0; + $152 = ($151|0)!=(0|0); + if (!($152)) { + HEAP32[$0>>2] = 7; + $207 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($207|0); + } + $153 = HEAP32[$pNew>>2]|0; + dest=$153+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $154 = HEAP32[$pNew>>2]|0; + $155 = (($154) + 32|0); + HEAP32[$155>>2] = 11; + $156 = HEAP32[$pNew>>2]|0; + $157 = (($156) + 40|0); + $158 = HEAP32[$pNew>>2]|0; + $159 = (($158) + 36|0); + HEAP32[$159>>2] = $157; + $160 = HEAP32[$pTree>>2]|0; + $161 = ($160|0)!=(0|0); + if ($161) { + $162 = HEAP32[$pTree>>2]|0; + $163 = HEAP32[$162>>2]|0; + HEAP32[$pParent>>2] = $163; + $164 = HEAP32[$1>>2]|0; + $165 = HEAP32[$3>>2]|0; + $166 = HEAP32[$4>>2]|0; + $167 = HEAP32[$5>>2]|0; + $168 = (_fts3NodeAddTerm($164,$pParent,$165,$166,$167)|0); + HEAP32[$rc>>2] = $168; + $169 = HEAP32[$pTree>>2]|0; + $170 = HEAP32[$169>>2]|0; + $171 = ($170|0)==(0|0); + if ($171) { + $172 = HEAP32[$pParent>>2]|0; + $173 = HEAP32[$pTree>>2]|0; + HEAP32[$173>>2] = $172; + } + $174 = HEAP32[$pNew>>2]|0; + $175 = HEAP32[$pTree>>2]|0; + $176 = (($175) + 4|0); + HEAP32[$176>>2] = $174; + $177 = HEAP32[$pTree>>2]|0; + $178 = (($177) + 8|0); + $179 = HEAP32[$178>>2]|0; + $180 = HEAP32[$pNew>>2]|0; + $181 = (($180) + 8|0); + HEAP32[$181>>2] = $179; + $182 = HEAP32[$pParent>>2]|0; + $183 = HEAP32[$pNew>>2]|0; + HEAP32[$183>>2] = $182; + $184 = HEAP32[$pTree>>2]|0; + $185 = (($184) + 28|0); + $186 = HEAP32[$185>>2]|0; + $187 = HEAP32[$pNew>>2]|0; + $188 = (($187) + 28|0); + HEAP32[$188>>2] = $186; + $189 = HEAP32[$pTree>>2]|0; + $190 = (($189) + 24|0); + $191 = HEAP32[$190>>2]|0; + $192 = HEAP32[$pNew>>2]|0; + $193 = (($192) + 24|0); + HEAP32[$193>>2] = $191; + $194 = HEAP32[$pTree>>2]|0; + $195 = (($194) + 28|0); + HEAP32[$195>>2] = 0; + } else { + $196 = HEAP32[$pNew>>2]|0; + $197 = HEAP32[$pNew>>2]|0; + $198 = (($197) + 8|0); + HEAP32[$198>>2] = $196; + $199 = HEAP32[$1>>2]|0; + $200 = HEAP32[$3>>2]|0; + $201 = HEAP32[$4>>2]|0; + $202 = HEAP32[$5>>2]|0; + $203 = (_fts3NodeAddTerm($199,$pNew,$200,$201,$202)|0); + HEAP32[$rc>>2] = $203; + } + $204 = HEAP32[$pNew>>2]|0; + $205 = HEAP32[$2>>2]|0; + HEAP32[$205>>2] = $204; + $206 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $206; + $207 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($207|0); +} +function _fts3SegReaderDoclistCmpRev($pLhs,$pRhs) { + $pLhs = $pLhs|0; + $pRhs = $pRhs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0; + var $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $pLhs; + HEAP32[$1>>2] = $pRhs; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 80|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)==(0|0); + $6 = $5&1; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 80|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)==(0|0); + $11 = $10&1; + $12 = (($6) - ($11))|0; + HEAP32[$rc>>2] = $12; + $13 = HEAP32[$rc>>2]|0; + $14 = ($13|0)==(0); + if (!($14)) { + $61 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($61|0); + } + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 88|0); + $17 = $16; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (($17) + 4)|0; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 88|0); + $25 = $24; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = ($19|0)==($27|0); + $32 = ($22|0)==($30|0); + $33 = $31 & $32; + if ($33) { + $34 = HEAP32[$1>>2]|0; + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$0>>2]|0; + $37 = HEAP32[$36>>2]|0; + $38 = (($35) - ($37))|0; + HEAP32[$rc>>2] = $38; + $61 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($61|0); + } else { + $39 = HEAP32[$0>>2]|0; + $40 = (($39) + 88|0); + $41 = $40; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = (($41) + 4)|0; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 88|0); + $49 = $48; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = (($49) + 4)|0; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = ($46|0)<($54|0); + $56 = ($46|0)==($54|0); + $57 = ($43>>>0)<($51>>>0); + $58 = $56 & $57; + $59 = $55 | $58; + $60 = $59 ? 1 : -1; + HEAP32[$rc>>2] = $60; + $61 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($61|0); + } + return 0|0; +} +function _fts3SegReaderDoclistCmp($pLhs,$pRhs) { + $pLhs = $pLhs|0; + $pRhs = $pRhs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0; + var $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $pLhs; + HEAP32[$1>>2] = $pRhs; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 80|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)==(0|0); + $6 = $5&1; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 80|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)==(0|0); + $11 = $10&1; + $12 = (($6) - ($11))|0; + HEAP32[$rc>>2] = $12; + $13 = HEAP32[$rc>>2]|0; + $14 = ($13|0)==(0); + if (!($14)) { + $61 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($61|0); + } + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 88|0); + $17 = $16; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (($17) + 4)|0; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 88|0); + $25 = $24; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = ($19|0)==($27|0); + $32 = ($22|0)==($30|0); + $33 = $31 & $32; + if ($33) { + $34 = HEAP32[$1>>2]|0; + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$0>>2]|0; + $37 = HEAP32[$36>>2]|0; + $38 = (($35) - ($37))|0; + HEAP32[$rc>>2] = $38; + $61 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($61|0); + } else { + $39 = HEAP32[$0>>2]|0; + $40 = (($39) + 88|0); + $41 = $40; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = (($41) + 4)|0; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 88|0); + $49 = $48; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = (($49) + 4)|0; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = ($46|0)>($54|0); + $56 = ($46|0)==($54|0); + $57 = ($43>>>0)>($51>>>0); + $58 = $56 & $57; + $59 = $55 | $58; + $60 = $59 ? 1 : -1; + HEAP32[$rc>>2] = $60; + $61 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($61|0); + } + return 0|0; +} +function _fts3SegReaderSetEof($pSeg) { + $pSeg = $pSeg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pSeg; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 5|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = ($4|0)!=(0); + if ($5) { + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 40|0); + HEAP32[$15>>2] = 0; + STACKTOP = sp;return; + } + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 40|0); + $8 = HEAP32[$7>>2]|0; + _sqlite3_free($8); + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 52|0); + $11 = HEAP32[$10>>2]|0; + (_sqlite3_blob_close($11)|0); + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 52|0); + HEAP32[$13>>2] = 0; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 40|0); + HEAP32[$15>>2] = 0; + STACKTOP = sp;return; +} +function _fts3SegReaderNext($p,$pReader,$bIncr) { + $p = $p|0; + $pReader = $pReader|0; + $bIncr = $bIncr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $nNew = 0, $nPrefix = 0, $nSuffix = 0, $pElem = 0, $pList = 0, $pNext = 0, $rc = 0, $zNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $rc = sp + 28|0; + $pNext = sp + 24|0; + $nPrefix = sp + 20|0; + $nSuffix = sp + 12|0; + $pElem = sp + 8|0; + $pList = sp + 4|0; + $nNew = sp; + $zNew = sp + 16|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pReader; + HEAP32[$3>>2] = $bIncr; + $4 = HEAP32[$2>>2]|0; + $5 = (($4) + 72|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + $8 = HEAP32[$2>>2]|0; + if ($7) { + $11 = (($8) + 76|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 72|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + ($12)|0); + HEAP32[$pNext>>2] = $16; + } else { + $9 = (($8) + 40|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$pNext>>2] = $10; + } + $17 = HEAP32[$pNext>>2]|0; + $18 = ($17|0)!=(0|0); + if ($18) { + $19 = HEAP32[$pNext>>2]|0; + $20 = HEAP32[$2>>2]|0; + $21 = (($20) + 44|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$2>>2]|0; + $24 = (($23) + 40|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + ($22)|0); + $27 = ($19>>>0)>=($26>>>0); + if ($27) { + label = 6; + } + } else { + label = 6; + } + if ((label|0) == 6) { + $28 = HEAP32[$2>>2]|0; + $29 = (($28) + 56|0); + $30 = HEAP32[$29>>2]|0; + $31 = ($30|0)!=(0|0); + $32 = HEAP32[$2>>2]|0; + if ($31) { + $33 = (($32) + 56|0); + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$34>>2]|0; + HEAP32[$pElem>>2] = $35; + $36 = HEAP32[$pElem>>2]|0; + $37 = ($36|0)==(0|0); + if ($37) { + $38 = HEAP32[$2>>2]|0; + $39 = (($38) + 40|0); + HEAP32[$39>>2] = 0; + } else { + $40 = HEAP32[$pElem>>2]|0; + $41 = (($40) + 8|0); + $42 = HEAP32[$41>>2]|0; + HEAP32[$pList>>2] = $42; + $43 = HEAP32[$pElem>>2]|0; + $44 = (($43) + 12|0); + $45 = HEAP32[$44>>2]|0; + $46 = HEAP32[$2>>2]|0; + $47 = (($46) + 64|0); + HEAP32[$47>>2] = $45; + $48 = HEAP32[$pElem>>2]|0; + $49 = (($48) + 16|0); + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$2>>2]|0; + $52 = (($51) + 60|0); + HEAP32[$52>>2] = $50; + $53 = HEAP32[$pList>>2]|0; + $54 = HEAP32[$53>>2]|0; + $55 = (($54) + 1)|0; + $56 = HEAP32[$2>>2]|0; + $57 = (($56) + 76|0); + HEAP32[$57>>2] = $55; + $58 = HEAP32[$2>>2]|0; + $59 = (($58) + 44|0); + HEAP32[$59>>2] = $55; + $60 = HEAP32[$pList>>2]|0; + $61 = (($60) + 4|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$2>>2]|0; + $64 = (($63) + 72|0); + HEAP32[$64>>2] = $62; + $65 = HEAP32[$2>>2]|0; + $66 = (($65) + 40|0); + HEAP32[$66>>2] = $62; + $67 = HEAP32[$2>>2]|0; + $68 = (($67) + 56|0); + $69 = HEAP32[$68>>2]|0; + $70 = (($69) + 4|0); + HEAP32[$68>>2] = $70; + } + HEAP32[$0>>2] = 0; + $282 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($282|0); + } + _fts3SegReaderSetEof($32); + $71 = HEAP32[$2>>2]|0; + $72 = (($71) + 32|0); + $73 = $72; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $76 = (($73) + 4)|0; + $77 = $76; + $78 = HEAP32[$77>>2]|0; + $79 = HEAP32[$2>>2]|0; + $80 = (($79) + 16|0); + $81 = $80; + $82 = $81; + $83 = HEAP32[$82>>2]|0; + $84 = (($81) + 4)|0; + $85 = $84; + $86 = HEAP32[$85>>2]|0; + $87 = ($78|0)>($86|0); + $88 = ($78|0)==($86|0); + $89 = ($75>>>0)>=($83>>>0); + $90 = $88 & $89; + $91 = $87 | $90; + if ($91) { + HEAP32[$0>>2] = 0; + $282 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($282|0); + } + $92 = HEAP32[$1>>2]|0; + $93 = HEAP32[$2>>2]|0; + $94 = (($93) + 32|0); + $95 = $94; + $96 = $95; + $97 = HEAP32[$96>>2]|0; + $98 = (($95) + 4)|0; + $99 = $98; + $100 = HEAP32[$99>>2]|0; + $101 = (_i64Add(($97|0),($100|0),1,0)|0); + $102 = tempRet0; + $103 = $94; + $104 = $103; + HEAP32[$104>>2] = $101; + $105 = (($103) + 4)|0; + $106 = $105; + HEAP32[$106>>2] = $102; + $107 = HEAP32[$2>>2]|0; + $108 = (($107) + 40|0); + $109 = HEAP32[$2>>2]|0; + $110 = (($109) + 44|0); + $111 = HEAP32[$3>>2]|0; + $112 = ($111|0)!=(0); + if ($112) { + $113 = HEAP32[$2>>2]|0; + $114 = (($113) + 48|0); + $115 = $114; + } else { + $115 = 0; + } + $116 = (_sqlite3Fts3ReadBlock($92,$101,$102,$108,$110,$115)|0); + HEAP32[$rc>>2] = $116; + $117 = HEAP32[$rc>>2]|0; + $118 = ($117|0)!=(0); + if ($118) { + $119 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $119; + $282 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($282|0); + } + $120 = HEAP32[$3>>2]|0; + $121 = ($120|0)!=(0); + if ($121) { + $122 = HEAP32[$2>>2]|0; + $123 = (($122) + 48|0); + $124 = HEAP32[$123>>2]|0; + $125 = HEAP32[$2>>2]|0; + $126 = (($125) + 44|0); + $127 = HEAP32[$126>>2]|0; + $128 = ($124|0)<($127|0); + if ($128) { + $129 = HEAP32[$1>>2]|0; + $130 = (($129) + 244|0); + $131 = HEAP32[$130>>2]|0; + $132 = HEAP32[$2>>2]|0; + $133 = (($132) + 52|0); + HEAP32[$133>>2] = $131; + $134 = HEAP32[$1>>2]|0; + $135 = (($134) + 244|0); + HEAP32[$135>>2] = 0; + } + } + $136 = HEAP32[$2>>2]|0; + $137 = (($136) + 40|0); + $138 = HEAP32[$137>>2]|0; + HEAP32[$pNext>>2] = $138; + } + $139 = HEAP32[$2>>2]|0; + $140 = HEAP32[$pNext>>2]|0; + $141 = (_fts3SegReaderRequire($139,$140,20)|0); + HEAP32[$rc>>2] = $141; + $142 = HEAP32[$rc>>2]|0; + $143 = ($142|0)!=(0); + if ($143) { + $144 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $144; + $282 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($282|0); + } + $145 = HEAP32[$pNext>>2]|0; + $146 = HEAP8[$145>>0]|0; + $147 = $146&255; + $148 = $147 & 128; + $149 = ($148|0)!=(0); + $150 = HEAP32[$pNext>>2]|0; + if ($149) { + $151 = (_sqlite3Fts3GetVarint32($150,$nPrefix)|0); + $156 = $151; + } else { + $152 = HEAP8[$150>>0]|0; + $153 = $152&255; + HEAP32[$nPrefix>>2] = $153; + $156 = 1; + } + $154 = HEAP32[$pNext>>2]|0; + $155 = (($154) + ($156)|0); + HEAP32[$pNext>>2] = $155; + $157 = HEAP32[$pNext>>2]|0; + $158 = HEAP8[$157>>0]|0; + $159 = $158&255; + $160 = $159 & 128; + $161 = ($160|0)!=(0); + $162 = HEAP32[$pNext>>2]|0; + if ($161) { + $163 = (_sqlite3Fts3GetVarint32($162,$nSuffix)|0); + $168 = $163; + } else { + $164 = HEAP8[$162>>0]|0; + $165 = $164&255; + HEAP32[$nSuffix>>2] = $165; + $168 = 1; + } + $166 = HEAP32[$pNext>>2]|0; + $167 = (($166) + ($168)|0); + HEAP32[$pNext>>2] = $167; + $169 = HEAP32[$nPrefix>>2]|0; + $170 = ($169|0)<(0); + if (!($170)) { + $171 = HEAP32[$nSuffix>>2]|0; + $172 = ($171|0)<=(0); + if (!($172)) { + $173 = HEAP32[$nSuffix>>2]|0; + $174 = HEAP32[$pNext>>2]|0; + $175 = (($174) + ($173)|0); + $176 = HEAP32[$2>>2]|0; + $177 = (($176) + 44|0); + $178 = HEAP32[$177>>2]|0; + $179 = HEAP32[$2>>2]|0; + $180 = (($179) + 40|0); + $181 = HEAP32[$180>>2]|0; + $182 = (($181) + ($178)|0); + $183 = ($175>>>0)>($182>>>0); + if (!($183)) { + $184 = HEAP32[$nPrefix>>2]|0; + $185 = HEAP32[$nSuffix>>2]|0; + $186 = (($184) + ($185))|0; + $187 = HEAP32[$2>>2]|0; + $188 = (($187) + 68|0); + $189 = HEAP32[$188>>2]|0; + $190 = ($186|0)>($189|0); + do { + if ($190) { + $191 = HEAP32[$nPrefix>>2]|0; + $192 = HEAP32[$nSuffix>>2]|0; + $193 = (($191) + ($192))|0; + $194 = $193<<1; + HEAP32[$nNew>>2] = $194; + $195 = HEAP32[$2>>2]|0; + $196 = (($195) + 64|0); + $197 = HEAP32[$196>>2]|0; + $198 = HEAP32[$nNew>>2]|0; + $199 = (_sqlite3_realloc($197,$198)|0); + HEAP32[$zNew>>2] = $199; + $200 = HEAP32[$zNew>>2]|0; + $201 = ($200|0)!=(0|0); + if ($201) { + $202 = HEAP32[$zNew>>2]|0; + $203 = HEAP32[$2>>2]|0; + $204 = (($203) + 64|0); + HEAP32[$204>>2] = $202; + $205 = HEAP32[$nNew>>2]|0; + $206 = HEAP32[$2>>2]|0; + $207 = (($206) + 68|0); + HEAP32[$207>>2] = $205; + break; + } + HEAP32[$0>>2] = 7; + $282 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($282|0); + } + } while(0); + $208 = HEAP32[$2>>2]|0; + $209 = HEAP32[$pNext>>2]|0; + $210 = HEAP32[$nSuffix>>2]|0; + $211 = (($210) + 10)|0; + $212 = (_fts3SegReaderRequire($208,$209,$211)|0); + HEAP32[$rc>>2] = $212; + $213 = HEAP32[$rc>>2]|0; + $214 = ($213|0)!=(0); + if ($214) { + $215 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $215; + $282 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($282|0); + } + $216 = HEAP32[$nPrefix>>2]|0; + $217 = HEAP32[$2>>2]|0; + $218 = (($217) + 64|0); + $219 = HEAP32[$218>>2]|0; + $220 = (($219) + ($216)|0); + $221 = HEAP32[$pNext>>2]|0; + $222 = HEAP32[$nSuffix>>2]|0; + _memcpy(($220|0),($221|0),($222|0))|0; + $223 = HEAP32[$nPrefix>>2]|0; + $224 = HEAP32[$nSuffix>>2]|0; + $225 = (($223) + ($224))|0; + $226 = HEAP32[$2>>2]|0; + $227 = (($226) + 60|0); + HEAP32[$227>>2] = $225; + $228 = HEAP32[$nSuffix>>2]|0; + $229 = HEAP32[$pNext>>2]|0; + $230 = (($229) + ($228)|0); + HEAP32[$pNext>>2] = $230; + $231 = HEAP32[$pNext>>2]|0; + $232 = HEAP8[$231>>0]|0; + $233 = $232&255; + $234 = $233 & 128; + $235 = ($234|0)!=(0); + $236 = HEAP32[$pNext>>2]|0; + if ($235) { + $237 = HEAP32[$2>>2]|0; + $238 = (($237) + 76|0); + $239 = (_sqlite3Fts3GetVarint32($236,$238)|0); + $246 = $239; + } else { + $240 = HEAP8[$236>>0]|0; + $241 = $240&255; + $242 = HEAP32[$2>>2]|0; + $243 = (($242) + 76|0); + HEAP32[$243>>2] = $241; + $246 = 1; + } + $244 = HEAP32[$pNext>>2]|0; + $245 = (($244) + ($246)|0); + HEAP32[$pNext>>2] = $245; + $247 = HEAP32[$pNext>>2]|0; + $248 = HEAP32[$2>>2]|0; + $249 = (($248) + 72|0); + HEAP32[$249>>2] = $247; + $250 = HEAP32[$2>>2]|0; + $251 = (($250) + 80|0); + HEAP32[$251>>2] = 0; + $252 = HEAP32[$2>>2]|0; + $253 = (($252) + 76|0); + $254 = HEAP32[$253>>2]|0; + $255 = HEAP32[$2>>2]|0; + $256 = (($255) + 72|0); + $257 = HEAP32[$256>>2]|0; + $258 = (($257) + ($254)|0); + $259 = HEAP32[$2>>2]|0; + $260 = (($259) + 44|0); + $261 = HEAP32[$260>>2]|0; + $262 = HEAP32[$2>>2]|0; + $263 = (($262) + 40|0); + $264 = HEAP32[$263>>2]|0; + $265 = (($264) + ($261)|0); + $266 = ($258>>>0)>($265>>>0); + do { + if (!($266)) { + $267 = HEAP32[$2>>2]|0; + $268 = (($267) + 48|0); + $269 = HEAP32[$268>>2]|0; + $270 = ($269|0)==(0); + if ($270) { + $271 = HEAP32[$2>>2]|0; + $272 = (($271) + 76|0); + $273 = HEAP32[$272>>2]|0; + $274 = (($273) - 1)|0; + $275 = HEAP32[$2>>2]|0; + $276 = (($275) + 72|0); + $277 = HEAP32[$276>>2]|0; + $278 = (($277) + ($274)|0); + $279 = HEAP8[$278>>0]|0; + $280 = $279 << 24 >> 24; + $281 = ($280|0)!=(0); + if ($281) { + break; + } + } + HEAP32[$0>>2] = 0; + $282 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($282|0); + } + } while(0); + HEAP32[$0>>2] = 267; + $282 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($282|0); + } + } + } + HEAP32[$0>>2] = 267; + $282 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($282|0); +} +function _fts3SegReaderSort($apSegment,$nSegment,$nSuspect,$xCmp) { + $apSegment = $apSegment|0; + $nSegment = $nSegment|0; + $nSuspect = $nSuspect|0; + $xCmp = $xCmp|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $j = 0, $pTmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $i = sp + 12|0; + $j = sp + 16|0; + $pTmp = sp + 20|0; + HEAP32[$0>>2] = $apSegment; + HEAP32[$1>>2] = $nSegment; + HEAP32[$2>>2] = $nSuspect; + HEAP32[$3>>2] = $xCmp; + $4 = HEAP32[$2>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = ($4|0)==($5|0); + if ($6) { + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + -1)|0; + HEAP32[$2>>2] = $8; + } + $9 = HEAP32[$2>>2]|0; + $10 = (($9) - 1)|0; + HEAP32[$i>>2] = $10; + while(1) { + $11 = HEAP32[$i>>2]|0; + $12 = ($11|0)>=(0); + if (!($12)) { + break; + } + $13 = HEAP32[$i>>2]|0; + HEAP32[$j>>2] = $13; + while(1) { + $14 = HEAP32[$j>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) - 1)|0; + $17 = ($14|0)<($16|0); + if (!($17)) { + break; + } + $18 = HEAP32[$3>>2]|0; + $19 = HEAP32[$j>>2]|0; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + ($19<<2)|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$j>>2]|0; + $24 = (($23) + 1)|0; + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + ($24<<2)|0); + $27 = HEAP32[$26>>2]|0; + $28 = (FUNCTION_TABLE_iii[$18 & 127]($22,$27)|0); + $29 = ($28|0)<(0); + if ($29) { + break; + } + $30 = HEAP32[$j>>2]|0; + $31 = (($30) + 1)|0; + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + ($31<<2)|0); + $34 = HEAP32[$33>>2]|0; + HEAP32[$pTmp>>2] = $34; + $35 = HEAP32[$j>>2]|0; + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + ($35<<2)|0); + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$j>>2]|0; + $40 = (($39) + 1)|0; + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + ($40<<2)|0); + HEAP32[$42>>2] = $38; + $43 = HEAP32[$pTmp>>2]|0; + $44 = HEAP32[$j>>2]|0; + $45 = HEAP32[$0>>2]|0; + $46 = (($45) + ($44<<2)|0); + HEAP32[$46>>2] = $43; + $47 = HEAP32[$j>>2]|0; + $48 = (($47) + 1)|0; + HEAP32[$j>>2] = $48; + } + $49 = HEAP32[$i>>2]|0; + $50 = (($49) + -1)|0; + HEAP32[$i>>2] = $50; + } + STACKTOP = sp;return; +} +function _fts3SegReaderCmp($pLhs,$pRhs) { + $pLhs = $pLhs|0; + $pRhs = $pRhs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $rc2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $rc = sp + 4|0; + $rc2 = sp + 8|0; + HEAP32[$0>>2] = $pLhs; + HEAP32[$1>>2] = $pRhs; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 40|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 40|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 60|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 60|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($12) - ($15))|0; + HEAP32[$rc2>>2] = $16; + $17 = HEAP32[$rc2>>2]|0; + $18 = ($17|0)<(0); + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 64|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 64|0); + $24 = HEAP32[$23>>2]|0; + if ($18) { + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 60|0); + $27 = HEAP32[$26>>2]|0; + $28 = (_memcmp($21,$24,$27)|0); + HEAP32[$rc>>2] = $28; + } else { + $29 = HEAP32[$1>>2]|0; + $30 = (($29) + 60|0); + $31 = HEAP32[$30>>2]|0; + $32 = (_memcmp($21,$24,$31)|0); + HEAP32[$rc>>2] = $32; + } + $33 = HEAP32[$rc>>2]|0; + $34 = ($33|0)==(0); + if ($34) { + $35 = HEAP32[$rc2>>2]|0; + HEAP32[$rc>>2] = $35; + } + } else { + label = 8; + } + } else { + label = 8; + } + if ((label|0) == 8) { + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + 40|0); + $38 = HEAP32[$37>>2]|0; + $39 = ($38|0)==(0|0); + $40 = $39&1; + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 40|0); + $43 = HEAP32[$42>>2]|0; + $44 = ($43|0)==(0|0); + $45 = $44&1; + $46 = (($40) - ($45))|0; + HEAP32[$rc>>2] = $46; + } + $47 = HEAP32[$rc>>2]|0; + $48 = ($47|0)==(0); + if (!($48)) { + $54 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($54|0); + } + $49 = HEAP32[$1>>2]|0; + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$0>>2]|0; + $52 = HEAP32[$51>>2]|0; + $53 = (($50) - ($52))|0; + HEAP32[$rc>>2] = $53; + $54 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($54|0); +} +function _fts3MsrBufferData($pMsr,$pList,$nList) { + $pMsr = $pMsr|0; + $pList = $pList|0; + $nList = $nList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pNew = sp + 12|0; + HEAP32[$1>>2] = $pMsr; + HEAP32[$2>>2] = $pList; + HEAP32[$3>>2] = $nList; + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 20|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($4|0)>($7|0); + do { + if ($8) { + $9 = HEAP32[$3>>2]|0; + $10 = $9<<1; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 20|0); + HEAP32[$12>>2] = $10; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 16|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 20|0); + $18 = HEAP32[$17>>2]|0; + $19 = (_sqlite3_realloc($15,$18)|0); + HEAP32[$pNew>>2] = $19; + $20 = HEAP32[$pNew>>2]|0; + $21 = ($20|0)!=(0|0); + if ($21) { + $22 = HEAP32[$pNew>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 16|0); + HEAP32[$24>>2] = $22; + break; + } + HEAP32[$0>>2] = 7; + $30 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($30|0); + } + } while(0); + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 16|0); + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$2>>2]|0; + $29 = HEAP32[$3>>2]|0; + _memcpy(($27|0),($28|0),($29|0))|0; + HEAP32[$0>>2] = 0; + $30 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($30|0); +} +function _fts3SegReaderFirstDocid($pTab,$pReader) { + $pTab = $pTab|0; + $pReader = $pReader|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $bEof = 0, $n = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 12|0; + $1 = sp; + $rc = sp + 4|0; + $bEof = sp + 16|0; + $n = sp + 8|0; + HEAP32[$0>>2] = $pTab; + HEAP32[$1>>2] = $pReader; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 231|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = ($5|0)!=(0); + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 56|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + HEAP8[$bEof>>0] = 0; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 88|0); + $13 = $12; + $14 = $13; + HEAP32[$14>>2] = 0; + $15 = (($13) + 4)|0; + $16 = $15; + HEAP32[$16>>2] = 0; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 84|0); + HEAP32[$18>>2] = 0; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 72|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 76|0); + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 80|0); + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 88|0); + $29 = HEAP32[$1>>2]|0; + $30 = (($29) + 84|0); + _sqlite3Fts3DoclistPrev(0,$21,$24,$26,$28,$30,$bEof); + $51 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($51|0); + } + } + $31 = HEAP32[$1>>2]|0; + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 72|0); + $34 = HEAP32[$33>>2]|0; + $35 = (_fts3SegReaderRequire($31,$34,10)|0); + HEAP32[$rc>>2] = $35; + $36 = HEAP32[$rc>>2]|0; + $37 = ($36|0)==(0); + if (!($37)) { + $51 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($51|0); + } + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 72|0); + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 88|0); + $43 = (_sqlite3Fts3GetVarint($40,$42)|0); + HEAP32[$n>>2] = $43; + $44 = HEAP32[$n>>2]|0; + $45 = HEAP32[$1>>2]|0; + $46 = (($45) + 72|0); + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + ($44)|0); + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 80|0); + HEAP32[$50>>2] = $48; + $51 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($51|0); +} +function _fts3SegReaderNextDocid($pTab,$pReader,$ppOffsetList,$pnOffsetList) { + $pTab = $pTab|0; + $pReader = $pReader|0; + $ppOffsetList = $ppOffsetList|0; + $pnOffsetList = $pnOffsetList|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bEof = 0, $c = 0, $iDelta = 0, $p = 0, $pEnd = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 16|0; + $rc = sp + 12|0; + $p = sp + 8|0; + $c = sp + 41|0; + $bEof = sp + 40|0; + $pEnd = sp + 20|0; + $iDelta = sp; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $pReader; + HEAP32[$3>>2] = $ppOffsetList; + HEAP32[$4>>2] = $pnOffsetList; + HEAP32[$rc>>2] = 0; + $5 = HEAP32[$2>>2]|0; + $6 = (($5) + 80|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$p>>2] = $7; + HEAP8[$c>>0] = 0; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 231|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = ($11|0)!=(0); + do { + if ($12) { + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 56|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + HEAP8[$bEof>>0] = 0; + $17 = HEAP32[$3>>2]|0; + $18 = ($17|0)!=(0|0); + if ($18) { + $19 = HEAP32[$2>>2]|0; + $20 = (($19) + 80|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$3>>2]|0; + HEAP32[$22>>2] = $21; + $23 = HEAP32[$2>>2]|0; + $24 = (($23) + 84|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) - 1)|0; + $27 = HEAP32[$4>>2]|0; + HEAP32[$27>>2] = $26; + } + $28 = HEAP32[$2>>2]|0; + $29 = (($28) + 72|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$2>>2]|0; + $32 = (($31) + 76|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = (($34) + 88|0); + $36 = HEAP32[$2>>2]|0; + $37 = (($36) + 84|0); + _sqlite3Fts3DoclistPrev(0,$30,$33,$p,$35,$37,$bEof); + $38 = HEAP8[$bEof>>0]|0; + $39 = ($38<<24>>24)!=(0); + if ($39) { + $40 = HEAP32[$2>>2]|0; + $41 = (($40) + 80|0); + HEAP32[$41>>2] = 0; + break; + } else { + $42 = HEAP32[$p>>2]|0; + $43 = HEAP32[$2>>2]|0; + $44 = (($43) + 80|0); + HEAP32[$44>>2] = $42; + break; + } + } else { + label = 8; + } + } else { + label = 8; + } + } while(0); + do { + if ((label|0) == 8) { + $45 = HEAP32[$2>>2]|0; + $46 = (($45) + 76|0); + $47 = HEAP32[$46>>2]|0; + $48 = HEAP32[$2>>2]|0; + $49 = (($48) + 72|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + ($47)|0); + HEAP32[$pEnd>>2] = $51; + while(1) { + $52 = HEAP32[$p>>2]|0; + $53 = HEAP8[$52>>0]|0; + $54 = $53 << 24 >> 24; + $55 = HEAP8[$c>>0]|0; + $56 = $55 << 24 >> 24; + $57 = $54 | $56; + $58 = ($57|0)!=(0); + if ($58) { + $59 = HEAP32[$p>>2]|0; + $60 = (($59) + 1|0); + HEAP32[$p>>2] = $60; + $61 = HEAP8[$59>>0]|0; + $62 = $61 << 24 >> 24; + $63 = $62 & 128; + $64 = $63&255; + HEAP8[$c>>0] = $64; + continue; + } + $65 = HEAP32[$2>>2]|0; + $66 = (($65) + 52|0); + $67 = HEAP32[$66>>2]|0; + $68 = ($67|0)==(0|0); + if ($68) { + break; + } + $69 = HEAP32[$p>>2]|0; + $70 = HEAP32[$2>>2]|0; + $71 = (($70) + 48|0); + $72 = HEAP32[$71>>2]|0; + $73 = HEAP32[$2>>2]|0; + $74 = (($73) + 40|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($75) + ($72)|0); + $77 = ($69>>>0)<($76>>>0); + if ($77) { + break; + } + $78 = HEAP32[$2>>2]|0; + $79 = (_fts3SegReaderIncrRead($78)|0); + HEAP32[$rc>>2] = $79; + $80 = HEAP32[$rc>>2]|0; + $81 = ($80|0)!=(0); + if ($81) { + label = 14; + break; + } + } + if ((label|0) == 14) { + $82 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $82; + $153 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($153|0); + } + $83 = HEAP32[$p>>2]|0; + $84 = (($83) + 1|0); + HEAP32[$p>>2] = $84; + $85 = HEAP32[$3>>2]|0; + $86 = ($85|0)!=(0|0); + if ($86) { + $87 = HEAP32[$2>>2]|0; + $88 = (($87) + 80|0); + $89 = HEAP32[$88>>2]|0; + $90 = HEAP32[$3>>2]|0; + HEAP32[$90>>2] = $89; + $91 = HEAP32[$p>>2]|0; + $92 = HEAP32[$2>>2]|0; + $93 = (($92) + 80|0); + $94 = HEAP32[$93>>2]|0; + $95 = $91; + $96 = $94; + $97 = (($95) - ($96))|0; + $98 = (($97) - 1)|0; + $99 = HEAP32[$4>>2]|0; + HEAP32[$99>>2] = $98; + } + while(1) { + $100 = HEAP32[$p>>2]|0; + $101 = HEAP32[$pEnd>>2]|0; + $102 = ($100>>>0)<($101>>>0); + if ($102) { + $103 = HEAP32[$p>>2]|0; + $104 = HEAP8[$103>>0]|0; + $105 = $104 << 24 >> 24; + $106 = ($105|0)==(0); + $154 = $106; + } else { + $154 = 0; + } + $107 = HEAP32[$p>>2]|0; + if (!($154)) { + break; + } + $108 = (($107) + 1|0); + HEAP32[$p>>2] = $108; + } + $109 = HEAP32[$pEnd>>2]|0; + $110 = ($107>>>0)>=($109>>>0); + $111 = HEAP32[$2>>2]|0; + if ($110) { + $112 = (($111) + 80|0); + HEAP32[$112>>2] = 0; + break; + } + $113 = HEAP32[$p>>2]|0; + $114 = (_fts3SegReaderRequire($111,$113,10)|0); + HEAP32[$rc>>2] = $114; + $115 = HEAP32[$rc>>2]|0; + $116 = ($115|0)==(0); + if ($116) { + $117 = HEAP32[$p>>2]|0; + $118 = HEAP32[$p>>2]|0; + $119 = (_sqlite3Fts3GetVarint($118,$iDelta)|0); + $120 = (($117) + ($119)|0); + $121 = HEAP32[$2>>2]|0; + $122 = (($121) + 80|0); + HEAP32[$122>>2] = $120; + $123 = HEAP32[$1>>2]|0; + $124 = (($123) + 231|0); + $125 = HEAP8[$124>>0]|0; + $126 = ($125<<24>>24)!=(0); + $127 = $iDelta; + $128 = $127; + $129 = HEAP32[$128>>2]|0; + $130 = (($127) + 4)|0; + $131 = $130; + $132 = HEAP32[$131>>2]|0; + $133 = HEAP32[$2>>2]|0; + $134 = (($133) + 88|0); + $135 = $134; + $136 = $135; + $137 = HEAP32[$136>>2]|0; + $138 = (($135) + 4)|0; + $139 = $138; + $140 = HEAP32[$139>>2]|0; + if ($126) { + $141 = (_i64Subtract(($137|0),($140|0),($129|0),($132|0))|0); + $142 = tempRet0; + $143 = $134; + $144 = $143; + HEAP32[$144>>2] = $141; + $145 = (($143) + 4)|0; + $146 = $145; + HEAP32[$146>>2] = $142; + break; + } else { + $147 = (_i64Add(($137|0),($140|0),($129|0),($132|0))|0); + $148 = tempRet0; + $149 = $134; + $150 = $149; + HEAP32[$150>>2] = $147; + $151 = (($149) + 4)|0; + $152 = $151; + HEAP32[$152>>2] = $148; + break; + } + } + } + } while(0); + HEAP32[$0>>2] = 0; + $153 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($153|0); +} +function _fts3ColumnFilter($iCol,$bZero,$ppList,$pnList) { + $iCol = $iCol|0; + $bZero = $bZero|0; + $ppList = $ppList|0; + $pnList = $pnList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $8 = 0, $9 = 0, $c = 0, $iCurrent = 0, $nList = 0; + var $p = 0, $pEnd = 0, $pList = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 16|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $pList = sp + 20|0; + $nList = sp + 12|0; + $pEnd = sp + 8|0; + $iCurrent = sp + 4|0; + $p = sp; + $c = sp + 36|0; + HEAP32[$0>>2] = $iCol; + HEAP32[$1>>2] = $bZero; + HEAP32[$2>>2] = $ppList; + HEAP32[$3>>2] = $pnList; + $4 = HEAP32[$2>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$pList>>2] = $5; + $6 = HEAP32[$3>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$nList>>2] = $7; + $8 = HEAP32[$nList>>2]|0; + $9 = HEAP32[$pList>>2]|0; + $10 = (($9) + ($8)|0); + HEAP32[$pEnd>>2] = $10; + HEAP32[$iCurrent>>2] = 0; + $11 = HEAP32[$pList>>2]|0; + HEAP32[$p>>2] = $11; + while(1) { + HEAP8[$c>>0] = 0; + while(1) { + $12 = HEAP32[$p>>2]|0; + $13 = HEAP32[$pEnd>>2]|0; + $14 = ($12>>>0)<($13>>>0); + if (!($14)) { + break; + } + $15 = HEAP8[$c>>0]|0; + $16 = $15 << 24 >> 24; + $17 = HEAP32[$p>>2]|0; + $18 = HEAP8[$17>>0]|0; + $19 = $18 << 24 >> 24; + $20 = $16 | $19; + $21 = $20 & 254; + $22 = ($21|0)!=(0); + if (!($22)) { + break; + } + $23 = HEAP32[$p>>2]|0; + $24 = (($23) + 1|0); + HEAP32[$p>>2] = $24; + $25 = HEAP8[$23>>0]|0; + $26 = $25 << 24 >> 24; + $27 = $26 & 128; + $28 = $27&255; + HEAP8[$c>>0] = $28; + } + $29 = HEAP32[$0>>2]|0; + $30 = HEAP32[$iCurrent>>2]|0; + $31 = ($29|0)==($30|0); + $32 = HEAP32[$p>>2]|0; + $33 = HEAP32[$pList>>2]|0; + $34 = $32; + $35 = $33; + $36 = (($34) - ($35))|0; + if ($31) { + label = 7; + break; + } + $37 = HEAP32[$nList>>2]|0; + $38 = (($37) - ($36))|0; + HEAP32[$nList>>2] = $38; + $39 = HEAP32[$p>>2]|0; + HEAP32[$pList>>2] = $39; + $40 = HEAP32[$nList>>2]|0; + $41 = ($40|0)==(0); + if ($41) { + break; + } + $42 = HEAP32[$pList>>2]|0; + $43 = (($42) + 1|0); + HEAP32[$p>>2] = $43; + $44 = HEAP32[$p>>2]|0; + $45 = HEAP8[$44>>0]|0; + $46 = $45&255; + $47 = $46 & 128; + $48 = ($47|0)!=(0); + $49 = HEAP32[$p>>2]|0; + if ($48) { + $50 = (_sqlite3Fts3GetVarint32($49,$iCurrent)|0); + $55 = $50; + } else { + $51 = HEAP8[$49>>0]|0; + $52 = $51&255; + HEAP32[$iCurrent>>2] = $52; + $55 = 1; + } + $53 = HEAP32[$p>>2]|0; + $54 = (($53) + ($55)|0); + HEAP32[$p>>2] = $54; + } + if ((label|0) == 7) { + HEAP32[$nList>>2] = $36; + } + $56 = HEAP32[$1>>2]|0; + $57 = ($56|0)!=(0); + if (!($57)) { + $73 = HEAP32[$pList>>2]|0; + $74 = HEAP32[$2>>2]|0; + HEAP32[$74>>2] = $73; + $75 = HEAP32[$nList>>2]|0; + $76 = HEAP32[$3>>2]|0; + HEAP32[$76>>2] = $75; + STACKTOP = sp;return; + } + $58 = HEAP32[$nList>>2]|0; + $59 = HEAP32[$pList>>2]|0; + $60 = (($59) + ($58)|0); + $61 = HEAP32[$pEnd>>2]|0; + $62 = ($60|0)!=($61|0); + if (!($62)) { + $73 = HEAP32[$pList>>2]|0; + $74 = HEAP32[$2>>2]|0; + HEAP32[$74>>2] = $73; + $75 = HEAP32[$nList>>2]|0; + $76 = HEAP32[$3>>2]|0; + HEAP32[$76>>2] = $75; + STACKTOP = sp;return; + } + $63 = HEAP32[$nList>>2]|0; + $64 = HEAP32[$pList>>2]|0; + $65 = (($64) + ($63)|0); + $66 = HEAP32[$pEnd>>2]|0; + $67 = HEAP32[$nList>>2]|0; + $68 = HEAP32[$pList>>2]|0; + $69 = (($68) + ($67)|0); + $70 = $66; + $71 = $69; + $72 = (($70) - ($71))|0; + _memset(($65|0),0,($72|0))|0; + $73 = HEAP32[$pList>>2]|0; + $74 = HEAP32[$2>>2]|0; + HEAP32[$74>>2] = $73; + $75 = HEAP32[$nList>>2]|0; + $76 = HEAP32[$3>>2]|0; + HEAP32[$76>>2] = $75; + STACKTOP = sp;return; +} +function _sqlite3Fts3FirstFilter($0,$1,$pList,$nList,$pOut) { + $0 = $0|0; + $1 = $1|0; + $pList = $pList|0; + $nList = $nList|0; + $pOut = $pOut|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $bWritten = 0, $iCol = 0, $nOut = 0, $p = 0, $pEnd = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $2 = sp + 8|0; + $3 = sp + 20|0; + $4 = sp + 40|0; + $5 = sp + 16|0; + $nOut = sp + 36|0; + $bWritten = sp + 24|0; + $p = sp + 28|0; + $pEnd = sp + 32|0; + $iCol = sp; + $6 = $2; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + HEAP32[$3>>2] = $pList; + HEAP32[$4>>2] = $nList; + HEAP32[$5>>2] = $pOut; + HEAP32[$nOut>>2] = 0; + HEAP32[$bWritten>>2] = 0; + $10 = HEAP32[$3>>2]|0; + HEAP32[$p>>2] = $10; + $11 = HEAP32[$4>>2]|0; + $12 = HEAP32[$3>>2]|0; + $13 = (($12) + ($11)|0); + HEAP32[$pEnd>>2] = $13; + $14 = HEAP32[$p>>2]|0; + $15 = HEAP8[$14>>0]|0; + $16 = $15 << 24 >> 24; + $17 = ($16|0)!=(1); + if ($17) { + $18 = HEAP32[$p>>2]|0; + $19 = HEAP8[$18>>0]|0; + $20 = $19 << 24 >> 24; + $21 = ($20|0)==(2); + if ($21) { + $22 = HEAP32[$nOut>>2]|0; + $23 = HEAP32[$5>>2]|0; + $24 = (($23) + ($22)|0); + $25 = $2; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = (_sqlite3Fts3PutVarint($24,$27,$30)|0); + $32 = HEAP32[$nOut>>2]|0; + $33 = (($32) + ($31))|0; + HEAP32[$nOut>>2] = $33; + $34 = HEAP32[$nOut>>2]|0; + $35 = (($34) + 1)|0; + HEAP32[$nOut>>2] = $35; + $36 = HEAP32[$5>>2]|0; + $37 = (($36) + ($34)|0); + HEAP8[$37>>0] = 2; + HEAP32[$bWritten>>2] = 1; + } + _fts3ColumnlistCopy(0,$p); + } + while(1) { + $38 = HEAP32[$p>>2]|0; + $39 = HEAP32[$pEnd>>2]|0; + $40 = ($38>>>0)<($39>>>0); + if (!($40)) { + break; + } + $41 = HEAP32[$p>>2]|0; + $42 = HEAP8[$41>>0]|0; + $43 = $42 << 24 >> 24; + $44 = ($43|0)==(1); + if (!($44)) { + break; + } + $45 = HEAP32[$p>>2]|0; + $46 = (($45) + 1|0); + HEAP32[$p>>2] = $46; + $47 = HEAP32[$p>>2]|0; + $48 = (_sqlite3Fts3GetVarint($47,$iCol)|0); + $49 = HEAP32[$p>>2]|0; + $50 = (($49) + ($48)|0); + HEAP32[$p>>2] = $50; + $51 = HEAP32[$p>>2]|0; + $52 = HEAP8[$51>>0]|0; + $53 = $52 << 24 >> 24; + $54 = ($53|0)==(2); + if ($54) { + $55 = HEAP32[$bWritten>>2]|0; + $56 = ($55|0)==(0); + if ($56) { + $57 = HEAP32[$nOut>>2]|0; + $58 = HEAP32[$5>>2]|0; + $59 = (($58) + ($57)|0); + $60 = $2; + $61 = $60; + $62 = HEAP32[$61>>2]|0; + $63 = (($60) + 4)|0; + $64 = $63; + $65 = HEAP32[$64>>2]|0; + $66 = (_sqlite3Fts3PutVarint($59,$62,$65)|0); + $67 = HEAP32[$nOut>>2]|0; + $68 = (($67) + ($66))|0; + HEAP32[$nOut>>2] = $68; + HEAP32[$bWritten>>2] = 1; + } + $69 = HEAP32[$nOut>>2]|0; + $70 = (($69) + 1)|0; + HEAP32[$nOut>>2] = $70; + $71 = HEAP32[$5>>2]|0; + $72 = (($71) + ($69)|0); + HEAP8[$72>>0] = 1; + $73 = HEAP32[$nOut>>2]|0; + $74 = HEAP32[$5>>2]|0; + $75 = (($74) + ($73)|0); + $76 = $iCol; + $77 = $76; + $78 = HEAP32[$77>>2]|0; + $79 = (($76) + 4)|0; + $80 = $79; + $81 = HEAP32[$80>>2]|0; + $82 = (_sqlite3Fts3PutVarint($75,$78,$81)|0); + $83 = HEAP32[$nOut>>2]|0; + $84 = (($83) + ($82))|0; + HEAP32[$nOut>>2] = $84; + $85 = HEAP32[$nOut>>2]|0; + $86 = (($85) + 1)|0; + HEAP32[$nOut>>2] = $86; + $87 = HEAP32[$5>>2]|0; + $88 = (($87) + ($85)|0); + HEAP8[$88>>0] = 2; + } + _fts3ColumnlistCopy(0,$p); + } + $89 = HEAP32[$bWritten>>2]|0; + $90 = ($89|0)!=(0); + if (!($90)) { + $95 = HEAP32[$nOut>>2]|0; + STACKTOP = sp;return ($95|0); + } + $91 = HEAP32[$nOut>>2]|0; + $92 = (($91) + 1)|0; + HEAP32[$nOut>>2] = $92; + $93 = HEAP32[$5>>2]|0; + $94 = (($93) + ($91)|0); + HEAP8[$94>>0] = 0; + $95 = HEAP32[$nOut>>2]|0; + STACKTOP = sp;return ($95|0); +} +function _fts3ColumnlistCopy($pp,$ppPoslist) { + $pp = $pp|0; + $ppPoslist = $ppPoslist|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0; + var $n = 0, $p = 0, $pEnd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $pEnd = sp + 4|0; + $c = sp + 20|0; + $n = sp + 12|0; + $p = sp + 8|0; + HEAP32[$0>>2] = $pp; + HEAP32[$1>>2] = $ppPoslist; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$pEnd>>2] = $3; + HEAP8[$c>>0] = 0; + while(1) { + $4 = HEAP32[$pEnd>>2]|0; + $5 = HEAP8[$4>>0]|0; + $6 = $5 << 24 >> 24; + $7 = HEAP8[$c>>0]|0; + $8 = $7 << 24 >> 24; + $9 = $6 | $8; + $10 = 254 & $9; + $11 = ($10|0)!=(0); + if (!($11)) { + break; + } + $12 = HEAP32[$pEnd>>2]|0; + $13 = (($12) + 1|0); + HEAP32[$pEnd>>2] = $13; + $14 = HEAP8[$12>>0]|0; + $15 = $14 << 24 >> 24; + $16 = $15 & 128; + $17 = $16&255; + HEAP8[$c>>0] = $17; + } + $18 = HEAP32[$0>>2]|0; + $19 = ($18|0)!=(0|0); + if (!($19)) { + $37 = HEAP32[$pEnd>>2]|0; + $38 = HEAP32[$1>>2]|0; + HEAP32[$38>>2] = $37; + STACKTOP = sp;return; + } + $20 = HEAP32[$pEnd>>2]|0; + $21 = HEAP32[$1>>2]|0; + $22 = HEAP32[$21>>2]|0; + $23 = $20; + $24 = $22; + $25 = (($23) - ($24))|0; + HEAP32[$n>>2] = $25; + $26 = HEAP32[$0>>2]|0; + $27 = HEAP32[$26>>2]|0; + HEAP32[$p>>2] = $27; + $28 = HEAP32[$p>>2]|0; + $29 = HEAP32[$1>>2]|0; + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$n>>2]|0; + _memcpy(($28|0),($30|0),($31|0))|0; + $32 = HEAP32[$n>>2]|0; + $33 = HEAP32[$p>>2]|0; + $34 = (($33) + ($32)|0); + HEAP32[$p>>2] = $34; + $35 = HEAP32[$p>>2]|0; + $36 = HEAP32[$0>>2]|0; + HEAP32[$36>>2] = $35; + $37 = HEAP32[$pEnd>>2]|0; + $38 = HEAP32[$1>>2]|0; + HEAP32[$38>>2] = $37; + STACKTOP = sp;return; +} +function _sqlite3Fts3GetVarint($p,$v) { + $p = $p|0; + $v = $v|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $14 = 0; + var $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; + var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; + var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; + var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a = 0, $b = 0, $c = 0, $pStart = 0, $shift = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 24|0; + $pStart = sp + 16|0; + $a = sp + 20|0; + $b = sp; + $shift = sp + 28|0; + $c = sp + 8|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $v; + $3 = HEAP32[$1>>2]|0; + HEAP32[$pStart>>2] = $3; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 1|0); + HEAP32[$1>>2] = $5; + $6 = HEAP8[$4>>0]|0; + $7 = $6 << 24 >> 24; + HEAP32[$a>>2] = $7; + $8 = HEAP32[$a>>2]|0; + $9 = $8 & 128; + $10 = ($9|0)==(0); + $11 = HEAP32[$a>>2]|0; + if ($10) { + $12 = HEAP32[$2>>2]|0; + $13 = $12; + $14 = $13; + HEAP32[$14>>2] = $11; + $15 = (($13) + 4)|0; + $16 = $15; + HEAP32[$16>>2] = 0; + HEAP32[$0>>2] = 1; + $132 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($132|0); + } + $17 = $11 & 127; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 1|0); + HEAP32[$1>>2] = $19; + $20 = HEAP8[$18>>0]|0; + $21 = $20 << 24 >> 24; + $22 = $21 << 7; + $23 = $17 | $22; + HEAP32[$a>>2] = $23; + $24 = HEAP32[$a>>2]|0; + $25 = $24 & 16384; + $26 = ($25|0)==(0); + $27 = HEAP32[$a>>2]|0; + if ($26) { + $28 = HEAP32[$2>>2]|0; + $29 = $28; + $30 = $29; + HEAP32[$30>>2] = $27; + $31 = (($29) + 4)|0; + $32 = $31; + HEAP32[$32>>2] = 0; + HEAP32[$0>>2] = 2; + $132 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($132|0); + } + $33 = $27 & 16383; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 1|0); + HEAP32[$1>>2] = $35; + $36 = HEAP8[$34>>0]|0; + $37 = $36 << 24 >> 24; + $38 = $37 << 14; + $39 = $33 | $38; + HEAP32[$a>>2] = $39; + $40 = HEAP32[$a>>2]|0; + $41 = $40 & 2097152; + $42 = ($41|0)==(0); + $43 = HEAP32[$a>>2]|0; + if ($42) { + $44 = HEAP32[$2>>2]|0; + $45 = $44; + $46 = $45; + HEAP32[$46>>2] = $43; + $47 = (($45) + 4)|0; + $48 = $47; + HEAP32[$48>>2] = 0; + HEAP32[$0>>2] = 3; + $132 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($132|0); + } + $49 = $43 & 2097151; + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 1|0); + HEAP32[$1>>2] = $51; + $52 = HEAP8[$50>>0]|0; + $53 = $52 << 24 >> 24; + $54 = $53 << 21; + $55 = $49 | $54; + HEAP32[$a>>2] = $55; + $56 = HEAP32[$a>>2]|0; + $57 = $56 & 268435456; + $58 = ($57|0)==(0); + $59 = HEAP32[$a>>2]|0; + if ($58) { + $60 = HEAP32[$2>>2]|0; + $61 = $60; + $62 = $61; + HEAP32[$62>>2] = $59; + $63 = (($61) + 4)|0; + $64 = $63; + HEAP32[$64>>2] = 0; + HEAP32[$0>>2] = 4; + $132 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($132|0); + } + $65 = $59 & 268435455; + $66 = $b; + $67 = $66; + HEAP32[$67>>2] = $65; + $68 = (($66) + 4)|0; + $69 = $68; + HEAP32[$69>>2] = 0; + HEAP32[$shift>>2] = 28; + while(1) { + $70 = HEAP32[$shift>>2]|0; + $71 = ($70|0)<=(63); + if (!($71)) { + break; + } + $72 = HEAP32[$1>>2]|0; + $73 = (($72) + 1|0); + HEAP32[$1>>2] = $73; + $74 = HEAP8[$72>>0]|0; + $75 = $74 << 24 >> 24; + $76 = ($75|0)<(0); + $77 = $76 << 31 >> 31; + $78 = $c; + $79 = $78; + HEAP32[$79>>2] = $75; + $80 = (($78) + 4)|0; + $81 = $80; + HEAP32[$81>>2] = $77; + $82 = $c; + $83 = $82; + $84 = HEAP32[$83>>2]|0; + $85 = (($82) + 4)|0; + $86 = $85; + $87 = HEAP32[$86>>2]|0; + $88 = $84 & 127; + $89 = HEAP32[$shift>>2]|0; + $90 = (_bitshift64Shl(($88|0),0,($89|0))|0); + $91 = tempRet0; + $92 = $b; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = (($92) + 4)|0; + $96 = $95; + $97 = HEAP32[$96>>2]|0; + $98 = (_i64Add(($94|0),($97|0),($90|0),($91|0))|0); + $99 = tempRet0; + $100 = $b; + $101 = $100; + HEAP32[$101>>2] = $98; + $102 = (($100) + 4)|0; + $103 = $102; + HEAP32[$103>>2] = $99; + $104 = $c; + $105 = $104; + $106 = HEAP32[$105>>2]|0; + $107 = (($104) + 4)|0; + $108 = $107; + $109 = HEAP32[$108>>2]|0; + $110 = $106 & 128; + $111 = ($110|0)==(0); + $112 = (0)==(0); + $113 = $111 & $112; + if ($113) { + break; + } + $114 = HEAP32[$shift>>2]|0; + $115 = (($114) + 7)|0; + HEAP32[$shift>>2] = $115; + } + $116 = $b; + $117 = $116; + $118 = HEAP32[$117>>2]|0; + $119 = (($116) + 4)|0; + $120 = $119; + $121 = HEAP32[$120>>2]|0; + $122 = HEAP32[$2>>2]|0; + $123 = $122; + $124 = $123; + HEAP32[$124>>2] = $118; + $125 = (($123) + 4)|0; + $126 = $125; + HEAP32[$126>>2] = $121; + $127 = HEAP32[$1>>2]|0; + $128 = HEAP32[$pStart>>2]|0; + $129 = $127; + $130 = $128; + $131 = (($129) - ($130))|0; + HEAP32[$0>>2] = $131; + $132 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($132|0); +} +function _sqlite3Fts3GetVarint32($p,$pi) { + $p = $p|0; + $pi = $pi|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $a = sp + 8|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pi; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 1|0); + HEAP32[$1>>2] = $4; + $5 = HEAP8[$3>>0]|0; + $6 = $5 << 24 >> 24; + HEAP32[$a>>2] = $6; + $7 = HEAP32[$a>>2]|0; + $8 = $7 & 127; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 1|0); + HEAP32[$1>>2] = $10; + $11 = HEAP8[$9>>0]|0; + $12 = $11 << 24 >> 24; + $13 = $12 << 7; + $14 = $8 | $13; + HEAP32[$a>>2] = $14; + $15 = HEAP32[$a>>2]|0; + $16 = $15 & 16384; + $17 = ($16|0)==(0); + $18 = HEAP32[$a>>2]|0; + if ($17) { + $19 = HEAP32[$2>>2]|0; + HEAP32[$19>>2] = $18; + HEAP32[$0>>2] = 2; + $53 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($53|0); + } + $20 = $18 & 16383; + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 1|0); + HEAP32[$1>>2] = $22; + $23 = HEAP8[$21>>0]|0; + $24 = $23 << 24 >> 24; + $25 = $24 << 14; + $26 = $20 | $25; + HEAP32[$a>>2] = $26; + $27 = HEAP32[$a>>2]|0; + $28 = $27 & 2097152; + $29 = ($28|0)==(0); + $30 = HEAP32[$a>>2]|0; + if ($29) { + $31 = HEAP32[$2>>2]|0; + HEAP32[$31>>2] = $30; + HEAP32[$0>>2] = 3; + $53 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($53|0); + } + $32 = $30 & 2097151; + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 1|0); + HEAP32[$1>>2] = $34; + $35 = HEAP8[$33>>0]|0; + $36 = $35 << 24 >> 24; + $37 = $36 << 21; + $38 = $32 | $37; + HEAP32[$a>>2] = $38; + $39 = HEAP32[$a>>2]|0; + $40 = $39 & 268435456; + $41 = ($40|0)==(0); + $42 = HEAP32[$a>>2]|0; + if ($41) { + $43 = HEAP32[$2>>2]|0; + HEAP32[$43>>2] = $42; + HEAP32[$0>>2] = 4; + $53 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($53|0); + } else { + $44 = $42 & 268435455; + HEAP32[$a>>2] = $44; + $45 = HEAP32[$a>>2]|0; + $46 = HEAP32[$1>>2]|0; + $47 = HEAP8[$46>>0]|0; + $48 = $47 << 24 >> 24; + $49 = $48 & 15; + $50 = $49 << 28; + $51 = $45 | $50; + $52 = HEAP32[$2>>2]|0; + HEAP32[$52>>2] = $51; + HEAP32[$0>>2] = 5; + $53 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($53|0); + } + return 0|0; +} +function _sqlite3Fts3DoclistPrev($bDescIdx,$aDoclist,$nDoclist,$ppIter,$piDocid,$pnList,$pbEof) { + $bDescIdx = $bDescIdx|0; + $aDoclist = $aDoclist|0; + $nDoclist = $nDoclist|0; + $ppIter = $ppIter|0; + $piDocid = $piDocid|0; + $pnList = $pnList|0; + $pbEof = $pbEof|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $iDelta = 0, $iDelta2 = 0, $iDocid = 0, $iMul = 0, $iMul1 = 0, $p = 0, $pDocid = 0, $pEnd = 0, $pNext = 0, $pSave = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 76|0; + $1 = sp + 72|0; + $2 = sp + 68|0; + $3 = sp + 64|0; + $4 = sp + 60|0; + $5 = sp + 56|0; + $6 = sp + 52|0; + $p = sp + 48|0; + $iDocid = sp + 16|0; + $pNext = sp + 36|0; + $pDocid = sp + 32|0; + $pEnd = sp + 28|0; + $iMul = sp + 24|0; + $iDelta = sp + 8|0; + $iMul1 = sp + 40|0; + $iDelta2 = sp; + $pSave = sp + 44|0; + HEAP32[$0>>2] = $bDescIdx; + HEAP32[$1>>2] = $aDoclist; + HEAP32[$2>>2] = $nDoclist; + HEAP32[$3>>2] = $ppIter; + HEAP32[$4>>2] = $piDocid; + HEAP32[$5>>2] = $pnList; + HEAP32[$6>>2] = $pbEof; + $7 = HEAP32[$3>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$p>>2] = $8; + $9 = HEAP32[$p>>2]|0; + $10 = ($9|0)==(0|0); + if (!($10)) { + $81 = HEAP32[$0>>2]|0; + $82 = ($81|0)!=(0); + $83 = $82 ? -1 : 1; + HEAP32[$iMul1>>2] = $83; + $84 = HEAP32[$1>>2]|0; + _fts3GetReverseVarint($p,$84,$iDelta2); + $85 = HEAP32[$iMul1>>2]|0; + $86 = ($85|0)<(0); + $87 = $86 << 31 >> 31; + $88 = $iDelta2; + $89 = $88; + $90 = HEAP32[$89>>2]|0; + $91 = (($88) + 4)|0; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $94 = (___muldi3(($85|0),($87|0),($90|0),($93|0))|0); + $95 = tempRet0; + $96 = HEAP32[$4>>2]|0; + $97 = $96; + $98 = $97; + $99 = HEAP32[$98>>2]|0; + $100 = (($97) + 4)|0; + $101 = $100; + $102 = HEAP32[$101>>2]|0; + $103 = (_i64Subtract(($99|0),($102|0),($94|0),($95|0))|0); + $104 = tempRet0; + $105 = $96; + $106 = $105; + HEAP32[$106>>2] = $103; + $107 = (($105) + 4)|0; + $108 = $107; + HEAP32[$108>>2] = $104; + $109 = HEAP32[$p>>2]|0; + $110 = HEAP32[$1>>2]|0; + $111 = ($109|0)==($110|0); + if ($111) { + $112 = HEAP32[$6>>2]|0; + HEAP8[$112>>0] = 1; + } else { + $113 = HEAP32[$p>>2]|0; + HEAP32[$pSave>>2] = $113; + $114 = HEAP32[$1>>2]|0; + _fts3ReversePoslist($114,$p); + $115 = HEAP32[$pSave>>2]|0; + $116 = HEAP32[$p>>2]|0; + $117 = $115; + $118 = $116; + $119 = (($117) - ($118))|0; + $120 = HEAP32[$5>>2]|0; + HEAP32[$120>>2] = $119; + } + $121 = HEAP32[$p>>2]|0; + $122 = HEAP32[$3>>2]|0; + HEAP32[$122>>2] = $121; + STACKTOP = sp;return; + } + $11 = $iDocid; + $12 = $11; + HEAP32[$12>>2] = 0; + $13 = (($11) + 4)|0; + $14 = $13; + HEAP32[$14>>2] = 0; + HEAP32[$pNext>>2] = 0; + $15 = HEAP32[$1>>2]|0; + HEAP32[$pDocid>>2] = $15; + $16 = HEAP32[$2>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + ($16)|0); + HEAP32[$pEnd>>2] = $18; + HEAP32[$iMul>>2] = 1; + while(1) { + $19 = HEAP32[$pDocid>>2]|0; + $20 = HEAP32[$pEnd>>2]|0; + $21 = ($19>>>0)<($20>>>0); + if (!($21)) { + break; + } + $22 = HEAP32[$pDocid>>2]|0; + $23 = (_sqlite3Fts3GetVarint($22,$iDelta)|0); + $24 = HEAP32[$pDocid>>2]|0; + $25 = (($24) + ($23)|0); + HEAP32[$pDocid>>2] = $25; + $26 = HEAP32[$iMul>>2]|0; + $27 = ($26|0)<(0); + $28 = $27 << 31 >> 31; + $29 = $iDelta; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = (($29) + 4)|0; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = (___muldi3(($26|0),($28|0),($31|0),($34|0))|0); + $36 = tempRet0; + $37 = $iDocid; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (($37) + 4)|0; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (_i64Add(($39|0),($42|0),($35|0),($36|0))|0); + $44 = tempRet0; + $45 = $iDocid; + $46 = $45; + HEAP32[$46>>2] = $43; + $47 = (($45) + 4)|0; + $48 = $47; + HEAP32[$48>>2] = $44; + $49 = HEAP32[$pDocid>>2]|0; + HEAP32[$pNext>>2] = $49; + _fts3PoslistCopy(0,$pDocid); + while(1) { + $50 = HEAP32[$pDocid>>2]|0; + $51 = HEAP32[$pEnd>>2]|0; + $52 = ($50>>>0)<($51>>>0); + if (!($52)) { + break; + } + $53 = HEAP32[$pDocid>>2]|0; + $54 = HEAP8[$53>>0]|0; + $55 = $54 << 24 >> 24; + $56 = ($55|0)==(0); + if (!($56)) { + break; + } + $57 = HEAP32[$pDocid>>2]|0; + $58 = (($57) + 1|0); + HEAP32[$pDocid>>2] = $58; + } + $59 = HEAP32[$0>>2]|0; + $60 = ($59|0)!=(0); + $61 = $60 ? -1 : 1; + HEAP32[$iMul>>2] = $61; + } + $62 = HEAP32[$pEnd>>2]|0; + $63 = HEAP32[$pNext>>2]|0; + $64 = $62; + $65 = $63; + $66 = (($64) - ($65))|0; + $67 = HEAP32[$5>>2]|0; + HEAP32[$67>>2] = $66; + $68 = HEAP32[$pNext>>2]|0; + $69 = HEAP32[$3>>2]|0; + HEAP32[$69>>2] = $68; + $70 = $iDocid; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = (($70) + 4)|0; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $76 = HEAP32[$4>>2]|0; + $77 = $76; + $78 = $77; + HEAP32[$78>>2] = $72; + $79 = (($77) + 4)|0; + $80 = $79; + HEAP32[$80>>2] = $75; + STACKTOP = sp;return; +} +function _fts3SegReaderIncrRead($pReader) { + $pReader = $pReader|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; + var $9 = 0, $nRead = 0, $rc = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $nRead = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $pReader; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 44|0); + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 48|0); + $6 = HEAP32[$5>>2]|0; + $7 = (($3) - ($6))|0; + $8 = ($7|0)<(4096); + if ($8) { + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 44|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 48|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($11) - ($14))|0; + $16 = $15; + } else { + $16 = 4096; + } + HEAP32[$nRead>>2] = $16; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 52|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 48|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 40|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + ($22)|0); + $27 = HEAP32[$nRead>>2]|0; + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 48|0); + $30 = HEAP32[$29>>2]|0; + $31 = (_sqlite3_blob_read($19,$26,$27,$30)|0); + HEAP32[$rc>>2] = $31; + $32 = HEAP32[$rc>>2]|0; + $33 = ($32|0)==(0); + if (!($33)) { + $60 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($60|0); + } + $34 = HEAP32[$nRead>>2]|0; + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 48|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + ($34))|0; + HEAP32[$36>>2] = $38; + $39 = HEAP32[$0>>2]|0; + $40 = (($39) + 48|0); + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$0>>2]|0; + $43 = (($42) + 40|0); + $44 = HEAP32[$43>>2]|0; + $45 = (($44) + ($41)|0); + dest=$45+0|0; stop=dest+20|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + $46 = HEAP32[$0>>2]|0; + $47 = (($46) + 48|0); + $48 = HEAP32[$47>>2]|0; + $49 = HEAP32[$0>>2]|0; + $50 = (($49) + 44|0); + $51 = HEAP32[$50>>2]|0; + $52 = ($48|0)==($51|0); + if (!($52)) { + $60 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($60|0); + } + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 52|0); + $55 = HEAP32[$54>>2]|0; + (_sqlite3_blob_close($55)|0); + $56 = HEAP32[$0>>2]|0; + $57 = (($56) + 52|0); + HEAP32[$57>>2] = 0; + $58 = HEAP32[$0>>2]|0; + $59 = (($58) + 48|0); + HEAP32[$59>>2] = 0; + $60 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($60|0); +} +function _fts3SegReaderRequire($pReader,$pFrom,$nByte) { + $pReader = $pReader|0; + $pFrom = $pFrom|0; + $nByte = $nByte|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$0>>2] = $pReader; + HEAP32[$1>>2] = $pFrom; + HEAP32[$2>>2] = $nByte; + HEAP32[$rc>>2] = 0; + while(1) { + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 52|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + label = 6; + break; + } + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)==(0); + if (!($8)) { + label = 6; + break; + } + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 40|0); + $12 = HEAP32[$11>>2]|0; + $13 = $9; + $14 = $12; + $15 = (($13) - ($14))|0; + $16 = HEAP32[$2>>2]|0; + $17 = (($15) + ($16))|0; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 48|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($17|0)>($20|0); + if (!($21)) { + label = 6; + break; + } + $22 = HEAP32[$0>>2]|0; + $23 = (_fts3SegReaderIncrRead($22)|0); + HEAP32[$rc>>2] = $23; + } + if ((label|0) == 6) { + $24 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($24|0); + } + return 0|0; +} +function _fts3PoslistCopy($pp,$ppPoslist) { + $pp = $pp|0; + $ppPoslist = $ppPoslist|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, $n = 0; + var $p = 0, $pEnd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $pEnd = sp + 4|0; + $c = sp + 20|0; + $n = sp + 12|0; + $p = sp + 8|0; + HEAP32[$0>>2] = $pp; + HEAP32[$1>>2] = $ppPoslist; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$pEnd>>2] = $3; + HEAP8[$c>>0] = 0; + while(1) { + $4 = HEAP32[$pEnd>>2]|0; + $5 = HEAP8[$4>>0]|0; + $6 = $5 << 24 >> 24; + $7 = HEAP8[$c>>0]|0; + $8 = $7 << 24 >> 24; + $9 = $6 | $8; + $10 = ($9|0)!=(0); + $11 = HEAP32[$pEnd>>2]|0; + $12 = (($11) + 1|0); + HEAP32[$pEnd>>2] = $12; + if (!($10)) { + break; + } + $13 = HEAP8[$11>>0]|0; + $14 = $13 << 24 >> 24; + $15 = $14 & 128; + $16 = $15&255; + HEAP8[$c>>0] = $16; + } + $17 = HEAP32[$0>>2]|0; + $18 = ($17|0)!=(0|0); + if (!($18)) { + $36 = HEAP32[$pEnd>>2]|0; + $37 = HEAP32[$1>>2]|0; + HEAP32[$37>>2] = $36; + STACKTOP = sp;return; + } + $19 = HEAP32[$pEnd>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = $19; + $23 = $21; + $24 = (($22) - ($23))|0; + HEAP32[$n>>2] = $24; + $25 = HEAP32[$0>>2]|0; + $26 = HEAP32[$25>>2]|0; + HEAP32[$p>>2] = $26; + $27 = HEAP32[$p>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$n>>2]|0; + _memcpy(($27|0),($29|0),($30|0))|0; + $31 = HEAP32[$n>>2]|0; + $32 = HEAP32[$p>>2]|0; + $33 = (($32) + ($31)|0); + HEAP32[$p>>2] = $33; + $34 = HEAP32[$p>>2]|0; + $35 = HEAP32[$0>>2]|0; + HEAP32[$35>>2] = $34; + $36 = HEAP32[$pEnd>>2]|0; + $37 = HEAP32[$1>>2]|0; + HEAP32[$37>>2] = $36; + STACKTOP = sp;return; +} +function _fts3GetReverseVarint($pp,$pStart,$pVal) { + $pp = $pp|0; + $pStart = $pStart|0; + $pVal = $pVal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iVal = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp + 12|0; + $2 = sp + 8|0; + $iVal = sp; + $p = sp + 16|0; + HEAP32[$0>>2] = $pp; + HEAP32[$1>>2] = $pStart; + HEAP32[$2>>2] = $pVal; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + -2|0); + HEAP32[$p>>2] = $5; + while(1) { + $6 = HEAP32[$p>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = ($6>>>0)>=($7>>>0); + if (!($8)) { + break; + } + $9 = HEAP32[$p>>2]|0; + $10 = HEAP8[$9>>0]|0; + $11 = $10 << 24 >> 24; + $12 = $11 & 128; + $13 = ($12|0)!=(0); + if (!($13)) { + break; + } + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + -1|0); + HEAP32[$p>>2] = $15; + } + $16 = HEAP32[$p>>2]|0; + $17 = (($16) + 1|0); + HEAP32[$p>>2] = $17; + $18 = HEAP32[$p>>2]|0; + $19 = HEAP32[$0>>2]|0; + HEAP32[$19>>2] = $18; + $20 = HEAP32[$p>>2]|0; + (_sqlite3Fts3GetVarint($20,$iVal)|0); + $21 = $iVal; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (($21) + 4)|0; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = $27; + $29 = $28; + HEAP32[$29>>2] = $23; + $30 = (($28) + 4)|0; + $31 = $30; + HEAP32[$31>>2] = $26; + STACKTOP = sp;return; +} +function _fts3ReversePoslist($pStart,$ppPoslist) { + $pStart = $pStart|0; + $ppPoslist = $ppPoslist|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $c = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $p = sp + 4|0; + $c = sp + 12|0; + HEAP32[$0>>2] = $pStart; + HEAP32[$1>>2] = $ppPoslist; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + -2|0); + HEAP32[$p>>2] = $4; + HEAP8[$c>>0] = 0; + while(1) { + $5 = HEAP32[$p>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = ($5>>>0)>($6>>>0); + if (!($7)) { + break; + } + $8 = HEAP32[$p>>2]|0; + $9 = (($8) + -1|0); + HEAP32[$p>>2] = $9; + $10 = HEAP8[$8>>0]|0; + HEAP8[$c>>0] = $10; + $11 = $10 << 24 >> 24; + $12 = ($11|0)==(0); + if (!($12)) { + break; + } + } + while(1) { + $13 = HEAP32[$p>>2]|0; + $14 = HEAP32[$0>>2]|0; + $15 = ($13>>>0)>($14>>>0); + if ($15) { + $16 = HEAP32[$p>>2]|0; + $17 = HEAP8[$16>>0]|0; + $18 = $17 << 24 >> 24; + $19 = $18 & 128; + $20 = HEAP8[$c>>0]|0; + $21 = $20 << 24 >> 24; + $22 = $19 | $21; + $23 = ($22|0)!=(0); + $39 = $23; + } else { + $39 = 0; + } + $24 = HEAP32[$p>>2]|0; + if (!($39)) { + break; + } + $25 = (($24) + -1|0); + HEAP32[$p>>2] = $25; + $26 = HEAP8[$24>>0]|0; + HEAP8[$c>>0] = $26; + } + $27 = HEAP32[$0>>2]|0; + $28 = ($24>>>0)>($27>>>0); + if ($28) { + $29 = HEAP32[$p>>2]|0; + $30 = (($29) + 2|0); + HEAP32[$p>>2] = $30; + } + while(1) { + $31 = HEAP32[$p>>2]|0; + $32 = (($31) + 1|0); + HEAP32[$p>>2] = $32; + $33 = HEAP8[$31>>0]|0; + $34 = $33 << 24 >> 24; + $35 = $34 & 128; + $36 = ($35|0)!=(0); + if (!($36)) { + break; + } + } + $37 = HEAP32[$p>>2]|0; + $38 = HEAP32[$1>>2]|0; + HEAP32[$38>>2] = $37; + STACKTOP = sp;return; +} +function _sqlite3Fts3ReadBlock($p,$0,$1,$paBlob,$pnBlob,$pnLoad) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + $paBlob = $paBlob|0; + $pnBlob = $pnBlob|0; + $pnLoad = $pnLoad|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $aByte = 0, $nByte = 0, $rc = 0, $vararg_buffer = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp + 8|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $4 = sp; + $5 = sp + 28|0; + $6 = sp + 40|0; + $7 = sp + 16|0; + $rc = sp + 12|0; + $nByte = sp + 20|0; + $aByte = sp + 24|0; + HEAP32[$3>>2] = $p; + $8 = $4; + $9 = $8; + HEAP32[$9>>2] = $0; + $10 = (($8) + 4)|0; + $11 = $10; + HEAP32[$11>>2] = $1; + HEAP32[$5>>2] = $paBlob; + HEAP32[$6>>2] = $pnBlob; + HEAP32[$7>>2] = $pnLoad; + $12 = HEAP32[$3>>2]|0; + $13 = (($12) + 244|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)!=(0|0); + $16 = HEAP32[$3>>2]|0; + if ($15) { + $17 = (($16) + 244|0); + $18 = HEAP32[$17>>2]|0; + $19 = $4; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (($19) + 4)|0; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (_sqlite3_blob_reopen($18,$21,$24)|0); + HEAP32[$rc>>2] = $25; + } else { + $26 = (($16) + 240|0); + $27 = HEAP32[$26>>2]|0; + $28 = (0|0)==($27|0); + if ($28) { + $29 = HEAP32[$3>>2]|0; + $30 = (($29) + 20|0); + $31 = HEAP32[$30>>2]|0; + HEAP32[$vararg_buffer>>2] = $31; + $32 = (_sqlite3_mprintf(6904,$vararg_buffer)|0); + $33 = HEAP32[$3>>2]|0; + $34 = (($33) + 240|0); + HEAP32[$34>>2] = $32; + $35 = HEAP32[$3>>2]|0; + $36 = (($35) + 240|0); + $37 = HEAP32[$36>>2]|0; + $38 = (0|0)==($37|0); + if ($38) { + HEAP32[$2>>2] = 7; + $93 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($93|0); + } + } + $39 = HEAP32[$3>>2]|0; + $40 = (($39) + 12|0); + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$3>>2]|0; + $43 = (($42) + 16|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$3>>2]|0; + $46 = (($45) + 240|0); + $47 = HEAP32[$46>>2]|0; + $48 = $4; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = (($48) + 4)|0; + $52 = $51; + $53 = HEAP32[$52>>2]|0; + $54 = HEAP32[$3>>2]|0; + $55 = (($54) + 244|0); + $56 = (_sqlite3_blob_open($41,$44,$47,6920,$50,$53,0,$55)|0); + HEAP32[$rc>>2] = $56; + } + $57 = HEAP32[$rc>>2]|0; + $58 = ($57|0)==(0); + if ($58) { + $59 = HEAP32[$3>>2]|0; + $60 = (($59) + 244|0); + $61 = HEAP32[$60>>2]|0; + $62 = (_sqlite3_blob_bytes($61)|0); + HEAP32[$nByte>>2] = $62; + $63 = HEAP32[$nByte>>2]|0; + $64 = HEAP32[$6>>2]|0; + HEAP32[$64>>2] = $63; + $65 = HEAP32[$5>>2]|0; + $66 = ($65|0)!=(0|0); + if ($66) { + $67 = HEAP32[$nByte>>2]|0; + $68 = (($67) + 20)|0; + $69 = (_sqlite3_malloc($68)|0); + HEAP32[$aByte>>2] = $69; + $70 = HEAP32[$aByte>>2]|0; + $71 = ($70|0)!=(0|0); + if ($71) { + $72 = HEAP32[$7>>2]|0; + $73 = ($72|0)!=(0|0); + if ($73) { + $74 = HEAP32[$nByte>>2]|0; + $75 = ($74|0)>(16384); + if ($75) { + HEAP32[$nByte>>2] = 4096; + $76 = HEAP32[$nByte>>2]|0; + $77 = HEAP32[$7>>2]|0; + HEAP32[$77>>2] = $76; + } + } + $78 = HEAP32[$3>>2]|0; + $79 = (($78) + 244|0); + $80 = HEAP32[$79>>2]|0; + $81 = HEAP32[$aByte>>2]|0; + $82 = HEAP32[$nByte>>2]|0; + $83 = (_sqlite3_blob_read($80,$81,$82,0)|0); + HEAP32[$rc>>2] = $83; + $84 = HEAP32[$nByte>>2]|0; + $85 = HEAP32[$aByte>>2]|0; + $86 = (($85) + ($84)|0); + dest=$86+0|0; stop=dest+20|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + $87 = HEAP32[$rc>>2]|0; + $88 = ($87|0)!=(0); + if ($88) { + $89 = HEAP32[$aByte>>2]|0; + _sqlite3_free($89); + HEAP32[$aByte>>2] = 0; + } + } else { + HEAP32[$rc>>2] = 7; + } + $90 = HEAP32[$aByte>>2]|0; + $91 = HEAP32[$5>>2]|0; + HEAP32[$91>>2] = $90; + } + } + $92 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $92; + $93 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($93|0); +} +function _fts3SegReaderStart($p,$pCsr,$zTerm,$nTerm) { + $p = $p|0; + $pCsr = $pCsr|0; + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $nSeg = 0, $pSeg = 0, $rc = 0, $res = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 20|0; + $i = sp + 16|0; + $nSeg = sp + 8|0; + $res = sp + 4|0; + $pSeg = sp; + $rc = sp + 12|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pCsr; + HEAP32[$3>>2] = $zTerm; + HEAP32[$4>>2] = $nTerm; + $5 = HEAP32[$2>>2]|0; + $6 = (($5) + 4|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$nSeg>>2] = $7; + HEAP32[$i>>2] = 0; + L1: while(1) { + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 28|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)==(0); + if (!($11)) { + label = 13; + break; + } + $12 = HEAP32[$i>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($12|0)<($15|0); + if (!($16)) { + label = 13; + break; + } + HEAP32[$res>>2] = 0; + $17 = HEAP32[$i>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + ($17<<2)|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$pSeg>>2] = $21; + while(1) { + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$pSeg>>2]|0; + $24 = (_fts3SegReaderNext($22,$23,0)|0); + HEAP32[$rc>>2] = $24; + $25 = HEAP32[$rc>>2]|0; + $26 = ($25|0)!=(0); + if ($26) { + label = 6; + break L1; + } + $28 = HEAP32[$3>>2]|0; + $29 = ($28|0)!=(0|0); + if (!($29)) { + break; + } + $30 = HEAP32[$pSeg>>2]|0; + $31 = HEAP32[$3>>2]|0; + $32 = HEAP32[$4>>2]|0; + $33 = (_fts3SegReaderTermCmp($30,$31,$32)|0); + HEAP32[$res>>2] = $33; + $34 = ($33|0)<(0); + if (!($34)) { + break; + } + } + $35 = HEAP32[$pSeg>>2]|0; + $36 = (($35) + 4|0); + $37 = HEAP8[$36>>0]|0; + $38 = $37&255; + $39 = ($38|0)!=(0); + if ($39) { + $40 = HEAP32[$res>>2]|0; + $41 = ($40|0)!=(0); + if ($41) { + $42 = HEAP32[$pSeg>>2]|0; + _fts3SegReaderSetEof($42); + } + } + $43 = HEAP32[$i>>2]|0; + $44 = (($43) + 1)|0; + HEAP32[$i>>2] = $44; + } + if ((label|0) == 6) { + $27 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $27; + $49 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($49|0); + } + else if ((label|0) == 13) { + $45 = HEAP32[$2>>2]|0; + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$nSeg>>2]|0; + $48 = HEAP32[$nSeg>>2]|0; + _fts3SegReaderSort($46,$47,$48,51); + HEAP32[$0>>2] = 0; + $49 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($49|0); + } + return 0|0; +} +function _fts3SegReaderTermCmp($pSeg,$zTerm,$nTerm) { + $pSeg = $pSeg|0; + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $res = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $res = sp + 8|0; + HEAP32[$0>>2] = $pSeg; + HEAP32[$1>>2] = $zTerm; + HEAP32[$2>>2] = $nTerm; + HEAP32[$res>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 40|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $29 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($29|0); + } + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 60|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = ($9|0)>($10|0); + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 64|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$1>>2]|0; + if ($11) { + $16 = HEAP32[$2>>2]|0; + $17 = (_memcmp($14,$15,$16)|0); + HEAP32[$res>>2] = $17; + } else { + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 60|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_memcmp($14,$15,$20)|0); + HEAP32[$res>>2] = $21; + } + $22 = HEAP32[$res>>2]|0; + $23 = ($22|0)==(0); + if (!($23)) { + $29 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($29|0); + } + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 60|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = (($26) - ($27))|0; + HEAP32[$res>>2] = $28; + $29 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($29|0); +} +function _fts3SegReaderCursor($p,$iLangid,$iIndex,$iLevel,$zTerm,$nTerm,$isPrefix,$isScan,$pCsr) { + $p = $p|0; + $iLangid = $iLangid|0; + $iIndex = $iIndex|0; + $iLevel = $iLevel|0; + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + $isPrefix = $isPrefix|0; + $isScan = $isScan|0; + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iEndBlock = 0, $iLeavesEndBlock = 0, $iLeavesEndBlock$ = 0, $iStartBlock = 0, $nRoot = 0, $pSeg = 0, $pSeg1 = 0, $pStmt = 0, $pi = 0, $rc = 0, $rc2 = 0, $zRoot = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 88|0; + $1 = sp + 84|0; + $2 = sp + 80|0; + $3 = sp + 76|0; + $4 = sp + 72|0; + $5 = sp + 68|0; + $6 = sp + 64|0; + $7 = sp + 60|0; + $8 = sp + 56|0; + $rc = sp + 52|0; + $pStmt = sp + 48|0; + $rc2 = sp + 24|0; + $pSeg = sp + 32|0; + $pSeg1 = sp + 28|0; + $iStartBlock = sp; + $iLeavesEndBlock = sp + 16|0; + $iEndBlock = sp + 8|0; + $nRoot = sp + 36|0; + $zRoot = sp + 40|0; + $pi = sp + 44|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iLangid; + HEAP32[$2>>2] = $iIndex; + HEAP32[$3>>2] = $iLevel; + HEAP32[$4>>2] = $zTerm; + HEAP32[$5>>2] = $nTerm; + HEAP32[$6>>2] = $isPrefix; + HEAP32[$7>>2] = $isScan; + HEAP32[$8>>2] = $pCsr; + HEAP32[$rc>>2] = 0; + HEAP32[$pStmt>>2] = 0; + $9 = HEAP32[$3>>2]|0; + $10 = ($9|0)<(0); + if ($10) { + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 252|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(0|0); + if ($14) { + HEAP32[$pSeg>>2] = 0; + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$2>>2]|0; + $17 = HEAP32[$4>>2]|0; + $18 = HEAP32[$5>>2]|0; + $19 = HEAP32[$6>>2]|0; + $20 = (_sqlite3Fts3SegReaderPending($15,$16,$17,$18,$19,$pSeg)|0); + HEAP32[$rc>>2] = $20; + $21 = HEAP32[$rc>>2]|0; + $22 = ($21|0)==(0); + if ($22) { + $23 = HEAP32[$pSeg>>2]|0; + $24 = ($23|0)!=(0|0); + if ($24) { + $25 = HEAP32[$8>>2]|0; + $26 = HEAP32[$pSeg>>2]|0; + $27 = (_fts3SegReaderCursorAppend($25,$26)|0); + HEAP32[$rc>>2] = $27; + } + } + } + } + $28 = HEAP32[$3>>2]|0; + $29 = ($28|0)!=(-1); + L7: do { + if ($29) { + $30 = HEAP32[$rc>>2]|0; + $31 = ($30|0)==(0); + if ($31) { + $32 = HEAP32[$0>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = HEAP32[$3>>2]|0; + $36 = (_sqlite3Fts3AllSegdirs($32,$33,$34,$35,$pStmt)|0); + HEAP32[$rc>>2] = $36; + } + while(1) { + $37 = HEAP32[$rc>>2]|0; + $38 = ($37|0)==(0); + if (!($38)) { + break L7; + } + $39 = HEAP32[$pStmt>>2]|0; + $40 = (_sqlite3_step($39)|0); + HEAP32[$rc>>2] = $40; + $41 = (100)==($40|0); + if (!($41)) { + break L7; + } + HEAP32[$pSeg1>>2] = 0; + $42 = HEAP32[$pStmt>>2]|0; + $43 = (_sqlite3_column_int64($42,1)|0); + $44 = tempRet0; + $45 = $iStartBlock; + $46 = $45; + HEAP32[$46>>2] = $43; + $47 = (($45) + 4)|0; + $48 = $47; + HEAP32[$48>>2] = $44; + $49 = HEAP32[$pStmt>>2]|0; + $50 = (_sqlite3_column_int64($49,2)|0); + $51 = tempRet0; + $52 = $iLeavesEndBlock; + $53 = $52; + HEAP32[$53>>2] = $50; + $54 = (($52) + 4)|0; + $55 = $54; + HEAP32[$55>>2] = $51; + $56 = HEAP32[$pStmt>>2]|0; + $57 = (_sqlite3_column_int64($56,3)|0); + $58 = tempRet0; + $59 = $iEndBlock; + $60 = $59; + HEAP32[$60>>2] = $57; + $61 = (($59) + 4)|0; + $62 = $61; + HEAP32[$62>>2] = $58; + $63 = HEAP32[$pStmt>>2]|0; + $64 = (_sqlite3_column_bytes($63,4)|0); + HEAP32[$nRoot>>2] = $64; + $65 = HEAP32[$pStmt>>2]|0; + $66 = (_sqlite3_column_blob($65,4)|0); + HEAP32[$zRoot>>2] = $66; + $67 = $iStartBlock; + $68 = $67; + $69 = HEAP32[$68>>2]|0; + $70 = (($67) + 4)|0; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = ($69|0)!=(0); + $74 = ($72|0)!=(0); + $75 = $73 | $74; + if ($75) { + $76 = HEAP32[$4>>2]|0; + $77 = ($76|0)!=(0|0); + if ($77) { + $78 = HEAP32[$6>>2]|0; + $79 = ($78|0)!=(0); + $iLeavesEndBlock$ = $79 ? $iLeavesEndBlock : 0; + HEAP32[$pi>>2] = $iLeavesEndBlock$; + $80 = HEAP32[$0>>2]|0; + $81 = HEAP32[$4>>2]|0; + $82 = HEAP32[$5>>2]|0; + $83 = HEAP32[$zRoot>>2]|0; + $84 = HEAP32[$nRoot>>2]|0; + $85 = HEAP32[$pi>>2]|0; + $86 = (_fts3SelectLeaf($80,$81,$82,$83,$84,$iStartBlock,$85)|0); + HEAP32[$rc>>2] = $86; + $87 = HEAP32[$rc>>2]|0; + $88 = ($87|0)!=(0); + if ($88) { + break L7; + } + $89 = HEAP32[$6>>2]|0; + $90 = ($89|0)==(0); + if ($90) { + $91 = HEAP32[$7>>2]|0; + $92 = ($91|0)==(0); + if ($92) { + $93 = $iStartBlock; + $94 = $93; + $95 = HEAP32[$94>>2]|0; + $96 = (($93) + 4)|0; + $97 = $96; + $98 = HEAP32[$97>>2]|0; + $99 = $iLeavesEndBlock; + $100 = $99; + HEAP32[$100>>2] = $95; + $101 = (($99) + 4)|0; + $102 = $101; + HEAP32[$102>>2] = $98; + } + } + } + } + $103 = HEAP32[$8>>2]|0; + $104 = (($103) + 4|0); + $105 = HEAP32[$104>>2]|0; + $106 = (($105) + 1)|0; + $107 = HEAP32[$6>>2]|0; + $108 = ($107|0)==(0); + if ($108) { + $109 = HEAP32[$7>>2]|0; + $110 = ($109|0)==(0); + $112 = $110; + } else { + $112 = 0; + } + $111 = $112&1; + $113 = $iStartBlock; + $114 = $113; + $115 = HEAP32[$114>>2]|0; + $116 = (($113) + 4)|0; + $117 = $116; + $118 = HEAP32[$117>>2]|0; + $119 = $iLeavesEndBlock; + $120 = $119; + $121 = HEAP32[$120>>2]|0; + $122 = (($119) + 4)|0; + $123 = $122; + $124 = HEAP32[$123>>2]|0; + $125 = $iEndBlock; + $126 = $125; + $127 = HEAP32[$126>>2]|0; + $128 = (($125) + 4)|0; + $129 = $128; + $130 = HEAP32[$129>>2]|0; + $131 = HEAP32[$zRoot>>2]|0; + $132 = HEAP32[$nRoot>>2]|0; + $133 = (_sqlite3Fts3SegReaderNew($106,$111,$115,$118,$121,$124,$127,$130,$131,$132,$pSeg1)|0); + HEAP32[$rc>>2] = $133; + $134 = HEAP32[$rc>>2]|0; + $135 = ($134|0)!=(0); + if ($135) { + break L7; + } + $136 = HEAP32[$8>>2]|0; + $137 = HEAP32[$pSeg1>>2]|0; + $138 = (_fts3SegReaderCursorAppend($136,$137)|0); + HEAP32[$rc>>2] = $138; + } + } + } while(0); + $139 = HEAP32[$pStmt>>2]|0; + $140 = (_sqlite3_reset($139)|0); + HEAP32[$rc2>>2] = $140; + $141 = HEAP32[$rc>>2]|0; + $142 = ($141|0)==(101); + if (!($142)) { + $144 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($144|0); + } + $143 = HEAP32[$rc2>>2]|0; + HEAP32[$rc>>2] = $143; + $144 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($144|0); +} +function _sqlite3Fts3SegReaderPending($p,$iIndex,$zTerm,$nTerm,$bPrefix,$ppReader) { + $p = $p|0; + $iIndex = $iIndex|0; + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + $bPrefix = $bPrefix|0; + $ppReader = $ppReader|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $aElem = 0, $aElem2 = 0, $nAlloc = 0, $nByte = 0, $nElem = 0, $nKey = 0, $pE = 0; + var $pHash = 0, $pReader = 0, $rc = 0, $zKey = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 64|0; + $1 = sp + 60|0; + $2 = sp + 56|0; + $3 = sp + 52|0; + $4 = sp + 48|0; + $5 = sp + 44|0; + $pReader = sp + 40|0; + $pE = sp + 36|0; + $aElem = sp + 32|0; + $nElem = sp + 24|0; + $rc = sp + 20|0; + $pHash = sp + 16|0; + $nAlloc = sp + 12|0; + $zKey = sp + 8|0; + $nKey = sp + 4|0; + $aElem2 = sp; + $nByte = sp + 28|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iIndex; + HEAP32[$2>>2] = $zTerm; + HEAP32[$3>>2] = $nTerm; + HEAP32[$4>>2] = $bPrefix; + HEAP32[$5>>2] = $ppReader; + HEAP32[$pReader>>2] = 0; + HEAP32[$aElem>>2] = 0; + HEAP32[$nElem>>2] = 0; + HEAP32[$rc>>2] = 0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 252|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + (($6*24)|0)|0); + $11 = (($10) + 4|0); + HEAP32[$pHash>>2] = $11; + $12 = HEAP32[$4>>2]|0; + $13 = ($12|0)!=(0); + if ($13) { + HEAP32[$nAlloc>>2] = 0; + $14 = HEAP32[$pHash>>2]|0; + $15 = (($14) + 8|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$pE>>2] = $16; + while(1) { + $17 = HEAP32[$pE>>2]|0; + $18 = ($17|0)!=(0|0); + if (!($18)) { + break; + } + $19 = HEAP32[$pE>>2]|0; + $20 = (($19) + 12|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$zKey>>2] = $21; + $22 = HEAP32[$pE>>2]|0; + $23 = (($22) + 16|0); + $24 = HEAP32[$23>>2]|0; + HEAP32[$nKey>>2] = $24; + $25 = HEAP32[$3>>2]|0; + $26 = ($25|0)==(0); + if ($26) { + label = 7; + } else { + $27 = HEAP32[$nKey>>2]|0; + $28 = HEAP32[$3>>2]|0; + $29 = ($27|0)>=($28|0); + if ($29) { + $30 = HEAP32[$zKey>>2]|0; + $31 = HEAP32[$2>>2]|0; + $32 = HEAP32[$3>>2]|0; + $33 = (_memcmp($30,$31,$32)|0); + $34 = (0)==($33|0); + if ($34) { + label = 7; + } + } + } + if ((label|0) == 7) { + label = 0; + $35 = HEAP32[$nElem>>2]|0; + $36 = HEAP32[$nAlloc>>2]|0; + $37 = ($35|0)==($36|0); + if ($37) { + $38 = HEAP32[$nAlloc>>2]|0; + $39 = (($38) + 16)|0; + HEAP32[$nAlloc>>2] = $39; + $40 = HEAP32[$aElem>>2]|0; + $41 = HEAP32[$nAlloc>>2]|0; + $42 = $41<<2; + $43 = (_sqlite3_realloc($40,$42)|0); + HEAP32[$aElem2>>2] = $43; + $44 = HEAP32[$aElem2>>2]|0; + $45 = ($44|0)!=(0|0); + if (!($45)) { + label = 9; + break; + } + $46 = HEAP32[$aElem2>>2]|0; + HEAP32[$aElem>>2] = $46; + } + $47 = HEAP32[$pE>>2]|0; + $48 = HEAP32[$nElem>>2]|0; + $49 = (($48) + 1)|0; + HEAP32[$nElem>>2] = $49; + $50 = HEAP32[$aElem>>2]|0; + $51 = (($50) + ($48<<2)|0); + HEAP32[$51>>2] = $47; + } + $52 = HEAP32[$pE>>2]|0; + $53 = HEAP32[$52>>2]|0; + HEAP32[$pE>>2] = $53; + } + if ((label|0) == 9) { + HEAP32[$rc>>2] = 7; + HEAP32[$nElem>>2] = 0; + } + $54 = HEAP32[$nElem>>2]|0; + $55 = ($54|0)>(1); + if ($55) { + $56 = HEAP32[$aElem>>2]|0; + $57 = HEAP32[$nElem>>2]|0; + _qsort($56,$57,4,52); + } + } else { + $58 = HEAP32[$pHash>>2]|0; + $59 = HEAP32[$2>>2]|0; + $60 = HEAP32[$3>>2]|0; + $61 = (_sqlite3Fts3HashFindElem($58,$59,$60)|0); + HEAP32[$pE>>2] = $61; + $62 = HEAP32[$pE>>2]|0; + $63 = ($62|0)!=(0|0); + if ($63) { + HEAP32[$aElem>>2] = $pE; + HEAP32[$nElem>>2] = 1; + } + } + $64 = HEAP32[$nElem>>2]|0; + $65 = ($64|0)>(0); + do { + if ($65) { + $66 = HEAP32[$nElem>>2]|0; + $67 = (($66) + 1)|0; + $68 = $67<<2; + $69 = (96 + ($68))|0; + HEAP32[$nByte>>2] = $69; + $70 = HEAP32[$nByte>>2]|0; + $71 = (_sqlite3_malloc($70)|0); + HEAP32[$pReader>>2] = $71; + $72 = HEAP32[$pReader>>2]|0; + $73 = ($72|0)!=(0|0); + if ($73) { + $74 = HEAP32[$pReader>>2]|0; + $75 = HEAP32[$nByte>>2]|0; + _memset(($74|0),0,($75|0))|0; + $76 = HEAP32[$pReader>>2]|0; + HEAP32[$76>>2] = 2147483647; + $77 = HEAP32[$pReader>>2]|0; + $78 = (($77) + 96|0); + $79 = HEAP32[$pReader>>2]|0; + $80 = (($79) + 56|0); + HEAP32[$80>>2] = $78; + $81 = HEAP32[$pReader>>2]|0; + $82 = (($81) + 56|0); + $83 = HEAP32[$82>>2]|0; + $84 = HEAP32[$aElem>>2]|0; + $85 = HEAP32[$nElem>>2]|0; + $86 = $85<<2; + _memcpy(($83|0),($84|0),($86|0))|0; + break; + } else { + HEAP32[$rc>>2] = 7; + break; + } + } + } while(0); + $87 = HEAP32[$4>>2]|0; + $88 = ($87|0)!=(0); + if (!($88)) { + $90 = HEAP32[$pReader>>2]|0; + $91 = HEAP32[$5>>2]|0; + HEAP32[$91>>2] = $90; + $92 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($92|0); + } + $89 = HEAP32[$aElem>>2]|0; + _sqlite3_free($89); + $90 = HEAP32[$pReader>>2]|0; + $91 = HEAP32[$5>>2]|0; + HEAP32[$91>>2] = $90; + $92 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($92|0); +} +function _fts3SegReaderCursorAppend($pCsr,$pNew) { + $pCsr = $pCsr|0; + $pNew = $pNew|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $apNew = 0, $nByte = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $apNew = sp + 8|0; + $nByte = sp + 12|0; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $pNew; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = (($5|0) % 16)&-1; + $7 = ($6|0)==(0); + do { + if ($7) { + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + 16)|0; + $12 = $11<<2; + HEAP32[$nByte>>2] = $12; + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$nByte>>2]|0; + $16 = (_sqlite3_realloc($14,$15)|0); + HEAP32[$apNew>>2] = $16; + $17 = HEAP32[$apNew>>2]|0; + $18 = ($17|0)!=(0|0); + if ($18) { + $20 = HEAP32[$apNew>>2]|0; + $21 = HEAP32[$1>>2]|0; + HEAP32[$21>>2] = $20; + break; + } + $19 = HEAP32[$2>>2]|0; + _sqlite3Fts3SegReaderFree($19); + HEAP32[$0>>2] = 7; + $30 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($30|0); + } + } while(0); + $22 = HEAP32[$2>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + 1)|0; + HEAP32[$24>>2] = $26; + $27 = HEAP32[$1>>2]|0; + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + ($25<<2)|0); + HEAP32[$29>>2] = $22; + HEAP32[$0>>2] = 0; + $30 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($30|0); +} +function _sqlite3Fts3AllSegdirs($p,$iLangid,$iIndex,$iLevel,$ppStmt) { + $p = $p|0; + $iLangid = $iLangid|0; + $iIndex = $iIndex|0; + $iLevel = $iLevel|0; + $ppStmt = $ppStmt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $rc = sp + 16|0; + $pStmt = sp + 20|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iLangid; + HEAP32[$2>>2] = $iIndex; + HEAP32[$3>>2] = $iLevel; + HEAP32[$4>>2] = $ppStmt; + HEAP32[$pStmt>>2] = 0; + $5 = HEAP32[$3>>2]|0; + $6 = ($5|0)<(0); + $7 = HEAP32[$0>>2]|0; + if ($6) { + $8 = (_fts3SqlStmt($7,13,$pStmt,0)|0); + HEAP32[$rc>>2] = $8; + $9 = HEAP32[$rc>>2]|0; + $10 = ($9|0)==(0); + if ($10) { + $11 = HEAP32[$pStmt>>2]|0; + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (_getAbsoluteLevel($12,$13,$14,0)|0); + $16 = tempRet0; + (_sqlite3_bind_int64($11,1,$15,$16)|0); + $17 = HEAP32[$pStmt>>2]|0; + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = HEAP32[$2>>2]|0; + $21 = (_getAbsoluteLevel($18,$19,$20,1023)|0); + $22 = tempRet0; + (_sqlite3_bind_int64($17,2,$21,$22)|0); + } + } else { + $23 = (_fts3SqlStmt($7,12,$pStmt,0)|0); + HEAP32[$rc>>2] = $23; + $24 = HEAP32[$rc>>2]|0; + $25 = ($24|0)==(0); + if ($25) { + $26 = HEAP32[$pStmt>>2]|0; + $27 = HEAP32[$0>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = HEAP32[$2>>2]|0; + $30 = HEAP32[$3>>2]|0; + $31 = (_getAbsoluteLevel($27,$28,$29,$30)|0); + $32 = tempRet0; + (_sqlite3_bind_int64($26,1,$31,$32)|0); + } + } + $33 = HEAP32[$pStmt>>2]|0; + $34 = HEAP32[$4>>2]|0; + HEAP32[$34>>2] = $33; + $35 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($35|0); +} +function _fts3SelectLeaf($p,$zTerm,$nTerm,$zNode,$nNode,$piLeaf,$piLeaf2) { + $p = $p|0; + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + $zNode = $zNode|0; + $nNode = $nNode|0; + $piLeaf = $piLeaf|0; + $piLeaf2 = $piLeaf2|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $iHeight = 0, $nBlob = 0, $rc = 0, $zBlob = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $5 = sp + 20|0; + $6 = sp + 12|0; + $rc = sp + 8|0; + $iHeight = sp + 4|0; + $zBlob = sp; + $nBlob = sp + 16|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $zTerm; + HEAP32[$2>>2] = $nTerm; + HEAP32[$3>>2] = $zNode; + HEAP32[$4>>2] = $nNode; + HEAP32[$5>>2] = $piLeaf; + HEAP32[$6>>2] = $piLeaf2; + $7 = HEAP32[$3>>2]|0; + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = $9 & 128; + $11 = ($10|0)!=(0); + $12 = HEAP32[$3>>2]|0; + if ($11) { + (_sqlite3Fts3GetVarint32($12,$iHeight)|0); + } else { + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + HEAP32[$iHeight>>2] = $14; + } + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$2>>2]|0; + $17 = HEAP32[$3>>2]|0; + $18 = HEAP32[$4>>2]|0; + $19 = HEAP32[$5>>2]|0; + $20 = HEAP32[$6>>2]|0; + $21 = (_fts3ScanInteriorNode($15,$16,$17,$18,$19,$20)|0); + HEAP32[$rc>>2] = $21; + $22 = HEAP32[$rc>>2]|0; + $23 = ($22|0)==(0); + if (!($23)) { + $99 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($99|0); + } + $24 = HEAP32[$iHeight>>2]|0; + $25 = ($24|0)>(1); + if (!($25)) { + $99 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($99|0); + } + HEAP32[$zBlob>>2] = 0; + $26 = HEAP32[$5>>2]|0; + $27 = ($26|0)!=(0|0); + if ($27) { + $28 = HEAP32[$6>>2]|0; + $29 = ($28|0)!=(0|0); + if ($29) { + $30 = HEAP32[$5>>2]|0; + $31 = $30; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$6>>2]|0; + $38 = $37; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = (($38) + 4)|0; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = ($33|0)!=($40|0); + $45 = ($36|0)!=($43|0); + $46 = $44 | $45; + if ($46) { + $47 = HEAP32[$0>>2]|0; + $48 = HEAP32[$5>>2]|0; + $49 = $48; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = (($49) + 4)|0; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = (_sqlite3Fts3ReadBlock($47,$51,$54,$zBlob,$nBlob,0)|0); + HEAP32[$rc>>2] = $55; + $56 = HEAP32[$rc>>2]|0; + $57 = ($56|0)==(0); + if ($57) { + $58 = HEAP32[$0>>2]|0; + $59 = HEAP32[$1>>2]|0; + $60 = HEAP32[$2>>2]|0; + $61 = HEAP32[$zBlob>>2]|0; + $62 = HEAP32[$nBlob>>2]|0; + $63 = HEAP32[$5>>2]|0; + $64 = (_fts3SelectLeaf($58,$59,$60,$61,$62,$63,0)|0); + HEAP32[$rc>>2] = $64; + } + $65 = HEAP32[$zBlob>>2]|0; + _sqlite3_free($65); + HEAP32[$5>>2] = 0; + HEAP32[$zBlob>>2] = 0; + } + } + } + $66 = HEAP32[$rc>>2]|0; + $67 = ($66|0)==(0); + if ($67) { + $68 = HEAP32[$0>>2]|0; + $69 = HEAP32[$5>>2]|0; + $70 = ($69|0)!=(0|0); + if ($70) { + $71 = HEAP32[$5>>2]|0; + $72 = $71; + $73 = $72; + $74 = HEAP32[$73>>2]|0; + $75 = (($72) + 4)|0; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $85 = $74;$86 = $77; + } else { + $78 = HEAP32[$6>>2]|0; + $79 = $78; + $80 = $79; + $81 = HEAP32[$80>>2]|0; + $82 = (($79) + 4)|0; + $83 = $82; + $84 = HEAP32[$83>>2]|0; + $85 = $81;$86 = $84; + } + $87 = (_sqlite3Fts3ReadBlock($68,$85,$86,$zBlob,$nBlob,0)|0); + HEAP32[$rc>>2] = $87; + } + $88 = HEAP32[$rc>>2]|0; + $89 = ($88|0)==(0); + if ($89) { + $90 = HEAP32[$0>>2]|0; + $91 = HEAP32[$1>>2]|0; + $92 = HEAP32[$2>>2]|0; + $93 = HEAP32[$zBlob>>2]|0; + $94 = HEAP32[$nBlob>>2]|0; + $95 = HEAP32[$5>>2]|0; + $96 = HEAP32[$6>>2]|0; + $97 = (_fts3SelectLeaf($90,$91,$92,$93,$94,$95,$96)|0); + HEAP32[$rc>>2] = $97; + } + $98 = HEAP32[$zBlob>>2]|0; + _sqlite3_free($98); + $99 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($99|0); +} +function _sqlite3Fts3SegReaderNew($iAge,$bLookup,$0,$1,$2,$3,$4,$5,$zRoot,$nRoot,$ppReader) { + $iAge = $iAge|0; + $bLookup = $bLookup|0; + $0 = $0|0; + $1 = $1|0; + $2 = $2|0; + $3 = $3|0; + $4 = $4|0; + $5 = $5|0; + $zRoot = $zRoot|0; + $nRoot = $nRoot|0; + $ppReader = $ppReader|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $nExtra = 0, $pReader = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $6 = sp + 52|0; + $7 = sp + 48|0; + $8 = sp + 44|0; + $9 = sp + 8|0; + $10 = sp; + $11 = sp + 16|0; + $12 = sp + 32|0; + $13 = sp + 36|0; + $14 = sp + 24|0; + $pReader = sp + 40|0; + $nExtra = sp + 28|0; + HEAP32[$7>>2] = $iAge; + HEAP32[$8>>2] = $bLookup; + $15 = $9; + $16 = $15; + HEAP32[$16>>2] = $0; + $17 = (($15) + 4)|0; + $18 = $17; + HEAP32[$18>>2] = $1; + $19 = $10; + $20 = $19; + HEAP32[$20>>2] = $2; + $21 = (($19) + 4)|0; + $22 = $21; + HEAP32[$22>>2] = $3; + $23 = $11; + $24 = $23; + HEAP32[$24>>2] = $4; + $25 = (($23) + 4)|0; + $26 = $25; + HEAP32[$26>>2] = $5; + HEAP32[$12>>2] = $zRoot; + HEAP32[$13>>2] = $nRoot; + HEAP32[$14>>2] = $ppReader; + HEAP32[$nExtra>>2] = 0; + $27 = $9; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (($27) + 4)|0; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = ($29|0)==(0); + $34 = ($32|0)==(0); + $35 = $33 & $34; + if ($35) { + $36 = HEAP32[$13>>2]|0; + $37 = (($36) + 20)|0; + HEAP32[$nExtra>>2] = $37; + } + $38 = HEAP32[$nExtra>>2]|0; + $39 = (96 + ($38))|0; + $40 = (_sqlite3_malloc($39)|0); + HEAP32[$pReader>>2] = $40; + $41 = HEAP32[$pReader>>2]|0; + $42 = ($41|0)!=(0|0); + if (!($42)) { + HEAP32[$6>>2] = 7; + $125 = HEAP32[$6>>2]|0; + STACKTOP = sp;return ($125|0); + } + $43 = HEAP32[$pReader>>2]|0; + dest=$43+0|0; stop=dest+96|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $44 = HEAP32[$7>>2]|0; + $45 = HEAP32[$pReader>>2]|0; + HEAP32[$45>>2] = $44; + $46 = HEAP32[$8>>2]|0; + $47 = ($46|0)!=(0); + $48 = $47&1; + $49 = $48&255; + $50 = HEAP32[$pReader>>2]|0; + $51 = (($50) + 4|0); + HEAP8[$51>>0] = $49; + $52 = $9; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = (($52) + 4)|0; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = HEAP32[$pReader>>2]|0; + $59 = (($58) + 8|0); + $60 = $59; + $61 = $60; + HEAP32[$61>>2] = $54; + $62 = (($60) + 4)|0; + $63 = $62; + HEAP32[$63>>2] = $57; + $64 = $10; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = (($64) + 4)|0; + $68 = $67; + $69 = HEAP32[$68>>2]|0; + $70 = HEAP32[$pReader>>2]|0; + $71 = (($70) + 16|0); + $72 = $71; + $73 = $72; + HEAP32[$73>>2] = $66; + $74 = (($72) + 4)|0; + $75 = $74; + HEAP32[$75>>2] = $69; + $76 = $11; + $77 = $76; + $78 = HEAP32[$77>>2]|0; + $79 = (($76) + 4)|0; + $80 = $79; + $81 = HEAP32[$80>>2]|0; + $82 = HEAP32[$pReader>>2]|0; + $83 = (($82) + 24|0); + $84 = $83; + $85 = $84; + HEAP32[$85>>2] = $78; + $86 = (($84) + 4)|0; + $87 = $86; + HEAP32[$87>>2] = $81; + $88 = HEAP32[$nExtra>>2]|0; + $89 = ($88|0)!=(0); + if ($89) { + $90 = HEAP32[$pReader>>2]|0; + $91 = (($90) + 96|0); + $92 = HEAP32[$pReader>>2]|0; + $93 = (($92) + 40|0); + HEAP32[$93>>2] = $91; + $94 = HEAP32[$pReader>>2]|0; + $95 = (($94) + 5|0); + HEAP8[$95>>0] = 1; + $96 = HEAP32[$13>>2]|0; + $97 = HEAP32[$pReader>>2]|0; + $98 = (($97) + 44|0); + HEAP32[$98>>2] = $96; + $99 = HEAP32[$pReader>>2]|0; + $100 = (($99) + 40|0); + $101 = HEAP32[$100>>2]|0; + $102 = HEAP32[$12>>2]|0; + $103 = HEAP32[$13>>2]|0; + _memcpy(($101|0),($102|0),($103|0))|0; + $104 = HEAP32[$13>>2]|0; + $105 = HEAP32[$pReader>>2]|0; + $106 = (($105) + 40|0); + $107 = HEAP32[$106>>2]|0; + $108 = (($107) + ($104)|0); + dest=$108+0|0; stop=dest+20|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + } else { + $109 = $9; + $110 = $109; + $111 = HEAP32[$110>>2]|0; + $112 = (($109) + 4)|0; + $113 = $112; + $114 = HEAP32[$113>>2]|0; + $115 = (_i64Subtract(($111|0),($114|0),1,0)|0); + $116 = tempRet0; + $117 = HEAP32[$pReader>>2]|0; + $118 = (($117) + 32|0); + $119 = $118; + $120 = $119; + HEAP32[$120>>2] = $115; + $121 = (($119) + 4)|0; + $122 = $121; + HEAP32[$122>>2] = $116; + } + $123 = HEAP32[$pReader>>2]|0; + $124 = HEAP32[$14>>2]|0; + HEAP32[$124>>2] = $123; + HEAP32[$6>>2] = 0; + $125 = HEAP32[$6>>2]|0; + STACKTOP = sp;return ($125|0); +} +function _fts3ScanInteriorNode($zTerm,$nTerm,$zNode,$nNode,$piFirst,$piLast) { + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + $zNode = $zNode|0; + $nNode = $nNode|0; + $piFirst = $piFirst|0; + $piLast = $piLast|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cmp = 0, $iChild = 0, $isFirstTerm = 0, $nAlloc = 0, $nBuffer = 0; + var $nPrefix = 0, $nSuffix = 0, $rc = 0, $zBuffer = 0, $zCsr = 0, $zEnd = 0, $zNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 76|0; + $1 = sp + 72|0; + $2 = sp + 68|0; + $3 = sp + 64|0; + $4 = sp + 60|0; + $5 = sp + 56|0; + $6 = sp + 52|0; + $rc = sp + 48|0; + $zCsr = sp + 44|0; + $zEnd = sp + 40|0; + $zBuffer = sp + 16|0; + $nAlloc = sp + 12|0; + $isFirstTerm = sp + 8|0; + $iChild = sp; + $cmp = sp + 20|0; + $nSuffix = sp + 24|0; + $nPrefix = sp + 28|0; + $nBuffer = sp + 32|0; + $zNew = sp + 36|0; + HEAP32[$1>>2] = $zTerm; + HEAP32[$2>>2] = $nTerm; + HEAP32[$3>>2] = $zNode; + HEAP32[$4>>2] = $nNode; + HEAP32[$5>>2] = $piFirst; + HEAP32[$6>>2] = $piLast; + HEAP32[$rc>>2] = 0; + $7 = HEAP32[$3>>2]|0; + HEAP32[$zCsr>>2] = $7; + $8 = HEAP32[$4>>2]|0; + $9 = HEAP32[$zCsr>>2]|0; + $10 = (($9) + ($8)|0); + HEAP32[$zEnd>>2] = $10; + HEAP32[$zBuffer>>2] = 0; + HEAP32[$nAlloc>>2] = 0; + HEAP32[$isFirstTerm>>2] = 1; + $11 = HEAP32[$zCsr>>2]|0; + $12 = (_sqlite3Fts3GetVarint($11,$iChild)|0); + $13 = HEAP32[$zCsr>>2]|0; + $14 = (($13) + ($12)|0); + HEAP32[$zCsr>>2] = $14; + $15 = HEAP32[$zCsr>>2]|0; + $16 = (_sqlite3Fts3GetVarint($15,$iChild)|0); + $17 = HEAP32[$zCsr>>2]|0; + $18 = (($17) + ($16)|0); + HEAP32[$zCsr>>2] = $18; + $19 = HEAP32[$zCsr>>2]|0; + $20 = HEAP32[$zEnd>>2]|0; + $21 = ($19>>>0)>($20>>>0); + if ($21) { + HEAP32[$0>>2] = 267; + $174 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($174|0); + } + while(1) { + $22 = HEAP32[$zCsr>>2]|0; + $23 = HEAP32[$zEnd>>2]|0; + $24 = ($22>>>0)<($23>>>0); + if (!($24)) { + label = 31; + break; + } + $25 = HEAP32[$5>>2]|0; + $26 = ($25|0)!=(0|0); + if (!($26)) { + $27 = HEAP32[$6>>2]|0; + $28 = ($27|0)!=(0|0); + if (!($28)) { + label = 31; + break; + } + } + HEAP32[$nPrefix>>2] = 0; + $29 = HEAP32[$isFirstTerm>>2]|0; + $30 = ($29|0)!=(0); + if (!($30)) { + $31 = HEAP32[$zCsr>>2]|0; + $32 = HEAP8[$31>>0]|0; + $33 = $32&255; + $34 = $33 & 128; + $35 = ($34|0)!=(0); + $36 = HEAP32[$zCsr>>2]|0; + if ($35) { + $37 = (_sqlite3Fts3GetVarint32($36,$nPrefix)|0); + $42 = $37; + } else { + $38 = HEAP8[$36>>0]|0; + $39 = $38&255; + HEAP32[$nPrefix>>2] = $39; + $42 = 1; + } + $40 = HEAP32[$zCsr>>2]|0; + $41 = (($40) + ($42)|0); + HEAP32[$zCsr>>2] = $41; + } + HEAP32[$isFirstTerm>>2] = 0; + $43 = HEAP32[$zCsr>>2]|0; + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = $45 & 128; + $47 = ($46|0)!=(0); + $48 = HEAP32[$zCsr>>2]|0; + if ($47) { + $49 = (_sqlite3Fts3GetVarint32($48,$nSuffix)|0); + $54 = $49; + } else { + $50 = HEAP8[$48>>0]|0; + $51 = $50&255; + HEAP32[$nSuffix>>2] = $51; + $54 = 1; + } + $52 = HEAP32[$zCsr>>2]|0; + $53 = (($52) + ($54)|0); + HEAP32[$zCsr>>2] = $53; + $55 = HEAP32[$nPrefix>>2]|0; + $56 = ($55|0)<(0); + if ($56) { + label = 17; + break; + } + $57 = HEAP32[$nSuffix>>2]|0; + $58 = ($57|0)<(0); + if ($58) { + label = 17; + break; + } + $59 = HEAP32[$nSuffix>>2]|0; + $60 = HEAP32[$zCsr>>2]|0; + $61 = (($60) + ($59)|0); + $62 = HEAP32[$zEnd>>2]|0; + $63 = ($61>>>0)>($62>>>0); + if ($63) { + label = 17; + break; + } + $64 = HEAP32[$nPrefix>>2]|0; + $65 = HEAP32[$nSuffix>>2]|0; + $66 = (($64) + ($65))|0; + $67 = HEAP32[$nAlloc>>2]|0; + $68 = ($66|0)>($67|0); + if ($68) { + $69 = HEAP32[$nPrefix>>2]|0; + $70 = HEAP32[$nSuffix>>2]|0; + $71 = (($69) + ($70))|0; + $72 = $71<<1; + HEAP32[$nAlloc>>2] = $72; + $73 = HEAP32[$zBuffer>>2]|0; + $74 = HEAP32[$nAlloc>>2]|0; + $75 = (_sqlite3_realloc($73,$74)|0); + HEAP32[$zNew>>2] = $75; + $76 = HEAP32[$zNew>>2]|0; + $77 = ($76|0)!=(0|0); + if (!($77)) { + label = 20; + break; + } + $78 = HEAP32[$zNew>>2]|0; + HEAP32[$zBuffer>>2] = $78; + } + $79 = HEAP32[$nPrefix>>2]|0; + $80 = HEAP32[$zBuffer>>2]|0; + $81 = (($80) + ($79)|0); + $82 = HEAP32[$zCsr>>2]|0; + $83 = HEAP32[$nSuffix>>2]|0; + _memcpy(($81|0),($82|0),($83|0))|0; + $84 = HEAP32[$nPrefix>>2]|0; + $85 = HEAP32[$nSuffix>>2]|0; + $86 = (($84) + ($85))|0; + HEAP32[$nBuffer>>2] = $86; + $87 = HEAP32[$nSuffix>>2]|0; + $88 = HEAP32[$zCsr>>2]|0; + $89 = (($88) + ($87)|0); + HEAP32[$zCsr>>2] = $89; + $90 = HEAP32[$1>>2]|0; + $91 = HEAP32[$zBuffer>>2]|0; + $92 = HEAP32[$nBuffer>>2]|0; + $93 = HEAP32[$2>>2]|0; + $94 = ($92|0)>($93|0); + $95 = HEAP32[$2>>2]|0; + $96 = HEAP32[$nBuffer>>2]|0; + $97 = $94 ? $95 : $96; + $98 = (_memcmp($90,$91,$97)|0); + HEAP32[$cmp>>2] = $98; + $99 = HEAP32[$5>>2]|0; + $100 = ($99|0)!=(0|0); + do { + if ($100) { + $101 = HEAP32[$cmp>>2]|0; + $102 = ($101|0)<(0); + if (!($102)) { + $103 = HEAP32[$cmp>>2]|0; + $104 = ($103|0)==(0); + if (!($104)) { + break; + } + $105 = HEAP32[$nBuffer>>2]|0; + $106 = HEAP32[$2>>2]|0; + $107 = ($105|0)>($106|0); + if (!($107)) { + break; + } + } + $108 = $iChild; + $109 = $108; + $110 = HEAP32[$109>>2]|0; + $111 = (($108) + 4)|0; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = HEAP32[$5>>2]|0; + $115 = $114; + $116 = $115; + HEAP32[$116>>2] = $110; + $117 = (($115) + 4)|0; + $118 = $117; + HEAP32[$118>>2] = $113; + HEAP32[$5>>2] = 0; + } + } while(0); + $119 = HEAP32[$6>>2]|0; + $120 = ($119|0)!=(0|0); + if ($120) { + $121 = HEAP32[$cmp>>2]|0; + $122 = ($121|0)<(0); + if ($122) { + $123 = $iChild; + $124 = $123; + $125 = HEAP32[$124>>2]|0; + $126 = (($123) + 4)|0; + $127 = $126; + $128 = HEAP32[$127>>2]|0; + $129 = HEAP32[$6>>2]|0; + $130 = $129; + $131 = $130; + HEAP32[$131>>2] = $125; + $132 = (($130) + 4)|0; + $133 = $132; + HEAP32[$133>>2] = $128; + HEAP32[$6>>2] = 0; + } + } + $134 = $iChild; + $135 = $134; + $136 = HEAP32[$135>>2]|0; + $137 = (($134) + 4)|0; + $138 = $137; + $139 = HEAP32[$138>>2]|0; + $140 = (_i64Add(($136|0),($139|0),1,0)|0); + $141 = tempRet0; + $142 = $iChild; + $143 = $142; + HEAP32[$143>>2] = $140; + $144 = (($142) + 4)|0; + $145 = $144; + HEAP32[$145>>2] = $141; + } + if ((label|0) == 17) { + HEAP32[$rc>>2] = 267; + } + else if ((label|0) == 20) { + HEAP32[$rc>>2] = 7; + } + else if ((label|0) == 31) { + $146 = HEAP32[$5>>2]|0; + $147 = ($146|0)!=(0|0); + if ($147) { + $148 = $iChild; + $149 = $148; + $150 = HEAP32[$149>>2]|0; + $151 = (($148) + 4)|0; + $152 = $151; + $153 = HEAP32[$152>>2]|0; + $154 = HEAP32[$5>>2]|0; + $155 = $154; + $156 = $155; + HEAP32[$156>>2] = $150; + $157 = (($155) + 4)|0; + $158 = $157; + HEAP32[$158>>2] = $153; + } + $159 = HEAP32[$6>>2]|0; + $160 = ($159|0)!=(0|0); + if ($160) { + $161 = $iChild; + $162 = $161; + $163 = HEAP32[$162>>2]|0; + $164 = (($161) + 4)|0; + $165 = $164; + $166 = HEAP32[$165>>2]|0; + $167 = HEAP32[$6>>2]|0; + $168 = $167; + $169 = $168; + HEAP32[$169>>2] = $163; + $170 = (($168) + 4)|0; + $171 = $170; + HEAP32[$171>>2] = $166; + } + } + $172 = HEAP32[$zBuffer>>2]|0; + _sqlite3_free($172); + $173 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $173; + $174 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($174|0); +} +function _fts3CompareElemByTerm($lhs,$rhs) { + $lhs = $lhs|0; + $rhs = $rhs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, $n = 0, $n1 = 0, $n2 = 0, $z1 = 0, $z2 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $z1 = sp + 4|0; + $z2 = sp + 8|0; + $n1 = sp + 12|0; + $n2 = sp + 16|0; + $n = sp + 20|0; + $c = sp + 24|0; + HEAP32[$0>>2] = $lhs; + HEAP32[$1>>2] = $rhs; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$z1>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = (($7) + 12|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$z2>>2] = $9; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + 16|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$n1>>2] = $13; + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + 16|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$n2>>2] = $17; + $18 = HEAP32[$n1>>2]|0; + $19 = HEAP32[$n2>>2]|0; + $20 = ($18|0)<($19|0); + $21 = HEAP32[$n1>>2]|0; + $22 = HEAP32[$n2>>2]|0; + $23 = $20 ? $21 : $22; + HEAP32[$n>>2] = $23; + $24 = HEAP32[$z1>>2]|0; + $25 = HEAP32[$z2>>2]|0; + $26 = HEAP32[$n>>2]|0; + $27 = (_memcmp($24,$25,$26)|0); + HEAP32[$c>>2] = $27; + $28 = HEAP32[$c>>2]|0; + $29 = ($28|0)==(0); + if (!($29)) { + $33 = HEAP32[$c>>2]|0; + STACKTOP = sp;return ($33|0); + } + $30 = HEAP32[$n1>>2]|0; + $31 = HEAP32[$n2>>2]|0; + $32 = (($30) - ($31))|0; + HEAP32[$c>>2] = $32; + $33 = HEAP32[$c>>2]|0; + STACKTOP = sp;return ($33|0); +} +function _fts3SnippetFunc($pContext,$nVal,$apVal) { + $pContext = $pContext|0; + $nVal = $nVal|0; + $apVal = $apVal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iCol = 0, $nToken = 0, $pCsr = 0, $zEllipsis = 0, $zEnd = 0, $zStart = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $pCsr = sp + 20|0; + $zStart = sp + 16|0; + $zEnd = sp + 8|0; + $zEllipsis = sp + 4|0; + $iCol = sp; + $nToken = sp + 12|0; + HEAP32[$0>>2] = $pContext; + HEAP32[$1>>2] = $nVal; + HEAP32[$2>>2] = $apVal; + HEAP32[$zStart>>2] = 7240; + HEAP32[$zEnd>>2] = 7248; + HEAP32[$zEllipsis>>2] = 7256; + HEAP32[$iCol>>2] = -1; + HEAP32[$nToken>>2] = 15; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)>(6); + $5 = HEAP32[$0>>2]|0; + if ($4) { + _sqlite3_result_error($5,7272,-1); + STACKTOP = sp;return; + } + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = (_fts3FunctionArg($5,3704,$7,$pCsr)|0); + $9 = ($8|0)!=(0); + if ($9) { + STACKTOP = sp;return; + } + $10 = HEAP32[$1>>2]|0; + switch ($10|0) { + case 5: { + label = 6; + break; + } + case 4: { + label = 7; + break; + } + case 6: { + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 20|0); + $13 = HEAP32[$12>>2]|0; + $14 = (_sqlite3_value_int($13)|0); + HEAP32[$nToken>>2] = $14; + label = 6; + break; + } + case 2: { + label = 9; + break; + } + case 3: { + label = 8; + break; + } + default: { + } + } + if ((label|0) == 6) { + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 16|0); + $17 = HEAP32[$16>>2]|0; + $18 = (_sqlite3_value_int($17)|0); + HEAP32[$iCol>>2] = $18; + label = 7; + } + if ((label|0) == 7) { + $19 = HEAP32[$2>>2]|0; + $20 = (($19) + 12|0); + $21 = HEAP32[$20>>2]|0; + $22 = (_sqlite3_value_text($21)|0); + HEAP32[$zEllipsis>>2] = $22; + label = 8; + } + if ((label|0) == 8) { + $23 = HEAP32[$2>>2]|0; + $24 = (($23) + 8|0); + $25 = HEAP32[$24>>2]|0; + $26 = (_sqlite3_value_text($25)|0); + HEAP32[$zEnd>>2] = $26; + label = 9; + } + if ((label|0) == 9) { + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 4|0); + $29 = HEAP32[$28>>2]|0; + $30 = (_sqlite3_value_text($29)|0); + HEAP32[$zStart>>2] = $30; + } + $31 = HEAP32[$zEllipsis>>2]|0; + $32 = ($31|0)!=(0|0); + if ($32) { + $33 = HEAP32[$zEnd>>2]|0; + $34 = ($33|0)!=(0|0); + if ($34) { + $35 = HEAP32[$zStart>>2]|0; + $36 = ($35|0)!=(0|0); + if ($36) { + $38 = HEAP32[$0>>2]|0; + $39 = HEAP32[$pCsr>>2]|0; + $40 = (_fts3CursorSeek($38,$39)|0); + $41 = (0)==($40|0); + if (!($41)) { + STACKTOP = sp;return; + } + $42 = HEAP32[$0>>2]|0; + $43 = HEAP32[$pCsr>>2]|0; + $44 = HEAP32[$zStart>>2]|0; + $45 = HEAP32[$zEnd>>2]|0; + $46 = HEAP32[$zEllipsis>>2]|0; + $47 = HEAP32[$iCol>>2]|0; + $48 = HEAP32[$nToken>>2]|0; + _sqlite3Fts3Snippet($42,$43,$44,$45,$46,$47,$48); + STACKTOP = sp;return; + } + } + } + $37 = HEAP32[$0>>2]|0; + _sqlite3_result_error_nomem($37); + STACKTOP = sp;return; +} +function _fts3OffsetsFunc($pContext,$nVal,$apVal) { + $pContext = $pContext|0; + $nVal = $nVal|0; + $apVal = $apVal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCsr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pCsr = sp + 8|0; + HEAP32[$0>>2] = $pContext; + HEAP32[$1>>2] = $nVal; + HEAP32[$2>>2] = $apVal; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = (_fts3FunctionArg($3,3712,$5,$pCsr)|0); + $7 = ($6|0)!=(0); + if ($7) { + STACKTOP = sp;return; + } + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$pCsr>>2]|0; + $10 = (_fts3CursorSeek($8,$9)|0); + $11 = (0)==($10|0); + if (!($11)) { + STACKTOP = sp;return; + } + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$pCsr>>2]|0; + _sqlite3Fts3Offsets($12,$13); + STACKTOP = sp;return; +} +function _fts3OptimizeFunc($pContext,$nVal,$apVal) { + $pContext = $pContext|0; + $nVal = $nVal|0; + $apVal = $apVal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pCursor = 0, $rc = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $p = sp + 12|0; + $pCursor = sp + 16|0; + HEAP32[$0>>2] = $pContext; + HEAP32[$1>>2] = $nVal; + HEAP32[$2>>2] = $apVal; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = (_fts3FunctionArg($3,3736,$5,$pCursor)|0); + $7 = ($6|0)!=(0); + if ($7) { + STACKTOP = sp;return; + } + $8 = HEAP32[$pCursor>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$p>>2] = $9; + $10 = HEAP32[$p>>2]|0; + $11 = (_sqlite3Fts3Optimize($10)|0); + HEAP32[$rc>>2] = $11; + $12 = HEAP32[$rc>>2]|0; + if ((($12|0) == 101)) { + $14 = HEAP32[$0>>2]|0; + _sqlite3_result_text($14,7144,-1,0); + STACKTOP = sp;return; + } else if ((($12|0) == 0)) { + $13 = HEAP32[$0>>2]|0; + _sqlite3_result_text($13,7128,-1,0); + STACKTOP = sp;return; + } else { + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$rc>>2]|0; + _sqlite3_result_error_code($15,$16); + STACKTOP = sp;return; + } +} +function _fts3MatchinfoFunc($pContext,$nVal,$apVal) { + $pContext = $pContext|0; + $nVal = $nVal|0; + $apVal = $apVal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCsr = 0, $zArg = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $pCsr = sp + 8|0; + $zArg = sp + 12|0; + HEAP32[$0>>2] = $pContext; + HEAP32[$1>>2] = $nVal; + HEAP32[$2>>2] = $apVal; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = (_fts3FunctionArg($3,3720,$5,$pCsr)|0); + $7 = (0)==($6|0); + if (!($7)) { + STACKTOP = sp;return; + } + HEAP32[$zArg>>2] = 0; + $8 = HEAP32[$1>>2]|0; + $9 = ($8|0)>(1); + if ($9) { + $10 = HEAP32[$2>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = (_sqlite3_value_text($12)|0); + HEAP32[$zArg>>2] = $13; + } + $14 = HEAP32[$0>>2]|0; + $15 = HEAP32[$pCsr>>2]|0; + $16 = HEAP32[$zArg>>2]|0; + _sqlite3Fts3Matchinfo($14,$15,$16); + STACKTOP = sp;return; +} +function _fts3FunctionArg($pContext,$zFunc,$pVal,$ppCsr) { + $pContext = $pContext|0; + $zFunc = $zFunc|0; + $pVal = $pVal|0; + $ppCsr = $ppCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $pRet = 0, $vararg_buffer = 0, $zErr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 28|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $4 = sp + 16|0; + $pRet = sp + 20|0; + $zErr = sp + 24|0; + HEAP32[$1>>2] = $pContext; + HEAP32[$2>>2] = $zFunc; + HEAP32[$3>>2] = $pVal; + HEAP32[$4>>2] = $ppCsr; + $5 = HEAP32[$3>>2]|0; + $6 = (_sqlite3_value_type($5)|0); + $7 = ($6|0)!=(4); + if (!($7)) { + $8 = HEAP32[$3>>2]|0; + $9 = (_sqlite3_value_bytes($8)|0); + $10 = ($9|0)!=(4); + if (!($10)) { + $16 = HEAP32[$3>>2]|0; + $17 = (_sqlite3_value_blob($16)|0); + ;HEAP8[$pRet+0>>0]=HEAP8[$17+0>>0]|0;HEAP8[$pRet+1>>0]=HEAP8[$17+1>>0]|0;HEAP8[$pRet+2>>0]=HEAP8[$17+2>>0]|0;HEAP8[$pRet+3>>0]=HEAP8[$17+3>>0]|0; + $18 = HEAP32[$pRet>>2]|0; + $19 = HEAP32[$4>>2]|0; + HEAP32[$19>>2] = $18; + HEAP32[$0>>2] = 0; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } + } + $11 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer>>2] = $11; + $12 = (_sqlite3_mprintf(7096,$vararg_buffer)|0); + HEAP32[$zErr>>2] = $12; + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$zErr>>2]|0; + _sqlite3_result_error($13,$14,-1); + $15 = HEAP32[$zErr>>2]|0; + _sqlite3_free($15); + HEAP32[$0>>2] = 1; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); +} +function _sqlite3Fts3Matchinfo($pContext,$pCsr,$zArg) { + $pContext = $pContext|0; + $pCsr = $pCsr|0; + $zArg = $zArg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $n = 0, $pTab = 0, $rc = 0, $zErr = 0, $zFormat = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $pTab = sp + 20|0; + $rc = sp + 16|0; + $i = sp + 8|0; + $zFormat = sp + 4|0; + $zErr = sp; + $n = sp + 12|0; + HEAP32[$0>>2] = $pContext; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $zArg; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$pTab>>2] = $4; + $5 = HEAP32[$2>>2]|0; + $6 = ($5|0)!=(0|0); + do { + if ($6) { + HEAP32[$i>>2] = 0; + while(1) { + $7 = HEAP32[$i>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + ($7)|0); + $10 = HEAP8[$9>>0]|0; + $11 = ($10<<24>>24)!=(0); + if (!($11)) { + label = 7; + break; + } + HEAP32[$zErr>>2] = 0; + $12 = HEAP32[$pTab>>2]|0; + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (($14) + ($13)|0); + $16 = HEAP8[$15>>0]|0; + $17 = (_fts3MatchinfoCheck($12,$16,$zErr)|0); + $18 = ($17|0)!=(0); + if ($18) { + break; + } + $22 = HEAP32[$i>>2]|0; + $23 = (($22) + 1)|0; + HEAP32[$i>>2] = $23; + } + if ((label|0) == 7) { + $24 = HEAP32[$2>>2]|0; + HEAP32[$zFormat>>2] = $24; + break; + } + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$zErr>>2]|0; + _sqlite3_result_error($19,$20,-1); + $21 = HEAP32[$zErr>>2]|0; + _sqlite3_free($21); + STACKTOP = sp;return; + } else { + HEAP32[$zFormat>>2] = 7016; + } + } while(0); + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 12|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)!=(0|0); + if (!($28)) { + $29 = HEAP32[$0>>2]|0; + _sqlite3_result_blob($29,1784,0,0); + STACKTOP = sp;return; + } + $30 = HEAP32[$1>>2]|0; + $31 = HEAP32[$zFormat>>2]|0; + $32 = (_fts3GetMatchinfo($30,$31)|0); + HEAP32[$rc>>2] = $32; + $33 = HEAP32[$pTab>>2]|0; + _sqlite3Fts3SegmentsClose($33); + $34 = HEAP32[$rc>>2]|0; + $35 = ($34|0)!=(0); + if ($35) { + $36 = HEAP32[$0>>2]|0; + $37 = HEAP32[$rc>>2]|0; + _sqlite3_result_error_code($36,$37); + STACKTOP = sp;return; + } else { + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 96|0); + $40 = HEAP32[$39>>2]|0; + $41 = $40<<2; + HEAP32[$n>>2] = $41; + $42 = HEAP32[$0>>2]|0; + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 92|0); + $45 = HEAP32[$44>>2]|0; + $46 = HEAP32[$n>>2]|0; + _sqlite3_result_blob($42,$45,$46,(-1)); + STACKTOP = sp;return; + } +} +function _fts3MatchinfoCheck($pTab,$cArg,$pzErr) { + $pTab = $pTab|0; + $cArg = $cArg|0; + $pzErr = $pzErr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 12|0; + $1 = sp + 4|0; + $2 = sp + 16|0; + $3 = sp + 8|0; + HEAP32[$1>>2] = $pTab; + HEAP8[$2>>0] = $cArg; + HEAP32[$3>>2] = $pzErr; + $4 = HEAP8[$2>>0]|0; + $5 = $4 << 24 >> 24; + $6 = ($5|0)==(112); + do { + if (!($6)) { + $7 = HEAP8[$2>>0]|0; + $8 = $7 << 24 >> 24; + $9 = ($8|0)==(99); + if (!($9)) { + $10 = HEAP8[$2>>0]|0; + $11 = $10 << 24 >> 24; + $12 = ($11|0)==(110); + if ($12) { + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 228|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = ($16|0)!=(0); + if ($17) { + break; + } + } + $18 = HEAP8[$2>>0]|0; + $19 = $18 << 24 >> 24; + $20 = ($19|0)==(97); + if ($20) { + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 228|0); + $23 = HEAP8[$22>>0]|0; + $24 = $23&255; + $25 = ($24|0)!=(0); + if ($25) { + break; + } + } + $26 = HEAP8[$2>>0]|0; + $27 = $26 << 24 >> 24; + $28 = ($27|0)==(108); + if ($28) { + $29 = HEAP32[$1>>2]|0; + $30 = (($29) + 230|0); + $31 = HEAP8[$30>>0]|0; + $32 = $31&255; + $33 = ($32|0)!=(0); + if ($33) { + break; + } + } + $34 = HEAP8[$2>>0]|0; + $35 = $34 << 24 >> 24; + $36 = ($35|0)==(115); + if (!($36)) { + $37 = HEAP8[$2>>0]|0; + $38 = $37 << 24 >> 24; + $39 = ($38|0)==(120); + if (!($39)) { + $40 = HEAP8[$2>>0]|0; + $41 = $40 << 24 >> 24; + HEAP32[$vararg_buffer>>2] = $41; + $42 = (_sqlite3_mprintf(7056,$vararg_buffer)|0); + $43 = HEAP32[$3>>2]|0; + HEAP32[$43>>2] = $42; + HEAP32[$0>>2] = 1; + $44 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($44|0); + } + } + } + } + } while(0); + HEAP32[$0>>2] = 0; + $44 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($44|0); +} +function _fts3GetMatchinfo($pCsr,$zArg) { + $pCsr = $pCsr|0; + $zArg = $zArg|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0; + var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bGlobal = 0, $i = 0, $nArg = 0, $nMatchinfo = 0, $pTab = 0, $rc = 0, $sInfo = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 64|0; + $1 = sp + 60|0; + $2 = sp + 56|0; + $sInfo = sp; + $pTab = sp + 52|0; + $rc = sp + 48|0; + $bGlobal = sp + 40|0; + $nMatchinfo = sp + 32|0; + $nArg = sp + 36|0; + $i = sp + 44|0; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $zArg; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$pTab>>2] = $4; + HEAP32[$rc>>2] = 0; + HEAP32[$bGlobal>>2] = 0; + ;HEAP32[$sInfo+0>>2]=0|0;HEAP32[$sInfo+4>>2]=0|0;HEAP32[$sInfo+8>>2]=0|0;HEAP32[$sInfo+12>>2]=0|0;HEAP32[$sInfo+16>>2]=0|0;HEAP32[$sInfo+20>>2]=0|0;HEAP32[$sInfo+24>>2]=0|0;HEAP32[$sInfo+28>>2]=0|0; + $5 = HEAP32[$1>>2]|0; + HEAP32[$sInfo>>2] = $5; + $6 = HEAP32[$pTab>>2]|0; + $7 = (($6) + 24|0); + $8 = HEAP32[$7>>2]|0; + $9 = (($sInfo) + 4|0); + HEAP32[$9>>2] = $8; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 100|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)!=(0|0); + if ($13) { + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 100|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = (_strcmp($16,$17)|0); + $19 = ($18|0)!=(0); + if ($19) { + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 92|0); + $22 = HEAP32[$21>>2]|0; + _sqlite3_free($22); + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 100|0); + HEAP32[$24>>2] = 0; + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 92|0); + HEAP32[$26>>2] = 0; + } + } + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 92|0); + $29 = HEAP32[$28>>2]|0; + $30 = ($29|0)==(0|0); + do { + if ($30) { + HEAP32[$nMatchinfo>>2] = 0; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 12|0); + $33 = HEAP32[$32>>2]|0; + $34 = (_fts3ExprPhraseCount($33)|0); + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 20|0); + HEAP32[$36>>2] = $34; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 20|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($sInfo) + 8|0); + HEAP32[$40>>2] = $39; + HEAP32[$i>>2] = 0; + while(1) { + $41 = HEAP32[$i>>2]|0; + $42 = HEAP32[$2>>2]|0; + $43 = (($42) + ($41)|0); + $44 = HEAP8[$43>>0]|0; + $45 = ($44<<24>>24)!=(0); + if (!($45)) { + break; + } + $46 = HEAP32[$i>>2]|0; + $47 = HEAP32[$2>>2]|0; + $48 = (($47) + ($46)|0); + $49 = HEAP8[$48>>0]|0; + $50 = (_fts3MatchinfoSize($sInfo,$49)|0); + $51 = HEAP32[$nMatchinfo>>2]|0; + $52 = (($51) + ($50))|0; + HEAP32[$nMatchinfo>>2] = $52; + $53 = HEAP32[$i>>2]|0; + $54 = (($53) + 1)|0; + HEAP32[$i>>2] = $54; + } + $55 = HEAP32[$2>>2]|0; + $56 = (_strlen(($55|0))|0); + HEAP32[$nArg>>2] = $56; + $57 = HEAP32[$nMatchinfo>>2]|0; + $58 = $57<<2; + $59 = HEAP32[$nArg>>2]|0; + $60 = (($58) + ($59))|0; + $61 = (($60) + 1)|0; + $62 = (_sqlite3_malloc($61)|0); + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + 92|0); + HEAP32[$64>>2] = $62; + $65 = HEAP32[$1>>2]|0; + $66 = (($65) + 92|0); + $67 = HEAP32[$66>>2]|0; + $68 = ($67|0)!=(0|0); + if ($68) { + $69 = HEAP32[$nMatchinfo>>2]|0; + $70 = HEAP32[$1>>2]|0; + $71 = (($70) + 92|0); + $72 = HEAP32[$71>>2]|0; + $73 = (($72) + ($69<<2)|0); + $74 = HEAP32[$1>>2]|0; + $75 = (($74) + 100|0); + HEAP32[$75>>2] = $73; + $76 = HEAP32[$nMatchinfo>>2]|0; + $77 = HEAP32[$1>>2]|0; + $78 = (($77) + 96|0); + HEAP32[$78>>2] = $76; + $79 = HEAP32[$1>>2]|0; + $80 = (($79) + 100|0); + $81 = HEAP32[$80>>2]|0; + $82 = HEAP32[$2>>2]|0; + $83 = HEAP32[$nArg>>2]|0; + $84 = (($83) + 1)|0; + _memcpy(($81|0),($82|0),($84|0))|0; + $85 = HEAP32[$1>>2]|0; + $86 = (($85) + 92|0); + $87 = HEAP32[$86>>2]|0; + $88 = HEAP32[$nMatchinfo>>2]|0; + $89 = $88<<2; + _memset(($87|0),0,($89|0))|0; + $90 = HEAP32[$1>>2]|0; + $91 = (($90) + 88|0); + HEAP32[$91>>2] = 1; + HEAP32[$bGlobal>>2] = 1; + break; + } + HEAP32[$0>>2] = 7; + $111 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($111|0); + } + } while(0); + $92 = HEAP32[$1>>2]|0; + $93 = (($92) + 92|0); + $94 = HEAP32[$93>>2]|0; + $95 = (($sInfo) + 24|0); + HEAP32[$95>>2] = $94; + $96 = HEAP32[$1>>2]|0; + $97 = (($96) + 20|0); + $98 = HEAP32[$97>>2]|0; + $99 = (($sInfo) + 8|0); + HEAP32[$99>>2] = $98; + $100 = HEAP32[$1>>2]|0; + $101 = (($100) + 88|0); + $102 = HEAP32[$101>>2]|0; + $103 = ($102|0)!=(0); + if ($103) { + $104 = HEAP32[$1>>2]|0; + $105 = HEAP32[$bGlobal>>2]|0; + $106 = HEAP32[$2>>2]|0; + $107 = (_fts3MatchinfoValues($104,$105,$sInfo,$106)|0); + HEAP32[$rc>>2] = $107; + $108 = HEAP32[$1>>2]|0; + $109 = (($108) + 88|0); + HEAP32[$109>>2] = 0; + } + $110 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $110; + $111 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($111|0); +} +function _sqlite3Fts3SegmentsClose($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 244|0); + $3 = HEAP32[$2>>2]|0; + (_sqlite3_blob_close($3)|0); + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 244|0); + HEAP32[$5>>2] = 0; + STACKTOP = sp;return; +} +function _fts3ExprPhraseCount($pExpr) { + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $2 = 0, $nPhrase = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $nPhrase = sp; + HEAP32[$0>>2] = $pExpr; + HEAP32[$nPhrase>>2] = 0; + $1 = HEAP32[$0>>2]|0; + (_fts3ExprIterate($1,21,$nPhrase)|0); + $2 = HEAP32[$nPhrase>>2]|0; + STACKTOP = sp;return ($2|0); +} +function _fts3MatchinfoSize($pInfo,$cArg) { + $pInfo = $pInfo|0; + $cArg = $cArg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nVal = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp + 8|0; + $nVal = sp; + HEAP32[$0>>2] = $pInfo; + HEAP8[$1>>0] = $cArg; + $2 = HEAP8[$1>>0]|0; + $3 = $2 << 24 >> 24; + switch ($3|0) { + case 99: case 112: case 110: { + HEAP32[$nVal>>2] = 1; + break; + } + case 115: case 108: case 97: { + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$nVal>>2] = $6; + break; + } + default: { + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 8|0); + $12 = HEAP32[$11>>2]|0; + $13 = Math_imul($9, $12)|0; + $14 = ($13*3)|0; + HEAP32[$nVal>>2] = $14; + } + } + $15 = HEAP32[$nVal>>2]|0; + STACKTOP = sp;return ($15|0); +} +function _fts3MatchinfoValues($pCsr,$bGlobal,$pInfo,$zArg) { + $pCsr = $pCsr|0; + $bGlobal = $bGlobal|0; + $pInfo = $pInfo|0; + $zArg = $zArg|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $a = 0, $a3 = 0, $i = 0, $iCol = 0, $iCol2 = 0, $iVal = 0, $nDoc = 0, $nDoc1 = 0, $nToken = 0, $nToken4 = 0, $pExpr = 0, $pSelect = 0, $pSelectDocsize = 0, $pTab = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 88|0; + $1 = sp + 84|0; + $2 = sp + 80|0; + $3 = sp + 76|0; + $rc = sp + 72|0; + $i = sp + 68|0; + $pTab = sp + 64|0; + $pSelect = sp + 60|0; + $nDoc = sp; + $nDoc1 = sp + 16|0; + $a = sp + 52|0; + $iCol = sp + 40|0; + $iVal = sp + 36|0; + $nToken = sp + 8|0; + $pSelectDocsize = sp + 44|0; + $iCol2 = sp + 56|0; + $a3 = sp + 32|0; + $nToken4 = sp + 24|0; + $pExpr = sp + 48|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $bGlobal; + HEAP32[$2>>2] = $pInfo; + HEAP32[$3>>2] = $zArg; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$pTab>>2] = $5; + HEAP32[$pSelect>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $6 = HEAP32[$rc>>2]|0; + $7 = ($6|0)==(0); + if (!($7)) { + label = 30; + break; + } + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$3>>2]|0; + $10 = (($9) + ($8)|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11 << 24 >> 24; + $13 = ($12|0)!=(0); + if (!($13)) { + label = 30; + break; + } + $14 = HEAP32[$i>>2]|0; + $15 = HEAP32[$3>>2]|0; + $16 = (($15) + ($14)|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17 << 24 >> 24; + L5: do { + switch ($18|0) { + case 99: { + $27 = HEAP32[$1>>2]|0; + $28 = ($27|0)!=(0); + if ($28) { + $29 = HEAP32[$2>>2]|0; + $30 = (($29) + 4|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$2>>2]|0; + $33 = (($32) + 24|0); + $34 = HEAP32[$33>>2]|0; + HEAP32[$34>>2] = $31; + } + break; + } + case 110: { + $35 = HEAP32[$1>>2]|0; + $36 = ($35|0)!=(0); + if ($36) { + $37 = $nDoc; + $38 = $37; + HEAP32[$38>>2] = 0; + $39 = (($37) + 4)|0; + $40 = $39; + HEAP32[$40>>2] = 0; + $41 = HEAP32[$pTab>>2]|0; + $42 = (_fts3MatchinfoSelectDoctotal($41,$pSelect,$nDoc,0)|0); + HEAP32[$rc>>2] = $42; + $43 = $nDoc; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = (($43) + 4)|0; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = HEAP32[$2>>2]|0; + $50 = (($49) + 24|0); + $51 = HEAP32[$50>>2]|0; + HEAP32[$51>>2] = $45; + } + break; + } + case 115: { + $136 = HEAP32[$0>>2]|0; + $137 = (_fts3ExprLoadDoclists($136,0,0)|0); + HEAP32[$rc>>2] = $137; + $138 = HEAP32[$rc>>2]|0; + $139 = ($138|0)==(0); + if ($139) { + $140 = HEAP32[$0>>2]|0; + $141 = HEAP32[$2>>2]|0; + $142 = (_fts3MatchinfoLcs($140,$141)|0); + HEAP32[$rc>>2] = $142; + } + break; + } + case 108: { + HEAP32[$pSelectDocsize>>2] = 0; + $99 = HEAP32[$pTab>>2]|0; + $100 = HEAP32[$0>>2]|0; + $101 = (($100) + 32|0); + $102 = $101; + $103 = $102; + $104 = HEAP32[$103>>2]|0; + $105 = (($102) + 4)|0; + $106 = $105; + $107 = HEAP32[$106>>2]|0; + $108 = (_sqlite3Fts3SelectDocsize($99,$104,$107,$pSelectDocsize)|0); + HEAP32[$rc>>2] = $108; + $109 = HEAP32[$rc>>2]|0; + $110 = ($109|0)==(0); + L21: do { + if ($110) { + $111 = HEAP32[$pSelectDocsize>>2]|0; + $112 = (_sqlite3_column_blob($111,0)|0); + HEAP32[$a3>>2] = $112; + HEAP32[$iCol2>>2] = 0; + while(1) { + $113 = HEAP32[$iCol2>>2]|0; + $114 = HEAP32[$2>>2]|0; + $115 = (($114) + 4|0); + $116 = HEAP32[$115>>2]|0; + $117 = ($113|0)<($116|0); + if (!($117)) { + break L21; + } + $118 = HEAP32[$a3>>2]|0; + $119 = (_sqlite3Fts3GetVarint($118,$nToken4)|0); + $120 = HEAP32[$a3>>2]|0; + $121 = (($120) + ($119)|0); + HEAP32[$a3>>2] = $121; + $122 = $nToken4; + $123 = $122; + $124 = HEAP32[$123>>2]|0; + $125 = (($122) + 4)|0; + $126 = $125; + $127 = HEAP32[$126>>2]|0; + $128 = HEAP32[$iCol2>>2]|0; + $129 = HEAP32[$2>>2]|0; + $130 = (($129) + 24|0); + $131 = HEAP32[$130>>2]|0; + $132 = (($131) + ($128<<2)|0); + HEAP32[$132>>2] = $124; + $133 = HEAP32[$iCol2>>2]|0; + $134 = (($133) + 1)|0; + HEAP32[$iCol2>>2] = $134; + } + } + } while(0); + $135 = HEAP32[$pSelectDocsize>>2]|0; + (_sqlite3_reset($135)|0); + break; + } + case 112: { + $19 = HEAP32[$1>>2]|0; + $20 = ($19|0)!=(0); + if ($20) { + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 8|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$2>>2]|0; + $25 = (($24) + 24|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$26>>2] = $23; + } + break; + } + case 97: { + $52 = HEAP32[$1>>2]|0; + $53 = ($52|0)!=(0); + if ($53) { + $54 = HEAP32[$pTab>>2]|0; + $55 = (_fts3MatchinfoSelectDoctotal($54,$pSelect,$nDoc1,$a)|0); + HEAP32[$rc>>2] = $55; + $56 = HEAP32[$rc>>2]|0; + $57 = ($56|0)==(0); + if ($57) { + HEAP32[$iCol>>2] = 0; + while(1) { + $58 = HEAP32[$iCol>>2]|0; + $59 = HEAP32[$2>>2]|0; + $60 = (($59) + 4|0); + $61 = HEAP32[$60>>2]|0; + $62 = ($58|0)<($61|0); + if (!($62)) { + break L5; + } + $63 = HEAP32[$a>>2]|0; + $64 = (_sqlite3Fts3GetVarint($63,$nToken)|0); + $65 = HEAP32[$a>>2]|0; + $66 = (($65) + ($64)|0); + HEAP32[$a>>2] = $66; + $67 = $nToken; + $68 = $67; + $69 = HEAP32[$68>>2]|0; + $70 = (($67) + 4)|0; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = $nDoc1; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $76 = (($73) + 4)|0; + $77 = $76; + $78 = HEAP32[$77>>2]|0; + $79 = (___divdi3(($75|0),($78|0),2,0)|0); + $80 = tempRet0; + $81 = (_i64Add(($69|0),0,($79|0),($80|0))|0); + $82 = tempRet0; + $83 = $nDoc1; + $84 = $83; + $85 = HEAP32[$84>>2]|0; + $86 = (($83) + 4)|0; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = (___divdi3(($81|0),($82|0),($85|0),($88|0))|0); + $90 = tempRet0; + HEAP32[$iVal>>2] = $89; + $91 = HEAP32[$iVal>>2]|0; + $92 = HEAP32[$iCol>>2]|0; + $93 = HEAP32[$2>>2]|0; + $94 = (($93) + 24|0); + $95 = HEAP32[$94>>2]|0; + $96 = (($95) + ($92<<2)|0); + HEAP32[$96>>2] = $91; + $97 = HEAP32[$iCol>>2]|0; + $98 = (($97) + 1)|0; + HEAP32[$iCol>>2] = $98; + } + } + } + break; + } + default: { + $143 = HEAP32[$0>>2]|0; + $144 = (($143) + 12|0); + $145 = HEAP32[$144>>2]|0; + HEAP32[$pExpr>>2] = $145; + $146 = HEAP32[$0>>2]|0; + $147 = (_fts3ExprLoadDoclists($146,0,0)|0); + HEAP32[$rc>>2] = $147; + $148 = HEAP32[$rc>>2]|0; + $149 = ($148|0)!=(0); + if (!($149)) { + $150 = HEAP32[$1>>2]|0; + $151 = ($150|0)!=(0); + if ($151) { + $152 = HEAP32[$0>>2]|0; + $153 = (($152) + 24|0); + $154 = HEAP32[$153>>2]|0; + $155 = ($154|0)!=(0|0); + if ($155) { + $156 = HEAP32[$pTab>>2]|0; + $157 = HEAP32[$2>>2]|0; + $158 = (($157) + 16|0); + $159 = (_fts3MatchinfoSelectDoctotal($156,$pSelect,$158,0)|0); + HEAP32[$rc>>2] = $159; + $160 = HEAP32[$rc>>2]|0; + $161 = ($160|0)!=(0); + if ($161) { + break L5; + } + } + $162 = HEAP32[$pExpr>>2]|0; + $163 = HEAP32[$2>>2]|0; + $164 = (_fts3ExprIterate($162,22,$163)|0); + HEAP32[$rc>>2] = $164; + $165 = HEAP32[$rc>>2]|0; + $166 = ($165|0)!=(0); + if ($166) { + break L5; + } + } + $167 = HEAP32[$pExpr>>2]|0; + $168 = HEAP32[$2>>2]|0; + (_fts3ExprIterate($167,23,$168)|0); + } + } + } + } while(0); + $169 = HEAP32[$2>>2]|0; + $170 = HEAP32[$i>>2]|0; + $171 = HEAP32[$3>>2]|0; + $172 = (($171) + ($170)|0); + $173 = HEAP8[$172>>0]|0; + $174 = (_fts3MatchinfoSize($169,$173)|0); + $175 = HEAP32[$2>>2]|0; + $176 = (($175) + 24|0); + $177 = HEAP32[$176>>2]|0; + $178 = (($177) + ($174<<2)|0); + HEAP32[$176>>2] = $178; + $179 = HEAP32[$i>>2]|0; + $180 = (($179) + 1)|0; + HEAP32[$i>>2] = $180; + } + if ((label|0) == 30) { + $181 = HEAP32[$pSelect>>2]|0; + (_sqlite3_reset($181)|0); + $182 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($182|0); + } + return 0|0; +} +function _fts3MatchinfoSelectDoctotal($pTab,$ppStmt,$pnDoc,$paLen) { + $pTab = $pTab|0; + $ppStmt = $ppStmt|0; + $pnDoc = $pnDoc|0; + $paLen = $paLen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $nDoc = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 20|0; + $pStmt = sp + 12|0; + $a = sp + 8|0; + $nDoc = sp; + $rc = sp + 16|0; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $ppStmt; + HEAP32[$3>>2] = $pnDoc; + HEAP32[$4>>2] = $paLen; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = (_sqlite3Fts3SelectDoctotal($8,$9)|0); + HEAP32[$rc>>2] = $10; + $11 = HEAP32[$rc>>2]|0; + $12 = ($11|0)!=(0); + if ($12) { + $13 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $13; + $46 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($46|0); + } + } + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$14>>2]|0; + HEAP32[$pStmt>>2] = $15; + $16 = HEAP32[$pStmt>>2]|0; + $17 = (_sqlite3_column_blob($16,0)|0); + HEAP32[$a>>2] = $17; + $18 = HEAP32[$a>>2]|0; + $19 = (_sqlite3Fts3GetVarint($18,$nDoc)|0); + $20 = HEAP32[$a>>2]|0; + $21 = (($20) + ($19)|0); + HEAP32[$a>>2] = $21; + $22 = $nDoc; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (($22) + 4)|0; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = ($24|0)==(0); + $29 = ($27|0)==(0); + $30 = $28 & $29; + if ($30) { + HEAP32[$0>>2] = 267; + $46 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($46|0); + } + $31 = $nDoc; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$3>>2]|0; + $38 = $37; + $39 = $38; + HEAP32[$39>>2] = $33; + $40 = (($38) + 4)|0; + $41 = $40; + HEAP32[$41>>2] = 0; + $42 = HEAP32[$4>>2]|0; + $43 = ($42|0)!=(0|0); + if ($43) { + $44 = HEAP32[$a>>2]|0; + $45 = HEAP32[$4>>2]|0; + HEAP32[$45>>2] = $44; + } + HEAP32[$0>>2] = 0; + $46 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($46|0); +} +function _sqlite3Fts3SelectDocsize($pTab,$0,$1,$ppStmt) { + $pTab = $pTab|0; + $0 = $0|0; + $1 = $1|0; + $ppStmt = $ppStmt|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp + 12|0; + $3 = sp; + $4 = sp + 8|0; + HEAP32[$2>>2] = $pTab; + $5 = $3; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + HEAP32[$4>>2] = $ppStmt; + $9 = HEAP32[$2>>2]|0; + $10 = $3; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (($10) + 4)|0; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$4>>2]|0; + $17 = (_fts3SelectDocsize($9,$12,$15,$16)|0); + STACKTOP = sp;return ($17|0); +} +function _fts3ExprLoadDoclists($pCsr,$pnPhrase,$pnToken) { + $pCsr = $pCsr|0; + $pnPhrase = $pnPhrase|0; + $pnToken = $pnToken|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0; + var $sCtx = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $sCtx = sp + 12|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $pnPhrase; + HEAP32[$2>>2] = $pnToken; + ;HEAP32[$sCtx+0>>2]=0|0;HEAP32[$sCtx+4>>2]=0|0;HEAP32[$sCtx+8>>2]=0|0; + $3 = HEAP32[$0>>2]|0; + HEAP32[$sCtx>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 12|0); + $6 = HEAP32[$5>>2]|0; + $7 = (_fts3ExprIterate($6,24,$sCtx)|0); + HEAP32[$rc>>2] = $7; + $8 = HEAP32[$1>>2]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = (($sCtx) + 4|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$1>>2]|0; + HEAP32[$12>>2] = $11; + } + $13 = HEAP32[$2>>2]|0; + $14 = ($13|0)!=(0|0); + if (!($14)) { + $18 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($18|0); + } + $15 = (($sCtx) + 8|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$2>>2]|0; + HEAP32[$17>>2] = $16; + $18 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($18|0); +} +function _fts3MatchinfoLcs($pCsr,$pInfo) { + $pCsr = $pCsr|0; + $pInfo = $pInfo|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; + var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; + var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; + var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; + var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aIter = 0, $i = 0, $iCol = 0, $nLcs = 0; + var $nLive = 0, $nThisLcs = 0, $nToken = 0, $pAdv = 0, $pIt = 0, $pIter = 0, $pIter1 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 56|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $aIter = sp + 44|0; + $i = sp + 40|0; + $iCol = sp + 36|0; + $nToken = sp + 32|0; + $pIter = sp + 28|0; + $nLcs = sp + 20|0; + $nLive = sp + 16|0; + $rc = sp + 12|0; + $pIt = sp + 8|0; + $pAdv = sp + 4|0; + $nThisLcs = sp; + $pIter1 = sp + 24|0; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $pInfo; + HEAP32[$nToken>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 20|0); + $5 = HEAP32[$4>>2]|0; + $6 = $5<<4; + $7 = (_sqlite3_malloc($6)|0); + HEAP32[$aIter>>2] = $7; + $8 = HEAP32[$aIter>>2]|0; + $9 = ($8|0)!=(0|0); + if (!($9)) { + HEAP32[$0>>2] = 7; + $135 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($135|0); + } + $10 = HEAP32[$aIter>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 20|0); + $13 = HEAP32[$12>>2]|0; + $14 = $13<<4; + _memset(($10|0),0,($14|0))|0; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 12|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$aIter>>2]|0; + (_fts3ExprIterate($17,25,$18)|0); + HEAP32[$i>>2] = 0; + while(1) { + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$2>>2]|0; + $21 = (($20) + 8|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($19|0)<($22|0); + if (!($23)) { + break; + } + $24 = HEAP32[$i>>2]|0; + $25 = HEAP32[$aIter>>2]|0; + $26 = (($25) + ($24<<4)|0); + HEAP32[$pIter>>2] = $26; + $27 = HEAP32[$pIter>>2]|0; + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + 20|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + 48|0); + $32 = HEAP32[$31>>2]|0; + $33 = HEAP32[$nToken>>2]|0; + $34 = (($33) - ($32))|0; + HEAP32[$nToken>>2] = $34; + $35 = HEAP32[$nToken>>2]|0; + $36 = HEAP32[$pIter>>2]|0; + $37 = (($36) + 4|0); + HEAP32[$37>>2] = $35; + $38 = HEAP32[$i>>2]|0; + $39 = (($38) + 1)|0; + HEAP32[$i>>2] = $39; + } + HEAP32[$iCol>>2] = 0; + L9: while(1) { + $40 = HEAP32[$iCol>>2]|0; + $41 = HEAP32[$2>>2]|0; + $42 = (($41) + 4|0); + $43 = HEAP32[$42>>2]|0; + $44 = ($40|0)<($43|0); + if (!($44)) { + label = 33; + break; + } + HEAP32[$nLcs>>2] = 0; + HEAP32[$nLive>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $45 = HEAP32[$i>>2]|0; + $46 = HEAP32[$2>>2]|0; + $47 = (($46) + 8|0); + $48 = HEAP32[$47>>2]|0; + $49 = ($45|0)<($48|0); + if (!($49)) { + break; + } + $50 = HEAP32[$i>>2]|0; + $51 = HEAP32[$aIter>>2]|0; + $52 = (($51) + ($50<<4)|0); + HEAP32[$pIt>>2] = $52; + $53 = HEAP32[$1>>2]|0; + $54 = HEAP32[$pIt>>2]|0; + $55 = HEAP32[$54>>2]|0; + $56 = HEAP32[$iCol>>2]|0; + $57 = HEAP32[$pIt>>2]|0; + $58 = (($57) + 8|0); + $59 = (_sqlite3Fts3EvalPhrasePoslist($53,$55,$56,$58)|0); + HEAP32[$rc>>2] = $59; + $60 = HEAP32[$rc>>2]|0; + $61 = ($60|0)!=(0); + if ($61) { + label = 11; + break L9; + } + $63 = HEAP32[$pIt>>2]|0; + $64 = (($63) + 8|0); + $65 = HEAP32[$64>>2]|0; + $66 = ($65|0)!=(0|0); + if ($66) { + $67 = HEAP32[$pIt>>2]|0; + $68 = (($67) + 4|0); + $69 = HEAP32[$68>>2]|0; + $70 = HEAP32[$pIt>>2]|0; + $71 = (($70) + 12|0); + HEAP32[$71>>2] = $69; + $72 = HEAP32[$i>>2]|0; + $73 = HEAP32[$aIter>>2]|0; + $74 = (($73) + ($72<<4)|0); + (_fts3LcsIteratorAdvance($74)|0); + $75 = HEAP32[$nLive>>2]|0; + $76 = (($75) + 1)|0; + HEAP32[$nLive>>2] = $76; + } + $77 = HEAP32[$i>>2]|0; + $78 = (($77) + 1)|0; + HEAP32[$i>>2] = $78; + } + while(1) { + $79 = HEAP32[$nLive>>2]|0; + $80 = ($79|0)>(0); + if (!($80)) { + break; + } + HEAP32[$pAdv>>2] = 0; + HEAP32[$nThisLcs>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $81 = HEAP32[$i>>2]|0; + $82 = HEAP32[$2>>2]|0; + $83 = (($82) + 8|0); + $84 = HEAP32[$83>>2]|0; + $85 = ($81|0)<($84|0); + if (!($85)) { + break; + } + $86 = HEAP32[$i>>2]|0; + $87 = HEAP32[$aIter>>2]|0; + $88 = (($87) + ($86<<4)|0); + HEAP32[$pIter1>>2] = $88; + $89 = HEAP32[$pIter1>>2]|0; + $90 = (($89) + 8|0); + $91 = HEAP32[$90>>2]|0; + $92 = ($91|0)==(0|0); + if ($92) { + HEAP32[$nThisLcs>>2] = 0; + } else { + $93 = HEAP32[$pAdv>>2]|0; + $94 = ($93|0)==(0|0); + if ($94) { + label = 22; + } else { + $95 = HEAP32[$pIter1>>2]|0; + $96 = (($95) + 12|0); + $97 = HEAP32[$96>>2]|0; + $98 = HEAP32[$pAdv>>2]|0; + $99 = (($98) + 12|0); + $100 = HEAP32[$99>>2]|0; + $101 = ($97|0)<($100|0); + if ($101) { + label = 22; + } + } + if ((label|0) == 22) { + label = 0; + $102 = HEAP32[$pIter1>>2]|0; + HEAP32[$pAdv>>2] = $102; + } + $103 = HEAP32[$nThisLcs>>2]|0; + $104 = ($103|0)==(0); + if ($104) { + label = 25; + } else { + $105 = HEAP32[$pIter1>>2]|0; + $106 = (($105) + 12|0); + $107 = HEAP32[$106>>2]|0; + $108 = HEAP32[$pIter1>>2]|0; + $109 = (($108) + -16|0); + $110 = (($109) + 12|0); + $111 = HEAP32[$110>>2]|0; + $112 = ($107|0)==($111|0); + if ($112) { + label = 25; + } else { + HEAP32[$nThisLcs>>2] = 1; + } + } + if ((label|0) == 25) { + label = 0; + $113 = HEAP32[$nThisLcs>>2]|0; + $114 = (($113) + 1)|0; + HEAP32[$nThisLcs>>2] = $114; + } + $115 = HEAP32[$nThisLcs>>2]|0; + $116 = HEAP32[$nLcs>>2]|0; + $117 = ($115|0)>($116|0); + if ($117) { + $118 = HEAP32[$nThisLcs>>2]|0; + HEAP32[$nLcs>>2] = $118; + } + } + $119 = HEAP32[$i>>2]|0; + $120 = (($119) + 1)|0; + HEAP32[$i>>2] = $120; + } + $121 = HEAP32[$pAdv>>2]|0; + $122 = (_fts3LcsIteratorAdvance($121)|0); + $123 = ($122|0)!=(0); + if (!($123)) { + continue; + } + $124 = HEAP32[$nLive>>2]|0; + $125 = (($124) + -1)|0; + HEAP32[$nLive>>2] = $125; + } + $126 = HEAP32[$nLcs>>2]|0; + $127 = HEAP32[$iCol>>2]|0; + $128 = HEAP32[$2>>2]|0; + $129 = (($128) + 24|0); + $130 = HEAP32[$129>>2]|0; + $131 = (($130) + ($127<<2)|0); + HEAP32[$131>>2] = $126; + $132 = HEAP32[$iCol>>2]|0; + $133 = (($132) + 1)|0; + HEAP32[$iCol>>2] = $133; + } + if ((label|0) == 11) { + $62 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $62; + $135 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($135|0); + } + else if ((label|0) == 33) { + $134 = HEAP32[$aIter>>2]|0; + _sqlite3_free($134); + HEAP32[$0>>2] = 0; + $135 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($135|0); + } + return 0|0; +} +function _fts3ExprIterate($pExpr,$x,$pCtx) { + $pExpr = $pExpr|0; + $x = $x|0; + $pCtx = $pCtx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $iPhrase = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $iPhrase = sp + 8|0; + HEAP32[$0>>2] = $pExpr; + HEAP32[$1>>2] = $x; + HEAP32[$2>>2] = $pCtx; + HEAP32[$iPhrase>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = (_fts3ExprIterate2($3,$iPhrase,$4,$5)|0); + STACKTOP = sp;return ($6|0); +} +function _fts3ExprGlobalHitsCb($pExpr,$iPhrase,$pCtx) { + $pExpr = $pExpr|0; + $iPhrase = $iPhrase|0; + $pCtx = $pCtx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + HEAP32[$0>>2] = $pExpr; + HEAP32[$1>>2] = $iPhrase; + HEAP32[$2>>2] = $pCtx; + $3 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $3; + $4 = HEAP32[$p>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = ($7*3)|0; + $9 = HEAP32[$p>>2]|0; + $10 = (($9) + 4|0); + $11 = HEAP32[$10>>2]|0; + $12 = Math_imul($8, $11)|0; + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 24|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + ($12<<2)|0); + $17 = (_sqlite3Fts3EvalPhraseStats($5,$6,$16)|0); + STACKTOP = sp;return ($17|0); +} +function _fts3ExprLocalHitsCb($pExpr,$iPhrase,$pCtx) { + $pExpr = $pExpr|0; + $iPhrase = $iPhrase|0; + $pCtx = $pCtx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $iStart = 0, $p = 0, $pCsr = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $p = sp + 12|0; + $iStart = sp + 16|0; + $i = sp + 20|0; + $pCsr = sp + 24|0; + HEAP32[$0>>2] = $pExpr; + HEAP32[$1>>2] = $iPhrase; + HEAP32[$2>>2] = $pCtx; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $3; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$p>>2]|0; + $6 = (($5) + 4|0); + $7 = HEAP32[$6>>2]|0; + $8 = Math_imul($4, $7)|0; + $9 = ($8*3)|0; + HEAP32[$iStart>>2] = $9; + HEAP32[$i>>2] = 0; + while(1) { + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$p>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($10|0)<($13|0); + if (!($14)) { + label = 8; + break; + } + $15 = HEAP32[$rc>>2]|0; + $16 = ($15|0)==(0); + if (!($16)) { + label = 8; + break; + } + $17 = HEAP32[$p>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$i>>2]|0; + $21 = (_sqlite3Fts3EvalPhrasePoslist($18,$19,$20,$pCsr)|0); + HEAP32[$rc>>2] = $21; + $22 = HEAP32[$pCsr>>2]|0; + $23 = ($22|0)!=(0|0); + if ($23) { + $24 = (_fts3ColumnlistCount($pCsr)|0); + $25 = HEAP32[$iStart>>2]|0; + $26 = HEAP32[$i>>2]|0; + $27 = ($26*3)|0; + $28 = (($25) + ($27))|0; + $29 = HEAP32[$p>>2]|0; + $30 = (($29) + 24|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + ($28<<2)|0); + HEAP32[$32>>2] = $24; + } else { + $33 = HEAP32[$iStart>>2]|0; + $34 = HEAP32[$i>>2]|0; + $35 = ($34*3)|0; + $36 = (($33) + ($35))|0; + $37 = HEAP32[$p>>2]|0; + $38 = (($37) + 24|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + ($36<<2)|0); + HEAP32[$40>>2] = 0; + } + $41 = HEAP32[$i>>2]|0; + $42 = (($41) + 1)|0; + HEAP32[$i>>2] = $42; + } + if ((label|0) == 8) { + $43 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($43|0); + } + return 0|0; +} +function _sqlite3Fts3EvalPhrasePoslist($pCsr,$pExpr,$iCol,$ppOut) { + $pCsr = $pCsr|0; + $pExpr = $pExpr|0; + $iCol = $iCol|0; + $ppOut = $ppOut|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bDescDoclist = 0, $bEof = 0, $bEofSave = 0, $bOr = 0, $bTreeEof = 0, $dummy = 0, $iDocid = 0, $iMul = 0, $iThis = 0, $p = 0, $pIter = 0, $pNear = 0; + var $pPhrase = 0, $pTab = 0, $rc = 0, $rc1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 76|0; + $1 = sp + 56|0; + $2 = sp + 72|0; + $3 = sp + 68|0; + $4 = sp + 64|0; + $pPhrase = sp + 60|0; + $pTab = sp + 52|0; + $pIter = sp + 48|0; + $iThis = sp + 44|0; + $iDocid = sp; + $bDescDoclist = sp + 16|0; + $iMul = sp + 8|0; + $bOr = sp + 12|0; + $bEof = sp + 81|0; + $bTreeEof = sp + 80|0; + $p = sp + 20|0; + $pNear = sp + 24|0; + $rc = sp + 28|0; + $bEofSave = sp + 32|0; + $rc1 = sp + 36|0; + $dummy = sp + 40|0; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $pExpr; + HEAP32[$3>>2] = $iCol; + HEAP32[$4>>2] = $ppOut; + $5 = HEAP32[$2>>2]|0; + $6 = (($5) + 20|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pPhrase>>2] = $7; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$pTab>>2] = $9; + $10 = HEAP32[$4>>2]|0; + HEAP32[$10>>2] = 0; + $11 = HEAP32[$pPhrase>>2]|0; + $12 = (($11) + 52|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$pTab>>2]|0; + $15 = (($14) + 24|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($13|0)<($16|0); + if ($17) { + $18 = HEAP32[$pPhrase>>2]|0; + $19 = (($18) + 52|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$3>>2]|0; + $22 = ($20|0)!=($21|0); + if ($22) { + HEAP32[$0>>2] = 0; + $367 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($367|0); + } + } + $23 = HEAP32[$2>>2]|0; + $24 = (($23) + 24|0); + $25 = $24; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = $iDocid; + $32 = $31; + HEAP32[$32>>2] = $27; + $33 = (($31) + 4)|0; + $34 = $33; + HEAP32[$34>>2] = $30; + $35 = HEAP32[$pPhrase>>2]|0; + $36 = (($35) + 28|0); + $37 = HEAP32[$36>>2]|0; + HEAP32[$pIter>>2] = $37; + $38 = $iDocid; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = (($38) + 4)|0; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 32|0); + $46 = $45; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = (($46) + 4)|0; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = ($40|0)!=($48|0); + $53 = ($43|0)!=($51|0); + $54 = $52 | $53; + if ($54) { + label = 6; + } else { + $55 = HEAP32[$2>>2]|0; + $56 = (($55) + 32|0); + $57 = HEAP8[$56>>0]|0; + $58 = $57&255; + $59 = ($58|0)!=(0); + if ($59) { + label = 6; + } + } + do { + if ((label|0) == 6) { + $60 = HEAP32[$pTab>>2]|0; + $61 = (($60) + 231|0); + $62 = HEAP8[$61>>0]|0; + $63 = $62&255; + HEAP32[$bDescDoclist>>2] = $63; + HEAP32[$bOr>>2] = 0; + HEAP8[$bEof>>0] = 0; + HEAP8[$bTreeEof>>0] = 0; + $64 = HEAP32[$2>>2]|0; + HEAP32[$pNear>>2] = $64; + $65 = HEAP32[$2>>2]|0; + $66 = (($65) + 8|0); + $67 = HEAP32[$66>>2]|0; + HEAP32[$p>>2] = $67; + while(1) { + $68 = HEAP32[$p>>2]|0; + $69 = ($68|0)!=(0|0); + if (!($69)) { + break; + } + $70 = HEAP32[$p>>2]|0; + $71 = HEAP32[$70>>2]|0; + $72 = ($71|0)==(4); + if ($72) { + HEAP32[$bOr>>2] = 1; + } + $73 = HEAP32[$p>>2]|0; + $74 = HEAP32[$73>>2]|0; + $75 = ($74|0)==(1); + if ($75) { + $76 = HEAP32[$p>>2]|0; + HEAP32[$pNear>>2] = $76; + } + $77 = HEAP32[$p>>2]|0; + $78 = (($77) + 32|0); + $79 = HEAP8[$78>>0]|0; + $80 = ($79<<24>>24)!=(0); + if ($80) { + HEAP8[$bTreeEof>>0] = 1; + } + $81 = HEAP32[$p>>2]|0; + $82 = (($81) + 8|0); + $83 = HEAP32[$82>>2]|0; + HEAP32[$p>>2] = $83; + } + $84 = HEAP32[$bOr>>2]|0; + $85 = ($84|0)==(0); + if ($85) { + HEAP32[$0>>2] = 0; + $367 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($367|0); + } + $86 = HEAP32[$pPhrase>>2]|0; + $87 = (($86) + 40|0); + $88 = HEAP32[$87>>2]|0; + $89 = ($88|0)!=(0); + if ($89) { + HEAP32[$rc>>2] = 0; + $90 = HEAP32[$2>>2]|0; + $91 = (($90) + 32|0); + $92 = HEAP8[$91>>0]|0; + $93 = $92&255; + HEAP32[$bEofSave>>2] = $93; + $94 = HEAP32[$1>>2]|0; + $95 = HEAP32[$2>>2]|0; + _fts3EvalRestart($94,$95,$rc); + while(1) { + $96 = HEAP32[$rc>>2]|0; + $97 = ($96|0)==(0); + if (!($97)) { + break; + } + $98 = HEAP32[$2>>2]|0; + $99 = (($98) + 32|0); + $100 = HEAP8[$99>>0]|0; + $101 = ($100<<24>>24)!=(0); + $102 = $101 ^ 1; + if (!($102)) { + break; + } + $103 = HEAP32[$1>>2]|0; + $104 = HEAP32[$2>>2]|0; + _fts3EvalNextRow($103,$104,$rc); + $105 = HEAP32[$bEofSave>>2]|0; + $106 = ($105|0)==(0); + if (!($106)) { + continue; + } + $107 = HEAP32[$2>>2]|0; + $108 = (($107) + 24|0); + $109 = $108; + $110 = $109; + $111 = HEAP32[$110>>2]|0; + $112 = (($109) + 4)|0; + $113 = $112; + $114 = HEAP32[$113>>2]|0; + $115 = $iDocid; + $116 = $115; + $117 = HEAP32[$116>>2]|0; + $118 = (($115) + 4)|0; + $119 = $118; + $120 = HEAP32[$119>>2]|0; + $121 = ($111|0)==($117|0); + $122 = ($114|0)==($120|0); + $123 = $121 & $122; + if ($123) { + break; + } + } + $124 = HEAP32[$pPhrase>>2]|0; + $125 = (($124) + 28|0); + $126 = HEAP32[$125>>2]|0; + HEAP32[$pIter>>2] = $126; + $127 = HEAP32[$rc>>2]|0; + $128 = ($127|0)!=(0); + if ($128) { + $129 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $129; + $367 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($367|0); + } + } + $130 = HEAP32[$1>>2]|0; + $131 = (($130) + 52|0); + $132 = HEAP8[$131>>0]|0; + $133 = $132&255; + $134 = HEAP32[$bDescDoclist>>2]|0; + $135 = ($133|0)==($134|0); + $136 = $135 ? 1 : -1; + HEAP32[$iMul>>2] = $136; + while(1) { + $137 = HEAP8[$bTreeEof>>0]|0; + $138 = $137&255; + $139 = ($138|0)==(1); + if (!($139)) { + break; + } + $140 = HEAP32[$pNear>>2]|0; + $141 = (($140) + 32|0); + $142 = HEAP8[$141>>0]|0; + $143 = $142&255; + $144 = ($143|0)==(0); + if (!($144)) { + break; + } + $145 = HEAP32[$bDescDoclist>>2]|0; + $146 = ($145|0)!=(0); + $147 = $146 ? -1 : 1; + $148 = ($147|0)<(0); + $149 = $148 << 31 >> 31; + $150 = HEAP32[$pNear>>2]|0; + $151 = (($150) + 24|0); + $152 = $151; + $153 = $152; + $154 = HEAP32[$153>>2]|0; + $155 = (($152) + 4)|0; + $156 = $155; + $157 = HEAP32[$156>>2]|0; + $158 = HEAP32[$1>>2]|0; + $159 = (($158) + 32|0); + $160 = $159; + $161 = $160; + $162 = HEAP32[$161>>2]|0; + $163 = (($160) + 4)|0; + $164 = $163; + $165 = HEAP32[$164>>2]|0; + $166 = (_i64Subtract(($154|0),($157|0),($162|0),($165|0))|0); + $167 = tempRet0; + $168 = (___muldi3(($147|0),($149|0),($166|0),($167|0))|0); + $169 = tempRet0; + $170 = HEAP32[$iMul>>2]|0; + $171 = ($170|0)<(0); + $172 = $171 << 31 >> 31; + (___muldi3(($168|0),($169|0),($170|0),($172|0))|0); + $173 = tempRet0; + $174 = ($173|0)<(0); + if (!($174)) { + break; + } + HEAP32[$rc1>>2] = 0; + $175 = HEAP32[$1>>2]|0; + $176 = HEAP32[$2>>2]|0; + _fts3EvalNextRow($175,$176,$rc1); + $177 = HEAP32[$rc1>>2]|0; + $178 = ($177|0)!=(0); + if ($178) { + label = 30; + break; + } + $180 = HEAP32[$2>>2]|0; + $181 = (($180) + 24|0); + $182 = $181; + $183 = $182; + $184 = HEAP32[$183>>2]|0; + $185 = (($182) + 4)|0; + $186 = $185; + $187 = HEAP32[$186>>2]|0; + $188 = $iDocid; + $189 = $188; + HEAP32[$189>>2] = $184; + $190 = (($188) + 4)|0; + $191 = $190; + HEAP32[$191>>2] = $187; + $192 = HEAP32[$pPhrase>>2]|0; + $193 = (($192) + 28|0); + $194 = HEAP32[$193>>2]|0; + HEAP32[$pIter>>2] = $194; + } + if ((label|0) == 30) { + $179 = HEAP32[$rc1>>2]|0; + HEAP32[$0>>2] = $179; + $367 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($367|0); + } + $195 = HEAP32[$pPhrase>>2]|0; + $196 = (($195) + 4|0); + $197 = HEAP32[$196>>2]|0; + $198 = ($197|0)==(0); + $199 = $198&1; + $200 = $199&255; + HEAP8[$bEof>>0] = $200; + $201 = HEAP8[$bEof>>0]|0; + $202 = $201&255; + $203 = ($202|0)==(0); + L48: do { + if ($203) { + $204 = HEAP32[$1>>2]|0; + $205 = (($204) + 52|0); + $206 = HEAP8[$205>>0]|0; + $207 = $206&255; + $208 = HEAP32[$bDescDoclist>>2]|0; + $209 = ($207|0)==($208|0); + $210 = HEAP32[$pNear>>2]|0; + $211 = (($210) + 32|0); + $212 = HEAP8[$211>>0]|0; + $213 = ($212<<24>>24)!=(0); + if ($209) { + if ($213) { + $214 = HEAP32[$pPhrase>>2]|0; + $215 = (($214) + 4|0); + $216 = HEAP32[$215>>2]|0; + $217 = (($216) - 1)|0; + $218 = HEAP32[$pPhrase>>2]|0; + $219 = HEAP32[$218>>2]|0; + $220 = (($219) + ($217)|0); + HEAP32[$pIter>>2] = $220; + $221 = HEAP32[$pPhrase>>2]|0; + $222 = HEAP32[$221>>2]|0; + _fts3ReversePoslist($222,$pIter); + } + while(1) { + $223 = HEAP32[$pIter>>2]|0; + $224 = ($223|0)==(0|0); + if (!($224)) { + $225 = HEAP32[$bDescDoclist>>2]|0; + $226 = ($225|0)!=(0); + $227 = $226 ? -1 : 1; + $228 = ($227|0)<(0); + $229 = $228 << 31 >> 31; + $230 = $iDocid; + $231 = $230; + $232 = HEAP32[$231>>2]|0; + $233 = (($230) + 4)|0; + $234 = $233; + $235 = HEAP32[$234>>2]|0; + $236 = HEAP32[$1>>2]|0; + $237 = (($236) + 32|0); + $238 = $237; + $239 = $238; + $240 = HEAP32[$239>>2]|0; + $241 = (($238) + 4)|0; + $242 = $241; + $243 = HEAP32[$242>>2]|0; + $244 = (_i64Subtract(($232|0),($235|0),($240|0),($243|0))|0); + $245 = tempRet0; + $246 = (___muldi3(($227|0),($229|0),($244|0),($245|0))|0); + $247 = tempRet0; + $248 = ($247|0)>(0); + $249 = ($247|0)==(0); + $250 = ($246>>>0)>(0); + $251 = $249 & $250; + $252 = $248 | $251; + if (!($252)) { + break L48; + } + } + $253 = HEAP8[$bEof>>0]|0; + $254 = $253&255; + $255 = ($254|0)==(0); + if (!($255)) { + break L48; + } + $256 = HEAP32[$bDescDoclist>>2]|0; + $257 = HEAP32[$pPhrase>>2]|0; + $258 = HEAP32[$257>>2]|0; + $259 = HEAP32[$pPhrase>>2]|0; + $260 = (($259) + 4|0); + $261 = HEAP32[$260>>2]|0; + _sqlite3Fts3DoclistPrev($256,$258,$261,$pIter,$iDocid,$dummy,$bEof); + } + } else { + if ($213) { + HEAP32[$pIter>>2] = 0; + $262 = $iDocid; + $263 = $262; + HEAP32[$263>>2] = 0; + $264 = (($262) + 4)|0; + $265 = $264; + HEAP32[$265>>2] = 0; + } + while(1) { + $266 = HEAP32[$pIter>>2]|0; + $267 = ($266|0)==(0|0); + if (!($267)) { + $268 = HEAP32[$bDescDoclist>>2]|0; + $269 = ($268|0)!=(0); + $270 = $269 ? -1 : 1; + $271 = ($270|0)<(0); + $272 = $271 << 31 >> 31; + $273 = $iDocid; + $274 = $273; + $275 = HEAP32[$274>>2]|0; + $276 = (($273) + 4)|0; + $277 = $276; + $278 = HEAP32[$277>>2]|0; + $279 = HEAP32[$1>>2]|0; + $280 = (($279) + 32|0); + $281 = $280; + $282 = $281; + $283 = HEAP32[$282>>2]|0; + $284 = (($281) + 4)|0; + $285 = $284; + $286 = HEAP32[$285>>2]|0; + $287 = (_i64Subtract(($275|0),($278|0),($283|0),($286|0))|0); + $288 = tempRet0; + (___muldi3(($270|0),($272|0),($287|0),($288|0))|0); + $289 = tempRet0; + $290 = ($289|0)<(0); + if (!($290)) { + break L48; + } + } + $291 = HEAP8[$bEof>>0]|0; + $292 = $291&255; + $293 = ($292|0)==(0); + if (!($293)) { + break L48; + } + $294 = HEAP32[$bDescDoclist>>2]|0; + $295 = HEAP32[$pPhrase>>2]|0; + $296 = HEAP32[$295>>2]|0; + $297 = HEAP32[$pPhrase>>2]|0; + $298 = (($297) + 4|0); + $299 = HEAP32[$298>>2]|0; + _sqlite3Fts3DoclistNext($294,$296,$299,$pIter,$iDocid,$bEof); + } + } + } + } while(0); + $300 = HEAP8[$bEof>>0]|0; + $301 = $300&255; + $302 = ($301|0)!=(0); + if (!($302)) { + $303 = $iDocid; + $304 = $303; + $305 = HEAP32[$304>>2]|0; + $306 = (($303) + 4)|0; + $307 = $306; + $308 = HEAP32[$307>>2]|0; + $309 = HEAP32[$1>>2]|0; + $310 = (($309) + 32|0); + $311 = $310; + $312 = $311; + $313 = HEAP32[$312>>2]|0; + $314 = (($311) + 4)|0; + $315 = $314; + $316 = HEAP32[$315>>2]|0; + $317 = ($305|0)!=($313|0); + $318 = ($308|0)!=($316|0); + $319 = $317 | $318; + if (!($319)) { + break; + } + } + HEAP32[$pIter>>2] = 0; + } + } while(0); + $320 = HEAP32[$pIter>>2]|0; + $321 = ($320|0)==(0|0); + if ($321) { + HEAP32[$0>>2] = 0; + $367 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($367|0); + } + $322 = HEAP32[$pIter>>2]|0; + $323 = HEAP8[$322>>0]|0; + $324 = $323 << 24 >> 24; + $325 = ($324|0)==(1); + if ($325) { + $326 = HEAP32[$pIter>>2]|0; + $327 = (($326) + 1|0); + HEAP32[$pIter>>2] = $327; + $328 = HEAP32[$pIter>>2]|0; + $329 = HEAP8[$328>>0]|0; + $330 = $329&255; + $331 = $330 & 128; + $332 = ($331|0)!=(0); + $333 = HEAP32[$pIter>>2]|0; + if ($332) { + $334 = (_sqlite3Fts3GetVarint32($333,$iThis)|0); + $339 = $334; + } else { + $335 = HEAP8[$333>>0]|0; + $336 = $335&255; + HEAP32[$iThis>>2] = $336; + $339 = 1; + } + $337 = HEAP32[$pIter>>2]|0; + $338 = (($337) + ($339)|0); + HEAP32[$pIter>>2] = $338; + } else { + HEAP32[$iThis>>2] = 0; + } + while(1) { + $340 = HEAP32[$iThis>>2]|0; + $341 = HEAP32[$3>>2]|0; + $342 = ($340|0)<($341|0); + if (!($342)) { + label = 64; + break; + } + _fts3ColumnlistCopy(0,$pIter); + $343 = HEAP32[$pIter>>2]|0; + $344 = HEAP8[$343>>0]|0; + $345 = $344 << 24 >> 24; + $346 = ($345|0)==(0); + if ($346) { + label = 59; + break; + } + $347 = HEAP32[$pIter>>2]|0; + $348 = (($347) + 1|0); + HEAP32[$pIter>>2] = $348; + $349 = HEAP32[$pIter>>2]|0; + $350 = HEAP8[$349>>0]|0; + $351 = $350&255; + $352 = $351 & 128; + $353 = ($352|0)!=(0); + $354 = HEAP32[$pIter>>2]|0; + if ($353) { + $355 = (_sqlite3Fts3GetVarint32($354,$iThis)|0); + $360 = $355; + } else { + $356 = HEAP8[$354>>0]|0; + $357 = $356&255; + HEAP32[$iThis>>2] = $357; + $360 = 1; + } + $358 = HEAP32[$pIter>>2]|0; + $359 = (($358) + ($360)|0); + HEAP32[$pIter>>2] = $359; + } + if ((label|0) == 59) { + HEAP32[$0>>2] = 0; + $367 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($367|0); + } + else if ((label|0) == 64) { + $361 = HEAP32[$3>>2]|0; + $362 = HEAP32[$iThis>>2]|0; + $363 = ($361|0)==($362|0); + $364 = HEAP32[$pIter>>2]|0; + $365 = $363 ? $364 : 0; + $366 = HEAP32[$4>>2]|0; + HEAP32[$366>>2] = $365; + HEAP32[$0>>2] = 0; + $367 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($367|0); + } + return 0|0; +} +function _fts3ColumnlistCount($ppCollist) { + $ppCollist = $ppCollist|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $c = 0, $nEntry = 0, $pEnd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $pEnd = sp; + $c = sp + 12|0; + $nEntry = sp + 4|0; + HEAP32[$0>>2] = $ppCollist; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$pEnd>>2] = $2; + HEAP8[$c>>0] = 0; + HEAP32[$nEntry>>2] = 0; + while(1) { + $3 = HEAP32[$pEnd>>2]|0; + $4 = HEAP8[$3>>0]|0; + $5 = $4 << 24 >> 24; + $6 = HEAP8[$c>>0]|0; + $7 = $6 << 24 >> 24; + $8 = $5 | $7; + $9 = 254 & $8; + $10 = ($9|0)!=(0); + $11 = HEAP32[$pEnd>>2]|0; + if (!($10)) { + break; + } + $12 = (($11) + 1|0); + HEAP32[$pEnd>>2] = $12; + $13 = HEAP8[$11>>0]|0; + $14 = $13 << 24 >> 24; + $15 = $14 & 128; + $16 = $15&255; + HEAP8[$c>>0] = $16; + $17 = HEAP8[$c>>0]|0; + $18 = ($17<<24>>24)!=(0); + if ($18) { + continue; + } + $19 = HEAP32[$nEntry>>2]|0; + $20 = (($19) + 1)|0; + HEAP32[$nEntry>>2] = $20; + } + $21 = HEAP32[$0>>2]|0; + HEAP32[$21>>2] = $11; + $22 = HEAP32[$nEntry>>2]|0; + STACKTOP = sp;return ($22|0); +} +function _fts3EvalRestart($pCsr,$pExpr,$pRc) { + $pCsr = $pCsr|0; + $pExpr = $pExpr|0; + $pRc = $pRc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pPhrase = 0, $pToken = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $pPhrase = sp + 8|0; + $i = sp + 12|0; + $pToken = sp + 16|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $pRc; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)==(0); + if (!($7)) { + STACKTOP = sp;return; + } + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 20|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$pPhrase>>2] = $10; + $11 = HEAP32[$pPhrase>>2]|0; + $12 = ($11|0)!=(0|0); + if ($12) { + $13 = HEAP32[$pPhrase>>2]|0; + _fts3EvalInvalidatePoslist($13); + $14 = HEAP32[$pPhrase>>2]|0; + $15 = (($14) + 40|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(0); + if ($17) { + HEAP32[$i>>2] = 0; + while(1) { + $18 = HEAP32[$i>>2]|0; + $19 = HEAP32[$pPhrase>>2]|0; + $20 = (($19) + 48|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($18|0)<($21|0); + if (!($22)) { + break; + } + $23 = HEAP32[$i>>2]|0; + $24 = HEAP32[$pPhrase>>2]|0; + $25 = (($24) + 56|0); + $26 = (($25) + (($23*24)|0)|0); + HEAP32[$pToken>>2] = $26; + $27 = HEAP32[$pToken>>2]|0; + $28 = (($27) + 20|0); + $29 = HEAP32[$28>>2]|0; + $30 = ($29|0)!=(0|0); + if ($30) { + $31 = HEAP32[$pToken>>2]|0; + $32 = (($31) + 20|0); + $33 = HEAP32[$32>>2]|0; + (_sqlite3Fts3MsrIncrRestart($33)|0); + } + $34 = HEAP32[$i>>2]|0; + $35 = (($34) + 1)|0; + HEAP32[$i>>2] = $35; + } + $36 = HEAP32[$0>>2]|0; + $37 = HEAP32[$pPhrase>>2]|0; + $38 = (_fts3EvalPhraseStart($36,0,$37)|0); + $39 = HEAP32[$2>>2]|0; + HEAP32[$39>>2] = $38; + } + $40 = HEAP32[$pPhrase>>2]|0; + $41 = (($40) + 8|0); + HEAP32[$41>>2] = 0; + $42 = HEAP32[$pPhrase>>2]|0; + $43 = (($42) + 16|0); + $44 = $43; + $45 = $44; + HEAP32[$45>>2] = 0; + $46 = (($44) + 4)|0; + $47 = $46; + HEAP32[$47>>2] = 0; + } + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + 24|0); + $50 = $49; + $51 = $50; + HEAP32[$51>>2] = 0; + $52 = (($50) + 4)|0; + $53 = $52; + HEAP32[$53>>2] = 0; + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 32|0); + HEAP8[$55>>0] = 0; + $56 = HEAP32[$1>>2]|0; + $57 = (($56) + 33|0); + HEAP8[$57>>0] = 0; + $58 = HEAP32[$0>>2]|0; + $59 = HEAP32[$1>>2]|0; + $60 = (($59) + 12|0); + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$2>>2]|0; + _fts3EvalRestart($58,$61,$62); + $63 = HEAP32[$0>>2]|0; + $64 = HEAP32[$1>>2]|0; + $65 = (($64) + 16|0); + $66 = HEAP32[$65>>2]|0; + $67 = HEAP32[$2>>2]|0; + _fts3EvalRestart($63,$66,$67); + STACKTOP = sp;return; +} +function _fts3EvalNextRow($pCsr,$pExpr,$pRc) { + $pCsr = $pCsr|0; + $pExpr = $pExpr|0; + $pRc = $pRc|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; + var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; + var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; + var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bDescDoclist = 0, $iCmp = 0, $iDiff = 0, $pLeft = 0, $pLeft1 = 0, $pLeft3 = 0, $pPhrase = 0, $pRight = 0, $pRight2 = 0, $pRight4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 56|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $bDescDoclist = sp + 44|0; + $pLeft = sp + 40|0; + $pRight = sp + 36|0; + $iDiff = sp + 8|0; + $pLeft1 = sp + 24|0; + $pRight2 = sp + 20|0; + $iCmp = sp; + $pLeft3 = sp + 16|0; + $pRight4 = sp + 28|0; + $pPhrase = sp + 32|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $pRc; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)==(0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 52|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + HEAP32[$bDescDoclist>>2] = $9; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 33|0); + HEAP8[$11>>0] = 1; + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$12>>2]|0; + if ((($13|0) == 2)) { + $339 = HEAP32[$1>>2]|0; + $340 = (($339) + 12|0); + $341 = HEAP32[$340>>2]|0; + HEAP32[$pLeft3>>2] = $341; + $342 = HEAP32[$1>>2]|0; + $343 = (($342) + 16|0); + $344 = HEAP32[$343>>2]|0; + HEAP32[$pRight4>>2] = $344; + $345 = HEAP32[$pRight4>>2]|0; + $346 = (($345) + 33|0); + $347 = HEAP8[$346>>0]|0; + $348 = $347&255; + $349 = ($348|0)==(0); + if ($349) { + $350 = HEAP32[$0>>2]|0; + $351 = HEAP32[$pRight4>>2]|0; + $352 = HEAP32[$2>>2]|0; + _fts3EvalNextRow($350,$351,$352); + } + $353 = HEAP32[$0>>2]|0; + $354 = HEAP32[$pLeft3>>2]|0; + $355 = HEAP32[$2>>2]|0; + _fts3EvalNextRow($353,$354,$355); + $356 = HEAP32[$pLeft3>>2]|0; + $357 = (($356) + 32|0); + $358 = HEAP8[$357>>0]|0; + $359 = $358&255; + $360 = ($359|0)==(0); + L11: do { + if ($360) { + while(1) { + $361 = HEAP32[$2>>2]|0; + $362 = HEAP32[$361>>2]|0; + $363 = ($362|0)!=(0); + if ($363) { + break L11; + } + $364 = HEAP32[$pRight4>>2]|0; + $365 = (($364) + 32|0); + $366 = HEAP8[$365>>0]|0; + $367 = ($366<<24>>24)!=(0); + if ($367) { + break L11; + } + $368 = HEAP32[$bDescDoclist>>2]|0; + $369 = ($368|0)!=(0); + $370 = $369 ? -1 : 1; + $371 = ($370|0)<(0); + $372 = $371 << 31 >> 31; + $373 = HEAP32[$pLeft3>>2]|0; + $374 = (($373) + 24|0); + $375 = $374; + $376 = $375; + $377 = HEAP32[$376>>2]|0; + $378 = (($375) + 4)|0; + $379 = $378; + $380 = HEAP32[$379>>2]|0; + $381 = HEAP32[$pRight4>>2]|0; + $382 = (($381) + 24|0); + $383 = $382; + $384 = $383; + $385 = HEAP32[$384>>2]|0; + $386 = (($383) + 4)|0; + $387 = $386; + $388 = HEAP32[$387>>2]|0; + $389 = (_i64Subtract(($377|0),($380|0),($385|0),($388|0))|0); + $390 = tempRet0; + $391 = (___muldi3(($370|0),($372|0),($389|0),($390|0))|0); + $392 = tempRet0; + $393 = ($392|0)>(0); + $394 = ($392|0)==(0); + $395 = ($391>>>0)>(0); + $396 = $394 & $395; + $397 = $393 | $396; + if (!($397)) { + break L11; + } + $398 = HEAP32[$0>>2]|0; + $399 = HEAP32[$pRight4>>2]|0; + $400 = HEAP32[$2>>2]|0; + _fts3EvalNextRow($398,$399,$400); + } + } + } while(0); + $401 = HEAP32[$pLeft3>>2]|0; + $402 = (($401) + 24|0); + $403 = $402; + $404 = $403; + $405 = HEAP32[$404>>2]|0; + $406 = (($403) + 4)|0; + $407 = $406; + $408 = HEAP32[$407>>2]|0; + $409 = HEAP32[$1>>2]|0; + $410 = (($409) + 24|0); + $411 = $410; + $412 = $411; + HEAP32[$412>>2] = $405; + $413 = (($411) + 4)|0; + $414 = $413; + HEAP32[$414>>2] = $408; + $415 = HEAP32[$pLeft3>>2]|0; + $416 = (($415) + 32|0); + $417 = HEAP8[$416>>0]|0; + $418 = HEAP32[$1>>2]|0; + $419 = (($418) + 32|0); + HEAP8[$419>>0] = $417; + STACKTOP = sp;return; + } else if ((($13|0) == 4)) { + $165 = HEAP32[$1>>2]|0; + $166 = (($165) + 12|0); + $167 = HEAP32[$166>>2]|0; + HEAP32[$pLeft1>>2] = $167; + $168 = HEAP32[$1>>2]|0; + $169 = (($168) + 16|0); + $170 = HEAP32[$169>>2]|0; + HEAP32[$pRight2>>2] = $170; + $171 = HEAP32[$bDescDoclist>>2]|0; + $172 = ($171|0)!=(0); + $173 = $172 ? -1 : 1; + $174 = ($173|0)<(0); + $175 = $174 << 31 >> 31; + $176 = HEAP32[$pLeft1>>2]|0; + $177 = (($176) + 24|0); + $178 = $177; + $179 = $178; + $180 = HEAP32[$179>>2]|0; + $181 = (($178) + 4)|0; + $182 = $181; + $183 = HEAP32[$182>>2]|0; + $184 = HEAP32[$pRight2>>2]|0; + $185 = (($184) + 24|0); + $186 = $185; + $187 = $186; + $188 = HEAP32[$187>>2]|0; + $189 = (($186) + 4)|0; + $190 = $189; + $191 = HEAP32[$190>>2]|0; + $192 = (_i64Subtract(($180|0),($183|0),($188|0),($191|0))|0); + $193 = tempRet0; + $194 = (___muldi3(($173|0),($175|0),($192|0),($193|0))|0); + $195 = tempRet0; + $196 = $iCmp; + $197 = $196; + HEAP32[$197>>2] = $194; + $198 = (($196) + 4)|0; + $199 = $198; + HEAP32[$199>>2] = $195; + $200 = HEAP32[$pRight2>>2]|0; + $201 = (($200) + 32|0); + $202 = HEAP8[$201>>0]|0; + $203 = $202&255; + $204 = ($203|0)!=(0); + L20: do { + if ($204) { + label = 21; + } else { + $205 = HEAP32[$pLeft1>>2]|0; + $206 = (($205) + 32|0); + $207 = HEAP8[$206>>0]|0; + $208 = $207&255; + $209 = ($208|0)==(0); + if ($209) { + $210 = $iCmp; + $211 = $210; + $212 = HEAP32[$211>>2]|0; + $213 = (($210) + 4)|0; + $214 = $213; + $215 = HEAP32[$214>>2]|0; + $216 = ($215|0)<(0); + if ($216) { + label = 21; + break; + } + } + $220 = HEAP32[$pLeft1>>2]|0; + $221 = (($220) + 32|0); + $222 = HEAP8[$221>>0]|0; + $223 = $222&255; + $224 = ($223|0)!=(0); + do { + if (!($224)) { + $225 = HEAP32[$pRight2>>2]|0; + $226 = (($225) + 32|0); + $227 = HEAP8[$226>>0]|0; + $228 = $227&255; + $229 = ($228|0)==(0); + if ($229) { + $230 = $iCmp; + $231 = $230; + $232 = HEAP32[$231>>2]|0; + $233 = (($230) + 4)|0; + $234 = $233; + $235 = HEAP32[$234>>2]|0; + $236 = ($235|0)>(0); + $237 = ($235|0)==(0); + $238 = ($232>>>0)>(0); + $239 = $237 & $238; + $240 = $236 | $239; + if ($240) { + break; + } + } + $244 = HEAP32[$0>>2]|0; + $245 = HEAP32[$pLeft1>>2]|0; + $246 = HEAP32[$2>>2]|0; + _fts3EvalNextRow($244,$245,$246); + $247 = HEAP32[$0>>2]|0; + $248 = HEAP32[$pRight2>>2]|0; + $249 = HEAP32[$2>>2]|0; + _fts3EvalNextRow($247,$248,$249); + break L20; + } + } while(0); + $241 = HEAP32[$0>>2]|0; + $242 = HEAP32[$pRight2>>2]|0; + $243 = HEAP32[$2>>2]|0; + _fts3EvalNextRow($241,$242,$243); + } + } while(0); + if ((label|0) == 21) { + $217 = HEAP32[$0>>2]|0; + $218 = HEAP32[$pLeft1>>2]|0; + $219 = HEAP32[$2>>2]|0; + _fts3EvalNextRow($217,$218,$219); + } + $250 = HEAP32[$pLeft1>>2]|0; + $251 = (($250) + 32|0); + $252 = HEAP8[$251>>0]|0; + $253 = $252&255; + $254 = ($253|0)!=(0); + if ($254) { + $255 = HEAP32[$pRight2>>2]|0; + $256 = (($255) + 32|0); + $257 = HEAP8[$256>>0]|0; + $258 = $257&255; + $259 = ($258|0)!=(0); + $261 = $259; + } else { + $261 = 0; + } + $260 = $261&1; + $262 = $260&255; + $263 = HEAP32[$1>>2]|0; + $264 = (($263) + 32|0); + HEAP8[$264>>0] = $262; + $265 = HEAP32[$bDescDoclist>>2]|0; + $266 = ($265|0)!=(0); + $267 = $266 ? -1 : 1; + $268 = ($267|0)<(0); + $269 = $268 << 31 >> 31; + $270 = HEAP32[$pLeft1>>2]|0; + $271 = (($270) + 24|0); + $272 = $271; + $273 = $272; + $274 = HEAP32[$273>>2]|0; + $275 = (($272) + 4)|0; + $276 = $275; + $277 = HEAP32[$276>>2]|0; + $278 = HEAP32[$pRight2>>2]|0; + $279 = (($278) + 24|0); + $280 = $279; + $281 = $280; + $282 = HEAP32[$281>>2]|0; + $283 = (($280) + 4)|0; + $284 = $283; + $285 = HEAP32[$284>>2]|0; + $286 = (_i64Subtract(($274|0),($277|0),($282|0),($285|0))|0); + $287 = tempRet0; + $288 = (___muldi3(($267|0),($269|0),($286|0),($287|0))|0); + $289 = tempRet0; + $290 = $iCmp; + $291 = $290; + HEAP32[$291>>2] = $288; + $292 = (($290) + 4)|0; + $293 = $292; + HEAP32[$293>>2] = $289; + $294 = HEAP32[$pRight2>>2]|0; + $295 = (($294) + 32|0); + $296 = HEAP8[$295>>0]|0; + $297 = $296&255; + $298 = ($297|0)!=(0); + do { + if (!($298)) { + $299 = HEAP32[$pLeft1>>2]|0; + $300 = (($299) + 32|0); + $301 = HEAP8[$300>>0]|0; + $302 = $301&255; + $303 = ($302|0)==(0); + if ($303) { + $304 = $iCmp; + $305 = $304; + $306 = HEAP32[$305>>2]|0; + $307 = (($304) + 4)|0; + $308 = $307; + $309 = HEAP32[$308>>2]|0; + $310 = ($309|0)<(0); + if ($310) { + break; + } + } + $325 = HEAP32[$pRight2>>2]|0; + $326 = (($325) + 24|0); + $327 = $326; + $328 = $327; + $329 = HEAP32[$328>>2]|0; + $330 = (($327) + 4)|0; + $331 = $330; + $332 = HEAP32[$331>>2]|0; + $333 = HEAP32[$1>>2]|0; + $334 = (($333) + 24|0); + $335 = $334; + $336 = $335; + HEAP32[$336>>2] = $329; + $337 = (($335) + 4)|0; + $338 = $337; + HEAP32[$338>>2] = $332; + STACKTOP = sp;return; + } + } while(0); + $311 = HEAP32[$pLeft1>>2]|0; + $312 = (($311) + 24|0); + $313 = $312; + $314 = $313; + $315 = HEAP32[$314>>2]|0; + $316 = (($313) + 4)|0; + $317 = $316; + $318 = HEAP32[$317>>2]|0; + $319 = HEAP32[$1>>2]|0; + $320 = (($319) + 24|0); + $321 = $320; + $322 = $321; + HEAP32[$322>>2] = $315; + $323 = (($321) + 4)|0; + $324 = $323; + HEAP32[$324>>2] = $318; + STACKTOP = sp;return; + } else if ((($13|0) == 3) | (($13|0) == 1)) { + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 12|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$pLeft>>2] = $16; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 16|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$pRight>>2] = $19; + $20 = HEAP32[$pLeft>>2]|0; + $21 = (($20) + 34|0); + $22 = HEAP8[$21>>0]|0; + $23 = ($22<<24>>24)!=(0); + if ($23) { + $24 = HEAP32[$0>>2]|0; + $25 = HEAP32[$pRight>>2]|0; + $26 = HEAP32[$2>>2]|0; + _fts3EvalNextRow($24,$25,$26); + $27 = HEAP32[$pRight>>2]|0; + $28 = (($27) + 24|0); + $29 = $28; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = (($29) + 4)|0; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 24|0); + $37 = $36; + $38 = $37; + HEAP32[$38>>2] = $31; + $39 = (($37) + 4)|0; + $40 = $39; + HEAP32[$40>>2] = $34; + $41 = HEAP32[$pRight>>2]|0; + $42 = (($41) + 32|0); + $43 = HEAP8[$42>>0]|0; + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 32|0); + HEAP8[$45>>0] = $43; + STACKTOP = sp;return; + } + $46 = HEAP32[$pRight>>2]|0; + $47 = (($46) + 34|0); + $48 = HEAP8[$47>>0]|0; + $49 = ($48<<24>>24)!=(0); + $50 = HEAP32[$0>>2]|0; + $51 = HEAP32[$pLeft>>2]|0; + $52 = HEAP32[$2>>2]|0; + _fts3EvalNextRow($50,$51,$52); + if ($49) { + $53 = HEAP32[$pLeft>>2]|0; + $54 = (($53) + 24|0); + $55 = $54; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = (($55) + 4)|0; + $59 = $58; + $60 = HEAP32[$59>>2]|0; + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 24|0); + $63 = $62; + $64 = $63; + HEAP32[$64>>2] = $57; + $65 = (($63) + 4)|0; + $66 = $65; + HEAP32[$66>>2] = $60; + $67 = HEAP32[$pLeft>>2]|0; + $68 = (($67) + 32|0); + $69 = HEAP8[$68>>0]|0; + $70 = HEAP32[$1>>2]|0; + $71 = (($70) + 32|0); + HEAP8[$71>>0] = $69; + STACKTOP = sp;return; + } + $72 = HEAP32[$0>>2]|0; + $73 = HEAP32[$pRight>>2]|0; + $74 = HEAP32[$2>>2]|0; + _fts3EvalNextRow($72,$73,$74); + while(1) { + $75 = HEAP32[$pLeft>>2]|0; + $76 = (($75) + 32|0); + $77 = HEAP8[$76>>0]|0; + $78 = ($77<<24>>24)!=(0); + if ($78) { + break; + } + $79 = HEAP32[$pRight>>2]|0; + $80 = (($79) + 32|0); + $81 = HEAP8[$80>>0]|0; + $82 = ($81<<24>>24)!=(0); + if ($82) { + break; + } + $83 = HEAP32[$2>>2]|0; + $84 = HEAP32[$83>>2]|0; + $85 = ($84|0)==(0); + if (!($85)) { + break; + } + $86 = HEAP32[$bDescDoclist>>2]|0; + $87 = ($86|0)!=(0); + $88 = $87 ? -1 : 1; + $89 = ($88|0)<(0); + $90 = $89 << 31 >> 31; + $91 = HEAP32[$pLeft>>2]|0; + $92 = (($91) + 24|0); + $93 = $92; + $94 = $93; + $95 = HEAP32[$94>>2]|0; + $96 = (($93) + 4)|0; + $97 = $96; + $98 = HEAP32[$97>>2]|0; + $99 = HEAP32[$pRight>>2]|0; + $100 = (($99) + 24|0); + $101 = $100; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = (($101) + 4)|0; + $105 = $104; + $106 = HEAP32[$105>>2]|0; + $107 = (_i64Subtract(($95|0),($98|0),($103|0),($106|0))|0); + $108 = tempRet0; + $109 = (___muldi3(($88|0),($90|0),($107|0),($108|0))|0); + $110 = tempRet0; + $111 = $iDiff; + $112 = $111; + HEAP32[$112>>2] = $109; + $113 = (($111) + 4)|0; + $114 = $113; + HEAP32[$114>>2] = $110; + $115 = $iDiff; + $116 = $115; + $117 = HEAP32[$116>>2]|0; + $118 = (($115) + 4)|0; + $119 = $118; + $120 = HEAP32[$119>>2]|0; + $121 = ($117|0)==(0); + $122 = ($120|0)==(0); + $123 = $121 & $122; + if ($123) { + break; + } + $124 = $iDiff; + $125 = $124; + $126 = HEAP32[$125>>2]|0; + $127 = (($124) + 4)|0; + $128 = $127; + $129 = HEAP32[$128>>2]|0; + $130 = ($129|0)<(0); + $131 = HEAP32[$0>>2]|0; + if ($130) { + $132 = HEAP32[$pLeft>>2]|0; + $133 = HEAP32[$2>>2]|0; + _fts3EvalNextRow($131,$132,$133); + continue; + } else { + $134 = HEAP32[$pRight>>2]|0; + $135 = HEAP32[$2>>2]|0; + _fts3EvalNextRow($131,$134,$135); + continue; + } + } + $136 = HEAP32[$pLeft>>2]|0; + $137 = (($136) + 24|0); + $138 = $137; + $139 = $138; + $140 = HEAP32[$139>>2]|0; + $141 = (($138) + 4)|0; + $142 = $141; + $143 = HEAP32[$142>>2]|0; + $144 = HEAP32[$1>>2]|0; + $145 = (($144) + 24|0); + $146 = $145; + $147 = $146; + HEAP32[$147>>2] = $140; + $148 = (($146) + 4)|0; + $149 = $148; + HEAP32[$149>>2] = $143; + $150 = HEAP32[$pLeft>>2]|0; + $151 = (($150) + 32|0); + $152 = HEAP8[$151>>0]|0; + $153 = $152&255; + $154 = ($153|0)!=(0); + if ($154) { + $161 = 1; + } else { + $155 = HEAP32[$pRight>>2]|0; + $156 = (($155) + 32|0); + $157 = HEAP8[$156>>0]|0; + $158 = $157&255; + $159 = ($158|0)!=(0); + $161 = $159; + } + $160 = $161&1; + $162 = $160&255; + $163 = HEAP32[$1>>2]|0; + $164 = (($163) + 32|0); + HEAP8[$164>>0] = $162; + STACKTOP = sp;return; + } else { + $420 = HEAP32[$1>>2]|0; + $421 = (($420) + 20|0); + $422 = HEAP32[$421>>2]|0; + HEAP32[$pPhrase>>2] = $422; + $423 = HEAP32[$pPhrase>>2]|0; + _fts3EvalInvalidatePoslist($423); + $424 = HEAP32[$0>>2]|0; + $425 = HEAP32[$pPhrase>>2]|0; + $426 = HEAP32[$1>>2]|0; + $427 = (($426) + 32|0); + $428 = (_fts3EvalPhraseNext($424,$425,$427)|0); + $429 = HEAP32[$2>>2]|0; + HEAP32[$429>>2] = $428; + $430 = HEAP32[$pPhrase>>2]|0; + $431 = (($430) + 16|0); + $432 = $431; + $433 = $432; + $434 = HEAP32[$433>>2]|0; + $435 = (($432) + 4)|0; + $436 = $435; + $437 = HEAP32[$436>>2]|0; + $438 = HEAP32[$1>>2]|0; + $439 = (($438) + 24|0); + $440 = $439; + $441 = $440; + HEAP32[$441>>2] = $434; + $442 = (($440) + 4)|0; + $443 = $442; + HEAP32[$443>>2] = $437; + STACKTOP = sp;return; + } +} +function _sqlite3Fts3DoclistNext($bDescIdx,$aDoclist,$nDoclist,$ppIter,$piDocid,$pbEof) { + $bDescIdx = $bDescIdx|0; + $aDoclist = $aDoclist|0; + $nDoclist = $nDoclist|0; + $ppIter = $ppIter|0; + $piDocid = $piDocid|0; + $pbEof = $pbEof|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iVar = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $4 = sp + 16|0; + $5 = sp + 20|0; + $p = sp + 24|0; + $iVar = sp; + HEAP32[$0>>2] = $bDescIdx; + HEAP32[$1>>2] = $aDoclist; + HEAP32[$2>>2] = $nDoclist; + HEAP32[$3>>2] = $ppIter; + HEAP32[$4>>2] = $piDocid; + HEAP32[$5>>2] = $pbEof; + $6 = HEAP32[$3>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$p>>2] = $7; + $8 = HEAP32[$p>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + $10 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $10; + $11 = HEAP32[$p>>2]|0; + $12 = HEAP32[$4>>2]|0; + $13 = (_sqlite3Fts3GetVarint($11,$12)|0); + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + ($13)|0); + HEAP32[$p>>2] = $15; + $52 = HEAP32[$p>>2]|0; + $53 = HEAP32[$3>>2]|0; + HEAP32[$53>>2] = $52; + STACKTOP = sp;return; + } + _fts3PoslistCopy(0,$p); + $16 = HEAP32[$p>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + ($17)|0); + $20 = ($16>>>0)>=($19>>>0); + if ($20) { + $21 = HEAP32[$5>>2]|0; + HEAP8[$21>>0] = 1; + $52 = HEAP32[$p>>2]|0; + $53 = HEAP32[$3>>2]|0; + HEAP32[$53>>2] = $52; + STACKTOP = sp;return; + } else { + $22 = HEAP32[$p>>2]|0; + $23 = (_sqlite3Fts3GetVarint($22,$iVar)|0); + $24 = HEAP32[$p>>2]|0; + $25 = (($24) + ($23)|0); + HEAP32[$p>>2] = $25; + $26 = HEAP32[$0>>2]|0; + $27 = ($26|0)!=(0); + $28 = $27 ? -1 : 1; + $29 = ($28|0)<(0); + $30 = $29 << 31 >> 31; + $31 = $iVar; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (___muldi3(($28|0),($30|0),($33|0),($36|0))|0); + $38 = tempRet0; + $39 = HEAP32[$4>>2]|0; + $40 = $39; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (($40) + 4)|0; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = (_i64Add(($42|0),($45|0),($37|0),($38|0))|0); + $47 = tempRet0; + $48 = $39; + $49 = $48; + HEAP32[$49>>2] = $46; + $50 = (($48) + 4)|0; + $51 = $50; + HEAP32[$51>>2] = $47; + $52 = HEAP32[$p>>2]|0; + $53 = HEAP32[$3>>2]|0; + HEAP32[$53>>2] = $52; + STACKTOP = sp;return; + } +} +function _fts3EvalInvalidatePoslist($pPhrase) { + $pPhrase = $pPhrase|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPhrase; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 24|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0); + if ($4) { + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 28|0); + $7 = HEAP32[$6>>2]|0; + _sqlite3_free($7); + } + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 28|0); + HEAP32[$9>>2] = 0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 32|0); + HEAP32[$11>>2] = 0; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 24|0); + HEAP32[$13>>2] = 0; + STACKTOP = sp;return; +} +function _fts3EvalPhraseNext($pCsr,$p,$pbEof) { + $pCsr = $pCsr|0; + $p = $p|0; + $pbEof = $pbEof|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDL = 0, $pTab = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $pDL = sp + 12|0; + $pTab = sp + 16|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pbEof; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$1>>2]|0; + HEAP32[$pDL>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$pTab>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 40|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0); + $10 = HEAP32[$0>>2]|0; + if ($9) { + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = (_fts3EvalIncrPhraseNext($10,$11,$12)|0); + HEAP32[$rc>>2] = $13; + $50 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($50|0); + } + $14 = (($10) + 52|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = HEAP32[$pTab>>2]|0; + $18 = (($17) + 231|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = ($16|0)!=($20|0); + if ($21) { + $22 = HEAP32[$pDL>>2]|0; + $23 = (($22) + 4|0); + $24 = HEAP32[$23>>2]|0; + $25 = ($24|0)!=(0); + if ($25) { + $26 = HEAP32[$pTab>>2]|0; + $27 = (($26) + 231|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = HEAP32[$pDL>>2]|0; + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$pDL>>2]|0; + $33 = (($32) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$pDL>>2]|0; + $36 = (($35) + 8|0); + $37 = HEAP32[$pDL>>2]|0; + $38 = (($37) + 16|0); + $39 = HEAP32[$pDL>>2]|0; + $40 = (($39) + 32|0); + $41 = HEAP32[$2>>2]|0; + _sqlite3Fts3DoclistPrev($29,$31,$34,$36,$38,$40,$41); + $42 = HEAP32[$pDL>>2]|0; + $43 = (($42) + 8|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$pDL>>2]|0; + $46 = (($45) + 28|0); + HEAP32[$46>>2] = $44; + $50 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($50|0); + } + } + $47 = HEAP32[$pTab>>2]|0; + $48 = HEAP32[$pDL>>2]|0; + $49 = HEAP32[$2>>2]|0; + _fts3EvalDlPhraseNext($47,$48,$49); + $50 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($50|0); +} +function _fts3EvalIncrPhraseNext($pCsr,$p,$pbEof) { + $pCsr = $pCsr|0; + $p = $p|0; + $pbEof = $pbEof|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $a = 0, $aDoclist = 0, $bDescDoclist = 0, $bEof = 0, $bMaxSet = 0, $i = 0, $iMax = 0, $nByte = 0, $nDist = 0, $nList = 0, $pDL = 0, $pL = 0, $pOut = 0, $pR = 0, $pTab = 0, $rc = 0, $res = 0, dest = 0, label = 0, sp = 0; + var stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 192|0; + $0 = sp + 172|0; + $1 = sp + 168|0; + $2 = sp + 164|0; + $3 = sp + 160|0; + $rc = sp + 156|0; + $pDL = sp + 152|0; + $pTab = sp + 148|0; + $bEof = sp + 176|0; + $bDescDoclist = sp + 144|0; + $a = sp; + $bMaxSet = sp + 112|0; + $iMax = sp + 96|0; + $i = sp + 104|0; + $nList = sp + 108|0; + $nByte = sp + 116|0; + $aDoclist = sp + 120|0; + $pL = sp + 124|0; + $pR = sp + 128|0; + $pOut = sp + 132|0; + $nDist = sp + 136|0; + $res = sp + 140|0; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $pbEof; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$2>>2]|0; + HEAP32[$pDL>>2] = $4; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$pTab>>2] = $6; + HEAP8[$bEof>>0] = 0; + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 48|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)==(1); + if ($10) { + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 40|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(0); + if ($14) { + $15 = HEAP32[$pTab>>2]|0; + $16 = HEAP32[$2>>2]|0; + $17 = (($16) + 56|0); + $18 = (($17) + 20|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$pDL>>2]|0; + $21 = (($20) + 16|0); + $22 = HEAP32[$pDL>>2]|0; + $23 = (($22) + 28|0); + $24 = HEAP32[$pDL>>2]|0; + $25 = (($24) + 32|0); + $26 = (_sqlite3Fts3MsrIncrNext($15,$19,$21,$23,$25)|0); + HEAP32[$rc>>2] = $26; + $27 = HEAP32[$pDL>>2]|0; + $28 = (($27) + 28|0); + $29 = HEAP32[$28>>2]|0; + $30 = ($29|0)==(0|0); + if ($30) { + HEAP8[$bEof>>0] = 1; + } + } else { + label = 5; + } + } else { + label = 5; + } + L5: do { + if ((label|0) == 5) { + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 52|0); + $33 = HEAP8[$32>>0]|0; + $34 = $33&255; + HEAP32[$bDescDoclist>>2] = $34; + dest=$a+0|0; stop=dest+96|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + while(1) { + $35 = HEAP8[$bEof>>0]|0; + $36 = $35&255; + $37 = ($36|0)==(0); + if (!($37)) { + break L5; + } + HEAP32[$bMaxSet>>2] = 0; + $38 = $iMax; + $39 = $38; + HEAP32[$39>>2] = 0; + $40 = (($38) + 4)|0; + $41 = $40; + HEAP32[$41>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $42 = HEAP32[$rc>>2]|0; + $43 = ($42|0)==(0); + if (!($43)) { + break; + } + $44 = HEAP32[$i>>2]|0; + $45 = HEAP32[$2>>2]|0; + $46 = (($45) + 48|0); + $47 = HEAP32[$46>>2]|0; + $48 = ($44|0)<($47|0); + if (!($48)) { + break; + } + $49 = HEAP8[$bEof>>0]|0; + $50 = $49&255; + $51 = ($50|0)==(0); + if (!($51)) { + break; + } + $52 = HEAP32[$pTab>>2]|0; + $53 = HEAP32[$2>>2]|0; + $54 = HEAP32[$i>>2]|0; + $55 = HEAP32[$i>>2]|0; + $56 = (($a) + (($55*24)|0)|0); + $57 = (_incrPhraseTokenNext($52,$53,$54,$56,$bEof)|0); + HEAP32[$rc>>2] = $57; + $58 = HEAP32[$i>>2]|0; + $59 = (($a) + (($58*24)|0)|0); + $60 = HEAP32[$59>>2]|0; + $61 = ($60|0)==(0); + do { + if ($61) { + $62 = HEAP32[$bMaxSet>>2]|0; + $63 = ($62|0)==(0); + if (!($63)) { + $64 = HEAP32[$bDescDoclist>>2]|0; + $65 = ($64|0)!=(0); + $66 = $65 ? -1 : 1; + $67 = ($66|0)<(0); + $68 = $67 << 31 >> 31; + $69 = $iMax; + $70 = $69; + $71 = HEAP32[$70>>2]|0; + $72 = (($69) + 4)|0; + $73 = $72; + $74 = HEAP32[$73>>2]|0; + $75 = HEAP32[$i>>2]|0; + $76 = (($a) + (($75*24)|0)|0); + $77 = (($76) + 8|0); + $78 = $77; + $79 = $78; + $80 = HEAP32[$79>>2]|0; + $81 = (($78) + 4)|0; + $82 = $81; + $83 = HEAP32[$82>>2]|0; + $84 = (_i64Subtract(($71|0),($74|0),($80|0),($83|0))|0); + $85 = tempRet0; + (___muldi3(($66|0),($68|0),($84|0),($85|0))|0); + $86 = tempRet0; + $87 = ($86|0)<(0); + if (!($87)) { + break; + } + } + $88 = HEAP32[$i>>2]|0; + $89 = (($a) + (($88*24)|0)|0); + $90 = (($89) + 8|0); + $91 = $90; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $94 = (($91) + 4)|0; + $95 = $94; + $96 = HEAP32[$95>>2]|0; + $97 = $iMax; + $98 = $97; + HEAP32[$98>>2] = $93; + $99 = (($97) + 4)|0; + $100 = $99; + HEAP32[$100>>2] = $96; + HEAP32[$bMaxSet>>2] = 1; + } + } while(0); + $101 = HEAP32[$i>>2]|0; + $102 = (($101) + 1)|0; + HEAP32[$i>>2] = $102; + } + HEAP32[$i>>2] = 0; + while(1) { + $103 = HEAP32[$i>>2]|0; + $104 = HEAP32[$2>>2]|0; + $105 = (($104) + 48|0); + $106 = HEAP32[$105>>2]|0; + $107 = ($103|0)<($106|0); + if (!($107)) { + break; + } + while(1) { + $108 = HEAP32[$rc>>2]|0; + $109 = ($108|0)==(0); + if (!($109)) { + break; + } + $110 = HEAP8[$bEof>>0]|0; + $111 = $110&255; + $112 = ($111|0)==(0); + if (!($112)) { + break; + } + $113 = HEAP32[$i>>2]|0; + $114 = (($a) + (($113*24)|0)|0); + $115 = HEAP32[$114>>2]|0; + $116 = ($115|0)==(0); + if (!($116)) { + break; + } + $117 = HEAP32[$bDescDoclist>>2]|0; + $118 = ($117|0)!=(0); + $119 = $118 ? -1 : 1; + $120 = ($119|0)<(0); + $121 = $120 << 31 >> 31; + $122 = HEAP32[$i>>2]|0; + $123 = (($a) + (($122*24)|0)|0); + $124 = (($123) + 8|0); + $125 = $124; + $126 = $125; + $127 = HEAP32[$126>>2]|0; + $128 = (($125) + 4)|0; + $129 = $128; + $130 = HEAP32[$129>>2]|0; + $131 = $iMax; + $132 = $131; + $133 = HEAP32[$132>>2]|0; + $134 = (($131) + 4)|0; + $135 = $134; + $136 = HEAP32[$135>>2]|0; + $137 = (_i64Subtract(($127|0),($130|0),($133|0),($136|0))|0); + $138 = tempRet0; + (___muldi3(($119|0),($121|0),($137|0),($138|0))|0); + $139 = tempRet0; + $140 = ($139|0)<(0); + if (!($140)) { + break; + } + $141 = HEAP32[$pTab>>2]|0; + $142 = HEAP32[$2>>2]|0; + $143 = HEAP32[$i>>2]|0; + $144 = HEAP32[$i>>2]|0; + $145 = (($a) + (($144*24)|0)|0); + $146 = (_incrPhraseTokenNext($141,$142,$143,$145,$bEof)|0); + HEAP32[$rc>>2] = $146; + $147 = HEAP32[$bDescDoclist>>2]|0; + $148 = ($147|0)!=(0); + $149 = $148 ? -1 : 1; + $150 = ($149|0)<(0); + $151 = $150 << 31 >> 31; + $152 = HEAP32[$i>>2]|0; + $153 = (($a) + (($152*24)|0)|0); + $154 = (($153) + 8|0); + $155 = $154; + $156 = $155; + $157 = HEAP32[$156>>2]|0; + $158 = (($155) + 4)|0; + $159 = $158; + $160 = HEAP32[$159>>2]|0; + $161 = $iMax; + $162 = $161; + $163 = HEAP32[$162>>2]|0; + $164 = (($161) + 4)|0; + $165 = $164; + $166 = HEAP32[$165>>2]|0; + $167 = (_i64Subtract(($157|0),($160|0),($163|0),($166|0))|0); + $168 = tempRet0; + $169 = (___muldi3(($149|0),($151|0),($167|0),($168|0))|0); + $170 = tempRet0; + $171 = ($170|0)>(0); + $172 = ($170|0)==(0); + $173 = ($169>>>0)>(0); + $174 = $172 & $173; + $175 = $171 | $174; + if (!($175)) { + continue; + } + $176 = HEAP32[$i>>2]|0; + $177 = (($a) + (($176*24)|0)|0); + $178 = (($177) + 8|0); + $179 = $178; + $180 = $179; + $181 = HEAP32[$180>>2]|0; + $182 = (($179) + 4)|0; + $183 = $182; + $184 = HEAP32[$183>>2]|0; + $185 = $iMax; + $186 = $185; + HEAP32[$186>>2] = $181; + $187 = (($185) + 4)|0; + $188 = $187; + HEAP32[$188>>2] = $184; + HEAP32[$i>>2] = 0; + } + $189 = HEAP32[$i>>2]|0; + $190 = (($189) + 1)|0; + HEAP32[$i>>2] = $190; + } + $191 = HEAP8[$bEof>>0]|0; + $192 = $191&255; + $193 = ($192|0)==(0); + if (!($193)) { + continue; + } + HEAP32[$nList>>2] = 0; + $194 = HEAP32[$2>>2]|0; + $195 = (($194) + 48|0); + $196 = HEAP32[$195>>2]|0; + $197 = (($196) - 1)|0; + $198 = (($a) + (($197*24)|0)|0); + $199 = (($198) + 20|0); + $200 = HEAP32[$199>>2]|0; + HEAP32[$nByte>>2] = $200; + $201 = HEAP32[$nByte>>2]|0; + $202 = (($201) + 1)|0; + $203 = (_sqlite3_malloc($202)|0); + HEAP32[$aDoclist>>2] = $203; + $204 = HEAP32[$aDoclist>>2]|0; + $205 = ($204|0)!=(0|0); + if (!($205)) { + break; + } + $206 = HEAP32[$aDoclist>>2]|0; + $207 = HEAP32[$2>>2]|0; + $208 = (($207) + 48|0); + $209 = HEAP32[$208>>2]|0; + $210 = (($209) - 1)|0; + $211 = (($a) + (($210*24)|0)|0); + $212 = (($211) + 16|0); + $213 = HEAP32[$212>>2]|0; + $214 = HEAP32[$nByte>>2]|0; + $215 = (($214) + 1)|0; + _memcpy(($206|0),($213|0),($215|0))|0; + HEAP32[$i>>2] = 0; + while(1) { + $216 = HEAP32[$i>>2]|0; + $217 = HEAP32[$2>>2]|0; + $218 = (($217) + 48|0); + $219 = HEAP32[$218>>2]|0; + $220 = (($219) - 1)|0; + $221 = ($216|0)<($220|0); + if (!($221)) { + break; + } + $222 = HEAP32[$i>>2]|0; + $223 = (($a) + (($222*24)|0)|0); + $224 = HEAP32[$223>>2]|0; + $225 = ($224|0)==(0); + if ($225) { + $226 = HEAP32[$i>>2]|0; + $227 = (($a) + (($226*24)|0)|0); + $228 = (($227) + 16|0); + $229 = HEAP32[$228>>2]|0; + HEAP32[$pL>>2] = $229; + $230 = HEAP32[$aDoclist>>2]|0; + HEAP32[$pR>>2] = $230; + $231 = HEAP32[$aDoclist>>2]|0; + HEAP32[$pOut>>2] = $231; + $232 = HEAP32[$2>>2]|0; + $233 = (($232) + 48|0); + $234 = HEAP32[$233>>2]|0; + $235 = (($234) - 1)|0; + $236 = HEAP32[$i>>2]|0; + $237 = (($235) - ($236))|0; + HEAP32[$nDist>>2] = $237; + $238 = HEAP32[$nDist>>2]|0; + $239 = (_fts3PoslistPhraseMerge($pOut,$238,0,1,$pL,$pR)|0); + HEAP32[$res>>2] = $239; + $240 = HEAP32[$res>>2]|0; + $241 = ($240|0)==(0); + if ($241) { + break; + } + $242 = HEAP32[$pOut>>2]|0; + $243 = HEAP32[$aDoclist>>2]|0; + $244 = $242; + $245 = $243; + $246 = (($244) - ($245))|0; + HEAP32[$nList>>2] = $246; + } + $247 = HEAP32[$i>>2]|0; + $248 = (($247) + 1)|0; + HEAP32[$i>>2] = $248; + } + $249 = HEAP32[$i>>2]|0; + $250 = HEAP32[$2>>2]|0; + $251 = (($250) + 48|0); + $252 = HEAP32[$251>>2]|0; + $253 = (($252) - 1)|0; + $254 = ($249|0)==($253|0); + if ($254) { + label = 35; + break; + } + $275 = HEAP32[$aDoclist>>2]|0; + _sqlite3_free($275); + } + if ((label|0) == 35) { + $255 = $iMax; + $256 = $255; + $257 = HEAP32[$256>>2]|0; + $258 = (($255) + 4)|0; + $259 = $258; + $260 = HEAP32[$259>>2]|0; + $261 = HEAP32[$pDL>>2]|0; + $262 = (($261) + 16|0); + $263 = $262; + $264 = $263; + HEAP32[$264>>2] = $257; + $265 = (($263) + 4)|0; + $266 = $265; + HEAP32[$266>>2] = $260; + $267 = HEAP32[$aDoclist>>2]|0; + $268 = HEAP32[$pDL>>2]|0; + $269 = (($268) + 28|0); + HEAP32[$269>>2] = $267; + $270 = HEAP32[$nList>>2]|0; + $271 = HEAP32[$pDL>>2]|0; + $272 = (($271) + 32|0); + HEAP32[$272>>2] = $270; + $273 = HEAP32[$pDL>>2]|0; + $274 = (($273) + 24|0); + HEAP32[$274>>2] = 1; + break; + } + HEAP32[$0>>2] = 7; + $279 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($279|0); + } + } while(0); + $276 = HEAP8[$bEof>>0]|0; + $277 = HEAP32[$3>>2]|0; + HEAP8[$277>>0] = $276; + $278 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $278; + $279 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($279|0); +} +function _fts3EvalDlPhraseNext($pTab,$pDL,$pbEof) { + $pTab = $pTab|0; + $pDL = $pDL|0; + $pbEof = $pbEof|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $iDelta = 0; + var $pEnd = 0, $pIter = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp + 20|0; + $2 = sp + 8|0; + $pIter = sp + 12|0; + $pEnd = sp + 16|0; + $iDelta = sp; + HEAP32[$0>>2] = $pTab; + HEAP32[$1>>2] = $pDL; + HEAP32[$2>>2] = $pbEof; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = (($7) + ($5)|0); + HEAP32[$pEnd>>2] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 8|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0|0); + $13 = HEAP32[$1>>2]|0; + if ($12) { + $14 = (($13) + 8|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$pIter>>2] = $15; + } else { + $16 = HEAP32[$13>>2]|0; + HEAP32[$pIter>>2] = $16; + } + $17 = HEAP32[$pIter>>2]|0; + $18 = HEAP32[$pEnd>>2]|0; + $19 = ($17>>>0)>=($18>>>0); + if ($19) { + $20 = HEAP32[$2>>2]|0; + HEAP8[$20>>0] = 1; + STACKTOP = sp;return; + } + $21 = HEAP32[$pIter>>2]|0; + $22 = (_sqlite3Fts3GetVarint($21,$iDelta)|0); + $23 = HEAP32[$pIter>>2]|0; + $24 = (($23) + ($22)|0); + HEAP32[$pIter>>2] = $24; + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 231|0); + $27 = HEAP8[$26>>0]|0; + $28 = $27&255; + $29 = ($28|0)==(0); + if ($29) { + label = 8; + } else { + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 8|0); + $32 = HEAP32[$31>>2]|0; + $33 = ($32|0)==(0|0); + if ($33) { + label = 8; + } else { + $54 = $iDelta; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = (($54) + 4)|0; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 16|0); + $62 = $61; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (($62) + 4)|0; + $66 = $65; + $67 = HEAP32[$66>>2]|0; + $68 = (_i64Subtract(($64|0),($67|0),($56|0),($59|0))|0); + $69 = tempRet0; + $70 = $61; + $71 = $70; + HEAP32[$71>>2] = $68; + $72 = (($70) + 4)|0; + $73 = $72; + HEAP32[$73>>2] = $69; + } + } + if ((label|0) == 8) { + $34 = $iDelta; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 16|0); + $42 = $41; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (_i64Add(($44|0),($47|0),($36|0),($39|0))|0); + $49 = tempRet0; + $50 = $41; + $51 = $50; + HEAP32[$51>>2] = $48; + $52 = (($50) + 4)|0; + $53 = $52; + HEAP32[$53>>2] = $49; + } + $74 = HEAP32[$pIter>>2]|0; + $75 = HEAP32[$1>>2]|0; + $76 = (($75) + 28|0); + HEAP32[$76>>2] = $74; + _fts3PoslistCopy(0,$pIter); + $77 = HEAP32[$pIter>>2]|0; + $78 = HEAP32[$1>>2]|0; + $79 = (($78) + 28|0); + $80 = HEAP32[$79>>2]|0; + $81 = $77; + $82 = $80; + $83 = (($81) - ($82))|0; + $84 = HEAP32[$1>>2]|0; + $85 = (($84) + 32|0); + HEAP32[$85>>2] = $83; + while(1) { + $86 = HEAP32[$pIter>>2]|0; + $87 = HEAP32[$pEnd>>2]|0; + $88 = ($86>>>0)<($87>>>0); + if ($88) { + $89 = HEAP32[$pIter>>2]|0; + $90 = HEAP8[$89>>0]|0; + $91 = $90 << 24 >> 24; + $92 = ($91|0)==(0); + $98 = $92; + } else { + $98 = 0; + } + $93 = HEAP32[$pIter>>2]|0; + if (!($98)) { + break; + } + $94 = (($93) + 1|0); + HEAP32[$pIter>>2] = $94; + } + $95 = HEAP32[$1>>2]|0; + $96 = (($95) + 8|0); + HEAP32[$96>>2] = $93; + $97 = HEAP32[$2>>2]|0; + HEAP8[$97>>0] = 0; + STACKTOP = sp;return; +} +function _sqlite3Fts3MsrIncrNext($p,$pMsr,$piDocid,$paPoslist,$pnPoslist) { + $p = $p|0; + $pMsr = $pMsr|0; + $piDocid = $piDocid|0; + $paPoslist = $paPoslist|0; + $pnPoslist = $pnPoslist|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; + var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; + var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; + var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; + var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $apSegment = 0, $iDocid = 0, $j = 0, $nList = 0; + var $nMerge = 0, $pList = 0, $pSeg = 0, $rc = 0, $xCmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 60|0; + $1 = sp + 56|0; + $2 = sp + 52|0; + $3 = sp + 48|0; + $4 = sp + 44|0; + $5 = sp + 40|0; + $nMerge = sp + 36|0; + $apSegment = sp + 32|0; + $xCmp = sp + 24|0; + $pSeg = sp + 20|0; + $rc = sp + 16|0; + $pList = sp + 12|0; + $nList = sp + 8|0; + $j = sp + 28|0; + $iDocid = sp; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pMsr; + HEAP32[$3>>2] = $piDocid; + HEAP32[$4>>2] = $paPoslist; + HEAP32[$5>>2] = $pnPoslist; + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + 8|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$nMerge>>2] = $8; + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$apSegment>>2] = $10; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 231|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = ($14|0)!=(0); + $16 = $15 ? 49 : 50; + HEAP32[$xCmp>>2] = $16; + $17 = HEAP32[$nMerge>>2]|0; + $18 = ($17|0)==(0); + if ($18) { + $19 = HEAP32[$4>>2]|0; + HEAP32[$19>>2] = 0; + HEAP32[$0>>2] = 0; + $135 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($135|0); + } + while(1) { + $20 = HEAP32[$2>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$21>>2]|0; + HEAP32[$pSeg>>2] = $22; + $23 = HEAP32[$pSeg>>2]|0; + $24 = (($23) + 80|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)==(0|0); + if ($26) { + label = 4; + break; + } + $28 = HEAP32[$apSegment>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + 88|0); + $31 = $30; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = $iDocid; + $38 = $37; + HEAP32[$38>>2] = $33; + $39 = (($37) + 4)|0; + $40 = $39; + HEAP32[$40>>2] = $36; + $41 = HEAP32[$1>>2]|0; + $42 = HEAP32[$apSegment>>2]|0; + $43 = HEAP32[$42>>2]|0; + $44 = (_fts3SegReaderNextDocid($41,$43,$pList,$nList)|0); + HEAP32[$rc>>2] = $44; + HEAP32[$j>>2] = 1; + while(1) { + $45 = HEAP32[$rc>>2]|0; + $46 = ($45|0)==(0); + if (!($46)) { + break; + } + $47 = HEAP32[$j>>2]|0; + $48 = HEAP32[$nMerge>>2]|0; + $49 = ($47|0)<($48|0); + if (!($49)) { + break; + } + $50 = HEAP32[$j>>2]|0; + $51 = HEAP32[$apSegment>>2]|0; + $52 = (($51) + ($50<<2)|0); + $53 = HEAP32[$52>>2]|0; + $54 = (($53) + 80|0); + $55 = HEAP32[$54>>2]|0; + $56 = ($55|0)!=(0|0); + if (!($56)) { + break; + } + $57 = HEAP32[$j>>2]|0; + $58 = HEAP32[$apSegment>>2]|0; + $59 = (($58) + ($57<<2)|0); + $60 = HEAP32[$59>>2]|0; + $61 = (($60) + 88|0); + $62 = $61; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (($62) + 4)|0; + $66 = $65; + $67 = HEAP32[$66>>2]|0; + $68 = $iDocid; + $69 = $68; + $70 = HEAP32[$69>>2]|0; + $71 = (($68) + 4)|0; + $72 = $71; + $73 = HEAP32[$72>>2]|0; + $74 = ($64|0)==($70|0); + $75 = ($67|0)==($73|0); + $76 = $74 & $75; + if (!($76)) { + break; + } + $77 = HEAP32[$1>>2]|0; + $78 = HEAP32[$j>>2]|0; + $79 = HEAP32[$apSegment>>2]|0; + $80 = (($79) + ($78<<2)|0); + $81 = HEAP32[$80>>2]|0; + $82 = (_fts3SegReaderNextDocid($77,$81,0,0)|0); + HEAP32[$rc>>2] = $82; + $83 = HEAP32[$j>>2]|0; + $84 = (($83) + 1)|0; + HEAP32[$j>>2] = $84; + } + $85 = HEAP32[$rc>>2]|0; + $86 = ($85|0)!=(0); + if ($86) { + label = 12; + break; + } + $88 = HEAP32[$2>>2]|0; + $89 = HEAP32[$88>>2]|0; + $90 = HEAP32[$nMerge>>2]|0; + $91 = HEAP32[$j>>2]|0; + $92 = HEAP32[$xCmp>>2]|0; + _fts3SegReaderSort($89,$90,$91,$92); + $93 = HEAP32[$nList>>2]|0; + $94 = ($93|0)>(0); + if ($94) { + $95 = HEAP32[$apSegment>>2]|0; + $96 = HEAP32[$95>>2]|0; + $97 = (($96) + 56|0); + $98 = HEAP32[$97>>2]|0; + $99 = ($98|0)!=(0|0); + if ($99) { + $100 = HEAP32[$2>>2]|0; + $101 = HEAP32[$pList>>2]|0; + $102 = HEAP32[$nList>>2]|0; + $103 = (($102) + 1)|0; + $104 = (_fts3MsrBufferData($100,$101,$103)|0); + HEAP32[$rc>>2] = $104; + $105 = HEAP32[$rc>>2]|0; + $106 = ($105|0)!=(0); + if ($106) { + label = 16; + break; + } + $108 = HEAP32[$2>>2]|0; + $109 = (($108) + 16|0); + $110 = HEAP32[$109>>2]|0; + HEAP32[$pList>>2] = $110; + } + } + $111 = HEAP32[$2>>2]|0; + $112 = (($111) + 24|0); + $113 = HEAP32[$112>>2]|0; + $114 = ($113|0)>=(0); + if ($114) { + $115 = HEAP32[$2>>2]|0; + $116 = (($115) + 24|0); + $117 = HEAP32[$116>>2]|0; + _fts3ColumnFilter($117,1,$pList,$nList); + } + $118 = HEAP32[$nList>>2]|0; + $119 = ($118|0)>(0); + if ($119) { + label = 21; + break; + } + } + if ((label|0) == 4) { + $27 = HEAP32[$4>>2]|0; + HEAP32[$27>>2] = 0; + } + else if ((label|0) == 12) { + $87 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $87; + $135 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($135|0); + } + else if ((label|0) == 16) { + $107 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $107; + $135 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($135|0); + } + else if ((label|0) == 21) { + $120 = HEAP32[$pList>>2]|0; + $121 = HEAP32[$4>>2]|0; + HEAP32[$121>>2] = $120; + $122 = $iDocid; + $123 = $122; + $124 = HEAP32[$123>>2]|0; + $125 = (($122) + 4)|0; + $126 = $125; + $127 = HEAP32[$126>>2]|0; + $128 = HEAP32[$3>>2]|0; + $129 = $128; + $130 = $129; + HEAP32[$130>>2] = $124; + $131 = (($129) + 4)|0; + $132 = $131; + HEAP32[$132>>2] = $127; + $133 = HEAP32[$nList>>2]|0; + $134 = HEAP32[$5>>2]|0; + HEAP32[$134>>2] = $133; + } + HEAP32[$0>>2] = 0; + $135 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($135|0); +} +function _incrPhraseTokenNext($pTab,$pPhrase,$iToken,$p,$pbEof) { + $pTab = $pTab|0; + $pPhrase = $pPhrase|0; + $iToken = $iToken|0; + $p = $p|0; + $pbEof = $pbEof|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $7 = 0, $8 = 0, $9 = 0, $pToken = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $rc = sp + 16|0; + $pToken = sp + 20|0; + HEAP32[$0>>2] = $pTab; + HEAP32[$1>>2] = $pPhrase; + HEAP32[$2>>2] = $iToken; + HEAP32[$3>>2] = $p; + HEAP32[$4>>2] = $pbEof; + HEAP32[$rc>>2] = 0; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 44|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = ($7|0)==($8|0); + if ($9) { + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$4>>2]|0; + _fts3EvalDlPhraseNext($10,$11,$12); + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 28|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$3>>2]|0; + $17 = (($16) + 16|0); + HEAP32[$17>>2] = $15; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 32|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$3>>2]|0; + $22 = (($21) + 20|0); + HEAP32[$22>>2] = $20; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 16|0); + $25 = $24; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$3>>2]|0; + $32 = (($31) + 8|0); + $33 = $32; + $34 = $33; + HEAP32[$34>>2] = $27; + $35 = (($33) + 4)|0; + $36 = $35; + HEAP32[$36>>2] = $30; + $62 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($62|0); + } + $37 = HEAP32[$2>>2]|0; + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 56|0); + $40 = (($39) + (($37*24)|0)|0); + HEAP32[$pToken>>2] = $40; + $41 = HEAP32[$pToken>>2]|0; + $42 = (($41) + 20|0); + $43 = HEAP32[$42>>2]|0; + $44 = ($43|0)!=(0|0); + if (!($44)) { + $61 = HEAP32[$3>>2]|0; + HEAP32[$61>>2] = 1; + $62 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($62|0); + } + $45 = HEAP32[$0>>2]|0; + $46 = HEAP32[$pToken>>2]|0; + $47 = (($46) + 20|0); + $48 = HEAP32[$47>>2]|0; + $49 = HEAP32[$3>>2]|0; + $50 = (($49) + 8|0); + $51 = HEAP32[$3>>2]|0; + $52 = (($51) + 16|0); + $53 = HEAP32[$3>>2]|0; + $54 = (($53) + 20|0); + $55 = (_sqlite3Fts3MsrIncrNext($45,$48,$50,$52,$54)|0); + HEAP32[$rc>>2] = $55; + $56 = HEAP32[$3>>2]|0; + $57 = (($56) + 16|0); + $58 = HEAP32[$57>>2]|0; + $59 = ($58|0)==(0|0); + if (!($59)) { + $62 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($62|0); + } + $60 = HEAP32[$4>>2]|0; + HEAP8[$60>>0] = 1; + $62 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($62|0); +} +function _fts3PoslistPhraseMerge($pp,$nToken,$isSaveLeft,$isExact,$pp1,$pp2) { + $pp = $pp|0; + $nToken = $nToken|0; + $isSaveLeft = $isSaveLeft|0; + $isExact = $isExact|0; + $pp1 = $pp1|0; + $pp2 = $pp2|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iCol1 = 0, $iCol2 = 0, $iPos1 = 0, $iPos2 = 0, $iPrev = 0, $iSave = 0, $p = 0, $p1 = 0, $p2 = 0, $pSave = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 80|0; + $1 = sp + 76|0; + $2 = sp + 72|0; + $3 = sp + 68|0; + $4 = sp + 64|0; + $5 = sp + 60|0; + $6 = sp + 56|0; + $p = sp + 52|0; + $p1 = sp + 48|0; + $p2 = sp + 40|0; + $iCol1 = sp + 36|0; + $iCol2 = sp + 32|0; + $pSave = sp + 44|0; + $iPrev = sp + 16|0; + $iPos1 = sp + 8|0; + $iPos2 = sp; + $iSave = sp + 24|0; + HEAP32[$1>>2] = $pp; + HEAP32[$2>>2] = $nToken; + HEAP32[$3>>2] = $isSaveLeft; + HEAP32[$4>>2] = $isExact; + HEAP32[$5>>2] = $pp1; + HEAP32[$6>>2] = $pp2; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$p>>2] = $8; + $9 = HEAP32[$5>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$p1>>2] = $10; + $11 = HEAP32[$6>>2]|0; + $12 = HEAP32[$11>>2]|0; + HEAP32[$p2>>2] = $12; + HEAP32[$iCol1>>2] = 0; + HEAP32[$iCol2>>2] = 0; + $13 = HEAP32[$p1>>2]|0; + $14 = HEAP8[$13>>0]|0; + $15 = $14 << 24 >> 24; + $16 = ($15|0)==(1); + if ($16) { + $17 = HEAP32[$p1>>2]|0; + $18 = (($17) + 1|0); + HEAP32[$p1>>2] = $18; + $19 = HEAP32[$p1>>2]|0; + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = $21 & 128; + $23 = ($22|0)!=(0); + $24 = HEAP32[$p1>>2]|0; + if ($23) { + $25 = (_sqlite3Fts3GetVarint32($24,$iCol1)|0); + $30 = $25; + } else { + $26 = HEAP8[$24>>0]|0; + $27 = $26&255; + HEAP32[$iCol1>>2] = $27; + $30 = 1; + } + $28 = HEAP32[$p1>>2]|0; + $29 = (($28) + ($30)|0); + HEAP32[$p1>>2] = $29; + } + $31 = HEAP32[$p2>>2]|0; + $32 = HEAP8[$31>>0]|0; + $33 = $32 << 24 >> 24; + $34 = ($33|0)==(1); + if ($34) { + $35 = HEAP32[$p2>>2]|0; + $36 = (($35) + 1|0); + HEAP32[$p2>>2] = $36; + $37 = HEAP32[$p2>>2]|0; + $38 = HEAP8[$37>>0]|0; + $39 = $38&255; + $40 = $39 & 128; + $41 = ($40|0)!=(0); + $42 = HEAP32[$p2>>2]|0; + if ($41) { + $43 = (_sqlite3Fts3GetVarint32($42,$iCol2)|0); + $48 = $43; + } else { + $44 = HEAP8[$42>>0]|0; + $45 = $44&255; + HEAP32[$iCol2>>2] = $45; + $48 = 1; + } + $46 = HEAP32[$p2>>2]|0; + $47 = (($46) + ($48)|0); + HEAP32[$p2>>2] = $47; + } + while(1) { + $49 = HEAP32[$iCol1>>2]|0; + $50 = HEAP32[$iCol2>>2]|0; + $51 = ($49|0)==($50|0); + if (!($51)) { + $315 = HEAP32[$iCol1>>2]|0; + $316 = HEAP32[$iCol2>>2]|0; + $317 = ($315|0)<($316|0); + if ($317) { + _fts3ColumnlistCopy(0,$p1); + $318 = HEAP32[$p1>>2]|0; + $319 = HEAP8[$318>>0]|0; + $320 = $319 << 24 >> 24; + $321 = (0)==($320|0); + if ($321) { + break; + } + $322 = HEAP32[$p1>>2]|0; + $323 = (($322) + 1|0); + HEAP32[$p1>>2] = $323; + $324 = HEAP32[$p1>>2]|0; + $325 = HEAP8[$324>>0]|0; + $326 = $325&255; + $327 = $326 & 128; + $328 = ($327|0)!=(0); + $329 = HEAP32[$p1>>2]|0; + if ($328) { + $330 = (_sqlite3Fts3GetVarint32($329,$iCol1)|0); + $335 = $330; + } else { + $331 = HEAP8[$329>>0]|0; + $332 = $331&255; + HEAP32[$iCol1>>2] = $332; + $335 = 1; + } + $333 = HEAP32[$p1>>2]|0; + $334 = (($333) + ($335)|0); + HEAP32[$p1>>2] = $334; + continue; + } else { + _fts3ColumnlistCopy(0,$p2); + $336 = HEAP32[$p2>>2]|0; + $337 = HEAP8[$336>>0]|0; + $338 = $337 << 24 >> 24; + $339 = (0)==($338|0); + if ($339) { + break; + } + $340 = HEAP32[$p2>>2]|0; + $341 = (($340) + 1|0); + HEAP32[$p2>>2] = $341; + $342 = HEAP32[$p2>>2]|0; + $343 = HEAP8[$342>>0]|0; + $344 = $343&255; + $345 = $344 & 128; + $346 = ($345|0)!=(0); + $347 = HEAP32[$p2>>2]|0; + if ($346) { + $348 = (_sqlite3Fts3GetVarint32($347,$iCol2)|0); + $353 = $348; + } else { + $349 = HEAP8[$347>>0]|0; + $350 = $349&255; + HEAP32[$iCol2>>2] = $350; + $353 = 1; + } + $351 = HEAP32[$p2>>2]|0; + $352 = (($351) + ($353)|0); + HEAP32[$p2>>2] = $352; + continue; + } + } + $52 = HEAP32[$p>>2]|0; + HEAP32[$pSave>>2] = $52; + $53 = $iPrev; + $54 = $53; + HEAP32[$54>>2] = 0; + $55 = (($53) + 4)|0; + $56 = $55; + HEAP32[$56>>2] = 0; + $57 = $iPos1; + $58 = $57; + HEAP32[$58>>2] = 0; + $59 = (($57) + 4)|0; + $60 = $59; + HEAP32[$60>>2] = 0; + $61 = $iPos2; + $62 = $61; + HEAP32[$62>>2] = 0; + $63 = (($61) + 4)|0; + $64 = $63; + HEAP32[$64>>2] = 0; + $65 = HEAP32[$iCol1>>2]|0; + $66 = ($65|0)!=(0); + if ($66) { + $67 = HEAP32[$p>>2]|0; + $68 = (($67) + 1|0); + HEAP32[$p>>2] = $68; + HEAP8[$67>>0] = 1; + $69 = HEAP32[$p>>2]|0; + $70 = HEAP32[$iCol1>>2]|0; + $71 = ($70|0)<(0); + $72 = $71 << 31 >> 31; + $73 = (_sqlite3Fts3PutVarint($69,$70,$72)|0); + $74 = HEAP32[$p>>2]|0; + $75 = (($74) + ($73)|0); + HEAP32[$p>>2] = $75; + } + _fts3GetDeltaVarint($p1,$iPos1); + $76 = $iPos1; + $77 = $76; + $78 = HEAP32[$77>>2]|0; + $79 = (($76) + 4)|0; + $80 = $79; + $81 = HEAP32[$80>>2]|0; + $82 = (_i64Subtract(($78|0),($81|0),2,0)|0); + $83 = tempRet0; + $84 = $iPos1; + $85 = $84; + HEAP32[$85>>2] = $82; + $86 = (($84) + 4)|0; + $87 = $86; + HEAP32[$87>>2] = $83; + _fts3GetDeltaVarint($p2,$iPos2); + $88 = $iPos2; + $89 = $88; + $90 = HEAP32[$89>>2]|0; + $91 = (($88) + 4)|0; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $94 = (_i64Subtract(($90|0),($93|0),2,0)|0); + $95 = tempRet0; + $96 = $iPos2; + $97 = $96; + HEAP32[$97>>2] = $94; + $98 = (($96) + 4)|0; + $99 = $98; + HEAP32[$99>>2] = $95; + while(1) { + $100 = $iPos2; + $101 = $100; + $102 = HEAP32[$101>>2]|0; + $103 = (($100) + 4)|0; + $104 = $103; + $105 = HEAP32[$104>>2]|0; + $106 = $iPos1; + $107 = $106; + $108 = HEAP32[$107>>2]|0; + $109 = (($106) + 4)|0; + $110 = $109; + $111 = HEAP32[$110>>2]|0; + $112 = HEAP32[$2>>2]|0; + $113 = ($112|0)<(0); + $114 = $113 << 31 >> 31; + $115 = (_i64Add(($108|0),($111|0),($112|0),($114|0))|0); + $116 = tempRet0; + $117 = ($102|0)==($115|0); + $118 = ($105|0)==($116|0); + $119 = $117 & $118; + if ($119) { + label = 19; + } else { + $120 = HEAP32[$4>>2]|0; + $121 = ($120|0)==(0); + if ($121) { + $122 = $iPos2; + $123 = $122; + $124 = HEAP32[$123>>2]|0; + $125 = (($122) + 4)|0; + $126 = $125; + $127 = HEAP32[$126>>2]|0; + $128 = $iPos1; + $129 = $128; + $130 = HEAP32[$129>>2]|0; + $131 = (($128) + 4)|0; + $132 = $131; + $133 = HEAP32[$132>>2]|0; + $134 = ($127|0)>($133|0); + $135 = ($127|0)==($133|0); + $136 = ($124>>>0)>($130>>>0); + $137 = $135 & $136; + $138 = $134 | $137; + if ($138) { + $139 = $iPos2; + $140 = $139; + $141 = HEAP32[$140>>2]|0; + $142 = (($139) + 4)|0; + $143 = $142; + $144 = HEAP32[$143>>2]|0; + $145 = $iPos1; + $146 = $145; + $147 = HEAP32[$146>>2]|0; + $148 = (($145) + 4)|0; + $149 = $148; + $150 = HEAP32[$149>>2]|0; + $151 = HEAP32[$2>>2]|0; + $152 = ($151|0)<(0); + $153 = $152 << 31 >> 31; + $154 = (_i64Add(($147|0),($150|0),($151|0),($153|0))|0); + $155 = tempRet0; + $156 = ($144|0)<($155|0); + $157 = ($144|0)==($155|0); + $158 = ($141>>>0)<=($154>>>0); + $159 = $157 & $158; + $160 = $156 | $159; + if ($160) { + label = 19; + } + } + } + } + if ((label|0) == 19) { + label = 0; + $161 = HEAP32[$3>>2]|0; + $162 = ($161|0)!=(0); + $163 = $iPos1; + $164 = $163; + $165 = HEAP32[$164>>2]|0; + $166 = (($163) + 4)|0; + $167 = $166; + $168 = HEAP32[$167>>2]|0; + $169 = $iPos2; + $170 = $169; + $171 = HEAP32[$170>>2]|0; + $172 = (($169) + 4)|0; + $173 = $172; + $174 = HEAP32[$173>>2]|0; + $175 = $162 ? $165 : $171; + $176 = $162 ? $168 : $174; + $177 = $iSave; + $178 = $177; + HEAP32[$178>>2] = $175; + $179 = (($177) + 4)|0; + $180 = $179; + HEAP32[$180>>2] = $176; + $181 = $iSave; + $182 = $181; + $183 = HEAP32[$182>>2]|0; + $184 = (($181) + 4)|0; + $185 = $184; + $186 = HEAP32[$185>>2]|0; + $187 = (_i64Add(($183|0),($186|0),2,0)|0); + $188 = tempRet0; + _fts3PutDeltaVarint($p,$iPrev,$187,$188); + $189 = $iPrev; + $190 = $189; + $191 = HEAP32[$190>>2]|0; + $192 = (($189) + 4)|0; + $193 = $192; + $194 = HEAP32[$193>>2]|0; + $195 = (_i64Subtract(($191|0),($194|0),2,0)|0); + $196 = tempRet0; + $197 = $iPrev; + $198 = $197; + HEAP32[$198>>2] = $195; + $199 = (($197) + 4)|0; + $200 = $199; + HEAP32[$200>>2] = $196; + HEAP32[$pSave>>2] = 0; + } + $201 = HEAP32[$3>>2]|0; + $202 = ($201|0)!=(0); + if ($202) { + label = 22; + } else { + $203 = $iPos2; + $204 = $203; + $205 = HEAP32[$204>>2]|0; + $206 = (($203) + 4)|0; + $207 = $206; + $208 = HEAP32[$207>>2]|0; + $209 = $iPos1; + $210 = $209; + $211 = HEAP32[$210>>2]|0; + $212 = (($209) + 4)|0; + $213 = $212; + $214 = HEAP32[$213>>2]|0; + $215 = HEAP32[$2>>2]|0; + $216 = ($215|0)<(0); + $217 = $216 << 31 >> 31; + $218 = (_i64Add(($211|0),($214|0),($215|0),($217|0))|0); + $219 = tempRet0; + $220 = ($208|0)<($219|0); + $221 = ($208|0)==($219|0); + $222 = ($205>>>0)<=($218>>>0); + $223 = $221 & $222; + $224 = $220 | $223; + if (!($224)) { + label = 22; + } + } + if ((label|0) == 22) { + label = 0; + $225 = $iPos2; + $226 = $225; + $227 = HEAP32[$226>>2]|0; + $228 = (($225) + 4)|0; + $229 = $228; + $230 = HEAP32[$229>>2]|0; + $231 = $iPos1; + $232 = $231; + $233 = HEAP32[$232>>2]|0; + $234 = (($231) + 4)|0; + $235 = $234; + $236 = HEAP32[$235>>2]|0; + $237 = ($230|0)<($236|0); + $238 = ($230|0)==($236|0); + $239 = ($227>>>0)<=($233>>>0); + $240 = $238 & $239; + $241 = $237 | $240; + if (!($241)) { + $259 = HEAP32[$p1>>2]|0; + $260 = HEAP8[$259>>0]|0; + $261 = $260 << 24 >> 24; + $262 = $261 & 254; + $263 = ($262|0)==(0); + if ($263) { + break; + } + _fts3GetDeltaVarint($p1,$iPos1); + $264 = $iPos1; + $265 = $264; + $266 = HEAP32[$265>>2]|0; + $267 = (($264) + 4)|0; + $268 = $267; + $269 = HEAP32[$268>>2]|0; + $270 = (_i64Subtract(($266|0),($269|0),2,0)|0); + $271 = tempRet0; + $272 = $iPos1; + $273 = $272; + HEAP32[$273>>2] = $270; + $274 = (($272) + 4)|0; + $275 = $274; + HEAP32[$275>>2] = $271; + continue; + } + } + $242 = HEAP32[$p2>>2]|0; + $243 = HEAP8[$242>>0]|0; + $244 = $243 << 24 >> 24; + $245 = $244 & 254; + $246 = ($245|0)==(0); + if ($246) { + break; + } + _fts3GetDeltaVarint($p2,$iPos2); + $247 = $iPos2; + $248 = $247; + $249 = HEAP32[$248>>2]|0; + $250 = (($247) + 4)|0; + $251 = $250; + $252 = HEAP32[$251>>2]|0; + $253 = (_i64Subtract(($249|0),($252|0),2,0)|0); + $254 = tempRet0; + $255 = $iPos2; + $256 = $255; + HEAP32[$256>>2] = $253; + $257 = (($255) + 4)|0; + $258 = $257; + HEAP32[$258>>2] = $254; + } + $276 = HEAP32[$pSave>>2]|0; + $277 = ($276|0)!=(0|0); + if ($277) { + $278 = HEAP32[$pSave>>2]|0; + HEAP32[$p>>2] = $278; + } + _fts3ColumnlistCopy(0,$p1); + _fts3ColumnlistCopy(0,$p2); + $279 = HEAP32[$p1>>2]|0; + $280 = HEAP8[$279>>0]|0; + $281 = $280 << 24 >> 24; + $282 = (0)==($281|0); + if ($282) { + break; + } + $283 = HEAP32[$p2>>2]|0; + $284 = HEAP8[$283>>0]|0; + $285 = $284 << 24 >> 24; + $286 = (0)==($285|0); + if ($286) { + break; + } + $287 = HEAP32[$p1>>2]|0; + $288 = (($287) + 1|0); + HEAP32[$p1>>2] = $288; + $289 = HEAP32[$p1>>2]|0; + $290 = HEAP8[$289>>0]|0; + $291 = $290&255; + $292 = $291 & 128; + $293 = ($292|0)!=(0); + $294 = HEAP32[$p1>>2]|0; + if ($293) { + $295 = (_sqlite3Fts3GetVarint32($294,$iCol1)|0); + $300 = $295; + } else { + $296 = HEAP8[$294>>0]|0; + $297 = $296&255; + HEAP32[$iCol1>>2] = $297; + $300 = 1; + } + $298 = HEAP32[$p1>>2]|0; + $299 = (($298) + ($300)|0); + HEAP32[$p1>>2] = $299; + $301 = HEAP32[$p2>>2]|0; + $302 = (($301) + 1|0); + HEAP32[$p2>>2] = $302; + $303 = HEAP32[$p2>>2]|0; + $304 = HEAP8[$303>>0]|0; + $305 = $304&255; + $306 = $305 & 128; + $307 = ($306|0)!=(0); + $308 = HEAP32[$p2>>2]|0; + if ($307) { + $309 = (_sqlite3Fts3GetVarint32($308,$iCol2)|0); + $314 = $309; + } else { + $310 = HEAP8[$308>>0]|0; + $311 = $310&255; + HEAP32[$iCol2>>2] = $311; + $314 = 1; + } + $312 = HEAP32[$p2>>2]|0; + $313 = (($312) + ($314)|0); + HEAP32[$p2>>2] = $313; + } + _fts3PoslistCopy(0,$p2); + _fts3PoslistCopy(0,$p1); + $354 = HEAP32[$p1>>2]|0; + $355 = HEAP32[$5>>2]|0; + HEAP32[$355>>2] = $354; + $356 = HEAP32[$p2>>2]|0; + $357 = HEAP32[$6>>2]|0; + HEAP32[$357>>2] = $356; + $358 = HEAP32[$1>>2]|0; + $359 = HEAP32[$358>>2]|0; + $360 = HEAP32[$p>>2]|0; + $361 = ($359|0)==($360|0); + if ($361) { + HEAP32[$0>>2] = 0; + $366 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($366|0); + } else { + $362 = HEAP32[$p>>2]|0; + $363 = (($362) + 1|0); + HEAP32[$p>>2] = $363; + HEAP8[$362>>0] = 0; + $364 = HEAP32[$p>>2]|0; + $365 = HEAP32[$1>>2]|0; + HEAP32[$365>>2] = $364; + HEAP32[$0>>2] = 1; + $366 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($366|0); + } + return 0|0; +} +function _fts3GetDeltaVarint($pp,$pVal) { + $pp = $pp|0; + $pVal = $pVal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iVal = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp + 8|0; + $iVal = sp; + HEAP32[$0>>2] = $pp; + HEAP32[$1>>2] = $pVal; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = (_sqlite3Fts3GetVarint($3,$iVal)|0); + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + ($4)|0); + HEAP32[$5>>2] = $7; + $8 = $iVal; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = (($8) + 4)|0; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = $14; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = (($15) + 4)|0; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = (_i64Add(($17|0),($20|0),($10|0),($13|0))|0); + $22 = tempRet0; + $23 = $14; + $24 = $23; + HEAP32[$24>>2] = $21; + $25 = (($23) + 4)|0; + $26 = $25; + HEAP32[$26>>2] = $22; + STACKTOP = sp;return; +} +function _fts3PutDeltaVarint($pp,$piPrev,$0,$1) { + $pp = $pp|0; + $piPrev = $piPrev|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp + 12|0; + $3 = sp + 8|0; + $4 = sp; + HEAP32[$2>>2] = $pp; + HEAP32[$3>>2] = $piPrev; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = $4; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = (($11) + 4)|0; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$3>>2]|0; + $18 = $17; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = (($18) + 4)|0; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (_i64Subtract(($13|0),($16|0),($20|0),($23|0))|0); + $25 = tempRet0; + $26 = (_sqlite3Fts3PutVarint($10,$24,$25)|0); + $27 = HEAP32[$2>>2]|0; + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + ($26)|0); + HEAP32[$27>>2] = $29; + $30 = $4; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$3>>2]|0; + $37 = $36; + $38 = $37; + HEAP32[$38>>2] = $32; + $39 = (($37) + 4)|0; + $40 = $39; + HEAP32[$40>>2] = $35; + STACKTOP = sp;return; +} +function _sqlite3Fts3MsrIncrRestart($pCsr) { + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $i = sp; + HEAP32[$0>>2] = $pCsr; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + HEAP32[$2>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 28|0); + HEAP32[$4>>2] = 1; + HEAP32[$i>>2] = 0; + while(1) { + $5 = HEAP32[$i>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($5|0)<($8|0); + if (!($9)) { + break; + } + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + ($10<<2)|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + 80|0); + HEAP32[$15>>2] = 0; + $16 = HEAP32[$i>>2]|0; + $17 = HEAP32[$0>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + ($16<<2)|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + 84|0); + HEAP32[$21>>2] = 0; + $22 = HEAP32[$i>>2]|0; + $23 = HEAP32[$0>>2]|0; + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + ($22<<2)|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($26) + 88|0); + $28 = $27; + $29 = $28; + HEAP32[$29>>2] = 0; + $30 = (($28) + 4)|0; + $31 = $30; + HEAP32[$31>>2] = 0; + $32 = HEAP32[$i>>2]|0; + $33 = (($32) + 1)|0; + HEAP32[$i>>2] = $33; + } + STACKTOP = sp;return 0; +} +function _fts3EvalPhraseStart($pCsr,$bOptOk,$p) { + $pCsr = $pCsr|0; + $bOptOk = $bOptOk|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $12 = 0; + var $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bHaveIncr = 0, $bIncrOk = 0, $i = 0, $iCol = 0, $pSegcsr = 0; + var $pTab = 0, $pToken = 0, $pToken1 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $pTab = sp + 32|0; + $rc = sp + 28|0; + $i = sp + 24|0; + $bHaveIncr = sp + 20|0; + $bIncrOk = sp + 12|0; + $pToken = sp + 8|0; + $iCol = sp + 4|0; + $pToken1 = sp; + $pSegcsr = sp + 16|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $bOptOk; + HEAP32[$2>>2] = $p; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$pTab>>2] = $4; + HEAP32[$rc>>2] = 0; + HEAP32[$bHaveIncr>>2] = 0; + $5 = HEAP32[$1>>2]|0; + $6 = ($5|0)!=(0); + if ($6) { + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 52|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = HEAP32[$pTab>>2]|0; + $12 = (($11) + 231|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = ($10|0)==($14|0); + if ($15) { + $16 = HEAP32[$2>>2]|0; + $17 = (($16) + 48|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($18|0)<=(4); + if ($19) { + $20 = HEAP32[$2>>2]|0; + $21 = (($20) + 48|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)>(0); + if ($23) { + $24 = HEAP32[$2>>2]|0; + $25 = (($24) + 48|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)<=(4); + if ($27) { + $28 = HEAP32[$2>>2]|0; + $29 = (($28) + 48|0); + $30 = HEAP32[$29>>2]|0; + $31 = ($30|0)>(0); + $33 = $31; + } else { + $33 = 0; + } + } else { + $33 = 0; + } + } else { + $33 = 0; + } + } else { + $33 = 0; + } + } else { + $33 = 0; + } + $32 = $33&1; + HEAP32[$bIncrOk>>2] = $32; + HEAP32[$i>>2] = 0; + while(1) { + $34 = HEAP32[$bIncrOk>>2]|0; + $35 = ($34|0)==(1); + if (!($35)) { + break; + } + $36 = HEAP32[$i>>2]|0; + $37 = HEAP32[$2>>2]|0; + $38 = (($37) + 48|0); + $39 = HEAP32[$38>>2]|0; + $40 = ($36|0)<($39|0); + if (!($40)) { + break; + } + $41 = HEAP32[$i>>2]|0; + $42 = HEAP32[$2>>2]|0; + $43 = (($42) + 56|0); + $44 = (($43) + (($41*24)|0)|0); + HEAP32[$pToken>>2] = $44; + $45 = HEAP32[$pToken>>2]|0; + $46 = (($45) + 12|0); + $47 = HEAP32[$46>>2]|0; + $48 = ($47|0)!=(0); + if ($48) { + label = 13; + } else { + $49 = HEAP32[$pToken>>2]|0; + $50 = (($49) + 20|0); + $51 = HEAP32[$50>>2]|0; + $52 = ($51|0)!=(0|0); + if ($52) { + $53 = HEAP32[$pToken>>2]|0; + $54 = (($53) + 20|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + 36|0); + $57 = HEAP32[$56>>2]|0; + $58 = ($57|0)!=(0); + if (!($58)) { + label = 13; + } + } + } + if ((label|0) == 13) { + label = 0; + HEAP32[$bIncrOk>>2] = 0; + } + $59 = HEAP32[$pToken>>2]|0; + $60 = (($59) + 20|0); + $61 = HEAP32[$60>>2]|0; + $62 = ($61|0)!=(0|0); + if ($62) { + HEAP32[$bHaveIncr>>2] = 1; + } + $63 = HEAP32[$i>>2]|0; + $64 = (($63) + 1)|0; + HEAP32[$i>>2] = $64; + } + $65 = HEAP32[$bIncrOk>>2]|0; + $66 = ($65|0)!=(0); + if ($66) { + $67 = HEAP32[$bHaveIncr>>2]|0; + $68 = ($67|0)!=(0); + if ($68) { + $69 = HEAP32[$2>>2]|0; + $70 = (($69) + 52|0); + $71 = HEAP32[$70>>2]|0; + $72 = HEAP32[$pTab>>2]|0; + $73 = (($72) + 24|0); + $74 = HEAP32[$73>>2]|0; + $75 = ($71|0)>=($74|0); + if ($75) { + $79 = -1; + } else { + $76 = HEAP32[$2>>2]|0; + $77 = (($76) + 52|0); + $78 = HEAP32[$77>>2]|0; + $79 = $78; + } + HEAP32[$iCol>>2] = $79; + HEAP32[$i>>2] = 0; + while(1) { + $80 = HEAP32[$rc>>2]|0; + $81 = ($80|0)==(0); + if (!($81)) { + break; + } + $82 = HEAP32[$i>>2]|0; + $83 = HEAP32[$2>>2]|0; + $84 = (($83) + 48|0); + $85 = HEAP32[$84>>2]|0; + $86 = ($82|0)<($85|0); + if (!($86)) { + break; + } + $87 = HEAP32[$i>>2]|0; + $88 = HEAP32[$2>>2]|0; + $89 = (($88) + 56|0); + $90 = (($89) + (($87*24)|0)|0); + HEAP32[$pToken1>>2] = $90; + $91 = HEAP32[$pToken1>>2]|0; + $92 = (($91) + 20|0); + $93 = HEAP32[$92>>2]|0; + HEAP32[$pSegcsr>>2] = $93; + $94 = HEAP32[$pSegcsr>>2]|0; + $95 = ($94|0)!=(0|0); + if ($95) { + $96 = HEAP32[$pTab>>2]|0; + $97 = HEAP32[$pSegcsr>>2]|0; + $98 = HEAP32[$iCol>>2]|0; + $99 = HEAP32[$pToken1>>2]|0; + $100 = HEAP32[$99>>2]|0; + $101 = HEAP32[$pToken1>>2]|0; + $102 = (($101) + 4|0); + $103 = HEAP32[$102>>2]|0; + $104 = (_sqlite3Fts3MsrIncrStart($96,$97,$98,$100,$103)|0); + HEAP32[$rc>>2] = $104; + } + $105 = HEAP32[$i>>2]|0; + $106 = (($105) + 1)|0; + HEAP32[$i>>2] = $106; + } + $107 = HEAP32[$2>>2]|0; + $108 = (($107) + 40|0); + HEAP32[$108>>2] = 1; + $114 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($114|0); + } + } + $109 = HEAP32[$0>>2]|0; + $110 = HEAP32[$2>>2]|0; + $111 = (_fts3EvalPhraseLoad($109,$110)|0); + HEAP32[$rc>>2] = $111; + $112 = HEAP32[$2>>2]|0; + $113 = (($112) + 40|0); + HEAP32[$113>>2] = 0; + $114 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($114|0); +} +function _sqlite3Fts3MsrIncrStart($p,$pCsr,$iCol,$zTerm,$nTerm) { + $p = $p|0; + $pCsr = $pCsr|0; + $iCol = $iCol|0; + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $i = 0, $nSegment = 0, $pSeg = 0, $rc = 0, $xCmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $5 = sp + 20|0; + $i = sp + 12|0; + $rc = sp + 8|0; + $nSegment = sp + 4|0; + $xCmp = sp; + $pSeg = sp + 16|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pCsr; + HEAP32[$3>>2] = $iCol; + HEAP32[$4>>2] = $zTerm; + HEAP32[$5>>2] = $nTerm; + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$nSegment>>2] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 231|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = ($12|0)!=(0); + $14 = $13 ? 49 : 50; + HEAP32[$xCmp>>2] = $14; + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$2>>2]|0; + $17 = HEAP32[$4>>2]|0; + $18 = HEAP32[$5>>2]|0; + $19 = (_fts3SegReaderStart($15,$16,$17,$18)|0); + HEAP32[$rc>>2] = $19; + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)!=(0); + if ($21) { + $22 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $22; + $70 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($70|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $23 = HEAP32[$i>>2]|0; + $24 = HEAP32[$nSegment>>2]|0; + $25 = ($23|0)<($24|0); + if (!($25)) { + break; + } + $26 = HEAP32[$i>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + ($26<<2)|0); + $30 = HEAP32[$29>>2]|0; + HEAP32[$pSeg>>2] = $30; + $31 = HEAP32[$pSeg>>2]|0; + $32 = (($31) + 40|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($33|0)!=(0|0); + if (!($34)) { + break; + } + $35 = HEAP32[$pSeg>>2]|0; + $36 = HEAP32[$4>>2]|0; + $37 = HEAP32[$5>>2]|0; + $38 = (_fts3SegReaderTermCmp($35,$36,$37)|0); + $39 = ($38|0)!=(0); + if ($39) { + break; + } + $40 = HEAP32[$i>>2]|0; + $41 = (($40) + 1)|0; + HEAP32[$i>>2] = $41; + } + $42 = HEAP32[$i>>2]|0; + $43 = HEAP32[$2>>2]|0; + $44 = (($43) + 8|0); + HEAP32[$44>>2] = $42; + HEAP32[$i>>2] = 0; + while(1) { + $45 = HEAP32[$i>>2]|0; + $46 = HEAP32[$2>>2]|0; + $47 = (($46) + 8|0); + $48 = HEAP32[$47>>2]|0; + $49 = ($45|0)<($48|0); + if (!($49)) { + label = 13; + break; + } + $50 = HEAP32[$1>>2]|0; + $51 = HEAP32[$i>>2]|0; + $52 = HEAP32[$2>>2]|0; + $53 = HEAP32[$52>>2]|0; + $54 = (($53) + ($51<<2)|0); + $55 = HEAP32[$54>>2]|0; + $56 = (_fts3SegReaderFirstDocid($50,$55)|0); + HEAP32[$rc>>2] = $56; + $57 = HEAP32[$rc>>2]|0; + $58 = ($57|0)!=(0); + if ($58) { + label = 11; + break; + } + $60 = HEAP32[$i>>2]|0; + $61 = (($60) + 1)|0; + HEAP32[$i>>2] = $61; + } + if ((label|0) == 11) { + $59 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $59; + $70 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($70|0); + } + else if ((label|0) == 13) { + $62 = HEAP32[$2>>2]|0; + $63 = HEAP32[$62>>2]|0; + $64 = HEAP32[$i>>2]|0; + $65 = HEAP32[$i>>2]|0; + $66 = HEAP32[$xCmp>>2]|0; + _fts3SegReaderSort($63,$64,$65,$66); + $67 = HEAP32[$3>>2]|0; + $68 = HEAP32[$2>>2]|0; + $69 = (($68) + 24|0); + HEAP32[$69>>2] = $67; + HEAP32[$0>>2] = 0; + $70 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($70|0); + } + return 0|0; +} +function _fts3EvalPhraseLoad($pCsr,$p) { + $pCsr = $pCsr|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iToken = 0, $nThis = 0, $pTab = 0, $pThis = 0, $pToken = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $pTab = sp + 4|0; + $iToken = sp + 8|0; + $rc = sp + 12|0; + $pToken = sp + 16|0; + $nThis = sp + 20|0; + $pThis = sp + 24|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$pTab>>2] = $3; + HEAP32[$rc>>2] = 0; + HEAP32[$iToken>>2] = 0; + while(1) { + $4 = HEAP32[$rc>>2]|0; + $5 = ($4|0)==(0); + if (!($5)) { + label = 8; + break; + } + $6 = HEAP32[$iToken>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 48|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($6|0)<($9|0); + if (!($10)) { + label = 8; + break; + } + $11 = HEAP32[$iToken>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 56|0); + $14 = (($13) + (($11*24)|0)|0); + HEAP32[$pToken>>2] = $14; + $15 = HEAP32[$pToken>>2]|0; + $16 = (($15) + 20|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)!=(0|0); + if ($18) { + HEAP32[$nThis>>2] = 0; + HEAP32[$pThis>>2] = 0; + $19 = HEAP32[$pTab>>2]|0; + $20 = HEAP32[$pToken>>2]|0; + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 52|0); + $23 = HEAP32[$22>>2]|0; + $24 = (_fts3TermSelect($19,$20,$23,$nThis,$pThis)|0); + HEAP32[$rc>>2] = $24; + $25 = HEAP32[$rc>>2]|0; + $26 = ($25|0)==(0); + if ($26) { + $27 = HEAP32[$pTab>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = HEAP32[$iToken>>2]|0; + $30 = HEAP32[$pThis>>2]|0; + $31 = HEAP32[$nThis>>2]|0; + _fts3EvalPhraseMergeToken($27,$28,$29,$30,$31); + } + } + $32 = HEAP32[$iToken>>2]|0; + $33 = (($32) + 1)|0; + HEAP32[$iToken>>2] = $33; + } + if ((label|0) == 8) { + $34 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($34|0); + } + return 0|0; +} +function _fts3TermSelect($p,$pTok,$iColumn,$pnOut,$ppOut) { + $p = $p|0; + $pTok = $pTok|0; + $iColumn = $iColumn|0; + $pnOut = $pnOut|0; + $ppOut = $ppOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $8 = 0, $9 = 0, $filter = 0, $i = 0, $pSegcsr = 0, $rc = 0, $tsc = 0; + var dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 176|0; + $0 = sp + 172|0; + $1 = sp + 168|0; + $2 = sp + 164|0; + $3 = sp + 160|0; + $4 = sp + 156|0; + $rc = sp + 152|0; + $pSegcsr = sp + 144|0; + $tsc = sp + 16|0; + $filter = sp; + $i = sp + 148|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pTok; + HEAP32[$2>>2] = $iColumn; + HEAP32[$3>>2] = $pnOut; + HEAP32[$4>>2] = $ppOut; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 20|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pSegcsr>>2] = $7; + dest=$tsc+0|0; stop=dest+128|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 8|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0); + $12 = $11 ? 8 : 0; + $13 = 3 | $12; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 12|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(0); + $18 = $17 ? 32 : 0; + $19 = $13 | $18; + $20 = HEAP32[$2>>2]|0; + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 24|0); + $23 = HEAP32[$22>>2]|0; + $24 = ($20|0)<($23|0); + $25 = $24 ? 4 : 0; + $26 = $19 | $25; + $27 = (($filter) + 12|0); + HEAP32[$27>>2] = $26; + $28 = HEAP32[$2>>2]|0; + $29 = (($filter) + 8|0); + HEAP32[$29>>2] = $28; + $30 = HEAP32[$1>>2]|0; + $31 = HEAP32[$30>>2]|0; + HEAP32[$filter>>2] = $31; + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = (($filter) + 4|0); + HEAP32[$35>>2] = $34; + $36 = HEAP32[$0>>2]|0; + $37 = HEAP32[$pSegcsr>>2]|0; + $38 = (_sqlite3Fts3SegReaderStart($36,$37,$filter)|0); + HEAP32[$rc>>2] = $38; + while(1) { + $39 = HEAP32[$rc>>2]|0; + $40 = (0)==($39|0); + if (!($40)) { + break; + } + $41 = HEAP32[$0>>2]|0; + $42 = HEAP32[$pSegcsr>>2]|0; + $43 = (_sqlite3Fts3SegReaderStep($41,$42)|0); + HEAP32[$rc>>2] = $43; + $44 = (100)==($43|0); + if (!($44)) { + break; + } + $45 = HEAP32[$0>>2]|0; + $46 = HEAP32[$pSegcsr>>2]|0; + $47 = (($46) + 48|0); + $48 = HEAP32[$47>>2]|0; + $49 = HEAP32[$pSegcsr>>2]|0; + $50 = (($49) + 52|0); + $51 = HEAP32[$50>>2]|0; + $52 = (_fts3TermSelectMerge($45,$tsc,$48,$51)|0); + HEAP32[$rc>>2] = $52; + } + $53 = HEAP32[$rc>>2]|0; + $54 = ($53|0)==(0); + if ($54) { + $55 = HEAP32[$0>>2]|0; + $56 = (_fts3TermSelectFinishMerge($55,$tsc)|0); + HEAP32[$rc>>2] = $56; + } + $57 = HEAP32[$rc>>2]|0; + $58 = ($57|0)==(0); + if ($58) { + $59 = HEAP32[$tsc>>2]|0; + $60 = HEAP32[$4>>2]|0; + HEAP32[$60>>2] = $59; + $61 = (($tsc) + 64|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$3>>2]|0; + HEAP32[$63>>2] = $62; + $71 = HEAP32[$pSegcsr>>2]|0; + _fts3SegReaderCursorFree($71); + $72 = HEAP32[$1>>2]|0; + $73 = (($72) + 20|0); + HEAP32[$73>>2] = 0; + $74 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($74|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $64 = HEAP32[$i>>2]|0; + $65 = ($64|0)<(16); + if (!($65)) { + break; + } + $66 = HEAP32[$i>>2]|0; + $67 = (($tsc) + ($66<<2)|0); + $68 = HEAP32[$67>>2]|0; + _sqlite3_free($68); + $69 = HEAP32[$i>>2]|0; + $70 = (($69) + 1)|0; + HEAP32[$i>>2] = $70; + } + $71 = HEAP32[$pSegcsr>>2]|0; + _fts3SegReaderCursorFree($71); + $72 = HEAP32[$1>>2]|0; + $73 = (($72) + 20|0); + HEAP32[$73>>2] = 0; + $74 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($74|0); +} +function _fts3EvalPhraseMergeToken($pTab,$p,$iToken,$pList,$nList) { + $pTab = $pTab|0; + $p = $p|0; + $iToken = $iToken|0; + $pList = $pList|0; + $nList = $nList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $nDiff = 0, $nLeft = 0, $nRight = 0, $pLeft = 0, $pRight = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 20|0; + $pLeft = sp + 16|0; + $pRight = sp + 8|0; + $nLeft = sp + 4|0; + $nRight = sp; + $nDiff = sp + 12|0; + HEAP32[$0>>2] = $pTab; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $iToken; + HEAP32[$3>>2] = $pList; + HEAP32[$4>>2] = $nList; + $5 = HEAP32[$3>>2]|0; + $6 = ($5|0)==(0|0); + $7 = HEAP32[$1>>2]|0; + do { + if ($6) { + $8 = HEAP32[$7>>2]|0; + _sqlite3_free($8); + $9 = HEAP32[$1>>2]|0; + HEAP32[$9>>2] = 0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 4|0); + HEAP32[$11>>2] = 0; + } else { + $12 = (($7) + 44|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)<(0); + if ($14) { + $15 = HEAP32[$3>>2]|0; + $16 = HEAP32[$1>>2]|0; + HEAP32[$16>>2] = $15; + $17 = HEAP32[$4>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 4|0); + HEAP32[$19>>2] = $17; + break; + } + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)==(0|0); + if ($22) { + $23 = HEAP32[$3>>2]|0; + _sqlite3_free($23); + break; + } + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 44|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = ($26|0)<($27|0); + $29 = HEAP32[$1>>2]|0; + $30 = HEAP32[$29>>2]|0; + if ($28) { + HEAP32[$pLeft>>2] = $30; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 4|0); + $33 = HEAP32[$32>>2]|0; + HEAP32[$nLeft>>2] = $33; + $34 = HEAP32[$3>>2]|0; + HEAP32[$pRight>>2] = $34; + $35 = HEAP32[$4>>2]|0; + HEAP32[$nRight>>2] = $35; + $36 = HEAP32[$2>>2]|0; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 44|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($36) - ($39))|0; + HEAP32[$nDiff>>2] = $40; + } else { + HEAP32[$pRight>>2] = $30; + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 4|0); + $43 = HEAP32[$42>>2]|0; + HEAP32[$nRight>>2] = $43; + $44 = HEAP32[$3>>2]|0; + HEAP32[$pLeft>>2] = $44; + $45 = HEAP32[$4>>2]|0; + HEAP32[$nLeft>>2] = $45; + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 44|0); + $48 = HEAP32[$47>>2]|0; + $49 = HEAP32[$2>>2]|0; + $50 = (($48) - ($49))|0; + HEAP32[$nDiff>>2] = $50; + } + $51 = HEAP32[$0>>2]|0; + $52 = (($51) + 231|0); + $53 = HEAP8[$52>>0]|0; + $54 = $53&255; + $55 = HEAP32[$nDiff>>2]|0; + $56 = HEAP32[$pLeft>>2]|0; + $57 = HEAP32[$nLeft>>2]|0; + $58 = HEAP32[$pRight>>2]|0; + _fts3DoclistPhraseMerge($54,$55,$56,$57,$58,$nRight); + $59 = HEAP32[$pLeft>>2]|0; + _sqlite3_free($59); + $60 = HEAP32[$pRight>>2]|0; + $61 = HEAP32[$1>>2]|0; + HEAP32[$61>>2] = $60; + $62 = HEAP32[$nRight>>2]|0; + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + 4|0); + HEAP32[$64>>2] = $62; + } + } while(0); + $65 = HEAP32[$2>>2]|0; + $66 = HEAP32[$1>>2]|0; + $67 = (($66) + 44|0); + $68 = HEAP32[$67>>2]|0; + $69 = ($65|0)>($68|0); + if (!($69)) { + STACKTOP = sp;return; + } + $70 = HEAP32[$2>>2]|0; + $71 = HEAP32[$1>>2]|0; + $72 = (($71) + 44|0); + HEAP32[$72>>2] = $70; + STACKTOP = sp;return; +} +function _fts3DoclistPhraseMerge($bDescDoclist,$nDist,$aLeft,$nLeft,$aRight,$pnRight) { + $bDescDoclist = $bDescDoclist|0; + $nDist = $nDist|0; + $aLeft = $aLeft|0; + $nLeft = $nLeft|0; + $aRight = $aRight|0; + $pnRight = $pnRight|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; + var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; + var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; + var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; + var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; + var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aOut = 0, $bFirstOut = 0, $bFirstOutSave = 0, $i1 = 0, $i2 = 0, $iDiff = 0, $iPrev = 0, $iPrevSave = 0, $p = 0, $p1 = 0, $p2 = 0, $pEnd1 = 0, $pEnd2 = 0, $pSave = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $0 = sp + 96|0; + $1 = sp + 92|0; + $2 = sp + 88|0; + $3 = sp + 84|0; + $4 = sp + 80|0; + $5 = sp + 76|0; + $i1 = sp + 8|0; + $i2 = sp; + $iPrev = sp + 24|0; + $pEnd1 = sp + 72|0; + $pEnd2 = sp + 48|0; + $p1 = sp + 52|0; + $p2 = sp + 40|0; + $p = sp + 44|0; + $bFirstOut = sp + 56|0; + $aOut = sp + 60|0; + $iDiff = sp + 16|0; + $pSave = sp + 64|0; + $iPrevSave = sp + 32|0; + $bFirstOutSave = sp + 68|0; + HEAP32[$0>>2] = $bDescDoclist; + HEAP32[$1>>2] = $nDist; + HEAP32[$2>>2] = $aLeft; + HEAP32[$3>>2] = $nLeft; + HEAP32[$4>>2] = $aRight; + HEAP32[$5>>2] = $pnRight; + $6 = $i1; + $7 = $6; + HEAP32[$7>>2] = 0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = 0; + $10 = $i2; + $11 = $10; + HEAP32[$11>>2] = 0; + $12 = (($10) + 4)|0; + $13 = $12; + HEAP32[$13>>2] = 0; + $14 = $iPrev; + $15 = $14; + HEAP32[$15>>2] = 0; + $16 = (($14) + 4)|0; + $17 = $16; + HEAP32[$17>>2] = 0; + $18 = HEAP32[$3>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = (($19) + ($18)|0); + HEAP32[$pEnd1>>2] = $20; + $21 = HEAP32[$5>>2]|0; + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$4>>2]|0; + $24 = (($23) + ($22)|0); + HEAP32[$pEnd2>>2] = $24; + $25 = HEAP32[$2>>2]|0; + HEAP32[$p1>>2] = $25; + $26 = HEAP32[$4>>2]|0; + HEAP32[$p2>>2] = $26; + HEAP32[$bFirstOut>>2] = 0; + $27 = HEAP32[$4>>2]|0; + HEAP32[$aOut>>2] = $27; + $28 = HEAP32[$aOut>>2]|0; + HEAP32[$p>>2] = $28; + $29 = HEAP32[$pEnd1>>2]|0; + _fts3GetDeltaVarint3($p1,$29,0,$i1); + $30 = HEAP32[$pEnd2>>2]|0; + _fts3GetDeltaVarint3($p2,$30,0,$i2); + while(1) { + $31 = HEAP32[$p1>>2]|0; + $32 = ($31|0)!=(0|0); + if (!($32)) { + label = 11; + break; + } + $33 = HEAP32[$p2>>2]|0; + $34 = ($33|0)!=(0|0); + if (!($34)) { + label = 11; + break; + } + $35 = HEAP32[$0>>2]|0; + $36 = ($35|0)!=(0); + $37 = $36 ? -1 : 1; + $38 = ($37|0)<(0); + $39 = $38 << 31 >> 31; + $40 = $i1; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (($40) + 4)|0; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = $i2; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = (($46) + 4)|0; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = (_i64Subtract(($42|0),($45|0),($48|0),($51|0))|0); + $53 = tempRet0; + $54 = (___muldi3(($37|0),($39|0),($52|0),($53|0))|0); + $55 = tempRet0; + $56 = $iDiff; + $57 = $56; + HEAP32[$57>>2] = $54; + $58 = (($56) + 4)|0; + $59 = $58; + HEAP32[$59>>2] = $55; + $60 = $iDiff; + $61 = $60; + $62 = HEAP32[$61>>2]|0; + $63 = (($60) + 4)|0; + $64 = $63; + $65 = HEAP32[$64>>2]|0; + $66 = ($62|0)==(0); + $67 = ($65|0)==(0); + $68 = $66 & $67; + if ($68) { + $69 = HEAP32[$p>>2]|0; + HEAP32[$pSave>>2] = $69; + $70 = $iPrev; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = (($70) + 4)|0; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $76 = $iPrevSave; + $77 = $76; + HEAP32[$77>>2] = $72; + $78 = (($76) + 4)|0; + $79 = $78; + HEAP32[$79>>2] = $75; + $80 = HEAP32[$bFirstOut>>2]|0; + HEAP32[$bFirstOutSave>>2] = $80; + $81 = HEAP32[$0>>2]|0; + $82 = $i1; + $83 = $82; + $84 = HEAP32[$83>>2]|0; + $85 = (($82) + 4)|0; + $86 = $85; + $87 = HEAP32[$86>>2]|0; + _fts3PutDeltaVarint3($p,$81,$iPrev,$bFirstOut,$84,$87); + $88 = HEAP32[$1>>2]|0; + $89 = (_fts3PoslistPhraseMerge($p,$88,0,1,$p1,$p2)|0); + $90 = (0)==($89|0); + if ($90) { + $91 = HEAP32[$pSave>>2]|0; + HEAP32[$p>>2] = $91; + $92 = $iPrevSave; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = (($92) + 4)|0; + $96 = $95; + $97 = HEAP32[$96>>2]|0; + $98 = $iPrev; + $99 = $98; + HEAP32[$99>>2] = $94; + $100 = (($98) + 4)|0; + $101 = $100; + HEAP32[$101>>2] = $97; + $102 = HEAP32[$bFirstOutSave>>2]|0; + HEAP32[$bFirstOut>>2] = $102; + } + $103 = HEAP32[$pEnd1>>2]|0; + $104 = HEAP32[$0>>2]|0; + _fts3GetDeltaVarint3($p1,$103,$104,$i1); + $105 = HEAP32[$pEnd2>>2]|0; + $106 = HEAP32[$0>>2]|0; + _fts3GetDeltaVarint3($p2,$105,$106,$i2); + continue; + } else { + $107 = $iDiff; + $108 = $107; + $109 = HEAP32[$108>>2]|0; + $110 = (($107) + 4)|0; + $111 = $110; + $112 = HEAP32[$111>>2]|0; + $113 = ($112|0)<(0); + if ($113) { + _fts3PoslistCopy(0,$p1); + $114 = HEAP32[$pEnd1>>2]|0; + $115 = HEAP32[$0>>2]|0; + _fts3GetDeltaVarint3($p1,$114,$115,$i1); + continue; + } else { + _fts3PoslistCopy(0,$p2); + $116 = HEAP32[$pEnd2>>2]|0; + $117 = HEAP32[$0>>2]|0; + _fts3GetDeltaVarint3($p2,$116,$117,$i2); + continue; + } + } + } + if ((label|0) == 11) { + $118 = HEAP32[$p>>2]|0; + $119 = HEAP32[$aOut>>2]|0; + $120 = $118; + $121 = $119; + $122 = (($120) - ($121))|0; + $123 = HEAP32[$5>>2]|0; + HEAP32[$123>>2] = $122; + STACKTOP = sp;return; + } +} +function _fts3GetDeltaVarint3($pp,$pEnd,$bDescIdx,$pVal) { + $pp = $pp|0; + $pEnd = $pEnd|0; + $bDescIdx = $bDescIdx|0; + $pVal = $pVal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $iVal = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp + 16|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $iVal = sp; + HEAP32[$0>>2] = $pp; + HEAP32[$1>>2] = $pEnd; + HEAP32[$2>>2] = $bDescIdx; + HEAP32[$3>>2] = $pVal; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = ($5>>>0)>=($6>>>0); + $8 = HEAP32[$0>>2]|0; + if ($7) { + HEAP32[$8>>2] = 0; + STACKTOP = sp;return; + } + $9 = HEAP32[$8>>2]|0; + $10 = (_sqlite3Fts3GetVarint($9,$iVal)|0); + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + ($10)|0); + HEAP32[$11>>2] = $13; + $14 = HEAP32[$2>>2]|0; + $15 = ($14|0)!=(0); + $16 = $iVal; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = (($16) + 4)|0; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$3>>2]|0; + $23 = $22; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = (($23) + 4)|0; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + if ($15) { + $29 = (_i64Subtract(($25|0),($28|0),($18|0),($21|0))|0); + $30 = tempRet0; + $31 = $22; + $32 = $31; + HEAP32[$32>>2] = $29; + $33 = (($31) + 4)|0; + $34 = $33; + HEAP32[$34>>2] = $30; + STACKTOP = sp;return; + } else { + $35 = (_i64Add(($25|0),($28|0),($18|0),($21|0))|0); + $36 = tempRet0; + $37 = $22; + $38 = $37; + HEAP32[$38>>2] = $35; + $39 = (($37) + 4)|0; + $40 = $39; + HEAP32[$40>>2] = $36; + STACKTOP = sp;return; + } +} +function _fts3PutDeltaVarint3($pp,$bDescIdx,$piPrev,$pbFirst,$0,$1) { + $pp = $pp|0; + $bDescIdx = $bDescIdx|0; + $piPrev = $piPrev|0; + $pbFirst = $pbFirst|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $8 = 0, $9 = 0, $iWrite = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 20|0; + $5 = sp + 16|0; + $6 = sp; + $iWrite = sp + 8|0; + HEAP32[$2>>2] = $pp; + HEAP32[$3>>2] = $bDescIdx; + HEAP32[$4>>2] = $piPrev; + HEAP32[$5>>2] = $pbFirst; + $7 = $6; + $8 = $7; + HEAP32[$8>>2] = $0; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = $1; + $11 = HEAP32[$3>>2]|0; + $12 = ($11|0)==(0); + if ($12) { + label = 3; + } else { + $13 = HEAP32[$5>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)==(0); + if ($15) { + label = 3; + } else { + $35 = HEAP32[$4>>2]|0; + $36 = $35; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + $39 = (($36) + 4)|0; + $40 = $39; + $41 = HEAP32[$40>>2]|0; + $42 = $6; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (_i64Subtract(($38|0),($41|0),($44|0),($47|0))|0); + $49 = tempRet0; + $50 = $iWrite; + $51 = $50; + HEAP32[$51>>2] = $48; + $52 = (($50) + 4)|0; + $53 = $52; + HEAP32[$53>>2] = $49; + } + } + if ((label|0) == 3) { + $16 = $6; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = (($16) + 4)|0; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$4>>2]|0; + $23 = $22; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = (($23) + 4)|0; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = (_i64Subtract(($18|0),($21|0),($25|0),($28|0))|0); + $30 = tempRet0; + $31 = $iWrite; + $32 = $31; + HEAP32[$32>>2] = $29; + $33 = (($31) + 4)|0; + $34 = $33; + HEAP32[$34>>2] = $30; + } + $54 = HEAP32[$2>>2]|0; + $55 = HEAP32[$54>>2]|0; + $56 = $iWrite; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = (($56) + 4)|0; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = (_sqlite3Fts3PutVarint($55,$58,$61)|0); + $63 = HEAP32[$2>>2]|0; + $64 = HEAP32[$63>>2]|0; + $65 = (($64) + ($62)|0); + HEAP32[$63>>2] = $65; + $66 = $6; + $67 = $66; + $68 = HEAP32[$67>>2]|0; + $69 = (($66) + 4)|0; + $70 = $69; + $71 = HEAP32[$70>>2]|0; + $72 = HEAP32[$4>>2]|0; + $73 = $72; + $74 = $73; + HEAP32[$74>>2] = $68; + $75 = (($73) + 4)|0; + $76 = $75; + HEAP32[$76>>2] = $71; + $77 = HEAP32[$5>>2]|0; + HEAP32[$77>>2] = 1; + STACKTOP = sp;return; +} +function _fts3TermSelectMerge($p,$pTS,$aDoclist,$nDoclist) { + $p = $p|0; + $pTS = $pTS|0; + $aDoclist = $aDoclist|0; + $nDoclist = $nDoclist|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $aMerge = 0, $aNew = 0, $iOut = 0, $nMerge = 0, $nNew = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $aMerge = sp + 20|0; + $nMerge = sp + 12|0; + $iOut = sp + 8|0; + $aNew = sp + 4|0; + $nNew = sp; + $rc = sp + 16|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pTS; + HEAP32[$3>>2] = $aDoclist; + HEAP32[$4>>2] = $nDoclist; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)==(0|0); + L1: do { + if ($7) { + $8 = HEAP32[$4>>2]|0; + $9 = (_sqlite3_malloc($8)|0); + $10 = HEAP32[$2>>2]|0; + HEAP32[$10>>2] = $9; + $11 = HEAP32[$4>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = (($12) + 64|0); + HEAP32[$13>>2] = $11; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$3>>2]|0; + $20 = HEAP32[$4>>2]|0; + _memcpy(($18|0),($19|0),($20|0))|0; + break; + } + HEAP32[$0>>2] = 7; + $86 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($86|0); + } else { + $21 = HEAP32[$3>>2]|0; + HEAP32[$aMerge>>2] = $21; + $22 = HEAP32[$4>>2]|0; + HEAP32[$nMerge>>2] = $22; + HEAP32[$iOut>>2] = 0; + while(1) { + $23 = HEAP32[$iOut>>2]|0; + $24 = ($23|0)<(16); + if (!($24)) { + break L1; + } + $25 = HEAP32[$iOut>>2]|0; + $26 = HEAP32[$2>>2]|0; + $27 = (($26) + ($25<<2)|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)==(0|0); + if ($29) { + label = 8; + break; + } + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 231|0); + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = HEAP32[$aMerge>>2]|0; + $44 = HEAP32[$nMerge>>2]|0; + $45 = HEAP32[$iOut>>2]|0; + $46 = HEAP32[$2>>2]|0; + $47 = (($46) + ($45<<2)|0); + $48 = HEAP32[$47>>2]|0; + $49 = HEAP32[$iOut>>2]|0; + $50 = HEAP32[$2>>2]|0; + $51 = (($50) + 64|0); + $52 = (($51) + ($49<<2)|0); + $53 = HEAP32[$52>>2]|0; + $54 = (_fts3DoclistOrMerge($42,$43,$44,$48,$53,$aNew,$nNew)|0); + HEAP32[$rc>>2] = $54; + $55 = HEAP32[$rc>>2]|0; + $56 = ($55|0)!=(0); + $57 = HEAP32[$aMerge>>2]|0; + $58 = HEAP32[$3>>2]|0; + $59 = ($57|0)!=($58|0); + if ($56) { + break; + } + if ($59) { + $62 = HEAP32[$aMerge>>2]|0; + _sqlite3_free($62); + } + $63 = HEAP32[$iOut>>2]|0; + $64 = HEAP32[$2>>2]|0; + $65 = (($64) + ($63<<2)|0); + $66 = HEAP32[$65>>2]|0; + _sqlite3_free($66); + $67 = HEAP32[$iOut>>2]|0; + $68 = HEAP32[$2>>2]|0; + $69 = (($68) + ($67<<2)|0); + HEAP32[$69>>2] = 0; + $70 = HEAP32[$aNew>>2]|0; + HEAP32[$aMerge>>2] = $70; + $71 = HEAP32[$nNew>>2]|0; + HEAP32[$nMerge>>2] = $71; + $72 = HEAP32[$iOut>>2]|0; + $73 = (($72) + 1)|0; + $74 = ($73|0)==(16); + if ($74) { + $75 = HEAP32[$aMerge>>2]|0; + $76 = HEAP32[$iOut>>2]|0; + $77 = HEAP32[$2>>2]|0; + $78 = (($77) + ($76<<2)|0); + HEAP32[$78>>2] = $75; + $79 = HEAP32[$nMerge>>2]|0; + $80 = HEAP32[$iOut>>2]|0; + $81 = HEAP32[$2>>2]|0; + $82 = (($81) + 64|0); + $83 = (($82) + ($80<<2)|0); + HEAP32[$83>>2] = $79; + } + $84 = HEAP32[$iOut>>2]|0; + $85 = (($84) + 1)|0; + HEAP32[$iOut>>2] = $85; + } + if ((label|0) == 8) { + $30 = HEAP32[$aMerge>>2]|0; + $31 = HEAP32[$iOut>>2]|0; + $32 = HEAP32[$2>>2]|0; + $33 = (($32) + ($31<<2)|0); + HEAP32[$33>>2] = $30; + $34 = HEAP32[$nMerge>>2]|0; + $35 = HEAP32[$iOut>>2]|0; + $36 = HEAP32[$2>>2]|0; + $37 = (($36) + 64|0); + $38 = (($37) + ($35<<2)|0); + HEAP32[$38>>2] = $34; + break; + } + if ($59) { + $60 = HEAP32[$aMerge>>2]|0; + _sqlite3_free($60); + } + $61 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $61; + $86 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($86|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $86 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($86|0); +} +function _fts3TermSelectFinishMerge($p,$pTS) { + $p = $p|0; + $pTS = $pTS|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0; + var $8 = 0, $9 = 0, $aNew = 0, $aOut = 0, $i = 0, $nNew = 0, $nOut = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $aOut = sp + 20|0; + $nOut = sp + 16|0; + $i = sp + 8|0; + $nNew = sp + 4|0; + $aNew = sp; + $rc = sp + 12|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pTS; + HEAP32[$aOut>>2] = 0; + HEAP32[$nOut>>2] = 0; + HEAP32[$i>>2] = 0; + L1: while(1) { + $3 = HEAP32[$i>>2]|0; + $4 = ($3|0)<(16); + if (!($4)) { + label = 10; + break; + } + $5 = HEAP32[$i>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + ($5<<2)|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + do { + if ($9) { + $10 = HEAP32[$aOut>>2]|0; + $11 = ($10|0)!=(0|0); + if (!($11)) { + $12 = HEAP32[$i>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + ($12<<2)|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$aOut>>2] = $15; + $16 = HEAP32[$i>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = (($17) + 64|0); + $19 = (($18) + ($16<<2)|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$nOut>>2] = $20; + $21 = HEAP32[$i>>2]|0; + $22 = HEAP32[$2>>2]|0; + $23 = (($22) + ($21<<2)|0); + HEAP32[$23>>2] = 0; + break; + } + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 231|0); + $26 = HEAP8[$25>>0]|0; + $27 = $26&255; + $28 = HEAP32[$i>>2]|0; + $29 = HEAP32[$2>>2]|0; + $30 = (($29) + ($28<<2)|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$i>>2]|0; + $33 = HEAP32[$2>>2]|0; + $34 = (($33) + 64|0); + $35 = (($34) + ($32<<2)|0); + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$aOut>>2]|0; + $38 = HEAP32[$nOut>>2]|0; + $39 = (_fts3DoclistOrMerge($27,$31,$36,$37,$38,$aNew,$nNew)|0); + HEAP32[$rc>>2] = $39; + $40 = HEAP32[$rc>>2]|0; + $41 = ($40|0)!=(0); + if ($41) { + label = 7; + break L1; + } + $44 = HEAP32[$i>>2]|0; + $45 = HEAP32[$2>>2]|0; + $46 = (($45) + ($44<<2)|0); + $47 = HEAP32[$46>>2]|0; + _sqlite3_free($47); + $48 = HEAP32[$aOut>>2]|0; + _sqlite3_free($48); + $49 = HEAP32[$i>>2]|0; + $50 = HEAP32[$2>>2]|0; + $51 = (($50) + ($49<<2)|0); + HEAP32[$51>>2] = 0; + $52 = HEAP32[$aNew>>2]|0; + HEAP32[$aOut>>2] = $52; + $53 = HEAP32[$nNew>>2]|0; + HEAP32[$nOut>>2] = $53; + } + } while(0); + $54 = HEAP32[$i>>2]|0; + $55 = (($54) + 1)|0; + HEAP32[$i>>2] = $55; + } + if ((label|0) == 7) { + $42 = HEAP32[$aOut>>2]|0; + _sqlite3_free($42); + $43 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $43; + $61 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($61|0); + } + else if ((label|0) == 10) { + $56 = HEAP32[$aOut>>2]|0; + $57 = HEAP32[$2>>2]|0; + HEAP32[$57>>2] = $56; + $58 = HEAP32[$nOut>>2]|0; + $59 = HEAP32[$2>>2]|0; + $60 = (($59) + 64|0); + HEAP32[$60>>2] = $58; + HEAP32[$0>>2] = 0; + $61 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($61|0); + } + return 0|0; +} +function _fts3SegReaderCursorFree($pSegcsr) { + $pSegcsr = $pSegcsr|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pSegcsr; + $1 = HEAP32[$0>>2]|0; + _sqlite3Fts3SegReaderFinish($1); + $2 = HEAP32[$0>>2]|0; + _sqlite3_free($2); + STACKTOP = sp;return; +} +function _fts3DoclistOrMerge($bDescDoclist,$a1,$n1,$a2,$n2,$paOut,$pnOut) { + $bDescDoclist = $bDescDoclist|0; + $a1 = $a1|0; + $n1 = $n1|0; + $a2 = $a2|0; + $n2 = $n2|0; + $paOut = $paOut|0; + $pnOut = $pnOut|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $14 = 0, $15 = 0; + var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aOut = 0, $bFirstOut = 0, $i1 = 0, $i2 = 0, $iDiff = 0, $iPrev = 0, $p = 0, $p1 = 0; + var $p2 = 0, $pEnd1 = 0, $pEnd2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 56|0; + $1 = sp + 64|0; + $2 = sp + 68|0; + $3 = sp + 72|0; + $4 = sp + 88|0; + $5 = sp + 84|0; + $6 = sp + 80|0; + $7 = sp + 76|0; + $i1 = sp + 16|0; + $i2 = sp + 8|0; + $iPrev = sp; + $pEnd1 = sp + 60|0; + $pEnd2 = sp + 52|0; + $p1 = sp + 48|0; + $p2 = sp + 44|0; + $p = sp + 40|0; + $aOut = sp + 36|0; + $bFirstOut = sp + 32|0; + $iDiff = sp + 24|0; + HEAP32[$1>>2] = $bDescDoclist; + HEAP32[$2>>2] = $a1; + HEAP32[$3>>2] = $n1; + HEAP32[$4>>2] = $a2; + HEAP32[$5>>2] = $n2; + HEAP32[$6>>2] = $paOut; + HEAP32[$7>>2] = $pnOut; + $8 = $i1; + $9 = $8; + HEAP32[$9>>2] = 0; + $10 = (($8) + 4)|0; + $11 = $10; + HEAP32[$11>>2] = 0; + $12 = $i2; + $13 = $12; + HEAP32[$13>>2] = 0; + $14 = (($12) + 4)|0; + $15 = $14; + HEAP32[$15>>2] = 0; + $16 = $iPrev; + $17 = $16; + HEAP32[$17>>2] = 0; + $18 = (($16) + 4)|0; + $19 = $18; + HEAP32[$19>>2] = 0; + $20 = HEAP32[$3>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + ($20)|0); + HEAP32[$pEnd1>>2] = $22; + $23 = HEAP32[$5>>2]|0; + $24 = HEAP32[$4>>2]|0; + $25 = (($24) + ($23)|0); + HEAP32[$pEnd2>>2] = $25; + $26 = HEAP32[$2>>2]|0; + HEAP32[$p1>>2] = $26; + $27 = HEAP32[$4>>2]|0; + HEAP32[$p2>>2] = $27; + HEAP32[$bFirstOut>>2] = 0; + $28 = HEAP32[$6>>2]|0; + HEAP32[$28>>2] = 0; + $29 = HEAP32[$7>>2]|0; + HEAP32[$29>>2] = 0; + $30 = HEAP32[$3>>2]|0; + $31 = HEAP32[$5>>2]|0; + $32 = (($30) + ($31))|0; + $33 = (($32) + 10)|0; + $34 = (($33) - 1)|0; + $35 = (_sqlite3_malloc($34)|0); + HEAP32[$aOut>>2] = $35; + $36 = HEAP32[$aOut>>2]|0; + $37 = ($36|0)!=(0|0); + if (!($37)) { + HEAP32[$0>>2] = 7; + $131 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($131|0); + } + $38 = HEAP32[$aOut>>2]|0; + HEAP32[$p>>2] = $38; + $39 = HEAP32[$pEnd1>>2]|0; + _fts3GetDeltaVarint3($p1,$39,0,$i1); + $40 = HEAP32[$pEnd2>>2]|0; + _fts3GetDeltaVarint3($p2,$40,0,$i2); + L5: while(1) { + $41 = HEAP32[$p1>>2]|0; + $42 = ($41|0)!=(0|0); + if (!($42)) { + $43 = HEAP32[$p2>>2]|0; + $44 = ($43|0)!=(0|0); + if (!($44)) { + break; + } + } + $45 = HEAP32[$1>>2]|0; + $46 = ($45|0)!=(0); + $47 = $46 ? -1 : 1; + $48 = ($47|0)<(0); + $49 = $48 << 31 >> 31; + $50 = $i1; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (($50) + 4)|0; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + $56 = $i2; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = (($56) + 4)|0; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = (_i64Subtract(($52|0),($55|0),($58|0),($61|0))|0); + $63 = tempRet0; + $64 = (___muldi3(($47|0),($49|0),($62|0),($63|0))|0); + $65 = tempRet0; + $66 = $iDiff; + $67 = $66; + HEAP32[$67>>2] = $64; + $68 = (($66) + 4)|0; + $69 = $68; + HEAP32[$69>>2] = $65; + $70 = HEAP32[$p2>>2]|0; + $71 = ($70|0)!=(0|0); + if ($71) { + $72 = HEAP32[$p1>>2]|0; + $73 = ($72|0)!=(0|0); + if ($73) { + $74 = $iDiff; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = (($74) + 4)|0; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = ($76|0)==(0); + $81 = ($79|0)==(0); + $82 = $80 & $81; + if ($82) { + $83 = HEAP32[$1>>2]|0; + $84 = $i1; + $85 = $84; + $86 = HEAP32[$85>>2]|0; + $87 = (($84) + 4)|0; + $88 = $87; + $89 = HEAP32[$88>>2]|0; + _fts3PutDeltaVarint3($p,$83,$iPrev,$bFirstOut,$86,$89); + _fts3PoslistMerge($p,$p1,$p2); + $90 = HEAP32[$pEnd1>>2]|0; + $91 = HEAP32[$1>>2]|0; + _fts3GetDeltaVarint3($p1,$90,$91,$i1); + $92 = HEAP32[$pEnd2>>2]|0; + $93 = HEAP32[$1>>2]|0; + _fts3GetDeltaVarint3($p2,$92,$93,$i2); + continue; + } + } + } + $94 = HEAP32[$p2>>2]|0; + $95 = ($94|0)!=(0|0); + do { + if ($95) { + $96 = HEAP32[$p1>>2]|0; + $97 = ($96|0)!=(0|0); + if ($97) { + $98 = $iDiff; + $99 = $98; + $100 = HEAP32[$99>>2]|0; + $101 = (($98) + 4)|0; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = ($103|0)<(0); + if ($104) { + break; + } + } + $114 = HEAP32[$1>>2]|0; + $115 = $i2; + $116 = $115; + $117 = HEAP32[$116>>2]|0; + $118 = (($115) + 4)|0; + $119 = $118; + $120 = HEAP32[$119>>2]|0; + _fts3PutDeltaVarint3($p,$114,$iPrev,$bFirstOut,$117,$120); + _fts3PoslistCopy($p,$p2); + $121 = HEAP32[$pEnd2>>2]|0; + $122 = HEAP32[$1>>2]|0; + _fts3GetDeltaVarint3($p2,$121,$122,$i2); + continue L5; + } + } while(0); + $105 = HEAP32[$1>>2]|0; + $106 = $i1; + $107 = $106; + $108 = HEAP32[$107>>2]|0; + $109 = (($106) + 4)|0; + $110 = $109; + $111 = HEAP32[$110>>2]|0; + _fts3PutDeltaVarint3($p,$105,$iPrev,$bFirstOut,$108,$111); + _fts3PoslistCopy($p,$p1); + $112 = HEAP32[$pEnd1>>2]|0; + $113 = HEAP32[$1>>2]|0; + _fts3GetDeltaVarint3($p1,$112,$113,$i1); + } + $123 = HEAP32[$aOut>>2]|0; + $124 = HEAP32[$6>>2]|0; + HEAP32[$124>>2] = $123; + $125 = HEAP32[$p>>2]|0; + $126 = HEAP32[$aOut>>2]|0; + $127 = $125; + $128 = $126; + $129 = (($127) - ($128))|0; + $130 = HEAP32[$7>>2]|0; + HEAP32[$130>>2] = $129; + HEAP32[$0>>2] = 0; + $131 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($131|0); +} +function _fts3PoslistMerge($pp,$pp1,$pp2) { + $pp = $pp|0; + $pp1 = $pp1|0; + $pp2 = $pp2|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $19 = 0; + var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i1 = 0, $i2 = 0, $iCol1 = 0, $iCol2 = 0, $iPrev = 0, $n = 0, $p = 0, $p1 = 0, $p2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 56|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $p = sp + 44|0; + $p1 = sp + 40|0; + $p2 = sp + 36|0; + $iCol1 = sp + 32|0; + $iCol2 = sp + 24|0; + $i1 = sp + 16|0; + $i2 = sp + 8|0; + $iPrev = sp; + $n = sp + 28|0; + HEAP32[$0>>2] = $pp; + HEAP32[$1>>2] = $pp1; + HEAP32[$2>>2] = $pp2; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$p>>2] = $4; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$p1>>2] = $6; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$p2>>2] = $8; + L1: while(1) { + $9 = HEAP32[$p1>>2]|0; + $10 = HEAP8[$9>>0]|0; + $11 = $10 << 24 >> 24; + $12 = ($11|0)!=(0); + if (!($12)) { + $13 = HEAP32[$p2>>2]|0; + $14 = HEAP8[$13>>0]|0; + $15 = $14 << 24 >> 24; + $16 = ($15|0)!=(0); + if (!($16)) { + break; + } + } + $17 = HEAP32[$p1>>2]|0; + $18 = HEAP8[$17>>0]|0; + $19 = $18 << 24 >> 24; + $20 = ($19|0)==(1); + $21 = HEAP32[$p1>>2]|0; + do { + if ($20) { + $22 = (($21) + 1|0); + $23 = HEAP8[$22>>0]|0; + $24 = $23&255; + $25 = $24 & 128; + $26 = ($25|0)!=(0); + $27 = HEAP32[$p1>>2]|0; + $28 = (($27) + 1|0); + if ($26) { + (_sqlite3Fts3GetVarint32($28,$iCol1)|0); + break; + } else { + $29 = HEAP8[$28>>0]|0; + $30 = $29&255; + HEAP32[$iCol1>>2] = $30; + break; + } + } else { + $31 = HEAP8[$21>>0]|0; + $32 = $31 << 24 >> 24; + $33 = ($32|0)==(0); + if ($33) { + HEAP32[$iCol1>>2] = 2147483647; + break; + } else { + HEAP32[$iCol1>>2] = 0; + break; + } + } + } while(0); + $34 = HEAP32[$p2>>2]|0; + $35 = HEAP8[$34>>0]|0; + $36 = $35 << 24 >> 24; + $37 = ($36|0)==(1); + $38 = HEAP32[$p2>>2]|0; + do { + if ($37) { + $39 = (($38) + 1|0); + $40 = HEAP8[$39>>0]|0; + $41 = $40&255; + $42 = $41 & 128; + $43 = ($42|0)!=(0); + $44 = HEAP32[$p2>>2]|0; + $45 = (($44) + 1|0); + if ($43) { + (_sqlite3Fts3GetVarint32($45,$iCol2)|0); + break; + } else { + $46 = HEAP8[$45>>0]|0; + $47 = $46&255; + HEAP32[$iCol2>>2] = $47; + break; + } + } else { + $48 = HEAP8[$38>>0]|0; + $49 = $48 << 24 >> 24; + $50 = ($49|0)==(0); + if ($50) { + HEAP32[$iCol2>>2] = 2147483647; + break; + } else { + HEAP32[$iCol2>>2] = 0; + break; + } + } + } while(0); + $51 = HEAP32[$iCol1>>2]|0; + $52 = HEAP32[$iCol2>>2]|0; + $53 = ($51|0)==($52|0); + if (!($53)) { + $167 = HEAP32[$iCol1>>2]|0; + $168 = HEAP32[$iCol2>>2]|0; + $169 = ($167|0)<($168|0); + if ($169) { + $170 = HEAP32[$iCol1>>2]|0; + $171 = (_fts3PutColNumber($p,$170)|0); + $172 = HEAP32[$p1>>2]|0; + $173 = (($172) + ($171)|0); + HEAP32[$p1>>2] = $173; + _fts3ColumnlistCopy($p,$p1); + continue; + } else { + $174 = HEAP32[$iCol2>>2]|0; + $175 = (_fts3PutColNumber($p,$174)|0); + $176 = HEAP32[$p2>>2]|0; + $177 = (($176) + ($175)|0); + HEAP32[$p2>>2] = $177; + _fts3ColumnlistCopy($p,$p2); + continue; + } + } + $54 = $i1; + $55 = $54; + HEAP32[$55>>2] = 0; + $56 = (($54) + 4)|0; + $57 = $56; + HEAP32[$57>>2] = 0; + $58 = $i2; + $59 = $58; + HEAP32[$59>>2] = 0; + $60 = (($58) + 4)|0; + $61 = $60; + HEAP32[$61>>2] = 0; + $62 = $iPrev; + $63 = $62; + HEAP32[$63>>2] = 0; + $64 = (($62) + 4)|0; + $65 = $64; + HEAP32[$65>>2] = 0; + $66 = HEAP32[$iCol1>>2]|0; + $67 = (_fts3PutColNumber($p,$66)|0); + HEAP32[$n>>2] = $67; + $68 = HEAP32[$n>>2]|0; + $69 = HEAP32[$p1>>2]|0; + $70 = (($69) + ($68)|0); + HEAP32[$p1>>2] = $70; + $71 = HEAP32[$n>>2]|0; + $72 = HEAP32[$p2>>2]|0; + $73 = (($72) + ($71)|0); + HEAP32[$p2>>2] = $73; + _fts3GetDeltaVarint($p1,$i1); + _fts3GetDeltaVarint($p2,$i2); + while(1) { + $74 = $i1; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = (($74) + 4)|0; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = $i2; + $81 = $80; + $82 = HEAP32[$81>>2]|0; + $83 = (($80) + 4)|0; + $84 = $83; + $85 = HEAP32[$84>>2]|0; + $86 = ($79|0)<($85|0); + $87 = ($79|0)==($85|0); + $88 = ($76>>>0)<($82>>>0); + $89 = $87 & $88; + $90 = $86 | $89; + $91 = $i1; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $94 = (($91) + 4)|0; + $95 = $94; + $96 = HEAP32[$95>>2]|0; + $97 = $i2; + $98 = $97; + $99 = HEAP32[$98>>2]|0; + $100 = (($97) + 4)|0; + $101 = $100; + $102 = HEAP32[$101>>2]|0; + $103 = $90 ? $93 : $99; + $104 = $90 ? $96 : $102; + _fts3PutDeltaVarint($p,$iPrev,$103,$104); + $105 = $iPrev; + $106 = $105; + $107 = HEAP32[$106>>2]|0; + $108 = (($105) + 4)|0; + $109 = $108; + $110 = HEAP32[$109>>2]|0; + $111 = (_i64Subtract(($107|0),($110|0),2,0)|0); + $112 = tempRet0; + $113 = $iPrev; + $114 = $113; + HEAP32[$114>>2] = $111; + $115 = (($113) + 4)|0; + $116 = $115; + HEAP32[$116>>2] = $112; + $117 = $i1; + $118 = $117; + $119 = HEAP32[$118>>2]|0; + $120 = (($117) + 4)|0; + $121 = $120; + $122 = HEAP32[$121>>2]|0; + $123 = $i2; + $124 = $123; + $125 = HEAP32[$124>>2]|0; + $126 = (($123) + 4)|0; + $127 = $126; + $128 = HEAP32[$127>>2]|0; + $129 = ($119|0)==($125|0); + $130 = ($122|0)==($128|0); + $131 = $129 & $130; + do { + if ($131) { + _fts3ReadNextPos($p1,$i1); + _fts3ReadNextPos($p2,$i2); + } else { + $132 = $i1; + $133 = $132; + $134 = HEAP32[$133>>2]|0; + $135 = (($132) + 4)|0; + $136 = $135; + $137 = HEAP32[$136>>2]|0; + $138 = $i2; + $139 = $138; + $140 = HEAP32[$139>>2]|0; + $141 = (($138) + 4)|0; + $142 = $141; + $143 = HEAP32[$142>>2]|0; + $144 = ($137|0)<($143|0); + $145 = ($137|0)==($143|0); + $146 = ($134>>>0)<($140>>>0); + $147 = $145 & $146; + $148 = $144 | $147; + if ($148) { + _fts3ReadNextPos($p1,$i1); + break; + } else { + _fts3ReadNextPos($p2,$i2); + break; + } + } + } while(0); + $149 = $i1; + $150 = $149; + $151 = HEAP32[$150>>2]|0; + $152 = (($149) + 4)|0; + $153 = $152; + $154 = HEAP32[$153>>2]|0; + $155 = ($151|0)!=(2147483647); + $156 = ($154|0)!=(0); + $157 = $155 | $156; + if ($157) { + continue; + } + $158 = $i2; + $159 = $158; + $160 = HEAP32[$159>>2]|0; + $161 = (($158) + 4)|0; + $162 = $161; + $163 = HEAP32[$162>>2]|0; + $164 = ($160|0)!=(2147483647); + $165 = ($163|0)!=(0); + $166 = $164 | $165; + if (!($166)) { + continue L1; + } + } + } + $178 = HEAP32[$p>>2]|0; + $179 = (($178) + 1|0); + HEAP32[$p>>2] = $179; + HEAP8[$178>>0] = 0; + $180 = HEAP32[$p>>2]|0; + $181 = HEAP32[$0>>2]|0; + HEAP32[$181>>2] = $180; + $182 = HEAP32[$p1>>2]|0; + $183 = (($182) + 1|0); + $184 = HEAP32[$1>>2]|0; + HEAP32[$184>>2] = $183; + $185 = HEAP32[$p2>>2]|0; + $186 = (($185) + 1|0); + $187 = HEAP32[$2>>2]|0; + HEAP32[$187>>2] = $186; + STACKTOP = sp;return; +} +function _fts3PutColNumber($pp,$iCol) { + $pp = $pp|0; + $iCol = $iCol|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0; + var $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $n = sp + 4|0; + $p = sp + 8|0; + HEAP32[$0>>2] = $pp; + HEAP32[$1>>2] = $iCol; + HEAP32[$n>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0); + if (!($3)) { + $18 = HEAP32[$n>>2]|0; + STACKTOP = sp;return ($18|0); + } + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$p>>2] = $5; + $6 = HEAP32[$p>>2]|0; + $7 = (($6) + 1|0); + $8 = HEAP32[$1>>2]|0; + $9 = ($8|0)<(0); + $10 = $9 << 31 >> 31; + $11 = (_sqlite3Fts3PutVarint($7,$8,$10)|0); + $12 = (1 + ($11))|0; + HEAP32[$n>>2] = $12; + $13 = HEAP32[$p>>2]|0; + HEAP8[$13>>0] = 1; + $14 = HEAP32[$n>>2]|0; + $15 = HEAP32[$p>>2]|0; + $16 = (($15) + ($14)|0); + $17 = HEAP32[$0>>2]|0; + HEAP32[$17>>2] = $16; + $18 = HEAP32[$n>>2]|0; + STACKTOP = sp;return ($18|0); +} +function _fts3ReadNextPos($pp,$pi) { + $pp = $pp|0; + $pi = $pi|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pp; + HEAP32[$1>>2] = $pi; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP8[$3>>0]|0; + $5 = $4 << 24 >> 24; + $6 = $5 & 254; + $7 = ($6|0)!=(0); + if ($7) { + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + _fts3GetDeltaVarint($8,$9); + $10 = HEAP32[$1>>2]|0; + $11 = $10; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = (($11) + 4)|0; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (_i64Subtract(($13|0),($16|0),2,0)|0); + $18 = tempRet0; + $19 = $10; + $20 = $19; + HEAP32[$20>>2] = $17; + $21 = (($19) + 4)|0; + $22 = $21; + HEAP32[$22>>2] = $18; + STACKTOP = sp;return; + } else { + $23 = HEAP32[$1>>2]|0; + $24 = $23; + $25 = $24; + HEAP32[$25>>2] = 2147483647; + $26 = (($24) + 4)|0; + $27 = $26; + HEAP32[$27>>2] = 0; + STACKTOP = sp;return; + } +} +function _sqlite3Fts3EvalPhraseStats($pCsr,$pExpr,$aiOut) { + $pCsr = $pCsr|0; + $pExpr = $pExpr|0; + $aiOut = $aiOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $iCol = 0, $pTab = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $pTab = sp + 8|0; + $rc = sp + 12|0; + $iCol = sp + 16|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $aiOut; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$pTab>>2] = $4; + HEAP32[$rc>>2] = 0; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 34|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = ($8|0)!=(0); + if ($9) { + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 8|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(1); + if ($14) { + HEAP32[$iCol>>2] = 0; + while(1) { + $15 = HEAP32[$iCol>>2]|0; + $16 = HEAP32[$pTab>>2]|0; + $17 = (($16) + 24|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($15|0)<($18|0); + if (!($19)) { + break; + } + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 64|0); + $22 = $21; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (($22) + 4)|0; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$iCol>>2]|0; + $29 = ($28*3)|0; + $30 = (($29) + 1)|0; + $31 = HEAP32[$2>>2]|0; + $32 = (($31) + ($30<<2)|0); + HEAP32[$32>>2] = $24; + $33 = HEAP32[$0>>2]|0; + $34 = (($33) + 64|0); + $35 = $34; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = (($35) + 4)|0; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$iCol>>2]|0; + $42 = ($41*3)|0; + $43 = (($42) + 2)|0; + $44 = HEAP32[$2>>2]|0; + $45 = (($44) + ($43<<2)|0); + HEAP32[$45>>2] = $37; + $46 = HEAP32[$iCol>>2]|0; + $47 = (($46) + 1)|0; + HEAP32[$iCol>>2] = $47; + } + $86 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($86|0); + } + } + $48 = HEAP32[$0>>2]|0; + $49 = HEAP32[$1>>2]|0; + $50 = (_fts3EvalGatherStats($48,$49)|0); + HEAP32[$rc>>2] = $50; + $51 = HEAP32[$rc>>2]|0; + $52 = ($51|0)==(0); + if (!($52)) { + $86 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($86|0); + } + HEAP32[$iCol>>2] = 0; + while(1) { + $53 = HEAP32[$iCol>>2]|0; + $54 = HEAP32[$pTab>>2]|0; + $55 = (($54) + 24|0); + $56 = HEAP32[$55>>2]|0; + $57 = ($53|0)<($56|0); + if (!($57)) { + break; + } + $58 = HEAP32[$iCol>>2]|0; + $59 = ($58*3)|0; + $60 = (($59) + 1)|0; + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 36|0); + $63 = HEAP32[$62>>2]|0; + $64 = (($63) + ($60<<2)|0); + $65 = HEAP32[$64>>2]|0; + $66 = HEAP32[$iCol>>2]|0; + $67 = ($66*3)|0; + $68 = (($67) + 1)|0; + $69 = HEAP32[$2>>2]|0; + $70 = (($69) + ($68<<2)|0); + HEAP32[$70>>2] = $65; + $71 = HEAP32[$iCol>>2]|0; + $72 = ($71*3)|0; + $73 = (($72) + 2)|0; + $74 = HEAP32[$1>>2]|0; + $75 = (($74) + 36|0); + $76 = HEAP32[$75>>2]|0; + $77 = (($76) + ($73<<2)|0); + $78 = HEAP32[$77>>2]|0; + $79 = HEAP32[$iCol>>2]|0; + $80 = ($79*3)|0; + $81 = (($80) + 2)|0; + $82 = HEAP32[$2>>2]|0; + $83 = (($82) + ($81<<2)|0); + HEAP32[$83>>2] = $78; + $84 = HEAP32[$iCol>>2]|0; + $85 = (($84) + 1)|0; + HEAP32[$iCol>>2] = $85; + } + $86 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($86|0); +} +function _fts3EvalGatherStats($pCsr,$pExpr) { + $pCsr = $pCsr|0; + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $19 = 0; + var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bEof = 0, $iDocid = 0, $iPrevId = 0, $p = 0, $pE = 0, $pRoot = 0, $pTab = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $rc = sp + 32|0; + $pTab = sp + 28|0; + $pRoot = sp + 24|0; + $p = sp + 16|0; + $iPrevId = sp + 8|0; + $iDocid = sp; + $bEof = sp + 48|0; + $pE = sp + 20|0; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $pExpr; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 36|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)==(0|0); + do { + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$pTab>>2] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 32|0); + $11 = $10; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = (($11) + 4)|0; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = $iPrevId; + $18 = $17; + HEAP32[$18>>2] = $13; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = $16; + $21 = HEAP32[$2>>2]|0; + HEAP32[$pRoot>>2] = $21; + while(1) { + $22 = HEAP32[$pRoot>>2]|0; + $23 = (($22) + 8|0); + $24 = HEAP32[$23>>2]|0; + $25 = ($24|0)!=(0|0); + if ($25) { + $26 = HEAP32[$pRoot>>2]|0; + $27 = (($26) + 8|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = ($29|0)==(1); + $187 = $30; + } else { + $187 = 0; + } + $31 = HEAP32[$pRoot>>2]|0; + if (!($187)) { + break; + } + $32 = (($31) + 8|0); + $33 = HEAP32[$32>>2]|0; + HEAP32[$pRoot>>2] = $33; + } + $34 = (($31) + 24|0); + $35 = $34; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = (($35) + 4)|0; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = $iDocid; + $42 = $41; + HEAP32[$42>>2] = $37; + $43 = (($41) + 4)|0; + $44 = $43; + HEAP32[$44>>2] = $40; + $45 = HEAP32[$pRoot>>2]|0; + $46 = (($45) + 32|0); + $47 = HEAP8[$46>>0]|0; + HEAP8[$bEof>>0] = $47; + $48 = HEAP32[$pRoot>>2]|0; + HEAP32[$p>>2] = $48; + while(1) { + $49 = HEAP32[$p>>2]|0; + $50 = ($49|0)!=(0|0); + if (!($50)) { + break; + } + $51 = HEAP32[$p>>2]|0; + $52 = HEAP32[$51>>2]|0; + $53 = ($52|0)==(5); + $54 = HEAP32[$p>>2]|0; + if ($53) { + $57 = $54; + } else { + $55 = (($54) + 16|0); + $56 = HEAP32[$55>>2]|0; + $57 = $56; + } + HEAP32[$pE>>2] = $57; + $58 = HEAP32[$pTab>>2]|0; + $59 = (($58) + 24|0); + $60 = HEAP32[$59>>2]|0; + $61 = ($60*3)|0; + $62 = $61<<2; + $63 = (_sqlite3_malloc($62)|0); + $64 = HEAP32[$pE>>2]|0; + $65 = (($64) + 36|0); + HEAP32[$65>>2] = $63; + $66 = HEAP32[$pE>>2]|0; + $67 = (($66) + 36|0); + $68 = HEAP32[$67>>2]|0; + $69 = ($68|0)!=(0|0); + if (!($69)) { + label = 12; + break; + } + $70 = HEAP32[$pE>>2]|0; + $71 = (($70) + 36|0); + $72 = HEAP32[$71>>2]|0; + $73 = HEAP32[$pTab>>2]|0; + $74 = (($73) + 24|0); + $75 = HEAP32[$74>>2]|0; + $76 = ($75*3)|0; + $77 = $76<<2; + _memset(($72|0),0,($77|0))|0; + $78 = HEAP32[$p>>2]|0; + $79 = (($78) + 12|0); + $80 = HEAP32[$79>>2]|0; + HEAP32[$p>>2] = $80; + } + if ((label|0) == 12) { + HEAP32[$0>>2] = 7; + $186 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($186|0); + } + $81 = HEAP32[$1>>2]|0; + $82 = HEAP32[$pRoot>>2]|0; + _fts3EvalRestart($81,$82,$rc); + while(1) { + $83 = HEAP32[$1>>2]|0; + $84 = (($83) + 6|0); + $85 = HEAP8[$84>>0]|0; + $86 = $85&255; + $87 = ($86|0)==(0); + if (!($87)) { + break; + } + $88 = HEAP32[$rc>>2]|0; + $89 = ($88|0)==(0); + if (!($89)) { + break; + } + while(1) { + $90 = HEAP32[$1>>2]|0; + $91 = (($90) + 7|0); + $92 = HEAP8[$91>>0]|0; + $93 = $92&255; + $94 = ($93|0)==(0); + if ($94) { + $95 = HEAP32[$1>>2]|0; + $96 = (($95) + 8|0); + $97 = HEAP32[$96>>2]|0; + (_sqlite3_reset($97)|0); + } + $98 = HEAP32[$1>>2]|0; + $99 = HEAP32[$pRoot>>2]|0; + _fts3EvalNextRow($98,$99,$rc); + $100 = HEAP32[$pRoot>>2]|0; + $101 = (($100) + 32|0); + $102 = HEAP8[$101>>0]|0; + $103 = HEAP32[$1>>2]|0; + $104 = (($103) + 6|0); + HEAP8[$104>>0] = $102; + $105 = HEAP32[$1>>2]|0; + $106 = (($105) + 7|0); + HEAP8[$106>>0] = 1; + $107 = HEAP32[$1>>2]|0; + $108 = (($107) + 88|0); + HEAP32[$108>>2] = 1; + $109 = HEAP32[$pRoot>>2]|0; + $110 = (($109) + 24|0); + $111 = $110; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = (($111) + 4)|0; + $115 = $114; + $116 = HEAP32[$115>>2]|0; + $117 = HEAP32[$1>>2]|0; + $118 = (($117) + 32|0); + $119 = $118; + $120 = $119; + HEAP32[$120>>2] = $113; + $121 = (($119) + 4)|0; + $122 = $121; + HEAP32[$122>>2] = $116; + $123 = HEAP32[$1>>2]|0; + $124 = (($123) + 6|0); + $125 = HEAP8[$124>>0]|0; + $126 = $125&255; + $127 = ($126|0)==(0); + if (!($127)) { + break; + } + $128 = HEAP32[$pRoot>>2]|0; + $129 = HEAP32[$128>>2]|0; + $130 = ($129|0)==(1); + if (!($130)) { + break; + } + $131 = HEAP32[$1>>2]|0; + $132 = (_fts3EvalTestDeferredAndNear($131,$rc)|0); + $133 = ($132|0)!=(0); + if (!($133)) { + break; + } + } + $134 = HEAP32[$rc>>2]|0; + $135 = ($134|0)==(0); + if (!($135)) { + continue; + } + $136 = HEAP32[$1>>2]|0; + $137 = (($136) + 6|0); + $138 = HEAP8[$137>>0]|0; + $139 = $138&255; + $140 = ($139|0)==(0); + if (!($140)) { + continue; + } + $141 = HEAP32[$pRoot>>2]|0; + _fts3EvalUpdateCounts($141); + } + $142 = HEAP32[$1>>2]|0; + $143 = (($142) + 6|0); + HEAP8[$143>>0] = 0; + $144 = $iPrevId; + $145 = $144; + $146 = HEAP32[$145>>2]|0; + $147 = (($144) + 4)|0; + $148 = $147; + $149 = HEAP32[$148>>2]|0; + $150 = HEAP32[$1>>2]|0; + $151 = (($150) + 32|0); + $152 = $151; + $153 = $152; + HEAP32[$153>>2] = $146; + $154 = (($152) + 4)|0; + $155 = $154; + HEAP32[$155>>2] = $149; + $156 = HEAP8[$bEof>>0]|0; + $157 = ($156<<24>>24)!=(0); + if ($157) { + $158 = HEAP8[$bEof>>0]|0; + $159 = HEAP32[$pRoot>>2]|0; + $160 = (($159) + 32|0); + HEAP8[$160>>0] = $158; + break; + } + $161 = HEAP32[$1>>2]|0; + $162 = HEAP32[$pRoot>>2]|0; + _fts3EvalRestart($161,$162,$rc); + while(1) { + $163 = HEAP32[$1>>2]|0; + $164 = HEAP32[$pRoot>>2]|0; + _fts3EvalNextRow($163,$164,$rc); + $165 = HEAP32[$pRoot>>2]|0; + $166 = (($165) + 24|0); + $167 = $166; + $168 = $167; + $169 = HEAP32[$168>>2]|0; + $170 = (($167) + 4)|0; + $171 = $170; + $172 = HEAP32[$171>>2]|0; + $173 = $iDocid; + $174 = $173; + $175 = HEAP32[$174>>2]|0; + $176 = (($173) + 4)|0; + $177 = $176; + $178 = HEAP32[$177>>2]|0; + $179 = ($169|0)!=($175|0); + $180 = ($172|0)!=($178|0); + $181 = $179 | $180; + if (!($181)) { + break; + } + $182 = HEAP32[$rc>>2]|0; + $183 = ($182|0)==(0); + if (!($183)) { + break; + } + } + $184 = HEAP32[$1>>2]|0; + (_fts3EvalTestDeferredAndNear($184,$rc)|0); + } + } while(0); + $185 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $185; + $186 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($186|0); +} +function _fts3EvalTestDeferredAndNear($pCsr,$pRc) { + $pCsr = $pCsr|0; + $pRc = $pRc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $bMiss = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $rc = sp + 4|0; + $bMiss = sp + 8|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $pRc; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$rc>>2] = $3; + HEAP32[$bMiss>>2] = 0; + $4 = HEAP32[$rc>>2]|0; + $5 = ($4|0)==(0); + if ($5) { + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 24|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = HEAP32[$0>>2]|0; + $11 = (_fts3CursorSeek(0,$10)|0); + HEAP32[$rc>>2] = $11; + $12 = HEAP32[$rc>>2]|0; + $13 = ($12|0)==(0); + if ($13) { + $14 = HEAP32[$0>>2]|0; + $15 = (_sqlite3Fts3CacheDeferredDoclists($14)|0); + HEAP32[$rc>>2] = $15; + } + } + $16 = HEAP32[$0>>2]|0; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 12|0); + $19 = HEAP32[$18>>2]|0; + $20 = (_fts3EvalTestExpr($16,$19,$rc)|0); + $21 = (0)==($20|0); + $22 = $21&1; + HEAP32[$bMiss>>2] = $22; + $23 = HEAP32[$0>>2]|0; + _sqlite3Fts3FreeDeferredDoclists($23); + $24 = HEAP32[$rc>>2]|0; + $25 = HEAP32[$1>>2]|0; + HEAP32[$25>>2] = $24; + } + $26 = HEAP32[$rc>>2]|0; + $27 = ($26|0)==(0); + if (!($27)) { + $31 = 0; + $30 = $31&1; + STACKTOP = sp;return ($30|0); + } + $28 = HEAP32[$bMiss>>2]|0; + $29 = ($28|0)!=(0); + $31 = $29; + $30 = $31&1; + STACKTOP = sp;return ($30|0); +} +function _fts3EvalUpdateCounts($pExpr) { + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $9 = 0, $c = 0, $iCnt = 0, $iCol = 0, $p = 0, $pPhrase = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $pPhrase = sp; + $iCol = sp + 4|0; + $p = sp + 8|0; + $c = sp + 20|0; + $iCnt = sp + 12|0; + HEAP32[$0>>2] = $pExpr; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 20|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pPhrase>>2] = $5; + $6 = HEAP32[$pPhrase>>2]|0; + $7 = ($6|0)!=(0|0); + L4: do { + if ($7) { + $8 = HEAP32[$pPhrase>>2]|0; + $9 = (($8) + 28|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + HEAP32[$iCol>>2] = 0; + $12 = HEAP32[$pPhrase>>2]|0; + $13 = (($12) + 28|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$p>>2] = $14; + while(1) { + HEAP8[$c>>0] = 0; + HEAP32[$iCnt>>2] = 0; + while(1) { + $15 = HEAP32[$p>>2]|0; + $16 = HEAP8[$15>>0]|0; + $17 = $16 << 24 >> 24; + $18 = HEAP8[$c>>0]|0; + $19 = $18&255; + $20 = $17 | $19; + $21 = 254 & $20; + $22 = ($21|0)!=(0); + if (!($22)) { + break; + } + $23 = HEAP8[$c>>0]|0; + $24 = $23&255; + $25 = $24 & 128; + $26 = ($25|0)==(0); + if ($26) { + $27 = HEAP32[$iCnt>>2]|0; + $28 = (($27) + 1)|0; + HEAP32[$iCnt>>2] = $28; + } + $29 = HEAP32[$p>>2]|0; + $30 = (($29) + 1|0); + HEAP32[$p>>2] = $30; + $31 = HEAP8[$29>>0]|0; + $32 = $31 << 24 >> 24; + $33 = $32 & 128; + $34 = $33&255; + HEAP8[$c>>0] = $34; + } + $35 = HEAP32[$iCnt>>2]|0; + $36 = HEAP32[$iCol>>2]|0; + $37 = ($36*3)|0; + $38 = (($37) + 1)|0; + $39 = HEAP32[$0>>2]|0; + $40 = (($39) + 36|0); + $41 = HEAP32[$40>>2]|0; + $42 = (($41) + ($38<<2)|0); + $43 = HEAP32[$42>>2]|0; + $44 = (($43) + ($35))|0; + HEAP32[$42>>2] = $44; + $45 = HEAP32[$iCnt>>2]|0; + $46 = ($45|0)>(0); + $47 = $46&1; + $48 = HEAP32[$iCol>>2]|0; + $49 = ($48*3)|0; + $50 = (($49) + 2)|0; + $51 = HEAP32[$0>>2]|0; + $52 = (($51) + 36|0); + $53 = HEAP32[$52>>2]|0; + $54 = (($53) + ($50<<2)|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + ($47))|0; + HEAP32[$54>>2] = $56; + $57 = HEAP32[$p>>2]|0; + $58 = HEAP8[$57>>0]|0; + $59 = $58 << 24 >> 24; + $60 = ($59|0)==(0); + if ($60) { + break L4; + } + $61 = HEAP32[$p>>2]|0; + $62 = (($61) + 1|0); + HEAP32[$p>>2] = $62; + $63 = HEAP32[$p>>2]|0; + $64 = HEAP8[$63>>0]|0; + $65 = $64&255; + $66 = $65 & 128; + $67 = ($66|0)!=(0); + $68 = HEAP32[$p>>2]|0; + if ($67) { + $69 = (_sqlite3Fts3GetVarint32($68,$iCol)|0); + $74 = $69; + } else { + $70 = HEAP8[$68>>0]|0; + $71 = $70&255; + HEAP32[$iCol>>2] = $71; + $74 = 1; + } + $72 = HEAP32[$p>>2]|0; + $73 = (($72) + ($74)|0); + HEAP32[$p>>2] = $73; + } + } + } + } while(0); + $75 = HEAP32[$0>>2]|0; + $76 = (($75) + 12|0); + $77 = HEAP32[$76>>2]|0; + _fts3EvalUpdateCounts($77); + $78 = HEAP32[$0>>2]|0; + $79 = (($78) + 16|0); + $80 = HEAP32[$79>>2]|0; + _fts3EvalUpdateCounts($80); + STACKTOP = sp;return; +} +function _fts3CursorSeek($pContext,$pCsr) { + $pContext = $pContext|0; + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $pStmt = sp + 12|0; + HEAP32[$1>>2] = $pContext; + HEAP32[$2>>2] = $pCsr; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 7|0); + $5 = HEAP8[$4>>0]|0; + $6 = ($5<<24>>24)!=(0); + if ($6) { + HEAP32[$pStmt>>2] = 0; + $7 = HEAP32[$2>>2]|0; + $8 = (_fts3CursorSeekStmt($7,$pStmt)|0); + HEAP32[$rc>>2] = $8; + $9 = HEAP32[$rc>>2]|0; + $10 = ($9|0)==(0); + if ($10) { + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 8|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (($14) + 32|0); + $16 = $15; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = (($16) + 4)|0; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + (_sqlite3_bind_int64($13,1,$18,$21)|0); + $22 = HEAP32[$2>>2]|0; + $23 = (($22) + 7|0); + HEAP8[$23>>0] = 0; + $24 = HEAP32[$2>>2]|0; + $25 = (($24) + 8|0); + $26 = HEAP32[$25>>2]|0; + $27 = (_sqlite3_step($26)|0); + $28 = (100)==($27|0); + if ($28) { + HEAP32[$0>>2] = 0; + $49 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($49|0); + } + $29 = HEAP32[$2>>2]|0; + $30 = (($29) + 8|0); + $31 = HEAP32[$30>>2]|0; + $32 = (_sqlite3_reset($31)|0); + HEAP32[$rc>>2] = $32; + $33 = HEAP32[$rc>>2]|0; + $34 = ($33|0)==(0); + if ($34) { + $35 = HEAP32[$2>>2]|0; + $36 = HEAP32[$35>>2]|0; + $37 = (($36) + 40|0); + $38 = HEAP32[$37>>2]|0; + $39 = ($38|0)==(0|0); + if ($39) { + HEAP32[$rc>>2] = 267; + $40 = HEAP32[$2>>2]|0; + $41 = (($40) + 6|0); + HEAP8[$41>>0] = 1; + } + } + } + } + $42 = HEAP32[$rc>>2]|0; + $43 = ($42|0)!=(0); + if ($43) { + $44 = HEAP32[$1>>2]|0; + $45 = ($44|0)!=(0|0); + if ($45) { + $46 = HEAP32[$1>>2]|0; + $47 = HEAP32[$rc>>2]|0; + _sqlite3_result_error_code($46,$47); + } + } + $48 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $48; + $49 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($49|0); +} +function _sqlite3Fts3CacheDeferredDoclists($pCsr) { + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iDocid = 0, $iDum1 = 0, $iDum2 = 0, $iPos = 0, $nToken = 0, $p = 0, $pDef = 0, $pModule = 0, $pPT = 0, $pT = 0; + var $pTC = 0, $rc = 0, $zText = 0, $zToken = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 64|0; + $rc = sp + 60|0; + $i = sp + 56|0; + $iDocid = sp; + $pDef = sp + 52|0; + $p = sp + 48|0; + $pT = sp + 44|0; + $pModule = sp + 40|0; + $zText = sp + 36|0; + $pTC = sp + 28|0; + $zToken = sp + 24|0; + $nToken = sp + 20|0; + $iDum1 = sp + 16|0; + $iDum2 = sp + 8|0; + $iPos = sp + 12|0; + $pPT = sp + 32|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 24|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + $148 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($148|0); + } + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$p>>2] = $6; + $7 = HEAP32[$p>>2]|0; + $8 = (($7) + 36|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$pT>>2] = $9; + $10 = HEAP32[$pT>>2]|0; + $11 = HEAP32[$10>>2]|0; + HEAP32[$pModule>>2] = $11; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 8|0); + $14 = HEAP32[$13>>2]|0; + $15 = (_sqlite3_column_int64($14,0)|0); + $16 = tempRet0; + $17 = $iDocid; + $18 = $17; + HEAP32[$18>>2] = $15; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = $16; + HEAP32[$i>>2] = 0; + while(1) { + $21 = HEAP32[$i>>2]|0; + $22 = HEAP32[$p>>2]|0; + $23 = (($22) + 24|0); + $24 = HEAP32[$23>>2]|0; + $25 = ($21|0)<($24|0); + if (!($25)) { + break; + } + $26 = HEAP32[$rc>>2]|0; + $27 = ($26|0)==(0); + if (!($27)) { + break; + } + $28 = HEAP32[$i>>2]|0; + $29 = HEAP32[$p>>2]|0; + $30 = (($29) + 32|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + ($28)|0); + $33 = HEAP8[$32>>0]|0; + $34 = $33&255; + $35 = ($34|0)==(0); + if ($35) { + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + 8|0); + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$i>>2]|0; + $40 = (($39) + 1)|0; + $41 = (_sqlite3_column_text($38,$40)|0); + HEAP32[$zText>>2] = $41; + HEAP32[$pTC>>2] = 0; + $42 = HEAP32[$pT>>2]|0; + $43 = HEAP32[$0>>2]|0; + $44 = (($43) + 16|0); + $45 = HEAP32[$44>>2]|0; + $46 = HEAP32[$zText>>2]|0; + $47 = (_sqlite3Fts3OpenTokenizer($42,$45,$46,-1,$pTC)|0); + HEAP32[$rc>>2] = $47; + L10: while(1) { + $48 = HEAP32[$rc>>2]|0; + $49 = ($48|0)==(0); + if (!($49)) { + break; + } + HEAP32[$nToken>>2] = 0; + HEAP32[$iDum1>>2] = 0; + HEAP32[$iDum2>>2] = 0; + HEAP32[$iPos>>2] = 0; + $50 = HEAP32[$pModule>>2]|0; + $51 = (($50) + 20|0); + $52 = HEAP32[$51>>2]|0; + $53 = HEAP32[$pTC>>2]|0; + $54 = (FUNCTION_TABLE_iiiiiii[$52 & 15]($53,$zToken,$nToken,$iDum1,$iDum2,$iPos)|0); + HEAP32[$rc>>2] = $54; + $55 = HEAP32[$0>>2]|0; + $56 = (($55) + 24|0); + $57 = HEAP32[$56>>2]|0; + HEAP32[$pDef>>2] = $57; + while(1) { + $58 = HEAP32[$pDef>>2]|0; + $59 = ($58|0)!=(0|0); + if (!($59)) { + continue L10; + } + $60 = HEAP32[$rc>>2]|0; + $61 = ($60|0)==(0); + if (!($61)) { + continue L10; + } + $62 = HEAP32[$pDef>>2]|0; + $63 = HEAP32[$62>>2]|0; + HEAP32[$pPT>>2] = $63; + $64 = HEAP32[$pDef>>2]|0; + $65 = (($64) + 4|0); + $66 = HEAP32[$65>>2]|0; + $67 = HEAP32[$p>>2]|0; + $68 = (($67) + 24|0); + $69 = HEAP32[$68>>2]|0; + $70 = ($66|0)>=($69|0); + if ($70) { + label = 13; + } else { + $71 = HEAP32[$pDef>>2]|0; + $72 = (($71) + 4|0); + $73 = HEAP32[$72>>2]|0; + $74 = HEAP32[$i>>2]|0; + $75 = ($73|0)==($74|0); + if ($75) { + label = 13; + } + } + do { + if ((label|0) == 13) { + label = 0; + $76 = HEAP32[$pPT>>2]|0; + $77 = (($76) + 12|0); + $78 = HEAP32[$77>>2]|0; + $79 = ($78|0)==(0); + if (!($79)) { + $80 = HEAP32[$iPos>>2]|0; + $81 = ($80|0)==(0); + if (!($81)) { + break; + } + } + $82 = HEAP32[$pPT>>2]|0; + $83 = (($82) + 4|0); + $84 = HEAP32[$83>>2]|0; + $85 = HEAP32[$nToken>>2]|0; + $86 = ($84|0)==($85|0); + if (!($86)) { + $87 = HEAP32[$pPT>>2]|0; + $88 = (($87) + 8|0); + $89 = HEAP32[$88>>2]|0; + $90 = ($89|0)!=(0); + if (!($90)) { + break; + } + $91 = HEAP32[$pPT>>2]|0; + $92 = (($91) + 4|0); + $93 = HEAP32[$92>>2]|0; + $94 = HEAP32[$nToken>>2]|0; + $95 = ($93|0)<($94|0); + if (!($95)) { + break; + } + } + $96 = HEAP32[$zToken>>2]|0; + $97 = HEAP32[$pPT>>2]|0; + $98 = HEAP32[$97>>2]|0; + $99 = HEAP32[$pPT>>2]|0; + $100 = (($99) + 4|0); + $101 = HEAP32[$100>>2]|0; + $102 = (_memcmp($96,$98,$101)|0); + $103 = (0)==($102|0); + if ($103) { + $104 = HEAP32[$pDef>>2]|0; + $105 = (($104) + 12|0); + $106 = $iDocid; + $107 = $106; + $108 = HEAP32[$107>>2]|0; + $109 = (($106) + 4)|0; + $110 = $109; + $111 = HEAP32[$110>>2]|0; + $112 = HEAP32[$i>>2]|0; + $113 = ($112|0)<(0); + $114 = $113 << 31 >> 31; + $115 = HEAP32[$iPos>>2]|0; + $116 = ($115|0)<(0); + $117 = $116 << 31 >> 31; + (_fts3PendingListAppend($105,$108,$111,$112,$114,$115,$117,$rc)|0); + } + } + } while(0); + $118 = HEAP32[$pDef>>2]|0; + $119 = (($118) + 8|0); + $120 = HEAP32[$119>>2]|0; + HEAP32[$pDef>>2] = $120; + } + } + $121 = HEAP32[$pTC>>2]|0; + $122 = ($121|0)!=(0|0); + if ($122) { + $123 = HEAP32[$pModule>>2]|0; + $124 = (($123) + 16|0); + $125 = HEAP32[$124>>2]|0; + $126 = HEAP32[$pTC>>2]|0; + (FUNCTION_TABLE_ii[$125 & 63]($126)|0); + } + $127 = HEAP32[$rc>>2]|0; + $128 = ($127|0)==(101); + if ($128) { + HEAP32[$rc>>2] = 0; + } + } + $129 = HEAP32[$i>>2]|0; + $130 = (($129) + 1)|0; + HEAP32[$i>>2] = $130; + } + $131 = HEAP32[$0>>2]|0; + $132 = (($131) + 24|0); + $133 = HEAP32[$132>>2]|0; + HEAP32[$pDef>>2] = $133; + while(1) { + $134 = HEAP32[$pDef>>2]|0; + $135 = ($134|0)!=(0|0); + if (!($135)) { + label = 32; + break; + } + $136 = HEAP32[$rc>>2]|0; + $137 = ($136|0)==(0); + if (!($137)) { + label = 32; + break; + } + $138 = HEAP32[$pDef>>2]|0; + $139 = (($138) + 12|0); + $140 = HEAP32[$139>>2]|0; + $141 = ($140|0)!=(0|0); + if ($141) { + $142 = HEAP32[$pDef>>2]|0; + $143 = (($142) + 12|0); + $144 = (_fts3PendingListAppendVarint($143,0,0)|0); + HEAP32[$rc>>2] = $144; + } + $145 = HEAP32[$pDef>>2]|0; + $146 = (($145) + 8|0); + $147 = HEAP32[$146>>2]|0; + HEAP32[$pDef>>2] = $147; + } + if ((label|0) == 32) { + $148 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($148|0); + } + return 0|0; +} +function _fts3EvalTestExpr($pCsr,$pExpr,$pRc) { + $pCsr = $pCsr|0; + $pExpr = $pExpr|0; + $pRc = $pRc|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bHit = 0, $bHit1 = 0; + var $bHit2 = 0, $p = 0, $pPhrase = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $bHit = sp + 8|0; + $p = sp + 12|0; + $bHit1 = sp + 16|0; + $bHit2 = sp + 20|0; + $pPhrase = sp + 24|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $pRc; + HEAP32[$bHit>>2] = 1; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)==(0); + if (!($5)) { + $217 = HEAP32[$bHit>>2]|0; + STACKTOP = sp;return ($217|0); + } + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$6>>2]|0; + if ((($7|0) == 2)) { + $115 = HEAP32[$0>>2]|0; + $116 = HEAP32[$1>>2]|0; + $117 = (($116) + 12|0); + $118 = HEAP32[$117>>2]|0; + $119 = HEAP32[$2>>2]|0; + $120 = (_fts3EvalTestExpr($115,$118,$119)|0); + $121 = ($120|0)!=(0); + if ($121) { + $122 = HEAP32[$0>>2]|0; + $123 = HEAP32[$1>>2]|0; + $124 = (($123) + 16|0); + $125 = HEAP32[$124>>2]|0; + $126 = HEAP32[$2>>2]|0; + $127 = (_fts3EvalTestExpr($122,$125,$126)|0); + $128 = ($127|0)!=(0); + $129 = $128 ^ 1; + $131 = $129; + } else { + $131 = 0; + } + $130 = $131&1; + HEAP32[$bHit>>2] = $130; + $217 = HEAP32[$bHit>>2]|0; + STACKTOP = sp;return ($217|0); + } else if ((($7|0) == 4)) { + $97 = HEAP32[$0>>2]|0; + $98 = HEAP32[$1>>2]|0; + $99 = (($98) + 12|0); + $100 = HEAP32[$99>>2]|0; + $101 = HEAP32[$2>>2]|0; + $102 = (_fts3EvalTestExpr($97,$100,$101)|0); + HEAP32[$bHit1>>2] = $102; + $103 = HEAP32[$0>>2]|0; + $104 = HEAP32[$1>>2]|0; + $105 = (($104) + 16|0); + $106 = HEAP32[$105>>2]|0; + $107 = HEAP32[$2>>2]|0; + $108 = (_fts3EvalTestExpr($103,$106,$107)|0); + HEAP32[$bHit2>>2] = $108; + $109 = HEAP32[$bHit1>>2]|0; + $110 = ($109|0)!=(0); + if ($110) { + $114 = 1; + } else { + $111 = HEAP32[$bHit2>>2]|0; + $112 = ($111|0)!=(0); + $114 = $112; + } + $113 = $114&1; + HEAP32[$bHit>>2] = $113; + $217 = HEAP32[$bHit>>2]|0; + STACKTOP = sp;return ($217|0); + } else if ((($7|0) == 3) | (($7|0) == 1)) { + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = (_fts3EvalTestExpr($8,$11,$12)|0); + $14 = ($13|0)!=(0); + if ($14) { + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 16|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = (_fts3EvalTestExpr($15,$18,$19)|0); + $21 = ($20|0)!=(0); + if ($21) { + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$2>>2]|0; + $24 = (_fts3EvalNearTest($22,$23)|0); + $25 = ($24|0)!=(0); + $27 = $25; + } else { + $27 = 0; + } + } else { + $27 = 0; + } + $26 = $27&1; + HEAP32[$bHit>>2] = $26; + $28 = HEAP32[$bHit>>2]|0; + $29 = ($28|0)==(0); + if (!($29)) { + $217 = HEAP32[$bHit>>2]|0; + STACKTOP = sp;return ($217|0); + } + $30 = HEAP32[$1>>2]|0; + $31 = HEAP32[$30>>2]|0; + $32 = ($31|0)==(1); + if (!($32)) { + $217 = HEAP32[$bHit>>2]|0; + STACKTOP = sp;return ($217|0); + } + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 8|0); + $35 = HEAP32[$34>>2]|0; + $36 = ($35|0)==(0|0); + if (!($36)) { + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 8|0); + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$39>>2]|0; + $41 = ($40|0)!=(1); + if (!($41)) { + $217 = HEAP32[$bHit>>2]|0; + STACKTOP = sp;return ($217|0); + } + } + $42 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $42; + while(1) { + $43 = HEAP32[$p>>2]|0; + $44 = (($43) + 20|0); + $45 = HEAP32[$44>>2]|0; + $46 = ($45|0)==(0|0); + $47 = HEAP32[$p>>2]|0; + if (!($46)) { + break; + } + $48 = (($47) + 16|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) + 24|0); + $51 = $50; + $52 = $51; + $53 = HEAP32[$52>>2]|0; + $54 = (($51) + 4)|0; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = HEAP32[$0>>2]|0; + $58 = (($57) + 32|0); + $59 = $58; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = (($59) + 4)|0; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = ($53|0)==($61|0); + $66 = ($56|0)==($64|0); + $67 = $65 & $66; + if ($67) { + $68 = HEAP32[$p>>2]|0; + $69 = (($68) + 16|0); + $70 = HEAP32[$69>>2]|0; + $71 = (($70) + 20|0); + $72 = HEAP32[$71>>2]|0; + _fts3EvalInvalidatePoslist($72); + } + $73 = HEAP32[$p>>2]|0; + $74 = (($73) + 12|0); + $75 = HEAP32[$74>>2]|0; + HEAP32[$p>>2] = $75; + } + $76 = (($47) + 24|0); + $77 = $76; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = (($77) + 4)|0; + $81 = $80; + $82 = HEAP32[$81>>2]|0; + $83 = HEAP32[$0>>2]|0; + $84 = (($83) + 32|0); + $85 = $84; + $86 = $85; + $87 = HEAP32[$86>>2]|0; + $88 = (($85) + 4)|0; + $89 = $88; + $90 = HEAP32[$89>>2]|0; + $91 = ($79|0)==($87|0); + $92 = ($82|0)==($90|0); + $93 = $91 & $92; + if (!($93)) { + $217 = HEAP32[$bHit>>2]|0; + STACKTOP = sp;return ($217|0); + } + $94 = HEAP32[$p>>2]|0; + $95 = (($94) + 20|0); + $96 = HEAP32[$95>>2]|0; + _fts3EvalInvalidatePoslist($96); + $217 = HEAP32[$bHit>>2]|0; + STACKTOP = sp;return ($217|0); + } else { + $132 = HEAP32[$0>>2]|0; + $133 = (($132) + 24|0); + $134 = HEAP32[$133>>2]|0; + $135 = ($134|0)!=(0|0); + do { + if ($135) { + $136 = HEAP32[$1>>2]|0; + $137 = (($136) + 24|0); + $138 = $137; + $139 = $138; + $140 = HEAP32[$139>>2]|0; + $141 = (($138) + 4)|0; + $142 = $141; + $143 = HEAP32[$142>>2]|0; + $144 = HEAP32[$0>>2]|0; + $145 = (($144) + 32|0); + $146 = $145; + $147 = $146; + $148 = HEAP32[$147>>2]|0; + $149 = (($146) + 4)|0; + $150 = $149; + $151 = HEAP32[$150>>2]|0; + $152 = ($140|0)==($148|0); + $153 = ($143|0)==($151|0); + $154 = $152 & $153; + if (!($154)) { + $155 = HEAP32[$1>>2]|0; + $156 = (($155) + 34|0); + $157 = HEAP8[$156>>0]|0; + $158 = $157&255; + $159 = ($158|0)!=(0); + if (!($159)) { + break; + } + } + $160 = HEAP32[$1>>2]|0; + $161 = (($160) + 20|0); + $162 = HEAP32[$161>>2]|0; + HEAP32[$pPhrase>>2] = $162; + $163 = HEAP32[$1>>2]|0; + $164 = (($163) + 34|0); + $165 = HEAP8[$164>>0]|0; + $166 = ($165<<24>>24)!=(0); + if ($166) { + $167 = HEAP32[$pPhrase>>2]|0; + _fts3EvalInvalidatePoslist($167); + } + $168 = HEAP32[$0>>2]|0; + $169 = HEAP32[$pPhrase>>2]|0; + $170 = (_fts3EvalDeferredPhrase($168,$169)|0); + $171 = HEAP32[$2>>2]|0; + HEAP32[$171>>2] = $170; + $172 = HEAP32[$pPhrase>>2]|0; + $173 = (($172) + 28|0); + $174 = HEAP32[$173>>2]|0; + $175 = ($174|0)!=(0|0); + $176 = $175&1; + HEAP32[$bHit>>2] = $176; + $177 = HEAP32[$0>>2]|0; + $178 = (($177) + 32|0); + $179 = $178; + $180 = $179; + $181 = HEAP32[$180>>2]|0; + $182 = (($179) + 4)|0; + $183 = $182; + $184 = HEAP32[$183>>2]|0; + $185 = HEAP32[$1>>2]|0; + $186 = (($185) + 24|0); + $187 = $186; + $188 = $187; + HEAP32[$188>>2] = $181; + $189 = (($187) + 4)|0; + $190 = $189; + HEAP32[$190>>2] = $184; + $217 = HEAP32[$bHit>>2]|0; + STACKTOP = sp;return ($217|0); + } + } while(0); + $191 = HEAP32[$1>>2]|0; + $192 = (($191) + 32|0); + $193 = HEAP8[$192>>0]|0; + $194 = $193&255; + $195 = ($194|0)==(0); + if ($195) { + $196 = HEAP32[$1>>2]|0; + $197 = (($196) + 24|0); + $198 = $197; + $199 = $198; + $200 = HEAP32[$199>>2]|0; + $201 = (($198) + 4)|0; + $202 = $201; + $203 = HEAP32[$202>>2]|0; + $204 = HEAP32[$0>>2]|0; + $205 = (($204) + 32|0); + $206 = $205; + $207 = $206; + $208 = HEAP32[$207>>2]|0; + $209 = (($206) + 4)|0; + $210 = $209; + $211 = HEAP32[$210>>2]|0; + $212 = ($200|0)==($208|0); + $213 = ($203|0)==($211|0); + $214 = $212 & $213; + $216 = $214; + } else { + $216 = 0; + } + $215 = $216&1; + HEAP32[$bHit>>2] = $215; + $217 = HEAP32[$bHit>>2]|0; + STACKTOP = sp;return ($217|0); + } + return 0|0; +} +function _sqlite3Fts3FreeDeferredDoclists($pCsr) { + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDef = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pDef = sp; + HEAP32[$0>>2] = $pCsr; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 24|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pDef>>2] = $3; + while(1) { + $4 = HEAP32[$pDef>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + break; + } + $6 = HEAP32[$pDef>>2]|0; + $7 = (($6) + 12|0); + $8 = HEAP32[$7>>2]|0; + _fts3PendingListDelete($8); + $9 = HEAP32[$pDef>>2]|0; + $10 = (($9) + 12|0); + HEAP32[$10>>2] = 0; + $11 = HEAP32[$pDef>>2]|0; + $12 = (($11) + 8|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pDef>>2] = $13; + } + STACKTOP = sp;return; +} +function _fts3EvalNearTest($pExpr,$pRc) { + $pExpr = $pExpr|0; + $pRc = $pRc|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aPoslist = 0, $aTmp = 0, $nNear = 0, $nNear1 = 0, $nTmp = 0, $nToken = 0; + var $p = 0, $pPhrase = 0, $pPhrase2 = 0, $res = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $res = sp + 36|0; + $p = sp + 32|0; + $nTmp = sp + 28|0; + $aTmp = sp + 24|0; + $aPoslist = sp + 20|0; + $nToken = sp + 12|0; + $pPhrase = sp + 8|0; + $nNear = sp + 4|0; + $nNear1 = sp; + $pPhrase2 = sp + 16|0; + HEAP32[$0>>2] = $pExpr; + HEAP32[$1>>2] = $pRc; + HEAP32[$res>>2] = 1; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)==(0); + if (!($4)) { + $133 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($133|0); + } + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)==(1); + if (!($7)) { + $133 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($133|0); + } + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 32|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = ($11|0)==(0); + if (!($12)) { + $133 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($133|0); + } + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 8|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)==(0|0); + if (!($16)) { + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 8|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)!=(1); + if (!($21)) { + $133 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($133|0); + } + } + HEAP32[$nTmp>>2] = 0; + $22 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $22; + while(1) { + $23 = HEAP32[$p>>2]|0; + $24 = (($23) + 12|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)!=(0|0); + $27 = HEAP32[$p>>2]|0; + if (!($26)) { + break; + } + $28 = (($27) + 16|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + 20|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + 32|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$nTmp>>2]|0; + $35 = (($34) + ($33))|0; + HEAP32[$nTmp>>2] = $35; + $36 = HEAP32[$p>>2]|0; + $37 = (($36) + 12|0); + $38 = HEAP32[$37>>2]|0; + HEAP32[$p>>2] = $38; + } + $39 = (($27) + 20|0); + $40 = HEAP32[$39>>2]|0; + $41 = (($40) + 32|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$nTmp>>2]|0; + $44 = (($43) + ($42))|0; + HEAP32[$nTmp>>2] = $44; + $45 = HEAP32[$nTmp>>2]|0; + $46 = ($45|0)==(0); + if ($46) { + HEAP32[$res>>2] = 0; + $133 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($133|0); + } + $47 = HEAP32[$nTmp>>2]|0; + $48 = $47<<1; + $49 = (_sqlite3_malloc($48)|0); + HEAP32[$aTmp>>2] = $49; + $50 = HEAP32[$aTmp>>2]|0; + $51 = ($50|0)!=(0|0); + L22: do { + if ($51) { + $53 = HEAP32[$p>>2]|0; + $54 = (($53) + 20|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + 28|0); + $57 = HEAP32[$56>>2]|0; + HEAP32[$aPoslist>>2] = $57; + $58 = HEAP32[$p>>2]|0; + $59 = (($58) + 20|0); + $60 = HEAP32[$59>>2]|0; + $61 = (($60) + 48|0); + $62 = HEAP32[$61>>2]|0; + HEAP32[$nToken>>2] = $62; + $63 = HEAP32[$p>>2]|0; + $64 = (($63) + 8|0); + $65 = HEAP32[$64>>2]|0; + HEAP32[$p>>2] = $65; + while(1) { + $66 = HEAP32[$res>>2]|0; + $67 = ($66|0)!=(0); + if (!($67)) { + break; + } + $68 = HEAP32[$p>>2]|0; + $69 = ($68|0)!=(0|0); + if (!($69)) { + break; + } + $70 = HEAP32[$p>>2]|0; + $71 = HEAP32[$70>>2]|0; + $72 = ($71|0)==(1); + if (!($72)) { + break; + } + $73 = HEAP32[$p>>2]|0; + $74 = (($73) + 16|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($75) + 20|0); + $77 = HEAP32[$76>>2]|0; + HEAP32[$pPhrase>>2] = $77; + $78 = HEAP32[$p>>2]|0; + $79 = (($78) + 4|0); + $80 = HEAP32[$79>>2]|0; + HEAP32[$nNear>>2] = $80; + $81 = HEAP32[$nNear>>2]|0; + $82 = HEAP32[$aTmp>>2]|0; + $83 = HEAP32[$pPhrase>>2]|0; + $84 = (_fts3EvalNearTrim($81,$82,$aPoslist,$nToken,$83)|0); + HEAP32[$res>>2] = $84; + $85 = HEAP32[$p>>2]|0; + $86 = (($85) + 8|0); + $87 = HEAP32[$86>>2]|0; + HEAP32[$p>>2] = $87; + } + $88 = HEAP32[$0>>2]|0; + $89 = (($88) + 16|0); + $90 = HEAP32[$89>>2]|0; + $91 = (($90) + 20|0); + $92 = HEAP32[$91>>2]|0; + $93 = (($92) + 28|0); + $94 = HEAP32[$93>>2]|0; + HEAP32[$aPoslist>>2] = $94; + $95 = HEAP32[$0>>2]|0; + $96 = (($95) + 16|0); + $97 = HEAP32[$96>>2]|0; + $98 = (($97) + 20|0); + $99 = HEAP32[$98>>2]|0; + $100 = (($99) + 48|0); + $101 = HEAP32[$100>>2]|0; + HEAP32[$nToken>>2] = $101; + $102 = HEAP32[$0>>2]|0; + $103 = (($102) + 12|0); + $104 = HEAP32[$103>>2]|0; + HEAP32[$p>>2] = $104; + while(1) { + $105 = HEAP32[$p>>2]|0; + $106 = ($105|0)!=(0|0); + if (!($106)) { + break L22; + } + $107 = HEAP32[$res>>2]|0; + $108 = ($107|0)!=(0); + if (!($108)) { + break L22; + } + $109 = HEAP32[$p>>2]|0; + $110 = (($109) + 8|0); + $111 = HEAP32[$110>>2]|0; + $112 = (($111) + 4|0); + $113 = HEAP32[$112>>2]|0; + HEAP32[$nNear1>>2] = $113; + $114 = HEAP32[$p>>2]|0; + $115 = HEAP32[$114>>2]|0; + $116 = ($115|0)==(1); + $117 = HEAP32[$p>>2]|0; + if ($116) { + $118 = (($117) + 16|0); + $119 = HEAP32[$118>>2]|0; + $120 = (($119) + 20|0); + $121 = HEAP32[$120>>2]|0; + $124 = $121; + } else { + $122 = (($117) + 20|0); + $123 = HEAP32[$122>>2]|0; + $124 = $123; + } + HEAP32[$pPhrase2>>2] = $124; + $125 = HEAP32[$nNear1>>2]|0; + $126 = HEAP32[$aTmp>>2]|0; + $127 = HEAP32[$pPhrase2>>2]|0; + $128 = (_fts3EvalNearTrim($125,$126,$aPoslist,$nToken,$127)|0); + HEAP32[$res>>2] = $128; + $129 = HEAP32[$p>>2]|0; + $130 = (($129) + 12|0); + $131 = HEAP32[$130>>2]|0; + HEAP32[$p>>2] = $131; + } + } else { + $52 = HEAP32[$1>>2]|0; + HEAP32[$52>>2] = 7; + HEAP32[$res>>2] = 0; + } + } while(0); + $132 = HEAP32[$aTmp>>2]|0; + _sqlite3_free($132); + $133 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($133|0); +} +function _fts3EvalDeferredPhrase($pCsr,$pPhrase) { + $pCsr = $pCsr|0; + $pPhrase = $pPhrase|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aOut = 0, $aOut3 = 0, $aPoslist = 0, $iPrev = 0, $iToken = 0, $nDistance = 0, $nList = 0, $nMaxUndeferred = 0, $nPoslist = 0, $p1 = 0; + var $p11 = 0, $p2 = 0, $p22 = 0, $pDeferred = 0, $pList = 0, $pToken = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 76|0; + $1 = sp + 72|0; + $2 = sp + 68|0; + $iToken = sp + 64|0; + $aPoslist = sp + 60|0; + $nPoslist = sp + 56|0; + $iPrev = sp + 52|0; + $pToken = sp + 48|0; + $pDeferred = sp + 44|0; + $pList = sp + 40|0; + $nList = sp + 36|0; + $rc = sp + 12|0; + $aOut = sp; + $p1 = sp + 4|0; + $p2 = sp + 8|0; + $nMaxUndeferred = sp + 16|0; + $nDistance = sp + 20|0; + $p11 = sp + 24|0; + $p22 = sp + 28|0; + $aOut3 = sp + 32|0; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $pPhrase; + HEAP32[$aPoslist>>2] = 0; + HEAP32[$nPoslist>>2] = 0; + HEAP32[$iPrev>>2] = -1; + HEAP32[$iToken>>2] = 0; + while(1) { + $3 = HEAP32[$iToken>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = (($4) + 48|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($3|0)<($6|0); + if (!($7)) { + label = 14; + break; + } + $8 = HEAP32[$iToken>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 56|0); + $11 = (($10) + (($8*24)|0)|0); + HEAP32[$pToken>>2] = $11; + $12 = HEAP32[$pToken>>2]|0; + $13 = (($12) + 16|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$pDeferred>>2] = $14; + $15 = HEAP32[$pDeferred>>2]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = HEAP32[$pDeferred>>2]|0; + $18 = (_sqlite3Fts3DeferredTokenList($17,$pList,$nList)|0); + HEAP32[$rc>>2] = $18; + $19 = HEAP32[$rc>>2]|0; + $20 = ($19|0)!=(0); + if ($20) { + label = 5; + break; + } + $22 = HEAP32[$pList>>2]|0; + $23 = ($22|0)==(0|0); + $24 = HEAP32[$aPoslist>>2]|0; + if ($23) { + label = 7; + break; + } + $29 = ($24|0)==(0|0); + $30 = HEAP32[$pList>>2]|0; + if ($29) { + HEAP32[$aPoslist>>2] = $30; + $31 = HEAP32[$nList>>2]|0; + HEAP32[$nPoslist>>2] = $31; + } else { + HEAP32[$aOut>>2] = $30; + $32 = HEAP32[$aPoslist>>2]|0; + HEAP32[$p1>>2] = $32; + $33 = HEAP32[$aOut>>2]|0; + HEAP32[$p2>>2] = $33; + $34 = HEAP32[$iToken>>2]|0; + $35 = HEAP32[$iPrev>>2]|0; + $36 = (($34) - ($35))|0; + (_fts3PoslistPhraseMerge($aOut,$36,0,1,$p1,$p2)|0); + $37 = HEAP32[$aPoslist>>2]|0; + _sqlite3_free($37); + $38 = HEAP32[$pList>>2]|0; + HEAP32[$aPoslist>>2] = $38; + $39 = HEAP32[$aOut>>2]|0; + $40 = HEAP32[$aPoslist>>2]|0; + $41 = $39; + $42 = $40; + $43 = (($41) - ($42))|0; + HEAP32[$nPoslist>>2] = $43; + $44 = HEAP32[$nPoslist>>2]|0; + $45 = ($44|0)==(0); + if ($45) { + label = 11; + break; + } + } + $51 = HEAP32[$iToken>>2]|0; + HEAP32[$iPrev>>2] = $51; + } + $52 = HEAP32[$iToken>>2]|0; + $53 = (($52) + 1)|0; + HEAP32[$iToken>>2] = $53; + } + if ((label|0) == 5) { + $21 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $21; + $129 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($129|0); + } + else if ((label|0) == 7) { + _sqlite3_free($24); + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 28|0); + HEAP32[$26>>2] = 0; + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 32|0); + HEAP32[$28>>2] = 0; + HEAP32[$0>>2] = 0; + $129 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($129|0); + } + else if ((label|0) == 11) { + $46 = HEAP32[$aPoslist>>2]|0; + _sqlite3_free($46); + $47 = HEAP32[$2>>2]|0; + $48 = (($47) + 28|0); + HEAP32[$48>>2] = 0; + $49 = HEAP32[$2>>2]|0; + $50 = (($49) + 32|0); + HEAP32[$50>>2] = 0; + HEAP32[$0>>2] = 0; + $129 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($129|0); + } + else if ((label|0) == 14) { + $54 = HEAP32[$iPrev>>2]|0; + $55 = ($54|0)>=(0); + do { + if ($55) { + $56 = HEAP32[$2>>2]|0; + $57 = (($56) + 44|0); + $58 = HEAP32[$57>>2]|0; + HEAP32[$nMaxUndeferred>>2] = $58; + $59 = HEAP32[$nMaxUndeferred>>2]|0; + $60 = ($59|0)<(0); + if ($60) { + $61 = HEAP32[$aPoslist>>2]|0; + $62 = HEAP32[$2>>2]|0; + $63 = (($62) + 28|0); + HEAP32[$63>>2] = $61; + $64 = HEAP32[$nPoslist>>2]|0; + $65 = HEAP32[$2>>2]|0; + $66 = (($65) + 32|0); + HEAP32[$66>>2] = $64; + $67 = HEAP32[$1>>2]|0; + $68 = (($67) + 32|0); + $69 = $68; + $70 = $69; + $71 = HEAP32[$70>>2]|0; + $72 = (($69) + 4)|0; + $73 = $72; + $74 = HEAP32[$73>>2]|0; + $75 = HEAP32[$2>>2]|0; + $76 = (($75) + 16|0); + $77 = $76; + $78 = $77; + HEAP32[$78>>2] = $71; + $79 = (($77) + 4)|0; + $80 = $79; + HEAP32[$80>>2] = $74; + $81 = HEAP32[$2>>2]|0; + $82 = (($81) + 24|0); + HEAP32[$82>>2] = 1; + break; + } + $83 = HEAP32[$nMaxUndeferred>>2]|0; + $84 = HEAP32[$iPrev>>2]|0; + $85 = ($83|0)>($84|0); + if ($85) { + $86 = HEAP32[$aPoslist>>2]|0; + HEAP32[$p11>>2] = $86; + $87 = HEAP32[$2>>2]|0; + $88 = (($87) + 28|0); + $89 = HEAP32[$88>>2]|0; + HEAP32[$p22>>2] = $89; + $90 = HEAP32[$nMaxUndeferred>>2]|0; + $91 = HEAP32[$iPrev>>2]|0; + $92 = (($90) - ($91))|0; + HEAP32[$nDistance>>2] = $92; + } else { + $93 = HEAP32[$2>>2]|0; + $94 = (($93) + 28|0); + $95 = HEAP32[$94>>2]|0; + HEAP32[$p11>>2] = $95; + $96 = HEAP32[$aPoslist>>2]|0; + HEAP32[$p22>>2] = $96; + $97 = HEAP32[$iPrev>>2]|0; + $98 = HEAP32[$nMaxUndeferred>>2]|0; + $99 = (($97) - ($98))|0; + HEAP32[$nDistance>>2] = $99; + } + $100 = HEAP32[$nPoslist>>2]|0; + $101 = (($100) + 8)|0; + $102 = (_sqlite3_malloc($101)|0); + HEAP32[$aOut3>>2] = $102; + $103 = HEAP32[$aOut3>>2]|0; + $104 = ($103|0)!=(0|0); + if (!($104)) { + $105 = HEAP32[$aPoslist>>2]|0; + _sqlite3_free($105); + HEAP32[$0>>2] = 7; + $129 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($129|0); + } + $106 = HEAP32[$aOut3>>2]|0; + $107 = HEAP32[$2>>2]|0; + $108 = (($107) + 28|0); + HEAP32[$108>>2] = $106; + $109 = HEAP32[$nDistance>>2]|0; + $110 = (_fts3PoslistPhraseMerge($aOut3,$109,0,1,$p11,$p22)|0); + $111 = ($110|0)!=(0); + if ($111) { + $112 = HEAP32[$2>>2]|0; + $113 = (($112) + 24|0); + HEAP32[$113>>2] = 1; + $114 = HEAP32[$aOut3>>2]|0; + $115 = HEAP32[$2>>2]|0; + $116 = (($115) + 28|0); + $117 = HEAP32[$116>>2]|0; + $118 = $114; + $119 = $117; + $120 = (($118) - ($119))|0; + $121 = HEAP32[$2>>2]|0; + $122 = (($121) + 32|0); + HEAP32[$122>>2] = $120; + } else { + $123 = HEAP32[$aOut3>>2]|0; + _sqlite3_free($123); + $124 = HEAP32[$2>>2]|0; + $125 = (($124) + 28|0); + HEAP32[$125>>2] = 0; + $126 = HEAP32[$2>>2]|0; + $127 = (($126) + 32|0); + HEAP32[$127>>2] = 0; + } + $128 = HEAP32[$aPoslist>>2]|0; + _sqlite3_free($128); + } + } while(0); + HEAP32[$0>>2] = 0; + $129 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($129|0); + } + return 0|0; +} +function _sqlite3Fts3DeferredTokenList($p,$ppData,$pnData) { + $p = $p|0; + $ppData = $ppData|0; + $pnData = $pnData|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $dummy = 0, $nSkip = 0, $pRet = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp + 24|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $pRet = sp + 16|0; + $nSkip = sp + 20|0; + $dummy = sp; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $ppData; + HEAP32[$3>>2] = $pnData; + $4 = HEAP32[$2>>2]|0; + HEAP32[$4>>2] = 0; + $5 = HEAP32[$3>>2]|0; + HEAP32[$5>>2] = 0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + HEAP32[$0>>2] = 0; + $42 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($42|0); + } + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 12|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = (_sqlite3_malloc($13)|0); + HEAP32[$pRet>>2] = $14; + $15 = HEAP32[$pRet>>2]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 12|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = (_sqlite3Fts3GetVarint($21,$dummy)|0); + HEAP32[$nSkip>>2] = $22; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 12|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$nSkip>>2]|0; + $28 = (($26) - ($27))|0; + $29 = HEAP32[$3>>2]|0; + HEAP32[$29>>2] = $28; + $30 = HEAP32[$pRet>>2]|0; + $31 = HEAP32[$2>>2]|0; + HEAP32[$31>>2] = $30; + $32 = HEAP32[$pRet>>2]|0; + $33 = HEAP32[$nSkip>>2]|0; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 12|0); + $36 = HEAP32[$35>>2]|0; + $37 = (($36) + 4|0); + $38 = HEAP32[$37>>2]|0; + $39 = (($38) + ($33)|0); + $40 = HEAP32[$3>>2]|0; + $41 = HEAP32[$40>>2]|0; + _memcpy(($32|0),($39|0),($41|0))|0; + HEAP32[$0>>2] = 0; + $42 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($42|0); + } else { + HEAP32[$0>>2] = 7; + $42 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($42|0); + } + return 0|0; +} +function _fts3EvalNearTrim($nNear,$aTmp,$paPoslist,$pnToken,$pPhrase) { + $nNear = $nNear|0; + $aTmp = $aTmp|0; + $paPoslist = $paPoslist|0; + $pnToken = $pnToken|0; + $pPhrase = $pPhrase|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nNew = 0, $nParam1 = 0, $nParam2 = 0, $p2 = 0, $pOut = 0, $res = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $nParam1 = sp + 20|0; + $nParam2 = sp + 12|0; + $nNew = sp + 8|0; + $p2 = sp + 4|0; + $pOut = sp; + $res = sp + 16|0; + HEAP32[$0>>2] = $nNear; + HEAP32[$1>>2] = $aTmp; + HEAP32[$2>>2] = $paPoslist; + HEAP32[$3>>2] = $pnToken; + HEAP32[$4>>2] = $pPhrase; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$4>>2]|0; + $7 = (($6) + 48|0); + $8 = HEAP32[$7>>2]|0; + $9 = (($5) + ($8))|0; + HEAP32[$nParam1>>2] = $9; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$3>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = (($10) + ($12))|0; + HEAP32[$nParam2>>2] = $13; + $14 = HEAP32[$4>>2]|0; + $15 = (($14) + 28|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$pOut>>2] = $16; + HEAP32[$p2>>2] = $16; + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$nParam1>>2]|0; + $19 = HEAP32[$nParam2>>2]|0; + $20 = HEAP32[$2>>2]|0; + $21 = (_fts3PoslistNearMerge($pOut,$17,$18,$19,$20,$p2)|0); + HEAP32[$res>>2] = $21; + $22 = HEAP32[$res>>2]|0; + $23 = ($22|0)!=(0); + if (!($23)) { + $53 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($53|0); + } + $24 = HEAP32[$pOut>>2]|0; + $25 = HEAP32[$4>>2]|0; + $26 = (($25) + 28|0); + $27 = HEAP32[$26>>2]|0; + $28 = $24; + $29 = $27; + $30 = (($28) - ($29))|0; + $31 = (($30) - 1)|0; + HEAP32[$nNew>>2] = $31; + $32 = HEAP32[$nNew>>2]|0; + $33 = HEAP32[$4>>2]|0; + $34 = (($33) + 28|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + ($32)|0); + $37 = HEAP32[$4>>2]|0; + $38 = (($37) + 32|0); + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$nNew>>2]|0; + $41 = (($39) - ($40))|0; + _memset(($36|0),0,($41|0))|0; + $42 = HEAP32[$nNew>>2]|0; + $43 = HEAP32[$4>>2]|0; + $44 = (($43) + 32|0); + HEAP32[$44>>2] = $42; + $45 = HEAP32[$4>>2]|0; + $46 = (($45) + 28|0); + $47 = HEAP32[$46>>2]|0; + $48 = HEAP32[$2>>2]|0; + HEAP32[$48>>2] = $47; + $49 = HEAP32[$4>>2]|0; + $50 = (($49) + 48|0); + $51 = HEAP32[$50>>2]|0; + $52 = HEAP32[$3>>2]|0; + HEAP32[$52>>2] = $51; + $53 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($53|0); +} +function _fts3PoslistNearMerge($pp,$aTmp,$nRight,$nLeft,$pp1,$pp2) { + $pp = $pp|0; + $aTmp = $aTmp|0; + $nRight = $nRight|0; + $nLeft = $nLeft|0; + $pp1 = $pp1|0; + $pp2 = $pp2|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aTmp2 = 0, $p1 = 0; + var $p2 = 0, $pTmp1 = 0, $pTmp2 = 0, $res = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $4 = sp + 28|0; + $5 = sp + 24|0; + $p1 = sp + 20|0; + $p2 = sp + 12|0; + $pTmp1 = sp + 8|0; + $pTmp2 = sp + 4|0; + $aTmp2 = sp; + $res = sp + 16|0; + HEAP32[$0>>2] = $pp; + HEAP32[$1>>2] = $aTmp; + HEAP32[$2>>2] = $nRight; + HEAP32[$3>>2] = $nLeft; + HEAP32[$4>>2] = $pp1; + HEAP32[$5>>2] = $pp2; + $6 = HEAP32[$4>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$p1>>2] = $7; + $8 = HEAP32[$5>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$p2>>2] = $9; + $10 = HEAP32[$1>>2]|0; + HEAP32[$pTmp1>>2] = $10; + HEAP32[$res>>2] = 1; + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$4>>2]|0; + $13 = HEAP32[$5>>2]|0; + (_fts3PoslistPhraseMerge($pTmp1,$11,0,0,$12,$13)|0); + $14 = HEAP32[$pTmp1>>2]|0; + HEAP32[$pTmp2>>2] = $14; + HEAP32[$aTmp2>>2] = $14; + $15 = HEAP32[$p1>>2]|0; + $16 = HEAP32[$4>>2]|0; + HEAP32[$16>>2] = $15; + $17 = HEAP32[$p2>>2]|0; + $18 = HEAP32[$5>>2]|0; + HEAP32[$18>>2] = $17; + $19 = HEAP32[$3>>2]|0; + $20 = HEAP32[$5>>2]|0; + $21 = HEAP32[$4>>2]|0; + (_fts3PoslistPhraseMerge($pTmp2,$19,1,0,$20,$21)|0); + $22 = HEAP32[$pTmp1>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = ($22|0)!=($23|0); + if ($24) { + $25 = HEAP32[$pTmp2>>2]|0; + $26 = HEAP32[$aTmp2>>2]|0; + $27 = ($25|0)!=($26|0); + if ($27) { + $28 = HEAP32[$0>>2]|0; + _fts3PoslistMerge($28,$1,$aTmp2); + $37 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($37|0); + } + } + $29 = HEAP32[$pTmp1>>2]|0; + $30 = HEAP32[$1>>2]|0; + $31 = ($29|0)!=($30|0); + if ($31) { + $32 = HEAP32[$0>>2]|0; + _fts3PoslistCopy($32,$1); + $37 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($37|0); + } + $33 = HEAP32[$pTmp2>>2]|0; + $34 = HEAP32[$aTmp2>>2]|0; + $35 = ($33|0)!=($34|0); + if ($35) { + $36 = HEAP32[$0>>2]|0; + _fts3PoslistCopy($36,$aTmp2); + $37 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($37|0); + } else { + HEAP32[$res>>2] = 0; + $37 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($37|0); + } + return 0|0; +} +function _sqlite3Fts3OpenTokenizer($pTokenizer,$iLangid,$z,$n,$ppCsr) { + $pTokenizer = $pTokenizer|0; + $iLangid = $iLangid|0; + $z = $z|0; + $n = $n|0; + $ppCsr = $ppCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCsr = 0, $pModule = 0, $rc = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $pModule = sp + 16|0; + $pCsr = sp + 20|0; + $rc = sp + 24|0; + HEAP32[$0>>2] = $pTokenizer; + HEAP32[$1>>2] = $iLangid; + HEAP32[$2>>2] = $z; + HEAP32[$3>>2] = $n; + HEAP32[$4>>2] = $ppCsr; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$pModule>>2] = $6; + HEAP32[$pCsr>>2] = 0; + $7 = HEAP32[$pModule>>2]|0; + $8 = (($7) + 12|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$3>>2]|0; + $13 = (FUNCTION_TABLE_iiiii[$9 & 31]($10,$11,$12,$pCsr)|0); + HEAP32[$rc>>2] = $13; + $14 = HEAP32[$rc>>2]|0; + $15 = ($14|0)==(0); + if ($15) { + $16 = HEAP32[$0>>2]|0; + $17 = HEAP32[$pCsr>>2]|0; + HEAP32[$17>>2] = $16; + $18 = HEAP32[$pModule>>2]|0; + $19 = HEAP32[$18>>2]|0; + $20 = ($19|0)>=(1); + if ($20) { + $21 = HEAP32[$pModule>>2]|0; + $22 = (($21) + 24|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$pCsr>>2]|0; + $25 = HEAP32[$1>>2]|0; + $26 = (FUNCTION_TABLE_iii[$23 & 127]($24,$25)|0); + HEAP32[$rc>>2] = $26; + $27 = HEAP32[$rc>>2]|0; + $28 = ($27|0)!=(0); + if ($28) { + $29 = HEAP32[$pModule>>2]|0; + $30 = (($29) + 16|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$pCsr>>2]|0; + (FUNCTION_TABLE_ii[$31 & 63]($32)|0); + HEAP32[$pCsr>>2] = 0; + } + } + } + $33 = HEAP32[$pCsr>>2]|0; + $34 = HEAP32[$4>>2]|0; + HEAP32[$34>>2] = $33; + $35 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($35|0); +} +function _fts3PendingListAppend($pp,$0,$1,$2,$3,$4,$5,$pRc) { + $pp = $pp|0; + $0 = $0|0; + $1 = $1|0; + $2 = $2|0; + $3 = $3|0; + $4 = $4|0; + $5 = $5|0; + $pRc = $pRc|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; + var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; + var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0; + var $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iDelta = 0, $p = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $6 = sp + 44|0; + $7 = sp + 48|0; + $8 = sp + 8|0; + $9 = sp + 16|0; + $10 = sp; + $11 = sp + 32|0; + $p = sp + 36|0; + $rc = sp + 40|0; + $iDelta = sp + 24|0; + HEAP32[$7>>2] = $pp; + $12 = $8; + $13 = $12; + HEAP32[$13>>2] = $0; + $14 = (($12) + 4)|0; + $15 = $14; + HEAP32[$15>>2] = $1; + $16 = $9; + $17 = $16; + HEAP32[$17>>2] = $2; + $18 = (($16) + 4)|0; + $19 = $18; + HEAP32[$19>>2] = $3; + $20 = $10; + $21 = $20; + HEAP32[$21>>2] = $4; + $22 = (($20) + 4)|0; + $23 = $22; + HEAP32[$23>>2] = $5; + HEAP32[$11>>2] = $pRc; + $24 = HEAP32[$7>>2]|0; + $25 = HEAP32[$24>>2]|0; + HEAP32[$p>>2] = $25; + HEAP32[$rc>>2] = 0; + $26 = HEAP32[$p>>2]|0; + $27 = ($26|0)!=(0|0); + if ($27) { + $28 = HEAP32[$p>>2]|0; + $29 = (($28) + 16|0); + $30 = $29; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = $8; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + $39 = (($36) + 4)|0; + $40 = $39; + $41 = HEAP32[$40>>2]|0; + $42 = ($32|0)!=($38|0); + $43 = ($35|0)!=($41|0); + $44 = $42 | $43; + if ($44) { + label = 3; + } else { + label = 9; + } + } else { + label = 3; + } + if ((label|0) == 3) { + $45 = $8; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (($45) + 4)|0; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$p>>2]|0; + $52 = ($51|0)!=(0|0); + if ($52) { + $53 = HEAP32[$p>>2]|0; + $54 = (($53) + 16|0); + $55 = $54; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = (($55) + 4)|0; + $59 = $58; + $60 = HEAP32[$59>>2]|0; + $61 = $57;$62 = $60; + } else { + $61 = 0;$62 = 0; + } + $63 = (_i64Subtract(($47|0),($50|0),($61|0),($62|0))|0); + $64 = tempRet0; + $65 = $iDelta; + $66 = $65; + HEAP32[$66>>2] = $63; + $67 = (($65) + 4)|0; + $68 = $67; + HEAP32[$68>>2] = $64; + $69 = HEAP32[$p>>2]|0; + $70 = ($69|0)!=(0|0); + if ($70) { + $71 = HEAP32[$p>>2]|0; + $72 = HEAP32[$71>>2]|0; + $73 = (($72) + 1)|0; + HEAP32[$71>>2] = $73; + } + $74 = $iDelta; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = (($74) + 4)|0; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = (_fts3PendingListAppendVarint($p,$76,$79)|0); + HEAP32[$rc>>2] = $80; + $81 = (0)!=($80|0); + if (!($81)) { + $82 = HEAP32[$p>>2]|0; + $83 = (($82) + 24|0); + $84 = $83; + $85 = $84; + HEAP32[$85>>2] = -1; + $86 = (($84) + 4)|0; + $87 = $86; + HEAP32[$87>>2] = -1; + $88 = HEAP32[$p>>2]|0; + $89 = (($88) + 32|0); + $90 = $89; + $91 = $90; + HEAP32[$91>>2] = 0; + $92 = (($90) + 4)|0; + $93 = $92; + HEAP32[$93>>2] = 0; + $94 = $8; + $95 = $94; + $96 = HEAP32[$95>>2]|0; + $97 = (($94) + 4)|0; + $98 = $97; + $99 = HEAP32[$98>>2]|0; + $100 = HEAP32[$p>>2]|0; + $101 = (($100) + 16|0); + $102 = $101; + $103 = $102; + HEAP32[$103>>2] = $96; + $104 = (($102) + 4)|0; + $105 = $104; + HEAP32[$105>>2] = $99; + label = 9; + } + } + do { + if ((label|0) == 9) { + $106 = $9; + $107 = $106; + $108 = HEAP32[$107>>2]|0; + $109 = (($106) + 4)|0; + $110 = $109; + $111 = HEAP32[$110>>2]|0; + $112 = ($111|0)>(0); + $113 = ($111|0)==(0); + $114 = ($108>>>0)>(0); + $115 = $113 & $114; + $116 = $112 | $115; + if ($116) { + $117 = HEAP32[$p>>2]|0; + $118 = (($117) + 24|0); + $119 = $118; + $120 = $119; + $121 = HEAP32[$120>>2]|0; + $122 = (($119) + 4)|0; + $123 = $122; + $124 = HEAP32[$123>>2]|0; + $125 = $9; + $126 = $125; + $127 = HEAP32[$126>>2]|0; + $128 = (($125) + 4)|0; + $129 = $128; + $130 = HEAP32[$129>>2]|0; + $131 = ($121|0)!=($127|0); + $132 = ($124|0)!=($130|0); + $133 = $131 | $132; + if ($133) { + $134 = (_fts3PendingListAppendVarint($p,1,0)|0); + HEAP32[$rc>>2] = $134; + $135 = (0)!=($134|0); + if ($135) { + break; + } + $136 = $9; + $137 = $136; + $138 = HEAP32[$137>>2]|0; + $139 = (($136) + 4)|0; + $140 = $139; + $141 = HEAP32[$140>>2]|0; + $142 = (_fts3PendingListAppendVarint($p,$138,$141)|0); + HEAP32[$rc>>2] = $142; + $143 = (0)!=($142|0); + if ($143) { + break; + } + $144 = $9; + $145 = $144; + $146 = HEAP32[$145>>2]|0; + $147 = (($144) + 4)|0; + $148 = $147; + $149 = HEAP32[$148>>2]|0; + $150 = HEAP32[$p>>2]|0; + $151 = (($150) + 24|0); + $152 = $151; + $153 = $152; + HEAP32[$153>>2] = $146; + $154 = (($152) + 4)|0; + $155 = $154; + HEAP32[$155>>2] = $149; + $156 = HEAP32[$p>>2]|0; + $157 = (($156) + 32|0); + $158 = $157; + $159 = $158; + HEAP32[$159>>2] = 0; + $160 = (($158) + 4)|0; + $161 = $160; + HEAP32[$161>>2] = 0; + } + } + $162 = $9; + $163 = $162; + $164 = HEAP32[$163>>2]|0; + $165 = (($162) + 4)|0; + $166 = $165; + $167 = HEAP32[$166>>2]|0; + $168 = ($167|0)>(0); + $169 = ($167|0)==(0); + $170 = ($164>>>0)>=(0); + $171 = $169 & $170; + $172 = $168 | $171; + if ($172) { + $173 = $10; + $174 = $173; + $175 = HEAP32[$174>>2]|0; + $176 = (($173) + 4)|0; + $177 = $176; + $178 = HEAP32[$177>>2]|0; + $179 = (_i64Add(2,0,($175|0),($178|0))|0); + $180 = tempRet0; + $181 = HEAP32[$p>>2]|0; + $182 = (($181) + 32|0); + $183 = $182; + $184 = $183; + $185 = HEAP32[$184>>2]|0; + $186 = (($183) + 4)|0; + $187 = $186; + $188 = HEAP32[$187>>2]|0; + $189 = (_i64Subtract(($179|0),($180|0),($185|0),($188|0))|0); + $190 = tempRet0; + $191 = (_fts3PendingListAppendVarint($p,$189,$190)|0); + HEAP32[$rc>>2] = $191; + $192 = HEAP32[$rc>>2]|0; + $193 = ($192|0)==(0); + if ($193) { + $194 = $10; + $195 = $194; + $196 = HEAP32[$195>>2]|0; + $197 = (($194) + 4)|0; + $198 = $197; + $199 = HEAP32[$198>>2]|0; + $200 = HEAP32[$p>>2]|0; + $201 = (($200) + 32|0); + $202 = $201; + $203 = $202; + HEAP32[$203>>2] = $196; + $204 = (($202) + 4)|0; + $205 = $204; + HEAP32[$205>>2] = $199; + } + } + } + } while(0); + $206 = HEAP32[$rc>>2]|0; + $207 = HEAP32[$11>>2]|0; + HEAP32[$207>>2] = $206; + $208 = HEAP32[$p>>2]|0; + $209 = HEAP32[$7>>2]|0; + $210 = HEAP32[$209>>2]|0; + $211 = ($208|0)!=($210|0); + if ($211) { + $212 = HEAP32[$p>>2]|0; + $213 = HEAP32[$7>>2]|0; + HEAP32[$213>>2] = $212; + HEAP32[$6>>2] = 1; + $214 = HEAP32[$6>>2]|0; + STACKTOP = sp;return ($214|0); + } else { + HEAP32[$6>>2] = 0; + $214 = HEAP32[$6>>2]|0; + STACKTOP = sp;return ($214|0); + } + return 0|0; +} +function _fts3PendingListAppendVarint($pp,$0,$1) { + $pp = $pp|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $8 = 0, $9 = 0, $nNew = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 20|0; + $3 = sp + 8|0; + $4 = sp; + $p = sp + 12|0; + $nNew = sp + 16|0; + HEAP32[$3>>2] = $pp; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + $9 = HEAP32[$3>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$p>>2] = $10; + $11 = HEAP32[$p>>2]|0; + $12 = ($11|0)!=(0|0); + do { + if ($12) { + $23 = HEAP32[$p>>2]|0; + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + 10)|0; + $26 = (($25) + 1)|0; + $27 = HEAP32[$p>>2]|0; + $28 = (($27) + 8|0); + $29 = HEAP32[$28>>2]|0; + $30 = ($26|0)>($29|0); + if ($30) { + $31 = HEAP32[$p>>2]|0; + $32 = (($31) + 8|0); + $33 = HEAP32[$32>>2]|0; + $34 = $33<<1; + HEAP32[$nNew>>2] = $34; + $35 = HEAP32[$p>>2]|0; + $36 = HEAP32[$nNew>>2]|0; + $37 = (40 + ($36))|0; + $38 = (_sqlite3_realloc($35,$37)|0); + HEAP32[$p>>2] = $38; + $39 = HEAP32[$p>>2]|0; + $40 = ($39|0)!=(0|0); + if ($40) { + $44 = HEAP32[$nNew>>2]|0; + $45 = HEAP32[$p>>2]|0; + $46 = (($45) + 8|0); + HEAP32[$46>>2] = $44; + $47 = HEAP32[$p>>2]|0; + $48 = (($47) + 40|0); + $49 = HEAP32[$p>>2]|0; + $50 = (($49) + 4|0); + HEAP32[$50>>2] = $48; + break; + } + $41 = HEAP32[$3>>2]|0; + $42 = HEAP32[$41>>2]|0; + _sqlite3_free($42); + $43 = HEAP32[$3>>2]|0; + HEAP32[$43>>2] = 0; + HEAP32[$2>>2] = 7; + $75 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($75|0); + } + } else { + $13 = (_sqlite3_malloc(140)|0); + HEAP32[$p>>2] = $13; + $14 = HEAP32[$p>>2]|0; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = HEAP32[$p>>2]|0; + $17 = (($16) + 8|0); + HEAP32[$17>>2] = 100; + $18 = HEAP32[$p>>2]|0; + $19 = (($18) + 40|0); + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 4|0); + HEAP32[$21>>2] = $19; + $22 = HEAP32[$p>>2]|0; + HEAP32[$22>>2] = 0; + break; + } + HEAP32[$2>>2] = 7; + $75 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($75|0); + } + } while(0); + $51 = HEAP32[$p>>2]|0; + $52 = HEAP32[$51>>2]|0; + $53 = HEAP32[$p>>2]|0; + $54 = (($53) + 4|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + ($52)|0); + $57 = $4; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = (($57) + 4)|0; + $61 = $60; + $62 = HEAP32[$61>>2]|0; + $63 = (_sqlite3Fts3PutVarint($56,$59,$62)|0); + $64 = HEAP32[$p>>2]|0; + $65 = HEAP32[$64>>2]|0; + $66 = (($65) + ($63))|0; + HEAP32[$64>>2] = $66; + $67 = HEAP32[$p>>2]|0; + $68 = HEAP32[$67>>2]|0; + $69 = HEAP32[$p>>2]|0; + $70 = (($69) + 4|0); + $71 = HEAP32[$70>>2]|0; + $72 = (($71) + ($68)|0); + HEAP8[$72>>0] = 0; + $73 = HEAP32[$p>>2]|0; + $74 = HEAP32[$3>>2]|0; + HEAP32[$74>>2] = $73; + HEAP32[$2>>2] = 0; + $75 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($75|0); +} +function _fts3CursorSeekStmt($pCsr,$ppStmt) { + $pCsr = $pCsr|0; + $ppStmt = $ppStmt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $rc = 0, $vararg_buffer = 0, $zSql = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 24|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $rc = sp + 12|0; + $p = sp + 16|0; + $zSql = sp + 20|0; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $ppStmt; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)==(0|0); + do { + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$p>>2] = $8; + $9 = HEAP32[$p>>2]|0; + $10 = (($9) + 216|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$vararg_buffer>>2] = $11; + $12 = (_sqlite3_mprintf(7024,$vararg_buffer)|0); + HEAP32[$zSql>>2] = $12; + $13 = HEAP32[$zSql>>2]|0; + $14 = ($13|0)!=(0|0); + if ($14) { + $15 = HEAP32[$p>>2]|0; + $16 = (($15) + 12|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$zSql>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 8|0); + $21 = (_sqlite3_prepare_v2($17,$18,-1,$20,0)|0); + HEAP32[$rc>>2] = $21; + $22 = HEAP32[$zSql>>2]|0; + _sqlite3_free($22); + break; + } + HEAP32[$0>>2] = 7; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } + } while(0); + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 8|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$2>>2]|0; + HEAP32[$26>>2] = $25; + $27 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $27; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); +} +function _fts3ExprIterate2($pExpr,$piPhrase,$x,$pCtx) { + $pExpr = $pExpr|0; + $piPhrase = $piPhrase|0; + $x = $x|0; + $pCtx = $pCtx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $eType = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $rc = sp + 12|0; + $eType = sp + 16|0; + HEAP32[$0>>2] = $pExpr; + HEAP32[$1>>2] = $piPhrase; + HEAP32[$2>>2] = $x; + HEAP32[$3>>2] = $pCtx; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$eType>>2] = $5; + $6 = HEAP32[$eType>>2]|0; + $7 = ($6|0)!=(5); + if (!($7)) { + $26 = HEAP32[$2>>2]|0; + $27 = HEAP32[$0>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$3>>2]|0; + $31 = (FUNCTION_TABLE_iiii[$26 & 31]($27,$29,$30)|0); + HEAP32[$rc>>2] = $31; + $32 = HEAP32[$1>>2]|0; + $33 = HEAP32[$32>>2]|0; + $34 = (($33) + 1)|0; + HEAP32[$32>>2] = $34; + $35 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($35|0); + } + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 12|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$3>>2]|0; + $14 = (_fts3ExprIterate2($10,$11,$12,$13)|0); + HEAP32[$rc>>2] = $14; + $15 = HEAP32[$rc>>2]|0; + $16 = ($15|0)==(0); + if (!($16)) { + $35 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($35|0); + } + $17 = HEAP32[$eType>>2]|0; + $18 = ($17|0)!=(2); + if (!($18)) { + $35 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($35|0); + } + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 16|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$2>>2]|0; + $24 = HEAP32[$3>>2]|0; + $25 = (_fts3ExprIterate2($21,$22,$23,$24)|0); + HEAP32[$rc>>2] = $25; + $35 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($35|0); +} +function _fts3MatchinfoLcsCb($pExpr,$iPhrase,$pCtx) { + $pExpr = $pExpr|0; + $iPhrase = $iPhrase|0; + $pCtx = $pCtx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $aIter = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $aIter = sp + 8|0; + HEAP32[$0>>2] = $pExpr; + HEAP32[$1>>2] = $iPhrase; + HEAP32[$2>>2] = $pCtx; + $3 = HEAP32[$2>>2]|0; + HEAP32[$aIter>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$aIter>>2]|0; + $7 = (($6) + ($5<<4)|0); + HEAP32[$7>>2] = $4; + STACKTOP = sp;return 0; +} +function _fts3LcsIteratorAdvance($pIter) { + $pIter = $pIter|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $iRead = 0, $or$cond = 0, $pRead = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $pRead = sp + 8|0; + $iRead = sp; + $rc = sp + 12|0; + HEAP32[$0>>2] = $pIter; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pRead>>2] = $3; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$pRead>>2]|0; + $5 = (_sqlite3Fts3GetVarint($4,$iRead)|0); + $6 = HEAP32[$pRead>>2]|0; + $7 = (($6) + ($5)|0); + HEAP32[$pRead>>2] = $7; + $8 = $iRead; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = (($8) + 4)|0; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = ($10|0)==(0); + $15 = ($13|0)==(0); + $16 = $14 & $15; + $17 = $iRead; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (($17) + 4)|0; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = ($19|0)==(1); + $24 = ($22|0)==(0); + $25 = $23 & $24; + $or$cond = $16 | $25; + if ($or$cond) { + HEAP32[$pRead>>2] = 0; + HEAP32[$rc>>2] = 1; + $38 = HEAP32[$pRead>>2]|0; + $39 = HEAP32[$0>>2]|0; + $40 = (($39) + 8|0); + HEAP32[$40>>2] = $38; + $41 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($41|0); + } else { + $26 = $iRead; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = (($26) + 4)|0; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = (_i64Subtract(($28|0),($31|0),2,0)|0); + $33 = tempRet0; + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 12|0); + $36 = HEAP32[$35>>2]|0; + $37 = (($36) + ($32))|0; + HEAP32[$35>>2] = $37; + $38 = HEAP32[$pRead>>2]|0; + $39 = HEAP32[$0>>2]|0; + $40 = (($39) + 8|0); + HEAP32[$40>>2] = $38; + $41 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($41|0); + } + return 0|0; +} +function _fts3ExprLoadDoclistsCb($pExpr,$iPhrase,$ctx) { + $pExpr = $pExpr|0; + $iPhrase = $iPhrase|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0; + var $pPhrase = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $pPhrase = sp + 12|0; + $p = sp + 16|0; + HEAP32[$0>>2] = $pExpr; + HEAP32[$1>>2] = $iPhrase; + HEAP32[$2>>2] = $ctx; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 20|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pPhrase>>2] = $5; + $6 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $6; + $7 = HEAP32[$p>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 1)|0; + HEAP32[$8>>2] = $10; + $11 = HEAP32[$pPhrase>>2]|0; + $12 = (($11) + 48|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 8|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + ($13))|0; + HEAP32[$15>>2] = $17; + $18 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($18|0); +} +function _fts3SelectDocsize($pTab,$0,$1,$ppStmt) { + $pTab = $pTab|0; + $0 = $0|0; + $1 = $1|0; + $ppStmt = $ppStmt|0; + var $$ = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; + var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 20|0; + $3 = sp; + $4 = sp + 8|0; + $pStmt = sp + 12|0; + $rc = sp + 16|0; + HEAP32[$2>>2] = $pTab; + $5 = $3; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + HEAP32[$4>>2] = $ppStmt; + HEAP32[$pStmt>>2] = 0; + $9 = HEAP32[$2>>2]|0; + $10 = (_fts3SqlStmt($9,21,$pStmt,0)|0); + HEAP32[$rc>>2] = $10; + $11 = HEAP32[$rc>>2]|0; + $12 = ($11|0)==(0); + do { + if ($12) { + $13 = HEAP32[$pStmt>>2]|0; + $14 = $3; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + (_sqlite3_bind_int64($13,1,$16,$19)|0); + $20 = HEAP32[$pStmt>>2]|0; + $21 = (_sqlite3_step($20)|0); + HEAP32[$rc>>2] = $21; + $22 = HEAP32[$rc>>2]|0; + $23 = ($22|0)!=(100); + if (!($23)) { + $24 = HEAP32[$pStmt>>2]|0; + $25 = (_sqlite3_column_type($24,0)|0); + $26 = ($25|0)!=(4); + if (!($26)) { + HEAP32[$rc>>2] = 0; + break; + } + } + $27 = HEAP32[$pStmt>>2]|0; + $28 = (_sqlite3_reset($27)|0); + HEAP32[$rc>>2] = $28; + $29 = HEAP32[$rc>>2]|0; + $30 = ($29|0)==(0); + $$ = $30 ? 267 : $28; + HEAP32[$rc>>2] = $$; + HEAP32[$pStmt>>2] = 0; + } + } while(0); + $31 = HEAP32[$pStmt>>2]|0; + $32 = HEAP32[$4>>2]|0; + HEAP32[$32>>2] = $31; + $33 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($33|0); +} +function _sqlite3Fts3SelectDoctotal($pTab,$ppStmt) { + $pTab = $pTab|0; + $ppStmt = $ppStmt|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $pStmt = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$0>>2] = $pTab; + HEAP32[$1>>2] = $ppStmt; + HEAP32[$pStmt>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (_fts3SqlStmt($2,22,$pStmt,0)|0); + HEAP32[$rc>>2] = $3; + $4 = HEAP32[$rc>>2]|0; + $5 = ($4|0)==(0); + do { + if ($5) { + $6 = HEAP32[$pStmt>>2]|0; + (_sqlite3_bind_int($6,1,0)|0); + $7 = HEAP32[$pStmt>>2]|0; + $8 = (_sqlite3_step($7)|0); + $9 = ($8|0)!=(100); + if (!($9)) { + $10 = HEAP32[$pStmt>>2]|0; + $11 = (_sqlite3_column_type($10,0)|0); + $12 = ($11|0)!=(4); + if (!($12)) { + break; + } + } + $13 = HEAP32[$pStmt>>2]|0; + $14 = (_sqlite3_reset($13)|0); + HEAP32[$rc>>2] = $14; + $15 = HEAP32[$rc>>2]|0; + $16 = ($15|0)==(0); + $$ = $16 ? 267 : $14; + HEAP32[$rc>>2] = $$; + HEAP32[$pStmt>>2] = 0; + } + } while(0); + $17 = HEAP32[$pStmt>>2]|0; + $18 = HEAP32[$1>>2]|0; + HEAP32[$18>>2] = $17; + $19 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($19|0); +} +function _fts3ExprPhraseCountCb($pExpr,$iPhrase,$ctx) { + $pExpr = $pExpr|0; + $iPhrase = $iPhrase|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pExpr; + HEAP32[$1>>2] = $iPhrase; + HEAP32[$2>>2] = $ctx; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 1)|0; + HEAP32[$3>>2] = $5; + STACKTOP = sp;return 0; +} +function _sqlite3Fts3Optimize($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $rc = 0, $rc2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $rc = sp; + $rc2 = sp + 4|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 12|0); + $3 = HEAP32[$2>>2]|0; + $4 = (_sqlite3_exec($3,7168,0,0,0)|0); + HEAP32[$rc>>2] = $4; + $5 = HEAP32[$rc>>2]|0; + $6 = ($5|0)==(0); + do { + if ($6) { + $7 = HEAP32[$0>>2]|0; + $8 = (_fts3DoOptimize($7,1)|0); + HEAP32[$rc>>2] = $8; + $9 = HEAP32[$rc>>2]|0; + $10 = ($9|0)==(0); + $11 = HEAP32[$rc>>2]|0; + $12 = ($11|0)==(101); + $or$cond = $10 | $12; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 12|0); + $15 = HEAP32[$14>>2]|0; + if (!($or$cond)) { + (_sqlite3_exec($15,7200,0,0,0)|0); + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 12|0); + $22 = HEAP32[$21>>2]|0; + (_sqlite3_exec($22,7184,0,0,0)|0); + break; + } + $16 = (_sqlite3_exec($15,7184,0,0,0)|0); + HEAP32[$rc2>>2] = $16; + $17 = HEAP32[$rc2>>2]|0; + $18 = ($17|0)!=(0); + if ($18) { + $19 = HEAP32[$rc2>>2]|0; + HEAP32[$rc>>2] = $19; + } + } + } while(0); + $23 = HEAP32[$0>>2]|0; + _sqlite3Fts3SegmentsClose($23); + $24 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($24|0); +} +function _fts3DoOptimize($p,$bReturnDone) { + $p = $p|0; + $bReturnDone = $bReturnDone|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $bSeenDone = 0, $i = 0, $iLangid = 0, $pAllLangid = 0, $rc = 0, $rc2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $bSeenDone = sp + 4|0; + $rc = sp + 8|0; + $pAllLangid = sp + 12|0; + $rc2 = sp + 16|0; + $i = sp + 20|0; + $iLangid = sp + 24|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $bReturnDone; + HEAP32[$bSeenDone>>2] = 0; + HEAP32[$pAllLangid>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (_fts3SqlStmt($2,27,$pAllLangid,0)|0); + HEAP32[$rc>>2] = $3; + $4 = HEAP32[$rc>>2]|0; + $5 = ($4|0)==(0); + if ($5) { + $6 = HEAP32[$pAllLangid>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 248|0); + $9 = HEAP32[$8>>2]|0; + (_sqlite3_bind_int($6,1,$9)|0); + L3: while(1) { + $10 = HEAP32[$pAllLangid>>2]|0; + $11 = (_sqlite3_step($10)|0); + $12 = ($11|0)==(100); + $13 = HEAP32[$pAllLangid>>2]|0; + if (!($12)) { + break; + } + $14 = (_sqlite3_column_int($13,0)|0); + HEAP32[$iLangid>>2] = $14; + HEAP32[$i>>2] = 0; + while(1) { + $15 = HEAP32[$rc>>2]|0; + $16 = ($15|0)==(0); + if (!($16)) { + continue L3; + } + $17 = HEAP32[$i>>2]|0; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 248|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($17|0)<($20|0); + if (!($21)) { + continue L3; + } + $22 = HEAP32[$0>>2]|0; + $23 = HEAP32[$iLangid>>2]|0; + $24 = HEAP32[$i>>2]|0; + $25 = (_fts3SegmentMerge($22,$23,$24,-2)|0); + HEAP32[$rc>>2] = $25; + $26 = HEAP32[$rc>>2]|0; + $27 = ($26|0)==(101); + if ($27) { + HEAP32[$bSeenDone>>2] = 1; + HEAP32[$rc>>2] = 0; + } + $28 = HEAP32[$i>>2]|0; + $29 = (($28) + 1)|0; + HEAP32[$i>>2] = $29; + } + } + $30 = (_sqlite3_reset($13)|0); + HEAP32[$rc2>>2] = $30; + $31 = HEAP32[$rc>>2]|0; + $32 = ($31|0)==(0); + if ($32) { + $33 = HEAP32[$rc2>>2]|0; + HEAP32[$rc>>2] = $33; + } + } + $34 = HEAP32[$0>>2]|0; + _sqlite3Fts3SegmentsClose($34); + $35 = HEAP32[$0>>2]|0; + _sqlite3Fts3PendingTermsClear($35); + $36 = HEAP32[$rc>>2]|0; + $37 = ($36|0)==(0); + if ($37) { + $38 = HEAP32[$1>>2]|0; + $39 = ($38|0)!=(0); + if ($39) { + $40 = HEAP32[$bSeenDone>>2]|0; + $41 = ($40|0)!=(0); + if ($41) { + $43 = 101; + STACKTOP = sp;return ($43|0); + } + } + } + $42 = HEAP32[$rc>>2]|0; + $43 = $42; + STACKTOP = sp;return ($43|0); +} +function _sqlite3Fts3Offsets($pCtx,$pCsr) { + $pCtx = $pCtx|0; + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $NDUMMY = 0, $ZDUMMY = 0, $aBuffer = 0, $i = 0, $iCol = 0, $iCurrent = 0, $iEnd = 0, $iMinPos = 0, $iStart = 0, $nDoc = 0, $nToken = 0, $pC = 0, $pMod = 0, $pT = 0, $pTab = 0, $pTerm = 0, $rc = 0, $res = 0, $sCtx = 0; + var $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $zDoc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 208|0; + $vararg_buffer = sp + 32|0; + $0 = sp + 132|0; + $1 = sp + 128|0; + $pTab = sp + 124|0; + $pMod = sp + 120|0; + $rc = sp + 116|0; + $nToken = sp + 112|0; + $iCol = sp + 108|0; + $res = sp + 96|0; + $sCtx = sp; + $pC = sp + 92|0; + $ZDUMMY = sp + 60|0; + $NDUMMY = sp + 64|0; + $iStart = sp + 48|0; + $iEnd = sp + 52|0; + $iCurrent = sp + 56|0; + $zDoc = sp + 88|0; + $nDoc = sp + 68|0; + $i = sp + 72|0; + $iMinPos = sp + 76|0; + $pTerm = sp + 80|0; + $pT = sp + 84|0; + $aBuffer = sp + 136|0; + HEAP32[$0>>2] = $pCtx; + HEAP32[$1>>2] = $pCsr; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$pTab>>2] = $3; + $4 = HEAP32[$pTab>>2]|0; + $5 = (($4) + 36|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$pMod>>2] = $7; + ;HEAP32[$res+0>>2]=0|0;HEAP32[$res+4>>2]=0|0;HEAP32[$res+8>>2]=0|0; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 12|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if (!($11)) { + $12 = HEAP32[$0>>2]|0; + _sqlite3_result_text($12,1784,0,0); + STACKTOP = sp;return; + } + ;HEAP32[$sCtx+0>>2]=0|0;HEAP32[$sCtx+4>>2]=0|0;HEAP32[$sCtx+8>>2]=0|0;HEAP32[$sCtx+12>>2]=0|0;HEAP32[$sCtx+16>>2]=0|0;HEAP32[$sCtx+20>>2]=0|0;HEAP32[$sCtx+24>>2]=0|0;HEAP32[$sCtx+28>>2]=0|0; + $13 = HEAP32[$1>>2]|0; + $14 = (_fts3ExprLoadDoclists($13,0,$nToken)|0); + HEAP32[$rc>>2] = $14; + $15 = HEAP32[$rc>>2]|0; + $16 = ($15|0)!=(0); + L5: do { + if (!($16)) { + $17 = HEAP32[$nToken>>2]|0; + $18 = ($17*12)|0; + $19 = (_sqlite3_malloc($18)|0); + $20 = (($sCtx) + 24|0); + HEAP32[$20>>2] = $19; + $21 = (($sCtx) + 24|0); + $22 = HEAP32[$21>>2]|0; + $23 = (0|0)==($22|0); + if ($23) { + HEAP32[$rc>>2] = 7; + break; + } + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 32|0); + $26 = $25; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = (($26) + 4)|0; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = (($sCtx) + 16|0); + $33 = $32; + $34 = $33; + HEAP32[$34>>2] = $28; + $35 = (($33) + 4)|0; + $36 = $35; + HEAP32[$36>>2] = $31; + $37 = HEAP32[$1>>2]|0; + HEAP32[$sCtx>>2] = $37; + HEAP32[$iCol>>2] = 0; + while(1) { + $38 = HEAP32[$iCol>>2]|0; + $39 = HEAP32[$pTab>>2]|0; + $40 = (($39) + 24|0); + $41 = HEAP32[$40>>2]|0; + $42 = ($38|0)<($41|0); + if (!($42)) { + break L5; + } + HEAP32[$NDUMMY>>2] = 0; + HEAP32[$iStart>>2] = 0; + HEAP32[$iEnd>>2] = 0; + HEAP32[$iCurrent>>2] = 0; + $43 = HEAP32[$iCol>>2]|0; + $44 = (($sCtx) + 4|0); + HEAP32[$44>>2] = $43; + $45 = (($sCtx) + 8|0); + HEAP32[$45>>2] = 0; + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 12|0); + $48 = HEAP32[$47>>2]|0; + (_fts3ExprIterate($48,26,$sCtx)|0); + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 8|0); + $51 = HEAP32[$50>>2]|0; + $52 = HEAP32[$iCol>>2]|0; + $53 = (($52) + 1)|0; + $54 = (_sqlite3_column_text($51,$53)|0); + HEAP32[$zDoc>>2] = $54; + $55 = HEAP32[$1>>2]|0; + $56 = (($55) + 8|0); + $57 = HEAP32[$56>>2]|0; + $58 = HEAP32[$iCol>>2]|0; + $59 = (($58) + 1)|0; + $60 = (_sqlite3_column_bytes($57,$59)|0); + HEAP32[$nDoc>>2] = $60; + $61 = HEAP32[$zDoc>>2]|0; + $62 = ($61|0)==(0|0); + if ($62) { + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + 8|0); + $65 = HEAP32[$64>>2]|0; + $66 = HEAP32[$iCol>>2]|0; + $67 = (($66) + 1)|0; + $68 = (_sqlite3_column_type($65,$67)|0); + $69 = ($68|0)==(5); + if (!($69)) { + break; + } + } else { + $70 = HEAP32[$pTab>>2]|0; + $71 = (($70) + 36|0); + $72 = HEAP32[$71>>2]|0; + $73 = HEAP32[$1>>2]|0; + $74 = (($73) + 16|0); + $75 = HEAP32[$74>>2]|0; + $76 = HEAP32[$zDoc>>2]|0; + $77 = HEAP32[$nDoc>>2]|0; + $78 = (_sqlite3Fts3OpenTokenizer($72,$75,$76,$77,$pC)|0); + HEAP32[$rc>>2] = $78; + $79 = HEAP32[$rc>>2]|0; + $80 = ($79|0)!=(0); + if ($80) { + break L5; + } + $81 = HEAP32[$pMod>>2]|0; + $82 = (($81) + 20|0); + $83 = HEAP32[$82>>2]|0; + $84 = HEAP32[$pC>>2]|0; + $85 = (FUNCTION_TABLE_iiiiiii[$83 & 15]($84,$ZDUMMY,$NDUMMY,$iStart,$iEnd,$iCurrent)|0); + HEAP32[$rc>>2] = $85; + while(1) { + $86 = HEAP32[$rc>>2]|0; + $87 = ($86|0)==(0); + if (!($87)) { + break; + } + HEAP32[$iMinPos>>2] = 2147483647; + HEAP32[$pTerm>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $88 = HEAP32[$i>>2]|0; + $89 = HEAP32[$nToken>>2]|0; + $90 = ($88|0)<($89|0); + if (!($90)) { + break; + } + $91 = HEAP32[$i>>2]|0; + $92 = (($sCtx) + 24|0); + $93 = HEAP32[$92>>2]|0; + $94 = (($93) + (($91*12)|0)|0); + HEAP32[$pT>>2] = $94; + $95 = HEAP32[$pT>>2]|0; + $96 = HEAP32[$95>>2]|0; + $97 = ($96|0)!=(0|0); + if ($97) { + $98 = HEAP32[$pT>>2]|0; + $99 = (($98) + 4|0); + $100 = HEAP32[$99>>2]|0; + $101 = HEAP32[$pT>>2]|0; + $102 = (($101) + 8|0); + $103 = HEAP32[$102>>2]|0; + $104 = (($100) - ($103))|0; + $105 = HEAP32[$iMinPos>>2]|0; + $106 = ($104|0)<($105|0); + if ($106) { + $107 = HEAP32[$pT>>2]|0; + $108 = (($107) + 4|0); + $109 = HEAP32[$108>>2]|0; + $110 = HEAP32[$pT>>2]|0; + $111 = (($110) + 8|0); + $112 = HEAP32[$111>>2]|0; + $113 = (($109) - ($112))|0; + HEAP32[$iMinPos>>2] = $113; + $114 = HEAP32[$pT>>2]|0; + HEAP32[$pTerm>>2] = $114; + } + } + $115 = HEAP32[$i>>2]|0; + $116 = (($115) + 1)|0; + HEAP32[$i>>2] = $116; + } + $117 = HEAP32[$pTerm>>2]|0; + $118 = ($117|0)!=(0|0); + if (!($118)) { + HEAP32[$rc>>2] = 101; + continue; + } + $119 = HEAP32[$pTerm>>2]|0; + $120 = HEAP32[$119>>2]|0; + $121 = HEAP8[$120>>0]|0; + $122 = $121 << 24 >> 24; + $123 = 254 & $122; + $124 = (0)==($123|0); + $125 = HEAP32[$pTerm>>2]|0; + if ($124) { + HEAP32[$125>>2] = 0; + } else { + $126 = HEAP32[$pTerm>>2]|0; + $127 = (($126) + 4|0); + _fts3GetDeltaPosition($125,$127); + } + while(1) { + $128 = HEAP32[$rc>>2]|0; + $129 = ($128|0)==(0); + if (!($129)) { + break; + } + $130 = HEAP32[$iCurrent>>2]|0; + $131 = HEAP32[$iMinPos>>2]|0; + $132 = ($130|0)<($131|0); + if (!($132)) { + break; + } + $133 = HEAP32[$pMod>>2]|0; + $134 = (($133) + 20|0); + $135 = HEAP32[$134>>2]|0; + $136 = HEAP32[$pC>>2]|0; + $137 = (FUNCTION_TABLE_iiiiiii[$135 & 15]($136,$ZDUMMY,$NDUMMY,$iStart,$iEnd,$iCurrent)|0); + HEAP32[$rc>>2] = $137; + } + $138 = HEAP32[$rc>>2]|0; + $139 = ($138|0)==(0); + if ($139) { + $140 = HEAP32[$iCol>>2]|0; + $141 = HEAP32[$pTerm>>2]|0; + $142 = (($sCtx) + 24|0); + $143 = HEAP32[$142>>2]|0; + $144 = $141; + $145 = $143; + $146 = (($144) - ($145))|0; + $147 = (($146|0) / 12)&-1; + $148 = HEAP32[$iStart>>2]|0; + $149 = HEAP32[$iEnd>>2]|0; + $150 = HEAP32[$iStart>>2]|0; + $151 = (($149) - ($150))|0; + HEAP32[$vararg_buffer>>2] = $140; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $147; + $vararg_ptr2 = (($vararg_buffer) + 8|0); + HEAP32[$vararg_ptr2>>2] = $148; + $vararg_ptr3 = (($vararg_buffer) + 12|0); + HEAP32[$vararg_ptr3>>2] = $151; + (_sqlite3_snprintf(64,$aBuffer,7224,$vararg_buffer)|0); + $152 = (_fts3StringAppend($res,$aBuffer,-1)|0); + HEAP32[$rc>>2] = $152; + continue; + } + $153 = HEAP32[$rc>>2]|0; + $154 = ($153|0)==(101); + if (!($154)) { + continue; + } + $155 = HEAP32[$pTab>>2]|0; + $156 = (($155) + 40|0); + $157 = HEAP32[$156>>2]|0; + $158 = ($157|0)==(0|0); + if (!($158)) { + continue; + } + HEAP32[$rc>>2] = 267; + } + $159 = HEAP32[$rc>>2]|0; + $160 = ($159|0)==(101); + if ($160) { + HEAP32[$rc>>2] = 0; + } + $161 = HEAP32[$pMod>>2]|0; + $162 = (($161) + 16|0); + $163 = HEAP32[$162>>2]|0; + $164 = HEAP32[$pC>>2]|0; + (FUNCTION_TABLE_ii[$163 & 63]($164)|0); + $165 = HEAP32[$rc>>2]|0; + $166 = ($165|0)!=(0); + if ($166) { + break L5; + } + } + $167 = HEAP32[$iCol>>2]|0; + $168 = (($167) + 1)|0; + HEAP32[$iCol>>2] = $168; + } + HEAP32[$rc>>2] = 7; + } + } while(0); + $169 = (($sCtx) + 24|0); + $170 = HEAP32[$169>>2]|0; + _sqlite3_free($170); + $171 = HEAP32[$pTab>>2]|0; + _sqlite3Fts3SegmentsClose($171); + $172 = HEAP32[$rc>>2]|0; + $173 = ($172|0)!=(0); + $174 = HEAP32[$0>>2]|0; + if ($173) { + $175 = HEAP32[$rc>>2]|0; + _sqlite3_result_error_code($174,$175); + $176 = HEAP32[$res>>2]|0; + _sqlite3_free($176); + STACKTOP = sp;return; + } else { + $177 = HEAP32[$res>>2]|0; + $178 = (($res) + 4|0); + $179 = HEAP32[$178>>2]|0; + $180 = (($179) - 1)|0; + _sqlite3_result_text($174,$177,$180,13); + STACKTOP = sp;return; + } +} +function _fts3ExprTermOffsetInit($pExpr,$iPhrase,$ctx) { + $pExpr = $pExpr|0; + $iPhrase = $iPhrase|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $iPos = 0, $iTerm = 0, $nTerm = 0, $p = 0, $pList = 0, $pT = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $p = sp + 24|0; + $nTerm = sp + 20|0; + $iTerm = sp + 16|0; + $pList = sp + 8|0; + $iPos = sp + 4|0; + $rc = sp; + $pT = sp + 12|0; + HEAP32[$0>>2] = $pExpr; + HEAP32[$1>>2] = $iPhrase; + HEAP32[$2>>2] = $ctx; + $3 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $3; + HEAP32[$iPos>>2] = 0; + $4 = HEAP32[$p>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$p>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = (_sqlite3Fts3EvalPhrasePoslist($5,$6,$9,$pList)|0); + HEAP32[$rc>>2] = $10; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 20|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 48|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$nTerm>>2] = $15; + $16 = HEAP32[$pList>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + _fts3GetDeltaPosition($pList,$iPos); + } + HEAP32[$iTerm>>2] = 0; + while(1) { + $18 = HEAP32[$iTerm>>2]|0; + $19 = HEAP32[$nTerm>>2]|0; + $20 = ($18|0)<($19|0); + if (!($20)) { + break; + } + $21 = HEAP32[$p>>2]|0; + $22 = (($21) + 8|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + 1)|0; + HEAP32[$22>>2] = $24; + $25 = HEAP32[$p>>2]|0; + $26 = (($25) + 24|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + (($23*12)|0)|0); + HEAP32[$pT>>2] = $28; + $29 = HEAP32[$nTerm>>2]|0; + $30 = HEAP32[$iTerm>>2]|0; + $31 = (($29) - ($30))|0; + $32 = (($31) - 1)|0; + $33 = HEAP32[$pT>>2]|0; + $34 = (($33) + 8|0); + HEAP32[$34>>2] = $32; + $35 = HEAP32[$pList>>2]|0; + $36 = HEAP32[$pT>>2]|0; + HEAP32[$36>>2] = $35; + $37 = HEAP32[$iPos>>2]|0; + $38 = HEAP32[$pT>>2]|0; + $39 = (($38) + 4|0); + HEAP32[$39>>2] = $37; + $40 = HEAP32[$iTerm>>2]|0; + $41 = (($40) + 1)|0; + HEAP32[$iTerm>>2] = $41; + } + $42 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($42|0); +} +function _fts3GetDeltaPosition($pp,$piPos) { + $pp = $pp|0; + $piPos = $piPos|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $iVal = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $iVal = sp + 4|0; + HEAP32[$0>>2] = $pp; + HEAP32[$1>>2] = $piPos; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = $5 & 128; + $7 = ($6|0)!=(0); + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$8>>2]|0; + if ($7) { + $10 = (_sqlite3Fts3GetVarint32($9,$iVal)|0); + $16 = $10; + } else { + $11 = HEAP8[$9>>0]|0; + $12 = $11&255; + HEAP32[$iVal>>2] = $12; + $16 = 1; + } + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + ($16)|0); + HEAP32[$13>>2] = $15; + $17 = HEAP32[$iVal>>2]|0; + $18 = (($17) - 2)|0; + $19 = HEAP32[$1>>2]|0; + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + ($18))|0; + HEAP32[$19>>2] = $21; + STACKTOP = sp;return; +} +function _fts3StringAppend($pStr,$zAppend,$nAppend) { + $pStr = $pStr|0; + $zAppend = $zAppend|0; + $nAppend = $nAppend|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nAlloc = 0, $zNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $nAlloc = sp + 12|0; + $zNew = sp + 16|0; + HEAP32[$1>>2] = $pStr; + HEAP32[$2>>2] = $zAppend; + HEAP32[$3>>2] = $nAppend; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)<(0); + if ($5) { + $6 = HEAP32[$2>>2]|0; + $7 = (_strlen(($6|0))|0); + HEAP32[$3>>2] = $7; + } + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$3>>2]|0; + $12 = (($10) + ($11))|0; + $13 = (($12) + 1)|0; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 8|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($13|0)>=($16|0); + do { + if ($17) { + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 8|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$3>>2]|0; + $22 = (($20) + ($21))|0; + $23 = (($22) + 100)|0; + HEAP32[$nAlloc>>2] = $23; + $24 = HEAP32[$1>>2]|0; + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$nAlloc>>2]|0; + $27 = (_sqlite3_realloc($25,$26)|0); + HEAP32[$zNew>>2] = $27; + $28 = HEAP32[$zNew>>2]|0; + $29 = ($28|0)!=(0|0); + if ($29) { + $30 = HEAP32[$zNew>>2]|0; + $31 = HEAP32[$1>>2]|0; + HEAP32[$31>>2] = $30; + $32 = HEAP32[$nAlloc>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 8|0); + HEAP32[$34>>2] = $32; + break; + } + HEAP32[$0>>2] = 7; + $54 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($54|0); + } + } while(0); + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 4|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$1>>2]|0; + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + ($37)|0); + $41 = HEAP32[$2>>2]|0; + $42 = HEAP32[$3>>2]|0; + _memcpy(($40|0),($41|0),($42|0))|0; + $43 = HEAP32[$3>>2]|0; + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 4|0); + $46 = HEAP32[$45>>2]|0; + $47 = (($46) + ($43))|0; + HEAP32[$45>>2] = $47; + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + 4|0); + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$1>>2]|0; + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + ($50)|0); + HEAP8[$53>>0] = 0; + HEAP32[$0>>2] = 0; + $54 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($54|0); +} +function _sqlite3Fts3Snippet($pCtx,$pCsr,$zStart,$zEnd,$zEllipsis,$iCol,$nToken) { + $pCtx = $pCtx|0; + $pCsr = $pCsr|0; + $zStart = $zStart|0; + $zEnd = $zEnd|0; + $zEllipsis = $zEllipsis|0; + $iCol = $iCol|0; + $nToken = $nToken|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aSnippet = 0, $i = 0, $iBestScore = 0, $iRead = 0, $iS = 0; + var $iSnip = 0, $mCovered = 0, $mSeen = 0, $nFToken = 0, $nSnippet = 0, $pFragment = 0, $pTab = 0, $rc = 0, $res = 0, $sF = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 224|0; + $0 = sp + 212|0; + $1 = sp + 208|0; + $2 = sp + 204|0; + $3 = sp + 200|0; + $4 = sp + 196|0; + $5 = sp + 192|0; + $6 = sp + 188|0; + $pTab = sp + 184|0; + $rc = sp + 180|0; + $i = sp + 176|0; + $res = sp + 164|0; + $nSnippet = sp + 160|0; + $aSnippet = sp + 8|0; + $nFToken = sp + 148|0; + $iSnip = sp + 144|0; + $mCovered = sp; + $mSeen = sp + 104|0; + $iBestScore = sp + 140|0; + $iRead = sp + 156|0; + $pFragment = sp + 136|0; + $sF = sp + 112|0; + $iS = sp + 152|0; + HEAP32[$0>>2] = $pCtx; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $zStart; + HEAP32[$3>>2] = $zEnd; + HEAP32[$4>>2] = $zEllipsis; + HEAP32[$5>>2] = $iCol; + HEAP32[$6>>2] = $nToken; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$pTab>>2] = $8; + HEAP32[$rc>>2] = 0; + ;HEAP32[$res+0>>2]=0|0;HEAP32[$res+4>>2]=0|0;HEAP32[$res+8>>2]=0|0; + HEAP32[$nSnippet>>2] = 0; + HEAP32[$nFToken>>2] = -1; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0|0); + if (!($12)) { + $13 = HEAP32[$0>>2]|0; + _sqlite3_result_text($13,1784,0,0); + STACKTOP = sp;return; + } + HEAP32[$nSnippet>>2] = 1; + L5: while(1) { + $14 = $mCovered; + $15 = $14; + HEAP32[$15>>2] = 0; + $16 = (($14) + 4)|0; + $17 = $16; + HEAP32[$17>>2] = 0; + $18 = $mSeen; + $19 = $18; + HEAP32[$19>>2] = 0; + $20 = (($18) + 4)|0; + $21 = $20; + HEAP32[$21>>2] = 0; + $22 = HEAP32[$6>>2]|0; + $23 = ($22|0)>=(0); + $24 = HEAP32[$6>>2]|0; + if ($23) { + $25 = HEAP32[$nSnippet>>2]|0; + $26 = (($24) + ($25))|0; + $27 = (($26) - 1)|0; + $28 = HEAP32[$nSnippet>>2]|0; + $29 = (($27|0) / ($28|0))&-1; + HEAP32[$nFToken>>2] = $29; + } else { + $30 = Math_imul(-1, $24)|0; + HEAP32[$nFToken>>2] = $30; + } + HEAP32[$iSnip>>2] = 0; + while(1) { + $31 = HEAP32[$iSnip>>2]|0; + $32 = HEAP32[$nSnippet>>2]|0; + $33 = ($31|0)<($32|0); + if (!($33)) { + break; + } + HEAP32[$iBestScore>>2] = -1; + $34 = HEAP32[$iSnip>>2]|0; + $35 = (($aSnippet) + (($34*24)|0)|0); + HEAP32[$pFragment>>2] = $35; + $36 = HEAP32[$pFragment>>2]|0; + ;HEAP32[$36+0>>2]=0|0;HEAP32[$36+4>>2]=0|0;HEAP32[$36+8>>2]=0|0;HEAP32[$36+12>>2]=0|0;HEAP32[$36+16>>2]=0|0;HEAP32[$36+20>>2]=0|0; + HEAP32[$iRead>>2] = 0; + while(1) { + $37 = HEAP32[$iRead>>2]|0; + $38 = HEAP32[$pTab>>2]|0; + $39 = (($38) + 24|0); + $40 = HEAP32[$39>>2]|0; + $41 = ($37|0)<($40|0); + if (!($41)) { + break; + } + ;HEAP32[$sF+0>>2]=0|0;HEAP32[$sF+4>>2]=0|0;HEAP32[$sF+8>>2]=0|0;HEAP32[$sF+12>>2]=0|0;HEAP32[$sF+16>>2]=0|0;HEAP32[$sF+20>>2]=0|0; + $42 = HEAP32[$5>>2]|0; + $43 = ($42|0)>=(0); + if ($43) { + $44 = HEAP32[$iRead>>2]|0; + $45 = HEAP32[$5>>2]|0; + $46 = ($44|0)!=($45|0); + if (!($46)) { + label = 13; + } + } else { + label = 13; + } + if ((label|0) == 13) { + label = 0; + $47 = HEAP32[$nFToken>>2]|0; + $48 = HEAP32[$1>>2]|0; + $49 = HEAP32[$iRead>>2]|0; + $50 = $mCovered; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (($50) + 4)|0; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + $56 = (_fts3BestSnippet($47,$48,$49,$52,$55,$mSeen,$sF,$iS)|0); + HEAP32[$rc>>2] = $56; + $57 = HEAP32[$rc>>2]|0; + $58 = ($57|0)!=(0); + if ($58) { + break L5; + } + $59 = HEAP32[$iS>>2]|0; + $60 = HEAP32[$iBestScore>>2]|0; + $61 = ($59|0)>($60|0); + if ($61) { + $62 = HEAP32[$pFragment>>2]|0; + ;HEAP32[$62+0>>2]=HEAP32[$sF+0>>2]|0;HEAP32[$62+4>>2]=HEAP32[$sF+4>>2]|0;HEAP32[$62+8>>2]=HEAP32[$sF+8>>2]|0;HEAP32[$62+12>>2]=HEAP32[$sF+12>>2]|0;HEAP32[$62+16>>2]=HEAP32[$sF+16>>2]|0;HEAP32[$62+20>>2]=HEAP32[$sF+20>>2]|0; + $63 = HEAP32[$iS>>2]|0; + HEAP32[$iBestScore>>2] = $63; + } + } + $64 = HEAP32[$iRead>>2]|0; + $65 = (($64) + 1)|0; + HEAP32[$iRead>>2] = $65; + } + $66 = HEAP32[$pFragment>>2]|0; + $67 = (($66) + 8|0); + $68 = $67; + $69 = $68; + $70 = HEAP32[$69>>2]|0; + $71 = (($68) + 4)|0; + $72 = $71; + $73 = HEAP32[$72>>2]|0; + $74 = $mCovered; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = (($74) + 4)|0; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = $76 | $70; + $81 = $79 | $73; + $82 = $mCovered; + $83 = $82; + HEAP32[$83>>2] = $80; + $84 = (($82) + 4)|0; + $85 = $84; + HEAP32[$85>>2] = $81; + $86 = HEAP32[$iSnip>>2]|0; + $87 = (($86) + 1)|0; + HEAP32[$iSnip>>2] = $87; + } + $88 = $mSeen; + $89 = $88; + $90 = HEAP32[$89>>2]|0; + $91 = (($88) + 4)|0; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $94 = $mCovered; + $95 = $94; + $96 = HEAP32[$95>>2]|0; + $97 = (($94) + 4)|0; + $98 = $97; + $99 = HEAP32[$98>>2]|0; + $100 = ($90|0)==($96|0); + $101 = ($93|0)==($99|0); + $102 = $100 & $101; + if ($102) { + label = 21; + break; + } + $103 = HEAP32[$nSnippet>>2]|0; + $104 = ($103|0)==(4); + if ($104) { + label = 21; + break; + } + $105 = HEAP32[$nSnippet>>2]|0; + $106 = (($105) + 1)|0; + HEAP32[$nSnippet>>2] = $106; + } + L28: do { + if ((label|0) == 21) { + HEAP32[$i>>2] = 0; + while(1) { + $107 = HEAP32[$i>>2]|0; + $108 = HEAP32[$nSnippet>>2]|0; + $109 = ($107|0)<($108|0); + if (!($109)) { + break L28; + } + $110 = HEAP32[$rc>>2]|0; + $111 = ($110|0)==(0); + if (!($111)) { + break L28; + } + $112 = HEAP32[$1>>2]|0; + $113 = HEAP32[$i>>2]|0; + $114 = (($aSnippet) + (($113*24)|0)|0); + $115 = HEAP32[$i>>2]|0; + $116 = HEAP32[$i>>2]|0; + $117 = HEAP32[$nSnippet>>2]|0; + $118 = (($117) - 1)|0; + $119 = ($116|0)==($118|0); + $120 = $119&1; + $121 = HEAP32[$nFToken>>2]|0; + $122 = HEAP32[$2>>2]|0; + $123 = HEAP32[$3>>2]|0; + $124 = HEAP32[$4>>2]|0; + $125 = (_fts3SnippetText($112,$114,$115,$120,$121,$122,$123,$124,$res)|0); + HEAP32[$rc>>2] = $125; + $126 = HEAP32[$i>>2]|0; + $127 = (($126) + 1)|0; + HEAP32[$i>>2] = $127; + } + } + } while(0); + $128 = HEAP32[$pTab>>2]|0; + _sqlite3Fts3SegmentsClose($128); + $129 = HEAP32[$rc>>2]|0; + $130 = ($129|0)!=(0); + $131 = HEAP32[$0>>2]|0; + if ($130) { + $132 = HEAP32[$rc>>2]|0; + _sqlite3_result_error_code($131,$132); + $133 = HEAP32[$res>>2]|0; + _sqlite3_free($133); + STACKTOP = sp;return; + } else { + $134 = HEAP32[$res>>2]|0; + _sqlite3_result_text($131,$134,-1,13); + STACKTOP = sp;return; + } +} +function _fts3BestSnippet($nSnippet,$pCsr,$iCol,$0,$1,$pmSeen,$pFragment,$piScore) { + $nSnippet = $nSnippet|0; + $pCsr = $pCsr|0; + $iCol = $iCol|0; + $0 = $0|0; + $1 = $1|0; + $pmSeen = $pmSeen|0; + $pFragment = $pFragment|0; + $piScore = $piScore|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $12 = 0, $13 = 0; + var $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iBestScore = 0, $iPos = 0, $iScore = 0, $mCover = 0, $mHighlight = 0; + var $nByte = 0, $nList = 0, $rc = 0, $sIter = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $2 = sp + 100|0; + $3 = sp + 96|0; + $4 = sp + 92|0; + $5 = sp + 88|0; + $6 = sp; + $7 = sp + 84|0; + $8 = sp + 80|0; + $9 = sp + 76|0; + $rc = sp + 72|0; + $nList = sp + 68|0; + $sIter = sp + 40|0; + $nByte = sp + 36|0; + $iBestScore = sp + 32|0; + $i = sp + 28|0; + $iPos = sp + 24|0; + $iScore = sp + 64|0; + $mCover = sp + 16|0; + $mHighlight = sp + 8|0; + HEAP32[$3>>2] = $nSnippet; + HEAP32[$4>>2] = $pCsr; + HEAP32[$5>>2] = $iCol; + $10 = $6; + $11 = $10; + HEAP32[$11>>2] = $0; + $12 = (($10) + 4)|0; + $13 = $12; + HEAP32[$13>>2] = $1; + HEAP32[$7>>2] = $pmSeen; + HEAP32[$8>>2] = $pFragment; + HEAP32[$9>>2] = $piScore; + HEAP32[$iBestScore>>2] = -1; + ;HEAP32[$sIter+0>>2]=0|0;HEAP32[$sIter+4>>2]=0|0;HEAP32[$sIter+8>>2]=0|0;HEAP32[$sIter+12>>2]=0|0;HEAP32[$sIter+16>>2]=0|0;HEAP32[$sIter+20>>2]=0|0; + $14 = HEAP32[$4>>2]|0; + $15 = (_fts3ExprLoadDoclists($14,$nList,0)|0); + HEAP32[$rc>>2] = $15; + $16 = HEAP32[$rc>>2]|0; + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $18; + $115 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($115|0); + } + $19 = HEAP32[$nList>>2]|0; + $20 = ($19*24)|0; + HEAP32[$nByte>>2] = $20; + $21 = HEAP32[$nByte>>2]|0; + $22 = (_sqlite3_malloc($21)|0); + $23 = (($sIter) + 16|0); + HEAP32[$23>>2] = $22; + $24 = (($sIter) + 16|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)!=(0|0); + if (!($26)) { + HEAP32[$2>>2] = 7; + $115 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($115|0); + } + $27 = (($sIter) + 16|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$nByte>>2]|0; + _memset(($28|0),0,($29|0))|0; + $30 = HEAP32[$4>>2]|0; + HEAP32[$sIter>>2] = $30; + $31 = HEAP32[$5>>2]|0; + $32 = (($sIter) + 4|0); + HEAP32[$32>>2] = $31; + $33 = HEAP32[$3>>2]|0; + $34 = (($sIter) + 8|0); + HEAP32[$34>>2] = $33; + $35 = HEAP32[$nList>>2]|0; + $36 = (($sIter) + 12|0); + HEAP32[$36>>2] = $35; + $37 = (($sIter) + 20|0); + HEAP32[$37>>2] = -1; + $38 = HEAP32[$4>>2]|0; + $39 = (($38) + 12|0); + $40 = HEAP32[$39>>2]|0; + (_fts3ExprIterate($40,27,$sIter)|0); + HEAP32[$i>>2] = 0; + while(1) { + $41 = HEAP32[$i>>2]|0; + $42 = HEAP32[$nList>>2]|0; + $43 = ($41|0)<($42|0); + if (!($43)) { + break; + } + $44 = HEAP32[$i>>2]|0; + $45 = (($sIter) + 16|0); + $46 = HEAP32[$45>>2]|0; + $47 = (($46) + (($44*24)|0)|0); + $48 = (($47) + 12|0); + $49 = HEAP32[$48>>2]|0; + $50 = ($49|0)!=(0|0); + if ($50) { + $51 = HEAP32[$i>>2]|0; + $52 = (_bitshift64Shl(1,0,($51|0))|0); + $53 = tempRet0; + $54 = HEAP32[$7>>2]|0; + $55 = $54; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = (($55) + 4)|0; + $59 = $58; + $60 = HEAP32[$59>>2]|0; + $61 = $57 | $52; + $62 = $60 | $53; + $63 = $54; + $64 = $63; + HEAP32[$64>>2] = $61; + $65 = (($63) + 4)|0; + $66 = $65; + HEAP32[$66>>2] = $62; + } + $67 = HEAP32[$i>>2]|0; + $68 = (($67) + 1)|0; + HEAP32[$i>>2] = $68; + } + $69 = HEAP32[$5>>2]|0; + $70 = HEAP32[$8>>2]|0; + HEAP32[$70>>2] = $69; + while(1) { + $71 = (_fts3SnippetNextCandidate($sIter)|0); + $72 = ($71|0)!=(0); + $73 = $72 ^ 1; + if (!($73)) { + break; + } + $74 = $6; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = (($74) + 4)|0; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + _fts3SnippetDetails($sIter,$76,$79,$iPos,$iScore,$mCover,$mHighlight); + $80 = HEAP32[$iScore>>2]|0; + $81 = HEAP32[$iBestScore>>2]|0; + $82 = ($80|0)>($81|0); + if (!($82)) { + continue; + } + $83 = HEAP32[$iPos>>2]|0; + $84 = HEAP32[$8>>2]|0; + $85 = (($84) + 4|0); + HEAP32[$85>>2] = $83; + $86 = $mHighlight; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = (($86) + 4)|0; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + $92 = HEAP32[$8>>2]|0; + $93 = (($92) + 16|0); + $94 = $93; + $95 = $94; + HEAP32[$95>>2] = $88; + $96 = (($94) + 4)|0; + $97 = $96; + HEAP32[$97>>2] = $91; + $98 = $mCover; + $99 = $98; + $100 = HEAP32[$99>>2]|0; + $101 = (($98) + 4)|0; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = HEAP32[$8>>2]|0; + $105 = (($104) + 8|0); + $106 = $105; + $107 = $106; + HEAP32[$107>>2] = $100; + $108 = (($106) + 4)|0; + $109 = $108; + HEAP32[$109>>2] = $103; + $110 = HEAP32[$iScore>>2]|0; + HEAP32[$iBestScore>>2] = $110; + } + $111 = (($sIter) + 16|0); + $112 = HEAP32[$111>>2]|0; + _sqlite3_free($112); + $113 = HEAP32[$iBestScore>>2]|0; + $114 = HEAP32[$9>>2]|0; + HEAP32[$114>>2] = $113; + HEAP32[$2>>2] = 0; + $115 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($115|0); +} +function _fts3SnippetText($pCsr,$pFragment,$iFragment,$isLast,$nSnippet,$zOpen,$zClose,$zEllipsis,$pOut) { + $pCsr = $pCsr|0; + $pFragment = $pFragment|0; + $iFragment = $iFragment|0; + $isLast = $isLast|0; + $nSnippet = $nSnippet|0; + $zOpen = $zOpen|0; + $zClose = $zClose|0; + $zEllipsis = $zEllipsis|0; + $pOut = $pOut|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; + var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; + var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; + var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; + var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $DUMMY1 = 0, $ZDUMMY = 0, $hlmask = 0; + var $iBegin = 0, $iCol = 0, $iCurrent = 0, $iEnd = 0, $iFin = 0, $iPos = 0, $isHighlight = 0, $isShiftDone = 0, $n = 0, $nDoc = 0, $pC = 0, $pMod = 0, $pTab = 0, $rc = 0, $zDoc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $0 = sp + 112|0; + $1 = sp + 108|0; + $2 = sp + 104|0; + $3 = sp + 100|0; + $4 = sp + 96|0; + $5 = sp + 92|0; + $6 = sp + 88|0; + $7 = sp + 84|0; + $8 = sp + 80|0; + $9 = sp + 76|0; + $pTab = sp + 72|0; + $rc = sp + 68|0; + $zDoc = sp + 64|0; + $nDoc = sp + 60|0; + $iCurrent = sp + 56|0; + $iEnd = sp + 24|0; + $isShiftDone = sp + 12|0; + $iPos = sp + 8|0; + $hlmask = sp; + $iCol = sp + 16|0; + $pMod = sp + 20|0; + $pC = sp + 28|0; + $ZDUMMY = sp + 32|0; + $DUMMY1 = sp + 36|0; + $iBegin = sp + 40|0; + $iFin = sp + 44|0; + $isHighlight = sp + 48|0; + $n = sp + 52|0; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $pFragment; + HEAP32[$3>>2] = $iFragment; + HEAP32[$4>>2] = $isLast; + HEAP32[$5>>2] = $nSnippet; + HEAP32[$6>>2] = $zOpen; + HEAP32[$7>>2] = $zClose; + HEAP32[$8>>2] = $zEllipsis; + HEAP32[$9>>2] = $pOut; + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$10>>2]|0; + HEAP32[$pTab>>2] = $11; + HEAP32[$iCurrent>>2] = 0; + HEAP32[$iEnd>>2] = 0; + HEAP32[$isShiftDone>>2] = 0; + $12 = HEAP32[$2>>2]|0; + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$iPos>>2] = $14; + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 16|0); + $17 = $16; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (($17) + 4)|0; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = $hlmask; + $24 = $23; + HEAP32[$24>>2] = $19; + $25 = (($23) + 4)|0; + $26 = $25; + HEAP32[$26>>2] = $22; + $27 = HEAP32[$2>>2]|0; + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + 1)|0; + HEAP32[$iCol>>2] = $29; + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 8|0); + $32 = HEAP32[$31>>2]|0; + $33 = HEAP32[$iCol>>2]|0; + $34 = (_sqlite3_column_text($32,$33)|0); + HEAP32[$zDoc>>2] = $34; + $35 = HEAP32[$zDoc>>2]|0; + $36 = ($35|0)==(0|0); + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 8|0); + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$iCol>>2]|0; + if ($36) { + $41 = (_sqlite3_column_type($39,$40)|0); + $42 = ($41|0)!=(5); + if ($42) { + HEAP32[$0>>2] = 7; + $176 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($176|0); + } else { + HEAP32[$0>>2] = 0; + $176 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($176|0); + } + } + $43 = (_sqlite3_column_bytes($39,$40)|0); + HEAP32[$nDoc>>2] = $43; + $44 = HEAP32[$pTab>>2]|0; + $45 = (($44) + 36|0); + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$46>>2]|0; + HEAP32[$pMod>>2] = $47; + $48 = HEAP32[$pTab>>2]|0; + $49 = (($48) + 36|0); + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$1>>2]|0; + $52 = (($51) + 16|0); + $53 = HEAP32[$52>>2]|0; + $54 = HEAP32[$zDoc>>2]|0; + $55 = HEAP32[$nDoc>>2]|0; + $56 = (_sqlite3Fts3OpenTokenizer($50,$53,$54,$55,$pC)|0); + HEAP32[$rc>>2] = $56; + $57 = HEAP32[$rc>>2]|0; + $58 = ($57|0)!=(0); + if ($58) { + $59 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $59; + $176 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($176|0); + } + while(1) { + $60 = HEAP32[$rc>>2]|0; + $61 = ($60|0)==(0); + if (!($61)) { + break; + } + HEAP32[$DUMMY1>>2] = -1; + HEAP32[$iBegin>>2] = 0; + HEAP32[$iFin>>2] = 0; + HEAP32[$isHighlight>>2] = 0; + $62 = HEAP32[$pMod>>2]|0; + $63 = (($62) + 20|0); + $64 = HEAP32[$63>>2]|0; + $65 = HEAP32[$pC>>2]|0; + $66 = (FUNCTION_TABLE_iiiiiii[$64 & 15]($65,$ZDUMMY,$DUMMY1,$iBegin,$iFin,$iCurrent)|0); + HEAP32[$rc>>2] = $66; + $67 = HEAP32[$rc>>2]|0; + $68 = ($67|0)!=(0); + if ($68) { + label = 9; + break; + } + $76 = HEAP32[$iCurrent>>2]|0; + $77 = HEAP32[$iPos>>2]|0; + $78 = ($76|0)<($77|0); + if ($78) { + continue; + } + $79 = HEAP32[$isShiftDone>>2]|0; + $80 = ($79|0)!=(0); + if (!($80)) { + $81 = HEAP32[$nDoc>>2]|0; + $82 = HEAP32[$iBegin>>2]|0; + $83 = (($81) - ($82))|0; + HEAP32[$n>>2] = $83; + $84 = HEAP32[$pTab>>2]|0; + $85 = HEAP32[$1>>2]|0; + $86 = (($85) + 16|0); + $87 = HEAP32[$86>>2]|0; + $88 = HEAP32[$5>>2]|0; + $89 = HEAP32[$iBegin>>2]|0; + $90 = HEAP32[$zDoc>>2]|0; + $91 = (($90) + ($89)|0); + $92 = HEAP32[$n>>2]|0; + $93 = (_fts3SnippetShift($84,$87,$88,$91,$92,$iPos,$hlmask)|0); + HEAP32[$rc>>2] = $93; + HEAP32[$isShiftDone>>2] = 1; + $94 = HEAP32[$rc>>2]|0; + $95 = ($94|0)==(0); + do { + if ($95) { + $96 = HEAP32[$iPos>>2]|0; + $97 = ($96|0)>(0); + if (!($97)) { + $98 = HEAP32[$3>>2]|0; + $99 = ($98|0)>(0); + if (!($99)) { + break; + } + } + $100 = HEAP32[$9>>2]|0; + $101 = HEAP32[$8>>2]|0; + $102 = (_fts3StringAppend($100,$101,-1)|0); + HEAP32[$rc>>2] = $102; + } + } while(0); + $103 = HEAP32[$rc>>2]|0; + $104 = ($103|0)!=(0); + if ($104) { + continue; + } + $105 = HEAP32[$iCurrent>>2]|0; + $106 = HEAP32[$iPos>>2]|0; + $107 = ($105|0)<($106|0); + if ($107) { + continue; + } + } + $108 = HEAP32[$iCurrent>>2]|0; + $109 = HEAP32[$iPos>>2]|0; + $110 = HEAP32[$5>>2]|0; + $111 = (($109) + ($110))|0; + $112 = ($108|0)>=($111|0); + if ($112) { + label = 20; + break; + } + $118 = $hlmask; + $119 = $118; + $120 = HEAP32[$119>>2]|0; + $121 = (($118) + 4)|0; + $122 = $121; + $123 = HEAP32[$122>>2]|0; + $124 = HEAP32[$iCurrent>>2]|0; + $125 = HEAP32[$iPos>>2]|0; + $126 = (($124) - ($125))|0; + $127 = (_bitshift64Shl(1,0,($126|0))|0); + $128 = tempRet0; + $129 = $120 & $127; + $130 = $123 & $128; + $131 = ($129|0)!=(0); + $132 = ($130|0)!=(0); + $133 = $131 | $132; + $134 = $133&1; + HEAP32[$isHighlight>>2] = $134; + $135 = HEAP32[$iCurrent>>2]|0; + $136 = HEAP32[$iPos>>2]|0; + $137 = ($135|0)>($136|0); + if ($137) { + $138 = HEAP32[$9>>2]|0; + $139 = HEAP32[$iEnd>>2]|0; + $140 = HEAP32[$zDoc>>2]|0; + $141 = (($140) + ($139)|0); + $142 = HEAP32[$iBegin>>2]|0; + $143 = HEAP32[$iEnd>>2]|0; + $144 = (($142) - ($143))|0; + $145 = (_fts3StringAppend($138,$141,$144)|0); + HEAP32[$rc>>2] = $145; + } + $146 = HEAP32[$rc>>2]|0; + $147 = ($146|0)==(0); + if ($147) { + $148 = HEAP32[$isHighlight>>2]|0; + $149 = ($148|0)!=(0); + if ($149) { + $150 = HEAP32[$9>>2]|0; + $151 = HEAP32[$6>>2]|0; + $152 = (_fts3StringAppend($150,$151,-1)|0); + HEAP32[$rc>>2] = $152; + } + } + $153 = HEAP32[$rc>>2]|0; + $154 = ($153|0)==(0); + if ($154) { + $155 = HEAP32[$9>>2]|0; + $156 = HEAP32[$iBegin>>2]|0; + $157 = HEAP32[$zDoc>>2]|0; + $158 = (($157) + ($156)|0); + $159 = HEAP32[$iFin>>2]|0; + $160 = HEAP32[$iBegin>>2]|0; + $161 = (($159) - ($160))|0; + $162 = (_fts3StringAppend($155,$158,$161)|0); + HEAP32[$rc>>2] = $162; + } + $163 = HEAP32[$rc>>2]|0; + $164 = ($163|0)==(0); + if ($164) { + $165 = HEAP32[$isHighlight>>2]|0; + $166 = ($165|0)!=(0); + if ($166) { + $167 = HEAP32[$9>>2]|0; + $168 = HEAP32[$7>>2]|0; + $169 = (_fts3StringAppend($167,$168,-1)|0); + HEAP32[$rc>>2] = $169; + } + } + $170 = HEAP32[$iFin>>2]|0; + HEAP32[$iEnd>>2] = $170; + } + if ((label|0) == 9) { + $69 = HEAP32[$rc>>2]|0; + $70 = ($69|0)==(101); + if ($70) { + $71 = HEAP32[$9>>2]|0; + $72 = HEAP32[$iEnd>>2]|0; + $73 = HEAP32[$zDoc>>2]|0; + $74 = (($73) + ($72)|0); + $75 = (_fts3StringAppend($71,$74,-1)|0); + HEAP32[$rc>>2] = $75; + } + } + else if ((label|0) == 20) { + $113 = HEAP32[$4>>2]|0; + $114 = ($113|0)!=(0); + if ($114) { + $115 = HEAP32[$9>>2]|0; + $116 = HEAP32[$8>>2]|0; + $117 = (_fts3StringAppend($115,$116,-1)|0); + HEAP32[$rc>>2] = $117; + } + } + $171 = HEAP32[$pMod>>2]|0; + $172 = (($171) + 16|0); + $173 = HEAP32[$172>>2]|0; + $174 = HEAP32[$pC>>2]|0; + (FUNCTION_TABLE_ii[$173 & 63]($174)|0); + $175 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $175; + $176 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($176|0); +} +function _fts3SnippetShift($pTab,$iLangid,$nSnippet,$zDoc,$nDoc,$piPos,$pHlmask) { + $pTab = $pTab|0; + $iLangid = $iLangid|0; + $nSnippet = $nSnippet|0; + $zDoc = $zDoc|0; + $nDoc = $nDoc|0; + $piPos = $piPos|0; + $pHlmask = $pHlmask|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $14 = 0; + var $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; + var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; + var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; + var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $DUMMY1 = 0, $DUMMY2 = 0, $DUMMY3 = 0, $ZDUMMY = 0, $hlmask = 0, $iCurrent = 0, $nDesired = 0; + var $nLeft = 0, $nRight = 0, $nShift = 0, $or$cond = 0, $pC = 0, $pMod = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 84|0; + $1 = sp + 80|0; + $2 = sp + 76|0; + $3 = sp + 72|0; + $4 = sp + 68|0; + $5 = sp + 64|0; + $6 = sp + 60|0; + $7 = sp + 56|0; + $hlmask = sp; + $nLeft = sp + 52|0; + $nRight = sp + 12|0; + $nDesired = sp + 20|0; + $nShift = sp + 8|0; + $iCurrent = sp + 16|0; + $rc = sp + 24|0; + $pMod = sp + 28|0; + $pC = sp + 32|0; + $ZDUMMY = sp + 36|0; + $DUMMY1 = sp + 40|0; + $DUMMY2 = sp + 44|0; + $DUMMY3 = sp + 48|0; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $iLangid; + HEAP32[$3>>2] = $nSnippet; + HEAP32[$4>>2] = $zDoc; + HEAP32[$5>>2] = $nDoc; + HEAP32[$6>>2] = $piPos; + HEAP32[$7>>2] = $pHlmask; + $8 = HEAP32[$7>>2]|0; + $9 = $8; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = (($9) + 4)|0; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = $hlmask; + $16 = $15; + HEAP32[$16>>2] = $11; + $17 = (($15) + 4)|0; + $18 = $17; + HEAP32[$18>>2] = $14; + $19 = $hlmask; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (($19) + 4)|0; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = ($21|0)!=(0); + $26 = ($24|0)!=(0); + $27 = $25 | $26; + do { + if ($27) { + HEAP32[$nLeft>>2] = 0; + while(1) { + $28 = $hlmask; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = (($28) + 4)|0; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$nLeft>>2]|0; + $35 = (_bitshift64Shl(1,0,($34|0))|0); + $36 = tempRet0; + $37 = $30 & $35; + $38 = $33 & $36; + $39 = ($37|0)!=(0); + $40 = ($38|0)!=(0); + $41 = $39 | $40; + $42 = $41 ^ 1; + if (!($42)) { + break; + } + $43 = HEAP32[$nLeft>>2]|0; + $44 = (($43) + 1)|0; + HEAP32[$nLeft>>2] = $44; + } + HEAP32[$nRight>>2] = 0; + while(1) { + $45 = $hlmask; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (($45) + 4)|0; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$3>>2]|0; + $52 = (($51) - 1)|0; + $53 = HEAP32[$nRight>>2]|0; + $54 = (($52) - ($53))|0; + $55 = (_bitshift64Shl(1,0,($54|0))|0); + $56 = tempRet0; + $57 = $47 & $55; + $58 = $50 & $56; + $59 = ($57|0)!=(0); + $60 = ($58|0)!=(0); + $61 = $59 | $60; + $62 = $61 ^ 1; + if (!($62)) { + break; + } + $63 = HEAP32[$nRight>>2]|0; + $64 = (($63) + 1)|0; + HEAP32[$nRight>>2] = $64; + } + $65 = HEAP32[$nLeft>>2]|0; + $66 = HEAP32[$nRight>>2]|0; + $67 = (($65) - ($66))|0; + $68 = (($67|0) / 2)&-1; + HEAP32[$nDesired>>2] = $68; + $69 = HEAP32[$nDesired>>2]|0; + $70 = ($69|0)>(0); + if ($70) { + HEAP32[$iCurrent>>2] = 0; + $71 = HEAP32[$1>>2]|0; + $72 = (($71) + 36|0); + $73 = HEAP32[$72>>2]|0; + $74 = HEAP32[$73>>2]|0; + HEAP32[$pMod>>2] = $74; + $75 = HEAP32[$1>>2]|0; + $76 = (($75) + 36|0); + $77 = HEAP32[$76>>2]|0; + $78 = HEAP32[$2>>2]|0; + $79 = HEAP32[$4>>2]|0; + $80 = HEAP32[$5>>2]|0; + $81 = (_sqlite3Fts3OpenTokenizer($77,$78,$79,$80,$pC)|0); + HEAP32[$rc>>2] = $81; + $82 = HEAP32[$rc>>2]|0; + $83 = ($82|0)!=(0); + if ($83) { + $84 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $84; + $132 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($132|0); + } + while(1) { + $85 = HEAP32[$rc>>2]|0; + $86 = ($85|0)==(0); + if (!($86)) { + break; + } + $87 = HEAP32[$iCurrent>>2]|0; + $88 = HEAP32[$3>>2]|0; + $89 = HEAP32[$nDesired>>2]|0; + $90 = (($88) + ($89))|0; + $91 = ($87|0)<($90|0); + if (!($91)) { + break; + } + HEAP32[$DUMMY1>>2] = 0; + HEAP32[$DUMMY2>>2] = 0; + HEAP32[$DUMMY3>>2] = 0; + $92 = HEAP32[$pMod>>2]|0; + $93 = (($92) + 20|0); + $94 = HEAP32[$93>>2]|0; + $95 = HEAP32[$pC>>2]|0; + $96 = (FUNCTION_TABLE_iiiiiii[$94 & 15]($95,$ZDUMMY,$DUMMY1,$DUMMY2,$DUMMY3,$iCurrent)|0); + HEAP32[$rc>>2] = $96; + } + $97 = HEAP32[$pMod>>2]|0; + $98 = (($97) + 16|0); + $99 = HEAP32[$98>>2]|0; + $100 = HEAP32[$pC>>2]|0; + (FUNCTION_TABLE_ii[$99 & 63]($100)|0); + $101 = HEAP32[$rc>>2]|0; + $102 = ($101|0)!=(0); + $103 = HEAP32[$rc>>2]|0; + $104 = ($103|0)!=(101); + $or$cond = $102 & $104; + $105 = HEAP32[$rc>>2]|0; + if ($or$cond) { + HEAP32[$0>>2] = $105; + $132 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($132|0); + } else { + $106 = ($105|0)==(101); + $107 = $106&1; + $108 = HEAP32[$iCurrent>>2]|0; + $109 = (($107) + ($108))|0; + $110 = HEAP32[$3>>2]|0; + $111 = (($109) - ($110))|0; + HEAP32[$nShift>>2] = $111; + $112 = HEAP32[$nShift>>2]|0; + $113 = ($112|0)>(0); + if (!($113)) { + break; + } + $114 = HEAP32[$nShift>>2]|0; + $115 = HEAP32[$6>>2]|0; + $116 = HEAP32[$115>>2]|0; + $117 = (($116) + ($114))|0; + HEAP32[$115>>2] = $117; + $118 = $hlmask; + $119 = $118; + $120 = HEAP32[$119>>2]|0; + $121 = (($118) + 4)|0; + $122 = $121; + $123 = HEAP32[$122>>2]|0; + $124 = HEAP32[$nShift>>2]|0; + $125 = (_bitshift64Lshr(($120|0),($123|0),($124|0))|0); + $126 = tempRet0; + $127 = HEAP32[$7>>2]|0; + $128 = $127; + $129 = $128; + HEAP32[$129>>2] = $125; + $130 = (($128) + 4)|0; + $131 = $130; + HEAP32[$131>>2] = $126; + break; + } + } + } + } while(0); + HEAP32[$0>>2] = 0; + $132 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($132|0); +} +function _fts3SnippetFindPositions($pExpr,$iPhrase,$ctx) { + $pExpr = $pExpr|0; + $iPhrase = $iPhrase|0; + $ctx = $ctx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $iFirst = 0, $p = 0, $pCsr = 0, $pPhrase = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + $pPhrase = sp + 12|0; + $pCsr = sp + 16|0; + $rc = sp + 20|0; + $iFirst = sp + 24|0; + HEAP32[$0>>2] = $pExpr; + HEAP32[$1>>2] = $iPhrase; + HEAP32[$2>>2] = $ctx; + $3 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $3; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$p>>2]|0; + $6 = (($5) + 16|0); + $7 = HEAP32[$6>>2]|0; + $8 = (($7) + (($4*24)|0)|0); + HEAP32[$pPhrase>>2] = $8; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 20|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + 48|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$pPhrase>>2]|0; + HEAP32[$14>>2] = $13; + $15 = HEAP32[$p>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$0>>2]|0; + $18 = HEAP32[$p>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3Fts3EvalPhrasePoslist($16,$17,$20,$pCsr)|0); + HEAP32[$rc>>2] = $21; + $22 = HEAP32[$pCsr>>2]|0; + $23 = ($22|0)!=(0|0); + if (!($23)) { + $39 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($39|0); + } + HEAP32[$iFirst>>2] = 0; + $24 = HEAP32[$pCsr>>2]|0; + $25 = HEAP32[$pPhrase>>2]|0; + $26 = (($25) + 4|0); + HEAP32[$26>>2] = $24; + _fts3GetDeltaPosition($pCsr,$iFirst); + $27 = HEAP32[$pCsr>>2]|0; + $28 = HEAP32[$pPhrase>>2]|0; + $29 = (($28) + 12|0); + HEAP32[$29>>2] = $27; + $30 = HEAP32[$pCsr>>2]|0; + $31 = HEAP32[$pPhrase>>2]|0; + $32 = (($31) + 20|0); + HEAP32[$32>>2] = $30; + $33 = HEAP32[$iFirst>>2]|0; + $34 = HEAP32[$pPhrase>>2]|0; + $35 = (($34) + 8|0); + HEAP32[$35>>2] = $33; + $36 = HEAP32[$iFirst>>2]|0; + $37 = HEAP32[$pPhrase>>2]|0; + $38 = (($37) + 16|0); + HEAP32[$38>>2] = $36; + $39 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($39|0); +} +function _fts3SnippetNextCandidate($pIter) { + $pIter = $pIter|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $9 = 0, $i = 0, $iEnd = 0, $iStart = 0, $pPhrase = 0, $pPhrase1 = 0, $pPhrase2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $i = sp + 4|0; + $pPhrase = sp + 8|0; + $iStart = sp + 12|0; + $iEnd = sp + 16|0; + $pPhrase1 = sp + 20|0; + $pPhrase2 = sp + 24|0; + HEAP32[$1>>2] = $pIter; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 20|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)<(0); + L1: do { + if ($5) { + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 20|0); + HEAP32[$7>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($8|0)<($11|0); + if (!($12)) { + break L1; + } + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 16|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + (($13*24)|0)|0); + HEAP32[$pPhrase>>2] = $17; + $18 = HEAP32[$pPhrase>>2]|0; + $19 = (($18) + 12|0); + $20 = HEAP32[$pPhrase>>2]|0; + $21 = (($20) + 8|0); + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 8|0); + $24 = HEAP32[$23>>2]|0; + _fts3SnippetAdvance($19,$21,$24); + $25 = HEAP32[$i>>2]|0; + $26 = (($25) + 1)|0; + HEAP32[$i>>2] = $26; + } + } else { + HEAP32[$iEnd>>2] = 2147483647; + HEAP32[$i>>2] = 0; + while(1) { + $27 = HEAP32[$i>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 12|0); + $30 = HEAP32[$29>>2]|0; + $31 = ($27|0)<($30|0); + if (!($31)) { + break; + } + $32 = HEAP32[$i>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 16|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + (($32*24)|0)|0); + HEAP32[$pPhrase1>>2] = $36; + $37 = HEAP32[$pPhrase1>>2]|0; + $38 = (($37) + 12|0); + $39 = HEAP32[$38>>2]|0; + $40 = ($39|0)!=(0|0); + if ($40) { + $41 = HEAP32[$pPhrase1>>2]|0; + $42 = (($41) + 8|0); + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$iEnd>>2]|0; + $45 = ($43|0)<($44|0); + if ($45) { + $46 = HEAP32[$pPhrase1>>2]|0; + $47 = (($46) + 8|0); + $48 = HEAP32[$47>>2]|0; + HEAP32[$iEnd>>2] = $48; + } + } + $49 = HEAP32[$i>>2]|0; + $50 = (($49) + 1)|0; + HEAP32[$i>>2] = $50; + } + $51 = HEAP32[$iEnd>>2]|0; + $52 = ($51|0)==(2147483647); + if ($52) { + HEAP32[$0>>2] = 1; + $84 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($84|0); + } + $53 = HEAP32[$iEnd>>2]|0; + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 8|0); + $56 = HEAP32[$55>>2]|0; + $57 = (($53) - ($56))|0; + $58 = (($57) + 1)|0; + HEAP32[$iStart>>2] = $58; + $59 = HEAP32[$1>>2]|0; + $60 = (($59) + 20|0); + HEAP32[$60>>2] = $58; + HEAP32[$i>>2] = 0; + while(1) { + $61 = HEAP32[$i>>2]|0; + $62 = HEAP32[$1>>2]|0; + $63 = (($62) + 12|0); + $64 = HEAP32[$63>>2]|0; + $65 = ($61|0)<($64|0); + if (!($65)) { + break L1; + } + $66 = HEAP32[$i>>2]|0; + $67 = HEAP32[$1>>2]|0; + $68 = (($67) + 16|0); + $69 = HEAP32[$68>>2]|0; + $70 = (($69) + (($66*24)|0)|0); + HEAP32[$pPhrase2>>2] = $70; + $71 = HEAP32[$pPhrase2>>2]|0; + $72 = (($71) + 12|0); + $73 = HEAP32[$pPhrase2>>2]|0; + $74 = (($73) + 8|0); + $75 = HEAP32[$iEnd>>2]|0; + $76 = (($75) + 1)|0; + _fts3SnippetAdvance($72,$74,$76); + $77 = HEAP32[$pPhrase2>>2]|0; + $78 = (($77) + 20|0); + $79 = HEAP32[$pPhrase2>>2]|0; + $80 = (($79) + 16|0); + $81 = HEAP32[$iStart>>2]|0; + _fts3SnippetAdvance($78,$80,$81); + $82 = HEAP32[$i>>2]|0; + $83 = (($82) + 1)|0; + HEAP32[$i>>2] = $83; + } + } + } while(0); + HEAP32[$0>>2] = 0; + $84 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($84|0); +} +function _fts3SnippetDetails($pIter,$0,$1,$piToken,$piScore,$pmCover,$pmHighlight) { + $pIter = $pIter|0; + $0 = $0|0; + $1 = $1|0; + $piToken = $piToken|0; + $piScore = $piScore|0; + $pmCover = $pmCover|0; + $pmHighlight = $pmHighlight|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iCsr = 0, $iScore = 0, $iStart = 0, $j = 0, $mCover = 0, $mHighlight = 0, $mPhrase = 0, $mPos = 0, $pCsr = 0; + var $pPhrase = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $2 = sp + 84|0; + $3 = sp + 32|0; + $4 = sp + 80|0; + $5 = sp + 76|0; + $6 = sp + 72|0; + $7 = sp + 68|0; + $iStart = sp + 64|0; + $iScore = sp + 60|0; + $i = sp + 48|0; + $mCover = sp + 8|0; + $mHighlight = sp; + $pPhrase = sp + 40|0; + $pCsr = sp + 52|0; + $iCsr = sp + 44|0; + $j = sp + 56|0; + $mPhrase = sp + 24|0; + $mPos = sp + 16|0; + HEAP32[$2>>2] = $pIter; + $8 = $3; + $9 = $8; + HEAP32[$9>>2] = $0; + $10 = (($8) + 4)|0; + $11 = $10; + HEAP32[$11>>2] = $1; + HEAP32[$4>>2] = $piToken; + HEAP32[$5>>2] = $piScore; + HEAP32[$6>>2] = $pmCover; + HEAP32[$7>>2] = $pmHighlight; + $12 = HEAP32[$2>>2]|0; + $13 = (($12) + 20|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$iStart>>2] = $14; + HEAP32[$iScore>>2] = 0; + $15 = $mCover; + $16 = $15; + HEAP32[$16>>2] = 0; + $17 = (($15) + 4)|0; + $18 = $17; + HEAP32[$18>>2] = 0; + $19 = $mHighlight; + $20 = $19; + HEAP32[$20>>2] = 0; + $21 = (($19) + 4)|0; + $22 = $21; + HEAP32[$22>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $23 = HEAP32[$i>>2]|0; + $24 = HEAP32[$2>>2]|0; + $25 = (($24) + 12|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($23|0)<($26|0); + if (!($27)) { + break; + } + $28 = HEAP32[$i>>2]|0; + $29 = HEAP32[$2>>2]|0; + $30 = (($29) + 16|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + (($28*24)|0)|0); + HEAP32[$pPhrase>>2] = $32; + $33 = HEAP32[$pPhrase>>2]|0; + $34 = (($33) + 20|0); + $35 = HEAP32[$34>>2]|0; + $36 = ($35|0)!=(0|0); + L4: do { + if ($36) { + $37 = HEAP32[$pPhrase>>2]|0; + $38 = (($37) + 20|0); + $39 = HEAP32[$38>>2]|0; + HEAP32[$pCsr>>2] = $39; + $40 = HEAP32[$pPhrase>>2]|0; + $41 = (($40) + 16|0); + $42 = HEAP32[$41>>2]|0; + HEAP32[$iCsr>>2] = $42; + while(1) { + $43 = HEAP32[$iCsr>>2]|0; + $44 = HEAP32[$iStart>>2]|0; + $45 = HEAP32[$2>>2]|0; + $46 = (($45) + 8|0); + $47 = HEAP32[$46>>2]|0; + $48 = (($44) + ($47))|0; + $49 = ($43|0)<($48|0); + if (!($49)) { + break L4; + } + $50 = HEAP32[$i>>2]|0; + $51 = (_bitshift64Shl(1,0,($50|0))|0); + $52 = tempRet0; + $53 = $mPhrase; + $54 = $53; + HEAP32[$54>>2] = $51; + $55 = (($53) + 4)|0; + $56 = $55; + HEAP32[$56>>2] = $52; + $57 = HEAP32[$iCsr>>2]|0; + $58 = HEAP32[$iStart>>2]|0; + $59 = (($57) - ($58))|0; + $60 = (_bitshift64Shl(1,0,($59|0))|0); + $61 = tempRet0; + $62 = $mPos; + $63 = $62; + HEAP32[$63>>2] = $60; + $64 = (($62) + 4)|0; + $65 = $64; + HEAP32[$65>>2] = $61; + $66 = $mCover; + $67 = $66; + $68 = HEAP32[$67>>2]|0; + $69 = (($66) + 4)|0; + $70 = $69; + $71 = HEAP32[$70>>2]|0; + $72 = $3; + $73 = $72; + $74 = HEAP32[$73>>2]|0; + $75 = (($72) + 4)|0; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = $68 | $74; + $79 = $71 | $77; + $80 = $mPhrase; + $81 = $80; + $82 = HEAP32[$81>>2]|0; + $83 = (($80) + 4)|0; + $84 = $83; + $85 = HEAP32[$84>>2]|0; + $86 = $78 & $82; + $87 = $79 & $85; + $88 = ($86|0)!=(0); + $89 = ($87|0)!=(0); + $90 = $88 | $89; + $91 = HEAP32[$iScore>>2]|0; + if ($90) { + $92 = (($91) + 1)|0; + HEAP32[$iScore>>2] = $92; + } else { + $93 = (($91) + 1000)|0; + HEAP32[$iScore>>2] = $93; + } + $94 = $mPhrase; + $95 = $94; + $96 = HEAP32[$95>>2]|0; + $97 = (($94) + 4)|0; + $98 = $97; + $99 = HEAP32[$98>>2]|0; + $100 = $mCover; + $101 = $100; + $102 = HEAP32[$101>>2]|0; + $103 = (($100) + 4)|0; + $104 = $103; + $105 = HEAP32[$104>>2]|0; + $106 = $102 | $96; + $107 = $105 | $99; + $108 = $mCover; + $109 = $108; + HEAP32[$109>>2] = $106; + $110 = (($108) + 4)|0; + $111 = $110; + HEAP32[$111>>2] = $107; + HEAP32[$j>>2] = 0; + while(1) { + $112 = HEAP32[$j>>2]|0; + $113 = HEAP32[$pPhrase>>2]|0; + $114 = HEAP32[$113>>2]|0; + $115 = ($112|0)<($114|0); + if (!($115)) { + break; + } + $116 = $mPos; + $117 = $116; + $118 = HEAP32[$117>>2]|0; + $119 = (($116) + 4)|0; + $120 = $119; + $121 = HEAP32[$120>>2]|0; + $122 = HEAP32[$j>>2]|0; + $123 = (_bitshift64Lshr(($118|0),($121|0),($122|0))|0); + $124 = tempRet0; + $125 = $mHighlight; + $126 = $125; + $127 = HEAP32[$126>>2]|0; + $128 = (($125) + 4)|0; + $129 = $128; + $130 = HEAP32[$129>>2]|0; + $131 = $127 | $123; + $132 = $130 | $124; + $133 = $mHighlight; + $134 = $133; + HEAP32[$134>>2] = $131; + $135 = (($133) + 4)|0; + $136 = $135; + HEAP32[$136>>2] = $132; + $137 = HEAP32[$j>>2]|0; + $138 = (($137) + 1)|0; + HEAP32[$j>>2] = $138; + } + $139 = HEAP32[$pCsr>>2]|0; + $140 = HEAP8[$139>>0]|0; + $141 = $140 << 24 >> 24; + $142 = $141 & 254; + $143 = (0)==($142|0); + if ($143) { + break L4; + } + _fts3GetDeltaPosition($pCsr,$iCsr); + } + } + } while(0); + $144 = HEAP32[$i>>2]|0; + $145 = (($144) + 1)|0; + HEAP32[$i>>2] = $145; + } + $146 = HEAP32[$iStart>>2]|0; + $147 = HEAP32[$4>>2]|0; + HEAP32[$147>>2] = $146; + $148 = HEAP32[$iScore>>2]|0; + $149 = HEAP32[$5>>2]|0; + HEAP32[$149>>2] = $148; + $150 = $mCover; + $151 = $150; + $152 = HEAP32[$151>>2]|0; + $153 = (($150) + 4)|0; + $154 = $153; + $155 = HEAP32[$154>>2]|0; + $156 = HEAP32[$6>>2]|0; + $157 = $156; + $158 = $157; + HEAP32[$158>>2] = $152; + $159 = (($157) + 4)|0; + $160 = $159; + HEAP32[$160>>2] = $155; + $161 = $mHighlight; + $162 = $161; + $163 = HEAP32[$162>>2]|0; + $164 = (($161) + 4)|0; + $165 = $164; + $166 = HEAP32[$165>>2]|0; + $167 = HEAP32[$7>>2]|0; + $168 = $167; + $169 = $168; + HEAP32[$169>>2] = $163; + $170 = (($168) + 4)|0; + $171 = $170; + HEAP32[$171>>2] = $166; + STACKTOP = sp;return; +} +function _fts3SnippetAdvance($ppIter,$piIter,$iNext) { + $ppIter = $ppIter|0; + $piIter = $piIter|0; + $iNext = $iNext|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $iIter = 0, $pIter = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $pIter = sp + 8|0; + $iIter = sp + 12|0; + HEAP32[$0>>2] = $ppIter; + HEAP32[$1>>2] = $piIter; + HEAP32[$2>>2] = $iNext; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$pIter>>2] = $4; + $5 = HEAP32[$pIter>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$iIter>>2] = $8; + while(1) { + $9 = HEAP32[$iIter>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = ($9|0)<($10|0); + if (!($11)) { + break; + } + $12 = HEAP32[$pIter>>2]|0; + $13 = HEAP8[$12>>0]|0; + $14 = $13 << 24 >> 24; + $15 = $14 & 254; + $16 = (0)==($15|0); + if ($16) { + label = 5; + break; + } + _fts3GetDeltaPosition($pIter,$iIter); + } + if ((label|0) == 5) { + HEAP32[$iIter>>2] = -1; + HEAP32[$pIter>>2] = 0; + } + $17 = HEAP32[$iIter>>2]|0; + $18 = HEAP32[$1>>2]|0; + HEAP32[$18>>2] = $17; + $19 = HEAP32[$pIter>>2]|0; + $20 = HEAP32[$0>>2]|0; + HEAP32[$20>>2] = $19; + STACKTOP = sp;return; +} +function _sqlite3Fts3MaxLevel($p,$pnMax) { + $p = $p|0; + $pnMax = $pnMax|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mxLevel = 0, $pStmt = 0, $rc = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $rc = sp + 4|0; + $mxLevel = sp + 8|0; + $pStmt = sp + 12|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pnMax; + HEAP32[$mxLevel>>2] = 0; + HEAP32[$pStmt>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (_fts3SqlStmt($2,36,$pStmt,0)|0); + HEAP32[$rc>>2] = $3; + $4 = HEAP32[$rc>>2]|0; + $5 = ($4|0)==(0); + if (!($5)) { + $13 = HEAP32[$mxLevel>>2]|0; + $14 = HEAP32[$1>>2]|0; + HEAP32[$14>>2] = $13; + $15 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($15|0); + } + $6 = HEAP32[$pStmt>>2]|0; + $7 = (_sqlite3_step($6)|0); + $8 = (100)==($7|0); + if ($8) { + $9 = HEAP32[$pStmt>>2]|0; + $10 = (_sqlite3_column_int($9,0)|0); + HEAP32[$mxLevel>>2] = $10; + } + $11 = HEAP32[$pStmt>>2]|0; + $12 = (_sqlite3_reset($11)|0); + HEAP32[$rc>>2] = $12; + $13 = HEAP32[$mxLevel>>2]|0; + $14 = HEAP32[$1>>2]|0; + HEAP32[$14>>2] = $13; + $15 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($15|0); +} +function _sqlite3Fts3Incrmerge($p,$nMerge,$nMin) { + $p = $p|0; + $nMerge = $nMerge|0; + $nMin = $nMin|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bDirtyHint = 0, $bIgnore = 0, $bUseHint = 0, $hint = 0, $iAbsLevel = 0, $iHintAbsLevel = 0, $iIdx = 0, $nAlloc = 0; + var $nHint = 0, $nHintSeg = 0, $nKey = 0, $nMod = 0, $nRem = 0, $nSeg = 0, $pCsr = 0, $pFilter = 0, $pFindLevel = 0, $pWriter = 0, $rc = 0, $zKey = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $0 = sp + 112|0; + $1 = sp + 108|0; + $2 = sp + 104|0; + $3 = sp + 100|0; + $rc = sp + 96|0; + $nRem = sp + 92|0; + $pCsr = sp + 88|0; + $pFilter = sp + 84|0; + $pWriter = sp + 80|0; + $nSeg = sp + 76|0; + $iAbsLevel = sp; + $hint = sp + 64|0; + $bDirtyHint = sp + 60|0; + $nAlloc = sp + 32|0; + $nMod = sp + 8|0; + $pFindLevel = sp + 24|0; + $bUseHint = sp + 28|0; + $iIdx = sp + 36|0; + $nHint = sp + 40|0; + $iHintAbsLevel = sp + 16|0; + $nHintSeg = sp + 44|0; + $bIgnore = sp + 48|0; + $zKey = sp + 52|0; + $nKey = sp + 56|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $nMerge; + HEAP32[$3>>2] = $nMin; + $4 = HEAP32[$2>>2]|0; + HEAP32[$nRem>>2] = $4; + HEAP32[$nSeg>>2] = 0; + $5 = $iAbsLevel; + $6 = $5; + HEAP32[$6>>2] = 0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = 0; + ;HEAP32[$hint+0>>2]=0|0;HEAP32[$hint+4>>2]=0|0;HEAP32[$hint+8>>2]=0|0; + HEAP32[$bDirtyHint>>2] = 0; + HEAP32[$nAlloc>>2] = 640; + $9 = (_sqlite3_malloc(640)|0); + HEAP32[$pWriter>>2] = $9; + $10 = HEAP32[$pWriter>>2]|0; + $11 = ($10|0)!=(0|0); + if (!($11)) { + HEAP32[$0>>2] = 7; + $311 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($311|0); + } + $12 = HEAP32[$pWriter>>2]|0; + $13 = (($12) + 568|0); + HEAP32[$pFilter>>2] = $13; + $14 = HEAP32[$pFilter>>2]|0; + $15 = (($14) + 16|0); + HEAP32[$pCsr>>2] = $15; + $16 = HEAP32[$1>>2]|0; + $17 = (_fts3IncrmergeHintLoad($16,$hint)|0); + HEAP32[$rc>>2] = $17; + while(1) { + $18 = HEAP32[$rc>>2]|0; + $19 = ($18|0)==(0); + if (!($19)) { + break; + } + $20 = HEAP32[$nRem>>2]|0; + $21 = ($20|0)>(0); + if (!($21)) { + break; + } + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 248|0); + $24 = HEAP32[$23>>2]|0; + $25 = $24<<10; + $26 = ($25|0)<(0); + $27 = $26 << 31 >> 31; + $28 = $nMod; + $29 = $28; + HEAP32[$29>>2] = $25; + $30 = (($28) + 4)|0; + $31 = $30; + HEAP32[$31>>2] = $27; + HEAP32[$pFindLevel>>2] = 0; + HEAP32[$bUseHint>>2] = 0; + HEAP32[$iIdx>>2] = 0; + $32 = HEAP32[$1>>2]|0; + $33 = (_fts3SqlStmt($32,28,$pFindLevel,0)|0); + HEAP32[$rc>>2] = $33; + $34 = HEAP32[$pFindLevel>>2]|0; + $35 = HEAP32[$3>>2]|0; + (_sqlite3_bind_int($34,1,$35)|0); + $36 = HEAP32[$pFindLevel>>2]|0; + $37 = (_sqlite3_step($36)|0); + $38 = ($37|0)==(100); + if ($38) { + $39 = HEAP32[$pFindLevel>>2]|0; + $40 = (_sqlite3_column_int64($39,0)|0); + $41 = tempRet0; + $42 = $iAbsLevel; + $43 = $42; + HEAP32[$43>>2] = $40; + $44 = (($42) + 4)|0; + $45 = $44; + HEAP32[$45>>2] = $41; + $46 = HEAP32[$3>>2]|0; + HEAP32[$nSeg>>2] = $46; + } else { + HEAP32[$nSeg>>2] = -1; + } + $47 = HEAP32[$pFindLevel>>2]|0; + $48 = (_sqlite3_reset($47)|0); + HEAP32[$rc>>2] = $48; + $49 = HEAP32[$rc>>2]|0; + $50 = ($49|0)==(0); + do { + if ($50) { + $51 = (($hint) + 4|0); + $52 = HEAP32[$51>>2]|0; + $53 = ($52|0)!=(0); + if ($53) { + $54 = (($hint) + 4|0); + $55 = HEAP32[$54>>2]|0; + HEAP32[$nHint>>2] = $55; + $56 = $iHintAbsLevel; + $57 = $56; + HEAP32[$57>>2] = 0; + $58 = (($56) + 4)|0; + $59 = $58; + HEAP32[$59>>2] = 0; + HEAP32[$nHintSeg>>2] = 0; + $60 = (_fts3IncrmergeHintPop($hint,$iHintAbsLevel,$nHintSeg)|0); + HEAP32[$rc>>2] = $60; + $61 = HEAP32[$nSeg>>2]|0; + $62 = ($61|0)<(0); + if (!($62)) { + $63 = $iAbsLevel; + $64 = $63; + $65 = HEAP32[$64>>2]|0; + $66 = (($63) + 4)|0; + $67 = $66; + $68 = HEAP32[$67>>2]|0; + $69 = $nMod; + $70 = $69; + $71 = HEAP32[$70>>2]|0; + $72 = (($69) + 4)|0; + $73 = $72; + $74 = HEAP32[$73>>2]|0; + $75 = (___remdi3(($65|0),($68|0),($71|0),($74|0))|0); + $76 = tempRet0; + $77 = $iHintAbsLevel; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = (($77) + 4)|0; + $81 = $80; + $82 = HEAP32[$81>>2]|0; + $83 = $nMod; + $84 = $83; + $85 = HEAP32[$84>>2]|0; + $86 = (($83) + 4)|0; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = (___remdi3(($79|0),($82|0),($85|0),($88|0))|0); + $90 = tempRet0; + $91 = ($76|0)>($90|0); + $92 = ($76|0)==($90|0); + $93 = ($75>>>0)>=($89>>>0); + $94 = $92 & $93; + $95 = $91 | $94; + if (!($95)) { + $107 = HEAP32[$nHint>>2]|0; + $108 = (($hint) + 4|0); + HEAP32[$108>>2] = $107; + break; + } + } + $96 = $iHintAbsLevel; + $97 = $96; + $98 = HEAP32[$97>>2]|0; + $99 = (($96) + 4)|0; + $100 = $99; + $101 = HEAP32[$100>>2]|0; + $102 = $iAbsLevel; + $103 = $102; + HEAP32[$103>>2] = $98; + $104 = (($102) + 4)|0; + $105 = $104; + HEAP32[$105>>2] = $101; + $106 = HEAP32[$nHintSeg>>2]|0; + HEAP32[$nSeg>>2] = $106; + HEAP32[$bUseHint>>2] = 1; + HEAP32[$bDirtyHint>>2] = 1; + } + } + } while(0); + $109 = HEAP32[$nSeg>>2]|0; + $110 = ($109|0)<(0); + if ($110) { + break; + } + $111 = HEAP32[$pWriter>>2]|0; + _memset(($111|0),0,640)|0; + $112 = HEAP32[$pFilter>>2]|0; + $113 = (($112) + 12|0); + HEAP32[$113>>2] = 1; + $114 = HEAP32[$rc>>2]|0; + $115 = ($114|0)==(0); + do { + if ($115) { + $116 = HEAP32[$1>>2]|0; + $117 = $iAbsLevel; + $118 = $117; + $119 = HEAP32[$118>>2]|0; + $120 = (($117) + 4)|0; + $121 = $120; + $122 = HEAP32[$121>>2]|0; + $123 = (_fts3IncrmergeOutputIdx($116,$119,$122,$iIdx)|0); + HEAP32[$rc>>2] = $123; + $124 = HEAP32[$iIdx>>2]|0; + $125 = ($124|0)==(0); + if (!($125)) { + $126 = HEAP32[$bUseHint>>2]|0; + $127 = ($126|0)!=(0); + if (!($127)) { + break; + } + $128 = HEAP32[$iIdx>>2]|0; + $129 = ($128|0)==(1); + if (!($129)) { + break; + } + } + HEAP32[$bIgnore>>2] = 0; + $130 = HEAP32[$1>>2]|0; + $131 = $iAbsLevel; + $132 = $131; + $133 = HEAP32[$132>>2]|0; + $134 = (($131) + 4)|0; + $135 = $134; + $136 = HEAP32[$135>>2]|0; + $137 = (_i64Add(($133|0),($136|0),1,0)|0); + $138 = tempRet0; + $139 = (_fts3SegmentIsMaxLevel($130,$137,$138,$bIgnore)|0); + HEAP32[$rc>>2] = $139; + $140 = HEAP32[$bIgnore>>2]|0; + $141 = ($140|0)!=(0); + if ($141) { + $142 = HEAP32[$pFilter>>2]|0; + $143 = (($142) + 12|0); + $144 = HEAP32[$143>>2]|0; + $145 = $144 | 2; + HEAP32[$143>>2] = $145; + } + } + } while(0); + $146 = HEAP32[$rc>>2]|0; + $147 = ($146|0)==(0); + if ($147) { + $148 = HEAP32[$1>>2]|0; + $149 = $iAbsLevel; + $150 = $149; + $151 = HEAP32[$150>>2]|0; + $152 = (($149) + 4)|0; + $153 = $152; + $154 = HEAP32[$153>>2]|0; + $155 = HEAP32[$nSeg>>2]|0; + $156 = HEAP32[$pCsr>>2]|0; + $157 = (_fts3IncrmergeCsr($148,$151,$154,$155,$156)|0); + HEAP32[$rc>>2] = $157; + } + $158 = HEAP32[$rc>>2]|0; + $159 = (0)==($158|0); + if ($159) { + $160 = HEAP32[$pCsr>>2]|0; + $161 = (($160) + 4|0); + $162 = HEAP32[$161>>2]|0; + $163 = HEAP32[$nSeg>>2]|0; + $164 = ($162|0)==($163|0); + if ($164) { + $165 = HEAP32[$1>>2]|0; + $166 = HEAP32[$pCsr>>2]|0; + $167 = HEAP32[$pFilter>>2]|0; + $168 = (_sqlite3Fts3SegReaderStart($165,$166,$167)|0); + HEAP32[$rc>>2] = $168; + $169 = (0)==($168|0); + if ($169) { + $170 = HEAP32[$1>>2]|0; + $171 = HEAP32[$pCsr>>2]|0; + $172 = (_sqlite3Fts3SegReaderStep($170,$171)|0); + HEAP32[$rc>>2] = $172; + $173 = (100)==($172|0); + if ($173) { + $174 = HEAP32[$bUseHint>>2]|0; + $175 = ($174|0)!=(0); + if ($175) { + $176 = HEAP32[$iIdx>>2]|0; + $177 = ($176|0)>(0); + if ($177) { + $178 = HEAP32[$pCsr>>2]|0; + $179 = (($178) + 40|0); + $180 = HEAP32[$179>>2]|0; + HEAP32[$zKey>>2] = $180; + $181 = HEAP32[$pCsr>>2]|0; + $182 = (($181) + 44|0); + $183 = HEAP32[$182>>2]|0; + HEAP32[$nKey>>2] = $183; + $184 = HEAP32[$1>>2]|0; + $185 = $iAbsLevel; + $186 = $185; + $187 = HEAP32[$186>>2]|0; + $188 = (($185) + 4)|0; + $189 = $188; + $190 = HEAP32[$189>>2]|0; + $191 = HEAP32[$iIdx>>2]|0; + $192 = (($191) - 1)|0; + $193 = HEAP32[$zKey>>2]|0; + $194 = HEAP32[$nKey>>2]|0; + $195 = HEAP32[$pWriter>>2]|0; + $196 = (_fts3IncrmergeLoad($184,$187,$190,$192,$193,$194,$195)|0); + HEAP32[$rc>>2] = $196; + } else { + label = 31; + } + } else { + label = 31; + } + if ((label|0) == 31) { + label = 0; + $197 = HEAP32[$1>>2]|0; + $198 = $iAbsLevel; + $199 = $198; + $200 = HEAP32[$199>>2]|0; + $201 = (($198) + 4)|0; + $202 = $201; + $203 = HEAP32[$202>>2]|0; + $204 = HEAP32[$iIdx>>2]|0; + $205 = HEAP32[$pCsr>>2]|0; + $206 = HEAP32[$pWriter>>2]|0; + $207 = (_fts3IncrmergeWriter($197,$200,$203,$204,$205,$206)|0); + HEAP32[$rc>>2] = $207; + } + $208 = HEAP32[$rc>>2]|0; + $209 = ($208|0)==(0); + if ($209) { + $210 = HEAP32[$pWriter>>2]|0; + $211 = HEAP32[$210>>2]|0; + $212 = ($211|0)!=(0); + if ($212) { + while(1) { + $213 = HEAP32[$1>>2]|0; + $214 = HEAP32[$pWriter>>2]|0; + $215 = HEAP32[$pCsr>>2]|0; + $216 = (_fts3IncrmergeAppend($213,$214,$215)|0); + HEAP32[$rc>>2] = $216; + $217 = HEAP32[$rc>>2]|0; + $218 = ($217|0)==(0); + if ($218) { + $219 = HEAP32[$1>>2]|0; + $220 = HEAP32[$pCsr>>2]|0; + $221 = (_sqlite3Fts3SegReaderStep($219,$220)|0); + HEAP32[$rc>>2] = $221; + } + $222 = HEAP32[$pWriter>>2]|0; + $223 = (($222) + 4|0); + $224 = HEAP32[$223>>2]|0; + $225 = HEAP32[$nRem>>2]|0; + $226 = ($224|0)>=($225|0); + do { + if ($226) { + $227 = HEAP32[$rc>>2]|0; + $228 = ($227|0)==(100); + if (!($228)) { + break; + } + HEAP32[$rc>>2] = 0; + } + } while(0); + $229 = HEAP32[$rc>>2]|0; + $230 = ($229|0)==(100); + if (!($230)) { + break; + } + } + $231 = HEAP32[$rc>>2]|0; + $232 = ($231|0)==(0); + if ($232) { + $233 = HEAP32[$pWriter>>2]|0; + $234 = (($233) + 4|0); + $235 = HEAP32[$234>>2]|0; + $236 = (1 + ($235))|0; + $237 = HEAP32[$nRem>>2]|0; + $238 = (($237) - ($236))|0; + HEAP32[$nRem>>2] = $238; + $239 = HEAP32[$1>>2]|0; + $240 = $iAbsLevel; + $241 = $240; + $242 = HEAP32[$241>>2]|0; + $243 = (($240) + 4)|0; + $244 = $243; + $245 = HEAP32[$244>>2]|0; + $246 = HEAP32[$pCsr>>2]|0; + $247 = (_fts3IncrmergeChomp($239,$242,$245,$246,$nSeg)|0); + HEAP32[$rc>>2] = $247; + $248 = HEAP32[$nSeg>>2]|0; + $249 = ($248|0)!=(0); + if ($249) { + HEAP32[$bDirtyHint>>2] = 1; + $250 = $iAbsLevel; + $251 = $250; + $252 = HEAP32[$251>>2]|0; + $253 = (($250) + 4)|0; + $254 = $253; + $255 = HEAP32[$254>>2]|0; + $256 = HEAP32[$nSeg>>2]|0; + _fts3IncrmergeHintPush($hint,$252,$255,$256,$rc); + } + } + } + } + $257 = HEAP32[$nSeg>>2]|0; + $258 = ($257|0)!=(0); + if ($258) { + $259 = HEAP32[$pWriter>>2]|0; + $260 = (($259) + 40|0); + $261 = $260; + $262 = $261; + $263 = HEAP32[$262>>2]|0; + $264 = (($261) + 4)|0; + $265 = $264; + $266 = HEAP32[$265>>2]|0; + $267 = (___muldi3(($263|0),($266|0),-1,-1)|0); + $268 = tempRet0; + $269 = HEAP32[$pWriter>>2]|0; + $270 = (($269) + 40|0); + $271 = $270; + $272 = $271; + HEAP32[$272>>2] = $267; + $273 = (($271) + 4)|0; + $274 = $273; + HEAP32[$274>>2] = $268; + } + $275 = HEAP32[$1>>2]|0; + $276 = HEAP32[$pWriter>>2]|0; + _fts3IncrmergeRelease($275,$276,$rc); + $277 = HEAP32[$nSeg>>2]|0; + $278 = ($277|0)==(0); + if ($278) { + $279 = HEAP32[$pWriter>>2]|0; + $280 = (($279) + 48|0); + $281 = HEAP8[$280>>0]|0; + $282 = $281&255; + $283 = ($282|0)==(0); + if ($283) { + $284 = HEAP32[$1>>2]|0; + $285 = $iAbsLevel; + $286 = $285; + $287 = HEAP32[$286>>2]|0; + $288 = (($285) + 4)|0; + $289 = $288; + $290 = HEAP32[$289>>2]|0; + $291 = (_i64Add(($287|0),($290|0),1,0)|0); + $292 = tempRet0; + $293 = HEAP32[$pWriter>>2]|0; + $294 = (($293) + 40|0); + $295 = $294; + $296 = $295; + $297 = HEAP32[$296>>2]|0; + $298 = (($295) + 4)|0; + $299 = $298; + $300 = HEAP32[$299>>2]|0; + (_fts3PromoteSegments($284,$291,$292,$297,$300)|0); + } + } + } + } + } + } + $301 = HEAP32[$pCsr>>2]|0; + _sqlite3Fts3SegReaderFinish($301); + } + $302 = HEAP32[$bDirtyHint>>2]|0; + $303 = ($302|0)!=(0); + if ($303) { + $304 = HEAP32[$rc>>2]|0; + $305 = ($304|0)==(0); + if ($305) { + $306 = HEAP32[$1>>2]|0; + $307 = (_fts3IncrmergeHintStore($306,$hint)|0); + HEAP32[$rc>>2] = $307; + } + } + $308 = HEAP32[$pWriter>>2]|0; + _sqlite3_free($308); + $309 = HEAP32[$hint>>2]|0; + _sqlite3_free($309); + $310 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $310; + $311 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($311|0); +} +function _fts3IncrmergeHintLoad($p,$pHint) { + $p = $p|0; + $pHint = $pHint|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aHint = 0, $nHint = 0, $pSelect = 0, $rc = 0, $rc2 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $pSelect = sp + 4|0; + $rc = sp + 8|0; + $rc2 = sp + 12|0; + $aHint = sp + 16|0; + $nHint = sp + 20|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pHint; + HEAP32[$pSelect>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 4|0); + HEAP32[$3>>2] = 0; + $4 = HEAP32[$0>>2]|0; + $5 = (_fts3SqlStmt($4,22,$pSelect,0)|0); + HEAP32[$rc>>2] = $5; + $6 = HEAP32[$rc>>2]|0; + $7 = ($6|0)==(0); + if (!($7)) { + $34 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($34|0); + } + $8 = HEAP32[$pSelect>>2]|0; + (_sqlite3_bind_int($8,1,1)|0); + $9 = HEAP32[$pSelect>>2]|0; + $10 = (_sqlite3_step($9)|0); + $11 = (100)==($10|0); + if ($11) { + $12 = HEAP32[$pSelect>>2]|0; + $13 = (_sqlite3_column_blob($12,0)|0); + HEAP32[$aHint>>2] = $13; + $14 = HEAP32[$pSelect>>2]|0; + $15 = (_sqlite3_column_bytes($14,0)|0); + HEAP32[$nHint>>2] = $15; + $16 = HEAP32[$aHint>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = HEAP32[$1>>2]|0; + $19 = HEAP32[$nHint>>2]|0; + _blobGrowBuffer($18,$19,$rc); + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)==(0); + if ($21) { + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$aHint>>2]|0; + $25 = HEAP32[$nHint>>2]|0; + _memcpy(($23|0),($24|0),($25|0))|0; + $26 = HEAP32[$nHint>>2]|0; + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 4|0); + HEAP32[$28>>2] = $26; + } + } + } + $29 = HEAP32[$pSelect>>2]|0; + $30 = (_sqlite3_reset($29)|0); + HEAP32[$rc2>>2] = $30; + $31 = HEAP32[$rc>>2]|0; + $32 = ($31|0)==(0); + if (!($32)) { + $34 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($34|0); + } + $33 = HEAP32[$rc2>>2]|0; + HEAP32[$rc>>2] = $33; + $34 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($34|0); +} +function _fts3IncrmergeHintPop($pHint,$piAbsLevel,$pnInput) { + $pHint = $pHint|0; + $piAbsLevel = $piAbsLevel|0; + $pnInput = $pnInput|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $8 = 0, $9 = 0, $i = 0, $nHint = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $nHint = sp + 12|0; + $i = sp + 16|0; + HEAP32[$1>>2] = $pHint; + HEAP32[$2>>2] = $piAbsLevel; + HEAP32[$3>>2] = $pnInput; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$nHint>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) - 2)|0; + HEAP32[$i>>2] = $10; + while(1) { + $11 = HEAP32[$i>>2]|0; + $12 = ($11|0)>(0); + if (!($12)) { + break; + } + $13 = HEAP32[$i>>2]|0; + $14 = (($13) - 1)|0; + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + ($14)|0); + $18 = HEAP8[$17>>0]|0; + $19 = $18 << 24 >> 24; + $20 = $19 & 128; + $21 = ($20|0)!=(0); + if (!($21)) { + break; + } + $22 = HEAP32[$i>>2]|0; + $23 = (($22) + -1)|0; + HEAP32[$i>>2] = $23; + } + while(1) { + $24 = HEAP32[$i>>2]|0; + $25 = ($24|0)>(0); + if ($25) { + $26 = HEAP32[$i>>2]|0; + $27 = (($26) - 1)|0; + $28 = HEAP32[$1>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + ($27)|0); + $31 = HEAP8[$30>>0]|0; + $32 = $31 << 24 >> 24; + $33 = $32 & 128; + $34 = ($33|0)!=(0); + $71 = $34; + } else { + $71 = 0; + } + $35 = HEAP32[$i>>2]|0; + if (!($71)) { + break; + } + $36 = (($35) + -1)|0; + HEAP32[$i>>2] = $36; + } + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 4|0); + HEAP32[$38>>2] = $35; + $39 = HEAP32[$i>>2]|0; + $40 = HEAP32[$1>>2]|0; + $41 = HEAP32[$40>>2]|0; + $42 = (($41) + ($39)|0); + $43 = HEAP32[$2>>2]|0; + $44 = (_sqlite3Fts3GetVarint($42,$43)|0); + $45 = HEAP32[$i>>2]|0; + $46 = (($45) + ($44))|0; + HEAP32[$i>>2] = $46; + $47 = HEAP32[$i>>2]|0; + $48 = HEAP32[$1>>2]|0; + $49 = HEAP32[$48>>2]|0; + $50 = (($49) + ($47)|0); + $51 = HEAP8[$50>>0]|0; + $52 = $51&255; + $53 = $52 & 128; + $54 = ($53|0)!=(0); + $55 = HEAP32[$i>>2]|0; + $56 = HEAP32[$1>>2]|0; + $57 = HEAP32[$56>>2]|0; + $58 = (($57) + ($55)|0); + if ($54) { + $59 = HEAP32[$3>>2]|0; + $60 = (_sqlite3Fts3GetVarint32($58,$59)|0); + $66 = $60; + } else { + $61 = HEAP8[$58>>0]|0; + $62 = $61&255; + $63 = HEAP32[$3>>2]|0; + HEAP32[$63>>2] = $62; + $66 = 1; + } + $64 = HEAP32[$i>>2]|0; + $65 = (($64) + ($66))|0; + HEAP32[$i>>2] = $65; + $67 = HEAP32[$i>>2]|0; + $68 = HEAP32[$nHint>>2]|0; + $69 = ($67|0)!=($68|0); + if ($69) { + HEAP32[$0>>2] = 267; + $70 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($70|0); + } else { + HEAP32[$0>>2] = 0; + $70 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($70|0); + } + return 0|0; +} +function _fts3IncrmergeOutputIdx($p,$0,$1,$piIdx) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + $piIdx = $piIdx|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pOutputIdx = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 20|0; + $3 = sp; + $4 = sp + 8|0; + $rc = sp + 12|0; + $pOutputIdx = sp + 16|0; + HEAP32[$2>>2] = $p; + $5 = $3; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + HEAP32[$4>>2] = $piIdx; + HEAP32[$pOutputIdx>>2] = 0; + $9 = HEAP32[$2>>2]|0; + $10 = (_fts3SqlStmt($9,8,$pOutputIdx,0)|0); + HEAP32[$rc>>2] = $10; + $11 = HEAP32[$rc>>2]|0; + $12 = ($11|0)==(0); + if (!($12)) { + $28 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($28|0); + } + $13 = HEAP32[$pOutputIdx>>2]|0; + $14 = $3; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (_i64Add(($16|0),($19|0),1,0)|0); + $21 = tempRet0; + (_sqlite3_bind_int64($13,1,$20,$21)|0); + $22 = HEAP32[$pOutputIdx>>2]|0; + (_sqlite3_step($22)|0); + $23 = HEAP32[$pOutputIdx>>2]|0; + $24 = (_sqlite3_column_int($23,0)|0); + $25 = HEAP32[$4>>2]|0; + HEAP32[$25>>2] = $24; + $26 = HEAP32[$pOutputIdx>>2]|0; + $27 = (_sqlite3_reset($26)|0); + HEAP32[$rc>>2] = $27; + $28 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($28|0); +} +function _fts3SegmentIsMaxLevel($p,$0,$1,$pbMax) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + $pbMax = $pbMax|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 24|0; + $3 = sp + 8|0; + $4 = sp; + $5 = sp + 12|0; + $pStmt = sp + 16|0; + $rc = sp + 20|0; + HEAP32[$3>>2] = $p; + $6 = $4; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + HEAP32[$5>>2] = $pbMax; + $10 = HEAP32[$3>>2]|0; + $11 = (_fts3SqlStmt($10,15,$pStmt,0)|0); + HEAP32[$rc>>2] = $11; + $12 = HEAP32[$rc>>2]|0; + $13 = ($12|0)!=(0); + if ($13) { + $14 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $14; + $48 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($48|0); + } + $15 = HEAP32[$pStmt>>2]|0; + $16 = $4; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = (($16) + 4)|0; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (_i64Add(($18|0),($21|0),1,0)|0); + $23 = tempRet0; + (_sqlite3_bind_int64($15,1,$22,$23)|0); + $24 = HEAP32[$pStmt>>2]|0; + $25 = $4; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = (___divdi3(($27|0),($30|0),1024,0)|0); + $32 = tempRet0; + $33 = (_i64Add(($31|0),($32|0),1,0)|0); + $34 = tempRet0; + $35 = (___muldi3(($33|0),($34|0),1024,0)|0); + $36 = tempRet0; + (_sqlite3_bind_int64($24,2,$35,$36)|0); + $37 = HEAP32[$5>>2]|0; + HEAP32[$37>>2] = 0; + $38 = HEAP32[$pStmt>>2]|0; + $39 = (_sqlite3_step($38)|0); + $40 = (100)==($39|0); + if ($40) { + $41 = HEAP32[$pStmt>>2]|0; + $42 = (_sqlite3_column_type($41,0)|0); + $43 = ($42|0)==(5); + $44 = $43&1; + $45 = HEAP32[$5>>2]|0; + HEAP32[$45>>2] = $44; + } + $46 = HEAP32[$pStmt>>2]|0; + $47 = (_sqlite3_reset($46)|0); + HEAP32[$2>>2] = $47; + $48 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($48|0); +} +function _fts3IncrmergeCsr($p,$0,$1,$nSeg,$pCsr) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + $nSeg = $nSeg|0; + $pCsr = $pCsr|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $8 = 0, $9 = 0, $i = 0, $nByte = 0, $pStmt = 0, $rc = 0, $rc2 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $2 = sp + 36|0; + $3 = sp; + $4 = sp + 32|0; + $5 = sp + 28|0; + $rc = sp + 16|0; + $pStmt = sp + 20|0; + $nByte = sp + 12|0; + $i = sp + 8|0; + $rc2 = sp + 24|0; + HEAP32[$2>>2] = $p; + $6 = $3; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + HEAP32[$4>>2] = $nSeg; + HEAP32[$5>>2] = $pCsr; + HEAP32[$pStmt>>2] = 0; + $10 = HEAP32[$5>>2]|0; + dest=$10+0|0; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $11 = HEAP32[$4>>2]|0; + $12 = $11<<2; + HEAP32[$nByte>>2] = $12; + $13 = HEAP32[$nByte>>2]|0; + $14 = (_sqlite3_malloc($13)|0); + $15 = HEAP32[$5>>2]|0; + HEAP32[$15>>2] = $14; + $16 = HEAP32[$5>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)==(0|0); + if ($18) { + HEAP32[$rc>>2] = 7; + } else { + $19 = HEAP32[$5>>2]|0; + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$nByte>>2]|0; + _memset(($20|0),0,($21|0))|0; + $22 = HEAP32[$2>>2]|0; + $23 = (_fts3SqlStmt($22,12,$pStmt,0)|0); + HEAP32[$rc>>2] = $23; + } + $24 = HEAP32[$rc>>2]|0; + $25 = ($24|0)==(0); + if (!($25)) { + $71 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($71|0); + } + $26 = HEAP32[$pStmt>>2]|0; + $27 = $3; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (($27) + 4)|0; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + (_sqlite3_bind_int64($26,1,$29,$32)|0); + HEAP32[$i>>2] = 0; + while(1) { + $33 = HEAP32[$rc>>2]|0; + $34 = ($33|0)==(0); + if (!($34)) { + break; + } + $35 = HEAP32[$pStmt>>2]|0; + $36 = (_sqlite3_step($35)|0); + $37 = ($36|0)==(100); + if (!($37)) { + break; + } + $38 = HEAP32[$i>>2]|0; + $39 = HEAP32[$4>>2]|0; + $40 = ($38|0)<($39|0); + if (!($40)) { + break; + } + $41 = HEAP32[$i>>2]|0; + $42 = HEAP32[$pStmt>>2]|0; + $43 = (_sqlite3_column_int64($42,1)|0); + $44 = tempRet0; + $45 = HEAP32[$pStmt>>2]|0; + $46 = (_sqlite3_column_int64($45,2)|0); + $47 = tempRet0; + $48 = HEAP32[$pStmt>>2]|0; + $49 = (_sqlite3_column_int64($48,3)|0); + $50 = tempRet0; + $51 = HEAP32[$pStmt>>2]|0; + $52 = (_sqlite3_column_blob($51,4)|0); + $53 = HEAP32[$pStmt>>2]|0; + $54 = (_sqlite3_column_bytes($53,4)|0); + $55 = HEAP32[$i>>2]|0; + $56 = HEAP32[$5>>2]|0; + $57 = HEAP32[$56>>2]|0; + $58 = (($57) + ($55<<2)|0); + $59 = (_sqlite3Fts3SegReaderNew($41,0,$43,$44,$46,$47,$49,$50,$52,$54,$58)|0); + HEAP32[$rc>>2] = $59; + $60 = HEAP32[$5>>2]|0; + $61 = (($60) + 4|0); + $62 = HEAP32[$61>>2]|0; + $63 = (($62) + 1)|0; + HEAP32[$61>>2] = $63; + $64 = HEAP32[$i>>2]|0; + $65 = (($64) + 1)|0; + HEAP32[$i>>2] = $65; + } + $66 = HEAP32[$pStmt>>2]|0; + $67 = (_sqlite3_reset($66)|0); + HEAP32[$rc2>>2] = $67; + $68 = HEAP32[$rc>>2]|0; + $69 = ($68|0)==(0); + if (!($69)) { + $71 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($71|0); + } + $70 = HEAP32[$rc2>>2]|0; + HEAP32[$rc>>2] = $70; + $71 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($71|0); +} +function _fts3IncrmergeLoad($p,$0,$1,$iIdx,$zKey,$nKey,$pWriter) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + $iIdx = $iIdx|0; + $zKey = $zKey|0; + $nKey = $nKey|0; + $pWriter = $pWriter|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; + var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; + var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; + var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0; + var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0; + var $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0; + var $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0; + var $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0; + var $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0; + var $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0; + var $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0; + var $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0; + var $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0; + var $389 = 0, $39 = 0, $390 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aBlock = 0, $aLeaf = 0, $aRoot = 0, $bAppendable = 0, $i = 0, $iEnd = 0, $iLeafEnd = 0, $iStart = 0, $nBlock = 0, $nHeight = 0, $nLeaf = 0; + var $nRoot = 0, $pNode = 0, $pSelect = 0, $rc = 0, $rc2 = 0, $reader = 0, $reader1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 208|0; + $2 = sp + 200|0; + $3 = sp + 196|0; + $4 = sp + 8|0; + $5 = sp + 192|0; + $6 = sp + 188|0; + $7 = sp + 184|0; + $8 = sp + 180|0; + $rc = sp + 176|0; + $pSelect = sp + 172|0; + $iStart = sp + 64|0; + $iLeafEnd = sp; + $iEnd = sp + 120|0; + $aRoot = sp + 128|0; + $nRoot = sp + 136|0; + $rc2 = sp + 140|0; + $bAppendable = sp + 144|0; + $aLeaf = sp + 148|0; + $nLeaf = sp + 132|0; + $reader = sp + 72|0; + $i = sp + 152|0; + $nHeight = sp + 156|0; + $pNode = sp + 160|0; + $reader1 = sp + 16|0; + $aBlock = sp + 164|0; + $nBlock = sp + 168|0; + HEAP32[$3>>2] = $p; + $9 = $4; + $10 = $9; + HEAP32[$10>>2] = $0; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = $1; + HEAP32[$5>>2] = $iIdx; + HEAP32[$6>>2] = $zKey; + HEAP32[$7>>2] = $nKey; + HEAP32[$8>>2] = $pWriter; + HEAP32[$pSelect>>2] = 0; + $13 = HEAP32[$3>>2]|0; + $14 = (_fts3SqlStmt($13,32,$pSelect,0)|0); + HEAP32[$rc>>2] = $14; + $15 = HEAP32[$rc>>2]|0; + $16 = ($15|0)==(0); + if ($16) { + $17 = $iStart; + $18 = $17; + HEAP32[$18>>2] = 0; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = 0; + $21 = $iLeafEnd; + $22 = $21; + HEAP32[$22>>2] = 0; + $23 = (($21) + 4)|0; + $24 = $23; + HEAP32[$24>>2] = 0; + $25 = $iEnd; + $26 = $25; + HEAP32[$26>>2] = 0; + $27 = (($25) + 4)|0; + $28 = $27; + HEAP32[$28>>2] = 0; + HEAP32[$aRoot>>2] = 0; + HEAP32[$nRoot>>2] = 0; + HEAP32[$bAppendable>>2] = 0; + $29 = HEAP32[$pSelect>>2]|0; + $30 = $4; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = (_i64Add(($32|0),($35|0),1,0)|0); + $37 = tempRet0; + (_sqlite3_bind_int64($29,1,$36,$37)|0); + $38 = HEAP32[$pSelect>>2]|0; + $39 = HEAP32[$5>>2]|0; + (_sqlite3_bind_int($38,2,$39)|0); + $40 = HEAP32[$pSelect>>2]|0; + $41 = (_sqlite3_step($40)|0); + $42 = ($41|0)==(100); + $43 = HEAP32[$pSelect>>2]|0; + if (!($42)) { + $114 = (_sqlite3_reset($43)|0); + HEAP32[$2>>2] = $114; + $390 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($390|0); + } + $44 = (_sqlite3_column_int64($43,1)|0); + $45 = tempRet0; + $46 = $iStart; + $47 = $46; + HEAP32[$47>>2] = $44; + $48 = (($46) + 4)|0; + $49 = $48; + HEAP32[$49>>2] = $45; + $50 = HEAP32[$pSelect>>2]|0; + $51 = (_sqlite3_column_int64($50,2)|0); + $52 = tempRet0; + $53 = $iLeafEnd; + $54 = $53; + HEAP32[$54>>2] = $51; + $55 = (($53) + 4)|0; + $56 = $55; + HEAP32[$56>>2] = $52; + $57 = HEAP32[$pSelect>>2]|0; + $58 = HEAP32[$8>>2]|0; + $59 = (($58) + 40|0); + _fts3ReadEndBlockField($57,3,$iEnd,$59); + $60 = HEAP32[$8>>2]|0; + $61 = (($60) + 40|0); + $62 = $61; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (($62) + 4)|0; + $66 = $65; + $67 = HEAP32[$66>>2]|0; + $68 = ($67|0)<(0); + if ($68) { + $69 = HEAP32[$8>>2]|0; + $70 = (($69) + 40|0); + $71 = $70; + $72 = $71; + $73 = HEAP32[$72>>2]|0; + $74 = (($71) + 4)|0; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = (___muldi3(($73|0),($76|0),-1,-1)|0); + $78 = tempRet0; + $79 = HEAP32[$8>>2]|0; + $80 = (($79) + 40|0); + $81 = $80; + $82 = $81; + HEAP32[$82>>2] = $77; + $83 = (($81) + 4)|0; + $84 = $83; + HEAP32[$84>>2] = $78; + } + $85 = HEAP32[$8>>2]|0; + $86 = (($85) + 40|0); + $87 = $86; + $88 = $87; + $89 = HEAP32[$88>>2]|0; + $90 = (($87) + 4)|0; + $91 = $90; + $92 = HEAP32[$91>>2]|0; + $93 = ($89|0)==(0); + $94 = ($92|0)==(0); + $95 = $93 & $94; + $96 = $95&1; + $97 = $96&255; + $98 = HEAP32[$8>>2]|0; + $99 = (($98) + 48|0); + HEAP8[$99>>0] = $97; + $100 = HEAP32[$pSelect>>2]|0; + $101 = (_sqlite3_column_bytes($100,4)|0); + HEAP32[$nRoot>>2] = $101; + $102 = HEAP32[$pSelect>>2]|0; + $103 = (_sqlite3_column_blob($102,4)|0); + HEAP32[$aRoot>>2] = $103; + $104 = HEAP32[$3>>2]|0; + $105 = $iEnd; + $106 = $105; + $107 = HEAP32[$106>>2]|0; + $108 = (($105) + 4)|0; + $109 = $108; + $110 = HEAP32[$109>>2]|0; + $111 = (_fts3IsAppendable($104,$107,$110,$bAppendable)|0); + HEAP32[$rc>>2] = $111; + $112 = HEAP32[$rc>>2]|0; + $113 = ($112|0)==(0); + if ($113) { + $115 = HEAP32[$bAppendable>>2]|0; + $116 = ($115|0)!=(0); + if ($116) { + HEAP32[$aLeaf>>2] = 0; + HEAP32[$nLeaf>>2] = 0; + $117 = HEAP32[$3>>2]|0; + $118 = $iLeafEnd; + $119 = $118; + $120 = HEAP32[$119>>2]|0; + $121 = (($118) + 4)|0; + $122 = $121; + $123 = HEAP32[$122>>2]|0; + $124 = (_sqlite3Fts3ReadBlock($117,$120,$123,$aLeaf,$nLeaf,0)|0); + HEAP32[$rc>>2] = $124; + $125 = HEAP32[$rc>>2]|0; + $126 = ($125|0)==(0); + if ($126) { + $127 = HEAP32[$aLeaf>>2]|0; + $128 = HEAP32[$nLeaf>>2]|0; + $129 = (_nodeReaderInit($reader,$127,$128)|0); + HEAP32[$rc>>2] = $129; + while(1) { + $130 = HEAP32[$rc>>2]|0; + $131 = ($130|0)==(0); + if (!($131)) { + break; + } + $132 = HEAP32[$reader>>2]|0; + $133 = ($132|0)!=(0|0); + if (!($133)) { + break; + } + $134 = (_nodeReaderNext($reader)|0); + HEAP32[$rc>>2] = $134; + } + $135 = HEAP32[$6>>2]|0; + $136 = HEAP32[$7>>2]|0; + $137 = (($reader) + 24|0); + $138 = HEAP32[$137>>2]|0; + $139 = (($reader) + 24|0); + $140 = (($139) + 4|0); + $141 = HEAP32[$140>>2]|0; + $142 = (_fts3TermCmp($135,$136,$138,$141)|0); + $143 = ($142|0)<=(0); + if ($143) { + HEAP32[$bAppendable>>2] = 0; + } + _nodeReaderRelease($reader); + } + $144 = HEAP32[$aLeaf>>2]|0; + _sqlite3_free($144); + } + } + $145 = HEAP32[$rc>>2]|0; + $146 = ($145|0)==(0); + L25: do { + if ($146) { + $147 = HEAP32[$bAppendable>>2]|0; + $148 = ($147|0)!=(0); + if ($148) { + $149 = HEAP32[$aRoot>>2]|0; + $150 = HEAP8[$149>>0]|0; + $151 = $150 << 24 >> 24; + HEAP32[$nHeight>>2] = $151; + $152 = $iEnd; + $153 = $152; + $154 = HEAP32[$153>>2]|0; + $155 = (($152) + 4)|0; + $156 = $155; + $157 = HEAP32[$156>>2]|0; + $158 = $iStart; + $159 = $158; + $160 = HEAP32[$159>>2]|0; + $161 = (($158) + 4)|0; + $162 = $161; + $163 = HEAP32[$162>>2]|0; + $164 = (_i64Subtract(($154|0),($157|0),($160|0),($163|0))|0); + $165 = tempRet0; + $166 = (_i64Add(($164|0),($165|0),1,0)|0); + $167 = tempRet0; + $168 = (($166|0) / 16)&-1; + $169 = HEAP32[$8>>2]|0; + HEAP32[$169>>2] = $168; + $170 = $iStart; + $171 = $170; + $172 = HEAP32[$171>>2]|0; + $173 = (($170) + 4)|0; + $174 = $173; + $175 = HEAP32[$174>>2]|0; + $176 = HEAP32[$8>>2]|0; + $177 = (($176) + 24|0); + $178 = $177; + $179 = $178; + HEAP32[$179>>2] = $172; + $180 = (($178) + 4)|0; + $181 = $180; + HEAP32[$181>>2] = $175; + $182 = $iEnd; + $183 = $182; + $184 = HEAP32[$183>>2]|0; + $185 = (($182) + 4)|0; + $186 = $185; + $187 = HEAP32[$186>>2]|0; + $188 = HEAP32[$8>>2]|0; + $189 = (($188) + 32|0); + $190 = $189; + $191 = $190; + HEAP32[$191>>2] = $184; + $192 = (($190) + 4)|0; + $193 = $192; + HEAP32[$193>>2] = $187; + $194 = $4; + $195 = $194; + $196 = HEAP32[$195>>2]|0; + $197 = (($194) + 4)|0; + $198 = $197; + $199 = HEAP32[$198>>2]|0; + $200 = HEAP32[$8>>2]|0; + $201 = (($200) + 8|0); + $202 = $201; + $203 = $202; + HEAP32[$203>>2] = $196; + $204 = (($202) + 4)|0; + $205 = $204; + HEAP32[$205>>2] = $199; + $206 = HEAP32[$5>>2]|0; + $207 = HEAP32[$8>>2]|0; + $208 = (($207) + 16|0); + HEAP32[$208>>2] = $206; + $209 = HEAP32[$nHeight>>2]|0; + $210 = (($209) + 1)|0; + HEAP32[$i>>2] = $210; + while(1) { + $211 = HEAP32[$i>>2]|0; + $212 = ($211|0)<(16); + if (!($212)) { + break; + } + $213 = HEAP32[$8>>2]|0; + $214 = (($213) + 24|0); + $215 = $214; + $216 = $215; + $217 = HEAP32[$216>>2]|0; + $218 = (($215) + 4)|0; + $219 = $218; + $220 = HEAP32[$219>>2]|0; + $221 = HEAP32[$i>>2]|0; + $222 = HEAP32[$8>>2]|0; + $223 = HEAP32[$222>>2]|0; + $224 = Math_imul($221, $223)|0; + $225 = ($224|0)<(0); + $226 = $225 << 31 >> 31; + $227 = (_i64Add(($217|0),($220|0),($224|0),($226|0))|0); + $228 = tempRet0; + $229 = HEAP32[$i>>2]|0; + $230 = HEAP32[$8>>2]|0; + $231 = (($230) + 56|0); + $232 = (($231) + ($229<<5)|0); + $233 = $232; + $234 = $233; + HEAP32[$234>>2] = $227; + $235 = (($233) + 4)|0; + $236 = $235; + HEAP32[$236>>2] = $228; + $237 = HEAP32[$i>>2]|0; + $238 = (($237) + 1)|0; + HEAP32[$i>>2] = $238; + } + $239 = HEAP32[$nHeight>>2]|0; + $240 = HEAP32[$8>>2]|0; + $241 = (($240) + 56|0); + $242 = (($241) + ($239<<5)|0); + HEAP32[$pNode>>2] = $242; + $243 = HEAP32[$8>>2]|0; + $244 = (($243) + 24|0); + $245 = $244; + $246 = $245; + $247 = HEAP32[$246>>2]|0; + $248 = (($245) + 4)|0; + $249 = $248; + $250 = HEAP32[$249>>2]|0; + $251 = HEAP32[$8>>2]|0; + $252 = HEAP32[$251>>2]|0; + $253 = HEAP32[$nHeight>>2]|0; + $254 = Math_imul($252, $253)|0; + $255 = ($254|0)<(0); + $256 = $255 << 31 >> 31; + $257 = (_i64Add(($247|0),($250|0),($254|0),($256|0))|0); + $258 = tempRet0; + $259 = HEAP32[$pNode>>2]|0; + $260 = $259; + $261 = $260; + HEAP32[$261>>2] = $257; + $262 = (($260) + 4)|0; + $263 = $262; + HEAP32[$263>>2] = $258; + $264 = HEAP32[$pNode>>2]|0; + $265 = (($264) + 20|0); + $266 = HEAP32[$nRoot>>2]|0; + $267 = HEAP32[$3>>2]|0; + $268 = (($267) + 224|0); + $269 = HEAP32[$268>>2]|0; + $270 = ($266|0)>($269|0); + if ($270) { + $271 = HEAP32[$nRoot>>2]|0; + $275 = $271; + } else { + $272 = HEAP32[$3>>2]|0; + $273 = (($272) + 224|0); + $274 = HEAP32[$273>>2]|0; + $275 = $274; + } + _blobGrowBuffer($265,$275,$rc); + $276 = HEAP32[$rc>>2]|0; + $277 = ($276|0)==(0); + if ($277) { + $278 = HEAP32[$pNode>>2]|0; + $279 = (($278) + 20|0); + $280 = HEAP32[$279>>2]|0; + $281 = HEAP32[$aRoot>>2]|0; + $282 = HEAP32[$nRoot>>2]|0; + _memcpy(($280|0),($281|0),($282|0))|0; + $283 = HEAP32[$nRoot>>2]|0; + $284 = HEAP32[$pNode>>2]|0; + $285 = (($284) + 20|0); + $286 = (($285) + 4|0); + HEAP32[$286>>2] = $283; + } + $287 = HEAP32[$nHeight>>2]|0; + HEAP32[$i>>2] = $287; + while(1) { + $288 = HEAP32[$i>>2]|0; + $289 = ($288|0)>=(0); + if (!($289)) { + break L25; + } + $290 = HEAP32[$rc>>2]|0; + $291 = ($290|0)==(0); + if (!($291)) { + break L25; + } + $292 = HEAP32[$i>>2]|0; + $293 = HEAP32[$8>>2]|0; + $294 = (($293) + 56|0); + $295 = (($294) + ($292<<5)|0); + HEAP32[$pNode>>2] = $295; + $296 = HEAP32[$pNode>>2]|0; + $297 = (($296) + 20|0); + $298 = HEAP32[$297>>2]|0; + $299 = HEAP32[$pNode>>2]|0; + $300 = (($299) + 20|0); + $301 = (($300) + 4|0); + $302 = HEAP32[$301>>2]|0; + $303 = (_nodeReaderInit($reader1,$298,$302)|0); + HEAP32[$rc>>2] = $303; + while(1) { + $304 = HEAP32[$reader1>>2]|0; + $305 = ($304|0)!=(0|0); + if (!($305)) { + break; + } + $306 = HEAP32[$rc>>2]|0; + $307 = ($306|0)==(0); + if (!($307)) { + break; + } + $308 = (_nodeReaderNext($reader1)|0); + HEAP32[$rc>>2] = $308; + } + $309 = HEAP32[$pNode>>2]|0; + $310 = (($309) + 8|0); + $311 = (($reader1) + 24|0); + $312 = (($311) + 4|0); + $313 = HEAP32[$312>>2]|0; + _blobGrowBuffer($310,$313,$rc); + $314 = HEAP32[$rc>>2]|0; + $315 = ($314|0)==(0); + if ($315) { + $316 = HEAP32[$pNode>>2]|0; + $317 = (($316) + 8|0); + $318 = HEAP32[$317>>2]|0; + $319 = (($reader1) + 24|0); + $320 = HEAP32[$319>>2]|0; + $321 = (($reader1) + 24|0); + $322 = (($321) + 4|0); + $323 = HEAP32[$322>>2]|0; + _memcpy(($318|0),($320|0),($323|0))|0; + $324 = (($reader1) + 24|0); + $325 = (($324) + 4|0); + $326 = HEAP32[$325>>2]|0; + $327 = HEAP32[$pNode>>2]|0; + $328 = (($327) + 8|0); + $329 = (($328) + 4|0); + HEAP32[$329>>2] = $326; + $330 = HEAP32[$i>>2]|0; + $331 = ($330|0)>(0); + if ($331) { + HEAP32[$aBlock>>2] = 0; + HEAP32[$nBlock>>2] = 0; + $332 = HEAP32[$i>>2]|0; + $333 = (($332) - 1)|0; + $334 = HEAP32[$8>>2]|0; + $335 = (($334) + 56|0); + $336 = (($335) + ($333<<5)|0); + HEAP32[$pNode>>2] = $336; + $337 = (($reader1) + 16|0); + $338 = $337; + $339 = $338; + $340 = HEAP32[$339>>2]|0; + $341 = (($338) + 4)|0; + $342 = $341; + $343 = HEAP32[$342>>2]|0; + $344 = HEAP32[$pNode>>2]|0; + $345 = $344; + $346 = $345; + HEAP32[$346>>2] = $340; + $347 = (($345) + 4)|0; + $348 = $347; + HEAP32[$348>>2] = $343; + $349 = HEAP32[$3>>2]|0; + $350 = (($reader1) + 16|0); + $351 = $350; + $352 = $351; + $353 = HEAP32[$352>>2]|0; + $354 = (($351) + 4)|0; + $355 = $354; + $356 = HEAP32[$355>>2]|0; + $357 = (_sqlite3Fts3ReadBlock($349,$353,$356,$aBlock,$nBlock,0)|0); + HEAP32[$rc>>2] = $357; + $358 = HEAP32[$pNode>>2]|0; + $359 = (($358) + 20|0); + $360 = HEAP32[$nBlock>>2]|0; + $361 = HEAP32[$3>>2]|0; + $362 = (($361) + 224|0); + $363 = HEAP32[$362>>2]|0; + $364 = ($360|0)>($363|0); + if ($364) { + $365 = HEAP32[$nBlock>>2]|0; + $369 = $365; + } else { + $366 = HEAP32[$3>>2]|0; + $367 = (($366) + 224|0); + $368 = HEAP32[$367>>2]|0; + $369 = $368; + } + _blobGrowBuffer($359,$369,$rc); + $370 = HEAP32[$rc>>2]|0; + $371 = ($370|0)==(0); + if ($371) { + $372 = HEAP32[$pNode>>2]|0; + $373 = (($372) + 20|0); + $374 = HEAP32[$373>>2]|0; + $375 = HEAP32[$aBlock>>2]|0; + $376 = HEAP32[$nBlock>>2]|0; + _memcpy(($374|0),($375|0),($376|0))|0; + $377 = HEAP32[$nBlock>>2]|0; + $378 = HEAP32[$pNode>>2]|0; + $379 = (($378) + 20|0); + $380 = (($379) + 4|0); + HEAP32[$380>>2] = $377; + } + $381 = HEAP32[$aBlock>>2]|0; + _sqlite3_free($381); + } + } + _nodeReaderRelease($reader1); + $382 = HEAP32[$i>>2]|0; + $383 = (($382) + -1)|0; + HEAP32[$i>>2] = $383; + } + } + } + } while(0); + $384 = HEAP32[$pSelect>>2]|0; + $385 = (_sqlite3_reset($384)|0); + HEAP32[$rc2>>2] = $385; + $386 = HEAP32[$rc>>2]|0; + $387 = ($386|0)==(0); + if ($387) { + $388 = HEAP32[$rc2>>2]|0; + HEAP32[$rc>>2] = $388; + } + } + $389 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $389; + $390 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($390|0); +} +function _fts3IncrmergeWriter($p,$0,$1,$iIdx,$pCsr,$pWriter) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + $iIdx = $iIdx|0; + $pCsr = $pCsr|0; + $pWriter = $pWriter|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $16 = 0; + var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $nLeafEst = 0, $pFirstBlock = 0, $pLeafEst = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $2 = sp + 44|0; + $3 = sp + 40|0; + $4 = sp; + $5 = sp + 36|0; + $6 = sp + 32|0; + $7 = sp + 20|0; + $rc = sp + 24|0; + $i = sp + 16|0; + $nLeafEst = sp + 12|0; + $pLeafEst = sp + 8|0; + $pFirstBlock = sp + 28|0; + HEAP32[$3>>2] = $p; + $8 = $4; + $9 = $8; + HEAP32[$9>>2] = $0; + $10 = (($8) + 4)|0; + $11 = $10; + HEAP32[$11>>2] = $1; + HEAP32[$5>>2] = $iIdx; + HEAP32[$6>>2] = $pCsr; + HEAP32[$7>>2] = $pWriter; + HEAP32[$nLeafEst>>2] = 0; + HEAP32[$pLeafEst>>2] = 0; + HEAP32[$pFirstBlock>>2] = 0; + $12 = HEAP32[$3>>2]|0; + $13 = (_fts3SqlStmt($12,29,$pLeafEst,0)|0); + HEAP32[$rc>>2] = $13; + $14 = HEAP32[$rc>>2]|0; + $15 = ($14|0)==(0); + if ($15) { + $16 = HEAP32[$pLeafEst>>2]|0; + $17 = $4; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (($17) + 4)|0; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + (_sqlite3_bind_int64($16,1,$19,$22)|0); + $23 = HEAP32[$pLeafEst>>2]|0; + $24 = HEAP32[$6>>2]|0; + $25 = (($24) + 4|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)<(0); + $28 = $27 << 31 >> 31; + (_sqlite3_bind_int64($23,2,$26,$28)|0); + $29 = HEAP32[$pLeafEst>>2]|0; + $30 = (_sqlite3_step($29)|0); + $31 = (100)==($30|0); + if ($31) { + $32 = HEAP32[$pLeafEst>>2]|0; + $33 = (_sqlite3_column_int($32,0)|0); + HEAP32[$nLeafEst>>2] = $33; + } + $34 = HEAP32[$pLeafEst>>2]|0; + $35 = (_sqlite3_reset($34)|0); + HEAP32[$rc>>2] = $35; + } + $36 = HEAP32[$rc>>2]|0; + $37 = ($36|0)!=(0); + if ($37) { + $38 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $38; + $152 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($152|0); + } + $39 = HEAP32[$3>>2]|0; + $40 = (_fts3SqlStmt($39,10,$pFirstBlock,0)|0); + HEAP32[$rc>>2] = $40; + $41 = HEAP32[$rc>>2]|0; + $42 = ($41|0)==(0); + if ($42) { + $43 = HEAP32[$pFirstBlock>>2]|0; + $44 = (_sqlite3_step($43)|0); + $45 = (100)==($44|0); + if ($45) { + $46 = HEAP32[$pFirstBlock>>2]|0; + $47 = (_sqlite3_column_int64($46,0)|0); + $48 = tempRet0; + $49 = HEAP32[$7>>2]|0; + $50 = (($49) + 24|0); + $51 = $50; + $52 = $51; + HEAP32[$52>>2] = $47; + $53 = (($51) + 4)|0; + $54 = $53; + HEAP32[$54>>2] = $48; + $55 = HEAP32[$7>>2]|0; + $56 = (($55) + 24|0); + $57 = $56; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = (($57) + 4)|0; + $61 = $60; + $62 = HEAP32[$61>>2]|0; + $63 = (_i64Subtract(($59|0),($62|0),1,0)|0); + $64 = tempRet0; + $65 = HEAP32[$7>>2]|0; + $66 = (($65) + 32|0); + $67 = $66; + $68 = $67; + HEAP32[$68>>2] = $63; + $69 = (($67) + 4)|0; + $70 = $69; + HEAP32[$70>>2] = $64; + $71 = HEAP32[$nLeafEst>>2]|0; + $72 = $71<<4; + $73 = ($72|0)<(0); + $74 = $73 << 31 >> 31; + $75 = HEAP32[$7>>2]|0; + $76 = (($75) + 32|0); + $77 = $76; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = (($77) + 4)|0; + $81 = $80; + $82 = HEAP32[$81>>2]|0; + $83 = (_i64Add(($79|0),($82|0),($72|0),($74|0))|0); + $84 = tempRet0; + $85 = $76; + $86 = $85; + HEAP32[$86>>2] = $83; + $87 = (($85) + 4)|0; + $88 = $87; + HEAP32[$88>>2] = $84; + } + $89 = HEAP32[$pFirstBlock>>2]|0; + $90 = (_sqlite3_reset($89)|0); + HEAP32[$rc>>2] = $90; + } + $91 = HEAP32[$rc>>2]|0; + $92 = ($91|0)!=(0); + if ($92) { + $93 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $93; + $152 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($152|0); + } + $94 = HEAP32[$3>>2]|0; + $95 = HEAP32[$7>>2]|0; + $96 = (($95) + 32|0); + $97 = $96; + $98 = $97; + $99 = HEAP32[$98>>2]|0; + $100 = (($97) + 4)|0; + $101 = $100; + $102 = HEAP32[$101>>2]|0; + $103 = (_fts3WriteSegment($94,$99,$102,0,0)|0); + HEAP32[$rc>>2] = $103; + $104 = HEAP32[$rc>>2]|0; + $105 = ($104|0)!=(0); + if ($105) { + $106 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $106; + $152 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($152|0); + } + $107 = $4; + $108 = $107; + $109 = HEAP32[$108>>2]|0; + $110 = (($107) + 4)|0; + $111 = $110; + $112 = HEAP32[$111>>2]|0; + $113 = HEAP32[$7>>2]|0; + $114 = (($113) + 8|0); + $115 = $114; + $116 = $115; + HEAP32[$116>>2] = $109; + $117 = (($115) + 4)|0; + $118 = $117; + HEAP32[$118>>2] = $112; + $119 = HEAP32[$nLeafEst>>2]|0; + $120 = HEAP32[$7>>2]|0; + HEAP32[$120>>2] = $119; + $121 = HEAP32[$5>>2]|0; + $122 = HEAP32[$7>>2]|0; + $123 = (($122) + 16|0); + HEAP32[$123>>2] = $121; + HEAP32[$i>>2] = 0; + while(1) { + $124 = HEAP32[$i>>2]|0; + $125 = ($124|0)<(16); + if (!($125)) { + break; + } + $126 = HEAP32[$7>>2]|0; + $127 = (($126) + 24|0); + $128 = $127; + $129 = $128; + $130 = HEAP32[$129>>2]|0; + $131 = (($128) + 4)|0; + $132 = $131; + $133 = HEAP32[$132>>2]|0; + $134 = HEAP32[$i>>2]|0; + $135 = HEAP32[$7>>2]|0; + $136 = HEAP32[$135>>2]|0; + $137 = Math_imul($134, $136)|0; + $138 = ($137|0)<(0); + $139 = $138 << 31 >> 31; + $140 = (_i64Add(($130|0),($133|0),($137|0),($139|0))|0); + $141 = tempRet0; + $142 = HEAP32[$i>>2]|0; + $143 = HEAP32[$7>>2]|0; + $144 = (($143) + 56|0); + $145 = (($144) + ($142<<5)|0); + $146 = $145; + $147 = $146; + HEAP32[$147>>2] = $140; + $148 = (($146) + 4)|0; + $149 = $148; + HEAP32[$149>>2] = $141; + $150 = HEAP32[$i>>2]|0; + $151 = (($150) + 1)|0; + HEAP32[$i>>2] = $151; + } + HEAP32[$2>>2] = 0; + $152 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($152|0); +} +function _fts3IncrmergeAppend($p,$pWriter,$pCsr) { + $p = $p|0; + $pWriter = $pWriter|0; + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; + var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; + var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; + var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; + var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aDoclist = 0, $nDoclist = 0, $nPrefix = 0; + var $nSpace = 0, $nSuffix = 0, $nTerm = 0, $pLeaf = 0, $rc = 0, $zTerm = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $zTerm = sp + 32|0; + $nTerm = sp + 28|0; + $aDoclist = sp + 24|0; + $nDoclist = sp + 20|0; + $rc = sp + 12|0; + $nSpace = sp + 8|0; + $nPrefix = sp + 4|0; + $nSuffix = sp; + $pLeaf = sp + 16|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pWriter; + HEAP32[$2>>2] = $pCsr; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 40|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$zTerm>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + 44|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$nTerm>>2] = $8; + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 48|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$aDoclist>>2] = $11; + $12 = HEAP32[$2>>2]|0; + $13 = (($12) + 52|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$nDoclist>>2] = $14; + HEAP32[$rc>>2] = 0; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 56|0); + HEAP32[$pLeaf>>2] = $16; + $17 = HEAP32[$pLeaf>>2]|0; + $18 = (($17) + 8|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$pLeaf>>2]|0; + $21 = (($20) + 8|0); + $22 = (($21) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$zTerm>>2]|0; + $25 = HEAP32[$nTerm>>2]|0; + $26 = (_fts3PrefixCompress($19,$23,$24,$25)|0); + HEAP32[$nPrefix>>2] = $26; + $27 = HEAP32[$nTerm>>2]|0; + $28 = HEAP32[$nPrefix>>2]|0; + $29 = (($27) - ($28))|0; + HEAP32[$nSuffix>>2] = $29; + $30 = HEAP32[$nPrefix>>2]|0; + $31 = ($30|0)<(0); + $32 = $31 << 31 >> 31; + $33 = (_sqlite3Fts3VarintLen($30,$32)|0); + HEAP32[$nSpace>>2] = $33; + $34 = HEAP32[$nSuffix>>2]|0; + $35 = ($34|0)<(0); + $36 = $35 << 31 >> 31; + $37 = (_sqlite3Fts3VarintLen($34,$36)|0); + $38 = HEAP32[$nSuffix>>2]|0; + $39 = (($37) + ($38))|0; + $40 = HEAP32[$nSpace>>2]|0; + $41 = (($40) + ($39))|0; + HEAP32[$nSpace>>2] = $41; + $42 = HEAP32[$nDoclist>>2]|0; + $43 = ($42|0)<(0); + $44 = $43 << 31 >> 31; + $45 = (_sqlite3Fts3VarintLen($42,$44)|0); + $46 = HEAP32[$nDoclist>>2]|0; + $47 = (($45) + ($46))|0; + $48 = HEAP32[$nSpace>>2]|0; + $49 = (($48) + ($47))|0; + HEAP32[$nSpace>>2] = $49; + $50 = HEAP32[$pLeaf>>2]|0; + $51 = (($50) + 20|0); + $52 = (($51) + 4|0); + $53 = HEAP32[$52>>2]|0; + $54 = ($53|0)>(0); + if ($54) { + $55 = HEAP32[$pLeaf>>2]|0; + $56 = (($55) + 20|0); + $57 = (($56) + 4|0); + $58 = HEAP32[$57>>2]|0; + $59 = HEAP32[$nSpace>>2]|0; + $60 = (($58) + ($59))|0; + $61 = HEAP32[$0>>2]|0; + $62 = (($61) + 224|0); + $63 = HEAP32[$62>>2]|0; + $64 = ($60|0)>($63|0); + if ($64) { + $65 = HEAP32[$0>>2]|0; + $66 = HEAP32[$pLeaf>>2]|0; + $67 = $66; + $68 = $67; + $69 = HEAP32[$68>>2]|0; + $70 = (($67) + 4)|0; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = HEAP32[$pLeaf>>2]|0; + $74 = (($73) + 20|0); + $75 = HEAP32[$74>>2]|0; + $76 = HEAP32[$pLeaf>>2]|0; + $77 = (($76) + 20|0); + $78 = (($77) + 4|0); + $79 = HEAP32[$78>>2]|0; + $80 = (_fts3WriteSegment($65,$69,$72,$75,$79)|0); + HEAP32[$rc>>2] = $80; + $81 = HEAP32[$1>>2]|0; + $82 = (($81) + 4|0); + $83 = HEAP32[$82>>2]|0; + $84 = (($83) + 1)|0; + HEAP32[$82>>2] = $84; + $85 = HEAP32[$rc>>2]|0; + $86 = ($85|0)==(0); + if ($86) { + $87 = HEAP32[$0>>2]|0; + $88 = HEAP32[$1>>2]|0; + $89 = HEAP32[$zTerm>>2]|0; + $90 = HEAP32[$nPrefix>>2]|0; + $91 = (($90) + 1)|0; + $92 = (_fts3IncrmergePush($87,$88,$89,$91)|0); + HEAP32[$rc>>2] = $92; + } + $93 = HEAP32[$pLeaf>>2]|0; + $94 = $93; + $95 = $94; + $96 = HEAP32[$95>>2]|0; + $97 = (($94) + 4)|0; + $98 = $97; + $99 = HEAP32[$98>>2]|0; + $100 = (_i64Add(($96|0),($99|0),1,0)|0); + $101 = tempRet0; + $102 = $93; + $103 = $102; + HEAP32[$103>>2] = $100; + $104 = (($102) + 4)|0; + $105 = $104; + HEAP32[$105>>2] = $101; + $106 = HEAP32[$pLeaf>>2]|0; + $107 = (($106) + 8|0); + $108 = (($107) + 4|0); + HEAP32[$108>>2] = 0; + $109 = HEAP32[$pLeaf>>2]|0; + $110 = (($109) + 20|0); + $111 = (($110) + 4|0); + HEAP32[$111>>2] = 0; + $112 = HEAP32[$nTerm>>2]|0; + HEAP32[$nSuffix>>2] = $112; + HEAP32[$nSpace>>2] = 1; + $113 = HEAP32[$nSuffix>>2]|0; + $114 = ($113|0)<(0); + $115 = $114 << 31 >> 31; + $116 = (_sqlite3Fts3VarintLen($113,$115)|0); + $117 = HEAP32[$nSuffix>>2]|0; + $118 = (($116) + ($117))|0; + $119 = HEAP32[$nSpace>>2]|0; + $120 = (($119) + ($118))|0; + HEAP32[$nSpace>>2] = $120; + $121 = HEAP32[$nDoclist>>2]|0; + $122 = ($121|0)<(0); + $123 = $122 << 31 >> 31; + $124 = (_sqlite3Fts3VarintLen($121,$123)|0); + $125 = HEAP32[$nDoclist>>2]|0; + $126 = (($124) + ($125))|0; + $127 = HEAP32[$nSpace>>2]|0; + $128 = (($127) + ($126))|0; + HEAP32[$nSpace>>2] = $128; + } + } + $129 = HEAP32[$nSpace>>2]|0; + $130 = ($129|0)<(0); + $131 = $130 << 31 >> 31; + $132 = HEAP32[$1>>2]|0; + $133 = (($132) + 40|0); + $134 = $133; + $135 = $134; + $136 = HEAP32[$135>>2]|0; + $137 = (($134) + 4)|0; + $138 = $137; + $139 = HEAP32[$138>>2]|0; + $140 = (_i64Add(($136|0),($139|0),($129|0),($131|0))|0); + $141 = tempRet0; + $142 = $133; + $143 = $142; + HEAP32[$143>>2] = $140; + $144 = (($142) + 4)|0; + $145 = $144; + HEAP32[$145>>2] = $141; + $146 = HEAP32[$pLeaf>>2]|0; + $147 = (($146) + 20|0); + $148 = HEAP32[$pLeaf>>2]|0; + $149 = (($148) + 20|0); + $150 = (($149) + 4|0); + $151 = HEAP32[$150>>2]|0; + $152 = HEAP32[$nSpace>>2]|0; + $153 = (($151) + ($152))|0; + _blobGrowBuffer($147,$153,$rc); + $154 = HEAP32[$rc>>2]|0; + $155 = ($154|0)==(0); + if (!($155)) { + $176 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($176|0); + } + $156 = HEAP32[$pLeaf>>2]|0; + $157 = (($156) + 20|0); + $158 = (($157) + 4|0); + $159 = HEAP32[$158>>2]|0; + $160 = ($159|0)==(0); + if ($160) { + $161 = HEAP32[$pLeaf>>2]|0; + $162 = (($161) + 20|0); + $163 = (($162) + 4|0); + HEAP32[$163>>2] = 1; + $164 = HEAP32[$pLeaf>>2]|0; + $165 = (($164) + 20|0); + $166 = HEAP32[$165>>2]|0; + HEAP8[$166>>0] = 0; + } + $167 = HEAP32[$pLeaf>>2]|0; + $168 = (($167) + 20|0); + $169 = HEAP32[$pLeaf>>2]|0; + $170 = (($169) + 8|0); + $171 = HEAP32[$zTerm>>2]|0; + $172 = HEAP32[$nTerm>>2]|0; + $173 = HEAP32[$aDoclist>>2]|0; + $174 = HEAP32[$nDoclist>>2]|0; + $175 = (_fts3AppendToNode($168,$170,$171,$172,$173,$174)|0); + HEAP32[$rc>>2] = $175; + $176 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($176|0); +} +function _fts3IncrmergeChomp($p,$0,$1,$pCsr,$pnRem) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + $pCsr = $pCsr|0; + $pnRem = $pnRem|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $i = 0, $j = 0, $nRem = 0, $nTerm = 0, $pSeg = 0, $rc = 0, $zTerm = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $2 = sp + 44|0; + $3 = sp; + $4 = sp + 40|0; + $5 = sp + 36|0; + $i = sp + 32|0; + $nRem = sp + 20|0; + $rc = sp + 24|0; + $pSeg = sp + 16|0; + $j = sp + 12|0; + $zTerm = sp + 8|0; + $nTerm = sp + 28|0; + HEAP32[$2>>2] = $p; + $6 = $3; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + HEAP32[$4>>2] = $pCsr; + HEAP32[$5>>2] = $pnRem; + HEAP32[$nRem>>2] = 0; + HEAP32[$rc>>2] = 0; + $10 = HEAP32[$4>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) - 1)|0; + HEAP32[$i>>2] = $13; + while(1) { + $14 = HEAP32[$i>>2]|0; + $15 = ($14|0)>=(0); + if (!($15)) { + break; + } + $16 = HEAP32[$rc>>2]|0; + $17 = ($16|0)==(0); + if (!($17)) { + break; + } + HEAP32[$pSeg>>2] = 0; + HEAP32[$j>>2] = 0; + while(1) { + $18 = HEAP32[$j>>2]|0; + $19 = HEAP32[$4>>2]|0; + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($18|0)<($21|0); + if (!($22)) { + break; + } + $23 = HEAP32[$j>>2]|0; + $24 = HEAP32[$4>>2]|0; + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + ($23<<2)|0); + $27 = HEAP32[$26>>2]|0; + HEAP32[$pSeg>>2] = $27; + $28 = HEAP32[$pSeg>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$i>>2]|0; + $31 = ($29|0)==($30|0); + if ($31) { + break; + } + $32 = HEAP32[$j>>2]|0; + $33 = (($32) + 1)|0; + HEAP32[$j>>2] = $33; + } + $34 = HEAP32[$pSeg>>2]|0; + $35 = (($34) + 40|0); + $36 = HEAP32[$35>>2]|0; + $37 = ($36|0)==(0|0); + if ($37) { + $38 = HEAP32[$2>>2]|0; + $39 = HEAP32[$pSeg>>2]|0; + $40 = (_fts3DeleteSegment($38,$39)|0); + HEAP32[$rc>>2] = $40; + $41 = HEAP32[$rc>>2]|0; + $42 = ($41|0)==(0); + if ($42) { + $43 = HEAP32[$2>>2]|0; + $44 = $3; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = (($44) + 4)|0; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = HEAP32[$pSeg>>2]|0; + $51 = HEAP32[$50>>2]|0; + $52 = (_fts3RemoveSegdirEntry($43,$46,$49,$51)|0); + HEAP32[$rc>>2] = $52; + } + $53 = HEAP32[$5>>2]|0; + HEAP32[$53>>2] = 0; + } else { + $54 = HEAP32[$pSeg>>2]|0; + $55 = (($54) + 64|0); + $56 = HEAP32[$55>>2]|0; + HEAP32[$zTerm>>2] = $56; + $57 = HEAP32[$pSeg>>2]|0; + $58 = (($57) + 60|0); + $59 = HEAP32[$58>>2]|0; + HEAP32[$nTerm>>2] = $59; + $60 = HEAP32[$2>>2]|0; + $61 = $3; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = (($61) + 4)|0; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = HEAP32[$pSeg>>2]|0; + $68 = HEAP32[$67>>2]|0; + $69 = HEAP32[$zTerm>>2]|0; + $70 = HEAP32[$nTerm>>2]|0; + $71 = (_fts3TruncateSegment($60,$63,$66,$68,$69,$70)|0); + HEAP32[$rc>>2] = $71; + $72 = HEAP32[$nRem>>2]|0; + $73 = (($72) + 1)|0; + HEAP32[$nRem>>2] = $73; + } + $74 = HEAP32[$i>>2]|0; + $75 = (($74) + -1)|0; + HEAP32[$i>>2] = $75; + } + $76 = HEAP32[$rc>>2]|0; + $77 = ($76|0)==(0); + if (!($77)) { + $91 = HEAP32[$nRem>>2]|0; + $92 = HEAP32[$5>>2]|0; + HEAP32[$92>>2] = $91; + $93 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($93|0); + } + $78 = HEAP32[$nRem>>2]|0; + $79 = HEAP32[$4>>2]|0; + $80 = (($79) + 4|0); + $81 = HEAP32[$80>>2]|0; + $82 = ($78|0)!=($81|0); + if (!($82)) { + $91 = HEAP32[$nRem>>2]|0; + $92 = HEAP32[$5>>2]|0; + HEAP32[$92>>2] = $91; + $93 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($93|0); + } + $83 = HEAP32[$2>>2]|0; + $84 = $3; + $85 = $84; + $86 = HEAP32[$85>>2]|0; + $87 = (($84) + 4)|0; + $88 = $87; + $89 = HEAP32[$88>>2]|0; + $90 = (_fts3RepackSegdirLevel($83,$86,$89)|0); + HEAP32[$rc>>2] = $90; + $91 = HEAP32[$nRem>>2]|0; + $92 = HEAP32[$5>>2]|0; + HEAP32[$92>>2] = $91; + $93 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($93|0); +} +function _fts3IncrmergeHintPush($pHint,$0,$1,$nInput,$pRc) { + $pHint = $pHint|0; + $0 = $0|0; + $1 = $1|0; + $nInput = $nInput|0; + $pRc = $pRc|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 16|0; + $3 = sp; + $4 = sp + 8|0; + $5 = sp + 12|0; + HEAP32[$2>>2] = $pHint; + $6 = $3; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + HEAP32[$4>>2] = $nInput; + HEAP32[$5>>2] = $pRc; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 20)|0; + $15 = HEAP32[$5>>2]|0; + _blobGrowBuffer($10,$14,$15); + $16 = HEAP32[$5>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)==(0); + if (!($18)) { + STACKTOP = sp;return; + } + $19 = HEAP32[$2>>2]|0; + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$2>>2]|0; + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + ($21)|0); + $25 = $3; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = (_sqlite3Fts3PutVarint($24,$27,$30)|0); + $32 = HEAP32[$2>>2]|0; + $33 = (($32) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = (($34) + ($31))|0; + HEAP32[$33>>2] = $35; + $36 = HEAP32[$2>>2]|0; + $37 = (($36) + 4|0); + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$2>>2]|0; + $40 = HEAP32[$39>>2]|0; + $41 = (($40) + ($38)|0); + $42 = HEAP32[$4>>2]|0; + $43 = ($42|0)<(0); + $44 = $43 << 31 >> 31; + $45 = (_sqlite3Fts3PutVarint($41,$42,$44)|0); + $46 = HEAP32[$2>>2]|0; + $47 = (($46) + 4|0); + $48 = HEAP32[$47>>2]|0; + $49 = (($48) + ($45))|0; + HEAP32[$47>>2] = $49; + STACKTOP = sp;return; +} +function _fts3IncrmergeRelease($p,$pWriter,$pRc) { + $p = $p|0; + $pWriter = $pWriter|0; + $pRc = $pRc|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iRoot = 0, $pBlock = 0, $pNode = 0, $pNode1 = 0, $pRoot = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $i = sp + 24|0; + $iRoot = sp + 20|0; + $pRoot = sp + 16|0; + $rc = sp + 8|0; + $pNode = sp + 4|0; + $pBlock = sp; + $pNode1 = sp + 12|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pWriter; + HEAP32[$2>>2] = $pRc; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$rc>>2] = $4; + HEAP32[$iRoot>>2] = 15; + while(1) { + $5 = HEAP32[$iRoot>>2]|0; + $6 = ($5|0)>=(0); + if (!($6)) { + break; + } + $7 = HEAP32[$iRoot>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 56|0); + $10 = (($9) + ($7<<5)|0); + HEAP32[$pNode>>2] = $10; + $11 = HEAP32[$pNode>>2]|0; + $12 = (($11) + 20|0); + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)>(0); + if ($15) { + break; + } + $16 = HEAP32[$pNode>>2]|0; + $17 = (($16) + 20|0); + $18 = HEAP32[$17>>2]|0; + _sqlite3_free($18); + $19 = HEAP32[$pNode>>2]|0; + $20 = (($19) + 8|0); + $21 = HEAP32[$20>>2]|0; + _sqlite3_free($21); + $22 = HEAP32[$iRoot>>2]|0; + $23 = (($22) + -1)|0; + HEAP32[$iRoot>>2] = $23; + } + $24 = HEAP32[$iRoot>>2]|0; + $25 = ($24|0)<(0); + if ($25) { + STACKTOP = sp;return; + } + $26 = HEAP32[$iRoot>>2]|0; + $27 = ($26|0)==(0); + if ($27) { + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 56|0); + $30 = (($29) + 32|0); + $31 = (($30) + 20|0); + HEAP32[$pBlock>>2] = $31; + $32 = HEAP32[$pBlock>>2]|0; + _blobGrowBuffer($32,11,$rc); + $33 = HEAP32[$rc>>2]|0; + $34 = ($33|0)==(0); + if ($34) { + $35 = HEAP32[$pBlock>>2]|0; + $36 = HEAP32[$35>>2]|0; + HEAP8[$36>>0] = 1; + $37 = HEAP32[$pBlock>>2]|0; + $38 = HEAP32[$37>>2]|0; + $39 = (($38) + 1|0); + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 56|0); + $42 = $41; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (_sqlite3Fts3PutVarint($39,$44,$47)|0); + $49 = (1 + ($48))|0; + $50 = HEAP32[$pBlock>>2]|0; + $51 = (($50) + 4|0); + HEAP32[$51>>2] = $49; + } + HEAP32[$iRoot>>2] = 1; + } + $52 = HEAP32[$iRoot>>2]|0; + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 56|0); + $55 = (($54) + ($52<<5)|0); + HEAP32[$pRoot>>2] = $55; + HEAP32[$i>>2] = 0; + while(1) { + $56 = HEAP32[$i>>2]|0; + $57 = HEAP32[$iRoot>>2]|0; + $58 = ($56|0)<($57|0); + if (!($58)) { + break; + } + $59 = HEAP32[$i>>2]|0; + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 56|0); + $62 = (($61) + ($59<<5)|0); + HEAP32[$pNode1>>2] = $62; + $63 = HEAP32[$pNode1>>2]|0; + $64 = (($63) + 20|0); + $65 = (($64) + 4|0); + $66 = HEAP32[$65>>2]|0; + $67 = ($66|0)>(0); + if ($67) { + $68 = HEAP32[$rc>>2]|0; + $69 = ($68|0)==(0); + if ($69) { + $70 = HEAP32[$0>>2]|0; + $71 = HEAP32[$pNode1>>2]|0; + $72 = $71; + $73 = $72; + $74 = HEAP32[$73>>2]|0; + $75 = (($72) + 4)|0; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = HEAP32[$pNode1>>2]|0; + $79 = (($78) + 20|0); + $80 = HEAP32[$79>>2]|0; + $81 = HEAP32[$pNode1>>2]|0; + $82 = (($81) + 20|0); + $83 = (($82) + 4|0); + $84 = HEAP32[$83>>2]|0; + $85 = (_fts3WriteSegment($70,$74,$77,$80,$84)|0); + HEAP32[$rc>>2] = $85; + } + } + $86 = HEAP32[$pNode1>>2]|0; + $87 = (($86) + 20|0); + $88 = HEAP32[$87>>2]|0; + _sqlite3_free($88); + $89 = HEAP32[$pNode1>>2]|0; + $90 = (($89) + 8|0); + $91 = HEAP32[$90>>2]|0; + _sqlite3_free($91); + $92 = HEAP32[$i>>2]|0; + $93 = (($92) + 1)|0; + HEAP32[$i>>2] = $93; + } + $94 = HEAP32[$rc>>2]|0; + $95 = ($94|0)==(0); + if ($95) { + $96 = HEAP32[$0>>2]|0; + $97 = HEAP32[$1>>2]|0; + $98 = (($97) + 8|0); + $99 = $98; + $100 = $99; + $101 = HEAP32[$100>>2]|0; + $102 = (($99) + 4)|0; + $103 = $102; + $104 = HEAP32[$103>>2]|0; + $105 = (_i64Add(($101|0),($104|0),1,0)|0); + $106 = tempRet0; + $107 = HEAP32[$1>>2]|0; + $108 = (($107) + 16|0); + $109 = HEAP32[$108>>2]|0; + $110 = HEAP32[$1>>2]|0; + $111 = (($110) + 24|0); + $112 = $111; + $113 = $112; + $114 = HEAP32[$113>>2]|0; + $115 = (($112) + 4)|0; + $116 = $115; + $117 = HEAP32[$116>>2]|0; + $118 = HEAP32[$1>>2]|0; + $119 = (($118) + 56|0); + $120 = $119; + $121 = $120; + $122 = HEAP32[$121>>2]|0; + $123 = (($120) + 4)|0; + $124 = $123; + $125 = HEAP32[$124>>2]|0; + $126 = HEAP32[$1>>2]|0; + $127 = (($126) + 32|0); + $128 = $127; + $129 = $128; + $130 = HEAP32[$129>>2]|0; + $131 = (($128) + 4)|0; + $132 = $131; + $133 = HEAP32[$132>>2]|0; + $134 = HEAP32[$1>>2]|0; + $135 = (($134) + 48|0); + $136 = HEAP8[$135>>0]|0; + $137 = $136&255; + $138 = ($137|0)==(0); + if ($138) { + $139 = HEAP32[$1>>2]|0; + $140 = (($139) + 40|0); + $141 = $140; + $142 = $141; + $143 = HEAP32[$142>>2]|0; + $144 = (($141) + 4)|0; + $145 = $144; + $146 = HEAP32[$145>>2]|0; + $154 = $143;$155 = $146; + } else { + $154 = 0;$155 = 0; + } + $147 = HEAP32[$pRoot>>2]|0; + $148 = (($147) + 20|0); + $149 = HEAP32[$148>>2]|0; + $150 = HEAP32[$pRoot>>2]|0; + $151 = (($150) + 20|0); + $152 = (($151) + 4|0); + $153 = HEAP32[$152>>2]|0; + $156 = (_fts3WriteSegdir($96,$105,$106,$109,$114,$117,$122,$125,$130,$133,$154,$155,$149,$153)|0); + HEAP32[$rc>>2] = $156; + } + $157 = HEAP32[$pRoot>>2]|0; + $158 = (($157) + 20|0); + $159 = HEAP32[$158>>2]|0; + _sqlite3_free($159); + $160 = HEAP32[$pRoot>>2]|0; + $161 = (($160) + 8|0); + $162 = HEAP32[$161>>2]|0; + _sqlite3_free($162); + $163 = HEAP32[$rc>>2]|0; + $164 = HEAP32[$2>>2]|0; + HEAP32[$164>>2] = $163; + STACKTOP = sp;return; +} +function _fts3IncrmergeHintStore($p,$pHint) { + $p = $p|0; + $pHint = $pHint|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pReplace = 0, $rc = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $pReplace = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pHint; + HEAP32[$pReplace>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (_fts3SqlStmt($2,23,$pReplace,0)|0); + HEAP32[$rc>>2] = $3; + $4 = HEAP32[$rc>>2]|0; + $5 = ($4|0)==(0); + if (!($5)) { + $16 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($16|0); + } + $6 = HEAP32[$pReplace>>2]|0; + (_sqlite3_bind_int($6,1,1)|0); + $7 = HEAP32[$pReplace>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + (_sqlite3_bind_blob($7,2,$9,$12,0)|0); + $13 = HEAP32[$pReplace>>2]|0; + (_sqlite3_step($13)|0); + $14 = HEAP32[$pReplace>>2]|0; + $15 = (_sqlite3_reset($14)|0); + HEAP32[$rc>>2] = $15; + $16 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($16|0); +} +function _blobGrowBuffer($pBlob,$nMin,$pRc) { + $pBlob = $pBlob|0; + $nMin = $nMin|0; + $pRc = $pRc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $nAlloc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $nAlloc = sp + 8|0; + $a = sp + 12|0; + HEAP32[$0>>2] = $pBlob; + HEAP32[$1>>2] = $nMin; + HEAP32[$2>>2] = $pRc; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)==(0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 8|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($6|0)>($9|0); + if (!($10)) { + STACKTOP = sp;return; + } + $11 = HEAP32[$1>>2]|0; + HEAP32[$nAlloc>>2] = $11; + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$nAlloc>>2]|0; + $15 = (_sqlite3_realloc($13,$14)|0); + HEAP32[$a>>2] = $15; + $16 = HEAP32[$a>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = HEAP32[$nAlloc>>2]|0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 8|0); + HEAP32[$20>>2] = $18; + $21 = HEAP32[$a>>2]|0; + $22 = HEAP32[$0>>2]|0; + HEAP32[$22>>2] = $21; + STACKTOP = sp;return; + } else { + $23 = HEAP32[$2>>2]|0; + HEAP32[$23>>2] = 7; + STACKTOP = sp;return; + } +} +function _fts3RemoveSegdirEntry($p,$0,$1,$iIdx) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + $iIdx = $iIdx|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDelete = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 20|0; + $3 = sp; + $4 = sp + 8|0; + $rc = sp + 12|0; + $pDelete = sp + 16|0; + HEAP32[$2>>2] = $p; + $5 = $3; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + HEAP32[$4>>2] = $iIdx; + HEAP32[$pDelete>>2] = 0; + $9 = HEAP32[$2>>2]|0; + $10 = (_fts3SqlStmt($9,30,$pDelete,0)|0); + HEAP32[$rc>>2] = $10; + $11 = HEAP32[$rc>>2]|0; + $12 = ($11|0)==(0); + if (!($12)) { + $25 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($25|0); + } + $13 = HEAP32[$pDelete>>2]|0; + $14 = $3; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + (_sqlite3_bind_int64($13,1,$16,$19)|0); + $20 = HEAP32[$pDelete>>2]|0; + $21 = HEAP32[$4>>2]|0; + (_sqlite3_bind_int($20,2,$21)|0); + $22 = HEAP32[$pDelete>>2]|0; + (_sqlite3_step($22)|0); + $23 = HEAP32[$pDelete>>2]|0; + $24 = (_sqlite3_reset($23)|0); + HEAP32[$rc>>2] = $24; + $25 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($25|0); +} +function _fts3TruncateSegment($p,$0,$1,$iIdx,$zTerm,$nTerm) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + $iIdx = $iIdx|0; + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; + var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aBlock = 0, $aRoot = 0, $block = 0, $iBlock = 0, $iNewStart = 0, $iOldStart = 0; + var $nBlock = 0, $nRoot = 0, $pChomp = 0, $pDel = 0, $pFetch = 0, $rc = 0, $rc2 = 0, $root = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $2 = sp + 104|0; + $3 = sp; + $4 = sp + 100|0; + $5 = sp + 96|0; + $6 = sp + 92|0; + $rc = sp + 88|0; + $root = sp + 76|0; + $block = sp + 64|0; + $iBlock = sp + 16|0; + $iNewStart = sp + 24|0; + $iOldStart = sp + 8|0; + $pFetch = sp + 40|0; + $rc2 = sp + 32|0; + $aRoot = sp + 60|0; + $nRoot = sp + 44|0; + $aBlock = sp + 48|0; + $nBlock = sp + 52|0; + $pDel = sp + 56|0; + $pChomp = sp + 36|0; + HEAP32[$2>>2] = $p; + $7 = $3; + $8 = $7; + HEAP32[$8>>2] = $0; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = $1; + HEAP32[$4>>2] = $iIdx; + HEAP32[$5>>2] = $zTerm; + HEAP32[$6>>2] = $nTerm; + HEAP32[$rc>>2] = 0; + ;HEAP32[$root+0>>2]=0|0;HEAP32[$root+4>>2]=0|0;HEAP32[$root+8>>2]=0|0; + ;HEAP32[$block+0>>2]=0|0;HEAP32[$block+4>>2]=0|0;HEAP32[$block+8>>2]=0|0; + $11 = $iBlock; + $12 = $11; + HEAP32[$12>>2] = 0; + $13 = (($11) + 4)|0; + $14 = $13; + HEAP32[$14>>2] = 0; + $15 = $iNewStart; + $16 = $15; + HEAP32[$16>>2] = 0; + $17 = (($15) + 4)|0; + $18 = $17; + HEAP32[$18>>2] = 0; + $19 = $iOldStart; + $20 = $19; + HEAP32[$20>>2] = 0; + $21 = (($19) + 4)|0; + $22 = $21; + HEAP32[$22>>2] = 0; + HEAP32[$pFetch>>2] = 0; + $23 = HEAP32[$2>>2]|0; + $24 = (_fts3SqlStmt($23,32,$pFetch,0)|0); + HEAP32[$rc>>2] = $24; + $25 = HEAP32[$rc>>2]|0; + $26 = ($25|0)==(0); + if ($26) { + $27 = HEAP32[$pFetch>>2]|0; + $28 = $3; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = (($28) + 4)|0; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + (_sqlite3_bind_int64($27,1,$30,$33)|0); + $34 = HEAP32[$pFetch>>2]|0; + $35 = HEAP32[$4>>2]|0; + (_sqlite3_bind_int($34,2,$35)|0); + $36 = HEAP32[$pFetch>>2]|0; + $37 = (_sqlite3_step($36)|0); + $38 = (100)==($37|0); + if ($38) { + $39 = HEAP32[$pFetch>>2]|0; + $40 = (_sqlite3_column_blob($39,4)|0); + HEAP32[$aRoot>>2] = $40; + $41 = HEAP32[$pFetch>>2]|0; + $42 = (_sqlite3_column_bytes($41,4)|0); + HEAP32[$nRoot>>2] = $42; + $43 = HEAP32[$pFetch>>2]|0; + $44 = (_sqlite3_column_int64($43,1)|0); + $45 = tempRet0; + $46 = $iOldStart; + $47 = $46; + HEAP32[$47>>2] = $44; + $48 = (($46) + 4)|0; + $49 = $48; + HEAP32[$49>>2] = $45; + $50 = HEAP32[$aRoot>>2]|0; + $51 = HEAP32[$nRoot>>2]|0; + $52 = HEAP32[$5>>2]|0; + $53 = HEAP32[$6>>2]|0; + $54 = (_fts3TruncateNode($50,$51,$root,$52,$53,$iBlock)|0); + HEAP32[$rc>>2] = $54; + } + $55 = HEAP32[$pFetch>>2]|0; + $56 = (_sqlite3_reset($55)|0); + HEAP32[$rc2>>2] = $56; + $57 = HEAP32[$rc>>2]|0; + $58 = ($57|0)==(0); + if ($58) { + $59 = HEAP32[$rc2>>2]|0; + HEAP32[$rc>>2] = $59; + } + } + while(1) { + $60 = HEAP32[$rc>>2]|0; + $61 = ($60|0)==(0); + if (!($61)) { + break; + } + $62 = $iBlock; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (($62) + 4)|0; + $66 = $65; + $67 = HEAP32[$66>>2]|0; + $68 = ($64|0)!=(0); + $69 = ($67|0)!=(0); + $70 = $68 | $69; + if (!($70)) { + break; + } + HEAP32[$aBlock>>2] = 0; + HEAP32[$nBlock>>2] = 0; + $71 = $iBlock; + $72 = $71; + $73 = HEAP32[$72>>2]|0; + $74 = (($71) + 4)|0; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = $iNewStart; + $78 = $77; + HEAP32[$78>>2] = $73; + $79 = (($77) + 4)|0; + $80 = $79; + HEAP32[$80>>2] = $76; + $81 = HEAP32[$2>>2]|0; + $82 = $iBlock; + $83 = $82; + $84 = HEAP32[$83>>2]|0; + $85 = (($82) + 4)|0; + $86 = $85; + $87 = HEAP32[$86>>2]|0; + $88 = (_sqlite3Fts3ReadBlock($81,$84,$87,$aBlock,$nBlock,0)|0); + HEAP32[$rc>>2] = $88; + $89 = HEAP32[$rc>>2]|0; + $90 = ($89|0)==(0); + if ($90) { + $91 = HEAP32[$aBlock>>2]|0; + $92 = HEAP32[$nBlock>>2]|0; + $93 = HEAP32[$5>>2]|0; + $94 = HEAP32[$6>>2]|0; + $95 = (_fts3TruncateNode($91,$92,$block,$93,$94,$iBlock)|0); + HEAP32[$rc>>2] = $95; + } + $96 = HEAP32[$rc>>2]|0; + $97 = ($96|0)==(0); + if ($97) { + $98 = HEAP32[$2>>2]|0; + $99 = $iNewStart; + $100 = $99; + $101 = HEAP32[$100>>2]|0; + $102 = (($99) + 4)|0; + $103 = $102; + $104 = HEAP32[$103>>2]|0; + $105 = HEAP32[$block>>2]|0; + $106 = (($block) + 4|0); + $107 = HEAP32[$106>>2]|0; + $108 = (_fts3WriteSegment($98,$101,$104,$105,$107)|0); + HEAP32[$rc>>2] = $108; + } + $109 = HEAP32[$aBlock>>2]|0; + _sqlite3_free($109); + } + $110 = HEAP32[$rc>>2]|0; + $111 = ($110|0)==(0); + if ($111) { + $112 = $iNewStart; + $113 = $112; + $114 = HEAP32[$113>>2]|0; + $115 = (($112) + 4)|0; + $116 = $115; + $117 = HEAP32[$116>>2]|0; + $118 = ($114|0)!=(0); + $119 = ($117|0)!=(0); + $120 = $118 | $119; + if ($120) { + HEAP32[$pDel>>2] = 0; + $121 = HEAP32[$2>>2]|0; + $122 = (_fts3SqlStmt($121,17,$pDel,0)|0); + HEAP32[$rc>>2] = $122; + $123 = HEAP32[$rc>>2]|0; + $124 = ($123|0)==(0); + if ($124) { + $125 = HEAP32[$pDel>>2]|0; + $126 = $iOldStart; + $127 = $126; + $128 = HEAP32[$127>>2]|0; + $129 = (($126) + 4)|0; + $130 = $129; + $131 = HEAP32[$130>>2]|0; + (_sqlite3_bind_int64($125,1,$128,$131)|0); + $132 = HEAP32[$pDel>>2]|0; + $133 = $iNewStart; + $134 = $133; + $135 = HEAP32[$134>>2]|0; + $136 = (($133) + 4)|0; + $137 = $136; + $138 = HEAP32[$137>>2]|0; + $139 = (_i64Subtract(($135|0),($138|0),1,0)|0); + $140 = tempRet0; + (_sqlite3_bind_int64($132,2,$139,$140)|0); + $141 = HEAP32[$pDel>>2]|0; + (_sqlite3_step($141)|0); + $142 = HEAP32[$pDel>>2]|0; + $143 = (_sqlite3_reset($142)|0); + HEAP32[$rc>>2] = $143; + } + } + } + $144 = HEAP32[$rc>>2]|0; + $145 = ($144|0)==(0); + if (!($145)) { + $173 = HEAP32[$root>>2]|0; + _sqlite3_free($173); + $174 = HEAP32[$block>>2]|0; + _sqlite3_free($174); + $175 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($175|0); + } + HEAP32[$pChomp>>2] = 0; + $146 = HEAP32[$2>>2]|0; + $147 = (_fts3SqlStmt($146,33,$pChomp,0)|0); + HEAP32[$rc>>2] = $147; + $148 = HEAP32[$rc>>2]|0; + $149 = ($148|0)==(0); + if (!($149)) { + $173 = HEAP32[$root>>2]|0; + _sqlite3_free($173); + $174 = HEAP32[$block>>2]|0; + _sqlite3_free($174); + $175 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($175|0); + } + $150 = HEAP32[$pChomp>>2]|0; + $151 = $iNewStart; + $152 = $151; + $153 = HEAP32[$152>>2]|0; + $154 = (($151) + 4)|0; + $155 = $154; + $156 = HEAP32[$155>>2]|0; + (_sqlite3_bind_int64($150,1,$153,$156)|0); + $157 = HEAP32[$pChomp>>2]|0; + $158 = HEAP32[$root>>2]|0; + $159 = (($root) + 4|0); + $160 = HEAP32[$159>>2]|0; + (_sqlite3_bind_blob($157,2,$158,$160,0)|0); + $161 = HEAP32[$pChomp>>2]|0; + $162 = $3; + $163 = $162; + $164 = HEAP32[$163>>2]|0; + $165 = (($162) + 4)|0; + $166 = $165; + $167 = HEAP32[$166>>2]|0; + (_sqlite3_bind_int64($161,3,$164,$167)|0); + $168 = HEAP32[$pChomp>>2]|0; + $169 = HEAP32[$4>>2]|0; + (_sqlite3_bind_int($168,4,$169)|0); + $170 = HEAP32[$pChomp>>2]|0; + (_sqlite3_step($170)|0); + $171 = HEAP32[$pChomp>>2]|0; + $172 = (_sqlite3_reset($171)|0); + HEAP32[$rc>>2] = $172; + $173 = HEAP32[$root>>2]|0; + _sqlite3_free($173); + $174 = HEAP32[$block>>2]|0; + _sqlite3_free($174); + $175 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($175|0); +} +function _fts3RepackSegdirLevel($p,$0,$1) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $aIdx = 0, $aNew = 0, $i = 0, $nAlloc = 0, $nIdx = 0, $pSelect = 0, $pUpdate = 0, $rc = 0, $rc2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $2 = sp + 44|0; + $3 = sp; + $rc = sp + 40|0; + $aIdx = sp + 36|0; + $nIdx = sp + 32|0; + $nAlloc = sp + 20|0; + $i = sp + 24|0; + $pSelect = sp + 16|0; + $pUpdate = sp + 12|0; + $rc2 = sp + 8|0; + $aNew = sp + 28|0; + HEAP32[$2>>2] = $p; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + HEAP32[$aIdx>>2] = 0; + HEAP32[$nIdx>>2] = 0; + HEAP32[$nAlloc>>2] = 0; + HEAP32[$pSelect>>2] = 0; + HEAP32[$pUpdate>>2] = 0; + $8 = HEAP32[$2>>2]|0; + $9 = (_fts3SqlStmt($8,35,$pSelect,0)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + $11 = ($10|0)==(0); + if ($11) { + $12 = HEAP32[$pSelect>>2]|0; + $13 = $3; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (($13) + 4)|0; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + (_sqlite3_bind_int64($12,1,$15,$18)|0); + while(1) { + $19 = HEAP32[$pSelect>>2]|0; + $20 = (_sqlite3_step($19)|0); + $21 = (100)==($20|0); + if (!($21)) { + break; + } + $22 = HEAP32[$nIdx>>2]|0; + $23 = HEAP32[$nAlloc>>2]|0; + $24 = ($22|0)>=($23|0); + if ($24) { + $25 = HEAP32[$nAlloc>>2]|0; + $26 = (($25) + 16)|0; + HEAP32[$nAlloc>>2] = $26; + $27 = HEAP32[$aIdx>>2]|0; + $28 = HEAP32[$nAlloc>>2]|0; + $29 = $28<<2; + $30 = (_sqlite3_realloc($27,$29)|0); + HEAP32[$aNew>>2] = $30; + $31 = HEAP32[$aNew>>2]|0; + $32 = ($31|0)!=(0|0); + if (!($32)) { + label = 6; + break; + } + $33 = HEAP32[$aNew>>2]|0; + HEAP32[$aIdx>>2] = $33; + } + $34 = HEAP32[$pSelect>>2]|0; + $35 = (_sqlite3_column_int($34,0)|0); + $36 = HEAP32[$nIdx>>2]|0; + $37 = (($36) + 1)|0; + HEAP32[$nIdx>>2] = $37; + $38 = HEAP32[$aIdx>>2]|0; + $39 = (($38) + ($36<<2)|0); + HEAP32[$39>>2] = $35; + } + if ((label|0) == 6) { + HEAP32[$rc>>2] = 7; + } + $40 = HEAP32[$pSelect>>2]|0; + $41 = (_sqlite3_reset($40)|0); + HEAP32[$rc2>>2] = $41; + $42 = HEAP32[$rc>>2]|0; + $43 = ($42|0)==(0); + if ($43) { + $44 = HEAP32[$rc2>>2]|0; + HEAP32[$rc>>2] = $44; + } + } + $45 = HEAP32[$rc>>2]|0; + $46 = ($45|0)==(0); + if ($46) { + $47 = HEAP32[$2>>2]|0; + $48 = (_fts3SqlStmt($47,31,$pUpdate,0)|0); + HEAP32[$rc>>2] = $48; + } + $49 = HEAP32[$rc>>2]|0; + $50 = ($49|0)==(0); + if ($50) { + $51 = HEAP32[$pUpdate>>2]|0; + $52 = $3; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = (($52) + 4)|0; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + (_sqlite3_bind_int64($51,2,$54,$57)|0); + } + $58 = HEAP32[$2>>2]|0; + $59 = (($58) + 232|0); + HEAP8[$59>>0] = 1; + HEAP32[$i>>2] = 0; + while(1) { + $60 = HEAP32[$rc>>2]|0; + $61 = ($60|0)==(0); + if (!($61)) { + label = 21; + break; + } + $62 = HEAP32[$i>>2]|0; + $63 = HEAP32[$nIdx>>2]|0; + $64 = ($62|0)<($63|0); + if (!($64)) { + label = 21; + break; + } + $65 = HEAP32[$i>>2]|0; + $66 = HEAP32[$aIdx>>2]|0; + $67 = (($66) + ($65<<2)|0); + $68 = HEAP32[$67>>2]|0; + $69 = HEAP32[$i>>2]|0; + $70 = ($68|0)!=($69|0); + if ($70) { + $71 = HEAP32[$pUpdate>>2]|0; + $72 = HEAP32[$i>>2]|0; + $73 = HEAP32[$aIdx>>2]|0; + $74 = (($73) + ($72<<2)|0); + $75 = HEAP32[$74>>2]|0; + (_sqlite3_bind_int($71,3,$75)|0); + $76 = HEAP32[$pUpdate>>2]|0; + $77 = HEAP32[$i>>2]|0; + (_sqlite3_bind_int($76,1,$77)|0); + $78 = HEAP32[$pUpdate>>2]|0; + (_sqlite3_step($78)|0); + $79 = HEAP32[$pUpdate>>2]|0; + $80 = (_sqlite3_reset($79)|0); + HEAP32[$rc>>2] = $80; + } + $81 = HEAP32[$i>>2]|0; + $82 = (($81) + 1)|0; + HEAP32[$i>>2] = $82; + } + if ((label|0) == 21) { + $83 = HEAP32[$2>>2]|0; + $84 = (($83) + 232|0); + HEAP8[$84>>0] = 0; + $85 = HEAP32[$aIdx>>2]|0; + _sqlite3_free($85); + $86 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($86|0); + } + return 0|0; +} +function _fts3TruncateNode($aNode,$nNode,$pNew,$zTerm,$nTerm,$piBlock) { + $aNode = $aNode|0; + $nNode = $nNode|0; + $pNew = $pNew|0; + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + $piBlock = $piBlock|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0; + var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bLeaf = 0, $prev = 0, $rc = 0, $reader = 0, $res = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $0 = sp + 96|0; + $1 = sp + 92|0; + $2 = sp + 88|0; + $3 = sp + 84|0; + $4 = sp + 80|0; + $5 = sp + 76|0; + $6 = sp + 72|0; + $reader = sp; + $prev = sp + 52|0; + $rc = sp + 48|0; + $bLeaf = sp + 64|0; + $res = sp + 68|0; + HEAP32[$1>>2] = $aNode; + HEAP32[$2>>2] = $nNode; + HEAP32[$3>>2] = $pNew; + HEAP32[$4>>2] = $zTerm; + HEAP32[$5>>2] = $nTerm; + HEAP32[$6>>2] = $piBlock; + ;HEAP32[$prev+0>>2]=0|0;HEAP32[$prev+4>>2]=0|0;HEAP32[$prev+8>>2]=0|0; + HEAP32[$rc>>2] = 0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP8[$7>>0]|0; + $9 = $8 << 24 >> 24; + $10 = ($9|0)==(0); + $11 = $10&1; + HEAP32[$bLeaf>>2] = $11; + $12 = HEAP32[$3>>2]|0; + $13 = HEAP32[$2>>2]|0; + _blobGrowBuffer($12,$13,$rc); + $14 = HEAP32[$rc>>2]|0; + $15 = ($14|0)!=(0); + if ($15) { + $16 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $16; + $110 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($110|0); + } + $17 = HEAP32[$3>>2]|0; + $18 = (($17) + 4|0); + HEAP32[$18>>2] = 0; + $19 = HEAP32[$1>>2]|0; + $20 = HEAP32[$2>>2]|0; + $21 = (_nodeReaderInit($reader,$19,$20)|0); + HEAP32[$rc>>2] = $21; + while(1) { + $22 = HEAP32[$rc>>2]|0; + $23 = ($22|0)==(0); + if (!($23)) { + break; + } + $24 = HEAP32[$reader>>2]|0; + $25 = ($24|0)!=(0|0); + if (!($25)) { + break; + } + $26 = HEAP32[$3>>2]|0; + $27 = (($26) + 4|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)==(0); + do { + if ($29) { + $30 = (($reader) + 24|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($reader) + 24|0); + $33 = (($32) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$4>>2]|0; + $36 = HEAP32[$5>>2]|0; + $37 = (_fts3TermCmp($31,$34,$35,$36)|0); + HEAP32[$res>>2] = $37; + $38 = HEAP32[$res>>2]|0; + $39 = ($38|0)<(0); + if (!($39)) { + $40 = HEAP32[$bLeaf>>2]|0; + $41 = ($40|0)==(0); + if ($41) { + $42 = HEAP32[$res>>2]|0; + $43 = ($42|0)==(0); + if ($43) { + break; + } + } + $44 = HEAP32[$3>>2]|0; + $45 = HEAP32[$1>>2]|0; + $46 = HEAP8[$45>>0]|0; + $47 = $46 << 24 >> 24; + $48 = (($reader) + 16|0); + $49 = $48; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = (($49) + 4)|0; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + _fts3StartNode($44,$47,$51,$54); + $55 = (($reader) + 16|0); + $56 = $55; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = (($56) + 4)|0; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$6>>2]|0; + $63 = $62; + $64 = $63; + HEAP32[$64>>2] = $58; + $65 = (($63) + 4)|0; + $66 = $65; + HEAP32[$66>>2] = $61; + label = 11; + } + } else { + label = 11; + } + } while(0); + if ((label|0) == 11) { + label = 0; + $67 = HEAP32[$3>>2]|0; + $68 = (($reader) + 24|0); + $69 = HEAP32[$68>>2]|0; + $70 = (($reader) + 24|0); + $71 = (($70) + 4|0); + $72 = HEAP32[$71>>2]|0; + $73 = (($reader) + 36|0); + $74 = HEAP32[$73>>2]|0; + $75 = (($reader) + 40|0); + $76 = HEAP32[$75>>2]|0; + $77 = (_fts3AppendToNode($67,$prev,$69,$72,$74,$76)|0); + HEAP32[$rc>>2] = $77; + $78 = HEAP32[$rc>>2]|0; + $79 = ($78|0)!=(0); + if ($79) { + break; + } + } + $80 = (_nodeReaderNext($reader)|0); + HEAP32[$rc>>2] = $80; + } + $81 = HEAP32[$3>>2]|0; + $82 = (($81) + 4|0); + $83 = HEAP32[$82>>2]|0; + $84 = ($83|0)==(0); + if ($84) { + $85 = HEAP32[$3>>2]|0; + $86 = HEAP32[$1>>2]|0; + $87 = HEAP8[$86>>0]|0; + $88 = $87 << 24 >> 24; + $89 = (($reader) + 16|0); + $90 = $89; + $91 = $90; + $92 = HEAP32[$91>>2]|0; + $93 = (($90) + 4)|0; + $94 = $93; + $95 = HEAP32[$94>>2]|0; + _fts3StartNode($85,$88,$92,$95); + $96 = (($reader) + 16|0); + $97 = $96; + $98 = $97; + $99 = HEAP32[$98>>2]|0; + $100 = (($97) + 4)|0; + $101 = $100; + $102 = HEAP32[$101>>2]|0; + $103 = HEAP32[$6>>2]|0; + $104 = $103; + $105 = $104; + HEAP32[$105>>2] = $99; + $106 = (($104) + 4)|0; + $107 = $106; + HEAP32[$107>>2] = $102; + } + _nodeReaderRelease($reader); + $108 = HEAP32[$prev>>2]|0; + _sqlite3_free($108); + $109 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $109; + $110 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($110|0); +} +function _nodeReaderInit($p,$aNode,$nNode) { + $p = $p|0; + $aNode = $aNode|0; + $nNode = $nNode|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $aNode; + HEAP32[$2>>2] = $nNode; + $3 = HEAP32[$0>>2]|0; + dest=$3+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$0>>2]|0; + HEAP32[$5>>2] = $4; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 4|0); + HEAP32[$8>>2] = $6; + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = HEAP8[$10>>0]|0; + $12 = ($11<<24>>24)!=(0); + $13 = HEAP32[$0>>2]|0; + if ($12) { + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + 1|0); + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 16|0); + $18 = (_sqlite3Fts3GetVarint($15,$17)|0); + $19 = (1 + ($18))|0; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 8|0); + HEAP32[$21>>2] = $19; + $23 = HEAP32[$0>>2]|0; + $24 = (_nodeReaderNext($23)|0); + STACKTOP = sp;return ($24|0); + } else { + $22 = (($13) + 8|0); + HEAP32[$22>>2] = 1; + $23 = HEAP32[$0>>2]|0; + $24 = (_nodeReaderNext($23)|0); + STACKTOP = sp;return ($24|0); + } + return 0|0; +} +function _fts3TermCmp($zLhs,$nLhs,$zRhs,$nRhs) { + $zLhs = $zLhs|0; + $nLhs = $nLhs|0; + $zRhs = $zRhs|0; + $nRhs = $nRhs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $nCmp = 0, $res = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $nCmp = sp + 12|0; + $res = sp + 16|0; + HEAP32[$0>>2] = $zLhs; + HEAP32[$1>>2] = $nLhs; + HEAP32[$2>>2] = $zRhs; + HEAP32[$3>>2] = $nRhs; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$3>>2]|0; + $6 = ($4|0)<($5|0); + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$3>>2]|0; + $9 = $6 ? $7 : $8; + HEAP32[$nCmp>>2] = $9; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$nCmp>>2]|0; + $13 = (_memcmp($10,$11,$12)|0); + HEAP32[$res>>2] = $13; + $14 = HEAP32[$res>>2]|0; + $15 = ($14|0)==(0); + if (!($15)) { + $19 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($19|0); + } + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$3>>2]|0; + $18 = (($16) - ($17))|0; + HEAP32[$res>>2] = $18; + $19 = HEAP32[$res>>2]|0; + STACKTOP = sp;return ($19|0); +} +function _fts3StartNode($pNode,$iHeight,$0,$1) { + $pNode = $pNode|0; + $iHeight = $iHeight|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp + 12|0; + $3 = sp + 8|0; + $4 = sp; + HEAP32[$2>>2] = $pNode; + HEAP32[$3>>2] = $iHeight; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + $9 = HEAP32[$3>>2]|0; + $10 = $9&255; + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$11>>2]|0; + HEAP8[$12>>0] = $10; + $13 = $4; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (($13) + 4)|0; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = ($15|0)!=(0); + $20 = ($18|0)!=(0); + $21 = $19 | $20; + $22 = HEAP32[$2>>2]|0; + if ($21) { + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + 1|0); + $25 = $4; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = (_sqlite3Fts3PutVarint($24,$27,$30)|0); + $32 = (1 + ($31))|0; + $33 = HEAP32[$2>>2]|0; + $34 = (($33) + 4|0); + HEAP32[$34>>2] = $32; + STACKTOP = sp;return; + } else { + $35 = (($22) + 4|0); + HEAP32[$35>>2] = 1; + STACKTOP = sp;return; + } +} +function _fts3AppendToNode($pNode,$pPrev,$zTerm,$nTerm,$aDoclist,$nDoclist) { + $pNode = $pNode|0; + $pPrev = $pPrev|0; + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + $aDoclist = $aDoclist|0; + $nDoclist = $nDoclist|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bFirst = 0, $nPrefix = 0, $nSuffix = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $5 = sp + 20|0; + $6 = sp + 12|0; + $rc = sp + 8|0; + $bFirst = sp + 4|0; + $nPrefix = sp; + $nSuffix = sp + 16|0; + HEAP32[$1>>2] = $pNode; + HEAP32[$2>>2] = $pPrev; + HEAP32[$3>>2] = $zTerm; + HEAP32[$4>>2] = $nTerm; + HEAP32[$5>>2] = $aDoclist; + HEAP32[$6>>2] = $nDoclist; + HEAP32[$rc>>2] = 0; + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)==(0); + $11 = $10&1; + HEAP32[$bFirst>>2] = $11; + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$4>>2]|0; + _blobGrowBuffer($12,$13,$rc); + $14 = HEAP32[$rc>>2]|0; + $15 = ($14|0)!=(0); + if ($15) { + $16 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $16; + $109 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($109|0); + } + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$3>>2]|0; + $23 = HEAP32[$4>>2]|0; + $24 = (_fts3PrefixCompress($18,$21,$22,$23)|0); + HEAP32[$nPrefix>>2] = $24; + $25 = HEAP32[$4>>2]|0; + $26 = HEAP32[$nPrefix>>2]|0; + $27 = (($25) - ($26))|0; + HEAP32[$nSuffix>>2] = $27; + $28 = HEAP32[$2>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$3>>2]|0; + $31 = HEAP32[$4>>2]|0; + _memcpy(($29|0),($30|0),($31|0))|0; + $32 = HEAP32[$4>>2]|0; + $33 = HEAP32[$2>>2]|0; + $34 = (($33) + 4|0); + HEAP32[$34>>2] = $32; + $35 = HEAP32[$bFirst>>2]|0; + $36 = ($35|0)==(0); + if ($36) { + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 4|0); + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$1>>2]|0; + $41 = HEAP32[$40>>2]|0; + $42 = (($41) + ($39)|0); + $43 = HEAP32[$nPrefix>>2]|0; + $44 = ($43|0)<(0); + $45 = $44 << 31 >> 31; + $46 = (_sqlite3Fts3PutVarint($42,$43,$45)|0); + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 4|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) + ($46))|0; + HEAP32[$48>>2] = $50; + } + $51 = HEAP32[$1>>2]|0; + $52 = (($51) + 4|0); + $53 = HEAP32[$52>>2]|0; + $54 = HEAP32[$1>>2]|0; + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + ($53)|0); + $57 = HEAP32[$nSuffix>>2]|0; + $58 = ($57|0)<(0); + $59 = $58 << 31 >> 31; + $60 = (_sqlite3Fts3PutVarint($56,$57,$59)|0); + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 4|0); + $63 = HEAP32[$62>>2]|0; + $64 = (($63) + ($60))|0; + HEAP32[$62>>2] = $64; + $65 = HEAP32[$1>>2]|0; + $66 = (($65) + 4|0); + $67 = HEAP32[$66>>2]|0; + $68 = HEAP32[$1>>2]|0; + $69 = HEAP32[$68>>2]|0; + $70 = (($69) + ($67)|0); + $71 = HEAP32[$nPrefix>>2]|0; + $72 = HEAP32[$3>>2]|0; + $73 = (($72) + ($71)|0); + $74 = HEAP32[$nSuffix>>2]|0; + _memcpy(($70|0),($73|0),($74|0))|0; + $75 = HEAP32[$nSuffix>>2]|0; + $76 = HEAP32[$1>>2]|0; + $77 = (($76) + 4|0); + $78 = HEAP32[$77>>2]|0; + $79 = (($78) + ($75))|0; + HEAP32[$77>>2] = $79; + $80 = HEAP32[$5>>2]|0; + $81 = ($80|0)!=(0|0); + if ($81) { + $82 = HEAP32[$1>>2]|0; + $83 = (($82) + 4|0); + $84 = HEAP32[$83>>2]|0; + $85 = HEAP32[$1>>2]|0; + $86 = HEAP32[$85>>2]|0; + $87 = (($86) + ($84)|0); + $88 = HEAP32[$6>>2]|0; + $89 = ($88|0)<(0); + $90 = $89 << 31 >> 31; + $91 = (_sqlite3Fts3PutVarint($87,$88,$90)|0); + $92 = HEAP32[$1>>2]|0; + $93 = (($92) + 4|0); + $94 = HEAP32[$93>>2]|0; + $95 = (($94) + ($91))|0; + HEAP32[$93>>2] = $95; + $96 = HEAP32[$1>>2]|0; + $97 = (($96) + 4|0); + $98 = HEAP32[$97>>2]|0; + $99 = HEAP32[$1>>2]|0; + $100 = HEAP32[$99>>2]|0; + $101 = (($100) + ($98)|0); + $102 = HEAP32[$5>>2]|0; + $103 = HEAP32[$6>>2]|0; + _memcpy(($101|0),($102|0),($103|0))|0; + $104 = HEAP32[$6>>2]|0; + $105 = HEAP32[$1>>2]|0; + $106 = (($105) + 4|0); + $107 = HEAP32[$106>>2]|0; + $108 = (($107) + ($104))|0; + HEAP32[$106>>2] = $108; + } + HEAP32[$0>>2] = 0; + $109 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($109|0); +} +function _nodeReaderNext($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; + var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; + var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; + var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; + var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bFirst = 0, $nPrefix = 0, $nSuffix = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $bFirst = sp; + $nPrefix = sp + 4|0; + $nSuffix = sp + 8|0; + $rc = sp + 12|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 24|0); + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)==(0); + $6 = $5&1; + HEAP32[$bFirst>>2] = $6; + HEAP32[$nPrefix>>2] = 0; + HEAP32[$nSuffix>>2] = 0; + HEAP32[$rc>>2] = 0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 16|0); + $9 = $8; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = (($9) + 4)|0; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = ($11|0)!=(0); + $16 = ($14|0)!=(0); + $17 = $15 | $16; + if ($17) { + $18 = HEAP32[$bFirst>>2]|0; + $19 = ($18|0)==(0); + if ($19) { + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 16|0); + $22 = $21; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (($22) + 4)|0; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (_i64Add(($24|0),($27|0),1,0)|0); + $29 = tempRet0; + $30 = $21; + $31 = $30; + HEAP32[$31>>2] = $28; + $32 = (($30) + 4)|0; + $33 = $32; + HEAP32[$33>>2] = $29; + } + } + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 8|0); + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$0>>2]|0; + $38 = (($37) + 4|0); + $39 = HEAP32[$38>>2]|0; + $40 = ($36|0)>=($39|0); + if ($40) { + $41 = HEAP32[$0>>2]|0; + HEAP32[$41>>2] = 0; + $176 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($176|0); + } + $42 = HEAP32[$bFirst>>2]|0; + $43 = ($42|0)==(0); + if ($43) { + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 8|0); + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$0>>2]|0; + $48 = HEAP32[$47>>2]|0; + $49 = (($48) + ($46)|0); + $50 = HEAP8[$49>>0]|0; + $51 = $50&255; + $52 = $51 & 128; + $53 = ($52|0)!=(0); + $54 = HEAP32[$0>>2]|0; + $55 = (($54) + 8|0); + $56 = HEAP32[$55>>2]|0; + $57 = HEAP32[$0>>2]|0; + $58 = HEAP32[$57>>2]|0; + $59 = (($58) + ($56)|0); + if ($53) { + $60 = (_sqlite3Fts3GetVarint32($59,$nPrefix)|0); + $67 = $60; + } else { + $61 = HEAP8[$59>>0]|0; + $62 = $61&255; + HEAP32[$nPrefix>>2] = $62; + $67 = 1; + } + $63 = HEAP32[$0>>2]|0; + $64 = (($63) + 8|0); + $65 = HEAP32[$64>>2]|0; + $66 = (($65) + ($67))|0; + HEAP32[$64>>2] = $66; + } + $68 = HEAP32[$0>>2]|0; + $69 = (($68) + 8|0); + $70 = HEAP32[$69>>2]|0; + $71 = HEAP32[$0>>2]|0; + $72 = HEAP32[$71>>2]|0; + $73 = (($72) + ($70)|0); + $74 = HEAP8[$73>>0]|0; + $75 = $74&255; + $76 = $75 & 128; + $77 = ($76|0)!=(0); + $78 = HEAP32[$0>>2]|0; + $79 = (($78) + 8|0); + $80 = HEAP32[$79>>2]|0; + $81 = HEAP32[$0>>2]|0; + $82 = HEAP32[$81>>2]|0; + $83 = (($82) + ($80)|0); + if ($77) { + $84 = (_sqlite3Fts3GetVarint32($83,$nSuffix)|0); + $91 = $84; + } else { + $85 = HEAP8[$83>>0]|0; + $86 = $85&255; + HEAP32[$nSuffix>>2] = $86; + $91 = 1; + } + $87 = HEAP32[$0>>2]|0; + $88 = (($87) + 8|0); + $89 = HEAP32[$88>>2]|0; + $90 = (($89) + ($91))|0; + HEAP32[$88>>2] = $90; + $92 = HEAP32[$0>>2]|0; + $93 = (($92) + 24|0); + $94 = HEAP32[$nPrefix>>2]|0; + $95 = HEAP32[$nSuffix>>2]|0; + $96 = (($94) + ($95))|0; + _blobGrowBuffer($93,$96,$rc); + $97 = HEAP32[$rc>>2]|0; + $98 = ($97|0)==(0); + if (!($98)) { + $176 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($176|0); + } + $99 = HEAP32[$nPrefix>>2]|0; + $100 = HEAP32[$0>>2]|0; + $101 = (($100) + 24|0); + $102 = HEAP32[$101>>2]|0; + $103 = (($102) + ($99)|0); + $104 = HEAP32[$0>>2]|0; + $105 = (($104) + 8|0); + $106 = HEAP32[$105>>2]|0; + $107 = HEAP32[$0>>2]|0; + $108 = HEAP32[$107>>2]|0; + $109 = (($108) + ($106)|0); + $110 = HEAP32[$nSuffix>>2]|0; + _memcpy(($103|0),($109|0),($110|0))|0; + $111 = HEAP32[$nPrefix>>2]|0; + $112 = HEAP32[$nSuffix>>2]|0; + $113 = (($111) + ($112))|0; + $114 = HEAP32[$0>>2]|0; + $115 = (($114) + 24|0); + $116 = (($115) + 4|0); + HEAP32[$116>>2] = $113; + $117 = HEAP32[$nSuffix>>2]|0; + $118 = HEAP32[$0>>2]|0; + $119 = (($118) + 8|0); + $120 = HEAP32[$119>>2]|0; + $121 = (($120) + ($117))|0; + HEAP32[$119>>2] = $121; + $122 = HEAP32[$0>>2]|0; + $123 = (($122) + 16|0); + $124 = $123; + $125 = $124; + $126 = HEAP32[$125>>2]|0; + $127 = (($124) + 4)|0; + $128 = $127; + $129 = HEAP32[$128>>2]|0; + $130 = ($126|0)==(0); + $131 = ($129|0)==(0); + $132 = $130 & $131; + if (!($132)) { + $176 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($176|0); + } + $133 = HEAP32[$0>>2]|0; + $134 = (($133) + 8|0); + $135 = HEAP32[$134>>2]|0; + $136 = HEAP32[$0>>2]|0; + $137 = HEAP32[$136>>2]|0; + $138 = (($137) + ($135)|0); + $139 = HEAP8[$138>>0]|0; + $140 = $139&255; + $141 = $140 & 128; + $142 = ($141|0)!=(0); + $143 = HEAP32[$0>>2]|0; + $144 = (($143) + 8|0); + $145 = HEAP32[$144>>2]|0; + $146 = HEAP32[$0>>2]|0; + $147 = HEAP32[$146>>2]|0; + $148 = (($147) + ($145)|0); + if ($142) { + $149 = HEAP32[$0>>2]|0; + $150 = (($149) + 40|0); + $151 = (_sqlite3Fts3GetVarint32($148,$150)|0); + $160 = $151; + } else { + $152 = HEAP8[$148>>0]|0; + $153 = $152&255; + $154 = HEAP32[$0>>2]|0; + $155 = (($154) + 40|0); + HEAP32[$155>>2] = $153; + $160 = 1; + } + $156 = HEAP32[$0>>2]|0; + $157 = (($156) + 8|0); + $158 = HEAP32[$157>>2]|0; + $159 = (($158) + ($160))|0; + HEAP32[$157>>2] = $159; + $161 = HEAP32[$0>>2]|0; + $162 = (($161) + 8|0); + $163 = HEAP32[$162>>2]|0; + $164 = HEAP32[$0>>2]|0; + $165 = HEAP32[$164>>2]|0; + $166 = (($165) + ($163)|0); + $167 = HEAP32[$0>>2]|0; + $168 = (($167) + 36|0); + HEAP32[$168>>2] = $166; + $169 = HEAP32[$0>>2]|0; + $170 = (($169) + 40|0); + $171 = HEAP32[$170>>2]|0; + $172 = HEAP32[$0>>2]|0; + $173 = (($172) + 8|0); + $174 = HEAP32[$173>>2]|0; + $175 = (($174) + ($171))|0; + HEAP32[$173>>2] = $175; + $176 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($176|0); +} +function _nodeReaderRelease($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 24|0); + $3 = HEAP32[$2>>2]|0; + _sqlite3_free($3); + STACKTOP = sp;return; +} +function _fts3IncrmergePush($p,$pWriter,$zTerm,$nTerm) { + $p = $p|0; + $pWriter = $pWriter|0; + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iLayer = 0, $iNextPtr = 0, $iPtr = 0, $nPrefix = 0, $nSpace = 0, $nSuffix = 0; + var $pBlk = 0, $pNode = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 60|0; + $1 = sp + 56|0; + $2 = sp + 52|0; + $3 = sp + 48|0; + $4 = sp + 44|0; + $iPtr = sp; + $iLayer = sp + 40|0; + $iNextPtr = sp + 8|0; + $pNode = sp + 28|0; + $rc = sp + 20|0; + $nPrefix = sp + 16|0; + $nSuffix = sp + 24|0; + $nSpace = sp + 32|0; + $pBlk = sp + 36|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pWriter; + HEAP32[$3>>2] = $zTerm; + HEAP32[$4>>2] = $nTerm; + $5 = HEAP32[$2>>2]|0; + $6 = (($5) + 56|0); + $7 = $6; + $8 = $7; + $9 = HEAP32[$8>>2]|0; + $10 = (($7) + 4)|0; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = $iPtr; + $14 = $13; + HEAP32[$14>>2] = $9; + $15 = (($13) + 4)|0; + $16 = $15; + HEAP32[$16>>2] = $12; + HEAP32[$iLayer>>2] = 1; + while(1) { + $17 = HEAP32[$iLayer>>2]|0; + $18 = ($17|0)<(16); + if (!($18)) { + label = 17; + break; + } + $19 = $iNextPtr; + $20 = $19; + HEAP32[$20>>2] = 0; + $21 = (($19) + 4)|0; + $22 = $21; + HEAP32[$22>>2] = 0; + $23 = HEAP32[$iLayer>>2]|0; + $24 = HEAP32[$2>>2]|0; + $25 = (($24) + 56|0); + $26 = (($25) + ($23<<5)|0); + HEAP32[$pNode>>2] = $26; + HEAP32[$rc>>2] = 0; + $27 = HEAP32[$pNode>>2]|0; + $28 = (($27) + 8|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$pNode>>2]|0; + $31 = (($30) + 8|0); + $32 = (($31) + 4|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$3>>2]|0; + $35 = HEAP32[$4>>2]|0; + $36 = (_fts3PrefixCompress($29,$33,$34,$35)|0); + HEAP32[$nPrefix>>2] = $36; + $37 = HEAP32[$4>>2]|0; + $38 = HEAP32[$nPrefix>>2]|0; + $39 = (($37) - ($38))|0; + HEAP32[$nSuffix>>2] = $39; + $40 = HEAP32[$nPrefix>>2]|0; + $41 = ($40|0)<(0); + $42 = $41 << 31 >> 31; + $43 = (_sqlite3Fts3VarintLen($40,$42)|0); + HEAP32[$nSpace>>2] = $43; + $44 = HEAP32[$nSuffix>>2]|0; + $45 = ($44|0)<(0); + $46 = $45 << 31 >> 31; + $47 = (_sqlite3Fts3VarintLen($44,$46)|0); + $48 = HEAP32[$nSuffix>>2]|0; + $49 = (($47) + ($48))|0; + $50 = HEAP32[$nSpace>>2]|0; + $51 = (($50) + ($49))|0; + HEAP32[$nSpace>>2] = $51; + $52 = HEAP32[$pNode>>2]|0; + $53 = (($52) + 8|0); + $54 = (($53) + 4|0); + $55 = HEAP32[$54>>2]|0; + $56 = ($55|0)==(0); + if ($56) { + label = 5; + } else { + $57 = HEAP32[$pNode>>2]|0; + $58 = (($57) + 20|0); + $59 = (($58) + 4|0); + $60 = HEAP32[$59>>2]|0; + $61 = HEAP32[$nSpace>>2]|0; + $62 = (($60) + ($61))|0; + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + 224|0); + $65 = HEAP32[$64>>2]|0; + $66 = ($62|0)<=($65|0); + if ($66) { + label = 5; + } else { + $164 = HEAP32[$1>>2]|0; + $165 = HEAP32[$pNode>>2]|0; + $166 = $165; + $167 = $166; + $168 = HEAP32[$167>>2]|0; + $169 = (($166) + 4)|0; + $170 = $169; + $171 = HEAP32[$170>>2]|0; + $172 = HEAP32[$pNode>>2]|0; + $173 = (($172) + 20|0); + $174 = HEAP32[$173>>2]|0; + $175 = HEAP32[$pNode>>2]|0; + $176 = (($175) + 20|0); + $177 = (($176) + 4|0); + $178 = HEAP32[$177>>2]|0; + $179 = (_fts3WriteSegment($164,$168,$171,$174,$178)|0); + HEAP32[$rc>>2] = $179; + $180 = HEAP32[$iLayer>>2]|0; + $181 = $180&255; + $182 = HEAP32[$pNode>>2]|0; + $183 = (($182) + 20|0); + $184 = HEAP32[$183>>2]|0; + HEAP8[$184>>0] = $181; + $185 = HEAP32[$pNode>>2]|0; + $186 = (($185) + 20|0); + $187 = HEAP32[$186>>2]|0; + $188 = (($187) + 1|0); + $189 = $iPtr; + $190 = $189; + $191 = HEAP32[$190>>2]|0; + $192 = (($189) + 4)|0; + $193 = $192; + $194 = HEAP32[$193>>2]|0; + $195 = (_i64Add(($191|0),($194|0),1,0)|0); + $196 = tempRet0; + $197 = (_sqlite3Fts3PutVarint($188,$195,$196)|0); + $198 = (1 + ($197))|0; + $199 = HEAP32[$pNode>>2]|0; + $200 = (($199) + 20|0); + $201 = (($200) + 4|0); + HEAP32[$201>>2] = $198; + $202 = HEAP32[$pNode>>2]|0; + $203 = $202; + $204 = $203; + $205 = HEAP32[$204>>2]|0; + $206 = (($203) + 4)|0; + $207 = $206; + $208 = HEAP32[$207>>2]|0; + $209 = $iNextPtr; + $210 = $209; + HEAP32[$210>>2] = $205; + $211 = (($209) + 4)|0; + $212 = $211; + HEAP32[$212>>2] = $208; + $213 = HEAP32[$pNode>>2]|0; + $214 = $213; + $215 = $214; + $216 = HEAP32[$215>>2]|0; + $217 = (($214) + 4)|0; + $218 = $217; + $219 = HEAP32[$218>>2]|0; + $220 = (_i64Add(($216|0),($219|0),1,0)|0); + $221 = tempRet0; + $222 = $213; + $223 = $222; + HEAP32[$223>>2] = $220; + $224 = (($222) + 4)|0; + $225 = $224; + HEAP32[$225>>2] = $221; + $226 = HEAP32[$pNode>>2]|0; + $227 = (($226) + 8|0); + $228 = (($227) + 4|0); + HEAP32[$228>>2] = 0; + } + } + if ((label|0) == 5) { + label = 0; + $67 = HEAP32[$pNode>>2]|0; + $68 = (($67) + 20|0); + HEAP32[$pBlk>>2] = $68; + $69 = HEAP32[$pBlk>>2]|0; + $70 = (($69) + 4|0); + $71 = HEAP32[$70>>2]|0; + $72 = ($71|0)==(0); + if ($72) { + $73 = HEAP32[$pBlk>>2]|0; + $74 = HEAP32[$1>>2]|0; + $75 = (($74) + 224|0); + $76 = HEAP32[$75>>2]|0; + _blobGrowBuffer($73,$76,$rc); + $77 = HEAP32[$rc>>2]|0; + $78 = ($77|0)==(0); + if ($78) { + $79 = HEAP32[$iLayer>>2]|0; + $80 = $79&255; + $81 = HEAP32[$pBlk>>2]|0; + $82 = HEAP32[$81>>2]|0; + HEAP8[$82>>0] = $80; + $83 = HEAP32[$pBlk>>2]|0; + $84 = HEAP32[$83>>2]|0; + $85 = (($84) + 1|0); + $86 = $iPtr; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = (($86) + 4)|0; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + $92 = (_sqlite3Fts3PutVarint($85,$88,$91)|0); + $93 = (1 + ($92))|0; + $94 = HEAP32[$pBlk>>2]|0; + $95 = (($94) + 4|0); + HEAP32[$95>>2] = $93; + } + } + $96 = HEAP32[$pBlk>>2]|0; + $97 = HEAP32[$pBlk>>2]|0; + $98 = (($97) + 4|0); + $99 = HEAP32[$98>>2]|0; + $100 = HEAP32[$nSpace>>2]|0; + $101 = (($99) + ($100))|0; + _blobGrowBuffer($96,$101,$rc); + $102 = HEAP32[$pNode>>2]|0; + $103 = (($102) + 8|0); + $104 = HEAP32[$4>>2]|0; + _blobGrowBuffer($103,$104,$rc); + $105 = HEAP32[$rc>>2]|0; + $106 = ($105|0)==(0); + if ($106) { + $107 = HEAP32[$pNode>>2]|0; + $108 = (($107) + 8|0); + $109 = (($108) + 4|0); + $110 = HEAP32[$109>>2]|0; + $111 = ($110|0)!=(0); + if ($111) { + $112 = HEAP32[$pBlk>>2]|0; + $113 = (($112) + 4|0); + $114 = HEAP32[$113>>2]|0; + $115 = HEAP32[$pBlk>>2]|0; + $116 = HEAP32[$115>>2]|0; + $117 = (($116) + ($114)|0); + $118 = HEAP32[$nPrefix>>2]|0; + $119 = ($118|0)<(0); + $120 = $119 << 31 >> 31; + $121 = (_sqlite3Fts3PutVarint($117,$118,$120)|0); + $122 = HEAP32[$pBlk>>2]|0; + $123 = (($122) + 4|0); + $124 = HEAP32[$123>>2]|0; + $125 = (($124) + ($121))|0; + HEAP32[$123>>2] = $125; + } + $126 = HEAP32[$pBlk>>2]|0; + $127 = (($126) + 4|0); + $128 = HEAP32[$127>>2]|0; + $129 = HEAP32[$pBlk>>2]|0; + $130 = HEAP32[$129>>2]|0; + $131 = (($130) + ($128)|0); + $132 = HEAP32[$nSuffix>>2]|0; + $133 = ($132|0)<(0); + $134 = $133 << 31 >> 31; + $135 = (_sqlite3Fts3PutVarint($131,$132,$134)|0); + $136 = HEAP32[$pBlk>>2]|0; + $137 = (($136) + 4|0); + $138 = HEAP32[$137>>2]|0; + $139 = (($138) + ($135))|0; + HEAP32[$137>>2] = $139; + $140 = HEAP32[$pBlk>>2]|0; + $141 = (($140) + 4|0); + $142 = HEAP32[$141>>2]|0; + $143 = HEAP32[$pBlk>>2]|0; + $144 = HEAP32[$143>>2]|0; + $145 = (($144) + ($142)|0); + $146 = HEAP32[$nPrefix>>2]|0; + $147 = HEAP32[$3>>2]|0; + $148 = (($147) + ($146)|0); + $149 = HEAP32[$nSuffix>>2]|0; + _memcpy(($145|0),($148|0),($149|0))|0; + $150 = HEAP32[$nSuffix>>2]|0; + $151 = HEAP32[$pBlk>>2]|0; + $152 = (($151) + 4|0); + $153 = HEAP32[$152>>2]|0; + $154 = (($153) + ($150))|0; + HEAP32[$152>>2] = $154; + $155 = HEAP32[$pNode>>2]|0; + $156 = (($155) + 8|0); + $157 = HEAP32[$156>>2]|0; + $158 = HEAP32[$3>>2]|0; + $159 = HEAP32[$4>>2]|0; + _memcpy(($157|0),($158|0),($159|0))|0; + $160 = HEAP32[$4>>2]|0; + $161 = HEAP32[$pNode>>2]|0; + $162 = (($161) + 8|0); + $163 = (($162) + 4|0); + HEAP32[$163>>2] = $160; + } + } + $229 = HEAP32[$rc>>2]|0; + $230 = ($229|0)!=(0); + if ($230) { + label = 15; + break; + } + $231 = $iNextPtr; + $232 = $231; + $233 = HEAP32[$232>>2]|0; + $234 = (($231) + 4)|0; + $235 = $234; + $236 = HEAP32[$235>>2]|0; + $237 = ($233|0)==(0); + $238 = ($236|0)==(0); + $239 = $237 & $238; + if ($239) { + label = 15; + break; + } + $241 = $iNextPtr; + $242 = $241; + $243 = HEAP32[$242>>2]|0; + $244 = (($241) + 4)|0; + $245 = $244; + $246 = HEAP32[$245>>2]|0; + $247 = $iPtr; + $248 = $247; + HEAP32[$248>>2] = $243; + $249 = (($247) + 4)|0; + $250 = $249; + HEAP32[$250>>2] = $246; + $251 = HEAP32[$iLayer>>2]|0; + $252 = (($251) + 1)|0; + HEAP32[$iLayer>>2] = $252; + } + if ((label|0) == 15) { + $240 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $240; + $253 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($253|0); + } + else if ((label|0) == 17) { + HEAP32[$0>>2] = 0; + $253 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($253|0); + } + return 0|0; +} +function _fts3IsAppendable($p,$0,$1,$pbRes) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + $pbRes = $pbRes|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $bRes = 0, $pCheck = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 24|0; + $3 = sp; + $4 = sp + 8|0; + $bRes = sp + 12|0; + $pCheck = sp + 16|0; + $rc = sp + 20|0; + HEAP32[$2>>2] = $p; + $5 = $3; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + HEAP32[$4>>2] = $pbRes; + HEAP32[$bRes>>2] = 0; + HEAP32[$pCheck>>2] = 0; + $9 = HEAP32[$2>>2]|0; + $10 = (_fts3SqlStmt($9,34,$pCheck,0)|0); + HEAP32[$rc>>2] = $10; + $11 = HEAP32[$rc>>2]|0; + $12 = ($11|0)==(0); + if (!($12)) { + $25 = HEAP32[$bRes>>2]|0; + $26 = HEAP32[$4>>2]|0; + HEAP32[$26>>2] = $25; + $27 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($27|0); + } + $13 = HEAP32[$pCheck>>2]|0; + $14 = $3; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + (_sqlite3_bind_int64($13,1,$16,$19)|0); + $20 = HEAP32[$pCheck>>2]|0; + $21 = (_sqlite3_step($20)|0); + $22 = (100)==($21|0); + if ($22) { + HEAP32[$bRes>>2] = 1; + } + $23 = HEAP32[$pCheck>>2]|0; + $24 = (_sqlite3_reset($23)|0); + HEAP32[$rc>>2] = $24; + $25 = HEAP32[$bRes>>2]|0; + $26 = HEAP32[$4>>2]|0; + HEAP32[$26>>2] = $25; + $27 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($27|0); +} +function _sqlite3Fts3UpdateMethod($pVtab,$nArg,$apVal,$pRowid) { + $pVtab = $pVtab|0; + $nArg = $nArg|0; + $apVal = $apVal|0; + $pRowid = $pRowid|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aSzDel = 0, $aSzIns = 0, $bInsertDone = 0, $iLangid = 0, $isRemove = 0, $nChng = 0, $p = 0, $pNewRowid = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 48|0; + $1 = sp + 44|0; + $2 = sp + 40|0; + $3 = sp + 36|0; + $p = sp + 32|0; + $rc = sp + 28|0; + $isRemove = sp + 24|0; + $aSzIns = sp + 16|0; + $aSzDel = sp + 12|0; + $nChng = sp + 8|0; + $bInsertDone = sp + 4|0; + $pNewRowid = sp; + $iLangid = sp + 20|0; + HEAP32[$0>>2] = $pVtab; + HEAP32[$1>>2] = $nArg; + HEAP32[$2>>2] = $apVal; + HEAP32[$3>>2] = $pRowid; + $4 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $4; + HEAP32[$rc>>2] = 0; + HEAP32[$isRemove>>2] = 0; + HEAP32[$aSzIns>>2] = 0; + HEAP32[$aSzDel>>2] = 0; + HEAP32[$nChng>>2] = 0; + HEAP32[$bInsertDone>>2] = 0; + $5 = HEAP32[$1>>2]|0; + $6 = ($5|0)>(1); + if ($6) { + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3_value_type($8)|0); + $10 = ($9|0)==(5); + if ($10) { + $11 = HEAP32[$p>>2]|0; + $12 = (($11) + 24|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 2)|0; + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + ($14<<2)|0); + $17 = HEAP32[$16>>2]|0; + $18 = (_sqlite3_value_type($17)|0); + $19 = ($18|0)!=(5); + if ($19) { + $20 = HEAP32[$p>>2]|0; + $21 = HEAP32[$p>>2]|0; + $22 = (($21) + 24|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + 2)|0; + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + ($24<<2)|0); + $27 = HEAP32[$26>>2]|0; + $28 = (_fts3SpecialInsert($20,$27)|0); + HEAP32[$rc>>2] = $28; + $206 = HEAP32[$aSzDel>>2]|0; + _sqlite3_free($206); + $207 = HEAP32[$p>>2]|0; + _sqlite3Fts3SegmentsClose($207); + $208 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($208|0); + } + } + } + $29 = HEAP32[$1>>2]|0; + $30 = ($29|0)>(1); + if ($30) { + $31 = HEAP32[$p>>2]|0; + $32 = (($31) + 24|0); + $33 = HEAP32[$32>>2]|0; + $34 = (2 + ($33))|0; + $35 = (($34) + 2)|0; + $36 = HEAP32[$2>>2]|0; + $37 = (($36) + ($35<<2)|0); + $38 = HEAP32[$37>>2]|0; + $39 = (_sqlite3_value_int($38)|0); + $40 = ($39|0)<(0); + if ($40) { + HEAP32[$rc>>2] = 19; + $206 = HEAP32[$aSzDel>>2]|0; + _sqlite3_free($206); + $207 = HEAP32[$p>>2]|0; + _sqlite3Fts3SegmentsClose($207); + $208 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($208|0); + } + } + $41 = HEAP32[$p>>2]|0; + $42 = (($41) + 24|0); + $43 = HEAP32[$42>>2]|0; + $44 = (($43) + 1)|0; + $45 = $44<<2; + $46 = $45<<1; + $47 = (_sqlite3_malloc($46)|0); + HEAP32[$aSzDel>>2] = $47; + $48 = HEAP32[$aSzDel>>2]|0; + $49 = ($48|0)==(0|0); + if ($49) { + HEAP32[$rc>>2] = 7; + $206 = HEAP32[$aSzDel>>2]|0; + _sqlite3_free($206); + $207 = HEAP32[$p>>2]|0; + _sqlite3Fts3SegmentsClose($207); + $208 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($208|0); + } + $50 = HEAP32[$p>>2]|0; + $51 = (($50) + 24|0); + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + 1)|0; + $54 = HEAP32[$aSzDel>>2]|0; + $55 = (($54) + ($53<<2)|0); + HEAP32[$aSzIns>>2] = $55; + $56 = HEAP32[$aSzDel>>2]|0; + $57 = HEAP32[$p>>2]|0; + $58 = (($57) + 24|0); + $59 = HEAP32[$58>>2]|0; + $60 = (($59) + 1)|0; + $61 = $60<<2; + $62 = $61<<1; + _memset(($56|0),0,($62|0))|0; + $63 = HEAP32[$p>>2]|0; + $64 = (_fts3Writelock($63)|0); + HEAP32[$rc>>2] = $64; + $65 = HEAP32[$rc>>2]|0; + $66 = ($65|0)!=(0); + if ($66) { + $206 = HEAP32[$aSzDel>>2]|0; + _sqlite3_free($206); + $207 = HEAP32[$p>>2]|0; + _sqlite3Fts3SegmentsClose($207); + $208 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($208|0); + } + $67 = HEAP32[$1>>2]|0; + $68 = ($67|0)>(1); + do { + if ($68) { + $69 = HEAP32[$p>>2]|0; + $70 = (($69) + 40|0); + $71 = HEAP32[$70>>2]|0; + $72 = ($71|0)==(0|0); + if ($72) { + $73 = HEAP32[$p>>2]|0; + $74 = (($73) + 24|0); + $75 = HEAP32[$74>>2]|0; + $76 = (3 + ($75))|0; + $77 = HEAP32[$2>>2]|0; + $78 = (($77) + ($76<<2)|0); + $79 = HEAP32[$78>>2]|0; + HEAP32[$pNewRowid>>2] = $79; + $80 = HEAP32[$pNewRowid>>2]|0; + $81 = (_sqlite3_value_type($80)|0); + $82 = ($81|0)==(5); + if ($82) { + $83 = HEAP32[$2>>2]|0; + $84 = (($83) + 4|0); + $85 = HEAP32[$84>>2]|0; + HEAP32[$pNewRowid>>2] = $85; + } + $86 = HEAP32[$pNewRowid>>2]|0; + $87 = (_sqlite3_value_type($86)|0); + $88 = ($87|0)!=(5); + if ($88) { + $89 = HEAP32[$2>>2]|0; + $90 = HEAP32[$89>>2]|0; + $91 = (_sqlite3_value_type($90)|0); + $92 = ($91|0)==(5); + if (!($92)) { + $93 = HEAP32[$2>>2]|0; + $94 = HEAP32[$93>>2]|0; + $95 = (_sqlite3_value_int64($94)|0); + $96 = tempRet0; + $97 = HEAP32[$pNewRowid>>2]|0; + $98 = (_sqlite3_value_int64($97)|0); + $99 = tempRet0; + $100 = ($95|0)!=($98|0); + $101 = ($96|0)!=($99|0); + $102 = $100 | $101; + if (!($102)) { + break; + } + } + $103 = HEAP32[$p>>2]|0; + $104 = (($103) + 12|0); + $105 = HEAP32[$104>>2]|0; + $106 = (_sqlite3_vtab_on_conflict($105)|0); + $107 = ($106|0)==(5); + $108 = HEAP32[$p>>2]|0; + if ($107) { + $109 = HEAP32[$pNewRowid>>2]|0; + $110 = HEAP32[$aSzDel>>2]|0; + $111 = (_fts3DeleteByRowid($108,$109,$nChng,$110)|0); + HEAP32[$rc>>2] = $111; + break; + } else { + $112 = HEAP32[$2>>2]|0; + $113 = HEAP32[$3>>2]|0; + $114 = (_fts3InsertData($108,$112,$113)|0); + HEAP32[$rc>>2] = $114; + HEAP32[$bInsertDone>>2] = 1; + break; + } + } + } + } + } while(0); + $115 = HEAP32[$rc>>2]|0; + $116 = ($115|0)!=(0); + if ($116) { + $206 = HEAP32[$aSzDel>>2]|0; + _sqlite3_free($206); + $207 = HEAP32[$p>>2]|0; + _sqlite3Fts3SegmentsClose($207); + $208 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($208|0); + } + $117 = HEAP32[$2>>2]|0; + $118 = HEAP32[$117>>2]|0; + $119 = (_sqlite3_value_type($118)|0); + $120 = ($119|0)!=(5); + if ($120) { + $121 = HEAP32[$p>>2]|0; + $122 = HEAP32[$2>>2]|0; + $123 = HEAP32[$122>>2]|0; + $124 = HEAP32[$aSzDel>>2]|0; + $125 = (_fts3DeleteByRowid($121,$123,$nChng,$124)|0); + HEAP32[$rc>>2] = $125; + HEAP32[$isRemove>>2] = 1; + } + $126 = HEAP32[$1>>2]|0; + $127 = ($126|0)>(1); + if ($127) { + $128 = HEAP32[$rc>>2]|0; + $129 = ($128|0)==(0); + if ($129) { + $130 = HEAP32[$p>>2]|0; + $131 = (($130) + 24|0); + $132 = HEAP32[$131>>2]|0; + $133 = (2 + ($132))|0; + $134 = (($133) + 2)|0; + $135 = HEAP32[$2>>2]|0; + $136 = (($135) + ($134<<2)|0); + $137 = HEAP32[$136>>2]|0; + $138 = (_sqlite3_value_int($137)|0); + HEAP32[$iLangid>>2] = $138; + $139 = HEAP32[$bInsertDone>>2]|0; + $140 = ($139|0)==(0); + if ($140) { + $141 = HEAP32[$p>>2]|0; + $142 = HEAP32[$2>>2]|0; + $143 = HEAP32[$3>>2]|0; + $144 = (_fts3InsertData($141,$142,$143)|0); + HEAP32[$rc>>2] = $144; + $145 = HEAP32[$rc>>2]|0; + $146 = ($145|0)==(19); + if ($146) { + $147 = HEAP32[$p>>2]|0; + $148 = (($147) + 40|0); + $149 = HEAP32[$148>>2]|0; + $150 = ($149|0)==(0|0); + if ($150) { + HEAP32[$rc>>2] = 267; + } + } + } + $151 = HEAP32[$rc>>2]|0; + $152 = ($151|0)==(0); + do { + if ($152) { + $153 = HEAP32[$isRemove>>2]|0; + $154 = ($153|0)!=(0); + if ($154) { + $155 = HEAP32[$3>>2]|0; + $156 = $155; + $157 = $156; + $158 = HEAP32[$157>>2]|0; + $159 = (($156) + 4)|0; + $160 = $159; + $161 = HEAP32[$160>>2]|0; + $162 = HEAP32[$p>>2]|0; + $163 = (($162) + 264|0); + $164 = $163; + $165 = $164; + $166 = HEAP32[$165>>2]|0; + $167 = (($164) + 4)|0; + $168 = $167; + $169 = HEAP32[$168>>2]|0; + $170 = ($158|0)!=($166|0); + $171 = ($161|0)!=($169|0); + $172 = $170 | $171; + if (!($172)) { + break; + } + } + $173 = HEAP32[$p>>2]|0; + $174 = HEAP32[$iLangid>>2]|0; + $175 = HEAP32[$3>>2]|0; + $176 = $175; + $177 = $176; + $178 = HEAP32[$177>>2]|0; + $179 = (($176) + 4)|0; + $180 = $179; + $181 = HEAP32[$180>>2]|0; + $182 = (_fts3PendingTermsDocid($173,$174,$178,$181)|0); + HEAP32[$rc>>2] = $182; + } + } while(0); + $183 = HEAP32[$rc>>2]|0; + $184 = ($183|0)==(0); + if ($184) { + $185 = HEAP32[$p>>2]|0; + $186 = HEAP32[$iLangid>>2]|0; + $187 = HEAP32[$2>>2]|0; + $188 = HEAP32[$aSzIns>>2]|0; + $189 = (_fts3InsertTerms($185,$186,$187,$188)|0); + HEAP32[$rc>>2] = $189; + } + $190 = HEAP32[$p>>2]|0; + $191 = (($190) + 230|0); + $192 = HEAP8[$191>>0]|0; + $193 = ($192<<24>>24)!=(0); + if ($193) { + $194 = HEAP32[$p>>2]|0; + $195 = HEAP32[$aSzIns>>2]|0; + _fts3InsertDocsize($rc,$194,$195); + } + $196 = HEAP32[$nChng>>2]|0; + $197 = (($196) + 1)|0; + HEAP32[$nChng>>2] = $197; + } + } + $198 = HEAP32[$p>>2]|0; + $199 = (($198) + 228|0); + $200 = HEAP8[$199>>0]|0; + $201 = ($200<<24>>24)!=(0); + if (!($201)) { + $206 = HEAP32[$aSzDel>>2]|0; + _sqlite3_free($206); + $207 = HEAP32[$p>>2]|0; + _sqlite3Fts3SegmentsClose($207); + $208 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($208|0); + } + $202 = HEAP32[$p>>2]|0; + $203 = HEAP32[$aSzIns>>2]|0; + $204 = HEAP32[$aSzDel>>2]|0; + $205 = HEAP32[$nChng>>2]|0; + _fts3UpdateDocTotals($rc,$202,$203,$204,$205); + $206 = HEAP32[$aSzDel>>2]|0; + _sqlite3_free($206); + $207 = HEAP32[$p>>2]|0; + _sqlite3Fts3SegmentsClose($207); + $208 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($208|0); +} +function _fts3SpecialInsert($p,$pVal) { + $p = $p|0; + $pVal = $pVal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nVal = 0, $rc = 0, $zVal = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $zVal = sp + 12|0; + $nVal = sp + 16|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pVal; + $3 = HEAP32[$2>>2]|0; + $4 = (_sqlite3_value_text($3)|0); + HEAP32[$zVal>>2] = $4; + $5 = HEAP32[$2>>2]|0; + $6 = (_sqlite3_value_bytes($5)|0); + HEAP32[$nVal>>2] = $6; + $7 = HEAP32[$zVal>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + HEAP32[$0>>2] = 7; + $49 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($49|0); + } + $9 = HEAP32[$nVal>>2]|0; + $10 = ($9|0)==(8); + if ($10) { + $11 = HEAP32[$zVal>>2]|0; + $12 = (_sqlite3_strnicmp($11,3736,8)|0); + $13 = (0)==($12|0); + if ($13) { + $14 = HEAP32[$1>>2]|0; + $15 = (_fts3DoOptimize($14,0)|0); + HEAP32[$rc>>2] = $15; + } else { + label = 6; + } + } else { + label = 6; + } + do { + if ((label|0) == 6) { + $16 = HEAP32[$nVal>>2]|0; + $17 = ($16|0)==(7); + if ($17) { + $18 = HEAP32[$zVal>>2]|0; + $19 = (_sqlite3_strnicmp($18,7320,7)|0); + $20 = (0)==($19|0); + if ($20) { + $21 = HEAP32[$1>>2]|0; + $22 = (_fts3DoRebuild($21)|0); + HEAP32[$rc>>2] = $22; + break; + } + } + $23 = HEAP32[$nVal>>2]|0; + $24 = ($23|0)==(15); + if ($24) { + $25 = HEAP32[$zVal>>2]|0; + $26 = (_sqlite3_strnicmp($25,7328,15)|0); + $27 = (0)==($26|0); + if ($27) { + $28 = HEAP32[$1>>2]|0; + $29 = (_fts3DoIntegrityCheck($28)|0); + HEAP32[$rc>>2] = $29; + break; + } + } + $30 = HEAP32[$nVal>>2]|0; + $31 = ($30|0)>(6); + if ($31) { + $32 = HEAP32[$zVal>>2]|0; + $33 = (_sqlite3_strnicmp($32,7344,6)|0); + $34 = (0)==($33|0); + if ($34) { + $35 = HEAP32[$1>>2]|0; + $36 = HEAP32[$zVal>>2]|0; + $37 = (($36) + 6|0); + $38 = (_fts3DoIncrmerge($35,$37)|0); + HEAP32[$rc>>2] = $38; + break; + } + } + $39 = HEAP32[$nVal>>2]|0; + $40 = ($39|0)>(10); + if ($40) { + $41 = HEAP32[$zVal>>2]|0; + $42 = (_sqlite3_strnicmp($41,7352,10)|0); + $43 = (0)==($42|0); + if ($43) { + $44 = HEAP32[$1>>2]|0; + $45 = HEAP32[$zVal>>2]|0; + $46 = (($45) + 10|0); + $47 = (_fts3DoAutoincrmerge($44,$46)|0); + HEAP32[$rc>>2] = $47; + break; + } + } + HEAP32[$rc>>2] = 1; + } + } while(0); + $48 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $48; + $49 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($49|0); +} +function _fts3Writelock($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $rc = sp; + $pStmt = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 260|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)==(0); + if ($4) { + $5 = HEAP32[$0>>2]|0; + $6 = (_fts3SqlStmt($5,16,$pStmt,0)|0); + HEAP32[$rc>>2] = $6; + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)==(0); + if ($8) { + $9 = HEAP32[$pStmt>>2]|0; + (_sqlite3_bind_null($9,1)|0); + $10 = HEAP32[$pStmt>>2]|0; + (_sqlite3_step($10)|0); + $11 = HEAP32[$pStmt>>2]|0; + $12 = (_sqlite3_reset($11)|0); + HEAP32[$rc>>2] = $12; + } + } + $13 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($13|0); +} +function _fts3DeleteByRowid($p,$pRowid,$pnChng,$aSzDel) { + $p = $p|0; + $pRowid = $pRowid|0; + $pnChng = $pnChng|0; + $aSzDel = $aSzDel|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $bFound = 0, $isEmpty = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $rc = sp + 12|0; + $bFound = sp + 16|0; + $isEmpty = sp + 20|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pRowid; + HEAP32[$2>>2] = $pnChng; + HEAP32[$3>>2] = $aSzDel; + HEAP32[$rc>>2] = 0; + HEAP32[$bFound>>2] = 0; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$3>>2]|0; + _fts3DeleteTerms($rc,$4,$5,$6,$bFound); + $7 = HEAP32[$bFound>>2]|0; + $8 = ($7|0)!=(0); + if (!($8)) { + $42 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($42|0); + } + $9 = HEAP32[$rc>>2]|0; + $10 = ($9|0)==(0); + if (!($10)) { + $42 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($42|0); + } + HEAP32[$isEmpty>>2] = 0; + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (_fts3IsEmpty($11,$12,$isEmpty)|0); + HEAP32[$rc>>2] = $13; + $14 = HEAP32[$rc>>2]|0; + $15 = ($14|0)==(0); + if (!($15)) { + $42 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($42|0); + } + $16 = HEAP32[$isEmpty>>2]|0; + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$0>>2]|0; + $19 = (_fts3DeleteAll($18,1)|0); + HEAP32[$rc>>2] = $19; + $20 = HEAP32[$2>>2]|0; + HEAP32[$20>>2] = 0; + $21 = HEAP32[$3>>2]|0; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 24|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + 1)|0; + $26 = $25<<2; + $27 = $26<<1; + _memset(($21|0),0,($27|0))|0; + $42 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($42|0); + } + $28 = HEAP32[$2>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = (($29) - 1)|0; + $31 = HEAP32[$2>>2]|0; + HEAP32[$31>>2] = $30; + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 40|0); + $34 = HEAP32[$33>>2]|0; + $35 = ($34|0)==(0|0); + if ($35) { + $36 = HEAP32[$0>>2]|0; + _fts3SqlExec($rc,$36,0,$1); + } + $37 = HEAP32[$0>>2]|0; + $38 = (($37) + 230|0); + $39 = HEAP8[$38>>0]|0; + $40 = ($39<<24>>24)!=(0); + if (!($40)) { + $42 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($42|0); + } + $41 = HEAP32[$0>>2]|0; + _fts3SqlExec($rc,$41,19,$1); + $42 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($42|0); +} +function _fts3InsertData($p,$apVal,$piDocid) { + $p = $p|0; + $apVal = $apVal|0; + $piDocid = $piDocid|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $pContentInsert = 0, $pRowid = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $rc = sp + 12|0; + $pContentInsert = sp + 16|0; + $pRowid = sp + 20|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $apVal; + HEAP32[$3>>2] = $piDocid; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 40|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + $8 = HEAP32[$1>>2]|0; + if ($7) { + $9 = (($8) + 24|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + 3)|0; + $12 = HEAP32[$2>>2]|0; + $13 = (($12) + ($11<<2)|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$pRowid>>2] = $14; + $15 = HEAP32[$pRowid>>2]|0; + $16 = (_sqlite3_value_type($15)|0); + $17 = ($16|0)==(5); + if ($17) { + $18 = HEAP32[$2>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$pRowid>>2] = $20; + } + $21 = HEAP32[$pRowid>>2]|0; + $22 = (_sqlite3_value_type($21)|0); + $23 = ($22|0)!=(1); + if ($23) { + HEAP32[$0>>2] = 19; + $102 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($102|0); + } else { + $24 = HEAP32[$pRowid>>2]|0; + $25 = (_sqlite3_value_int64($24)|0); + $26 = tempRet0; + $27 = HEAP32[$3>>2]|0; + $28 = $27; + $29 = $28; + HEAP32[$29>>2] = $25; + $30 = (($28) + 4)|0; + $31 = $30; + HEAP32[$31>>2] = $26; + HEAP32[$0>>2] = 0; + $102 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($102|0); + } + } + $32 = HEAP32[$2>>2]|0; + $33 = (($32) + 4|0); + $34 = (_fts3SqlStmt($8,18,$pContentInsert,$33)|0); + HEAP32[$rc>>2] = $34; + $35 = HEAP32[$rc>>2]|0; + $36 = ($35|0)==(0); + if ($36) { + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 44|0); + $39 = HEAP32[$38>>2]|0; + $40 = ($39|0)!=(0|0); + if ($40) { + $41 = HEAP32[$pContentInsert>>2]|0; + $42 = HEAP32[$1>>2]|0; + $43 = (($42) + 24|0); + $44 = HEAP32[$43>>2]|0; + $45 = (($44) + 2)|0; + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 24|0); + $48 = HEAP32[$47>>2]|0; + $49 = (($48) + 4)|0; + $50 = HEAP32[$2>>2]|0; + $51 = (($50) + ($49<<2)|0); + $52 = HEAP32[$51>>2]|0; + $53 = (_sqlite3_value_int($52)|0); + $54 = (_sqlite3_bind_int($41,$45,$53)|0); + HEAP32[$rc>>2] = $54; + } + } + $55 = HEAP32[$rc>>2]|0; + $56 = ($55|0)!=(0); + if ($56) { + $57 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $57; + $102 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($102|0); + } + $58 = HEAP32[$1>>2]|0; + $59 = (($58) + 24|0); + $60 = HEAP32[$59>>2]|0; + $61 = (3 + ($60))|0; + $62 = HEAP32[$2>>2]|0; + $63 = (($62) + ($61<<2)|0); + $64 = HEAP32[$63>>2]|0; + $65 = (_sqlite3_value_type($64)|0); + $66 = (5)!=($65|0); + if ($66) { + $67 = HEAP32[$2>>2]|0; + $68 = HEAP32[$67>>2]|0; + $69 = (_sqlite3_value_type($68)|0); + $70 = (5)==($69|0); + if ($70) { + $71 = HEAP32[$2>>2]|0; + $72 = (($71) + 4|0); + $73 = HEAP32[$72>>2]|0; + $74 = (_sqlite3_value_type($73)|0); + $75 = (5)!=($74|0); + if ($75) { + HEAP32[$0>>2] = 1; + $102 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($102|0); + } + } + $76 = HEAP32[$pContentInsert>>2]|0; + $77 = HEAP32[$1>>2]|0; + $78 = (($77) + 24|0); + $79 = HEAP32[$78>>2]|0; + $80 = (3 + ($79))|0; + $81 = HEAP32[$2>>2]|0; + $82 = (($81) + ($80<<2)|0); + $83 = HEAP32[$82>>2]|0; + $84 = (_sqlite3_bind_value($76,1,$83)|0); + HEAP32[$rc>>2] = $84; + $85 = HEAP32[$rc>>2]|0; + $86 = ($85|0)!=(0); + if ($86) { + $87 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $87; + $102 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($102|0); + } + } + $88 = HEAP32[$pContentInsert>>2]|0; + (_sqlite3_step($88)|0); + $89 = HEAP32[$pContentInsert>>2]|0; + $90 = (_sqlite3_reset($89)|0); + HEAP32[$rc>>2] = $90; + $91 = HEAP32[$1>>2]|0; + $92 = (($91) + 12|0); + $93 = HEAP32[$92>>2]|0; + $94 = (_sqlite3_last_insert_rowid($93)|0); + $95 = tempRet0; + $96 = HEAP32[$3>>2]|0; + $97 = $96; + $98 = $97; + HEAP32[$98>>2] = $94; + $99 = (($97) + 4)|0; + $100 = $99; + HEAP32[$100>>2] = $95; + $101 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $101; + $102 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($102|0); +} +function _fts3PendingTermsDocid($p,$iLangid,$0,$1) { + $p = $p|0; + $iLangid = $iLangid|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0, $8 = 0, $9 = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 20|0; + $3 = sp + 12|0; + $4 = sp + 8|0; + $5 = sp; + $rc = sp + 16|0; + HEAP32[$3>>2] = $p; + HEAP32[$4>>2] = $iLangid; + $6 = $5; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + $10 = $5; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (($10) + 4)|0; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$3>>2]|0; + $17 = (($16) + 264|0); + $18 = $17; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = (($18) + 4)|0; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = ($15|0)<($23|0); + $25 = ($15|0)==($23|0); + $26 = ($12>>>0)<=($20>>>0); + $27 = $25 & $26; + $28 = $24 | $27; + if ($28) { + label = 4; + } else { + $29 = HEAP32[$3>>2]|0; + $30 = (($29) + 272|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$4>>2]|0; + $33 = ($31|0)!=($32|0); + if ($33) { + label = 4; + } else { + $34 = HEAP32[$3>>2]|0; + $35 = (($34) + 260|0); + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$3>>2]|0; + $38 = (($37) + 256|0); + $39 = HEAP32[$38>>2]|0; + $40 = ($36|0)>($39|0); + if ($40) { + label = 4; + } + } + } + if ((label|0) == 4) { + $41 = HEAP32[$3>>2]|0; + $42 = (_sqlite3Fts3PendingTermsFlush($41)|0); + HEAP32[$rc>>2] = $42; + $43 = HEAP32[$rc>>2]|0; + $44 = ($43|0)!=(0); + if ($44) { + $45 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $45; + $61 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($61|0); + } + } + $46 = $5; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = (($46) + 4)|0; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = HEAP32[$3>>2]|0; + $53 = (($52) + 264|0); + $54 = $53; + $55 = $54; + HEAP32[$55>>2] = $48; + $56 = (($54) + 4)|0; + $57 = $56; + HEAP32[$57>>2] = $51; + $58 = HEAP32[$4>>2]|0; + $59 = HEAP32[$3>>2]|0; + $60 = (($59) + 272|0); + HEAP32[$60>>2] = $58; + HEAP32[$2>>2] = 0; + $61 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($61|0); +} +function _fts3InsertTerms($p,$iLangid,$apVal,$aSz) { + $p = $p|0; + $iLangid = $iLangid|0; + $apVal = $apVal|0; + $aSz = $aSz|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $iCol = 0, $rc = 0, $zText = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $4 = sp + 16|0; + $i = sp + 8|0; + $iCol = sp + 4|0; + $zText = sp; + $rc = sp + 12|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $iLangid; + HEAP32[$3>>2] = $apVal; + HEAP32[$4>>2] = $aSz; + HEAP32[$i>>2] = 2; + while(1) { + $5 = HEAP32[$i>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 24|0); + $8 = HEAP32[$7>>2]|0; + $9 = (($8) + 2)|0; + $10 = ($5|0)<($9|0); + if (!($10)) { + label = 8; + break; + } + $11 = HEAP32[$i>>2]|0; + $12 = (($11) - 2)|0; + HEAP32[$iCol>>2] = $12; + $13 = HEAP32[$iCol>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 32|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + ($13)|0); + $18 = HEAP8[$17>>0]|0; + $19 = $18&255; + $20 = ($19|0)==(0); + if ($20) { + $21 = HEAP32[$i>>2]|0; + $22 = HEAP32[$3>>2]|0; + $23 = (($22) + ($21<<2)|0); + $24 = HEAP32[$23>>2]|0; + $25 = (_sqlite3_value_text($24)|0); + HEAP32[$zText>>2] = $25; + $26 = HEAP32[$1>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = HEAP32[$zText>>2]|0; + $29 = HEAP32[$iCol>>2]|0; + $30 = HEAP32[$iCol>>2]|0; + $31 = HEAP32[$4>>2]|0; + $32 = (($31) + ($30<<2)|0); + $33 = (_fts3PendingTermsAdd($26,$27,$28,$29,$32)|0); + HEAP32[$rc>>2] = $33; + $34 = HEAP32[$rc>>2]|0; + $35 = ($34|0)!=(0); + if ($35) { + label = 5; + break; + } + $37 = HEAP32[$i>>2]|0; + $38 = HEAP32[$3>>2]|0; + $39 = (($38) + ($37<<2)|0); + $40 = HEAP32[$39>>2]|0; + $41 = (_sqlite3_value_bytes($40)|0); + $42 = HEAP32[$1>>2]|0; + $43 = (($42) + 24|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$4>>2]|0; + $46 = (($45) + ($44<<2)|0); + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + ($41))|0; + HEAP32[$46>>2] = $48; + } + $49 = HEAP32[$i>>2]|0; + $50 = (($49) + 1)|0; + HEAP32[$i>>2] = $50; + } + if ((label|0) == 5) { + $36 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $36; + $51 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($51|0); + } + else if ((label|0) == 8) { + HEAP32[$0>>2] = 0; + $51 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($51|0); + } + return 0|0; +} +function _fts3InsertDocsize($pRC,$p,$aSz) { + $pRC = $pRC|0; + $p = $p|0; + $aSz = $aSz|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $nBlob = 0, $pBlob = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $pBlob = sp + 8|0; + $nBlob = sp + 12|0; + $pStmt = sp + 16|0; + $rc = sp + 20|0; + HEAP32[$0>>2] = $pRC; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $aSz; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0); + if ($5) { + STACKTOP = sp;return; + } + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 24|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8*10)|0; + $10 = (_sqlite3_malloc($9)|0); + HEAP32[$pBlob>>2] = $10; + $11 = HEAP32[$pBlob>>2]|0; + $12 = ($11|0)==(0|0); + if ($12) { + $13 = HEAP32[$0>>2]|0; + HEAP32[$13>>2] = 7; + STACKTOP = sp;return; + } + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 24|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$pBlob>>2]|0; + _fts3EncodeIntArray($16,$17,$18,$nBlob); + $19 = HEAP32[$1>>2]|0; + $20 = (_fts3SqlStmt($19,20,$pStmt,0)|0); + HEAP32[$rc>>2] = $20; + $21 = HEAP32[$rc>>2]|0; + $22 = ($21|0)!=(0); + if ($22) { + $23 = HEAP32[$pBlob>>2]|0; + _sqlite3_free($23); + $24 = HEAP32[$rc>>2]|0; + $25 = HEAP32[$0>>2]|0; + HEAP32[$25>>2] = $24; + STACKTOP = sp;return; + } else { + $26 = HEAP32[$pStmt>>2]|0; + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 264|0); + $29 = $28; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = (($29) + 4)|0; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + (_sqlite3_bind_int64($26,1,$31,$34)|0); + $35 = HEAP32[$pStmt>>2]|0; + $36 = HEAP32[$pBlob>>2]|0; + $37 = HEAP32[$nBlob>>2]|0; + (_sqlite3_bind_blob($35,2,$36,$37,13)|0); + $38 = HEAP32[$pStmt>>2]|0; + (_sqlite3_step($38)|0); + $39 = HEAP32[$pStmt>>2]|0; + $40 = (_sqlite3_reset($39)|0); + $41 = HEAP32[$0>>2]|0; + HEAP32[$41>>2] = $40; + STACKTOP = sp;return; + } +} +function _fts3UpdateDocTotals($pRC,$p,$aSzIns,$aSzDel,$nChng) { + $pRC = $pRC|0; + $p = $p|0; + $aSzIns = $aSzIns|0; + $aSzDel = $aSzDel|0; + $nChng = $nChng|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; + var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a = 0; + var $i = 0, $nBlob = 0, $nStat = 0, $pBlob = 0, $pStmt = 0, $rc = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 48|0; + $1 = sp + 44|0; + $2 = sp + 40|0; + $3 = sp + 36|0; + $4 = sp + 32|0; + $pBlob = sp + 28|0; + $nBlob = sp + 24|0; + $a = sp + 16|0; + $pStmt = sp + 12|0; + $i = sp + 8|0; + $rc = sp + 4|0; + $nStat = sp; + $x = sp + 20|0; + HEAP32[$0>>2] = $pRC; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $aSzIns; + HEAP32[$3>>2] = $aSzDel; + HEAP32[$4>>2] = $nChng; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 24|0); + $7 = HEAP32[$6>>2]|0; + $8 = (($7) + 2)|0; + HEAP32[$nStat>>2] = $8; + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0); + if ($11) { + STACKTOP = sp;return; + } + $12 = HEAP32[$nStat>>2]|0; + $13 = ($12*14)|0; + $14 = (_sqlite3_malloc($13)|0); + HEAP32[$a>>2] = $14; + $15 = HEAP32[$a>>2]|0; + $16 = ($15|0)==(0|0); + if ($16) { + $17 = HEAP32[$0>>2]|0; + HEAP32[$17>>2] = 7; + STACKTOP = sp;return; + } + $18 = HEAP32[$nStat>>2]|0; + $19 = HEAP32[$a>>2]|0; + $20 = (($19) + ($18<<2)|0); + HEAP32[$pBlob>>2] = $20; + $21 = HEAP32[$1>>2]|0; + $22 = (_fts3SqlStmt($21,22,$pStmt,0)|0); + HEAP32[$rc>>2] = $22; + $23 = HEAP32[$rc>>2]|0; + $24 = ($23|0)!=(0); + if ($24) { + $25 = HEAP32[$a>>2]|0; + _sqlite3_free($25); + $26 = HEAP32[$rc>>2]|0; + $27 = HEAP32[$0>>2]|0; + HEAP32[$27>>2] = $26; + STACKTOP = sp;return; + } + $28 = HEAP32[$pStmt>>2]|0; + (_sqlite3_bind_int($28,1,0)|0); + $29 = HEAP32[$pStmt>>2]|0; + $30 = (_sqlite3_step($29)|0); + $31 = ($30|0)==(100); + if ($31) { + $32 = HEAP32[$nStat>>2]|0; + $33 = HEAP32[$a>>2]|0; + $34 = HEAP32[$pStmt>>2]|0; + $35 = (_sqlite3_column_blob($34,0)|0); + $36 = HEAP32[$pStmt>>2]|0; + $37 = (_sqlite3_column_bytes($36,0)|0); + _fts3DecodeIntArray($32,$33,$35,$37); + } else { + $38 = HEAP32[$a>>2]|0; + $39 = HEAP32[$nStat>>2]|0; + $40 = $39<<2; + _memset(($38|0),0,($40|0))|0; + } + $41 = HEAP32[$pStmt>>2]|0; + $42 = (_sqlite3_reset($41)|0); + HEAP32[$rc>>2] = $42; + $43 = HEAP32[$rc>>2]|0; + $44 = ($43|0)!=(0); + if ($44) { + $45 = HEAP32[$a>>2]|0; + _sqlite3_free($45); + $46 = HEAP32[$rc>>2]|0; + $47 = HEAP32[$0>>2]|0; + HEAP32[$47>>2] = $46; + STACKTOP = sp;return; + } + $48 = HEAP32[$4>>2]|0; + $49 = ($48|0)<(0); + if ($49) { + $50 = HEAP32[$a>>2]|0; + $51 = HEAP32[$50>>2]|0; + $52 = HEAP32[$4>>2]|0; + $53 = (0 - ($52))|0; + $54 = ($51>>>0)<($53>>>0); + if ($54) { + $55 = HEAP32[$a>>2]|0; + HEAP32[$55>>2] = 0; + } else { + label = 14; + } + } else { + label = 14; + } + if ((label|0) == 14) { + $56 = HEAP32[$4>>2]|0; + $57 = HEAP32[$a>>2]|0; + $58 = HEAP32[$57>>2]|0; + $59 = (($58) + ($56))|0; + HEAP32[$57>>2] = $59; + } + HEAP32[$i>>2] = 0; + while(1) { + $60 = HEAP32[$i>>2]|0; + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 24|0); + $63 = HEAP32[$62>>2]|0; + $64 = (($63) + 1)|0; + $65 = ($60|0)<($64|0); + if (!($65)) { + break; + } + $66 = HEAP32[$i>>2]|0; + $67 = (($66) + 1)|0; + $68 = HEAP32[$a>>2]|0; + $69 = (($68) + ($67<<2)|0); + $70 = HEAP32[$69>>2]|0; + HEAP32[$x>>2] = $70; + $71 = HEAP32[$x>>2]|0; + $72 = HEAP32[$i>>2]|0; + $73 = HEAP32[$2>>2]|0; + $74 = (($73) + ($72<<2)|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($71) + ($75))|0; + $77 = HEAP32[$i>>2]|0; + $78 = HEAP32[$3>>2]|0; + $79 = (($78) + ($77<<2)|0); + $80 = HEAP32[$79>>2]|0; + $81 = ($76>>>0)<($80>>>0); + if ($81) { + HEAP32[$x>>2] = 0; + } else { + $82 = HEAP32[$x>>2]|0; + $83 = HEAP32[$i>>2]|0; + $84 = HEAP32[$2>>2]|0; + $85 = (($84) + ($83<<2)|0); + $86 = HEAP32[$85>>2]|0; + $87 = (($82) + ($86))|0; + $88 = HEAP32[$i>>2]|0; + $89 = HEAP32[$3>>2]|0; + $90 = (($89) + ($88<<2)|0); + $91 = HEAP32[$90>>2]|0; + $92 = (($87) - ($91))|0; + HEAP32[$x>>2] = $92; + } + $93 = HEAP32[$x>>2]|0; + $94 = HEAP32[$i>>2]|0; + $95 = (($94) + 1)|0; + $96 = HEAP32[$a>>2]|0; + $97 = (($96) + ($95<<2)|0); + HEAP32[$97>>2] = $93; + $98 = HEAP32[$i>>2]|0; + $99 = (($98) + 1)|0; + HEAP32[$i>>2] = $99; + } + $100 = HEAP32[$nStat>>2]|0; + $101 = HEAP32[$a>>2]|0; + $102 = HEAP32[$pBlob>>2]|0; + _fts3EncodeIntArray($100,$101,$102,$nBlob); + $103 = HEAP32[$1>>2]|0; + $104 = (_fts3SqlStmt($103,23,$pStmt,0)|0); + HEAP32[$rc>>2] = $104; + $105 = HEAP32[$rc>>2]|0; + $106 = ($105|0)!=(0); + if ($106) { + $107 = HEAP32[$a>>2]|0; + _sqlite3_free($107); + $108 = HEAP32[$rc>>2]|0; + $109 = HEAP32[$0>>2]|0; + HEAP32[$109>>2] = $108; + STACKTOP = sp;return; + } else { + $110 = HEAP32[$pStmt>>2]|0; + (_sqlite3_bind_int($110,1,0)|0); + $111 = HEAP32[$pStmt>>2]|0; + $112 = HEAP32[$pBlob>>2]|0; + $113 = HEAP32[$nBlob>>2]|0; + (_sqlite3_bind_blob($111,2,$112,$113,0)|0); + $114 = HEAP32[$pStmt>>2]|0; + (_sqlite3_step($114)|0); + $115 = HEAP32[$pStmt>>2]|0; + $116 = (_sqlite3_reset($115)|0); + $117 = HEAP32[$0>>2]|0; + HEAP32[$117>>2] = $116; + $118 = HEAP32[$a>>2]|0; + _sqlite3_free($118); + STACKTOP = sp;return; + } +} +function _fts3DecodeIntArray($N,$a,$zBuf,$nBuf) { + $N = $N|0; + $a = $a|0; + $zBuf = $zBuf|0; + $nBuf = $nBuf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $j = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp + 24|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $i = sp + 16|0; + $j = sp + 20|0; + $x = sp; + HEAP32[$0>>2] = $N; + HEAP32[$1>>2] = $a; + HEAP32[$2>>2] = $zBuf; + HEAP32[$3>>2] = $nBuf; + HEAP32[$j>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $4 = HEAP32[$i>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = ($4|0)<($5|0); + if (!($6)) { + break; + } + $7 = HEAP32[$j>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + ($7)|0); + $10 = (_sqlite3Fts3GetVarint($9,$x)|0); + $11 = HEAP32[$j>>2]|0; + $12 = (($11) + ($10))|0; + HEAP32[$j>>2] = $12; + $13 = $x; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (($13) + 4)|0; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + ($19<<2)|0); + HEAP32[$21>>2] = $15; + $22 = HEAP32[$i>>2]|0; + $23 = (($22) + 1)|0; + HEAP32[$i>>2] = $23; + } + STACKTOP = sp;return; +} +function _fts3EncodeIntArray($N,$a,$zBuf,$pNBuf) { + $N = $N|0; + $a = $a|0; + $zBuf = $zBuf|0; + $pNBuf = $pNBuf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $i = 0, $j = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $i = sp + 12|0; + $j = sp + 16|0; + HEAP32[$0>>2] = $N; + HEAP32[$1>>2] = $a; + HEAP32[$2>>2] = $zBuf; + HEAP32[$3>>2] = $pNBuf; + HEAP32[$j>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $4 = HEAP32[$i>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = ($4|0)<($5|0); + $7 = HEAP32[$j>>2]|0; + if (!($6)) { + break; + } + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + ($7)|0); + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + ($10<<2)|0); + $13 = HEAP32[$12>>2]|0; + $14 = (_sqlite3Fts3PutVarint($9,$13,0)|0); + $15 = HEAP32[$j>>2]|0; + $16 = (($15) + ($14))|0; + HEAP32[$j>>2] = $16; + $17 = HEAP32[$i>>2]|0; + $18 = (($17) + 1)|0; + HEAP32[$i>>2] = $18; + } + $19 = HEAP32[$3>>2]|0; + HEAP32[$19>>2] = $7; + STACKTOP = sp;return; +} +function _fts3PendingTermsAdd($p,$iLangid,$zText,$iCol,$pnWord) { + $p = $p|0; + $iLangid = $iLangid|0; + $zText = $zText|0; + $iCol = $iCol|0; + $pnWord = $pnWord|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $i = 0, $iEnd = 0, $iPos = 0, $iStart = 0, $nToken = 0, $nWord = 0, $pCsr = 0, $pIndex = 0, $pModule = 0; + var $pTokenizer = 0, $rc = 0, $xNext = 0, $zToken = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 72|0; + $1 = sp + 68|0; + $2 = sp + 64|0; + $3 = sp + 60|0; + $4 = sp + 56|0; + $5 = sp + 52|0; + $rc = sp + 48|0; + $iStart = sp + 44|0; + $iEnd = sp + 40|0; + $iPos = sp + 36|0; + $nWord = sp + 12|0; + $zToken = sp; + $nToken = sp + 4|0; + $pTokenizer = sp + 8|0; + $pModule = sp + 16|0; + $pCsr = sp + 20|0; + $xNext = sp + 24|0; + $i = sp + 28|0; + $pIndex = sp + 32|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $iLangid; + HEAP32[$3>>2] = $zText; + HEAP32[$4>>2] = $iCol; + HEAP32[$5>>2] = $pnWord; + HEAP32[$iStart>>2] = 0; + HEAP32[$iEnd>>2] = 0; + HEAP32[$iPos>>2] = 0; + HEAP32[$nWord>>2] = 0; + HEAP32[$nToken>>2] = 0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 36|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pTokenizer>>2] = $8; + $9 = HEAP32[$pTokenizer>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$pModule>>2] = $10; + $11 = HEAP32[$3>>2]|0; + $12 = ($11|0)==(0|0); + if ($12) { + $13 = HEAP32[$5>>2]|0; + HEAP32[$13>>2] = 0; + HEAP32[$0>>2] = 0; + $90 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($90|0); + } + $14 = HEAP32[$pTokenizer>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$3>>2]|0; + $17 = (_sqlite3Fts3OpenTokenizer($14,$15,$16,-1,$pCsr)|0); + HEAP32[$rc>>2] = $17; + $18 = HEAP32[$rc>>2]|0; + $19 = ($18|0)!=(0); + if ($19) { + $20 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $20; + $90 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($90|0); + } + $21 = HEAP32[$pModule>>2]|0; + $22 = (($21) + 20|0); + $23 = HEAP32[$22>>2]|0; + HEAP32[$xNext>>2] = $23; + L9: while(1) { + $24 = HEAP32[$rc>>2]|0; + $25 = (0)==($24|0); + if (!($25)) { + break; + } + $26 = HEAP32[$xNext>>2]|0; + $27 = HEAP32[$pCsr>>2]|0; + $28 = (FUNCTION_TABLE_iiiiiii[$26 & 15]($27,$zToken,$nToken,$iStart,$iEnd,$iPos)|0); + HEAP32[$rc>>2] = $28; + $29 = (0)==($28|0); + if (!($29)) { + break; + } + $30 = HEAP32[$iPos>>2]|0; + $31 = HEAP32[$nWord>>2]|0; + $32 = ($30|0)>=($31|0); + if ($32) { + $33 = HEAP32[$iPos>>2]|0; + $34 = (($33) + 1)|0; + HEAP32[$nWord>>2] = $34; + } + $35 = HEAP32[$iPos>>2]|0; + $36 = ($35|0)<(0); + if ($36) { + label = 13; + break; + } + $37 = HEAP32[$zToken>>2]|0; + $38 = ($37|0)!=(0|0); + if (!($38)) { + label = 13; + break; + } + $39 = HEAP32[$nToken>>2]|0; + $40 = ($39|0)<=(0); + if ($40) { + label = 13; + break; + } + $41 = HEAP32[$1>>2]|0; + $42 = HEAP32[$4>>2]|0; + $43 = HEAP32[$iPos>>2]|0; + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 252|0); + $46 = HEAP32[$45>>2]|0; + $47 = (($46) + 4|0); + $48 = HEAP32[$zToken>>2]|0; + $49 = HEAP32[$nToken>>2]|0; + $50 = (_fts3PendingTermsAddOne($41,$42,$43,$47,$48,$49)|0); + HEAP32[$rc>>2] = $50; + HEAP32[$i>>2] = 1; + while(1) { + $51 = HEAP32[$rc>>2]|0; + $52 = ($51|0)==(0); + if (!($52)) { + continue L9; + } + $53 = HEAP32[$i>>2]|0; + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 248|0); + $56 = HEAP32[$55>>2]|0; + $57 = ($53|0)<($56|0); + if (!($57)) { + continue L9; + } + $58 = HEAP32[$i>>2]|0; + $59 = HEAP32[$1>>2]|0; + $60 = (($59) + 252|0); + $61 = HEAP32[$60>>2]|0; + $62 = (($61) + (($58*24)|0)|0); + HEAP32[$pIndex>>2] = $62; + $63 = HEAP32[$nToken>>2]|0; + $64 = HEAP32[$pIndex>>2]|0; + $65 = HEAP32[$64>>2]|0; + $66 = ($63|0)<($65|0); + if (!($66)) { + $67 = HEAP32[$1>>2]|0; + $68 = HEAP32[$4>>2]|0; + $69 = HEAP32[$iPos>>2]|0; + $70 = HEAP32[$pIndex>>2]|0; + $71 = (($70) + 4|0); + $72 = HEAP32[$zToken>>2]|0; + $73 = HEAP32[$pIndex>>2]|0; + $74 = HEAP32[$73>>2]|0; + $75 = (_fts3PendingTermsAddOne($67,$68,$69,$71,$72,$74)|0); + HEAP32[$rc>>2] = $75; + } + $76 = HEAP32[$i>>2]|0; + $77 = (($76) + 1)|0; + HEAP32[$i>>2] = $77; + } + } + if ((label|0) == 13) { + HEAP32[$rc>>2] = 1; + } + $78 = HEAP32[$pModule>>2]|0; + $79 = (($78) + 16|0); + $80 = HEAP32[$79>>2]|0; + $81 = HEAP32[$pCsr>>2]|0; + (FUNCTION_TABLE_ii[$80 & 63]($81)|0); + $82 = HEAP32[$nWord>>2]|0; + $83 = HEAP32[$5>>2]|0; + $84 = HEAP32[$83>>2]|0; + $85 = (($84) + ($82))|0; + HEAP32[$83>>2] = $85; + $86 = HEAP32[$rc>>2]|0; + $87 = ($86|0)==(101); + $88 = HEAP32[$rc>>2]|0; + $89 = $87 ? 0 : $88; + HEAP32[$0>>2] = $89; + $90 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($90|0); +} +function _fts3PendingTermsAddOne($p,$iCol,$iPos,$pHash,$zToken,$nToken) { + $p = $p|0; + $iCol = $iCol|0; + $iPos = $iPos|0; + $pHash = $pHash|0; + $zToken = $zToken|0; + $nToken = $nToken|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pList = 0, $rc = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $5 = sp + 16|0; + $pList = sp + 20|0; + $rc = sp + 24|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iCol; + HEAP32[$2>>2] = $iPos; + HEAP32[$3>>2] = $pHash; + HEAP32[$4>>2] = $zToken; + HEAP32[$5>>2] = $nToken; + HEAP32[$rc>>2] = 0; + $6 = HEAP32[$3>>2]|0; + $7 = HEAP32[$4>>2]|0; + $8 = HEAP32[$5>>2]|0; + $9 = (_sqlite3Fts3HashFind($6,$7,$8)|0); + HEAP32[$pList>>2] = $9; + $10 = HEAP32[$pList>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = HEAP32[$pList>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$5>>2]|0; + $15 = (($13) + ($14))|0; + $16 = (($15) + 20)|0; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 260|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) - ($16))|0; + HEAP32[$18>>2] = $20; + } + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 264|0); + $23 = $22; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = (($23) + 4)|0; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$1>>2]|0; + $30 = ($29|0)<(0); + $31 = $30 << 31 >> 31; + $32 = HEAP32[$2>>2]|0; + $33 = ($32|0)<(0); + $34 = $33 << 31 >> 31; + $35 = (_fts3PendingListAppend($pList,$25,$28,$29,$31,$32,$34,$rc)|0); + $36 = ($35|0)!=(0); + if ($36) { + $37 = HEAP32[$pList>>2]|0; + $38 = HEAP32[$3>>2]|0; + $39 = HEAP32[$4>>2]|0; + $40 = HEAP32[$5>>2]|0; + $41 = HEAP32[$pList>>2]|0; + $42 = (_sqlite3Fts3HashInsert($38,$39,$40,$41)|0); + $43 = ($37|0)==($42|0); + if ($43) { + $44 = HEAP32[$pList>>2]|0; + _sqlite3_free($44); + HEAP32[$rc>>2] = 7; + } + } + $45 = HEAP32[$rc>>2]|0; + $46 = ($45|0)==(0); + if (!($46)) { + $56 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($56|0); + } + $47 = HEAP32[$pList>>2]|0; + $48 = HEAP32[$47>>2]|0; + $49 = HEAP32[$5>>2]|0; + $50 = (($48) + ($49))|0; + $51 = (($50) + 20)|0; + $52 = HEAP32[$0>>2]|0; + $53 = (($52) + 260|0); + $54 = HEAP32[$53>>2]|0; + $55 = (($54) + ($51))|0; + HEAP32[$53>>2] = $55; + $56 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($56|0); +} +function _fts3DeleteTerms($pRC,$p,$pRowid,$aSz,$pbFound) { + $pRC = $pRC|0; + $p = $p|0; + $pRowid = $pRowid|0; + $aSz = $aSz|0; + $pbFound = $pbFound|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $i = 0, $iCol = 0, $iLangid = 0, $pSelect = 0, $rc = 0, $zText = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $rc = sp + 20|0; + $pSelect = sp + 12|0; + $i = sp + 8|0; + $iLangid = sp + 4|0; + $iCol = sp; + $zText = sp + 16|0; + HEAP32[$0>>2] = $pRC; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pRowid; + HEAP32[$3>>2] = $aSz; + HEAP32[$4>>2] = $pbFound; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0); + if ($7) { + STACKTOP = sp;return; + } + $8 = HEAP32[$1>>2]|0; + $9 = (_fts3SqlStmt($8,7,$pSelect,$2)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + $11 = ($10|0)==(0); + $12 = HEAP32[$pSelect>>2]|0; + if ($11) { + $13 = (_sqlite3_step($12)|0); + $14 = (100)==($13|0); + do { + if ($14) { + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$pSelect>>2]|0; + $17 = (_langidFromSelect($15,$16)|0); + HEAP32[$iLangid>>2] = $17; + $18 = HEAP32[$1>>2]|0; + $19 = HEAP32[$iLangid>>2]|0; + $20 = HEAP32[$pSelect>>2]|0; + $21 = (_sqlite3_column_int64($20,0)|0); + $22 = tempRet0; + $23 = (_fts3PendingTermsDocid($18,$19,$21,$22)|0); + HEAP32[$rc>>2] = $23; + HEAP32[$i>>2] = 1; + while(1) { + $24 = HEAP32[$rc>>2]|0; + $25 = ($24|0)==(0); + if (!($25)) { + break; + } + $26 = HEAP32[$i>>2]|0; + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 24|0); + $29 = HEAP32[$28>>2]|0; + $30 = ($26|0)<=($29|0); + if (!($30)) { + break; + } + $31 = HEAP32[$i>>2]|0; + $32 = (($31) - 1)|0; + HEAP32[$iCol>>2] = $32; + $33 = HEAP32[$iCol>>2]|0; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 32|0); + $36 = HEAP32[$35>>2]|0; + $37 = (($36) + ($33)|0); + $38 = HEAP8[$37>>0]|0; + $39 = $38&255; + $40 = ($39|0)==(0); + if ($40) { + $41 = HEAP32[$pSelect>>2]|0; + $42 = HEAP32[$i>>2]|0; + $43 = (_sqlite3_column_text($41,$42)|0); + HEAP32[$zText>>2] = $43; + $44 = HEAP32[$1>>2]|0; + $45 = HEAP32[$iLangid>>2]|0; + $46 = HEAP32[$zText>>2]|0; + $47 = HEAP32[$iCol>>2]|0; + $48 = HEAP32[$3>>2]|0; + $49 = (($48) + ($47<<2)|0); + $50 = (_fts3PendingTermsAdd($44,$45,$46,-1,$49)|0); + HEAP32[$rc>>2] = $50; + $51 = HEAP32[$pSelect>>2]|0; + $52 = HEAP32[$i>>2]|0; + $53 = (_sqlite3_column_bytes($51,$52)|0); + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 24|0); + $56 = HEAP32[$55>>2]|0; + $57 = HEAP32[$3>>2]|0; + $58 = (($57) + ($56<<2)|0); + $59 = HEAP32[$58>>2]|0; + $60 = (($59) + ($53))|0; + HEAP32[$58>>2] = $60; + } + $61 = HEAP32[$i>>2]|0; + $62 = (($61) + 1)|0; + HEAP32[$i>>2] = $62; + } + $63 = HEAP32[$rc>>2]|0; + $64 = ($63|0)!=(0); + if (!($64)) { + $68 = HEAP32[$4>>2]|0; + HEAP32[$68>>2] = 1; + break; + } + $65 = HEAP32[$pSelect>>2]|0; + (_sqlite3_reset($65)|0); + $66 = HEAP32[$rc>>2]|0; + $67 = HEAP32[$0>>2]|0; + HEAP32[$67>>2] = $66; + STACKTOP = sp;return; + } + } while(0); + $69 = HEAP32[$pSelect>>2]|0; + $70 = (_sqlite3_reset($69)|0); + HEAP32[$rc>>2] = $70; + } else { + (_sqlite3_reset($12)|0); + } + $71 = HEAP32[$rc>>2]|0; + $72 = HEAP32[$0>>2]|0; + HEAP32[$72>>2] = $71; + STACKTOP = sp;return; +} +function _fts3IsEmpty($p,$pRowid,$pisEmpty) { + $p = $p|0; + $pRowid = $pRowid|0; + $pisEmpty = $pisEmpty|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $pStmt = sp + 8|0; + $rc = sp + 12|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pRowid; + HEAP32[$2>>2] = $pisEmpty; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 40|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if ($6) { + $7 = HEAP32[$2>>2]|0; + HEAP32[$7>>2] = 0; + HEAP32[$rc>>2] = 0; + $20 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($20|0); + } + $8 = HEAP32[$0>>2]|0; + $9 = (_fts3SqlStmt($8,1,$pStmt,$1)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + $11 = ($10|0)==(0); + if (!($11)) { + $20 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($20|0); + } + $12 = HEAP32[$pStmt>>2]|0; + $13 = (_sqlite3_step($12)|0); + $14 = (100)==($13|0); + if ($14) { + $15 = HEAP32[$pStmt>>2]|0; + $16 = (_sqlite3_column_int($15,0)|0); + $17 = HEAP32[$2>>2]|0; + HEAP32[$17>>2] = $16; + } + $18 = HEAP32[$pStmt>>2]|0; + $19 = (_sqlite3_reset($18)|0); + HEAP32[$rc>>2] = $19; + $20 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($20|0); +} +function _fts3DeleteAll($p,$bContent) { + $p = $p|0; + $bContent = $bContent|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $bContent; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + _sqlite3Fts3PendingTermsClear($2); + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)!=(0); + if ($4) { + $5 = HEAP32[$0>>2]|0; + _fts3SqlExec($rc,$5,2,0); + } + $6 = HEAP32[$0>>2]|0; + _fts3SqlExec($rc,$6,3,0); + $7 = HEAP32[$0>>2]|0; + _fts3SqlExec($rc,$7,4,0); + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 230|0); + $10 = HEAP8[$9>>0]|0; + $11 = ($10<<24>>24)!=(0); + if ($11) { + $12 = HEAP32[$0>>2]|0; + _fts3SqlExec($rc,$12,5,0); + } + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 229|0); + $15 = HEAP8[$14>>0]|0; + $16 = ($15<<24>>24)!=(0); + if (!($16)) { + $18 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($18|0); + } + $17 = HEAP32[$0>>2]|0; + _fts3SqlExec($rc,$17,6,0); + $18 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($18|0); +} +function _fts3SqlExec($pRC,$p,$eStmt,$apVal) { + $pRC = $pRC|0; + $p = $p|0; + $eStmt = $eStmt|0; + $apVal = $apVal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pStmt = 0, $rc = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pStmt = sp + 12|0; + $rc = sp + 16|0; + HEAP32[$0>>2] = $pRC; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $eStmt; + HEAP32[$3>>2] = $apVal; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0); + if ($6) { + STACKTOP = sp;return; + } + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$3>>2]|0; + $10 = (_fts3SqlStmt($7,$8,$pStmt,$9)|0); + HEAP32[$rc>>2] = $10; + $11 = HEAP32[$rc>>2]|0; + $12 = ($11|0)==(0); + if ($12) { + $13 = HEAP32[$pStmt>>2]|0; + (_sqlite3_step($13)|0); + $14 = HEAP32[$pStmt>>2]|0; + $15 = (_sqlite3_reset($14)|0); + HEAP32[$rc>>2] = $15; + } + $16 = HEAP32[$rc>>2]|0; + $17 = HEAP32[$0>>2]|0; + HEAP32[$17>>2] = $16; + STACKTOP = sp;return; +} +function _langidFromSelect($p,$pSelect) { + $p = $p|0; + $pSelect = $pSelect|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iLangid = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $iLangid = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pSelect; + HEAP32[$iLangid>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 44|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $12 = HEAP32[$iLangid>>2]|0; + STACKTOP = sp;return ($12|0); + } + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 24|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 1)|0; + $11 = (_sqlite3_column_int($6,$10)|0); + HEAP32[$iLangid>>2] = $11; + $12 = HEAP32[$iLangid>>2]|0; + STACKTOP = sp;return ($12|0); +} +function _fts3DoRebuild($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; + var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aSz = 0, $aSzDel = 0, $aSzIns = 0, $iCol = 0, $iLangid = 0, $nByte = 0, $nEntry = 0, $pStmt = 0, $rc = 0, $rc2 = 0, $vararg_buffer = 0, $z = 0, $zSql = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer = sp; + $0 = sp + 48|0; + $rc = sp + 44|0; + $aSz = sp + 40|0; + $aSzIns = sp + 36|0; + $aSzDel = sp + 32|0; + $pStmt = sp + 28|0; + $nEntry = sp + 52|0; + $zSql = sp + 16|0; + $nByte = sp + 12|0; + $iCol = sp + 8|0; + $iLangid = sp + 4|0; + $z = sp + 20|0; + $rc2 = sp + 24|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (_fts3DeleteAll($1,0)|0); + HEAP32[$rc>>2] = $2; + $3 = HEAP32[$rc>>2]|0; + $4 = ($3|0)==(0); + if (!($4)) { + $145 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($145|0); + } + HEAP32[$aSz>>2] = 0; + HEAP32[$aSzIns>>2] = 0; + HEAP32[$aSzDel>>2] = 0; + HEAP32[$pStmt>>2] = 0; + HEAP32[$nEntry>>2] = 0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 216|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$vararg_buffer>>2] = $7; + $8 = (_sqlite3_mprintf(7448,$vararg_buffer)|0); + HEAP32[$zSql>>2] = $8; + $9 = HEAP32[$zSql>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 12|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$zSql>>2]|0; + $15 = (_sqlite3_prepare_v2($13,$14,-1,$pStmt,0)|0); + HEAP32[$rc>>2] = $15; + $16 = HEAP32[$zSql>>2]|0; + _sqlite3_free($16); + } else { + HEAP32[$rc>>2] = 7; + } + $17 = HEAP32[$rc>>2]|0; + $18 = ($17|0)==(0); + do { + if ($18) { + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 24|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + 1)|0; + $23 = $22<<2; + $24 = ($23*3)|0; + HEAP32[$nByte>>2] = $24; + $25 = HEAP32[$nByte>>2]|0; + $26 = (_sqlite3_malloc($25)|0); + HEAP32[$aSz>>2] = $26; + $27 = HEAP32[$aSz>>2]|0; + $28 = ($27|0)==(0|0); + if ($28) { + HEAP32[$rc>>2] = 7; + break; + } else { + $29 = HEAP32[$aSz>>2]|0; + $30 = HEAP32[$nByte>>2]|0; + _memset(($29|0),0,($30|0))|0; + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 24|0); + $33 = HEAP32[$32>>2]|0; + $34 = (($33) + 1)|0; + $35 = HEAP32[$aSz>>2]|0; + $36 = (($35) + ($34<<2)|0); + HEAP32[$aSzIns>>2] = $36; + $37 = HEAP32[$0>>2]|0; + $38 = (($37) + 24|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + 1)|0; + $41 = HEAP32[$aSzIns>>2]|0; + $42 = (($41) + ($40<<2)|0); + HEAP32[$aSzDel>>2] = $42; + break; + } + } + } while(0); + L13: while(1) { + $43 = HEAP32[$rc>>2]|0; + $44 = ($43|0)==(0); + if ($44) { + $45 = HEAP32[$pStmt>>2]|0; + $46 = (_sqlite3_step($45)|0); + $47 = (100)==($46|0); + $146 = $47; + } else { + $146 = 0; + } + $48 = HEAP32[$0>>2]|0; + if (!($146)) { + break; + } + $49 = HEAP32[$pStmt>>2]|0; + $50 = (_langidFromSelect($48,$49)|0); + HEAP32[$iLangid>>2] = $50; + $51 = HEAP32[$0>>2]|0; + $52 = HEAP32[$iLangid>>2]|0; + $53 = HEAP32[$pStmt>>2]|0; + $54 = (_sqlite3_column_int64($53,0)|0); + $55 = tempRet0; + $56 = (_fts3PendingTermsDocid($51,$52,$54,$55)|0); + HEAP32[$rc>>2] = $56; + $57 = HEAP32[$aSz>>2]|0; + $58 = HEAP32[$0>>2]|0; + $59 = (($58) + 24|0); + $60 = HEAP32[$59>>2]|0; + $61 = (($60) + 1)|0; + $62 = $61<<2; + _memset(($57|0),0,($62|0))|0; + HEAP32[$iCol>>2] = 0; + while(1) { + $63 = HEAP32[$rc>>2]|0; + $64 = ($63|0)==(0); + if (!($64)) { + break; + } + $65 = HEAP32[$iCol>>2]|0; + $66 = HEAP32[$0>>2]|0; + $67 = (($66) + 24|0); + $68 = HEAP32[$67>>2]|0; + $69 = ($65|0)<($68|0); + if (!($69)) { + break; + } + $70 = HEAP32[$iCol>>2]|0; + $71 = HEAP32[$0>>2]|0; + $72 = (($71) + 32|0); + $73 = HEAP32[$72>>2]|0; + $74 = (($73) + ($70)|0); + $75 = HEAP8[$74>>0]|0; + $76 = $75&255; + $77 = ($76|0)==(0); + if ($77) { + $78 = HEAP32[$pStmt>>2]|0; + $79 = HEAP32[$iCol>>2]|0; + $80 = (($79) + 1)|0; + $81 = (_sqlite3_column_text($78,$80)|0); + HEAP32[$z>>2] = $81; + $82 = HEAP32[$0>>2]|0; + $83 = HEAP32[$iLangid>>2]|0; + $84 = HEAP32[$z>>2]|0; + $85 = HEAP32[$iCol>>2]|0; + $86 = HEAP32[$iCol>>2]|0; + $87 = HEAP32[$aSz>>2]|0; + $88 = (($87) + ($86<<2)|0); + $89 = (_fts3PendingTermsAdd($82,$83,$84,$85,$88)|0); + HEAP32[$rc>>2] = $89; + $90 = HEAP32[$pStmt>>2]|0; + $91 = HEAP32[$iCol>>2]|0; + $92 = (($91) + 1)|0; + $93 = (_sqlite3_column_bytes($90,$92)|0); + $94 = HEAP32[$0>>2]|0; + $95 = (($94) + 24|0); + $96 = HEAP32[$95>>2]|0; + $97 = HEAP32[$aSz>>2]|0; + $98 = (($97) + ($96<<2)|0); + $99 = HEAP32[$98>>2]|0; + $100 = (($99) + ($93))|0; + HEAP32[$98>>2] = $100; + } + $101 = HEAP32[$iCol>>2]|0; + $102 = (($101) + 1)|0; + HEAP32[$iCol>>2] = $102; + } + $103 = HEAP32[$0>>2]|0; + $104 = (($103) + 230|0); + $105 = HEAP8[$104>>0]|0; + $106 = ($105<<24>>24)!=(0); + if ($106) { + $107 = HEAP32[$0>>2]|0; + $108 = HEAP32[$aSz>>2]|0; + _fts3InsertDocsize($rc,$107,$108); + } + $109 = HEAP32[$rc>>2]|0; + $110 = ($109|0)!=(0); + if ($110) { + $111 = HEAP32[$pStmt>>2]|0; + (_sqlite3_finalize($111)|0); + HEAP32[$pStmt>>2] = 0; + continue; + } + $112 = HEAP32[$nEntry>>2]|0; + $113 = (($112) + 1)|0; + HEAP32[$nEntry>>2] = $113; + HEAP32[$iCol>>2] = 0; + while(1) { + $114 = HEAP32[$iCol>>2]|0; + $115 = HEAP32[$0>>2]|0; + $116 = (($115) + 24|0); + $117 = HEAP32[$116>>2]|0; + $118 = ($114|0)<=($117|0); + if (!($118)) { + continue L13; + } + $119 = HEAP32[$iCol>>2]|0; + $120 = HEAP32[$aSz>>2]|0; + $121 = (($120) + ($119<<2)|0); + $122 = HEAP32[$121>>2]|0; + $123 = HEAP32[$iCol>>2]|0; + $124 = HEAP32[$aSzIns>>2]|0; + $125 = (($124) + ($123<<2)|0); + $126 = HEAP32[$125>>2]|0; + $127 = (($126) + ($122))|0; + HEAP32[$125>>2] = $127; + $128 = HEAP32[$iCol>>2]|0; + $129 = (($128) + 1)|0; + HEAP32[$iCol>>2] = $129; + } + } + $130 = (($48) + 228|0); + $131 = HEAP8[$130>>0]|0; + $132 = ($131<<24>>24)!=(0); + if ($132) { + $133 = HEAP32[$0>>2]|0; + $134 = HEAP32[$aSzIns>>2]|0; + $135 = HEAP32[$aSzDel>>2]|0; + $136 = HEAP32[$nEntry>>2]|0; + _fts3UpdateDocTotals($rc,$133,$134,$135,$136); + } + $137 = HEAP32[$aSz>>2]|0; + _sqlite3_free($137); + $138 = HEAP32[$pStmt>>2]|0; + $139 = ($138|0)!=(0|0); + if (!($139)) { + $145 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($145|0); + } + $140 = HEAP32[$pStmt>>2]|0; + $141 = (_sqlite3_finalize($140)|0); + HEAP32[$rc2>>2] = $141; + $142 = HEAP32[$rc>>2]|0; + $143 = ($142|0)==(0); + if (!($143)) { + $145 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($145|0); + } + $144 = HEAP32[$rc2>>2]|0; + HEAP32[$rc>>2] = $144; + $145 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($145|0); +} +function _fts3DoIntegrityCheck($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $bOk = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $rc = sp; + $bOk = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$bOk>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (_fts3IntegrityCheck($1,$bOk)|0); + HEAP32[$rc>>2] = $2; + $3 = HEAP32[$rc>>2]|0; + $4 = ($3|0)==(0); + if ($4) { + $5 = HEAP32[$bOk>>2]|0; + $6 = ($5|0)==(0); + if ($6) { + HEAP32[$rc>>2] = 267; + } + } + $7 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($7|0); +} +function _fts3DoIncrmerge($p,$zParam) { + $p = $p|0; + $zParam = $zParam|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nMerge = 0, $nMin = 0, $rc = 0, $z = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $rc = sp + 4|0; + $nMin = sp + 8|0; + $nMerge = sp + 12|0; + $z = sp + 16|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $zParam; + HEAP32[$nMin>>2] = 8; + HEAP32[$nMerge>>2] = 0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$z>>2] = $2; + $3 = (_fts3Getint($z)|0); + HEAP32[$nMerge>>2] = $3; + $4 = HEAP32[$z>>2]|0; + $5 = HEAP8[$4>>0]|0; + $6 = $5 << 24 >> 24; + $7 = ($6|0)==(44); + if ($7) { + $8 = HEAP32[$z>>2]|0; + $9 = (($8) + 1|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10 << 24 >> 24; + $12 = ($11|0)!=(0); + if ($12) { + $13 = HEAP32[$z>>2]|0; + $14 = (($13) + 1|0); + HEAP32[$z>>2] = $14; + $15 = (_fts3Getint($z)|0); + HEAP32[$nMin>>2] = $15; + } + } + $16 = HEAP32[$z>>2]|0; + $17 = HEAP8[$16>>0]|0; + $18 = $17 << 24 >> 24; + $19 = ($18|0)!=(0); + if (!($19)) { + $20 = HEAP32[$nMin>>2]|0; + $21 = ($20|0)<(2); + if (!($21)) { + HEAP32[$rc>>2] = 0; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 229|0); + $24 = HEAP8[$23>>0]|0; + $25 = ($24<<24>>24)!=(0); + if (!($25)) { + $26 = HEAP32[$0>>2]|0; + _sqlite3Fts3CreateStatTable($rc,$26); + } + $27 = HEAP32[$rc>>2]|0; + $28 = ($27|0)==(0); + if ($28) { + $29 = HEAP32[$0>>2]|0; + $30 = HEAP32[$nMerge>>2]|0; + $31 = HEAP32[$nMin>>2]|0; + $32 = (_sqlite3Fts3Incrmerge($29,$30,$31)|0); + HEAP32[$rc>>2] = $32; + } + $33 = HEAP32[$0>>2]|0; + _sqlite3Fts3SegmentsClose($33); + $34 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($34|0); + } + } + HEAP32[$rc>>2] = 1; + $34 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($34|0); +} +function _fts3DoAutoincrmerge($p,$zParam) { + $p = $p|0; + $zParam = $zParam|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pStmt = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $pStmt = sp + 12|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $zParam; + HEAP32[$rc>>2] = 0; + HEAP32[$pStmt>>2] = 0; + $3 = (_fts3Getint($2)|0); + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 48|0); + HEAP32[$5>>2] = $3; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 48|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)==(1); + if ($9) { + label = 3; + } else { + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 48|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)>(16); + if ($13) { + label = 3; + } + } + if ((label|0) == 3) { + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 48|0); + HEAP32[$15>>2] = 8; + } + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 229|0); + $18 = HEAP8[$17>>0]|0; + $19 = ($18<<24>>24)!=(0); + if (!($19)) { + $20 = HEAP32[$1>>2]|0; + _sqlite3Fts3CreateStatTable($rc,$20); + $21 = HEAP32[$rc>>2]|0; + $22 = ($21|0)!=(0); + if ($22) { + $23 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $23; + $38 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($38|0); + } + } + $24 = HEAP32[$1>>2]|0; + $25 = (_fts3SqlStmt($24,23,$pStmt,0)|0); + HEAP32[$rc>>2] = $25; + $26 = HEAP32[$rc>>2]|0; + $27 = ($26|0)!=(0); + if ($27) { + $28 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $28; + $38 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($38|0); + } else { + $29 = HEAP32[$pStmt>>2]|0; + (_sqlite3_bind_int($29,1,2)|0); + $30 = HEAP32[$pStmt>>2]|0; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 48|0); + $33 = HEAP32[$32>>2]|0; + (_sqlite3_bind_int($30,2,$33)|0); + $34 = HEAP32[$pStmt>>2]|0; + (_sqlite3_step($34)|0); + $35 = HEAP32[$pStmt>>2]|0; + $36 = (_sqlite3_reset($35)|0); + HEAP32[$rc>>2] = $36; + $37 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $37; + $38 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($38|0); + } + return 0|0; +} +function _fts3Getint($pz) { + $pz = $pz|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $i = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $z = sp; + $i = sp + 4|0; + HEAP32[$0>>2] = $pz; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$z>>2] = $2; + HEAP32[$i>>2] = 0; + while(1) { + $3 = HEAP32[$z>>2]|0; + $4 = HEAP8[$3>>0]|0; + $5 = $4 << 24 >> 24; + $6 = ($5|0)>=(48); + if (!($6)) { + label = 5; + break; + } + $7 = HEAP32[$z>>2]|0; + $8 = HEAP8[$7>>0]|0; + $9 = $8 << 24 >> 24; + $10 = ($9|0)<=(57); + if (!($10)) { + label = 5; + break; + } + $11 = HEAP32[$i>>2]|0; + $12 = ($11*10)|0; + $13 = HEAP32[$z>>2]|0; + $14 = (($13) + 1|0); + HEAP32[$z>>2] = $14; + $15 = HEAP8[$13>>0]|0; + $16 = $15 << 24 >> 24; + $17 = (($12) + ($16))|0; + $18 = (($17) - 48)|0; + HEAP32[$i>>2] = $18; + } + if ((label|0) == 5) { + $19 = HEAP32[$z>>2]|0; + $20 = HEAP32[$0>>2]|0; + HEAP32[$20>>2] = $19; + $21 = HEAP32[$i>>2]|0; + STACKTOP = sp;return ($21|0); + } + return 0|0; +} +function _sqlite3Fts3CreateStatTable($pRc,$p) { + $pRc = $pRc|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 12|0; + $1 = sp + 8|0; + HEAP32[$0>>2] = $pRc; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 16|0); + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 20|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$vararg_buffer>>2] = $8; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $11; + _fts3DbExec($2,$5,7368,$vararg_buffer); + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)==(0); + if (!($14)) { + STACKTOP = sp;return; + } + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 229|0); + HEAP8[$16>>0] = 1; + STACKTOP = sp;return; +} +function _fts3IntegrityCheck($p,$pbOk) { + $p = $p|0; + $pbOk = $pbOk|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $cksum1 = 0, $cksum2 = 0, $i = 0, $i1 = 0, $iCol = 0, $iDocid = 0, $iDum1 = 0, $iDum2 = 0, $iLang = 0, $iLangid = 0, $iPos = 0, $nText = 0, $nToken = 0, $pAllLangid = 0, $pModule = 0, $pStmt = 0, $pT = 0, $rc = 0, $rc2 = 0, $vararg_buffer = 0; + var $zSql = 0, $zText = 0, $zToken = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $vararg_buffer = sp; + $0 = sp + 108|0; + $1 = sp + 104|0; + $rc = sp + 100|0; + $cksum1 = sp + 8|0; + $cksum2 = sp + 16|0; + $pAllLangid = sp + 96|0; + $rc2 = sp + 92|0; + $iLangid = sp + 88|0; + $i = sp + 84|0; + $pModule = sp + 80|0; + $pStmt = sp + 76|0; + $zSql = sp + 112|0; + $iDocid = sp + 24|0; + $iLang = sp + 40|0; + $iCol = sp + 52|0; + $zText = sp + 36|0; + $nText = sp + 48|0; + $pT = sp + 44|0; + $zToken = sp + 72|0; + $nToken = sp + 56|0; + $iDum1 = sp + 60|0; + $iDum2 = sp + 64|0; + $iPos = sp + 68|0; + $i1 = sp + 32|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pbOk; + HEAP32[$rc>>2] = 0; + $2 = $cksum1; + $3 = $2; + HEAP32[$3>>2] = 0; + $4 = (($2) + 4)|0; + $5 = $4; + HEAP32[$5>>2] = 0; + $6 = $cksum2; + $7 = $6; + HEAP32[$7>>2] = 0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = 0; + HEAP32[$pAllLangid>>2] = 0; + $10 = HEAP32[$0>>2]|0; + $11 = (_fts3SqlStmt($10,27,$pAllLangid,0)|0); + HEAP32[$rc>>2] = $11; + $12 = HEAP32[$rc>>2]|0; + $13 = ($12|0)==(0); + if ($13) { + $14 = HEAP32[$pAllLangid>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 248|0); + $17 = HEAP32[$16>>2]|0; + (_sqlite3_bind_int($14,1,$17)|0); + L3: while(1) { + $18 = HEAP32[$rc>>2]|0; + $19 = ($18|0)==(0); + if ($19) { + $20 = HEAP32[$pAllLangid>>2]|0; + $21 = (_sqlite3_step($20)|0); + $22 = ($21|0)==(100); + $218 = $22; + } else { + $218 = 0; + } + $23 = HEAP32[$pAllLangid>>2]|0; + if (!($218)) { + break; + } + $24 = (_sqlite3_column_int($23,0)|0); + HEAP32[$iLangid>>2] = $24; + HEAP32[$i>>2] = 0; + while(1) { + $25 = HEAP32[$i>>2]|0; + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 248|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($25|0)<($28|0); + if (!($29)) { + continue L3; + } + $30 = $cksum1; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$0>>2]|0; + $37 = HEAP32[$iLangid>>2]|0; + $38 = HEAP32[$i>>2]|0; + $39 = (_fts3ChecksumIndex($36,$37,$38,$rc)|0); + $40 = tempRet0; + $41 = $32 ^ $39; + $42 = $35 ^ $40; + $43 = $cksum1; + $44 = $43; + HEAP32[$44>>2] = $41; + $45 = (($43) + 4)|0; + $46 = $45; + HEAP32[$46>>2] = $42; + $47 = HEAP32[$i>>2]|0; + $48 = (($47) + 1)|0; + HEAP32[$i>>2] = $48; + } + } + $49 = (_sqlite3_reset($23)|0); + HEAP32[$rc2>>2] = $49; + $50 = HEAP32[$rc>>2]|0; + $51 = ($50|0)==(0); + if ($51) { + $52 = HEAP32[$rc2>>2]|0; + HEAP32[$rc>>2] = $52; + } + } + $53 = HEAP32[$0>>2]|0; + $54 = (_fts3SqlStmt($53,27,$pAllLangid,0)|0); + HEAP32[$rc>>2] = $54; + $55 = HEAP32[$rc>>2]|0; + $56 = ($55|0)==(0); + if (!($56)) { + $200 = $cksum1; + $201 = $200; + $202 = HEAP32[$201>>2]|0; + $203 = (($200) + 4)|0; + $204 = $203; + $205 = HEAP32[$204>>2]|0; + $206 = $cksum2; + $207 = $206; + $208 = HEAP32[$207>>2]|0; + $209 = (($206) + 4)|0; + $210 = $209; + $211 = HEAP32[$210>>2]|0; + $212 = ($202|0)==($208|0); + $213 = ($205|0)==($211|0); + $214 = $212 & $213; + $215 = $214&1; + $216 = HEAP32[$1>>2]|0; + HEAP32[$216>>2] = $215; + $217 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($217|0); + } + $57 = HEAP32[$0>>2]|0; + $58 = (($57) + 36|0); + $59 = HEAP32[$58>>2]|0; + $60 = HEAP32[$59>>2]|0; + HEAP32[$pModule>>2] = $60; + HEAP32[$pStmt>>2] = 0; + $61 = HEAP32[$0>>2]|0; + $62 = (($61) + 216|0); + $63 = HEAP32[$62>>2]|0; + HEAP32[$vararg_buffer>>2] = $63; + $64 = (_sqlite3_mprintf(7448,$vararg_buffer)|0); + HEAP32[$zSql>>2] = $64; + $65 = HEAP32[$zSql>>2]|0; + $66 = ($65|0)!=(0|0); + if ($66) { + $67 = HEAP32[$0>>2]|0; + $68 = (($67) + 12|0); + $69 = HEAP32[$68>>2]|0; + $70 = HEAP32[$zSql>>2]|0; + $71 = (_sqlite3_prepare_v2($69,$70,-1,$pStmt,0)|0); + HEAP32[$rc>>2] = $71; + $72 = HEAP32[$zSql>>2]|0; + _sqlite3_free($72); + } else { + HEAP32[$rc>>2] = 7; + } + L21: while(1) { + $73 = HEAP32[$rc>>2]|0; + $74 = ($73|0)==(0); + if ($74) { + $75 = HEAP32[$pStmt>>2]|0; + $76 = (_sqlite3_step($75)|0); + $77 = (100)==($76|0); + $219 = $77; + } else { + $219 = 0; + } + $78 = HEAP32[$pStmt>>2]|0; + if (!($219)) { + break; + } + $79 = (_sqlite3_column_int64($78,0)|0); + $80 = tempRet0; + $81 = $iDocid; + $82 = $81; + HEAP32[$82>>2] = $79; + $83 = (($81) + 4)|0; + $84 = $83; + HEAP32[$84>>2] = $80; + $85 = HEAP32[$0>>2]|0; + $86 = HEAP32[$pStmt>>2]|0; + $87 = (_langidFromSelect($85,$86)|0); + HEAP32[$iLang>>2] = $87; + HEAP32[$iCol>>2] = 0; + while(1) { + $88 = HEAP32[$rc>>2]|0; + $89 = ($88|0)==(0); + if (!($89)) { + continue L21; + } + $90 = HEAP32[$iCol>>2]|0; + $91 = HEAP32[$0>>2]|0; + $92 = (($91) + 24|0); + $93 = HEAP32[$92>>2]|0; + $94 = ($90|0)<($93|0); + if (!($94)) { + continue L21; + } + $95 = HEAP32[$pStmt>>2]|0; + $96 = HEAP32[$iCol>>2]|0; + $97 = (($96) + 1)|0; + $98 = (_sqlite3_column_text($95,$97)|0); + HEAP32[$zText>>2] = $98; + $99 = HEAP32[$pStmt>>2]|0; + $100 = HEAP32[$iCol>>2]|0; + $101 = (($100) + 1)|0; + $102 = (_sqlite3_column_bytes($99,$101)|0); + HEAP32[$nText>>2] = $102; + HEAP32[$pT>>2] = 0; + $103 = HEAP32[$0>>2]|0; + $104 = (($103) + 36|0); + $105 = HEAP32[$104>>2]|0; + $106 = HEAP32[$iLang>>2]|0; + $107 = HEAP32[$zText>>2]|0; + $108 = HEAP32[$nText>>2]|0; + $109 = (_sqlite3Fts3OpenTokenizer($105,$106,$107,$108,$pT)|0); + HEAP32[$rc>>2] = $109; + L31: while(1) { + $110 = HEAP32[$rc>>2]|0; + $111 = ($110|0)==(0); + if (!($111)) { + break; + } + HEAP32[$nToken>>2] = 0; + HEAP32[$iDum1>>2] = 0; + HEAP32[$iDum2>>2] = 0; + HEAP32[$iPos>>2] = 0; + $112 = HEAP32[$pModule>>2]|0; + $113 = (($112) + 20|0); + $114 = HEAP32[$113>>2]|0; + $115 = HEAP32[$pT>>2]|0; + $116 = (FUNCTION_TABLE_iiiiiii[$114 & 15]($115,$zToken,$nToken,$iDum1,$iDum2,$iPos)|0); + HEAP32[$rc>>2] = $116; + $117 = HEAP32[$rc>>2]|0; + $118 = ($117|0)==(0); + if (!($118)) { + continue; + } + $119 = $cksum2; + $120 = $119; + $121 = HEAP32[$120>>2]|0; + $122 = (($119) + 4)|0; + $123 = $122; + $124 = HEAP32[$123>>2]|0; + $125 = HEAP32[$zToken>>2]|0; + $126 = HEAP32[$nToken>>2]|0; + $127 = HEAP32[$iLang>>2]|0; + $128 = $iDocid; + $129 = $128; + $130 = HEAP32[$129>>2]|0; + $131 = (($128) + 4)|0; + $132 = $131; + $133 = HEAP32[$132>>2]|0; + $134 = HEAP32[$iCol>>2]|0; + $135 = HEAP32[$iPos>>2]|0; + $136 = (_fts3ChecksumEntry($125,$126,$127,0,$130,$133,$134,$135)|0); + $137 = tempRet0; + $138 = $121 ^ $136; + $139 = $124 ^ $137; + $140 = $cksum2; + $141 = $140; + HEAP32[$141>>2] = $138; + $142 = (($140) + 4)|0; + $143 = $142; + HEAP32[$143>>2] = $139; + HEAP32[$i1>>2] = 1; + while(1) { + $144 = HEAP32[$i1>>2]|0; + $145 = HEAP32[$0>>2]|0; + $146 = (($145) + 248|0); + $147 = HEAP32[$146>>2]|0; + $148 = ($144|0)<($147|0); + if (!($148)) { + continue L31; + } + $149 = HEAP32[$i1>>2]|0; + $150 = HEAP32[$0>>2]|0; + $151 = (($150) + 252|0); + $152 = HEAP32[$151>>2]|0; + $153 = (($152) + (($149*24)|0)|0); + $154 = HEAP32[$153>>2]|0; + $155 = HEAP32[$nToken>>2]|0; + $156 = ($154|0)<=($155|0); + if ($156) { + $157 = $cksum2; + $158 = $157; + $159 = HEAP32[$158>>2]|0; + $160 = (($157) + 4)|0; + $161 = $160; + $162 = HEAP32[$161>>2]|0; + $163 = HEAP32[$zToken>>2]|0; + $164 = HEAP32[$i1>>2]|0; + $165 = HEAP32[$0>>2]|0; + $166 = (($165) + 252|0); + $167 = HEAP32[$166>>2]|0; + $168 = (($167) + (($164*24)|0)|0); + $169 = HEAP32[$168>>2]|0; + $170 = HEAP32[$iLang>>2]|0; + $171 = HEAP32[$i1>>2]|0; + $172 = $iDocid; + $173 = $172; + $174 = HEAP32[$173>>2]|0; + $175 = (($172) + 4)|0; + $176 = $175; + $177 = HEAP32[$176>>2]|0; + $178 = HEAP32[$iCol>>2]|0; + $179 = HEAP32[$iPos>>2]|0; + $180 = (_fts3ChecksumEntry($163,$169,$170,$171,$174,$177,$178,$179)|0); + $181 = tempRet0; + $182 = $159 ^ $180; + $183 = $162 ^ $181; + $184 = $cksum2; + $185 = $184; + HEAP32[$185>>2] = $182; + $186 = (($184) + 4)|0; + $187 = $186; + HEAP32[$187>>2] = $183; + } + $188 = HEAP32[$i1>>2]|0; + $189 = (($188) + 1)|0; + HEAP32[$i1>>2] = $189; + } + } + $190 = HEAP32[$pT>>2]|0; + $191 = ($190|0)!=(0|0); + if ($191) { + $192 = HEAP32[$pModule>>2]|0; + $193 = (($192) + 16|0); + $194 = HEAP32[$193>>2]|0; + $195 = HEAP32[$pT>>2]|0; + (FUNCTION_TABLE_ii[$194 & 63]($195)|0); + } + $196 = HEAP32[$rc>>2]|0; + $197 = ($196|0)==(101); + if ($197) { + HEAP32[$rc>>2] = 0; + } + $198 = HEAP32[$iCol>>2]|0; + $199 = (($198) + 1)|0; + HEAP32[$iCol>>2] = $199; + } + } + (_sqlite3_finalize($78)|0); + $200 = $cksum1; + $201 = $200; + $202 = HEAP32[$201>>2]|0; + $203 = (($200) + 4)|0; + $204 = $203; + $205 = HEAP32[$204>>2]|0; + $206 = $cksum2; + $207 = $206; + $208 = HEAP32[$207>>2]|0; + $209 = (($206) + 4)|0; + $210 = $209; + $211 = HEAP32[$210>>2]|0; + $212 = ($202|0)==($208|0); + $213 = ($205|0)==($211|0); + $214 = $212 & $213; + $215 = $214&1; + $216 = HEAP32[$1>>2]|0; + HEAP32[$216>>2] = $215; + $217 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($217|0); +} +function _fts3ChecksumIndex($p,$iLangid,$iIndex,$pRc) { + $p = $p|0; + $iLangid = $iLangid|0; + $iIndex = $iIndex|0; + $pRc = $pRc|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $19 = 0, $2 = 0; + var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cksum = 0, $csr = 0, $filter = 0, $iCol = 0, $iDocid = 0, $iPos = 0, $iVal = 0, $or$cond = 0, $pCsr = 0, $pEnd = 0, $rc = 0, dest = 0, label = 0; + var sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; + $0 = sp + 52|0; + $1 = sp + 40|0; + $2 = sp + 44|0; + $3 = sp + 48|0; + $filter = sp + 64|0; + $csr = sp + 88|0; + $rc = sp + 80|0; + $cksum = sp + 32|0; + $pCsr = sp + 60|0; + $pEnd = sp + 56|0; + $iDocid = sp + 16|0; + $iCol = sp + 8|0; + $iPos = sp; + $iVal = sp + 24|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iLangid; + HEAP32[$2>>2] = $iIndex; + HEAP32[$3>>2] = $pRc; + $4 = $cksum; + $5 = $4; + HEAP32[$5>>2] = 0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = 0; + ;HEAP32[$filter+0>>2]=0|0;HEAP32[$filter+4>>2]=0|0;HEAP32[$filter+8>>2]=0|0;HEAP32[$filter+12>>2]=0|0; + dest=$csr+0|0; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $8 = (($filter) + 12|0); + HEAP32[$8>>2] = 3; + $9 = (($filter) + 12|0); + $10 = HEAP32[$9>>2]|0; + $11 = $10 | 16; + HEAP32[$9>>2] = $11; + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (_sqlite3Fts3SegReaderCursor($12,$13,$14,-2,0,0,0,1,$csr)|0); + HEAP32[$rc>>2] = $15; + $16 = HEAP32[$rc>>2]|0; + $17 = ($16|0)==(0); + if ($17) { + $18 = HEAP32[$0>>2]|0; + $19 = (_sqlite3Fts3SegReaderStart($18,$csr,$filter)|0); + HEAP32[$rc>>2] = $19; + } + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)==(0); + if (!($21)) { + _sqlite3Fts3SegReaderFinish($csr); + $179 = HEAP32[$rc>>2]|0; + $180 = HEAP32[$3>>2]|0; + HEAP32[$180>>2] = $179; + $181 = $cksum; + $182 = $181; + $183 = HEAP32[$182>>2]|0; + $184 = (($181) + 4)|0; + $185 = $184; + $186 = HEAP32[$185>>2]|0; + tempRet0 = $186; + STACKTOP = sp;return ($183|0); + } + L6: while(1) { + $22 = HEAP32[$0>>2]|0; + $23 = (_sqlite3Fts3SegReaderStep($22,$csr)|0); + HEAP32[$rc>>2] = $23; + $24 = (100)==($23|0); + if (!($24)) { + break; + } + $25 = (($csr) + 48|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$pCsr>>2] = $26; + $27 = (($csr) + 52|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$pCsr>>2]|0; + $30 = (($29) + ($28)|0); + HEAP32[$pEnd>>2] = $30; + $31 = $iDocid; + $32 = $31; + HEAP32[$32>>2] = 0; + $33 = (($31) + 4)|0; + $34 = $33; + HEAP32[$34>>2] = 0; + $35 = $iCol; + $36 = $35; + HEAP32[$36>>2] = 0; + $37 = (($35) + 4)|0; + $38 = $37; + HEAP32[$38>>2] = 0; + $39 = $iPos; + $40 = $39; + HEAP32[$40>>2] = 0; + $41 = (($39) + 4)|0; + $42 = $41; + HEAP32[$42>>2] = 0; + $43 = HEAP32[$pCsr>>2]|0; + $44 = (_sqlite3Fts3GetVarint($43,$iDocid)|0); + $45 = HEAP32[$pCsr>>2]|0; + $46 = (($45) + ($44)|0); + HEAP32[$pCsr>>2] = $46; + while(1) { + $47 = HEAP32[$pCsr>>2]|0; + $48 = HEAP32[$pEnd>>2]|0; + $49 = ($47>>>0)<($48>>>0); + if (!($49)) { + continue L6; + } + $50 = $iVal; + $51 = $50; + HEAP32[$51>>2] = 0; + $52 = (($50) + 4)|0; + $53 = $52; + HEAP32[$53>>2] = 0; + $54 = HEAP32[$pCsr>>2]|0; + $55 = (_sqlite3Fts3GetVarint($54,$iVal)|0); + $56 = HEAP32[$pCsr>>2]|0; + $57 = (($56) + ($55)|0); + HEAP32[$pCsr>>2] = $57; + $58 = HEAP32[$pCsr>>2]|0; + $59 = HEAP32[$pEnd>>2]|0; + $60 = ($58>>>0)<($59>>>0); + if (!($60)) { + continue; + } + $61 = $iVal; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = (($61) + 4)|0; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = ($63|0)==(0); + $68 = ($66|0)==(0); + $69 = $67 & $68; + $70 = $iVal; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = (($70) + 4)|0; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $76 = ($72|0)==(1); + $77 = ($75|0)==(0); + $78 = $76 & $77; + $or$cond = $69 | $78; + if (!($or$cond)) { + $121 = $iVal; + $122 = $121; + $123 = HEAP32[$122>>2]|0; + $124 = (($121) + 4)|0; + $125 = $124; + $126 = HEAP32[$125>>2]|0; + $127 = (_i64Subtract(($123|0),($126|0),2,0)|0); + $128 = tempRet0; + $129 = $iPos; + $130 = $129; + $131 = HEAP32[$130>>2]|0; + $132 = (($129) + 4)|0; + $133 = $132; + $134 = HEAP32[$133>>2]|0; + $135 = (_i64Add(($131|0),($134|0),($127|0),($128|0))|0); + $136 = tempRet0; + $137 = $iPos; + $138 = $137; + HEAP32[$138>>2] = $135; + $139 = (($137) + 4)|0; + $140 = $139; + HEAP32[$140>>2] = $136; + $141 = $cksum; + $142 = $141; + $143 = HEAP32[$142>>2]|0; + $144 = (($141) + 4)|0; + $145 = $144; + $146 = HEAP32[$145>>2]|0; + $147 = (($csr) + 40|0); + $148 = HEAP32[$147>>2]|0; + $149 = (($csr) + 44|0); + $150 = HEAP32[$149>>2]|0; + $151 = HEAP32[$1>>2]|0; + $152 = HEAP32[$2>>2]|0; + $153 = $iDocid; + $154 = $153; + $155 = HEAP32[$154>>2]|0; + $156 = (($153) + 4)|0; + $157 = $156; + $158 = HEAP32[$157>>2]|0; + $159 = $iCol; + $160 = $159; + $161 = HEAP32[$160>>2]|0; + $162 = (($159) + 4)|0; + $163 = $162; + $164 = HEAP32[$163>>2]|0; + $165 = $iPos; + $166 = $165; + $167 = HEAP32[$166>>2]|0; + $168 = (($165) + 4)|0; + $169 = $168; + $170 = HEAP32[$169>>2]|0; + $171 = (_fts3ChecksumEntry($148,$150,$151,$152,$155,$158,$161,$167)|0); + $172 = tempRet0; + $173 = $143 ^ $171; + $174 = $146 ^ $172; + $175 = $cksum; + $176 = $175; + HEAP32[$176>>2] = $173; + $177 = (($175) + 4)|0; + $178 = $177; + HEAP32[$178>>2] = $174; + continue; + } + $79 = $iCol; + $80 = $79; + HEAP32[$80>>2] = 0; + $81 = (($79) + 4)|0; + $82 = $81; + HEAP32[$82>>2] = 0; + $83 = $iPos; + $84 = $83; + HEAP32[$84>>2] = 0; + $85 = (($83) + 4)|0; + $86 = $85; + HEAP32[$86>>2] = 0; + $87 = $iVal; + $88 = $87; + $89 = HEAP32[$88>>2]|0; + $90 = (($87) + 4)|0; + $91 = $90; + $92 = HEAP32[$91>>2]|0; + $93 = ($89|0)!=(0); + $94 = ($92|0)!=(0); + $95 = $93 | $94; + $96 = HEAP32[$pCsr>>2]|0; + if ($95) { + $97 = (_sqlite3Fts3GetVarint($96,$iCol)|0); + $98 = HEAP32[$pCsr>>2]|0; + $99 = (($98) + ($97)|0); + HEAP32[$pCsr>>2] = $99; + continue; + } else { + $100 = (_sqlite3Fts3GetVarint($96,$iVal)|0); + $101 = HEAP32[$pCsr>>2]|0; + $102 = (($101) + ($100)|0); + HEAP32[$pCsr>>2] = $102; + $103 = $iVal; + $104 = $103; + $105 = HEAP32[$104>>2]|0; + $106 = (($103) + 4)|0; + $107 = $106; + $108 = HEAP32[$107>>2]|0; + $109 = $iDocid; + $110 = $109; + $111 = HEAP32[$110>>2]|0; + $112 = (($109) + 4)|0; + $113 = $112; + $114 = HEAP32[$113>>2]|0; + $115 = (_i64Add(($111|0),($114|0),($105|0),($108|0))|0); + $116 = tempRet0; + $117 = $iDocid; + $118 = $117; + HEAP32[$118>>2] = $115; + $119 = (($117) + 4)|0; + $120 = $119; + HEAP32[$120>>2] = $116; + continue; + } + } + } + _sqlite3Fts3SegReaderFinish($csr); + $179 = HEAP32[$rc>>2]|0; + $180 = HEAP32[$3>>2]|0; + HEAP32[$180>>2] = $179; + $181 = $cksum; + $182 = $181; + $183 = HEAP32[$182>>2]|0; + $184 = (($181) + 4)|0; + $185 = $184; + $186 = HEAP32[$185>>2]|0; + tempRet0 = $186; + STACKTOP = sp;return ($183|0); +} +function _fts3ChecksumEntry($zTerm,$nTerm,$iLangid,$iIndex,$0,$1,$iCol,$iPos) { + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + $iLangid = $iLangid|0; + $iIndex = $iIndex|0; + $0 = $0|0; + $1 = $1|0; + $iCol = $iCol|0; + $iPos = $iPos|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $ret = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $2 = sp + 36|0; + $3 = sp + 20|0; + $4 = sp + 40|0; + $5 = sp + 16|0; + $6 = sp + 8|0; + $7 = sp + 24|0; + $8 = sp + 28|0; + $i = sp + 32|0; + $ret = sp; + HEAP32[$2>>2] = $zTerm; + HEAP32[$3>>2] = $nTerm; + HEAP32[$4>>2] = $iLangid; + HEAP32[$5>>2] = $iIndex; + $9 = $6; + $10 = $9; + HEAP32[$10>>2] = $0; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = $1; + HEAP32[$7>>2] = $iCol; + HEAP32[$8>>2] = $iPos; + $13 = $6; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (($13) + 4)|0; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = $ret; + $20 = $19; + HEAP32[$20>>2] = $15; + $21 = (($19) + 4)|0; + $22 = $21; + HEAP32[$22>>2] = $18; + $23 = $ret; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = (($23) + 4)|0; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = (_bitshift64Shl(($25|0),($28|0),3)|0); + $30 = tempRet0; + $31 = HEAP32[$4>>2]|0; + $32 = ($31|0)<(0); + $33 = $32 << 31 >> 31; + $34 = (_i64Add(($29|0),($30|0),($31|0),($33|0))|0); + $35 = tempRet0; + $36 = $ret; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + $39 = (($36) + 4)|0; + $40 = $39; + $41 = HEAP32[$40>>2]|0; + $42 = (_i64Add(($38|0),($41|0),($34|0),($35|0))|0); + $43 = tempRet0; + $44 = $ret; + $45 = $44; + HEAP32[$45>>2] = $42; + $46 = (($44) + 4)|0; + $47 = $46; + HEAP32[$47>>2] = $43; + $48 = $ret; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = (($48) + 4)|0; + $52 = $51; + $53 = HEAP32[$52>>2]|0; + $54 = (_bitshift64Shl(($50|0),($53|0),3)|0); + $55 = tempRet0; + $56 = HEAP32[$5>>2]|0; + $57 = ($56|0)<(0); + $58 = $57 << 31 >> 31; + $59 = (_i64Add(($54|0),($55|0),($56|0),($58|0))|0); + $60 = tempRet0; + $61 = $ret; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = (($61) + 4)|0; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = (_i64Add(($63|0),($66|0),($59|0),($60|0))|0); + $68 = tempRet0; + $69 = $ret; + $70 = $69; + HEAP32[$70>>2] = $67; + $71 = (($69) + 4)|0; + $72 = $71; + HEAP32[$72>>2] = $68; + $73 = $ret; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $76 = (($73) + 4)|0; + $77 = $76; + $78 = HEAP32[$77>>2]|0; + $79 = (_bitshift64Shl(($75|0),($78|0),3)|0); + $80 = tempRet0; + $81 = HEAP32[$7>>2]|0; + $82 = ($81|0)<(0); + $83 = $82 << 31 >> 31; + $84 = (_i64Add(($79|0),($80|0),($81|0),($83|0))|0); + $85 = tempRet0; + $86 = $ret; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = (($86) + 4)|0; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + $92 = (_i64Add(($88|0),($91|0),($84|0),($85|0))|0); + $93 = tempRet0; + $94 = $ret; + $95 = $94; + HEAP32[$95>>2] = $92; + $96 = (($94) + 4)|0; + $97 = $96; + HEAP32[$97>>2] = $93; + $98 = $ret; + $99 = $98; + $100 = HEAP32[$99>>2]|0; + $101 = (($98) + 4)|0; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = (_bitshift64Shl(($100|0),($103|0),3)|0); + $105 = tempRet0; + $106 = HEAP32[$8>>2]|0; + $107 = ($106|0)<(0); + $108 = $107 << 31 >> 31; + $109 = (_i64Add(($104|0),($105|0),($106|0),($108|0))|0); + $110 = tempRet0; + $111 = $ret; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = (($111) + 4)|0; + $115 = $114; + $116 = HEAP32[$115>>2]|0; + $117 = (_i64Add(($113|0),($116|0),($109|0),($110|0))|0); + $118 = tempRet0; + $119 = $ret; + $120 = $119; + HEAP32[$120>>2] = $117; + $121 = (($119) + 4)|0; + $122 = $121; + HEAP32[$122>>2] = $118; + HEAP32[$i>>2] = 0; + while(1) { + $123 = HEAP32[$i>>2]|0; + $124 = HEAP32[$3>>2]|0; + $125 = ($123|0)<($124|0); + $126 = $ret; + $127 = $126; + $128 = HEAP32[$127>>2]|0; + $129 = (($126) + 4)|0; + $130 = $129; + $131 = HEAP32[$130>>2]|0; + if (!($125)) { + break; + } + $132 = (_bitshift64Shl(($128|0),($131|0),3)|0); + $133 = tempRet0; + $134 = HEAP32[$i>>2]|0; + $135 = HEAP32[$2>>2]|0; + $136 = (($135) + ($134)|0); + $137 = HEAP8[$136>>0]|0; + $138 = $137 << 24 >> 24; + $139 = ($138|0)<(0); + $140 = $139 << 31 >> 31; + $141 = (_i64Add(($132|0),($133|0),($138|0),($140|0))|0); + $142 = tempRet0; + $143 = $ret; + $144 = $143; + $145 = HEAP32[$144>>2]|0; + $146 = (($143) + 4)|0; + $147 = $146; + $148 = HEAP32[$147>>2]|0; + $149 = (_i64Add(($145|0),($148|0),($141|0),($142|0))|0); + $150 = tempRet0; + $151 = $ret; + $152 = $151; + HEAP32[$152>>2] = $149; + $153 = (($151) + 4)|0; + $154 = $153; + HEAP32[$154>>2] = $150; + $155 = HEAP32[$i>>2]|0; + $156 = (($155) + 1)|0; + HEAP32[$i>>2] = $156; + } + tempRet0 = $131; + STACKTOP = sp;return ($128|0); +} +function _fts3EvalNext($pCsr) { + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $pExpr = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $rc = sp; + $pExpr = sp + 4|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 12|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pExpr>>2] = $3; + $4 = HEAP32[$pExpr>>2]|0; + $5 = ($4|0)==(0|0); + L1: do { + if ($5) { + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 6|0); + HEAP8[$7>>0] = 1; + } else { + while(1) { + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 7|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = ($11|0)==(0); + if ($12) { + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 8|0); + $15 = HEAP32[$14>>2]|0; + (_sqlite3_reset($15)|0); + } + $16 = HEAP32[$0>>2]|0; + $17 = HEAP32[$pExpr>>2]|0; + _fts3EvalNextRow($16,$17,$rc); + $18 = HEAP32[$pExpr>>2]|0; + $19 = (($18) + 32|0); + $20 = HEAP8[$19>>0]|0; + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 6|0); + HEAP8[$22>>0] = $20; + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 7|0); + HEAP8[$24>>0] = 1; + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 88|0); + HEAP32[$26>>2] = 1; + $27 = HEAP32[$pExpr>>2]|0; + $28 = (($27) + 24|0); + $29 = $28; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = (($29) + 4)|0; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 32|0); + $37 = $36; + $38 = $37; + HEAP32[$38>>2] = $31; + $39 = (($37) + 4)|0; + $40 = $39; + HEAP32[$40>>2] = $34; + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + 6|0); + $43 = HEAP8[$42>>0]|0; + $44 = $43&255; + $45 = ($44|0)==(0); + if (!($45)) { + break L1; + } + $46 = HEAP32[$0>>2]|0; + $47 = (_fts3EvalTestDeferredAndNear($46,$rc)|0); + $48 = ($47|0)!=(0); + if (!($48)) { + break; + } + } + } + } while(0); + $49 = HEAP32[$rc>>2]|0; + $50 = ($49|0)==(0); + if (!($50)) { + $105 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($105|0); + } + $51 = HEAP32[$0>>2]|0; + $52 = (($51) + 52|0); + $53 = HEAP8[$52>>0]|0; + $54 = $53&255; + $55 = ($54|0)==(0); + if ($55) { + $56 = HEAP32[$0>>2]|0; + $57 = (($56) + 32|0); + $58 = $57; + $59 = $58; + $60 = HEAP32[$59>>2]|0; + $61 = (($58) + 4)|0; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = HEAP32[$0>>2]|0; + $65 = (($64) + 80|0); + $66 = $65; + $67 = $66; + $68 = HEAP32[$67>>2]|0; + $69 = (($66) + 4)|0; + $70 = $69; + $71 = HEAP32[$70>>2]|0; + $72 = ($63|0)>($71|0); + $73 = ($63|0)==($71|0); + $74 = ($60>>>0)>($68>>>0); + $75 = $73 & $74; + $76 = $72 | $75; + if (!($76)) { + label = 10; + } + } else { + label = 10; + } + if ((label|0) == 10) { + $77 = HEAP32[$0>>2]|0; + $78 = (($77) + 52|0); + $79 = HEAP8[$78>>0]|0; + $80 = $79&255; + $81 = ($80|0)!=(0); + if (!($81)) { + $105 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($105|0); + } + $82 = HEAP32[$0>>2]|0; + $83 = (($82) + 32|0); + $84 = $83; + $85 = $84; + $86 = HEAP32[$85>>2]|0; + $87 = (($84) + 4)|0; + $88 = $87; + $89 = HEAP32[$88>>2]|0; + $90 = HEAP32[$0>>2]|0; + $91 = (($90) + 72|0); + $92 = $91; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = (($92) + 4)|0; + $96 = $95; + $97 = HEAP32[$96>>2]|0; + $98 = ($89|0)<($97|0); + $99 = ($89|0)==($97|0); + $100 = ($86>>>0)<($94>>>0); + $101 = $99 & $100; + $102 = $98 | $101; + if (!($102)) { + $105 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($105|0); + } + } + $103 = HEAP32[$0>>2]|0; + $104 = (($103) + 6|0); + HEAP8[$104>>0] = 1; + $105 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($105|0); +} +function _sqlite3Fts3ExprFree($pDel) { + $pDel = $pDel|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $7 = 0, $8 = 0, $9 = 0, $p = 0, $pParent = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $p = sp; + $pParent = sp + 4|0; + HEAP32[$0>>2] = $pDel; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + while(1) { + $2 = HEAP32[$p>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + break; + } + $4 = HEAP32[$p>>2]|0; + $5 = (($4) + 12|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + $8 = HEAP32[$p>>2]|0; + $9 = (($8) + 16|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if (!($11)) { + break; + } + } + $12 = HEAP32[$p>>2]|0; + $13 = (($12) + 12|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)!=(0|0); + $16 = HEAP32[$p>>2]|0; + if ($15) { + $17 = (($16) + 12|0); + $18 = HEAP32[$17>>2]|0; + $21 = $18; + } else { + $19 = (($16) + 16|0); + $20 = HEAP32[$19>>2]|0; + $21 = $20; + } + HEAP32[$p>>2] = $21; + } + L11: while(1) { + $22 = HEAP32[$p>>2]|0; + $23 = ($22|0)!=(0|0); + if (!($23)) { + break; + } + $24 = HEAP32[$p>>2]|0; + $25 = (($24) + 8|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$pParent>>2] = $26; + $27 = HEAP32[$p>>2]|0; + _fts3FreeExprNode($27); + $28 = HEAP32[$pParent>>2]|0; + $29 = ($28|0)!=(0|0); + if ($29) { + $30 = HEAP32[$p>>2]|0; + $31 = HEAP32[$pParent>>2]|0; + $32 = (($31) + 12|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($30|0)==($33|0); + if ($34) { + $35 = HEAP32[$pParent>>2]|0; + $36 = (($35) + 16|0); + $37 = HEAP32[$36>>2]|0; + $38 = ($37|0)!=(0|0); + if ($38) { + $39 = HEAP32[$pParent>>2]|0; + $40 = (($39) + 16|0); + $41 = HEAP32[$40>>2]|0; + HEAP32[$p>>2] = $41; + while(1) { + $42 = HEAP32[$p>>2]|0; + $43 = ($42|0)!=(0|0); + if (!($43)) { + continue L11; + } + $44 = HEAP32[$p>>2]|0; + $45 = (($44) + 12|0); + $46 = HEAP32[$45>>2]|0; + $47 = ($46|0)!=(0|0); + if (!($47)) { + $48 = HEAP32[$p>>2]|0; + $49 = (($48) + 16|0); + $50 = HEAP32[$49>>2]|0; + $51 = ($50|0)!=(0|0); + if (!($51)) { + continue L11; + } + } + $52 = HEAP32[$p>>2]|0; + $53 = (($52) + 12|0); + $54 = HEAP32[$53>>2]|0; + $55 = ($54|0)!=(0|0); + $56 = HEAP32[$p>>2]|0; + if ($55) { + $57 = (($56) + 12|0); + $58 = HEAP32[$57>>2]|0; + $61 = $58; + } else { + $59 = (($56) + 16|0); + $60 = HEAP32[$59>>2]|0; + $61 = $60; + } + HEAP32[$p>>2] = $61; + } + } + } + } + $62 = HEAP32[$pParent>>2]|0; + HEAP32[$p>>2] = $62; + } + STACKTOP = sp;return; +} +function _fts3DocidRange($pVal,$0,$1) { + $pVal = $pVal|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $eType = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 8|0; + $3 = sp + 20|0; + $4 = sp; + $eType = sp + 16|0; + HEAP32[$3>>2] = $pVal; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + $9 = HEAP32[$3>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = HEAP32[$3>>2]|0; + $12 = (_sqlite3_value_numeric_type($11)|0); + HEAP32[$eType>>2] = $12; + $13 = HEAP32[$eType>>2]|0; + $14 = ($13|0)==(1); + if ($14) { + $15 = HEAP32[$3>>2]|0; + $16 = (_sqlite3_value_int64($15)|0); + $17 = tempRet0; + $18 = $2; + $19 = $18; + HEAP32[$19>>2] = $16; + $20 = (($18) + 4)|0; + $21 = $20; + HEAP32[$21>>2] = $17; + $32 = $2; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = (($32) + 4)|0; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + tempRet0 = $37; + STACKTOP = sp;return ($34|0); + } + } + $22 = $4; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (($22) + 4)|0; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = $2; + $29 = $28; + HEAP32[$29>>2] = $24; + $30 = (($28) + 4)|0; + $31 = $30; + HEAP32[$31>>2] = $27; + $32 = $2; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = (($32) + 4)|0; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + tempRet0 = $37; + STACKTOP = sp;return ($34|0); +} +function _sqlite3Fts3ExprParse($pTokenizer,$iLangid,$azCol,$bFts4,$nCol,$iDefaultCol,$z,$n,$ppExpr,$pzErr) { + $pTokenizer = $pTokenizer|0; + $iLangid = $iLangid|0; + $azCol = $azCol|0; + $bFts4 = $bFts4|0; + $nCol = $nCol|0; + $iDefaultCol = $iDefaultCol|0; + $z = $z|0; + $n = $n|0; + $ppExpr = $ppExpr|0; + $pzErr = $pzErr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $vararg_buffer1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer1 = sp; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $5 = sp + 44|0; + $6 = sp + 12|0; + $7 = sp + 8|0; + $8 = sp + 4|0; + $9 = sp + 16|0; + $rc = sp + 20|0; + HEAP32[$0>>2] = $pTokenizer; + HEAP32[$1>>2] = $iLangid; + HEAP32[$2>>2] = $azCol; + HEAP32[$3>>2] = $bFts4; + HEAP32[$4>>2] = $nCol; + HEAP32[$5>>2] = $iDefaultCol; + HEAP32[$6>>2] = $z; + HEAP32[$7>>2] = $n; + HEAP32[$8>>2] = $ppExpr; + HEAP32[$9>>2] = $pzErr; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$3>>2]|0; + $14 = HEAP32[$4>>2]|0; + $15 = HEAP32[$5>>2]|0; + $16 = HEAP32[$6>>2]|0; + $17 = HEAP32[$7>>2]|0; + $18 = HEAP32[$8>>2]|0; + $19 = (_fts3ExprParseUnbalanced($10,$11,$12,$13,$14,$15,$16,$17,$18)|0); + HEAP32[$rc>>2] = $19; + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)==(0); + if ($21) { + $22 = HEAP32[$8>>2]|0; + $23 = HEAP32[$22>>2]|0; + $24 = ($23|0)!=(0|0); + if ($24) { + $25 = HEAP32[$8>>2]|0; + $26 = (_fts3ExprBalance($25,12)|0); + HEAP32[$rc>>2] = $26; + $27 = HEAP32[$rc>>2]|0; + $28 = ($27|0)==(0); + if ($28) { + $29 = HEAP32[$8>>2]|0; + $30 = HEAP32[$29>>2]|0; + $31 = (_fts3ExprCheckDepth($30,12)|0); + HEAP32[$rc>>2] = $31; + } + } + } + $32 = HEAP32[$rc>>2]|0; + $33 = ($32|0)!=(0); + if (!($33)) { + $46 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($46|0); + } + $34 = HEAP32[$8>>2]|0; + $35 = HEAP32[$34>>2]|0; + _sqlite3Fts3ExprFree($35); + $36 = HEAP32[$8>>2]|0; + HEAP32[$36>>2] = 0; + $37 = HEAP32[$rc>>2]|0; + $38 = ($37|0)==(18); + if ($38) { + HEAP32[$vararg_buffer1>>2] = 12; + $39 = (_sqlite3_mprintf(7512,$vararg_buffer1)|0); + $40 = HEAP32[$9>>2]|0; + HEAP32[$40>>2] = $39; + HEAP32[$rc>>2] = 1; + $46 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($46|0); + } + $41 = HEAP32[$rc>>2]|0; + $42 = ($41|0)==(1); + if (!($42)) { + $46 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($46|0); + } + $43 = HEAP32[$6>>2]|0; + HEAP32[$vararg_buffer1>>2] = $43; + $44 = (_sqlite3_mprintf(7568,$vararg_buffer1)|0); + $45 = HEAP32[$9>>2]|0; + HEAP32[$45>>2] = $44; + $46 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($46|0); +} +function _fts3EvalStart($pCsr) { + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $aTC = 0, $apOr = 0, $ii = 0, $nOr = 0, $nToken = 0, $pTC = 0, $pTab = 0; + var $ppOr = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $pTab = sp + 32|0; + $rc = sp + 28|0; + $nToken = sp + 24|0; + $nOr = sp + 20|0; + $aTC = sp + 16|0; + $apOr = sp + 8|0; + $ii = sp + 4|0; + $pTC = sp; + $ppOr = sp + 12|0; + HEAP32[$0>>2] = $pCsr; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$pTab>>2] = $2; + HEAP32[$rc>>2] = 0; + HEAP32[$nToken>>2] = 0; + HEAP32[$nOr>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 12|0); + $6 = HEAP32[$5>>2]|0; + _fts3EvalAllocateReaders($3,$6,$nToken,$nOr,$rc); + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)==(0); + do { + if ($8) { + $9 = HEAP32[$nToken>>2]|0; + $10 = ($9|0)>(1); + if ($10) { + $11 = HEAP32[$pTab>>2]|0; + $12 = (($11) + 228|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = ($14|0)!=(0); + if ($15) { + $16 = HEAP32[$nToken>>2]|0; + $17 = ($16*24)|0; + $18 = HEAP32[$nOr>>2]|0; + $19 = $18<<2; + $20 = $19<<1; + $21 = (($17) + ($20))|0; + $22 = (_sqlite3_malloc($21)|0); + HEAP32[$aTC>>2] = $22; + $23 = HEAP32[$nToken>>2]|0; + $24 = HEAP32[$aTC>>2]|0; + $25 = (($24) + (($23*24)|0)|0); + HEAP32[$apOr>>2] = $25; + $26 = HEAP32[$aTC>>2]|0; + $27 = ($26|0)!=(0|0); + if (!($27)) { + HEAP32[$rc>>2] = 7; + break; + } + $28 = HEAP32[$aTC>>2]|0; + HEAP32[$pTC>>2] = $28; + $29 = HEAP32[$apOr>>2]|0; + HEAP32[$ppOr>>2] = $29; + $30 = HEAP32[$0>>2]|0; + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 12|0); + $33 = HEAP32[$32>>2]|0; + _fts3EvalTokenCosts($30,0,$33,$pTC,$ppOr,$rc); + $34 = HEAP32[$pTC>>2]|0; + $35 = HEAP32[$aTC>>2]|0; + $36 = $34; + $37 = $35; + $38 = (($36) - ($37))|0; + $39 = (($38|0) / 24)&-1; + HEAP32[$nToken>>2] = $39; + $40 = HEAP32[$ppOr>>2]|0; + $41 = HEAP32[$apOr>>2]|0; + $42 = $40; + $43 = $41; + $44 = (($42) - ($43))|0; + $45 = (($44|0) / 4)&-1; + HEAP32[$nOr>>2] = $45; + $46 = HEAP32[$rc>>2]|0; + $47 = ($46|0)==(0); + L8: do { + if ($47) { + $48 = HEAP32[$0>>2]|0; + $49 = HEAP32[$aTC>>2]|0; + $50 = HEAP32[$nToken>>2]|0; + $51 = (_fts3EvalSelectDeferred($48,0,$49,$50)|0); + HEAP32[$rc>>2] = $51; + HEAP32[$ii>>2] = 0; + while(1) { + $52 = HEAP32[$rc>>2]|0; + $53 = ($52|0)==(0); + if (!($53)) { + break L8; + } + $54 = HEAP32[$ii>>2]|0; + $55 = HEAP32[$nOr>>2]|0; + $56 = ($54|0)<($55|0); + if (!($56)) { + break L8; + } + $57 = HEAP32[$0>>2]|0; + $58 = HEAP32[$ii>>2]|0; + $59 = HEAP32[$apOr>>2]|0; + $60 = (($59) + ($58<<2)|0); + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$aTC>>2]|0; + $63 = HEAP32[$nToken>>2]|0; + $64 = (_fts3EvalSelectDeferred($57,$61,$62,$63)|0); + HEAP32[$rc>>2] = $64; + $65 = HEAP32[$ii>>2]|0; + $66 = (($65) + 1)|0; + HEAP32[$ii>>2] = $66; + } + } + } while(0); + $67 = HEAP32[$aTC>>2]|0; + _sqlite3_free($67); + } + } + } + } while(0); + $68 = HEAP32[$0>>2]|0; + $69 = HEAP32[$0>>2]|0; + $70 = (($69) + 12|0); + $71 = HEAP32[$70>>2]|0; + _fts3EvalStartReaders($68,$71,$rc); + $72 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($72|0); +} +function _fts3EvalAllocateReaders($pCsr,$pExpr,$pnToken,$pnOr,$pRc) { + $pCsr = $pCsr|0; + $pExpr = $pExpr|0; + $pnToken = $pnToken|0; + $pnOr = $pnOr|0; + $pRc = $pRc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $i = 0, $nToken = 0, $pToken = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $4 = sp + 16|0; + $i = sp + 8|0; + $nToken = sp + 4|0; + $pToken = sp; + $rc = sp + 12|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $pnToken; + HEAP32[$3>>2] = $pnOr; + HEAP32[$4>>2] = $pRc; + $5 = HEAP32[$1>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = HEAP32[$4>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = (0)==($8|0); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)==(5); + $13 = HEAP32[$1>>2]|0; + if (!($12)) { + $53 = HEAP32[$13>>2]|0; + $54 = ($53|0)==(4); + $55 = $54&1; + $56 = HEAP32[$3>>2]|0; + $57 = HEAP32[$56>>2]|0; + $58 = (($57) + ($55))|0; + HEAP32[$56>>2] = $58; + $59 = HEAP32[$0>>2]|0; + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 12|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$2>>2]|0; + $64 = HEAP32[$3>>2]|0; + $65 = HEAP32[$4>>2]|0; + _fts3EvalAllocateReaders($59,$62,$63,$64,$65); + $66 = HEAP32[$0>>2]|0; + $67 = HEAP32[$1>>2]|0; + $68 = (($67) + 16|0); + $69 = HEAP32[$68>>2]|0; + $70 = HEAP32[$2>>2]|0; + $71 = HEAP32[$3>>2]|0; + $72 = HEAP32[$4>>2]|0; + _fts3EvalAllocateReaders($66,$69,$70,$71,$72); + STACKTOP = sp;return; + } + $14 = (($13) + 20|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + 48|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$nToken>>2] = $17; + $18 = HEAP32[$nToken>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + ($18))|0; + HEAP32[$19>>2] = $21; + HEAP32[$i>>2] = 0; + while(1) { + $22 = HEAP32[$i>>2]|0; + $23 = HEAP32[$nToken>>2]|0; + $24 = ($22|0)<($23|0); + if (!($24)) { + label = 9; + break; + } + $25 = HEAP32[$i>>2]|0; + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 20|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + 56|0); + $30 = (($29) + (($25*24)|0)|0); + HEAP32[$pToken>>2] = $30; + $31 = HEAP32[$0>>2]|0; + $32 = HEAP32[$pToken>>2]|0; + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$pToken>>2]|0; + $35 = (($34) + 4|0); + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$pToken>>2]|0; + $38 = (($37) + 8|0); + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$pToken>>2]|0; + $41 = (($40) + 20|0); + $42 = (_fts3TermSegReaderCursor($31,$33,$36,$39,$41)|0); + HEAP32[$rc>>2] = $42; + $43 = HEAP32[$rc>>2]|0; + $44 = ($43|0)!=(0); + if ($44) { + label = 7; + break; + } + $47 = HEAP32[$i>>2]|0; + $48 = (($47) + 1)|0; + HEAP32[$i>>2] = $48; + } + if ((label|0) == 7) { + $45 = HEAP32[$rc>>2]|0; + $46 = HEAP32[$4>>2]|0; + HEAP32[$46>>2] = $45; + STACKTOP = sp;return; + } + else if ((label|0) == 9) { + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 20|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + 44|0); + HEAP32[$52>>2] = -1; + STACKTOP = sp;return; + } +} +function _fts3EvalTokenCosts($pCsr,$pRoot,$pExpr,$ppTC,$ppOr,$pRc) { + $pCsr = $pCsr|0; + $pRoot = $pRoot|0; + $pExpr = $pExpr|0; + $ppTC = $ppTC|0; + $ppOr = $ppOr|0; + $pRc = $pRc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $i = 0; + var $pPhrase = 0, $pTC = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $4 = sp + 16|0; + $5 = sp + 8|0; + $pPhrase = sp + 4|0; + $i = sp; + $pTC = sp + 12|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $pRoot; + HEAP32[$2>>2] = $pExpr; + HEAP32[$3>>2] = $ppTC; + HEAP32[$4>>2] = $ppOr; + HEAP32[$5>>2] = $pRc; + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)==(0); + if (!($8)) { + STACKTOP = sp;return; + } + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)==(5); + $12 = HEAP32[$2>>2]|0; + if ($11) { + $13 = (($12) + 20|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$pPhrase>>2] = $14; + HEAP32[$i>>2] = 0; + while(1) { + $15 = HEAP32[$5>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)==(0); + if (!($17)) { + label = 13; + break; + } + $18 = HEAP32[$i>>2]|0; + $19 = HEAP32[$pPhrase>>2]|0; + $20 = (($19) + 48|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($18|0)<($21|0); + if (!($22)) { + label = 13; + break; + } + $23 = HEAP32[$3>>2]|0; + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + 24|0); + HEAP32[$23>>2] = $25; + HEAP32[$pTC>>2] = $24; + $26 = HEAP32[$pPhrase>>2]|0; + $27 = HEAP32[$pTC>>2]|0; + HEAP32[$27>>2] = $26; + $28 = HEAP32[$i>>2]|0; + $29 = HEAP32[$pTC>>2]|0; + $30 = (($29) + 4|0); + HEAP32[$30>>2] = $28; + $31 = HEAP32[$1>>2]|0; + $32 = HEAP32[$pTC>>2]|0; + $33 = (($32) + 12|0); + HEAP32[$33>>2] = $31; + $34 = HEAP32[$i>>2]|0; + $35 = HEAP32[$pPhrase>>2]|0; + $36 = (($35) + 56|0); + $37 = (($36) + (($34*24)|0)|0); + $38 = HEAP32[$pTC>>2]|0; + $39 = (($38) + 8|0); + HEAP32[$39>>2] = $37; + $40 = HEAP32[$pPhrase>>2]|0; + $41 = (($40) + 52|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$pTC>>2]|0; + $44 = (($43) + 20|0); + HEAP32[$44>>2] = $42; + $45 = HEAP32[$0>>2]|0; + $46 = HEAP32[$pTC>>2]|0; + $47 = (($46) + 8|0); + $48 = HEAP32[$47>>2]|0; + $49 = (($48) + 20|0); + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$pTC>>2]|0; + $52 = (($51) + 16|0); + $53 = (_sqlite3Fts3MsrOvfl($45,$50,$52)|0); + $54 = HEAP32[$5>>2]|0; + HEAP32[$54>>2] = $53; + $55 = HEAP32[$i>>2]|0; + $56 = (($55) + 1)|0; + HEAP32[$i>>2] = $56; + } + if ((label|0) == 13) { + STACKTOP = sp;return; + } + } + $57 = HEAP32[$12>>2]|0; + $58 = ($57|0)!=(2); + if (!($58)) { + STACKTOP = sp;return; + } + $59 = HEAP32[$2>>2]|0; + $60 = HEAP32[$59>>2]|0; + $61 = ($60|0)==(4); + if ($61) { + $62 = HEAP32[$2>>2]|0; + $63 = (($62) + 12|0); + $64 = HEAP32[$63>>2]|0; + HEAP32[$1>>2] = $64; + $65 = HEAP32[$1>>2]|0; + $66 = HEAP32[$4>>2]|0; + $67 = HEAP32[$66>>2]|0; + HEAP32[$67>>2] = $65; + $68 = HEAP32[$4>>2]|0; + $69 = HEAP32[$68>>2]|0; + $70 = (($69) + 4|0); + HEAP32[$68>>2] = $70; + } + $71 = HEAP32[$0>>2]|0; + $72 = HEAP32[$1>>2]|0; + $73 = HEAP32[$2>>2]|0; + $74 = (($73) + 12|0); + $75 = HEAP32[$74>>2]|0; + $76 = HEAP32[$3>>2]|0; + $77 = HEAP32[$4>>2]|0; + $78 = HEAP32[$5>>2]|0; + _fts3EvalTokenCosts($71,$72,$75,$76,$77,$78); + $79 = HEAP32[$2>>2]|0; + $80 = HEAP32[$79>>2]|0; + $81 = ($80|0)==(4); + if ($81) { + $82 = HEAP32[$2>>2]|0; + $83 = (($82) + 16|0); + $84 = HEAP32[$83>>2]|0; + HEAP32[$1>>2] = $84; + $85 = HEAP32[$1>>2]|0; + $86 = HEAP32[$4>>2]|0; + $87 = HEAP32[$86>>2]|0; + HEAP32[$87>>2] = $85; + $88 = HEAP32[$4>>2]|0; + $89 = HEAP32[$88>>2]|0; + $90 = (($89) + 4|0); + HEAP32[$88>>2] = $90; + } + $91 = HEAP32[$0>>2]|0; + $92 = HEAP32[$1>>2]|0; + $93 = HEAP32[$2>>2]|0; + $94 = (($93) + 16|0); + $95 = HEAP32[$94>>2]|0; + $96 = HEAP32[$3>>2]|0; + $97 = HEAP32[$4>>2]|0; + $98 = HEAP32[$5>>2]|0; + _fts3EvalTokenCosts($91,$92,$95,$96,$97,$98); + STACKTOP = sp;return; +} +function _fts3EvalSelectDeferred($pCsr,$pRoot,$aTC,$nTC) { + $pCsr = $pCsr|0; + $pRoot = $pRoot|0; + $aTC = $aTC|0; + $nTC = $nTC|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; + var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iTC = 0; + var $ii = 0, $nCount = 0, $nDocSize = 0, $nList = 0, $nLoad4 = 0, $nMinEst = 0, $nOvfl = 0, $nToken = 0, $pList = 0, $pTC = 0, $pTab = 0, $pToken = 0, $pToken1 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 76|0; + $1 = sp + 72|0; + $2 = sp + 68|0; + $3 = sp + 64|0; + $4 = sp + 60|0; + $pTab = sp + 56|0; + $nDocSize = sp + 52|0; + $rc = sp + 48|0; + $ii = sp + 44|0; + $nOvfl = sp + 40|0; + $nToken = sp + 36|0; + $nMinEst = sp + 12|0; + $nLoad4 = sp; + $iTC = sp + 4|0; + $pTC = sp + 8|0; + $pToken = sp + 16|0; + $pToken1 = sp + 20|0; + $nList = sp + 24|0; + $pList = sp + 28|0; + $nCount = sp + 32|0; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $pRoot; + HEAP32[$3>>2] = $aTC; + HEAP32[$4>>2] = $nTC; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$pTab>>2] = $6; + HEAP32[$nDocSize>>2] = 0; + HEAP32[$rc>>2] = 0; + HEAP32[$nOvfl>>2] = 0; + HEAP32[$nToken>>2] = 0; + HEAP32[$nMinEst>>2] = 0; + HEAP32[$nLoad4>>2] = 1; + $7 = HEAP32[$pTab>>2]|0; + $8 = (($7) + 40|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + HEAP32[$0>>2] = 0; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); + } + HEAP32[$ii>>2] = 0; + while(1) { + $11 = HEAP32[$ii>>2]|0; + $12 = HEAP32[$4>>2]|0; + $13 = ($11|0)<($12|0); + if (!($13)) { + break; + } + $14 = HEAP32[$ii>>2]|0; + $15 = HEAP32[$3>>2]|0; + $16 = (($15) + (($14*24)|0)|0); + $17 = (($16) + 12|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = ($18|0)==($19|0); + if ($20) { + $21 = HEAP32[$ii>>2]|0; + $22 = HEAP32[$3>>2]|0; + $23 = (($22) + (($21*24)|0)|0); + $24 = (($23) + 16|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$nOvfl>>2]|0; + $27 = (($26) + ($25))|0; + HEAP32[$nOvfl>>2] = $27; + $28 = HEAP32[$nToken>>2]|0; + $29 = (($28) + 1)|0; + HEAP32[$nToken>>2] = $29; + } + $30 = HEAP32[$ii>>2]|0; + $31 = (($30) + 1)|0; + HEAP32[$ii>>2] = $31; + } + $32 = HEAP32[$nOvfl>>2]|0; + $33 = ($32|0)==(0); + if (!($33)) { + $34 = HEAP32[$nToken>>2]|0; + $35 = ($34|0)<(2); + if (!($35)) { + $36 = HEAP32[$1>>2]|0; + $37 = (_fts3EvalAverageDocsize($36,$nDocSize)|0); + HEAP32[$rc>>2] = $37; + HEAP32[$ii>>2] = 0; + while(1) { + $38 = HEAP32[$ii>>2]|0; + $39 = HEAP32[$nToken>>2]|0; + $40 = ($38|0)<($39|0); + if (!($40)) { + break; + } + $41 = HEAP32[$rc>>2]|0; + $42 = ($41|0)==(0); + if (!($42)) { + break; + } + HEAP32[$pTC>>2] = 0; + HEAP32[$iTC>>2] = 0; + while(1) { + $43 = HEAP32[$iTC>>2]|0; + $44 = HEAP32[$4>>2]|0; + $45 = ($43|0)<($44|0); + if (!($45)) { + break; + } + $46 = HEAP32[$iTC>>2]|0; + $47 = HEAP32[$3>>2]|0; + $48 = (($47) + (($46*24)|0)|0); + $49 = (($48) + 8|0); + $50 = HEAP32[$49>>2]|0; + $51 = ($50|0)!=(0|0); + do { + if ($51) { + $52 = HEAP32[$iTC>>2]|0; + $53 = HEAP32[$3>>2]|0; + $54 = (($53) + (($52*24)|0)|0); + $55 = (($54) + 12|0); + $56 = HEAP32[$55>>2]|0; + $57 = HEAP32[$2>>2]|0; + $58 = ($56|0)==($57|0); + if ($58) { + $59 = HEAP32[$pTC>>2]|0; + $60 = ($59|0)!=(0|0); + if ($60) { + $61 = HEAP32[$iTC>>2]|0; + $62 = HEAP32[$3>>2]|0; + $63 = (($62) + (($61*24)|0)|0); + $64 = (($63) + 16|0); + $65 = HEAP32[$64>>2]|0; + $66 = HEAP32[$pTC>>2]|0; + $67 = (($66) + 16|0); + $68 = HEAP32[$67>>2]|0; + $69 = ($65|0)<($68|0); + if (!($69)) { + break; + } + } + $70 = HEAP32[$iTC>>2]|0; + $71 = HEAP32[$3>>2]|0; + $72 = (($71) + (($70*24)|0)|0); + HEAP32[$pTC>>2] = $72; + } + } + } while(0); + $73 = HEAP32[$iTC>>2]|0; + $74 = (($73) + 1)|0; + HEAP32[$iTC>>2] = $74; + } + $75 = HEAP32[$ii>>2]|0; + $76 = ($75|0)!=(0); + if ($76) { + $77 = HEAP32[$pTC>>2]|0; + $78 = (($77) + 16|0); + $79 = HEAP32[$78>>2]|0; + $80 = HEAP32[$nMinEst>>2]|0; + $81 = HEAP32[$nLoad4>>2]|0; + $82 = (($81|0) / 4)&-1; + $83 = (($80) + ($82))|0; + $84 = (($83) - 1)|0; + $85 = HEAP32[$nLoad4>>2]|0; + $86 = (($85|0) / 4)&-1; + $87 = (($84|0) / ($86|0))&-1; + $88 = HEAP32[$nDocSize>>2]|0; + $89 = Math_imul($87, $88)|0; + $90 = ($79|0)>=($89|0); + if ($90) { + $91 = HEAP32[$pTC>>2]|0; + $92 = (($91) + 8|0); + $93 = HEAP32[$92>>2]|0; + HEAP32[$pToken>>2] = $93; + $94 = HEAP32[$1>>2]|0; + $95 = HEAP32[$pToken>>2]|0; + $96 = HEAP32[$pTC>>2]|0; + $97 = (($96) + 20|0); + $98 = HEAP32[$97>>2]|0; + $99 = (_sqlite3Fts3DeferToken($94,$95,$98)|0); + HEAP32[$rc>>2] = $99; + $100 = HEAP32[$pToken>>2]|0; + $101 = (($100) + 20|0); + $102 = HEAP32[$101>>2]|0; + _fts3SegReaderCursorFree($102); + $103 = HEAP32[$pToken>>2]|0; + $104 = (($103) + 20|0); + HEAP32[$104>>2] = 0; + } else { + label = 25; + } + } else { + label = 25; + } + do { + if ((label|0) == 25) { + label = 0; + $105 = HEAP32[$ii>>2]|0; + $106 = ($105|0)<(12); + if ($106) { + $107 = HEAP32[$nLoad4>>2]|0; + $108 = $107<<2; + HEAP32[$nLoad4>>2] = $108; + } + $109 = HEAP32[$ii>>2]|0; + $110 = ($109|0)==(0); + if (!($110)) { + $111 = HEAP32[$pTC>>2]|0; + $112 = HEAP32[$111>>2]|0; + $113 = (($112) + 48|0); + $114 = HEAP32[$113>>2]|0; + $115 = ($114|0)>(1); + if (!($115)) { + break; + } + $116 = HEAP32[$ii>>2]|0; + $117 = HEAP32[$nToken>>2]|0; + $118 = (($117) - 1)|0; + $119 = ($116|0)!=($118|0); + if (!($119)) { + break; + } + } + $120 = HEAP32[$pTC>>2]|0; + $121 = (($120) + 8|0); + $122 = HEAP32[$121>>2]|0; + HEAP32[$pToken1>>2] = $122; + HEAP32[$nList>>2] = 0; + HEAP32[$pList>>2] = 0; + $123 = HEAP32[$pTab>>2]|0; + $124 = HEAP32[$pToken1>>2]|0; + $125 = HEAP32[$pTC>>2]|0; + $126 = (($125) + 20|0); + $127 = HEAP32[$126>>2]|0; + $128 = (_fts3TermSelect($123,$124,$127,$nList,$pList)|0); + HEAP32[$rc>>2] = $128; + $129 = HEAP32[$rc>>2]|0; + $130 = ($129|0)==(0); + if ($130) { + $131 = HEAP32[$pTab>>2]|0; + $132 = HEAP32[$pTC>>2]|0; + $133 = HEAP32[$132>>2]|0; + $134 = HEAP32[$pTC>>2]|0; + $135 = (($134) + 4|0); + $136 = HEAP32[$135>>2]|0; + $137 = HEAP32[$pList>>2]|0; + $138 = HEAP32[$nList>>2]|0; + _fts3EvalPhraseMergeToken($131,$133,$136,$137,$138); + $139 = HEAP32[$pTC>>2]|0; + $140 = HEAP32[$139>>2]|0; + $141 = HEAP32[$140>>2]|0; + $142 = HEAP32[$pTC>>2]|0; + $143 = HEAP32[$142>>2]|0; + $144 = (($143) + 4|0); + $145 = HEAP32[$144>>2]|0; + $146 = (_fts3DoclistCountDocids($141,$145)|0); + HEAP32[$nCount>>2] = $146; + $147 = HEAP32[$ii>>2]|0; + $148 = ($147|0)==(0); + if (!($148)) { + $149 = HEAP32[$nCount>>2]|0; + $150 = HEAP32[$nMinEst>>2]|0; + $151 = ($149|0)<($150|0); + if (!($151)) { + break; + } + } + $152 = HEAP32[$nCount>>2]|0; + HEAP32[$nMinEst>>2] = $152; + } + } + } while(0); + $153 = HEAP32[$pTC>>2]|0; + $154 = (($153) + 8|0); + HEAP32[$154>>2] = 0; + $155 = HEAP32[$ii>>2]|0; + $156 = (($155) + 1)|0; + HEAP32[$ii>>2] = $156; + } + $157 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $157; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); + } + } + HEAP32[$0>>2] = 0; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); +} +function _fts3EvalStartReaders($pCsr,$pExpr,$pRc) { + $pCsr = $pCsr|0; + $pExpr = $pExpr|0; + $pRc = $pRc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $8 = 0, $9 = 0, $i = 0, $nToken = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + $nToken = sp + 12|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $pRc; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = (0)==($6|0); + if (!($7)) { + STACKTOP = sp;return; + } + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)==(5); + if (!($10)) { + $43 = HEAP32[$0>>2]|0; + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 12|0); + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$2>>2]|0; + _fts3EvalStartReaders($43,$46,$47); + $48 = HEAP32[$0>>2]|0; + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 16|0); + $51 = HEAP32[$50>>2]|0; + $52 = HEAP32[$2>>2]|0; + _fts3EvalStartReaders($48,$51,$52); + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 12|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + 34|0); + $57 = HEAP8[$56>>0]|0; + $58 = $57&255; + $59 = ($58|0)!=(0); + if ($59) { + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 16|0); + $62 = HEAP32[$61>>2]|0; + $63 = (($62) + 34|0); + $64 = HEAP8[$63>>0]|0; + $65 = $64&255; + $66 = ($65|0)!=(0); + $68 = $66; + } else { + $68 = 0; + } + $67 = $68&1; + $69 = $67&255; + $70 = HEAP32[$1>>2]|0; + $71 = (($70) + 34|0); + HEAP8[$71>>0] = $69; + STACKTOP = sp;return; + } + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 20|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 48|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$nToken>>2] = $15; + HEAP32[$i>>2] = 0; + while(1) { + $16 = HEAP32[$i>>2]|0; + $17 = HEAP32[$nToken>>2]|0; + $18 = ($16|0)<($17|0); + if (!($18)) { + break; + } + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 20|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + 56|0); + $24 = (($23) + (($19*24)|0)|0); + $25 = (($24) + 16|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)==(0|0); + if ($27) { + break; + } + $28 = HEAP32[$i>>2]|0; + $29 = (($28) + 1)|0; + HEAP32[$i>>2] = $29; + } + $30 = HEAP32[$i>>2]|0; + $31 = HEAP32[$nToken>>2]|0; + $32 = ($30|0)==($31|0); + $33 = $32&1; + $34 = $33&255; + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 34|0); + HEAP8[$36>>0] = $34; + $37 = HEAP32[$0>>2]|0; + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 20|0); + $40 = HEAP32[$39>>2]|0; + $41 = (_fts3EvalPhraseStart($37,1,$40)|0); + $42 = HEAP32[$2>>2]|0; + HEAP32[$42>>2] = $41; + STACKTOP = sp;return; +} +function _fts3EvalAverageDocsize($pCsr,$pnPage) { + $pCsr = $pCsr|0; + $pnPage = $pnPage|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a = 0, $nByte = 0, $nDoc = 0, $p = 0, $pEnd = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $rc = sp + 32|0; + $p = sp + 28|0; + $pStmt = sp + 24|0; + $nDoc = sp + 8|0; + $nByte = sp; + $pEnd = sp + 16|0; + $a = sp + 20|0; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $pnPage; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 60|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)==(0); + do { + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$p>>2] = $8; + $9 = $nDoc; + $10 = $9; + HEAP32[$10>>2] = 0; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = 0; + $13 = $nByte; + $14 = $13; + HEAP32[$14>>2] = 0; + $15 = (($13) + 4)|0; + $16 = $15; + HEAP32[$16>>2] = 0; + $17 = HEAP32[$p>>2]|0; + $18 = (_sqlite3Fts3SelectDoctotal($17,$pStmt)|0); + HEAP32[$rc>>2] = $18; + $19 = HEAP32[$rc>>2]|0; + $20 = ($19|0)!=(0); + if ($20) { + $21 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $21; + $109 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($109|0); + } + $22 = HEAP32[$pStmt>>2]|0; + $23 = (_sqlite3_column_blob($22,0)|0); + HEAP32[$a>>2] = $23; + $24 = HEAP32[$pStmt>>2]|0; + $25 = (_sqlite3_column_bytes($24,0)|0); + $26 = HEAP32[$a>>2]|0; + $27 = (($26) + ($25)|0); + HEAP32[$pEnd>>2] = $27; + $28 = HEAP32[$a>>2]|0; + $29 = (_sqlite3Fts3GetVarint($28,$nDoc)|0); + $30 = HEAP32[$a>>2]|0; + $31 = (($30) + ($29)|0); + HEAP32[$a>>2] = $31; + while(1) { + $32 = HEAP32[$a>>2]|0; + $33 = HEAP32[$pEnd>>2]|0; + $34 = ($32>>>0)<($33>>>0); + if (!($34)) { + break; + } + $35 = HEAP32[$a>>2]|0; + $36 = (_sqlite3Fts3GetVarint($35,$nByte)|0); + $37 = HEAP32[$a>>2]|0; + $38 = (($37) + ($36)|0); + HEAP32[$a>>2] = $38; + } + $39 = $nDoc; + $40 = $39; + $41 = HEAP32[$40>>2]|0; + $42 = (($39) + 4)|0; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = ($41|0)==(0); + $46 = ($44|0)==(0); + $47 = $45 & $46; + if (!($47)) { + $48 = $nByte; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = (($48) + 4)|0; + $52 = $51; + $53 = HEAP32[$52>>2]|0; + $54 = ($50|0)==(0); + $55 = ($53|0)==(0); + $56 = $54 & $55; + if (!($56)) { + $58 = $nDoc; + $59 = $58; + $60 = HEAP32[$59>>2]|0; + $61 = (($58) + 4)|0; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = HEAP32[$1>>2]|0; + $65 = (($64) + 64|0); + $66 = $65; + $67 = $66; + HEAP32[$67>>2] = $60; + $68 = (($66) + 4)|0; + $69 = $68; + HEAP32[$69>>2] = $63; + $70 = $nByte; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = (($70) + 4)|0; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $76 = $nDoc; + $77 = $76; + $78 = HEAP32[$77>>2]|0; + $79 = (($76) + 4)|0; + $80 = $79; + $81 = HEAP32[$80>>2]|0; + $82 = (___divdi3(($72|0),($75|0),($78|0),($81|0))|0); + $83 = tempRet0; + $84 = HEAP32[$p>>2]|0; + $85 = (($84) + 236|0); + $86 = HEAP32[$85>>2]|0; + $87 = ($86|0)<(0); + $88 = $87 << 31 >> 31; + $89 = (_i64Add(($82|0),($83|0),($86|0),($88|0))|0); + $90 = tempRet0; + $91 = HEAP32[$p>>2]|0; + $92 = (($91) + 236|0); + $93 = HEAP32[$92>>2]|0; + $94 = ($93|0)<(0); + $95 = $94 << 31 >> 31; + $96 = (___divdi3(($89|0),($90|0),($93|0),($95|0))|0); + $97 = tempRet0; + $98 = HEAP32[$1>>2]|0; + $99 = (($98) + 60|0); + HEAP32[$99>>2] = $96; + $100 = HEAP32[$pStmt>>2]|0; + $101 = (_sqlite3_reset($100)|0); + HEAP32[$rc>>2] = $101; + $102 = HEAP32[$rc>>2]|0; + $103 = ($102|0)!=(0); + if (!($103)) { + break; + } + $104 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $104; + $109 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($109|0); + } + } + $57 = HEAP32[$pStmt>>2]|0; + (_sqlite3_reset($57)|0); + HEAP32[$0>>2] = 267; + $109 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($109|0); + } + } while(0); + $105 = HEAP32[$1>>2]|0; + $106 = (($105) + 60|0); + $107 = HEAP32[$106>>2]|0; + $108 = HEAP32[$2>>2]|0; + HEAP32[$108>>2] = $107; + HEAP32[$0>>2] = 0; + $109 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($109|0); +} +function _sqlite3Fts3DeferToken($pCsr,$pToken,$iCol) { + $pCsr = $pCsr|0; + $pToken = $pToken|0; + $iCol = $iCol|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDeferred = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pDeferred = sp + 12|0; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $pToken; + HEAP32[$3>>2] = $iCol; + $4 = (_sqlite3_malloc(16)|0); + HEAP32[$pDeferred>>2] = $4; + $5 = HEAP32[$pDeferred>>2]|0; + $6 = ($5|0)!=(0|0); + if ($6) { + $7 = HEAP32[$pDeferred>>2]|0; + ;HEAP32[$7+0>>2]=0|0;HEAP32[$7+4>>2]=0|0;HEAP32[$7+8>>2]=0|0;HEAP32[$7+12>>2]=0|0; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$pDeferred>>2]|0; + HEAP32[$9>>2] = $8; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 24|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$pDeferred>>2]|0; + $14 = (($13) + 8|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$3>>2]|0; + $16 = HEAP32[$pDeferred>>2]|0; + $17 = (($16) + 4|0); + HEAP32[$17>>2] = $15; + $18 = HEAP32[$pDeferred>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 24|0); + HEAP32[$20>>2] = $18; + $21 = HEAP32[$pDeferred>>2]|0; + $22 = HEAP32[$2>>2]|0; + $23 = (($22) + 16|0); + HEAP32[$23>>2] = $21; + HEAP32[$0>>2] = 0; + $24 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($24|0); + } else { + HEAP32[$0>>2] = 7; + $24 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($24|0); + } + return 0|0; +} +function _fts3DoclistCountDocids($aList,$nList) { + $aList = $aList|0; + $nList = $nList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $aEnd = 0, $nDoc = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $nDoc = sp + 4|0; + $aEnd = sp + 8|0; + $p = sp + 12|0; + HEAP32[$0>>2] = $aList; + HEAP32[$1>>2] = $nList; + HEAP32[$nDoc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $19 = HEAP32[$nDoc>>2]|0; + STACKTOP = sp;return ($19|0); + } + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + ($4)|0); + HEAP32[$aEnd>>2] = $6; + $7 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $7; + while(1) { + $8 = HEAP32[$p>>2]|0; + $9 = HEAP32[$aEnd>>2]|0; + $10 = ($8>>>0)<($9>>>0); + if (!($10)) { + break; + } + $11 = HEAP32[$nDoc>>2]|0; + $12 = (($11) + 1)|0; + HEAP32[$nDoc>>2] = $12; + while(1) { + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 1|0); + HEAP32[$p>>2] = $14; + $15 = HEAP8[$13>>0]|0; + $16 = $15 << 24 >> 24; + $17 = $16 & 128; + $18 = ($17|0)!=(0); + if (!($18)) { + break; + } + } + _fts3PoslistCopy(0,$p); + } + $19 = HEAP32[$nDoc>>2]|0; + STACKTOP = sp;return ($19|0); +} +function _sqlite3Fts3MsrOvfl($pCsr,$pMsr,$pnOvfl) { + $pCsr = $pCsr|0; + $pMsr = $pMsr|0; + $pnOvfl = $pnOvfl|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $ii = 0, $jj = 0, $nBlob = 0; + var $nOvfl = 0, $p = 0, $pReader = 0, $pgsz = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $p = sp + 32|0; + $nOvfl = sp + 28|0; + $ii = sp + 24|0; + $rc = sp + 16|0; + $pgsz = sp + 12|0; + $pReader = sp + 8|0; + $jj = sp; + $nBlob = sp + 20|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $pMsr; + HEAP32[$2>>2] = $pnOvfl; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$p>>2] = $4; + HEAP32[$nOvfl>>2] = 0; + HEAP32[$rc>>2] = 0; + $5 = HEAP32[$p>>2]|0; + $6 = (($5) + 236|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pgsz>>2] = $7; + HEAP32[$ii>>2] = 0; + while(1) { + $8 = HEAP32[$rc>>2]|0; + $9 = ($8|0)==(0); + if (!($9)) { + label = 13; + break; + } + $10 = HEAP32[$ii>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($10|0)<($13|0); + if (!($14)) { + label = 13; + break; + } + $15 = HEAP32[$ii>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + ($15<<2)|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$pReader>>2] = $19; + $20 = HEAP32[$pReader>>2]|0; + $21 = (($20) + 56|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)!=(0|0); + L5: do { + if (!($23)) { + $24 = HEAP32[$pReader>>2]|0; + $25 = (($24) + 5|0); + $26 = HEAP8[$25>>0]|0; + $27 = $26&255; + $28 = ($27|0)!=(0); + if (!($28)) { + $29 = HEAP32[$pReader>>2]|0; + $30 = (($29) + 8|0); + $31 = $30; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = $jj; + $38 = $37; + HEAP32[$38>>2] = $33; + $39 = (($37) + 4)|0; + $40 = $39; + HEAP32[$40>>2] = $36; + while(1) { + $41 = $jj; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = (($41) + 4)|0; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$pReader>>2]|0; + $48 = (($47) + 16|0); + $49 = $48; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = (($49) + 4)|0; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = ($46|0)<($54|0); + $56 = ($46|0)==($54|0); + $57 = ($43>>>0)<=($51>>>0); + $58 = $56 & $57; + $59 = $55 | $58; + if (!($59)) { + break L5; + } + $60 = HEAP32[$p>>2]|0; + $61 = $jj; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = (($61) + 4)|0; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = (_sqlite3Fts3ReadBlock($60,$63,$66,0,$nBlob,0)|0); + HEAP32[$rc>>2] = $67; + $68 = HEAP32[$rc>>2]|0; + $69 = ($68|0)!=(0); + if ($69) { + break L5; + } + $70 = HEAP32[$nBlob>>2]|0; + $71 = (($70) + 35)|0; + $72 = HEAP32[$pgsz>>2]|0; + $73 = ($71|0)>($72|0); + if ($73) { + $74 = HEAP32[$nBlob>>2]|0; + $75 = (($74) + 34)|0; + $76 = HEAP32[$pgsz>>2]|0; + $77 = (($75|0) / ($76|0))&-1; + $78 = HEAP32[$nOvfl>>2]|0; + $79 = (($78) + ($77))|0; + HEAP32[$nOvfl>>2] = $79; + } + $80 = $jj; + $81 = $80; + $82 = HEAP32[$81>>2]|0; + $83 = (($80) + 4)|0; + $84 = $83; + $85 = HEAP32[$84>>2]|0; + $86 = (_i64Add(($82|0),($85|0),1,0)|0); + $87 = tempRet0; + $88 = $jj; + $89 = $88; + HEAP32[$89>>2] = $86; + $90 = (($88) + 4)|0; + $91 = $90; + HEAP32[$91>>2] = $87; + } + } + } + } while(0); + $92 = HEAP32[$ii>>2]|0; + $93 = (($92) + 1)|0; + HEAP32[$ii>>2] = $93; + } + if ((label|0) == 13) { + $94 = HEAP32[$nOvfl>>2]|0; + $95 = HEAP32[$2>>2]|0; + HEAP32[$95>>2] = $94; + $96 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($96|0); + } + return 0|0; +} +function _fts3TermSegReaderCursor($pCsr,$zTerm,$nTerm,$isPrefix,$ppSegcsr) { + $pCsr = $pCsr|0; + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + $isPrefix = $isPrefix|0; + $ppSegcsr = $ppSegcsr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $bFound = 0, $i = 0, $p = 0; + var $pSegcsr = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 20|0; + $pSegcsr = sp + 16|0; + $rc = sp + 8|0; + $i = sp + 4|0; + $bFound = sp; + $p = sp + 12|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $zTerm; + HEAP32[$2>>2] = $nTerm; + HEAP32[$3>>2] = $isPrefix; + HEAP32[$4>>2] = $ppSegcsr; + HEAP32[$rc>>2] = 7; + $5 = (_sqlite3_malloc(56)|0); + HEAP32[$pSegcsr>>2] = $5; + $6 = HEAP32[$pSegcsr>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + $94 = HEAP32[$pSegcsr>>2]|0; + $95 = HEAP32[$4>>2]|0; + HEAP32[$95>>2] = $94; + $96 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($96|0); + } + HEAP32[$bFound>>2] = 0; + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$p>>2] = $9; + $10 = HEAP32[$3>>2]|0; + $11 = ($10|0)!=(0); + L4: do { + if ($11) { + HEAP32[$i>>2] = 1; + while(1) { + $12 = HEAP32[$bFound>>2]|0; + $13 = ($12|0)==(0); + if (!($13)) { + break; + } + $14 = HEAP32[$i>>2]|0; + $15 = HEAP32[$p>>2]|0; + $16 = (($15) + 248|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($14|0)<($17|0); + if (!($18)) { + break; + } + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 252|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + (($19*24)|0)|0); + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$2>>2]|0; + $26 = ($24|0)==($25|0); + if ($26) { + HEAP32[$bFound>>2] = 1; + $27 = HEAP32[$p>>2]|0; + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 16|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$i>>2]|0; + $32 = HEAP32[$1>>2]|0; + $33 = HEAP32[$2>>2]|0; + $34 = HEAP32[$pSegcsr>>2]|0; + $35 = (_sqlite3Fts3SegReaderCursor($27,$30,$31,-2,$32,$33,0,0,$34)|0); + HEAP32[$rc>>2] = $35; + $36 = HEAP32[$pSegcsr>>2]|0; + $37 = (($36) + 36|0); + HEAP32[$37>>2] = 1; + } + $38 = HEAP32[$i>>2]|0; + $39 = (($38) + 1)|0; + HEAP32[$i>>2] = $39; + } + HEAP32[$i>>2] = 1; + while(1) { + $40 = HEAP32[$bFound>>2]|0; + $41 = ($40|0)==(0); + if (!($41)) { + break L4; + } + $42 = HEAP32[$i>>2]|0; + $43 = HEAP32[$p>>2]|0; + $44 = (($43) + 248|0); + $45 = HEAP32[$44>>2]|0; + $46 = ($42|0)<($45|0); + if (!($46)) { + break L4; + } + $47 = HEAP32[$i>>2]|0; + $48 = HEAP32[$p>>2]|0; + $49 = (($48) + 252|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + (($47*24)|0)|0); + $52 = HEAP32[$51>>2]|0; + $53 = HEAP32[$2>>2]|0; + $54 = (($53) + 1)|0; + $55 = ($52|0)==($54|0); + if ($55) { + HEAP32[$bFound>>2] = 1; + $56 = HEAP32[$p>>2]|0; + $57 = HEAP32[$0>>2]|0; + $58 = (($57) + 16|0); + $59 = HEAP32[$58>>2]|0; + $60 = HEAP32[$i>>2]|0; + $61 = HEAP32[$1>>2]|0; + $62 = HEAP32[$2>>2]|0; + $63 = HEAP32[$pSegcsr>>2]|0; + $64 = (_sqlite3Fts3SegReaderCursor($56,$59,$60,-2,$61,$62,1,0,$63)|0); + HEAP32[$rc>>2] = $64; + $65 = HEAP32[$rc>>2]|0; + $66 = ($65|0)==(0); + if ($66) { + $67 = HEAP32[$p>>2]|0; + $68 = HEAP32[$0>>2]|0; + $69 = (($68) + 16|0); + $70 = HEAP32[$69>>2]|0; + $71 = HEAP32[$1>>2]|0; + $72 = HEAP32[$2>>2]|0; + $73 = HEAP32[$pSegcsr>>2]|0; + $74 = (_fts3SegReaderCursorAddZero($67,$70,$71,$72,$73)|0); + HEAP32[$rc>>2] = $74; + } + } + $75 = HEAP32[$i>>2]|0; + $76 = (($75) + 1)|0; + HEAP32[$i>>2] = $76; + } + } + } while(0); + $77 = HEAP32[$bFound>>2]|0; + $78 = ($77|0)==(0); + if (!($78)) { + $94 = HEAP32[$pSegcsr>>2]|0; + $95 = HEAP32[$4>>2]|0; + HEAP32[$95>>2] = $94; + $96 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($96|0); + } + $79 = HEAP32[$p>>2]|0; + $80 = HEAP32[$0>>2]|0; + $81 = (($80) + 16|0); + $82 = HEAP32[$81>>2]|0; + $83 = HEAP32[$1>>2]|0; + $84 = HEAP32[$2>>2]|0; + $85 = HEAP32[$3>>2]|0; + $86 = HEAP32[$pSegcsr>>2]|0; + $87 = (_sqlite3Fts3SegReaderCursor($79,$82,0,-2,$83,$84,$85,0,$86)|0); + HEAP32[$rc>>2] = $87; + $88 = HEAP32[$3>>2]|0; + $89 = ($88|0)!=(0); + $90 = $89 ^ 1; + $91 = $90&1; + $92 = HEAP32[$pSegcsr>>2]|0; + $93 = (($92) + 36|0); + HEAP32[$93>>2] = $91; + $94 = HEAP32[$pSegcsr>>2]|0; + $95 = HEAP32[$4>>2]|0; + HEAP32[$95>>2] = $94; + $96 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($96|0); +} +function _fts3SegReaderCursorAddZero($p,$iLangid,$zTerm,$nTerm,$pCsr) { + $p = $p|0; + $iLangid = $iLangid|0; + $zTerm = $zTerm|0; + $nTerm = $nTerm|0; + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iLangid; + HEAP32[$2>>2] = $zTerm; + HEAP32[$3>>2] = $nTerm; + HEAP32[$4>>2] = $pCsr; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$3>>2]|0; + $9 = HEAP32[$4>>2]|0; + $10 = (_fts3SegReaderCursor($5,$6,0,-2,$7,$8,0,0,$9)|0); + STACKTOP = sp;return ($10|0); +} +function _fts3ExprParseUnbalanced($pTokenizer,$iLangid,$azCol,$bFts4,$nCol,$iDefaultCol,$z,$n,$ppExpr) { + $pTokenizer = $pTokenizer|0; + $iLangid = $iLangid|0; + $azCol = $azCol|0; + $bFts4 = $bFts4|0; + $nCol = $nCol|0; + $iDefaultCol = $iDefaultCol|0; + $z = $z|0; + $n = $n|0; + $ppExpr = $ppExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nParsed = 0; + var $rc = 0, $sParse = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 80|0; + $1 = sp + 76|0; + $2 = sp + 72|0; + $3 = sp + 68|0; + $4 = sp + 64|0; + $5 = sp + 60|0; + $6 = sp + 56|0; + $7 = sp + 16|0; + $8 = sp + 12|0; + $9 = sp + 8|0; + $nParsed = sp + 4|0; + $rc = sp; + $sParse = sp + 20|0; + HEAP32[$1>>2] = $pTokenizer; + HEAP32[$2>>2] = $iLangid; + HEAP32[$3>>2] = $azCol; + HEAP32[$4>>2] = $bFts4; + HEAP32[$5>>2] = $nCol; + HEAP32[$6>>2] = $iDefaultCol; + HEAP32[$7>>2] = $z; + HEAP32[$8>>2] = $n; + HEAP32[$9>>2] = $ppExpr; + dest=$sParse+0|0; stop=dest+36|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $10 = HEAP32[$1>>2]|0; + HEAP32[$sParse>>2] = $10; + $11 = HEAP32[$2>>2]|0; + $12 = (($sParse) + 4|0); + HEAP32[$12>>2] = $11; + $13 = HEAP32[$3>>2]|0; + $14 = (($sParse) + 8|0); + HEAP32[$14>>2] = $13; + $15 = HEAP32[$5>>2]|0; + $16 = (($sParse) + 16|0); + HEAP32[$16>>2] = $15; + $17 = HEAP32[$6>>2]|0; + $18 = (($sParse) + 20|0); + HEAP32[$18>>2] = $17; + $19 = HEAP32[$4>>2]|0; + $20 = (($sParse) + 12|0); + HEAP32[$20>>2] = $19; + $21 = HEAP32[$7>>2]|0; + $22 = ($21|0)==(0|0); + if ($22) { + $23 = HEAP32[$9>>2]|0; + HEAP32[$23>>2] = 0; + HEAP32[$0>>2] = 0; + $38 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($38|0); + } + $24 = HEAP32[$8>>2]|0; + $25 = ($24|0)<(0); + if ($25) { + $26 = HEAP32[$7>>2]|0; + $27 = (_strlen(($26|0))|0); + HEAP32[$8>>2] = $27; + } + $28 = HEAP32[$7>>2]|0; + $29 = HEAP32[$8>>2]|0; + $30 = HEAP32[$9>>2]|0; + $31 = (_fts3ExprParse($sParse,$28,$29,$30,$nParsed)|0); + HEAP32[$rc>>2] = $31; + $32 = HEAP32[$rc>>2]|0; + $33 = ($32|0)==(0); + if ($33) { + $34 = (($sParse) + 32|0); + $35 = HEAP32[$34>>2]|0; + $36 = ($35|0)!=(0); + if ($36) { + HEAP32[$rc>>2] = 1; + } + } + $37 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $37; + $38 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($38|0); +} +function _fts3ExprBalance($pp,$nMaxDepth) { + $pp = $pp|0; + $nMaxDepth = $nMaxDepth|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $apLeaf = 0, $eType = 0, $i = 0, $iLvl = 0, $or$cond = 0; + var $p = 0, $pDel = 0, $pFree = 0, $pParent = 0, $pRoot = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $rc = sp + 36|0; + $pRoot = sp + 32|0; + $pFree = sp + 28|0; + $eType = sp + 24|0; + $apLeaf = sp + 20|0; + $i = sp + 12|0; + $p = sp + 8|0; + $iLvl = sp + 4|0; + $pParent = sp; + $pDel = sp + 16|0; + HEAP32[$0>>2] = $pp; + HEAP32[$1>>2] = $nMaxDepth; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$pRoot>>2] = $3; + HEAP32[$pFree>>2] = 0; + $4 = HEAP32[$pRoot>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$eType>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = ($6|0)==(0); + if ($7) { + HEAP32[$rc>>2] = 1; + } + $8 = HEAP32[$rc>>2]|0; + $9 = ($8|0)==(0); + if ($9) { + $10 = HEAP32[$eType>>2]|0; + $11 = ($10|0)==(3); + $12 = HEAP32[$eType>>2]|0; + $13 = ($12|0)==(4); + $or$cond = $11 | $13; + if ($or$cond) { + $14 = HEAP32[$1>>2]|0; + $15 = $14<<2; + $16 = (_sqlite3_malloc($15)|0); + HEAP32[$apLeaf>>2] = $16; + $17 = HEAP32[$apLeaf>>2]|0; + $18 = (0|0)==($17|0); + if ($18) { + HEAP32[$rc>>2] = 7; + } else { + $19 = HEAP32[$apLeaf>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = $20<<2; + _memset(($19|0),0,($21|0))|0; + } + $22 = HEAP32[$rc>>2]|0; + $23 = ($22|0)==(0); + if ($23) { + $24 = HEAP32[$pRoot>>2]|0; + HEAP32[$p>>2] = $24; + while(1) { + $25 = HEAP32[$p>>2]|0; + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$eType>>2]|0; + $28 = ($26|0)==($27|0); + if (!($28)) { + break; + } + $29 = HEAP32[$p>>2]|0; + $30 = (($29) + 12|0); + $31 = HEAP32[$30>>2]|0; + HEAP32[$p>>2] = $31; + } + while(1) { + $32 = HEAP32[$p>>2]|0; + $33 = (($32) + 8|0); + $34 = HEAP32[$33>>2]|0; + HEAP32[$pParent>>2] = $34; + $35 = HEAP32[$p>>2]|0; + $36 = (($35) + 8|0); + HEAP32[$36>>2] = 0; + $37 = HEAP32[$pParent>>2]|0; + $38 = ($37|0)!=(0|0); + if ($38) { + $39 = HEAP32[$pParent>>2]|0; + $40 = (($39) + 12|0); + HEAP32[$40>>2] = 0; + } else { + HEAP32[$pRoot>>2] = 0; + } + $41 = HEAP32[$1>>2]|0; + $42 = (($41) - 1)|0; + $43 = (_fts3ExprBalance($p,$42)|0); + HEAP32[$rc>>2] = $43; + $44 = HEAP32[$rc>>2]|0; + $45 = ($44|0)!=(0); + if ($45) { + break; + } + HEAP32[$iLvl>>2] = 0; + while(1) { + $46 = HEAP32[$p>>2]|0; + $47 = ($46|0)!=(0|0); + if (!($47)) { + break; + } + $48 = HEAP32[$iLvl>>2]|0; + $49 = HEAP32[$1>>2]|0; + $50 = ($48|0)<($49|0); + if (!($50)) { + break; + } + $51 = HEAP32[$iLvl>>2]|0; + $52 = HEAP32[$apLeaf>>2]|0; + $53 = (($52) + ($51<<2)|0); + $54 = HEAP32[$53>>2]|0; + $55 = ($54|0)==(0|0); + if ($55) { + $56 = HEAP32[$p>>2]|0; + $57 = HEAP32[$iLvl>>2]|0; + $58 = HEAP32[$apLeaf>>2]|0; + $59 = (($58) + ($57<<2)|0); + HEAP32[$59>>2] = $56; + HEAP32[$p>>2] = 0; + } else { + $60 = HEAP32[$iLvl>>2]|0; + $61 = HEAP32[$apLeaf>>2]|0; + $62 = (($61) + ($60<<2)|0); + $63 = HEAP32[$62>>2]|0; + $64 = HEAP32[$pFree>>2]|0; + $65 = (($64) + 12|0); + HEAP32[$65>>2] = $63; + $66 = HEAP32[$p>>2]|0; + $67 = HEAP32[$pFree>>2]|0; + $68 = (($67) + 16|0); + HEAP32[$68>>2] = $66; + $69 = HEAP32[$pFree>>2]|0; + $70 = HEAP32[$pFree>>2]|0; + $71 = (($70) + 12|0); + $72 = HEAP32[$71>>2]|0; + $73 = (($72) + 8|0); + HEAP32[$73>>2] = $69; + $74 = HEAP32[$pFree>>2]|0; + $75 = HEAP32[$pFree>>2]|0; + $76 = (($75) + 16|0); + $77 = HEAP32[$76>>2]|0; + $78 = (($77) + 8|0); + HEAP32[$78>>2] = $74; + $79 = HEAP32[$pFree>>2]|0; + HEAP32[$p>>2] = $79; + $80 = HEAP32[$pFree>>2]|0; + $81 = (($80) + 8|0); + $82 = HEAP32[$81>>2]|0; + HEAP32[$pFree>>2] = $82; + $83 = HEAP32[$p>>2]|0; + $84 = (($83) + 8|0); + HEAP32[$84>>2] = 0; + $85 = HEAP32[$iLvl>>2]|0; + $86 = HEAP32[$apLeaf>>2]|0; + $87 = (($86) + ($85<<2)|0); + HEAP32[$87>>2] = 0; + } + $88 = HEAP32[$iLvl>>2]|0; + $89 = (($88) + 1)|0; + HEAP32[$iLvl>>2] = $89; + } + $90 = HEAP32[$p>>2]|0; + $91 = ($90|0)!=(0|0); + if ($91) { + label = 24; + break; + } + $93 = HEAP32[$pParent>>2]|0; + $94 = ($93|0)==(0|0); + if ($94) { + break; + } + $95 = HEAP32[$pParent>>2]|0; + $96 = (($95) + 16|0); + $97 = HEAP32[$96>>2]|0; + HEAP32[$p>>2] = $97; + while(1) { + $98 = HEAP32[$p>>2]|0; + $99 = HEAP32[$98>>2]|0; + $100 = HEAP32[$eType>>2]|0; + $101 = ($99|0)==($100|0); + if (!($101)) { + break; + } + $102 = HEAP32[$p>>2]|0; + $103 = (($102) + 12|0); + $104 = HEAP32[$103>>2]|0; + HEAP32[$p>>2] = $104; + } + $105 = HEAP32[$pParent>>2]|0; + $106 = (($105) + 8|0); + $107 = HEAP32[$106>>2]|0; + $108 = HEAP32[$pParent>>2]|0; + $109 = (($108) + 16|0); + $110 = HEAP32[$109>>2]|0; + $111 = (($110) + 8|0); + HEAP32[$111>>2] = $107; + $112 = HEAP32[$pParent>>2]|0; + $113 = (($112) + 8|0); + $114 = HEAP32[$113>>2]|0; + $115 = ($114|0)!=(0|0); + $116 = HEAP32[$pParent>>2]|0; + $117 = (($116) + 16|0); + $118 = HEAP32[$117>>2]|0; + if ($115) { + $119 = HEAP32[$pParent>>2]|0; + $120 = (($119) + 8|0); + $121 = HEAP32[$120>>2]|0; + $122 = (($121) + 12|0); + HEAP32[$122>>2] = $118; + } else { + HEAP32[$pRoot>>2] = $118; + } + $123 = HEAP32[$pFree>>2]|0; + $124 = HEAP32[$pParent>>2]|0; + $125 = (($124) + 8|0); + HEAP32[$125>>2] = $123; + $126 = HEAP32[$pParent>>2]|0; + HEAP32[$pFree>>2] = $126; + } + if ((label|0) == 24) { + $92 = HEAP32[$p>>2]|0; + _sqlite3Fts3ExprFree($92); + HEAP32[$rc>>2] = 18; + } + $127 = HEAP32[$rc>>2]|0; + $128 = ($127|0)==(0); + L44: do { + if ($128) { + HEAP32[$p>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $129 = HEAP32[$i>>2]|0; + $130 = HEAP32[$1>>2]|0; + $131 = ($129|0)<($130|0); + if (!($131)) { + break; + } + $132 = HEAP32[$i>>2]|0; + $133 = HEAP32[$apLeaf>>2]|0; + $134 = (($133) + ($132<<2)|0); + $135 = HEAP32[$134>>2]|0; + $136 = ($135|0)!=(0|0); + do { + if ($136) { + $137 = HEAP32[$p>>2]|0; + $138 = ($137|0)==(0|0); + if ($138) { + $139 = HEAP32[$i>>2]|0; + $140 = HEAP32[$apLeaf>>2]|0; + $141 = (($140) + ($139<<2)|0); + $142 = HEAP32[$141>>2]|0; + HEAP32[$p>>2] = $142; + $143 = HEAP32[$p>>2]|0; + $144 = (($143) + 8|0); + HEAP32[$144>>2] = 0; + break; + } else { + $145 = HEAP32[$p>>2]|0; + $146 = HEAP32[$pFree>>2]|0; + $147 = (($146) + 16|0); + HEAP32[$147>>2] = $145; + $148 = HEAP32[$i>>2]|0; + $149 = HEAP32[$apLeaf>>2]|0; + $150 = (($149) + ($148<<2)|0); + $151 = HEAP32[$150>>2]|0; + $152 = HEAP32[$pFree>>2]|0; + $153 = (($152) + 12|0); + HEAP32[$153>>2] = $151; + $154 = HEAP32[$pFree>>2]|0; + $155 = HEAP32[$pFree>>2]|0; + $156 = (($155) + 12|0); + $157 = HEAP32[$156>>2]|0; + $158 = (($157) + 8|0); + HEAP32[$158>>2] = $154; + $159 = HEAP32[$pFree>>2]|0; + $160 = HEAP32[$pFree>>2]|0; + $161 = (($160) + 16|0); + $162 = HEAP32[$161>>2]|0; + $163 = (($162) + 8|0); + HEAP32[$163>>2] = $159; + $164 = HEAP32[$pFree>>2]|0; + HEAP32[$p>>2] = $164; + $165 = HEAP32[$pFree>>2]|0; + $166 = (($165) + 8|0); + $167 = HEAP32[$166>>2]|0; + HEAP32[$pFree>>2] = $167; + $168 = HEAP32[$p>>2]|0; + $169 = (($168) + 8|0); + HEAP32[$169>>2] = 0; + break; + } + } + } while(0); + $170 = HEAP32[$i>>2]|0; + $171 = (($170) + 1)|0; + HEAP32[$i>>2] = $171; + } + $172 = HEAP32[$p>>2]|0; + HEAP32[$pRoot>>2] = $172; + } else { + HEAP32[$i>>2] = 0; + while(1) { + $173 = HEAP32[$i>>2]|0; + $174 = HEAP32[$1>>2]|0; + $175 = ($173|0)<($174|0); + if (!($175)) { + break; + } + $176 = HEAP32[$i>>2]|0; + $177 = HEAP32[$apLeaf>>2]|0; + $178 = (($177) + ($176<<2)|0); + $179 = HEAP32[$178>>2]|0; + _sqlite3Fts3ExprFree($179); + $180 = HEAP32[$i>>2]|0; + $181 = (($180) + 1)|0; + HEAP32[$i>>2] = $181; + } + while(1) { + $182 = HEAP32[$pFree>>2]|0; + HEAP32[$pDel>>2] = $182; + $183 = ($182|0)!=(0|0); + if (!($183)) { + break L44; + } + $184 = HEAP32[$pDel>>2]|0; + $185 = (($184) + 8|0); + $186 = HEAP32[$185>>2]|0; + HEAP32[$pFree>>2] = $186; + $187 = HEAP32[$pDel>>2]|0; + _sqlite3_free($187); + } + } + } while(0); + $188 = HEAP32[$apLeaf>>2]|0; + _sqlite3_free($188); + } + } + } + $189 = HEAP32[$rc>>2]|0; + $190 = ($189|0)!=(0); + if (!($190)) { + $192 = HEAP32[$pRoot>>2]|0; + $193 = HEAP32[$0>>2]|0; + HEAP32[$193>>2] = $192; + $194 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($194|0); + } + $191 = HEAP32[$pRoot>>2]|0; + _sqlite3Fts3ExprFree($191); + HEAP32[$pRoot>>2] = 0; + $192 = HEAP32[$pRoot>>2]|0; + $193 = HEAP32[$0>>2]|0; + HEAP32[$193>>2] = $192; + $194 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($194|0); +} +function _fts3ExprCheckDepth($p,$nMaxDepth) { + $p = $p|0; + $nMaxDepth = $nMaxDepth|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $nMaxDepth; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = ($2|0)!=(0|0); + do { + if ($3) { + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)<(0); + if ($5) { + HEAP32[$rc>>2] = 18; + break; + } + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) - 1)|0; + $11 = (_fts3ExprCheckDepth($8,$10)|0); + HEAP32[$rc>>2] = $11; + $12 = HEAP32[$rc>>2]|0; + $13 = ($12|0)==(0); + if ($13) { + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 16|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) - 1)|0; + $19 = (_fts3ExprCheckDepth($16,$18)|0); + HEAP32[$rc>>2] = $19; + } + } + } while(0); + $20 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($20|0); +} +function _fts3ExprParse($pParse,$z,$n,$ppExpr,$pnConsumed) { + $pParse = $pParse|0; + $z = $z|0; + $n = $n|0; + $ppExpr = $ppExpr|0; + $pnConsumed = $pnConsumed|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $16 = 0, $17 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $eType = 0, $isPhrase = 0, $isRequirePhrase = 0, $nByte = 0, $nIn = 0, $p = 0, $pAnd = 0, $pIter = 0, $pNot = 0, $pNotBranch = 0; + var $pPrev = 0, $pRet = 0, $rc = 0, $zIn = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 72|0; + $1 = sp + 68|0; + $2 = sp + 64|0; + $3 = sp + 60|0; + $4 = sp + 56|0; + $pRet = sp + 52|0; + $pPrev = sp + 48|0; + $pNotBranch = sp + 44|0; + $nIn = sp + 40|0; + $zIn = sp + 36|0; + $rc = sp + 12|0; + $isRequirePhrase = sp; + $p = sp + 4|0; + $nByte = sp + 8|0; + $isPhrase = sp + 16|0; + $pNot = sp + 20|0; + $eType = sp + 24|0; + $pAnd = sp + 28|0; + $pIter = sp + 32|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $z; + HEAP32[$2>>2] = $n; + HEAP32[$3>>2] = $ppExpr; + HEAP32[$4>>2] = $pnConsumed; + HEAP32[$pRet>>2] = 0; + HEAP32[$pPrev>>2] = 0; + HEAP32[$pNotBranch>>2] = 0; + $5 = HEAP32[$2>>2]|0; + HEAP32[$nIn>>2] = $5; + $6 = HEAP32[$1>>2]|0; + HEAP32[$zIn>>2] = $6; + HEAP32[$rc>>2] = 0; + HEAP32[$isRequirePhrase>>2] = 1; + while(1) { + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)==(0); + if (!($8)) { + label = 38; + break; + } + HEAP32[$p>>2] = 0; + HEAP32[$nByte>>2] = 0; + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$zIn>>2]|0; + $11 = HEAP32[$nIn>>2]|0; + $12 = (_getNextNode($9,$10,$11,$p,$nByte)|0); + HEAP32[$rc>>2] = $12; + $13 = HEAP32[$rc>>2]|0; + $14 = ($13|0)==(0); + if ($14) { + $15 = HEAP32[$p>>2]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = HEAP32[$p>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = ($18|0)==(5); + if ($19) { + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 24|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)!=(0); + if ($23) { + $24 = (_fts3MallocZero(40)|0); + HEAP32[$pNot>>2] = $24; + $25 = HEAP32[$pNot>>2]|0; + $26 = ($25|0)!=(0|0); + if (!($26)) { + label = 8; + break; + } + $28 = HEAP32[$pNot>>2]|0; + HEAP32[$28>>2] = 2; + $29 = HEAP32[$p>>2]|0; + $30 = HEAP32[$pNot>>2]|0; + $31 = (($30) + 16|0); + HEAP32[$31>>2] = $29; + $32 = HEAP32[$pNot>>2]|0; + $33 = HEAP32[$p>>2]|0; + $34 = (($33) + 8|0); + HEAP32[$34>>2] = $32; + $35 = HEAP32[$pNotBranch>>2]|0; + $36 = ($35|0)!=(0|0); + if ($36) { + $37 = HEAP32[$pNotBranch>>2]|0; + $38 = HEAP32[$pNot>>2]|0; + $39 = (($38) + 12|0); + HEAP32[$39>>2] = $37; + $40 = HEAP32[$pNot>>2]|0; + $41 = HEAP32[$pNotBranch>>2]|0; + $42 = (($41) + 8|0); + HEAP32[$42>>2] = $40; + } + $43 = HEAP32[$pNot>>2]|0; + HEAP32[$pNotBranch>>2] = $43; + $44 = HEAP32[$pPrev>>2]|0; + HEAP32[$p>>2] = $44; + } else { + label = 12; + } + } else { + label = 12; + } + if ((label|0) == 12) { + label = 0; + $45 = HEAP32[$p>>2]|0; + $46 = HEAP32[$45>>2]|0; + HEAP32[$eType>>2] = $46; + $47 = HEAP32[$eType>>2]|0; + $48 = ($47|0)==(5); + if ($48) { + $54 = 1; + } else { + $49 = HEAP32[$p>>2]|0; + $50 = (($49) + 12|0); + $51 = HEAP32[$50>>2]|0; + $52 = ($51|0)!=(0|0); + $54 = $52; + } + $53 = $54&1; + HEAP32[$isPhrase>>2] = $53; + $55 = HEAP32[$isPhrase>>2]|0; + $56 = ($55|0)!=(0); + if (!($56)) { + $57 = HEAP32[$isRequirePhrase>>2]|0; + $58 = ($57|0)!=(0); + if ($58) { + label = 16; + break; + } + } + $60 = HEAP32[$isPhrase>>2]|0; + $61 = ($60|0)!=(0); + if ($61) { + $62 = HEAP32[$isRequirePhrase>>2]|0; + $63 = ($62|0)!=(0); + if (!($63)) { + $64 = (_fts3MallocZero(40)|0); + HEAP32[$pAnd>>2] = $64; + $65 = HEAP32[$pAnd>>2]|0; + $66 = ($65|0)!=(0|0); + if (!($66)) { + label = 20; + break; + } + $68 = HEAP32[$pAnd>>2]|0; + HEAP32[$68>>2] = 3; + $69 = HEAP32[$pPrev>>2]|0; + $70 = HEAP32[$pAnd>>2]|0; + _insertBinaryOperator($pRet,$69,$70); + $71 = HEAP32[$pAnd>>2]|0; + HEAP32[$pPrev>>2] = $71; + } + } + $72 = HEAP32[$pPrev>>2]|0; + $73 = ($72|0)!=(0|0); + if ($73) { + $74 = HEAP32[$eType>>2]|0; + $75 = ($74|0)==(1); + if ($75) { + $76 = HEAP32[$isPhrase>>2]|0; + $77 = ($76|0)!=(0); + if (!($77)) { + $78 = HEAP32[$pPrev>>2]|0; + $79 = HEAP32[$78>>2]|0; + $80 = ($79|0)!=(5); + if ($80) { + label = 29; + break; + } + } + } + $81 = HEAP32[$eType>>2]|0; + $82 = ($81|0)!=(5); + if ($82) { + $83 = HEAP32[$isPhrase>>2]|0; + $84 = ($83|0)!=(0); + if ($84) { + $85 = HEAP32[$pPrev>>2]|0; + $86 = HEAP32[$85>>2]|0; + $87 = ($86|0)==(1); + if ($87) { + label = 29; + break; + } + } + } + } + $89 = HEAP32[$isPhrase>>2]|0; + $90 = ($89|0)!=(0); + do { + if ($90) { + $91 = HEAP32[$pRet>>2]|0; + $92 = ($91|0)!=(0|0); + $93 = HEAP32[$p>>2]|0; + if ($92) { + $94 = HEAP32[$pPrev>>2]|0; + $95 = (($94) + 16|0); + HEAP32[$95>>2] = $93; + $96 = HEAP32[$pPrev>>2]|0; + $97 = HEAP32[$p>>2]|0; + $98 = (($97) + 8|0); + HEAP32[$98>>2] = $96; + break; + } else { + HEAP32[$pRet>>2] = $93; + break; + } + } else { + $99 = HEAP32[$pPrev>>2]|0; + $100 = HEAP32[$p>>2]|0; + _insertBinaryOperator($pRet,$99,$100); + } + } while(0); + $101 = HEAP32[$isPhrase>>2]|0; + $102 = ($101|0)!=(0); + $103 = $102 ^ 1; + $104 = $103&1; + HEAP32[$isRequirePhrase>>2] = $104; + } + $105 = HEAP32[$p>>2]|0; + HEAP32[$pPrev>>2] = $105; + } + } + $106 = HEAP32[$nByte>>2]|0; + $107 = HEAP32[$nIn>>2]|0; + $108 = (($107) - ($106))|0; + HEAP32[$nIn>>2] = $108; + $109 = HEAP32[$nByte>>2]|0; + $110 = HEAP32[$zIn>>2]|0; + $111 = (($110) + ($109)|0); + HEAP32[$zIn>>2] = $111; + } + if ((label|0) == 8) { + $27 = HEAP32[$p>>2]|0; + _sqlite3Fts3ExprFree($27); + HEAP32[$rc>>2] = 7; + } + else if ((label|0) == 16) { + $59 = HEAP32[$p>>2]|0; + _sqlite3Fts3ExprFree($59); + HEAP32[$rc>>2] = 1; + } + else if ((label|0) == 20) { + $67 = HEAP32[$p>>2]|0; + _sqlite3Fts3ExprFree($67); + HEAP32[$rc>>2] = 7; + } + else if ((label|0) == 29) { + $88 = HEAP32[$p>>2]|0; + _sqlite3Fts3ExprFree($88); + HEAP32[$rc>>2] = 1; + } + else if ((label|0) == 38) { + $112 = HEAP32[$rc>>2]|0; + $113 = ($112|0)==(101); + if ($113) { + $114 = HEAP32[$pRet>>2]|0; + $115 = ($114|0)!=(0|0); + if ($115) { + $116 = HEAP32[$isRequirePhrase>>2]|0; + $117 = ($116|0)!=(0); + if ($117) { + HEAP32[$rc>>2] = 1; + } + } + } + $118 = HEAP32[$rc>>2]|0; + $119 = ($118|0)==(101); + do { + if ($119) { + HEAP32[$rc>>2] = 0; + $120 = HEAP32[$pNotBranch>>2]|0; + $121 = ($120|0)!=(0|0); + if ($121) { + $122 = HEAP32[$pRet>>2]|0; + $123 = ($122|0)!=(0|0); + if (!($123)) { + HEAP32[$rc>>2] = 1; + break; + } + $124 = HEAP32[$pNotBranch>>2]|0; + HEAP32[$pIter>>2] = $124; + while(1) { + $125 = HEAP32[$pIter>>2]|0; + $126 = (($125) + 12|0); + $127 = HEAP32[$126>>2]|0; + $128 = ($127|0)!=(0|0); + if (!($128)) { + break; + } + $129 = HEAP32[$pIter>>2]|0; + $130 = (($129) + 12|0); + $131 = HEAP32[$130>>2]|0; + HEAP32[$pIter>>2] = $131; + } + $132 = HEAP32[$pRet>>2]|0; + $133 = HEAP32[$pIter>>2]|0; + $134 = (($133) + 12|0); + HEAP32[$134>>2] = $132; + $135 = HEAP32[$pIter>>2]|0; + $136 = HEAP32[$pRet>>2]|0; + $137 = (($136) + 8|0); + HEAP32[$137>>2] = $135; + $138 = HEAP32[$pNotBranch>>2]|0; + HEAP32[$pRet>>2] = $138; + } + } + } while(0); + $139 = HEAP32[$2>>2]|0; + $140 = HEAP32[$nIn>>2]|0; + $141 = (($139) - ($140))|0; + $142 = HEAP32[$4>>2]|0; + HEAP32[$142>>2] = $141; + } + $143 = HEAP32[$rc>>2]|0; + $144 = ($143|0)!=(0); + if (!($144)) { + $147 = HEAP32[$pRet>>2]|0; + $148 = HEAP32[$3>>2]|0; + HEAP32[$148>>2] = $147; + $149 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($149|0); + } + $145 = HEAP32[$pRet>>2]|0; + _sqlite3Fts3ExprFree($145); + $146 = HEAP32[$pNotBranch>>2]|0; + _sqlite3Fts3ExprFree($146); + HEAP32[$pRet>>2] = 0; + $147 = HEAP32[$pRet>>2]|0; + $148 = HEAP32[$3>>2]|0; + HEAP32[$148>>2] = $147; + $149 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($149|0); +} +function _getNextNode($pParse,$z,$n,$ppExpr,$pnConsumed) { + $pParse = $pParse|0; + $z = $z|0; + $n = $n|0; + $ppExpr = $ppExpr|0; + $pnConsumed = $pnConsumed|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cNext = 0, $iCol = 0, $iColLen = 0, $ii = 0, $nInput = 0, $nKey = 0, $nNear = 0, $nStr = 0, $pKey = 0, $pRet = 0, $rc = 0, $zInput = 0, $zStr = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 68|0; + $1 = sp + 64|0; + $2 = sp + 60|0; + $3 = sp + 56|0; + $4 = sp + 52|0; + $5 = sp + 48|0; + $ii = sp + 44|0; + $iCol = sp + 40|0; + $iColLen = sp + 36|0; + $rc = sp + 32|0; + $pRet = sp + 24|0; + $zInput = sp + 20|0; + $nInput = sp + 16|0; + $pKey = sp + 12|0; + $nNear = sp + 8|0; + $nKey = sp + 4|0; + $cNext = sp + 72|0; + $zStr = sp; + $nStr = sp + 28|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $z; + HEAP32[$3>>2] = $n; + HEAP32[$4>>2] = $ppExpr; + HEAP32[$5>>2] = $pnConsumed; + HEAP32[$pRet>>2] = 0; + $6 = HEAP32[$2>>2]|0; + HEAP32[$zInput>>2] = $6; + $7 = HEAP32[$3>>2]|0; + HEAP32[$nInput>>2] = $7; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 24|0); + HEAP32[$9>>2] = 0; + while(1) { + $10 = HEAP32[$nInput>>2]|0; + $11 = ($10|0)>(0); + if ($11) { + $12 = HEAP32[$zInput>>2]|0; + $13 = HEAP8[$12>>0]|0; + $14 = (_fts3isspace($13)|0); + $15 = ($14|0)!=(0); + $226 = $15; + } else { + $226 = 0; + } + $16 = HEAP32[$nInput>>2]|0; + if (!($226)) { + break; + } + $17 = (($16) + -1)|0; + HEAP32[$nInput>>2] = $17; + $18 = HEAP32[$zInput>>2]|0; + $19 = (($18) + 1|0); + HEAP32[$zInput>>2] = $19; + } + $20 = ($16|0)==(0); + if ($20) { + HEAP32[$0>>2] = 101; + $225 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($225|0); + } + HEAP32[$ii>>2] = 0; + while(1) { + $21 = HEAP32[$ii>>2]|0; + $22 = ($21|0)<(4); + if (!($22)) { + break; + } + $23 = HEAP32[$ii>>2]|0; + $24 = (7608 + ($23<<3)|0); + HEAP32[$pKey>>2] = $24; + $25 = HEAP32[$pKey>>2]|0; + $26 = (($25) + 5|0); + $27 = HEAP8[$26>>0]|0; + $28 = $27&255; + $29 = ($28|0)!=(0); + if (!($29)) { + $30 = HEAP32[$nInput>>2]|0; + $31 = HEAP32[$pKey>>2]|0; + $32 = (($31) + 4|0); + $33 = HEAP8[$32>>0]|0; + $34 = $33&255; + $35 = ($30|0)>=($34|0); + if ($35) { + $36 = HEAP32[$zInput>>2]|0; + $37 = HEAP32[$pKey>>2]|0; + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$pKey>>2]|0; + $40 = (($39) + 4|0); + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = (_memcmp($36,$38,$42)|0); + $44 = (0)==($43|0); + if ($44) { + HEAP32[$nNear>>2] = 10; + $45 = HEAP32[$pKey>>2]|0; + $46 = (($45) + 4|0); + $47 = HEAP8[$46>>0]|0; + $48 = $47&255; + HEAP32[$nKey>>2] = $48; + $49 = HEAP32[$pKey>>2]|0; + $50 = (($49) + 6|0); + $51 = HEAP8[$50>>0]|0; + $52 = $51&255; + $53 = ($52|0)==(1); + L19: do { + if ($53) { + $54 = HEAP32[$zInput>>2]|0; + $55 = (($54) + 4|0); + $56 = HEAP8[$55>>0]|0; + $57 = $56 << 24 >> 24; + $58 = ($57|0)==(47); + if ($58) { + $59 = HEAP32[$zInput>>2]|0; + $60 = (($59) + 5|0); + $61 = HEAP8[$60>>0]|0; + $62 = $61 << 24 >> 24; + $63 = ($62|0)>=(48); + if ($63) { + $64 = HEAP32[$zInput>>2]|0; + $65 = (($64) + 5|0); + $66 = HEAP8[$65>>0]|0; + $67 = $66 << 24 >> 24; + $68 = ($67|0)<=(57); + if ($68) { + HEAP32[$nNear>>2] = 0; + HEAP32[$nKey>>2] = 5; + while(1) { + $69 = HEAP32[$nKey>>2]|0; + $70 = HEAP32[$zInput>>2]|0; + $71 = (($70) + ($69)|0); + $72 = HEAP8[$71>>0]|0; + $73 = $72 << 24 >> 24; + $74 = ($73|0)>=(48); + if (!($74)) { + break L19; + } + $75 = HEAP32[$nKey>>2]|0; + $76 = HEAP32[$zInput>>2]|0; + $77 = (($76) + ($75)|0); + $78 = HEAP8[$77>>0]|0; + $79 = $78 << 24 >> 24; + $80 = ($79|0)<=(57); + if (!($80)) { + break L19; + } + $81 = HEAP32[$nNear>>2]|0; + $82 = ($81*10)|0; + $83 = HEAP32[$nKey>>2]|0; + $84 = HEAP32[$zInput>>2]|0; + $85 = (($84) + ($83)|0); + $86 = HEAP8[$85>>0]|0; + $87 = $86 << 24 >> 24; + $88 = (($87) - 48)|0; + $89 = (($82) + ($88))|0; + HEAP32[$nNear>>2] = $89; + $90 = HEAP32[$nKey>>2]|0; + $91 = (($90) + 1)|0; + HEAP32[$nKey>>2] = $91; + } + } + } + } + } + } while(0); + $92 = HEAP32[$nKey>>2]|0; + $93 = HEAP32[$zInput>>2]|0; + $94 = (($93) + ($92)|0); + $95 = HEAP8[$94>>0]|0; + HEAP8[$cNext>>0] = $95; + $96 = HEAP8[$cNext>>0]|0; + $97 = (_fts3isspace($96)|0); + $98 = ($97|0)!=(0); + if ($98) { + label = 26; + break; + } + $99 = HEAP8[$cNext>>0]|0; + $100 = $99 << 24 >> 24; + $101 = ($100|0)==(34); + if ($101) { + label = 26; + break; + } + $102 = HEAP8[$cNext>>0]|0; + $103 = $102 << 24 >> 24; + $104 = ($103|0)==(40); + if ($104) { + label = 26; + break; + } + $105 = HEAP8[$cNext>>0]|0; + $106 = $105 << 24 >> 24; + $107 = ($106|0)==(41); + if ($107) { + label = 26; + break; + } + $108 = HEAP8[$cNext>>0]|0; + $109 = $108 << 24 >> 24; + $110 = ($109|0)==(0); + if ($110) { + label = 26; + break; + } + } + } + } + $132 = HEAP32[$ii>>2]|0; + $133 = (($132) + 1)|0; + HEAP32[$ii>>2] = $133; + } + if ((label|0) == 26) { + $111 = (_fts3MallocZero(40)|0); + HEAP32[$pRet>>2] = $111; + $112 = HEAP32[$pRet>>2]|0; + $113 = ($112|0)!=(0|0); + if ($113) { + $114 = HEAP32[$pKey>>2]|0; + $115 = (($114) + 6|0); + $116 = HEAP8[$115>>0]|0; + $117 = $116&255; + $118 = HEAP32[$pRet>>2]|0; + HEAP32[$118>>2] = $117; + $119 = HEAP32[$nNear>>2]|0; + $120 = HEAP32[$pRet>>2]|0; + $121 = (($120) + 4|0); + HEAP32[$121>>2] = $119; + $122 = HEAP32[$pRet>>2]|0; + $123 = HEAP32[$4>>2]|0; + HEAP32[$123>>2] = $122; + $124 = HEAP32[$zInput>>2]|0; + $125 = HEAP32[$2>>2]|0; + $126 = $124; + $127 = $125; + $128 = (($126) - ($127))|0; + $129 = HEAP32[$nKey>>2]|0; + $130 = (($128) + ($129))|0; + $131 = HEAP32[$5>>2]|0; + HEAP32[$131>>2] = $130; + HEAP32[$0>>2] = 0; + $225 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($225|0); + } else { + HEAP32[$0>>2] = 7; + $225 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($225|0); + } + } + $134 = HEAP32[$zInput>>2]|0; + $135 = HEAP8[$134>>0]|0; + $136 = $135 << 24 >> 24; + $137 = ($136|0)==(34); + if ($137) { + HEAP32[$ii>>2] = 1; + while(1) { + $138 = HEAP32[$ii>>2]|0; + $139 = HEAP32[$nInput>>2]|0; + $140 = ($138|0)<($139|0); + if (!($140)) { + break; + } + $141 = HEAP32[$ii>>2]|0; + $142 = HEAP32[$zInput>>2]|0; + $143 = (($142) + ($141)|0); + $144 = HEAP8[$143>>0]|0; + $145 = $144 << 24 >> 24; + $146 = ($145|0)!=(34); + if (!($146)) { + break; + } + $147 = HEAP32[$ii>>2]|0; + $148 = (($147) + 1)|0; + HEAP32[$ii>>2] = $148; + } + $149 = HEAP32[$zInput>>2]|0; + $150 = HEAP32[$2>>2]|0; + $151 = $149; + $152 = $150; + $153 = (($151) - ($152))|0; + $154 = HEAP32[$ii>>2]|0; + $155 = (($153) + ($154))|0; + $156 = (($155) + 1)|0; + $157 = HEAP32[$5>>2]|0; + HEAP32[$157>>2] = $156; + $158 = HEAP32[$ii>>2]|0; + $159 = HEAP32[$nInput>>2]|0; + $160 = ($158|0)==($159|0); + if ($160) { + HEAP32[$0>>2] = 1; + $225 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($225|0); + } else { + $161 = HEAP32[$1>>2]|0; + $162 = HEAP32[$zInput>>2]|0; + $163 = (($162) + 1|0); + $164 = HEAP32[$ii>>2]|0; + $165 = (($164) - 1)|0; + $166 = HEAP32[$4>>2]|0; + $167 = (_getNextString($161,$163,$165,$166)|0); + HEAP32[$0>>2] = $167; + $225 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($225|0); + } + } else { + $168 = HEAP32[$1>>2]|0; + $169 = (($168) + 20|0); + $170 = HEAP32[$169>>2]|0; + HEAP32[$iCol>>2] = $170; + HEAP32[$iColLen>>2] = 0; + HEAP32[$ii>>2] = 0; + while(1) { + $171 = HEAP32[$ii>>2]|0; + $172 = HEAP32[$1>>2]|0; + $173 = (($172) + 16|0); + $174 = HEAP32[$173>>2]|0; + $175 = ($171|0)<($174|0); + if (!($175)) { + break; + } + $176 = HEAP32[$ii>>2]|0; + $177 = HEAP32[$1>>2]|0; + $178 = (($177) + 8|0); + $179 = HEAP32[$178>>2]|0; + $180 = (($179) + ($176<<2)|0); + $181 = HEAP32[$180>>2]|0; + HEAP32[$zStr>>2] = $181; + $182 = HEAP32[$zStr>>2]|0; + $183 = (_strlen(($182|0))|0); + HEAP32[$nStr>>2] = $183; + $184 = HEAP32[$nInput>>2]|0; + $185 = HEAP32[$nStr>>2]|0; + $186 = ($184|0)>($185|0); + if ($186) { + $187 = HEAP32[$nStr>>2]|0; + $188 = HEAP32[$zInput>>2]|0; + $189 = (($188) + ($187)|0); + $190 = HEAP8[$189>>0]|0; + $191 = $190 << 24 >> 24; + $192 = ($191|0)==(58); + if ($192) { + $193 = HEAP32[$zStr>>2]|0; + $194 = HEAP32[$zInput>>2]|0; + $195 = HEAP32[$nStr>>2]|0; + $196 = (_sqlite3_strnicmp($193,$194,$195)|0); + $197 = ($196|0)==(0); + if ($197) { + label = 43; + break; + } + } + } + $207 = HEAP32[$ii>>2]|0; + $208 = (($207) + 1)|0; + HEAP32[$ii>>2] = $208; + } + if ((label|0) == 43) { + $198 = HEAP32[$ii>>2]|0; + HEAP32[$iCol>>2] = $198; + $199 = HEAP32[$zInput>>2]|0; + $200 = HEAP32[$2>>2]|0; + $201 = $199; + $202 = $200; + $203 = (($201) - ($202))|0; + $204 = HEAP32[$nStr>>2]|0; + $205 = (($203) + ($204))|0; + $206 = (($205) + 1)|0; + HEAP32[$iColLen>>2] = $206; + } + $209 = HEAP32[$1>>2]|0; + $210 = HEAP32[$iCol>>2]|0; + $211 = HEAP32[$iColLen>>2]|0; + $212 = HEAP32[$2>>2]|0; + $213 = (($212) + ($211)|0); + $214 = HEAP32[$3>>2]|0; + $215 = HEAP32[$iColLen>>2]|0; + $216 = (($214) - ($215))|0; + $217 = HEAP32[$4>>2]|0; + $218 = HEAP32[$5>>2]|0; + $219 = (_getNextToken($209,$210,$213,$216,$217,$218)|0); + HEAP32[$rc>>2] = $219; + $220 = HEAP32[$iColLen>>2]|0; + $221 = HEAP32[$5>>2]|0; + $222 = HEAP32[$221>>2]|0; + $223 = (($222) + ($220))|0; + HEAP32[$221>>2] = $223; + $224 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $224; + $225 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($225|0); + } + return 0|0; +} +function _fts3MallocZero($nByte) { + $nByte = $nByte|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $pRet = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pRet = sp; + HEAP32[$0>>2] = $nByte; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3_malloc($1)|0); + HEAP32[$pRet>>2] = $2; + $3 = HEAP32[$pRet>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + $7 = HEAP32[$pRet>>2]|0; + STACKTOP = sp;return ($7|0); + } + $5 = HEAP32[$pRet>>2]|0; + $6 = HEAP32[$0>>2]|0; + _memset(($5|0),0,($6|0))|0; + $7 = HEAP32[$pRet>>2]|0; + STACKTOP = sp;return ($7|0); +} +function _insertBinaryOperator($ppHead,$pPrev,$pNew) { + $ppHead = $ppHead|0; + $pPrev = $pPrev|0; + $pNew = $pNew|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pSplit = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pSplit = sp + 8|0; + HEAP32[$0>>2] = $ppHead; + HEAP32[$1>>2] = $pPrev; + HEAP32[$2>>2] = $pNew; + $3 = HEAP32[$1>>2]|0; + HEAP32[$pSplit>>2] = $3; + while(1) { + $4 = HEAP32[$pSplit>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = HEAP32[$pSplit>>2]|0; + $9 = (($8) + 8|0); + $10 = HEAP32[$9>>2]|0; + $11 = (_opPrecedence($10)|0); + $12 = HEAP32[$2>>2]|0; + $13 = (_opPrecedence($12)|0); + $14 = ($11|0)<=($13|0); + $36 = $14; + } else { + $36 = 0; + } + $15 = HEAP32[$pSplit>>2]|0; + $16 = (($15) + 8|0); + $17 = HEAP32[$16>>2]|0; + if (!($36)) { + break; + } + HEAP32[$pSplit>>2] = $17; + } + $18 = ($17|0)!=(0|0); + $19 = HEAP32[$2>>2]|0; + if ($18) { + $20 = HEAP32[$pSplit>>2]|0; + $21 = (($20) + 8|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + 16|0); + HEAP32[$23>>2] = $19; + $24 = HEAP32[$pSplit>>2]|0; + $25 = (($24) + 8|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 8|0); + HEAP32[$28>>2] = $26; + $30 = HEAP32[$pSplit>>2]|0; + $31 = HEAP32[$2>>2]|0; + $32 = (($31) + 12|0); + HEAP32[$32>>2] = $30; + $33 = HEAP32[$2>>2]|0; + $34 = HEAP32[$pSplit>>2]|0; + $35 = (($34) + 8|0); + HEAP32[$35>>2] = $33; + STACKTOP = sp;return; + } else { + $29 = HEAP32[$0>>2]|0; + HEAP32[$29>>2] = $19; + $30 = HEAP32[$pSplit>>2]|0; + $31 = HEAP32[$2>>2]|0; + $32 = (($31) + 12|0); + HEAP32[$32>>2] = $30; + $33 = HEAP32[$2>>2]|0; + $34 = HEAP32[$pSplit>>2]|0; + $35 = (($34) + 8|0); + HEAP32[$35>>2] = $33; + STACKTOP = sp;return; + } +} +function _opPrecedence($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)==(1); + do { + if ($4) { + HEAP32[$0>>2] = 1; + } else { + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)==(4); + if ($7) { + HEAP32[$0>>2] = 2; + break; + } else { + HEAP32[$0>>2] = 3; + break; + } + } + } while(0); + $8 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($8|0); +} +function _fts3isspace($c) { + $c = $c|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP8[$0>>0] = $c; + $1 = HEAP8[$0>>0]|0; + $2 = $1 << 24 >> 24; + $3 = ($2|0)==(32); + if ($3) { + $20 = 1; + } else { + $4 = HEAP8[$0>>0]|0; + $5 = $4 << 24 >> 24; + $6 = ($5|0)==(9); + if ($6) { + $20 = 1; + } else { + $7 = HEAP8[$0>>0]|0; + $8 = $7 << 24 >> 24; + $9 = ($8|0)==(10); + if ($9) { + $20 = 1; + } else { + $10 = HEAP8[$0>>0]|0; + $11 = $10 << 24 >> 24; + $12 = ($11|0)==(13); + if ($12) { + $20 = 1; + } else { + $13 = HEAP8[$0>>0]|0; + $14 = $13 << 24 >> 24; + $15 = ($14|0)==(11); + if ($15) { + $20 = 1; + } else { + $16 = HEAP8[$0>>0]|0; + $17 = $16 << 24 >> 24; + $18 = ($17|0)==(12); + $20 = $18; + } + } + } + } + } + $19 = $20&1; + STACKTOP = sp;return ($19|0); +} +function _getNextString($pParse,$zInput,$nInput,$ppExpr) { + $pParse = $pParse|0; + $zInput = $zInput|0; + $nInput = $nInput|0; + $ppExpr = $ppExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; + var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iBegin = 0; + var $iEnd = 0, $iPos = 0, $ii = 0, $jj = 0, $nByte = 0, $nSpace = 0, $nTemp = 0, $nToken = 0, $p = 0, $pCursor = 0, $pModule = 0, $pToken = 0, $pTokenizer = 0, $rc = 0, $zBuf = 0, $zByte = 0, $zTemp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 88|0; + $1 = sp + 84|0; + $2 = sp + 80|0; + $3 = sp + 76|0; + $4 = sp + 72|0; + $pTokenizer = sp + 68|0; + $pModule = sp + 64|0; + $rc = sp + 60|0; + $p = sp + 56|0; + $pCursor = sp + 52|0; + $zTemp = sp + 48|0; + $nTemp = sp + 44|0; + $nSpace = sp + 16|0; + $nToken = sp; + $ii = sp + 4|0; + $zByte = sp + 8|0; + $nByte = sp + 12|0; + $iBegin = sp + 20|0; + $iEnd = sp + 24|0; + $iPos = sp + 28|0; + $pToken = sp + 32|0; + $jj = sp + 36|0; + $zBuf = sp + 40|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $zInput; + HEAP32[$3>>2] = $nInput; + HEAP32[$4>>2] = $ppExpr; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$pTokenizer>>2] = $6; + $7 = HEAP32[$pTokenizer>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$pModule>>2] = $8; + HEAP32[$p>>2] = 0; + HEAP32[$pCursor>>2] = 0; + HEAP32[$zTemp>>2] = 0; + HEAP32[$nTemp>>2] = 0; + HEAP32[$nSpace>>2] = 120; + HEAP32[$nToken>>2] = 0; + $9 = HEAP32[$pTokenizer>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = HEAP32[$3>>2]|0; + $15 = (_sqlite3Fts3OpenTokenizer($9,$12,$13,$14,$pCursor)|0); + HEAP32[$rc>>2] = $15; + $16 = HEAP32[$rc>>2]|0; + $17 = ($16|0)==(0); + L1: do { + if ($17) { + HEAP32[$ii>>2] = 0; + while(1) { + $18 = HEAP32[$rc>>2]|0; + $19 = ($18|0)==(0); + if (!($19)) { + break; + } + HEAP32[$nByte>>2] = 0; + HEAP32[$iBegin>>2] = 0; + HEAP32[$iEnd>>2] = 0; + HEAP32[$iPos>>2] = 0; + $20 = HEAP32[$pModule>>2]|0; + $21 = (($20) + 20|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$pCursor>>2]|0; + $24 = (FUNCTION_TABLE_iiiiiii[$22 & 15]($23,$zByte,$nByte,$iBegin,$iEnd,$iPos)|0); + HEAP32[$rc>>2] = $24; + $25 = HEAP32[$rc>>2]|0; + $26 = ($25|0)==(0); + if ($26) { + $27 = HEAP32[$p>>2]|0; + $28 = HEAP32[$ii>>2]|0; + $29 = ($28*24)|0; + $30 = (120 + ($29))|0; + $31 = (_fts3ReallocOrFree($27,$30)|0); + HEAP32[$p>>2] = $31; + $32 = HEAP32[$p>>2]|0; + $33 = ($32|0)!=(0|0); + if (!($33)) { + break L1; + } + $34 = HEAP32[$zTemp>>2]|0; + $35 = HEAP32[$nTemp>>2]|0; + $36 = HEAP32[$nByte>>2]|0; + $37 = (($35) + ($36))|0; + $38 = (_fts3ReallocOrFree($34,$37)|0); + HEAP32[$zTemp>>2] = $38; + $39 = HEAP32[$zTemp>>2]|0; + $40 = ($39|0)!=(0|0); + if (!($40)) { + break L1; + } + $41 = HEAP32[$ii>>2]|0; + $42 = HEAP32[$p>>2]|0; + $43 = (($42) + 40|0); + $44 = (($43) + 56|0); + $45 = (($44) + (($41*24)|0)|0); + HEAP32[$pToken>>2] = $45; + $46 = HEAP32[$pToken>>2]|0; + ;HEAP32[$46+0>>2]=0|0;HEAP32[$46+4>>2]=0|0;HEAP32[$46+8>>2]=0|0;HEAP32[$46+12>>2]=0|0;HEAP32[$46+16>>2]=0|0;HEAP32[$46+20>>2]=0|0; + $47 = HEAP32[$nTemp>>2]|0; + $48 = HEAP32[$zTemp>>2]|0; + $49 = (($48) + ($47)|0); + $50 = HEAP32[$zByte>>2]|0; + $51 = HEAP32[$nByte>>2]|0; + _memcpy(($49|0),($50|0),($51|0))|0; + $52 = HEAP32[$nByte>>2]|0; + $53 = HEAP32[$nTemp>>2]|0; + $54 = (($53) + ($52))|0; + HEAP32[$nTemp>>2] = $54; + $55 = HEAP32[$nByte>>2]|0; + $56 = HEAP32[$pToken>>2]|0; + $57 = (($56) + 4|0); + HEAP32[$57>>2] = $55; + $58 = HEAP32[$iEnd>>2]|0; + $59 = HEAP32[$3>>2]|0; + $60 = ($58|0)<($59|0); + if ($60) { + $61 = HEAP32[$iEnd>>2]|0; + $62 = HEAP32[$2>>2]|0; + $63 = (($62) + ($61)|0); + $64 = HEAP8[$63>>0]|0; + $65 = $64 << 24 >> 24; + $66 = ($65|0)==(42); + $68 = $66; + } else { + $68 = 0; + } + $67 = $68&1; + $69 = HEAP32[$pToken>>2]|0; + $70 = (($69) + 8|0); + HEAP32[$70>>2] = $67; + $71 = HEAP32[$iBegin>>2]|0; + $72 = ($71|0)>(0); + if ($72) { + $73 = HEAP32[$iBegin>>2]|0; + $74 = (($73) - 1)|0; + $75 = HEAP32[$2>>2]|0; + $76 = (($75) + ($74)|0); + $77 = HEAP8[$76>>0]|0; + $78 = $77 << 24 >> 24; + $79 = ($78|0)==(94); + $81 = $79; + } else { + $81 = 0; + } + $80 = $81&1; + $82 = HEAP32[$pToken>>2]|0; + $83 = (($82) + 12|0); + HEAP32[$83>>2] = $80; + $84 = HEAP32[$ii>>2]|0; + $85 = (($84) + 1)|0; + HEAP32[$nToken>>2] = $85; + } + $86 = HEAP32[$ii>>2]|0; + $87 = (($86) + 1)|0; + HEAP32[$ii>>2] = $87; + } + $88 = HEAP32[$pModule>>2]|0; + $89 = (($88) + 16|0); + $90 = HEAP32[$89>>2]|0; + $91 = HEAP32[$pCursor>>2]|0; + (FUNCTION_TABLE_ii[$90 & 63]($91)|0); + HEAP32[$pCursor>>2] = 0; + label = 14; + } else { + label = 14; + } + } while(0); + do { + if ((label|0) == 14) { + $92 = HEAP32[$rc>>2]|0; + $93 = ($92|0)==(101); + if ($93) { + HEAP32[$zBuf>>2] = 0; + $94 = HEAP32[$p>>2]|0; + $95 = HEAP32[$nToken>>2]|0; + $96 = ($95*24)|0; + $97 = (120 + ($96))|0; + $98 = HEAP32[$nTemp>>2]|0; + $99 = (($97) + ($98))|0; + $100 = (_fts3ReallocOrFree($94,$99)|0); + HEAP32[$p>>2] = $100; + $101 = HEAP32[$p>>2]|0; + $102 = ($101|0)!=(0|0); + if (!($102)) { + break; + } + $103 = HEAP32[$p>>2]|0; + $104 = HEAP32[$p>>2]|0; + $105 = (($104) + 40|0); + $106 = (($105) + 56|0); + $107 = HEAP32[$p>>2]|0; + $108 = $106; + $109 = $107; + $110 = (($108) - ($109))|0; + _memset(($103|0),0,($110|0))|0; + $111 = HEAP32[$p>>2]|0; + HEAP32[$111>>2] = 5; + $112 = HEAP32[$p>>2]|0; + $113 = (($112) + 40|0); + $114 = HEAP32[$p>>2]|0; + $115 = (($114) + 20|0); + HEAP32[$115>>2] = $113; + $116 = HEAP32[$1>>2]|0; + $117 = (($116) + 20|0); + $118 = HEAP32[$117>>2]|0; + $119 = HEAP32[$p>>2]|0; + $120 = (($119) + 20|0); + $121 = HEAP32[$120>>2]|0; + $122 = (($121) + 52|0); + HEAP32[$122>>2] = $118; + $123 = HEAP32[$nToken>>2]|0; + $124 = HEAP32[$p>>2]|0; + $125 = (($124) + 20|0); + $126 = HEAP32[$125>>2]|0; + $127 = (($126) + 48|0); + HEAP32[$127>>2] = $123; + $128 = HEAP32[$nToken>>2]|0; + $129 = HEAP32[$p>>2]|0; + $130 = (($129) + 20|0); + $131 = HEAP32[$130>>2]|0; + $132 = (($131) + 56|0); + $133 = (($132) + (($128*24)|0)|0); + HEAP32[$zBuf>>2] = $133; + $134 = HEAP32[$zTemp>>2]|0; + $135 = ($134|0)!=(0|0); + if ($135) { + $136 = HEAP32[$zBuf>>2]|0; + $137 = HEAP32[$zTemp>>2]|0; + $138 = HEAP32[$nTemp>>2]|0; + _memcpy(($136|0),($137|0),($138|0))|0; + $139 = HEAP32[$zTemp>>2]|0; + _sqlite3_free($139); + } + HEAP32[$jj>>2] = 0; + while(1) { + $140 = HEAP32[$jj>>2]|0; + $141 = HEAP32[$p>>2]|0; + $142 = (($141) + 20|0); + $143 = HEAP32[$142>>2]|0; + $144 = (($143) + 48|0); + $145 = HEAP32[$144>>2]|0; + $146 = ($140|0)<($145|0); + if (!($146)) { + break; + } + $147 = HEAP32[$zBuf>>2]|0; + $148 = HEAP32[$jj>>2]|0; + $149 = HEAP32[$p>>2]|0; + $150 = (($149) + 20|0); + $151 = HEAP32[$150>>2]|0; + $152 = (($151) + 56|0); + $153 = (($152) + (($148*24)|0)|0); + HEAP32[$153>>2] = $147; + $154 = HEAP32[$jj>>2]|0; + $155 = HEAP32[$p>>2]|0; + $156 = (($155) + 20|0); + $157 = HEAP32[$156>>2]|0; + $158 = (($157) + 56|0); + $159 = (($158) + (($154*24)|0)|0); + $160 = (($159) + 4|0); + $161 = HEAP32[$160>>2]|0; + $162 = HEAP32[$zBuf>>2]|0; + $163 = (($162) + ($161)|0); + HEAP32[$zBuf>>2] = $163; + $164 = HEAP32[$jj>>2]|0; + $165 = (($164) + 1)|0; + HEAP32[$jj>>2] = $165; + } + HEAP32[$rc>>2] = 0; + } + $166 = HEAP32[$p>>2]|0; + $167 = HEAP32[$4>>2]|0; + HEAP32[$167>>2] = $166; + $168 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $168; + $178 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($178|0); + } + } while(0); + $169 = HEAP32[$pCursor>>2]|0; + $170 = ($169|0)!=(0|0); + if ($170) { + $171 = HEAP32[$pModule>>2]|0; + $172 = (($171) + 16|0); + $173 = HEAP32[$172>>2]|0; + $174 = HEAP32[$pCursor>>2]|0; + (FUNCTION_TABLE_ii[$173 & 63]($174)|0); + } + $175 = HEAP32[$zTemp>>2]|0; + _sqlite3_free($175); + $176 = HEAP32[$p>>2]|0; + _sqlite3_free($176); + $177 = HEAP32[$4>>2]|0; + HEAP32[$177>>2] = 0; + HEAP32[$0>>2] = 7; + $178 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($178|0); +} +function _getNextToken($pParse,$iCol,$z,$n,$ppExpr,$pnConsumed) { + $pParse = $pParse|0; + $iCol = $iCol|0; + $z = $z|0; + $n = $n|0; + $ppExpr = $ppExpr|0; + $pnConsumed = $pnConsumed|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; + var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iEnd = 0, $iPosition = 0, $iStart = 0, $nByte = 0, $nToken = 0, $pCursor = 0, $pModule = 0, $pRet = 0, $pTokenizer = 0, $rc = 0, $zToken = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 68|0; + $1 = sp + 64|0; + $2 = sp + 60|0; + $3 = sp + 56|0; + $4 = sp + 52|0; + $5 = sp + 48|0; + $pTokenizer = sp + 44|0; + $pModule = sp + 40|0; + $rc = sp + 36|0; + $pCursor = sp + 32|0; + $pRet = sp + 24|0; + $i = sp + 20|0; + $zToken = sp + 16|0; + $nToken = sp + 12|0; + $iStart = sp + 8|0; + $iEnd = sp + 4|0; + $iPosition = sp; + $nByte = sp + 28|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iCol; + HEAP32[$2>>2] = $z; + HEAP32[$3>>2] = $n; + HEAP32[$4>>2] = $ppExpr; + HEAP32[$5>>2] = $pnConsumed; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$pTokenizer>>2] = $7; + $8 = HEAP32[$pTokenizer>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$pModule>>2] = $9; + HEAP32[$pRet>>2] = 0; + HEAP32[$i>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$3>>2]|0; + $12 = ($10|0)<($11|0); + if (!($12)) { + break; + } + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (($14) + ($13)|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16 << 24 >> 24; + $18 = ($17|0)==(42); + if ($18) { + break; + } + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$2>>2]|0; + $21 = (($20) + ($19)|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22 << 24 >> 24; + $24 = ($23|0)==(34); + if ($24) { + break; + } + $25 = HEAP32[$i>>2]|0; + $26 = (($25) + 1)|0; + HEAP32[$i>>2] = $26; + } + $27 = HEAP32[$i>>2]|0; + $28 = HEAP32[$5>>2]|0; + HEAP32[$28>>2] = $27; + $29 = HEAP32[$pTokenizer>>2]|0; + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 4|0); + $32 = HEAP32[$31>>2]|0; + $33 = HEAP32[$2>>2]|0; + $34 = HEAP32[$i>>2]|0; + $35 = (_sqlite3Fts3OpenTokenizer($29,$32,$33,$34,$pCursor)|0); + HEAP32[$rc>>2] = $35; + $36 = HEAP32[$rc>>2]|0; + $37 = ($36|0)==(0); + if (!($37)) { + $145 = HEAP32[$pRet>>2]|0; + $146 = HEAP32[$4>>2]|0; + HEAP32[$146>>2] = $145; + $147 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($147|0); + } + HEAP32[$nToken>>2] = 0; + HEAP32[$iStart>>2] = 0; + HEAP32[$iEnd>>2] = 0; + HEAP32[$iPosition>>2] = 0; + $38 = HEAP32[$pModule>>2]|0; + $39 = (($38) + 20|0); + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$pCursor>>2]|0; + $42 = (FUNCTION_TABLE_iiiiiii[$40 & 15]($41,$zToken,$nToken,$iStart,$iEnd,$iPosition)|0); + HEAP32[$rc>>2] = $42; + $43 = HEAP32[$rc>>2]|0; + $44 = ($43|0)==(0); + if ($44) { + $45 = HEAP32[$nToken>>2]|0; + $46 = (120 + ($45))|0; + HEAP32[$nByte>>2] = $46; + $47 = HEAP32[$nByte>>2]|0; + $48 = (_fts3MallocZero($47)|0); + HEAP32[$pRet>>2] = $48; + $49 = HEAP32[$pRet>>2]|0; + $50 = ($49|0)!=(0|0); + L15: do { + if ($50) { + $51 = HEAP32[$pRet>>2]|0; + HEAP32[$51>>2] = 5; + $52 = HEAP32[$pRet>>2]|0; + $53 = (($52) + 40|0); + $54 = HEAP32[$pRet>>2]|0; + $55 = (($54) + 20|0); + HEAP32[$55>>2] = $53; + $56 = HEAP32[$pRet>>2]|0; + $57 = (($56) + 20|0); + $58 = HEAP32[$57>>2]|0; + $59 = (($58) + 48|0); + HEAP32[$59>>2] = 1; + $60 = HEAP32[$1>>2]|0; + $61 = HEAP32[$pRet>>2]|0; + $62 = (($61) + 20|0); + $63 = HEAP32[$62>>2]|0; + $64 = (($63) + 52|0); + HEAP32[$64>>2] = $60; + $65 = HEAP32[$nToken>>2]|0; + $66 = HEAP32[$pRet>>2]|0; + $67 = (($66) + 20|0); + $68 = HEAP32[$67>>2]|0; + $69 = (($68) + 56|0); + $70 = (($69) + 4|0); + HEAP32[$70>>2] = $65; + $71 = HEAP32[$pRet>>2]|0; + $72 = (($71) + 20|0); + $73 = HEAP32[$72>>2]|0; + $74 = (($73) + 80|0); + $75 = HEAP32[$pRet>>2]|0; + $76 = (($75) + 20|0); + $77 = HEAP32[$76>>2]|0; + $78 = (($77) + 56|0); + HEAP32[$78>>2] = $74; + $79 = HEAP32[$pRet>>2]|0; + $80 = (($79) + 20|0); + $81 = HEAP32[$80>>2]|0; + $82 = (($81) + 56|0); + $83 = HEAP32[$82>>2]|0; + $84 = HEAP32[$zToken>>2]|0; + $85 = HEAP32[$nToken>>2]|0; + _memcpy(($83|0),($84|0),($85|0))|0; + $86 = HEAP32[$iEnd>>2]|0; + $87 = HEAP32[$3>>2]|0; + $88 = ($86|0)<($87|0); + if ($88) { + $89 = HEAP32[$iEnd>>2]|0; + $90 = HEAP32[$2>>2]|0; + $91 = (($90) + ($89)|0); + $92 = HEAP8[$91>>0]|0; + $93 = $92 << 24 >> 24; + $94 = ($93|0)==(42); + if ($94) { + $95 = HEAP32[$pRet>>2]|0; + $96 = (($95) + 20|0); + $97 = HEAP32[$96>>2]|0; + $98 = (($97) + 56|0); + $99 = (($98) + 8|0); + HEAP32[$99>>2] = 1; + $100 = HEAP32[$iEnd>>2]|0; + $101 = (($100) + 1)|0; + HEAP32[$iEnd>>2] = $101; + } + } + while(1) { + $102 = HEAP32[$iStart>>2]|0; + $103 = ($102|0)>(0); + if ($103) { + $104 = HEAP32[$iStart>>2]|0; + $105 = (($104) - 1)|0; + $106 = HEAP32[$2>>2]|0; + $107 = (($106) + ($105)|0); + $108 = HEAP8[$107>>0]|0; + $109 = $108 << 24 >> 24; + $110 = ($109|0)==(45); + if ($110) { + $111 = HEAP32[$0>>2]|0; + $112 = (($111) + 24|0); + HEAP32[$112>>2] = 1; + $113 = HEAP32[$iStart>>2]|0; + $114 = (($113) + -1)|0; + HEAP32[$iStart>>2] = $114; + continue; + } + } + $115 = HEAP32[$0>>2]|0; + $116 = (($115) + 12|0); + $117 = HEAP32[$116>>2]|0; + $118 = ($117|0)!=(0); + if (!($118)) { + break L15; + } + $119 = HEAP32[$iStart>>2]|0; + $120 = ($119|0)>(0); + if (!($120)) { + break L15; + } + $121 = HEAP32[$iStart>>2]|0; + $122 = (($121) - 1)|0; + $123 = HEAP32[$2>>2]|0; + $124 = (($123) + ($122)|0); + $125 = HEAP8[$124>>0]|0; + $126 = $125 << 24 >> 24; + $127 = ($126|0)==(94); + if (!($127)) { + break L15; + } + $128 = HEAP32[$pRet>>2]|0; + $129 = (($128) + 20|0); + $130 = HEAP32[$129>>2]|0; + $131 = (($130) + 56|0); + $132 = (($131) + 12|0); + HEAP32[$132>>2] = 1; + $133 = HEAP32[$iStart>>2]|0; + $134 = (($133) + -1)|0; + HEAP32[$iStart>>2] = $134; + } + } else { + HEAP32[$rc>>2] = 7; + } + } while(0); + $135 = HEAP32[$iEnd>>2]|0; + $136 = HEAP32[$5>>2]|0; + HEAP32[$136>>2] = $135; + } else { + $137 = HEAP32[$i>>2]|0; + $138 = ($137|0)!=(0); + if ($138) { + $139 = HEAP32[$rc>>2]|0; + $140 = ($139|0)==(101); + if ($140) { + HEAP32[$rc>>2] = 0; + } + } + } + $141 = HEAP32[$pModule>>2]|0; + $142 = (($141) + 16|0); + $143 = HEAP32[$142>>2]|0; + $144 = HEAP32[$pCursor>>2]|0; + (FUNCTION_TABLE_ii[$143 & 63]($144)|0); + $145 = HEAP32[$pRet>>2]|0; + $146 = HEAP32[$4>>2]|0; + HEAP32[$146>>2] = $145; + $147 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($147|0); +} +function _fts3ReallocOrFree($pOrig,$nNew) { + $pOrig = $pOrig|0; + $nNew = $nNew|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $pRet = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pRet = sp + 4|0; + HEAP32[$0>>2] = $pOrig; + HEAP32[$1>>2] = $nNew; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3_realloc($2,$3)|0); + HEAP32[$pRet>>2] = $4; + $5 = HEAP32[$pRet>>2]|0; + $6 = ($5|0)!=(0|0); + if ($6) { + $8 = HEAP32[$pRet>>2]|0; + STACKTOP = sp;return ($8|0); + } + $7 = HEAP32[$0>>2]|0; + _sqlite3_free($7); + $8 = HEAP32[$pRet>>2]|0; + STACKTOP = sp;return ($8|0); +} +function _fts3FreeExprNode($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 20|0); + $3 = HEAP32[$2>>2]|0; + _sqlite3Fts3EvalPhraseCleanup($3); + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 36|0); + $6 = HEAP32[$5>>2]|0; + _sqlite3_free($6); + $7 = HEAP32[$0>>2]|0; + _sqlite3_free($7); + STACKTOP = sp;return; +} +function _sqlite3Fts3EvalPhraseCleanup($pPhrase) { + $pPhrase = $pPhrase|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $i = sp; + HEAP32[$0>>2] = $pPhrase; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + _sqlite3_free($4); + $5 = HEAP32[$0>>2]|0; + _fts3EvalInvalidatePoslist($5); + $6 = HEAP32[$0>>2]|0; + dest=$6+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + HEAP32[$i>>2] = 0; + while(1) { + $7 = HEAP32[$i>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 48|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($7|0)<($10|0); + if (!($11)) { + break; + } + $12 = HEAP32[$i>>2]|0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 56|0); + $15 = (($14) + (($12*24)|0)|0); + $16 = (($15) + 20|0); + $17 = HEAP32[$16>>2]|0; + _fts3SegReaderCursorFree($17); + $18 = HEAP32[$i>>2]|0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 56|0); + $21 = (($20) + (($18*24)|0)|0); + $22 = (($21) + 20|0); + HEAP32[$22>>2] = 0; + $23 = HEAP32[$i>>2]|0; + $24 = (($23) + 1)|0; + HEAP32[$i>>2] = $24; + } + STACKTOP = sp;return; +} +function _sqlite3Fts3FreeDeferredTokens($pCsr) { + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDef = 0, $pNext = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $pDef = sp; + $pNext = sp + 4|0; + HEAP32[$0>>2] = $pCsr; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 24|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pDef>>2] = $3; + while(1) { + $4 = HEAP32[$pDef>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + break; + } + $6 = HEAP32[$pDef>>2]|0; + $7 = (($6) + 8|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pNext>>2] = $8; + $9 = HEAP32[$pDef>>2]|0; + $10 = (($9) + 12|0); + $11 = HEAP32[$10>>2]|0; + _fts3PendingListDelete($11); + $12 = HEAP32[$pDef>>2]|0; + _sqlite3_free($12); + $13 = HEAP32[$pNext>>2]|0; + HEAP32[$pDef>>2] = $13; + } + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 24|0); + HEAP32[$15>>2] = 0; + STACKTOP = sp;return; +} +function _fts3SetEstimatedRows($pIdxInfo,$0,$1) { + $pIdxInfo = $pIdxInfo|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp + 8|0; + $3 = sp; + HEAP32[$2>>2] = $pIdxInfo; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = (_sqlite3_libversion_number()|0); + $9 = ($8|0)>=(3008002); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = $3; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (($10) + 4)|0; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$2>>2]|0; + $17 = (($16) + 48|0); + $18 = $17; + $19 = $18; + HEAP32[$19>>2] = $12; + $20 = (($18) + 4)|0; + $21 = $20; + HEAP32[$21>>2] = $15; + STACKTOP = sp;return; +} +function _fts3InitVtab($isCreate,$db,$pAux,$argc,$argv,$ppVTab,$pzErr) { + $isCreate = $isCreate|0; + $db = $db|0; + $pAux = $pAux|0; + $argc = $argc|0; + $argv = $argv|0; + $ppVTab = $ppVTab|0; + $pzErr = $pzErr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aCol = 0, $aFts4Opt = 0, $aIndex = 0, $azNotindexed = 0, $bDescIdx = 0, $bNoDocsize = 0, $i = 0, $iCol = 0, $iOpt = 0, $isFts4 = 0, $j = 0, $k = 0, $n = 0, $n2 = 0, $nByte = 0; + var $nCol = 0, $nDb = 0, $nIndex = 0, $nKey = 0, $nName = 0, $nNotindexed = 0, $nString = 0, $p = 0, $pHash = 0, $pOp = 0, $pTokenizer = 0, $rc = 0, $vararg_buffer13 = 0, $z = 0, $z1 = 0, $zCompress = 0, $zContent = 0, $zCsr = 0, $zLanguageid = 0, $zMiss = 0; + var $zNot = 0, $zPrefix = 0, $zUncompress = 0, $zVal = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 256|0; + $vararg_buffer13 = sp; + $0 = sp + 236|0; + $1 = sp + 232|0; + $2 = sp + 228|0; + $3 = sp + 224|0; + $4 = sp + 220|0; + $5 = sp + 216|0; + $6 = sp + 212|0; + $pHash = sp + 208|0; + $p = sp + 204|0; + $rc = sp + 200|0; + $i = sp + 196|0; + $nByte = sp + 192|0; + $iCol = sp + 188|0; + $nString = sp + 184|0; + $nCol = sp + 180|0; + $zCsr = sp + 176|0; + $nDb = sp + 172|0; + $nName = sp + 168|0; + $isFts4 = sp + 164|0; + $aCol = sp + 160|0; + $pTokenizer = sp + 156|0; + $nIndex = sp + 152|0; + $aIndex = sp + 240|0; + $bNoDocsize = sp + 40|0; + $bDescIdx = sp + 32|0; + $zPrefix = sp + 28|0; + $zCompress = sp + 24|0; + $zUncompress = sp + 20|0; + $zContent = sp + 36|0; + $zLanguageid = sp + 8|0; + $azNotindexed = sp + 4|0; + $nNotindexed = sp + 12|0; + $z = sp + 16|0; + $nKey = sp + 144|0; + $zVal = sp + 44|0; + $aFts4Opt = sp + 48|0; + $iOpt = sp + 112|0; + $pOp = sp + 116|0; + $j = sp + 120|0; + $k = sp + 124|0; + $z1 = sp + 128|0; + $n = sp + 132|0; + $n2 = sp + 136|0; + $zNot = sp + 140|0; + $zMiss = sp + 148|0; + HEAP32[$0>>2] = $isCreate; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pAux; + HEAP32[$3>>2] = $argc; + HEAP32[$4>>2] = $argv; + HEAP32[$5>>2] = $ppVTab; + HEAP32[$6>>2] = $pzErr; + $7 = HEAP32[$2>>2]|0; + HEAP32[$pHash>>2] = $7; + HEAP32[$p>>2] = 0; + HEAP32[$rc>>2] = 0; + HEAP32[$nString>>2] = 0; + HEAP32[$nCol>>2] = 0; + $8 = HEAP32[$4>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 3|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11 << 24 >> 24; + $13 = ($12|0)==(52); + $14 = $13&1; + HEAP32[$isFts4>>2] = $14; + HEAP32[$pTokenizer>>2] = 0; + HEAP32[$aIndex>>2] = 0; + HEAP32[$bNoDocsize>>2] = 0; + HEAP32[$bDescIdx>>2] = 0; + HEAP32[$zPrefix>>2] = 0; + HEAP32[$zCompress>>2] = 0; + HEAP32[$zUncompress>>2] = 0; + HEAP32[$zContent>>2] = 0; + HEAP32[$zLanguageid>>2] = 0; + HEAP32[$azNotindexed>>2] = 0; + HEAP32[$nNotindexed>>2] = 0; + $15 = HEAP32[$4>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = (_strlen(($17|0))|0); + $19 = (($18) + 1)|0; + HEAP32[$nDb>>2] = $19; + $20 = HEAP32[$4>>2]|0; + $21 = (($20) + 8|0); + $22 = HEAP32[$21>>2]|0; + $23 = (_strlen(($22|0))|0); + $24 = (($23) + 1)|0; + HEAP32[$nName>>2] = $24; + $25 = HEAP32[$3>>2]|0; + $26 = (($25) - 2)|0; + $27 = $26<<2; + HEAP32[$nByte>>2] = $27; + $28 = HEAP32[$nByte>>2]|0; + $29 = (_sqlite3_malloc($28)|0); + HEAP32[$aCol>>2] = $29; + $30 = HEAP32[$aCol>>2]|0; + $31 = ($30|0)!=(0|0); + if ($31) { + $32 = HEAP32[$aCol>>2]|0; + $33 = HEAP32[$nByte>>2]|0; + _memset(($32|0),0,($33|0))|0; + $34 = HEAP32[$nByte>>2]|0; + $35 = (_sqlite3_malloc($34)|0); + HEAP32[$azNotindexed>>2] = $35; + } + $36 = HEAP32[$azNotindexed>>2]|0; + $37 = ($36|0)!=(0|0); + if ($37) { + $38 = HEAP32[$azNotindexed>>2]|0; + $39 = HEAP32[$nByte>>2]|0; + _memset(($38|0),0,($39|0))|0; + } + $40 = HEAP32[$aCol>>2]|0; + $41 = ($40|0)!=(0|0); + do { + if ($41) { + $42 = HEAP32[$azNotindexed>>2]|0; + $43 = ($42|0)!=(0|0); + if ($43) { + HEAP32[$i>>2] = 3; + while(1) { + $44 = HEAP32[$rc>>2]|0; + $45 = ($44|0)==(0); + if (!($45)) { + break; + } + $46 = HEAP32[$i>>2]|0; + $47 = HEAP32[$3>>2]|0; + $48 = ($46|0)<($47|0); + if (!($48)) { + break; + } + $49 = HEAP32[$i>>2]|0; + $50 = HEAP32[$4>>2]|0; + $51 = (($50) + ($49<<2)|0); + $52 = HEAP32[$51>>2]|0; + HEAP32[$z>>2] = $52; + $53 = HEAP32[$pTokenizer>>2]|0; + $54 = ($53|0)!=(0|0); + if ($54) { + label = 16; + } else { + $55 = HEAP32[$z>>2]|0; + $56 = (_strlen(($55|0))|0); + $57 = ($56>>>0)>(8); + if ($57) { + $58 = HEAP32[$z>>2]|0; + $59 = (_sqlite3_strnicmp($58,7872,8)|0); + $60 = (0)==($59|0); + if ($60) { + $61 = HEAP32[$z>>2]|0; + $62 = (($61) + 8|0); + $63 = HEAP8[$62>>0]|0; + $64 = (_sqlite3Fts3IsIdChar($63)|0); + $65 = (0)==($64|0); + if ($65) { + $66 = HEAP32[$pHash>>2]|0; + $67 = HEAP32[$z>>2]|0; + $68 = (($67) + 9|0); + $69 = HEAP32[$6>>2]|0; + $70 = (_sqlite3Fts3InitTokenizer($66,$68,$pTokenizer,$69)|0); + HEAP32[$rc>>2] = $70; + } else { + label = 16; + } + } else { + label = 16; + } + } else { + label = 16; + } + } + do { + if ((label|0) == 16) { + label = 0; + $71 = HEAP32[$isFts4>>2]|0; + $72 = ($71|0)!=(0); + if ($72) { + $73 = HEAP32[$z>>2]|0; + $74 = (_fts3IsSpecialColumn($73,$nKey,$zVal)|0); + $75 = ($74|0)!=(0); + if ($75) { + dest=$aFts4Opt+0|0; src=7976+0|0; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $76 = HEAP32[$zVal>>2]|0; + $77 = ($76|0)!=(0|0); + if (!($77)) { + HEAP32[$rc>>2] = 7; + break; + } + HEAP32[$iOpt>>2] = 0; + while(1) { + $78 = HEAP32[$iOpt>>2]|0; + $79 = ($78|0)<(8); + if (!($79)) { + break; + } + $80 = HEAP32[$iOpt>>2]|0; + $81 = (($aFts4Opt) + ($80<<3)|0); + HEAP32[$pOp>>2] = $81; + $82 = HEAP32[$nKey>>2]|0; + $83 = HEAP32[$pOp>>2]|0; + $84 = (($83) + 4|0); + $85 = HEAP32[$84>>2]|0; + $86 = ($82|0)==($85|0); + if ($86) { + $87 = HEAP32[$z>>2]|0; + $88 = HEAP32[$pOp>>2]|0; + $89 = HEAP32[$88>>2]|0; + $90 = HEAP32[$pOp>>2]|0; + $91 = (($90) + 4|0); + $92 = HEAP32[$91>>2]|0; + $93 = (_sqlite3_strnicmp($87,$89,$92)|0); + $94 = ($93|0)!=(0); + if (!($94)) { + break; + } + } + $95 = HEAP32[$iOpt>>2]|0; + $96 = (($95) + 1)|0; + HEAP32[$iOpt>>2] = $96; + } + $97 = HEAP32[$iOpt>>2]|0; + $98 = ($97|0)==(8); + L34: do { + if ($98) { + $99 = HEAP32[$z>>2]|0; + HEAP32[$vararg_buffer13>>2] = $99; + $100 = (_sqlite3_mprintf(8040,$vararg_buffer13)|0); + $101 = HEAP32[$6>>2]|0; + HEAP32[$101>>2] = $100; + HEAP32[$rc>>2] = 1; + } else { + $102 = HEAP32[$iOpt>>2]|0; + switch ($102|0) { + case 3: { + $116 = HEAP32[$zUncompress>>2]|0; + _sqlite3_free($116); + $117 = HEAP32[$zVal>>2]|0; + HEAP32[$zUncompress>>2] = $117; + HEAP32[$zVal>>2] = 0; + break L34; + break; + } + case 1: { + $112 = HEAP32[$zPrefix>>2]|0; + _sqlite3_free($112); + $113 = HEAP32[$zVal>>2]|0; + HEAP32[$zPrefix>>2] = $113; + HEAP32[$zVal>>2] = 0; + break L34; + break; + } + case 4: { + $118 = HEAP32[$zVal>>2]|0; + $119 = (_strlen(($118|0))|0); + $120 = ($119|0)!=(3); + if ($120) { + label = 37; + } else { + $121 = HEAP32[$zVal>>2]|0; + $122 = (_sqlite3_strnicmp($121,8104,3)|0); + $123 = ($122|0)!=(0); + if ($123) { + label = 37; + } + } + do { + if ((label|0) == 37) { + label = 0; + $124 = HEAP32[$zVal>>2]|0; + $125 = (_strlen(($124|0))|0); + $126 = ($125|0)!=(4); + if (!($126)) { + $127 = HEAP32[$zVal>>2]|0; + $128 = (_sqlite3_strnicmp($127,8112,4)|0); + $129 = ($128|0)!=(0); + if (!($129)) { + break; + } + } + $130 = HEAP32[$zVal>>2]|0; + HEAP32[$vararg_buffer13>>2] = $130; + $131 = (_sqlite3_mprintf(8120,$vararg_buffer13)|0); + $132 = HEAP32[$6>>2]|0; + HEAP32[$132>>2] = $131; + HEAP32[$rc>>2] = 1; + } + } while(0); + $133 = HEAP32[$zVal>>2]|0; + $134 = HEAP8[$133>>0]|0; + $135 = $134 << 24 >> 24; + $136 = ($135|0)==(100); + if ($136) { + $142 = 1; + } else { + $137 = HEAP32[$zVal>>2]|0; + $138 = HEAP8[$137>>0]|0; + $139 = $138 << 24 >> 24; + $140 = ($139|0)==(68); + $142 = $140; + } + $141 = $142&1; + HEAP32[$bDescIdx>>2] = $141; + break L34; + break; + } + case 2: { + $114 = HEAP32[$zCompress>>2]|0; + _sqlite3_free($114); + $115 = HEAP32[$zVal>>2]|0; + HEAP32[$zCompress>>2] = $115; + HEAP32[$zVal>>2] = 0; + break L34; + break; + } + case 5: { + $143 = HEAP32[$zContent>>2]|0; + _sqlite3_free($143); + $144 = HEAP32[$zVal>>2]|0; + HEAP32[$zContent>>2] = $144; + HEAP32[$zVal>>2] = 0; + break L34; + break; + } + case 0: { + $103 = HEAP32[$zVal>>2]|0; + $104 = (_strlen(($103|0))|0); + $105 = ($104|0)!=(4); + if ($105) { + label = 30; + } else { + $106 = HEAP32[$zVal>>2]|0; + $107 = (_sqlite3_strnicmp($106,3752,4)|0); + $108 = ($107|0)!=(0); + if ($108) { + label = 30; + } + } + if ((label|0) == 30) { + label = 0; + $109 = HEAP32[$zVal>>2]|0; + HEAP32[$vararg_buffer13>>2] = $109; + $110 = (_sqlite3_mprintf(8072,$vararg_buffer13)|0); + $111 = HEAP32[$6>>2]|0; + HEAP32[$111>>2] = $110; + HEAP32[$rc>>2] = 1; + } + HEAP32[$bNoDocsize>>2] = 1; + break L34; + break; + } + case 6: { + $145 = HEAP32[$zLanguageid>>2]|0; + _sqlite3_free($145); + $146 = HEAP32[$zVal>>2]|0; + HEAP32[$zLanguageid>>2] = $146; + HEAP32[$zVal>>2] = 0; + break L34; + break; + } + case 7: { + $147 = HEAP32[$zVal>>2]|0; + $148 = HEAP32[$nNotindexed>>2]|0; + $149 = (($148) + 1)|0; + HEAP32[$nNotindexed>>2] = $149; + $150 = HEAP32[$azNotindexed>>2]|0; + $151 = (($150) + ($148<<2)|0); + HEAP32[$151>>2] = $147; + HEAP32[$zVal>>2] = 0; + break L34; + break; + } + default: { + break L34; + } + } + } + } while(0); + $152 = HEAP32[$zVal>>2]|0; + _sqlite3_free($152); + break; + } + } + $153 = HEAP32[$z>>2]|0; + $154 = (_strlen(($153|0))|0); + $155 = (($154) + 1)|0; + $156 = HEAP32[$nString>>2]|0; + $157 = (($156) + ($155))|0; + HEAP32[$nString>>2] = $157; + $158 = HEAP32[$z>>2]|0; + $159 = HEAP32[$nCol>>2]|0; + $160 = (($159) + 1)|0; + HEAP32[$nCol>>2] = $160; + $161 = HEAP32[$aCol>>2]|0; + $162 = (($161) + ($159<<2)|0); + HEAP32[$162>>2] = $158; + } + } while(0); + $163 = HEAP32[$i>>2]|0; + $164 = (($163) + 1)|0; + HEAP32[$i>>2] = $164; + } + $165 = HEAP32[$rc>>2]|0; + $166 = ($165|0)==(0); + L66: do { + if ($166) { + $167 = HEAP32[$zContent>>2]|0; + $168 = ($167|0)!=(0|0); + if ($168) { + $169 = HEAP32[$zCompress>>2]|0; + _sqlite3_free($169); + $170 = HEAP32[$zUncompress>>2]|0; + _sqlite3_free($170); + HEAP32[$zCompress>>2] = 0; + HEAP32[$zUncompress>>2] = 0; + $171 = HEAP32[$nCol>>2]|0; + $172 = ($171|0)==(0); + if ($172) { + $173 = HEAP32[$aCol>>2]|0; + _sqlite3_free($173); + HEAP32[$aCol>>2] = 0; + $174 = HEAP32[$1>>2]|0; + $175 = HEAP32[$4>>2]|0; + $176 = (($175) + 4|0); + $177 = HEAP32[$176>>2]|0; + $178 = HEAP32[$zContent>>2]|0; + $179 = (_fts3ContentColumns($174,$177,$178,$aCol,$nCol,$nString)|0); + HEAP32[$rc>>2] = $179; + $180 = HEAP32[$rc>>2]|0; + $181 = ($180|0)==(0); + if ($181) { + $182 = HEAP32[$zLanguageid>>2]|0; + $183 = ($182|0)!=(0|0); + if ($183) { + HEAP32[$j>>2] = 0; + while(1) { + $184 = HEAP32[$j>>2]|0; + $185 = HEAP32[$nCol>>2]|0; + $186 = ($184|0)<($185|0); + if (!($186)) { + break L66; + } + $187 = HEAP32[$zLanguageid>>2]|0; + $188 = HEAP32[$j>>2]|0; + $189 = HEAP32[$aCol>>2]|0; + $190 = (($189) + ($188<<2)|0); + $191 = HEAP32[$190>>2]|0; + $192 = (_sqlite3_stricmp($187,$191)|0); + $193 = ($192|0)==(0); + $194 = HEAP32[$j>>2]|0; + if ($193) { + break; + } + $210 = (($194) + 1)|0; + HEAP32[$j>>2] = $210; + } + HEAP32[$k>>2] = $194; + while(1) { + $195 = HEAP32[$k>>2]|0; + $196 = HEAP32[$nCol>>2]|0; + $197 = ($195|0)<($196|0); + if (!($197)) { + break; + } + $198 = HEAP32[$k>>2]|0; + $199 = (($198) + 1)|0; + $200 = HEAP32[$aCol>>2]|0; + $201 = (($200) + ($199<<2)|0); + $202 = HEAP32[$201>>2]|0; + $203 = HEAP32[$k>>2]|0; + $204 = HEAP32[$aCol>>2]|0; + $205 = (($204) + ($203<<2)|0); + HEAP32[$205>>2] = $202; + $206 = HEAP32[$k>>2]|0; + $207 = (($206) + 1)|0; + HEAP32[$k>>2] = $207; + } + $208 = HEAP32[$nCol>>2]|0; + $209 = (($208) + -1)|0; + HEAP32[$nCol>>2] = $209; + } + } + } + } + } + } while(0); + $211 = HEAP32[$rc>>2]|0; + $212 = ($211|0)!=(0); + if (!($212)) { + $213 = HEAP32[$nCol>>2]|0; + $214 = ($213|0)==(0); + if ($214) { + $215 = HEAP32[$aCol>>2]|0; + HEAP32[$215>>2] = 7936; + HEAP32[$nString>>2] = 8; + HEAP32[$nCol>>2] = 1; + } + $216 = HEAP32[$pTokenizer>>2]|0; + $217 = ($216|0)==(0|0); + if ($217) { + $218 = HEAP32[$pHash>>2]|0; + $219 = HEAP32[$6>>2]|0; + $220 = (_sqlite3Fts3InitTokenizer($218,3672,$pTokenizer,$219)|0); + HEAP32[$rc>>2] = $220; + $221 = HEAP32[$rc>>2]|0; + $222 = ($221|0)!=(0); + if ($222) { + break; + } + } + $223 = HEAP32[$zPrefix>>2]|0; + $224 = (_fts3PrefixParameter($223,$nIndex,$aIndex)|0); + HEAP32[$rc>>2] = $224; + $225 = HEAP32[$rc>>2]|0; + $226 = ($225|0)==(1); + if ($226) { + $227 = HEAP32[$zPrefix>>2]|0; + HEAP32[$vararg_buffer13>>2] = $227; + $228 = (_sqlite3_mprintf(8144,$vararg_buffer13)|0); + $229 = HEAP32[$6>>2]|0; + HEAP32[$229>>2] = $228; + } + $230 = HEAP32[$rc>>2]|0; + $231 = ($230|0)!=(0); + if (!($231)) { + $232 = HEAP32[$nCol>>2]|0; + $233 = $232<<2; + $234 = (280 + ($233))|0; + $235 = HEAP32[$nIndex>>2]|0; + $236 = ($235*24)|0; + $237 = (($234) + ($236))|0; + $238 = HEAP32[$nCol>>2]|0; + $239 = $238; + $240 = (($237) + ($239))|0; + $241 = HEAP32[$nName>>2]|0; + $242 = (($240) + ($241))|0; + $243 = HEAP32[$nDb>>2]|0; + $244 = (($242) + ($243))|0; + $245 = HEAP32[$nString>>2]|0; + $246 = (($244) + ($245))|0; + HEAP32[$nByte>>2] = $246; + $247 = HEAP32[$nByte>>2]|0; + $248 = (_sqlite3_malloc($247)|0); + HEAP32[$p>>2] = $248; + $249 = HEAP32[$p>>2]|0; + $250 = ($249|0)==(0|0); + if ($250) { + HEAP32[$rc>>2] = 7; + break; + } + $251 = HEAP32[$p>>2]|0; + $252 = HEAP32[$nByte>>2]|0; + _memset(($251|0),0,($252|0))|0; + $253 = HEAP32[$1>>2]|0; + $254 = HEAP32[$p>>2]|0; + $255 = (($254) + 12|0); + HEAP32[$255>>2] = $253; + $256 = HEAP32[$nCol>>2]|0; + $257 = HEAP32[$p>>2]|0; + $258 = (($257) + 24|0); + HEAP32[$258>>2] = $256; + $259 = HEAP32[$p>>2]|0; + $260 = (($259) + 260|0); + HEAP32[$260>>2] = 0; + $261 = HEAP32[$p>>2]|0; + $262 = (($261) + 280|0); + $263 = HEAP32[$p>>2]|0; + $264 = (($263) + 28|0); + HEAP32[$264>>2] = $262; + $265 = HEAP32[$pTokenizer>>2]|0; + $266 = HEAP32[$p>>2]|0; + $267 = (($266) + 36|0); + HEAP32[$267>>2] = $265; + $268 = HEAP32[$p>>2]|0; + $269 = (($268) + 256|0); + HEAP32[$269>>2] = 1048576; + $270 = HEAP32[$isFts4>>2]|0; + $271 = ($270|0)!=(0); + if ($271) { + $272 = HEAP32[$bNoDocsize>>2]|0; + $273 = ($272|0)==(0); + $275 = $273; + } else { + $275 = 0; + } + $274 = $275&1; + $276 = $274&255; + $277 = HEAP32[$p>>2]|0; + $278 = (($277) + 230|0); + HEAP8[$278>>0] = $276; + $279 = HEAP32[$isFts4>>2]|0; + $280 = $279&255; + $281 = HEAP32[$p>>2]|0; + $282 = (($281) + 229|0); + HEAP8[$282>>0] = $280; + $283 = HEAP32[$isFts4>>2]|0; + $284 = $283&255; + $285 = HEAP32[$p>>2]|0; + $286 = (($285) + 228|0); + HEAP8[$286>>0] = $284; + $287 = HEAP32[$bDescIdx>>2]|0; + $288 = $287&255; + $289 = HEAP32[$p>>2]|0; + $290 = (($289) + 231|0); + HEAP8[$290>>0] = $288; + $291 = HEAP32[$p>>2]|0; + $292 = (($291) + 48|0); + HEAP32[$292>>2] = 255; + $293 = HEAP32[$zContent>>2]|0; + $294 = HEAP32[$p>>2]|0; + $295 = (($294) + 40|0); + HEAP32[$295>>2] = $293; + $296 = HEAP32[$zLanguageid>>2]|0; + $297 = HEAP32[$p>>2]|0; + $298 = (($297) + 44|0); + HEAP32[$298>>2] = $296; + HEAP32[$zContent>>2] = 0; + HEAP32[$zLanguageid>>2] = 0; + $299 = HEAP32[$nCol>>2]|0; + $300 = HEAP32[$p>>2]|0; + $301 = (($300) + 28|0); + $302 = HEAP32[$301>>2]|0; + $303 = (($302) + ($299<<2)|0); + $304 = HEAP32[$p>>2]|0; + $305 = (($304) + 252|0); + HEAP32[$305>>2] = $303; + $306 = HEAP32[$p>>2]|0; + $307 = (($306) + 252|0); + $308 = HEAP32[$307>>2]|0; + $309 = HEAP32[$aIndex>>2]|0; + $310 = HEAP32[$nIndex>>2]|0; + $311 = ($310*24)|0; + _memcpy(($308|0),($309|0),($311|0))|0; + $312 = HEAP32[$nIndex>>2]|0; + $313 = HEAP32[$p>>2]|0; + $314 = (($313) + 248|0); + HEAP32[$314>>2] = $312; + HEAP32[$i>>2] = 0; + while(1) { + $315 = HEAP32[$i>>2]|0; + $316 = HEAP32[$nIndex>>2]|0; + $317 = ($315|0)<($316|0); + if (!($317)) { + break; + } + $318 = HEAP32[$i>>2]|0; + $319 = HEAP32[$p>>2]|0; + $320 = (($319) + 252|0); + $321 = HEAP32[$320>>2]|0; + $322 = (($321) + (($318*24)|0)|0); + $323 = (($322) + 4|0); + _sqlite3Fts3HashInit($323,1,1); + $324 = HEAP32[$i>>2]|0; + $325 = (($324) + 1)|0; + HEAP32[$i>>2] = $325; + } + $326 = HEAP32[$nIndex>>2]|0; + $327 = HEAP32[$p>>2]|0; + $328 = (($327) + 252|0); + $329 = HEAP32[$328>>2]|0; + $330 = (($329) + (($326*24)|0)|0); + $331 = HEAP32[$p>>2]|0; + $332 = (($331) + 32|0); + HEAP32[$332>>2] = $330; + $333 = HEAP32[$nCol>>2]|0; + $334 = HEAP32[$p>>2]|0; + $335 = (($334) + 32|0); + $336 = HEAP32[$335>>2]|0; + $337 = (($336) + ($333)|0); + HEAP32[$zCsr>>2] = $337; + $338 = HEAP32[$zCsr>>2]|0; + $339 = HEAP32[$p>>2]|0; + $340 = (($339) + 20|0); + HEAP32[$340>>2] = $338; + $341 = HEAP32[$zCsr>>2]|0; + $342 = HEAP32[$4>>2]|0; + $343 = (($342) + 8|0); + $344 = HEAP32[$343>>2]|0; + $345 = HEAP32[$nName>>2]|0; + _memcpy(($341|0),($344|0),($345|0))|0; + $346 = HEAP32[$nName>>2]|0; + $347 = HEAP32[$zCsr>>2]|0; + $348 = (($347) + ($346)|0); + HEAP32[$zCsr>>2] = $348; + $349 = HEAP32[$zCsr>>2]|0; + $350 = HEAP32[$p>>2]|0; + $351 = (($350) + 16|0); + HEAP32[$351>>2] = $349; + $352 = HEAP32[$zCsr>>2]|0; + $353 = HEAP32[$4>>2]|0; + $354 = (($353) + 4|0); + $355 = HEAP32[$354>>2]|0; + $356 = HEAP32[$nDb>>2]|0; + _memcpy(($352|0),($355|0),($356|0))|0; + $357 = HEAP32[$nDb>>2]|0; + $358 = HEAP32[$zCsr>>2]|0; + $359 = (($358) + ($357)|0); + HEAP32[$zCsr>>2] = $359; + HEAP32[$iCol>>2] = 0; + while(1) { + $360 = HEAP32[$iCol>>2]|0; + $361 = HEAP32[$nCol>>2]|0; + $362 = ($360|0)<($361|0); + if (!($362)) { + break; + } + HEAP32[$n>>2] = 0; + $363 = HEAP32[$iCol>>2]|0; + $364 = HEAP32[$aCol>>2]|0; + $365 = (($364) + ($363<<2)|0); + $366 = HEAP32[$365>>2]|0; + $367 = (_sqlite3Fts3NextToken($366,$n)|0); + HEAP32[$z1>>2] = $367; + $368 = HEAP32[$zCsr>>2]|0; + $369 = HEAP32[$z1>>2]|0; + $370 = HEAP32[$n>>2]|0; + _memcpy(($368|0),($369|0),($370|0))|0; + $371 = HEAP32[$n>>2]|0; + $372 = HEAP32[$zCsr>>2]|0; + $373 = (($372) + ($371)|0); + HEAP8[$373>>0] = 0; + $374 = HEAP32[$zCsr>>2]|0; + _sqlite3Fts3Dequote($374); + $375 = HEAP32[$zCsr>>2]|0; + $376 = HEAP32[$iCol>>2]|0; + $377 = HEAP32[$p>>2]|0; + $378 = (($377) + 28|0); + $379 = HEAP32[$378>>2]|0; + $380 = (($379) + ($376<<2)|0); + HEAP32[$380>>2] = $375; + $381 = HEAP32[$n>>2]|0; + $382 = (($381) + 1)|0; + $383 = HEAP32[$zCsr>>2]|0; + $384 = (($383) + ($382)|0); + HEAP32[$zCsr>>2] = $384; + $385 = HEAP32[$iCol>>2]|0; + $386 = (($385) + 1)|0; + HEAP32[$iCol>>2] = $386; + } + HEAP32[$iCol>>2] = 0; + while(1) { + $387 = HEAP32[$iCol>>2]|0; + $388 = HEAP32[$nCol>>2]|0; + $389 = ($387|0)<($388|0); + if (!($389)) { + break; + } + $390 = HEAP32[$iCol>>2]|0; + $391 = HEAP32[$p>>2]|0; + $392 = (($391) + 28|0); + $393 = HEAP32[$392>>2]|0; + $394 = (($393) + ($390<<2)|0); + $395 = HEAP32[$394>>2]|0; + $396 = (_strlen(($395|0))|0); + HEAP32[$n2>>2] = $396; + HEAP32[$i>>2] = 0; + while(1) { + $397 = HEAP32[$i>>2]|0; + $398 = HEAP32[$nNotindexed>>2]|0; + $399 = ($397|0)<($398|0); + if (!($399)) { + break; + } + $400 = HEAP32[$i>>2]|0; + $401 = HEAP32[$azNotindexed>>2]|0; + $402 = (($401) + ($400<<2)|0); + $403 = HEAP32[$402>>2]|0; + HEAP32[$zNot>>2] = $403; + $404 = HEAP32[$zNot>>2]|0; + $405 = ($404|0)!=(0|0); + do { + if ($405) { + $406 = HEAP32[$n2>>2]|0; + $407 = HEAP32[$zNot>>2]|0; + $408 = (_strlen(($407|0))|0); + $409 = ($406|0)==($408|0); + if ($409) { + $410 = HEAP32[$iCol>>2]|0; + $411 = HEAP32[$p>>2]|0; + $412 = (($411) + 28|0); + $413 = HEAP32[$412>>2]|0; + $414 = (($413) + ($410<<2)|0); + $415 = HEAP32[$414>>2]|0; + $416 = HEAP32[$zNot>>2]|0; + $417 = HEAP32[$n2>>2]|0; + $418 = (_sqlite3_strnicmp($415,$416,$417)|0); + $419 = (0)==($418|0); + if (!($419)) { + break; + } + $420 = HEAP32[$iCol>>2]|0; + $421 = HEAP32[$p>>2]|0; + $422 = (($421) + 32|0); + $423 = HEAP32[$422>>2]|0; + $424 = (($423) + ($420)|0); + HEAP8[$424>>0] = 1; + $425 = HEAP32[$zNot>>2]|0; + _sqlite3_free($425); + $426 = HEAP32[$i>>2]|0; + $427 = HEAP32[$azNotindexed>>2]|0; + $428 = (($427) + ($426<<2)|0); + HEAP32[$428>>2] = 0; + } + } + } while(0); + $429 = HEAP32[$i>>2]|0; + $430 = (($429) + 1)|0; + HEAP32[$i>>2] = $430; + } + $431 = HEAP32[$iCol>>2]|0; + $432 = (($431) + 1)|0; + HEAP32[$iCol>>2] = $432; + } + HEAP32[$i>>2] = 0; + while(1) { + $433 = HEAP32[$i>>2]|0; + $434 = HEAP32[$nNotindexed>>2]|0; + $435 = ($433|0)<($434|0); + if (!($435)) { + break; + } + $436 = HEAP32[$i>>2]|0; + $437 = HEAP32[$azNotindexed>>2]|0; + $438 = (($437) + ($436<<2)|0); + $439 = HEAP32[$438>>2]|0; + $440 = ($439|0)!=(0|0); + if ($440) { + $441 = HEAP32[$i>>2]|0; + $442 = HEAP32[$azNotindexed>>2]|0; + $443 = (($442) + ($441<<2)|0); + $444 = HEAP32[$443>>2]|0; + HEAP32[$vararg_buffer13>>2] = $444; + $445 = (_sqlite3_mprintf(8184,$vararg_buffer13)|0); + $446 = HEAP32[$6>>2]|0; + HEAP32[$446>>2] = $445; + HEAP32[$rc>>2] = 1; + } + $447 = HEAP32[$i>>2]|0; + $448 = (($447) + 1)|0; + HEAP32[$i>>2] = $448; + } + $449 = HEAP32[$rc>>2]|0; + $450 = ($449|0)==(0); + if ($450) { + $451 = HEAP32[$zCompress>>2]|0; + $452 = ($451|0)==(0|0); + $453 = $452&1; + $454 = HEAP32[$zUncompress>>2]|0; + $455 = ($454|0)==(0|0); + $456 = $455&1; + $457 = ($453|0)!=($456|0); + if ($457) { + $458 = HEAP32[$zCompress>>2]|0; + $459 = ($458|0)==(0|0); + $460 = $459 ? 7896 : 7912; + HEAP32[$zMiss>>2] = $460; + HEAP32[$rc>>2] = 1; + $461 = HEAP32[$zMiss>>2]|0; + HEAP32[$vararg_buffer13>>2] = $461; + $462 = (_sqlite3_mprintf(8208,$vararg_buffer13)|0); + $463 = HEAP32[$6>>2]|0; + HEAP32[$463>>2] = $462; + } + } + $464 = HEAP32[$p>>2]|0; + $465 = HEAP32[$zUncompress>>2]|0; + $466 = (_fts3ReadExprList($464,$465,$rc)|0); + $467 = HEAP32[$p>>2]|0; + $468 = (($467) + 216|0); + HEAP32[$468>>2] = $466; + $469 = HEAP32[$p>>2]|0; + $470 = HEAP32[$zCompress>>2]|0; + $471 = (_fts3WriteExprList($469,$470,$rc)|0); + $472 = HEAP32[$p>>2]|0; + $473 = (($472) + 220|0); + HEAP32[$473>>2] = $471; + $474 = HEAP32[$rc>>2]|0; + $475 = ($474|0)!=(0); + if (!($475)) { + $476 = HEAP32[$0>>2]|0; + $477 = ($476|0)!=(0); + if ($477) { + $478 = HEAP32[$p>>2]|0; + $479 = (_fts3CreateTables($478)|0); + HEAP32[$rc>>2] = $479; + } + $480 = HEAP32[$isFts4>>2]|0; + $481 = ($480|0)!=(0); + if (!($481)) { + $482 = HEAP32[$0>>2]|0; + $483 = ($482|0)!=(0); + if (!($483)) { + $484 = HEAP32[$p>>2]|0; + $485 = (($484) + 229|0); + HEAP8[$485>>0] = 2; + } + } + $486 = HEAP32[$p>>2]|0; + _fts3DatabasePageSize($rc,$486); + $487 = HEAP32[$p>>2]|0; + $488 = (($487) + 236|0); + $489 = HEAP32[$488>>2]|0; + $490 = (($489) - 35)|0; + $491 = HEAP32[$p>>2]|0; + $492 = (($491) + 224|0); + HEAP32[$492>>2] = $490; + $493 = HEAP32[$p>>2]|0; + _fts3DeclareVtab($rc,$493); + } + } + } + } else { + label = 7; + } + } else { + label = 7; + } + } while(0); + if ((label|0) == 7) { + HEAP32[$rc>>2] = 7; + } + $494 = HEAP32[$zPrefix>>2]|0; + _sqlite3_free($494); + $495 = HEAP32[$aIndex>>2]|0; + _sqlite3_free($495); + $496 = HEAP32[$zCompress>>2]|0; + _sqlite3_free($496); + $497 = HEAP32[$zUncompress>>2]|0; + _sqlite3_free($497); + $498 = HEAP32[$zContent>>2]|0; + _sqlite3_free($498); + $499 = HEAP32[$zLanguageid>>2]|0; + _sqlite3_free($499); + HEAP32[$i>>2] = 0; + while(1) { + $500 = HEAP32[$i>>2]|0; + $501 = HEAP32[$nNotindexed>>2]|0; + $502 = ($500|0)<($501|0); + if (!($502)) { + break; + } + $503 = HEAP32[$i>>2]|0; + $504 = HEAP32[$azNotindexed>>2]|0; + $505 = (($504) + ($503<<2)|0); + $506 = HEAP32[$505>>2]|0; + _sqlite3_free($506); + $507 = HEAP32[$i>>2]|0; + $508 = (($507) + 1)|0; + HEAP32[$i>>2] = $508; + } + $509 = HEAP32[$aCol>>2]|0; + _sqlite3_free($509); + $510 = HEAP32[$azNotindexed>>2]|0; + _sqlite3_free($510); + $511 = HEAP32[$rc>>2]|0; + $512 = ($511|0)!=(0); + $513 = HEAP32[$p>>2]|0; + if (!($512)) { + $523 = HEAP32[$5>>2]|0; + HEAP32[$523>>2] = $513; + $524 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($524|0); + } + $514 = ($513|0)!=(0|0); + if ($514) { + $515 = HEAP32[$p>>2]|0; + (_fts3DisconnectMethod($515)|0); + $524 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($524|0); + } + $516 = HEAP32[$pTokenizer>>2]|0; + $517 = ($516|0)!=(0|0); + if (!($517)) { + $524 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($524|0); + } + $518 = HEAP32[$pTokenizer>>2]|0; + $519 = HEAP32[$518>>2]|0; + $520 = (($519) + 8|0); + $521 = HEAP32[$520>>2]|0; + $522 = HEAP32[$pTokenizer>>2]|0; + (FUNCTION_TABLE_ii[$521 & 63]($522)|0); + $524 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($524|0); +} +function _sqlite3Fts3IsIdChar($c) { + $c = $c|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP8[$0>>0] = $c; + $1 = HEAP8[$0>>0]|0; + $2 = $1 << 24 >> 24; + $3 = $2 & 128; + $4 = ($3|0)!=(0); + if ($4) { + $12 = 1; + $11 = $12&1; + STACKTOP = sp;return ($11|0); + } + $5 = HEAP8[$0>>0]|0; + $6 = $5 << 24 >> 24; + $7 = (8960 + ($6)|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8 << 24 >> 24; + $10 = ($9|0)!=(0); + $12 = $10; + $11 = $12&1; + STACKTOP = sp;return ($11|0); +} +function _sqlite3Fts3InitTokenizer($pHash,$zArg,$ppTok,$pzErr) { + $pHash = $pHash|0; + $zArg = $zArg|0; + $ppTok = $ppTok|0; + $pzErr = $pzErr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $9 = 0, $aArg = 0, $aNew = 0, $iArg = 0, $m = 0, $n = 0, $nNew = 0, $rc = 0, $vararg_buffer4 = 0, $z = 0, $zCopy = 0, $zEnd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer4 = sp; + $0 = sp + 56|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $3 = sp + 44|0; + $4 = sp + 40|0; + $rc = sp + 36|0; + $z = sp + 32|0; + $n = sp + 60|0; + $zCopy = sp + 20|0; + $zEnd = sp + 16|0; + $m = sp + 12|0; + $aArg = sp + 8|0; + $iArg = sp + 4|0; + $nNew = sp + 24|0; + $aNew = sp + 28|0; + HEAP32[$1>>2] = $pHash; + HEAP32[$2>>2] = $zArg; + HEAP32[$3>>2] = $ppTok; + HEAP32[$4>>2] = $pzErr; + $5 = HEAP32[$2>>2]|0; + HEAP32[$z>>2] = $5; + HEAP32[$n>>2] = 0; + $6 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer4>>2] = $6; + $7 = (_sqlite3_mprintf(1768,$vararg_buffer4)|0); + HEAP32[$zCopy>>2] = $7; + $8 = HEAP32[$zCopy>>2]|0; + $9 = ($8|0)!=(0|0); + if (!($9)) { + HEAP32[$0>>2] = 7; + $82 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($82|0); + } + $10 = HEAP32[$zCopy>>2]|0; + $11 = (_strlen(($10|0))|0); + $12 = HEAP32[$zCopy>>2]|0; + $13 = (($12) + ($11)|0); + HEAP32[$zEnd>>2] = $13; + $14 = HEAP32[$zCopy>>2]|0; + $15 = (_sqlite3Fts3NextToken($14,$n)|0); + HEAP32[$z>>2] = $15; + $16 = HEAP32[$n>>2]|0; + $17 = HEAP32[$z>>2]|0; + $18 = (($17) + ($16)|0); + HEAP8[$18>>0] = 0; + $19 = HEAP32[$z>>2]|0; + _sqlite3Fts3Dequote($19); + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$z>>2]|0; + $22 = HEAP32[$z>>2]|0; + $23 = (_strlen(($22|0))|0); + $24 = (($23) + 1)|0; + $25 = (_sqlite3Fts3HashFind($20,$21,$24)|0); + HEAP32[$m>>2] = $25; + $26 = HEAP32[$m>>2]|0; + $27 = ($26|0)!=(0|0); + if ($27) { + HEAP32[$aArg>>2] = 0; + HEAP32[$iArg>>2] = 0; + $31 = HEAP32[$n>>2]|0; + $32 = (($31) + 1)|0; + $33 = HEAP32[$z>>2]|0; + $34 = (($33) + ($32)|0); + HEAP32[$z>>2] = $34; + while(1) { + $35 = HEAP32[$z>>2]|0; + $36 = HEAP32[$zEnd>>2]|0; + $37 = ($35>>>0)<($36>>>0); + if (!($37)) { + break; + } + $38 = HEAP32[$z>>2]|0; + $39 = (_sqlite3Fts3NextToken($38,$n)|0); + HEAP32[$z>>2] = $39; + $40 = (0|0)!=($39|0); + if (!($40)) { + break; + } + $41 = HEAP32[$iArg>>2]|0; + $42 = (($41) + 1)|0; + $43 = $42<<2; + HEAP32[$nNew>>2] = $43; + $44 = HEAP32[$aArg>>2]|0; + $45 = HEAP32[$nNew>>2]|0; + $46 = (_sqlite3_realloc($44,$45)|0); + HEAP32[$aNew>>2] = $46; + $47 = HEAP32[$aNew>>2]|0; + $48 = ($47|0)!=(0|0); + if (!($48)) { + label = 9; + break; + } + $51 = HEAP32[$aNew>>2]|0; + HEAP32[$aArg>>2] = $51; + $52 = HEAP32[$z>>2]|0; + $53 = HEAP32[$iArg>>2]|0; + $54 = (($53) + 1)|0; + HEAP32[$iArg>>2] = $54; + $55 = HEAP32[$aArg>>2]|0; + $56 = (($55) + ($53<<2)|0); + HEAP32[$56>>2] = $52; + $57 = HEAP32[$n>>2]|0; + $58 = HEAP32[$z>>2]|0; + $59 = (($58) + ($57)|0); + HEAP8[$59>>0] = 0; + $60 = HEAP32[$z>>2]|0; + _sqlite3Fts3Dequote($60); + $61 = HEAP32[$n>>2]|0; + $62 = (($61) + 1)|0; + $63 = HEAP32[$z>>2]|0; + $64 = (($63) + ($62)|0); + HEAP32[$z>>2] = $64; + } + if ((label|0) == 9) { + $49 = HEAP32[$zCopy>>2]|0; + _sqlite3_free($49); + $50 = HEAP32[$aArg>>2]|0; + _sqlite3_free($50); + HEAP32[$0>>2] = 7; + $82 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($82|0); + } + $65 = HEAP32[$m>>2]|0; + $66 = (($65) + 4|0); + $67 = HEAP32[$66>>2]|0; + $68 = HEAP32[$iArg>>2]|0; + $69 = HEAP32[$aArg>>2]|0; + $70 = HEAP32[$3>>2]|0; + $71 = (FUNCTION_TABLE_iiii[$67 & 31]($68,$69,$70)|0); + HEAP32[$rc>>2] = $71; + $72 = HEAP32[$rc>>2]|0; + $73 = ($72|0)!=(0); + if ($73) { + $74 = (_sqlite3_mprintf(8936,$vararg_buffer4)|0); + $75 = HEAP32[$4>>2]|0; + HEAP32[$75>>2] = $74; + } else { + $76 = HEAP32[$m>>2]|0; + $77 = HEAP32[$3>>2]|0; + $78 = HEAP32[$77>>2]|0; + HEAP32[$78>>2] = $76; + } + $79 = HEAP32[$aArg>>2]|0; + _sqlite3_free($79); + } else { + $28 = HEAP32[$z>>2]|0; + HEAP32[$vararg_buffer4>>2] = $28; + $29 = (_sqlite3_mprintf(4032,$vararg_buffer4)|0); + $30 = HEAP32[$4>>2]|0; + HEAP32[$30>>2] = $29; + HEAP32[$rc>>2] = 1; + } + $80 = HEAP32[$zCopy>>2]|0; + _sqlite3_free($80); + $81 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $81; + $82 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($82|0); +} +function _fts3IsSpecialColumn($z,$pnKey,$pzValue) { + $z = $z|0; + $pnKey = $pnKey|0; + $pzValue = $pzValue|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $zCsr = 0, $zValue = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 24|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $zValue = sp + 16|0; + $zCsr = sp + 20|0; + HEAP32[$1>>2] = $z; + HEAP32[$2>>2] = $pnKey; + HEAP32[$3>>2] = $pzValue; + $4 = HEAP32[$1>>2]|0; + HEAP32[$zCsr>>2] = $4; + while(1) { + $5 = HEAP32[$zCsr>>2]|0; + $6 = HEAP8[$5>>0]|0; + $7 = $6 << 24 >> 24; + $8 = ($7|0)!=(61); + $9 = HEAP32[$zCsr>>2]|0; + if (!($8)) { + break; + } + $10 = HEAP8[$9>>0]|0; + $11 = $10 << 24 >> 24; + $12 = ($11|0)==(0); + if ($12) { + label = 4; + break; + } + $13 = HEAP32[$zCsr>>2]|0; + $14 = (($13) + 1|0); + HEAP32[$zCsr>>2] = $14; + } + if ((label|0) == 4) { + HEAP32[$0>>2] = 0; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } + $15 = HEAP32[$1>>2]|0; + $16 = $9; + $17 = $15; + $18 = (($16) - ($17))|0; + $19 = HEAP32[$2>>2]|0; + HEAP32[$19>>2] = $18; + $20 = HEAP32[$zCsr>>2]|0; + $21 = (($20) + 1|0); + HEAP32[$vararg_buffer>>2] = $21; + $22 = (_sqlite3_mprintf(1768,$vararg_buffer)|0); + HEAP32[$zValue>>2] = $22; + $23 = HEAP32[$zValue>>2]|0; + $24 = ($23|0)!=(0|0); + if ($24) { + $25 = HEAP32[$zValue>>2]|0; + _sqlite3Fts3Dequote($25); + } + $26 = HEAP32[$zValue>>2]|0; + $27 = HEAP32[$3>>2]|0; + HEAP32[$27>>2] = $26; + HEAP32[$0>>2] = 1; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); +} +function _fts3ContentColumns($db,$zDb,$zTbl,$pazCol,$pnCol,$pnStr) { + $db = $db|0; + $zDb = $zDb|0; + $zTbl = $zTbl|0; + $pazCol = $pazCol|0; + $pnCol = $pnCol|0; + $pnStr = $pnStr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $azCol = 0, $i = 0, $n = 0, $nCol = 0, $nStr = 0, $p = 0, $pStmt = 0, $rc = 0, $vararg_buffer = 0; + var $vararg_ptr1 = 0, $zCol = 0, $zCol1 = 0, $zSql = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer = sp; + $0 = sp + 68|0; + $1 = sp + 64|0; + $2 = sp + 60|0; + $3 = sp + 56|0; + $4 = sp + 52|0; + $5 = sp + 48|0; + $rc = sp + 44|0; + $zSql = sp + 40|0; + $pStmt = sp + 72|0; + $azCol = sp + 28|0; + $nStr = sp + 24|0; + $nCol = sp + 20|0; + $i = sp + 16|0; + $zCol = sp + 12|0; + $p = sp + 8|0; + $zCol1 = sp + 32|0; + $n = sp + 36|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zDb; + HEAP32[$2>>2] = $zTbl; + HEAP32[$3>>2] = $pazCol; + HEAP32[$4>>2] = $pnCol; + HEAP32[$5>>2] = $pnStr; + HEAP32[$rc>>2] = 0; + HEAP32[$pStmt>>2] = 0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer>>2] = $6; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $7; + $8 = (_sqlite3_mprintf(8912,$vararg_buffer)|0); + HEAP32[$zSql>>2] = $8; + $9 = HEAP32[$zSql>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$zSql>>2]|0; + $13 = (_sqlite3_prepare($11,$12,-1,$pStmt,0)|0); + HEAP32[$rc>>2] = $13; + } else { + HEAP32[$rc>>2] = 7; + } + $14 = HEAP32[$zSql>>2]|0; + _sqlite3_free($14); + $15 = HEAP32[$rc>>2]|0; + $16 = ($15|0)==(0); + if (!($16)) { + $70 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($70|0); + } + HEAP32[$nStr>>2] = 0; + $17 = HEAP32[$pStmt>>2]|0; + $18 = (_sqlite3_column_count($17)|0); + HEAP32[$nCol>>2] = $18; + HEAP32[$i>>2] = 0; + while(1) { + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$nCol>>2]|0; + $21 = ($19|0)<($20|0); + if (!($21)) { + break; + } + $22 = HEAP32[$pStmt>>2]|0; + $23 = HEAP32[$i>>2]|0; + $24 = (_sqlite3_column_name($22,$23)|0); + HEAP32[$zCol>>2] = $24; + $25 = HEAP32[$zCol>>2]|0; + $26 = (_strlen(($25|0))|0); + $27 = (($26) + 1)|0; + $28 = HEAP32[$nStr>>2]|0; + $29 = (($28) + ($27))|0; + HEAP32[$nStr>>2] = $29; + $30 = HEAP32[$i>>2]|0; + $31 = (($30) + 1)|0; + HEAP32[$i>>2] = $31; + } + $32 = HEAP32[$nCol>>2]|0; + $33 = $32<<2; + $34 = HEAP32[$nStr>>2]|0; + $35 = (($33) + ($34))|0; + $36 = (_sqlite3_malloc($35)|0); + HEAP32[$azCol>>2] = $36; + $37 = HEAP32[$azCol>>2]|0; + $38 = ($37|0)==(0|0); + L12: do { + if ($38) { + HEAP32[$rc>>2] = 7; + } else { + $39 = HEAP32[$nCol>>2]|0; + $40 = HEAP32[$azCol>>2]|0; + $41 = (($40) + ($39<<2)|0); + HEAP32[$p>>2] = $41; + HEAP32[$i>>2] = 0; + while(1) { + $42 = HEAP32[$i>>2]|0; + $43 = HEAP32[$nCol>>2]|0; + $44 = ($42|0)<($43|0); + if (!($44)) { + break L12; + } + $45 = HEAP32[$pStmt>>2]|0; + $46 = HEAP32[$i>>2]|0; + $47 = (_sqlite3_column_name($45,$46)|0); + HEAP32[$zCol1>>2] = $47; + $48 = HEAP32[$zCol1>>2]|0; + $49 = (_strlen(($48|0))|0); + $50 = (($49) + 1)|0; + HEAP32[$n>>2] = $50; + $51 = HEAP32[$p>>2]|0; + $52 = HEAP32[$zCol1>>2]|0; + $53 = HEAP32[$n>>2]|0; + _memcpy(($51|0),($52|0),($53|0))|0; + $54 = HEAP32[$p>>2]|0; + $55 = HEAP32[$i>>2]|0; + $56 = HEAP32[$azCol>>2]|0; + $57 = (($56) + ($55<<2)|0); + HEAP32[$57>>2] = $54; + $58 = HEAP32[$n>>2]|0; + $59 = HEAP32[$p>>2]|0; + $60 = (($59) + ($58)|0); + HEAP32[$p>>2] = $60; + $61 = HEAP32[$i>>2]|0; + $62 = (($61) + 1)|0; + HEAP32[$i>>2] = $62; + } + } + } while(0); + $63 = HEAP32[$pStmt>>2]|0; + (_sqlite3_finalize($63)|0); + $64 = HEAP32[$nCol>>2]|0; + $65 = HEAP32[$4>>2]|0; + HEAP32[$65>>2] = $64; + $66 = HEAP32[$nStr>>2]|0; + $67 = HEAP32[$5>>2]|0; + HEAP32[$67>>2] = $66; + $68 = HEAP32[$azCol>>2]|0; + $69 = HEAP32[$3>>2]|0; + HEAP32[$69>>2] = $68; + $70 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($70|0); +} +function _fts3PrefixParameter($zParam,$pnIndex,$apIndex) { + $zParam = $zParam|0; + $pnIndex = $pnIndex|0; + $apIndex = $apIndex|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aIndex = 0, $i = 0, $nIndex = 0, $nPrefix = 0, $p = 0, $p1 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $aIndex = sp + 20|0; + $nIndex = sp + 16|0; + $p = sp + 8|0; + $p1 = sp + 4|0; + $i = sp; + $nPrefix = sp + 12|0; + HEAP32[$1>>2] = $zParam; + HEAP32[$2>>2] = $pnIndex; + HEAP32[$3>>2] = $apIndex; + HEAP32[$nIndex>>2] = 1; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)!=(0|0); + L1: do { + if ($5) { + $6 = HEAP32[$1>>2]|0; + $7 = HEAP8[$6>>0]|0; + $8 = $7 << 24 >> 24; + $9 = ($8|0)!=(0); + if ($9) { + $10 = HEAP32[$nIndex>>2]|0; + $11 = (($10) + 1)|0; + HEAP32[$nIndex>>2] = $11; + $12 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $12; + while(1) { + $13 = HEAP32[$p>>2]|0; + $14 = HEAP8[$13>>0]|0; + $15 = ($14<<24>>24)!=(0); + if (!($15)) { + break L1; + } + $16 = HEAP32[$p>>2]|0; + $17 = HEAP8[$16>>0]|0; + $18 = $17 << 24 >> 24; + $19 = ($18|0)==(44); + if ($19) { + $20 = HEAP32[$nIndex>>2]|0; + $21 = (($20) + 1)|0; + HEAP32[$nIndex>>2] = $21; + } + $22 = HEAP32[$p>>2]|0; + $23 = (($22) + 1|0); + HEAP32[$p>>2] = $23; + } + } + } + } while(0); + $24 = HEAP32[$nIndex>>2]|0; + $25 = ($24*24)|0; + $26 = (_sqlite3_malloc($25)|0); + HEAP32[$aIndex>>2] = $26; + $27 = HEAP32[$aIndex>>2]|0; + $28 = HEAP32[$3>>2]|0; + HEAP32[$28>>2] = $27; + $29 = HEAP32[$nIndex>>2]|0; + $30 = HEAP32[$2>>2]|0; + HEAP32[$30>>2] = $29; + $31 = HEAP32[$aIndex>>2]|0; + $32 = ($31|0)!=(0|0); + if (!($32)) { + HEAP32[$0>>2] = 7; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); + } + $33 = HEAP32[$aIndex>>2]|0; + $34 = HEAP32[$nIndex>>2]|0; + $35 = ($34*24)|0; + _memset(($33|0),0,($35|0))|0; + $36 = HEAP32[$1>>2]|0; + $37 = ($36|0)!=(0|0); + L15: do { + if ($37) { + $38 = HEAP32[$1>>2]|0; + HEAP32[$p1>>2] = $38; + HEAP32[$i>>2] = 1; + while(1) { + $39 = HEAP32[$i>>2]|0; + $40 = HEAP32[$nIndex>>2]|0; + $41 = ($39|0)<($40|0); + if (!($41)) { + break L15; + } + $42 = (_fts3GobbleInt($p1,$nPrefix)|0); + $43 = ($42|0)!=(0); + if ($43) { + break; + } + $44 = HEAP32[$nPrefix>>2]|0; + $45 = HEAP32[$i>>2]|0; + $46 = HEAP32[$aIndex>>2]|0; + $47 = (($46) + (($45*24)|0)|0); + HEAP32[$47>>2] = $44; + $48 = HEAP32[$p1>>2]|0; + $49 = (($48) + 1|0); + HEAP32[$p1>>2] = $49; + $50 = HEAP32[$i>>2]|0; + $51 = (($50) + 1)|0; + HEAP32[$i>>2] = $51; + } + HEAP32[$0>>2] = 1; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); +} +function _sqlite3Fts3NextToken($zStr,$pn) { + $zStr = $zStr|0; + $pn = $pn|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, $z1 = 0, $z2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $z1 = sp + 8|0; + $z2 = sp + 12|0; + $c = sp + 20|0; + HEAP32[$1>>2] = $zStr; + HEAP32[$2>>2] = $pn; + HEAP32[$z2>>2] = 0; + $3 = HEAP32[$1>>2]|0; + HEAP32[$z1>>2] = $3; + L1: while(1) { + $4 = HEAP32[$z2>>2]|0; + $5 = ($4|0)==(0|0); + if (!($5)) { + label = 21; + break; + } + $6 = HEAP32[$z1>>2]|0; + $7 = HEAP8[$6>>0]|0; + HEAP8[$c>>0] = $7; + $8 = HEAP8[$c>>0]|0; + $9 = $8 << 24 >> 24; + switch ($9|0) { + case 0: { + label = 4; + break L1; + break; + } + case 96: case 34: case 39: { + $10 = HEAP32[$z1>>2]|0; + HEAP32[$z2>>2] = $10; + while(1) { + $11 = HEAP32[$z2>>2]|0; + $12 = (($11) + 1|0); + HEAP32[$z2>>2] = $12; + $13 = HEAP8[$12>>0]|0; + $14 = $13 << 24 >> 24; + $15 = ($14|0)!=(0); + if (!($15)) { + continue L1; + } + $16 = HEAP32[$z2>>2]|0; + $17 = HEAP8[$16>>0]|0; + $18 = $17 << 24 >> 24; + $19 = HEAP8[$c>>0]|0; + $20 = $19 << 24 >> 24; + $21 = ($18|0)!=($20|0); + if ($21) { + continue; + } + $22 = HEAP32[$z2>>2]|0; + $23 = (($22) + 1|0); + HEAP32[$z2>>2] = $23; + $24 = HEAP8[$23>>0]|0; + $25 = $24 << 24 >> 24; + $26 = HEAP8[$c>>0]|0; + $27 = $26 << 24 >> 24; + $28 = ($25|0)==($27|0); + if (!($28)) { + continue L1; + } + } + break; + } + case 91: { + $29 = HEAP32[$z1>>2]|0; + $30 = (($29) + 1|0); + HEAP32[$z2>>2] = $30; + while(1) { + $31 = HEAP32[$z2>>2]|0; + $32 = HEAP8[$31>>0]|0; + $33 = $32 << 24 >> 24; + $34 = ($33|0)!=(0); + if ($34) { + $35 = HEAP32[$z2>>2]|0; + $36 = HEAP8[$35>>0]|0; + $37 = $36 << 24 >> 24; + $38 = ($37|0)!=(93); + $65 = $38; + } else { + $65 = 0; + } + $39 = HEAP32[$z2>>2]|0; + if (!($65)) { + break; + } + $40 = (($39) + 1|0); + HEAP32[$z2>>2] = $40; + } + $41 = HEAP8[$39>>0]|0; + $42 = ($41<<24>>24)!=(0); + if (!($42)) { + continue L1; + } + $43 = HEAP32[$z2>>2]|0; + $44 = (($43) + 1|0); + HEAP32[$z2>>2] = $44; + continue L1; + break; + } + default: { + $45 = HEAP32[$z1>>2]|0; + $46 = HEAP8[$45>>0]|0; + $47 = (_sqlite3Fts3IsIdChar($46)|0); + $48 = ($47|0)!=(0); + $49 = HEAP32[$z1>>2]|0; + $50 = (($49) + 1|0); + if (!($48)) { + HEAP32[$z1>>2] = $50; + continue L1; + } + HEAP32[$z2>>2] = $50; + while(1) { + $51 = HEAP32[$z2>>2]|0; + $52 = HEAP8[$51>>0]|0; + $53 = (_sqlite3Fts3IsIdChar($52)|0); + $54 = ($53|0)!=(0); + if (!($54)) { + continue L1; + } + $55 = HEAP32[$z2>>2]|0; + $56 = (($55) + 1|0); + HEAP32[$z2>>2] = $56; + } + } + } + } + if ((label|0) == 4) { + HEAP32[$0>>2] = 0; + $64 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($64|0); + } + else if ((label|0) == 21) { + $57 = HEAP32[$z2>>2]|0; + $58 = HEAP32[$z1>>2]|0; + $59 = $57; + $60 = $58; + $61 = (($59) - ($60))|0; + $62 = HEAP32[$2>>2]|0; + HEAP32[$62>>2] = $61; + $63 = HEAP32[$z1>>2]|0; + HEAP32[$0>>2] = $63; + $64 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($64|0); + } + return 0|0; +} +function _fts3ReadExprList($p,$zFunc,$pRc) { + $p = $p|0; + $zFunc = $zFunc|0; + $pRc = $pRc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $8 = 0, $9 = 0, $i = 0, $vararg_buffer16 = 0, $vararg_ptr19 = 0; + var $vararg_ptr20 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $zFree = 0, $zFunction = 0, $zRet = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer16 = sp; + $0 = sp + 36|0; + $1 = sp + 12|0; + $2 = sp + 16|0; + $zRet = sp + 20|0; + $zFree = sp + 24|0; + $zFunction = sp + 28|0; + $i = sp + 32|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $zFunc; + HEAP32[$2>>2] = $pRc; + HEAP32[$zRet>>2] = 0; + HEAP32[$zFree>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 40|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)==(0|0); + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = HEAP32[$1>>2]|0; + $10 = (_fts3QuoteId($9)|0); + HEAP32[$zFunction>>2] = $10; + HEAP32[$zFree>>2] = $10; + } else { + HEAP32[$zFunction>>2] = 1784; + } + $11 = HEAP32[$2>>2]|0; + _fts3Appendf($11,$zRet,8808,$vararg_buffer16); + HEAP32[$i>>2] = 0; + while(1) { + $12 = HEAP32[$i>>2]|0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 24|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($12|0)<($15|0); + if (!($16)) { + break; + } + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$zFunction>>2]|0; + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$i>>2]|0; + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 28|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + ($20<<2)|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$vararg_buffer16>>2] = $18; + $vararg_ptr3 = (($vararg_buffer16) + 4|0); + HEAP32[$vararg_ptr3>>2] = $19; + $vararg_ptr4 = (($vararg_buffer16) + 8|0); + HEAP32[$vararg_ptr4>>2] = $25; + _fts3Appendf($17,$zRet,8816,$vararg_buffer16); + $26 = HEAP32[$i>>2]|0; + $27 = (($26) + 1)|0; + HEAP32[$i>>2] = $27; + } + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 44|0); + $30 = HEAP32[$29>>2]|0; + $31 = ($30|0)!=(0|0); + if ($31) { + $32 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer16>>2] = 8840; + _fts3Appendf($32,$zRet,8832,$vararg_buffer16); + } + $33 = HEAP32[$zFree>>2]|0; + _sqlite3_free($33); + } else { + $34 = HEAP32[$2>>2]|0; + _fts3Appendf($34,$zRet,8848,$vararg_buffer16); + HEAP32[$i>>2] = 0; + while(1) { + $35 = HEAP32[$i>>2]|0; + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + 24|0); + $38 = HEAP32[$37>>2]|0; + $39 = ($35|0)<($38|0); + if (!($39)) { + break; + } + $40 = HEAP32[$2>>2]|0; + $41 = HEAP32[$i>>2]|0; + $42 = HEAP32[$0>>2]|0; + $43 = (($42) + 28|0); + $44 = HEAP32[$43>>2]|0; + $45 = (($44) + ($41<<2)|0); + $46 = HEAP32[$45>>2]|0; + HEAP32[$vararg_buffer16>>2] = $46; + _fts3Appendf($40,$zRet,8856,$vararg_buffer16); + $47 = HEAP32[$i>>2]|0; + $48 = (($47) + 1)|0; + HEAP32[$i>>2] = $48; + } + $49 = HEAP32[$0>>2]|0; + $50 = (($49) + 44|0); + $51 = HEAP32[$50>>2]|0; + $52 = ($51|0)!=(0|0); + if ($52) { + $53 = HEAP32[$2>>2]|0; + $54 = HEAP32[$0>>2]|0; + $55 = (($54) + 44|0); + $56 = HEAP32[$55>>2]|0; + HEAP32[$vararg_buffer16>>2] = $56; + _fts3Appendf($53,$zRet,8832,$vararg_buffer16); + } + } + $57 = HEAP32[$2>>2]|0; + $58 = HEAP32[$0>>2]|0; + $59 = (($58) + 16|0); + $60 = HEAP32[$59>>2]|0; + $61 = HEAP32[$0>>2]|0; + $62 = (($61) + 40|0); + $63 = HEAP32[$62>>2]|0; + $64 = ($63|0)!=(0|0); + $65 = HEAP32[$0>>2]|0; + if ($64) { + $66 = (($65) + 40|0); + $67 = HEAP32[$66>>2]|0; + $75 = $67; + $70 = HEAP32[$0>>2]|0; + $71 = (($70) + 40|0); + $72 = HEAP32[$71>>2]|0; + $73 = ($72|0)!=(0|0); + $74 = $73 ? 1784 : 8896; + HEAP32[$vararg_buffer16>>2] = $60; + $vararg_ptr19 = (($vararg_buffer16) + 4|0); + HEAP32[$vararg_ptr19>>2] = $75; + $vararg_ptr20 = (($vararg_buffer16) + 8|0); + HEAP32[$vararg_ptr20>>2] = $74; + _fts3Appendf($57,$zRet,8872,$vararg_buffer16); + $76 = HEAP32[$zRet>>2]|0; + STACKTOP = sp;return ($76|0); + } else { + $68 = (($65) + 20|0); + $69 = HEAP32[$68>>2]|0; + $75 = $69; + $70 = HEAP32[$0>>2]|0; + $71 = (($70) + 40|0); + $72 = HEAP32[$71>>2]|0; + $73 = ($72|0)!=(0|0); + $74 = $73 ? 1784 : 8896; + HEAP32[$vararg_buffer16>>2] = $60; + $vararg_ptr19 = (($vararg_buffer16) + 4|0); + HEAP32[$vararg_ptr19>>2] = $75; + $vararg_ptr20 = (($vararg_buffer16) + 8|0); + HEAP32[$vararg_ptr20>>2] = $74; + _fts3Appendf($57,$zRet,8872,$vararg_buffer16); + $76 = HEAP32[$zRet>>2]|0; + STACKTOP = sp;return ($76|0); + } + return 0|0; +} +function _fts3WriteExprList($p,$zFunc,$pRc) { + $p = $p|0; + $zFunc = $zFunc|0; + $pRc = $pRc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $vararg_buffer3 = 0, $zFree = 0, $zFunction = 0, $zRet = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer3 = sp; + $0 = sp + 28|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $zRet = sp + 12|0; + $zFree = sp + 16|0; + $zFunction = sp + 20|0; + $i = sp + 24|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $zFunc; + HEAP32[$2>>2] = $pRc; + HEAP32[$zRet>>2] = 0; + HEAP32[$zFree>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = HEAP32[$1>>2]|0; + $6 = (_fts3QuoteId($5)|0); + HEAP32[$zFunction>>2] = $6; + HEAP32[$zFree>>2] = $6; + } else { + HEAP32[$zFunction>>2] = 1784; + } + $7 = HEAP32[$2>>2]|0; + _fts3Appendf($7,$zRet,8776,$vararg_buffer3); + HEAP32[$i>>2] = 0; + while(1) { + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 24|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($8|0)<($11|0); + if (!($12)) { + break; + } + $13 = HEAP32[$2>>2]|0; + $14 = HEAP32[$zFunction>>2]|0; + HEAP32[$vararg_buffer3>>2] = $14; + _fts3Appendf($13,$zRet,8784,$vararg_buffer3); + $15 = HEAP32[$i>>2]|0; + $16 = (($15) + 1)|0; + HEAP32[$i>>2] = $16; + } + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 44|0); + $19 = HEAP32[$18>>2]|0; + $20 = ($19|0)!=(0|0); + if (!($20)) { + $22 = HEAP32[$zFree>>2]|0; + _sqlite3_free($22); + $23 = HEAP32[$zRet>>2]|0; + STACKTOP = sp;return ($23|0); + } + $21 = HEAP32[$2>>2]|0; + _fts3Appendf($21,$zRet,8792,$vararg_buffer3); + $22 = HEAP32[$zFree>>2]|0; + _sqlite3_free($22); + $23 = HEAP32[$zRet>>2]|0; + STACKTOP = sp;return ($23|0); +} +function _fts3CreateTables($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; + var $db = 0, $i = 0, $rc = 0, $vararg_buffer22 = 0, $vararg_ptr12 = 0, $vararg_ptr13 = 0, $vararg_ptr17 = 0, $vararg_ptr21 = 0, $vararg_ptr25 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr8 = 0, $z = 0, $zContentCols = 0, $zLanguageid = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer22 = sp; + $0 = sp + 36|0; + $rc = sp + 12|0; + $i = sp + 16|0; + $db = sp + 20|0; + $zLanguageid = sp + 24|0; + $zContentCols = sp + 28|0; + $z = sp + 32|0; + HEAP32[$0>>2] = $p; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 12|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 40|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)==(0|0); + if ($7) { + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 44|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$zLanguageid>>2] = $10; + $11 = (_sqlite3_mprintf(8368,$vararg_buffer22)|0); + HEAP32[$zContentCols>>2] = $11; + HEAP32[$i>>2] = 0; + while(1) { + $12 = HEAP32[$zContentCols>>2]|0; + $13 = ($12|0)!=(0|0); + if (!($13)) { + break; + } + $14 = HEAP32[$i>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 24|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($14|0)<($17|0); + if (!($18)) { + break; + } + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 28|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + ($19<<2)|0); + $24 = HEAP32[$23>>2]|0; + HEAP32[$z>>2] = $24; + $25 = HEAP32[$zContentCols>>2]|0; + $26 = HEAP32[$i>>2]|0; + $27 = HEAP32[$z>>2]|0; + HEAP32[$vararg_buffer22>>2] = $25; + $vararg_ptr3 = (($vararg_buffer22) + 4|0); + HEAP32[$vararg_ptr3>>2] = $26; + $vararg_ptr4 = (($vararg_buffer22) + 8|0); + HEAP32[$vararg_ptr4>>2] = $27; + $28 = (_sqlite3_mprintf(8400,$vararg_buffer22)|0); + HEAP32[$zContentCols>>2] = $28; + $29 = HEAP32[$i>>2]|0; + $30 = (($29) + 1)|0; + HEAP32[$i>>2] = $30; + } + $31 = HEAP32[$zLanguageid>>2]|0; + $32 = ($31|0)!=(0|0); + if ($32) { + $33 = HEAP32[$zContentCols>>2]|0; + $34 = ($33|0)!=(0|0); + if ($34) { + $35 = HEAP32[$zContentCols>>2]|0; + $36 = HEAP32[$zLanguageid>>2]|0; + HEAP32[$vararg_buffer22>>2] = $35; + $vararg_ptr8 = (($vararg_buffer22) + 4|0); + HEAP32[$vararg_ptr8>>2] = $36; + $37 = (_sqlite3_mprintf(8416,$vararg_buffer22)|0); + HEAP32[$zContentCols>>2] = $37; + } + } + $38 = HEAP32[$zContentCols>>2]|0; + $39 = ($38|0)==(0|0); + if ($39) { + HEAP32[$rc>>2] = 7; + } + $40 = HEAP32[$db>>2]|0; + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + 16|0); + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 20|0); + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$zContentCols>>2]|0; + HEAP32[$vararg_buffer22>>2] = $43; + $vararg_ptr12 = (($vararg_buffer22) + 4|0); + HEAP32[$vararg_ptr12>>2] = $46; + $vararg_ptr13 = (($vararg_buffer22) + 8|0); + HEAP32[$vararg_ptr13>>2] = $47; + _fts3DbExec($rc,$40,8432,$vararg_buffer22); + $48 = HEAP32[$zContentCols>>2]|0; + _sqlite3_free($48); + } + $49 = HEAP32[$db>>2]|0; + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 16|0); + $52 = HEAP32[$51>>2]|0; + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 20|0); + $55 = HEAP32[$54>>2]|0; + HEAP32[$vararg_buffer22>>2] = $52; + $vararg_ptr17 = (($vararg_buffer22) + 4|0); + HEAP32[$vararg_ptr17>>2] = $55; + _fts3DbExec($rc,$49,8472,$vararg_buffer22); + $56 = HEAP32[$db>>2]|0; + $57 = HEAP32[$0>>2]|0; + $58 = (($57) + 16|0); + $59 = HEAP32[$58>>2]|0; + $60 = HEAP32[$0>>2]|0; + $61 = (($60) + 20|0); + $62 = HEAP32[$61>>2]|0; + HEAP32[$vararg_buffer22>>2] = $59; + $vararg_ptr21 = (($vararg_buffer22) + 4|0); + HEAP32[$vararg_ptr21>>2] = $62; + _fts3DbExec($rc,$56,8544,$vararg_buffer22); + $63 = HEAP32[$0>>2]|0; + $64 = (($63) + 230|0); + $65 = HEAP8[$64>>0]|0; + $66 = ($65<<24>>24)!=(0); + if ($66) { + $67 = HEAP32[$db>>2]|0; + $68 = HEAP32[$0>>2]|0; + $69 = (($68) + 16|0); + $70 = HEAP32[$69>>2]|0; + $71 = HEAP32[$0>>2]|0; + $72 = (($71) + 20|0); + $73 = HEAP32[$72>>2]|0; + HEAP32[$vararg_buffer22>>2] = $70; + $vararg_ptr25 = (($vararg_buffer22) + 4|0); + HEAP32[$vararg_ptr25>>2] = $73; + _fts3DbExec($rc,$67,8704,$vararg_buffer22); + } + $74 = HEAP32[$0>>2]|0; + $75 = (($74) + 229|0); + $76 = HEAP8[$75>>0]|0; + $77 = ($76<<24>>24)!=(0); + if (!($77)) { + $79 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($79|0); + } + $78 = HEAP32[$0>>2]|0; + _sqlite3Fts3CreateStatTable($rc,$78); + $79 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($79|0); +} +function _fts3DatabasePageSize($pRc,$p) { + $pRc = $pRc|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pStmt = 0, $rc = 0, $vararg_buffer = 0, $zSql = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 20|0; + $1 = sp + 4|0; + $rc = sp + 8|0; + $zSql = sp + 12|0; + $pStmt = sp + 16|0; + HEAP32[$0>>2] = $pRc; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)==(0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 16|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$vararg_buffer>>2] = $7; + $8 = (_sqlite3_mprintf(8344,$vararg_buffer)|0); + HEAP32[$zSql>>2] = $8; + $9 = HEAP32[$zSql>>2]|0; + $10 = ($9|0)!=(0|0); + do { + if ($10) { + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 12|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$zSql>>2]|0; + $15 = (_sqlite3_prepare($13,$14,-1,$pStmt,0)|0); + HEAP32[$rc>>2] = $15; + $16 = HEAP32[$rc>>2]|0; + $17 = ($16|0)==(0); + if ($17) { + $18 = HEAP32[$pStmt>>2]|0; + (_sqlite3_step($18)|0); + $19 = HEAP32[$pStmt>>2]|0; + $20 = (_sqlite3_column_int($19,0)|0); + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 236|0); + HEAP32[$22>>2] = $20; + $23 = HEAP32[$pStmt>>2]|0; + $24 = (_sqlite3_finalize($23)|0); + HEAP32[$rc>>2] = $24; + break; + } + $25 = HEAP32[$rc>>2]|0; + $26 = ($25|0)==(23); + if ($26) { + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 236|0); + HEAP32[$28>>2] = 1024; + HEAP32[$rc>>2] = 0; + } + } else { + HEAP32[$rc>>2] = 7; + } + } while(0); + $29 = HEAP32[$zSql>>2]|0; + _sqlite3_free($29); + $30 = HEAP32[$rc>>2]|0; + $31 = HEAP32[$0>>2]|0; + HEAP32[$31>>2] = $30; + STACKTOP = sp;return; +} +function _fts3DeclareVtab($pRc,$p) { + $pRc = $pRc|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $rc = 0, $vararg_buffer8 = 0; + var $vararg_ptr11 = 0, $vararg_ptr12 = 0, $vararg_ptr7 = 0, $zCols = 0, $zLanguageid = 0, $zSql = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer8 = sp; + $0 = sp + 36|0; + $1 = sp + 12|0; + $i = sp + 16|0; + $rc = sp + 20|0; + $zSql = sp + 24|0; + $zCols = sp + 28|0; + $zLanguageid = sp + 32|0; + HEAP32[$0>>2] = $pRc; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)==(0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 44|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 44|0); + $11 = HEAP32[$10>>2]|0; + $12 = $11; + } else { + $12 = 8256; + } + HEAP32[$zLanguageid>>2] = $12; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 12|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$vararg_buffer8>>2] = 1; + (_sqlite3_vtab_config($15,1,$vararg_buffer8)|0); + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 28|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$18>>2]|0; + HEAP32[$vararg_buffer8>>2] = $19; + $20 = (_sqlite3_mprintf(8272,$vararg_buffer8)|0); + HEAP32[$zCols>>2] = $20; + HEAP32[$i>>2] = 1; + while(1) { + $21 = HEAP32[$zCols>>2]|0; + $22 = ($21|0)!=(0|0); + if ($22) { + $23 = HEAP32[$i>>2]|0; + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 24|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($23|0)<($26|0); + $56 = $27; + } else { + $56 = 0; + } + $28 = HEAP32[$zCols>>2]|0; + if (!($56)) { + break; + } + $29 = HEAP32[$i>>2]|0; + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 28|0); + $32 = HEAP32[$31>>2]|0; + $33 = (($32) + ($29<<2)|0); + $34 = HEAP32[$33>>2]|0; + HEAP32[$vararg_buffer8>>2] = $28; + $vararg_ptr7 = (($vararg_buffer8) + 4|0); + HEAP32[$vararg_ptr7>>2] = $34; + $35 = (_sqlite3_mprintf(8280,$vararg_buffer8)|0); + HEAP32[$zCols>>2] = $35; + $36 = HEAP32[$i>>2]|0; + $37 = (($36) + 1)|0; + HEAP32[$i>>2] = $37; + } + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 20|0); + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$zLanguageid>>2]|0; + HEAP32[$vararg_buffer8>>2] = $28; + $vararg_ptr11 = (($vararg_buffer8) + 4|0); + HEAP32[$vararg_ptr11>>2] = $40; + $vararg_ptr12 = (($vararg_buffer8) + 8|0); + HEAP32[$vararg_ptr12>>2] = $41; + $42 = (_sqlite3_mprintf(8288,$vararg_buffer8)|0); + HEAP32[$zSql>>2] = $42; + $43 = HEAP32[$zCols>>2]|0; + $44 = ($43|0)!=(0|0); + if ($44) { + $45 = HEAP32[$zSql>>2]|0; + $46 = ($45|0)!=(0|0); + if ($46) { + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 12|0); + $49 = HEAP32[$48>>2]|0; + $50 = HEAP32[$zSql>>2]|0; + $51 = (_sqlite3_declare_vtab($49,$50)|0); + HEAP32[$rc>>2] = $51; + } else { + label = 11; + } + } else { + label = 11; + } + if ((label|0) == 11) { + HEAP32[$rc>>2] = 7; + } + $52 = HEAP32[$zSql>>2]|0; + _sqlite3_free($52); + $53 = HEAP32[$zCols>>2]|0; + _sqlite3_free($53); + $54 = HEAP32[$rc>>2]|0; + $55 = HEAP32[$0>>2]|0; + HEAP32[$55>>2] = $54; + STACKTOP = sp;return; +} +function _fts3QuoteId($zInput) { + $zInput = $zInput|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0; + var $nRet = 0, $z = 0, $zRet = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $nRet = sp; + $zRet = sp + 4|0; + $i = sp + 8|0; + $z = sp + 12|0; + HEAP32[$0>>2] = $zInput; + $1 = HEAP32[$0>>2]|0; + $2 = (_strlen(($1|0))|0); + $3 = $2<<1; + $4 = (2 + ($3))|0; + $5 = (($4) + 1)|0; + HEAP32[$nRet>>2] = $5; + $6 = HEAP32[$nRet>>2]|0; + $7 = (_sqlite3_malloc($6)|0); + HEAP32[$zRet>>2] = $7; + $8 = HEAP32[$zRet>>2]|0; + $9 = ($8|0)!=(0|0); + if (!($9)) { + $38 = HEAP32[$zRet>>2]|0; + STACKTOP = sp;return ($38|0); + } + $10 = HEAP32[$zRet>>2]|0; + HEAP32[$z>>2] = $10; + $11 = HEAP32[$z>>2]|0; + $12 = (($11) + 1|0); + HEAP32[$z>>2] = $12; + HEAP8[$11>>0] = 34; + HEAP32[$i>>2] = 0; + while(1) { + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + ($13)|0); + $16 = HEAP8[$15>>0]|0; + $17 = ($16<<24>>24)!=(0); + if (!($17)) { + break; + } + $18 = HEAP32[$i>>2]|0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + ($18)|0); + $21 = HEAP8[$20>>0]|0; + $22 = $21 << 24 >> 24; + $23 = ($22|0)==(34); + if ($23) { + $24 = HEAP32[$z>>2]|0; + $25 = (($24) + 1|0); + HEAP32[$z>>2] = $25; + HEAP8[$24>>0] = 34; + } + $26 = HEAP32[$i>>2]|0; + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + ($26)|0); + $29 = HEAP8[$28>>0]|0; + $30 = HEAP32[$z>>2]|0; + $31 = (($30) + 1|0); + HEAP32[$z>>2] = $31; + HEAP8[$30>>0] = $29; + $32 = HEAP32[$i>>2]|0; + $33 = (($32) + 1)|0; + HEAP32[$i>>2] = $33; + } + $34 = HEAP32[$z>>2]|0; + $35 = (($34) + 1|0); + HEAP32[$z>>2] = $35; + HEAP8[$34>>0] = 34; + $36 = HEAP32[$z>>2]|0; + $37 = (($36) + 1|0); + HEAP32[$z>>2] = $37; + HEAP8[$36>>0] = 0; + $38 = HEAP32[$zRet>>2]|0; + STACKTOP = sp;return ($38|0); +} +function _fts3Appendf($pRc,$pz,$zFormat,$varargs) { + $pRc = $pRc|0; + $pz = $pz|0; + $zFormat = $zFormat|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ap = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $z = 0, $z2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 40|0; + $1 = sp + 8|0; + $2 = sp + 12|0; + $ap = sp + 16|0; + $z = sp + 32|0; + $z2 = sp + 36|0; + HEAP32[$0>>2] = $pRc; + HEAP32[$1>>2] = $pz; + HEAP32[$2>>2] = $zFormat; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)==(0); + if (!($5)) { + STACKTOP = sp;return; + } + HEAP32[$ap>>2] = $varargs; + $6 = HEAP32[$2>>2]|0; + $7 = (_sqlite3_vmprintf($6,$ap)|0); + HEAP32[$z>>2] = $7; + $8 = HEAP32[$z>>2]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0|0); + if ($12) { + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$z>>2]|0; + HEAP32[$vararg_buffer>>2] = $14; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $15; + $16 = (_sqlite3_mprintf(8800,$vararg_buffer)|0); + HEAP32[$z2>>2] = $16; + $17 = HEAP32[$z>>2]|0; + _sqlite3_free($17); + $18 = HEAP32[$z2>>2]|0; + HEAP32[$z>>2] = $18; + } + } + $19 = HEAP32[$z>>2]|0; + $20 = ($19|0)==(0|0); + if ($20) { + $21 = HEAP32[$0>>2]|0; + HEAP32[$21>>2] = 7; + } + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$22>>2]|0; + _sqlite3_free($23); + $24 = HEAP32[$z>>2]|0; + $25 = HEAP32[$1>>2]|0; + HEAP32[$25>>2] = $24; + STACKTOP = sp;return; +} +function _fts3GobbleInt($pp,$pnOut) { + $pp = $pp|0; + $pnOut = $pnOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nInt = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + $nInt = sp + 12|0; + HEAP32[$1>>2] = $pp; + HEAP32[$2>>2] = $pnOut; + HEAP32[$nInt>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$p>>2] = $4; + while(1) { + $5 = HEAP32[$p>>2]|0; + $6 = HEAP8[$5>>0]|0; + $7 = $6 << 24 >> 24; + $8 = ($7|0)>=(48); + if (!($8)) { + break; + } + $9 = HEAP32[$p>>2]|0; + $10 = HEAP8[$9>>0]|0; + $11 = $10 << 24 >> 24; + $12 = ($11|0)<=(57); + if (!($12)) { + break; + } + $13 = HEAP32[$nInt>>2]|0; + $14 = ($13*10)|0; + $15 = HEAP32[$p>>2]|0; + $16 = HEAP8[$15>>0]|0; + $17 = $16 << 24 >> 24; + $18 = (($17) - 48)|0; + $19 = (($14) + ($18))|0; + HEAP32[$nInt>>2] = $19; + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 1|0); + HEAP32[$p>>2] = $21; + } + $22 = HEAP32[$p>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$23>>2]|0; + $25 = ($22|0)==($24|0); + if ($25) { + HEAP32[$0>>2] = 1; + $30 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($30|0); + } else { + $26 = HEAP32[$nInt>>2]|0; + $27 = HEAP32[$2>>2]|0; + HEAP32[$27>>2] = $26; + $28 = HEAP32[$p>>2]|0; + $29 = HEAP32[$1>>2]|0; + HEAP32[$29>>2] = $28; + HEAP32[$0>>2] = 0; + $30 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($30|0); + } + return 0|0; +} +function _scalarFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, $nName = 0, $pHash = 0, $pOld = 0, $pPtr = 0, $vararg_buffer = 0, $zErr = 0, $zName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $pHash = sp + 24|0; + $pPtr = sp + 40|0; + $zName = sp + 12|0; + $nName = sp + 8|0; + $pOld = sp + 4|0; + $n = sp + 16|0; + $zErr = sp + 20|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + HEAP32[$pPtr>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3_user_data($3)|0); + HEAP32[$pHash>>2] = $4; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = (_sqlite3_value_text($6)|0); + HEAP32[$zName>>2] = $7; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = (_sqlite3_value_bytes($9)|0); + $11 = (($10) + 1)|0; + HEAP32[$nName>>2] = $11; + $12 = HEAP32[$1>>2]|0; + $13 = ($12|0)==(2); + if ($13) { + $14 = HEAP32[$2>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = (_sqlite3_value_bytes($16)|0); + HEAP32[$n>>2] = $17; + $18 = HEAP32[$n>>2]|0; + $19 = ($18|0)!=(4); + if ($19) { + $20 = HEAP32[$0>>2]|0; + _sqlite3_result_error($20,9088,-1); + STACKTOP = sp;return; + } + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = (_sqlite3_value_blob($23)|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$pPtr>>2] = $25; + $26 = HEAP32[$pHash>>2]|0; + $27 = HEAP32[$zName>>2]|0; + $28 = HEAP32[$nName>>2]|0; + $29 = HEAP32[$pPtr>>2]|0; + $30 = (_sqlite3Fts3HashInsert($26,$27,$28,$29)|0); + HEAP32[$pOld>>2] = $30; + $31 = HEAP32[$pOld>>2]|0; + $32 = HEAP32[$pPtr>>2]|0; + $33 = ($31|0)==($32|0); + if ($33) { + $34 = HEAP32[$0>>2]|0; + _sqlite3_result_error($34,9112,-1); + STACKTOP = sp;return; + } + } else { + $35 = HEAP32[$pHash>>2]|0; + $36 = HEAP32[$zName>>2]|0; + $37 = HEAP32[$nName>>2]|0; + $38 = (_sqlite3Fts3HashFind($35,$36,$37)|0); + HEAP32[$pPtr>>2] = $38; + $39 = HEAP32[$pPtr>>2]|0; + $40 = ($39|0)!=(0|0); + if (!($40)) { + $41 = HEAP32[$zName>>2]|0; + HEAP32[$vararg_buffer>>2] = $41; + $42 = (_sqlite3_mprintf(4032,$vararg_buffer)|0); + HEAP32[$zErr>>2] = $42; + $43 = HEAP32[$0>>2]|0; + $44 = HEAP32[$zErr>>2]|0; + _sqlite3_result_error($43,$44,-1); + $45 = HEAP32[$zErr>>2]|0; + _sqlite3_free($45); + STACKTOP = sp;return; + } + } + $46 = HEAP32[$0>>2]|0; + _sqlite3_result_blob($46,$pPtr,4,(-1)); + STACKTOP = sp;return; +} +function _fts3RemoveElementByHash($pH,$elem,$h) { + $pH = $pH|0; + $elem = $elem|0; + $h = $h|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $pEntry = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pEntry = sp + 8|0; + HEAP32[$0>>2] = $pH; + HEAP32[$1>>2] = $elem; + HEAP32[$2>>2] = $h; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + if ($6) { + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 4|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$11>>2] = $8; + } else { + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 8|0); + HEAP32[$13>>2] = $8; + } + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + 4|0); + HEAP32[$22>>2] = $19; + } + $23 = HEAP32[$2>>2]|0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 16|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($26) + ($23<<3)|0); + HEAP32[$pEntry>>2] = $27; + $28 = HEAP32[$pEntry>>2]|0; + $29 = (($28) + 4|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$1>>2]|0; + $32 = ($30|0)==($31|0); + if ($32) { + $33 = HEAP32[$1>>2]|0; + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$pEntry>>2]|0; + $36 = (($35) + 4|0); + HEAP32[$36>>2] = $34; + } + $37 = HEAP32[$pEntry>>2]|0; + $38 = HEAP32[$37>>2]|0; + $39 = (($38) + -1)|0; + HEAP32[$37>>2] = $39; + $40 = HEAP32[$pEntry>>2]|0; + $41 = HEAP32[$40>>2]|0; + $42 = ($41|0)<=(0); + if ($42) { + $43 = HEAP32[$pEntry>>2]|0; + $44 = (($43) + 4|0); + HEAP32[$44>>2] = 0; + } + $45 = HEAP32[$0>>2]|0; + $46 = (($45) + 1|0); + $47 = HEAP8[$46>>0]|0; + $48 = $47 << 24 >> 24; + $49 = ($48|0)!=(0); + if ($49) { + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 12|0); + $52 = HEAP32[$51>>2]|0; + $53 = ($52|0)!=(0|0); + if ($53) { + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 12|0); + $56 = HEAP32[$55>>2]|0; + _fts3HashFree($56); + } + } + $57 = HEAP32[$1>>2]|0; + _fts3HashFree($57); + $58 = HEAP32[$0>>2]|0; + $59 = (($58) + 4|0); + $60 = HEAP32[$59>>2]|0; + $61 = (($60) + -1)|0; + HEAP32[$59>>2] = $61; + $62 = HEAP32[$0>>2]|0; + $63 = (($62) + 4|0); + $64 = HEAP32[$63>>2]|0; + $65 = ($64|0)<=(0); + if (!($65)) { + STACKTOP = sp;return; + } + $66 = HEAP32[$0>>2]|0; + _sqlite3Fts3HashClear($66); + STACKTOP = sp;return; +} +function _fts3Rehash($pH,$new_size) { + $pH = $pH|0; + $new_size = $new_size|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $elem = 0, $h = 0, $new_ht = 0, $next_elem = 0, $xHash = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $new_ht = sp + 8|0; + $elem = sp + 12|0; + $next_elem = sp + 16|0; + $xHash = sp + 20|0; + $h = sp + 24|0; + HEAP32[$1>>2] = $pH; + HEAP32[$2>>2] = $new_size; + $3 = HEAP32[$2>>2]|0; + $4 = $3<<3; + $5 = (_fts3HashMalloc($4)|0); + HEAP32[$new_ht>>2] = $5; + $6 = HEAP32[$new_ht>>2]|0; + $7 = ($6|0)==(0|0); + if ($7) { + HEAP32[$0>>2] = 1; + $47 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($47|0); + } + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 16|0); + $10 = HEAP32[$9>>2]|0; + _fts3HashFree($10); + $11 = HEAP32[$new_ht>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 16|0); + HEAP32[$13>>2] = $11; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 12|0); + HEAP32[$16>>2] = $14; + $17 = HEAP32[$1>>2]|0; + $18 = HEAP8[$17>>0]|0; + $19 = $18 << 24 >> 24; + $20 = (_ftsHashFunction($19)|0); + HEAP32[$xHash>>2] = $20; + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 8|0); + $23 = HEAP32[$22>>2]|0; + HEAP32[$elem>>2] = $23; + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 8|0); + HEAP32[$25>>2] = 0; + while(1) { + $26 = HEAP32[$elem>>2]|0; + $27 = ($26|0)!=(0|0); + if (!($27)) { + break; + } + $28 = HEAP32[$xHash>>2]|0; + $29 = HEAP32[$elem>>2]|0; + $30 = (($29) + 12|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$elem>>2]|0; + $33 = (($32) + 16|0); + $34 = HEAP32[$33>>2]|0; + $35 = (FUNCTION_TABLE_iii[$28 & 127]($31,$34)|0); + $36 = HEAP32[$2>>2]|0; + $37 = (($36) - 1)|0; + $38 = $35 & $37; + HEAP32[$h>>2] = $38; + $39 = HEAP32[$elem>>2]|0; + $40 = HEAP32[$39>>2]|0; + HEAP32[$next_elem>>2] = $40; + $41 = HEAP32[$1>>2]|0; + $42 = HEAP32[$h>>2]|0; + $43 = HEAP32[$new_ht>>2]|0; + $44 = (($43) + ($42<<3)|0); + $45 = HEAP32[$elem>>2]|0; + _fts3HashInsertElement($41,$44,$45); + $46 = HEAP32[$next_elem>>2]|0; + HEAP32[$elem>>2] = $46; + } + HEAP32[$0>>2] = 0; + $47 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($47|0); +} +function _fts3HashMalloc($n) { + $n = $n|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $n; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3_malloc($1)|0); + HEAP32[$p>>2] = $2; + $3 = HEAP32[$p>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + $7 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($7|0); + } + $5 = HEAP32[$p>>2]|0; + $6 = HEAP32[$0>>2]|0; + _memset(($5|0),0,($6|0))|0; + $7 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($7|0); +} +function _fts3HashInsertElement($pH,$pEntry,$pNew) { + $pH = $pH|0; + $pEntry = $pEntry|0; + $pNew = $pNew|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pHead = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pHead = sp + 8|0; + HEAP32[$0>>2] = $pH; + HEAP32[$1>>2] = $pEntry; + HEAP32[$2>>2] = $pNew; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pHead>>2] = $5; + $6 = HEAP32[$pHead>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 8|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$2>>2]|0; + HEAP32[$31>>2] = $30; + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 8|0); + $34 = HEAP32[$33>>2]|0; + $35 = ($34|0)!=(0|0); + if ($35) { + $36 = HEAP32[$2>>2]|0; + $37 = HEAP32[$0>>2]|0; + $38 = (($37) + 8|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + 4|0); + HEAP32[$40>>2] = $36; + } + $41 = HEAP32[$2>>2]|0; + $42 = (($41) + 4|0); + HEAP32[$42>>2] = 0; + $43 = HEAP32[$2>>2]|0; + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 8|0); + HEAP32[$45>>2] = $43; + $46 = HEAP32[$1>>2]|0; + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + 1)|0; + HEAP32[$46>>2] = $48; + $49 = HEAP32[$2>>2]|0; + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 4|0); + HEAP32[$51>>2] = $49; + STACKTOP = sp;return; + } + $8 = HEAP32[$pHead>>2]|0; + $9 = HEAP32[$2>>2]|0; + HEAP32[$9>>2] = $8; + $10 = HEAP32[$pHead>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 4|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$pHead>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)!=(0|0); + $19 = HEAP32[$2>>2]|0; + if ($18) { + $20 = HEAP32[$pHead>>2]|0; + $21 = (($20) + 4|0); + $22 = HEAP32[$21>>2]|0; + HEAP32[$22>>2] = $19; + } else { + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 8|0); + HEAP32[$24>>2] = $19; + } + $25 = HEAP32[$2>>2]|0; + $26 = HEAP32[$pHead>>2]|0; + $27 = (($26) + 4|0); + HEAP32[$27>>2] = $25; + $46 = HEAP32[$1>>2]|0; + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + 1)|0; + HEAP32[$46>>2] = $48; + $49 = HEAP32[$2>>2]|0; + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 4|0); + HEAP32[$51>>2] = $49; + STACKTOP = sp;return; +} +function _porterCreate($argc,$argv,$ppTokenizer) { + $argc = $argc|0; + $argv = $argv|0; + $ppTokenizer = $ppTokenizer|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $t = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $t = sp + 12|0; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + HEAP32[$3>>2] = $ppTokenizer; + $4 = (_sqlite3_malloc(4)|0); + HEAP32[$t>>2] = $4; + $5 = HEAP32[$t>>2]|0; + $6 = ($5|0)==(0|0); + if ($6) { + HEAP32[$0>>2] = 7; + $10 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($10|0); + } else { + $7 = HEAP32[$t>>2]|0; + ;HEAP32[$7+0>>2]=0|0; + $8 = HEAP32[$t>>2]|0; + $9 = HEAP32[$3>>2]|0; + HEAP32[$9>>2] = $8; + HEAP32[$0>>2] = 0; + $10 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($10|0); + } + return 0|0; +} +function _porterDestroy($pTokenizer) { + $pTokenizer = $pTokenizer|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pTokenizer; + $1 = HEAP32[$0>>2]|0; + _sqlite3_free($1); + STACKTOP = sp;return 0; +} +function _porterOpen($pTokenizer,$zInput,$nInput,$ppCursor) { + $pTokenizer = $pTokenizer|0; + $zInput = $zInput|0; + $nInput = $nInput|0; + $ppCursor = $ppCursor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $c = sp + 16|0; + HEAP32[$1>>2] = $pTokenizer; + HEAP32[$2>>2] = $zInput; + HEAP32[$3>>2] = $nInput; + HEAP32[$4>>2] = $ppCursor; + $5 = (_sqlite3_malloc(28)|0); + HEAP32[$c>>2] = $5; + $6 = HEAP32[$c>>2]|0; + $7 = ($6|0)==(0|0); + if ($7) { + HEAP32[$0>>2] = 7; + $34 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($34|0); + } + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$c>>2]|0; + $10 = (($9) + 4|0); + HEAP32[$10>>2] = $8; + $11 = HEAP32[$2>>2]|0; + $12 = ($11|0)==(0|0); + do { + if ($12) { + $13 = HEAP32[$c>>2]|0; + $14 = (($13) + 8|0); + HEAP32[$14>>2] = 0; + } else { + $15 = HEAP32[$3>>2]|0; + $16 = ($15|0)<(0); + if ($16) { + $17 = HEAP32[$2>>2]|0; + $18 = (_strlen(($17|0))|0); + $19 = HEAP32[$c>>2]|0; + $20 = (($19) + 8|0); + HEAP32[$20>>2] = $18; + break; + } else { + $21 = HEAP32[$3>>2]|0; + $22 = HEAP32[$c>>2]|0; + $23 = (($22) + 8|0); + HEAP32[$23>>2] = $21; + break; + } + } + } while(0); + $24 = HEAP32[$c>>2]|0; + $25 = (($24) + 12|0); + HEAP32[$25>>2] = 0; + $26 = HEAP32[$c>>2]|0; + $27 = (($26) + 16|0); + HEAP32[$27>>2] = 0; + $28 = HEAP32[$c>>2]|0; + $29 = (($28) + 20|0); + HEAP32[$29>>2] = 0; + $30 = HEAP32[$c>>2]|0; + $31 = (($30) + 24|0); + HEAP32[$31>>2] = 0; + $32 = HEAP32[$c>>2]|0; + $33 = HEAP32[$4>>2]|0; + HEAP32[$33>>2] = $32; + HEAP32[$0>>2] = 0; + $34 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($34|0); +} +function _porterClose($pCursor) { + $pCursor = $pCursor|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $c = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $c = sp; + HEAP32[$0>>2] = $pCursor; + $1 = HEAP32[$0>>2]|0; + HEAP32[$c>>2] = $1; + $2 = HEAP32[$c>>2]|0; + $3 = (($2) + 20|0); + $4 = HEAP32[$3>>2]|0; + _sqlite3_free($4); + $5 = HEAP32[$c>>2]|0; + _sqlite3_free($5); + STACKTOP = sp;return 0; +} +function _porterNext($pCursor,$pzToken,$pnBytes,$piStartOffset,$piEndOffset,$piPosition) { + $pCursor = $pCursor|0; + $pzToken = $pzToken|0; + $pnBytes = $pnBytes|0; + $piStartOffset = $piStartOffset|0; + $piEndOffset = $piEndOffset|0; + $piPosition = $piPosition|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $ch = 0, $iStartOffset = 0, $n = 0, $pNew = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 48|0; + $1 = sp + 44|0; + $2 = sp + 40|0; + $3 = sp + 36|0; + $4 = sp + 32|0; + $5 = sp + 28|0; + $6 = sp + 24|0; + $c = sp + 16|0; + $z = sp + 12|0; + $iStartOffset = sp + 8|0; + $ch = sp + 4|0; + $n = sp; + $pNew = sp + 20|0; + HEAP32[$1>>2] = $pCursor; + HEAP32[$2>>2] = $pzToken; + HEAP32[$3>>2] = $pnBytes; + HEAP32[$4>>2] = $piStartOffset; + HEAP32[$5>>2] = $piEndOffset; + HEAP32[$6>>2] = $piPosition; + $7 = HEAP32[$1>>2]|0; + HEAP32[$c>>2] = $7; + $8 = HEAP32[$c>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$z>>2] = $10; + while(1) { + $11 = HEAP32[$c>>2]|0; + $12 = (($11) + 12|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$c>>2]|0; + $15 = (($14) + 8|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($13|0)<($16|0); + if (!($17)) { + label = 23; + break; + } + while(1) { + $18 = HEAP32[$c>>2]|0; + $19 = (($18) + 12|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$c>>2]|0; + $22 = (($21) + 8|0); + $23 = HEAP32[$22>>2]|0; + $24 = ($20|0)<($23|0); + if ($24) { + $25 = HEAP32[$c>>2]|0; + $26 = (($25) + 12|0); + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$z>>2]|0; + $29 = (($28) + ($27)|0); + $30 = HEAP8[$29>>0]|0; + $31 = $30 << 24 >> 24; + HEAP32[$ch>>2] = $31; + $32 = $31 & 128; + $33 = ($32|0)==(0); + if ($33) { + $34 = HEAP32[$ch>>2]|0; + $35 = ($34|0)<(48); + if ($35) { + $128 = 1; + } else { + $36 = HEAP32[$ch>>2]|0; + $37 = (($36) - 48)|0; + $38 = (9160 + ($37)|0); + $39 = HEAP8[$38>>0]|0; + $40 = ($39<<24>>24)!=(0); + $41 = $40 ^ 1; + $128 = $41; + } + } else { + $128 = 0; + } + } else { + $128 = 0; + } + $42 = HEAP32[$c>>2]|0; + $43 = (($42) + 12|0); + $44 = HEAP32[$43>>2]|0; + if (!($128)) { + break; + } + $45 = (($44) + 1)|0; + HEAP32[$43>>2] = $45; + } + HEAP32[$iStartOffset>>2] = $44; + while(1) { + $46 = HEAP32[$c>>2]|0; + $47 = (($46) + 12|0); + $48 = HEAP32[$47>>2]|0; + $49 = HEAP32[$c>>2]|0; + $50 = (($49) + 8|0); + $51 = HEAP32[$50>>2]|0; + $52 = ($48|0)<($51|0); + if ($52) { + $53 = HEAP32[$c>>2]|0; + $54 = (($53) + 12|0); + $55 = HEAP32[$54>>2]|0; + $56 = HEAP32[$z>>2]|0; + $57 = (($56) + ($55)|0); + $58 = HEAP8[$57>>0]|0; + $59 = $58 << 24 >> 24; + HEAP32[$ch>>2] = $59; + $60 = $59 & 128; + $61 = ($60|0)==(0); + if ($61) { + $62 = HEAP32[$ch>>2]|0; + $63 = ($62|0)<(48); + if ($63) { + $71 = 1; + } else { + $64 = HEAP32[$ch>>2]|0; + $65 = (($64) - 48)|0; + $66 = (9160 + ($65)|0); + $67 = HEAP8[$66>>0]|0; + $68 = ($67<<24>>24)!=(0); + $69 = $68 ^ 1; + $71 = $69; + } + } else { + $71 = 0; + } + $70 = $71 ^ 1; + $129 = $70; + } else { + $129 = 0; + } + $72 = HEAP32[$c>>2]|0; + $73 = (($72) + 12|0); + $74 = HEAP32[$73>>2]|0; + if (!($129)) { + break; + } + $75 = (($74) + 1)|0; + HEAP32[$73>>2] = $75; + } + $76 = HEAP32[$iStartOffset>>2]|0; + $77 = ($74|0)>($76|0); + if ($77) { + break; + } + } + if ((label|0) == 23) { + HEAP32[$0>>2] = 101; + $127 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($127|0); + } + $78 = HEAP32[$c>>2]|0; + $79 = (($78) + 12|0); + $80 = HEAP32[$79>>2]|0; + $81 = HEAP32[$iStartOffset>>2]|0; + $82 = (($80) - ($81))|0; + HEAP32[$n>>2] = $82; + $83 = HEAP32[$n>>2]|0; + $84 = HEAP32[$c>>2]|0; + $85 = (($84) + 24|0); + $86 = HEAP32[$85>>2]|0; + $87 = ($83|0)>($86|0); + do { + if ($87) { + $88 = HEAP32[$n>>2]|0; + $89 = (($88) + 20)|0; + $90 = HEAP32[$c>>2]|0; + $91 = (($90) + 24|0); + HEAP32[$91>>2] = $89; + $92 = HEAP32[$c>>2]|0; + $93 = (($92) + 20|0); + $94 = HEAP32[$93>>2]|0; + $95 = HEAP32[$c>>2]|0; + $96 = (($95) + 24|0); + $97 = HEAP32[$96>>2]|0; + $98 = (_sqlite3_realloc($94,$97)|0); + HEAP32[$pNew>>2] = $98; + $99 = HEAP32[$pNew>>2]|0; + $100 = ($99|0)!=(0|0); + if ($100) { + $101 = HEAP32[$pNew>>2]|0; + $102 = HEAP32[$c>>2]|0; + $103 = (($102) + 20|0); + HEAP32[$103>>2] = $101; + break; + } + HEAP32[$0>>2] = 7; + $127 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($127|0); + } + } while(0); + $104 = HEAP32[$iStartOffset>>2]|0; + $105 = HEAP32[$z>>2]|0; + $106 = (($105) + ($104)|0); + $107 = HEAP32[$n>>2]|0; + $108 = HEAP32[$c>>2]|0; + $109 = (($108) + 20|0); + $110 = HEAP32[$109>>2]|0; + $111 = HEAP32[$3>>2]|0; + _porter_stemmer($106,$107,$110,$111); + $112 = HEAP32[$c>>2]|0; + $113 = (($112) + 20|0); + $114 = HEAP32[$113>>2]|0; + $115 = HEAP32[$2>>2]|0; + HEAP32[$115>>2] = $114; + $116 = HEAP32[$iStartOffset>>2]|0; + $117 = HEAP32[$4>>2]|0; + HEAP32[$117>>2] = $116; + $118 = HEAP32[$c>>2]|0; + $119 = (($118) + 12|0); + $120 = HEAP32[$119>>2]|0; + $121 = HEAP32[$5>>2]|0; + HEAP32[$121>>2] = $120; + $122 = HEAP32[$c>>2]|0; + $123 = (($122) + 16|0); + $124 = HEAP32[$123>>2]|0; + $125 = (($124) + 1)|0; + HEAP32[$123>>2] = $125; + $126 = HEAP32[$6>>2]|0; + HEAP32[$126>>2] = $124; + HEAP32[$0>>2] = 0; + $127 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($127|0); +} +function _porter_stemmer($zIn,$nIn,$zOut,$pnOut) { + $zIn = $zIn|0; + $nIn = $nIn|0; + $zOut = $zOut|0; + $pnOut = $pnOut|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $i = 0, $j = 0, $or$cond = 0, $z = 0; + var $z2 = 0, $zReverse = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 8|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $i = sp + 12|0; + $j = sp + 16|0; + $zReverse = sp + 36|0; + $z = sp + 4|0; + $z2 = sp; + $c = sp + 32|0; + HEAP32[$0>>2] = $zIn; + HEAP32[$1>>2] = $nIn; + HEAP32[$2>>2] = $zOut; + HEAP32[$3>>2] = $pnOut; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)<(3); + $6 = HEAP32[$1>>2]|0; + $7 = ($6|0)>=(21); + $or$cond = $5 | $7; + if ($or$cond) { + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$3>>2]|0; + _copy_stemmer($8,$9,$10,$11); + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + HEAP32[$j>>2] = 22; + while(1) { + $12 = HEAP32[$i>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = ($12|0)<($13|0); + if (!($14)) { + break; + } + $15 = HEAP32[$i>>2]|0; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + ($15)|0); + $18 = HEAP8[$17>>0]|0; + HEAP8[$c>>0] = $18; + $19 = HEAP8[$c>>0]|0; + $20 = $19 << 24 >> 24; + $21 = ($20|0)>=(65); + if ($21) { + $22 = HEAP8[$c>>0]|0; + $23 = $22 << 24 >> 24; + $24 = ($23|0)<=(90); + if ($24) { + $25 = HEAP8[$c>>0]|0; + $26 = $25 << 24 >> 24; + $27 = (($26) + 97)|0; + $28 = (($27) - 65)|0; + $29 = $28&255; + $30 = HEAP32[$j>>2]|0; + $31 = (($zReverse) + ($30)|0); + HEAP8[$31>>0] = $29; + } else { + label = 8; + } + } else { + label = 8; + } + if ((label|0) == 8) { + label = 0; + $32 = HEAP8[$c>>0]|0; + $33 = $32 << 24 >> 24; + $34 = ($33|0)>=(97); + if (!($34)) { + label = 11; + break; + } + $35 = HEAP8[$c>>0]|0; + $36 = $35 << 24 >> 24; + $37 = ($36|0)<=(122); + if (!($37)) { + label = 11; + break; + } + $38 = HEAP8[$c>>0]|0; + $39 = HEAP32[$j>>2]|0; + $40 = (($zReverse) + ($39)|0); + HEAP8[$40>>0] = $38; + } + $45 = HEAP32[$i>>2]|0; + $46 = (($45) + 1)|0; + HEAP32[$i>>2] = $46; + $47 = HEAP32[$j>>2]|0; + $48 = (($47) + -1)|0; + HEAP32[$j>>2] = $48; + } + if ((label|0) == 11) { + $41 = HEAP32[$0>>2]|0; + $42 = HEAP32[$1>>2]|0; + $43 = HEAP32[$2>>2]|0; + $44 = HEAP32[$3>>2]|0; + _copy_stemmer($41,$42,$43,$44); + STACKTOP = sp;return; + } + $49 = (($zReverse) + 23|0); + ;HEAP8[$49+0>>0]=0|0;HEAP8[$49+1>>0]=0|0;HEAP8[$49+2>>0]=0|0;HEAP8[$49+3>>0]=0|0;HEAP8[$49+4>>0]=0|0; + $50 = HEAP32[$j>>2]|0; + $51 = (($50) + 1)|0; + $52 = (($zReverse) + ($51)|0); + HEAP32[$z>>2] = $52; + $53 = HEAP32[$z>>2]|0; + $54 = HEAP8[$53>>0]|0; + $55 = $54 << 24 >> 24; + $56 = ($55|0)==(115); + if ($56) { + $57 = (_stem($z,9240,9248,0)|0); + $58 = ($57|0)!=(0); + if (!($58)) { + $59 = (_stem($z,9256,9264,0)|0); + $60 = ($59|0)!=(0); + if (!($60)) { + $61 = (_stem($z,9248,9248,0)|0); + $62 = ($61|0)!=(0); + if (!($62)) { + $63 = HEAP32[$z>>2]|0; + $64 = (($63) + 1|0); + HEAP32[$z>>2] = $64; + } + } + } + } + $65 = HEAP32[$z>>2]|0; + HEAP32[$z2>>2] = $65; + $66 = (_stem($z,9272,9280,43)|0); + $67 = ($66|0)!=(0); + do { + if (!($67)) { + $68 = (_stem($z,9288,1784,44)|0); + $69 = ($68|0)!=(0); + if (!($69)) { + $70 = (_stem($z,9296,1784,44)|0); + $71 = ($70|0)!=(0); + if (!($71)) { + break; + } + } + $72 = HEAP32[$z>>2]|0; + $73 = HEAP32[$z2>>2]|0; + $74 = ($72|0)!=($73|0); + if ($74) { + $75 = (_stem($z,9304,9312,0)|0); + $76 = ($75|0)!=(0); + if (!($76)) { + $77 = (_stem($z,9320,9328,0)|0); + $78 = ($77|0)!=(0); + if (!($78)) { + $79 = (_stem($z,9336,9344,0)|0); + $80 = ($79|0)!=(0); + if (!($80)) { + $81 = HEAP32[$z>>2]|0; + $82 = (_doubleConsonant($81)|0); + $83 = ($82|0)!=(0); + if ($83) { + $84 = HEAP32[$z>>2]|0; + $85 = HEAP8[$84>>0]|0; + $86 = $85 << 24 >> 24; + $87 = ($86|0)!=(108); + if ($87) { + $88 = HEAP32[$z>>2]|0; + $89 = HEAP8[$88>>0]|0; + $90 = $89 << 24 >> 24; + $91 = ($90|0)!=(115); + if ($91) { + $92 = HEAP32[$z>>2]|0; + $93 = HEAP8[$92>>0]|0; + $94 = $93 << 24 >> 24; + $95 = ($94|0)!=(122); + if ($95) { + $96 = HEAP32[$z>>2]|0; + $97 = (($96) + 1|0); + HEAP32[$z>>2] = $97; + break; + } + } + } + } + $98 = HEAP32[$z>>2]|0; + $99 = (_m_eq_1($98)|0); + $100 = ($99|0)!=(0); + if ($100) { + $101 = HEAP32[$z>>2]|0; + $102 = (_star_oh($101)|0); + $103 = ($102|0)!=(0); + if ($103) { + $104 = HEAP32[$z>>2]|0; + $105 = (($104) + -1|0); + HEAP32[$z>>2] = $105; + HEAP8[$105>>0] = 101; + } + } + } + } + } + } + } + } while(0); + $106 = HEAP32[$z>>2]|0; + $107 = HEAP8[$106>>0]|0; + $108 = $107 << 24 >> 24; + $109 = ($108|0)==(121); + if ($109) { + $110 = HEAP32[$z>>2]|0; + $111 = (($110) + 1|0); + $112 = (_hasVowel($111)|0); + $113 = ($112|0)!=(0); + if ($113) { + $114 = HEAP32[$z>>2]|0; + HEAP8[$114>>0] = 105; + } + } + $115 = HEAP32[$z>>2]|0; + $116 = (($115) + 1|0); + $117 = HEAP8[$116>>0]|0; + $118 = $117 << 24 >> 24; + switch ($118|0) { + case 97: { + $119 = (_stem($z,9352,9312,43)|0); + $120 = ($119|0)!=(0); + if (!($120)) { + (_stem($z,9360,9368,43)|0); + } + break; + } + case 115: { + $135 = (_stem($z,9528,9448,43)|0); + $136 = ($135|0)!=(0); + if (!($136)) { + $137 = (_stem($z,9536,9544,43)|0); + $138 = ($137|0)!=(0); + if (!($138)) { + $139 = (_stem($z,9552,9560,43)|0); + $140 = ($139|0)!=(0); + if (!($140)) { + (_stem($z,9568,9496,43)|0); + } + } + } + break; + } + case 116: { + $141 = (_stem($z,9576,9448,43)|0); + $142 = ($141|0)!=(0); + if (!($142)) { + $143 = (_stem($z,9584,9544,43)|0); + $144 = ($143|0)!=(0); + if (!($144)) { + (_stem($z,9592,9328,43)|0); + } + } + break; + } + case 101: { + (_stem($z,9408,9344,43)|0); + break; + } + case 99: { + $121 = (_stem($z,9376,9384,43)|0); + $122 = ($121|0)!=(0); + if (!($122)) { + (_stem($z,9392,9400,43)|0); + } + break; + } + case 103: { + (_stem($z,9416,9424,43)|0); + break; + } + case 108: { + $123 = (_stem($z,9432,9328,43)|0); + $124 = ($123|0)!=(0); + if (!($124)) { + $125 = (_stem($z,9440,9448,43)|0); + $126 = ($125|0)!=(0); + if (!($126)) { + $127 = (_stem($z,9456,9464,43)|0); + $128 = ($127|0)!=(0); + if (!($128)) { + $129 = (_stem($z,9472,9480,43)|0); + $130 = ($129|0)!=(0); + if (!($130)) { + (_stem($z,9488,9496,43)|0); + } + } + } + } + break; + } + case 111: { + $131 = (_stem($z,9504,9344,43)|0); + $132 = ($131|0)!=(0); + if (!($132)) { + $133 = (_stem($z,9512,9312,43)|0); + $134 = ($133|0)!=(0); + if (!($134)) { + (_stem($z,9520,9312,43)|0); + } + } + break; + } + default: { + } + } + $145 = HEAP32[$z>>2]|0; + $146 = HEAP8[$145>>0]|0; + $147 = $146 << 24 >> 24; + if ((($147|0) == 101)) { + $148 = (_stem($z,9600,9608,43)|0); + $149 = ($148|0)!=(0); + if (!($149)) { + $150 = (_stem($z,9616,1784,43)|0); + $151 = ($150|0)!=(0); + if (!($151)) { + (_stem($z,9624,9448,43)|0); + } + } + } else if ((($147|0) == 105)) { + (_stem($z,9632,9608,43)|0); + } else if ((($147|0) == 108)) { + $152 = (_stem($z,9640,9608,43)|0); + $153 = ($152|0)!=(0); + if (!($153)) { + (_stem($z,9648,1784,43)|0); + } + } else if ((($147|0) == 115)) { + (_stem($z,9656,1784,43)|0); + } + $154 = HEAP32[$z>>2]|0; + $155 = (($154) + 1|0); + $156 = HEAP8[$155>>0]|0; + $157 = $156 << 24 >> 24; + L80: do { + switch ($157|0) { + case 116: { + $295 = (_stem($z,9696,1784,45)|0); + $296 = ($295|0)!=(0); + if (!($296)) { + (_stem($z,9704,1784,45)|0); + } + break; + } + case 110: { + $238 = HEAP32[$z>>2]|0; + $239 = HEAP8[$238>>0]|0; + $240 = $239 << 24 >> 24; + $241 = ($240|0)==(116); + if ($241) { + $242 = HEAP32[$z>>2]|0; + $243 = (($242) + 2|0); + $244 = HEAP8[$243>>0]|0; + $245 = $244 << 24 >> 24; + $246 = ($245|0)==(97); + $247 = HEAP32[$z>>2]|0; + if ($246) { + $248 = (($247) + 3|0); + $249 = (_m_gt_1($248)|0); + $250 = ($249|0)!=(0); + if (!($250)) { + break L80; + } + $251 = HEAP32[$z>>2]|0; + $252 = (($251) + 3|0); + HEAP32[$z>>2] = $252; + break L80; + } + $253 = (($247) + 2|0); + $254 = HEAP8[$253>>0]|0; + $255 = $254 << 24 >> 24; + $256 = ($255|0)==(101); + if ($256) { + $257 = (_stem($z,9664,1784,45)|0); + $258 = ($257|0)!=(0); + if (!($258)) { + $259 = (_stem($z,9672,1784,45)|0); + $260 = ($259|0)!=(0); + if (!($260)) { + (_stem($z,9680,1784,45)|0); + } + } + } + } + break; + } + case 97: { + $158 = HEAP32[$z>>2]|0; + $159 = HEAP8[$158>>0]|0; + $160 = $159 << 24 >> 24; + $161 = ($160|0)==(108); + if ($161) { + $162 = HEAP32[$z>>2]|0; + $163 = (($162) + 2|0); + $164 = (_m_gt_1($163)|0); + $165 = ($164|0)!=(0); + if ($165) { + $166 = HEAP32[$z>>2]|0; + $167 = (($166) + 2|0); + HEAP32[$z>>2] = $167; + } + } + break; + } + case 111: { + $261 = HEAP32[$z>>2]|0; + $262 = HEAP8[$261>>0]|0; + $263 = $262 << 24 >> 24; + $264 = ($263|0)==(117); + $265 = HEAP32[$z>>2]|0; + if ($264) { + $266 = (($265) + 2|0); + $267 = (_m_gt_1($266)|0); + $268 = ($267|0)!=(0); + if (!($268)) { + break L80; + } + $269 = HEAP32[$z>>2]|0; + $270 = (($269) + 2|0); + HEAP32[$z>>2] = $270; + break L80; + } + $271 = (($265) + 3|0); + $272 = HEAP8[$271>>0]|0; + $273 = $272 << 24 >> 24; + $274 = ($273|0)==(115); + if (!($274)) { + $275 = HEAP32[$z>>2]|0; + $276 = (($275) + 3|0); + $277 = HEAP8[$276>>0]|0; + $278 = $277 << 24 >> 24; + $279 = ($278|0)==(116); + if (!($279)) { + break L80; + } + } + (_stem($z,9688,1784,45)|0); + break; + } + case 115: { + $280 = HEAP32[$z>>2]|0; + $281 = HEAP8[$280>>0]|0; + $282 = $281 << 24 >> 24; + $283 = ($282|0)==(109); + if ($283) { + $284 = HEAP32[$z>>2]|0; + $285 = (($284) + 2|0); + $286 = HEAP8[$285>>0]|0; + $287 = $286 << 24 >> 24; + $288 = ($287|0)==(105); + if ($288) { + $289 = HEAP32[$z>>2]|0; + $290 = (($289) + 3|0); + $291 = (_m_gt_1($290)|0); + $292 = ($291|0)!=(0); + if ($292) { + $293 = HEAP32[$z>>2]|0; + $294 = (($293) + 3|0); + HEAP32[$z>>2] = $294; + } + } + } + break; + } + case 117: { + $297 = HEAP32[$z>>2]|0; + $298 = HEAP8[$297>>0]|0; + $299 = $298 << 24 >> 24; + $300 = ($299|0)==(115); + if ($300) { + $301 = HEAP32[$z>>2]|0; + $302 = (($301) + 2|0); + $303 = HEAP8[$302>>0]|0; + $304 = $303 << 24 >> 24; + $305 = ($304|0)==(111); + if ($305) { + $306 = HEAP32[$z>>2]|0; + $307 = (($306) + 3|0); + $308 = (_m_gt_1($307)|0); + $309 = ($308|0)!=(0); + if ($309) { + $310 = HEAP32[$z>>2]|0; + $311 = (($310) + 3|0); + HEAP32[$z>>2] = $311; + } + } + } + break; + } + case 99: { + $168 = HEAP32[$z>>2]|0; + $169 = HEAP8[$168>>0]|0; + $170 = $169 << 24 >> 24; + $171 = ($170|0)==(101); + if ($171) { + $172 = HEAP32[$z>>2]|0; + $173 = (($172) + 2|0); + $174 = HEAP8[$173>>0]|0; + $175 = $174 << 24 >> 24; + $176 = ($175|0)==(110); + if ($176) { + $177 = HEAP32[$z>>2]|0; + $178 = (($177) + 3|0); + $179 = HEAP8[$178>>0]|0; + $180 = $179 << 24 >> 24; + $181 = ($180|0)==(97); + if (!($181)) { + $182 = HEAP32[$z>>2]|0; + $183 = (($182) + 3|0); + $184 = HEAP8[$183>>0]|0; + $185 = $184 << 24 >> 24; + $186 = ($185|0)==(101); + if (!($186)) { + break L80; + } + } + $187 = HEAP32[$z>>2]|0; + $188 = (($187) + 4|0); + $189 = (_m_gt_1($188)|0); + $190 = ($189|0)!=(0); + if ($190) { + $191 = HEAP32[$z>>2]|0; + $192 = (($191) + 4|0); + HEAP32[$z>>2] = $192; + } + } + } + break; + } + case 122: case 118: { + $312 = HEAP32[$z>>2]|0; + $313 = HEAP8[$312>>0]|0; + $314 = $313 << 24 >> 24; + $315 = ($314|0)==(101); + if ($315) { + $316 = HEAP32[$z>>2]|0; + $317 = (($316) + 2|0); + $318 = HEAP8[$317>>0]|0; + $319 = $318 << 24 >> 24; + $320 = ($319|0)==(105); + if ($320) { + $321 = HEAP32[$z>>2]|0; + $322 = (($321) + 3|0); + $323 = (_m_gt_1($322)|0); + $324 = ($323|0)!=(0); + if ($324) { + $325 = HEAP32[$z>>2]|0; + $326 = (($325) + 3|0); + HEAP32[$z>>2] = $326; + } + } + } + break; + } + case 105: { + $203 = HEAP32[$z>>2]|0; + $204 = HEAP8[$203>>0]|0; + $205 = $204 << 24 >> 24; + $206 = ($205|0)==(99); + if ($206) { + $207 = HEAP32[$z>>2]|0; + $208 = (($207) + 2|0); + $209 = (_m_gt_1($208)|0); + $210 = ($209|0)!=(0); + if ($210) { + $211 = HEAP32[$z>>2]|0; + $212 = (($211) + 2|0); + HEAP32[$z>>2] = $212; + } + } + break; + } + case 101: { + $193 = HEAP32[$z>>2]|0; + $194 = HEAP8[$193>>0]|0; + $195 = $194 << 24 >> 24; + $196 = ($195|0)==(114); + if ($196) { + $197 = HEAP32[$z>>2]|0; + $198 = (($197) + 2|0); + $199 = (_m_gt_1($198)|0); + $200 = ($199|0)!=(0); + if ($200) { + $201 = HEAP32[$z>>2]|0; + $202 = (($201) + 2|0); + HEAP32[$z>>2] = $202; + } + } + break; + } + case 108: { + $213 = HEAP32[$z>>2]|0; + $214 = HEAP8[$213>>0]|0; + $215 = $214 << 24 >> 24; + $216 = ($215|0)==(101); + if ($216) { + $217 = HEAP32[$z>>2]|0; + $218 = (($217) + 2|0); + $219 = HEAP8[$218>>0]|0; + $220 = $219 << 24 >> 24; + $221 = ($220|0)==(98); + if ($221) { + $222 = HEAP32[$z>>2]|0; + $223 = (($222) + 3|0); + $224 = HEAP8[$223>>0]|0; + $225 = $224 << 24 >> 24; + $226 = ($225|0)==(97); + if (!($226)) { + $227 = HEAP32[$z>>2]|0; + $228 = (($227) + 3|0); + $229 = HEAP8[$228>>0]|0; + $230 = $229 << 24 >> 24; + $231 = ($230|0)==(105); + if (!($231)) { + break L80; + } + } + $232 = HEAP32[$z>>2]|0; + $233 = (($232) + 4|0); + $234 = (_m_gt_1($233)|0); + $235 = ($234|0)!=(0); + if ($235) { + $236 = HEAP32[$z>>2]|0; + $237 = (($236) + 4|0); + HEAP32[$z>>2] = $237; + } + } + } + break; + } + default: { + } + } + } while(0); + $327 = HEAP32[$z>>2]|0; + $328 = HEAP8[$327>>0]|0; + $329 = $328 << 24 >> 24; + $330 = ($329|0)==(101); + do { + if ($330) { + $331 = HEAP32[$z>>2]|0; + $332 = (($331) + 1|0); + $333 = (_m_gt_1($332)|0); + $334 = ($333|0)!=(0); + $335 = HEAP32[$z>>2]|0; + $336 = (($335) + 1|0); + if ($334) { + HEAP32[$z>>2] = $336; + break; + } + $337 = (_m_eq_1($336)|0); + $338 = ($337|0)!=(0); + if ($338) { + $339 = HEAP32[$z>>2]|0; + $340 = (($339) + 1|0); + $341 = (_star_oh($340)|0); + $342 = ($341|0)!=(0); + if (!($342)) { + $343 = HEAP32[$z>>2]|0; + $344 = (($343) + 1|0); + HEAP32[$z>>2] = $344; + } + } + } + } while(0); + $345 = HEAP32[$z>>2]|0; + $346 = (_m_gt_1($345)|0); + $347 = ($346|0)!=(0); + if ($347) { + $348 = HEAP32[$z>>2]|0; + $349 = HEAP8[$348>>0]|0; + $350 = $349 << 24 >> 24; + $351 = ($350|0)==(108); + if ($351) { + $352 = HEAP32[$z>>2]|0; + $353 = (($352) + 1|0); + $354 = HEAP8[$353>>0]|0; + $355 = $354 << 24 >> 24; + $356 = ($355|0)==(108); + if ($356) { + $357 = HEAP32[$z>>2]|0; + $358 = (($357) + 1|0); + HEAP32[$z>>2] = $358; + } + } + } + $359 = HEAP32[$z>>2]|0; + $360 = (_strlen(($359|0))|0); + HEAP32[$i>>2] = $360; + $361 = HEAP32[$3>>2]|0; + HEAP32[$361>>2] = $360; + $362 = HEAP32[$i>>2]|0; + $363 = HEAP32[$2>>2]|0; + $364 = (($363) + ($362)|0); + HEAP8[$364>>0] = 0; + while(1) { + $365 = HEAP32[$z>>2]|0; + $366 = HEAP8[$365>>0]|0; + $367 = ($366<<24>>24)!=(0); + if (!($367)) { + break; + } + $368 = HEAP32[$z>>2]|0; + $369 = (($368) + 1|0); + HEAP32[$z>>2] = $369; + $370 = HEAP8[$368>>0]|0; + $371 = HEAP32[$i>>2]|0; + $372 = (($371) + -1)|0; + HEAP32[$i>>2] = $372; + $373 = HEAP32[$2>>2]|0; + $374 = (($373) + ($372)|0); + HEAP8[$374>>0] = $370; + } + STACKTOP = sp;return; +} +function _copy_stemmer($zIn,$nIn,$zOut,$pnOut) { + $zIn = $zIn|0; + $nIn = $nIn|0; + $zOut = $zOut|0; + $pnOut = $pnOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, $hasDigit = 0, $i = 0, $j = 0, $mx = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 16|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $i = sp + 12|0; + $mx = sp + 8|0; + $j = sp + 4|0; + $hasDigit = sp; + $c = sp + 32|0; + HEAP32[$0>>2] = $zIn; + HEAP32[$1>>2] = $nIn; + HEAP32[$2>>2] = $zOut; + HEAP32[$3>>2] = $pnOut; + HEAP32[$hasDigit>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $4 = HEAP32[$i>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = ($4|0)<($5|0); + if (!($6)) { + break; + } + $7 = HEAP32[$i>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + ($7)|0); + $10 = HEAP8[$9>>0]|0; + HEAP8[$c>>0] = $10; + $11 = HEAP8[$c>>0]|0; + $12 = $11 << 24 >> 24; + $13 = ($12|0)>=(65); + if ($13) { + $14 = HEAP8[$c>>0]|0; + $15 = $14 << 24 >> 24; + $16 = ($15|0)<=(90); + if ($16) { + $17 = HEAP8[$c>>0]|0; + $18 = $17 << 24 >> 24; + $19 = (($18) - 65)|0; + $20 = (($19) + 97)|0; + $21 = $20&255; + $22 = HEAP32[$i>>2]|0; + $23 = HEAP32[$2>>2]|0; + $24 = (($23) + ($22)|0); + HEAP8[$24>>0] = $21; + } else { + label = 6; + } + } else { + label = 6; + } + if ((label|0) == 6) { + label = 0; + $25 = HEAP8[$c>>0]|0; + $26 = $25 << 24 >> 24; + $27 = ($26|0)>=(48); + if ($27) { + $28 = HEAP8[$c>>0]|0; + $29 = $28 << 24 >> 24; + $30 = ($29|0)<=(57); + if ($30) { + HEAP32[$hasDigit>>2] = 1; + } + } + $31 = HEAP8[$c>>0]|0; + $32 = HEAP32[$i>>2]|0; + $33 = HEAP32[$2>>2]|0; + $34 = (($33) + ($32)|0); + HEAP8[$34>>0] = $31; + } + $35 = HEAP32[$i>>2]|0; + $36 = (($35) + 1)|0; + HEAP32[$i>>2] = $36; + } + $37 = HEAP32[$hasDigit>>2]|0; + $38 = ($37|0)!=(0); + $39 = $38 ? 3 : 10; + HEAP32[$mx>>2] = $39; + $40 = HEAP32[$1>>2]|0; + $41 = HEAP32[$mx>>2]|0; + $42 = $41<<1; + $43 = ($40|0)>($42|0); + if (!($43)) { + $63 = HEAP32[$i>>2]|0; + $64 = HEAP32[$2>>2]|0; + $65 = (($64) + ($63)|0); + HEAP8[$65>>0] = 0; + $66 = HEAP32[$i>>2]|0; + $67 = HEAP32[$3>>2]|0; + HEAP32[$67>>2] = $66; + STACKTOP = sp;return; + } + $44 = HEAP32[$mx>>2]|0; + HEAP32[$j>>2] = $44; + $45 = HEAP32[$1>>2]|0; + $46 = HEAP32[$mx>>2]|0; + $47 = (($45) - ($46))|0; + HEAP32[$i>>2] = $47; + while(1) { + $48 = HEAP32[$i>>2]|0; + $49 = HEAP32[$1>>2]|0; + $50 = ($48|0)<($49|0); + if (!($50)) { + break; + } + $51 = HEAP32[$i>>2]|0; + $52 = HEAP32[$2>>2]|0; + $53 = (($52) + ($51)|0); + $54 = HEAP8[$53>>0]|0; + $55 = HEAP32[$j>>2]|0; + $56 = HEAP32[$2>>2]|0; + $57 = (($56) + ($55)|0); + HEAP8[$57>>0] = $54; + $58 = HEAP32[$i>>2]|0; + $59 = (($58) + 1)|0; + HEAP32[$i>>2] = $59; + $60 = HEAP32[$j>>2]|0; + $61 = (($60) + 1)|0; + HEAP32[$j>>2] = $61; + } + $62 = HEAP32[$j>>2]|0; + HEAP32[$i>>2] = $62; + $63 = HEAP32[$i>>2]|0; + $64 = HEAP32[$2>>2]|0; + $65 = (($64) + ($63)|0); + HEAP8[$65>>0] = 0; + $66 = HEAP32[$i>>2]|0; + $67 = HEAP32[$3>>2]|0; + HEAP32[$67>>2] = $66; + STACKTOP = sp;return; +} +function _stem($pz,$zFrom,$zTo,$xCond) { + $pz = $pz|0; + $zFrom = $zFrom|0; + $zTo = $zTo|0; + $xCond = $xCond|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $z = sp + 16|0; + HEAP32[$1>>2] = $pz; + HEAP32[$2>>2] = $zFrom; + HEAP32[$3>>2] = $zTo; + HEAP32[$4>>2] = $xCond; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$z>>2] = $6; + while(1) { + $7 = HEAP32[$2>>2]|0; + $8 = HEAP8[$7>>0]|0; + $9 = $8 << 24 >> 24; + $10 = ($9|0)!=(0); + if (!($10)) { + break; + } + $11 = HEAP32[$2>>2]|0; + $12 = HEAP8[$11>>0]|0; + $13 = $12 << 24 >> 24; + $14 = HEAP32[$z>>2]|0; + $15 = HEAP8[$14>>0]|0; + $16 = $15 << 24 >> 24; + $17 = ($13|0)==($16|0); + if (!($17)) { + break; + } + $18 = HEAP32[$z>>2]|0; + $19 = (($18) + 1|0); + HEAP32[$z>>2] = $19; + $20 = HEAP32[$2>>2]|0; + $21 = (($20) + 1|0); + HEAP32[$2>>2] = $21; + } + $22 = HEAP32[$2>>2]|0; + $23 = HEAP8[$22>>0]|0; + $24 = $23 << 24 >> 24; + $25 = ($24|0)!=(0); + if ($25) { + HEAP32[$0>>2] = 0; + $42 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($42|0); + } + $26 = HEAP32[$4>>2]|0; + $27 = ($26|0)!=(0|0); + if ($27) { + $28 = HEAP32[$4>>2]|0; + $29 = HEAP32[$z>>2]|0; + $30 = (FUNCTION_TABLE_ii[$28 & 63]($29)|0); + $31 = ($30|0)!=(0); + if (!($31)) { + HEAP32[$0>>2] = 1; + $42 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($42|0); + } + } + while(1) { + $32 = HEAP32[$3>>2]|0; + $33 = HEAP8[$32>>0]|0; + $34 = ($33<<24>>24)!=(0); + if (!($34)) { + break; + } + $35 = HEAP32[$3>>2]|0; + $36 = (($35) + 1|0); + HEAP32[$3>>2] = $36; + $37 = HEAP8[$35>>0]|0; + $38 = HEAP32[$z>>2]|0; + $39 = (($38) + -1|0); + HEAP32[$z>>2] = $39; + HEAP8[$39>>0] = $37; + } + $40 = HEAP32[$z>>2]|0; + $41 = HEAP32[$1>>2]|0; + HEAP32[$41>>2] = $40; + HEAP32[$0>>2] = 1; + $42 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($42|0); +} +function _m_gt_0($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $z; + while(1) { + $2 = HEAP32[$1>>2]|0; + $3 = (_isVowel($2)|0); + $4 = ($3|0)!=(0); + $5 = HEAP32[$1>>2]|0; + if (!($4)) { + break; + } + $6 = (($5) + 1|0); + HEAP32[$1>>2] = $6; + } + $7 = HEAP8[$5>>0]|0; + $8 = $7 << 24 >> 24; + $9 = ($8|0)==(0); + if ($9) { + HEAP32[$0>>2] = 0; + $19 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($19|0); + } + while(1) { + $10 = HEAP32[$1>>2]|0; + $11 = (_isConsonant($10)|0); + $12 = ($11|0)!=(0); + $13 = HEAP32[$1>>2]|0; + if (!($12)) { + break; + } + $14 = (($13) + 1|0); + HEAP32[$1>>2] = $14; + } + $15 = HEAP8[$13>>0]|0; + $16 = $15 << 24 >> 24; + $17 = ($16|0)!=(0); + $18 = $17&1; + HEAP32[$0>>2] = $18; + $19 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($19|0); +} +function _hasVowel($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $z; + while(1) { + $1 = HEAP32[$0>>2]|0; + $2 = (_isConsonant($1)|0); + $3 = ($2|0)!=(0); + $4 = HEAP32[$0>>2]|0; + if (!($3)) { + break; + } + $5 = (($4) + 1|0); + HEAP32[$0>>2] = $5; + } + $6 = HEAP8[$4>>0]|0; + $7 = $6 << 24 >> 24; + $8 = ($7|0)!=(0); + $9 = $8&1; + STACKTOP = sp;return ($9|0); +} +function _doubleConsonant($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $z; + $1 = HEAP32[$0>>2]|0; + $2 = (_isConsonant($1)|0); + $3 = ($2|0)!=(0); + if (!($3)) { + $13 = 0; + $12 = $13&1; + STACKTOP = sp;return ($12|0); + } + $4 = HEAP32[$0>>2]|0; + $5 = HEAP8[$4>>0]|0; + $6 = $5 << 24 >> 24; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 1|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9 << 24 >> 24; + $11 = ($6|0)==($10|0); + $13 = $11; + $12 = $13&1; + STACKTOP = sp;return ($12|0); +} +function _m_eq_1($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $z; + while(1) { + $2 = HEAP32[$1>>2]|0; + $3 = (_isVowel($2)|0); + $4 = ($3|0)!=(0); + $5 = HEAP32[$1>>2]|0; + if (!($4)) { + break; + } + $6 = (($5) + 1|0); + HEAP32[$1>>2] = $6; + } + $7 = HEAP8[$5>>0]|0; + $8 = $7 << 24 >> 24; + $9 = ($8|0)==(0); + if ($9) { + HEAP32[$0>>2] = 0; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); + } + while(1) { + $10 = HEAP32[$1>>2]|0; + $11 = (_isConsonant($10)|0); + $12 = ($11|0)!=(0); + $13 = HEAP32[$1>>2]|0; + if (!($12)) { + break; + } + $14 = (($13) + 1|0); + HEAP32[$1>>2] = $14; + } + $15 = HEAP8[$13>>0]|0; + $16 = $15 << 24 >> 24; + $17 = ($16|0)==(0); + if ($17) { + HEAP32[$0>>2] = 0; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); + } + while(1) { + $18 = HEAP32[$1>>2]|0; + $19 = (_isVowel($18)|0); + $20 = ($19|0)!=(0); + $21 = HEAP32[$1>>2]|0; + if (!($20)) { + break; + } + $22 = (($21) + 1|0); + HEAP32[$1>>2] = $22; + } + $23 = HEAP8[$21>>0]|0; + $24 = $23 << 24 >> 24; + $25 = ($24|0)==(0); + if ($25) { + HEAP32[$0>>2] = 1; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); + } + while(1) { + $26 = HEAP32[$1>>2]|0; + $27 = (_isConsonant($26)|0); + $28 = ($27|0)!=(0); + $29 = HEAP32[$1>>2]|0; + if (!($28)) { + break; + } + $30 = (($29) + 1|0); + HEAP32[$1>>2] = $30; + } + $31 = HEAP8[$29>>0]|0; + $32 = $31 << 24 >> 24; + $33 = ($32|0)==(0); + $34 = $33&1; + HEAP32[$0>>2] = $34; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); +} +function _star_oh($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $z; + $1 = HEAP32[$0>>2]|0; + $2 = (_isConsonant($1)|0); + $3 = ($2|0)!=(0); + if ($3) { + $4 = HEAP32[$0>>2]|0; + $5 = HEAP8[$4>>0]|0; + $6 = $5 << 24 >> 24; + $7 = ($6|0)!=(119); + if ($7) { + $8 = HEAP32[$0>>2]|0; + $9 = HEAP8[$8>>0]|0; + $10 = $9 << 24 >> 24; + $11 = ($10|0)!=(120); + if ($11) { + $12 = HEAP32[$0>>2]|0; + $13 = HEAP8[$12>>0]|0; + $14 = $13 << 24 >> 24; + $15 = ($14|0)!=(121); + if ($15) { + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 1|0); + $18 = (_isVowel($17)|0); + $19 = ($18|0)!=(0); + if ($19) { + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 2|0); + $22 = (_isConsonant($21)|0); + $23 = ($22|0)!=(0); + $25 = $23; + } else { + $25 = 0; + } + } else { + $25 = 0; + } + } else { + $25 = 0; + } + } else { + $25 = 0; + } + } else { + $25 = 0; + } + $24 = $25&1; + STACKTOP = sp;return ($24|0); +} +function _m_gt_1($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $z; + while(1) { + $2 = HEAP32[$1>>2]|0; + $3 = (_isVowel($2)|0); + $4 = ($3|0)!=(0); + $5 = HEAP32[$1>>2]|0; + if (!($4)) { + break; + } + $6 = (($5) + 1|0); + HEAP32[$1>>2] = $6; + } + $7 = HEAP8[$5>>0]|0; + $8 = $7 << 24 >> 24; + $9 = ($8|0)==(0); + if ($9) { + HEAP32[$0>>2] = 0; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); + } + while(1) { + $10 = HEAP32[$1>>2]|0; + $11 = (_isConsonant($10)|0); + $12 = ($11|0)!=(0); + $13 = HEAP32[$1>>2]|0; + if (!($12)) { + break; + } + $14 = (($13) + 1|0); + HEAP32[$1>>2] = $14; + } + $15 = HEAP8[$13>>0]|0; + $16 = $15 << 24 >> 24; + $17 = ($16|0)==(0); + if ($17) { + HEAP32[$0>>2] = 0; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); + } + while(1) { + $18 = HEAP32[$1>>2]|0; + $19 = (_isVowel($18)|0); + $20 = ($19|0)!=(0); + $21 = HEAP32[$1>>2]|0; + if (!($20)) { + break; + } + $22 = (($21) + 1|0); + HEAP32[$1>>2] = $22; + } + $23 = HEAP8[$21>>0]|0; + $24 = $23 << 24 >> 24; + $25 = ($24|0)==(0); + if ($25) { + HEAP32[$0>>2] = 0; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); + } + while(1) { + $26 = HEAP32[$1>>2]|0; + $27 = (_isConsonant($26)|0); + $28 = ($27|0)!=(0); + $29 = HEAP32[$1>>2]|0; + if (!($28)) { + break; + } + $30 = (($29) + 1|0); + HEAP32[$1>>2] = $30; + } + $31 = HEAP8[$29>>0]|0; + $32 = $31 << 24 >> 24; + $33 = ($32|0)!=(0); + $34 = $33&1; + HEAP32[$0>>2] = $34; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); +} +function _isVowel($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $j = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $j = sp + 4|0; + $x = sp + 12|0; + HEAP32[$1>>2] = $z; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP8[$2>>0]|0; + HEAP8[$x>>0] = $3; + $4 = HEAP8[$x>>0]|0; + $5 = $4 << 24 >> 24; + $6 = ($5|0)==(0); + if ($6) { + HEAP32[$0>>2] = 0; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } + $7 = HEAP8[$x>>0]|0; + $8 = $7 << 24 >> 24; + $9 = (($8) - 97)|0; + $10 = (9712 + ($9)|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11 << 24 >> 24; + HEAP32[$j>>2] = $12; + $13 = HEAP32[$j>>2]|0; + $14 = ($13|0)<(2); + if ($14) { + $15 = HEAP32[$j>>2]|0; + $16 = (1 - ($15))|0; + HEAP32[$0>>2] = $16; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } else { + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 1|0); + $19 = (_isConsonant($18)|0); + HEAP32[$0>>2] = $19; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } + return 0|0; +} +function _isConsonant($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $j = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $j = sp + 4|0; + $x = sp + 12|0; + HEAP32[$1>>2] = $z; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP8[$2>>0]|0; + HEAP8[$x>>0] = $3; + $4 = HEAP8[$x>>0]|0; + $5 = $4 << 24 >> 24; + $6 = ($5|0)==(0); + if ($6) { + HEAP32[$0>>2] = 0; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); + } + $7 = HEAP8[$x>>0]|0; + $8 = $7 << 24 >> 24; + $9 = (($8) - 97)|0; + $10 = (9712 + ($9)|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11 << 24 >> 24; + HEAP32[$j>>2] = $12; + $13 = HEAP32[$j>>2]|0; + $14 = ($13|0)<(2); + if ($14) { + $15 = HEAP32[$j>>2]|0; + HEAP32[$0>>2] = $15; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); + } + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 1|0); + $18 = HEAP8[$17>>0]|0; + $19 = $18 << 24 >> 24; + $20 = ($19|0)==(0); + if ($20) { + $26 = 1; + } else { + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 1|0); + $23 = (_isVowel($22)|0); + $24 = ($23|0)!=(0); + $26 = $24; + } + $25 = $26&1; + HEAP32[$0>>2] = $25; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); +} +function _simpleCreate($argc,$argv,$ppTokenizer) { + $argc = $argc|0; + $argv = $argv|0; + $ppTokenizer = $ppTokenizer|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ch = 0, $i = 0, $i1 = 0, $n = 0, $t = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 28|0; + $1 = sp + 24|0; + $2 = sp + 20|0; + $3 = sp + 16|0; + $t = sp + 12|0; + $i = sp + 4|0; + $n = sp; + $ch = sp + 32|0; + $i1 = sp + 8|0; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + HEAP32[$3>>2] = $ppTokenizer; + $4 = (_sqlite3_malloc(132)|0); + HEAP32[$t>>2] = $4; + $5 = HEAP32[$t>>2]|0; + $6 = ($5|0)==(0|0); + if ($6) { + HEAP32[$0>>2] = 7; + $50 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($50|0); + } + $7 = HEAP32[$t>>2]|0; + _memset(($7|0),0,132)|0; + $8 = HEAP32[$1>>2]|0; + $9 = ($8|0)>(1); + L5: do { + if ($9) { + $10 = HEAP32[$2>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = (_strlen(($12|0))|0); + HEAP32[$n>>2] = $13; + HEAP32[$i>>2] = 0; + while(1) { + $14 = HEAP32[$i>>2]|0; + $15 = HEAP32[$n>>2]|0; + $16 = ($14|0)<($15|0); + if (!($16)) { + break L5; + } + $17 = HEAP32[$i>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + ($17)|0); + $22 = HEAP8[$21>>0]|0; + HEAP8[$ch>>0] = $22; + $23 = HEAP8[$ch>>0]|0; + $24 = $23&255; + $25 = ($24|0)>=(128); + if ($25) { + break; + } + $27 = HEAP8[$ch>>0]|0; + $28 = $27&255; + $29 = HEAP32[$t>>2]|0; + $30 = (($29) + 4|0); + $31 = (($30) + ($28)|0); + HEAP8[$31>>0] = 1; + $32 = HEAP32[$i>>2]|0; + $33 = (($32) + 1)|0; + HEAP32[$i>>2] = $33; + } + $26 = HEAP32[$t>>2]|0; + _sqlite3_free($26); + HEAP32[$0>>2] = 1; + $50 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($50|0); + } else { + HEAP32[$i1>>2] = 1; + while(1) { + $34 = HEAP32[$i1>>2]|0; + $35 = ($34|0)<(128); + if (!($35)) { + break L5; + } + $36 = HEAP32[$i1>>2]|0; + $37 = (_fts3_isalnum($36)|0); + $38 = ($37|0)!=(0); + $39 = $38 ^ 1; + $40 = $39 ? -1 : 0; + $41 = $40&255; + $42 = HEAP32[$i1>>2]|0; + $43 = HEAP32[$t>>2]|0; + $44 = (($43) + 4|0); + $45 = (($44) + ($42)|0); + HEAP8[$45>>0] = $41; + $46 = HEAP32[$i1>>2]|0; + $47 = (($46) + 1)|0; + HEAP32[$i1>>2] = $47; + } + } + } while(0); + $48 = HEAP32[$t>>2]|0; + $49 = HEAP32[$3>>2]|0; + HEAP32[$49>>2] = $48; + HEAP32[$0>>2] = 0; + $50 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($50|0); +} +function _simpleDestroy($pTokenizer) { + $pTokenizer = $pTokenizer|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pTokenizer; + $1 = HEAP32[$0>>2]|0; + _sqlite3_free($1); + STACKTOP = sp;return 0; +} +function _simpleOpen($pTokenizer,$pInput,$nBytes,$ppCursor) { + $pTokenizer = $pTokenizer|0; + $pInput = $pInput|0; + $nBytes = $nBytes|0; + $ppCursor = $ppCursor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $c = sp + 16|0; + HEAP32[$1>>2] = $pTokenizer; + HEAP32[$2>>2] = $pInput; + HEAP32[$3>>2] = $nBytes; + HEAP32[$4>>2] = $ppCursor; + $5 = (_sqlite3_malloc(28)|0); + HEAP32[$c>>2] = $5; + $6 = HEAP32[$c>>2]|0; + $7 = ($6|0)==(0|0); + if ($7) { + HEAP32[$0>>2] = 7; + $34 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($34|0); + } + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$c>>2]|0; + $10 = (($9) + 4|0); + HEAP32[$10>>2] = $8; + $11 = HEAP32[$2>>2]|0; + $12 = ($11|0)==(0|0); + do { + if ($12) { + $13 = HEAP32[$c>>2]|0; + $14 = (($13) + 8|0); + HEAP32[$14>>2] = 0; + } else { + $15 = HEAP32[$3>>2]|0; + $16 = ($15|0)<(0); + if ($16) { + $17 = HEAP32[$2>>2]|0; + $18 = (_strlen(($17|0))|0); + $19 = HEAP32[$c>>2]|0; + $20 = (($19) + 8|0); + HEAP32[$20>>2] = $18; + break; + } else { + $21 = HEAP32[$3>>2]|0; + $22 = HEAP32[$c>>2]|0; + $23 = (($22) + 8|0); + HEAP32[$23>>2] = $21; + break; + } + } + } while(0); + $24 = HEAP32[$c>>2]|0; + $25 = (($24) + 12|0); + HEAP32[$25>>2] = 0; + $26 = HEAP32[$c>>2]|0; + $27 = (($26) + 16|0); + HEAP32[$27>>2] = 0; + $28 = HEAP32[$c>>2]|0; + $29 = (($28) + 20|0); + HEAP32[$29>>2] = 0; + $30 = HEAP32[$c>>2]|0; + $31 = (($30) + 24|0); + HEAP32[$31>>2] = 0; + $32 = HEAP32[$c>>2]|0; + $33 = HEAP32[$4>>2]|0; + HEAP32[$33>>2] = $32; + HEAP32[$0>>2] = 0; + $34 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($34|0); +} +function _simpleClose($pCursor) { + $pCursor = $pCursor|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $c = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $c = sp; + HEAP32[$0>>2] = $pCursor; + $1 = HEAP32[$0>>2]|0; + HEAP32[$c>>2] = $1; + $2 = HEAP32[$c>>2]|0; + $3 = (($2) + 20|0); + $4 = HEAP32[$3>>2]|0; + _sqlite3_free($4); + $5 = HEAP32[$c>>2]|0; + _sqlite3_free($5); + STACKTOP = sp;return 0; +} +function _simpleNext($pCursor,$ppToken,$pnBytes,$piStartOffset,$piEndOffset,$piPosition) { + $pCursor = $pCursor|0; + $ppToken = $ppToken|0; + $pnBytes = $pnBytes|0; + $piStartOffset = $piStartOffset|0; + $piEndOffset = $piEndOffset|0; + $piPosition = $piPosition|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; + var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0; + var $ch = 0, $i = 0, $iStartOffset = 0, $n = 0, $p = 0, $pNew = 0, $t = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 28|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $3 = sp + 44|0; + $4 = sp + 40|0; + $5 = sp + 36|0; + $6 = sp + 32|0; + $c = sp + 24|0; + $t = sp + 20|0; + $p = sp + 16|0; + $iStartOffset = sp + 12|0; + $i = sp + 8|0; + $n = sp + 4|0; + $pNew = sp; + $ch = sp + 56|0; + HEAP32[$1>>2] = $pCursor; + HEAP32[$2>>2] = $ppToken; + HEAP32[$3>>2] = $pnBytes; + HEAP32[$4>>2] = $piStartOffset; + HEAP32[$5>>2] = $piEndOffset; + HEAP32[$6>>2] = $piPosition; + $7 = HEAP32[$1>>2]|0; + HEAP32[$c>>2] = $7; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$t>>2] = $9; + $10 = HEAP32[$c>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$p>>2] = $12; + while(1) { + $13 = HEAP32[$c>>2]|0; + $14 = (($13) + 12|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$c>>2]|0; + $17 = (($16) + 8|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($15|0)<($18|0); + if (!($19)) { + label = 25; + break; + } + while(1) { + $20 = HEAP32[$c>>2]|0; + $21 = (($20) + 12|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$c>>2]|0; + $24 = (($23) + 8|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($22|0)<($25|0); + if ($26) { + $27 = HEAP32[$t>>2]|0; + $28 = HEAP32[$c>>2]|0; + $29 = (($28) + 12|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$p>>2]|0; + $32 = (($31) + ($30)|0); + $33 = HEAP8[$32>>0]|0; + $34 = (_simpleDelim($27,$33)|0); + $35 = ($34|0)!=(0); + $137 = $35; + } else { + $137 = 0; + } + $36 = HEAP32[$c>>2]|0; + $37 = (($36) + 12|0); + $38 = HEAP32[$37>>2]|0; + if (!($137)) { + break; + } + $39 = (($38) + 1)|0; + HEAP32[$37>>2] = $39; + } + HEAP32[$iStartOffset>>2] = $38; + while(1) { + $40 = HEAP32[$c>>2]|0; + $41 = (($40) + 12|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$c>>2]|0; + $44 = (($43) + 8|0); + $45 = HEAP32[$44>>2]|0; + $46 = ($42|0)<($45|0); + if ($46) { + $47 = HEAP32[$t>>2]|0; + $48 = HEAP32[$c>>2]|0; + $49 = (($48) + 12|0); + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$p>>2]|0; + $52 = (($51) + ($50)|0); + $53 = HEAP8[$52>>0]|0; + $54 = (_simpleDelim($47,$53)|0); + $55 = ($54|0)!=(0); + $56 = $55 ^ 1; + $138 = $56; + } else { + $138 = 0; + } + $57 = HEAP32[$c>>2]|0; + $58 = (($57) + 12|0); + $59 = HEAP32[$58>>2]|0; + if (!($138)) { + break; + } + $60 = (($59) + 1)|0; + HEAP32[$58>>2] = $60; + } + $61 = HEAP32[$iStartOffset>>2]|0; + $62 = ($59|0)>($61|0); + if ($62) { + break; + } + } + if ((label|0) == 25) { + HEAP32[$0>>2] = 101; + $136 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($136|0); + } + $63 = HEAP32[$c>>2]|0; + $64 = (($63) + 12|0); + $65 = HEAP32[$64>>2]|0; + $66 = HEAP32[$iStartOffset>>2]|0; + $67 = (($65) - ($66))|0; + HEAP32[$n>>2] = $67; + $68 = HEAP32[$n>>2]|0; + $69 = HEAP32[$c>>2]|0; + $70 = (($69) + 24|0); + $71 = HEAP32[$70>>2]|0; + $72 = ($68|0)>($71|0); + do { + if ($72) { + $73 = HEAP32[$n>>2]|0; + $74 = (($73) + 20)|0; + $75 = HEAP32[$c>>2]|0; + $76 = (($75) + 24|0); + HEAP32[$76>>2] = $74; + $77 = HEAP32[$c>>2]|0; + $78 = (($77) + 20|0); + $79 = HEAP32[$78>>2]|0; + $80 = HEAP32[$c>>2]|0; + $81 = (($80) + 24|0); + $82 = HEAP32[$81>>2]|0; + $83 = (_sqlite3_realloc($79,$82)|0); + HEAP32[$pNew>>2] = $83; + $84 = HEAP32[$pNew>>2]|0; + $85 = ($84|0)!=(0|0); + if ($85) { + $86 = HEAP32[$pNew>>2]|0; + $87 = HEAP32[$c>>2]|0; + $88 = (($87) + 20|0); + HEAP32[$88>>2] = $86; + break; + } + HEAP32[$0>>2] = 7; + $136 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($136|0); + } + } while(0); + HEAP32[$i>>2] = 0; + while(1) { + $89 = HEAP32[$i>>2]|0; + $90 = HEAP32[$n>>2]|0; + $91 = ($89|0)<($90|0); + if (!($91)) { + break; + } + $92 = HEAP32[$iStartOffset>>2]|0; + $93 = HEAP32[$i>>2]|0; + $94 = (($92) + ($93))|0; + $95 = HEAP32[$p>>2]|0; + $96 = (($95) + ($94)|0); + $97 = HEAP8[$96>>0]|0; + HEAP8[$ch>>0] = $97; + $98 = HEAP8[$ch>>0]|0; + $99 = $98&255; + $100 = ($99|0)>=(65); + if ($100) { + $101 = HEAP8[$ch>>0]|0; + $102 = $101&255; + $103 = ($102|0)<=(90); + if ($103) { + $104 = HEAP8[$ch>>0]|0; + $105 = $104&255; + $106 = (($105) - 65)|0; + $107 = (($106) + 97)|0; + $111 = $107; + } else { + label = 22; + } + } else { + label = 22; + } + if ((label|0) == 22) { + label = 0; + $108 = HEAP8[$ch>>0]|0; + $109 = $108&255; + $111 = $109; + } + $110 = $111&255; + $112 = HEAP32[$i>>2]|0; + $113 = HEAP32[$c>>2]|0; + $114 = (($113) + 20|0); + $115 = HEAP32[$114>>2]|0; + $116 = (($115) + ($112)|0); + HEAP8[$116>>0] = $110; + $117 = HEAP32[$i>>2]|0; + $118 = (($117) + 1)|0; + HEAP32[$i>>2] = $118; + } + $119 = HEAP32[$c>>2]|0; + $120 = (($119) + 20|0); + $121 = HEAP32[$120>>2]|0; + $122 = HEAP32[$2>>2]|0; + HEAP32[$122>>2] = $121; + $123 = HEAP32[$n>>2]|0; + $124 = HEAP32[$3>>2]|0; + HEAP32[$124>>2] = $123; + $125 = HEAP32[$iStartOffset>>2]|0; + $126 = HEAP32[$4>>2]|0; + HEAP32[$126>>2] = $125; + $127 = HEAP32[$c>>2]|0; + $128 = (($127) + 12|0); + $129 = HEAP32[$128>>2]|0; + $130 = HEAP32[$5>>2]|0; + HEAP32[$130>>2] = $129; + $131 = HEAP32[$c>>2]|0; + $132 = (($131) + 16|0); + $133 = HEAP32[$132>>2]|0; + $134 = (($133) + 1)|0; + HEAP32[$132>>2] = $134; + $135 = HEAP32[$6>>2]|0; + HEAP32[$135>>2] = $133; + HEAP32[$0>>2] = 0; + $136 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($136|0); +} +function _simpleDelim($t,$c) { + $t = $t|0; + $c = $c|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + $1 = sp + 4|0; + HEAP32[$0>>2] = $t; + HEAP8[$1>>0] = $c; + $2 = HEAP8[$1>>0]|0; + $3 = $2&255; + $4 = ($3|0)<(128); + if (!($4)) { + $14 = 0; + $13 = $14&1; + STACKTOP = sp;return ($13|0); + } + $5 = HEAP8[$1>>0]|0; + $6 = $5&255; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 4|0); + $9 = (($8) + ($6)|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10 << 24 >> 24; + $12 = ($11|0)!=(0); + $14 = $12; + $13 = $14&1; + STACKTOP = sp;return ($13|0); +} +function _fts3_isalnum($x) { + $x = $x|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $x; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)>=(48); + $3 = HEAP32[$0>>2]|0; + $4 = ($3|0)<=(57); + $or$cond = $2 & $4; + if ($or$cond) { + $14 = 1; + } else { + $5 = HEAP32[$0>>2]|0; + $6 = ($5|0)>=(65); + $7 = HEAP32[$0>>2]|0; + $8 = ($7|0)<=(90); + $or$cond3 = $6 & $8; + if ($or$cond3) { + $14 = 1; + } else { + $9 = HEAP32[$0>>2]|0; + $10 = ($9|0)>=(97); + if ($10) { + $11 = HEAP32[$0>>2]|0; + $12 = ($11|0)<=(122); + $14 = $12; + } else { + $14 = 0; + } + } + } + $13 = $14&1; + STACKTOP = sp;return ($13|0); +} +function _fts3auxConnectMethod($db,$pUnused,$argc,$argv,$ppVtab,$pzErr) { + $db = $db|0; + $pUnused = $pUnused|0; + $argc = $argc|0; + $argv = $argv|0; + $ppVtab = $ppVtab|0; + $pzErr = $pzErr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $nByte = 0, $nDb = 0, $nFts3 = 0, $or$cond = 0, $p = 0, $rc = 0, $vararg_buffer = 0, $zDb = 0, $zFts3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer = sp; + $0 = sp + 52|0; + $1 = sp + 48|0; + $2 = sp + 44|0; + $3 = sp + 40|0; + $4 = sp + 36|0; + $5 = sp + 32|0; + $6 = sp + 56|0; + $zDb = sp + 20|0; + $zFts3 = sp + 16|0; + $nDb = sp + 12|0; + $nFts3 = sp + 8|0; + $nByte = sp + 4|0; + $rc = sp + 24|0; + $p = sp + 28|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pUnused; + HEAP32[$3>>2] = $argc; + HEAP32[$4>>2] = $argv; + HEAP32[$5>>2] = $ppVtab; + HEAP32[$6>>2] = $pzErr; + $7 = HEAP32[$3>>2]|0; + $8 = ($7|0)!=(4); + $9 = HEAP32[$3>>2]|0; + $10 = ($9|0)!=(5); + $or$cond = $8 & $10; + do { + if (!($or$cond)) { + $11 = HEAP32[$4>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$zDb>>2] = $13; + $14 = HEAP32[$zDb>>2]|0; + $15 = (_strlen(($14|0))|0); + HEAP32[$nDb>>2] = $15; + $16 = HEAP32[$3>>2]|0; + $17 = ($16|0)==(5); + if ($17) { + $18 = HEAP32[$nDb>>2]|0; + $19 = ($18|0)==(4); + if (!($19)) { + break; + } + $20 = HEAP32[$zDb>>2]|0; + $21 = (_sqlite3_strnicmp(1816,$20,4)|0); + $22 = (0)==($21|0); + if (!($22)) { + break; + } + $23 = HEAP32[$4>>2]|0; + $24 = (($23) + 12|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$zDb>>2] = $25; + $26 = HEAP32[$zDb>>2]|0; + $27 = (_strlen(($26|0))|0); + HEAP32[$nDb>>2] = $27; + $28 = HEAP32[$4>>2]|0; + $29 = (($28) + 16|0); + $30 = HEAP32[$29>>2]|0; + HEAP32[$zFts3>>2] = $30; + } else { + $31 = HEAP32[$4>>2]|0; + $32 = (($31) + 12|0); + $33 = HEAP32[$32>>2]|0; + HEAP32[$zFts3>>2] = $33; + } + $34 = HEAP32[$zFts3>>2]|0; + $35 = (_strlen(($34|0))|0); + HEAP32[$nFts3>>2] = $35; + $36 = HEAP32[$1>>2]|0; + $37 = (_sqlite3_declare_vtab($36,9888)|0); + HEAP32[$rc>>2] = $37; + $38 = HEAP32[$rc>>2]|0; + $39 = ($38|0)!=(0); + if ($39) { + $40 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $40; + $108 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($108|0); + } + $41 = HEAP32[$nDb>>2]|0; + $42 = (296 + ($41))|0; + $43 = HEAP32[$nFts3>>2]|0; + $44 = (($42) + ($43))|0; + $45 = (($44) + 2)|0; + HEAP32[$nByte>>2] = $45; + $46 = HEAP32[$nByte>>2]|0; + $47 = (_sqlite3_malloc($46)|0); + HEAP32[$p>>2] = $47; + $48 = HEAP32[$p>>2]|0; + $49 = ($48|0)!=(0|0); + if ($49) { + $50 = HEAP32[$p>>2]|0; + $51 = HEAP32[$nByte>>2]|0; + _memset(($50|0),0,($51|0))|0; + $52 = HEAP32[$p>>2]|0; + $53 = (($52) + 16|0); + $54 = HEAP32[$p>>2]|0; + $55 = (($54) + 12|0); + HEAP32[$55>>2] = $53; + $56 = HEAP32[$p>>2]|0; + $57 = (($56) + 12|0); + $58 = HEAP32[$57>>2]|0; + $59 = (($58) + 280|0); + $60 = HEAP32[$p>>2]|0; + $61 = (($60) + 12|0); + $62 = HEAP32[$61>>2]|0; + $63 = (($62) + 16|0); + HEAP32[$63>>2] = $59; + $64 = HEAP32[$nDb>>2]|0; + $65 = (($64) + 1)|0; + $66 = HEAP32[$p>>2]|0; + $67 = (($66) + 12|0); + $68 = HEAP32[$67>>2]|0; + $69 = (($68) + 16|0); + $70 = HEAP32[$69>>2]|0; + $71 = (($70) + ($65)|0); + $72 = HEAP32[$p>>2]|0; + $73 = (($72) + 12|0); + $74 = HEAP32[$73>>2]|0; + $75 = (($74) + 20|0); + HEAP32[$75>>2] = $71; + $76 = HEAP32[$1>>2]|0; + $77 = HEAP32[$p>>2]|0; + $78 = (($77) + 12|0); + $79 = HEAP32[$78>>2]|0; + $80 = (($79) + 12|0); + HEAP32[$80>>2] = $76; + $81 = HEAP32[$p>>2]|0; + $82 = (($81) + 12|0); + $83 = HEAP32[$82>>2]|0; + $84 = (($83) + 248|0); + HEAP32[$84>>2] = 1; + $85 = HEAP32[$p>>2]|0; + $86 = (($85) + 12|0); + $87 = HEAP32[$86>>2]|0; + $88 = (($87) + 16|0); + $89 = HEAP32[$88>>2]|0; + $90 = HEAP32[$zDb>>2]|0; + $91 = HEAP32[$nDb>>2]|0; + _memcpy(($89|0),($90|0),($91|0))|0; + $92 = HEAP32[$p>>2]|0; + $93 = (($92) + 12|0); + $94 = HEAP32[$93>>2]|0; + $95 = (($94) + 20|0); + $96 = HEAP32[$95>>2]|0; + $97 = HEAP32[$zFts3>>2]|0; + $98 = HEAP32[$nFts3>>2]|0; + _memcpy(($96|0),($97|0),($98|0))|0; + $99 = HEAP32[$p>>2]|0; + $100 = (($99) + 12|0); + $101 = HEAP32[$100>>2]|0; + $102 = (($101) + 20|0); + $103 = HEAP32[$102>>2]|0; + _sqlite3Fts3Dequote($103); + $104 = HEAP32[$p>>2]|0; + $105 = HEAP32[$5>>2]|0; + HEAP32[$105>>2] = $104; + HEAP32[$0>>2] = 0; + $108 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($108|0); + } else { + HEAP32[$0>>2] = 7; + $108 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($108|0); + } + } + } while(0); + $106 = (_sqlite3_mprintf(9960,$vararg_buffer)|0); + $107 = HEAP32[$6>>2]|0; + HEAP32[$107>>2] = $106; + HEAP32[$0>>2] = 1; + $108 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($108|0); +} +function _fts3auxBestIndexMethod($pVTab,$pInfo) { + $pVTab = $pVTab|0; + $pInfo = $pInfo|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0.0, $101 = 0.0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0.0, $118 = 0.0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0.0, $131 = 0.0, $14 = 0, $15 = 0; + var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iCol = 0, $iEq = 0, $iGe = 0, $iLangid = 0, $iLe = 0, $iNext = 0, $op = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $i = sp + 28|0; + $iEq = sp + 24|0; + $iGe = sp + 20|0; + $iLe = sp + 16|0; + $iLangid = sp + 8|0; + $iNext = sp + 4|0; + $op = sp; + $iCol = sp + 12|0; + HEAP32[$0>>2] = $pVTab; + HEAP32[$1>>2] = $pInfo; + HEAP32[$iEq>>2] = -1; + HEAP32[$iGe>>2] = -1; + HEAP32[$iLe>>2] = -1; + HEAP32[$iLangid>>2] = -1; + HEAP32[$iNext>>2] = 1; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 8|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)==(1); + if ($5) { + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)==(0); + if ($10) { + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 12|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = ($16|0)==(0); + if ($17) { + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 32|0); + HEAP32[$19>>2] = 1; + } + } + } + HEAP32[$i>>2] = 0; + while(1) { + $20 = HEAP32[$i>>2]|0; + $21 = HEAP32[$1>>2]|0; + $22 = HEAP32[$21>>2]|0; + $23 = ($20|0)<($22|0); + if (!($23)) { + break; + } + $24 = HEAP32[$i>>2]|0; + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 4|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + (($24*12)|0)|0); + $29 = (($28) + 5|0); + $30 = HEAP8[$29>>0]|0; + $31 = ($30<<24>>24)!=(0); + if ($31) { + $32 = HEAP32[$i>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 4|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + (($32*12)|0)|0); + $37 = (($36) + 4|0); + $38 = HEAP8[$37>>0]|0; + $39 = $38&255; + HEAP32[$op>>2] = $39; + $40 = HEAP32[$i>>2]|0; + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 4|0); + $43 = HEAP32[$42>>2]|0; + $44 = (($43) + (($40*12)|0)|0); + $45 = HEAP32[$44>>2]|0; + HEAP32[$iCol>>2] = $45; + $46 = HEAP32[$iCol>>2]|0; + $47 = ($46|0)==(0); + if ($47) { + $48 = HEAP32[$op>>2]|0; + $49 = ($48|0)==(2); + if ($49) { + $50 = HEAP32[$i>>2]|0; + HEAP32[$iEq>>2] = $50; + } + $51 = HEAP32[$op>>2]|0; + $52 = ($51|0)==(16); + if ($52) { + $53 = HEAP32[$i>>2]|0; + HEAP32[$iLe>>2] = $53; + } + $54 = HEAP32[$op>>2]|0; + $55 = ($54|0)==(8); + if ($55) { + $56 = HEAP32[$i>>2]|0; + HEAP32[$iLe>>2] = $56; + } + $57 = HEAP32[$op>>2]|0; + $58 = ($57|0)==(4); + if ($58) { + $59 = HEAP32[$i>>2]|0; + HEAP32[$iGe>>2] = $59; + } + $60 = HEAP32[$op>>2]|0; + $61 = ($60|0)==(32); + if ($61) { + $62 = HEAP32[$i>>2]|0; + HEAP32[$iGe>>2] = $62; + } + } + $63 = HEAP32[$iCol>>2]|0; + $64 = ($63|0)==(4); + if ($64) { + $65 = HEAP32[$op>>2]|0; + $66 = ($65|0)==(2); + if ($66) { + $67 = HEAP32[$i>>2]|0; + HEAP32[$iLangid>>2] = $67; + } + } + } + $68 = HEAP32[$i>>2]|0; + $69 = (($68) + 1)|0; + HEAP32[$i>>2] = $69; + } + $70 = HEAP32[$iEq>>2]|0; + $71 = ($70|0)>=(0); + $72 = HEAP32[$1>>2]|0; + $73 = (($72) + 20|0); + if ($71) { + HEAP32[$73>>2] = 1; + $74 = HEAP32[$iNext>>2]|0; + $75 = (($74) + 1)|0; + HEAP32[$iNext>>2] = $75; + $76 = HEAP32[$iEq>>2]|0; + $77 = HEAP32[$1>>2]|0; + $78 = (($77) + 16|0); + $79 = HEAP32[$78>>2]|0; + $80 = (($79) + ($76<<3)|0); + HEAP32[$80>>2] = $74; + $81 = HEAP32[$1>>2]|0; + $82 = (($81) + 40|0); + HEAPF64[$82>>3] = 5.0; + } else { + HEAP32[$73>>2] = 0; + $83 = HEAP32[$1>>2]|0; + $84 = (($83) + 40|0); + HEAPF64[$84>>3] = 2.0E+4; + $85 = HEAP32[$iGe>>2]|0; + $86 = ($85|0)>=(0); + if ($86) { + $87 = HEAP32[$1>>2]|0; + $88 = (($87) + 20|0); + $89 = HEAP32[$88>>2]|0; + $90 = (($89) + 2)|0; + HEAP32[$88>>2] = $90; + $91 = HEAP32[$iNext>>2]|0; + $92 = (($91) + 1)|0; + HEAP32[$iNext>>2] = $92; + $93 = HEAP32[$iGe>>2]|0; + $94 = HEAP32[$1>>2]|0; + $95 = (($94) + 16|0); + $96 = HEAP32[$95>>2]|0; + $97 = (($96) + ($93<<3)|0); + HEAP32[$97>>2] = $91; + $98 = HEAP32[$1>>2]|0; + $99 = (($98) + 40|0); + $100 = +HEAPF64[$99>>3]; + $101 = $100 / 2.0; + HEAPF64[$99>>3] = $101; + } + $102 = HEAP32[$iLe>>2]|0; + $103 = ($102|0)>=(0); + if ($103) { + $104 = HEAP32[$1>>2]|0; + $105 = (($104) + 20|0); + $106 = HEAP32[$105>>2]|0; + $107 = (($106) + 4)|0; + HEAP32[$105>>2] = $107; + $108 = HEAP32[$iNext>>2]|0; + $109 = (($108) + 1)|0; + HEAP32[$iNext>>2] = $109; + $110 = HEAP32[$iLe>>2]|0; + $111 = HEAP32[$1>>2]|0; + $112 = (($111) + 16|0); + $113 = HEAP32[$112>>2]|0; + $114 = (($113) + ($110<<3)|0); + HEAP32[$114>>2] = $108; + $115 = HEAP32[$1>>2]|0; + $116 = (($115) + 40|0); + $117 = +HEAPF64[$116>>3]; + $118 = $117 / 2.0; + HEAPF64[$116>>3] = $118; + } + } + $119 = HEAP32[$iLangid>>2]|0; + $120 = ($119|0)>=(0); + if (!($120)) { + STACKTOP = sp;return 0; + } + $121 = HEAP32[$iNext>>2]|0; + $122 = (($121) + 1)|0; + HEAP32[$iNext>>2] = $122; + $123 = HEAP32[$iLangid>>2]|0; + $124 = HEAP32[$1>>2]|0; + $125 = (($124) + 16|0); + $126 = HEAP32[$125>>2]|0; + $127 = (($126) + ($123<<3)|0); + HEAP32[$127>>2] = $121; + $128 = HEAP32[$1>>2]|0; + $129 = (($128) + 40|0); + $130 = +HEAPF64[$129>>3]; + $131 = $130 + -1.0; + HEAPF64[$129>>3] = $131; + STACKTOP = sp;return 0; +} +function _fts3auxDisconnectMethod($pVtab) { + $pVtab = $pVtab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0; + var $pFts3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $p = sp; + $pFts3 = sp + 4|0; + $i = sp + 8|0; + HEAP32[$0>>2] = $pVtab; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + $2 = HEAP32[$p>>2]|0; + $3 = (($2) + 12|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pFts3>>2] = $4; + HEAP32[$i>>2] = 0; + while(1) { + $5 = HEAP32[$i>>2]|0; + $6 = ($5|0)<(40); + if (!($6)) { + break; + } + $7 = HEAP32[$i>>2]|0; + $8 = HEAP32[$pFts3>>2]|0; + $9 = (($8) + 56|0); + $10 = (($9) + ($7<<2)|0); + $11 = HEAP32[$10>>2]|0; + (_sqlite3_finalize($11)|0); + $12 = HEAP32[$i>>2]|0; + $13 = (($12) + 1)|0; + HEAP32[$i>>2] = $13; + } + $14 = HEAP32[$pFts3>>2]|0; + $15 = (($14) + 240|0); + $16 = HEAP32[$15>>2]|0; + _sqlite3_free($16); + $17 = HEAP32[$p>>2]|0; + _sqlite3_free($17); + STACKTOP = sp;return 0; +} +function _fts3auxOpenMethod($pVTab,$ppCsr) { + $pVTab = $pVTab|0; + $ppCsr = $ppCsr|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCsr = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pCsr = sp + 8|0; + HEAP32[$1>>2] = $pVTab; + HEAP32[$2>>2] = $ppCsr; + $3 = (_sqlite3_malloc(120)|0); + HEAP32[$pCsr>>2] = $3; + $4 = HEAP32[$pCsr>>2]|0; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = HEAP32[$pCsr>>2]|0; + dest=$6+0|0; stop=dest+120|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $7 = HEAP32[$pCsr>>2]|0; + $8 = HEAP32[$2>>2]|0; + HEAP32[$8>>2] = $7; + HEAP32[$0>>2] = 0; + $9 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($9|0); + } else { + HEAP32[$0>>2] = 7; + $9 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($9|0); + } + return 0|0; +} +function _fts3auxCloseMethod($pCursor) { + $pCursor = $pCursor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCsr = 0; + var $pFts3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $pFts3 = sp; + $pCsr = sp + 4|0; + HEAP32[$0>>2] = $pCursor; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 12|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pFts3>>2] = $4; + $5 = HEAP32[$0>>2]|0; + HEAP32[$pCsr>>2] = $5; + $6 = HEAP32[$pFts3>>2]|0; + _sqlite3Fts3SegmentsClose($6); + $7 = HEAP32[$pCsr>>2]|0; + $8 = (($7) + 4|0); + _sqlite3Fts3SegReaderFinish($8); + $9 = HEAP32[$pCsr>>2]|0; + $10 = (($9) + 60|0); + $11 = HEAP32[$10>>2]|0; + _sqlite3_free($11); + $12 = HEAP32[$pCsr>>2]|0; + $13 = (($12) + 76|0); + $14 = HEAP32[$13>>2]|0; + _sqlite3_free($14); + $15 = HEAP32[$pCsr>>2]|0; + $16 = (($15) + 112|0); + $17 = HEAP32[$16>>2]|0; + _sqlite3_free($17); + $18 = HEAP32[$pCsr>>2]|0; + _sqlite3_free($18); + STACKTOP = sp;return 0; +} +function _fts3auxFilterMethod($pCursor,$idxNum,$idxStr,$nVal,$apVal) { + $pCursor = $pCursor|0; + $idxNum = $idxNum|0; + $idxStr = $idxStr|0; + $nVal = $nVal|0; + $apVal = $apVal|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; + var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; + var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $iEq = 0, $iGe = 0, $iLangVal = 0, $iLangid = 0, $iLe = 0, $iNext = 0, $isScan = 0, $pCsr = 0, $pFts3 = 0, $rc = 0, $vararg_buffer1 = 0, $zStr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer1 = sp; + $0 = sp + 64|0; + $1 = sp + 60|0; + $2 = sp + 56|0; + $3 = sp + 52|0; + $4 = sp + 48|0; + $5 = sp + 44|0; + $pCsr = sp + 40|0; + $pFts3 = sp + 36|0; + $rc = sp + 68|0; + $isScan = sp + 24|0; + $iLangVal = sp + 20|0; + $iEq = sp + 16|0; + $iGe = sp + 12|0; + $iLe = sp + 8|0; + $iLangid = sp + 4|0; + $iNext = sp + 28|0; + $zStr = sp + 32|0; + HEAP32[$1>>2] = $pCursor; + HEAP32[$2>>2] = $idxNum; + HEAP32[$3>>2] = $idxStr; + HEAP32[$4>>2] = $nVal; + HEAP32[$5>>2] = $apVal; + $6 = HEAP32[$1>>2]|0; + HEAP32[$pCsr>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = (($8) + 12|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$pFts3>>2] = $10; + HEAP32[$isScan>>2] = 0; + HEAP32[$iLangVal>>2] = 0; + HEAP32[$iEq>>2] = -1; + HEAP32[$iGe>>2] = -1; + HEAP32[$iLe>>2] = -1; + HEAP32[$iLangid>>2] = -1; + HEAP32[$iNext>>2] = 0; + $11 = HEAP32[$2>>2]|0; + $12 = ($11|0)==(1); + if ($12) { + $13 = HEAP32[$iNext>>2]|0; + $14 = (($13) + 1)|0; + HEAP32[$iNext>>2] = $14; + HEAP32[$iEq>>2] = $13; + } else { + HEAP32[$isScan>>2] = 1; + $15 = HEAP32[$2>>2]|0; + $16 = $15 & 2; + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$iNext>>2]|0; + $19 = (($18) + 1)|0; + HEAP32[$iNext>>2] = $19; + HEAP32[$iGe>>2] = $18; + } + $20 = HEAP32[$2>>2]|0; + $21 = $20 & 4; + $22 = ($21|0)!=(0); + if ($22) { + $23 = HEAP32[$iNext>>2]|0; + $24 = (($23) + 1)|0; + HEAP32[$iNext>>2] = $24; + HEAP32[$iLe>>2] = $23; + } + } + $25 = HEAP32[$iNext>>2]|0; + $26 = HEAP32[$4>>2]|0; + $27 = ($25|0)<($26|0); + if ($27) { + $28 = HEAP32[$iNext>>2]|0; + $29 = (($28) + 1)|0; + HEAP32[$iNext>>2] = $29; + HEAP32[$iLangid>>2] = $28; + } + $30 = HEAP32[$pCsr>>2]|0; + $31 = (($30) + 4|0); + _sqlite3Fts3SegReaderFinish($31); + $32 = HEAP32[$pCsr>>2]|0; + $33 = (($32) + 60|0); + $34 = HEAP32[$33>>2]|0; + _sqlite3_free($34); + $35 = HEAP32[$pCsr>>2]|0; + $36 = (($35) + 112|0); + $37 = HEAP32[$36>>2]|0; + _sqlite3_free($37); + $38 = HEAP32[$pCsr>>2]|0; + $39 = (($38) + 4|0); + $40 = HEAP32[$pCsr>>2]|0; + $41 = (($40) + 120|0); + $42 = HEAP32[$pCsr>>2]|0; + $43 = (($42) + 4|0); + $44 = $41; + $45 = $43; + $46 = (($44) - ($45))|0; + _memset(($39|0),0,($46|0))|0; + $47 = HEAP32[$pCsr>>2]|0; + $48 = (($47) + 60|0); + $49 = (($48) + 12|0); + HEAP32[$49>>2] = 3; + $50 = HEAP32[$isScan>>2]|0; + $51 = ($50|0)!=(0); + if ($51) { + $52 = HEAP32[$pCsr>>2]|0; + $53 = (($52) + 60|0); + $54 = (($53) + 12|0); + $55 = HEAP32[$54>>2]|0; + $56 = $55 | 16; + HEAP32[$54>>2] = $56; + } + $57 = HEAP32[$iEq>>2]|0; + $58 = ($57|0)>=(0); + if ($58) { + label = 13; + } else { + $59 = HEAP32[$iGe>>2]|0; + $60 = ($59|0)>=(0); + if ($60) { + label = 13; + } + } + if ((label|0) == 13) { + $61 = HEAP32[$5>>2]|0; + $62 = HEAP32[$61>>2]|0; + $63 = (_sqlite3_value_text($62)|0); + HEAP32[$zStr>>2] = $63; + $64 = HEAP32[$zStr>>2]|0; + $65 = ($64|0)!=(0|0); + if ($65) { + $66 = HEAP32[$zStr>>2]|0; + HEAP32[$vararg_buffer1>>2] = $66; + $67 = (_sqlite3_mprintf(1768,$vararg_buffer1)|0); + $68 = HEAP32[$pCsr>>2]|0; + $69 = (($68) + 60|0); + HEAP32[$69>>2] = $67; + $70 = HEAP32[$5>>2]|0; + $71 = HEAP32[$70>>2]|0; + $72 = (_sqlite3_value_bytes($71)|0); + $73 = HEAP32[$pCsr>>2]|0; + $74 = (($73) + 60|0); + $75 = (($74) + 4|0); + HEAP32[$75>>2] = $72; + $76 = HEAP32[$pCsr>>2]|0; + $77 = (($76) + 60|0); + $78 = HEAP32[$77>>2]|0; + $79 = ($78|0)==(0|0); + if ($79) { + HEAP32[$0>>2] = 7; + $139 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($139|0); + } + } + } + $80 = HEAP32[$iLe>>2]|0; + $81 = ($80|0)>=(0); + if ($81) { + $82 = HEAP32[$iLe>>2]|0; + $83 = HEAP32[$5>>2]|0; + $84 = (($83) + ($82<<2)|0); + $85 = HEAP32[$84>>2]|0; + $86 = (_sqlite3_value_text($85)|0); + HEAP32[$vararg_buffer1>>2] = $86; + $87 = (_sqlite3_mprintf(1768,$vararg_buffer1)|0); + $88 = HEAP32[$pCsr>>2]|0; + $89 = (($88) + 76|0); + HEAP32[$89>>2] = $87; + $90 = HEAP32[$iLe>>2]|0; + $91 = HEAP32[$5>>2]|0; + $92 = (($91) + ($90<<2)|0); + $93 = HEAP32[$92>>2]|0; + $94 = (_sqlite3_value_bytes($93)|0); + $95 = HEAP32[$pCsr>>2]|0; + $96 = (($95) + 80|0); + HEAP32[$96>>2] = $94; + $97 = HEAP32[$pCsr>>2]|0; + $98 = (($97) + 76|0); + $99 = HEAP32[$98>>2]|0; + $100 = ($99|0)==(0|0); + if ($100) { + HEAP32[$0>>2] = 7; + $139 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($139|0); + } + } + $101 = HEAP32[$iLangid>>2]|0; + $102 = ($101|0)>=(0); + if ($102) { + $103 = HEAP32[$iLangid>>2]|0; + $104 = HEAP32[$5>>2]|0; + $105 = (($104) + ($103<<2)|0); + $106 = HEAP32[$105>>2]|0; + $107 = (_sqlite3_value_int($106)|0); + HEAP32[$iLangVal>>2] = $107; + $108 = HEAP32[$iLangVal>>2]|0; + $109 = ($108|0)<(0); + $$ = $109 ? 0 : $107; + HEAP32[$iLangVal>>2] = $$; + } + $110 = HEAP32[$iLangVal>>2]|0; + $111 = HEAP32[$pCsr>>2]|0; + $112 = (($111) + 84|0); + HEAP32[$112>>2] = $110; + $113 = HEAP32[$pFts3>>2]|0; + $114 = HEAP32[$iLangVal>>2]|0; + $115 = HEAP32[$pCsr>>2]|0; + $116 = (($115) + 60|0); + $117 = HEAP32[$116>>2]|0; + $118 = HEAP32[$pCsr>>2]|0; + $119 = (($118) + 60|0); + $120 = (($119) + 4|0); + $121 = HEAP32[$120>>2]|0; + $122 = HEAP32[$isScan>>2]|0; + $123 = HEAP32[$pCsr>>2]|0; + $124 = (($123) + 4|0); + $125 = (_sqlite3Fts3SegReaderCursor($113,$114,0,-2,$117,$121,0,$122,$124)|0); + HEAP32[$rc>>2] = $125; + $126 = HEAP32[$rc>>2]|0; + $127 = ($126|0)==(0); + if ($127) { + $128 = HEAP32[$pFts3>>2]|0; + $129 = HEAP32[$pCsr>>2]|0; + $130 = (($129) + 4|0); + $131 = HEAP32[$pCsr>>2]|0; + $132 = (($131) + 60|0); + $133 = (_sqlite3Fts3SegReaderStart($128,$130,$132)|0); + HEAP32[$rc>>2] = $133; + } + $134 = HEAP32[$rc>>2]|0; + $135 = ($134|0)==(0); + if ($135) { + $136 = HEAP32[$1>>2]|0; + $137 = (_fts3auxNextMethod($136)|0); + HEAP32[$rc>>2] = $137; + } + $138 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $138; + $139 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($139|0); +} +function _fts3auxNextMethod($pCursor) { + $pCursor = $pCursor|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; + var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; + var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; + var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; + var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aDoclist = 0, $eState = 0, $i = 0, $iCol = 0, $mc = 0, $n = 0, $nDoclist = 0, $pCsr = 0, $pFts3 = 0, $rc = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 52|0; + $1 = sp + 48|0; + $pCsr = sp + 44|0; + $pFts3 = sp + 40|0; + $rc = sp + 36|0; + $i = sp + 32|0; + $nDoclist = sp + 28|0; + $aDoclist = sp + 20|0; + $iCol = sp + 16|0; + $eState = sp + 12|0; + $n = sp + 8|0; + $mc = sp + 24|0; + $v = sp; + HEAP32[$1>>2] = $pCursor; + $2 = HEAP32[$1>>2]|0; + HEAP32[$pCsr>>2] = $2; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 12|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$pFts3>>2] = $6; + $7 = HEAP32[$pCsr>>2]|0; + $8 = (($7) + 96|0); + $9 = $8; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = (($9) + 4)|0; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = (_i64Add(($11|0),($14|0),1,0)|0); + $16 = tempRet0; + $17 = $8; + $18 = $17; + HEAP32[$18>>2] = $15; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = $16; + $21 = HEAP32[$pCsr>>2]|0; + $22 = (($21) + 104|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + 1)|0; + HEAP32[$22>>2] = $24; + while(1) { + $25 = HEAP32[$pCsr>>2]|0; + $26 = (($25) + 104|0); + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$pCsr>>2]|0; + $29 = (($28) + 108|0); + $30 = HEAP32[$29>>2]|0; + $31 = ($27|0)<($30|0); + if (!($31)) { + break; + } + $32 = HEAP32[$pCsr>>2]|0; + $33 = (($32) + 104|0); + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$pCsr>>2]|0; + $36 = (($35) + 112|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + ($34<<4)|0); + $39 = $38; + $40 = $39; + $41 = HEAP32[$40>>2]|0; + $42 = (($39) + 4)|0; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = ($44|0)>(0); + $46 = ($44|0)==(0); + $47 = ($41>>>0)>(0); + $48 = $46 & $47; + $49 = $45 | $48; + if ($49) { + label = 4; + break; + } + $50 = HEAP32[$pCsr>>2]|0; + $51 = (($50) + 104|0); + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + 1)|0; + HEAP32[$51>>2] = $53; + } + if ((label|0) == 4) { + HEAP32[$0>>2] = 0; + $263 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($263|0); + } + $54 = HEAP32[$pFts3>>2]|0; + $55 = HEAP32[$pCsr>>2]|0; + $56 = (($55) + 4|0); + $57 = (_sqlite3Fts3SegReaderStep($54,$56)|0); + HEAP32[$rc>>2] = $57; + $58 = HEAP32[$rc>>2]|0; + $59 = ($58|0)==(100); + do { + if ($59) { + HEAP32[$i>>2] = 0; + $60 = HEAP32[$pCsr>>2]|0; + $61 = (($60) + 4|0); + $62 = (($61) + 52|0); + $63 = HEAP32[$62>>2]|0; + HEAP32[$nDoclist>>2] = $63; + $64 = HEAP32[$pCsr>>2]|0; + $65 = (($64) + 4|0); + $66 = (($65) + 48|0); + $67 = HEAP32[$66>>2]|0; + HEAP32[$aDoclist>>2] = $67; + HEAP32[$eState>>2] = 0; + $68 = HEAP32[$pCsr>>2]|0; + $69 = (($68) + 76|0); + $70 = HEAP32[$69>>2]|0; + $71 = ($70|0)!=(0|0); + do { + if ($71) { + $72 = HEAP32[$pCsr>>2]|0; + $73 = (($72) + 80|0); + $74 = HEAP32[$73>>2]|0; + $75 = HEAP32[$pCsr>>2]|0; + $76 = (($75) + 4|0); + $77 = (($76) + 44|0); + $78 = HEAP32[$77>>2]|0; + $79 = ($74|0)<($78|0); + $80 = HEAP32[$pCsr>>2]|0; + if ($79) { + $81 = (($80) + 80|0); + $82 = HEAP32[$81>>2]|0; + $86 = $82; + } else { + $83 = (($80) + 4|0); + $84 = (($83) + 44|0); + $85 = HEAP32[$84>>2]|0; + $86 = $85; + } + HEAP32[$n>>2] = $86; + $87 = HEAP32[$pCsr>>2]|0; + $88 = (($87) + 76|0); + $89 = HEAP32[$88>>2]|0; + $90 = HEAP32[$pCsr>>2]|0; + $91 = (($90) + 4|0); + $92 = (($91) + 40|0); + $93 = HEAP32[$92>>2]|0; + $94 = HEAP32[$n>>2]|0; + $95 = (_memcmp($89,$93,$94)|0); + HEAP32[$mc>>2] = $95; + $96 = HEAP32[$mc>>2]|0; + $97 = ($96|0)<(0); + if (!($97)) { + $98 = HEAP32[$mc>>2]|0; + $99 = ($98|0)==(0); + if (!($99)) { + break; + } + $100 = HEAP32[$pCsr>>2]|0; + $101 = (($100) + 4|0); + $102 = (($101) + 44|0); + $103 = HEAP32[$102>>2]|0; + $104 = HEAP32[$pCsr>>2]|0; + $105 = (($104) + 80|0); + $106 = HEAP32[$105>>2]|0; + $107 = ($103|0)>($106|0); + if (!($107)) { + break; + } + } + $108 = HEAP32[$pCsr>>2]|0; + $109 = (($108) + 88|0); + HEAP32[$109>>2] = 1; + HEAP32[$0>>2] = 0; + $263 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($263|0); + } + } while(0); + $110 = HEAP32[$pCsr>>2]|0; + $111 = (_fts3auxGrowStatArray($110,2)|0); + $112 = ($111|0)!=(0); + if ($112) { + HEAP32[$0>>2] = 7; + $263 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($263|0); + } + $113 = HEAP32[$pCsr>>2]|0; + $114 = (($113) + 112|0); + $115 = HEAP32[$114>>2]|0; + $116 = HEAP32[$pCsr>>2]|0; + $117 = (($116) + 108|0); + $118 = HEAP32[$117>>2]|0; + $119 = $118<<4; + _memset(($115|0),0,($119|0))|0; + HEAP32[$iCol>>2] = 0; + while(1) { + $120 = HEAP32[$i>>2]|0; + $121 = HEAP32[$nDoclist>>2]|0; + $122 = ($120|0)<($121|0); + if (!($122)) { + label = 32; + break; + } + $123 = $v; + $124 = $123; + HEAP32[$124>>2] = 0; + $125 = (($123) + 4)|0; + $126 = $125; + HEAP32[$126>>2] = 0; + $127 = HEAP32[$i>>2]|0; + $128 = HEAP32[$aDoclist>>2]|0; + $129 = (($128) + ($127)|0); + $130 = (_sqlite3Fts3GetVarint($129,$v)|0); + $131 = HEAP32[$i>>2]|0; + $132 = (($131) + ($130))|0; + HEAP32[$i>>2] = $132; + $133 = HEAP32[$eState>>2]|0; + if ((($133|0) == 0)) { + $134 = HEAP32[$pCsr>>2]|0; + $135 = (($134) + 112|0); + $136 = HEAP32[$135>>2]|0; + $137 = $136; + $138 = $137; + $139 = HEAP32[$138>>2]|0; + $140 = (($137) + 4)|0; + $141 = $140; + $142 = HEAP32[$141>>2]|0; + $143 = (_i64Add(($139|0),($142|0),1,0)|0); + $144 = tempRet0; + $145 = $136; + $146 = $145; + HEAP32[$146>>2] = $143; + $147 = (($145) + 4)|0; + $148 = $147; + HEAP32[$148>>2] = $144; + HEAP32[$eState>>2] = 1; + HEAP32[$iCol>>2] = 0; + continue; + } else if ((($133|0) == 1)) { + $149 = $v; + $150 = $149; + $151 = HEAP32[$150>>2]|0; + $152 = (($149) + 4)|0; + $153 = $152; + $154 = HEAP32[$153>>2]|0; + $155 = ($154|0)>(0); + $156 = ($154|0)==(0); + $157 = ($151>>>0)>(1); + $158 = $156 & $157; + $159 = $155 | $158; + if ($159) { + $160 = HEAP32[$pCsr>>2]|0; + $161 = (($160) + 112|0); + $162 = HEAP32[$161>>2]|0; + $163 = (($162) + 16|0); + $164 = $163; + $165 = $164; + $166 = HEAP32[$165>>2]|0; + $167 = (($164) + 4)|0; + $168 = $167; + $169 = HEAP32[$168>>2]|0; + $170 = (_i64Add(($166|0),($169|0),1,0)|0); + $171 = tempRet0; + $172 = $163; + $173 = $172; + HEAP32[$173>>2] = $170; + $174 = (($172) + 4)|0; + $175 = $174; + HEAP32[$175>>2] = $171; + } + HEAP32[$eState>>2] = 2; + } else if (!((($133|0) == 2))) { + $229 = $v; + $230 = $229; + $231 = HEAP32[$230>>2]|0; + $232 = (($229) + 4)|0; + $233 = $232; + $234 = HEAP32[$233>>2]|0; + HEAP32[$iCol>>2] = $231; + $235 = HEAP32[$pCsr>>2]|0; + $236 = HEAP32[$iCol>>2]|0; + $237 = (($236) + 2)|0; + $238 = (_fts3auxGrowStatArray($235,$237)|0); + $239 = ($238|0)!=(0); + if ($239) { + break; + } + $240 = HEAP32[$iCol>>2]|0; + $241 = (($240) + 1)|0; + $242 = HEAP32[$pCsr>>2]|0; + $243 = (($242) + 112|0); + $244 = HEAP32[$243>>2]|0; + $245 = (($244) + ($241<<4)|0); + $246 = $245; + $247 = $246; + $248 = HEAP32[$247>>2]|0; + $249 = (($246) + 4)|0; + $250 = $249; + $251 = HEAP32[$250>>2]|0; + $252 = (_i64Add(($248|0),($251|0),1,0)|0); + $253 = tempRet0; + $254 = $245; + $255 = $254; + HEAP32[$255>>2] = $252; + $256 = (($254) + 4)|0; + $257 = $256; + HEAP32[$257>>2] = $253; + HEAP32[$eState>>2] = 2; + continue; + } + $176 = $v; + $177 = $176; + $178 = HEAP32[$177>>2]|0; + $179 = (($176) + 4)|0; + $180 = $179; + $181 = HEAP32[$180>>2]|0; + $182 = ($178|0)==(0); + $183 = ($181|0)==(0); + $184 = $182 & $183; + if ($184) { + HEAP32[$eState>>2] = 0; + continue; + } + $185 = $v; + $186 = $185; + $187 = HEAP32[$186>>2]|0; + $188 = (($185) + 4)|0; + $189 = $188; + $190 = HEAP32[$189>>2]|0; + $191 = ($187|0)==(1); + $192 = ($190|0)==(0); + $193 = $191 & $192; + if ($193) { + HEAP32[$eState>>2] = 3; + continue; + } else { + $194 = HEAP32[$iCol>>2]|0; + $195 = (($194) + 1)|0; + $196 = HEAP32[$pCsr>>2]|0; + $197 = (($196) + 112|0); + $198 = HEAP32[$197>>2]|0; + $199 = (($198) + ($195<<4)|0); + $200 = (($199) + 8|0); + $201 = $200; + $202 = $201; + $203 = HEAP32[$202>>2]|0; + $204 = (($201) + 4)|0; + $205 = $204; + $206 = HEAP32[$205>>2]|0; + $207 = (_i64Add(($203|0),($206|0),1,0)|0); + $208 = tempRet0; + $209 = $200; + $210 = $209; + HEAP32[$210>>2] = $207; + $211 = (($209) + 4)|0; + $212 = $211; + HEAP32[$212>>2] = $208; + $213 = HEAP32[$pCsr>>2]|0; + $214 = (($213) + 112|0); + $215 = HEAP32[$214>>2]|0; + $216 = (($215) + 8|0); + $217 = $216; + $218 = $217; + $219 = HEAP32[$218>>2]|0; + $220 = (($217) + 4)|0; + $221 = $220; + $222 = HEAP32[$221>>2]|0; + $223 = (_i64Add(($219|0),($222|0),1,0)|0); + $224 = tempRet0; + $225 = $216; + $226 = $225; + HEAP32[$226>>2] = $223; + $227 = (($225) + 4)|0; + $228 = $227; + HEAP32[$228>>2] = $224; + continue; + } + } + if ((label|0) == 32) { + $258 = HEAP32[$pCsr>>2]|0; + $259 = (($258) + 104|0); + HEAP32[$259>>2] = 0; + HEAP32[$rc>>2] = 0; + break; + } + HEAP32[$0>>2] = 7; + $263 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($263|0); + } else { + $260 = HEAP32[$pCsr>>2]|0; + $261 = (($260) + 88|0); + HEAP32[$261>>2] = 1; + } + } while(0); + $262 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $262; + $263 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($263|0); +} +function _fts3auxEofMethod($pCursor) { + $pCursor = $pCursor|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $pCsr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pCsr = sp; + HEAP32[$0>>2] = $pCursor; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pCsr>>2] = $1; + $2 = HEAP32[$pCsr>>2]|0; + $3 = (($2) + 88|0); + $4 = HEAP32[$3>>2]|0; + STACKTOP = sp;return ($4|0); +} +function _fts3auxColumnMethod($pCursor,$pCtx,$iCol) { + $pCursor = $pCursor|0; + $pCtx = $pCtx|0; + $iCol = $iCol|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + HEAP32[$0>>2] = $pCursor; + HEAP32[$1>>2] = $pCtx; + HEAP32[$2>>2] = $iCol; + $3 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $3; + $4 = HEAP32[$2>>2]|0; + if ((($4|0) == 0)) { + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$p>>2]|0; + $7 = (($6) + 4|0); + $8 = (($7) + 40|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$p>>2]|0; + $11 = (($10) + 4|0); + $12 = (($11) + 44|0); + $13 = HEAP32[$12>>2]|0; + _sqlite3_result_text($5,$9,$13,(-1)); + STACKTOP = sp;return 0; + } else if ((($4|0) == 3)) { + $37 = HEAP32[$1>>2]|0; + $38 = HEAP32[$p>>2]|0; + $39 = (($38) + 104|0); + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$p>>2]|0; + $42 = (($41) + 112|0); + $43 = HEAP32[$42>>2]|0; + $44 = (($43) + ($40<<4)|0); + $45 = (($44) + 8|0); + $46 = $45; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = (($46) + 4)|0; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + _sqlite3_result_int64($37,$48,$51); + STACKTOP = sp;return 0; + } else if ((($4|0) == 2)) { + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$p>>2]|0; + $25 = (($24) + 104|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$p>>2]|0; + $28 = (($27) + 112|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + ($26<<4)|0); + $31 = $30; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + _sqlite3_result_int64($23,$33,$36); + STACKTOP = sp;return 0; + } else if ((($4|0) == 1)) { + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 104|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(0); + $18 = HEAP32[$1>>2]|0; + if ($17) { + $19 = HEAP32[$p>>2]|0; + $20 = (($19) + 104|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) - 1)|0; + _sqlite3_result_int($18,$22); + STACKTOP = sp;return 0; + } else { + _sqlite3_result_text($18,9880,-1,0); + STACKTOP = sp;return 0; + } + } else { + $52 = HEAP32[$1>>2]|0; + $53 = HEAP32[$p>>2]|0; + $54 = (($53) + 84|0); + $55 = HEAP32[$54>>2]|0; + _sqlite3_result_int($52,$55); + STACKTOP = sp;return 0; + } + return 0|0; +} +function _fts3auxRowidMethod($pCursor,$pRowid) { + $pCursor = $pCursor|0; + $pRowid = $pRowid|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCsr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pCsr = sp + 4|0; + HEAP32[$0>>2] = $pCursor; + HEAP32[$1>>2] = $pRowid; + $2 = HEAP32[$0>>2]|0; + HEAP32[$pCsr>>2] = $2; + $3 = HEAP32[$pCsr>>2]|0; + $4 = (($3) + 96|0); + $5 = $4; + $6 = $5; + $7 = HEAP32[$6>>2]|0; + $8 = (($5) + 4)|0; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = $11; + $13 = $12; + HEAP32[$13>>2] = $7; + $14 = (($12) + 4)|0; + $15 = $14; + HEAP32[$15>>2] = $10; + STACKTOP = sp;return 0; +} +function _fts3auxGrowStatArray($pCsr,$nSize) { + $pCsr = $pCsr|0; + $nSize = $nSize|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $aNew = sp + 8|0; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $nSize; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 108|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($3|0)>($6|0); + do { + if ($7) { + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 112|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = $11<<4; + $13 = (_sqlite3_realloc($10,$12)|0); + HEAP32[$aNew>>2] = $13; + $14 = HEAP32[$aNew>>2]|0; + $15 = ($14|0)==(0|0); + if (!($15)) { + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 108|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$aNew>>2]|0; + $20 = (($19) + ($18<<4)|0); + $21 = HEAP32[$2>>2]|0; + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 108|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($21) - ($24))|0; + $26 = $25<<4; + _memset(($20|0),0,($26|0))|0; + $27 = HEAP32[$aNew>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 112|0); + HEAP32[$29>>2] = $27; + $30 = HEAP32[$2>>2]|0; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 108|0); + HEAP32[$32>>2] = $30; + break; + } + HEAP32[$0>>2] = 7; + $33 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($33|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $33 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($33|0); +} +function _sqlite3BtreeSchema($p,$nBytes,$xFree) { + $p = $p|0; + $nBytes = $nBytes|0; + $xFree = $xFree|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $pBt = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pBt = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $nBytes; + HEAP32[$2>>2] = $xFree; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pBt>>2] = $5; + $6 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($6); + $7 = HEAP32[$pBt>>2]|0; + $8 = (($7) + 48|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + $11 = HEAP32[$1>>2]|0; + $12 = ($11|0)!=(0); + if ($12) { + $13 = HEAP32[$1>>2]|0; + $14 = (_sqlite3DbMallocZero(0,$13)|0); + $15 = HEAP32[$pBt>>2]|0; + $16 = (($15) + 48|0); + HEAP32[$16>>2] = $14; + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$pBt>>2]|0; + $19 = (($18) + 52|0); + HEAP32[$19>>2] = $17; + } + } + $20 = HEAP32[$pBt>>2]|0; + $21 = (($20) + 48|0); + $22 = HEAP32[$21>>2]|0; + STACKTOP = sp;return ($22|0); +} +function _sqlite3SchemaClear($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pElem = 0, $pSchema = 0, $pTab = 0, $temp1 = 0, $temp2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $temp1 = sp; + $temp2 = sp + 16|0; + $pElem = sp + 32|0; + $pSchema = sp + 36|0; + $pTab = sp + 40|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pSchema>>2] = $1; + $2 = HEAP32[$pSchema>>2]|0; + $3 = (($2) + 8|0); + ;HEAP32[$temp1+0>>2]=HEAP32[$3+0>>2]|0;HEAP32[$temp1+4>>2]=HEAP32[$3+4>>2]|0;HEAP32[$temp1+8>>2]=HEAP32[$3+8>>2]|0;HEAP32[$temp1+12>>2]=HEAP32[$3+12>>2]|0; + $4 = HEAP32[$pSchema>>2]|0; + $5 = (($4) + 40|0); + ;HEAP32[$temp2+0>>2]=HEAP32[$5+0>>2]|0;HEAP32[$temp2+4>>2]=HEAP32[$5+4>>2]|0;HEAP32[$temp2+8>>2]=HEAP32[$5+8>>2]|0;HEAP32[$temp2+12>>2]=HEAP32[$5+12>>2]|0; + $6 = HEAP32[$pSchema>>2]|0; + $7 = (($6) + 40|0); + _sqlite3HashInit($7); + $8 = HEAP32[$pSchema>>2]|0; + $9 = (($8) + 24|0); + _sqlite3HashClear($9); + $10 = (($temp2) + 8|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$pElem>>2] = $11; + while(1) { + $12 = HEAP32[$pElem>>2]|0; + $13 = ($12|0)!=(0|0); + if (!($13)) { + break; + } + $14 = HEAP32[$pElem>>2]|0; + $15 = (($14) + 8|0); + $16 = HEAP32[$15>>2]|0; + _sqlite3DeleteTrigger(0,$16); + $17 = HEAP32[$pElem>>2]|0; + $18 = HEAP32[$17>>2]|0; + HEAP32[$pElem>>2] = $18; + } + _sqlite3HashClear($temp2); + $19 = HEAP32[$pSchema>>2]|0; + $20 = (($19) + 8|0); + _sqlite3HashInit($20); + $21 = (($temp1) + 8|0); + $22 = HEAP32[$21>>2]|0; + HEAP32[$pElem>>2] = $22; + while(1) { + $23 = HEAP32[$pElem>>2]|0; + $24 = ($23|0)!=(0|0); + if (!($24)) { + break; + } + $25 = HEAP32[$pElem>>2]|0; + $26 = (($25) + 8|0); + $27 = HEAP32[$26>>2]|0; + HEAP32[$pTab>>2] = $27; + $28 = HEAP32[$pTab>>2]|0; + _sqlite3DeleteTable(0,$28); + $29 = HEAP32[$pElem>>2]|0; + $30 = HEAP32[$29>>2]|0; + HEAP32[$pElem>>2] = $30; + } + _sqlite3HashClear($temp1); + $31 = HEAP32[$pSchema>>2]|0; + $32 = (($31) + 56|0); + _sqlite3HashClear($32); + $33 = HEAP32[$pSchema>>2]|0; + $34 = (($33) + 72|0); + HEAP32[$34>>2] = 0; + $35 = HEAP32[$pSchema>>2]|0; + $36 = (($35) + 78|0); + $37 = HEAP16[$36>>1]|0; + $38 = $37&65535; + $39 = $38 & 1; + $40 = ($39|0)!=(0); + if (!($40)) { + STACKTOP = sp;return; + } + $41 = HEAP32[$pSchema>>2]|0; + $42 = (($41) + 4|0); + $43 = HEAP32[$42>>2]|0; + $44 = (($43) + 1)|0; + HEAP32[$42>>2] = $44; + $45 = HEAP32[$pSchema>>2]|0; + $46 = (($45) + 78|0); + $47 = HEAP16[$46>>1]|0; + $48 = $47&65535; + $49 = $48 & -2; + $50 = $49&65535; + HEAP16[$46>>1] = $50; + STACKTOP = sp;return; +} +function _sqlite3TempInMemory($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 63|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = ($4|0)==(2); + $6 = $5&1; + STACKTOP = sp;return ($6|0); +} +function _sqlite3OsFullPathname($pVfs,$zPath,$nPathOut,$zPathOut) { + $pVfs = $pVfs|0; + $zPath = $zPath|0; + $nPathOut = $nPathOut|0; + $zPathOut = $zPathOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $pVfs; + HEAP32[$1>>2] = $zPath; + HEAP32[$2>>2] = $nPathOut; + HEAP32[$3>>2] = $zPathOut; + $4 = HEAP32[$3>>2]|0; + HEAP8[$4>>0] = 0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 36|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$3>>2]|0; + $12 = (FUNCTION_TABLE_iiiii[$7 & 31]($8,$9,$10,$11)|0); + STACKTOP = sp;return ($12|0); +} +function _sqlite3PagerVfs($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + STACKTOP = sp;return ($2|0); +} +function _sqlite3PagerOpen($pVfs,$ppPager,$zFilename,$nExtra,$flags,$vfsFlags,$xReinit) { + $pVfs = $pVfs|0; + $ppPager = $ppPager|0; + $zFilename = $zFilename|0; + $nExtra = $nExtra|0; + $flags = $flags|0; + $vfsFlags = $vfsFlags|0; + $xReinit = $xReinit|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $fout = 0, $iDc = 0; + var $journalFileSize = 0, $memDb = 0, $nPathname = 0, $nUri = 0, $pPager = 0, $pPtr = 0, $pcacheSize = 0, $rc = 0, $readOnly = 0, $szPageDflt = 0, $tempFile = 0, $useJournal = 0, $z = 0, $zPathname = 0, $zUri = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $0 = sp + 96|0; + $1 = sp + 92|0; + $2 = sp + 88|0; + $3 = sp + 84|0; + $4 = sp + 80|0; + $5 = sp + 76|0; + $6 = sp + 72|0; + $7 = sp + 68|0; + $pPtr = sp + 64|0; + $pPager = sp + 60|0; + $rc = sp + 56|0; + $tempFile = sp + 52|0; + $memDb = sp + 48|0; + $readOnly = sp + 16|0; + $journalFileSize = sp; + $zPathname = sp + 4|0; + $nPathname = sp + 8|0; + $useJournal = sp + 12|0; + $pcacheSize = sp + 20|0; + $szPageDflt = sp + 24|0; + $zUri = sp + 28|0; + $nUri = sp + 32|0; + $z = sp + 36|0; + $fout = sp + 40|0; + $iDc = sp + 44|0; + HEAP32[$1>>2] = $pVfs; + HEAP32[$2>>2] = $ppPager; + HEAP32[$3>>2] = $zFilename; + HEAP32[$4>>2] = $nExtra; + HEAP32[$5>>2] = $flags; + HEAP32[$6>>2] = $vfsFlags; + HEAP32[$7>>2] = $xReinit; + HEAP32[$pPager>>2] = 0; + HEAP32[$rc>>2] = 0; + HEAP32[$tempFile>>2] = 0; + HEAP32[$memDb>>2] = 0; + HEAP32[$readOnly>>2] = 0; + HEAP32[$zPathname>>2] = 0; + HEAP32[$nPathname>>2] = 0; + $8 = HEAP32[$5>>2]|0; + $9 = $8 & 1; + $10 = ($9|0)==(0); + $11 = $10&1; + HEAP32[$useJournal>>2] = $11; + $12 = (_sqlite3PcacheSize()|0); + HEAP32[$pcacheSize>>2] = $12; + HEAP32[$szPageDflt>>2] = 1024; + HEAP32[$zUri>>2] = 0; + HEAP32[$nUri>>2] = 0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = (_sqlite3MemJournalSize()|0); + $17 = ($15|0)>($16|0); + if ($17) { + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + 7)|0; + $22 = $21 & -8; + HEAP32[$journalFileSize>>2] = $22; + } else { + $23 = (_sqlite3MemJournalSize()|0); + $24 = (($23) + 7)|0; + $25 = $24 & -8; + HEAP32[$journalFileSize>>2] = $25; + } + $26 = HEAP32[$2>>2]|0; + HEAP32[$26>>2] = 0; + $27 = HEAP32[$5>>2]|0; + $28 = $27 & 2; + $29 = ($28|0)!=(0); + do { + if ($29) { + HEAP32[$memDb>>2] = 1; + $30 = HEAP32[$3>>2]|0; + $31 = ($30|0)!=(0|0); + if ($31) { + $32 = HEAP32[$3>>2]|0; + $33 = HEAP8[$32>>0]|0; + $34 = $33 << 24 >> 24; + $35 = ($34|0)!=(0); + if ($35) { + $36 = HEAP32[$3>>2]|0; + $37 = (_sqlite3DbStrDup(0,$36)|0); + HEAP32[$zPathname>>2] = $37; + $38 = HEAP32[$zPathname>>2]|0; + $39 = ($38|0)==(0|0); + if (!($39)) { + $40 = HEAP32[$zPathname>>2]|0; + $41 = (_sqlite3Strlen30($40)|0); + HEAP32[$nPathname>>2] = $41; + HEAP32[$3>>2] = 0; + break; + } + HEAP32[$0>>2] = 7; + $377 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($377|0); + } + } + } + } while(0); + $42 = HEAP32[$3>>2]|0; + $43 = ($42|0)!=(0|0); + if ($43) { + $44 = HEAP32[$3>>2]|0; + $45 = HEAP8[$44>>0]|0; + $46 = $45 << 24 >> 24; + $47 = ($46|0)!=(0); + if ($47) { + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + 8|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + 1)|0; + HEAP32[$nPathname>>2] = $51; + $52 = HEAP32[$nPathname>>2]|0; + $53 = $52<<1; + $54 = (_sqlite3DbMallocRaw(0,$53)|0); + HEAP32[$zPathname>>2] = $54; + $55 = HEAP32[$zPathname>>2]|0; + $56 = ($55|0)==(0|0); + if ($56) { + HEAP32[$0>>2] = 7; + $377 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($377|0); + } + $57 = HEAP32[$zPathname>>2]|0; + HEAP8[$57>>0] = 0; + $58 = HEAP32[$1>>2]|0; + $59 = HEAP32[$3>>2]|0; + $60 = HEAP32[$nPathname>>2]|0; + $61 = HEAP32[$zPathname>>2]|0; + $62 = (_sqlite3OsFullPathname($58,$59,$60,$61)|0); + HEAP32[$rc>>2] = $62; + $63 = HEAP32[$zPathname>>2]|0; + $64 = (_sqlite3Strlen30($63)|0); + HEAP32[$nPathname>>2] = $64; + $65 = HEAP32[$3>>2]|0; + $66 = (_sqlite3Strlen30($65)|0); + $67 = (($66) + 1)|0; + $68 = HEAP32[$3>>2]|0; + $69 = (($68) + ($67)|0); + HEAP32[$zUri>>2] = $69; + HEAP32[$z>>2] = $69; + while(1) { + $70 = HEAP32[$z>>2]|0; + $71 = HEAP8[$70>>0]|0; + $72 = ($71<<24>>24)!=(0); + $73 = HEAP32[$z>>2]|0; + if (!($72)) { + break; + } + $74 = (_sqlite3Strlen30($73)|0); + $75 = (($74) + 1)|0; + $76 = HEAP32[$z>>2]|0; + $77 = (($76) + ($75)|0); + HEAP32[$z>>2] = $77; + $78 = HEAP32[$z>>2]|0; + $79 = (_sqlite3Strlen30($78)|0); + $80 = (($79) + 1)|0; + $81 = HEAP32[$z>>2]|0; + $82 = (($81) + ($80)|0); + HEAP32[$z>>2] = $82; + } + $83 = (($73) + 1|0); + $84 = HEAP32[$zUri>>2]|0; + $85 = $83; + $86 = $84; + $87 = (($85) - ($86))|0; + HEAP32[$nUri>>2] = $87; + $88 = HEAP32[$rc>>2]|0; + $89 = ($88|0)==(0); + if ($89) { + $90 = HEAP32[$nPathname>>2]|0; + $91 = (($90) + 8)|0; + $92 = HEAP32[$1>>2]|0; + $93 = (($92) + 8|0); + $94 = HEAP32[$93>>2]|0; + $95 = ($91|0)>($94|0); + if ($95) { + $96 = (_sqlite3CantopenError(44459)|0); + HEAP32[$rc>>2] = $96; + } + } + $97 = HEAP32[$rc>>2]|0; + $98 = ($97|0)!=(0); + if ($98) { + $99 = HEAP32[$zPathname>>2]|0; + _sqlite3DbFree(0,$99); + $100 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $100; + $377 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($377|0); + } + } + } + $101 = HEAP32[$pcacheSize>>2]|0; + $102 = (($101) + 7)|0; + $103 = $102 & -8; + $104 = (216 + ($103))|0; + $105 = HEAP32[$1>>2]|0; + $106 = (($105) + 4|0); + $107 = HEAP32[$106>>2]|0; + $108 = (($107) + 7)|0; + $109 = $108 & -8; + $110 = (($104) + ($109))|0; + $111 = HEAP32[$journalFileSize>>2]|0; + $112 = $111<<1; + $113 = (($110) + ($112))|0; + $114 = HEAP32[$nPathname>>2]|0; + $115 = (($113) + ($114))|0; + $116 = (($115) + 1)|0; + $117 = HEAP32[$nUri>>2]|0; + $118 = (($116) + ($117))|0; + $119 = HEAP32[$nPathname>>2]|0; + $120 = (($118) + ($119))|0; + $121 = (($120) + 8)|0; + $122 = (($121) + 2)|0; + $123 = HEAP32[$nPathname>>2]|0; + $124 = (($122) + ($123))|0; + $125 = (($124) + 4)|0; + $126 = (($125) + 2)|0; + $127 = (_sqlite3MallocZero($126)|0); + HEAP32[$pPtr>>2] = $127; + $128 = HEAP32[$pPtr>>2]|0; + $129 = ($128|0)!=(0|0); + if (!($129)) { + $130 = HEAP32[$zPathname>>2]|0; + _sqlite3DbFree(0,$130); + HEAP32[$0>>2] = 7; + $377 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($377|0); + } + $131 = HEAP32[$pPtr>>2]|0; + HEAP32[$pPager>>2] = $131; + $132 = HEAP32[$pPtr>>2]|0; + $133 = (($132) + 216|0); + HEAP32[$pPtr>>2] = $133; + $134 = HEAP32[$pPager>>2]|0; + $135 = (($134) + 204|0); + HEAP32[$135>>2] = $133; + $136 = HEAP32[$pcacheSize>>2]|0; + $137 = (($136) + 7)|0; + $138 = $137 & -8; + $139 = HEAP32[$pPtr>>2]|0; + $140 = (($139) + ($138)|0); + HEAP32[$pPtr>>2] = $140; + $141 = HEAP32[$pPager>>2]|0; + $142 = (($141) + 60|0); + HEAP32[$142>>2] = $140; + $143 = HEAP32[$1>>2]|0; + $144 = (($143) + 4|0); + $145 = HEAP32[$144>>2]|0; + $146 = (($145) + 7)|0; + $147 = $146 & -8; + $148 = HEAP32[$pPtr>>2]|0; + $149 = (($148) + ($147)|0); + HEAP32[$pPtr>>2] = $149; + $150 = HEAP32[$pPager>>2]|0; + $151 = (($150) + 68|0); + HEAP32[$151>>2] = $149; + $152 = HEAP32[$journalFileSize>>2]|0; + $153 = HEAP32[$pPtr>>2]|0; + $154 = (($153) + ($152)|0); + HEAP32[$pPtr>>2] = $154; + $155 = HEAP32[$pPager>>2]|0; + $156 = (($155) + 64|0); + HEAP32[$156>>2] = $154; + $157 = HEAP32[$journalFileSize>>2]|0; + $158 = HEAP32[$pPtr>>2]|0; + $159 = (($158) + ($157)|0); + HEAP32[$pPtr>>2] = $159; + $160 = HEAP32[$pPager>>2]|0; + $161 = (($160) + 168|0); + HEAP32[$161>>2] = $159; + $162 = HEAP32[$zPathname>>2]|0; + $163 = ($162|0)!=(0|0); + if ($163) { + $164 = HEAP32[$nPathname>>2]|0; + $165 = (($164) + 1)|0; + $166 = HEAP32[$nUri>>2]|0; + $167 = (($165) + ($166))|0; + $168 = HEAP32[$pPtr>>2]|0; + $169 = (($168) + ($167)|0); + HEAP32[$pPtr>>2] = $169; + $170 = HEAP32[$pPager>>2]|0; + $171 = (($170) + 172|0); + HEAP32[$171>>2] = $169; + $172 = HEAP32[$pPager>>2]|0; + $173 = (($172) + 168|0); + $174 = HEAP32[$173>>2]|0; + $175 = HEAP32[$zPathname>>2]|0; + $176 = HEAP32[$nPathname>>2]|0; + _memcpy(($174|0),($175|0),($176|0))|0; + $177 = HEAP32[$nUri>>2]|0; + $178 = ($177|0)!=(0); + if ($178) { + $179 = HEAP32[$nPathname>>2]|0; + $180 = (($179) + 1)|0; + $181 = HEAP32[$pPager>>2]|0; + $182 = (($181) + 168|0); + $183 = HEAP32[$182>>2]|0; + $184 = (($183) + ($180)|0); + $185 = HEAP32[$zUri>>2]|0; + $186 = HEAP32[$nUri>>2]|0; + _memcpy(($184|0),($185|0),($186|0))|0; + } + $187 = HEAP32[$pPager>>2]|0; + $188 = (($187) + 172|0); + $189 = HEAP32[$188>>2]|0; + $190 = HEAP32[$zPathname>>2]|0; + $191 = HEAP32[$nPathname>>2]|0; + _memcpy(($189|0),($190|0),($191|0))|0; + $192 = HEAP32[$nPathname>>2]|0; + $193 = HEAP32[$pPager>>2]|0; + $194 = (($193) + 172|0); + $195 = HEAP32[$194>>2]|0; + $196 = (($195) + ($192)|0); + dest=$196+0|0; src=11160+0|0; stop=dest+10|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $197 = HEAP32[$nPathname>>2]|0; + $198 = (($197) + 8)|0; + $199 = (($198) + 1)|0; + $200 = HEAP32[$pPager>>2]|0; + $201 = (($200) + 172|0); + $202 = HEAP32[$201>>2]|0; + $203 = (($202) + ($199)|0); + $204 = HEAP32[$pPager>>2]|0; + $205 = (($204) + 212|0); + HEAP32[$205>>2] = $203; + $206 = HEAP32[$pPager>>2]|0; + $207 = (($206) + 212|0); + $208 = HEAP32[$207>>2]|0; + $209 = HEAP32[$zPathname>>2]|0; + $210 = HEAP32[$nPathname>>2]|0; + _memcpy(($208|0),($209|0),($210|0))|0; + $211 = HEAP32[$nPathname>>2]|0; + $212 = HEAP32[$pPager>>2]|0; + $213 = (($212) + 212|0); + $214 = HEAP32[$213>>2]|0; + $215 = (($214) + ($211)|0); + ;HEAP8[$215+0>>0]=HEAP8[11176+0>>0]|0;HEAP8[$215+1>>0]=HEAP8[11176+1>>0]|0;HEAP8[$215+2>>0]=HEAP8[11176+2>>0]|0;HEAP8[$215+3>>0]=HEAP8[11176+3>>0]|0;HEAP8[$215+4>>0]=HEAP8[11176+4>>0]|0; + $216 = HEAP32[$zPathname>>2]|0; + _sqlite3DbFree(0,$216); + } + $217 = HEAP32[$1>>2]|0; + $218 = HEAP32[$pPager>>2]|0; + HEAP32[$218>>2] = $217; + $219 = HEAP32[$6>>2]|0; + $220 = HEAP32[$pPager>>2]|0; + $221 = (($220) + 144|0); + HEAP32[$221>>2] = $219; + $222 = HEAP32[$3>>2]|0; + $223 = ($222|0)!=(0|0); + do { + if ($223) { + $224 = HEAP32[$3>>2]|0; + $225 = HEAP8[$224>>0]|0; + $226 = $225 << 24 >> 24; + $227 = ($226|0)!=(0); + if ($227) { + HEAP32[$fout>>2] = 0; + $228 = HEAP32[$1>>2]|0; + $229 = HEAP32[$pPager>>2]|0; + $230 = (($229) + 168|0); + $231 = HEAP32[$230>>2]|0; + $232 = HEAP32[$pPager>>2]|0; + $233 = (($232) + 60|0); + $234 = HEAP32[$233>>2]|0; + $235 = HEAP32[$6>>2]|0; + $236 = (_sqlite3OsOpen($228,$231,$234,$235,$fout)|0); + HEAP32[$rc>>2] = $236; + $237 = HEAP32[$fout>>2]|0; + $238 = $237 & 1; + HEAP32[$readOnly>>2] = $238; + $239 = HEAP32[$rc>>2]|0; + $240 = ($239|0)==(0); + if ($240) { + $241 = HEAP32[$pPager>>2]|0; + $242 = (($241) + 60|0); + $243 = HEAP32[$242>>2]|0; + $244 = (_sqlite3OsDeviceCharacteristics($243)|0); + HEAP32[$iDc>>2] = $244; + $245 = HEAP32[$readOnly>>2]|0; + $246 = ($245|0)!=(0); + do { + if (!($246)) { + $247 = HEAP32[$pPager>>2]|0; + _setSectorSize($247); + $248 = HEAP32[$szPageDflt>>2]|0; + $249 = HEAP32[$pPager>>2]|0; + $250 = (($249) + 148|0); + $251 = HEAP32[$250>>2]|0; + $252 = ($248>>>0)<($251>>>0); + if ($252) { + $253 = HEAP32[$pPager>>2]|0; + $254 = (($253) + 148|0); + $255 = HEAP32[$254>>2]|0; + $256 = ($255>>>0)>(8192); + if ($256) { + HEAP32[$szPageDflt>>2] = 8192; + break; + } else { + $257 = HEAP32[$pPager>>2]|0; + $258 = (($257) + 148|0); + $259 = HEAP32[$258>>2]|0; + HEAP32[$szPageDflt>>2] = $259; + break; + } + } + } + } while(0); + $260 = HEAP32[$3>>2]|0; + $261 = (_sqlite3_uri_boolean($260,11184,0)|0); + $262 = $261&255; + $263 = HEAP32[$pPager>>2]|0; + $264 = (($263) + 13|0); + HEAP8[$264>>0] = $262; + $265 = HEAP32[$iDc>>2]|0; + $266 = $265 & 8192; + $267 = ($266|0)!=(0); + if (!($267)) { + $268 = HEAP32[$3>>2]|0; + $269 = (_sqlite3_uri_boolean($268,11192,0)|0); + $270 = ($269|0)!=(0); + if (!($270)) { + break; + } + } + $271 = HEAP32[$6>>2]|0; + $272 = $271 | 1; + HEAP32[$6>>2] = $272; + label = 39; + } + } else { + label = 39; + } + } else { + label = 39; + } + } while(0); + if ((label|0) == 39) { + HEAP32[$tempFile>>2] = 1; + $273 = HEAP32[$pPager>>2]|0; + $274 = (($273) + 16|0); + HEAP8[$274>>0] = 1; + $275 = HEAP32[$pPager>>2]|0; + $276 = (($275) + 17|0); + HEAP8[$276>>0] = 4; + $277 = HEAP32[$pPager>>2]|0; + $278 = (($277) + 13|0); + HEAP8[$278>>0] = 1; + $279 = HEAP32[$6>>2]|0; + $280 = $279 & 1; + HEAP32[$readOnly>>2] = $280; + } + $281 = HEAP32[$rc>>2]|0; + $282 = ($281|0)==(0); + if ($282) { + $283 = HEAP32[$pPager>>2]|0; + $284 = (_sqlite3PagerSetPagesize($283,$szPageDflt,-1)|0); + HEAP32[$rc>>2] = $284; + } + $285 = HEAP32[$rc>>2]|0; + $286 = ($285|0)!=(0); + if ($286) { + $287 = HEAP32[$pPager>>2]|0; + $288 = (($287) + 60|0); + $289 = HEAP32[$288>>2]|0; + (_sqlite3OsClose($289)|0); + $290 = HEAP32[$pPager>>2]|0; + _sqlite3_free($290); + $291 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $291; + $377 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($377|0); + } + $292 = HEAP32[$4>>2]|0; + $293 = (($292) + 7)|0; + $294 = $293 & -8; + HEAP32[$4>>2] = $294; + $295 = HEAP32[$szPageDflt>>2]|0; + $296 = HEAP32[$4>>2]|0; + $297 = HEAP32[$memDb>>2]|0; + $298 = ($297|0)!=(0); + $299 = $298 ^ 1; + $300 = $299&1; + $301 = HEAP32[$memDb>>2]|0; + $302 = ($301|0)!=(0); + $303 = $302 ^ 1; + $304 = $303 ? 53 : 0; + $305 = HEAP32[$pPager>>2]|0; + $306 = HEAP32[$pPager>>2]|0; + $307 = (($306) + 204|0); + $308 = HEAP32[$307>>2]|0; + _sqlite3PcacheOpen($295,$296,$300,$304,$305,$308); + $309 = HEAP32[$useJournal>>2]|0; + $310 = $309&255; + $311 = HEAP32[$pPager>>2]|0; + $312 = (($311) + 6|0); + HEAP8[$312>>0] = $310; + $313 = HEAP32[$pPager>>2]|0; + $314 = (($313) + 156|0); + HEAP32[$314>>2] = 1073741823; + $315 = HEAP32[$tempFile>>2]|0; + $316 = $315&255; + $317 = HEAP32[$pPager>>2]|0; + $318 = (($317) + 12|0); + HEAP8[$318>>0] = $316; + $319 = HEAP32[$tempFile>>2]|0; + $320 = $319&255; + $321 = HEAP32[$pPager>>2]|0; + $322 = (($321) + 4|0); + HEAP8[$322>>0] = $320; + $323 = HEAP32[$pPager>>2]|0; + $324 = (($323) + 12|0); + $325 = HEAP8[$324>>0]|0; + $326 = HEAP32[$pPager>>2]|0; + $327 = (($326) + 18|0); + HEAP8[$327>>0] = $325; + $328 = HEAP32[$memDb>>2]|0; + $329 = $328&255; + $330 = HEAP32[$pPager>>2]|0; + $331 = (($330) + 15|0); + HEAP8[$331>>0] = $329; + $332 = HEAP32[$readOnly>>2]|0; + $333 = $332&255; + $334 = HEAP32[$pPager>>2]|0; + $335 = (($334) + 14|0); + HEAP8[$335>>0] = $333; + $336 = HEAP32[$pPager>>2]|0; + $337 = (($336) + 12|0); + $338 = HEAP8[$337>>0]|0; + $339 = HEAP32[$pPager>>2]|0; + $340 = (($339) + 7|0); + HEAP8[$340>>0] = $338; + $341 = HEAP32[$pPager>>2]|0; + $342 = (($341) + 7|0); + $343 = HEAP8[$342>>0]|0; + $344 = ($343<<24>>24)!=(0); + if (!($344)) { + $345 = HEAP32[$pPager>>2]|0; + $346 = (($345) + 8|0); + HEAP8[$346>>0] = 1; + $347 = HEAP32[$pPager>>2]|0; + $348 = (($347) + 11|0); + HEAP8[$348>>0] = 2; + $349 = HEAP32[$pPager>>2]|0; + $350 = (($349) + 10|0); + HEAP8[$350>>0] = 34; + $351 = HEAP32[$pPager>>2]|0; + $352 = (($351) + 9|0); + HEAP8[$352>>0] = 2; + } + $353 = HEAP32[$4>>2]|0; + $354 = $353&65535; + $355 = HEAP32[$pPager>>2]|0; + $356 = (($355) + 140|0); + HEAP16[$356>>1] = $354; + $357 = HEAP32[$pPager>>2]|0; + $358 = (($357) + 160|0); + $359 = $358; + $360 = $359; + HEAP32[$360>>2] = -1; + $361 = (($359) + 4)|0; + $362 = $361; + HEAP32[$362>>2] = -1; + $363 = HEAP32[$pPager>>2]|0; + _setSectorSize($363); + $364 = HEAP32[$useJournal>>2]|0; + $365 = ($364|0)!=(0); + if ($365) { + $368 = HEAP32[$memDb>>2]|0; + $369 = ($368|0)!=(0); + if ($369) { + $370 = HEAP32[$pPager>>2]|0; + $371 = (($370) + 5|0); + HEAP8[$371>>0] = 4; + } + } else { + $366 = HEAP32[$pPager>>2]|0; + $367 = (($366) + 5|0); + HEAP8[$367>>0] = 2; + } + $372 = HEAP32[$7>>2]|0; + $373 = HEAP32[$pPager>>2]|0; + $374 = (($373) + 196|0); + HEAP32[$374>>2] = $372; + $375 = HEAP32[$pPager>>2]|0; + $376 = HEAP32[$2>>2]|0; + HEAP32[$376>>2] = $375; + HEAP32[$0>>2] = 0; + $377 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($377|0); +} +function _pageReinit($pData) { + $pData = $pData|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pPage = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pPage = sp; + HEAP32[$0>>2] = $pData; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3PagerGetExtra($1)|0); + HEAP32[$pPage>>2] = $2; + $3 = HEAP32[$pPage>>2]|0; + $4 = HEAP8[$3>>0]|0; + $5 = ($4<<24>>24)!=(0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[$pPage>>2]|0; + HEAP8[$6>>0] = 0; + $7 = HEAP32[$0>>2]|0; + $8 = (_sqlite3PagerPageRefcount($7)|0); + $9 = ($8|0)>(1); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = HEAP32[$pPage>>2]|0; + (_btreeInitPage($10)|0); + STACKTOP = sp;return; +} +function _sqlite3PagerSetMmapLimit($pPager,$0,$1) { + $pPager = $pPager|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp + 8|0; + $3 = sp; + HEAP32[$2>>2] = $pPager; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = $3; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = (($8) + 4)|0; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (($14) + 128|0); + $16 = $15; + $17 = $16; + HEAP32[$17>>2] = $10; + $18 = (($16) + 4)|0; + $19 = $18; + HEAP32[$19>>2] = $13; + $20 = HEAP32[$2>>2]|0; + _pagerFixMaplimit($20); + STACKTOP = sp;return; +} +function _sqlite3PagerReadFileheader($pPager,$N,$pDest) { + $pPager = $pPager|0; + $N = $N|0; + $pDest = $pDest|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $N; + HEAP32[$2>>2] = $pDest; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$1>>2]|0; + _memset(($3|0),0,($4|0))|0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 60|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + if (!($9)) { + $18 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($18|0); + } + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 60|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = (_sqlite3OsRead($12,$13,$14,0,0)|0); + HEAP32[$rc>>2] = $15; + $16 = HEAP32[$rc>>2]|0; + $17 = ($16|0)==(522); + $$ = $17 ? 0 : $15; + HEAP32[$rc>>2] = $$; + $18 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($18|0); +} +function _sqlite3PagerSetBusyhandler($pPager,$xBusyHandler,$pBusyHandlerArg) { + $pPager = $pPager|0; + $xBusyHandler = $xBusyHandler|0; + $pBusyHandlerArg = $pBusyHandlerArg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $ap = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $ap = sp + 8|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $xBusyHandler; + HEAP32[$2>>2] = $pBusyHandlerArg; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 176|0); + HEAP32[$5>>2] = $3; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 180|0); + HEAP32[$8>>2] = $6; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 60|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)!=(0|0); + if (!($13)) { + STACKTOP = sp;return; + } + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 176|0); + HEAP32[$ap>>2] = $15; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 60|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$ap>>2]|0; + _sqlite3OsFileControlHint($18,15,$19); + STACKTOP = sp;return; +} +function _btreeInvokeBusyHandler($pArg) { + $pArg = $pArg|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $pBt = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pBt = sp; + HEAP32[$0>>2] = $pArg; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pBt>>2] = $1; + $2 = HEAP32[$pBt>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 436|0); + $6 = (_sqlite3InvokeBusyHandler($5)|0); + STACKTOP = sp;return ($6|0); +} +function _sqlite3PagerIsreadonly($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 14|0); + $3 = HEAP8[$2>>0]|0; + STACKTOP = sp;return ($3|0); +} +function _sqlite3Get4byte($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP8[$1>>0]|0; + $3 = $2&255; + $4 = $3 << 24; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 1|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = $8 << 16; + $10 = $4 | $9; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 2|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = $14 << 8; + $16 = $10 | $15; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 3|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = $16 | $20; + STACKTOP = sp;return ($21|0); +} +function _sqlite3PagerClose($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pTmp = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 200|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pTmp>>2] = $3; + _sqlite3BeginBenignMalloc(); + $4 = HEAP32[$0>>2]|0; + _pagerFreeMapHdrs($4); + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 4|0); + HEAP8[$6>>0] = 0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 208|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 9|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 152|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$pTmp>>2]|0; + (_sqlite3WalClose($9,$13,$16,$17)|0); + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 208|0); + HEAP32[$19>>2] = 0; + $20 = HEAP32[$0>>2]|0; + _pager_reset($20); + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 15|0); + $23 = HEAP8[$22>>0]|0; + $24 = ($23<<24>>24)!=(0); + $25 = HEAP32[$0>>2]|0; + if ($24) { + _pager_unlock($25); + } else { + $26 = (($25) + 64|0); + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)!=(0|0); + if ($29) { + $30 = HEAP32[$0>>2]|0; + $31 = HEAP32[$0>>2]|0; + $32 = (_pagerSyncHotJournal($31)|0); + (_pager_error($30,$32)|0); + } + $33 = HEAP32[$0>>2]|0; + _pagerUnlockAndRollback($33); + } + _sqlite3EndBenignMalloc(); + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 64|0); + $36 = HEAP32[$35>>2]|0; + (_sqlite3OsClose($36)|0); + $37 = HEAP32[$0>>2]|0; + $38 = (($37) + 60|0); + $39 = HEAP32[$38>>2]|0; + (_sqlite3OsClose($39)|0); + $40 = HEAP32[$pTmp>>2]|0; + _sqlite3PageFree($40); + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + 204|0); + $43 = HEAP32[$42>>2]|0; + _sqlite3PcacheClose($43); + $44 = HEAP32[$0>>2]|0; + _sqlite3_free($44); + STACKTOP = sp;return 0; +} +function _sqlite3PagerSetCachesize($pPager,$mxPage) { + $pPager = $pPager|0; + $mxPage = $mxPage|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $mxPage; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 204|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$1>>2]|0; + _sqlite3PcacheSetCachesize($4,$5); + STACKTOP = sp;return; +} +function _sqlite3PcacheSetCachesize($pCache,$mxPage) { + $pCache = $pCache|0; + $mxPage = $mxPage|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pCache; + HEAP32[$1>>2] = $mxPage; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 16|0); + HEAP32[$4>>2] = $2; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 40|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + STACKTOP = sp;return; + } + $9 = HEAP32[((45136 + 124|0))>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 40|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$0>>2]|0; + $14 = (_numberOfCachePages($13)|0); + FUNCTION_TABLE_vii[$9 & 7]($12,$14); + STACKTOP = sp;return; +} +function _numberOfCachePages($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 16|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)>=(0); + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 16|0); + $8 = HEAP32[$7>>2]|0; + if ($5) { + HEAP32[$0>>2] = $8; + $24 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($24|0); + } else { + $9 = ($8|0)<(0); + $10 = $9 << 31 >> 31; + $11 = (___muldi3(-1024,-1,($8|0),($10|0))|0); + $12 = tempRet0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 20|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 24|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($15) + ($18))|0; + $20 = ($19|0)<(0); + $21 = $20 << 31 >> 31; + $22 = (___divdi3(($11|0),($12|0),($19|0),($21|0))|0); + $23 = tempRet0; + HEAP32[$0>>2] = $22; + $24 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($24|0); + } + return 0|0; +} +function _pagerFreeMapHdrs($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pNext = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $p = sp; + $pNext = sp + 4|0; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 136|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $3; + while(1) { + $4 = HEAP32[$p>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + break; + } + $6 = HEAP32[$p>>2]|0; + $7 = (($6) + 12|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pNext>>2] = $8; + $9 = HEAP32[$p>>2]|0; + _sqlite3_free($9); + $10 = HEAP32[$pNext>>2]|0; + HEAP32[$p>>2] = $10; + } + STACKTOP = sp;return; +} +function _sqlite3WalClose($pWal,$sync_flags,$nBuf,$zBuf) { + $pWal = $pWal|0; + $sync_flags = $sync_flags|0; + $nBuf = $nBuf|0; + $zBuf = $zBuf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0; + var $8 = 0, $9 = 0, $bPersist = 0, $isDelete = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $rc = sp + 12|0; + $isDelete = sp + 16|0; + $bPersist = sp + 20|0; + HEAP32[$0>>2] = $pWal; + HEAP32[$1>>2] = $sync_flags; + HEAP32[$2>>2] = $nBuf; + HEAP32[$3>>2] = $zBuf; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$0>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $61 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($61|0); + } + HEAP32[$isDelete>>2] = 0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3OsLock($8,4)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + $11 = ($10|0)==(0); + do { + if ($11) { + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 43|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = ($15|0)==(0); + if ($16) { + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 43|0); + HEAP8[$18>>0] = 1; + } + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = HEAP32[$3>>2]|0; + $23 = (_sqlite3WalCheckpoint($19,0,0,0,$20,$21,$22,0,0)|0); + HEAP32[$rc>>2] = $23; + $24 = HEAP32[$rc>>2]|0; + $25 = ($24|0)==(0); + if ($25) { + HEAP32[$bPersist>>2] = -1; + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 4|0); + $28 = HEAP32[$27>>2]|0; + _sqlite3OsFileControlHint($28,10,$bPersist); + $29 = HEAP32[$bPersist>>2]|0; + $30 = ($29|0)!=(1); + if ($30) { + HEAP32[$isDelete>>2] = 1; + break; + } + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 16|0); + $33 = $32; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = (($33) + 4)|0; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + $39 = ($38|0)>(0); + $40 = ($38|0)==(0); + $41 = ($35>>>0)>=(0); + $42 = $40 & $41; + $43 = $39 | $42; + if ($43) { + $44 = HEAP32[$0>>2]|0; + _walLimitSize($44,0,0); + } + } + } + } while(0); + $45 = HEAP32[$0>>2]|0; + $46 = HEAP32[$isDelete>>2]|0; + _walIndexClose($45,$46); + $47 = HEAP32[$0>>2]|0; + $48 = (($47) + 8|0); + $49 = HEAP32[$48>>2]|0; + (_sqlite3OsClose($49)|0); + $50 = HEAP32[$isDelete>>2]|0; + $51 = ($50|0)!=(0); + if ($51) { + _sqlite3BeginBenignMalloc(); + $52 = HEAP32[$0>>2]|0; + $53 = HEAP32[$52>>2]|0; + $54 = HEAP32[$0>>2]|0; + $55 = (($54) + 100|0); + $56 = HEAP32[$55>>2]|0; + (_sqlite3OsDelete($53,$56,0)|0); + _sqlite3EndBenignMalloc(); + } + $57 = HEAP32[$0>>2]|0; + $58 = (($57) + 32|0); + $59 = HEAP32[$58>>2]|0; + _sqlite3_free($59); + $60 = HEAP32[$0>>2]|0; + _sqlite3_free($60); + $61 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($61|0); +} +function _pager_unlock($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $9 = 0, $iDc = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $rc = sp; + $iDc = sp + 4|0; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 56|0); + $3 = HEAP32[$2>>2]|0; + _sqlite3BitvecDestroy($3); + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 56|0); + HEAP32[$5>>2] = 0; + $6 = HEAP32[$0>>2]|0; + _releaseAllSavepoints($6); + $7 = HEAP32[$0>>2]|0; + $8 = (_pagerUseWal($7)|0); + $9 = ($8|0)!=(0); + $10 = HEAP32[$0>>2]|0; + if ($9) { + $11 = (($10) + 208|0); + $12 = HEAP32[$11>>2]|0; + _sqlite3WalEndReadTransaction($12); + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 16|0); + HEAP8[$14>>0] = 0; + } else { + $15 = (($10) + 4|0); + $16 = HEAP8[$15>>0]|0; + $17 = ($16<<24>>24)!=(0); + if (!($17)) { + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 60|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)!=(0|0); + if ($22) { + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 60|0); + $25 = HEAP32[$24>>2]|0; + $26 = (_sqlite3OsDeviceCharacteristics($25)|0); + $27 = $26; + } else { + $27 = 0; + } + HEAP32[$iDc>>2] = $27; + $28 = HEAP32[$iDc>>2]|0; + $29 = $28 & 2048; + $30 = (0)==($29|0); + if ($30) { + label = 8; + } else { + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 5|0); + $33 = HEAP8[$32>>0]|0; + $34 = $33&255; + $35 = $34 & 5; + $36 = (1)!=($35|0); + if ($36) { + label = 8; + } + } + if ((label|0) == 8) { + $37 = HEAP32[$0>>2]|0; + $38 = (($37) + 64|0); + $39 = HEAP32[$38>>2]|0; + (_sqlite3OsClose($39)|0); + } + $40 = HEAP32[$0>>2]|0; + $41 = (_pagerUnlockDb($40,0)|0); + HEAP32[$rc>>2] = $41; + $42 = HEAP32[$rc>>2]|0; + $43 = ($42|0)!=(0); + if ($43) { + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 16|0); + $46 = HEAP8[$45>>0]|0; + $47 = $46&255; + $48 = ($47|0)==(6); + if ($48) { + $49 = HEAP32[$0>>2]|0; + $50 = (($49) + 17|0); + HEAP8[$50>>0] = 5; + } + } + $51 = HEAP32[$0>>2]|0; + $52 = (($51) + 18|0); + HEAP8[$52>>0] = 0; + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 16|0); + HEAP8[$54>>0] = 0; + } + } + $55 = HEAP32[$0>>2]|0; + $56 = (($55) + 40|0); + $57 = HEAP32[$56>>2]|0; + $58 = ($57|0)!=(0); + if (!($58)) { + $69 = HEAP32[$0>>2]|0; + $70 = (($69) + 72|0); + $71 = $70; + $72 = $71; + HEAP32[$72>>2] = 0; + $73 = (($71) + 4)|0; + $74 = $73; + HEAP32[$74>>2] = 0; + $75 = HEAP32[$0>>2]|0; + $76 = (($75) + 80|0); + $77 = $76; + $78 = $77; + HEAP32[$78>>2] = 0; + $79 = (($77) + 4)|0; + $80 = $79; + HEAP32[$80>>2] = 0; + $81 = HEAP32[$0>>2]|0; + $82 = (($81) + 19|0); + HEAP8[$82>>0] = 0; + STACKTOP = sp;return; + } + $59 = HEAP32[$0>>2]|0; + _pager_reset($59); + $60 = HEAP32[$0>>2]|0; + $61 = (($60) + 12|0); + $62 = HEAP8[$61>>0]|0; + $63 = HEAP32[$0>>2]|0; + $64 = (($63) + 18|0); + HEAP8[$64>>0] = $62; + $65 = HEAP32[$0>>2]|0; + $66 = (($65) + 16|0); + HEAP8[$66>>0] = 0; + $67 = HEAP32[$0>>2]|0; + $68 = (($67) + 40|0); + HEAP32[$68>>2] = 0; + $69 = HEAP32[$0>>2]|0; + $70 = (($69) + 72|0); + $71 = $70; + $72 = $71; + HEAP32[$72>>2] = 0; + $73 = (($71) + 4)|0; + $74 = $73; + HEAP32[$74>>2] = 0; + $75 = HEAP32[$0>>2]|0; + $76 = (($75) + 80|0); + $77 = $76; + $78 = $77; + HEAP32[$78>>2] = 0; + $79 = (($77) + 4)|0; + $80 = $79; + HEAP32[$80>>2] = 0; + $81 = HEAP32[$0>>2]|0; + $82 = (($81) + 19|0); + HEAP8[$82>>0] = 0; + STACKTOP = sp;return; +} +function _pager_error($pPager,$rc) { + $pPager = $pPager|0; + $rc = $rc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $rc2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc2 = sp + 4|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $rc; + $2 = HEAP32[$1>>2]|0; + $3 = $2 & 255; + HEAP32[$rc2>>2] = $3; + $4 = HEAP32[$rc2>>2]|0; + $5 = ($4|0)==(13); + $6 = HEAP32[$rc2>>2]|0; + $7 = ($6|0)==(10); + $or$cond = $5 | $7; + if (!($or$cond)) { + $13 = HEAP32[$1>>2]|0; + STACKTOP = sp;return ($13|0); + } + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 40|0); + HEAP32[$10>>2] = $8; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 16|0); + HEAP8[$12>>0] = 6; + $13 = HEAP32[$1>>2]|0; + STACKTOP = sp;return ($13|0); +} +function _pagerSyncHotJournal($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $rc = sp; + HEAP32[$0>>2] = $pPager; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 7|0); + $3 = HEAP8[$2>>0]|0; + $4 = ($3<<24>>24)!=(0); + if (!($4)) { + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 64|0); + $7 = HEAP32[$6>>2]|0; + $8 = (_sqlite3OsSync($7,2)|0); + HEAP32[$rc>>2] = $8; + } + $9 = HEAP32[$rc>>2]|0; + $10 = ($9|0)==(0); + if (!($10)) { + $17 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($17|0); + } + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 64|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 80|0); + $16 = (_sqlite3OsFileSize($13,$15)|0); + HEAP32[$rc>>2] = $16; + $17 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($17|0); +} +function _pagerUnlockAndRollback($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 16|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = ($4|0)!=(6); + do { + if ($5) { + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 16|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = ($9|0)!=(0); + if ($10) { + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 16|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = ($14|0)>=(2); + if ($15) { + _sqlite3BeginBenignMalloc(); + $16 = HEAP32[$0>>2]|0; + (_sqlite3PagerRollback($16)|0); + _sqlite3EndBenignMalloc(); + break; + } + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP8[$18>>0]|0; + $20 = ($19<<24>>24)!=(0); + if (!($20)) { + $21 = HEAP32[$0>>2]|0; + (_pager_end_transaction($21,0,0)|0); + } + } + } + } while(0); + $22 = HEAP32[$0>>2]|0; + _pager_unlock($22); + STACKTOP = sp;return; +} +function _sqlite3OsClose($pId) { + $pId = $pId|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $rc = sp; + HEAP32[$0>>2] = $pId; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $11 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($11|0); + } + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + 4|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (FUNCTION_TABLE_ii[$7 & 63]($8)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$0>>2]|0; + HEAP32[$10>>2] = 0; + $11 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($11|0); +} +function _sqlite3PcacheClose($pCache) { + $pCache = $pCache|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pCache; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 40|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[((45136 + 148|0))>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 40|0); + $8 = HEAP32[$7>>2]|0; + FUNCTION_TABLE_vi[$5 & 31]($8); + STACKTOP = sp;return; +} +function _sqlite3PagerRollback($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $eState = 0, $rc = 0, $rc2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $rc = sp + 4|0; + $rc2 = sp + 8|0; + $eState = sp + 12|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 16|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = ($5|0)==(6); + $7 = HEAP32[$1>>2]|0; + if ($6) { + $8 = (($7) + 40|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$0>>2] = $9; + $59 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($59|0); + } + $10 = (($7) + 16|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = ($12|0)<=(1); + if ($13) { + HEAP32[$0>>2] = 0; + $59 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($59|0); + } + $14 = HEAP32[$1>>2]|0; + $15 = (_pagerUseWal($14)|0); + $16 = ($15|0)!=(0); + $17 = HEAP32[$1>>2]|0; + do { + if ($16) { + $18 = (_sqlite3PagerSavepoint($17,2,-1)|0); + HEAP32[$rc>>2] = $18; + $19 = HEAP32[$1>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 19|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = (_pager_end_transaction($19,$23,0)|0); + HEAP32[$rc2>>2] = $24; + $25 = HEAP32[$rc>>2]|0; + $26 = ($25|0)==(0); + if ($26) { + $27 = HEAP32[$rc2>>2]|0; + HEAP32[$rc>>2] = $27; + } + } else { + $28 = (($17) + 64|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$29>>2]|0; + $31 = ($30|0)!=(0|0); + if ($31) { + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 16|0); + $34 = HEAP8[$33>>0]|0; + $35 = $34&255; + $36 = ($35|0)==(2); + if (!($36)) { + $54 = HEAP32[$1>>2]|0; + $55 = (_pager_playback($54,0)|0); + HEAP32[$rc>>2] = $55; + break; + } + } + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 16|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39&255; + HEAP32[$eState>>2] = $40; + $41 = HEAP32[$1>>2]|0; + $42 = (_pager_end_transaction($41,0,0)|0); + HEAP32[$rc>>2] = $42; + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 15|0); + $45 = HEAP8[$44>>0]|0; + $46 = ($45<<24>>24)!=(0); + if (!($46)) { + $47 = HEAP32[$eState>>2]|0; + $48 = ($47|0)>(2); + if ($48) { + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 40|0); + HEAP32[$50>>2] = 4; + $51 = HEAP32[$1>>2]|0; + $52 = (($51) + 16|0); + HEAP8[$52>>0] = 6; + $53 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $53; + $59 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($59|0); + } + } + } + } while(0); + $56 = HEAP32[$1>>2]|0; + $57 = HEAP32[$rc>>2]|0; + $58 = (_pager_error($56,$57)|0); + HEAP32[$0>>2] = $58; + $59 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($59|0); +} +function _pager_end_transaction($pPager,$hasMaster,$bCommit) { + $pPager = $pPager|0; + $hasMaster = $hasMaster|0; + $bCommit = $bCommit|0; + var $$ = 0, $$1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; + var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; + var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; + var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; + var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bDelete = 0, $rc = 0, $rc2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $rc = sp + 12|0; + $rc2 = sp + 16|0; + $bDelete = sp + 20|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$2>>2] = $hasMaster; + HEAP32[$3>>2] = $bCommit; + HEAP32[$rc>>2] = 0; + HEAP32[$rc2>>2] = 0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 16|0); + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = ($7|0)<(2); + if ($8) { + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 17|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = ($12|0)<(2); + if ($13) { + HEAP32[$0>>2] = 0; + $171 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($171|0); + } + } + $14 = HEAP32[$1>>2]|0; + _releaseAllSavepoints($14); + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 64|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = ($18|0)!=(0|0); + L6: do { + if ($19) { + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 64|0); + $22 = HEAP32[$21>>2]|0; + $23 = (_sqlite3IsMemJournal($22)|0); + $24 = ($23|0)!=(0); + $25 = HEAP32[$1>>2]|0; + if ($24) { + $26 = (($25) + 64|0); + $27 = HEAP32[$26>>2]|0; + (_sqlite3OsClose($27)|0); + break; + } + $28 = (($25) + 5|0); + $29 = HEAP8[$28>>0]|0; + $30 = $29&255; + $31 = ($30|0)==(3); + $32 = HEAP32[$1>>2]|0; + if ($31) { + $33 = (($32) + 72|0); + $34 = $33; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = ($36|0)==(0); + $41 = ($39|0)==(0); + $42 = $40 & $41; + if ($42) { + HEAP32[$rc>>2] = 0; + } else { + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 64|0); + $45 = HEAP32[$44>>2]|0; + $46 = (_sqlite3OsTruncate($45,0,0)|0); + HEAP32[$rc>>2] = $46; + } + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 72|0); + $49 = $48; + $50 = $49; + HEAP32[$50>>2] = 0; + $51 = (($49) + 4)|0; + $52 = $51; + HEAP32[$52>>2] = 0; + break; + } + $53 = (($32) + 5|0); + $54 = HEAP8[$53>>0]|0; + $55 = $54&255; + $56 = ($55|0)==(1); + do { + if (!($56)) { + $57 = HEAP32[$1>>2]|0; + $58 = (($57) + 4|0); + $59 = HEAP8[$58>>0]|0; + $60 = $59&255; + $61 = ($60|0)!=(0); + if ($61) { + $62 = HEAP32[$1>>2]|0; + $63 = (($62) + 5|0); + $64 = HEAP8[$63>>0]|0; + $65 = $64&255; + $66 = ($65|0)!=(5); + if ($66) { + break; + } + } + $76 = HEAP32[$1>>2]|0; + $77 = (($76) + 12|0); + $78 = HEAP8[$77>>0]|0; + $79 = ($78<<24>>24)!=(0); + $$ = $79 ? 0 : 1; + $80 = $$&1; + HEAP32[$bDelete>>2] = $80; + $81 = HEAP32[$1>>2]|0; + $82 = (($81) + 64|0); + $83 = HEAP32[$82>>2]|0; + (_sqlite3OsClose($83)|0); + $84 = HEAP32[$bDelete>>2]|0; + $85 = ($84|0)!=(0); + if (!($85)) { + break L6; + } + $86 = HEAP32[$1>>2]|0; + $87 = HEAP32[$86>>2]|0; + $88 = HEAP32[$1>>2]|0; + $89 = (($88) + 172|0); + $90 = HEAP32[$89>>2]|0; + $91 = (_sqlite3OsDelete($87,$90,0)|0); + HEAP32[$rc>>2] = $91; + break L6; + } + } while(0); + $67 = HEAP32[$1>>2]|0; + $68 = HEAP32[$2>>2]|0; + $69 = (_zeroJournalHdr($67,$68)|0); + HEAP32[$rc>>2] = $69; + $70 = HEAP32[$1>>2]|0; + $71 = (($70) + 72|0); + $72 = $71; + $73 = $72; + HEAP32[$73>>2] = 0; + $74 = (($72) + 4)|0; + $75 = $74; + HEAP32[$75>>2] = 0; + } + } while(0); + $92 = HEAP32[$1>>2]|0; + $93 = (($92) + 56|0); + $94 = HEAP32[$93>>2]|0; + _sqlite3BitvecDestroy($94); + $95 = HEAP32[$1>>2]|0; + $96 = (($95) + 56|0); + HEAP32[$96>>2] = 0; + $97 = HEAP32[$1>>2]|0; + $98 = (($97) + 44|0); + HEAP32[$98>>2] = 0; + $99 = HEAP32[$1>>2]|0; + $100 = (($99) + 204|0); + $101 = HEAP32[$100>>2]|0; + _sqlite3PcacheCleanAll($101); + $102 = HEAP32[$1>>2]|0; + $103 = (($102) + 204|0); + $104 = HEAP32[$103>>2]|0; + $105 = HEAP32[$1>>2]|0; + $106 = (($105) + 24|0); + $107 = HEAP32[$106>>2]|0; + _sqlite3PcacheTruncate($104,$107); + $108 = HEAP32[$1>>2]|0; + $109 = (_pagerUseWal($108)|0); + $110 = ($109|0)!=(0); + if ($110) { + $111 = HEAP32[$1>>2]|0; + $112 = (($111) + 208|0); + $113 = HEAP32[$112>>2]|0; + $114 = (_sqlite3WalEndWriteTransaction($113)|0); + HEAP32[$rc2>>2] = $114; + } else { + $115 = HEAP32[$rc>>2]|0; + $116 = ($115|0)==(0); + if ($116) { + $117 = HEAP32[$3>>2]|0; + $118 = ($117|0)!=(0); + if ($118) { + $119 = HEAP32[$1>>2]|0; + $120 = (($119) + 32|0); + $121 = HEAP32[$120>>2]|0; + $122 = HEAP32[$1>>2]|0; + $123 = (($122) + 24|0); + $124 = HEAP32[$123>>2]|0; + $125 = ($121>>>0)>($124>>>0); + if ($125) { + $126 = HEAP32[$1>>2]|0; + $127 = HEAP32[$1>>2]|0; + $128 = (($127) + 24|0); + $129 = HEAP32[$128>>2]|0; + $130 = (_pager_truncate($126,$129)|0); + HEAP32[$rc>>2] = $130; + } + } + } + } + $131 = HEAP32[$rc>>2]|0; + $132 = ($131|0)==(0); + if ($132) { + $133 = HEAP32[$3>>2]|0; + $134 = ($133|0)!=(0); + if ($134) { + $135 = HEAP32[$1>>2]|0; + $136 = (($135) + 60|0); + $137 = HEAP32[$136>>2]|0; + $138 = HEAP32[$137>>2]|0; + $139 = ($138|0)!=(0|0); + if ($139) { + $140 = HEAP32[$1>>2]|0; + $141 = (($140) + 60|0); + $142 = HEAP32[$141>>2]|0; + $143 = (_sqlite3OsFileControl($142,22,0)|0); + HEAP32[$rc>>2] = $143; + $144 = HEAP32[$rc>>2]|0; + $145 = ($144|0)==(12); + $$1 = $145 ? 0 : $143; + HEAP32[$rc>>2] = $$1; + } + } + } + $146 = HEAP32[$1>>2]|0; + $147 = (($146) + 4|0); + $148 = HEAP8[$147>>0]|0; + $149 = ($148<<24>>24)!=(0); + do { + if (!($149)) { + $150 = HEAP32[$1>>2]|0; + $151 = (_pagerUseWal($150)|0); + $152 = ($151|0)!=(0); + if ($152) { + $153 = HEAP32[$1>>2]|0; + $154 = (($153) + 208|0); + $155 = HEAP32[$154>>2]|0; + $156 = (_sqlite3WalExclusiveMode($155,0)|0); + $157 = ($156|0)!=(0); + if (!($157)) { + break; + } + } + $158 = HEAP32[$1>>2]|0; + $159 = (_pagerUnlockDb($158,1)|0); + HEAP32[$rc2>>2] = $159; + $160 = HEAP32[$1>>2]|0; + $161 = (($160) + 18|0); + HEAP8[$161>>0] = 0; + } + } while(0); + $162 = HEAP32[$1>>2]|0; + $163 = (($162) + 16|0); + HEAP8[$163>>0] = 1; + $164 = HEAP32[$1>>2]|0; + $165 = (($164) + 19|0); + HEAP8[$165>>0] = 0; + $166 = HEAP32[$rc>>2]|0; + $167 = ($166|0)==(0); + $168 = HEAP32[$rc2>>2]|0; + $169 = HEAP32[$rc>>2]|0; + $170 = $167 ? $168 : $169; + HEAP32[$0>>2] = $170; + $171 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($171|0); +} +function _releaseAllSavepoints($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ii = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $ii = sp; + HEAP32[$0>>2] = $pPager; + HEAP32[$ii>>2] = 0; + while(1) { + $1 = HEAP32[$ii>>2]|0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 96|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($1|0)<($4|0); + if (!($5)) { + break; + } + $6 = HEAP32[$ii>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 92|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + (($6*48)|0)|0); + $11 = (($10) + 16|0); + $12 = HEAP32[$11>>2]|0; + _sqlite3BitvecDestroy($12); + $13 = HEAP32[$ii>>2]|0; + $14 = (($13) + 1)|0; + HEAP32[$ii>>2] = $14; + } + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP8[$16>>0]|0; + $18 = ($17<<24>>24)!=(0); + if ($18) { + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 68|0); + $21 = HEAP32[$20>>2]|0; + $22 = (_sqlite3IsMemJournal($21)|0); + $23 = ($22|0)!=(0); + if ($23) { + label = 6; + } + } else { + label = 6; + } + if ((label|0) == 6) { + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 68|0); + $26 = HEAP32[$25>>2]|0; + (_sqlite3OsClose($26)|0); + } + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 92|0); + $29 = HEAP32[$28>>2]|0; + _sqlite3_free($29); + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 92|0); + HEAP32[$31>>2] = 0; + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 96|0); + HEAP32[$33>>2] = 0; + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 52|0); + HEAP32[$35>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3IsMemJournal($pJfd) { + $pJfd = $pJfd|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pJfd; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(10880|0); + $4 = $3&1; + STACKTOP = sp;return ($4|0); +} +function _sqlite3OsTruncate($id,$0,$1) { + $id = $id|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp + 8|0; + $3 = sp; + HEAP32[$2>>2] = $id; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 16|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = $3; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (($13) + 4)|0; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = (FUNCTION_TABLE_iiii[$11 & 31]($12,$15,$18)|0); + STACKTOP = sp;return ($19|0); +} +function _zeroJournalHdr($pPager,$doTruncate) { + $pPager = $pPager|0; + $doTruncate = $doTruncate|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iLimit = 0, $rc = 0, $sz = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp + 20|0; + $rc = sp + 16|0; + $iLimit = sp; + $sz = sp + 8|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $doTruncate; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 72|0); + $4 = $3; + $5 = $4; + $6 = HEAP32[$5>>2]|0; + $7 = (($4) + 4)|0; + $8 = $7; + $9 = HEAP32[$8>>2]|0; + $10 = ($6|0)!=(0); + $11 = ($9|0)!=(0); + $12 = $10 | $11; + if (!($12)) { + $105 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($105|0); + } + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 160|0); + $15 = $14; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = (($15) + 4)|0; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = $iLimit; + $22 = $21; + HEAP32[$22>>2] = $17; + $23 = (($21) + 4)|0; + $24 = $23; + HEAP32[$24>>2] = $20; + $25 = HEAP32[$1>>2]|0; + $26 = ($25|0)!=(0); + if ($26) { + label = 4; + } else { + $27 = $iLimit; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (($27) + 4)|0; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = ($29|0)==(0); + $34 = ($32|0)==(0); + $35 = $33 & $34; + if ($35) { + label = 4; + } else { + $40 = HEAP32[$0>>2]|0; + $41 = (($40) + 64|0); + $42 = HEAP32[$41>>2]|0; + $43 = (_sqlite3OsWrite($42,10848,28,0,0)|0); + HEAP32[$rc>>2] = $43; + } + } + if ((label|0) == 4) { + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + 64|0); + $38 = HEAP32[$37>>2]|0; + $39 = (_sqlite3OsTruncate($38,0,0)|0); + HEAP32[$rc>>2] = $39; + } + $44 = HEAP32[$rc>>2]|0; + $45 = ($44|0)==(0); + if ($45) { + $46 = HEAP32[$0>>2]|0; + $47 = (($46) + 7|0); + $48 = HEAP8[$47>>0]|0; + $49 = ($48<<24>>24)!=(0); + if (!($49)) { + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 64|0); + $52 = HEAP32[$51>>2]|0; + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 11|0); + $55 = HEAP8[$54>>0]|0; + $56 = $55&255; + $57 = 16 | $56; + $58 = (_sqlite3OsSync($52,$57)|0); + HEAP32[$rc>>2] = $58; + } + } + $59 = HEAP32[$rc>>2]|0; + $60 = ($59|0)==(0); + if (!($60)) { + $105 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($105|0); + } + $61 = $iLimit; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = (($61) + 4)|0; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = ($66|0)>(0); + $68 = ($66|0)==(0); + $69 = ($63>>>0)>(0); + $70 = $68 & $69; + $71 = $67 | $70; + if (!($71)) { + $105 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($105|0); + } + $72 = HEAP32[$0>>2]|0; + $73 = (($72) + 64|0); + $74 = HEAP32[$73>>2]|0; + $75 = (_sqlite3OsFileSize($74,$sz)|0); + HEAP32[$rc>>2] = $75; + $76 = HEAP32[$rc>>2]|0; + $77 = ($76|0)==(0); + if (!($77)) { + $105 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($105|0); + } + $78 = $sz; + $79 = $78; + $80 = HEAP32[$79>>2]|0; + $81 = (($78) + 4)|0; + $82 = $81; + $83 = HEAP32[$82>>2]|0; + $84 = $iLimit; + $85 = $84; + $86 = HEAP32[$85>>2]|0; + $87 = (($84) + 4)|0; + $88 = $87; + $89 = HEAP32[$88>>2]|0; + $90 = ($83|0)>($89|0); + $91 = ($83|0)==($89|0); + $92 = ($80>>>0)>($86>>>0); + $93 = $91 & $92; + $94 = $90 | $93; + if (!($94)) { + $105 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($105|0); + } + $95 = HEAP32[$0>>2]|0; + $96 = (($95) + 64|0); + $97 = HEAP32[$96>>2]|0; + $98 = $iLimit; + $99 = $98; + $100 = HEAP32[$99>>2]|0; + $101 = (($98) + 4)|0; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = (_sqlite3OsTruncate($97,$100,$103)|0); + HEAP32[$rc>>2] = $104; + $105 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($105|0); +} +function _sqlite3OsDelete($pVfs,$zPath,$dirSync) { + $pVfs = $pVfs|0; + $zPath = $zPath|0; + $dirSync = $dirSync|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pVfs; + HEAP32[$1>>2] = $zPath; + HEAP32[$2>>2] = $dirSync; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 28|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = (FUNCTION_TABLE_iiii[$5 & 31]($6,$7,$8)|0); + STACKTOP = sp;return ($9|0); +} +function _sqlite3PcacheCleanAll($pCache) { + $pCache = $pCache|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pCache; + while(1) { + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $2; + $3 = ($2|0)!=(0|0); + if (!($3)) { + break; + } + $4 = HEAP32[$p>>2]|0; + _sqlite3PcacheMakeClean($4); + } + STACKTOP = sp;return; +} +function _pagerUseWal($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 208|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + $5 = $4&1; + STACKTOP = sp;return ($5|0); +} +function _sqlite3WalEndWriteTransaction($pWal) { + $pWal = $pWal|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pWal; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 44|0); + $3 = HEAP8[$2>>0]|0; + $4 = ($3<<24>>24)!=(0); + if (!($4)) { + STACKTOP = sp;return 0; + } + $5 = HEAP32[$0>>2]|0; + _walUnlockExclusive($5,0,1); + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 44|0); + HEAP8[$7>>0] = 0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 47|0); + HEAP8[$9>>0] = 0; + STACKTOP = sp;return 0; +} +function _pager_truncate($pPager,$nPage) { + $pPager = $pPager|0; + $nPage = $nPage|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; + var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $currentSize = 0, $newSize = 0, $pTmp = 0, $rc = 0, $szPage = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 20|0; + $rc = sp + 16|0; + $currentSize = sp; + $newSize = sp + 8|0; + $szPage = sp + 24|0; + $pTmp = sp + 28|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $nPage; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 60|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $127 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($127|0); + } + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = ($10|0)>=(4); + if (!($11)) { + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 16|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = ($15|0)==(0); + if (!($16)) { + $127 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($127|0); + } + } + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 152|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$szPage>>2] = $19; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 60|0); + $22 = HEAP32[$21>>2]|0; + $23 = (_sqlite3OsFileSize($22,$currentSize)|0); + HEAP32[$rc>>2] = $23; + $24 = HEAP32[$szPage>>2]|0; + $25 = ($24|0)<(0); + $26 = $25 << 31 >> 31; + $27 = HEAP32[$1>>2]|0; + $28 = (___muldi3(($24|0),($26|0),($27|0),0)|0); + $29 = tempRet0; + $30 = $newSize; + $31 = $30; + HEAP32[$31>>2] = $28; + $32 = (($30) + 4)|0; + $33 = $32; + HEAP32[$33>>2] = $29; + $34 = HEAP32[$rc>>2]|0; + $35 = ($34|0)==(0); + if (!($35)) { + $127 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($127|0); + } + $36 = $currentSize; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + $39 = (($36) + 4)|0; + $40 = $39; + $41 = HEAP32[$40>>2]|0; + $42 = $newSize; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = ($38|0)!=($44|0); + $49 = ($41|0)!=($47|0); + $50 = $48 | $49; + if (!($50)) { + $127 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($127|0); + } + $51 = $currentSize; + $52 = $51; + $53 = HEAP32[$52>>2]|0; + $54 = (($51) + 4)|0; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = $newSize; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = (($57) + 4)|0; + $61 = $60; + $62 = HEAP32[$61>>2]|0; + $63 = ($56|0)>($62|0); + $64 = ($56|0)==($62|0); + $65 = ($53>>>0)>($59>>>0); + $66 = $64 & $65; + $67 = $63 | $66; + if ($67) { + $68 = HEAP32[$0>>2]|0; + $69 = (($68) + 60|0); + $70 = HEAP32[$69>>2]|0; + $71 = $newSize; + $72 = $71; + $73 = HEAP32[$72>>2]|0; + $74 = (($71) + 4)|0; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = (_sqlite3OsTruncate($70,$73,$76)|0); + HEAP32[$rc>>2] = $77; + } else { + $78 = $currentSize; + $79 = $78; + $80 = HEAP32[$79>>2]|0; + $81 = (($78) + 4)|0; + $82 = $81; + $83 = HEAP32[$82>>2]|0; + $84 = HEAP32[$szPage>>2]|0; + $85 = ($84|0)<(0); + $86 = $85 << 31 >> 31; + $87 = (_i64Add(($80|0),($83|0),($84|0),($86|0))|0); + $88 = tempRet0; + $89 = $newSize; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + $92 = (($89) + 4)|0; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = ($88|0)<($94|0); + $96 = ($88|0)==($94|0); + $97 = ($87>>>0)<=($91>>>0); + $98 = $96 & $97; + $99 = $95 | $98; + if ($99) { + $100 = HEAP32[$0>>2]|0; + $101 = (($100) + 200|0); + $102 = HEAP32[$101>>2]|0; + HEAP32[$pTmp>>2] = $102; + $103 = HEAP32[$pTmp>>2]|0; + $104 = HEAP32[$szPage>>2]|0; + _memset(($103|0),0,($104|0))|0; + $105 = HEAP32[$0>>2]|0; + $106 = (($105) + 60|0); + $107 = HEAP32[$106>>2]|0; + $108 = HEAP32[$pTmp>>2]|0; + $109 = HEAP32[$szPage>>2]|0; + $110 = $newSize; + $111 = $110; + $112 = HEAP32[$111>>2]|0; + $113 = (($110) + 4)|0; + $114 = $113; + $115 = HEAP32[$114>>2]|0; + $116 = HEAP32[$szPage>>2]|0; + $117 = ($116|0)<(0); + $118 = $117 << 31 >> 31; + $119 = (_i64Subtract(($112|0),($115|0),($116|0),($118|0))|0); + $120 = tempRet0; + $121 = (_sqlite3OsWrite($107,$108,$109,$119,$120)|0); + HEAP32[$rc>>2] = $121; + } + } + $122 = HEAP32[$rc>>2]|0; + $123 = ($122|0)==(0); + if (!($123)) { + $127 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($127|0); + } + $124 = HEAP32[$1>>2]|0; + $125 = HEAP32[$0>>2]|0; + $126 = (($125) + 32|0); + HEAP32[$126>>2] = $124; + $127 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($127|0); +} +function _sqlite3WalExclusiveMode($pWal,$op) { + $pWal = $pWal|0; + $op = $op|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $pWal; + HEAP32[$1>>2] = $op; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0); + if (!($3)) { + $26 = HEAP32[$1>>2]|0; + $27 = ($26|0)>(0); + $28 = HEAP32[$0>>2]|0; + if ($27) { + $29 = HEAP32[$0>>2]|0; + $30 = (($29) + 40|0); + $31 = HEAP16[$30>>1]|0; + $32 = $31 << 16 >> 16; + $33 = (3 + ($32))|0; + _walUnlockShared($28,$33); + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 43|0); + HEAP8[$35>>0] = 1; + HEAP32[$rc>>2] = 1; + $41 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($41|0); + } else { + $36 = (($28) + 43|0); + $37 = HEAP8[$36>>0]|0; + $38 = $37&255; + $39 = ($38|0)==(0); + $40 = $39&1; + HEAP32[$rc>>2] = $40; + $41 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($41|0); + } + } + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 43|0); + $6 = HEAP8[$5>>0]|0; + $7 = ($6<<24>>24)!=(0); + if (!($7)) { + HEAP32[$rc>>2] = 0; + $41 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($41|0); + } + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 43|0); + HEAP8[$9>>0] = 0; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 40|0); + $13 = HEAP16[$12>>1]|0; + $14 = $13 << 16 >> 16; + $15 = (3 + ($14))|0; + $16 = (_walLockShared($10,$15)|0); + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 43|0); + HEAP8[$19>>0] = 1; + } + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 43|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = ($23|0)==(0); + $25 = $24&1; + HEAP32[$rc>>2] = $25; + $41 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($41|0); +} +function _pagerUnlockDb($pPager,$eLock) { + $pPager = $pPager|0; + $eLock = $eLock|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $eLock; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 60|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $27 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($27|0); + } + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 13|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = ($10|0)!=(0); + if ($11) { + $17 = 0; + } else { + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 60|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (_sqlite3OsUnlock($14,$15)|0); + $17 = $16; + } + HEAP32[$rc>>2] = $17; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 17|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = ($21|0)!=(5); + if (!($22)) { + $27 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($27|0); + } + $23 = HEAP32[$1>>2]|0; + $24 = $23&255; + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 17|0); + HEAP8[$26>>0] = $24; + $27 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($27|0); +} +function _sqlite3OsUnlock($id,$lockType) { + $id = $id|0; + $lockType = $lockType|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $id; + HEAP32[$1>>2] = $lockType; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 32|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (FUNCTION_TABLE_iii[$5 & 127]($6,$7)|0); + STACKTOP = sp;return ($8|0); +} +function _walLockShared($pWal,$lockIdx) { + $pWal = $pWal|0; + $lockIdx = $lockIdx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$1>>2] = $pWal; + HEAP32[$2>>2] = $lockIdx; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 43|0); + $5 = HEAP8[$4>>0]|0; + $6 = ($5<<24>>24)!=(0); + if ($6) { + HEAP32[$0>>2] = 0; + $13 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($13|0); + } else { + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = (_sqlite3OsShmLock($9,$10,1,6)|0); + HEAP32[$rc>>2] = $11; + $12 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $12; + $13 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($13|0); + } + return 0|0; +} +function _walUnlockShared($pWal,$lockIdx) { + $pWal = $pWal|0; + $lockIdx = $lockIdx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pWal; + HEAP32[$1>>2] = $lockIdx; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 43|0); + $4 = HEAP8[$3>>0]|0; + $5 = ($4<<24>>24)!=(0); + if ($5) { + STACKTOP = sp;return; + } + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$1>>2]|0; + (_sqlite3OsShmLock($8,$9,1,5)|0); + STACKTOP = sp;return; +} +function _sqlite3OsShmLock($id,$offset,$n,$flags) { + $id = $id|0; + $offset = $offset|0; + $n = $n|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $id; + HEAP32[$1>>2] = $offset; + HEAP32[$2>>2] = $n; + HEAP32[$3>>2] = $flags; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + 56|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$3>>2]|0; + $12 = (FUNCTION_TABLE_iiiii[$7 & 31]($8,$9,$10,$11)|0); + STACKTOP = sp;return ($12|0); +} +function _walUnlockExclusive($pWal,$lockIdx,$n) { + $pWal = $pWal|0; + $lockIdx = $lockIdx|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pWal; + HEAP32[$1>>2] = $lockIdx; + HEAP32[$2>>2] = $n; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 43|0); + $5 = HEAP8[$4>>0]|0; + $6 = ($5<<24>>24)!=(0); + if ($6) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$2>>2]|0; + (_sqlite3OsShmLock($9,$10,$11,9)|0); + STACKTOP = sp;return; +} +function _sqlite3OsSync($id,$flags) { + $id = $id|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $id; + HEAP32[$1>>2] = $flags; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 20|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (FUNCTION_TABLE_iii[$5 & 127]($6,$7)|0); + STACKTOP = sp;return ($8|0); +} +function _memjrnlClose($pJfd) { + $pJfd = $pJfd|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pJfd; + $1 = HEAP32[$0>>2]|0; + (_memjrnlTruncate($1,0,0)|0); + STACKTOP = sp;return 0; +} +function _memjrnlRead($pJfd,$zBuf,$iAmt,$0,$1) { + $pJfd = $pJfd|0; + $zBuf = $zBuf|0; + $iAmt = $iAmt|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $iChunkOffset = 0, $iOff = 0, $iSpace = 0, $nCopy = 0, $nRead = 0, $or$cond = 0, $p = 0, $pChunk = 0, $zOut = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $2 = sp + 52|0; + $3 = sp + 48|0; + $4 = sp + 44|0; + $5 = sp + 8|0; + $p = sp + 40|0; + $zOut = sp + 36|0; + $nRead = sp + 32|0; + $iChunkOffset = sp + 24|0; + $pChunk = sp + 20|0; + $iOff = sp; + $iSpace = sp + 16|0; + $nCopy = sp + 28|0; + HEAP32[$2>>2] = $pJfd; + HEAP32[$3>>2] = $zBuf; + HEAP32[$4>>2] = $iAmt; + $6 = $5; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + $10 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $10; + $11 = HEAP32[$3>>2]|0; + HEAP32[$zOut>>2] = $11; + $12 = HEAP32[$4>>2]|0; + HEAP32[$nRead>>2] = $12; + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 24|0); + $15 = $14; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = (($15) + 4)|0; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = $5; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (($21) + 4)|0; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = ($17|0)!=($23|0); + $28 = ($20|0)!=($26|0); + $29 = $27 | $28; + $30 = $5; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = ($32|0)==(0); + $37 = ($35|0)==(0); + $38 = $36 & $37; + $or$cond = $29 | $38; + L1: do { + if ($or$cond) { + $39 = $iOff; + $40 = $39; + HEAP32[$40>>2] = 0; + $41 = (($39) + 4)|0; + $42 = $41; + HEAP32[$42>>2] = 0; + $43 = HEAP32[$p>>2]|0; + $44 = (($43) + 4|0); + $45 = HEAP32[$44>>2]|0; + HEAP32[$pChunk>>2] = $45; + while(1) { + $46 = HEAP32[$pChunk>>2]|0; + $47 = ($46|0)!=(0|0); + if (!($47)) { + break L1; + } + $48 = $iOff; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = (($48) + 4)|0; + $52 = $51; + $53 = HEAP32[$52>>2]|0; + $54 = (_i64Add(($50|0),($53|0),1020,0)|0); + $55 = tempRet0; + $56 = $5; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = (($56) + 4)|0; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = ($55|0)<($61|0); + $63 = ($55|0)==($61|0); + $64 = ($54>>>0)<=($58>>>0); + $65 = $63 & $64; + $66 = $62 | $65; + if (!($66)) { + break L1; + } + $67 = $iOff; + $68 = $67; + $69 = HEAP32[$68>>2]|0; + $70 = (($67) + 4)|0; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = (_i64Add(($69|0),($72|0),1020,0)|0); + $74 = tempRet0; + $75 = $iOff; + $76 = $75; + HEAP32[$76>>2] = $73; + $77 = (($75) + 4)|0; + $78 = $77; + HEAP32[$78>>2] = $74; + $79 = HEAP32[$pChunk>>2]|0; + $80 = HEAP32[$79>>2]|0; + HEAP32[$pChunk>>2] = $80; + } + } else { + $81 = HEAP32[$p>>2]|0; + $82 = (($81) + 24|0); + $83 = (($82) + 8|0); + $84 = HEAP32[$83>>2]|0; + HEAP32[$pChunk>>2] = $84; + } + } while(0); + $85 = $5; + $86 = $85; + $87 = HEAP32[$86>>2]|0; + $88 = (($85) + 4)|0; + $89 = $88; + $90 = HEAP32[$89>>2]|0; + $91 = (___remdi3(($87|0),($90|0),1020,0)|0); + $92 = tempRet0; + HEAP32[$iChunkOffset>>2] = $91; + while(1) { + $93 = HEAP32[$iChunkOffset>>2]|0; + $94 = (1020 - ($93))|0; + HEAP32[$iSpace>>2] = $94; + $95 = HEAP32[$nRead>>2]|0; + $96 = HEAP32[$iChunkOffset>>2]|0; + $97 = (1020 - ($96))|0; + $98 = ($95|0)<($97|0); + if ($98) { + $99 = HEAP32[$nRead>>2]|0; + $102 = $99; + } else { + $100 = HEAP32[$iChunkOffset>>2]|0; + $101 = (1020 - ($100))|0; + $102 = $101; + } + HEAP32[$nCopy>>2] = $102; + $103 = HEAP32[$zOut>>2]|0; + $104 = HEAP32[$iChunkOffset>>2]|0; + $105 = HEAP32[$pChunk>>2]|0; + $106 = (($105) + 4|0); + $107 = (($106) + ($104)|0); + $108 = HEAP32[$nCopy>>2]|0; + _memcpy(($103|0),($107|0),($108|0))|0; + $109 = HEAP32[$nCopy>>2]|0; + $110 = HEAP32[$zOut>>2]|0; + $111 = (($110) + ($109)|0); + HEAP32[$zOut>>2] = $111; + $112 = HEAP32[$iSpace>>2]|0; + $113 = HEAP32[$nRead>>2]|0; + $114 = (($113) - ($112))|0; + HEAP32[$nRead>>2] = $114; + HEAP32[$iChunkOffset>>2] = 0; + $115 = HEAP32[$nRead>>2]|0; + $116 = ($115|0)>=(0); + if (!($116)) { + break; + } + $117 = HEAP32[$pChunk>>2]|0; + $118 = HEAP32[$117>>2]|0; + HEAP32[$pChunk>>2] = $118; + $119 = ($118|0)!=(0|0); + if (!($119)) { + break; + } + $120 = HEAP32[$nRead>>2]|0; + $121 = ($120|0)>(0); + if (!($121)) { + break; + } + } + $122 = $5; + $123 = $122; + $124 = HEAP32[$123>>2]|0; + $125 = (($122) + 4)|0; + $126 = $125; + $127 = HEAP32[$126>>2]|0; + $128 = HEAP32[$4>>2]|0; + $129 = ($128|0)<(0); + $130 = $129 << 31 >> 31; + $131 = (_i64Add(($124|0),($127|0),($128|0),($130|0))|0); + $132 = tempRet0; + $133 = HEAP32[$p>>2]|0; + $134 = (($133) + 24|0); + $135 = $134; + $136 = $135; + HEAP32[$136>>2] = $131; + $137 = (($135) + 4)|0; + $138 = $137; + HEAP32[$138>>2] = $132; + $139 = HEAP32[$pChunk>>2]|0; + $140 = HEAP32[$p>>2]|0; + $141 = (($140) + 24|0); + $142 = (($141) + 8|0); + HEAP32[$142>>2] = $139; + STACKTOP = sp;return 0; +} +function _memjrnlWrite($pJfd,$zBuf,$iAmt,$0,$1) { + $pJfd = $pJfd|0; + $zBuf = $zBuf|0; + $iAmt = $iAmt|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $iChunkOffset = 0, $iSpace = 0, $nWrite = 0, $p = 0, $pChunk = 0, $pNew = 0, $zWrite = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $2 = sp + 48|0; + $3 = sp + 44|0; + $4 = sp + 40|0; + $5 = sp + 36|0; + $6 = sp; + $p = sp + 32|0; + $nWrite = sp + 28|0; + $zWrite = sp + 20|0; + $pChunk = sp + 12|0; + $iChunkOffset = sp + 8|0; + $iSpace = sp + 16|0; + $pNew = sp + 24|0; + HEAP32[$3>>2] = $pJfd; + HEAP32[$4>>2] = $zBuf; + HEAP32[$5>>2] = $iAmt; + $7 = $6; + $8 = $7; + HEAP32[$8>>2] = $0; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = $1; + $11 = HEAP32[$3>>2]|0; + HEAP32[$p>>2] = $11; + $12 = HEAP32[$5>>2]|0; + HEAP32[$nWrite>>2] = $12; + $13 = HEAP32[$4>>2]|0; + HEAP32[$zWrite>>2] = $13; + while(1) { + $14 = HEAP32[$nWrite>>2]|0; + $15 = ($14|0)>(0); + if (!($15)) { + label = 14; + break; + } + $16 = HEAP32[$p>>2]|0; + $17 = (($16) + 8|0); + $18 = (($17) + 8|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$pChunk>>2] = $19; + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 8|0); + $22 = $21; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (($22) + 4)|0; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (___remdi3(($24|0),($27|0),1020,0)|0); + $29 = tempRet0; + HEAP32[$iChunkOffset>>2] = $28; + $30 = HEAP32[$nWrite>>2]|0; + $31 = HEAP32[$iChunkOffset>>2]|0; + $32 = (1020 - ($31))|0; + $33 = ($30|0)<($32|0); + if ($33) { + $34 = HEAP32[$nWrite>>2]|0; + $37 = $34; + } else { + $35 = HEAP32[$iChunkOffset>>2]|0; + $36 = (1020 - ($35))|0; + $37 = $36; + } + HEAP32[$iSpace>>2] = $37; + $38 = HEAP32[$iChunkOffset>>2]|0; + $39 = ($38|0)==(0); + if ($39) { + $40 = (_sqlite3_malloc(1024)|0); + HEAP32[$pNew>>2] = $40; + $41 = HEAP32[$pNew>>2]|0; + $42 = ($41|0)!=(0|0); + if (!($42)) { + label = 8; + break; + } + $43 = HEAP32[$pNew>>2]|0; + HEAP32[$43>>2] = 0; + $44 = HEAP32[$pChunk>>2]|0; + $45 = ($44|0)!=(0|0); + $46 = HEAP32[$pNew>>2]|0; + if ($45) { + $47 = HEAP32[$pChunk>>2]|0; + HEAP32[$47>>2] = $46; + } else { + $48 = HEAP32[$p>>2]|0; + $49 = (($48) + 4|0); + HEAP32[$49>>2] = $46; + } + $50 = HEAP32[$pNew>>2]|0; + $51 = HEAP32[$p>>2]|0; + $52 = (($51) + 8|0); + $53 = (($52) + 8|0); + HEAP32[$53>>2] = $50; + } + $54 = HEAP32[$iChunkOffset>>2]|0; + $55 = HEAP32[$p>>2]|0; + $56 = (($55) + 8|0); + $57 = (($56) + 8|0); + $58 = HEAP32[$57>>2]|0; + $59 = (($58) + 4|0); + $60 = (($59) + ($54)|0); + $61 = HEAP32[$zWrite>>2]|0; + $62 = HEAP32[$iSpace>>2]|0; + _memcpy(($60|0),($61|0),($62|0))|0; + $63 = HEAP32[$iSpace>>2]|0; + $64 = HEAP32[$zWrite>>2]|0; + $65 = (($64) + ($63)|0); + HEAP32[$zWrite>>2] = $65; + $66 = HEAP32[$iSpace>>2]|0; + $67 = HEAP32[$nWrite>>2]|0; + $68 = (($67) - ($66))|0; + HEAP32[$nWrite>>2] = $68; + $69 = HEAP32[$iSpace>>2]|0; + $70 = ($69|0)<(0); + $71 = $70 << 31 >> 31; + $72 = HEAP32[$p>>2]|0; + $73 = (($72) + 8|0); + $74 = $73; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = (($74) + 4)|0; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = (_i64Add(($76|0),($79|0),($69|0),($71|0))|0); + $81 = tempRet0; + $82 = $73; + $83 = $82; + HEAP32[$83>>2] = $80; + $84 = (($82) + 4)|0; + $85 = $84; + HEAP32[$85>>2] = $81; + } + if ((label|0) == 8) { + HEAP32[$2>>2] = 3082; + $86 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($86|0); + } + else if ((label|0) == 14) { + HEAP32[$2>>2] = 0; + $86 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($86|0); + } + return 0|0; +} +function _memjrnlTruncate($pJfd,$0,$1) { + $pJfd = $pJfd|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pChunk = 0, $pTmp = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 20|0; + $3 = sp; + $p = sp + 8|0; + $pChunk = sp + 12|0; + $pTmp = sp + 16|0; + HEAP32[$2>>2] = $pJfd; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $8; + $9 = HEAP32[$p>>2]|0; + $10 = (($9) + 4|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$pChunk>>2] = $11; + while(1) { + $12 = HEAP32[$pChunk>>2]|0; + $13 = ($12|0)!=(0|0); + if (!($13)) { + break; + } + $14 = HEAP32[$pChunk>>2]|0; + HEAP32[$pTmp>>2] = $14; + $15 = HEAP32[$pChunk>>2]|0; + $16 = HEAP32[$15>>2]|0; + HEAP32[$pChunk>>2] = $16; + $17 = HEAP32[$pTmp>>2]|0; + _sqlite3_free($17); + } + $18 = HEAP32[$2>>2]|0; + _sqlite3MemJournalOpen($18); + STACKTOP = sp;return 0; +} +function _memjrnlSync($NotUsed,$NotUsed2) { + $NotUsed = $NotUsed|0; + $NotUsed2 = $NotUsed2|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $NotUsed; + HEAP32[$1>>2] = $NotUsed2; + STACKTOP = sp;return 0; +} +function _memjrnlFileSize($pJfd,$pSize) { + $pJfd = $pJfd|0; + $pSize = $pSize|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $p = sp + 4|0; + HEAP32[$0>>2] = $pJfd; + HEAP32[$1>>2] = $pSize; + $2 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $2; + $3 = HEAP32[$p>>2]|0; + $4 = (($3) + 8|0); + $5 = $4; + $6 = $5; + $7 = HEAP32[$6>>2]|0; + $8 = (($5) + 4)|0; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = $11; + $13 = $12; + HEAP32[$13>>2] = $7; + $14 = (($12) + 4)|0; + $15 = $14; + HEAP32[$15>>2] = $10; + STACKTOP = sp;return 0; +} +function _sqlite3MemJournalOpen($pJfd) { + $pJfd = $pJfd|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pJfd; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + $2 = HEAP32[$p>>2]|0; + $3 = (_sqlite3MemJournalSize()|0); + _memset(($2|0),0,($3|0))|0; + $4 = HEAP32[$p>>2]|0; + HEAP32[$4>>2] = 10880; + STACKTOP = sp;return; +} +function _sqlite3MemJournalSize() { + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = sp;return 40; +} +function _sqlite3PagerSavepoint($pPager,$op,$iSavepoint) { + $pPager = $pPager|0; + $op = $op|0; + $iSavepoint = $iSavepoint|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $8 = 0, $9 = 0, $ii = 0, $nNew = 0, $pSavepoint = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $ii = sp + 12|0; + $nNew = sp + 16|0; + $pSavepoint = sp + 20|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $op; + HEAP32[$2>>2] = $iSavepoint; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 40|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$rc>>2] = $5; + $6 = HEAP32[$rc>>2]|0; + $7 = ($6|0)==(0); + if (!($7)) { + $76 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($76|0); + } + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 96|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($8|0)<($11|0); + if (!($12)) { + $76 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($76|0); + } + $13 = HEAP32[$2>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = ($14|0)==(1); + $16 = $15 ? 0 : 1; + $17 = (($13) + ($16))|0; + HEAP32[$nNew>>2] = $17; + $18 = HEAP32[$nNew>>2]|0; + HEAP32[$ii>>2] = $18; + while(1) { + $19 = HEAP32[$ii>>2]|0; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 96|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($19|0)<($22|0); + if (!($23)) { + break; + } + $24 = HEAP32[$ii>>2]|0; + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 92|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + (($24*48)|0)|0); + $29 = (($28) + 16|0); + $30 = HEAP32[$29>>2]|0; + _sqlite3BitvecDestroy($30); + $31 = HEAP32[$ii>>2]|0; + $32 = (($31) + 1)|0; + HEAP32[$ii>>2] = $32; + } + $33 = HEAP32[$nNew>>2]|0; + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 96|0); + HEAP32[$35>>2] = $33; + $36 = HEAP32[$1>>2]|0; + $37 = ($36|0)==(1); + if (!($37)) { + $56 = HEAP32[$0>>2]|0; + $57 = (_pagerUseWal($56)|0); + $58 = ($57|0)!=(0); + if (!($58)) { + $59 = HEAP32[$0>>2]|0; + $60 = (($59) + 64|0); + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$61>>2]|0; + $63 = ($62|0)!=(0|0); + if (!($63)) { + $76 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($76|0); + } + } + $64 = HEAP32[$nNew>>2]|0; + $65 = ($64|0)==(0); + if ($65) { + $72 = 0; + } else { + $66 = HEAP32[$nNew>>2]|0; + $67 = (($66) - 1)|0; + $68 = HEAP32[$0>>2]|0; + $69 = (($68) + 92|0); + $70 = HEAP32[$69>>2]|0; + $71 = (($70) + (($67*48)|0)|0); + $72 = $71; + } + HEAP32[$pSavepoint>>2] = $72; + $73 = HEAP32[$0>>2]|0; + $74 = HEAP32[$pSavepoint>>2]|0; + $75 = (_pagerPlaybackSavepoint($73,$74)|0); + HEAP32[$rc>>2] = $75; + $76 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($76|0); + } + $38 = HEAP32[$nNew>>2]|0; + $39 = ($38|0)==(0); + if (!($39)) { + $76 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($76|0); + } + $40 = HEAP32[$0>>2]|0; + $41 = (($40) + 68|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$42>>2]|0; + $44 = ($43|0)!=(0|0); + if (!($44)) { + $76 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($76|0); + } + $45 = HEAP32[$0>>2]|0; + $46 = (($45) + 68|0); + $47 = HEAP32[$46>>2]|0; + $48 = (_sqlite3IsMemJournal($47)|0); + $49 = ($48|0)!=(0); + if ($49) { + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 68|0); + $52 = HEAP32[$51>>2]|0; + $53 = (_sqlite3OsTruncate($52,0,0)|0); + HEAP32[$rc>>2] = $53; + } + $54 = HEAP32[$0>>2]|0; + $55 = (($54) + 52|0); + HEAP32[$55>>2] = 0; + $76 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($76|0); +} +function _pager_playback($pPager,$isHot) { + $pPager = $pPager|0; + $isHot = $isHot|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $mxPg = 0, $nPlayback = 0, $nRec = 0, $needPagerReset = 0, $pVfs = 0, $rc = 0, $res = 0, $szJ = 0, $u = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $zMaster = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer = sp + 8|0; + $0 = sp + 52|0; + $1 = sp + 48|0; + $pVfs = sp + 44|0; + $szJ = sp; + $nRec = sp + 40|0; + $u = sp + 56|0; + $mxPg = sp + 32|0; + $rc = sp + 24|0; + $res = sp + 16|0; + $zMaster = sp + 20|0; + $needPagerReset = sp + 36|0; + $nPlayback = sp + 28|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $isHot; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$pVfs>>2] = $3; + HEAP32[$mxPg>>2] = 0; + HEAP32[$res>>2] = 1; + HEAP32[$zMaster>>2] = 0; + HEAP32[$nPlayback>>2] = 0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 64|0); + $6 = HEAP32[$5>>2]|0; + $7 = (_sqlite3OsFileSize($6,$szJ)|0); + HEAP32[$rc>>2] = $7; + $8 = HEAP32[$rc>>2]|0; + $9 = ($8|0)!=(0); + L1: do { + if (!($9)) { + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 200|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$zMaster>>2] = $12; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 64|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$zMaster>>2]|0; + $17 = HEAP32[$0>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + 8|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + 1)|0; + $22 = (_readMasterJournal($15,$16,$21)|0); + HEAP32[$rc>>2] = $22; + $23 = HEAP32[$rc>>2]|0; + $24 = ($23|0)==(0); + if ($24) { + $25 = HEAP32[$zMaster>>2]|0; + $26 = HEAP8[$25>>0]|0; + $27 = $26 << 24 >> 24; + $28 = ($27|0)!=(0); + if ($28) { + $29 = HEAP32[$pVfs>>2]|0; + $30 = HEAP32[$zMaster>>2]|0; + $31 = (_sqlite3OsAccess($29,$30,0,$res)|0); + HEAP32[$rc>>2] = $31; + } + } + HEAP32[$zMaster>>2] = 0; + $32 = HEAP32[$rc>>2]|0; + $33 = ($32|0)!=(0); + if (!($33)) { + $34 = HEAP32[$res>>2]|0; + $35 = ($34|0)!=(0); + if ($35) { + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + 72|0); + $38 = $37; + $39 = $38; + HEAP32[$39>>2] = 0; + $40 = (($38) + 4)|0; + $41 = $40; + HEAP32[$41>>2] = 0; + $42 = HEAP32[$1>>2]|0; + HEAP32[$needPagerReset>>2] = $42; + L9: while(1) { + $43 = HEAP32[$0>>2]|0; + $44 = HEAP32[$1>>2]|0; + $45 = $szJ; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (($45) + 4)|0; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = (_readJournalHdr($43,$44,$47,$50,$nRec,$mxPg)|0); + HEAP32[$rc>>2] = $51; + $52 = HEAP32[$rc>>2]|0; + $53 = ($52|0)!=(0); + if ($53) { + label = 9; + break; + } + $56 = HEAP32[$nRec>>2]|0; + $57 = ($56|0)==(-1); + if ($57) { + $58 = $szJ; + $59 = $58; + $60 = HEAP32[$59>>2]|0; + $61 = (($58) + 4)|0; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = HEAP32[$0>>2]|0; + $65 = (($64) + 148|0); + $66 = HEAP32[$65>>2]|0; + $67 = (_i64Subtract(($60|0),($63|0),($66|0),0)|0); + $68 = tempRet0; + $69 = HEAP32[$0>>2]|0; + $70 = (($69) + 152|0); + $71 = HEAP32[$70>>2]|0; + $72 = (($71) + 8)|0; + $73 = ($72|0)<(0); + $74 = $73 << 31 >> 31; + $75 = (___divdi3(($67|0),($68|0),($72|0),($74|0))|0); + $76 = tempRet0; + HEAP32[$nRec>>2] = $75; + } + $77 = HEAP32[$nRec>>2]|0; + $78 = ($77|0)==(0); + if ($78) { + $79 = HEAP32[$1>>2]|0; + $80 = ($79|0)!=(0); + if (!($80)) { + $81 = HEAP32[$0>>2]|0; + $82 = (($81) + 80|0); + $83 = $82; + $84 = $83; + $85 = HEAP32[$84>>2]|0; + $86 = (($83) + 4)|0; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = HEAP32[$0>>2]|0; + $90 = (($89) + 148|0); + $91 = HEAP32[$90>>2]|0; + $92 = (_i64Add(($85|0),($88|0),($91|0),0)|0); + $93 = tempRet0; + $94 = HEAP32[$0>>2]|0; + $95 = (($94) + 72|0); + $96 = $95; + $97 = $96; + $98 = HEAP32[$97>>2]|0; + $99 = (($96) + 4)|0; + $100 = $99; + $101 = HEAP32[$100>>2]|0; + $102 = ($92|0)==($98|0); + $103 = ($93|0)==($101|0); + $104 = $102 & $103; + if ($104) { + $105 = $szJ; + $106 = $105; + $107 = HEAP32[$106>>2]|0; + $108 = (($105) + 4)|0; + $109 = $108; + $110 = HEAP32[$109>>2]|0; + $111 = HEAP32[$0>>2]|0; + $112 = (($111) + 72|0); + $113 = $112; + $114 = $113; + $115 = HEAP32[$114>>2]|0; + $116 = (($113) + 4)|0; + $117 = $116; + $118 = HEAP32[$117>>2]|0; + $119 = (_i64Subtract(($107|0),($110|0),($115|0),($118|0))|0); + $120 = tempRet0; + $121 = HEAP32[$0>>2]|0; + $122 = (($121) + 152|0); + $123 = HEAP32[$122>>2]|0; + $124 = (($123) + 8)|0; + $125 = ($124|0)<(0); + $126 = $125 << 31 >> 31; + $127 = (___divdi3(($119|0),($120|0),($124|0),($126|0))|0); + $128 = tempRet0; + HEAP32[$nRec>>2] = $127; + } + } + } + $129 = HEAP32[$0>>2]|0; + $130 = (($129) + 72|0); + $131 = $130; + $132 = $131; + $133 = HEAP32[$132>>2]|0; + $134 = (($131) + 4)|0; + $135 = $134; + $136 = HEAP32[$135>>2]|0; + $137 = HEAP32[$0>>2]|0; + $138 = (($137) + 148|0); + $139 = HEAP32[$138>>2]|0; + $140 = ($133|0)==($139|0); + $141 = ($136|0)==(0); + $142 = $140 & $141; + if ($142) { + $143 = HEAP32[$0>>2]|0; + $144 = HEAP32[$mxPg>>2]|0; + $145 = (_pager_truncate($143,$144)|0); + HEAP32[$rc>>2] = $145; + $146 = HEAP32[$rc>>2]|0; + $147 = ($146|0)!=(0); + if ($147) { + break L1; + } + $148 = HEAP32[$mxPg>>2]|0; + $149 = HEAP32[$0>>2]|0; + $150 = (($149) + 24|0); + HEAP32[$150>>2] = $148; + } + HEAP32[$u>>2] = 0; + while(1) { + $151 = HEAP32[$u>>2]|0; + $152 = HEAP32[$nRec>>2]|0; + $153 = ($151>>>0)<($152>>>0); + if (!($153)) { + continue L9; + } + $154 = HEAP32[$needPagerReset>>2]|0; + $155 = ($154|0)!=(0); + if ($155) { + $156 = HEAP32[$0>>2]|0; + _pager_reset($156); + HEAP32[$needPagerReset>>2] = 0; + } + $157 = HEAP32[$0>>2]|0; + $158 = HEAP32[$0>>2]|0; + $159 = (($158) + 72|0); + $160 = (_pager_playback_one_page($157,$159,0,1,0)|0); + HEAP32[$rc>>2] = $160; + $161 = HEAP32[$rc>>2]|0; + $162 = ($161|0)==(0); + if (!($162)) { + break; + } + $163 = HEAP32[$nPlayback>>2]|0; + $164 = (($163) + 1)|0; + HEAP32[$nPlayback>>2] = $164; + $165 = HEAP32[$u>>2]|0; + $166 = (($165) + 1)|0; + HEAP32[$u>>2] = $166; + } + $167 = HEAP32[$rc>>2]|0; + $168 = ($167|0)==(101); + if (!($168)) { + label = 28; + break; + } + $169 = $szJ; + $170 = $169; + $171 = HEAP32[$170>>2]|0; + $172 = (($169) + 4)|0; + $173 = $172; + $174 = HEAP32[$173>>2]|0; + $175 = HEAP32[$0>>2]|0; + $176 = (($175) + 72|0); + $177 = $176; + $178 = $177; + HEAP32[$178>>2] = $171; + $179 = (($177) + 4)|0; + $180 = $179; + HEAP32[$180>>2] = $174; + } + if ((label|0) == 9) { + $54 = HEAP32[$rc>>2]|0; + $55 = ($54|0)==(101); + if (!($55)) { + break; + } + HEAP32[$rc>>2] = 0; + break; + } + else if ((label|0) == 28) { + $181 = HEAP32[$rc>>2]|0; + $182 = ($181|0)==(522); + if (!($182)) { + break; + } + HEAP32[$rc>>2] = 0; + break; + } + } + } + } + } while(0); + $183 = HEAP32[$0>>2]|0; + $184 = (($183) + 12|0); + $185 = HEAP8[$184>>0]|0; + $186 = HEAP32[$0>>2]|0; + $187 = (($186) + 18|0); + HEAP8[$187>>0] = $185; + $188 = HEAP32[$rc>>2]|0; + $189 = ($188|0)==(0); + if ($189) { + $190 = HEAP32[$0>>2]|0; + $191 = (($190) + 200|0); + $192 = HEAP32[$191>>2]|0; + HEAP32[$zMaster>>2] = $192; + $193 = HEAP32[$0>>2]|0; + $194 = (($193) + 64|0); + $195 = HEAP32[$194>>2]|0; + $196 = HEAP32[$zMaster>>2]|0; + $197 = HEAP32[$0>>2]|0; + $198 = HEAP32[$197>>2]|0; + $199 = (($198) + 8|0); + $200 = HEAP32[$199>>2]|0; + $201 = (($200) + 1)|0; + $202 = (_readMasterJournal($195,$196,$201)|0); + HEAP32[$rc>>2] = $202; + } + $203 = HEAP32[$rc>>2]|0; + $204 = ($203|0)==(0); + do { + if ($204) { + $205 = HEAP32[$0>>2]|0; + $206 = (($205) + 16|0); + $207 = HEAP8[$206>>0]|0; + $208 = $207&255; + $209 = ($208|0)>=(4); + if (!($209)) { + $210 = HEAP32[$0>>2]|0; + $211 = (($210) + 16|0); + $212 = HEAP8[$211>>0]|0; + $213 = $212&255; + $214 = ($213|0)==(0); + if (!($214)) { + break; + } + } + $215 = HEAP32[$0>>2]|0; + $216 = (_sqlite3PagerSync($215,0)|0); + HEAP32[$rc>>2] = $216; + } + } while(0); + $217 = HEAP32[$rc>>2]|0; + $218 = ($217|0)==(0); + if ($218) { + $219 = HEAP32[$0>>2]|0; + $220 = HEAP32[$zMaster>>2]|0; + $221 = HEAP8[$220>>0]|0; + $222 = $221 << 24 >> 24; + $223 = ($222|0)!=(0); + $224 = $223&1; + $225 = (_pager_end_transaction($219,$224,0)|0); + HEAP32[$rc>>2] = $225; + } + $226 = HEAP32[$rc>>2]|0; + $227 = ($226|0)==(0); + if ($227) { + $228 = HEAP32[$zMaster>>2]|0; + $229 = HEAP8[$228>>0]|0; + $230 = $229 << 24 >> 24; + $231 = ($230|0)!=(0); + if ($231) { + $232 = HEAP32[$res>>2]|0; + $233 = ($232|0)!=(0); + if ($233) { + $234 = HEAP32[$0>>2]|0; + $235 = HEAP32[$zMaster>>2]|0; + $236 = (_pager_delmaster($234,$235)|0); + HEAP32[$rc>>2] = $236; + } + } + } + $237 = HEAP32[$1>>2]|0; + $238 = ($237|0)!=(0); + if (!($238)) { + $245 = HEAP32[$0>>2]|0; + _setSectorSize($245); + $246 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($246|0); + } + $239 = HEAP32[$nPlayback>>2]|0; + $240 = ($239|0)!=(0); + if (!($240)) { + $245 = HEAP32[$0>>2]|0; + _setSectorSize($245); + $246 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($246|0); + } + $241 = HEAP32[$nPlayback>>2]|0; + $242 = HEAP32[$0>>2]|0; + $243 = (($242) + 172|0); + $244 = HEAP32[$243>>2]|0; + HEAP32[$vararg_buffer>>2] = $241; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $244; + _sqlite3_log(539,10960,$vararg_buffer); + $245 = HEAP32[$0>>2]|0; + _setSectorSize($245); + $246 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($246|0); +} +function _readMasterJournal($pJrnl,$zMaster,$nMaster) { + $pJrnl = $pJrnl|0; + $zMaster = $zMaster|0; + $nMaster = $nMaster|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $aMagic = 0, $cksum = 0, $len = 0, $or$cond = 0, $or$cond3 = 0, $rc = 0; + var $szJ = 0, $u = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 20|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $rc = sp + 24|0; + $len = sp + 16|0; + $szJ = sp; + $cksum = sp + 8|0; + $u = sp + 12|0; + $aMagic = sp + 40|0; + HEAP32[$1>>2] = $pJrnl; + HEAP32[$2>>2] = $zMaster; + HEAP32[$3>>2] = $nMaster; + $4 = HEAP32[$2>>2]|0; + HEAP8[$4>>0] = 0; + $5 = HEAP32[$1>>2]|0; + $6 = (_sqlite3OsFileSize($5,$szJ)|0); + HEAP32[$rc>>2] = $6; + $7 = (0)!=($6|0); + $8 = $szJ; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = (($8) + 4)|0; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)<(0); + $15 = ($13|0)==(0); + $16 = ($10>>>0)<(16); + $17 = $15 & $16; + $18 = $14 | $17; + $or$cond = $7 | $18; + if (!($or$cond)) { + $19 = HEAP32[$1>>2]|0; + $20 = $szJ; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = (($20) + 4)|0; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = (_i64Subtract(($22|0),($25|0),16,0)|0); + $27 = tempRet0; + $28 = (_read32bits($19,$26,$27,$len)|0); + HEAP32[$rc>>2] = $28; + $29 = (0)!=($28|0); + if (!($29)) { + $30 = HEAP32[$len>>2]|0; + $31 = HEAP32[$3>>2]|0; + $32 = ($30>>>0)>=($31>>>0); + $33 = HEAP32[$len>>2]|0; + $34 = ($33|0)==(0); + $or$cond3 = $32 | $34; + if (!($or$cond3)) { + $35 = HEAP32[$1>>2]|0; + $36 = $szJ; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + $39 = (($36) + 4)|0; + $40 = $39; + $41 = HEAP32[$40>>2]|0; + $42 = (_i64Subtract(($38|0),($41|0),12,0)|0); + $43 = tempRet0; + $44 = (_read32bits($35,$42,$43,$cksum)|0); + HEAP32[$rc>>2] = $44; + $45 = (0)!=($44|0); + if (!($45)) { + $46 = HEAP32[$1>>2]|0; + $47 = $szJ; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = (($47) + 4)|0; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (_i64Subtract(($49|0),($52|0),8,0)|0); + $54 = tempRet0; + $55 = (_sqlite3OsRead($46,$aMagic,8,$53,$54)|0); + HEAP32[$rc>>2] = $55; + $56 = (0)!=($55|0); + if (!($56)) { + $57 = (_memcmp($aMagic,10992,8)|0); + $58 = ($57|0)!=(0); + if (!($58)) { + $59 = HEAP32[$1>>2]|0; + $60 = HEAP32[$2>>2]|0; + $61 = HEAP32[$len>>2]|0; + $62 = $szJ; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (($62) + 4)|0; + $66 = $65; + $67 = HEAP32[$66>>2]|0; + $68 = (_i64Subtract(($64|0),($67|0),16,0)|0); + $69 = tempRet0; + $70 = HEAP32[$len>>2]|0; + $71 = (_i64Subtract(($68|0),($69|0),($70|0),0)|0); + $72 = tempRet0; + $73 = (_sqlite3OsRead($59,$60,$61,$71,$72)|0); + HEAP32[$rc>>2] = $73; + $74 = (0)!=($73|0); + if (!($74)) { + HEAP32[$u>>2] = 0; + while(1) { + $76 = HEAP32[$u>>2]|0; + $77 = HEAP32[$len>>2]|0; + $78 = ($76>>>0)<($77>>>0); + if (!($78)) { + break; + } + $79 = HEAP32[$u>>2]|0; + $80 = HEAP32[$2>>2]|0; + $81 = (($80) + ($79)|0); + $82 = HEAP8[$81>>0]|0; + $83 = $82 << 24 >> 24; + $84 = HEAP32[$cksum>>2]|0; + $85 = (($84) - ($83))|0; + HEAP32[$cksum>>2] = $85; + $86 = HEAP32[$u>>2]|0; + $87 = (($86) + 1)|0; + HEAP32[$u>>2] = $87; + } + $88 = HEAP32[$cksum>>2]|0; + $89 = ($88|0)!=(0); + if ($89) { + HEAP32[$len>>2] = 0; + } + $90 = HEAP32[$len>>2]|0; + $91 = HEAP32[$2>>2]|0; + $92 = (($91) + ($90)|0); + HEAP8[$92>>0] = 0; + HEAP32[$0>>2] = 0; + $93 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($93|0); + } + } + } + } + } + } + } + $75 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $75; + $93 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($93|0); +} +function _sqlite3OsAccess($pVfs,$zPath,$flags,$pResOut) { + $pVfs = $pVfs|0; + $zPath = $zPath|0; + $flags = $flags|0; + $pResOut = $pResOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $pVfs; + HEAP32[$1>>2] = $zPath; + HEAP32[$2>>2] = $flags; + HEAP32[$3>>2] = $pResOut; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 32|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$3>>2]|0; + $11 = (FUNCTION_TABLE_iiiii[$6 & 31]($7,$8,$9,$10)|0); + STACKTOP = sp;return ($11|0); +} +function _readJournalHdr($pPager,$isHot,$0,$1,$pNRec,$pDbSize) { + $pPager = $pPager|0; + $isHot = $isHot|0; + $0 = $0|0; + $1 = $1|0; + $pNRec = $pNRec|0; + $pDbSize = $pDbSize|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; + var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; + var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; + var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aMagic = 0, $iHdrOff = 0; + var $iPageSize = 0, $iSectorSize = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $2 = sp + 44|0; + $3 = sp + 40|0; + $4 = sp + 36|0; + $5 = sp + 8|0; + $6 = sp + 32|0; + $7 = sp + 28|0; + $rc = sp + 20|0; + $aMagic = sp + 48|0; + $iHdrOff = sp; + $iPageSize = sp + 16|0; + $iSectorSize = sp + 24|0; + HEAP32[$3>>2] = $pPager; + HEAP32[$4>>2] = $isHot; + $8 = $5; + $9 = $8; + HEAP32[$9>>2] = $0; + $10 = (($8) + 4)|0; + $11 = $10; + HEAP32[$11>>2] = $1; + HEAP32[$6>>2] = $pNRec; + HEAP32[$7>>2] = $pDbSize; + $12 = HEAP32[$3>>2]|0; + $13 = (_journalHdrOffset($12)|0); + $14 = tempRet0; + $15 = HEAP32[$3>>2]|0; + $16 = (($15) + 72|0); + $17 = $16; + $18 = $17; + HEAP32[$18>>2] = $13; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = $14; + $21 = HEAP32[$3>>2]|0; + $22 = (($21) + 72|0); + $23 = $22; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = (($23) + 4)|0; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$3>>2]|0; + $30 = (($29) + 148|0); + $31 = HEAP32[$30>>2]|0; + $32 = (_i64Add(($25|0),($28|0),($31|0),0)|0); + $33 = tempRet0; + $34 = $5; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = ($33|0)>($39|0); + $41 = ($33|0)==($39|0); + $42 = ($32>>>0)>($36>>>0); + $43 = $41 & $42; + $44 = $40 | $43; + if ($44) { + HEAP32[$2>>2] = 101; + $219 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($219|0); + } + $45 = HEAP32[$3>>2]|0; + $46 = (($45) + 72|0); + $47 = $46; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = (($47) + 4)|0; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = $iHdrOff; + $54 = $53; + HEAP32[$54>>2] = $49; + $55 = (($53) + 4)|0; + $56 = $55; + HEAP32[$56>>2] = $52; + $57 = HEAP32[$4>>2]|0; + $58 = ($57|0)!=(0); + if ($58) { + label = 5; + } else { + $59 = $iHdrOff; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = (($59) + 4)|0; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = HEAP32[$3>>2]|0; + $66 = (($65) + 80|0); + $67 = $66; + $68 = $67; + $69 = HEAP32[$68>>2]|0; + $70 = (($67) + 4)|0; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = ($61|0)!=($69|0); + $74 = ($64|0)!=($72|0); + $75 = $73 | $74; + if ($75) { + label = 5; + } + } + if ((label|0) == 5) { + $76 = HEAP32[$3>>2]|0; + $77 = (($76) + 64|0); + $78 = HEAP32[$77>>2]|0; + $79 = $iHdrOff; + $80 = $79; + $81 = HEAP32[$80>>2]|0; + $82 = (($79) + 4)|0; + $83 = $82; + $84 = HEAP32[$83>>2]|0; + $85 = (_sqlite3OsRead($78,$aMagic,8,$81,$84)|0); + HEAP32[$rc>>2] = $85; + $86 = HEAP32[$rc>>2]|0; + $87 = ($86|0)!=(0); + if ($87) { + $88 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $88; + $219 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($219|0); + } + $89 = (_memcmp($aMagic,10992,8)|0); + $90 = ($89|0)!=(0); + if ($90) { + HEAP32[$2>>2] = 101; + $219 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($219|0); + } + } + $91 = HEAP32[$3>>2]|0; + $92 = (($91) + 64|0); + $93 = HEAP32[$92>>2]|0; + $94 = $iHdrOff; + $95 = $94; + $96 = HEAP32[$95>>2]|0; + $97 = (($94) + 4)|0; + $98 = $97; + $99 = HEAP32[$98>>2]|0; + $100 = (_i64Add(($96|0),($99|0),8,0)|0); + $101 = tempRet0; + $102 = HEAP32[$6>>2]|0; + $103 = (_read32bits($93,$100,$101,$102)|0); + HEAP32[$rc>>2] = $103; + $104 = (0)!=($103|0); + if (!($104)) { + $105 = HEAP32[$3>>2]|0; + $106 = (($105) + 64|0); + $107 = HEAP32[$106>>2]|0; + $108 = $iHdrOff; + $109 = $108; + $110 = HEAP32[$109>>2]|0; + $111 = (($108) + 4)|0; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = (_i64Add(($110|0),($113|0),12,0)|0); + $115 = tempRet0; + $116 = HEAP32[$3>>2]|0; + $117 = (($116) + 48|0); + $118 = (_read32bits($107,$114,$115,$117)|0); + HEAP32[$rc>>2] = $118; + $119 = (0)!=($118|0); + if (!($119)) { + $120 = HEAP32[$3>>2]|0; + $121 = (($120) + 64|0); + $122 = HEAP32[$121>>2]|0; + $123 = $iHdrOff; + $124 = $123; + $125 = HEAP32[$124>>2]|0; + $126 = (($123) + 4)|0; + $127 = $126; + $128 = HEAP32[$127>>2]|0; + $129 = (_i64Add(($125|0),($128|0),16,0)|0); + $130 = tempRet0; + $131 = HEAP32[$7>>2]|0; + $132 = (_read32bits($122,$129,$130,$131)|0); + HEAP32[$rc>>2] = $132; + $133 = (0)!=($132|0); + if (!($133)) { + $135 = HEAP32[$3>>2]|0; + $136 = (($135) + 72|0); + $137 = $136; + $138 = $137; + $139 = HEAP32[$138>>2]|0; + $140 = (($137) + 4)|0; + $141 = $140; + $142 = HEAP32[$141>>2]|0; + $143 = ($139|0)==(0); + $144 = ($142|0)==(0); + $145 = $143 & $144; + do { + if ($145) { + $146 = HEAP32[$3>>2]|0; + $147 = (($146) + 64|0); + $148 = HEAP32[$147>>2]|0; + $149 = $iHdrOff; + $150 = $149; + $151 = HEAP32[$150>>2]|0; + $152 = (($149) + 4)|0; + $153 = $152; + $154 = HEAP32[$153>>2]|0; + $155 = (_i64Add(($151|0),($154|0),20,0)|0); + $156 = tempRet0; + $157 = (_read32bits($148,$155,$156,$iSectorSize)|0); + HEAP32[$rc>>2] = $157; + $158 = (0)!=($157|0); + if (!($158)) { + $159 = HEAP32[$3>>2]|0; + $160 = (($159) + 64|0); + $161 = HEAP32[$160>>2]|0; + $162 = $iHdrOff; + $163 = $162; + $164 = HEAP32[$163>>2]|0; + $165 = (($162) + 4)|0; + $166 = $165; + $167 = HEAP32[$166>>2]|0; + $168 = (_i64Add(($164|0),($167|0),24,0)|0); + $169 = tempRet0; + $170 = (_read32bits($161,$168,$169,$iPageSize)|0); + HEAP32[$rc>>2] = $170; + $171 = (0)!=($170|0); + if (!($171)) { + $173 = HEAP32[$iPageSize>>2]|0; + $174 = ($173|0)==(0); + if ($174) { + $175 = HEAP32[$3>>2]|0; + $176 = (($175) + 152|0); + $177 = HEAP32[$176>>2]|0; + HEAP32[$iPageSize>>2] = $177; + } + $178 = HEAP32[$iPageSize>>2]|0; + $179 = ($178>>>0)<(512); + if (!($179)) { + $180 = HEAP32[$iSectorSize>>2]|0; + $181 = ($180>>>0)<(32); + if (!($181)) { + $182 = HEAP32[$iPageSize>>2]|0; + $183 = ($182>>>0)>(65536); + if (!($183)) { + $184 = HEAP32[$iSectorSize>>2]|0; + $185 = ($184>>>0)>(65536); + if (!($185)) { + $186 = HEAP32[$iPageSize>>2]|0; + $187 = (($186) - 1)|0; + $188 = HEAP32[$iPageSize>>2]|0; + $189 = $187 & $188; + $190 = ($189|0)!=(0); + if (!($190)) { + $191 = HEAP32[$iSectorSize>>2]|0; + $192 = (($191) - 1)|0; + $193 = HEAP32[$iSectorSize>>2]|0; + $194 = $192 & $193; + $195 = ($194|0)!=(0); + if (!($195)) { + $196 = HEAP32[$3>>2]|0; + $197 = (_sqlite3PagerSetPagesize($196,$iPageSize,-1)|0); + HEAP32[$rc>>2] = $197; + $198 = HEAP32[$iSectorSize>>2]|0; + $199 = HEAP32[$3>>2]|0; + $200 = (($199) + 148|0); + HEAP32[$200>>2] = $198; + break; + } + } + } + } + } + } + HEAP32[$2>>2] = 101; + $219 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($219|0); + } + } + $172 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $172; + $219 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($219|0); + } + } while(0); + $201 = HEAP32[$3>>2]|0; + $202 = (($201) + 148|0); + $203 = HEAP32[$202>>2]|0; + $204 = HEAP32[$3>>2]|0; + $205 = (($204) + 72|0); + $206 = $205; + $207 = $206; + $208 = HEAP32[$207>>2]|0; + $209 = (($206) + 4)|0; + $210 = $209; + $211 = HEAP32[$210>>2]|0; + $212 = (_i64Add(($208|0),($211|0),($203|0),0)|0); + $213 = tempRet0; + $214 = $205; + $215 = $214; + HEAP32[$215>>2] = $212; + $216 = (($214) + 4)|0; + $217 = $216; + HEAP32[$217>>2] = $213; + $218 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $218; + $219 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($219|0); + } + } + } + $134 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $134; + $219 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($219|0); +} +function _pager_playback_one_page($pPager,$pOffset,$pDone,$isMainJrnl,$isSavepnt) { + $pPager = $pPager|0; + $pOffset = $pOffset|0; + $pDone = $pDone|0; + $isMainJrnl = $isMainJrnl|0; + $isSavepnt = $isSavepnt|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aData = 0; + var $cksum = 0, $isSynced = 0, $jfd = 0, $ofst = 0, $pData = 0, $pPg = 0, $pgno = 0, $rc = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 60|0; + $1 = sp + 56|0; + $2 = sp + 52|0; + $3 = sp + 48|0; + $4 = sp + 44|0; + $5 = sp + 40|0; + $rc = sp + 36|0; + $pPg = sp + 32|0; + $pgno = sp + 24|0; + $cksum = sp + 20|0; + $aData = sp + 16|0; + $jfd = sp + 12|0; + $isSynced = sp + 8|0; + $ofst = sp; + $pData = sp + 28|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$2>>2] = $pOffset; + HEAP32[$3>>2] = $pDone; + HEAP32[$4>>2] = $isMainJrnl; + HEAP32[$5>>2] = $isSavepnt; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 200|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$aData>>2] = $8; + $9 = HEAP32[$4>>2]|0; + $10 = ($9|0)!=(0); + $11 = HEAP32[$1>>2]|0; + if ($10) { + $12 = (($11) + 64|0); + $13 = HEAP32[$12>>2]|0; + $16 = $13; + } else { + $14 = (($11) + 68|0); + $15 = HEAP32[$14>>2]|0; + $16 = $15; + } + HEAP32[$jfd>>2] = $16; + $17 = HEAP32[$jfd>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = $18; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (($19) + 4)|0; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (_read32bits($17,$21,$24,$pgno)|0); + HEAP32[$rc>>2] = $25; + $26 = HEAP32[$rc>>2]|0; + $27 = ($26|0)!=(0); + if ($27) { + $28 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $28; + $318 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($318|0); + } + $29 = HEAP32[$jfd>>2]|0; + $30 = HEAP32[$aData>>2]|0; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 152|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = $34; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = (($35) + 4)|0; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = (_i64Add(($37|0),($40|0),4,0)|0); + $42 = tempRet0; + $43 = (_sqlite3OsRead($29,$30,$33,$41,$42)|0); + HEAP32[$rc>>2] = $43; + $44 = HEAP32[$rc>>2]|0; + $45 = ($44|0)!=(0); + if ($45) { + $46 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $46; + $318 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($318|0); + } + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 152|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) + 4)|0; + $51 = HEAP32[$4>>2]|0; + $52 = $51<<2; + $53 = (($50) + ($52))|0; + $54 = ($53|0)<(0); + $55 = $54 << 31 >> 31; + $56 = HEAP32[$2>>2]|0; + $57 = $56; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = (($57) + 4)|0; + $61 = $60; + $62 = HEAP32[$61>>2]|0; + $63 = (_i64Add(($59|0),($62|0),($53|0),($55|0))|0); + $64 = tempRet0; + $65 = $56; + $66 = $65; + HEAP32[$66>>2] = $63; + $67 = (($65) + 4)|0; + $68 = $67; + HEAP32[$68>>2] = $64; + $69 = HEAP32[$pgno>>2]|0; + $70 = ($69|0)==(0); + if (!($70)) { + $71 = HEAP32[$pgno>>2]|0; + $72 = HEAP32[1472>>2]|0; + $73 = HEAP32[$1>>2]|0; + $74 = (($73) + 152|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($72|0) / ($75|0))&-1; + $77 = (($76) + 1)|0; + $78 = ($71|0)==($77|0); + if (!($78)) { + $79 = HEAP32[$pgno>>2]|0; + $80 = HEAP32[$1>>2]|0; + $81 = (($80) + 24|0); + $82 = HEAP32[$81>>2]|0; + $83 = ($79>>>0)>($82>>>0); + if (!($83)) { + $84 = HEAP32[$3>>2]|0; + $85 = HEAP32[$pgno>>2]|0; + $86 = (_sqlite3BitvecTest($84,$85)|0); + $87 = ($86|0)!=(0); + if (!($87)) { + $88 = HEAP32[$4>>2]|0; + $89 = ($88|0)!=(0); + if ($89) { + $90 = HEAP32[$jfd>>2]|0; + $91 = HEAP32[$2>>2]|0; + $92 = $91; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = (($92) + 4)|0; + $96 = $95; + $97 = HEAP32[$96>>2]|0; + $98 = (_i64Subtract(($94|0),($97|0),4,0)|0); + $99 = tempRet0; + $100 = (_read32bits($90,$98,$99,$cksum)|0); + HEAP32[$rc>>2] = $100; + $101 = HEAP32[$rc>>2]|0; + $102 = ($101|0)!=(0); + if ($102) { + $103 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $103; + $318 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($318|0); + } + $104 = HEAP32[$5>>2]|0; + $105 = ($104|0)!=(0); + if (!($105)) { + $106 = HEAP32[$1>>2]|0; + $107 = HEAP32[$aData>>2]|0; + $108 = (_pager_cksum($106,$107)|0); + $109 = HEAP32[$cksum>>2]|0; + $110 = ($108|0)!=($109|0); + if ($110) { + HEAP32[$0>>2] = 101; + $318 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($318|0); + } + } + } + $111 = HEAP32[$3>>2]|0; + $112 = ($111|0)!=(0|0); + if ($112) { + $113 = HEAP32[$3>>2]|0; + $114 = HEAP32[$pgno>>2]|0; + $115 = (_sqlite3BitvecSet($113,$114)|0); + HEAP32[$rc>>2] = $115; + $116 = ($115|0)!=(0); + if ($116) { + $117 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $117; + $318 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($318|0); + } + } + $118 = HEAP32[$pgno>>2]|0; + $119 = ($118|0)==(1); + if ($119) { + $120 = HEAP32[$1>>2]|0; + $121 = (($120) + 142|0); + $122 = HEAP16[$121>>1]|0; + $123 = $122 << 16 >> 16; + $124 = HEAP32[$aData>>2]|0; + $125 = (($124) + 20|0); + $126 = HEAP8[$125>>0]|0; + $127 = $126&255; + $128 = ($123|0)!=($127|0); + if ($128) { + $129 = HEAP32[$aData>>2]|0; + $130 = (($129) + 20|0); + $131 = HEAP8[$130>>0]|0; + $132 = $131&255; + $133 = HEAP32[$1>>2]|0; + $134 = (($133) + 142|0); + HEAP16[$134>>1] = $132; + } + } + $135 = HEAP32[$1>>2]|0; + $136 = (_pagerUseWal($135)|0); + $137 = ($136|0)!=(0); + if ($137) { + HEAP32[$pPg>>2] = 0; + } else { + $138 = HEAP32[$1>>2]|0; + $139 = HEAP32[$pgno>>2]|0; + $140 = (_pager_lookup($138,$139)|0); + HEAP32[$pPg>>2] = $140; + } + $141 = HEAP32[$4>>2]|0; + $142 = ($141|0)!=(0); + if ($142) { + $143 = HEAP32[$1>>2]|0; + $144 = (($143) + 7|0); + $145 = HEAP8[$144>>0]|0; + $146 = $145&255; + $147 = ($146|0)!=(0); + if ($147) { + $169 = 1; + } else { + $148 = HEAP32[$2>>2]|0; + $149 = $148; + $150 = $149; + $151 = HEAP32[$150>>2]|0; + $152 = (($149) + 4)|0; + $153 = $152; + $154 = HEAP32[$153>>2]|0; + $155 = HEAP32[$1>>2]|0; + $156 = (($155) + 80|0); + $157 = $156; + $158 = $157; + $159 = HEAP32[$158>>2]|0; + $160 = (($157) + 4)|0; + $161 = $160; + $162 = HEAP32[$161>>2]|0; + $163 = ($154|0)<($162|0); + $164 = ($154|0)==($162|0); + $165 = ($151>>>0)<=($159>>>0); + $166 = $164 & $165; + $167 = $163 | $166; + $169 = $167; + } + $168 = $169&1; + HEAP32[$isSynced>>2] = $168; + } else { + $170 = HEAP32[$pPg>>2]|0; + $171 = ($170|0)==(0|0); + if ($171) { + $179 = 1; + } else { + $172 = HEAP32[$pPg>>2]|0; + $173 = (($172) + 24|0); + $174 = HEAP16[$173>>1]|0; + $175 = $174&65535; + $176 = $175 & 4; + $177 = (0)==($176|0); + $179 = $177; + } + $178 = $179&1; + HEAP32[$isSynced>>2] = $178; + } + $180 = HEAP32[$1>>2]|0; + $181 = (($180) + 60|0); + $182 = HEAP32[$181>>2]|0; + $183 = HEAP32[$182>>2]|0; + $184 = ($183|0)!=(0|0); + do { + if ($184) { + $185 = HEAP32[$1>>2]|0; + $186 = (($185) + 16|0); + $187 = HEAP8[$186>>0]|0; + $188 = $187&255; + $189 = ($188|0)>=(4); + if (!($189)) { + $190 = HEAP32[$1>>2]|0; + $191 = (($190) + 16|0); + $192 = HEAP8[$191>>0]|0; + $193 = $192&255; + $194 = ($193|0)==(0); + if (!($194)) { + label = 44; + break; + } + } + $195 = HEAP32[$isSynced>>2]|0; + $196 = ($195|0)!=(0); + if ($196) { + $197 = HEAP32[$pgno>>2]|0; + $198 = (($197) - 1)|0; + $199 = HEAP32[$1>>2]|0; + $200 = (($199) + 152|0); + $201 = HEAP32[$200>>2]|0; + $202 = ($201|0)<(0); + $203 = $202 << 31 >> 31; + $204 = (___muldi3(($198|0),0,($201|0),($203|0))|0); + $205 = tempRet0; + $206 = $ofst; + $207 = $206; + HEAP32[$207>>2] = $204; + $208 = (($206) + 4)|0; + $209 = $208; + HEAP32[$209>>2] = $205; + $210 = HEAP32[$1>>2]|0; + $211 = (($210) + 60|0); + $212 = HEAP32[$211>>2]|0; + $213 = HEAP32[$aData>>2]|0; + $214 = HEAP32[$1>>2]|0; + $215 = (($214) + 152|0); + $216 = HEAP32[$215>>2]|0; + $217 = $ofst; + $218 = $217; + $219 = HEAP32[$218>>2]|0; + $220 = (($217) + 4)|0; + $221 = $220; + $222 = HEAP32[$221>>2]|0; + $223 = (_sqlite3OsWrite($212,$213,$216,$219,$222)|0); + HEAP32[$rc>>2] = $223; + $224 = HEAP32[$pgno>>2]|0; + $225 = HEAP32[$1>>2]|0; + $226 = (($225) + 32|0); + $227 = HEAP32[$226>>2]|0; + $228 = ($224>>>0)>($227>>>0); + if ($228) { + $229 = HEAP32[$pgno>>2]|0; + $230 = HEAP32[$1>>2]|0; + $231 = (($230) + 32|0); + HEAP32[$231>>2] = $229; + } + $232 = HEAP32[$1>>2]|0; + $233 = (($232) + 88|0); + $234 = HEAP32[$233>>2]|0; + $235 = ($234|0)!=(0|0); + if ($235) { + $236 = HEAP32[$1>>2]|0; + $237 = (($236) + 88|0); + $238 = HEAP32[$237>>2]|0; + $239 = HEAP32[$pgno>>2]|0; + $240 = HEAP32[$aData>>2]|0; + _sqlite3BackupUpdate($238,$239,$240); + $241 = HEAP32[$aData>>2]|0; + HEAP32[$aData>>2] = $241; + } + } else { + label = 44; + } + } else { + label = 44; + } + } while(0); + do { + if ((label|0) == 44) { + $242 = HEAP32[$4>>2]|0; + $243 = ($242|0)!=(0); + if (!($243)) { + $244 = HEAP32[$pPg>>2]|0; + $245 = ($244|0)==(0|0); + if ($245) { + $246 = HEAP32[$1>>2]|0; + $247 = (($246) + 20|0); + $248 = HEAP8[$247>>0]|0; + $249 = $248&255; + $250 = $249 | 2; + $251 = $250&255; + HEAP8[$247>>0] = $251; + $252 = HEAP32[$1>>2]|0; + $253 = HEAP32[$pgno>>2]|0; + $254 = (_sqlite3PagerAcquire($252,$253,$pPg,1)|0); + HEAP32[$rc>>2] = $254; + $255 = HEAP32[$1>>2]|0; + $256 = (($255) + 20|0); + $257 = HEAP8[$256>>0]|0; + $258 = $257&255; + $259 = $258 & -3; + $260 = $259&255; + HEAP8[$256>>0] = $260; + $261 = HEAP32[$rc>>2]|0; + $262 = ($261|0)!=(0); + if (!($262)) { + $264 = HEAP32[$pPg>>2]|0; + $265 = (($264) + 24|0); + $266 = HEAP16[$265>>1]|0; + $267 = $266&65535; + $268 = $267 & -9; + $269 = $268&65535; + HEAP16[$265>>1] = $269; + $270 = HEAP32[$pPg>>2]|0; + _sqlite3PcacheMakeDirty($270); + break; + } + $263 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $263; + $318 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($318|0); + } + } + } + } while(0); + $271 = HEAP32[$pPg>>2]|0; + $272 = ($271|0)!=(0|0); + if ($272) { + $273 = HEAP32[$pPg>>2]|0; + $274 = (($273) + 4|0); + $275 = HEAP32[$274>>2]|0; + HEAP32[$pData>>2] = $275; + $276 = HEAP32[$pData>>2]|0; + $277 = HEAP32[$aData>>2]|0; + $278 = HEAP32[$1>>2]|0; + $279 = (($278) + 152|0); + $280 = HEAP32[$279>>2]|0; + _memcpy(($276|0),($277|0),($280|0))|0; + $281 = HEAP32[$1>>2]|0; + $282 = (($281) + 196|0); + $283 = HEAP32[$282>>2]|0; + $284 = HEAP32[$pPg>>2]|0; + FUNCTION_TABLE_vi[$283 & 31]($284); + $285 = HEAP32[$4>>2]|0; + $286 = ($285|0)!=(0); + do { + if ($286) { + $287 = HEAP32[$5>>2]|0; + $288 = ($287|0)!=(0); + if ($288) { + $289 = HEAP32[$2>>2]|0; + $290 = $289; + $291 = $290; + $292 = HEAP32[$291>>2]|0; + $293 = (($290) + 4)|0; + $294 = $293; + $295 = HEAP32[$294>>2]|0; + $296 = HEAP32[$1>>2]|0; + $297 = (($296) + 80|0); + $298 = $297; + $299 = $298; + $300 = HEAP32[$299>>2]|0; + $301 = (($298) + 4)|0; + $302 = $301; + $303 = HEAP32[$302>>2]|0; + $304 = ($295|0)<($303|0); + $305 = ($295|0)==($303|0); + $306 = ($292>>>0)<=($300>>>0); + $307 = $305 & $306; + $308 = $304 | $307; + if (!($308)) { + break; + } + } + $309 = HEAP32[$pPg>>2]|0; + _sqlite3PcacheMakeClean($309); + } + } while(0); + $310 = HEAP32[$pgno>>2]|0; + $311 = ($310|0)==(1); + if ($311) { + $312 = HEAP32[$1>>2]|0; + $313 = (($312) + 100|0); + $314 = HEAP32[$pData>>2]|0; + $315 = (($314) + 24|0); + dest=$313+0|0; src=$315+0|0; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + } + $316 = HEAP32[$pPg>>2]|0; + _sqlite3PcacheRelease($316); + } + $317 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $317; + $318 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($318|0); + } + } + HEAP32[$0>>2] = 0; + $318 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($318|0); + } + } + HEAP32[$0>>2] = 101; + $318 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($318|0); +} +function _pager_delmaster($pPager,$zMaster) { + $pPager = $pPager|0; + $zMaster = $zMaster|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $exists = 0; + var $flags = 0, $flags1 = 0, $nMasterJournal = 0, $nMasterPtr = 0, $pJournal = 0, $pMaster = 0, $pVfs = 0, $rc = 0, $zJournal = 0, $zMasterJournal = 0, $zMasterPtr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 60|0; + $1 = sp + 56|0; + $pVfs = sp + 52|0; + $rc = sp + 48|0; + $pMaster = sp + 44|0; + $pJournal = sp + 40|0; + $zMasterJournal = sp + 36|0; + $nMasterJournal = sp; + $zJournal = sp + 24|0; + $zMasterPtr = sp + 20|0; + $nMasterPtr = sp + 16|0; + $flags = sp + 12|0; + $exists = sp + 8|0; + $c = sp + 28|0; + $flags1 = sp + 32|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $zMaster; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$pVfs>>2] = $3; + HEAP32[$zMasterJournal>>2] = 0; + $4 = HEAP32[$pVfs>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + $7 = $6<<1; + $8 = (_sqlite3MallocZero($7)|0); + HEAP32[$pMaster>>2] = $8; + $9 = HEAP32[$pMaster>>2]|0; + $10 = HEAP32[$pVfs>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($9) + ($12)|0); + HEAP32[$pJournal>>2] = $13; + $14 = HEAP32[$pMaster>>2]|0; + $15 = ($14|0)!=(0|0); + if ($15) { + HEAP32[$flags>>2] = 16385; + $16 = HEAP32[$pVfs>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$pMaster>>2]|0; + $19 = (_sqlite3OsOpen($16,$17,$18,16385,0)|0); + HEAP32[$rc>>2] = $19; + } else { + HEAP32[$rc>>2] = 7; + } + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)!=(0); + L5: do { + if (!($21)) { + $22 = HEAP32[$pMaster>>2]|0; + $23 = (_sqlite3OsFileSize($22,$nMasterJournal)|0); + HEAP32[$rc>>2] = $23; + $24 = HEAP32[$rc>>2]|0; + $25 = ($24|0)!=(0); + if (!($25)) { + $26 = HEAP32[$pVfs>>2]|0; + $27 = (($26) + 8|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + 1)|0; + HEAP32[$nMasterPtr>>2] = $29; + $30 = $nMasterJournal; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$nMasterPtr>>2]|0; + $37 = (($32) + ($36))|0; + $38 = (($37) + 1)|0; + $39 = (_sqlite3Malloc($38)|0); + HEAP32[$zMasterJournal>>2] = $39; + $40 = HEAP32[$zMasterJournal>>2]|0; + $41 = ($40|0)!=(0|0); + if (!($41)) { + HEAP32[$rc>>2] = 7; + break; + } + $42 = $nMasterJournal; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (_i64Add(($44|0),($47|0),1,0)|0); + $49 = tempRet0; + $50 = HEAP32[$zMasterJournal>>2]|0; + $51 = (($50) + ($48)|0); + HEAP32[$zMasterPtr>>2] = $51; + $52 = HEAP32[$pMaster>>2]|0; + $53 = HEAP32[$zMasterJournal>>2]|0; + $54 = $nMasterJournal; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = (($54) + 4)|0; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = (_sqlite3OsRead($52,$53,$56,0,0)|0); + HEAP32[$rc>>2] = $60; + $61 = HEAP32[$rc>>2]|0; + $62 = ($61|0)!=(0); + if (!($62)) { + $63 = $nMasterJournal; + $64 = $63; + $65 = HEAP32[$64>>2]|0; + $66 = (($63) + 4)|0; + $67 = $66; + $68 = HEAP32[$67>>2]|0; + $69 = HEAP32[$zMasterJournal>>2]|0; + $70 = (($69) + ($65)|0); + HEAP8[$70>>0] = 0; + $71 = HEAP32[$zMasterJournal>>2]|0; + HEAP32[$zJournal>>2] = $71; + while(1) { + $72 = HEAP32[$zJournal>>2]|0; + $73 = HEAP32[$zMasterJournal>>2]|0; + $74 = $72; + $75 = $73; + $76 = (($74) - ($75))|0; + $77 = ($76|0)<(0); + $78 = $77 << 31 >> 31; + $79 = $nMasterJournal; + $80 = $79; + $81 = HEAP32[$80>>2]|0; + $82 = (($79) + 4)|0; + $83 = $82; + $84 = HEAP32[$83>>2]|0; + $85 = ($78|0)<($84|0); + $86 = ($78|0)==($84|0); + $87 = ($76>>>0)<($81>>>0); + $88 = $86 & $87; + $89 = $85 | $88; + if (!($89)) { + break; + } + $90 = HEAP32[$pVfs>>2]|0; + $91 = HEAP32[$zJournal>>2]|0; + $92 = (_sqlite3OsAccess($90,$91,0,$exists)|0); + HEAP32[$rc>>2] = $92; + $93 = HEAP32[$rc>>2]|0; + $94 = ($93|0)!=(0); + if ($94) { + break L5; + } + $95 = HEAP32[$exists>>2]|0; + $96 = ($95|0)!=(0); + if ($96) { + HEAP32[$flags1>>2] = 2049; + $97 = HEAP32[$pVfs>>2]|0; + $98 = HEAP32[$zJournal>>2]|0; + $99 = HEAP32[$pJournal>>2]|0; + $100 = HEAP32[$flags1>>2]|0; + $101 = (_sqlite3OsOpen($97,$98,$99,$100,0)|0); + HEAP32[$rc>>2] = $101; + $102 = HEAP32[$rc>>2]|0; + $103 = ($102|0)!=(0); + if ($103) { + break L5; + } + $104 = HEAP32[$pJournal>>2]|0; + $105 = HEAP32[$zMasterPtr>>2]|0; + $106 = HEAP32[$nMasterPtr>>2]|0; + $107 = (_readMasterJournal($104,$105,$106)|0); + HEAP32[$rc>>2] = $107; + $108 = HEAP32[$pJournal>>2]|0; + (_sqlite3OsClose($108)|0); + $109 = HEAP32[$rc>>2]|0; + $110 = ($109|0)!=(0); + if ($110) { + break L5; + } + $111 = HEAP32[$zMasterPtr>>2]|0; + $112 = HEAP8[$111>>0]|0; + $113 = $112 << 24 >> 24; + $114 = ($113|0)!=(0); + if ($114) { + $115 = HEAP32[$zMasterPtr>>2]|0; + $116 = HEAP32[$1>>2]|0; + $117 = (_strcmp($115,$116)|0); + $118 = ($117|0)==(0); + $120 = $118; + } else { + $120 = 0; + } + $119 = $120&1; + HEAP32[$c>>2] = $119; + $121 = HEAP32[$c>>2]|0; + $122 = ($121|0)!=(0); + if ($122) { + break L5; + } + } + $123 = HEAP32[$zJournal>>2]|0; + $124 = (_sqlite3Strlen30($123)|0); + $125 = (($124) + 1)|0; + $126 = HEAP32[$zJournal>>2]|0; + $127 = (($126) + ($125)|0); + HEAP32[$zJournal>>2] = $127; + } + $128 = HEAP32[$pMaster>>2]|0; + (_sqlite3OsClose($128)|0); + $129 = HEAP32[$pVfs>>2]|0; + $130 = HEAP32[$1>>2]|0; + $131 = (_sqlite3OsDelete($129,$130,0)|0); + HEAP32[$rc>>2] = $131; + } + } + } + } while(0); + $132 = HEAP32[$zMasterJournal>>2]|0; + _sqlite3_free($132); + $133 = HEAP32[$pMaster>>2]|0; + $134 = ($133|0)!=(0|0); + if (!($134)) { + $137 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($137|0); + } + $135 = HEAP32[$pMaster>>2]|0; + (_sqlite3OsClose($135)|0); + $136 = HEAP32[$pMaster>>2]|0; + _sqlite3_free($136); + $137 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($137|0); +} +function _setSectorSize($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 12|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = ($4|0)!=(0); + if (!($5)) { + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 60|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3OsDeviceCharacteristics($8)|0); + $10 = $9 & 4096; + $11 = ($10|0)!=(0); + if (!($11)) { + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 60|0); + $16 = HEAP32[$15>>2]|0; + $17 = (_sqlite3SectorSize($16)|0); + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 148|0); + HEAP32[$19>>2] = $17; + STACKTOP = sp;return; + } + } + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 148|0); + HEAP32[$13>>2] = 512; + STACKTOP = sp;return; +} +function _sqlite3OsDeviceCharacteristics($id) { + $id = $id|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $id; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 48|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = (FUNCTION_TABLE_ii[$4 & 63]($5)|0); + STACKTOP = sp;return ($6|0); +} +function _sqlite3SectorSize($pFile) { + $pFile = $pFile|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $iRet = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $iRet = sp; + HEAP32[$0>>2] = $pFile; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3OsSectorSize($1)|0); + HEAP32[$iRet>>2] = $2; + $3 = HEAP32[$iRet>>2]|0; + $4 = ($3|0)<(32); + if ($4) { + HEAP32[$iRet>>2] = 512; + } else { + $5 = HEAP32[$iRet>>2]|0; + $6 = ($5|0)>(65536); + if ($6) { + HEAP32[$iRet>>2] = 65536; + } + } + $7 = HEAP32[$iRet>>2]|0; + STACKTOP = sp;return ($7|0); +} +function _sqlite3OsSectorSize($id) { + $id = $id|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $xSectorSize = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $xSectorSize = sp; + HEAP32[$0>>2] = $id; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 44|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$xSectorSize>>2] = $4; + $5 = HEAP32[$xSectorSize>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $10 = 4096; + STACKTOP = sp;return ($10|0); + } + $7 = HEAP32[$xSectorSize>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (FUNCTION_TABLE_ii[$7 & 63]($8)|0); + $10 = $9; + STACKTOP = sp;return ($10|0); +} +function _sqlite3OsOpen($pVfs,$zPath,$pFile,$flags,$pFlagsOut) { + $pVfs = $pVfs|0; + $zPath = $zPath|0; + $pFile = $pFile|0; + $flags = $flags|0; + $pFlagsOut = $pFlagsOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $rc = sp + 16|0; + HEAP32[$0>>2] = $pVfs; + HEAP32[$1>>2] = $zPath; + HEAP32[$2>>2] = $pFile; + HEAP32[$3>>2] = $flags; + HEAP32[$4>>2] = $pFlagsOut; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 24|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$3>>2]|0; + $12 = $11 & 556927; + $13 = HEAP32[$4>>2]|0; + $14 = (FUNCTION_TABLE_iiiiii[$7 & 15]($8,$9,$10,$12,$13)|0); + HEAP32[$rc>>2] = $14; + $15 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($15|0); +} +function _sqlite3OsRead($id,$pBuf,$amt,$0,$1) { + $id = $id|0; + $pBuf = $pBuf|0; + $amt = $amt|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 16|0; + $3 = sp + 12|0; + $4 = sp + 8|0; + $5 = sp; + HEAP32[$2>>2] = $id; + HEAP32[$3>>2] = $pBuf; + HEAP32[$4>>2] = $amt; + $6 = $5; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + 8|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$3>>2]|0; + $16 = HEAP32[$4>>2]|0; + $17 = $5; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (($17) + 4)|0; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = (FUNCTION_TABLE_iiiiii[$13 & 15]($14,$15,$16,$19,$22)|0); + STACKTOP = sp;return ($23|0); +} +function _read32bits($fd,$0,$1,$pRes) { + $fd = $fd|0; + $0 = $0|0; + $1 = $1|0; + $pRes = $pRes|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $ac = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 16|0; + $3 = sp; + $4 = sp + 8|0; + $ac = sp + 20|0; + $rc = sp + 12|0; + HEAP32[$2>>2] = $fd; + $5 = $3; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + HEAP32[$4>>2] = $pRes; + $9 = HEAP32[$2>>2]|0; + $10 = $3; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (($10) + 4)|0; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (_sqlite3OsRead($9,$ac,4,$12,$15)|0); + HEAP32[$rc>>2] = $16; + $17 = HEAP32[$rc>>2]|0; + $18 = ($17|0)==(0); + if (!($18)) { + $21 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($21|0); + } + $19 = (_sqlite3Get4byte($ac)|0); + $20 = HEAP32[$4>>2]|0; + HEAP32[$20>>2] = $19; + $21 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($21|0); +} +function _pager_cksum($pPager,$aData) { + $pPager = $pPager|0; + $aData = $aData|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $cksum = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $cksum = sp + 4|0; + $i = sp + 8|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $aData; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 48|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$cksum>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 152|0); + $7 = HEAP32[$6>>2]|0; + $8 = (($7) - 200)|0; + HEAP32[$i>>2] = $8; + while(1) { + $9 = HEAP32[$i>>2]|0; + $10 = ($9|0)>(0); + if (!($10)) { + break; + } + $11 = HEAP32[$i>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + ($11)|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = HEAP32[$cksum>>2]|0; + $17 = (($16) + ($15))|0; + HEAP32[$cksum>>2] = $17; + $18 = HEAP32[$i>>2]|0; + $19 = (($18) - 200)|0; + HEAP32[$i>>2] = $19; + } + $20 = HEAP32[$cksum>>2]|0; + STACKTOP = sp;return ($20|0); +} +function _pager_lookup($pPager,$pgno) { + $pPager = $pPager|0; + $pgno = $pgno|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $p = sp + 4|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $pgno; + HEAP32[$p>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 204|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$1>>2]|0; + (_sqlite3PcacheFetch($4,$5,0,$p)|0); + $6 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($6|0); +} +function _sqlite3BackupUpdate($pBackup,$iPage,$aData) { + $pBackup = $pBackup|0; + $iPage = $iPage|0; + $aData = $aData|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + $rc = sp + 12|0; + HEAP32[$0>>2] = $pBackup; + HEAP32[$1>>2] = $iPage; + HEAP32[$2>>2] = $aData; + $3 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $3; + while(1) { + $4 = HEAP32[$p>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + break; + } + $6 = HEAP32[$p>>2]|0; + $7 = (($6) + 28|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_isFatalError($8)|0); + $10 = ($9|0)!=(0); + if (!($10)) { + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$p>>2]|0; + $13 = (($12) + 16|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($11>>>0)<($14>>>0); + if ($15) { + $16 = HEAP32[$p>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = (_backupOnePage($16,$17,$18,1)|0); + HEAP32[$rc>>2] = $19; + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)!=(0); + if ($21) { + $22 = HEAP32[$rc>>2]|0; + $23 = HEAP32[$p>>2]|0; + $24 = (($23) + 28|0); + HEAP32[$24>>2] = $22; + } + } + } + $25 = HEAP32[$p>>2]|0; + $26 = (($25) + 44|0); + $27 = HEAP32[$26>>2]|0; + HEAP32[$p>>2] = $27; + } + STACKTOP = sp;return; +} +function _sqlite3PcacheMakeDirty($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 24|0); + $3 = HEAP16[$2>>1]|0; + $4 = $3&65535; + $5 = $4 & -33; + $6 = $5&65535; + HEAP16[$2>>1] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 24|0); + $9 = HEAP16[$8>>1]|0; + $10 = $9&65535; + $11 = $10 & 2; + $12 = (0)==($11|0); + if (!($12)) { + STACKTOP = sp;return; + } + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 24|0); + $15 = HEAP16[$14>>1]|0; + $16 = $15&65535; + $17 = $16 | 2; + $18 = $17&65535; + HEAP16[$14>>1] = $18; + $19 = HEAP32[$0>>2]|0; + _pcacheAddToDirtyList($19); + STACKTOP = sp;return; +} +function _sqlite3PcacheRelease($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pCache = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 26|0); + $3 = HEAP16[$2>>1]|0; + $4 = (($3) + -1)<<16>>16; + HEAP16[$2>>1] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 26|0); + $7 = HEAP16[$6>>1]|0; + $8 = $7 << 16 >> 16; + $9 = ($8|0)==(0); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 28|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$pCache>>2] = $12; + $13 = HEAP32[$pCache>>2]|0; + $14 = (($13) + 12|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + -1)|0; + HEAP32[$14>>2] = $16; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 24|0); + $19 = HEAP16[$18>>1]|0; + $20 = $19&65535; + $21 = $20 & 2; + $22 = ($21|0)==(0); + $23 = HEAP32[$0>>2]|0; + if ($22) { + _pcacheUnpin($23); + STACKTOP = sp;return; + } else { + _pcacheRemoveFromDirtyList($23); + $24 = HEAP32[$0>>2]|0; + _pcacheAddToDirtyList($24); + STACKTOP = sp;return; + } +} +function _pcacheAddToDirtyList($pPage) { + $pPage = $pPage|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pPage; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 28|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $3; + $4 = HEAP32[$p>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 32|0); + HEAP32[$7>>2] = $5; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 32|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 32|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + 36|0); + HEAP32[$16>>2] = $12; + } else { + $17 = HEAP32[$p>>2]|0; + $18 = (($17) + 28|0); + $19 = HEAP8[$18>>0]|0; + $20 = ($19<<24>>24)!=(0); + if ($20) { + $21 = HEAP32[$p>>2]|0; + $22 = (($21) + 29|0); + HEAP8[$22>>0] = 1; + } + } + $23 = HEAP32[$0>>2]|0; + $24 = HEAP32[$p>>2]|0; + HEAP32[$24>>2] = $23; + $25 = HEAP32[$p>>2]|0; + $26 = (($25) + 4|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)!=(0|0); + if (!($28)) { + $29 = HEAP32[$0>>2]|0; + $30 = HEAP32[$p>>2]|0; + $31 = (($30) + 4|0); + HEAP32[$31>>2] = $29; + } + $32 = HEAP32[$p>>2]|0; + $33 = (($32) + 8|0); + $34 = HEAP32[$33>>2]|0; + $35 = ($34|0)!=(0|0); + if ($35) { + STACKTOP = sp;return; + } + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + 24|0); + $38 = HEAP16[$37>>1]|0; + $39 = $38&65535; + $40 = $39 & 4; + $41 = (0)==($40|0); + if (!($41)) { + STACKTOP = sp;return; + } + $42 = HEAP32[$0>>2]|0; + $43 = HEAP32[$p>>2]|0; + $44 = (($43) + 8|0); + HEAP32[$44>>2] = $42; + STACKTOP = sp;return; +} +function _sqlite3PcacheFetch($pCache,$pgno,$createFlag,$ppPage) { + $pCache = $pCache|0; + $pgno = $pgno|0; + $createFlag = $createFlag|0; + $ppPage = $ppPage|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $17 = 0, $18 = 0, $19 = 0; + var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $eCreate = 0, $or$cond = 0, $p = 0, $pPage = 0, $pPg = 0, $pPgHdr = 0, $rc = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $pPage = sp + 20|0; + $pPgHdr = sp + 12|0; + $eCreate = sp + 8|0; + $p = sp + 4|0; + $pPg = sp; + $rc = sp + 16|0; + HEAP32[$1>>2] = $pCache; + HEAP32[$2>>2] = $pgno; + HEAP32[$3>>2] = $createFlag; + HEAP32[$4>>2] = $ppPage; + HEAP32[$pPgHdr>>2] = 0; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 40|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + do { + if (!($8)) { + $9 = HEAP32[$3>>2]|0; + $10 = ($9|0)!=(0); + if (!($10)) { + $11 = HEAP32[$4>>2]|0; + HEAP32[$11>>2] = 0; + HEAP32[$0>>2] = 0; + $167 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($167|0); + } + $12 = HEAP32[((45136 + 120|0))>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 20|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 24|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + 40)|0; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 28|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = (FUNCTION_TABLE_iiii[$12 & 31]($15,$19,$23)|0); + HEAP32[$p>>2] = $24; + $25 = HEAP32[$p>>2]|0; + $26 = ($25|0)!=(0|0); + if ($26) { + $27 = HEAP32[((45136 + 124|0))>>2]|0; + $28 = HEAP32[$p>>2]|0; + $29 = HEAP32[$1>>2]|0; + $30 = (_numberOfCachePages($29)|0); + FUNCTION_TABLE_vii[$27 & 7]($28,$30); + $31 = HEAP32[$p>>2]|0; + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 40|0); + HEAP32[$33>>2] = $31; + break; + } + HEAP32[$0>>2] = 7; + $167 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($167|0); + } + } while(0); + $34 = HEAP32[$3>>2]|0; + $35 = ($34|0)==(0); + if ($35) { + $40 = 0; + } else { + $36 = HEAP32[$1>>2]|0; + $37 = (($36) + 29|0); + $38 = HEAP8[$37>>0]|0; + $39 = $38&255; + $40 = $39; + } + HEAP32[$eCreate>>2] = $40; + $41 = HEAP32[((45136 + 132|0))>>2]|0; + $42 = HEAP32[$1>>2]|0; + $43 = (($42) + 40|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$2>>2]|0; + $46 = HEAP32[$eCreate>>2]|0; + $47 = (FUNCTION_TABLE_iiii[$41 & 31]($44,$45,$46)|0); + HEAP32[$pPage>>2] = $47; + $48 = HEAP32[$pPage>>2]|0; + $49 = ($48|0)!=(0|0); + if (!($49)) { + $50 = HEAP32[$eCreate>>2]|0; + $51 = ($50|0)==(1); + if ($51) { + $52 = HEAP32[$1>>2]|0; + $53 = (($52) + 8|0); + $54 = HEAP32[$53>>2]|0; + HEAP32[$pPg>>2] = $54; + while(1) { + $55 = HEAP32[$pPg>>2]|0; + $56 = ($55|0)!=(0|0); + if (!($56)) { + break; + } + $57 = HEAP32[$pPg>>2]|0; + $58 = (($57) + 26|0); + $59 = HEAP16[$58>>1]|0; + $60 = $59 << 16 >> 16; + $61 = ($60|0)!=(0); + if (!($61)) { + $62 = HEAP32[$pPg>>2]|0; + $63 = (($62) + 24|0); + $64 = HEAP16[$63>>1]|0; + $65 = $64&65535; + $66 = $65 & 4; + $67 = ($66|0)!=(0); + if (!($67)) { + break; + } + } + $68 = HEAP32[$pPg>>2]|0; + $69 = (($68) + 36|0); + $70 = HEAP32[$69>>2]|0; + HEAP32[$pPg>>2] = $70; + } + $71 = HEAP32[$pPg>>2]|0; + $72 = HEAP32[$1>>2]|0; + $73 = (($72) + 8|0); + HEAP32[$73>>2] = $71; + $74 = HEAP32[$pPg>>2]|0; + $75 = ($74|0)!=(0|0); + L25: do { + if (!($75)) { + $76 = HEAP32[$1>>2]|0; + $77 = (($76) + 4|0); + $78 = HEAP32[$77>>2]|0; + HEAP32[$pPg>>2] = $78; + while(1) { + $79 = HEAP32[$pPg>>2]|0; + $80 = ($79|0)!=(0|0); + if (!($80)) { + break L25; + } + $81 = HEAP32[$pPg>>2]|0; + $82 = (($81) + 26|0); + $83 = HEAP16[$82>>1]|0; + $84 = $83 << 16 >> 16; + $85 = ($84|0)!=(0); + if (!($85)) { + break L25; + } + $86 = HEAP32[$pPg>>2]|0; + $87 = (($86) + 36|0); + $88 = HEAP32[$87>>2]|0; + HEAP32[$pPg>>2] = $88; + } + } + } while(0); + $89 = HEAP32[$pPg>>2]|0; + $90 = ($89|0)!=(0|0); + if ($90) { + $91 = HEAP32[$1>>2]|0; + $92 = (($91) + 32|0); + $93 = HEAP32[$92>>2]|0; + $94 = HEAP32[$1>>2]|0; + $95 = (($94) + 36|0); + $96 = HEAP32[$95>>2]|0; + $97 = HEAP32[$pPg>>2]|0; + $98 = (FUNCTION_TABLE_iii[$93 & 127]($96,$97)|0); + HEAP32[$rc>>2] = $98; + $99 = HEAP32[$rc>>2]|0; + $100 = ($99|0)!=(0); + $101 = HEAP32[$rc>>2]|0; + $102 = ($101|0)!=(5); + $or$cond = $100 & $102; + if ($or$cond) { + $103 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $103; + $167 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($167|0); + } + } + $104 = HEAP32[((45136 + 132|0))>>2]|0; + $105 = HEAP32[$1>>2]|0; + $106 = (($105) + 40|0); + $107 = HEAP32[$106>>2]|0; + $108 = HEAP32[$2>>2]|0; + $109 = (FUNCTION_TABLE_iiii[$104 & 31]($107,$108,2)|0); + HEAP32[$pPage>>2] = $109; + } + } + $110 = HEAP32[$pPage>>2]|0; + $111 = ($110|0)!=(0|0); + if ($111) { + $112 = HEAP32[$pPage>>2]|0; + $113 = (($112) + 4|0); + $114 = HEAP32[$113>>2]|0; + HEAP32[$pPgHdr>>2] = $114; + $115 = HEAP32[$pPgHdr>>2]|0; + $116 = HEAP32[$115>>2]|0; + $117 = ($116|0)!=(0|0); + if (!($117)) { + $118 = HEAP32[$pPgHdr>>2]|0; + dest=$118+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $119 = HEAP32[$pPage>>2]|0; + $120 = HEAP32[$pPgHdr>>2]|0; + HEAP32[$120>>2] = $119; + $121 = HEAP32[$pPage>>2]|0; + $122 = HEAP32[$121>>2]|0; + $123 = HEAP32[$pPgHdr>>2]|0; + $124 = (($123) + 4|0); + HEAP32[$124>>2] = $122; + $125 = HEAP32[$pPgHdr>>2]|0; + $126 = (($125) + 40|0); + $127 = HEAP32[$pPgHdr>>2]|0; + $128 = (($127) + 8|0); + HEAP32[$128>>2] = $126; + $129 = HEAP32[$pPgHdr>>2]|0; + $130 = (($129) + 8|0); + $131 = HEAP32[$130>>2]|0; + $132 = HEAP32[$1>>2]|0; + $133 = (($132) + 24|0); + $134 = HEAP32[$133>>2]|0; + _memset(($131|0),0,($134|0))|0; + $135 = HEAP32[$1>>2]|0; + $136 = HEAP32[$pPgHdr>>2]|0; + $137 = (($136) + 28|0); + HEAP32[$137>>2] = $135; + $138 = HEAP32[$2>>2]|0; + $139 = HEAP32[$pPgHdr>>2]|0; + $140 = (($139) + 20|0); + HEAP32[$140>>2] = $138; + } + $141 = HEAP32[$pPgHdr>>2]|0; + $142 = (($141) + 26|0); + $143 = HEAP16[$142>>1]|0; + $144 = $143 << 16 >> 16; + $145 = (0)==($144|0); + if ($145) { + $146 = HEAP32[$1>>2]|0; + $147 = (($146) + 12|0); + $148 = HEAP32[$147>>2]|0; + $149 = (($148) + 1)|0; + HEAP32[$147>>2] = $149; + } + $150 = HEAP32[$pPgHdr>>2]|0; + $151 = (($150) + 26|0); + $152 = HEAP16[$151>>1]|0; + $153 = (($152) + 1)<<16>>16; + HEAP16[$151>>1] = $153; + $154 = HEAP32[$2>>2]|0; + $155 = ($154|0)==(1); + if ($155) { + $156 = HEAP32[$pPgHdr>>2]|0; + $157 = HEAP32[$1>>2]|0; + $158 = (($157) + 44|0); + HEAP32[$158>>2] = $156; + } + } + $159 = HEAP32[$pPgHdr>>2]|0; + $160 = HEAP32[$4>>2]|0; + HEAP32[$160>>2] = $159; + $161 = HEAP32[$pPgHdr>>2]|0; + $162 = ($161|0)==(0|0); + if ($162) { + $163 = HEAP32[$eCreate>>2]|0; + $164 = ($163|0)!=(0); + $166 = $164; + } else { + $166 = 0; + } + $165 = $166 ? 7 : 0; + HEAP32[$0>>2] = $165; + $167 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($167|0); +} +function _journalHdrOffset($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, $offset = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $offset = sp; + $c = sp + 8|0; + HEAP32[$0>>2] = $pPager; + $1 = $offset; + $2 = $1; + HEAP32[$2>>2] = 0; + $3 = (($1) + 4)|0; + $4 = $3; + HEAP32[$4>>2] = 0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 72|0); + $7 = $6; + $8 = $7; + $9 = HEAP32[$8>>2]|0; + $10 = (($7) + 4)|0; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = $c; + $14 = $13; + HEAP32[$14>>2] = $9; + $15 = (($13) + 4)|0; + $16 = $15; + HEAP32[$16>>2] = $12; + $17 = $c; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (($17) + 4)|0; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = ($19|0)!=(0); + $24 = ($22|0)!=(0); + $25 = $23 | $24; + if (!($25)) { + $50 = $offset; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (($50) + 4)|0; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + tempRet0 = $55; + STACKTOP = sp;return ($52|0); + } + $26 = $c; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = (($26) + 4)|0; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = (_i64Subtract(($28|0),($31|0),1,0)|0); + $33 = tempRet0; + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 148|0); + $36 = HEAP32[$35>>2]|0; + $37 = (___divdi3(($32|0),($33|0),($36|0),0)|0); + $38 = tempRet0; + $39 = (_i64Add(($37|0),($38|0),1,0)|0); + $40 = tempRet0; + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + 148|0); + $43 = HEAP32[$42>>2]|0; + $44 = (___muldi3(($39|0),($40|0),($43|0),0)|0); + $45 = tempRet0; + $46 = $offset; + $47 = $46; + HEAP32[$47>>2] = $44; + $48 = (($46) + 4)|0; + $49 = $48; + HEAP32[$49>>2] = $45; + $50 = $offset; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (($50) + 4)|0; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + tempRet0 = $55; + STACKTOP = sp;return ($52|0); +} +function _pagerPlaybackSavepoint($pPager,$pSavepoint) { + $pPager = $pPager|0; + $pSavepoint = $pSavepoint|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $dummy = 0, $iHdrOff = 0, $ii = 0, $ii1 = 0, $nJRec = 0; + var $offset = 0, $pDone = 0, $rc = 0, $szJ = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 56|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $szJ = sp + 8|0; + $iHdrOff = sp; + $rc = sp + 44|0; + $pDone = sp + 32|0; + $ii = sp + 36|0; + $nJRec = sp + 28|0; + $dummy = sp + 24|0; + $ii1 = sp + 40|0; + $offset = sp + 16|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$2>>2] = $pSavepoint; + HEAP32[$rc>>2] = 0; + HEAP32[$pDone>>2] = 0; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = HEAP32[$2>>2]|0; + $6 = (($5) + 20|0); + $7 = HEAP32[$6>>2]|0; + $8 = (_sqlite3BitvecCreate($7)|0); + HEAP32[$pDone>>2] = $8; + $9 = HEAP32[$pDone>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + HEAP32[$0>>2] = 7; + $294 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($294|0); + } + } + $11 = HEAP32[$2>>2]|0; + $12 = ($11|0)!=(0|0); + if ($12) { + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 20|0); + $15 = HEAP32[$14>>2]|0; + $21 = $15; + } else { + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 28|0); + $18 = HEAP32[$17>>2]|0; + $21 = $18; + } + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 24|0); + HEAP32[$20>>2] = $21; + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 12|0); + $24 = HEAP8[$23>>0]|0; + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 18|0); + HEAP8[$26>>0] = $24; + $27 = HEAP32[$2>>2]|0; + $28 = ($27|0)!=(0|0); + if (!($28)) { + $29 = HEAP32[$1>>2]|0; + $30 = (_pagerUseWal($29)|0); + $31 = ($30|0)!=(0); + if ($31) { + $32 = HEAP32[$1>>2]|0; + $33 = (_pagerRollbackWal($32)|0); + HEAP32[$0>>2] = $33; + $294 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($294|0); + } + } + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 72|0); + $36 = $35; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + $39 = (($36) + 4)|0; + $40 = $39; + $41 = HEAP32[$40>>2]|0; + $42 = $szJ; + $43 = $42; + HEAP32[$43>>2] = $38; + $44 = (($42) + 4)|0; + $45 = $44; + HEAP32[$45>>2] = $41; + $46 = HEAP32[$2>>2]|0; + $47 = ($46|0)!=(0|0); + L15: do { + if ($47) { + $48 = HEAP32[$1>>2]|0; + $49 = (_pagerUseWal($48)|0); + $50 = ($49|0)!=(0); + if ($50) { + label = 19; + } else { + $51 = HEAP32[$2>>2]|0; + $52 = (($51) + 8|0); + $53 = $52; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + $56 = (($53) + 4)|0; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = ($55|0)!=(0); + $60 = ($58|0)!=(0); + $61 = $59 | $60; + if ($61) { + $62 = HEAP32[$2>>2]|0; + $63 = (($62) + 8|0); + $64 = $63; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = (($64) + 4)|0; + $68 = $67; + $69 = HEAP32[$68>>2]|0; + $78 = $66;$81 = $69; + } else { + $70 = $szJ; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = (($70) + 4)|0; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $78 = $72;$81 = $75; + } + $76 = $iHdrOff; + $77 = $76; + HEAP32[$77>>2] = $78; + $79 = (($76) + 4)|0; + $80 = $79; + HEAP32[$80>>2] = $81; + $82 = HEAP32[$2>>2]|0; + $83 = $82; + $84 = $83; + $85 = HEAP32[$84>>2]|0; + $86 = (($83) + 4)|0; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = HEAP32[$1>>2]|0; + $90 = (($89) + 72|0); + $91 = $90; + $92 = $91; + HEAP32[$92>>2] = $85; + $93 = (($91) + 4)|0; + $94 = $93; + HEAP32[$94>>2] = $88; + while(1) { + $95 = HEAP32[$rc>>2]|0; + $96 = ($95|0)==(0); + if (!($96)) { + break L15; + } + $97 = HEAP32[$1>>2]|0; + $98 = (($97) + 72|0); + $99 = $98; + $100 = $99; + $101 = HEAP32[$100>>2]|0; + $102 = (($99) + 4)|0; + $103 = $102; + $104 = HEAP32[$103>>2]|0; + $105 = $iHdrOff; + $106 = $105; + $107 = HEAP32[$106>>2]|0; + $108 = (($105) + 4)|0; + $109 = $108; + $110 = HEAP32[$109>>2]|0; + $111 = ($104|0)<($110|0); + $112 = ($104|0)==($110|0); + $113 = ($101>>>0)<($107>>>0); + $114 = $112 & $113; + $115 = $111 | $114; + if (!($115)) { + break L15; + } + $116 = HEAP32[$1>>2]|0; + $117 = HEAP32[$1>>2]|0; + $118 = (($117) + 72|0); + $119 = HEAP32[$pDone>>2]|0; + $120 = (_pager_playback_one_page($116,$118,$119,1,1)|0); + HEAP32[$rc>>2] = $120; + } + } + } else { + label = 19; + } + } while(0); + if ((label|0) == 19) { + $121 = HEAP32[$1>>2]|0; + $122 = (($121) + 72|0); + $123 = $122; + $124 = $123; + HEAP32[$124>>2] = 0; + $125 = (($123) + 4)|0; + $126 = $125; + HEAP32[$126>>2] = 0; + } + L28: while(1) { + $127 = HEAP32[$rc>>2]|0; + $128 = ($127|0)==(0); + if (!($128)) { + break; + } + $129 = HEAP32[$1>>2]|0; + $130 = (($129) + 72|0); + $131 = $130; + $132 = $131; + $133 = HEAP32[$132>>2]|0; + $134 = (($131) + 4)|0; + $135 = $134; + $136 = HEAP32[$135>>2]|0; + $137 = $szJ; + $138 = $137; + $139 = HEAP32[$138>>2]|0; + $140 = (($137) + 4)|0; + $141 = $140; + $142 = HEAP32[$141>>2]|0; + $143 = ($136|0)<($142|0); + $144 = ($136|0)==($142|0); + $145 = ($133>>>0)<($139>>>0); + $146 = $144 & $145; + $147 = $143 | $146; + if (!($147)) { + break; + } + HEAP32[$nJRec>>2] = 0; + $148 = HEAP32[$1>>2]|0; + $149 = $szJ; + $150 = $149; + $151 = HEAP32[$150>>2]|0; + $152 = (($149) + 4)|0; + $153 = $152; + $154 = HEAP32[$153>>2]|0; + $155 = (_readJournalHdr($148,0,$151,$154,$nJRec,$dummy)|0); + HEAP32[$rc>>2] = $155; + $156 = HEAP32[$nJRec>>2]|0; + $157 = ($156|0)==(0); + if ($157) { + $158 = HEAP32[$1>>2]|0; + $159 = (($158) + 80|0); + $160 = $159; + $161 = $160; + $162 = HEAP32[$161>>2]|0; + $163 = (($160) + 4)|0; + $164 = $163; + $165 = HEAP32[$164>>2]|0; + $166 = HEAP32[$1>>2]|0; + $167 = (($166) + 148|0); + $168 = HEAP32[$167>>2]|0; + $169 = (_i64Add(($162|0),($165|0),($168|0),0)|0); + $170 = tempRet0; + $171 = HEAP32[$1>>2]|0; + $172 = (($171) + 72|0); + $173 = $172; + $174 = $173; + $175 = HEAP32[$174>>2]|0; + $176 = (($173) + 4)|0; + $177 = $176; + $178 = HEAP32[$177>>2]|0; + $179 = ($169|0)==($175|0); + $180 = ($170|0)==($178|0); + $181 = $179 & $180; + if ($181) { + $182 = $szJ; + $183 = $182; + $184 = HEAP32[$183>>2]|0; + $185 = (($182) + 4)|0; + $186 = $185; + $187 = HEAP32[$186>>2]|0; + $188 = HEAP32[$1>>2]|0; + $189 = (($188) + 72|0); + $190 = $189; + $191 = $190; + $192 = HEAP32[$191>>2]|0; + $193 = (($190) + 4)|0; + $194 = $193; + $195 = HEAP32[$194>>2]|0; + $196 = (_i64Subtract(($184|0),($187|0),($192|0),($195|0))|0); + $197 = tempRet0; + $198 = HEAP32[$1>>2]|0; + $199 = (($198) + 152|0); + $200 = HEAP32[$199>>2]|0; + $201 = (($200) + 8)|0; + $202 = ($201|0)<(0); + $203 = $202 << 31 >> 31; + $204 = (___divdi3(($196|0),($197|0),($201|0),($203|0))|0); + $205 = tempRet0; + HEAP32[$nJRec>>2] = $204; + } + } + HEAP32[$ii>>2] = 0; + while(1) { + $206 = HEAP32[$rc>>2]|0; + $207 = ($206|0)==(0); + if (!($207)) { + continue L28; + } + $208 = HEAP32[$ii>>2]|0; + $209 = HEAP32[$nJRec>>2]|0; + $210 = ($208>>>0)<($209>>>0); + if (!($210)) { + continue L28; + } + $211 = HEAP32[$1>>2]|0; + $212 = (($211) + 72|0); + $213 = $212; + $214 = $213; + $215 = HEAP32[$214>>2]|0; + $216 = (($213) + 4)|0; + $217 = $216; + $218 = HEAP32[$217>>2]|0; + $219 = $szJ; + $220 = $219; + $221 = HEAP32[$220>>2]|0; + $222 = (($219) + 4)|0; + $223 = $222; + $224 = HEAP32[$223>>2]|0; + $225 = ($218|0)<($224|0); + $226 = ($218|0)==($224|0); + $227 = ($215>>>0)<($221>>>0); + $228 = $226 & $227; + $229 = $225 | $228; + if (!($229)) { + continue L28; + } + $230 = HEAP32[$1>>2]|0; + $231 = HEAP32[$1>>2]|0; + $232 = (($231) + 72|0); + $233 = HEAP32[$pDone>>2]|0; + $234 = (_pager_playback_one_page($230,$232,$233,1,1)|0); + HEAP32[$rc>>2] = $234; + $235 = HEAP32[$ii>>2]|0; + $236 = (($235) + 1)|0; + HEAP32[$ii>>2] = $236; + } + } + $237 = HEAP32[$2>>2]|0; + $238 = ($237|0)!=(0|0); + L42: do { + if ($238) { + $239 = HEAP32[$2>>2]|0; + $240 = (($239) + 24|0); + $241 = HEAP32[$240>>2]|0; + $242 = HEAP32[$1>>2]|0; + $243 = (($242) + 152|0); + $244 = HEAP32[$243>>2]|0; + $245 = (4 + ($244))|0; + $246 = ($245|0)<(0); + $247 = $246 << 31 >> 31; + $248 = (___muldi3(($241|0),0,($245|0),($247|0))|0); + $249 = tempRet0; + $250 = $offset; + $251 = $250; + HEAP32[$251>>2] = $248; + $252 = (($250) + 4)|0; + $253 = $252; + HEAP32[$253>>2] = $249; + $254 = HEAP32[$1>>2]|0; + $255 = (_pagerUseWal($254)|0); + $256 = ($255|0)!=(0); + if ($256) { + $257 = HEAP32[$1>>2]|0; + $258 = (($257) + 208|0); + $259 = HEAP32[$258>>2]|0; + $260 = HEAP32[$2>>2]|0; + $261 = (($260) + 28|0); + $262 = (_sqlite3WalSavepointUndo($259,$261)|0); + HEAP32[$rc>>2] = $262; + } + $263 = HEAP32[$2>>2]|0; + $264 = (($263) + 24|0); + $265 = HEAP32[$264>>2]|0; + HEAP32[$ii1>>2] = $265; + while(1) { + $266 = HEAP32[$rc>>2]|0; + $267 = ($266|0)==(0); + if (!($267)) { + break L42; + } + $268 = HEAP32[$ii1>>2]|0; + $269 = HEAP32[$1>>2]|0; + $270 = (($269) + 52|0); + $271 = HEAP32[$270>>2]|0; + $272 = ($268>>>0)<($271>>>0); + if (!($272)) { + break L42; + } + $273 = HEAP32[$1>>2]|0; + $274 = HEAP32[$pDone>>2]|0; + $275 = (_pager_playback_one_page($273,$offset,$274,0,1)|0); + HEAP32[$rc>>2] = $275; + $276 = HEAP32[$ii1>>2]|0; + $277 = (($276) + 1)|0; + HEAP32[$ii1>>2] = $277; + } + } + } while(0); + $278 = HEAP32[$pDone>>2]|0; + _sqlite3BitvecDestroy($278); + $279 = HEAP32[$rc>>2]|0; + $280 = ($279|0)==(0); + if ($280) { + $281 = $szJ; + $282 = $281; + $283 = HEAP32[$282>>2]|0; + $284 = (($281) + 4)|0; + $285 = $284; + $286 = HEAP32[$285>>2]|0; + $287 = HEAP32[$1>>2]|0; + $288 = (($287) + 72|0); + $289 = $288; + $290 = $289; + HEAP32[$290>>2] = $283; + $291 = (($289) + 4)|0; + $292 = $291; + HEAP32[$292>>2] = $286; + } + $293 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $293; + $294 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($294|0); +} +function _pagerRollbackWal($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pList = 0, $pNext = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $rc = sp; + $pList = sp + 4|0; + $pNext = sp + 8|0; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 28|0); + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 24|0); + HEAP32[$5>>2] = $3; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 208|0); + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = (_sqlite3WalUndo($8,54,$9)|0); + HEAP32[$rc>>2] = $10; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 204|0); + $13 = HEAP32[$12>>2]|0; + $14 = (_sqlite3PcacheDirtyList($13)|0); + HEAP32[$pList>>2] = $14; + while(1) { + $15 = HEAP32[$pList>>2]|0; + $16 = ($15|0)!=(0|0); + if (!($16)) { + label = 5; + break; + } + $17 = HEAP32[$rc>>2]|0; + $18 = ($17|0)==(0); + if (!($18)) { + label = 5; + break; + } + $19 = HEAP32[$pList>>2]|0; + $20 = (($19) + 12|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$pNext>>2] = $21; + $22 = HEAP32[$0>>2]|0; + $23 = HEAP32[$pList>>2]|0; + $24 = (($23) + 20|0); + $25 = HEAP32[$24>>2]|0; + $26 = (_pagerUndoCallback($22,$25)|0); + HEAP32[$rc>>2] = $26; + $27 = HEAP32[$pNext>>2]|0; + HEAP32[$pList>>2] = $27; + } + if ((label|0) == 5) { + $28 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($28|0); + } + return 0|0; +} +function _sqlite3WalSavepointUndo($pWal,$aWalData) { + $pWal = $pWal|0; + $aWalData = $aWalData|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $pWal; + HEAP32[$1>>2] = $aWalData; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 12|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 104|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($4|0)!=($7|0); + if ($8) { + $9 = HEAP32[$1>>2]|0; + HEAP32[$9>>2] = 0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 104|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 12|0); + HEAP32[$14>>2] = $12; + } + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 52|0); + $19 = (($18) + 16|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($16>>>0)<($20>>>0); + if (!($21)) { + $41 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($41|0); + } + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 52|0); + $26 = (($25) + 16|0); + HEAP32[$26>>2] = $23; + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 4|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 52|0); + $32 = (($31) + 24|0); + HEAP32[$32>>2] = $29; + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 8|0); + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + 52|0); + $38 = (($37) + 24|0); + $39 = (($38) + 4|0); + HEAP32[$39>>2] = $35; + $40 = HEAP32[$0>>2]|0; + _walCleanupHash($40); + $41 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($41|0); +} +function _walCleanupHash($pWal) { + $pWal = $pWal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aHash = 0, $aPgno = 0, $i = 0, $iLimit = 0, $iZero = 0, $nByte = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $aHash = sp; + $aPgno = sp + 4|0; + $iZero = sp + 8|0; + $iLimit = sp + 12|0; + $nByte = sp + 16|0; + $i = sp + 20|0; + HEAP32[$0>>2] = $pWal; + HEAP32[$aHash>>2] = 0; + HEAP32[$aPgno>>2] = 0; + HEAP32[$iZero>>2] = 0; + HEAP32[$iLimit>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 52|0); + $3 = (($2) + 16|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)==(0); + if ($5) { + STACKTOP = sp;return; + } + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 52|0); + $9 = (($8) + 16|0); + $10 = HEAP32[$9>>2]|0; + $11 = (_walFramePage($10)|0); + (_walHashGet($6,$11,$aHash,$aPgno,$iZero)|0); + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 52|0); + $14 = (($13) + 16|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$iZero>>2]|0; + $17 = (($15) - ($16))|0; + HEAP32[$iLimit>>2] = $17; + HEAP32[$i>>2] = 0; + while(1) { + $18 = HEAP32[$i>>2]|0; + $19 = ($18|0)<(8192); + if (!($19)) { + break; + } + $20 = HEAP32[$i>>2]|0; + $21 = HEAP32[$aHash>>2]|0; + $22 = (($21) + ($20<<1)|0); + $23 = HEAP16[$22>>1]|0; + $24 = $23&65535; + $25 = HEAP32[$iLimit>>2]|0; + $26 = ($24|0)>($25|0); + if ($26) { + $27 = HEAP32[$i>>2]|0; + $28 = HEAP32[$aHash>>2]|0; + $29 = (($28) + ($27<<1)|0); + HEAP16[$29>>1] = 0; + } + $30 = HEAP32[$i>>2]|0; + $31 = (($30) + 1)|0; + HEAP32[$i>>2] = $31; + } + $32 = HEAP32[$aHash>>2]|0; + $33 = HEAP32[$iLimit>>2]|0; + $34 = (($33) + 1)|0; + $35 = HEAP32[$aPgno>>2]|0; + $36 = (($35) + ($34<<2)|0); + $37 = $32; + $38 = $36; + $39 = (($37) - ($38))|0; + HEAP32[$nByte>>2] = $39; + $40 = HEAP32[$iLimit>>2]|0; + $41 = (($40) + 1)|0; + $42 = HEAP32[$aPgno>>2]|0; + $43 = (($42) + ($41<<2)|0); + $44 = HEAP32[$nByte>>2]|0; + _memset(($43|0),0,($44|0))|0; + STACKTOP = sp;return; +} +function _walHashGet($pWal,$iHash,$paHash,$paPgno,$piZero) { + $pWal = $pWal|0; + $iHash = $iHash|0; + $paHash = $paHash|0; + $paPgno = $paPgno|0; + $piZero = $piZero|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aHash = 0, $aPgno = 0, $iZero = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $4 = sp + 16|0; + $rc = sp + 8|0; + $aPgno = sp + 4|0; + $iZero = sp; + $aHash = sp + 12|0; + HEAP32[$0>>2] = $pWal; + HEAP32[$1>>2] = $iHash; + HEAP32[$2>>2] = $paHash; + HEAP32[$3>>2] = $paPgno; + HEAP32[$4>>2] = $piZero; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (_walIndexPage($5,$6,$aPgno)|0); + HEAP32[$rc>>2] = $7; + $8 = HEAP32[$rc>>2]|0; + $9 = ($8|0)==(0); + if (!($9)) { + $27 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($27|0); + } + $10 = HEAP32[$aPgno>>2]|0; + $11 = (($10) + 16384|0); + HEAP32[$aHash>>2] = $11; + $12 = HEAP32[$1>>2]|0; + $13 = ($12|0)==(0); + if ($13) { + $14 = HEAP32[$aPgno>>2]|0; + $15 = (($14) + 136|0); + HEAP32[$aPgno>>2] = $15; + HEAP32[$iZero>>2] = 0; + } else { + $16 = HEAP32[$1>>2]|0; + $17 = (($16) - 1)|0; + $18 = $17<<12; + $19 = (4062 + ($18))|0; + HEAP32[$iZero>>2] = $19; + } + $20 = HEAP32[$aPgno>>2]|0; + $21 = (($20) + -4|0); + $22 = HEAP32[$3>>2]|0; + HEAP32[$22>>2] = $21; + $23 = HEAP32[$aHash>>2]|0; + $24 = HEAP32[$2>>2]|0; + HEAP32[$24>>2] = $23; + $25 = HEAP32[$iZero>>2]|0; + $26 = HEAP32[$4>>2]|0; + HEAP32[$26>>2] = $25; + $27 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($27|0); +} +function _walFramePage($iFrame) { + $iFrame = $iFrame|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $iHash = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $iHash = sp; + HEAP32[$0>>2] = $iFrame; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4096)|0; + $3 = (($2) - 4062)|0; + $4 = (($3) - 1)|0; + $5 = (($4>>>0) / 4096)&-1; + HEAP32[$iHash>>2] = $5; + $6 = HEAP32[$iHash>>2]|0; + STACKTOP = sp;return ($6|0); +} +function _walIndexPage($pWal,$iPage,$ppPage) { + $pWal = $pWal|0; + $iPage = $iPage|0; + $ppPage = $ppPage|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $apNew = 0, $nByte = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $rc = sp + 12|0; + $nByte = sp + 16|0; + $apNew = sp + 20|0; + HEAP32[$1>>2] = $pWal; + HEAP32[$2>>2] = $iPage; + HEAP32[$3>>2] = $ppPage; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 24|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = ($6|0)<=($7|0); + do { + if ($8) { + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 1)|0; + $11 = $10<<2; + HEAP32[$nByte>>2] = $11; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 32|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$nByte>>2]|0; + $16 = (_sqlite3_realloc($14,$15)|0); + HEAP32[$apNew>>2] = $16; + $17 = HEAP32[$apNew>>2]|0; + $18 = ($17|0)!=(0|0); + if ($18) { + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 24|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$apNew>>2]|0; + $24 = (($23) + ($22<<2)|0); + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 1)|0; + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 24|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($26) - ($29))|0; + $31 = $30<<2; + _memset(($24|0),0,($31|0))|0; + $32 = HEAP32[$apNew>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 32|0); + HEAP32[$34>>2] = $32; + $35 = HEAP32[$2>>2]|0; + $36 = (($35) + 1)|0; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 24|0); + HEAP32[$38>>2] = $36; + break; + } + $19 = HEAP32[$3>>2]|0; + HEAP32[$19>>2] = 0; + HEAP32[$0>>2] = 7; + $94 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($94|0); + } + } while(0); + $39 = HEAP32[$2>>2]|0; + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 32|0); + $42 = HEAP32[$41>>2]|0; + $43 = (($42) + ($39<<2)|0); + $44 = HEAP32[$43>>2]|0; + $45 = ($44|0)==(0|0); + do { + if ($45) { + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 43|0); + $48 = HEAP8[$47>>0]|0; + $49 = $48&255; + $50 = ($49|0)==(2); + if ($50) { + $51 = (_sqlite3MallocZero(32768)|0); + $52 = HEAP32[$2>>2]|0; + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 32|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + ($52<<2)|0); + HEAP32[$56>>2] = $51; + $57 = HEAP32[$2>>2]|0; + $58 = HEAP32[$1>>2]|0; + $59 = (($58) + 32|0); + $60 = HEAP32[$59>>2]|0; + $61 = (($60) + ($57<<2)|0); + $62 = HEAP32[$61>>2]|0; + $63 = ($62|0)!=(0|0); + if ($63) { + break; + } + HEAP32[$rc>>2] = 7; + break; + } else { + $64 = HEAP32[$1>>2]|0; + $65 = (($64) + 4|0); + $66 = HEAP32[$65>>2]|0; + $67 = HEAP32[$2>>2]|0; + $68 = HEAP32[$1>>2]|0; + $69 = (($68) + 44|0); + $70 = HEAP8[$69>>0]|0; + $71 = $70&255; + $72 = HEAP32[$2>>2]|0; + $73 = HEAP32[$1>>2]|0; + $74 = (($73) + 32|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($75) + ($72<<2)|0); + $77 = (_sqlite3OsShmMap($66,$67,32768,$71,$76)|0); + HEAP32[$rc>>2] = $77; + $78 = HEAP32[$rc>>2]|0; + $79 = ($78|0)==(8); + if (!($79)) { + break; + } + $80 = HEAP32[$1>>2]|0; + $81 = (($80) + 46|0); + $82 = HEAP8[$81>>0]|0; + $83 = $82&255; + $84 = $83 | 2; + $85 = $84&255; + HEAP8[$81>>0] = $85; + HEAP32[$rc>>2] = 0; + break; + } + } + } while(0); + $86 = HEAP32[$2>>2]|0; + $87 = HEAP32[$1>>2]|0; + $88 = (($87) + 32|0); + $89 = HEAP32[$88>>2]|0; + $90 = (($89) + ($86<<2)|0); + $91 = HEAP32[$90>>2]|0; + $92 = HEAP32[$3>>2]|0; + HEAP32[$92>>2] = $91; + $93 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $93; + $94 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($94|0); +} +function _sqlite3OsShmMap($id,$iPage,$pgsz,$bExtend,$pp) { + $id = $id|0; + $iPage = $iPage|0; + $pgsz = $pgsz|0; + $bExtend = $bExtend|0; + $pp = $pp|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + HEAP32[$0>>2] = $id; + HEAP32[$1>>2] = $iPage; + HEAP32[$2>>2] = $pgsz; + HEAP32[$3>>2] = $bExtend; + HEAP32[$4>>2] = $pp; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + 52|0); + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$3>>2]|0; + $13 = HEAP32[$4>>2]|0; + $14 = (FUNCTION_TABLE_iiiiii[$8 & 15]($9,$10,$11,$12,$13)|0); + STACKTOP = sp;return ($14|0); +} +function _sqlite3WalUndo($pWal,$xUndo,$pUndoCtx) { + $pWal = $pWal|0; + $xUndo = $xUndo|0; + $pUndoCtx = $pUndoCtx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $iFrame = 0, $iMax = 0, $rc = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $iMax = sp + 12|0; + $iFrame = sp + 16|0; + HEAP32[$0>>2] = $pWal; + HEAP32[$1>>2] = $xUndo; + HEAP32[$2>>2] = $pUndoCtx; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 44|0); + $5 = HEAP8[$4>>0]|0; + $6 = ($5<<24>>24)!=(0); + if (!($6)) { + $40 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($40|0); + } + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 52|0); + $9 = (($8) + 16|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$iMax>>2] = $10; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 52|0); + $13 = HEAP32[$0>>2]|0; + $14 = (_walIndexHdr($13)|0); + dest=$12+0|0; src=$14+0|0; stop=dest+48|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 52|0); + $17 = (($16) + 16|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + 1)|0; + HEAP32[$iFrame>>2] = $19; + while(1) { + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)==(0); + if (!($21)) { + break; + } + $22 = HEAP32[$iFrame>>2]|0; + $23 = HEAP32[$iMax>>2]|0; + $24 = ($22>>>0)<=($23>>>0); + if (!($24)) { + break; + } + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$2>>2]|0; + $27 = HEAP32[$0>>2]|0; + $28 = HEAP32[$iFrame>>2]|0; + $29 = (_walFramePgno($27,$28)|0); + $30 = (FUNCTION_TABLE_iii[$25 & 127]($26,$29)|0); + HEAP32[$rc>>2] = $30; + $31 = HEAP32[$iFrame>>2]|0; + $32 = (($31) + 1)|0; + HEAP32[$iFrame>>2] = $32; + } + $33 = HEAP32[$iMax>>2]|0; + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 52|0); + $36 = (($35) + 16|0); + $37 = HEAP32[$36>>2]|0; + $38 = ($33|0)!=($37|0); + if (!($38)) { + $40 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($40|0); + } + $39 = HEAP32[$0>>2]|0; + _walCleanupHash($39); + $40 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($40|0); +} +function _pagerUndoCallback($pCtx,$iPg) { + $pCtx = $pCtx|0; + $iPg = $iPg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iFrame = 0, $pPager = 0, $pPg = 0, $rc = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $rc = sp + 4|0; + $pPager = sp + 8|0; + $pPg = sp + 12|0; + $iFrame = sp + 16|0; + HEAP32[$0>>2] = $pCtx; + HEAP32[$1>>2] = $iPg; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + HEAP32[$pPager>>2] = $2; + $3 = HEAP32[$pPager>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (_sqlite3PagerLookup($3,$4)|0); + HEAP32[$pPg>>2] = $5; + $6 = HEAP32[$pPg>>2]|0; + $7 = ($6|0)!=(0|0); + do { + if ($7) { + $8 = HEAP32[$pPg>>2]|0; + $9 = (_sqlite3PcachePageRefcount($8)|0); + $10 = ($9|0)==(1); + if ($10) { + $11 = HEAP32[$pPg>>2]|0; + _sqlite3PcacheDrop($11); + break; + } + HEAP32[$iFrame>>2] = 0; + $12 = HEAP32[$pPager>>2]|0; + $13 = (($12) + 208|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$pPg>>2]|0; + $16 = (($15) + 20|0); + $17 = HEAP32[$16>>2]|0; + $18 = (_sqlite3WalFindFrame($14,$17,$iFrame)|0); + HEAP32[$rc>>2] = $18; + $19 = HEAP32[$rc>>2]|0; + $20 = ($19|0)==(0); + if ($20) { + $21 = HEAP32[$pPg>>2]|0; + $22 = HEAP32[$iFrame>>2]|0; + $23 = (_readDbPage($21,$22)|0); + HEAP32[$rc>>2] = $23; + } + $24 = HEAP32[$rc>>2]|0; + $25 = ($24|0)==(0); + if ($25) { + $26 = HEAP32[$pPager>>2]|0; + $27 = (($26) + 196|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$pPg>>2]|0; + FUNCTION_TABLE_vi[$28 & 31]($29); + } + $30 = HEAP32[$pPg>>2]|0; + _sqlite3PagerUnrefNotNull($30); + } + } while(0); + $31 = HEAP32[$pPager>>2]|0; + $32 = (($31) + 88|0); + $33 = HEAP32[$32>>2]|0; + _sqlite3BackupRestart($33); + $34 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($34|0); +} +function _sqlite3PcacheDirtyList($pCache) { + $pCache = $pCache|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pCache; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $2; + while(1) { + $3 = HEAP32[$p>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + break; + } + $5 = HEAP32[$p>>2]|0; + $6 = (($5) + 32|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$p>>2]|0; + $9 = (($8) + 12|0); + HEAP32[$9>>2] = $7; + $10 = HEAP32[$p>>2]|0; + $11 = (($10) + 32|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$p>>2] = $12; + } + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = (_pcacheSortDirtyList($14)|0); + STACKTOP = sp;return ($15|0); +} +function _pcacheSortDirtyList($pIn) { + $pIn = $pIn|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $i = 0, $p = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; + $0 = sp + 136|0; + $a = sp; + $p = sp + 128|0; + $i = sp + 132|0; + HEAP32[$0>>2] = $pIn; + dest=$a+0|0; stop=dest+128|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + while(1) { + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + break; + } + $3 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $3; + $4 = HEAP32[$p>>2]|0; + $5 = (($4) + 12|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$0>>2] = $6; + $7 = HEAP32[$p>>2]|0; + $8 = (($7) + 12|0); + HEAP32[$8>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $9 = HEAP32[$i>>2]|0; + $10 = ($9|0)<(31); + if (!($10)) { + break; + } + $11 = HEAP32[$i>>2]|0; + $12 = (($a) + ($11<<2)|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)==(0|0); + if ($14) { + label = 6; + break; + } + $18 = HEAP32[$i>>2]|0; + $19 = (($a) + ($18<<2)|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$p>>2]|0; + $22 = (_pcacheMergeDirtyList($20,$21)|0); + HEAP32[$p>>2] = $22; + $23 = HEAP32[$i>>2]|0; + $24 = (($a) + ($23<<2)|0); + HEAP32[$24>>2] = 0; + $25 = HEAP32[$i>>2]|0; + $26 = (($25) + 1)|0; + HEAP32[$i>>2] = $26; + } + if ((label|0) == 6) { + label = 0; + $15 = HEAP32[$p>>2]|0; + $16 = HEAP32[$i>>2]|0; + $17 = (($a) + ($16<<2)|0); + HEAP32[$17>>2] = $15; + } + $27 = HEAP32[$i>>2]|0; + $28 = ($27|0)==(31); + if (!($28)) { + continue; + } + $29 = HEAP32[$i>>2]|0; + $30 = (($a) + ($29<<2)|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$p>>2]|0; + $33 = (_pcacheMergeDirtyList($31,$32)|0); + $34 = HEAP32[$i>>2]|0; + $35 = (($a) + ($34<<2)|0); + HEAP32[$35>>2] = $33; + } + $36 = HEAP32[$a>>2]|0; + HEAP32[$p>>2] = $36; + HEAP32[$i>>2] = 1; + while(1) { + $37 = HEAP32[$i>>2]|0; + $38 = ($37|0)<(32); + $39 = HEAP32[$p>>2]|0; + if (!($38)) { + break; + } + $40 = HEAP32[$i>>2]|0; + $41 = (($a) + ($40<<2)|0); + $42 = HEAP32[$41>>2]|0; + $43 = (_pcacheMergeDirtyList($39,$42)|0); + HEAP32[$p>>2] = $43; + $44 = HEAP32[$i>>2]|0; + $45 = (($44) + 1)|0; + HEAP32[$i>>2] = $45; + } + STACKTOP = sp;return ($39|0); +} +function _pcacheMergeDirtyList($pA,$pB) { + $pA = $pA|0; + $pB = $pB|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $pTail = 0, $result = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 52|0; + $1 = sp; + $result = sp + 8|0; + $pTail = sp + 48|0; + HEAP32[$0>>2] = $pA; + HEAP32[$1>>2] = $pB; + HEAP32[$pTail>>2] = $result; + while(1) { + $2 = HEAP32[$0>>2]|0; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)!=(0|0); + $40 = $5; + } else { + $40 = 0; + } + $6 = HEAP32[$0>>2]|0; + if (!($40)) { + break; + } + $7 = (($6) + 20|0); + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 20|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($8>>>0)<($11>>>0); + if ($12) { + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$pTail>>2]|0; + $15 = (($14) + 12|0); + HEAP32[$15>>2] = $13; + $16 = HEAP32[$0>>2]|0; + HEAP32[$pTail>>2] = $16; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 12|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$0>>2] = $19; + continue; + } else { + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$pTail>>2]|0; + $22 = (($21) + 12|0); + HEAP32[$22>>2] = $20; + $23 = HEAP32[$1>>2]|0; + HEAP32[$pTail>>2] = $23; + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 12|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$1>>2] = $26; + continue; + } + } + $27 = ($6|0)!=(0|0); + if ($27) { + $28 = HEAP32[$0>>2]|0; + $29 = HEAP32[$pTail>>2]|0; + $30 = (($29) + 12|0); + HEAP32[$30>>2] = $28; + $38 = (($result) + 12|0); + $39 = HEAP32[$38>>2]|0; + STACKTOP = sp;return ($39|0); + } + $31 = HEAP32[$1>>2]|0; + $32 = ($31|0)!=(0|0); + if ($32) { + $33 = HEAP32[$1>>2]|0; + $34 = HEAP32[$pTail>>2]|0; + $35 = (($34) + 12|0); + HEAP32[$35>>2] = $33; + $38 = (($result) + 12|0); + $39 = HEAP32[$38>>2]|0; + STACKTOP = sp;return ($39|0); + } else { + $36 = HEAP32[$pTail>>2]|0; + $37 = (($36) + 12|0); + HEAP32[$37>>2] = 0; + $38 = (($result) + 12|0); + $39 = HEAP32[$38>>2]|0; + STACKTOP = sp;return ($39|0); + } + return 0|0; +} +function _sqlite3PagerLookup($pPager,$pgno) { + $pPager = $pPager|0; + $pgno = $pgno|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $pPg = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pPg = sp + 4|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $pgno; + HEAP32[$pPg>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 204|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$1>>2]|0; + (_sqlite3PcacheFetch($4,$5,0,$pPg)|0); + $6 = HEAP32[$pPg>>2]|0; + STACKTOP = sp;return ($6|0); +} +function _sqlite3PcachePageRefcount($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 26|0); + $3 = HEAP16[$2>>1]|0; + $4 = $3 << 16 >> 16; + STACKTOP = sp;return ($4|0); +} +function _sqlite3PcacheDrop($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pCache = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 24|0); + $3 = HEAP16[$2>>1]|0; + $4 = $3&65535; + $5 = $4 & 2; + $6 = ($5|0)!=(0); + if ($6) { + $7 = HEAP32[$0>>2]|0; + _pcacheRemoveFromDirtyList($7); + } + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 28|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$pCache>>2] = $10; + $11 = HEAP32[$pCache>>2]|0; + $12 = (($11) + 12|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + -1)|0; + HEAP32[$12>>2] = $14; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 20|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)==(1); + if ($18) { + $19 = HEAP32[$pCache>>2]|0; + $20 = (($19) + 44|0); + HEAP32[$20>>2] = 0; + } + $21 = HEAP32[((45136 + 136|0))>>2]|0; + $22 = HEAP32[$pCache>>2]|0; + $23 = (($22) + 40|0); + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$0>>2]|0; + $26 = HEAP32[$25>>2]|0; + FUNCTION_TABLE_viii[$21 & 63]($24,$26,1); + STACKTOP = sp;return; +} +function _sqlite3WalFindFrame($pWal,$pgno,$piRead) { + $pWal = $pWal|0; + $pgno = $pgno|0; + $piRead = $piRead|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $aHash = 0, $aPgno = 0, $iFrame = 0, $iHash = 0, $iKey = 0, $iLast = 0, $iRead = 0, $iZero = 0, $nCollide = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 52|0; + $1 = sp + 48|0; + $2 = sp + 44|0; + $3 = sp + 40|0; + $iRead = sp + 36|0; + $iLast = sp + 32|0; + $iHash = sp + 28|0; + $aHash = sp + 24|0; + $aPgno = sp + 16|0; + $iZero = sp + 12|0; + $iKey = sp + 8|0; + $nCollide = sp + 4|0; + $rc = sp; + $iFrame = sp + 20|0; + HEAP32[$1>>2] = $pWal; + HEAP32[$2>>2] = $pgno; + HEAP32[$3>>2] = $piRead; + HEAP32[$iRead>>2] = 0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 52|0); + $6 = (($5) + 16|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$iLast>>2] = $7; + $8 = HEAP32[$iLast>>2]|0; + $9 = ($8|0)==(0); + if (!($9)) { + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 40|0); + $12 = HEAP16[$11>>1]|0; + $13 = $12 << 16 >> 16; + $14 = ($13|0)==(0); + if (!($14)) { + $16 = HEAP32[$iLast>>2]|0; + $17 = (_walFramePage($16)|0); + HEAP32[$iHash>>2] = $17; + L4: while(1) { + $18 = HEAP32[$iHash>>2]|0; + $19 = ($18|0)>=(0); + if (!($19)) { + label = 18; + break; + } + $20 = HEAP32[$iRead>>2]|0; + $21 = ($20|0)==(0); + if (!($21)) { + label = 18; + break; + } + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$iHash>>2]|0; + $24 = (_walHashGet($22,$23,$aHash,$aPgno,$iZero)|0); + HEAP32[$rc>>2] = $24; + $25 = HEAP32[$rc>>2]|0; + $26 = ($25|0)!=(0); + if ($26) { + label = 8; + break; + } + HEAP32[$nCollide>>2] = 8192; + $28 = HEAP32[$2>>2]|0; + $29 = (_walHash($28)|0); + HEAP32[$iKey>>2] = $29; + while(1) { + $30 = HEAP32[$iKey>>2]|0; + $31 = HEAP32[$aHash>>2]|0; + $32 = (($31) + ($30<<1)|0); + $33 = HEAP16[$32>>1]|0; + $34 = ($33<<16>>16)!=(0); + if (!($34)) { + break; + } + $35 = HEAP32[$iKey>>2]|0; + $36 = HEAP32[$aHash>>2]|0; + $37 = (($36) + ($35<<1)|0); + $38 = HEAP16[$37>>1]|0; + $39 = $38&65535; + $40 = HEAP32[$iZero>>2]|0; + $41 = (($39) + ($40))|0; + HEAP32[$iFrame>>2] = $41; + $42 = HEAP32[$iFrame>>2]|0; + $43 = HEAP32[$iLast>>2]|0; + $44 = ($42>>>0)<=($43>>>0); + if ($44) { + $45 = HEAP32[$iKey>>2]|0; + $46 = HEAP32[$aHash>>2]|0; + $47 = (($46) + ($45<<1)|0); + $48 = HEAP16[$47>>1]|0; + $49 = $48&65535; + $50 = HEAP32[$aPgno>>2]|0; + $51 = (($50) + ($49<<2)|0); + $52 = HEAP32[$51>>2]|0; + $53 = HEAP32[$2>>2]|0; + $54 = ($52|0)==($53|0); + if ($54) { + $55 = HEAP32[$iFrame>>2]|0; + HEAP32[$iRead>>2] = $55; + } + } + $56 = HEAP32[$nCollide>>2]|0; + $57 = (($56) + -1)|0; + HEAP32[$nCollide>>2] = $57; + $58 = ($56|0)==(0); + if ($58) { + label = 15; + break L4; + } + $60 = HEAP32[$iKey>>2]|0; + $61 = (_walNextHash($60)|0); + HEAP32[$iKey>>2] = $61; + } + $62 = HEAP32[$iHash>>2]|0; + $63 = (($62) + -1)|0; + HEAP32[$iHash>>2] = $63; + } + if ((label|0) == 8) { + $27 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $27; + $66 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($66|0); + } + else if ((label|0) == 15) { + $59 = (_sqlite3CorruptError(49462)|0); + HEAP32[$0>>2] = $59; + $66 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($66|0); + } + else if ((label|0) == 18) { + $64 = HEAP32[$iRead>>2]|0; + $65 = HEAP32[$3>>2]|0; + HEAP32[$65>>2] = $64; + HEAP32[$0>>2] = 0; + $66 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($66|0); + } + } + } + $15 = HEAP32[$3>>2]|0; + HEAP32[$15>>2] = 0; + HEAP32[$0>>2] = 0; + $66 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($66|0); +} +function _readDbPage($pPg,$iFrame) { + $pPg = $pPg|0; + $iFrame = $iFrame|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $dbFileVers = 0, $iOffset = 0, $pPager = 0, $pgno = 0, $pgsz = 0, $rc = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 24|0; + $pPager = sp + 8|0; + $pgno = sp + 12|0; + $rc = sp + 16|0; + $pgsz = sp + 20|0; + $iOffset = sp; + $dbFileVers = sp + 28|0; + HEAP32[$0>>2] = $pPg; + HEAP32[$1>>2] = $iFrame; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 16|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pPager>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 20|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pgno>>2] = $7; + HEAP32[$rc>>2] = 0; + $8 = HEAP32[$pPager>>2]|0; + $9 = (($8) + 152|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$pgsz>>2] = $10; + $11 = HEAP32[$1>>2]|0; + $12 = ($11|0)!=(0); + if ($12) { + $13 = HEAP32[$pPager>>2]|0; + $14 = (($13) + 208|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$pgsz>>2]|0; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3WalReadFrame($15,$16,$17,$20)|0); + HEAP32[$rc>>2] = $21; + } else { + $22 = HEAP32[$pgno>>2]|0; + $23 = (($22) - 1)|0; + $24 = HEAP32[$pPager>>2]|0; + $25 = (($24) + 152|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)<(0); + $28 = $27 << 31 >> 31; + $29 = (___muldi3(($23|0),0,($26|0),($28|0))|0); + $30 = tempRet0; + $31 = $iOffset; + $32 = $31; + HEAP32[$32>>2] = $29; + $33 = (($31) + 4)|0; + $34 = $33; + HEAP32[$34>>2] = $30; + $35 = HEAP32[$pPager>>2]|0; + $36 = (($35) + 60|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$0>>2]|0; + $39 = (($38) + 4|0); + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$pgsz>>2]|0; + $42 = $iOffset; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (_sqlite3OsRead($37,$40,$41,$44,$47)|0); + HEAP32[$rc>>2] = $48; + $49 = HEAP32[$rc>>2]|0; + $50 = ($49|0)==(522); + $$ = $50 ? 0 : $48; + HEAP32[$rc>>2] = $$; + } + $51 = HEAP32[$pgno>>2]|0; + $52 = ($51|0)==(1); + if (!($52)) { + $64 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($64|0); + } + $53 = HEAP32[$rc>>2]|0; + $54 = ($53|0)!=(0); + if ($54) { + $55 = HEAP32[$pPager>>2]|0; + $56 = (($55) + 100|0); + dest=$56+0|0; stop=dest+16|0; do { HEAP8[dest>>0]=255|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + $64 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($64|0); + } else { + $57 = HEAP32[$0>>2]|0; + $58 = (($57) + 4|0); + $59 = HEAP32[$58>>2]|0; + $60 = (($59) + 24|0); + HEAP32[$dbFileVers>>2] = $60; + $61 = HEAP32[$pPager>>2]|0; + $62 = (($61) + 100|0); + $63 = HEAP32[$dbFileVers>>2]|0; + dest=$62+0|0; src=$63+0|0; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $64 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($64|0); + } + return 0|0; +} +function _sqlite3PagerUnrefNotNull($pPg) { + $pPg = $pPg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pPager = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pPager = sp; + HEAP32[$0>>2] = $pPg; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 16|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pPager>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 24|0); + $6 = HEAP16[$5>>1]|0; + $7 = $6&65535; + $8 = $7 & 64; + $9 = ($8|0)!=(0); + $10 = HEAP32[$0>>2]|0; + if ($9) { + _pagerReleaseMapPage($10); + $11 = HEAP32[$pPager>>2]|0; + _pagerUnlockIfUnused($11); + STACKTOP = sp;return; + } else { + _sqlite3PcacheRelease($10); + $11 = HEAP32[$pPager>>2]|0; + _pagerUnlockIfUnused($11); + STACKTOP = sp;return; + } +} +function _pagerReleaseMapPage($pPg) { + $pPg = $pPg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pPager = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pPager = sp; + HEAP32[$0>>2] = $pPg; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 16|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pPager>>2] = $3; + $4 = HEAP32[$pPager>>2]|0; + $5 = (($4) + 120|0); + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + -1)|0; + HEAP32[$5>>2] = $7; + $8 = HEAP32[$pPager>>2]|0; + $9 = (($8) + 136|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 12|0); + HEAP32[$12>>2] = $10; + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$pPager>>2]|0; + $15 = (($14) + 136|0); + HEAP32[$15>>2] = $13; + $16 = HEAP32[$pPager>>2]|0; + $17 = (($16) + 60|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 20|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) - 1)|0; + $23 = HEAP32[$pPager>>2]|0; + $24 = (($23) + 152|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)<(0); + $27 = $26 << 31 >> 31; + $28 = (___muldi3(($22|0),0,($25|0),($27|0))|0); + $29 = tempRet0; + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 4|0); + $32 = HEAP32[$31>>2]|0; + (_sqlite3OsUnfetch($18,$28,$29,$32)|0); + STACKTOP = sp;return; +} +function _pagerUnlockIfUnused($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 120|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)==(0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 204|0); + $7 = HEAP32[$6>>2]|0; + $8 = (_sqlite3PcacheRefCount($7)|0); + $9 = ($8|0)==(0); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = HEAP32[$0>>2]|0; + _pagerUnlockAndRollback($10); + STACKTOP = sp;return; +} +function _sqlite3OsUnfetch($id,$0,$1,$p) { + $id = $id|0; + $0 = $0|0; + $1 = $1|0; + $p = $p|0; + var $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp + 12|0; + $3 = sp; + $4 = sp + 8|0; + HEAP32[$2>>2] = $id; + $5 = $3; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + HEAP32[$4>>2] = $p; + STACKTOP = sp;return 0; +} +function _sqlite3WalReadFrame($pWal,$iRead,$nOut,$pOut) { + $pWal = $pWal|0; + $iRead = $iRead|0; + $nOut = $nOut|0; + $pOut = $pOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iOffset = 0, $sz = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp + 20|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $sz = sp + 16|0; + $iOffset = sp; + HEAP32[$0>>2] = $pWal; + HEAP32[$1>>2] = $iRead; + HEAP32[$2>>2] = $nOut; + HEAP32[$3>>2] = $pOut; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 52|0); + $6 = (($5) + 14|0); + $7 = HEAP16[$6>>1]|0; + $8 = $7&65535; + HEAP32[$sz>>2] = $8; + $9 = HEAP32[$sz>>2]|0; + $10 = $9 & 65024; + $11 = HEAP32[$sz>>2]|0; + $12 = $11 & 1; + $13 = $12 << 16; + $14 = (($10) + ($13))|0; + HEAP32[$sz>>2] = $14; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) - 1)|0; + $17 = HEAP32[$sz>>2]|0; + $18 = (($17) + 24)|0; + $19 = ($18|0)<(0); + $20 = $19 << 31 >> 31; + $21 = (___muldi3(($16|0),0,($18|0),($20|0))|0); + $22 = tempRet0; + $23 = (_i64Add(32,0,($21|0),($22|0))|0); + $24 = tempRet0; + $25 = (_i64Add(($23|0),($24|0),24,0)|0); + $26 = tempRet0; + $27 = $iOffset; + $28 = $27; + HEAP32[$28>>2] = $25; + $29 = (($27) + 4)|0; + $30 = $29; + HEAP32[$30>>2] = $26; + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 8|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$3>>2]|0; + $35 = HEAP32[$2>>2]|0; + $36 = HEAP32[$sz>>2]|0; + $37 = ($35|0)>($36|0); + $38 = HEAP32[$sz>>2]|0; + $39 = HEAP32[$2>>2]|0; + $40 = $37 ? $38 : $39; + $41 = $iOffset; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = (($41) + 4)|0; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = (_sqlite3OsRead($33,$34,$40,$43,$46)|0); + STACKTOP = sp;return ($47|0); +} +function _walHash($iPage) { + $iPage = $iPage|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $iPage; + $1 = HEAP32[$0>>2]|0; + $2 = ($1*383)|0; + $3 = $2 & 8191; + STACKTOP = sp;return ($3|0); +} +function _sqlite3CorruptError($lineno) { + $lineno = $lineno|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 8|0; + HEAP32[$0>>2] = $lineno; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3_sourceid()|0); + $3 = (($2) + 20|0); + HEAP32[$vararg_buffer>>2] = $1; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $3; + _sqlite3_log(11,11000,$vararg_buffer); + STACKTOP = sp;return 11; +} +function _walNextHash($iPriorHash) { + $iPriorHash = $iPriorHash|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $iPriorHash; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 1)|0; + $3 = $2 & 8191; + STACKTOP = sp;return ($3|0); +} +function _walIndexHdr($pWal) { + $pWal = $pWal|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pWal; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 32|0); + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + STACKTOP = sp;return ($4|0); +} +function _walFramePgno($pWal,$iFrame) { + $pWal = $pWal|0; + $iFrame = $iFrame|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iHash = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $iHash = sp + 8|0; + HEAP32[$1>>2] = $pWal; + HEAP32[$2>>2] = $iFrame; + $3 = HEAP32[$2>>2]|0; + $4 = (_walFramePage($3)|0); + HEAP32[$iHash>>2] = $4; + $5 = HEAP32[$iHash>>2]|0; + $6 = ($5|0)==(0); + $7 = HEAP32[$2>>2]|0; + if ($6) { + $8 = (34 + ($7))|0; + $9 = (($8) - 1)|0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 32|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + ($9<<2)|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$0>>2] = $15; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); + } else { + $16 = (($7) - 1)|0; + $17 = (($16) - 4062)|0; + $18 = (($17>>>0) % 4096)&-1; + $19 = HEAP32[$iHash>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 32|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + ($19<<2)|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + ($18<<2)|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$0>>2] = $26; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); + } + return 0|0; +} +function _sqlite3WalEndReadTransaction($pWal) { + $pWal = $pWal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pWal; + $1 = HEAP32[$0>>2]|0; + (_sqlite3WalEndWriteTransaction($1)|0); + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 40|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4 << 16 >> 16; + $6 = ($5|0)>=(0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 40|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10 << 16 >> 16; + $12 = (3 + ($11))|0; + _walUnlockShared($7,$12); + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 40|0); + HEAP16[$14>>1] = -1; + STACKTOP = sp;return; +} +function _sqlite3OsLock($id,$lockType) { + $id = $id|0; + $lockType = $lockType|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $id; + HEAP32[$1>>2] = $lockType; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 28|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (FUNCTION_TABLE_iii[$5 & 127]($6,$7)|0); + STACKTOP = sp;return ($8|0); +} +function _sqlite3WalCheckpoint($pWal,$eMode,$xBusy,$pBusyArg,$sync_flags,$nBuf,$zBuf,$pnLog,$pnCkpt) { + $pWal = $pWal|0; + $eMode = $eMode|0; + $xBusy = $xBusy|0; + $pBusyArg = $pBusyArg|0; + $sync_flags = $sync_flags|0; + $nBuf = $nBuf|0; + $zBuf = $zBuf|0; + $pnLog = $pnLog|0; + $pnCkpt = $pnCkpt|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $eMode2 = 0, $isChanged = 0, $or$cond = 0, $rc = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 48|0; + $1 = sp + 44|0; + $2 = sp + 40|0; + $3 = sp + 36|0; + $4 = sp + 32|0; + $5 = sp + 28|0; + $6 = sp + 24|0; + $7 = sp + 16|0; + $8 = sp + 12|0; + $9 = sp + 8|0; + $rc = sp + 4|0; + $isChanged = sp; + $eMode2 = sp + 20|0; + HEAP32[$1>>2] = $pWal; + HEAP32[$2>>2] = $eMode; + HEAP32[$3>>2] = $xBusy; + HEAP32[$4>>2] = $pBusyArg; + HEAP32[$5>>2] = $sync_flags; + HEAP32[$6>>2] = $nBuf; + HEAP32[$7>>2] = $zBuf; + HEAP32[$8>>2] = $pnLog; + HEAP32[$9>>2] = $pnCkpt; + HEAP32[$isChanged>>2] = 0; + $10 = HEAP32[$2>>2]|0; + HEAP32[$eMode2>>2] = $10; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 46|0); + $13 = HEAP8[$12>>0]|0; + $14 = ($13<<24>>24)!=(0); + if ($14) { + HEAP32[$0>>2] = 8; + $100 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($100|0); + } + $15 = HEAP32[$1>>2]|0; + $16 = (_walLockExclusive($15,1,1)|0); + HEAP32[$rc>>2] = $16; + $17 = HEAP32[$rc>>2]|0; + $18 = ($17|0)!=(0); + if ($18) { + $19 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $19; + $100 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($100|0); + } + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 45|0); + HEAP8[$21>>0] = 1; + $22 = HEAP32[$2>>2]|0; + $23 = ($22|0)!=(0); + do { + if ($23) { + $24 = HEAP32[$1>>2]|0; + $25 = HEAP32[$3>>2]|0; + $26 = HEAP32[$4>>2]|0; + $27 = (_walBusyLock($24,$25,$26,0,1)|0); + HEAP32[$rc>>2] = $27; + $28 = HEAP32[$rc>>2]|0; + $29 = ($28|0)==(0); + if ($29) { + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 44|0); + HEAP8[$31>>0] = 1; + break; + } + $32 = HEAP32[$rc>>2]|0; + $33 = ($32|0)==(5); + if ($33) { + HEAP32[$eMode2>>2] = 0; + HEAP32[$rc>>2] = 0; + } + } + } while(0); + $34 = HEAP32[$rc>>2]|0; + $35 = ($34|0)==(0); + if ($35) { + $36 = HEAP32[$1>>2]|0; + $37 = (_walIndexReadHdr($36,$isChanged)|0); + HEAP32[$rc>>2] = $37; + $38 = HEAP32[$isChanged>>2]|0; + $39 = ($38|0)!=(0); + if ($39) { + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 4|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$43>>2]|0; + $45 = ($44|0)>=(3); + if ($45) { + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 4|0); + $48 = HEAP32[$47>>2]|0; + (_sqlite3OsUnfetch($48,0,0,0)|0); + } + } + } + $49 = HEAP32[$rc>>2]|0; + $50 = ($49|0)==(0); + if ($50) { + $51 = HEAP32[$1>>2]|0; + $52 = (($51) + 52|0); + $53 = (($52) + 16|0); + $54 = HEAP32[$53>>2]|0; + $55 = ($54|0)!=(0); + if ($55) { + $56 = HEAP32[$1>>2]|0; + $57 = (_walPagesize($56)|0); + $58 = HEAP32[$6>>2]|0; + $59 = ($57|0)!=($58|0); + if ($59) { + $60 = (_sqlite3CorruptError(50063)|0); + HEAP32[$rc>>2] = $60; + } else { + label = 18; + } + } else { + label = 18; + } + if ((label|0) == 18) { + $61 = HEAP32[$1>>2]|0; + $62 = HEAP32[$eMode2>>2]|0; + $63 = HEAP32[$3>>2]|0; + $64 = HEAP32[$4>>2]|0; + $65 = HEAP32[$5>>2]|0; + $66 = HEAP32[$7>>2]|0; + $67 = (_walCheckpoint($61,$62,$63,$64,$65,$66)|0); + HEAP32[$rc>>2] = $67; + } + $68 = HEAP32[$rc>>2]|0; + $69 = ($68|0)==(0); + $70 = HEAP32[$rc>>2]|0; + $71 = ($70|0)==(5); + $or$cond = $69 | $71; + if ($or$cond) { + $72 = HEAP32[$8>>2]|0; + $73 = ($72|0)!=(0|0); + if ($73) { + $74 = HEAP32[$1>>2]|0; + $75 = (($74) + 52|0); + $76 = (($75) + 16|0); + $77 = HEAP32[$76>>2]|0; + $78 = HEAP32[$8>>2]|0; + HEAP32[$78>>2] = $77; + } + $79 = HEAP32[$9>>2]|0; + $80 = ($79|0)!=(0|0); + if ($80) { + $81 = HEAP32[$1>>2]|0; + $82 = (_walCkptInfo($81)|0); + $83 = HEAP32[$82>>2]|0; + $84 = HEAP32[$9>>2]|0; + HEAP32[$84>>2] = $83; + } + } + } + $85 = HEAP32[$isChanged>>2]|0; + $86 = ($85|0)!=(0); + if ($86) { + $87 = HEAP32[$1>>2]|0; + $88 = (($87) + 52|0); + dest=$88+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + } + $89 = HEAP32[$1>>2]|0; + (_sqlite3WalEndWriteTransaction($89)|0); + $90 = HEAP32[$1>>2]|0; + _walUnlockExclusive($90,1,1); + $91 = HEAP32[$1>>2]|0; + $92 = (($91) + 45|0); + HEAP8[$92>>0] = 0; + $93 = HEAP32[$rc>>2]|0; + $94 = ($93|0)==(0); + if ($94) { + $95 = HEAP32[$2>>2]|0; + $96 = HEAP32[$eMode2>>2]|0; + $97 = ($95|0)!=($96|0); + if ($97) { + $99 = 5; + } else { + label = 28; + } + } else { + label = 28; + } + if ((label|0) == 28) { + $98 = HEAP32[$rc>>2]|0; + $99 = $98; + } + HEAP32[$0>>2] = $99; + $100 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($100|0); +} +function _sqlite3OsFileControlHint($id,$op,$pArg) { + $id = $id|0; + $op = $op|0; + $pArg = $pArg|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $id; + HEAP32[$1>>2] = $op; + HEAP32[$2>>2] = $pArg; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 40|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$2>>2]|0; + (FUNCTION_TABLE_iiii[$6 & 31]($7,$8,$9)|0); + STACKTOP = sp;return; +} +function _walLimitSize($pWal,$0,$1) { + $pWal = $pWal|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rx = 0, $sz = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp + 16|0; + $2 = sp + 24|0; + $3 = sp + 8|0; + $sz = sp; + $rx = sp + 20|0; + HEAP32[$2>>2] = $pWal; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + _sqlite3BeginBenignMalloc(); + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 8|0); + $10 = HEAP32[$9>>2]|0; + $11 = (_sqlite3OsFileSize($10,$sz)|0); + HEAP32[$rx>>2] = $11; + $12 = HEAP32[$rx>>2]|0; + $13 = ($12|0)==(0); + if ($13) { + $14 = $sz; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = $3; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = (($20) + 4)|0; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = ($19|0)>($25|0); + $27 = ($19|0)==($25|0); + $28 = ($16>>>0)>($22>>>0); + $29 = $27 & $28; + $30 = $26 | $29; + if ($30) { + $31 = HEAP32[$2>>2]|0; + $32 = (($31) + 8|0); + $33 = HEAP32[$32>>2]|0; + $34 = $3; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (_sqlite3OsTruncate($33,$36,$39)|0); + HEAP32[$rx>>2] = $40; + } + } + _sqlite3EndBenignMalloc(); + $41 = HEAP32[$rx>>2]|0; + $42 = ($41|0)!=(0); + if (!($42)) { + STACKTOP = sp;return; + } + $43 = HEAP32[$rx>>2]|0; + $44 = HEAP32[$2>>2]|0; + $45 = (($44) + 100|0); + $46 = HEAP32[$45>>2]|0; + HEAP32[$vararg_buffer>>2] = $46; + _sqlite3_log($43,11048,$vararg_buffer); + STACKTOP = sp;return; +} +function _walIndexClose($pWal,$isDelete) { + $pWal = $pWal|0; + $isDelete = $isDelete|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $i = sp + 4|0; + HEAP32[$0>>2] = $pWal; + HEAP32[$1>>2] = $isDelete; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 43|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = ($5|0)==(2); + if (!($6)) { + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 4|0); + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$1>>2]|0; + (_sqlite3OsShmUnmap($27,$28)|0); + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $7 = HEAP32[$i>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 24|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($7|0)<($10|0); + if (!($11)) { + break; + } + $12 = HEAP32[$i>>2]|0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 32|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + ($12<<2)|0); + $17 = HEAP32[$16>>2]|0; + _sqlite3_free($17); + $18 = HEAP32[$i>>2]|0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 32|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + ($18<<2)|0); + HEAP32[$22>>2] = 0; + $23 = HEAP32[$i>>2]|0; + $24 = (($23) + 1)|0; + HEAP32[$i>>2] = $24; + } + STACKTOP = sp;return; +} +function _sqlite3OsShmUnmap($id,$deleteFlag) { + $id = $id|0; + $deleteFlag = $deleteFlag|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $id; + HEAP32[$1>>2] = $deleteFlag; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 64|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (FUNCTION_TABLE_iii[$5 & 127]($6,$7)|0); + STACKTOP = sp;return ($8|0); +} +function _walLockExclusive($pWal,$lockIdx,$n) { + $pWal = $pWal|0; + $lockIdx = $lockIdx|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $rc = sp + 12|0; + HEAP32[$1>>2] = $pWal; + HEAP32[$2>>2] = $lockIdx; + HEAP32[$3>>2] = $n; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 43|0); + $6 = HEAP8[$5>>0]|0; + $7 = ($6<<24>>24)!=(0); + if ($7) { + HEAP32[$0>>2] = 0; + $15 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($15|0); + } else { + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$3>>2]|0; + $13 = (_sqlite3OsShmLock($10,$11,$12,10)|0); + HEAP32[$rc>>2] = $13; + $14 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $14; + $15 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($15|0); + } + return 0|0; +} +function _walBusyLock($pWal,$xBusy,$pBusyArg,$lockIdx,$n) { + $pWal = $pWal|0; + $xBusy = $xBusy|0; + $pBusyArg = $pBusyArg|0; + $lockIdx = $lockIdx|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $rc = sp + 16|0; + HEAP32[$0>>2] = $pWal; + HEAP32[$1>>2] = $xBusy; + HEAP32[$2>>2] = $pBusyArg; + HEAP32[$3>>2] = $lockIdx; + HEAP32[$4>>2] = $n; + while(1) { + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$3>>2]|0; + $7 = HEAP32[$4>>2]|0; + $8 = (_walLockExclusive($5,$6,$7)|0); + HEAP32[$rc>>2] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + label = 5; + break; + } + $11 = HEAP32[$rc>>2]|0; + $12 = ($11|0)==(5); + if (!($12)) { + label = 5; + break; + } + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (FUNCTION_TABLE_ii[$13 & 63]($14)|0); + $16 = ($15|0)!=(0); + if (!($16)) { + label = 5; + break; + } + } + if ((label|0) == 5) { + $17 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($17|0); + } + return 0|0; +} +function _walIndexReadHdr($pWal,$pChanged) { + $pWal = $pWal|0; + $pChanged = $pChanged|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $badHdr = 0, $page0 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $badHdr = sp + 12|0; + $page0 = sp + 16|0; + HEAP32[$1>>2] = $pWal; + HEAP32[$2>>2] = $pChanged; + $3 = HEAP32[$1>>2]|0; + $4 = (_walIndexPage($3,0,$page0)|0); + HEAP32[$rc>>2] = $4; + $5 = HEAP32[$rc>>2]|0; + $6 = ($5|0)!=(0); + if ($6) { + $7 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $7; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); + } + $8 = HEAP32[$page0>>2]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = (_walIndexTryHdr($10,$11)|0); + $13 = $12; + } else { + $13 = 1; + } + HEAP32[$badHdr>>2] = $13; + $14 = HEAP32[$badHdr>>2]|0; + $15 = ($14|0)!=(0); + do { + if ($15) { + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 46|0); + $18 = HEAP8[$17>>0]|0; + $19 = $18&255; + $20 = $19 & 2; + $21 = ($20|0)!=(0); + $22 = HEAP32[$1>>2]|0; + if ($21) { + $23 = (_walLockShared($22,0)|0); + HEAP32[$rc>>2] = $23; + $24 = (0)==($23|0); + if (!($24)) { + break; + } + $25 = HEAP32[$1>>2]|0; + _walUnlockShared($25,0); + HEAP32[$rc>>2] = 264; + break; + } + $26 = (_walLockExclusive($22,0,1)|0); + HEAP32[$rc>>2] = $26; + $27 = (0)==($26|0); + if ($27) { + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 44|0); + HEAP8[$29>>0] = 1; + $30 = HEAP32[$1>>2]|0; + $31 = (_walIndexPage($30,0,$page0)|0); + HEAP32[$rc>>2] = $31; + $32 = (0)==($31|0); + if ($32) { + $33 = HEAP32[$1>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = (_walIndexTryHdr($33,$34)|0); + HEAP32[$badHdr>>2] = $35; + $36 = HEAP32[$badHdr>>2]|0; + $37 = ($36|0)!=(0); + if ($37) { + $38 = HEAP32[$1>>2]|0; + $39 = (_walIndexRecover($38)|0); + HEAP32[$rc>>2] = $39; + $40 = HEAP32[$2>>2]|0; + HEAP32[$40>>2] = 1; + } + } + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 44|0); + HEAP8[$42>>0] = 0; + $43 = HEAP32[$1>>2]|0; + _walUnlockExclusive($43,0,1); + } + } + } while(0); + $44 = HEAP32[$badHdr>>2]|0; + $45 = ($44|0)==(0); + if ($45) { + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 52|0); + $48 = HEAP32[$47>>2]|0; + $49 = ($48|0)!=(3007000); + if ($49) { + $50 = (_sqlite3CantopenError(49109)|0); + HEAP32[$rc>>2] = $50; + } + } + $51 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $51; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); +} +function _walPagesize($pWal) { + $pWal = $pWal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pWal; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 52|0); + $3 = (($2) + 14|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4&65535; + $6 = $5 & 65024; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 52|0); + $9 = (($8) + 14|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10&65535; + $12 = $11 & 1; + $13 = $12 << 16; + $14 = (($6) + ($13))|0; + STACKTOP = sp;return ($14|0); +} +function _walCheckpoint($pWal,$eMode,$xBusyCall,$pBusyArg,$sync_flags,$zBuf) { + $pWal = $pWal|0; + $eMode = $eMode|0; + $xBusyCall = $xBusyCall|0; + $pBusyArg = $pBusyArg|0; + $sync_flags = $sync_flags|0; + $zBuf = $zBuf|0; + var $$old = 0, $$old1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; + var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; + var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; + var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; + var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0; + var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0; + var $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0; + var $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0; + var $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0; + var $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iDbpage = 0, $iFrame = 0, $iOffset = 0, $mxPage = 0, $mxSafeFrame = 0, $nBackfill = 0, $nReq = 0, $nSize = 0, $or$cond = 0, $pInfo = 0, $pIter = 0, $rc = 0, $szDb = 0, $szPage = 0; + var $xBusy = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $0 = sp + 104|0; + $1 = sp + 100|0; + $2 = sp + 96|0; + $3 = sp + 92|0; + $4 = sp + 88|0; + $5 = sp + 84|0; + $6 = sp + 80|0; + $rc = sp + 76|0; + $szPage = sp + 72|0; + $pIter = sp + 68|0; + $iDbpage = sp + 64|0; + $iFrame = sp + 60|0; + $mxSafeFrame = sp + 32|0; + $mxPage = sp + 48|0; + $i = sp + 44|0; + $pInfo = sp + 40|0; + $xBusy = sp + 36|0; + $y = sp + 56|0; + $nSize = sp + 16|0; + $nBackfill = sp + 52|0; + $nReq = sp + 8|0; + $iOffset = sp + 24|0; + $szDb = sp; + HEAP32[$1>>2] = $pWal; + HEAP32[$2>>2] = $eMode; + HEAP32[$3>>2] = $xBusyCall; + HEAP32[$4>>2] = $pBusyArg; + HEAP32[$5>>2] = $sync_flags; + HEAP32[$6>>2] = $zBuf; + HEAP32[$pIter>>2] = 0; + HEAP32[$iDbpage>>2] = 0; + HEAP32[$iFrame>>2] = 0; + HEAP32[$xBusy>>2] = 0; + $7 = HEAP32[$1>>2]|0; + $8 = (_walPagesize($7)|0); + HEAP32[$szPage>>2] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = (_walCkptInfo($9)|0); + HEAP32[$pInfo>>2] = $10; + $11 = HEAP32[$pInfo>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 52|0); + $15 = (($14) + 16|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($12>>>0)>=($16>>>0); + if ($17) { + HEAP32[$0>>2] = 0; + $262 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($262|0); + } + $18 = HEAP32[$1>>2]|0; + $19 = (_walIteratorInit($18,$pIter)|0); + HEAP32[$rc>>2] = $19; + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)!=(0); + if ($21) { + $22 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $22; + $262 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($262|0); + } + $23 = HEAP32[$2>>2]|0; + $24 = ($23|0)!=(0); + if ($24) { + $25 = HEAP32[$3>>2]|0; + HEAP32[$xBusy>>2] = $25; + } + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 52|0); + $28 = (($27) + 16|0); + $29 = HEAP32[$28>>2]|0; + HEAP32[$mxSafeFrame>>2] = $29; + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 52|0); + $32 = (($31) + 20|0); + $33 = HEAP32[$32>>2]|0; + HEAP32[$mxPage>>2] = $33; + HEAP32[$i>>2] = 1; + L12: while(1) { + $34 = HEAP32[$i>>2]|0; + $35 = ($34|0)<(5); + if (!($35)) { + label = 15; + break; + } + $36 = HEAP32[$i>>2]|0; + $37 = HEAP32[$pInfo>>2]|0; + $38 = (($37) + 4|0); + $39 = (($38) + ($36<<2)|0); + $40 = HEAP32[$39>>2]|0; + HEAP32[$y>>2] = $40; + $41 = HEAP32[$mxSafeFrame>>2]|0; + $42 = HEAP32[$y>>2]|0; + $43 = ($41>>>0)>($42>>>0); + do { + if ($43) { + $44 = HEAP32[$1>>2]|0; + $45 = HEAP32[$xBusy>>2]|0; + $46 = HEAP32[$4>>2]|0; + $47 = HEAP32[$i>>2]|0; + $48 = (3 + ($47))|0; + $49 = (_walBusyLock($44,$45,$46,$48,1)|0); + HEAP32[$rc>>2] = $49; + $50 = HEAP32[$rc>>2]|0; + $51 = ($50|0)==(0); + if ($51) { + $52 = HEAP32[$i>>2]|0; + $53 = ($52|0)==(1); + $54 = HEAP32[$mxSafeFrame>>2]|0; + $55 = $53 ? $54 : -1; + $56 = HEAP32[$i>>2]|0; + $57 = HEAP32[$pInfo>>2]|0; + $58 = (($57) + 4|0); + $59 = (($58) + ($56<<2)|0); + HEAP32[$59>>2] = $55; + $60 = HEAP32[$1>>2]|0; + $61 = HEAP32[$i>>2]|0; + $62 = (3 + ($61))|0; + _walUnlockExclusive($60,$62,1); + break; + } + $63 = HEAP32[$rc>>2]|0; + $64 = ($63|0)==(5); + if (!($64)) { + break L12; + } + $65 = HEAP32[$y>>2]|0; + HEAP32[$mxSafeFrame>>2] = $65; + HEAP32[$xBusy>>2] = 0; + } + } while(0); + $66 = HEAP32[$i>>2]|0; + $67 = (($66) + 1)|0; + HEAP32[$i>>2] = $67; + } + do { + if ((label|0) == 15) { + $68 = HEAP32[$pInfo>>2]|0; + $69 = HEAP32[$68>>2]|0; + $70 = HEAP32[$mxSafeFrame>>2]|0; + $71 = ($69>>>0)<($70>>>0); + if ($71) { + $72 = HEAP32[$1>>2]|0; + $73 = HEAP32[$xBusy>>2]|0; + $74 = HEAP32[$4>>2]|0; + $75 = (_walBusyLock($72,$73,$74,3,1)|0); + HEAP32[$rc>>2] = $75; + $76 = ($75|0)==(0); + if ($76) { + $77 = HEAP32[$pInfo>>2]|0; + $78 = HEAP32[$77>>2]|0; + HEAP32[$nBackfill>>2] = $78; + $79 = HEAP32[$5>>2]|0; + $80 = ($79|0)!=(0); + if ($80) { + $81 = HEAP32[$1>>2]|0; + $82 = (($81) + 8|0); + $83 = HEAP32[$82>>2]|0; + $84 = HEAP32[$5>>2]|0; + $85 = (_sqlite3OsSync($83,$84)|0); + HEAP32[$rc>>2] = $85; + } + $86 = HEAP32[$rc>>2]|0; + $87 = ($86|0)==(0); + if ($87) { + $88 = HEAP32[$mxPage>>2]|0; + $89 = HEAP32[$szPage>>2]|0; + $90 = ($89|0)<(0); + $91 = $90 << 31 >> 31; + $92 = (___muldi3(($88|0),0,($89|0),($91|0))|0); + $93 = tempRet0; + $94 = $nReq; + $95 = $94; + HEAP32[$95>>2] = $92; + $96 = (($94) + 4)|0; + $97 = $96; + HEAP32[$97>>2] = $93; + $98 = HEAP32[$1>>2]|0; + $99 = (($98) + 4|0); + $100 = HEAP32[$99>>2]|0; + $101 = (_sqlite3OsFileSize($100,$nSize)|0); + HEAP32[$rc>>2] = $101; + $102 = HEAP32[$rc>>2]|0; + $103 = ($102|0)==(0); + if ($103) { + $104 = $nSize; + $105 = $104; + $106 = HEAP32[$105>>2]|0; + $107 = (($104) + 4)|0; + $108 = $107; + $109 = HEAP32[$108>>2]|0; + $110 = $nReq; + $111 = $110; + $112 = HEAP32[$111>>2]|0; + $113 = (($110) + 4)|0; + $114 = $113; + $115 = HEAP32[$114>>2]|0; + $116 = ($109|0)<($115|0); + $117 = ($109|0)==($115|0); + $118 = ($106>>>0)<($112>>>0); + $119 = $117 & $118; + $120 = $116 | $119; + if ($120) { + $121 = HEAP32[$1>>2]|0; + $122 = (($121) + 4|0); + $123 = HEAP32[$122>>2]|0; + _sqlite3OsFileControlHint($123,5,$nReq); + } + } + } + L34: while(1) { + $$old = HEAP32[$rc>>2]|0; + $$old1 = ($$old|0)==(0); + if (!($$old1)) { + break; + } + while(1) { + $124 = HEAP32[$pIter>>2]|0; + $125 = (_walIteratorNext($124,$iDbpage,$iFrame)|0); + $126 = (0)==($125|0); + if (!($126)) { + break L34; + } + $127 = HEAP32[$iFrame>>2]|0; + $128 = HEAP32[$nBackfill>>2]|0; + $129 = ($127>>>0)<=($128>>>0); + if ($129) { + continue L34; + } + $130 = HEAP32[$iFrame>>2]|0; + $131 = HEAP32[$mxSafeFrame>>2]|0; + $132 = ($130>>>0)>($131>>>0); + if ($132) { + continue L34; + } + $133 = HEAP32[$iDbpage>>2]|0; + $134 = HEAP32[$mxPage>>2]|0; + $135 = ($133>>>0)>($134>>>0); + if ($135) { + continue L34; + } + $136 = HEAP32[$iFrame>>2]|0; + $137 = (($136) - 1)|0; + $138 = HEAP32[$szPage>>2]|0; + $139 = (($138) + 24)|0; + $140 = ($139|0)<(0); + $141 = $140 << 31 >> 31; + $142 = (___muldi3(($137|0),0,($139|0),($141|0))|0); + $143 = tempRet0; + $144 = (_i64Add(32,0,($142|0),($143|0))|0); + $145 = tempRet0; + $146 = (_i64Add(($144|0),($145|0),24,0)|0); + $147 = tempRet0; + $148 = $iOffset; + $149 = $148; + HEAP32[$149>>2] = $146; + $150 = (($148) + 4)|0; + $151 = $150; + HEAP32[$151>>2] = $147; + $152 = HEAP32[$1>>2]|0; + $153 = (($152) + 8|0); + $154 = HEAP32[$153>>2]|0; + $155 = HEAP32[$6>>2]|0; + $156 = HEAP32[$szPage>>2]|0; + $157 = $iOffset; + $158 = $157; + $159 = HEAP32[$158>>2]|0; + $160 = (($157) + 4)|0; + $161 = $160; + $162 = HEAP32[$161>>2]|0; + $163 = (_sqlite3OsRead($154,$155,$156,$159,$162)|0); + HEAP32[$rc>>2] = $163; + $164 = HEAP32[$rc>>2]|0; + $165 = ($164|0)!=(0); + if ($165) { + break L34; + } + $166 = HEAP32[$iDbpage>>2]|0; + $167 = (($166) - 1)|0; + $168 = HEAP32[$szPage>>2]|0; + $169 = ($168|0)<(0); + $170 = $169 << 31 >> 31; + $171 = (___muldi3(($167|0),0,($168|0),($170|0))|0); + $172 = tempRet0; + $173 = $iOffset; + $174 = $173; + HEAP32[$174>>2] = $171; + $175 = (($173) + 4)|0; + $176 = $175; + HEAP32[$176>>2] = $172; + $177 = HEAP32[$1>>2]|0; + $178 = (($177) + 4|0); + $179 = HEAP32[$178>>2]|0; + $180 = HEAP32[$6>>2]|0; + $181 = HEAP32[$szPage>>2]|0; + $182 = $iOffset; + $183 = $182; + $184 = HEAP32[$183>>2]|0; + $185 = (($182) + 4)|0; + $186 = $185; + $187 = HEAP32[$186>>2]|0; + $188 = (_sqlite3OsWrite($179,$180,$181,$184,$187)|0); + HEAP32[$rc>>2] = $188; + $189 = HEAP32[$rc>>2]|0; + $190 = ($189|0)==(0); + $191 = HEAP32[$rc>>2]|0; + $192 = ($191|0)==(0); + $or$cond = $190 & $192; + if (!($or$cond)) { + break L34; + } + } + } + $193 = HEAP32[$rc>>2]|0; + $194 = ($193|0)==(0); + if ($194) { + $195 = HEAP32[$mxSafeFrame>>2]|0; + $196 = HEAP32[$1>>2]|0; + $197 = (_walIndexHdr($196)|0); + $198 = (($197) + 16|0); + $199 = HEAP32[$198>>2]|0; + $200 = ($195|0)==($199|0); + if ($200) { + $201 = HEAP32[$1>>2]|0; + $202 = (($201) + 52|0); + $203 = (($202) + 20|0); + $204 = HEAP32[$203>>2]|0; + $205 = HEAP32[$szPage>>2]|0; + $206 = ($205|0)<(0); + $207 = $206 << 31 >> 31; + $208 = (___muldi3(($204|0),0,($205|0),($207|0))|0); + $209 = tempRet0; + $210 = $szDb; + $211 = $210; + HEAP32[$211>>2] = $208; + $212 = (($210) + 4)|0; + $213 = $212; + HEAP32[$213>>2] = $209; + $214 = HEAP32[$1>>2]|0; + $215 = (($214) + 4|0); + $216 = HEAP32[$215>>2]|0; + $217 = $szDb; + $218 = $217; + $219 = HEAP32[$218>>2]|0; + $220 = (($217) + 4)|0; + $221 = $220; + $222 = HEAP32[$221>>2]|0; + $223 = (_sqlite3OsTruncate($216,$219,$222)|0); + HEAP32[$rc>>2] = $223; + $224 = HEAP32[$rc>>2]|0; + $225 = ($224|0)==(0); + if ($225) { + $226 = HEAP32[$5>>2]|0; + $227 = ($226|0)!=(0); + if ($227) { + $228 = HEAP32[$1>>2]|0; + $229 = (($228) + 4|0); + $230 = HEAP32[$229>>2]|0; + $231 = HEAP32[$5>>2]|0; + $232 = (_sqlite3OsSync($230,$231)|0); + HEAP32[$rc>>2] = $232; + } + } + } + $233 = HEAP32[$rc>>2]|0; + $234 = ($233|0)==(0); + if ($234) { + $235 = HEAP32[$mxSafeFrame>>2]|0; + $236 = HEAP32[$pInfo>>2]|0; + HEAP32[$236>>2] = $235; + } + } + $237 = HEAP32[$1>>2]|0; + _walUnlockExclusive($237,3,1); + } + } + $238 = HEAP32[$rc>>2]|0; + $239 = ($238|0)==(5); + if ($239) { + HEAP32[$rc>>2] = 0; + } + $240 = HEAP32[$rc>>2]|0; + $241 = ($240|0)==(0); + if ($241) { + $242 = HEAP32[$2>>2]|0; + $243 = ($242|0)!=(0); + if ($243) { + $244 = HEAP32[$pInfo>>2]|0; + $245 = HEAP32[$244>>2]|0; + $246 = HEAP32[$1>>2]|0; + $247 = (($246) + 52|0); + $248 = (($247) + 16|0); + $249 = HEAP32[$248>>2]|0; + $250 = ($245>>>0)<($249>>>0); + if ($250) { + HEAP32[$rc>>2] = 5; + break; + } + $251 = HEAP32[$2>>2]|0; + $252 = ($251|0)==(2); + if ($252) { + $253 = HEAP32[$1>>2]|0; + $254 = HEAP32[$xBusy>>2]|0; + $255 = HEAP32[$4>>2]|0; + $256 = (_walBusyLock($253,$254,$255,4,4)|0); + HEAP32[$rc>>2] = $256; + $257 = HEAP32[$rc>>2]|0; + $258 = ($257|0)==(0); + if ($258) { + $259 = HEAP32[$1>>2]|0; + _walUnlockExclusive($259,4,4); + } + } + } + } + } + } while(0); + $260 = HEAP32[$pIter>>2]|0; + _walIteratorFree($260); + $261 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $261; + $262 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($262|0); +} +function _walCkptInfo($pWal) { + $pWal = $pWal|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pWal; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 32|0); + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 96|0); + STACKTOP = sp;return ($5|0); +} +function _walIteratorInit($pWal,$pp) { + $pWal = $pWal|0; + $pp = $pp|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; + var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; + var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; + var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; + var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aHash = 0, $aIndex = 0, $aPgno = 0, $aTmp = 0; + var $i = 0, $iLast = 0, $iZero = 0, $j = 0, $nByte = 0, $nEntry = 0, $nSegment = 0, $p = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 60|0; + $1 = sp + 56|0; + $2 = sp + 52|0; + $p = sp + 48|0; + $nSegment = sp + 44|0; + $iLast = sp + 40|0; + $nByte = sp + 36|0; + $i = sp + 32|0; + $aTmp = sp + 28|0; + $rc = sp + 20|0; + $aHash = sp + 16|0; + $iZero = sp + 12|0; + $aPgno = sp + 8|0; + $j = sp + 4|0; + $nEntry = sp; + $aIndex = sp + 24|0; + HEAP32[$1>>2] = $pWal; + HEAP32[$2>>2] = $pp; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 52|0); + $5 = (($4) + 16|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$iLast>>2] = $6; + $7 = HEAP32[$iLast>>2]|0; + $8 = (_walFramePage($7)|0); + $9 = (($8) + 1)|0; + HEAP32[$nSegment>>2] = $9; + $10 = HEAP32[$nSegment>>2]|0; + $11 = (($10) - 1)|0; + $12 = ($11*20)|0; + $13 = (28 + ($12))|0; + $14 = HEAP32[$iLast>>2]|0; + $15 = $14<<1; + $16 = (($13) + ($15))|0; + HEAP32[$nByte>>2] = $16; + $17 = HEAP32[$nByte>>2]|0; + $18 = (_sqlite3ScratchMalloc($17)|0); + HEAP32[$p>>2] = $18; + $19 = HEAP32[$p>>2]|0; + $20 = ($19|0)!=(0|0); + if (!($20)) { + HEAP32[$0>>2] = 7; + $115 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($115|0); + } + $21 = HEAP32[$p>>2]|0; + $22 = HEAP32[$nByte>>2]|0; + _memset(($21|0),0,($22|0))|0; + $23 = HEAP32[$nSegment>>2]|0; + $24 = HEAP32[$p>>2]|0; + $25 = (($24) + 4|0); + HEAP32[$25>>2] = $23; + $26 = HEAP32[$iLast>>2]|0; + $27 = ($26>>>0)>(4096); + $28 = HEAP32[$iLast>>2]|0; + $29 = $27 ? 4096 : $28; + $30 = $29<<1; + $31 = (_sqlite3ScratchMalloc($30)|0); + HEAP32[$aTmp>>2] = $31; + $32 = HEAP32[$aTmp>>2]|0; + $33 = ($32|0)!=(0|0); + if (!($33)) { + HEAP32[$rc>>2] = 7; + } + HEAP32[$i>>2] = 0; + while(1) { + $34 = HEAP32[$rc>>2]|0; + $35 = ($34|0)==(0); + if (!($35)) { + break; + } + $36 = HEAP32[$i>>2]|0; + $37 = HEAP32[$nSegment>>2]|0; + $38 = ($36|0)<($37|0); + if (!($38)) { + break; + } + $39 = HEAP32[$1>>2]|0; + $40 = HEAP32[$i>>2]|0; + $41 = (_walHashGet($39,$40,$aHash,$aPgno,$iZero)|0); + HEAP32[$rc>>2] = $41; + $42 = HEAP32[$rc>>2]|0; + $43 = ($42|0)==(0); + if ($43) { + $44 = HEAP32[$aPgno>>2]|0; + $45 = (($44) + 4|0); + HEAP32[$aPgno>>2] = $45; + $46 = HEAP32[$i>>2]|0; + $47 = (($46) + 1)|0; + $48 = HEAP32[$nSegment>>2]|0; + $49 = ($47|0)==($48|0); + if ($49) { + $50 = HEAP32[$iLast>>2]|0; + $51 = HEAP32[$iZero>>2]|0; + $52 = (($50) - ($51))|0; + HEAP32[$nEntry>>2] = $52; + } else { + $53 = HEAP32[$aHash>>2]|0; + $54 = HEAP32[$aPgno>>2]|0; + $55 = $53; + $56 = $54; + $57 = (($55) - ($56))|0; + $58 = (($57|0) / 4)&-1; + HEAP32[$nEntry>>2] = $58; + } + $59 = HEAP32[$iZero>>2]|0; + $60 = HEAP32[$p>>2]|0; + $61 = (($60) + 4|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$p>>2]|0; + $64 = (($63) + 8|0); + $65 = (($64) + (($62*20)|0)|0); + $66 = (($65) + ($59<<1)|0); + HEAP32[$aIndex>>2] = $66; + $67 = HEAP32[$iZero>>2]|0; + $68 = (($67) + 1)|0; + HEAP32[$iZero>>2] = $68; + HEAP32[$j>>2] = 0; + while(1) { + $69 = HEAP32[$j>>2]|0; + $70 = HEAP32[$nEntry>>2]|0; + $71 = ($69|0)<($70|0); + if (!($71)) { + break; + } + $72 = HEAP32[$j>>2]|0; + $73 = $72&65535; + $74 = HEAP32[$j>>2]|0; + $75 = HEAP32[$aIndex>>2]|0; + $76 = (($75) + ($74<<1)|0); + HEAP16[$76>>1] = $73; + $77 = HEAP32[$j>>2]|0; + $78 = (($77) + 1)|0; + HEAP32[$j>>2] = $78; + } + $79 = HEAP32[$aPgno>>2]|0; + $80 = HEAP32[$aTmp>>2]|0; + $81 = HEAP32[$aIndex>>2]|0; + _walMergesort($79,$80,$81,$nEntry); + $82 = HEAP32[$iZero>>2]|0; + $83 = HEAP32[$i>>2]|0; + $84 = HEAP32[$p>>2]|0; + $85 = (($84) + 8|0); + $86 = (($85) + (($83*20)|0)|0); + $87 = (($86) + 16|0); + HEAP32[$87>>2] = $82; + $88 = HEAP32[$nEntry>>2]|0; + $89 = HEAP32[$i>>2]|0; + $90 = HEAP32[$p>>2]|0; + $91 = (($90) + 8|0); + $92 = (($91) + (($89*20)|0)|0); + $93 = (($92) + 12|0); + HEAP32[$93>>2] = $88; + $94 = HEAP32[$aIndex>>2]|0; + $95 = HEAP32[$i>>2]|0; + $96 = HEAP32[$p>>2]|0; + $97 = (($96) + 8|0); + $98 = (($97) + (($95*20)|0)|0); + $99 = (($98) + 4|0); + HEAP32[$99>>2] = $94; + $100 = HEAP32[$aPgno>>2]|0; + $101 = HEAP32[$i>>2]|0; + $102 = HEAP32[$p>>2]|0; + $103 = (($102) + 8|0); + $104 = (($103) + (($101*20)|0)|0); + $105 = (($104) + 8|0); + HEAP32[$105>>2] = $100; + } + $106 = HEAP32[$i>>2]|0; + $107 = (($106) + 1)|0; + HEAP32[$i>>2] = $107; + } + $108 = HEAP32[$aTmp>>2]|0; + _sqlite3ScratchFree($108); + $109 = HEAP32[$rc>>2]|0; + $110 = ($109|0)!=(0); + if ($110) { + $111 = HEAP32[$p>>2]|0; + _walIteratorFree($111); + } + $112 = HEAP32[$p>>2]|0; + $113 = HEAP32[$2>>2]|0; + HEAP32[$113>>2] = $112; + $114 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $114; + $115 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($115|0); +} +function _walIteratorNext($p,$piPage,$piFrame) { + $p = $p|0; + $piPage = $piPage|0; + $piFrame = $piFrame|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $iMin = 0, $iPg = 0, $iRet = 0, $pSegment = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $iMin = sp + 8|0; + $iRet = sp + 12|0; + $i = sp + 16|0; + $pSegment = sp + 20|0; + $iPg = sp + 24|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $piPage; + HEAP32[$2>>2] = $piFrame; + HEAP32[$iRet>>2] = -1; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$iMin>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 4|0); + $7 = HEAP32[$6>>2]|0; + $8 = (($7) - 1)|0; + HEAP32[$i>>2] = $8; + while(1) { + $9 = HEAP32[$i>>2]|0; + $10 = ($9|0)>=(0); + if (!($10)) { + break; + } + $11 = HEAP32[$i>>2]|0; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 8|0); + $14 = (($13) + (($11*20)|0)|0); + HEAP32[$pSegment>>2] = $14; + while(1) { + $15 = HEAP32[$pSegment>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$pSegment>>2]|0; + $18 = (($17) + 12|0); + $19 = HEAP32[$18>>2]|0; + $20 = ($16|0)<($19|0); + if (!($20)) { + break; + } + $21 = HEAP32[$pSegment>>2]|0; + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$pSegment>>2]|0; + $24 = (($23) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + ($22<<1)|0); + $27 = HEAP16[$26>>1]|0; + $28 = $27&65535; + $29 = HEAP32[$pSegment>>2]|0; + $30 = (($29) + 8|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + ($28<<2)|0); + $33 = HEAP32[$32>>2]|0; + HEAP32[$iPg>>2] = $33; + $34 = HEAP32[$iPg>>2]|0; + $35 = HEAP32[$iMin>>2]|0; + $36 = ($34>>>0)>($35>>>0); + if ($36) { + label = 6; + break; + } + $54 = HEAP32[$pSegment>>2]|0; + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + 1)|0; + HEAP32[$54>>2] = $56; + } + if ((label|0) == 6) { + label = 0; + $37 = HEAP32[$iPg>>2]|0; + $38 = HEAP32[$iRet>>2]|0; + $39 = ($37>>>0)<($38>>>0); + if ($39) { + $40 = HEAP32[$iPg>>2]|0; + HEAP32[$iRet>>2] = $40; + $41 = HEAP32[$pSegment>>2]|0; + $42 = (($41) + 16|0); + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$pSegment>>2]|0; + $45 = HEAP32[$44>>2]|0; + $46 = HEAP32[$pSegment>>2]|0; + $47 = (($46) + 4|0); + $48 = HEAP32[$47>>2]|0; + $49 = (($48) + ($45<<1)|0); + $50 = HEAP16[$49>>1]|0; + $51 = $50&65535; + $52 = (($43) + ($51))|0; + $53 = HEAP32[$2>>2]|0; + HEAP32[$53>>2] = $52; + } + } + $57 = HEAP32[$i>>2]|0; + $58 = (($57) + -1)|0; + HEAP32[$i>>2] = $58; + } + $59 = HEAP32[$iRet>>2]|0; + $60 = HEAP32[$0>>2]|0; + HEAP32[$60>>2] = $59; + $61 = HEAP32[$1>>2]|0; + HEAP32[$61>>2] = $59; + $62 = HEAP32[$iRet>>2]|0; + $63 = ($62|0)==(-1); + $64 = $63&1; + STACKTOP = sp;return ($64|0); +} +function _walIteratorFree($p) { + $p = $p|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + _sqlite3ScratchFree($1); + STACKTOP = sp;return; +} +function _walMergesort($aContent,$aBuffer,$aList,$pnList) { + $aContent = $aContent|0; + $aBuffer = $aBuffer|0; + $aList = $aList|0; + $pnList = $pnList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aMerge = 0; + var $aSub = 0, $iList = 0, $iSub = 0, $nList = 0, $nMerge = 0, $p = 0, $p1 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; + $0 = sp + 148|0; + $1 = sp + 144|0; + $2 = sp + 140|0; + $3 = sp + 136|0; + $nList = sp + 132|0; + $nMerge = sp + 128|0; + $aMerge = sp + 124|0; + $iList = sp + 116|0; + $iSub = sp + 112|0; + $aSub = sp + 8|0; + $p = sp; + $p1 = sp + 120|0; + HEAP32[$0>>2] = $aContent; + HEAP32[$1>>2] = $aBuffer; + HEAP32[$2>>2] = $aList; + HEAP32[$3>>2] = $pnList; + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$nList>>2] = $5; + HEAP32[$nMerge>>2] = 0; + HEAP32[$aMerge>>2] = 0; + HEAP32[$iSub>>2] = 0; + dest=$aSub+0|0; stop=dest+104|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + HEAP32[$iList>>2] = 0; + while(1) { + $6 = HEAP32[$iList>>2]|0; + $7 = HEAP32[$nList>>2]|0; + $8 = ($6|0)<($7|0); + if (!($8)) { + break; + } + HEAP32[$nMerge>>2] = 1; + $9 = HEAP32[$iList>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = (($10) + ($9<<1)|0); + HEAP32[$aMerge>>2] = $11; + HEAP32[$iSub>>2] = 0; + while(1) { + $12 = HEAP32[$iList>>2]|0; + $13 = HEAP32[$iSub>>2]|0; + $14 = 1 << $13; + $15 = $12 & $14; + $16 = ($15|0)!=(0); + if (!($16)) { + break; + } + $17 = HEAP32[$iSub>>2]|0; + $18 = (($aSub) + ($17<<3)|0); + HEAP32[$p>>2] = $18; + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 4|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$p>>2]|0; + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$1>>2]|0; + _walMerge($19,$22,$24,$aMerge,$nMerge,$25); + $26 = HEAP32[$iSub>>2]|0; + $27 = (($26) + 1)|0; + HEAP32[$iSub>>2] = $27; + } + $28 = HEAP32[$aMerge>>2]|0; + $29 = HEAP32[$iSub>>2]|0; + $30 = (($aSub) + ($29<<3)|0); + $31 = (($30) + 4|0); + HEAP32[$31>>2] = $28; + $32 = HEAP32[$nMerge>>2]|0; + $33 = HEAP32[$iSub>>2]|0; + $34 = (($aSub) + ($33<<3)|0); + HEAP32[$34>>2] = $32; + $35 = HEAP32[$iList>>2]|0; + $36 = (($35) + 1)|0; + HEAP32[$iList>>2] = $36; + } + $37 = HEAP32[$iSub>>2]|0; + $38 = (($37) + 1)|0; + HEAP32[$iSub>>2] = $38; + while(1) { + $39 = HEAP32[$iSub>>2]|0; + $40 = ($39|0)<(13); + if (!($40)) { + break; + } + $41 = HEAP32[$nList>>2]|0; + $42 = HEAP32[$iSub>>2]|0; + $43 = 1 << $42; + $44 = $41 & $43; + $45 = ($44|0)!=(0); + if ($45) { + $46 = HEAP32[$iSub>>2]|0; + $47 = (($aSub) + ($46<<3)|0); + HEAP32[$p1>>2] = $47; + $48 = HEAP32[$0>>2]|0; + $49 = HEAP32[$p1>>2]|0; + $50 = (($49) + 4|0); + $51 = HEAP32[$50>>2]|0; + $52 = HEAP32[$p1>>2]|0; + $53 = HEAP32[$52>>2]|0; + $54 = HEAP32[$1>>2]|0; + _walMerge($48,$51,$53,$aMerge,$nMerge,$54); + } + $55 = HEAP32[$iSub>>2]|0; + $56 = (($55) + 1)|0; + HEAP32[$iSub>>2] = $56; + } + $57 = HEAP32[$nMerge>>2]|0; + $58 = HEAP32[$3>>2]|0; + HEAP32[$58>>2] = $57; + STACKTOP = sp;return; +} +function _walMerge($aContent,$aLeft,$nLeft,$paRight,$pnRight,$aTmp) { + $aContent = $aContent|0; + $aLeft = $aLeft|0; + $nLeft = $nLeft|0; + $paRight = $paRight|0; + $pnRight = $pnRight|0; + $aTmp = $aTmp|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $9 = 0, $aRight = 0, $dbpage = 0, $iLeft = 0, $iOut = 0, $iRight = 0, $logpage = 0, $nRight = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $4 = sp + 28|0; + $5 = sp + 24|0; + $iLeft = sp + 20|0; + $iRight = sp + 12|0; + $iOut = sp + 8|0; + $nRight = sp + 4|0; + $aRight = sp; + $logpage = sp + 48|0; + $dbpage = sp + 16|0; + HEAP32[$0>>2] = $aContent; + HEAP32[$1>>2] = $aLeft; + HEAP32[$2>>2] = $nLeft; + HEAP32[$3>>2] = $paRight; + HEAP32[$4>>2] = $pnRight; + HEAP32[$5>>2] = $aTmp; + HEAP32[$iLeft>>2] = 0; + HEAP32[$iRight>>2] = 0; + HEAP32[$iOut>>2] = 0; + $6 = HEAP32[$4>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$nRight>>2] = $7; + $8 = HEAP32[$3>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$aRight>>2] = $9; + while(1) { + $10 = HEAP32[$iRight>>2]|0; + $11 = HEAP32[$nRight>>2]|0; + $12 = ($10|0)<($11|0); + if (!($12)) { + $13 = HEAP32[$iLeft>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = ($13|0)<($14|0); + if (!($15)) { + break; + } + } + $16 = HEAP32[$iLeft>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = ($16|0)<($17|0); + do { + if ($18) { + $19 = HEAP32[$iRight>>2]|0; + $20 = HEAP32[$nRight>>2]|0; + $21 = ($19|0)>=($20|0); + if (!($21)) { + $22 = HEAP32[$iLeft>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + ($22<<1)|0); + $25 = HEAP16[$24>>1]|0; + $26 = $25&65535; + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + ($26<<2)|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$iRight>>2]|0; + $31 = HEAP32[$aRight>>2]|0; + $32 = (($31) + ($30<<1)|0); + $33 = HEAP16[$32>>1]|0; + $34 = $33&65535; + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + ($34<<2)|0); + $37 = HEAP32[$36>>2]|0; + $38 = ($29>>>0)<($37>>>0); + if (!($38)) { + label = 8; + break; + } + } + $39 = HEAP32[$iLeft>>2]|0; + $40 = (($39) + 1)|0; + HEAP32[$iLeft>>2] = $40; + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + ($39<<1)|0); + $43 = HEAP16[$42>>1]|0; + HEAP16[$logpage>>1] = $43; + } else { + label = 8; + } + } while(0); + if ((label|0) == 8) { + label = 0; + $44 = HEAP32[$iRight>>2]|0; + $45 = (($44) + 1)|0; + HEAP32[$iRight>>2] = $45; + $46 = HEAP32[$aRight>>2]|0; + $47 = (($46) + ($44<<1)|0); + $48 = HEAP16[$47>>1]|0; + HEAP16[$logpage>>1] = $48; + } + $49 = HEAP16[$logpage>>1]|0; + $50 = $49&65535; + $51 = HEAP32[$0>>2]|0; + $52 = (($51) + ($50<<2)|0); + $53 = HEAP32[$52>>2]|0; + HEAP32[$dbpage>>2] = $53; + $54 = HEAP16[$logpage>>1]|0; + $55 = HEAP32[$iOut>>2]|0; + $56 = (($55) + 1)|0; + HEAP32[$iOut>>2] = $56; + $57 = HEAP32[$5>>2]|0; + $58 = (($57) + ($55<<1)|0); + HEAP16[$58>>1] = $54; + $59 = HEAP32[$iLeft>>2]|0; + $60 = HEAP32[$2>>2]|0; + $61 = ($59|0)<($60|0); + if (!($61)) { + continue; + } + $62 = HEAP32[$iLeft>>2]|0; + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + ($62<<1)|0); + $65 = HEAP16[$64>>1]|0; + $66 = $65&65535; + $67 = HEAP32[$0>>2]|0; + $68 = (($67) + ($66<<2)|0); + $69 = HEAP32[$68>>2]|0; + $70 = HEAP32[$dbpage>>2]|0; + $71 = ($69|0)==($70|0); + if (!($71)) { + continue; + } + $72 = HEAP32[$iLeft>>2]|0; + $73 = (($72) + 1)|0; + HEAP32[$iLeft>>2] = $73; + } + $74 = HEAP32[$1>>2]|0; + $75 = HEAP32[$3>>2]|0; + HEAP32[$75>>2] = $74; + $76 = HEAP32[$iOut>>2]|0; + $77 = HEAP32[$4>>2]|0; + HEAP32[$77>>2] = $76; + $78 = HEAP32[$1>>2]|0; + $79 = HEAP32[$5>>2]|0; + $80 = HEAP32[$iOut>>2]|0; + $81 = $80<<1; + _memcpy(($78|0),($79|0),($81|0))|0; + STACKTOP = sp;return; +} +function _walIndexTryHdr($pWal,$pChanged) { + $pWal = $pWal|0; + $pChanged = $pChanged|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aCksum = 0, $aHdr = 0, $h1 = 0, $h2 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $0 = sp + 116|0; + $1 = sp; + $2 = sp + 4|0; + $aCksum = sp + 8|0; + $h1 = sp + 16|0; + $h2 = sp + 64|0; + $aHdr = sp + 112|0; + HEAP32[$1>>2] = $pWal; + HEAP32[$2>>2] = $pChanged; + $3 = HEAP32[$1>>2]|0; + $4 = (_walIndexHdr($3)|0); + HEAP32[$aHdr>>2] = $4; + $5 = HEAP32[$aHdr>>2]|0; + dest=$h1+0|0; src=$5+0|0; stop=dest+48|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $6 = HEAP32[$1>>2]|0; + _walShmBarrier($6); + $7 = HEAP32[$aHdr>>2]|0; + $8 = (($7) + 48|0); + dest=$h2+0|0; src=$8+0|0; stop=dest+48|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $9 = (_memcmp($h1,$h2,48)|0); + $10 = ($9|0)!=(0); + if ($10) { + HEAP32[$0>>2] = 1; + $48 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($48|0); + } + $11 = (($h1) + 12|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = ($13|0)==(0); + if ($14) { + HEAP32[$0>>2] = 1; + $48 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($48|0); + } + _walChecksumBytes(1,$h1,40,0,$aCksum); + $15 = HEAP32[$aCksum>>2]|0; + $16 = (($h1) + 40|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($15|0)!=($17|0); + if (!($18)) { + $19 = (($aCksum) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($h1) + 40|0); + $22 = (($21) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = ($20|0)!=($23|0); + if (!($24)) { + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 52|0); + $27 = (_memcmp($26,$h1,48)|0); + $28 = ($27|0)!=(0); + if ($28) { + $29 = HEAP32[$2>>2]|0; + HEAP32[$29>>2] = 1; + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 52|0); + dest=$31+0|0; src=$h1+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 52|0); + $34 = (($33) + 14|0); + $35 = HEAP16[$34>>1]|0; + $36 = $35&65535; + $37 = $36 & 65024; + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 52|0); + $40 = (($39) + 14|0); + $41 = HEAP16[$40>>1]|0; + $42 = $41&65535; + $43 = $42 & 1; + $44 = $43 << 16; + $45 = (($37) + ($44))|0; + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 36|0); + HEAP32[$47>>2] = $45; + } + HEAP32[$0>>2] = 0; + $48 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($48|0); + } + } + HEAP32[$0>>2] = 1; + $48 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($48|0); +} +function _walIndexRecover($pWal) { + $pWal = $pWal|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aBuf = 0, $aData = 0, $aFrame = 0, $aFrameCksum = 0, $i = 0, $iFrame = 0, $iLock = 0, $iOffset = 0, $isValid = 0, $magic = 0, $nLock = 0; + var $nSize = 0, $nTruncate = 0, $or$cond = 0, $or$cond3 = 0, $pInfo = 0, $pgno = 0, $rc = 0, $szFrame = 0, $szPage = 0, $vararg_buffer = 0, $vararg_ptr4 = 0, $version = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; + $vararg_buffer = sp + 16|0; + $0 = sp + 96|0; + $1 = sp + 92|0; + $rc = sp + 88|0; + $nSize = sp + 8|0; + $aFrameCksum = sp + 80|0; + $iLock = sp + 72|0; + $nLock = sp + 68|0; + $aBuf = sp + 104|0; + $aFrame = sp + 64|0; + $szFrame = sp + 60|0; + $aData = sp + 100|0; + $iFrame = sp + 28|0; + $iOffset = sp; + $szPage = sp + 36|0; + $magic = sp + 24|0; + $version = sp + 32|0; + $isValid = sp + 52|0; + $pgno = sp + 40|0; + $nTruncate = sp + 44|0; + $pInfo = sp + 48|0; + $i = sp + 56|0; + HEAP32[$1>>2] = $pWal; + ;HEAP32[$aFrameCksum+0>>2]=0|0;HEAP32[$aFrameCksum+4>>2]=0|0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 45|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = (1 + ($5))|0; + HEAP32[$iLock>>2] = $6; + $7 = HEAP32[$iLock>>2]|0; + $8 = (8 - ($7))|0; + HEAP32[$nLock>>2] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$iLock>>2]|0; + $11 = HEAP32[$nLock>>2]|0; + $12 = (_walLockExclusive($9,$10,$11)|0); + HEAP32[$rc>>2] = $12; + $13 = HEAP32[$rc>>2]|0; + $14 = ($13|0)!=(0); + if ($14) { + $15 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $15; + $268 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($268|0); + } + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 52|0); + dest=$17+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 8|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3OsFileSize($20,$nSize)|0); + HEAP32[$rc>>2] = $21; + $22 = HEAP32[$rc>>2]|0; + $23 = ($22|0)!=(0); + L5: do { + if (!($23)) { + $24 = $nSize; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = (($24) + 4)|0; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = ($29|0)>(0); + $31 = ($29|0)==(0); + $32 = ($26>>>0)>(32); + $33 = $31 & $32; + $34 = $30 | $33; + do { + if ($34) { + HEAP32[$aFrame>>2] = 0; + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 8|0); + $37 = HEAP32[$36>>2]|0; + $38 = (_sqlite3OsRead($37,$aBuf,32,0,0)|0); + HEAP32[$rc>>2] = $38; + $39 = HEAP32[$rc>>2]|0; + $40 = ($39|0)!=(0); + if ($40) { + break L5; + } + $41 = (_sqlite3Get4byte($aBuf)|0); + HEAP32[$magic>>2] = $41; + $42 = (($aBuf) + 8|0); + $43 = (_sqlite3Get4byte($42)|0); + HEAP32[$szPage>>2] = $43; + $44 = HEAP32[$magic>>2]|0; + $45 = $44 & -2; + $46 = ($45|0)!=(931071618); + if (!($46)) { + $47 = HEAP32[$szPage>>2]|0; + $48 = HEAP32[$szPage>>2]|0; + $49 = (($48) - 1)|0; + $50 = $47 & $49; + $51 = ($50|0)!=(0); + $52 = HEAP32[$szPage>>2]|0; + $53 = ($52|0)>(65536); + $or$cond = $51 | $53; + $54 = HEAP32[$szPage>>2]|0; + $55 = ($54|0)<(512); + $or$cond3 = $or$cond | $55; + if (!($or$cond3)) { + $56 = HEAP32[$magic>>2]|0; + $57 = $56 & 1; + $58 = $57&255; + $59 = HEAP32[$1>>2]|0; + $60 = (($59) + 52|0); + $61 = (($60) + 13|0); + HEAP8[$61>>0] = $58; + $62 = HEAP32[$szPage>>2]|0; + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + 36|0); + HEAP32[$64>>2] = $62; + $65 = (($aBuf) + 12|0); + $66 = (_sqlite3Get4byte($65)|0); + $67 = HEAP32[$1>>2]|0; + $68 = (($67) + 104|0); + HEAP32[$68>>2] = $66; + $69 = HEAP32[$1>>2]|0; + $70 = (($69) + 52|0); + $71 = (($70) + 32|0); + $72 = (($aBuf) + 16|0); + ;HEAP8[$71+0>>0]=HEAP8[$72+0>>0]|0;HEAP8[$71+1>>0]=HEAP8[$72+1>>0]|0;HEAP8[$71+2>>0]=HEAP8[$72+2>>0]|0;HEAP8[$71+3>>0]=HEAP8[$72+3>>0]|0;HEAP8[$71+4>>0]=HEAP8[$72+4>>0]|0;HEAP8[$71+5>>0]=HEAP8[$72+5>>0]|0;HEAP8[$71+6>>0]=HEAP8[$72+6>>0]|0;HEAP8[$71+7>>0]=HEAP8[$72+7>>0]|0; + $73 = HEAP32[$1>>2]|0; + $74 = (($73) + 52|0); + $75 = (($74) + 13|0); + $76 = HEAP8[$75>>0]|0; + $77 = $76&255; + $78 = HEAP8[1480>>0]|0; + $79 = $78 << 24 >> 24; + $80 = ($79|0)==(0); + $81 = $80&1; + $82 = ($77|0)==($81|0); + $83 = $82&1; + $84 = HEAP32[$1>>2]|0; + $85 = (($84) + 52|0); + $86 = (($85) + 24|0); + _walChecksumBytes($83,$aBuf,24,0,$86); + $87 = HEAP32[$1>>2]|0; + $88 = (($87) + 52|0); + $89 = (($88) + 24|0); + $90 = HEAP32[$89>>2]|0; + $91 = (($aBuf) + 24|0); + $92 = (_sqlite3Get4byte($91)|0); + $93 = ($90|0)!=($92|0); + if (!($93)) { + $94 = HEAP32[$1>>2]|0; + $95 = (($94) + 52|0); + $96 = (($95) + 24|0); + $97 = (($96) + 4|0); + $98 = HEAP32[$97>>2]|0; + $99 = (($aBuf) + 28|0); + $100 = (_sqlite3Get4byte($99)|0); + $101 = ($98|0)!=($100|0); + if (!($101)) { + $102 = (($aBuf) + 4|0); + $103 = (_sqlite3Get4byte($102)|0); + HEAP32[$version>>2] = $103; + $104 = HEAP32[$version>>2]|0; + $105 = ($104|0)!=(3007000); + if ($105) { + $106 = (_sqlite3CantopenError(48238)|0); + HEAP32[$rc>>2] = $106; + break; + } + $107 = HEAP32[$szPage>>2]|0; + $108 = (($107) + 24)|0; + HEAP32[$szFrame>>2] = $108; + $109 = HEAP32[$szFrame>>2]|0; + $110 = (_sqlite3_malloc($109)|0); + HEAP32[$aFrame>>2] = $110; + $111 = HEAP32[$aFrame>>2]|0; + $112 = ($111|0)!=(0|0); + if (!($112)) { + HEAP32[$rc>>2] = 7; + break L5; + } + $113 = HEAP32[$aFrame>>2]|0; + $114 = (($113) + 24|0); + HEAP32[$aData>>2] = $114; + HEAP32[$iFrame>>2] = 0; + $115 = $iOffset; + $116 = $115; + HEAP32[$116>>2] = 32; + $117 = (($115) + 4)|0; + $118 = $117; + HEAP32[$118>>2] = 0; + while(1) { + $119 = $iOffset; + $120 = $119; + $121 = HEAP32[$120>>2]|0; + $122 = (($119) + 4)|0; + $123 = $122; + $124 = HEAP32[$123>>2]|0; + $125 = HEAP32[$szFrame>>2]|0; + $126 = ($125|0)<(0); + $127 = $126 << 31 >> 31; + $128 = (_i64Add(($121|0),($124|0),($125|0),($127|0))|0); + $129 = tempRet0; + $130 = $nSize; + $131 = $130; + $132 = HEAP32[$131>>2]|0; + $133 = (($130) + 4)|0; + $134 = $133; + $135 = HEAP32[$134>>2]|0; + $136 = ($129|0)<($135|0); + $137 = ($129|0)==($135|0); + $138 = ($128>>>0)<=($132>>>0); + $139 = $137 & $138; + $140 = $136 | $139; + if (!($140)) { + break; + } + $141 = HEAP32[$iFrame>>2]|0; + $142 = (($141) + 1)|0; + HEAP32[$iFrame>>2] = $142; + $143 = HEAP32[$1>>2]|0; + $144 = (($143) + 8|0); + $145 = HEAP32[$144>>2]|0; + $146 = HEAP32[$aFrame>>2]|0; + $147 = HEAP32[$szFrame>>2]|0; + $148 = $iOffset; + $149 = $148; + $150 = HEAP32[$149>>2]|0; + $151 = (($148) + 4)|0; + $152 = $151; + $153 = HEAP32[$152>>2]|0; + $154 = (_sqlite3OsRead($145,$146,$147,$150,$153)|0); + HEAP32[$rc>>2] = $154; + $155 = HEAP32[$rc>>2]|0; + $156 = ($155|0)!=(0); + if ($156) { + break; + } + $157 = HEAP32[$1>>2]|0; + $158 = HEAP32[$aData>>2]|0; + $159 = HEAP32[$aFrame>>2]|0; + $160 = (_walDecodeFrame($157,$pgno,$nTruncate,$158,$159)|0); + HEAP32[$isValid>>2] = $160; + $161 = HEAP32[$isValid>>2]|0; + $162 = ($161|0)!=(0); + if (!($162)) { + break; + } + $163 = HEAP32[$1>>2]|0; + $164 = HEAP32[$iFrame>>2]|0; + $165 = HEAP32[$pgno>>2]|0; + $166 = (_walIndexAppend($163,$164,$165)|0); + HEAP32[$rc>>2] = $166; + $167 = HEAP32[$rc>>2]|0; + $168 = ($167|0)!=(0); + if ($168) { + break; + } + $169 = HEAP32[$nTruncate>>2]|0; + $170 = ($169|0)!=(0); + if ($170) { + $171 = HEAP32[$iFrame>>2]|0; + $172 = HEAP32[$1>>2]|0; + $173 = (($172) + 52|0); + $174 = (($173) + 16|0); + HEAP32[$174>>2] = $171; + $175 = HEAP32[$nTruncate>>2]|0; + $176 = HEAP32[$1>>2]|0; + $177 = (($176) + 52|0); + $178 = (($177) + 20|0); + HEAP32[$178>>2] = $175; + $179 = HEAP32[$szPage>>2]|0; + $180 = $179 & 65280; + $181 = HEAP32[$szPage>>2]|0; + $182 = $181 >> 16; + $183 = $180 | $182; + $184 = $183&65535; + $185 = HEAP32[$1>>2]|0; + $186 = (($185) + 52|0); + $187 = (($186) + 14|0); + HEAP16[$187>>1] = $184; + $188 = HEAP32[$1>>2]|0; + $189 = (($188) + 52|0); + $190 = (($189) + 24|0); + $191 = HEAP32[$190>>2]|0; + HEAP32[$aFrameCksum>>2] = $191; + $192 = HEAP32[$1>>2]|0; + $193 = (($192) + 52|0); + $194 = (($193) + 24|0); + $195 = (($194) + 4|0); + $196 = HEAP32[$195>>2]|0; + $197 = (($aFrameCksum) + 4|0); + HEAP32[$197>>2] = $196; + } + $198 = HEAP32[$szFrame>>2]|0; + $199 = ($198|0)<(0); + $200 = $199 << 31 >> 31; + $201 = $iOffset; + $202 = $201; + $203 = HEAP32[$202>>2]|0; + $204 = (($201) + 4)|0; + $205 = $204; + $206 = HEAP32[$205>>2]|0; + $207 = (_i64Add(($203|0),($206|0),($198|0),($200|0))|0); + $208 = tempRet0; + $209 = $iOffset; + $210 = $209; + HEAP32[$210>>2] = $207; + $211 = (($209) + 4)|0; + $212 = $211; + HEAP32[$212>>2] = $208; + } + $213 = HEAP32[$aFrame>>2]|0; + _sqlite3_free($213); + } + } + } + } + } + } while(0); + $214 = HEAP32[$rc>>2]|0; + $215 = ($214|0)==(0); + if ($215) { + $216 = HEAP32[$aFrameCksum>>2]|0; + $217 = HEAP32[$1>>2]|0; + $218 = (($217) + 52|0); + $219 = (($218) + 24|0); + HEAP32[$219>>2] = $216; + $220 = (($aFrameCksum) + 4|0); + $221 = HEAP32[$220>>2]|0; + $222 = HEAP32[$1>>2]|0; + $223 = (($222) + 52|0); + $224 = (($223) + 24|0); + $225 = (($224) + 4|0); + HEAP32[$225>>2] = $221; + $226 = HEAP32[$1>>2]|0; + _walIndexWriteHdr($226); + $227 = HEAP32[$1>>2]|0; + $228 = (_walCkptInfo($227)|0); + HEAP32[$pInfo>>2] = $228; + $229 = HEAP32[$pInfo>>2]|0; + HEAP32[$229>>2] = 0; + $230 = HEAP32[$pInfo>>2]|0; + $231 = (($230) + 4|0); + HEAP32[$231>>2] = 0; + HEAP32[$i>>2] = 1; + while(1) { + $232 = HEAP32[$i>>2]|0; + $233 = ($232|0)<(5); + if (!($233)) { + break; + } + $234 = HEAP32[$i>>2]|0; + $235 = HEAP32[$pInfo>>2]|0; + $236 = (($235) + 4|0); + $237 = (($236) + ($234<<2)|0); + HEAP32[$237>>2] = -1; + $238 = HEAP32[$i>>2]|0; + $239 = (($238) + 1)|0; + HEAP32[$i>>2] = $239; + } + $240 = HEAP32[$1>>2]|0; + $241 = (($240) + 52|0); + $242 = (($241) + 16|0); + $243 = HEAP32[$242>>2]|0; + $244 = ($243|0)!=(0); + if ($244) { + $245 = HEAP32[$1>>2]|0; + $246 = (($245) + 52|0); + $247 = (($246) + 16|0); + $248 = HEAP32[$247>>2]|0; + $249 = HEAP32[$pInfo>>2]|0; + $250 = (($249) + 4|0); + $251 = (($250) + 4|0); + HEAP32[$251>>2] = $248; + } + $252 = HEAP32[$1>>2]|0; + $253 = (($252) + 52|0); + $254 = (($253) + 20|0); + $255 = HEAP32[$254>>2]|0; + $256 = ($255|0)!=(0); + if ($256) { + $257 = HEAP32[$1>>2]|0; + $258 = (($257) + 52|0); + $259 = (($258) + 16|0); + $260 = HEAP32[$259>>2]|0; + $261 = HEAP32[$1>>2]|0; + $262 = (($261) + 100|0); + $263 = HEAP32[$262>>2]|0; + HEAP32[$vararg_buffer>>2] = $260; + $vararg_ptr4 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr4>>2] = $263; + _sqlite3_log(283,11120,$vararg_buffer); + } + } + } + } while(0); + $264 = HEAP32[$1>>2]|0; + $265 = HEAP32[$iLock>>2]|0; + $266 = HEAP32[$nLock>>2]|0; + _walUnlockExclusive($264,$265,$266); + $267 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $267; + $268 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($268|0); +} +function _sqlite3CantopenError($lineno) { + $lineno = $lineno|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 8|0; + HEAP32[$0>>2] = $lineno; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3_sourceid()|0); + $3 = (($2) + 20|0); + HEAP32[$vararg_buffer>>2] = $1; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $3; + _sqlite3_log(14,11080,$vararg_buffer); + STACKTOP = sp;return 14; +} +function _walChecksumBytes($nativeCksum,$a,$nByte,$aIn,$aOut) { + $nativeCksum = $nativeCksum|0; + $a = $a|0; + $nByte = $nByte|0; + $aIn = $aIn|0; + $aOut = $aOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $aData = 0, $aEnd = 0, $s1 = 0, $s2 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $4 = sp + 16|0; + $s1 = sp + 8|0; + $s2 = sp + 4|0; + $aData = sp; + $aEnd = sp + 12|0; + HEAP32[$0>>2] = $nativeCksum; + HEAP32[$1>>2] = $a; + HEAP32[$2>>2] = $nByte; + HEAP32[$3>>2] = $aIn; + HEAP32[$4>>2] = $aOut; + $5 = HEAP32[$1>>2]|0; + HEAP32[$aData>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + ($6)|0); + HEAP32[$aEnd>>2] = $8; + $9 = HEAP32[$3>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = HEAP32[$3>>2]|0; + $12 = HEAP32[$11>>2]|0; + HEAP32[$s1>>2] = $12; + $13 = HEAP32[$3>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$s2>>2] = $15; + } else { + HEAP32[$s2>>2] = 0; + HEAP32[$s1>>2] = 0; + } + $16 = HEAP32[$0>>2]|0; + $17 = ($16|0)!=(0); + if ($17) { + while(1) { + $18 = HEAP32[$aData>>2]|0; + $19 = (($18) + 4|0); + HEAP32[$aData>>2] = $19; + $20 = HEAP32[$18>>2]|0; + $21 = HEAP32[$s2>>2]|0; + $22 = (($20) + ($21))|0; + $23 = HEAP32[$s1>>2]|0; + $24 = (($23) + ($22))|0; + HEAP32[$s1>>2] = $24; + $25 = HEAP32[$aData>>2]|0; + $26 = (($25) + 4|0); + HEAP32[$aData>>2] = $26; + $27 = HEAP32[$25>>2]|0; + $28 = HEAP32[$s1>>2]|0; + $29 = (($27) + ($28))|0; + $30 = HEAP32[$s2>>2]|0; + $31 = (($30) + ($29))|0; + HEAP32[$s2>>2] = $31; + $32 = HEAP32[$aData>>2]|0; + $33 = HEAP32[$aEnd>>2]|0; + $34 = ($32>>>0)<($33>>>0); + if (!($34)) { + break; + } + } + $90 = HEAP32[$s1>>2]|0; + $91 = HEAP32[$4>>2]|0; + HEAP32[$91>>2] = $90; + $92 = HEAP32[$s2>>2]|0; + $93 = HEAP32[$4>>2]|0; + $94 = (($93) + 4|0); + HEAP32[$94>>2] = $92; + STACKTOP = sp;return; + } else { + while(1) { + $35 = HEAP32[$aData>>2]|0; + $36 = HEAP32[$35>>2]|0; + $37 = $36 & 255; + $38 = $37 << 24; + $39 = HEAP32[$aData>>2]|0; + $40 = HEAP32[$39>>2]|0; + $41 = $40 & 65280; + $42 = $41 << 8; + $43 = (($38) + ($42))|0; + $44 = HEAP32[$aData>>2]|0; + $45 = HEAP32[$44>>2]|0; + $46 = $45 & 16711680; + $47 = $46 >>> 8; + $48 = (($43) + ($47))|0; + $49 = HEAP32[$aData>>2]|0; + $50 = HEAP32[$49>>2]|0; + $51 = $50 & -16777216; + $52 = $51 >>> 24; + $53 = (($48) + ($52))|0; + $54 = HEAP32[$s2>>2]|0; + $55 = (($53) + ($54))|0; + $56 = HEAP32[$s1>>2]|0; + $57 = (($56) + ($55))|0; + HEAP32[$s1>>2] = $57; + $58 = HEAP32[$aData>>2]|0; + $59 = (($58) + 4|0); + $60 = HEAP32[$59>>2]|0; + $61 = $60 & 255; + $62 = $61 << 24; + $63 = HEAP32[$aData>>2]|0; + $64 = (($63) + 4|0); + $65 = HEAP32[$64>>2]|0; + $66 = $65 & 65280; + $67 = $66 << 8; + $68 = (($62) + ($67))|0; + $69 = HEAP32[$aData>>2]|0; + $70 = (($69) + 4|0); + $71 = HEAP32[$70>>2]|0; + $72 = $71 & 16711680; + $73 = $72 >>> 8; + $74 = (($68) + ($73))|0; + $75 = HEAP32[$aData>>2]|0; + $76 = (($75) + 4|0); + $77 = HEAP32[$76>>2]|0; + $78 = $77 & -16777216; + $79 = $78 >>> 24; + $80 = (($74) + ($79))|0; + $81 = HEAP32[$s1>>2]|0; + $82 = (($80) + ($81))|0; + $83 = HEAP32[$s2>>2]|0; + $84 = (($83) + ($82))|0; + HEAP32[$s2>>2] = $84; + $85 = HEAP32[$aData>>2]|0; + $86 = (($85) + 8|0); + HEAP32[$aData>>2] = $86; + $87 = HEAP32[$aData>>2]|0; + $88 = HEAP32[$aEnd>>2]|0; + $89 = ($87>>>0)<($88>>>0); + if (!($89)) { + break; + } + } + $90 = HEAP32[$s1>>2]|0; + $91 = HEAP32[$4>>2]|0; + HEAP32[$91>>2] = $90; + $92 = HEAP32[$s2>>2]|0; + $93 = HEAP32[$4>>2]|0; + $94 = (($93) + 4|0); + HEAP32[$94>>2] = $92; + STACKTOP = sp;return; + } +} +function _walDecodeFrame($pWal,$piPage,$pnTruncate,$aData,$aFrame) { + $pWal = $pWal|0; + $piPage = $piPage|0; + $pnTruncate = $pnTruncate|0; + $aData = $aData|0; + $aFrame = $aFrame|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0; + var $8 = 0, $9 = 0, $aCksum = 0, $nativeCksum = 0, $pgno = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $4 = sp + 16|0; + $5 = sp + 8|0; + $nativeCksum = sp + 4|0; + $aCksum = sp; + $pgno = sp + 12|0; + HEAP32[$1>>2] = $pWal; + HEAP32[$2>>2] = $piPage; + HEAP32[$3>>2] = $pnTruncate; + HEAP32[$4>>2] = $aData; + HEAP32[$5>>2] = $aFrame; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 52|0); + $8 = (($7) + 24|0); + HEAP32[$aCksum>>2] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 52|0); + $11 = (($10) + 32|0); + $12 = HEAP32[$5>>2]|0; + $13 = (($12) + 8|0); + $14 = (_memcmp($11,$13,8)|0); + $15 = ($14|0)!=(0); + if ($15) { + HEAP32[$0>>2] = 0; + $61 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($61|0); + } + $16 = HEAP32[$5>>2]|0; + $17 = (_sqlite3Get4byte($16)|0); + HEAP32[$pgno>>2] = $17; + $18 = HEAP32[$pgno>>2]|0; + $19 = ($18|0)==(0); + if ($19) { + HEAP32[$0>>2] = 0; + $61 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($61|0); + } + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 52|0); + $22 = (($21) + 13|0); + $23 = HEAP8[$22>>0]|0; + $24 = $23&255; + $25 = HEAP8[1480>>0]|0; + $26 = $25 << 24 >> 24; + $27 = ($26|0)==(0); + $28 = $27&1; + $29 = ($24|0)==($28|0); + $30 = $29&1; + HEAP32[$nativeCksum>>2] = $30; + $31 = HEAP32[$nativeCksum>>2]|0; + $32 = HEAP32[$5>>2]|0; + $33 = HEAP32[$aCksum>>2]|0; + $34 = HEAP32[$aCksum>>2]|0; + _walChecksumBytes($31,$32,8,$33,$34); + $35 = HEAP32[$nativeCksum>>2]|0; + $36 = HEAP32[$4>>2]|0; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 36|0); + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$aCksum>>2]|0; + $41 = HEAP32[$aCksum>>2]|0; + _walChecksumBytes($35,$36,$39,$40,$41); + $42 = HEAP32[$aCksum>>2]|0; + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$5>>2]|0; + $45 = (($44) + 16|0); + $46 = (_sqlite3Get4byte($45)|0); + $47 = ($43|0)!=($46|0); + if (!($47)) { + $48 = HEAP32[$aCksum>>2]|0; + $49 = (($48) + 4|0); + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$5>>2]|0; + $52 = (($51) + 20|0); + $53 = (_sqlite3Get4byte($52)|0); + $54 = ($50|0)!=($53|0); + if (!($54)) { + $55 = HEAP32[$pgno>>2]|0; + $56 = HEAP32[$2>>2]|0; + HEAP32[$56>>2] = $55; + $57 = HEAP32[$5>>2]|0; + $58 = (($57) + 4|0); + $59 = (_sqlite3Get4byte($58)|0); + $60 = HEAP32[$3>>2]|0; + HEAP32[$60>>2] = $59; + HEAP32[$0>>2] = 1; + $61 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($61|0); + } + } + HEAP32[$0>>2] = 0; + $61 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($61|0); +} +function _walIndexAppend($pWal,$iFrame,$iPage) { + $pWal = $pWal|0; + $iFrame = $iFrame|0; + $iPage = $iPage|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aHash = 0, $aPgno = 0, $iKey = 0, $iZero = 0; + var $idx = 0, $nByte = 0, $nCollide = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $rc = sp + 28|0; + $iZero = sp + 24|0; + $aPgno = sp + 20|0; + $aHash = sp + 12|0; + $iKey = sp + 8|0; + $idx = sp + 4|0; + $nCollide = sp; + $nByte = sp + 16|0; + HEAP32[$1>>2] = $pWal; + HEAP32[$2>>2] = $iFrame; + HEAP32[$3>>2] = $iPage; + HEAP32[$iZero>>2] = 0; + HEAP32[$aPgno>>2] = 0; + HEAP32[$aHash>>2] = 0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = (_walFramePage($5)|0); + $7 = (_walHashGet($4,$6,$aHash,$aPgno,$iZero)|0); + HEAP32[$rc>>2] = $7; + $8 = HEAP32[$rc>>2]|0; + $9 = ($8|0)==(0); + do { + if ($9) { + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$iZero>>2]|0; + $12 = (($10) - ($11))|0; + HEAP32[$idx>>2] = $12; + $13 = HEAP32[$idx>>2]|0; + $14 = ($13|0)==(1); + if ($14) { + $15 = HEAP32[$aHash>>2]|0; + $16 = (($15) + 16384|0); + $17 = HEAP32[$aPgno>>2]|0; + $18 = (($17) + 4|0); + $19 = $16; + $20 = $18; + $21 = (($19) - ($20))|0; + HEAP32[$nByte>>2] = $21; + $22 = HEAP32[$aPgno>>2]|0; + $23 = (($22) + 4|0); + $24 = HEAP32[$nByte>>2]|0; + _memset(($23|0),0,($24|0))|0; + } + $25 = HEAP32[$idx>>2]|0; + $26 = HEAP32[$aPgno>>2]|0; + $27 = (($26) + ($25<<2)|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)!=(0); + if ($29) { + $30 = HEAP32[$1>>2]|0; + _walCleanupHash($30); + } + $31 = HEAP32[$idx>>2]|0; + HEAP32[$nCollide>>2] = $31; + $32 = HEAP32[$3>>2]|0; + $33 = (_walHash($32)|0); + HEAP32[$iKey>>2] = $33; + while(1) { + $34 = HEAP32[$iKey>>2]|0; + $35 = HEAP32[$aHash>>2]|0; + $36 = (($35) + ($34<<1)|0); + $37 = HEAP16[$36>>1]|0; + $38 = ($37<<16>>16)!=(0); + if (!($38)) { + label = 11; + break; + } + $39 = HEAP32[$nCollide>>2]|0; + $40 = (($39) + -1)|0; + HEAP32[$nCollide>>2] = $40; + $41 = ($39|0)==(0); + if ($41) { + break; + } + $43 = HEAP32[$iKey>>2]|0; + $44 = (_walNextHash($43)|0); + HEAP32[$iKey>>2] = $44; + } + if ((label|0) == 11) { + $45 = HEAP32[$3>>2]|0; + $46 = HEAP32[$idx>>2]|0; + $47 = HEAP32[$aPgno>>2]|0; + $48 = (($47) + ($46<<2)|0); + HEAP32[$48>>2] = $45; + $49 = HEAP32[$idx>>2]|0; + $50 = $49&65535; + $51 = HEAP32[$iKey>>2]|0; + $52 = HEAP32[$aHash>>2]|0; + $53 = (($52) + ($51<<1)|0); + HEAP16[$53>>1] = $50; + break; + } + $42 = (_sqlite3CorruptError(48107)|0); + HEAP32[$0>>2] = $42; + $55 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($55|0); + } + } while(0); + $54 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $54; + $55 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($55|0); +} +function _walIndexWriteHdr($pWal) { + $pWal = $pWal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $aHdr = 0, $nCksum = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $aHdr = sp; + $nCksum = sp + 4|0; + HEAP32[$0>>2] = $pWal; + $1 = HEAP32[$0>>2]|0; + $2 = (_walIndexHdr($1)|0); + HEAP32[$aHdr>>2] = $2; + HEAP32[$nCksum>>2] = 40; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 52|0); + $5 = (($4) + 12|0); + HEAP8[$5>>0] = 1; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 52|0); + HEAP32[$7>>2] = 3007000; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 52|0); + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 52|0); + $12 = (($11) + 40|0); + _walChecksumBytes(1,$9,40,0,$12); + $13 = HEAP32[$aHdr>>2]|0; + $14 = (($13) + 48|0); + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 52|0); + dest=$14+0|0; src=$16+0|0; stop=dest+48|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $17 = HEAP32[$0>>2]|0; + _walShmBarrier($17); + $18 = HEAP32[$aHdr>>2]|0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 52|0); + dest=$18+0|0; src=$20+0|0; stop=dest+48|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + STACKTOP = sp;return; +} +function _walShmBarrier($pWal) { + $pWal = $pWal|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pWal; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 43|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = ($4|0)!=(2); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + _sqlite3OsShmBarrier($8); + STACKTOP = sp;return; +} +function _sqlite3OsShmBarrier($id) { + $id = $id|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $id; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 60|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$0>>2]|0; + FUNCTION_TABLE_vi[$4 & 31]($5); + STACKTOP = sp;return; +} +function _sqlite3InvokeBusyHandler($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0|0); + if (!($3)) { + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)==(0|0); + if (!($6)) { + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 8|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)<(0); + if (!($10)) { + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 8|0); + $18 = HEAP32[$17>>2]|0; + $19 = (FUNCTION_TABLE_iii[$12 & 127]($15,$18)|0); + HEAP32[$rc>>2] = $19; + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)==(0); + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 8|0); + if ($21) { + HEAP32[$23>>2] = -1; + } else { + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + 1)|0; + HEAP32[$23>>2] = $25; + } + $26 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $26; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); + } + } + } + HEAP32[$0>>2] = 0; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); +} +function _sqlite3PagerGetExtra($pPg) { + $pPg = $pPg|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPg; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _sqlite3PagerPageRefcount($pPage) { + $pPage = $pPage|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPage; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3PcachePageRefcount($1)|0); + STACKTOP = sp;return ($2|0); +} +function _btreeInitPage($pPage) { + $pPage = $pPage|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cellOffset = 0, $data = 0, $hdr = 0, $iCellFirst = 0, $iCellLast = 0, $nFree = 0, $next = 0, $pBt = 0, $pc = 0, $size = 0; + var $top = 0, $usableSize = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $pc = sp + 40|0; + $hdr = sp + 44|0; + $data = sp + 20|0; + $pBt = sp + 16|0; + $usableSize = sp + 8|0; + $cellOffset = sp + 42|0; + $nFree = sp + 4|0; + $top = sp; + $iCellFirst = sp + 12|0; + $iCellLast = sp + 24|0; + $next = sp + 36|0; + $size = sp + 38|0; + HEAP32[$1>>2] = $pPage; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP8[$2>>0]|0; + $4 = ($3<<24>>24)!=(0); + do { + if (!($4)) { + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 52|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pBt>>2] = $7; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 5|0); + $10 = HEAP8[$9>>0]|0; + HEAP8[$hdr>>0] = $10; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 56|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$data>>2] = $13; + $14 = HEAP32[$1>>2]|0; + $15 = HEAP8[$hdr>>0]|0; + $16 = $15&255; + $17 = HEAP32[$data>>2]|0; + $18 = (($17) + ($16)|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = (_decodeFlags($14,$20)|0); + $22 = ($21|0)!=(0); + if ($22) { + $23 = (_sqlite3CorruptError(52602)|0); + HEAP32[$0>>2] = $23; + $229 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($229|0); + } + $24 = HEAP32[$pBt>>2]|0; + $25 = (($24) + 32|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($26) - 1)|0; + $28 = $27&65535; + $29 = HEAP32[$1>>2]|0; + $30 = (($29) + 18|0); + HEAP16[$30>>1] = $28; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 1|0); + HEAP8[$32>>0] = 0; + $33 = HEAP32[$pBt>>2]|0; + $34 = (($33) + 36|0); + $35 = HEAP32[$34>>2]|0; + HEAP32[$usableSize>>2] = $35; + $36 = HEAP8[$hdr>>0]|0; + $37 = $36&255; + $38 = (($37) + 12)|0; + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 3|0); + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = $42<<2; + $44 = (($38) - ($43))|0; + $45 = $44&65535; + HEAP16[$cellOffset>>1] = $45; + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 12|0); + HEAP16[$47>>1] = $45; + $48 = HEAP32[$usableSize>>2]|0; + $49 = HEAP32[$data>>2]|0; + $50 = (($49) + ($48)|0); + $51 = HEAP32[$1>>2]|0; + $52 = (($51) + 60|0); + HEAP32[$52>>2] = $50; + $53 = HEAP16[$cellOffset>>1]|0; + $54 = $53&65535; + $55 = HEAP32[$data>>2]|0; + $56 = (($55) + ($54)|0); + $57 = HEAP32[$1>>2]|0; + $58 = (($57) + 64|0); + HEAP32[$58>>2] = $56; + $59 = HEAP8[$hdr>>0]|0; + $60 = $59&255; + $61 = (($60) + 5)|0; + $62 = HEAP32[$data>>2]|0; + $63 = (($62) + ($61)|0); + $64 = HEAP8[$63>>0]|0; + $65 = $64&255; + $66 = $65 << 8; + $67 = HEAP8[$hdr>>0]|0; + $68 = $67&255; + $69 = (($68) + 5)|0; + $70 = HEAP32[$data>>2]|0; + $71 = (($70) + ($69)|0); + $72 = (($71) + 1|0); + $73 = HEAP8[$72>>0]|0; + $74 = $73&255; + $75 = $66 | $74; + $76 = (($75) - 1)|0; + $77 = $76 & 65535; + $78 = (($77) + 1)|0; + HEAP32[$top>>2] = $78; + $79 = HEAP8[$hdr>>0]|0; + $80 = $79&255; + $81 = (($80) + 3)|0; + $82 = HEAP32[$data>>2]|0; + $83 = (($82) + ($81)|0); + $84 = HEAP8[$83>>0]|0; + $85 = $84&255; + $86 = $85 << 8; + $87 = HEAP8[$hdr>>0]|0; + $88 = $87&255; + $89 = (($88) + 3)|0; + $90 = HEAP32[$data>>2]|0; + $91 = (($90) + ($89)|0); + $92 = (($91) + 1|0); + $93 = HEAP8[$92>>0]|0; + $94 = $93&255; + $95 = $86 | $94; + $96 = $95&65535; + $97 = HEAP32[$1>>2]|0; + $98 = (($97) + 16|0); + HEAP16[$98>>1] = $96; + $99 = HEAP32[$1>>2]|0; + $100 = (($99) + 16|0); + $101 = HEAP16[$100>>1]|0; + $102 = $101&65535; + $103 = HEAP32[$pBt>>2]|0; + $104 = (($103) + 32|0); + $105 = HEAP32[$104>>2]|0; + $106 = (($105) - 8)|0; + $107 = (($106>>>0) / 6)&-1; + $108 = ($102>>>0)>($107>>>0); + if ($108) { + $109 = (_sqlite3CorruptError(52614)|0); + HEAP32[$0>>2] = $109; + $229 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($229|0); + } + $110 = HEAP16[$cellOffset>>1]|0; + $111 = $110&65535; + $112 = HEAP32[$1>>2]|0; + $113 = (($112) + 16|0); + $114 = HEAP16[$113>>1]|0; + $115 = $114&65535; + $116 = $115<<1; + $117 = (($111) + ($116))|0; + HEAP32[$iCellFirst>>2] = $117; + $118 = HEAP32[$usableSize>>2]|0; + $119 = (($118) - 4)|0; + HEAP32[$iCellLast>>2] = $119; + $120 = HEAP8[$hdr>>0]|0; + $121 = $120&255; + $122 = (($121) + 1)|0; + $123 = HEAP32[$data>>2]|0; + $124 = (($123) + ($122)|0); + $125 = HEAP8[$124>>0]|0; + $126 = $125&255; + $127 = $126 << 8; + $128 = HEAP8[$hdr>>0]|0; + $129 = $128&255; + $130 = (($129) + 1)|0; + $131 = HEAP32[$data>>2]|0; + $132 = (($131) + ($130)|0); + $133 = (($132) + 1|0); + $134 = HEAP8[$133>>0]|0; + $135 = $134&255; + $136 = $127 | $135; + $137 = $136&65535; + HEAP16[$pc>>1] = $137; + $138 = HEAP8[$hdr>>0]|0; + $139 = $138&255; + $140 = (($139) + 7)|0; + $141 = HEAP32[$data>>2]|0; + $142 = (($141) + ($140)|0); + $143 = HEAP8[$142>>0]|0; + $144 = $143&255; + $145 = HEAP32[$top>>2]|0; + $146 = (($144) + ($145))|0; + HEAP32[$nFree>>2] = $146; + while(1) { + $147 = HEAP16[$pc>>1]|0; + $148 = $147&65535; + $149 = ($148|0)>(0); + if (!($149)) { + label = 16; + break; + } + $150 = HEAP16[$pc>>1]|0; + $151 = $150&65535; + $152 = HEAP32[$iCellFirst>>2]|0; + $153 = ($151|0)<($152|0); + if ($153) { + label = 10; + break; + } + $154 = HEAP16[$pc>>1]|0; + $155 = $154&65535; + $156 = HEAP32[$iCellLast>>2]|0; + $157 = ($155|0)>($156|0); + if ($157) { + label = 10; + break; + } + $159 = HEAP16[$pc>>1]|0; + $160 = $159&65535; + $161 = HEAP32[$data>>2]|0; + $162 = (($161) + ($160)|0); + $163 = HEAP8[$162>>0]|0; + $164 = $163&255; + $165 = $164 << 8; + $166 = HEAP16[$pc>>1]|0; + $167 = $166&65535; + $168 = HEAP32[$data>>2]|0; + $169 = (($168) + ($167)|0); + $170 = (($169) + 1|0); + $171 = HEAP8[$170>>0]|0; + $172 = $171&255; + $173 = $165 | $172; + $174 = $173&65535; + HEAP16[$next>>1] = $174; + $175 = HEAP16[$pc>>1]|0; + $176 = $175&65535; + $177 = (($176) + 2)|0; + $178 = HEAP32[$data>>2]|0; + $179 = (($178) + ($177)|0); + $180 = HEAP8[$179>>0]|0; + $181 = $180&255; + $182 = $181 << 8; + $183 = HEAP16[$pc>>1]|0; + $184 = $183&65535; + $185 = (($184) + 2)|0; + $186 = HEAP32[$data>>2]|0; + $187 = (($186) + ($185)|0); + $188 = (($187) + 1|0); + $189 = HEAP8[$188>>0]|0; + $190 = $189&255; + $191 = $182 | $190; + $192 = $191&65535; + HEAP16[$size>>1] = $192; + $193 = HEAP16[$next>>1]|0; + $194 = $193&65535; + $195 = ($194|0)>(0); + if ($195) { + $196 = HEAP16[$next>>1]|0; + $197 = $196&65535; + $198 = HEAP16[$pc>>1]|0; + $199 = $198&65535; + $200 = HEAP16[$size>>1]|0; + $201 = $200&65535; + $202 = (($199) + ($201))|0; + $203 = (($202) + 3)|0; + $204 = ($197|0)<=($203|0); + if ($204) { + label = 14; + break; + } + } + $205 = HEAP16[$pc>>1]|0; + $206 = $205&65535; + $207 = HEAP16[$size>>1]|0; + $208 = $207&65535; + $209 = (($206) + ($208))|0; + $210 = HEAP32[$usableSize>>2]|0; + $211 = ($209|0)>($210|0); + if ($211) { + label = 14; + break; + } + $213 = HEAP32[$nFree>>2]|0; + $214 = HEAP16[$size>>1]|0; + $215 = $214&65535; + $216 = (($213) + ($215))|0; + HEAP32[$nFree>>2] = $216; + $217 = HEAP16[$next>>1]|0; + HEAP16[$pc>>1] = $217; + } + if ((label|0) == 10) { + $158 = (_sqlite3CorruptError(52657)|0); + HEAP32[$0>>2] = $158; + $229 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($229|0); + } + else if ((label|0) == 14) { + $212 = (_sqlite3CorruptError(52664)|0); + HEAP32[$0>>2] = $212; + $229 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($229|0); + } + else if ((label|0) == 16) { + $218 = HEAP32[$nFree>>2]|0; + $219 = HEAP32[$usableSize>>2]|0; + $220 = ($218|0)>($219|0); + if (!($220)) { + $222 = HEAP32[$nFree>>2]|0; + $223 = HEAP32[$iCellFirst>>2]|0; + $224 = (($222) - ($223))|0; + $225 = $224&65535; + $226 = HEAP32[$1>>2]|0; + $227 = (($226) + 14|0); + HEAP16[$227>>1] = $225; + $228 = HEAP32[$1>>2]|0; + HEAP8[$228>>0] = 1; + break; + } + $221 = (_sqlite3CorruptError(52678)|0); + HEAP32[$0>>2] = $221; + $229 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($229|0); + } + } + } while(0); + HEAP32[$0>>2] = 0; + $229 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($229|0); +} +function _decodeFlags($pPage,$flagByte) { + $pPage = $pPage|0; + $flagByte = $flagByte|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pBt = sp + 8|0; + HEAP32[$1>>2] = $pPage; + HEAP32[$2>>2] = $flagByte; + $3 = HEAP32[$2>>2]|0; + $4 = $3 >> 3; + $5 = $4&255; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 3|0); + HEAP8[$7>>0] = $5; + $8 = HEAP32[$2>>2]|0; + $9 = $8 & -9; + HEAP32[$2>>2] = $9; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 3|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = $13<<2; + $15 = (4 - ($14))|0; + $16 = $15&255; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 6|0); + HEAP8[$18>>0] = $16; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 52|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$pBt>>2] = $21; + $22 = HEAP32[$2>>2]|0; + $23 = ($22|0)==(5); + do { + if ($23) { + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 2|0); + HEAP8[$25>>0] = 1; + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 3|0); + $28 = HEAP8[$27>>0]|0; + $29 = HEAP32[$1>>2]|0; + $30 = (($29) + 4|0); + HEAP8[$30>>0] = $28; + $31 = HEAP32[$pBt>>2]|0; + $32 = (($31) + 28|0); + $33 = HEAP16[$32>>1]|0; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 8|0); + HEAP16[$35>>1] = $33; + $36 = HEAP32[$pBt>>2]|0; + $37 = (($36) + 30|0); + $38 = HEAP16[$37>>1]|0; + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 10|0); + HEAP16[$40>>1] = $38; + } else { + $41 = HEAP32[$2>>2]|0; + $42 = ($41|0)==(2); + if ($42) { + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 2|0); + HEAP8[$44>>0] = 0; + $45 = HEAP32[$1>>2]|0; + $46 = (($45) + 4|0); + HEAP8[$46>>0] = 0; + $47 = HEAP32[$pBt>>2]|0; + $48 = (($47) + 24|0); + $49 = HEAP16[$48>>1]|0; + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 8|0); + HEAP16[$51>>1] = $49; + $52 = HEAP32[$pBt>>2]|0; + $53 = (($52) + 26|0); + $54 = HEAP16[$53>>1]|0; + $55 = HEAP32[$1>>2]|0; + $56 = (($55) + 10|0); + HEAP16[$56>>1] = $54; + break; + } + $57 = (_sqlite3CorruptError(52563)|0); + HEAP32[$0>>2] = $57; + $63 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($63|0); + } + } while(0); + $58 = HEAP32[$pBt>>2]|0; + $59 = (($58) + 21|0); + $60 = HEAP8[$59>>0]|0; + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 7|0); + HEAP8[$62>>0] = $60; + HEAP32[$0>>2] = 0; + $63 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($63|0); +} +function _sqlite3PcacheSize() { + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = sp;return 48; +} +function _sqlite3PcacheOpen($szPage,$szExtra,$bPurgeable,$xStress,$pStress,$p) { + $szPage = $szPage|0; + $szExtra = $szExtra|0; + $bPurgeable = $bPurgeable|0; + $xStress = $xStress|0; + $pStress = $pStress|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $5 = sp + 16|0; + HEAP32[$0>>2] = $szPage; + HEAP32[$1>>2] = $szExtra; + HEAP32[$2>>2] = $bPurgeable; + HEAP32[$3>>2] = $xStress; + HEAP32[$4>>2] = $pStress; + HEAP32[$5>>2] = $p; + $6 = HEAP32[$5>>2]|0; + dest=$6+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$5>>2]|0; + $9 = (($8) + 20|0); + HEAP32[$9>>2] = $7; + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$5>>2]|0; + $12 = (($11) + 24|0); + HEAP32[$12>>2] = $10; + $13 = HEAP32[$2>>2]|0; + $14 = $13&255; + $15 = HEAP32[$5>>2]|0; + $16 = (($15) + 28|0); + HEAP8[$16>>0] = $14; + $17 = HEAP32[$5>>2]|0; + $18 = (($17) + 29|0); + HEAP8[$18>>0] = 2; + $19 = HEAP32[$3>>2]|0; + $20 = HEAP32[$5>>2]|0; + $21 = (($20) + 32|0); + HEAP32[$21>>2] = $19; + $22 = HEAP32[$4>>2]|0; + $23 = HEAP32[$5>>2]|0; + $24 = (($23) + 36|0); + HEAP32[$24>>2] = $22; + $25 = HEAP32[$5>>2]|0; + $26 = (($25) + 16|0); + HEAP32[$26>>2] = 100; + STACKTOP = sp;return; +} +function _pagerStress($p,$pPg) { + $p = $p|0; + $pPg = $pPg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $8 = 0, $9 = 0, $pPager = 0, $rc = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $pPager = sp + 8|0; + $rc = sp + 12|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pPg; + $3 = HEAP32[$1>>2]|0; + HEAP32[$pPager>>2] = $3; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$pPager>>2]|0; + $5 = (($4) + 40|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0); + if ($7) { + HEAP32[$0>>2] = 0; + $77 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($77|0); + } + $8 = HEAP32[$pPager>>2]|0; + $9 = (($8) + 20|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = ($11|0)!=(0); + do { + if ($12) { + $13 = HEAP32[$pPager>>2]|0; + $14 = (($13) + 20|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = $16 & 3; + $18 = ($17|0)!=(0); + if (!($18)) { + $19 = HEAP32[$2>>2]|0; + $20 = (($19) + 24|0); + $21 = HEAP16[$20>>1]|0; + $22 = $21&65535; + $23 = $22 & 4; + $24 = ($23|0)!=(0); + if (!($24)) { + break; + } + } + HEAP32[$0>>2] = 0; + $77 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($77|0); + } + } while(0); + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 12|0); + HEAP32[$26>>2] = 0; + $27 = HEAP32[$pPager>>2]|0; + $28 = (_pagerUseWal($27)|0); + $29 = ($28|0)!=(0); + $30 = HEAP32[$2>>2]|0; + if ($29) { + $31 = (_subjRequiresPage($30)|0); + $32 = ($31|0)!=(0); + if ($32) { + $33 = HEAP32[$2>>2]|0; + $34 = (_subjournalPage($33)|0); + HEAP32[$rc>>2] = $34; + } + $35 = HEAP32[$rc>>2]|0; + $36 = ($35|0)==(0); + if ($36) { + $37 = HEAP32[$pPager>>2]|0; + $38 = HEAP32[$2>>2]|0; + $39 = (_pagerWalFrames($37,$38,0,0)|0); + HEAP32[$rc>>2] = $39; + } + } else { + $40 = (($30) + 24|0); + $41 = HEAP16[$40>>1]|0; + $42 = $41&65535; + $43 = $42 & 4; + $44 = ($43|0)!=(0); + if ($44) { + label = 14; + } else { + $45 = HEAP32[$pPager>>2]|0; + $46 = (($45) + 16|0); + $47 = HEAP8[$46>>0]|0; + $48 = $47&255; + $49 = ($48|0)==(3); + if ($49) { + label = 14; + } + } + if ((label|0) == 14) { + $50 = HEAP32[$pPager>>2]|0; + $51 = (_syncJournal($50,1)|0); + HEAP32[$rc>>2] = $51; + } + $52 = HEAP32[$rc>>2]|0; + $53 = ($52|0)==(0); + if ($53) { + $54 = HEAP32[$2>>2]|0; + $55 = (($54) + 20|0); + $56 = HEAP32[$55>>2]|0; + $57 = HEAP32[$pPager>>2]|0; + $58 = (($57) + 24|0); + $59 = HEAP32[$58>>2]|0; + $60 = ($56>>>0)>($59>>>0); + if ($60) { + $61 = HEAP32[$2>>2]|0; + $62 = (_subjRequiresPage($61)|0); + $63 = ($62|0)!=(0); + if ($63) { + $64 = HEAP32[$2>>2]|0; + $65 = (_subjournalPage($64)|0); + HEAP32[$rc>>2] = $65; + } + } + } + $66 = HEAP32[$rc>>2]|0; + $67 = ($66|0)==(0); + if ($67) { + $68 = HEAP32[$pPager>>2]|0; + $69 = HEAP32[$2>>2]|0; + $70 = (_pager_write_pagelist($68,$69)|0); + HEAP32[$rc>>2] = $70; + } + } + $71 = HEAP32[$rc>>2]|0; + $72 = ($71|0)==(0); + if ($72) { + $73 = HEAP32[$2>>2]|0; + _sqlite3PcacheMakeClean($73); + } + $74 = HEAP32[$pPager>>2]|0; + $75 = HEAP32[$rc>>2]|0; + $76 = (_pager_error($74,$75)|0); + HEAP32[$0>>2] = $76; + $77 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($77|0); +} +function _subjRequiresPage($pPg) { + $pPg = $pPg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, $pPager = 0, $pgno = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $pPager = sp + 4|0; + $p = sp + 8|0; + $pgno = sp + 12|0; + $i = sp + 16|0; + HEAP32[$1>>2] = $pPg; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 16|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pPager>>2] = $4; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 20|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pgno>>2] = $7; + HEAP32[$i>>2] = 0; + while(1) { + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$pPager>>2]|0; + $10 = (($9) + 96|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($8|0)<($11|0); + if (!($12)) { + label = 7; + break; + } + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$pPager>>2]|0; + $15 = (($14) + 92|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + (($13*48)|0)|0); + HEAP32[$p>>2] = $17; + $18 = HEAP32[$p>>2]|0; + $19 = (($18) + 20|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$pgno>>2]|0; + $22 = ($20>>>0)>=($21>>>0); + if ($22) { + $23 = HEAP32[$p>>2]|0; + $24 = (($23) + 16|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$pgno>>2]|0; + $27 = (_sqlite3BitvecTest($25,$26)|0); + $28 = (0)==($27|0); + if ($28) { + label = 5; + break; + } + } + $29 = HEAP32[$i>>2]|0; + $30 = (($29) + 1)|0; + HEAP32[$i>>2] = $30; + } + if ((label|0) == 5) { + HEAP32[$0>>2] = 1; + $31 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($31|0); + } + else if ((label|0) == 7) { + HEAP32[$0>>2] = 0; + $31 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($31|0); + } + return 0|0; +} +function _subjournalPage($pPg) { + $pPg = $pPg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $8 = 0, $9 = 0, $offset = 0, $pData = 0, $pData2 = 0, $pPager = 0, $rc = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $rc = sp + 16|0; + $pPager = sp + 8|0; + $pData = sp + 12|0; + $offset = sp; + $pData2 = sp + 20|0; + HEAP32[$0>>2] = $pPg; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 16|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pPager>>2] = $3; + $4 = HEAP32[$pPager>>2]|0; + $5 = (($4) + 5|0); + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = ($7|0)!=(2); + if ($8) { + $9 = HEAP32[$pPager>>2]|0; + $10 = (_openSubJournal($9)|0); + HEAP32[$rc>>2] = $10; + $11 = HEAP32[$rc>>2]|0; + $12 = ($11|0)==(0); + if ($12) { + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$pData>>2] = $15; + $16 = HEAP32[$pPager>>2]|0; + $17 = (($16) + 52|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$pPager>>2]|0; + $20 = (($19) + 152|0); + $21 = HEAP32[$20>>2]|0; + $22 = (4 + ($21))|0; + $23 = ($22|0)<(0); + $24 = $23 << 31 >> 31; + $25 = (___muldi3(($18|0),0,($22|0),($24|0))|0); + $26 = tempRet0; + $27 = $offset; + $28 = $27; + HEAP32[$28>>2] = $25; + $29 = (($27) + 4)|0; + $30 = $29; + HEAP32[$30>>2] = $26; + $31 = HEAP32[$pData>>2]|0; + HEAP32[$pData2>>2] = $31; + $32 = HEAP32[$pPager>>2]|0; + $33 = (($32) + 68|0); + $34 = HEAP32[$33>>2]|0; + $35 = $offset; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = (($35) + 4)|0; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + 20|0); + $43 = HEAP32[$42>>2]|0; + $44 = (_write32bits($34,$37,$40,$43)|0); + HEAP32[$rc>>2] = $44; + $45 = HEAP32[$rc>>2]|0; + $46 = ($45|0)==(0); + if ($46) { + $47 = HEAP32[$pPager>>2]|0; + $48 = (($47) + 68|0); + $49 = HEAP32[$48>>2]|0; + $50 = HEAP32[$pData2>>2]|0; + $51 = HEAP32[$pPager>>2]|0; + $52 = (($51) + 152|0); + $53 = HEAP32[$52>>2]|0; + $54 = $offset; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = (($54) + 4)|0; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = (_i64Add(($56|0),($59|0),4,0)|0); + $61 = tempRet0; + $62 = (_sqlite3OsWrite($49,$50,$53,$60,$61)|0); + HEAP32[$rc>>2] = $62; + } + } + } + $63 = HEAP32[$rc>>2]|0; + $64 = ($63|0)==(0); + if (!($64)) { + $74 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($74|0); + } + $65 = HEAP32[$pPager>>2]|0; + $66 = (($65) + 52|0); + $67 = HEAP32[$66>>2]|0; + $68 = (($67) + 1)|0; + HEAP32[$66>>2] = $68; + $69 = HEAP32[$pPager>>2]|0; + $70 = HEAP32[$0>>2]|0; + $71 = (($70) + 20|0); + $72 = HEAP32[$71>>2]|0; + $73 = (_addToSavepointBitvecs($69,$72)|0); + HEAP32[$rc>>2] = $73; + $74 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($74|0); +} +function _pagerWalFrames($pPager,$pList,$nTruncate,$isCommit) { + $pPager = $pPager|0; + $pList = $pList|0; + $nTruncate = $nTruncate|0; + $isCommit = $isCommit|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $nList = 0, $p = 0, $p1 = 0, $ppNext = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $rc = sp + 16|0; + $nList = sp + 8|0; + $p = sp + 4|0; + $ppNext = sp; + $p1 = sp + 12|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $pList; + HEAP32[$2>>2] = $nTruncate; + HEAP32[$3>>2] = $isCommit; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0); + L1: do { + if ($5) { + HEAP32[$ppNext>>2] = $1; + HEAP32[$nList>>2] = 0; + $6 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $6; + while(1) { + $7 = HEAP32[$p>>2]|0; + $8 = HEAP32[$ppNext>>2]|0; + HEAP32[$8>>2] = $7; + $9 = ($7|0)!=(0|0); + if (!($9)) { + break L1; + } + $10 = HEAP32[$p>>2]|0; + $11 = (($10) + 20|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = ($12>>>0)<=($13>>>0); + if ($14) { + $15 = HEAP32[$p>>2]|0; + $16 = (($15) + 12|0); + HEAP32[$ppNext>>2] = $16; + $17 = HEAP32[$nList>>2]|0; + $18 = (($17) + 1)|0; + HEAP32[$nList>>2] = $18; + } + $19 = HEAP32[$p>>2]|0; + $20 = (($19) + 12|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$p>>2] = $21; + } + } else { + HEAP32[$nList>>2] = 1; + } + } while(0); + $22 = HEAP32[$nList>>2]|0; + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 184|0); + $25 = (($24) + 8|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($26) + ($22))|0; + HEAP32[$25>>2] = $27; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 20|0); + $30 = HEAP32[$29>>2]|0; + $31 = ($30|0)==(1); + if ($31) { + $32 = HEAP32[$1>>2]|0; + _pager_write_changecounter($32); + } + $33 = HEAP32[$0>>2]|0; + $34 = (($33) + 208|0); + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + 152|0); + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$1>>2]|0; + $40 = HEAP32[$2>>2]|0; + $41 = HEAP32[$3>>2]|0; + $42 = HEAP32[$0>>2]|0; + $43 = (($42) + 10|0); + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = (_sqlite3WalFrames($35,$38,$39,$40,$41,$45)|0); + HEAP32[$rc>>2] = $46; + $47 = HEAP32[$rc>>2]|0; + $48 = ($47|0)==(0); + if (!($48)) { + $68 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($68|0); + } + $49 = HEAP32[$0>>2]|0; + $50 = (($49) + 88|0); + $51 = HEAP32[$50>>2]|0; + $52 = ($51|0)!=(0|0); + if (!($52)) { + $68 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($68|0); + } + $53 = HEAP32[$1>>2]|0; + HEAP32[$p1>>2] = $53; + while(1) { + $54 = HEAP32[$p1>>2]|0; + $55 = ($54|0)!=(0|0); + if (!($55)) { + break; + } + $56 = HEAP32[$0>>2]|0; + $57 = (($56) + 88|0); + $58 = HEAP32[$57>>2]|0; + $59 = HEAP32[$p1>>2]|0; + $60 = (($59) + 20|0); + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$p1>>2]|0; + $63 = (($62) + 4|0); + $64 = HEAP32[$63>>2]|0; + _sqlite3BackupUpdate($58,$61,$64); + $65 = HEAP32[$p1>>2]|0; + $66 = (($65) + 12|0); + $67 = HEAP32[$66>>2]|0; + HEAP32[$p1>>2] = $67; + } + $68 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($68|0); +} +function _syncJournal($pPager,$newHdr) { + $pPager = $pPager|0; + $newHdr = $newHdr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aMagic = 0, $iDc = 0, $iNextHdrOffset = 0, $or$cond = 0, $rc = 0, $zHeader = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 24|0; + $1 = sp + 20|0; + $2 = sp + 8|0; + $rc = sp + 12|0; + $iDc = sp + 16|0; + $iNextHdrOffset = sp; + $aMagic = sp + 40|0; + $zHeader = sp + 28|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$2>>2] = $newHdr; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3PagerExclusiveLock($3)|0); + HEAP32[$rc>>2] = $4; + $5 = HEAP32[$rc>>2]|0; + $6 = ($5|0)!=(0); + if ($6) { + $7 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $7; + $169 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($169|0); + } + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 7|0); + $10 = HEAP8[$9>>0]|0; + $11 = ($10<<24>>24)!=(0); + do { + if (!($11)) { + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 64|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 5|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = ($20|0)!=(4); + if ($21) { + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 60|0); + $24 = HEAP32[$23>>2]|0; + $25 = (_sqlite3OsDeviceCharacteristics($24)|0); + HEAP32[$iDc>>2] = $25; + $26 = HEAP32[$iDc>>2]|0; + $27 = $26 & 512; + $28 = (0)==($27|0); + if ($28) { + ;HEAP8[$zHeader+0>>0]=HEAP8[10992+0>>0]|0;HEAP8[$zHeader+1>>0]=HEAP8[10992+1>>0]|0;HEAP8[$zHeader+2>>0]=HEAP8[10992+2>>0]|0;HEAP8[$zHeader+3>>0]=HEAP8[10992+3>>0]|0;HEAP8[$zHeader+4>>0]=HEAP8[10992+4>>0]|0;HEAP8[$zHeader+5>>0]=HEAP8[10992+5>>0]|0;HEAP8[$zHeader+6>>0]=HEAP8[10992+6>>0]|0;HEAP8[$zHeader+7>>0]=HEAP8[10992+7>>0]|0; + $29 = (($zHeader) + 8|0); + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 44|0); + $32 = HEAP32[$31>>2]|0; + _sqlite3Put4byte($29,$32); + $33 = HEAP32[$1>>2]|0; + $34 = (_journalHdrOffset($33)|0); + $35 = tempRet0; + $36 = $iNextHdrOffset; + $37 = $36; + HEAP32[$37>>2] = $34; + $38 = (($36) + 4)|0; + $39 = $38; + HEAP32[$39>>2] = $35; + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 64|0); + $42 = HEAP32[$41>>2]|0; + $43 = $iNextHdrOffset; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = (($43) + 4)|0; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = (_sqlite3OsRead($42,$aMagic,8,$45,$48)|0); + HEAP32[$rc>>2] = $49; + $50 = HEAP32[$rc>>2]|0; + $51 = ($50|0)==(0); + if ($51) { + $52 = (_memcmp($aMagic,10992,8)|0); + $53 = (0)==($52|0); + if ($53) { + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 64|0); + $56 = HEAP32[$55>>2]|0; + $57 = $iNextHdrOffset; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = (($57) + 4)|0; + $61 = $60; + $62 = HEAP32[$61>>2]|0; + $63 = (_sqlite3OsWrite($56,11208,1,$59,$62)|0); + HEAP32[$rc>>2] = $63; + } + } + $64 = HEAP32[$rc>>2]|0; + $65 = ($64|0)!=(0); + $66 = HEAP32[$rc>>2]|0; + $67 = ($66|0)!=(522); + $or$cond = $65 & $67; + if ($or$cond) { + $68 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $68; + $169 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($169|0); + } + $69 = HEAP32[$1>>2]|0; + $70 = (($69) + 8|0); + $71 = HEAP8[$70>>0]|0; + $72 = $71&255; + $73 = ($72|0)!=(0); + if ($73) { + $74 = HEAP32[$iDc>>2]|0; + $75 = $74 & 1024; + $76 = (0)==($75|0); + if ($76) { + $77 = HEAP32[$1>>2]|0; + $78 = (($77) + 64|0); + $79 = HEAP32[$78>>2]|0; + $80 = HEAP32[$1>>2]|0; + $81 = (($80) + 11|0); + $82 = HEAP8[$81>>0]|0; + $83 = $82&255; + $84 = (_sqlite3OsSync($79,$83)|0); + HEAP32[$rc>>2] = $84; + $85 = HEAP32[$rc>>2]|0; + $86 = ($85|0)!=(0); + if ($86) { + $87 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $87; + $169 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($169|0); + } + } + } + $88 = HEAP32[$1>>2]|0; + $89 = (($88) + 64|0); + $90 = HEAP32[$89>>2]|0; + $91 = HEAP32[$1>>2]|0; + $92 = (($91) + 80|0); + $93 = $92; + $94 = $93; + $95 = HEAP32[$94>>2]|0; + $96 = (($93) + 4)|0; + $97 = $96; + $98 = HEAP32[$97>>2]|0; + $99 = (_sqlite3OsWrite($90,$zHeader,12,$95,$98)|0); + HEAP32[$rc>>2] = $99; + $100 = HEAP32[$rc>>2]|0; + $101 = ($100|0)!=(0); + if ($101) { + $102 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $102; + $169 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($169|0); + } + } + $103 = HEAP32[$iDc>>2]|0; + $104 = $103 & 1024; + $105 = (0)==($104|0); + if ($105) { + $106 = HEAP32[$1>>2]|0; + $107 = (($106) + 64|0); + $108 = HEAP32[$107>>2]|0; + $109 = HEAP32[$1>>2]|0; + $110 = (($109) + 11|0); + $111 = HEAP8[$110>>0]|0; + $112 = $111&255; + $113 = HEAP32[$1>>2]|0; + $114 = (($113) + 11|0); + $115 = HEAP8[$114>>0]|0; + $116 = $115&255; + $117 = ($116|0)==(3); + $118 = $117 ? 16 : 0; + $119 = $112 | $118; + $120 = (_sqlite3OsSync($108,$119)|0); + HEAP32[$rc>>2] = $120; + $121 = HEAP32[$rc>>2]|0; + $122 = ($121|0)!=(0); + if ($122) { + $123 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $123; + $169 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($169|0); + } + } + $124 = HEAP32[$1>>2]|0; + $125 = (($124) + 72|0); + $126 = $125; + $127 = $126; + $128 = HEAP32[$127>>2]|0; + $129 = (($126) + 4)|0; + $130 = $129; + $131 = HEAP32[$130>>2]|0; + $132 = HEAP32[$1>>2]|0; + $133 = (($132) + 80|0); + $134 = $133; + $135 = $134; + HEAP32[$135>>2] = $128; + $136 = (($134) + 4)|0; + $137 = $136; + HEAP32[$137>>2] = $131; + $138 = HEAP32[$2>>2]|0; + $139 = ($138|0)!=(0); + if (!($139)) { + break; + } + $140 = HEAP32[$iDc>>2]|0; + $141 = $140 & 512; + $142 = (0)==($141|0); + if (!($142)) { + break; + } + $143 = HEAP32[$1>>2]|0; + $144 = (($143) + 44|0); + HEAP32[$144>>2] = 0; + $145 = HEAP32[$1>>2]|0; + $146 = (_writeJournalHdr($145)|0); + HEAP32[$rc>>2] = $146; + $147 = HEAP32[$rc>>2]|0; + $148 = ($147|0)!=(0); + if (!($148)) { + break; + } + $149 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $149; + $169 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($169|0); + } + } + $150 = HEAP32[$1>>2]|0; + $151 = (($150) + 72|0); + $152 = $151; + $153 = $152; + $154 = HEAP32[$153>>2]|0; + $155 = (($152) + 4)|0; + $156 = $155; + $157 = HEAP32[$156>>2]|0; + $158 = HEAP32[$1>>2]|0; + $159 = (($158) + 80|0); + $160 = $159; + $161 = $160; + HEAP32[$161>>2] = $154; + $162 = (($160) + 4)|0; + $163 = $162; + HEAP32[$163>>2] = $157; + } + } while(0); + $164 = HEAP32[$1>>2]|0; + $165 = (($164) + 204|0); + $166 = HEAP32[$165>>2]|0; + _sqlite3PcacheClearSyncFlags($166); + $167 = HEAP32[$1>>2]|0; + $168 = (($167) + 16|0); + HEAP8[$168>>0] = 4; + HEAP32[$0>>2] = 0; + $169 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($169|0); +} +function _pager_write_pagelist($pPager,$pList) { + $pPager = $pPager|0; + $pList = $pList|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $offset = 0, $pData = 0, $pgno = 0, $rc = 0, $szFile = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 24|0; + $rc = sp + 16|0; + $szFile = sp; + $pgno = sp + 20|0; + $offset = sp + 8|0; + $pData = sp + 28|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $pList; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 60|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 60|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 144|0); + $13 = HEAP32[$12>>2]|0; + $14 = (_pagerOpentemp($7,$10,$13)|0); + HEAP32[$rc>>2] = $14; + } + $15 = HEAP32[$rc>>2]|0; + $16 = ($15|0)==(0); + do { + if ($16) { + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 36|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 24|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($19>>>0)<($22>>>0); + if ($23) { + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 12|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)!=(0|0); + if (!($27)) { + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 20|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 36|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($30>>>0)>($33>>>0); + if (!($34)) { + break; + } + } + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 152|0); + $37 = HEAP32[$36>>2]|0; + $38 = ($37|0)<(0); + $39 = $38 << 31 >> 31; + $40 = HEAP32[$0>>2]|0; + $41 = (($40) + 24|0); + $42 = HEAP32[$41>>2]|0; + $43 = (___muldi3(($37|0),($39|0),($42|0),0)|0); + $44 = tempRet0; + $45 = $szFile; + $46 = $45; + HEAP32[$46>>2] = $43; + $47 = (($45) + 4)|0; + $48 = $47; + HEAP32[$48>>2] = $44; + $49 = HEAP32[$0>>2]|0; + $50 = (($49) + 60|0); + $51 = HEAP32[$50>>2]|0; + _sqlite3OsFileControlHint($51,5,$szFile); + $52 = HEAP32[$0>>2]|0; + $53 = (($52) + 24|0); + $54 = HEAP32[$53>>2]|0; + $55 = HEAP32[$0>>2]|0; + $56 = (($55) + 36|0); + HEAP32[$56>>2] = $54; + } + } + } while(0); + while(1) { + $57 = HEAP32[$rc>>2]|0; + $58 = ($57|0)==(0); + if (!($58)) { + label = 20; + break; + } + $59 = HEAP32[$1>>2]|0; + $60 = ($59|0)!=(0|0); + if (!($60)) { + label = 20; + break; + } + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 20|0); + $63 = HEAP32[$62>>2]|0; + HEAP32[$pgno>>2] = $63; + $64 = HEAP32[$pgno>>2]|0; + $65 = HEAP32[$0>>2]|0; + $66 = (($65) + 24|0); + $67 = HEAP32[$66>>2]|0; + $68 = ($64>>>0)<=($67>>>0); + if ($68) { + $69 = HEAP32[$1>>2]|0; + $70 = (($69) + 24|0); + $71 = HEAP16[$70>>1]|0; + $72 = $71&65535; + $73 = $72 & 32; + $74 = (0)==($73|0); + if ($74) { + $75 = HEAP32[$pgno>>2]|0; + $76 = (($75) - 1)|0; + $77 = HEAP32[$0>>2]|0; + $78 = (($77) + 152|0); + $79 = HEAP32[$78>>2]|0; + $80 = ($79|0)<(0); + $81 = $80 << 31 >> 31; + $82 = (___muldi3(($76|0),0,($79|0),($81|0))|0); + $83 = tempRet0; + $84 = $offset; + $85 = $84; + HEAP32[$85>>2] = $82; + $86 = (($84) + 4)|0; + $87 = $86; + HEAP32[$87>>2] = $83; + $88 = HEAP32[$1>>2]|0; + $89 = (($88) + 20|0); + $90 = HEAP32[$89>>2]|0; + $91 = ($90|0)==(1); + if ($91) { + $92 = HEAP32[$1>>2]|0; + _pager_write_changecounter($92); + } + $93 = HEAP32[$1>>2]|0; + $94 = (($93) + 4|0); + $95 = HEAP32[$94>>2]|0; + HEAP32[$pData>>2] = $95; + $96 = HEAP32[$0>>2]|0; + $97 = (($96) + 60|0); + $98 = HEAP32[$97>>2]|0; + $99 = HEAP32[$pData>>2]|0; + $100 = HEAP32[$0>>2]|0; + $101 = (($100) + 152|0); + $102 = HEAP32[$101>>2]|0; + $103 = $offset; + $104 = $103; + $105 = HEAP32[$104>>2]|0; + $106 = (($103) + 4)|0; + $107 = $106; + $108 = HEAP32[$107>>2]|0; + $109 = (_sqlite3OsWrite($98,$99,$102,$105,$108)|0); + HEAP32[$rc>>2] = $109; + $110 = HEAP32[$pgno>>2]|0; + $111 = ($110|0)==(1); + if ($111) { + $112 = HEAP32[$0>>2]|0; + $113 = (($112) + 100|0); + $114 = HEAP32[$pData>>2]|0; + $115 = (($114) + 24|0); + dest=$113+0|0; src=$115+0|0; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + } + $116 = HEAP32[$pgno>>2]|0; + $117 = HEAP32[$0>>2]|0; + $118 = (($117) + 32|0); + $119 = HEAP32[$118>>2]|0; + $120 = ($116>>>0)>($119>>>0); + if ($120) { + $121 = HEAP32[$pgno>>2]|0; + $122 = HEAP32[$0>>2]|0; + $123 = (($122) + 32|0); + HEAP32[$123>>2] = $121; + } + $124 = HEAP32[$0>>2]|0; + $125 = (($124) + 184|0); + $126 = (($125) + 8|0); + $127 = HEAP32[$126>>2]|0; + $128 = (($127) + 1)|0; + HEAP32[$126>>2] = $128; + $129 = HEAP32[$0>>2]|0; + $130 = (($129) + 88|0); + $131 = HEAP32[$130>>2]|0; + $132 = HEAP32[$pgno>>2]|0; + $133 = HEAP32[$1>>2]|0; + $134 = (($133) + 4|0); + $135 = HEAP32[$134>>2]|0; + _sqlite3BackupUpdate($131,$132,$135); + } + } + $136 = HEAP32[$1>>2]|0; + $137 = (($136) + 12|0); + $138 = HEAP32[$137>>2]|0; + HEAP32[$1>>2] = $138; + } + if ((label|0) == 20) { + $139 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($139|0); + } + return 0|0; +} +function _pagerOpentemp($pPager,$pFile,$vfsFlags) { + $pPager = $pPager|0; + $pFile = $pFile|0; + $vfsFlags = $vfsFlags|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $pFile; + HEAP32[$2>>2] = $vfsFlags; + $3 = HEAP32[$2>>2]|0; + $4 = $3 | 30; + HEAP32[$2>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = (_sqlite3OsOpen($6,0,$7,$8,0)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($10|0); +} +function _pager_write_changecounter($pPg) { + $pPg = $pPg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $change_counter = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $change_counter = sp; + HEAP32[$0>>2] = $pPg; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 16|0); + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 100|0); + $5 = (_sqlite3Get4byte($4)|0); + $6 = (($5) + 1)|0; + HEAP32[$change_counter>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 24|0); + $11 = HEAP32[$change_counter>>2]|0; + _sqlite3Put4byte($10,$11); + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + 92|0); + $16 = HEAP32[$change_counter>>2]|0; + _sqlite3Put4byte($15,$16); + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + 96|0); + _sqlite3Put4byte($20,3008005); + STACKTOP = sp;return; +} +function _sqlite3Put4byte($p,$v) { + $p = $p|0; + $v = $v|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $v; + $2 = HEAP32[$1>>2]|0; + $3 = $2 >>> 24; + $4 = $3&255; + $5 = HEAP32[$0>>2]|0; + HEAP8[$5>>0] = $4; + $6 = HEAP32[$1>>2]|0; + $7 = $6 >>> 16; + $8 = $7&255; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 1|0); + HEAP8[$10>>0] = $8; + $11 = HEAP32[$1>>2]|0; + $12 = $11 >>> 8; + $13 = $12&255; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 2|0); + HEAP8[$15>>0] = $13; + $16 = HEAP32[$1>>2]|0; + $17 = $16&255; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 3|0); + HEAP8[$19>>0] = $17; + STACKTOP = sp;return; +} +function _sqlite3PagerExclusiveLock($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $rc = sp; + HEAP32[$0>>2] = $pPager; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (_pagerUseWal($1)|0); + $3 = (0)==($2|0); + if (!($3)) { + $6 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($6|0); + } + $4 = HEAP32[$0>>2]|0; + $5 = (_pager_wait_on_lock($4,4)|0); + HEAP32[$rc>>2] = $5; + $6 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($6|0); +} +function _writeJournalHdr($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; + var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; + var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; + var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; + var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $ii = 0, $nHeader = 0, $nWrite = 0, $rc = 0; + var $zHeader = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $rc = sp; + $zHeader = sp + 4|0; + $nHeader = sp + 8|0; + $nWrite = sp + 12|0; + $ii = sp + 16|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 200|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$zHeader>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 152|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$nHeader>>2] = $6; + $7 = HEAP32[$nHeader>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 148|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($7>>>0)>($10>>>0); + if ($11) { + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 148|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$nHeader>>2] = $14; + } + HEAP32[$ii>>2] = 0; + while(1) { + $15 = HEAP32[$ii>>2]|0; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 96|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($15|0)<($18|0); + if (!($19)) { + break; + } + $20 = HEAP32[$ii>>2]|0; + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 92|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + (($20*48)|0)|0); + $25 = (($24) + 8|0); + $26 = $25; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = (($26) + 4)|0; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = ($28|0)==(0); + $33 = ($31|0)==(0); + $34 = $32 & $33; + if ($34) { + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 72|0); + $37 = $36; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (($37) + 4)|0; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$ii>>2]|0; + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 92|0); + $46 = HEAP32[$45>>2]|0; + $47 = (($46) + (($43*48)|0)|0); + $48 = (($47) + 8|0); + $49 = $48; + $50 = $49; + HEAP32[$50>>2] = $39; + $51 = (($49) + 4)|0; + $52 = $51; + HEAP32[$52>>2] = $42; + } + $53 = HEAP32[$ii>>2]|0; + $54 = (($53) + 1)|0; + HEAP32[$ii>>2] = $54; + } + $55 = HEAP32[$0>>2]|0; + $56 = (_journalHdrOffset($55)|0); + $57 = tempRet0; + $58 = HEAP32[$0>>2]|0; + $59 = (($58) + 72|0); + $60 = $59; + $61 = $60; + HEAP32[$61>>2] = $56; + $62 = (($60) + 4)|0; + $63 = $62; + HEAP32[$63>>2] = $57; + $64 = HEAP32[$0>>2]|0; + $65 = (($64) + 80|0); + $66 = $65; + $67 = $66; + HEAP32[$67>>2] = $56; + $68 = (($66) + 4)|0; + $69 = $68; + HEAP32[$69>>2] = $57; + $70 = HEAP32[$0>>2]|0; + $71 = (($70) + 7|0); + $72 = HEAP8[$71>>0]|0; + $73 = $72&255; + $74 = ($73|0)!=(0); + if ($74) { + label = 11; + } else { + $75 = HEAP32[$0>>2]|0; + $76 = (($75) + 5|0); + $77 = HEAP8[$76>>0]|0; + $78 = $77&255; + $79 = ($78|0)==(4); + if ($79) { + label = 11; + } else { + $80 = HEAP32[$0>>2]|0; + $81 = (($80) + 60|0); + $82 = HEAP32[$81>>2]|0; + $83 = (_sqlite3OsDeviceCharacteristics($82)|0); + $84 = $83 & 512; + $85 = ($84|0)!=(0); + if ($85) { + label = 11; + } else { + $89 = HEAP32[$zHeader>>2]|0; + dest=$89+0|0; stop=dest+12|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + } + } + } + if ((label|0) == 11) { + $86 = HEAP32[$zHeader>>2]|0; + ;HEAP8[$86+0>>0]=HEAP8[10992+0>>0]|0;HEAP8[$86+1>>0]=HEAP8[10992+1>>0]|0;HEAP8[$86+2>>0]=HEAP8[10992+2>>0]|0;HEAP8[$86+3>>0]=HEAP8[10992+3>>0]|0;HEAP8[$86+4>>0]=HEAP8[10992+4>>0]|0;HEAP8[$86+5>>0]=HEAP8[10992+5>>0]|0;HEAP8[$86+6>>0]=HEAP8[10992+6>>0]|0;HEAP8[$86+7>>0]=HEAP8[10992+7>>0]|0; + $87 = HEAP32[$zHeader>>2]|0; + $88 = (($87) + 8|0); + _sqlite3Put4byte($88,-1); + } + $90 = HEAP32[$0>>2]|0; + $91 = (($90) + 48|0); + _sqlite3_randomness(4,$91); + $92 = HEAP32[$zHeader>>2]|0; + $93 = (($92) + 12|0); + $94 = HEAP32[$0>>2]|0; + $95 = (($94) + 48|0); + $96 = HEAP32[$95>>2]|0; + _sqlite3Put4byte($93,$96); + $97 = HEAP32[$zHeader>>2]|0; + $98 = (($97) + 16|0); + $99 = HEAP32[$0>>2]|0; + $100 = (($99) + 28|0); + $101 = HEAP32[$100>>2]|0; + _sqlite3Put4byte($98,$101); + $102 = HEAP32[$zHeader>>2]|0; + $103 = (($102) + 20|0); + $104 = HEAP32[$0>>2]|0; + $105 = (($104) + 148|0); + $106 = HEAP32[$105>>2]|0; + _sqlite3Put4byte($103,$106); + $107 = HEAP32[$zHeader>>2]|0; + $108 = (($107) + 24|0); + $109 = HEAP32[$0>>2]|0; + $110 = (($109) + 152|0); + $111 = HEAP32[$110>>2]|0; + _sqlite3Put4byte($108,$111); + $112 = HEAP32[$zHeader>>2]|0; + $113 = (($112) + 28|0); + $114 = HEAP32[$nHeader>>2]|0; + $115 = (($114) - 28)|0; + _memset(($113|0),0,($115|0))|0; + HEAP32[$nWrite>>2] = 0; + while(1) { + $116 = HEAP32[$rc>>2]|0; + $117 = ($116|0)==(0); + if (!($117)) { + label = 17; + break; + } + $118 = HEAP32[$nWrite>>2]|0; + $119 = HEAP32[$0>>2]|0; + $120 = (($119) + 148|0); + $121 = HEAP32[$120>>2]|0; + $122 = ($118>>>0)<($121>>>0); + if (!($122)) { + label = 17; + break; + } + $123 = HEAP32[$0>>2]|0; + $124 = (($123) + 64|0); + $125 = HEAP32[$124>>2]|0; + $126 = HEAP32[$zHeader>>2]|0; + $127 = HEAP32[$nHeader>>2]|0; + $128 = HEAP32[$0>>2]|0; + $129 = (($128) + 72|0); + $130 = $129; + $131 = $130; + $132 = HEAP32[$131>>2]|0; + $133 = (($130) + 4)|0; + $134 = $133; + $135 = HEAP32[$134>>2]|0; + $136 = (_sqlite3OsWrite($125,$126,$127,$132,$135)|0); + HEAP32[$rc>>2] = $136; + $137 = HEAP32[$nHeader>>2]|0; + $138 = HEAP32[$0>>2]|0; + $139 = (($138) + 72|0); + $140 = $139; + $141 = $140; + $142 = HEAP32[$141>>2]|0; + $143 = (($140) + 4)|0; + $144 = $143; + $145 = HEAP32[$144>>2]|0; + $146 = (_i64Add(($142|0),($145|0),($137|0),0)|0); + $147 = tempRet0; + $148 = $139; + $149 = $148; + HEAP32[$149>>2] = $146; + $150 = (($148) + 4)|0; + $151 = $150; + HEAP32[$151>>2] = $147; + $152 = HEAP32[$nHeader>>2]|0; + $153 = HEAP32[$nWrite>>2]|0; + $154 = (($153) + ($152))|0; + HEAP32[$nWrite>>2] = $154; + } + if ((label|0) == 17) { + $155 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($155|0); + } + return 0|0; +} +function _sqlite3PcacheClearSyncFlags($pCache) { + $pCache = $pCache|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pCache; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $2; + while(1) { + $3 = HEAP32[$p>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + break; + } + $5 = HEAP32[$p>>2]|0; + $6 = (($5) + 24|0); + $7 = HEAP16[$6>>1]|0; + $8 = $7&65535; + $9 = $8 & -5; + $10 = $9&65535; + HEAP16[$6>>1] = $10; + $11 = HEAP32[$p>>2]|0; + $12 = (($11) + 32|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$p>>2] = $13; + } + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 8|0); + HEAP32[$18>>2] = $16; + STACKTOP = sp;return; +} +function _pager_wait_on_lock($pPager,$locktype) { + $pPager = $pPager|0; + $locktype = $locktype|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $locktype; + while(1) { + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_pagerLockDb($2,$3)|0); + HEAP32[$rc>>2] = $4; + $5 = HEAP32[$rc>>2]|0; + $6 = ($5|0)==(5); + if (!($6)) { + label = 4; + break; + } + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 176|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 180|0); + $12 = HEAP32[$11>>2]|0; + $13 = (FUNCTION_TABLE_ii[$9 & 63]($12)|0); + $14 = ($13|0)!=(0); + if (!($14)) { + label = 4; + break; + } + } + if ((label|0) == 4) { + $15 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($15|0); + } + return 0|0; +} +function _pagerLockDb($pPager,$eLock) { + $pPager = $pPager|0; + $eLock = $eLock|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $eLock; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 17|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = HEAP32[$1>>2]|0; + $7 = ($5|0)<($6|0); + if (!($7)) { + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 17|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = ($11|0)==(5); + if (!($12)) { + $37 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($37|0); + } + } + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 13|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = ($16|0)!=(0); + if ($17) { + $23 = 0; + } else { + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 60|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$1>>2]|0; + $22 = (_sqlite3OsLock($20,$21)|0); + $23 = $22; + } + HEAP32[$rc>>2] = $23; + $24 = HEAP32[$rc>>2]|0; + $25 = ($24|0)==(0); + if (!($25)) { + $37 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($37|0); + } + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 17|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = ($29|0)!=(5); + if (!($30)) { + $31 = HEAP32[$1>>2]|0; + $32 = ($31|0)==(4); + if (!($32)) { + $37 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($37|0); + } + } + $33 = HEAP32[$1>>2]|0; + $34 = $33&255; + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 17|0); + HEAP8[$36>>0] = $34; + $37 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($37|0); +} +function _sqlite3WalFrames($pWal,$szPage,$pList,$nTruncate,$isCommit,$sync_flags) { + $pWal = $pWal|0; + $szPage = $szPage|0; + $pList = $pList|0; + $nTruncate = $nTruncate|0; + $isCommit = $isCommit|0; + $sync_flags = $sync_flags|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; + var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; + var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; + var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; + var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; + var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; + var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; + var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; + var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; + var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; + var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0; + var $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0; + var $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0; + var $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0; + var $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0; + var $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0; + var $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0; + var $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aCksum = 0, $aWalHdr = 0, $iFrame = 0, $iOffset = 0, $nDbSize = 0, $nExtra = 0, $p = 0, $pLast = 0; + var $rc = 0, $sectorSize = 0, $sz = 0, $szFrame = 0, $w = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; + $0 = sp + 104|0; + $1 = sp + 100|0; + $2 = sp + 96|0; + $3 = sp + 92|0; + $4 = sp + 88|0; + $5 = sp + 84|0; + $6 = sp + 80|0; + $rc = sp + 76|0; + $iFrame = sp + 72|0; + $p = sp + 60|0; + $pLast = sp + 56|0; + $nExtra = sp + 52|0; + $szFrame = sp + 48|0; + $iOffset = sp + 32|0; + $w = sp + 8|0; + $aWalHdr = sp + 112|0; + $aCksum = sp + 64|0; + $nDbSize = sp + 40|0; + $sectorSize = sp + 44|0; + $sz = sp; + HEAP32[$1>>2] = $pWal; + HEAP32[$2>>2] = $szPage; + HEAP32[$3>>2] = $pList; + HEAP32[$4>>2] = $nTruncate; + HEAP32[$5>>2] = $isCommit; + HEAP32[$6>>2] = $sync_flags; + HEAP32[$pLast>>2] = 0; + HEAP32[$nExtra>>2] = 0; + $7 = HEAP32[$1>>2]|0; + $8 = (_walRestartLog($7)|0); + HEAP32[$rc>>2] = $8; + $9 = (0)!=($8|0); + if ($9) { + $10 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $10; + $410 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($410|0); + } + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 52|0); + $13 = (($12) + 16|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$iFrame>>2] = $14; + $15 = HEAP32[$iFrame>>2]|0; + $16 = ($15|0)==(0); + if ($16) { + $17 = HEAP8[1480>>0]|0; + $18 = $17 << 24 >> 24; + $19 = ($18|0)==(0); + $20 = $19&1; + $21 = 931071618 | $20; + _sqlite3Put4byte($aWalHdr,$21); + $22 = (($aWalHdr) + 4|0); + _sqlite3Put4byte($22,3007000); + $23 = (($aWalHdr) + 8|0); + $24 = HEAP32[$2>>2]|0; + _sqlite3Put4byte($23,$24); + $25 = (($aWalHdr) + 12|0); + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 104|0); + $28 = HEAP32[$27>>2]|0; + _sqlite3Put4byte($25,$28); + $29 = HEAP32[$1>>2]|0; + $30 = (($29) + 104|0); + $31 = HEAP32[$30>>2]|0; + $32 = ($31|0)==(0); + if ($32) { + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 52|0); + $35 = (($34) + 32|0); + _sqlite3_randomness(8,$35); + } + $36 = (($aWalHdr) + 16|0); + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 52|0); + $39 = (($38) + 32|0); + ;HEAP8[$36+0>>0]=HEAP8[$39+0>>0]|0;HEAP8[$36+1>>0]=HEAP8[$39+1>>0]|0;HEAP8[$36+2>>0]=HEAP8[$39+2>>0]|0;HEAP8[$36+3>>0]=HEAP8[$39+3>>0]|0;HEAP8[$36+4>>0]=HEAP8[$39+4>>0]|0;HEAP8[$36+5>>0]=HEAP8[$39+5>>0]|0;HEAP8[$36+6>>0]=HEAP8[$39+6>>0]|0;HEAP8[$36+7>>0]=HEAP8[$39+7>>0]|0; + _walChecksumBytes(1,$aWalHdr,24,0,$aCksum); + $40 = (($aWalHdr) + 24|0); + $41 = HEAP32[$aCksum>>2]|0; + _sqlite3Put4byte($40,$41); + $42 = (($aWalHdr) + 28|0); + $43 = (($aCksum) + 4|0); + $44 = HEAP32[$43>>2]|0; + _sqlite3Put4byte($42,$44); + $45 = HEAP32[$2>>2]|0; + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 36|0); + HEAP32[$47>>2] = $45; + $48 = HEAP8[1480>>0]|0; + $49 = $48 << 24 >> 24; + $50 = ($49|0)==(0); + $51 = $50&1; + $52 = $51&255; + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 52|0); + $55 = (($54) + 13|0); + HEAP8[$55>>0] = $52; + $56 = HEAP32[$aCksum>>2]|0; + $57 = HEAP32[$1>>2]|0; + $58 = (($57) + 52|0); + $59 = (($58) + 24|0); + HEAP32[$59>>2] = $56; + $60 = (($aCksum) + 4|0); + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$1>>2]|0; + $63 = (($62) + 52|0); + $64 = (($63) + 24|0); + $65 = (($64) + 4|0); + HEAP32[$65>>2] = $61; + $66 = HEAP32[$1>>2]|0; + $67 = (($66) + 47|0); + HEAP8[$67>>0] = 1; + $68 = HEAP32[$1>>2]|0; + $69 = (($68) + 8|0); + $70 = HEAP32[$69>>2]|0; + $71 = (_sqlite3OsWrite($70,$aWalHdr,32,0,0)|0); + HEAP32[$rc>>2] = $71; + $72 = HEAP32[$rc>>2]|0; + $73 = ($72|0)!=(0); + if ($73) { + $74 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $74; + $410 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($410|0); + } + $75 = HEAP32[$1>>2]|0; + $76 = (($75) + 48|0); + $77 = HEAP8[$76>>0]|0; + $78 = $77&255; + $79 = ($78|0)!=(0); + if ($79) { + $80 = HEAP32[$6>>2]|0; + $81 = ($80|0)!=(0); + if ($81) { + $82 = HEAP32[$1>>2]|0; + $83 = (($82) + 8|0); + $84 = HEAP32[$83>>2]|0; + $85 = HEAP32[$6>>2]|0; + $86 = $85 & 19; + $87 = (_sqlite3OsSync($84,$86)|0); + HEAP32[$rc>>2] = $87; + $88 = HEAP32[$rc>>2]|0; + $89 = ($88|0)!=(0); + if ($89) { + $90 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $90; + $410 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($410|0); + } + } + } + } + $91 = HEAP32[$1>>2]|0; + HEAP32[$w>>2] = $91; + $92 = HEAP32[$1>>2]|0; + $93 = (($92) + 8|0); + $94 = HEAP32[$93>>2]|0; + $95 = (($w) + 4|0); + HEAP32[$95>>2] = $94; + $96 = (($w) + 8|0); + $97 = $96; + $98 = $97; + HEAP32[$98>>2] = 0; + $99 = (($97) + 4)|0; + $100 = $99; + HEAP32[$100>>2] = 0; + $101 = HEAP32[$6>>2]|0; + $102 = (($w) + 16|0); + HEAP32[$102>>2] = $101; + $103 = HEAP32[$2>>2]|0; + $104 = (($w) + 20|0); + HEAP32[$104>>2] = $103; + $105 = HEAP32[$iFrame>>2]|0; + $106 = (($105) + 1)|0; + $107 = (($106) - 1)|0; + $108 = HEAP32[$2>>2]|0; + $109 = (($108) + 24)|0; + $110 = ($109|0)<(0); + $111 = $110 << 31 >> 31; + $112 = (___muldi3(($107|0),0,($109|0),($111|0))|0); + $113 = tempRet0; + $114 = (_i64Add(32,0,($112|0),($113|0))|0); + $115 = tempRet0; + $116 = $iOffset; + $117 = $116; + HEAP32[$117>>2] = $114; + $118 = (($116) + 4)|0; + $119 = $118; + HEAP32[$119>>2] = $115; + $120 = HEAP32[$2>>2]|0; + $121 = (($120) + 24)|0; + HEAP32[$szFrame>>2] = $121; + $122 = HEAP32[$3>>2]|0; + HEAP32[$p>>2] = $122; + while(1) { + $123 = HEAP32[$p>>2]|0; + $124 = ($123|0)!=(0|0); + if (!($124)) { + break; + } + $125 = HEAP32[$iFrame>>2]|0; + $126 = (($125) + 1)|0; + HEAP32[$iFrame>>2] = $126; + $127 = HEAP32[$5>>2]|0; + $128 = ($127|0)!=(0); + if ($128) { + $129 = HEAP32[$p>>2]|0; + $130 = (($129) + 12|0); + $131 = HEAP32[$130>>2]|0; + $132 = ($131|0)==(0|0); + $133 = HEAP32[$4>>2]|0; + $$ = $132 ? $133 : 0; + $134 = $$; + } else { + $134 = 0; + } + HEAP32[$nDbSize>>2] = $134; + $135 = HEAP32[$p>>2]|0; + $136 = HEAP32[$nDbSize>>2]|0; + $137 = $iOffset; + $138 = $137; + $139 = HEAP32[$138>>2]|0; + $140 = (($137) + 4)|0; + $141 = $140; + $142 = HEAP32[$141>>2]|0; + $143 = (_walWriteOneFrame($w,$135,$136,$139,$142)|0); + HEAP32[$rc>>2] = $143; + $144 = HEAP32[$rc>>2]|0; + $145 = ($144|0)!=(0); + if ($145) { + label = 17; + break; + } + $147 = HEAP32[$p>>2]|0; + HEAP32[$pLast>>2] = $147; + $148 = HEAP32[$szFrame>>2]|0; + $149 = ($148|0)<(0); + $150 = $149 << 31 >> 31; + $151 = $iOffset; + $152 = $151; + $153 = HEAP32[$152>>2]|0; + $154 = (($151) + 4)|0; + $155 = $154; + $156 = HEAP32[$155>>2]|0; + $157 = (_i64Add(($153|0),($156|0),($148|0),($150|0))|0); + $158 = tempRet0; + $159 = $iOffset; + $160 = $159; + HEAP32[$160>>2] = $157; + $161 = (($159) + 4)|0; + $162 = $161; + HEAP32[$162>>2] = $158; + $163 = HEAP32[$p>>2]|0; + $164 = (($163) + 12|0); + $165 = HEAP32[$164>>2]|0; + HEAP32[$p>>2] = $165; + } + if ((label|0) == 17) { + $146 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $146; + $410 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($410|0); + } + $166 = HEAP32[$5>>2]|0; + $167 = ($166|0)!=(0); + L30: do { + if ($167) { + $168 = HEAP32[$6>>2]|0; + $169 = $168 & 32; + $170 = ($169|0)!=(0); + if ($170) { + $171 = HEAP32[$1>>2]|0; + $172 = (($171) + 49|0); + $173 = HEAP8[$172>>0]|0; + $174 = ($173<<24>>24)!=(0); + if (!($174)) { + $254 = (($w) + 4|0); + $255 = HEAP32[$254>>2]|0; + $256 = HEAP32[$6>>2]|0; + $257 = $256 & 19; + $258 = (_sqlite3OsSync($255,$257)|0); + HEAP32[$rc>>2] = $258; + break; + } + $175 = HEAP32[$1>>2]|0; + $176 = (($175) + 8|0); + $177 = HEAP32[$176>>2]|0; + $178 = (_sqlite3SectorSize($177)|0); + HEAP32[$sectorSize>>2] = $178; + $179 = $iOffset; + $180 = $179; + $181 = HEAP32[$180>>2]|0; + $182 = (($179) + 4)|0; + $183 = $182; + $184 = HEAP32[$183>>2]|0; + $185 = HEAP32[$sectorSize>>2]|0; + $186 = ($185|0)<(0); + $187 = $186 << 31 >> 31; + $188 = (_i64Add(($181|0),($184|0),($185|0),($187|0))|0); + $189 = tempRet0; + $190 = (_i64Subtract(($188|0),($189|0),1,0)|0); + $191 = tempRet0; + $192 = HEAP32[$sectorSize>>2]|0; + $193 = ($192|0)<(0); + $194 = $193 << 31 >> 31; + $195 = (___divdi3(($190|0),($191|0),($192|0),($194|0))|0); + $196 = tempRet0; + $197 = HEAP32[$sectorSize>>2]|0; + $198 = ($197|0)<(0); + $199 = $198 << 31 >> 31; + $200 = (___muldi3(($195|0),($196|0),($197|0),($199|0))|0); + $201 = tempRet0; + $202 = (($w) + 8|0); + $203 = $202; + $204 = $203; + HEAP32[$204>>2] = $200; + $205 = (($203) + 4)|0; + $206 = $205; + HEAP32[$206>>2] = $201; + while(1) { + $207 = $iOffset; + $208 = $207; + $209 = HEAP32[$208>>2]|0; + $210 = (($207) + 4)|0; + $211 = $210; + $212 = HEAP32[$211>>2]|0; + $213 = (($w) + 8|0); + $214 = $213; + $215 = $214; + $216 = HEAP32[$215>>2]|0; + $217 = (($214) + 4)|0; + $218 = $217; + $219 = HEAP32[$218>>2]|0; + $220 = ($212|0)<($219|0); + $221 = ($212|0)==($219|0); + $222 = ($209>>>0)<($216>>>0); + $223 = $221 & $222; + $224 = $220 | $223; + if (!($224)) { + break L30; + } + $225 = HEAP32[$pLast>>2]|0; + $226 = HEAP32[$4>>2]|0; + $227 = $iOffset; + $228 = $227; + $229 = HEAP32[$228>>2]|0; + $230 = (($227) + 4)|0; + $231 = $230; + $232 = HEAP32[$231>>2]|0; + $233 = (_walWriteOneFrame($w,$225,$226,$229,$232)|0); + HEAP32[$rc>>2] = $233; + $234 = HEAP32[$rc>>2]|0; + $235 = ($234|0)!=(0); + if ($235) { + break; + } + $237 = HEAP32[$szFrame>>2]|0; + $238 = ($237|0)<(0); + $239 = $238 << 31 >> 31; + $240 = $iOffset; + $241 = $240; + $242 = HEAP32[$241>>2]|0; + $243 = (($240) + 4)|0; + $244 = $243; + $245 = HEAP32[$244>>2]|0; + $246 = (_i64Add(($242|0),($245|0),($237|0),($239|0))|0); + $247 = tempRet0; + $248 = $iOffset; + $249 = $248; + HEAP32[$249>>2] = $246; + $250 = (($248) + 4)|0; + $251 = $250; + HEAP32[$251>>2] = $247; + $252 = HEAP32[$nExtra>>2]|0; + $253 = (($252) + 1)|0; + HEAP32[$nExtra>>2] = $253; + } + $236 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $236; + $410 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($410|0); + } + } + } while(0); + $259 = HEAP32[$5>>2]|0; + $260 = ($259|0)!=(0); + if ($260) { + $261 = HEAP32[$1>>2]|0; + $262 = (($261) + 47|0); + $263 = HEAP8[$262>>0]|0; + $264 = $263&255; + $265 = ($264|0)!=(0); + if ($265) { + $266 = HEAP32[$1>>2]|0; + $267 = (($266) + 16|0); + $268 = $267; + $269 = $268; + $270 = HEAP32[$269>>2]|0; + $271 = (($268) + 4)|0; + $272 = $271; + $273 = HEAP32[$272>>2]|0; + $274 = ($273|0)>(0); + $275 = ($273|0)==(0); + $276 = ($270>>>0)>=(0); + $277 = $275 & $276; + $278 = $274 | $277; + if ($278) { + $279 = HEAP32[$1>>2]|0; + $280 = (($279) + 16|0); + $281 = $280; + $282 = $281; + $283 = HEAP32[$282>>2]|0; + $284 = (($281) + 4)|0; + $285 = $284; + $286 = HEAP32[$285>>2]|0; + $287 = $sz; + $288 = $287; + HEAP32[$288>>2] = $283; + $289 = (($287) + 4)|0; + $290 = $289; + HEAP32[$290>>2] = $286; + $291 = HEAP32[$iFrame>>2]|0; + $292 = HEAP32[$nExtra>>2]|0; + $293 = (($291) + ($292))|0; + $294 = (($293) + 1)|0; + $295 = (($294) - 1)|0; + $296 = HEAP32[$2>>2]|0; + $297 = (($296) + 24)|0; + $298 = ($297|0)<(0); + $299 = $298 << 31 >> 31; + $300 = (___muldi3(($295|0),0,($297|0),($299|0))|0); + $301 = tempRet0; + $302 = (_i64Add(32,0,($300|0),($301|0))|0); + $303 = tempRet0; + $304 = HEAP32[$1>>2]|0; + $305 = (($304) + 16|0); + $306 = $305; + $307 = $306; + $308 = HEAP32[$307>>2]|0; + $309 = (($306) + 4)|0; + $310 = $309; + $311 = HEAP32[$310>>2]|0; + $312 = ($303|0)>($311|0); + $313 = ($303|0)==($311|0); + $314 = ($302>>>0)>($308>>>0); + $315 = $313 & $314; + $316 = $312 | $315; + if ($316) { + $317 = HEAP32[$iFrame>>2]|0; + $318 = HEAP32[$nExtra>>2]|0; + $319 = (($317) + ($318))|0; + $320 = (($319) + 1)|0; + $321 = (($320) - 1)|0; + $322 = HEAP32[$2>>2]|0; + $323 = (($322) + 24)|0; + $324 = ($323|0)<(0); + $325 = $324 << 31 >> 31; + $326 = (___muldi3(($321|0),0,($323|0),($325|0))|0); + $327 = tempRet0; + $328 = (_i64Add(32,0,($326|0),($327|0))|0); + $329 = tempRet0; + $330 = $sz; + $331 = $330; + HEAP32[$331>>2] = $328; + $332 = (($330) + 4)|0; + $333 = $332; + HEAP32[$333>>2] = $329; + } + $334 = HEAP32[$1>>2]|0; + $335 = $sz; + $336 = $335; + $337 = HEAP32[$336>>2]|0; + $338 = (($335) + 4)|0; + $339 = $338; + $340 = HEAP32[$339>>2]|0; + _walLimitSize($334,$337,$340); + $341 = HEAP32[$1>>2]|0; + $342 = (($341) + 47|0); + HEAP8[$342>>0] = 0; + } + } + } + $343 = HEAP32[$1>>2]|0; + $344 = (($343) + 52|0); + $345 = (($344) + 16|0); + $346 = HEAP32[$345>>2]|0; + HEAP32[$iFrame>>2] = $346; + $347 = HEAP32[$3>>2]|0; + HEAP32[$p>>2] = $347; + while(1) { + $348 = HEAP32[$p>>2]|0; + $349 = ($348|0)!=(0|0); + if (!($349)) { + break; + } + $350 = HEAP32[$rc>>2]|0; + $351 = ($350|0)==(0); + if (!($351)) { + break; + } + $352 = HEAP32[$iFrame>>2]|0; + $353 = (($352) + 1)|0; + HEAP32[$iFrame>>2] = $353; + $354 = HEAP32[$1>>2]|0; + $355 = HEAP32[$iFrame>>2]|0; + $356 = HEAP32[$p>>2]|0; + $357 = (($356) + 20|0); + $358 = HEAP32[$357>>2]|0; + $359 = (_walIndexAppend($354,$355,$358)|0); + HEAP32[$rc>>2] = $359; + $360 = HEAP32[$p>>2]|0; + $361 = (($360) + 12|0); + $362 = HEAP32[$361>>2]|0; + HEAP32[$p>>2] = $362; + } + while(1) { + $363 = HEAP32[$rc>>2]|0; + $364 = ($363|0)==(0); + if (!($364)) { + break; + } + $365 = HEAP32[$nExtra>>2]|0; + $366 = ($365|0)>(0); + if (!($366)) { + break; + } + $367 = HEAP32[$iFrame>>2]|0; + $368 = (($367) + 1)|0; + HEAP32[$iFrame>>2] = $368; + $369 = HEAP32[$nExtra>>2]|0; + $370 = (($369) + -1)|0; + HEAP32[$nExtra>>2] = $370; + $371 = HEAP32[$1>>2]|0; + $372 = HEAP32[$iFrame>>2]|0; + $373 = HEAP32[$pLast>>2]|0; + $374 = (($373) + 20|0); + $375 = HEAP32[$374>>2]|0; + $376 = (_walIndexAppend($371,$372,$375)|0); + HEAP32[$rc>>2] = $376; + } + $377 = HEAP32[$rc>>2]|0; + $378 = ($377|0)==(0); + if ($378) { + $379 = HEAP32[$2>>2]|0; + $380 = $379 & 65280; + $381 = HEAP32[$2>>2]|0; + $382 = $381 >> 16; + $383 = $380 | $382; + $384 = $383&65535; + $385 = HEAP32[$1>>2]|0; + $386 = (($385) + 52|0); + $387 = (($386) + 14|0); + HEAP16[$387>>1] = $384; + $388 = HEAP32[$iFrame>>2]|0; + $389 = HEAP32[$1>>2]|0; + $390 = (($389) + 52|0); + $391 = (($390) + 16|0); + HEAP32[$391>>2] = $388; + $392 = HEAP32[$5>>2]|0; + $393 = ($392|0)!=(0); + if ($393) { + $394 = HEAP32[$1>>2]|0; + $395 = (($394) + 52|0); + $396 = (($395) + 8|0); + $397 = HEAP32[$396>>2]|0; + $398 = (($397) + 1)|0; + HEAP32[$396>>2] = $398; + $399 = HEAP32[$4>>2]|0; + $400 = HEAP32[$1>>2]|0; + $401 = (($400) + 52|0); + $402 = (($401) + 20|0); + HEAP32[$402>>2] = $399; + } + $403 = HEAP32[$5>>2]|0; + $404 = ($403|0)!=(0); + if ($404) { + $405 = HEAP32[$1>>2]|0; + _walIndexWriteHdr($405); + $406 = HEAP32[$iFrame>>2]|0; + $407 = HEAP32[$1>>2]|0; + $408 = (($407) + 12|0); + HEAP32[$408>>2] = $406; + } + } + $409 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $409; + $410 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($410|0); +} +function _walRestartLog($pWal) { + $pWal = $pWal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; + var $9 = 0, $aSalt = 0, $cnt = 0, $i = 0, $notUsed = 0, $pInfo = 0, $rc = 0, $salt1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $rc = sp + 24|0; + $cnt = sp + 20|0; + $pInfo = sp + 16|0; + $salt1 = sp + 8|0; + $i = sp + 4|0; + $aSalt = sp; + $notUsed = sp + 12|0; + HEAP32[$1>>2] = $pWal; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 40|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4 << 16 >> 16; + $6 = ($5|0)==(0); + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = (_walCkptInfo($7)|0); + HEAP32[$pInfo>>2] = $8; + $9 = HEAP32[$pInfo>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = ($10>>>0)>(0); + do { + if ($11) { + _sqlite3_randomness(4,$salt1); + $12 = HEAP32[$1>>2]|0; + $13 = (_walLockExclusive($12,4,4)|0); + HEAP32[$rc>>2] = $13; + $14 = HEAP32[$rc>>2]|0; + $15 = ($14|0)==(0); + if (!($15)) { + $47 = HEAP32[$rc>>2]|0; + $48 = ($47|0)!=(5); + if (!($48)) { + break; + } + $49 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $49; + $60 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($60|0); + } + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 52|0); + $18 = (($17) + 32|0); + HEAP32[$aSalt>>2] = $18; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 104|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + 1)|0; + HEAP32[$20>>2] = $22; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 52|0); + $25 = (($24) + 16|0); + HEAP32[$25>>2] = 0; + $26 = HEAP32[$aSalt>>2]|0; + $27 = HEAP32[$aSalt>>2]|0; + $28 = (_sqlite3Get4byte($27)|0); + $29 = (1 + ($28))|0; + _sqlite3Put4byte($26,$29); + $30 = HEAP32[$salt1>>2]|0; + $31 = HEAP32[$aSalt>>2]|0; + $32 = (($31) + 4|0); + HEAP32[$32>>2] = $30; + $33 = HEAP32[$1>>2]|0; + _walIndexWriteHdr($33); + $34 = HEAP32[$pInfo>>2]|0; + HEAP32[$34>>2] = 0; + $35 = HEAP32[$pInfo>>2]|0; + $36 = (($35) + 4|0); + $37 = (($36) + 4|0); + HEAP32[$37>>2] = 0; + HEAP32[$i>>2] = 2; + while(1) { + $38 = HEAP32[$i>>2]|0; + $39 = ($38|0)<(5); + if (!($39)) { + break; + } + $40 = HEAP32[$i>>2]|0; + $41 = HEAP32[$pInfo>>2]|0; + $42 = (($41) + 4|0); + $43 = (($42) + ($40<<2)|0); + HEAP32[$43>>2] = -1; + $44 = HEAP32[$i>>2]|0; + $45 = (($44) + 1)|0; + HEAP32[$i>>2] = $45; + } + $46 = HEAP32[$1>>2]|0; + _walUnlockExclusive($46,4,4); + } + } while(0); + $50 = HEAP32[$1>>2]|0; + _walUnlockShared($50,3); + $51 = HEAP32[$1>>2]|0; + $52 = (($51) + 40|0); + HEAP16[$52>>1] = -1; + HEAP32[$cnt>>2] = 0; + while(1) { + $53 = HEAP32[$1>>2]|0; + $54 = HEAP32[$cnt>>2]|0; + $55 = (($54) + 1)|0; + HEAP32[$cnt>>2] = $55; + $56 = (_walTryBeginRead($53,$notUsed,1,$55)|0); + HEAP32[$rc>>2] = $56; + $57 = HEAP32[$rc>>2]|0; + $58 = ($57|0)==(-1); + if (!($58)) { + break; + } + } + } + $59 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $59; + $60 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($60|0); +} +function _walWriteOneFrame($p,$pPage,$nTruncate,$0,$1) { + $p = $p|0; + $pPage = $pPage|0; + $nTruncate = $nTruncate|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aFrame = 0, $pData = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $2 = sp + 28|0; + $3 = sp + 16|0; + $4 = sp + 8|0; + $5 = sp + 12|0; + $6 = sp; + $rc = sp + 20|0; + $pData = sp + 24|0; + $aFrame = sp + 32|0; + HEAP32[$3>>2] = $p; + HEAP32[$4>>2] = $pPage; + HEAP32[$5>>2] = $nTruncate; + $7 = $6; + $8 = $7; + HEAP32[$8>>2] = $0; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = $1; + $11 = HEAP32[$4>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pData>>2] = $13; + $14 = HEAP32[$3>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$4>>2]|0; + $17 = (($16) + 20|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$5>>2]|0; + $20 = HEAP32[$pData>>2]|0; + _walEncodeFrame($15,$18,$19,$20,$aFrame); + $21 = HEAP32[$3>>2]|0; + $22 = $6; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (($22) + 4)|0; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (_walWriteToLog($21,$aFrame,24,$24,$27)|0); + HEAP32[$rc>>2] = $28; + $29 = HEAP32[$rc>>2]|0; + $30 = ($29|0)!=(0); + if ($30) { + $31 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $31; + $47 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($47|0); + } else { + $32 = HEAP32[$3>>2]|0; + $33 = HEAP32[$pData>>2]|0; + $34 = HEAP32[$3>>2]|0; + $35 = (($34) + 20|0); + $36 = HEAP32[$35>>2]|0; + $37 = $6; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (($37) + 4)|0; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (_i64Add(($39|0),($42|0),24,0)|0); + $44 = tempRet0; + $45 = (_walWriteToLog($32,$33,$36,$43,$44)|0); + HEAP32[$rc>>2] = $45; + $46 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $46; + $47 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($47|0); + } + return 0|0; +} +function _walEncodeFrame($pWal,$iPage,$nTruncate,$aData,$aFrame) { + $pWal = $pWal|0; + $iPage = $iPage|0; + $nTruncate = $nTruncate|0; + $aData = $aData|0; + $aFrame = $aFrame|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aCksum = 0, $nativeCksum = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $nativeCksum = sp + 16|0; + $aCksum = sp + 20|0; + HEAP32[$0>>2] = $pWal; + HEAP32[$1>>2] = $iPage; + HEAP32[$2>>2] = $nTruncate; + HEAP32[$3>>2] = $aData; + HEAP32[$4>>2] = $aFrame; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 52|0); + $7 = (($6) + 24|0); + HEAP32[$aCksum>>2] = $7; + $8 = HEAP32[$4>>2]|0; + $9 = HEAP32[$1>>2]|0; + _sqlite3Put4byte($8,$9); + $10 = HEAP32[$4>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$2>>2]|0; + _sqlite3Put4byte($11,$12); + $13 = HEAP32[$4>>2]|0; + $14 = (($13) + 8|0); + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 52|0); + $17 = (($16) + 32|0); + ;HEAP8[$14+0>>0]=HEAP8[$17+0>>0]|0;HEAP8[$14+1>>0]=HEAP8[$17+1>>0]|0;HEAP8[$14+2>>0]=HEAP8[$17+2>>0]|0;HEAP8[$14+3>>0]=HEAP8[$17+3>>0]|0;HEAP8[$14+4>>0]=HEAP8[$17+4>>0]|0;HEAP8[$14+5>>0]=HEAP8[$17+5>>0]|0;HEAP8[$14+6>>0]=HEAP8[$17+6>>0]|0;HEAP8[$14+7>>0]=HEAP8[$17+7>>0]|0; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 52|0); + $20 = (($19) + 13|0); + $21 = HEAP8[$20>>0]|0; + $22 = $21&255; + $23 = HEAP8[1480>>0]|0; + $24 = $23 << 24 >> 24; + $25 = ($24|0)==(0); + $26 = $25&1; + $27 = ($22|0)==($26|0); + $28 = $27&1; + HEAP32[$nativeCksum>>2] = $28; + $29 = HEAP32[$nativeCksum>>2]|0; + $30 = HEAP32[$4>>2]|0; + $31 = HEAP32[$aCksum>>2]|0; + $32 = HEAP32[$aCksum>>2]|0; + _walChecksumBytes($29,$30,8,$31,$32); + $33 = HEAP32[$nativeCksum>>2]|0; + $34 = HEAP32[$3>>2]|0; + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 36|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$aCksum>>2]|0; + $39 = HEAP32[$aCksum>>2]|0; + _walChecksumBytes($33,$34,$37,$38,$39); + $40 = HEAP32[$4>>2]|0; + $41 = (($40) + 16|0); + $42 = HEAP32[$aCksum>>2]|0; + $43 = HEAP32[$42>>2]|0; + _sqlite3Put4byte($41,$43); + $44 = HEAP32[$4>>2]|0; + $45 = (($44) + 20|0); + $46 = HEAP32[$aCksum>>2]|0; + $47 = (($46) + 4|0); + $48 = HEAP32[$47>>2]|0; + _sqlite3Put4byte($45,$48); + STACKTOP = sp;return; +} +function _walWriteToLog($p,$pContent,$iAmt,$0,$1) { + $p = $p|0; + $pContent = $pContent|0; + $iAmt = $iAmt|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $14 = 0, $15 = 0, $16 = 0; + var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iFirstAmt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 28|0; + $3 = sp + 16|0; + $4 = sp + 8|0; + $5 = sp + 12|0; + $6 = sp; + $rc = sp + 20|0; + $iFirstAmt = sp + 24|0; + HEAP32[$3>>2] = $p; + HEAP32[$4>>2] = $pContent; + HEAP32[$5>>2] = $iAmt; + $7 = $6; + $8 = $7; + HEAP32[$8>>2] = $0; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = $1; + $11 = $6; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = (($11) + 4)|0; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$3>>2]|0; + $18 = (($17) + 8|0); + $19 = $18; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (($19) + 4)|0; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = ($16|0)<($24|0); + $26 = ($16|0)==($24|0); + $27 = ($13>>>0)<($21>>>0); + $28 = $26 & $27; + $29 = $25 | $28; + do { + if ($29) { + $30 = $6; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$5>>2]|0; + $37 = ($36|0)<(0); + $38 = $37 << 31 >> 31; + $39 = (_i64Add(($32|0),($35|0),($36|0),($38|0))|0); + $40 = tempRet0; + $41 = HEAP32[$3>>2]|0; + $42 = (($41) + 8|0); + $43 = $42; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = (($43) + 4)|0; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = ($40|0)>($48|0); + $50 = ($40|0)==($48|0); + $51 = ($39>>>0)>=($45>>>0); + $52 = $50 & $51; + $53 = $49 | $52; + if ($53) { + $54 = HEAP32[$3>>2]|0; + $55 = (($54) + 8|0); + $56 = $55; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = (($56) + 4)|0; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = $6; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (($62) + 4)|0; + $66 = $65; + $67 = HEAP32[$66>>2]|0; + $68 = (_i64Subtract(($58|0),($61|0),($64|0),($67|0))|0); + $69 = tempRet0; + HEAP32[$iFirstAmt>>2] = $68; + $70 = HEAP32[$3>>2]|0; + $71 = (($70) + 4|0); + $72 = HEAP32[$71>>2]|0; + $73 = HEAP32[$4>>2]|0; + $74 = HEAP32[$iFirstAmt>>2]|0; + $75 = $6; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = (($75) + 4)|0; + $79 = $78; + $80 = HEAP32[$79>>2]|0; + $81 = (_sqlite3OsWrite($72,$73,$74,$77,$80)|0); + HEAP32[$rc>>2] = $81; + $82 = HEAP32[$rc>>2]|0; + $83 = ($82|0)!=(0); + if ($83) { + $84 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $84; + $132 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($132|0); + } + $85 = HEAP32[$iFirstAmt>>2]|0; + $86 = ($85|0)<(0); + $87 = $86 << 31 >> 31; + $88 = $6; + $89 = $88; + $90 = HEAP32[$89>>2]|0; + $91 = (($88) + 4)|0; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $94 = (_i64Add(($90|0),($93|0),($85|0),($87|0))|0); + $95 = tempRet0; + $96 = $6; + $97 = $96; + HEAP32[$97>>2] = $94; + $98 = (($96) + 4)|0; + $99 = $98; + HEAP32[$99>>2] = $95; + $100 = HEAP32[$iFirstAmt>>2]|0; + $101 = HEAP32[$5>>2]|0; + $102 = (($101) - ($100))|0; + HEAP32[$5>>2] = $102; + $103 = HEAP32[$iFirstAmt>>2]|0; + $104 = HEAP32[$4>>2]|0; + $105 = (($104) + ($103)|0); + HEAP32[$4>>2] = $105; + $106 = HEAP32[$3>>2]|0; + $107 = (($106) + 4|0); + $108 = HEAP32[$107>>2]|0; + $109 = HEAP32[$3>>2]|0; + $110 = (($109) + 16|0); + $111 = HEAP32[$110>>2]|0; + $112 = $111 & 19; + $113 = (_sqlite3OsSync($108,$112)|0); + HEAP32[$rc>>2] = $113; + $114 = HEAP32[$5>>2]|0; + $115 = ($114|0)==(0); + if (!($115)) { + $116 = HEAP32[$rc>>2]|0; + $117 = ($116|0)!=(0); + if (!($117)) { + break; + } + } + $118 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $118; + $132 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($132|0); + } + } + } while(0); + $119 = HEAP32[$3>>2]|0; + $120 = (($119) + 4|0); + $121 = HEAP32[$120>>2]|0; + $122 = HEAP32[$4>>2]|0; + $123 = HEAP32[$5>>2]|0; + $124 = $6; + $125 = $124; + $126 = HEAP32[$125>>2]|0; + $127 = (($124) + 4)|0; + $128 = $127; + $129 = HEAP32[$128>>2]|0; + $130 = (_sqlite3OsWrite($121,$122,$123,$126,$129)|0); + HEAP32[$rc>>2] = $130; + $131 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $131; + $132 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($132|0); +} +function _walTryBeginRead($pWal,$pChanged,$useWal,$cnt) { + $pWal = $pWal|0; + $pChanged = $pChanged|0; + $useWal = $useWal|0; + $cnt = $cnt|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $i = 0, $mxI = 0, $mxReadMark = 0, $nDelay = 0, $pInfo = 0, $rc = 0, $thisMark = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $4 = sp + 28|0; + $pInfo = sp + 24|0; + $mxReadMark = sp + 20|0; + $mxI = sp + 12|0; + $i = sp + 8|0; + $rc = sp + 4|0; + $nDelay = sp; + $thisMark = sp + 16|0; + HEAP32[$1>>2] = $pWal; + HEAP32[$2>>2] = $pChanged; + HEAP32[$3>>2] = $useWal; + HEAP32[$4>>2] = $cnt; + HEAP32[$rc>>2] = 0; + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)>(5); + if ($6) { + HEAP32[$nDelay>>2] = 1; + $7 = HEAP32[$4>>2]|0; + $8 = ($7|0)>(100); + if ($8) { + HEAP32[$0>>2] = 15; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + $9 = HEAP32[$4>>2]|0; + $10 = ($9|0)>=(10); + if ($10) { + $11 = HEAP32[$4>>2]|0; + $12 = (($11) - 9)|0; + $13 = ($12*238)|0; + HEAP32[$nDelay>>2] = $13; + } + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$nDelay>>2]|0; + (_sqlite3OsSleep($15,$16)|0); + } + $17 = HEAP32[$3>>2]|0; + $18 = ($17|0)!=(0); + if (!($18)) { + $19 = HEAP32[$1>>2]|0; + $20 = HEAP32[$2>>2]|0; + $21 = (_walIndexReadHdr($19,$20)|0); + HEAP32[$rc>>2] = $21; + $22 = HEAP32[$rc>>2]|0; + $23 = ($22|0)==(5); + do { + if ($23) { + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 32|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)==(0|0); + if ($28) { + HEAP32[$rc>>2] = -1; + break; + } + $29 = HEAP32[$1>>2]|0; + $30 = (_walLockShared($29,2)|0); + HEAP32[$rc>>2] = $30; + $31 = (0)==($30|0); + if ($31) { + $32 = HEAP32[$1>>2]|0; + _walUnlockShared($32,2); + HEAP32[$rc>>2] = -1; + break; + } + $33 = HEAP32[$rc>>2]|0; + $34 = ($33|0)==(5); + if ($34) { + HEAP32[$rc>>2] = 261; + } + } + } while(0); + $35 = HEAP32[$rc>>2]|0; + $36 = ($35|0)!=(0); + if ($36) { + $37 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $37; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + } + $38 = HEAP32[$1>>2]|0; + $39 = (_walCkptInfo($38)|0); + HEAP32[$pInfo>>2] = $39; + $40 = HEAP32[$3>>2]|0; + $41 = ($40|0)!=(0); + do { + if (!($41)) { + $42 = HEAP32[$pInfo>>2]|0; + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 52|0); + $46 = (($45) + 16|0); + $47 = HEAP32[$46>>2]|0; + $48 = ($43|0)==($47|0); + if ($48) { + $49 = HEAP32[$1>>2]|0; + $50 = (_walLockShared($49,3)|0); + HEAP32[$rc>>2] = $50; + $51 = HEAP32[$1>>2]|0; + _walShmBarrier($51); + $52 = HEAP32[$rc>>2]|0; + $53 = ($52|0)==(0); + if (!($53)) { + $62 = HEAP32[$rc>>2]|0; + $63 = ($62|0)!=(5); + if (!($63)) { + break; + } + $64 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $64; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + $54 = HEAP32[$1>>2]|0; + $55 = (_walIndexHdr($54)|0); + $56 = HEAP32[$1>>2]|0; + $57 = (($56) + 52|0); + $58 = (_memcmp($55,$57,48)|0); + $59 = ($58|0)!=(0); + $60 = HEAP32[$1>>2]|0; + if ($59) { + _walUnlockShared($60,3); + HEAP32[$0>>2] = -1; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } else { + $61 = (($60) + 40|0); + HEAP16[$61>>1] = 0; + HEAP32[$0>>2] = 0; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + } + } + } while(0); + HEAP32[$mxReadMark>>2] = 0; + HEAP32[$mxI>>2] = 0; + HEAP32[$i>>2] = 1; + while(1) { + $65 = HEAP32[$i>>2]|0; + $66 = ($65|0)<(5); + if (!($66)) { + break; + } + $67 = HEAP32[$i>>2]|0; + $68 = HEAP32[$pInfo>>2]|0; + $69 = (($68) + 4|0); + $70 = (($69) + ($67<<2)|0); + $71 = HEAP32[$70>>2]|0; + HEAP32[$thisMark>>2] = $71; + $72 = HEAP32[$mxReadMark>>2]|0; + $73 = HEAP32[$thisMark>>2]|0; + $74 = ($72>>>0)<=($73>>>0); + if ($74) { + $75 = HEAP32[$thisMark>>2]|0; + $76 = HEAP32[$1>>2]|0; + $77 = (($76) + 52|0); + $78 = (($77) + 16|0); + $79 = HEAP32[$78>>2]|0; + $80 = ($75>>>0)<=($79>>>0); + if ($80) { + $81 = HEAP32[$thisMark>>2]|0; + HEAP32[$mxReadMark>>2] = $81; + $82 = HEAP32[$i>>2]|0; + HEAP32[$mxI>>2] = $82; + } + } + $83 = HEAP32[$i>>2]|0; + $84 = (($83) + 1)|0; + HEAP32[$i>>2] = $84; + } + $85 = HEAP32[$1>>2]|0; + $86 = (($85) + 46|0); + $87 = HEAP8[$86>>0]|0; + $88 = $87&255; + $89 = $88 & 2; + $90 = ($89|0)==(0); + L48: do { + if ($90) { + $91 = HEAP32[$mxReadMark>>2]|0; + $92 = HEAP32[$1>>2]|0; + $93 = (($92) + 52|0); + $94 = (($93) + 16|0); + $95 = HEAP32[$94>>2]|0; + $96 = ($91>>>0)<($95>>>0); + if (!($96)) { + $97 = HEAP32[$mxI>>2]|0; + $98 = ($97|0)==(0); + if (!($98)) { + break; + } + } + HEAP32[$i>>2] = 1; + while(1) { + $99 = HEAP32[$i>>2]|0; + $100 = ($99|0)<(5); + if (!($100)) { + break L48; + } + $101 = HEAP32[$1>>2]|0; + $102 = HEAP32[$i>>2]|0; + $103 = (3 + ($102))|0; + $104 = (_walLockExclusive($101,$103,1)|0); + HEAP32[$rc>>2] = $104; + $105 = HEAP32[$rc>>2]|0; + $106 = ($105|0)==(0); + if ($106) { + label = 37; + break; + } + $119 = HEAP32[$rc>>2]|0; + $120 = ($119|0)!=(5); + if ($120) { + break; + } + $122 = HEAP32[$i>>2]|0; + $123 = (($122) + 1)|0; + HEAP32[$i>>2] = $123; + } + if ((label|0) == 37) { + $107 = HEAP32[$1>>2]|0; + $108 = (($107) + 52|0); + $109 = (($108) + 16|0); + $110 = HEAP32[$109>>2]|0; + $111 = HEAP32[$i>>2]|0; + $112 = HEAP32[$pInfo>>2]|0; + $113 = (($112) + 4|0); + $114 = (($113) + ($111<<2)|0); + HEAP32[$114>>2] = $110; + HEAP32[$mxReadMark>>2] = $110; + $115 = HEAP32[$i>>2]|0; + HEAP32[$mxI>>2] = $115; + $116 = HEAP32[$1>>2]|0; + $117 = HEAP32[$i>>2]|0; + $118 = (3 + ($117))|0; + _walUnlockExclusive($116,$118,1); + break; + } + $121 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $121; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + } while(0); + $124 = HEAP32[$mxI>>2]|0; + $125 = ($124|0)==(0); + if ($125) { + $126 = HEAP32[$rc>>2]|0; + $127 = ($126|0)==(5); + $128 = $127 ? -1 : 520; + HEAP32[$0>>2] = $128; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + $129 = HEAP32[$1>>2]|0; + $130 = HEAP32[$mxI>>2]|0; + $131 = (3 + ($130))|0; + $132 = (_walLockShared($129,$131)|0); + HEAP32[$rc>>2] = $132; + $133 = HEAP32[$rc>>2]|0; + $134 = ($133|0)!=(0); + if ($134) { + $135 = HEAP32[$rc>>2]|0; + $136 = ($135|0)==(5); + $137 = HEAP32[$rc>>2]|0; + $138 = $136 ? -1 : $137; + HEAP32[$0>>2] = $138; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + $139 = HEAP32[$1>>2]|0; + _walShmBarrier($139); + $140 = HEAP32[$mxI>>2]|0; + $141 = HEAP32[$pInfo>>2]|0; + $142 = (($141) + 4|0); + $143 = (($142) + ($140<<2)|0); + $144 = HEAP32[$143>>2]|0; + $145 = HEAP32[$mxReadMark>>2]|0; + $146 = ($144|0)!=($145|0); + if (!($146)) { + $147 = HEAP32[$1>>2]|0; + $148 = (_walIndexHdr($147)|0); + $149 = HEAP32[$1>>2]|0; + $150 = (($149) + 52|0); + $151 = (_memcmp($148,$150,48)|0); + $152 = ($151|0)!=(0); + if (!($152)) { + $156 = HEAP32[$mxI>>2]|0; + $157 = $156&65535; + $158 = HEAP32[$1>>2]|0; + $159 = (($158) + 40|0); + HEAP16[$159>>1] = $157; + $160 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $160; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + } + $153 = HEAP32[$1>>2]|0; + $154 = HEAP32[$mxI>>2]|0; + $155 = (3 + ($154))|0; + _walUnlockShared($153,$155); + HEAP32[$0>>2] = -1; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); +} +function _openSubJournal($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $rc = sp; + HEAP32[$0>>2] = $pPager; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 68|0); + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if ($5) { + $24 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($24|0); + } + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 5|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = ($9|0)==(4); + if (!($10)) { + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 21|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = ($14|0)!=(0); + if (!($15)) { + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 68|0); + $22 = HEAP32[$21>>2]|0; + $23 = (_pagerOpentemp($19,$22,8192)|0); + HEAP32[$rc>>2] = $23; + $24 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($24|0); + } + } + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 68|0); + $18 = HEAP32[$17>>2]|0; + _sqlite3MemJournalOpen($18); + $24 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($24|0); +} +function _write32bits($fd,$0,$1,$val) { + $fd = $fd|0; + $0 = $0|0; + $1 = $1|0; + $val = $val|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ac = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 12|0; + $3 = sp; + $4 = sp + 8|0; + $ac = sp + 16|0; + HEAP32[$2>>2] = $fd; + $5 = $3; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + HEAP32[$4>>2] = $val; + $9 = HEAP32[$4>>2]|0; + _sqlite3Put4byte($ac,$9); + $10 = HEAP32[$2>>2]|0; + $11 = $3; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = (($11) + 4)|0; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (_sqlite3OsWrite($10,$ac,4,$13,$16)|0); + STACKTOP = sp;return ($17|0); +} +function _addToSavepointBitvecs($pPager,$pgno) { + $pPager = $pPager|0; + $pgno = $pgno|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ii = 0, $p = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $ii = sp + 4|0; + $rc = sp + 8|0; + $p = sp + 12|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $pgno; + HEAP32[$rc>>2] = 0; + HEAP32[$ii>>2] = 0; + while(1) { + $2 = HEAP32[$ii>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 96|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($2|0)<($5|0); + if (!($6)) { + break; + } + $7 = HEAP32[$ii>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 92|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + (($7*48)|0)|0); + HEAP32[$p>>2] = $11; + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 20|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($12>>>0)<=($15>>>0); + if ($16) { + $17 = HEAP32[$p>>2]|0; + $18 = (($17) + 16|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = (_sqlite3BitvecSet($19,$20)|0); + $22 = HEAP32[$rc>>2]|0; + $23 = $22 | $21; + HEAP32[$rc>>2] = $23; + } + $24 = HEAP32[$ii>>2]|0; + $25 = (($24) + 1)|0; + HEAP32[$ii>>2] = $25; + } + $26 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($26|0); +} +function _sqlite3HexToInt($h) { + $h = $h|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $h; + $1 = HEAP32[$0>>2]|0; + $2 = $1 >> 6; + $3 = 1 & $2; + $4 = ($3*9)|0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + ($4))|0; + HEAP32[$0>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = $7 & 15; + $9 = $8&255; + STACKTOP = sp;return ($9|0); +} +function _allSpaces($z,$n) { + $z = $z|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $z; + HEAP32[$1>>2] = $n; + while(1) { + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)>(0); + if ($3) { + $4 = HEAP32[$1>>2]|0; + $5 = (($4) - 1)|0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + ($5)|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8 << 24 >> 24; + $10 = ($9|0)==(32); + $15 = $10; + } else { + $15 = 0; + } + $11 = HEAP32[$1>>2]|0; + if (!($15)) { + break; + } + $12 = (($11) + -1)|0; + HEAP32[$1>>2] = $12; + } + $13 = ($11|0)==(0); + $14 = $13&1; + STACKTOP = sp;return ($14|0); +} +function _logBadConnection($zType) { + $zType = $zType|0; + var $0 = 0, $1 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 4|0; + HEAP32[$0>>2] = $zType; + $1 = HEAP32[$0>>2]|0; + HEAP32[$vararg_buffer>>2] = $1; + _sqlite3_log(21,11488,$vararg_buffer); + STACKTOP = sp;return; +} +function _sqlite3BtreeCheckpoint($p,$eMode,$pnLog,$pnCkpt) { + $p = $p|0; + $eMode = $eMode|0; + $pnLog = $pnLog|0; + $pnCkpt = $pnCkpt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $rc = sp + 12|0; + $pBt = sp + 16|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $eMode; + HEAP32[$2>>2] = $pnLog; + HEAP32[$3>>2] = $pnCkpt; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$0>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $21 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($21|0); + } + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pBt>>2] = $8; + $9 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($9); + $10 = HEAP32[$pBt>>2]|0; + $11 = (($10) + 20|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = ($13|0)!=(0); + if ($14) { + HEAP32[$rc>>2] = 6; + $21 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($21|0); + } else { + $15 = HEAP32[$pBt>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = HEAP32[$3>>2]|0; + $20 = (_sqlite3PagerCheckpoint($16,$17,$18,$19)|0); + HEAP32[$rc>>2] = $20; + $21 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($21|0); + } + return 0|0; +} +function _sqlite3PagerCheckpoint($pPager,$eMode,$pnLog,$pnCkpt) { + $pPager = $pPager|0; + $eMode = $eMode|0; + $pnLog = $pnLog|0; + $pnCkpt = $pnCkpt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $rc = sp + 12|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $eMode; + HEAP32[$2>>2] = $pnLog; + HEAP32[$3>>2] = $pnCkpt; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 208|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + $31 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($31|0); + } + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 208|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 176|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 180|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 9|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 152|0); + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 200|0); + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$2>>2]|0; + $29 = HEAP32[$3>>2]|0; + $30 = (_sqlite3WalCheckpoint($10,$11,$14,$17,$21,$24,$27,$28,$29)|0); + HEAP32[$rc>>2] = $30; + $31 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($31|0); +} +function _functionSearch($pHash,$h,$zFunc,$nFunc) { + $pHash = $pHash|0; + $h = $h|0; + $zFunc = $zFunc|0; + $nFunc = $nFunc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $p = sp + 16|0; + HEAP32[$1>>2] = $pHash; + HEAP32[$2>>2] = $h; + HEAP32[$3>>2] = $zFunc; + HEAP32[$4>>2] = $nFunc; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + ($5<<2)|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$p>>2] = $8; + while(1) { + $9 = HEAP32[$p>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + label = 7; + break; + } + $11 = HEAP32[$p>>2]|0; + $12 = (($11) + 24|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$3>>2]|0; + $15 = HEAP32[$4>>2]|0; + $16 = (_sqlite3_strnicmp($13,$14,$15)|0); + $17 = ($16|0)==(0); + if ($17) { + $18 = HEAP32[$4>>2]|0; + $19 = HEAP32[$p>>2]|0; + $20 = (($19) + 24|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + ($18)|0); + $23 = HEAP8[$22>>0]|0; + $24 = $23 << 24 >> 24; + $25 = ($24|0)==(0); + if ($25) { + label = 5; + break; + } + } + $27 = HEAP32[$p>>2]|0; + $28 = (($27) + 28|0); + $29 = HEAP32[$28>>2]|0; + HEAP32[$p>>2] = $29; + } + if ((label|0) == 5) { + $26 = HEAP32[$p>>2]|0; + HEAP32[$0>>2] = $26; + $30 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($30|0); + } + else if ((label|0) == 7) { + HEAP32[$0>>2] = 0; + $30 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($30|0); + } + return 0|0; +} +function _matchQuality($p,$nArg,$enc) { + $p = $p|0; + $nArg = $nArg|0; + $enc = $enc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $match = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 16|0; + $match = sp + 8|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $nArg; + HEAP8[$3>>0] = $enc; + $4 = HEAP32[$2>>2]|0; + $5 = ($4|0)==(-2); + $6 = HEAP32[$1>>2]|0; + if ($5) { + $7 = (($6) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 16|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)==(0|0); + $15 = $13; + } else { + $15 = 0; + } + $14 = $15 ? 0 : 6; + HEAP32[$0>>2] = $14; + $51 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($51|0); + } + $16 = HEAP16[$6>>1]|0; + $17 = $16 << 16 >> 16; + $18 = HEAP32[$2>>2]|0; + $19 = ($17|0)!=($18|0); + if ($19) { + $20 = HEAP32[$1>>2]|0; + $21 = HEAP16[$20>>1]|0; + $22 = $21 << 16 >> 16; + $23 = ($22|0)>=(0); + if ($23) { + HEAP32[$0>>2] = 0; + $51 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($51|0); + } + } + $24 = HEAP32[$1>>2]|0; + $25 = HEAP16[$24>>1]|0; + $26 = $25 << 16 >> 16; + $27 = HEAP32[$2>>2]|0; + $28 = ($26|0)==($27|0); + if ($28) { + HEAP32[$match>>2] = 4; + } else { + HEAP32[$match>>2] = 1; + } + $29 = HEAP8[$3>>0]|0; + $30 = $29&255; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 2|0); + $33 = HEAP16[$32>>1]|0; + $34 = $33&65535; + $35 = $34 & 3; + $36 = ($30|0)==($35|0); + if ($36) { + $37 = HEAP32[$match>>2]|0; + $38 = (($37) + 2)|0; + HEAP32[$match>>2] = $38; + } else { + $39 = HEAP8[$3>>0]|0; + $40 = $39&255; + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 2|0); + $43 = HEAP16[$42>>1]|0; + $44 = $43&65535; + $45 = $40 & $44; + $46 = $45 & 2; + $47 = ($46|0)!=(0); + if ($47) { + $48 = HEAP32[$match>>2]|0; + $49 = (($48) + 1)|0; + HEAP32[$match>>2] = $49; + } + } + $50 = HEAP32[$match>>2]|0; + HEAP32[$0>>2] = $50; + $51 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($51|0); +} +function _sqlite3FuncDefInsert($pHash,$pDef) { + $pHash = $pHash|0; + $pDef = $pDef|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c1 = 0, $h = 0, $nName = 0, $pOther = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $pOther = sp + 4|0; + $nName = sp + 8|0; + $c1 = sp + 20|0; + $h = sp + 12|0; + HEAP32[$0>>2] = $pHash; + HEAP32[$1>>2] = $pDef; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 24|0); + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3Strlen30($4)|0); + HEAP32[$nName>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 24|0); + $8 = HEAP32[$7>>2]|0; + $9 = HEAP8[$8>>0]|0; + HEAP8[$c1>>0] = $9; + $10 = HEAP8[$c1>>0]|0; + $11 = $10&255; + $12 = (784 + ($11)|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = HEAP32[$nName>>2]|0; + $16 = (($14) + ($15))|0; + $17 = (($16|0) % 23)&-1; + HEAP32[$h>>2] = $17; + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$h>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 24|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$nName>>2]|0; + $24 = (_functionSearch($18,$19,$22,$23)|0); + HEAP32[$pOther>>2] = $24; + $25 = HEAP32[$pOther>>2]|0; + $26 = ($25|0)!=(0|0); + if ($26) { + $27 = HEAP32[$pOther>>2]|0; + $28 = (($27) + 8|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 8|0); + HEAP32[$31>>2] = $29; + $32 = HEAP32[$1>>2]|0; + $33 = HEAP32[$pOther>>2]|0; + $34 = (($33) + 8|0); + HEAP32[$34>>2] = $32; + STACKTOP = sp;return; + } else { + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 8|0); + HEAP32[$36>>2] = 0; + $37 = HEAP32[$h>>2]|0; + $38 = HEAP32[$0>>2]|0; + $39 = (($38) + ($37<<2)|0); + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 28|0); + HEAP32[$42>>2] = $40; + $43 = HEAP32[$1>>2]|0; + $44 = HEAP32[$h>>2]|0; + $45 = HEAP32[$0>>2]|0; + $46 = (($45) + ($44<<2)|0); + HEAP32[$46>>2] = $43; + STACKTOP = sp;return; + } +} +function _sqlite3VdbeChangeEncoding($pMem,$desiredEnc) { + $pMem = $pMem|0; + $desiredEnc = $desiredEnc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$1>>2] = $pMem; + HEAP32[$2>>2] = $desiredEnc; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 28|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5&65535; + $7 = $6 & 2; + $8 = ($7|0)!=(0); + if ($8) { + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 30|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = HEAP32[$2>>2]|0; + $14 = ($12|0)==($13|0); + if (!($14)) { + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$2>>2]|0; + $17 = $16&255; + $18 = (_sqlite3VdbeMemTranslate($15,$17)|0); + HEAP32[$rc>>2] = $18; + $19 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $19; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } + } + HEAP32[$0>>2] = 0; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); +} +function _sqlite3VdbeMemTranslate($pMem,$desiredEnc) { + $pMem = $pMem|0; + $desiredEnc = $desiredEnc|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $c2 = 0, $c21 = 0, $len = 0, $or$cond = 0, $or$cond3 = 0, $rc = 0, $temp = 0, $z = 0, $zIn = 0, $zOut = 0, $zTerm = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 44|0; + $len = sp + 32|0; + $zOut = sp + 28|0; + $zIn = sp + 24|0; + $zTerm = sp + 20|0; + $z = sp + 12|0; + $c = sp + 8|0; + $temp = sp + 45|0; + $rc = sp + 4|0; + $c2 = sp; + $c21 = sp + 16|0; + HEAP32[$1>>2] = $pMem; + HEAP8[$2>>0] = $desiredEnc; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 30|0); + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = ($6|0)!=(1); + if ($7) { + $8 = HEAP8[$2>>0]|0; + $9 = $8&255; + $10 = ($9|0)!=(1); + if ($10) { + $11 = HEAP32[$1>>2]|0; + $12 = (_sqlite3VdbeMemMakeWriteable($11)|0); + HEAP32[$rc>>2] = $12; + $13 = HEAP32[$rc>>2]|0; + $14 = ($13|0)!=(0); + if ($14) { + HEAP32[$0>>2] = 7; + $542 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($542|0); + } + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$zIn>>2] = $17; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 24|0); + $20 = HEAP32[$19>>2]|0; + $21 = $20 & -2; + $22 = HEAP32[$zIn>>2]|0; + $23 = (($22) + ($21)|0); + HEAP32[$zTerm>>2] = $23; + while(1) { + $24 = HEAP32[$zIn>>2]|0; + $25 = HEAP32[$zTerm>>2]|0; + $26 = ($24>>>0)<($25>>>0); + if (!($26)) { + break; + } + $27 = HEAP32[$zIn>>2]|0; + $28 = HEAP8[$27>>0]|0; + HEAP8[$temp>>0] = $28; + $29 = HEAP32[$zIn>>2]|0; + $30 = (($29) + 1|0); + $31 = HEAP8[$30>>0]|0; + $32 = HEAP32[$zIn>>2]|0; + HEAP8[$32>>0] = $31; + $33 = HEAP32[$zIn>>2]|0; + $34 = (($33) + 1|0); + HEAP32[$zIn>>2] = $34; + $35 = HEAP8[$temp>>0]|0; + $36 = HEAP32[$zIn>>2]|0; + $37 = (($36) + 1|0); + HEAP32[$zIn>>2] = $37; + HEAP8[$36>>0] = $35; + } + $38 = HEAP8[$2>>0]|0; + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 30|0); + HEAP8[$40>>0] = $38; + } else { + label = 9; + } + } else { + label = 9; + } + if ((label|0) == 9) { + $41 = HEAP8[$2>>0]|0; + $42 = $41&255; + $43 = ($42|0)==(1); + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 24|0); + $46 = HEAP32[$45>>2]|0; + if ($43) { + $47 = $46 & -2; + HEAP32[$45>>2] = $47; + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + 24|0); + $50 = HEAP32[$49>>2]|0; + $51 = $50<<1; + $52 = (($51) + 1)|0; + HEAP32[$len>>2] = $52; + } else { + $53 = $46<<1; + $54 = (($53) + 2)|0; + HEAP32[$len>>2] = $54; + } + $55 = HEAP32[$1>>2]|0; + $56 = (($55) + 4|0); + $57 = HEAP32[$56>>2]|0; + HEAP32[$zIn>>2] = $57; + $58 = HEAP32[$1>>2]|0; + $59 = (($58) + 24|0); + $60 = HEAP32[$59>>2]|0; + $61 = HEAP32[$zIn>>2]|0; + $62 = (($61) + ($60)|0); + HEAP32[$zTerm>>2] = $62; + $63 = HEAP32[$1>>2]|0; + $64 = HEAP32[$63>>2]|0; + $65 = HEAP32[$len>>2]|0; + $66 = (_sqlite3DbMallocRaw($64,$65)|0); + HEAP32[$zOut>>2] = $66; + $67 = HEAP32[$zOut>>2]|0; + $68 = ($67|0)!=(0|0); + if (!($68)) { + HEAP32[$0>>2] = 7; + $542 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($542|0); + } + $69 = HEAP32[$zOut>>2]|0; + HEAP32[$z>>2] = $69; + $70 = HEAP32[$1>>2]|0; + $71 = (($70) + 30|0); + $72 = HEAP8[$71>>0]|0; + $73 = $72&255; + $74 = ($73|0)==(1); + if ($74) { + $75 = HEAP8[$2>>0]|0; + $76 = $75&255; + $77 = ($76|0)==(2); + L24: do { + if ($77) { + while(1) { + $78 = HEAP32[$zIn>>2]|0; + $79 = HEAP32[$zTerm>>2]|0; + $80 = ($78>>>0)<($79>>>0); + if (!($80)) { + break L24; + } + $81 = HEAP32[$zIn>>2]|0; + $82 = (($81) + 1|0); + HEAP32[$zIn>>2] = $82; + $83 = HEAP8[$81>>0]|0; + $84 = $83&255; + HEAP32[$c>>2] = $84; + $85 = HEAP32[$c>>2]|0; + $86 = ($85>>>0)>=(192); + do { + if ($86) { + $87 = HEAP32[$c>>2]|0; + $88 = (($87) - 192)|0; + $89 = (11592 + ($88)|0); + $90 = HEAP8[$89>>0]|0; + $91 = $90&255; + HEAP32[$c>>2] = $91; + while(1) { + $92 = HEAP32[$zIn>>2]|0; + $93 = HEAP32[$zTerm>>2]|0; + $94 = ($92|0)!=($93|0); + if ($94) { + $95 = HEAP32[$zIn>>2]|0; + $96 = HEAP8[$95>>0]|0; + $97 = $96&255; + $98 = $97 & 192; + $99 = ($98|0)==(128); + $543 = $99; + } else { + $543 = 0; + } + $100 = HEAP32[$c>>2]|0; + if (!($543)) { + break; + } + $101 = $100 << 6; + $102 = HEAP32[$zIn>>2]|0; + $103 = (($102) + 1|0); + HEAP32[$zIn>>2] = $103; + $104 = HEAP8[$102>>0]|0; + $105 = $104&255; + $106 = 63 & $105; + $107 = (($101) + ($106))|0; + HEAP32[$c>>2] = $107; + } + $108 = ($100>>>0)<(128); + if (!($108)) { + $109 = HEAP32[$c>>2]|0; + $110 = $109 & -2048; + $111 = ($110|0)==(55296); + if (!($111)) { + $112 = HEAP32[$c>>2]|0; + $113 = $112 & -2; + $114 = ($113|0)==(65534); + if (!($114)) { + break; + } + } + } + HEAP32[$c>>2] = 65533; + } + } while(0); + $115 = HEAP32[$c>>2]|0; + $116 = ($115>>>0)<=(65535); + $117 = HEAP32[$c>>2]|0; + if ($116) { + $118 = $117 & 255; + $119 = $118&255; + $120 = HEAP32[$z>>2]|0; + $121 = (($120) + 1|0); + HEAP32[$z>>2] = $121; + HEAP8[$120>>0] = $119; + $122 = HEAP32[$c>>2]|0; + $123 = $122 >>> 8; + $124 = $123 & 255; + $125 = $124&255; + $126 = HEAP32[$z>>2]|0; + $127 = (($126) + 1|0); + HEAP32[$z>>2] = $127; + HEAP8[$126>>0] = $125; + continue; + } else { + $128 = $117 >>> 10; + $129 = $128 & 63; + $130 = HEAP32[$c>>2]|0; + $131 = (($130) - 65536)|0; + $132 = $131 >>> 10; + $133 = $132 & 192; + $134 = (($129) + ($133))|0; + $135 = $134&255; + $136 = HEAP32[$z>>2]|0; + $137 = (($136) + 1|0); + HEAP32[$z>>2] = $137; + HEAP8[$136>>0] = $135; + $138 = HEAP32[$c>>2]|0; + $139 = (($138) - 65536)|0; + $140 = $139 >>> 18; + $141 = $140 & 3; + $142 = (216 + ($141))|0; + $143 = $142&255; + $144 = HEAP32[$z>>2]|0; + $145 = (($144) + 1|0); + HEAP32[$z>>2] = $145; + HEAP8[$144>>0] = $143; + $146 = HEAP32[$c>>2]|0; + $147 = $146 & 255; + $148 = $147&255; + $149 = HEAP32[$z>>2]|0; + $150 = (($149) + 1|0); + HEAP32[$z>>2] = $150; + HEAP8[$149>>0] = $148; + $151 = HEAP32[$c>>2]|0; + $152 = $151 >>> 8; + $153 = $152 & 3; + $154 = (220 + ($153))|0; + $155 = $154&255; + $156 = HEAP32[$z>>2]|0; + $157 = (($156) + 1|0); + HEAP32[$z>>2] = $157; + HEAP8[$156>>0] = $155; + continue; + } + } + } else { + while(1) { + $158 = HEAP32[$zIn>>2]|0; + $159 = HEAP32[$zTerm>>2]|0; + $160 = ($158>>>0)<($159>>>0); + if (!($160)) { + break L24; + } + $161 = HEAP32[$zIn>>2]|0; + $162 = (($161) + 1|0); + HEAP32[$zIn>>2] = $162; + $163 = HEAP8[$161>>0]|0; + $164 = $163&255; + HEAP32[$c>>2] = $164; + $165 = HEAP32[$c>>2]|0; + $166 = ($165>>>0)>=(192); + do { + if ($166) { + $167 = HEAP32[$c>>2]|0; + $168 = (($167) - 192)|0; + $169 = (11592 + ($168)|0); + $170 = HEAP8[$169>>0]|0; + $171 = $170&255; + HEAP32[$c>>2] = $171; + while(1) { + $172 = HEAP32[$zIn>>2]|0; + $173 = HEAP32[$zTerm>>2]|0; + $174 = ($172|0)!=($173|0); + if ($174) { + $175 = HEAP32[$zIn>>2]|0; + $176 = HEAP8[$175>>0]|0; + $177 = $176&255; + $178 = $177 & 192; + $179 = ($178|0)==(128); + $544 = $179; + } else { + $544 = 0; + } + $180 = HEAP32[$c>>2]|0; + if (!($544)) { + break; + } + $181 = $180 << 6; + $182 = HEAP32[$zIn>>2]|0; + $183 = (($182) + 1|0); + HEAP32[$zIn>>2] = $183; + $184 = HEAP8[$182>>0]|0; + $185 = $184&255; + $186 = 63 & $185; + $187 = (($181) + ($186))|0; + HEAP32[$c>>2] = $187; + } + $188 = ($180>>>0)<(128); + if (!($188)) { + $189 = HEAP32[$c>>2]|0; + $190 = $189 & -2048; + $191 = ($190|0)==(55296); + if (!($191)) { + $192 = HEAP32[$c>>2]|0; + $193 = $192 & -2; + $194 = ($193|0)==(65534); + if (!($194)) { + break; + } + } + } + HEAP32[$c>>2] = 65533; + } + } while(0); + $195 = HEAP32[$c>>2]|0; + $196 = ($195>>>0)<=(65535); + $197 = HEAP32[$c>>2]|0; + if ($196) { + $198 = $197 >>> 8; + $199 = $198 & 255; + $200 = $199&255; + $201 = HEAP32[$z>>2]|0; + $202 = (($201) + 1|0); + HEAP32[$z>>2] = $202; + HEAP8[$201>>0] = $200; + $203 = HEAP32[$c>>2]|0; + $204 = $203 & 255; + $205 = $204&255; + $206 = HEAP32[$z>>2]|0; + $207 = (($206) + 1|0); + HEAP32[$z>>2] = $207; + HEAP8[$206>>0] = $205; + continue; + } else { + $208 = (($197) - 65536)|0; + $209 = $208 >>> 18; + $210 = $209 & 3; + $211 = (216 + ($210))|0; + $212 = $211&255; + $213 = HEAP32[$z>>2]|0; + $214 = (($213) + 1|0); + HEAP32[$z>>2] = $214; + HEAP8[$213>>0] = $212; + $215 = HEAP32[$c>>2]|0; + $216 = $215 >>> 10; + $217 = $216 & 63; + $218 = HEAP32[$c>>2]|0; + $219 = (($218) - 65536)|0; + $220 = $219 >>> 10; + $221 = $220 & 192; + $222 = (($217) + ($221))|0; + $223 = $222&255; + $224 = HEAP32[$z>>2]|0; + $225 = (($224) + 1|0); + HEAP32[$z>>2] = $225; + HEAP8[$224>>0] = $223; + $226 = HEAP32[$c>>2]|0; + $227 = $226 >>> 8; + $228 = $227 & 3; + $229 = (220 + ($228))|0; + $230 = $229&255; + $231 = HEAP32[$z>>2]|0; + $232 = (($231) + 1|0); + HEAP32[$z>>2] = $232; + HEAP8[$231>>0] = $230; + $233 = HEAP32[$c>>2]|0; + $234 = $233 & 255; + $235 = $234&255; + $236 = HEAP32[$z>>2]|0; + $237 = (($236) + 1|0); + HEAP32[$z>>2] = $237; + HEAP8[$236>>0] = $235; + continue; + } + } + } + } while(0); + $238 = HEAP32[$z>>2]|0; + $239 = HEAP32[$zOut>>2]|0; + $240 = $238; + $241 = $239; + $242 = (($240) - ($241))|0; + $243 = HEAP32[$1>>2]|0; + $244 = (($243) + 24|0); + HEAP32[$244>>2] = $242; + $245 = HEAP32[$z>>2]|0; + $246 = (($245) + 1|0); + HEAP32[$z>>2] = $246; + HEAP8[$245>>0] = 0; + } else { + $247 = HEAP32[$1>>2]|0; + $248 = (($247) + 30|0); + $249 = HEAP8[$248>>0]|0; + $250 = $249&255; + $251 = ($250|0)==(2); + L67: do { + if ($251) { + while(1) { + $252 = HEAP32[$zIn>>2]|0; + $253 = HEAP32[$zTerm>>2]|0; + $254 = ($252>>>0)<($253>>>0); + if (!($254)) { + break L67; + } + $255 = HEAP32[$zIn>>2]|0; + $256 = (($255) + 1|0); + HEAP32[$zIn>>2] = $256; + $257 = HEAP8[$255>>0]|0; + $258 = $257&255; + HEAP32[$c>>2] = $258; + $259 = HEAP32[$zIn>>2]|0; + $260 = (($259) + 1|0); + HEAP32[$zIn>>2] = $260; + $261 = HEAP8[$259>>0]|0; + $262 = $261&255; + $263 = $262 << 8; + $264 = HEAP32[$c>>2]|0; + $265 = (($264) + ($263))|0; + HEAP32[$c>>2] = $265; + $266 = HEAP32[$c>>2]|0; + $267 = ($266>>>0)>=(55296); + $268 = HEAP32[$c>>2]|0; + $269 = ($268>>>0)<(57344); + $or$cond = $267 & $269; + if ($or$cond) { + $270 = HEAP32[$zIn>>2]|0; + $271 = HEAP32[$zTerm>>2]|0; + $272 = ($270>>>0)<($271>>>0); + if ($272) { + $273 = HEAP32[$zIn>>2]|0; + $274 = (($273) + 1|0); + HEAP32[$zIn>>2] = $274; + $275 = HEAP8[$273>>0]|0; + $276 = $275&255; + HEAP32[$c2>>2] = $276; + $277 = HEAP32[$zIn>>2]|0; + $278 = (($277) + 1|0); + HEAP32[$zIn>>2] = $278; + $279 = HEAP8[$277>>0]|0; + $280 = $279&255; + $281 = $280 << 8; + $282 = HEAP32[$c2>>2]|0; + $283 = (($282) + ($281))|0; + HEAP32[$c2>>2] = $283; + $284 = HEAP32[$c2>>2]|0; + $285 = $284 & 1023; + $286 = HEAP32[$c>>2]|0; + $287 = $286 & 63; + $288 = $287 << 10; + $289 = (($285) + ($288))|0; + $290 = HEAP32[$c>>2]|0; + $291 = $290 & 960; + $292 = (($291) + 64)|0; + $293 = $292 << 10; + $294 = (($289) + ($293))|0; + HEAP32[$c>>2] = $294; + } + } + $295 = HEAP32[$c>>2]|0; + $296 = ($295>>>0)<(128); + $297 = HEAP32[$c>>2]|0; + if ($296) { + $298 = $297 & 255; + $299 = $298&255; + $300 = HEAP32[$z>>2]|0; + $301 = (($300) + 1|0); + HEAP32[$z>>2] = $301; + HEAP8[$300>>0] = $299; + continue; + } + $302 = ($297>>>0)<(2048); + $303 = HEAP32[$c>>2]|0; + if ($302) { + $304 = $303 >>> 6; + $305 = $304 & 31; + $306 = $305&255; + $307 = $306&255; + $308 = (192 + ($307))|0; + $309 = $308&255; + $310 = HEAP32[$z>>2]|0; + $311 = (($310) + 1|0); + HEAP32[$z>>2] = $311; + HEAP8[$310>>0] = $309; + $312 = HEAP32[$c>>2]|0; + $313 = $312 & 63; + $314 = $313&255; + $315 = $314&255; + $316 = (128 + ($315))|0; + $317 = $316&255; + $318 = HEAP32[$z>>2]|0; + $319 = (($318) + 1|0); + HEAP32[$z>>2] = $319; + HEAP8[$318>>0] = $317; + continue; + } + $320 = ($303>>>0)<(65536); + $321 = HEAP32[$c>>2]|0; + if ($320) { + $322 = $321 >>> 12; + $323 = $322 & 15; + $324 = $323&255; + $325 = $324&255; + $326 = (224 + ($325))|0; + $327 = $326&255; + $328 = HEAP32[$z>>2]|0; + $329 = (($328) + 1|0); + HEAP32[$z>>2] = $329; + HEAP8[$328>>0] = $327; + $330 = HEAP32[$c>>2]|0; + $331 = $330 >>> 6; + $332 = $331 & 63; + $333 = $332&255; + $334 = $333&255; + $335 = (128 + ($334))|0; + $336 = $335&255; + $337 = HEAP32[$z>>2]|0; + $338 = (($337) + 1|0); + HEAP32[$z>>2] = $338; + HEAP8[$337>>0] = $336; + $339 = HEAP32[$c>>2]|0; + $340 = $339 & 63; + $341 = $340&255; + $342 = $341&255; + $343 = (128 + ($342))|0; + $344 = $343&255; + $345 = HEAP32[$z>>2]|0; + $346 = (($345) + 1|0); + HEAP32[$z>>2] = $346; + HEAP8[$345>>0] = $344; + continue; + } else { + $347 = $321 >>> 18; + $348 = $347 & 7; + $349 = $348&255; + $350 = $349&255; + $351 = (240 + ($350))|0; + $352 = $351&255; + $353 = HEAP32[$z>>2]|0; + $354 = (($353) + 1|0); + HEAP32[$z>>2] = $354; + HEAP8[$353>>0] = $352; + $355 = HEAP32[$c>>2]|0; + $356 = $355 >>> 12; + $357 = $356 & 63; + $358 = $357&255; + $359 = $358&255; + $360 = (128 + ($359))|0; + $361 = $360&255; + $362 = HEAP32[$z>>2]|0; + $363 = (($362) + 1|0); + HEAP32[$z>>2] = $363; + HEAP8[$362>>0] = $361; + $364 = HEAP32[$c>>2]|0; + $365 = $364 >>> 6; + $366 = $365 & 63; + $367 = $366&255; + $368 = $367&255; + $369 = (128 + ($368))|0; + $370 = $369&255; + $371 = HEAP32[$z>>2]|0; + $372 = (($371) + 1|0); + HEAP32[$z>>2] = $372; + HEAP8[$371>>0] = $370; + $373 = HEAP32[$c>>2]|0; + $374 = $373 & 63; + $375 = $374&255; + $376 = $375&255; + $377 = (128 + ($376))|0; + $378 = $377&255; + $379 = HEAP32[$z>>2]|0; + $380 = (($379) + 1|0); + HEAP32[$z>>2] = $380; + HEAP8[$379>>0] = $378; + continue; + } + } + } else { + while(1) { + $381 = HEAP32[$zIn>>2]|0; + $382 = HEAP32[$zTerm>>2]|0; + $383 = ($381>>>0)<($382>>>0); + if (!($383)) { + break L67; + } + $384 = HEAP32[$zIn>>2]|0; + $385 = (($384) + 1|0); + HEAP32[$zIn>>2] = $385; + $386 = HEAP8[$384>>0]|0; + $387 = $386&255; + $388 = $387 << 8; + HEAP32[$c>>2] = $388; + $389 = HEAP32[$zIn>>2]|0; + $390 = (($389) + 1|0); + HEAP32[$zIn>>2] = $390; + $391 = HEAP8[$389>>0]|0; + $392 = $391&255; + $393 = HEAP32[$c>>2]|0; + $394 = (($393) + ($392))|0; + HEAP32[$c>>2] = $394; + $395 = HEAP32[$c>>2]|0; + $396 = ($395>>>0)>=(55296); + $397 = HEAP32[$c>>2]|0; + $398 = ($397>>>0)<(57344); + $or$cond3 = $396 & $398; + if ($or$cond3) { + $399 = HEAP32[$zIn>>2]|0; + $400 = HEAP32[$zTerm>>2]|0; + $401 = ($399>>>0)<($400>>>0); + if ($401) { + $402 = HEAP32[$zIn>>2]|0; + $403 = (($402) + 1|0); + HEAP32[$zIn>>2] = $403; + $404 = HEAP8[$402>>0]|0; + $405 = $404&255; + $406 = $405 << 8; + HEAP32[$c21>>2] = $406; + $407 = HEAP32[$zIn>>2]|0; + $408 = (($407) + 1|0); + HEAP32[$zIn>>2] = $408; + $409 = HEAP8[$407>>0]|0; + $410 = $409&255; + $411 = HEAP32[$c21>>2]|0; + $412 = (($411) + ($410))|0; + HEAP32[$c21>>2] = $412; + $413 = HEAP32[$c21>>2]|0; + $414 = $413 & 1023; + $415 = HEAP32[$c>>2]|0; + $416 = $415 & 63; + $417 = $416 << 10; + $418 = (($414) + ($417))|0; + $419 = HEAP32[$c>>2]|0; + $420 = $419 & 960; + $421 = (($420) + 64)|0; + $422 = $421 << 10; + $423 = (($418) + ($422))|0; + HEAP32[$c>>2] = $423; + } + } + $424 = HEAP32[$c>>2]|0; + $425 = ($424>>>0)<(128); + $426 = HEAP32[$c>>2]|0; + if ($425) { + $427 = $426 & 255; + $428 = $427&255; + $429 = HEAP32[$z>>2]|0; + $430 = (($429) + 1|0); + HEAP32[$z>>2] = $430; + HEAP8[$429>>0] = $428; + continue; + } + $431 = ($426>>>0)<(2048); + $432 = HEAP32[$c>>2]|0; + if ($431) { + $433 = $432 >>> 6; + $434 = $433 & 31; + $435 = $434&255; + $436 = $435&255; + $437 = (192 + ($436))|0; + $438 = $437&255; + $439 = HEAP32[$z>>2]|0; + $440 = (($439) + 1|0); + HEAP32[$z>>2] = $440; + HEAP8[$439>>0] = $438; + $441 = HEAP32[$c>>2]|0; + $442 = $441 & 63; + $443 = $442&255; + $444 = $443&255; + $445 = (128 + ($444))|0; + $446 = $445&255; + $447 = HEAP32[$z>>2]|0; + $448 = (($447) + 1|0); + HEAP32[$z>>2] = $448; + HEAP8[$447>>0] = $446; + continue; + } + $449 = ($432>>>0)<(65536); + $450 = HEAP32[$c>>2]|0; + if ($449) { + $451 = $450 >>> 12; + $452 = $451 & 15; + $453 = $452&255; + $454 = $453&255; + $455 = (224 + ($454))|0; + $456 = $455&255; + $457 = HEAP32[$z>>2]|0; + $458 = (($457) + 1|0); + HEAP32[$z>>2] = $458; + HEAP8[$457>>0] = $456; + $459 = HEAP32[$c>>2]|0; + $460 = $459 >>> 6; + $461 = $460 & 63; + $462 = $461&255; + $463 = $462&255; + $464 = (128 + ($463))|0; + $465 = $464&255; + $466 = HEAP32[$z>>2]|0; + $467 = (($466) + 1|0); + HEAP32[$z>>2] = $467; + HEAP8[$466>>0] = $465; + $468 = HEAP32[$c>>2]|0; + $469 = $468 & 63; + $470 = $469&255; + $471 = $470&255; + $472 = (128 + ($471))|0; + $473 = $472&255; + $474 = HEAP32[$z>>2]|0; + $475 = (($474) + 1|0); + HEAP32[$z>>2] = $475; + HEAP8[$474>>0] = $473; + continue; + } else { + $476 = $450 >>> 18; + $477 = $476 & 7; + $478 = $477&255; + $479 = $478&255; + $480 = (240 + ($479))|0; + $481 = $480&255; + $482 = HEAP32[$z>>2]|0; + $483 = (($482) + 1|0); + HEAP32[$z>>2] = $483; + HEAP8[$482>>0] = $481; + $484 = HEAP32[$c>>2]|0; + $485 = $484 >>> 12; + $486 = $485 & 63; + $487 = $486&255; + $488 = $487&255; + $489 = (128 + ($488))|0; + $490 = $489&255; + $491 = HEAP32[$z>>2]|0; + $492 = (($491) + 1|0); + HEAP32[$z>>2] = $492; + HEAP8[$491>>0] = $490; + $493 = HEAP32[$c>>2]|0; + $494 = $493 >>> 6; + $495 = $494 & 63; + $496 = $495&255; + $497 = $496&255; + $498 = (128 + ($497))|0; + $499 = $498&255; + $500 = HEAP32[$z>>2]|0; + $501 = (($500) + 1|0); + HEAP32[$z>>2] = $501; + HEAP8[$500>>0] = $499; + $502 = HEAP32[$c>>2]|0; + $503 = $502 & 63; + $504 = $503&255; + $505 = $504&255; + $506 = (128 + ($505))|0; + $507 = $506&255; + $508 = HEAP32[$z>>2]|0; + $509 = (($508) + 1|0); + HEAP32[$z>>2] = $509; + HEAP8[$508>>0] = $507; + continue; + } + } + } + } while(0); + $510 = HEAP32[$z>>2]|0; + $511 = HEAP32[$zOut>>2]|0; + $512 = $510; + $513 = $511; + $514 = (($512) - ($513))|0; + $515 = HEAP32[$1>>2]|0; + $516 = (($515) + 24|0); + HEAP32[$516>>2] = $514; + } + $517 = HEAP32[$z>>2]|0; + HEAP8[$517>>0] = 0; + $518 = HEAP32[$1>>2]|0; + _sqlite3VdbeMemRelease($518); + $519 = HEAP32[$1>>2]|0; + $520 = (($519) + 28|0); + $521 = HEAP16[$520>>1]|0; + $522 = $521&65535; + $523 = $522 & -7169; + $524 = $523&65535; + HEAP16[$520>>1] = $524; + $525 = HEAP8[$2>>0]|0; + $526 = HEAP32[$1>>2]|0; + $527 = (($526) + 30|0); + HEAP8[$527>>0] = $525; + $528 = HEAP32[$1>>2]|0; + $529 = (($528) + 28|0); + $530 = HEAP16[$529>>1]|0; + $531 = $530&65535; + $532 = $531 | 512; + $533 = $532&65535; + HEAP16[$529>>1] = $533; + $534 = HEAP32[$zOut>>2]|0; + $535 = HEAP32[$1>>2]|0; + $536 = (($535) + 4|0); + HEAP32[$536>>2] = $534; + $537 = HEAP32[$1>>2]|0; + $538 = (($537) + 4|0); + $539 = HEAP32[$538>>2]|0; + $540 = HEAP32[$1>>2]|0; + $541 = (($540) + 36|0); + HEAP32[$541>>2] = $539; + } + HEAP32[$0>>2] = 0; + $542 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($542|0); +} +function _sqlite3VdbeMemMakeWriteable($pMem) { + $pMem = $pMem|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $f = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $f = sp + 4|0; + HEAP32[$1>>2] = $pMem; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 28|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4&65535; + $6 = $5 & 16384; + $7 = ($6|0)!=(0); + if ($7) { + $8 = HEAP32[$1>>2]|0; + (_sqlite3VdbeMemExpandBlob($8)|0); + } + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 28|0); + $11 = HEAP16[$10>>1]|0; + $12 = $11&65535; + HEAP32[$f>>2] = $12; + $13 = HEAP32[$f>>2]|0; + $14 = $13 & 18; + $15 = ($14|0)!=(0); + do { + if ($15) { + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 36|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($18|0)!=($21|0); + if ($22) { + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 24|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($26) + 2)|0; + $28 = (_sqlite3VdbeMemGrow($23,$27,1)|0); + $29 = ($28|0)!=(0); + if (!($29)) { + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 24|0); + $32 = HEAP32[$31>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 4|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + ($32)|0); + HEAP8[$36>>0] = 0; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 24|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + 1)|0; + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 4|0); + $43 = HEAP32[$42>>2]|0; + $44 = (($43) + ($40)|0); + HEAP8[$44>>0] = 0; + $45 = HEAP32[$1>>2]|0; + $46 = (($45) + 28|0); + $47 = HEAP16[$46>>1]|0; + $48 = $47&65535; + $49 = $48 | 512; + $50 = $49&65535; + HEAP16[$46>>1] = $50; + break; + } + HEAP32[$0>>2] = 7; + $51 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($51|0); + } + } + } while(0); + HEAP32[$0>>2] = 0; + $51 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($51|0); +} +function _functionDestroy($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $pDestructor = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pDestructor = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 32|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pDestructor>>2] = $4; + $5 = HEAP32[$pDestructor>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = HEAP32[$pDestructor>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = (($8) + -1)|0; + HEAP32[$7>>2] = $9; + $10 = HEAP32[$pDestructor>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)==(0); + if (!($12)) { + STACKTOP = sp;return; + } + $13 = HEAP32[$pDestructor>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$pDestructor>>2]|0; + $17 = (($16) + 8|0); + $18 = HEAP32[$17>>2]|0; + FUNCTION_TABLE_vi[$15 & 31]($18); + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$pDestructor>>2]|0; + _sqlite3DbFree($19,$20); + STACKTOP = sp;return; +} +function _connectionIsBusy($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $j = 0, $pBt = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $j = sp + 4|0; + $pBt = sp + 8|0; + HEAP32[$1>>2] = $db; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if ($5) { + HEAP32[$0>>2] = 1; + $25 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($25|0); + } + HEAP32[$j>>2] = 0; + while(1) { + $6 = HEAP32[$j>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 20|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($6|0)<($9|0); + if (!($10)) { + label = 9; + break; + } + $11 = HEAP32[$j>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 16|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + ($11<<4)|0); + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$pBt>>2] = $17; + $18 = HEAP32[$pBt>>2]|0; + $19 = ($18|0)!=(0|0); + if ($19) { + $20 = HEAP32[$pBt>>2]|0; + $21 = (_sqlite3BtreeIsInBackup($20)|0); + $22 = ($21|0)!=(0); + if ($22) { + label = 7; + break; + } + } + $23 = HEAP32[$j>>2]|0; + $24 = (($23) + 1)|0; + HEAP32[$j>>2] = $24; + } + if ((label|0) == 7) { + HEAP32[$0>>2] = 1; + $25 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($25|0); + } + else if ((label|0) == 9) { + HEAP32[$0>>2] = 0; + $25 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($25|0); + } + return 0|0; +} +function _sqlite3RollbackAll($db,$tripCode) { + $db = $db|0; + $tripCode = $tripCode|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $inTrans = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $i = sp + 4|0; + $inTrans = sp + 8|0; + $p = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $tripCode; + HEAP32[$inTrans>>2] = 0; + _sqlite3BeginBenignMalloc(); + $2 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnterAll($2); + HEAP32[$i>>2] = 0; + while(1) { + $3 = HEAP32[$i>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 20|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($3|0)<($6|0); + if (!($7)) { + break; + } + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 16|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + ($8<<4)|0); + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$p>>2] = $14; + $15 = HEAP32[$p>>2]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = HEAP32[$p>>2]|0; + $18 = (_sqlite3BtreeIsInTrans($17)|0); + $19 = ($18|0)!=(0); + if ($19) { + HEAP32[$inTrans>>2] = 1; + } + $20 = HEAP32[$p>>2]|0; + $21 = HEAP32[$1>>2]|0; + (_sqlite3BtreeRollback($20,$21)|0); + } + $22 = HEAP32[$i>>2]|0; + $23 = (($22) + 1)|0; + HEAP32[$i>>2] = $23; + } + $24 = HEAP32[$0>>2]|0; + (_sqlite3VtabRollback($24)|0); + _sqlite3EndBenignMalloc(); + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 24|0); + $27 = HEAP32[$26>>2]|0; + $28 = $27 & 2; + $29 = ($28|0)!=(0); + if ($29) { + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 132|0); + $32 = (($31) + 5|0); + $33 = HEAP8[$32>>0]|0; + $34 = $33&255; + $35 = ($34|0)==(0); + if ($35) { + $36 = HEAP32[$0>>2]|0; + _sqlite3ExpirePreparedStatements($36); + $37 = HEAP32[$0>>2]|0; + _sqlite3ResetAllSchemasOfConnection($37); + } + } + $38 = HEAP32[$0>>2]|0; + $39 = (($38) + 496|0); + $40 = $39; + $41 = $40; + HEAP32[$41>>2] = 0; + $42 = (($40) + 4)|0; + $43 = $42; + HEAP32[$43>>2] = 0; + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 504|0); + $46 = $45; + $47 = $46; + HEAP32[$47>>2] = 0; + $48 = (($46) + 4)|0; + $49 = $48; + HEAP32[$49>>2] = 0; + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 24|0); + $52 = HEAP32[$51>>2]|0; + $53 = $52 & -16777217; + HEAP32[$51>>2] = $53; + $54 = HEAP32[$0>>2]|0; + $55 = (($54) + 192|0); + $56 = HEAP32[$55>>2]|0; + $57 = ($56|0)!=(0|0); + if (!($57)) { + STACKTOP = sp;return; + } + $58 = HEAP32[$inTrans>>2]|0; + $59 = ($58|0)!=(0); + if (!($59)) { + $60 = HEAP32[$0>>2]|0; + $61 = (($60) + 62|0); + $62 = HEAP8[$61>>0]|0; + $63 = ($62<<24>>24)!=(0); + if ($63) { + STACKTOP = sp;return; + } + } + $64 = HEAP32[$0>>2]|0; + $65 = (($64) + 192|0); + $66 = HEAP32[$65>>2]|0; + $67 = HEAP32[$0>>2]|0; + $68 = (($67) + 188|0); + $69 = HEAP32[$68>>2]|0; + FUNCTION_TABLE_vi[$66 & 31]($69); + STACKTOP = sp;return; +} +function _sqlite3CloseSavepoints($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $pTmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pTmp = sp; + HEAP32[$0>>2] = $db; + while(1) { + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 480|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + $5 = HEAP32[$0>>2]|0; + if (!($4)) { + break; + } + $6 = (($5) + 480|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pTmp>>2] = $7; + $8 = HEAP32[$pTmp>>2]|0; + $9 = (($8) + 24|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 480|0); + HEAP32[$12>>2] = $10; + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$pTmp>>2]|0; + _sqlite3DbFree($13,$14); + } + $15 = (($5) + 488|0); + HEAP32[$15>>2] = 0; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 492|0); + HEAP32[$17>>2] = 0; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 69|0); + HEAP8[$19>>0] = 0; + STACKTOP = sp;return; +} +function _sqlite3BtreeClose($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $pBt = 0, $pCur = 0, $pTmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $pBt = sp; + $pCur = sp + 4|0; + $pTmp = sp + 8|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pBt>>2] = $3; + $4 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($4); + $5 = HEAP32[$pBt>>2]|0; + $6 = (($5) + 8|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pCur>>2] = $7; + while(1) { + $8 = HEAP32[$pCur>>2]|0; + $9 = ($8|0)!=(0|0); + if (!($9)) { + break; + } + $10 = HEAP32[$pCur>>2]|0; + HEAP32[$pTmp>>2] = $10; + $11 = HEAP32[$pCur>>2]|0; + $12 = (($11) + 8|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pCur>>2] = $13; + $14 = HEAP32[$pTmp>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$0>>2]|0; + $17 = ($15|0)==($16|0); + if (!($17)) { + continue; + } + $18 = HEAP32[$pTmp>>2]|0; + (_sqlite3BtreeCloseCursor($18)|0); + } + $19 = HEAP32[$0>>2]|0; + (_sqlite3BtreeRollback($19,0)|0); + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 9|0); + $22 = HEAP8[$21>>0]|0; + $23 = ($22<<24>>24)!=(0); + if ($23) { + $24 = HEAP32[$pBt>>2]|0; + $25 = (_removeFromSharingList($24)|0); + $26 = ($25|0)!=(0); + if ($26) { + label = 7; + } + } else { + label = 7; + } + if ((label|0) == 7) { + $27 = HEAP32[$pBt>>2]|0; + $28 = HEAP32[$27>>2]|0; + (_sqlite3PagerClose($28)|0); + $29 = HEAP32[$pBt>>2]|0; + $30 = (($29) + 52|0); + $31 = HEAP32[$30>>2]|0; + $32 = ($31|0)!=(0|0); + if ($32) { + $33 = HEAP32[$pBt>>2]|0; + $34 = (($33) + 48|0); + $35 = HEAP32[$34>>2]|0; + $36 = ($35|0)!=(0|0); + if ($36) { + $37 = HEAP32[$pBt>>2]|0; + $38 = (($37) + 52|0); + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$pBt>>2]|0; + $41 = (($40) + 48|0); + $42 = HEAP32[$41>>2]|0; + FUNCTION_TABLE_vi[$39 & 31]($42); + } + } + $43 = HEAP32[$pBt>>2]|0; + $44 = (($43) + 48|0); + $45 = HEAP32[$44>>2]|0; + _sqlite3DbFree(0,$45); + $46 = HEAP32[$pBt>>2]|0; + _freeTempSpace($46); + $47 = HEAP32[$pBt>>2]|0; + _sqlite3_free($47); + } + $48 = HEAP32[$0>>2]|0; + $49 = (($48) + 24|0); + $50 = HEAP32[$49>>2]|0; + $51 = ($50|0)!=(0|0); + if ($51) { + $52 = HEAP32[$0>>2]|0; + $53 = (($52) + 20|0); + $54 = HEAP32[$53>>2]|0; + $55 = HEAP32[$0>>2]|0; + $56 = (($55) + 24|0); + $57 = HEAP32[$56>>2]|0; + $58 = (($57) + 20|0); + HEAP32[$58>>2] = $54; + } + $59 = HEAP32[$0>>2]|0; + $60 = (($59) + 20|0); + $61 = HEAP32[$60>>2]|0; + $62 = ($61|0)!=(0|0); + if (!($62)) { + $70 = HEAP32[$0>>2]|0; + _sqlite3_free($70); + STACKTOP = sp;return 0; + } + $63 = HEAP32[$0>>2]|0; + $64 = (($63) + 24|0); + $65 = HEAP32[$64>>2]|0; + $66 = HEAP32[$0>>2]|0; + $67 = (($66) + 20|0); + $68 = HEAP32[$67>>2]|0; + $69 = (($68) + 24|0); + HEAP32[$69>>2] = $65; + $70 = HEAP32[$0>>2]|0; + _sqlite3_free($70); + STACKTOP = sp;return 0; +} +function _sqlite3VtabUnlockList($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pNext = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $p = sp; + $pNext = sp + 4|0; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 324|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 324|0); + HEAP32[$5>>2] = 0; + $6 = HEAP32[$p>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + STACKTOP = sp;return; + } + $8 = HEAP32[$0>>2]|0; + _sqlite3ExpirePreparedStatements($8); + while(1) { + $9 = HEAP32[$p>>2]|0; + $10 = (($9) + 24|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$pNext>>2] = $11; + $12 = HEAP32[$p>>2]|0; + _sqlite3VtabUnlock($12); + $13 = HEAP32[$pNext>>2]|0; + HEAP32[$p>>2] = $13; + $14 = HEAP32[$p>>2]|0; + $15 = ($14|0)!=(0|0); + if (!($15)) { + break; + } + } + STACKTOP = sp;return; +} +function _sqlite3CollapseDatabaseArray($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $i = 0, $j = 0, $pDb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $i = sp; + $j = sp + 4|0; + $pDb = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$j>>2] = 2; + HEAP32[$i>>2] = 2; + while(1) { + $1 = HEAP32[$i>>2]|0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 20|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($1|0)<($4|0); + if (!($5)) { + break; + } + $6 = HEAP32[$i>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + ($6<<4)|0); + HEAP32[$pDb>>2] = $10; + $11 = HEAP32[$pDb>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)==(0|0); + if ($14) { + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$pDb>>2]|0; + $17 = HEAP32[$16>>2]|0; + _sqlite3DbFree($15,$17); + $18 = HEAP32[$pDb>>2]|0; + HEAP32[$18>>2] = 0; + } else { + $19 = HEAP32[$j>>2]|0; + $20 = HEAP32[$i>>2]|0; + $21 = ($19|0)<($20|0); + if ($21) { + $22 = HEAP32[$j>>2]|0; + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 16|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + ($22<<4)|0); + $27 = HEAP32[$i>>2]|0; + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 16|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + ($27<<4)|0); + ;HEAP32[$26+0>>2]=HEAP32[$31+0>>2]|0;HEAP32[$26+4>>2]=HEAP32[$31+4>>2]|0;HEAP32[$26+8>>2]=HEAP32[$31+8>>2]|0;HEAP32[$26+12>>2]=HEAP32[$31+12>>2]|0; + } + $32 = HEAP32[$j>>2]|0; + $33 = (($32) + 1)|0; + HEAP32[$j>>2] = $33; + } + $34 = HEAP32[$i>>2]|0; + $35 = (($34) + 1)|0; + HEAP32[$i>>2] = $35; + } + $36 = HEAP32[$j>>2]|0; + $37 = HEAP32[$0>>2]|0; + $38 = (($37) + 16|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + ($36<<4)|0); + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + 20|0); + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$j>>2]|0; + $45 = (($43) - ($44))|0; + $46 = $45<<4; + _memset(($40|0),0,($46|0))|0; + $47 = HEAP32[$j>>2]|0; + $48 = HEAP32[$0>>2]|0; + $49 = (($48) + 20|0); + HEAP32[$49>>2] = $47; + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 20|0); + $52 = HEAP32[$51>>2]|0; + $53 = ($52|0)<=(2); + if (!($53)) { + STACKTOP = sp;return; + } + $54 = HEAP32[$0>>2]|0; + $55 = (($54) + 16|0); + $56 = HEAP32[$55>>2]|0; + $57 = HEAP32[$0>>2]|0; + $58 = (($57) + 448|0); + $59 = ($56|0)!=($58|0); + if (!($59)) { + STACKTOP = sp;return; + } + $60 = HEAP32[$0>>2]|0; + $61 = (($60) + 448|0); + $62 = HEAP32[$0>>2]|0; + $63 = (($62) + 16|0); + $64 = HEAP32[$63>>2]|0; + ;HEAP32[$61+0>>2]=HEAP32[$64+0>>2]|0;HEAP32[$61+4>>2]=HEAP32[$64+4>>2]|0;HEAP32[$61+8>>2]=HEAP32[$64+8>>2]|0;HEAP32[$61+12>>2]=HEAP32[$64+12>>2]|0;HEAP32[$61+16>>2]=HEAP32[$64+16>>2]|0;HEAP32[$61+20>>2]=HEAP32[$64+20>>2]|0;HEAP32[$61+24>>2]=HEAP32[$64+24>>2]|0;HEAP32[$61+28>>2]=HEAP32[$64+28>>2]|0; + $65 = HEAP32[$0>>2]|0; + $66 = HEAP32[$0>>2]|0; + $67 = (($66) + 16|0); + $68 = HEAP32[$67>>2]|0; + _sqlite3DbFree($65,$68); + $69 = HEAP32[$0>>2]|0; + $70 = (($69) + 448|0); + $71 = HEAP32[$0>>2]|0; + $72 = (($71) + 16|0); + HEAP32[$72>>2] = $70; + STACKTOP = sp;return; +} +function _sqlite3VtabUnlock($pVTab) { + $pVTab = $pVTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $db = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $db = sp; + $p = sp + 4|0; + HEAP32[$0>>2] = $pVTab; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$db>>2] = $2; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + -1)|0; + HEAP32[$4>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 12|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)==(0); + if (!($10)) { + STACKTOP = sp;return; + } + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 8|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$p>>2] = $13; + $14 = HEAP32[$p>>2]|0; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = HEAP32[$p>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + 16|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$p>>2]|0; + (FUNCTION_TABLE_ii[$19 & 63]($20)|0); + } + $21 = HEAP32[$db>>2]|0; + $22 = HEAP32[$0>>2]|0; + _sqlite3DbFree($21,$22); + STACKTOP = sp;return; +} +function _sqlite3BtreeCloseCursor($pCur) { + $pCur = $pCur|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pBt = 0, $pBtree = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $pBtree = sp; + $i = sp + 4|0; + $pBt = sp + 8|0; + HEAP32[$0>>2] = $pCur; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$pBtree>>2] = $2; + $3 = HEAP32[$pBtree>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + STACKTOP = sp;return 0; + } + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 4|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pBt>>2] = $7; + $8 = HEAP32[$pBtree>>2]|0; + _sqlite3BtreeEnter($8); + $9 = HEAP32[$0>>2]|0; + _sqlite3BtreeClearCursor($9); + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 12|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)!=(0|0); + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 8|0); + $16 = HEAP32[$15>>2]|0; + if ($13) { + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 12|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + 8|0); + HEAP32[$20>>2] = $16; + } else { + $21 = HEAP32[$pBt>>2]|0; + $22 = (($21) + 8|0); + HEAP32[$22>>2] = $16; + } + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 8|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)!=(0|0); + if ($26) { + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 12|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 8|0); + $32 = HEAP32[$31>>2]|0; + $33 = (($32) + 12|0); + HEAP32[$33>>2] = $29; + } + HEAP32[$i>>2] = 0; + while(1) { + $34 = HEAP32[$i>>2]|0; + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 84|0); + $37 = HEAP16[$36>>1]|0; + $38 = $37 << 16 >> 16; + $39 = ($34|0)<=($38|0); + if (!($39)) { + break; + } + $40 = HEAP32[$i>>2]|0; + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + 128|0); + $43 = (($42) + ($40<<2)|0); + $44 = HEAP32[$43>>2]|0; + _releasePage($44); + $45 = HEAP32[$i>>2]|0; + $46 = (($45) + 1)|0; + HEAP32[$i>>2] = $46; + } + $47 = HEAP32[$pBt>>2]|0; + _unlockBtreeIfUnused($47); + $48 = HEAP32[$pBtree>>2]|0; + $49 = HEAP32[$48>>2]|0; + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 20|0); + $52 = HEAP32[$51>>2]|0; + _sqlite3DbFree($49,$52); + STACKTOP = sp;return 0; +} +function _removeFromSharingList($pBt) { + $pBt = $pBt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pList = 0, $removed = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $pList = sp; + $removed = sp + 4|0; + HEAP32[$0>>2] = $pBt; + HEAP32[$removed>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 64|0); + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + -1)|0; + HEAP32[$2>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 64|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)<=(0); + if (!($8)) { + $32 = HEAP32[$removed>>2]|0; + STACKTOP = sp;return ($32|0); + } + $9 = HEAP32[10840>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = ($9|0)==($10|0); + if ($11) { + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 68|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[10840>>2] = $14; + } else { + $15 = HEAP32[10840>>2]|0; + HEAP32[$pList>>2] = $15; + while(1) { + $16 = HEAP32[$pList>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = HEAP32[$pList>>2]|0; + $19 = (($18) + 68|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$0>>2]|0; + $22 = ($20|0)!=($21|0); + $33 = $22; + } else { + $33 = 0; + } + $23 = HEAP32[$pList>>2]|0; + if (!($33)) { + break; + } + $24 = (($23) + 68|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$pList>>2] = $25; + } + $26 = ($23|0)!=(0|0); + if ($26) { + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 68|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$pList>>2]|0; + $31 = (($30) + 68|0); + HEAP32[$31>>2] = $29; + } + } + HEAP32[$removed>>2] = 1; + $32 = HEAP32[$removed>>2]|0; + STACKTOP = sp;return ($32|0); +} +function _sqlite3BtreeClearCursor($pCur) { + $pCur = $pCur|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pCur; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 64|0); + $3 = HEAP32[$2>>2]|0; + _sqlite3_free($3); + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 64|0); + HEAP32[$5>>2] = 0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 81|0); + HEAP8[$7>>0] = 0; + STACKTOP = sp;return; +} +function _releasePage($pPage) { + $pPage = $pPage|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPage; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 68|0); + $5 = HEAP32[$4>>2]|0; + _sqlite3PagerUnrefNotNull($5); + STACKTOP = sp;return; +} +function _unlockBtreeIfUnused($pBt) { + $pBt = $pBt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pBt; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 20|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = ($4|0)==(0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 12|0); + $12 = HEAP32[$11>>2]|0; + _releasePage($12); + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 12|0); + HEAP32[$14>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3BtreeIsInTrans($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + $9 = 0; + $8 = $9&1; + STACKTOP = sp;return ($8|0); + } + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = ($6|0)==(2); + $9 = $7; + $8 = $9&1; + STACKTOP = sp;return ($8|0); +} +function _sqlite3VtabRollback($db) { + $db = $db|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + _callFinaliser($1,68); + STACKTOP = sp;return 0; +} +function _callFinaliser($db,$offset) { + $db = $db|0; + $offset = $offset|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, $pVTab = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $i = sp + 4|0; + $pVTab = sp + 8|0; + $p = sp + 12|0; + $x = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $offset; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 320|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $6 = HEAP32[$i>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 296|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($6|0)<($9|0); + if (!($10)) { + break; + } + $11 = HEAP32[$i>>2]|0; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 320|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + ($11<<2)|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$pVTab>>2] = $16; + $17 = HEAP32[$pVTab>>2]|0; + $18 = (($17) + 8|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$p>>2] = $19; + $20 = HEAP32[$p>>2]|0; + $21 = ($20|0)!=(0|0); + if ($21) { + $22 = HEAP32[$p>>2]|0; + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$1>>2]|0; + $25 = (($23) + ($24)|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$x>>2] = $26; + $27 = HEAP32[$x>>2]|0; + $28 = ($27|0)!=(0|0); + if ($28) { + $29 = HEAP32[$x>>2]|0; + $30 = HEAP32[$p>>2]|0; + (FUNCTION_TABLE_ii[$29 & 63]($30)|0); + } + } + $31 = HEAP32[$pVTab>>2]|0; + $32 = (($31) + 20|0); + HEAP32[$32>>2] = 0; + $33 = HEAP32[$pVTab>>2]|0; + _sqlite3VtabUnlock($33); + $34 = HEAP32[$i>>2]|0; + $35 = (($34) + 1)|0; + HEAP32[$i>>2] = $35; + } + $36 = HEAP32[$0>>2]|0; + $37 = HEAP32[$0>>2]|0; + $38 = (($37) + 320|0); + $39 = HEAP32[$38>>2]|0; + _sqlite3DbFree($36,$39); + $40 = HEAP32[$0>>2]|0; + $41 = (($40) + 296|0); + HEAP32[$41>>2] = 0; + $42 = HEAP32[$0>>2]|0; + $43 = (($42) + 320|0); + HEAP32[$43>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3BtreeIsInBackup($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 16|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0); + $5 = $4&1; + STACKTOP = sp;return ($5|0); +} +function _disconnectAllVtab($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, $pSchema = 0, $pTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $i = sp; + $pSchema = sp + 4|0; + $p = sp + 8|0; + $pTab = sp + 12|0; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnterAll($1); + HEAP32[$i>>2] = 0; + while(1) { + $2 = HEAP32[$i>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 20|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($2|0)<($5|0); + if (!($6)) { + break; + } + $7 = HEAP32[$i>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 16|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + ($7<<4)|0); + $12 = (($11) + 12|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pSchema>>2] = $13; + $14 = HEAP32[$i>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 16|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + ($14<<4)|0); + $19 = (($18) + 12|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)!=(0|0); + L4: do { + if ($21) { + $22 = HEAP32[$pSchema>>2]|0; + $23 = (($22) + 8|0); + $24 = (($23) + 8|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$p>>2] = $25; + while(1) { + $26 = HEAP32[$p>>2]|0; + $27 = ($26|0)!=(0|0); + if (!($27)) { + break L4; + } + $28 = HEAP32[$p>>2]|0; + $29 = (($28) + 8|0); + $30 = HEAP32[$29>>2]|0; + HEAP32[$pTab>>2] = $30; + $31 = HEAP32[$pTab>>2]|0; + $32 = (($31) + 44|0); + $33 = HEAP8[$32>>0]|0; + $34 = $33&255; + $35 = $34 & 16; + $36 = ($35|0)!=(0); + if ($36) { + $37 = HEAP32[$0>>2]|0; + $38 = HEAP32[$pTab>>2]|0; + _sqlite3VtabDisconnect($37,$38); + } + $39 = HEAP32[$p>>2]|0; + $40 = HEAP32[$39>>2]|0; + HEAP32[$p>>2] = $40; + } + } + } while(0); + $41 = HEAP32[$i>>2]|0; + $42 = (($41) + 1)|0; + HEAP32[$i>>2] = $42; + } + $43 = HEAP32[$0>>2]|0; + _sqlite3VtabUnlockList($43); + STACKTOP = sp;return; +} +function _sqlite3VtabDisconnect($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $pVTab = 0, $ppVTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $ppVTab = sp + 4|0; + $pVTab = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 60|0); + HEAP32[$ppVTab>>2] = $3; + while(1) { + $4 = HEAP32[$ppVTab>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + label = 6; + break; + } + $7 = HEAP32[$ppVTab>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = ($9|0)==($10|0); + $12 = HEAP32[$ppVTab>>2]|0; + $13 = HEAP32[$12>>2]|0; + if ($11) { + break; + } + $19 = (($13) + 24|0); + HEAP32[$ppVTab>>2] = $19; + } + if ((label|0) == 6) { + STACKTOP = sp;return; + } + HEAP32[$pVTab>>2] = $13; + $14 = HEAP32[$pVTab>>2]|0; + $15 = (($14) + 24|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$ppVTab>>2]|0; + HEAP32[$17>>2] = $16; + $18 = HEAP32[$pVTab>>2]|0; + _sqlite3VtabUnlock($18); + STACKTOP = sp;return; +} +function _sqlite3PcacheShrink($pCache) { + $pCache = $pCache|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pCache; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 40|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[((45136 + 152|0))>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 40|0); + $8 = HEAP32[$7>>2]|0; + FUNCTION_TABLE_vi[$5 & 31]($8); + STACKTOP = sp;return; +} +function _pcache1Init($NotUsed) { + $NotUsed = $NotUsed|0; + var $0 = 0, $1 = 0, $2 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $NotUsed; + dest=3456+0|0; stop=dest+68|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $1 = HEAP32[((45136 + 4|0))>>2]|0; + $2 = ($1|0)!=(0); + if ($2) { + HEAP32[3456>>2] = (8); + HEAP32[((3456 + 52|0))>>2] = (8); + } + HEAP32[((3456 + 12|0))>>2] = 10; + HEAP32[((3456 + 28|0))>>2] = 1; + STACKTOP = sp;return 0; +} +function _pcache1Shutdown($NotUsed) { + $NotUsed = $NotUsed|0; + var $0 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $NotUsed; + dest=3456+0|0; stop=dest+68|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + STACKTOP = sp;return; +} +function _pcache1Create($szPage,$szExtra,$bPurgeable) { + $szPage = $szPage|0; + $szExtra = $szExtra|0; + $bPurgeable = $bPurgeable|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $pCache = 0, $pGroup = 0, $separateCache = 0, $sz = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $pCache = sp + 8|0; + $pGroup = sp + 12|0; + $sz = sp + 16|0; + $separateCache = sp + 20|0; + HEAP32[$0>>2] = $szPage; + HEAP32[$1>>2] = $szExtra; + HEAP32[$2>>2] = $bPurgeable; + HEAP32[$separateCache>>2] = 0; + HEAP32[$sz>>2] = 48; + $3 = HEAP32[$sz>>2]|0; + $4 = (_sqlite3MallocZero($3)|0); + HEAP32[$pCache>>2] = $4; + $5 = HEAP32[$pCache>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $41 = HEAP32[$pCache>>2]|0; + STACKTOP = sp;return ($41|0); + } + HEAP32[$pGroup>>2] = 3456; + $7 = HEAP32[$pGroup>>2]|0; + $8 = HEAP32[$pCache>>2]|0; + HEAP32[$8>>2] = $7; + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$pCache>>2]|0; + $11 = (($10) + 4|0); + HEAP32[$11>>2] = $9; + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$pCache>>2]|0; + $14 = (($13) + 8|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$2>>2]|0; + $16 = ($15|0)!=(0); + $17 = $16 ? 1 : 0; + $18 = HEAP32[$pCache>>2]|0; + $19 = (($18) + 12|0); + HEAP32[$19>>2] = $17; + $20 = HEAP32[$2>>2]|0; + $21 = ($20|0)!=(0); + if (!($21)) { + $41 = HEAP32[$pCache>>2]|0; + STACKTOP = sp;return ($41|0); + } + $22 = HEAP32[$pCache>>2]|0; + $23 = (($22) + 16|0); + HEAP32[$23>>2] = 10; + $24 = HEAP32[$pCache>>2]|0; + $25 = (($24) + 16|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$pGroup>>2]|0; + $28 = (($27) + 8|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + ($26))|0; + HEAP32[$28>>2] = $30; + $31 = HEAP32[$pGroup>>2]|0; + $32 = (($31) + 4|0); + $33 = HEAP32[$32>>2]|0; + $34 = (($33) + 10)|0; + $35 = HEAP32[$pGroup>>2]|0; + $36 = (($35) + 8|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($34) - ($37))|0; + $39 = HEAP32[$pGroup>>2]|0; + $40 = (($39) + 12|0); + HEAP32[$40>>2] = $38; + $41 = HEAP32[$pCache>>2]|0; + STACKTOP = sp;return ($41|0); +} +function _pcache1Cachesize($p,$nMax) { + $p = $p|0; + $nMax = $nMax|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0; + var $pGroup = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $pCache = sp + 4|0; + $pGroup = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $nMax; + $2 = HEAP32[$0>>2]|0; + HEAP32[$pCache>>2] = $2; + $3 = HEAP32[$pCache>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = HEAP32[$pCache>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$pGroup>>2] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$pCache>>2]|0; + $11 = (($10) + 20|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($9) - ($12))|0; + $14 = HEAP32[$pGroup>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + ($13))|0; + HEAP32[$15>>2] = $17; + $18 = HEAP32[$pGroup>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + 10)|0; + $22 = HEAP32[$pGroup>>2]|0; + $23 = (($22) + 8|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($21) - ($24))|0; + $26 = HEAP32[$pGroup>>2]|0; + $27 = (($26) + 12|0); + HEAP32[$27>>2] = $25; + $28 = HEAP32[$1>>2]|0; + $29 = HEAP32[$pCache>>2]|0; + $30 = (($29) + 20|0); + HEAP32[$30>>2] = $28; + $31 = HEAP32[$pCache>>2]|0; + $32 = (($31) + 20|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($33*9)|0; + $35 = (($34>>>0) / 10)&-1; + $36 = HEAP32[$pCache>>2]|0; + $37 = (($36) + 24|0); + HEAP32[$37>>2] = $35; + $38 = HEAP32[$pGroup>>2]|0; + _pcache1EnforceMaxPage($38); + STACKTOP = sp;return; +} +function _pcache1Pagecount($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $n = 0, $pCache = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $n = sp; + $pCache = sp + 4|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pCache>>2] = $1; + $2 = HEAP32[$pCache>>2]|0; + $3 = (($2) + 36|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$n>>2] = $4; + $5 = HEAP32[$n>>2]|0; + STACKTOP = sp;return ($5|0); +} +function _pcache1Fetch($p,$iKey,$createFlag) { + $p = $p|0; + $iKey = $iKey|0; + $createFlag = $createFlag|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $h = 0, $h1 = 0, $nPinned = 0, $pCache = 0, $pGroup = 0, $pOther = 0, $pPage = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $nPinned = sp + 24|0; + $pCache = sp + 20|0; + $pGroup = sp + 16|0; + $pPage = sp + 8|0; + $h = sp + 4|0; + $pOther = sp; + $h1 = sp + 12|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iKey; + HEAP32[$2>>2] = $createFlag; + $3 = HEAP32[$0>>2]|0; + HEAP32[$pCache>>2] = $3; + HEAP32[$pPage>>2] = 0; + $4 = HEAP32[$pCache>>2]|0; + $5 = (($4) + 40|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6>>>0)>(0); + L1: do { + if ($7) { + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$pCache>>2]|0; + $10 = (($9) + 40|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($8>>>0) % ($11>>>0))&-1; + HEAP32[$h>>2] = $12; + $13 = HEAP32[$h>>2]|0; + $14 = HEAP32[$pCache>>2]|0; + $15 = (($14) + 44|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + ($13<<2)|0); + $18 = HEAP32[$17>>2]|0; + HEAP32[$pPage>>2] = $18; + while(1) { + $19 = HEAP32[$pPage>>2]|0; + $20 = ($19|0)!=(0|0); + if (!($20)) { + break L1; + } + $21 = HEAP32[$pPage>>2]|0; + $22 = (($21) + 8|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$1>>2]|0; + $25 = ($23|0)!=($24|0); + if (!($25)) { + break L1; + } + $26 = HEAP32[$pPage>>2]|0; + $27 = (($26) + 16|0); + $28 = HEAP32[$27>>2]|0; + HEAP32[$pPage>>2] = $28; + } + } + } while(0); + $29 = HEAP32[$pPage>>2]|0; + $30 = ($29|0)!=(0|0); + do { + if ($30) { + $31 = HEAP32[$pPage>>2]|0; + $32 = (($31) + 12|0); + $33 = HEAP8[$32>>0]|0; + $34 = ($33<<24>>24)!=(0); + if (!($34)) { + $35 = HEAP32[$pPage>>2]|0; + _pcache1PinPage($35); + } + } else { + $36 = HEAP32[$2>>2]|0; + $37 = ($36|0)==(0); + if (!($37)) { + $38 = HEAP32[$pCache>>2]|0; + $39 = HEAP32[$38>>2]|0; + HEAP32[$pGroup>>2] = $39; + $40 = HEAP32[$pCache>>2]|0; + $41 = (($40) + 36|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$pCache>>2]|0; + $44 = (($43) + 32|0); + $45 = HEAP32[$44>>2]|0; + $46 = (($42) - ($45))|0; + HEAP32[$nPinned>>2] = $46; + $47 = HEAP32[$2>>2]|0; + $48 = ($47|0)==(1); + if ($48) { + $49 = HEAP32[$nPinned>>2]|0; + $50 = HEAP32[$pGroup>>2]|0; + $51 = (($50) + 12|0); + $52 = HEAP32[$51>>2]|0; + $53 = ($49>>>0)>=($52>>>0); + if ($53) { + break; + } + $54 = HEAP32[$nPinned>>2]|0; + $55 = HEAP32[$pCache>>2]|0; + $56 = (($55) + 24|0); + $57 = HEAP32[$56>>2]|0; + $58 = ($54>>>0)>=($57>>>0); + if ($58) { + break; + } + $59 = HEAP32[$pCache>>2]|0; + $60 = (_pcache1UnderMemoryPressure($59)|0); + $61 = ($60|0)!=(0); + if ($61) { + break; + } + } + $62 = HEAP32[$pCache>>2]|0; + $63 = (($62) + 36|0); + $64 = HEAP32[$63>>2]|0; + $65 = HEAP32[$pCache>>2]|0; + $66 = (($65) + 40|0); + $67 = HEAP32[$66>>2]|0; + $68 = ($64>>>0)>=($67>>>0); + if ($68) { + $69 = HEAP32[$pCache>>2]|0; + $70 = (_pcache1ResizeHash($69)|0); + $71 = ($70|0)!=(0); + if ($71) { + break; + } + } + $72 = HEAP32[$pCache>>2]|0; + $73 = (($72) + 12|0); + $74 = HEAP32[$73>>2]|0; + $75 = ($74|0)!=(0); + do { + if ($75) { + $76 = HEAP32[$pGroup>>2]|0; + $77 = (($76) + 24|0); + $78 = HEAP32[$77>>2]|0; + $79 = ($78|0)!=(0|0); + if ($79) { + $80 = HEAP32[$pCache>>2]|0; + $81 = (($80) + 36|0); + $82 = HEAP32[$81>>2]|0; + $83 = (($82) + 1)|0; + $84 = HEAP32[$pCache>>2]|0; + $85 = (($84) + 20|0); + $86 = HEAP32[$85>>2]|0; + $87 = ($83>>>0)>=($86>>>0); + if (!($87)) { + $88 = HEAP32[$pGroup>>2]|0; + $89 = (($88) + 16|0); + $90 = HEAP32[$89>>2]|0; + $91 = HEAP32[$pGroup>>2]|0; + $92 = (($91) + 4|0); + $93 = HEAP32[$92>>2]|0; + $94 = ($90>>>0)>=($93>>>0); + if (!($94)) { + $95 = HEAP32[$pCache>>2]|0; + $96 = (_pcache1UnderMemoryPressure($95)|0); + $97 = ($96|0)!=(0); + if (!($97)) { + break; + } + } + } + $98 = HEAP32[$pGroup>>2]|0; + $99 = (($98) + 24|0); + $100 = HEAP32[$99>>2]|0; + HEAP32[$pPage>>2] = $100; + $101 = HEAP32[$pPage>>2]|0; + _pcache1RemoveFromHash($101); + $102 = HEAP32[$pPage>>2]|0; + _pcache1PinPage($102); + $103 = HEAP32[$pPage>>2]|0; + $104 = (($103) + 20|0); + $105 = HEAP32[$104>>2]|0; + HEAP32[$pOther>>2] = $105; + $106 = HEAP32[$pOther>>2]|0; + $107 = (($106) + 4|0); + $108 = HEAP32[$107>>2]|0; + $109 = HEAP32[$pOther>>2]|0; + $110 = (($109) + 8|0); + $111 = HEAP32[$110>>2]|0; + $112 = (($108) + ($111))|0; + $113 = HEAP32[$pCache>>2]|0; + $114 = (($113) + 4|0); + $115 = HEAP32[$114>>2]|0; + $116 = HEAP32[$pCache>>2]|0; + $117 = (($116) + 8|0); + $118 = HEAP32[$117>>2]|0; + $119 = (($115) + ($118))|0; + $120 = ($112|0)!=($119|0); + if ($120) { + $121 = HEAP32[$pPage>>2]|0; + _pcache1FreePage($121); + HEAP32[$pPage>>2] = 0; + break; + } else { + $122 = HEAP32[$pOther>>2]|0; + $123 = (($122) + 12|0); + $124 = HEAP32[$123>>2]|0; + $125 = HEAP32[$pCache>>2]|0; + $126 = (($125) + 12|0); + $127 = HEAP32[$126>>2]|0; + $128 = (($124) - ($127))|0; + $129 = HEAP32[$pGroup>>2]|0; + $130 = (($129) + 16|0); + $131 = HEAP32[$130>>2]|0; + $132 = (($131) - ($128))|0; + HEAP32[$130>>2] = $132; + break; + } + } + } + } while(0); + $133 = HEAP32[$pPage>>2]|0; + $134 = ($133|0)!=(0|0); + if (!($134)) { + $135 = HEAP32[$2>>2]|0; + $136 = ($135|0)==(1); + if ($136) { + _sqlite3BeginBenignMalloc(); + } + $137 = HEAP32[$pCache>>2]|0; + $138 = (_pcache1AllocPage($137)|0); + HEAP32[$pPage>>2] = $138; + $139 = HEAP32[$2>>2]|0; + $140 = ($139|0)==(1); + if ($140) { + _sqlite3EndBenignMalloc(); + } + } + $141 = HEAP32[$pPage>>2]|0; + $142 = ($141|0)!=(0|0); + if ($142) { + $143 = HEAP32[$1>>2]|0; + $144 = HEAP32[$pCache>>2]|0; + $145 = (($144) + 40|0); + $146 = HEAP32[$145>>2]|0; + $147 = (($143>>>0) % ($146>>>0))&-1; + HEAP32[$h1>>2] = $147; + $148 = HEAP32[$pCache>>2]|0; + $149 = (($148) + 36|0); + $150 = HEAP32[$149>>2]|0; + $151 = (($150) + 1)|0; + HEAP32[$149>>2] = $151; + $152 = HEAP32[$1>>2]|0; + $153 = HEAP32[$pPage>>2]|0; + $154 = (($153) + 8|0); + HEAP32[$154>>2] = $152; + $155 = HEAP32[$h1>>2]|0; + $156 = HEAP32[$pCache>>2]|0; + $157 = (($156) + 44|0); + $158 = HEAP32[$157>>2]|0; + $159 = (($158) + ($155<<2)|0); + $160 = HEAP32[$159>>2]|0; + $161 = HEAP32[$pPage>>2]|0; + $162 = (($161) + 16|0); + HEAP32[$162>>2] = $160; + $163 = HEAP32[$pCache>>2]|0; + $164 = HEAP32[$pPage>>2]|0; + $165 = (($164) + 20|0); + HEAP32[$165>>2] = $163; + $166 = HEAP32[$pPage>>2]|0; + $167 = (($166) + 28|0); + HEAP32[$167>>2] = 0; + $168 = HEAP32[$pPage>>2]|0; + $169 = (($168) + 24|0); + HEAP32[$169>>2] = 0; + $170 = HEAP32[$pPage>>2]|0; + $171 = (($170) + 12|0); + HEAP8[$171>>0] = 1; + $172 = HEAP32[$pPage>>2]|0; + $173 = (($172) + 4|0); + $174 = HEAP32[$173>>2]|0; + HEAP32[$174>>2] = 0; + $175 = HEAP32[$pPage>>2]|0; + $176 = HEAP32[$h1>>2]|0; + $177 = HEAP32[$pCache>>2]|0; + $178 = (($177) + 44|0); + $179 = HEAP32[$178>>2]|0; + $180 = (($179) + ($176<<2)|0); + HEAP32[$180>>2] = $175; + } + } + } + } while(0); + $181 = HEAP32[$pPage>>2]|0; + $182 = ($181|0)!=(0|0); + if (!($182)) { + $191 = HEAP32[$pPage>>2]|0; + STACKTOP = sp;return ($191|0); + } + $183 = HEAP32[$1>>2]|0; + $184 = HEAP32[$pCache>>2]|0; + $185 = (($184) + 28|0); + $186 = HEAP32[$185>>2]|0; + $187 = ($183>>>0)>($186>>>0); + if (!($187)) { + $191 = HEAP32[$pPage>>2]|0; + STACKTOP = sp;return ($191|0); + } + $188 = HEAP32[$1>>2]|0; + $189 = HEAP32[$pCache>>2]|0; + $190 = (($189) + 28|0); + HEAP32[$190>>2] = $188; + $191 = HEAP32[$pPage>>2]|0; + STACKTOP = sp;return ($191|0); +} +function _pcache1Unpin($p,$pPg,$reuseUnlikely) { + $p = $p|0; + $pPg = $pPg|0; + $reuseUnlikely = $reuseUnlikely|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0, $pGroup = 0, $pPage = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $pCache = sp + 8|0; + $pPage = sp + 12|0; + $pGroup = sp + 16|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pPg; + HEAP32[$2>>2] = $reuseUnlikely; + $3 = HEAP32[$0>>2]|0; + HEAP32[$pCache>>2] = $3; + $4 = HEAP32[$1>>2]|0; + HEAP32[$pPage>>2] = $4; + $5 = HEAP32[$pCache>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$pGroup>>2] = $6; + $7 = HEAP32[$2>>2]|0; + $8 = ($7|0)!=(0); + if (!($8)) { + $9 = HEAP32[$pGroup>>2]|0; + $10 = (($9) + 16|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$pGroup>>2]|0; + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($11>>>0)>($14>>>0); + if (!($15)) { + $18 = HEAP32[$pGroup>>2]|0; + $19 = (($18) + 20|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)!=(0|0); + $22 = HEAP32[$pPage>>2]|0; + $23 = HEAP32[$pGroup>>2]|0; + if ($21) { + $24 = (($23) + 20|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + 28|0); + HEAP32[$26>>2] = $22; + $27 = HEAP32[$pGroup>>2]|0; + $28 = (($27) + 20|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$pPage>>2]|0; + $31 = (($30) + 24|0); + HEAP32[$31>>2] = $29; + $32 = HEAP32[$pPage>>2]|0; + $33 = HEAP32[$pGroup>>2]|0; + $34 = (($33) + 20|0); + HEAP32[$34>>2] = $32; + } else { + $35 = (($23) + 24|0); + HEAP32[$35>>2] = $22; + $36 = HEAP32[$pPage>>2]|0; + $37 = HEAP32[$pGroup>>2]|0; + $38 = (($37) + 20|0); + HEAP32[$38>>2] = $36; + } + $39 = HEAP32[$pCache>>2]|0; + $40 = (($39) + 32|0); + $41 = HEAP32[$40>>2]|0; + $42 = (($41) + 1)|0; + HEAP32[$40>>2] = $42; + $43 = HEAP32[$pPage>>2]|0; + $44 = (($43) + 12|0); + HEAP8[$44>>0] = 0; + STACKTOP = sp;return; + } + } + $16 = HEAP32[$pPage>>2]|0; + _pcache1RemoveFromHash($16); + $17 = HEAP32[$pPage>>2]|0; + _pcache1FreePage($17); + STACKTOP = sp;return; +} +function _pcache1Rekey($p,$pPg,$iOld,$iNew) { + $p = $p|0; + $pPg = $pPg|0; + $iOld = $iOld|0; + $iNew = $iNew|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $h = 0, $pCache = 0, $pPage = 0; + var $pp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pCache = sp + 12|0; + $pPage = sp + 16|0; + $pp = sp + 20|0; + $h = sp + 24|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pPg; + HEAP32[$2>>2] = $iOld; + HEAP32[$3>>2] = $iNew; + $4 = HEAP32[$0>>2]|0; + HEAP32[$pCache>>2] = $4; + $5 = HEAP32[$1>>2]|0; + HEAP32[$pPage>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$pCache>>2]|0; + $8 = (($7) + 40|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($6>>>0) % ($9>>>0))&-1; + HEAP32[$h>>2] = $10; + $11 = HEAP32[$h>>2]|0; + $12 = HEAP32[$pCache>>2]|0; + $13 = (($12) + 44|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + ($11<<2)|0); + HEAP32[$pp>>2] = $15; + while(1) { + $16 = HEAP32[$pp>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$pPage>>2]|0; + $19 = ($17|0)!=($18|0); + if (!($19)) { + break; + } + $20 = HEAP32[$pp>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + 16|0); + HEAP32[$pp>>2] = $22; + } + $23 = HEAP32[$pPage>>2]|0; + $24 = (($23) + 16|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$pp>>2]|0; + HEAP32[$26>>2] = $25; + $27 = HEAP32[$3>>2]|0; + $28 = HEAP32[$pCache>>2]|0; + $29 = (($28) + 40|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($27>>>0) % ($30>>>0))&-1; + HEAP32[$h>>2] = $31; + $32 = HEAP32[$3>>2]|0; + $33 = HEAP32[$pPage>>2]|0; + $34 = (($33) + 8|0); + HEAP32[$34>>2] = $32; + $35 = HEAP32[$h>>2]|0; + $36 = HEAP32[$pCache>>2]|0; + $37 = (($36) + 44|0); + $38 = HEAP32[$37>>2]|0; + $39 = (($38) + ($35<<2)|0); + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$pPage>>2]|0; + $42 = (($41) + 16|0); + HEAP32[$42>>2] = $40; + $43 = HEAP32[$pPage>>2]|0; + $44 = HEAP32[$h>>2]|0; + $45 = HEAP32[$pCache>>2]|0; + $46 = (($45) + 44|0); + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + ($44<<2)|0); + HEAP32[$48>>2] = $43; + $49 = HEAP32[$3>>2]|0; + $50 = HEAP32[$pCache>>2]|0; + $51 = (($50) + 28|0); + $52 = HEAP32[$51>>2]|0; + $53 = ($49>>>0)>($52>>>0); + if (!($53)) { + STACKTOP = sp;return; + } + $54 = HEAP32[$3>>2]|0; + $55 = HEAP32[$pCache>>2]|0; + $56 = (($55) + 28|0); + HEAP32[$56>>2] = $54; + STACKTOP = sp;return; +} +function _pcache1Truncate($p,$iLimit) { + $p = $p|0; + $iLimit = $iLimit|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pCache = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iLimit; + $2 = HEAP32[$0>>2]|0; + HEAP32[$pCache>>2] = $2; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$pCache>>2]|0; + $5 = (($4) + 28|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($3>>>0)<=($6>>>0); + if (!($7)) { + STACKTOP = sp;return; + } + $8 = HEAP32[$pCache>>2]|0; + $9 = HEAP32[$1>>2]|0; + _pcache1TruncateUnsafe($8,$9); + $10 = HEAP32[$1>>2]|0; + $11 = (($10) - 1)|0; + $12 = HEAP32[$pCache>>2]|0; + $13 = (($12) + 28|0); + HEAP32[$13>>2] = $11; + STACKTOP = sp;return; +} +function _pcache1Destroy($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0, $pGroup = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $pCache = sp; + $pGroup = sp + 4|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pCache>>2] = $1; + $2 = HEAP32[$pCache>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$pGroup>>2] = $3; + $4 = HEAP32[$pCache>>2]|0; + _pcache1TruncateUnsafe($4,0); + $5 = HEAP32[$pCache>>2]|0; + $6 = (($5) + 20|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$pGroup>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) - ($7))|0; + HEAP32[$9>>2] = $11; + $12 = HEAP32[$pCache>>2]|0; + $13 = (($12) + 16|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$pGroup>>2]|0; + $16 = (($15) + 8|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) - ($14))|0; + HEAP32[$16>>2] = $18; + $19 = HEAP32[$pGroup>>2]|0; + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + 10)|0; + $23 = HEAP32[$pGroup>>2]|0; + $24 = (($23) + 8|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($22) - ($25))|0; + $27 = HEAP32[$pGroup>>2]|0; + $28 = (($27) + 12|0); + HEAP32[$28>>2] = $26; + $29 = HEAP32[$pGroup>>2]|0; + _pcache1EnforceMaxPage($29); + $30 = HEAP32[$pCache>>2]|0; + $31 = (($30) + 44|0); + $32 = HEAP32[$31>>2]|0; + _sqlite3_free($32); + $33 = HEAP32[$pCache>>2]|0; + _sqlite3_free($33); + STACKTOP = sp;return; +} +function _pcache1Shrink($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0, $pGroup = 0, $savedMaxPage = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $pCache = sp; + $pGroup = sp + 4|0; + $savedMaxPage = sp + 8|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pCache>>2] = $1; + $2 = HEAP32[$pCache>>2]|0; + $3 = (($2) + 12|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[$pCache>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$pGroup>>2] = $7; + $8 = HEAP32[$pGroup>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$savedMaxPage>>2] = $10; + $11 = HEAP32[$pGroup>>2]|0; + $12 = (($11) + 4|0); + HEAP32[$12>>2] = 0; + $13 = HEAP32[$pGroup>>2]|0; + _pcache1EnforceMaxPage($13); + $14 = HEAP32[$savedMaxPage>>2]|0; + $15 = HEAP32[$pGroup>>2]|0; + $16 = (($15) + 4|0); + HEAP32[$16>>2] = $14; + STACKTOP = sp;return; +} +function _pcache1EnforceMaxPage($pGroup) { + $pGroup = $pGroup|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pGroup; + while(1) { + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 16|0); + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($3>>>0)>($6>>>0); + if (!($7)) { + label = 5; + break; + } + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 24|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if (!($11)) { + label = 5; + break; + } + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 24|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$p>>2] = $14; + $15 = HEAP32[$p>>2]|0; + _pcache1PinPage($15); + $16 = HEAP32[$p>>2]|0; + _pcache1RemoveFromHash($16); + $17 = HEAP32[$p>>2]|0; + _pcache1FreePage($17); + } + if ((label|0) == 5) { + STACKTOP = sp;return; + } +} +function _pcache1PinPage($pPage) { + $pPage = $pPage|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $pCache = 0, $pGroup = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $pCache = sp; + $pGroup = sp + 4|0; + HEAP32[$0>>2] = $pPage; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 20|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pCache>>2] = $3; + $4 = HEAP32[$pCache>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$pGroup>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 28|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 24|0); + $12 = HEAP32[$11>>2]|0; + if ($9) { + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 28|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + 24|0); + HEAP32[$16>>2] = $12; + } else { + $17 = HEAP32[$pGroup>>2]|0; + $18 = (($17) + 20|0); + HEAP32[$18>>2] = $12; + } + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 24|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)!=(0|0); + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 28|0); + $25 = HEAP32[$24>>2]|0; + if ($22) { + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 24|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + 28|0); + HEAP32[$29>>2] = $25; + } else { + $30 = HEAP32[$pGroup>>2]|0; + $31 = (($30) + 24|0); + HEAP32[$31>>2] = $25; + } + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 24|0); + HEAP32[$33>>2] = 0; + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 28|0); + HEAP32[$35>>2] = 0; + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + 12|0); + HEAP8[$37>>0] = 1; + $38 = HEAP32[$pCache>>2]|0; + $39 = (($38) + 32|0); + $40 = HEAP32[$39>>2]|0; + $41 = (($40) + -1)|0; + HEAP32[$39>>2] = $41; + STACKTOP = sp;return; +} +function _pcache1RemoveFromHash($pPage) { + $pPage = $pPage|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $h = 0, $pCache = 0, $pp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $h = sp; + $pCache = sp + 4|0; + $pp = sp + 8|0; + HEAP32[$0>>2] = $pPage; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 20|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pCache>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$pCache>>2]|0; + $8 = (($7) + 40|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($6>>>0) % ($9>>>0))&-1; + HEAP32[$h>>2] = $10; + $11 = HEAP32[$h>>2]|0; + $12 = HEAP32[$pCache>>2]|0; + $13 = (($12) + 44|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + ($11<<2)|0); + HEAP32[$pp>>2] = $15; + while(1) { + $16 = HEAP32[$pp>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$0>>2]|0; + $19 = ($17|0)!=($18|0); + $20 = HEAP32[$pp>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + 16|0); + if (!($19)) { + break; + } + HEAP32[$pp>>2] = $22; + } + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$pp>>2]|0; + HEAP32[$24>>2] = $23; + $25 = HEAP32[$pCache>>2]|0; + $26 = (($25) + 36|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + -1)|0; + HEAP32[$26>>2] = $28; + STACKTOP = sp;return; +} +function _pcache1FreePage($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pCache = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 20|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pCache>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$6>>2]|0; + (_pcache1Free($7)|0); + $8 = HEAP32[$pCache>>2]|0; + $9 = (($8) + 12|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0); + if (!($11)) { + STACKTOP = sp;return; + } + $12 = HEAP32[$pCache>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 16|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + -1)|0; + HEAP32[$14>>2] = $16; + STACKTOP = sp;return; +} +function _pcache1TruncateUnsafe($pCache,$iLimit) { + $pCache = $pCache|0; + $iLimit = $iLimit|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $h = 0, $pPage = 0; + var $pp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $h = sp + 4|0; + $pp = sp + 8|0; + $pPage = sp + 12|0; + HEAP32[$0>>2] = $pCache; + HEAP32[$1>>2] = $iLimit; + HEAP32[$h>>2] = 0; + while(1) { + $2 = HEAP32[$h>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 40|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($2>>>0)<($5>>>0); + if (!($6)) { + break; + } + $7 = HEAP32[$h>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 44|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + ($7<<2)|0); + HEAP32[$pp>>2] = $11; + while(1) { + $12 = HEAP32[$pp>>2]|0; + $13 = HEAP32[$12>>2]|0; + HEAP32[$pPage>>2] = $13; + $14 = ($13|0)!=(0|0); + if (!($14)) { + break; + } + $15 = HEAP32[$pPage>>2]|0; + $16 = (($15) + 8|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = ($17>>>0)>=($18>>>0); + if (!($19)) { + $34 = HEAP32[$pPage>>2]|0; + $35 = (($34) + 16|0); + HEAP32[$pp>>2] = $35; + continue; + } + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 36|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + -1)|0; + HEAP32[$21>>2] = $23; + $24 = HEAP32[$pPage>>2]|0; + $25 = (($24) + 16|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$pp>>2]|0; + HEAP32[$27>>2] = $26; + $28 = HEAP32[$pPage>>2]|0; + $29 = (($28) + 12|0); + $30 = HEAP8[$29>>0]|0; + $31 = ($30<<24>>24)!=(0); + if (!($31)) { + $32 = HEAP32[$pPage>>2]|0; + _pcache1PinPage($32); + } + $33 = HEAP32[$pPage>>2]|0; + _pcache1FreePage($33); + } + $36 = HEAP32[$h>>2]|0; + $37 = (($36) + 1)|0; + HEAP32[$h>>2] = $37; + } + STACKTOP = sp;return; +} +function _pcache1UnderMemoryPressure($pCache) { + $pCache = $pCache|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $pCache; + $2 = HEAP32[((3456 + 36|0))>>2]|0; + $3 = ($2|0)!=(0); + if ($3) { + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 8|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($6) + ($9))|0; + $11 = HEAP32[((3456 + 32|0))>>2]|0; + $12 = ($10|0)<=($11|0); + if ($12) { + $13 = HEAP32[((3456 + 64|0))>>2]|0; + HEAP32[$0>>2] = $13; + $15 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($15|0); + } + } + $14 = (_sqlite3HeapNearlyFull()|0); + HEAP32[$0>>2] = $14; + $15 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($15|0); +} +function _pcache1ResizeHash($p) { + $p = $p|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $apNew = 0, $h = 0, $i = 0, $nNew = 0, $pNext = 0, $pPage = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $apNew = sp; + $nNew = sp + 4|0; + $i = sp + 8|0; + $pPage = sp + 12|0; + $pNext = sp + 16|0; + $h = sp + 20|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 40|0); + $3 = HEAP32[$2>>2]|0; + $4 = $3<<1; + HEAP32[$nNew>>2] = $4; + $5 = HEAP32[$nNew>>2]|0; + $6 = ($5>>>0)<(256); + $$ = $6 ? 256 : $4; + HEAP32[$nNew>>2] = $$; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 40|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0); + if ($10) { + _sqlite3BeginBenignMalloc(); + } + $11 = HEAP32[$nNew>>2]|0; + $12 = $11<<2; + $13 = (_sqlite3MallocZero($12)|0); + HEAP32[$apNew>>2] = $13; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 40|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(0); + if ($17) { + _sqlite3EndBenignMalloc(); + } + $18 = HEAP32[$apNew>>2]|0; + $19 = ($18|0)!=(0|0); + if (!($19)) { + $62 = HEAP32[$0>>2]|0; + $63 = (($62) + 44|0); + $64 = HEAP32[$63>>2]|0; + $65 = ($64|0)!=(0|0); + $66 = $65 ? 0 : 7; + STACKTOP = sp;return ($66|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $20 = HEAP32[$i>>2]|0; + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 40|0); + $23 = HEAP32[$22>>2]|0; + $24 = ($20>>>0)<($23>>>0); + if (!($24)) { + break; + } + $25 = HEAP32[$i>>2]|0; + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 44|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + ($25<<2)|0); + $30 = HEAP32[$29>>2]|0; + HEAP32[$pNext>>2] = $30; + while(1) { + $31 = HEAP32[$pNext>>2]|0; + HEAP32[$pPage>>2] = $31; + $32 = ($31|0)!=(0|0); + if (!($32)) { + break; + } + $33 = HEAP32[$pPage>>2]|0; + $34 = (($33) + 8|0); + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$nNew>>2]|0; + $37 = (($35>>>0) % ($36>>>0))&-1; + HEAP32[$h>>2] = $37; + $38 = HEAP32[$pPage>>2]|0; + $39 = (($38) + 16|0); + $40 = HEAP32[$39>>2]|0; + HEAP32[$pNext>>2] = $40; + $41 = HEAP32[$h>>2]|0; + $42 = HEAP32[$apNew>>2]|0; + $43 = (($42) + ($41<<2)|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$pPage>>2]|0; + $46 = (($45) + 16|0); + HEAP32[$46>>2] = $44; + $47 = HEAP32[$pPage>>2]|0; + $48 = HEAP32[$h>>2]|0; + $49 = HEAP32[$apNew>>2]|0; + $50 = (($49) + ($48<<2)|0); + HEAP32[$50>>2] = $47; + } + $51 = HEAP32[$i>>2]|0; + $52 = (($51) + 1)|0; + HEAP32[$i>>2] = $52; + } + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 44|0); + $55 = HEAP32[$54>>2]|0; + _sqlite3_free($55); + $56 = HEAP32[$apNew>>2]|0; + $57 = HEAP32[$0>>2]|0; + $58 = (($57) + 44|0); + HEAP32[$58>>2] = $56; + $59 = HEAP32[$nNew>>2]|0; + $60 = HEAP32[$0>>2]|0; + $61 = (($60) + 40|0); + HEAP32[$61>>2] = $59; + $62 = HEAP32[$0>>2]|0; + $63 = (($62) + 44|0); + $64 = HEAP32[$63>>2]|0; + $65 = ($64|0)!=(0|0); + $66 = $65 ? 0 : 7; + STACKTOP = sp;return ($66|0); +} +function _pcache1AllocPage($pCache) { + $pCache = $pCache|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pPg = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $p = sp + 4|0; + $pPg = sp + 8|0; + HEAP32[$1>>2] = $pCache; + HEAP32[$p>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = (32 + ($4))|0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 8|0); + $8 = HEAP32[$7>>2]|0; + $9 = (($5) + ($8))|0; + $10 = (_pcache1Alloc($9)|0); + HEAP32[$pPg>>2] = $10; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$pPg>>2]|0; + $15 = (($14) + ($13)|0); + HEAP32[$p>>2] = $15; + $16 = HEAP32[$pPg>>2]|0; + $17 = ($16|0)!=(0|0); + if (!($17)) { + HEAP32[$0>>2] = 0; + $34 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($34|0); + } + $18 = HEAP32[$pPg>>2]|0; + $19 = HEAP32[$p>>2]|0; + HEAP32[$19>>2] = $18; + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 32|0); + $22 = HEAP32[$p>>2]|0; + $23 = (($22) + 4|0); + HEAP32[$23>>2] = $21; + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 12|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)!=(0); + if ($27) { + $28 = HEAP32[$1>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + 16|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + 1)|0; + HEAP32[$30>>2] = $32; + } + $33 = HEAP32[$p>>2]|0; + HEAP32[$0>>2] = $33; + $34 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($34|0); +} +function _sqlite3HeapNearlyFull() { + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP32[((480 + 36|0))>>2]|0; + STACKTOP = sp;return ($0|0); +} +function _sqlite3MemMalloc($nByte) { + $nByte = $nByte|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $p = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 8|0; + $p = sp + 4|0; + HEAP32[$0>>2] = $nByte; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 7)|0; + $3 = $2 & -8; + HEAP32[$0>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 8)|0; + $6 = (_malloc($5)|0); + HEAP32[$p>>2] = $6; + $7 = HEAP32[$p>>2]|0; + $8 = ($7|0)!=(0|0); + $9 = HEAP32[$0>>2]|0; + if ($8) { + $10 = ($9|0)<(0); + $11 = $10 << 31 >> 31; + $12 = HEAP32[$p>>2]|0; + $13 = $12; + $14 = $13; + HEAP32[$14>>2] = $9; + $15 = (($13) + 4)|0; + $16 = $15; + HEAP32[$16>>2] = $11; + $17 = HEAP32[$p>>2]|0; + $18 = (($17) + 8|0); + HEAP32[$p>>2] = $18; + $19 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($19|0); + } else { + HEAP32[$vararg_buffer>>2] = $9; + _sqlite3_log(7,12784,$vararg_buffer); + $19 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($19|0); + } + return 0|0; +} +function _sqlite3MemFree($pPrior) { + $pPrior = $pPrior|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pPrior; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + $2 = HEAP32[$p>>2]|0; + $3 = (($2) + -8|0); + HEAP32[$p>>2] = $3; + $4 = HEAP32[$p>>2]|0; + _free($4); + STACKTOP = sp;return; +} +function _sqlite3MemRealloc($pPrior,$nByte) { + $pPrior = $pPrior|0; + $nByte = $nByte|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 16|0; + $1 = sp + 8|0; + $p = sp + 12|0; + HEAP32[$0>>2] = $pPrior; + HEAP32[$1>>2] = $nByte; + $2 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $2; + $3 = HEAP32[$p>>2]|0; + $4 = (($3) + -8|0); + HEAP32[$p>>2] = $4; + $5 = HEAP32[$p>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 8)|0; + $8 = (_realloc($5,$7)|0); + HEAP32[$p>>2] = $8; + $9 = HEAP32[$p>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = HEAP32[$1>>2]|0; + $12 = ($11|0)<(0); + $13 = $12 << 31 >> 31; + $14 = HEAP32[$p>>2]|0; + $15 = $14; + $16 = $15; + HEAP32[$16>>2] = $11; + $17 = (($15) + 4)|0; + $18 = $17; + HEAP32[$18>>2] = $13; + $19 = HEAP32[$p>>2]|0; + $20 = (($19) + 8|0); + HEAP32[$p>>2] = $20; + $24 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($24|0); + } else { + $21 = HEAP32[$0>>2]|0; + $22 = (_sqlite3MemSize($21)|0); + $23 = HEAP32[$1>>2]|0; + HEAP32[$vararg_buffer>>2] = $22; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $23; + _sqlite3_log(7,12744,$vararg_buffer); + $24 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($24|0); + } + return 0|0; +} +function _sqlite3MemSize($pPrior) { + $pPrior = $pPrior|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $p = sp + 4|0; + HEAP32[$1>>2] = $pPrior; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0|0); + if ($3) { + HEAP32[$0>>2] = 0; + $14 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($14|0); + } else { + $4 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $4; + $5 = HEAP32[$p>>2]|0; + $6 = (($5) + -8|0); + HEAP32[$p>>2] = $6; + $7 = HEAP32[$p>>2]|0; + $8 = $7; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = (($8) + 4)|0; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + HEAP32[$0>>2] = $10; + $14 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($14|0); + } + return 0|0; +} +function _sqlite3MemRoundup($n) { + $n = $n|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $n; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 7)|0; + $3 = $2 & -8; + STACKTOP = sp;return ($3|0); +} +function _sqlite3MemInit($NotUsed) { + $NotUsed = $NotUsed|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $NotUsed; + STACKTOP = sp;return 0; +} +function _sqlite3MemShutdown($NotUsed) { + $NotUsed = $NotUsed|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $NotUsed; + STACKTOP = sp;return; +} +function _trimFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aLen = 0, $azChar = 0, $flags = 0, $i = 0, $len = 0, $len1 = 0, $nChar = 0, $nIn = 0, $z = 0, $zCharSet = 0; + var $zIn = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 52|0; + $1 = sp + 48|0; + $2 = sp + 44|0; + $zIn = sp + 40|0; + $zCharSet = sp + 36|0; + $nIn = sp + 32|0; + $flags = sp + 28|0; + $i = sp + 24|0; + $aLen = sp + 16|0; + $azChar = sp + 12|0; + $nChar = sp + 8|0; + $z = sp + 4|0; + $len = sp; + $len1 = sp + 20|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + HEAP32[$aLen>>2] = 0; + HEAP32[$azChar>>2] = 0; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_type($4)|0); + $6 = ($5|0)==(5); + if ($6) { + STACKTOP = sp;return; + } + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3_value_text($8)|0); + HEAP32[$zIn>>2] = $9; + $10 = HEAP32[$zIn>>2]|0; + $11 = ($10|0)==(0|0); + if ($11) { + STACKTOP = sp;return; + } + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = (_sqlite3_value_bytes($13)|0); + HEAP32[$nIn>>2] = $14; + $15 = HEAP32[$1>>2]|0; + $16 = ($15|0)==(1); + L7: do { + if ($16) { + HEAP32[$nChar>>2] = 1; + HEAP32[$aLen>>2] = 16432; + HEAP32[$azChar>>2] = 16440; + HEAP32[$zCharSet>>2] = 0; + } else { + $17 = HEAP32[$2>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = (_sqlite3_value_text($19)|0); + HEAP32[$zCharSet>>2] = $20; + $21 = ($20|0)==(0|0); + if ($21) { + STACKTOP = sp;return; + } + $22 = HEAP32[$zCharSet>>2]|0; + HEAP32[$z>>2] = $22; + HEAP32[$nChar>>2] = 0; + while(1) { + $23 = HEAP32[$z>>2]|0; + $24 = HEAP8[$23>>0]|0; + $25 = ($24<<24>>24)!=(0); + if (!($25)) { + break; + } + $26 = HEAP32[$z>>2]|0; + $27 = (($26) + 1|0); + HEAP32[$z>>2] = $27; + $28 = HEAP8[$26>>0]|0; + $29 = $28&255; + $30 = ($29|0)>=(192); + L15: do { + if ($30) { + while(1) { + $31 = HEAP32[$z>>2]|0; + $32 = HEAP8[$31>>0]|0; + $33 = $32&255; + $34 = $33 & 192; + $35 = ($34|0)==(128); + if (!($35)) { + break L15; + } + $36 = HEAP32[$z>>2]|0; + $37 = (($36) + 1|0); + HEAP32[$z>>2] = $37; + } + } + } while(0); + $38 = HEAP32[$nChar>>2]|0; + $39 = (($38) + 1)|0; + HEAP32[$nChar>>2] = $39; + } + $40 = HEAP32[$nChar>>2]|0; + $41 = ($40|0)>(0); + if ($41) { + $42 = HEAP32[$0>>2]|0; + $43 = HEAP32[$nChar>>2]|0; + $44 = ($43|0)<(0); + $45 = $44 << 31 >> 31; + $46 = (___muldi3(($43|0),($45|0),5,0)|0); + $47 = tempRet0; + $48 = (_contextMalloc($42,$46,$47)|0); + HEAP32[$azChar>>2] = $48; + $49 = HEAP32[$azChar>>2]|0; + $50 = ($49|0)==(0|0); + if ($50) { + STACKTOP = sp;return; + } + $51 = HEAP32[$nChar>>2]|0; + $52 = HEAP32[$azChar>>2]|0; + $53 = (($52) + ($51<<2)|0); + HEAP32[$aLen>>2] = $53; + $54 = HEAP32[$zCharSet>>2]|0; + HEAP32[$z>>2] = $54; + HEAP32[$nChar>>2] = 0; + while(1) { + $55 = HEAP32[$z>>2]|0; + $56 = HEAP8[$55>>0]|0; + $57 = ($56<<24>>24)!=(0); + if (!($57)) { + break L7; + } + $58 = HEAP32[$z>>2]|0; + $59 = HEAP32[$nChar>>2]|0; + $60 = HEAP32[$azChar>>2]|0; + $61 = (($60) + ($59<<2)|0); + HEAP32[$61>>2] = $58; + $62 = HEAP32[$z>>2]|0; + $63 = (($62) + 1|0); + HEAP32[$z>>2] = $63; + $64 = HEAP8[$62>>0]|0; + $65 = $64&255; + $66 = ($65|0)>=(192); + L28: do { + if ($66) { + while(1) { + $67 = HEAP32[$z>>2]|0; + $68 = HEAP8[$67>>0]|0; + $69 = $68&255; + $70 = $69 & 192; + $71 = ($70|0)==(128); + if (!($71)) { + break L28; + } + $72 = HEAP32[$z>>2]|0; + $73 = (($72) + 1|0); + HEAP32[$z>>2] = $73; + } + } + } while(0); + $74 = HEAP32[$z>>2]|0; + $75 = HEAP32[$nChar>>2]|0; + $76 = HEAP32[$azChar>>2]|0; + $77 = (($76) + ($75<<2)|0); + $78 = HEAP32[$77>>2]|0; + $79 = $74; + $80 = $78; + $81 = (($79) - ($80))|0; + $82 = $81&255; + $83 = HEAP32[$nChar>>2]|0; + $84 = HEAP32[$aLen>>2]|0; + $85 = (($84) + ($83)|0); + HEAP8[$85>>0] = $82; + $86 = HEAP32[$nChar>>2]|0; + $87 = (($86) + 1)|0; + HEAP32[$nChar>>2] = $87; + } + } + } + } while(0); + $88 = HEAP32[$nChar>>2]|0; + $89 = ($88|0)>(0); + if ($89) { + $90 = HEAP32[$0>>2]|0; + $91 = (_sqlite3_user_data($90)|0); + $92 = $91; + HEAP32[$flags>>2] = $92; + $93 = HEAP32[$flags>>2]|0; + $94 = $93 & 1; + $95 = ($94|0)!=(0); + L37: do { + if ($95) { + while(1) { + $96 = HEAP32[$nIn>>2]|0; + $97 = ($96|0)>(0); + if (!($97)) { + break L37; + } + HEAP32[$len>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $98 = HEAP32[$i>>2]|0; + $99 = HEAP32[$nChar>>2]|0; + $100 = ($98|0)<($99|0); + if (!($100)) { + break; + } + $101 = HEAP32[$i>>2]|0; + $102 = HEAP32[$aLen>>2]|0; + $103 = (($102) + ($101)|0); + $104 = HEAP8[$103>>0]|0; + $105 = $104&255; + HEAP32[$len>>2] = $105; + $106 = HEAP32[$len>>2]|0; + $107 = HEAP32[$nIn>>2]|0; + $108 = ($106|0)<=($107|0); + if ($108) { + $109 = HEAP32[$zIn>>2]|0; + $110 = HEAP32[$i>>2]|0; + $111 = HEAP32[$azChar>>2]|0; + $112 = (($111) + ($110<<2)|0); + $113 = HEAP32[$112>>2]|0; + $114 = HEAP32[$len>>2]|0; + $115 = (_memcmp($109,$113,$114)|0); + $116 = ($115|0)==(0); + if ($116) { + break; + } + } + $117 = HEAP32[$i>>2]|0; + $118 = (($117) + 1)|0; + HEAP32[$i>>2] = $118; + } + $119 = HEAP32[$i>>2]|0; + $120 = HEAP32[$nChar>>2]|0; + $121 = ($119|0)>=($120|0); + if ($121) { + break L37; + } + $122 = HEAP32[$len>>2]|0; + $123 = HEAP32[$zIn>>2]|0; + $124 = (($123) + ($122)|0); + HEAP32[$zIn>>2] = $124; + $125 = HEAP32[$len>>2]|0; + $126 = HEAP32[$nIn>>2]|0; + $127 = (($126) - ($125))|0; + HEAP32[$nIn>>2] = $127; + } + } + } while(0); + $128 = HEAP32[$flags>>2]|0; + $129 = $128 & 2; + $130 = ($129|0)!=(0); + L50: do { + if ($130) { + while(1) { + $131 = HEAP32[$nIn>>2]|0; + $132 = ($131|0)>(0); + if (!($132)) { + break L50; + } + HEAP32[$len1>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $133 = HEAP32[$i>>2]|0; + $134 = HEAP32[$nChar>>2]|0; + $135 = ($133|0)<($134|0); + if (!($135)) { + break; + } + $136 = HEAP32[$i>>2]|0; + $137 = HEAP32[$aLen>>2]|0; + $138 = (($137) + ($136)|0); + $139 = HEAP8[$138>>0]|0; + $140 = $139&255; + HEAP32[$len1>>2] = $140; + $141 = HEAP32[$len1>>2]|0; + $142 = HEAP32[$nIn>>2]|0; + $143 = ($141|0)<=($142|0); + if ($143) { + $144 = HEAP32[$nIn>>2]|0; + $145 = HEAP32[$len1>>2]|0; + $146 = (($144) - ($145))|0; + $147 = HEAP32[$zIn>>2]|0; + $148 = (($147) + ($146)|0); + $149 = HEAP32[$i>>2]|0; + $150 = HEAP32[$azChar>>2]|0; + $151 = (($150) + ($149<<2)|0); + $152 = HEAP32[$151>>2]|0; + $153 = HEAP32[$len1>>2]|0; + $154 = (_memcmp($148,$152,$153)|0); + $155 = ($154|0)==(0); + if ($155) { + break; + } + } + $156 = HEAP32[$i>>2]|0; + $157 = (($156) + 1)|0; + HEAP32[$i>>2] = $157; + } + $158 = HEAP32[$i>>2]|0; + $159 = HEAP32[$nChar>>2]|0; + $160 = ($158|0)>=($159|0); + if ($160) { + break L50; + } + $161 = HEAP32[$len1>>2]|0; + $162 = HEAP32[$nIn>>2]|0; + $163 = (($162) - ($161))|0; + HEAP32[$nIn>>2] = $163; + } + } + } while(0); + $164 = HEAP32[$zCharSet>>2]|0; + $165 = ($164|0)!=(0|0); + if ($165) { + $166 = HEAP32[$azChar>>2]|0; + _sqlite3_free($166); + } + } + $167 = HEAP32[$0>>2]|0; + $168 = HEAP32[$zIn>>2]|0; + $169 = HEAP32[$nIn>>2]|0; + _sqlite3_result_text($167,$168,$169,(-1)); + STACKTOP = sp;return; +} +function _minmaxFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $i = 0, $iBest = 0, $mask = 0, $pColl = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + $mask = sp + 12|0; + $iBest = sp + 16|0; + $pColl = sp + 20|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3_user_data($3)|0); + $5 = ($4|0)==(0|0); + $6 = $5 ? 0 : -1; + HEAP32[$mask>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = (_sqlite3GetFuncCollSeq($7)|0); + HEAP32[$pColl>>2] = $8; + HEAP32[$iBest>>2] = 0; + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = (_sqlite3_value_type($10)|0); + $12 = ($11|0)==(5); + if ($12) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 1; + while(1) { + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = ($13|0)<($14|0); + if (!($15)) { + break; + } + $16 = HEAP32[$i>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = (($17) + ($16<<2)|0); + $19 = HEAP32[$18>>2]|0; + $20 = (_sqlite3_value_type($19)|0); + $21 = ($20|0)==(5); + if ($21) { + label = 9; + break; + } + $22 = HEAP32[$iBest>>2]|0; + $23 = HEAP32[$2>>2]|0; + $24 = (($23) + ($22<<2)|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$i>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + ($26<<2)|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$pColl>>2]|0; + $31 = (_sqlite3MemCompare($25,$29,$30)|0); + $32 = HEAP32[$mask>>2]|0; + $33 = $31 ^ $32; + $34 = ($33|0)>=(0); + if ($34) { + $35 = HEAP32[$i>>2]|0; + HEAP32[$iBest>>2] = $35; + } + $36 = HEAP32[$i>>2]|0; + $37 = (($36) + 1)|0; + HEAP32[$i>>2] = $37; + } + if ((label|0) == 9) { + STACKTOP = sp;return; + } + $38 = HEAP32[$0>>2]|0; + $39 = HEAP32[$iBest>>2]|0; + $40 = HEAP32[$2>>2]|0; + $41 = (($40) + ($39<<2)|0); + $42 = HEAP32[$41>>2]|0; + _sqlite3_result_value($38,$42); + STACKTOP = sp;return; +} +function _minmaxStep($context,$NotUsed,$argv) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $cmp = 0, $max = 0, $pArg = 0, $pBest = 0, $pColl = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $pArg = sp + 8|0; + $pBest = sp + 12|0; + $max = sp + 16|0; + $cmp = sp + 20|0; + $pColl = sp + 24|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$pArg>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (_sqlite3_aggregate_context($5,40)|0); + HEAP32[$pBest>>2] = $6; + $7 = HEAP32[$pBest>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + STACKTOP = sp;return; + } + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = (_sqlite3_value_type($10)|0); + $12 = ($11|0)==(5); + $13 = HEAP32[$pBest>>2]|0; + $14 = (($13) + 28|0); + $15 = HEAP16[$14>>1]|0; + $16 = ($15<<16>>16)!=(0); + if ($12) { + if (!($16)) { + STACKTOP = sp;return; + } + $17 = HEAP32[$0>>2]|0; + _sqlite3SkipAccumulatorLoad($17); + STACKTOP = sp;return; + } + if (!($16)) { + $39 = HEAP32[$pBest>>2]|0; + $40 = HEAP32[$pArg>>2]|0; + (_sqlite3VdbeMemCopy($39,$40)|0); + STACKTOP = sp;return; + } + $18 = HEAP32[$0>>2]|0; + $19 = (_sqlite3GetFuncCollSeq($18)|0); + HEAP32[$pColl>>2] = $19; + $20 = HEAP32[$0>>2]|0; + $21 = (_sqlite3_user_data($20)|0); + $22 = ($21|0)!=(0|0); + $23 = $22&1; + HEAP32[$max>>2] = $23; + $24 = HEAP32[$pBest>>2]|0; + $25 = HEAP32[$pArg>>2]|0; + $26 = HEAP32[$pColl>>2]|0; + $27 = (_sqlite3MemCompare($24,$25,$26)|0); + HEAP32[$cmp>>2] = $27; + $28 = HEAP32[$max>>2]|0; + $29 = ($28|0)!=(0); + if ($29) { + $30 = HEAP32[$cmp>>2]|0; + $31 = ($30|0)<(0); + if (!($31)) { + label = 8; + } + } else { + label = 8; + } + do { + if ((label|0) == 8) { + $32 = HEAP32[$max>>2]|0; + $33 = ($32|0)!=(0); + if (!($33)) { + $34 = HEAP32[$cmp>>2]|0; + $35 = ($34|0)>(0); + if ($35) { + break; + } + } + $38 = HEAP32[$0>>2]|0; + _sqlite3SkipAccumulatorLoad($38); + STACKTOP = sp;return; + } + } while(0); + $36 = HEAP32[$pBest>>2]|0; + $37 = HEAP32[$pArg>>2]|0; + (_sqlite3VdbeMemCopy($36,$37)|0); + STACKTOP = sp;return; +} +function _minMaxFinalize($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pRes = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pRes = sp; + HEAP32[$0>>2] = $context; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3_aggregate_context($1,0)|0); + HEAP32[$pRes>>2] = $2; + $3 = HEAP32[$pRes>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$pRes>>2]|0; + $6 = (($5) + 28|0); + $7 = HEAP16[$6>>1]|0; + $8 = ($7<<16>>16)!=(0); + if ($8) { + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$pRes>>2]|0; + _sqlite3_result_value($9,$10); + } + $11 = HEAP32[$pRes>>2]|0; + _sqlite3VdbeMemRelease($11); + STACKTOP = sp;return; +} +function _typeofFunc($context,$NotUsed,$argv) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $z = sp + 8|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $argv; + HEAP32[$z>>2] = 0; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_type($4)|0); + if ((($5|0) == 4)) { + HEAP32[$z>>2] = 16416; + } else if ((($5|0) == 3)) { + HEAP32[$z>>2] = 16400; + } else if ((($5|0) == 1)) { + HEAP32[$z>>2] = 16392; + } else if ((($5|0) == 2)) { + HEAP32[$z>>2] = 16408; + } else { + HEAP32[$z>>2] = 16424; + } + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$z>>2]|0; + _sqlite3_result_text($6,$7,-1,0); + STACKTOP = sp;return; +} +function _lengthFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $len = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $len = sp + 8|0; + $z = sp + 12|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_type($4)|0); + if ((($5|0) == 3)) { + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = (_sqlite3_value_text($11)|0); + HEAP32[$z>>2] = $12; + $13 = HEAP32[$z>>2]|0; + $14 = ($13|0)==(0|0); + if ($14) { + STACKTOP = sp;return; + } + HEAP32[$len>>2] = 0; + L6: while(1) { + $15 = HEAP32[$z>>2]|0; + $16 = HEAP8[$15>>0]|0; + $17 = ($16<<24>>24)!=(0); + if (!($17)) { + break; + } + $18 = HEAP32[$len>>2]|0; + $19 = (($18) + 1)|0; + HEAP32[$len>>2] = $19; + $20 = HEAP32[$z>>2]|0; + $21 = (($20) + 1|0); + HEAP32[$z>>2] = $21; + $22 = HEAP8[$20>>0]|0; + $23 = $22&255; + $24 = ($23|0)>=(192); + if (!($24)) { + continue; + } + while(1) { + $25 = HEAP32[$z>>2]|0; + $26 = HEAP8[$25>>0]|0; + $27 = $26&255; + $28 = $27 & 192; + $29 = ($28|0)==(128); + if (!($29)) { + continue L6; + } + $30 = HEAP32[$z>>2]|0; + $31 = (($30) + 1|0); + HEAP32[$z>>2] = $31; + } + } + $32 = HEAP32[$0>>2]|0; + $33 = HEAP32[$len>>2]|0; + _sqlite3_result_int($32,$33); + STACKTOP = sp;return; + } else if ((($5|0) == 2) | (($5|0) == 1) | (($5|0) == 4)) { + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3_value_bytes($8)|0); + _sqlite3_result_int($6,$9); + STACKTOP = sp;return; + } else { + $34 = HEAP32[$0>>2]|0; + _sqlite3_result_null($34); + STACKTOP = sp;return; + } +} +function _instrFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $N = 0, $isText = 0, $nHaystack = 0, $nNeedle = 0, $typeHaystack = 0, $typeNeedle = 0, $zHaystack = 0, $zNeedle = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $zHaystack = sp + 28|0; + $zNeedle = sp + 24|0; + $nHaystack = sp + 20|0; + $nNeedle = sp + 12|0; + $typeHaystack = sp + 8|0; + $typeNeedle = sp + 4|0; + $N = sp; + $isText = sp + 16|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + HEAP32[$N>>2] = 1; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_type($4)|0); + HEAP32[$typeHaystack>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3_value_type($8)|0); + HEAP32[$typeNeedle>>2] = $9; + $10 = HEAP32[$typeHaystack>>2]|0; + $11 = ($10|0)==(5); + if ($11) { + STACKTOP = sp;return; + } + $12 = HEAP32[$typeNeedle>>2]|0; + $13 = ($12|0)==(5); + if ($13) { + STACKTOP = sp;return; + } + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = (_sqlite3_value_bytes($15)|0); + HEAP32[$nHaystack>>2] = $16; + $17 = HEAP32[$2>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = (_sqlite3_value_bytes($19)|0); + HEAP32[$nNeedle>>2] = $20; + $21 = HEAP32[$typeHaystack>>2]|0; + $22 = ($21|0)==(4); + if ($22) { + $23 = HEAP32[$typeNeedle>>2]|0; + $24 = ($23|0)==(4); + if ($24) { + $25 = HEAP32[$2>>2]|0; + $26 = HEAP32[$25>>2]|0; + $27 = (_sqlite3_value_blob($26)|0); + HEAP32[$zHaystack>>2] = $27; + $28 = HEAP32[$2>>2]|0; + $29 = (($28) + 4|0); + $30 = HEAP32[$29>>2]|0; + $31 = (_sqlite3_value_blob($30)|0); + HEAP32[$zNeedle>>2] = $31; + HEAP32[$isText>>2] = 0; + } else { + label = 6; + } + } else { + label = 6; + } + if ((label|0) == 6) { + $32 = HEAP32[$2>>2]|0; + $33 = HEAP32[$32>>2]|0; + $34 = (_sqlite3_value_text($33)|0); + HEAP32[$zHaystack>>2] = $34; + $35 = HEAP32[$2>>2]|0; + $36 = (($35) + 4|0); + $37 = HEAP32[$36>>2]|0; + $38 = (_sqlite3_value_text($37)|0); + HEAP32[$zNeedle>>2] = $38; + HEAP32[$isText>>2] = 1; + } + L12: while(1) { + $39 = HEAP32[$nNeedle>>2]|0; + $40 = HEAP32[$nHaystack>>2]|0; + $41 = ($39|0)<=($40|0); + if (!($41)) { + break; + } + $42 = HEAP32[$zHaystack>>2]|0; + $43 = HEAP32[$zNeedle>>2]|0; + $44 = HEAP32[$nNeedle>>2]|0; + $45 = (_memcmp($42,$43,$44)|0); + $46 = ($45|0)!=(0); + if (!($46)) { + break; + } + $47 = HEAP32[$N>>2]|0; + $48 = (($47) + 1)|0; + HEAP32[$N>>2] = $48; + while(1) { + $49 = HEAP32[$nHaystack>>2]|0; + $50 = (($49) + -1)|0; + HEAP32[$nHaystack>>2] = $50; + $51 = HEAP32[$zHaystack>>2]|0; + $52 = (($51) + 1|0); + HEAP32[$zHaystack>>2] = $52; + $53 = HEAP32[$isText>>2]|0; + $54 = ($53|0)!=(0); + if (!($54)) { + continue L12; + } + $55 = HEAP32[$zHaystack>>2]|0; + $56 = HEAP8[$55>>0]|0; + $57 = $56&255; + $58 = $57 & 192; + $59 = ($58|0)==(128); + if (!($59)) { + continue L12; + } + } + } + $60 = HEAP32[$nNeedle>>2]|0; + $61 = HEAP32[$nHaystack>>2]|0; + $62 = ($60|0)>($61|0); + if ($62) { + HEAP32[$N>>2] = 0; + } + $63 = HEAP32[$0>>2]|0; + $64 = HEAP32[$N>>2]|0; + _sqlite3_result_int($63,$64); + STACKTOP = sp;return; +} +function _substrFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $len = 0, $negP2 = 0, $p0type = 0, $p1 = 0, $p2 = 0; + var $z = 0, $z2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $z = sp + 32|0; + $z2 = sp + 28|0; + $len = sp + 24|0; + $p0type = sp + 16|0; + $p1 = sp + 8|0; + $p2 = sp; + $negP2 = sp + 20|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + HEAP32[$negP2>>2] = 0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = (_sqlite3_value_type($5)|0); + $7 = ($6|0)==(5); + if ($7) { + STACKTOP = sp;return; + } + $8 = HEAP32[$1>>2]|0; + $9 = ($8|0)==(3); + if ($9) { + $10 = HEAP32[$2>>2]|0; + $11 = (($10) + 8|0); + $12 = HEAP32[$11>>2]|0; + $13 = (_sqlite3_value_type($12)|0); + $14 = ($13|0)==(5); + if ($14) { + STACKTOP = sp;return; + } + } + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = (_sqlite3_value_type($16)|0); + HEAP32[$p0type>>2] = $17; + $18 = HEAP32[$2>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3_value_int($20)|0); + $22 = ($21|0)<(0); + $23 = $22 << 31 >> 31; + $24 = $p1; + $25 = $24; + HEAP32[$25>>2] = $21; + $26 = (($24) + 4)|0; + $27 = $26; + HEAP32[$27>>2] = $23; + $28 = HEAP32[$p0type>>2]|0; + $29 = ($28|0)==(4); + $30 = HEAP32[$2>>2]|0; + $31 = HEAP32[$30>>2]|0; + L8: do { + if ($29) { + $32 = (_sqlite3_value_bytes($31)|0); + HEAP32[$len>>2] = $32; + $33 = HEAP32[$2>>2]|0; + $34 = HEAP32[$33>>2]|0; + $35 = (_sqlite3_value_blob($34)|0); + HEAP32[$z>>2] = $35; + $36 = HEAP32[$z>>2]|0; + $37 = ($36|0)==(0|0); + if ($37) { + STACKTOP = sp;return; + } + } else { + $38 = (_sqlite3_value_text($31)|0); + HEAP32[$z>>2] = $38; + $39 = HEAP32[$z>>2]|0; + $40 = ($39|0)==(0|0); + if ($40) { + STACKTOP = sp;return; + } + HEAP32[$len>>2] = 0; + $41 = $p1; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = (($41) + 4)|0; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = ($46|0)<(0); + if ($47) { + $48 = HEAP32[$z>>2]|0; + HEAP32[$z2>>2] = $48; + while(1) { + $49 = HEAP32[$z2>>2]|0; + $50 = HEAP8[$49>>0]|0; + $51 = ($50<<24>>24)!=(0); + if (!($51)) { + break L8; + } + $52 = HEAP32[$z2>>2]|0; + $53 = (($52) + 1|0); + HEAP32[$z2>>2] = $53; + $54 = HEAP8[$52>>0]|0; + $55 = $54&255; + $56 = ($55|0)>=(192); + L19: do { + if ($56) { + while(1) { + $57 = HEAP32[$z2>>2]|0; + $58 = HEAP8[$57>>0]|0; + $59 = $58&255; + $60 = $59 & 192; + $61 = ($60|0)==(128); + if (!($61)) { + break L19; + } + $62 = HEAP32[$z2>>2]|0; + $63 = (($62) + 1|0); + HEAP32[$z2>>2] = $63; + } + } + } while(0); + $64 = HEAP32[$len>>2]|0; + $65 = (($64) + 1)|0; + HEAP32[$len>>2] = $65; + } + } + } + } while(0); + $66 = HEAP32[$1>>2]|0; + $67 = ($66|0)==(3); + if ($67) { + $68 = HEAP32[$2>>2]|0; + $69 = (($68) + 8|0); + $70 = HEAP32[$69>>2]|0; + $71 = (_sqlite3_value_int($70)|0); + $72 = ($71|0)<(0); + $73 = $72 << 31 >> 31; + $74 = $p2; + $75 = $74; + HEAP32[$75>>2] = $71; + $76 = (($74) + 4)|0; + $77 = $76; + HEAP32[$77>>2] = $73; + $78 = $p2; + $79 = $78; + $80 = HEAP32[$79>>2]|0; + $81 = (($78) + 4)|0; + $82 = $81; + $83 = HEAP32[$82>>2]|0; + $84 = ($83|0)<(0); + if ($84) { + $85 = $p2; + $86 = $85; + $87 = HEAP32[$86>>2]|0; + $88 = (($85) + 4)|0; + $89 = $88; + $90 = HEAP32[$89>>2]|0; + $91 = (_i64Subtract(0,0,($87|0),($90|0))|0); + $92 = tempRet0; + $93 = $p2; + $94 = $93; + HEAP32[$94>>2] = $91; + $95 = (($93) + 4)|0; + $96 = $95; + HEAP32[$96>>2] = $92; + HEAP32[$negP2>>2] = 1; + } + } else { + $97 = HEAP32[$0>>2]|0; + $98 = (_sqlite3_context_db_handle($97)|0); + $99 = (($98) + 88|0); + $100 = HEAP32[$99>>2]|0; + $101 = ($100|0)<(0); + $102 = $101 << 31 >> 31; + $103 = $p2; + $104 = $103; + HEAP32[$104>>2] = $100; + $105 = (($103) + 4)|0; + $106 = $105; + HEAP32[$106>>2] = $102; + } + $107 = $p1; + $108 = $107; + $109 = HEAP32[$108>>2]|0; + $110 = (($107) + 4)|0; + $111 = $110; + $112 = HEAP32[$111>>2]|0; + $113 = ($112|0)<(0); + do { + if ($113) { + $114 = HEAP32[$len>>2]|0; + $115 = ($114|0)<(0); + $116 = $115 << 31 >> 31; + $117 = $p1; + $118 = $117; + $119 = HEAP32[$118>>2]|0; + $120 = (($117) + 4)|0; + $121 = $120; + $122 = HEAP32[$121>>2]|0; + $123 = (_i64Add(($119|0),($122|0),($114|0),($116|0))|0); + $124 = tempRet0; + $125 = $p1; + $126 = $125; + HEAP32[$126>>2] = $123; + $127 = (($125) + 4)|0; + $128 = $127; + HEAP32[$128>>2] = $124; + $129 = $p1; + $130 = $129; + $131 = HEAP32[$130>>2]|0; + $132 = (($129) + 4)|0; + $133 = $132; + $134 = HEAP32[$133>>2]|0; + $135 = ($134|0)<(0); + if ($135) { + $136 = $p1; + $137 = $136; + $138 = HEAP32[$137>>2]|0; + $139 = (($136) + 4)|0; + $140 = $139; + $141 = HEAP32[$140>>2]|0; + $142 = $p2; + $143 = $142; + $144 = HEAP32[$143>>2]|0; + $145 = (($142) + 4)|0; + $146 = $145; + $147 = HEAP32[$146>>2]|0; + $148 = (_i64Add(($144|0),($147|0),($138|0),($141|0))|0); + $149 = tempRet0; + $150 = $p2; + $151 = $150; + HEAP32[$151>>2] = $148; + $152 = (($150) + 4)|0; + $153 = $152; + HEAP32[$153>>2] = $149; + $154 = $p2; + $155 = $154; + $156 = HEAP32[$155>>2]|0; + $157 = (($154) + 4)|0; + $158 = $157; + $159 = HEAP32[$158>>2]|0; + $160 = ($159|0)<(0); + $161 = $160 ? 0 : $148; + $162 = $160 ? 0 : $149; + $163 = $p2; + $164 = $163; + HEAP32[$164>>2] = $161; + $165 = (($163) + 4)|0; + $166 = $165; + HEAP32[$166>>2] = $162; + $167 = $p1; + $168 = $167; + HEAP32[$168>>2] = 0; + $169 = (($167) + 4)|0; + $170 = $169; + HEAP32[$170>>2] = 0; + } + } else { + $171 = $p1; + $172 = $171; + $173 = HEAP32[$172>>2]|0; + $174 = (($171) + 4)|0; + $175 = $174; + $176 = HEAP32[$175>>2]|0; + $177 = ($176|0)>(0); + $178 = ($176|0)==(0); + $179 = ($173>>>0)>(0); + $180 = $178 & $179; + $181 = $177 | $180; + if ($181) { + $182 = $p1; + $183 = $182; + $184 = HEAP32[$183>>2]|0; + $185 = (($182) + 4)|0; + $186 = $185; + $187 = HEAP32[$186>>2]|0; + $188 = (_i64Add(($184|0),($187|0),-1,-1)|0); + $189 = tempRet0; + $190 = $p1; + $191 = $190; + HEAP32[$191>>2] = $188; + $192 = (($190) + 4)|0; + $193 = $192; + HEAP32[$193>>2] = $189; + break; + } + $194 = $p2; + $195 = $194; + $196 = HEAP32[$195>>2]|0; + $197 = (($194) + 4)|0; + $198 = $197; + $199 = HEAP32[$198>>2]|0; + $200 = ($199|0)>(0); + $201 = ($199|0)==(0); + $202 = ($196>>>0)>(0); + $203 = $201 & $202; + $204 = $200 | $203; + if ($204) { + $205 = $p2; + $206 = $205; + $207 = HEAP32[$206>>2]|0; + $208 = (($205) + 4)|0; + $209 = $208; + $210 = HEAP32[$209>>2]|0; + $211 = (_i64Add(($207|0),($210|0),-1,-1)|0); + $212 = tempRet0; + $213 = $p2; + $214 = $213; + HEAP32[$214>>2] = $211; + $215 = (($213) + 4)|0; + $216 = $215; + HEAP32[$216>>2] = $212; + } + } + } while(0); + $217 = HEAP32[$negP2>>2]|0; + $218 = ($217|0)!=(0); + if ($218) { + $219 = $p2; + $220 = $219; + $221 = HEAP32[$220>>2]|0; + $222 = (($219) + 4)|0; + $223 = $222; + $224 = HEAP32[$223>>2]|0; + $225 = $p1; + $226 = $225; + $227 = HEAP32[$226>>2]|0; + $228 = (($225) + 4)|0; + $229 = $228; + $230 = HEAP32[$229>>2]|0; + $231 = (_i64Subtract(($227|0),($230|0),($221|0),($224|0))|0); + $232 = tempRet0; + $233 = $p1; + $234 = $233; + HEAP32[$234>>2] = $231; + $235 = (($233) + 4)|0; + $236 = $235; + HEAP32[$236>>2] = $232; + $237 = $p1; + $238 = $237; + $239 = HEAP32[$238>>2]|0; + $240 = (($237) + 4)|0; + $241 = $240; + $242 = HEAP32[$241>>2]|0; + $243 = ($242|0)<(0); + if ($243) { + $244 = $p1; + $245 = $244; + $246 = HEAP32[$245>>2]|0; + $247 = (($244) + 4)|0; + $248 = $247; + $249 = HEAP32[$248>>2]|0; + $250 = $p2; + $251 = $250; + $252 = HEAP32[$251>>2]|0; + $253 = (($250) + 4)|0; + $254 = $253; + $255 = HEAP32[$254>>2]|0; + $256 = (_i64Add(($252|0),($255|0),($246|0),($249|0))|0); + $257 = tempRet0; + $258 = $p2; + $259 = $258; + HEAP32[$259>>2] = $256; + $260 = (($258) + 4)|0; + $261 = $260; + HEAP32[$261>>2] = $257; + $262 = $p1; + $263 = $262; + HEAP32[$263>>2] = 0; + $264 = (($262) + 4)|0; + $265 = $264; + HEAP32[$265>>2] = 0; + } + } + $266 = HEAP32[$p0type>>2]|0; + $267 = ($266|0)!=(4); + if (!($267)) { + $349 = $p1; + $350 = $349; + $351 = HEAP32[$350>>2]|0; + $352 = (($349) + 4)|0; + $353 = $352; + $354 = HEAP32[$353>>2]|0; + $355 = $p2; + $356 = $355; + $357 = HEAP32[$356>>2]|0; + $358 = (($355) + 4)|0; + $359 = $358; + $360 = HEAP32[$359>>2]|0; + $361 = (_i64Add(($351|0),($354|0),($357|0),($360|0))|0); + $362 = tempRet0; + $363 = HEAP32[$len>>2]|0; + $364 = ($363|0)<(0); + $365 = $364 << 31 >> 31; + $366 = ($362|0)>($365|0); + $367 = ($362|0)==($365|0); + $368 = ($361>>>0)>($363>>>0); + $369 = $367 & $368; + $370 = $366 | $369; + if ($370) { + $371 = HEAP32[$len>>2]|0; + $372 = ($371|0)<(0); + $373 = $372 << 31 >> 31; + $374 = $p1; + $375 = $374; + $376 = HEAP32[$375>>2]|0; + $377 = (($374) + 4)|0; + $378 = $377; + $379 = HEAP32[$378>>2]|0; + $380 = (_i64Subtract(($371|0),($373|0),($376|0),($379|0))|0); + $381 = tempRet0; + $382 = $p2; + $383 = $382; + HEAP32[$383>>2] = $380; + $384 = (($382) + 4)|0; + $385 = $384; + HEAP32[$385>>2] = $381; + $386 = $p2; + $387 = $386; + $388 = HEAP32[$387>>2]|0; + $389 = (($386) + 4)|0; + $390 = $389; + $391 = HEAP32[$390>>2]|0; + $392 = ($391|0)<(0); + $393 = $392 ? 0 : $380; + $394 = $392 ? 0 : $381; + $395 = $p2; + $396 = $395; + HEAP32[$396>>2] = $393; + $397 = (($395) + 4)|0; + $398 = $397; + HEAP32[$398>>2] = $394; + } + $399 = HEAP32[$0>>2]|0; + $400 = $p1; + $401 = $400; + $402 = HEAP32[$401>>2]|0; + $403 = (($400) + 4)|0; + $404 = $403; + $405 = HEAP32[$404>>2]|0; + $406 = HEAP32[$z>>2]|0; + $407 = (($406) + ($402)|0); + $408 = $p2; + $409 = $408; + $410 = HEAP32[$409>>2]|0; + $411 = (($408) + 4)|0; + $412 = $411; + $413 = HEAP32[$412>>2]|0; + _sqlite3_result_blob($399,$407,$410,(-1)); + STACKTOP = sp;return; + } + while(1) { + $268 = HEAP32[$z>>2]|0; + $269 = HEAP8[$268>>0]|0; + $270 = $269&255; + $271 = ($270|0)!=(0); + if ($271) { + $272 = $p1; + $273 = $272; + $274 = HEAP32[$273>>2]|0; + $275 = (($272) + 4)|0; + $276 = $275; + $277 = HEAP32[$276>>2]|0; + $278 = ($274|0)!=(0); + $279 = ($277|0)!=(0); + $280 = $278 | $279; + $414 = $280; + } else { + $414 = 0; + } + $281 = HEAP32[$z>>2]|0; + if (!($414)) { + break; + } + $282 = (($281) + 1|0); + HEAP32[$z>>2] = $282; + $283 = HEAP8[$281>>0]|0; + $284 = $283&255; + $285 = ($284|0)>=(192); + L55: do { + if ($285) { + while(1) { + $286 = HEAP32[$z>>2]|0; + $287 = HEAP8[$286>>0]|0; + $288 = $287&255; + $289 = $288 & 192; + $290 = ($289|0)==(128); + if (!($290)) { + break L55; + } + $291 = HEAP32[$z>>2]|0; + $292 = (($291) + 1|0); + HEAP32[$z>>2] = $292; + } + } + } while(0); + $293 = $p1; + $294 = $293; + $295 = HEAP32[$294>>2]|0; + $296 = (($293) + 4)|0; + $297 = $296; + $298 = HEAP32[$297>>2]|0; + $299 = (_i64Add(($295|0),($298|0),-1,-1)|0); + $300 = tempRet0; + $301 = $p1; + $302 = $301; + HEAP32[$302>>2] = $299; + $303 = (($301) + 4)|0; + $304 = $303; + HEAP32[$304>>2] = $300; + } + HEAP32[$z2>>2] = $281; + while(1) { + $305 = HEAP32[$z2>>2]|0; + $306 = HEAP8[$305>>0]|0; + $307 = $306&255; + $308 = ($307|0)!=(0); + if (!($308)) { + break; + } + $309 = $p2; + $310 = $309; + $311 = HEAP32[$310>>2]|0; + $312 = (($309) + 4)|0; + $313 = $312; + $314 = HEAP32[$313>>2]|0; + $315 = ($311|0)!=(0); + $316 = ($314|0)!=(0); + $317 = $315 | $316; + if (!($317)) { + break; + } + $318 = HEAP32[$z2>>2]|0; + $319 = (($318) + 1|0); + HEAP32[$z2>>2] = $319; + $320 = HEAP8[$318>>0]|0; + $321 = $320&255; + $322 = ($321|0)>=(192); + L65: do { + if ($322) { + while(1) { + $323 = HEAP32[$z2>>2]|0; + $324 = HEAP8[$323>>0]|0; + $325 = $324&255; + $326 = $325 & 192; + $327 = ($326|0)==(128); + if (!($327)) { + break L65; + } + $328 = HEAP32[$z2>>2]|0; + $329 = (($328) + 1|0); + HEAP32[$z2>>2] = $329; + } + } + } while(0); + $330 = $p2; + $331 = $330; + $332 = HEAP32[$331>>2]|0; + $333 = (($330) + 4)|0; + $334 = $333; + $335 = HEAP32[$334>>2]|0; + $336 = (_i64Add(($332|0),($335|0),-1,-1)|0); + $337 = tempRet0; + $338 = $p2; + $339 = $338; + HEAP32[$339>>2] = $336; + $340 = (($338) + 4)|0; + $341 = $340; + HEAP32[$341>>2] = $337; + } + $342 = HEAP32[$0>>2]|0; + $343 = HEAP32[$z>>2]|0; + $344 = HEAP32[$z2>>2]|0; + $345 = HEAP32[$z>>2]|0; + $346 = $344; + $347 = $345; + $348 = (($346) - ($347))|0; + _sqlite3_result_text($342,$343,$348,(-1)); + STACKTOP = sp;return; +} +function _printfFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $n = 0, $str = 0, $vararg_buffer = 0, $x = 0, $zFormat = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer = sp; + $0 = sp + 60|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $x = sp + 12|0; + $str = sp + 24|0; + $zFormat = sp + 52|0; + $n = sp + 56|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)>=(1); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = (_sqlite3_value_text($6)|0); + HEAP32[$zFormat>>2] = $7; + $8 = ($7|0)!=(0|0); + if (!($8)) { + STACKTOP = sp;return; + } + $9 = HEAP32[$1>>2]|0; + $10 = (($9) - 1)|0; + HEAP32[$x>>2] = $10; + $11 = (($x) + 4|0); + HEAP32[$11>>2] = 0; + $12 = HEAP32[$2>>2]|0; + $13 = (($12) + 4|0); + $14 = (($x) + 8|0); + HEAP32[$14>>2] = $13; + _sqlite3StrAccumInit($str,0,0,1000000000); + $15 = HEAP32[$0>>2]|0; + $16 = (_sqlite3_context_db_handle($15)|0); + HEAP32[$str>>2] = $16; + $17 = HEAP32[$zFormat>>2]|0; + HEAP32[$vararg_buffer>>2] = $x; + _sqlite3XPrintf($str,2,$17,$vararg_buffer); + $18 = (($str) + 12|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$n>>2] = $19; + $20 = HEAP32[$0>>2]|0; + $21 = (_sqlite3StrAccumFinish($str)|0); + $22 = HEAP32[$n>>2]|0; + _sqlite3_result_text($20,$21,$22,39); + STACKTOP = sp;return; +} +function _unicodeFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $z = sp + 8|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_text($4)|0); + HEAP32[$z>>2] = $5; + $6 = HEAP32[$z>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + STACKTOP = sp;return; + } + $8 = HEAP32[$z>>2]|0; + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = ($10|0)!=(0); + if (!($11)) { + STACKTOP = sp;return; + } + $12 = HEAP32[$0>>2]|0; + $13 = (_sqlite3Utf8Read($z)|0); + _sqlite3_result_int($12,$13); + STACKTOP = sp;return; +} +function _charFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $i = 0, $or$cond = 0, $x = 0, $z = 0, $zOut = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 24|0; + $2 = sp + 8|0; + $z = sp + 12|0; + $zOut = sp + 16|0; + $i = sp + 20|0; + $x = sp; + $c = sp + 28|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$1>>2]|0; + $4 = $3<<2; + $5 = (($4) + 1)|0; + $6 = (_sqlite3_malloc($5)|0); + HEAP32[$z>>2] = $6; + HEAP32[$zOut>>2] = $6; + $7 = HEAP32[$z>>2]|0; + $8 = ($7|0)==(0|0); + if ($8) { + $9 = HEAP32[$0>>2]|0; + _sqlite3_result_error_nomem($9); + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = ($10|0)<($11|0); + if (!($12)) { + break; + } + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (($14) + ($13<<2)|0); + $16 = HEAP32[$15>>2]|0; + $17 = (_sqlite3_value_int64($16)|0); + $18 = tempRet0; + $19 = $x; + $20 = $19; + HEAP32[$20>>2] = $17; + $21 = (($19) + 4)|0; + $22 = $21; + HEAP32[$22>>2] = $18; + $23 = $x; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = (($23) + 4)|0; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)<(0); + $30 = $x; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = ($35|0)>(0); + $37 = ($35|0)==(0); + $38 = ($32>>>0)>(1114111); + $39 = $37 & $38; + $40 = $36 | $39; + $or$cond = $29 | $40; + $41 = $or$cond ? 65533 : $17; + $42 = $or$cond ? 0 : $18; + $43 = $x; + $44 = $43; + HEAP32[$44>>2] = $41; + $45 = (($43) + 4)|0; + $46 = $45; + HEAP32[$46>>2] = $42; + $47 = $x; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = (($47) + 4)|0; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = $49 & 2097151; + HEAP32[$c>>2] = $53; + $54 = HEAP32[$c>>2]|0; + $55 = ($54>>>0)<(128); + $56 = HEAP32[$c>>2]|0; + do { + if ($55) { + $57 = $56 & 255; + $58 = $57&255; + $59 = HEAP32[$zOut>>2]|0; + $60 = (($59) + 1|0); + HEAP32[$zOut>>2] = $60; + HEAP8[$59>>0] = $58; + } else { + $61 = ($56>>>0)<(2048); + $62 = HEAP32[$c>>2]|0; + if ($61) { + $63 = $62 >>> 6; + $64 = $63 & 31; + $65 = $64&255; + $66 = $65&255; + $67 = (192 + ($66))|0; + $68 = $67&255; + $69 = HEAP32[$zOut>>2]|0; + $70 = (($69) + 1|0); + HEAP32[$zOut>>2] = $70; + HEAP8[$69>>0] = $68; + $71 = HEAP32[$c>>2]|0; + $72 = $71 & 63; + $73 = $72&255; + $74 = $73&255; + $75 = (128 + ($74))|0; + $76 = $75&255; + $77 = HEAP32[$zOut>>2]|0; + $78 = (($77) + 1|0); + HEAP32[$zOut>>2] = $78; + HEAP8[$77>>0] = $76; + break; + } + $79 = ($62>>>0)<(65536); + $80 = HEAP32[$c>>2]|0; + if ($79) { + $81 = $80 >>> 12; + $82 = $81 & 15; + $83 = $82&255; + $84 = $83&255; + $85 = (224 + ($84))|0; + $86 = $85&255; + $87 = HEAP32[$zOut>>2]|0; + $88 = (($87) + 1|0); + HEAP32[$zOut>>2] = $88; + HEAP8[$87>>0] = $86; + $89 = HEAP32[$c>>2]|0; + $90 = $89 >>> 6; + $91 = $90 & 63; + $92 = $91&255; + $93 = $92&255; + $94 = (128 + ($93))|0; + $95 = $94&255; + $96 = HEAP32[$zOut>>2]|0; + $97 = (($96) + 1|0); + HEAP32[$zOut>>2] = $97; + HEAP8[$96>>0] = $95; + $98 = HEAP32[$c>>2]|0; + $99 = $98 & 63; + $100 = $99&255; + $101 = $100&255; + $102 = (128 + ($101))|0; + $103 = $102&255; + $104 = HEAP32[$zOut>>2]|0; + $105 = (($104) + 1|0); + HEAP32[$zOut>>2] = $105; + HEAP8[$104>>0] = $103; + break; + } else { + $106 = $80 >>> 18; + $107 = $106 & 7; + $108 = $107&255; + $109 = $108&255; + $110 = (240 + ($109))|0; + $111 = $110&255; + $112 = HEAP32[$zOut>>2]|0; + $113 = (($112) + 1|0); + HEAP32[$zOut>>2] = $113; + HEAP8[$112>>0] = $111; + $114 = HEAP32[$c>>2]|0; + $115 = $114 >>> 12; + $116 = $115 & 63; + $117 = $116&255; + $118 = $117&255; + $119 = (128 + ($118))|0; + $120 = $119&255; + $121 = HEAP32[$zOut>>2]|0; + $122 = (($121) + 1|0); + HEAP32[$zOut>>2] = $122; + HEAP8[$121>>0] = $120; + $123 = HEAP32[$c>>2]|0; + $124 = $123 >>> 6; + $125 = $124 & 63; + $126 = $125&255; + $127 = $126&255; + $128 = (128 + ($127))|0; + $129 = $128&255; + $130 = HEAP32[$zOut>>2]|0; + $131 = (($130) + 1|0); + HEAP32[$zOut>>2] = $131; + HEAP8[$130>>0] = $129; + $132 = HEAP32[$c>>2]|0; + $133 = $132 & 63; + $134 = $133&255; + $135 = $134&255; + $136 = (128 + ($135))|0; + $137 = $136&255; + $138 = HEAP32[$zOut>>2]|0; + $139 = (($138) + 1|0); + HEAP32[$zOut>>2] = $139; + HEAP8[$138>>0] = $137; + break; + } + } + } while(0); + $140 = HEAP32[$i>>2]|0; + $141 = (($140) + 1)|0; + HEAP32[$i>>2] = $141; + } + $142 = HEAP32[$0>>2]|0; + $143 = HEAP32[$z>>2]|0; + $144 = HEAP32[$zOut>>2]|0; + $145 = HEAP32[$z>>2]|0; + $146 = $144; + $147 = $145; + $148 = (($146) - ($147))|0; + _sqlite3_result_text($142,$143,$148,13); + STACKTOP = sp;return; +} +function _absFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0.0, $54 = 0.0, $55 = 0, $56 = 0.0, $57 = 0.0, $58 = 0, $59 = 0.0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $iVal = 0, $rVal = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp + 20|0; + $2 = sp + 16|0; + $iVal = sp; + $rVal = sp + 8|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_type($4)|0); + if ((($5|0) == 1)) { + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = (_sqlite3_value_int64($7)|0); + $9 = tempRet0; + $10 = $iVal; + $11 = $10; + HEAP32[$11>>2] = $8; + $12 = (($10) + 4)|0; + $13 = $12; + HEAP32[$13>>2] = $9; + $14 = $iVal; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = ($19|0)<(0); + do { + if ($20) { + $21 = $iVal; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (($21) + 4)|0; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = ($23|0)==(0); + $28 = ($26|0)==(-2147483648); + $29 = $27 & $28; + if (!($29)) { + $31 = $iVal; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (_i64Subtract(0,0,($33|0),($36|0))|0); + $38 = tempRet0; + $39 = $iVal; + $40 = $39; + HEAP32[$40>>2] = $37; + $41 = (($39) + 4)|0; + $42 = $41; + HEAP32[$42>>2] = $38; + break; + } + $30 = HEAP32[$0>>2]|0; + _sqlite3_result_error($30,16320,-1); + STACKTOP = sp;return; + } + } while(0); + $43 = HEAP32[$0>>2]|0; + $44 = $iVal; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = (($44) + 4)|0; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + _sqlite3_result_int64($43,$46,$49); + STACKTOP = sp;return; + } else if ((($5|0) == 5)) { + $50 = HEAP32[$0>>2]|0; + _sqlite3_result_null($50); + STACKTOP = sp;return; + } else { + $51 = HEAP32[$2>>2]|0; + $52 = HEAP32[$51>>2]|0; + $53 = (+_sqlite3_value_double($52)); + HEAPF64[$rVal>>3] = $53; + $54 = +HEAPF64[$rVal>>3]; + $55 = $54 < 0.0; + if ($55) { + $56 = +HEAPF64[$rVal>>3]; + $57 = -$56; + HEAPF64[$rVal>>3] = $57; + } + $58 = HEAP32[$0>>2]|0; + $59 = +HEAPF64[$rVal>>3]; + _sqlite3_result_double($58,$59); + STACKTOP = sp;return; + } +} +function _roundFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $$ = 0, $$$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0.0; + var $25 = 0, $26 = 0, $27 = 0.0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0.0, $33 = 0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0, $38 = 0.0, $39 = 0, $4 = 0, $40 = 0.0, $41 = 0.0, $42 = 0; + var $43 = 0.0, $44 = 0.0, $45 = 0.0, $46 = 0, $47 = 0, $48 = 0.0, $49 = 0.0, $5 = 0, $50 = 0, $51 = 0.0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0.0, $7 = 0, $8 = 0, $9 = 0, $n = 0, $or$cond = 0, $r = 0, $vararg_buffer = 0, $vararg_ptr2 = 0, $zBuf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp + 8|0; + $0 = sp + 36|0; + $1 = sp + 28|0; + $2 = sp + 20|0; + $n = sp + 24|0; + $r = sp; + $zBuf = sp + 32|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + HEAP32[$n>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)==(2); + do { + if ($4) { + $5 = HEAP32[$2>>2]|0; + $6 = (($5) + 4|0); + $7 = HEAP32[$6>>2]|0; + $8 = (_sqlite3_value_type($7)|0); + $9 = (5)==($8|0); + if ($9) { + STACKTOP = sp;return; + } else { + $10 = HEAP32[$2>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = (_sqlite3_value_int($12)|0); + HEAP32[$n>>2] = $13; + $14 = HEAP32[$n>>2]|0; + $15 = ($14|0)>(30); + $$ = $15 ? 30 : $13; + HEAP32[$n>>2] = $$; + $16 = HEAP32[$n>>2]|0; + $17 = ($16|0)<(0); + $$$ = $17 ? 0 : $$; + HEAP32[$n>>2] = $$$; + break; + } + } + } while(0); + $18 = HEAP32[$2>>2]|0; + $19 = HEAP32[$18>>2]|0; + $20 = (_sqlite3_value_type($19)|0); + $21 = ($20|0)==(5); + if ($21) { + STACKTOP = sp;return; + } + $22 = HEAP32[$2>>2]|0; + $23 = HEAP32[$22>>2]|0; + $24 = (+_sqlite3_value_double($23)); + HEAPF64[$r>>3] = $24; + $25 = HEAP32[$n>>2]|0; + $26 = ($25|0)==(0); + if ($26) { + $27 = +HEAPF64[$r>>3]; + $28 = $27 >= 0.0; + $29 = +HEAPF64[$r>>3]; + $30 = $29 < 9223372036854775808.0; + $or$cond = $28 & $30; + if ($or$cond) { + $31 = +HEAPF64[$r>>3]; + $32 = $31 + 0.5; + $33 = (~~$32)>>>0; + $34 = +Math_abs($32) >= 1.0 ? $32 > 0.0 ? (Math_min(+Math_floor($32 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($32 - +(~~$32 >>> 0)) / 4294967296.0) >>> 0 : 0; + $35 = (+($33>>>0)) + (4294967296.0*(+($34|0))); + HEAPF64[$r>>3] = $35; + } else { + label = 8; + } + } else { + label = 8; + } + do { + if ((label|0) == 8) { + $36 = HEAP32[$n>>2]|0; + $37 = ($36|0)==(0); + if ($37) { + $38 = +HEAPF64[$r>>3]; + $39 = $38 < 0.0; + if ($39) { + $40 = +HEAPF64[$r>>3]; + $41 = -$40; + $42 = $41 < 9223372036854775808.0; + if ($42) { + $43 = +HEAPF64[$r>>3]; + $44 = -$43; + $45 = $44 + 0.5; + $46 = (~~$45)>>>0; + $47 = +Math_abs($45) >= 1.0 ? $45 > 0.0 ? (Math_min(+Math_floor($45 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($45 - +(~~$45 >>> 0)) / 4294967296.0) >>> 0 : 0; + $48 = (+($46>>>0)) + (4294967296.0*(+($47|0))); + $49 = -$48; + HEAPF64[$r>>3] = $49; + break; + } + } + } + $50 = HEAP32[$n>>2]|0; + $51 = +HEAPF64[$r>>3]; + HEAP32[$vararg_buffer>>2] = $50; + $vararg_ptr2 = (($vararg_buffer) + 4|0); + HEAPF64[tempDoublePtr>>3]=$51;HEAP32[$vararg_ptr2>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_ptr2+4>>2]=HEAP32[tempDoublePtr+4>>2]; + $52 = (_sqlite3_mprintf(16384,$vararg_buffer)|0); + HEAP32[$zBuf>>2] = $52; + $53 = HEAP32[$zBuf>>2]|0; + $54 = ($53|0)==(0|0); + if (!($54)) { + $56 = HEAP32[$zBuf>>2]|0; + $57 = HEAP32[$zBuf>>2]|0; + $58 = (_sqlite3Strlen30($57)|0); + (_sqlite3AtoF($56,$r,$58,1)|0); + $59 = HEAP32[$zBuf>>2]|0; + _sqlite3_free($59); + break; + } + $55 = HEAP32[$0>>2]|0; + _sqlite3_result_error_nomem($55); + STACKTOP = sp;return; + } + } while(0); + $60 = HEAP32[$0>>2]|0; + $61 = +HEAPF64[$r>>3]; + _sqlite3_result_double($60,$61); + STACKTOP = sp;return; +} +function _upperFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $n = 0, $z1 = 0, $z2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $z1 = sp + 8|0; + $z2 = sp + 12|0; + $i = sp + 16|0; + $n = sp + 20|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_text($4)|0); + HEAP32[$z2>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = (_sqlite3_value_bytes($7)|0); + HEAP32[$n>>2] = $8; + $9 = HEAP32[$z2>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + STACKTOP = sp;return; + } + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$n>>2]|0; + $13 = ($12|0)<(0); + $14 = $13 << 31 >> 31; + $15 = (_i64Add(($12|0),($14|0),1,0)|0); + $16 = tempRet0; + $17 = (_contextMalloc($11,$15,$16)|0); + HEAP32[$z1>>2] = $17; + $18 = HEAP32[$z1>>2]|0; + $19 = ($18|0)!=(0|0); + if (!($19)) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $20 = HEAP32[$i>>2]|0; + $21 = HEAP32[$n>>2]|0; + $22 = ($20|0)<($21|0); + if (!($22)) { + break; + } + $23 = HEAP32[$i>>2]|0; + $24 = HEAP32[$z2>>2]|0; + $25 = (($24) + ($23)|0); + $26 = HEAP8[$25>>0]|0; + $27 = $26 << 24 >> 24; + $28 = HEAP32[$i>>2]|0; + $29 = HEAP32[$z2>>2]|0; + $30 = (($29) + ($28)|0); + $31 = HEAP8[$30>>0]|0; + $32 = $31&255; + $33 = (136 + ($32)|0); + $34 = HEAP8[$33>>0]|0; + $35 = $34&255; + $36 = $35 & 32; + $37 = $36 ^ -1; + $38 = $27 & $37; + $39 = $38&255; + $40 = HEAP32[$i>>2]|0; + $41 = HEAP32[$z1>>2]|0; + $42 = (($41) + ($40)|0); + HEAP8[$42>>0] = $39; + $43 = HEAP32[$i>>2]|0; + $44 = (($43) + 1)|0; + HEAP32[$i>>2] = $44; + } + $45 = HEAP32[$0>>2]|0; + $46 = HEAP32[$z1>>2]|0; + $47 = HEAP32[$n>>2]|0; + _sqlite3_result_text($45,$46,$47,13); + STACKTOP = sp;return; +} +function _lowerFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $n = 0; + var $z1 = 0, $z2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $z1 = sp + 8|0; + $z2 = sp + 12|0; + $i = sp + 16|0; + $n = sp + 20|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_text($4)|0); + HEAP32[$z2>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = (_sqlite3_value_bytes($7)|0); + HEAP32[$n>>2] = $8; + $9 = HEAP32[$z2>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + STACKTOP = sp;return; + } + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$n>>2]|0; + $13 = ($12|0)<(0); + $14 = $13 << 31 >> 31; + $15 = (_i64Add(($12|0),($14|0),1,0)|0); + $16 = tempRet0; + $17 = (_contextMalloc($11,$15,$16)|0); + HEAP32[$z1>>2] = $17; + $18 = HEAP32[$z1>>2]|0; + $19 = ($18|0)!=(0|0); + if (!($19)) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $20 = HEAP32[$i>>2]|0; + $21 = HEAP32[$n>>2]|0; + $22 = ($20|0)<($21|0); + if (!($22)) { + break; + } + $23 = HEAP32[$i>>2]|0; + $24 = HEAP32[$z2>>2]|0; + $25 = (($24) + ($23)|0); + $26 = HEAP8[$25>>0]|0; + $27 = $26&255; + $28 = (784 + ($27)|0); + $29 = HEAP8[$28>>0]|0; + $30 = HEAP32[$i>>2]|0; + $31 = HEAP32[$z1>>2]|0; + $32 = (($31) + ($30)|0); + HEAP8[$32>>0] = $29; + $33 = HEAP32[$i>>2]|0; + $34 = (($33) + 1)|0; + HEAP32[$i>>2] = $34; + } + $35 = HEAP32[$0>>2]|0; + $36 = HEAP32[$z1>>2]|0; + $37 = HEAP32[$n>>2]|0; + _sqlite3_result_text($35,$36,$37,13); + STACKTOP = sp;return; +} +function _versionFunc($context,$NotUsed,$NotUsed2) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $NotUsed2 = $NotUsed2|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $NotUsed2; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3_libversion()|0); + _sqlite3_result_text($3,$4,-1,0); + STACKTOP = sp;return; +} +function _hexFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, $i = 0, $n = 0, $pBlob = 0, $z = 0, $zHex = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 16|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $i = sp + 20|0; + $n = sp + 12|0; + $pBlob = sp + 8|0; + $zHex = sp + 4|0; + $z = sp; + $c = sp + 32|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_blob($4)|0); + HEAP32[$pBlob>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = (_sqlite3_value_bytes($7)|0); + HEAP32[$n>>2] = $8; + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$n>>2]|0; + $11 = ($10|0)<(0); + $12 = $11 << 31 >> 31; + $13 = (___muldi3(($10|0),($12|0),2,0)|0); + $14 = tempRet0; + $15 = (_i64Add(($13|0),($14|0),1,0)|0); + $16 = tempRet0; + $17 = (_contextMalloc($9,$15,$16)|0); + HEAP32[$zHex>>2] = $17; + HEAP32[$z>>2] = $17; + $18 = HEAP32[$zHex>>2]|0; + $19 = ($18|0)!=(0|0); + if (!($19)) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $20 = HEAP32[$i>>2]|0; + $21 = HEAP32[$n>>2]|0; + $22 = ($20|0)<($21|0); + if (!($22)) { + break; + } + $23 = HEAP32[$pBlob>>2]|0; + $24 = HEAP8[$23>>0]|0; + HEAP8[$c>>0] = $24; + $25 = HEAP8[$c>>0]|0; + $26 = $25&255; + $27 = $26 >> 4; + $28 = $27 & 15; + $29 = (16360 + ($28)|0); + $30 = HEAP8[$29>>0]|0; + $31 = HEAP32[$z>>2]|0; + $32 = (($31) + 1|0); + HEAP32[$z>>2] = $32; + HEAP8[$31>>0] = $30; + $33 = HEAP8[$c>>0]|0; + $34 = $33&255; + $35 = $34 & 15; + $36 = (16360 + ($35)|0); + $37 = HEAP8[$36>>0]|0; + $38 = HEAP32[$z>>2]|0; + $39 = (($38) + 1|0); + HEAP32[$z>>2] = $39; + HEAP8[$38>>0] = $37; + $40 = HEAP32[$i>>2]|0; + $41 = (($40) + 1)|0; + HEAP32[$i>>2] = $41; + $42 = HEAP32[$pBlob>>2]|0; + $43 = (($42) + 1|0); + HEAP32[$pBlob>>2] = $43; + } + $44 = HEAP32[$z>>2]|0; + HEAP8[$44>>0] = 0; + $45 = HEAP32[$0>>2]|0; + $46 = HEAP32[$zHex>>2]|0; + $47 = HEAP32[$n>>2]|0; + $48 = $47<<1; + _sqlite3_result_text($45,$46,$48,13); + STACKTOP = sp;return; +} +function _randomFunc($context,$NotUsed,$NotUsed2) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $NotUsed2 = $NotUsed2|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp + 12|0; + $2 = sp + 8|0; + $r = sp; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $NotUsed2; + _sqlite3_randomness(8,$r); + $3 = $r; + $4 = $3; + $5 = HEAP32[$4>>2]|0; + $6 = (($3) + 4)|0; + $7 = $6; + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)<(0); + if ($9) { + $10 = $r; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (($10) + 4)|0; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = $15 & 2147483647; + $17 = (_i64Subtract(0,0,($12|0),($16|0))|0); + $18 = tempRet0; + $19 = $r; + $20 = $19; + HEAP32[$20>>2] = $17; + $21 = (($19) + 4)|0; + $22 = $21; + HEAP32[$22>>2] = $18; + } + $23 = HEAP32[$0>>2]|0; + $24 = $r; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = (($24) + 4)|0; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + _sqlite3_result_int64($23,$26,$29); + STACKTOP = sp;return; +} +function _randomBlob($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $n = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $n = sp + 8|0; + $p = sp + 12|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_int($4)|0); + HEAP32[$n>>2] = $5; + $6 = HEAP32[$n>>2]|0; + $7 = ($6|0)<(1); + $$ = $7 ? 1 : $5; + HEAP32[$n>>2] = $$; + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$n>>2]|0; + $10 = ($9|0)<(0); + $11 = $10 << 31 >> 31; + $12 = (_contextMalloc($8,$9,$11)|0); + HEAP32[$p>>2] = $12; + $13 = HEAP32[$p>>2]|0; + $14 = ($13|0)!=(0|0); + if (!($14)) { + STACKTOP = sp;return; + } + $15 = HEAP32[$n>>2]|0; + $16 = HEAP32[$p>>2]|0; + _sqlite3_randomness($15,$16); + $17 = HEAP32[$0>>2]|0; + $18 = HEAP32[$p>>2]|0; + $19 = HEAP32[$n>>2]|0; + _sqlite3_result_blob($17,$18,$19,13); + STACKTOP = sp;return; +} +function _nullifFunc($context,$NotUsed,$argv) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pColl = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pColl = sp + 8|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3GetFuncCollSeq($3)|0); + HEAP32[$pColl>>2] = $4; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$pColl>>2]|0; + $11 = (_sqlite3MemCompare($6,$9,$10)|0); + $12 = ($11|0)!=(0); + if (!($12)) { + STACKTOP = sp;return; + } + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$14>>2]|0; + _sqlite3_result_value($13,$15); + STACKTOP = sp;return; +} +function _sourceidFunc($context,$NotUsed,$NotUsed2) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $NotUsed2 = $NotUsed2|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $NotUsed2; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3_sourceid()|0); + _sqlite3_result_text($3,$4,-1,0); + STACKTOP = sp;return; +} +function _errlogFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 12|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_int($4)|0); + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3_value_text($8)|0); + HEAP32[$vararg_buffer>>2] = $9; + _sqlite3_log($5,1768,$vararg_buffer); + STACKTOP = sp;return; +} +function _compileoptionusedFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $zOptName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $zOptName = sp + 8|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_text($4)|0); + HEAP32[$zOptName>>2] = $5; + $6 = ($5|0)!=(0|0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$zOptName>>2]|0; + $9 = (_sqlite3_compileoption_used($8)|0); + _sqlite3_result_int($7,$9); + STACKTOP = sp;return; +} +function _compileoptiongetFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $n = sp + 8|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_int($4)|0); + HEAP32[$n>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$n>>2]|0; + $8 = (_sqlite3_compileoption_get($7)|0); + _sqlite3_result_text($6,$8,-1,0); + STACKTOP = sp;return; +} +function _quoteFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0.0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0.0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0.0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0.0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0.0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $i1 = 0, $j = 0, $n = 0, $nBlob = 0, $r1 = 0, $r2 = 0, $vararg_buffer1 = 0, $z = 0; + var $zArg = 0, $zBlob = 0, $zBuf = 0, $zText = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $vararg_buffer1 = sp; + $0 = sp + 68|0; + $1 = sp + 64|0; + $2 = sp + 60|0; + $r1 = sp + 16|0; + $r2 = sp + 24|0; + $zBuf = sp + 76|0; + $zText = sp + 56|0; + $zBlob = sp + 72|0; + $nBlob = sp + 48|0; + $i = sp + 40|0; + $i1 = sp + 36|0; + $j = sp + 52|0; + $n = sp + 8|0; + $zArg = sp + 32|0; + $z = sp + 44|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_type($4)|0); + if ((($5|0) == 1)) { + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$2>>2]|0; + $17 = HEAP32[$16>>2]|0; + _sqlite3_result_value($15,$17); + STACKTOP = sp;return; + } else if ((($5|0) == 3)) { + $83 = HEAP32[$2>>2]|0; + $84 = HEAP32[$83>>2]|0; + $85 = (_sqlite3_value_text($84)|0); + HEAP32[$zArg>>2] = $85; + $86 = HEAP32[$zArg>>2]|0; + $87 = ($86|0)==(0|0); + if ($87) { + STACKTOP = sp;return; + } + HEAP32[$i1>>2] = 0; + $88 = $n; + $89 = $88; + HEAP32[$89>>2] = 0; + $90 = (($88) + 4)|0; + $91 = $90; + HEAP32[$91>>2] = 0; + while(1) { + $92 = HEAP32[$i1>>2]|0; + $93 = HEAP32[$zArg>>2]|0; + $94 = (($93) + ($92)|0); + $95 = HEAP8[$94>>0]|0; + $96 = ($95<<24>>24)!=(0); + if (!($96)) { + break; + } + $97 = HEAP32[$i1>>2]|0; + $98 = HEAP32[$zArg>>2]|0; + $99 = (($98) + ($97)|0); + $100 = HEAP8[$99>>0]|0; + $101 = $100&255; + $102 = ($101|0)==(39); + if ($102) { + $103 = $n; + $104 = $103; + $105 = HEAP32[$104>>2]|0; + $106 = (($103) + 4)|0; + $107 = $106; + $108 = HEAP32[$107>>2]|0; + $109 = (_i64Add(($105|0),($108|0),1,0)|0); + $110 = tempRet0; + $111 = $n; + $112 = $111; + HEAP32[$112>>2] = $109; + $113 = (($111) + 4)|0; + $114 = $113; + HEAP32[$114>>2] = $110; + } + $115 = HEAP32[$i1>>2]|0; + $116 = (($115) + 1)|0; + HEAP32[$i1>>2] = $116; + } + $117 = HEAP32[$0>>2]|0; + $118 = HEAP32[$i1>>2]|0; + $119 = ($118|0)<(0); + $120 = $119 << 31 >> 31; + $121 = $n; + $122 = $121; + $123 = HEAP32[$122>>2]|0; + $124 = (($121) + 4)|0; + $125 = $124; + $126 = HEAP32[$125>>2]|0; + $127 = (_i64Add(($118|0),($120|0),($123|0),($126|0))|0); + $128 = tempRet0; + $129 = (_i64Add(($127|0),($128|0),3,0)|0); + $130 = tempRet0; + $131 = (_contextMalloc($117,$129,$130)|0); + HEAP32[$z>>2] = $131; + $132 = HEAP32[$z>>2]|0; + $133 = ($132|0)!=(0|0); + if (!($133)) { + STACKTOP = sp;return; + } + $134 = HEAP32[$z>>2]|0; + HEAP8[$134>>0] = 39; + HEAP32[$i1>>2] = 0; + HEAP32[$j>>2] = 1; + while(1) { + $135 = HEAP32[$i1>>2]|0; + $136 = HEAP32[$zArg>>2]|0; + $137 = (($136) + ($135)|0); + $138 = HEAP8[$137>>0]|0; + $139 = ($138<<24>>24)!=(0); + if (!($139)) { + break; + } + $140 = HEAP32[$i1>>2]|0; + $141 = HEAP32[$zArg>>2]|0; + $142 = (($141) + ($140)|0); + $143 = HEAP8[$142>>0]|0; + $144 = HEAP32[$j>>2]|0; + $145 = (($144) + 1)|0; + HEAP32[$j>>2] = $145; + $146 = HEAP32[$z>>2]|0; + $147 = (($146) + ($144)|0); + HEAP8[$147>>0] = $143; + $148 = HEAP32[$i1>>2]|0; + $149 = HEAP32[$zArg>>2]|0; + $150 = (($149) + ($148)|0); + $151 = HEAP8[$150>>0]|0; + $152 = $151&255; + $153 = ($152|0)==(39); + if ($153) { + $154 = HEAP32[$j>>2]|0; + $155 = (($154) + 1)|0; + HEAP32[$j>>2] = $155; + $156 = HEAP32[$z>>2]|0; + $157 = (($156) + ($154)|0); + HEAP8[$157>>0] = 39; + } + $158 = HEAP32[$i1>>2]|0; + $159 = (($158) + 1)|0; + HEAP32[$i1>>2] = $159; + } + $160 = HEAP32[$j>>2]|0; + $161 = (($160) + 1)|0; + HEAP32[$j>>2] = $161; + $162 = HEAP32[$z>>2]|0; + $163 = (($162) + ($160)|0); + HEAP8[$163>>0] = 39; + $164 = HEAP32[$j>>2]|0; + $165 = HEAP32[$z>>2]|0; + $166 = (($165) + ($164)|0); + HEAP8[$166>>0] = 0; + $167 = HEAP32[$0>>2]|0; + $168 = HEAP32[$z>>2]|0; + $169 = HEAP32[$j>>2]|0; + _sqlite3_result_text($167,$168,$169,13); + STACKTOP = sp;return; + } else if ((($5|0) == 2)) { + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = (+_sqlite3_value_double($7)); + HEAPF64[$r1>>3] = $8; + $9 = +HEAPF64[$r1>>3]; + HEAPF64[tempDoublePtr>>3]=$9;HEAP32[$vararg_buffer1>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_buffer1+4>>2]=HEAP32[tempDoublePtr+4>>2]; + (_sqlite3_snprintf(50,$zBuf,16344,$vararg_buffer1)|0); + (_sqlite3AtoF($zBuf,$r2,20,1)|0); + $10 = +HEAPF64[$r1>>3]; + $11 = +HEAPF64[$r2>>3]; + $12 = $10 != $11; + if ($12) { + $13 = +HEAPF64[$r1>>3]; + HEAPF64[tempDoublePtr>>3]=$13;HEAP32[$vararg_buffer1>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_buffer1+4>>2]=HEAP32[tempDoublePtr+4>>2]; + (_sqlite3_snprintf(50,$zBuf,16352,$vararg_buffer1)|0); + } + $14 = HEAP32[$0>>2]|0; + _sqlite3_result_text($14,$zBuf,-1,(-1)); + STACKTOP = sp;return; + } else if ((($5|0) == 4)) { + HEAP32[$zText>>2] = 0; + $18 = HEAP32[$2>>2]|0; + $19 = HEAP32[$18>>2]|0; + $20 = (_sqlite3_value_blob($19)|0); + HEAP32[$zBlob>>2] = $20; + $21 = HEAP32[$2>>2]|0; + $22 = HEAP32[$21>>2]|0; + $23 = (_sqlite3_value_bytes($22)|0); + HEAP32[$nBlob>>2] = $23; + $24 = HEAP32[$0>>2]|0; + $25 = HEAP32[$nBlob>>2]|0; + $26 = ($25|0)<(0); + $27 = $26 << 31 >> 31; + $28 = (___muldi3(2,0,($25|0),($27|0))|0); + $29 = tempRet0; + $30 = (_i64Add(($28|0),($29|0),4,0)|0); + $31 = tempRet0; + $32 = (_contextMalloc($24,$30,$31)|0); + HEAP32[$zText>>2] = $32; + $33 = HEAP32[$zText>>2]|0; + $34 = ($33|0)!=(0|0); + if (!($34)) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $35 = HEAP32[$i>>2]|0; + $36 = HEAP32[$nBlob>>2]|0; + $37 = ($35|0)<($36|0); + if (!($37)) { + break; + } + $38 = HEAP32[$i>>2]|0; + $39 = HEAP32[$zBlob>>2]|0; + $40 = (($39) + ($38)|0); + $41 = HEAP8[$40>>0]|0; + $42 = $41 << 24 >> 24; + $43 = $42 >> 4; + $44 = $43 & 15; + $45 = (16360 + ($44)|0); + $46 = HEAP8[$45>>0]|0; + $47 = HEAP32[$i>>2]|0; + $48 = $47<<1; + $49 = (($48) + 2)|0; + $50 = HEAP32[$zText>>2]|0; + $51 = (($50) + ($49)|0); + HEAP8[$51>>0] = $46; + $52 = HEAP32[$i>>2]|0; + $53 = HEAP32[$zBlob>>2]|0; + $54 = (($53) + ($52)|0); + $55 = HEAP8[$54>>0]|0; + $56 = $55 << 24 >> 24; + $57 = $56 & 15; + $58 = (16360 + ($57)|0); + $59 = HEAP8[$58>>0]|0; + $60 = HEAP32[$i>>2]|0; + $61 = $60<<1; + $62 = (($61) + 3)|0; + $63 = HEAP32[$zText>>2]|0; + $64 = (($63) + ($62)|0); + HEAP8[$64>>0] = $59; + $65 = HEAP32[$i>>2]|0; + $66 = (($65) + 1)|0; + HEAP32[$i>>2] = $66; + } + $67 = HEAP32[$nBlob>>2]|0; + $68 = $67<<1; + $69 = (($68) + 2)|0; + $70 = HEAP32[$zText>>2]|0; + $71 = (($70) + ($69)|0); + HEAP8[$71>>0] = 39; + $72 = HEAP32[$nBlob>>2]|0; + $73 = $72<<1; + $74 = (($73) + 3)|0; + $75 = HEAP32[$zText>>2]|0; + $76 = (($75) + ($74)|0); + HEAP8[$76>>0] = 0; + $77 = HEAP32[$zText>>2]|0; + HEAP8[$77>>0] = 88; + $78 = HEAP32[$zText>>2]|0; + $79 = (($78) + 1|0); + HEAP8[$79>>0] = 39; + $80 = HEAP32[$0>>2]|0; + $81 = HEAP32[$zText>>2]|0; + _sqlite3_result_text($80,$81,-1,(-1)); + $82 = HEAP32[$zText>>2]|0; + _sqlite3_free($82); + STACKTOP = sp;return; + } else { + $170 = HEAP32[$0>>2]|0; + _sqlite3_result_text($170,16376,4,0); + STACKTOP = sp;return; + } +} +function _last_insert_rowid($context,$NotUsed,$NotUsed2) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $NotUsed2 = $NotUsed2|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $db = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $db = sp + 8|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $NotUsed2; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3_context_db_handle($3)|0); + HEAP32[$db>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$db>>2]|0; + $7 = (_sqlite3_last_insert_rowid($6)|0); + $8 = tempRet0; + _sqlite3_result_int64($5,$7,$8); + STACKTOP = sp;return; +} +function _changes($context,$NotUsed,$NotUsed2) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $NotUsed2 = $NotUsed2|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $db = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $db = sp + 8|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $NotUsed2; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3_context_db_handle($3)|0); + HEAP32[$db>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$db>>2]|0; + $7 = (_sqlite3_changes($6)|0); + _sqlite3_result_int($5,$7); + STACKTOP = sp;return; +} +function _total_changes($context,$NotUsed,$NotUsed2) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $NotUsed2 = $NotUsed2|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $db = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $db = sp + 8|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $NotUsed2; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3_context_db_handle($3)|0); + HEAP32[$db>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$db>>2]|0; + $7 = (_sqlite3_total_changes($6)|0); + _sqlite3_result_int($5,$7); + STACKTOP = sp;return; +} +function _replaceFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0, $j = 0, $loopLimit = 0, $nOut = 0, $nPattern = 0, $nRep = 0, $nStr = 0; + var $zOld = 0, $zOut = 0, $zPattern = 0, $zRep = 0, $zStr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 64|0; + $1 = sp + 60|0; + $2 = sp + 56|0; + $zStr = sp + 52|0; + $zPattern = sp + 48|0; + $zRep = sp + 44|0; + $zOut = sp + 40|0; + $nStr = sp + 36|0; + $nPattern = sp + 32|0; + $nRep = sp + 24|0; + $nOut = sp; + $loopLimit = sp + 16|0; + $i = sp + 12|0; + $j = sp + 8|0; + $zOld = sp + 20|0; + $db = sp + 28|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_text($4)|0); + HEAP32[$zStr>>2] = $5; + $6 = HEAP32[$zStr>>2]|0; + $7 = ($6|0)==(0|0); + if ($7) { + STACKTOP = sp;return; + } + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = (_sqlite3_value_bytes($9)|0); + HEAP32[$nStr>>2] = $10; + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = (_sqlite3_value_text($13)|0); + HEAP32[$zPattern>>2] = $14; + $15 = HEAP32[$zPattern>>2]|0; + $16 = ($15|0)==(0|0); + if ($16) { + STACKTOP = sp;return; + } + $17 = HEAP32[$zPattern>>2]|0; + $18 = HEAP8[$17>>0]|0; + $19 = $18&255; + $20 = ($19|0)==(0); + if ($20) { + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$2>>2]|0; + $23 = HEAP32[$22>>2]|0; + _sqlite3_result_value($21,$23); + STACKTOP = sp;return; + } + $24 = HEAP32[$2>>2]|0; + $25 = (($24) + 4|0); + $26 = HEAP32[$25>>2]|0; + $27 = (_sqlite3_value_bytes($26)|0); + HEAP32[$nPattern>>2] = $27; + $28 = HEAP32[$2>>2]|0; + $29 = (($28) + 8|0); + $30 = HEAP32[$29>>2]|0; + $31 = (_sqlite3_value_text($30)|0); + HEAP32[$zRep>>2] = $31; + $32 = HEAP32[$zRep>>2]|0; + $33 = ($32|0)==(0|0); + if ($33) { + STACKTOP = sp;return; + } + $34 = HEAP32[$2>>2]|0; + $35 = (($34) + 8|0); + $36 = HEAP32[$35>>2]|0; + $37 = (_sqlite3_value_bytes($36)|0); + HEAP32[$nRep>>2] = $37; + $38 = HEAP32[$nStr>>2]|0; + $39 = (($38) + 1)|0; + $40 = ($39|0)<(0); + $41 = $40 << 31 >> 31; + $42 = $nOut; + $43 = $42; + HEAP32[$43>>2] = $39; + $44 = (($42) + 4)|0; + $45 = $44; + HEAP32[$45>>2] = $41; + $46 = HEAP32[$0>>2]|0; + $47 = $nOut; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = (($47) + 4)|0; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (_contextMalloc($46,$49,$52)|0); + HEAP32[$zOut>>2] = $53; + $54 = HEAP32[$zOut>>2]|0; + $55 = ($54|0)==(0|0); + if ($55) { + STACKTOP = sp;return; + } + $56 = HEAP32[$nStr>>2]|0; + $57 = HEAP32[$nPattern>>2]|0; + $58 = (($56) - ($57))|0; + HEAP32[$loopLimit>>2] = $58; + HEAP32[$j>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $59 = HEAP32[$i>>2]|0; + $60 = HEAP32[$loopLimit>>2]|0; + $61 = ($59|0)<=($60|0); + if (!($61)) { + label = 18; + break; + } + $62 = HEAP32[$i>>2]|0; + $63 = HEAP32[$zStr>>2]|0; + $64 = (($63) + ($62)|0); + $65 = HEAP8[$64>>0]|0; + $66 = $65&255; + $67 = HEAP32[$zPattern>>2]|0; + $68 = HEAP8[$67>>0]|0; + $69 = $68&255; + $70 = ($66|0)!=($69|0); + if ($70) { + label = 11; + } else { + $71 = HEAP32[$i>>2]|0; + $72 = HEAP32[$zStr>>2]|0; + $73 = (($72) + ($71)|0); + $74 = HEAP32[$zPattern>>2]|0; + $75 = HEAP32[$nPattern>>2]|0; + $76 = (_memcmp($73,$74,$75)|0); + $77 = ($76|0)!=(0); + if ($77) { + label = 11; + } else { + $86 = HEAP32[$0>>2]|0; + $87 = (_sqlite3_context_db_handle($86)|0); + HEAP32[$db>>2] = $87; + $88 = HEAP32[$nRep>>2]|0; + $89 = HEAP32[$nPattern>>2]|0; + $90 = (($88) - ($89))|0; + $91 = ($90|0)<(0); + $92 = $91 << 31 >> 31; + $93 = $nOut; + $94 = $93; + $95 = HEAP32[$94>>2]|0; + $96 = (($93) + 4)|0; + $97 = $96; + $98 = HEAP32[$97>>2]|0; + $99 = (_i64Add(($95|0),($98|0),($90|0),($92|0))|0); + $100 = tempRet0; + $101 = $nOut; + $102 = $101; + HEAP32[$102>>2] = $99; + $103 = (($101) + 4)|0; + $104 = $103; + HEAP32[$104>>2] = $100; + $105 = $nOut; + $106 = $105; + $107 = HEAP32[$106>>2]|0; + $108 = (($105) + 4)|0; + $109 = $108; + $110 = HEAP32[$109>>2]|0; + $111 = (_i64Subtract(($107|0),($110|0),1,0)|0); + $112 = tempRet0; + $113 = HEAP32[$db>>2]|0; + $114 = (($113) + 88|0); + $115 = HEAP32[$114>>2]|0; + $116 = ($115|0)<(0); + $117 = $116 << 31 >> 31; + $118 = ($112|0)>($117|0); + $119 = ($112|0)==($117|0); + $120 = ($111>>>0)>($115>>>0); + $121 = $119 & $120; + $122 = $118 | $121; + if ($122) { + label = 13; + break; + } + $125 = HEAP32[$zOut>>2]|0; + HEAP32[$zOld>>2] = $125; + $126 = HEAP32[$zOut>>2]|0; + $127 = $nOut; + $128 = $127; + $129 = HEAP32[$128>>2]|0; + $130 = (($127) + 4)|0; + $131 = $130; + $132 = HEAP32[$131>>2]|0; + $133 = (_sqlite3_realloc($126,$129)|0); + HEAP32[$zOut>>2] = $133; + $134 = HEAP32[$zOut>>2]|0; + $135 = ($134|0)==(0|0); + if ($135) { + label = 15; + break; + } + $138 = HEAP32[$j>>2]|0; + $139 = HEAP32[$zOut>>2]|0; + $140 = (($139) + ($138)|0); + $141 = HEAP32[$zRep>>2]|0; + $142 = HEAP32[$nRep>>2]|0; + _memcpy(($140|0),($141|0),($142|0))|0; + $143 = HEAP32[$nRep>>2]|0; + $144 = HEAP32[$j>>2]|0; + $145 = (($144) + ($143))|0; + HEAP32[$j>>2] = $145; + $146 = HEAP32[$nPattern>>2]|0; + $147 = (($146) - 1)|0; + $148 = HEAP32[$i>>2]|0; + $149 = (($148) + ($147))|0; + HEAP32[$i>>2] = $149; + } + } + if ((label|0) == 11) { + label = 0; + $78 = HEAP32[$i>>2]|0; + $79 = HEAP32[$zStr>>2]|0; + $80 = (($79) + ($78)|0); + $81 = HEAP8[$80>>0]|0; + $82 = HEAP32[$j>>2]|0; + $83 = (($82) + 1)|0; + HEAP32[$j>>2] = $83; + $84 = HEAP32[$zOut>>2]|0; + $85 = (($84) + ($82)|0); + HEAP8[$85>>0] = $81; + } + $150 = HEAP32[$i>>2]|0; + $151 = (($150) + 1)|0; + HEAP32[$i>>2] = $151; + } + if ((label|0) == 13) { + $123 = HEAP32[$0>>2]|0; + _sqlite3_result_error_toobig($123); + $124 = HEAP32[$zOut>>2]|0; + _sqlite3_free($124); + STACKTOP = sp;return; + } + else if ((label|0) == 15) { + $136 = HEAP32[$0>>2]|0; + _sqlite3_result_error_nomem($136); + $137 = HEAP32[$zOld>>2]|0; + _sqlite3_free($137); + STACKTOP = sp;return; + } + else if ((label|0) == 18) { + $152 = HEAP32[$j>>2]|0; + $153 = HEAP32[$zOut>>2]|0; + $154 = (($153) + ($152)|0); + $155 = HEAP32[$i>>2]|0; + $156 = HEAP32[$zStr>>2]|0; + $157 = (($156) + ($155)|0); + $158 = HEAP32[$nStr>>2]|0; + $159 = HEAP32[$i>>2]|0; + $160 = (($158) - ($159))|0; + _memcpy(($154|0),($157|0),($160|0))|0; + $161 = HEAP32[$nStr>>2]|0; + $162 = HEAP32[$i>>2]|0; + $163 = (($161) - ($162))|0; + $164 = HEAP32[$j>>2]|0; + $165 = (($164) + ($163))|0; + HEAP32[$j>>2] = $165; + $166 = HEAP32[$j>>2]|0; + $167 = HEAP32[$zOut>>2]|0; + $168 = (($167) + ($166)|0); + HEAP8[$168>>0] = 0; + $169 = HEAP32[$0>>2]|0; + $170 = HEAP32[$zOut>>2]|0; + $171 = HEAP32[$j>>2]|0; + _sqlite3_result_text($169,$170,$171,13); + STACKTOP = sp;return; + } +} +function _zeroblobFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp + 12|0; + $2 = sp + 8|0; + $n = sp; + $db = sp + 16|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3_context_db_handle($3)|0); + HEAP32[$db>>2] = $4; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = (_sqlite3_value_int64($6)|0); + $8 = tempRet0; + $9 = $n; + $10 = $9; + HEAP32[$10>>2] = $7; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = $8; + $13 = $n; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (($13) + 4)|0; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$db>>2]|0; + $20 = (($19) + 88|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)<(0); + $23 = $22 << 31 >> 31; + $24 = ($18|0)>($23|0); + $25 = ($18|0)==($23|0); + $26 = ($15>>>0)>($21>>>0); + $27 = $25 & $26; + $28 = $24 | $27; + $29 = HEAP32[$0>>2]|0; + if ($28) { + _sqlite3_result_error_toobig($29); + STACKTOP = sp;return; + } else { + $30 = $n; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + _sqlite3_result_zeroblob($29,$32); + STACKTOP = sp;return; + } +} +function _sumStep($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0.0, $43 = 0, $44 = 0.0; + var $45 = 0.0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0.0, $69 = 0, $7 = 0, $70 = 0.0, $71 = 0.0, $72 = 0, $73 = 0, $8 = 0, $9 = 0, $p = 0, $type = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp + 20|0; + $2 = sp + 8|0; + $p = sp + 12|0; + $type = sp + 16|0; + $v = sp; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3_aggregate_context($3,32)|0); + HEAP32[$p>>2] = $4; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = (_sqlite3_value_numeric_type($6)|0); + HEAP32[$type>>2] = $7; + $8 = HEAP32[$p>>2]|0; + $9 = ($8|0)!=(0|0); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = HEAP32[$type>>2]|0; + $11 = ($10|0)!=(5); + if (!($11)) { + STACKTOP = sp;return; + } + $12 = HEAP32[$p>>2]|0; + $13 = (($12) + 16|0); + $14 = $13; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (_i64Add(($16|0),($19|0),1,0)|0); + $21 = tempRet0; + $22 = $13; + $23 = $22; + HEAP32[$23>>2] = $20; + $24 = (($22) + 4)|0; + $25 = $24; + HEAP32[$25>>2] = $21; + $26 = HEAP32[$type>>2]|0; + $27 = ($26|0)==(1); + $28 = HEAP32[$2>>2]|0; + $29 = HEAP32[$28>>2]|0; + if (!($27)) { + $68 = (+_sqlite3_value_double($29)); + $69 = HEAP32[$p>>2]|0; + $70 = +HEAPF64[$69>>3]; + $71 = $70 + $68; + HEAPF64[$69>>3] = $71; + $72 = HEAP32[$p>>2]|0; + $73 = (($72) + 25|0); + HEAP8[$73>>0] = 1; + STACKTOP = sp;return; + } + $30 = (_sqlite3_value_int64($29)|0); + $31 = tempRet0; + $32 = $v; + $33 = $32; + HEAP32[$33>>2] = $30; + $34 = (($32) + 4)|0; + $35 = $34; + HEAP32[$35>>2] = $31; + $36 = $v; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + $39 = (($36) + 4)|0; + $40 = $39; + $41 = HEAP32[$40>>2]|0; + $42 = (+($38>>>0)) + (4294967296.0*(+($41|0))); + $43 = HEAP32[$p>>2]|0; + $44 = +HEAPF64[$43>>3]; + $45 = $44 + $42; + HEAPF64[$43>>3] = $45; + $46 = HEAP32[$p>>2]|0; + $47 = (($46) + 25|0); + $48 = HEAP8[$47>>0]|0; + $49 = $48&255; + $50 = HEAP32[$p>>2]|0; + $51 = (($50) + 24|0); + $52 = HEAP8[$51>>0]|0; + $53 = $52&255; + $54 = $49 | $53; + $55 = ($54|0)==(0); + if (!($55)) { + STACKTOP = sp;return; + } + $56 = HEAP32[$p>>2]|0; + $57 = (($56) + 8|0); + $58 = $v; + $59 = $58; + $60 = HEAP32[$59>>2]|0; + $61 = (($58) + 4)|0; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = (_sqlite3AddInt64($57,$60,$63)|0); + $65 = ($64|0)!=(0); + if (!($65)) { + STACKTOP = sp;return; + } + $66 = HEAP32[$p>>2]|0; + $67 = (($66) + 24|0); + HEAP8[$67>>0] = 1; + STACKTOP = sp;return; +} +function _sumFinalize($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $context; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3_aggregate_context($1,0)|0); + HEAP32[$p>>2] = $2; + $3 = HEAP32[$p>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$p>>2]|0; + $6 = (($5) + 16|0); + $7 = $6; + $8 = $7; + $9 = HEAP32[$8>>2]|0; + $10 = (($7) + 4)|0; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)>(0); + $14 = ($12|0)==(0); + $15 = ($9>>>0)>(0); + $16 = $14 & $15; + $17 = $13 | $16; + if (!($17)) { + STACKTOP = sp;return; + } + $18 = HEAP32[$p>>2]|0; + $19 = (($18) + 24|0); + $20 = HEAP8[$19>>0]|0; + $21 = ($20<<24>>24)!=(0); + if ($21) { + $22 = HEAP32[$0>>2]|0; + _sqlite3_result_error($22,16320,-1); + STACKTOP = sp;return; + } + $23 = HEAP32[$p>>2]|0; + $24 = (($23) + 25|0); + $25 = HEAP8[$24>>0]|0; + $26 = ($25<<24>>24)!=(0); + $27 = HEAP32[$0>>2]|0; + $28 = HEAP32[$p>>2]|0; + if ($26) { + $29 = +HEAPF64[$28>>3]; + _sqlite3_result_double($27,$29); + STACKTOP = sp;return; + } else { + $30 = (($28) + 8|0); + $31 = $30; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + _sqlite3_result_int64($27,$33,$36); + STACKTOP = sp;return; + } +} +function _totalFinalize($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0.0, $8 = 0.0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $context; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3_aggregate_context($1,0)|0); + HEAP32[$p>>2] = $2; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$p>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $8 = 0.0; + _sqlite3_result_double($3,$8); + STACKTOP = sp;return; + } + $6 = HEAP32[$p>>2]|0; + $7 = +HEAPF64[$6>>3]; + $8 = $7; + _sqlite3_result_double($3,$8); + STACKTOP = sp;return; +} +function _avgFinalize($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0.0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $context; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3_aggregate_context($1,0)|0); + HEAP32[$p>>2] = $2; + $3 = HEAP32[$p>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$p>>2]|0; + $6 = (($5) + 16|0); + $7 = $6; + $8 = $7; + $9 = HEAP32[$8>>2]|0; + $10 = (($7) + 4)|0; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)>(0); + $14 = ($12|0)==(0); + $15 = ($9>>>0)>(0); + $16 = $14 & $15; + $17 = $13 | $16; + if (!($17)) { + STACKTOP = sp;return; + } + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$p>>2]|0; + $20 = +HEAPF64[$19>>3]; + $21 = HEAP32[$p>>2]|0; + $22 = (($21) + 16|0); + $23 = $22; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = (($23) + 4)|0; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = (+($25>>>0)) + (4294967296.0*(+($28|0))); + $30 = $20 / $29; + _sqlite3_result_double($18,$30); + STACKTOP = sp;return; +} +function _countStep($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3_aggregate_context($3,8)|0); + HEAP32[$p>>2] = $4; + $5 = HEAP32[$1>>2]|0; + $6 = ($5|0)==(0); + if (!($6)) { + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3_value_type($8)|0); + $10 = (5)!=($9|0); + if (!($10)) { + STACKTOP = sp;return; + } + } + $11 = HEAP32[$p>>2]|0; + $12 = ($11|0)!=(0|0); + if (!($12)) { + STACKTOP = sp;return; + } + $13 = HEAP32[$p>>2]|0; + $14 = $13; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (_i64Add(($16|0),($19|0),1,0)|0); + $21 = tempRet0; + $22 = $13; + $23 = $22; + HEAP32[$23>>2] = $20; + $24 = (($22) + 4)|0; + $25 = $24; + HEAP32[$25>>2] = $21; + STACKTOP = sp;return; +} +function _countFinalize($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $context; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3_aggregate_context($1,0)|0); + HEAP32[$p>>2] = $2; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$p>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $13 = 0;$14 = 0; + _sqlite3_result_int64($3,$13,$14); + STACKTOP = sp;return; + } + $6 = HEAP32[$p>>2]|0; + $7 = $6; + $8 = $7; + $9 = HEAP32[$8>>2]|0; + $10 = (($7) + 4)|0; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = $9;$14 = $12; + _sqlite3_result_int64($3,$13,$14); + STACKTOP = sp;return; +} +function _groupConcatStep($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $firstTerm = 0, $nSep = 0, $nVal = 0, $pAccum = 0, $zSep = 0; + var $zVal = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $zVal = sp + 24|0; + $pAccum = sp + 20|0; + $zSep = sp + 16|0; + $nVal = sp + 8|0; + $nSep = sp + 4|0; + $db = sp; + $firstTerm = sp + 12|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_type($4)|0); + $6 = ($5|0)==(5); + if ($6) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + $8 = (_sqlite3_aggregate_context($7,28)|0); + HEAP32[$pAccum>>2] = $8; + $9 = HEAP32[$pAccum>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + STACKTOP = sp;return; + } + $11 = HEAP32[$0>>2]|0; + $12 = (_sqlite3_context_db_handle($11)|0); + HEAP32[$db>>2] = $12; + $13 = HEAP32[$pAccum>>2]|0; + $14 = (($13) + 24|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = ($16|0)==(0); + $18 = $17&1; + HEAP32[$firstTerm>>2] = $18; + $19 = HEAP32[$pAccum>>2]|0; + $20 = (($19) + 24|0); + HEAP8[$20>>0] = 2; + $21 = HEAP32[$db>>2]|0; + $22 = (($21) + 88|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$pAccum>>2]|0; + $25 = (($24) + 20|0); + HEAP32[$25>>2] = $23; + $26 = HEAP32[$firstTerm>>2]|0; + $27 = ($26|0)!=(0); + if (!($27)) { + $28 = HEAP32[$1>>2]|0; + $29 = ($28|0)==(2); + if ($29) { + $30 = HEAP32[$2>>2]|0; + $31 = (($30) + 4|0); + $32 = HEAP32[$31>>2]|0; + $33 = (_sqlite3_value_text($32)|0); + HEAP32[$zSep>>2] = $33; + $34 = HEAP32[$2>>2]|0; + $35 = (($34) + 4|0); + $36 = HEAP32[$35>>2]|0; + $37 = (_sqlite3_value_bytes($36)|0); + HEAP32[$nSep>>2] = $37; + } else { + HEAP32[$zSep>>2] = 16312; + HEAP32[$nSep>>2] = 1; + } + $38 = HEAP32[$nSep>>2]|0; + $39 = ($38|0)!=(0); + if ($39) { + $40 = HEAP32[$pAccum>>2]|0; + $41 = HEAP32[$zSep>>2]|0; + $42 = HEAP32[$nSep>>2]|0; + _sqlite3StrAccumAppend($40,$41,$42); + } + } + $43 = HEAP32[$2>>2]|0; + $44 = HEAP32[$43>>2]|0; + $45 = (_sqlite3_value_text($44)|0); + HEAP32[$zVal>>2] = $45; + $46 = HEAP32[$2>>2]|0; + $47 = HEAP32[$46>>2]|0; + $48 = (_sqlite3_value_bytes($47)|0); + HEAP32[$nVal>>2] = $48; + $49 = HEAP32[$zVal>>2]|0; + $50 = ($49|0)!=(0|0); + if (!($50)) { + STACKTOP = sp;return; + } + $51 = HEAP32[$pAccum>>2]|0; + $52 = HEAP32[$zVal>>2]|0; + $53 = HEAP32[$nVal>>2]|0; + _sqlite3StrAccumAppend($51,$52,$53); + STACKTOP = sp;return; +} +function _groupConcatFinalize($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pAccum = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pAccum = sp; + HEAP32[$0>>2] = $context; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3_aggregate_context($1,0)|0); + HEAP32[$pAccum>>2] = $2; + $3 = HEAP32[$pAccum>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$pAccum>>2]|0; + $6 = (($5) + 25|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = ($8|0)==(2); + if ($9) { + $10 = HEAP32[$0>>2]|0; + _sqlite3_result_error_toobig($10); + STACKTOP = sp;return; + } + $11 = HEAP32[$pAccum>>2]|0; + $12 = (($11) + 25|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = ($14|0)==(1); + $16 = HEAP32[$0>>2]|0; + if ($15) { + _sqlite3_result_error_nomem($16); + STACKTOP = sp;return; + } else { + $17 = HEAP32[$pAccum>>2]|0; + $18 = (_sqlite3StrAccumFinish($17)|0); + _sqlite3_result_text($16,$18,-1,13); + STACKTOP = sp;return; + } +} +function _likeFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $escape = 0, $nPat = 0, $pInfo = 0, $zA = 0, $zB = 0, $zEsc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $zA = sp + 24|0; + $zB = sp + 20|0; + $escape = sp + 16|0; + $nPat = sp + 8|0; + $db = sp + 4|0; + $zEsc = sp; + $pInfo = sp + 12|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + HEAP32[$escape>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3_context_db_handle($3)|0); + HEAP32[$db>>2] = $4; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = (_sqlite3_value_text($6)|0); + HEAP32[$zB>>2] = $7; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = (_sqlite3_value_text($10)|0); + HEAP32[$zA>>2] = $11; + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = (_sqlite3_value_bytes($13)|0); + HEAP32[$nPat>>2] = $14; + $15 = HEAP32[$nPat>>2]|0; + $16 = HEAP32[$db>>2]|0; + $17 = (($16) + 88|0); + $18 = (($17) + 32|0); + $19 = HEAP32[$18>>2]|0; + $20 = ($15|0)>($19|0); + if ($20) { + $21 = HEAP32[$0>>2]|0; + _sqlite3_result_error($21,16224,-1); + STACKTOP = sp;return; + } + $22 = HEAP32[$1>>2]|0; + $23 = ($22|0)==(3); + do { + if ($23) { + $24 = HEAP32[$2>>2]|0; + $25 = (($24) + 8|0); + $26 = HEAP32[$25>>2]|0; + $27 = (_sqlite3_value_text($26)|0); + HEAP32[$zEsc>>2] = $27; + $28 = HEAP32[$zEsc>>2]|0; + $29 = ($28|0)==(0|0); + if ($29) { + STACKTOP = sp;return; + } + $30 = HEAP32[$zEsc>>2]|0; + $31 = (_sqlite3Utf8CharLen($30,-1)|0); + $32 = ($31|0)!=(1); + if (!($32)) { + $34 = (_sqlite3Utf8Read($zEsc)|0); + HEAP32[$escape>>2] = $34; + break; + } + $33 = HEAP32[$0>>2]|0; + _sqlite3_result_error($33,16264,-1); + STACKTOP = sp;return; + } + } while(0); + $35 = HEAP32[$zA>>2]|0; + $36 = ($35|0)!=(0|0); + if (!($36)) { + STACKTOP = sp;return; + } + $37 = HEAP32[$zB>>2]|0; + $38 = ($37|0)!=(0|0); + if (!($38)) { + STACKTOP = sp;return; + } + $39 = HEAP32[$0>>2]|0; + $40 = (_sqlite3_user_data($39)|0); + HEAP32[$pInfo>>2] = $40; + $41 = HEAP32[$0>>2]|0; + $42 = HEAP32[$zB>>2]|0; + $43 = HEAP32[$zA>>2]|0; + $44 = HEAP32[$pInfo>>2]|0; + $45 = HEAP32[$escape>>2]|0; + $46 = (_patternCompare($42,$43,$44,$45)|0); + _sqlite3_result_int($41,$46); + STACKTOP = sp;return; +} +function _sqlite3RegisterDateTimeFunctions() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $aFunc = 0, $i = 0, $pHash = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $i = sp + 8|0; + $pHash = sp; + $aFunc = sp + 4|0; + HEAP32[$pHash>>2] = 1896; + HEAP32[$aFunc>>2] = 15552; + HEAP32[$i>>2] = 0; + while(1) { + $0 = HEAP32[$i>>2]|0; + $1 = ($0|0)<(8); + if (!($1)) { + break; + } + $2 = HEAP32[$pHash>>2]|0; + $3 = HEAP32[$i>>2]|0; + $4 = HEAP32[$aFunc>>2]|0; + $5 = (($4) + (($3*36)|0)|0); + _sqlite3FuncDefInsert($2,$5); + $6 = HEAP32[$i>>2]|0; + $7 = (($6) + 1)|0; + HEAP32[$i>>2] = $7; + } + STACKTOP = sp;return; +} +function _sqlite3AlterFunctions() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $aFunc = 0, $i = 0, $pHash = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $i = sp + 8|0; + $pHash = sp; + $aFunc = sp + 4|0; + HEAP32[$pHash>>2] = 1896; + HEAP32[$aFunc>>2] = 15336; + HEAP32[$i>>2] = 0; + while(1) { + $0 = HEAP32[$i>>2]|0; + $1 = ($0|0)<(3); + if (!($1)) { + break; + } + $2 = HEAP32[$pHash>>2]|0; + $3 = HEAP32[$i>>2]|0; + $4 = HEAP32[$aFunc>>2]|0; + $5 = (($4) + (($3*36)|0)|0); + _sqlite3FuncDefInsert($2,$5); + $6 = HEAP32[$i>>2]|0; + $7 = (($6) + 1)|0; + HEAP32[$i>>2] = $7; + } + STACKTOP = sp;return; +} +function _renameTableFunc($context,$NotUsed,$argv) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $len = 0, $or$cond = 0, $tname = 0, $token = 0, $vararg_buffer = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $zCsr = 0, $zRet = 0, $zSql = 0, $zTableName = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer = sp; + $0 = sp + 56|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $zSql = sp + 44|0; + $zTableName = sp + 40|0; + $token = sp + 60|0; + $tname = sp + 24|0; + $zCsr = sp + 20|0; + $len = sp + 16|0; + $zRet = sp + 32|0; + $db = sp + 36|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_text($4)|0); + HEAP32[$zSql>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3_value_text($8)|0); + HEAP32[$zTableName>>2] = $9; + $10 = HEAP32[$zSql>>2]|0; + HEAP32[$zCsr>>2] = $10; + HEAP32[$len>>2] = 0; + $11 = HEAP32[$0>>2]|0; + $12 = (_sqlite3_context_db_handle($11)|0); + HEAP32[$db>>2] = $12; + $13 = HEAP32[$zSql>>2]|0; + $14 = ($13|0)!=(0|0); + if (!($14)) { + STACKTOP = sp;return; + } + while(1) { + $15 = HEAP32[$zCsr>>2]|0; + $16 = HEAP8[$15>>0]|0; + $17 = ($16<<24>>24)!=(0); + if (!($17)) { + label = 7; + break; + } + $18 = HEAP32[$zCsr>>2]|0; + HEAP32[$tname>>2] = $18; + $19 = HEAP32[$len>>2]|0; + $20 = (($tname) + 4|0); + HEAP32[$20>>2] = $19; + while(1) { + $21 = HEAP32[$len>>2]|0; + $22 = HEAP32[$zCsr>>2]|0; + $23 = (($22) + ($21)|0); + HEAP32[$zCsr>>2] = $23; + $24 = HEAP32[$zCsr>>2]|0; + $25 = (_sqlite3GetToken($24,$token)|0); + HEAP32[$len>>2] = $25; + $26 = HEAP32[$token>>2]|0; + $27 = ($26|0)==(151); + if (!($27)) { + break; + } + } + $28 = HEAP32[$token>>2]|0; + $29 = ($28|0)!=(22); + $30 = HEAP32[$token>>2]|0; + $31 = ($30|0)!=(125); + $or$cond = $29 & $31; + if (!($or$cond)) { + break; + } + } + if ((label|0) == 7) { + STACKTOP = sp;return; + } + $32 = HEAP32[$db>>2]|0; + $33 = HEAP32[$tname>>2]|0; + $34 = HEAP32[$zSql>>2]|0; + $35 = $33; + $36 = $34; + $37 = (($35) - ($36))|0; + $38 = HEAP32[$zSql>>2]|0; + $39 = HEAP32[$zTableName>>2]|0; + $40 = HEAP32[$tname>>2]|0; + $41 = (($tname) + 4|0); + $42 = HEAP32[$41>>2]|0; + $43 = (($40) + ($42)|0); + HEAP32[$vararg_buffer>>2] = $37; + $vararg_ptr2 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr2>>2] = $38; + $vararg_ptr3 = (($vararg_buffer) + 8|0); + HEAP32[$vararg_ptr3>>2] = $39; + $vararg_ptr4 = (($vararg_buffer) + 12|0); + HEAP32[$vararg_ptr4>>2] = $43; + $44 = (_sqlite3MPrintf($32,15536,$vararg_buffer)|0); + HEAP32[$zRet>>2] = $44; + $45 = HEAP32[$0>>2]|0; + $46 = HEAP32[$zRet>>2]|0; + _sqlite3_result_text($45,$46,-1,39); + STACKTOP = sp;return; +} +function _renameTriggerFunc($context,$NotUsed,$argv) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $argv = $argv|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $dist = 0; + var $len = 0, $or$cond = 0, $or$cond3 = 0, $or$cond6 = 0, $tname = 0, $token = 0, $vararg_buffer = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, $zCsr = 0, $zRet = 0, $zSql = 0, $zTableName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer = sp; + $0 = sp + 64|0; + $1 = sp + 60|0; + $2 = sp + 56|0; + $zSql = sp + 52|0; + $zTableName = sp + 48|0; + $token = sp + 68|0; + $tname = sp + 32|0; + $dist = sp + 24|0; + $zCsr = sp + 20|0; + $len = sp + 16|0; + $zRet = sp + 40|0; + $db = sp + 44|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_text($4)|0); + HEAP32[$zSql>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3_value_text($8)|0); + HEAP32[$zTableName>>2] = $9; + HEAP32[$dist>>2] = 3; + $10 = HEAP32[$zSql>>2]|0; + HEAP32[$zCsr>>2] = $10; + HEAP32[$len>>2] = 0; + $11 = HEAP32[$0>>2]|0; + $12 = (_sqlite3_context_db_handle($11)|0); + HEAP32[$db>>2] = $12; + $13 = HEAP32[$zSql>>2]|0; + $14 = ($13|0)!=(0|0); + if (!($14)) { + STACKTOP = sp;return; + } + while(1) { + $15 = HEAP32[$zCsr>>2]|0; + $16 = HEAP8[$15>>0]|0; + $17 = ($16<<24>>24)!=(0); + if (!($17)) { + label = 8; + break; + } + $18 = HEAP32[$zCsr>>2]|0; + HEAP32[$tname>>2] = $18; + $19 = HEAP32[$len>>2]|0; + $20 = (($tname) + 4|0); + HEAP32[$20>>2] = $19; + while(1) { + $21 = HEAP32[$len>>2]|0; + $22 = HEAP32[$zCsr>>2]|0; + $23 = (($22) + ($21)|0); + HEAP32[$zCsr>>2] = $23; + $24 = HEAP32[$zCsr>>2]|0; + $25 = (_sqlite3GetToken($24,$token)|0); + HEAP32[$len>>2] = $25; + $26 = HEAP32[$token>>2]|0; + $27 = ($26|0)==(151); + if (!($27)) { + break; + } + } + $28 = HEAP32[$dist>>2]|0; + $29 = (($28) + 1)|0; + HEAP32[$dist>>2] = $29; + $30 = HEAP32[$token>>2]|0; + $31 = ($30|0)==(122); + $32 = HEAP32[$token>>2]|0; + $33 = ($32|0)==(107); + $or$cond = $31 | $33; + $$ = $or$cond ? 0 : $29; + HEAP32[$dist>>2] = $$; + $34 = HEAP32[$dist>>2]|0; + $35 = ($34|0)!=(2); + if ($35) { + continue; + } + $36 = HEAP32[$token>>2]|0; + $37 = ($36|0)!=(137); + $38 = HEAP32[$token>>2]|0; + $39 = ($38|0)!=(46); + $or$cond3 = $37 & $39; + $40 = HEAP32[$token>>2]|0; + $41 = ($40|0)!=(5); + $or$cond6 = $or$cond3 & $41; + if (!($or$cond6)) { + break; + } + } + if ((label|0) == 8) { + STACKTOP = sp;return; + } + $42 = HEAP32[$db>>2]|0; + $43 = HEAP32[$tname>>2]|0; + $44 = HEAP32[$zSql>>2]|0; + $45 = $43; + $46 = $44; + $47 = (($45) - ($46))|0; + $48 = HEAP32[$zSql>>2]|0; + $49 = HEAP32[$zTableName>>2]|0; + $50 = HEAP32[$tname>>2]|0; + $51 = (($tname) + 4|0); + $52 = HEAP32[$51>>2]|0; + $53 = (($50) + ($52)|0); + HEAP32[$vararg_buffer>>2] = $47; + $vararg_ptr7 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr7>>2] = $48; + $vararg_ptr8 = (($vararg_buffer) + 8|0); + HEAP32[$vararg_ptr8>>2] = $49; + $vararg_ptr9 = (($vararg_buffer) + 12|0); + HEAP32[$vararg_ptr9>>2] = $53; + $54 = (_sqlite3MPrintf($42,15536,$vararg_buffer)|0); + HEAP32[$zRet>>2] = $54; + $55 = HEAP32[$0>>2]|0; + $56 = HEAP32[$zRet>>2]|0; + _sqlite3_result_text($55,$56,-1,39); + STACKTOP = sp;return; +} +function _renameParentFunc($context,$NotUsed,$argv) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $9 = 0, $db = 0, $n = 0, $token = 0, $vararg_buffer4 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr7 = 0, $z = 0, $zInput = 0, $zNew = 0, $zOld = 0, $zOut = 0, $zOutput = 0, $zParent = 0, $zResult = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer4 = sp; + $0 = sp + 64|0; + $1 = sp + 60|0; + $2 = sp + 56|0; + $db = sp + 52|0; + $zOutput = sp + 48|0; + $zResult = sp + 44|0; + $zInput = sp + 68|0; + $zOld = sp + 32|0; + $zNew = sp + 28|0; + $z = sp + 24|0; + $n = sp + 20|0; + $token = sp + 16|0; + $zParent = sp + 36|0; + $zOut = sp + 40|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3_context_db_handle($3)|0); + HEAP32[$db>>2] = $4; + HEAP32[$zOutput>>2] = 0; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = (_sqlite3_value_text($6)|0); + HEAP32[$zInput>>2] = $7; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = (_sqlite3_value_text($10)|0); + HEAP32[$zOld>>2] = $11; + $12 = HEAP32[$2>>2]|0; + $13 = (($12) + 8|0); + $14 = HEAP32[$13>>2]|0; + $15 = (_sqlite3_value_text($14)|0); + HEAP32[$zNew>>2] = $15; + $16 = HEAP32[$zInput>>2]|0; + $17 = ($16|0)==(0|0); + if ($17) { + STACKTOP = sp;return; + } + $18 = HEAP32[$zOld>>2]|0; + $19 = ($18|0)==(0|0); + if ($19) { + STACKTOP = sp;return; + } + $20 = HEAP32[$zInput>>2]|0; + HEAP32[$z>>2] = $20; + while(1) { + $21 = HEAP32[$z>>2]|0; + $22 = HEAP8[$21>>0]|0; + $23 = ($22<<24>>24)!=(0); + if (!($23)) { + break; + } + $24 = HEAP32[$z>>2]|0; + $25 = (_sqlite3GetToken($24,$token)|0); + HEAP32[$n>>2] = $25; + $26 = HEAP32[$token>>2]|0; + $27 = ($26|0)==(105); + if ($27) { + while(1) { + $28 = HEAP32[$n>>2]|0; + $29 = HEAP32[$z>>2]|0; + $30 = (($29) + ($28)|0); + HEAP32[$z>>2] = $30; + $31 = HEAP32[$z>>2]|0; + $32 = (_sqlite3GetToken($31,$token)|0); + HEAP32[$n>>2] = $32; + $33 = HEAP32[$token>>2]|0; + $34 = ($33|0)==(151); + if (!($34)) { + break; + } + } + $35 = HEAP32[$db>>2]|0; + $36 = HEAP32[$z>>2]|0; + $37 = HEAP32[$n>>2]|0; + $38 = (_sqlite3DbStrNDup($35,$36,$37)|0); + HEAP32[$zParent>>2] = $38; + $39 = HEAP32[$zParent>>2]|0; + $40 = ($39|0)==(0|0); + if ($40) { + break; + } + $41 = HEAP32[$zParent>>2]|0; + (_sqlite3Dequote($41)|0); + $42 = HEAP32[$zOld>>2]|0; + $43 = HEAP32[$zParent>>2]|0; + $44 = (_sqlite3_stricmp($42,$43)|0); + $45 = (0)==($44|0); + if ($45) { + $46 = HEAP32[$db>>2]|0; + $47 = HEAP32[$zOutput>>2]|0; + $48 = ($47|0)!=(0|0); + $49 = HEAP32[$zOutput>>2]|0; + $50 = $48 ? $49 : 1784; + $51 = HEAP32[$z>>2]|0; + $52 = HEAP32[$zInput>>2]|0; + $53 = $51; + $54 = $52; + $55 = (($53) - ($54))|0; + $56 = HEAP32[$zInput>>2]|0; + $57 = HEAP32[$zNew>>2]|0; + HEAP32[$vararg_buffer4>>2] = $50; + $vararg_ptr1 = (($vararg_buffer4) + 4|0); + HEAP32[$vararg_ptr1>>2] = $55; + $vararg_ptr2 = (($vararg_buffer4) + 8|0); + HEAP32[$vararg_ptr2>>2] = $56; + $vararg_ptr3 = (($vararg_buffer4) + 12|0); + HEAP32[$vararg_ptr3>>2] = $57; + $58 = (_sqlite3MPrintf($46,15520,$vararg_buffer4)|0); + HEAP32[$zOut>>2] = $58; + $59 = HEAP32[$db>>2]|0; + $60 = HEAP32[$zOutput>>2]|0; + _sqlite3DbFree($59,$60); + $61 = HEAP32[$zOut>>2]|0; + HEAP32[$zOutput>>2] = $61; + $62 = HEAP32[$n>>2]|0; + $63 = HEAP32[$z>>2]|0; + $64 = (($63) + ($62)|0); + HEAP32[$zInput>>2] = $64; + } + $65 = HEAP32[$db>>2]|0; + $66 = HEAP32[$zParent>>2]|0; + _sqlite3DbFree($65,$66); + } + $67 = HEAP32[$z>>2]|0; + $68 = HEAP32[$n>>2]|0; + $69 = (($67) + ($68)|0); + HEAP32[$z>>2] = $69; + } + $70 = HEAP32[$db>>2]|0; + $71 = HEAP32[$zOutput>>2]|0; + $72 = ($71|0)!=(0|0); + $73 = HEAP32[$zOutput>>2]|0; + $74 = $72 ? $73 : 1784; + $75 = HEAP32[$zInput>>2]|0; + HEAP32[$vararg_buffer4>>2] = $74; + $vararg_ptr7 = (($vararg_buffer4) + 4|0); + HEAP32[$vararg_ptr7>>2] = $75; + $76 = (_sqlite3MPrintf($70,8800,$vararg_buffer4)|0); + HEAP32[$zResult>>2] = $76; + $77 = HEAP32[$0>>2]|0; + $78 = HEAP32[$zResult>>2]|0; + _sqlite3_result_text($77,$78,-1,39); + $79 = HEAP32[$db>>2]|0; + $80 = HEAP32[$zOutput>>2]|0; + _sqlite3DbFree($79,$80); + STACKTOP = sp;return; +} +function _sqlite3GetToken($z,$tokenType) { + $z = $z|0; + $tokenType = $tokenType|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $delim = 0, $i = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + $c = sp + 12|0; + $delim = sp + 16|0; + $n = sp + 20|0; + HEAP32[$1>>2] = $z; + HEAP32[$2>>2] = $tokenType; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + do { + switch ($5|0) { + case 46: { + $160 = HEAP32[$1>>2]|0; + $161 = (($160) + 1|0); + $162 = HEAP8[$161>>0]|0; + $163 = $162&255; + $164 = (136 + ($163)|0); + $165 = HEAP8[$164>>0]|0; + $166 = $165&255; + $167 = $166 & 4; + $168 = ($167|0)!=(0); + if (!($168)) { + $169 = HEAP32[$2>>2]|0; + HEAP32[$169>>2] = 122; + HEAP32[$0>>2] = 1; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } + break; + } + case 43: { + $41 = HEAP32[$2>>2]|0; + HEAP32[$41>>2] = 89; + HEAP32[$0>>2] = 1; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + break; + } + case 42: { + $42 = HEAP32[$2>>2]|0; + HEAP32[$42>>2] = 91; + HEAP32[$0>>2] = 1; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + break; + } + case 60: { + $89 = HEAP32[$1>>2]|0; + $90 = (($89) + 1|0); + $91 = HEAP8[$90>>0]|0; + $92 = $91&255; + HEAP32[$c>>2] = $92; + $93 = ($92|0)==(61); + if ($93) { + $94 = HEAP32[$2>>2]|0; + HEAP32[$94>>2] = 81; + HEAP32[$0>>2] = 2; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } + $95 = HEAP32[$c>>2]|0; + $96 = ($95|0)==(62); + if ($96) { + $97 = HEAP32[$2>>2]|0; + HEAP32[$97>>2] = 78; + HEAP32[$0>>2] = 2; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } + $98 = HEAP32[$c>>2]|0; + $99 = ($98|0)==(60); + $100 = HEAP32[$2>>2]|0; + if ($99) { + HEAP32[$100>>2] = 87; + HEAP32[$0>>2] = 2; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } else { + HEAP32[$100>>2] = 82; + HEAP32[$0>>2] = 1; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } + break; + } + case 33: { + $110 = HEAP32[$1>>2]|0; + $111 = (($110) + 1|0); + $112 = HEAP8[$111>>0]|0; + $113 = $112&255; + $114 = ($113|0)!=(61); + $115 = HEAP32[$2>>2]|0; + if ($114) { + HEAP32[$115>>2] = 150; + HEAP32[$0>>2] = 2; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } else { + HEAP32[$115>>2] = 78; + HEAP32[$0>>2] = 2; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } + break; + } + case 34: case 39: case 96: { + $125 = HEAP32[$1>>2]|0; + $126 = HEAP8[$125>>0]|0; + $127 = $126&255; + HEAP32[$delim>>2] = $127; + HEAP32[$i>>2] = 1; + while(1) { + $128 = HEAP32[$i>>2]|0; + $129 = HEAP32[$1>>2]|0; + $130 = (($129) + ($128)|0); + $131 = HEAP8[$130>>0]|0; + $132 = $131&255; + HEAP32[$c>>2] = $132; + $133 = ($132|0)!=(0); + if (!($133)) { + break; + } + $134 = HEAP32[$c>>2]|0; + $135 = HEAP32[$delim>>2]|0; + $136 = ($134|0)==($135|0); + if ($136) { + $137 = HEAP32[$i>>2]|0; + $138 = (($137) + 1)|0; + $139 = HEAP32[$1>>2]|0; + $140 = (($139) + ($138)|0); + $141 = HEAP8[$140>>0]|0; + $142 = $141&255; + $143 = HEAP32[$delim>>2]|0; + $144 = ($142|0)==($143|0); + if (!($144)) { + break; + } + $145 = HEAP32[$i>>2]|0; + $146 = (($145) + 1)|0; + HEAP32[$i>>2] = $146; + } + $147 = HEAP32[$i>>2]|0; + $148 = (($147) + 1)|0; + HEAP32[$i>>2] = $148; + } + $149 = HEAP32[$c>>2]|0; + $150 = ($149|0)==(39); + if ($150) { + $151 = HEAP32[$2>>2]|0; + HEAP32[$151>>2] = 97; + $152 = HEAP32[$i>>2]|0; + $153 = (($152) + 1)|0; + HEAP32[$0>>2] = $153; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } + $154 = HEAP32[$c>>2]|0; + $155 = ($154|0)!=(0); + $156 = HEAP32[$2>>2]|0; + if ($155) { + HEAP32[$156>>2] = 27; + $157 = HEAP32[$i>>2]|0; + $158 = (($157) + 1)|0; + HEAP32[$0>>2] = $158; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } else { + HEAP32[$156>>2] = 150; + $159 = HEAP32[$i>>2]|0; + HEAP32[$0>>2] = $159; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } + break; + } + case 40: { + $38 = HEAP32[$2>>2]|0; + HEAP32[$38>>2] = 22; + HEAP32[$0>>2] = 1; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + break; + } + case 38: { + $123 = HEAP32[$2>>2]|0; + HEAP32[$123>>2] = 85; + HEAP32[$0>>2] = 1; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + break; + } + case 41: { + $39 = HEAP32[$2>>2]|0; + HEAP32[$39>>2] = 23; + HEAP32[$0>>2] = 1; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + break; + } + case 59: { + $40 = HEAP32[$2>>2]|0; + HEAP32[$40>>2] = 1; + HEAP32[$0>>2] = 1; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + break; + } + case 62: { + $101 = HEAP32[$1>>2]|0; + $102 = (($101) + 1|0); + $103 = HEAP8[$102>>0]|0; + $104 = $103&255; + HEAP32[$c>>2] = $104; + $105 = ($104|0)==(61); + if ($105) { + $106 = HEAP32[$2>>2]|0; + HEAP32[$106>>2] = 83; + HEAP32[$0>>2] = 2; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } + $107 = HEAP32[$c>>2]|0; + $108 = ($107|0)==(62); + $109 = HEAP32[$2>>2]|0; + if ($108) { + HEAP32[$109>>2] = 88; + HEAP32[$0>>2] = 2; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } else { + HEAP32[$109>>2] = 80; + HEAP32[$0>>2] = 1; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } + break; + } + case 13: case 12: case 10: case 9: case 32: { + HEAP32[$i>>2] = 1; + while(1) { + $6 = HEAP32[$i>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + ($6)|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = (136 + ($10)|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = $13 & 1; + $15 = ($14|0)!=(0); + if (!($15)) { + break; + } + $16 = HEAP32[$i>>2]|0; + $17 = (($16) + 1)|0; + HEAP32[$i>>2] = $17; + } + $18 = HEAP32[$2>>2]|0; + HEAP32[$18>>2] = 151; + $19 = HEAP32[$i>>2]|0; + HEAP32[$0>>2] = $19; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + break; + } + case 61: { + $81 = HEAP32[$2>>2]|0; + HEAP32[$81>>2] = 79; + $82 = HEAP32[$1>>2]|0; + $83 = (($82) + 1|0); + $84 = HEAP8[$83>>0]|0; + $85 = $84&255; + $86 = ($85|0)==(61); + $87 = $86&1; + $88 = (1 + ($87))|0; + HEAP32[$0>>2] = $88; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + break; + } + case 44: { + $122 = HEAP32[$2>>2]|0; + HEAP32[$122>>2] = 26; + HEAP32[$0>>2] = 1; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + break; + } + case 47: { + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 1|0); + $45 = HEAP8[$44>>0]|0; + $46 = $45&255; + $47 = ($46|0)!=(42); + if (!($47)) { + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + 2|0); + $50 = HEAP8[$49>>0]|0; + $51 = $50&255; + $52 = ($51|0)==(0); + if (!($52)) { + HEAP32[$i>>2] = 3; + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 2|0); + $56 = HEAP8[$55>>0]|0; + $57 = $56&255; + HEAP32[$c>>2] = $57; + while(1) { + $58 = HEAP32[$c>>2]|0; + $59 = ($58|0)!=(42); + if (!($59)) { + $60 = HEAP32[$i>>2]|0; + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + ($60)|0); + $63 = HEAP8[$62>>0]|0; + $64 = $63&255; + $65 = ($64|0)!=(47); + if (!($65)) { + break; + } + } + $66 = HEAP32[$i>>2]|0; + $67 = HEAP32[$1>>2]|0; + $68 = (($67) + ($66)|0); + $69 = HEAP8[$68>>0]|0; + $70 = $69&255; + HEAP32[$c>>2] = $70; + $71 = ($70|0)!=(0); + if (!($71)) { + break; + } + $72 = HEAP32[$i>>2]|0; + $73 = (($72) + 1)|0; + HEAP32[$i>>2] = $73; + } + $74 = HEAP32[$c>>2]|0; + $75 = ($74|0)!=(0); + if ($75) { + $76 = HEAP32[$i>>2]|0; + $77 = (($76) + 1)|0; + HEAP32[$i>>2] = $77; + } + $78 = HEAP32[$2>>2]|0; + HEAP32[$78>>2] = 151; + $79 = HEAP32[$i>>2]|0; + HEAP32[$0>>2] = $79; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } + } + $53 = HEAP32[$2>>2]|0; + HEAP32[$53>>2] = 92; + HEAP32[$0>>2] = 1; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + break; + } + case 45: { + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 1|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = ($23|0)==(45); + if (!($24)) { + $37 = HEAP32[$2>>2]|0; + HEAP32[$37>>2] = 90; + HEAP32[$0>>2] = 1; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } + HEAP32[$i>>2] = 2; + while(1) { + $25 = HEAP32[$i>>2]|0; + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + ($25)|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + HEAP32[$c>>2] = $29; + $30 = ($29|0)!=(0); + if (!($30)) { + break; + } + $31 = HEAP32[$c>>2]|0; + $32 = ($31|0)!=(10); + if (!($32)) { + break; + } + $33 = HEAP32[$i>>2]|0; + $34 = (($33) + 1)|0; + HEAP32[$i>>2] = $34; + } + $35 = HEAP32[$2>>2]|0; + HEAP32[$35>>2] = 151; + $36 = HEAP32[$i>>2]|0; + HEAP32[$0>>2] = $36; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + break; + } + case 124: { + $116 = HEAP32[$1>>2]|0; + $117 = (($116) + 1|0); + $118 = HEAP8[$117>>0]|0; + $119 = $118&255; + $120 = ($119|0)!=(124); + $121 = HEAP32[$2>>2]|0; + if ($120) { + HEAP32[$121>>2] = 86; + HEAP32[$0>>2] = 1; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } else { + HEAP32[$121>>2] = 94; + HEAP32[$0>>2] = 2; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } + break; + } + case 126: { + $124 = HEAP32[$2>>2]|0; + HEAP32[$124>>2] = 96; + HEAP32[$0>>2] = 1; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + break; + } + case 37: { + $80 = HEAP32[$2>>2]|0; + HEAP32[$80>>2] = 93; + HEAP32[$0>>2] = 1; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + break; + } + case 57: case 56: case 55: case 54: case 53: case 52: case 51: case 50: case 49: case 48: { + break; + } + case 91: { + HEAP32[$i>>2] = 1; + $280 = HEAP32[$1>>2]|0; + $281 = HEAP8[$280>>0]|0; + $282 = $281&255; + HEAP32[$c>>2] = $282; + while(1) { + $283 = HEAP32[$c>>2]|0; + $284 = ($283|0)!=(93); + if (!($284)) { + break; + } + $285 = HEAP32[$i>>2]|0; + $286 = HEAP32[$1>>2]|0; + $287 = (($286) + ($285)|0); + $288 = HEAP8[$287>>0]|0; + $289 = $288&255; + HEAP32[$c>>2] = $289; + $290 = ($289|0)!=(0); + if (!($290)) { + break; + } + $291 = HEAP32[$i>>2]|0; + $292 = (($291) + 1)|0; + HEAP32[$i>>2] = $292; + } + $293 = HEAP32[$c>>2]|0; + $294 = ($293|0)==(93); + $295 = $294 ? 27 : 150; + $296 = HEAP32[$2>>2]|0; + HEAP32[$296>>2] = $295; + $297 = HEAP32[$i>>2]|0; + HEAP32[$0>>2] = $297; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + break; + } + case 63: { + $298 = HEAP32[$2>>2]|0; + HEAP32[$298>>2] = 135; + HEAP32[$i>>2] = 1; + while(1) { + $299 = HEAP32[$i>>2]|0; + $300 = HEAP32[$1>>2]|0; + $301 = (($300) + ($299)|0); + $302 = HEAP8[$301>>0]|0; + $303 = $302&255; + $304 = (136 + ($303)|0); + $305 = HEAP8[$304>>0]|0; + $306 = $305&255; + $307 = $306 & 4; + $308 = ($307|0)!=(0); + $309 = HEAP32[$i>>2]|0; + if (!($308)) { + break; + } + $310 = (($309) + 1)|0; + HEAP32[$i>>2] = $310; + } + HEAP32[$0>>2] = $309; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + break; + } + case 88: case 120: { + $372 = HEAP32[$1>>2]|0; + $373 = (($372) + 1|0); + $374 = HEAP8[$373>>0]|0; + $375 = $374&255; + $376 = ($375|0)==(39); + if ($376) { + $377 = HEAP32[$2>>2]|0; + HEAP32[$377>>2] = 134; + HEAP32[$i>>2] = 2; + while(1) { + $378 = HEAP32[$i>>2]|0; + $379 = HEAP32[$1>>2]|0; + $380 = (($379) + ($378)|0); + $381 = HEAP8[$380>>0]|0; + $382 = $381&255; + $383 = (136 + ($382)|0); + $384 = HEAP8[$383>>0]|0; + $385 = $384&255; + $386 = $385 & 8; + $387 = ($386|0)!=(0); + $388 = HEAP32[$i>>2]|0; + if (!($387)) { + break; + } + $389 = (($388) + 1)|0; + HEAP32[$i>>2] = $389; + } + $390 = HEAP32[$1>>2]|0; + $391 = (($390) + ($388)|0); + $392 = HEAP8[$391>>0]|0; + $393 = $392&255; + $394 = ($393|0)!=(39); + if ($394) { + label = 120; + } else { + $395 = HEAP32[$i>>2]|0; + $396 = (($395|0) % 2)&-1; + $397 = ($396|0)!=(0); + if ($397) { + label = 120; + } + } + L134: do { + if ((label|0) == 120) { + $398 = HEAP32[$2>>2]|0; + HEAP32[$398>>2] = 150; + while(1) { + $399 = HEAP32[$i>>2]|0; + $400 = HEAP32[$1>>2]|0; + $401 = (($400) + ($399)|0); + $402 = HEAP8[$401>>0]|0; + $403 = $402&255; + $404 = ($403|0)!=(0); + if (!($404)) { + break L134; + } + $405 = HEAP32[$i>>2]|0; + $406 = HEAP32[$1>>2]|0; + $407 = (($406) + ($405)|0); + $408 = HEAP8[$407>>0]|0; + $409 = $408&255; + $410 = ($409|0)!=(39); + if (!($410)) { + break L134; + } + $411 = HEAP32[$i>>2]|0; + $412 = (($411) + 1)|0; + HEAP32[$i>>2] = $412; + } + } + } while(0); + $413 = HEAP32[$i>>2]|0; + $414 = HEAP32[$1>>2]|0; + $415 = (($414) + ($413)|0); + $416 = HEAP8[$415>>0]|0; + $417 = ($416<<24>>24)!=(0); + if ($417) { + $418 = HEAP32[$i>>2]|0; + $419 = (($418) + 1)|0; + HEAP32[$i>>2] = $419; + } + $420 = HEAP32[$i>>2]|0; + HEAP32[$0>>2] = $420; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } else { + label = 127; + } + break; + } + case 58: case 35: case 64: case 36: { + HEAP32[$n>>2] = 0; + $311 = HEAP32[$2>>2]|0; + HEAP32[$311>>2] = 135; + HEAP32[$i>>2] = 1; + while(1) { + $312 = HEAP32[$i>>2]|0; + $313 = HEAP32[$1>>2]|0; + $314 = (($313) + ($312)|0); + $315 = HEAP8[$314>>0]|0; + $316 = $315&255; + HEAP32[$c>>2] = $316; + $317 = ($316|0)!=(0); + if (!($317)) { + break; + } + $318 = HEAP32[$c>>2]|0; + $319 = $318&255; + $320 = $319&255; + $321 = (136 + ($320)|0); + $322 = HEAP8[$321>>0]|0; + $323 = $322&255; + $324 = $323 & 70; + $325 = ($324|0)!=(0); + if ($325) { + $326 = HEAP32[$n>>2]|0; + $327 = (($326) + 1)|0; + HEAP32[$n>>2] = $327; + } else { + $328 = HEAP32[$c>>2]|0; + $329 = ($328|0)==(40); + if ($329) { + $330 = HEAP32[$n>>2]|0; + $331 = ($330|0)>(0); + if ($331) { + label = 101; + break; + } + } + $355 = HEAP32[$c>>2]|0; + $356 = ($355|0)==(58); + if (!($356)) { + break; + } + $357 = HEAP32[$i>>2]|0; + $358 = (($357) + 1)|0; + $359 = HEAP32[$1>>2]|0; + $360 = (($359) + ($358)|0); + $361 = HEAP8[$360>>0]|0; + $362 = $361&255; + $363 = ($362|0)==(58); + if (!($363)) { + break; + } + $364 = HEAP32[$i>>2]|0; + $365 = (($364) + 1)|0; + HEAP32[$i>>2] = $365; + } + $366 = HEAP32[$i>>2]|0; + $367 = (($366) + 1)|0; + HEAP32[$i>>2] = $367; + } + do { + if ((label|0) == 101) { + while(1) { + label = 0; + $332 = HEAP32[$i>>2]|0; + $333 = (($332) + 1)|0; + HEAP32[$i>>2] = $333; + $334 = HEAP32[$i>>2]|0; + $335 = HEAP32[$1>>2]|0; + $336 = (($335) + ($334)|0); + $337 = HEAP8[$336>>0]|0; + $338 = $337&255; + HEAP32[$c>>2] = $338; + $339 = ($338|0)!=(0); + if (!($339)) { + break; + } + $340 = HEAP32[$c>>2]|0; + $341 = $340&255; + $342 = $341&255; + $343 = (136 + ($342)|0); + $344 = HEAP8[$343>>0]|0; + $345 = $344&255; + $346 = $345 & 1; + $347 = ($346|0)!=(0); + if ($347) { + break; + } + $348 = HEAP32[$c>>2]|0; + $349 = ($348|0)!=(41); + if ($349) { + label = 101; + } else { + break; + } + } + $350 = HEAP32[$c>>2]|0; + $351 = ($350|0)==(41); + if ($351) { + $352 = HEAP32[$i>>2]|0; + $353 = (($352) + 1)|0; + HEAP32[$i>>2] = $353; + break; + } else { + $354 = HEAP32[$2>>2]|0; + HEAP32[$354>>2] = 150; + break; + } + } + } while(0); + $368 = HEAP32[$n>>2]|0; + $369 = ($368|0)==(0); + if ($369) { + $370 = HEAP32[$2>>2]|0; + HEAP32[$370>>2] = 150; + } + $371 = HEAP32[$i>>2]|0; + HEAP32[$0>>2] = $371; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + break; + } + default: { + label = 127; + } + } + } while(0); + if ((label|0) == 127) { + $421 = HEAP32[$1>>2]|0; + $422 = HEAP8[$421>>0]|0; + $423 = $422&255; + $424 = (136 + ($423)|0); + $425 = HEAP8[$424>>0]|0; + $426 = $425&255; + $427 = $426 & 70; + $428 = ($427|0)!=(0); + if (!($428)) { + $446 = HEAP32[$2>>2]|0; + HEAP32[$446>>2] = 150; + HEAP32[$0>>2] = 1; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } + HEAP32[$i>>2] = 1; + while(1) { + $429 = HEAP32[$i>>2]|0; + $430 = HEAP32[$1>>2]|0; + $431 = (($430) + ($429)|0); + $432 = HEAP8[$431>>0]|0; + $433 = $432&255; + $434 = (136 + ($433)|0); + $435 = HEAP8[$434>>0]|0; + $436 = $435&255; + $437 = $436 & 70; + $438 = ($437|0)!=(0); + if (!($438)) { + break; + } + $439 = HEAP32[$i>>2]|0; + $440 = (($439) + 1)|0; + HEAP32[$i>>2] = $440; + } + $441 = HEAP32[$1>>2]|0; + $442 = HEAP32[$i>>2]|0; + $443 = (_keywordCode($441,$442)|0); + $444 = HEAP32[$2>>2]|0; + HEAP32[$444>>2] = $443; + $445 = HEAP32[$i>>2]|0; + HEAP32[$0>>2] = $445; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); + } + $170 = HEAP32[$2>>2]|0; + HEAP32[$170>>2] = 132; + HEAP32[$i>>2] = 0; + while(1) { + $171 = HEAP32[$i>>2]|0; + $172 = HEAP32[$1>>2]|0; + $173 = (($172) + ($171)|0); + $174 = HEAP8[$173>>0]|0; + $175 = $174&255; + $176 = (136 + ($175)|0); + $177 = HEAP8[$176>>0]|0; + $178 = $177&255; + $179 = $178 & 4; + $180 = ($179|0)!=(0); + $181 = HEAP32[$i>>2]|0; + if (!($180)) { + break; + } + $182 = (($181) + 1)|0; + HEAP32[$i>>2] = $182; + } + $183 = HEAP32[$1>>2]|0; + $184 = (($183) + ($181)|0); + $185 = HEAP8[$184>>0]|0; + $186 = $185&255; + $187 = ($186|0)==(46); + if ($187) { + $188 = HEAP32[$i>>2]|0; + $189 = (($188) + 1)|0; + HEAP32[$i>>2] = $189; + while(1) { + $190 = HEAP32[$i>>2]|0; + $191 = HEAP32[$1>>2]|0; + $192 = (($191) + ($190)|0); + $193 = HEAP8[$192>>0]|0; + $194 = $193&255; + $195 = (136 + ($194)|0); + $196 = HEAP8[$195>>0]|0; + $197 = $196&255; + $198 = $197 & 4; + $199 = ($198|0)!=(0); + if (!($199)) { + break; + } + $200 = HEAP32[$i>>2]|0; + $201 = (($200) + 1)|0; + HEAP32[$i>>2] = $201; + } + $202 = HEAP32[$2>>2]|0; + HEAP32[$202>>2] = 133; + } + $203 = HEAP32[$i>>2]|0; + $204 = HEAP32[$1>>2]|0; + $205 = (($204) + ($203)|0); + $206 = HEAP8[$205>>0]|0; + $207 = $206&255; + $208 = ($207|0)==(101); + if ($208) { + label = 75; + } else { + $209 = HEAP32[$i>>2]|0; + $210 = HEAP32[$1>>2]|0; + $211 = (($210) + ($209)|0); + $212 = HEAP8[$211>>0]|0; + $213 = $212&255; + $214 = ($213|0)==(69); + if ($214) { + label = 75; + } + } + do { + if ((label|0) == 75) { + $215 = HEAP32[$i>>2]|0; + $216 = (($215) + 1)|0; + $217 = HEAP32[$1>>2]|0; + $218 = (($217) + ($216)|0); + $219 = HEAP8[$218>>0]|0; + $220 = $219&255; + $221 = (136 + ($220)|0); + $222 = HEAP8[$221>>0]|0; + $223 = $222&255; + $224 = $223 & 4; + $225 = ($224|0)!=(0); + if (!($225)) { + $226 = HEAP32[$i>>2]|0; + $227 = (($226) + 1)|0; + $228 = HEAP32[$1>>2]|0; + $229 = (($228) + ($227)|0); + $230 = HEAP8[$229>>0]|0; + $231 = $230&255; + $232 = ($231|0)==(43); + if (!($232)) { + $233 = HEAP32[$i>>2]|0; + $234 = (($233) + 1)|0; + $235 = HEAP32[$1>>2]|0; + $236 = (($235) + ($234)|0); + $237 = HEAP8[$236>>0]|0; + $238 = $237&255; + $239 = ($238|0)==(45); + if (!($239)) { + break; + } + } + $240 = HEAP32[$i>>2]|0; + $241 = (($240) + 2)|0; + $242 = HEAP32[$1>>2]|0; + $243 = (($242) + ($241)|0); + $244 = HEAP8[$243>>0]|0; + $245 = $244&255; + $246 = (136 + ($245)|0); + $247 = HEAP8[$246>>0]|0; + $248 = $247&255; + $249 = $248 & 4; + $250 = ($249|0)!=(0); + if (!($250)) { + break; + } + } + $251 = HEAP32[$i>>2]|0; + $252 = (($251) + 2)|0; + HEAP32[$i>>2] = $252; + while(1) { + $253 = HEAP32[$i>>2]|0; + $254 = HEAP32[$1>>2]|0; + $255 = (($254) + ($253)|0); + $256 = HEAP8[$255>>0]|0; + $257 = $256&255; + $258 = (136 + ($257)|0); + $259 = HEAP8[$258>>0]|0; + $260 = $259&255; + $261 = $260 & 4; + $262 = ($261|0)!=(0); + if (!($262)) { + break; + } + $263 = HEAP32[$i>>2]|0; + $264 = (($263) + 1)|0; + HEAP32[$i>>2] = $264; + } + $265 = HEAP32[$2>>2]|0; + HEAP32[$265>>2] = 133; + } + } while(0); + while(1) { + $266 = HEAP32[$i>>2]|0; + $267 = HEAP32[$1>>2]|0; + $268 = (($267) + ($266)|0); + $269 = HEAP8[$268>>0]|0; + $270 = $269&255; + $271 = (136 + ($270)|0); + $272 = HEAP8[$271>>0]|0; + $273 = $272&255; + $274 = $273 & 70; + $275 = ($274|0)!=(0); + if (!($275)) { + break; + } + $276 = HEAP32[$2>>2]|0; + HEAP32[$276>>2] = 150; + $277 = HEAP32[$i>>2]|0; + $278 = (($277) + 1)|0; + HEAP32[$i>>2] = $278; + } + $279 = HEAP32[$i>>2]|0; + HEAP32[$0>>2] = $279; + $447 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($447|0); +} +function _sqlite3DbStrNDup($db,$z,$n) { + $db = $db|0; + $z = $z|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $zNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $zNew = sp + 12|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $z; + HEAP32[$3>>2] = $n; + $4 = HEAP32[$2>>2]|0; + $5 = ($4|0)==(0|0); + if ($5) { + HEAP32[$0>>2] = 0; + $19 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($19|0); + } + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$3>>2]|0; + $8 = (($7) + 1)|0; + $9 = (_sqlite3DbMallocRaw($6,$8)|0); + HEAP32[$zNew>>2] = $9; + $10 = HEAP32[$zNew>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = HEAP32[$zNew>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = HEAP32[$3>>2]|0; + _memcpy(($12|0),($13|0),($14|0))|0; + $15 = HEAP32[$3>>2]|0; + $16 = HEAP32[$zNew>>2]|0; + $17 = (($16) + ($15)|0); + HEAP8[$17>>0] = 0; + } + $18 = HEAP32[$zNew>>2]|0; + HEAP32[$0>>2] = $18; + $19 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($19|0); +} +function _sqlite3Dequote($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $j = 0, $quote = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 12|0; + $1 = sp; + $quote = sp + 16|0; + $i = sp + 8|0; + $j = sp + 4|0; + HEAP32[$1>>2] = $z; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0|0); + if ($3) { + HEAP32[$0>>2] = -1; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); + } + $4 = HEAP32[$1>>2]|0; + $5 = HEAP8[$4>>0]|0; + HEAP8[$quote>>0] = $5; + $6 = HEAP8[$quote>>0]|0; + $7 = $6 << 24 >> 24; + if ((($7|0) == 91)) { + HEAP8[$quote>>0] = 93; + } else if (!((($7|0) == 96) | (($7|0) == 34) | (($7|0) == 39))) { + HEAP32[$0>>2] = -1; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); + } + HEAP32[$i>>2] = 1; + HEAP32[$j>>2] = 0; + while(1) { + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + ($8)|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11 << 24 >> 24; + $13 = HEAP8[$quote>>0]|0; + $14 = $13 << 24 >> 24; + $15 = ($12|0)==($14|0); + $16 = HEAP32[$i>>2]|0; + if ($15) { + $17 = (($16) + 1)|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + ($17)|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20 << 24 >> 24; + $22 = HEAP8[$quote>>0]|0; + $23 = $22 << 24 >> 24; + $24 = ($21|0)==($23|0); + if (!($24)) { + break; + } + $25 = HEAP8[$quote>>0]|0; + $26 = HEAP32[$j>>2]|0; + $27 = (($26) + 1)|0; + HEAP32[$j>>2] = $27; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + ($26)|0); + HEAP8[$29>>0] = $25; + $30 = HEAP32[$i>>2]|0; + $31 = (($30) + 1)|0; + HEAP32[$i>>2] = $31; + } else { + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + ($16)|0); + $34 = HEAP8[$33>>0]|0; + $35 = HEAP32[$j>>2]|0; + $36 = (($35) + 1)|0; + HEAP32[$j>>2] = $36; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + ($35)|0); + HEAP8[$38>>0] = $34; + } + $39 = HEAP32[$i>>2]|0; + $40 = (($39) + 1)|0; + HEAP32[$i>>2] = $40; + } + $41 = HEAP32[$j>>2]|0; + $42 = HEAP32[$1>>2]|0; + $43 = (($42) + ($41)|0); + HEAP8[$43>>0] = 0; + $44 = HEAP32[$j>>2]|0; + HEAP32[$0>>2] = $44; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); +} +function _juliandayFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0.0, $16 = 0.0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 56|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $x = sp; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = (_isDate($3,$4,$5,$x)|0); + $7 = ($6|0)==(0); + if (!($7)) { + STACKTOP = sp;return; + } + _computeJD($x); + $8 = HEAP32[$0>>2]|0; + $9 = $x; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = (($9) + 4)|0; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = (+($11>>>0)) + (4294967296.0*(+($14|0))); + $16 = $15 / 8.64E+7; + _sqlite3_result_double($8,$16); + STACKTOP = sp;return; +} +function _dateFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $x = 0, $zBuf = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 176|0; + $vararg_buffer = sp + 48|0; + $0 = sp + 68|0; + $1 = sp + 64|0; + $2 = sp + 60|0; + $x = sp; + $zBuf = sp + 72|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = (_isDate($3,$4,$5,$x)|0); + $7 = ($6|0)==(0); + if (!($7)) { + STACKTOP = sp;return; + } + _computeYMD($x); + $8 = (($x) + 8|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($x) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($x) + 16|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$vararg_buffer>>2] = $9; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $11; + $vararg_ptr2 = (($vararg_buffer) + 8|0); + HEAP32[$vararg_ptr2>>2] = $13; + (_sqlite3_snprintf(100,$zBuf,16208,$vararg_buffer)|0); + $14 = HEAP32[$0>>2]|0; + _sqlite3_result_text($14,$zBuf,-1,(-1)); + STACKTOP = sp;return; +} +function _timeFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $x = 0; + var $zBuf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 176|0; + $vararg_buffer = sp + 48|0; + $0 = sp + 68|0; + $1 = sp + 64|0; + $2 = sp + 60|0; + $x = sp; + $zBuf = sp + 72|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = (_isDate($3,$4,$5,$x)|0); + $7 = ($6|0)==(0); + if (!($7)) { + STACKTOP = sp;return; + } + _computeHMS($x); + $8 = (($x) + 20|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($x) + 24|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($x) + 32|0); + $13 = +HEAPF64[$12>>3]; + $14 = (~~(($13))); + HEAP32[$vararg_buffer>>2] = $9; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $11; + $vararg_ptr2 = (($vararg_buffer) + 8|0); + HEAP32[$vararg_ptr2>>2] = $14; + (_sqlite3_snprintf(100,$zBuf,16192,$vararg_buffer)|0); + $15 = HEAP32[$0>>2]|0; + _sqlite3_result_text($15,$zBuf,-1,(-1)); + STACKTOP = sp;return; +} +function _datetimeFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $x = 0, $zBuf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 192|0; + $vararg_buffer = sp + 48|0; + $0 = sp + 80|0; + $1 = sp + 76|0; + $2 = sp + 72|0; + $x = sp; + $zBuf = sp + 84|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = (_isDate($3,$4,$5,$x)|0); + $7 = ($6|0)==(0); + if (!($7)) { + STACKTOP = sp;return; + } + _computeYMD_HMS($x); + $8 = (($x) + 8|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($x) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($x) + 16|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($x) + 20|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($x) + 24|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($x) + 32|0); + $19 = +HEAPF64[$18>>3]; + $20 = (~~(($19))); + HEAP32[$vararg_buffer>>2] = $9; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $11; + $vararg_ptr2 = (($vararg_buffer) + 8|0); + HEAP32[$vararg_ptr2>>2] = $13; + $vararg_ptr3 = (($vararg_buffer) + 12|0); + HEAP32[$vararg_ptr3>>2] = $15; + $vararg_ptr4 = (($vararg_buffer) + 16|0); + HEAP32[$vararg_ptr4>>2] = $17; + $vararg_ptr5 = (($vararg_buffer) + 20|0); + HEAP32[$vararg_ptr5>>2] = $20; + (_sqlite3_snprintf(100,$zBuf,16160,$vararg_buffer)|0); + $21 = HEAP32[$0>>2]|0; + _sqlite3_result_text($21,$zBuf,-1,(-1)); + STACKTOP = sp;return; +} +function _strftimeFunc($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0.0, $187 = 0.0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0.0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0.0, $272 = 0.0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0.0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0, $j = 0, $n = 0, $nDay = 0, $s = 0, $vararg_buffer28 = 0, $wd = 0, $x = 0, $y = 0, $z = 0; + var $zBuf = 0, $zFmt = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 272|0; + $vararg_buffer28 = sp + 112|0; + $0 = sp + 152|0; + $1 = sp + 148|0; + $2 = sp + 144|0; + $x = sp + 64|0; + $n = sp + 48|0; + $i = sp + 140|0; + $j = sp + 136|0; + $z = sp + 156|0; + $db = sp + 124|0; + $zFmt = sp + 120|0; + $zBuf = sp + 160|0; + $s = sp + 56|0; + $nDay = sp + 128|0; + $y = sp; + $wd = sp + 132|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_text($4)|0); + HEAP32[$zFmt>>2] = $5; + $6 = HEAP32[$zFmt>>2]|0; + $7 = ($6|0)==(0|0); + if ($7) { + STACKTOP = sp;return; + } + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) - 1)|0; + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 4|0); + $13 = (_isDate($8,$10,$12,$x)|0); + $14 = ($13|0)!=(0); + if ($14) { + STACKTOP = sp;return; + } + $15 = HEAP32[$0>>2]|0; + $16 = (_sqlite3_context_db_handle($15)|0); + HEAP32[$db>>2] = $16; + HEAP32[$i>>2] = 0; + $17 = $n; + $18 = $17; + HEAP32[$18>>2] = 1; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = 0; + L7: while(1) { + $21 = HEAP32[$i>>2]|0; + $22 = HEAP32[$zFmt>>2]|0; + $23 = (($22) + ($21)|0); + $24 = HEAP8[$23>>0]|0; + $25 = ($24<<24>>24)!=(0); + if (!($25)) { + break; + } + $26 = HEAP32[$i>>2]|0; + $27 = HEAP32[$zFmt>>2]|0; + $28 = (($27) + ($26)|0); + $29 = HEAP8[$28>>0]|0; + $30 = $29 << 24 >> 24; + $31 = ($30|0)==(37); + if ($31) { + $32 = HEAP32[$i>>2]|0; + $33 = (($32) + 1)|0; + $34 = HEAP32[$zFmt>>2]|0; + $35 = (($34) + ($33)|0); + $36 = HEAP8[$35>>0]|0; + $37 = $36 << 24 >> 24; + switch ($37|0) { + case 87: case 83: case 77: case 109: case 72: case 100: { + $38 = $n; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = (($38) + 4)|0; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = (_i64Add(($40|0),($43|0),1,0)|0); + $45 = tempRet0; + $46 = $n; + $47 = $46; + HEAP32[$47>>2] = $44; + $48 = (($46) + 4)|0; + $49 = $48; + HEAP32[$49>>2] = $45; + break; + } + case 37: case 119: { + break; + } + case 74: case 115: { + $86 = $n; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = (($86) + 4)|0; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + $92 = (_i64Add(($88|0),($91|0),50,0)|0); + $93 = tempRet0; + $94 = $n; + $95 = $94; + HEAP32[$95>>2] = $92; + $96 = (($94) + 4)|0; + $97 = $96; + HEAP32[$97>>2] = $93; + break; + } + case 106: { + $62 = $n; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (($62) + 4)|0; + $66 = $65; + $67 = HEAP32[$66>>2]|0; + $68 = (_i64Add(($64|0),($67|0),3,0)|0); + $69 = tempRet0; + $70 = $n; + $71 = $70; + HEAP32[$71>>2] = $68; + $72 = (($70) + 4)|0; + $73 = $72; + HEAP32[$73>>2] = $69; + break; + } + case 89: { + $74 = $n; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = (($74) + 4)|0; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = (_i64Add(($76|0),($79|0),8,0)|0); + $81 = tempRet0; + $82 = $n; + $83 = $82; + HEAP32[$83>>2] = $80; + $84 = (($82) + 4)|0; + $85 = $84; + HEAP32[$85>>2] = $81; + break; + } + case 102: { + $50 = $n; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (($50) + 4)|0; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + $56 = (_i64Add(($52|0),($55|0),8,0)|0); + $57 = tempRet0; + $58 = $n; + $59 = $58; + HEAP32[$59>>2] = $56; + $60 = (($58) + 4)|0; + $61 = $60; + HEAP32[$61>>2] = $57; + break; + } + default: { + label = 43; + break L7; + } + } + $98 = HEAP32[$i>>2]|0; + $99 = (($98) + 1)|0; + HEAP32[$i>>2] = $99; + } + $100 = HEAP32[$i>>2]|0; + $101 = (($100) + 1)|0; + HEAP32[$i>>2] = $101; + $102 = $n; + $103 = $102; + $104 = HEAP32[$103>>2]|0; + $105 = (($102) + 4)|0; + $106 = $105; + $107 = HEAP32[$106>>2]|0; + $108 = (_i64Add(($104|0),($107|0),1,0)|0); + $109 = tempRet0; + $110 = $n; + $111 = $110; + HEAP32[$111>>2] = $108; + $112 = (($110) + 4)|0; + $113 = $112; + HEAP32[$113>>2] = $109; + } + if ((label|0) == 43) { + STACKTOP = sp;return; + } + $114 = $n; + $115 = $114; + $116 = HEAP32[$115>>2]|0; + $117 = (($114) + 4)|0; + $118 = $117; + $119 = HEAP32[$118>>2]|0; + $120 = ($119>>>0)<(0); + $121 = ($119|0)==(0); + $122 = ($116>>>0)<(100); + $123 = $121 & $122; + $124 = $120 | $123; + if ($124) { + HEAP32[$z>>2] = $zBuf; + } else { + $125 = $n; + $126 = $125; + $127 = HEAP32[$126>>2]|0; + $128 = (($125) + 4)|0; + $129 = $128; + $130 = HEAP32[$129>>2]|0; + $131 = HEAP32[$db>>2]|0; + $132 = (($131) + 88|0); + $133 = HEAP32[$132>>2]|0; + $134 = ($133|0)<(0); + $135 = $134 << 31 >> 31; + $136 = ($130>>>0)>($135>>>0); + $137 = ($130|0)==($135|0); + $138 = ($127>>>0)>($133>>>0); + $139 = $137 & $138; + $140 = $136 | $139; + if ($140) { + $141 = HEAP32[$0>>2]|0; + _sqlite3_result_error_toobig($141); + STACKTOP = sp;return; + } + $142 = HEAP32[$db>>2]|0; + $143 = $n; + $144 = $143; + $145 = HEAP32[$144>>2]|0; + $146 = (($143) + 4)|0; + $147 = $146; + $148 = HEAP32[$147>>2]|0; + $149 = (_sqlite3DbMallocRaw($142,$145)|0); + HEAP32[$z>>2] = $149; + $150 = HEAP32[$z>>2]|0; + $151 = ($150|0)==(0|0); + if ($151) { + $152 = HEAP32[$0>>2]|0; + _sqlite3_result_error_nomem($152); + STACKTOP = sp;return; + } + } + _computeJD($x); + _computeYMD_HMS($x); + HEAP32[$j>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $153 = HEAP32[$i>>2]|0; + $154 = HEAP32[$zFmt>>2]|0; + $155 = (($154) + ($153)|0); + $156 = HEAP8[$155>>0]|0; + $157 = ($156<<24>>24)!=(0); + if (!($157)) { + break; + } + $158 = HEAP32[$i>>2]|0; + $159 = HEAP32[$zFmt>>2]|0; + $160 = (($159) + ($158)|0); + $161 = HEAP8[$160>>0]|0; + $162 = $161 << 24 >> 24; + $163 = ($162|0)!=(37); + $164 = HEAP32[$i>>2]|0; + L36: do { + if ($163) { + $165 = HEAP32[$zFmt>>2]|0; + $166 = (($165) + ($164)|0); + $167 = HEAP8[$166>>0]|0; + $168 = HEAP32[$j>>2]|0; + $169 = (($168) + 1)|0; + HEAP32[$j>>2] = $169; + $170 = HEAP32[$z>>2]|0; + $171 = (($170) + ($168)|0); + HEAP8[$171>>0] = $167; + } else { + $172 = (($164) + 1)|0; + HEAP32[$i>>2] = $172; + $173 = HEAP32[$i>>2]|0; + $174 = HEAP32[$zFmt>>2]|0; + $175 = (($174) + ($173)|0); + $176 = HEAP8[$175>>0]|0; + $177 = $176 << 24 >> 24; + do { + switch ($177|0) { + case 119: { + $324 = $x; + $325 = $324; + $326 = HEAP32[$325>>2]|0; + $327 = (($324) + 4)|0; + $328 = $327; + $329 = HEAP32[$328>>2]|0; + $330 = (_i64Add(($326|0),($329|0),129600000,0)|0); + $331 = tempRet0; + $332 = (___divdi3(($330|0),($331|0),86400000,0)|0); + $333 = tempRet0; + $334 = (___remdi3(($332|0),($333|0),7,0)|0); + $335 = tempRet0; + $336 = $334&255; + $337 = $336 << 24 >> 24; + $338 = (($337) + 48)|0; + $339 = $338&255; + $340 = HEAP32[$j>>2]|0; + $341 = (($340) + 1)|0; + HEAP32[$j>>2] = $341; + $342 = HEAP32[$z>>2]|0; + $343 = (($342) + ($340)|0); + HEAP8[$343>>0] = $339; + break L36; + break; + } + case 106: case 87: { + dest=$y+0|0; src=$x+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $206 = (($y) + 42|0); + HEAP8[$206>>0] = 0; + $207 = (($y) + 12|0); + HEAP32[$207>>2] = 1; + $208 = (($y) + 16|0); + HEAP32[$208>>2] = 1; + _computeJD($y); + $209 = $x; + $210 = $209; + $211 = HEAP32[$210>>2]|0; + $212 = (($209) + 4)|0; + $213 = $212; + $214 = HEAP32[$213>>2]|0; + $215 = $y; + $216 = $215; + $217 = HEAP32[$216>>2]|0; + $218 = (($215) + 4)|0; + $219 = $218; + $220 = HEAP32[$219>>2]|0; + $221 = (_i64Subtract(($211|0),($214|0),($217|0),($220|0))|0); + $222 = tempRet0; + $223 = (_i64Add(($221|0),($222|0),43200000,0)|0); + $224 = tempRet0; + $225 = (___divdi3(($223|0),($224|0),86400000,0)|0); + $226 = tempRet0; + HEAP32[$nDay>>2] = $225; + $227 = HEAP32[$i>>2]|0; + $228 = HEAP32[$zFmt>>2]|0; + $229 = (($228) + ($227)|0); + $230 = HEAP8[$229>>0]|0; + $231 = $230 << 24 >> 24; + $232 = ($231|0)==(87); + if ($232) { + $233 = $x; + $234 = $233; + $235 = HEAP32[$234>>2]|0; + $236 = (($233) + 4)|0; + $237 = $236; + $238 = HEAP32[$237>>2]|0; + $239 = (_i64Add(($235|0),($238|0),43200000,0)|0); + $240 = tempRet0; + $241 = (___divdi3(($239|0),($240|0),86400000,0)|0); + $242 = tempRet0; + $243 = (___remdi3(($241|0),($242|0),7,0)|0); + $244 = tempRet0; + HEAP32[$wd>>2] = $243; + $245 = HEAP32[$j>>2]|0; + $246 = HEAP32[$z>>2]|0; + $247 = (($246) + ($245)|0); + $248 = HEAP32[$nDay>>2]|0; + $249 = (($248) + 7)|0; + $250 = HEAP32[$wd>>2]|0; + $251 = (($249) - ($250))|0; + $252 = (($251|0) / 7)&-1; + HEAP32[$vararg_buffer28>>2] = $252; + (_sqlite3_snprintf(3,$247,15960,$vararg_buffer28)|0); + $253 = HEAP32[$j>>2]|0; + $254 = (($253) + 2)|0; + HEAP32[$j>>2] = $254; + break L36; + } else { + $255 = HEAP32[$j>>2]|0; + $256 = HEAP32[$z>>2]|0; + $257 = (($256) + ($255)|0); + $258 = HEAP32[$nDay>>2]|0; + $259 = (($258) + 1)|0; + HEAP32[$vararg_buffer28>>2] = $259; + (_sqlite3_snprintf(4,$257,15976,$vararg_buffer28)|0); + $260 = HEAP32[$j>>2]|0; + $261 = (($260) + 3)|0; + HEAP32[$j>>2] = $261; + break L36; + } + break; + } + case 102: { + $185 = (($x) + 32|0); + $186 = +HEAPF64[$185>>3]; + HEAPF64[$s>>3] = $186; + $187 = +HEAPF64[$s>>3]; + $188 = $187 > 59.9990000000000023306; + if ($188) { + HEAPF64[$s>>3] = 59.9990000000000023306; + } + $189 = HEAP32[$j>>2]|0; + $190 = HEAP32[$z>>2]|0; + $191 = (($190) + ($189)|0); + $192 = +HEAPF64[$s>>3]; + HEAPF64[tempDoublePtr>>3]=$192;HEAP32[$vararg_buffer28>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_buffer28+4>>2]=HEAP32[tempDoublePtr+4>>2]; + (_sqlite3_snprintf(7,$191,15968,$vararg_buffer28)|0); + $193 = HEAP32[$j>>2]|0; + $194 = HEAP32[$z>>2]|0; + $195 = (($194) + ($193)|0); + $196 = (_sqlite3Strlen30($195)|0); + $197 = HEAP32[$j>>2]|0; + $198 = (($197) + ($196))|0; + HEAP32[$j>>2] = $198; + break L36; + break; + } + case 83: { + $316 = HEAP32[$j>>2]|0; + $317 = HEAP32[$z>>2]|0; + $318 = (($317) + ($316)|0); + $319 = (($x) + 32|0); + $320 = +HEAPF64[$319>>3]; + $321 = (~~(($320))); + HEAP32[$vararg_buffer28>>2] = $321; + (_sqlite3_snprintf(3,$318,15960,$vararg_buffer28)|0); + $322 = HEAP32[$j>>2]|0; + $323 = (($322) + 2)|0; + HEAP32[$j>>2] = $323; + break L36; + break; + } + case 109: { + $279 = HEAP32[$j>>2]|0; + $280 = HEAP32[$z>>2]|0; + $281 = (($280) + ($279)|0); + $282 = (($x) + 12|0); + $283 = HEAP32[$282>>2]|0; + HEAP32[$vararg_buffer28>>2] = $283; + (_sqlite3_snprintf(3,$281,15960,$vararg_buffer28)|0); + $284 = HEAP32[$j>>2]|0; + $285 = (($284) + 2)|0; + HEAP32[$j>>2] = $285; + break L36; + break; + } + case 74: { + $262 = HEAP32[$j>>2]|0; + $263 = HEAP32[$z>>2]|0; + $264 = (($263) + ($262)|0); + $265 = $x; + $266 = $265; + $267 = HEAP32[$266>>2]|0; + $268 = (($265) + 4)|0; + $269 = $268; + $270 = HEAP32[$269>>2]|0; + $271 = (+($267>>>0)) + (4294967296.0*(+($270|0))); + $272 = $271 / 8.64E+7; + HEAPF64[tempDoublePtr>>3]=$272;HEAP32[$vararg_buffer28>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_buffer28+4>>2]=HEAP32[tempDoublePtr+4>>2]; + (_sqlite3_snprintf(20,$264,15984,$vararg_buffer28)|0); + $273 = HEAP32[$j>>2]|0; + $274 = HEAP32[$z>>2]|0; + $275 = (($274) + ($273)|0); + $276 = (_sqlite3Strlen30($275)|0); + $277 = HEAP32[$j>>2]|0; + $278 = (($277) + ($276))|0; + HEAP32[$j>>2] = $278; + break L36; + break; + } + case 115: { + $293 = HEAP32[$j>>2]|0; + $294 = HEAP32[$z>>2]|0; + $295 = (($294) + ($293)|0); + $296 = $x; + $297 = $296; + $298 = HEAP32[$297>>2]|0; + $299 = (($296) + 4)|0; + $300 = $299; + $301 = HEAP32[$300>>2]|0; + $302 = (___divdi3(($298|0),($301|0),1000,0)|0); + $303 = tempRet0; + $304 = (_i64Subtract(($302|0),($303|0),413362496,49)|0); + $305 = tempRet0; + $306 = $vararg_buffer28; + $307 = $306; + HEAP32[$307>>2] = $304; + $308 = (($306) + 4)|0; + $309 = $308; + HEAP32[$309>>2] = $305; + (_sqlite3_snprintf(30,$295,15992,$vararg_buffer28)|0); + $310 = HEAP32[$j>>2]|0; + $311 = HEAP32[$z>>2]|0; + $312 = (($311) + ($310)|0); + $313 = (_sqlite3Strlen30($312)|0); + $314 = HEAP32[$j>>2]|0; + $315 = (($314) + ($313))|0; + HEAP32[$j>>2] = $315; + break L36; + break; + } + case 72: { + $199 = HEAP32[$j>>2]|0; + $200 = HEAP32[$z>>2]|0; + $201 = (($200) + ($199)|0); + $202 = (($x) + 20|0); + $203 = HEAP32[$202>>2]|0; + HEAP32[$vararg_buffer28>>2] = $203; + (_sqlite3_snprintf(3,$201,15960,$vararg_buffer28)|0); + $204 = HEAP32[$j>>2]|0; + $205 = (($204) + 2)|0; + HEAP32[$j>>2] = $205; + break L36; + break; + } + case 89: { + $344 = HEAP32[$j>>2]|0; + $345 = HEAP32[$z>>2]|0; + $346 = (($345) + ($344)|0); + $347 = (($x) + 8|0); + $348 = HEAP32[$347>>2]|0; + HEAP32[$vararg_buffer28>>2] = $348; + (_sqlite3_snprintf(5,$346,16000,$vararg_buffer28)|0); + $349 = HEAP32[$j>>2]|0; + $350 = HEAP32[$z>>2]|0; + $351 = (($350) + ($349)|0); + $352 = (_sqlite3Strlen30($351)|0); + $353 = HEAP32[$j>>2]|0; + $354 = (($353) + ($352))|0; + HEAP32[$j>>2] = $354; + break L36; + break; + } + case 100: { + $178 = HEAP32[$j>>2]|0; + $179 = HEAP32[$z>>2]|0; + $180 = (($179) + ($178)|0); + $181 = (($x) + 16|0); + $182 = HEAP32[$181>>2]|0; + HEAP32[$vararg_buffer28>>2] = $182; + (_sqlite3_snprintf(3,$180,15960,$vararg_buffer28)|0); + $183 = HEAP32[$j>>2]|0; + $184 = (($183) + 2)|0; + HEAP32[$j>>2] = $184; + break L36; + break; + } + case 77: { + $286 = HEAP32[$j>>2]|0; + $287 = HEAP32[$z>>2]|0; + $288 = (($287) + ($286)|0); + $289 = (($x) + 24|0); + $290 = HEAP32[$289>>2]|0; + HEAP32[$vararg_buffer28>>2] = $290; + (_sqlite3_snprintf(3,$288,15960,$vararg_buffer28)|0); + $291 = HEAP32[$j>>2]|0; + $292 = (($291) + 2)|0; + HEAP32[$j>>2] = $292; + break L36; + break; + } + default: { + $355 = HEAP32[$j>>2]|0; + $356 = (($355) + 1)|0; + HEAP32[$j>>2] = $356; + $357 = HEAP32[$z>>2]|0; + $358 = (($357) + ($355)|0); + HEAP8[$358>>0] = 37; + break L36; + } + } + } while(0); + } + } while(0); + $359 = HEAP32[$i>>2]|0; + $360 = (($359) + 1)|0; + HEAP32[$i>>2] = $360; + } + $361 = HEAP32[$j>>2]|0; + $362 = HEAP32[$z>>2]|0; + $363 = (($362) + ($361)|0); + HEAP8[$363>>0] = 0; + $364 = HEAP32[$0>>2]|0; + $365 = HEAP32[$z>>2]|0; + $366 = HEAP32[$z>>2]|0; + $367 = ($366|0)==($zBuf|0); + $368 = $367 ? (-1) : 39; + _sqlite3_result_text($364,$365,-1,$368); + STACKTOP = sp;return; +} +function _ctimeFunc($context,$NotUsed,$NotUsed2) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $NotUsed2 = $NotUsed2|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $NotUsed2; + $3 = HEAP32[$0>>2]|0; + _timeFunc($3,0,0); + STACKTOP = sp;return; +} +function _ctimestampFunc($context,$NotUsed,$NotUsed2) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $NotUsed2 = $NotUsed2|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $NotUsed2; + $3 = HEAP32[$0>>2]|0; + _datetimeFunc($3,0,0); + STACKTOP = sp;return; +} +function _cdateFunc($context,$NotUsed,$NotUsed2) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $NotUsed2 = $NotUsed2|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $NotUsed2; + $3 = HEAP32[$0>>2]|0; + _dateFunc($3,0,0); + STACKTOP = sp;return; +} +function _isDate($context,$argc,$argv,$p) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0.0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $eType = 0; + var $i = 0, $z = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $i = sp + 16|0; + $z = sp + 20|0; + $eType = sp + 24|0; + HEAP32[$1>>2] = $context; + HEAP32[$2>>2] = $argc; + HEAP32[$3>>2] = $argv; + HEAP32[$4>>2] = $p; + $5 = HEAP32[$4>>2]|0; + dest=$5+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $6 = HEAP32[$2>>2]|0; + $7 = ($6|0)==(0); + if ($7) { + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$4>>2]|0; + $10 = (_setDateTimeToCurrent($8,$9)|0); + HEAP32[$0>>2] = $10; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); + } + $11 = HEAP32[$3>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = (_sqlite3_value_type($12)|0); + HEAP32[$eType>>2] = $13; + $14 = ($13|0)==(2); + do { + if ($14) { + label = 5; + } else { + $15 = HEAP32[$eType>>2]|0; + $16 = ($15|0)==(1); + if ($16) { + label = 5; + } else { + $31 = HEAP32[$3>>2]|0; + $32 = HEAP32[$31>>2]|0; + $33 = (_sqlite3_value_text($32)|0); + HEAP32[$z>>2] = $33; + $34 = HEAP32[$z>>2]|0; + $35 = ($34|0)!=(0|0); + if ($35) { + $36 = HEAP32[$1>>2]|0; + $37 = HEAP32[$z>>2]|0; + $38 = HEAP32[$4>>2]|0; + $39 = (_parseDateOrTime($36,$37,$38)|0); + $40 = ($39|0)!=(0); + if (!($40)) { + break; + } + } + HEAP32[$0>>2] = 1; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); + } + } + } while(0); + if ((label|0) == 5) { + $17 = HEAP32[$3>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = (+_sqlite3_value_double($18)); + $20 = $19 * 8.64E+7; + $21 = $20 + 0.5; + $22 = (~~$21)>>>0; + $23 = +Math_abs($21) >= 1.0 ? $21 > 0.0 ? (Math_min(+Math_floor($21 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($21 - +(~~$21 >>> 0)) / 4294967296.0) >>> 0 : 0; + $24 = HEAP32[$4>>2]|0; + $25 = $24; + $26 = $25; + HEAP32[$26>>2] = $22; + $27 = (($25) + 4)|0; + $28 = $27; + HEAP32[$28>>2] = $23; + $29 = HEAP32[$4>>2]|0; + $30 = (($29) + 42|0); + HEAP8[$30>>0] = 1; + } + HEAP32[$i>>2] = 1; + while(1) { + $41 = HEAP32[$i>>2]|0; + $42 = HEAP32[$2>>2]|0; + $43 = ($41|0)<($42|0); + if (!($43)) { + label = 15; + break; + } + $44 = HEAP32[$i>>2]|0; + $45 = HEAP32[$3>>2]|0; + $46 = (($45) + ($44<<2)|0); + $47 = HEAP32[$46>>2]|0; + $48 = (_sqlite3_value_text($47)|0); + HEAP32[$z>>2] = $48; + $49 = HEAP32[$z>>2]|0; + $50 = ($49|0)==(0|0); + if ($50) { + label = 13; + break; + } + $51 = HEAP32[$1>>2]|0; + $52 = HEAP32[$z>>2]|0; + $53 = HEAP32[$4>>2]|0; + $54 = (_parseModifier($51,$52,$53)|0); + $55 = ($54|0)!=(0); + if ($55) { + label = 13; + break; + } + $56 = HEAP32[$i>>2]|0; + $57 = (($56) + 1)|0; + HEAP32[$i>>2] = $57; + } + if ((label|0) == 13) { + HEAP32[$0>>2] = 1; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); + } + else if ((label|0) == 15) { + HEAP32[$0>>2] = 0; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); + } + return 0|0; +} +function _computeJD($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0.0, $47 = 0.0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0.0, $76 = 0.0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $A = 0, $B = 0, $D = 0, $M = 0, $X1 = 0, $X2 = 0, $Y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $Y = sp; + $M = sp + 4|0; + $D = sp + 8|0; + $A = sp + 12|0; + $B = sp + 16|0; + $X1 = sp + 20|0; + $X2 = sp + 24|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 42|0); + $3 = HEAP8[$2>>0]|0; + $4 = ($3<<24>>24)!=(0); + if ($4) { + STACKTOP = sp;return; + } + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 40|0); + $7 = HEAP8[$6>>0]|0; + $8 = ($7<<24>>24)!=(0); + if ($8) { + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 8|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$Y>>2] = $11; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 12|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$M>>2] = $14; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 16|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$D>>2] = $17; + } else { + HEAP32[$Y>>2] = 2000; + HEAP32[$M>>2] = 1; + HEAP32[$D>>2] = 1; + } + $18 = HEAP32[$M>>2]|0; + $19 = ($18|0)<=(2); + if ($19) { + $20 = HEAP32[$Y>>2]|0; + $21 = (($20) + -1)|0; + HEAP32[$Y>>2] = $21; + $22 = HEAP32[$M>>2]|0; + $23 = (($22) + 12)|0; + HEAP32[$M>>2] = $23; + } + $24 = HEAP32[$Y>>2]|0; + $25 = (($24|0) / 100)&-1; + HEAP32[$A>>2] = $25; + $26 = HEAP32[$A>>2]|0; + $27 = (2 - ($26))|0; + $28 = HEAP32[$A>>2]|0; + $29 = (($28|0) / 4)&-1; + $30 = (($27) + ($29))|0; + HEAP32[$B>>2] = $30; + $31 = HEAP32[$Y>>2]|0; + $32 = (($31) + 4716)|0; + $33 = ($32*36525)|0; + $34 = (($33|0) / 100)&-1; + HEAP32[$X1>>2] = $34; + $35 = HEAP32[$M>>2]|0; + $36 = (($35) + 1)|0; + $37 = ($36*306001)|0; + $38 = (($37|0) / 10000)&-1; + HEAP32[$X2>>2] = $38; + $39 = HEAP32[$X1>>2]|0; + $40 = HEAP32[$X2>>2]|0; + $41 = (($39) + ($40))|0; + $42 = HEAP32[$D>>2]|0; + $43 = (($41) + ($42))|0; + $44 = HEAP32[$B>>2]|0; + $45 = (($43) + ($44))|0; + $46 = (+($45|0)); + $47 = $46 - 1524.5; + $48 = $47 * 8.64E+7; + $49 = (~~$48)>>>0; + $50 = +Math_abs($48) >= 1.0 ? $48 > 0.0 ? (Math_min(+Math_floor($48 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($48 - +(~~$48 >>> 0)) / 4294967296.0) >>> 0 : 0; + $51 = HEAP32[$0>>2]|0; + $52 = $51; + $53 = $52; + HEAP32[$53>>2] = $49; + $54 = (($52) + 4)|0; + $55 = $54; + HEAP32[$55>>2] = $50; + $56 = HEAP32[$0>>2]|0; + $57 = (($56) + 42|0); + HEAP8[$57>>0] = 1; + $58 = HEAP32[$0>>2]|0; + $59 = (($58) + 41|0); + $60 = HEAP8[$59>>0]|0; + $61 = ($60<<24>>24)!=(0); + if (!($61)) { + STACKTOP = sp;return; + } + $62 = HEAP32[$0>>2]|0; + $63 = (($62) + 20|0); + $64 = HEAP32[$63>>2]|0; + $65 = Math_imul($64, 3600000)|0; + $66 = HEAP32[$0>>2]|0; + $67 = (($66) + 24|0); + $68 = HEAP32[$67>>2]|0; + $69 = ($68*60000)|0; + $70 = (($65) + ($69))|0; + $71 = ($70|0)<(0); + $72 = $71 << 31 >> 31; + $73 = HEAP32[$0>>2]|0; + $74 = (($73) + 32|0); + $75 = +HEAPF64[$74>>3]; + $76 = $75 * 1000.0; + $77 = (~~$76)>>>0; + $78 = +Math_abs($76) >= 1.0 ? $76 > 0.0 ? (Math_min(+Math_floor($76 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($76 - +(~~$76 >>> 0)) / 4294967296.0) >>> 0 : 0; + $79 = (_i64Add(($70|0),($72|0),($77|0),($78|0))|0); + $80 = tempRet0; + $81 = HEAP32[$0>>2]|0; + $82 = $81; + $83 = $82; + $84 = HEAP32[$83>>2]|0; + $85 = (($82) + 4)|0; + $86 = $85; + $87 = HEAP32[$86>>2]|0; + $88 = (_i64Add(($84|0),($87|0),($79|0),($80|0))|0); + $89 = tempRet0; + $90 = $81; + $91 = $90; + HEAP32[$91>>2] = $88; + $92 = (($90) + 4)|0; + $93 = $92; + HEAP32[$93>>2] = $89; + $94 = HEAP32[$0>>2]|0; + $95 = (($94) + 43|0); + $96 = HEAP8[$95>>0]|0; + $97 = ($96<<24>>24)!=(0); + if (!($97)) { + STACKTOP = sp;return; + } + $98 = HEAP32[$0>>2]|0; + $99 = (($98) + 28|0); + $100 = HEAP32[$99>>2]|0; + $101 = ($100*60000)|0; + $102 = ($101|0)<(0); + $103 = $102 << 31 >> 31; + $104 = HEAP32[$0>>2]|0; + $105 = $104; + $106 = $105; + $107 = HEAP32[$106>>2]|0; + $108 = (($105) + 4)|0; + $109 = $108; + $110 = HEAP32[$109>>2]|0; + $111 = (_i64Subtract(($107|0),($110|0),($101|0),($103|0))|0); + $112 = tempRet0; + $113 = $104; + $114 = $113; + HEAP32[$114>>2] = $111; + $115 = (($113) + 4)|0; + $116 = $115; + HEAP32[$116>>2] = $112; + $117 = HEAP32[$0>>2]|0; + $118 = (($117) + 40|0); + HEAP8[$118>>0] = 0; + $119 = HEAP32[$0>>2]|0; + $120 = (($119) + 41|0); + HEAP8[$120>>0] = 0; + $121 = HEAP32[$0>>2]|0; + $122 = (($121) + 43|0); + HEAP8[$122>>0] = 0; + STACKTOP = sp;return; +} +function _computeYMD_HMS($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + _computeYMD($1); + $2 = HEAP32[$0>>2]|0; + _computeHMS($2); + STACKTOP = sp;return; +} +function _computeYMD($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0.0; + var $27 = 0.0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0.0, $41 = 0.0, $42 = 0.0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0.0, $52 = 0, $53 = 0, $54 = 0.0, $55 = 0.0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $9 = 0, $A = 0, $B = 0, $C = 0, $D = 0, $E = 0, $X1 = 0, $Z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $Z = sp; + $A = sp + 4|0; + $B = sp + 8|0; + $C = sp + 12|0; + $D = sp + 16|0; + $E = sp + 20|0; + $X1 = sp + 24|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 40|0); + $3 = HEAP8[$2>>0]|0; + $4 = ($3<<24>>24)!=(0); + if ($4) { + STACKTOP = sp;return; + } + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 42|0); + $7 = HEAP8[$6>>0]|0; + $8 = ($7<<24>>24)!=(0); + $9 = HEAP32[$0>>2]|0; + if ($8) { + $15 = $9; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = (($15) + 4)|0; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = (_i64Add(($17|0),($20|0),43200000,0)|0); + $22 = tempRet0; + $23 = (___divdi3(($21|0),($22|0),86400000,0)|0); + $24 = tempRet0; + HEAP32[$Z>>2] = $23; + $25 = HEAP32[$Z>>2]|0; + $26 = (+($25|0)); + $27 = $26 - 1867216.25; + $28 = $27 / 36524.25; + $29 = (~~(($28))); + HEAP32[$A>>2] = $29; + $30 = HEAP32[$Z>>2]|0; + $31 = (($30) + 1)|0; + $32 = HEAP32[$A>>2]|0; + $33 = (($31) + ($32))|0; + $34 = HEAP32[$A>>2]|0; + $35 = (($34|0) / 4)&-1; + $36 = (($33) - ($35))|0; + HEAP32[$A>>2] = $36; + $37 = HEAP32[$A>>2]|0; + $38 = (($37) + 1524)|0; + HEAP32[$B>>2] = $38; + $39 = HEAP32[$B>>2]|0; + $40 = (+($39|0)); + $41 = $40 - 122.099999999999994316; + $42 = $41 / 365.25; + $43 = (~~(($42))); + HEAP32[$C>>2] = $43; + $44 = HEAP32[$C>>2]|0; + $45 = ($44*36525)|0; + $46 = (($45|0) / 100)&-1; + HEAP32[$D>>2] = $46; + $47 = HEAP32[$B>>2]|0; + $48 = HEAP32[$D>>2]|0; + $49 = (($47) - ($48))|0; + $50 = (+($49|0)); + $51 = $50 / 30.600100000000001188; + $52 = (~~(($51))); + HEAP32[$E>>2] = $52; + $53 = HEAP32[$E>>2]|0; + $54 = (+($53|0)); + $55 = 30.600100000000001188 * $54; + $56 = (~~(($55))); + HEAP32[$X1>>2] = $56; + $57 = HEAP32[$B>>2]|0; + $58 = HEAP32[$D>>2]|0; + $59 = (($57) - ($58))|0; + $60 = HEAP32[$X1>>2]|0; + $61 = (($59) - ($60))|0; + $62 = HEAP32[$0>>2]|0; + $63 = (($62) + 16|0); + HEAP32[$63>>2] = $61; + $64 = HEAP32[$E>>2]|0; + $65 = ($64|0)<(14); + $66 = HEAP32[$E>>2]|0; + $67 = (($66) - 1)|0; + $68 = (($66) - 13)|0; + $69 = $65 ? $67 : $68; + $70 = HEAP32[$0>>2]|0; + $71 = (($70) + 12|0); + HEAP32[$71>>2] = $69; + $72 = HEAP32[$0>>2]|0; + $73 = (($72) + 12|0); + $74 = HEAP32[$73>>2]|0; + $75 = ($74|0)>(2); + $76 = HEAP32[$C>>2]|0; + $77 = (($76) - 4716)|0; + $78 = (($76) - 4715)|0; + $79 = $75 ? $77 : $78; + $80 = HEAP32[$0>>2]|0; + $81 = (($80) + 8|0); + HEAP32[$81>>2] = $79; + } else { + $10 = (($9) + 8|0); + HEAP32[$10>>2] = 2000; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 12|0); + HEAP32[$12>>2] = 1; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 16|0); + HEAP32[$14>>2] = 1; + } + $82 = HEAP32[$0>>2]|0; + $83 = (($82) + 40|0); + HEAP8[$83>>0] = 1; + STACKTOP = sp;return; +} +function _computeHMS($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0; + var $27 = 0.0, $28 = 0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0.0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0.0, $53 = 0, $54 = 0, $55 = 0.0, $56 = 0.0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $s = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $s = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 41|0); + $3 = HEAP8[$2>>0]|0; + $4 = ($3<<24>>24)!=(0); + if ($4) { + STACKTOP = sp;return; + } + $5 = HEAP32[$0>>2]|0; + _computeJD($5); + $6 = HEAP32[$0>>2]|0; + $7 = $6; + $8 = $7; + $9 = HEAP32[$8>>2]|0; + $10 = (($7) + 4)|0; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (_i64Add(($9|0),($12|0),43200000,0)|0); + $14 = tempRet0; + $15 = (___remdi3(($13|0),($14|0),86400000,0)|0); + $16 = tempRet0; + HEAP32[$s>>2] = $15; + $17 = HEAP32[$s>>2]|0; + $18 = (+($17|0)); + $19 = $18 / 1000.0; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 32|0); + HEAPF64[$21>>3] = $19; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 32|0); + $24 = +HEAPF64[$23>>3]; + $25 = (~~(($24))); + HEAP32[$s>>2] = $25; + $26 = HEAP32[$s>>2]|0; + $27 = (+($26|0)); + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 32|0); + $30 = +HEAPF64[$29>>3]; + $31 = $30 - $27; + HEAPF64[$29>>3] = $31; + $32 = HEAP32[$s>>2]|0; + $33 = (($32|0) / 3600)&-1; + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 20|0); + HEAP32[$35>>2] = $33; + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + 20|0); + $38 = HEAP32[$37>>2]|0; + $39 = ($38*3600)|0; + $40 = HEAP32[$s>>2]|0; + $41 = (($40) - ($39))|0; + HEAP32[$s>>2] = $41; + $42 = HEAP32[$s>>2]|0; + $43 = (($42|0) / 60)&-1; + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 24|0); + HEAP32[$45>>2] = $43; + $46 = HEAP32[$s>>2]|0; + $47 = HEAP32[$0>>2]|0; + $48 = (($47) + 24|0); + $49 = HEAP32[$48>>2]|0; + $50 = ($49*60)|0; + $51 = (($46) - ($50))|0; + $52 = (+($51|0)); + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 32|0); + $55 = +HEAPF64[$54>>3]; + $56 = $55 + $52; + HEAPF64[$54>>3] = $56; + $57 = HEAP32[$0>>2]|0; + $58 = (($57) + 41|0); + HEAP8[$58>>0] = 1; + STACKTOP = sp;return; +} +function _setDateTimeToCurrent($context,$p) { + $context = $context|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$1>>2] = $context; + HEAP32[$2>>2] = $p; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3StmtCurrentTime($3)|0); + $5 = tempRet0; + $6 = HEAP32[$2>>2]|0; + $7 = $6; + $8 = $7; + HEAP32[$8>>2] = $4; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = $5; + $11 = HEAP32[$2>>2]|0; + $12 = $11; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = (($12) + 4)|0; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)>(0); + $19 = ($17|0)==(0); + $20 = ($14>>>0)>(0); + $21 = $19 & $20; + $22 = $18 | $21; + if ($22) { + $23 = HEAP32[$2>>2]|0; + $24 = (($23) + 42|0); + HEAP8[$24>>0] = 1; + HEAP32[$0>>2] = 0; + $25 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($25|0); + } else { + HEAP32[$0>>2] = 1; + $25 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($25|0); + } + return 0|0; +} +function _parseDateOrTime($context,$zDate,$p) { + $context = $context|0; + $zDate = $zDate|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0.0, $24 = 0.0, $25 = 0.0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp + 16|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $r = sp; + HEAP32[$1>>2] = $context; + HEAP32[$2>>2] = $zDate; + HEAP32[$3>>2] = $p; + $4 = HEAP32[$2>>2]|0; + $5 = HEAP32[$3>>2]|0; + $6 = (_parseYyyyMmDd($4,$5)|0); + $7 = ($6|0)==(0); + if ($7) { + HEAP32[$0>>2] = 0; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); + } + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$3>>2]|0; + $10 = (_parseHhMmSs($8,$9)|0); + $11 = ($10|0)==(0); + if ($11) { + HEAP32[$0>>2] = 0; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); + } + $12 = HEAP32[$2>>2]|0; + $13 = (_sqlite3_stricmp($12,16152)|0); + $14 = ($13|0)==(0); + if ($14) { + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$3>>2]|0; + $17 = (_setDateTimeToCurrent($15,$16)|0); + HEAP32[$0>>2] = $17; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); + } + $18 = HEAP32[$2>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = (_sqlite3Strlen30($19)|0); + $21 = (_sqlite3AtoF($18,$r,$20,1)|0); + $22 = ($21|0)!=(0); + if ($22) { + $23 = +HEAPF64[$r>>3]; + $24 = $23 * 8.64E+7; + $25 = $24 + 0.5; + $26 = (~~$25)>>>0; + $27 = +Math_abs($25) >= 1.0 ? $25 > 0.0 ? (Math_min(+Math_floor($25 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($25 - +(~~$25 >>> 0)) / 4294967296.0) >>> 0 : 0; + $28 = HEAP32[$3>>2]|0; + $29 = $28; + $30 = $29; + HEAP32[$30>>2] = $26; + $31 = (($29) + 4)|0; + $32 = $31; + HEAP32[$32>>2] = $27; + $33 = HEAP32[$3>>2]|0; + $34 = (($33) + 42|0); + HEAP8[$34>>0] = 1; + HEAP32[$0>>2] = 0; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); + } else { + HEAP32[$0>>2] = 1; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); + } + return 0|0; +} +function _parseModifier($pCtx,$zMod,$p) { + $pCtx = $pCtx|0; + $zMod = $zMod|0; + $p = $p|0; + var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; + var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; + var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0.0, $147 = 0, $148 = 0.0, $149 = 0.0, $15 = 0, $150 = 0; + var $151 = 0, $152 = 0, $153 = 0.0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; + var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; + var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; + var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; + var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; + var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; + var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; + var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0; + var $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0; + var $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0; + var $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0; + var $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0; + var $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0; + var $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0; + var $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0; + var $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0.0, $428 = 0, $429 = 0.0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0.0, $436 = 0.0, $437 = 0.0, $438 = 0.0, $439 = 0; + var $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0; + var $458 = 0, $459 = 0.0, $46 = 0, $460 = 0.0, $461 = 0.0, $462 = 0.0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0; + var $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0.0, $484 = 0.0, $485 = 0.0, $486 = 0.0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0; + var $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0.0, $508 = 0.0, $509 = 0.0, $51 = 0, $510 = 0.0; + var $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0; + var $53 = 0, $530 = 0, $531 = 0, $532 = 0.0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0; + var $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0.0, $563 = 0, $564 = 0, $565 = 0.0; + var $566 = 0.0, $567 = 0, $568 = 0.0, $569 = 0, $57 = 0, $570 = 0.0, $571 = 0.0, $572 = 0.0, $573 = 0.0, $574 = 0.0, $575 = 0.0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0; + var $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0.0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0; + var $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0.0, $609 = 0.0, $61 = 0, $610 = 0, $611 = 0.0, $612 = 0, $613 = 0.0, $614 = 0.0, $615 = 0.0, $616 = 0.0, $617 = 0.0, $618 = 0.0, $619 = 0; + var $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $Z = 0, $c1 = 0; + var $day = 0, $n = 0, $or$cond = 0, $r = 0, $rRounder = 0, $rc = 0, $tx = 0, $x = 0, $y = 0, $y1 = 0, $z = 0, $z2 = 0, $zBuf = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; + $0 = sp + 124|0; + $1 = sp + 120|0; + $2 = sp + 116|0; + $rc = sp + 112|0; + $n = sp + 108|0; + $r = sp + 8|0; + $z = sp + 104|0; + $zBuf = sp + 128|0; + $c1 = sp + 80|0; + $Z = sp + 72|0; + $rRounder = sp; + $z2 = sp + 96|0; + $tx = sp + 24|0; + $day = sp + 16|0; + $x = sp + 100|0; + $y = sp + 88|0; + $y1 = sp + 92|0; + HEAP32[$0>>2] = $pCtx; + HEAP32[$1>>2] = $zMod; + HEAP32[$2>>2] = $p; + HEAP32[$rc>>2] = 1; + HEAP32[$z>>2] = $zBuf; + HEAP32[$n>>2] = 0; + while(1) { + $3 = HEAP32[$n>>2]|0; + $4 = ($3|0)<(29); + if ($4) { + $5 = HEAP32[$n>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + ($5)|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8 << 24 >> 24; + $10 = ($9|0)!=(0); + $636 = $10; + } else { + $636 = 0; + } + $11 = HEAP32[$n>>2]|0; + if (!($636)) { + break; + } + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + ($11)|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = (784 + ($15)|0); + $17 = HEAP8[$16>>0]|0; + $18 = HEAP32[$n>>2]|0; + $19 = HEAP32[$z>>2]|0; + $20 = (($19) + ($18)|0); + HEAP8[$20>>0] = $17; + $21 = HEAP32[$n>>2]|0; + $22 = (($21) + 1)|0; + HEAP32[$n>>2] = $22; + } + $23 = HEAP32[$z>>2]|0; + $24 = (($23) + ($11)|0); + HEAP8[$24>>0] = 0; + $25 = HEAP32[$z>>2]|0; + $26 = HEAP8[$25>>0]|0; + $27 = $26 << 24 >> 24; + switch ($27|0) { + case 57: case 56: case 55: case 54: case 53: case 52: case 51: case 50: case 49: case 48: case 45: case 43: { + HEAP32[$n>>2] = 1; + while(1) { + $265 = HEAP32[$n>>2]|0; + $266 = HEAP32[$z>>2]|0; + $267 = (($266) + ($265)|0); + $268 = HEAP8[$267>>0]|0; + $269 = $268 << 24 >> 24; + $270 = ($269|0)!=(0); + if (!($270)) { + break; + } + $271 = HEAP32[$n>>2]|0; + $272 = HEAP32[$z>>2]|0; + $273 = (($272) + ($271)|0); + $274 = HEAP8[$273>>0]|0; + $275 = $274 << 24 >> 24; + $276 = ($275|0)!=(58); + if (!($276)) { + break; + } + $277 = HEAP32[$n>>2]|0; + $278 = HEAP32[$z>>2]|0; + $279 = (($278) + ($277)|0); + $280 = HEAP8[$279>>0]|0; + $281 = $280&255; + $282 = (136 + ($281)|0); + $283 = HEAP8[$282>>0]|0; + $284 = $283&255; + $285 = $284 & 1; + $286 = ($285|0)!=(0); + $287 = $286 ^ 1; + if (!($287)) { + break; + } + $288 = HEAP32[$n>>2]|0; + $289 = (($288) + 1)|0; + HEAP32[$n>>2] = $289; + } + $290 = HEAP32[$z>>2]|0; + $291 = HEAP32[$n>>2]|0; + $292 = (_sqlite3AtoF($290,$r,$291,1)|0); + $293 = ($292|0)!=(0); + if (!($293)) { + HEAP32[$rc>>2] = 1; + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + $294 = HEAP32[$n>>2]|0; + $295 = HEAP32[$z>>2]|0; + $296 = (($295) + ($294)|0); + $297 = HEAP8[$296>>0]|0; + $298 = $297 << 24 >> 24; + $299 = ($298|0)==(58); + if ($299) { + $300 = HEAP32[$z>>2]|0; + HEAP32[$z2>>2] = $300; + $301 = HEAP32[$z2>>2]|0; + $302 = HEAP8[$301>>0]|0; + $303 = $302&255; + $304 = (136 + ($303)|0); + $305 = HEAP8[$304>>0]|0; + $306 = $305&255; + $307 = $306 & 4; + $308 = ($307|0)!=(0); + if (!($308)) { + $309 = HEAP32[$z2>>2]|0; + $310 = (($309) + 1|0); + HEAP32[$z2>>2] = $310; + } + dest=$tx+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $311 = HEAP32[$z2>>2]|0; + $312 = (_parseHhMmSs($311,$tx)|0); + $313 = ($312|0)!=(0); + if ($313) { + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + _computeJD($tx); + $314 = $tx; + $315 = $314; + $316 = HEAP32[$315>>2]|0; + $317 = (($314) + 4)|0; + $318 = $317; + $319 = HEAP32[$318>>2]|0; + $320 = (_i64Subtract(($316|0),($319|0),43200000,0)|0); + $321 = tempRet0; + $322 = $tx; + $323 = $322; + HEAP32[$323>>2] = $320; + $324 = (($322) + 4)|0; + $325 = $324; + HEAP32[$325>>2] = $321; + $326 = $tx; + $327 = $326; + $328 = HEAP32[$327>>2]|0; + $329 = (($326) + 4)|0; + $330 = $329; + $331 = HEAP32[$330>>2]|0; + $332 = (___divdi3(($328|0),($331|0),86400000,0)|0); + $333 = tempRet0; + $334 = $day; + $335 = $334; + HEAP32[$335>>2] = $332; + $336 = (($334) + 4)|0; + $337 = $336; + HEAP32[$337>>2] = $333; + $338 = $day; + $339 = $338; + $340 = HEAP32[$339>>2]|0; + $341 = (($338) + 4)|0; + $342 = $341; + $343 = HEAP32[$342>>2]|0; + $344 = (___muldi3(($340|0),($343|0),86400000,0)|0); + $345 = tempRet0; + $346 = $tx; + $347 = $346; + $348 = HEAP32[$347>>2]|0; + $349 = (($346) + 4)|0; + $350 = $349; + $351 = HEAP32[$350>>2]|0; + $352 = (_i64Subtract(($348|0),($351|0),($344|0),($345|0))|0); + $353 = tempRet0; + $354 = $tx; + $355 = $354; + HEAP32[$355>>2] = $352; + $356 = (($354) + 4)|0; + $357 = $356; + HEAP32[$357>>2] = $353; + $358 = HEAP32[$z>>2]|0; + $359 = HEAP8[$358>>0]|0; + $360 = $359 << 24 >> 24; + $361 = ($360|0)==(45); + if ($361) { + $362 = $tx; + $363 = $362; + $364 = HEAP32[$363>>2]|0; + $365 = (($362) + 4)|0; + $366 = $365; + $367 = HEAP32[$366>>2]|0; + $368 = (_i64Subtract(0,0,($364|0),($367|0))|0); + $369 = tempRet0; + $370 = $tx; + $371 = $370; + HEAP32[$371>>2] = $368; + $372 = (($370) + 4)|0; + $373 = $372; + HEAP32[$373>>2] = $369; + } + $374 = HEAP32[$2>>2]|0; + _computeJD($374); + $375 = HEAP32[$2>>2]|0; + _clearYMD_HMS_TZ($375); + $376 = $tx; + $377 = $376; + $378 = HEAP32[$377>>2]|0; + $379 = (($376) + 4)|0; + $380 = $379; + $381 = HEAP32[$380>>2]|0; + $382 = HEAP32[$2>>2]|0; + $383 = $382; + $384 = $383; + $385 = HEAP32[$384>>2]|0; + $386 = (($383) + 4)|0; + $387 = $386; + $388 = HEAP32[$387>>2]|0; + $389 = (_i64Add(($385|0),($388|0),($378|0),($381|0))|0); + $390 = tempRet0; + $391 = $382; + $392 = $391; + HEAP32[$392>>2] = $389; + $393 = (($391) + 4)|0; + $394 = $393; + HEAP32[$394>>2] = $390; + HEAP32[$rc>>2] = 0; + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + $395 = HEAP32[$n>>2]|0; + $396 = HEAP32[$z>>2]|0; + $397 = (($396) + ($395)|0); + HEAP32[$z>>2] = $397; + while(1) { + $398 = HEAP32[$z>>2]|0; + $399 = HEAP8[$398>>0]|0; + $400 = $399&255; + $401 = (136 + ($400)|0); + $402 = HEAP8[$401>>0]|0; + $403 = $402&255; + $404 = $403 & 1; + $405 = ($404|0)!=(0); + $406 = HEAP32[$z>>2]|0; + if (!($405)) { + break; + } + $407 = (($406) + 1|0); + HEAP32[$z>>2] = $407; + } + $408 = (_sqlite3Strlen30($406)|0); + HEAP32[$n>>2] = $408; + $409 = HEAP32[$n>>2]|0; + $410 = ($409|0)>(10); + $411 = HEAP32[$n>>2]|0; + $412 = ($411|0)<(3); + $or$cond = $410 | $412; + if ($or$cond) { + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + $413 = HEAP32[$n>>2]|0; + $414 = (($413) - 1)|0; + $415 = HEAP32[$z>>2]|0; + $416 = (($415) + ($414)|0); + $417 = HEAP8[$416>>0]|0; + $418 = $417 << 24 >> 24; + $419 = ($418|0)==(115); + if ($419) { + $420 = HEAP32[$n>>2]|0; + $421 = (($420) - 1)|0; + $422 = HEAP32[$z>>2]|0; + $423 = (($422) + ($421)|0); + HEAP8[$423>>0] = 0; + $424 = HEAP32[$n>>2]|0; + $425 = (($424) + -1)|0; + HEAP32[$n>>2] = $425; + } + $426 = HEAP32[$2>>2]|0; + _computeJD($426); + HEAP32[$rc>>2] = 0; + $427 = +HEAPF64[$r>>3]; + $428 = $427 < 0.0; + $429 = $428 ? -0.5 : 0.5; + HEAPF64[$rRounder>>3] = $429; + $430 = HEAP32[$n>>2]|0; + $431 = ($430|0)==(3); + if ($431) { + $432 = HEAP32[$z>>2]|0; + $433 = (_strcmp($432,16096)|0); + $434 = ($433|0)==(0); + if ($434) { + $435 = +HEAPF64[$r>>3]; + $436 = $435 * 8.64E+7; + $437 = +HEAPF64[$rRounder>>3]; + $438 = $436 + $437; + $439 = (~~$438)>>>0; + $440 = +Math_abs($438) >= 1.0 ? $438 > 0.0 ? (Math_min(+Math_floor($438 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($438 - +(~~$438 >>> 0)) / 4294967296.0) >>> 0 : 0; + $441 = HEAP32[$2>>2]|0; + $442 = $441; + $443 = $442; + $444 = HEAP32[$443>>2]|0; + $445 = (($442) + 4)|0; + $446 = $445; + $447 = HEAP32[$446>>2]|0; + $448 = (_i64Add(($444|0),($447|0),($439|0),($440|0))|0); + $449 = tempRet0; + $450 = $441; + $451 = $450; + HEAP32[$451>>2] = $448; + $452 = (($450) + 4)|0; + $453 = $452; + HEAP32[$453>>2] = $449; + } else { + label = 53; + } + } else { + label = 53; + } + do { + if ((label|0) == 53) { + $454 = HEAP32[$n>>2]|0; + $455 = ($454|0)==(4); + if ($455) { + $456 = HEAP32[$z>>2]|0; + $457 = (_strcmp($456,16104)|0); + $458 = ($457|0)==(0); + if ($458) { + $459 = +HEAPF64[$r>>3]; + $460 = $459 * 3.6E+6; + $461 = +HEAPF64[$rRounder>>3]; + $462 = $460 + $461; + $463 = (~~$462)>>>0; + $464 = +Math_abs($462) >= 1.0 ? $462 > 0.0 ? (Math_min(+Math_floor($462 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($462 - +(~~$462 >>> 0)) / 4294967296.0) >>> 0 : 0; + $465 = HEAP32[$2>>2]|0; + $466 = $465; + $467 = $466; + $468 = HEAP32[$467>>2]|0; + $469 = (($466) + 4)|0; + $470 = $469; + $471 = HEAP32[$470>>2]|0; + $472 = (_i64Add(($468|0),($471|0),($463|0),($464|0))|0); + $473 = tempRet0; + $474 = $465; + $475 = $474; + HEAP32[$475>>2] = $472; + $476 = (($474) + 4)|0; + $477 = $476; + HEAP32[$477>>2] = $473; + break; + } + } + $478 = HEAP32[$n>>2]|0; + $479 = ($478|0)==(6); + if ($479) { + $480 = HEAP32[$z>>2]|0; + $481 = (_strcmp($480,16112)|0); + $482 = ($481|0)==(0); + if ($482) { + $483 = +HEAPF64[$r>>3]; + $484 = $483 * 6.0E+4; + $485 = +HEAPF64[$rRounder>>3]; + $486 = $484 + $485; + $487 = (~~$486)>>>0; + $488 = +Math_abs($486) >= 1.0 ? $486 > 0.0 ? (Math_min(+Math_floor($486 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($486 - +(~~$486 >>> 0)) / 4294967296.0) >>> 0 : 0; + $489 = HEAP32[$2>>2]|0; + $490 = $489; + $491 = $490; + $492 = HEAP32[$491>>2]|0; + $493 = (($490) + 4)|0; + $494 = $493; + $495 = HEAP32[$494>>2]|0; + $496 = (_i64Add(($492|0),($495|0),($487|0),($488|0))|0); + $497 = tempRet0; + $498 = $489; + $499 = $498; + HEAP32[$499>>2] = $496; + $500 = (($498) + 4)|0; + $501 = $500; + HEAP32[$501>>2] = $497; + break; + } + } + $502 = HEAP32[$n>>2]|0; + $503 = ($502|0)==(6); + if ($503) { + $504 = HEAP32[$z>>2]|0; + $505 = (_strcmp($504,16120)|0); + $506 = ($505|0)==(0); + if ($506) { + $507 = +HEAPF64[$r>>3]; + $508 = $507 * 1000.0; + $509 = +HEAPF64[$rRounder>>3]; + $510 = $508 + $509; + $511 = (~~$510)>>>0; + $512 = +Math_abs($510) >= 1.0 ? $510 > 0.0 ? (Math_min(+Math_floor($510 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($510 - +(~~$510 >>> 0)) / 4294967296.0) >>> 0 : 0; + $513 = HEAP32[$2>>2]|0; + $514 = $513; + $515 = $514; + $516 = HEAP32[$515>>2]|0; + $517 = (($514) + 4)|0; + $518 = $517; + $519 = HEAP32[$518>>2]|0; + $520 = (_i64Add(($516|0),($519|0),($511|0),($512|0))|0); + $521 = tempRet0; + $522 = $513; + $523 = $522; + HEAP32[$523>>2] = $520; + $524 = (($522) + 4)|0; + $525 = $524; + HEAP32[$525>>2] = $521; + break; + } + } + $526 = HEAP32[$n>>2]|0; + $527 = ($526|0)==(5); + if ($527) { + $528 = HEAP32[$z>>2]|0; + $529 = (_strcmp($528,16080)|0); + $530 = ($529|0)==(0); + if ($530) { + $531 = HEAP32[$2>>2]|0; + _computeYMD_HMS($531); + $532 = +HEAPF64[$r>>3]; + $533 = (~~(($532))); + $534 = HEAP32[$2>>2]|0; + $535 = (($534) + 12|0); + $536 = HEAP32[$535>>2]|0; + $537 = (($536) + ($533))|0; + HEAP32[$535>>2] = $537; + $538 = HEAP32[$2>>2]|0; + $539 = (($538) + 12|0); + $540 = HEAP32[$539>>2]|0; + $541 = ($540|0)>(0); + $542 = HEAP32[$2>>2]|0; + $543 = (($542) + 12|0); + $544 = HEAP32[$543>>2]|0; + $545 = (($544) - 1)|0; + $546 = (($544) - 12)|0; + $$sink = $541 ? $545 : $546; + $547 = (($$sink|0) / 12)&-1; + HEAP32[$x>>2] = $547; + $548 = HEAP32[$x>>2]|0; + $549 = HEAP32[$2>>2]|0; + $550 = (($549) + 8|0); + $551 = HEAP32[$550>>2]|0; + $552 = (($551) + ($548))|0; + HEAP32[$550>>2] = $552; + $553 = HEAP32[$x>>2]|0; + $554 = ($553*12)|0; + $555 = HEAP32[$2>>2]|0; + $556 = (($555) + 12|0); + $557 = HEAP32[$556>>2]|0; + $558 = (($557) - ($554))|0; + HEAP32[$556>>2] = $558; + $559 = HEAP32[$2>>2]|0; + $560 = (($559) + 42|0); + HEAP8[$560>>0] = 0; + $561 = HEAP32[$2>>2]|0; + _computeJD($561); + $562 = +HEAPF64[$r>>3]; + $563 = (~~(($562))); + HEAP32[$y>>2] = $563; + $564 = HEAP32[$y>>2]|0; + $565 = (+($564|0)); + $566 = +HEAPF64[$r>>3]; + $567 = $565 != $566; + if (!($567)) { + break; + } + $568 = +HEAPF64[$r>>3]; + $569 = HEAP32[$y>>2]|0; + $570 = (+($569|0)); + $571 = $568 - $570; + $572 = $571 * 30.0; + $573 = $572 * 8.64E+7; + $574 = +HEAPF64[$rRounder>>3]; + $575 = $573 + $574; + $576 = (~~$575)>>>0; + $577 = +Math_abs($575) >= 1.0 ? $575 > 0.0 ? (Math_min(+Math_floor($575 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($575 - +(~~$575 >>> 0)) / 4294967296.0) >>> 0 : 0; + $578 = HEAP32[$2>>2]|0; + $579 = $578; + $580 = $579; + $581 = HEAP32[$580>>2]|0; + $582 = (($579) + 4)|0; + $583 = $582; + $584 = HEAP32[$583>>2]|0; + $585 = (_i64Add(($581|0),($584|0),($576|0),($577|0))|0); + $586 = tempRet0; + $587 = $578; + $588 = $587; + HEAP32[$588>>2] = $585; + $589 = (($587) + 4)|0; + $590 = $589; + HEAP32[$590>>2] = $586; + break; + } + } + $591 = HEAP32[$n>>2]|0; + $592 = ($591|0)==(4); + if ($592) { + $593 = HEAP32[$z>>2]|0; + $594 = (_strcmp($593,16088)|0); + $595 = ($594|0)==(0); + if ($595) { + $596 = +HEAPF64[$r>>3]; + $597 = (~~(($596))); + HEAP32[$y1>>2] = $597; + $598 = HEAP32[$2>>2]|0; + _computeYMD_HMS($598); + $599 = HEAP32[$y1>>2]|0; + $600 = HEAP32[$2>>2]|0; + $601 = (($600) + 8|0); + $602 = HEAP32[$601>>2]|0; + $603 = (($602) + ($599))|0; + HEAP32[$601>>2] = $603; + $604 = HEAP32[$2>>2]|0; + $605 = (($604) + 42|0); + HEAP8[$605>>0] = 0; + $606 = HEAP32[$2>>2]|0; + _computeJD($606); + $607 = HEAP32[$y1>>2]|0; + $608 = (+($607|0)); + $609 = +HEAPF64[$r>>3]; + $610 = $608 != $609; + if (!($610)) { + break; + } + $611 = +HEAPF64[$r>>3]; + $612 = HEAP32[$y1>>2]|0; + $613 = (+($612|0)); + $614 = $611 - $613; + $615 = $614 * 365.0; + $616 = $615 * 8.64E+7; + $617 = +HEAPF64[$rRounder>>3]; + $618 = $616 + $617; + $619 = (~~$618)>>>0; + $620 = +Math_abs($618) >= 1.0 ? $618 > 0.0 ? (Math_min(+Math_floor($618 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($618 - +(~~$618 >>> 0)) / 4294967296.0) >>> 0 : 0; + $621 = HEAP32[$2>>2]|0; + $622 = $621; + $623 = $622; + $624 = HEAP32[$623>>2]|0; + $625 = (($622) + 4)|0; + $626 = $625; + $627 = HEAP32[$626>>2]|0; + $628 = (_i64Add(($624|0),($627|0),($619|0),($620|0))|0); + $629 = tempRet0; + $630 = $621; + $631 = $630; + HEAP32[$631>>2] = $628; + $632 = (($630) + 4)|0; + $633 = $632; + HEAP32[$633>>2] = $629; + break; + } + } + HEAP32[$rc>>2] = 1; + } + } while(0); + $634 = HEAP32[$2>>2]|0; + _clearYMD_HMS_TZ($634); + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + break; + } + case 117: { + $50 = HEAP32[$z>>2]|0; + $51 = (_strcmp($50,16024)|0); + $52 = ($51|0)==(0); + if ($52) { + $53 = HEAP32[$2>>2]|0; + $54 = (($53) + 42|0); + $55 = HEAP8[$54>>0]|0; + $56 = $55 << 24 >> 24; + $57 = ($56|0)!=(0); + if ($57) { + $58 = HEAP32[$2>>2]|0; + $59 = $58; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = (($59) + 4)|0; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (_i64Add(($61|0),($64|0),43200,0)|0); + $66 = tempRet0; + $67 = (___divdi3(($65|0),($66|0),86400,0)|0); + $68 = tempRet0; + $69 = (_i64Add(($67|0),($68|0),1045635584,49096)|0); + $70 = tempRet0; + $71 = HEAP32[$2>>2]|0; + $72 = $71; + $73 = $72; + HEAP32[$73>>2] = $69; + $74 = (($72) + 4)|0; + $75 = $74; + HEAP32[$75>>2] = $70; + $76 = HEAP32[$2>>2]|0; + _clearYMD_HMS_TZ($76); + HEAP32[$rc>>2] = 0; + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + } + $77 = HEAP32[$z>>2]|0; + $78 = (_strcmp($77,16040)|0); + $79 = ($78|0)==(0); + if (!($79)) { + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + $80 = HEAP32[$2>>2]|0; + _computeJD($80); + $81 = HEAP32[$2>>2]|0; + $82 = HEAP32[$0>>2]|0; + $83 = (_localtimeOffset($81,$82,$rc)|0); + $84 = tempRet0; + $85 = $c1; + $86 = $85; + HEAP32[$86>>2] = $83; + $87 = (($85) + 4)|0; + $88 = $87; + HEAP32[$88>>2] = $84; + $89 = HEAP32[$rc>>2]|0; + $90 = ($89|0)==(0); + if (!($90)) { + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + $91 = $c1; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $94 = (($91) + 4)|0; + $95 = $94; + $96 = HEAP32[$95>>2]|0; + $97 = HEAP32[$2>>2]|0; + $98 = $97; + $99 = $98; + $100 = HEAP32[$99>>2]|0; + $101 = (($98) + 4)|0; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = (_i64Subtract(($100|0),($103|0),($93|0),($96|0))|0); + $105 = tempRet0; + $106 = $97; + $107 = $106; + HEAP32[$107>>2] = $104; + $108 = (($106) + 4)|0; + $109 = $108; + HEAP32[$109>>2] = $105; + $110 = HEAP32[$2>>2]|0; + _clearYMD_HMS_TZ($110); + $111 = $c1; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = (($111) + 4)|0; + $115 = $114; + $116 = HEAP32[$115>>2]|0; + $117 = HEAP32[$2>>2]|0; + $118 = HEAP32[$0>>2]|0; + $119 = (_localtimeOffset($117,$118,$rc)|0); + $120 = tempRet0; + $121 = (_i64Subtract(($113|0),($116|0),($119|0),($120|0))|0); + $122 = tempRet0; + $123 = HEAP32[$2>>2]|0; + $124 = $123; + $125 = $124; + $126 = HEAP32[$125>>2]|0; + $127 = (($124) + 4)|0; + $128 = $127; + $129 = HEAP32[$128>>2]|0; + $130 = (_i64Add(($126|0),($129|0),($121|0),($122|0))|0); + $131 = tempRet0; + $132 = $123; + $133 = $132; + HEAP32[$133>>2] = $130; + $134 = (($132) + 4)|0; + $135 = $134; + HEAP32[$135>>2] = $131; + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + break; + } + case 119: { + $136 = HEAP32[$z>>2]|0; + $137 = (_strncmp($136,16048,8)|0); + $138 = ($137|0)==(0); + if (!($138)) { + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + $139 = HEAP32[$z>>2]|0; + $140 = (($139) + 8|0); + $141 = HEAP32[$z>>2]|0; + $142 = (($141) + 8|0); + $143 = (_sqlite3Strlen30($142)|0); + $144 = (_sqlite3AtoF($140,$r,$143,1)|0); + $145 = ($144|0)!=(0); + if (!($145)) { + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + $146 = +HEAPF64[$r>>3]; + $147 = (~~(($146))); + HEAP32[$n>>2] = $147; + $148 = (+($147|0)); + $149 = +HEAPF64[$r>>3]; + $150 = $148 == $149; + if (!($150)) { + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + $151 = HEAP32[$n>>2]|0; + $152 = ($151|0)>=(0); + if (!($152)) { + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + $153 = +HEAPF64[$r>>3]; + $154 = $153 < 7.0; + if (!($154)) { + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + $155 = HEAP32[$2>>2]|0; + _computeYMD_HMS($155); + $156 = HEAP32[$2>>2]|0; + $157 = (($156) + 43|0); + HEAP8[$157>>0] = 0; + $158 = HEAP32[$2>>2]|0; + $159 = (($158) + 42|0); + HEAP8[$159>>0] = 0; + $160 = HEAP32[$2>>2]|0; + _computeJD($160); + $161 = HEAP32[$2>>2]|0; + $162 = $161; + $163 = $162; + $164 = HEAP32[$163>>2]|0; + $165 = (($162) + 4)|0; + $166 = $165; + $167 = HEAP32[$166>>2]|0; + $168 = (_i64Add(($164|0),($167|0),129600000,0)|0); + $169 = tempRet0; + $170 = (___divdi3(($168|0),($169|0),86400000,0)|0); + $171 = tempRet0; + $172 = (___remdi3(($170|0),($171|0),7,0)|0); + $173 = tempRet0; + $174 = $Z; + $175 = $174; + HEAP32[$175>>2] = $172; + $176 = (($174) + 4)|0; + $177 = $176; + HEAP32[$177>>2] = $173; + $178 = $Z; + $179 = $178; + $180 = HEAP32[$179>>2]|0; + $181 = (($178) + 4)|0; + $182 = $181; + $183 = HEAP32[$182>>2]|0; + $184 = HEAP32[$n>>2]|0; + $185 = ($184|0)<(0); + $186 = $185 << 31 >> 31; + $187 = ($183|0)>($186|0); + $188 = ($183|0)==($186|0); + $189 = ($180>>>0)>($184>>>0); + $190 = $188 & $189; + $191 = $187 | $190; + if ($191) { + $192 = $Z; + $193 = $192; + $194 = HEAP32[$193>>2]|0; + $195 = (($192) + 4)|0; + $196 = $195; + $197 = HEAP32[$196>>2]|0; + $198 = (_i64Subtract(($194|0),($197|0),7,0)|0); + $199 = tempRet0; + $200 = $Z; + $201 = $200; + HEAP32[$201>>2] = $198; + $202 = (($200) + 4)|0; + $203 = $202; + HEAP32[$203>>2] = $199; + } + $204 = HEAP32[$n>>2]|0; + $205 = ($204|0)<(0); + $206 = $205 << 31 >> 31; + $207 = $Z; + $208 = $207; + $209 = HEAP32[$208>>2]|0; + $210 = (($207) + 4)|0; + $211 = $210; + $212 = HEAP32[$211>>2]|0; + $213 = (_i64Subtract(($204|0),($206|0),($209|0),($212|0))|0); + $214 = tempRet0; + $215 = (___muldi3(($213|0),($214|0),86400000,0)|0); + $216 = tempRet0; + $217 = HEAP32[$2>>2]|0; + $218 = $217; + $219 = $218; + $220 = HEAP32[$219>>2]|0; + $221 = (($218) + 4)|0; + $222 = $221; + $223 = HEAP32[$222>>2]|0; + $224 = (_i64Add(($220|0),($223|0),($215|0),($216|0))|0); + $225 = tempRet0; + $226 = $217; + $227 = $226; + HEAP32[$227>>2] = $224; + $228 = (($226) + 4)|0; + $229 = $228; + HEAP32[$229>>2] = $225; + $230 = HEAP32[$2>>2]|0; + _clearYMD_HMS_TZ($230); + HEAP32[$rc>>2] = 0; + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + break; + } + case 108: { + $28 = HEAP32[$z>>2]|0; + $29 = (_strcmp($28,16008)|0); + $30 = ($29|0)==(0); + if (!($30)) { + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + $31 = HEAP32[$2>>2]|0; + _computeJD($31); + $32 = HEAP32[$2>>2]|0; + $33 = HEAP32[$0>>2]|0; + $34 = (_localtimeOffset($32,$33,$rc)|0); + $35 = tempRet0; + $36 = HEAP32[$2>>2]|0; + $37 = $36; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (($37) + 4)|0; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (_i64Add(($39|0),($42|0),($34|0),($35|0))|0); + $44 = tempRet0; + $45 = $36; + $46 = $45; + HEAP32[$46>>2] = $43; + $47 = (($45) + 4)|0; + $48 = $47; + HEAP32[$48>>2] = $44; + $49 = HEAP32[$2>>2]|0; + _clearYMD_HMS_TZ($49); + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + break; + } + case 115: { + $231 = HEAP32[$z>>2]|0; + $232 = (_strncmp($231,16064,9)|0); + $233 = ($232|0)!=(0); + if ($233) { + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + $234 = HEAP32[$z>>2]|0; + $235 = (($234) + 9|0); + HEAP32[$z>>2] = $235; + $236 = HEAP32[$2>>2]|0; + _computeYMD($236); + $237 = HEAP32[$2>>2]|0; + $238 = (($237) + 41|0); + HEAP8[$238>>0] = 1; + $239 = HEAP32[$2>>2]|0; + $240 = (($239) + 24|0); + HEAP32[$240>>2] = 0; + $241 = HEAP32[$2>>2]|0; + $242 = (($241) + 20|0); + HEAP32[$242>>2] = 0; + $243 = HEAP32[$2>>2]|0; + $244 = (($243) + 32|0); + HEAPF64[$244>>3] = 0.0; + $245 = HEAP32[$2>>2]|0; + $246 = (($245) + 43|0); + HEAP8[$246>>0] = 0; + $247 = HEAP32[$2>>2]|0; + $248 = (($247) + 42|0); + HEAP8[$248>>0] = 0; + $249 = HEAP32[$z>>2]|0; + $250 = (_strcmp($249,16080)|0); + $251 = ($250|0)==(0); + if ($251) { + $252 = HEAP32[$2>>2]|0; + $253 = (($252) + 16|0); + HEAP32[$253>>2] = 1; + HEAP32[$rc>>2] = 0; + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + $254 = HEAP32[$z>>2]|0; + $255 = (_strcmp($254,16088)|0); + $256 = ($255|0)==(0); + if ($256) { + $257 = HEAP32[$2>>2]|0; + _computeYMD($257); + $258 = HEAP32[$2>>2]|0; + $259 = (($258) + 12|0); + HEAP32[$259>>2] = 1; + $260 = HEAP32[$2>>2]|0; + $261 = (($260) + 16|0); + HEAP32[$261>>2] = 1; + HEAP32[$rc>>2] = 0; + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + $262 = HEAP32[$z>>2]|0; + $263 = (_strcmp($262,16096)|0); + $264 = ($263|0)==(0); + if (!($264)) { + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + HEAP32[$rc>>2] = 0; + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + break; + } + default: { + $635 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($635|0); + } + } + return 0|0; +} +function _localtimeOffset($p,$pCtx,$pRc) { + $p = $p|0; + $pCtx = $pCtx|0; + $pRc = $pRc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $22 = 0.0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0.0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $s = 0, $sLocal = 0, $t = 0, $x = 0, $y = 0, dest = 0, label = 0; + var sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 176|0; + $0 = sp + 96|0; + $1 = sp + 108|0; + $2 = sp + 104|0; + $3 = sp + 164|0; + $x = sp + 48|0; + $y = sp; + $t = sp + 112|0; + $sLocal = sp + 116|0; + $s = sp + 160|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pCtx; + HEAP32[$3>>2] = $pRc; + dest=$sLocal+0|0; stop=dest+44|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $4 = HEAP32[$1>>2]|0; + dest=$x+0|0; src=$4+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + _computeYMD_HMS($x); + $5 = (($x) + 8|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)<(1971); + if ($7) { + label = 3; + } else { + $8 = (($x) + 8|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)>=(2038); + if ($10) { + label = 3; + } else { + $17 = (($x) + 32|0); + $18 = +HEAPF64[$17>>3]; + $19 = $18 + 0.5; + $20 = (~~(($19))); + HEAP32[$s>>2] = $20; + $21 = HEAP32[$s>>2]|0; + $22 = (+($21|0)); + $23 = (($x) + 32|0); + HEAPF64[$23>>3] = $22; + } + } + if ((label|0) == 3) { + $11 = (($x) + 8|0); + HEAP32[$11>>2] = 2000; + $12 = (($x) + 12|0); + HEAP32[$12>>2] = 1; + $13 = (($x) + 16|0); + HEAP32[$13>>2] = 1; + $14 = (($x) + 20|0); + HEAP32[$14>>2] = 0; + $15 = (($x) + 24|0); + HEAP32[$15>>2] = 0; + $16 = (($x) + 32|0); + HEAPF64[$16>>3] = 0.0; + } + $24 = (($x) + 28|0); + HEAP32[$24>>2] = 0; + $25 = (($x) + 42|0); + HEAP8[$25>>0] = 0; + _computeJD($x); + $26 = $x; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = (($26) + 4)|0; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = (___divdi3(($28|0),($31|0),1000,0)|0); + $33 = tempRet0; + $34 = (_i64Subtract(($32|0),($33|0),413362496,49)|0); + $35 = tempRet0; + HEAP32[$t>>2] = $34; + $36 = (_osLocaltime($t,$sLocal)|0); + $37 = ($36|0)!=(0); + if ($37) { + $38 = HEAP32[$2>>2]|0; + _sqlite3_result_error($38,16128,-1); + $39 = HEAP32[$3>>2]|0; + HEAP32[$39>>2] = 1; + $40 = $0; + $41 = $40; + HEAP32[$41>>2] = 0; + $42 = (($40) + 4)|0; + $43 = $42; + HEAP32[$43>>2] = 0; + $87 = $0; + $88 = $87; + $89 = HEAP32[$88>>2]|0; + $90 = (($87) + 4)|0; + $91 = $90; + $92 = HEAP32[$91>>2]|0; + tempRet0 = $92; + STACKTOP = sp;return ($89|0); + } else { + $44 = (($sLocal) + 20|0); + $45 = HEAP32[$44>>2]|0; + $46 = (($45) + 1900)|0; + $47 = (($y) + 8|0); + HEAP32[$47>>2] = $46; + $48 = (($sLocal) + 16|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) + 1)|0; + $51 = (($y) + 12|0); + HEAP32[$51>>2] = $50; + $52 = (($sLocal) + 12|0); + $53 = HEAP32[$52>>2]|0; + $54 = (($y) + 16|0); + HEAP32[$54>>2] = $53; + $55 = (($sLocal) + 8|0); + $56 = HEAP32[$55>>2]|0; + $57 = (($y) + 20|0); + HEAP32[$57>>2] = $56; + $58 = (($sLocal) + 4|0); + $59 = HEAP32[$58>>2]|0; + $60 = (($y) + 24|0); + HEAP32[$60>>2] = $59; + $61 = HEAP32[$sLocal>>2]|0; + $62 = (+($61|0)); + $63 = (($y) + 32|0); + HEAPF64[$63>>3] = $62; + $64 = (($y) + 40|0); + HEAP8[$64>>0] = 1; + $65 = (($y) + 41|0); + HEAP8[$65>>0] = 1; + $66 = (($y) + 42|0); + HEAP8[$66>>0] = 0; + $67 = (($y) + 43|0); + HEAP8[$67>>0] = 0; + _computeJD($y); + $68 = HEAP32[$3>>2]|0; + HEAP32[$68>>2] = 0; + $69 = $y; + $70 = $69; + $71 = HEAP32[$70>>2]|0; + $72 = (($69) + 4)|0; + $73 = $72; + $74 = HEAP32[$73>>2]|0; + $75 = $x; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = (($75) + 4)|0; + $79 = $78; + $80 = HEAP32[$79>>2]|0; + $81 = (_i64Subtract(($71|0),($74|0),($77|0),($80|0))|0); + $82 = tempRet0; + $83 = $0; + $84 = $83; + HEAP32[$84>>2] = $81; + $85 = (($83) + 4)|0; + $86 = $85; + HEAP32[$86>>2] = $82; + $87 = $0; + $88 = $87; + $89 = HEAP32[$88>>2]|0; + $90 = (($87) + 4)|0; + $91 = $90; + $92 = HEAP32[$91>>2]|0; + tempRet0 = $92; + STACKTOP = sp;return ($89|0); + } + return 0|0; +} +function _clearYMD_HMS_TZ($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 40|0); + HEAP8[$2>>0] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 41|0); + HEAP8[$4>>0] = 0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 43|0); + HEAP8[$6>>0] = 0; + STACKTOP = sp;return; +} +function _sqlite3AtoF($z,$pResult,$length,$enc) { + $z = $z|0; + $pResult = $pResult|0; + $length = $length|0; + $enc = $enc|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0.0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0.0, $408 = 0.0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0.0, $42 = 0, $420 = 0.0, $421 = 0.0; + var $422 = 0.0, $423 = 0.0, $424 = 0.0, $425 = 0.0, $426 = 0.0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0.0, $438 = 0.0, $439 = 0.0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0.0, $444 = 0.0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0.0, $45 = 0, $450 = 0.0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0.0, $462 = 0.0, $463 = 0.0, $464 = 0.0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0.0, $472 = 0.0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $d = 0, $e = 0, $eValid = 0, $esign = 0, $i = 0, $incr = 0, $nDigits = 0, $nonNum = 0, $or$cond = 0, $result = 0, $s = 0, $scale = 0, $sign = 0, $zEnd = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 76|0; + $1 = sp + 72|0; + $2 = sp + 68|0; + $3 = sp + 64|0; + $4 = sp + 80|0; + $incr = sp + 60|0; + $zEnd = sp + 56|0; + $sign = sp + 52|0; + $s = sp; + $d = sp + 48|0; + $esign = sp + 36|0; + $e = sp + 32|0; + $eValid = sp + 28|0; + $result = sp + 8|0; + $nDigits = sp + 40|0; + $nonNum = sp + 44|0; + $i = sp + 24|0; + $scale = sp + 16|0; + HEAP32[$1>>2] = $z; + HEAP32[$2>>2] = $pResult; + HEAP32[$3>>2] = $length; + HEAP8[$4>>0] = $enc; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$3>>2]|0; + $7 = (($5) + ($6)|0); + HEAP32[$zEnd>>2] = $7; + HEAP32[$sign>>2] = 1; + $8 = $s; + $9 = $8; + HEAP32[$9>>2] = 0; + $10 = (($8) + 4)|0; + $11 = $10; + HEAP32[$11>>2] = 0; + HEAP32[$d>>2] = 0; + HEAP32[$esign>>2] = 1; + HEAP32[$e>>2] = 0; + HEAP32[$eValid>>2] = 1; + HEAP32[$nDigits>>2] = 0; + HEAP32[$nonNum>>2] = 0; + $12 = HEAP32[$2>>2]|0; + HEAPF64[$12>>3] = 0.0; + $13 = HEAP8[$4>>0]|0; + $14 = $13&255; + $15 = ($14|0)==(1); + if ($15) { + HEAP32[$incr>>2] = 1; + } else { + HEAP32[$incr>>2] = 2; + $16 = HEAP8[$4>>0]|0; + $17 = $16&255; + $18 = (3 - ($17))|0; + HEAP32[$i>>2] = $18; + while(1) { + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$3>>2]|0; + $21 = ($19|0)<($20|0); + if (!($21)) { + break; + } + $22 = HEAP32[$i>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + ($22)|0); + $25 = HEAP8[$24>>0]|0; + $26 = $25 << 24 >> 24; + $27 = ($26|0)==(0); + if (!($27)) { + break; + } + $28 = HEAP32[$i>>2]|0; + $29 = (($28) + 2)|0; + HEAP32[$i>>2] = $29; + } + $30 = HEAP32[$i>>2]|0; + $31 = HEAP32[$3>>2]|0; + $32 = ($30|0)<($31|0); + $33 = $32&1; + HEAP32[$nonNum>>2] = $33; + $34 = HEAP32[$1>>2]|0; + $35 = HEAP32[$i>>2]|0; + $36 = (($34) + ($35)|0); + $37 = HEAP8[$4>>0]|0; + $38 = $37&255; + $39 = (($36) + ($38)|0); + $40 = (($39) + -3|0); + HEAP32[$zEnd>>2] = $40; + $41 = HEAP8[$4>>0]|0; + $42 = $41&255; + $43 = $42 & 1; + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + ($43)|0); + HEAP32[$1>>2] = $45; + } + while(1) { + $46 = HEAP32[$1>>2]|0; + $47 = HEAP32[$zEnd>>2]|0; + $48 = ($46>>>0)<($47>>>0); + if (!($48)) { + break; + } + $49 = HEAP32[$1>>2]|0; + $50 = HEAP8[$49>>0]|0; + $51 = $50&255; + $52 = (136 + ($51)|0); + $53 = HEAP8[$52>>0]|0; + $54 = $53&255; + $55 = $54 & 1; + $56 = ($55|0)!=(0); + if (!($56)) { + break; + } + $57 = HEAP32[$incr>>2]|0; + $58 = HEAP32[$1>>2]|0; + $59 = (($58) + ($57)|0); + HEAP32[$1>>2] = $59; + } + $60 = HEAP32[$1>>2]|0; + $61 = HEAP32[$zEnd>>2]|0; + $62 = ($60>>>0)>=($61>>>0); + if ($62) { + HEAP32[$0>>2] = 0; + $485 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($485|0); + } + $63 = HEAP32[$1>>2]|0; + $64 = HEAP8[$63>>0]|0; + $65 = $64 << 24 >> 24; + $66 = ($65|0)==(45); + if ($66) { + HEAP32[$sign>>2] = -1; + $67 = HEAP32[$incr>>2]|0; + $68 = HEAP32[$1>>2]|0; + $69 = (($68) + ($67)|0); + HEAP32[$1>>2] = $69; + } else { + $70 = HEAP32[$1>>2]|0; + $71 = HEAP8[$70>>0]|0; + $72 = $71 << 24 >> 24; + $73 = ($72|0)==(43); + if ($73) { + $74 = HEAP32[$incr>>2]|0; + $75 = HEAP32[$1>>2]|0; + $76 = (($75) + ($74)|0); + HEAP32[$1>>2] = $76; + } + } + while(1) { + $77 = HEAP32[$1>>2]|0; + $78 = HEAP32[$zEnd>>2]|0; + $79 = ($77>>>0)<($78>>>0); + if (!($79)) { + break; + } + $80 = HEAP32[$1>>2]|0; + $81 = HEAP8[$80>>0]|0; + $82 = $81 << 24 >> 24; + $83 = ($82|0)==(48); + if (!($83)) { + break; + } + $84 = HEAP32[$incr>>2]|0; + $85 = HEAP32[$1>>2]|0; + $86 = (($85) + ($84)|0); + HEAP32[$1>>2] = $86; + $87 = HEAP32[$nDigits>>2]|0; + $88 = (($87) + 1)|0; + HEAP32[$nDigits>>2] = $88; + } + while(1) { + $89 = HEAP32[$1>>2]|0; + $90 = HEAP32[$zEnd>>2]|0; + $91 = ($89>>>0)<($90>>>0); + if (!($91)) { + break; + } + $92 = HEAP32[$1>>2]|0; + $93 = HEAP8[$92>>0]|0; + $94 = $93&255; + $95 = (136 + ($94)|0); + $96 = HEAP8[$95>>0]|0; + $97 = $96&255; + $98 = $97 & 4; + $99 = ($98|0)!=(0); + if (!($99)) { + break; + } + $100 = $s; + $101 = $100; + $102 = HEAP32[$101>>2]|0; + $103 = (($100) + 4)|0; + $104 = $103; + $105 = HEAP32[$104>>2]|0; + $106 = ($105|0)<(214748364); + $107 = ($105|0)==(214748364); + $108 = ($102>>>0)<(3435973835); + $109 = $107 & $108; + $110 = $106 | $109; + if (!($110)) { + break; + } + $111 = $s; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = (($111) + 4)|0; + $115 = $114; + $116 = HEAP32[$115>>2]|0; + $117 = (___muldi3(($113|0),($116|0),10,0)|0); + $118 = tempRet0; + $119 = HEAP32[$1>>2]|0; + $120 = HEAP8[$119>>0]|0; + $121 = $120 << 24 >> 24; + $122 = (($121) - 48)|0; + $123 = ($122|0)<(0); + $124 = $123 << 31 >> 31; + $125 = (_i64Add(($117|0),($118|0),($122|0),($124|0))|0); + $126 = tempRet0; + $127 = $s; + $128 = $127; + HEAP32[$128>>2] = $125; + $129 = (($127) + 4)|0; + $130 = $129; + HEAP32[$130>>2] = $126; + $131 = HEAP32[$incr>>2]|0; + $132 = HEAP32[$1>>2]|0; + $133 = (($132) + ($131)|0); + HEAP32[$1>>2] = $133; + $134 = HEAP32[$nDigits>>2]|0; + $135 = (($134) + 1)|0; + HEAP32[$nDigits>>2] = $135; + } + while(1) { + $136 = HEAP32[$1>>2]|0; + $137 = HEAP32[$zEnd>>2]|0; + $138 = ($136>>>0)<($137>>>0); + if (!($138)) { + break; + } + $139 = HEAP32[$1>>2]|0; + $140 = HEAP8[$139>>0]|0; + $141 = $140&255; + $142 = (136 + ($141)|0); + $143 = HEAP8[$142>>0]|0; + $144 = $143&255; + $145 = $144 & 4; + $146 = ($145|0)!=(0); + if (!($146)) { + break; + } + $147 = HEAP32[$incr>>2]|0; + $148 = HEAP32[$1>>2]|0; + $149 = (($148) + ($147)|0); + HEAP32[$1>>2] = $149; + $150 = HEAP32[$nDigits>>2]|0; + $151 = (($150) + 1)|0; + HEAP32[$nDigits>>2] = $151; + $152 = HEAP32[$d>>2]|0; + $153 = (($152) + 1)|0; + HEAP32[$d>>2] = $153; + } + $154 = HEAP32[$1>>2]|0; + $155 = HEAP32[$zEnd>>2]|0; + $156 = ($154>>>0)>=($155>>>0); + L36: do { + if (!($156)) { + $157 = HEAP32[$1>>2]|0; + $158 = HEAP8[$157>>0]|0; + $159 = $158 << 24 >> 24; + $160 = ($159|0)==(46); + L38: do { + if ($160) { + $161 = HEAP32[$incr>>2]|0; + $162 = HEAP32[$1>>2]|0; + $163 = (($162) + ($161)|0); + HEAP32[$1>>2] = $163; + while(1) { + $164 = HEAP32[$1>>2]|0; + $165 = HEAP32[$zEnd>>2]|0; + $166 = ($164>>>0)<($165>>>0); + if (!($166)) { + break; + } + $167 = HEAP32[$1>>2]|0; + $168 = HEAP8[$167>>0]|0; + $169 = $168&255; + $170 = (136 + ($169)|0); + $171 = HEAP8[$170>>0]|0; + $172 = $171&255; + $173 = $172 & 4; + $174 = ($173|0)!=(0); + if (!($174)) { + break; + } + $175 = $s; + $176 = $175; + $177 = HEAP32[$176>>2]|0; + $178 = (($175) + 4)|0; + $179 = $178; + $180 = HEAP32[$179>>2]|0; + $181 = ($180|0)<(214748364); + $182 = ($180|0)==(214748364); + $183 = ($177>>>0)<(3435973835); + $184 = $182 & $183; + $185 = $181 | $184; + if (!($185)) { + break; + } + $186 = $s; + $187 = $186; + $188 = HEAP32[$187>>2]|0; + $189 = (($186) + 4)|0; + $190 = $189; + $191 = HEAP32[$190>>2]|0; + $192 = (___muldi3(($188|0),($191|0),10,0)|0); + $193 = tempRet0; + $194 = HEAP32[$1>>2]|0; + $195 = HEAP8[$194>>0]|0; + $196 = $195 << 24 >> 24; + $197 = (($196) - 48)|0; + $198 = ($197|0)<(0); + $199 = $198 << 31 >> 31; + $200 = (_i64Add(($192|0),($193|0),($197|0),($199|0))|0); + $201 = tempRet0; + $202 = $s; + $203 = $202; + HEAP32[$203>>2] = $200; + $204 = (($202) + 4)|0; + $205 = $204; + HEAP32[$205>>2] = $201; + $206 = HEAP32[$incr>>2]|0; + $207 = HEAP32[$1>>2]|0; + $208 = (($207) + ($206)|0); + HEAP32[$1>>2] = $208; + $209 = HEAP32[$nDigits>>2]|0; + $210 = (($209) + 1)|0; + HEAP32[$nDigits>>2] = $210; + $211 = HEAP32[$d>>2]|0; + $212 = (($211) + -1)|0; + HEAP32[$d>>2] = $212; + } + while(1) { + $213 = HEAP32[$1>>2]|0; + $214 = HEAP32[$zEnd>>2]|0; + $215 = ($213>>>0)<($214>>>0); + if (!($215)) { + break L38; + } + $216 = HEAP32[$1>>2]|0; + $217 = HEAP8[$216>>0]|0; + $218 = $217&255; + $219 = (136 + ($218)|0); + $220 = HEAP8[$219>>0]|0; + $221 = $220&255; + $222 = $221 & 4; + $223 = ($222|0)!=(0); + if (!($223)) { + break L38; + } + $224 = HEAP32[$incr>>2]|0; + $225 = HEAP32[$1>>2]|0; + $226 = (($225) + ($224)|0); + HEAP32[$1>>2] = $226; + $227 = HEAP32[$nDigits>>2]|0; + $228 = (($227) + 1)|0; + HEAP32[$nDigits>>2] = $228; + } + } + } while(0); + $229 = HEAP32[$1>>2]|0; + $230 = HEAP32[$zEnd>>2]|0; + $231 = ($229>>>0)>=($230>>>0); + if (!($231)) { + $232 = HEAP32[$1>>2]|0; + $233 = HEAP8[$232>>0]|0; + $234 = $233 << 24 >> 24; + $235 = ($234|0)==(101); + if ($235) { + label = 40; + } else { + $236 = HEAP32[$1>>2]|0; + $237 = HEAP8[$236>>0]|0; + $238 = $237 << 24 >> 24; + $239 = ($238|0)==(69); + if ($239) { + label = 40; + } + } + L53: do { + if ((label|0) == 40) { + $240 = HEAP32[$incr>>2]|0; + $241 = HEAP32[$1>>2]|0; + $242 = (($241) + ($240)|0); + HEAP32[$1>>2] = $242; + HEAP32[$eValid>>2] = 0; + $243 = HEAP32[$1>>2]|0; + $244 = HEAP32[$zEnd>>2]|0; + $245 = ($243>>>0)>=($244>>>0); + if ($245) { + break L36; + } + $246 = HEAP32[$1>>2]|0; + $247 = HEAP8[$246>>0]|0; + $248 = $247 << 24 >> 24; + $249 = ($248|0)==(45); + if ($249) { + HEAP32[$esign>>2] = -1; + $250 = HEAP32[$incr>>2]|0; + $251 = HEAP32[$1>>2]|0; + $252 = (($251) + ($250)|0); + HEAP32[$1>>2] = $252; + } else { + $253 = HEAP32[$1>>2]|0; + $254 = HEAP8[$253>>0]|0; + $255 = $254 << 24 >> 24; + $256 = ($255|0)==(43); + if ($256) { + $257 = HEAP32[$incr>>2]|0; + $258 = HEAP32[$1>>2]|0; + $259 = (($258) + ($257)|0); + HEAP32[$1>>2] = $259; + } + } + while(1) { + $260 = HEAP32[$1>>2]|0; + $261 = HEAP32[$zEnd>>2]|0; + $262 = ($260>>>0)<($261>>>0); + if (!($262)) { + break L53; + } + $263 = HEAP32[$1>>2]|0; + $264 = HEAP8[$263>>0]|0; + $265 = $264&255; + $266 = (136 + ($265)|0); + $267 = HEAP8[$266>>0]|0; + $268 = $267&255; + $269 = $268 & 4; + $270 = ($269|0)!=(0); + if (!($270)) { + break L53; + } + $271 = HEAP32[$e>>2]|0; + $272 = ($271|0)<(10000); + if ($272) { + $273 = HEAP32[$e>>2]|0; + $274 = ($273*10)|0; + $275 = HEAP32[$1>>2]|0; + $276 = HEAP8[$275>>0]|0; + $277 = $276 << 24 >> 24; + $278 = (($277) - 48)|0; + $279 = (($274) + ($278))|0; + $280 = $279; + } else { + $280 = 10000; + } + HEAP32[$e>>2] = $280; + $281 = HEAP32[$incr>>2]|0; + $282 = HEAP32[$1>>2]|0; + $283 = (($282) + ($281)|0); + HEAP32[$1>>2] = $283; + HEAP32[$eValid>>2] = 1; + } + } + } while(0); + $284 = HEAP32[$nDigits>>2]|0; + $285 = ($284|0)!=(0); + if ($285) { + $286 = HEAP32[$eValid>>2]|0; + $287 = ($286|0)!=(0); + if ($287) { + while(1) { + $288 = HEAP32[$1>>2]|0; + $289 = HEAP32[$zEnd>>2]|0; + $290 = ($288>>>0)<($289>>>0); + if (!($290)) { + break L36; + } + $291 = HEAP32[$1>>2]|0; + $292 = HEAP8[$291>>0]|0; + $293 = $292&255; + $294 = (136 + ($293)|0); + $295 = HEAP8[$294>>0]|0; + $296 = $295&255; + $297 = $296 & 1; + $298 = ($297|0)!=(0); + if (!($298)) { + break L36; + } + $299 = HEAP32[$incr>>2]|0; + $300 = HEAP32[$1>>2]|0; + $301 = (($300) + ($299)|0); + HEAP32[$1>>2] = $301; + } + } + } + } + } + } while(0); + $302 = HEAP32[$e>>2]|0; + $303 = HEAP32[$esign>>2]|0; + $304 = Math_imul($302, $303)|0; + $305 = HEAP32[$d>>2]|0; + $306 = (($304) + ($305))|0; + HEAP32[$e>>2] = $306; + $307 = HEAP32[$e>>2]|0; + $308 = ($307|0)<(0); + if ($308) { + HEAP32[$esign>>2] = -1; + $309 = HEAP32[$e>>2]|0; + $310 = Math_imul($309, -1)|0; + HEAP32[$e>>2] = $310; + } else { + HEAP32[$esign>>2] = 1; + } + $311 = $s; + $312 = $311; + $313 = HEAP32[$312>>2]|0; + $314 = (($311) + 4)|0; + $315 = $314; + $316 = HEAP32[$315>>2]|0; + $317 = ($313|0)!=(0); + $318 = ($316|0)!=(0); + $319 = $317 | $318; + do { + if ($319) { + $326 = HEAP32[$esign>>2]|0; + $327 = ($326|0)>(0); + L84: do { + if ($327) { + while(1) { + $328 = $s; + $329 = $328; + $330 = HEAP32[$329>>2]|0; + $331 = (($328) + 4)|0; + $332 = $331; + $333 = HEAP32[$332>>2]|0; + $334 = ($333|0)<(214748364); + $335 = ($333|0)==(214748364); + $336 = ($330>>>0)<(3435973836); + $337 = $335 & $336; + $338 = $334 | $337; + if (!($338)) { + break L84; + } + $339 = HEAP32[$e>>2]|0; + $340 = ($339|0)>(0); + if (!($340)) { + break L84; + } + $341 = HEAP32[$e>>2]|0; + $342 = (($341) + -1)|0; + HEAP32[$e>>2] = $342; + $343 = $s; + $344 = $343; + $345 = HEAP32[$344>>2]|0; + $346 = (($343) + 4)|0; + $347 = $346; + $348 = HEAP32[$347>>2]|0; + $349 = (___muldi3(($345|0),($348|0),10,0)|0); + $350 = tempRet0; + $351 = $s; + $352 = $351; + HEAP32[$352>>2] = $349; + $353 = (($351) + 4)|0; + $354 = $353; + HEAP32[$354>>2] = $350; + } + } else { + while(1) { + $355 = $s; + $356 = $355; + $357 = HEAP32[$356>>2]|0; + $358 = (($355) + 4)|0; + $359 = $358; + $360 = HEAP32[$359>>2]|0; + $361 = (___remdi3(($357|0),($360|0),10,0)|0); + $362 = tempRet0; + $363 = ($361|0)!=(0); + $364 = ($362|0)!=(0); + $365 = $363 | $364; + if ($365) { + break L84; + } + $366 = HEAP32[$e>>2]|0; + $367 = ($366|0)>(0); + if (!($367)) { + break L84; + } + $368 = HEAP32[$e>>2]|0; + $369 = (($368) + -1)|0; + HEAP32[$e>>2] = $369; + $370 = $s; + $371 = $370; + $372 = HEAP32[$371>>2]|0; + $373 = (($370) + 4)|0; + $374 = $373; + $375 = HEAP32[$374>>2]|0; + $376 = (___divdi3(($372|0),($375|0),10,0)|0); + $377 = tempRet0; + $378 = $s; + $379 = $378; + HEAP32[$379>>2] = $376; + $380 = (($378) + 4)|0; + $381 = $380; + HEAP32[$381>>2] = $377; + } + } + } while(0); + $382 = HEAP32[$sign>>2]|0; + $383 = ($382|0)<(0); + $384 = $s; + $385 = $384; + $386 = HEAP32[$385>>2]|0; + $387 = (($384) + 4)|0; + $388 = $387; + $389 = HEAP32[$388>>2]|0; + $390 = (_i64Subtract(0,0,($386|0),($389|0))|0); + $391 = tempRet0; + $392 = $383 ? $390 : $386; + $393 = $383 ? $391 : $389; + $394 = $s; + $395 = $394; + HEAP32[$395>>2] = $392; + $396 = (($394) + 4)|0; + $397 = $396; + HEAP32[$397>>2] = $393; + $398 = HEAP32[$e>>2]|0; + $399 = ($398|0)!=(0); + if (!($399)) { + $465 = $s; + $466 = $465; + $467 = HEAP32[$466>>2]|0; + $468 = (($465) + 4)|0; + $469 = $468; + $470 = HEAP32[$469>>2]|0; + $471 = (+($467>>>0)) + (4294967296.0*(+($470|0))); + HEAPF64[$result>>3] = $471; + break; + } + HEAPF64[$scale>>3] = 1.0; + $400 = HEAP32[$e>>2]|0; + $401 = ($400|0)>(307); + $402 = HEAP32[$e>>2]|0; + $403 = ($402|0)<(342); + $or$cond = $401 & $403; + if ($or$cond) { + while(1) { + $404 = HEAP32[$e>>2]|0; + $405 = (($404|0) % 308)&-1; + $406 = ($405|0)!=(0); + if (!($406)) { + break; + } + $407 = +HEAPF64[$scale>>3]; + $408 = $407 * 10.0; + HEAPF64[$scale>>3] = $408; + $409 = HEAP32[$e>>2]|0; + $410 = (($409) - 1)|0; + HEAP32[$e>>2] = $410; + } + $411 = HEAP32[$esign>>2]|0; + $412 = ($411|0)<(0); + $413 = $s; + $414 = $413; + $415 = HEAP32[$414>>2]|0; + $416 = (($413) + 4)|0; + $417 = $416; + $418 = HEAP32[$417>>2]|0; + $419 = (+($415>>>0)) + (4294967296.0*(+($418|0))); + $420 = +HEAPF64[$scale>>3]; + if ($412) { + $421 = $419 / $420; + HEAPF64[$result>>3] = $421; + $422 = +HEAPF64[$result>>3]; + $423 = $422 / 1.00000000000000001098E+308; + HEAPF64[$result>>3] = $423; + break; + } else { + $424 = $419 * $420; + HEAPF64[$result>>3] = $424; + $425 = +HEAPF64[$result>>3]; + $426 = $425 * 1.00000000000000001098E+308; + HEAPF64[$result>>3] = $426; + break; + } + } + $427 = HEAP32[$e>>2]|0; + $428 = ($427|0)>=(342); + if ($428) { + $429 = HEAP32[$esign>>2]|0; + $430 = ($429|0)<(0); + $431 = $s; + $432 = $431; + $433 = HEAP32[$432>>2]|0; + $434 = (($431) + 4)|0; + $435 = $434; + $436 = HEAP32[$435>>2]|0; + $437 = (+($433>>>0)) + (4294967296.0*(+($436|0))); + if ($430) { + $438 = 0.0 * $437; + HEAPF64[$result>>3] = $438; + break; + } else { + $439 = inf * $437; + HEAPF64[$result>>3] = $439; + break; + } + } + while(1) { + $440 = HEAP32[$e>>2]|0; + $441 = (($440|0) % 22)&-1; + $442 = ($441|0)!=(0); + if (!($442)) { + break; + } + $443 = +HEAPF64[$scale>>3]; + $444 = $443 * 10.0; + HEAPF64[$scale>>3] = $444; + $445 = HEAP32[$e>>2]|0; + $446 = (($445) - 1)|0; + HEAP32[$e>>2] = $446; + } + while(1) { + $447 = HEAP32[$e>>2]|0; + $448 = ($447|0)>(0); + if (!($448)) { + break; + } + $449 = +HEAPF64[$scale>>3]; + $450 = $449 * 1.0E+22; + HEAPF64[$scale>>3] = $450; + $451 = HEAP32[$e>>2]|0; + $452 = (($451) - 22)|0; + HEAP32[$e>>2] = $452; + } + $453 = HEAP32[$esign>>2]|0; + $454 = ($453|0)<(0); + $455 = $s; + $456 = $455; + $457 = HEAP32[$456>>2]|0; + $458 = (($455) + 4)|0; + $459 = $458; + $460 = HEAP32[$459>>2]|0; + $461 = (+($457>>>0)) + (4294967296.0*(+($460|0))); + $462 = +HEAPF64[$scale>>3]; + if ($454) { + $463 = $461 / $462; + HEAPF64[$result>>3] = $463; + break; + } else { + $464 = $461 * $462; + HEAPF64[$result>>3] = $464; + break; + } + } else { + $320 = HEAP32[$sign>>2]|0; + $321 = ($320|0)<(0); + if ($321) { + $322 = HEAP32[$nDigits>>2]|0; + $323 = ($322|0)!=(0); + $325 = $323; + } else { + $325 = 0; + } + $324 = $325 ? -0.0 : 0.0; + HEAPF64[$result>>3] = $324; + } + } while(0); + $472 = +HEAPF64[$result>>3]; + $473 = HEAP32[$2>>2]|0; + HEAPF64[$473>>3] = $472; + $474 = HEAP32[$1>>2]|0; + $475 = HEAP32[$zEnd>>2]|0; + $476 = ($474>>>0)>=($475>>>0); + if ($476) { + $477 = HEAP32[$nDigits>>2]|0; + $478 = ($477|0)>(0); + if ($478) { + $479 = HEAP32[$eValid>>2]|0; + $480 = ($479|0)!=(0); + if ($480) { + $481 = HEAP32[$nonNum>>2]|0; + $482 = ($481|0)==(0); + $484 = $482; + } else { + $484 = 0; + } + } else { + $484 = 0; + } + } else { + $484 = 0; + } + $483 = $484&1; + HEAP32[$0>>2] = $483; + $485 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($485|0); +} +function _parseHhMmSs($zDate,$p) { + $zDate = $zDate|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0.0, $43 = 0.0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0.0, $48 = 0.0, $49 = 0.0, $5 = 0, $50 = 0.0, $51 = 0.0, $52 = 0, $53 = 0, $54 = 0.0, $55 = 0.0, $56 = 0.0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0.0, $69 = 0.0, $7 = 0, $70 = 0.0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $9 = 0, $h = 0, $m = 0, $ms = 0, $rScale = 0, $s = 0, $vararg_buffer10 = 0, $vararg_ptr1 = 0, $vararg_ptr13 = 0, $vararg_ptr14 = 0, $vararg_ptr15 = 0, $vararg_ptr16 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0; + var $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer10 = sp + 16|0; + $0 = sp + 68|0; + $1 = sp + 56|0; + $2 = sp + 76|0; + $h = sp + 72|0; + $m = sp + 60|0; + $s = sp + 64|0; + $ms = sp; + $rScale = sp + 8|0; + HEAP32[$1>>2] = $zDate; + HEAP32[$2>>2] = $p; + HEAPF64[$ms>>3] = 0.0; + $3 = HEAP32[$1>>2]|0; + HEAP32[$vararg_buffer10>>2] = 2; + $vararg_ptr1 = (($vararg_buffer10) + 4|0); + HEAP32[$vararg_ptr1>>2] = 0; + $vararg_ptr2 = (($vararg_buffer10) + 8|0); + HEAP32[$vararg_ptr2>>2] = 24; + $vararg_ptr3 = (($vararg_buffer10) + 12|0); + HEAP32[$vararg_ptr3>>2] = 58; + $vararg_ptr4 = (($vararg_buffer10) + 16|0); + HEAP32[$vararg_ptr4>>2] = $h; + $vararg_ptr5 = (($vararg_buffer10) + 20|0); + HEAP32[$vararg_ptr5>>2] = 2; + $vararg_ptr6 = (($vararg_buffer10) + 24|0); + HEAP32[$vararg_ptr6>>2] = 0; + $vararg_ptr7 = (($vararg_buffer10) + 28|0); + HEAP32[$vararg_ptr7>>2] = 59; + $vararg_ptr8 = (($vararg_buffer10) + 32|0); + HEAP32[$vararg_ptr8>>2] = 0; + $vararg_ptr9 = (($vararg_buffer10) + 36|0); + HEAP32[$vararg_ptr9>>2] = $m; + $4 = (_getDigits($3,$vararg_buffer10)|0); + $5 = ($4|0)!=(2); + if ($5) { + HEAP32[$0>>2] = 1; + $85 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($85|0); + } + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 5|0); + HEAP32[$1>>2] = $7; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP8[$8>>0]|0; + $10 = $9 << 24 >> 24; + $11 = ($10|0)==(58); + if ($11) { + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 1|0); + HEAP32[$1>>2] = $13; + $14 = HEAP32[$1>>2]|0; + HEAP32[$vararg_buffer10>>2] = 2; + $vararg_ptr13 = (($vararg_buffer10) + 4|0); + HEAP32[$vararg_ptr13>>2] = 0; + $vararg_ptr14 = (($vararg_buffer10) + 8|0); + HEAP32[$vararg_ptr14>>2] = 59; + $vararg_ptr15 = (($vararg_buffer10) + 12|0); + HEAP32[$vararg_ptr15>>2] = 0; + $vararg_ptr16 = (($vararg_buffer10) + 16|0); + HEAP32[$vararg_ptr16>>2] = $s; + $15 = (_getDigits($14,$vararg_buffer10)|0); + $16 = ($15|0)!=(1); + if ($16) { + HEAP32[$0>>2] = 1; + $85 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($85|0); + } + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 2|0); + HEAP32[$1>>2] = $18; + $19 = HEAP32[$1>>2]|0; + $20 = HEAP8[$19>>0]|0; + $21 = $20 << 24 >> 24; + $22 = ($21|0)==(46); + if ($22) { + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 1|0); + $25 = HEAP8[$24>>0]|0; + $26 = $25&255; + $27 = (136 + ($26)|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = $29 & 4; + $31 = ($30|0)!=(0); + if ($31) { + HEAPF64[$rScale>>3] = 1.0; + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 1|0); + HEAP32[$1>>2] = $33; + while(1) { + $34 = HEAP32[$1>>2]|0; + $35 = HEAP8[$34>>0]|0; + $36 = $35&255; + $37 = (136 + ($36)|0); + $38 = HEAP8[$37>>0]|0; + $39 = $38&255; + $40 = $39 & 4; + $41 = ($40|0)!=(0); + if (!($41)) { + break; + } + $42 = +HEAPF64[$ms>>3]; + $43 = $42 * 10.0; + $44 = HEAP32[$1>>2]|0; + $45 = HEAP8[$44>>0]|0; + $46 = $45 << 24 >> 24; + $47 = (+($46|0)); + $48 = $43 + $47; + $49 = $48 - 48.0; + HEAPF64[$ms>>3] = $49; + $50 = +HEAPF64[$rScale>>3]; + $51 = $50 * 10.0; + HEAPF64[$rScale>>3] = $51; + $52 = HEAP32[$1>>2]|0; + $53 = (($52) + 1|0); + HEAP32[$1>>2] = $53; + } + $54 = +HEAPF64[$rScale>>3]; + $55 = +HEAPF64[$ms>>3]; + $56 = $55 / $54; + HEAPF64[$ms>>3] = $56; + } + } + } else { + HEAP32[$s>>2] = 0; + } + $57 = HEAP32[$2>>2]|0; + $58 = (($57) + 42|0); + HEAP8[$58>>0] = 0; + $59 = HEAP32[$2>>2]|0; + $60 = (($59) + 41|0); + HEAP8[$60>>0] = 1; + $61 = HEAP32[$h>>2]|0; + $62 = HEAP32[$2>>2]|0; + $63 = (($62) + 20|0); + HEAP32[$63>>2] = $61; + $64 = HEAP32[$m>>2]|0; + $65 = HEAP32[$2>>2]|0; + $66 = (($65) + 24|0); + HEAP32[$66>>2] = $64; + $67 = HEAP32[$s>>2]|0; + $68 = (+($67|0)); + $69 = +HEAPF64[$ms>>3]; + $70 = $68 + $69; + $71 = HEAP32[$2>>2]|0; + $72 = (($71) + 32|0); + HEAPF64[$72>>3] = $70; + $73 = HEAP32[$1>>2]|0; + $74 = HEAP32[$2>>2]|0; + $75 = (_parseTimezone($73,$74)|0); + $76 = ($75|0)!=(0); + if ($76) { + HEAP32[$0>>2] = 1; + $85 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($85|0); + } else { + $77 = HEAP32[$2>>2]|0; + $78 = (($77) + 28|0); + $79 = HEAP32[$78>>2]|0; + $80 = ($79|0)!=(0); + $81 = $80 ? 1 : 0; + $82 = $81&255; + $83 = HEAP32[$2>>2]|0; + $84 = (($83) + 43|0); + HEAP8[$84>>0] = $82; + HEAP32[$0>>2] = 0; + $85 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($85|0); + } + return 0|0; +} +function _getDigits($zDate,$varargs) { + $zDate = $zDate|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $N = 0, $ap = 0, $arglist_current = 0, $arglist_current11 = 0, $arglist_current2 = 0, $arglist_current5 = 0, $arglist_current8 = 0, $arglist_next = 0, $arglist_next12 = 0, $arglist_next3 = 0, $arglist_next6 = 0, $arglist_next9 = 0; + var $cnt = 0, $max = 0, $min = 0, $nextC = 0, $pVal = 0, $val = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 48|0; + $ap = sp + 32|0; + $val = sp + 24|0; + $N = sp + 20|0; + $min = sp + 16|0; + $max = sp + 8|0; + $nextC = sp + 4|0; + $pVal = sp; + $cnt = sp + 12|0; + HEAP32[$0>>2] = $zDate; + HEAP32[$cnt>>2] = 0; + HEAP32[$ap>>2] = $varargs; + L1: while(1) { + $arglist_current = HEAP32[$ap>>2]|0; + $1 = HEAP32[$arglist_current>>2]|0; + $arglist_next = (($arglist_current) + 4|0); + HEAP32[$ap>>2] = $arglist_next; + HEAP32[$N>>2] = $1; + $arglist_current2 = HEAP32[$ap>>2]|0; + $2 = HEAP32[$arglist_current2>>2]|0; + $arglist_next3 = (($arglist_current2) + 4|0); + HEAP32[$ap>>2] = $arglist_next3; + HEAP32[$min>>2] = $2; + $arglist_current5 = HEAP32[$ap>>2]|0; + $3 = HEAP32[$arglist_current5>>2]|0; + $arglist_next6 = (($arglist_current5) + 4|0); + HEAP32[$ap>>2] = $arglist_next6; + HEAP32[$max>>2] = $3; + $arglist_current8 = HEAP32[$ap>>2]|0; + $4 = HEAP32[$arglist_current8>>2]|0; + $arglist_next9 = (($arglist_current8) + 4|0); + HEAP32[$ap>>2] = $arglist_next9; + HEAP32[$nextC>>2] = $4; + $arglist_current11 = HEAP32[$ap>>2]|0; + $5 = HEAP32[$arglist_current11>>2]|0; + $arglist_next12 = (($arglist_current11) + 4|0); + HEAP32[$ap>>2] = $arglist_next12; + HEAP32[$pVal>>2] = $5; + HEAP32[$val>>2] = 0; + while(1) { + $6 = HEAP32[$N>>2]|0; + $7 = (($6) + -1)|0; + HEAP32[$N>>2] = $7; + $8 = ($6|0)!=(0); + if (!($8)) { + break; + } + $9 = HEAP32[$0>>2]|0; + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = (136 + ($11)|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = $14 & 4; + $16 = ($15|0)!=(0); + if (!($16)) { + label = 11; + break L1; + } + $17 = HEAP32[$val>>2]|0; + $18 = ($17*10)|0; + $19 = HEAP32[$0>>2]|0; + $20 = HEAP8[$19>>0]|0; + $21 = $20 << 24 >> 24; + $22 = (($18) + ($21))|0; + $23 = (($22) - 48)|0; + HEAP32[$val>>2] = $23; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 1|0); + HEAP32[$0>>2] = $25; + } + $26 = HEAP32[$val>>2]|0; + $27 = HEAP32[$min>>2]|0; + $28 = ($26|0)<($27|0); + if ($28) { + label = 11; + break; + } + $29 = HEAP32[$val>>2]|0; + $30 = HEAP32[$max>>2]|0; + $31 = ($29|0)>($30|0); + if ($31) { + label = 11; + break; + } + $32 = HEAP32[$nextC>>2]|0; + $33 = ($32|0)!=(0); + if ($33) { + $34 = HEAP32[$nextC>>2]|0; + $35 = HEAP32[$0>>2]|0; + $36 = HEAP8[$35>>0]|0; + $37 = $36 << 24 >> 24; + $38 = ($34|0)!=($37|0); + if ($38) { + label = 11; + break; + } + } + $39 = HEAP32[$val>>2]|0; + $40 = HEAP32[$pVal>>2]|0; + HEAP32[$40>>2] = $39; + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + 1|0); + HEAP32[$0>>2] = $42; + $43 = HEAP32[$cnt>>2]|0; + $44 = (($43) + 1)|0; + HEAP32[$cnt>>2] = $44; + $45 = HEAP32[$nextC>>2]|0; + $46 = ($45|0)!=(0); + if (!($46)) { + label = 11; + break; + } + } + if ((label|0) == 11) { + $47 = HEAP32[$cnt>>2]|0; + STACKTOP = sp;return ($47|0); + } + return 0|0; +} +function _parseTimezone($zDate,$p) { + $zDate = $zDate|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; + var $9 = 0, $c = 0, $nHr = 0, $nMn = 0, $or$cond = 0, $sgn = 0, $vararg_buffer = 0, $vararg_ptr10 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer = sp; + $0 = sp + 64|0; + $1 = sp + 40|0; + $2 = sp + 44|0; + $sgn = sp + 48|0; + $nHr = sp + 52|0; + $nMn = sp + 56|0; + $c = sp + 60|0; + HEAP32[$1>>2] = $zDate; + HEAP32[$2>>2] = $p; + HEAP32[$sgn>>2] = 0; + while(1) { + $3 = HEAP32[$1>>2]|0; + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = (136 + ($5)|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = $8 & 1; + $10 = ($9|0)!=(0); + if (!($10)) { + break; + } + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 1|0); + HEAP32[$1>>2] = $12; + } + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 28|0); + HEAP32[$14>>2] = 0; + $15 = HEAP32[$1>>2]|0; + $16 = HEAP8[$15>>0]|0; + $17 = $16 << 24 >> 24; + HEAP32[$c>>2] = $17; + $18 = HEAP32[$c>>2]|0; + $19 = ($18|0)==(45); + do { + if ($19) { + HEAP32[$sgn>>2] = -1; + label = 11; + } else { + $20 = HEAP32[$c>>2]|0; + $21 = ($20|0)==(43); + if ($21) { + HEAP32[$sgn>>2] = 1; + label = 11; + break; + } + $22 = HEAP32[$c>>2]|0; + $23 = ($22|0)==(90); + $24 = HEAP32[$c>>2]|0; + $25 = ($24|0)==(122); + $or$cond = $23 | $25; + if ($or$cond) { + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 1|0); + HEAP32[$1>>2] = $27; + break; + } + $28 = HEAP32[$c>>2]|0; + $29 = ($28|0)!=(0); + $30 = $29&1; + HEAP32[$0>>2] = $30; + $60 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($60|0); + } + } while(0); + do { + if ((label|0) == 11) { + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 1|0); + HEAP32[$1>>2] = $32; + $33 = HEAP32[$1>>2]|0; + HEAP32[$vararg_buffer>>2] = 2; + $vararg_ptr2 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr2>>2] = 0; + $vararg_ptr3 = (($vararg_buffer) + 8|0); + HEAP32[$vararg_ptr3>>2] = 14; + $vararg_ptr4 = (($vararg_buffer) + 12|0); + HEAP32[$vararg_ptr4>>2] = 58; + $vararg_ptr5 = (($vararg_buffer) + 16|0); + HEAP32[$vararg_ptr5>>2] = $nHr; + $vararg_ptr6 = (($vararg_buffer) + 20|0); + HEAP32[$vararg_ptr6>>2] = 2; + $vararg_ptr7 = (($vararg_buffer) + 24|0); + HEAP32[$vararg_ptr7>>2] = 0; + $vararg_ptr8 = (($vararg_buffer) + 28|0); + HEAP32[$vararg_ptr8>>2] = 59; + $vararg_ptr9 = (($vararg_buffer) + 32|0); + HEAP32[$vararg_ptr9>>2] = 0; + $vararg_ptr10 = (($vararg_buffer) + 36|0); + HEAP32[$vararg_ptr10>>2] = $nMn; + $34 = (_getDigits($33,$vararg_buffer)|0); + $35 = ($34|0)!=(2); + if (!($35)) { + $36 = HEAP32[$1>>2]|0; + $37 = (($36) + 5|0); + HEAP32[$1>>2] = $37; + $38 = HEAP32[$sgn>>2]|0; + $39 = HEAP32[$nMn>>2]|0; + $40 = HEAP32[$nHr>>2]|0; + $41 = ($40*60)|0; + $42 = (($39) + ($41))|0; + $43 = Math_imul($38, $42)|0; + $44 = HEAP32[$2>>2]|0; + $45 = (($44) + 28|0); + HEAP32[$45>>2] = $43; + break; + } + HEAP32[$0>>2] = 1; + $60 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($60|0); + } + } while(0); + while(1) { + $46 = HEAP32[$1>>2]|0; + $47 = HEAP8[$46>>0]|0; + $48 = $47&255; + $49 = (136 + ($48)|0); + $50 = HEAP8[$49>>0]|0; + $51 = $50&255; + $52 = $51 & 1; + $53 = ($52|0)!=(0); + $54 = HEAP32[$1>>2]|0; + if (!($53)) { + break; + } + $55 = (($54) + 1|0); + HEAP32[$1>>2] = $55; + } + $56 = HEAP8[$54>>0]|0; + $57 = $56 << 24 >> 24; + $58 = ($57|0)!=(0); + $59 = $58&1; + HEAP32[$0>>2] = $59; + $60 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($60|0); +} +function _osLocaltime($t,$pTm) { + $t = $t|0; + $pTm = $pTm|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pX = 0, $rc = 0, dest = 0, label = 0, sp = 0; + var src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $rc = sp + 4|0; + $pX = sp + 8|0; + HEAP32[$0>>2] = $t; + HEAP32[$1>>2] = $pTm; + $2 = HEAP32[$0>>2]|0; + $3 = (_localtime(($2|0))|0); + HEAP32[$pX>>2] = $3; + $4 = HEAP32[((45136 + 264|0))>>2]|0; + $5 = ($4|0)!=(0); + $$ = $5 ? 0 : $3; + HEAP32[$pX>>2] = $$; + $6 = HEAP32[$pX>>2]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$pX>>2]|0; + dest=$8+0|0; src=$9+0|0; stop=dest+44|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + } + $10 = HEAP32[$pX>>2]|0; + $11 = ($10|0)==(0|0); + $12 = $11&1; + HEAP32[$rc>>2] = $12; + $13 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($13|0); +} +function _parseYyyyMmDd($zDate,$p) { + $zDate = $zDate|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; + var $9 = 0, $D = 0, $M = 0, $Y = 0, $neg = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr12 = 0, $vararg_ptr13 = 0, $vararg_ptr14 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $vararg_buffer = sp; + $0 = sp + 84|0; + $1 = sp + 60|0; + $2 = sp + 64|0; + $Y = sp + 68|0; + $M = sp + 72|0; + $D = sp + 76|0; + $neg = sp + 80|0; + HEAP32[$1>>2] = $zDate; + HEAP32[$2>>2] = $p; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP8[$3>>0]|0; + $5 = $4 << 24 >> 24; + $6 = ($5|0)==(45); + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 1|0); + HEAP32[$1>>2] = $8; + HEAP32[$neg>>2] = 1; + } else { + HEAP32[$neg>>2] = 0; + } + $9 = HEAP32[$1>>2]|0; + HEAP32[$vararg_buffer>>2] = 4; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = 0; + $vararg_ptr2 = (($vararg_buffer) + 8|0); + HEAP32[$vararg_ptr2>>2] = 9999; + $vararg_ptr3 = (($vararg_buffer) + 12|0); + HEAP32[$vararg_ptr3>>2] = 45; + $vararg_ptr4 = (($vararg_buffer) + 16|0); + HEAP32[$vararg_ptr4>>2] = $Y; + $vararg_ptr5 = (($vararg_buffer) + 20|0); + HEAP32[$vararg_ptr5>>2] = 2; + $vararg_ptr6 = (($vararg_buffer) + 24|0); + HEAP32[$vararg_ptr6>>2] = 1; + $vararg_ptr7 = (($vararg_buffer) + 28|0); + HEAP32[$vararg_ptr7>>2] = 12; + $vararg_ptr8 = (($vararg_buffer) + 32|0); + HEAP32[$vararg_ptr8>>2] = 45; + $vararg_ptr9 = (($vararg_buffer) + 36|0); + HEAP32[$vararg_ptr9>>2] = $M; + $vararg_ptr10 = (($vararg_buffer) + 40|0); + HEAP32[$vararg_ptr10>>2] = 2; + $vararg_ptr11 = (($vararg_buffer) + 44|0); + HEAP32[$vararg_ptr11>>2] = 1; + $vararg_ptr12 = (($vararg_buffer) + 48|0); + HEAP32[$vararg_ptr12>>2] = 31; + $vararg_ptr13 = (($vararg_buffer) + 52|0); + HEAP32[$vararg_ptr13>>2] = 0; + $vararg_ptr14 = (($vararg_buffer) + 56|0); + HEAP32[$vararg_ptr14>>2] = $D; + $10 = (_getDigits($9,$vararg_buffer)|0); + $11 = ($10|0)!=(3); + if ($11) { + HEAP32[$0>>2] = 1; + $59 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($59|0); + } + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 10|0); + HEAP32[$1>>2] = $13; + while(1) { + $14 = HEAP32[$1>>2]|0; + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = (136 + ($16)|0); + $18 = HEAP8[$17>>0]|0; + $19 = $18&255; + $20 = $19 & 1; + $21 = ($20|0)!=(0); + if ($21) { + $60 = 1; + } else { + $22 = HEAP32[$1>>2]|0; + $23 = HEAP8[$22>>0]|0; + $24 = $23&255; + $25 = (84)==($24|0); + $60 = $25; + } + $26 = HEAP32[$1>>2]|0; + if (!($60)) { + break; + } + $27 = (($26) + 1|0); + HEAP32[$1>>2] = $27; + } + $28 = HEAP32[$2>>2]|0; + $29 = (_parseHhMmSs($26,$28)|0); + $30 = ($29|0)==(0); + do { + if (!($30)) { + $31 = HEAP32[$1>>2]|0; + $32 = HEAP8[$31>>0]|0; + $33 = $32 << 24 >> 24; + $34 = ($33|0)==(0); + if ($34) { + $35 = HEAP32[$2>>2]|0; + $36 = (($35) + 41|0); + HEAP8[$36>>0] = 0; + break; + } + HEAP32[$0>>2] = 1; + $59 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($59|0); + } + } while(0); + $37 = HEAP32[$2>>2]|0; + $38 = (($37) + 42|0); + HEAP8[$38>>0] = 0; + $39 = HEAP32[$2>>2]|0; + $40 = (($39) + 40|0); + HEAP8[$40>>0] = 1; + $41 = HEAP32[$neg>>2]|0; + $42 = ($41|0)!=(0); + $43 = HEAP32[$Y>>2]|0; + $44 = (0 - ($43))|0; + $45 = $42 ? $44 : $43; + $46 = HEAP32[$2>>2]|0; + $47 = (($46) + 8|0); + HEAP32[$47>>2] = $45; + $48 = HEAP32[$M>>2]|0; + $49 = HEAP32[$2>>2]|0; + $50 = (($49) + 12|0); + HEAP32[$50>>2] = $48; + $51 = HEAP32[$D>>2]|0; + $52 = HEAP32[$2>>2]|0; + $53 = (($52) + 16|0); + HEAP32[$53>>2] = $51; + $54 = HEAP32[$2>>2]|0; + $55 = (($54) + 43|0); + $56 = HEAP8[$55>>0]|0; + $57 = ($56<<24>>24)!=(0); + if ($57) { + $58 = HEAP32[$2>>2]|0; + _computeJD($58); + } + HEAP32[$0>>2] = 0; + $59 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($59|0); +} +function _sqlite3StmtCurrentTime($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $v = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $v = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 56|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$v>>2] = $3; + $4 = HEAP32[$v>>2]|0; + $5 = (($4) + 136|0); + $6 = $5; + $7 = $6; + $8 = HEAP32[$7>>2]|0; + $9 = (($6) + 4)|0; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = ($8|0)==(0); + $13 = ($11|0)==(0); + $14 = $12 & $13; + if ($14) { + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 8|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$v>>2]|0; + $20 = (($19) + 136|0); + $21 = (_sqlite3OsCurrentTimeInt64($18,$20)|0); + HEAP32[$rc>>2] = $21; + $22 = HEAP32[$rc>>2]|0; + $23 = ($22|0)!=(0); + if ($23) { + $24 = HEAP32[$v>>2]|0; + $25 = (($24) + 136|0); + $26 = $25; + $27 = $26; + HEAP32[$27>>2] = 0; + $28 = (($26) + 4)|0; + $29 = $28; + HEAP32[$29>>2] = 0; + } + } + $30 = HEAP32[$v>>2]|0; + $31 = (($30) + 136|0); + $32 = $31; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = (($32) + 4)|0; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + tempRet0 = $37; + STACKTOP = sp;return ($34|0); +} +function _sqlite3OsCurrentTimeInt64($pVfs,$pTimeOut) { + $pVfs = $pVfs|0; + $pTimeOut = $pTimeOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0.0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp + 12|0; + $rc = sp + 8|0; + $r = sp; + HEAP32[$0>>2] = $pVfs; + HEAP32[$1>>2] = $pTimeOut; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)>=(2); + if ($4) { + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 72|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 72|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (FUNCTION_TABLE_iii[$11 & 127]($12,$13)|0); + HEAP32[$rc>>2] = $14; + $29 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($29|0); + } + } + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 64|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$0>>2]|0; + $19 = (FUNCTION_TABLE_iii[$17 & 127]($18,$r)|0); + HEAP32[$rc>>2] = $19; + $20 = +HEAPF64[$r>>3]; + $21 = $20 * 8.64E+7; + $22 = (~~$21)>>>0; + $23 = +Math_abs($21) >= 1.0 ? $21 > 0.0 ? (Math_min(+Math_floor($21 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($21 - +(~~$21 >>> 0)) / 4294967296.0) >>> 0 : 0; + $24 = HEAP32[$1>>2]|0; + $25 = $24; + $26 = $25; + HEAP32[$26>>2] = $22; + $27 = (($25) + 4)|0; + $28 = $27; + HEAP32[$28>>2] = $23; + $29 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($29|0); +} +function _sqlite3Utf8CharLen($zIn,$nByte) { + $zIn = $zIn|0; + $nByte = $nByte|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r = 0, $z = 0, $zTerm = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $r = sp + 4|0; + $z = sp + 8|0; + $zTerm = sp + 12|0; + HEAP32[$0>>2] = $zIn; + HEAP32[$1>>2] = $nByte; + HEAP32[$r>>2] = 0; + $2 = HEAP32[$0>>2]|0; + HEAP32[$z>>2] = $2; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)>=(0); + if ($4) { + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$z>>2]|0; + $7 = (($6) + ($5)|0); + HEAP32[$zTerm>>2] = $7; + } else { + HEAP32[$zTerm>>2] = (-1); + } + while(1) { + $8 = HEAP32[$z>>2]|0; + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = ($10|0)!=(0); + if (!($11)) { + label = 10; + break; + } + $12 = HEAP32[$z>>2]|0; + $13 = HEAP32[$zTerm>>2]|0; + $14 = ($12>>>0)<($13>>>0); + if (!($14)) { + label = 10; + break; + } + $15 = HEAP32[$z>>2]|0; + $16 = (($15) + 1|0); + HEAP32[$z>>2] = $16; + $17 = HEAP8[$15>>0]|0; + $18 = $17&255; + $19 = ($18|0)>=(192); + L8: do { + if ($19) { + while(1) { + $20 = HEAP32[$z>>2]|0; + $21 = HEAP8[$20>>0]|0; + $22 = $21&255; + $23 = $22 & 192; + $24 = ($23|0)==(128); + if (!($24)) { + break L8; + } + $25 = HEAP32[$z>>2]|0; + $26 = (($25) + 1|0); + HEAP32[$z>>2] = $26; + } + } + } while(0); + $27 = HEAP32[$r>>2]|0; + $28 = (($27) + 1)|0; + HEAP32[$r>>2] = $28; + } + if ((label|0) == 10) { + $29 = HEAP32[$r>>2]|0; + STACKTOP = sp;return ($29|0); + } + return 0|0; +} +function _sqlite3Utf8Read($pz) { + $pz = $pz|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $c = sp; + HEAP32[$0>>2] = $pz; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 1|0); + HEAP32[$1>>2] = $3; + $4 = HEAP8[$2>>0]|0; + $5 = $4&255; + HEAP32[$c>>2] = $5; + $6 = HEAP32[$c>>2]|0; + $7 = ($6>>>0)>=(192); + if (!($7)) { + $35 = HEAP32[$c>>2]|0; + STACKTOP = sp;return ($35|0); + } + $8 = HEAP32[$c>>2]|0; + $9 = (($8) - 192)|0; + $10 = (11592 + ($9)|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + HEAP32[$c>>2] = $12; + while(1) { + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = $16 & 192; + $18 = ($17|0)==(128); + $19 = HEAP32[$c>>2]|0; + if (!($18)) { + break; + } + $20 = $19 << 6; + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + 1|0); + HEAP32[$21>>2] = $23; + $24 = HEAP8[$22>>0]|0; + $25 = $24&255; + $26 = 63 & $25; + $27 = (($20) + ($26))|0; + HEAP32[$c>>2] = $27; + } + $28 = ($19>>>0)<(128); + if (!($28)) { + $29 = HEAP32[$c>>2]|0; + $30 = $29 & -2048; + $31 = ($30|0)==(55296); + if (!($31)) { + $32 = HEAP32[$c>>2]|0; + $33 = $32 & -2; + $34 = ($33|0)==(65534); + if (!($34)) { + $35 = HEAP32[$c>>2]|0; + STACKTOP = sp;return ($35|0); + } + } + } + HEAP32[$c>>2] = 65533; + $35 = HEAP32[$c>>2]|0; + STACKTOP = sp;return ($35|0); +} +function _sqlite3StrAccumAppend($p,$z,$N) { + $p = $p|0; + $z = $z|0; + $N = $N|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $z; + HEAP32[$2>>2] = $N; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = (($5) + ($6))|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 16|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($7|0)>=($10|0); + $12 = HEAP32[$0>>2]|0; + if ($11) { + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$2>>2]|0; + _enlargeAndAppend($12,$13,$14); + STACKTOP = sp;return; + } else { + $15 = (($12) + 12|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 8|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + ($16)|0); + $21 = HEAP32[$1>>2]|0; + $22 = HEAP32[$2>>2]|0; + _memcpy(($20|0),($21|0),($22|0))|0; + $23 = HEAP32[$2>>2]|0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 12|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($26) + ($23))|0; + HEAP32[$25>>2] = $27; + STACKTOP = sp;return; + } +} +function _enlargeAndAppend($p,$z,$N) { + $p = $p|0; + $z = $z|0; + $N = $N|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $z; + HEAP32[$2>>2] = $N; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = (_sqlite3StrAccumEnlarge($3,$4)|0); + HEAP32[$2>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = ($6|0)>(0); + if (!($7)) { + STACKTOP = sp;return; + } + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 12|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 8|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + ($10)|0); + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$2>>2]|0; + _memcpy(($14|0),($15|0),($16|0))|0; + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 12|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + ($17))|0; + HEAP32[$19>>2] = $21; + STACKTOP = sp;return; +} +function _sqlite3StrAccumEnlarge($p,$N) { + $p = $p|0; + $N = $N|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $szNew = 0, $zNew = 0, $zOld = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp + 20|0; + $2 = sp + 8|0; + $zNew = sp + 12|0; + $zOld = sp + 16|0; + $szNew = sp; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $N; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 25|0); + $5 = HEAP8[$4>>0]|0; + $6 = ($5<<24>>24)!=(0); + if ($6) { + HEAP32[$0>>2] = 0; + $120 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($120|0); + } + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 24|0); + $9 = HEAP8[$8>>0]|0; + $10 = ($9<<24>>24)!=(0); + $11 = HEAP32[$1>>2]|0; + if (!($10)) { + $12 = (($11) + 16|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 12|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($13) - ($16))|0; + $18 = (($17) - 1)|0; + HEAP32[$2>>2] = $18; + $19 = HEAP32[$1>>2]|0; + _setStrAccumError($19,2); + $20 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $20; + $120 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($120|0); + } + $21 = (($11) + 8|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($22|0)==($25|0); + if ($26) { + $30 = 0; + } else { + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 8|0); + $29 = HEAP32[$28>>2]|0; + $30 = $29; + } + HEAP32[$zOld>>2] = $30; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 12|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($33|0)<(0); + $35 = $34 << 31 >> 31; + $36 = $szNew; + $37 = $36; + HEAP32[$37>>2] = $33; + $38 = (($36) + 4)|0; + $39 = $38; + HEAP32[$39>>2] = $35; + $40 = HEAP32[$2>>2]|0; + $41 = (($40) + 1)|0; + $42 = ($41|0)<(0); + $43 = $42 << 31 >> 31; + $44 = $szNew; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = (($44) + 4)|0; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = (_i64Add(($46|0),($49|0),($41|0),($43|0))|0); + $51 = tempRet0; + $52 = $szNew; + $53 = $52; + HEAP32[$53>>2] = $50; + $54 = (($52) + 4)|0; + $55 = $54; + HEAP32[$55>>2] = $51; + $56 = $szNew; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = (($56) + 4)|0; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$1>>2]|0; + $63 = (($62) + 20|0); + $64 = HEAP32[$63>>2]|0; + $65 = ($64|0)<(0); + $66 = $65 << 31 >> 31; + $67 = ($61|0)>($66|0); + $68 = ($61|0)==($66|0); + $69 = ($58>>>0)>($64>>>0); + $70 = $68 & $69; + $71 = $67 | $70; + if ($71) { + $72 = HEAP32[$1>>2]|0; + _sqlite3StrAccumReset($72); + $73 = HEAP32[$1>>2]|0; + _setStrAccumError($73,2); + HEAP32[$0>>2] = 0; + $120 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($120|0); + } + $74 = $szNew; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = (($74) + 4)|0; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = HEAP32[$1>>2]|0; + $81 = (($80) + 16|0); + HEAP32[$81>>2] = $76; + $82 = HEAP32[$1>>2]|0; + $83 = (($82) + 24|0); + $84 = HEAP8[$83>>0]|0; + $85 = $84&255; + $86 = ($85|0)==(1); + if ($86) { + $87 = HEAP32[$1>>2]|0; + $88 = HEAP32[$87>>2]|0; + $89 = HEAP32[$zOld>>2]|0; + $90 = HEAP32[$1>>2]|0; + $91 = (($90) + 16|0); + $92 = HEAP32[$91>>2]|0; + $93 = (_sqlite3DbRealloc($88,$89,$92)|0); + HEAP32[$zNew>>2] = $93; + } else { + $94 = HEAP32[$zOld>>2]|0; + $95 = HEAP32[$1>>2]|0; + $96 = (($95) + 16|0); + $97 = HEAP32[$96>>2]|0; + $98 = (_sqlite3_realloc($94,$97)|0); + HEAP32[$zNew>>2] = $98; + } + $99 = HEAP32[$zNew>>2]|0; + $100 = ($99|0)!=(0|0); + if (!($100)) { + $118 = HEAP32[$1>>2]|0; + _sqlite3StrAccumReset($118); + $119 = HEAP32[$1>>2]|0; + _setStrAccumError($119,1); + HEAP32[$0>>2] = 0; + $120 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($120|0); + } + $101 = HEAP32[$zOld>>2]|0; + $102 = ($101|0)==(0|0); + if ($102) { + $103 = HEAP32[$1>>2]|0; + $104 = (($103) + 12|0); + $105 = HEAP32[$104>>2]|0; + $106 = ($105|0)>(0); + if ($106) { + $107 = HEAP32[$zNew>>2]|0; + $108 = HEAP32[$1>>2]|0; + $109 = (($108) + 8|0); + $110 = HEAP32[$109>>2]|0; + $111 = HEAP32[$1>>2]|0; + $112 = (($111) + 12|0); + $113 = HEAP32[$112>>2]|0; + _memcpy(($107|0),($110|0),($113|0))|0; + } + } + $114 = HEAP32[$zNew>>2]|0; + $115 = HEAP32[$1>>2]|0; + $116 = (($115) + 8|0); + HEAP32[$116>>2] = $114; + $117 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $117; + $120 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($120|0); +} +function _setStrAccumError($p,$eError) { + $p = $p|0; + $eError = $eError|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + $1 = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP8[$1>>0] = $eError; + $2 = HEAP8[$1>>0]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 25|0); + HEAP8[$4>>0] = $2; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 16|0); + HEAP32[$6>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3StrAccumReset($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($3|0)!=($6|0); + do { + if ($7) { + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 24|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = ($11|0)==(1); + $13 = HEAP32[$0>>2]|0; + if ($12) { + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 8|0); + $17 = HEAP32[$16>>2]|0; + _sqlite3DbFree($14,$17); + break; + } else { + $18 = (($13) + 8|0); + $19 = HEAP32[$18>>2]|0; + _sqlite3_free($19); + break; + } + } + } while(0); + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 8|0); + HEAP32[$21>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3DbRealloc($db,$p,$n) { + $db = $db|0; + $p = $p|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pNew = sp + 12|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $n; + HEAP32[$pNew>>2] = 0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 64|0); + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = ($7|0)==(0); + do { + if ($8) { + $9 = HEAP32[$2>>2]|0; + $10 = ($9|0)==(0|0); + $11 = HEAP32[$1>>2]|0; + if ($10) { + $12 = HEAP32[$3>>2]|0; + $13 = (_sqlite3DbMallocRaw($11,$12)|0); + HEAP32[$0>>2] = $13; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); + } + $14 = HEAP32[$2>>2]|0; + $15 = (_isLookaside($11,$14)|0); + $16 = ($15|0)!=(0); + if (!($16)) { + $37 = HEAP32[$2>>2]|0; + $38 = HEAP32[$3>>2]|0; + $39 = (_sqlite3_realloc($37,$38)|0); + HEAP32[$pNew>>2] = $39; + $40 = HEAP32[$pNew>>2]|0; + $41 = ($40|0)!=(0|0); + if ($41) { + break; + } + $42 = HEAP32[$1>>2]|0; + $43 = (($42) + 64|0); + HEAP8[$43>>0] = 1; + break; + } + $17 = HEAP32[$3>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 240|0); + $20 = HEAP16[$19>>1]|0; + $21 = $20&65535; + $22 = ($17|0)<=($21|0); + if ($22) { + $23 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $23; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); + } else { + $24 = HEAP32[$1>>2]|0; + $25 = HEAP32[$3>>2]|0; + $26 = (_sqlite3DbMallocRaw($24,$25)|0); + HEAP32[$pNew>>2] = $26; + $27 = HEAP32[$pNew>>2]|0; + $28 = ($27|0)!=(0|0); + if (!($28)) { + break; + } + $29 = HEAP32[$pNew>>2]|0; + $30 = HEAP32[$2>>2]|0; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 240|0); + $33 = HEAP16[$32>>1]|0; + $34 = $33&65535; + _memcpy(($29|0),($30|0),($34|0))|0; + $35 = HEAP32[$1>>2]|0; + $36 = HEAP32[$2>>2]|0; + _sqlite3DbFree($35,$36); + break; + } + } + } while(0); + $44 = HEAP32[$pNew>>2]|0; + HEAP32[$0>>2] = $44; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); +} +function _isLookaside($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 240|0); + $5 = (($4) + 28|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($2>>>0)>=($6>>>0); + if (!($7)) { + $15 = 0; + $14 = $15&1; + STACKTOP = sp;return ($14|0); + } + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 240|0); + $11 = (($10) + 32|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($8>>>0)<($12>>>0); + $15 = $13; + $14 = $15&1; + STACKTOP = sp;return ($14|0); +} +function _sqlite3AddInt64($pA,$0,$1) { + $pA = $pA|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $iA = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 20|0; + $3 = sp + 16|0; + $4 = sp; + $iA = sp + 8|0; + HEAP32[$3>>2] = $pA; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + $9 = HEAP32[$3>>2]|0; + $10 = $9; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (($10) + 4)|0; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = $iA; + $17 = $16; + HEAP32[$17>>2] = $12; + $18 = (($16) + 4)|0; + $19 = $18; + HEAP32[$19>>2] = $15; + $20 = $4; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = (($20) + 4)|0; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)>(0); + $27 = ($25|0)==(0); + $28 = ($22>>>0)>=(0); + $29 = $27 & $28; + $30 = $26 | $29; + $31 = $iA; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + if ($30) { + $37 = ($36|0)>(0); + $38 = ($36|0)==(0); + $39 = ($33>>>0)>(0); + $40 = $38 & $39; + $41 = $37 | $40; + if ($41) { + $42 = $iA; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (_i64Subtract(-1,2147483647,($44|0),($47|0))|0); + $49 = tempRet0; + $50 = $4; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (($50) + 4)|0; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + $56 = ($49|0)<($55|0); + $57 = ($49|0)==($55|0); + $58 = ($48>>>0)<($52>>>0); + $59 = $57 & $58; + $60 = $56 | $59; + if ($60) { + HEAP32[$2>>2] = 1; + $104 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($104|0); + } + } + } else { + $61 = ($36|0)<(0); + if ($61) { + $62 = $iA; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (($62) + 4)|0; + $66 = $65; + $67 = HEAP32[$66>>2]|0; + $68 = (_i64Add(($64|0),($67|0),-1,2147483647)|0); + $69 = tempRet0; + $70 = (_i64Subtract(0,0,($68|0),($69|0))|0); + $71 = tempRet0; + $72 = $4; + $73 = $72; + $74 = HEAP32[$73>>2]|0; + $75 = (($72) + 4)|0; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = (_i64Add(($74|0),($77|0),1,0)|0); + $79 = tempRet0; + $80 = ($71|0)>($79|0); + $81 = ($71|0)==($79|0); + $82 = ($70>>>0)>($78>>>0); + $83 = $81 & $82; + $84 = $80 | $83; + if ($84) { + HEAP32[$2>>2] = 1; + $104 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($104|0); + } + } + } + $85 = $4; + $86 = $85; + $87 = HEAP32[$86>>2]|0; + $88 = (($85) + 4)|0; + $89 = $88; + $90 = HEAP32[$89>>2]|0; + $91 = HEAP32[$3>>2]|0; + $92 = $91; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = (($92) + 4)|0; + $96 = $95; + $97 = HEAP32[$96>>2]|0; + $98 = (_i64Add(($94|0),($97|0),($87|0),($90|0))|0); + $99 = tempRet0; + $100 = $91; + $101 = $100; + HEAP32[$101>>2] = $98; + $102 = (($100) + 4)|0; + $103 = $102; + HEAP32[$103>>2] = $99; + HEAP32[$2>>2] = 0; + $104 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($104|0); +} +function _contextMalloc($context,$0,$1) { + $context = $context|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 16|0; + $3 = sp; + $z = sp + 8|0; + $db = sp + 12|0; + HEAP32[$2>>2] = $context; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = HEAP32[$2>>2]|0; + $9 = (_sqlite3_context_db_handle($8)|0); + HEAP32[$db>>2] = $9; + $10 = $3; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (($10) + 4)|0; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$db>>2]|0; + $17 = (($16) + 88|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($18|0)<(0); + $20 = $19 << 31 >> 31; + $21 = ($15|0)>($20|0); + $22 = ($15|0)==($20|0); + $23 = ($12>>>0)>($18>>>0); + $24 = $22 & $23; + $25 = $21 | $24; + if ($25) { + $26 = HEAP32[$2>>2]|0; + _sqlite3_result_error_toobig($26); + HEAP32[$z>>2] = 0; + $37 = HEAP32[$z>>2]|0; + STACKTOP = sp;return ($37|0); + } + $27 = $3; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (($27) + 4)|0; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (_sqlite3Malloc($29)|0); + HEAP32[$z>>2] = $33; + $34 = HEAP32[$z>>2]|0; + $35 = ($34|0)!=(0|0); + if ($35) { + $37 = HEAP32[$z>>2]|0; + STACKTOP = sp;return ($37|0); + } + $36 = HEAP32[$2>>2]|0; + _sqlite3_result_error_nomem($36); + $37 = HEAP32[$z>>2]|0; + STACKTOP = sp;return ($37|0); +} +function _sqlite3GetFuncCollSeq($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $context; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 52|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _sqlite3MemCompare($pMem1,$pMem2,$pColl) { + $pMem1 = $pMem1|0; + $pMem2 = $pMem2|0; + $pColl = $pColl|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0.0, $109 = 0.0, $11 = 0, $110 = 0.0, $111 = 0, $112 = 0.0, $113 = 0.0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0.0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0.0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0.0, $97 = 0; + var $98 = 0, $99 = 0, $combined_flags = 0, $f1 = 0, $f2 = 0, $r1 = 0, $r2 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $rc = sp + 28|0; + $f1 = sp + 24|0; + $f2 = sp + 16|0; + $combined_flags = sp + 20|0; + $r1 = sp; + $r2 = sp + 8|0; + HEAP32[$1>>2] = $pMem1; + HEAP32[$2>>2] = $pMem2; + HEAP32[$3>>2] = $pColl; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 28|0); + $6 = HEAP16[$5>>1]|0; + $7 = $6&65535; + HEAP32[$f1>>2] = $7; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 28|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10&65535; + HEAP32[$f2>>2] = $11; + $12 = HEAP32[$f1>>2]|0; + $13 = HEAP32[$f2>>2]|0; + $14 = $12 | $13; + HEAP32[$combined_flags>>2] = $14; + $15 = HEAP32[$combined_flags>>2]|0; + $16 = $15 & 1; + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$f2>>2]|0; + $19 = $18 & 1; + $20 = HEAP32[$f1>>2]|0; + $21 = $20 & 1; + $22 = (($19) - ($21))|0; + HEAP32[$0>>2] = $22; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + $23 = HEAP32[$combined_flags>>2]|0; + $24 = $23 & 12; + $25 = ($24|0)!=(0); + if (!($25)) { + $115 = HEAP32[$combined_flags>>2]|0; + $116 = $115 & 2; + $117 = ($116|0)!=(0); + if ($117) { + $118 = HEAP32[$f1>>2]|0; + $119 = $118 & 2; + $120 = ($119|0)==(0); + if ($120) { + HEAP32[$0>>2] = 1; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + $121 = HEAP32[$f2>>2]|0; + $122 = $121 & 2; + $123 = ($122|0)==(0); + if ($123) { + HEAP32[$0>>2] = -1; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + $124 = HEAP32[$3>>2]|0; + $125 = ($124|0)!=(0|0); + if ($125) { + $126 = HEAP32[$1>>2]|0; + $127 = HEAP32[$2>>2]|0; + $128 = HEAP32[$3>>2]|0; + $129 = (_vdbeCompareMemString($126,$127,$128)|0); + HEAP32[$0>>2] = $129; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + } + $130 = HEAP32[$1>>2]|0; + $131 = (($130) + 4|0); + $132 = HEAP32[$131>>2]|0; + $133 = HEAP32[$2>>2]|0; + $134 = (($133) + 4|0); + $135 = HEAP32[$134>>2]|0; + $136 = HEAP32[$1>>2]|0; + $137 = (($136) + 24|0); + $138 = HEAP32[$137>>2]|0; + $139 = HEAP32[$2>>2]|0; + $140 = (($139) + 24|0); + $141 = HEAP32[$140>>2]|0; + $142 = ($138|0)>($141|0); + if ($142) { + $143 = HEAP32[$2>>2]|0; + $144 = (($143) + 24|0); + $145 = HEAP32[$144>>2]|0; + $149 = $145; + } else { + $146 = HEAP32[$1>>2]|0; + $147 = (($146) + 24|0); + $148 = HEAP32[$147>>2]|0; + $149 = $148; + } + $150 = (_memcmp($132,$135,$149)|0); + HEAP32[$rc>>2] = $150; + $151 = HEAP32[$rc>>2]|0; + $152 = ($151|0)==(0); + if ($152) { + $153 = HEAP32[$1>>2]|0; + $154 = (($153) + 24|0); + $155 = HEAP32[$154>>2]|0; + $156 = HEAP32[$2>>2]|0; + $157 = (($156) + 24|0); + $158 = HEAP32[$157>>2]|0; + $159 = (($155) - ($158))|0; + HEAP32[$rc>>2] = $159; + } + $160 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $160; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + $26 = HEAP32[$f1>>2]|0; + $27 = HEAP32[$f2>>2]|0; + $28 = $26 & $27; + $29 = $28 & 4; + $30 = ($29|0)!=(0); + if ($30) { + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 16|0); + $33 = $32; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = (($33) + 4)|0; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$2>>2]|0; + $40 = (($39) + 16|0); + $41 = $40; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = (($41) + 4)|0; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = ($38|0)<($46|0); + $48 = ($38|0)==($46|0); + $49 = ($35>>>0)<($43>>>0); + $50 = $48 & $49; + $51 = $47 | $50; + if ($51) { + HEAP32[$0>>2] = -1; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + $52 = HEAP32[$1>>2]|0; + $53 = (($52) + 16|0); + $54 = $53; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = (($54) + 4)|0; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = HEAP32[$2>>2]|0; + $61 = (($60) + 16|0); + $62 = $61; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (($62) + 4)|0; + $66 = $65; + $67 = HEAP32[$66>>2]|0; + $68 = ($59|0)>($67|0); + $69 = ($59|0)==($67|0); + $70 = ($56>>>0)>($64>>>0); + $71 = $69 & $70; + $72 = $68 | $71; + if ($72) { + HEAP32[$0>>2] = 1; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } else { + HEAP32[$0>>2] = 0; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + } + $73 = HEAP32[$f1>>2]|0; + $74 = $73 & 8; + $75 = ($74|0)!=(0); + do { + if ($75) { + $76 = HEAP32[$1>>2]|0; + $77 = (($76) + 8|0); + $78 = +HEAPF64[$77>>3]; + HEAPF64[$r1>>3] = $78; + } else { + $79 = HEAP32[$f1>>2]|0; + $80 = $79 & 4; + $81 = ($80|0)!=(0); + if ($81) { + $82 = HEAP32[$1>>2]|0; + $83 = (($82) + 16|0); + $84 = $83; + $85 = $84; + $86 = HEAP32[$85>>2]|0; + $87 = (($84) + 4)|0; + $88 = $87; + $89 = HEAP32[$88>>2]|0; + $90 = (+($86>>>0)) + (4294967296.0*(+($89|0))); + HEAPF64[$r1>>3] = $90; + break; + } + HEAP32[$0>>2] = 1; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + } while(0); + $91 = HEAP32[$f2>>2]|0; + $92 = $91 & 8; + $93 = ($92|0)!=(0); + do { + if ($93) { + $94 = HEAP32[$2>>2]|0; + $95 = (($94) + 8|0); + $96 = +HEAPF64[$95>>3]; + HEAPF64[$r2>>3] = $96; + } else { + $97 = HEAP32[$f2>>2]|0; + $98 = $97 & 4; + $99 = ($98|0)!=(0); + if ($99) { + $100 = HEAP32[$2>>2]|0; + $101 = (($100) + 16|0); + $102 = $101; + $103 = $102; + $104 = HEAP32[$103>>2]|0; + $105 = (($102) + 4)|0; + $106 = $105; + $107 = HEAP32[$106>>2]|0; + $108 = (+($104>>>0)) + (4294967296.0*(+($107|0))); + HEAPF64[$r2>>3] = $108; + break; + } + HEAP32[$0>>2] = -1; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + } while(0); + $109 = +HEAPF64[$r1>>3]; + $110 = +HEAPF64[$r2>>3]; + $111 = $109 < $110; + if ($111) { + HEAP32[$0>>2] = -1; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + $112 = +HEAPF64[$r1>>3]; + $113 = +HEAPF64[$r2>>3]; + $114 = $112 > $113; + if ($114) { + HEAP32[$0>>2] = 1; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } else { + HEAP32[$0>>2] = 0; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + return 0|0; +} +function _vdbeCompareMemString($pMem1,$pMem2,$pColl) { + $pMem1 = $pMem1|0; + $pMem2 = $pMem2|0; + $pColl = $pColl|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $c1 = 0, $c2 = 0, $n1 = 0, $n2 = 0, $rc = 0, $v1 = 0, $v2 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $0 = sp + 112|0; + $1 = sp + 108|0; + $2 = sp + 104|0; + $3 = sp + 100|0; + $rc = sp + 96|0; + $v1 = sp + 92|0; + $v2 = sp + 84|0; + $n1 = sp + 80|0; + $n2 = sp + 88|0; + $c1 = sp; + $c2 = sp + 40|0; + HEAP32[$1>>2] = $pMem1; + HEAP32[$2>>2] = $pMem2; + HEAP32[$3>>2] = $pColl; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 30|0); + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = HEAP32[$3>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = ($7|0)==($11|0); + if ($12) { + $13 = HEAP32[$3>>2]|0; + $14 = (($13) + 12|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$3>>2]|0; + $17 = (($16) + 8|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 24|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 4|0); + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 24|0); + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$2>>2]|0; + $29 = (($28) + 4|0); + $30 = HEAP32[$29>>2]|0; + $31 = (FUNCTION_TABLE_iiiiii[$15 & 15]($18,$21,$24,$27,$30)|0); + HEAP32[$0>>2] = $31; + $64 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($64|0); + } + dest=$c1+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + dest=$c2+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $32 = HEAP32[$1>>2]|0; + _sqlite3VdbeMemShallowCopy($c1,$32,4096); + $33 = HEAP32[$2>>2]|0; + _sqlite3VdbeMemShallowCopy($c2,$33,4096); + $34 = HEAP32[$3>>2]|0; + $35 = (($34) + 4|0); + $36 = HEAP8[$35>>0]|0; + $37 = (_sqlite3ValueText($c1,$36)|0); + HEAP32[$v1>>2] = $37; + $38 = HEAP32[$v1>>2]|0; + $39 = ($38|0)==(0|0); + if ($39) { + $42 = 0; + } else { + $40 = (($c1) + 24|0); + $41 = HEAP32[$40>>2]|0; + $42 = $41; + } + HEAP32[$n1>>2] = $42; + $43 = HEAP32[$3>>2]|0; + $44 = (($43) + 4|0); + $45 = HEAP8[$44>>0]|0; + $46 = (_sqlite3ValueText($c2,$45)|0); + HEAP32[$v2>>2] = $46; + $47 = HEAP32[$v2>>2]|0; + $48 = ($47|0)==(0|0); + if ($48) { + $51 = 0; + } else { + $49 = (($c2) + 24|0); + $50 = HEAP32[$49>>2]|0; + $51 = $50; + } + HEAP32[$n2>>2] = $51; + $52 = HEAP32[$3>>2]|0; + $53 = (($52) + 12|0); + $54 = HEAP32[$53>>2]|0; + $55 = HEAP32[$3>>2]|0; + $56 = (($55) + 8|0); + $57 = HEAP32[$56>>2]|0; + $58 = HEAP32[$n1>>2]|0; + $59 = HEAP32[$v1>>2]|0; + $60 = HEAP32[$n2>>2]|0; + $61 = HEAP32[$v2>>2]|0; + $62 = (FUNCTION_TABLE_iiiiii[$54 & 15]($57,$58,$59,$60,$61)|0); + HEAP32[$rc>>2] = $62; + _sqlite3VdbeMemRelease($c1); + _sqlite3VdbeMemRelease($c2); + $63 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $63; + $64 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($64|0); +} +function _sqlite3VdbeMemShallowCopy($pTo,$pFrom,$srcType) { + $pTo = $pTo|0; + $pFrom = $pFrom|0; + $srcType = $srcType|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pTo; + HEAP32[$1>>2] = $pFrom; + HEAP32[$2>>2] = $srcType; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 28|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5&65535; + $7 = $6 & 9312; + $8 = ($7|0)!=(0); + if ($8) { + $9 = HEAP32[$0>>2]|0; + _sqlite3VdbeMemReleaseExternal($9); + } + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$1>>2]|0; + dest=$10+0|0; src=$11+0|0; stop=dest+36|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 32|0); + HEAP32[$13>>2] = 0; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 28|0); + $16 = HEAP16[$15>>1]|0; + $17 = $16&65535; + $18 = $17 & 2048; + $19 = ($18|0)==(0); + if (!($19)) { + STACKTOP = sp;return; + } + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 28|0); + $22 = HEAP16[$21>>1]|0; + $23 = $22&65535; + $24 = $23 & -7169; + $25 = $24&65535; + HEAP16[$21>>1] = $25; + $26 = HEAP32[$2>>2]|0; + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 28|0); + $29 = HEAP16[$28>>1]|0; + $30 = $29&65535; + $31 = $30 | $26; + $32 = $31&65535; + HEAP16[$28>>1] = $32; + STACKTOP = sp;return; +} +function _sqlite3XPrintf($p,$bFlags,$zFormat,$varargs) { + $p = $p|0; + $bFlags = $bFlags|0; + $zFormat = $zFormat|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $ap = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $ap = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $bFlags; + HEAP32[$2>>2] = $zFormat; + HEAP32[$ap>>2] = $varargs; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + _sqlite3VXPrintf($3,$4,$5,$ap); + STACKTOP = sp;return; +} +function _sqlite3SkipAccumulatorLoad($context) { + $context = $context|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $context; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 68|0); + HEAP8[$2>>0] = 1; + STACKTOP = sp;return; +} +function _sqlite3ParserAlloc($mallocProc) { + $mallocProc = $mallocProc|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $pParser = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pParser = sp; + HEAP32[$0>>2] = $mallocProc; + $1 = HEAP32[$0>>2]|0; + $2 = (FUNCTION_TABLE_ii[$1 & 63](1612)|0); + HEAP32[$pParser>>2] = $2; + $3 = HEAP32[$pParser>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + $6 = HEAP32[$pParser>>2]|0; + STACKTOP = sp;return ($6|0); + } + $5 = HEAP32[$pParser>>2]|0; + HEAP32[$5>>2] = -1; + $6 = HEAP32[$pParser>>2]|0; + STACKTOP = sp;return ($6|0); +} +function _sqlite3Parser($yyp,$yymajor,$yyminor,$pParse) { + $yyp = $yyp|0; + $yymajor = $yymajor|0; + $yyminor = $yyminor|0; + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $yyact = 0, $yyminorunion = 0, $yyminorunion$byval_copy = 0, $yypParser = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $yyminorunion$byval_copy = sp + 32|0; + $0 = sp; + $1 = sp + 4|0; + $2 = sp + 8|0; + $yyminorunion = sp + 12|0; + $yyact = sp + 24|0; + $yypParser = sp + 28|0; + HEAP32[$0>>2] = $yyp; + HEAP32[$1>>2] = $yymajor; + HEAP32[$2>>2] = $pParse; + $3 = HEAP32[$0>>2]|0; + HEAP32[$yypParser>>2] = $3; + $4 = HEAP32[$yypParser>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)<(0); + if ($6) { + $7 = HEAP32[$yypParser>>2]|0; + HEAP32[$7>>2] = 0; + $8 = HEAP32[$yypParser>>2]|0; + $9 = (($8) + 4|0); + HEAP32[$9>>2] = -1; + $10 = HEAP32[$yypParser>>2]|0; + $11 = (($10) + 12|0); + HEAP16[$11>>1] = 0; + $12 = HEAP32[$yypParser>>2]|0; + $13 = (($12) + 12|0); + $14 = (($13) + 2|0); + HEAP8[$14>>0] = 0; + } + ;HEAP32[$yyminorunion+0>>2]=HEAP32[$yyminor+0>>2]|0;HEAP32[$yyminorunion+4>>2]=HEAP32[$yyminor+4>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$yypParser>>2]|0; + $17 = (($16) + 8|0); + HEAP32[$17>>2] = $15; + while(1) { + $18 = HEAP32[$yypParser>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = $19&255; + $21 = (_yy_find_shift_action($18,$20)|0); + HEAP32[$yyact>>2] = $21; + $22 = HEAP32[$yyact>>2]|0; + $23 = ($22|0)<(642); + do { + if ($23) { + $24 = HEAP32[$yypParser>>2]|0; + $25 = HEAP32[$yyact>>2]|0; + $26 = HEAP32[$1>>2]|0; + _yy_shift($24,$25,$26,$yyminorunion); + $27 = HEAP32[$yypParser>>2]|0; + $28 = (($27) + 4|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + -1)|0; + HEAP32[$28>>2] = $30; + HEAP32[$1>>2] = 254; + } else { + $31 = HEAP32[$yyact>>2]|0; + $32 = ($31|0)<(969); + $33 = HEAP32[$yypParser>>2]|0; + if ($32) { + $34 = HEAP32[$yyact>>2]|0; + $35 = (($34) - 642)|0; + _yy_reduce($33,$35); + break; + } else { + $36 = HEAP32[$1>>2]|0; + ;HEAP32[$yyminorunion$byval_copy+0>>2]=HEAP32[$yyminorunion+0>>2]|0;HEAP32[$yyminorunion$byval_copy+4>>2]=HEAP32[$yyminorunion+4>>2]|0;HEAP32[$yyminorunion$byval_copy+8>>2]=HEAP32[$yyminorunion+8>>2]|0; + _yy_syntax_error($33,$36,$yyminorunion$byval_copy); + $37 = HEAP32[$yypParser>>2]|0; + $38 = HEAP32[$1>>2]|0; + $39 = $38&255; + _yy_destructor($37,$39,$yyminorunion); + HEAP32[$1>>2] = 254; + break; + } + } + } while(0); + $40 = HEAP32[$1>>2]|0; + $41 = ($40|0)!=(254); + if (!($41)) { + label = 11; + break; + } + $42 = HEAP32[$yypParser>>2]|0; + $43 = HEAP32[$42>>2]|0; + $44 = ($43|0)>=(0); + if (!($44)) { + label = 11; + break; + } + } + if ((label|0) == 11) { + STACKTOP = sp;return; + } +} +function _sqlite3ParserFree($p,$freeProc) { + $p = $p|0; + $freeProc = $freeProc|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pParser = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pParser = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $freeProc; + $2 = HEAP32[$0>>2]|0; + HEAP32[$pParser>>2] = $2; + $3 = HEAP32[$pParser>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + STACKTOP = sp;return; + } + while(1) { + $5 = HEAP32[$pParser>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)>=(0); + if (!($7)) { + break; + } + $8 = HEAP32[$pParser>>2]|0; + (_yy_pop_parser_stack($8)|0); + } + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$pParser>>2]|0; + FUNCTION_TABLE_vi[$9 & 31]($10); + STACKTOP = sp;return; +} +function _sqlite3SetString($pz,$db,$zFormat,$varargs) { + $pz = $pz|0; + $db = $db|0; + $zFormat = $zFormat|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ap = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $ap = sp + 8|0; + $z = sp + 24|0; + HEAP32[$0>>2] = $pz; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $zFormat; + HEAP32[$ap>>2] = $varargs; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = (_sqlite3VMPrintf($3,$4,$ap)|0); + HEAP32[$z>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$7>>2]|0; + _sqlite3DbFree($6,$8); + $9 = HEAP32[$z>>2]|0; + $10 = HEAP32[$0>>2]|0; + HEAP32[$10>>2] = $9; + STACKTOP = sp;return; +} +function _sqlite3VdbeDelete($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $db = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)==(0|0); + if ($2) { + STACKTOP = sp;return; + } + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + $5 = HEAP32[$db>>2]|0; + $6 = HEAP32[$0>>2]|0; + _sqlite3VdbeClearObject($5,$6); + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 48|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0|0); + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 52|0); + $13 = HEAP32[$12>>2]|0; + if ($10) { + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 48|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + 52|0); + HEAP32[$17>>2] = $13; + } else { + $18 = HEAP32[$db>>2]|0; + $19 = (($18) + 4|0); + HEAP32[$19>>2] = $13; + } + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 52|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)!=(0|0); + if ($23) { + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 48|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 52|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + 48|0); + HEAP32[$30>>2] = $26; + } + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 40|0); + HEAP32[$32>>2] = -1241070648; + $33 = HEAP32[$0>>2]|0; + HEAP32[$33>>2] = 0; + $34 = HEAP32[$db>>2]|0; + $35 = HEAP32[$0>>2]|0; + _sqlite3DbFree($34,$35); + STACKTOP = sp;return; +} +function _sqlite3WithDelete($db,$pWith) { + $db = $db|0; + $pWith = $pWith|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pCte = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $i = sp + 4|0; + $pCte = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pWith; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $4 = HEAP32[$i>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = ($4|0)<($6|0); + if (!($7)) { + break; + } + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 8|0); + $11 = (($10) + ($8<<4)|0); + HEAP32[$pCte>>2] = $11; + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$pCte>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + _sqlite3ExprListDelete($12,$15); + $16 = HEAP32[$0>>2]|0; + $17 = HEAP32[$pCte>>2]|0; + $18 = (($17) + 8|0); + $19 = HEAP32[$18>>2]|0; + _sqlite3SelectDelete($16,$19); + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$pCte>>2]|0; + $22 = HEAP32[$21>>2]|0; + _sqlite3DbFree($20,$22); + $23 = HEAP32[$i>>2]|0; + $24 = (($23) + 1)|0; + HEAP32[$i>>2] = $24; + } + $25 = HEAP32[$0>>2]|0; + $26 = HEAP32[$1>>2]|0; + _sqlite3DbFree($25,$26); + STACKTOP = sp;return; +} +function _sqlite3ExprListDelete($db,$pList) { + $db = $db|0; + $pList = $pList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pItem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $i = sp + 4|0; + $pItem = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pList; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0|0); + if ($3) { + STACKTOP = sp;return; + } + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$pItem>>2] = $6; + HEAP32[$i>>2] = 0; + while(1) { + $7 = HEAP32[$i>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = ($7|0)<($9|0); + $11 = HEAP32[$0>>2]|0; + if (!($10)) { + break; + } + $12 = HEAP32[$pItem>>2]|0; + $13 = HEAP32[$12>>2]|0; + _sqlite3ExprDelete($11,$13); + $14 = HEAP32[$0>>2]|0; + $15 = HEAP32[$pItem>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + _sqlite3DbFree($14,$17); + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$pItem>>2]|0; + $20 = (($19) + 8|0); + $21 = HEAP32[$20>>2]|0; + _sqlite3DbFree($18,$21); + $22 = HEAP32[$i>>2]|0; + $23 = (($22) + 1)|0; + HEAP32[$i>>2] = $23; + $24 = HEAP32[$pItem>>2]|0; + $25 = (($24) + 20|0); + HEAP32[$pItem>>2] = $25; + } + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 4|0); + $28 = HEAP32[$27>>2]|0; + _sqlite3DbFree($11,$28); + $29 = HEAP32[$0>>2]|0; + $30 = HEAP32[$1>>2]|0; + _sqlite3DbFree($29,$30); + STACKTOP = sp;return; +} +function _sqlite3SelectDelete($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + _clearSelect($4,$5); + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + _sqlite3DbFree($6,$7); + STACKTOP = sp;return; +} +function _clearSelect($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + _sqlite3ExprListDelete($2,$4); + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 32|0); + $8 = HEAP32[$7>>2]|0; + _sqlite3SrcListDelete($5,$8); + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 36|0); + $12 = HEAP32[$11>>2]|0; + _sqlite3ExprDelete($9,$12); + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 40|0); + $16 = HEAP32[$15>>2]|0; + _sqlite3ExprListDelete($13,$16); + $17 = HEAP32[$0>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 44|0); + $20 = HEAP32[$19>>2]|0; + _sqlite3ExprDelete($17,$20); + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 48|0); + $24 = HEAP32[$23>>2]|0; + _sqlite3ExprListDelete($21,$24); + $25 = HEAP32[$0>>2]|0; + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 52|0); + $28 = HEAP32[$27>>2]|0; + _sqlite3SelectDelete($25,$28); + $29 = HEAP32[$0>>2]|0; + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 60|0); + $32 = HEAP32[$31>>2]|0; + _sqlite3ExprDelete($29,$32); + $33 = HEAP32[$0>>2]|0; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 64|0); + $36 = HEAP32[$35>>2]|0; + _sqlite3ExprDelete($33,$36); + $37 = HEAP32[$0>>2]|0; + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 68|0); + $40 = HEAP32[$39>>2]|0; + _sqlite3WithDelete($37,$40); + STACKTOP = sp;return; +} +function _sqlite3SrcListDelete($db,$pList) { + $db = $db|0; + $pList = $pList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pItem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $i = sp + 4|0; + $pItem = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pList; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0|0); + if ($3) { + STACKTOP = sp;return; + } + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 8|0); + HEAP32[$pItem>>2] = $5; + HEAP32[$i>>2] = 0; + while(1) { + $6 = HEAP32[$i>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = ($6|0)<($8|0); + $10 = HEAP32[$0>>2]|0; + if (!($9)) { + break; + } + $11 = HEAP32[$pItem>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + _sqlite3DbFree($10,$13); + $14 = HEAP32[$0>>2]|0; + $15 = HEAP32[$pItem>>2]|0; + $16 = (($15) + 8|0); + $17 = HEAP32[$16>>2]|0; + _sqlite3DbFree($14,$17); + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$pItem>>2]|0; + $20 = (($19) + 12|0); + $21 = HEAP32[$20>>2]|0; + _sqlite3DbFree($18,$21); + $22 = HEAP32[$0>>2]|0; + $23 = HEAP32[$pItem>>2]|0; + $24 = (($23) + 64|0); + $25 = HEAP32[$24>>2]|0; + _sqlite3DbFree($22,$25); + $26 = HEAP32[$0>>2]|0; + $27 = HEAP32[$pItem>>2]|0; + $28 = (($27) + 16|0); + $29 = HEAP32[$28>>2]|0; + _sqlite3DeleteTable($26,$29); + $30 = HEAP32[$0>>2]|0; + $31 = HEAP32[$pItem>>2]|0; + $32 = (($31) + 20|0); + $33 = HEAP32[$32>>2]|0; + _sqlite3SelectDelete($30,$33); + $34 = HEAP32[$0>>2]|0; + $35 = HEAP32[$pItem>>2]|0; + $36 = (($35) + 44|0); + $37 = HEAP32[$36>>2]|0; + _sqlite3ExprDelete($34,$37); + $38 = HEAP32[$0>>2]|0; + $39 = HEAP32[$pItem>>2]|0; + $40 = (($39) + 48|0); + $41 = HEAP32[$40>>2]|0; + _sqlite3IdListDelete($38,$41); + $42 = HEAP32[$i>>2]|0; + $43 = (($42) + 1)|0; + HEAP32[$i>>2] = $43; + $44 = HEAP32[$pItem>>2]|0; + $45 = (($44) + 72|0); + HEAP32[$pItem>>2] = $45; + } + $46 = HEAP32[$1>>2]|0; + _sqlite3DbFree($10,$46); + STACKTOP = sp;return; +} +function _sqlite3ExprDelete($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0|0); + if ($3) { + STACKTOP = sp;return; + } + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + $7 = $6 & 16384; + $8 = ($7|0)!=(0); + do { + if (!($8)) { + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 12|0); + $12 = HEAP32[$11>>2]|0; + _sqlite3ExprDelete($9,$12); + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 16|0); + $16 = HEAP32[$15>>2]|0; + _sqlite3ExprDelete($13,$16); + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = $19 & 65536; + $21 = ($20|0)!=(0); + if ($21) { + $22 = HEAP32[$0>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 8|0); + $25 = HEAP32[$24>>2]|0; + _sqlite3DbFree($22,$25); + } + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 4|0); + $28 = HEAP32[$27>>2]|0; + $29 = $28 & 2048; + $30 = ($29|0)!=(0); + $31 = HEAP32[$0>>2]|0; + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 20|0); + if ($30) { + $34 = HEAP32[$33>>2]|0; + _sqlite3SelectDelete($31,$34); + break; + } else { + $35 = HEAP32[$33>>2]|0; + _sqlite3ExprListDelete($31,$35); + break; + } + } + } while(0); + $36 = HEAP32[$1>>2]|0; + $37 = (($36) + 4|0); + $38 = HEAP32[$37>>2]|0; + $39 = $38 & 32768; + $40 = ($39|0)!=(0); + if ($40) { + STACKTOP = sp;return; + } + $41 = HEAP32[$0>>2]|0; + $42 = HEAP32[$1>>2]|0; + _sqlite3DbFree($41,$42); + STACKTOP = sp;return; +} +function _sqlite3IdListDelete($db,$pList) { + $db = $db|0; + $pList = $pList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $i = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pList; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0|0); + if ($3) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $4 = HEAP32[$i>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 4|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($4|0)<($7|0); + $9 = HEAP32[$0>>2]|0; + if (!($8)) { + break; + } + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + ($10<<3)|0); + $14 = HEAP32[$13>>2]|0; + _sqlite3DbFree($9,$14); + $15 = HEAP32[$i>>2]|0; + $16 = (($15) + 1)|0; + HEAP32[$i>>2] = $16; + } + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$17>>2]|0; + _sqlite3DbFree($9,$18); + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$1>>2]|0; + _sqlite3DbFree($19,$20); + STACKTOP = sp;return; +} +function _sqlite3VMPrintf($db,$zFormat,$ap) { + $db = $db|0; + $zFormat = $zFormat|0; + $ap = $ap|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $acc = 0, $z = 0, $zBase = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $0 = sp + 40|0; + $1 = sp; + $2 = sp + 4|0; + $z = sp + 8|0; + $zBase = sp + 44|0; + $acc = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zFormat; + HEAP32[$2>>2] = $ap; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 88|0); + $5 = HEAP32[$4>>2]|0; + _sqlite3StrAccumInit($acc,$zBase,70,$5); + $6 = HEAP32[$0>>2]|0; + HEAP32[$acc>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + _sqlite3VXPrintf($acc,1,$7,$8); + $9 = (_sqlite3StrAccumFinish($acc)|0); + HEAP32[$z>>2] = $9; + $10 = (($acc) + 25|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = ($12|0)==(1); + if (!($13)) { + $16 = HEAP32[$z>>2]|0; + STACKTOP = sp;return ($16|0); + } + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 64|0); + HEAP8[$15>>0] = 1; + $16 = HEAP32[$z>>2]|0; + STACKTOP = sp;return ($16|0); +} +function _yy_pop_parser_stack($pParser) { + $pParser = $pParser|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $yymajor = 0, $yytos = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $yymajor = sp + 12|0; + $yytos = sp + 4|0; + HEAP32[$1>>2] = $pParser; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 12|0); + $6 = (($5) + ($3<<4)|0); + HEAP32[$yytos>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)<(0); + if ($9) { + HEAP32[$0>>2] = 0; + $22 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($22|0); + } else { + $10 = HEAP32[$yytos>>2]|0; + $11 = (($10) + 2|0); + $12 = HEAP8[$11>>0]|0; + HEAP8[$yymajor>>0] = $12; + $13 = HEAP32[$1>>2]|0; + $14 = HEAP8[$yymajor>>0]|0; + $15 = HEAP32[$yytos>>2]|0; + $16 = (($15) + 4|0); + _yy_destructor($13,$14,$16); + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + -1)|0; + HEAP32[$17>>2] = $19; + $20 = HEAP8[$yymajor>>0]|0; + $21 = $20&255; + HEAP32[$0>>2] = $21; + $22 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($22|0); + } + return 0|0; +} +function _yy_destructor($yypParser,$yymajor,$yypminor) { + $yypParser = $yypParser|0; + $yymajor = $yymajor|0; + $yypminor = $yypminor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pParse = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp + 12|0; + $2 = sp + 4|0; + $pParse = sp; + HEAP32[$0>>2] = $yypParser; + HEAP8[$1>>0] = $yymajor; + HEAP32[$2>>2] = $yypminor; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pParse>>2] = $5; + $6 = HEAP8[$1>>0]|0; + $7 = $6&255; + do { + switch ($7|0) { + case 175: case 174: { + $12 = HEAP32[$pParse>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$14>>2]|0; + _sqlite3ExprDelete($13,$15); + STACKTOP = sp;return; + break; + } + case 252: case 197: { + $24 = HEAP32[$pParse>>2]|0; + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$2>>2]|0; + $27 = HEAP32[$26>>2]|0; + _sqlite3WithDelete($25,$27); + STACKTOP = sp;return; + break; + } + case 213: case 212: case 201: case 194: { + $20 = HEAP32[$pParse>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$2>>2]|0; + $23 = HEAP32[$22>>2]|0; + _sqlite3SrcListDelete($21,$23); + STACKTOP = sp;return; + break; + } + case 243: case 238: case 229: case 227: case 216: case 204: case 202: { + $28 = HEAP32[$pParse>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$2>>2]|0; + $31 = HEAP32[$30>>2]|0; + _sqlite3ExprDelete($29,$31); + STACKTOP = sp;return; + break; + } + case 228: case 221: case 220: case 210: case 209: case 208: case 205: case 203: case 200: case 188: case 179: { + $16 = HEAP32[$pParse>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = HEAP32[$18>>2]|0; + _sqlite3ExprListDelete($17,$19); + STACKTOP = sp;return; + break; + } + case 223: case 219: case 217: { + $32 = HEAP32[$pParse>>2]|0; + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = HEAP32[$34>>2]|0; + _sqlite3IdListDelete($33,$35); + STACKTOP = sp;return; + break; + } + case 239: case 234: { + $36 = HEAP32[$pParse>>2]|0; + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$2>>2]|0; + $39 = HEAP32[$38>>2]|0; + _sqlite3DeleteTriggerStep($37,$39); + STACKTOP = sp;return; + break; + } + case 236: { + $40 = HEAP32[$pParse>>2]|0; + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$2>>2]|0; + $43 = (($42) + 4|0); + $44 = HEAP32[$43>>2]|0; + _sqlite3IdListDelete($41,$44); + STACKTOP = sp;return; + break; + } + case 207: case 196: case 195: case 163: { + $8 = HEAP32[$pParse>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$10>>2]|0; + _sqlite3SelectDelete($9,$11); + STACKTOP = sp;return; + break; + } + default: { + STACKTOP = sp;return; + } + } + } while(0); +} +function _sqlite3DeleteTriggerStep($db,$pTriggerStep) { + $db = $db|0; + $pTriggerStep = $pTriggerStep|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pTmp = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pTriggerStep; + while(1) { + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + break; + } + $4 = HEAP32[$1>>2]|0; + HEAP32[$pTmp>>2] = $4; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 32|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$1>>2] = $7; + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$pTmp>>2]|0; + $10 = (($9) + 20|0); + $11 = HEAP32[$10>>2]|0; + _sqlite3ExprDelete($8,$11); + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$pTmp>>2]|0; + $14 = (($13) + 24|0); + $15 = HEAP32[$14>>2]|0; + _sqlite3ExprListDelete($12,$15); + $16 = HEAP32[$0>>2]|0; + $17 = HEAP32[$pTmp>>2]|0; + $18 = (($17) + 8|0); + $19 = HEAP32[$18>>2]|0; + _sqlite3SelectDelete($16,$19); + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$pTmp>>2]|0; + $22 = (($21) + 28|0); + $23 = HEAP32[$22>>2]|0; + _sqlite3IdListDelete($20,$23); + $24 = HEAP32[$0>>2]|0; + $25 = HEAP32[$pTmp>>2]|0; + _sqlite3DbFree($24,$25); + } + STACKTOP = sp;return; +} +function _yy_find_shift_action($pParser,$iLookAhead) { + $pParser = $pParser|0; + $iLookAhead = $iLookAhead|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $8 = 0, $9 = 0, $i = 0, $iFallback = 0, $j = 0, $or$cond = 0; + var $stateno = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 21|0; + $i = sp + 8|0; + $stateno = sp + 12|0; + $iFallback = sp + 20|0; + $j = sp + 4|0; + HEAP32[$1>>2] = $pParser; + HEAP8[$2>>0] = $iLookAhead; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 12|0); + $7 = (($6) + ($4<<4)|0); + $8 = HEAP16[$7>>1]|0; + $9 = $8&65535; + HEAP32[$stateno>>2] = $9; + $10 = HEAP32[$stateno>>2]|0; + $11 = ($10|0)>(429); + if (!($11)) { + $12 = HEAP32[$stateno>>2]|0; + $13 = (33640 + ($12<<1)|0); + $14 = HEAP16[$13>>1]|0; + $15 = $14 << 16 >> 16; + HEAP32[$i>>2] = $15; + $16 = ($15|0)==(-86); + if (!($16)) { + $21 = HEAP8[$2>>0]|0; + $22 = $21&255; + $23 = HEAP32[$i>>2]|0; + $24 = (($23) + ($22))|0; + HEAP32[$i>>2] = $24; + $25 = HEAP32[$i>>2]|0; + $26 = ($25|0)<(0); + $27 = HEAP32[$i>>2]|0; + $28 = ($27|0)>=(1497); + $or$cond = $26 | $28; + if (!($or$cond)) { + $29 = HEAP32[$i>>2]|0; + $30 = (35792 + ($29)|0); + $31 = HEAP8[$30>>0]|0; + $32 = $31&255; + $33 = HEAP8[$2>>0]|0; + $34 = $33&255; + $35 = ($32|0)!=($34|0); + if (!($35)) { + $71 = HEAP32[$i>>2]|0; + $72 = (18248 + ($71<<1)|0); + $73 = HEAP16[$72>>1]|0; + $74 = $73&65535; + HEAP32[$0>>2] = $74; + $75 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($75|0); + } + } + $36 = HEAP8[$2>>0]|0; + $37 = $36&255; + $38 = ($37|0)>(0); + if ($38) { + $39 = HEAP8[$2>>0]|0; + $40 = $39&255; + $41 = ($40>>>0)<(70); + if ($41) { + $42 = HEAP8[$2>>0]|0; + $43 = $42&255; + $44 = (37296 + ($43)|0); + $45 = HEAP8[$44>>0]|0; + HEAP8[$iFallback>>0] = $45; + $46 = $45&255; + $47 = ($46|0)!=(0); + if ($47) { + $48 = HEAP32[$1>>2]|0; + $49 = HEAP8[$iFallback>>0]|0; + $50 = (_yy_find_shift_action($48,$49)|0); + HEAP32[$0>>2] = $50; + $75 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($75|0); + } + } + $51 = HEAP32[$i>>2]|0; + $52 = HEAP8[$2>>0]|0; + $53 = $52&255; + $54 = (($51) - ($53))|0; + $55 = (($54) + 70)|0; + HEAP32[$j>>2] = $55; + $56 = HEAP32[$j>>2]|0; + $57 = ($56|0)>=(0); + if ($57) { + $58 = HEAP32[$j>>2]|0; + $59 = (35792 + ($58)|0); + $60 = HEAP8[$59>>0]|0; + $61 = $60&255; + $62 = ($61|0)==(70); + if ($62) { + $63 = HEAP32[$j>>2]|0; + $64 = (18248 + ($63<<1)|0); + $65 = HEAP16[$64>>1]|0; + $66 = $65&65535; + HEAP32[$0>>2] = $66; + $75 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($75|0); + } + } + } + $67 = HEAP32[$stateno>>2]|0; + $68 = (34504 + ($67<<1)|0); + $69 = HEAP16[$68>>1]|0; + $70 = $69&65535; + HEAP32[$0>>2] = $70; + $75 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($75|0); + } + } + $17 = HEAP32[$stateno>>2]|0; + $18 = (34504 + ($17<<1)|0); + $19 = HEAP16[$18>>1]|0; + $20 = $19&65535; + HEAP32[$0>>2] = $20; + $75 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($75|0); +} +function _yy_shift($yypParser,$yyNewState,$yyMajor,$yypMinor) { + $yypParser = $yypParser|0; + $yyNewState = $yyNewState|0; + $yyMajor = $yyMajor|0; + $yypMinor = $yypMinor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $yytos = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $yytos = sp + 12|0; + HEAP32[$0>>2] = $yypParser; + HEAP32[$1>>2] = $yyNewState; + HEAP32[$2>>2] = $yyMajor; + HEAP32[$3>>2] = $yypMinor; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + 1)|0; + HEAP32[$4>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)>=(100); + $10 = HEAP32[$0>>2]|0; + if ($9) { + $11 = HEAP32[$3>>2]|0; + _yyStackOverflow($10,$11); + STACKTOP = sp;return; + } else { + $12 = HEAP32[$10>>2]|0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 12|0); + $15 = (($14) + ($12<<4)|0); + HEAP32[$yytos>>2] = $15; + $16 = HEAP32[$1>>2]|0; + $17 = $16&65535; + $18 = HEAP32[$yytos>>2]|0; + HEAP16[$18>>1] = $17; + $19 = HEAP32[$2>>2]|0; + $20 = $19&255; + $21 = HEAP32[$yytos>>2]|0; + $22 = (($21) + 2|0); + HEAP8[$22>>0] = $20; + $23 = HEAP32[$yytos>>2]|0; + $24 = (($23) + 4|0); + $25 = HEAP32[$3>>2]|0; + ;HEAP32[$24+0>>2]=HEAP32[$25+0>>2]|0;HEAP32[$24+4>>2]=HEAP32[$25+4>>2]|0;HEAP32[$24+8>>2]=HEAP32[$25+8>>2]|0; + STACKTOP = sp;return; + } +} +function _yy_reduce($yypParser,$yyruleno) { + $yypParser = $yypParser|0; + $yyruleno = $yyruleno|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0; + var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0; + var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0; + var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0; + var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0; + var $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0; + var $1105 = 0, $1106 = 0, $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0; + var $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0; + var $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0; + var $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0; + var $1178 = 0, $1179 = 0, $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0; + var $1196 = 0, $1197 = 0, $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0; + var $1213 = 0, $1214 = 0, $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0; + var $1231 = 0, $1232 = 0, $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0; + var $125 = 0, $1250 = 0, $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0, $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0; + var $1268 = 0, $1269 = 0, $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0, $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0; + var $1286 = 0, $1287 = 0, $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0, $1292 = 0, $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, $1299 = 0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0; + var $1303 = 0, $1304 = 0, $1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0, $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0; + var $1321 = 0, $1322 = 0, $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0, $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 0, $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0; + var $134 = 0, $1340 = 0, $1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 0, $1346 = 0, $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, $1352 = 0, $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0; + var $1358 = 0, $1359 = 0, $136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 0, $1364 = 0, $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, $1370 = 0, $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0; + var $1376 = 0, $1377 = 0, $1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 0, $1382 = 0, $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, $1389 = 0, $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0; + var $1394 = 0, $1395 = 0, $1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 0, $140 = 0, $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, $1406 = 0, $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0; + var $1411 = 0, $1412 = 0, $1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 0, $1418 = 0, $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, $1424 = 0, $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0; + var $143 = 0, $1430 = 0, $1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 0, $1436 = 0, $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, $1442 = 0, $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0; + var $1448 = 0, $1449 = 0, $145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 0, $1454 = 0, $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, $1460 = 0, $1461 = 0, $1462 = 0, $1463 = 0, $1464 = 0, $1465 = 0; + var $1466 = 0, $1467 = 0, $1468 = 0, $1469 = 0, $147 = 0, $1470 = 0, $1471 = 0, $1472 = 0, $1473 = 0, $1474 = 0, $1475 = 0, $1476 = 0, $1477 = 0, $1478 = 0, $1479 = 0, $148 = 0, $1480 = 0, $1481 = 0, $1482 = 0, $1483 = 0; + var $1484 = 0, $1485 = 0, $1486 = 0, $1487 = 0, $1488 = 0, $1489 = 0, $149 = 0, $1490 = 0, $1491 = 0, $1492 = 0, $1493 = 0, $1494 = 0, $1495 = 0, $1496 = 0, $1497 = 0, $1498 = 0, $1499 = 0, $15 = 0, $150 = 0, $1500 = 0; + var $1501 = 0, $1502 = 0, $1503 = 0, $1504 = 0, $1505 = 0, $1506 = 0, $1507 = 0, $1508 = 0, $1509 = 0, $151 = 0, $1510 = 0, $1511 = 0, $1512 = 0, $1513 = 0, $1514 = 0, $1515 = 0, $1516 = 0, $1517 = 0, $1518 = 0, $1519 = 0; + var $152 = 0, $1520 = 0, $1521 = 0, $1522 = 0, $1523 = 0, $1524 = 0, $1525 = 0, $1526 = 0, $1527 = 0, $1528 = 0, $1529 = 0, $153 = 0, $1530 = 0, $1531 = 0, $1532 = 0, $1533 = 0, $1534 = 0, $1535 = 0, $1536 = 0, $1537 = 0; + var $1538 = 0, $1539 = 0, $154 = 0, $1540 = 0, $1541 = 0, $1542 = 0, $1543 = 0, $1544 = 0, $1545 = 0, $1546 = 0, $1547 = 0, $1548 = 0, $1549 = 0, $155 = 0, $1550 = 0, $1551 = 0, $1552 = 0, $1553 = 0, $1554 = 0, $1555 = 0; + var $1556 = 0, $1557 = 0, $1558 = 0, $1559 = 0, $156 = 0, $1560 = 0, $1561 = 0, $1562 = 0, $1563 = 0, $1564 = 0, $1565 = 0, $1566 = 0, $1567 = 0, $1568 = 0, $1569 = 0, $157 = 0, $1570 = 0, $1571 = 0, $1572 = 0, $1573 = 0; + var $1574 = 0, $1575 = 0, $1576 = 0, $1577 = 0, $1578 = 0, $1579 = 0, $158 = 0, $1580 = 0, $1581 = 0, $1582 = 0, $1583 = 0, $1584 = 0, $1585 = 0, $1586 = 0, $1587 = 0, $1588 = 0, $1589 = 0, $159 = 0, $1590 = 0, $1591 = 0; + var $1592 = 0, $1593 = 0, $1594 = 0, $1595 = 0, $1596 = 0, $1597 = 0, $1598 = 0, $1599 = 0, $16 = 0, $160 = 0, $1600 = 0, $1601 = 0, $1602 = 0, $1603 = 0, $1604 = 0, $1605 = 0, $1606 = 0, $1607 = 0, $1608 = 0, $1609 = 0; + var $161 = 0, $1610 = 0, $1611 = 0, $1612 = 0, $1613 = 0, $1614 = 0, $1615 = 0, $1616 = 0, $1617 = 0, $1618 = 0, $1619 = 0, $162 = 0, $1620 = 0, $1621 = 0, $1622 = 0, $1623 = 0, $1624 = 0, $1625 = 0, $1626 = 0, $1627 = 0; + var $1628 = 0, $1629 = 0, $163 = 0, $1630 = 0, $1631 = 0, $1632 = 0, $1633 = 0, $1634 = 0, $1635 = 0, $1636 = 0, $1637 = 0, $1638 = 0, $1639 = 0, $164 = 0, $1640 = 0, $1641 = 0, $1642 = 0, $1643 = 0, $1644 = 0, $1645 = 0; + var $1646 = 0, $1647 = 0, $1648 = 0, $1649 = 0, $165 = 0, $1650 = 0, $1651 = 0, $1652 = 0, $1653 = 0, $1654 = 0, $1655 = 0, $1656 = 0, $1657 = 0, $1658 = 0, $1659 = 0, $166 = 0, $1660 = 0, $1661 = 0, $1662 = 0, $1663 = 0; + var $1664 = 0, $1665 = 0, $1666 = 0, $1667 = 0, $1668 = 0, $1669 = 0, $167 = 0, $1670 = 0, $1671 = 0, $1672 = 0, $1673 = 0, $1674 = 0, $1675 = 0, $1676 = 0, $1677 = 0, $1678 = 0, $1679 = 0, $168 = 0, $1680 = 0, $1681 = 0; + var $1682 = 0, $1683 = 0, $1684 = 0, $1685 = 0, $1686 = 0, $1687 = 0, $1688 = 0, $1689 = 0, $169 = 0, $1690 = 0, $1691 = 0, $1692 = 0, $1693 = 0, $1694 = 0, $1695 = 0, $1696 = 0, $1697 = 0, $1698 = 0, $1699 = 0, $17 = 0; + var $170 = 0, $1700 = 0, $1701 = 0, $1702 = 0, $1703 = 0, $1704 = 0, $1705 = 0, $1706 = 0, $1707 = 0, $1708 = 0, $1709 = 0, $171 = 0, $1710 = 0, $1711 = 0, $1712 = 0, $1713 = 0, $1714 = 0, $1715 = 0, $1716 = 0, $1717 = 0; + var $1718 = 0, $1719 = 0, $172 = 0, $1720 = 0, $1721 = 0, $1722 = 0, $1723 = 0, $1724 = 0, $1725 = 0, $1726 = 0, $1727 = 0, $1728 = 0, $1729 = 0, $173 = 0, $1730 = 0, $1731 = 0, $1732 = 0, $1733 = 0, $1734 = 0, $1735 = 0; + var $1736 = 0, $1737 = 0, $1738 = 0, $1739 = 0, $174 = 0, $1740 = 0, $1741 = 0, $1742 = 0, $1743 = 0, $1744 = 0, $1745 = 0, $1746 = 0, $1747 = 0, $1748 = 0, $1749 = 0, $175 = 0, $1750 = 0, $1751 = 0, $1752 = 0, $1753 = 0; + var $1754 = 0, $1755 = 0, $1756 = 0, $1757 = 0, $1758 = 0, $1759 = 0, $176 = 0, $1760 = 0, $1761 = 0, $1762 = 0, $1763 = 0, $1764 = 0, $1765 = 0, $1766 = 0, $1767 = 0, $1768 = 0, $1769 = 0, $177 = 0, $1770 = 0, $1771 = 0; + var $1772 = 0, $1773 = 0, $1774 = 0, $1775 = 0, $1776 = 0, $1777 = 0, $1778 = 0, $1779 = 0, $178 = 0, $1780 = 0, $1781 = 0, $1782 = 0, $1783 = 0, $1784 = 0, $1785 = 0, $1786 = 0, $1787 = 0, $1788 = 0, $1789 = 0, $179 = 0; + var $1790 = 0, $1791 = 0, $1792 = 0, $1793 = 0, $1794 = 0, $1795 = 0, $1796 = 0, $1797 = 0, $1798 = 0, $1799 = 0, $18 = 0, $180 = 0, $1800 = 0, $1801 = 0, $1802 = 0, $1803 = 0, $1804 = 0, $1805 = 0, $1806 = 0, $1807 = 0; + var $1808 = 0, $1809 = 0, $181 = 0, $1810 = 0, $1811 = 0, $1812 = 0, $1813 = 0, $1814 = 0, $1815 = 0, $1816 = 0, $1817 = 0, $1818 = 0, $1819 = 0, $182 = 0, $1820 = 0, $1821 = 0, $1822 = 0, $1823 = 0, $1824 = 0, $1825 = 0; + var $1826 = 0, $1827 = 0, $1828 = 0, $1829 = 0, $183 = 0, $1830 = 0, $1831 = 0, $1832 = 0, $1833 = 0, $1834 = 0, $1835 = 0, $1836 = 0, $1837 = 0, $1838 = 0, $1839 = 0, $184 = 0, $1840 = 0, $1841 = 0, $1842 = 0, $1843 = 0; + var $1844 = 0, $1845 = 0, $1846 = 0, $1847 = 0, $1848 = 0, $1849 = 0, $185 = 0, $1850 = 0, $1851 = 0, $1852 = 0, $1853 = 0, $1854 = 0, $1855 = 0, $1856 = 0, $1857 = 0, $1858 = 0, $1859 = 0, $186 = 0, $1860 = 0, $1861 = 0; + var $1862 = 0, $1863 = 0, $1864 = 0, $1865 = 0, $1866 = 0, $1867 = 0, $1868 = 0, $1869 = 0, $187 = 0, $1870 = 0, $1871 = 0, $1872 = 0, $1873 = 0, $1874 = 0, $1875 = 0, $1876 = 0, $1877 = 0, $1878 = 0, $1879 = 0, $188 = 0; + var $1880 = 0, $1881 = 0, $1882 = 0, $1883 = 0, $1884 = 0, $1885 = 0, $1886 = 0, $1887 = 0, $1888 = 0, $1889 = 0, $189 = 0, $1890 = 0, $1891 = 0, $1892 = 0, $1893 = 0, $1894 = 0, $1895 = 0, $1896 = 0, $1897 = 0, $1898 = 0; + var $1899 = 0, $19 = 0, $190 = 0, $1900 = 0, $1901 = 0, $1902 = 0, $1903 = 0, $1904 = 0, $1905 = 0, $1906 = 0, $1907 = 0, $1908 = 0, $1909 = 0, $191 = 0, $1910 = 0, $1911 = 0, $1912 = 0, $1913 = 0, $1914 = 0, $1915 = 0; + var $1916 = 0, $1917 = 0, $1918 = 0, $1919 = 0, $192 = 0, $1920 = 0, $1921 = 0, $1922 = 0, $1923 = 0, $1924 = 0, $1925 = 0, $1926 = 0, $1927 = 0, $1928 = 0, $1929 = 0, $193 = 0, $1930 = 0, $1931 = 0, $1932 = 0, $1933 = 0; + var $1934 = 0, $1935 = 0, $1936 = 0, $1937 = 0, $1938 = 0, $1939 = 0, $194 = 0, $1940 = 0, $1941 = 0, $1942 = 0, $1943 = 0, $1944 = 0, $1945 = 0, $1946 = 0, $1947 = 0, $1948 = 0, $1949 = 0, $195 = 0, $1950 = 0, $1951 = 0; + var $1952 = 0, $1953 = 0, $1954 = 0, $1955 = 0, $1956 = 0, $1957 = 0, $1958 = 0, $1959 = 0, $196 = 0, $1960 = 0, $1961 = 0, $1962 = 0, $1963 = 0, $1964 = 0, $1965 = 0, $1966 = 0, $1967 = 0, $1968 = 0, $1969 = 0, $197 = 0; + var $1970 = 0, $1971 = 0, $1972 = 0, $1973 = 0, $1974 = 0, $1975 = 0, $1976 = 0, $1977 = 0, $1978 = 0, $1979 = 0, $198 = 0, $1980 = 0, $1981 = 0, $1982 = 0, $1983 = 0, $1984 = 0, $1985 = 0, $1986 = 0, $1987 = 0, $1988 = 0; + var $1989 = 0, $199 = 0, $1990 = 0, $1991 = 0, $1992 = 0, $1993 = 0, $1994 = 0, $1995 = 0, $1996 = 0, $1997 = 0, $1998 = 0, $1999 = 0, $2 = 0, $20 = 0, $200 = 0, $2000 = 0, $2001 = 0, $2002 = 0, $2003 = 0, $2004 = 0; + var $2005 = 0, $2006 = 0, $2007 = 0, $2008 = 0, $2009 = 0, $201 = 0, $2010 = 0, $2011 = 0, $2012 = 0, $2013 = 0, $2014 = 0, $2015 = 0, $2016 = 0, $2017 = 0, $2018 = 0, $2019 = 0, $202 = 0, $2020 = 0, $2021 = 0, $2022 = 0; + var $2023 = 0, $2024 = 0, $2025 = 0, $2026 = 0, $2027 = 0, $2028 = 0, $2029 = 0, $203 = 0, $2030 = 0, $2031 = 0, $2032 = 0, $2033 = 0, $2034 = 0, $2035 = 0, $2036 = 0, $2037 = 0, $2038 = 0, $2039 = 0, $204 = 0, $2040 = 0; + var $2041 = 0, $2042 = 0, $2043 = 0, $2044 = 0, $2045 = 0, $2046 = 0, $2047 = 0, $2048 = 0, $2049 = 0, $205 = 0, $2050 = 0, $2051 = 0, $2052 = 0, $2053 = 0, $2054 = 0, $2055 = 0, $2056 = 0, $2057 = 0, $2058 = 0, $2059 = 0; + var $206 = 0, $2060 = 0, $2061 = 0, $2062 = 0, $2063 = 0, $2064 = 0, $2065 = 0, $2066 = 0, $2067 = 0, $2068 = 0, $2069 = 0, $207 = 0, $2070 = 0, $2071 = 0, $2072 = 0, $2073 = 0, $2074 = 0, $2075 = 0, $2076 = 0, $2077 = 0; + var $2078 = 0, $2079 = 0, $208 = 0, $2080 = 0, $2081 = 0, $2082 = 0, $2083 = 0, $2084 = 0, $2085 = 0, $2086 = 0, $2087 = 0, $2088 = 0, $2089 = 0, $209 = 0, $2090 = 0, $2091 = 0, $2092 = 0, $2093 = 0, $2094 = 0, $2095 = 0; + var $2096 = 0, $2097 = 0, $2098 = 0, $2099 = 0, $21 = 0, $210 = 0, $2100 = 0, $2101 = 0, $2102 = 0, $2103 = 0, $2104 = 0, $2105 = 0, $2106 = 0, $2107 = 0, $2108 = 0, $2109 = 0, $211 = 0, $2110 = 0, $2111 = 0, $2112 = 0; + var $2113 = 0, $2114 = 0, $2115 = 0, $2116 = 0, $2117 = 0, $2118 = 0, $2119 = 0, $212 = 0, $2120 = 0, $2121 = 0, $2122 = 0, $2123 = 0, $2124 = 0, $2125 = 0, $2126 = 0, $2127 = 0, $2128 = 0, $2129 = 0, $213 = 0, $2130 = 0; + var $2131 = 0, $2132 = 0, $2133 = 0, $2134 = 0, $2135 = 0, $2136 = 0, $2137 = 0, $2138 = 0, $2139 = 0, $214 = 0, $2140 = 0, $2141 = 0, $2142 = 0, $2143 = 0, $2144 = 0, $2145 = 0, $2146 = 0, $2147 = 0, $2148 = 0, $2149 = 0; + var $215 = 0, $2150 = 0, $2151 = 0, $2152 = 0, $2153 = 0, $2154 = 0, $2155 = 0, $2156 = 0, $2157 = 0, $2158 = 0, $2159 = 0, $216 = 0, $2160 = 0, $2161 = 0, $2162 = 0, $2163 = 0, $2164 = 0, $2165 = 0, $2166 = 0, $2167 = 0; + var $2168 = 0, $2169 = 0, $217 = 0, $2170 = 0, $2171 = 0, $2172 = 0, $2173 = 0, $2174 = 0, $2175 = 0, $2176 = 0, $2177 = 0, $2178 = 0, $2179 = 0, $218 = 0, $2180 = 0, $2181 = 0, $2182 = 0, $2183 = 0, $2184 = 0, $2185 = 0; + var $2186 = 0, $2187 = 0, $2188 = 0, $2189 = 0, $219 = 0, $2190 = 0, $2191 = 0, $2192 = 0, $2193 = 0, $2194 = 0, $2195 = 0, $2196 = 0, $2197 = 0, $2198 = 0, $2199 = 0, $22 = 0, $220 = 0, $2200 = 0, $2201 = 0, $2202 = 0; + var $2203 = 0, $2204 = 0, $2205 = 0, $2206 = 0, $2207 = 0, $2208 = 0, $2209 = 0, $221 = 0, $2210 = 0, $2211 = 0, $2212 = 0, $2213 = 0, $2214 = 0, $2215 = 0, $2216 = 0, $2217 = 0, $2218 = 0, $2219 = 0, $222 = 0, $2220 = 0; + var $2221 = 0, $2222 = 0, $2223 = 0, $2224 = 0, $2225 = 0, $2226 = 0, $2227 = 0, $2228 = 0, $2229 = 0, $223 = 0, $2230 = 0, $2231 = 0, $2232 = 0, $2233 = 0, $2234 = 0, $2235 = 0, $2236 = 0, $2237 = 0, $2238 = 0, $2239 = 0; + var $224 = 0, $2240 = 0, $2241 = 0, $2242 = 0, $2243 = 0, $2244 = 0, $2245 = 0, $2246 = 0, $2247 = 0, $2248 = 0, $2249 = 0, $225 = 0, $2250 = 0, $2251 = 0, $2252 = 0, $2253 = 0, $2254 = 0, $2255 = 0, $2256 = 0, $2257 = 0; + var $2258 = 0, $2259 = 0, $226 = 0, $2260 = 0, $2261 = 0, $2262 = 0, $2263 = 0, $2264 = 0, $2265 = 0, $2266 = 0, $2267 = 0, $2268 = 0, $2269 = 0, $227 = 0, $2270 = 0, $2271 = 0, $2272 = 0, $2273 = 0, $2274 = 0, $2275 = 0; + var $2276 = 0, $2277 = 0, $2278 = 0, $2279 = 0, $228 = 0, $2280 = 0, $2281 = 0, $2282 = 0, $2283 = 0, $2284 = 0, $2285 = 0, $2286 = 0, $2287 = 0, $2288 = 0, $2289 = 0, $229 = 0, $2290 = 0, $2291 = 0, $2292 = 0, $2293 = 0; + var $2294 = 0, $2295 = 0, $2296 = 0, $2297 = 0, $2298 = 0, $2299 = 0, $23 = 0, $230 = 0, $2300 = 0, $2301 = 0, $2302 = 0, $2303 = 0, $2304 = 0, $2305 = 0, $2306 = 0, $2307 = 0, $2308 = 0, $2309 = 0, $231 = 0, $2310 = 0; + var $2311 = 0, $2312 = 0, $2313 = 0, $2314 = 0, $2315 = 0, $2316 = 0, $2317 = 0, $2318 = 0, $2319 = 0, $232 = 0, $2320 = 0, $2321 = 0, $2322 = 0, $2323 = 0, $2324 = 0, $2325 = 0, $2326 = 0, $2327 = 0, $2328 = 0, $2329 = 0; + var $233 = 0, $2330 = 0, $2331 = 0, $2332 = 0, $2333 = 0, $2334 = 0, $2335 = 0, $2336 = 0, $2337 = 0, $2338 = 0, $2339 = 0, $234 = 0, $2340 = 0, $2341 = 0, $2342 = 0, $2343 = 0, $2344 = 0, $2345 = 0, $2346 = 0, $2347 = 0; + var $2348 = 0, $2349 = 0, $235 = 0, $2350 = 0, $2351 = 0, $2352 = 0, $2353 = 0, $2354 = 0, $2355 = 0, $2356 = 0, $2357 = 0, $2358 = 0, $2359 = 0, $236 = 0, $2360 = 0, $2361 = 0, $2362 = 0, $2363 = 0, $2364 = 0, $2365 = 0; + var $2366 = 0, $2367 = 0, $2368 = 0, $2369 = 0, $237 = 0, $2370 = 0, $2371 = 0, $2372 = 0, $2373 = 0, $2374 = 0, $2375 = 0, $2376 = 0, $2377 = 0, $2378 = 0, $2379 = 0, $238 = 0, $2380 = 0, $2381 = 0, $2382 = 0, $2383 = 0; + var $2384 = 0, $2385 = 0, $2386 = 0, $2387 = 0, $2388 = 0, $2389 = 0, $239 = 0, $2390 = 0, $2391 = 0, $2392 = 0, $2393 = 0, $2394 = 0, $2395 = 0, $2396 = 0, $2397 = 0, $2398 = 0, $2399 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; + var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; + var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; + var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; + var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; + var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0; + var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0; + var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0; + var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0; + var $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0; + var $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0; + var $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0; + var $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0; + var $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0; + var $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0; + var $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0; + var $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0; + var $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0; + var $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0; + var $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0; + var $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0; + var $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0; + var $981 = 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0; + var $all = 0, $cnt = 0, $dest = 0, $mxSelect = 0, $p = 0, $p10 = 0, $p2 = 0, $p8 = 0, $p9 = 0, $pDot = 0, $pFrom = 0, $pLeft = 0, $pList = 0, $pList6 = 0, $pList7 = 0, $pLoop = 0, $pNew = 0, $pNext = 0, $pOld = 0, $pParse = 0; + var $pRHS = 0, $pRhs = 0, $pRight = 0, $pRight3 = 0, $pSrc = 0, $pSubquery = 0, $temp1 = 0, $temp14 = 0, $temp2 = 0, $temp25 = 0, $temp3 = 0, $temp4 = 0, $v = 0, $v1 = 0, $vararg_buffer14 = 0, $vararg_ptr1 = 0, $x = 0, $yyact = 0, $yygoto = 0, $yygotominor = 0; + var $yymsp = 0, $yysize = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 240|0; + $vararg_buffer14 = sp; + $0 = sp + 220|0; + $1 = sp + 216|0; + $yygoto = sp + 212|0; + $yyact = sp + 208|0; + $yygotominor = sp + 196|0; + $yymsp = sp + 192|0; + $yysize = sp + 188|0; + $pParse = sp + 184|0; + $v = sp + 172|0; + $v1 = sp + 160|0; + $dest = sp + 140|0; + $p = sp + 136|0; + $pNext = sp + 132|0; + $pLoop = sp + 128|0; + $cnt = sp + 124|0; + $mxSelect = sp + 120|0; + $pRhs = sp + 116|0; + $pFrom = sp + 112|0; + $x = sp + 104|0; + $pRight = sp + 96|0; + $p2 = sp + 224|0; + $pRight3 = sp + 44|0; + $pLeft = sp + 36|0; + $pDot = sp + 32|0; + $pNew = sp + 28|0; + $pOld = sp + 24|0; + $pSubquery = sp + 40|0; + $temp1 = sp + 12|0; + $temp2 = sp + 8|0; + $temp14 = sp + 16|0; + $temp25 = sp + 20|0; + $temp3 = sp + 84|0; + $temp4 = sp + 48|0; + $pList = sp + 52|0; + $pList6 = sp + 56|0; + $pList7 = sp + 60|0; + $pRHS = sp + 64|0; + $pSrc = sp + 68|0; + $p8 = sp + 72|0; + $p9 = sp + 76|0; + $p10 = sp + 80|0; + $all = sp + 88|0; + HEAP32[$0>>2] = $yypParser; + HEAP32[$1>>2] = $yyruleno; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 8|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pParse>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 12|0); + $9 = (($8) + ($6<<4)|0); + HEAP32[$yymsp>>2] = $9; + ;HEAP32[$yygotominor+0>>2]=HEAP32[33600+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[33600+4>>2]|0;HEAP32[$yygotominor+8>>2]=HEAP32[33600+8>>2]|0; + $10 = HEAP32[$1>>2]|0; + L1: do { + switch ($10|0) { + case 73: case 72: { + HEAP32[$yygotominor>>2] = 0; + $273 = (($yygotominor) + 4|0); + HEAP32[$273>>2] = 0; + break; + } + case 71: { + $259 = HEAP32[$yymsp>>2]|0; + $260 = (($259) + -16|0); + $261 = (($260) + 4|0); + $262 = HEAP32[$261>>2]|0; + $263 = HEAP32[$yymsp>>2]|0; + $264 = (($263) + 4|0); + $265 = (($264) + 4|0); + $266 = HEAP32[$265>>2]|0; + $267 = $266 ^ -1; + $268 = $262 & $267; + $269 = HEAP32[$yymsp>>2]|0; + $270 = (($269) + 4|0); + $271 = HEAP32[$270>>2]|0; + $272 = $268 | $271; + HEAP32[$yygotominor>>2] = $272; + break; + } + case 58: { + $196 = HEAP32[$pParse>>2]|0; + $197 = HEAP32[$yymsp>>2]|0; + $198 = (($197) + 4|0); + $199 = HEAP32[$198>>2]|0; + $200 = (_sqlite3PExpr($196,157,$199,0,0)|0); + HEAP32[$v>>2] = $200; + $201 = HEAP32[$yymsp>>2]|0; + $202 = (($201) + -16|0); + $203 = (($202) + 4|0); + $204 = HEAP32[$203>>2]|0; + $205 = (($v) + 4|0); + HEAP32[$205>>2] = $204; + $206 = HEAP32[$yymsp>>2]|0; + $207 = (($206) + 4|0); + $208 = (($207) + 8|0); + $209 = HEAP32[$208>>2]|0; + $210 = (($v) + 8|0); + HEAP32[$210>>2] = $209; + $211 = HEAP32[$pParse>>2]|0; + _sqlite3AddDefaultValue($211,$v); + break; + } + case 103: case 100: case 98: case 82: { + $283 = HEAP32[$yymsp>>2]|0; + $284 = (($283) + 4|0); + $285 = HEAP32[$284>>2]|0; + HEAP32[$yygotominor>>2] = $285; + break; + } + case 6: { + $12 = HEAP32[$pParse>>2]|0; + _sqlite3BeginParse($12,1); + break; + } + case 18: case 17: { + $24 = HEAP32[$pParse>>2]|0; + _sqlite3CommitTransaction($24); + break; + } + case 32: { + $55 = HEAP32[$pParse>>2]|0; + $56 = HEAP32[$yymsp>>2]|0; + $57 = (($56) + -32|0); + $58 = (($57) + 4|0); + $59 = HEAP32[$yymsp>>2]|0; + $60 = (($59) + -16|0); + $61 = (($60) + 4|0); + $62 = HEAP32[$yymsp>>2]|0; + $63 = (($62) + 4|0); + $64 = HEAP8[$63>>0]|0; + _sqlite3EndTable($55,$58,$61,$64,0); + break; + } + case 24: { + $32 = HEAP32[$pParse>>2]|0; + $33 = HEAP32[$yymsp>>2]|0; + $34 = (($33) + 4|0); + _sqlite3Savepoint($32,2,$34); + break; + } + case 47: { + $145 = HEAP32[$yymsp>>2]|0; + $146 = (($145) + -80|0); + $147 = (($146) + 4|0); + $148 = HEAP32[$147>>2]|0; + HEAP32[$yygotominor>>2] = $148; + $149 = HEAP32[$yymsp>>2]|0; + $150 = (($149) + 4|0); + $151 = (($150) + 4|0); + $152 = HEAP32[$151>>2]|0; + $153 = HEAP32[$yymsp>>2]|0; + $154 = (($153) + 4|0); + $155 = HEAP32[$154>>2]|0; + $156 = (($155) + ($152)|0); + $157 = HEAP32[$yymsp>>2]|0; + $158 = (($157) + -80|0); + $159 = (($158) + 4|0); + $160 = HEAP32[$159>>2]|0; + $161 = $156; + $162 = $160; + $163 = (($161) - ($162))|0; + $164 = (($yygotominor) + 4|0); + HEAP32[$164>>2] = $163; + break; + } + case 63: { + $232 = HEAP32[$pParse>>2]|0; + $233 = HEAP32[$yymsp>>2]|0; + $234 = (($233) + 4|0); + $235 = HEAP32[$234>>2]|0; + (_sqlite3CreateIndex($232,0,0,0,0,$235,0,0,0,0)|0); + break; + } + case 38: { + $92 = HEAP32[$yymsp>>2]|0; + $93 = (($92) + -32|0); + $94 = (($93) + 4|0); + $95 = HEAP32[$94>>2]|0; + HEAP32[$yygotominor>>2] = $95; + $96 = HEAP32[$pParse>>2]|0; + $97 = (($96) + 504|0); + $98 = HEAP32[$97>>2]|0; + $99 = HEAP32[$yymsp>>2]|0; + $100 = (($99) + -32|0); + $101 = (($100) + 4|0); + $102 = HEAP32[$101>>2]|0; + $103 = $98; + $104 = $102; + $105 = (($103) - ($104))|0; + $106 = HEAP32[$pParse>>2]|0; + $107 = (($106) + 504|0); + $108 = (($107) + 4|0); + $109 = HEAP32[$108>>2]|0; + $110 = (($105) + ($109))|0; + $111 = (($yygotominor) + 4|0); + HEAP32[$111>>2] = $110; + break; + } + case 33: { + $65 = HEAP32[$pParse>>2]|0; + $66 = HEAP32[$yymsp>>2]|0; + $67 = (($66) + 4|0); + $68 = HEAP32[$67>>2]|0; + _sqlite3EndTable($65,0,0,0,$68); + $69 = HEAP32[$pParse>>2]|0; + $70 = HEAP32[$69>>2]|0; + $71 = HEAP32[$yymsp>>2]|0; + $72 = (($71) + 4|0); + $73 = HEAP32[$72>>2]|0; + _sqlite3SelectDelete($70,$73); + break; + } + case 92: case 54: { + $185 = HEAP32[$pParse>>2]|0; + $186 = (($185) + 320|0); + $187 = HEAP32[$yymsp>>2]|0; + $188 = (($187) + 4|0); + ;HEAP32[$186+0>>2]=HEAP32[$188+0>>2]|0;HEAP32[$186+4>>2]=HEAP32[$188+4>>2]|0; + break; + } + case 7: { + $13 = HEAP32[$pParse>>2]|0; + _sqlite3BeginParse($13,2); + break; + } + case 19: { + $25 = HEAP32[$pParse>>2]|0; + _sqlite3RollbackTransaction($25); + break; + } + case 27: { + $49 = HEAP32[$pParse>>2]|0; + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + 240|0); + $52 = (($51) + 2|0); + HEAP8[$52>>0] = 0; + $53 = HEAP32[$yymsp>>2]|0; + $54 = (($53) + 4|0); + ;HEAP32[$yygotominor+0>>2]=HEAP32[$54+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$54+4>>2]|0; + break; + } + case 34: { + HEAP8[$yygotominor>>0] = 0; + break; + } + case 39: { + $112 = HEAP32[$pParse>>2]|0; + $113 = HEAP32[$yymsp>>2]|0; + $114 = (($113) + 4|0); + _sqlite3AddColumn($112,$114); + $115 = HEAP32[$yymsp>>2]|0; + $116 = (($115) + 4|0); + ;HEAP32[$yygotominor+0>>2]=HEAP32[$116+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$116+4>>2]|0; + $117 = HEAP32[$pParse>>2]|0; + $118 = (($117) + 320|0); + $119 = (($118) + 4|0); + HEAP32[$119>>2] = 0; + break; + } + case 5: { + $11 = HEAP32[$pParse>>2]|0; + _sqlite3BeginParse($11,0); + break; + } + case 44: { + $122 = HEAP32[$pParse>>2]|0; + $123 = HEAP32[$yymsp>>2]|0; + $124 = (($123) + 4|0); + _sqlite3AddColumnType($122,$124); + break; + } + case 279: case 263: case 262: case 261: case 260: case 259: case 258: case 257: case 256: case 247: case 150: case 141: case 131: case 130: case 48: case 45: case 42: case 41: case 40: { + $120 = HEAP32[$yymsp>>2]|0; + $121 = (($120) + 4|0); + ;HEAP32[$yygotominor+0>>2]=HEAP32[$121+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$121+4>>2]|0; + break; + } + case 56: { + $192 = HEAP32[$pParse>>2]|0; + $193 = HEAP32[$yymsp>>2]|0; + $194 = (($193) + -16|0); + $195 = (($194) + 4|0); + _sqlite3AddDefaultValue($192,$195); + break; + } + case 64: { + $236 = HEAP32[$pParse>>2]|0; + $237 = HEAP32[$yymsp>>2]|0; + $238 = (($237) + -16|0); + $239 = (($238) + 4|0); + $240 = HEAP32[$239>>2]|0; + _sqlite3AddCheckConstraint($236,$240); + break; + } + case 23: { + $29 = HEAP32[$pParse>>2]|0; + $30 = HEAP32[$yymsp>>2]|0; + $31 = (($30) + 4|0); + _sqlite3Savepoint($29,1,$31); + break; + } + case 49: { + $165 = HEAP32[$yymsp>>2]|0; + $166 = (($165) + -16|0); + $167 = (($166) + 4|0); + $168 = HEAP32[$167>>2]|0; + HEAP32[$yygotominor>>2] = $168; + $169 = HEAP32[$yymsp>>2]|0; + $170 = (($169) + 4|0); + $171 = (($170) + 4|0); + $172 = HEAP32[$171>>2]|0; + $173 = HEAP32[$yymsp>>2]|0; + $174 = (($173) + 4|0); + $175 = HEAP32[$174>>2]|0; + $176 = HEAP32[$yymsp>>2]|0; + $177 = (($176) + -16|0); + $178 = (($177) + 4|0); + $179 = HEAP32[$178>>2]|0; + $180 = $175; + $181 = $179; + $182 = (($180) - ($181))|0; + $183 = (($172) + ($182))|0; + $184 = (($yygotominor) + 4|0); + HEAP32[$184>>2] = $183; + break; + } + case 62: { + $220 = HEAP32[$pParse>>2]|0; + $221 = HEAP32[$yymsp>>2]|0; + $222 = (($221) + -16|0); + $223 = (($222) + 4|0); + $224 = HEAP32[$223>>2]|0; + $225 = HEAP32[$yymsp>>2]|0; + $226 = (($225) + 4|0); + $227 = HEAP32[$226>>2]|0; + $228 = HEAP32[$yymsp>>2]|0; + $229 = (($228) + -32|0); + $230 = (($229) + 4|0); + $231 = HEAP32[$230>>2]|0; + _sqlite3AddPrimaryKey($220,0,$224,$227,$231); + break; + } + case 35: { + $74 = HEAP32[$yymsp>>2]|0; + $75 = (($74) + 4|0); + $76 = (($75) + 4|0); + $77 = HEAP32[$76>>2]|0; + $78 = ($77|0)==(5); + if ($78) { + $79 = HEAP32[$yymsp>>2]|0; + $80 = (($79) + 4|0); + $81 = HEAP32[$80>>2]|0; + $82 = (_sqlite3_strnicmp($81,8848,5)|0); + $83 = ($82|0)==(0); + if ($83) { + HEAP8[$yygotominor>>0] = 32; + break L1; + } + } + HEAP8[$yygotominor>>0] = 0; + $84 = HEAP32[$pParse>>2]|0; + $85 = HEAP32[$yymsp>>2]|0; + $86 = (($85) + 4|0); + $87 = (($86) + 4|0); + $88 = HEAP32[$87>>2]|0; + $89 = HEAP32[$yymsp>>2]|0; + $90 = (($89) + 4|0); + $91 = HEAP32[$90>>2]|0; + HEAP32[$vararg_buffer14>>2] = $88; + $vararg_ptr1 = (($vararg_buffer14) + 4|0); + HEAP32[$vararg_ptr1>>2] = $91; + _sqlite3ErrorMsg($84,16528,$vararg_buffer14); + break; + } + case 9: { + $15 = HEAP32[$pParse>>2]|0; + $16 = HEAP32[$yymsp>>2]|0; + $17 = (($16) + -16|0); + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + _sqlite3BeginTransaction($15,$19); + break; + } + case 26: { + $35 = HEAP32[$pParse>>2]|0; + $36 = HEAP32[$yymsp>>2]|0; + $37 = (($36) + -16|0); + $38 = (($37) + 4|0); + $39 = HEAP32[$yymsp>>2]|0; + $40 = (($39) + 4|0); + $41 = HEAP32[$yymsp>>2]|0; + $42 = (($41) + -64|0); + $43 = (($42) + 4|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$yymsp>>2]|0; + $46 = (($45) + -32|0); + $47 = (($46) + 4|0); + $48 = HEAP32[$47>>2]|0; + _sqlite3StartTable($35,$38,$40,$44,0,0,$48); + break; + } + case 57: case 55: { + $189 = HEAP32[$pParse>>2]|0; + $190 = HEAP32[$yymsp>>2]|0; + $191 = (($190) + 4|0); + _sqlite3AddDefaultValue($189,$191); + break; + } + case 221: case 218: case 108: case 97: case 85: case 83: case 81: case 68: case 31: case 28: { + HEAP32[$yygotominor>>2] = 0; + break; + } + case 65: { + $241 = HEAP32[$pParse>>2]|0; + $242 = HEAP32[$yymsp>>2]|0; + $243 = (($242) + -32|0); + $244 = (($243) + 4|0); + $245 = HEAP32[$yymsp>>2]|0; + $246 = (($245) + -16|0); + $247 = (($246) + 4|0); + $248 = HEAP32[$247>>2]|0; + $249 = HEAP32[$yymsp>>2]|0; + $250 = (($249) + 4|0); + $251 = HEAP32[$250>>2]|0; + _sqlite3CreateForeignKey($241,0,$244,$248,$251); + break; + } + case 66: { + $252 = HEAP32[$pParse>>2]|0; + $253 = HEAP32[$yymsp>>2]|0; + $254 = (($253) + 4|0); + $255 = HEAP32[$254>>2]|0; + _sqlite3DeferForeignKey($252,$255); + break; + } + case 70: { + HEAP32[$yygotominor>>2] = 0; + break; + } + case 86: { + $286 = (($yygotominor) + 4|0); + HEAP32[$286>>2] = 0; + HEAP32[$yygotominor>>2] = 0; + break; + } + case 79: { + HEAP32[$yygotominor>>2] = 6; + break; + } + case 59: { + $212 = HEAP32[$pParse>>2]|0; + $213 = HEAP32[$yymsp>>2]|0; + $214 = (($213) + 4|0); + _spanExpr($v1,$212,97,$214); + $215 = HEAP32[$pParse>>2]|0; + _sqlite3AddDefaultValue($215,$v1); + break; + } + case 46: { + $125 = HEAP32[$yymsp>>2]|0; + $126 = (($125) + -48|0); + $127 = (($126) + 4|0); + $128 = HEAP32[$127>>2]|0; + HEAP32[$yygotominor>>2] = $128; + $129 = HEAP32[$yymsp>>2]|0; + $130 = (($129) + 4|0); + $131 = (($130) + 4|0); + $132 = HEAP32[$131>>2]|0; + $133 = HEAP32[$yymsp>>2]|0; + $134 = (($133) + 4|0); + $135 = HEAP32[$134>>2]|0; + $136 = (($135) + ($132)|0); + $137 = HEAP32[$yymsp>>2]|0; + $138 = (($137) + -48|0); + $139 = (($138) + 4|0); + $140 = HEAP32[$139>>2]|0; + $141 = $136; + $142 = $140; + $143 = (($141) - ($142))|0; + $144 = (($yygotominor) + 4|0); + HEAP32[$144>>2] = $143; + break; + } + case 75: { + $278 = HEAP32[$yymsp>>2]|0; + $279 = (($278) + 4|0); + $280 = HEAP32[$279>>2]|0; + $281 = $280 << 8; + HEAP32[$yygotominor>>2] = $281; + $282 = (($yygotominor) + 4|0); + HEAP32[$282>>2] = 65280; + break; + } + case 117: case 115: case 16: case 15: case 14: { + $20 = HEAP32[$yymsp>>2]|0; + $21 = (($20) + 2|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + HEAP32[$yygotominor>>2] = $23; + break; + } + case 78: { + HEAP32[$yygotominor>>2] = 9; + break; + } + case 80: { + HEAP32[$yygotominor>>2] = 0; + break; + } + case 8: { + $14 = HEAP32[$pParse>>2]|0; + _sqlite3FinishCoding($14); + break; + } + case 61: { + $216 = HEAP32[$pParse>>2]|0; + $217 = HEAP32[$yymsp>>2]|0; + $218 = (($217) + 4|0); + $219 = HEAP32[$218>>2]|0; + _sqlite3AddNotNull($216,$219); + break; + } + case 77: { + HEAP32[$yygotominor>>2] = 8; + break; + } + case 87: { + $287 = HEAP32[$yymsp>>2]|0; + $288 = (($287) + -16|0); + $289 = (($288) + 4|0); + ;HEAP32[$yygotominor+0>>2]=HEAP32[$289+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$289+4>>2]|0; + break; + } + case 90: { + $290 = HEAP32[$pParse>>2]|0; + $291 = (($290) + 320|0); + $292 = (($291) + 4|0); + HEAP32[$292>>2] = 0; + break; + } + case 93: { + $293 = HEAP32[$pParse>>2]|0; + $294 = HEAP32[$yymsp>>2]|0; + $295 = (($294) + -48|0); + $296 = (($295) + 4|0); + $297 = HEAP32[$296>>2]|0; + $298 = HEAP32[$yymsp>>2]|0; + $299 = (($298) + 4|0); + $300 = HEAP32[$299>>2]|0; + $301 = HEAP32[$yymsp>>2]|0; + $302 = (($301) + -32|0); + $303 = (($302) + 4|0); + $304 = HEAP32[$303>>2]|0; + _sqlite3AddPrimaryKey($293,$297,$300,$304,0); + break; + } + case 94: { + $305 = HEAP32[$pParse>>2]|0; + $306 = HEAP32[$yymsp>>2]|0; + $307 = (($306) + -32|0); + $308 = (($307) + 4|0); + $309 = HEAP32[$308>>2]|0; + $310 = HEAP32[$yymsp>>2]|0; + $311 = (($310) + 4|0); + $312 = HEAP32[$311>>2]|0; + (_sqlite3CreateIndex($305,0,0,0,$309,$312,0,0,0,0)|0); + break; + } + case 13: { + HEAP32[$yygotominor>>2] = 7; + break; + } + case 22: { + $26 = HEAP32[$pParse>>2]|0; + $27 = HEAP32[$yymsp>>2]|0; + $28 = (($27) + 4|0); + _sqlite3Savepoint($26,0,$28); + break; + } + case 74: { + $274 = HEAP32[$yymsp>>2]|0; + $275 = (($274) + 4|0); + $276 = HEAP32[$275>>2]|0; + HEAP32[$yygotominor>>2] = $276; + $277 = (($yygotominor) + 4|0); + HEAP32[$277>>2] = 255; + break; + } + case 222: case 219: case 107: case 84: case 69: case 30: case 29: { + HEAP32[$yygotominor>>2] = 1; + break; + } + case 67: { + $256 = HEAP32[$pParse>>2]|0; + $257 = HEAP32[$yymsp>>2]|0; + $258 = (($257) + 4|0); + _sqlite3AddCollateType($256,$258); + break; + } + case 76: { + HEAP32[$yygotominor>>2] = 7; + break; + } + case 106: { + $342 = HEAP32[$pParse>>2]|0; + $343 = HEAP32[$yymsp>>2]|0; + $344 = (($343) + 4|0); + $345 = HEAP32[$344>>2]|0; + $346 = HEAP32[$yymsp>>2]|0; + $347 = (($346) + -16|0); + $348 = (($347) + 4|0); + $349 = HEAP32[$348>>2]|0; + _sqlite3DropTable($342,$345,0,$349); + break; + } + case 121: { + $530 = HEAP32[$pParse>>2]|0; + $531 = HEAP32[$yymsp>>2]|0; + $532 = (($531) + -16|0); + $533 = (($532) + 4|0); + $534 = HEAP32[$533>>2]|0; + $535 = (_sqlite3SelectNew($530,$534,0,0,0,0,0,128,0,0)|0); + HEAP32[$pRight>>2] = $535; + $536 = HEAP32[$pRight>>2]|0; + $537 = ($536|0)!=(0|0); + if ($537) { + $538 = HEAP32[$pRight>>2]|0; + $539 = (($538) + 4|0); + HEAP8[$539>>0] = 116; + $540 = HEAP32[$yymsp>>2]|0; + $541 = (($540) + -64|0); + $542 = (($541) + 4|0); + $543 = HEAP32[$542>>2]|0; + $544 = HEAP32[$pRight>>2]|0; + $545 = (($544) + 52|0); + HEAP32[$545>>2] = $543; + $546 = HEAP32[$pRight>>2]|0; + HEAP32[$yygotominor>>2] = $546; + break L1; + } else { + $547 = HEAP32[$yymsp>>2]|0; + $548 = (($547) + -64|0); + $549 = (($548) + 4|0); + $550 = HEAP32[$549>>2]|0; + HEAP32[$yygotominor>>2] = $550; + break L1; + } + break; + } + case 242: case 236: case 161: case 154: case 126: { + HEAP32[$yygotominor>>2] = 0; + break; + } + case 133: { + $610 = HEAP32[$pParse>>2]|0; + $611 = HEAP32[$610>>2]|0; + $612 = (_sqlite3DbMallocZero($611,80)|0); + HEAP32[$yygotominor>>2] = $612; + break; + } + case 135: { + $617 = HEAP32[$yymsp>>2]|0; + $618 = (($617) + -16|0); + $619 = (($618) + 4|0); + $620 = HEAP32[$619>>2]|0; + HEAP32[$yygotominor>>2] = $620; + $621 = HEAP32[$yygotominor>>2]|0; + $622 = ($621|0)!=(0|0); + if ($622) { + $623 = HEAP32[$yygotominor>>2]|0; + $624 = HEAP32[$623>>2]|0; + $625 = ($624|0)>(0); + if ($625) { + $626 = HEAP32[$yymsp>>2]|0; + $627 = (($626) + 4|0); + $628 = HEAP32[$627>>2]|0; + $629 = $628&255; + $630 = HEAP32[$yygotominor>>2]|0; + $631 = HEAP32[$630>>2]|0; + $632 = (($631) - 1)|0; + $633 = HEAP32[$yygotominor>>2]|0; + $634 = (($633) + 8|0); + $635 = (($634) + (($632*72)|0)|0); + $636 = (($635) + 36|0); + HEAP8[$636>>0] = $629; + } + } + break; + } + case 102: { + $338 = HEAP32[$yymsp>>2]|0; + $339 = (($338) + 4|0); + $340 = HEAP32[$339>>2]|0; + $341 = $340&255; + HEAP8[$yygotominor>>0] = $341; + break; + } + case 132: { + $609 = (($yygotominor) + 4|0); + HEAP32[$609>>2] = 0; + break; + } + case 136: { + HEAP32[$yygotominor>>2] = 0; + break; + } + case 104: { + HEAP32[$yygotominor>>2] = 4; + break; + } + case 137: { + $637 = HEAP32[$pParse>>2]|0; + $638 = HEAP32[$yymsp>>2]|0; + $639 = (($638) + -96|0); + $640 = (($639) + 4|0); + $641 = HEAP32[$640>>2]|0; + $642 = HEAP32[$yymsp>>2]|0; + $643 = (($642) + -80|0); + $644 = (($643) + 4|0); + $645 = HEAP32[$yymsp>>2]|0; + $646 = (($645) + -64|0); + $647 = (($646) + 4|0); + $648 = HEAP32[$yymsp>>2]|0; + $649 = (($648) + -48|0); + $650 = (($649) + 4|0); + $651 = HEAP32[$yymsp>>2]|0; + $652 = (($651) + -16|0); + $653 = (($652) + 4|0); + $654 = HEAP32[$653>>2]|0; + $655 = HEAP32[$yymsp>>2]|0; + $656 = (($655) + 4|0); + $657 = HEAP32[$656>>2]|0; + $658 = (_sqlite3SrcListAppendFromTerm($637,$641,$644,$647,$650,0,$654,$657)|0); + HEAP32[$yygotominor>>2] = $658; + $659 = HEAP32[$pParse>>2]|0; + $660 = HEAP32[$yygotominor>>2]|0; + $661 = HEAP32[$yymsp>>2]|0; + $662 = (($661) + -32|0); + $663 = (($662) + 4|0); + _sqlite3SrcListIndexedBy($659,$660,$663); + break; + } + case 95: { + $313 = HEAP32[$pParse>>2]|0; + $314 = HEAP32[$yymsp>>2]|0; + $315 = (($314) + -32|0); + $316 = (($315) + 4|0); + $317 = HEAP32[$316>>2]|0; + _sqlite3AddCheckConstraint($313,$317); + break; + } + case 128: { + $579 = HEAP32[$pParse>>2]|0; + $580 = HEAP32[$579>>2]|0; + $581 = (_sqlite3Expr($580,116,0)|0); + HEAP32[$p2>>2] = $581; + $582 = HEAP32[$pParse>>2]|0; + $583 = HEAP32[$yymsp>>2]|0; + $584 = (($583) + -16|0); + $585 = (($584) + 4|0); + $586 = HEAP32[$585>>2]|0; + $587 = HEAP32[$p2>>2]|0; + $588 = (_sqlite3ExprListAppend($582,$586,$587)|0); + HEAP32[$yygotominor>>2] = $588; + break; + } + case 129: { + $589 = HEAP32[$pParse>>2]|0; + $590 = HEAP32[$yymsp>>2]|0; + $591 = (($590) + 4|0); + $592 = (_sqlite3PExpr($589,116,0,0,$591)|0); + HEAP32[$pRight3>>2] = $592; + $593 = HEAP32[$pParse>>2]|0; + $594 = HEAP32[$yymsp>>2]|0; + $595 = (($594) + -32|0); + $596 = (($595) + 4|0); + $597 = (_sqlite3PExpr($593,27,0,0,$596)|0); + HEAP32[$pLeft>>2] = $597; + $598 = HEAP32[$pParse>>2]|0; + $599 = HEAP32[$pLeft>>2]|0; + $600 = HEAP32[$pRight3>>2]|0; + $601 = (_sqlite3PExpr($598,122,$599,$600,0)|0); + HEAP32[$pDot>>2] = $601; + $602 = HEAP32[$pParse>>2]|0; + $603 = HEAP32[$yymsp>>2]|0; + $604 = (($603) + -48|0); + $605 = (($604) + 4|0); + $606 = HEAP32[$605>>2]|0; + $607 = HEAP32[$pDot>>2]|0; + $608 = (_sqlite3ExprListAppend($602,$606,$607)|0); + HEAP32[$yygotominor>>2] = $608; + break; + } + case 138: { + $664 = HEAP32[$pParse>>2]|0; + $665 = HEAP32[$yymsp>>2]|0; + $666 = (($665) + -96|0); + $667 = (($666) + 4|0); + $668 = HEAP32[$667>>2]|0; + $669 = HEAP32[$yymsp>>2]|0; + $670 = (($669) + -32|0); + $671 = (($670) + 4|0); + $672 = HEAP32[$yymsp>>2]|0; + $673 = (($672) + -64|0); + $674 = (($673) + 4|0); + $675 = HEAP32[$674>>2]|0; + $676 = HEAP32[$yymsp>>2]|0; + $677 = (($676) + -16|0); + $678 = (($677) + 4|0); + $679 = HEAP32[$678>>2]|0; + $680 = HEAP32[$yymsp>>2]|0; + $681 = (($680) + 4|0); + $682 = HEAP32[$681>>2]|0; + $683 = (_sqlite3SrcListAppendFromTerm($664,$668,0,0,$671,$675,$679,$682)|0); + HEAP32[$yygotominor>>2] = $683; + break; + } + case 105: { + HEAP32[$yygotominor>>2] = 5; + break; + } + case 139: { + $684 = HEAP32[$yymsp>>2]|0; + $685 = (($684) + -96|0); + $686 = (($685) + 4|0); + $687 = HEAP32[$686>>2]|0; + $688 = ($687|0)==(0|0); + if ($688) { + $689 = HEAP32[$yymsp>>2]|0; + $690 = (($689) + -32|0); + $691 = (($690) + 4|0); + $692 = (($691) + 4|0); + $693 = HEAP32[$692>>2]|0; + $694 = ($693|0)==(0); + if ($694) { + $695 = HEAP32[$yymsp>>2]|0; + $696 = (($695) + -16|0); + $697 = (($696) + 4|0); + $698 = HEAP32[$697>>2]|0; + $699 = ($698|0)==(0|0); + if ($699) { + $700 = HEAP32[$yymsp>>2]|0; + $701 = (($700) + 4|0); + $702 = HEAP32[$701>>2]|0; + $703 = ($702|0)==(0|0); + if ($703) { + $704 = HEAP32[$yymsp>>2]|0; + $705 = (($704) + -64|0); + $706 = (($705) + 4|0); + $707 = HEAP32[$706>>2]|0; + HEAP32[$yygotominor>>2] = $707; + break L1; + } + } + } + } + $708 = HEAP32[$yymsp>>2]|0; + $709 = (($708) + -64|0); + $710 = (($709) + 4|0); + $711 = HEAP32[$710>>2]|0; + $712 = HEAP32[$711>>2]|0; + $713 = ($712|0)==(1); + if (!($713)) { + $770 = HEAP32[$yymsp>>2]|0; + $771 = (($770) + -64|0); + $772 = (($771) + 4|0); + $773 = HEAP32[$772>>2]|0; + _sqlite3SrcListShiftJoinType($773); + $774 = HEAP32[$pParse>>2]|0; + $775 = HEAP32[$yymsp>>2]|0; + $776 = (($775) + -64|0); + $777 = (($776) + 4|0); + $778 = HEAP32[$777>>2]|0; + $779 = (_sqlite3SelectNew($774,0,$778,0,0,0,0,512,0,0)|0); + HEAP32[$pSubquery>>2] = $779; + $780 = HEAP32[$pParse>>2]|0; + $781 = HEAP32[$yymsp>>2]|0; + $782 = (($781) + -96|0); + $783 = (($782) + 4|0); + $784 = HEAP32[$783>>2]|0; + $785 = HEAP32[$yymsp>>2]|0; + $786 = (($785) + -32|0); + $787 = (($786) + 4|0); + $788 = HEAP32[$pSubquery>>2]|0; + $789 = HEAP32[$yymsp>>2]|0; + $790 = (($789) + -16|0); + $791 = (($790) + 4|0); + $792 = HEAP32[$791>>2]|0; + $793 = HEAP32[$yymsp>>2]|0; + $794 = (($793) + 4|0); + $795 = HEAP32[$794>>2]|0; + $796 = (_sqlite3SrcListAppendFromTerm($780,$784,0,0,$787,$788,$792,$795)|0); + HEAP32[$yygotominor>>2] = $796; + break L1; + } + $714 = HEAP32[$pParse>>2]|0; + $715 = HEAP32[$yymsp>>2]|0; + $716 = (($715) + -96|0); + $717 = (($716) + 4|0); + $718 = HEAP32[$717>>2]|0; + $719 = HEAP32[$yymsp>>2]|0; + $720 = (($719) + -32|0); + $721 = (($720) + 4|0); + $722 = HEAP32[$yymsp>>2]|0; + $723 = (($722) + -16|0); + $724 = (($723) + 4|0); + $725 = HEAP32[$724>>2]|0; + $726 = HEAP32[$yymsp>>2]|0; + $727 = (($726) + 4|0); + $728 = HEAP32[$727>>2]|0; + $729 = (_sqlite3SrcListAppendFromTerm($714,$718,0,0,$721,0,$725,$728)|0); + HEAP32[$yygotominor>>2] = $729; + $730 = HEAP32[$yygotominor>>2]|0; + $731 = ($730|0)!=(0|0); + if ($731) { + $732 = HEAP32[$yygotominor>>2]|0; + $733 = HEAP32[$732>>2]|0; + $734 = (($733) - 1)|0; + $735 = HEAP32[$yygotominor>>2]|0; + $736 = (($735) + 8|0); + $737 = (($736) + (($734*72)|0)|0); + HEAP32[$pNew>>2] = $737; + $738 = HEAP32[$yymsp>>2]|0; + $739 = (($738) + -64|0); + $740 = (($739) + 4|0); + $741 = HEAP32[$740>>2]|0; + $742 = (($741) + 8|0); + HEAP32[$pOld>>2] = $742; + $743 = HEAP32[$pOld>>2]|0; + $744 = (($743) + 8|0); + $745 = HEAP32[$744>>2]|0; + $746 = HEAP32[$pNew>>2]|0; + $747 = (($746) + 8|0); + HEAP32[$747>>2] = $745; + $748 = HEAP32[$pOld>>2]|0; + $749 = (($748) + 4|0); + $750 = HEAP32[$749>>2]|0; + $751 = HEAP32[$pNew>>2]|0; + $752 = (($751) + 4|0); + HEAP32[$752>>2] = $750; + $753 = HEAP32[$pOld>>2]|0; + $754 = (($753) + 20|0); + $755 = HEAP32[$754>>2]|0; + $756 = HEAP32[$pNew>>2]|0; + $757 = (($756) + 20|0); + HEAP32[$757>>2] = $755; + $758 = HEAP32[$pOld>>2]|0; + $759 = (($758) + 4|0); + HEAP32[$759>>2] = 0; + $760 = HEAP32[$pOld>>2]|0; + $761 = (($760) + 8|0); + HEAP32[$761>>2] = 0; + $762 = HEAP32[$pOld>>2]|0; + $763 = (($762) + 20|0); + HEAP32[$763>>2] = 0; + } + $764 = HEAP32[$pParse>>2]|0; + $765 = HEAP32[$764>>2]|0; + $766 = HEAP32[$yymsp>>2]|0; + $767 = (($766) + -64|0); + $768 = (($767) + 4|0); + $769 = HEAP32[$768>>2]|0; + _sqlite3SrcListDelete($765,$769); + break; + } + case 124: case 123: { + HEAP16[$yygotominor>>1] = 0; + break; + } + case 101: { + HEAP8[$yygotominor>>0] = 10; + break; + } + case 243: case 125: { + $551 = HEAP32[$yymsp>>2]|0; + $552 = (($551) + -16|0); + $553 = (($552) + 4|0); + $554 = HEAP32[$553>>2]|0; + HEAP32[$yygotominor>>2] = $554; + break; + } + case 96: { + $318 = HEAP32[$pParse>>2]|0; + $319 = HEAP32[$yymsp>>2]|0; + $320 = (($319) + -96|0); + $321 = (($320) + 4|0); + $322 = HEAP32[$321>>2]|0; + $323 = HEAP32[$yymsp>>2]|0; + $324 = (($323) + -48|0); + $325 = (($324) + 4|0); + $326 = HEAP32[$yymsp>>2]|0; + $327 = (($326) + -32|0); + $328 = (($327) + 4|0); + $329 = HEAP32[$328>>2]|0; + $330 = HEAP32[$yymsp>>2]|0; + $331 = (($330) + -16|0); + $332 = (($331) + 4|0); + $333 = HEAP32[$332>>2]|0; + _sqlite3CreateForeignKey($318,$322,$325,$329,$333); + $334 = HEAP32[$pParse>>2]|0; + $335 = HEAP32[$yymsp>>2]|0; + $336 = (($335) + 4|0); + $337 = HEAP32[$336>>2]|0; + _sqlite3DeferForeignKey($334,$337); + break; + } + case 111: { + ;HEAP32[$dest+0>>2]=HEAP32[16560+0>>2]|0;HEAP32[$dest+4>>2]=HEAP32[16560+4>>2]|0;HEAP32[$dest+8>>2]=HEAP32[16560+8>>2]|0;HEAP32[$dest+12>>2]=HEAP32[16560+12>>2]|0;HEAP32[$dest+16>>2]=HEAP32[16560+16>>2]|0; + $379 = HEAP32[$pParse>>2]|0; + $380 = HEAP32[$yymsp>>2]|0; + $381 = (($380) + 4|0); + $382 = HEAP32[$381>>2]|0; + (_sqlite3Select($379,$382,$dest)|0); + $383 = HEAP32[$pParse>>2]|0; + $384 = HEAP32[$383>>2]|0; + $385 = HEAP32[$yymsp>>2]|0; + $386 = (($385) + 4|0); + $387 = HEAP32[$386>>2]|0; + _sqlite3SelectDelete($384,$387); + break; + } + case 114: { + $442 = HEAP32[$yymsp>>2]|0; + $443 = (($442) + 4|0); + $444 = HEAP32[$443>>2]|0; + HEAP32[$pRhs>>2] = $444; + $445 = HEAP32[$pRhs>>2]|0; + $446 = ($445|0)!=(0|0); + if ($446) { + $447 = HEAP32[$pRhs>>2]|0; + $448 = (($447) + 52|0); + $449 = HEAP32[$448>>2]|0; + $450 = ($449|0)!=(0|0); + if ($450) { + $451 = (($x) + 4|0); + HEAP32[$451>>2] = 0; + $452 = HEAP32[$pParse>>2]|0; + $453 = HEAP32[$pRhs>>2]|0; + $454 = (_sqlite3SrcListAppendFromTerm($452,0,0,0,$x,$453,0,0)|0); + HEAP32[$pFrom>>2] = $454; + $455 = HEAP32[$pParse>>2]|0; + $456 = HEAP32[$pFrom>>2]|0; + $457 = (_sqlite3SelectNew($455,0,$456,0,0,0,0,0,0,0)|0); + HEAP32[$pRhs>>2] = $457; + } + } + $458 = HEAP32[$pRhs>>2]|0; + $459 = ($458|0)!=(0|0); + if ($459) { + $460 = HEAP32[$yymsp>>2]|0; + $461 = (($460) + -16|0); + $462 = (($461) + 4|0); + $463 = HEAP32[$462>>2]|0; + $464 = $463&255; + $465 = HEAP32[$pRhs>>2]|0; + $466 = (($465) + 4|0); + HEAP8[$466>>0] = $464; + $467 = HEAP32[$yymsp>>2]|0; + $468 = (($467) + -32|0); + $469 = (($468) + 4|0); + $470 = HEAP32[$469>>2]|0; + $471 = HEAP32[$pRhs>>2]|0; + $472 = (($471) + 52|0); + HEAP32[$472>>2] = $470; + $473 = HEAP32[$yymsp>>2]|0; + $474 = (($473) + -16|0); + $475 = (($474) + 4|0); + $476 = HEAP32[$475>>2]|0; + $477 = ($476|0)!=(116); + if ($477) { + $478 = HEAP32[$pParse>>2]|0; + $479 = (($478) + 22|0); + HEAP8[$479>>0] = 1; + } + } else { + $480 = HEAP32[$pParse>>2]|0; + $481 = HEAP32[$480>>2]|0; + $482 = HEAP32[$yymsp>>2]|0; + $483 = (($482) + -32|0); + $484 = (($483) + 4|0); + $485 = HEAP32[$484>>2]|0; + _sqlite3SelectDelete($481,$485); + } + $486 = HEAP32[$pRhs>>2]|0; + HEAP32[$yygotominor>>2] = $486; + break; + } + case 118: { + $487 = HEAP32[$pParse>>2]|0; + $488 = HEAP32[$yymsp>>2]|0; + $489 = (($488) + -96|0); + $490 = (($489) + 4|0); + $491 = HEAP32[$490>>2]|0; + $492 = HEAP32[$yymsp>>2]|0; + $493 = (($492) + -80|0); + $494 = (($493) + 4|0); + $495 = HEAP32[$494>>2]|0; + $496 = HEAP32[$yymsp>>2]|0; + $497 = (($496) + -64|0); + $498 = (($497) + 4|0); + $499 = HEAP32[$498>>2]|0; + $500 = HEAP32[$yymsp>>2]|0; + $501 = (($500) + -48|0); + $502 = (($501) + 4|0); + $503 = HEAP32[$502>>2]|0; + $504 = HEAP32[$yymsp>>2]|0; + $505 = (($504) + -32|0); + $506 = (($505) + 4|0); + $507 = HEAP32[$506>>2]|0; + $508 = HEAP32[$yymsp>>2]|0; + $509 = (($508) + -16|0); + $510 = (($509) + 4|0); + $511 = HEAP32[$510>>2]|0; + $512 = HEAP32[$yymsp>>2]|0; + $513 = (($512) + -112|0); + $514 = (($513) + 4|0); + $515 = HEAP16[$514>>1]|0; + $516 = HEAP32[$yymsp>>2]|0; + $517 = (($516) + 4|0); + $518 = HEAP32[$517>>2]|0; + $519 = HEAP32[$yymsp>>2]|0; + $520 = (($519) + 4|0); + $521 = (($520) + 4|0); + $522 = HEAP32[$521>>2]|0; + $523 = (_sqlite3SelectNew($487,$491,$495,$499,$503,$507,$511,$515,$518,$522)|0); + HEAP32[$yygotominor>>2] = $523; + break; + } + case 127: { + $555 = HEAP32[$pParse>>2]|0; + $556 = HEAP32[$yymsp>>2]|0; + $557 = (($556) + -32|0); + $558 = (($557) + 4|0); + $559 = HEAP32[$558>>2]|0; + $560 = HEAP32[$yymsp>>2]|0; + $561 = (($560) + -16|0); + $562 = (($561) + 4|0); + $563 = HEAP32[$562>>2]|0; + $564 = (_sqlite3ExprListAppend($555,$559,$563)|0); + HEAP32[$yygotominor>>2] = $564; + $565 = HEAP32[$yymsp>>2]|0; + $566 = (($565) + 4|0); + $567 = (($566) + 4|0); + $568 = HEAP32[$567>>2]|0; + $569 = ($568>>>0)>(0); + if ($569) { + $570 = HEAP32[$pParse>>2]|0; + $571 = HEAP32[$yygotominor>>2]|0; + $572 = HEAP32[$yymsp>>2]|0; + $573 = (($572) + 4|0); + _sqlite3ExprListSetName($570,$571,$573,1); + } + $574 = HEAP32[$pParse>>2]|0; + $575 = HEAP32[$yygotominor>>2]|0; + $576 = HEAP32[$yymsp>>2]|0; + $577 = (($576) + -16|0); + $578 = (($577) + 4|0); + _sqlite3ExprListSetSpan($574,$575,$578); + break; + } + case 122: { + HEAP16[$yygotominor>>1] = 1; + break; + } + case 109: { + $350 = HEAP32[$pParse>>2]|0; + $351 = HEAP32[$yymsp>>2]|0; + $352 = (($351) + -112|0); + $353 = (($352) + 4|0); + $354 = HEAP32[$yymsp>>2]|0; + $355 = (($354) + -48|0); + $356 = (($355) + 4|0); + $357 = HEAP32[$yymsp>>2]|0; + $358 = (($357) + -32|0); + $359 = (($358) + 4|0); + $360 = HEAP32[$yymsp>>2]|0; + $361 = (($360) + 4|0); + $362 = HEAP32[$361>>2]|0; + $363 = HEAP32[$yymsp>>2]|0; + $364 = (($363) + -96|0); + $365 = (($364) + 4|0); + $366 = HEAP32[$365>>2]|0; + $367 = HEAP32[$yymsp>>2]|0; + $368 = (($367) + -64|0); + $369 = (($368) + 4|0); + $370 = HEAP32[$369>>2]|0; + _sqlite3CreateView($350,$353,$356,$359,$362,$366,$370); + break; + } + case 112: { + $388 = HEAP32[$yymsp>>2]|0; + $389 = (($388) + 4|0); + $390 = HEAP32[$389>>2]|0; + HEAP32[$p>>2] = $390; + $391 = HEAP32[$p>>2]|0; + $392 = ($391|0)!=(0|0); + if ($392) { + HEAP32[$cnt>>2] = 0; + $393 = HEAP32[$yymsp>>2]|0; + $394 = (($393) + -16|0); + $395 = (($394) + 4|0); + $396 = HEAP32[$395>>2]|0; + $397 = HEAP32[$p>>2]|0; + $398 = (($397) + 68|0); + HEAP32[$398>>2] = $396; + $399 = HEAP32[$p>>2]|0; + $400 = (($399) + 52|0); + $401 = HEAP32[$400>>2]|0; + $402 = ($401|0)!=(0|0); + if ($402) { + HEAP32[$pNext>>2] = 0; + $403 = HEAP32[$p>>2]|0; + HEAP32[$pLoop>>2] = $403; + while(1) { + $404 = HEAP32[$pLoop>>2]|0; + $405 = ($404|0)!=(0|0); + if (!($405)) { + break; + } + $406 = HEAP32[$pNext>>2]|0; + $407 = HEAP32[$pLoop>>2]|0; + $408 = (($407) + 56|0); + HEAP32[$408>>2] = $406; + $409 = HEAP32[$pLoop>>2]|0; + $410 = (($409) + 6|0); + $411 = HEAP16[$410>>1]|0; + $412 = $411&65535; + $413 = $412 | 4096; + $414 = $413&65535; + HEAP16[$410>>1] = $414; + $415 = HEAP32[$pLoop>>2]|0; + HEAP32[$pNext>>2] = $415; + $416 = HEAP32[$pLoop>>2]|0; + $417 = (($416) + 52|0); + $418 = HEAP32[$417>>2]|0; + HEAP32[$pLoop>>2] = $418; + $419 = HEAP32[$cnt>>2]|0; + $420 = (($419) + 1)|0; + HEAP32[$cnt>>2] = $420; + } + $421 = HEAP32[$pParse>>2]|0; + $422 = HEAP32[$421>>2]|0; + $423 = (($422) + 88|0); + $424 = (($423) + 16|0); + $425 = HEAP32[$424>>2]|0; + HEAP32[$mxSelect>>2] = $425; + $426 = HEAP32[$mxSelect>>2]|0; + $427 = ($426|0)!=(0); + if ($427) { + $428 = HEAP32[$cnt>>2]|0; + $429 = HEAP32[$mxSelect>>2]|0; + $430 = ($428|0)>($429|0); + if ($430) { + $431 = HEAP32[$pParse>>2]|0; + _sqlite3ErrorMsg($431,16584,$vararg_buffer14); + } + } + } + } else { + $432 = HEAP32[$pParse>>2]|0; + $433 = HEAP32[$432>>2]|0; + $434 = HEAP32[$yymsp>>2]|0; + $435 = (($434) + -16|0); + $436 = (($435) + 4|0); + $437 = HEAP32[$436>>2]|0; + _sqlite3WithDelete($433,$437); + } + $438 = HEAP32[$p>>2]|0; + HEAP32[$yygotominor>>2] = $438; + break; + } + case 99: { + HEAP32[$yygotominor>>2] = 10; + break; + } + case 116: { + HEAP32[$yygotominor>>2] = 116; + break; + } + case 120: { + $524 = HEAP32[$pParse>>2]|0; + $525 = HEAP32[$yymsp>>2]|0; + $526 = (($525) + -16|0); + $527 = (($526) + 4|0); + $528 = HEAP32[$527>>2]|0; + $529 = (_sqlite3SelectNew($524,$528,0,0,0,0,0,128,0,0)|0); + HEAP32[$yygotominor>>2] = $529; + break; + } + case 119: case 113: { + $439 = HEAP32[$yymsp>>2]|0; + $440 = (($439) + 4|0); + $441 = HEAP32[$440>>2]|0; + HEAP32[$yygotominor>>2] = $441; + break; + } + case 134: { + $613 = HEAP32[$yymsp>>2]|0; + $614 = (($613) + 4|0); + $615 = HEAP32[$614>>2]|0; + HEAP32[$yygotominor>>2] = $615; + $616 = HEAP32[$yygotominor>>2]|0; + _sqlite3SrcListShiftJoinType($616); + break; + } + case 110: { + $371 = HEAP32[$pParse>>2]|0; + $372 = HEAP32[$yymsp>>2]|0; + $373 = (($372) + 4|0); + $374 = HEAP32[$373>>2]|0; + $375 = HEAP32[$yymsp>>2]|0; + $376 = (($375) + -16|0); + $377 = (($376) + 4|0); + $378 = HEAP32[$377>>2]|0; + _sqlite3DropTable($371,$374,1,$378); + break; + } + case 197: { + $1251 = HEAP32[$pParse>>2]|0; + $1252 = HEAP32[$yymsp>>2]|0; + $1253 = (($1252) + 4|0); + $1254 = (_sqlite3ExprFunction($1251,0,$1253)|0); + HEAP32[$yygotominor>>2] = $1254; + $1255 = HEAP32[$yymsp>>2]|0; + $1256 = (($1255) + 4|0); + $1257 = HEAP32[$yymsp>>2]|0; + $1258 = (($1257) + 4|0); + _spanSet($yygotominor,$1256,$1258); + break; + } + case 184: { + $1046 = HEAP32[$yymsp>>2]|0; + $1047 = (($1046) + -16|0); + $1048 = (($1047) + 4|0); + $1049 = HEAP32[$1048>>2]|0; + HEAP32[$yygotominor>>2] = $1049; + $1050 = HEAP32[$yymsp>>2]|0; + $1051 = (($1050) + -32|0); + $1052 = (($1051) + 4|0); + $1053 = HEAP32[$yymsp>>2]|0; + $1054 = (($1053) + 4|0); + _spanSet($yygotominor,$1052,$1054); + break; + } + case 160: case 158: { + HEAP32[$yygotominor>>2] = 0; + break; + } + case 145: { + $811 = HEAP32[$pParse>>2]|0; + $812 = HEAP32[$yymsp>>2]|0; + $813 = (($812) + -32|0); + $814 = (($813) + 4|0); + $815 = HEAP32[$yymsp>>2]|0; + $816 = (($815) + -16|0); + $817 = (($816) + 4|0); + $818 = (_sqlite3JoinType($811,$814,$817,0)|0); + HEAP32[$yygotominor>>2] = $818; + break; + } + case 188: { + $1065 = HEAP32[$pParse>>2]|0; + $1066 = HEAP32[$yymsp>>2]|0; + $1067 = (($1066) + -32|0); + $1068 = (($1067) + 4|0); + $1069 = (_sqlite3PExpr($1065,27,0,0,$1068)|0); + HEAP32[$temp1>>2] = $1069; + $1070 = HEAP32[$pParse>>2]|0; + $1071 = HEAP32[$yymsp>>2]|0; + $1072 = (($1071) + 4|0); + $1073 = (_sqlite3PExpr($1070,27,0,0,$1072)|0); + HEAP32[$temp2>>2] = $1073; + $1074 = HEAP32[$pParse>>2]|0; + $1075 = HEAP32[$temp1>>2]|0; + $1076 = HEAP32[$temp2>>2]|0; + $1077 = (_sqlite3PExpr($1074,122,$1075,$1076,0)|0); + HEAP32[$yygotominor>>2] = $1077; + $1078 = HEAP32[$yymsp>>2]|0; + $1079 = (($1078) + -32|0); + $1080 = (($1079) + 4|0); + $1081 = HEAP32[$yymsp>>2]|0; + $1082 = (($1081) + 4|0); + _spanSet($yygotominor,$1080,$1082); + break; + } + case 189: { + $1083 = HEAP32[$pParse>>2]|0; + $1084 = HEAP32[$yymsp>>2]|0; + $1085 = (($1084) + -64|0); + $1086 = (($1085) + 4|0); + $1087 = (_sqlite3PExpr($1083,27,0,0,$1086)|0); + HEAP32[$temp14>>2] = $1087; + $1088 = HEAP32[$pParse>>2]|0; + $1089 = HEAP32[$yymsp>>2]|0; + $1090 = (($1089) + -32|0); + $1091 = (($1090) + 4|0); + $1092 = (_sqlite3PExpr($1088,27,0,0,$1091)|0); + HEAP32[$temp25>>2] = $1092; + $1093 = HEAP32[$pParse>>2]|0; + $1094 = HEAP32[$yymsp>>2]|0; + $1095 = (($1094) + 4|0); + $1096 = (_sqlite3PExpr($1093,27,0,0,$1095)|0); + HEAP32[$temp3>>2] = $1096; + $1097 = HEAP32[$pParse>>2]|0; + $1098 = HEAP32[$temp25>>2]|0; + $1099 = HEAP32[$temp3>>2]|0; + $1100 = (_sqlite3PExpr($1097,122,$1098,$1099,0)|0); + HEAP32[$temp4>>2] = $1100; + $1101 = HEAP32[$pParse>>2]|0; + $1102 = HEAP32[$temp14>>2]|0; + $1103 = HEAP32[$temp4>>2]|0; + $1104 = (_sqlite3PExpr($1101,122,$1102,$1103,0)|0); + HEAP32[$yygotominor>>2] = $1104; + $1105 = HEAP32[$yymsp>>2]|0; + $1106 = (($1105) + -64|0); + $1107 = (($1106) + 4|0); + $1108 = HEAP32[$yymsp>>2]|0; + $1109 = (($1108) + 4|0); + _spanSet($yygotominor,$1107,$1109); + break; + } + case 205: case 204: case 203: case 202: case 201: case 200: case 199: case 198: { + $1259 = HEAP32[$pParse>>2]|0; + $1260 = HEAP32[$yymsp>>2]|0; + $1261 = (($1260) + -16|0); + $1262 = (($1261) + 2|0); + $1263 = HEAP8[$1262>>0]|0; + $1264 = $1263&255; + $1265 = HEAP32[$yymsp>>2]|0; + $1266 = (($1265) + -32|0); + $1267 = (($1266) + 4|0); + $1268 = HEAP32[$yymsp>>2]|0; + $1269 = (($1268) + 4|0); + _spanBinaryExpr($yygotominor,$1259,$1264,$1267,$1269); + break; + } + case 206: { + $1270 = HEAP32[$yymsp>>2]|0; + $1271 = (($1270) + 4|0); + ;HEAP32[$yygotominor+0>>2]=HEAP32[$1271+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$1271+4>>2]|0; + $1272 = (($yygotominor) + 8|0); + HEAP32[$1272>>2] = 0; + break; + } + case 143: { + HEAP32[$yygotominor>>2] = 1; + break; + } + case 187: case 186: { + $1062 = HEAP32[$pParse>>2]|0; + $1063 = HEAP32[$yymsp>>2]|0; + $1064 = (($1063) + 4|0); + _spanExpr($yygotominor,$1062,27,$1064); + break; + } + case 157: { + $865 = HEAP32[$pParse>>2]|0; + $866 = HEAP32[$yymsp>>2]|0; + $867 = (($866) + -16|0); + $868 = (($867) + 4|0); + $869 = HEAP32[$868>>2]|0; + $870 = (_sqlite3ExprListAppend($865,0,$869)|0); + HEAP32[$yygotominor>>2] = $870; + $871 = HEAP32[$yygotominor>>2]|0; + $872 = ($871|0)!=(0|0); + if ($872) { + $873 = HEAP32[$yygotominor>>2]|0; + $874 = (($873) + 4|0); + $875 = HEAP32[$874>>2]|0; + $876 = ($875|0)!=(0|0); + if ($876) { + $877 = HEAP32[$yymsp>>2]|0; + $878 = (($877) + 4|0); + $879 = HEAP32[$878>>2]|0; + $880 = $879&255; + $881 = HEAP32[$yygotominor>>2]|0; + $882 = (($881) + 4|0); + $883 = HEAP32[$882>>2]|0; + $884 = (($883) + 12|0); + HEAP8[$884>>0] = $880; + } + } + break; + } + case 149: case 140: { + HEAP32[$yygotominor>>2] = 0; + $797 = (($yygotominor) + 4|0); + HEAP32[$797>>2] = 0; + break; + } + case 165: { + HEAP32[$yygotominor>>2] = 0; + $885 = (($yygotominor) + 4|0); + HEAP32[$885>>2] = 0; + break; + } + case 172: { + $927 = HEAP32[$pParse>>2]|0; + $928 = HEAP32[$yymsp>>2]|0; + $929 = (($928) + -112|0); + $930 = (($929) + 4|0); + $931 = HEAP32[$930>>2]|0; + _sqlite3WithPush($927,$931,1); + $932 = HEAP32[$pParse>>2]|0; + $933 = HEAP32[$yymsp>>2]|0; + $934 = (($933) + -64|0); + $935 = (($934) + 4|0); + $936 = HEAP32[$935>>2]|0; + $937 = HEAP32[$yymsp>>2]|0; + $938 = (($937) + -48|0); + $939 = (($938) + 4|0); + _sqlite3SrcListIndexedBy($932,$936,$939); + $940 = HEAP32[$pParse>>2]|0; + $941 = HEAP32[$yymsp>>2]|0; + $942 = (($941) + -16|0); + $943 = (($942) + 4|0); + $944 = HEAP32[$943>>2]|0; + _sqlite3ExprListCheckLength($940,$944,16624); + $945 = HEAP32[$pParse>>2]|0; + $946 = HEAP32[$yymsp>>2]|0; + $947 = (($946) + -64|0); + $948 = (($947) + 4|0); + $949 = HEAP32[$948>>2]|0; + $950 = HEAP32[$yymsp>>2]|0; + $951 = (($950) + -16|0); + $952 = (($951) + 4|0); + $953 = HEAP32[$952>>2]|0; + $954 = HEAP32[$yymsp>>2]|0; + $955 = (($954) + 4|0); + $956 = HEAP32[$955>>2]|0; + $957 = HEAP32[$yymsp>>2]|0; + $958 = (($957) + -80|0); + $959 = (($958) + 4|0); + $960 = HEAP8[$959>>0]|0; + $961 = $960&255; + _sqlite3Update($945,$949,$953,$956,$961); + break; + } + case 179: case 153: { + HEAP32[$yygotominor>>2] = 0; + break; + } + case 178: { + HEAP8[$yygotominor>>0] = 5; + break; + } + case 191: case 190: case 185: { + $1055 = HEAP32[$pParse>>2]|0; + $1056 = HEAP32[$yymsp>>2]|0; + $1057 = (($1056) + 2|0); + $1058 = HEAP8[$1057>>0]|0; + $1059 = $1058&255; + $1060 = HEAP32[$yymsp>>2]|0; + $1061 = (($1060) + 4|0); + _spanExpr($yygotominor,$1055,$1059,$1061); + break; + } + case 174: { + $976 = HEAP32[$pParse>>2]|0; + $977 = HEAP32[$yymsp>>2]|0; + $978 = (($977) + 4|0); + $979 = HEAP32[$978>>2]|0; + $980 = (_sqlite3ExprListAppend($976,0,$979)|0); + HEAP32[$yygotominor>>2] = $980; + $981 = HEAP32[$pParse>>2]|0; + $982 = HEAP32[$yygotominor>>2]|0; + $983 = HEAP32[$yymsp>>2]|0; + $984 = (($983) + -32|0); + $985 = (($984) + 4|0); + _sqlite3ExprListSetName($981,$982,$985,1); + break; + } + case 193: { + $1158 = HEAP32[$pParse>>2]|0; + $1159 = HEAP32[$yymsp>>2]|0; + $1160 = (($1159) + -32|0); + $1161 = (($1160) + 4|0); + $1162 = HEAP32[$1161>>2]|0; + $1163 = HEAP32[$yymsp>>2]|0; + $1164 = (($1163) + 4|0); + $1165 = (_sqlite3ExprAddCollateToken($1158,$1162,$1164)|0); + HEAP32[$yygotominor>>2] = $1165; + $1166 = HEAP32[$yymsp>>2]|0; + $1167 = (($1166) + -32|0); + $1168 = (($1167) + 4|0); + $1169 = (($1168) + 4|0); + $1170 = HEAP32[$1169>>2]|0; + $1171 = (($yygotominor) + 4|0); + HEAP32[$1171>>2] = $1170; + $1172 = HEAP32[$yymsp>>2]|0; + $1173 = (($1172) + 4|0); + $1174 = (($1173) + 4|0); + $1175 = HEAP32[$1174>>2]|0; + $1176 = HEAP32[$yymsp>>2]|0; + $1177 = (($1176) + 4|0); + $1178 = HEAP32[$1177>>2]|0; + $1179 = (($1178) + ($1175)|0); + $1180 = (($yygotominor) + 8|0); + HEAP32[$1180>>2] = $1179; + break; + } + case 194: { + $1181 = HEAP32[$pParse>>2]|0; + $1182 = HEAP32[$yymsp>>2]|0; + $1183 = (($1182) + -48|0); + $1184 = (($1183) + 4|0); + $1185 = HEAP32[$1184>>2]|0; + $1186 = HEAP32[$yymsp>>2]|0; + $1187 = (($1186) + -16|0); + $1188 = (($1187) + 4|0); + $1189 = (_sqlite3PExpr($1181,38,$1185,0,$1188)|0); + HEAP32[$yygotominor>>2] = $1189; + $1190 = HEAP32[$yymsp>>2]|0; + $1191 = (($1190) + -80|0); + $1192 = (($1191) + 4|0); + $1193 = HEAP32[$yymsp>>2]|0; + $1194 = (($1193) + 4|0); + _spanSet($yygotominor,$1192,$1194); + break; + } + case 144: { + $806 = HEAP32[$pParse>>2]|0; + $807 = HEAP32[$yymsp>>2]|0; + $808 = (($807) + -16|0); + $809 = (($808) + 4|0); + $810 = (_sqlite3JoinType($806,$809,0,0)|0); + HEAP32[$yygotominor>>2] = $810; + break; + } + case 177: { + $1027 = HEAP32[$yymsp>>2]|0; + $1028 = (($1027) + 4|0); + $1029 = HEAP8[$1028>>0]|0; + HEAP8[$yygotominor>>0] = $1029; + break; + } + case 169: { + $906 = HEAP32[$pParse>>2]|0; + $907 = HEAP32[$yymsp>>2]|0; + $908 = (($907) + -80|0); + $909 = (($908) + 4|0); + $910 = HEAP32[$909>>2]|0; + _sqlite3WithPush($906,$910,1); + $911 = HEAP32[$pParse>>2]|0; + $912 = HEAP32[$yymsp>>2]|0; + $913 = (($912) + -32|0); + $914 = (($913) + 4|0); + $915 = HEAP32[$914>>2]|0; + $916 = HEAP32[$yymsp>>2]|0; + $917 = (($916) + -16|0); + $918 = (($917) + 4|0); + _sqlite3SrcListIndexedBy($911,$915,$918); + $919 = HEAP32[$pParse>>2]|0; + $920 = HEAP32[$yymsp>>2]|0; + $921 = (($920) + -32|0); + $922 = (($921) + 4|0); + $923 = HEAP32[$922>>2]|0; + $924 = HEAP32[$yymsp>>2]|0; + $925 = (($924) + 4|0); + $926 = HEAP32[$925>>2]|0; + _sqlite3DeleteFrom($919,$923,$926); + break; + } + case 142: { + $798 = HEAP32[$pParse>>2]|0; + $799 = HEAP32[$798>>2]|0; + $800 = HEAP32[$yymsp>>2]|0; + $801 = (($800) + -16|0); + $802 = (($801) + 4|0); + $803 = HEAP32[$yymsp>>2]|0; + $804 = (($803) + 4|0); + $805 = (_sqlite3SrcListAppend($799,0,$802,$804)|0); + HEAP32[$yygotominor>>2] = $805; + break; + } + case 176: { + $1008 = HEAP32[$pParse>>2]|0; + $1009 = HEAP32[$yymsp>>2]|0; + $1010 = (($1009) + -96|0); + $1011 = (($1010) + 4|0); + $1012 = HEAP32[$1011>>2]|0; + _sqlite3WithPush($1008,$1012,1); + $1013 = HEAP32[$pParse>>2]|0; + $1014 = HEAP32[$yymsp>>2]|0; + $1015 = (($1014) + -48|0); + $1016 = (($1015) + 4|0); + $1017 = HEAP32[$1016>>2]|0; + $1018 = HEAP32[$yymsp>>2]|0; + $1019 = (($1018) + -32|0); + $1020 = (($1019) + 4|0); + $1021 = HEAP32[$1020>>2]|0; + $1022 = HEAP32[$yymsp>>2]|0; + $1023 = (($1022) + -80|0); + $1024 = (($1023) + 4|0); + $1025 = HEAP8[$1024>>0]|0; + $1026 = $1025&255; + _sqlite3Insert($1013,$1017,0,$1021,$1026); + break; + } + case 235: case 162: case 155: { + $838 = HEAP32[$yymsp>>2]|0; + $839 = (($838) + 4|0); + $840 = HEAP32[$839>>2]|0; + HEAP32[$yygotominor>>2] = $840; + break; + } + case 166: { + $886 = HEAP32[$yymsp>>2]|0; + $887 = (($886) + 4|0); + $888 = HEAP32[$887>>2]|0; + HEAP32[$yygotominor>>2] = $888; + $889 = (($yygotominor) + 4|0); + HEAP32[$889>>2] = 0; + break; + } + case 192: { + $1110 = HEAP32[$yymsp>>2]|0; + $1111 = (($1110) + 4|0); + $1112 = (($1111) + 4|0); + $1113 = HEAP32[$1112>>2]|0; + $1114 = ($1113>>>0)>=(2); + do { + if ($1114) { + $1115 = HEAP32[$yymsp>>2]|0; + $1116 = (($1115) + 4|0); + $1117 = HEAP32[$1116>>2]|0; + $1118 = HEAP8[$1117>>0]|0; + $1119 = $1118 << 24 >> 24; + $1120 = ($1119|0)==(35); + if ($1120) { + $1121 = HEAP32[$yymsp>>2]|0; + $1122 = (($1121) + 4|0); + $1123 = HEAP32[$1122>>2]|0; + $1124 = (($1123) + 1|0); + $1125 = HEAP8[$1124>>0]|0; + $1126 = $1125&255; + $1127 = (136 + ($1126)|0); + $1128 = HEAP8[$1127>>0]|0; + $1129 = $1128&255; + $1130 = $1129 & 4; + $1131 = ($1130|0)!=(0); + if ($1131) { + $1132 = HEAP32[$pParse>>2]|0; + $1133 = (($1132) + 18|0); + $1134 = HEAP8[$1133>>0]|0; + $1135 = $1134&255; + $1136 = ($1135|0)==(0); + $1137 = HEAP32[$pParse>>2]|0; + $1138 = HEAP32[$yymsp>>2]|0; + $1139 = (($1138) + 4|0); + if ($1136) { + HEAP32[$vararg_buffer14>>2] = $1139; + _sqlite3ErrorMsg($1137,16504,$vararg_buffer14); + HEAP32[$yygotominor>>2] = 0; + break; + } + $1140 = (_sqlite3PExpr($1137,159,0,0,$1139)|0); + HEAP32[$yygotominor>>2] = $1140; + $1141 = HEAP32[$yygotominor>>2]|0; + $1142 = ($1141|0)!=(0|0); + if ($1142) { + $1143 = HEAP32[$yymsp>>2]|0; + $1144 = (($1143) + 4|0); + $1145 = HEAP32[$1144>>2]|0; + $1146 = (($1145) + 1|0); + $1147 = HEAP32[$yygotominor>>2]|0; + $1148 = (($1147) + 28|0); + (_sqlite3GetInt32($1146,$1148)|0); + } + } else { + label = 170; + } + } else { + label = 170; + } + } else { + label = 170; + } + } while(0); + if ((label|0) == 170) { + $1149 = HEAP32[$pParse>>2]|0; + $1150 = HEAP32[$yymsp>>2]|0; + $1151 = (($1150) + 4|0); + _spanExpr($yygotominor,$1149,135,$1151); + $1152 = HEAP32[$pParse>>2]|0; + $1153 = HEAP32[$yygotominor>>2]|0; + _sqlite3ExprAssignVarNumber($1152,$1153); + } + $1154 = HEAP32[$yymsp>>2]|0; + $1155 = (($1154) + 4|0); + $1156 = HEAP32[$yymsp>>2]|0; + $1157 = (($1156) + 4|0); + _spanSet($yygotominor,$1155,$1157); + break; + } + case 173: { + $962 = HEAP32[$pParse>>2]|0; + $963 = HEAP32[$yymsp>>2]|0; + $964 = (($963) + -64|0); + $965 = (($964) + 4|0); + $966 = HEAP32[$965>>2]|0; + $967 = HEAP32[$yymsp>>2]|0; + $968 = (($967) + 4|0); + $969 = HEAP32[$968>>2]|0; + $970 = (_sqlite3ExprListAppend($962,$966,$969)|0); + HEAP32[$yygotominor>>2] = $970; + $971 = HEAP32[$pParse>>2]|0; + $972 = HEAP32[$yygotominor>>2]|0; + $973 = HEAP32[$yymsp>>2]|0; + $974 = (($973) + -32|0); + $975 = (($974) + 4|0); + _sqlite3ExprListSetName($971,$972,$975,1); + break; + } + case 195: { + $1195 = HEAP32[$yymsp>>2]|0; + $1196 = (($1195) + -16|0); + $1197 = (($1196) + 4|0); + $1198 = HEAP32[$1197>>2]|0; + $1199 = ($1198|0)!=(0|0); + if ($1199) { + $1200 = HEAP32[$yymsp>>2]|0; + $1201 = (($1200) + -16|0); + $1202 = (($1201) + 4|0); + $1203 = HEAP32[$1202>>2]|0; + $1204 = HEAP32[$1203>>2]|0; + $1205 = HEAP32[$pParse>>2]|0; + $1206 = HEAP32[$1205>>2]|0; + $1207 = (($1206) + 88|0); + $1208 = (($1207) + 24|0); + $1209 = HEAP32[$1208>>2]|0; + $1210 = ($1204|0)>($1209|0); + if ($1210) { + $1211 = HEAP32[$pParse>>2]|0; + $1212 = HEAP32[$yymsp>>2]|0; + $1213 = (($1212) + -64|0); + $1214 = (($1213) + 4|0); + HEAP32[$vararg_buffer14>>2] = $1214; + _sqlite3ErrorMsg($1211,16640,$vararg_buffer14); + } + } + $1215 = HEAP32[$pParse>>2]|0; + $1216 = HEAP32[$yymsp>>2]|0; + $1217 = (($1216) + -16|0); + $1218 = (($1217) + 4|0); + $1219 = HEAP32[$1218>>2]|0; + $1220 = HEAP32[$yymsp>>2]|0; + $1221 = (($1220) + -64|0); + $1222 = (($1221) + 4|0); + $1223 = (_sqlite3ExprFunction($1215,$1219,$1222)|0); + HEAP32[$yygotominor>>2] = $1223; + $1224 = HEAP32[$yymsp>>2]|0; + $1225 = (($1224) + -64|0); + $1226 = (($1225) + 4|0); + $1227 = HEAP32[$yymsp>>2]|0; + $1228 = (($1227) + 4|0); + _spanSet($yygotominor,$1226,$1228); + $1229 = HEAP32[$yymsp>>2]|0; + $1230 = (($1229) + -32|0); + $1231 = (($1230) + 4|0); + $1232 = HEAP16[$1231>>1]|0; + $1233 = $1232&65535; + $1234 = ($1233|0)!=(0); + if ($1234) { + $1235 = HEAP32[$yygotominor>>2]|0; + $1236 = ($1235|0)!=(0|0); + if ($1236) { + $1237 = HEAP32[$yygotominor>>2]|0; + $1238 = (($1237) + 4|0); + $1239 = HEAP32[$1238>>2]|0; + $1240 = $1239 | 16; + HEAP32[$1238>>2] = $1240; + } + } + break; + } + case 182: { + $1039 = HEAP32[$pParse>>2]|0; + $1040 = HEAP32[$1039>>2]|0; + $1041 = HEAP32[$yymsp>>2]|0; + $1042 = (($1041) + 4|0); + $1043 = (_sqlite3IdListAppend($1040,0,$1042)|0); + HEAP32[$yygotominor>>2] = $1043; + break; + } + case 234: case 232: case 170: case 163: case 148: { + HEAP32[$yygotominor>>2] = 0; + break; + } + case 151: { + HEAP32[$yygotominor>>2] = 0; + $833 = (($yygotominor) + 4|0); + HEAP32[$833>>2] = 1; + break; + } + case 180: case 152: { + $834 = HEAP32[$yymsp>>2]|0; + $835 = (($834) + -16|0); + $836 = (($835) + 4|0); + $837 = HEAP32[$836>>2]|0; + HEAP32[$yygotominor>>2] = $837; + break; + } + case 168: { + $898 = HEAP32[$yymsp>>2]|0; + $899 = (($898) + -32|0); + $900 = (($899) + 4|0); + $901 = HEAP32[$900>>2]|0; + $902 = (($yygotominor) + 4|0); + HEAP32[$902>>2] = $901; + $903 = HEAP32[$yymsp>>2]|0; + $904 = (($903) + 4|0); + $905 = HEAP32[$904>>2]|0; + HEAP32[$yygotominor>>2] = $905; + break; + } + case 233: case 231: case 171: case 164: case 147: { + $830 = HEAP32[$yymsp>>2]|0; + $831 = (($830) + 4|0); + $832 = HEAP32[$831>>2]|0; + HEAP32[$yygotominor>>2] = $832; + break; + } + case 167: { + $890 = HEAP32[$yymsp>>2]|0; + $891 = (($890) + -32|0); + $892 = (($891) + 4|0); + $893 = HEAP32[$892>>2]|0; + HEAP32[$yygotominor>>2] = $893; + $894 = HEAP32[$yymsp>>2]|0; + $895 = (($894) + 4|0); + $896 = HEAP32[$895>>2]|0; + $897 = (($yygotominor) + 4|0); + HEAP32[$897>>2] = $896; + break; + } + case 183: { + $1044 = HEAP32[$yymsp>>2]|0; + $1045 = (($1044) + 4|0); + ;HEAP32[$yygotominor+0>>2]=HEAP32[$1045+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$1045+4>>2]|0;HEAP32[$yygotominor+8>>2]=HEAP32[$1045+8>>2]|0; + break; + } + case 181: { + $1030 = HEAP32[$pParse>>2]|0; + $1031 = HEAP32[$1030>>2]|0; + $1032 = HEAP32[$yymsp>>2]|0; + $1033 = (($1032) + -32|0); + $1034 = (($1033) + 4|0); + $1035 = HEAP32[$1034>>2]|0; + $1036 = HEAP32[$yymsp>>2]|0; + $1037 = (($1036) + 4|0); + $1038 = (_sqlite3IdListAppend($1031,$1035,$1037)|0); + HEAP32[$yygotominor>>2] = $1038; + break; + } + case 156: { + $841 = HEAP32[$pParse>>2]|0; + $842 = HEAP32[$yymsp>>2]|0; + $843 = (($842) + -48|0); + $844 = (($843) + 4|0); + $845 = HEAP32[$844>>2]|0; + $846 = HEAP32[$yymsp>>2]|0; + $847 = (($846) + -16|0); + $848 = (($847) + 4|0); + $849 = HEAP32[$848>>2]|0; + $850 = (_sqlite3ExprListAppend($841,$845,$849)|0); + HEAP32[$yygotominor>>2] = $850; + $851 = HEAP32[$yygotominor>>2]|0; + $852 = ($851|0)!=(0|0); + if ($852) { + $853 = HEAP32[$yymsp>>2]|0; + $854 = (($853) + 4|0); + $855 = HEAP32[$854>>2]|0; + $856 = $855&255; + $857 = HEAP32[$yygotominor>>2]|0; + $858 = HEAP32[$857>>2]|0; + $859 = (($858) - 1)|0; + $860 = HEAP32[$yygotominor>>2]|0; + $861 = (($860) + 4|0); + $862 = HEAP32[$861>>2]|0; + $863 = (($862) + (($859*20)|0)|0); + $864 = (($863) + 12|0); + HEAP8[$864>>0] = $856; + } + break; + } + case 159: { + HEAP32[$yygotominor>>2] = 1; + break; + } + case 175: { + $986 = HEAP32[$pParse>>2]|0; + $987 = HEAP32[$yymsp>>2]|0; + $988 = (($987) + -80|0); + $989 = (($988) + 4|0); + $990 = HEAP32[$989>>2]|0; + _sqlite3WithPush($986,$990,1); + $991 = HEAP32[$pParse>>2]|0; + $992 = HEAP32[$yymsp>>2]|0; + $993 = (($992) + -32|0); + $994 = (($993) + 4|0); + $995 = HEAP32[$994>>2]|0; + $996 = HEAP32[$yymsp>>2]|0; + $997 = (($996) + 4|0); + $998 = HEAP32[$997>>2]|0; + $999 = HEAP32[$yymsp>>2]|0; + $1000 = (($999) + -16|0); + $1001 = (($1000) + 4|0); + $1002 = HEAP32[$1001>>2]|0; + $1003 = HEAP32[$yymsp>>2]|0; + $1004 = (($1003) + -64|0); + $1005 = (($1004) + 4|0); + $1006 = HEAP8[$1005>>0]|0; + $1007 = $1006&255; + _sqlite3Insert($991,$995,$998,$1002,$1007); + break; + } + case 146: { + $819 = HEAP32[$pParse>>2]|0; + $820 = HEAP32[$yymsp>>2]|0; + $821 = (($820) + -48|0); + $822 = (($821) + 4|0); + $823 = HEAP32[$yymsp>>2]|0; + $824 = (($823) + -32|0); + $825 = (($824) + 4|0); + $826 = HEAP32[$yymsp>>2]|0; + $827 = (($826) + -16|0); + $828 = (($827) + 4|0); + $829 = (_sqlite3JoinType($819,$822,$825,$828)|0); + HEAP32[$yygotominor>>2] = $829; + break; + } + case 196: { + $1241 = HEAP32[$pParse>>2]|0; + $1242 = HEAP32[$yymsp>>2]|0; + $1243 = (($1242) + -48|0); + $1244 = (($1243) + 4|0); + $1245 = (_sqlite3ExprFunction($1241,0,$1244)|0); + HEAP32[$yygotominor>>2] = $1245; + $1246 = HEAP32[$yymsp>>2]|0; + $1247 = (($1246) + -48|0); + $1248 = (($1247) + 4|0); + $1249 = HEAP32[$yymsp>>2]|0; + $1250 = (($1249) + 4|0); + _spanSet($yygotominor,$1248,$1250); + break; + } + case 215: case 214: { + $1409 = HEAP32[$pParse>>2]|0; + $1410 = HEAP32[$yymsp>>2]|0; + $1411 = (($1410) + -16|0); + $1412 = (($1411) + 2|0); + $1413 = HEAP8[$1412>>0]|0; + $1414 = $1413&255; + $1415 = HEAP32[$yymsp>>2]|0; + $1416 = (($1415) + 4|0); + $1417 = HEAP32[$yymsp>>2]|0; + $1418 = (($1417) + -16|0); + $1419 = (($1418) + 4|0); + _spanUnaryPrefix($yygotominor,$1409,$1414,$1416,$1419); + break; + } + case 210: { + $1371 = HEAP32[$pParse>>2]|0; + $1372 = HEAP32[$yymsp>>2]|0; + $1373 = (($1372) + 2|0); + $1374 = HEAP8[$1373>>0]|0; + $1375 = $1374&255; + $1376 = HEAP32[$yymsp>>2]|0; + $1377 = (($1376) + -16|0); + $1378 = (($1377) + 4|0); + $1379 = HEAP32[$yymsp>>2]|0; + $1380 = (($1379) + 4|0); + _spanUnaryPostfix($yygotominor,$1371,$1375,$1378,$1380); + break; + } + case 208: { + $1276 = HEAP32[$pParse>>2]|0; + $1277 = HEAP32[$yymsp>>2]|0; + $1278 = (($1277) + 4|0); + $1279 = HEAP32[$1278>>2]|0; + $1280 = (_sqlite3ExprListAppend($1276,0,$1279)|0); + HEAP32[$pList>>2] = $1280; + $1281 = HEAP32[$pParse>>2]|0; + $1282 = HEAP32[$pList>>2]|0; + $1283 = HEAP32[$yymsp>>2]|0; + $1284 = (($1283) + -32|0); + $1285 = (($1284) + 4|0); + $1286 = HEAP32[$1285>>2]|0; + $1287 = (_sqlite3ExprListAppend($1281,$1282,$1286)|0); + HEAP32[$pList>>2] = $1287; + $1288 = HEAP32[$pParse>>2]|0; + $1289 = HEAP32[$pList>>2]|0; + $1290 = HEAP32[$yymsp>>2]|0; + $1291 = (($1290) + -16|0); + $1292 = (($1291) + 4|0); + $1293 = (_sqlite3ExprFunction($1288,$1289,$1292)|0); + HEAP32[$yygotominor>>2] = $1293; + $1294 = HEAP32[$yymsp>>2]|0; + $1295 = (($1294) + -16|0); + $1296 = (($1295) + 4|0); + $1297 = (($1296) + 8|0); + $1298 = HEAP32[$1297>>2]|0; + $1299 = ($1298|0)!=(0); + if ($1299) { + $1300 = HEAP32[$pParse>>2]|0; + $1301 = HEAP32[$yygotominor>>2]|0; + $1302 = (_sqlite3PExpr($1300,19,$1301,0,0)|0); + HEAP32[$yygotominor>>2] = $1302; + } + $1303 = HEAP32[$yymsp>>2]|0; + $1304 = (($1303) + -32|0); + $1305 = (($1304) + 4|0); + $1306 = (($1305) + 4|0); + $1307 = HEAP32[$1306>>2]|0; + $1308 = (($yygotominor) + 4|0); + HEAP32[$1308>>2] = $1307; + $1309 = HEAP32[$yymsp>>2]|0; + $1310 = (($1309) + 4|0); + $1311 = (($1310) + 8|0); + $1312 = HEAP32[$1311>>2]|0; + $1313 = (($yygotominor) + 8|0); + HEAP32[$1313>>2] = $1312; + $1314 = HEAP32[$yygotominor>>2]|0; + $1315 = ($1314|0)!=(0|0); + if ($1315) { + $1316 = HEAP32[$yygotominor>>2]|0; + $1317 = (($1316) + 4|0); + $1318 = HEAP32[$1317>>2]|0; + $1319 = $1318 | 128; + HEAP32[$1317>>2] = $1319; + } + break; + } + case 220: { + $1432 = HEAP32[$pParse>>2]|0; + $1433 = HEAP32[$yymsp>>2]|0; + $1434 = (($1433) + -32|0); + $1435 = (($1434) + 4|0); + $1436 = HEAP32[$1435>>2]|0; + $1437 = (_sqlite3ExprListAppend($1432,0,$1436)|0); + HEAP32[$pList7>>2] = $1437; + $1438 = HEAP32[$pParse>>2]|0; + $1439 = HEAP32[$pList7>>2]|0; + $1440 = HEAP32[$yymsp>>2]|0; + $1441 = (($1440) + 4|0); + $1442 = HEAP32[$1441>>2]|0; + $1443 = (_sqlite3ExprListAppend($1438,$1439,$1442)|0); + HEAP32[$pList7>>2] = $1443; + $1444 = HEAP32[$pParse>>2]|0; + $1445 = HEAP32[$yymsp>>2]|0; + $1446 = (($1445) + -64|0); + $1447 = (($1446) + 4|0); + $1448 = HEAP32[$1447>>2]|0; + $1449 = (_sqlite3PExpr($1444,74,$1448,0,0)|0); + HEAP32[$yygotominor>>2] = $1449; + $1450 = HEAP32[$yygotominor>>2]|0; + $1451 = ($1450|0)!=(0|0); + if ($1451) { + $1452 = HEAP32[$pList7>>2]|0; + $1453 = HEAP32[$yygotominor>>2]|0; + $1454 = (($1453) + 20|0); + HEAP32[$1454>>2] = $1452; + } else { + $1455 = HEAP32[$pParse>>2]|0; + $1456 = HEAP32[$1455>>2]|0; + $1457 = HEAP32[$pList7>>2]|0; + _sqlite3ExprListDelete($1456,$1457); + } + $1458 = HEAP32[$yymsp>>2]|0; + $1459 = (($1458) + -48|0); + $1460 = (($1459) + 4|0); + $1461 = HEAP32[$1460>>2]|0; + $1462 = ($1461|0)!=(0); + if ($1462) { + $1463 = HEAP32[$pParse>>2]|0; + $1464 = HEAP32[$yygotominor>>2]|0; + $1465 = (_sqlite3PExpr($1463,19,$1464,0,0)|0); + HEAP32[$yygotominor>>2] = $1465; + } + $1466 = HEAP32[$yymsp>>2]|0; + $1467 = (($1466) + -64|0); + $1468 = (($1467) + 4|0); + $1469 = (($1468) + 4|0); + $1470 = HEAP32[$1469>>2]|0; + $1471 = (($yygotominor) + 4|0); + HEAP32[$1471>>2] = $1470; + $1472 = HEAP32[$yymsp>>2]|0; + $1473 = (($1472) + 4|0); + $1474 = (($1473) + 8|0); + $1475 = HEAP32[$1474>>2]|0; + $1476 = (($yygotominor) + 8|0); + HEAP32[$1476>>2] = $1475; + break; + } + case 225: { + $1624 = HEAP32[$pParse>>2]|0; + $1625 = HEAP32[$yymsp>>2]|0; + $1626 = (($1625) + -64|0); + $1627 = (($1626) + 4|0); + $1628 = HEAP32[$1627>>2]|0; + $1629 = (_sqlite3PExpr($1624,75,$1628,0,0)|0); + HEAP32[$yygotominor>>2] = $1629; + $1630 = HEAP32[$yygotominor>>2]|0; + $1631 = ($1630|0)!=(0|0); + if ($1631) { + $1632 = HEAP32[$yymsp>>2]|0; + $1633 = (($1632) + -16|0); + $1634 = (($1633) + 4|0); + $1635 = HEAP32[$1634>>2]|0; + $1636 = HEAP32[$yygotominor>>2]|0; + $1637 = (($1636) + 20|0); + HEAP32[$1637>>2] = $1635; + $1638 = HEAP32[$yygotominor>>2]|0; + $1639 = (($1638) + 4|0); + $1640 = HEAP32[$1639>>2]|0; + $1641 = $1640 | 2048; + HEAP32[$1639>>2] = $1641; + $1642 = HEAP32[$pParse>>2]|0; + $1643 = HEAP32[$yygotominor>>2]|0; + _sqlite3ExprSetHeight($1642,$1643); + } else { + $1644 = HEAP32[$pParse>>2]|0; + $1645 = HEAP32[$1644>>2]|0; + $1646 = HEAP32[$yymsp>>2]|0; + $1647 = (($1646) + -16|0); + $1648 = (($1647) + 4|0); + $1649 = HEAP32[$1648>>2]|0; + _sqlite3SelectDelete($1645,$1649); + } + $1650 = HEAP32[$yymsp>>2]|0; + $1651 = (($1650) + -48|0); + $1652 = (($1651) + 4|0); + $1653 = HEAP32[$1652>>2]|0; + $1654 = ($1653|0)!=(0); + if ($1654) { + $1655 = HEAP32[$pParse>>2]|0; + $1656 = HEAP32[$yygotominor>>2]|0; + $1657 = (_sqlite3PExpr($1655,19,$1656,0,0)|0); + HEAP32[$yygotominor>>2] = $1657; + } + $1658 = HEAP32[$yymsp>>2]|0; + $1659 = (($1658) + -64|0); + $1660 = (($1659) + 4|0); + $1661 = (($1660) + 4|0); + $1662 = HEAP32[$1661>>2]|0; + $1663 = (($yygotominor) + 4|0); + HEAP32[$1663>>2] = $1662; + $1664 = HEAP32[$yymsp>>2]|0; + $1665 = (($1664) + 4|0); + $1666 = (($1665) + 4|0); + $1667 = HEAP32[$1666>>2]|0; + $1668 = HEAP32[$yymsp>>2]|0; + $1669 = (($1668) + 4|0); + $1670 = HEAP32[$1669>>2]|0; + $1671 = (($1670) + ($1667)|0); + $1672 = (($yygotominor) + 8|0); + HEAP32[$1672>>2] = $1671; + break; + } + case 228: { + $1775 = HEAP32[$pParse>>2]|0; + $1776 = HEAP32[$yymsp>>2]|0; + $1777 = (($1776) + -48|0); + $1778 = (($1777) + 4|0); + $1779 = HEAP32[$1778>>2]|0; + $1780 = (_sqlite3PExpr($1775,136,$1779,0,0)|0); + HEAP32[$yygotominor>>2] = $1780; + $1781 = HEAP32[$yygotominor>>2]|0; + $1782 = ($1781|0)!=(0|0); + if ($1782) { + $1783 = HEAP32[$yymsp>>2]|0; + $1784 = (($1783) + -16|0); + $1785 = (($1784) + 4|0); + $1786 = HEAP32[$1785>>2]|0; + $1787 = ($1786|0)!=(0|0); + if ($1787) { + $1788 = HEAP32[$pParse>>2]|0; + $1789 = HEAP32[$yymsp>>2]|0; + $1790 = (($1789) + -32|0); + $1791 = (($1790) + 4|0); + $1792 = HEAP32[$1791>>2]|0; + $1793 = HEAP32[$yymsp>>2]|0; + $1794 = (($1793) + -16|0); + $1795 = (($1794) + 4|0); + $1796 = HEAP32[$1795>>2]|0; + $1797 = (_sqlite3ExprListAppend($1788,$1792,$1796)|0); + $1804 = $1797; + } else { + $1798 = HEAP32[$yymsp>>2]|0; + $1799 = (($1798) + -32|0); + $1800 = (($1799) + 4|0); + $1801 = HEAP32[$1800>>2]|0; + $1804 = $1801; + } + $1802 = HEAP32[$yygotominor>>2]|0; + $1803 = (($1802) + 20|0); + HEAP32[$1803>>2] = $1804; + $1805 = HEAP32[$pParse>>2]|0; + $1806 = HEAP32[$yygotominor>>2]|0; + _sqlite3ExprSetHeight($1805,$1806); + } else { + $1807 = HEAP32[$pParse>>2]|0; + $1808 = HEAP32[$1807>>2]|0; + $1809 = HEAP32[$yymsp>>2]|0; + $1810 = (($1809) + -32|0); + $1811 = (($1810) + 4|0); + $1812 = HEAP32[$1811>>2]|0; + _sqlite3ExprListDelete($1808,$1812); + $1813 = HEAP32[$pParse>>2]|0; + $1814 = HEAP32[$1813>>2]|0; + $1815 = HEAP32[$yymsp>>2]|0; + $1816 = (($1815) + -16|0); + $1817 = (($1816) + 4|0); + $1818 = HEAP32[$1817>>2]|0; + _sqlite3ExprDelete($1814,$1818); + } + $1819 = HEAP32[$yymsp>>2]|0; + $1820 = (($1819) + -64|0); + $1821 = (($1820) + 4|0); + $1822 = HEAP32[$1821>>2]|0; + $1823 = (($yygotominor) + 4|0); + HEAP32[$1823>>2] = $1822; + $1824 = HEAP32[$yymsp>>2]|0; + $1825 = (($1824) + 4|0); + $1826 = (($1825) + 4|0); + $1827 = HEAP32[$1826>>2]|0; + $1828 = HEAP32[$yymsp>>2]|0; + $1829 = (($1828) + 4|0); + $1830 = HEAP32[$1829>>2]|0; + $1831 = (($1830) + ($1827)|0); + $1832 = (($yygotominor) + 8|0); + HEAP32[$1832>>2] = $1831; + break; + } + case 212: { + $1387 = HEAP32[$pParse>>2]|0; + $1388 = HEAP32[$yymsp>>2]|0; + $1389 = (($1388) + -32|0); + $1390 = (($1389) + 4|0); + $1391 = HEAP32[$yymsp>>2]|0; + $1392 = (($1391) + 4|0); + _spanBinaryExpr($yygotominor,$1387,73,$1390,$1392); + $1393 = HEAP32[$pParse>>2]|0; + $1394 = HEAP32[$yymsp>>2]|0; + $1395 = (($1394) + 4|0); + $1396 = HEAP32[$1395>>2]|0; + $1397 = HEAP32[$yygotominor>>2]|0; + _binaryToUnaryIfNull($1393,$1396,$1397,76); + break; + } + case 211: { + $1381 = HEAP32[$pParse>>2]|0; + $1382 = HEAP32[$yymsp>>2]|0; + $1383 = (($1382) + -32|0); + $1384 = (($1383) + 4|0); + $1385 = HEAP32[$yymsp>>2]|0; + $1386 = (($1385) + 4|0); + _spanUnaryPostfix($yygotominor,$1381,77,$1384,$1386); + break; + } + case 226: { + $1673 = HEAP32[$pParse>>2]|0; + $1674 = HEAP32[$1673>>2]|0; + $1675 = HEAP32[$yymsp>>2]|0; + $1676 = (($1675) + -16|0); + $1677 = (($1676) + 4|0); + $1678 = HEAP32[$yymsp>>2]|0; + $1679 = (($1678) + 4|0); + $1680 = (_sqlite3SrcListAppend($1674,0,$1677,$1679)|0); + HEAP32[$pSrc>>2] = $1680; + $1681 = HEAP32[$pParse>>2]|0; + $1682 = HEAP32[$yymsp>>2]|0; + $1683 = (($1682) + -48|0); + $1684 = (($1683) + 4|0); + $1685 = HEAP32[$1684>>2]|0; + $1686 = (_sqlite3PExpr($1681,75,$1685,0,0)|0); + HEAP32[$yygotominor>>2] = $1686; + $1687 = HEAP32[$yygotominor>>2]|0; + $1688 = ($1687|0)!=(0|0); + $1689 = HEAP32[$pParse>>2]|0; + if ($1688) { + $1690 = HEAP32[$pSrc>>2]|0; + $1691 = (_sqlite3SelectNew($1689,0,$1690,0,0,0,0,0,0,0)|0); + $1692 = HEAP32[$yygotominor>>2]|0; + $1693 = (($1692) + 20|0); + HEAP32[$1693>>2] = $1691; + $1694 = HEAP32[$yygotominor>>2]|0; + $1695 = (($1694) + 4|0); + $1696 = HEAP32[$1695>>2]|0; + $1697 = $1696 | 2048; + HEAP32[$1695>>2] = $1697; + $1698 = HEAP32[$pParse>>2]|0; + $1699 = HEAP32[$yygotominor>>2]|0; + _sqlite3ExprSetHeight($1698,$1699); + } else { + $1700 = HEAP32[$1689>>2]|0; + $1701 = HEAP32[$pSrc>>2]|0; + _sqlite3SrcListDelete($1700,$1701); + } + $1702 = HEAP32[$yymsp>>2]|0; + $1703 = (($1702) + -32|0); + $1704 = (($1703) + 4|0); + $1705 = HEAP32[$1704>>2]|0; + $1706 = ($1705|0)!=(0); + if ($1706) { + $1707 = HEAP32[$pParse>>2]|0; + $1708 = HEAP32[$yygotominor>>2]|0; + $1709 = (_sqlite3PExpr($1707,19,$1708,0,0)|0); + HEAP32[$yygotominor>>2] = $1709; + } + $1710 = HEAP32[$yymsp>>2]|0; + $1711 = (($1710) + -48|0); + $1712 = (($1711) + 4|0); + $1713 = (($1712) + 4|0); + $1714 = HEAP32[$1713>>2]|0; + $1715 = (($yygotominor) + 4|0); + HEAP32[$1715>>2] = $1714; + $1716 = HEAP32[$yymsp>>2]|0; + $1717 = (($1716) + 4|0); + $1718 = HEAP32[$1717>>2]|0; + $1719 = ($1718|0)!=(0|0); + $1720 = HEAP32[$yymsp>>2]|0; + if ($1719) { + $1721 = (($1720) + 4|0); + $1722 = (($1721) + 4|0); + $1723 = HEAP32[$1722>>2]|0; + $1724 = HEAP32[$yymsp>>2]|0; + $1725 = (($1724) + 4|0); + $1726 = HEAP32[$1725>>2]|0; + $1727 = (($1726) + ($1723)|0); + $1738 = $1727; + } else { + $1728 = (($1720) + -16|0); + $1729 = (($1728) + 4|0); + $1730 = (($1729) + 4|0); + $1731 = HEAP32[$1730>>2]|0; + $1732 = HEAP32[$yymsp>>2]|0; + $1733 = (($1732) + -16|0); + $1734 = (($1733) + 4|0); + $1735 = HEAP32[$1734>>2]|0; + $1736 = (($1735) + ($1731)|0); + $1738 = $1736; + } + $1737 = (($yygotominor) + 8|0); + HEAP32[$1737>>2] = $1738; + break; + } + case 216: { + $1420 = HEAP32[$pParse>>2]|0; + $1421 = HEAP32[$yymsp>>2]|0; + $1422 = (($1421) + 4|0); + $1423 = HEAP32[$yymsp>>2]|0; + $1424 = (($1423) + -16|0); + $1425 = (($1424) + 4|0); + _spanUnaryPrefix($yygotominor,$1420,157,$1422,$1425); + break; + } + case 224: { + $1588 = HEAP32[$pParse>>2]|0; + $1589 = (_sqlite3PExpr($1588,119,0,0,0)|0); + HEAP32[$yygotominor>>2] = $1589; + $1590 = HEAP32[$yygotominor>>2]|0; + $1591 = ($1590|0)!=(0|0); + if ($1591) { + $1592 = HEAP32[$yymsp>>2]|0; + $1593 = (($1592) + -16|0); + $1594 = (($1593) + 4|0); + $1595 = HEAP32[$1594>>2]|0; + $1596 = HEAP32[$yygotominor>>2]|0; + $1597 = (($1596) + 20|0); + HEAP32[$1597>>2] = $1595; + $1598 = HEAP32[$yygotominor>>2]|0; + $1599 = (($1598) + 4|0); + $1600 = HEAP32[$1599>>2]|0; + $1601 = $1600 | 2048; + HEAP32[$1599>>2] = $1601; + $1602 = HEAP32[$pParse>>2]|0; + $1603 = HEAP32[$yygotominor>>2]|0; + _sqlite3ExprSetHeight($1602,$1603); + } else { + $1604 = HEAP32[$pParse>>2]|0; + $1605 = HEAP32[$1604>>2]|0; + $1606 = HEAP32[$yymsp>>2]|0; + $1607 = (($1606) + -16|0); + $1608 = (($1607) + 4|0); + $1609 = HEAP32[$1608>>2]|0; + _sqlite3SelectDelete($1605,$1609); + } + $1610 = HEAP32[$yymsp>>2]|0; + $1611 = (($1610) + -32|0); + $1612 = (($1611) + 4|0); + $1613 = HEAP32[$1612>>2]|0; + $1614 = (($yygotominor) + 4|0); + HEAP32[$1614>>2] = $1613; + $1615 = HEAP32[$yymsp>>2]|0; + $1616 = (($1615) + 4|0); + $1617 = (($1616) + 4|0); + $1618 = HEAP32[$1617>>2]|0; + $1619 = HEAP32[$yymsp>>2]|0; + $1620 = (($1619) + 4|0); + $1621 = HEAP32[$1620>>2]|0; + $1622 = (($1621) + ($1618)|0); + $1623 = (($yygotominor) + 8|0); + HEAP32[$1623>>2] = $1622; + break; + } + case 207: { + $1273 = HEAP32[$yymsp>>2]|0; + $1274 = (($1273) + 4|0); + ;HEAP32[$yygotominor+0>>2]=HEAP32[$1274+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$1274+4>>2]|0; + $1275 = (($yygotominor) + 8|0); + HEAP32[$1275>>2] = 1; + break; + } + case 213: { + $1398 = HEAP32[$pParse>>2]|0; + $1399 = HEAP32[$yymsp>>2]|0; + $1400 = (($1399) + -48|0); + $1401 = (($1400) + 4|0); + $1402 = HEAP32[$yymsp>>2]|0; + $1403 = (($1402) + 4|0); + _spanBinaryExpr($yygotominor,$1398,148,$1401,$1403); + $1404 = HEAP32[$pParse>>2]|0; + $1405 = HEAP32[$yymsp>>2]|0; + $1406 = (($1405) + 4|0); + $1407 = HEAP32[$1406>>2]|0; + $1408 = HEAP32[$yygotominor>>2]|0; + _binaryToUnaryIfNull($1404,$1407,$1408,77); + break; + } + case 217: { + $1426 = HEAP32[$pParse>>2]|0; + $1427 = HEAP32[$yymsp>>2]|0; + $1428 = (($1427) + 4|0); + $1429 = HEAP32[$yymsp>>2]|0; + $1430 = (($1429) + -16|0); + $1431 = (($1430) + 4|0); + _spanUnaryPrefix($yygotominor,$1426,158,$1428,$1431); + break; + } + case 209: { + $1320 = HEAP32[$pParse>>2]|0; + $1321 = HEAP32[$yymsp>>2]|0; + $1322 = (($1321) + -32|0); + $1323 = (($1322) + 4|0); + $1324 = HEAP32[$1323>>2]|0; + $1325 = (_sqlite3ExprListAppend($1320,0,$1324)|0); + HEAP32[$pList6>>2] = $1325; + $1326 = HEAP32[$pParse>>2]|0; + $1327 = HEAP32[$pList6>>2]|0; + $1328 = HEAP32[$yymsp>>2]|0; + $1329 = (($1328) + -64|0); + $1330 = (($1329) + 4|0); + $1331 = HEAP32[$1330>>2]|0; + $1332 = (_sqlite3ExprListAppend($1326,$1327,$1331)|0); + HEAP32[$pList6>>2] = $1332; + $1333 = HEAP32[$pParse>>2]|0; + $1334 = HEAP32[$pList6>>2]|0; + $1335 = HEAP32[$yymsp>>2]|0; + $1336 = (($1335) + 4|0); + $1337 = HEAP32[$1336>>2]|0; + $1338 = (_sqlite3ExprListAppend($1333,$1334,$1337)|0); + HEAP32[$pList6>>2] = $1338; + $1339 = HEAP32[$pParse>>2]|0; + $1340 = HEAP32[$pList6>>2]|0; + $1341 = HEAP32[$yymsp>>2]|0; + $1342 = (($1341) + -48|0); + $1343 = (($1342) + 4|0); + $1344 = (_sqlite3ExprFunction($1339,$1340,$1343)|0); + HEAP32[$yygotominor>>2] = $1344; + $1345 = HEAP32[$yymsp>>2]|0; + $1346 = (($1345) + -48|0); + $1347 = (($1346) + 4|0); + $1348 = (($1347) + 8|0); + $1349 = HEAP32[$1348>>2]|0; + $1350 = ($1349|0)!=(0); + if ($1350) { + $1351 = HEAP32[$pParse>>2]|0; + $1352 = HEAP32[$yygotominor>>2]|0; + $1353 = (_sqlite3PExpr($1351,19,$1352,0,0)|0); + HEAP32[$yygotominor>>2] = $1353; + } + $1354 = HEAP32[$yymsp>>2]|0; + $1355 = (($1354) + -64|0); + $1356 = (($1355) + 4|0); + $1357 = (($1356) + 4|0); + $1358 = HEAP32[$1357>>2]|0; + $1359 = (($yygotominor) + 4|0); + HEAP32[$1359>>2] = $1358; + $1360 = HEAP32[$yymsp>>2]|0; + $1361 = (($1360) + 4|0); + $1362 = (($1361) + 8|0); + $1363 = HEAP32[$1362>>2]|0; + $1364 = (($yygotominor) + 8|0); + HEAP32[$1364>>2] = $1363; + $1365 = HEAP32[$yygotominor>>2]|0; + $1366 = ($1365|0)!=(0|0); + if ($1366) { + $1367 = HEAP32[$yygotominor>>2]|0; + $1368 = (($1367) + 4|0); + $1369 = HEAP32[$1368>>2]|0; + $1370 = $1369 | 128; + HEAP32[$1368>>2] = $1370; + } + break; + } + case 223: { + $1477 = HEAP32[$yymsp>>2]|0; + $1478 = (($1477) + -16|0); + $1479 = (($1478) + 4|0); + $1480 = HEAP32[$1479>>2]|0; + $1481 = ($1480|0)==(0|0); + do { + if ($1481) { + $1482 = HEAP32[$pParse>>2]|0; + $1483 = HEAP32[$yymsp>>2]|0; + $1484 = (($1483) + -48|0); + $1485 = (($1484) + 4|0); + $1486 = HEAP32[$1485>>2]|0; + $1487 = (16680 + ($1486<<3)|0); + $1488 = (_sqlite3PExpr($1482,132,0,0,$1487)|0); + HEAP32[$yygotominor>>2] = $1488; + $1489 = HEAP32[$pParse>>2]|0; + $1490 = HEAP32[$1489>>2]|0; + $1491 = HEAP32[$yymsp>>2]|0; + $1492 = (($1491) + -64|0); + $1493 = (($1492) + 4|0); + $1494 = HEAP32[$1493>>2]|0; + _sqlite3ExprDelete($1490,$1494); + } else { + $1495 = HEAP32[$yymsp>>2]|0; + $1496 = (($1495) + -16|0); + $1497 = (($1496) + 4|0); + $1498 = HEAP32[$1497>>2]|0; + $1499 = HEAP32[$1498>>2]|0; + $1500 = ($1499|0)==(1); + if ($1500) { + $1501 = HEAP32[$yymsp>>2]|0; + $1502 = (($1501) + -16|0); + $1503 = (($1502) + 4|0); + $1504 = HEAP32[$1503>>2]|0; + $1505 = (($1504) + 4|0); + $1506 = HEAP32[$1505>>2]|0; + $1507 = HEAP32[$1506>>2]|0; + HEAP32[$pRHS>>2] = $1507; + $1508 = HEAP32[$yymsp>>2]|0; + $1509 = (($1508) + -16|0); + $1510 = (($1509) + 4|0); + $1511 = HEAP32[$1510>>2]|0; + $1512 = (($1511) + 4|0); + $1513 = HEAP32[$1512>>2]|0; + HEAP32[$1513>>2] = 0; + $1514 = HEAP32[$pParse>>2]|0; + $1515 = HEAP32[$1514>>2]|0; + $1516 = HEAP32[$yymsp>>2]|0; + $1517 = (($1516) + -16|0); + $1518 = (($1517) + 4|0); + $1519 = HEAP32[$1518>>2]|0; + _sqlite3ExprListDelete($1515,$1519); + $1520 = HEAP32[$pRHS>>2]|0; + $1521 = ($1520|0)!=(0|0); + if ($1521) { + $1522 = HEAP32[$pRHS>>2]|0; + $1523 = (($1522) + 4|0); + $1524 = HEAP32[$1523>>2]|0; + $1525 = $1524 & -257; + HEAP32[$1523>>2] = $1525; + $1526 = HEAP32[$pRHS>>2]|0; + $1527 = (($1526) + 4|0); + $1528 = HEAP32[$1527>>2]|0; + $1529 = $1528 | 512; + HEAP32[$1527>>2] = $1529; + } + $1530 = HEAP32[$pParse>>2]|0; + $1531 = HEAP32[$yymsp>>2]|0; + $1532 = (($1531) + -48|0); + $1533 = (($1532) + 4|0); + $1534 = HEAP32[$1533>>2]|0; + $1535 = ($1534|0)!=(0); + $1536 = $1535 ? 78 : 79; + $1537 = HEAP32[$yymsp>>2]|0; + $1538 = (($1537) + -64|0); + $1539 = (($1538) + 4|0); + $1540 = HEAP32[$1539>>2]|0; + $1541 = HEAP32[$pRHS>>2]|0; + $1542 = (_sqlite3PExpr($1530,$1536,$1540,$1541,0)|0); + HEAP32[$yygotominor>>2] = $1542; + break; + } + $1543 = HEAP32[$pParse>>2]|0; + $1544 = HEAP32[$yymsp>>2]|0; + $1545 = (($1544) + -64|0); + $1546 = (($1545) + 4|0); + $1547 = HEAP32[$1546>>2]|0; + $1548 = (_sqlite3PExpr($1543,75,$1547,0,0)|0); + HEAP32[$yygotominor>>2] = $1548; + $1549 = HEAP32[$yygotominor>>2]|0; + $1550 = ($1549|0)!=(0|0); + if ($1550) { + $1551 = HEAP32[$yymsp>>2]|0; + $1552 = (($1551) + -16|0); + $1553 = (($1552) + 4|0); + $1554 = HEAP32[$1553>>2]|0; + $1555 = HEAP32[$yygotominor>>2]|0; + $1556 = (($1555) + 20|0); + HEAP32[$1556>>2] = $1554; + $1557 = HEAP32[$pParse>>2]|0; + $1558 = HEAP32[$yygotominor>>2]|0; + _sqlite3ExprSetHeight($1557,$1558); + } else { + $1559 = HEAP32[$pParse>>2]|0; + $1560 = HEAP32[$1559>>2]|0; + $1561 = HEAP32[$yymsp>>2]|0; + $1562 = (($1561) + -16|0); + $1563 = (($1562) + 4|0); + $1564 = HEAP32[$1563>>2]|0; + _sqlite3ExprListDelete($1560,$1564); + } + $1565 = HEAP32[$yymsp>>2]|0; + $1566 = (($1565) + -48|0); + $1567 = (($1566) + 4|0); + $1568 = HEAP32[$1567>>2]|0; + $1569 = ($1568|0)!=(0); + if ($1569) { + $1570 = HEAP32[$pParse>>2]|0; + $1571 = HEAP32[$yygotominor>>2]|0; + $1572 = (_sqlite3PExpr($1570,19,$1571,0,0)|0); + HEAP32[$yygotominor>>2] = $1572; + } + } + } while(0); + $1573 = HEAP32[$yymsp>>2]|0; + $1574 = (($1573) + -64|0); + $1575 = (($1574) + 4|0); + $1576 = (($1575) + 4|0); + $1577 = HEAP32[$1576>>2]|0; + $1578 = (($yygotominor) + 4|0); + HEAP32[$1578>>2] = $1577; + $1579 = HEAP32[$yymsp>>2]|0; + $1580 = (($1579) + 4|0); + $1581 = (($1580) + 4|0); + $1582 = HEAP32[$1581>>2]|0; + $1583 = HEAP32[$yymsp>>2]|0; + $1584 = (($1583) + 4|0); + $1585 = HEAP32[$1584>>2]|0; + $1586 = (($1585) + ($1582)|0); + $1587 = (($yygotominor) + 8|0); + HEAP32[$1587>>2] = $1586; + break; + } + case 227: { + $1739 = HEAP32[$pParse>>2]|0; + $1740 = (_sqlite3PExpr($1739,20,0,0,0)|0); + HEAP32[$yygotominor>>2] = $1740; + HEAP32[$p8>>2] = $1740; + $1741 = HEAP32[$p8>>2]|0; + $1742 = ($1741|0)!=(0|0); + if ($1742) { + $1743 = HEAP32[$yymsp>>2]|0; + $1744 = (($1743) + -16|0); + $1745 = (($1744) + 4|0); + $1746 = HEAP32[$1745>>2]|0; + $1747 = HEAP32[$p8>>2]|0; + $1748 = (($1747) + 20|0); + HEAP32[$1748>>2] = $1746; + $1749 = HEAP32[$p8>>2]|0; + $1750 = (($1749) + 4|0); + $1751 = HEAP32[$1750>>2]|0; + $1752 = $1751 | 2048; + HEAP32[$1750>>2] = $1752; + $1753 = HEAP32[$pParse>>2]|0; + $1754 = HEAP32[$p8>>2]|0; + _sqlite3ExprSetHeight($1753,$1754); + } else { + $1755 = HEAP32[$pParse>>2]|0; + $1756 = HEAP32[$1755>>2]|0; + $1757 = HEAP32[$yymsp>>2]|0; + $1758 = (($1757) + -16|0); + $1759 = (($1758) + 4|0); + $1760 = HEAP32[$1759>>2]|0; + _sqlite3SelectDelete($1756,$1760); + } + $1761 = HEAP32[$yymsp>>2]|0; + $1762 = (($1761) + -48|0); + $1763 = (($1762) + 4|0); + $1764 = HEAP32[$1763>>2]|0; + $1765 = (($yygotominor) + 4|0); + HEAP32[$1765>>2] = $1764; + $1766 = HEAP32[$yymsp>>2]|0; + $1767 = (($1766) + 4|0); + $1768 = (($1767) + 4|0); + $1769 = HEAP32[$1768>>2]|0; + $1770 = HEAP32[$yymsp>>2]|0; + $1771 = (($1770) + 4|0); + $1772 = HEAP32[$1771>>2]|0; + $1773 = (($1772) + ($1769)|0); + $1774 = (($yygotominor) + 8|0); + HEAP32[$1774>>2] = $1773; + break; + } + case 282: { + $2145 = HEAP32[$pParse>>2]|0; + _sqlite3ErrorMsg($2145,16800,$vararg_buffer14); + break; + } + case 291: case 240: { + HEAP32[$yygotominor>>2] = 2; + break; + } + case 253: { + $1993 = HEAP32[$pParse>>2]|0; + $1994 = HEAP32[$yymsp>>2]|0; + $1995 = (($1994) + -64|0); + $1996 = (($1995) + 4|0); + $1997 = HEAP32[$yymsp>>2]|0; + $1998 = (($1997) + -48|0); + $1999 = (($1998) + 4|0); + $2000 = HEAP32[$yymsp>>2]|0; + $2001 = (($2000) + -16|0); + $2002 = (($2001) + 4|0); + _sqlite3Pragma($1993,$1996,$1999,$2002,0); + break; + } + case 297: case 276: { + $2102 = HEAP32[$yymsp>>2]|0; + $2103 = (($2102) + 4|0); + $2104 = HEAP32[$2103>>2]|0; + HEAP32[$yygotominor>>2] = $2104; + break; + } + case 267: { + HEAP32[$yygotominor>>2] = 31; + break; + } + case 272: { + HEAP32[$yygotominor>>2] = 110; + $2098 = HEAP32[$yymsp>>2]|0; + $2099 = (($2098) + 4|0); + $2100 = HEAP32[$2099>>2]|0; + $2101 = (($yygotominor) + 4|0); + HEAP32[$2101>>2] = $2100; + break; + } + case 271: case 270: { + $2093 = HEAP32[$yymsp>>2]|0; + $2094 = (($2093) + 2|0); + $2095 = HEAP8[$2094>>0]|0; + $2096 = $2095&255; + HEAP32[$yygotominor>>2] = $2096; + $2097 = (($yygotominor) + 4|0); + HEAP32[$2097>>2] = 0; + break; + } + case 287: { + $2190 = HEAP32[$pParse>>2]|0; + $2191 = HEAP32[$2190>>2]|0; + $2192 = HEAP32[$yymsp>>2]|0; + $2193 = (($2192) + 4|0); + $2194 = HEAP32[$2193>>2]|0; + $2195 = (_sqlite3TriggerSelectStep($2191,$2194)|0); + HEAP32[$yygotominor>>2] = $2195; + break; + } + case 288: { + $2196 = HEAP32[$pParse>>2]|0; + $2197 = (_sqlite3PExpr($2196,57,0,0,0)|0); + HEAP32[$yygotominor>>2] = $2197; + $2198 = HEAP32[$yygotominor>>2]|0; + $2199 = ($2198|0)!=(0|0); + if ($2199) { + $2200 = HEAP32[$yygotominor>>2]|0; + $2201 = (($2200) + 1|0); + HEAP8[$2201>>0] = 4; + } + $2202 = HEAP32[$yymsp>>2]|0; + $2203 = (($2202) + -48|0); + $2204 = (($2203) + 4|0); + $2205 = HEAP32[$2204>>2]|0; + $2206 = (($yygotominor) + 4|0); + HEAP32[$2206>>2] = $2205; + $2207 = HEAP32[$yymsp>>2]|0; + $2208 = (($2207) + 4|0); + $2209 = (($2208) + 4|0); + $2210 = HEAP32[$2209>>2]|0; + $2211 = HEAP32[$yymsp>>2]|0; + $2212 = (($2211) + 4|0); + $2213 = HEAP32[$2212>>2]|0; + $2214 = (($2213) + ($2210)|0); + $2215 = (($yygotominor) + 8|0); + HEAP32[$2215>>2] = $2214; + break; + } + case 296: case 275: { + HEAP32[$yygotominor>>2] = 0; + break; + } + case 283: { + $2146 = HEAP32[$pParse>>2]|0; + _sqlite3ErrorMsg($2146,16888,$vararg_buffer14); + break; + } + case 289: { + $2216 = HEAP32[$pParse>>2]|0; + $2217 = HEAP32[$yymsp>>2]|0; + $2218 = (($2217) + -16|0); + $2219 = (($2218) + 4|0); + $2220 = (_sqlite3PExpr($2216,57,0,0,$2219)|0); + HEAP32[$yygotominor>>2] = $2220; + $2221 = HEAP32[$yygotominor>>2]|0; + $2222 = ($2221|0)!=(0|0); + if ($2222) { + $2223 = HEAP32[$yymsp>>2]|0; + $2224 = (($2223) + -48|0); + $2225 = (($2224) + 4|0); + $2226 = HEAP32[$2225>>2]|0; + $2227 = $2226&255; + $2228 = HEAP32[$yygotominor>>2]|0; + $2229 = (($2228) + 1|0); + HEAP8[$2229>>0] = $2227; + } + $2230 = HEAP32[$yymsp>>2]|0; + $2231 = (($2230) + -80|0); + $2232 = (($2231) + 4|0); + $2233 = HEAP32[$2232>>2]|0; + $2234 = (($yygotominor) + 4|0); + HEAP32[$2234>>2] = $2233; + $2235 = HEAP32[$yymsp>>2]|0; + $2236 = (($2235) + 4|0); + $2237 = (($2236) + 4|0); + $2238 = HEAP32[$2237>>2]|0; + $2239 = HEAP32[$yymsp>>2]|0; + $2240 = (($2239) + 4|0); + $2241 = HEAP32[$2240>>2]|0; + $2242 = (($2241) + ($2238)|0); + $2243 = (($yygotominor) + 8|0); + HEAP32[$2243>>2] = $2242; + break; + } + case 268: { + HEAP32[$yygotominor>>2] = 49; + break; + } + case 254: { + $2003 = HEAP32[$pParse>>2]|0; + $2004 = HEAP32[$yymsp>>2]|0; + $2005 = (($2004) + -48|0); + $2006 = (($2005) + 4|0); + $2007 = HEAP32[$yymsp>>2]|0; + $2008 = (($2007) + -32|0); + $2009 = (($2008) + 4|0); + $2010 = HEAP32[$yymsp>>2]|0; + $2011 = (($2010) + 4|0); + _sqlite3Pragma($2003,$2006,$2009,$2011,1); + break; + } + case 264: { + $2022 = HEAP32[$yymsp>>2]|0; + $2023 = (($2022) + -48|0); + $2024 = (($2023) + 4|0); + $2025 = HEAP32[$2024>>2]|0; + HEAP32[$all>>2] = $2025; + $2026 = HEAP32[$yymsp>>2]|0; + $2027 = (($2026) + 4|0); + $2028 = HEAP32[$2027>>2]|0; + $2029 = HEAP32[$yymsp>>2]|0; + $2030 = (($2029) + -48|0); + $2031 = (($2030) + 4|0); + $2032 = HEAP32[$2031>>2]|0; + $2033 = $2028; + $2034 = $2032; + $2035 = (($2033) - ($2034))|0; + $2036 = HEAP32[$yymsp>>2]|0; + $2037 = (($2036) + 4|0); + $2038 = (($2037) + 4|0); + $2039 = HEAP32[$2038>>2]|0; + $2040 = (($2035) + ($2039))|0; + $2041 = (($all) + 4|0); + HEAP32[$2041>>2] = $2040; + $2042 = HEAP32[$pParse>>2]|0; + $2043 = HEAP32[$yymsp>>2]|0; + $2044 = (($2043) + -16|0); + $2045 = (($2044) + 4|0); + $2046 = HEAP32[$2045>>2]|0; + _sqlite3FinishTrigger($2042,$2046,$all); + break; + } + case 269: case 266: { + HEAP32[$yygotominor>>2] = 35; + break; + } + case 292: { + HEAP32[$yygotominor>>2] = 3; + break; + } + case 293: { + $2244 = HEAP32[$pParse>>2]|0; + $2245 = HEAP32[$yymsp>>2]|0; + $2246 = (($2245) + 4|0); + $2247 = HEAP32[$2246>>2]|0; + $2248 = HEAP32[$yymsp>>2]|0; + $2249 = (($2248) + -16|0); + $2250 = (($2249) + 4|0); + $2251 = HEAP32[$2250>>2]|0; + _sqlite3DropTrigger($2244,$2247,$2251); + break; + } + case 294: { + $2252 = HEAP32[$pParse>>2]|0; + $2253 = HEAP32[$yymsp>>2]|0; + $2254 = (($2253) + -48|0); + $2255 = (($2254) + 4|0); + $2256 = HEAP32[$2255>>2]|0; + $2257 = HEAP32[$yymsp>>2]|0; + $2258 = (($2257) + -16|0); + $2259 = (($2258) + 4|0); + $2260 = HEAP32[$2259>>2]|0; + $2261 = HEAP32[$yymsp>>2]|0; + $2262 = (($2261) + 4|0); + $2263 = HEAP32[$2262>>2]|0; + _sqlite3Attach($2252,$2256,$2260,$2263); + break; + } + case 290: { + HEAP32[$yygotominor>>2] = 1; + break; + } + case 295: { + $2264 = HEAP32[$pParse>>2]|0; + $2265 = HEAP32[$yymsp>>2]|0; + $2266 = (($2265) + 4|0); + $2267 = HEAP32[$2266>>2]|0; + _sqlite3Detach($2264,$2267); + break; + } + case 301: { + $2269 = HEAP32[$pParse>>2]|0; + $2270 = HEAP32[$yymsp>>2]|0; + $2271 = (($2270) + -16|0); + $2272 = (($2271) + 4|0); + $2273 = HEAP32[$yymsp>>2]|0; + $2274 = (($2273) + 4|0); + _sqlite3Reindex($2269,$2272,$2274); + break; + } + case 304: { + $2282 = HEAP32[$pParse>>2]|0; + $2283 = HEAP32[$yymsp>>2]|0; + $2284 = (($2283) + -48|0); + $2285 = (($2284) + 4|0); + $2286 = HEAP32[$2285>>2]|0; + $2287 = HEAP32[$yymsp>>2]|0; + $2288 = (($2287) + 4|0); + _sqlite3AlterRenameTable($2282,$2286,$2288); + break; + } + case 306: { + $2292 = HEAP32[$pParse>>2]|0; + $2293 = HEAP32[$2292>>2]|0; + $2294 = (($2293) + 240|0); + $2295 = (($2294) + 2|0); + HEAP8[$2295>>0] = 0; + $2296 = HEAP32[$pParse>>2]|0; + $2297 = HEAP32[$yymsp>>2]|0; + $2298 = (($2297) + 4|0); + $2299 = HEAP32[$2298>>2]|0; + _sqlite3AlterBeginAddColumn($2296,$2299); + break; + } + case 309: { + $2300 = HEAP32[$pParse>>2]|0; + _sqlite3VtabFinishParse($2300,0); + break; + } + case 255: { + $2012 = HEAP32[$pParse>>2]|0; + $2013 = HEAP32[$yymsp>>2]|0; + $2014 = (($2013) + -64|0); + $2015 = (($2014) + 4|0); + $2016 = HEAP32[$yymsp>>2]|0; + $2017 = (($2016) + -48|0); + $2018 = (($2017) + 4|0); + $2019 = HEAP32[$yymsp>>2]|0; + $2020 = (($2019) + -16|0); + $2021 = (($2020) + 4|0); + _sqlite3Pragma($2012,$2015,$2018,$2021,1); + break; + } + case 241: { + HEAP32[$yygotominor>>2] = 0; + break; + } + case 246: { + HEAP32[$yygotominor>>2] = 0; + $1968 = (($yygotominor) + 4|0); + HEAP32[$1968>>2] = 0; + break; + } + case 238: { + $1870 = HEAP32[$pParse>>2]|0; + $1871 = HEAP32[$yymsp>>2]|0; + $1872 = (($1871) + 4|0); + $1873 = HEAP32[$1872>>2]|0; + $1874 = (_sqlite3ExprListAppend($1870,0,$1873)|0); + HEAP32[$yygotominor>>2] = $1874; + break; + } + case 250: case 249: { + $1977 = HEAP32[$pParse>>2]|0; + _sqlite3Vacuum($1977); + break; + } + case 285: { + $2164 = HEAP32[$pParse>>2]|0; + $2165 = HEAP32[$2164>>2]|0; + $2166 = HEAP32[$yymsp>>2]|0; + $2167 = (($2166) + -32|0); + $2168 = (($2167) + 4|0); + $2169 = HEAP32[$yymsp>>2]|0; + $2170 = (($2169) + -16|0); + $2171 = (($2170) + 4|0); + $2172 = HEAP32[$2171>>2]|0; + $2173 = HEAP32[$yymsp>>2]|0; + $2174 = (($2173) + 4|0); + $2175 = HEAP32[$2174>>2]|0; + $2176 = HEAP32[$yymsp>>2]|0; + $2177 = (($2176) + -64|0); + $2178 = (($2177) + 4|0); + $2179 = HEAP8[$2178>>0]|0; + $2180 = (_sqlite3TriggerInsertStep($2165,$2168,$2172,$2175,$2179)|0); + HEAP32[$yygotominor>>2] = $2180; + break; + } + case 286: { + $2181 = HEAP32[$pParse>>2]|0; + $2182 = HEAP32[$2181>>2]|0; + $2183 = HEAP32[$yymsp>>2]|0; + $2184 = (($2183) + -32|0); + $2185 = (($2184) + 4|0); + $2186 = HEAP32[$yymsp>>2]|0; + $2187 = (($2186) + 4|0); + $2188 = HEAP32[$2187>>2]|0; + $2189 = (_sqlite3TriggerDeleteStep($2182,$2185,$2188)|0); + HEAP32[$yygotominor>>2] = $2189; + break; + } + case 303: { + $2276 = HEAP32[$pParse>>2]|0; + $2277 = HEAP32[$yymsp>>2]|0; + $2278 = (($2277) + -16|0); + $2279 = (($2278) + 4|0); + $2280 = HEAP32[$yymsp>>2]|0; + $2281 = (($2280) + 4|0); + _sqlite3Analyze($2276,$2279,$2281); + break; + } + case 229: { + $1833 = HEAP32[$pParse>>2]|0; + $1834 = HEAP32[$yymsp>>2]|0; + $1835 = (($1834) + -64|0); + $1836 = (($1835) + 4|0); + $1837 = HEAP32[$1836>>2]|0; + $1838 = HEAP32[$yymsp>>2]|0; + $1839 = (($1838) + -32|0); + $1840 = (($1839) + 4|0); + $1841 = HEAP32[$1840>>2]|0; + $1842 = (_sqlite3ExprListAppend($1833,$1837,$1841)|0); + HEAP32[$yygotominor>>2] = $1842; + $1843 = HEAP32[$pParse>>2]|0; + $1844 = HEAP32[$yygotominor>>2]|0; + $1845 = HEAP32[$yymsp>>2]|0; + $1846 = (($1845) + 4|0); + $1847 = HEAP32[$1846>>2]|0; + $1848 = (_sqlite3ExprListAppend($1843,$1844,$1847)|0); + HEAP32[$yygotominor>>2] = $1848; + break; + } + case 248: { + $1969 = HEAP32[$pParse>>2]|0; + $1970 = HEAP32[$yymsp>>2]|0; + $1971 = (($1970) + 4|0); + $1972 = HEAP32[$1971>>2]|0; + $1973 = HEAP32[$yymsp>>2]|0; + $1974 = (($1973) + -16|0); + $1975 = (($1974) + 4|0); + $1976 = HEAP32[$1975>>2]|0; + _sqlite3DropIndex($1969,$1972,$1976); + break; + } + case 244: { + $1906 = HEAP32[$pParse>>2]|0; + $1907 = HEAP32[$yymsp>>2]|0; + $1908 = (($1907) + -16|0); + $1909 = (($1908) + 4|0); + $1910 = (_sqlite3ExprAddCollateToken($1906,0,$1909)|0); + HEAP32[$p9>>2] = $1910; + $1911 = HEAP32[$pParse>>2]|0; + $1912 = HEAP32[$yymsp>>2]|0; + $1913 = (($1912) + -64|0); + $1914 = (($1913) + 4|0); + $1915 = HEAP32[$1914>>2]|0; + $1916 = HEAP32[$p9>>2]|0; + $1917 = (_sqlite3ExprListAppend($1911,$1915,$1916)|0); + HEAP32[$yygotominor>>2] = $1917; + $1918 = HEAP32[$pParse>>2]|0; + $1919 = HEAP32[$yygotominor>>2]|0; + $1920 = HEAP32[$yymsp>>2]|0; + $1921 = (($1920) + -32|0); + $1922 = (($1921) + 4|0); + _sqlite3ExprListSetName($1918,$1919,$1922,1); + $1923 = HEAP32[$pParse>>2]|0; + $1924 = HEAP32[$yygotominor>>2]|0; + _sqlite3ExprListCheckLength($1923,$1924,16696); + $1925 = HEAP32[$yygotominor>>2]|0; + $1926 = ($1925|0)!=(0|0); + if ($1926) { + $1927 = HEAP32[$yymsp>>2]|0; + $1928 = (($1927) + 4|0); + $1929 = HEAP32[$1928>>2]|0; + $1930 = $1929&255; + $1931 = HEAP32[$yygotominor>>2]|0; + $1932 = HEAP32[$1931>>2]|0; + $1933 = (($1932) - 1)|0; + $1934 = HEAP32[$yygotominor>>2]|0; + $1935 = (($1934) + 4|0); + $1936 = HEAP32[$1935>>2]|0; + $1937 = (($1936) + (($1933*20)|0)|0); + $1938 = (($1937) + 12|0); + HEAP8[$1938>>0] = $1930; + } + break; + } + case 237: { + $1861 = HEAP32[$pParse>>2]|0; + $1862 = HEAP32[$yymsp>>2]|0; + $1863 = (($1862) + -32|0); + $1864 = (($1863) + 4|0); + $1865 = HEAP32[$1864>>2]|0; + $1866 = HEAP32[$yymsp>>2]|0; + $1867 = (($1866) + 4|0); + $1868 = HEAP32[$1867>>2]|0; + $1869 = (_sqlite3ExprListAppend($1861,$1865,$1868)|0); + HEAP32[$yygotominor>>2] = $1869; + break; + } + case 251: { + $1978 = HEAP32[$pParse>>2]|0; + $1979 = HEAP32[$yymsp>>2]|0; + $1980 = (($1979) + -16|0); + $1981 = (($1980) + 4|0); + $1982 = HEAP32[$yymsp>>2]|0; + $1983 = (($1982) + 4|0); + _sqlite3Pragma($1978,$1981,$1983,0,0); + break; + } + case 265: { + $2047 = HEAP32[$pParse>>2]|0; + $2048 = HEAP32[$yymsp>>2]|0; + $2049 = (($2048) + -112|0); + $2050 = (($2049) + 4|0); + $2051 = HEAP32[$yymsp>>2]|0; + $2052 = (($2051) + -96|0); + $2053 = (($2052) + 4|0); + $2054 = HEAP32[$yymsp>>2]|0; + $2055 = (($2054) + -80|0); + $2056 = (($2055) + 4|0); + $2057 = HEAP32[$2056>>2]|0; + $2058 = HEAP32[$yymsp>>2]|0; + $2059 = (($2058) + -64|0); + $2060 = (($2059) + 4|0); + $2061 = HEAP32[$2060>>2]|0; + $2062 = HEAP32[$yymsp>>2]|0; + $2063 = (($2062) + -64|0); + $2064 = (($2063) + 4|0); + $2065 = (($2064) + 4|0); + $2066 = HEAP32[$2065>>2]|0; + $2067 = HEAP32[$yymsp>>2]|0; + $2068 = (($2067) + -32|0); + $2069 = (($2068) + 4|0); + $2070 = HEAP32[$2069>>2]|0; + $2071 = HEAP32[$yymsp>>2]|0; + $2072 = (($2071) + 4|0); + $2073 = HEAP32[$2072>>2]|0; + $2074 = HEAP32[$yymsp>>2]|0; + $2075 = (($2074) + -160|0); + $2076 = (($2075) + 4|0); + $2077 = HEAP32[$2076>>2]|0; + $2078 = HEAP32[$yymsp>>2]|0; + $2079 = (($2078) + -128|0); + $2080 = (($2079) + 4|0); + $2081 = HEAP32[$2080>>2]|0; + _sqlite3BeginTrigger($2047,$2050,$2053,$2057,$2061,$2066,$2070,$2073,$2077,$2081); + $2082 = HEAP32[$yymsp>>2]|0; + $2083 = (($2082) + -96|0); + $2084 = (($2083) + 4|0); + $2085 = (($2084) + 4|0); + $2086 = HEAP32[$2085>>2]|0; + $2087 = ($2086|0)==(0); + $2088 = HEAP32[$yymsp>>2]|0; + if ($2087) { + $2089 = (($2088) + -112|0); + $2090 = (($2089) + 4|0); + ;HEAP32[$yygotominor+0>>2]=HEAP32[$2090+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$2090+4>>2]|0; + break L1; + } else { + $2091 = (($2088) + -96|0); + $2092 = (($2091) + 4|0); + ;HEAP32[$yygotominor+0>>2]=HEAP32[$2092+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$2092+4>>2]|0; + break L1; + } + break; + } + case 300: { + $2268 = HEAP32[$pParse>>2]|0; + _sqlite3Reindex($2268,0,0); + break; + } + case 302: { + $2275 = HEAP32[$pParse>>2]|0; + _sqlite3Analyze($2275,0,0); + break; + } + case 310: { + $2301 = HEAP32[$pParse>>2]|0; + $2302 = HEAP32[$yymsp>>2]|0; + $2303 = (($2302) + 4|0); + _sqlite3VtabFinishParse($2301,$2303); + break; + } + case 314: { + $2317 = HEAP32[$pParse>>2]|0; + _sqlite3VtabArgInit($2317); + break; + } + case 318: case 317: case 316: { + $2318 = HEAP32[$pParse>>2]|0; + $2319 = HEAP32[$yymsp>>2]|0; + $2320 = (($2319) + 4|0); + _sqlite3VtabArgExtend($2318,$2320); + break; + } + case 280: { + $2142 = HEAP32[$yymsp>>2]|0; + $2143 = (($2142) + 4|0); + ;HEAP32[$yygotominor+0>>2]=HEAP32[$2143+0>>2]|0;HEAP32[$yygotominor+4>>2]=HEAP32[$2143+4>>2]|0; + $2144 = HEAP32[$pParse>>2]|0; + _sqlite3ErrorMsg($2144,16704,$vararg_buffer14); + break; + } + case 278: { + $2129 = HEAP32[$yymsp>>2]|0; + $2130 = (($2129) + -16|0); + $2131 = (($2130) + 4|0); + $2132 = HEAP32[$2131>>2]|0; + $2133 = HEAP32[$yymsp>>2]|0; + $2134 = (($2133) + -16|0); + $2135 = (($2134) + 4|0); + $2136 = HEAP32[$2135>>2]|0; + $2137 = (($2136) + 36|0); + HEAP32[$2137>>2] = $2132; + $2138 = HEAP32[$yymsp>>2]|0; + $2139 = (($2138) + -16|0); + $2140 = (($2139) + 4|0); + $2141 = HEAP32[$2140>>2]|0; + HEAP32[$yygotominor>>2] = $2141; + break; + } + case 311: { + $2304 = HEAP32[$pParse>>2]|0; + $2305 = HEAP32[$yymsp>>2]|0; + $2306 = (($2305) + -48|0); + $2307 = (($2306) + 4|0); + $2308 = HEAP32[$yymsp>>2]|0; + $2309 = (($2308) + -32|0); + $2310 = (($2309) + 4|0); + $2311 = HEAP32[$yymsp>>2]|0; + $2312 = (($2311) + 4|0); + $2313 = HEAP32[$yymsp>>2]|0; + $2314 = (($2313) + -64|0); + $2315 = (($2314) + 4|0); + $2316 = HEAP32[$2315>>2]|0; + _sqlite3VtabBeginParse($2304,$2307,$2310,$2312,$2316); + break; + } + case 245: { + $1939 = HEAP32[$pParse>>2]|0; + $1940 = HEAP32[$yymsp>>2]|0; + $1941 = (($1940) + -16|0); + $1942 = (($1941) + 4|0); + $1943 = (_sqlite3ExprAddCollateToken($1939,0,$1942)|0); + HEAP32[$p10>>2] = $1943; + $1944 = HEAP32[$pParse>>2]|0; + $1945 = HEAP32[$p10>>2]|0; + $1946 = (_sqlite3ExprListAppend($1944,0,$1945)|0); + HEAP32[$yygotominor>>2] = $1946; + $1947 = HEAP32[$pParse>>2]|0; + $1948 = HEAP32[$yygotominor>>2]|0; + $1949 = HEAP32[$yymsp>>2]|0; + $1950 = (($1949) + -32|0); + $1951 = (($1950) + 4|0); + _sqlite3ExprListSetName($1947,$1948,$1951,1); + $1952 = HEAP32[$pParse>>2]|0; + $1953 = HEAP32[$yygotominor>>2]|0; + _sqlite3ExprListCheckLength($1952,$1953,16696); + $1954 = HEAP32[$yygotominor>>2]|0; + $1955 = ($1954|0)!=(0|0); + if ($1955) { + $1956 = HEAP32[$yymsp>>2]|0; + $1957 = (($1956) + 4|0); + $1958 = HEAP32[$1957>>2]|0; + $1959 = $1958&255; + $1960 = HEAP32[$yygotominor>>2]|0; + $1961 = HEAP32[$1960>>2]|0; + $1962 = (($1961) - 1)|0; + $1963 = HEAP32[$yygotominor>>2]|0; + $1964 = (($1963) + 4|0); + $1965 = HEAP32[$1964>>2]|0; + $1966 = (($1965) + (($1962*20)|0)|0); + $1967 = (($1966) + 12|0); + HEAP8[$1967>>0] = $1959; + } + break; + } + case 252: { + $1984 = HEAP32[$pParse>>2]|0; + $1985 = HEAP32[$yymsp>>2]|0; + $1986 = (($1985) + -48|0); + $1987 = (($1986) + 4|0); + $1988 = HEAP32[$yymsp>>2]|0; + $1989 = (($1988) + -32|0); + $1990 = (($1989) + 4|0); + $1991 = HEAP32[$yymsp>>2]|0; + $1992 = (($1991) + 4|0); + _sqlite3Pragma($1984,$1987,$1990,$1992,0); + break; + } + case 284: { + $2147 = HEAP32[$pParse>>2]|0; + $2148 = HEAP32[$2147>>2]|0; + $2149 = HEAP32[$yymsp>>2]|0; + $2150 = (($2149) + -64|0); + $2151 = (($2150) + 4|0); + $2152 = HEAP32[$yymsp>>2]|0; + $2153 = (($2152) + -16|0); + $2154 = (($2153) + 4|0); + $2155 = HEAP32[$2154>>2]|0; + $2156 = HEAP32[$yymsp>>2]|0; + $2157 = (($2156) + 4|0); + $2158 = HEAP32[$2157>>2]|0; + $2159 = HEAP32[$yymsp>>2]|0; + $2160 = (($2159) + -80|0); + $2161 = (($2160) + 4|0); + $2162 = HEAP8[$2161>>0]|0; + $2163 = (_sqlite3TriggerUpdateStep($2148,$2151,$2155,$2158,$2162)|0); + HEAP32[$yygotominor>>2] = $2163; + break; + } + case 305: { + $2289 = HEAP32[$pParse>>2]|0; + $2290 = HEAP32[$yymsp>>2]|0; + $2291 = (($2290) + 4|0); + _sqlite3AlterFinishAddColumn($2289,$2291); + break; + } + case 277: { + $2105 = HEAP32[$yymsp>>2]|0; + $2106 = (($2105) + -16|0); + $2107 = (($2106) + 4|0); + $2108 = HEAP32[$2107>>2]|0; + $2109 = HEAP32[$yymsp>>2]|0; + $2110 = (($2109) + -32|0); + $2111 = (($2110) + 4|0); + $2112 = HEAP32[$2111>>2]|0; + $2113 = (($2112) + 36|0); + $2114 = HEAP32[$2113>>2]|0; + $2115 = (($2114) + 32|0); + HEAP32[$2115>>2] = $2108; + $2116 = HEAP32[$yymsp>>2]|0; + $2117 = (($2116) + -16|0); + $2118 = (($2117) + 4|0); + $2119 = HEAP32[$2118>>2]|0; + $2120 = HEAP32[$yymsp>>2]|0; + $2121 = (($2120) + -32|0); + $2122 = (($2121) + 4|0); + $2123 = HEAP32[$2122>>2]|0; + $2124 = (($2123) + 36|0); + HEAP32[$2124>>2] = $2119; + $2125 = HEAP32[$yymsp>>2]|0; + $2126 = (($2125) + -32|0); + $2127 = (($2126) + 4|0); + $2128 = HEAP32[$2127>>2]|0; + HEAP32[$yygotominor>>2] = $2128; + break; + } + case 230: { + $1849 = HEAP32[$pParse>>2]|0; + $1850 = HEAP32[$yymsp>>2]|0; + $1851 = (($1850) + -32|0); + $1852 = (($1851) + 4|0); + $1853 = HEAP32[$1852>>2]|0; + $1854 = (_sqlite3ExprListAppend($1849,0,$1853)|0); + HEAP32[$yygotominor>>2] = $1854; + $1855 = HEAP32[$pParse>>2]|0; + $1856 = HEAP32[$yygotominor>>2]|0; + $1857 = HEAP32[$yymsp>>2]|0; + $1858 = (($1857) + 4|0); + $1859 = HEAP32[$1858>>2]|0; + $1860 = (_sqlite3ExprListAppend($1855,$1856,$1859)|0); + HEAP32[$yygotominor>>2] = $1860; + break; + } + case 239: { + $1875 = HEAP32[$pParse>>2]|0; + $1876 = HEAP32[$yymsp>>2]|0; + $1877 = (($1876) + -112|0); + $1878 = (($1877) + 4|0); + $1879 = HEAP32[$yymsp>>2]|0; + $1880 = (($1879) + -96|0); + $1881 = (($1880) + 4|0); + $1882 = HEAP32[$pParse>>2]|0; + $1883 = HEAP32[$1882>>2]|0; + $1884 = HEAP32[$yymsp>>2]|0; + $1885 = (($1884) + -64|0); + $1886 = (($1885) + 4|0); + $1887 = (_sqlite3SrcListAppend($1883,0,$1886,0)|0); + $1888 = HEAP32[$yymsp>>2]|0; + $1889 = (($1888) + -32|0); + $1890 = (($1889) + 4|0); + $1891 = HEAP32[$1890>>2]|0; + $1892 = HEAP32[$yymsp>>2]|0; + $1893 = (($1892) + -160|0); + $1894 = (($1893) + 4|0); + $1895 = HEAP32[$1894>>2]|0; + $1896 = HEAP32[$yymsp>>2]|0; + $1897 = (($1896) + -176|0); + $1898 = (($1897) + 4|0); + $1899 = HEAP32[$yymsp>>2]|0; + $1900 = (($1899) + 4|0); + $1901 = HEAP32[$1900>>2]|0; + $1902 = HEAP32[$yymsp>>2]|0; + $1903 = (($1902) + -128|0); + $1904 = (($1903) + 4|0); + $1905 = HEAP32[$1904>>2]|0; + (_sqlite3CreateIndex($1875,$1878,$1881,$1887,$1891,$1895,$1898,$1901,0,$1905)|0); + break; + } + case 325: { + $2324 = HEAP32[$pParse>>2]|0; + $2325 = HEAP32[$yymsp>>2]|0; + $2326 = (($2325) + -80|0); + $2327 = (($2326) + 4|0); + $2328 = HEAP32[$yymsp>>2]|0; + $2329 = (($2328) + -64|0); + $2330 = (($2329) + 4|0); + $2331 = HEAP32[$2330>>2]|0; + $2332 = HEAP32[$yymsp>>2]|0; + $2333 = (($2332) + -16|0); + $2334 = (($2333) + 4|0); + $2335 = HEAP32[$2334>>2]|0; + $2336 = (_sqlite3WithAdd($2324,0,$2327,$2331,$2335)|0); + HEAP32[$yygotominor>>2] = $2336; + break; + } + case 322: { + HEAP32[$yygotominor>>2] = 0; + break; + } + case 326: { + $2337 = HEAP32[$pParse>>2]|0; + $2338 = HEAP32[$yymsp>>2]|0; + $2339 = (($2338) + -112|0); + $2340 = (($2339) + 4|0); + $2341 = HEAP32[$2340>>2]|0; + $2342 = HEAP32[$yymsp>>2]|0; + $2343 = (($2342) + -80|0); + $2344 = (($2343) + 4|0); + $2345 = HEAP32[$yymsp>>2]|0; + $2346 = (($2345) + -64|0); + $2347 = (($2346) + 4|0); + $2348 = HEAP32[$2347>>2]|0; + $2349 = HEAP32[$yymsp>>2]|0; + $2350 = (($2349) + -16|0); + $2351 = (($2350) + 4|0); + $2352 = HEAP32[$2351>>2]|0; + $2353 = (_sqlite3WithAdd($2337,$2341,$2344,$2348,$2352)|0); + HEAP32[$yygotominor>>2] = $2353; + break; + } + case 324: case 323: { + $2321 = HEAP32[$yymsp>>2]|0; + $2322 = (($2321) + 4|0); + $2323 = HEAP32[$2322>>2]|0; + HEAP32[$yygotominor>>2] = $2323; + break; + } + default: { + } + } + } while(0); + $2354 = HEAP32[$1>>2]|0; + $2355 = (16976 + ($2354<<1)|0); + $2356 = HEAP8[$2355>>0]|0; + $2357 = $2356&255; + HEAP32[$yygoto>>2] = $2357; + $2358 = HEAP32[$1>>2]|0; + $2359 = (16976 + ($2358<<1)|0); + $2360 = (($2359) + 1|0); + $2361 = HEAP8[$2360>>0]|0; + $2362 = $2361&255; + HEAP32[$yysize>>2] = $2362; + $2363 = HEAP32[$yysize>>2]|0; + $2364 = HEAP32[$0>>2]|0; + $2365 = HEAP32[$2364>>2]|0; + $2366 = (($2365) - ($2363))|0; + HEAP32[$2364>>2] = $2366; + $2367 = HEAP32[$yysize>>2]|0; + $2368 = (0 - ($2367))|0; + $2369 = HEAP32[$yymsp>>2]|0; + $2370 = (($2369) + ($2368<<4)|0); + $2371 = HEAP16[$2370>>1]|0; + $2372 = $2371&65535; + $2373 = HEAP32[$yygoto>>2]|0; + $2374 = $2373&255; + $2375 = (_yy_find_reduce_action($2372,$2374)|0); + HEAP32[$yyact>>2] = $2375; + $2376 = HEAP32[$yyact>>2]|0; + $2377 = ($2376|0)<(642); + if (!($2377)) { + $2399 = HEAP32[$0>>2]|0; + _yy_accept($2399); + STACKTOP = sp;return; + } + $2378 = HEAP32[$yysize>>2]|0; + $2379 = ($2378|0)!=(0); + $2380 = HEAP32[$0>>2]|0; + if ($2379) { + $2381 = HEAP32[$2380>>2]|0; + $2382 = (($2381) + 1)|0; + HEAP32[$2380>>2] = $2382; + $2383 = HEAP32[$yysize>>2]|0; + $2384 = (($2383) - 1)|0; + $2385 = HEAP32[$yymsp>>2]|0; + $2386 = (0 - ($2384))|0; + $2387 = (($2385) + ($2386<<4)|0); + HEAP32[$yymsp>>2] = $2387; + $2388 = HEAP32[$yyact>>2]|0; + $2389 = $2388&65535; + $2390 = HEAP32[$yymsp>>2]|0; + HEAP16[$2390>>1] = $2389; + $2391 = HEAP32[$yygoto>>2]|0; + $2392 = $2391&255; + $2393 = HEAP32[$yymsp>>2]|0; + $2394 = (($2393) + 2|0); + HEAP8[$2394>>0] = $2392; + $2395 = HEAP32[$yymsp>>2]|0; + $2396 = (($2395) + 4|0); + ;HEAP32[$2396+0>>2]=HEAP32[$yygotominor+0>>2]|0;HEAP32[$2396+4>>2]=HEAP32[$yygotominor+4>>2]|0;HEAP32[$2396+8>>2]=HEAP32[$yygotominor+8>>2]|0; + STACKTOP = sp;return; + } else { + $2397 = HEAP32[$yyact>>2]|0; + $2398 = HEAP32[$yygoto>>2]|0; + _yy_shift($2380,$2397,$2398,$yygotominor); + STACKTOP = sp;return; + } +} +function _yy_syntax_error($yypParser,$yymajor,$yyminor) { + $yypParser = $yypParser|0; + $yymajor = $yymajor|0; + $yyminor = $yyminor|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $pParse = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 12|0; + $1 = sp + 4|0; + $pParse = sp + 8|0; + HEAP32[$0>>2] = $yypParser; + HEAP32[$1>>2] = $yymajor; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 8|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pParse>>2] = $4; + $5 = HEAP32[$pParse>>2]|0; + HEAP32[$vararg_buffer>>2] = $yyminor; + _sqlite3ErrorMsg($5,16504,$vararg_buffer); + $6 = HEAP32[$pParse>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 8|0); + HEAP32[$8>>2] = $6; + STACKTOP = sp;return; +} +function _sqlite3BeginParse($pParse,$explainFlag) { + $pParse = $pParse|0; + $explainFlag = $explainFlag|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $explainFlag; + $2 = HEAP32[$1>>2]|0; + $3 = $2&255; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 450|0); + HEAP8[$5>>0] = $3; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 440|0); + HEAP32[$7>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3FinishCoding($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; + var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; + var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; + var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0, $iDb = 0, $mask = 0, $pEL = 0, $v = 0, $vtab = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $db = sp; + $v = sp + 4|0; + $mask = sp + 8|0; + $iDb = sp + 12|0; + $i = sp + 16|0; + $vtab = sp + 20|0; + $pEL = sp + 24|0; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$db>>2] = $2; + $3 = HEAP32[$db>>2]|0; + $4 = (($3) + 64|0); + $5 = HEAP8[$4>>0]|0; + $6 = ($5<<24>>24)!=(0); + if ($6) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 18|0); + $9 = HEAP8[$8>>0]|0; + $10 = ($9<<24>>24)!=(0); + if ($10) { + STACKTOP = sp;return; + } + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 64|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(0); + if ($14) { + STACKTOP = sp;return; + } + $15 = HEAP32[$0>>2]|0; + $16 = (_sqlite3GetVdbe($15)|0); + HEAP32[$v>>2] = $16; + $17 = HEAP32[$v>>2]|0; + $18 = ($17|0)!=(0|0); + do { + if ($18) { + while(1) { + $19 = HEAP32[$v>>2]|0; + $20 = (_sqlite3VdbeDeletePriorOpcode($19,58)|0); + $21 = ($20|0)!=(0); + if (!($21)) { + break; + } + } + $22 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp0($22,24)|0); + $23 = HEAP32[$db>>2]|0; + $24 = (($23) + 64|0); + $25 = HEAP8[$24>>0]|0; + $26 = $25&255; + $27 = ($26|0)==(0); + if ($27) { + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 332|0); + $30 = HEAP32[$29>>2]|0; + $31 = ($30|0)!=(0); + if (!($31)) { + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 316|0); + $34 = HEAP32[$33>>2]|0; + $35 = ($34|0)!=(0|0); + if (!($35)) { + break; + } + } + $36 = HEAP32[$v>>2]|0; + _sqlite3VdbeJumpHere($36,0); + HEAP32[$iDb>>2] = 0; + HEAP32[$mask>>2] = 1; + while(1) { + $37 = HEAP32[$iDb>>2]|0; + $38 = HEAP32[$db>>2]|0; + $39 = (($38) + 20|0); + $40 = HEAP32[$39>>2]|0; + $41 = ($37|0)<($40|0); + if (!($41)) { + break; + } + $42 = HEAP32[$mask>>2]|0; + $43 = HEAP32[$0>>2]|0; + $44 = (($43) + 332|0); + $45 = HEAP32[$44>>2]|0; + $46 = $42 & $45; + $47 = ($46|0)==(0); + if (!($47)) { + $48 = HEAP32[$v>>2]|0; + $49 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeUsesBtree($48,$49); + $50 = HEAP32[$v>>2]|0; + $51 = HEAP32[$iDb>>2]|0; + $52 = HEAP32[$mask>>2]|0; + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 328|0); + $55 = HEAP32[$54>>2]|0; + $56 = $52 & $55; + $57 = ($56|0)!=(0); + $58 = $57&1; + $59 = HEAP32[$iDb>>2]|0; + $60 = HEAP32[$0>>2]|0; + $61 = (($60) + 336|0); + $62 = (($61) + ($59<<2)|0); + $63 = HEAP32[$62>>2]|0; + $64 = HEAP32[$iDb>>2]|0; + $65 = HEAP32[$db>>2]|0; + $66 = (($65) + 16|0); + $67 = HEAP32[$66>>2]|0; + $68 = (($67) + ($64<<4)|0); + $69 = (($68) + 12|0); + $70 = HEAP32[$69>>2]|0; + $71 = (($70) + 4|0); + $72 = HEAP32[$71>>2]|0; + (_sqlite3VdbeAddOp4Int($50,4,$51,$58,$63,$72)|0); + $73 = HEAP32[$db>>2]|0; + $74 = (($73) + 132|0); + $75 = (($74) + 5|0); + $76 = HEAP8[$75>>0]|0; + $77 = $76&255; + $78 = ($77|0)==(0); + if ($78) { + $79 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($79,1); + } + } + $80 = HEAP32[$mask>>2]|0; + $81 = $80 << 1; + HEAP32[$mask>>2] = $81; + $82 = HEAP32[$iDb>>2]|0; + $83 = (($82) + 1)|0; + HEAP32[$iDb>>2] = $83; + } + HEAP32[$i>>2] = 0; + while(1) { + $84 = HEAP32[$i>>2]|0; + $85 = HEAP32[$0>>2]|0; + $86 = (($85) + 452|0); + $87 = HEAP32[$86>>2]|0; + $88 = ($84|0)<($87|0); + if (!($88)) { + break; + } + $89 = HEAP32[$db>>2]|0; + $90 = HEAP32[$i>>2]|0; + $91 = HEAP32[$0>>2]|0; + $92 = (($91) + 520|0); + $93 = HEAP32[$92>>2]|0; + $94 = (($93) + ($90<<2)|0); + $95 = HEAP32[$94>>2]|0; + $96 = (_sqlite3GetVTable($89,$95)|0); + HEAP32[$vtab>>2] = $96; + $97 = HEAP32[$v>>2]|0; + $98 = HEAP32[$vtab>>2]|0; + (_sqlite3VdbeAddOp4($97,141,0,0,0,$98,-10)|0); + $99 = HEAP32[$i>>2]|0; + $100 = (($99) + 1)|0; + HEAP32[$i>>2] = $100; + } + $101 = HEAP32[$0>>2]|0; + $102 = (($101) + 452|0); + HEAP32[$102>>2] = 0; + $103 = HEAP32[$0>>2]|0; + _codeTableLocks($103); + $104 = HEAP32[$0>>2]|0; + _sqlite3AutoincrementBegin($104); + $105 = HEAP32[$0>>2]|0; + $106 = (($105) + 316|0); + $107 = HEAP32[$106>>2]|0; + $108 = ($107|0)!=(0|0); + L30: do { + if ($108) { + $109 = HEAP32[$0>>2]|0; + $110 = (($109) + 316|0); + $111 = HEAP32[$110>>2]|0; + HEAP32[$pEL>>2] = $111; + $112 = HEAP32[$0>>2]|0; + $113 = (($112) + 23|0); + HEAP8[$113>>0] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $114 = HEAP32[$i>>2]|0; + $115 = HEAP32[$pEL>>2]|0; + $116 = HEAP32[$115>>2]|0; + $117 = ($114|0)<($116|0); + if (!($117)) { + break L30; + } + $118 = HEAP32[$0>>2]|0; + $119 = HEAP32[$i>>2]|0; + $120 = HEAP32[$pEL>>2]|0; + $121 = (($120) + 4|0); + $122 = HEAP32[$121>>2]|0; + $123 = (($122) + (($119*20)|0)|0); + $124 = HEAP32[$123>>2]|0; + $125 = HEAP32[$i>>2]|0; + $126 = HEAP32[$pEL>>2]|0; + $127 = (($126) + 4|0); + $128 = HEAP32[$127>>2]|0; + $129 = (($128) + (($125*20)|0)|0); + $130 = (($129) + 16|0); + $131 = HEAP32[$130>>2]|0; + _sqlite3ExprCode($118,$124,$131); + $132 = HEAP32[$i>>2]|0; + $133 = (($132) + 1)|0; + HEAP32[$i>>2] = $133; + } + } + } while(0); + $134 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($134,16,0,1)|0); + } + } + } while(0); + $135 = HEAP32[$v>>2]|0; + $136 = ($135|0)!=(0|0); + if ($136) { + $137 = HEAP32[$0>>2]|0; + $138 = (($137) + 64|0); + $139 = HEAP32[$138>>2]|0; + $140 = ($139|0)==(0); + if ($140) { + $141 = HEAP32[$db>>2]|0; + $142 = (($141) + 64|0); + $143 = HEAP8[$142>>0]|0; + $144 = ($143<<24>>24)!=(0); + if ($144) { + label = 30; + } else { + $145 = HEAP32[$0>>2]|0; + $146 = (($145) + 404|0); + $147 = HEAP32[$146>>2]|0; + $148 = ($147|0)!=(0|0); + if ($148) { + $149 = HEAP32[$0>>2]|0; + $150 = (($149) + 68|0); + $151 = HEAP32[$150>>2]|0; + $152 = ($151|0)==(0); + if ($152) { + $153 = HEAP32[$0>>2]|0; + $154 = (($153) + 68|0); + HEAP32[$154>>2] = 1; + } + } + $155 = HEAP32[$v>>2]|0; + $156 = HEAP32[$0>>2]|0; + _sqlite3VdbeMakeReady($155,$156); + $157 = HEAP32[$0>>2]|0; + $158 = (($157) + 12|0); + HEAP32[$158>>2] = 101; + $159 = HEAP32[$0>>2]|0; + $160 = (($159) + 16|0); + HEAP8[$160>>0] = 0; + } + } else { + label = 30; + } + } else { + label = 30; + } + if ((label|0) == 30) { + $161 = HEAP32[$0>>2]|0; + $162 = (($161) + 12|0); + HEAP32[$162>>2] = 1; + } + $163 = HEAP32[$0>>2]|0; + $164 = (($163) + 68|0); + HEAP32[$164>>2] = 0; + $165 = HEAP32[$0>>2]|0; + $166 = (($165) + 72|0); + HEAP32[$166>>2] = 0; + $167 = HEAP32[$0>>2]|0; + $168 = (($167) + 76|0); + HEAP32[$168>>2] = 0; + $169 = HEAP32[$0>>2]|0; + $170 = (($169) + 440|0); + HEAP32[$170>>2] = 0; + $171 = HEAP32[$0>>2]|0; + $172 = (($171) + 332|0); + HEAP32[$172>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3BeginTransaction($pParse,$type) { + $pParse = $pParse|0; + $type = $type|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $db = sp + 4|0; + $v = sp + 8|0; + $i = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $type; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (_sqlite3AuthCheck($4,22,33560,0,0)|0); + $6 = ($5|0)!=(0); + if ($6) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + $8 = (_sqlite3GetVdbe($7)|0); + HEAP32[$v>>2] = $8; + $9 = HEAP32[$v>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + STACKTOP = sp;return; + } + $11 = HEAP32[$1>>2]|0; + $12 = ($11|0)!=(7); + L7: do { + if ($12) { + HEAP32[$i>>2] = 0; + while(1) { + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$db>>2]|0; + $15 = (($14) + 20|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($13|0)<($16|0); + if (!($17)) { + break L7; + } + $18 = HEAP32[$v>>2]|0; + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = ($20|0)==(9); + $22 = $21&1; + $23 = (($22) + 1)|0; + (_sqlite3VdbeAddOp2($18,4,$19,$23)|0); + $24 = HEAP32[$v>>2]|0; + $25 = HEAP32[$i>>2]|0; + _sqlite3VdbeUsesBtree($24,$25); + $26 = HEAP32[$i>>2]|0; + $27 = (($26) + 1)|0; + HEAP32[$i>>2] = $27; + } + } + } while(0); + $28 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($28,3,0,0)|0); + STACKTOP = sp;return; +} +function _sqlite3CommitTransaction($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $v = sp; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3AuthCheck($1,22,33592,0,0)|0); + $3 = ($2|0)!=(0); + if ($3) { + STACKTOP = sp;return; + } + $4 = HEAP32[$0>>2]|0; + $5 = (_sqlite3GetVdbe($4)|0); + HEAP32[$v>>2] = $5; + $6 = HEAP32[$v>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + STACKTOP = sp;return; + } + $8 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($8,3,1,0)|0); + STACKTOP = sp;return; +} +function _sqlite3RollbackTransaction($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $v = sp; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3AuthCheck($1,22,33576,0,0)|0); + $3 = ($2|0)!=(0); + if ($3) { + STACKTOP = sp;return; + } + $4 = HEAP32[$0>>2]|0; + $5 = (_sqlite3GetVdbe($4)|0); + HEAP32[$v>>2] = $5; + $6 = HEAP32[$v>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + STACKTOP = sp;return; + } + $8 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($8,3,1,1)|0); + STACKTOP = sp;return; +} +function _sqlite3Savepoint($pParse,$op,$pName) { + $pParse = $pParse|0; + $op = $op|0; + $pName = $pName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $v = 0, $zName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $zName = sp + 8|0; + $v = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $op; + HEAP32[$2>>2] = $pName; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = (_sqlite3NameFromToken($4,$5)|0); + HEAP32[$zName>>2] = $6; + $7 = HEAP32[$zName>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + STACKTOP = sp;return; + } + $9 = HEAP32[$0>>2]|0; + $10 = (_sqlite3GetVdbe($9)|0); + HEAP32[$v>>2] = $10; + $11 = HEAP32[$v>>2]|0; + $12 = ($11|0)!=(0|0); + if ($12) { + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = (33544 + ($14<<2)|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$zName>>2]|0; + $18 = (_sqlite3AuthCheck($13,32,$16,$17,0)|0); + $19 = ($18|0)!=(0); + if (!($19)) { + $23 = HEAP32[$v>>2]|0; + $24 = HEAP32[$1>>2]|0; + $25 = HEAP32[$zName>>2]|0; + (_sqlite3VdbeAddOp4($23,2,$24,0,0,$25,-1)|0); + STACKTOP = sp;return; + } + } + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$zName>>2]|0; + _sqlite3DbFree($21,$22); + STACKTOP = sp;return; +} +function _sqlite3StartTable($pParse,$pName1,$pName2,$isTemp,$isView,$isVirtual,$noErr) { + $pParse = $pParse|0; + $pName1 = $pName1|0; + $pName2 = $pName2|0; + $isTemp = $isTemp|0; + $isView = $isView|0; + $isVirtual = $isVirtual|0; + $noErr = $noErr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; + var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; + var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; + var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $code = 0, $db = 0, $fileFormat = 0, $iDb = 0, $j1 = 0, $pName = 0, $pTable = 0; + var $reg1 = 0, $reg2 = 0, $reg3 = 0, $v = 0, $vararg_buffer3 = 0, $zDb = 0, $zDb1 = 0, $zName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $vararg_buffer3 = sp; + $0 = sp + 80|0; + $1 = sp + 76|0; + $2 = sp + 72|0; + $3 = sp + 68|0; + $4 = sp + 64|0; + $5 = sp + 60|0; + $6 = sp + 56|0; + $pTable = sp + 52|0; + $zName = sp + 48|0; + $db = sp + 44|0; + $v = sp + 84|0; + $iDb = sp + 16|0; + $pName = sp + 12|0; + $code = sp + 4|0; + $zDb = sp + 8|0; + $zDb1 = sp + 36|0; + $j1 = sp + 20|0; + $fileFormat = sp + 24|0; + $reg1 = sp + 28|0; + $reg2 = sp + 32|0; + $reg3 = sp + 40|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pName1; + HEAP32[$2>>2] = $pName2; + HEAP32[$3>>2] = $isTemp; + HEAP32[$4>>2] = $isView; + HEAP32[$5>>2] = $isVirtual; + HEAP32[$6>>2] = $noErr; + HEAP32[$zName>>2] = 0; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$db>>2] = $8; + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = (_sqlite3TwoPartName($9,$10,$11,$pName)|0); + HEAP32[$iDb>>2] = $12; + $13 = HEAP32[$iDb>>2]|0; + $14 = ($13|0)<(0); + if ($14) { + STACKTOP = sp;return; + } + $15 = HEAP32[$3>>2]|0; + $16 = ($15|0)!=(0); + if ($16) { + $17 = HEAP32[$2>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = ($19>>>0)>(0); + if ($20) { + $21 = HEAP32[$iDb>>2]|0; + $22 = ($21|0)!=(1); + if ($22) { + $23 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($23,33432,$vararg_buffer3); + STACKTOP = sp;return; + } + } + } + $24 = HEAP32[$3>>2]|0; + $25 = ($24|0)!=(0); + if ($25) { + HEAP32[$iDb>>2] = 1; + } + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 496|0); + $28 = HEAP32[$pName>>2]|0; + ;HEAP32[$27+0>>2]=HEAP32[$28+0>>2]|0;HEAP32[$27+4>>2]=HEAP32[$28+4>>2]|0; + $29 = HEAP32[$db>>2]|0; + $30 = HEAP32[$pName>>2]|0; + $31 = (_sqlite3NameFromToken($29,$30)|0); + HEAP32[$zName>>2] = $31; + $32 = HEAP32[$zName>>2]|0; + $33 = ($32|0)==(0|0); + if ($33) { + STACKTOP = sp;return; + } + $34 = HEAP32[$0>>2]|0; + $35 = HEAP32[$zName>>2]|0; + $36 = (_sqlite3CheckObjectName($34,$35)|0); + $37 = (0)!=($36|0); + L16: do { + if (!($37)) { + $38 = HEAP32[$db>>2]|0; + $39 = (($38) + 132|0); + $40 = (($39) + 4|0); + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = ($42|0)==(1); + if ($43) { + HEAP32[$3>>2] = 1; + } + $44 = HEAP32[$iDb>>2]|0; + $45 = HEAP32[$db>>2]|0; + $46 = (($45) + 16|0); + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + ($44<<4)|0); + $49 = HEAP32[$48>>2]|0; + HEAP32[$zDb>>2] = $49; + $50 = HEAP32[$0>>2]|0; + $51 = HEAP32[$3>>2]|0; + $52 = ($51|0)==(1); + $53 = $52 ? 21432 : 21456; + $54 = HEAP32[$zDb>>2]|0; + $55 = (_sqlite3AuthCheck($50,18,$53,0,$54)|0); + $56 = ($55|0)!=(0); + if (!($56)) { + $57 = HEAP32[$4>>2]|0; + $58 = ($57|0)!=(0); + $59 = HEAP32[$3>>2]|0; + $60 = ($59|0)!=(0); + do { + if ($58) { + if ($60) { + HEAP32[$code>>2] = 6; + break; + } else { + HEAP32[$code>>2] = 8; + break; + } + } else { + if ($60) { + HEAP32[$code>>2] = 4; + break; + } else { + HEAP32[$code>>2] = 2; + break; + } + } + } while(0); + $61 = HEAP32[$5>>2]|0; + $62 = ($61|0)!=(0); + if (!($62)) { + $63 = HEAP32[$0>>2]|0; + $64 = HEAP32[$code>>2]|0; + $65 = HEAP32[$zName>>2]|0; + $66 = HEAP32[$zDb>>2]|0; + $67 = (_sqlite3AuthCheck($63,$64,$65,0,$66)|0); + $68 = ($67|0)!=(0); + if ($68) { + break; + } + } + $69 = HEAP32[$0>>2]|0; + $70 = (($69) + 451|0); + $71 = HEAP8[$70>>0]|0; + $72 = ($71<<24>>24)!=(0); + do { + if (!($72)) { + $73 = HEAP32[$iDb>>2]|0; + $74 = HEAP32[$db>>2]|0; + $75 = (($74) + 16|0); + $76 = HEAP32[$75>>2]|0; + $77 = (($76) + ($73<<4)|0); + $78 = HEAP32[$77>>2]|0; + HEAP32[$zDb1>>2] = $78; + $79 = HEAP32[$0>>2]|0; + $80 = (_sqlite3ReadSchema($79)|0); + $81 = (0)!=($80|0); + if ($81) { + break L16; + } + $82 = HEAP32[$db>>2]|0; + $83 = HEAP32[$zName>>2]|0; + $84 = HEAP32[$zDb1>>2]|0; + $85 = (_sqlite3FindTable($82,$83,$84)|0); + HEAP32[$pTable>>2] = $85; + $86 = HEAP32[$pTable>>2]|0; + $87 = ($86|0)!=(0|0); + if (!($87)) { + $93 = HEAP32[$db>>2]|0; + $94 = HEAP32[$zName>>2]|0; + $95 = HEAP32[$zDb1>>2]|0; + $96 = (_sqlite3FindIndex($93,$94,$95)|0); + $97 = ($96|0)!=(0|0); + if (!($97)) { + break; + } + $98 = HEAP32[$0>>2]|0; + $99 = HEAP32[$zName>>2]|0; + HEAP32[$vararg_buffer3>>2] = $99; + _sqlite3ErrorMsg($98,33504,$vararg_buffer3); + break L16; + } + $88 = HEAP32[$6>>2]|0; + $89 = ($88|0)!=(0); + $90 = HEAP32[$0>>2]|0; + if ($89) { + $92 = HEAP32[$iDb>>2]|0; + _sqlite3CodeVerifySchema($90,$92); + break L16; + } else { + $91 = HEAP32[$pName>>2]|0; + HEAP32[$vararg_buffer3>>2] = $91; + _sqlite3ErrorMsg($90,33480,$vararg_buffer3); + break L16; + } + } + } while(0); + $100 = HEAP32[$db>>2]|0; + $101 = (_sqlite3DbMallocZero($100,76)|0); + HEAP32[$pTable>>2] = $101; + $102 = HEAP32[$pTable>>2]|0; + $103 = ($102|0)==(0|0); + if ($103) { + $104 = HEAP32[$db>>2]|0; + $105 = (($104) + 64|0); + HEAP8[$105>>0] = 1; + $106 = HEAP32[$0>>2]|0; + $107 = (($106) + 12|0); + HEAP32[$107>>2] = 7; + $108 = HEAP32[$0>>2]|0; + $109 = (($108) + 64|0); + $110 = HEAP32[$109>>2]|0; + $111 = (($110) + 1)|0; + HEAP32[$109>>2] = $111; + break; + } + $112 = HEAP32[$zName>>2]|0; + $113 = HEAP32[$pTable>>2]|0; + HEAP32[$113>>2] = $112; + $114 = HEAP32[$pTable>>2]|0; + $115 = (($114) + 36|0); + HEAP16[$115>>1] = -1; + $116 = HEAP32[$iDb>>2]|0; + $117 = HEAP32[$db>>2]|0; + $118 = (($117) + 16|0); + $119 = HEAP32[$118>>2]|0; + $120 = (($119) + ($116<<4)|0); + $121 = (($120) + 12|0); + $122 = HEAP32[$121>>2]|0; + $123 = HEAP32[$pTable>>2]|0; + $124 = (($123) + 68|0); + HEAP32[$124>>2] = $122; + $125 = HEAP32[$pTable>>2]|0; + $126 = (($125) + 40|0); + HEAP16[$126>>1] = 1; + $127 = HEAP32[$pTable>>2]|0; + $128 = (($127) + 28|0); + HEAP16[$128>>1] = 200; + $129 = HEAP32[$pTable>>2]|0; + $130 = HEAP32[$0>>2]|0; + $131 = (($130) + 484|0); + HEAP32[$131>>2] = $129; + $132 = HEAP32[$0>>2]|0; + $133 = (($132) + 18|0); + $134 = HEAP8[$133>>0]|0; + $135 = ($134<<24>>24)!=(0); + if (!($135)) { + $136 = HEAP32[$zName>>2]|0; + $137 = (_strcmp($136,22680)|0); + $138 = ($137|0)==(0); + if ($138) { + $139 = HEAP32[$pTable>>2]|0; + $140 = HEAP32[$pTable>>2]|0; + $141 = (($140) + 68|0); + $142 = HEAP32[$141>>2]|0; + $143 = (($142) + 72|0); + HEAP32[$143>>2] = $139; + } + } + $144 = HEAP32[$db>>2]|0; + $145 = (($144) + 132|0); + $146 = (($145) + 5|0); + $147 = HEAP8[$146>>0]|0; + $148 = ($147<<24>>24)!=(0); + if ($148) { + STACKTOP = sp;return; + } + $149 = HEAP32[$0>>2]|0; + $150 = (_sqlite3GetVdbe($149)|0); + HEAP32[$v>>2] = $150; + $151 = ($150|0)!=(0|0); + if (!($151)) { + STACKTOP = sp;return; + } + $152 = HEAP32[$0>>2]|0; + $153 = HEAP32[$iDb>>2]|0; + _sqlite3BeginWriteOperation($152,0,$153); + $154 = HEAP32[$5>>2]|0; + $155 = ($154|0)!=(0); + if ($155) { + $156 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp0($156,141)|0); + } + $157 = HEAP32[$0>>2]|0; + $158 = (($157) + 72|0); + $159 = HEAP32[$158>>2]|0; + $160 = (($159) + 1)|0; + HEAP32[$158>>2] = $160; + $161 = HEAP32[$0>>2]|0; + $162 = (($161) + 384|0); + HEAP32[$162>>2] = $160; + HEAP32[$reg1>>2] = $160; + $163 = HEAP32[$0>>2]|0; + $164 = (($163) + 72|0); + $165 = HEAP32[$164>>2]|0; + $166 = (($165) + 1)|0; + HEAP32[$164>>2] = $166; + $167 = HEAP32[$0>>2]|0; + $168 = (($167) + 388|0); + HEAP32[$168>>2] = $166; + HEAP32[$reg2>>2] = $166; + $169 = HEAP32[$0>>2]|0; + $170 = (($169) + 72|0); + $171 = HEAP32[$170>>2]|0; + $172 = (($171) + 1)|0; + HEAP32[$170>>2] = $172; + HEAP32[$reg3>>2] = $172; + $173 = HEAP32[$v>>2]|0; + $174 = HEAP32[$iDb>>2]|0; + $175 = HEAP32[$reg3>>2]|0; + (_sqlite3VdbeAddOp3($173,50,$174,$175,2)|0); + $176 = HEAP32[$v>>2]|0; + $177 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeUsesBtree($176,$177); + $178 = HEAP32[$v>>2]|0; + $179 = HEAP32[$reg3>>2]|0; + $180 = (_sqlite3VdbeAddOp1($178,44,$179)|0); + HEAP32[$j1>>2] = $180; + $181 = HEAP32[$db>>2]|0; + $182 = (($181) + 24|0); + $183 = HEAP32[$182>>2]|0; + $184 = $183 & 32768; + $185 = ($184|0)!=(0); + $186 = $185 ? 1 : 4; + HEAP32[$fileFormat>>2] = $186; + $187 = HEAP32[$v>>2]|0; + $188 = HEAP32[$fileFormat>>2]|0; + $189 = HEAP32[$reg3>>2]|0; + (_sqlite3VdbeAddOp2($187,25,$188,$189)|0); + $190 = HEAP32[$v>>2]|0; + $191 = HEAP32[$iDb>>2]|0; + $192 = HEAP32[$reg3>>2]|0; + (_sqlite3VdbeAddOp3($190,51,$191,2,$192)|0); + $193 = HEAP32[$v>>2]|0; + $194 = HEAP32[$db>>2]|0; + $195 = (($194) + 16|0); + $196 = HEAP32[$195>>2]|0; + $197 = (($196) + 12|0); + $198 = HEAP32[$197>>2]|0; + $199 = (($198) + 77|0); + $200 = HEAP8[$199>>0]|0; + $201 = $200&255; + $202 = HEAP32[$reg3>>2]|0; + (_sqlite3VdbeAddOp2($193,25,$201,$202)|0); + $203 = HEAP32[$v>>2]|0; + $204 = HEAP32[$iDb>>2]|0; + $205 = HEAP32[$reg3>>2]|0; + (_sqlite3VdbeAddOp3($203,51,$204,5,$205)|0); + $206 = HEAP32[$v>>2]|0; + $207 = HEAP32[$j1>>2]|0; + _sqlite3VdbeJumpHere($206,$207); + $208 = HEAP32[$4>>2]|0; + $209 = ($208|0)!=(0); + if ($209) { + label = 41; + } else { + $210 = HEAP32[$5>>2]|0; + $211 = ($210|0)!=(0); + if ($211) { + label = 41; + } else { + $214 = HEAP32[$v>>2]|0; + $215 = HEAP32[$iDb>>2]|0; + $216 = HEAP32[$reg2>>2]|0; + $217 = (_sqlite3VdbeAddOp2($214,118,$215,$216)|0); + $218 = HEAP32[$0>>2]|0; + $219 = (($218) + 416|0); + HEAP32[$219>>2] = $217; + } + } + if ((label|0) == 41) { + $212 = HEAP32[$v>>2]|0; + $213 = HEAP32[$reg2>>2]|0; + (_sqlite3VdbeAddOp2($212,25,0,$213)|0); + } + $220 = HEAP32[$0>>2]|0; + $221 = HEAP32[$iDb>>2]|0; + _sqlite3OpenMasterTable($220,$221); + $222 = HEAP32[$v>>2]|0; + $223 = HEAP32[$reg1>>2]|0; + (_sqlite3VdbeAddOp2($222,69,0,$223)|0); + $224 = HEAP32[$v>>2]|0; + $225 = HEAP32[$reg3>>2]|0; + (_sqlite3VdbeAddOp2($224,28,0,$225)|0); + $226 = HEAP32[$v>>2]|0; + $227 = HEAP32[$reg3>>2]|0; + $228 = HEAP32[$reg1>>2]|0; + (_sqlite3VdbeAddOp3($226,70,0,$227,$228)|0); + $229 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($229,8); + $230 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp0($230,58)|0); + STACKTOP = sp;return; + } + } + } while(0); + $231 = HEAP32[$db>>2]|0; + $232 = HEAP32[$zName>>2]|0; + _sqlite3DbFree($231,$232); + STACKTOP = sp;return; +} +function _sqlite3EndTable($pParse,$pCons,$pEnd,$tabOpts,$pSelect) { + $pParse = $pParse|0; + $pCons = $pCons|0; + $pEnd = $pEnd|0; + $tabOpts = $tabOpts|0; + $pSelect = $pSelect|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $dest = 0, $iDb = 0, $n = 0, $nName = 0, $p = 0; + var $pDb = 0, $pEnd2 = 0, $pIdx = 0, $pOld = 0, $pSchema = 0, $pSelTab = 0, $v = 0, $vararg_buffer21 = 0, $vararg_ptr11 = 0, $vararg_ptr12 = 0, $vararg_ptr13 = 0, $vararg_ptr14 = 0, $vararg_ptr15 = 0, $vararg_ptr16 = 0, $vararg_ptr17 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $zName = 0, $zStmt = 0, $zType = 0; + var $zType2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; + $vararg_buffer21 = sp; + $0 = sp + 124|0; + $1 = sp + 120|0; + $2 = sp + 116|0; + $3 = sp + 132|0; + $4 = sp + 112|0; + $p = sp + 108|0; + $db = sp + 104|0; + $iDb = sp + 100|0; + $pIdx = sp + 96|0; + $n = sp + 92|0; + $v = sp + 128|0; + $zType = sp + 64|0; + $zType2 = sp + 60|0; + $zStmt = sp + 32|0; + $dest = sp + 36|0; + $pSelTab = sp + 56|0; + $pEnd2 = sp + 84|0; + $pDb = sp + 68|0; + $pOld = sp + 72|0; + $pSchema = sp + 76|0; + $zName = sp + 80|0; + $nName = sp + 88|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pCons; + HEAP32[$2>>2] = $pEnd; + HEAP8[$3>>0] = $tabOpts; + HEAP32[$4>>2] = $pSelect; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$2>>2]|0; + $8 = ($7|0)==(0|0); + if ($8) { + $9 = HEAP32[$4>>2]|0; + $10 = ($9|0)==(0|0); + if ($10) { + STACKTOP = sp;return; + } + } + $11 = HEAP32[$db>>2]|0; + $12 = (($11) + 64|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = ($14|0)!=(0); + if ($15) { + STACKTOP = sp;return; + } + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 484|0); + $18 = HEAP32[$17>>2]|0; + HEAP32[$p>>2] = $18; + $19 = HEAP32[$p>>2]|0; + $20 = ($19|0)==(0|0); + if ($20) { + STACKTOP = sp;return; + } + $21 = HEAP32[$db>>2]|0; + $22 = (($21) + 132|0); + $23 = (($22) + 5|0); + $24 = HEAP8[$23>>0]|0; + $25 = ($24<<24>>24)!=(0); + if ($25) { + $26 = HEAP32[$db>>2]|0; + $27 = (($26) + 132|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$p>>2]|0; + $30 = (($29) + 32|0); + HEAP32[$30>>2] = $28; + } + $31 = HEAP8[$3>>0]|0; + $32 = $31&255; + $33 = $32 & 32; + $34 = ($33|0)!=(0); + do { + if ($34) { + $35 = HEAP32[$p>>2]|0; + $36 = (($35) + 44|0); + $37 = HEAP8[$36>>0]|0; + $38 = $37&255; + $39 = $38 & 8; + $40 = ($39|0)!=(0); + if ($40) { + $41 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($41,33040,$vararg_buffer21); + STACKTOP = sp;return; + } + $42 = HEAP32[$p>>2]|0; + $43 = (($42) + 44|0); + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = $45 & 4; + $47 = ($46|0)==(0); + if ($47) { + $48 = HEAP32[$0>>2]|0; + $49 = HEAP32[$p>>2]|0; + $50 = HEAP32[$49>>2]|0; + HEAP32[$vararg_buffer21>>2] = $50; + _sqlite3ErrorMsg($48,33096,$vararg_buffer21); + break; + } else { + $51 = HEAP32[$p>>2]|0; + $52 = (($51) + 44|0); + $53 = HEAP8[$52>>0]|0; + $54 = $53&255; + $55 = $54 | 32; + $56 = $55&255; + HEAP8[$52>>0] = $56; + $57 = HEAP32[$0>>2]|0; + $58 = HEAP32[$p>>2]|0; + _convertToWithoutRowidTable($57,$58); + break; + } + } + } while(0); + $59 = HEAP32[$db>>2]|0; + $60 = HEAP32[$p>>2]|0; + $61 = (($60) + 68|0); + $62 = HEAP32[$61>>2]|0; + $63 = (_sqlite3SchemaToIndex($59,$62)|0); + HEAP32[$iDb>>2] = $63; + $64 = HEAP32[$p>>2]|0; + $65 = (($64) + 24|0); + $66 = HEAP32[$65>>2]|0; + $67 = ($66|0)!=(0|0); + if ($67) { + $68 = HEAP32[$0>>2]|0; + $69 = HEAP32[$p>>2]|0; + $70 = HEAP32[$p>>2]|0; + $71 = (($70) + 24|0); + $72 = HEAP32[$71>>2]|0; + _sqlite3ResolveSelfReference($68,$69,4,0,$72); + } + $73 = HEAP32[$p>>2]|0; + _estimateTableWidth($73); + $74 = HEAP32[$p>>2]|0; + $75 = (($74) + 8|0); + $76 = HEAP32[$75>>2]|0; + HEAP32[$pIdx>>2] = $76; + while(1) { + $77 = HEAP32[$pIdx>>2]|0; + $78 = ($77|0)!=(0|0); + if (!($78)) { + break; + } + $79 = HEAP32[$pIdx>>2]|0; + _estimateIndexWidth($79); + $80 = HEAP32[$pIdx>>2]|0; + $81 = (($80) + 20|0); + $82 = HEAP32[$81>>2]|0; + HEAP32[$pIdx>>2] = $82; + } + $83 = HEAP32[$db>>2]|0; + $84 = (($83) + 132|0); + $85 = (($84) + 5|0); + $86 = HEAP8[$85>>0]|0; + $87 = ($86<<24>>24)!=(0); + if (!($87)) { + $88 = HEAP32[$0>>2]|0; + $89 = (_sqlite3GetVdbe($88)|0); + HEAP32[$v>>2] = $89; + $90 = HEAP32[$v>>2]|0; + $91 = ($90|0)==(0|0); + if ($91) { + STACKTOP = sp;return; + } + $92 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp1($92,58,0)|0); + $93 = HEAP32[$p>>2]|0; + $94 = (($93) + 12|0); + $95 = HEAP32[$94>>2]|0; + $96 = ($95|0)==(0|0); + if ($96) { + HEAP32[$zType>>2] = 27864; + HEAP32[$zType2>>2] = 33128; + } else { + HEAP32[$zType>>2] = 31936; + HEAP32[$zType2>>2] = 33136; + } + $97 = HEAP32[$4>>2]|0; + $98 = ($97|0)!=(0|0); + do { + if ($98) { + $99 = HEAP32[$v>>2]|0; + $100 = HEAP32[$0>>2]|0; + $101 = (($100) + 388|0); + $102 = HEAP32[$101>>2]|0; + $103 = HEAP32[$iDb>>2]|0; + (_sqlite3VdbeAddOp3($99,53,1,$102,$103)|0); + $104 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($104,2); + $105 = HEAP32[$0>>2]|0; + $106 = (($105) + 68|0); + HEAP32[$106>>2] = 2; + _sqlite3SelectDestInit($dest,14,1); + $107 = HEAP32[$0>>2]|0; + $108 = HEAP32[$4>>2]|0; + (_sqlite3Select($107,$108,$dest)|0); + $109 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp1($109,58,1)|0); + $110 = HEAP32[$0>>2]|0; + $111 = (($110) + 64|0); + $112 = HEAP32[$111>>2]|0; + $113 = ($112|0)==(0); + if ($113) { + $114 = HEAP32[$0>>2]|0; + $115 = HEAP32[$4>>2]|0; + $116 = (_sqlite3ResultSetOfSelect($114,$115)|0); + HEAP32[$pSelTab>>2] = $116; + $117 = HEAP32[$pSelTab>>2]|0; + $118 = ($117|0)==(0|0); + if ($118) { + STACKTOP = sp;return; + } else { + $119 = HEAP32[$pSelTab>>2]|0; + $120 = (($119) + 38|0); + $121 = HEAP16[$120>>1]|0; + $122 = HEAP32[$p>>2]|0; + $123 = (($122) + 38|0); + HEAP16[$123>>1] = $121; + $124 = HEAP32[$pSelTab>>2]|0; + $125 = (($124) + 4|0); + $126 = HEAP32[$125>>2]|0; + $127 = HEAP32[$p>>2]|0; + $128 = (($127) + 4|0); + HEAP32[$128>>2] = $126; + $129 = HEAP32[$pSelTab>>2]|0; + $130 = (($129) + 38|0); + HEAP16[$130>>1] = 0; + $131 = HEAP32[$pSelTab>>2]|0; + $132 = (($131) + 4|0); + HEAP32[$132>>2] = 0; + $133 = HEAP32[$db>>2]|0; + $134 = HEAP32[$pSelTab>>2]|0; + _sqlite3DeleteTable($133,$134); + break; + } + } + } + } while(0); + $135 = HEAP32[$4>>2]|0; + $136 = ($135|0)!=(0|0); + if ($136) { + $137 = HEAP32[$db>>2]|0; + $138 = HEAP32[$p>>2]|0; + $139 = (_createTableStmt($137,$138)|0); + HEAP32[$zStmt>>2] = $139; + } else { + $140 = HEAP8[$3>>0]|0; + $141 = $140&255; + $142 = ($141|0)!=(0); + if ($142) { + $143 = HEAP32[$0>>2]|0; + $144 = (($143) + 504|0); + $146 = $144; + } else { + $145 = HEAP32[$2>>2]|0; + $146 = $145; + } + HEAP32[$pEnd2>>2] = $146; + $147 = HEAP32[$pEnd2>>2]|0; + $148 = HEAP32[$147>>2]|0; + $149 = HEAP32[$0>>2]|0; + $150 = (($149) + 496|0); + $151 = HEAP32[$150>>2]|0; + $152 = $148; + $153 = $151; + $154 = (($152) - ($153))|0; + HEAP32[$n>>2] = $154; + $155 = HEAP32[$pEnd2>>2]|0; + $156 = HEAP32[$155>>2]|0; + $157 = HEAP8[$156>>0]|0; + $158 = $157 << 24 >> 24; + $159 = ($158|0)!=(59); + if ($159) { + $160 = HEAP32[$pEnd2>>2]|0; + $161 = (($160) + 4|0); + $162 = HEAP32[$161>>2]|0; + $163 = HEAP32[$n>>2]|0; + $164 = (($163) + ($162))|0; + HEAP32[$n>>2] = $164; + } + $165 = HEAP32[$db>>2]|0; + $166 = HEAP32[$zType2>>2]|0; + $167 = HEAP32[$n>>2]|0; + $168 = HEAP32[$0>>2]|0; + $169 = (($168) + 496|0); + $170 = HEAP32[$169>>2]|0; + HEAP32[$vararg_buffer21>>2] = $166; + $vararg_ptr6 = (($vararg_buffer21) + 4|0); + HEAP32[$vararg_ptr6>>2] = $167; + $vararg_ptr7 = (($vararg_buffer21) + 8|0); + HEAP32[$vararg_ptr7>>2] = $170; + $171 = (_sqlite3MPrintf($165,33144,$vararg_buffer21)|0); + HEAP32[$zStmt>>2] = $171; + } + $172 = HEAP32[$0>>2]|0; + $173 = HEAP32[$iDb>>2]|0; + $174 = HEAP32[$db>>2]|0; + $175 = (($174) + 16|0); + $176 = HEAP32[$175>>2]|0; + $177 = (($176) + ($173<<4)|0); + $178 = HEAP32[$177>>2]|0; + $179 = HEAP32[$iDb>>2]|0; + $180 = ($179|0)==(1); + $181 = $180 ? 21432 : 21456; + $182 = HEAP32[$zType>>2]|0; + $183 = HEAP32[$p>>2]|0; + $184 = HEAP32[$183>>2]|0; + $185 = HEAP32[$p>>2]|0; + $186 = HEAP32[$185>>2]|0; + $187 = HEAP32[$0>>2]|0; + $188 = (($187) + 388|0); + $189 = HEAP32[$188>>2]|0; + $190 = HEAP32[$zStmt>>2]|0; + $191 = HEAP32[$0>>2]|0; + $192 = (($191) + 384|0); + $193 = HEAP32[$192>>2]|0; + HEAP32[$vararg_buffer21>>2] = $178; + $vararg_ptr11 = (($vararg_buffer21) + 4|0); + HEAP32[$vararg_ptr11>>2] = $181; + $vararg_ptr12 = (($vararg_buffer21) + 8|0); + HEAP32[$vararg_ptr12>>2] = $182; + $vararg_ptr13 = (($vararg_buffer21) + 12|0); + HEAP32[$vararg_ptr13>>2] = $184; + $vararg_ptr14 = (($vararg_buffer21) + 16|0); + HEAP32[$vararg_ptr14>>2] = $186; + $vararg_ptr15 = (($vararg_buffer21) + 20|0); + HEAP32[$vararg_ptr15>>2] = $189; + $vararg_ptr16 = (($vararg_buffer21) + 24|0); + HEAP32[$vararg_ptr16>>2] = $190; + $vararg_ptr17 = (($vararg_buffer21) + 28|0); + HEAP32[$vararg_ptr17>>2] = $193; + _sqlite3NestedParse($172,33160,$vararg_buffer21); + $194 = HEAP32[$db>>2]|0; + $195 = HEAP32[$zStmt>>2]|0; + _sqlite3DbFree($194,$195); + $196 = HEAP32[$0>>2]|0; + $197 = HEAP32[$iDb>>2]|0; + _sqlite3ChangeCookie($196,$197); + $198 = HEAP32[$p>>2]|0; + $199 = (($198) + 44|0); + $200 = HEAP8[$199>>0]|0; + $201 = $200&255; + $202 = $201 & 8; + $203 = ($202|0)!=(0); + if ($203) { + $204 = HEAP32[$iDb>>2]|0; + $205 = HEAP32[$db>>2]|0; + $206 = (($205) + 16|0); + $207 = HEAP32[$206>>2]|0; + $208 = (($207) + ($204<<4)|0); + HEAP32[$pDb>>2] = $208; + $209 = HEAP32[$pDb>>2]|0; + $210 = (($209) + 12|0); + $211 = HEAP32[$210>>2]|0; + $212 = (($211) + 72|0); + $213 = HEAP32[$212>>2]|0; + $214 = ($213|0)==(0|0); + if ($214) { + $215 = HEAP32[$0>>2]|0; + $216 = HEAP32[$pDb>>2]|0; + $217 = HEAP32[$216>>2]|0; + HEAP32[$vararg_buffer21>>2] = $217; + _sqlite3NestedParse($215,33248,$vararg_buffer21); + } + } + $218 = HEAP32[$v>>2]|0; + $219 = HEAP32[$iDb>>2]|0; + $220 = HEAP32[$db>>2]|0; + $221 = HEAP32[$p>>2]|0; + $222 = HEAP32[$221>>2]|0; + HEAP32[$vararg_buffer21>>2] = $222; + $223 = (_sqlite3MPrintf($220,33296,$vararg_buffer21)|0); + _sqlite3VdbeAddParseSchemaOp($218,$219,$223); + } + $224 = HEAP32[$db>>2]|0; + $225 = (($224) + 132|0); + $226 = (($225) + 5|0); + $227 = HEAP8[$226>>0]|0; + $228 = ($227<<24>>24)!=(0); + if (!($228)) { + STACKTOP = sp;return; + } + $229 = HEAP32[$p>>2]|0; + $230 = (($229) + 68|0); + $231 = HEAP32[$230>>2]|0; + HEAP32[$pSchema>>2] = $231; + $232 = HEAP32[$pSchema>>2]|0; + $233 = (($232) + 8|0); + $234 = HEAP32[$p>>2]|0; + $235 = HEAP32[$234>>2]|0; + $236 = HEAP32[$p>>2]|0; + $237 = HEAP32[$236>>2]|0; + $238 = (_sqlite3Strlen30($237)|0); + $239 = HEAP32[$p>>2]|0; + $240 = (_sqlite3HashInsert($233,$235,$238,$239)|0); + HEAP32[$pOld>>2] = $240; + $241 = HEAP32[$pOld>>2]|0; + $242 = ($241|0)!=(0|0); + if ($242) { + $243 = HEAP32[$db>>2]|0; + $244 = (($243) + 64|0); + HEAP8[$244>>0] = 1; + STACKTOP = sp;return; + } + $245 = HEAP32[$0>>2]|0; + $246 = (($245) + 484|0); + HEAP32[$246>>2] = 0; + $247 = HEAP32[$db>>2]|0; + $248 = (($247) + 24|0); + $249 = HEAP32[$248>>2]|0; + $250 = $249 | 2; + HEAP32[$248>>2] = $250; + $251 = HEAP32[$p>>2]|0; + $252 = (($251) + 12|0); + $253 = HEAP32[$252>>2]|0; + $254 = ($253|0)!=(0|0); + if ($254) { + STACKTOP = sp;return; + } + $255 = HEAP32[$0>>2]|0; + $256 = (($255) + 496|0); + $257 = HEAP32[$256>>2]|0; + HEAP32[$zName>>2] = $257; + $258 = HEAP32[$1>>2]|0; + $259 = HEAP32[$258>>2]|0; + $260 = ($259|0)==(0|0); + if ($260) { + $261 = HEAP32[$2>>2]|0; + HEAP32[$1>>2] = $261; + } + $262 = HEAP32[$1>>2]|0; + $263 = HEAP32[$262>>2]|0; + $264 = HEAP32[$zName>>2]|0; + $265 = $263; + $266 = $264; + $267 = (($265) - ($266))|0; + HEAP32[$nName>>2] = $267; + $268 = HEAP32[$zName>>2]|0; + $269 = HEAP32[$nName>>2]|0; + $270 = (_sqlite3Utf8CharLen($268,$269)|0); + $271 = (13 + ($270))|0; + $272 = HEAP32[$p>>2]|0; + $273 = (($272) + 48|0); + HEAP32[$273>>2] = $271; + STACKTOP = sp;return; +} +function _sqlite3AddColumn($pParse,$pName) { + $pParse = $pParse|0; + $pName = $pName|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aNew = 0, $db = 0, $i = 0, $p = 0, $pCol = 0, $vararg_buffer1 = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer1 = sp; + $0 = sp + 28|0; + $1 = sp + 24|0; + $p = sp + 20|0; + $i = sp + 32|0; + $z = sp + 8|0; + $pCol = sp + 4|0; + $db = sp + 12|0; + $aNew = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pName; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 484|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$p>>2] = $6; + $7 = ($6|0)==(0|0); + if ($7) { + STACKTOP = sp;return; + } + $8 = HEAP32[$p>>2]|0; + $9 = (($8) + 38|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10 << 16 >> 16; + $12 = (($11) + 1)|0; + $13 = HEAP32[$db>>2]|0; + $14 = (($13) + 88|0); + $15 = (($14) + 8|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($12|0)>($16|0); + if ($17) { + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$p>>2]|0; + $20 = HEAP32[$19>>2]|0; + HEAP32[$vararg_buffer1>>2] = $20; + _sqlite3ErrorMsg($18,32984,$vararg_buffer1); + STACKTOP = sp;return; + } + $21 = HEAP32[$db>>2]|0; + $22 = HEAP32[$1>>2]|0; + $23 = (_sqlite3NameFromToken($21,$22)|0); + HEAP32[$z>>2] = $23; + $24 = HEAP32[$z>>2]|0; + $25 = ($24|0)==(0|0); + if ($25) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $26 = HEAP32[$i>>2]|0; + $27 = HEAP32[$p>>2]|0; + $28 = (($27) + 38|0); + $29 = HEAP16[$28>>1]|0; + $30 = $29 << 16 >> 16; + $31 = ($26|0)<($30|0); + if (!($31)) { + break; + } + $32 = HEAP32[$z>>2]|0; + $33 = HEAP8[$32>>0]|0; + $34 = $33&255; + $35 = (784 + ($34)|0); + $36 = HEAP8[$35>>0]|0; + $37 = $36&255; + $38 = HEAP32[$i>>2]|0; + $39 = HEAP32[$p>>2]|0; + $40 = (($39) + 4|0); + $41 = HEAP32[$40>>2]|0; + $42 = (($41) + (($38*24)|0)|0); + $43 = HEAP32[$42>>2]|0; + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = (784 + ($45)|0); + $47 = HEAP8[$46>>0]|0; + $48 = $47&255; + $49 = ($37|0)==($48|0); + if ($49) { + $50 = HEAP32[$z>>2]|0; + $51 = (($50) + 1|0); + $52 = HEAP32[$i>>2]|0; + $53 = HEAP32[$p>>2]|0; + $54 = (($53) + 4|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + (($52*24)|0)|0); + $57 = HEAP32[$56>>2]|0; + $58 = (($57) + 1|0); + $59 = (_sqlite3_stricmp($51,$58)|0); + $60 = ($59|0)==(0); + if ($60) { + label = 9; + break; + } + } + $65 = HEAP32[$i>>2]|0; + $66 = (($65) + 1)|0; + HEAP32[$i>>2] = $66; + } + if ((label|0) == 9) { + $61 = HEAP32[$0>>2]|0; + $62 = HEAP32[$z>>2]|0; + HEAP32[$vararg_buffer1>>2] = $62; + _sqlite3ErrorMsg($61,33008,$vararg_buffer1); + $63 = HEAP32[$db>>2]|0; + $64 = HEAP32[$z>>2]|0; + _sqlite3DbFree($63,$64); + STACKTOP = sp;return; + } + $67 = HEAP32[$p>>2]|0; + $68 = (($67) + 38|0); + $69 = HEAP16[$68>>1]|0; + $70 = $69 << 16 >> 16; + $71 = $70 & 7; + $72 = ($71|0)==(0); + do { + if ($72) { + $73 = HEAP32[$db>>2]|0; + $74 = HEAP32[$p>>2]|0; + $75 = (($74) + 4|0); + $76 = HEAP32[$75>>2]|0; + $77 = HEAP32[$p>>2]|0; + $78 = (($77) + 38|0); + $79 = HEAP16[$78>>1]|0; + $80 = $79 << 16 >> 16; + $81 = (($80) + 8)|0; + $82 = ($81*24)|0; + $83 = (_sqlite3DbRealloc($73,$76,$82)|0); + HEAP32[$aNew>>2] = $83; + $84 = HEAP32[$aNew>>2]|0; + $85 = ($84|0)==(0|0); + if (!($85)) { + $88 = HEAP32[$aNew>>2]|0; + $89 = HEAP32[$p>>2]|0; + $90 = (($89) + 4|0); + HEAP32[$90>>2] = $88; + break; + } + $86 = HEAP32[$db>>2]|0; + $87 = HEAP32[$z>>2]|0; + _sqlite3DbFree($86,$87); + STACKTOP = sp;return; + } + } while(0); + $91 = HEAP32[$p>>2]|0; + $92 = (($91) + 38|0); + $93 = HEAP16[$92>>1]|0; + $94 = $93 << 16 >> 16; + $95 = HEAP32[$p>>2]|0; + $96 = (($95) + 4|0); + $97 = HEAP32[$96>>2]|0; + $98 = (($97) + (($94*24)|0)|0); + HEAP32[$pCol>>2] = $98; + $99 = HEAP32[$pCol>>2]|0; + ;HEAP32[$99+0>>2]=0|0;HEAP32[$99+4>>2]=0|0;HEAP32[$99+8>>2]=0|0;HEAP32[$99+12>>2]=0|0;HEAP32[$99+16>>2]=0|0;HEAP32[$99+20>>2]=0|0; + $100 = HEAP32[$z>>2]|0; + $101 = HEAP32[$pCol>>2]|0; + HEAP32[$101>>2] = $100; + $102 = HEAP32[$pCol>>2]|0; + $103 = (($102) + 21|0); + HEAP8[$103>>0] = 98; + $104 = HEAP32[$pCol>>2]|0; + $105 = (($104) + 22|0); + HEAP8[$105>>0] = 1; + $106 = HEAP32[$p>>2]|0; + $107 = (($106) + 38|0); + $108 = HEAP16[$107>>1]|0; + $109 = (($108) + 1)<<16>>16; + HEAP16[$107>>1] = $109; + STACKTOP = sp;return; +} +function _sqlite3AddColumnType($pParse,$pType) { + $pParse = $pParse|0; + $pType = $pType|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pCol = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $p = sp + 4|0; + $pCol = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pType; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 484|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$p>>2] = $4; + $5 = HEAP32[$p>>2]|0; + $6 = ($5|0)==(0|0); + if ($6) { + STACKTOP = sp;return; + } + $7 = HEAP32[$p>>2]|0; + $8 = (($7) + 38|0); + $9 = HEAP16[$8>>1]|0; + $10 = $9 << 16 >> 16; + $11 = ($10|0)<(1); + if ($11) { + STACKTOP = sp;return; + } + $12 = HEAP32[$p>>2]|0; + $13 = (($12) + 38|0); + $14 = HEAP16[$13>>1]|0; + $15 = $14 << 16 >> 16; + $16 = (($15) - 1)|0; + $17 = HEAP32[$p>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + (($16*24)|0)|0); + HEAP32[$pCol>>2] = $20; + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (_sqlite3NameFromToken($22,$23)|0); + $25 = HEAP32[$pCol>>2]|0; + $26 = (($25) + 12|0); + HEAP32[$26>>2] = $24; + $27 = HEAP32[$pCol>>2]|0; + $28 = (($27) + 12|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$pCol>>2]|0; + $31 = (($30) + 22|0); + $32 = (_sqlite3AffinityType($29,$31)|0); + $33 = HEAP32[$pCol>>2]|0; + $34 = (($33) + 21|0); + HEAP8[$34>>0] = $32; + STACKTOP = sp;return; +} +function _sqlite3AddDefaultValue($pParse,$pSpan) { + $pParse = $pParse|0; + $pSpan = $pSpan|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $p = 0; + var $pCol = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 20|0; + $1 = sp + 4|0; + $p = sp + 8|0; + $pCol = sp + 12|0; + $db = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pSpan; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 484|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$p>>2] = $6; + $7 = HEAP32[$p>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + $55 = HEAP32[$db>>2]|0; + $56 = HEAP32[$1>>2]|0; + $57 = HEAP32[$56>>2]|0; + _sqlite3ExprDelete($55,$57); + STACKTOP = sp;return; + } + $9 = HEAP32[$p>>2]|0; + $10 = (($9) + 38|0); + $11 = HEAP16[$10>>1]|0; + $12 = $11 << 16 >> 16; + $13 = (($12) - 1)|0; + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + (($13*24)|0)|0); + HEAP32[$pCol>>2] = $17; + $18 = HEAP32[$1>>2]|0; + $19 = HEAP32[$18>>2]|0; + $20 = (_sqlite3ExprIsConstantOrFunction($19)|0); + $21 = ($20|0)!=(0); + if ($21) { + $25 = HEAP32[$db>>2]|0; + $26 = HEAP32[$pCol>>2]|0; + $27 = (($26) + 4|0); + $28 = HEAP32[$27>>2]|0; + _sqlite3ExprDelete($25,$28); + $29 = HEAP32[$db>>2]|0; + $30 = HEAP32[$1>>2]|0; + $31 = HEAP32[$30>>2]|0; + $32 = (_sqlite3ExprDup($29,$31,1)|0); + $33 = HEAP32[$pCol>>2]|0; + $34 = (($33) + 4|0); + HEAP32[$34>>2] = $32; + $35 = HEAP32[$db>>2]|0; + $36 = HEAP32[$pCol>>2]|0; + $37 = (($36) + 8|0); + $38 = HEAP32[$37>>2]|0; + _sqlite3DbFree($35,$38); + $39 = HEAP32[$db>>2]|0; + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 4|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 8|0); + $45 = HEAP32[$44>>2]|0; + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 4|0); + $48 = HEAP32[$47>>2]|0; + $49 = $45; + $50 = $48; + $51 = (($49) - ($50))|0; + $52 = (_sqlite3DbStrNDup($39,$42,$51)|0); + $53 = HEAP32[$pCol>>2]|0; + $54 = (($53) + 8|0); + HEAP32[$54>>2] = $52; + $55 = HEAP32[$db>>2]|0; + $56 = HEAP32[$1>>2]|0; + $57 = HEAP32[$56>>2]|0; + _sqlite3ExprDelete($55,$57); + STACKTOP = sp;return; + } else { + $22 = HEAP32[$0>>2]|0; + $23 = HEAP32[$pCol>>2]|0; + $24 = HEAP32[$23>>2]|0; + HEAP32[$vararg_buffer>>2] = $24; + _sqlite3ErrorMsg($22,32936,$vararg_buffer); + $55 = HEAP32[$db>>2]|0; + $56 = HEAP32[$1>>2]|0; + $57 = HEAP32[$56>>2]|0; + _sqlite3ExprDelete($55,$57); + STACKTOP = sp;return; + } +} +function _sqlite3PExpr($pParse,$op,$pLeft,$pRight,$pToken) { + $pParse = $pParse|0; + $op = $op|0; + $pLeft = $pLeft|0; + $pRight = $pRight|0; + $pToken = $pToken|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $p = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $op; + HEAP32[$2>>2] = $pLeft; + HEAP32[$3>>2] = $pRight; + HEAP32[$4>>2] = $pToken; + $5 = HEAP32[$1>>2]|0; + $6 = ($5|0)==(72); + if ($6) { + $7 = HEAP32[$2>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = HEAP32[$3>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = HEAP32[$3>>2]|0; + $15 = (_sqlite3ExprAnd($12,$13,$14)|0); + HEAP32[$p>>2] = $15; + } else { + label = 5; + } + } else { + label = 5; + } + } else { + label = 5; + } + if ((label|0) == 5) { + $16 = HEAP32[$0>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = HEAP32[$4>>2]|0; + $20 = (_sqlite3ExprAlloc($17,$18,$19,1)|0); + HEAP32[$p>>2] = $20; + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$p>>2]|0; + $24 = HEAP32[$2>>2]|0; + $25 = HEAP32[$3>>2]|0; + _sqlite3ExprAttachSubtrees($22,$23,$24,$25); + } + $26 = HEAP32[$p>>2]|0; + $27 = ($26|0)!=(0|0); + if (!($27)) { + $32 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($32|0); + } + $28 = HEAP32[$0>>2]|0; + $29 = HEAP32[$p>>2]|0; + $30 = (($29) + 24|0); + $31 = HEAP32[$30>>2]|0; + (_sqlite3ExprCheckHeight($28,$31)|0); + $32 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($32|0); +} +function _spanExpr($pOut,$pParse,$op,$pValue) { + $pOut = $pOut|0; + $pParse = $pParse|0; + $op = $op|0; + $pValue = $pValue|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $pOut; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $op; + HEAP32[$3>>2] = $pValue; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$3>>2]|0; + $7 = (_sqlite3PExpr($4,$5,0,0,$6)|0); + $8 = HEAP32[$0>>2]|0; + HEAP32[$8>>2] = $7; + $9 = HEAP32[$3>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 4|0); + HEAP32[$12>>2] = $10; + $13 = HEAP32[$3>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$3>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + ($15)|0); + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 8|0); + HEAP32[$20>>2] = $18; + STACKTOP = sp;return; +} +function _sqlite3AddNotNull($pParse,$onError) { + $pParse = $pParse|0; + $onError = $onError|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $p = sp + 4|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $onError; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 484|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$p>>2] = $4; + $5 = HEAP32[$p>>2]|0; + $6 = ($5|0)==(0|0); + if ($6) { + STACKTOP = sp;return; + } + $7 = HEAP32[$p>>2]|0; + $8 = (($7) + 38|0); + $9 = HEAP16[$8>>1]|0; + $10 = $9 << 16 >> 16; + $11 = ($10|0)<(1); + if ($11) { + STACKTOP = sp;return; + } + $12 = HEAP32[$1>>2]|0; + $13 = $12&255; + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 38|0); + $16 = HEAP16[$15>>1]|0; + $17 = $16 << 16 >> 16; + $18 = (($17) - 1)|0; + $19 = HEAP32[$p>>2]|0; + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + (($18*24)|0)|0); + $23 = (($22) + 20|0); + HEAP8[$23>>0] = $13; + STACKTOP = sp;return; +} +function _sqlite3AddPrimaryKey($pParse,$pList,$onError,$autoInc,$sortOrder) { + $pParse = $pParse|0; + $pList = $pList|0; + $onError = $onError|0; + $autoInc = $autoInc|0; + $sortOrder = $sortOrder|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iCol = 0, $nTerm = 0, $p = 0, $pTab = 0, $v = 0, $vararg_buffer1 = 0, $zType = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer1 = sp; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $4 = sp + 28|0; + $pTab = sp + 48|0; + $zType = sp + 16|0; + $iCol = sp + 12|0; + $i = sp + 8|0; + $nTerm = sp + 4|0; + $v = sp + 20|0; + $p = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pList; + HEAP32[$2>>2] = $onError; + HEAP32[$3>>2] = $autoInc; + HEAP32[$4>>2] = $sortOrder; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 484|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pTab>>2] = $7; + HEAP32[$zType>>2] = 0; + HEAP32[$iCol>>2] = -1; + $8 = HEAP32[$pTab>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + $163 = HEAP32[$0>>2]|0; + $164 = HEAP32[$163>>2]|0; + $165 = HEAP32[$1>>2]|0; + _sqlite3ExprListDelete($164,$165); + STACKTOP = sp;return; + } + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 451|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = ($13|0)!=(0); + if ($14) { + $163 = HEAP32[$0>>2]|0; + $164 = HEAP32[$163>>2]|0; + $165 = HEAP32[$1>>2]|0; + _sqlite3ExprListDelete($164,$165); + STACKTOP = sp;return; + } + $15 = HEAP32[$pTab>>2]|0; + $16 = (($15) + 44|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = $18 & 4; + $20 = ($19|0)!=(0); + if ($20) { + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$pTab>>2]|0; + $23 = HEAP32[$22>>2]|0; + HEAP32[$vararg_buffer1>>2] = $23; + _sqlite3ErrorMsg($21,32832,$vararg_buffer1); + $163 = HEAP32[$0>>2]|0; + $164 = HEAP32[$163>>2]|0; + $165 = HEAP32[$1>>2]|0; + _sqlite3ExprListDelete($164,$165); + STACKTOP = sp;return; + } + $24 = HEAP32[$pTab>>2]|0; + $25 = (($24) + 44|0); + $26 = HEAP8[$25>>0]|0; + $27 = $26&255; + $28 = $27 | 4; + $29 = $28&255; + HEAP8[$25>>0] = $29; + $30 = HEAP32[$1>>2]|0; + $31 = ($30|0)==(0|0); + L11: do { + if ($31) { + $32 = HEAP32[$pTab>>2]|0; + $33 = (($32) + 38|0); + $34 = HEAP16[$33>>1]|0; + $35 = $34 << 16 >> 16; + $36 = (($35) - 1)|0; + HEAP32[$iCol>>2] = $36; + $37 = HEAP32[$iCol>>2]|0; + $38 = HEAP32[$pTab>>2]|0; + $39 = (($38) + 4|0); + $40 = HEAP32[$39>>2]|0; + $41 = (($40) + (($37*24)|0)|0); + $42 = (($41) + 23|0); + $43 = HEAP8[$42>>0]|0; + $44 = $43&255; + $45 = $44 | 1; + $46 = $45&255; + HEAP8[$42>>0] = $46; + $47 = HEAP32[$iCol>>2]|0; + $48 = HEAP32[$pTab>>2]|0; + $49 = (($48) + 4|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + (($47*24)|0)|0); + $52 = (($51) + 12|0); + $53 = HEAP32[$52>>2]|0; + HEAP32[$zType>>2] = $53; + HEAP32[$nTerm>>2] = 1; + } else { + $54 = HEAP32[$1>>2]|0; + $55 = HEAP32[$54>>2]|0; + HEAP32[$nTerm>>2] = $55; + HEAP32[$i>>2] = 0; + while(1) { + $56 = HEAP32[$i>>2]|0; + $57 = HEAP32[$nTerm>>2]|0; + $58 = ($56|0)<($57|0); + if (!($58)) { + break L11; + } + HEAP32[$iCol>>2] = 0; + while(1) { + $59 = HEAP32[$iCol>>2]|0; + $60 = HEAP32[$pTab>>2]|0; + $61 = (($60) + 38|0); + $62 = HEAP16[$61>>1]|0; + $63 = $62 << 16 >> 16; + $64 = ($59|0)<($63|0); + if (!($64)) { + break; + } + $65 = HEAP32[$i>>2]|0; + $66 = HEAP32[$1>>2]|0; + $67 = (($66) + 4|0); + $68 = HEAP32[$67>>2]|0; + $69 = (($68) + (($65*20)|0)|0); + $70 = (($69) + 4|0); + $71 = HEAP32[$70>>2]|0; + $72 = HEAP32[$iCol>>2]|0; + $73 = HEAP32[$pTab>>2]|0; + $74 = (($73) + 4|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($75) + (($72*24)|0)|0); + $77 = HEAP32[$76>>2]|0; + $78 = (_sqlite3_stricmp($71,$77)|0); + $79 = ($78|0)==(0); + $80 = HEAP32[$iCol>>2]|0; + if ($79) { + label = 12; + break; + } + $97 = (($80) + 1)|0; + HEAP32[$iCol>>2] = $97; + } + if ((label|0) == 12) { + label = 0; + $81 = HEAP32[$pTab>>2]|0; + $82 = (($81) + 4|0); + $83 = HEAP32[$82>>2]|0; + $84 = (($83) + (($80*24)|0)|0); + $85 = (($84) + 23|0); + $86 = HEAP8[$85>>0]|0; + $87 = $86&255; + $88 = $87 | 1; + $89 = $88&255; + HEAP8[$85>>0] = $89; + $90 = HEAP32[$iCol>>2]|0; + $91 = HEAP32[$pTab>>2]|0; + $92 = (($91) + 4|0); + $93 = HEAP32[$92>>2]|0; + $94 = (($93) + (($90*24)|0)|0); + $95 = (($94) + 12|0); + $96 = HEAP32[$95>>2]|0; + HEAP32[$zType>>2] = $96; + } + $98 = HEAP32[$i>>2]|0; + $99 = (($98) + 1)|0; + HEAP32[$i>>2] = $99; + } + } + } while(0); + $100 = HEAP32[$nTerm>>2]|0; + $101 = ($100|0)==(1); + if ($101) { + $102 = HEAP32[$zType>>2]|0; + $103 = ($102|0)!=(0|0); + if ($103) { + $104 = HEAP32[$zType>>2]|0; + $105 = (_sqlite3_stricmp($104,22944)|0); + $106 = ($105|0)==(0); + if ($106) { + $107 = HEAP32[$4>>2]|0; + $108 = ($107|0)==(0); + if ($108) { + $109 = HEAP32[$iCol>>2]|0; + $110 = $109&65535; + $111 = HEAP32[$pTab>>2]|0; + $112 = (($111) + 36|0); + HEAP16[$112>>1] = $110; + $113 = HEAP32[$2>>2]|0; + $114 = $113&255; + $115 = HEAP32[$pTab>>2]|0; + $116 = (($115) + 45|0); + HEAP8[$116>>0] = $114; + $117 = HEAP32[$3>>2]|0; + $118 = $117<<3; + $119 = HEAP32[$pTab>>2]|0; + $120 = (($119) + 44|0); + $121 = HEAP8[$120>>0]|0; + $122 = $121&255; + $123 = $122 | $118; + $124 = $123&255; + HEAP8[$120>>0] = $124; + $125 = HEAP32[$1>>2]|0; + $126 = ($125|0)!=(0|0); + if (!($126)) { + $163 = HEAP32[$0>>2]|0; + $164 = HEAP32[$163>>2]|0; + $165 = HEAP32[$1>>2]|0; + _sqlite3ExprListDelete($164,$165); + STACKTOP = sp;return; + } + $127 = HEAP32[$1>>2]|0; + $128 = (($127) + 4|0); + $129 = HEAP32[$128>>2]|0; + $130 = (($129) + 12|0); + $131 = HEAP8[$130>>0]|0; + $132 = HEAP32[$0>>2]|0; + $133 = (($132) + 448|0); + HEAP8[$133>>0] = $131; + $163 = HEAP32[$0>>2]|0; + $164 = HEAP32[$163>>2]|0; + $165 = HEAP32[$1>>2]|0; + _sqlite3ExprListDelete($164,$165); + STACKTOP = sp;return; + } + } + } + } + $134 = HEAP32[$3>>2]|0; + $135 = ($134|0)!=(0); + $136 = HEAP32[$0>>2]|0; + if ($135) { + _sqlite3ErrorMsg($136,32880,$vararg_buffer1); + $163 = HEAP32[$0>>2]|0; + $164 = HEAP32[$163>>2]|0; + $165 = HEAP32[$1>>2]|0; + _sqlite3ExprListDelete($164,$165); + STACKTOP = sp;return; + } + $137 = (($136) + 8|0); + $138 = HEAP32[$137>>2]|0; + HEAP32[$v>>2] = $138; + $139 = HEAP32[$v>>2]|0; + $140 = ($139|0)!=(0|0); + if ($140) { + $141 = HEAP32[$v>>2]|0; + $142 = (_sqlite3VdbeAddOp0($141,156)|0); + $143 = HEAP32[$0>>2]|0; + $144 = (($143) + 420|0); + HEAP32[$144>>2] = $142; + } + $145 = HEAP32[$0>>2]|0; + $146 = HEAP32[$1>>2]|0; + $147 = HEAP32[$2>>2]|0; + $148 = HEAP32[$4>>2]|0; + $149 = (_sqlite3CreateIndex($145,0,0,0,$146,$147,0,0,$148,0)|0); + HEAP32[$p>>2] = $149; + $150 = HEAP32[$p>>2]|0; + $151 = ($150|0)!=(0|0); + if ($151) { + $152 = HEAP32[$p>>2]|0; + $153 = (($152) + 55|0); + $154 = HEAP8[$153>>0]|0; + $155 = $154 & -4; + $156 = $155 | 2; + HEAP8[$153>>0] = $156; + $157 = HEAP32[$v>>2]|0; + $158 = ($157|0)!=(0|0); + if ($158) { + $159 = HEAP32[$v>>2]|0; + $160 = HEAP32[$0>>2]|0; + $161 = (($160) + 420|0); + $162 = HEAP32[$161>>2]|0; + _sqlite3VdbeJumpHere($159,$162); + } + } + HEAP32[$1>>2] = 0; + $163 = HEAP32[$0>>2]|0; + $164 = HEAP32[$163>>2]|0; + $165 = HEAP32[$1>>2]|0; + _sqlite3ExprListDelete($164,$165); + STACKTOP = sp;return; +} +function _sqlite3CreateIndex($pParse,$pName1,$pName2,$pTblName,$pList,$onError,$pStart,$pPIWhere,$sortOrder,$ifNotExist) { + $pParse = $pParse|0; + $pName1 = $pName1|0; + $pName2 = $pName2|0; + $pTblName = $pTblName|0; + $pList = $pList|0; + $onError = $onError|0; + $pStart = $pStart|0; + $pPIWhere = $pPIWhere|0; + $sortOrder = $sortOrder|0; + $ifNotExist = $ifNotExist|0; + var $$ = 0, $$1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; + var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; + var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; + var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; + var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0; + var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0; + var $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0; + var $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0; + var $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0; + var $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0; + var $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0; + var $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0; + var $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0; + var $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0; + var $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0; + var $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0; + var $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0; + var $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0; + var $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0; + var $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0; + var $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0; + var $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0; + var $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0; + var $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0; + var $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0; + var $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0; + var $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0; + var $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0; + var $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0; + var $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0; + var $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0; + var $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0; + var $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0; + var $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0; + var $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0; + var $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0; + var $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0; + var $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0; + var $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0; + var $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0; + var $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0, $iDb = 0, $iMem = 0, $j = 0, $k = 0, $n = 0, $n1 = 0, $nColl = 0, $nExtra = 0, $nExtraCol = 0, $nName = 0, $p = 0; + var $pDb = 0, $pExpr = 0, $pIdx = 0, $pIndex = 0, $pListItem = 0, $pLoop = 0, $pName = 0, $pOther = 0, $pPk = 0, $pRet = 0, $pTab = 0, $pTabCol = 0, $requestedSortOrder = 0, $sFix = 0, $sortOrderMask = 0, $v = 0, $vararg_buffer39 = 0, $vararg_ptr18 = 0, $vararg_ptr22 = 0, $vararg_ptr29 = 0; + var $vararg_ptr30 = 0, $vararg_ptr34 = 0, $vararg_ptr35 = 0, $vararg_ptr36 = 0, $vararg_ptr37 = 0, $vararg_ptr38 = 0, $x = 0, $z1 = 0, $z2 = 0, $zColName = 0, $zColl = 0, $zDb = 0, $zExtra = 0, $zName = 0, $zStmt = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 240|0; + $vararg_buffer39 = sp; + $0 = sp + 232|0; + $1 = sp + 228|0; + $2 = sp + 224|0; + $3 = sp + 220|0; + $4 = sp + 216|0; + $5 = sp + 212|0; + $6 = sp + 208|0; + $7 = sp + 204|0; + $8 = sp + 200|0; + $9 = sp + 196|0; + $pRet = sp + 192|0; + $pTab = sp + 188|0; + $pIndex = sp + 184|0; + $zName = sp + 180|0; + $nName = sp + 176|0; + $i = sp + 172|0; + $j = sp + 168|0; + $sFix = sp + 144|0; + $sortOrderMask = sp + 136|0; + $db = sp + 132|0; + $pDb = sp + 128|0; + $iDb = sp + 124|0; + $pName = sp + 120|0; + $pListItem = sp + 236|0; + $pTabCol = sp + 64|0; + $nExtra = sp + 56|0; + $nExtraCol = sp + 52|0; + $zExtra = sp + 48|0; + $pPk = sp + 44|0; + $n = sp + 60|0; + $pLoop = sp + 32|0; + $zDb = sp + 28|0; + $pExpr = sp + 24|0; + $zColName = sp + 36|0; + $requestedSortOrder = sp + 40|0; + $zColl = sp + 112|0; + $nColl = sp + 68|0; + $x = sp + 72|0; + $pIdx = sp + 76|0; + $k = sp + 80|0; + $z1 = sp + 84|0; + $z2 = sp + 88|0; + $p = sp + 92|0; + $v = sp + 96|0; + $zStmt = sp + 100|0; + $iMem = sp + 104|0; + $n1 = sp + 108|0; + $pOther = sp + 116|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pName1; + HEAP32[$2>>2] = $pName2; + HEAP32[$3>>2] = $pTblName; + HEAP32[$4>>2] = $pList; + HEAP32[$5>>2] = $onError; + HEAP32[$6>>2] = $pStart; + HEAP32[$7>>2] = $pPIWhere; + HEAP32[$8>>2] = $sortOrder; + HEAP32[$9>>2] = $ifNotExist; + HEAP32[$pRet>>2] = 0; + HEAP32[$pTab>>2] = 0; + HEAP32[$pIndex>>2] = 0; + HEAP32[$zName>>2] = 0; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$10>>2]|0; + HEAP32[$db>>2] = $11; + HEAP32[$pName>>2] = 0; + HEAP32[$nExtra>>2] = 0; + HEAP32[$zExtra>>2] = 0; + HEAP32[$pPk>>2] = 0; + $12 = HEAP32[$db>>2]|0; + $13 = (($12) + 64|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = ($15|0)!=(0); + L1: do { + if (!($16)) { + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 451|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = ($20|0)!=(0); + if (!($21)) { + $22 = HEAP32[$0>>2]|0; + $23 = (_sqlite3ReadSchema($22)|0); + $24 = (0)!=($23|0); + if (!($24)) { + $25 = HEAP32[$3>>2]|0; + $26 = ($25|0)!=(0|0); + $27 = HEAP32[$0>>2]|0; + if ($26) { + $28 = HEAP32[$1>>2]|0; + $29 = HEAP32[$2>>2]|0; + $30 = (_sqlite3TwoPartName($27,$28,$29,$pName)|0); + HEAP32[$iDb>>2] = $30; + $31 = HEAP32[$iDb>>2]|0; + $32 = ($31|0)<(0); + if ($32) { + break; + } + $33 = HEAP32[$db>>2]|0; + $34 = (($33) + 132|0); + $35 = (($34) + 5|0); + $36 = HEAP8[$35>>0]|0; + $37 = ($36<<24>>24)!=(0); + if (!($37)) { + $38 = HEAP32[$0>>2]|0; + $39 = HEAP32[$3>>2]|0; + $40 = (_sqlite3SrcListLookup($38,$39)|0); + HEAP32[$pTab>>2] = $40; + $41 = HEAP32[$2>>2]|0; + $42 = (($41) + 4|0); + $43 = HEAP32[$42>>2]|0; + $44 = ($43|0)==(0); + if ($44) { + $45 = HEAP32[$pTab>>2]|0; + $46 = ($45|0)!=(0|0); + if ($46) { + $47 = HEAP32[$pTab>>2]|0; + $48 = (($47) + 68|0); + $49 = HEAP32[$48>>2]|0; + $50 = HEAP32[$db>>2]|0; + $51 = (($50) + 16|0); + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + 16|0); + $54 = (($53) + 12|0); + $55 = HEAP32[$54>>2]|0; + $56 = ($49|0)==($55|0); + if ($56) { + HEAP32[$iDb>>2] = 1; + } + } + } + } + $57 = HEAP32[$0>>2]|0; + $58 = HEAP32[$iDb>>2]|0; + $59 = HEAP32[$pName>>2]|0; + _sqlite3FixInit($sFix,$57,$58,16696,$59); + $60 = HEAP32[$3>>2]|0; + (_sqlite3FixSrcList($sFix,$60)|0); + $61 = HEAP32[$0>>2]|0; + $62 = HEAP32[$3>>2]|0; + $63 = (($62) + 8|0); + $64 = (_sqlite3LocateTableItem($61,0,$63)|0); + HEAP32[$pTab>>2] = $64; + $65 = HEAP32[$pTab>>2]|0; + $66 = ($65|0)==(0|0); + if ($66) { + break; + } + $67 = HEAP32[$iDb>>2]|0; + $68 = ($67|0)==(1); + if ($68) { + $69 = HEAP32[$iDb>>2]|0; + $70 = HEAP32[$db>>2]|0; + $71 = (($70) + 16|0); + $72 = HEAP32[$71>>2]|0; + $73 = (($72) + ($69<<4)|0); + $74 = (($73) + 12|0); + $75 = HEAP32[$74>>2]|0; + $76 = HEAP32[$pTab>>2]|0; + $77 = (($76) + 68|0); + $78 = HEAP32[$77>>2]|0; + $79 = ($75|0)!=($78|0); + if ($79) { + $80 = HEAP32[$0>>2]|0; + $81 = HEAP32[$pTab>>2]|0; + $82 = HEAP32[$81>>2]|0; + HEAP32[$vararg_buffer39>>2] = $82; + _sqlite3ErrorMsg($80,32376,$vararg_buffer39); + break; + } + } + $83 = HEAP32[$pTab>>2]|0; + $84 = (($83) + 44|0); + $85 = HEAP8[$84>>0]|0; + $86 = $85&255; + $87 = $86 & 32; + $88 = ($87|0)==(0); + if (!($88)) { + $89 = HEAP32[$pTab>>2]|0; + $90 = (_sqlite3PrimaryKeyIndex($89)|0); + HEAP32[$pPk>>2] = $90; + } + } else { + $91 = (($27) + 484|0); + $92 = HEAP32[$91>>2]|0; + HEAP32[$pTab>>2] = $92; + $93 = HEAP32[$pTab>>2]|0; + $94 = ($93|0)!=(0|0); + if (!($94)) { + break; + } + $95 = HEAP32[$db>>2]|0; + $96 = HEAP32[$pTab>>2]|0; + $97 = (($96) + 68|0); + $98 = HEAP32[$97>>2]|0; + $99 = (_sqlite3SchemaToIndex($95,$98)|0); + HEAP32[$iDb>>2] = $99; + } + $100 = HEAP32[$iDb>>2]|0; + $101 = HEAP32[$db>>2]|0; + $102 = (($101) + 16|0); + $103 = HEAP32[$102>>2]|0; + $104 = (($103) + ($100<<4)|0); + HEAP32[$pDb>>2] = $104; + $105 = HEAP32[$pTab>>2]|0; + $106 = HEAP32[$105>>2]|0; + $107 = (_sqlite3_strnicmp($106,21672,7)|0); + $108 = ($107|0)==(0); + if ($108) { + $109 = HEAP32[$pTab>>2]|0; + $110 = HEAP32[$109>>2]|0; + $111 = (($110) + 7|0); + $112 = (_sqlite3_strnicmp($111,32432,9)|0); + $113 = ($112|0)!=(0); + if ($113) { + $114 = HEAP32[$0>>2]|0; + $115 = HEAP32[$pTab>>2]|0; + $116 = HEAP32[$115>>2]|0; + HEAP32[$vararg_buffer39>>2] = $116; + _sqlite3ErrorMsg($114,32448,$vararg_buffer39); + break; + } + } + $117 = HEAP32[$pTab>>2]|0; + $118 = (($117) + 12|0); + $119 = HEAP32[$118>>2]|0; + $120 = ($119|0)!=(0|0); + if ($120) { + $121 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($121,32480,$vararg_buffer39); + break; + } + $122 = HEAP32[$pTab>>2]|0; + $123 = (($122) + 44|0); + $124 = HEAP8[$123>>0]|0; + $125 = $124&255; + $126 = $125 & 16; + $127 = ($126|0)!=(0); + if ($127) { + $128 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($128,32512,$vararg_buffer39); + break; + } + $129 = HEAP32[$pName>>2]|0; + $130 = ($129|0)!=(0|0); + if ($130) { + $131 = HEAP32[$db>>2]|0; + $132 = HEAP32[$pName>>2]|0; + $133 = (_sqlite3NameFromToken($131,$132)|0); + HEAP32[$zName>>2] = $133; + $134 = HEAP32[$zName>>2]|0; + $135 = ($134|0)==(0|0); + if ($135) { + break; + } + $136 = HEAP32[$0>>2]|0; + $137 = HEAP32[$zName>>2]|0; + $138 = (_sqlite3CheckObjectName($136,$137)|0); + $139 = (0)!=($138|0); + if ($139) { + break; + } + $140 = HEAP32[$db>>2]|0; + $141 = (($140) + 132|0); + $142 = (($141) + 5|0); + $143 = HEAP8[$142>>0]|0; + $144 = ($143<<24>>24)!=(0); + if (!($144)) { + $145 = HEAP32[$db>>2]|0; + $146 = HEAP32[$zName>>2]|0; + $147 = (_sqlite3FindTable($145,$146,0)|0); + $148 = ($147|0)!=(0|0); + if ($148) { + $149 = HEAP32[$0>>2]|0; + $150 = HEAP32[$zName>>2]|0; + HEAP32[$vararg_buffer39>>2] = $150; + _sqlite3ErrorMsg($149,32552,$vararg_buffer39); + break; + } + } + $151 = HEAP32[$db>>2]|0; + $152 = HEAP32[$zName>>2]|0; + $153 = HEAP32[$pDb>>2]|0; + $154 = HEAP32[$153>>2]|0; + $155 = (_sqlite3FindIndex($151,$152,$154)|0); + $156 = ($155|0)!=(0|0); + if ($156) { + $157 = HEAP32[$9>>2]|0; + $158 = ($157|0)!=(0); + $159 = HEAP32[$0>>2]|0; + if ($158) { + $161 = HEAP32[$iDb>>2]|0; + _sqlite3CodeVerifySchema($159,$161); + break; + } else { + $160 = HEAP32[$zName>>2]|0; + HEAP32[$vararg_buffer39>>2] = $160; + _sqlite3ErrorMsg($159,32592,$vararg_buffer39); + break; + } + } + } else { + $162 = HEAP32[$pTab>>2]|0; + $163 = (($162) + 8|0); + $164 = HEAP32[$163>>2]|0; + HEAP32[$pLoop>>2] = $164; + HEAP32[$n>>2] = 1; + while(1) { + $165 = HEAP32[$pLoop>>2]|0; + $166 = ($165|0)!=(0|0); + if (!($166)) { + break; + } + $167 = HEAP32[$pLoop>>2]|0; + $168 = (($167) + 20|0); + $169 = HEAP32[$168>>2]|0; + HEAP32[$pLoop>>2] = $169; + $170 = HEAP32[$n>>2]|0; + $171 = (($170) + 1)|0; + HEAP32[$n>>2] = $171; + } + $172 = HEAP32[$db>>2]|0; + $173 = HEAP32[$pTab>>2]|0; + $174 = HEAP32[$173>>2]|0; + $175 = HEAP32[$n>>2]|0; + HEAP32[$vararg_buffer39>>2] = $174; + $vararg_ptr18 = (($vararg_buffer39) + 4|0); + HEAP32[$vararg_ptr18>>2] = $175; + $176 = (_sqlite3MPrintf($172,32616,$vararg_buffer39)|0); + HEAP32[$zName>>2] = $176; + $177 = HEAP32[$zName>>2]|0; + $178 = ($177|0)==(0|0); + if ($178) { + break; + } + } + $179 = HEAP32[$pDb>>2]|0; + $180 = HEAP32[$179>>2]|0; + HEAP32[$zDb>>2] = $180; + $181 = HEAP32[$0>>2]|0; + $182 = HEAP32[$iDb>>2]|0; + $183 = ($182|0)==(1); + $184 = $183 ? 21432 : 21456; + $185 = HEAP32[$zDb>>2]|0; + $186 = (_sqlite3AuthCheck($181,18,$184,0,$185)|0); + $187 = ($186|0)!=(0); + if (!($187)) { + HEAP32[$i>>2] = 1; + $188 = HEAP32[$iDb>>2]|0; + $189 = ($188|0)==(1); + $$ = $189 ? 3 : 1; + HEAP32[$i>>2] = $$; + $190 = HEAP32[$0>>2]|0; + $191 = HEAP32[$i>>2]|0; + $192 = HEAP32[$zName>>2]|0; + $193 = HEAP32[$pTab>>2]|0; + $194 = HEAP32[$193>>2]|0; + $195 = HEAP32[$zDb>>2]|0; + $196 = (_sqlite3AuthCheck($190,$191,$192,$194,$195)|0); + $197 = ($196|0)!=(0); + if (!($197)) { + $198 = HEAP32[$4>>2]|0; + $199 = ($198|0)==(0|0); + if ($199) { + $200 = HEAP32[$0>>2]|0; + $201 = (_sqlite3ExprListAppend($200,0,0)|0); + HEAP32[$4>>2] = $201; + $202 = HEAP32[$4>>2]|0; + $203 = ($202|0)==(0|0); + if ($203) { + break; + } + $204 = HEAP32[$0>>2]|0; + $205 = HEAP32[$204>>2]|0; + $206 = HEAP32[$pTab>>2]|0; + $207 = (($206) + 38|0); + $208 = HEAP16[$207>>1]|0; + $209 = $208 << 16 >> 16; + $210 = (($209) - 1)|0; + $211 = HEAP32[$pTab>>2]|0; + $212 = (($211) + 4|0); + $213 = HEAP32[$212>>2]|0; + $214 = (($213) + (($210*24)|0)|0); + $215 = HEAP32[$214>>2]|0; + $216 = (_sqlite3DbStrDup($205,$215)|0); + $217 = HEAP32[$4>>2]|0; + $218 = (($217) + 4|0); + $219 = HEAP32[$218>>2]|0; + $220 = (($219) + 4|0); + HEAP32[$220>>2] = $216; + $221 = HEAP32[$8>>2]|0; + $222 = $221&255; + $223 = HEAP32[$4>>2]|0; + $224 = (($223) + 4|0); + $225 = HEAP32[$224>>2]|0; + $226 = (($225) + 12|0); + HEAP8[$226>>0] = $222; + } + HEAP32[$i>>2] = 0; + while(1) { + $227 = HEAP32[$i>>2]|0; + $228 = HEAP32[$4>>2]|0; + $229 = HEAP32[$228>>2]|0; + $230 = ($227|0)<($229|0); + if (!($230)) { + break; + } + $231 = HEAP32[$i>>2]|0; + $232 = HEAP32[$4>>2]|0; + $233 = (($232) + 4|0); + $234 = HEAP32[$233>>2]|0; + $235 = (($234) + (($231*20)|0)|0); + $236 = HEAP32[$235>>2]|0; + HEAP32[$pExpr>>2] = $236; + $237 = HEAP32[$pExpr>>2]|0; + $238 = ($237|0)!=(0|0); + if ($238) { + $239 = HEAP32[$pExpr>>2]|0; + $240 = (($239) + 8|0); + $241 = HEAP32[$240>>2]|0; + $242 = (_sqlite3Strlen30($241)|0); + $243 = (1 + ($242))|0; + $244 = HEAP32[$nExtra>>2]|0; + $245 = (($244) + ($243))|0; + HEAP32[$nExtra>>2] = $245; + } + $246 = HEAP32[$i>>2]|0; + $247 = (($246) + 1)|0; + HEAP32[$i>>2] = $247; + } + $248 = HEAP32[$zName>>2]|0; + $249 = (_sqlite3Strlen30($248)|0); + HEAP32[$nName>>2] = $249; + $250 = HEAP32[$pPk>>2]|0; + $251 = ($250|0)!=(0|0); + if ($251) { + $252 = HEAP32[$pPk>>2]|0; + $253 = (($252) + 50|0); + $254 = HEAP16[$253>>1]|0; + $255 = $254&65535; + $256 = $255; + } else { + $256 = 1; + } + HEAP32[$nExtraCol>>2] = $256; + $257 = HEAP32[$db>>2]|0; + $258 = HEAP32[$4>>2]|0; + $259 = HEAP32[$258>>2]|0; + $260 = HEAP32[$nExtraCol>>2]|0; + $261 = (($259) + ($260))|0; + $262 = $261&65535; + $263 = HEAP32[$nName>>2]|0; + $264 = HEAP32[$nExtra>>2]|0; + $265 = (($263) + ($264))|0; + $266 = (($265) + 1)|0; + $267 = (_sqlite3AllocateIndexObject($257,$262,$266,$zExtra)|0); + HEAP32[$pIndex>>2] = $267; + $268 = HEAP32[$db>>2]|0; + $269 = (($268) + 64|0); + $270 = HEAP8[$269>>0]|0; + $271 = ($270<<24>>24)!=(0); + if (!($271)) { + $272 = HEAP32[$zExtra>>2]|0; + $273 = HEAP32[$pIndex>>2]|0; + HEAP32[$273>>2] = $272; + $274 = HEAP32[$nName>>2]|0; + $275 = (($274) + 1)|0; + $276 = HEAP32[$zExtra>>2]|0; + $277 = (($276) + ($275)|0); + HEAP32[$zExtra>>2] = $277; + $278 = HEAP32[$pIndex>>2]|0; + $279 = HEAP32[$278>>2]|0; + $280 = HEAP32[$zName>>2]|0; + $281 = HEAP32[$nName>>2]|0; + $282 = (($281) + 1)|0; + _memcpy(($279|0),($280|0),($282|0))|0; + $283 = HEAP32[$pTab>>2]|0; + $284 = HEAP32[$pIndex>>2]|0; + $285 = (($284) + 12|0); + HEAP32[$285>>2] = $283; + $286 = HEAP32[$5>>2]|0; + $287 = $286&255; + $288 = HEAP32[$pIndex>>2]|0; + $289 = (($288) + 54|0); + HEAP8[$289>>0] = $287; + $290 = HEAP32[$5>>2]|0; + $291 = ($290|0)!=(0); + $292 = $291&1; + $293 = HEAP32[$pIndex>>2]|0; + $294 = (($293) + 55|0); + $295 = $292&255; + $296 = HEAP8[$294>>0]|0; + $297 = $295 & 1; + $298 = ($297 << 3)&255; + $299 = $296 & -9; + $300 = $299 | $298; + HEAP8[$294>>0] = $300; + $301 = HEAP32[$pName>>2]|0; + $302 = ($301|0)!=(0|0); + $303 = $302 ? 0 : 1; + $304 = HEAP32[$pIndex>>2]|0; + $305 = (($304) + 55|0); + $306 = $303&255; + $307 = HEAP8[$305>>0]|0; + $308 = $306 & 3; + $309 = $307 & -4; + $310 = $309 | $308; + HEAP8[$305>>0] = $310; + $311 = HEAP32[$iDb>>2]|0; + $312 = HEAP32[$db>>2]|0; + $313 = (($312) + 16|0); + $314 = HEAP32[$313>>2]|0; + $315 = (($314) + ($311<<4)|0); + $316 = (($315) + 12|0); + $317 = HEAP32[$316>>2]|0; + $318 = HEAP32[$pIndex>>2]|0; + $319 = (($318) + 24|0); + HEAP32[$319>>2] = $317; + $320 = HEAP32[$4>>2]|0; + $321 = HEAP32[$320>>2]|0; + $322 = $321&65535; + $323 = HEAP32[$pIndex>>2]|0; + $324 = (($323) + 50|0); + HEAP16[$324>>1] = $322; + $325 = HEAP32[$7>>2]|0; + $326 = ($325|0)!=(0|0); + if ($326) { + $327 = HEAP32[$0>>2]|0; + $328 = HEAP32[$pTab>>2]|0; + $329 = HEAP32[$7>>2]|0; + _sqlite3ResolveSelfReference($327,$328,16,$329,0); + $330 = HEAP32[$7>>2]|0; + $331 = HEAP32[$pIndex>>2]|0; + $332 = (($331) + 36|0); + HEAP32[$332>>2] = $330; + HEAP32[$7>>2] = 0; + } + $333 = HEAP32[$pDb>>2]|0; + $334 = (($333) + 12|0); + $335 = HEAP32[$334>>2]|0; + $336 = (($335) + 76|0); + $337 = HEAP8[$336>>0]|0; + $338 = $337&255; + $339 = ($338|0)>=(4); + if ($339) { + HEAP32[$sortOrderMask>>2] = -1; + } else { + HEAP32[$sortOrderMask>>2] = 0; + } + HEAP32[$i>>2] = 0; + $340 = HEAP32[$4>>2]|0; + $341 = (($340) + 4|0); + $342 = HEAP32[$341>>2]|0; + HEAP32[$pListItem>>2] = $342; + while(1) { + $343 = HEAP32[$i>>2]|0; + $344 = HEAP32[$4>>2]|0; + $345 = HEAP32[$344>>2]|0; + $346 = ($343|0)<($345|0); + if (!($346)) { + break; + } + $347 = HEAP32[$pListItem>>2]|0; + $348 = (($347) + 4|0); + $349 = HEAP32[$348>>2]|0; + HEAP32[$zColName>>2] = $349; + HEAP32[$j>>2] = 0; + $350 = HEAP32[$pTab>>2]|0; + $351 = (($350) + 4|0); + $352 = HEAP32[$351>>2]|0; + HEAP32[$pTabCol>>2] = $352; + while(1) { + $353 = HEAP32[$j>>2]|0; + $354 = HEAP32[$pTab>>2]|0; + $355 = (($354) + 38|0); + $356 = HEAP16[$355>>1]|0; + $357 = $356 << 16 >> 16; + $358 = ($353|0)<($357|0); + if (!($358)) { + break; + } + $359 = HEAP32[$zColName>>2]|0; + $360 = HEAP32[$pTabCol>>2]|0; + $361 = HEAP32[$360>>2]|0; + $362 = (_sqlite3_stricmp($359,$361)|0); + $363 = ($362|0)==(0); + if ($363) { + break; + } + $364 = HEAP32[$j>>2]|0; + $365 = (($364) + 1)|0; + HEAP32[$j>>2] = $365; + $366 = HEAP32[$pTabCol>>2]|0; + $367 = (($366) + 24|0); + HEAP32[$pTabCol>>2] = $367; + } + $368 = HEAP32[$j>>2]|0; + $369 = HEAP32[$pTab>>2]|0; + $370 = (($369) + 38|0); + $371 = HEAP16[$370>>1]|0; + $372 = $371 << 16 >> 16; + $373 = ($368|0)>=($372|0); + if ($373) { + label = 65; + break; + } + $380 = HEAP32[$j>>2]|0; + $381 = $380&65535; + $382 = HEAP32[$i>>2]|0; + $383 = HEAP32[$pIndex>>2]|0; + $384 = (($383) + 4|0); + $385 = HEAP32[$384>>2]|0; + $386 = (($385) + ($382<<1)|0); + HEAP16[$386>>1] = $381; + $387 = HEAP32[$pListItem>>2]|0; + $388 = HEAP32[$387>>2]|0; + $389 = ($388|0)!=(0|0); + if ($389) { + $390 = HEAP32[$pListItem>>2]|0; + $391 = HEAP32[$390>>2]|0; + $392 = (($391) + 8|0); + $393 = HEAP32[$392>>2]|0; + HEAP32[$zColl>>2] = $393; + $394 = HEAP32[$zColl>>2]|0; + $395 = (_sqlite3Strlen30($394)|0); + $396 = (($395) + 1)|0; + HEAP32[$nColl>>2] = $396; + $397 = HEAP32[$zExtra>>2]|0; + $398 = HEAP32[$zColl>>2]|0; + $399 = HEAP32[$nColl>>2]|0; + _memcpy(($397|0),($398|0),($399|0))|0; + $400 = HEAP32[$zExtra>>2]|0; + HEAP32[$zColl>>2] = $400; + $401 = HEAP32[$nColl>>2]|0; + $402 = HEAP32[$zExtra>>2]|0; + $403 = (($402) + ($401)|0); + HEAP32[$zExtra>>2] = $403; + $404 = HEAP32[$nColl>>2]|0; + $405 = HEAP32[$nExtra>>2]|0; + $406 = (($405) - ($404))|0; + HEAP32[$nExtra>>2] = $406; + } else { + $407 = HEAP32[$j>>2]|0; + $408 = HEAP32[$pTab>>2]|0; + $409 = (($408) + 4|0); + $410 = HEAP32[$409>>2]|0; + $411 = (($410) + (($407*24)|0)|0); + $412 = (($411) + 16|0); + $413 = HEAP32[$412>>2]|0; + HEAP32[$zColl>>2] = $413; + $414 = HEAP32[$zColl>>2]|0; + $415 = ($414|0)!=(0|0); + $$1 = $415 ? $413 : 3640; + HEAP32[$zColl>>2] = $$1; + } + $416 = HEAP32[$db>>2]|0; + $417 = (($416) + 132|0); + $418 = (($417) + 5|0); + $419 = HEAP8[$418>>0]|0; + $420 = ($419<<24>>24)!=(0); + if (!($420)) { + $421 = HEAP32[$0>>2]|0; + $422 = HEAP32[$zColl>>2]|0; + $423 = (_sqlite3LocateCollSeq($421,$422)|0); + $424 = ($423|0)!=(0|0); + if (!($424)) { + break L1; + } + } + $425 = HEAP32[$zColl>>2]|0; + $426 = HEAP32[$i>>2]|0; + $427 = HEAP32[$pIndex>>2]|0; + $428 = (($427) + 32|0); + $429 = HEAP32[$428>>2]|0; + $430 = (($429) + ($426<<2)|0); + HEAP32[$430>>2] = $425; + $431 = HEAP32[$pListItem>>2]|0; + $432 = (($431) + 12|0); + $433 = HEAP8[$432>>0]|0; + $434 = $433&255; + $435 = HEAP32[$sortOrderMask>>2]|0; + $436 = $434 & $435; + HEAP32[$requestedSortOrder>>2] = $436; + $437 = HEAP32[$requestedSortOrder>>2]|0; + $438 = $437&255; + $439 = HEAP32[$i>>2]|0; + $440 = HEAP32[$pIndex>>2]|0; + $441 = (($440) + 28|0); + $442 = HEAP32[$441>>2]|0; + $443 = (($442) + ($439)|0); + HEAP8[$443>>0] = $438; + $444 = HEAP32[$j>>2]|0; + $445 = HEAP32[$pTab>>2]|0; + $446 = (($445) + 4|0); + $447 = HEAP32[$446>>2]|0; + $448 = (($447) + (($444*24)|0)|0); + $449 = (($448) + 20|0); + $450 = HEAP8[$449>>0]|0; + $451 = $450&255; + $452 = ($451|0)==(0); + if ($452) { + $453 = HEAP32[$pIndex>>2]|0; + $454 = (($453) + 55|0); + $455 = HEAP8[$454>>0]|0; + $456 = $455 & -9; + HEAP8[$454>>0] = $456; + } + $457 = HEAP32[$i>>2]|0; + $458 = (($457) + 1)|0; + HEAP32[$i>>2] = $458; + $459 = HEAP32[$pListItem>>2]|0; + $460 = (($459) + 20|0); + HEAP32[$pListItem>>2] = $460; + } + if ((label|0) == 65) { + $374 = HEAP32[$0>>2]|0; + $375 = HEAP32[$pTab>>2]|0; + $376 = HEAP32[$375>>2]|0; + $377 = HEAP32[$zColName>>2]|0; + HEAP32[$vararg_buffer39>>2] = $376; + $vararg_ptr22 = (($vararg_buffer39) + 4|0); + HEAP32[$vararg_ptr22>>2] = $377; + _sqlite3ErrorMsg($374,32640,$vararg_buffer39); + $378 = HEAP32[$0>>2]|0; + $379 = (($378) + 17|0); + HEAP8[$379>>0] = 1; + break; + } + $461 = HEAP32[$pPk>>2]|0; + $462 = ($461|0)!=(0|0); + L97: do { + if ($462) { + HEAP32[$j>>2] = 0; + while(1) { + $463 = HEAP32[$j>>2]|0; + $464 = HEAP32[$pPk>>2]|0; + $465 = (($464) + 50|0); + $466 = HEAP16[$465>>1]|0; + $467 = $466&65535; + $468 = ($463|0)<($467|0); + if (!($468)) { + break L97; + } + $469 = HEAP32[$j>>2]|0; + $470 = HEAP32[$pPk>>2]|0; + $471 = (($470) + 4|0); + $472 = HEAP32[$471>>2]|0; + $473 = (($472) + ($469<<1)|0); + $474 = HEAP16[$473>>1]|0; + $475 = $474 << 16 >> 16; + HEAP32[$x>>2] = $475; + $476 = HEAP32[$pIndex>>2]|0; + $477 = (($476) + 4|0); + $478 = HEAP32[$477>>2]|0; + $479 = HEAP32[$pIndex>>2]|0; + $480 = (($479) + 50|0); + $481 = HEAP16[$480>>1]|0; + $482 = $481&65535; + $483 = HEAP32[$x>>2]|0; + $484 = (_hasColumn($478,$482,$483)|0); + $485 = ($484|0)!=(0); + if ($485) { + $486 = HEAP32[$pIndex>>2]|0; + $487 = (($486) + 52|0); + $488 = HEAP16[$487>>1]|0; + $489 = (($488) + -1)<<16>>16; + HEAP16[$487>>1] = $489; + } else { + $490 = HEAP32[$x>>2]|0; + $491 = $490&65535; + $492 = HEAP32[$i>>2]|0; + $493 = HEAP32[$pIndex>>2]|0; + $494 = (($493) + 4|0); + $495 = HEAP32[$494>>2]|0; + $496 = (($495) + ($492<<1)|0); + HEAP16[$496>>1] = $491; + $497 = HEAP32[$j>>2]|0; + $498 = HEAP32[$pPk>>2]|0; + $499 = (($498) + 32|0); + $500 = HEAP32[$499>>2]|0; + $501 = (($500) + ($497<<2)|0); + $502 = HEAP32[$501>>2]|0; + $503 = HEAP32[$i>>2]|0; + $504 = HEAP32[$pIndex>>2]|0; + $505 = (($504) + 32|0); + $506 = HEAP32[$505>>2]|0; + $507 = (($506) + ($503<<2)|0); + HEAP32[$507>>2] = $502; + $508 = HEAP32[$j>>2]|0; + $509 = HEAP32[$pPk>>2]|0; + $510 = (($509) + 28|0); + $511 = HEAP32[$510>>2]|0; + $512 = (($511) + ($508)|0); + $513 = HEAP8[$512>>0]|0; + $514 = HEAP32[$i>>2]|0; + $515 = HEAP32[$pIndex>>2]|0; + $516 = (($515) + 28|0); + $517 = HEAP32[$516>>2]|0; + $518 = (($517) + ($514)|0); + HEAP8[$518>>0] = $513; + $519 = HEAP32[$i>>2]|0; + $520 = (($519) + 1)|0; + HEAP32[$i>>2] = $520; + } + $521 = HEAP32[$j>>2]|0; + $522 = (($521) + 1)|0; + HEAP32[$j>>2] = $522; + } + } else { + $523 = HEAP32[$i>>2]|0; + $524 = HEAP32[$pIndex>>2]|0; + $525 = (($524) + 4|0); + $526 = HEAP32[$525>>2]|0; + $527 = (($526) + ($523<<1)|0); + HEAP16[$527>>1] = -1; + $528 = HEAP32[$i>>2]|0; + $529 = HEAP32[$pIndex>>2]|0; + $530 = (($529) + 32|0); + $531 = HEAP32[$530>>2]|0; + $532 = (($531) + ($528<<2)|0); + HEAP32[$532>>2] = 3640; + } + } while(0); + $533 = HEAP32[$pIndex>>2]|0; + _sqlite3DefaultRowEst($533); + $534 = HEAP32[$0>>2]|0; + $535 = (($534) + 484|0); + $536 = HEAP32[$535>>2]|0; + $537 = ($536|0)==(0|0); + if ($537) { + $538 = HEAP32[$pIndex>>2]|0; + _estimateIndexWidth($538); + } + $539 = HEAP32[$pTab>>2]|0; + $540 = HEAP32[$0>>2]|0; + $541 = (($540) + 484|0); + $542 = HEAP32[$541>>2]|0; + $543 = ($539|0)==($542|0); + L111: do { + if ($543) { + $544 = HEAP32[$pTab>>2]|0; + $545 = (($544) + 8|0); + $546 = HEAP32[$545>>2]|0; + HEAP32[$pIdx>>2] = $546; + while(1) { + $547 = HEAP32[$pIdx>>2]|0; + $548 = ($547|0)!=(0|0); + if (!($548)) { + break L111; + } + $549 = HEAP32[$pIdx>>2]|0; + $550 = (($549) + 50|0); + $551 = HEAP16[$550>>1]|0; + $552 = $551&65535; + $553 = HEAP32[$pIndex>>2]|0; + $554 = (($553) + 50|0); + $555 = HEAP16[$554>>1]|0; + $556 = $555&65535; + $557 = ($552|0)!=($556|0); + if (!($557)) { + HEAP32[$k>>2] = 0; + while(1) { + $558 = HEAP32[$k>>2]|0; + $559 = HEAP32[$pIdx>>2]|0; + $560 = (($559) + 50|0); + $561 = HEAP16[$560>>1]|0; + $562 = $561&65535; + $563 = ($558|0)<($562|0); + if (!($563)) { + break; + } + $564 = HEAP32[$k>>2]|0; + $565 = HEAP32[$pIdx>>2]|0; + $566 = (($565) + 4|0); + $567 = HEAP32[$566>>2]|0; + $568 = (($567) + ($564<<1)|0); + $569 = HEAP16[$568>>1]|0; + $570 = $569 << 16 >> 16; + $571 = HEAP32[$k>>2]|0; + $572 = HEAP32[$pIndex>>2]|0; + $573 = (($572) + 4|0); + $574 = HEAP32[$573>>2]|0; + $575 = (($574) + ($571<<1)|0); + $576 = HEAP16[$575>>1]|0; + $577 = $576 << 16 >> 16; + $578 = ($570|0)!=($577|0); + if ($578) { + break; + } + $579 = HEAP32[$k>>2]|0; + $580 = HEAP32[$pIdx>>2]|0; + $581 = (($580) + 32|0); + $582 = HEAP32[$581>>2]|0; + $583 = (($582) + ($579<<2)|0); + $584 = HEAP32[$583>>2]|0; + HEAP32[$z1>>2] = $584; + $585 = HEAP32[$k>>2]|0; + $586 = HEAP32[$pIndex>>2]|0; + $587 = (($586) + 32|0); + $588 = HEAP32[$587>>2]|0; + $589 = (($588) + ($585<<2)|0); + $590 = HEAP32[$589>>2]|0; + HEAP32[$z2>>2] = $590; + $591 = HEAP32[$z1>>2]|0; + $592 = HEAP32[$z2>>2]|0; + $593 = ($591|0)!=($592|0); + if ($593) { + $594 = HEAP32[$z1>>2]|0; + $595 = HEAP32[$z2>>2]|0; + $596 = (_sqlite3_stricmp($594,$595)|0); + $597 = ($596|0)!=(0); + if ($597) { + break; + } + } + $598 = HEAP32[$k>>2]|0; + $599 = (($598) + 1)|0; + HEAP32[$k>>2] = $599; + } + $600 = HEAP32[$k>>2]|0; + $601 = HEAP32[$pIdx>>2]|0; + $602 = (($601) + 50|0); + $603 = HEAP16[$602>>1]|0; + $604 = $603&65535; + $605 = ($600|0)==($604|0); + if ($605) { + break; + } + } + $636 = HEAP32[$pIdx>>2]|0; + $637 = (($636) + 20|0); + $638 = HEAP32[$637>>2]|0; + HEAP32[$pIdx>>2] = $638; + } + $606 = HEAP32[$pIdx>>2]|0; + $607 = (($606) + 54|0); + $608 = HEAP8[$607>>0]|0; + $609 = $608&255; + $610 = HEAP32[$pIndex>>2]|0; + $611 = (($610) + 54|0); + $612 = HEAP8[$611>>0]|0; + $613 = $612&255; + $614 = ($609|0)!=($613|0); + if (!($614)) { + break L1; + } + $615 = HEAP32[$pIdx>>2]|0; + $616 = (($615) + 54|0); + $617 = HEAP8[$616>>0]|0; + $618 = $617&255; + $619 = ($618|0)==(10); + do { + if (!($619)) { + $620 = HEAP32[$pIndex>>2]|0; + $621 = (($620) + 54|0); + $622 = HEAP8[$621>>0]|0; + $623 = $622&255; + $624 = ($623|0)==(10); + if ($624) { + break; + } + $625 = HEAP32[$0>>2]|0; + HEAP32[$vararg_buffer39>>2] = 0; + _sqlite3ErrorMsg($625,32672,$vararg_buffer39); + } + } while(0); + $626 = HEAP32[$pIdx>>2]|0; + $627 = (($626) + 54|0); + $628 = HEAP8[$627>>0]|0; + $629 = $628&255; + $630 = ($629|0)==(10); + if (!($630)) { + break L1; + } + $631 = HEAP32[$pIndex>>2]|0; + $632 = (($631) + 54|0); + $633 = HEAP8[$632>>0]|0; + $634 = HEAP32[$pIdx>>2]|0; + $635 = (($634) + 54|0); + HEAP8[$635>>0] = $633; + break L1; + } + } while(0); + $639 = HEAP32[$db>>2]|0; + $640 = (($639) + 132|0); + $641 = (($640) + 5|0); + $642 = HEAP8[$641>>0]|0; + $643 = ($642<<24>>24)!=(0); + do { + if ($643) { + $644 = HEAP32[$pIndex>>2]|0; + $645 = (($644) + 24|0); + $646 = HEAP32[$645>>2]|0; + $647 = (($646) + 24|0); + $648 = HEAP32[$pIndex>>2]|0; + $649 = HEAP32[$648>>2]|0; + $650 = HEAP32[$pIndex>>2]|0; + $651 = HEAP32[$650>>2]|0; + $652 = (_sqlite3Strlen30($651)|0); + $653 = HEAP32[$pIndex>>2]|0; + $654 = (_sqlite3HashInsert($647,$649,$652,$653)|0); + HEAP32[$p>>2] = $654; + $655 = HEAP32[$p>>2]|0; + $656 = ($655|0)!=(0|0); + $657 = HEAP32[$db>>2]|0; + if ($656) { + $658 = (($657) + 64|0); + HEAP8[$658>>0] = 1; + break L1; + } + $659 = (($657) + 24|0); + $660 = HEAP32[$659>>2]|0; + $661 = $660 | 2; + HEAP32[$659>>2] = $661; + $662 = HEAP32[$3>>2]|0; + $663 = ($662|0)!=(0|0); + if (!($663)) { + break; + } + $664 = HEAP32[$db>>2]|0; + $665 = (($664) + 132|0); + $666 = HEAP32[$665>>2]|0; + $667 = HEAP32[$pIndex>>2]|0; + $668 = (($667) + 44|0); + HEAP32[$668>>2] = $666; + } else { + $669 = HEAP32[$0>>2]|0; + $670 = (($669) + 64|0); + $671 = HEAP32[$670>>2]|0; + $672 = ($671|0)==(0); + if (!($672)) { + break; + } + $673 = HEAP32[$pTab>>2]|0; + $674 = (($673) + 44|0); + $675 = HEAP8[$674>>0]|0; + $676 = $675&255; + $677 = $676 & 32; + $678 = ($677|0)==(0); + if (!($678)) { + $679 = HEAP32[$3>>2]|0; + $680 = ($679|0)!=(0|0); + if (!($680)) { + break; + } + } + $681 = HEAP32[$0>>2]|0; + $682 = (($681) + 72|0); + $683 = HEAP32[$682>>2]|0; + $684 = (($683) + 1)|0; + HEAP32[$682>>2] = $684; + HEAP32[$iMem>>2] = $684; + $685 = HEAP32[$0>>2]|0; + $686 = (_sqlite3GetVdbe($685)|0); + HEAP32[$v>>2] = $686; + $687 = HEAP32[$v>>2]|0; + $688 = ($687|0)==(0|0); + if ($688) { + break L1; + } + $689 = HEAP32[$0>>2]|0; + $690 = HEAP32[$iDb>>2]|0; + _sqlite3BeginWriteOperation($689,1,$690); + $691 = HEAP32[$v>>2]|0; + $692 = HEAP32[$iDb>>2]|0; + $693 = HEAP32[$iMem>>2]|0; + (_sqlite3VdbeAddOp2($691,117,$692,$693)|0); + $694 = HEAP32[$6>>2]|0; + $695 = ($694|0)!=(0|0); + if ($695) { + $696 = HEAP32[$0>>2]|0; + $697 = (($696) + 504|0); + $698 = HEAP32[$697>>2]|0; + $699 = HEAP32[$pName>>2]|0; + $700 = HEAP32[$699>>2]|0; + $701 = $698; + $702 = $700; + $703 = (($701) - ($702))|0; + $704 = HEAP32[$0>>2]|0; + $705 = (($704) + 504|0); + $706 = (($705) + 4|0); + $707 = HEAP32[$706>>2]|0; + $708 = (($703) + ($707))|0; + HEAP32[$n1>>2] = $708; + $709 = HEAP32[$n1>>2]|0; + $710 = (($709) - 1)|0; + $711 = HEAP32[$pName>>2]|0; + $712 = HEAP32[$711>>2]|0; + $713 = (($712) + ($710)|0); + $714 = HEAP8[$713>>0]|0; + $715 = $714 << 24 >> 24; + $716 = ($715|0)==(59); + if ($716) { + $717 = HEAP32[$n1>>2]|0; + $718 = (($717) + -1)|0; + HEAP32[$n1>>2] = $718; + } + $719 = HEAP32[$db>>2]|0; + $720 = HEAP32[$5>>2]|0; + $721 = ($720|0)==(0); + $722 = $721 ? 1784 : 32744; + $723 = HEAP32[$n1>>2]|0; + $724 = HEAP32[$pName>>2]|0; + $725 = HEAP32[$724>>2]|0; + HEAP32[$vararg_buffer39>>2] = $722; + $vararg_ptr29 = (($vararg_buffer39) + 4|0); + HEAP32[$vararg_ptr29>>2] = $723; + $vararg_ptr30 = (($vararg_buffer39) + 8|0); + HEAP32[$vararg_ptr30>>2] = $725; + $726 = (_sqlite3MPrintf($719,32720,$vararg_buffer39)|0); + HEAP32[$zStmt>>2] = $726; + } else { + HEAP32[$zStmt>>2] = 0; + } + $727 = HEAP32[$0>>2]|0; + $728 = HEAP32[$iDb>>2]|0; + $729 = HEAP32[$db>>2]|0; + $730 = (($729) + 16|0); + $731 = HEAP32[$730>>2]|0; + $732 = (($731) + ($728<<4)|0); + $733 = HEAP32[$732>>2]|0; + $734 = HEAP32[$iDb>>2]|0; + $735 = ($734|0)==(1); + $736 = $735 ? 21432 : 21456; + $737 = HEAP32[$pIndex>>2]|0; + $738 = HEAP32[$737>>2]|0; + $739 = HEAP32[$pTab>>2]|0; + $740 = HEAP32[$739>>2]|0; + $741 = HEAP32[$iMem>>2]|0; + $742 = HEAP32[$zStmt>>2]|0; + HEAP32[$vararg_buffer39>>2] = $733; + $vararg_ptr34 = (($vararg_buffer39) + 4|0); + HEAP32[$vararg_ptr34>>2] = $736; + $vararg_ptr35 = (($vararg_buffer39) + 8|0); + HEAP32[$vararg_ptr35>>2] = $738; + $vararg_ptr36 = (($vararg_buffer39) + 12|0); + HEAP32[$vararg_ptr36>>2] = $740; + $vararg_ptr37 = (($vararg_buffer39) + 16|0); + HEAP32[$vararg_ptr37>>2] = $741; + $vararg_ptr38 = (($vararg_buffer39) + 20|0); + HEAP32[$vararg_ptr38>>2] = $742; + _sqlite3NestedParse($727,32752,$vararg_buffer39); + $743 = HEAP32[$db>>2]|0; + $744 = HEAP32[$zStmt>>2]|0; + _sqlite3DbFree($743,$744); + $745 = HEAP32[$3>>2]|0; + $746 = ($745|0)!=(0|0); + if (!($746)) { + break; + } + $747 = HEAP32[$0>>2]|0; + $748 = HEAP32[$pIndex>>2]|0; + $749 = HEAP32[$iMem>>2]|0; + _sqlite3RefillIndex($747,$748,$749); + $750 = HEAP32[$0>>2]|0; + $751 = HEAP32[$iDb>>2]|0; + _sqlite3ChangeCookie($750,$751); + $752 = HEAP32[$v>>2]|0; + $753 = HEAP32[$iDb>>2]|0; + $754 = HEAP32[$db>>2]|0; + $755 = HEAP32[$pIndex>>2]|0; + $756 = HEAP32[$755>>2]|0; + HEAP32[$vararg_buffer39>>2] = $756; + $757 = (_sqlite3MPrintf($754,32800,$vararg_buffer39)|0); + _sqlite3VdbeAddParseSchemaOp($752,$753,$757); + $758 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp1($758,139,0)|0); + } + } while(0); + $759 = HEAP32[$db>>2]|0; + $760 = (($759) + 132|0); + $761 = (($760) + 5|0); + $762 = HEAP8[$761>>0]|0; + $763 = $762&255; + $764 = ($763|0)!=(0); + if (!($764)) { + $765 = HEAP32[$3>>2]|0; + $766 = ($765|0)==(0|0); + if (!($766)) { + break; + } + } + $767 = HEAP32[$5>>2]|0; + $768 = ($767|0)!=(5); + do { + if ($768) { + label = 123; + } else { + $769 = HEAP32[$pTab>>2]|0; + $770 = (($769) + 8|0); + $771 = HEAP32[$770>>2]|0; + $772 = ($771|0)==(0|0); + if ($772) { + label = 123; + break; + } + $773 = HEAP32[$pTab>>2]|0; + $774 = (($773) + 8|0); + $775 = HEAP32[$774>>2]|0; + $776 = (($775) + 54|0); + $777 = HEAP8[$776>>0]|0; + $778 = $777&255; + $779 = ($778|0)==(5); + if ($779) { + label = 123; + break; + } + $788 = HEAP32[$pTab>>2]|0; + $789 = (($788) + 8|0); + $790 = HEAP32[$789>>2]|0; + HEAP32[$pOther>>2] = $790; + while(1) { + $791 = HEAP32[$pOther>>2]|0; + $792 = (($791) + 20|0); + $793 = HEAP32[$792>>2]|0; + $794 = ($793|0)!=(0|0); + if ($794) { + $795 = HEAP32[$pOther>>2]|0; + $796 = (($795) + 20|0); + $797 = HEAP32[$796>>2]|0; + $798 = (($797) + 54|0); + $799 = HEAP8[$798>>0]|0; + $800 = $799&255; + $801 = ($800|0)!=(5); + $824 = $801; + } else { + $824 = 0; + } + $802 = HEAP32[$pOther>>2]|0; + $803 = (($802) + 20|0); + $804 = HEAP32[$803>>2]|0; + if (!($824)) { + break; + } + HEAP32[$pOther>>2] = $804; + } + $805 = HEAP32[$pIndex>>2]|0; + $806 = (($805) + 20|0); + HEAP32[$806>>2] = $804; + $807 = HEAP32[$pIndex>>2]|0; + $808 = HEAP32[$pOther>>2]|0; + $809 = (($808) + 20|0); + HEAP32[$809>>2] = $807; + } + } while(0); + if ((label|0) == 123) { + $780 = HEAP32[$pTab>>2]|0; + $781 = (($780) + 8|0); + $782 = HEAP32[$781>>2]|0; + $783 = HEAP32[$pIndex>>2]|0; + $784 = (($783) + 20|0); + HEAP32[$784>>2] = $782; + $785 = HEAP32[$pIndex>>2]|0; + $786 = HEAP32[$pTab>>2]|0; + $787 = (($786) + 8|0); + HEAP32[$787>>2] = $785; + } + $810 = HEAP32[$pIndex>>2]|0; + HEAP32[$pRet>>2] = $810; + HEAP32[$pIndex>>2] = 0; + } + } + } + } + } + } + } while(0); + $811 = HEAP32[$pIndex>>2]|0; + $812 = ($811|0)!=(0|0); + if (!($812)) { + $815 = HEAP32[$db>>2]|0; + $816 = HEAP32[$7>>2]|0; + _sqlite3ExprDelete($815,$816); + $817 = HEAP32[$db>>2]|0; + $818 = HEAP32[$4>>2]|0; + _sqlite3ExprListDelete($817,$818); + $819 = HEAP32[$db>>2]|0; + $820 = HEAP32[$3>>2]|0; + _sqlite3SrcListDelete($819,$820); + $821 = HEAP32[$db>>2]|0; + $822 = HEAP32[$zName>>2]|0; + _sqlite3DbFree($821,$822); + $823 = HEAP32[$pRet>>2]|0; + STACKTOP = sp;return ($823|0); + } + $813 = HEAP32[$db>>2]|0; + $814 = HEAP32[$pIndex>>2]|0; + _freeIndex($813,$814); + $815 = HEAP32[$db>>2]|0; + $816 = HEAP32[$7>>2]|0; + _sqlite3ExprDelete($815,$816); + $817 = HEAP32[$db>>2]|0; + $818 = HEAP32[$4>>2]|0; + _sqlite3ExprListDelete($817,$818); + $819 = HEAP32[$db>>2]|0; + $820 = HEAP32[$3>>2]|0; + _sqlite3SrcListDelete($819,$820); + $821 = HEAP32[$db>>2]|0; + $822 = HEAP32[$zName>>2]|0; + _sqlite3DbFree($821,$822); + $823 = HEAP32[$pRet>>2]|0; + STACKTOP = sp;return ($823|0); +} +function _sqlite3AddCheckConstraint($pParse,$pCheckExpr) { + $pParse = $pParse|0; + $pCheckExpr = $pCheckExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $pTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $pTab = sp + 4|0; + $db = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pCheckExpr; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 484|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pTab>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$pTab>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 451|0); + $11 = HEAP8[$10>>0]|0; + $12 = ($11<<24>>24)!=(0); + if (!($12)) { + $13 = HEAP32[$db>>2]|0; + $14 = (($13) + 132|0); + $15 = (($14) + 4|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = HEAP32[$db>>2]|0; + $19 = (($18) + 16|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + ($17<<4)|0); + $22 = (($21) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = (_sqlite3BtreeIsReadonly($23)|0); + $25 = ($24|0)!=(0); + if (!($25)) { + $26 = HEAP32[$0>>2]|0; + $27 = HEAP32[$pTab>>2]|0; + $28 = (($27) + 24|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$1>>2]|0; + $31 = (_sqlite3ExprListAppend($26,$29,$30)|0); + $32 = HEAP32[$pTab>>2]|0; + $33 = (($32) + 24|0); + HEAP32[$33>>2] = $31; + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 320|0); + $36 = (($35) + 4|0); + $37 = HEAP32[$36>>2]|0; + $38 = ($37|0)!=(0); + if (!($38)) { + STACKTOP = sp;return; + } + $39 = HEAP32[$0>>2]|0; + $40 = HEAP32[$pTab>>2]|0; + $41 = (($40) + 24|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$0>>2]|0; + $44 = (($43) + 320|0); + _sqlite3ExprListSetName($39,$42,$44,1); + STACKTOP = sp;return; + } + } + } + $45 = HEAP32[$0>>2]|0; + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$1>>2]|0; + _sqlite3ExprDelete($46,$47); + STACKTOP = sp;return; +} +function _sqlite3CreateForeignKey($pParse,$pFromCol,$pTo,$pToCol,$flags) { + $pParse = $pParse|0; + $pFromCol = $pFromCol|0; + $pTo = $pTo|0; + $pToCol = $pToCol|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0; + var $iCol = 0, $j = 0, $n = 0, $nByte = 0, $nCol = 0, $p = 0, $pFKey = 0, $pNextTo = 0, $vararg_buffer4 = 0, $vararg_ptr1 = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer4 = sp; + $0 = sp + 64|0; + $1 = sp + 60|0; + $2 = sp + 56|0; + $3 = sp + 52|0; + $4 = sp + 48|0; + $db = sp + 44|0; + $pFKey = sp + 40|0; + $pNextTo = sp + 68|0; + $p = sp + 28|0; + $nByte = sp + 24|0; + $i = sp + 20|0; + $nCol = sp + 16|0; + $z = sp + 12|0; + $iCol = sp + 8|0; + $j = sp + 32|0; + $n = sp + 36|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pFromCol; + HEAP32[$2>>2] = $pTo; + HEAP32[$3>>2] = $pToCol; + HEAP32[$4>>2] = $flags; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + HEAP32[$pFKey>>2] = 0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 484|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$p>>2] = $9; + $10 = HEAP32[$p>>2]|0; + $11 = ($10|0)==(0|0); + L1: do { + if (!($11)) { + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 451|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = HEAP32[$1>>2]|0; + $18 = ($17|0)==(0|0); + if ($18) { + $19 = HEAP32[$p>>2]|0; + $20 = (($19) + 38|0); + $21 = HEAP16[$20>>1]|0; + $22 = $21 << 16 >> 16; + $23 = (($22) - 1)|0; + HEAP32[$iCol>>2] = $23; + $24 = HEAP32[$iCol>>2]|0; + $25 = ($24|0)<(0); + if ($25) { + break; + } + $26 = HEAP32[$3>>2]|0; + $27 = ($26|0)!=(0|0); + if ($27) { + $28 = HEAP32[$3>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = ($29|0)!=(1); + if ($30) { + $31 = HEAP32[$0>>2]|0; + $32 = HEAP32[$iCol>>2]|0; + $33 = HEAP32[$p>>2]|0; + $34 = (($33) + 4|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + (($32*24)|0)|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer4>>2] = $37; + $vararg_ptr1 = (($vararg_buffer4) + 4|0); + HEAP32[$vararg_ptr1>>2] = $38; + _sqlite3ErrorMsg($31,32168,$vararg_buffer4); + break; + } + } + HEAP32[$nCol>>2] = 1; + } else { + $39 = HEAP32[$3>>2]|0; + $40 = ($39|0)!=(0|0); + if ($40) { + $41 = HEAP32[$3>>2]|0; + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$1>>2]|0; + $44 = HEAP32[$43>>2]|0; + $45 = ($42|0)!=($44|0); + if ($45) { + $46 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($46,32232,$vararg_buffer4); + break; + } + } + $47 = HEAP32[$1>>2]|0; + $48 = HEAP32[$47>>2]|0; + HEAP32[$nCol>>2] = $48; + } + $49 = HEAP32[$nCol>>2]|0; + $50 = (($49) - 1)|0; + $51 = $50<<3; + $52 = (44 + ($51))|0; + $53 = HEAP32[$2>>2]|0; + $54 = (($53) + 4|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($52) + ($55))|0; + $57 = (($56) + 1)|0; + HEAP32[$nByte>>2] = $57; + $58 = HEAP32[$3>>2]|0; + $59 = ($58|0)!=(0|0); + L17: do { + if ($59) { + HEAP32[$i>>2] = 0; + while(1) { + $60 = HEAP32[$i>>2]|0; + $61 = HEAP32[$3>>2]|0; + $62 = HEAP32[$61>>2]|0; + $63 = ($60|0)<($62|0); + if (!($63)) { + break L17; + } + $64 = HEAP32[$i>>2]|0; + $65 = HEAP32[$3>>2]|0; + $66 = (($65) + 4|0); + $67 = HEAP32[$66>>2]|0; + $68 = (($67) + (($64*20)|0)|0); + $69 = (($68) + 4|0); + $70 = HEAP32[$69>>2]|0; + $71 = (_sqlite3Strlen30($70)|0); + $72 = (($71) + 1)|0; + $73 = HEAP32[$nByte>>2]|0; + $74 = (($73) + ($72))|0; + HEAP32[$nByte>>2] = $74; + $75 = HEAP32[$i>>2]|0; + $76 = (($75) + 1)|0; + HEAP32[$i>>2] = $76; + } + } + } while(0); + $77 = HEAP32[$db>>2]|0; + $78 = HEAP32[$nByte>>2]|0; + $79 = (_sqlite3DbMallocZero($77,$78)|0); + HEAP32[$pFKey>>2] = $79; + $80 = HEAP32[$pFKey>>2]|0; + $81 = ($80|0)==(0|0); + if (!($81)) { + $82 = HEAP32[$p>>2]|0; + $83 = HEAP32[$pFKey>>2]|0; + HEAP32[$83>>2] = $82; + $84 = HEAP32[$p>>2]|0; + $85 = (($84) + 16|0); + $86 = HEAP32[$85>>2]|0; + $87 = HEAP32[$pFKey>>2]|0; + $88 = (($87) + 4|0); + HEAP32[$88>>2] = $86; + $89 = HEAP32[$nCol>>2]|0; + $90 = HEAP32[$pFKey>>2]|0; + $91 = (($90) + 36|0); + $92 = (($91) + ($89<<3)|0); + HEAP32[$z>>2] = $92; + $93 = HEAP32[$z>>2]|0; + $94 = HEAP32[$pFKey>>2]|0; + $95 = (($94) + 8|0); + HEAP32[$95>>2] = $93; + $96 = HEAP32[$z>>2]|0; + $97 = HEAP32[$2>>2]|0; + $98 = HEAP32[$97>>2]|0; + $99 = HEAP32[$2>>2]|0; + $100 = (($99) + 4|0); + $101 = HEAP32[$100>>2]|0; + _memcpy(($96|0),($98|0),($101|0))|0; + $102 = HEAP32[$2>>2]|0; + $103 = (($102) + 4|0); + $104 = HEAP32[$103>>2]|0; + $105 = HEAP32[$z>>2]|0; + $106 = (($105) + ($104)|0); + HEAP8[$106>>0] = 0; + $107 = HEAP32[$z>>2]|0; + (_sqlite3Dequote($107)|0); + $108 = HEAP32[$2>>2]|0; + $109 = (($108) + 4|0); + $110 = HEAP32[$109>>2]|0; + $111 = (($110) + 1)|0; + $112 = HEAP32[$z>>2]|0; + $113 = (($112) + ($111)|0); + HEAP32[$z>>2] = $113; + $114 = HEAP32[$nCol>>2]|0; + $115 = HEAP32[$pFKey>>2]|0; + $116 = (($115) + 20|0); + HEAP32[$116>>2] = $114; + $117 = HEAP32[$1>>2]|0; + $118 = ($117|0)==(0|0); + L24: do { + if ($118) { + $119 = HEAP32[$p>>2]|0; + $120 = (($119) + 38|0); + $121 = HEAP16[$120>>1]|0; + $122 = $121 << 16 >> 16; + $123 = (($122) - 1)|0; + $124 = HEAP32[$pFKey>>2]|0; + $125 = (($124) + 36|0); + HEAP32[$125>>2] = $123; + } else { + HEAP32[$i>>2] = 0; + while(1) { + $126 = HEAP32[$i>>2]|0; + $127 = HEAP32[$nCol>>2]|0; + $128 = ($126|0)<($127|0); + if (!($128)) { + break L24; + } + HEAP32[$j>>2] = 0; + while(1) { + $129 = HEAP32[$j>>2]|0; + $130 = HEAP32[$p>>2]|0; + $131 = (($130) + 38|0); + $132 = HEAP16[$131>>1]|0; + $133 = $132 << 16 >> 16; + $134 = ($129|0)<($133|0); + if (!($134)) { + break; + } + $135 = HEAP32[$j>>2]|0; + $136 = HEAP32[$p>>2]|0; + $137 = (($136) + 4|0); + $138 = HEAP32[$137>>2]|0; + $139 = (($138) + (($135*24)|0)|0); + $140 = HEAP32[$139>>2]|0; + $141 = HEAP32[$i>>2]|0; + $142 = HEAP32[$1>>2]|0; + $143 = (($142) + 4|0); + $144 = HEAP32[$143>>2]|0; + $145 = (($144) + (($141*20)|0)|0); + $146 = (($145) + 4|0); + $147 = HEAP32[$146>>2]|0; + $148 = (_sqlite3_stricmp($140,$147)|0); + $149 = ($148|0)==(0); + $150 = HEAP32[$j>>2]|0; + if ($149) { + label = 25; + break; + } + $155 = (($150) + 1)|0; + HEAP32[$j>>2] = $155; + } + if ((label|0) == 25) { + label = 0; + $151 = HEAP32[$i>>2]|0; + $152 = HEAP32[$pFKey>>2]|0; + $153 = (($152) + 36|0); + $154 = (($153) + ($151<<3)|0); + HEAP32[$154>>2] = $150; + } + $156 = HEAP32[$j>>2]|0; + $157 = HEAP32[$p>>2]|0; + $158 = (($157) + 38|0); + $159 = HEAP16[$158>>1]|0; + $160 = $159 << 16 >> 16; + $161 = ($156|0)>=($160|0); + if ($161) { + break; + } + $170 = HEAP32[$i>>2]|0; + $171 = (($170) + 1)|0; + HEAP32[$i>>2] = $171; + } + $162 = HEAP32[$0>>2]|0; + $163 = HEAP32[$i>>2]|0; + $164 = HEAP32[$1>>2]|0; + $165 = (($164) + 4|0); + $166 = HEAP32[$165>>2]|0; + $167 = (($166) + (($163*20)|0)|0); + $168 = (($167) + 4|0); + $169 = HEAP32[$168>>2]|0; + HEAP32[$vararg_buffer4>>2] = $169; + _sqlite3ErrorMsg($162,32328,$vararg_buffer4); + break L1; + } + } while(0); + $172 = HEAP32[$3>>2]|0; + $173 = ($172|0)!=(0|0); + L40: do { + if ($173) { + HEAP32[$i>>2] = 0; + while(1) { + $174 = HEAP32[$i>>2]|0; + $175 = HEAP32[$nCol>>2]|0; + $176 = ($174|0)<($175|0); + if (!($176)) { + break L40; + } + $177 = HEAP32[$i>>2]|0; + $178 = HEAP32[$3>>2]|0; + $179 = (($178) + 4|0); + $180 = HEAP32[$179>>2]|0; + $181 = (($180) + (($177*20)|0)|0); + $182 = (($181) + 4|0); + $183 = HEAP32[$182>>2]|0; + $184 = (_sqlite3Strlen30($183)|0); + HEAP32[$n>>2] = $184; + $185 = HEAP32[$z>>2]|0; + $186 = HEAP32[$i>>2]|0; + $187 = HEAP32[$pFKey>>2]|0; + $188 = (($187) + 36|0); + $189 = (($188) + ($186<<3)|0); + $190 = (($189) + 4|0); + HEAP32[$190>>2] = $185; + $191 = HEAP32[$z>>2]|0; + $192 = HEAP32[$i>>2]|0; + $193 = HEAP32[$3>>2]|0; + $194 = (($193) + 4|0); + $195 = HEAP32[$194>>2]|0; + $196 = (($195) + (($192*20)|0)|0); + $197 = (($196) + 4|0); + $198 = HEAP32[$197>>2]|0; + $199 = HEAP32[$n>>2]|0; + _memcpy(($191|0),($198|0),($199|0))|0; + $200 = HEAP32[$n>>2]|0; + $201 = HEAP32[$z>>2]|0; + $202 = (($201) + ($200)|0); + HEAP8[$202>>0] = 0; + $203 = HEAP32[$n>>2]|0; + $204 = (($203) + 1)|0; + $205 = HEAP32[$z>>2]|0; + $206 = (($205) + ($204)|0); + HEAP32[$z>>2] = $206; + $207 = HEAP32[$i>>2]|0; + $208 = (($207) + 1)|0; + HEAP32[$i>>2] = $208; + } + } + } while(0); + $209 = HEAP32[$pFKey>>2]|0; + $210 = (($209) + 24|0); + HEAP8[$210>>0] = 0; + $211 = HEAP32[$4>>2]|0; + $212 = $211 & 255; + $213 = $212&255; + $214 = HEAP32[$pFKey>>2]|0; + $215 = (($214) + 25|0); + HEAP8[$215>>0] = $213; + $216 = HEAP32[$4>>2]|0; + $217 = $216 >> 8; + $218 = $217 & 255; + $219 = $218&255; + $220 = HEAP32[$pFKey>>2]|0; + $221 = (($220) + 25|0); + $222 = (($221) + 1|0); + HEAP8[$222>>0] = $219; + $223 = HEAP32[$p>>2]|0; + $224 = (($223) + 68|0); + $225 = HEAP32[$224>>2]|0; + $226 = (($225) + 56|0); + $227 = HEAP32[$pFKey>>2]|0; + $228 = (($227) + 8|0); + $229 = HEAP32[$228>>2]|0; + $230 = HEAP32[$pFKey>>2]|0; + $231 = (($230) + 8|0); + $232 = HEAP32[$231>>2]|0; + $233 = (_sqlite3Strlen30($232)|0); + $234 = HEAP32[$pFKey>>2]|0; + $235 = (_sqlite3HashInsert($226,$229,$233,$234)|0); + HEAP32[$pNextTo>>2] = $235; + $236 = HEAP32[$pNextTo>>2]|0; + $237 = HEAP32[$pFKey>>2]|0; + $238 = ($236|0)==($237|0); + if ($238) { + $239 = HEAP32[$db>>2]|0; + $240 = (($239) + 64|0); + HEAP8[$240>>0] = 1; + break; + } + $241 = HEAP32[$pNextTo>>2]|0; + $242 = ($241|0)!=(0|0); + if ($242) { + $243 = HEAP32[$pNextTo>>2]|0; + $244 = HEAP32[$pFKey>>2]|0; + $245 = (($244) + 12|0); + HEAP32[$245>>2] = $243; + $246 = HEAP32[$pFKey>>2]|0; + $247 = HEAP32[$pNextTo>>2]|0; + $248 = (($247) + 16|0); + HEAP32[$248>>2] = $246; + } + $249 = HEAP32[$pFKey>>2]|0; + $250 = HEAP32[$p>>2]|0; + $251 = (($250) + 16|0); + HEAP32[$251>>2] = $249; + HEAP32[$pFKey>>2] = 0; + } + } + } + } while(0); + $252 = HEAP32[$db>>2]|0; + $253 = HEAP32[$pFKey>>2]|0; + _sqlite3DbFree($252,$253); + $254 = HEAP32[$db>>2]|0; + $255 = HEAP32[$1>>2]|0; + _sqlite3ExprListDelete($254,$255); + $256 = HEAP32[$db>>2]|0; + $257 = HEAP32[$3>>2]|0; + _sqlite3ExprListDelete($256,$257); + STACKTOP = sp;return; +} +function _sqlite3DeferForeignKey($pParse,$isDeferred) { + $pParse = $pParse|0; + $isDeferred = $isDeferred|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pFKey = 0, $pTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $pTab = sp + 4|0; + $pFKey = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $isDeferred; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 484|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pTab>>2] = $4; + $5 = ($4|0)==(0|0); + if ($5) { + STACKTOP = sp;return; + } + $6 = HEAP32[$pTab>>2]|0; + $7 = (($6) + 16|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pFKey>>2] = $8; + $9 = ($8|0)==(0|0); + if ($9) { + STACKTOP = sp;return; + } + $10 = HEAP32[$1>>2]|0; + $11 = $10&255; + $12 = HEAP32[$pFKey>>2]|0; + $13 = (($12) + 24|0); + HEAP8[$13>>0] = $11; + STACKTOP = sp;return; +} +function _sqlite3AddCollateType($pParse,$pToken) { + $pParse = $pParse|0; + $pToken = $pToken|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $7 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $p = 0, $pIdx = 0, $zColl = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $p = sp + 4|0; + $i = sp + 8|0; + $zColl = sp + 12|0; + $db = sp + 16|0; + $pIdx = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pToken; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 484|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$p>>2] = $4; + $5 = ($4|0)==(0|0); + if ($5) { + STACKTOP = sp;return; + } + $6 = HEAP32[$p>>2]|0; + $7 = (($6) + 38|0); + $8 = HEAP16[$7>>1]|0; + $9 = $8 << 16 >> 16; + $10 = (($9) - 1)|0; + HEAP32[$i>>2] = $10; + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$11>>2]|0; + HEAP32[$db>>2] = $12; + $13 = HEAP32[$db>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = (_sqlite3NameFromToken($13,$14)|0); + HEAP32[$zColl>>2] = $15; + $16 = HEAP32[$zColl>>2]|0; + $17 = ($16|0)!=(0|0); + if (!($17)) { + STACKTOP = sp;return; + } + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$zColl>>2]|0; + $20 = (_sqlite3LocateCollSeq($18,$19)|0); + $21 = ($20|0)!=(0|0); + $22 = HEAP32[$db>>2]|0; + if (!($21)) { + $62 = HEAP32[$zColl>>2]|0; + _sqlite3DbFree($22,$62); + STACKTOP = sp;return; + } + $23 = HEAP32[$i>>2]|0; + $24 = HEAP32[$p>>2]|0; + $25 = (($24) + 4|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($26) + (($23*24)|0)|0); + $28 = (($27) + 16|0); + $29 = HEAP32[$28>>2]|0; + _sqlite3DbFree($22,$29); + $30 = HEAP32[$zColl>>2]|0; + $31 = HEAP32[$i>>2]|0; + $32 = HEAP32[$p>>2]|0; + $33 = (($32) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = (($34) + (($31*24)|0)|0); + $36 = (($35) + 16|0); + HEAP32[$36>>2] = $30; + $37 = HEAP32[$p>>2]|0; + $38 = (($37) + 8|0); + $39 = HEAP32[$38>>2]|0; + HEAP32[$pIdx>>2] = $39; + while(1) { + $40 = HEAP32[$pIdx>>2]|0; + $41 = ($40|0)!=(0|0); + if (!($41)) { + break; + } + $42 = HEAP32[$pIdx>>2]|0; + $43 = (($42) + 4|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP16[$44>>1]|0; + $46 = $45 << 16 >> 16; + $47 = HEAP32[$i>>2]|0; + $48 = ($46|0)==($47|0); + if ($48) { + $49 = HEAP32[$i>>2]|0; + $50 = HEAP32[$p>>2]|0; + $51 = (($50) + 4|0); + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + (($49*24)|0)|0); + $54 = (($53) + 16|0); + $55 = HEAP32[$54>>2]|0; + $56 = HEAP32[$pIdx>>2]|0; + $57 = (($56) + 32|0); + $58 = HEAP32[$57>>2]|0; + HEAP32[$58>>2] = $55; + } + $59 = HEAP32[$pIdx>>2]|0; + $60 = (($59) + 20|0); + $61 = HEAP32[$60>>2]|0; + HEAP32[$pIdx>>2] = $61; + } + STACKTOP = sp;return; +} +function _sqlite3DropTable($pParse,$pName,$isView,$noErr) { + $pParse = $pParse|0; + $pName = $pName|0; + $isView = $isView|0; + $noErr = $noErr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $code = 0, $db = 0, $iDb = 0, $pTab = 0, $v = 0, $vararg_buffer4 = 0, $zArg2 = 0, $zDb = 0, $zTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer4 = sp; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $pTab = sp + 28|0; + $v = sp + 48|0; + $db = sp + 16|0; + $iDb = sp + 12|0; + $code = sp + 8|0; + $zTab = sp + 4|0; + $zDb = sp + 20|0; + $zArg2 = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pName; + HEAP32[$2>>2] = $isView; + HEAP32[$3>>2] = $noErr; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$db>>2]|0; + $7 = (($6) + 64|0); + $8 = HEAP8[$7>>0]|0; + $9 = ($8<<24>>24)!=(0); + do { + if (!($9)) { + $10 = HEAP32[$3>>2]|0; + $11 = ($10|0)!=(0); + if ($11) { + $12 = HEAP32[$db>>2]|0; + $13 = (($12) + 67|0); + $14 = HEAP8[$13>>0]|0; + $15 = (($14) + 1)<<24>>24; + HEAP8[$13>>0] = $15; + } + $16 = HEAP32[$0>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 8|0); + $20 = (_sqlite3LocateTableItem($16,$17,$19)|0); + HEAP32[$pTab>>2] = $20; + $21 = HEAP32[$3>>2]|0; + $22 = ($21|0)!=(0); + if ($22) { + $23 = HEAP32[$db>>2]|0; + $24 = (($23) + 67|0); + $25 = HEAP8[$24>>0]|0; + $26 = (($25) + -1)<<24>>24; + HEAP8[$24>>0] = $26; + } + $27 = HEAP32[$pTab>>2]|0; + $28 = ($27|0)==(0|0); + if ($28) { + $29 = HEAP32[$3>>2]|0; + $30 = ($29|0)!=(0); + if (!($30)) { + break; + } + $31 = HEAP32[$0>>2]|0; + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 8|0); + $34 = (($33) + 4|0); + $35 = HEAP32[$34>>2]|0; + _sqlite3CodeVerifyNamedSchema($31,$35); + break; + } + $36 = HEAP32[$db>>2]|0; + $37 = HEAP32[$pTab>>2]|0; + $38 = (($37) + 68|0); + $39 = HEAP32[$38>>2]|0; + $40 = (_sqlite3SchemaToIndex($36,$39)|0); + HEAP32[$iDb>>2] = $40; + $41 = HEAP32[$pTab>>2]|0; + $42 = (($41) + 44|0); + $43 = HEAP8[$42>>0]|0; + $44 = $43&255; + $45 = $44 & 16; + $46 = ($45|0)!=(0); + if ($46) { + $47 = HEAP32[$0>>2]|0; + $48 = HEAP32[$pTab>>2]|0; + $49 = (_sqlite3ViewGetColumnNames($47,$48)|0); + $50 = ($49|0)!=(0); + if ($50) { + break; + } + } + $51 = HEAP32[$iDb>>2]|0; + $52 = ($51|0)==(1); + $53 = $52 ? 21432 : 21456; + HEAP32[$zTab>>2] = $53; + $54 = HEAP32[$iDb>>2]|0; + $55 = HEAP32[$db>>2]|0; + $56 = (($55) + 16|0); + $57 = HEAP32[$56>>2]|0; + $58 = (($57) + ($54<<4)|0); + $59 = HEAP32[$58>>2]|0; + HEAP32[$zDb>>2] = $59; + HEAP32[$zArg2>>2] = 0; + $60 = HEAP32[$0>>2]|0; + $61 = HEAP32[$zTab>>2]|0; + $62 = HEAP32[$zDb>>2]|0; + $63 = (_sqlite3AuthCheck($60,9,$61,0,$62)|0); + $64 = ($63|0)!=(0); + if (!($64)) { + $65 = HEAP32[$2>>2]|0; + $66 = ($65|0)!=(0); + do { + if ($66) { + $67 = HEAP32[$iDb>>2]|0; + $68 = ($67|0)==(1); + if ($68) { + HEAP32[$code>>2] = 15; + break; + } else { + HEAP32[$code>>2] = 17; + break; + } + } else { + $69 = HEAP32[$pTab>>2]|0; + $70 = (($69) + 44|0); + $71 = HEAP8[$70>>0]|0; + $72 = $71&255; + $73 = $72 & 16; + $74 = ($73|0)!=(0); + if ($74) { + HEAP32[$code>>2] = 30; + $75 = HEAP32[$db>>2]|0; + $76 = HEAP32[$pTab>>2]|0; + $77 = (_sqlite3GetVTable($75,$76)|0); + $78 = (($77) + 4|0); + $79 = HEAP32[$78>>2]|0; + $80 = (($79) + 4|0); + $81 = HEAP32[$80>>2]|0; + HEAP32[$zArg2>>2] = $81; + break; + } + $82 = HEAP32[$iDb>>2]|0; + $83 = ($82|0)==(1); + if ($83) { + HEAP32[$code>>2] = 13; + break; + } else { + HEAP32[$code>>2] = 11; + break; + } + } + } while(0); + $84 = HEAP32[$0>>2]|0; + $85 = HEAP32[$code>>2]|0; + $86 = HEAP32[$pTab>>2]|0; + $87 = HEAP32[$86>>2]|0; + $88 = HEAP32[$zArg2>>2]|0; + $89 = HEAP32[$zDb>>2]|0; + $90 = (_sqlite3AuthCheck($84,$85,$87,$88,$89)|0); + $91 = ($90|0)!=(0); + if (!($91)) { + $92 = HEAP32[$0>>2]|0; + $93 = HEAP32[$pTab>>2]|0; + $94 = HEAP32[$93>>2]|0; + $95 = HEAP32[$zDb>>2]|0; + $96 = (_sqlite3AuthCheck($92,9,$94,0,$95)|0); + $97 = ($96|0)!=(0); + if (!($97)) { + $98 = HEAP32[$pTab>>2]|0; + $99 = HEAP32[$98>>2]|0; + $100 = (_sqlite3_strnicmp($99,21672,7)|0); + $101 = ($100|0)==(0); + if ($101) { + $102 = HEAP32[$pTab>>2]|0; + $103 = HEAP32[$102>>2]|0; + $104 = (_sqlite3_strnicmp($103,31944,11)|0); + $105 = ($104|0)!=(0); + if ($105) { + $106 = HEAP32[$0>>2]|0; + $107 = HEAP32[$pTab>>2]|0; + $108 = HEAP32[$107>>2]|0; + HEAP32[$vararg_buffer4>>2] = $108; + _sqlite3ErrorMsg($106,31960,$vararg_buffer4); + break; + } + } + $109 = HEAP32[$2>>2]|0; + $110 = ($109|0)!=(0); + if ($110) { + $111 = HEAP32[$pTab>>2]|0; + $112 = (($111) + 12|0); + $113 = HEAP32[$112>>2]|0; + $114 = ($113|0)==(0|0); + if ($114) { + $115 = HEAP32[$0>>2]|0; + $116 = HEAP32[$pTab>>2]|0; + $117 = HEAP32[$116>>2]|0; + HEAP32[$vararg_buffer4>>2] = $117; + _sqlite3ErrorMsg($115,31992,$vararg_buffer4); + break; + } + } + $118 = HEAP32[$2>>2]|0; + $119 = ($118|0)!=(0); + if (!($119)) { + $120 = HEAP32[$pTab>>2]|0; + $121 = (($120) + 12|0); + $122 = HEAP32[$121>>2]|0; + $123 = ($122|0)!=(0|0); + if ($123) { + $124 = HEAP32[$0>>2]|0; + $125 = HEAP32[$pTab>>2]|0; + $126 = HEAP32[$125>>2]|0; + HEAP32[$vararg_buffer4>>2] = $126; + _sqlite3ErrorMsg($124,32032,$vararg_buffer4); + break; + } + } + $127 = HEAP32[$0>>2]|0; + $128 = (_sqlite3GetVdbe($127)|0); + HEAP32[$v>>2] = $128; + $129 = HEAP32[$v>>2]|0; + $130 = ($129|0)!=(0|0); + if ($130) { + $131 = HEAP32[$0>>2]|0; + $132 = HEAP32[$iDb>>2]|0; + _sqlite3BeginWriteOperation($131,1,$132); + $133 = HEAP32[$0>>2]|0; + $134 = HEAP32[$iDb>>2]|0; + $135 = HEAP32[$pTab>>2]|0; + $136 = HEAP32[$135>>2]|0; + _sqlite3ClearStatTables($133,$134,24688,$136); + $137 = HEAP32[$0>>2]|0; + $138 = HEAP32[$1>>2]|0; + $139 = HEAP32[$pTab>>2]|0; + _sqlite3FkDropTable($137,$138,$139); + $140 = HEAP32[$0>>2]|0; + $141 = HEAP32[$pTab>>2]|0; + $142 = HEAP32[$iDb>>2]|0; + $143 = HEAP32[$2>>2]|0; + _sqlite3CodeDropTable($140,$141,$142,$143); + } + } + } + } + } + } while(0); + $144 = HEAP32[$db>>2]|0; + $145 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($144,$145); + STACKTOP = sp;return; +} +function _sqlite3CreateView($pParse,$pBegin,$pName1,$pName2,$pSelect,$isTemp,$noErr) { + $pParse = $pParse|0; + $pBegin = $pBegin|0; + $pName1 = $pName1|0; + $pName2 = $pName2|0; + $pSelect = $pSelect|0; + $isTemp = $isTemp|0; + $noErr = $noErr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; + var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $iDb = 0, $n = 0, $p = 0, $pName = 0, $sEnd = 0, $sFix = 0, $vararg_buffer = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $vararg_buffer = sp; + $0 = sp + 80|0; + $1 = sp + 76|0; + $2 = sp + 72|0; + $3 = sp + 68|0; + $4 = sp + 64|0; + $5 = sp + 60|0; + $6 = sp + 56|0; + $p = sp + 84|0; + $n = sp + 44|0; + $z = sp + 40|0; + $sEnd = sp + 32|0; + $sFix = sp + 8|0; + $pName = sp + 4|0; + $iDb = sp + 48|0; + $db = sp + 52|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pBegin; + HEAP32[$2>>2] = $pName1; + HEAP32[$3>>2] = $pName2; + HEAP32[$4>>2] = $pSelect; + HEAP32[$5>>2] = $isTemp; + HEAP32[$6>>2] = $noErr; + HEAP32[$pName>>2] = 0; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$db>>2] = $8; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 440|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)>(0); + $13 = HEAP32[$0>>2]|0; + if ($12) { + _sqlite3ErrorMsg($13,31896,$vararg_buffer); + $14 = HEAP32[$db>>2]|0; + $15 = HEAP32[$4>>2]|0; + _sqlite3SelectDelete($14,$15); + STACKTOP = sp;return; + } + $16 = HEAP32[$2>>2]|0; + $17 = HEAP32[$3>>2]|0; + $18 = HEAP32[$5>>2]|0; + $19 = HEAP32[$6>>2]|0; + _sqlite3StartTable($13,$16,$17,$18,1,0,$19); + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 484|0); + $22 = HEAP32[$21>>2]|0; + HEAP32[$p>>2] = $22; + $23 = HEAP32[$p>>2]|0; + $24 = ($23|0)==(0|0); + if (!($24)) { + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 64|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)!=(0); + if (!($28)) { + $31 = HEAP32[$0>>2]|0; + $32 = HEAP32[$2>>2]|0; + $33 = HEAP32[$3>>2]|0; + (_sqlite3TwoPartName($31,$32,$33,$pName)|0); + $34 = HEAP32[$db>>2]|0; + $35 = HEAP32[$p>>2]|0; + $36 = (($35) + 68|0); + $37 = HEAP32[$36>>2]|0; + $38 = (_sqlite3SchemaToIndex($34,$37)|0); + HEAP32[$iDb>>2] = $38; + $39 = HEAP32[$0>>2]|0; + $40 = HEAP32[$iDb>>2]|0; + $41 = HEAP32[$pName>>2]|0; + _sqlite3FixInit($sFix,$39,$40,31936,$41); + $42 = HEAP32[$4>>2]|0; + $43 = (_sqlite3FixSelect($sFix,$42)|0); + $44 = ($43|0)!=(0); + $45 = HEAP32[$db>>2]|0; + $46 = HEAP32[$4>>2]|0; + if ($44) { + _sqlite3SelectDelete($45,$46); + STACKTOP = sp;return; + } + $47 = (_sqlite3SelectDup($45,$46,1)|0); + $48 = HEAP32[$p>>2]|0; + $49 = (($48) + 12|0); + HEAP32[$49>>2] = $47; + $50 = HEAP32[$db>>2]|0; + $51 = HEAP32[$4>>2]|0; + _sqlite3SelectDelete($50,$51); + $52 = HEAP32[$db>>2]|0; + $53 = (($52) + 64|0); + $54 = HEAP8[$53>>0]|0; + $55 = ($54<<24>>24)!=(0); + if ($55) { + STACKTOP = sp;return; + } + $56 = HEAP32[$db>>2]|0; + $57 = (($56) + 132|0); + $58 = (($57) + 5|0); + $59 = HEAP8[$58>>0]|0; + $60 = ($59<<24>>24)!=(0); + if (!($60)) { + $61 = HEAP32[$0>>2]|0; + $62 = HEAP32[$p>>2]|0; + (_sqlite3ViewGetColumnNames($61,$62)|0); + } + $63 = HEAP32[$0>>2]|0; + $64 = (($63) + 504|0); + ;HEAP32[$sEnd+0>>2]=HEAP32[$64+0>>2]|0;HEAP32[$sEnd+4>>2]=HEAP32[$64+4>>2]|0; + $65 = HEAP32[$sEnd>>2]|0; + $66 = HEAP8[$65>>0]|0; + $67 = $66 << 24 >> 24; + $68 = ($67|0)!=(0); + if ($68) { + $69 = HEAP32[$sEnd>>2]|0; + $70 = HEAP8[$69>>0]|0; + $71 = $70 << 24 >> 24; + $72 = ($71|0)!=(59); + if ($72) { + $73 = (($sEnd) + 4|0); + $74 = HEAP32[$73>>2]|0; + $75 = HEAP32[$sEnd>>2]|0; + $76 = (($75) + ($74)|0); + HEAP32[$sEnd>>2] = $76; + } + } + $77 = (($sEnd) + 4|0); + HEAP32[$77>>2] = 0; + $78 = HEAP32[$sEnd>>2]|0; + $79 = HEAP32[$1>>2]|0; + $80 = HEAP32[$79>>2]|0; + $81 = $78; + $82 = $80; + $83 = (($81) - ($82))|0; + HEAP32[$n>>2] = $83; + $84 = HEAP32[$1>>2]|0; + $85 = HEAP32[$84>>2]|0; + HEAP32[$z>>2] = $85; + while(1) { + $86 = HEAP32[$n>>2]|0; + $87 = ($86|0)>(0); + if ($87) { + $88 = HEAP32[$n>>2]|0; + $89 = (($88) - 1)|0; + $90 = HEAP32[$z>>2]|0; + $91 = (($90) + ($89)|0); + $92 = HEAP8[$91>>0]|0; + $93 = $92&255; + $94 = (136 + ($93)|0); + $95 = HEAP8[$94>>0]|0; + $96 = $95&255; + $97 = $96 & 1; + $98 = ($97|0)!=(0); + $106 = $98; + } else { + $106 = 0; + } + $99 = HEAP32[$n>>2]|0; + if (!($106)) { + break; + } + $100 = (($99) + -1)|0; + HEAP32[$n>>2] = $100; + } + $101 = (($99) - 1)|0; + $102 = HEAP32[$z>>2]|0; + $103 = (($102) + ($101)|0); + HEAP32[$sEnd>>2] = $103; + $104 = (($sEnd) + 4|0); + HEAP32[$104>>2] = 1; + $105 = HEAP32[$0>>2]|0; + _sqlite3EndTable($105,0,$sEnd,0,0); + STACKTOP = sp;return; + } + } + $29 = HEAP32[$db>>2]|0; + $30 = HEAP32[$4>>2]|0; + _sqlite3SelectDelete($29,$30); + STACKTOP = sp;return; +} +function _sqlite3Select($pParse,$p,$pDest) { + $pParse = $pParse|0; + $p = $p|0; + $pDest = $pDest|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0; + var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0; + var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0; + var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0; + var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0; + var $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0; + var $1105 = 0, $1106 = 0, $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0; + var $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0; + var $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0; + var $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0; + var $1178 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0; + var $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0; + var $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0; + var $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0; + var $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0; + var $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0; + var $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0; + var $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0; + var $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0; + var $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0; + var $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0; + var $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0; + var $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0; + var $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0; + var $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0; + var $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0; + var $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0; + var $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0; + var $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0; + var $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0; + var $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0; + var $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 = 0; + var $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 = 0; + var $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 = 0; + var $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0, $567 = 0; + var $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0, $585 = 0; + var $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0; + var $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0, $620 = 0; + var $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0; + var $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0; + var $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0; + var $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0; + var $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0; + var $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0; + var $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0; + var $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0; + var $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0; + var $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0; + var $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0; + var $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0; + var $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0; + var $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0; + var $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0; + var $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0; + var $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0; + var $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0; + var $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0; + var $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0; + var $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $addrEnd = 0; + var $addrOutputRow = 0, $addrReset = 0, $addrSetAbort = 0, $addrSortingIdx = 0, $addrTop = 0, $addrTopOfLoop = 0, $db = 0, $dest = 0, $flag = 0, $groupBySort = 0, $i = 0, $iAMem = 0, $iAbortFlag = 0, $iBMem = 0, $iCsr = 0, $iDb = 0, $iEnd = 0, $iRestoreSelectId = 0, $iRoot = 0, $iUseFlag = 0; + var $isAgg = 0, $isAggSub = 0, $j = 0, $j1 = 0, $k = 0, $nCol = 0, $nGroupBy = 0, $onceAddr = 0, $orderByGrp = 0, $pBest = 0, $pCol = 0, $pDel = 0, $pEList = 0, $pGroupBy = 0, $pHaving = 0, $pIdx = 0, $pItem = 0, $pItem1 = 0, $pKeyInfo = 0, $pKeyInfo2 = 0; + var $pKeyInfo3 = 0, $pMinMax = 0, $pSub = 0, $pTab = 0, $pTabList = 0, $pWInfo = 0, $pWhere = 0, $r1 = 0, $r2 = 0, $rc = 0, $regBase = 0, $regOutputRow = 0, $regRecord = 0, $regReset = 0, $retAddr = 0, $sAggInfo = 0, $sDistinct = 0, $sNC = 0, $sSort = 0, $sortOut = 0; + var $sortPTab = 0, $topAddr = 0, $v = 0, $wctrlFlags = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 400|0; + $0 = sp + 136|0; + $1 = sp + 236|0; + $2 = sp + 232|0; + $3 = sp + 228|0; + $i = sp + 224|0; + $j = sp + 220|0; + $pWInfo = sp + 216|0; + $v = sp + 212|0; + $isAgg = sp + 208|0; + $pEList = sp + 200|0; + $pTabList = sp + 196|0; + $pWhere = sp + 192|0; + $pGroupBy = sp + 188|0; + $pHaving = sp + 184|0; + $rc = sp + 204|0; + $sDistinct = sp + 240|0; + $sSort = sp + 252|0; + $sAggInfo = sp + 280|0; + $iEnd = sp + 328|0; + $db = sp + 332|0; + $iRestoreSelectId = sp + 336|0; + $pItem = sp + 340|0; + $dest = sp + 344|0; + $pSub = sp + 364|0; + $isAggSub = sp + 368|0; + $addrTop = sp + 372|0; + $topAddr = sp + 376|0; + $onceAddr = sp + 380|0; + $retAddr = sp + 384|0; + $pKeyInfo = sp + 388|0; + $wctrlFlags = sp + 392|0; + $sNC = sp + 152|0; + $iAMem = sp + 144|0; + $iBMem = sp + 140|0; + $iUseFlag = sp + 132|0; + $iAbortFlag = sp + 60|0; + $groupBySort = sp + 56|0; + $addrEnd = sp + 52|0; + $sortPTab = sp + 48|0; + $sortOut = sp + 44|0; + $orderByGrp = sp + 40|0; + $k = sp + 36|0; + $pItem1 = sp + 32|0; + $pKeyInfo2 = sp + 28|0; + $j1 = sp + 20|0; + $addrOutputRow = sp + 16|0; + $regOutputRow = sp + 12|0; + $addrSetAbort = sp + 8|0; + $addrTopOfLoop = sp + 4|0; + $addrSortingIdx = sp; + $addrReset = sp + 24|0; + $regReset = sp + 64|0; + $regBase = sp + 68|0; + $regRecord = sp + 72|0; + $nCol = sp + 76|0; + $nGroupBy = sp + 80|0; + $pCol = sp + 84|0; + $r1 = sp + 88|0; + $r2 = sp + 92|0; + $pDel = sp + 96|0; + $pTab = sp + 100|0; + $iDb = sp + 104|0; + $iCsr = sp + 108|0; + $pIdx = sp + 112|0; + $pKeyInfo3 = sp + 116|0; + $pBest = sp + 120|0; + $iRoot = sp + 124|0; + $pMinMax = sp + 128|0; + $flag = sp + 394|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $pDest; + HEAP32[$rc>>2] = 1; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 464|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$iRestoreSelectId>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 468|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 1)|0; + HEAP32[$8>>2] = $10; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 464|0); + HEAP32[$12>>2] = $9; + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$13>>2]|0; + HEAP32[$db>>2] = $14; + $15 = HEAP32[$2>>2]|0; + $16 = ($15|0)==(0|0); + if (!($16)) { + $17 = HEAP32[$db>>2]|0; + $18 = (($17) + 64|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = ($20|0)!=(0); + if (!($21)) { + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 64|0); + $24 = HEAP32[$23>>2]|0; + $25 = ($24|0)!=(0); + if (!($25)) { + $26 = HEAP32[$1>>2]|0; + $27 = (_sqlite3AuthCheck($26,21,0,0,0)|0); + $28 = ($27|0)!=(0); + if ($28) { + HEAP32[$0>>2] = 1; + $1178 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($1178|0); + } + dest=$sAggInfo+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $29 = HEAP32[$3>>2]|0; + $30 = HEAP8[$29>>0]|0; + $31 = $30&255; + $32 = ($31|0)<=(8); + if ($32) { + $33 = HEAP32[$db>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = (($34) + 48|0); + $36 = HEAP32[$35>>2]|0; + _sqlite3ExprListDelete($33,$36); + $37 = HEAP32[$2>>2]|0; + $38 = (($37) + 48|0); + HEAP32[$38>>2] = 0; + $39 = HEAP32[$2>>2]|0; + $40 = (($39) + 6|0); + $41 = HEAP16[$40>>1]|0; + $42 = $41&65535; + $43 = $42 & -2; + $44 = $43&65535; + HEAP16[$40>>1] = $44; + } + $45 = HEAP32[$1>>2]|0; + $46 = HEAP32[$2>>2]|0; + _sqlite3SelectPrep($45,$46,0); + ;HEAP32[$sSort+0>>2]=0|0;HEAP32[$sSort+4>>2]=0|0;HEAP32[$sSort+8>>2]=0|0;HEAP32[$sSort+12>>2]=0|0;HEAP32[$sSort+16>>2]=0|0;HEAP32[$sSort+20>>2]=0|0;HEAP32[$sSort+24>>2]=0|0; + $47 = HEAP32[$2>>2]|0; + $48 = (($47) + 48|0); + $49 = HEAP32[$48>>2]|0; + HEAP32[$sSort>>2] = $49; + $50 = HEAP32[$2>>2]|0; + $51 = (($50) + 32|0); + $52 = HEAP32[$51>>2]|0; + HEAP32[$pTabList>>2] = $52; + $53 = HEAP32[$2>>2]|0; + $54 = HEAP32[$53>>2]|0; + HEAP32[$pEList>>2] = $54; + $55 = HEAP32[$1>>2]|0; + $56 = (($55) + 64|0); + $57 = HEAP32[$56>>2]|0; + $58 = ($57|0)!=(0); + L12: do { + if (!($58)) { + $59 = HEAP32[$db>>2]|0; + $60 = (($59) + 64|0); + $61 = HEAP8[$60>>0]|0; + $62 = $61&255; + $63 = ($62|0)!=(0); + if (!($63)) { + $64 = HEAP32[$2>>2]|0; + $65 = (($64) + 6|0); + $66 = HEAP16[$65>>1]|0; + $67 = $66&65535; + $68 = $67 & 4; + $69 = ($68|0)!=(0); + $70 = $69&1; + HEAP32[$isAgg>>2] = $70; + $71 = HEAP32[$1>>2]|0; + $72 = (_sqlite3GetVdbe($71)|0); + HEAP32[$v>>2] = $72; + $73 = HEAP32[$v>>2]|0; + $74 = ($73|0)==(0|0); + if (!($74)) { + $75 = HEAP32[$1>>2]|0; + $76 = HEAP32[$3>>2]|0; + $77 = HEAP32[$pEList>>2]|0; + $78 = HEAP32[$77>>2]|0; + $79 = (_checkForMultiColumnSelectError($75,$76,$78)|0); + $80 = ($79|0)!=(0); + if (!($80)) { + HEAP32[$i>>2] = 0; + while(1) { + $81 = HEAP32[$2>>2]|0; + $82 = (($81) + 52|0); + $83 = HEAP32[$82>>2]|0; + $84 = ($83|0)!=(0|0); + if ($84) { + break; + } + $85 = HEAP32[$i>>2]|0; + $86 = HEAP32[$pTabList>>2]|0; + $87 = HEAP32[$86>>2]|0; + $88 = ($85|0)<($87|0); + if (!($88)) { + break; + } + $89 = HEAP32[$i>>2]|0; + $90 = HEAP32[$pTabList>>2]|0; + $91 = (($90) + 8|0); + $92 = (($91) + (($89*72)|0)|0); + HEAP32[$pItem>>2] = $92; + $93 = HEAP32[$pItem>>2]|0; + $94 = (($93) + 20|0); + $95 = HEAP32[$94>>2]|0; + HEAP32[$pSub>>2] = $95; + $96 = HEAP32[$pSub>>2]|0; + $97 = ($96|0)==(0|0); + do { + if (!($97)) { + $98 = HEAP32[$pItem>>2]|0; + $99 = (($98) + 24|0); + $100 = HEAP32[$99>>2]|0; + $101 = ($100|0)!=(0); + if ($101) { + $102 = HEAP32[$pItem>>2]|0; + $103 = (($102) + 37|0); + $104 = HEAP8[$103>>0]|0; + $105 = ($104&255) >>> 2; + $106 = $105 & 1; + $107 = $106&255; + $108 = ($107|0)==(0); + if (!($108)) { + break; + } + $109 = HEAP32[$v>>2]|0; + $110 = HEAP32[$pItem>>2]|0; + $111 = (($110) + 28|0); + $112 = HEAP32[$111>>2]|0; + $113 = HEAP32[$pItem>>2]|0; + $114 = (($113) + 24|0); + $115 = HEAP32[$114>>2]|0; + (_sqlite3VdbeAddOp2($109,17,$112,$115)|0); + break; + } + $116 = HEAP32[$2>>2]|0; + $117 = (_sqlite3SelectExprHeight($116)|0); + $118 = HEAP32[$1>>2]|0; + $119 = (($118) + 460|0); + $120 = HEAP32[$119>>2]|0; + $121 = (($120) + ($117))|0; + HEAP32[$119>>2] = $121; + $122 = HEAP32[$pSub>>2]|0; + $123 = (($122) + 6|0); + $124 = HEAP16[$123>>1]|0; + $125 = $124&65535; + $126 = $125 & 4; + $127 = ($126|0)!=(0); + $128 = $127&1; + HEAP32[$isAggSub>>2] = $128; + $129 = HEAP32[$1>>2]|0; + $130 = HEAP32[$2>>2]|0; + $131 = HEAP32[$i>>2]|0; + $132 = HEAP32[$isAgg>>2]|0; + $133 = HEAP32[$isAggSub>>2]|0; + $134 = (_flattenSubquery($129,$130,$131,$132,$133)|0); + $135 = ($134|0)!=(0); + L27: do { + if ($135) { + $136 = HEAP32[$isAggSub>>2]|0; + $137 = ($136|0)!=(0); + if ($137) { + HEAP32[$isAgg>>2] = 1; + $138 = HEAP32[$2>>2]|0; + $139 = (($138) + 6|0); + $140 = HEAP16[$139>>1]|0; + $141 = $140&65535; + $142 = $141 | 4; + $143 = $142&65535; + HEAP16[$139>>1] = $143; + } + HEAP32[$i>>2] = -1; + } else { + $144 = HEAP32[$pTabList>>2]|0; + $145 = HEAP32[$144>>2]|0; + $146 = ($145|0)==(1); + do { + if ($146) { + $147 = HEAP32[$db>>2]|0; + $148 = (($147) + 60|0); + $149 = HEAP16[$148>>1]|0; + $150 = $149&65535; + $151 = $150 & 256; + $152 = ($151|0)==(0); + if (!($152)) { + break; + } + $153 = HEAP32[$v>>2]|0; + $154 = (_sqlite3VdbeCurrentAddr($153)|0); + $155 = (($154) + 1)|0; + HEAP32[$addrTop>>2] = $155; + $156 = HEAP32[$1>>2]|0; + $157 = (($156) + 72|0); + $158 = HEAP32[$157>>2]|0; + $159 = (($158) + 1)|0; + HEAP32[$157>>2] = $159; + $160 = HEAP32[$pItem>>2]|0; + $161 = (($160) + 28|0); + HEAP32[$161>>2] = $159; + $162 = HEAP32[$v>>2]|0; + $163 = HEAP32[$pItem>>2]|0; + $164 = (($163) + 28|0); + $165 = HEAP32[$164>>2]|0; + $166 = HEAP32[$addrTop>>2]|0; + (_sqlite3VdbeAddOp3($162,20,$165,0,$166)|0); + $167 = HEAP32[$addrTop>>2]|0; + $168 = HEAP32[$pItem>>2]|0; + $169 = (($168) + 24|0); + HEAP32[$169>>2] = $167; + $170 = HEAP32[$pItem>>2]|0; + $171 = (($170) + 28|0); + $172 = HEAP32[$171>>2]|0; + _sqlite3SelectDestInit($dest,13,$172); + $173 = HEAP32[$1>>2]|0; + $174 = (($173) + 468|0); + $175 = HEAP32[$174>>2]|0; + $176 = $175&255; + $177 = HEAP32[$pItem>>2]|0; + $178 = (($177) + 38|0); + HEAP8[$178>>0] = $176; + $179 = HEAP32[$1>>2]|0; + $180 = HEAP32[$pSub>>2]|0; + (_sqlite3Select($179,$180,$dest)|0); + $181 = HEAP32[$pSub>>2]|0; + $182 = (($181) + 24|0); + $183 = $182; + $184 = $183; + $185 = HEAP32[$184>>2]|0; + $186 = (($183) + 4)|0; + $187 = $186; + $188 = HEAP32[$187>>2]|0; + $189 = (_sqlite3LogEst($185,$188)|0); + $190 = HEAP32[$pItem>>2]|0; + $191 = (($190) + 16|0); + $192 = HEAP32[$191>>2]|0; + $193 = (($192) + 28|0); + HEAP16[$193>>1] = $189; + $194 = HEAP32[$pItem>>2]|0; + $195 = (($194) + 37|0); + $196 = HEAP8[$195>>0]|0; + $197 = $196 & -5; + $198 = $197 | 4; + HEAP8[$195>>0] = $198; + $199 = (($dest) + 8|0); + $200 = HEAP32[$199>>2]|0; + $201 = HEAP32[$pItem>>2]|0; + $202 = (($201) + 32|0); + HEAP32[$202>>2] = $200; + $203 = HEAP32[$v>>2]|0; + $204 = HEAP32[$pItem>>2]|0; + $205 = (($204) + 28|0); + $206 = HEAP32[$205>>2]|0; + (_sqlite3VdbeAddOp1($203,21,$206)|0); + $207 = HEAP32[$v>>2]|0; + $208 = HEAP32[$addrTop>>2]|0; + $209 = (($208) - 1)|0; + _sqlite3VdbeJumpHere($207,$209); + $210 = HEAP32[$1>>2]|0; + _sqlite3ClearTempRegCache($210); + break L27; + } + } while(0); + HEAP32[$onceAddr>>2] = 0; + $211 = HEAP32[$1>>2]|0; + $212 = (($211) + 72|0); + $213 = HEAP32[$212>>2]|0; + $214 = (($213) + 1)|0; + HEAP32[$212>>2] = $214; + $215 = HEAP32[$pItem>>2]|0; + $216 = (($215) + 28|0); + HEAP32[$216>>2] = $214; + $217 = HEAP32[$v>>2]|0; + $218 = HEAP32[$pItem>>2]|0; + $219 = (($218) + 28|0); + $220 = HEAP32[$219>>2]|0; + $221 = (_sqlite3VdbeAddOp2($217,25,0,$220)|0); + HEAP32[$topAddr>>2] = $221; + $222 = HEAP32[$topAddr>>2]|0; + $223 = (($222) + 1)|0; + $224 = HEAP32[$pItem>>2]|0; + $225 = (($224) + 24|0); + HEAP32[$225>>2] = $223; + $226 = HEAP32[$pItem>>2]|0; + $227 = (($226) + 37|0); + $228 = HEAP8[$227>>0]|0; + $229 = ($228&255) >>> 1; + $230 = $229 & 1; + $231 = $230&255; + $232 = ($231|0)==(0); + if ($232) { + $233 = HEAP32[$1>>2]|0; + $234 = (_sqlite3CodeOnce($233)|0); + HEAP32[$onceAddr>>2] = $234; + } + $235 = HEAP32[$pItem>>2]|0; + $236 = (($235) + 40|0); + $237 = HEAP32[$236>>2]|0; + _sqlite3SelectDestInit($dest,12,$237); + $238 = HEAP32[$1>>2]|0; + $239 = (($238) + 468|0); + $240 = HEAP32[$239>>2]|0; + $241 = $240&255; + $242 = HEAP32[$pItem>>2]|0; + $243 = (($242) + 38|0); + HEAP8[$243>>0] = $241; + $244 = HEAP32[$1>>2]|0; + $245 = HEAP32[$pSub>>2]|0; + (_sqlite3Select($244,$245,$dest)|0); + $246 = HEAP32[$pSub>>2]|0; + $247 = (($246) + 24|0); + $248 = $247; + $249 = $248; + $250 = HEAP32[$249>>2]|0; + $251 = (($248) + 4)|0; + $252 = $251; + $253 = HEAP32[$252>>2]|0; + $254 = (_sqlite3LogEst($250,$253)|0); + $255 = HEAP32[$pItem>>2]|0; + $256 = (($255) + 16|0); + $257 = HEAP32[$256>>2]|0; + $258 = (($257) + 28|0); + HEAP16[$258>>1] = $254; + $259 = HEAP32[$onceAddr>>2]|0; + $260 = ($259|0)!=(0); + if ($260) { + $261 = HEAP32[$v>>2]|0; + $262 = HEAP32[$onceAddr>>2]|0; + _sqlite3VdbeJumpHere($261,$262); + } + $263 = HEAP32[$v>>2]|0; + $264 = HEAP32[$pItem>>2]|0; + $265 = (($264) + 28|0); + $266 = HEAP32[$265>>2]|0; + $267 = (_sqlite3VdbeAddOp1($263,18,$266)|0); + HEAP32[$retAddr>>2] = $267; + $268 = HEAP32[$v>>2]|0; + $269 = HEAP32[$topAddr>>2]|0; + $270 = HEAP32[$retAddr>>2]|0; + _sqlite3VdbeChangeP1($268,$269,$270); + $271 = HEAP32[$1>>2]|0; + _sqlite3ClearTempRegCache($271); + } + } while(0); + $272 = HEAP32[$db>>2]|0; + $273 = (($272) + 64|0); + $274 = HEAP8[$273>>0]|0; + $275 = ($274<<24>>24)!=(0); + if ($275) { + break L12; + } + $276 = HEAP32[$2>>2]|0; + $277 = (_sqlite3SelectExprHeight($276)|0); + $278 = HEAP32[$1>>2]|0; + $279 = (($278) + 460|0); + $280 = HEAP32[$279>>2]|0; + $281 = (($280) - ($277))|0; + HEAP32[$279>>2] = $281; + $282 = HEAP32[$2>>2]|0; + $283 = (($282) + 32|0); + $284 = HEAP32[$283>>2]|0; + HEAP32[$pTabList>>2] = $284; + $285 = HEAP32[$3>>2]|0; + $286 = HEAP8[$285>>0]|0; + $287 = $286&255; + $288 = ($287|0)<=(8); + if (!($288)) { + $289 = HEAP32[$2>>2]|0; + $290 = (($289) + 48|0); + $291 = HEAP32[$290>>2]|0; + HEAP32[$sSort>>2] = $291; + } + } + } while(0); + $292 = HEAP32[$i>>2]|0; + $293 = (($292) + 1)|0; + HEAP32[$i>>2] = $293; + } + $294 = HEAP32[$2>>2]|0; + $295 = HEAP32[$294>>2]|0; + HEAP32[$pEList>>2] = $295; + $296 = HEAP32[$2>>2]|0; + $297 = (($296) + 36|0); + $298 = HEAP32[$297>>2]|0; + HEAP32[$pWhere>>2] = $298; + $299 = HEAP32[$2>>2]|0; + $300 = (($299) + 40|0); + $301 = HEAP32[$300>>2]|0; + HEAP32[$pGroupBy>>2] = $301; + $302 = HEAP32[$2>>2]|0; + $303 = (($302) + 44|0); + $304 = HEAP32[$303>>2]|0; + HEAP32[$pHaving>>2] = $304; + $305 = HEAP32[$2>>2]|0; + $306 = (($305) + 6|0); + $307 = HEAP16[$306>>1]|0; + $308 = $307&65535; + $309 = $308 & 1; + $310 = ($309|0)!=(0); + $311 = $310&1; + $312 = $311&255; + HEAP8[$sDistinct>>0] = $312; + $313 = HEAP32[$2>>2]|0; + $314 = (($313) + 52|0); + $315 = HEAP32[$314>>2]|0; + $316 = ($315|0)!=(0|0); + if ($316) { + $317 = HEAP32[$1>>2]|0; + $318 = HEAP32[$2>>2]|0; + $319 = HEAP32[$3>>2]|0; + $320 = (_multiSelect($317,$318,$319)|0); + HEAP32[$rc>>2] = $320; + $321 = HEAP32[$iRestoreSelectId>>2]|0; + $322 = HEAP32[$1>>2]|0; + $323 = (($322) + 464|0); + HEAP32[$323>>2] = $321; + $324 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $324; + $1178 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($1178|0); + } + $325 = HEAP32[$2>>2]|0; + $326 = (($325) + 6|0); + $327 = HEAP16[$326>>1]|0; + $328 = $327&65535; + $329 = $328 & 5; + $330 = ($329|0)==(1); + if ($330) { + $331 = HEAP32[$sSort>>2]|0; + $332 = HEAP32[$2>>2]|0; + $333 = HEAP32[$332>>2]|0; + $334 = (_sqlite3ExprListCompare($331,$333,-1)|0); + $335 = ($334|0)==(0); + if ($335) { + $336 = HEAP32[$2>>2]|0; + $337 = (($336) + 6|0); + $338 = HEAP16[$337>>1]|0; + $339 = $338&65535; + $340 = $339 & -2; + $341 = $340&65535; + HEAP16[$337>>1] = $341; + $342 = HEAP32[$db>>2]|0; + $343 = HEAP32[$2>>2]|0; + $344 = HEAP32[$343>>2]|0; + $345 = (_sqlite3ExprListDup($342,$344,0)|0); + $346 = HEAP32[$2>>2]|0; + $347 = (($346) + 40|0); + HEAP32[$347>>2] = $345; + $348 = HEAP32[$2>>2]|0; + $349 = (($348) + 40|0); + $350 = HEAP32[$349>>2]|0; + HEAP32[$pGroupBy>>2] = $350; + HEAP32[$sSort>>2] = 0; + } + } + $351 = HEAP32[$sSort>>2]|0; + $352 = ($351|0)!=(0|0); + if ($352) { + $353 = HEAP32[$1>>2]|0; + $354 = HEAP32[$sSort>>2]|0; + $355 = (_keyInfoFromExprList($353,$354,0,0)|0); + HEAP32[$pKeyInfo>>2] = $355; + $356 = HEAP32[$1>>2]|0; + $357 = (($356) + 68|0); + $358 = HEAP32[$357>>2]|0; + $359 = (($358) + 1)|0; + HEAP32[$357>>2] = $359; + $360 = (($sSort) + 8|0); + HEAP32[$360>>2] = $358; + $361 = HEAP32[$v>>2]|0; + $362 = (($sSort) + 8|0); + $363 = HEAP32[$362>>2]|0; + $364 = HEAP32[$sSort>>2]|0; + $365 = HEAP32[$364>>2]|0; + $366 = (($365) + 2)|0; + $367 = HEAP32[$pKeyInfo>>2]|0; + $368 = (_sqlite3VdbeAddOp4($361,55,$363,$366,0,$367,-6)|0); + $369 = (($sSort) + 20|0); + HEAP32[$369>>2] = $368; + } else { + $370 = (($sSort) + 20|0); + HEAP32[$370>>2] = -1; + } + $371 = HEAP32[$3>>2]|0; + $372 = HEAP8[$371>>0]|0; + $373 = $372&255; + $374 = ($373|0)==(12); + if ($374) { + $375 = HEAP32[$v>>2]|0; + $376 = HEAP32[$3>>2]|0; + $377 = (($376) + 4|0); + $378 = HEAP32[$377>>2]|0; + $379 = HEAP32[$pEList>>2]|0; + $380 = HEAP32[$379>>2]|0; + (_sqlite3VdbeAddOp2($375,55,$378,$380)|0); + } + $381 = HEAP32[$v>>2]|0; + $382 = (_sqlite3VdbeMakeLabel($381)|0); + HEAP32[$iEnd>>2] = $382; + $383 = HEAP32[$2>>2]|0; + $384 = (($383) + 24|0); + $385 = $384; + $386 = $385; + HEAP32[$386>>2] = -1; + $387 = (($385) + 4)|0; + $388 = $387; + HEAP32[$388>>2] = 2147483647; + $389 = HEAP32[$1>>2]|0; + $390 = HEAP32[$2>>2]|0; + $391 = HEAP32[$iEnd>>2]|0; + _computeLimitRegisters($389,$390,$391); + $392 = HEAP32[$2>>2]|0; + $393 = (($392) + 8|0); + $394 = HEAP32[$393>>2]|0; + $395 = ($394|0)==(0); + if ($395) { + $396 = (($sSort) + 20|0); + $397 = HEAP32[$396>>2]|0; + $398 = ($397|0)>=(0); + if ($398) { + $399 = HEAP32[$v>>2]|0; + $400 = (($sSort) + 20|0); + $401 = HEAP32[$400>>2]|0; + $402 = (_sqlite3VdbeGetOp($399,$401)|0); + HEAP8[$402>>0] = 56; + $403 = (($sSort) + 24|0); + $404 = HEAP8[$403>>0]|0; + $405 = $404&255; + $406 = $405 | 1; + $407 = $406&255; + HEAP8[$403>>0] = $407; + } + } + $408 = HEAP32[$2>>2]|0; + $409 = (($408) + 6|0); + $410 = HEAP16[$409>>1]|0; + $411 = $410&65535; + $412 = $411 & 1; + $413 = ($412|0)!=(0); + if ($413) { + $414 = HEAP32[$1>>2]|0; + $415 = (($414) + 68|0); + $416 = HEAP32[$415>>2]|0; + $417 = (($416) + 1)|0; + HEAP32[$415>>2] = $417; + $418 = (($sDistinct) + 4|0); + HEAP32[$418>>2] = $416; + $419 = HEAP32[$v>>2]|0; + $420 = (($sDistinct) + 4|0); + $421 = HEAP32[$420>>2]|0; + $422 = HEAP32[$1>>2]|0; + $423 = HEAP32[$2>>2]|0; + $424 = HEAP32[$423>>2]|0; + $425 = (_keyInfoFromExprList($422,$424,0,0)|0); + $426 = (_sqlite3VdbeAddOp4($419,55,$421,0,0,$425,-6)|0); + $427 = (($sDistinct) + 8|0); + HEAP32[$427>>2] = $426; + $428 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($428,8); + $429 = (($sDistinct) + 1|0); + HEAP8[$429>>0] = 3; + } else { + $430 = (($sDistinct) + 1|0); + HEAP8[$430>>0] = 0; + } + $431 = HEAP32[$isAgg>>2]|0; + $432 = ($431|0)!=(0); + if ($432) { + label = 67; + } else { + $433 = HEAP32[$pGroupBy>>2]|0; + $434 = ($433|0)==(0|0); + if ($434) { + $435 = HEAP8[$sDistinct>>0]|0; + $436 = $435&255; + $437 = ($436|0)!=(0); + $438 = $437 ? 1024 : 0; + $439 = $438&65535; + HEAP16[$wctrlFlags>>1] = $439; + $440 = HEAP32[$1>>2]|0; + $441 = HEAP32[$pTabList>>2]|0; + $442 = HEAP32[$pWhere>>2]|0; + $443 = HEAP32[$sSort>>2]|0; + $444 = HEAP32[$2>>2]|0; + $445 = HEAP32[$444>>2]|0; + $446 = HEAP16[$wctrlFlags>>1]|0; + $447 = (_sqlite3WhereBegin($440,$441,$442,$443,$445,$446,0)|0); + HEAP32[$pWInfo>>2] = $447; + $448 = HEAP32[$pWInfo>>2]|0; + $449 = ($448|0)==(0|0); + if ($449) { + break; + } + $450 = HEAP32[$pWInfo>>2]|0; + $451 = (_sqlite3WhereOutputRowCount($450)|0); + $452 = tempRet0; + $453 = HEAP32[$2>>2]|0; + $454 = (($453) + 24|0); + $455 = $454; + $456 = $455; + $457 = HEAP32[$456>>2]|0; + $458 = (($455) + 4)|0; + $459 = $458; + $460 = HEAP32[$459>>2]|0; + $461 = ($452>>>0)<($460>>>0); + $462 = ($452|0)==($460|0); + $463 = ($451>>>0)<($457>>>0); + $464 = $462 & $463; + $465 = $461 | $464; + if ($465) { + $466 = HEAP32[$pWInfo>>2]|0; + $467 = (_sqlite3WhereOutputRowCount($466)|0); + $468 = tempRet0; + $469 = HEAP32[$2>>2]|0; + $470 = (($469) + 24|0); + $471 = $470; + $472 = $471; + HEAP32[$472>>2] = $467; + $473 = (($471) + 4)|0; + $474 = $473; + HEAP32[$474>>2] = $468; + } + $475 = HEAP8[$sDistinct>>0]|0; + $476 = $475&255; + $477 = ($476|0)!=(0); + do { + if ($477) { + $478 = HEAP32[$pWInfo>>2]|0; + $479 = (_sqlite3WhereIsDistinct($478)|0); + $480 = ($479|0)!=(0); + if (!($480)) { + break; + } + $481 = HEAP32[$pWInfo>>2]|0; + $482 = (_sqlite3WhereIsDistinct($481)|0); + $483 = $482&255; + $484 = (($sDistinct) + 1|0); + HEAP8[$484>>0] = $483; + } + } while(0); + $485 = HEAP32[$sSort>>2]|0; + $486 = ($485|0)!=(0|0); + do { + if ($486) { + $487 = HEAP32[$pWInfo>>2]|0; + $488 = (_sqlite3WhereIsOrdered($487)|0); + $489 = (($sSort) + 4|0); + HEAP32[$489>>2] = $488; + $490 = (($sSort) + 4|0); + $491 = HEAP32[$490>>2]|0; + $492 = HEAP32[$sSort>>2]|0; + $493 = HEAP32[$492>>2]|0; + $494 = ($491|0)==($493|0); + if (!($494)) { + break; + } + HEAP32[$sSort>>2] = 0; + } + } while(0); + $495 = (($sSort) + 20|0); + $496 = HEAP32[$495>>2]|0; + $497 = ($496|0)>=(0); + do { + if ($497) { + $498 = HEAP32[$sSort>>2]|0; + $499 = ($498|0)==(0|0); + if (!($499)) { + break; + } + $500 = HEAP32[$v>>2]|0; + $501 = (($sSort) + 20|0); + $502 = HEAP32[$501>>2]|0; + _sqlite3VdbeChangeToNoop($500,$502); + } + } while(0); + $503 = HEAP32[$1>>2]|0; + $504 = HEAP32[$2>>2]|0; + $505 = HEAP32[$pEList>>2]|0; + $506 = HEAP32[$3>>2]|0; + $507 = HEAP32[$pWInfo>>2]|0; + $508 = (_sqlite3WhereContinueLabel($507)|0); + $509 = HEAP32[$pWInfo>>2]|0; + $510 = (_sqlite3WhereBreakLabel($509)|0); + _selectInnerLoop($503,$504,$505,-1,$sSort,$sDistinct,$506,$508,$510); + $511 = HEAP32[$pWInfo>>2]|0; + _sqlite3WhereEnd($511); + } else { + label = 67; + } + } + if ((label|0) == 67) { + HEAP32[$sortPTab>>2] = 0; + HEAP32[$sortOut>>2] = 0; + HEAP32[$orderByGrp>>2] = 0; + $512 = HEAP32[$pGroupBy>>2]|0; + $513 = ($512|0)!=(0|0); + $514 = HEAP32[$2>>2]|0; + do { + if ($513) { + $515 = HEAP32[$514>>2]|0; + $516 = HEAP32[$515>>2]|0; + HEAP32[$k>>2] = $516; + $517 = HEAP32[$2>>2]|0; + $518 = HEAP32[$517>>2]|0; + $519 = (($518) + 4|0); + $520 = HEAP32[$519>>2]|0; + HEAP32[$pItem1>>2] = $520; + while(1) { + $521 = HEAP32[$k>>2]|0; + $522 = ($521|0)>(0); + if (!($522)) { + break; + } + $523 = HEAP32[$pItem1>>2]|0; + $524 = (($523) + 16|0); + $525 = (($524) + 2|0); + HEAP16[$525>>1] = 0; + $526 = HEAP32[$k>>2]|0; + $527 = (($526) + -1)|0; + HEAP32[$k>>2] = $527; + $528 = HEAP32[$pItem1>>2]|0; + $529 = (($528) + 20|0); + HEAP32[$pItem1>>2] = $529; + } + $530 = HEAP32[$pGroupBy>>2]|0; + $531 = HEAP32[$530>>2]|0; + HEAP32[$k>>2] = $531; + $532 = HEAP32[$pGroupBy>>2]|0; + $533 = (($532) + 4|0); + $534 = HEAP32[$533>>2]|0; + HEAP32[$pItem1>>2] = $534; + while(1) { + $535 = HEAP32[$k>>2]|0; + $536 = ($535|0)>(0); + if (!($536)) { + break; + } + $537 = HEAP32[$pItem1>>2]|0; + $538 = (($537) + 16|0); + $539 = (($538) + 2|0); + HEAP16[$539>>1] = 0; + $540 = HEAP32[$k>>2]|0; + $541 = (($540) + -1)|0; + HEAP32[$k>>2] = $541; + $542 = HEAP32[$pItem1>>2]|0; + $543 = (($542) + 20|0); + HEAP32[$pItem1>>2] = $543; + } + $544 = HEAP32[$2>>2]|0; + $545 = (($544) + 24|0); + $546 = $545; + $547 = $546; + $548 = HEAP32[$547>>2]|0; + $549 = (($546) + 4)|0; + $550 = $549; + $551 = HEAP32[$550>>2]|0; + $552 = ($551>>>0)>(0); + $553 = ($551|0)==(0); + $554 = ($548>>>0)>(100); + $555 = $553 & $554; + $556 = $552 | $555; + if (!($556)) { + break; + } + $557 = HEAP32[$2>>2]|0; + $558 = (($557) + 24|0); + $559 = $558; + $560 = $559; + HEAP32[$560>>2] = 100; + $561 = (($559) + 4)|0; + $562 = $561; + HEAP32[$562>>2] = 0; + } else { + $563 = (($514) + 24|0); + $564 = $563; + $565 = $564; + HEAP32[$565>>2] = 1; + $566 = (($564) + 4)|0; + $567 = $566; + HEAP32[$567>>2] = 0; + } + } while(0); + $568 = HEAP32[$pGroupBy>>2]|0; + $569 = HEAP32[$sSort>>2]|0; + $570 = (_sqlite3ExprListCompare($568,$569,-1)|0); + $571 = ($570|0)==(0); + if ($571) { + HEAP32[$orderByGrp>>2] = 1; + } + $572 = HEAP32[$v>>2]|0; + $573 = (_sqlite3VdbeMakeLabel($572)|0); + HEAP32[$addrEnd>>2] = $573; + ;HEAP32[$sNC+0>>2]=0|0;HEAP32[$sNC+4>>2]=0|0;HEAP32[$sNC+8>>2]=0|0;HEAP32[$sNC+12>>2]=0|0;HEAP32[$sNC+16>>2]=0|0;HEAP32[$sNC+20>>2]=0|0;HEAP32[$sNC+24>>2]=0|0;HEAP32[$sNC+28>>2]=0|0; + $574 = HEAP32[$1>>2]|0; + HEAP32[$sNC>>2] = $574; + $575 = HEAP32[$pTabList>>2]|0; + $576 = (($sNC) + 4|0); + HEAP32[$576>>2] = $575; + $577 = (($sNC) + 12|0); + HEAP32[$577>>2] = $sAggInfo; + $578 = HEAP32[$1>>2]|0; + $579 = (($578) + 72|0); + $580 = HEAP32[$579>>2]|0; + $581 = (($580) + 1)|0; + $582 = (($sAggInfo) + 16|0); + HEAP32[$582>>2] = $581; + $583 = HEAP32[$pGroupBy>>2]|0; + $584 = ($583|0)!=(0|0); + if ($584) { + $585 = HEAP32[$pGroupBy>>2]|0; + $586 = HEAP32[$585>>2]|0; + $587 = (($586) + 1)|0; + $589 = $587; + } else { + $589 = 0; + } + $588 = (($sAggInfo) + 12|0); + HEAP32[$588>>2] = $589; + $590 = HEAP32[$pGroupBy>>2]|0; + $591 = (($sAggInfo) + 24|0); + HEAP32[$591>>2] = $590; + $592 = HEAP32[$pEList>>2]|0; + _sqlite3ExprAnalyzeAggList($sNC,$592); + $593 = HEAP32[$sSort>>2]|0; + _sqlite3ExprAnalyzeAggList($sNC,$593); + $594 = HEAP32[$pHaving>>2]|0; + $595 = ($594|0)!=(0|0); + if ($595) { + $596 = HEAP32[$pHaving>>2]|0; + _sqlite3ExprAnalyzeAggregates($sNC,$596); + } + $597 = (($sAggInfo) + 32|0); + $598 = HEAP32[$597>>2]|0; + $599 = (($sAggInfo) + 36|0); + HEAP32[$599>>2] = $598; + HEAP32[$i>>2] = 0; + while(1) { + $600 = HEAP32[$i>>2]|0; + $601 = (($sAggInfo) + 44|0); + $602 = HEAP32[$601>>2]|0; + $603 = ($600|0)<($602|0); + if (!($603)) { + break; + } + $604 = (($sNC) + 28|0); + $605 = HEAP8[$604>>0]|0; + $606 = $605&255; + $607 = $606 | 8; + $608 = $607&255; + HEAP8[$604>>0] = $608; + $609 = HEAP32[$i>>2]|0; + $610 = (($sAggInfo) + 40|0); + $611 = HEAP32[$610>>2]|0; + $612 = (($611) + ($609<<4)|0); + $613 = HEAP32[$612>>2]|0; + $614 = (($613) + 20|0); + $615 = HEAP32[$614>>2]|0; + _sqlite3ExprAnalyzeAggList($sNC,$615); + $616 = (($sNC) + 28|0); + $617 = HEAP8[$616>>0]|0; + $618 = $617&255; + $619 = $618 & -9; + $620 = $619&255; + HEAP8[$616>>0] = $620; + $621 = HEAP32[$i>>2]|0; + $622 = (($621) + 1)|0; + HEAP32[$i>>2] = $622; + } + $623 = HEAP32[$1>>2]|0; + $624 = (($623) + 72|0); + $625 = HEAP32[$624>>2]|0; + $626 = (($sAggInfo) + 20|0); + HEAP32[$626>>2] = $625; + $627 = HEAP32[$db>>2]|0; + $628 = (($627) + 64|0); + $629 = HEAP8[$628>>0]|0; + $630 = ($629<<24>>24)!=(0); + if ($630) { + break; + } + $631 = HEAP32[$pGroupBy>>2]|0; + $632 = ($631|0)!=(0|0); + if ($632) { + $633 = HEAP32[$1>>2]|0; + $634 = (($633) + 68|0); + $635 = HEAP32[$634>>2]|0; + $636 = (($635) + 1)|0; + HEAP32[$634>>2] = $636; + $637 = (($sAggInfo) + 4|0); + HEAP32[$637>>2] = $635; + $638 = HEAP32[$1>>2]|0; + $639 = HEAP32[$pGroupBy>>2]|0; + $640 = (_keyInfoFromExprList($638,$639,0,0)|0); + HEAP32[$pKeyInfo2>>2] = $640; + $641 = HEAP32[$v>>2]|0; + $642 = (($sAggInfo) + 4|0); + $643 = HEAP32[$642>>2]|0; + $644 = (($sAggInfo) + 12|0); + $645 = HEAP32[$644>>2]|0; + $646 = HEAP32[$pKeyInfo2>>2]|0; + $647 = (_sqlite3VdbeAddOp4($641,56,$643,$645,0,$646,-6)|0); + HEAP32[$addrSortingIdx>>2] = $647; + $648 = HEAP32[$1>>2]|0; + $649 = (($648) + 72|0); + $650 = HEAP32[$649>>2]|0; + $651 = (($650) + 1)|0; + HEAP32[$649>>2] = $651; + HEAP32[$iUseFlag>>2] = $651; + $652 = HEAP32[$1>>2]|0; + $653 = (($652) + 72|0); + $654 = HEAP32[$653>>2]|0; + $655 = (($654) + 1)|0; + HEAP32[$653>>2] = $655; + HEAP32[$iAbortFlag>>2] = $655; + $656 = HEAP32[$1>>2]|0; + $657 = (($656) + 72|0); + $658 = HEAP32[$657>>2]|0; + $659 = (($658) + 1)|0; + HEAP32[$657>>2] = $659; + HEAP32[$regOutputRow>>2] = $659; + $660 = HEAP32[$v>>2]|0; + $661 = (_sqlite3VdbeMakeLabel($660)|0); + HEAP32[$addrOutputRow>>2] = $661; + $662 = HEAP32[$1>>2]|0; + $663 = (($662) + 72|0); + $664 = HEAP32[$663>>2]|0; + $665 = (($664) + 1)|0; + HEAP32[$663>>2] = $665; + HEAP32[$regReset>>2] = $665; + $666 = HEAP32[$v>>2]|0; + $667 = (_sqlite3VdbeMakeLabel($666)|0); + HEAP32[$addrReset>>2] = $667; + $668 = HEAP32[$1>>2]|0; + $669 = (($668) + 72|0); + $670 = HEAP32[$669>>2]|0; + $671 = (($670) + 1)|0; + HEAP32[$iAMem>>2] = $671; + $672 = HEAP32[$pGroupBy>>2]|0; + $673 = HEAP32[$672>>2]|0; + $674 = HEAP32[$1>>2]|0; + $675 = (($674) + 72|0); + $676 = HEAP32[$675>>2]|0; + $677 = (($676) + ($673))|0; + HEAP32[$675>>2] = $677; + $678 = HEAP32[$1>>2]|0; + $679 = (($678) + 72|0); + $680 = HEAP32[$679>>2]|0; + $681 = (($680) + 1)|0; + HEAP32[$iBMem>>2] = $681; + $682 = HEAP32[$pGroupBy>>2]|0; + $683 = HEAP32[$682>>2]|0; + $684 = HEAP32[$1>>2]|0; + $685 = (($684) + 72|0); + $686 = HEAP32[$685>>2]|0; + $687 = (($686) + ($683))|0; + HEAP32[$685>>2] = $687; + $688 = HEAP32[$v>>2]|0; + $689 = HEAP32[$iAbortFlag>>2]|0; + (_sqlite3VdbeAddOp2($688,25,0,$689)|0); + $690 = HEAP32[$v>>2]|0; + $691 = HEAP32[$iUseFlag>>2]|0; + (_sqlite3VdbeAddOp2($690,25,0,$691)|0); + $692 = HEAP32[$v>>2]|0; + $693 = HEAP32[$iAMem>>2]|0; + $694 = HEAP32[$iAMem>>2]|0; + $695 = HEAP32[$pGroupBy>>2]|0; + $696 = HEAP32[$695>>2]|0; + $697 = (($694) + ($696))|0; + $698 = (($697) - 1)|0; + (_sqlite3VdbeAddOp3($692,28,0,$693,$698)|0); + $699 = HEAP32[$v>>2]|0; + $700 = HEAP32[$regReset>>2]|0; + $701 = HEAP32[$addrReset>>2]|0; + (_sqlite3VdbeAddOp2($699,17,$700,$701)|0); + $702 = HEAP32[$1>>2]|0; + $703 = HEAP32[$pTabList>>2]|0; + $704 = HEAP32[$pWhere>>2]|0; + $705 = HEAP32[$pGroupBy>>2]|0; + $706 = HEAP32[$orderByGrp>>2]|0; + $707 = ($706|0)!=(0); + $708 = $707 ? 2048 : 0; + $709 = 256 | $708; + $710 = $709&65535; + $711 = (_sqlite3WhereBegin($702,$703,$704,$705,0,$710,0)|0); + HEAP32[$pWInfo>>2] = $711; + $712 = HEAP32[$pWInfo>>2]|0; + $713 = ($712|0)==(0|0); + if ($713) { + break; + } + $714 = HEAP32[$pWInfo>>2]|0; + $715 = (_sqlite3WhereIsOrdered($714)|0); + $716 = HEAP32[$pGroupBy>>2]|0; + $717 = HEAP32[$716>>2]|0; + $718 = ($715|0)==($717|0); + if ($718) { + HEAP32[$groupBySort>>2] = 0; + } else { + $719 = HEAP32[$1>>2]|0; + $720 = HEAP8[$sDistinct>>0]|0; + $721 = $720&255; + $722 = ($721|0)!=(0); + if ($722) { + $723 = HEAP32[$2>>2]|0; + $724 = (($723) + 6|0); + $725 = HEAP16[$724>>1]|0; + $726 = $725&65535; + $727 = $726 & 1; + $728 = ($727|0)==(0); + $730 = $728; + } else { + $730 = 0; + } + $729 = $730 ? 31264 : 31280; + _explainTempTable($719,$729); + HEAP32[$groupBySort>>2] = 1; + $731 = HEAP32[$pGroupBy>>2]|0; + $732 = HEAP32[$731>>2]|0; + HEAP32[$nGroupBy>>2] = $732; + $733 = HEAP32[$nGroupBy>>2]|0; + $734 = (($733) + 1)|0; + HEAP32[$nCol>>2] = $734; + $735 = HEAP32[$nGroupBy>>2]|0; + $736 = (($735) + 1)|0; + HEAP32[$j>>2] = $736; + HEAP32[$i>>2] = 0; + while(1) { + $737 = HEAP32[$i>>2]|0; + $738 = (($sAggInfo) + 32|0); + $739 = HEAP32[$738>>2]|0; + $740 = ($737|0)<($739|0); + if (!($740)) { + break; + } + $741 = HEAP32[$i>>2]|0; + $742 = (($sAggInfo) + 28|0); + $743 = HEAP32[$742>>2]|0; + $744 = (($743) + (($741*24)|0)|0); + $745 = (($744) + 12|0); + $746 = HEAP32[$745>>2]|0; + $747 = HEAP32[$j>>2]|0; + $748 = ($746|0)>=($747|0); + if ($748) { + $749 = HEAP32[$nCol>>2]|0; + $750 = (($749) + 1)|0; + HEAP32[$nCol>>2] = $750; + $751 = HEAP32[$j>>2]|0; + $752 = (($751) + 1)|0; + HEAP32[$j>>2] = $752; + } + $753 = HEAP32[$i>>2]|0; + $754 = (($753) + 1)|0; + HEAP32[$i>>2] = $754; + } + $755 = HEAP32[$1>>2]|0; + $756 = HEAP32[$nCol>>2]|0; + $757 = (_sqlite3GetTempRange($755,$756)|0); + HEAP32[$regBase>>2] = $757; + $758 = HEAP32[$1>>2]|0; + _sqlite3ExprCacheClear($758); + $759 = HEAP32[$1>>2]|0; + $760 = HEAP32[$pGroupBy>>2]|0; + $761 = HEAP32[$regBase>>2]|0; + (_sqlite3ExprCodeExprList($759,$760,$761,0)|0); + $762 = HEAP32[$v>>2]|0; + $763 = (($sAggInfo) + 4|0); + $764 = HEAP32[$763>>2]|0; + $765 = HEAP32[$regBase>>2]|0; + $766 = HEAP32[$nGroupBy>>2]|0; + $767 = (($765) + ($766))|0; + (_sqlite3VdbeAddOp2($762,68,$764,$767)|0); + $768 = HEAP32[$nGroupBy>>2]|0; + $769 = (($768) + 1)|0; + HEAP32[$j>>2] = $769; + HEAP32[$i>>2] = 0; + while(1) { + $770 = HEAP32[$i>>2]|0; + $771 = (($sAggInfo) + 32|0); + $772 = HEAP32[$771>>2]|0; + $773 = ($770|0)<($772|0); + if (!($773)) { + break; + } + $774 = HEAP32[$i>>2]|0; + $775 = (($sAggInfo) + 28|0); + $776 = HEAP32[$775>>2]|0; + $777 = (($776) + (($774*24)|0)|0); + HEAP32[$pCol>>2] = $777; + $778 = HEAP32[$pCol>>2]|0; + $779 = (($778) + 12|0); + $780 = HEAP32[$779>>2]|0; + $781 = HEAP32[$j>>2]|0; + $782 = ($780|0)>=($781|0); + if ($782) { + $783 = HEAP32[$j>>2]|0; + $784 = HEAP32[$regBase>>2]|0; + $785 = (($783) + ($784))|0; + HEAP32[$r1>>2] = $785; + $786 = HEAP32[$1>>2]|0; + $787 = HEAP32[$pCol>>2]|0; + $788 = HEAP32[$787>>2]|0; + $789 = HEAP32[$pCol>>2]|0; + $790 = (($789) + 8|0); + $791 = HEAP32[$790>>2]|0; + $792 = HEAP32[$pCol>>2]|0; + $793 = (($792) + 4|0); + $794 = HEAP32[$793>>2]|0; + $795 = HEAP32[$r1>>2]|0; + $796 = (_sqlite3ExprCodeGetColumn($786,$788,$791,$794,$795,0)|0); + HEAP32[$r2>>2] = $796; + $797 = HEAP32[$r1>>2]|0; + $798 = HEAP32[$r2>>2]|0; + $799 = ($797|0)!=($798|0); + if ($799) { + $800 = HEAP32[$v>>2]|0; + $801 = HEAP32[$r2>>2]|0; + $802 = HEAP32[$r1>>2]|0; + (_sqlite3VdbeAddOp2($800,34,$801,$802)|0); + } + $803 = HEAP32[$j>>2]|0; + $804 = (($803) + 1)|0; + HEAP32[$j>>2] = $804; + } + $805 = HEAP32[$i>>2]|0; + $806 = (($805) + 1)|0; + HEAP32[$i>>2] = $806; + } + $807 = HEAP32[$1>>2]|0; + $808 = (_sqlite3GetTempReg($807)|0); + HEAP32[$regRecord>>2] = $808; + $809 = HEAP32[$v>>2]|0; + $810 = HEAP32[$regBase>>2]|0; + $811 = HEAP32[$nCol>>2]|0; + $812 = HEAP32[$regRecord>>2]|0; + (_sqlite3VdbeAddOp3($809,48,$810,$811,$812)|0); + $813 = HEAP32[$v>>2]|0; + $814 = (($sAggInfo) + 4|0); + $815 = HEAP32[$814>>2]|0; + $816 = HEAP32[$regRecord>>2]|0; + (_sqlite3VdbeAddOp2($813,106,$815,$816)|0); + $817 = HEAP32[$1>>2]|0; + $818 = HEAP32[$regRecord>>2]|0; + _sqlite3ReleaseTempReg($817,$818); + $819 = HEAP32[$1>>2]|0; + $820 = HEAP32[$regBase>>2]|0; + $821 = HEAP32[$nCol>>2]|0; + _sqlite3ReleaseTempRange($819,$820,$821); + $822 = HEAP32[$pWInfo>>2]|0; + _sqlite3WhereEnd($822); + $823 = HEAP32[$1>>2]|0; + $824 = (($823) + 68|0); + $825 = HEAP32[$824>>2]|0; + $826 = (($825) + 1)|0; + HEAP32[$824>>2] = $826; + HEAP32[$sortPTab>>2] = $825; + $827 = (($sAggInfo) + 8|0); + HEAP32[$827>>2] = $825; + $828 = HEAP32[$1>>2]|0; + $829 = (_sqlite3GetTempReg($828)|0); + HEAP32[$sortOut>>2] = $829; + $830 = HEAP32[$v>>2]|0; + $831 = HEAP32[$sortPTab>>2]|0; + $832 = HEAP32[$sortOut>>2]|0; + $833 = HEAP32[$nCol>>2]|0; + (_sqlite3VdbeAddOp3($830,57,$831,$832,$833)|0); + $834 = HEAP32[$v>>2]|0; + $835 = (($sAggInfo) + 4|0); + $836 = HEAP32[$835>>2]|0; + $837 = HEAP32[$addrEnd>>2]|0; + (_sqlite3VdbeAddOp2($834,103,$836,$837)|0); + $838 = (($sAggInfo) + 1|0); + HEAP8[$838>>0] = 1; + $839 = HEAP32[$1>>2]|0; + _sqlite3ExprCacheClear($839); + } + $840 = HEAP32[$orderByGrp>>2]|0; + $841 = ($840|0)!=(0); + do { + if ($841) { + $842 = HEAP32[$db>>2]|0; + $843 = (($842) + 60|0); + $844 = HEAP16[$843>>1]|0; + $845 = $844&65535; + $846 = $845 & 4; + $847 = ($846|0)==(0); + if (!($847)) { + break; + } + $848 = HEAP32[$groupBySort>>2]|0; + $849 = ($848|0)!=(0); + if (!($849)) { + $850 = HEAP32[$pWInfo>>2]|0; + $851 = (_sqlite3WhereIsSorted($850)|0); + $852 = ($851|0)!=(0); + if (!($852)) { + break; + } + } + HEAP32[$sSort>>2] = 0; + $853 = HEAP32[$v>>2]|0; + $854 = (($sSort) + 20|0); + $855 = HEAP32[$854>>2]|0; + _sqlite3VdbeChangeToNoop($853,$855); + } + } while(0); + $856 = HEAP32[$v>>2]|0; + $857 = (_sqlite3VdbeCurrentAddr($856)|0); + HEAP32[$addrTopOfLoop>>2] = $857; + $858 = HEAP32[$1>>2]|0; + _sqlite3ExprCacheClear($858); + $859 = HEAP32[$groupBySort>>2]|0; + $860 = ($859|0)!=(0); + if ($860) { + $861 = HEAP32[$v>>2]|0; + $862 = (($sAggInfo) + 4|0); + $863 = HEAP32[$862>>2]|0; + $864 = HEAP32[$sortOut>>2]|0; + (_sqlite3VdbeAddOp2($861,95,$863,$864)|0); + } + HEAP32[$j>>2] = 0; + while(1) { + $865 = HEAP32[$j>>2]|0; + $866 = HEAP32[$pGroupBy>>2]|0; + $867 = HEAP32[$866>>2]|0; + $868 = ($865|0)<($867|0); + if (!($868)) { + break; + } + $869 = HEAP32[$groupBySort>>2]|0; + $870 = ($869|0)!=(0); + do { + if ($870) { + $871 = HEAP32[$v>>2]|0; + $872 = HEAP32[$sortPTab>>2]|0; + $873 = HEAP32[$j>>2]|0; + $874 = HEAP32[$iBMem>>2]|0; + $875 = HEAP32[$j>>2]|0; + $876 = (($874) + ($875))|0; + (_sqlite3VdbeAddOp3($871,46,$872,$873,$876)|0); + $877 = HEAP32[$j>>2]|0; + $878 = ($877|0)==(0); + if (!($878)) { + break; + } + $879 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($879,32); + } else { + HEAP8[$sAggInfo>>0] = 1; + $880 = HEAP32[$1>>2]|0; + $881 = HEAP32[$j>>2]|0; + $882 = HEAP32[$pGroupBy>>2]|0; + $883 = (($882) + 4|0); + $884 = HEAP32[$883>>2]|0; + $885 = (($884) + (($881*20)|0)|0); + $886 = HEAP32[$885>>2]|0; + $887 = HEAP32[$iBMem>>2]|0; + $888 = HEAP32[$j>>2]|0; + $889 = (($887) + ($888))|0; + _sqlite3ExprCode($880,$886,$889); + } + } while(0); + $890 = HEAP32[$j>>2]|0; + $891 = (($890) + 1)|0; + HEAP32[$j>>2] = $891; + } + $892 = HEAP32[$v>>2]|0; + $893 = HEAP32[$iAMem>>2]|0; + $894 = HEAP32[$iBMem>>2]|0; + $895 = HEAP32[$pGroupBy>>2]|0; + $896 = HEAP32[$895>>2]|0; + $897 = HEAP32[$pKeyInfo2>>2]|0; + $898 = (_sqlite3KeyInfoRef($897)|0); + (_sqlite3VdbeAddOp4($892,41,$893,$894,$896,$898,-6)|0); + $899 = HEAP32[$v>>2]|0; + $900 = (_sqlite3VdbeCurrentAddr($899)|0); + HEAP32[$j1>>2] = $900; + $901 = HEAP32[$v>>2]|0; + $902 = HEAP32[$j1>>2]|0; + $903 = (($902) + 1)|0; + $904 = HEAP32[$j1>>2]|0; + $905 = (($904) + 1)|0; + (_sqlite3VdbeAddOp3($901,42,$903,0,$905)|0); + $906 = HEAP32[$1>>2]|0; + $907 = HEAP32[$iBMem>>2]|0; + $908 = HEAP32[$iAMem>>2]|0; + $909 = HEAP32[$pGroupBy>>2]|0; + $910 = HEAP32[$909>>2]|0; + _sqlite3ExprCodeMove($906,$907,$908,$910); + $911 = HEAP32[$v>>2]|0; + $912 = HEAP32[$regOutputRow>>2]|0; + $913 = HEAP32[$addrOutputRow>>2]|0; + (_sqlite3VdbeAddOp2($911,17,$912,$913)|0); + $914 = HEAP32[$v>>2]|0; + $915 = HEAP32[$iAbortFlag>>2]|0; + $916 = HEAP32[$addrEnd>>2]|0; + (_sqlite3VdbeAddOp2($914,134,$915,$916)|0); + $917 = HEAP32[$v>>2]|0; + $918 = HEAP32[$regReset>>2]|0; + $919 = HEAP32[$addrReset>>2]|0; + (_sqlite3VdbeAddOp2($917,17,$918,$919)|0); + $920 = HEAP32[$v>>2]|0; + $921 = HEAP32[$j1>>2]|0; + _sqlite3VdbeJumpHere($920,$921); + $922 = HEAP32[$1>>2]|0; + _updateAccumulator($922,$sAggInfo); + $923 = HEAP32[$v>>2]|0; + $924 = HEAP32[$iUseFlag>>2]|0; + (_sqlite3VdbeAddOp2($923,25,1,$924)|0); + $925 = HEAP32[$groupBySort>>2]|0; + $926 = ($925|0)!=(0); + if ($926) { + $927 = HEAP32[$v>>2]|0; + $928 = (($sAggInfo) + 4|0); + $929 = HEAP32[$928>>2]|0; + $930 = HEAP32[$addrTopOfLoop>>2]|0; + (_sqlite3VdbeAddOp2($927,5,$929,$930)|0); + } else { + $931 = HEAP32[$pWInfo>>2]|0; + _sqlite3WhereEnd($931); + $932 = HEAP32[$v>>2]|0; + $933 = HEAP32[$addrSortingIdx>>2]|0; + _sqlite3VdbeChangeToNoop($932,$933); + } + $934 = HEAP32[$v>>2]|0; + $935 = HEAP32[$regOutputRow>>2]|0; + $936 = HEAP32[$addrOutputRow>>2]|0; + (_sqlite3VdbeAddOp2($934,17,$935,$936)|0); + $937 = HEAP32[$v>>2]|0; + $938 = HEAP32[$addrEnd>>2]|0; + (_sqlite3VdbeAddOp2($937,16,0,$938)|0); + $939 = HEAP32[$v>>2]|0; + $940 = (_sqlite3VdbeCurrentAddr($939)|0); + HEAP32[$addrSetAbort>>2] = $940; + $941 = HEAP32[$v>>2]|0; + $942 = HEAP32[$iAbortFlag>>2]|0; + (_sqlite3VdbeAddOp2($941,25,1,$942)|0); + $943 = HEAP32[$v>>2]|0; + $944 = HEAP32[$regOutputRow>>2]|0; + (_sqlite3VdbeAddOp1($943,18,$944)|0); + $945 = HEAP32[$v>>2]|0; + $946 = HEAP32[$addrOutputRow>>2]|0; + _sqlite3VdbeResolveLabel($945,$946); + $947 = HEAP32[$v>>2]|0; + $948 = (_sqlite3VdbeCurrentAddr($947)|0); + HEAP32[$addrOutputRow>>2] = $948; + $949 = HEAP32[$v>>2]|0; + $950 = HEAP32[$iUseFlag>>2]|0; + $951 = HEAP32[$addrOutputRow>>2]|0; + $952 = (($951) + 2)|0; + (_sqlite3VdbeAddOp2($949,134,$950,$952)|0); + $953 = HEAP32[$v>>2]|0; + $954 = HEAP32[$regOutputRow>>2]|0; + (_sqlite3VdbeAddOp1($953,18,$954)|0); + $955 = HEAP32[$1>>2]|0; + _finalizeAggFunctions($955,$sAggInfo); + $956 = HEAP32[$1>>2]|0; + $957 = HEAP32[$pHaving>>2]|0; + $958 = HEAP32[$addrOutputRow>>2]|0; + $959 = (($958) + 1)|0; + _sqlite3ExprIfFalse($956,$957,$959,8); + $960 = HEAP32[$1>>2]|0; + $961 = HEAP32[$2>>2]|0; + $962 = HEAP32[$2>>2]|0; + $963 = HEAP32[$962>>2]|0; + $964 = HEAP32[$3>>2]|0; + $965 = HEAP32[$addrOutputRow>>2]|0; + $966 = (($965) + 1)|0; + $967 = HEAP32[$addrSetAbort>>2]|0; + _selectInnerLoop($960,$961,$963,-1,$sSort,$sDistinct,$964,$966,$967); + $968 = HEAP32[$v>>2]|0; + $969 = HEAP32[$regOutputRow>>2]|0; + (_sqlite3VdbeAddOp1($968,18,$969)|0); + $970 = HEAP32[$v>>2]|0; + $971 = HEAP32[$addrReset>>2]|0; + _sqlite3VdbeResolveLabel($970,$971); + $972 = HEAP32[$1>>2]|0; + _resetAccumulator($972,$sAggInfo); + $973 = HEAP32[$v>>2]|0; + $974 = HEAP32[$regReset>>2]|0; + (_sqlite3VdbeAddOp1($973,18,$974)|0); + } else { + HEAP32[$pDel>>2] = 0; + $975 = HEAP32[$2>>2]|0; + $976 = (_isSimpleCount($975,$sAggInfo)|0); + HEAP32[$pTab>>2] = $976; + $977 = ($976|0)!=(0|0); + if ($977) { + $978 = HEAP32[$1>>2]|0; + $979 = HEAP32[$978>>2]|0; + $980 = HEAP32[$pTab>>2]|0; + $981 = (($980) + 68|0); + $982 = HEAP32[$981>>2]|0; + $983 = (_sqlite3SchemaToIndex($979,$982)|0); + HEAP32[$iDb>>2] = $983; + $984 = HEAP32[$1>>2]|0; + $985 = (($984) + 68|0); + $986 = HEAP32[$985>>2]|0; + $987 = (($986) + 1)|0; + HEAP32[$985>>2] = $987; + HEAP32[$iCsr>>2] = $986; + HEAP32[$pKeyInfo3>>2] = 0; + HEAP32[$pBest>>2] = 0; + $988 = HEAP32[$pTab>>2]|0; + $989 = (($988) + 32|0); + $990 = HEAP32[$989>>2]|0; + HEAP32[$iRoot>>2] = $990; + $991 = HEAP32[$1>>2]|0; + $992 = HEAP32[$iDb>>2]|0; + _sqlite3CodeVerifySchema($991,$992); + $993 = HEAP32[$1>>2]|0; + $994 = HEAP32[$iDb>>2]|0; + $995 = HEAP32[$pTab>>2]|0; + $996 = (($995) + 32|0); + $997 = HEAP32[$996>>2]|0; + $998 = HEAP32[$pTab>>2]|0; + $999 = HEAP32[$998>>2]|0; + _sqlite3TableLock($993,$994,$997,0,$999); + $1000 = HEAP32[$pTab>>2]|0; + $1001 = (($1000) + 44|0); + $1002 = HEAP8[$1001>>0]|0; + $1003 = $1002&255; + $1004 = $1003 & 32; + $1005 = ($1004|0)==(0); + if (!($1005)) { + $1006 = HEAP32[$pTab>>2]|0; + $1007 = (_sqlite3PrimaryKeyIndex($1006)|0); + HEAP32[$pBest>>2] = $1007; + } + $1008 = HEAP32[$pTab>>2]|0; + $1009 = (($1008) + 8|0); + $1010 = HEAP32[$1009>>2]|0; + HEAP32[$pIdx>>2] = $1010; + while(1) { + $1011 = HEAP32[$pIdx>>2]|0; + $1012 = ($1011|0)!=(0|0); + if (!($1012)) { + break; + } + $1013 = HEAP32[$pIdx>>2]|0; + $1014 = (($1013) + 55|0); + $1015 = HEAP8[$1014>>0]|0; + $1016 = ($1015&255) >>> 2; + $1017 = $1016 & 1; + $1018 = $1017&255; + $1019 = ($1018|0)==(0); + do { + if ($1019) { + $1020 = HEAP32[$pIdx>>2]|0; + $1021 = (($1020) + 48|0); + $1022 = HEAP16[$1021>>1]|0; + $1023 = $1022 << 16 >> 16; + $1024 = HEAP32[$pTab>>2]|0; + $1025 = (($1024) + 42|0); + $1026 = HEAP16[$1025>>1]|0; + $1027 = $1026 << 16 >> 16; + $1028 = ($1023|0)<($1027|0); + if (!($1028)) { + break; + } + $1029 = HEAP32[$pIdx>>2]|0; + $1030 = (($1029) + 36|0); + $1031 = HEAP32[$1030>>2]|0; + $1032 = ($1031|0)==(0|0); + if (!($1032)) { + break; + } + $1033 = HEAP32[$pBest>>2]|0; + $1034 = ($1033|0)!=(0|0); + if ($1034) { + $1035 = HEAP32[$pIdx>>2]|0; + $1036 = (($1035) + 48|0); + $1037 = HEAP16[$1036>>1]|0; + $1038 = $1037 << 16 >> 16; + $1039 = HEAP32[$pBest>>2]|0; + $1040 = (($1039) + 48|0); + $1041 = HEAP16[$1040>>1]|0; + $1042 = $1041 << 16 >> 16; + $1043 = ($1038|0)<($1042|0); + if (!($1043)) { + break; + } + } + $1044 = HEAP32[$pIdx>>2]|0; + HEAP32[$pBest>>2] = $1044; + } + } while(0); + $1045 = HEAP32[$pIdx>>2]|0; + $1046 = (($1045) + 20|0); + $1047 = HEAP32[$1046>>2]|0; + HEAP32[$pIdx>>2] = $1047; + } + $1048 = HEAP32[$pBest>>2]|0; + $1049 = ($1048|0)!=(0|0); + if ($1049) { + $1050 = HEAP32[$pBest>>2]|0; + $1051 = (($1050) + 44|0); + $1052 = HEAP32[$1051>>2]|0; + HEAP32[$iRoot>>2] = $1052; + $1053 = HEAP32[$1>>2]|0; + $1054 = HEAP32[$pBest>>2]|0; + $1055 = (_sqlite3KeyInfoOfIndex($1053,$1054)|0); + HEAP32[$pKeyInfo3>>2] = $1055; + } + $1056 = HEAP32[$v>>2]|0; + $1057 = HEAP32[$iCsr>>2]|0; + $1058 = HEAP32[$iRoot>>2]|0; + $1059 = HEAP32[$iDb>>2]|0; + (_sqlite3VdbeAddOp4Int($1056,52,$1057,$1058,$1059,1)|0); + $1060 = HEAP32[$pKeyInfo3>>2]|0; + $1061 = ($1060|0)!=(0|0); + if ($1061) { + $1062 = HEAP32[$v>>2]|0; + $1063 = HEAP32[$pKeyInfo3>>2]|0; + _sqlite3VdbeChangeP4($1062,-1,$1063,-6); + } + $1064 = HEAP32[$v>>2]|0; + $1065 = HEAP32[$iCsr>>2]|0; + $1066 = (($sAggInfo) + 40|0); + $1067 = HEAP32[$1066>>2]|0; + $1068 = (($1067) + 8|0); + $1069 = HEAP32[$1068>>2]|0; + (_sqlite3VdbeAddOp2($1064,49,$1065,$1069)|0); + $1070 = HEAP32[$v>>2]|0; + $1071 = HEAP32[$iCsr>>2]|0; + (_sqlite3VdbeAddOp1($1070,58,$1071)|0); + $1072 = HEAP32[$1>>2]|0; + $1073 = HEAP32[$pTab>>2]|0; + $1074 = HEAP32[$pBest>>2]|0; + _explainSimpleCount($1072,$1073,$1074); + } else { + HEAP32[$pMinMax>>2] = 0; + HEAP8[$flag>>0] = 0; + $1075 = HEAP32[$2>>2]|0; + $1076 = (($1075) + 44|0); + $1077 = HEAP32[$1076>>2]|0; + $1078 = ($1077|0)==(0|0); + if ($1078) { + $1079 = (_minMaxQuery($sAggInfo,$pMinMax)|0); + HEAP8[$flag>>0] = $1079; + } + $1080 = HEAP8[$flag>>0]|0; + $1081 = ($1080<<24>>24)!=(0); + do { + if ($1081) { + $1082 = HEAP32[$db>>2]|0; + $1083 = HEAP32[$pMinMax>>2]|0; + $1084 = (_sqlite3ExprListDup($1082,$1083,0)|0); + HEAP32[$pMinMax>>2] = $1084; + $1085 = HEAP32[$pMinMax>>2]|0; + HEAP32[$pDel>>2] = $1085; + $1086 = HEAP32[$pMinMax>>2]|0; + $1087 = ($1086|0)!=(0|0); + if (!($1087)) { + break; + } + $1088 = HEAP32[$db>>2]|0; + $1089 = (($1088) + 64|0); + $1090 = HEAP8[$1089>>0]|0; + $1091 = ($1090<<24>>24)!=(0); + if ($1091) { + break; + } + $1092 = HEAP8[$flag>>0]|0; + $1093 = $1092&255; + $1094 = ($1093|0)!=(1); + $1095 = $1094 ? 1 : 0; + $1096 = $1095&255; + $1097 = HEAP32[$pMinMax>>2]|0; + $1098 = (($1097) + 4|0); + $1099 = HEAP32[$1098>>2]|0; + $1100 = (($1099) + 12|0); + HEAP8[$1100>>0] = $1096; + $1101 = HEAP32[$pMinMax>>2]|0; + $1102 = (($1101) + 4|0); + $1103 = HEAP32[$1102>>2]|0; + $1104 = HEAP32[$1103>>2]|0; + HEAP8[$1104>>0] = -102; + } + } while(0); + $1105 = HEAP32[$1>>2]|0; + _resetAccumulator($1105,$sAggInfo); + $1106 = HEAP32[$1>>2]|0; + $1107 = HEAP32[$pTabList>>2]|0; + $1108 = HEAP32[$pWhere>>2]|0; + $1109 = HEAP32[$pMinMax>>2]|0; + $1110 = HEAP8[$flag>>0]|0; + $1111 = $1110&255; + $1112 = (_sqlite3WhereBegin($1106,$1107,$1108,$1109,0,$1111,0)|0); + HEAP32[$pWInfo>>2] = $1112; + $1113 = HEAP32[$pWInfo>>2]|0; + $1114 = ($1113|0)==(0|0); + if ($1114) { + $1115 = HEAP32[$db>>2]|0; + $1116 = HEAP32[$pDel>>2]|0; + _sqlite3ExprListDelete($1115,$1116); + break; + } + $1117 = HEAP32[$1>>2]|0; + _updateAccumulator($1117,$sAggInfo); + $1118 = HEAP32[$pWInfo>>2]|0; + $1119 = (_sqlite3WhereIsOrdered($1118)|0); + $1120 = ($1119|0)>(0); + if ($1120) { + $1121 = HEAP32[$v>>2]|0; + $1122 = HEAP32[$pWInfo>>2]|0; + $1123 = (_sqlite3WhereBreakLabel($1122)|0); + (_sqlite3VdbeAddOp2($1121,16,0,$1123)|0); + } + $1124 = HEAP32[$pWInfo>>2]|0; + _sqlite3WhereEnd($1124); + $1125 = HEAP32[$1>>2]|0; + _finalizeAggFunctions($1125,$sAggInfo); + } + HEAP32[$sSort>>2] = 0; + $1126 = HEAP32[$1>>2]|0; + $1127 = HEAP32[$pHaving>>2]|0; + $1128 = HEAP32[$addrEnd>>2]|0; + _sqlite3ExprIfFalse($1126,$1127,$1128,8); + $1129 = HEAP32[$1>>2]|0; + $1130 = HEAP32[$2>>2]|0; + $1131 = HEAP32[$2>>2]|0; + $1132 = HEAP32[$1131>>2]|0; + $1133 = HEAP32[$3>>2]|0; + $1134 = HEAP32[$addrEnd>>2]|0; + $1135 = HEAP32[$addrEnd>>2]|0; + _selectInnerLoop($1129,$1130,$1132,-1,0,0,$1133,$1134,$1135); + $1136 = HEAP32[$db>>2]|0; + $1137 = HEAP32[$pDel>>2]|0; + _sqlite3ExprListDelete($1136,$1137); + } + $1138 = HEAP32[$v>>2]|0; + $1139 = HEAP32[$addrEnd>>2]|0; + _sqlite3VdbeResolveLabel($1138,$1139); + } + $1140 = (($sDistinct) + 1|0); + $1141 = HEAP8[$1140>>0]|0; + $1142 = $1141&255; + $1143 = ($1142|0)==(3); + if ($1143) { + $1144 = HEAP32[$1>>2]|0; + _explainTempTable($1144,31264); + } + $1145 = HEAP32[$sSort>>2]|0; + $1146 = ($1145|0)!=(0|0); + if ($1146) { + $1147 = HEAP32[$1>>2]|0; + $1148 = (($sSort) + 4|0); + $1149 = HEAP32[$1148>>2]|0; + $1150 = ($1149|0)>(0); + $1151 = $1150 ? 31296 : 31320; + _explainTempTable($1147,$1151); + $1152 = HEAP32[$1>>2]|0; + $1153 = HEAP32[$2>>2]|0; + $1154 = HEAP32[$pEList>>2]|0; + $1155 = HEAP32[$1154>>2]|0; + $1156 = HEAP32[$3>>2]|0; + _generateSortTail($1152,$1153,$sSort,$1155,$1156); + } + $1157 = HEAP32[$v>>2]|0; + $1158 = HEAP32[$iEnd>>2]|0; + _sqlite3VdbeResolveLabel($1157,$1158); + HEAP32[$rc>>2] = 0; + } + } + } + } + } while(0); + $1159 = HEAP32[$iRestoreSelectId>>2]|0; + $1160 = HEAP32[$1>>2]|0; + $1161 = (($1160) + 464|0); + HEAP32[$1161>>2] = $1159; + $1162 = HEAP32[$rc>>2]|0; + $1163 = ($1162|0)==(0); + if ($1163) { + $1164 = HEAP32[$3>>2]|0; + $1165 = HEAP8[$1164>>0]|0; + $1166 = $1165&255; + $1167 = ($1166|0)==(9); + if ($1167) { + $1168 = HEAP32[$1>>2]|0; + $1169 = HEAP32[$pTabList>>2]|0; + $1170 = HEAP32[$pEList>>2]|0; + _generateColumnNames($1168,$1169,$1170); + } + } + $1171 = HEAP32[$db>>2]|0; + $1172 = (($sAggInfo) + 28|0); + $1173 = HEAP32[$1172>>2]|0; + _sqlite3DbFree($1171,$1173); + $1174 = HEAP32[$db>>2]|0; + $1175 = (($sAggInfo) + 40|0); + $1176 = HEAP32[$1175>>2]|0; + _sqlite3DbFree($1174,$1176); + $1177 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $1177; + $1178 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($1178|0); + } + } + } + HEAP32[$0>>2] = 1; + $1178 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($1178|0); +} +function _sqlite3SrcListAppendFromTerm($pParse,$p,$pTable,$pDatabase,$pAlias,$pSubquery,$pOn,$pUsing) { + $pParse = $pParse|0; + $p = $p|0; + $pTable = $pTable|0; + $pDatabase = $pDatabase|0; + $pAlias = $pAlias|0; + $pSubquery = $pSubquery|0; + $pOn = $pOn|0; + $pUsing = $pUsing|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $7 = 0, $8 = 0, $9 = 0, $db = 0, $pItem = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $5 = sp + 44|0; + $6 = sp + 12|0; + $7 = sp + 8|0; + $8 = sp + 4|0; + $pItem = sp + 16|0; + $db = sp + 20|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $pTable; + HEAP32[$4>>2] = $pDatabase; + HEAP32[$5>>2] = $pAlias; + HEAP32[$6>>2] = $pSubquery; + HEAP32[$7>>2] = $pOn; + HEAP32[$8>>2] = $pUsing; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$db>>2] = $10; + $11 = HEAP32[$2>>2]|0; + $12 = ($11|0)!=(0|0); + do { + if ($12) { + label = 5; + } else { + $13 = HEAP32[$7>>2]|0; + $14 = ($13|0)!=(0|0); + if (!($14)) { + $15 = HEAP32[$8>>2]|0; + $16 = ($15|0)!=(0|0); + if (!($16)) { + label = 5; + break; + } + } + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$7>>2]|0; + $19 = ($18|0)!=(0|0); + $20 = $19 ? 31248 : 31256; + HEAP32[$vararg_buffer>>2] = $20; + _sqlite3ErrorMsg($17,31208,$vararg_buffer); + } + } while(0); + if ((label|0) == 5) { + $21 = HEAP32[$db>>2]|0; + $22 = HEAP32[$2>>2]|0; + $23 = HEAP32[$3>>2]|0; + $24 = HEAP32[$4>>2]|0; + $25 = (_sqlite3SrcListAppend($21,$22,$23,$24)|0); + HEAP32[$2>>2] = $25; + $26 = HEAP32[$2>>2]|0; + $27 = ($26|0)==(0|0); + if (!($27)) { + $28 = HEAP32[$2>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = ($29|0)==(0); + if (!($30)) { + $31 = HEAP32[$2>>2]|0; + $32 = HEAP32[$31>>2]|0; + $33 = (($32) - 1)|0; + $34 = HEAP32[$2>>2]|0; + $35 = (($34) + 8|0); + $36 = (($35) + (($33*72)|0)|0); + HEAP32[$pItem>>2] = $36; + $37 = HEAP32[$5>>2]|0; + $38 = (($37) + 4|0); + $39 = HEAP32[$38>>2]|0; + $40 = ($39|0)!=(0); + if ($40) { + $41 = HEAP32[$db>>2]|0; + $42 = HEAP32[$5>>2]|0; + $43 = (_sqlite3NameFromToken($41,$42)|0); + $44 = HEAP32[$pItem>>2]|0; + $45 = (($44) + 12|0); + HEAP32[$45>>2] = $43; + } + $46 = HEAP32[$6>>2]|0; + $47 = HEAP32[$pItem>>2]|0; + $48 = (($47) + 20|0); + HEAP32[$48>>2] = $46; + $49 = HEAP32[$7>>2]|0; + $50 = HEAP32[$pItem>>2]|0; + $51 = (($50) + 44|0); + HEAP32[$51>>2] = $49; + $52 = HEAP32[$8>>2]|0; + $53 = HEAP32[$pItem>>2]|0; + $54 = (($53) + 48|0); + HEAP32[$54>>2] = $52; + $55 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $55; + $62 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($62|0); + } + } + } + $56 = HEAP32[$db>>2]|0; + $57 = HEAP32[$7>>2]|0; + _sqlite3ExprDelete($56,$57); + $58 = HEAP32[$db>>2]|0; + $59 = HEAP32[$8>>2]|0; + _sqlite3IdListDelete($58,$59); + $60 = HEAP32[$db>>2]|0; + $61 = HEAP32[$6>>2]|0; + _sqlite3SelectDelete($60,$61); + HEAP32[$0>>2] = 0; + $62 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($62|0); +} +function _sqlite3SelectNew($pParse,$pEList,$pSrc,$pWhere,$pGroupBy,$pHaving,$pOrderBy,$selFlags,$pLimit,$pOffset) { + $pParse = $pParse|0; + $pEList = $pEList|0; + $pSrc = $pSrc|0; + $pWhere = $pWhere|0; + $pGroupBy = $pGroupBy|0; + $pHaving = $pHaving|0; + $pOrderBy = $pOrderBy|0; + $selFlags = $selFlags|0; + $pLimit = $pLimit|0; + $pOffset = $pOffset|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $db = 0, $pNew = 0, $standin = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $0 = sp + 112|0; + $1 = sp + 108|0; + $2 = sp + 104|0; + $3 = sp + 100|0; + $4 = sp + 96|0; + $5 = sp + 92|0; + $6 = sp + 88|0; + $7 = sp + 116|0; + $8 = sp + 80|0; + $9 = sp + 76|0; + $pNew = sp + 72|0; + $standin = sp; + $db = sp + 84|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pEList; + HEAP32[$2>>2] = $pSrc; + HEAP32[$3>>2] = $pWhere; + HEAP32[$4>>2] = $pGroupBy; + HEAP32[$5>>2] = $pHaving; + HEAP32[$6>>2] = $pOrderBy; + HEAP16[$7>>1] = $selFlags; + HEAP32[$8>>2] = $pLimit; + HEAP32[$9>>2] = $pOffset; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$10>>2]|0; + HEAP32[$db>>2] = $11; + $12 = HEAP32[$db>>2]|0; + $13 = (_sqlite3DbMallocZero($12,72)|0); + HEAP32[$pNew>>2] = $13; + $14 = HEAP32[$pNew>>2]|0; + $15 = ($14|0)==(0|0); + if ($15) { + HEAP32[$pNew>>2] = $standin; + $16 = HEAP32[$pNew>>2]|0; + dest=$16+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + } + $17 = HEAP32[$1>>2]|0; + $18 = ($17|0)==(0|0); + if ($18) { + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$db>>2]|0; + $21 = (_sqlite3Expr($20,116,0)|0); + $22 = (_sqlite3ExprListAppend($19,0,$21)|0); + HEAP32[$1>>2] = $22; + } + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$pNew>>2]|0; + HEAP32[$24>>2] = $23; + $25 = HEAP32[$2>>2]|0; + $26 = ($25|0)==(0|0); + if ($26) { + $27 = HEAP32[$db>>2]|0; + $28 = (_sqlite3DbMallocZero($27,80)|0); + HEAP32[$2>>2] = $28; + } + $29 = HEAP32[$2>>2]|0; + $30 = HEAP32[$pNew>>2]|0; + $31 = (($30) + 32|0); + HEAP32[$31>>2] = $29; + $32 = HEAP32[$3>>2]|0; + $33 = HEAP32[$pNew>>2]|0; + $34 = (($33) + 36|0); + HEAP32[$34>>2] = $32; + $35 = HEAP32[$4>>2]|0; + $36 = HEAP32[$pNew>>2]|0; + $37 = (($36) + 40|0); + HEAP32[$37>>2] = $35; + $38 = HEAP32[$5>>2]|0; + $39 = HEAP32[$pNew>>2]|0; + $40 = (($39) + 44|0); + HEAP32[$40>>2] = $38; + $41 = HEAP32[$6>>2]|0; + $42 = HEAP32[$pNew>>2]|0; + $43 = (($42) + 48|0); + HEAP32[$43>>2] = $41; + $44 = HEAP16[$7>>1]|0; + $45 = HEAP32[$pNew>>2]|0; + $46 = (($45) + 6|0); + HEAP16[$46>>1] = $44; + $47 = HEAP32[$pNew>>2]|0; + $48 = (($47) + 4|0); + HEAP8[$48>>0] = 119; + $49 = HEAP32[$8>>2]|0; + $50 = HEAP32[$pNew>>2]|0; + $51 = (($50) + 60|0); + HEAP32[$51>>2] = $49; + $52 = HEAP32[$9>>2]|0; + $53 = HEAP32[$pNew>>2]|0; + $54 = (($53) + 64|0); + HEAP32[$54>>2] = $52; + $55 = HEAP32[$pNew>>2]|0; + $56 = (($55) + 16|0); + HEAP32[$56>>2] = -1; + $57 = HEAP32[$pNew>>2]|0; + $58 = (($57) + 16|0); + $59 = (($58) + 4|0); + HEAP32[$59>>2] = -1; + $60 = HEAP32[$db>>2]|0; + $61 = (($60) + 64|0); + $62 = HEAP8[$61>>0]|0; + $63 = ($62<<24>>24)!=(0); + if (!($63)) { + $70 = HEAP32[$pNew>>2]|0; + STACKTOP = sp;return ($70|0); + } + $64 = HEAP32[$db>>2]|0; + $65 = HEAP32[$pNew>>2]|0; + _clearSelect($64,$65); + $66 = HEAP32[$pNew>>2]|0; + $67 = ($66|0)!=($standin|0); + if ($67) { + $68 = HEAP32[$db>>2]|0; + $69 = HEAP32[$pNew>>2]|0; + _sqlite3DbFree($68,$69); + } + HEAP32[$pNew>>2] = 0; + $70 = HEAP32[$pNew>>2]|0; + STACKTOP = sp;return ($70|0); +} +function _sqlite3ExprListAppend($pParse,$pList,$pExpr) { + $pParse = $pParse|0; + $pList = $pList|0; + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $db = 0, $pItem = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $db = sp + 12|0; + $a = sp + 16|0; + $pItem = sp + 20|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pList; + HEAP32[$3>>2] = $pExpr; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = ($6|0)==(0|0); + if ($7) { + $8 = HEAP32[$db>>2]|0; + $9 = (_sqlite3DbMallocZero($8,8)|0); + HEAP32[$2>>2] = $9; + $10 = HEAP32[$2>>2]|0; + $11 = ($10|0)==(0|0); + if ($11) { + label = 8; + } else { + $12 = HEAP32[$db>>2]|0; + $13 = (_sqlite3DbMallocRaw($12,20)|0); + $14 = HEAP32[$2>>2]|0; + $15 = (($14) + 4|0); + HEAP32[$15>>2] = $13; + $16 = HEAP32[$2>>2]|0; + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($18|0)==(0|0); + if ($19) { + label = 8; + } else { + label = 7; + } + } + } else { + $20 = HEAP32[$2>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$2>>2]|0; + $23 = HEAP32[$22>>2]|0; + $24 = (($23) - 1)|0; + $25 = $21 & $24; + $26 = ($25|0)==(0); + if ($26) { + $27 = HEAP32[$db>>2]|0; + $28 = HEAP32[$2>>2]|0; + $29 = (($28) + 4|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$2>>2]|0; + $32 = HEAP32[$31>>2]|0; + $33 = $32<<1; + $34 = ($33*20)|0; + $35 = (_sqlite3DbRealloc($27,$30,$34)|0); + HEAP32[$a>>2] = $35; + $36 = HEAP32[$a>>2]|0; + $37 = ($36|0)==(0|0); + if ($37) { + label = 8; + } else { + $38 = HEAP32[$a>>2]|0; + $39 = HEAP32[$2>>2]|0; + $40 = (($39) + 4|0); + HEAP32[$40>>2] = $38; + label = 7; + } + } else { + label = 7; + } + } + if ((label|0) == 7) { + $41 = HEAP32[$2>>2]|0; + $42 = HEAP32[$41>>2]|0; + $43 = (($42) + 1)|0; + HEAP32[$41>>2] = $43; + $44 = HEAP32[$2>>2]|0; + $45 = (($44) + 4|0); + $46 = HEAP32[$45>>2]|0; + $47 = (($46) + (($42*20)|0)|0); + HEAP32[$pItem>>2] = $47; + $48 = HEAP32[$pItem>>2]|0; + ;HEAP32[$48+0>>2]=0|0;HEAP32[$48+4>>2]=0|0;HEAP32[$48+8>>2]=0|0;HEAP32[$48+12>>2]=0|0;HEAP32[$48+16>>2]=0|0; + $49 = HEAP32[$3>>2]|0; + $50 = HEAP32[$pItem>>2]|0; + HEAP32[$50>>2] = $49; + $51 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $51; + $56 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($56|0); + } + else if ((label|0) == 8) { + $52 = HEAP32[$db>>2]|0; + $53 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($52,$53); + $54 = HEAP32[$db>>2]|0; + $55 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($54,$55); + HEAP32[$0>>2] = 0; + $56 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($56|0); + } + return 0|0; +} +function _sqlite3ExprListSetName($pParse,$pList,$pName,$dequote) { + $pParse = $pParse|0; + $pList = $pList|0; + $pName = $pName|0; + $dequote = $dequote|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pItem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pItem = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pList; + HEAP32[$2>>2] = $pName; + HEAP32[$3>>2] = $dequote; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = (($7) - 1)|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 4|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + (($8*20)|0)|0); + HEAP32[$pItem>>2] = $12; + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = (_sqlite3DbStrNDup($14,$16,$19)|0); + $21 = HEAP32[$pItem>>2]|0; + $22 = (($21) + 4|0); + HEAP32[$22>>2] = $20; + $23 = HEAP32[$3>>2]|0; + $24 = ($23|0)!=(0); + if (!($24)) { + STACKTOP = sp;return; + } + $25 = HEAP32[$pItem>>2]|0; + $26 = (($25) + 4|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)!=(0|0); + if (!($28)) { + STACKTOP = sp;return; + } + $29 = HEAP32[$pItem>>2]|0; + $30 = (($29) + 4|0); + $31 = HEAP32[$30>>2]|0; + (_sqlite3Dequote($31)|0); + STACKTOP = sp;return; +} +function _sqlite3ExprListSetSpan($pParse,$pList,$pSpan) { + $pParse = $pParse|0; + $pList = $pList|0; + $pSpan = $pSpan|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $pItem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $db = sp + 8|0; + $pItem = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pList; + HEAP32[$2>>2] = $pSpan; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + $5 = HEAP32[$1>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = (($8) - 1)|0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + (($9*20)|0)|0); + HEAP32[$pItem>>2] = $13; + $14 = HEAP32[$db>>2]|0; + $15 = HEAP32[$pItem>>2]|0; + $16 = (($15) + 8|0); + $17 = HEAP32[$16>>2]|0; + _sqlite3DbFree($14,$17); + $18 = HEAP32[$db>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$2>>2]|0; + $23 = (($22) + 8|0); + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 4|0); + $27 = HEAP32[$26>>2]|0; + $28 = $24; + $29 = $27; + $30 = (($28) - ($29))|0; + $31 = (_sqlite3DbStrNDup($18,$21,$30)|0); + $32 = HEAP32[$pItem>>2]|0; + $33 = (($32) + 8|0); + HEAP32[$33>>2] = $31; + STACKTOP = sp;return; +} +function _sqlite3Expr($db,$op,$zToken) { + $db = $db|0; + $op = $op|0; + $zToken = $zToken|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $x = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $op; + HEAP32[$2>>2] = $zToken; + $3 = HEAP32[$2>>2]|0; + HEAP32[$x>>2] = $3; + $4 = HEAP32[$2>>2]|0; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = HEAP32[$2>>2]|0; + $7 = (_sqlite3Strlen30($6)|0); + $9 = $7; + } else { + $9 = 0; + } + $8 = (($x) + 4|0); + HEAP32[$8>>2] = $9; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = (_sqlite3ExprAlloc($10,$11,$x,0)|0); + STACKTOP = sp;return ($12|0); +} +function _sqlite3SrcListShiftJoinType($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $i = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + STACKTOP = sp;return; + } + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (($4) - 1)|0; + HEAP32[$i>>2] = $5; + while(1) { + $6 = HEAP32[$i>>2]|0; + $7 = ($6|0)>(0); + if (!($7)) { + break; + } + $8 = HEAP32[$i>>2]|0; + $9 = (($8) - 1)|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 8|0); + $12 = (($11) + (($9*72)|0)|0); + $13 = (($12) + 36|0); + $14 = HEAP8[$13>>0]|0; + $15 = HEAP32[$i>>2]|0; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 8|0); + $18 = (($17) + (($15*72)|0)|0); + $19 = (($18) + 36|0); + HEAP8[$19>>0] = $14; + $20 = HEAP32[$i>>2]|0; + $21 = (($20) + -1)|0; + HEAP32[$i>>2] = $21; + } + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 8|0); + $24 = (($23) + 36|0); + HEAP8[$24>>0] = 0; + STACKTOP = sp;return; +} +function _sqlite3SrcListIndexedBy($pParse,$p,$pIndexedBy) { + $pParse = $pParse|0; + $p = $p|0; + $pIndexedBy = $pIndexedBy|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pItem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pItem = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pIndexedBy; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)>(0); + if (!($7)) { + STACKTOP = sp;return; + } + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = (($9) - 1)|0; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 8|0); + $13 = (($12) + (($10*72)|0)|0); + HEAP32[$pItem>>2] = $13; + $14 = HEAP32[$2>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)==(1); + if ($17) { + $18 = HEAP32[$2>>2]|0; + $19 = HEAP32[$18>>2]|0; + $20 = ($19|0)!=(0|0); + if (!($20)) { + $21 = HEAP32[$pItem>>2]|0; + $22 = (($21) + 37|0); + $23 = HEAP8[$22>>0]|0; + $24 = $23 & -2; + $25 = $24 | 1; + HEAP8[$22>>0] = $25; + STACKTOP = sp;return; + } + } + $26 = HEAP32[$0>>2]|0; + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$2>>2]|0; + $29 = (_sqlite3NameFromToken($27,$28)|0); + $30 = HEAP32[$pItem>>2]|0; + $31 = (($30) + 64|0); + HEAP32[$31>>2] = $29; + STACKTOP = sp;return; +} +function _sqlite3SrcListAppend($db,$pList,$pTable,$pDatabase) { + $db = $db|0; + $pList = $pList|0; + $pTable = $pTable|0; + $pDatabase = $pDatabase|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pItem = 0, $pTemp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $pItem = sp + 16|0; + $pTemp = sp + 20|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pList; + HEAP32[$3>>2] = $pTable; + HEAP32[$4>>2] = $pDatabase; + $5 = HEAP32[$2>>2]|0; + $6 = ($5|0)==(0|0); + do { + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = (_sqlite3DbMallocZero($7,80)|0); + HEAP32[$2>>2] = $8; + $9 = HEAP32[$2>>2]|0; + $10 = ($9|0)==(0|0); + if (!($10)) { + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 4|0); + HEAP32[$12>>2] = 1; + break; + } + HEAP32[$0>>2] = 0; + $51 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($51|0); + } + } while(0); + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = (_sqlite3SrcListEnlarge($13,$14,1,$16)|0); + HEAP32[$2>>2] = $17; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 64|0); + $20 = HEAP8[$19>>0]|0; + $21 = ($20<<24>>24)!=(0); + if ($21) { + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$2>>2]|0; + _sqlite3SrcListDelete($22,$23); + HEAP32[$0>>2] = 0; + $51 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($51|0); + } + $24 = HEAP32[$2>>2]|0; + $25 = HEAP32[$24>>2]|0; + $26 = (($25) - 1)|0; + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 8|0); + $29 = (($28) + (($26*72)|0)|0); + HEAP32[$pItem>>2] = $29; + $30 = HEAP32[$4>>2]|0; + $31 = ($30|0)!=(0|0); + if ($31) { + $32 = HEAP32[$4>>2]|0; + $33 = HEAP32[$32>>2]|0; + $34 = ($33|0)==(0|0); + if ($34) { + HEAP32[$4>>2] = 0; + } + } + $35 = HEAP32[$4>>2]|0; + $36 = ($35|0)!=(0|0); + if ($36) { + $37 = HEAP32[$4>>2]|0; + HEAP32[$pTemp>>2] = $37; + $38 = HEAP32[$3>>2]|0; + HEAP32[$4>>2] = $38; + $39 = HEAP32[$pTemp>>2]|0; + HEAP32[$3>>2] = $39; + } + $40 = HEAP32[$1>>2]|0; + $41 = HEAP32[$3>>2]|0; + $42 = (_sqlite3NameFromToken($40,$41)|0); + $43 = HEAP32[$pItem>>2]|0; + $44 = (($43) + 8|0); + HEAP32[$44>>2] = $42; + $45 = HEAP32[$1>>2]|0; + $46 = HEAP32[$4>>2]|0; + $47 = (_sqlite3NameFromToken($45,$46)|0); + $48 = HEAP32[$pItem>>2]|0; + $49 = (($48) + 4|0); + HEAP32[$49>>2] = $47; + $50 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $50; + $51 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($51|0); +} +function _sqlite3JoinType($pParse,$pA,$pB,$pC) { + $pParse = $pParse|0; + $pA = $pA|0; + $pB = $pB|0; + $pC = $pC|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $8 = 0, $9 = 0, $apAll = 0; + var $i = 0, $j = 0, $jointype = 0, $p = 0, $vararg_buffer4 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $zSp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer4 = sp; + $0 = sp + 56|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $3 = sp + 44|0; + $jointype = sp + 60|0; + $apAll = sp + 24|0; + $p = sp + 20|0; + $i = sp + 16|0; + $j = sp + 36|0; + $zSp = sp + 40|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pA; + HEAP32[$2>>2] = $pB; + HEAP32[$3>>2] = $pC; + HEAP32[$jointype>>2] = 0; + $4 = HEAP32[$1>>2]|0; + HEAP32[$apAll>>2] = $4; + $5 = HEAP32[$2>>2]|0; + $6 = (($apAll) + 4|0); + HEAP32[$6>>2] = $5; + $7 = HEAP32[$3>>2]|0; + $8 = (($apAll) + 8|0); + HEAP32[$8>>2] = $7; + HEAP32[$i>>2] = 0; + while(1) { + $9 = HEAP32[$i>>2]|0; + $10 = ($9|0)<(3); + if (!($10)) { + break; + } + $11 = HEAP32[$i>>2]|0; + $12 = (($apAll) + ($11<<2)|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(0|0); + if (!($14)) { + break; + } + $15 = HEAP32[$i>>2]|0; + $16 = (($apAll) + ($15<<2)|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$p>>2] = $17; + HEAP32[$j>>2] = 0; + while(1) { + $18 = HEAP32[$j>>2]|0; + $19 = ($18|0)<(7); + if (!($19)) { + break; + } + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 4|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$j>>2]|0; + $24 = (31080 + (($23*3)|0)|0); + $25 = (($24) + 1|0); + $26 = HEAP8[$25>>0]|0; + $27 = $26&255; + $28 = ($22|0)==($27|0); + if ($28) { + $29 = HEAP32[$p>>2]|0; + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$j>>2]|0; + $32 = (31080 + (($31*3)|0)|0); + $33 = HEAP8[$32>>0]|0; + $34 = $33&255; + $35 = (31040 + ($34)|0); + $36 = HEAP32[$p>>2]|0; + $37 = (($36) + 4|0); + $38 = HEAP32[$37>>2]|0; + $39 = (_sqlite3_strnicmp($30,$35,$38)|0); + $40 = ($39|0)==(0); + if ($40) { + label = 8; + break; + } + } + $48 = HEAP32[$j>>2]|0; + $49 = (($48) + 1)|0; + HEAP32[$j>>2] = $49; + } + if ((label|0) == 8) { + label = 0; + $41 = HEAP32[$j>>2]|0; + $42 = (31080 + (($41*3)|0)|0); + $43 = (($42) + 2|0); + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = HEAP32[$jointype>>2]|0; + $47 = $46 | $45; + HEAP32[$jointype>>2] = $47; + } + $50 = HEAP32[$j>>2]|0; + $51 = ($50|0)>=(7); + if ($51) { + label = 11; + break; + } + $54 = HEAP32[$i>>2]|0; + $55 = (($54) + 1)|0; + HEAP32[$i>>2] = $55; + } + if ((label|0) == 11) { + $52 = HEAP32[$jointype>>2]|0; + $53 = $52 | 64; + HEAP32[$jointype>>2] = $53; + } + $56 = HEAP32[$jointype>>2]|0; + $57 = $56 & 33; + $58 = ($57|0)==(33); + if (!($58)) { + $59 = HEAP32[$jointype>>2]|0; + $60 = $59 & 64; + $61 = ($60|0)!=(0); + if (!($61)) { + $71 = HEAP32[$jointype>>2]|0; + $72 = $71 & 32; + $73 = ($72|0)!=(0); + if (!($73)) { + $78 = HEAP32[$jointype>>2]|0; + STACKTOP = sp;return ($78|0); + } + $74 = HEAP32[$jointype>>2]|0; + $75 = $74 & 24; + $76 = ($75|0)!=(8); + if (!($76)) { + $78 = HEAP32[$jointype>>2]|0; + STACKTOP = sp;return ($78|0); + } + $77 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($77,31152,$vararg_buffer4); + HEAP32[$jointype>>2] = 1; + $78 = HEAP32[$jointype>>2]|0; + STACKTOP = sp;return ($78|0); + } + } + HEAP32[$zSp>>2] = 16448; + $62 = HEAP32[$3>>2]|0; + $63 = ($62|0)==(0|0); + if ($63) { + $64 = HEAP32[$zSp>>2]|0; + $65 = (($64) + 1|0); + HEAP32[$zSp>>2] = $65; + } + $66 = HEAP32[$0>>2]|0; + $67 = HEAP32[$1>>2]|0; + $68 = HEAP32[$2>>2]|0; + $69 = HEAP32[$zSp>>2]|0; + $70 = HEAP32[$3>>2]|0; + HEAP32[$vararg_buffer4>>2] = $67; + $vararg_ptr1 = (($vararg_buffer4) + 4|0); + HEAP32[$vararg_ptr1>>2] = $68; + $vararg_ptr2 = (($vararg_buffer4) + 8|0); + HEAP32[$vararg_ptr2>>2] = $69; + $vararg_ptr3 = (($vararg_buffer4) + 12|0); + HEAP32[$vararg_ptr3>>2] = $70; + _sqlite3ErrorMsg($66,31104,$vararg_buffer4); + HEAP32[$jointype>>2] = 1; + $78 = HEAP32[$jointype>>2]|0; + STACKTOP = sp;return ($78|0); +} +function _sqlite3WithPush($pParse,$pWith,$bFree) { + $pParse = $pParse|0; + $pWith = $pWith|0; + $bFree = $bFree|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + $2 = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pWith; + HEAP8[$2>>0] = $bFree; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 532|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 4|0); + HEAP32[$9>>2] = $7; + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 532|0); + HEAP32[$12>>2] = $10; + $13 = HEAP8[$2>>0]|0; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 449|0); + HEAP8[$15>>0] = $13; + STACKTOP = sp;return; +} +function _sqlite3DeleteFrom($pParse,$pTabList,$pWhere) { + $pParse = $pParse|0; + $pTabList = $pTabList|0; + $pWhere = $pWhere|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aToOpen = 0, $addrBypass = 0, $addrDelete = 0, $addrEphOpen = 0, $addrLoop = 0, $aiCurOnePass = 0, $count = 0, $db = 0, $i = 0; + var $iDataCur = 0, $iDb = 0, $iEphCur = 0, $iIdxCur = 0, $iKey = 0, $iPk = 0, $iRowSet = 0, $iTabCur = 0, $isView = 0, $memCnt = 0, $nIdx = 0, $nKey = 0, $nPk = 0, $okOnePass = 0, $pIdx = 0, $pPk = 0, $pTab = 0, $pTrigger = 0, $pVTab = 0, $pWInfo = 0; + var $rcauth = 0, $sContext = 0, $sNC = 0, $v = 0, $zDb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 192|0; + $0 = sp + 152|0; + $1 = sp + 132|0; + $2 = sp + 136|0; + $v = sp + 140|0; + $pTab = sp + 144|0; + $zDb = sp + 148|0; + $i = sp + 156|0; + $pWInfo = sp + 160|0; + $pIdx = sp + 164|0; + $iTabCur = sp + 168|0; + $iDataCur = sp + 172|0; + $iIdxCur = sp + 128|0; + $nIdx = sp + 124|0; + $db = sp + 120|0; + $sContext = sp + 112|0; + $sNC = sp + 80|0; + $iDb = sp + 76|0; + $memCnt = sp + 32|0; + $rcauth = sp; + $okOnePass = sp + 4|0; + $aiCurOnePass = sp + 8|0; + $aToOpen = sp + 16|0; + $pPk = sp + 20|0; + $iPk = sp + 24|0; + $nPk = sp + 176|0; + $iKey = sp + 28|0; + $nKey = sp + 178|0; + $iEphCur = sp + 36|0; + $iRowSet = sp + 40|0; + $addrBypass = sp + 44|0; + $addrLoop = sp + 48|0; + $addrDelete = sp + 52|0; + $addrEphOpen = sp + 56|0; + $isView = sp + 60|0; + $pTrigger = sp + 64|0; + $pVTab = sp + 68|0; + $count = sp + 72|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTabList; + HEAP32[$2>>2] = $pWhere; + HEAP32[$memCnt>>2] = -1; + HEAP32[$aToOpen>>2] = 0; + HEAP32[$iPk>>2] = 0; + HEAP16[$nPk>>1] = 1; + HEAP32[$iEphCur>>2] = 0; + HEAP32[$iRowSet>>2] = 0; + HEAP32[$addrBypass>>2] = 0; + HEAP32[$addrLoop>>2] = 0; + HEAP32[$addrDelete>>2] = 0; + HEAP32[$addrEphOpen>>2] = 0; + ;HEAP32[$sContext+0>>2]=0|0;HEAP32[$sContext+4>>2]=0|0; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 64|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0); + L1: do { + if (!($8)) { + $9 = HEAP32[$db>>2]|0; + $10 = (($9) + 64|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = ($12|0)!=(0); + if (!($13)) { + $14 = HEAP32[$0>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (_sqlite3SrcListLookup($14,$15)|0); + HEAP32[$pTab>>2] = $16; + $17 = HEAP32[$pTab>>2]|0; + $18 = ($17|0)==(0|0); + if (!($18)) { + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$pTab>>2]|0; + $21 = (_sqlite3TriggersExist($19,$20,109,0,0)|0); + HEAP32[$pTrigger>>2] = $21; + $22 = HEAP32[$pTab>>2]|0; + $23 = (($22) + 12|0); + $24 = HEAP32[$23>>2]|0; + $25 = ($24|0)!=(0|0); + $26 = $25&1; + HEAP32[$isView>>2] = $26; + $27 = HEAP32[$0>>2]|0; + $28 = HEAP32[$pTab>>2]|0; + $29 = (_sqlite3ViewGetColumnNames($27,$28)|0); + $30 = ($29|0)!=(0); + if (!($30)) { + $31 = HEAP32[$0>>2]|0; + $32 = HEAP32[$pTab>>2]|0; + $33 = HEAP32[$pTrigger>>2]|0; + $34 = ($33|0)!=(0|0); + $35 = $34 ? 1 : 0; + $36 = (_sqlite3IsReadOnly($31,$32,$35)|0); + $37 = ($36|0)!=(0); + if (!($37)) { + $38 = HEAP32[$db>>2]|0; + $39 = HEAP32[$pTab>>2]|0; + $40 = (($39) + 68|0); + $41 = HEAP32[$40>>2]|0; + $42 = (_sqlite3SchemaToIndex($38,$41)|0); + HEAP32[$iDb>>2] = $42; + $43 = HEAP32[$iDb>>2]|0; + $44 = HEAP32[$db>>2]|0; + $45 = (($44) + 16|0); + $46 = HEAP32[$45>>2]|0; + $47 = (($46) + ($43<<4)|0); + $48 = HEAP32[$47>>2]|0; + HEAP32[$zDb>>2] = $48; + $49 = HEAP32[$0>>2]|0; + $50 = HEAP32[$pTab>>2]|0; + $51 = HEAP32[$50>>2]|0; + $52 = HEAP32[$zDb>>2]|0; + $53 = (_sqlite3AuthCheck($49,9,$51,0,$52)|0); + HEAP32[$rcauth>>2] = $53; + $54 = HEAP32[$rcauth>>2]|0; + $55 = ($54|0)==(1); + if (!($55)) { + $56 = HEAP32[$0>>2]|0; + $57 = (($56) + 68|0); + $58 = HEAP32[$57>>2]|0; + $59 = (($58) + 1)|0; + HEAP32[$57>>2] = $59; + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 8|0); + $62 = (($61) + 40|0); + HEAP32[$62>>2] = $58; + HEAP32[$iTabCur>>2] = $58; + HEAP32[$nIdx>>2] = 0; + $63 = HEAP32[$pTab>>2]|0; + $64 = (($63) + 8|0); + $65 = HEAP32[$64>>2]|0; + HEAP32[$pIdx>>2] = $65; + while(1) { + $66 = HEAP32[$pIdx>>2]|0; + $67 = ($66|0)!=(0|0); + if (!($67)) { + break; + } + $68 = HEAP32[$0>>2]|0; + $69 = (($68) + 68|0); + $70 = HEAP32[$69>>2]|0; + $71 = (($70) + 1)|0; + HEAP32[$69>>2] = $71; + $72 = HEAP32[$pIdx>>2]|0; + $73 = (($72) + 20|0); + $74 = HEAP32[$73>>2]|0; + HEAP32[$pIdx>>2] = $74; + $75 = HEAP32[$nIdx>>2]|0; + $76 = (($75) + 1)|0; + HEAP32[$nIdx>>2] = $76; + } + $77 = HEAP32[$isView>>2]|0; + $78 = ($77|0)!=(0); + if ($78) { + $79 = HEAP32[$0>>2]|0; + $80 = HEAP32[$pTab>>2]|0; + $81 = HEAP32[$80>>2]|0; + _sqlite3AuthContextPush($79,$sContext,$81); + } + $82 = HEAP32[$0>>2]|0; + $83 = (_sqlite3GetVdbe($82)|0); + HEAP32[$v>>2] = $83; + $84 = HEAP32[$v>>2]|0; + $85 = ($84|0)==(0|0); + if (!($85)) { + $86 = HEAP32[$0>>2]|0; + $87 = (($86) + 18|0); + $88 = HEAP8[$87>>0]|0; + $89 = $88&255; + $90 = ($89|0)==(0); + if ($90) { + $91 = HEAP32[$v>>2]|0; + _sqlite3VdbeCountChanges($91); + } + $92 = HEAP32[$0>>2]|0; + $93 = HEAP32[$iDb>>2]|0; + _sqlite3BeginWriteOperation($92,1,$93); + $94 = HEAP32[$isView>>2]|0; + $95 = ($94|0)!=(0); + if ($95) { + $96 = HEAP32[$0>>2]|0; + $97 = HEAP32[$pTab>>2]|0; + $98 = HEAP32[$2>>2]|0; + $99 = HEAP32[$iTabCur>>2]|0; + _sqlite3MaterializeView($96,$97,$98,$99); + $100 = HEAP32[$iTabCur>>2]|0; + HEAP32[$iIdxCur>>2] = $100; + HEAP32[$iDataCur>>2] = $100; + } + ;HEAP32[$sNC+0>>2]=0|0;HEAP32[$sNC+4>>2]=0|0;HEAP32[$sNC+8>>2]=0|0;HEAP32[$sNC+12>>2]=0|0;HEAP32[$sNC+16>>2]=0|0;HEAP32[$sNC+20>>2]=0|0;HEAP32[$sNC+24>>2]=0|0;HEAP32[$sNC+28>>2]=0|0; + $101 = HEAP32[$0>>2]|0; + HEAP32[$sNC>>2] = $101; + $102 = HEAP32[$1>>2]|0; + $103 = (($sNC) + 4|0); + HEAP32[$103>>2] = $102; + $104 = HEAP32[$2>>2]|0; + $105 = (_sqlite3ResolveExprNames($sNC,$104)|0); + $106 = ($105|0)!=(0); + if (!($106)) { + $107 = HEAP32[$db>>2]|0; + $108 = (($107) + 24|0); + $109 = HEAP32[$108>>2]|0; + $110 = $109 & 128; + $111 = ($110|0)!=(0); + if ($111) { + $112 = HEAP32[$0>>2]|0; + $113 = (($112) + 72|0); + $114 = HEAP32[$113>>2]|0; + $115 = (($114) + 1)|0; + HEAP32[$113>>2] = $115; + HEAP32[$memCnt>>2] = $115; + $116 = HEAP32[$v>>2]|0; + $117 = HEAP32[$memCnt>>2]|0; + (_sqlite3VdbeAddOp2($116,25,0,$117)|0); + } + $118 = HEAP32[$rcauth>>2]|0; + $119 = ($118|0)==(0); + L26: do { + if ($119) { + $120 = HEAP32[$2>>2]|0; + $121 = ($120|0)==(0|0); + if ($121) { + $122 = HEAP32[$pTrigger>>2]|0; + $123 = ($122|0)!=(0|0); + if ($123) { + label = 30; + } else { + $124 = HEAP32[$pTab>>2]|0; + $125 = (($124) + 44|0); + $126 = HEAP8[$125>>0]|0; + $127 = $126&255; + $128 = $127 & 16; + $129 = ($128|0)!=(0); + if ($129) { + label = 30; + } else { + $130 = HEAP32[$0>>2]|0; + $131 = HEAP32[$pTab>>2]|0; + $132 = (_sqlite3FkRequired($130,$131,0,0)|0); + $133 = (0)==($132|0); + if ($133) { + $134 = HEAP32[$0>>2]|0; + $135 = HEAP32[$iDb>>2]|0; + $136 = HEAP32[$pTab>>2]|0; + $137 = (($136) + 32|0); + $138 = HEAP32[$137>>2]|0; + $139 = HEAP32[$pTab>>2]|0; + $140 = HEAP32[$139>>2]|0; + _sqlite3TableLock($134,$135,$138,1,$140); + $141 = HEAP32[$pTab>>2]|0; + $142 = (($141) + 44|0); + $143 = HEAP8[$142>>0]|0; + $144 = $143&255; + $145 = $144 & 32; + $146 = ($145|0)==(0); + if ($146) { + $147 = HEAP32[$v>>2]|0; + $148 = HEAP32[$pTab>>2]|0; + $149 = (($148) + 32|0); + $150 = HEAP32[$149>>2]|0; + $151 = HEAP32[$iDb>>2]|0; + $152 = HEAP32[$memCnt>>2]|0; + $153 = HEAP32[$pTab>>2]|0; + $154 = HEAP32[$153>>2]|0; + (_sqlite3VdbeAddOp4($147,115,$150,$151,$152,$154,-2)|0); + } + $155 = HEAP32[$pTab>>2]|0; + $156 = (($155) + 8|0); + $157 = HEAP32[$156>>2]|0; + HEAP32[$pIdx>>2] = $157; + while(1) { + $158 = HEAP32[$pIdx>>2]|0; + $159 = ($158|0)!=(0|0); + if (!($159)) { + break L26; + } + $160 = HEAP32[$v>>2]|0; + $161 = HEAP32[$pIdx>>2]|0; + $162 = (($161) + 44|0); + $163 = HEAP32[$162>>2]|0; + $164 = HEAP32[$iDb>>2]|0; + (_sqlite3VdbeAddOp2($160,115,$163,$164)|0); + $165 = HEAP32[$pIdx>>2]|0; + $166 = (($165) + 20|0); + $167 = HEAP32[$166>>2]|0; + HEAP32[$pIdx>>2] = $167; + } + } else { + label = 30; + } + } + } + } else { + label = 30; + } + } else { + label = 30; + } + } while(0); + L38: do { + if ((label|0) == 30) { + $168 = HEAP32[$pTab>>2]|0; + $169 = (($168) + 44|0); + $170 = HEAP8[$169>>0]|0; + $171 = $170&255; + $172 = $171 & 32; + $173 = ($172|0)==(0); + if ($173) { + HEAP32[$pPk>>2] = 0; + HEAP16[$nPk>>1] = 1; + $174 = HEAP32[$0>>2]|0; + $175 = (($174) + 72|0); + $176 = HEAP32[$175>>2]|0; + $177 = (($176) + 1)|0; + HEAP32[$175>>2] = $177; + HEAP32[$iRowSet>>2] = $177; + $178 = HEAP32[$v>>2]|0; + $179 = HEAP32[$iRowSet>>2]|0; + (_sqlite3VdbeAddOp2($178,28,0,$179)|0); + } else { + $180 = HEAP32[$pTab>>2]|0; + $181 = (_sqlite3PrimaryKeyIndex($180)|0); + HEAP32[$pPk>>2] = $181; + $182 = HEAP32[$pPk>>2]|0; + $183 = (($182) + 50|0); + $184 = HEAP16[$183>>1]|0; + HEAP16[$nPk>>1] = $184; + $185 = HEAP32[$0>>2]|0; + $186 = (($185) + 72|0); + $187 = HEAP32[$186>>2]|0; + $188 = (($187) + 1)|0; + HEAP32[$iPk>>2] = $188; + $189 = HEAP16[$nPk>>1]|0; + $190 = $189 << 16 >> 16; + $191 = HEAP32[$0>>2]|0; + $192 = (($191) + 72|0); + $193 = HEAP32[$192>>2]|0; + $194 = (($193) + ($190))|0; + HEAP32[$192>>2] = $194; + $195 = HEAP32[$0>>2]|0; + $196 = (($195) + 68|0); + $197 = HEAP32[$196>>2]|0; + $198 = (($197) + 1)|0; + HEAP32[$196>>2] = $198; + HEAP32[$iEphCur>>2] = $197; + $199 = HEAP32[$v>>2]|0; + $200 = HEAP32[$iEphCur>>2]|0; + $201 = HEAP16[$nPk>>1]|0; + $202 = $201 << 16 >> 16; + $203 = (_sqlite3VdbeAddOp2($199,55,$200,$202)|0); + HEAP32[$addrEphOpen>>2] = $203; + $204 = HEAP32[$0>>2]|0; + $205 = HEAP32[$pPk>>2]|0; + _sqlite3VdbeSetP4KeyInfo($204,$205); + } + $206 = HEAP32[$0>>2]|0; + $207 = HEAP32[$1>>2]|0; + $208 = HEAP32[$2>>2]|0; + $209 = HEAP32[$iTabCur>>2]|0; + $210 = (($209) + 1)|0; + $211 = (_sqlite3WhereBegin($206,$207,$208,0,0,12,$210)|0); + HEAP32[$pWInfo>>2] = $211; + $212 = HEAP32[$pWInfo>>2]|0; + $213 = ($212|0)==(0|0); + if ($213) { + break L1; + } + $214 = HEAP32[$pWInfo>>2]|0; + $215 = (_sqlite3WhereOkOnePass($214,$aiCurOnePass)|0); + HEAP32[$okOnePass>>2] = $215; + $216 = HEAP32[$db>>2]|0; + $217 = (($216) + 24|0); + $218 = HEAP32[$217>>2]|0; + $219 = $218 & 128; + $220 = ($219|0)!=(0); + if ($220) { + $221 = HEAP32[$v>>2]|0; + $222 = HEAP32[$memCnt>>2]|0; + (_sqlite3VdbeAddOp2($221,37,$222,1)|0); + } + $223 = HEAP32[$pPk>>2]|0; + $224 = ($223|0)!=(0|0); + do { + if ($224) { + HEAP32[$i>>2] = 0; + while(1) { + $225 = HEAP32[$i>>2]|0; + $226 = HEAP16[$nPk>>1]|0; + $227 = $226 << 16 >> 16; + $228 = ($225|0)<($227|0); + if (!($228)) { + break; + } + $229 = HEAP32[$v>>2]|0; + $230 = HEAP32[$pTab>>2]|0; + $231 = HEAP32[$iTabCur>>2]|0; + $232 = HEAP32[$i>>2]|0; + $233 = HEAP32[$pPk>>2]|0; + $234 = (($233) + 4|0); + $235 = HEAP32[$234>>2]|0; + $236 = (($235) + ($232<<1)|0); + $237 = HEAP16[$236>>1]|0; + $238 = $237 << 16 >> 16; + $239 = HEAP32[$iPk>>2]|0; + $240 = HEAP32[$i>>2]|0; + $241 = (($239) + ($240))|0; + _sqlite3ExprCodeGetColumnOfTable($229,$230,$231,$238,$241); + $242 = HEAP32[$i>>2]|0; + $243 = (($242) + 1)|0; + HEAP32[$i>>2] = $243; + } + $244 = HEAP32[$iPk>>2]|0; + HEAP32[$iKey>>2] = $244; + } else { + $245 = HEAP32[$0>>2]|0; + $246 = (($245) + 72|0); + $247 = HEAP32[$246>>2]|0; + $248 = (($247) + 1)|0; + HEAP32[$iKey>>2] = $248; + $249 = HEAP32[$0>>2]|0; + $250 = HEAP32[$pTab>>2]|0; + $251 = HEAP32[$iTabCur>>2]|0; + $252 = HEAP32[$iKey>>2]|0; + $253 = (_sqlite3ExprCodeGetColumn($249,$250,-1,$251,$252,0)|0); + HEAP32[$iKey>>2] = $253; + $254 = HEAP32[$iKey>>2]|0; + $255 = HEAP32[$0>>2]|0; + $256 = (($255) + 72|0); + $257 = HEAP32[$256>>2]|0; + $258 = ($254|0)>($257|0); + if (!($258)) { + break; + } + $259 = HEAP32[$iKey>>2]|0; + $260 = HEAP32[$0>>2]|0; + $261 = (($260) + 72|0); + HEAP32[$261>>2] = $259; + } + } while(0); + $262 = HEAP32[$okOnePass>>2]|0; + $263 = ($262|0)!=(0); + do { + if ($263) { + $264 = HEAP16[$nPk>>1]|0; + HEAP16[$nKey>>1] = $264; + $265 = HEAP32[$db>>2]|0; + $266 = HEAP32[$nIdx>>2]|0; + $267 = (($266) + 2)|0; + $268 = (_sqlite3DbMallocRaw($265,$267)|0); + HEAP32[$aToOpen>>2] = $268; + $269 = HEAP32[$aToOpen>>2]|0; + $270 = ($269|0)==(0|0); + if ($270) { + $271 = HEAP32[$pWInfo>>2]|0; + _sqlite3WhereEnd($271); + break L1; + } + $272 = HEAP32[$aToOpen>>2]|0; + $273 = HEAP32[$nIdx>>2]|0; + $274 = (($273) + 1)|0; + _memset(($272|0),1,($274|0))|0; + $275 = HEAP32[$nIdx>>2]|0; + $276 = (($275) + 1)|0; + $277 = HEAP32[$aToOpen>>2]|0; + $278 = (($277) + ($276)|0); + HEAP8[$278>>0] = 0; + $279 = HEAP32[$aiCurOnePass>>2]|0; + $280 = ($279|0)>=(0); + if ($280) { + $281 = HEAP32[$aiCurOnePass>>2]|0; + $282 = HEAP32[$iTabCur>>2]|0; + $283 = (($281) - ($282))|0; + $284 = HEAP32[$aToOpen>>2]|0; + $285 = (($284) + ($283)|0); + HEAP8[$285>>0] = 0; + } + $286 = (($aiCurOnePass) + 4|0); + $287 = HEAP32[$286>>2]|0; + $288 = ($287|0)>=(0); + if ($288) { + $289 = (($aiCurOnePass) + 4|0); + $290 = HEAP32[$289>>2]|0; + $291 = HEAP32[$iTabCur>>2]|0; + $292 = (($290) - ($291))|0; + $293 = HEAP32[$aToOpen>>2]|0; + $294 = (($293) + ($292)|0); + HEAP8[$294>>0] = 0; + } + $295 = HEAP32[$addrEphOpen>>2]|0; + $296 = ($295|0)!=(0); + if ($296) { + $297 = HEAP32[$v>>2]|0; + $298 = HEAP32[$addrEphOpen>>2]|0; + _sqlite3VdbeChangeToNoop($297,$298); + } + $299 = HEAP32[$v>>2]|0; + $300 = (_sqlite3VdbeAddOp0($299,16)|0); + HEAP32[$addrDelete>>2] = $300; + } else { + $301 = HEAP32[$pPk>>2]|0; + $302 = ($301|0)!=(0|0); + if ($302) { + $303 = HEAP32[$0>>2]|0; + $304 = (($303) + 72|0); + $305 = HEAP32[$304>>2]|0; + $306 = (($305) + 1)|0; + HEAP32[$304>>2] = $306; + HEAP32[$iKey>>2] = $306; + HEAP16[$nKey>>1] = 0; + $307 = HEAP32[$v>>2]|0; + $308 = HEAP32[$iPk>>2]|0; + $309 = HEAP16[$nPk>>1]|0; + $310 = $309 << 16 >> 16; + $311 = HEAP32[$iKey>>2]|0; + $312 = HEAP32[$v>>2]|0; + $313 = HEAP32[$pPk>>2]|0; + $314 = (_sqlite3IndexAffinityStr($312,$313)|0); + $315 = HEAP16[$nPk>>1]|0; + $316 = $315 << 16 >> 16; + (_sqlite3VdbeAddOp4($307,48,$308,$310,$311,$314,$316)|0); + $317 = HEAP32[$v>>2]|0; + $318 = HEAP32[$iEphCur>>2]|0; + $319 = HEAP32[$iKey>>2]|0; + (_sqlite3VdbeAddOp2($317,107,$318,$319)|0); + break; + } else { + HEAP16[$nKey>>1] = 1; + $320 = HEAP32[$v>>2]|0; + $321 = HEAP32[$iRowSet>>2]|0; + $322 = HEAP32[$iKey>>2]|0; + (_sqlite3VdbeAddOp2($320,125,$321,$322)|0); + break; + } + } + } while(0); + $323 = HEAP32[$pWInfo>>2]|0; + _sqlite3WhereEnd($323); + $324 = HEAP32[$okOnePass>>2]|0; + $325 = ($324|0)!=(0); + if ($325) { + $326 = HEAP32[$v>>2]|0; + $327 = (_sqlite3VdbeMakeLabel($326)|0); + HEAP32[$addrBypass>>2] = $327; + $328 = HEAP32[$v>>2]|0; + $329 = HEAP32[$addrBypass>>2]|0; + (_sqlite3VdbeAddOp2($328,16,0,$329)|0); + $330 = HEAP32[$v>>2]|0; + $331 = HEAP32[$addrDelete>>2]|0; + _sqlite3VdbeJumpHere($330,$331); + } + $332 = HEAP32[$isView>>2]|0; + $333 = ($332|0)!=(0); + if (!($333)) { + $334 = HEAP32[$0>>2]|0; + $335 = HEAP32[$pTab>>2]|0; + $336 = HEAP32[$iTabCur>>2]|0; + $337 = HEAP32[$aToOpen>>2]|0; + (_sqlite3OpenTableAndIndices($334,$335,53,$336,$337,$iDataCur,$iIdxCur)|0); + } + $338 = HEAP32[$okOnePass>>2]|0; + $339 = ($338|0)!=(0); + do { + if ($339) { + $340 = HEAP32[$iDataCur>>2]|0; + $341 = HEAP32[$iTabCur>>2]|0; + $342 = (($340) - ($341))|0; + $343 = HEAP32[$aToOpen>>2]|0; + $344 = (($343) + ($342)|0); + $345 = HEAP8[$344>>0]|0; + $346 = ($345<<24>>24)!=(0); + if (!($346)) { + break; + } + $347 = HEAP32[$v>>2]|0; + $348 = HEAP32[$iDataCur>>2]|0; + $349 = HEAP32[$addrBypass>>2]|0; + $350 = HEAP32[$iKey>>2]|0; + $351 = HEAP16[$nKey>>1]|0; + $352 = $351 << 16 >> 16; + (_sqlite3VdbeAddOp4Int($347,65,$348,$349,$350,$352)|0); + } else { + $353 = HEAP32[$pPk>>2]|0; + $354 = ($353|0)!=(0|0); + $355 = HEAP32[$v>>2]|0; + if ($354) { + $356 = HEAP32[$iEphCur>>2]|0; + $357 = (_sqlite3VdbeAddOp1($355,105,$356)|0); + HEAP32[$addrLoop>>2] = $357; + $358 = HEAP32[$v>>2]|0; + $359 = HEAP32[$iEphCur>>2]|0; + $360 = HEAP32[$iKey>>2]|0; + (_sqlite3VdbeAddOp2($358,98,$359,$360)|0); + break; + } else { + $361 = HEAP32[$iRowSet>>2]|0; + $362 = HEAP32[$iKey>>2]|0; + $363 = (_sqlite3VdbeAddOp3($355,126,$361,0,$362)|0); + HEAP32[$addrLoop>>2] = $363; + break; + } + } + } while(0); + $364 = HEAP32[$pTab>>2]|0; + $365 = (($364) + 44|0); + $366 = HEAP8[$365>>0]|0; + $367 = $366&255; + $368 = $367 & 16; + $369 = ($368|0)!=(0); + if ($369) { + $370 = HEAP32[$db>>2]|0; + $371 = HEAP32[$pTab>>2]|0; + $372 = (_sqlite3GetVTable($370,$371)|0); + HEAP32[$pVTab>>2] = $372; + $373 = HEAP32[$0>>2]|0; + $374 = HEAP32[$pTab>>2]|0; + _sqlite3VtabMakeWritable($373,$374); + $375 = HEAP32[$v>>2]|0; + $376 = HEAP32[$iKey>>2]|0; + $377 = HEAP32[$pVTab>>2]|0; + (_sqlite3VdbeAddOp4($375,15,0,1,$376,$377,-10)|0); + $378 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($378,2); + $379 = HEAP32[$0>>2]|0; + _sqlite3MayAbort($379); + } else { + $380 = HEAP32[$0>>2]|0; + $381 = (($380) + 18|0); + $382 = HEAP8[$381>>0]|0; + $383 = $382&255; + $384 = ($383|0)==(0); + $385 = $384&1; + HEAP32[$count>>2] = $385; + $386 = HEAP32[$0>>2]|0; + $387 = HEAP32[$pTab>>2]|0; + $388 = HEAP32[$pTrigger>>2]|0; + $389 = HEAP32[$iDataCur>>2]|0; + $390 = HEAP32[$iIdxCur>>2]|0; + $391 = HEAP32[$iKey>>2]|0; + $392 = HEAP16[$nKey>>1]|0; + $393 = HEAP32[$count>>2]|0; + $394 = $393&255; + $395 = HEAP32[$okOnePass>>2]|0; + $396 = $395&255; + _sqlite3GenerateRowDelete($386,$387,$388,$389,$390,$391,$392,$394,10,$396); + } + $397 = HEAP32[$okOnePass>>2]|0; + $398 = ($397|0)!=(0); + do { + if ($398) { + $399 = HEAP32[$v>>2]|0; + $400 = HEAP32[$addrBypass>>2]|0; + _sqlite3VdbeResolveLabel($399,$400); + } else { + $401 = HEAP32[$pPk>>2]|0; + $402 = ($401|0)!=(0|0); + $403 = HEAP32[$v>>2]|0; + if ($402) { + $404 = HEAP32[$iEphCur>>2]|0; + $405 = HEAP32[$addrLoop>>2]|0; + $406 = (($405) + 1)|0; + (_sqlite3VdbeAddOp2($403,9,$404,$406)|0); + $407 = HEAP32[$v>>2]|0; + $408 = HEAP32[$addrLoop>>2]|0; + _sqlite3VdbeJumpHere($407,$408); + break; + } else { + $409 = HEAP32[$addrLoop>>2]|0; + (_sqlite3VdbeAddOp2($403,16,0,$409)|0); + $410 = HEAP32[$v>>2]|0; + $411 = HEAP32[$addrLoop>>2]|0; + _sqlite3VdbeJumpHere($410,$411); + break; + } + } + } while(0); + $412 = HEAP32[$isView>>2]|0; + $413 = ($412|0)!=(0); + if ($413) { + break; + } + $414 = HEAP32[$pTab>>2]|0; + $415 = (($414) + 44|0); + $416 = HEAP8[$415>>0]|0; + $417 = $416&255; + $418 = $417 & 16; + $419 = ($418|0)!=(0); + if ($419) { + break; + } + $420 = HEAP32[$pPk>>2]|0; + $421 = ($420|0)!=(0|0); + if (!($421)) { + $422 = HEAP32[$v>>2]|0; + $423 = HEAP32[$iDataCur>>2]|0; + (_sqlite3VdbeAddOp1($422,58,$423)|0); + } + HEAP32[$i>>2] = 0; + $424 = HEAP32[$pTab>>2]|0; + $425 = (($424) + 8|0); + $426 = HEAP32[$425>>2]|0; + HEAP32[$pIdx>>2] = $426; + while(1) { + $427 = HEAP32[$pIdx>>2]|0; + $428 = ($427|0)!=(0|0); + if (!($428)) { + break L38; + } + $429 = HEAP32[$v>>2]|0; + $430 = HEAP32[$iIdxCur>>2]|0; + $431 = HEAP32[$i>>2]|0; + $432 = (($430) + ($431))|0; + (_sqlite3VdbeAddOp1($429,58,$432)|0); + $433 = HEAP32[$i>>2]|0; + $434 = (($433) + 1)|0; + HEAP32[$i>>2] = $434; + $435 = HEAP32[$pIdx>>2]|0; + $436 = (($435) + 20|0); + $437 = HEAP32[$436>>2]|0; + HEAP32[$pIdx>>2] = $437; + } + } + } while(0); + $438 = HEAP32[$0>>2]|0; + $439 = (($438) + 18|0); + $440 = HEAP8[$439>>0]|0; + $441 = $440&255; + $442 = ($441|0)==(0); + if ($442) { + $443 = HEAP32[$0>>2]|0; + $444 = (($443) + 412|0); + $445 = HEAP32[$444>>2]|0; + $446 = ($445|0)==(0|0); + if ($446) { + $447 = HEAP32[$0>>2]|0; + _sqlite3AutoincrementEnd($447); + } + } + $448 = HEAP32[$db>>2]|0; + $449 = (($448) + 24|0); + $450 = HEAP32[$449>>2]|0; + $451 = $450 & 128; + $452 = ($451|0)!=(0); + if ($452) { + $453 = HEAP32[$0>>2]|0; + $454 = (($453) + 18|0); + $455 = HEAP8[$454>>0]|0; + $456 = ($455<<24>>24)!=(0); + if (!($456)) { + $457 = HEAP32[$0>>2]|0; + $458 = (($457) + 412|0); + $459 = HEAP32[$458>>2]|0; + $460 = ($459|0)!=(0|0); + if (!($460)) { + $461 = HEAP32[$v>>2]|0; + $462 = HEAP32[$memCnt>>2]|0; + (_sqlite3VdbeAddOp2($461,35,$462,1)|0); + $463 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($463,1); + $464 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($464,0,0,31024,0)|0); + } + } + } + } + } + } + } + } + } + } + } + } while(0); + _sqlite3AuthContextPop($sContext); + $465 = HEAP32[$db>>2]|0; + $466 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($465,$466); + $467 = HEAP32[$db>>2]|0; + $468 = HEAP32[$2>>2]|0; + _sqlite3ExprDelete($467,$468); + $469 = HEAP32[$db>>2]|0; + $470 = HEAP32[$aToOpen>>2]|0; + _sqlite3DbFree($469,$470); + STACKTOP = sp;return; +} +function _sqlite3ExprListCheckLength($pParse,$pEList,$zObject) { + $pParse = $pParse|0; + $pEList = $pEList|0; + $zObject = $zObject|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mx = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 16|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $mx = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pEList; + HEAP32[$2>>2] = $zObject; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 88|0); + $6 = (($5) + 8|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$mx>>2] = $7; + $8 = HEAP32[$1>>2]|0; + $9 = ($8|0)!=(0|0); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$mx>>2]|0; + $13 = ($11|0)>($12|0); + if (!($13)) { + STACKTOP = sp;return; + } + $14 = HEAP32[$0>>2]|0; + $15 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer>>2] = $15; + _sqlite3ErrorMsg($14,31000,$vararg_buffer); + STACKTOP = sp;return; +} +function _sqlite3Update($pParse,$pTabList,$pChanges,$pWhere,$onError) { + $pParse = $pParse|0; + $pTabList = $pTabList|0; + $pChanges = $pChanges|0; + $pWhere = $pWhere|0; + $onError = $onError|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; + var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; + var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; + var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; + var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; + var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0; + var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0; + var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0; + var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0; + var $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0; + var $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0; + var $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0; + var $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0; + var $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0; + var $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0; + var $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0; + var $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0; + var $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0; + var $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0; + var $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0; + var $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0; + var $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0; + var $981 = 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $99 = 0, $aRegIdx = 0, $aToOpen = 0, $aXRef = 0, $addrOpen = 0, $addrTop = 0, $aiCurOnePass = 0, $bReplace = 0, $chngKey = 0, $chngPk = 0, $chngRowid = 0, $db = 0, $hasFK = 0; + var $i = 0, $iBaseCur = 0, $iDataCur = 0, $iDb = 0, $iEph = 0, $iIdxCur = 0, $iPk = 0, $isView = 0, $j = 0, $j1 = 0, $labelBreak = 0, $labelContinue = 0, $nIdx = 0, $nKey = 0, $nPk = 0, $newmask = 0, $okOnePass = 0, $oldmask = 0, $pIdx = 0, $pPk = 0; + var $pRowidExpr = 0, $pTab = 0, $pTrigger = 0, $pWInfo = 0, $rc = 0, $reg = 0, $regKey = 0, $regNew = 0, $regNewRowid = 0, $regOld = 0, $regOldRowid = 0, $regRowCount = 0, $regRowSet = 0, $sContext = 0, $sNC = 0, $tmask = 0, $v = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 272|0; + $vararg_buffer = sp; + $0 = sp + 176|0; + $1 = sp + 172|0; + $2 = sp + 168|0; + $3 = sp + 164|0; + $4 = sp + 160|0; + $i = sp + 156|0; + $j = sp + 148|0; + $pTab = sp + 144|0; + $addrTop = sp + 140|0; + $pWInfo = sp + 136|0; + $v = sp + 132|0; + $pIdx = sp + 152|0; + $pPk = sp + 216|0; + $nIdx = sp + 220|0; + $iBaseCur = sp + 224|0; + $iDataCur = sp + 228|0; + $iIdxCur = sp + 232|0; + $db = sp + 236|0; + $aRegIdx = sp + 240|0; + $aXRef = sp + 244|0; + $aToOpen = sp + 248|0; + $chngPk = sp + 256|0; + $chngRowid = sp + 254|0; + $chngKey = sp + 255|0; + $pRowidExpr = sp + 128|0; + $sContext = sp + 120|0; + $sNC = sp + 184|0; + $iDb = sp + 56|0; + $okOnePass = sp + 48|0; + $hasFK = sp + 44|0; + $labelBreak = sp + 40|0; + $labelContinue = sp + 36|0; + $isView = sp + 32|0; + $pTrigger = sp + 52|0; + $tmask = sp + 12|0; + $newmask = sp + 8|0; + $iEph = sp + 4|0; + $nKey = sp + 16|0; + $aiCurOnePass = sp + 24|0; + $regRowCount = sp + 108|0; + $regOldRowid = sp + 60|0; + $regNewRowid = sp + 64|0; + $regNew = sp + 68|0; + $regOld = sp + 72|0; + $regRowSet = sp + 76|0; + $regKey = sp + 80|0; + $rc = sp + 84|0; + $reg = sp + 88|0; + $iPk = sp + 92|0; + $nPk = sp + 252|0; + $addrOpen = sp + 96|0; + $oldmask = sp + 100|0; + $j1 = sp + 104|0; + $bReplace = sp + 112|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTabList; + HEAP32[$2>>2] = $pChanges; + HEAP32[$3>>2] = $pWhere; + HEAP32[$4>>2] = $onError; + HEAP32[$addrTop>>2] = 0; + HEAP32[$aRegIdx>>2] = 0; + HEAP32[$aXRef>>2] = 0; + HEAP32[$pRowidExpr>>2] = 0; + HEAP32[$iEph>>2] = 0; + HEAP32[$nKey>>2] = 0; + HEAP32[$regRowCount>>2] = 0; + HEAP32[$regOld>>2] = 0; + HEAP32[$regRowSet>>2] = 0; + HEAP32[$regKey>>2] = 0; + ;HEAP32[$sContext+0>>2]=0|0;HEAP32[$sContext+4>>2]=0|0; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 64|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0); + if ($10) { + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } + $11 = HEAP32[$db>>2]|0; + $12 = (($11) + 64|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = ($14|0)!=(0); + if ($15) { + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } + $16 = HEAP32[$0>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = (_sqlite3SrcListLookup($16,$17)|0); + HEAP32[$pTab>>2] = $18; + $19 = HEAP32[$pTab>>2]|0; + $20 = ($19|0)==(0|0); + if ($20) { + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$pTab>>2]|0; + $24 = (($23) + 68|0); + $25 = HEAP32[$24>>2]|0; + $26 = (_sqlite3SchemaToIndex($22,$25)|0); + HEAP32[$iDb>>2] = $26; + $27 = HEAP32[$0>>2]|0; + $28 = HEAP32[$pTab>>2]|0; + $29 = HEAP32[$2>>2]|0; + $30 = (_sqlite3TriggersExist($27,$28,110,$29,$tmask)|0); + HEAP32[$pTrigger>>2] = $30; + $31 = HEAP32[$pTab>>2]|0; + $32 = (($31) + 12|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($33|0)!=(0|0); + $35 = $34&1; + HEAP32[$isView>>2] = $35; + $36 = HEAP32[$0>>2]|0; + $37 = HEAP32[$pTab>>2]|0; + $38 = (_sqlite3ViewGetColumnNames($36,$37)|0); + $39 = ($38|0)!=(0); + if ($39) { + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } + $40 = HEAP32[$0>>2]|0; + $41 = HEAP32[$pTab>>2]|0; + $42 = HEAP32[$tmask>>2]|0; + $43 = (_sqlite3IsReadOnly($40,$41,$42)|0); + $44 = ($43|0)!=(0); + if ($44) { + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } + $45 = HEAP32[$0>>2]|0; + $46 = (($45) + 68|0); + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + 1)|0; + HEAP32[$46>>2] = $48; + HEAP32[$iDataCur>>2] = $47; + HEAP32[$iBaseCur>>2] = $47; + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 8|0); + $51 = (($50) + 40|0); + HEAP32[$51>>2] = $47; + $52 = HEAP32[$iDataCur>>2]|0; + $53 = (($52) + 1)|0; + HEAP32[$iIdxCur>>2] = $53; + $54 = HEAP32[$pTab>>2]|0; + $55 = (($54) + 44|0); + $56 = HEAP8[$55>>0]|0; + $57 = $56&255; + $58 = $57 & 32; + $59 = ($58|0)==(0); + if ($59) { + $62 = 0; + } else { + $60 = HEAP32[$pTab>>2]|0; + $61 = (_sqlite3PrimaryKeyIndex($60)|0); + $62 = $61; + } + HEAP32[$pPk>>2] = $62; + HEAP32[$nIdx>>2] = 0; + $63 = HEAP32[$pTab>>2]|0; + $64 = (($63) + 8|0); + $65 = HEAP32[$64>>2]|0; + HEAP32[$pIdx>>2] = $65; + while(1) { + $66 = HEAP32[$pIdx>>2]|0; + $67 = ($66|0)!=(0|0); + if (!($67)) { + break; + } + $68 = HEAP32[$pIdx>>2]|0; + $69 = (($68) + 55|0); + $70 = HEAP8[$69>>0]|0; + $71 = $70 & 3; + $72 = $71&255; + $73 = ($72|0)==(2); + if ($73) { + $74 = HEAP32[$pPk>>2]|0; + $75 = ($74|0)!=(0|0); + if ($75) { + $76 = HEAP32[$0>>2]|0; + $77 = (($76) + 68|0); + $78 = HEAP32[$77>>2]|0; + HEAP32[$iDataCur>>2] = $78; + $79 = HEAP32[$iDataCur>>2]|0; + $80 = HEAP32[$1>>2]|0; + $81 = (($80) + 8|0); + $82 = (($81) + 40|0); + HEAP32[$82>>2] = $79; + } + } + $83 = HEAP32[$0>>2]|0; + $84 = (($83) + 68|0); + $85 = HEAP32[$84>>2]|0; + $86 = (($85) + 1)|0; + HEAP32[$84>>2] = $86; + $87 = HEAP32[$pIdx>>2]|0; + $88 = (($87) + 20|0); + $89 = HEAP32[$88>>2]|0; + HEAP32[$pIdx>>2] = $89; + $90 = HEAP32[$nIdx>>2]|0; + $91 = (($90) + 1)|0; + HEAP32[$nIdx>>2] = $91; + } + $92 = HEAP32[$db>>2]|0; + $93 = HEAP32[$pTab>>2]|0; + $94 = (($93) + 38|0); + $95 = HEAP16[$94>>1]|0; + $96 = $95 << 16 >> 16; + $97 = HEAP32[$nIdx>>2]|0; + $98 = (($96) + ($97))|0; + $99 = $98<<2; + $100 = HEAP32[$nIdx>>2]|0; + $101 = (($99) + ($100))|0; + $102 = (($101) + 2)|0; + $103 = (_sqlite3DbMallocRaw($92,$102)|0); + HEAP32[$aXRef>>2] = $103; + $104 = HEAP32[$aXRef>>2]|0; + $105 = ($104|0)==(0|0); + if ($105) { + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } + $106 = HEAP32[$aXRef>>2]|0; + $107 = HEAP32[$pTab>>2]|0; + $108 = (($107) + 38|0); + $109 = HEAP16[$108>>1]|0; + $110 = $109 << 16 >> 16; + $111 = (($106) + ($110<<2)|0); + HEAP32[$aRegIdx>>2] = $111; + $112 = HEAP32[$aRegIdx>>2]|0; + $113 = HEAP32[$nIdx>>2]|0; + $114 = (($112) + ($113<<2)|0); + HEAP32[$aToOpen>>2] = $114; + $115 = HEAP32[$aToOpen>>2]|0; + $116 = HEAP32[$nIdx>>2]|0; + $117 = (($116) + 1)|0; + _memset(($115|0),1,($117|0))|0; + $118 = HEAP32[$nIdx>>2]|0; + $119 = (($118) + 1)|0; + $120 = HEAP32[$aToOpen>>2]|0; + $121 = (($120) + ($119)|0); + HEAP8[$121>>0] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $122 = HEAP32[$i>>2]|0; + $123 = HEAP32[$pTab>>2]|0; + $124 = (($123) + 38|0); + $125 = HEAP16[$124>>1]|0; + $126 = $125 << 16 >> 16; + $127 = ($122|0)<($126|0); + if (!($127)) { + break; + } + $128 = HEAP32[$i>>2]|0; + $129 = HEAP32[$aXRef>>2]|0; + $130 = (($129) + ($128<<2)|0); + HEAP32[$130>>2] = -1; + $131 = HEAP32[$i>>2]|0; + $132 = (($131) + 1)|0; + HEAP32[$i>>2] = $132; + } + ;HEAP32[$sNC+0>>2]=0|0;HEAP32[$sNC+4>>2]=0|0;HEAP32[$sNC+8>>2]=0|0;HEAP32[$sNC+12>>2]=0|0;HEAP32[$sNC+16>>2]=0|0;HEAP32[$sNC+20>>2]=0|0;HEAP32[$sNC+24>>2]=0|0;HEAP32[$sNC+28>>2]=0|0; + $133 = HEAP32[$0>>2]|0; + HEAP32[$sNC>>2] = $133; + $134 = HEAP32[$1>>2]|0; + $135 = (($sNC) + 4|0); + HEAP32[$135>>2] = $134; + HEAP8[$chngPk>>0] = 0; + HEAP8[$chngRowid>>0] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $136 = HEAP32[$i>>2]|0; + $137 = HEAP32[$2>>2]|0; + $138 = HEAP32[$137>>2]|0; + $139 = ($136|0)<($138|0); + if (!($139)) { + label = 42; + break; + } + $140 = HEAP32[$i>>2]|0; + $141 = HEAP32[$2>>2]|0; + $142 = (($141) + 4|0); + $143 = HEAP32[$142>>2]|0; + $144 = (($143) + (($140*20)|0)|0); + $145 = HEAP32[$144>>2]|0; + $146 = (_sqlite3ResolveExprNames($sNC,$145)|0); + $147 = ($146|0)!=(0); + if ($147) { + label = 193; + break; + } + HEAP32[$j>>2] = 0; + while(1) { + $148 = HEAP32[$j>>2]|0; + $149 = HEAP32[$pTab>>2]|0; + $150 = (($149) + 38|0); + $151 = HEAP16[$150>>1]|0; + $152 = $151 << 16 >> 16; + $153 = ($148|0)<($152|0); + if (!($153)) { + break; + } + $154 = HEAP32[$j>>2]|0; + $155 = HEAP32[$pTab>>2]|0; + $156 = (($155) + 4|0); + $157 = HEAP32[$156>>2]|0; + $158 = (($157) + (($154*24)|0)|0); + $159 = HEAP32[$158>>2]|0; + $160 = HEAP32[$i>>2]|0; + $161 = HEAP32[$2>>2]|0; + $162 = (($161) + 4|0); + $163 = HEAP32[$162>>2]|0; + $164 = (($163) + (($160*20)|0)|0); + $165 = (($164) + 4|0); + $166 = HEAP32[$165>>2]|0; + $167 = (_sqlite3_stricmp($159,$166)|0); + $168 = ($167|0)==(0); + $169 = HEAP32[$j>>2]|0; + if ($168) { + label = 24; + break; + } + $197 = (($169) + 1)|0; + HEAP32[$j>>2] = $197; + } + if ((label|0) == 24) { + label = 0; + $170 = HEAP32[$pTab>>2]|0; + $171 = (($170) + 36|0); + $172 = HEAP16[$171>>1]|0; + $173 = $172 << 16 >> 16; + $174 = ($169|0)==($173|0); + if ($174) { + HEAP8[$chngRowid>>0] = 1; + $175 = HEAP32[$i>>2]|0; + $176 = HEAP32[$2>>2]|0; + $177 = (($176) + 4|0); + $178 = HEAP32[$177>>2]|0; + $179 = (($178) + (($175*20)|0)|0); + $180 = HEAP32[$179>>2]|0; + HEAP32[$pRowidExpr>>2] = $180; + } else { + $181 = HEAP32[$pPk>>2]|0; + $182 = ($181|0)!=(0|0); + if ($182) { + $183 = HEAP32[$j>>2]|0; + $184 = HEAP32[$pTab>>2]|0; + $185 = (($184) + 4|0); + $186 = HEAP32[$185>>2]|0; + $187 = (($186) + (($183*24)|0)|0); + $188 = (($187) + 23|0); + $189 = HEAP8[$188>>0]|0; + $190 = $189&255; + $191 = $190 & 1; + $192 = ($191|0)!=(0); + if ($192) { + HEAP8[$chngPk>>0] = 1; + } + } + } + $193 = HEAP32[$i>>2]|0; + $194 = HEAP32[$j>>2]|0; + $195 = HEAP32[$aXRef>>2]|0; + $196 = (($195) + ($194<<2)|0); + HEAP32[$196>>2] = $193; + } + $198 = HEAP32[$j>>2]|0; + $199 = HEAP32[$pTab>>2]|0; + $200 = (($199) + 38|0); + $201 = HEAP16[$200>>1]|0; + $202 = $201 << 16 >> 16; + $203 = ($198|0)>=($202|0); + if ($203) { + $204 = HEAP32[$pPk>>2]|0; + $205 = ($204|0)==(0|0); + if (!($205)) { + label = 35; + break; + } + $206 = HEAP32[$i>>2]|0; + $207 = HEAP32[$2>>2]|0; + $208 = (($207) + 4|0); + $209 = HEAP32[$208>>2]|0; + $210 = (($209) + (($206*20)|0)|0); + $211 = (($210) + 4|0); + $212 = HEAP32[$211>>2]|0; + $213 = (_sqlite3IsRowid($212)|0); + $214 = ($213|0)!=(0); + if (!($214)) { + label = 35; + break; + } + HEAP32[$j>>2] = -1; + HEAP8[$chngRowid>>0] = 1; + $215 = HEAP32[$i>>2]|0; + $216 = HEAP32[$2>>2]|0; + $217 = (($216) + 4|0); + $218 = HEAP32[$217>>2]|0; + $219 = (($218) + (($215*20)|0)|0); + $220 = HEAP32[$219>>2]|0; + HEAP32[$pRowidExpr>>2] = $220; + } + $231 = HEAP32[$0>>2]|0; + $232 = HEAP32[$pTab>>2]|0; + $233 = HEAP32[$232>>2]|0; + $234 = HEAP32[$j>>2]|0; + $235 = ($234|0)<(0); + if ($235) { + $248 = 23816; + } else { + $236 = HEAP32[$j>>2]|0; + $237 = HEAP32[$pTab>>2]|0; + $238 = (($237) + 4|0); + $239 = HEAP32[$238>>2]|0; + $240 = (($239) + (($236*24)|0)|0); + $241 = HEAP32[$240>>2]|0; + $248 = $241; + } + $242 = HEAP32[$iDb>>2]|0; + $243 = HEAP32[$db>>2]|0; + $244 = (($243) + 16|0); + $245 = HEAP32[$244>>2]|0; + $246 = (($245) + ($242<<4)|0); + $247 = HEAP32[$246>>2]|0; + $249 = (_sqlite3AuthCheck($231,23,$233,$248,$247)|0); + HEAP32[$rc>>2] = $249; + $250 = HEAP32[$rc>>2]|0; + $251 = ($250|0)==(1); + if ($251) { + label = 193; + break; + } + $252 = HEAP32[$rc>>2]|0; + $253 = ($252|0)==(2); + if ($253) { + $254 = HEAP32[$j>>2]|0; + $255 = HEAP32[$aXRef>>2]|0; + $256 = (($255) + ($254<<2)|0); + HEAP32[$256>>2] = -1; + } + $257 = HEAP32[$i>>2]|0; + $258 = (($257) + 1)|0; + HEAP32[$i>>2] = $258; + } + if ((label|0) == 35) { + $221 = HEAP32[$0>>2]|0; + $222 = HEAP32[$i>>2]|0; + $223 = HEAP32[$2>>2]|0; + $224 = (($223) + 4|0); + $225 = HEAP32[$224>>2]|0; + $226 = (($225) + (($222*20)|0)|0); + $227 = (($226) + 4|0); + $228 = HEAP32[$227>>2]|0; + HEAP32[$vararg_buffer>>2] = $228; + _sqlite3ErrorMsg($221,8184,$vararg_buffer); + $229 = HEAP32[$0>>2]|0; + $230 = (($229) + 17|0); + HEAP8[$230>>0] = 1; + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } + else if ((label|0) == 42) { + $259 = HEAP8[$chngRowid>>0]|0; + $260 = $259&255; + $261 = HEAP8[$chngPk>>0]|0; + $262 = $261&255; + $263 = (($260) + ($262))|0; + $264 = $263&255; + HEAP8[$chngKey>>0] = $264; + $265 = HEAP32[$1>>2]|0; + $266 = (($265) + 8|0); + $267 = (($266) + 56|0); + $268 = $267; + $269 = $268; + HEAP32[$269>>2] = 0; + $270 = (($268) + 4)|0; + $271 = $270; + HEAP32[$271>>2] = 0; + $272 = HEAP32[$0>>2]|0; + $273 = HEAP32[$pTab>>2]|0; + $274 = HEAP32[$aXRef>>2]|0; + $275 = HEAP8[$chngKey>>0]|0; + $276 = $275&255; + $277 = (_sqlite3FkRequired($272,$273,$274,$276)|0); + HEAP32[$hasFK>>2] = $277; + HEAP32[$j>>2] = 0; + $278 = HEAP32[$pTab>>2]|0; + $279 = (($278) + 8|0); + $280 = HEAP32[$279>>2]|0; + HEAP32[$pIdx>>2] = $280; + while(1) { + $281 = HEAP32[$pIdx>>2]|0; + $282 = ($281|0)!=(0|0); + if (!($282)) { + break; + } + $283 = HEAP8[$chngKey>>0]|0; + $284 = $283&255; + $285 = ($284|0)!=(0); + L70: do { + if ($285) { + label = 48; + } else { + $286 = HEAP32[$hasFK>>2]|0; + $287 = ($286|0)!=(0); + if ($287) { + label = 48; + } else { + $288 = HEAP32[$pIdx>>2]|0; + $289 = (($288) + 36|0); + $290 = HEAP32[$289>>2]|0; + $291 = ($290|0)!=(0|0); + if ($291) { + label = 48; + } else { + $292 = HEAP32[$pIdx>>2]|0; + $293 = HEAP32[$pPk>>2]|0; + $294 = ($292|0)==($293|0); + if ($294) { + label = 48; + } else { + HEAP32[$reg>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $299 = HEAP32[$i>>2]|0; + $300 = HEAP32[$pIdx>>2]|0; + $301 = (($300) + 50|0); + $302 = HEAP16[$301>>1]|0; + $303 = $302&65535; + $304 = ($299|0)<($303|0); + if (!($304)) { + break L70; + } + $305 = HEAP32[$i>>2]|0; + $306 = HEAP32[$pIdx>>2]|0; + $307 = (($306) + 4|0); + $308 = HEAP32[$307>>2]|0; + $309 = (($308) + ($305<<1)|0); + $310 = HEAP16[$309>>1]|0; + $311 = $310 << 16 >> 16; + $312 = HEAP32[$aXRef>>2]|0; + $313 = (($312) + ($311<<2)|0); + $314 = HEAP32[$313>>2]|0; + $315 = ($314|0)>=(0); + if ($315) { + break; + } + $320 = HEAP32[$i>>2]|0; + $321 = (($320) + 1)|0; + HEAP32[$i>>2] = $321; + } + $316 = HEAP32[$0>>2]|0; + $317 = (($316) + 72|0); + $318 = HEAP32[$317>>2]|0; + $319 = (($318) + 1)|0; + HEAP32[$317>>2] = $319; + HEAP32[$reg>>2] = $319; + } + } + } + } + } while(0); + if ((label|0) == 48) { + label = 0; + $295 = HEAP32[$0>>2]|0; + $296 = (($295) + 72|0); + $297 = HEAP32[$296>>2]|0; + $298 = (($297) + 1)|0; + HEAP32[$296>>2] = $298; + HEAP32[$reg>>2] = $298; + } + $322 = HEAP32[$reg>>2]|0; + $323 = ($322|0)==(0); + if ($323) { + $324 = HEAP32[$j>>2]|0; + $325 = (($324) + 1)|0; + $326 = HEAP32[$aToOpen>>2]|0; + $327 = (($326) + ($325)|0); + HEAP8[$327>>0] = 0; + } + $328 = HEAP32[$reg>>2]|0; + $329 = HEAP32[$j>>2]|0; + $330 = HEAP32[$aRegIdx>>2]|0; + $331 = (($330) + ($329<<2)|0); + HEAP32[$331>>2] = $328; + $332 = HEAP32[$pIdx>>2]|0; + $333 = (($332) + 20|0); + $334 = HEAP32[$333>>2]|0; + HEAP32[$pIdx>>2] = $334; + $335 = HEAP32[$j>>2]|0; + $336 = (($335) + 1)|0; + HEAP32[$j>>2] = $336; + } + $337 = HEAP32[$0>>2]|0; + $338 = (_sqlite3GetVdbe($337)|0); + HEAP32[$v>>2] = $338; + $339 = HEAP32[$v>>2]|0; + $340 = ($339|0)==(0|0); + if ($340) { + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } + $341 = HEAP32[$0>>2]|0; + $342 = (($341) + 18|0); + $343 = HEAP8[$342>>0]|0; + $344 = $343&255; + $345 = ($344|0)==(0); + if ($345) { + $346 = HEAP32[$v>>2]|0; + _sqlite3VdbeCountChanges($346); + } + $347 = HEAP32[$0>>2]|0; + $348 = HEAP32[$iDb>>2]|0; + _sqlite3BeginWriteOperation($347,1,$348); + $349 = HEAP32[$pTab>>2]|0; + $350 = (($349) + 44|0); + $351 = HEAP8[$350>>0]|0; + $352 = $351&255; + $353 = $352 & 16; + $354 = ($353|0)!=(0); + $355 = HEAP32[$0>>2]|0; + if ($354) { + $356 = HEAP32[$1>>2]|0; + $357 = HEAP32[$pTab>>2]|0; + $358 = HEAP32[$2>>2]|0; + $359 = HEAP32[$pRowidExpr>>2]|0; + $360 = HEAP32[$aXRef>>2]|0; + $361 = HEAP32[$3>>2]|0; + $362 = HEAP32[$4>>2]|0; + _updateVirtualTable($355,$356,$357,$358,$359,$360,$361,$362); + HEAP32[$3>>2] = 0; + HEAP32[$1>>2] = 0; + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } + $363 = (($355) + 72|0); + $364 = HEAP32[$363>>2]|0; + $365 = (($364) + 1)|0; + HEAP32[$363>>2] = $365; + HEAP32[$regRowSet>>2] = $365; + $366 = HEAP32[$0>>2]|0; + $367 = (($366) + 72|0); + $368 = HEAP32[$367>>2]|0; + $369 = (($368) + 1)|0; + HEAP32[$367>>2] = $369; + HEAP32[$regNewRowid>>2] = $369; + HEAP32[$regOldRowid>>2] = $369; + $370 = HEAP8[$chngPk>>0]|0; + $371 = $370&255; + $372 = ($371|0)!=(0); + if ($372) { + label = 65; + } else { + $373 = HEAP32[$pTrigger>>2]|0; + $374 = ($373|0)!=(0|0); + if ($374) { + label = 65; + } else { + $375 = HEAP32[$hasFK>>2]|0; + $376 = ($375|0)!=(0); + if ($376) { + label = 65; + } + } + } + if ((label|0) == 65) { + $377 = HEAP32[$0>>2]|0; + $378 = (($377) + 72|0); + $379 = HEAP32[$378>>2]|0; + $380 = (($379) + 1)|0; + HEAP32[$regOld>>2] = $380; + $381 = HEAP32[$pTab>>2]|0; + $382 = (($381) + 38|0); + $383 = HEAP16[$382>>1]|0; + $384 = $383 << 16 >> 16; + $385 = HEAP32[$0>>2]|0; + $386 = (($385) + 72|0); + $387 = HEAP32[$386>>2]|0; + $388 = (($387) + ($384))|0; + HEAP32[$386>>2] = $388; + } + $389 = HEAP8[$chngKey>>0]|0; + $390 = $389&255; + $391 = ($390|0)!=(0); + if ($391) { + label = 69; + } else { + $392 = HEAP32[$pTrigger>>2]|0; + $393 = ($392|0)!=(0|0); + if ($393) { + label = 69; + } else { + $394 = HEAP32[$hasFK>>2]|0; + $395 = ($394|0)!=(0); + if ($395) { + label = 69; + } + } + } + if ((label|0) == 69) { + $396 = HEAP32[$0>>2]|0; + $397 = (($396) + 72|0); + $398 = HEAP32[$397>>2]|0; + $399 = (($398) + 1)|0; + HEAP32[$397>>2] = $399; + HEAP32[$regNewRowid>>2] = $399; + } + $400 = HEAP32[$0>>2]|0; + $401 = (($400) + 72|0); + $402 = HEAP32[$401>>2]|0; + $403 = (($402) + 1)|0; + HEAP32[$regNew>>2] = $403; + $404 = HEAP32[$pTab>>2]|0; + $405 = (($404) + 38|0); + $406 = HEAP16[$405>>1]|0; + $407 = $406 << 16 >> 16; + $408 = HEAP32[$0>>2]|0; + $409 = (($408) + 72|0); + $410 = HEAP32[$409>>2]|0; + $411 = (($410) + ($407))|0; + HEAP32[$409>>2] = $411; + $412 = HEAP32[$isView>>2]|0; + $413 = ($412|0)!=(0); + if ($413) { + $414 = HEAP32[$0>>2]|0; + $415 = HEAP32[$pTab>>2]|0; + $416 = HEAP32[$415>>2]|0; + _sqlite3AuthContextPush($414,$sContext,$416); + } + $417 = HEAP32[$isView>>2]|0; + $418 = ($417|0)!=(0); + if ($418) { + $419 = HEAP32[$0>>2]|0; + $420 = HEAP32[$pTab>>2]|0; + $421 = HEAP32[$3>>2]|0; + $422 = HEAP32[$iDataCur>>2]|0; + _sqlite3MaterializeView($419,$420,$421,$422); + } + $423 = HEAP32[$3>>2]|0; + $424 = (_sqlite3ResolveExprNames($sNC,$423)|0); + $425 = ($424|0)!=(0); + if ($425) { + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } + $426 = HEAP32[$pTab>>2]|0; + $427 = (($426) + 44|0); + $428 = HEAP8[$427>>0]|0; + $429 = $428&255; + $430 = $429 & 32; + $431 = ($430|0)==(0); + if ($431) { + $432 = HEAP32[$v>>2]|0; + $433 = HEAP32[$regRowSet>>2]|0; + $434 = HEAP32[$regOldRowid>>2]|0; + (_sqlite3VdbeAddOp3($432,28,0,$433,$434)|0); + $435 = HEAP32[$0>>2]|0; + $436 = HEAP32[$1>>2]|0; + $437 = HEAP32[$3>>2]|0; + $438 = HEAP32[$iIdxCur>>2]|0; + $439 = (_sqlite3WhereBegin($435,$436,$437,0,0,4,$438)|0); + HEAP32[$pWInfo>>2] = $439; + $440 = HEAP32[$pWInfo>>2]|0; + $441 = ($440|0)==(0|0); + if ($441) { + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } + $442 = HEAP32[$pWInfo>>2]|0; + $443 = (_sqlite3WhereOkOnePass($442,$aiCurOnePass)|0); + HEAP32[$okOnePass>>2] = $443; + $444 = HEAP32[$v>>2]|0; + $445 = HEAP32[$iDataCur>>2]|0; + $446 = HEAP32[$regOldRowid>>2]|0; + (_sqlite3VdbeAddOp2($444,100,$445,$446)|0); + $447 = HEAP32[$okOnePass>>2]|0; + $448 = ($447|0)!=(0); + if (!($448)) { + $449 = HEAP32[$v>>2]|0; + $450 = HEAP32[$regRowSet>>2]|0; + $451 = HEAP32[$regOldRowid>>2]|0; + (_sqlite3VdbeAddOp2($449,125,$450,$451)|0); + } + $452 = HEAP32[$pWInfo>>2]|0; + _sqlite3WhereEnd($452); + } else { + $453 = HEAP32[$pPk>>2]|0; + $454 = (($453) + 50|0); + $455 = HEAP16[$454>>1]|0; + HEAP16[$nPk>>1] = $455; + $456 = HEAP32[$0>>2]|0; + $457 = (($456) + 72|0); + $458 = HEAP32[$457>>2]|0; + $459 = (($458) + 1)|0; + HEAP32[$iPk>>2] = $459; + $460 = HEAP16[$nPk>>1]|0; + $461 = $460 << 16 >> 16; + $462 = HEAP32[$0>>2]|0; + $463 = (($462) + 72|0); + $464 = HEAP32[$463>>2]|0; + $465 = (($464) + ($461))|0; + HEAP32[$463>>2] = $465; + $466 = HEAP32[$0>>2]|0; + $467 = (($466) + 72|0); + $468 = HEAP32[$467>>2]|0; + $469 = (($468) + 1)|0; + HEAP32[$467>>2] = $469; + HEAP32[$regKey>>2] = $469; + $470 = HEAP32[$0>>2]|0; + $471 = (($470) + 68|0); + $472 = HEAP32[$471>>2]|0; + $473 = (($472) + 1)|0; + HEAP32[$471>>2] = $473; + HEAP32[$iEph>>2] = $472; + $474 = HEAP32[$v>>2]|0; + $475 = HEAP32[$iPk>>2]|0; + (_sqlite3VdbeAddOp2($474,28,0,$475)|0); + $476 = HEAP32[$v>>2]|0; + $477 = HEAP32[$iEph>>2]|0; + $478 = HEAP16[$nPk>>1]|0; + $479 = $478 << 16 >> 16; + $480 = (_sqlite3VdbeAddOp2($476,55,$477,$479)|0); + HEAP32[$addrOpen>>2] = $480; + $481 = HEAP32[$0>>2]|0; + $482 = HEAP32[$pPk>>2]|0; + _sqlite3VdbeSetP4KeyInfo($481,$482); + $483 = HEAP32[$0>>2]|0; + $484 = HEAP32[$1>>2]|0; + $485 = HEAP32[$3>>2]|0; + $486 = HEAP32[$iIdxCur>>2]|0; + $487 = (_sqlite3WhereBegin($483,$484,$485,0,0,4,$486)|0); + HEAP32[$pWInfo>>2] = $487; + $488 = HEAP32[$pWInfo>>2]|0; + $489 = ($488|0)==(0|0); + if ($489) { + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } + $490 = HEAP32[$pWInfo>>2]|0; + $491 = (_sqlite3WhereOkOnePass($490,$aiCurOnePass)|0); + HEAP32[$okOnePass>>2] = $491; + HEAP32[$i>>2] = 0; + while(1) { + $492 = HEAP32[$i>>2]|0; + $493 = HEAP16[$nPk>>1]|0; + $494 = $493 << 16 >> 16; + $495 = ($492|0)<($494|0); + if (!($495)) { + break; + } + $496 = HEAP32[$v>>2]|0; + $497 = HEAP32[$pTab>>2]|0; + $498 = HEAP32[$iDataCur>>2]|0; + $499 = HEAP32[$i>>2]|0; + $500 = HEAP32[$pPk>>2]|0; + $501 = (($500) + 4|0); + $502 = HEAP32[$501>>2]|0; + $503 = (($502) + ($499<<1)|0); + $504 = HEAP16[$503>>1]|0; + $505 = $504 << 16 >> 16; + $506 = HEAP32[$iPk>>2]|0; + $507 = HEAP32[$i>>2]|0; + $508 = (($506) + ($507))|0; + _sqlite3ExprCodeGetColumnOfTable($496,$497,$498,$505,$508); + $509 = HEAP32[$i>>2]|0; + $510 = (($509) + 1)|0; + HEAP32[$i>>2] = $510; + } + $511 = HEAP32[$okOnePass>>2]|0; + $512 = ($511|0)!=(0); + $513 = HEAP32[$v>>2]|0; + if ($512) { + $514 = HEAP32[$addrOpen>>2]|0; + _sqlite3VdbeChangeToNoop($513,$514); + $515 = HEAP16[$nPk>>1]|0; + $516 = $515 << 16 >> 16; + HEAP32[$nKey>>2] = $516; + $517 = HEAP32[$iPk>>2]|0; + HEAP32[$regKey>>2] = $517; + } else { + $518 = HEAP32[$iPk>>2]|0; + $519 = HEAP16[$nPk>>1]|0; + $520 = $519 << 16 >> 16; + $521 = HEAP32[$regKey>>2]|0; + $522 = HEAP32[$v>>2]|0; + $523 = HEAP32[$pPk>>2]|0; + $524 = (_sqlite3IndexAffinityStr($522,$523)|0); + $525 = HEAP16[$nPk>>1]|0; + $526 = $525 << 16 >> 16; + (_sqlite3VdbeAddOp4($513,48,$518,$520,$521,$524,$526)|0); + $527 = HEAP32[$v>>2]|0; + $528 = HEAP32[$iEph>>2]|0; + $529 = HEAP32[$regKey>>2]|0; + (_sqlite3VdbeAddOp2($527,107,$528,$529)|0); + } + $530 = HEAP32[$pWInfo>>2]|0; + _sqlite3WhereEnd($530); + } + $531 = HEAP32[$db>>2]|0; + $532 = (($531) + 24|0); + $533 = HEAP32[$532>>2]|0; + $534 = $533 & 128; + $535 = ($534|0)!=(0); + if ($535) { + $536 = HEAP32[$0>>2]|0; + $537 = (($536) + 412|0); + $538 = HEAP32[$537>>2]|0; + $539 = ($538|0)!=(0|0); + if (!($539)) { + $540 = HEAP32[$0>>2]|0; + $541 = (($540) + 72|0); + $542 = HEAP32[$541>>2]|0; + $543 = (($542) + 1)|0; + HEAP32[$541>>2] = $543; + HEAP32[$regRowCount>>2] = $543; + $544 = HEAP32[$v>>2]|0; + $545 = HEAP32[$regRowCount>>2]|0; + (_sqlite3VdbeAddOp2($544,25,0,$545)|0); + } + } + $546 = HEAP32[$v>>2]|0; + $547 = (_sqlite3VdbeMakeLabel($546)|0); + HEAP32[$labelBreak>>2] = $547; + $548 = HEAP32[$isView>>2]|0; + $549 = ($548|0)!=(0); + if (!($549)) { + $550 = HEAP32[$4>>2]|0; + $551 = ($550|0)==(5); + L145: do { + if ($551) { + $552 = HEAP32[$aToOpen>>2]|0; + $553 = HEAP32[$nIdx>>2]|0; + $554 = (($553) + 1)|0; + _memset(($552|0),1,($554|0))|0; + } else { + $555 = HEAP32[$pTab>>2]|0; + $556 = (($555) + 8|0); + $557 = HEAP32[$556>>2]|0; + HEAP32[$pIdx>>2] = $557; + while(1) { + $558 = HEAP32[$pIdx>>2]|0; + $559 = ($558|0)!=(0|0); + if (!($559)) { + break L145; + } + $560 = HEAP32[$pIdx>>2]|0; + $561 = (($560) + 54|0); + $562 = HEAP8[$561>>0]|0; + $563 = $562&255; + $564 = ($563|0)==(5); + if ($564) { + break; + } + $568 = HEAP32[$pIdx>>2]|0; + $569 = (($568) + 20|0); + $570 = HEAP32[$569>>2]|0; + HEAP32[$pIdx>>2] = $570; + } + $565 = HEAP32[$aToOpen>>2]|0; + $566 = HEAP32[$nIdx>>2]|0; + $567 = (($566) + 1)|0; + _memset(($565|0),1,($567|0))|0; + } + } while(0); + $571 = HEAP32[$okOnePass>>2]|0; + $572 = ($571|0)!=(0); + do { + if ($572) { + $573 = HEAP32[$aiCurOnePass>>2]|0; + $574 = ($573|0)>=(0); + if ($574) { + $575 = HEAP32[$aiCurOnePass>>2]|0; + $576 = HEAP32[$iBaseCur>>2]|0; + $577 = (($575) - ($576))|0; + $578 = HEAP32[$aToOpen>>2]|0; + $579 = (($578) + ($577)|0); + HEAP8[$579>>0] = 0; + } + $580 = (($aiCurOnePass) + 4|0); + $581 = HEAP32[$580>>2]|0; + $582 = ($581|0)>=(0); + if (!($582)) { + break; + } + $583 = (($aiCurOnePass) + 4|0); + $584 = HEAP32[$583>>2]|0; + $585 = HEAP32[$iBaseCur>>2]|0; + $586 = (($584) - ($585))|0; + $587 = HEAP32[$aToOpen>>2]|0; + $588 = (($587) + ($586)|0); + HEAP8[$588>>0] = 0; + } + } while(0); + $589 = HEAP32[$0>>2]|0; + $590 = HEAP32[$pTab>>2]|0; + $591 = HEAP32[$iBaseCur>>2]|0; + $592 = HEAP32[$aToOpen>>2]|0; + (_sqlite3OpenTableAndIndices($589,$590,53,$591,$592,0,0)|0); + } + $593 = HEAP32[$okOnePass>>2]|0; + $594 = ($593|0)!=(0); + do { + if ($594) { + $595 = HEAP32[$iDataCur>>2]|0; + $596 = HEAP32[$iBaseCur>>2]|0; + $597 = (($595) - ($596))|0; + $598 = HEAP32[$aToOpen>>2]|0; + $599 = (($598) + ($597)|0); + $600 = HEAP8[$599>>0]|0; + $601 = ($600<<24>>24)!=(0); + if ($601) { + $602 = HEAP32[$v>>2]|0; + $603 = HEAP32[$iDataCur>>2]|0; + $604 = HEAP32[$labelBreak>>2]|0; + $605 = HEAP32[$regKey>>2]|0; + $606 = HEAP32[$nKey>>2]|0; + (_sqlite3VdbeAddOp4Int($602,65,$603,$604,$605,$606)|0); + } + $607 = HEAP32[$labelBreak>>2]|0; + HEAP32[$labelContinue>>2] = $607; + $608 = HEAP32[$v>>2]|0; + $609 = HEAP32[$pPk>>2]|0; + $610 = ($609|0)!=(0|0); + $611 = HEAP32[$regKey>>2]|0; + $612 = HEAP32[$regOldRowid>>2]|0; + $613 = $610 ? $611 : $612; + $614 = HEAP32[$labelBreak>>2]|0; + (_sqlite3VdbeAddOp2($608,76,$613,$614)|0); + } else { + $615 = HEAP32[$pPk>>2]|0; + $616 = ($615|0)!=(0|0); + $617 = HEAP32[$v>>2]|0; + if ($616) { + $618 = (_sqlite3VdbeMakeLabel($617)|0); + HEAP32[$labelContinue>>2] = $618; + $619 = HEAP32[$v>>2]|0; + $620 = HEAP32[$iEph>>2]|0; + $621 = HEAP32[$labelBreak>>2]|0; + (_sqlite3VdbeAddOp2($619,105,$620,$621)|0); + $622 = HEAP32[$v>>2]|0; + $623 = HEAP32[$iEph>>2]|0; + $624 = HEAP32[$regKey>>2]|0; + $625 = (_sqlite3VdbeAddOp2($622,98,$623,$624)|0); + HEAP32[$addrTop>>2] = $625; + $626 = HEAP32[$v>>2]|0; + $627 = HEAP32[$iDataCur>>2]|0; + $628 = HEAP32[$labelContinue>>2]|0; + $629 = HEAP32[$regKey>>2]|0; + (_sqlite3VdbeAddOp4Int($626,65,$627,$628,$629,0)|0); + break; + } else { + $630 = HEAP32[$regRowSet>>2]|0; + $631 = HEAP32[$labelBreak>>2]|0; + $632 = HEAP32[$regOldRowid>>2]|0; + $633 = (_sqlite3VdbeAddOp3($617,126,$630,$631,$632)|0); + HEAP32[$labelContinue>>2] = $633; + $634 = HEAP32[$v>>2]|0; + $635 = HEAP32[$iDataCur>>2]|0; + $636 = HEAP32[$labelContinue>>2]|0; + $637 = HEAP32[$regOldRowid>>2]|0; + (_sqlite3VdbeAddOp3($634,67,$635,$636,$637)|0); + break; + } + } + } while(0); + $638 = HEAP8[$chngRowid>>0]|0; + $639 = ($638<<24>>24)!=(0); + if ($639) { + $640 = HEAP32[$0>>2]|0; + $641 = HEAP32[$pRowidExpr>>2]|0; + $642 = HEAP32[$regNewRowid>>2]|0; + _sqlite3ExprCode($640,$641,$642); + $643 = HEAP32[$v>>2]|0; + $644 = HEAP32[$regNewRowid>>2]|0; + (_sqlite3VdbeAddOp1($643,38,$644)|0); + } + $645 = HEAP8[$chngPk>>0]|0; + $646 = $645&255; + $647 = ($646|0)!=(0); + do { + if ($647) { + label = 117; + } else { + $648 = HEAP32[$hasFK>>2]|0; + $649 = ($648|0)!=(0); + if ($649) { + label = 117; + break; + } + $650 = HEAP32[$pTrigger>>2]|0; + $651 = ($650|0)!=(0|0); + if ($651) { + label = 117; + } + } + } while(0); + do { + if ((label|0) == 117) { + $652 = HEAP32[$hasFK>>2]|0; + $653 = ($652|0)!=(0); + if ($653) { + $654 = HEAP32[$0>>2]|0; + $655 = HEAP32[$pTab>>2]|0; + $656 = (_sqlite3FkOldmask($654,$655)|0); + $657 = $656; + } else { + $657 = 0; + } + HEAP32[$oldmask>>2] = $657; + $658 = HEAP32[$0>>2]|0; + $659 = HEAP32[$pTrigger>>2]|0; + $660 = HEAP32[$2>>2]|0; + $661 = HEAP32[$pTab>>2]|0; + $662 = HEAP32[$4>>2]|0; + $663 = (_sqlite3TriggerColmask($658,$659,$660,0,3,$661,$662)|0); + $664 = HEAP32[$oldmask>>2]|0; + $665 = $664 | $663; + HEAP32[$oldmask>>2] = $665; + HEAP32[$i>>2] = 0; + while(1) { + $666 = HEAP32[$i>>2]|0; + $667 = HEAP32[$pTab>>2]|0; + $668 = (($667) + 38|0); + $669 = HEAP16[$668>>1]|0; + $670 = $669 << 16 >> 16; + $671 = ($666|0)<($670|0); + if (!($671)) { + break; + } + $672 = HEAP32[$oldmask>>2]|0; + $673 = ($672|0)==(-1); + do { + if ($673) { + label = 125; + } else { + $674 = HEAP32[$i>>2]|0; + $675 = ($674|0)<(32); + if ($675) { + $676 = HEAP32[$oldmask>>2]|0; + $677 = HEAP32[$i>>2]|0; + $678 = 1 << $677; + $679 = $676 & $678; + $680 = ($679|0)!=(0); + if ($680) { + label = 125; + break; + } + } + $681 = HEAP32[$i>>2]|0; + $682 = HEAP32[$pTab>>2]|0; + $683 = (($682) + 4|0); + $684 = HEAP32[$683>>2]|0; + $685 = (($684) + (($681*24)|0)|0); + $686 = (($685) + 23|0); + $687 = HEAP8[$686>>0]|0; + $688 = $687&255; + $689 = $688 & 1; + $690 = ($689|0)!=(0); + if ($690) { + label = 125; + break; + } + $698 = HEAP32[$v>>2]|0; + $699 = HEAP32[$regOld>>2]|0; + $700 = HEAP32[$i>>2]|0; + $701 = (($699) + ($700))|0; + (_sqlite3VdbeAddOp2($698,28,0,$701)|0); + } + } while(0); + if ((label|0) == 125) { + label = 0; + $691 = HEAP32[$v>>2]|0; + $692 = HEAP32[$pTab>>2]|0; + $693 = HEAP32[$iDataCur>>2]|0; + $694 = HEAP32[$i>>2]|0; + $695 = HEAP32[$regOld>>2]|0; + $696 = HEAP32[$i>>2]|0; + $697 = (($695) + ($696))|0; + _sqlite3ExprCodeGetColumnOfTable($691,$692,$693,$694,$697); + } + $702 = HEAP32[$i>>2]|0; + $703 = (($702) + 1)|0; + HEAP32[$i>>2] = $703; + } + $704 = HEAP8[$chngRowid>>0]|0; + $705 = $704&255; + $706 = ($705|0)==(0); + if (!($706)) { + break; + } + $707 = HEAP32[$pPk>>2]|0; + $708 = ($707|0)==(0|0); + if (!($708)) { + break; + } + $709 = HEAP32[$v>>2]|0; + $710 = HEAP32[$regOldRowid>>2]|0; + $711 = HEAP32[$regNewRowid>>2]|0; + (_sqlite3VdbeAddOp2($709,33,$710,$711)|0); + } + } while(0); + $712 = HEAP32[$0>>2]|0; + $713 = HEAP32[$pTrigger>>2]|0; + $714 = HEAP32[$2>>2]|0; + $715 = HEAP32[$pTab>>2]|0; + $716 = HEAP32[$4>>2]|0; + $717 = (_sqlite3TriggerColmask($712,$713,$714,1,1,$715,$716)|0); + HEAP32[$newmask>>2] = $717; + HEAP32[$i>>2] = 0; + while(1) { + $718 = HEAP32[$i>>2]|0; + $719 = HEAP32[$pTab>>2]|0; + $720 = (($719) + 38|0); + $721 = HEAP16[$720>>1]|0; + $722 = $721 << 16 >> 16; + $723 = ($718|0)<($722|0); + if (!($723)) { + break; + } + $724 = HEAP32[$i>>2]|0; + $725 = HEAP32[$pTab>>2]|0; + $726 = (($725) + 36|0); + $727 = HEAP16[$726>>1]|0; + $728 = $727 << 16 >> 16; + $729 = ($724|0)==($728|0); + L202: do { + if ($729) { + $730 = HEAP32[$v>>2]|0; + $731 = HEAP32[$regNew>>2]|0; + $732 = HEAP32[$i>>2]|0; + $733 = (($731) + ($732))|0; + (_sqlite3VdbeAddOp2($730,28,0,$733)|0); + } else { + $734 = HEAP32[$i>>2]|0; + $735 = HEAP32[$aXRef>>2]|0; + $736 = (($735) + ($734<<2)|0); + $737 = HEAP32[$736>>2]|0; + HEAP32[$j>>2] = $737; + $738 = HEAP32[$j>>2]|0; + $739 = ($738|0)>=(0); + if ($739) { + $740 = HEAP32[$0>>2]|0; + $741 = HEAP32[$j>>2]|0; + $742 = HEAP32[$2>>2]|0; + $743 = (($742) + 4|0); + $744 = HEAP32[$743>>2]|0; + $745 = (($744) + (($741*20)|0)|0); + $746 = HEAP32[$745>>2]|0; + $747 = HEAP32[$regNew>>2]|0; + $748 = HEAP32[$i>>2]|0; + $749 = (($747) + ($748))|0; + _sqlite3ExprCode($740,$746,$749); + break; + } + $750 = HEAP32[$tmask>>2]|0; + $751 = $750 & 1; + $752 = (0)==($751|0); + do { + if (!($752)) { + $753 = HEAP32[$i>>2]|0; + $754 = ($753|0)>(31); + if ($754) { + break; + } + $755 = HEAP32[$newmask>>2]|0; + $756 = HEAP32[$i>>2]|0; + $757 = 1 << $756; + $758 = $755 & $757; + $759 = ($758|0)!=(0); + if ($759) { + break; + } + $767 = HEAP32[$v>>2]|0; + $768 = HEAP32[$regNew>>2]|0; + $769 = HEAP32[$i>>2]|0; + $770 = (($768) + ($769))|0; + (_sqlite3VdbeAddOp2($767,28,0,$770)|0); + break L202; + } + } while(0); + $760 = HEAP32[$v>>2]|0; + $761 = HEAP32[$pTab>>2]|0; + $762 = HEAP32[$iDataCur>>2]|0; + $763 = HEAP32[$i>>2]|0; + $764 = HEAP32[$regNew>>2]|0; + $765 = HEAP32[$i>>2]|0; + $766 = (($764) + ($765))|0; + _sqlite3ExprCodeGetColumnOfTable($760,$761,$762,$763,$766); + } + } while(0); + $771 = HEAP32[$i>>2]|0; + $772 = (($771) + 1)|0; + HEAP32[$i>>2] = $772; + } + $773 = HEAP32[$tmask>>2]|0; + $774 = $773 & 1; + $775 = ($774|0)!=(0); + L215: do { + if ($775) { + $776 = HEAP32[$v>>2]|0; + $777 = HEAP32[$pTab>>2]|0; + $778 = HEAP32[$regNew>>2]|0; + _sqlite3TableAffinity($776,$777,$778); + $779 = HEAP32[$0>>2]|0; + $780 = HEAP32[$pTrigger>>2]|0; + $781 = HEAP32[$2>>2]|0; + $782 = HEAP32[$pTab>>2]|0; + $783 = HEAP32[$regOldRowid>>2]|0; + $784 = HEAP32[$4>>2]|0; + $785 = HEAP32[$labelContinue>>2]|0; + _sqlite3CodeRowTrigger($779,$780,110,$781,1,$782,$783,$784,$785); + $786 = HEAP32[$pPk>>2]|0; + $787 = ($786|0)!=(0|0); + $788 = HEAP32[$v>>2]|0; + $789 = HEAP32[$iDataCur>>2]|0; + $790 = HEAP32[$labelContinue>>2]|0; + if ($787) { + $791 = HEAP32[$regKey>>2]|0; + $792 = HEAP32[$nKey>>2]|0; + (_sqlite3VdbeAddOp4Int($788,65,$789,$790,$791,$792)|0); + } else { + $793 = HEAP32[$regOldRowid>>2]|0; + (_sqlite3VdbeAddOp3($788,67,$789,$790,$793)|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $794 = HEAP32[$i>>2]|0; + $795 = HEAP32[$pTab>>2]|0; + $796 = (($795) + 38|0); + $797 = HEAP16[$796>>1]|0; + $798 = $797 << 16 >> 16; + $799 = ($794|0)<($798|0); + if (!($799)) { + break L215; + } + $800 = HEAP32[$i>>2]|0; + $801 = HEAP32[$aXRef>>2]|0; + $802 = (($801) + ($800<<2)|0); + $803 = HEAP32[$802>>2]|0; + $804 = ($803|0)<(0); + do { + if ($804) { + $805 = HEAP32[$i>>2]|0; + $806 = HEAP32[$pTab>>2]|0; + $807 = (($806) + 36|0); + $808 = HEAP16[$807>>1]|0; + $809 = $808 << 16 >> 16; + $810 = ($805|0)!=($809|0); + if (!($810)) { + break; + } + $811 = HEAP32[$v>>2]|0; + $812 = HEAP32[$pTab>>2]|0; + $813 = HEAP32[$iDataCur>>2]|0; + $814 = HEAP32[$i>>2]|0; + $815 = HEAP32[$regNew>>2]|0; + $816 = HEAP32[$i>>2]|0; + $817 = (($815) + ($816))|0; + _sqlite3ExprCodeGetColumnOfTable($811,$812,$813,$814,$817); + } + } while(0); + $818 = HEAP32[$i>>2]|0; + $819 = (($818) + 1)|0; + HEAP32[$i>>2] = $819; + } + } + } while(0); + $820 = HEAP32[$isView>>2]|0; + $821 = ($820|0)!=(0); + do { + if (!($821)) { + HEAP32[$j1>>2] = 0; + HEAP32[$bReplace>>2] = 0; + $822 = HEAP32[$0>>2]|0; + $823 = HEAP32[$pTab>>2]|0; + $824 = HEAP32[$aRegIdx>>2]|0; + $825 = HEAP32[$iDataCur>>2]|0; + $826 = HEAP32[$iIdxCur>>2]|0; + $827 = HEAP32[$regNewRowid>>2]|0; + $828 = HEAP32[$regOldRowid>>2]|0; + $829 = HEAP8[$chngKey>>0]|0; + $830 = HEAP32[$4>>2]|0; + $831 = $830&255; + $832 = HEAP32[$labelContinue>>2]|0; + _sqlite3GenerateConstraintChecks($822,$823,$824,$825,$826,$827,$828,$829,$831,$832,$bReplace); + $833 = HEAP32[$hasFK>>2]|0; + $834 = ($833|0)!=(0); + if ($834) { + $835 = HEAP32[$0>>2]|0; + $836 = HEAP32[$pTab>>2]|0; + $837 = HEAP32[$regOldRowid>>2]|0; + $838 = HEAP32[$aXRef>>2]|0; + $839 = HEAP8[$chngKey>>0]|0; + $840 = $839&255; + _sqlite3FkCheck($835,$836,$837,0,$838,$840); + } + $841 = HEAP32[$bReplace>>2]|0; + $842 = ($841|0)!=(0); + if ($842) { + label = 158; + } else { + $843 = HEAP8[$chngKey>>0]|0; + $844 = $843&255; + $845 = ($844|0)!=(0); + if ($845) { + label = 158; + } + } + do { + if ((label|0) == 158) { + $846 = HEAP32[$pPk>>2]|0; + $847 = ($846|0)!=(0|0); + $848 = HEAP32[$v>>2]|0; + $849 = HEAP32[$iDataCur>>2]|0; + if ($847) { + $850 = HEAP32[$regKey>>2]|0; + $851 = HEAP32[$nKey>>2]|0; + $852 = (_sqlite3VdbeAddOp4Int($848,65,$849,0,$850,$851)|0); + HEAP32[$j1>>2] = $852; + break; + } else { + $853 = HEAP32[$regOldRowid>>2]|0; + $854 = (_sqlite3VdbeAddOp3($848,67,$849,0,$853)|0); + HEAP32[$j1>>2] = $854; + break; + } + } + } while(0); + $855 = HEAP32[$0>>2]|0; + $856 = HEAP32[$pTab>>2]|0; + $857 = HEAP32[$iDataCur>>2]|0; + $858 = HEAP32[$iIdxCur>>2]|0; + $859 = HEAP32[$aRegIdx>>2]|0; + _sqlite3GenerateRowIndexDelete($855,$856,$857,$858,$859); + $860 = HEAP32[$hasFK>>2]|0; + $861 = ($860|0)!=(0); + do { + if ($861) { + label = 164; + } else { + $862 = HEAP8[$chngKey>>0]|0; + $863 = $862&255; + $864 = ($863|0)!=(0); + if ($864) { + label = 164; + break; + } + $865 = HEAP32[$pPk>>2]|0; + $866 = ($865|0)!=(0|0); + if ($866) { + label = 164; + } + } + } while(0); + if ((label|0) == 164) { + $867 = HEAP32[$v>>2]|0; + $868 = HEAP32[$iDataCur>>2]|0; + (_sqlite3VdbeAddOp2($867,74,$868,0)|0); + } + $869 = HEAP32[$bReplace>>2]|0; + $870 = ($869|0)!=(0); + if ($870) { + label = 167; + } else { + $871 = HEAP8[$chngKey>>0]|0; + $872 = $871&255; + $873 = ($872|0)!=(0); + if ($873) { + label = 167; + } + } + if ((label|0) == 167) { + $874 = HEAP32[$v>>2]|0; + $875 = HEAP32[$j1>>2]|0; + _sqlite3VdbeJumpHere($874,$875); + } + $876 = HEAP32[$hasFK>>2]|0; + $877 = ($876|0)!=(0); + if ($877) { + $878 = HEAP32[$0>>2]|0; + $879 = HEAP32[$pTab>>2]|0; + $880 = HEAP32[$regNewRowid>>2]|0; + $881 = HEAP32[$aXRef>>2]|0; + $882 = HEAP8[$chngKey>>0]|0; + $883 = $882&255; + _sqlite3FkCheck($878,$879,0,$880,$881,$883); + } + $884 = HEAP32[$0>>2]|0; + $885 = HEAP32[$pTab>>2]|0; + $886 = HEAP32[$iDataCur>>2]|0; + $887 = HEAP32[$iIdxCur>>2]|0; + $888 = HEAP32[$regNewRowid>>2]|0; + $889 = HEAP32[$aRegIdx>>2]|0; + _sqlite3CompleteInsertion($884,$885,$886,$887,$888,$889,1,0,0); + $890 = HEAP32[$hasFK>>2]|0; + $891 = ($890|0)!=(0); + if (!($891)) { + break; + } + $892 = HEAP32[$0>>2]|0; + $893 = HEAP32[$pTab>>2]|0; + $894 = HEAP32[$2>>2]|0; + $895 = HEAP32[$regOldRowid>>2]|0; + $896 = HEAP32[$aXRef>>2]|0; + $897 = HEAP8[$chngKey>>0]|0; + $898 = $897&255; + _sqlite3FkActions($892,$893,$894,$895,$896,$898); + } + } while(0); + $899 = HEAP32[$db>>2]|0; + $900 = (($899) + 24|0); + $901 = HEAP32[$900>>2]|0; + $902 = $901 & 128; + $903 = ($902|0)!=(0); + do { + if ($903) { + $904 = HEAP32[$0>>2]|0; + $905 = (($904) + 412|0); + $906 = HEAP32[$905>>2]|0; + $907 = ($906|0)!=(0|0); + if ($907) { + break; + } + $908 = HEAP32[$v>>2]|0; + $909 = HEAP32[$regRowCount>>2]|0; + (_sqlite3VdbeAddOp2($908,37,$909,1)|0); + } + } while(0); + $910 = HEAP32[$0>>2]|0; + $911 = HEAP32[$pTrigger>>2]|0; + $912 = HEAP32[$2>>2]|0; + $913 = HEAP32[$pTab>>2]|0; + $914 = HEAP32[$regOldRowid>>2]|0; + $915 = HEAP32[$4>>2]|0; + $916 = HEAP32[$labelContinue>>2]|0; + _sqlite3CodeRowTrigger($910,$911,110,$912,2,$913,$914,$915,$916); + $917 = HEAP32[$okOnePass>>2]|0; + $918 = ($917|0)!=(0); + do { + if (!($918)) { + $919 = HEAP32[$pPk>>2]|0; + $920 = ($919|0)!=(0|0); + $921 = HEAP32[$v>>2]|0; + $922 = HEAP32[$labelContinue>>2]|0; + if ($920) { + _sqlite3VdbeResolveLabel($921,$922); + $923 = HEAP32[$v>>2]|0; + $924 = HEAP32[$iEph>>2]|0; + $925 = HEAP32[$addrTop>>2]|0; + (_sqlite3VdbeAddOp2($923,9,$924,$925)|0); + break; + } else { + (_sqlite3VdbeAddOp2($921,16,0,$922)|0); + break; + } + } + } while(0); + $926 = HEAP32[$v>>2]|0; + $927 = HEAP32[$labelBreak>>2]|0; + _sqlite3VdbeResolveLabel($926,$927); + HEAP32[$i>>2] = 0; + $928 = HEAP32[$pTab>>2]|0; + $929 = (($928) + 8|0); + $930 = HEAP32[$929>>2]|0; + HEAP32[$pIdx>>2] = $930; + while(1) { + $931 = HEAP32[$pIdx>>2]|0; + $932 = ($931|0)!=(0|0); + if (!($932)) { + break; + } + $933 = HEAP32[$i>>2]|0; + $934 = (($933) + 1)|0; + $935 = HEAP32[$aToOpen>>2]|0; + $936 = (($935) + ($934)|0); + $937 = HEAP8[$936>>0]|0; + $938 = ($937<<24>>24)!=(0); + if ($938) { + $939 = HEAP32[$v>>2]|0; + $940 = HEAP32[$iIdxCur>>2]|0; + $941 = HEAP32[$i>>2]|0; + $942 = (($940) + ($941))|0; + (_sqlite3VdbeAddOp2($939,58,$942,0)|0); + } + $943 = HEAP32[$pIdx>>2]|0; + $944 = (($943) + 20|0); + $945 = HEAP32[$944>>2]|0; + HEAP32[$pIdx>>2] = $945; + $946 = HEAP32[$i>>2]|0; + $947 = (($946) + 1)|0; + HEAP32[$i>>2] = $947; + } + $948 = HEAP32[$iDataCur>>2]|0; + $949 = HEAP32[$iIdxCur>>2]|0; + $950 = ($948|0)<($949|0); + if ($950) { + $951 = HEAP32[$v>>2]|0; + $952 = HEAP32[$iDataCur>>2]|0; + (_sqlite3VdbeAddOp2($951,58,$952,0)|0); + } + $953 = HEAP32[$0>>2]|0; + $954 = (($953) + 18|0); + $955 = HEAP8[$954>>0]|0; + $956 = $955&255; + $957 = ($956|0)==(0); + do { + if ($957) { + $958 = HEAP32[$0>>2]|0; + $959 = (($958) + 412|0); + $960 = HEAP32[$959>>2]|0; + $961 = ($960|0)==(0|0); + if (!($961)) { + break; + } + $962 = HEAP32[$0>>2]|0; + _sqlite3AutoincrementEnd($962); + } + } while(0); + $963 = HEAP32[$db>>2]|0; + $964 = (($963) + 24|0); + $965 = HEAP32[$964>>2]|0; + $966 = $965 & 128; + $967 = ($966|0)!=(0); + if (!($967)) { + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } + $968 = HEAP32[$0>>2]|0; + $969 = (($968) + 412|0); + $970 = HEAP32[$969>>2]|0; + $971 = ($970|0)!=(0|0); + if ($971) { + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } + $972 = HEAP32[$0>>2]|0; + $973 = (($972) + 18|0); + $974 = HEAP8[$973>>0]|0; + $975 = ($974<<24>>24)!=(0); + if ($975) { + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } + $976 = HEAP32[$v>>2]|0; + $977 = HEAP32[$regRowCount>>2]|0; + (_sqlite3VdbeAddOp2($976,35,$977,1)|0); + $978 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($978,1); + $979 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($979,0,0,30976,0)|0); + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } + else if ((label|0) == 193) { + _sqlite3AuthContextPop($sContext); + $980 = HEAP32[$db>>2]|0; + $981 = HEAP32[$aXRef>>2]|0; + _sqlite3DbFree($980,$981); + $982 = HEAP32[$db>>2]|0; + $983 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($982,$983); + $984 = HEAP32[$db>>2]|0; + $985 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($984,$985); + $986 = HEAP32[$db>>2]|0; + $987 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($986,$987); + STACKTOP = sp;return; + } +} +function _sqlite3Insert($pParse,$pTabList,$pSelect,$pColumn,$onError) { + $pParse = $pParse|0; + $pTabList = $pTabList|0; + $pSelect = $pSelect|0; + $pColumn = $pColumn|0; + $onError = $onError|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; + var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; + var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; + var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; + var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; + var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0; + var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0; + var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0; + var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0; + var $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0; + var $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0; + var $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0; + var $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0; + var $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0; + var $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0; + var $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0; + var $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0; + var $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0; + var $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0; + var $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aRegIdx = 0, $addrCont = 0, $addrInsTop = 0, $addrL = 0, $addrTop = 0, $appendFlag = 0, $bIdListInOrder = 0; + var $db = 0, $dest = 0, $endOfLoop = 0, $i = 0, $iDataCur = 0, $iDb = 0, $iIdxCur = 0, $iRegStore = 0, $idx = 0, $ipkColumn = 0, $isReplace = 0, $isView = 0, $j = 0, $j1 = 0, $j11 = 0, $nColumn = 0, $nHidden = 0, $nIdx = 0, $pDb = 0, $pIdx = 0; + var $pList = 0, $pOp = 0, $pTab = 0, $pTrigger = 0, $pVTab = 0, $rc = 0, $regAutoinc = 0, $regCols = 0, $regData = 0, $regFromSelect = 0, $regIns = 0, $regRec = 0, $regRowCount = 0, $regRowid = 0, $regTempRowid = 0, $regYield = 0, $sNC = 0, $srcTab = 0, $tmask = 0, $useTempTable = 0; + var $v = 0, $vararg_buffer9 = 0, $vararg_ptr1 = 0, $vararg_ptr12 = 0, $vararg_ptr2 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $withoutRowid = 0, $zDb = 0, $zTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 272|0; + $vararg_buffer9 = sp; + $0 = sp + 212|0; + $1 = sp + 216|0; + $2 = sp + 192|0; + $3 = sp + 188|0; + $4 = sp + 184|0; + $db = sp + 180|0; + $pTab = sp + 176|0; + $zTab = sp + 172|0; + $zDb = sp + 168|0; + $i = sp + 160|0; + $j = sp + 156|0; + $idx = sp + 152|0; + $v = sp + 148|0; + $pIdx = sp + 224|0; + $nColumn = sp + 164|0; + $nHidden = sp + 196|0; + $iDataCur = sp + 200|0; + $iIdxCur = sp + 204|0; + $ipkColumn = sp + 264|0; + $endOfLoop = sp + 260|0; + $srcTab = sp + 256|0; + $addrInsTop = sp + 252|0; + $addrCont = sp + 248|0; + $dest = sp + 228|0; + $iDb = sp + 220|0; + $pDb = sp + 208|0; + $useTempTable = sp + 271|0; + $appendFlag = sp + 268|0; + $withoutRowid = sp + 270|0; + $bIdListInOrder = sp + 269|0; + $pList = sp + 60|0; + $regFromSelect = sp + 52|0; + $regAutoinc = sp + 48|0; + $regRowCount = sp + 44|0; + $regIns = sp + 40|0; + $regRowid = sp + 36|0; + $regData = sp + 56|0; + $aRegIdx = sp + 24|0; + $isView = sp + 20|0; + $pTrigger = sp + 16|0; + $tmask = sp + 28|0; + $regYield = sp + 32|0; + $addrTop = sp + 140|0; + $rc = sp + 64|0; + $regRec = sp + 68|0; + $regTempRowid = sp + 72|0; + $addrL = sp + 76|0; + $sNC = sp + 80|0; + $nIdx = sp + 112|0; + $regCols = sp + 116|0; + $j1 = sp + 120|0; + $pOp = sp + 124|0; + $j11 = sp + 128|0; + $iRegStore = sp + 132|0; + $pVTab = sp + 136|0; + $isReplace = sp + 144|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTabList; + HEAP32[$2>>2] = $pSelect; + HEAP32[$3>>2] = $pColumn; + HEAP32[$4>>2] = $onError; + HEAP32[$nHidden>>2] = 0; + HEAP32[$iDataCur>>2] = 0; + HEAP32[$iIdxCur>>2] = 0; + HEAP32[$ipkColumn>>2] = -1; + HEAP32[$srcTab>>2] = 0; + HEAP32[$addrInsTop>>2] = 0; + HEAP32[$addrCont>>2] = 0; + HEAP8[$useTempTable>>0] = 0; + HEAP8[$appendFlag>>0] = 0; + HEAP8[$bIdListInOrder>>0] = 1; + HEAP32[$pList>>2] = 0; + HEAP32[$regFromSelect>>2] = 0; + HEAP32[$regAutoinc>>2] = 0; + HEAP32[$regRowCount>>2] = 0; + HEAP32[$aRegIdx>>2] = 0; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + ;HEAP32[$dest+0>>2]=0|0;HEAP32[$dest+4>>2]=0|0;HEAP32[$dest+8>>2]=0|0;HEAP32[$dest+12>>2]=0|0;HEAP32[$dest+16>>2]=0|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 64|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0); + L1: do { + if (!($10)) { + $11 = HEAP32[$db>>2]|0; + $12 = (($11) + 64|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = ($14|0)!=(0); + if (!($15)) { + $16 = HEAP32[$2>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = HEAP32[$2>>2]|0; + $19 = (($18) + 6|0); + $20 = HEAP16[$19>>1]|0; + $21 = $20&65535; + $22 = $21 & 128; + $23 = ($22|0)!=(0); + if ($23) { + $24 = HEAP32[$2>>2]|0; + $25 = (($24) + 52|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)==(0|0); + if ($27) { + $28 = HEAP32[$2>>2]|0; + $29 = HEAP32[$28>>2]|0; + HEAP32[$pList>>2] = $29; + $30 = HEAP32[$2>>2]|0; + HEAP32[$30>>2] = 0; + $31 = HEAP32[$db>>2]|0; + $32 = HEAP32[$2>>2]|0; + _sqlite3SelectDelete($31,$32); + HEAP32[$2>>2] = 0; + } + } + } + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 8|0); + $35 = (($34) + 8|0); + $36 = HEAP32[$35>>2]|0; + HEAP32[$zTab>>2] = $36; + $37 = HEAP32[$zTab>>2]|0; + $38 = ($37|0)==(0|0); + if (!($38)) { + $39 = HEAP32[$0>>2]|0; + $40 = HEAP32[$1>>2]|0; + $41 = (_sqlite3SrcListLookup($39,$40)|0); + HEAP32[$pTab>>2] = $41; + $42 = HEAP32[$pTab>>2]|0; + $43 = ($42|0)==(0|0); + if (!($43)) { + $44 = HEAP32[$db>>2]|0; + $45 = HEAP32[$pTab>>2]|0; + $46 = (($45) + 68|0); + $47 = HEAP32[$46>>2]|0; + $48 = (_sqlite3SchemaToIndex($44,$47)|0); + HEAP32[$iDb>>2] = $48; + $49 = HEAP32[$iDb>>2]|0; + $50 = HEAP32[$db>>2]|0; + $51 = (($50) + 16|0); + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + ($49<<4)|0); + HEAP32[$pDb>>2] = $53; + $54 = HEAP32[$pDb>>2]|0; + $55 = HEAP32[$54>>2]|0; + HEAP32[$zDb>>2] = $55; + $56 = HEAP32[$0>>2]|0; + $57 = HEAP32[$pTab>>2]|0; + $58 = HEAP32[$57>>2]|0; + $59 = HEAP32[$zDb>>2]|0; + $60 = (_sqlite3AuthCheck($56,18,$58,0,$59)|0); + $61 = ($60|0)!=(0); + if (!($61)) { + $62 = HEAP32[$pTab>>2]|0; + $63 = (($62) + 44|0); + $64 = HEAP8[$63>>0]|0; + $65 = $64&255; + $66 = $65 & 32; + $67 = ($66|0)==(0); + $68 = $67 ^ 1; + $69 = $68&1; + $70 = $69&255; + HEAP8[$withoutRowid>>0] = $70; + $71 = HEAP32[$0>>2]|0; + $72 = HEAP32[$pTab>>2]|0; + $73 = (_sqlite3TriggersExist($71,$72,108,0,$tmask)|0); + HEAP32[$pTrigger>>2] = $73; + $74 = HEAP32[$pTab>>2]|0; + $75 = (($74) + 12|0); + $76 = HEAP32[$75>>2]|0; + $77 = ($76|0)!=(0|0); + $78 = $77&1; + HEAP32[$isView>>2] = $78; + $79 = HEAP32[$0>>2]|0; + $80 = HEAP32[$pTab>>2]|0; + $81 = (_sqlite3ViewGetColumnNames($79,$80)|0); + $82 = ($81|0)!=(0); + if (!($82)) { + $83 = HEAP32[$0>>2]|0; + $84 = HEAP32[$pTab>>2]|0; + $85 = HEAP32[$tmask>>2]|0; + $86 = (_sqlite3IsReadOnly($83,$84,$85)|0); + $87 = ($86|0)!=(0); + if (!($87)) { + $88 = HEAP32[$0>>2]|0; + $89 = (_sqlite3GetVdbe($88)|0); + HEAP32[$v>>2] = $89; + $90 = HEAP32[$v>>2]|0; + $91 = ($90|0)==(0|0); + if (!($91)) { + $92 = HEAP32[$0>>2]|0; + $93 = (($92) + 18|0); + $94 = HEAP8[$93>>0]|0; + $95 = $94&255; + $96 = ($95|0)==(0); + if ($96) { + $97 = HEAP32[$v>>2]|0; + _sqlite3VdbeCountChanges($97); + } + $98 = HEAP32[$0>>2]|0; + $99 = HEAP32[$2>>2]|0; + $100 = ($99|0)!=(0|0); + if ($100) { + $104 = 1; + } else { + $101 = HEAP32[$pTrigger>>2]|0; + $102 = ($101|0)!=(0|0); + $104 = $102; + } + $103 = $104&1; + $105 = HEAP32[$iDb>>2]|0; + _sqlite3BeginWriteOperation($98,$103,$105); + $106 = HEAP32[$3>>2]|0; + $107 = ($106|0)==(0|0); + if ($107) { + $108 = HEAP32[$0>>2]|0; + $109 = HEAP32[$pTab>>2]|0; + $110 = HEAP32[$2>>2]|0; + $111 = HEAP32[$4>>2]|0; + $112 = HEAP32[$iDb>>2]|0; + $113 = (_xferOptimization($108,$109,$110,$111,$112)|0); + $114 = ($113|0)!=(0); + if (!($114)) { + label = 19; + } + } else { + label = 19; + } + L23: do { + if ((label|0) == 19) { + $115 = HEAP32[$0>>2]|0; + $116 = HEAP32[$iDb>>2]|0; + $117 = HEAP32[$pTab>>2]|0; + $118 = (_autoIncBegin($115,$116,$117)|0); + HEAP32[$regAutoinc>>2] = $118; + $119 = HEAP32[$0>>2]|0; + $120 = (($119) + 72|0); + $121 = HEAP32[$120>>2]|0; + $122 = (($121) + 1)|0; + HEAP32[$regIns>>2] = $122; + HEAP32[$regRowid>>2] = $122; + $123 = HEAP32[$pTab>>2]|0; + $124 = (($123) + 38|0); + $125 = HEAP16[$124>>1]|0; + $126 = $125 << 16 >> 16; + $127 = (($126) + 1)|0; + $128 = HEAP32[$0>>2]|0; + $129 = (($128) + 72|0); + $130 = HEAP32[$129>>2]|0; + $131 = (($130) + ($127))|0; + HEAP32[$129>>2] = $131; + $132 = HEAP32[$pTab>>2]|0; + $133 = (($132) + 44|0); + $134 = HEAP8[$133>>0]|0; + $135 = $134&255; + $136 = $135 & 16; + $137 = ($136|0)!=(0); + if ($137) { + $138 = HEAP32[$regRowid>>2]|0; + $139 = (($138) + 1)|0; + HEAP32[$regRowid>>2] = $139; + $140 = HEAP32[$0>>2]|0; + $141 = (($140) + 72|0); + $142 = HEAP32[$141>>2]|0; + $143 = (($142) + 1)|0; + HEAP32[$141>>2] = $143; + } + $144 = HEAP32[$regRowid>>2]|0; + $145 = (($144) + 1)|0; + HEAP32[$regData>>2] = $145; + $146 = HEAP32[$3>>2]|0; + $147 = ($146|0)!=(0|0); + L28: do { + if ($147) { + HEAP32[$i>>2] = 0; + while(1) { + $148 = HEAP32[$i>>2]|0; + $149 = HEAP32[$3>>2]|0; + $150 = (($149) + 4|0); + $151 = HEAP32[$150>>2]|0; + $152 = ($148|0)<($151|0); + if (!($152)) { + break; + } + $153 = HEAP32[$i>>2]|0; + $154 = HEAP32[$3>>2]|0; + $155 = HEAP32[$154>>2]|0; + $156 = (($155) + ($153<<3)|0); + $157 = (($156) + 4|0); + HEAP32[$157>>2] = -1; + $158 = HEAP32[$i>>2]|0; + $159 = (($158) + 1)|0; + HEAP32[$i>>2] = $159; + } + HEAP32[$i>>2] = 0; + while(1) { + $160 = HEAP32[$i>>2]|0; + $161 = HEAP32[$3>>2]|0; + $162 = (($161) + 4|0); + $163 = HEAP32[$162>>2]|0; + $164 = ($160|0)<($163|0); + if (!($164)) { + break L28; + } + HEAP32[$j>>2] = 0; + while(1) { + $165 = HEAP32[$j>>2]|0; + $166 = HEAP32[$pTab>>2]|0; + $167 = (($166) + 38|0); + $168 = HEAP16[$167>>1]|0; + $169 = $168 << 16 >> 16; + $170 = ($165|0)<($169|0); + if (!($170)) { + break; + } + $171 = HEAP32[$i>>2]|0; + $172 = HEAP32[$3>>2]|0; + $173 = HEAP32[$172>>2]|0; + $174 = (($173) + ($171<<3)|0); + $175 = HEAP32[$174>>2]|0; + $176 = HEAP32[$j>>2]|0; + $177 = HEAP32[$pTab>>2]|0; + $178 = (($177) + 4|0); + $179 = HEAP32[$178>>2]|0; + $180 = (($179) + (($176*24)|0)|0); + $181 = HEAP32[$180>>2]|0; + $182 = (_sqlite3_stricmp($175,$181)|0); + $183 = ($182|0)==(0); + $184 = HEAP32[$j>>2]|0; + if ($183) { + label = 30; + break; + } + $200 = (($184) + 1)|0; + HEAP32[$j>>2] = $200; + } + do { + if ((label|0) == 30) { + label = 0; + $185 = HEAP32[$i>>2]|0; + $186 = HEAP32[$3>>2]|0; + $187 = HEAP32[$186>>2]|0; + $188 = (($187) + ($185<<3)|0); + $189 = (($188) + 4|0); + HEAP32[$189>>2] = $184; + $190 = HEAP32[$i>>2]|0; + $191 = HEAP32[$j>>2]|0; + $192 = ($190|0)!=($191|0); + if ($192) { + HEAP8[$bIdListInOrder>>0] = 0; + } + $193 = HEAP32[$j>>2]|0; + $194 = HEAP32[$pTab>>2]|0; + $195 = (($194) + 36|0); + $196 = HEAP16[$195>>1]|0; + $197 = $196 << 16 >> 16; + $198 = ($193|0)==($197|0); + if (!($198)) { + break; + } + $199 = HEAP32[$i>>2]|0; + HEAP32[$ipkColumn>>2] = $199; + } + } while(0); + $201 = HEAP32[$j>>2]|0; + $202 = HEAP32[$pTab>>2]|0; + $203 = (($202) + 38|0); + $204 = HEAP16[$203>>1]|0; + $205 = $204 << 16 >> 16; + $206 = ($201|0)>=($205|0); + if ($206) { + $207 = HEAP32[$i>>2]|0; + $208 = HEAP32[$3>>2]|0; + $209 = HEAP32[$208>>2]|0; + $210 = (($209) + ($207<<3)|0); + $211 = HEAP32[$210>>2]|0; + $212 = (_sqlite3IsRowid($211)|0); + $213 = ($212|0)!=(0); + if (!($213)) { + break; + } + $214 = HEAP8[$withoutRowid>>0]|0; + $215 = ($214<<24>>24)!=(0); + if ($215) { + break; + } + $216 = HEAP32[$i>>2]|0; + HEAP32[$ipkColumn>>2] = $216; + HEAP8[$bIdListInOrder>>0] = 0; + } + $226 = HEAP32[$i>>2]|0; + $227 = (($226) + 1)|0; + HEAP32[$i>>2] = $227; + } + $217 = HEAP32[$0>>2]|0; + $218 = HEAP32[$1>>2]|0; + $219 = HEAP32[$i>>2]|0; + $220 = HEAP32[$3>>2]|0; + $221 = HEAP32[$220>>2]|0; + $222 = (($221) + ($219<<3)|0); + $223 = HEAP32[$222>>2]|0; + HEAP32[$vararg_buffer9>>2] = $218; + $vararg_ptr1 = (($vararg_buffer9) + 4|0); + HEAP32[$vararg_ptr1>>2] = 0; + $vararg_ptr2 = (($vararg_buffer9) + 8|0); + HEAP32[$vararg_ptr2>>2] = $223; + _sqlite3ErrorMsg($217,29824,$vararg_buffer9); + $224 = HEAP32[$0>>2]|0; + $225 = (($224) + 17|0); + HEAP8[$225>>0] = 1; + break L1; + } + } while(0); + $228 = HEAP32[$2>>2]|0; + $229 = ($228|0)!=(0|0); + L55: do { + if ($229) { + $230 = HEAP32[$0>>2]|0; + $231 = (($230) + 72|0); + $232 = HEAP32[$231>>2]|0; + $233 = (($232) + 1)|0; + HEAP32[$231>>2] = $233; + HEAP32[$regYield>>2] = $233; + $234 = HEAP32[$v>>2]|0; + $235 = (_sqlite3VdbeCurrentAddr($234)|0); + $236 = (($235) + 1)|0; + HEAP32[$addrTop>>2] = $236; + $237 = HEAP32[$v>>2]|0; + $238 = HEAP32[$regYield>>2]|0; + $239 = HEAP32[$addrTop>>2]|0; + (_sqlite3VdbeAddOp3($237,20,$238,0,$239)|0); + $240 = HEAP32[$regYield>>2]|0; + _sqlite3SelectDestInit($dest,13,$240); + $241 = HEAP8[$bIdListInOrder>>0]|0; + $242 = $241&255; + $243 = ($242|0)!=(0); + $244 = HEAP32[$regData>>2]|0; + $245 = $243 ? $244 : 0; + $246 = (($dest) + 8|0); + HEAP32[$246>>2] = $245; + $247 = HEAP32[$pTab>>2]|0; + $248 = (($247) + 38|0); + $249 = HEAP16[$248>>1]|0; + $250 = $249 << 16 >> 16; + $251 = (($dest) + 12|0); + HEAP32[$251>>2] = $250; + $252 = HEAP32[$0>>2]|0; + $253 = HEAP32[$2>>2]|0; + $254 = (_sqlite3Select($252,$253,$dest)|0); + HEAP32[$rc>>2] = $254; + $255 = (($dest) + 8|0); + $256 = HEAP32[$255>>2]|0; + HEAP32[$regFromSelect>>2] = $256; + $257 = HEAP32[$rc>>2]|0; + $258 = ($257|0)!=(0); + if ($258) { + break L1; + } + $259 = HEAP32[$db>>2]|0; + $260 = (($259) + 64|0); + $261 = HEAP8[$260>>0]|0; + $262 = $261&255; + $263 = ($262|0)!=(0); + if ($263) { + break L1; + } + $264 = HEAP32[$v>>2]|0; + $265 = HEAP32[$regYield>>2]|0; + (_sqlite3VdbeAddOp1($264,21,$265)|0); + $266 = HEAP32[$v>>2]|0; + $267 = HEAP32[$addrTop>>2]|0; + $268 = (($267) - 1)|0; + _sqlite3VdbeJumpHere($266,$268); + $269 = HEAP32[$2>>2]|0; + $270 = HEAP32[$269>>2]|0; + $271 = HEAP32[$270>>2]|0; + HEAP32[$nColumn>>2] = $271; + $272 = HEAP32[$pTrigger>>2]|0; + $273 = ($272|0)!=(0|0); + if ($273) { + label = 46; + } else { + $274 = HEAP32[$0>>2]|0; + $275 = HEAP32[$iDb>>2]|0; + $276 = HEAP32[$pTab>>2]|0; + $277 = (_readsTable($274,$275,$276)|0); + $278 = ($277|0)!=(0); + if ($278) { + label = 46; + } + } + if ((label|0) == 46) { + HEAP8[$useTempTable>>0] = 1; + } + $279 = HEAP8[$useTempTable>>0]|0; + $280 = ($279<<24>>24)!=(0); + if (!($280)) { + break; + } + $281 = HEAP32[$0>>2]|0; + $282 = (($281) + 68|0); + $283 = HEAP32[$282>>2]|0; + $284 = (($283) + 1)|0; + HEAP32[$282>>2] = $284; + HEAP32[$srcTab>>2] = $283; + $285 = HEAP32[$0>>2]|0; + $286 = (_sqlite3GetTempReg($285)|0); + HEAP32[$regRec>>2] = $286; + $287 = HEAP32[$0>>2]|0; + $288 = (_sqlite3GetTempReg($287)|0); + HEAP32[$regTempRowid>>2] = $288; + $289 = HEAP32[$v>>2]|0; + $290 = HEAP32[$srcTab>>2]|0; + $291 = HEAP32[$nColumn>>2]|0; + (_sqlite3VdbeAddOp2($289,55,$290,$291)|0); + $292 = HEAP32[$v>>2]|0; + $293 = (($dest) + 4|0); + $294 = HEAP32[$293>>2]|0; + $295 = (_sqlite3VdbeAddOp1($292,22,$294)|0); + HEAP32[$addrL>>2] = $295; + $296 = HEAP32[$v>>2]|0; + $297 = HEAP32[$regFromSelect>>2]|0; + $298 = HEAP32[$nColumn>>2]|0; + $299 = HEAP32[$regRec>>2]|0; + (_sqlite3VdbeAddOp3($296,48,$297,$298,$299)|0); + $300 = HEAP32[$v>>2]|0; + $301 = HEAP32[$srcTab>>2]|0; + $302 = HEAP32[$regTempRowid>>2]|0; + (_sqlite3VdbeAddOp2($300,69,$301,$302)|0); + $303 = HEAP32[$v>>2]|0; + $304 = HEAP32[$srcTab>>2]|0; + $305 = HEAP32[$regRec>>2]|0; + $306 = HEAP32[$regTempRowid>>2]|0; + (_sqlite3VdbeAddOp3($303,70,$304,$305,$306)|0); + $307 = HEAP32[$v>>2]|0; + $308 = HEAP32[$addrL>>2]|0; + (_sqlite3VdbeAddOp2($307,16,0,$308)|0); + $309 = HEAP32[$v>>2]|0; + $310 = HEAP32[$addrL>>2]|0; + _sqlite3VdbeJumpHere($309,$310); + $311 = HEAP32[$0>>2]|0; + $312 = HEAP32[$regRec>>2]|0; + _sqlite3ReleaseTempReg($311,$312); + $313 = HEAP32[$0>>2]|0; + $314 = HEAP32[$regTempRowid>>2]|0; + _sqlite3ReleaseTempReg($313,$314); + } else { + ;HEAP32[$sNC+0>>2]=0|0;HEAP32[$sNC+4>>2]=0|0;HEAP32[$sNC+8>>2]=0|0;HEAP32[$sNC+12>>2]=0|0;HEAP32[$sNC+16>>2]=0|0;HEAP32[$sNC+20>>2]=0|0;HEAP32[$sNC+24>>2]=0|0;HEAP32[$sNC+28>>2]=0|0; + $315 = HEAP32[$0>>2]|0; + HEAP32[$sNC>>2] = $315; + HEAP32[$srcTab>>2] = -1; + $316 = HEAP32[$pList>>2]|0; + $317 = ($316|0)!=(0|0); + if ($317) { + $318 = HEAP32[$pList>>2]|0; + $319 = HEAP32[$318>>2]|0; + $320 = $319; + } else { + $320 = 0; + } + HEAP32[$nColumn>>2] = $320; + HEAP32[$i>>2] = 0; + while(1) { + $321 = HEAP32[$i>>2]|0; + $322 = HEAP32[$nColumn>>2]|0; + $323 = ($321|0)<($322|0); + if (!($323)) { + break L55; + } + $324 = HEAP32[$i>>2]|0; + $325 = HEAP32[$pList>>2]|0; + $326 = (($325) + 4|0); + $327 = HEAP32[$326>>2]|0; + $328 = (($327) + (($324*20)|0)|0); + $329 = HEAP32[$328>>2]|0; + $330 = (_sqlite3ResolveExprNames($sNC,$329)|0); + $331 = ($330|0)!=(0); + if ($331) { + break L1; + } + $332 = HEAP32[$i>>2]|0; + $333 = (($332) + 1)|0; + HEAP32[$i>>2] = $333; + } + } + } while(0); + $334 = HEAP32[$3>>2]|0; + $335 = ($334|0)==(0|0); + if ($335) { + $336 = HEAP32[$nColumn>>2]|0; + $337 = ($336|0)>(0); + if ($337) { + $338 = HEAP32[$pTab>>2]|0; + $339 = (($338) + 36|0); + $340 = HEAP16[$339>>1]|0; + $341 = $340 << 16 >> 16; + HEAP32[$ipkColumn>>2] = $341; + } + } + $342 = HEAP32[$pTab>>2]|0; + $343 = (($342) + 44|0); + $344 = HEAP8[$343>>0]|0; + $345 = $344&255; + $346 = $345 & 16; + $347 = ($346|0)!=(0); + L78: do { + if ($347) { + HEAP32[$i>>2] = 0; + while(1) { + $348 = HEAP32[$i>>2]|0; + $349 = HEAP32[$pTab>>2]|0; + $350 = (($349) + 38|0); + $351 = HEAP16[$350>>1]|0; + $352 = $351 << 16 >> 16; + $353 = ($348|0)<($352|0); + if (!($353)) { + break L78; + } + $354 = HEAP32[$i>>2]|0; + $355 = HEAP32[$pTab>>2]|0; + $356 = (($355) + 4|0); + $357 = HEAP32[$356>>2]|0; + $358 = (($357) + (($354*24)|0)|0); + $359 = (($358) + 23|0); + $360 = HEAP8[$359>>0]|0; + $361 = $360&255; + $362 = $361 & 2; + $363 = ($362|0)!=(0); + $364 = $363 ? 1 : 0; + $365 = HEAP32[$nHidden>>2]|0; + $366 = (($365) + ($364))|0; + HEAP32[$nHidden>>2] = $366; + $367 = HEAP32[$i>>2]|0; + $368 = (($367) + 1)|0; + HEAP32[$i>>2] = $368; + } + } + } while(0); + $369 = HEAP32[$3>>2]|0; + $370 = ($369|0)==(0|0); + do { + if ($370) { + $371 = HEAP32[$nColumn>>2]|0; + $372 = ($371|0)!=(0); + if (!($372)) { + break; + } + $373 = HEAP32[$nColumn>>2]|0; + $374 = HEAP32[$pTab>>2]|0; + $375 = (($374) + 38|0); + $376 = HEAP16[$375>>1]|0; + $377 = $376 << 16 >> 16; + $378 = HEAP32[$nHidden>>2]|0; + $379 = (($377) - ($378))|0; + $380 = ($373|0)!=($379|0); + if (!($380)) { + break; + } + $381 = HEAP32[$0>>2]|0; + $382 = HEAP32[$1>>2]|0; + $383 = HEAP32[$pTab>>2]|0; + $384 = (($383) + 38|0); + $385 = HEAP16[$384>>1]|0; + $386 = $385 << 16 >> 16; + $387 = HEAP32[$nHidden>>2]|0; + $388 = (($386) - ($387))|0; + $389 = HEAP32[$nColumn>>2]|0; + HEAP32[$vararg_buffer9>>2] = $382; + $vararg_ptr6 = (($vararg_buffer9) + 4|0); + HEAP32[$vararg_ptr6>>2] = 0; + $vararg_ptr7 = (($vararg_buffer9) + 8|0); + HEAP32[$vararg_ptr7>>2] = $388; + $vararg_ptr8 = (($vararg_buffer9) + 12|0); + HEAP32[$vararg_ptr8>>2] = $389; + _sqlite3ErrorMsg($381,29856,$vararg_buffer9); + break L1; + } + } while(0); + $390 = HEAP32[$3>>2]|0; + $391 = ($390|0)!=(0|0); + do { + if ($391) { + $392 = HEAP32[$nColumn>>2]|0; + $393 = HEAP32[$3>>2]|0; + $394 = (($393) + 4|0); + $395 = HEAP32[$394>>2]|0; + $396 = ($392|0)!=($395|0); + if (!($396)) { + break; + } + $397 = HEAP32[$0>>2]|0; + $398 = HEAP32[$nColumn>>2]|0; + $399 = HEAP32[$3>>2]|0; + $400 = (($399) + 4|0); + $401 = HEAP32[$400>>2]|0; + HEAP32[$vararg_buffer9>>2] = $398; + $vararg_ptr12 = (($vararg_buffer9) + 4|0); + HEAP32[$vararg_ptr12>>2] = $401; + _sqlite3ErrorMsg($397,29912,$vararg_buffer9); + break L1; + } + } while(0); + $402 = HEAP32[$db>>2]|0; + $403 = (($402) + 24|0); + $404 = HEAP32[$403>>2]|0; + $405 = $404 & 128; + $406 = ($405|0)!=(0); + if ($406) { + $407 = HEAP32[$0>>2]|0; + $408 = (($407) + 72|0); + $409 = HEAP32[$408>>2]|0; + $410 = (($409) + 1)|0; + HEAP32[$408>>2] = $410; + HEAP32[$regRowCount>>2] = $410; + $411 = HEAP32[$v>>2]|0; + $412 = HEAP32[$regRowCount>>2]|0; + (_sqlite3VdbeAddOp2($411,25,0,$412)|0); + } + $413 = HEAP32[$isView>>2]|0; + $414 = ($413|0)!=(0); + L96: do { + if (!($414)) { + $415 = HEAP32[$0>>2]|0; + $416 = HEAP32[$pTab>>2]|0; + $417 = (_sqlite3OpenTableAndIndices($415,$416,53,-1,0,$iDataCur,$iIdxCur)|0); + HEAP32[$nIdx>>2] = $417; + $418 = HEAP32[$db>>2]|0; + $419 = HEAP32[$nIdx>>2]|0; + $420 = (($419) + 1)|0; + $421 = $420<<2; + $422 = (_sqlite3DbMallocRaw($418,$421)|0); + HEAP32[$aRegIdx>>2] = $422; + $423 = HEAP32[$aRegIdx>>2]|0; + $424 = ($423|0)==(0|0); + if ($424) { + break L1; + } + HEAP32[$i>>2] = 0; + while(1) { + $425 = HEAP32[$i>>2]|0; + $426 = HEAP32[$nIdx>>2]|0; + $427 = ($425|0)<($426|0); + if (!($427)) { + break L96; + } + $428 = HEAP32[$0>>2]|0; + $429 = (($428) + 72|0); + $430 = HEAP32[$429>>2]|0; + $431 = (($430) + 1)|0; + HEAP32[$429>>2] = $431; + $432 = HEAP32[$i>>2]|0; + $433 = HEAP32[$aRegIdx>>2]|0; + $434 = (($433) + ($432<<2)|0); + HEAP32[$434>>2] = $431; + $435 = HEAP32[$i>>2]|0; + $436 = (($435) + 1)|0; + HEAP32[$i>>2] = $436; + } + } + } while(0); + $437 = HEAP8[$useTempTable>>0]|0; + $438 = ($437<<24>>24)!=(0); + do { + if ($438) { + $439 = HEAP32[$v>>2]|0; + $440 = HEAP32[$srcTab>>2]|0; + $441 = (_sqlite3VdbeAddOp1($439,105,$440)|0); + HEAP32[$addrInsTop>>2] = $441; + $442 = HEAP32[$v>>2]|0; + $443 = (_sqlite3VdbeCurrentAddr($442)|0); + HEAP32[$addrCont>>2] = $443; + } else { + $444 = HEAP32[$2>>2]|0; + $445 = ($444|0)!=(0|0); + if (!($445)) { + break; + } + $446 = HEAP32[$v>>2]|0; + $447 = (($dest) + 4|0); + $448 = HEAP32[$447>>2]|0; + $449 = (_sqlite3VdbeAddOp1($446,22,$448)|0); + HEAP32[$addrCont>>2] = $449; + HEAP32[$addrInsTop>>2] = $449; + } + } while(0); + $450 = HEAP32[$v>>2]|0; + $451 = (_sqlite3VdbeMakeLabel($450)|0); + HEAP32[$endOfLoop>>2] = $451; + $452 = HEAP32[$tmask>>2]|0; + $453 = $452 & 1; + $454 = ($453|0)!=(0); + if ($454) { + $455 = HEAP32[$0>>2]|0; + $456 = HEAP32[$pTab>>2]|0; + $457 = (($456) + 38|0); + $458 = HEAP16[$457>>1]|0; + $459 = $458 << 16 >> 16; + $460 = (($459) + 1)|0; + $461 = (_sqlite3GetTempRange($455,$460)|0); + HEAP32[$regCols>>2] = $461; + $462 = HEAP32[$ipkColumn>>2]|0; + $463 = ($462|0)<(0); + if ($463) { + $464 = HEAP32[$v>>2]|0; + $465 = HEAP32[$regCols>>2]|0; + (_sqlite3VdbeAddOp2($464,25,-1,$465)|0); + } else { + $466 = HEAP8[$useTempTable>>0]|0; + $467 = ($466<<24>>24)!=(0); + if ($467) { + $468 = HEAP32[$v>>2]|0; + $469 = HEAP32[$srcTab>>2]|0; + $470 = HEAP32[$ipkColumn>>2]|0; + $471 = HEAP32[$regCols>>2]|0; + (_sqlite3VdbeAddOp3($468,46,$469,$470,$471)|0); + } else { + $472 = HEAP32[$0>>2]|0; + $473 = HEAP32[$ipkColumn>>2]|0; + $474 = HEAP32[$pList>>2]|0; + $475 = (($474) + 4|0); + $476 = HEAP32[$475>>2]|0; + $477 = (($476) + (($473*20)|0)|0); + $478 = HEAP32[$477>>2]|0; + $479 = HEAP32[$regCols>>2]|0; + _sqlite3ExprCode($472,$478,$479); + } + $480 = HEAP32[$v>>2]|0; + $481 = HEAP32[$regCols>>2]|0; + $482 = (_sqlite3VdbeAddOp1($480,77,$481)|0); + HEAP32[$j1>>2] = $482; + $483 = HEAP32[$v>>2]|0; + $484 = HEAP32[$regCols>>2]|0; + (_sqlite3VdbeAddOp2($483,25,-1,$484)|0); + $485 = HEAP32[$v>>2]|0; + $486 = HEAP32[$j1>>2]|0; + _sqlite3VdbeJumpHere($485,$486); + $487 = HEAP32[$v>>2]|0; + $488 = HEAP32[$regCols>>2]|0; + (_sqlite3VdbeAddOp1($487,38,$488)|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $489 = HEAP32[$i>>2]|0; + $490 = HEAP32[$pTab>>2]|0; + $491 = (($490) + 38|0); + $492 = HEAP16[$491>>1]|0; + $493 = $492 << 16 >> 16; + $494 = ($489|0)<($493|0); + if (!($494)) { + break; + } + $495 = HEAP32[$3>>2]|0; + $496 = ($495|0)==(0|0); + L121: do { + if ($496) { + $497 = HEAP32[$i>>2]|0; + HEAP32[$j>>2] = $497; + } else { + HEAP32[$j>>2] = 0; + while(1) { + $498 = HEAP32[$j>>2]|0; + $499 = HEAP32[$3>>2]|0; + $500 = (($499) + 4|0); + $501 = HEAP32[$500>>2]|0; + $502 = ($498|0)<($501|0); + if (!($502)) { + break L121; + } + $503 = HEAP32[$j>>2]|0; + $504 = HEAP32[$3>>2]|0; + $505 = HEAP32[$504>>2]|0; + $506 = (($505) + ($503<<3)|0); + $507 = (($506) + 4|0); + $508 = HEAP32[$507>>2]|0; + $509 = HEAP32[$i>>2]|0; + $510 = ($508|0)==($509|0); + if ($510) { + break L121; + } + $511 = HEAP32[$j>>2]|0; + $512 = (($511) + 1)|0; + HEAP32[$j>>2] = $512; + } + } + } while(0); + $513 = HEAP8[$useTempTable>>0]|0; + $514 = ($513<<24>>24)!=(0); + if ($514) { + label = 97; + } else { + $515 = HEAP32[$pList>>2]|0; + $516 = ($515|0)!=(0|0); + if ($516) { + label = 97; + } else { + label = 99; + } + } + do { + if ((label|0) == 97) { + label = 0; + $517 = HEAP32[$3>>2]|0; + $518 = ($517|0)!=(0|0); + if ($518) { + $519 = HEAP32[$j>>2]|0; + $520 = HEAP32[$3>>2]|0; + $521 = (($520) + 4|0); + $522 = HEAP32[$521>>2]|0; + $523 = ($519|0)>=($522|0); + if ($523) { + label = 99; + break; + } + } + $536 = HEAP8[$useTempTable>>0]|0; + $537 = ($536<<24>>24)!=(0); + if ($537) { + $538 = HEAP32[$v>>2]|0; + $539 = HEAP32[$srcTab>>2]|0; + $540 = HEAP32[$j>>2]|0; + $541 = HEAP32[$regCols>>2]|0; + $542 = HEAP32[$i>>2]|0; + $543 = (($541) + ($542))|0; + $544 = (($543) + 1)|0; + (_sqlite3VdbeAddOp3($538,46,$539,$540,$544)|0); + break; + } else { + $545 = HEAP32[$0>>2]|0; + $546 = HEAP32[$j>>2]|0; + $547 = HEAP32[$pList>>2]|0; + $548 = (($547) + 4|0); + $549 = HEAP32[$548>>2]|0; + $550 = (($549) + (($546*20)|0)|0); + $551 = HEAP32[$550>>2]|0; + $552 = HEAP32[$regCols>>2]|0; + $553 = HEAP32[$i>>2]|0; + $554 = (($552) + ($553))|0; + $555 = (($554) + 1)|0; + _sqlite3ExprCodeAndCache($545,$551,$555); + break; + } + } + } while(0); + if ((label|0) == 99) { + label = 0; + $524 = HEAP32[$0>>2]|0; + $525 = HEAP32[$i>>2]|0; + $526 = HEAP32[$pTab>>2]|0; + $527 = (($526) + 4|0); + $528 = HEAP32[$527>>2]|0; + $529 = (($528) + (($525*24)|0)|0); + $530 = (($529) + 4|0); + $531 = HEAP32[$530>>2]|0; + $532 = HEAP32[$regCols>>2]|0; + $533 = HEAP32[$i>>2]|0; + $534 = (($532) + ($533))|0; + $535 = (($534) + 1)|0; + _sqlite3ExprCode($524,$531,$535); + } + $556 = HEAP32[$i>>2]|0; + $557 = (($556) + 1)|0; + HEAP32[$i>>2] = $557; + } + $558 = HEAP32[$isView>>2]|0; + $559 = ($558|0)!=(0); + if (!($559)) { + $560 = HEAP32[$v>>2]|0; + $561 = HEAP32[$pTab>>2]|0; + $562 = HEAP32[$regCols>>2]|0; + $563 = (($562) + 1)|0; + _sqlite3TableAffinity($560,$561,$563); + } + $564 = HEAP32[$0>>2]|0; + $565 = HEAP32[$pTrigger>>2]|0; + $566 = HEAP32[$pTab>>2]|0; + $567 = HEAP32[$regCols>>2]|0; + $568 = HEAP32[$pTab>>2]|0; + $569 = (($568) + 38|0); + $570 = HEAP16[$569>>1]|0; + $571 = $570 << 16 >> 16; + $572 = (($567) - ($571))|0; + $573 = (($572) - 1)|0; + $574 = HEAP32[$4>>2]|0; + $575 = HEAP32[$endOfLoop>>2]|0; + _sqlite3CodeRowTrigger($564,$565,108,0,1,$566,$573,$574,$575); + $576 = HEAP32[$0>>2]|0; + $577 = HEAP32[$regCols>>2]|0; + $578 = HEAP32[$pTab>>2]|0; + $579 = (($578) + 38|0); + $580 = HEAP16[$579>>1]|0; + $581 = $580 << 16 >> 16; + $582 = (($581) + 1)|0; + _sqlite3ReleaseTempRange($576,$577,$582); + } + $583 = HEAP32[$isView>>2]|0; + $584 = ($583|0)!=(0); + do { + if (!($584)) { + $585 = HEAP32[$pTab>>2]|0; + $586 = (($585) + 44|0); + $587 = HEAP8[$586>>0]|0; + $588 = $587&255; + $589 = $588 & 16; + $590 = ($589|0)!=(0); + if ($590) { + $591 = HEAP32[$v>>2]|0; + $592 = HEAP32[$regIns>>2]|0; + (_sqlite3VdbeAddOp2($591,28,0,$592)|0); + } + $593 = HEAP32[$ipkColumn>>2]|0; + $594 = ($593|0)>=(0); + L152: do { + if ($594) { + $595 = HEAP8[$useTempTable>>0]|0; + $596 = ($595<<24>>24)!=(0); + do { + if ($596) { + $597 = HEAP32[$v>>2]|0; + $598 = HEAP32[$srcTab>>2]|0; + $599 = HEAP32[$ipkColumn>>2]|0; + $600 = HEAP32[$regRowid>>2]|0; + (_sqlite3VdbeAddOp3($597,46,$598,$599,$600)|0); + } else { + $601 = HEAP32[$2>>2]|0; + $602 = ($601|0)!=(0|0); + if ($602) { + $603 = HEAP32[$v>>2]|0; + $604 = HEAP32[$regFromSelect>>2]|0; + $605 = HEAP32[$ipkColumn>>2]|0; + $606 = (($604) + ($605))|0; + $607 = HEAP32[$regRowid>>2]|0; + (_sqlite3VdbeAddOp2($603,33,$606,$607)|0); + break; + } + $608 = HEAP32[$0>>2]|0; + $609 = HEAP32[$ipkColumn>>2]|0; + $610 = HEAP32[$pList>>2]|0; + $611 = (($610) + 4|0); + $612 = HEAP32[$611>>2]|0; + $613 = (($612) + (($609*20)|0)|0); + $614 = HEAP32[$613>>2]|0; + $615 = HEAP32[$regRowid>>2]|0; + _sqlite3ExprCode($608,$614,$615); + $616 = HEAP32[$v>>2]|0; + $617 = (_sqlite3VdbeGetOp($616,-1)|0); + HEAP32[$pOp>>2] = $617; + $618 = HEAP32[$pOp>>2]|0; + $619 = ($618|0)!=(0|0); + if (!($619)) { + break; + } + $620 = HEAP32[$pOp>>2]|0; + $621 = HEAP8[$620>>0]|0; + $622 = $621&255; + $623 = ($622|0)==(28); + if (!($623)) { + break; + } + $624 = HEAP32[$pTab>>2]|0; + $625 = (($624) + 44|0); + $626 = HEAP8[$625>>0]|0; + $627 = $626&255; + $628 = $627 & 16; + $629 = ($628|0)!=(0); + if ($629) { + break; + } + HEAP8[$appendFlag>>0] = 1; + $630 = HEAP32[$pOp>>2]|0; + HEAP8[$630>>0] = 69; + $631 = HEAP32[$iDataCur>>2]|0; + $632 = HEAP32[$pOp>>2]|0; + $633 = (($632) + 4|0); + HEAP32[$633>>2] = $631; + $634 = HEAP32[$regRowid>>2]|0; + $635 = HEAP32[$pOp>>2]|0; + $636 = (($635) + 8|0); + HEAP32[$636>>2] = $634; + $637 = HEAP32[$regAutoinc>>2]|0; + $638 = HEAP32[$pOp>>2]|0; + $639 = (($638) + 12|0); + HEAP32[$639>>2] = $637; + } + } while(0); + $640 = HEAP8[$appendFlag>>0]|0; + $641 = ($640<<24>>24)!=(0); + if ($641) { + break; + } + $642 = HEAP32[$pTab>>2]|0; + $643 = (($642) + 44|0); + $644 = HEAP8[$643>>0]|0; + $645 = $644&255; + $646 = $645 & 16; + $647 = ($646|0)!=(0); + $648 = HEAP32[$v>>2]|0; + if ($647) { + $657 = (_sqlite3VdbeCurrentAddr($648)|0); + HEAP32[$j11>>2] = $657; + $658 = HEAP32[$v>>2]|0; + $659 = HEAP32[$regRowid>>2]|0; + $660 = HEAP32[$j11>>2]|0; + $661 = (($660) + 2)|0; + (_sqlite3VdbeAddOp2($658,76,$659,$661)|0); + } else { + $649 = HEAP32[$regRowid>>2]|0; + $650 = (_sqlite3VdbeAddOp1($648,77,$649)|0); + HEAP32[$j11>>2] = $650; + $651 = HEAP32[$v>>2]|0; + $652 = HEAP32[$iDataCur>>2]|0; + $653 = HEAP32[$regRowid>>2]|0; + $654 = HEAP32[$regAutoinc>>2]|0; + (_sqlite3VdbeAddOp3($651,69,$652,$653,$654)|0); + $655 = HEAP32[$v>>2]|0; + $656 = HEAP32[$j11>>2]|0; + _sqlite3VdbeJumpHere($655,$656); + } + $662 = HEAP32[$v>>2]|0; + $663 = HEAP32[$regRowid>>2]|0; + (_sqlite3VdbeAddOp1($662,38,$663)|0); + } else { + $664 = HEAP32[$pTab>>2]|0; + $665 = (($664) + 44|0); + $666 = HEAP8[$665>>0]|0; + $667 = $666&255; + $668 = $667 & 16; + $669 = ($668|0)!=(0); + do { + if (!($669)) { + $670 = HEAP8[$withoutRowid>>0]|0; + $671 = $670&255; + $672 = ($671|0)!=(0); + if ($672) { + break; + } + $675 = HEAP32[$v>>2]|0; + $676 = HEAP32[$iDataCur>>2]|0; + $677 = HEAP32[$regRowid>>2]|0; + $678 = HEAP32[$regAutoinc>>2]|0; + (_sqlite3VdbeAddOp3($675,69,$676,$677,$678)|0); + HEAP8[$appendFlag>>0] = 1; + break L152; + } + } while(0); + $673 = HEAP32[$v>>2]|0; + $674 = HEAP32[$regRowid>>2]|0; + (_sqlite3VdbeAddOp2($673,28,0,$674)|0); + } + } while(0); + $679 = HEAP32[$0>>2]|0; + $680 = HEAP32[$regAutoinc>>2]|0; + $681 = HEAP32[$regRowid>>2]|0; + _autoIncStep($679,$680,$681); + HEAP32[$nHidden>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $682 = HEAP32[$i>>2]|0; + $683 = HEAP32[$pTab>>2]|0; + $684 = (($683) + 38|0); + $685 = HEAP16[$684>>1]|0; + $686 = $685 << 16 >> 16; + $687 = ($682|0)<($686|0); + if (!($687)) { + break; + } + $688 = HEAP32[$regRowid>>2]|0; + $689 = (($688) + 1)|0; + $690 = HEAP32[$i>>2]|0; + $691 = (($689) + ($690))|0; + HEAP32[$iRegStore>>2] = $691; + $692 = HEAP32[$i>>2]|0; + $693 = HEAP32[$pTab>>2]|0; + $694 = (($693) + 36|0); + $695 = HEAP16[$694>>1]|0; + $696 = $695 << 16 >> 16; + $697 = ($692|0)==($696|0); + L178: do { + if ($697) { + $698 = HEAP32[$v>>2]|0; + $699 = HEAP32[$iRegStore>>2]|0; + (_sqlite3VdbeAddOp1($698,29,$699)|0); + } else { + $700 = HEAP32[$3>>2]|0; + $701 = ($700|0)==(0|0); + L180: do { + if ($701) { + $702 = HEAP32[$i>>2]|0; + $703 = HEAP32[$pTab>>2]|0; + $704 = (($703) + 4|0); + $705 = HEAP32[$704>>2]|0; + $706 = (($705) + (($702*24)|0)|0); + $707 = (($706) + 23|0); + $708 = HEAP8[$707>>0]|0; + $709 = $708&255; + $710 = $709 & 2; + $711 = ($710|0)!=(0); + if ($711) { + HEAP32[$j>>2] = -1; + $712 = HEAP32[$nHidden>>2]|0; + $713 = (($712) + 1)|0; + HEAP32[$nHidden>>2] = $713; + break; + } else { + $714 = HEAP32[$i>>2]|0; + $715 = HEAP32[$nHidden>>2]|0; + $716 = (($714) - ($715))|0; + HEAP32[$j>>2] = $716; + break; + } + } else { + HEAP32[$j>>2] = 0; + while(1) { + $717 = HEAP32[$j>>2]|0; + $718 = HEAP32[$3>>2]|0; + $719 = (($718) + 4|0); + $720 = HEAP32[$719>>2]|0; + $721 = ($717|0)<($720|0); + if (!($721)) { + break L180; + } + $722 = HEAP32[$j>>2]|0; + $723 = HEAP32[$3>>2]|0; + $724 = HEAP32[$723>>2]|0; + $725 = (($724) + ($722<<3)|0); + $726 = (($725) + 4|0); + $727 = HEAP32[$726>>2]|0; + $728 = HEAP32[$i>>2]|0; + $729 = ($727|0)==($728|0); + if ($729) { + break L180; + } + $730 = HEAP32[$j>>2]|0; + $731 = (($730) + 1)|0; + HEAP32[$j>>2] = $731; + } + } + } while(0); + $732 = HEAP32[$j>>2]|0; + $733 = ($732|0)<(0); + do { + if (!($733)) { + $734 = HEAP32[$nColumn>>2]|0; + $735 = ($734|0)==(0); + if ($735) { + break; + } + $736 = HEAP32[$3>>2]|0; + $737 = ($736|0)!=(0|0); + if ($737) { + $738 = HEAP32[$j>>2]|0; + $739 = HEAP32[$3>>2]|0; + $740 = (($739) + 4|0); + $741 = HEAP32[$740>>2]|0; + $742 = ($738|0)>=($741|0); + if ($742) { + break; + } + } + $752 = HEAP8[$useTempTable>>0]|0; + $753 = ($752<<24>>24)!=(0); + if ($753) { + $754 = HEAP32[$v>>2]|0; + $755 = HEAP32[$srcTab>>2]|0; + $756 = HEAP32[$j>>2]|0; + $757 = HEAP32[$iRegStore>>2]|0; + (_sqlite3VdbeAddOp3($754,46,$755,$756,$757)|0); + break L178; + } + $758 = HEAP32[$2>>2]|0; + $759 = ($758|0)!=(0|0); + if (!($759)) { + $768 = HEAP32[$0>>2]|0; + $769 = HEAP32[$j>>2]|0; + $770 = HEAP32[$pList>>2]|0; + $771 = (($770) + 4|0); + $772 = HEAP32[$771>>2]|0; + $773 = (($772) + (($769*20)|0)|0); + $774 = HEAP32[$773>>2]|0; + $775 = HEAP32[$iRegStore>>2]|0; + _sqlite3ExprCode($768,$774,$775); + break L178; + } + $760 = HEAP32[$regFromSelect>>2]|0; + $761 = HEAP32[$regData>>2]|0; + $762 = ($760|0)!=($761|0); + if (!($762)) { + break L178; + } + $763 = HEAP32[$v>>2]|0; + $764 = HEAP32[$regFromSelect>>2]|0; + $765 = HEAP32[$j>>2]|0; + $766 = (($764) + ($765))|0; + $767 = HEAP32[$iRegStore>>2]|0; + (_sqlite3VdbeAddOp2($763,34,$766,$767)|0); + break L178; + } + } while(0); + $743 = HEAP32[$0>>2]|0; + $744 = HEAP32[$i>>2]|0; + $745 = HEAP32[$pTab>>2]|0; + $746 = (($745) + 4|0); + $747 = HEAP32[$746>>2]|0; + $748 = (($747) + (($744*24)|0)|0); + $749 = (($748) + 4|0); + $750 = HEAP32[$749>>2]|0; + $751 = HEAP32[$iRegStore>>2]|0; + _sqlite3ExprCodeFactorable($743,$750,$751); + } + } while(0); + $776 = HEAP32[$i>>2]|0; + $777 = (($776) + 1)|0; + HEAP32[$i>>2] = $777; + } + $778 = HEAP32[$pTab>>2]|0; + $779 = (($778) + 44|0); + $780 = HEAP8[$779>>0]|0; + $781 = $780&255; + $782 = $781 & 16; + $783 = ($782|0)!=(0); + if ($783) { + $784 = HEAP32[$db>>2]|0; + $785 = HEAP32[$pTab>>2]|0; + $786 = (_sqlite3GetVTable($784,$785)|0); + HEAP32[$pVTab>>2] = $786; + $787 = HEAP32[$0>>2]|0; + $788 = HEAP32[$pTab>>2]|0; + _sqlite3VtabMakeWritable($787,$788); + $789 = HEAP32[$v>>2]|0; + $790 = HEAP32[$pTab>>2]|0; + $791 = (($790) + 38|0); + $792 = HEAP16[$791>>1]|0; + $793 = $792 << 16 >> 16; + $794 = (($793) + 2)|0; + $795 = HEAP32[$regIns>>2]|0; + $796 = HEAP32[$pVTab>>2]|0; + (_sqlite3VdbeAddOp4($789,15,1,$794,$795,$796,-10)|0); + $797 = HEAP32[$v>>2]|0; + $798 = HEAP32[$4>>2]|0; + $799 = ($798|0)==(10); + $800 = HEAP32[$4>>2]|0; + $801 = $799 ? 2 : $800; + $802 = $801&255; + _sqlite3VdbeChangeP5($797,$802); + $803 = HEAP32[$0>>2]|0; + _sqlite3MayAbort($803); + break; + } else { + $804 = HEAP32[$0>>2]|0; + $805 = HEAP32[$pTab>>2]|0; + $806 = HEAP32[$aRegIdx>>2]|0; + $807 = HEAP32[$iDataCur>>2]|0; + $808 = HEAP32[$iIdxCur>>2]|0; + $809 = HEAP32[$regIns>>2]|0; + $810 = HEAP32[$ipkColumn>>2]|0; + $811 = ($810|0)>=(0); + $812 = $811&1; + $813 = $812&255; + $814 = HEAP32[$4>>2]|0; + $815 = $814&255; + $816 = HEAP32[$endOfLoop>>2]|0; + _sqlite3GenerateConstraintChecks($804,$805,$806,$807,$808,$809,0,$813,$815,$816,$isReplace); + $817 = HEAP32[$0>>2]|0; + $818 = HEAP32[$pTab>>2]|0; + $819 = HEAP32[$regIns>>2]|0; + _sqlite3FkCheck($817,$818,0,$819,0,0); + $820 = HEAP32[$0>>2]|0; + $821 = HEAP32[$pTab>>2]|0; + $822 = HEAP32[$iDataCur>>2]|0; + $823 = HEAP32[$iIdxCur>>2]|0; + $824 = HEAP32[$regIns>>2]|0; + $825 = HEAP32[$aRegIdx>>2]|0; + $826 = HEAP8[$appendFlag>>0]|0; + $827 = $826&255; + $828 = HEAP32[$isReplace>>2]|0; + $829 = ($828|0)==(0); + $830 = $829&1; + _sqlite3CompleteInsertion($820,$821,$822,$823,$824,$825,0,$827,$830); + break; + } + } + } while(0); + $831 = HEAP32[$db>>2]|0; + $832 = (($831) + 24|0); + $833 = HEAP32[$832>>2]|0; + $834 = $833 & 128; + $835 = ($834|0)!=(0); + if ($835) { + $836 = HEAP32[$v>>2]|0; + $837 = HEAP32[$regRowCount>>2]|0; + (_sqlite3VdbeAddOp2($836,37,$837,1)|0); + } + $838 = HEAP32[$pTrigger>>2]|0; + $839 = ($838|0)!=(0|0); + if ($839) { + $840 = HEAP32[$0>>2]|0; + $841 = HEAP32[$pTrigger>>2]|0; + $842 = HEAP32[$pTab>>2]|0; + $843 = HEAP32[$regData>>2]|0; + $844 = (($843) - 2)|0; + $845 = HEAP32[$pTab>>2]|0; + $846 = (($845) + 38|0); + $847 = HEAP16[$846>>1]|0; + $848 = $847 << 16 >> 16; + $849 = (($844) - ($848))|0; + $850 = HEAP32[$4>>2]|0; + $851 = HEAP32[$endOfLoop>>2]|0; + _sqlite3CodeRowTrigger($840,$841,108,0,2,$842,$849,$850,$851); + } + $852 = HEAP32[$v>>2]|0; + $853 = HEAP32[$endOfLoop>>2]|0; + _sqlite3VdbeResolveLabel($852,$853); + $854 = HEAP8[$useTempTable>>0]|0; + $855 = ($854<<24>>24)!=(0); + do { + if ($855) { + $856 = HEAP32[$v>>2]|0; + $857 = HEAP32[$srcTab>>2]|0; + $858 = HEAP32[$addrCont>>2]|0; + (_sqlite3VdbeAddOp2($856,9,$857,$858)|0); + $859 = HEAP32[$v>>2]|0; + $860 = HEAP32[$addrInsTop>>2]|0; + _sqlite3VdbeJumpHere($859,$860); + $861 = HEAP32[$v>>2]|0; + $862 = HEAP32[$srcTab>>2]|0; + (_sqlite3VdbeAddOp1($861,58,$862)|0); + } else { + $863 = HEAP32[$2>>2]|0; + $864 = ($863|0)!=(0|0); + if (!($864)) { + break; + } + $865 = HEAP32[$v>>2]|0; + $866 = HEAP32[$addrCont>>2]|0; + (_sqlite3VdbeAddOp2($865,16,0,$866)|0); + $867 = HEAP32[$v>>2]|0; + $868 = HEAP32[$addrInsTop>>2]|0; + _sqlite3VdbeJumpHere($867,$868); + } + } while(0); + $869 = HEAP32[$pTab>>2]|0; + $870 = (($869) + 44|0); + $871 = HEAP8[$870>>0]|0; + $872 = $871&255; + $873 = $872 & 16; + $874 = ($873|0)!=(0); + if ($874) { + break; + } + $875 = HEAP32[$isView>>2]|0; + $876 = ($875|0)!=(0); + if ($876) { + break; + } + $877 = HEAP32[$iDataCur>>2]|0; + $878 = HEAP32[$iIdxCur>>2]|0; + $879 = ($877|0)<($878|0); + if ($879) { + $880 = HEAP32[$v>>2]|0; + $881 = HEAP32[$iDataCur>>2]|0; + (_sqlite3VdbeAddOp1($880,58,$881)|0); + } + HEAP32[$idx>>2] = 0; + $882 = HEAP32[$pTab>>2]|0; + $883 = (($882) + 8|0); + $884 = HEAP32[$883>>2]|0; + HEAP32[$pIdx>>2] = $884; + while(1) { + $885 = HEAP32[$pIdx>>2]|0; + $886 = ($885|0)!=(0|0); + if (!($886)) { + break L23; + } + $887 = HEAP32[$v>>2]|0; + $888 = HEAP32[$idx>>2]|0; + $889 = HEAP32[$iIdxCur>>2]|0; + $890 = (($888) + ($889))|0; + (_sqlite3VdbeAddOp1($887,58,$890)|0); + $891 = HEAP32[$pIdx>>2]|0; + $892 = (($891) + 20|0); + $893 = HEAP32[$892>>2]|0; + HEAP32[$pIdx>>2] = $893; + $894 = HEAP32[$idx>>2]|0; + $895 = (($894) + 1)|0; + HEAP32[$idx>>2] = $895; + } + } + } while(0); + $896 = HEAP32[$0>>2]|0; + $897 = (($896) + 18|0); + $898 = HEAP8[$897>>0]|0; + $899 = $898&255; + $900 = ($899|0)==(0); + if ($900) { + $901 = HEAP32[$0>>2]|0; + $902 = (($901) + 412|0); + $903 = HEAP32[$902>>2]|0; + $904 = ($903|0)==(0|0); + if ($904) { + $905 = HEAP32[$0>>2]|0; + _sqlite3AutoincrementEnd($905); + } + } + $906 = HEAP32[$db>>2]|0; + $907 = (($906) + 24|0); + $908 = HEAP32[$907>>2]|0; + $909 = $908 & 128; + $910 = ($909|0)!=(0); + if ($910) { + $911 = HEAP32[$0>>2]|0; + $912 = (($911) + 18|0); + $913 = HEAP8[$912>>0]|0; + $914 = ($913<<24>>24)!=(0); + if (!($914)) { + $915 = HEAP32[$0>>2]|0; + $916 = (($915) + 412|0); + $917 = HEAP32[$916>>2]|0; + $918 = ($917|0)!=(0|0); + if (!($918)) { + $919 = HEAP32[$v>>2]|0; + $920 = HEAP32[$regRowCount>>2]|0; + (_sqlite3VdbeAddOp2($919,35,$920,1)|0); + $921 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($921,1); + $922 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($922,0,0,29944,0)|0); + } + } + } + } + } + } + } + } + } + } + } + } while(0); + $923 = HEAP32[$db>>2]|0; + $924 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($923,$924); + $925 = HEAP32[$db>>2]|0; + $926 = HEAP32[$pList>>2]|0; + _sqlite3ExprListDelete($925,$926); + $927 = HEAP32[$db>>2]|0; + $928 = HEAP32[$2>>2]|0; + _sqlite3SelectDelete($927,$928); + $929 = HEAP32[$db>>2]|0; + $930 = HEAP32[$3>>2]|0; + _sqlite3IdListDelete($929,$930); + $931 = HEAP32[$db>>2]|0; + $932 = HEAP32[$aRegIdx>>2]|0; + _sqlite3DbFree($931,$932); + STACKTOP = sp;return; +} +function _sqlite3IdListAppend($db,$pList,$pToken) { + $db = $db|0; + $pList = $pList|0; + $pToken = $pToken|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $i = sp + 12|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pList; + HEAP32[$3>>2] = $pToken; + $4 = HEAP32[$2>>2]|0; + $5 = ($4|0)==(0|0); + if ($5) { + $6 = HEAP32[$1>>2]|0; + $7 = (_sqlite3DbMallocZero($6,8)|0); + HEAP32[$2>>2] = $7; + $8 = HEAP32[$2>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + HEAP32[$0>>2] = 0; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } + } + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 4|0); + $15 = (_sqlite3ArrayAllocate($10,$12,8,$14,$i)|0); + $16 = HEAP32[$2>>2]|0; + HEAP32[$16>>2] = $15; + $17 = HEAP32[$i>>2]|0; + $18 = ($17|0)<(0); + $19 = HEAP32[$1>>2]|0; + if ($18) { + $20 = HEAP32[$2>>2]|0; + _sqlite3IdListDelete($19,$20); + HEAP32[$0>>2] = 0; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } else { + $21 = HEAP32[$3>>2]|0; + $22 = (_sqlite3NameFromToken($19,$21)|0); + $23 = HEAP32[$i>>2]|0; + $24 = HEAP32[$2>>2]|0; + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + ($23<<3)|0); + HEAP32[$26>>2] = $22; + $27 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $27; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } + return 0|0; +} +function _spanSet($pOut,$pStart,$pEnd) { + $pOut = $pOut|0; + $pStart = $pStart|0; + $pEnd = $pEnd|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pOut; + HEAP32[$1>>2] = $pStart; + HEAP32[$2>>2] = $pEnd; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 4|0); + HEAP32[$6>>2] = $4; + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + ($9)|0); + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 8|0); + HEAP32[$14>>2] = $12; + STACKTOP = sp;return; +} +function _sqlite3ExprAssignVarNumber($pParse,$pExpr) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a = 0, $bOk = 0, $db = 0, $i = 0, $i1 = 0, $n = 0, $vararg_buffer1 = 0, $x = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer1 = sp + 8|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $db = sp + 28|0; + $z = sp + 24|0; + $x = sp + 40|0; + $n = sp + 12|0; + $i = sp; + $bOk = sp + 16|0; + $i1 = sp + 42|0; + $a = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pExpr; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)==(0|0); + if ($5) { + STACKTOP = sp;return; + } + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 8|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$z>>2] = $8; + $9 = HEAP32[$z>>2]|0; + $10 = (($9) + 1|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11 << 24 >> 24; + $13 = ($12|0)==(0); + do { + if ($13) { + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 440|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + 1)|0; + HEAP32[$15>>2] = $17; + $18 = $17&65535; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 32|0); + HEAP16[$20>>1] = $18; + } else { + HEAP16[$x>>1] = 0; + $21 = HEAP32[$z>>2]|0; + $22 = (_sqlite3Strlen30($21)|0); + HEAP32[$n>>2] = $22; + $23 = HEAP32[$z>>2]|0; + $24 = HEAP8[$23>>0]|0; + $25 = $24 << 24 >> 24; + $26 = ($25|0)==(63); + if ($26) { + $27 = HEAP32[$z>>2]|0; + $28 = (($27) + 1|0); + $29 = HEAP32[$n>>2]|0; + $30 = (($29) - 1)|0; + $31 = (_sqlite3Atoi64($28,$i,$30,1)|0); + $32 = (0)==($31|0); + $33 = $32&1; + HEAP32[$bOk>>2] = $33; + $34 = $i; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = $36&65535; + HEAP16[$x>>1] = $40; + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 32|0); + HEAP16[$42>>1] = $40; + $43 = HEAP32[$bOk>>2]|0; + $44 = ($43|0)==(0); + if ($44) { + label = 8; + } else { + $45 = $i; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (($45) + 4)|0; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = ($50|0)<(0); + $52 = ($50|0)==(0); + $53 = ($47>>>0)<(1); + $54 = $52 & $53; + $55 = $51 | $54; + if ($55) { + label = 8; + } else { + $56 = $i; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = (($56) + 4)|0; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$db>>2]|0; + $63 = (($62) + 88|0); + $64 = (($63) + 36|0); + $65 = HEAP32[$64>>2]|0; + $66 = ($65|0)<(0); + $67 = $66 << 31 >> 31; + $68 = ($61|0)>($67|0); + $69 = ($61|0)==($67|0); + $70 = ($58>>>0)>($65>>>0); + $71 = $69 & $70; + $72 = $68 | $71; + if ($72) { + label = 8; + } + } + } + if ((label|0) == 8) { + $73 = HEAP32[$0>>2]|0; + $74 = HEAP32[$db>>2]|0; + $75 = (($74) + 88|0); + $76 = (($75) + 36|0); + $77 = HEAP32[$76>>2]|0; + HEAP32[$vararg_buffer1>>2] = $77; + _sqlite3ErrorMsg($73,29752,$vararg_buffer1); + HEAP16[$x>>1] = 0; + } + $78 = $i; + $79 = $78; + $80 = HEAP32[$79>>2]|0; + $81 = (($78) + 4)|0; + $82 = $81; + $83 = HEAP32[$82>>2]|0; + $84 = HEAP32[$0>>2]|0; + $85 = (($84) + 440|0); + $86 = HEAP32[$85>>2]|0; + $87 = ($86|0)<(0); + $88 = $87 << 31 >> 31; + $89 = ($83|0)>($88|0); + $90 = ($83|0)==($88|0); + $91 = ($80>>>0)>($86>>>0); + $92 = $90 & $91; + $93 = $89 | $92; + if ($93) { + $94 = $i; + $95 = $94; + $96 = HEAP32[$95>>2]|0; + $97 = (($94) + 4)|0; + $98 = $97; + $99 = HEAP32[$98>>2]|0; + $100 = HEAP32[$0>>2]|0; + $101 = (($100) + 440|0); + HEAP32[$101>>2] = $96; + } + } else { + HEAP16[$i1>>1] = 0; + while(1) { + $102 = HEAP16[$i1>>1]|0; + $103 = $102 << 16 >> 16; + $104 = HEAP32[$0>>2]|0; + $105 = (($104) + 444|0); + $106 = HEAP32[$105>>2]|0; + $107 = ($103|0)<($106|0); + if (!($107)) { + break; + } + $108 = HEAP16[$i1>>1]|0; + $109 = $108 << 16 >> 16; + $110 = HEAP32[$0>>2]|0; + $111 = (($110) + 472|0); + $112 = HEAP32[$111>>2]|0; + $113 = (($112) + ($109<<2)|0); + $114 = HEAP32[$113>>2]|0; + $115 = ($114|0)!=(0|0); + if ($115) { + $116 = HEAP16[$i1>>1]|0; + $117 = $116 << 16 >> 16; + $118 = HEAP32[$0>>2]|0; + $119 = (($118) + 472|0); + $120 = HEAP32[$119>>2]|0; + $121 = (($120) + ($117<<2)|0); + $122 = HEAP32[$121>>2]|0; + $123 = HEAP32[$z>>2]|0; + $124 = (_strcmp($122,$123)|0); + $125 = ($124|0)==(0); + if ($125) { + label = 15; + break; + } + } + $132 = HEAP16[$i1>>1]|0; + $133 = (($132) + 1)<<16>>16; + HEAP16[$i1>>1] = $133; + } + if ((label|0) == 15) { + $126 = HEAP16[$i1>>1]|0; + $127 = $126 << 16 >> 16; + $128 = (($127) + 1)|0; + $129 = $128&65535; + HEAP16[$x>>1] = $129; + $130 = HEAP32[$1>>2]|0; + $131 = (($130) + 32|0); + HEAP16[$131>>1] = $129; + } + $134 = HEAP16[$x>>1]|0; + $135 = $134 << 16 >> 16; + $136 = ($135|0)==(0); + if ($136) { + $137 = HEAP32[$0>>2]|0; + $138 = (($137) + 440|0); + $139 = HEAP32[$138>>2]|0; + $140 = (($139) + 1)|0; + HEAP32[$138>>2] = $140; + $141 = $140&65535; + $142 = HEAP32[$1>>2]|0; + $143 = (($142) + 32|0); + HEAP16[$143>>1] = $141; + HEAP16[$x>>1] = $141; + } + } + $144 = HEAP16[$x>>1]|0; + $145 = $144 << 16 >> 16; + $146 = ($145|0)>(0); + if ($146) { + $147 = HEAP16[$x>>1]|0; + $148 = $147 << 16 >> 16; + $149 = HEAP32[$0>>2]|0; + $150 = (($149) + 444|0); + $151 = HEAP32[$150>>2]|0; + $152 = ($148|0)>($151|0); + do { + if ($152) { + $153 = HEAP32[$db>>2]|0; + $154 = HEAP32[$0>>2]|0; + $155 = (($154) + 472|0); + $156 = HEAP32[$155>>2]|0; + $157 = HEAP16[$x>>1]|0; + $158 = $157 << 16 >> 16; + $159 = $158<<2; + $160 = (_sqlite3DbRealloc($153,$156,$159)|0); + HEAP32[$a>>2] = $160; + $161 = HEAP32[$a>>2]|0; + $162 = ($161|0)==(0|0); + if ($162) { + STACKTOP = sp;return; + } else { + $163 = HEAP32[$a>>2]|0; + $164 = HEAP32[$0>>2]|0; + $165 = (($164) + 472|0); + HEAP32[$165>>2] = $163; + $166 = HEAP32[$0>>2]|0; + $167 = (($166) + 444|0); + $168 = HEAP32[$167>>2]|0; + $169 = HEAP32[$a>>2]|0; + $170 = (($169) + ($168<<2)|0); + $171 = HEAP16[$x>>1]|0; + $172 = $171 << 16 >> 16; + $173 = HEAP32[$0>>2]|0; + $174 = (($173) + 444|0); + $175 = HEAP32[$174>>2]|0; + $176 = (($172) - ($175))|0; + $177 = $176<<2; + _memset(($170|0),0,($177|0))|0; + $178 = HEAP16[$x>>1]|0; + $179 = $178 << 16 >> 16; + $180 = HEAP32[$0>>2]|0; + $181 = (($180) + 444|0); + HEAP32[$181>>2] = $179; + break; + } + } + } while(0); + $182 = HEAP32[$z>>2]|0; + $183 = HEAP8[$182>>0]|0; + $184 = $183 << 24 >> 24; + $185 = ($184|0)!=(63); + if (!($185)) { + $186 = HEAP16[$x>>1]|0; + $187 = $186 << 16 >> 16; + $188 = (($187) - 1)|0; + $189 = HEAP32[$0>>2]|0; + $190 = (($189) + 472|0); + $191 = HEAP32[$190>>2]|0; + $192 = (($191) + ($188<<2)|0); + $193 = HEAP32[$192>>2]|0; + $194 = ($193|0)==(0|0); + if (!($194)) { + break; + } + } + $195 = HEAP32[$db>>2]|0; + $196 = HEAP16[$x>>1]|0; + $197 = $196 << 16 >> 16; + $198 = (($197) - 1)|0; + $199 = HEAP32[$0>>2]|0; + $200 = (($199) + 472|0); + $201 = HEAP32[$200>>2]|0; + $202 = (($201) + ($198<<2)|0); + $203 = HEAP32[$202>>2]|0; + _sqlite3DbFree($195,$203); + $204 = HEAP32[$db>>2]|0; + $205 = HEAP32[$z>>2]|0; + $206 = HEAP32[$n>>2]|0; + $207 = (_sqlite3DbStrNDup($204,$205,$206)|0); + $208 = HEAP16[$x>>1]|0; + $209 = $208 << 16 >> 16; + $210 = (($209) - 1)|0; + $211 = HEAP32[$0>>2]|0; + $212 = (($211) + 472|0); + $213 = HEAP32[$212>>2]|0; + $214 = (($213) + ($210<<2)|0); + HEAP32[$214>>2] = $207; + } + } + } while(0); + $215 = HEAP32[$0>>2]|0; + $216 = (($215) + 64|0); + $217 = HEAP32[$216>>2]|0; + $218 = ($217|0)!=(0); + if ($218) { + STACKTOP = sp;return; + } + $219 = HEAP32[$0>>2]|0; + $220 = (($219) + 440|0); + $221 = HEAP32[$220>>2]|0; + $222 = HEAP32[$db>>2]|0; + $223 = (($222) + 88|0); + $224 = (($223) + 36|0); + $225 = HEAP32[$224>>2]|0; + $226 = ($221|0)>($225|0); + if (!($226)) { + STACKTOP = sp;return; + } + $227 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($227,29800,$vararg_buffer1); + STACKTOP = sp;return; +} +function _sqlite3ExprAddCollateToken($pParse,$pExpr,$pCollName) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + $pCollName = $pCollName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $pNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pNew = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $pCollName; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5>>>0)>(0); + if (!($6)) { + $21 = HEAP32[$1>>2]|0; + STACKTOP = sp;return ($21|0); + } + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = (_sqlite3ExprAlloc($8,95,$9,1)|0); + HEAP32[$pNew>>2] = $10; + $11 = HEAP32[$pNew>>2]|0; + $12 = ($11|0)!=(0|0); + if (!($12)) { + $21 = HEAP32[$1>>2]|0; + STACKTOP = sp;return ($21|0); + } + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$pNew>>2]|0; + $15 = (($14) + 12|0); + HEAP32[$15>>2] = $13; + $16 = HEAP32[$pNew>>2]|0; + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = $18 | 4352; + HEAP32[$17>>2] = $19; + $20 = HEAP32[$pNew>>2]|0; + HEAP32[$1>>2] = $20; + $21 = HEAP32[$1>>2]|0; + STACKTOP = sp;return ($21|0); +} +function _sqlite3ExprFunction($pParse,$pList,$pToken) { + $pParse = $pParse|0; + $pList = $pList|0; + $pToken = $pToken|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $db = 0, $pNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pNew = sp + 12|0; + $db = sp + 16|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pList; + HEAP32[$3>>2] = $pToken; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$db>>2]|0; + $7 = HEAP32[$3>>2]|0; + $8 = (_sqlite3ExprAlloc($6,153,$7,1)|0); + HEAP32[$pNew>>2] = $8; + $9 = HEAP32[$pNew>>2]|0; + $10 = ($9|0)==(0|0); + if ($10) { + $11 = HEAP32[$db>>2]|0; + $12 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($11,$12); + HEAP32[$0>>2] = 0; + $19 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($19|0); + } else { + $13 = HEAP32[$2>>2]|0; + $14 = HEAP32[$pNew>>2]|0; + $15 = (($14) + 20|0); + HEAP32[$15>>2] = $13; + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$pNew>>2]|0; + _sqlite3ExprSetHeight($16,$17); + $18 = HEAP32[$pNew>>2]|0; + HEAP32[$0>>2] = $18; + $19 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($19|0); + } + return 0|0; +} +function _spanBinaryExpr($pOut,$pParse,$op,$pLeft,$pRight) { + $pOut = $pOut|0; + $pParse = $pParse|0; + $op = $op|0; + $pLeft = $pLeft|0; + $pRight = $pRight|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + HEAP32[$0>>2] = $pOut; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $op; + HEAP32[$3>>2] = $pLeft; + HEAP32[$4>>2] = $pRight; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$3>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$4>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = (_sqlite3PExpr($5,$6,$8,$10,0)|0); + $12 = HEAP32[$0>>2]|0; + HEAP32[$12>>2] = $11; + $13 = HEAP32[$3>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 4|0); + HEAP32[$17>>2] = $15; + $18 = HEAP32[$4>>2]|0; + $19 = (($18) + 8|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 8|0); + HEAP32[$22>>2] = $20; + STACKTOP = sp;return; +} +function _spanUnaryPostfix($pOut,$pParse,$op,$pOperand,$pPostOp) { + $pOut = $pOut|0; + $pParse = $pParse|0; + $op = $op|0; + $pOperand = $pOperand|0; + $pPostOp = $pPostOp|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + HEAP32[$0>>2] = $pOut; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $op; + HEAP32[$3>>2] = $pOperand; + HEAP32[$4>>2] = $pPostOp; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$3>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3PExpr($5,$6,$8,0,0)|0); + $10 = HEAP32[$0>>2]|0; + HEAP32[$10>>2] = $9; + $11 = HEAP32[$3>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 4|0); + HEAP32[$15>>2] = $13; + $16 = HEAP32[$4>>2]|0; + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$4>>2]|0; + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + ($18)|0); + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 8|0); + HEAP32[$23>>2] = $21; + STACKTOP = sp;return; +} +function _binaryToUnaryIfNull($pParse,$pY,$pA,$op) { + $pParse = $pParse|0; + $pY = $pY|0; + $pA = $pA|0; + $op = $op|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $db = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pY; + HEAP32[$2>>2] = $pA; + HEAP32[$3>>2] = $op; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$db>>2]|0; + $7 = (($6) + 64|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = ($9|0)==(0); + if (!($10)) { + STACKTOP = sp;return; + } + $11 = HEAP32[$1>>2]|0; + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = ($13|0)==(101); + if (!($14)) { + STACKTOP = sp;return; + } + $15 = HEAP32[$3>>2]|0; + $16 = $15&255; + $17 = HEAP32[$2>>2]|0; + HEAP8[$17>>0] = $16; + $18 = HEAP32[$db>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = (($19) + 16|0); + $21 = HEAP32[$20>>2]|0; + _sqlite3ExprDelete($18,$21); + $22 = HEAP32[$2>>2]|0; + $23 = (($22) + 16|0); + HEAP32[$23>>2] = 0; + STACKTOP = sp;return; +} +function _spanUnaryPrefix($pOut,$pParse,$op,$pOperand,$pPreOp) { + $pOut = $pOut|0; + $pParse = $pParse|0; + $op = $op|0; + $pOperand = $pOperand|0; + $pPreOp = $pPreOp|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + HEAP32[$0>>2] = $pOut; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $op; + HEAP32[$3>>2] = $pOperand; + HEAP32[$4>>2] = $pPreOp; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$3>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3PExpr($5,$6,$8,0,0)|0); + $10 = HEAP32[$0>>2]|0; + HEAP32[$10>>2] = $9; + $11 = HEAP32[$4>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 4|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$3>>2]|0; + $16 = (($15) + 8|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 8|0); + HEAP32[$19>>2] = $17; + STACKTOP = sp;return; +} +function _sqlite3ExprSetHeight($pParse,$p) { + $pParse = $pParse|0; + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + _exprSetHeight($2); + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 24|0); + $6 = HEAP32[$5>>2]|0; + (_sqlite3ExprCheckHeight($3,$6)|0); + STACKTOP = sp;return; +} +function _sqlite3DropIndex($pParse,$pName,$ifExists) { + $pParse = $pParse|0; + $pName = $pName|0; + $ifExists = $ifExists|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; + var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $code = 0, $db = 0, $iDb = 0, $pIndex = 0, $pTab = 0, $v = 0, $vararg_buffer5 = 0, $vararg_ptr1 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, $zDb = 0, $zTab = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer5 = sp; + $0 = sp + 48|0; + $1 = sp + 44|0; + $2 = sp + 40|0; + $pIndex = sp + 36|0; + $v = sp + 32|0; + $db = sp + 52|0; + $iDb = sp + 20|0; + $code = sp + 16|0; + $pTab = sp + 12|0; + $zDb = sp + 24|0; + $zTab = sp + 28|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pName; + HEAP32[$2>>2] = $ifExists; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + $5 = HEAP32[$db>>2]|0; + $6 = (($5) + 64|0); + $7 = HEAP8[$6>>0]|0; + $8 = ($7<<24>>24)!=(0); + if ($8) { + $106 = HEAP32[$db>>2]|0; + $107 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($106,$107); + STACKTOP = sp;return; + } + $9 = HEAP32[$0>>2]|0; + $10 = (_sqlite3ReadSchema($9)|0); + $11 = (0)!=($10|0); + if ($11) { + $106 = HEAP32[$db>>2]|0; + $107 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($106,$107); + STACKTOP = sp;return; + } + $12 = HEAP32[$db>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 8|0); + $15 = (($14) + 8|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 8|0); + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3FindIndex($12,$16,$20)|0); + HEAP32[$pIndex>>2] = $21; + $22 = HEAP32[$pIndex>>2]|0; + $23 = ($22|0)==(0|0); + if ($23) { + $24 = HEAP32[$2>>2]|0; + $25 = ($24|0)!=(0); + $26 = HEAP32[$0>>2]|0; + $27 = HEAP32[$1>>2]|0; + if ($25) { + $28 = (($27) + 8|0); + $29 = (($28) + 4|0); + $30 = HEAP32[$29>>2]|0; + _sqlite3CodeVerifyNamedSchema($26,$30); + } else { + HEAP32[$vararg_buffer5>>2] = $27; + $vararg_ptr1 = (($vararg_buffer5) + 4|0); + HEAP32[$vararg_ptr1>>2] = 0; + _sqlite3ErrorMsg($26,29512,$vararg_buffer5); + } + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 17|0); + HEAP8[$32>>0] = 1; + $106 = HEAP32[$db>>2]|0; + $107 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($106,$107); + STACKTOP = sp;return; + } + $33 = HEAP32[$pIndex>>2]|0; + $34 = (($33) + 55|0); + $35 = HEAP8[$34>>0]|0; + $36 = $35 & 3; + $37 = $36&255; + $38 = ($37|0)!=(0); + if ($38) { + $39 = HEAP32[$0>>2]|0; + HEAP32[$vararg_buffer5>>2] = 0; + _sqlite3ErrorMsg($39,29536,$vararg_buffer5); + $106 = HEAP32[$db>>2]|0; + $107 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($106,$107); + STACKTOP = sp;return; + } + $40 = HEAP32[$db>>2]|0; + $41 = HEAP32[$pIndex>>2]|0; + $42 = (($41) + 24|0); + $43 = HEAP32[$42>>2]|0; + $44 = (_sqlite3SchemaToIndex($40,$43)|0); + HEAP32[$iDb>>2] = $44; + HEAP32[$code>>2] = 10; + $45 = HEAP32[$pIndex>>2]|0; + $46 = (($45) + 12|0); + $47 = HEAP32[$46>>2]|0; + HEAP32[$pTab>>2] = $47; + $48 = HEAP32[$iDb>>2]|0; + $49 = HEAP32[$db>>2]|0; + $50 = (($49) + 16|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + ($48<<4)|0); + $53 = HEAP32[$52>>2]|0; + HEAP32[$zDb>>2] = $53; + $54 = HEAP32[$iDb>>2]|0; + $55 = ($54|0)==(1); + $56 = $55 ? 21432 : 21456; + HEAP32[$zTab>>2] = $56; + $57 = HEAP32[$0>>2]|0; + $58 = HEAP32[$zTab>>2]|0; + $59 = HEAP32[$zDb>>2]|0; + $60 = (_sqlite3AuthCheck($57,9,$58,0,$59)|0); + $61 = ($60|0)!=(0); + if ($61) { + $106 = HEAP32[$db>>2]|0; + $107 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($106,$107); + STACKTOP = sp;return; + } + $62 = HEAP32[$iDb>>2]|0; + $63 = ($62|0)!=(0); + if ($63) { + HEAP32[$code>>2] = 12; + } + $64 = HEAP32[$0>>2]|0; + $65 = HEAP32[$code>>2]|0; + $66 = HEAP32[$pIndex>>2]|0; + $67 = HEAP32[$66>>2]|0; + $68 = HEAP32[$pTab>>2]|0; + $69 = HEAP32[$68>>2]|0; + $70 = HEAP32[$zDb>>2]|0; + $71 = (_sqlite3AuthCheck($64,$65,$67,$69,$70)|0); + $72 = ($71|0)!=(0); + if ($72) { + $106 = HEAP32[$db>>2]|0; + $107 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($106,$107); + STACKTOP = sp;return; + } + $73 = HEAP32[$0>>2]|0; + $74 = (_sqlite3GetVdbe($73)|0); + HEAP32[$v>>2] = $74; + $75 = HEAP32[$v>>2]|0; + $76 = ($75|0)!=(0|0); + if (!($76)) { + $106 = HEAP32[$db>>2]|0; + $107 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($106,$107); + STACKTOP = sp;return; + } + $77 = HEAP32[$0>>2]|0; + $78 = HEAP32[$iDb>>2]|0; + _sqlite3BeginWriteOperation($77,1,$78); + $79 = HEAP32[$0>>2]|0; + $80 = HEAP32[$iDb>>2]|0; + $81 = HEAP32[$db>>2]|0; + $82 = (($81) + 16|0); + $83 = HEAP32[$82>>2]|0; + $84 = (($83) + ($80<<4)|0); + $85 = HEAP32[$84>>2]|0; + $86 = HEAP32[$iDb>>2]|0; + $87 = ($86|0)==(1); + $88 = $87 ? 21432 : 21456; + $89 = HEAP32[$pIndex>>2]|0; + $90 = HEAP32[$89>>2]|0; + HEAP32[$vararg_buffer5>>2] = $85; + $vararg_ptr8 = (($vararg_buffer5) + 4|0); + HEAP32[$vararg_ptr8>>2] = $88; + $vararg_ptr9 = (($vararg_buffer5) + 8|0); + HEAP32[$vararg_ptr9>>2] = $90; + _sqlite3NestedParse($79,29616,$vararg_buffer5); + $91 = HEAP32[$0>>2]|0; + $92 = HEAP32[$iDb>>2]|0; + $93 = HEAP32[$pIndex>>2]|0; + $94 = HEAP32[$93>>2]|0; + _sqlite3ClearStatTables($91,$92,24680,$94); + $95 = HEAP32[$0>>2]|0; + $96 = HEAP32[$iDb>>2]|0; + _sqlite3ChangeCookie($95,$96); + $97 = HEAP32[$0>>2]|0; + $98 = HEAP32[$pIndex>>2]|0; + $99 = (($98) + 44|0); + $100 = HEAP32[$99>>2]|0; + $101 = HEAP32[$iDb>>2]|0; + _destroyRootPage($97,$100,$101); + $102 = HEAP32[$v>>2]|0; + $103 = HEAP32[$iDb>>2]|0; + $104 = HEAP32[$pIndex>>2]|0; + $105 = HEAP32[$104>>2]|0; + (_sqlite3VdbeAddOp4($102,122,$103,0,0,$105,0)|0); + $106 = HEAP32[$db>>2]|0; + $107 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($106,$107); + STACKTOP = sp;return; +} +function _sqlite3Vacuum($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $v = sp; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3GetVdbe($1)|0); + HEAP32[$v>>2] = $2; + $3 = HEAP32[$v>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($5,13,0,0)|0); + $6 = HEAP32[$v>>2]|0; + _sqlite3VdbeUsesBtree($6,0); + STACKTOP = sp;return; +} +function _sqlite3Pragma($pParse,$pId1,$pId2,$pValue,$minusFlag) { + $pParse = $pParse|0; + $pId1 = $pId1|0; + $pId2 = $pId2|0; + $pValue = $pValue|0; + $minusFlag = $minusFlag|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0; + var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0; + var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0; + var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0; + var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0; + var $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0; + var $1105 = 0, $1106 = 0, $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0; + var $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0; + var $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0; + var $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0; + var $1178 = 0, $1179 = 0, $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0; + var $1196 = 0, $1197 = 0, $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0; + var $1213 = 0, $1214 = 0, $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0; + var $1231 = 0, $1232 = 0, $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0; + var $125 = 0, $1250 = 0, $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0, $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0; + var $1268 = 0, $1269 = 0, $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0, $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0; + var $1286 = 0, $1287 = 0, $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0, $1292 = 0, $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, $1299 = 0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0; + var $1303 = 0, $1304 = 0, $1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0, $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0; + var $1321 = 0, $1322 = 0, $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0, $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 0, $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0; + var $134 = 0, $1340 = 0, $1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 0, $1346 = 0, $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, $1352 = 0, $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0; + var $1358 = 0, $1359 = 0, $136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 0, $1364 = 0, $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, $1370 = 0, $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0; + var $1376 = 0, $1377 = 0, $1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 0, $1382 = 0, $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, $1389 = 0, $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0; + var $1394 = 0, $1395 = 0, $1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 0, $140 = 0, $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, $1406 = 0, $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0; + var $1411 = 0, $1412 = 0, $1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 0, $1418 = 0, $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, $1424 = 0, $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0; + var $143 = 0, $1430 = 0, $1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 0, $1436 = 0, $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, $1442 = 0, $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0; + var $1448 = 0, $1449 = 0, $145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 0, $1454 = 0, $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, $1460 = 0, $1461 = 0, $1462 = 0, $1463 = 0, $1464 = 0, $1465 = 0; + var $1466 = 0, $1467 = 0, $1468 = 0, $1469 = 0, $147 = 0, $1470 = 0, $1471 = 0, $1472 = 0, $1473 = 0, $1474 = 0, $1475 = 0, $1476 = 0, $1477 = 0, $1478 = 0, $1479 = 0, $148 = 0, $1480 = 0, $1481 = 0, $1482 = 0, $1483 = 0; + var $1484 = 0, $1485 = 0, $1486 = 0, $1487 = 0, $1488 = 0, $1489 = 0, $149 = 0, $1490 = 0, $1491 = 0, $1492 = 0, $1493 = 0, $1494 = 0, $1495 = 0, $1496 = 0, $1497 = 0, $1498 = 0, $1499 = 0, $15 = 0, $150 = 0, $1500 = 0; + var $1501 = 0, $1502 = 0, $1503 = 0, $1504 = 0, $1505 = 0, $1506 = 0, $1507 = 0, $1508 = 0, $1509 = 0, $151 = 0, $1510 = 0, $1511 = 0, $1512 = 0, $1513 = 0, $1514 = 0, $1515 = 0, $1516 = 0, $1517 = 0, $1518 = 0, $1519 = 0; + var $152 = 0, $1520 = 0, $1521 = 0, $1522 = 0, $1523 = 0, $1524 = 0, $1525 = 0, $1526 = 0, $1527 = 0, $1528 = 0, $1529 = 0, $153 = 0, $1530 = 0, $1531 = 0, $1532 = 0, $1533 = 0, $1534 = 0, $1535 = 0, $1536 = 0, $1537 = 0; + var $1538 = 0, $1539 = 0, $154 = 0, $1540 = 0, $1541 = 0, $1542 = 0, $1543 = 0, $1544 = 0, $1545 = 0, $1546 = 0, $1547 = 0, $1548 = 0, $1549 = 0, $155 = 0, $1550 = 0, $1551 = 0, $1552 = 0, $1553 = 0, $1554 = 0, $1555 = 0; + var $1556 = 0, $1557 = 0, $1558 = 0, $1559 = 0, $156 = 0, $1560 = 0, $1561 = 0, $1562 = 0, $1563 = 0, $1564 = 0, $1565 = 0, $1566 = 0, $1567 = 0, $1568 = 0, $1569 = 0, $157 = 0, $1570 = 0, $1571 = 0, $1572 = 0, $1573 = 0; + var $1574 = 0, $1575 = 0, $1576 = 0, $1577 = 0, $1578 = 0, $1579 = 0, $158 = 0, $1580 = 0, $1581 = 0, $1582 = 0, $1583 = 0, $1584 = 0, $1585 = 0, $1586 = 0, $1587 = 0, $1588 = 0, $1589 = 0, $159 = 0, $1590 = 0, $1591 = 0; + var $1592 = 0, $1593 = 0, $1594 = 0, $1595 = 0, $1596 = 0, $1597 = 0, $1598 = 0, $1599 = 0, $16 = 0, $160 = 0, $1600 = 0, $1601 = 0, $1602 = 0, $1603 = 0, $1604 = 0, $1605 = 0, $1606 = 0, $1607 = 0, $1608 = 0, $1609 = 0; + var $161 = 0, $1610 = 0, $1611 = 0, $1612 = 0, $1613 = 0, $1614 = 0, $1615 = 0, $1616 = 0, $1617 = 0, $1618 = 0, $1619 = 0, $162 = 0, $1620 = 0, $1621 = 0, $1622 = 0, $1623 = 0, $1624 = 0, $1625 = 0, $1626 = 0, $1627 = 0; + var $1628 = 0, $1629 = 0, $163 = 0, $1630 = 0, $1631 = 0, $1632 = 0, $1633 = 0, $1634 = 0, $1635 = 0, $1636 = 0, $1637 = 0, $1638 = 0, $1639 = 0, $164 = 0, $1640 = 0, $1641 = 0, $1642 = 0, $1643 = 0, $1644 = 0, $1645 = 0; + var $1646 = 0, $1647 = 0, $1648 = 0, $1649 = 0, $165 = 0, $1650 = 0, $1651 = 0, $1652 = 0, $1653 = 0, $1654 = 0, $1655 = 0, $1656 = 0, $1657 = 0, $1658 = 0, $1659 = 0, $166 = 0, $1660 = 0, $1661 = 0, $1662 = 0, $1663 = 0; + var $1664 = 0, $1665 = 0, $1666 = 0, $1667 = 0, $1668 = 0, $1669 = 0, $167 = 0, $1670 = 0, $1671 = 0, $1672 = 0, $1673 = 0, $1674 = 0, $1675 = 0, $1676 = 0, $1677 = 0, $1678 = 0, $1679 = 0, $168 = 0, $1680 = 0, $1681 = 0; + var $1682 = 0, $1683 = 0, $1684 = 0, $1685 = 0, $1686 = 0, $1687 = 0, $1688 = 0, $1689 = 0, $169 = 0, $1690 = 0, $1691 = 0, $1692 = 0, $1693 = 0, $1694 = 0, $1695 = 0, $1696 = 0, $1697 = 0, $1698 = 0, $1699 = 0, $17 = 0; + var $170 = 0, $1700 = 0, $1701 = 0, $1702 = 0, $1703 = 0, $1704 = 0, $1705 = 0, $1706 = 0, $1707 = 0, $1708 = 0, $1709 = 0, $171 = 0, $1710 = 0, $1711 = 0, $1712 = 0, $1713 = 0, $1714 = 0, $1715 = 0, $1716 = 0, $1717 = 0; + var $1718 = 0, $1719 = 0, $172 = 0, $1720 = 0, $1721 = 0, $1722 = 0, $1723 = 0, $1724 = 0, $1725 = 0, $1726 = 0, $1727 = 0, $1728 = 0, $1729 = 0, $173 = 0, $1730 = 0, $1731 = 0, $1732 = 0, $1733 = 0, $1734 = 0, $1735 = 0; + var $1736 = 0, $1737 = 0, $1738 = 0, $1739 = 0, $174 = 0, $1740 = 0, $1741 = 0, $1742 = 0, $1743 = 0, $1744 = 0, $1745 = 0, $1746 = 0, $1747 = 0, $1748 = 0, $1749 = 0, $175 = 0, $1750 = 0, $1751 = 0, $1752 = 0, $1753 = 0; + var $1754 = 0, $1755 = 0, $1756 = 0, $1757 = 0, $1758 = 0, $1759 = 0, $176 = 0, $1760 = 0, $1761 = 0, $1762 = 0, $1763 = 0, $1764 = 0, $1765 = 0, $1766 = 0, $1767 = 0, $1768 = 0, $1769 = 0, $177 = 0, $1770 = 0, $1771 = 0; + var $1772 = 0, $1773 = 0, $1774 = 0, $1775 = 0, $1776 = 0, $1777 = 0, $1778 = 0, $1779 = 0, $178 = 0, $1780 = 0, $1781 = 0, $1782 = 0, $1783 = 0, $1784 = 0, $1785 = 0, $1786 = 0, $1787 = 0, $1788 = 0, $1789 = 0, $179 = 0; + var $1790 = 0, $1791 = 0, $1792 = 0, $1793 = 0, $1794 = 0, $1795 = 0, $1796 = 0, $1797 = 0, $1798 = 0, $1799 = 0, $18 = 0, $180 = 0, $1800 = 0, $1801 = 0, $1802 = 0, $1803 = 0, $1804 = 0, $1805 = 0, $1806 = 0, $1807 = 0; + var $1808 = 0, $1809 = 0, $181 = 0, $1810 = 0, $1811 = 0, $1812 = 0, $1813 = 0, $1814 = 0, $1815 = 0, $1816 = 0, $1817 = 0, $1818 = 0, $1819 = 0, $182 = 0, $1820 = 0, $1821 = 0, $1822 = 0, $1823 = 0, $1824 = 0, $1825 = 0; + var $1826 = 0, $1827 = 0, $1828 = 0, $1829 = 0, $183 = 0, $1830 = 0, $1831 = 0, $1832 = 0, $1833 = 0, $1834 = 0, $1835 = 0, $1836 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0; + var $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0; + var $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0; + var $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0; + var $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0; + var $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0; + var $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0; + var $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0; + var $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0; + var $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0; + var $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0; + var $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0; + var $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0; + var $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0; + var $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0; + var $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0; + var $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0; + var $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0; + var $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0; + var $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0; + var $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0; + var $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0; + var $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0; + var $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0; + var $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0; + var $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0; + var $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0; + var $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0; + var $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0; + var $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0; + var $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0; + var $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0; + var $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0; + var $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0; + var $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0; + var $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0; + var $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0; + var $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0; + var $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0; + var $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0; + var $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0; + var $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0; + var $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0; + var $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0; + var $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0, $983 = 0; + var $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $N = 0, $aFcntl = 0, $addr = 0; + var $addr31 = 0, $addr38 = 0, $addr39 = 0, $addr9 = 0, $addrOk = 0, $addrTop = 0, $aiCols = 0, $b = 0, $cnt = 0, $cnum = 0, $db = 0, $eAuto = 0, $eMode = 0, $eMode4 = 0, $eMode41 = 0, $i = 0, $i11 = 0, $i15 = 0, $i18 = 0, $i19 = 0; + var $i20 = 0, $i22 = 0, $i26 = 0, $i29 = 0, $i40 = 0, $iAddr = 0, $iBt = 0, $iCookie = 0, $iDataCur = 0, $iDb = 0, $iIdxCur = 0, $iKey = 0, $iLimit = 0, $iLimit8 = 0, $iReg = 0, $ii = 0, $ii3 = 0, $ii5 = 0, $isQuick = 0, $j = 0; + var $j27 = 0, $j30 = 0, $jmp2 = 0, $jmp3 = 0, $jmp4 = 0, $k = 0, $k28 = 0, $loopTop = 0, $lwr = 0, $mask = 0, $mem = 0, $mid = 0, $mxErr = 0, $n = 0, $nHidden = 0, $or$cond = 0, $or$cond3 = 0, $p = 0, $pBt = 0, $pBt2 = 0; + var $pBt7 = 0, $pCol = 0, $pColl = 0, $pDb = 0, $pEnc = 0, $pFK = 0, $pFK23 = 0, $pId = 0, $pIdx = 0, $pIdx13 = 0, $pIdx16 = 0, $pIdx25 = 0, $pIdx34 = 0, $pIdx36 = 0, $pPager = 0, $pPager6 = 0, $pParent = 0, $pPk = 0, $pPk37 = 0, $pPrior = 0; + var $pTab = 0, $pTab12 = 0, $pTab14 = 0, $pTab17 = 0, $pTab21 = 0, $pTab24 = 0, $pTab33 = 0, $pTab35 = 0, $pTbls = 0, $r1 = 0, $rc = 0, $regKey = 0, $regResult = 0, $regRow = 0, $res = 0, $size = 0, $size1 = 0, $size10 = 0, $sz = 0, $upr = 0; + var $v = 0, $vararg_buffer18 = 0, $x = 0, $x32 = 0, $zCol = 0, $zDb = 0, $zLeft = 0, $zMode = 0, $zOnDelete = 0, $zOnUpdate = 0, $zOpt = 0, $zRet = 0, $zRight = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 512|0; + $vararg_buffer18 = sp; + $0 = sp + 268|0; + $1 = sp + 328|0; + $2 = sp + 356|0; + $3 = sp + 260|0; + $4 = sp + 496|0; + $zLeft = sp + 492|0; + $zRight = sp + 488|0; + $zDb = sp + 484|0; + $pId = sp + 480|0; + $aFcntl = sp + 464|0; + $iDb = sp + 460|0; + $lwr = sp + 456|0; + $upr = sp + 452|0; + $mid = sp + 448|0; + $rc = sp + 444|0; + $db = sp + 440|0; + $pDb = sp + 436|0; + $v = sp + 432|0; + $mem = sp + 428|0; + $addr = sp + 424|0; + $size = sp + 420|0; + $pBt = sp + 416|0; + $size1 = sp + 412|0; + $pBt2 = sp + 408|0; + $b = sp + 404|0; + $ii = sp + 400|0; + $iReg = sp + 396|0; + $zRet = sp + 392|0; + $eMode = sp + 388|0; + $pPager = sp + 384|0; + $ii3 = sp + 380|0; + $eMode4 = sp + 376|0; + $ii5 = sp + 372|0; + $zMode = sp + 368|0; + $n = sp + 364|0; + $pPager6 = sp + 360|0; + $iLimit = sp + 16|0; + $pBt7 = sp + 352|0; + $eAuto = sp + 348|0; + $iAddr = sp + 344|0; + $iLimit8 = sp + 340|0; + $addr9 = sp + 336|0; + $size10 = sp + 332|0; + $sz = sp + 8|0; + $res = sp + 324|0; + $mask = sp + 320|0; + $pTab = sp + 316|0; + $i = sp + 312|0; + $k = sp + 308|0; + $nHidden = sp + 304|0; + $pCol = sp + 300|0; + $pPk = sp + 296|0; + $pIdx = sp + 292|0; + $i11 = sp + 288|0; + $pTab12 = sp + 284|0; + $pIdx13 = sp + 280|0; + $pTab14 = sp + 276|0; + $i15 = sp + 272|0; + $cnum = sp + 500|0; + $pIdx16 = sp + 264|0; + $pTab17 = sp + 256|0; + $i18 = sp + 140|0; + $i19 = sp + 136|0; + $i20 = sp + 132|0; + $p = sp + 128|0; + $pColl = sp + 124|0; + $pFK = sp + 120|0; + $pTab21 = sp + 116|0; + $i22 = sp + 112|0; + $j = sp + 108|0; + $zCol = sp + 104|0; + $zOnDelete = sp + 100|0; + $zOnUpdate = sp + 96|0; + $pFK23 = sp + 92|0; + $pTab24 = sp + 88|0; + $pParent = sp + 84|0; + $pIdx25 = sp + 52|0; + $i26 = sp + 32|0; + $j27 = sp + 36|0; + $k28 = sp + 40|0; + $x = sp + 44|0; + $regResult = sp + 48|0; + $regKey = sp + 56|0; + $regRow = sp + 60|0; + $addrTop = sp + 64|0; + $addrOk = sp + 68|0; + $aiCols = sp + 72|0; + $iKey = sp + 76|0; + $i29 = sp + 80|0; + $j30 = sp + 144|0; + $addr31 = sp + 148|0; + $mxErr = sp + 152|0; + $isQuick = sp + 156|0; + $x32 = sp + 160|0; + $pTbls = sp + 164|0; + $cnt = sp + 168|0; + $pTab33 = sp + 172|0; + $pIdx34 = sp + 176|0; + $pTab35 = sp + 180|0; + $pIdx36 = sp + 184|0; + $pPk37 = sp + 188|0; + $pPrior = sp + 192|0; + $loopTop = sp + 196|0; + $iDataCur = sp + 200|0; + $iIdxCur = sp + 204|0; + $r1 = sp + 208|0; + $jmp2 = sp + 212|0; + $jmp3 = sp + 216|0; + $jmp4 = sp + 220|0; + $pEnc = sp + 224|0; + $iCookie = sp + 228|0; + $addr38 = sp + 232|0; + $addr39 = sp + 236|0; + $i40 = sp + 240|0; + $zOpt = sp + 244|0; + $iBt = sp + 248|0; + $eMode41 = sp + 252|0; + $N = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pId1; + HEAP32[$2>>2] = $pId2; + HEAP32[$3>>2] = $pValue; + HEAP32[$4>>2] = $minusFlag; + HEAP32[$zLeft>>2] = 0; + HEAP32[$zRight>>2] = 0; + HEAP32[$zDb>>2] = 0; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = (_sqlite3GetVdbe($7)|0); + HEAP32[$v>>2] = $8; + $9 = HEAP32[$v>>2]|0; + $10 = ($9|0)==(0|0); + if ($10) { + STACKTOP = sp;return; + } + $11 = HEAP32[$v>>2]|0; + _sqlite3VdbeRunOnlyOnce($11); + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 72|0); + HEAP32[$13>>2] = 2; + $14 = HEAP32[$0>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$2>>2]|0; + $17 = (_sqlite3TwoPartName($14,$15,$16,$pId)|0); + HEAP32[$iDb>>2] = $17; + $18 = HEAP32[$iDb>>2]|0; + $19 = ($18|0)<(0); + if ($19) { + STACKTOP = sp;return; + } + $20 = HEAP32[$iDb>>2]|0; + $21 = HEAP32[$db>>2]|0; + $22 = (($21) + 16|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + ($20<<4)|0); + HEAP32[$pDb>>2] = $24; + $25 = HEAP32[$iDb>>2]|0; + $26 = ($25|0)==(1); + if ($26) { + $27 = HEAP32[$0>>2]|0; + $28 = (_sqlite3OpenTempDatabase($27)|0); + $29 = ($28|0)!=(0); + if ($29) { + STACKTOP = sp;return; + } + } + $30 = HEAP32[$db>>2]|0; + $31 = HEAP32[$pId>>2]|0; + $32 = (_sqlite3NameFromToken($30,$31)|0); + HEAP32[$zLeft>>2] = $32; + $33 = HEAP32[$zLeft>>2]|0; + $34 = ($33|0)!=(0|0); + if (!($34)) { + STACKTOP = sp;return; + } + $35 = HEAP32[$4>>2]|0; + $36 = ($35|0)!=(0); + $37 = HEAP32[$db>>2]|0; + $38 = HEAP32[$3>>2]|0; + if ($36) { + HEAP32[$vararg_buffer18>>2] = $38; + $39 = (_sqlite3MPrintf($37,26776,$vararg_buffer18)|0); + HEAP32[$zRight>>2] = $39; + } else { + $40 = (_sqlite3NameFromToken($37,$38)|0); + HEAP32[$zRight>>2] = $40; + } + $41 = HEAP32[$2>>2]|0; + $42 = (($41) + 4|0); + $43 = HEAP32[$42>>2]|0; + $44 = ($43>>>0)>(0); + if ($44) { + $45 = HEAP32[$pDb>>2]|0; + $46 = HEAP32[$45>>2]|0; + $47 = $46; + } else { + $47 = 0; + } + HEAP32[$zDb>>2] = $47; + $48 = HEAP32[$0>>2]|0; + $49 = HEAP32[$zLeft>>2]|0; + $50 = HEAP32[$zRight>>2]|0; + $51 = HEAP32[$zDb>>2]|0; + $52 = (_sqlite3AuthCheck($48,19,$49,$50,$51)|0); + $53 = ($52|0)!=(0); + L21: do { + if (!($53)) { + HEAP32[$aFcntl>>2] = 0; + $54 = HEAP32[$zLeft>>2]|0; + $55 = (($aFcntl) + 4|0); + HEAP32[$55>>2] = $54; + $56 = HEAP32[$zRight>>2]|0; + $57 = (($aFcntl) + 8|0); + HEAP32[$57>>2] = $56; + $58 = (($aFcntl) + 12|0); + HEAP32[$58>>2] = 0; + $59 = HEAP32[$db>>2]|0; + $60 = (($59) + 436|0); + $61 = (($60) + 8|0); + HEAP32[$61>>2] = 0; + $62 = HEAP32[$db>>2]|0; + $63 = HEAP32[$zDb>>2]|0; + $64 = (_sqlite3_file_control($62,$63,14,$aFcntl)|0); + HEAP32[$rc>>2] = $64; + $65 = HEAP32[$rc>>2]|0; + $66 = ($65|0)==(0); + if ($66) { + $67 = HEAP32[$aFcntl>>2]|0; + $68 = ($67|0)!=(0|0); + if (!($68)) { + break; + } + $69 = HEAP32[$0>>2]|0; + $70 = (($69) + 72|0); + $71 = HEAP32[$70>>2]|0; + $72 = (($71) + 1)|0; + HEAP32[$70>>2] = $72; + HEAP32[$mem>>2] = $72; + $73 = HEAP32[$v>>2]|0; + $74 = HEAP32[$mem>>2]|0; + $75 = HEAP32[$aFcntl>>2]|0; + (_sqlite3VdbeAddOp4($73,97,0,$74,0,$75,0)|0); + $76 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($76,1); + $77 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($77,0,0,26784,0)|0); + $78 = HEAP32[$v>>2]|0; + $79 = HEAP32[$mem>>2]|0; + (_sqlite3VdbeAddOp2($78,35,$79,1)|0); + $80 = HEAP32[$aFcntl>>2]|0; + _sqlite3_free($80); + break; + } + $81 = HEAP32[$rc>>2]|0; + $82 = ($81|0)!=(12); + if ($82) { + $83 = HEAP32[$aFcntl>>2]|0; + $84 = ($83|0)!=(0|0); + if ($84) { + $85 = HEAP32[$0>>2]|0; + $86 = HEAP32[$aFcntl>>2]|0; + HEAP32[$vararg_buffer18>>2] = $86; + _sqlite3ErrorMsg($85,1768,$vararg_buffer18); + $87 = HEAP32[$aFcntl>>2]|0; + _sqlite3_free($87); + } + $88 = HEAP32[$0>>2]|0; + $89 = (($88) + 64|0); + $90 = HEAP32[$89>>2]|0; + $91 = (($90) + 1)|0; + HEAP32[$89>>2] = $91; + $92 = HEAP32[$rc>>2]|0; + $93 = HEAP32[$0>>2]|0; + $94 = (($93) + 12|0); + HEAP32[$94>>2] = $92; + break; + } + HEAP32[$lwr>>2] = 0; + HEAP32[$upr>>2] = 53; + while(1) { + $95 = HEAP32[$lwr>>2]|0; + $96 = HEAP32[$upr>>2]|0; + $97 = ($95|0)<=($96|0); + if (!($97)) { + break; + } + $98 = HEAP32[$lwr>>2]|0; + $99 = HEAP32[$upr>>2]|0; + $100 = (($98) + ($99))|0; + $101 = (($100|0) / 2)&-1; + HEAP32[$mid>>2] = $101; + $102 = HEAP32[$zLeft>>2]|0; + $103 = HEAP32[$mid>>2]|0; + $104 = (26792 + (($103*12)|0)|0); + $105 = HEAP32[$104>>2]|0; + $106 = (_sqlite3_stricmp($102,$105)|0); + HEAP32[$rc>>2] = $106; + $107 = HEAP32[$rc>>2]|0; + $108 = ($107|0)==(0); + if ($108) { + break; + } + $109 = HEAP32[$rc>>2]|0; + $110 = ($109|0)<(0); + $111 = HEAP32[$mid>>2]|0; + if ($110) { + $112 = (($111) - 1)|0; + HEAP32[$upr>>2] = $112; + continue; + } else { + $113 = (($111) + 1)|0; + HEAP32[$lwr>>2] = $113; + continue; + } + } + $114 = HEAP32[$lwr>>2]|0; + $115 = HEAP32[$upr>>2]|0; + $116 = ($114|0)>($115|0); + if (!($116)) { + $117 = HEAP32[$mid>>2]|0; + $118 = (26792 + (($117*12)|0)|0); + $119 = (($118) + 5|0); + $120 = HEAP8[$119>>0]|0; + $121 = $120&255; + $122 = $121 & 1; + $123 = ($122|0)!=(0); + if ($123) { + $124 = HEAP32[$0>>2]|0; + $125 = (_sqlite3ReadSchema($124)|0); + $126 = ($125|0)!=(0); + if ($126) { + break; + } + } + $127 = HEAP32[$mid>>2]|0; + $128 = (26792 + (($127*12)|0)|0); + $129 = (($128) + 4|0); + $130 = HEAP8[$129>>0]|0; + $131 = $130&255; + do { + switch ($131|0) { + case 21: { + HEAP32[$zRet>>2] = 27528; + $262 = HEAP32[$zRight>>2]|0; + $263 = (_getLockingMode($262)|0); + HEAP32[$eMode>>2] = $263; + $264 = HEAP32[$2>>2]|0; + $265 = (($264) + 4|0); + $266 = HEAP32[$265>>2]|0; + $267 = ($266|0)==(0); + if ($267) { + $268 = HEAP32[$eMode>>2]|0; + $269 = ($268|0)==(-1); + if ($269) { + $270 = HEAP32[$db>>2]|0; + $271 = (($270) + 65|0); + $272 = HEAP8[$271>>0]|0; + $273 = $272&255; + HEAP32[$eMode>>2] = $273; + } else { + label = 53; + } + } else { + label = 53; + } + if ((label|0) == 53) { + $274 = HEAP32[$2>>2]|0; + $275 = (($274) + 4|0); + $276 = HEAP32[$275>>2]|0; + $277 = ($276|0)==(0); + if ($277) { + HEAP32[$ii3>>2] = 2; + while(1) { + $278 = HEAP32[$ii3>>2]|0; + $279 = HEAP32[$db>>2]|0; + $280 = (($279) + 20|0); + $281 = HEAP32[$280>>2]|0; + $282 = ($278|0)<($281|0); + if (!($282)) { + break; + } + $283 = HEAP32[$ii3>>2]|0; + $284 = HEAP32[$db>>2]|0; + $285 = (($284) + 16|0); + $286 = HEAP32[$285>>2]|0; + $287 = (($286) + ($283<<4)|0); + $288 = (($287) + 4|0); + $289 = HEAP32[$288>>2]|0; + $290 = (_sqlite3BtreePager($289)|0); + HEAP32[$pPager>>2] = $290; + $291 = HEAP32[$pPager>>2]|0; + $292 = HEAP32[$eMode>>2]|0; + (_sqlite3PagerLockingMode($291,$292)|0); + $293 = HEAP32[$ii3>>2]|0; + $294 = (($293) + 1)|0; + HEAP32[$ii3>>2] = $294; + } + $295 = HEAP32[$eMode>>2]|0; + $296 = $295&255; + $297 = HEAP32[$db>>2]|0; + $298 = (($297) + 65|0); + HEAP8[$298>>0] = $296; + } + $299 = HEAP32[$pDb>>2]|0; + $300 = (($299) + 4|0); + $301 = HEAP32[$300>>2]|0; + $302 = (_sqlite3BtreePager($301)|0); + HEAP32[$pPager>>2] = $302; + $303 = HEAP32[$pPager>>2]|0; + $304 = HEAP32[$eMode>>2]|0; + $305 = (_sqlite3PagerLockingMode($303,$304)|0); + HEAP32[$eMode>>2] = $305; + } + $306 = HEAP32[$eMode>>2]|0; + $307 = ($306|0)==(1); + if ($307) { + HEAP32[$zRet>>2] = 27536; + } + $308 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($308,1); + $309 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($309,0,0,27552,0)|0); + $310 = HEAP32[$v>>2]|0; + $311 = HEAP32[$zRet>>2]|0; + (_sqlite3VdbeAddOp4($310,97,0,1,0,$311,0)|0); + $312 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($312,35,1,1)|0); + break L21; + break; + } + case 25: { + $202 = HEAP32[$pDb>>2]|0; + $203 = (($202) + 4|0); + $204 = HEAP32[$203>>2]|0; + HEAP32[$pBt2>>2] = $204; + HEAP32[$b>>2] = -1; + $205 = HEAP32[$zRight>>2]|0; + $206 = ($205|0)!=(0|0); + if ($206) { + $207 = HEAP32[$zRight>>2]|0; + $208 = (_sqlite3GetBoolean($207,0)|0); + $209 = $208&255; + HEAP32[$b>>2] = $209; + } + $210 = HEAP32[$2>>2]|0; + $211 = (($210) + 4|0); + $212 = HEAP32[$211>>2]|0; + $213 = ($212|0)==(0); + L67: do { + if ($213) { + $214 = HEAP32[$b>>2]|0; + $215 = ($214|0)>=(0); + if ($215) { + HEAP32[$ii>>2] = 0; + while(1) { + $216 = HEAP32[$ii>>2]|0; + $217 = HEAP32[$db>>2]|0; + $218 = (($217) + 20|0); + $219 = HEAP32[$218>>2]|0; + $220 = ($216|0)<($219|0); + if (!($220)) { + break L67; + } + $221 = HEAP32[$ii>>2]|0; + $222 = HEAP32[$db>>2]|0; + $223 = (($222) + 16|0); + $224 = HEAP32[$223>>2]|0; + $225 = (($224) + ($221<<4)|0); + $226 = (($225) + 4|0); + $227 = HEAP32[$226>>2]|0; + $228 = HEAP32[$b>>2]|0; + (_sqlite3BtreeSecureDelete($227,$228)|0); + $229 = HEAP32[$ii>>2]|0; + $230 = (($229) + 1)|0; + HEAP32[$ii>>2] = $230; + } + } + } + } while(0); + $231 = HEAP32[$pBt2>>2]|0; + $232 = HEAP32[$b>>2]|0; + $233 = (_sqlite3BtreeSecureDelete($231,$232)|0); + HEAP32[$b>>2] = $233; + $234 = HEAP32[$0>>2]|0; + $235 = HEAP32[$b>>2]|0; + $236 = ($235|0)<(0); + $237 = $236 << 31 >> 31; + _returnSingleInt($234,27512,$235,$237); + break L21; + break; + } + case 22: { + $238 = HEAP32[$0>>2]|0; + $239 = HEAP32[$iDb>>2]|0; + _sqlite3CodeVerifySchema($238,$239); + $240 = HEAP32[$0>>2]|0; + $241 = (($240) + 72|0); + $242 = HEAP32[$241>>2]|0; + $243 = (($242) + 1)|0; + HEAP32[$241>>2] = $243; + HEAP32[$iReg>>2] = $243; + $244 = HEAP32[$zLeft>>2]|0; + $245 = HEAP8[$244>>0]|0; + $246 = $245&255; + $247 = (784 + ($246)|0); + $248 = HEAP8[$247>>0]|0; + $249 = $248&255; + $250 = ($249|0)==(112); + $251 = HEAP32[$v>>2]|0; + $252 = HEAP32[$iDb>>2]|0; + $253 = HEAP32[$iReg>>2]|0; + if ($250) { + (_sqlite3VdbeAddOp2($251,153,$252,$253)|0); + } else { + $254 = HEAP32[$zRight>>2]|0; + $255 = (_sqlite3Atoi($254)|0); + $256 = (_sqlite3AbsInt32($255)|0); + (_sqlite3VdbeAddOp3($251,154,$252,$253,$256)|0); + } + $257 = HEAP32[$v>>2]|0; + $258 = HEAP32[$iReg>>2]|0; + (_sqlite3VdbeAddOp2($257,35,$258,1)|0); + $259 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($259,1); + $260 = HEAP32[$v>>2]|0; + $261 = HEAP32[$zLeft>>2]|0; + (_sqlite3VdbeSetColName($260,0,0,$261,(-1))|0); + break L21; + break; + } + case 10: { + $132 = HEAP32[$v>>2]|0; + $133 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeUsesBtree($132,$133); + $134 = HEAP32[$zRight>>2]|0; + $135 = ($134|0)!=(0|0); + if ($135) { + $154 = HEAP32[$zRight>>2]|0; + $155 = (_sqlite3Atoi($154)|0); + $156 = (_sqlite3AbsInt32($155)|0); + HEAP32[$size>>2] = $156; + $157 = HEAP32[$0>>2]|0; + $158 = HEAP32[$iDb>>2]|0; + _sqlite3BeginWriteOperation($157,0,$158); + $159 = HEAP32[$v>>2]|0; + $160 = HEAP32[$size>>2]|0; + (_sqlite3VdbeAddOp2($159,25,$160,1)|0); + $161 = HEAP32[$v>>2]|0; + $162 = HEAP32[$iDb>>2]|0; + (_sqlite3VdbeAddOp3($161,51,$162,3,1)|0); + $163 = HEAP32[$size>>2]|0; + $164 = HEAP32[$pDb>>2]|0; + $165 = (($164) + 12|0); + $166 = HEAP32[$165>>2]|0; + $167 = (($166) + 80|0); + HEAP32[$167>>2] = $163; + $168 = HEAP32[$pDb>>2]|0; + $169 = (($168) + 4|0); + $170 = HEAP32[$169>>2]|0; + $171 = HEAP32[$pDb>>2]|0; + $172 = (($171) + 12|0); + $173 = HEAP32[$172>>2]|0; + $174 = (($173) + 80|0); + $175 = HEAP32[$174>>2]|0; + (_sqlite3BtreeSetCacheSize($170,$175)|0); + break L21; + } else { + $136 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($136,1); + $137 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($137,0,0,27480,0)|0); + $138 = HEAP32[$0>>2]|0; + $139 = (($138) + 72|0); + $140 = HEAP32[$139>>2]|0; + $141 = (($140) + 2)|0; + HEAP32[$139>>2] = $141; + $142 = HEAP32[$v>>2]|0; + $143 = (_sqlite3VdbeAddOpList($142,9,27440,0)|0); + HEAP32[$addr>>2] = $143; + $144 = HEAP32[$v>>2]|0; + $145 = HEAP32[$addr>>2]|0; + $146 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeChangeP1($144,$145,$146); + $147 = HEAP32[$v>>2]|0; + $148 = HEAP32[$addr>>2]|0; + $149 = (($148) + 1)|0; + $150 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeChangeP1($147,$149,$150); + $151 = HEAP32[$v>>2]|0; + $152 = HEAP32[$addr>>2]|0; + $153 = (($152) + 6)|0; + _sqlite3VdbeChangeP1($151,$153,2000); + break L21; + } + break; + } + case 24: { + $176 = HEAP32[$pDb>>2]|0; + $177 = (($176) + 4|0); + $178 = HEAP32[$177>>2]|0; + HEAP32[$pBt>>2] = $178; + $179 = HEAP32[$zRight>>2]|0; + $180 = ($179|0)!=(0|0); + if ($180) { + $190 = HEAP32[$zRight>>2]|0; + $191 = (_sqlite3Atoi($190)|0); + $192 = HEAP32[$db>>2]|0; + $193 = (($192) + 72|0); + HEAP32[$193>>2] = $191; + $194 = HEAP32[$pBt>>2]|0; + $195 = HEAP32[$db>>2]|0; + $196 = (($195) + 72|0); + $197 = HEAP32[$196>>2]|0; + $198 = (_sqlite3BtreeSetPageSize($194,$197,-1,0)|0); + $199 = (7)==($198|0); + if (!($199)) { + break L21; + } + $200 = HEAP32[$db>>2]|0; + $201 = (($200) + 64|0); + HEAP8[$201>>0] = 1; + break L21; + } + $181 = HEAP32[$pBt>>2]|0; + $182 = ($181|0)!=(0|0); + if ($182) { + $183 = HEAP32[$pBt>>2]|0; + $184 = (_sqlite3BtreeGetPageSize($183)|0); + $185 = $184; + } else { + $185 = 0; + } + HEAP32[$size1>>2] = $185; + $186 = HEAP32[$0>>2]|0; + $187 = HEAP32[$size1>>2]|0; + $188 = ($187|0)<(0); + $189 = $188 << 31 >> 31; + _returnSingleInt($186,27496,$187,$189); + break L21; + break; + } + case 14: { + $466 = HEAP32[$zRight>>2]|0; + $467 = ($466|0)==(0|0); + if ($467) { + label = 92; + } else { + $468 = HEAP32[$zRight>>2]|0; + $469 = (_sqlite3GetInt32($468,$iLimit8)|0); + $470 = ($469|0)==(0); + $471 = HEAP32[$iLimit8>>2]|0; + $472 = ($471|0)<=(0); + $or$cond3 = $470 | $472; + if ($or$cond3) { + label = 92; + } + } + if ((label|0) == 92) { + HEAP32[$iLimit8>>2] = 2147483647; + } + $473 = HEAP32[$0>>2]|0; + $474 = HEAP32[$iDb>>2]|0; + _sqlite3BeginWriteOperation($473,0,$474); + $475 = HEAP32[$v>>2]|0; + $476 = HEAP32[$iLimit8>>2]|0; + (_sqlite3VdbeAddOp2($475,25,$476,1)|0); + $477 = HEAP32[$v>>2]|0; + $478 = HEAP32[$iDb>>2]|0; + $479 = (_sqlite3VdbeAddOp1($477,138,$478)|0); + HEAP32[$addr9>>2] = $479; + $480 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp1($480,35,1)|0); + $481 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($481,37,1,-1)|0); + $482 = HEAP32[$v>>2]|0; + $483 = HEAP32[$addr9>>2]|0; + (_sqlite3VdbeAddOp2($482,134,1,$483)|0); + $484 = HEAP32[$v>>2]|0; + $485 = HEAP32[$addr9>>2]|0; + _sqlite3VdbeJumpHere($484,$485); + break L21; + break; + } + case 18: { + $313 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($313,1); + $314 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($314,0,0,27568,0)|0); + $315 = HEAP32[$zRight>>2]|0; + $316 = ($315|0)==(0|0); + if ($316) { + HEAP32[$eMode4>>2] = -1; + } else { + $317 = HEAP32[$zRight>>2]|0; + $318 = (_sqlite3Strlen30($317)|0); + HEAP32[$n>>2] = $318; + HEAP32[$eMode4>>2] = 0; + while(1) { + $319 = HEAP32[$eMode4>>2]|0; + $320 = (_sqlite3JournalModename($319)|0); + HEAP32[$zMode>>2] = $320; + $321 = ($320|0)!=(0|0); + if (!($321)) { + break; + } + $322 = HEAP32[$zRight>>2]|0; + $323 = HEAP32[$zMode>>2]|0; + $324 = HEAP32[$n>>2]|0; + $325 = (_sqlite3_strnicmp($322,$323,$324)|0); + $326 = ($325|0)==(0); + if ($326) { + break; + } + $327 = HEAP32[$eMode4>>2]|0; + $328 = (($327) + 1)|0; + HEAP32[$eMode4>>2] = $328; + } + $329 = HEAP32[$zMode>>2]|0; + $330 = ($329|0)!=(0|0); + if (!($330)) { + HEAP32[$eMode4>>2] = -1; + } + } + $331 = HEAP32[$eMode4>>2]|0; + $332 = ($331|0)==(-1); + if ($332) { + $333 = HEAP32[$2>>2]|0; + $334 = (($333) + 4|0); + $335 = HEAP32[$334>>2]|0; + $336 = ($335|0)==(0); + if ($336) { + HEAP32[$iDb>>2] = 0; + $337 = HEAP32[$2>>2]|0; + $338 = (($337) + 4|0); + HEAP32[$338>>2] = 1; + } + } + $339 = HEAP32[$db>>2]|0; + $340 = (($339) + 20|0); + $341 = HEAP32[$340>>2]|0; + $342 = (($341) - 1)|0; + HEAP32[$ii5>>2] = $342; + while(1) { + $343 = HEAP32[$ii5>>2]|0; + $344 = ($343|0)>=(0); + if (!($344)) { + break; + } + $345 = HEAP32[$ii5>>2]|0; + $346 = HEAP32[$db>>2]|0; + $347 = (($346) + 16|0); + $348 = HEAP32[$347>>2]|0; + $349 = (($348) + ($345<<4)|0); + $350 = (($349) + 4|0); + $351 = HEAP32[$350>>2]|0; + $352 = ($351|0)!=(0|0); + do { + if ($352) { + $353 = HEAP32[$ii5>>2]|0; + $354 = HEAP32[$iDb>>2]|0; + $355 = ($353|0)==($354|0); + if (!($355)) { + $356 = HEAP32[$2>>2]|0; + $357 = (($356) + 4|0); + $358 = HEAP32[$357>>2]|0; + $359 = ($358|0)==(0); + if (!($359)) { + break; + } + } + $360 = HEAP32[$v>>2]|0; + $361 = HEAP32[$ii5>>2]|0; + _sqlite3VdbeUsesBtree($360,$361); + $362 = HEAP32[$v>>2]|0; + $363 = HEAP32[$ii5>>2]|0; + $364 = HEAP32[$eMode4>>2]|0; + (_sqlite3VdbeAddOp3($362,12,$363,1,$364)|0); + } + } while(0); + $365 = HEAP32[$ii5>>2]|0; + $366 = (($365) + -1)|0; + HEAP32[$ii5>>2] = $366; + } + $367 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($367,35,1,1)|0); + break L21; + break; + } + case 29: { + $574 = HEAP32[$zRight>>2]|0; + $575 = ($574|0)!=(0|0); + if (!($575)) { + $576 = HEAP32[$0>>2]|0; + $577 = HEAP32[$pDb>>2]|0; + $578 = (($577) + 8|0); + $579 = HEAP8[$578>>0]|0; + $580 = $579&255; + $581 = (($580) - 1)|0; + $582 = ($581|0)<(0); + $583 = $582 << 31 >> 31; + _returnSingleInt($576,27736,$581,$583); + break L21; + } + $584 = HEAP32[$db>>2]|0; + $585 = (($584) + 62|0); + $586 = HEAP8[$585>>0]|0; + $587 = ($586<<24>>24)!=(0); + if ($587) { + $589 = HEAP32[$zRight>>2]|0; + $590 = (_getSafetyLevel($589,0,1)|0); + $591 = $590&255; + $592 = (($591) + 1)|0; + $593 = $592&255; + $594 = HEAP32[$pDb>>2]|0; + $595 = (($594) + 8|0); + HEAP8[$595>>0] = $593; + $596 = HEAP32[$db>>2]|0; + _setAllPagerFlags($596); + break L21; + } else { + $588 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($588,27752,$vararg_buffer18); + break L21; + } + break; + } + case 19: { + $368 = HEAP32[$pDb>>2]|0; + $369 = (($368) + 4|0); + $370 = HEAP32[$369>>2]|0; + $371 = (_sqlite3BtreePager($370)|0); + HEAP32[$pPager6>>2] = $371; + $372 = $iLimit; + $373 = $372; + HEAP32[$373>>2] = -2; + $374 = (($372) + 4)|0; + $375 = $374; + HEAP32[$375>>2] = -1; + $376 = HEAP32[$zRight>>2]|0; + $377 = ($376|0)!=(0|0); + if ($377) { + $378 = HEAP32[$zRight>>2]|0; + $379 = HEAP32[$zRight>>2]|0; + $380 = (_sqlite3Strlen30($379)|0); + (_sqlite3Atoi64($378,$iLimit,$380,1)|0); + $381 = $iLimit; + $382 = $381; + $383 = HEAP32[$382>>2]|0; + $384 = (($381) + 4)|0; + $385 = $384; + $386 = HEAP32[$385>>2]|0; + $387 = ($386|0)<(-1); + $388 = ($386|0)==(-1); + $389 = ($383>>>0)<(4294967295); + $390 = $388 & $389; + $391 = $387 | $390; + if ($391) { + $392 = $iLimit; + $393 = $392; + HEAP32[$393>>2] = -1; + $394 = (($392) + 4)|0; + $395 = $394; + HEAP32[$395>>2] = -1; + } + } + $396 = HEAP32[$pPager6>>2]|0; + $397 = $iLimit; + $398 = $397; + $399 = HEAP32[$398>>2]|0; + $400 = (($397) + 4)|0; + $401 = $400; + $402 = HEAP32[$401>>2]|0; + $403 = (_sqlite3PagerJournalSizeLimit($396,$399,$402)|0); + $404 = tempRet0; + $405 = $iLimit; + $406 = $405; + HEAP32[$406>>2] = $403; + $407 = (($405) + 4)|0; + $408 = $407; + HEAP32[$408>>2] = $404; + $409 = HEAP32[$0>>2]|0; + $410 = $iLimit; + $411 = $410; + $412 = HEAP32[$411>>2]|0; + $413 = (($410) + 4)|0; + $414 = $413; + $415 = HEAP32[$414>>2]|0; + _returnSingleInt($409,27584,$412,$415); + break L21; + break; + } + case 23: { + $511 = $sz; + $512 = $511; + HEAP32[$512>>2] = 0; + $513 = (($511) + 4)|0; + $514 = $513; + HEAP32[$514>>2] = 0; + HEAP32[$rc>>2] = 0; + $515 = HEAP32[$rc>>2]|0; + $516 = ($515|0)==(0); + if ($516) { + $517 = HEAP32[$0>>2]|0; + $518 = $sz; + $519 = $518; + $520 = HEAP32[$519>>2]|0; + $521 = (($518) + 4)|0; + $522 = $521; + $523 = HEAP32[$522>>2]|0; + _returnSingleInt($517,27648,$520,$523); + break L21; + } + $524 = HEAP32[$rc>>2]|0; + $525 = ($524|0)!=(12); + if (!($525)) { + break L21; + } + $526 = HEAP32[$0>>2]|0; + $527 = (($526) + 64|0); + $528 = HEAP32[$527>>2]|0; + $529 = (($528) + 1)|0; + HEAP32[$527>>2] = $529; + $530 = HEAP32[$rc>>2]|0; + $531 = HEAP32[$0>>2]|0; + $532 = (($531) + 12|0); + HEAP32[$532>>2] = $530; + break L21; + break; + } + case 4: { + $486 = HEAP32[$zRight>>2]|0; + $487 = ($486|0)!=(0|0); + if ($487) { + $496 = HEAP32[$zRight>>2]|0; + $497 = (_sqlite3Atoi($496)|0); + HEAP32[$size10>>2] = $497; + $498 = HEAP32[$size10>>2]|0; + $499 = HEAP32[$pDb>>2]|0; + $500 = (($499) + 12|0); + $501 = HEAP32[$500>>2]|0; + $502 = (($501) + 80|0); + HEAP32[$502>>2] = $498; + $503 = HEAP32[$pDb>>2]|0; + $504 = (($503) + 4|0); + $505 = HEAP32[$504>>2]|0; + $506 = HEAP32[$pDb>>2]|0; + $507 = (($506) + 12|0); + $508 = HEAP32[$507>>2]|0; + $509 = (($508) + 80|0); + $510 = HEAP32[$509>>2]|0; + (_sqlite3BtreeSetCacheSize($505,$510)|0); + break L21; + } else { + $488 = HEAP32[$0>>2]|0; + $489 = HEAP32[$pDb>>2]|0; + $490 = (($489) + 12|0); + $491 = HEAP32[$490>>2]|0; + $492 = (($491) + 80|0); + $493 = HEAP32[$492>>2]|0; + $494 = ($493|0)<(0); + $495 = $494 << 31 >> 31; + _returnSingleInt($488,27480,$493,$495); + break L21; + } + break; + } + case 1: { + $416 = HEAP32[$pDb>>2]|0; + $417 = (($416) + 4|0); + $418 = HEAP32[$417>>2]|0; + HEAP32[$pBt7>>2] = $418; + $419 = HEAP32[$zRight>>2]|0; + $420 = ($419|0)!=(0|0); + if (!($420)) { + $421 = HEAP32[$0>>2]|0; + $422 = HEAP32[$pBt7>>2]|0; + $423 = (_sqlite3BtreeGetAutoVacuum($422)|0); + $424 = ($423|0)<(0); + $425 = $424 << 31 >> 31; + _returnSingleInt($421,27608,$423,$425); + break L21; + } + $426 = HEAP32[$zRight>>2]|0; + $427 = (_getAutoVacuum($426)|0); + HEAP32[$eAuto>>2] = $427; + $428 = HEAP32[$eAuto>>2]|0; + $429 = $428&255; + $430 = HEAP32[$db>>2]|0; + $431 = (($430) + 66|0); + HEAP8[$431>>0] = $429; + $432 = HEAP32[$pBt7>>2]|0; + $433 = HEAP32[$eAuto>>2]|0; + $434 = (_sqlite3BtreeSetAutoVacuum($432,$433)|0); + HEAP32[$rc>>2] = $434; + $435 = HEAP32[$rc>>2]|0; + $436 = ($435|0)==(0); + if (!($436)) { + break L21; + } + $437 = HEAP32[$eAuto>>2]|0; + $438 = ($437|0)==(1); + $439 = HEAP32[$eAuto>>2]|0; + $440 = ($439|0)==(2); + $or$cond = $438 | $440; + if (!($or$cond)) { + break L21; + } + $441 = HEAP32[$v>>2]|0; + $442 = (_sqlite3VdbeAddOpList($441,6,27624,0)|0); + HEAP32[$iAddr>>2] = $442; + $443 = HEAP32[$v>>2]|0; + $444 = HEAP32[$iAddr>>2]|0; + $445 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeChangeP1($443,$444,$445); + $446 = HEAP32[$v>>2]|0; + $447 = HEAP32[$iAddr>>2]|0; + $448 = (($447) + 1)|0; + $449 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeChangeP1($446,$448,$449); + $450 = HEAP32[$v>>2]|0; + $451 = HEAP32[$iAddr>>2]|0; + $452 = (($451) + 2)|0; + $453 = HEAP32[$iAddr>>2]|0; + $454 = (($453) + 4)|0; + _sqlite3VdbeChangeP2($450,$452,$454); + $455 = HEAP32[$v>>2]|0; + $456 = HEAP32[$iAddr>>2]|0; + $457 = (($456) + 4)|0; + $458 = HEAP32[$eAuto>>2]|0; + $459 = (($458) - 1)|0; + _sqlite3VdbeChangeP1($455,$457,$459); + $460 = HEAP32[$v>>2]|0; + $461 = HEAP32[$iAddr>>2]|0; + $462 = (($461) + 5)|0; + $463 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeChangeP1($460,$462,$463); + $464 = HEAP32[$v>>2]|0; + $465 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeUsesBtree($464,$465); + break L21; + break; + } + case 2: { + $597 = HEAP32[$zRight>>2]|0; + $598 = ($597|0)==(0|0); + if ($598) { + $599 = HEAP32[$0>>2]|0; + $600 = HEAP32[$mid>>2]|0; + $601 = (26792 + (($600*12)|0)|0); + $602 = HEAP32[$601>>2]|0; + $603 = HEAP32[$db>>2]|0; + $604 = (($603) + 24|0); + $605 = HEAP32[$604>>2]|0; + $606 = HEAP32[$mid>>2]|0; + $607 = (26792 + (($606*12)|0)|0); + $608 = (($607) + 8|0); + $609 = HEAP32[$608>>2]|0; + $610 = $605 & $609; + $611 = ($610|0)!=(0); + $612 = $611&1; + $613 = ($612|0)<(0); + $614 = $613 << 31 >> 31; + _returnSingleInt($599,$602,$612,$614); + break L21; + } + $615 = HEAP32[$mid>>2]|0; + $616 = (26792 + (($615*12)|0)|0); + $617 = (($616) + 8|0); + $618 = HEAP32[$617>>2]|0; + HEAP32[$mask>>2] = $618; + $619 = HEAP32[$db>>2]|0; + $620 = (($619) + 62|0); + $621 = HEAP8[$620>>0]|0; + $622 = $621&255; + $623 = ($622|0)==(0); + if ($623) { + $624 = HEAP32[$mask>>2]|0; + $625 = $624 & -524289; + HEAP32[$mask>>2] = $625; + } + $626 = HEAP32[$zRight>>2]|0; + $627 = (_sqlite3GetBoolean($626,0)|0); + $628 = ($627<<24>>24)!=(0); + $629 = HEAP32[$mask>>2]|0; + if ($628) { + $630 = HEAP32[$db>>2]|0; + $631 = (($630) + 24|0); + $632 = HEAP32[$631>>2]|0; + $633 = $632 | $629; + HEAP32[$631>>2] = $633; + } else { + $634 = $629 ^ -1; + $635 = HEAP32[$db>>2]|0; + $636 = (($635) + 24|0); + $637 = HEAP32[$636>>2]|0; + $638 = $637 & $634; + HEAP32[$636>>2] = $638; + $639 = HEAP32[$mask>>2]|0; + $640 = ($639|0)==(16777216); + if ($640) { + $641 = HEAP32[$db>>2]|0; + $642 = (($641) + 504|0); + $643 = $642; + $644 = $643; + HEAP32[$644>>2] = 0; + $645 = (($643) + 4)|0; + $646 = $645; + HEAP32[$646>>2] = 0; + } + } + $647 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($647,139,0,0)|0); + $648 = HEAP32[$db>>2]|0; + _setAllPagerFlags($648); + break L21; + break; + } + case 31: { + $533 = HEAP32[$zRight>>2]|0; + $534 = ($533|0)!=(0|0); + $535 = HEAP32[$0>>2]|0; + if ($534) { + $540 = HEAP32[$zRight>>2]|0; + (_changeTempStorage($535,$540)|0); + break L21; + } else { + $536 = HEAP32[$db>>2]|0; + $537 = (($536) + 63|0); + $538 = HEAP8[$537>>0]|0; + $539 = $538&255; + _returnSingleInt($535,27664,$539,0); + break L21; + } + break; + } + case 32: { + $541 = HEAP32[$zRight>>2]|0; + $542 = ($541|0)!=(0|0); + if (!($542)) { + $543 = HEAP32[1888>>2]|0; + $544 = ($543|0)!=(0|0); + if (!($544)) { + break L21; + } + $545 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($545,1); + $546 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($546,0,0,27680,0)|0); + $547 = HEAP32[$v>>2]|0; + $548 = HEAP32[1888>>2]|0; + (_sqlite3VdbeAddOp4($547,97,0,1,0,$548,0)|0); + $549 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($549,35,1,1)|0); + break L21; + } + $550 = HEAP32[$zRight>>2]|0; + $551 = HEAP8[$550>>0]|0; + $552 = ($551<<24>>24)!=(0); + do { + if ($552) { + $553 = HEAP32[$db>>2]|0; + $554 = HEAP32[$553>>2]|0; + $555 = HEAP32[$zRight>>2]|0; + $556 = (_sqlite3OsAccess($554,$555,1,$res)|0); + HEAP32[$rc>>2] = $556; + $557 = HEAP32[$rc>>2]|0; + $558 = ($557|0)!=(0); + if (!($558)) { + $559 = HEAP32[$res>>2]|0; + $560 = ($559|0)==(0); + if (!($560)) { + break; + } + } + $561 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($561,27704,$vararg_buffer18); + break L21; + } + } while(0); + $562 = HEAP32[$db>>2]|0; + $563 = (($562) + 63|0); + $564 = HEAP8[$563>>0]|0; + $565 = $564&255; + $566 = ($565|0)<=(1); + if ($566) { + $567 = HEAP32[$0>>2]|0; + (_invalidateTempStorage($567)|0); + } + $568 = HEAP32[1888>>2]|0; + _sqlite3_free($568); + $569 = HEAP32[$zRight>>2]|0; + $570 = HEAP8[$569>>0]|0; + $571 = ($570<<24>>24)!=(0); + if ($571) { + $572 = HEAP32[$zRight>>2]|0; + HEAP32[$vararg_buffer18>>2] = $572; + $573 = (_sqlite3_mprintf(1768,$vararg_buffer18)|0); + HEAP32[1888>>2] = $573; + break L21; + } else { + HEAP32[1888>>2] = 0; + break L21; + } + break; + } + case 30: { + $649 = HEAP32[$zRight>>2]|0; + $650 = ($649|0)!=(0|0); + if (!($650)) { + break L21; + } + $651 = HEAP32[$db>>2]|0; + $652 = HEAP32[$zRight>>2]|0; + $653 = HEAP32[$zDb>>2]|0; + $654 = (_sqlite3FindTable($651,$652,$653)|0); + HEAP32[$pTab>>2] = $654; + $655 = HEAP32[$pTab>>2]|0; + $656 = ($655|0)!=(0|0); + if (!($656)) { + break L21; + } + HEAP32[$nHidden>>2] = 0; + $657 = HEAP32[$pTab>>2]|0; + $658 = (_sqlite3PrimaryKeyIndex($657)|0); + HEAP32[$pPk>>2] = $658; + $659 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($659,6); + $660 = HEAP32[$0>>2]|0; + $661 = (($660) + 72|0); + HEAP32[$661>>2] = 6; + $662 = HEAP32[$0>>2]|0; + $663 = HEAP32[$iDb>>2]|0; + _sqlite3CodeVerifySchema($662,$663); + $664 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($664,0,0,27808,0)|0); + $665 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($665,1,0,27816,0)|0); + $666 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($666,2,0,27824,0)|0); + $667 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($667,3,0,27832,0)|0); + $668 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($668,4,0,27840,0)|0); + $669 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($669,5,0,27856,0)|0); + $670 = HEAP32[$0>>2]|0; + $671 = HEAP32[$pTab>>2]|0; + (_sqlite3ViewGetColumnNames($670,$671)|0); + HEAP32[$i>>2] = 0; + $672 = HEAP32[$pTab>>2]|0; + $673 = (($672) + 4|0); + $674 = HEAP32[$673>>2]|0; + HEAP32[$pCol>>2] = $674; + while(1) { + $675 = HEAP32[$i>>2]|0; + $676 = HEAP32[$pTab>>2]|0; + $677 = (($676) + 38|0); + $678 = HEAP16[$677>>1]|0; + $679 = $678 << 16 >> 16; + $680 = ($675|0)<($679|0); + if (!($680)) { + break L21; + } + $681 = HEAP32[$pCol>>2]|0; + $682 = (($681) + 23|0); + $683 = HEAP8[$682>>0]|0; + $684 = $683&255; + $685 = $684 & 2; + $686 = ($685|0)!=(0); + if ($686) { + $687 = HEAP32[$nHidden>>2]|0; + $688 = (($687) + 1)|0; + HEAP32[$nHidden>>2] = $688; + } else { + $689 = HEAP32[$v>>2]|0; + $690 = HEAP32[$i>>2]|0; + $691 = HEAP32[$nHidden>>2]|0; + $692 = (($690) - ($691))|0; + (_sqlite3VdbeAddOp2($689,25,$692,1)|0); + $693 = HEAP32[$v>>2]|0; + $694 = HEAP32[$pCol>>2]|0; + $695 = HEAP32[$694>>2]|0; + (_sqlite3VdbeAddOp4($693,97,0,2,0,$695,0)|0); + $696 = HEAP32[$v>>2]|0; + $697 = HEAP32[$pCol>>2]|0; + $698 = (($697) + 12|0); + $699 = HEAP32[$698>>2]|0; + $700 = ($699|0)!=(0|0); + if ($700) { + $701 = HEAP32[$pCol>>2]|0; + $702 = (($701) + 12|0); + $703 = HEAP32[$702>>2]|0; + $704 = $703; + } else { + $704 = 1784; + } + (_sqlite3VdbeAddOp4($696,97,0,3,0,$704,0)|0); + $705 = HEAP32[$v>>2]|0; + $706 = HEAP32[$pCol>>2]|0; + $707 = (($706) + 20|0); + $708 = HEAP8[$707>>0]|0; + $709 = $708&255; + $710 = ($709|0)!=(0); + $711 = $710 ? 1 : 0; + (_sqlite3VdbeAddOp2($705,25,$711,4)|0); + $712 = HEAP32[$pCol>>2]|0; + $713 = (($712) + 8|0); + $714 = HEAP32[$713>>2]|0; + $715 = ($714|0)!=(0|0); + $716 = HEAP32[$v>>2]|0; + if ($715) { + $717 = HEAP32[$pCol>>2]|0; + $718 = (($717) + 8|0); + $719 = HEAP32[$718>>2]|0; + (_sqlite3VdbeAddOp4($716,97,0,5,0,$719,0)|0); + } else { + (_sqlite3VdbeAddOp2($716,28,0,5)|0); + } + $720 = HEAP32[$pCol>>2]|0; + $721 = (($720) + 23|0); + $722 = HEAP8[$721>>0]|0; + $723 = $722&255; + $724 = $723 & 1; + $725 = ($724|0)==(0); + L197: do { + if ($725) { + HEAP32[$k>>2] = 0; + } else { + $726 = HEAP32[$pPk>>2]|0; + $727 = ($726|0)==(0|0); + HEAP32[$k>>2] = 1; + if ($727) { + break; + } + while(1) { + $728 = HEAP32[$k>>2]|0; + $729 = HEAP32[$pTab>>2]|0; + $730 = (($729) + 38|0); + $731 = HEAP16[$730>>1]|0; + $732 = $731 << 16 >> 16; + $733 = ($728|0)<=($732|0); + if (!($733)) { + break L197; + } + $734 = HEAP32[$k>>2]|0; + $735 = (($734) - 1)|0; + $736 = HEAP32[$pPk>>2]|0; + $737 = (($736) + 4|0); + $738 = HEAP32[$737>>2]|0; + $739 = (($738) + ($735<<1)|0); + $740 = HEAP16[$739>>1]|0; + $741 = $740 << 16 >> 16; + $742 = HEAP32[$i>>2]|0; + $743 = ($741|0)!=($742|0); + if (!($743)) { + break L197; + } + $744 = HEAP32[$k>>2]|0; + $745 = (($744) + 1)|0; + HEAP32[$k>>2] = $745; + } + } + } while(0); + $746 = HEAP32[$v>>2]|0; + $747 = HEAP32[$k>>2]|0; + (_sqlite3VdbeAddOp2($746,25,$747,6)|0); + $748 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($748,35,1,6)|0); + } + $749 = HEAP32[$i>>2]|0; + $750 = (($749) + 1)|0; + HEAP32[$i>>2] = $750; + $751 = HEAP32[$pCol>>2]|0; + $752 = (($751) + 24|0); + HEAP32[$pCol>>2] = $752; + } + break; + } + case 12: { + $1057 = HEAP32[$0>>2]|0; + $1058 = (($1057) + 72|0); + $1059 = HEAP32[$1058>>2]|0; + $1060 = (($1059) + 1)|0; + HEAP32[$regResult>>2] = $1060; + $1061 = HEAP32[$0>>2]|0; + $1062 = (($1061) + 72|0); + $1063 = HEAP32[$1062>>2]|0; + $1064 = (($1063) + 4)|0; + HEAP32[$1062>>2] = $1064; + $1065 = HEAP32[$0>>2]|0; + $1066 = (($1065) + 72|0); + $1067 = HEAP32[$1066>>2]|0; + $1068 = (($1067) + 1)|0; + HEAP32[$1066>>2] = $1068; + HEAP32[$regKey>>2] = $1068; + $1069 = HEAP32[$0>>2]|0; + $1070 = (($1069) + 72|0); + $1071 = HEAP32[$1070>>2]|0; + $1072 = (($1071) + 1)|0; + HEAP32[$1070>>2] = $1072; + HEAP32[$regRow>>2] = $1072; + $1073 = HEAP32[$0>>2]|0; + $1074 = (_sqlite3GetVdbe($1073)|0); + HEAP32[$v>>2] = $1074; + $1075 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($1075,4); + $1076 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($1076,0,0,27864,0)|0); + $1077 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($1077,1,0,8848,0)|0); + $1078 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($1078,2,0,27992,0)|0); + $1079 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($1079,3,0,28000,0)|0); + $1080 = HEAP32[$0>>2]|0; + $1081 = HEAP32[$iDb>>2]|0; + _sqlite3CodeVerifySchema($1080,$1081); + $1082 = HEAP32[$iDb>>2]|0; + $1083 = HEAP32[$db>>2]|0; + $1084 = (($1083) + 16|0); + $1085 = HEAP32[$1084>>2]|0; + $1086 = (($1085) + ($1082<<4)|0); + $1087 = (($1086) + 12|0); + $1088 = HEAP32[$1087>>2]|0; + $1089 = (($1088) + 8|0); + $1090 = (($1089) + 8|0); + $1091 = HEAP32[$1090>>2]|0; + HEAP32[$k28>>2] = $1091; + while(1) { + $1092 = HEAP32[$k28>>2]|0; + $1093 = ($1092|0)!=(0|0); + if (!($1093)) { + break L21; + } + $1094 = HEAP32[$zRight>>2]|0; + $1095 = ($1094|0)!=(0|0); + if ($1095) { + $1096 = HEAP32[$0>>2]|0; + $1097 = HEAP32[$zRight>>2]|0; + $1098 = HEAP32[$zDb>>2]|0; + $1099 = (_sqlite3LocateTable($1096,0,$1097,$1098)|0); + HEAP32[$pTab24>>2] = $1099; + HEAP32[$k28>>2] = 0; + } else { + $1100 = HEAP32[$k28>>2]|0; + $1101 = (($1100) + 8|0); + $1102 = HEAP32[$1101>>2]|0; + HEAP32[$pTab24>>2] = $1102; + $1103 = HEAP32[$k28>>2]|0; + $1104 = HEAP32[$1103>>2]|0; + HEAP32[$k28>>2] = $1104; + } + $1105 = HEAP32[$pTab24>>2]|0; + $1106 = ($1105|0)==(0|0); + if ($1106) { + continue; + } + $1107 = HEAP32[$pTab24>>2]|0; + $1108 = (($1107) + 16|0); + $1109 = HEAP32[$1108>>2]|0; + $1110 = ($1109|0)==(0|0); + if ($1110) { + continue; + } + $1111 = HEAP32[$0>>2]|0; + $1112 = HEAP32[$iDb>>2]|0; + $1113 = HEAP32[$pTab24>>2]|0; + $1114 = (($1113) + 32|0); + $1115 = HEAP32[$1114>>2]|0; + $1116 = HEAP32[$pTab24>>2]|0; + $1117 = HEAP32[$1116>>2]|0; + _sqlite3TableLock($1111,$1112,$1115,0,$1117); + $1118 = HEAP32[$pTab24>>2]|0; + $1119 = (($1118) + 38|0); + $1120 = HEAP16[$1119>>1]|0; + $1121 = $1120 << 16 >> 16; + $1122 = HEAP32[$regRow>>2]|0; + $1123 = (($1121) + ($1122))|0; + $1124 = HEAP32[$0>>2]|0; + $1125 = (($1124) + 72|0); + $1126 = HEAP32[$1125>>2]|0; + $1127 = ($1123|0)>($1126|0); + if ($1127) { + $1128 = HEAP32[$pTab24>>2]|0; + $1129 = (($1128) + 38|0); + $1130 = HEAP16[$1129>>1]|0; + $1131 = $1130 << 16 >> 16; + $1132 = HEAP32[$regRow>>2]|0; + $1133 = (($1131) + ($1132))|0; + $1134 = HEAP32[$0>>2]|0; + $1135 = (($1134) + 72|0); + HEAP32[$1135>>2] = $1133; + } + $1136 = HEAP32[$0>>2]|0; + $1137 = HEAP32[$iDb>>2]|0; + $1138 = HEAP32[$pTab24>>2]|0; + _sqlite3OpenTable($1136,0,$1137,$1138,52); + $1139 = HEAP32[$v>>2]|0; + $1140 = HEAP32[$regResult>>2]|0; + $1141 = HEAP32[$pTab24>>2]|0; + $1142 = HEAP32[$1141>>2]|0; + (_sqlite3VdbeAddOp4($1139,97,0,$1140,0,$1142,0)|0); + HEAP32[$i26>>2] = 1; + $1143 = HEAP32[$pTab24>>2]|0; + $1144 = (($1143) + 16|0); + $1145 = HEAP32[$1144>>2]|0; + HEAP32[$pFK23>>2] = $1145; + L220: while(1) { + $1146 = HEAP32[$pFK23>>2]|0; + $1147 = ($1146|0)!=(0|0); + if (!($1147)) { + break; + } + $1148 = HEAP32[$db>>2]|0; + $1149 = HEAP32[$pFK23>>2]|0; + $1150 = (($1149) + 8|0); + $1151 = HEAP32[$1150>>2]|0; + $1152 = HEAP32[$zDb>>2]|0; + $1153 = (_sqlite3FindTable($1148,$1151,$1152)|0); + HEAP32[$pParent>>2] = $1153; + $1154 = HEAP32[$pParent>>2]|0; + $1155 = ($1154|0)==(0|0); + do { + if (!($1155)) { + HEAP32[$pIdx25>>2] = 0; + $1156 = HEAP32[$0>>2]|0; + $1157 = HEAP32[$iDb>>2]|0; + $1158 = HEAP32[$pParent>>2]|0; + $1159 = (($1158) + 32|0); + $1160 = HEAP32[$1159>>2]|0; + $1161 = HEAP32[$pParent>>2]|0; + $1162 = HEAP32[$1161>>2]|0; + _sqlite3TableLock($1156,$1157,$1160,0,$1162); + $1163 = HEAP32[$0>>2]|0; + $1164 = HEAP32[$pParent>>2]|0; + $1165 = HEAP32[$pFK23>>2]|0; + $1166 = (_sqlite3FkLocateIndex($1163,$1164,$1165,$pIdx25,0)|0); + HEAP32[$x>>2] = $1166; + $1167 = HEAP32[$x>>2]|0; + $1168 = ($1167|0)==(0); + if (!($1168)) { + label = 198; + break L220; + } + $1169 = HEAP32[$pIdx25>>2]|0; + $1170 = ($1169|0)==(0|0); + if ($1170) { + $1171 = HEAP32[$0>>2]|0; + $1172 = HEAP32[$i26>>2]|0; + $1173 = HEAP32[$iDb>>2]|0; + $1174 = HEAP32[$pParent>>2]|0; + _sqlite3OpenTable($1171,$1172,$1173,$1174,52); + break; + } else { + $1175 = HEAP32[$v>>2]|0; + $1176 = HEAP32[$i26>>2]|0; + $1177 = HEAP32[$pIdx25>>2]|0; + $1178 = (($1177) + 44|0); + $1179 = HEAP32[$1178>>2]|0; + $1180 = HEAP32[$iDb>>2]|0; + (_sqlite3VdbeAddOp3($1175,52,$1176,$1179,$1180)|0); + $1181 = HEAP32[$0>>2]|0; + $1182 = HEAP32[$pIdx25>>2]|0; + _sqlite3VdbeSetP4KeyInfo($1181,$1182); + break; + } + } + } while(0); + $1183 = HEAP32[$i26>>2]|0; + $1184 = (($1183) + 1)|0; + HEAP32[$i26>>2] = $1184; + $1185 = HEAP32[$pFK23>>2]|0; + $1186 = (($1185) + 4|0); + $1187 = HEAP32[$1186>>2]|0; + HEAP32[$pFK23>>2] = $1187; + } + if ((label|0) == 198) { + label = 0; + HEAP32[$k28>>2] = 0; + } + $1188 = HEAP32[$pFK23>>2]|0; + $1189 = ($1188|0)!=(0|0); + if ($1189) { + break L21; + } + $1190 = HEAP32[$0>>2]|0; + $1191 = (($1190) + 68|0); + $1192 = HEAP32[$1191>>2]|0; + $1193 = HEAP32[$i26>>2]|0; + $1194 = ($1192|0)<($1193|0); + if ($1194) { + $1195 = HEAP32[$i26>>2]|0; + $1196 = HEAP32[$0>>2]|0; + $1197 = (($1196) + 68|0); + HEAP32[$1197>>2] = $1195; + } + $1198 = HEAP32[$v>>2]|0; + $1199 = (_sqlite3VdbeAddOp1($1198,105,0)|0); + HEAP32[$addrTop>>2] = $1199; + HEAP32[$i26>>2] = 1; + $1200 = HEAP32[$pTab24>>2]|0; + $1201 = (($1200) + 16|0); + $1202 = HEAP32[$1201>>2]|0; + HEAP32[$pFK23>>2] = $1202; + while(1) { + $1203 = HEAP32[$pFK23>>2]|0; + $1204 = ($1203|0)!=(0|0); + if (!($1204)) { + break; + } + $1205 = HEAP32[$db>>2]|0; + $1206 = HEAP32[$pFK23>>2]|0; + $1207 = (($1206) + 8|0); + $1208 = HEAP32[$1207>>2]|0; + $1209 = HEAP32[$zDb>>2]|0; + $1210 = (_sqlite3FindTable($1205,$1208,$1209)|0); + HEAP32[$pParent>>2] = $1210; + HEAP32[$pIdx25>>2] = 0; + HEAP32[$aiCols>>2] = 0; + $1211 = HEAP32[$pParent>>2]|0; + $1212 = ($1211|0)!=(0|0); + if ($1212) { + $1213 = HEAP32[$0>>2]|0; + $1214 = HEAP32[$pParent>>2]|0; + $1215 = HEAP32[$pFK23>>2]|0; + $1216 = (_sqlite3FkLocateIndex($1213,$1214,$1215,$pIdx25,$aiCols)|0); + HEAP32[$x>>2] = $1216; + } + $1217 = HEAP32[$v>>2]|0; + $1218 = (_sqlite3VdbeMakeLabel($1217)|0); + HEAP32[$addrOk>>2] = $1218; + $1219 = HEAP32[$pParent>>2]|0; + $1220 = ($1219|0)!=(0|0); + do { + if ($1220) { + $1221 = HEAP32[$pIdx25>>2]|0; + $1222 = ($1221|0)==(0|0); + if (!($1222)) { + label = 213; + break; + } + $1223 = HEAP32[$pFK23>>2]|0; + $1224 = (($1223) + 36|0); + $1225 = HEAP32[$1224>>2]|0; + HEAP32[$iKey>>2] = $1225; + $1226 = HEAP32[$iKey>>2]|0; + $1227 = HEAP32[$pTab24>>2]|0; + $1228 = (($1227) + 36|0); + $1229 = HEAP16[$1228>>1]|0; + $1230 = $1229 << 16 >> 16; + $1231 = ($1226|0)!=($1230|0); + $1232 = HEAP32[$v>>2]|0; + if ($1231) { + $1233 = HEAP32[$iKey>>2]|0; + $1234 = HEAP32[$regRow>>2]|0; + (_sqlite3VdbeAddOp3($1232,46,0,$1233,$1234)|0); + $1235 = HEAP32[$v>>2]|0; + $1236 = HEAP32[$pTab24>>2]|0; + $1237 = HEAP32[$iKey>>2]|0; + $1238 = HEAP32[$regRow>>2]|0; + _sqlite3ColumnDefault($1235,$1236,$1237,$1238); + $1239 = HEAP32[$v>>2]|0; + $1240 = HEAP32[$regRow>>2]|0; + $1241 = HEAP32[$addrOk>>2]|0; + (_sqlite3VdbeAddOp2($1239,76,$1240,$1241)|0); + $1242 = HEAP32[$v>>2]|0; + $1243 = HEAP32[$regRow>>2]|0; + $1244 = HEAP32[$v>>2]|0; + $1245 = (_sqlite3VdbeCurrentAddr($1244)|0); + $1246 = (($1245) + 3)|0; + (_sqlite3VdbeAddOp2($1242,38,$1243,$1246)|0); + } else { + $1247 = HEAP32[$regRow>>2]|0; + (_sqlite3VdbeAddOp2($1232,100,0,$1247)|0); + } + $1248 = HEAP32[$v>>2]|0; + $1249 = HEAP32[$i26>>2]|0; + $1250 = HEAP32[$regRow>>2]|0; + (_sqlite3VdbeAddOp3($1248,67,$1249,0,$1250)|0); + $1251 = HEAP32[$v>>2]|0; + $1252 = HEAP32[$addrOk>>2]|0; + (_sqlite3VdbeAddOp2($1251,16,0,$1252)|0); + $1253 = HEAP32[$v>>2]|0; + $1254 = HEAP32[$v>>2]|0; + $1255 = (_sqlite3VdbeCurrentAddr($1254)|0); + $1256 = (($1255) - 2)|0; + _sqlite3VdbeJumpHere($1253,$1256); + } else { + label = 213; + } + } while(0); + do { + if ((label|0) == 213) { + label = 0; + HEAP32[$j27>>2] = 0; + while(1) { + $1257 = HEAP32[$j27>>2]|0; + $1258 = HEAP32[$pFK23>>2]|0; + $1259 = (($1258) + 20|0); + $1260 = HEAP32[$1259>>2]|0; + $1261 = ($1257|0)<($1260|0); + if (!($1261)) { + break; + } + $1262 = HEAP32[$v>>2]|0; + $1263 = HEAP32[$pTab24>>2]|0; + $1264 = HEAP32[$aiCols>>2]|0; + $1265 = ($1264|0)!=(0|0); + $1266 = HEAP32[$j27>>2]|0; + if ($1265) { + $1267 = HEAP32[$aiCols>>2]|0; + $1268 = (($1267) + ($1266<<2)|0); + $1269 = HEAP32[$1268>>2]|0; + $1277 = $1269; + } else { + $1270 = HEAP32[$pFK23>>2]|0; + $1271 = (($1270) + 36|0); + $1272 = (($1271) + ($1266<<3)|0); + $1273 = HEAP32[$1272>>2]|0; + $1277 = $1273; + } + $1274 = HEAP32[$regRow>>2]|0; + $1275 = HEAP32[$j27>>2]|0; + $1276 = (($1274) + ($1275))|0; + _sqlite3ExprCodeGetColumnOfTable($1262,$1263,0,$1277,$1276); + $1278 = HEAP32[$v>>2]|0; + $1279 = HEAP32[$regRow>>2]|0; + $1280 = HEAP32[$j27>>2]|0; + $1281 = (($1279) + ($1280))|0; + $1282 = HEAP32[$addrOk>>2]|0; + (_sqlite3VdbeAddOp2($1278,76,$1281,$1282)|0); + $1283 = HEAP32[$j27>>2]|0; + $1284 = (($1283) + 1)|0; + HEAP32[$j27>>2] = $1284; + } + $1285 = HEAP32[$pParent>>2]|0; + $1286 = ($1285|0)!=(0|0); + if (!($1286)) { + break; + } + $1287 = HEAP32[$v>>2]|0; + $1288 = HEAP32[$regRow>>2]|0; + $1289 = HEAP32[$pFK23>>2]|0; + $1290 = (($1289) + 20|0); + $1291 = HEAP32[$1290>>2]|0; + $1292 = HEAP32[$regKey>>2]|0; + $1293 = HEAP32[$v>>2]|0; + $1294 = HEAP32[$pIdx25>>2]|0; + $1295 = (_sqlite3IndexAffinityStr($1293,$1294)|0); + $1296 = HEAP32[$pFK23>>2]|0; + $1297 = (($1296) + 20|0); + $1298 = HEAP32[$1297>>2]|0; + (_sqlite3VdbeAddOp4($1287,48,$1288,$1291,$1292,$1295,$1298)|0); + $1299 = HEAP32[$v>>2]|0; + $1300 = HEAP32[$i26>>2]|0; + $1301 = HEAP32[$addrOk>>2]|0; + $1302 = HEAP32[$regKey>>2]|0; + (_sqlite3VdbeAddOp4Int($1299,66,$1300,$1301,$1302,0)|0); + } + } while(0); + $1303 = HEAP32[$v>>2]|0; + $1304 = HEAP32[$regResult>>2]|0; + $1305 = (($1304) + 1)|0; + (_sqlite3VdbeAddOp2($1303,100,0,$1305)|0); + $1306 = HEAP32[$v>>2]|0; + $1307 = HEAP32[$regResult>>2]|0; + $1308 = (($1307) + 2)|0; + $1309 = HEAP32[$pFK23>>2]|0; + $1310 = (($1309) + 8|0); + $1311 = HEAP32[$1310>>2]|0; + (_sqlite3VdbeAddOp4($1306,97,0,$1308,0,$1311,0)|0); + $1312 = HEAP32[$v>>2]|0; + $1313 = HEAP32[$i26>>2]|0; + $1314 = (($1313) - 1)|0; + $1315 = HEAP32[$regResult>>2]|0; + $1316 = (($1315) + 3)|0; + (_sqlite3VdbeAddOp2($1312,25,$1314,$1316)|0); + $1317 = HEAP32[$v>>2]|0; + $1318 = HEAP32[$regResult>>2]|0; + (_sqlite3VdbeAddOp2($1317,35,$1318,4)|0); + $1319 = HEAP32[$v>>2]|0; + $1320 = HEAP32[$addrOk>>2]|0; + _sqlite3VdbeResolveLabel($1319,$1320); + $1321 = HEAP32[$db>>2]|0; + $1322 = HEAP32[$aiCols>>2]|0; + _sqlite3DbFree($1321,$1322); + $1323 = HEAP32[$i26>>2]|0; + $1324 = (($1323) + 1)|0; + HEAP32[$i26>>2] = $1324; + $1325 = HEAP32[$pFK23>>2]|0; + $1326 = (($1325) + 4|0); + $1327 = HEAP32[$1326>>2]|0; + HEAP32[$pFK23>>2] = $1327; + } + $1328 = HEAP32[$v>>2]|0; + $1329 = HEAP32[$addrTop>>2]|0; + $1330 = (($1329) + 1)|0; + (_sqlite3VdbeAddOp2($1328,9,0,$1330)|0); + $1331 = HEAP32[$v>>2]|0; + $1332 = HEAP32[$addrTop>>2]|0; + _sqlite3VdbeJumpHere($1331,$1332); + } + break; + } + case 28: { + $753 = HEAP32[$0>>2]|0; + $754 = (_sqlite3GetVdbe($753)|0); + HEAP32[$v>>2] = $754; + $755 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($755,4); + $756 = HEAP32[$0>>2]|0; + $757 = (($756) + 72|0); + HEAP32[$757>>2] = 4; + $758 = HEAP32[$0>>2]|0; + $759 = HEAP32[$iDb>>2]|0; + _sqlite3CodeVerifySchema($758,$759); + $760 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($760,0,0,27864,0)|0); + $761 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($761,1,0,16696,0)|0); + $762 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($762,2,0,27872,0)|0); + $763 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($763,3,0,27880,0)|0); + $764 = HEAP32[$pDb>>2]|0; + $765 = (($764) + 12|0); + $766 = HEAP32[$765>>2]|0; + $767 = (($766) + 8|0); + $768 = (($767) + 8|0); + $769 = HEAP32[$768>>2]|0; + HEAP32[$i11>>2] = $769; + while(1) { + $770 = HEAP32[$i11>>2]|0; + $771 = ($770|0)!=(0|0); + if (!($771)) { + break L21; + } + $772 = HEAP32[$i11>>2]|0; + $773 = (($772) + 8|0); + $774 = HEAP32[$773>>2]|0; + HEAP32[$pTab12>>2] = $774; + $775 = HEAP32[$v>>2]|0; + $776 = HEAP32[$pTab12>>2]|0; + $777 = HEAP32[$776>>2]|0; + (_sqlite3VdbeAddOp4($775,97,0,1,0,$777,0)|0); + $778 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($778,28,0,2)|0); + $779 = HEAP32[$v>>2]|0; + $780 = HEAP32[$pTab12>>2]|0; + $781 = (($780) + 42|0); + $782 = HEAP16[$781>>1]|0; + $783 = (_sqlite3LogEstToInt($782)|0); + $784 = tempRet0; + (_sqlite3VdbeAddOp2($779,25,$783,3)|0); + $785 = HEAP32[$v>>2]|0; + $786 = HEAP32[$pTab12>>2]|0; + $787 = (($786) + 28|0); + $788 = HEAP16[$787>>1]|0; + $789 = (_sqlite3LogEstToInt($788)|0); + $790 = tempRet0; + (_sqlite3VdbeAddOp2($785,25,$789,4)|0); + $791 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($791,35,1,4)|0); + $792 = HEAP32[$pTab12>>2]|0; + $793 = (($792) + 8|0); + $794 = HEAP32[$793>>2]|0; + HEAP32[$pIdx>>2] = $794; + while(1) { + $795 = HEAP32[$pIdx>>2]|0; + $796 = ($795|0)!=(0|0); + if (!($796)) { + break; + } + $797 = HEAP32[$v>>2]|0; + $798 = HEAP32[$pIdx>>2]|0; + $799 = HEAP32[$798>>2]|0; + (_sqlite3VdbeAddOp4($797,97,0,2,0,$799,0)|0); + $800 = HEAP32[$v>>2]|0; + $801 = HEAP32[$pIdx>>2]|0; + $802 = (($801) + 48|0); + $803 = HEAP16[$802>>1]|0; + $804 = (_sqlite3LogEstToInt($803)|0); + $805 = tempRet0; + (_sqlite3VdbeAddOp2($800,25,$804,3)|0); + $806 = HEAP32[$v>>2]|0; + $807 = HEAP32[$pIdx>>2]|0; + $808 = (($807) + 8|0); + $809 = HEAP32[$808>>2]|0; + $810 = HEAP16[$809>>1]|0; + $811 = (_sqlite3LogEstToInt($810)|0); + $812 = tempRet0; + (_sqlite3VdbeAddOp2($806,25,$811,4)|0); + $813 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($813,35,1,4)|0); + $814 = HEAP32[$pIdx>>2]|0; + $815 = (($814) + 20|0); + $816 = HEAP32[$815>>2]|0; + HEAP32[$pIdx>>2] = $816; + } + $817 = HEAP32[$i11>>2]|0; + $818 = HEAP32[$817>>2]|0; + HEAP32[$i11>>2] = $818; + } + break; + } + case 6: { + HEAP32[$i20>>2] = 0; + $947 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($947,2); + $948 = HEAP32[$0>>2]|0; + $949 = (($948) + 72|0); + HEAP32[$949>>2] = 2; + $950 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($950,0,0,27896,0)|0); + $951 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($951,1,0,27816,0)|0); + $952 = HEAP32[$db>>2]|0; + $953 = (($952) + 420|0); + $954 = (($953) + 8|0); + $955 = HEAP32[$954>>2]|0; + HEAP32[$p>>2] = $955; + while(1) { + $956 = HEAP32[$p>>2]|0; + $957 = ($956|0)!=(0|0); + if (!($957)) { + break L21; + } + $958 = HEAP32[$p>>2]|0; + $959 = (($958) + 8|0); + $960 = HEAP32[$959>>2]|0; + HEAP32[$pColl>>2] = $960; + $961 = HEAP32[$v>>2]|0; + $962 = HEAP32[$i20>>2]|0; + $963 = (($962) + 1)|0; + HEAP32[$i20>>2] = $963; + (_sqlite3VdbeAddOp2($961,25,$962,1)|0); + $964 = HEAP32[$v>>2]|0; + $965 = HEAP32[$pColl>>2]|0; + $966 = HEAP32[$965>>2]|0; + (_sqlite3VdbeAddOp4($964,97,0,2,0,$966,0)|0); + $967 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($967,35,1,2)|0); + $968 = HEAP32[$p>>2]|0; + $969 = HEAP32[$968>>2]|0; + HEAP32[$p>>2] = $969; + } + break; + } + case 16: { + $866 = HEAP32[$zRight>>2]|0; + $867 = ($866|0)!=(0|0); + if (!($867)) { + break L21; + } + $868 = HEAP32[$db>>2]|0; + $869 = HEAP32[$zRight>>2]|0; + $870 = HEAP32[$zDb>>2]|0; + $871 = (_sqlite3FindTable($868,$869,$870)|0); + HEAP32[$pTab17>>2] = $871; + $872 = HEAP32[$pTab17>>2]|0; + $873 = ($872|0)!=(0|0); + if (!($873)) { + break L21; + } + $874 = HEAP32[$0>>2]|0; + $875 = (_sqlite3GetVdbe($874)|0); + HEAP32[$v>>2] = $875; + $876 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($876,3); + $877 = HEAP32[$0>>2]|0; + $878 = (($877) + 72|0); + HEAP32[$878>>2] = 3; + $879 = HEAP32[$0>>2]|0; + $880 = HEAP32[$iDb>>2]|0; + _sqlite3CodeVerifySchema($879,$880); + $881 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($881,0,0,27896,0)|0); + $882 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($882,1,0,27816,0)|0); + $883 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($883,2,0,27904,0)|0); + $884 = HEAP32[$pTab17>>2]|0; + $885 = (($884) + 8|0); + $886 = HEAP32[$885>>2]|0; + HEAP32[$pIdx16>>2] = $886; + HEAP32[$i18>>2] = 0; + while(1) { + $887 = HEAP32[$pIdx16>>2]|0; + $888 = ($887|0)!=(0|0); + if (!($888)) { + break L21; + } + $889 = HEAP32[$v>>2]|0; + $890 = HEAP32[$i18>>2]|0; + (_sqlite3VdbeAddOp2($889,25,$890,1)|0); + $891 = HEAP32[$v>>2]|0; + $892 = HEAP32[$pIdx16>>2]|0; + $893 = HEAP32[$892>>2]|0; + (_sqlite3VdbeAddOp4($891,97,0,2,0,$893,0)|0); + $894 = HEAP32[$v>>2]|0; + $895 = HEAP32[$pIdx16>>2]|0; + $896 = (($895) + 54|0); + $897 = HEAP8[$896>>0]|0; + $898 = $897&255; + $899 = ($898|0)!=(0); + $900 = $899&1; + (_sqlite3VdbeAddOp2($894,25,$900,3)|0); + $901 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($901,35,1,3)|0); + $902 = HEAP32[$pIdx16>>2]|0; + $903 = (($902) + 20|0); + $904 = HEAP32[$903>>2]|0; + HEAP32[$pIdx16>>2] = $904; + $905 = HEAP32[$i18>>2]|0; + $906 = (($905) + 1)|0; + HEAP32[$i18>>2] = $906; + } + break; + } + case 15: { + $819 = HEAP32[$zRight>>2]|0; + $820 = ($819|0)!=(0|0); + if (!($820)) { + break L21; + } + $821 = HEAP32[$db>>2]|0; + $822 = HEAP32[$zRight>>2]|0; + $823 = HEAP32[$zDb>>2]|0; + $824 = (_sqlite3FindIndex($821,$822,$823)|0); + HEAP32[$pIdx13>>2] = $824; + $825 = HEAP32[$pIdx13>>2]|0; + $826 = ($825|0)!=(0|0); + if (!($826)) { + break L21; + } + $827 = HEAP32[$pIdx13>>2]|0; + $828 = (($827) + 12|0); + $829 = HEAP32[$828>>2]|0; + HEAP32[$pTab14>>2] = $829; + $830 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($830,3); + $831 = HEAP32[$0>>2]|0; + $832 = (($831) + 72|0); + HEAP32[$832>>2] = 3; + $833 = HEAP32[$0>>2]|0; + $834 = HEAP32[$iDb>>2]|0; + _sqlite3CodeVerifySchema($833,$834); + $835 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($835,0,0,27888,0)|0); + $836 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($836,1,0,27808,0)|0); + $837 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($837,2,0,27816,0)|0); + HEAP32[$i15>>2] = 0; + while(1) { + $838 = HEAP32[$i15>>2]|0; + $839 = HEAP32[$pIdx13>>2]|0; + $840 = (($839) + 50|0); + $841 = HEAP16[$840>>1]|0; + $842 = $841&65535; + $843 = ($838|0)<($842|0); + if (!($843)) { + break L21; + } + $844 = HEAP32[$i15>>2]|0; + $845 = HEAP32[$pIdx13>>2]|0; + $846 = (($845) + 4|0); + $847 = HEAP32[$846>>2]|0; + $848 = (($847) + ($844<<1)|0); + $849 = HEAP16[$848>>1]|0; + HEAP16[$cnum>>1] = $849; + $850 = HEAP32[$v>>2]|0; + $851 = HEAP32[$i15>>2]|0; + (_sqlite3VdbeAddOp2($850,25,$851,1)|0); + $852 = HEAP32[$v>>2]|0; + $853 = HEAP16[$cnum>>1]|0; + $854 = $853 << 16 >> 16; + (_sqlite3VdbeAddOp2($852,25,$854,2)|0); + $855 = HEAP32[$v>>2]|0; + $856 = HEAP16[$cnum>>1]|0; + $857 = $856 << 16 >> 16; + $858 = HEAP32[$pTab14>>2]|0; + $859 = (($858) + 4|0); + $860 = HEAP32[$859>>2]|0; + $861 = (($860) + (($857*24)|0)|0); + $862 = HEAP32[$861>>2]|0; + (_sqlite3VdbeAddOp4($855,97,0,3,0,$862,0)|0); + $863 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($863,35,1,3)|0); + $864 = HEAP32[$i15>>2]|0; + $865 = (($864) + 1)|0; + HEAP32[$i15>>2] = $865; + } + break; + } + case 13: { + $970 = HEAP32[$zRight>>2]|0; + $971 = ($970|0)!=(0|0); + if (!($971)) { + break L21; + } + $972 = HEAP32[$db>>2]|0; + $973 = HEAP32[$zRight>>2]|0; + $974 = HEAP32[$zDb>>2]|0; + $975 = (_sqlite3FindTable($972,$973,$974)|0); + HEAP32[$pTab21>>2] = $975; + $976 = HEAP32[$pTab21>>2]|0; + $977 = ($976|0)!=(0|0); + if (!($977)) { + break L21; + } + $978 = HEAP32[$0>>2]|0; + $979 = (_sqlite3GetVdbe($978)|0); + HEAP32[$v>>2] = $979; + $980 = HEAP32[$pTab21>>2]|0; + $981 = (($980) + 16|0); + $982 = HEAP32[$981>>2]|0; + HEAP32[$pFK>>2] = $982; + $983 = HEAP32[$pFK>>2]|0; + $984 = ($983|0)!=(0|0); + if (!($984)) { + break L21; + } + HEAP32[$i22>>2] = 0; + $985 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($985,8); + $986 = HEAP32[$0>>2]|0; + $987 = (($986) + 72|0); + HEAP32[$987>>2] = 8; + $988 = HEAP32[$0>>2]|0; + $989 = HEAP32[$iDb>>2]|0; + _sqlite3CodeVerifySchema($988,$989); + $990 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($990,0,0,27920,0)|0); + $991 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($991,1,0,27896,0)|0); + $992 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($992,2,0,27864,0)|0); + $993 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($993,3,0,27928,0)|0); + $994 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($994,4,0,27936,0)|0); + $995 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($995,5,0,27944,0)|0); + $996 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($996,6,0,27960,0)|0); + $997 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($997,7,0,27976,0)|0); + while(1) { + $998 = HEAP32[$pFK>>2]|0; + $999 = ($998|0)!=(0|0); + if (!($999)) { + break L21; + } + HEAP32[$j>>2] = 0; + while(1) { + $1000 = HEAP32[$j>>2]|0; + $1001 = HEAP32[$pFK>>2]|0; + $1002 = (($1001) + 20|0); + $1003 = HEAP32[$1002>>2]|0; + $1004 = ($1000|0)<($1003|0); + if (!($1004)) { + break; + } + $1005 = HEAP32[$j>>2]|0; + $1006 = HEAP32[$pFK>>2]|0; + $1007 = (($1006) + 36|0); + $1008 = (($1007) + ($1005<<3)|0); + $1009 = (($1008) + 4|0); + $1010 = HEAP32[$1009>>2]|0; + HEAP32[$zCol>>2] = $1010; + $1011 = HEAP32[$pFK>>2]|0; + $1012 = (($1011) + 25|0); + $1013 = HEAP8[$1012>>0]|0; + $1014 = (_actionName($1013)|0); + HEAP32[$zOnDelete>>2] = $1014; + $1015 = HEAP32[$pFK>>2]|0; + $1016 = (($1015) + 25|0); + $1017 = (($1016) + 1|0); + $1018 = HEAP8[$1017>>0]|0; + $1019 = (_actionName($1018)|0); + HEAP32[$zOnUpdate>>2] = $1019; + $1020 = HEAP32[$v>>2]|0; + $1021 = HEAP32[$i22>>2]|0; + (_sqlite3VdbeAddOp2($1020,25,$1021,1)|0); + $1022 = HEAP32[$v>>2]|0; + $1023 = HEAP32[$j>>2]|0; + (_sqlite3VdbeAddOp2($1022,25,$1023,2)|0); + $1024 = HEAP32[$v>>2]|0; + $1025 = HEAP32[$pFK>>2]|0; + $1026 = (($1025) + 8|0); + $1027 = HEAP32[$1026>>2]|0; + (_sqlite3VdbeAddOp4($1024,97,0,3,0,$1027,0)|0); + $1028 = HEAP32[$v>>2]|0; + $1029 = HEAP32[$j>>2]|0; + $1030 = HEAP32[$pFK>>2]|0; + $1031 = (($1030) + 36|0); + $1032 = (($1031) + ($1029<<3)|0); + $1033 = HEAP32[$1032>>2]|0; + $1034 = HEAP32[$pTab21>>2]|0; + $1035 = (($1034) + 4|0); + $1036 = HEAP32[$1035>>2]|0; + $1037 = (($1036) + (($1033*24)|0)|0); + $1038 = HEAP32[$1037>>2]|0; + (_sqlite3VdbeAddOp4($1028,97,0,4,0,$1038,0)|0); + $1039 = HEAP32[$v>>2]|0; + $1040 = HEAP32[$zCol>>2]|0; + $1041 = ($1040|0)!=(0|0); + $1042 = $1041 ? 97 : 28; + $1043 = HEAP32[$zCol>>2]|0; + (_sqlite3VdbeAddOp4($1039,$1042,0,5,0,$1043,0)|0); + $1044 = HEAP32[$v>>2]|0; + $1045 = HEAP32[$zOnUpdate>>2]|0; + (_sqlite3VdbeAddOp4($1044,97,0,6,0,$1045,0)|0); + $1046 = HEAP32[$v>>2]|0; + $1047 = HEAP32[$zOnDelete>>2]|0; + (_sqlite3VdbeAddOp4($1046,97,0,7,0,$1047,0)|0); + $1048 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp4($1048,97,0,8,0,27984,0)|0); + $1049 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($1049,35,1,8)|0); + $1050 = HEAP32[$j>>2]|0; + $1051 = (($1050) + 1)|0; + HEAP32[$j>>2] = $1051; + } + $1052 = HEAP32[$i22>>2]|0; + $1053 = (($1052) + 1)|0; + HEAP32[$i22>>2] = $1053; + $1054 = HEAP32[$pFK>>2]|0; + $1055 = (($1054) + 4|0); + $1056 = HEAP32[$1055>>2]|0; + HEAP32[$pFK>>2] = $1056; + } + break; + } + case 9: { + $907 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($907,3); + $908 = HEAP32[$0>>2]|0; + $909 = (($908) + 72|0); + HEAP32[$909>>2] = 3; + $910 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($910,0,0,27896,0)|0); + $911 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($911,1,0,27816,0)|0); + $912 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($912,2,0,27912,0)|0); + HEAP32[$i19>>2] = 0; + while(1) { + $913 = HEAP32[$i19>>2]|0; + $914 = HEAP32[$db>>2]|0; + $915 = (($914) + 20|0); + $916 = HEAP32[$915>>2]|0; + $917 = ($913|0)<($916|0); + if (!($917)) { + break L21; + } + $918 = HEAP32[$i19>>2]|0; + $919 = HEAP32[$db>>2]|0; + $920 = (($919) + 16|0); + $921 = HEAP32[$920>>2]|0; + $922 = (($921) + ($918<<4)|0); + $923 = (($922) + 4|0); + $924 = HEAP32[$923>>2]|0; + $925 = ($924|0)==(0|0); + if (!($925)) { + $926 = HEAP32[$v>>2]|0; + $927 = HEAP32[$i19>>2]|0; + (_sqlite3VdbeAddOp2($926,25,$927,1)|0); + $928 = HEAP32[$v>>2]|0; + $929 = HEAP32[$i19>>2]|0; + $930 = HEAP32[$db>>2]|0; + $931 = (($930) + 16|0); + $932 = HEAP32[$931>>2]|0; + $933 = (($932) + ($929<<4)|0); + $934 = HEAP32[$933>>2]|0; + (_sqlite3VdbeAddOp4($928,97,0,2,0,$934,0)|0); + $935 = HEAP32[$v>>2]|0; + $936 = HEAP32[$i19>>2]|0; + $937 = HEAP32[$db>>2]|0; + $938 = (($937) + 16|0); + $939 = HEAP32[$938>>2]|0; + $940 = (($939) + ($936<<4)|0); + $941 = (($940) + 4|0); + $942 = HEAP32[$941>>2]|0; + $943 = (_sqlite3BtreeGetFilename($942)|0); + (_sqlite3VdbeAddOp4($935,97,0,3,0,$943,0)|0); + $944 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($944,35,1,3)|0); + } + $945 = HEAP32[$i19>>2]|0; + $946 = (($945) + 1)|0; + HEAP32[$i19>>2] = $946; + } + break; + } + case 17: { + $1339 = HEAP32[$zLeft>>2]|0; + $1340 = HEAP8[$1339>>0]|0; + $1341 = $1340&255; + $1342 = (784 + ($1341)|0); + $1343 = HEAP8[$1342>>0]|0; + $1344 = $1343&255; + $1345 = ($1344|0)==(113); + $1346 = $1345&1; + HEAP32[$isQuick>>2] = $1346; + $1347 = HEAP32[$2>>2]|0; + $1348 = HEAP32[$1347>>2]|0; + $1349 = ($1348|0)==(0|0); + if ($1349) { + HEAP32[$iDb>>2] = -1; + } + $1350 = HEAP32[$0>>2]|0; + $1351 = (($1350) + 72|0); + HEAP32[$1351>>2] = 6; + $1352 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($1352,1); + $1353 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($1353,0,0,28024,0)|0); + HEAP32[$mxErr>>2] = 100; + $1354 = HEAP32[$zRight>>2]|0; + $1355 = ($1354|0)!=(0|0); + if ($1355) { + $1356 = HEAP32[$zRight>>2]|0; + (_sqlite3GetInt32($1356,$mxErr)|0); + $1357 = HEAP32[$mxErr>>2]|0; + $1358 = ($1357|0)<=(0); + if ($1358) { + HEAP32[$mxErr>>2] = 100; + } + } + $1359 = HEAP32[$v>>2]|0; + $1360 = HEAP32[$mxErr>>2]|0; + (_sqlite3VdbeAddOp2($1359,25,$1360,1)|0); + HEAP32[$i29>>2] = 0; + while(1) { + $1361 = HEAP32[$i29>>2]|0; + $1362 = HEAP32[$db>>2]|0; + $1363 = (($1362) + 20|0); + $1364 = HEAP32[$1363>>2]|0; + $1365 = ($1361|0)<($1364|0); + if (!($1365)) { + break; + } + HEAP32[$cnt>>2] = 0; + $1366 = HEAP32[$iDb>>2]|0; + $1367 = ($1366|0)>=(0); + if ($1367) { + $1368 = HEAP32[$i29>>2]|0; + $1369 = HEAP32[$iDb>>2]|0; + $1370 = ($1368|0)!=($1369|0); + if (!($1370)) { + label = 234; + } + } else { + label = 234; + } + L318: do { + if ((label|0) == 234) { + label = 0; + $1371 = HEAP32[$0>>2]|0; + $1372 = HEAP32[$i29>>2]|0; + _sqlite3CodeVerifySchema($1371,$1372); + $1373 = HEAP32[$v>>2]|0; + $1374 = (_sqlite3VdbeAddOp1($1373,134,1)|0); + HEAP32[$addr31>>2] = $1374; + $1375 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($1375,24,0,0)|0); + $1376 = HEAP32[$v>>2]|0; + $1377 = HEAP32[$addr31>>2]|0; + _sqlite3VdbeJumpHere($1376,$1377); + $1378 = HEAP32[$i29>>2]|0; + $1379 = HEAP32[$db>>2]|0; + $1380 = (($1379) + 16|0); + $1381 = HEAP32[$1380>>2]|0; + $1382 = (($1381) + ($1378<<4)|0); + $1383 = (($1382) + 12|0); + $1384 = HEAP32[$1383>>2]|0; + $1385 = (($1384) + 8|0); + HEAP32[$pTbls>>2] = $1385; + $1386 = HEAP32[$pTbls>>2]|0; + $1387 = (($1386) + 8|0); + $1388 = HEAP32[$1387>>2]|0; + HEAP32[$x32>>2] = $1388; + while(1) { + $1389 = HEAP32[$x32>>2]|0; + $1390 = ($1389|0)!=(0|0); + if (!($1390)) { + break; + } + $1391 = HEAP32[$x32>>2]|0; + $1392 = (($1391) + 8|0); + $1393 = HEAP32[$1392>>2]|0; + HEAP32[$pTab33>>2] = $1393; + $1394 = HEAP32[$pTab33>>2]|0; + $1395 = (($1394) + 44|0); + $1396 = HEAP8[$1395>>0]|0; + $1397 = $1396&255; + $1398 = $1397 & 32; + $1399 = ($1398|0)==(0); + if ($1399) { + $1400 = HEAP32[$v>>2]|0; + $1401 = HEAP32[$pTab33>>2]|0; + $1402 = (($1401) + 32|0); + $1403 = HEAP32[$1402>>2]|0; + $1404 = HEAP32[$cnt>>2]|0; + $1405 = (2 + ($1404))|0; + (_sqlite3VdbeAddOp2($1400,25,$1403,$1405)|0); + $1406 = HEAP32[$cnt>>2]|0; + $1407 = (($1406) + 1)|0; + HEAP32[$cnt>>2] = $1407; + } + $1408 = HEAP32[$pTab33>>2]|0; + $1409 = (($1408) + 8|0); + $1410 = HEAP32[$1409>>2]|0; + HEAP32[$pIdx34>>2] = $1410; + while(1) { + $1411 = HEAP32[$pIdx34>>2]|0; + $1412 = ($1411|0)!=(0|0); + if (!($1412)) { + break; + } + $1413 = HEAP32[$v>>2]|0; + $1414 = HEAP32[$pIdx34>>2]|0; + $1415 = (($1414) + 44|0); + $1416 = HEAP32[$1415>>2]|0; + $1417 = HEAP32[$cnt>>2]|0; + $1418 = (2 + ($1417))|0; + (_sqlite3VdbeAddOp2($1413,25,$1416,$1418)|0); + $1419 = HEAP32[$cnt>>2]|0; + $1420 = (($1419) + 1)|0; + HEAP32[$cnt>>2] = $1420; + $1421 = HEAP32[$pIdx34>>2]|0; + $1422 = (($1421) + 20|0); + $1423 = HEAP32[$1422>>2]|0; + HEAP32[$pIdx34>>2] = $1423; + } + $1424 = HEAP32[$x32>>2]|0; + $1425 = HEAP32[$1424>>2]|0; + HEAP32[$x32>>2] = $1425; + } + $1426 = HEAP32[$0>>2]|0; + $1427 = (($1426) + 72|0); + $1428 = HEAP32[$1427>>2]|0; + $1429 = HEAP32[$cnt>>2]|0; + $1430 = (($1429) + 8)|0; + $1431 = ($1428|0)>($1430|0); + if ($1431) { + $1432 = HEAP32[$0>>2]|0; + $1433 = (($1432) + 72|0); + $1434 = HEAP32[$1433>>2]|0; + $1439 = $1434; + } else { + $1435 = HEAP32[$cnt>>2]|0; + $1436 = (($1435) + 8)|0; + $1439 = $1436; + } + $1437 = HEAP32[$0>>2]|0; + $1438 = (($1437) + 72|0); + HEAP32[$1438>>2] = $1439; + $1440 = HEAP32[$v>>2]|0; + $1441 = HEAP32[$cnt>>2]|0; + (_sqlite3VdbeAddOp3($1440,124,2,$1441,1)|0); + $1442 = HEAP32[$v>>2]|0; + $1443 = HEAP32[$i29>>2]|0; + $1444 = $1443&255; + _sqlite3VdbeChangeP5($1442,$1444); + $1445 = HEAP32[$v>>2]|0; + $1446 = (_sqlite3VdbeAddOp1($1445,76,2)|0); + HEAP32[$addr31>>2] = $1446; + $1447 = HEAP32[$v>>2]|0; + $1448 = HEAP32[$db>>2]|0; + $1449 = HEAP32[$i29>>2]|0; + $1450 = HEAP32[$db>>2]|0; + $1451 = (($1450) + 16|0); + $1452 = HEAP32[$1451>>2]|0; + $1453 = (($1452) + ($1449<<4)|0); + $1454 = HEAP32[$1453>>2]|0; + HEAP32[$vararg_buffer18>>2] = $1454; + $1455 = (_sqlite3MPrintf($1448,28040,$vararg_buffer18)|0); + (_sqlite3VdbeAddOp4($1447,97,0,3,0,$1455,-1)|0); + $1456 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp3($1456,32,2,4,1)|0); + $1457 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp3($1457,94,4,3,2)|0); + $1458 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($1458,35,2,1)|0); + $1459 = HEAP32[$v>>2]|0; + $1460 = HEAP32[$addr31>>2]|0; + _sqlite3VdbeJumpHere($1459,$1460); + $1461 = HEAP32[$pTbls>>2]|0; + $1462 = (($1461) + 8|0); + $1463 = HEAP32[$1462>>2]|0; + HEAP32[$x32>>2] = $1463; + while(1) { + $1464 = HEAP32[$x32>>2]|0; + $1465 = ($1464|0)!=(0|0); + if (!($1465)) { + break L318; + } + $1466 = HEAP32[$isQuick>>2]|0; + $1467 = ($1466|0)!=(0); + $1468 = $1467 ^ 1; + if (!($1468)) { + break L318; + } + $1469 = HEAP32[$x32>>2]|0; + $1470 = (($1469) + 8|0); + $1471 = HEAP32[$1470>>2]|0; + HEAP32[$pTab35>>2] = $1471; + HEAP32[$pPrior>>2] = 0; + HEAP32[$r1>>2] = -1; + $1472 = HEAP32[$pTab35>>2]|0; + $1473 = (($1472) + 8|0); + $1474 = HEAP32[$1473>>2]|0; + $1475 = ($1474|0)==(0|0); + L339: do { + if (!($1475)) { + $1476 = HEAP32[$pTab35>>2]|0; + $1477 = (($1476) + 44|0); + $1478 = HEAP8[$1477>>0]|0; + $1479 = $1478&255; + $1480 = $1479 & 32; + $1481 = ($1480|0)==(0); + if ($1481) { + $1484 = 0; + } else { + $1482 = HEAP32[$pTab35>>2]|0; + $1483 = (_sqlite3PrimaryKeyIndex($1482)|0); + $1484 = $1483; + } + HEAP32[$pPk37>>2] = $1484; + $1485 = HEAP32[$v>>2]|0; + $1486 = (_sqlite3VdbeAddOp1($1485,134,1)|0); + HEAP32[$addr31>>2] = $1486; + $1487 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($1487,24,0,0)|0); + $1488 = HEAP32[$v>>2]|0; + $1489 = HEAP32[$addr31>>2]|0; + _sqlite3VdbeJumpHere($1488,$1489); + $1490 = HEAP32[$0>>2]|0; + _sqlite3ExprCacheClear($1490); + $1491 = HEAP32[$0>>2]|0; + $1492 = HEAP32[$pTab35>>2]|0; + (_sqlite3OpenTableAndIndices($1491,$1492,52,1,0,$iDataCur,$iIdxCur)|0); + $1493 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($1493,25,0,7)|0); + HEAP32[$j30>>2] = 0; + $1494 = HEAP32[$pTab35>>2]|0; + $1495 = (($1494) + 8|0); + $1496 = HEAP32[$1495>>2]|0; + HEAP32[$pIdx36>>2] = $1496; + while(1) { + $1497 = HEAP32[$pIdx36>>2]|0; + $1498 = ($1497|0)!=(0|0); + if (!($1498)) { + break; + } + $1499 = HEAP32[$v>>2]|0; + $1500 = HEAP32[$j30>>2]|0; + $1501 = (8 + ($1500))|0; + (_sqlite3VdbeAddOp2($1499,25,0,$1501)|0); + $1502 = HEAP32[$pIdx36>>2]|0; + $1503 = (($1502) + 20|0); + $1504 = HEAP32[$1503>>2]|0; + HEAP32[$pIdx36>>2] = $1504; + $1505 = HEAP32[$j30>>2]|0; + $1506 = (($1505) + 1)|0; + HEAP32[$j30>>2] = $1506; + } + $1507 = HEAP32[$0>>2]|0; + $1508 = (($1507) + 72|0); + $1509 = HEAP32[$1508>>2]|0; + $1510 = HEAP32[$j30>>2]|0; + $1511 = (8 + ($1510))|0; + $1512 = ($1509|0)>($1511|0); + if ($1512) { + $1513 = HEAP32[$0>>2]|0; + $1514 = (($1513) + 72|0); + $1515 = HEAP32[$1514>>2]|0; + $1520 = $1515; + } else { + $1516 = HEAP32[$j30>>2]|0; + $1517 = (8 + ($1516))|0; + $1520 = $1517; + } + $1518 = HEAP32[$0>>2]|0; + $1519 = (($1518) + 72|0); + HEAP32[$1519>>2] = $1520; + $1521 = HEAP32[$v>>2]|0; + $1522 = HEAP32[$iDataCur>>2]|0; + (_sqlite3VdbeAddOp2($1521,105,$1522,0)|0); + $1523 = HEAP32[$v>>2]|0; + $1524 = (_sqlite3VdbeAddOp2($1523,37,7,1)|0); + HEAP32[$loopTop>>2] = $1524; + HEAP32[$j30>>2] = 0; + $1525 = HEAP32[$pTab35>>2]|0; + $1526 = (($1525) + 8|0); + $1527 = HEAP32[$1526>>2]|0; + HEAP32[$pIdx36>>2] = $1527; + while(1) { + $1528 = HEAP32[$pIdx36>>2]|0; + $1529 = ($1528|0)!=(0|0); + if (!($1529)) { + break; + } + $1530 = HEAP32[$pPk37>>2]|0; + $1531 = HEAP32[$pIdx36>>2]|0; + $1532 = ($1530|0)==($1531|0); + if (!($1532)) { + $1533 = HEAP32[$0>>2]|0; + $1534 = HEAP32[$pIdx36>>2]|0; + $1535 = HEAP32[$iDataCur>>2]|0; + $1536 = HEAP32[$pPrior>>2]|0; + $1537 = HEAP32[$r1>>2]|0; + $1538 = (_sqlite3GenerateIndexKey($1533,$1534,$1535,0,0,$jmp3,$1536,$1537)|0); + HEAP32[$r1>>2] = $1538; + $1539 = HEAP32[$pIdx36>>2]|0; + HEAP32[$pPrior>>2] = $1539; + $1540 = HEAP32[$v>>2]|0; + $1541 = HEAP32[$j30>>2]|0; + $1542 = (8 + ($1541))|0; + (_sqlite3VdbeAddOp2($1540,37,$1542,1)|0); + $1543 = HEAP32[$v>>2]|0; + $1544 = HEAP32[$iIdxCur>>2]|0; + $1545 = HEAP32[$j30>>2]|0; + $1546 = (($1544) + ($1545))|0; + $1547 = HEAP32[$r1>>2]|0; + $1548 = HEAP32[$pIdx36>>2]|0; + $1549 = (($1548) + 52|0); + $1550 = HEAP16[$1549>>1]|0; + $1551 = $1550&65535; + $1552 = (_sqlite3VdbeAddOp4Int($1543,66,$1546,0,$1547,$1551)|0); + HEAP32[$jmp2>>2] = $1552; + $1553 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($1553,37,1,-1)|0); + $1554 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp4($1554,97,0,3,0,28064,-2)|0); + $1555 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp3($1555,94,7,3,3)|0); + $1556 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp4($1556,97,0,4,0,28072,-2)|0); + $1557 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp3($1557,94,4,3,3)|0); + $1558 = HEAP32[$v>>2]|0; + $1559 = HEAP32[$pIdx36>>2]|0; + $1560 = HEAP32[$1559>>2]|0; + (_sqlite3VdbeAddOp4($1558,97,0,4,0,$1560,0)|0); + $1561 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp3($1561,94,4,3,3)|0); + $1562 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($1562,35,3,1)|0); + $1563 = HEAP32[$v>>2]|0; + $1564 = (_sqlite3VdbeAddOp1($1563,134,1)|0); + HEAP32[$jmp4>>2] = $1564; + $1565 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp0($1565,24)|0); + $1566 = HEAP32[$v>>2]|0; + $1567 = HEAP32[$jmp4>>2]|0; + _sqlite3VdbeJumpHere($1566,$1567); + $1568 = HEAP32[$v>>2]|0; + $1569 = HEAP32[$jmp2>>2]|0; + _sqlite3VdbeJumpHere($1568,$1569); + $1570 = HEAP32[$0>>2]|0; + $1571 = HEAP32[$jmp3>>2]|0; + _sqlite3ResolvePartIdxLabel($1570,$1571); + } + $1572 = HEAP32[$pIdx36>>2]|0; + $1573 = (($1572) + 20|0); + $1574 = HEAP32[$1573>>2]|0; + HEAP32[$pIdx36>>2] = $1574; + $1575 = HEAP32[$j30>>2]|0; + $1576 = (($1575) + 1)|0; + HEAP32[$j30>>2] = $1576; + } + $1577 = HEAP32[$v>>2]|0; + $1578 = HEAP32[$iDataCur>>2]|0; + $1579 = HEAP32[$loopTop>>2]|0; + (_sqlite3VdbeAddOp2($1577,9,$1578,$1579)|0); + $1580 = HEAP32[$v>>2]|0; + $1581 = HEAP32[$loopTop>>2]|0; + $1582 = (($1581) - 1)|0; + _sqlite3VdbeJumpHere($1580,$1582); + $1583 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp4($1583,97,0,2,0,28096,-2)|0); + HEAP32[$j30>>2] = 0; + $1584 = HEAP32[$pTab35>>2]|0; + $1585 = (($1584) + 8|0); + $1586 = HEAP32[$1585>>2]|0; + HEAP32[$pIdx36>>2] = $1586; + while(1) { + $1587 = HEAP32[$pIdx36>>2]|0; + $1588 = ($1587|0)!=(0|0); + if (!($1588)) { + break L339; + } + $1589 = HEAP32[$pPk37>>2]|0; + $1590 = HEAP32[$pIdx36>>2]|0; + $1591 = ($1589|0)==($1590|0); + if (!($1591)) { + $1592 = HEAP32[$v>>2]|0; + $1593 = (_sqlite3VdbeCurrentAddr($1592)|0); + HEAP32[$addr31>>2] = $1593; + $1594 = HEAP32[$v>>2]|0; + $1595 = HEAP32[$addr31>>2]|0; + $1596 = (($1595) + 2)|0; + (_sqlite3VdbeAddOp2($1594,134,1,$1596)|0); + $1597 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($1597,24,0,0)|0); + $1598 = HEAP32[$v>>2]|0; + $1599 = HEAP32[$iIdxCur>>2]|0; + $1600 = HEAP32[$j30>>2]|0; + $1601 = (($1599) + ($1600))|0; + (_sqlite3VdbeAddOp2($1598,49,$1601,3)|0); + $1602 = HEAP32[$v>>2]|0; + $1603 = HEAP32[$j30>>2]|0; + $1604 = (8 + ($1603))|0; + $1605 = HEAP32[$addr31>>2]|0; + $1606 = (($1605) + 8)|0; + (_sqlite3VdbeAddOp3($1602,79,$1604,$1606,3)|0); + $1607 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($1607,-120); + $1608 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($1608,37,1,-1)|0); + $1609 = HEAP32[$v>>2]|0; + $1610 = HEAP32[$pIdx36>>2]|0; + $1611 = HEAP32[$1610>>2]|0; + (_sqlite3VdbeAddOp4($1609,97,0,3,0,$1611,0)|0); + $1612 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp3($1612,94,3,2,7)|0); + $1613 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($1613,35,7,1)|0); + } + $1614 = HEAP32[$pIdx36>>2]|0; + $1615 = (($1614) + 20|0); + $1616 = HEAP32[$1615>>2]|0; + HEAP32[$pIdx36>>2] = $1616; + $1617 = HEAP32[$j30>>2]|0; + $1618 = (($1617) + 1)|0; + HEAP32[$j30>>2] = $1618; + } + } + } while(0); + $1619 = HEAP32[$x32>>2]|0; + $1620 = HEAP32[$1619>>2]|0; + HEAP32[$x32>>2] = $1620; + } + } + } while(0); + $1621 = HEAP32[$i29>>2]|0; + $1622 = (($1621) + 1)|0; + HEAP32[$i29>>2] = $1622; + } + $1623 = HEAP32[$v>>2]|0; + $1624 = (_sqlite3VdbeAddOpList($1623,4,28008,0)|0); + HEAP32[$addr31>>2] = $1624; + $1625 = HEAP32[$v>>2]|0; + $1626 = HEAP32[$addr31>>2]|0; + $1627 = HEAP32[$mxErr>>2]|0; + $1628 = (0 - ($1627))|0; + _sqlite3VdbeChangeP2($1625,$1626,$1628); + $1629 = HEAP32[$v>>2]|0; + $1630 = HEAP32[$addr31>>2]|0; + $1631 = (($1630) + 1)|0; + _sqlite3VdbeJumpHere($1629,$1631); + $1632 = HEAP32[$v>>2]|0; + $1633 = HEAP32[$addr31>>2]|0; + $1634 = (($1633) + 2)|0; + _sqlite3VdbeChangeP4($1632,$1634,28128,-2); + break L21; + break; + } + case 5: { + $1333 = HEAP32[$zRight>>2]|0; + $1334 = ($1333|0)!=(0|0); + if (!($1334)) { + break L21; + } + $1335 = HEAP32[$db>>2]|0; + $1336 = HEAP32[$zRight>>2]|0; + $1337 = (_sqlite3GetBoolean($1336,0)|0); + $1338 = $1337&255; + _sqlite3RegisterLikeFunctions($1335,$1338); + break L21; + break; + } + case 34: { + $1766 = HEAP32[$2>>2]|0; + $1767 = HEAP32[$1766>>2]|0; + $1768 = ($1767|0)!=(0|0); + $1769 = HEAP32[$iDb>>2]|0; + $1770 = $1768 ? $1769 : 10; + HEAP32[$iBt>>2] = $1770; + HEAP32[$eMode41>>2] = 0; + $1771 = HEAP32[$zRight>>2]|0; + $1772 = ($1771|0)!=(0|0); + do { + if ($1772) { + $1773 = HEAP32[$zRight>>2]|0; + $1774 = (_sqlite3_stricmp($1773,28384)|0); + $1775 = ($1774|0)==(0); + if ($1775) { + HEAP32[$eMode41>>2] = 1; + break; + } + $1776 = HEAP32[$zRight>>2]|0; + $1777 = (_sqlite3_stricmp($1776,28392)|0); + $1778 = ($1777|0)==(0); + if ($1778) { + HEAP32[$eMode41>>2] = 2; + } + } + } while(0); + $1779 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($1779,3); + $1780 = HEAP32[$0>>2]|0; + $1781 = (($1780) + 72|0); + HEAP32[$1781>>2] = 3; + $1782 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($1782,0,0,28400,0)|0); + $1783 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($1783,1,0,9424,0)|0); + $1784 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($1784,2,0,28408,0)|0); + $1785 = HEAP32[$v>>2]|0; + $1786 = HEAP32[$iBt>>2]|0; + $1787 = HEAP32[$eMode41>>2]|0; + (_sqlite3VdbeAddOp3($1785,11,$1786,$1787,1)|0); + $1788 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($1788,35,1,3)|0); + break L21; + break; + } + case 33: { + $1789 = HEAP32[$zRight>>2]|0; + $1790 = ($1789|0)!=(0|0); + if ($1790) { + $1791 = HEAP32[$db>>2]|0; + $1792 = HEAP32[$zRight>>2]|0; + $1793 = (_sqlite3Atoi($1792)|0); + (_sqlite3_wal_autocheckpoint($1791,$1793)|0); + } + $1794 = HEAP32[$0>>2]|0; + $1795 = HEAP32[$db>>2]|0; + $1796 = (($1795) + 204|0); + $1797 = HEAP32[$1796>>2]|0; + $1798 = ($1797|0)==(10|0); + if ($1798) { + $1799 = HEAP32[$db>>2]|0; + $1800 = (($1799) + 208|0); + $1801 = HEAP32[$1800>>2]|0; + $1802 = $1801; + $1804 = $1802; + } else { + $1804 = 0; + } + $1803 = ($1804|0)<(0); + $1805 = $1803 << 31 >> 31; + _returnSingleInt($1794,28424,$1804,$1805); + break L21; + break; + } + case 7: { + HEAP32[$i40>>2] = 0; + $1755 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($1755,1); + $1756 = HEAP32[$0>>2]|0; + $1757 = (($1756) + 72|0); + HEAP32[$1757>>2] = 1; + $1758 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($1758,0,0,28368,0)|0); + while(1) { + $1759 = HEAP32[$i40>>2]|0; + $1760 = (($1759) + 1)|0; + HEAP32[$i40>>2] = $1760; + $1761 = (_sqlite3_compileoption_get($1759)|0); + HEAP32[$zOpt>>2] = $1761; + $1762 = ($1761|0)!=(0|0); + if (!($1762)) { + break L21; + } + $1763 = HEAP32[$v>>2]|0; + $1764 = HEAP32[$zOpt>>2]|0; + (_sqlite3VdbeAddOp4($1763,97,0,1,0,$1764,0)|0); + $1765 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($1765,35,1,1)|0); + } + break; + } + case 11: { + $1635 = HEAP32[$zRight>>2]|0; + $1636 = ($1635|0)!=(0|0); + if (!($1636)) { + $1637 = HEAP32[$0>>2]|0; + $1638 = (_sqlite3ReadSchema($1637)|0); + $1639 = ($1638|0)!=(0); + if ($1639) { + break L21; + } + $1640 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($1640,1); + $1641 = HEAP32[$v>>2]|0; + (_sqlite3VdbeSetColName($1641,0,0,28288,0)|0); + $1642 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($1642,97,0,1)|0); + $1643 = HEAP32[$v>>2]|0; + $1644 = HEAP32[$0>>2]|0; + $1645 = HEAP32[$1644>>2]|0; + $1646 = (($1645) + 16|0); + $1647 = HEAP32[$1646>>2]|0; + $1648 = (($1647) + 12|0); + $1649 = HEAP32[$1648>>2]|0; + $1650 = (($1649) + 77|0); + $1651 = HEAP8[$1650>>0]|0; + $1652 = $1651&255; + $1653 = (28136 + ($1652<<3)|0); + $1654 = HEAP32[$1653>>2]|0; + _sqlite3VdbeChangeP4($1643,-1,$1654,-2); + $1655 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($1655,35,1,1)|0); + break L21; + } + $1656 = HEAP32[$db>>2]|0; + $1657 = (($1656) + 16|0); + $1658 = HEAP32[$1657>>2]|0; + $1659 = (($1658) + 12|0); + $1660 = HEAP32[$1659>>2]|0; + $1661 = (($1660) + 78|0); + $1662 = HEAP16[$1661>>1]|0; + $1663 = $1662&65535; + $1664 = $1663 & 1; + $1665 = ($1664|0)==(1); + if ($1665) { + $1666 = HEAP32[$db>>2]|0; + $1667 = (($1666) + 16|0); + $1668 = HEAP32[$1667>>2]|0; + $1669 = (($1668) + 12|0); + $1670 = HEAP32[$1669>>2]|0; + $1671 = (($1670) + 78|0); + $1672 = HEAP16[$1671>>1]|0; + $1673 = $1672&65535; + $1674 = $1673 & 4; + $1675 = ($1674|0)==(4); + if (!($1675)) { + break L21; + } + } + HEAP32[$pEnc>>2] = 28136; + while(1) { + $1676 = HEAP32[$pEnc>>2]|0; + $1677 = HEAP32[$1676>>2]|0; + $1678 = ($1677|0)!=(0|0); + if (!($1678)) { + break; + } + $1679 = HEAP32[$zRight>>2]|0; + $1680 = HEAP32[$pEnc>>2]|0; + $1681 = HEAP32[$1680>>2]|0; + $1682 = (_sqlite3_stricmp($1679,$1681)|0); + $1683 = (0)==($1682|0); + $1684 = HEAP32[$pEnc>>2]|0; + if ($1683) { + label = 278; + break; + } + $1706 = (($1684) + 8|0); + HEAP32[$pEnc>>2] = $1706; + } + if ((label|0) == 278) { + $1685 = (($1684) + 4|0); + $1686 = HEAP8[$1685>>0]|0; + $1687 = $1686&255; + $1688 = ($1687|0)!=(0); + if ($1688) { + $1689 = HEAP32[$pEnc>>2]|0; + $1690 = (($1689) + 4|0); + $1691 = HEAP8[$1690>>0]|0; + $1692 = $1691&255; + $1698 = $1692; + } else { + $1693 = HEAP8[1480>>0]|0; + $1694 = $1693 << 24 >> 24; + $1695 = ($1694|0)==(0); + $1696 = $1695 ? 3 : 2; + $1698 = $1696; + } + $1697 = $1698&255; + $1699 = HEAP32[$0>>2]|0; + $1700 = HEAP32[$1699>>2]|0; + $1701 = (($1700) + 16|0); + $1702 = HEAP32[$1701>>2]|0; + $1703 = (($1702) + 12|0); + $1704 = HEAP32[$1703>>2]|0; + $1705 = (($1704) + 77|0); + HEAP8[$1705>>0] = $1697; + } + $1707 = HEAP32[$pEnc>>2]|0; + $1708 = HEAP32[$1707>>2]|0; + $1709 = ($1708|0)!=(0|0); + if ($1709) { + break L21; + } + $1710 = HEAP32[$0>>2]|0; + $1711 = HEAP32[$zRight>>2]|0; + HEAP32[$vararg_buffer18>>2] = $1711; + _sqlite3ErrorMsg($1710,28304,$vararg_buffer18); + break L21; + break; + } + case 0: { + $1712 = HEAP32[$v>>2]|0; + $1713 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeUsesBtree($1712,$1713); + $1714 = HEAP32[$zLeft>>2]|0; + $1715 = HEAP8[$1714>>0]|0; + $1716 = $1715 << 24 >> 24; + switch ($1716|0) { + case 65: case 97: { + HEAP32[$iCookie>>2] = 8; + break; + } + case 70: case 102: { + HEAP32[$iCookie>>2] = 0; + break; + } + case 83: case 115: { + HEAP32[$iCookie>>2] = 1; + break; + } + default: { + HEAP32[$iCookie>>2] = 6; + } + } + $1717 = HEAP32[$zRight>>2]|0; + $1718 = ($1717|0)!=(0|0); + if ($1718) { + $1719 = HEAP32[$iCookie>>2]|0; + $1720 = ($1719|0)!=(0); + if ($1720) { + $1721 = HEAP32[$v>>2]|0; + $1722 = (_sqlite3VdbeAddOpList($1721,3,28336,0)|0); + HEAP32[$addr38>>2] = $1722; + $1723 = HEAP32[$v>>2]|0; + $1724 = HEAP32[$addr38>>2]|0; + $1725 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeChangeP1($1723,$1724,$1725); + $1726 = HEAP32[$v>>2]|0; + $1727 = HEAP32[$addr38>>2]|0; + $1728 = (($1727) + 1)|0; + $1729 = HEAP32[$zRight>>2]|0; + $1730 = (_sqlite3Atoi($1729)|0); + _sqlite3VdbeChangeP1($1726,$1728,$1730); + $1731 = HEAP32[$v>>2]|0; + $1732 = HEAP32[$addr38>>2]|0; + $1733 = (($1732) + 2)|0; + $1734 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeChangeP1($1731,$1733,$1734); + $1735 = HEAP32[$v>>2]|0; + $1736 = HEAP32[$addr38>>2]|0; + $1737 = (($1736) + 2)|0; + $1738 = HEAP32[$iCookie>>2]|0; + _sqlite3VdbeChangeP2($1735,$1737,$1738); + break L21; + } + } + $1739 = HEAP32[$v>>2]|0; + $1740 = (_sqlite3VdbeAddOpList($1739,3,28352,0)|0); + HEAP32[$addr39>>2] = $1740; + $1741 = HEAP32[$v>>2]|0; + $1742 = HEAP32[$addr39>>2]|0; + $1743 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeChangeP1($1741,$1742,$1743); + $1744 = HEAP32[$v>>2]|0; + $1745 = HEAP32[$addr39>>2]|0; + $1746 = (($1745) + 1)|0; + $1747 = HEAP32[$iDb>>2]|0; + _sqlite3VdbeChangeP1($1744,$1746,$1747); + $1748 = HEAP32[$v>>2]|0; + $1749 = HEAP32[$addr39>>2]|0; + $1750 = (($1749) + 1)|0; + $1751 = HEAP32[$iCookie>>2]|0; + _sqlite3VdbeChangeP3($1748,$1750,$1751); + $1752 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($1752,1); + $1753 = HEAP32[$v>>2]|0; + $1754 = HEAP32[$zLeft>>2]|0; + (_sqlite3VdbeSetColName($1753,0,0,$1754,(-1))|0); + break L21; + break; + } + case 26: { + $1806 = HEAP32[$db>>2]|0; + (_sqlite3_db_release_memory($1806)|0); + break L21; + break; + } + case 27: { + $1818 = HEAP32[$zRight>>2]|0; + $1819 = ($1818|0)!=(0|0); + if ($1819) { + $1820 = HEAP32[$zRight>>2]|0; + $1821 = (_sqlite3Atoi64($1820,$N,1000000,1)|0); + $1822 = ($1821|0)==(0); + if ($1822) { + $1823 = $N; + $1824 = $1823; + $1825 = HEAP32[$1824>>2]|0; + $1826 = (($1823) + 4)|0; + $1827 = $1826; + $1828 = HEAP32[$1827>>2]|0; + (_sqlite3_soft_heap_limit64($1825,$1828)|0); + $1829 = tempRet0; + } + } + $1830 = HEAP32[$0>>2]|0; + $1831 = (_sqlite3_soft_heap_limit64(-1,-1)|0); + $1832 = tempRet0; + _returnSingleInt($1830,28456,$1831,$1832); + break L21; + break; + } + default: { + $1807 = HEAP32[$zRight>>2]|0; + $1808 = ($1807|0)!=(0|0); + if ($1808) { + $1809 = HEAP32[$db>>2]|0; + $1810 = HEAP32[$zRight>>2]|0; + $1811 = (_sqlite3Atoi($1810)|0); + (_sqlite3_busy_timeout($1809,$1811)|0); + } + $1812 = HEAP32[$0>>2]|0; + $1813 = HEAP32[$db>>2]|0; + $1814 = (($1813) + 484|0); + $1815 = HEAP32[$1814>>2]|0; + $1816 = ($1815|0)<(0); + $1817 = $1816 << 31 >> 31; + _returnSingleInt($1812,28448,$1815,$1817); + break L21; + } + } + } while(0); + } + } + } while(0); + $1833 = HEAP32[$db>>2]|0; + $1834 = HEAP32[$zLeft>>2]|0; + _sqlite3DbFree($1833,$1834); + $1835 = HEAP32[$db>>2]|0; + $1836 = HEAP32[$zRight>>2]|0; + _sqlite3DbFree($1835,$1836); + STACKTOP = sp;return; +} +function _sqlite3FinishTrigger($pParse,$pStepList,$pAll) { + $pParse = $pParse|0; + $pStepList = $pStepList|0; + $pAll = $pAll|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $iDb = 0, $n = 0, $nameToken = 0, $pHash = 0, $pLink = 0, $pTab = 0, $pTrig = 0, $sFix = 0, $v = 0, $vararg_buffer5 = 0; + var $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $z = 0, $zName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $vararg_buffer5 = sp; + $0 = sp + 100|0; + $1 = sp + 96|0; + $2 = sp + 92|0; + $pTrig = sp + 88|0; + $zName = sp + 84|0; + $db = sp + 80|0; + $sFix = sp + 56|0; + $iDb = sp + 104|0; + $nameToken = sp + 40|0; + $v = sp + 32|0; + $z = sp + 28|0; + $pLink = sp + 24|0; + $pHash = sp + 20|0; + $pTab = sp + 48|0; + $n = sp + 52|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pStepList; + HEAP32[$2>>2] = $pAll; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 488|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pTrig>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$db>>2] = $7; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 488|0); + HEAP32[$9>>2] = 0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 64|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)!=(0); + do { + if (!($13)) { + $14 = HEAP32[$pTrig>>2]|0; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = HEAP32[$pTrig>>2]|0; + $17 = HEAP32[$16>>2]|0; + HEAP32[$zName>>2] = $17; + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$pTrig>>2]|0; + $21 = (($20) + 20|0); + $22 = HEAP32[$21>>2]|0; + $23 = (_sqlite3SchemaToIndex($19,$22)|0); + HEAP32[$iDb>>2] = $23; + $24 = HEAP32[$1>>2]|0; + $25 = HEAP32[$pTrig>>2]|0; + $26 = (($25) + 28|0); + HEAP32[$26>>2] = $24; + while(1) { + $27 = HEAP32[$1>>2]|0; + $28 = ($27|0)!=(0|0); + $29 = HEAP32[$pTrig>>2]|0; + if (!($28)) { + break; + } + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 4|0); + HEAP32[$31>>2] = $29; + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 32|0); + $34 = HEAP32[$33>>2]|0; + HEAP32[$1>>2] = $34; + } + $35 = HEAP32[$29>>2]|0; + HEAP32[$nameToken>>2] = $35; + $36 = HEAP32[$nameToken>>2]|0; + $37 = (_sqlite3Strlen30($36)|0); + $38 = (($nameToken) + 4|0); + HEAP32[$38>>2] = $37; + $39 = HEAP32[$0>>2]|0; + $40 = HEAP32[$iDb>>2]|0; + _sqlite3FixInit($sFix,$39,$40,1808,$nameToken); + $41 = HEAP32[$pTrig>>2]|0; + $42 = (($41) + 28|0); + $43 = HEAP32[$42>>2]|0; + $44 = (_sqlite3FixTriggerStep($sFix,$43)|0); + $45 = ($44|0)!=(0); + if (!($45)) { + $46 = HEAP32[$pTrig>>2]|0; + $47 = (($46) + 12|0); + $48 = HEAP32[$47>>2]|0; + $49 = (_sqlite3FixExpr($sFix,$48)|0); + $50 = ($49|0)!=(0); + if (!($50)) { + $51 = HEAP32[$db>>2]|0; + $52 = (($51) + 132|0); + $53 = (($52) + 5|0); + $54 = HEAP8[$53>>0]|0; + $55 = ($54<<24>>24)!=(0); + if (!($55)) { + $56 = HEAP32[$0>>2]|0; + $57 = (_sqlite3GetVdbe($56)|0); + HEAP32[$v>>2] = $57; + $58 = HEAP32[$v>>2]|0; + $59 = ($58|0)==(0|0); + if ($59) { + break; + } + $60 = HEAP32[$0>>2]|0; + $61 = HEAP32[$iDb>>2]|0; + _sqlite3BeginWriteOperation($60,0,$61); + $62 = HEAP32[$db>>2]|0; + $63 = HEAP32[$2>>2]|0; + $64 = HEAP32[$63>>2]|0; + $65 = HEAP32[$2>>2]|0; + $66 = (($65) + 4|0); + $67 = HEAP32[$66>>2]|0; + $68 = (_sqlite3DbStrNDup($62,$64,$67)|0); + HEAP32[$z>>2] = $68; + $69 = HEAP32[$0>>2]|0; + $70 = HEAP32[$iDb>>2]|0; + $71 = HEAP32[$db>>2]|0; + $72 = (($71) + 16|0); + $73 = HEAP32[$72>>2]|0; + $74 = (($73) + ($70<<4)|0); + $75 = HEAP32[$74>>2]|0; + $76 = HEAP32[$iDb>>2]|0; + $77 = ($76|0)==(1); + $78 = $77 ? 21432 : 21456; + $79 = HEAP32[$zName>>2]|0; + $80 = HEAP32[$pTrig>>2]|0; + $81 = (($80) + 4|0); + $82 = HEAP32[$81>>2]|0; + $83 = HEAP32[$z>>2]|0; + HEAP32[$vararg_buffer5>>2] = $75; + $vararg_ptr1 = (($vararg_buffer5) + 4|0); + HEAP32[$vararg_ptr1>>2] = $78; + $vararg_ptr2 = (($vararg_buffer5) + 8|0); + HEAP32[$vararg_ptr2>>2] = $79; + $vararg_ptr3 = (($vararg_buffer5) + 12|0); + HEAP32[$vararg_ptr3>>2] = $82; + $vararg_ptr4 = (($vararg_buffer5) + 16|0); + HEAP32[$vararg_ptr4>>2] = $83; + _sqlite3NestedParse($69,26680,$vararg_buffer5); + $84 = HEAP32[$db>>2]|0; + $85 = HEAP32[$z>>2]|0; + _sqlite3DbFree($84,$85); + $86 = HEAP32[$0>>2]|0; + $87 = HEAP32[$iDb>>2]|0; + _sqlite3ChangeCookie($86,$87); + $88 = HEAP32[$v>>2]|0; + $89 = HEAP32[$iDb>>2]|0; + $90 = HEAP32[$db>>2]|0; + $91 = HEAP32[$zName>>2]|0; + HEAP32[$vararg_buffer5>>2] = $91; + $92 = (_sqlite3MPrintf($90,26744,$vararg_buffer5)|0); + _sqlite3VdbeAddParseSchemaOp($88,$89,$92); + } + $93 = HEAP32[$db>>2]|0; + $94 = (($93) + 132|0); + $95 = (($94) + 5|0); + $96 = HEAP8[$95>>0]|0; + $97 = ($96<<24>>24)!=(0); + if ($97) { + $98 = HEAP32[$pTrig>>2]|0; + HEAP32[$pLink>>2] = $98; + $99 = HEAP32[$iDb>>2]|0; + $100 = HEAP32[$db>>2]|0; + $101 = (($100) + 16|0); + $102 = HEAP32[$101>>2]|0; + $103 = (($102) + ($99<<4)|0); + $104 = (($103) + 12|0); + $105 = HEAP32[$104>>2]|0; + $106 = (($105) + 40|0); + HEAP32[$pHash>>2] = $106; + $107 = HEAP32[$pHash>>2]|0; + $108 = HEAP32[$zName>>2]|0; + $109 = HEAP32[$zName>>2]|0; + $110 = (_sqlite3Strlen30($109)|0); + $111 = HEAP32[$pTrig>>2]|0; + $112 = (_sqlite3HashInsert($107,$108,$110,$111)|0); + HEAP32[$pTrig>>2] = $112; + $113 = HEAP32[$pTrig>>2]|0; + $114 = ($113|0)!=(0|0); + if ($114) { + $115 = HEAP32[$db>>2]|0; + $116 = (($115) + 64|0); + HEAP8[$116>>0] = 1; + break; + } + $117 = HEAP32[$pLink>>2]|0; + $118 = (($117) + 20|0); + $119 = HEAP32[$118>>2]|0; + $120 = HEAP32[$pLink>>2]|0; + $121 = (($120) + 24|0); + $122 = HEAP32[$121>>2]|0; + $123 = ($119|0)==($122|0); + if ($123) { + $124 = HEAP32[$pLink>>2]|0; + $125 = (($124) + 4|0); + $126 = HEAP32[$125>>2]|0; + $127 = (_sqlite3Strlen30($126)|0); + HEAP32[$n>>2] = $127; + $128 = HEAP32[$pLink>>2]|0; + $129 = (($128) + 24|0); + $130 = HEAP32[$129>>2]|0; + $131 = (($130) + 8|0); + $132 = HEAP32[$pLink>>2]|0; + $133 = (($132) + 4|0); + $134 = HEAP32[$133>>2]|0; + $135 = HEAP32[$n>>2]|0; + $136 = (_sqlite3HashFind($131,$134,$135)|0); + HEAP32[$pTab>>2] = $136; + $137 = HEAP32[$pTab>>2]|0; + $138 = (($137) + 64|0); + $139 = HEAP32[$138>>2]|0; + $140 = HEAP32[$pLink>>2]|0; + $141 = (($140) + 32|0); + HEAP32[$141>>2] = $139; + $142 = HEAP32[$pLink>>2]|0; + $143 = HEAP32[$pTab>>2]|0; + $144 = (($143) + 64|0); + HEAP32[$144>>2] = $142; + } + } + } + } + } + } + } while(0); + $145 = HEAP32[$db>>2]|0; + $146 = HEAP32[$pTrig>>2]|0; + _sqlite3DeleteTrigger($145,$146); + $147 = HEAP32[$db>>2]|0; + $148 = HEAP32[$1>>2]|0; + _sqlite3DeleteTriggerStep($147,$148); + STACKTOP = sp;return; +} +function _sqlite3BeginTrigger($pParse,$pName1,$pName2,$tr_tm,$op,$pColumns,$pTableName,$pWhen,$isTemp,$noErr) { + $pParse = $pParse|0; + $pName1 = $pName1|0; + $pName2 = $pName2|0; + $tr_tm = $tr_tm|0; + $op = $op|0; + $pColumns = $pColumns|0; + $pTableName = $pTableName|0; + $pWhen = $pWhen|0; + $isTemp = $isTemp|0; + $noErr = $noErr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $code = 0, $db = 0, $iDb = 0, $iTabDb = 0, $pName = 0, $pTab = 0, $pTrigger = 0, $sFix = 0, $vararg_buffer12 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr15 = 0, $zDb = 0, $zDbTrig = 0; + var $zName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $vararg_buffer12 = sp; + $0 = sp + 112|0; + $1 = sp + 108|0; + $2 = sp + 104|0; + $3 = sp + 100|0; + $4 = sp + 96|0; + $5 = sp + 92|0; + $6 = sp + 88|0; + $7 = sp + 84|0; + $8 = sp + 80|0; + $9 = sp + 76|0; + $pTrigger = sp + 116|0; + $pTab = sp + 24|0; + $zName = sp + 20|0; + $db = sp + 12|0; + $iDb = sp + 16|0; + $pName = sp + 68|0; + $sFix = sp + 32|0; + $iTabDb = sp + 56|0; + $code = sp + 60|0; + $zDb = sp + 64|0; + $zDbTrig = sp + 72|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pName1; + HEAP32[$2>>2] = $pName2; + HEAP32[$3>>2] = $tr_tm; + HEAP32[$4>>2] = $op; + HEAP32[$5>>2] = $pColumns; + HEAP32[$6>>2] = $pTableName; + HEAP32[$7>>2] = $pWhen; + HEAP32[$8>>2] = $isTemp; + HEAP32[$9>>2] = $noErr; + HEAP32[$pTrigger>>2] = 0; + HEAP32[$zName>>2] = 0; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$10>>2]|0; + HEAP32[$db>>2] = $11; + $12 = HEAP32[$8>>2]|0; + $13 = ($12|0)!=(0); + do { + if ($13) { + $14 = HEAP32[$2>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16>>>0)>(0); + if ($17) { + $18 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($18,26336,$vararg_buffer12); + break; + } else { + HEAP32[$iDb>>2] = 1; + $19 = HEAP32[$1>>2]|0; + HEAP32[$pName>>2] = $19; + label = 6; + break; + } + } else { + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$1>>2]|0; + $22 = HEAP32[$2>>2]|0; + $23 = (_sqlite3TwoPartName($20,$21,$22,$pName)|0); + HEAP32[$iDb>>2] = $23; + $24 = HEAP32[$iDb>>2]|0; + $25 = ($24|0)<(0); + if (!($25)) { + label = 6; + } + } + } while(0); + do { + if ((label|0) == 6) { + $26 = HEAP32[$6>>2]|0; + $27 = ($26|0)!=(0|0); + if ($27) { + $28 = HEAP32[$db>>2]|0; + $29 = (($28) + 64|0); + $30 = HEAP8[$29>>0]|0; + $31 = $30&255; + $32 = ($31|0)!=(0); + if (!($32)) { + $33 = HEAP32[$db>>2]|0; + $34 = (($33) + 132|0); + $35 = (($34) + 5|0); + $36 = HEAP8[$35>>0]|0; + $37 = $36&255; + $38 = ($37|0)!=(0); + if ($38) { + $39 = HEAP32[$iDb>>2]|0; + $40 = ($39|0)!=(1); + if ($40) { + $41 = HEAP32[$db>>2]|0; + $42 = HEAP32[$6>>2]|0; + $43 = (($42) + 8|0); + $44 = (($43) + 4|0); + $45 = HEAP32[$44>>2]|0; + _sqlite3DbFree($41,$45); + $46 = HEAP32[$6>>2]|0; + $47 = (($46) + 8|0); + $48 = (($47) + 4|0); + HEAP32[$48>>2] = 0; + } + } + $49 = HEAP32[$0>>2]|0; + $50 = HEAP32[$6>>2]|0; + $51 = (_sqlite3SrcListLookup($49,$50)|0); + HEAP32[$pTab>>2] = $51; + $52 = HEAP32[$db>>2]|0; + $53 = (($52) + 132|0); + $54 = (($53) + 5|0); + $55 = HEAP8[$54>>0]|0; + $56 = $55&255; + $57 = ($56|0)==(0); + if ($57) { + $58 = HEAP32[$2>>2]|0; + $59 = (($58) + 4|0); + $60 = HEAP32[$59>>2]|0; + $61 = ($60|0)==(0); + if ($61) { + $62 = HEAP32[$pTab>>2]|0; + $63 = ($62|0)!=(0|0); + if ($63) { + $64 = HEAP32[$pTab>>2]|0; + $65 = (($64) + 68|0); + $66 = HEAP32[$65>>2]|0; + $67 = HEAP32[$db>>2]|0; + $68 = (($67) + 16|0); + $69 = HEAP32[$68>>2]|0; + $70 = (($69) + 16|0); + $71 = (($70) + 12|0); + $72 = HEAP32[$71>>2]|0; + $73 = ($66|0)==($72|0); + if ($73) { + HEAP32[$iDb>>2] = 1; + } + } + } + } + $74 = HEAP32[$db>>2]|0; + $75 = (($74) + 64|0); + $76 = HEAP8[$75>>0]|0; + $77 = ($76<<24>>24)!=(0); + if (!($77)) { + $78 = HEAP32[$0>>2]|0; + $79 = HEAP32[$iDb>>2]|0; + $80 = HEAP32[$pName>>2]|0; + _sqlite3FixInit($sFix,$78,$79,1808,$80); + $81 = HEAP32[$6>>2]|0; + $82 = (_sqlite3FixSrcList($sFix,$81)|0); + $83 = ($82|0)!=(0); + if (!($83)) { + $84 = HEAP32[$0>>2]|0; + $85 = HEAP32[$6>>2]|0; + $86 = (_sqlite3SrcListLookup($84,$85)|0); + HEAP32[$pTab>>2] = $86; + $87 = HEAP32[$pTab>>2]|0; + $88 = ($87|0)!=(0|0); + if (!($88)) { + $89 = HEAP32[$db>>2]|0; + $90 = (($89) + 132|0); + $91 = (($90) + 4|0); + $92 = HEAP8[$91>>0]|0; + $93 = $92&255; + $94 = ($93|0)==(1); + if (!($94)) { + break; + } + $95 = HEAP32[$db>>2]|0; + $96 = (($95) + 132|0); + $97 = (($96) + 6|0); + HEAP8[$97>>0] = 1; + break; + } + $98 = HEAP32[$pTab>>2]|0; + $99 = (($98) + 44|0); + $100 = HEAP8[$99>>0]|0; + $101 = $100&255; + $102 = $101 & 16; + $103 = ($102|0)!=(0); + if ($103) { + $104 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($104,26384,$vararg_buffer12); + break; + } + $105 = HEAP32[$db>>2]|0; + $106 = HEAP32[$pName>>2]|0; + $107 = (_sqlite3NameFromToken($105,$106)|0); + HEAP32[$zName>>2] = $107; + $108 = HEAP32[$zName>>2]|0; + $109 = ($108|0)!=(0|0); + if ($109) { + $110 = HEAP32[$0>>2]|0; + $111 = HEAP32[$zName>>2]|0; + $112 = (_sqlite3CheckObjectName($110,$111)|0); + $113 = (0)!=($112|0); + if (!($113)) { + $114 = HEAP32[$iDb>>2]|0; + $115 = HEAP32[$db>>2]|0; + $116 = (($115) + 16|0); + $117 = HEAP32[$116>>2]|0; + $118 = (($117) + ($114<<4)|0); + $119 = (($118) + 12|0); + $120 = HEAP32[$119>>2]|0; + $121 = (($120) + 40|0); + $122 = HEAP32[$zName>>2]|0; + $123 = HEAP32[$zName>>2]|0; + $124 = (_sqlite3Strlen30($123)|0); + $125 = (_sqlite3HashFind($121,$122,$124)|0); + $126 = ($125|0)!=(0|0); + if ($126) { + $127 = HEAP32[$9>>2]|0; + $128 = ($127|0)!=(0); + $129 = HEAP32[$0>>2]|0; + if ($128) { + $131 = HEAP32[$iDb>>2]|0; + _sqlite3CodeVerifySchema($129,$131); + break; + } else { + $130 = HEAP32[$pName>>2]|0; + HEAP32[$vararg_buffer12>>2] = $130; + _sqlite3ErrorMsg($129,26432,$vararg_buffer12); + break; + } + } + $132 = HEAP32[$pTab>>2]|0; + $133 = HEAP32[$132>>2]|0; + $134 = (_sqlite3_strnicmp($133,21672,7)|0); + $135 = ($134|0)==(0); + if ($135) { + $136 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($136,26464,$vararg_buffer12); + $137 = HEAP32[$0>>2]|0; + $138 = (($137) + 64|0); + $139 = HEAP32[$138>>2]|0; + $140 = (($139) + 1)|0; + HEAP32[$138>>2] = $140; + break; + } + $141 = HEAP32[$pTab>>2]|0; + $142 = (($141) + 12|0); + $143 = HEAP32[$142>>2]|0; + $144 = ($143|0)!=(0|0); + if ($144) { + $145 = HEAP32[$3>>2]|0; + $146 = ($145|0)!=(49); + if ($146) { + $147 = HEAP32[$0>>2]|0; + $148 = HEAP32[$3>>2]|0; + $149 = ($148|0)==(35); + $150 = $149 ? 26544 : 26552; + $151 = HEAP32[$6>>2]|0; + HEAP32[$vararg_buffer12>>2] = $150; + $vararg_ptr10 = (($vararg_buffer12) + 4|0); + HEAP32[$vararg_ptr10>>2] = $151; + $vararg_ptr11 = (($vararg_buffer12) + 8|0); + HEAP32[$vararg_ptr11>>2] = 0; + _sqlite3ErrorMsg($147,26504,$vararg_buffer12); + break; + } + } + $152 = HEAP32[$pTab>>2]|0; + $153 = (($152) + 12|0); + $154 = HEAP32[$153>>2]|0; + $155 = ($154|0)!=(0|0); + if (!($155)) { + $156 = HEAP32[$3>>2]|0; + $157 = ($156|0)==(49); + if ($157) { + $158 = HEAP32[$0>>2]|0; + $159 = HEAP32[$6>>2]|0; + HEAP32[$vararg_buffer12>>2] = $159; + $vararg_ptr15 = (($vararg_buffer12) + 4|0); + HEAP32[$vararg_ptr15>>2] = 0; + _sqlite3ErrorMsg($158,26560,$vararg_buffer12); + break; + } + } + $160 = HEAP32[$db>>2]|0; + $161 = HEAP32[$pTab>>2]|0; + $162 = (($161) + 68|0); + $163 = HEAP32[$162>>2]|0; + $164 = (_sqlite3SchemaToIndex($160,$163)|0); + HEAP32[$iTabDb>>2] = $164; + HEAP32[$code>>2] = 7; + $165 = HEAP32[$iTabDb>>2]|0; + $166 = HEAP32[$db>>2]|0; + $167 = (($166) + 16|0); + $168 = HEAP32[$167>>2]|0; + $169 = (($168) + ($165<<4)|0); + $170 = HEAP32[$169>>2]|0; + HEAP32[$zDb>>2] = $170; + $171 = HEAP32[$8>>2]|0; + $172 = ($171|0)!=(0); + if ($172) { + $173 = HEAP32[$db>>2]|0; + $174 = (($173) + 16|0); + $175 = HEAP32[$174>>2]|0; + $176 = (($175) + 16|0); + $177 = HEAP32[$176>>2]|0; + $179 = $177; + } else { + $178 = HEAP32[$zDb>>2]|0; + $179 = $178; + } + HEAP32[$zDbTrig>>2] = $179; + $180 = HEAP32[$iTabDb>>2]|0; + $181 = ($180|0)==(1); + if ($181) { + label = 42; + } else { + $182 = HEAP32[$8>>2]|0; + $183 = ($182|0)!=(0); + if ($183) { + label = 42; + } + } + if ((label|0) == 42) { + HEAP32[$code>>2] = 5; + } + $184 = HEAP32[$0>>2]|0; + $185 = HEAP32[$code>>2]|0; + $186 = HEAP32[$zName>>2]|0; + $187 = HEAP32[$pTab>>2]|0; + $188 = HEAP32[$187>>2]|0; + $189 = HEAP32[$zDbTrig>>2]|0; + $190 = (_sqlite3AuthCheck($184,$185,$186,$188,$189)|0); + $191 = ($190|0)!=(0); + if (!($191)) { + $192 = HEAP32[$0>>2]|0; + $193 = HEAP32[$iTabDb>>2]|0; + $194 = ($193|0)==(1); + $195 = $194 ? 21432 : 21456; + $196 = HEAP32[$zDb>>2]|0; + $197 = (_sqlite3AuthCheck($192,18,$195,0,$196)|0); + $198 = ($197|0)!=(0); + if (!($198)) { + $199 = HEAP32[$3>>2]|0; + $200 = ($199|0)==(49); + if ($200) { + HEAP32[$3>>2] = 35; + } + $201 = HEAP32[$db>>2]|0; + $202 = (_sqlite3DbMallocZero($201,36)|0); + HEAP32[$pTrigger>>2] = $202; + $203 = HEAP32[$pTrigger>>2]|0; + $204 = ($203|0)==(0|0); + if ($204) { + break; + } + $205 = HEAP32[$zName>>2]|0; + $206 = HEAP32[$pTrigger>>2]|0; + HEAP32[$206>>2] = $205; + HEAP32[$zName>>2] = 0; + $207 = HEAP32[$db>>2]|0; + $208 = HEAP32[$6>>2]|0; + $209 = (($208) + 8|0); + $210 = (($209) + 8|0); + $211 = HEAP32[$210>>2]|0; + $212 = (_sqlite3DbStrDup($207,$211)|0); + $213 = HEAP32[$pTrigger>>2]|0; + $214 = (($213) + 4|0); + HEAP32[$214>>2] = $212; + $215 = HEAP32[$iDb>>2]|0; + $216 = HEAP32[$db>>2]|0; + $217 = (($216) + 16|0); + $218 = HEAP32[$217>>2]|0; + $219 = (($218) + ($215<<4)|0); + $220 = (($219) + 12|0); + $221 = HEAP32[$220>>2]|0; + $222 = HEAP32[$pTrigger>>2]|0; + $223 = (($222) + 20|0); + HEAP32[$223>>2] = $221; + $224 = HEAP32[$pTab>>2]|0; + $225 = (($224) + 68|0); + $226 = HEAP32[$225>>2]|0; + $227 = HEAP32[$pTrigger>>2]|0; + $228 = (($227) + 24|0); + HEAP32[$228>>2] = $226; + $229 = HEAP32[$4>>2]|0; + $230 = $229&255; + $231 = HEAP32[$pTrigger>>2]|0; + $232 = (($231) + 8|0); + HEAP8[$232>>0] = $230; + $233 = HEAP32[$3>>2]|0; + $234 = ($233|0)==(35); + $235 = $234 ? 1 : 2; + $236 = $235&255; + $237 = HEAP32[$pTrigger>>2]|0; + $238 = (($237) + 9|0); + HEAP8[$238>>0] = $236; + $239 = HEAP32[$db>>2]|0; + $240 = HEAP32[$7>>2]|0; + $241 = (_sqlite3ExprDup($239,$240,1)|0); + $242 = HEAP32[$pTrigger>>2]|0; + $243 = (($242) + 12|0); + HEAP32[$243>>2] = $241; + $244 = HEAP32[$db>>2]|0; + $245 = HEAP32[$5>>2]|0; + $246 = (_sqlite3IdListDup($244,$245)|0); + $247 = HEAP32[$pTrigger>>2]|0; + $248 = (($247) + 16|0); + HEAP32[$248>>2] = $246; + $249 = HEAP32[$pTrigger>>2]|0; + $250 = HEAP32[$0>>2]|0; + $251 = (($250) + 488|0); + HEAP32[$251>>2] = $249; + } + } + } + } + } + } + } + } + } + } while(0); + $252 = HEAP32[$db>>2]|0; + $253 = HEAP32[$zName>>2]|0; + _sqlite3DbFree($252,$253); + $254 = HEAP32[$db>>2]|0; + $255 = HEAP32[$6>>2]|0; + _sqlite3SrcListDelete($254,$255); + $256 = HEAP32[$db>>2]|0; + $257 = HEAP32[$5>>2]|0; + _sqlite3IdListDelete($256,$257); + $258 = HEAP32[$db>>2]|0; + $259 = HEAP32[$7>>2]|0; + _sqlite3ExprDelete($258,$259); + $260 = HEAP32[$0>>2]|0; + $261 = (($260) + 488|0); + $262 = HEAP32[$261>>2]|0; + $263 = ($262|0)!=(0|0); + if ($263) { + STACKTOP = sp;return; + } + $264 = HEAP32[$db>>2]|0; + $265 = HEAP32[$pTrigger>>2]|0; + _sqlite3DeleteTrigger($264,$265); + STACKTOP = sp;return; +} +function _sqlite3TriggerUpdateStep($db,$pTableName,$pEList,$pWhere,$orconf) { + $db = $db|0; + $pTableName = $pTableName|0; + $pEList = $pEList|0; + $pWhere = $pWhere|0; + $orconf = $orconf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTriggerStep = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 20|0; + $pTriggerStep = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pTableName; + HEAP32[$2>>2] = $pEList; + HEAP32[$3>>2] = $pWhere; + HEAP8[$4>>0] = $orconf; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (_triggerStepAllocate($5,110,$6)|0); + HEAP32[$pTriggerStep>>2] = $7; + $8 = HEAP32[$pTriggerStep>>2]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = (_sqlite3ExprListDup($10,$11,1)|0); + $13 = HEAP32[$pTriggerStep>>2]|0; + $14 = (($13) + 24|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$3>>2]|0; + $17 = (_sqlite3ExprDup($15,$16,1)|0); + $18 = HEAP32[$pTriggerStep>>2]|0; + $19 = (($18) + 20|0); + HEAP32[$19>>2] = $17; + $20 = HEAP8[$4>>0]|0; + $21 = HEAP32[$pTriggerStep>>2]|0; + $22 = (($21) + 1|0); + HEAP8[$22>>0] = $20; + } + $23 = HEAP32[$0>>2]|0; + $24 = HEAP32[$2>>2]|0; + _sqlite3ExprListDelete($23,$24); + $25 = HEAP32[$0>>2]|0; + $26 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($25,$26); + $27 = HEAP32[$pTriggerStep>>2]|0; + STACKTOP = sp;return ($27|0); +} +function _sqlite3TriggerInsertStep($db,$pTableName,$pColumn,$pSelect,$orconf) { + $db = $db|0; + $pTableName = $pTableName|0; + $pColumn = $pColumn|0; + $pSelect = $pSelect|0; + $orconf = $orconf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTriggerStep = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 20|0; + $pTriggerStep = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pTableName; + HEAP32[$2>>2] = $pColumn; + HEAP32[$3>>2] = $pSelect; + HEAP8[$4>>0] = $orconf; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (_triggerStepAllocate($5,108,$6)|0); + HEAP32[$pTriggerStep>>2] = $7; + $8 = HEAP32[$pTriggerStep>>2]|0; + $9 = ($8|0)!=(0|0); + $10 = HEAP32[$0>>2]|0; + if ($9) { + $11 = HEAP32[$3>>2]|0; + $12 = (_sqlite3SelectDup($10,$11,1)|0); + $13 = HEAP32[$pTriggerStep>>2]|0; + $14 = (($13) + 8|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$pTriggerStep>>2]|0; + $17 = (($16) + 28|0); + HEAP32[$17>>2] = $15; + $18 = HEAP8[$4>>0]|0; + $19 = HEAP32[$pTriggerStep>>2]|0; + $20 = (($19) + 1|0); + HEAP8[$20>>0] = $18; + $22 = HEAP32[$0>>2]|0; + $23 = HEAP32[$3>>2]|0; + _sqlite3SelectDelete($22,$23); + $24 = HEAP32[$pTriggerStep>>2]|0; + STACKTOP = sp;return ($24|0); + } else { + $21 = HEAP32[$2>>2]|0; + _sqlite3IdListDelete($10,$21); + $22 = HEAP32[$0>>2]|0; + $23 = HEAP32[$3>>2]|0; + _sqlite3SelectDelete($22,$23); + $24 = HEAP32[$pTriggerStep>>2]|0; + STACKTOP = sp;return ($24|0); + } + return 0|0; +} +function _sqlite3TriggerDeleteStep($db,$pTableName,$pWhere) { + $db = $db|0; + $pTableName = $pTableName|0; + $pWhere = $pWhere|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTriggerStep = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pTriggerStep = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pTableName; + HEAP32[$2>>2] = $pWhere; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (_triggerStepAllocate($3,109,$4)|0); + HEAP32[$pTriggerStep>>2] = $5; + $6 = HEAP32[$pTriggerStep>>2]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = (_sqlite3ExprDup($8,$9,1)|0); + $11 = HEAP32[$pTriggerStep>>2]|0; + $12 = (($11) + 20|0); + HEAP32[$12>>2] = $10; + $13 = HEAP32[$pTriggerStep>>2]|0; + $14 = (($13) + 1|0); + HEAP8[$14>>0] = 10; + } + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$2>>2]|0; + _sqlite3ExprDelete($15,$16); + $17 = HEAP32[$pTriggerStep>>2]|0; + STACKTOP = sp;return ($17|0); +} +function _sqlite3TriggerSelectStep($db,$pSelect) { + $db = $db|0; + $pSelect = $pSelect|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTriggerStep = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pTriggerStep = sp + 8|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pSelect; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3DbMallocZero($3,40)|0); + HEAP32[$pTriggerStep>>2] = $4; + $5 = HEAP32[$pTriggerStep>>2]|0; + $6 = ($5|0)==(0|0); + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + _sqlite3SelectDelete($7,$8); + HEAP32[$0>>2] = 0; + $16 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($16|0); + } else { + $9 = HEAP32[$pTriggerStep>>2]|0; + HEAP8[$9>>0] = 119; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$pTriggerStep>>2]|0; + $12 = (($11) + 8|0); + HEAP32[$12>>2] = $10; + $13 = HEAP32[$pTriggerStep>>2]|0; + $14 = (($13) + 1|0); + HEAP8[$14>>0] = 10; + $15 = HEAP32[$pTriggerStep>>2]|0; + HEAP32[$0>>2] = $15; + $16 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($16|0); + } + return 0|0; +} +function _sqlite3DropTrigger($pParse,$pName,$noErr) { + $pParse = $pParse|0; + $pName = $pName|0; + $noErr = $noErr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $j = 0, $nName = 0, $pTrigger = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $zDb = 0, $zName = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $pTrigger = sp + 28|0; + $i = sp + 44|0; + $zDb = sp + 16|0; + $zName = sp + 12|0; + $nName = sp + 8|0; + $db = sp + 20|0; + $j = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pName; + HEAP32[$2>>2] = $noErr; + HEAP32[$pTrigger>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + $5 = HEAP32[$db>>2]|0; + $6 = (($5) + 64|0); + $7 = HEAP8[$6>>0]|0; + $8 = ($7<<24>>24)!=(0); + if ($8) { + $69 = HEAP32[$db>>2]|0; + $70 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($69,$70); + STACKTOP = sp;return; + } + $9 = HEAP32[$0>>2]|0; + $10 = (_sqlite3ReadSchema($9)|0); + $11 = (0)!=($10|0); + if ($11) { + $69 = HEAP32[$db>>2]|0; + $70 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($69,$70); + STACKTOP = sp;return; + } + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 8|0); + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$zDb>>2] = $15; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 8|0); + $18 = (($17) + 8|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$zName>>2] = $19; + $20 = HEAP32[$zName>>2]|0; + $21 = (_sqlite3Strlen30($20)|0); + HEAP32[$nName>>2] = $21; + HEAP32[$i>>2] = 0; + while(1) { + $22 = HEAP32[$i>>2]|0; + $23 = HEAP32[$db>>2]|0; + $24 = (($23) + 20|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($22|0)<($25|0); + if (!($26)) { + break; + } + $27 = HEAP32[$i>>2]|0; + $28 = ($27|0)<(2); + $29 = HEAP32[$i>>2]|0; + $30 = $29 ^ 1; + $31 = $28 ? $30 : $29; + HEAP32[$j>>2] = $31; + $32 = HEAP32[$zDb>>2]|0; + $33 = ($32|0)!=(0|0); + if ($33) { + $34 = HEAP32[$j>>2]|0; + $35 = HEAP32[$db>>2]|0; + $36 = (($35) + 16|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + ($34<<4)|0); + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$zDb>>2]|0; + $41 = (_sqlite3_stricmp($39,$40)|0); + $42 = ($41|0)!=(0); + if (!($42)) { + label = 7; + } + } else { + label = 7; + } + if ((label|0) == 7) { + label = 0; + $43 = HEAP32[$j>>2]|0; + $44 = HEAP32[$db>>2]|0; + $45 = (($44) + 16|0); + $46 = HEAP32[$45>>2]|0; + $47 = (($46) + ($43<<4)|0); + $48 = (($47) + 12|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) + 40|0); + $51 = HEAP32[$zName>>2]|0; + $52 = HEAP32[$nName>>2]|0; + $53 = (_sqlite3HashFind($50,$51,$52)|0); + HEAP32[$pTrigger>>2] = $53; + $54 = HEAP32[$pTrigger>>2]|0; + $55 = ($54|0)!=(0|0); + if ($55) { + break; + } + } + $56 = HEAP32[$i>>2]|0; + $57 = (($56) + 1)|0; + HEAP32[$i>>2] = $57; + } + $58 = HEAP32[$pTrigger>>2]|0; + $59 = ($58|0)!=(0|0); + if ($59) { + $67 = HEAP32[$0>>2]|0; + $68 = HEAP32[$pTrigger>>2]|0; + _sqlite3DropTriggerPtr($67,$68); + $69 = HEAP32[$db>>2]|0; + $70 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($69,$70); + STACKTOP = sp;return; + } + $60 = HEAP32[$2>>2]|0; + $61 = ($60|0)!=(0); + $62 = HEAP32[$0>>2]|0; + if ($61) { + $64 = HEAP32[$zDb>>2]|0; + _sqlite3CodeVerifyNamedSchema($62,$64); + } else { + $63 = HEAP32[$1>>2]|0; + HEAP32[$vararg_buffer>>2] = $63; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = 0; + _sqlite3ErrorMsg($62,26272,$vararg_buffer); + } + $65 = HEAP32[$0>>2]|0; + $66 = (($65) + 17|0); + HEAP8[$66>>0] = 1; + $69 = HEAP32[$db>>2]|0; + $70 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($69,$70); + STACKTOP = sp;return; +} +function _sqlite3Attach($pParse,$p,$pDbname,$pKey) { + $pParse = $pParse|0; + $p = $p|0; + $pDbname = $pDbname|0; + $pKey = $pKey|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pDbname; + HEAP32[$3>>2] = $pKey; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$3>>2]|0; + _codeAttach($4,24,26032,$5,$6,$7,$8); + STACKTOP = sp;return; +} +function _sqlite3Detach($pParse,$pDbname) { + $pParse = $pParse|0; + $pDbname = $pDbname|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pDbname; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$1>>2]|0; + _codeAttach($2,25,25848,$3,0,0,$4); + STACKTOP = sp;return; +} +function _sqlite3Reindex($pParse,$pName1,$pName2) { + $pParse = $pParse|0; + $pName1 = $pName1|0; + $pName2 = $pName2|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $8 = 0, $9 = 0, $db = 0; + var $iDb = 0, $pColl = 0, $pIndex = 0, $pObjName = 0, $pTab = 0, $vararg_buffer = 0, $z = 0, $zColl = 0, $zDb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer = sp; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $pColl = sp + 32|0; + $z = sp + 28|0; + $zDb = sp + 48|0; + $pTab = sp + 16|0; + $pIndex = sp + 12|0; + $iDb = sp + 8|0; + $db = sp + 4|0; + $pObjName = sp + 20|0; + $zColl = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pName1; + HEAP32[$2>>2] = $pName2; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (_sqlite3ReadSchema($5)|0); + $7 = (0)!=($6|0); + if ($7) { + STACKTOP = sp;return; + } + $8 = HEAP32[$1>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + $10 = HEAP32[$0>>2]|0; + _reindexDatabases($10,0); + STACKTOP = sp;return; + } + $11 = HEAP32[$2>>2]|0; + $12 = ($11|0)==(0|0); + if ($12) { + label = 6; + } else { + $13 = HEAP32[$2>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)==(0|0); + if ($15) { + label = 6; + } + } + do { + if ((label|0) == 6) { + $16 = HEAP32[$0>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (_sqlite3NameFromToken($17,$18)|0); + HEAP32[$zColl>>2] = $19; + $20 = HEAP32[$zColl>>2]|0; + $21 = ($20|0)!=(0|0); + if (!($21)) { + STACKTOP = sp;return; + } + $22 = HEAP32[$db>>2]|0; + $23 = HEAP32[$db>>2]|0; + $24 = (($23) + 16|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + 12|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + 77|0); + $29 = HEAP8[$28>>0]|0; + $30 = HEAP32[$zColl>>2]|0; + $31 = (_sqlite3FindCollSeq($22,$29,$30,0)|0); + HEAP32[$pColl>>2] = $31; + $32 = HEAP32[$pColl>>2]|0; + $33 = ($32|0)!=(0|0); + if (!($33)) { + $38 = HEAP32[$db>>2]|0; + $39 = HEAP32[$zColl>>2]|0; + _sqlite3DbFree($38,$39); + break; + } + $34 = HEAP32[$0>>2]|0; + $35 = HEAP32[$zColl>>2]|0; + _reindexDatabases($34,$35); + $36 = HEAP32[$db>>2]|0; + $37 = HEAP32[$zColl>>2]|0; + _sqlite3DbFree($36,$37); + STACKTOP = sp;return; + } + } while(0); + $40 = HEAP32[$0>>2]|0; + $41 = HEAP32[$1>>2]|0; + $42 = HEAP32[$2>>2]|0; + $43 = (_sqlite3TwoPartName($40,$41,$42,$pObjName)|0); + HEAP32[$iDb>>2] = $43; + $44 = HEAP32[$iDb>>2]|0; + $45 = ($44|0)<(0); + if ($45) { + STACKTOP = sp;return; + } + $46 = HEAP32[$db>>2]|0; + $47 = HEAP32[$pObjName>>2]|0; + $48 = (_sqlite3NameFromToken($46,$47)|0); + HEAP32[$z>>2] = $48; + $49 = HEAP32[$z>>2]|0; + $50 = ($49|0)==(0|0); + if ($50) { + STACKTOP = sp;return; + } + $51 = HEAP32[$iDb>>2]|0; + $52 = HEAP32[$db>>2]|0; + $53 = (($52) + 16|0); + $54 = HEAP32[$53>>2]|0; + $55 = (($54) + ($51<<4)|0); + $56 = HEAP32[$55>>2]|0; + HEAP32[$zDb>>2] = $56; + $57 = HEAP32[$db>>2]|0; + $58 = HEAP32[$z>>2]|0; + $59 = HEAP32[$zDb>>2]|0; + $60 = (_sqlite3FindTable($57,$58,$59)|0); + HEAP32[$pTab>>2] = $60; + $61 = HEAP32[$pTab>>2]|0; + $62 = ($61|0)!=(0|0); + if ($62) { + $63 = HEAP32[$0>>2]|0; + $64 = HEAP32[$pTab>>2]|0; + _reindexTable($63,$64,0); + $65 = HEAP32[$db>>2]|0; + $66 = HEAP32[$z>>2]|0; + _sqlite3DbFree($65,$66); + STACKTOP = sp;return; + } + $67 = HEAP32[$db>>2]|0; + $68 = HEAP32[$z>>2]|0; + $69 = HEAP32[$zDb>>2]|0; + $70 = (_sqlite3FindIndex($67,$68,$69)|0); + HEAP32[$pIndex>>2] = $70; + $71 = HEAP32[$db>>2]|0; + $72 = HEAP32[$z>>2]|0; + _sqlite3DbFree($71,$72); + $73 = HEAP32[$pIndex>>2]|0; + $74 = ($73|0)!=(0|0); + $75 = HEAP32[$0>>2]|0; + if ($74) { + $76 = HEAP32[$iDb>>2]|0; + _sqlite3BeginWriteOperation($75,0,$76); + $77 = HEAP32[$0>>2]|0; + $78 = HEAP32[$pIndex>>2]|0; + _sqlite3RefillIndex($77,$78,-1); + STACKTOP = sp;return; + } else { + _sqlite3ErrorMsg($75,25576,$vararg_buffer); + STACKTOP = sp;return; + } +} +function _sqlite3Analyze($pParse,$pName1,$pName2) { + $pParse = $pParse|0; + $pName1 = $pName1|0; + $pName2 = $pName2|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $9 = 0, $db = 0, $i = 0, $iDb = 0, $pIdx = 0, $pTab = 0, $pTableName = 0, $z = 0, $zDb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $db = sp + 28|0; + $iDb = sp + 24|0; + $i = sp + 20|0; + $z = sp + 12|0; + $zDb = sp + 8|0; + $pTab = sp + 4|0; + $pIdx = sp; + $pTableName = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pName1; + HEAP32[$2>>2] = $pName2; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (_sqlite3ReadSchema($5)|0); + $7 = (0)!=($6|0); + if ($7) { + STACKTOP = sp;return; + } + $8 = HEAP32[$1>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + HEAP32[$i>>2] = 0; + while(1) { + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$db>>2]|0; + $12 = (($11) + 20|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($10|0)<($13|0); + if (!($14)) { + break; + } + $15 = HEAP32[$i>>2]|0; + $16 = ($15|0)==(1); + if (!($16)) { + $17 = HEAP32[$0>>2]|0; + $18 = HEAP32[$i>>2]|0; + _analyzeDatabase($17,$18); + } + $19 = HEAP32[$i>>2]|0; + $20 = (($19) + 1)|0; + HEAP32[$i>>2] = $20; + } + STACKTOP = sp;return; + } + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = ($23|0)==(0); + if (!($24)) { + $53 = HEAP32[$0>>2]|0; + $54 = HEAP32[$1>>2]|0; + $55 = HEAP32[$2>>2]|0; + $56 = (_sqlite3TwoPartName($53,$54,$55,$pTableName)|0); + HEAP32[$iDb>>2] = $56; + $57 = HEAP32[$iDb>>2]|0; + $58 = ($57|0)>=(0); + if (!($58)) { + STACKTOP = sp;return; + } + $59 = HEAP32[$iDb>>2]|0; + $60 = HEAP32[$db>>2]|0; + $61 = (($60) + 16|0); + $62 = HEAP32[$61>>2]|0; + $63 = (($62) + ($59<<4)|0); + $64 = HEAP32[$63>>2]|0; + HEAP32[$zDb>>2] = $64; + $65 = HEAP32[$db>>2]|0; + $66 = HEAP32[$pTableName>>2]|0; + $67 = (_sqlite3NameFromToken($65,$66)|0); + HEAP32[$z>>2] = $67; + $68 = HEAP32[$z>>2]|0; + $69 = ($68|0)!=(0|0); + if (!($69)) { + STACKTOP = sp;return; + } + $70 = HEAP32[$db>>2]|0; + $71 = HEAP32[$z>>2]|0; + $72 = HEAP32[$zDb>>2]|0; + $73 = (_sqlite3FindIndex($70,$71,$72)|0); + HEAP32[$pIdx>>2] = $73; + $74 = ($73|0)!=(0|0); + $75 = HEAP32[$0>>2]|0; + if ($74) { + $76 = HEAP32[$pIdx>>2]|0; + $77 = (($76) + 12|0); + $78 = HEAP32[$77>>2]|0; + $79 = HEAP32[$pIdx>>2]|0; + _analyzeTable($75,$78,$79); + } else { + $80 = HEAP32[$z>>2]|0; + $81 = HEAP32[$zDb>>2]|0; + $82 = (_sqlite3LocateTable($75,0,$80,$81)|0); + HEAP32[$pTab>>2] = $82; + $83 = ($82|0)!=(0|0); + if ($83) { + $84 = HEAP32[$0>>2]|0; + $85 = HEAP32[$pTab>>2]|0; + _analyzeTable($84,$85,0); + } + } + $86 = HEAP32[$db>>2]|0; + $87 = HEAP32[$z>>2]|0; + _sqlite3DbFree($86,$87); + STACKTOP = sp;return; + } + $25 = HEAP32[$db>>2]|0; + $26 = HEAP32[$1>>2]|0; + $27 = (_sqlite3FindDb($25,$26)|0); + HEAP32[$iDb>>2] = $27; + $28 = HEAP32[$iDb>>2]|0; + $29 = ($28|0)>=(0); + if ($29) { + $30 = HEAP32[$0>>2]|0; + $31 = HEAP32[$iDb>>2]|0; + _analyzeDatabase($30,$31); + STACKTOP = sp;return; + } + $32 = HEAP32[$db>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = (_sqlite3NameFromToken($32,$33)|0); + HEAP32[$z>>2] = $34; + $35 = HEAP32[$z>>2]|0; + $36 = ($35|0)!=(0|0); + if (!($36)) { + STACKTOP = sp;return; + } + $37 = HEAP32[$db>>2]|0; + $38 = HEAP32[$z>>2]|0; + $39 = (_sqlite3FindIndex($37,$38,0)|0); + HEAP32[$pIdx>>2] = $39; + $40 = ($39|0)!=(0|0); + $41 = HEAP32[$0>>2]|0; + if ($40) { + $42 = HEAP32[$pIdx>>2]|0; + $43 = (($42) + 12|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$pIdx>>2]|0; + _analyzeTable($41,$44,$45); + } else { + $46 = HEAP32[$z>>2]|0; + $47 = (_sqlite3LocateTable($41,0,$46,0)|0); + HEAP32[$pTab>>2] = $47; + $48 = ($47|0)!=(0|0); + if ($48) { + $49 = HEAP32[$0>>2]|0; + $50 = HEAP32[$pTab>>2]|0; + _analyzeTable($49,$50,0); + } + } + $51 = HEAP32[$db>>2]|0; + $52 = HEAP32[$z>>2]|0; + _sqlite3DbFree($51,$52); + STACKTOP = sp;return; +} +function _sqlite3AlterRenameTable($pParse,$pSrc,$pName) { + $pParse = $pParse|0; + $pSrc = $pSrc|0; + $pName = $pName|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $db = 0, $i = 0, $iDb = 0, $nTabName = 0, $p = 0, $pFrom = 0, $pTab = 0, $pVTab = 0, $savedDbFlags = 0, $v = 0, $vararg_buffer27 = 0, $vararg_ptr10 = 0, $vararg_ptr14 = 0, $vararg_ptr15 = 0, $vararg_ptr16 = 0, $vararg_ptr17 = 0, $vararg_ptr18 = 0, $vararg_ptr19 = 0; + var $vararg_ptr20 = 0, $vararg_ptr21 = 0, $vararg_ptr25 = 0, $vararg_ptr26 = 0, $vararg_ptr30 = 0, $vararg_ptr31 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $vararg_ptr9 = 0, $zDb = 0, $zName = 0, $zTabName = 0, $zWhere = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $vararg_buffer27 = sp; + $0 = sp + 96|0; + $1 = sp + 92|0; + $2 = sp + 88|0; + $iDb = sp + 84|0; + $zDb = sp + 80|0; + $pTab = sp + 76|0; + $zName = sp + 72|0; + $db = sp + 68|0; + $nTabName = sp + 100|0; + $zTabName = sp + 56|0; + $v = sp + 52|0; + $zWhere = sp + 48|0; + $pVTab = sp + 44|0; + $savedDbFlags = sp + 40|0; + $i = sp + 36|0; + $p = sp + 60|0; + $pFrom = sp + 64|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pSrc; + HEAP32[$2>>2] = $pName; + HEAP32[$zName>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + HEAP32[$zWhere>>2] = 0; + HEAP32[$pVTab>>2] = 0; + $5 = HEAP32[$db>>2]|0; + $6 = (($5) + 24|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$savedDbFlags>>2] = $7; + $8 = HEAP32[$db>>2]|0; + $9 = (($8) + 64|0); + $10 = HEAP8[$9>>0]|0; + $11 = ($10<<24>>24)!=(0); + do { + if (!($11)) { + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 8|0); + $15 = (_sqlite3LocateTableItem($12,0,$14)|0); + HEAP32[$pTab>>2] = $15; + $16 = HEAP32[$pTab>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$pTab>>2]|0; + $21 = (($20) + 68|0); + $22 = HEAP32[$21>>2]|0; + $23 = (_sqlite3SchemaToIndex($19,$22)|0); + HEAP32[$iDb>>2] = $23; + $24 = HEAP32[$iDb>>2]|0; + $25 = HEAP32[$db>>2]|0; + $26 = (($25) + 16|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + ($24<<4)|0); + $29 = HEAP32[$28>>2]|0; + HEAP32[$zDb>>2] = $29; + $30 = HEAP32[$db>>2]|0; + $31 = (($30) + 24|0); + $32 = HEAP32[$31>>2]|0; + $33 = $32 | 2097152; + HEAP32[$31>>2] = $33; + $34 = HEAP32[$db>>2]|0; + $35 = HEAP32[$2>>2]|0; + $36 = (_sqlite3NameFromToken($34,$35)|0); + HEAP32[$zName>>2] = $36; + $37 = HEAP32[$zName>>2]|0; + $38 = ($37|0)!=(0|0); + if ($38) { + $39 = HEAP32[$db>>2]|0; + $40 = HEAP32[$zName>>2]|0; + $41 = HEAP32[$zDb>>2]|0; + $42 = (_sqlite3FindTable($39,$40,$41)|0); + $43 = ($42|0)!=(0|0); + if (!($43)) { + $44 = HEAP32[$db>>2]|0; + $45 = HEAP32[$zName>>2]|0; + $46 = HEAP32[$zDb>>2]|0; + $47 = (_sqlite3FindIndex($44,$45,$46)|0); + $48 = ($47|0)!=(0|0); + if (!($48)) { + $51 = HEAP32[$0>>2]|0; + $52 = HEAP32[$pTab>>2]|0; + $53 = HEAP32[$52>>2]|0; + $54 = (_isSystemTable($51,$53)|0); + $55 = (0)!=($54|0); + if ($55) { + break; + } + $56 = HEAP32[$0>>2]|0; + $57 = HEAP32[$zName>>2]|0; + $58 = (_sqlite3CheckObjectName($56,$57)|0); + $59 = (0)!=($58|0); + if ($59) { + break; + } + $60 = HEAP32[$pTab>>2]|0; + $61 = (($60) + 12|0); + $62 = HEAP32[$61>>2]|0; + $63 = ($62|0)!=(0|0); + $64 = HEAP32[$0>>2]|0; + if ($63) { + $65 = HEAP32[$pTab>>2]|0; + $66 = HEAP32[$65>>2]|0; + HEAP32[$vararg_buffer27>>2] = $66; + _sqlite3ErrorMsg($64,22192,$vararg_buffer27); + break; + } + $67 = HEAP32[$zDb>>2]|0; + $68 = HEAP32[$pTab>>2]|0; + $69 = HEAP32[$68>>2]|0; + $70 = (_sqlite3AuthCheck($64,26,$67,$69,0)|0); + $71 = ($70|0)!=(0); + if ($71) { + break; + } + $72 = HEAP32[$0>>2]|0; + $73 = HEAP32[$pTab>>2]|0; + $74 = (_sqlite3ViewGetColumnNames($72,$73)|0); + $75 = ($74|0)!=(0); + if ($75) { + break; + } + $76 = HEAP32[$pTab>>2]|0; + $77 = (($76) + 44|0); + $78 = HEAP8[$77>>0]|0; + $79 = $78&255; + $80 = $79 & 16; + $81 = ($80|0)!=(0); + if ($81) { + $82 = HEAP32[$db>>2]|0; + $83 = HEAP32[$pTab>>2]|0; + $84 = (_sqlite3GetVTable($82,$83)|0); + HEAP32[$pVTab>>2] = $84; + $85 = HEAP32[$pVTab>>2]|0; + $86 = (($85) + 8|0); + $87 = HEAP32[$86>>2]|0; + $88 = HEAP32[$87>>2]|0; + $89 = (($88) + 76|0); + $90 = HEAP32[$89>>2]|0; + $91 = ($90|0)==(0|0); + if ($91) { + HEAP32[$pVTab>>2] = 0; + } + } + $92 = HEAP32[$0>>2]|0; + $93 = (_sqlite3GetVdbe($92)|0); + HEAP32[$v>>2] = $93; + $94 = HEAP32[$v>>2]|0; + $95 = ($94|0)==(0|0); + if ($95) { + break; + } + $96 = HEAP32[$0>>2]|0; + $97 = HEAP32[$pVTab>>2]|0; + $98 = ($97|0)!=(0|0); + $99 = $98&1; + $100 = HEAP32[$iDb>>2]|0; + _sqlite3BeginWriteOperation($96,$99,$100); + $101 = HEAP32[$0>>2]|0; + $102 = HEAP32[$iDb>>2]|0; + _sqlite3ChangeCookie($101,$102); + $103 = HEAP32[$pVTab>>2]|0; + $104 = ($103|0)!=(0|0); + if ($104) { + $105 = HEAP32[$0>>2]|0; + $106 = (($105) + 72|0); + $107 = HEAP32[$106>>2]|0; + $108 = (($107) + 1)|0; + HEAP32[$106>>2] = $108; + HEAP32[$i>>2] = $108; + $109 = HEAP32[$v>>2]|0; + $110 = HEAP32[$i>>2]|0; + $111 = HEAP32[$zName>>2]|0; + (_sqlite3VdbeAddOp4($109,97,0,$110,0,$111,0)|0); + $112 = HEAP32[$v>>2]|0; + $113 = HEAP32[$i>>2]|0; + $114 = HEAP32[$pVTab>>2]|0; + (_sqlite3VdbeAddOp4($112,152,$113,0,0,$114,-10)|0); + $115 = HEAP32[$0>>2]|0; + _sqlite3MayAbort($115); + } + $116 = HEAP32[$pTab>>2]|0; + $117 = HEAP32[$116>>2]|0; + HEAP32[$zTabName>>2] = $117; + $118 = HEAP32[$zTabName>>2]|0; + $119 = (_sqlite3Utf8CharLen($118,-1)|0); + HEAP32[$nTabName>>2] = $119; + $120 = HEAP32[$db>>2]|0; + $121 = (($120) + 24|0); + $122 = HEAP32[$121>>2]|0; + $123 = $122 & 524288; + $124 = ($123|0)!=(0); + if ($124) { + $125 = HEAP32[$0>>2]|0; + $126 = HEAP32[$pTab>>2]|0; + $127 = (_whereForeignKeys($125,$126)|0); + HEAP32[$zWhere>>2] = $127; + $128 = ($127|0)!=(0|0); + if ($128) { + $129 = HEAP32[$0>>2]|0; + $130 = HEAP32[$zDb>>2]|0; + $131 = HEAP32[$iDb>>2]|0; + $132 = ($131|0)==(1); + $133 = $132 ? 21432 : 21456; + $134 = HEAP32[$zTabName>>2]|0; + $135 = HEAP32[$zName>>2]|0; + $136 = HEAP32[$zWhere>>2]|0; + HEAP32[$vararg_buffer27>>2] = $130; + $vararg_ptr7 = (($vararg_buffer27) + 4|0); + HEAP32[$vararg_ptr7>>2] = $133; + $vararg_ptr8 = (($vararg_buffer27) + 8|0); + HEAP32[$vararg_ptr8>>2] = $134; + $vararg_ptr9 = (($vararg_buffer27) + 12|0); + HEAP32[$vararg_ptr9>>2] = $135; + $vararg_ptr10 = (($vararg_buffer27) + 16|0); + HEAP32[$vararg_ptr10>>2] = $136; + _sqlite3NestedParse($129,22224,$vararg_buffer27); + $137 = HEAP32[$db>>2]|0; + $138 = HEAP32[$zWhere>>2]|0; + _sqlite3DbFree($137,$138); + } + } + $139 = HEAP32[$0>>2]|0; + $140 = HEAP32[$zDb>>2]|0; + $141 = HEAP32[$iDb>>2]|0; + $142 = ($141|0)==(1); + $143 = $142 ? 21432 : 21456; + $144 = HEAP32[$zName>>2]|0; + $145 = HEAP32[$zName>>2]|0; + $146 = HEAP32[$zName>>2]|0; + $147 = HEAP32[$zName>>2]|0; + $148 = HEAP32[$zName>>2]|0; + $149 = HEAP32[$nTabName>>2]|0; + $150 = HEAP32[$zTabName>>2]|0; + HEAP32[$vararg_buffer27>>2] = $140; + $vararg_ptr14 = (($vararg_buffer27) + 4|0); + HEAP32[$vararg_ptr14>>2] = $143; + $vararg_ptr15 = (($vararg_buffer27) + 8|0); + HEAP32[$vararg_ptr15>>2] = $144; + $vararg_ptr16 = (($vararg_buffer27) + 12|0); + HEAP32[$vararg_ptr16>>2] = $145; + $vararg_ptr17 = (($vararg_buffer27) + 16|0); + HEAP32[$vararg_ptr17>>2] = $146; + $vararg_ptr18 = (($vararg_buffer27) + 20|0); + HEAP32[$vararg_ptr18>>2] = $147; + $vararg_ptr19 = (($vararg_buffer27) + 24|0); + HEAP32[$vararg_ptr19>>2] = $148; + $vararg_ptr20 = (($vararg_buffer27) + 28|0); + HEAP32[$vararg_ptr20>>2] = $149; + $vararg_ptr21 = (($vararg_buffer27) + 32|0); + HEAP32[$vararg_ptr21>>2] = $150; + _sqlite3NestedParse($139,22296,$vararg_buffer27); + $151 = HEAP32[$db>>2]|0; + $152 = HEAP32[$zDb>>2]|0; + $153 = (_sqlite3FindTable($151,22680,$152)|0); + $154 = ($153|0)!=(0|0); + if ($154) { + $155 = HEAP32[$0>>2]|0; + $156 = HEAP32[$zDb>>2]|0; + $157 = HEAP32[$zName>>2]|0; + $158 = HEAP32[$pTab>>2]|0; + $159 = HEAP32[$158>>2]|0; + HEAP32[$vararg_buffer27>>2] = $156; + $vararg_ptr25 = (($vararg_buffer27) + 4|0); + HEAP32[$vararg_ptr25>>2] = $157; + $vararg_ptr26 = (($vararg_buffer27) + 8|0); + HEAP32[$vararg_ptr26>>2] = $159; + _sqlite3NestedParse($155,22696,$vararg_buffer27); + } + $160 = HEAP32[$0>>2]|0; + $161 = HEAP32[$pTab>>2]|0; + $162 = (_whereTempTriggers($160,$161)|0); + HEAP32[$zWhere>>2] = $162; + $163 = ($162|0)!=(0|0); + if ($163) { + $164 = HEAP32[$0>>2]|0; + $165 = HEAP32[$zName>>2]|0; + $166 = HEAP32[$zName>>2]|0; + $167 = HEAP32[$zWhere>>2]|0; + HEAP32[$vararg_buffer27>>2] = $165; + $vararg_ptr30 = (($vararg_buffer27) + 4|0); + HEAP32[$vararg_ptr30>>2] = $166; + $vararg_ptr31 = (($vararg_buffer27) + 8|0); + HEAP32[$vararg_ptr31>>2] = $167; + _sqlite3NestedParse($164,22760,$vararg_buffer27); + $168 = HEAP32[$db>>2]|0; + $169 = HEAP32[$zWhere>>2]|0; + _sqlite3DbFree($168,$169); + } + $170 = HEAP32[$db>>2]|0; + $171 = (($170) + 24|0); + $172 = HEAP32[$171>>2]|0; + $173 = $172 & 524288; + $174 = ($173|0)!=(0); + L33: do { + if ($174) { + $175 = HEAP32[$pTab>>2]|0; + $176 = (_sqlite3FkReferences($175)|0); + HEAP32[$p>>2] = $176; + while(1) { + $177 = HEAP32[$p>>2]|0; + $178 = ($177|0)!=(0|0); + if (!($178)) { + break L33; + } + $179 = HEAP32[$p>>2]|0; + $180 = HEAP32[$179>>2]|0; + HEAP32[$pFrom>>2] = $180; + $181 = HEAP32[$pFrom>>2]|0; + $182 = HEAP32[$pTab>>2]|0; + $183 = ($181|0)!=($182|0); + if ($183) { + $184 = HEAP32[$0>>2]|0; + $185 = HEAP32[$p>>2]|0; + $186 = HEAP32[$185>>2]|0; + $187 = HEAP32[$pFrom>>2]|0; + $188 = HEAP32[$187>>2]|0; + _reloadTableSchema($184,$186,$188); + } + $189 = HEAP32[$p>>2]|0; + $190 = (($189) + 12|0); + $191 = HEAP32[$190>>2]|0; + HEAP32[$p>>2] = $191; + } + } + } while(0); + $192 = HEAP32[$0>>2]|0; + $193 = HEAP32[$pTab>>2]|0; + $194 = HEAP32[$zName>>2]|0; + _reloadTableSchema($192,$193,$194); + break; + } + } + $49 = HEAP32[$0>>2]|0; + $50 = HEAP32[$zName>>2]|0; + HEAP32[$vararg_buffer27>>2] = $50; + _sqlite3ErrorMsg($49,22128,$vararg_buffer27); + } + } + } + } while(0); + $195 = HEAP32[$db>>2]|0; + $196 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($195,$196); + $197 = HEAP32[$db>>2]|0; + $198 = HEAP32[$zName>>2]|0; + _sqlite3DbFree($197,$198); + $199 = HEAP32[$savedDbFlags>>2]|0; + $200 = HEAP32[$db>>2]|0; + $201 = (($200) + 24|0); + HEAP32[$201>>2] = $199; + STACKTOP = sp;return; +} +function _sqlite3AlterFinishAddColumn($pParse,$pColDef) { + $pParse = $pParse|0; + $pColDef = $pColDef|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $17 = 0, $18 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $iDb = 0, $pCol = 0, $pDflt = 0, $pNew = 0, $pTab = 0, $pVal = 0, $savedDbFlags = 0, $vararg_buffer10 = 0, $vararg_ptr12 = 0, $vararg_ptr13 = 0; + var $vararg_ptr14 = 0, $vararg_ptr15 = 0, $vararg_ptr16 = 0, $zCol = 0, $zDb = 0, $zEnd = 0, $zTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer10 = sp; + $0 = sp + 72|0; + $1 = sp + 68|0; + $pNew = sp + 64|0; + $pTab = sp + 60|0; + $iDb = sp + 56|0; + $zDb = sp + 52|0; + $zTab = sp + 76|0; + $zCol = sp + 40|0; + $pCol = sp + 36|0; + $pDflt = sp + 32|0; + $db = sp + 28|0; + $pVal = sp + 24|0; + $zEnd = sp + 44|0; + $savedDbFlags = sp + 48|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pColDef; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 64|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0); + if ($7) { + STACKTOP = sp;return; + } + $8 = HEAP32[$db>>2]|0; + $9 = (($8) + 64|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = ($11|0)!=(0); + if ($12) { + STACKTOP = sp;return; + } + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 484|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$pNew>>2] = $15; + $16 = HEAP32[$db>>2]|0; + $17 = HEAP32[$pNew>>2]|0; + $18 = (($17) + 68|0); + $19 = HEAP32[$18>>2]|0; + $20 = (_sqlite3SchemaToIndex($16,$19)|0); + HEAP32[$iDb>>2] = $20; + $21 = HEAP32[$iDb>>2]|0; + $22 = HEAP32[$db>>2]|0; + $23 = (($22) + 16|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + ($21<<4)|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$zDb>>2] = $26; + $27 = HEAP32[$pNew>>2]|0; + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + 16|0); + HEAP32[$zTab>>2] = $29; + $30 = HEAP32[$pNew>>2]|0; + $31 = (($30) + 38|0); + $32 = HEAP16[$31>>1]|0; + $33 = $32 << 16 >> 16; + $34 = (($33) - 1)|0; + $35 = HEAP32[$pNew>>2]|0; + $36 = (($35) + 4|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + (($34*24)|0)|0); + HEAP32[$pCol>>2] = $38; + $39 = HEAP32[$pCol>>2]|0; + $40 = (($39) + 4|0); + $41 = HEAP32[$40>>2]|0; + HEAP32[$pDflt>>2] = $41; + $42 = HEAP32[$db>>2]|0; + $43 = HEAP32[$zTab>>2]|0; + $44 = HEAP32[$zDb>>2]|0; + $45 = (_sqlite3FindTable($42,$43,$44)|0); + HEAP32[$pTab>>2] = $45; + $46 = HEAP32[$0>>2]|0; + $47 = HEAP32[$zDb>>2]|0; + $48 = HEAP32[$pTab>>2]|0; + $49 = HEAP32[$48>>2]|0; + $50 = (_sqlite3AuthCheck($46,26,$47,$49,0)|0); + $51 = ($50|0)!=(0); + if ($51) { + STACKTOP = sp;return; + } + $52 = HEAP32[$pDflt>>2]|0; + $53 = ($52|0)!=(0|0); + if ($53) { + $54 = HEAP32[$pDflt>>2]|0; + $55 = HEAP8[$54>>0]|0; + $56 = $55&255; + $57 = ($56|0)==(101); + if ($57) { + HEAP32[$pDflt>>2] = 0; + } + } + $58 = HEAP32[$pCol>>2]|0; + $59 = (($58) + 23|0); + $60 = HEAP8[$59>>0]|0; + $61 = $60&255; + $62 = $61 & 1; + $63 = ($62|0)!=(0); + if ($63) { + $64 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($64,21712,$vararg_buffer10); + STACKTOP = sp;return; + } + $65 = HEAP32[$pNew>>2]|0; + $66 = (($65) + 8|0); + $67 = HEAP32[$66>>2]|0; + $68 = ($67|0)!=(0|0); + if ($68) { + $69 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($69,21744,$vararg_buffer10); + STACKTOP = sp;return; + } + $70 = HEAP32[$db>>2]|0; + $71 = (($70) + 24|0); + $72 = HEAP32[$71>>2]|0; + $73 = $72 & 524288; + $74 = ($73|0)!=(0); + if ($74) { + $75 = HEAP32[$pNew>>2]|0; + $76 = (($75) + 16|0); + $77 = HEAP32[$76>>2]|0; + $78 = ($77|0)!=(0|0); + if ($78) { + $79 = HEAP32[$pDflt>>2]|0; + $80 = ($79|0)!=(0|0); + if ($80) { + $81 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($81,21776,$vararg_buffer10); + STACKTOP = sp;return; + } + } + } + $82 = HEAP32[$pCol>>2]|0; + $83 = (($82) + 20|0); + $84 = HEAP8[$83>>0]|0; + $85 = $84&255; + $86 = ($85|0)!=(0); + if ($86) { + $87 = HEAP32[$pDflt>>2]|0; + $88 = ($87|0)!=(0|0); + if (!($88)) { + $89 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($89,21840,$vararg_buffer10); + STACKTOP = sp;return; + } + } + $90 = HEAP32[$pDflt>>2]|0; + $91 = ($90|0)!=(0|0); + do { + if ($91) { + HEAP32[$pVal>>2] = 0; + $92 = HEAP32[$db>>2]|0; + $93 = HEAP32[$pDflt>>2]|0; + $94 = (_sqlite3ValueFromExpr($92,$93,1,98,$pVal)|0); + $95 = ($94|0)!=(0); + if ($95) { + $96 = HEAP32[$db>>2]|0; + $97 = (($96) + 64|0); + HEAP8[$97>>0] = 1; + STACKTOP = sp;return; + } + $98 = HEAP32[$pVal>>2]|0; + $99 = ($98|0)!=(0|0); + if ($99) { + $101 = HEAP32[$pVal>>2]|0; + _sqlite3ValueFree($101); + break; + } + $100 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($100,21896,$vararg_buffer10); + STACKTOP = sp;return; + } + } while(0); + $102 = HEAP32[$db>>2]|0; + $103 = HEAP32[$1>>2]|0; + $104 = HEAP32[$103>>2]|0; + $105 = HEAP32[$1>>2]|0; + $106 = (($105) + 4|0); + $107 = HEAP32[$106>>2]|0; + $108 = (_sqlite3DbStrNDup($102,$104,$107)|0); + HEAP32[$zCol>>2] = $108; + $109 = HEAP32[$zCol>>2]|0; + $110 = ($109|0)!=(0|0); + if ($110) { + $111 = HEAP32[$1>>2]|0; + $112 = (($111) + 4|0); + $113 = HEAP32[$112>>2]|0; + $114 = (($113) - 1)|0; + $115 = HEAP32[$zCol>>2]|0; + $116 = (($115) + ($114)|0); + HEAP32[$zEnd>>2] = $116; + $117 = HEAP32[$db>>2]|0; + $118 = (($117) + 24|0); + $119 = HEAP32[$118>>2]|0; + HEAP32[$savedDbFlags>>2] = $119; + while(1) { + $120 = HEAP32[$zEnd>>2]|0; + $121 = HEAP32[$zCol>>2]|0; + $122 = ($120>>>0)>($121>>>0); + if (!($122)) { + break; + } + $123 = HEAP32[$zEnd>>2]|0; + $124 = HEAP8[$123>>0]|0; + $125 = $124 << 24 >> 24; + $126 = ($125|0)==(59); + if (!($126)) { + $127 = HEAP32[$zEnd>>2]|0; + $128 = HEAP8[$127>>0]|0; + $129 = $128&255; + $130 = (136 + ($129)|0); + $131 = HEAP8[$130>>0]|0; + $132 = $131&255; + $133 = $132 & 1; + $134 = ($133|0)!=(0); + if (!($134)) { + break; + } + } + $135 = HEAP32[$zEnd>>2]|0; + $136 = (($135) + -1|0); + HEAP32[$zEnd>>2] = $136; + HEAP8[$135>>0] = 0; + } + $137 = HEAP32[$db>>2]|0; + $138 = (($137) + 24|0); + $139 = HEAP32[$138>>2]|0; + $140 = $139 | 2097152; + HEAP32[$138>>2] = $140; + $141 = HEAP32[$0>>2]|0; + $142 = HEAP32[$zDb>>2]|0; + $143 = HEAP32[$iDb>>2]|0; + $144 = ($143|0)==(1); + $145 = $144 ? 21432 : 21456; + $146 = HEAP32[$pNew>>2]|0; + $147 = (($146) + 48|0); + $148 = HEAP32[$147>>2]|0; + $149 = HEAP32[$zCol>>2]|0; + $150 = HEAP32[$pNew>>2]|0; + $151 = (($150) + 48|0); + $152 = HEAP32[$151>>2]|0; + $153 = (($152) + 1)|0; + $154 = HEAP32[$zTab>>2]|0; + HEAP32[$vararg_buffer10>>2] = $142; + $vararg_ptr12 = (($vararg_buffer10) + 4|0); + HEAP32[$vararg_ptr12>>2] = $145; + $vararg_ptr13 = (($vararg_buffer10) + 8|0); + HEAP32[$vararg_ptr13>>2] = $148; + $vararg_ptr14 = (($vararg_buffer10) + 12|0); + HEAP32[$vararg_ptr14>>2] = $149; + $vararg_ptr15 = (($vararg_buffer10) + 16|0); + HEAP32[$vararg_ptr15>>2] = $153; + $vararg_ptr16 = (($vararg_buffer10) + 20|0); + HEAP32[$vararg_ptr16>>2] = $154; + _sqlite3NestedParse($141,21944,$vararg_buffer10); + $155 = HEAP32[$db>>2]|0; + $156 = HEAP32[$zCol>>2]|0; + _sqlite3DbFree($155,$156); + $157 = HEAP32[$savedDbFlags>>2]|0; + $158 = HEAP32[$db>>2]|0; + $159 = (($158) + 24|0); + HEAP32[$159>>2] = $157; + } + $160 = HEAP32[$0>>2]|0; + $161 = HEAP32[$iDb>>2]|0; + $162 = HEAP32[$pDflt>>2]|0; + $163 = ($162|0)!=(0|0); + $164 = $163 ? 3 : 2; + _sqlite3MinimumFileFormat($160,$161,$164); + $165 = HEAP32[$0>>2]|0; + $166 = HEAP32[$pTab>>2]|0; + $167 = HEAP32[$pTab>>2]|0; + $168 = HEAP32[$167>>2]|0; + _reloadTableSchema($165,$166,$168); + STACKTOP = sp;return; +} +function _sqlite3AlterBeginAddColumn($pParse,$pSrc) { + $pParse = $pParse|0; + $pSrc = $pSrc|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $db = 0, $i = 0, $iDb = 0, $nAlloc = 0, $pCol = 0, $pNew = 0, $pTab = 0, $v = 0, $vararg_buffer3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer3 = sp; + $0 = sp + 36|0; + $1 = sp + 32|0; + $pNew = sp + 28|0; + $pTab = sp + 24|0; + $v = sp + 40|0; + $iDb = sp + 12|0; + $i = sp + 8|0; + $nAlloc = sp + 4|0; + $db = sp + 16|0; + $pCol = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pSrc; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$db>>2]|0; + $5 = (($4) + 64|0); + $6 = HEAP8[$5>>0]|0; + $7 = ($6<<24>>24)!=(0); + if ($7) { + $138 = HEAP32[$db>>2]|0; + $139 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($138,$139); + STACKTOP = sp;return; + } + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 8|0); + $11 = (_sqlite3LocateTableItem($8,0,$10)|0); + HEAP32[$pTab>>2] = $11; + $12 = HEAP32[$pTab>>2]|0; + $13 = ($12|0)!=(0|0); + if (!($13)) { + $138 = HEAP32[$db>>2]|0; + $139 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($138,$139); + STACKTOP = sp;return; + } + $14 = HEAP32[$pTab>>2]|0; + $15 = (($14) + 44|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = $17 & 16; + $19 = ($18|0)!=(0); + if ($19) { + $20 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($20,21504,$vararg_buffer3); + $138 = HEAP32[$db>>2]|0; + $139 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($138,$139); + STACKTOP = sp;return; + } + $21 = HEAP32[$pTab>>2]|0; + $22 = (($21) + 12|0); + $23 = HEAP32[$22>>2]|0; + $24 = ($23|0)!=(0|0); + $25 = HEAP32[$0>>2]|0; + if ($24) { + _sqlite3ErrorMsg($25,21544,$vararg_buffer3); + $138 = HEAP32[$db>>2]|0; + $139 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($138,$139); + STACKTOP = sp;return; + } + $26 = HEAP32[$pTab>>2]|0; + $27 = HEAP32[$26>>2]|0; + $28 = (_isSystemTable($25,$27)|0); + $29 = (0)!=($28|0); + if ($29) { + $138 = HEAP32[$db>>2]|0; + $139 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($138,$139); + STACKTOP = sp;return; + } + $30 = HEAP32[$db>>2]|0; + $31 = HEAP32[$pTab>>2]|0; + $32 = (($31) + 68|0); + $33 = HEAP32[$32>>2]|0; + $34 = (_sqlite3SchemaToIndex($30,$33)|0); + HEAP32[$iDb>>2] = $34; + $35 = HEAP32[$db>>2]|0; + $36 = (_sqlite3DbMallocZero($35,76)|0); + HEAP32[$pNew>>2] = $36; + $37 = HEAP32[$pNew>>2]|0; + $38 = ($37|0)!=(0|0); + if (!($38)) { + $138 = HEAP32[$db>>2]|0; + $139 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($138,$139); + STACKTOP = sp;return; + } + $39 = HEAP32[$pNew>>2]|0; + $40 = HEAP32[$0>>2]|0; + $41 = (($40) + 484|0); + HEAP32[$41>>2] = $39; + $42 = HEAP32[$pNew>>2]|0; + $43 = (($42) + 40|0); + HEAP16[$43>>1] = 1; + $44 = HEAP32[$pTab>>2]|0; + $45 = (($44) + 38|0); + $46 = HEAP16[$45>>1]|0; + $47 = HEAP32[$pNew>>2]|0; + $48 = (($47) + 38|0); + HEAP16[$48>>1] = $46; + $49 = HEAP32[$pNew>>2]|0; + $50 = (($49) + 38|0); + $51 = HEAP16[$50>>1]|0; + $52 = $51 << 16 >> 16; + $53 = (($52) - 1)|0; + $54 = (($53|0) / 8)&-1; + $55 = $54<<3; + $56 = (($55) + 8)|0; + HEAP32[$nAlloc>>2] = $56; + $57 = HEAP32[$db>>2]|0; + $58 = HEAP32[$nAlloc>>2]|0; + $59 = ($58*24)|0; + $60 = (_sqlite3DbMallocZero($57,$59)|0); + $61 = HEAP32[$pNew>>2]|0; + $62 = (($61) + 4|0); + HEAP32[$62>>2] = $60; + $63 = HEAP32[$db>>2]|0; + $64 = HEAP32[$pTab>>2]|0; + $65 = HEAP32[$64>>2]|0; + HEAP32[$vararg_buffer3>>2] = $65; + $66 = (_sqlite3MPrintf($63,21576,$vararg_buffer3)|0); + $67 = HEAP32[$pNew>>2]|0; + HEAP32[$67>>2] = $66; + $68 = HEAP32[$pNew>>2]|0; + $69 = (($68) + 4|0); + $70 = HEAP32[$69>>2]|0; + $71 = ($70|0)!=(0|0); + if ($71) { + $72 = HEAP32[$pNew>>2]|0; + $73 = HEAP32[$72>>2]|0; + $74 = ($73|0)!=(0|0); + if ($74) { + $77 = HEAP32[$pNew>>2]|0; + $78 = (($77) + 4|0); + $79 = HEAP32[$78>>2]|0; + $80 = HEAP32[$pTab>>2]|0; + $81 = (($80) + 4|0); + $82 = HEAP32[$81>>2]|0; + $83 = HEAP32[$pNew>>2]|0; + $84 = (($83) + 38|0); + $85 = HEAP16[$84>>1]|0; + $86 = $85 << 16 >> 16; + $87 = ($86*24)|0; + _memcpy(($79|0),($82|0),($87|0))|0; + HEAP32[$i>>2] = 0; + while(1) { + $88 = HEAP32[$i>>2]|0; + $89 = HEAP32[$pNew>>2]|0; + $90 = (($89) + 38|0); + $91 = HEAP16[$90>>1]|0; + $92 = $91 << 16 >> 16; + $93 = ($88|0)<($92|0); + if (!($93)) { + break; + } + $94 = HEAP32[$i>>2]|0; + $95 = HEAP32[$pNew>>2]|0; + $96 = (($95) + 4|0); + $97 = HEAP32[$96>>2]|0; + $98 = (($97) + (($94*24)|0)|0); + HEAP32[$pCol>>2] = $98; + $99 = HEAP32[$db>>2]|0; + $100 = HEAP32[$pCol>>2]|0; + $101 = HEAP32[$100>>2]|0; + $102 = (_sqlite3DbStrDup($99,$101)|0); + $103 = HEAP32[$pCol>>2]|0; + HEAP32[$103>>2] = $102; + $104 = HEAP32[$pCol>>2]|0; + $105 = (($104) + 16|0); + HEAP32[$105>>2] = 0; + $106 = HEAP32[$pCol>>2]|0; + $107 = (($106) + 12|0); + HEAP32[$107>>2] = 0; + $108 = HEAP32[$pCol>>2]|0; + $109 = (($108) + 4|0); + HEAP32[$109>>2] = 0; + $110 = HEAP32[$pCol>>2]|0; + $111 = (($110) + 8|0); + HEAP32[$111>>2] = 0; + $112 = HEAP32[$i>>2]|0; + $113 = (($112) + 1)|0; + HEAP32[$i>>2] = $113; + } + $114 = HEAP32[$iDb>>2]|0; + $115 = HEAP32[$db>>2]|0; + $116 = (($115) + 16|0); + $117 = HEAP32[$116>>2]|0; + $118 = (($117) + ($114<<4)|0); + $119 = (($118) + 12|0); + $120 = HEAP32[$119>>2]|0; + $121 = HEAP32[$pNew>>2]|0; + $122 = (($121) + 68|0); + HEAP32[$122>>2] = $120; + $123 = HEAP32[$pTab>>2]|0; + $124 = (($123) + 48|0); + $125 = HEAP32[$124>>2]|0; + $126 = HEAP32[$pNew>>2]|0; + $127 = (($126) + 48|0); + HEAP32[$127>>2] = $125; + $128 = HEAP32[$pNew>>2]|0; + $129 = (($128) + 40|0); + HEAP16[$129>>1] = 1; + $130 = HEAP32[$0>>2]|0; + $131 = HEAP32[$iDb>>2]|0; + _sqlite3BeginWriteOperation($130,0,$131); + $132 = HEAP32[$0>>2]|0; + $133 = (_sqlite3GetVdbe($132)|0); + HEAP32[$v>>2] = $133; + $134 = HEAP32[$v>>2]|0; + $135 = ($134|0)!=(0|0); + if (!($135)) { + $138 = HEAP32[$db>>2]|0; + $139 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($138,$139); + STACKTOP = sp;return; + } + $136 = HEAP32[$0>>2]|0; + $137 = HEAP32[$iDb>>2]|0; + _sqlite3ChangeCookie($136,$137); + $138 = HEAP32[$db>>2]|0; + $139 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($138,$139); + STACKTOP = sp;return; + } + } + $75 = HEAP32[$db>>2]|0; + $76 = (($75) + 64|0); + HEAP8[$76>>0] = 1; + $138 = HEAP32[$db>>2]|0; + $139 = HEAP32[$1>>2]|0; + _sqlite3SrcListDelete($138,$139); + STACKTOP = sp;return; +} +function _sqlite3VtabFinishParse($pParse,$pEnd) { + $pParse = $pParse|0; + $pEnd = $pEnd|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $iDb = 0, $nName = 0, $pOld = 0, $pSchema = 0, $pTab = 0, $v = 0, $vararg_buffer9 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $zName = 0; + var $zStmt = 0, $zWhere = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer9 = sp; + $0 = sp + 64|0; + $1 = sp + 60|0; + $pTab = sp + 56|0; + $db = sp + 52|0; + $zStmt = sp + 48|0; + $zWhere = sp + 68|0; + $iDb = sp + 36|0; + $v = sp + 32|0; + $pOld = sp + 28|0; + $pSchema = sp + 24|0; + $zName = sp + 40|0; + $nName = sp + 44|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pEnd; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 484|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pTab>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$pTab>>2]|0; + $8 = ($7|0)==(0|0); + if ($8) { + STACKTOP = sp;return; + } + $9 = HEAP32[$0>>2]|0; + _addArgumentToVtab($9); + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 512|0); + HEAP32[$11>>2] = 0; + $12 = HEAP32[$pTab>>2]|0; + $13 = (($12) + 52|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)<(1); + if ($15) { + STACKTOP = sp;return; + } + $16 = HEAP32[$db>>2]|0; + $17 = (($16) + 132|0); + $18 = (($17) + 5|0); + $19 = HEAP8[$18>>0]|0; + $20 = ($19<<24>>24)!=(0); + if (!($20)) { + $21 = HEAP32[$1>>2]|0; + $22 = ($21|0)!=(0|0); + if ($22) { + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 496|0); + $27 = HEAP32[$26>>2]|0; + $28 = $24; + $29 = $27; + $30 = (($28) - ($29))|0; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 4|0); + $33 = HEAP32[$32>>2]|0; + $34 = (($30) + ($33))|0; + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 496|0); + $37 = (($36) + 4|0); + HEAP32[$37>>2] = $34; + } + $38 = HEAP32[$db>>2]|0; + $39 = HEAP32[$0>>2]|0; + $40 = (($39) + 496|0); + HEAP32[$vararg_buffer9>>2] = $40; + $41 = (_sqlite3MPrintf($38,21320,$vararg_buffer9)|0); + HEAP32[$zStmt>>2] = $41; + $42 = HEAP32[$db>>2]|0; + $43 = HEAP32[$pTab>>2]|0; + $44 = (($43) + 68|0); + $45 = HEAP32[$44>>2]|0; + $46 = (_sqlite3SchemaToIndex($42,$45)|0); + HEAP32[$iDb>>2] = $46; + $47 = HEAP32[$0>>2]|0; + $48 = HEAP32[$iDb>>2]|0; + $49 = HEAP32[$db>>2]|0; + $50 = (($49) + 16|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + ($48<<4)|0); + $53 = HEAP32[$52>>2]|0; + $54 = HEAP32[$iDb>>2]|0; + $55 = ($54|0)==(1); + $56 = $55 ? 21432 : 21456; + $57 = HEAP32[$pTab>>2]|0; + $58 = HEAP32[$57>>2]|0; + $59 = HEAP32[$pTab>>2]|0; + $60 = HEAP32[$59>>2]|0; + $61 = HEAP32[$zStmt>>2]|0; + $62 = HEAP32[$0>>2]|0; + $63 = (($62) + 384|0); + $64 = HEAP32[$63>>2]|0; + HEAP32[$vararg_buffer9>>2] = $53; + $vararg_ptr4 = (($vararg_buffer9) + 4|0); + HEAP32[$vararg_ptr4>>2] = $56; + $vararg_ptr5 = (($vararg_buffer9) + 8|0); + HEAP32[$vararg_ptr5>>2] = $58; + $vararg_ptr6 = (($vararg_buffer9) + 12|0); + HEAP32[$vararg_ptr6>>2] = $60; + $vararg_ptr7 = (($vararg_buffer9) + 16|0); + HEAP32[$vararg_ptr7>>2] = $61; + $vararg_ptr8 = (($vararg_buffer9) + 20|0); + HEAP32[$vararg_ptr8>>2] = $64; + _sqlite3NestedParse($47,21344,$vararg_buffer9); + $65 = HEAP32[$db>>2]|0; + $66 = HEAP32[$zStmt>>2]|0; + _sqlite3DbFree($65,$66); + $67 = HEAP32[$0>>2]|0; + $68 = (_sqlite3GetVdbe($67)|0); + HEAP32[$v>>2] = $68; + $69 = HEAP32[$0>>2]|0; + $70 = HEAP32[$iDb>>2]|0; + _sqlite3ChangeCookie($69,$70); + $71 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($71,139,0,0)|0); + $72 = HEAP32[$db>>2]|0; + $73 = HEAP32[$pTab>>2]|0; + $74 = HEAP32[$73>>2]|0; + HEAP32[$vararg_buffer9>>2] = $74; + $75 = (_sqlite3MPrintf($72,21472,$vararg_buffer9)|0); + HEAP32[$zWhere>>2] = $75; + $76 = HEAP32[$v>>2]|0; + $77 = HEAP32[$iDb>>2]|0; + $78 = HEAP32[$zWhere>>2]|0; + _sqlite3VdbeAddParseSchemaOp($76,$77,$78); + $79 = HEAP32[$v>>2]|0; + $80 = HEAP32[$iDb>>2]|0; + $81 = HEAP32[$pTab>>2]|0; + $82 = HEAP32[$81>>2]|0; + $83 = HEAP32[$pTab>>2]|0; + $84 = HEAP32[$83>>2]|0; + $85 = (_sqlite3Strlen30($84)|0); + $86 = (($85) + 1)|0; + (_sqlite3VdbeAddOp4($79,142,$80,0,0,$82,$86)|0); + STACKTOP = sp;return; + } + $87 = HEAP32[$pTab>>2]|0; + $88 = (($87) + 68|0); + $89 = HEAP32[$88>>2]|0; + HEAP32[$pSchema>>2] = $89; + $90 = HEAP32[$pTab>>2]|0; + $91 = HEAP32[$90>>2]|0; + HEAP32[$zName>>2] = $91; + $92 = HEAP32[$zName>>2]|0; + $93 = (_sqlite3Strlen30($92)|0); + HEAP32[$nName>>2] = $93; + $94 = HEAP32[$pSchema>>2]|0; + $95 = (($94) + 8|0); + $96 = HEAP32[$zName>>2]|0; + $97 = HEAP32[$nName>>2]|0; + $98 = HEAP32[$pTab>>2]|0; + $99 = (_sqlite3HashInsert($95,$96,$97,$98)|0); + HEAP32[$pOld>>2] = $99; + $100 = HEAP32[$pOld>>2]|0; + $101 = ($100|0)!=(0|0); + if ($101) { + $102 = HEAP32[$db>>2]|0; + $103 = (($102) + 64|0); + HEAP8[$103>>0] = 1; + STACKTOP = sp;return; + } else { + $104 = HEAP32[$0>>2]|0; + $105 = (($104) + 484|0); + HEAP32[$105>>2] = 0; + STACKTOP = sp;return; + } +} +function _sqlite3VtabBeginParse($pParse,$pName1,$pName2,$pModuleName,$ifNotExists) { + $pParse = $pParse|0; + $pName1 = $pName1|0; + $pName2 = $pName2|0; + $pModuleName = $pModuleName|0; + $ifNotExists = $ifNotExists|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $8 = 0, $9 = 0, $db = 0, $iDb = 0, $pTable = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $iDb = sp + 16|0; + $pTable = sp + 20|0; + $db = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pName1; + HEAP32[$2>>2] = $pName2; + HEAP32[$3>>2] = $pModuleName; + HEAP32[$4>>2] = $ifNotExists; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$4>>2]|0; + _sqlite3StartTable($5,$6,$7,0,0,1,$8); + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 484|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$pTable>>2] = $11; + $12 = HEAP32[$pTable>>2]|0; + $13 = ($12|0)==(0|0); + if ($13) { + STACKTOP = sp;return; + } + $14 = HEAP32[$0>>2]|0; + $15 = HEAP32[$14>>2]|0; + HEAP32[$db>>2] = $15; + $16 = HEAP32[$db>>2]|0; + $17 = HEAP32[$pTable>>2]|0; + $18 = (($17) + 68|0); + $19 = HEAP32[$18>>2]|0; + $20 = (_sqlite3SchemaToIndex($16,$19)|0); + HEAP32[$iDb>>2] = $20; + $21 = HEAP32[$pTable>>2]|0; + $22 = (($21) + 44|0); + $23 = HEAP8[$22>>0]|0; + $24 = $23&255; + $25 = $24 | 16; + $26 = $25&255; + HEAP8[$22>>0] = $26; + $27 = HEAP32[$pTable>>2]|0; + $28 = (($27) + 52|0); + HEAP32[$28>>2] = 0; + $29 = HEAP32[$db>>2]|0; + $30 = HEAP32[$pTable>>2]|0; + $31 = HEAP32[$db>>2]|0; + $32 = HEAP32[$3>>2]|0; + $33 = (_sqlite3NameFromToken($31,$32)|0); + _addModuleArgument($29,$30,$33); + $34 = HEAP32[$db>>2]|0; + $35 = HEAP32[$pTable>>2]|0; + _addModuleArgument($34,$35,0); + $36 = HEAP32[$db>>2]|0; + $37 = HEAP32[$pTable>>2]|0; + $38 = HEAP32[$db>>2]|0; + $39 = HEAP32[$pTable>>2]|0; + $40 = HEAP32[$39>>2]|0; + $41 = (_sqlite3DbStrDup($38,$40)|0); + _addModuleArgument($36,$37,$41); + $42 = HEAP32[$3>>2]|0; + $43 = (($42) + 4|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$3>>2]|0; + $46 = HEAP32[$45>>2]|0; + $47 = (($46) + ($44)|0); + $48 = HEAP32[$1>>2]|0; + $49 = HEAP32[$48>>2]|0; + $50 = $47; + $51 = $49; + $52 = (($50) - ($51))|0; + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 496|0); + $55 = (($54) + 4|0); + HEAP32[$55>>2] = $52; + $56 = HEAP32[$pTable>>2]|0; + $57 = (($56) + 56|0); + $58 = HEAP32[$57>>2]|0; + $59 = ($58|0)!=(0|0); + if (!($59)) { + STACKTOP = sp;return; + } + $60 = HEAP32[$0>>2]|0; + $61 = HEAP32[$pTable>>2]|0; + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$pTable>>2]|0; + $64 = (($63) + 56|0); + $65 = HEAP32[$64>>2]|0; + $66 = HEAP32[$65>>2]|0; + $67 = HEAP32[$iDb>>2]|0; + $68 = HEAP32[$0>>2]|0; + $69 = HEAP32[$68>>2]|0; + $70 = (($69) + 16|0); + $71 = HEAP32[$70>>2]|0; + $72 = (($71) + ($67<<4)|0); + $73 = HEAP32[$72>>2]|0; + (_sqlite3AuthCheck($60,29,$62,$66,$73)|0); + STACKTOP = sp;return; +} +function _sqlite3VtabArgInit($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + _addArgumentToVtab($1); + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 512|0); + HEAP32[$3>>2] = 0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 512|0); + $6 = (($5) + 4|0); + HEAP32[$6>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3VtabArgExtend($pParse,$p) { + $pParse = $pParse|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pArg = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pArg = sp + 4|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 512|0); + HEAP32[$pArg>>2] = $3; + $4 = HEAP32[$pArg>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)==(0|0); + $7 = HEAP32[$1>>2]|0; + if ($6) { + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$pArg>>2]|0; + HEAP32[$9>>2] = $8; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$pArg>>2]|0; + $14 = (($13) + 4|0); + HEAP32[$14>>2] = $12; + STACKTOP = sp;return; + } else { + $15 = (($7) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + ($16)|0); + $20 = HEAP32[$pArg>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = $19; + $23 = $21; + $24 = (($22) - ($23))|0; + $25 = HEAP32[$pArg>>2]|0; + $26 = (($25) + 4|0); + HEAP32[$26>>2] = $24; + STACKTOP = sp;return; + } +} +function _sqlite3WithAdd($pParse,$pWith,$pName,$pArglist,$pQuery) { + $pParse = $pParse|0; + $pWith = $pWith|0; + $pName = $pName|0; + $pArglist = $pArglist|0; + $pQuery = $pQuery|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $9 = 0, $db = 0, $i = 0, $nByte = 0, $pNew = 0, $vararg_buffer = 0, $zName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 40|0; + $db = sp + 12|0; + $pNew = sp + 8|0; + $zName = sp + 4|0; + $i = sp + 16|0; + $nByte = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pWith; + HEAP32[$2>>2] = $pName; + HEAP32[$3>>2] = $pArglist; + HEAP32[$4>>2] = $pQuery; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = (_sqlite3NameFromToken($8,$9)|0); + HEAP32[$zName>>2] = $10; + $11 = HEAP32[$zName>>2]|0; + $12 = ($11|0)!=(0|0); + L1: do { + if ($12) { + $13 = HEAP32[$1>>2]|0; + $14 = ($13|0)!=(0|0); + if ($14) { + HEAP32[$i>>2] = 0; + while(1) { + $15 = HEAP32[$i>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = ($15|0)<($17|0); + if (!($18)) { + break L1; + } + $19 = HEAP32[$zName>>2]|0; + $20 = HEAP32[$i>>2]|0; + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 8|0); + $23 = (($22) + ($20<<4)|0); + $24 = HEAP32[$23>>2]|0; + $25 = (_sqlite3_stricmp($19,$24)|0); + $26 = ($25|0)==(0); + if ($26) { + $27 = HEAP32[$0>>2]|0; + $28 = HEAP32[$zName>>2]|0; + HEAP32[$vararg_buffer>>2] = $28; + _sqlite3ErrorMsg($27,21248,$vararg_buffer); + } + $29 = HEAP32[$i>>2]|0; + $30 = (($29) + 1)|0; + HEAP32[$i>>2] = $30; + } + } + } + } while(0); + $31 = HEAP32[$1>>2]|0; + $32 = ($31|0)!=(0|0); + if ($32) { + $33 = HEAP32[$1>>2]|0; + $34 = HEAP32[$33>>2]|0; + $35 = $34<<4; + $36 = (24 + ($35))|0; + HEAP32[$nByte>>2] = $36; + $37 = HEAP32[$db>>2]|0; + $38 = HEAP32[$1>>2]|0; + $39 = HEAP32[$nByte>>2]|0; + $40 = (_sqlite3DbRealloc($37,$38,$39)|0); + HEAP32[$pNew>>2] = $40; + } else { + $41 = HEAP32[$db>>2]|0; + $42 = (_sqlite3DbMallocZero($41,24)|0); + HEAP32[$pNew>>2] = $42; + } + $43 = HEAP32[$pNew>>2]|0; + $44 = ($43|0)==(0|0); + if ($44) { + $45 = HEAP32[$db>>2]|0; + $46 = HEAP32[$3>>2]|0; + _sqlite3ExprListDelete($45,$46); + $47 = HEAP32[$db>>2]|0; + $48 = HEAP32[$4>>2]|0; + _sqlite3SelectDelete($47,$48); + $49 = HEAP32[$db>>2]|0; + $50 = HEAP32[$zName>>2]|0; + _sqlite3DbFree($49,$50); + $51 = HEAP32[$1>>2]|0; + HEAP32[$pNew>>2] = $51; + $81 = HEAP32[$pNew>>2]|0; + STACKTOP = sp;return ($81|0); + } else { + $52 = HEAP32[$4>>2]|0; + $53 = HEAP32[$pNew>>2]|0; + $54 = HEAP32[$53>>2]|0; + $55 = HEAP32[$pNew>>2]|0; + $56 = (($55) + 8|0); + $57 = (($56) + ($54<<4)|0); + $58 = (($57) + 8|0); + HEAP32[$58>>2] = $52; + $59 = HEAP32[$3>>2]|0; + $60 = HEAP32[$pNew>>2]|0; + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$pNew>>2]|0; + $63 = (($62) + 8|0); + $64 = (($63) + ($61<<4)|0); + $65 = (($64) + 4|0); + HEAP32[$65>>2] = $59; + $66 = HEAP32[$zName>>2]|0; + $67 = HEAP32[$pNew>>2]|0; + $68 = HEAP32[$67>>2]|0; + $69 = HEAP32[$pNew>>2]|0; + $70 = (($69) + 8|0); + $71 = (($70) + ($68<<4)|0); + HEAP32[$71>>2] = $66; + $72 = HEAP32[$pNew>>2]|0; + $73 = HEAP32[$72>>2]|0; + $74 = HEAP32[$pNew>>2]|0; + $75 = (($74) + 8|0); + $76 = (($75) + ($73<<4)|0); + $77 = (($76) + 12|0); + HEAP32[$77>>2] = 0; + $78 = HEAP32[$pNew>>2]|0; + $79 = HEAP32[$78>>2]|0; + $80 = (($79) + 1)|0; + HEAP32[$78>>2] = $80; + $81 = HEAP32[$pNew>>2]|0; + STACKTOP = sp;return ($81|0); + } + return 0|0; +} +function _yy_find_reduce_action($stateno,$iLookAhead) { + $stateno = $stateno|0; + $iLookAhead = $iLookAhead|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp + 8|0; + $i = sp; + HEAP32[$0>>2] = $stateno; + HEAP8[$1>>0] = $iLookAhead; + $2 = HEAP32[$0>>2]|0; + $3 = (17632 + ($2<<1)|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4 << 16 >> 16; + HEAP32[$i>>2] = $5; + $6 = HEAP8[$1>>0]|0; + $7 = $6&255; + $8 = HEAP32[$i>>2]|0; + $9 = (($8) + ($7))|0; + HEAP32[$i>>2] = $9; + $10 = HEAP32[$i>>2]|0; + $11 = (18248 + ($10<<1)|0); + $12 = HEAP16[$11>>1]|0; + $13 = $12&65535; + STACKTOP = sp;return ($13|0); +} +function _yy_accept($yypParser) { + $yypParser = $yypParser|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pParse = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pParse = sp; + HEAP32[$0>>2] = $yypParser; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pParse>>2] = $3; + while(1) { + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)>=(0); + if (!($6)) { + break; + } + $7 = HEAP32[$0>>2]|0; + (_yy_pop_parser_stack($7)|0); + } + $8 = HEAP32[$pParse>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 8|0); + HEAP32[$10>>2] = $8; + STACKTOP = sp;return; +} +function _sqlite3NameFromToken($db,$pName) { + $db = $db|0; + $pName = $pName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $zName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $zName = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pName; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = (_sqlite3DbStrNDup($4,$6,$9)|0); + HEAP32[$zName>>2] = $10; + $11 = HEAP32[$zName>>2]|0; + (_sqlite3Dequote($11)|0); + $12 = HEAP32[$zName>>2]|0; + STACKTOP = sp;return ($12|0); + } else { + HEAP32[$zName>>2] = 0; + $12 = HEAP32[$zName>>2]|0; + STACKTOP = sp;return ($12|0); + } + return 0|0; +} +function _addArgumentToVtab($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $n = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $z = sp; + $n = sp + 4|0; + $db = sp + 8|0; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 512|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 484|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + STACKTOP = sp;return; + } + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 512|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$z>>2] = $11; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 512|0); + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$n>>2] = $15; + $16 = HEAP32[$0>>2]|0; + $17 = HEAP32[$16>>2]|0; + HEAP32[$db>>2] = $17; + $18 = HEAP32[$db>>2]|0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 484|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$db>>2]|0; + $23 = HEAP32[$z>>2]|0; + $24 = HEAP32[$n>>2]|0; + $25 = (_sqlite3DbStrNDup($22,$23,$24)|0); + _addModuleArgument($18,$21,$25); + STACKTOP = sp;return; +} +function _addModuleArgument($db,$pTable,$zArg) { + $db = $db|0; + $pTable = $pTable|0; + $zArg = $zArg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $azModuleArg = 0, $i = 0, $j = 0, $nBytes = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + $nBytes = sp + 12|0; + $azModuleArg = sp + 16|0; + $j = sp + 20|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pTable; + HEAP32[$2>>2] = $zArg; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 52|0); + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + 1)|0; + HEAP32[$4>>2] = $6; + HEAP32[$i>>2] = $5; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 52|0); + $9 = HEAP32[$8>>2]|0; + $10 = (1 + ($9))|0; + $11 = $10<<2; + HEAP32[$nBytes>>2] = $11; + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 56|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$nBytes>>2]|0; + $17 = (_sqlite3DbRealloc($12,$15,$16)|0); + HEAP32[$azModuleArg>>2] = $17; + $18 = HEAP32[$azModuleArg>>2]|0; + $19 = ($18|0)==(0|0); + if (!($19)) { + $39 = HEAP32[$2>>2]|0; + $40 = HEAP32[$i>>2]|0; + $41 = HEAP32[$azModuleArg>>2]|0; + $42 = (($41) + ($40<<2)|0); + HEAP32[$42>>2] = $39; + $43 = HEAP32[$i>>2]|0; + $44 = (($43) + 1)|0; + $45 = HEAP32[$azModuleArg>>2]|0; + $46 = (($45) + ($44<<2)|0); + HEAP32[$46>>2] = 0; + $47 = HEAP32[$azModuleArg>>2]|0; + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + 56|0); + HEAP32[$49>>2] = $47; + STACKTOP = sp;return; + } + HEAP32[$j>>2] = 0; + while(1) { + $20 = HEAP32[$j>>2]|0; + $21 = HEAP32[$i>>2]|0; + $22 = ($20|0)<($21|0); + $23 = HEAP32[$0>>2]|0; + if (!($22)) { + break; + } + $24 = HEAP32[$j>>2]|0; + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 56|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + ($24<<2)|0); + $29 = HEAP32[$28>>2]|0; + _sqlite3DbFree($23,$29); + $30 = HEAP32[$j>>2]|0; + $31 = (($30) + 1)|0; + HEAP32[$j>>2] = $31; + } + $32 = HEAP32[$2>>2]|0; + _sqlite3DbFree($23,$32); + $33 = HEAP32[$0>>2]|0; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 56|0); + $36 = HEAP32[$35>>2]|0; + _sqlite3DbFree($33,$36); + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 52|0); + HEAP32[$38>>2] = 0; + $47 = HEAP32[$azModuleArg>>2]|0; + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + 56|0); + HEAP32[$49>>2] = $47; + STACKTOP = sp;return; +} +function _sqlite3AuthCheck($pParse,$code,$zArg1,$zArg2,$zArg3) { + $pParse = $pParse|0; + $code = $code|0; + $zArg1 = $zArg1|0; + $zArg2 = $zArg2|0; + $zArg3 = $zArg3|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $or$cond = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 28|0; + $1 = sp + 24|0; + $2 = sp + 20|0; + $3 = sp + 32|0; + $4 = sp + 8|0; + $5 = sp + 4|0; + $db = sp + 12|0; + $rc = sp + 16|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $code; + HEAP32[$3>>2] = $zArg1; + HEAP32[$4>>2] = $zArg2; + HEAP32[$5>>2] = $zArg3; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$db>>2] = $7; + $8 = HEAP32[$db>>2]|0; + $9 = (($8) + 132|0); + $10 = (($9) + 5|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = ($12|0)!=(0); + if (!($13)) { + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 451|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = ($17|0)!=(0); + if (!($18)) { + $19 = HEAP32[$db>>2]|0; + $20 = (($19) + 276|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)==(0|0); + if ($22) { + HEAP32[$0>>2] = 0; + $48 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($48|0); + } + $23 = HEAP32[$db>>2]|0; + $24 = (($23) + 276|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$db>>2]|0; + $27 = (($26) + 280|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$2>>2]|0; + $30 = HEAP32[$3>>2]|0; + $31 = HEAP32[$4>>2]|0; + $32 = HEAP32[$5>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 492|0); + $35 = HEAP32[$34>>2]|0; + $36 = (FUNCTION_TABLE_iiiiiii[$25 & 15]($28,$29,$30,$31,$32,$35)|0); + HEAP32[$rc>>2] = $36; + $37 = HEAP32[$rc>>2]|0; + $38 = ($37|0)==(1); + if ($38) { + $39 = HEAP32[$1>>2]|0; + _sqlite3ErrorMsg($39,21280,$vararg_buffer); + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 12|0); + HEAP32[$41>>2] = 23; + } else { + $42 = HEAP32[$rc>>2]|0; + $43 = ($42|0)!=(0); + $44 = HEAP32[$rc>>2]|0; + $45 = ($44|0)!=(2); + $or$cond = $43 & $45; + if ($or$cond) { + HEAP32[$rc>>2] = 1; + $46 = HEAP32[$1>>2]|0; + _sqliteAuthBadReturnCode($46); + } + } + $47 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $47; + $48 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($48|0); + } + } + HEAP32[$0>>2] = 0; + $48 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($48|0); +} +function _sqliteAuthBadReturnCode($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 4|0; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($1,21296,$vararg_buffer); + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 12|0); + HEAP32[$3>>2] = 1; + STACKTOP = sp;return; +} +function _sqlite3NestedParse($pParse,$zFormat,$varargs) { + $pParse = $pParse|0; + $zFormat = $zFormat|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ap = 0, $db = 0, $saveBuf = 0, $zErrMsg = 0, $zSql = 0, dest = 0, label = 0; + var sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; + $0 = sp + 36|0; + $1 = sp; + $ap = sp + 8|0; + $zSql = sp + 24|0; + $zErrMsg = sp + 28|0; + $db = sp + 32|0; + $saveBuf = sp + 40|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $zFormat; + HEAP32[$zErrMsg>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 64|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0); + if ($7) { + STACKTOP = sp;return; + } + HEAP32[$ap>>2] = $varargs; + $8 = HEAP32[$db>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (_sqlite3VMPrintf($8,$9,$ap)|0); + HEAP32[$zSql>>2] = $10; + $11 = HEAP32[$zSql>>2]|0; + $12 = ($11|0)==(0|0); + if ($12) { + STACKTOP = sp;return; + } + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 18|0); + $15 = HEAP8[$14>>0]|0; + $16 = (($15) + 1)<<24>>24; + HEAP8[$14>>0] = $16; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 440|0); + dest=$saveBuf+0|0; src=$18+0|0; stop=dest+96|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 440|0); + dest=$20+0|0; stop=dest+96|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$zSql>>2]|0; + (_sqlite3RunParser($21,$22,$zErrMsg)|0); + $23 = HEAP32[$db>>2]|0; + $24 = HEAP32[$zErrMsg>>2]|0; + _sqlite3DbFree($23,$24); + $25 = HEAP32[$db>>2]|0; + $26 = HEAP32[$zSql>>2]|0; + _sqlite3DbFree($25,$26); + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 440|0); + dest=$28+0|0; src=$saveBuf+0|0; stop=dest+96|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $29 = HEAP32[$0>>2]|0; + $30 = (($29) + 18|0); + $31 = HEAP8[$30>>0]|0; + $32 = (($31) + -1)<<24>>24; + HEAP8[$30>>0] = $32; + STACKTOP = sp;return; +} +function _sqlite3GetVdbe($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $v = sp; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$v>>2] = $3; + $4 = HEAP32[$v>>2]|0; + $5 = ($4|0)==(0|0); + if ($5) { + $6 = HEAP32[$0>>2]|0; + $7 = (_sqlite3VdbeCreate($6)|0); + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 8|0); + HEAP32[$9>>2] = $7; + HEAP32[$v>>2] = $7; + $10 = HEAP32[$v>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp0($12,155)|0); + } + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 408|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)==(0|0); + if ($16) { + $17 = HEAP32[$0>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + 60|0); + $20 = HEAP16[$19>>1]|0; + $21 = $20&65535; + $22 = $21 & 8; + $23 = ($22|0)==(0); + if ($23) { + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 23|0); + HEAP8[$25>>0] = 1; + } + } + } + $26 = HEAP32[$v>>2]|0; + STACKTOP = sp;return ($26|0); +} +function _sqlite3ChangeCookie($pParse,$iDb) { + $pParse = $pParse|0; + $iDb = $iDb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $r1 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $r1 = sp + 4|0; + $db = sp + 8|0; + $v = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iDb; + $2 = HEAP32[$0>>2]|0; + $3 = (_sqlite3GetTempReg($2)|0); + HEAP32[$r1>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 8|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$v>>2] = $8; + $9 = HEAP32[$v>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$db>>2]|0; + $12 = (($11) + 16|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + ($10<<4)|0); + $15 = (($14) + 12|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + 1)|0; + $19 = HEAP32[$r1>>2]|0; + (_sqlite3VdbeAddOp2($9,25,$18,$19)|0); + $20 = HEAP32[$v>>2]|0; + $21 = HEAP32[$1>>2]|0; + $22 = HEAP32[$r1>>2]|0; + (_sqlite3VdbeAddOp3($20,51,$21,1,$22)|0); + $23 = HEAP32[$0>>2]|0; + $24 = HEAP32[$r1>>2]|0; + _sqlite3ReleaseTempReg($23,$24); + STACKTOP = sp;return; +} +function _sqlite3VdbeAddOp2($p,$op,$p1,$p2) { + $p = $p|0; + $op = $op|0; + $p1 = $p1|0; + $p2 = $p2|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $op; + HEAP32[$2>>2] = $p1; + HEAP32[$3>>2] = $p2; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$3>>2]|0; + $8 = (_sqlite3VdbeAddOp3($4,$5,$6,$7,0)|0); + STACKTOP = sp;return ($8|0); +} +function _sqlite3VdbeAddParseSchemaOp($p,$iDb,$zWhere) { + $p = $p|0; + $iDb = $iDb|0; + $zWhere = $zWhere|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $addr = 0; + var $j = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $j = sp + 8|0; + $addr = sp + 12|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iDb; + HEAP32[$2>>2] = $zWhere; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (_sqlite3VdbeAddOp3($3,119,$4,0,0)|0); + HEAP32[$addr>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$addr>>2]|0; + $8 = HEAP32[$2>>2]|0; + _sqlite3VdbeChangeP4($6,$7,$8,-1); + HEAP32[$j>>2] = 0; + while(1) { + $9 = HEAP32[$j>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + 20|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($9|0)<($13|0); + if (!($14)) { + break; + } + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$j>>2]|0; + _sqlite3VdbeUsesBtree($15,$16); + $17 = HEAP32[$j>>2]|0; + $18 = (($17) + 1)|0; + HEAP32[$j>>2] = $18; + } + STACKTOP = sp;return; +} +function _sqlite3VdbeAddOp4($p,$op,$p1,$p2,$p3,$zP4,$p4type) { + $p = $p|0; + $op = $op|0; + $p1 = $p1|0; + $p2 = $p2|0; + $p3 = $p3|0; + $zP4 = $zP4|0; + $p4type = $p4type|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $addr = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $5 = sp + 16|0; + $6 = sp + 20|0; + $addr = sp + 24|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $op; + HEAP32[$2>>2] = $p1; + HEAP32[$3>>2] = $p2; + HEAP32[$4>>2] = $p3; + HEAP32[$5>>2] = $zP4; + HEAP32[$6>>2] = $p4type; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$3>>2]|0; + $11 = HEAP32[$4>>2]|0; + $12 = (_sqlite3VdbeAddOp3($7,$8,$9,$10,$11)|0); + HEAP32[$addr>>2] = $12; + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$addr>>2]|0; + $15 = HEAP32[$5>>2]|0; + $16 = HEAP32[$6>>2]|0; + _sqlite3VdbeChangeP4($13,$14,$15,$16); + $17 = HEAP32[$addr>>2]|0; + STACKTOP = sp;return ($17|0); +} +function _sqlite3VdbeAddOp3($p,$op,$p1,$p2,$p3) { + $p = $p|0; + $op = $op|0; + $p1 = $p1|0; + $p2 = $p2|0; + $p3 = $p3|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pOp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $5 = sp + 16|0; + $i = sp + 20|0; + $pOp = sp + 24|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $op; + HEAP32[$3>>2] = $p1; + HEAP32[$4>>2] = $p2; + HEAP32[$5>>2] = $p3; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 32|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$i>>2] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 24|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + 84|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$i>>2]|0; + $15 = ($13|0)<=($14|0); + if ($15) { + $16 = HEAP32[$1>>2]|0; + $17 = (_growOpArray($16)|0); + $18 = ($17|0)!=(0); + if ($18) { + HEAP32[$0>>2] = 1; + $47 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($47|0); + } + } + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 32|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + 1)|0; + HEAP32[$20>>2] = $22; + $23 = HEAP32[$i>>2]|0; + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 4|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($26) + (($23*20)|0)|0); + HEAP32[$pOp>>2] = $27; + $28 = HEAP32[$2>>2]|0; + $29 = $28&255; + $30 = HEAP32[$pOp>>2]|0; + HEAP8[$30>>0] = $29; + $31 = HEAP32[$pOp>>2]|0; + $32 = (($31) + 3|0); + HEAP8[$32>>0] = 0; + $33 = HEAP32[$3>>2]|0; + $34 = HEAP32[$pOp>>2]|0; + $35 = (($34) + 4|0); + HEAP32[$35>>2] = $33; + $36 = HEAP32[$4>>2]|0; + $37 = HEAP32[$pOp>>2]|0; + $38 = (($37) + 8|0); + HEAP32[$38>>2] = $36; + $39 = HEAP32[$5>>2]|0; + $40 = HEAP32[$pOp>>2]|0; + $41 = (($40) + 12|0); + HEAP32[$41>>2] = $39; + $42 = HEAP32[$pOp>>2]|0; + $43 = (($42) + 16|0); + HEAP32[$43>>2] = 0; + $44 = HEAP32[$pOp>>2]|0; + $45 = (($44) + 1|0); + HEAP8[$45>>0] = 0; + $46 = HEAP32[$i>>2]|0; + HEAP32[$0>>2] = $46; + $47 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($47|0); +} +function _growOpArray($v) { + $v = $v|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nNew = 0, $p = 0, $pNew = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $pNew = sp; + $p = sp + 4|0; + $nNew = sp + 8|0; + HEAP32[$0>>2] = $v; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 24|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $3; + $4 = HEAP32[$p>>2]|0; + $5 = (($4) + 84|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0); + if ($7) { + $8 = HEAP32[$p>>2]|0; + $9 = (($8) + 84|0); + $10 = HEAP32[$9>>2]|0; + $11 = $10<<1; + $12 = $11; + } else { + $12 = 51; + } + HEAP32[$nNew>>2] = $12; + $13 = HEAP32[$p>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$nNew>>2]|0; + $19 = ($18*20)|0; + $20 = (_sqlite3DbRealloc($14,$17,$19)|0); + HEAP32[$pNew>>2] = $20; + $21 = HEAP32[$pNew>>2]|0; + $22 = ($21|0)!=(0|0); + if (!($22)) { + $33 = HEAP32[$pNew>>2]|0; + $34 = ($33|0)!=(0|0); + $35 = $34 ? 0 : 7; + STACKTOP = sp;return ($35|0); + } + $23 = HEAP32[$p>>2]|0; + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$pNew>>2]|0; + $26 = (_sqlite3DbMallocSize($24,$25)|0); + $27 = (($26>>>0) / 20)&-1; + $28 = HEAP32[$p>>2]|0; + $29 = (($28) + 84|0); + HEAP32[$29>>2] = $27; + $30 = HEAP32[$pNew>>2]|0; + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 4|0); + HEAP32[$32>>2] = $30; + $33 = HEAP32[$pNew>>2]|0; + $34 = ($33|0)!=(0|0); + $35 = $34 ? 0 : 7; + STACKTOP = sp;return ($35|0); +} +function _sqlite3DbMallocSize($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $p; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = (_isLookaside($3,$4)|0); + $6 = ($5|0)!=(0); + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 240|0); + $9 = HEAP16[$8>>1]|0; + $10 = $9&65535; + HEAP32[$0>>2] = $10; + $14 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($14|0); + } else { + $11 = HEAP32[((45136 + 48|0))>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = (FUNCTION_TABLE_ii[$11 & 63]($12)|0); + HEAP32[$0>>2] = $13; + $14 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($14|0); + } + return 0|0; +} +function _sqlite3GetTempReg($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $pParse; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 19|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = ($5|0)==(0); + $7 = HEAP32[$1>>2]|0; + if ($6) { + $8 = (($7) + 72|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 1)|0; + HEAP32[$8>>2] = $10; + HEAP32[$0>>2] = $10; + $19 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($19|0); + } else { + $11 = (($7) + 19|0); + $12 = HEAP8[$11>>0]|0; + $13 = (($12) + -1)<<24>>24; + HEAP8[$11>>0] = $13; + $14 = $13&255; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 24|0); + $17 = (($16) + ($14<<2)|0); + $18 = HEAP32[$17>>2]|0; + HEAP32[$0>>2] = $18; + $19 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($19|0); + } + return 0|0; +} +function _sqlite3ReleaseTempReg($pParse,$iReg) { + $pParse = $pParse|0; + $iReg = $iReg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $i = sp + 4|0; + $p = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iReg; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0); + if (!($3)) { + STACKTOP = sp;return; + } + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 19|0); + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = ($7|0)<(8); + if (!($8)) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 116|0); + HEAP32[$p>>2] = $10; + while(1) { + $11 = HEAP32[$i>>2]|0; + $12 = ($11|0)<(10); + if (!($12)) { + label = 8; + break; + } + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 12|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = ($15|0)==($16|0); + if ($17) { + label = 6; + break; + } + $20 = HEAP32[$i>>2]|0; + $21 = (($20) + 1)|0; + HEAP32[$i>>2] = $21; + $22 = HEAP32[$p>>2]|0; + $23 = (($22) + 20|0); + HEAP32[$p>>2] = $23; + } + if ((label|0) == 6) { + $18 = HEAP32[$p>>2]|0; + $19 = (($18) + 6|0); + HEAP8[$19>>0] = 1; + STACKTOP = sp;return; + } + else if ((label|0) == 8) { + $24 = HEAP32[$1>>2]|0; + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 19|0); + $27 = HEAP8[$26>>0]|0; + $28 = (($27) + 1)<<24>>24; + HEAP8[$26>>0] = $28; + $29 = $27&255; + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 24|0); + $32 = (($31) + ($29<<2)|0); + HEAP32[$32>>2] = $24; + STACKTOP = sp;return; + } +} +function _sqlite3VdbeAddOp0($p,$op) { + $p = $p|0; + $op = $op|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $op; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3VdbeAddOp3($2,$3,0,0,0)|0); + STACKTOP = sp;return ($4|0); +} +function _sqlite3LocateTableItem($pParse,$isView,$p) { + $pParse = $pParse|0; + $isView = $isView|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iDb = 0, $zDb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $zDb = sp + 8|0; + $iDb = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $isView; + HEAP32[$2>>2] = $p; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = (_sqlite3SchemaToIndex($7,$9)|0); + HEAP32[$iDb>>2] = $10; + $11 = HEAP32[$iDb>>2]|0; + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 16|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + ($11<<4)|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$zDb>>2] = $17; + } else { + $18 = HEAP32[$2>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$zDb>>2] = $20; + } + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$2>>2]|0; + $24 = (($23) + 8|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$zDb>>2]|0; + $27 = (_sqlite3LocateTable($21,$22,$25,$26)|0); + STACKTOP = sp;return ($27|0); +} +function _isSystemTable($pParse,$zName) { + $pParse = $pParse|0; + $zName = $zName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 12|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $zName; + $3 = HEAP32[$2>>2]|0; + $4 = (_sqlite3Strlen30($3)|0); + $5 = ($4|0)>(6); + if ($5) { + $6 = HEAP32[$2>>2]|0; + $7 = (_sqlite3_strnicmp($6,21672,7)|0); + $8 = (0)==($7|0); + if ($8) { + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer>>2] = $10; + _sqlite3ErrorMsg($9,21680,$vararg_buffer); + HEAP32[$0>>2] = 1; + $11 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($11|0); + } + } + HEAP32[$0>>2] = 0; + $11 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($11|0); +} +function _sqlite3BeginWriteOperation($pParse,$setStatement,$iDb) { + $pParse = $pParse|0; + $setStatement = $setStatement|0; + $iDb = $iDb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pToplevel = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pToplevel = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $setStatement; + HEAP32[$2>>2] = $iDb; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 408|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + $7 = HEAP32[$0>>2]|0; + if ($6) { + $8 = (($7) + 408|0); + $9 = HEAP32[$8>>2]|0; + $10 = $9; + } else { + $10 = $7; + } + HEAP32[$pToplevel>>2] = $10; + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$2>>2]|0; + _sqlite3CodeVerifySchema($11,$12); + $13 = HEAP32[$2>>2]|0; + $14 = 1 << $13; + $15 = HEAP32[$pToplevel>>2]|0; + $16 = (($15) + 328|0); + $17 = HEAP32[$16>>2]|0; + $18 = $17 | $14; + HEAP32[$16>>2] = $18; + $19 = HEAP32[$1>>2]|0; + $20 = HEAP32[$pToplevel>>2]|0; + $21 = (($20) + 20|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = $23 | $19; + $25 = $24&255; + HEAP8[$21>>0] = $25; + STACKTOP = sp;return; +} +function _sqlite3CodeVerifySchema($pParse,$iDb) { + $pParse = $pParse|0; + $iDb = $iDb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $db = 0, $mask = 0, $pToplevel = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $pToplevel = sp + 4|0; + $db = sp + 8|0; + $mask = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iDb; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 408|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + $6 = HEAP32[$0>>2]|0; + if ($5) { + $7 = (($6) + 408|0); + $8 = HEAP32[$7>>2]|0; + $9 = $8; + } else { + $9 = $6; + } + HEAP32[$pToplevel>>2] = $9; + $10 = HEAP32[$pToplevel>>2]|0; + $11 = HEAP32[$10>>2]|0; + HEAP32[$db>>2] = $11; + $12 = HEAP32[$1>>2]|0; + $13 = 1 << $12; + HEAP32[$mask>>2] = $13; + $14 = HEAP32[$pToplevel>>2]|0; + $15 = (($14) + 332|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$mask>>2]|0; + $18 = $16 & $17; + $19 = ($18|0)==(0); + if (!($19)) { + STACKTOP = sp;return; + } + $20 = HEAP32[$mask>>2]|0; + $21 = HEAP32[$pToplevel>>2]|0; + $22 = (($21) + 332|0); + $23 = HEAP32[$22>>2]|0; + $24 = $23 | $20; + HEAP32[$22>>2] = $24; + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$db>>2]|0; + $27 = (($26) + 16|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + ($25<<4)|0); + $30 = (($29) + 12|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$31>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = HEAP32[$pToplevel>>2]|0; + $35 = (($34) + 336|0); + $36 = (($35) + ($33<<2)|0); + HEAP32[$36>>2] = $32; + $37 = HEAP32[$1>>2]|0; + $38 = ($37|0)==(1); + if (!($38)) { + STACKTOP = sp;return; + } + $39 = HEAP32[$pToplevel>>2]|0; + (_sqlite3OpenTempDatabase($39)|0); + STACKTOP = sp;return; +} +function _sqlite3OpenTempDatabase($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $db = 0, $pBt = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 20|0; + $1 = sp + 4|0; + $db = sp + 8|0; + $rc = sp + 12|0; + $pBt = sp + 16|0; + HEAP32[$1>>2] = $pParse; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$db>>2]|0; + $5 = (($4) + 16|0); + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + 16|0); + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)==(0|0); + if ($10) { + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 450|0); + $13 = HEAP8[$12>>0]|0; + $14 = ($13<<24>>24)!=(0); + if (!($14)) { + $15 = HEAP32[$db>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$db>>2]|0; + $18 = (_sqlite3BtreeOpen($16,0,$17,$pBt,0,542)|0); + HEAP32[$rc>>2] = $18; + $19 = HEAP32[$rc>>2]|0; + $20 = ($19|0)!=(0); + if ($20) { + $21 = HEAP32[$1>>2]|0; + _sqlite3ErrorMsg($21,21600,$vararg_buffer); + $22 = HEAP32[$rc>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 12|0); + HEAP32[$24>>2] = $22; + HEAP32[$0>>2] = 1; + $39 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($39|0); + } + $25 = HEAP32[$pBt>>2]|0; + $26 = HEAP32[$db>>2]|0; + $27 = (($26) + 16|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + 16|0); + $30 = (($29) + 4|0); + HEAP32[$30>>2] = $25; + $31 = HEAP32[$pBt>>2]|0; + $32 = HEAP32[$db>>2]|0; + $33 = (($32) + 72|0); + $34 = HEAP32[$33>>2]|0; + $35 = (_sqlite3BtreeSetPageSize($31,$34,-1,0)|0); + $36 = (7)==($35|0); + if ($36) { + $37 = HEAP32[$db>>2]|0; + $38 = (($37) + 64|0); + HEAP8[$38>>0] = 1; + HEAP32[$0>>2] = 1; + $39 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($39|0); + } + } + } + HEAP32[$0>>2] = 0; + $39 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($39|0); +} +function _sqlite3FindTable($db,$zName,$zDatabase) { + $db = $db|0; + $zName = $zName|0; + $zDatabase = $zDatabase|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $i = 0, $j = 0, $nName = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + $i = sp + 12|0; + $nName = sp + 16|0; + $j = sp + 20|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zName; + HEAP32[$2>>2] = $zDatabase; + HEAP32[$p>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3Strlen30($3)|0); + HEAP32[$nName>>2] = $4; + HEAP32[$i>>2] = 0; + while(1) { + $5 = HEAP32[$i>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 20|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($5|0)<($8|0); + if (!($9)) { + label = 7; + break; + } + $10 = HEAP32[$i>>2]|0; + $11 = ($10|0)<(2); + $12 = HEAP32[$i>>2]|0; + $13 = $12 ^ 1; + $14 = $11 ? $13 : $12; + HEAP32[$j>>2] = $14; + $15 = HEAP32[$2>>2]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$j>>2]|0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 16|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + ($18<<4)|0); + $23 = HEAP32[$22>>2]|0; + $24 = (_sqlite3_stricmp($17,$23)|0); + $25 = ($24|0)!=(0); + if (!($25)) { + label = 5; + } + } else { + label = 5; + } + if ((label|0) == 5) { + label = 0; + $26 = HEAP32[$j>>2]|0; + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 16|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + ($26<<4)|0); + $31 = (($30) + 12|0); + $32 = HEAP32[$31>>2]|0; + $33 = (($32) + 8|0); + $34 = HEAP32[$1>>2]|0; + $35 = HEAP32[$nName>>2]|0; + $36 = (_sqlite3HashFind($33,$34,$35)|0); + HEAP32[$p>>2] = $36; + $37 = HEAP32[$p>>2]|0; + $38 = ($37|0)!=(0|0); + if ($38) { + label = 7; + break; + } + } + $39 = HEAP32[$i>>2]|0; + $40 = (($39) + 1)|0; + HEAP32[$i>>2] = $40; + } + if ((label|0) == 7) { + $41 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($41|0); + } + return 0|0; +} +function _sqlite3ValueFromExpr($db,$pExpr,$enc,$affinity,$ppVal) { + $db = $db|0; + $pExpr = $pExpr|0; + $enc = $enc|0; + $affinity = $affinity|0; + $ppVal = $ppVal|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 13|0; + $3 = sp + 12|0; + $4 = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pExpr; + HEAP8[$2>>0] = $enc; + HEAP8[$3>>0] = $affinity; + HEAP32[$4>>2] = $ppVal; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP8[$2>>0]|0; + $8 = HEAP8[$3>>0]|0; + $9 = HEAP32[$4>>2]|0; + $10 = (_valueFromExpr($5,$6,$7,$8,$9,0)|0); + STACKTOP = sp;return ($10|0); +} +function _sqlite3MinimumFileFormat($pParse,$iDb,$minFormat) { + $pParse = $pParse|0; + $iDb = $iDb|0; + $minFormat = $minFormat|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $j1 = 0, $r1 = 0, $r2 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $v = sp + 8|0; + $r1 = sp + 12|0; + $r2 = sp + 16|0; + $j1 = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iDb; + HEAP32[$2>>2] = $minFormat; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3GetVdbe($3)|0); + HEAP32[$v>>2] = $4; + $5 = HEAP32[$v>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + $8 = (_sqlite3GetTempReg($7)|0); + HEAP32[$r1>>2] = $8; + $9 = HEAP32[$0>>2]|0; + $10 = (_sqlite3GetTempReg($9)|0); + HEAP32[$r2>>2] = $10; + $11 = HEAP32[$v>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$r1>>2]|0; + (_sqlite3VdbeAddOp3($11,50,$12,$13,2)|0); + $14 = HEAP32[$v>>2]|0; + $15 = HEAP32[$1>>2]|0; + _sqlite3VdbeUsesBtree($14,$15); + $16 = HEAP32[$v>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$r2>>2]|0; + (_sqlite3VdbeAddOp2($16,25,$17,$18)|0); + $19 = HEAP32[$v>>2]|0; + $20 = HEAP32[$r2>>2]|0; + $21 = HEAP32[$r1>>2]|0; + $22 = (_sqlite3VdbeAddOp3($19,83,$20,0,$21)|0); + HEAP32[$j1>>2] = $22; + $23 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($23,-120); + $24 = HEAP32[$v>>2]|0; + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$r2>>2]|0; + (_sqlite3VdbeAddOp3($24,51,$25,2,$26)|0); + $27 = HEAP32[$v>>2]|0; + $28 = HEAP32[$j1>>2]|0; + _sqlite3VdbeJumpHere($27,$28); + $29 = HEAP32[$0>>2]|0; + $30 = HEAP32[$r1>>2]|0; + _sqlite3ReleaseTempReg($29,$30); + $31 = HEAP32[$0>>2]|0; + $32 = HEAP32[$r2>>2]|0; + _sqlite3ReleaseTempReg($31,$32); + STACKTOP = sp;return; +} +function _reloadTableSchema($pParse,$pTab,$zName) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $zName = $zName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iDb = 0, $iTrigDb = 0, $pTrig = 0, $v = 0, $vararg_buffer = 0, $zWhere = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 28|0; + $1 = sp + 24|0; + $2 = sp + 20|0; + $v = sp + 32|0; + $zWhere = sp + 8|0; + $iDb = sp + 4|0; + $pTrig = sp + 12|0; + $iTrigDb = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $zName; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3GetVdbe($3)|0); + HEAP32[$v>>2] = $4; + $5 = HEAP32[$v>>2]|0; + $6 = ($5|0)==(0|0); + if ($6) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 68|0); + $11 = HEAP32[$10>>2]|0; + $12 = (_sqlite3SchemaToIndex($8,$11)|0); + HEAP32[$iDb>>2] = $12; + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = (_sqlite3TriggerList($13,$14)|0); + HEAP32[$pTrig>>2] = $15; + while(1) { + $16 = HEAP32[$pTrig>>2]|0; + $17 = ($16|0)!=(0|0); + if (!($17)) { + break; + } + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$pTrig>>2]|0; + $21 = (($20) + 20|0); + $22 = HEAP32[$21>>2]|0; + $23 = (_sqlite3SchemaToIndex($19,$22)|0); + HEAP32[$iTrigDb>>2] = $23; + $24 = HEAP32[$v>>2]|0; + $25 = HEAP32[$iTrigDb>>2]|0; + $26 = HEAP32[$pTrig>>2]|0; + $27 = HEAP32[$26>>2]|0; + (_sqlite3VdbeAddOp4($24,123,$25,0,0,$27,0)|0); + $28 = HEAP32[$pTrig>>2]|0; + $29 = (($28) + 32|0); + $30 = HEAP32[$29>>2]|0; + HEAP32[$pTrig>>2] = $30; + } + $31 = HEAP32[$v>>2]|0; + $32 = HEAP32[$iDb>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = HEAP32[$33>>2]|0; + (_sqlite3VdbeAddOp4($31,121,$32,0,0,$34,0)|0); + $35 = HEAP32[$0>>2]|0; + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer>>2] = $37; + $38 = (_sqlite3MPrintf($36,22056,$vararg_buffer)|0); + HEAP32[$zWhere>>2] = $38; + $39 = HEAP32[$zWhere>>2]|0; + $40 = ($39|0)!=(0|0); + if (!($40)) { + STACKTOP = sp;return; + } + $41 = HEAP32[$v>>2]|0; + $42 = HEAP32[$iDb>>2]|0; + $43 = HEAP32[$zWhere>>2]|0; + _sqlite3VdbeAddParseSchemaOp($41,$42,$43); + $44 = HEAP32[$0>>2]|0; + $45 = HEAP32[$1>>2]|0; + $46 = (_whereTempTriggers($44,$45)|0); + HEAP32[$zWhere>>2] = $46; + $47 = ($46|0)!=(0|0); + if (!($47)) { + STACKTOP = sp;return; + } + $48 = HEAP32[$v>>2]|0; + $49 = HEAP32[$zWhere>>2]|0; + _sqlite3VdbeAddParseSchemaOp($48,1,$49); + STACKTOP = sp;return; +} +function _sqlite3TriggerList($pParse,$pTab) { + $pParse = $pParse|0; + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0; + var $8 = 0, $9 = 0, $p = 0, $pList = 0, $pTmpSchema = 0, $pTrig = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $pTmpSchema = sp + 8|0; + $pList = sp + 12|0; + $p = sp + 16|0; + $pTrig = sp + 20|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pTab; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 16|0); + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + 16|0); + $8 = (($7) + 12|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$pTmpSchema>>2] = $9; + HEAP32[$pList>>2] = 0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 438|0); + $12 = HEAP8[$11>>0]|0; + $13 = ($12<<24>>24)!=(0); + if ($13) { + HEAP32[$0>>2] = 0; + $61 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($61|0); + } + $14 = HEAP32[$pTmpSchema>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 68|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($14|0)!=($17|0); + L5: do { + if ($18) { + $19 = HEAP32[$pTmpSchema>>2]|0; + $20 = (($19) + 40|0); + $21 = (($20) + 8|0); + $22 = HEAP32[$21>>2]|0; + HEAP32[$p>>2] = $22; + while(1) { + $23 = HEAP32[$p>>2]|0; + $24 = ($23|0)!=(0|0); + if (!($24)) { + break L5; + } + $25 = HEAP32[$p>>2]|0; + $26 = (($25) + 8|0); + $27 = HEAP32[$26>>2]|0; + HEAP32[$pTrig>>2] = $27; + $28 = HEAP32[$pTrig>>2]|0; + $29 = (($28) + 24|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$2>>2]|0; + $32 = (($31) + 68|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($30|0)==($33|0); + if ($34) { + $35 = HEAP32[$pTrig>>2]|0; + $36 = (($35) + 4|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$2>>2]|0; + $39 = HEAP32[$38>>2]|0; + $40 = (_sqlite3_stricmp($37,$39)|0); + $41 = (0)==($40|0); + if ($41) { + $42 = HEAP32[$pList>>2]|0; + $43 = ($42|0)!=(0|0); + if ($43) { + $44 = HEAP32[$pList>>2]|0; + $50 = $44; + } else { + $45 = HEAP32[$2>>2]|0; + $46 = (($45) + 64|0); + $47 = HEAP32[$46>>2]|0; + $50 = $47; + } + $48 = HEAP32[$pTrig>>2]|0; + $49 = (($48) + 32|0); + HEAP32[$49>>2] = $50; + $51 = HEAP32[$pTrig>>2]|0; + HEAP32[$pList>>2] = $51; + } + } + $52 = HEAP32[$p>>2]|0; + $53 = HEAP32[$52>>2]|0; + HEAP32[$p>>2] = $53; + } + } + } while(0); + $54 = HEAP32[$pList>>2]|0; + $55 = ($54|0)!=(0|0); + if ($55) { + $56 = HEAP32[$pList>>2]|0; + $60 = $56; + } else { + $57 = HEAP32[$2>>2]|0; + $58 = (($57) + 64|0); + $59 = HEAP32[$58>>2]|0; + $60 = $59; + } + HEAP32[$0>>2] = $60; + $61 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($61|0); +} +function _whereTempTriggers($pParse,$pTab) { + $pParse = $pParse|0; + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $pTempSchema = 0, $pTrig = 0, $vararg_buffer = 0, $zNew = 0, $zWhere = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 28|0; + $1 = sp + 4|0; + $pTrig = sp + 8|0; + $zWhere = sp + 12|0; + $pTempSchema = sp + 16|0; + $db = sp + 20|0; + $zNew = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$zWhere>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 16|0); + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + 16|0); + $7 = (($6) + 12|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pTempSchema>>2] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 68|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$pTempSchema>>2]|0; + $13 = ($11|0)!=($12|0); + L1: do { + if ($13) { + $14 = HEAP32[$0>>2]|0; + $15 = HEAP32[$14>>2]|0; + HEAP32[$db>>2] = $15; + $16 = HEAP32[$0>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = (_sqlite3TriggerList($16,$17)|0); + HEAP32[$pTrig>>2] = $18; + while(1) { + $19 = HEAP32[$pTrig>>2]|0; + $20 = ($19|0)!=(0|0); + if (!($20)) { + break L1; + } + $21 = HEAP32[$pTrig>>2]|0; + $22 = (($21) + 20|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$pTempSchema>>2]|0; + $25 = ($23|0)==($24|0); + if ($25) { + $26 = HEAP32[$db>>2]|0; + $27 = HEAP32[$zWhere>>2]|0; + $28 = HEAP32[$pTrig>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = (_whereOrName($26,$27,$29)|0); + HEAP32[$zWhere>>2] = $30; + } + $31 = HEAP32[$pTrig>>2]|0; + $32 = (($31) + 32|0); + $33 = HEAP32[$32>>2]|0; + HEAP32[$pTrig>>2] = $33; + } + } + } while(0); + $34 = HEAP32[$zWhere>>2]|0; + $35 = ($34|0)!=(0|0); + if (!($35)) { + $44 = HEAP32[$zWhere>>2]|0; + STACKTOP = sp;return ($44|0); + } + $36 = HEAP32[$0>>2]|0; + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$zWhere>>2]|0; + HEAP32[$vararg_buffer>>2] = $38; + $39 = (_sqlite3MPrintf($37,22072,$vararg_buffer)|0); + HEAP32[$zNew>>2] = $39; + $40 = HEAP32[$0>>2]|0; + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$zWhere>>2]|0; + _sqlite3DbFree($41,$42); + $43 = HEAP32[$zNew>>2]|0; + HEAP32[$zWhere>>2] = $43; + $44 = HEAP32[$zWhere>>2]|0; + STACKTOP = sp;return ($44|0); +} +function _whereOrName($db,$zWhere,$zConstant) { + $db = $db|0; + $zWhere = $zWhere|0; + $zConstant = $zConstant|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer1 = 0, $vararg_ptr4 = 0, $zNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer1 = sp; + $0 = sp + 20|0; + $1 = sp + 8|0; + $2 = sp + 12|0; + $zNew = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zWhere; + HEAP32[$2>>2] = $zConstant; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)!=(0|0); + $5 = HEAP32[$0>>2]|0; + if ($4) { + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer1>>2] = $8; + $vararg_ptr4 = (($vararg_buffer1) + 4|0); + HEAP32[$vararg_ptr4>>2] = $9; + $10 = (_sqlite3MPrintf($5,22104,$vararg_buffer1)|0); + HEAP32[$zNew>>2] = $10; + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$1>>2]|0; + _sqlite3DbFree($11,$12); + $13 = HEAP32[$zNew>>2]|0; + STACKTOP = sp;return ($13|0); + } else { + $6 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer1>>2] = $6; + $7 = (_sqlite3MPrintf($5,22096,$vararg_buffer1)|0); + HEAP32[$zNew>>2] = $7; + $13 = HEAP32[$zNew>>2]|0; + STACKTOP = sp;return ($13|0); + } + return 0|0; +} +function _sqlite3VdbeJumpHere($p,$addr) { + $p = $p|0; + $addr = $addr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $addr; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 32|0); + $6 = HEAP32[$5>>2]|0; + _sqlite3VdbeChangeP2($2,$3,$6); + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 32|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) - 1)|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 24|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 88|0); + HEAP32[$14>>2] = $10; + STACKTOP = sp;return; +} +function _valueFromExpr($db,$pExpr,$enc,$affinity,$ppVal,$pCtx) { + $db = $db|0; + $pExpr = $pExpr|0; + $enc = $enc|0; + $affinity = $affinity|0; + $ppVal = $ppVal|0; + $pCtx = $pCtx|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0.0, $161 = 0.0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $21 = 0, $22 = 0; + var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; + var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; + var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; + var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; + var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $nVal = 0, $negInt = 0, $op = 0, $or$cond = 0, $or$cond3 = 0, $or$cond5 = 0, $or$cond7 = 0, $pVal = 0, $rc = 0, $vararg_buffer = 0, $vararg_ptr8 = 0, $zNeg = 0, $zVal = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer = sp; + $0 = sp + 40|0; + $1 = sp + 48|0; + $2 = sp + 44|0; + $3 = sp + 56|0; + $4 = sp + 57|0; + $5 = sp + 36|0; + $6 = sp + 52|0; + $op = sp + 24|0; + $zVal = sp + 20|0; + $pVal = sp + 16|0; + $negInt = sp + 12|0; + $zNeg = sp + 8|0; + $rc = sp + 28|0; + $nVal = sp + 32|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pExpr; + HEAP8[$3>>0] = $enc; + HEAP8[$4>>0] = $affinity; + HEAP32[$5>>2] = $ppVal; + HEAP32[$6>>2] = $pCtx; + HEAP32[$zVal>>2] = 0; + HEAP32[$pVal>>2] = 0; + HEAP32[$negInt>>2] = 1; + HEAP32[$zNeg>>2] = 1784; + HEAP32[$rc>>2] = 0; + $7 = HEAP32[$2>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + $9 = HEAP32[$5>>2]|0; + HEAP32[$9>>2] = 0; + HEAP32[$0>>2] = 0; + $203 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($203|0); + } + $10 = HEAP32[$2>>2]|0; + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + HEAP32[$op>>2] = $12; + $13 = HEAP32[$op>>2]|0; + $14 = ($13|0)==(159); + if ($14) { + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 38|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + HEAP32[$op>>2] = $18; + } + $19 = HEAP32[$op>>2]|0; + $20 = ($19|0)==(157); + do { + if ($20) { + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 12|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP8[$23>>0]|0; + $25 = $24&255; + $26 = ($25|0)==(132); + if (!($26)) { + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 12|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP8[$29>>0]|0; + $31 = $30&255; + $32 = ($31|0)==(133); + if (!($32)) { + break; + } + } + $33 = HEAP32[$2>>2]|0; + $34 = (($33) + 12|0); + $35 = HEAP32[$34>>2]|0; + HEAP32[$2>>2] = $35; + $36 = HEAP32[$2>>2]|0; + $37 = HEAP8[$36>>0]|0; + $38 = $37&255; + HEAP32[$op>>2] = $38; + HEAP32[$negInt>>2] = -1; + HEAP32[$zNeg>>2] = 22120; + } + } while(0); + $39 = HEAP32[$op>>2]|0; + $40 = ($39|0)==(97); + $41 = HEAP32[$op>>2]|0; + $42 = ($41|0)==(133); + $or$cond = $40 | $42; + $43 = HEAP32[$op>>2]|0; + $44 = ($43|0)==(132); + $or$cond3 = $or$cond | $44; + do { + if ($or$cond3) { + $45 = HEAP32[$1>>2]|0; + $46 = HEAP32[$6>>2]|0; + $47 = (_valueNew($45,$46)|0); + HEAP32[$pVal>>2] = $47; + $48 = HEAP32[$pVal>>2]|0; + $49 = ($48|0)==(0|0); + if ($49) { + label = 35; + } else { + $50 = HEAP32[$2>>2]|0; + $51 = (($50) + 4|0); + $52 = HEAP32[$51>>2]|0; + $53 = $52 & 1024; + $54 = ($53|0)!=(0); + if ($54) { + $55 = HEAP32[$pVal>>2]|0; + $56 = HEAP32[$2>>2]|0; + $57 = (($56) + 8|0); + $58 = HEAP32[$57>>2]|0; + $59 = ($58|0)<(0); + $60 = $59 << 31 >> 31; + $61 = HEAP32[$negInt>>2]|0; + $62 = ($61|0)<(0); + $63 = $62 << 31 >> 31; + $64 = (___muldi3(($58|0),($60|0),($61|0),($63|0))|0); + $65 = tempRet0; + _sqlite3VdbeMemSetInt64($55,$64,$65); + } else { + $66 = HEAP32[$1>>2]|0; + $67 = HEAP32[$zNeg>>2]|0; + $68 = HEAP32[$2>>2]|0; + $69 = (($68) + 8|0); + $70 = HEAP32[$69>>2]|0; + HEAP32[$vararg_buffer>>2] = $67; + $vararg_ptr8 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr8>>2] = $70; + $71 = (_sqlite3MPrintf($66,8800,$vararg_buffer)|0); + HEAP32[$zVal>>2] = $71; + $72 = HEAP32[$zVal>>2]|0; + $73 = ($72|0)==(0|0); + if ($73) { + label = 35; + break; + } + $74 = HEAP32[$pVal>>2]|0; + $75 = HEAP32[$zVal>>2]|0; + _sqlite3ValueSetStr($74,-1,$75,1,39); + } + $76 = HEAP32[$op>>2]|0; + $77 = ($76|0)==(132); + $78 = HEAP32[$op>>2]|0; + $79 = ($78|0)==(133); + $or$cond5 = $77 | $79; + if ($or$cond5) { + $80 = HEAP8[$4>>0]|0; + $81 = $80&255; + $82 = ($81|0)==(98); + if ($82) { + $83 = HEAP32[$pVal>>2]|0; + _sqlite3ValueApplyAffinity($83,99,1); + } else { + label = 18; + } + } else { + label = 18; + } + if ((label|0) == 18) { + $84 = HEAP32[$pVal>>2]|0; + $85 = HEAP8[$4>>0]|0; + _sqlite3ValueApplyAffinity($84,$85,1); + } + $86 = HEAP32[$pVal>>2]|0; + $87 = (($86) + 28|0); + $88 = HEAP16[$87>>1]|0; + $89 = $88&65535; + $90 = $89 & 12; + $91 = ($90|0)!=(0); + if ($91) { + $92 = HEAP32[$pVal>>2]|0; + $93 = (($92) + 28|0); + $94 = HEAP16[$93>>1]|0; + $95 = $94&65535; + $96 = $95 & -3; + $97 = $96&65535; + HEAP16[$93>>1] = $97; + } + $98 = HEAP8[$3>>0]|0; + $99 = $98&255; + $100 = ($99|0)!=(1); + if ($100) { + $101 = HEAP32[$pVal>>2]|0; + $102 = HEAP8[$3>>0]|0; + $103 = $102&255; + $104 = (_sqlite3VdbeChangeEncoding($101,$103)|0); + HEAP32[$rc>>2] = $104; + label = 34; + } else { + label = 34; + } + } + } else { + $105 = HEAP32[$op>>2]|0; + $106 = ($105|0)==(157); + if ($106) { + $107 = HEAP32[$1>>2]|0; + $108 = HEAP32[$2>>2]|0; + $109 = (($108) + 12|0); + $110 = HEAP32[$109>>2]|0; + $111 = HEAP8[$3>>0]|0; + $112 = HEAP8[$4>>0]|0; + $113 = (_sqlite3ValueFromExpr($107,$110,$111,$112,$pVal)|0); + $114 = (0)==($113|0); + $115 = HEAP32[$pVal>>2]|0; + $116 = ($115|0)!=(0|0); + $or$cond7 = $114 & $116; + if (!($or$cond7)) { + label = 34; + break; + } + $117 = HEAP32[$pVal>>2]|0; + (_sqlite3VdbeMemNumerify($117)|0); + $118 = HEAP32[$pVal>>2]|0; + $119 = (($118) + 16|0); + $120 = $119; + $121 = $120; + $122 = HEAP32[$121>>2]|0; + $123 = (($120) + 4)|0; + $124 = $123; + $125 = HEAP32[$124>>2]|0; + $126 = ($122|0)==(0); + $127 = ($125|0)==(-2147483648); + $128 = $126 & $127; + $129 = HEAP32[$pVal>>2]|0; + if ($128) { + $130 = (($129) + 28|0); + $131 = HEAP16[$130>>1]|0; + $132 = $131&65535; + $133 = $132 & -5; + $134 = $133&65535; + HEAP16[$130>>1] = $134; + $135 = HEAP32[$pVal>>2]|0; + $136 = (($135) + 28|0); + $137 = HEAP16[$136>>1]|0; + $138 = $137&65535; + $139 = $138 | 8; + $140 = $139&65535; + HEAP16[$136>>1] = $140; + $141 = HEAP32[$pVal>>2]|0; + $142 = (($141) + 8|0); + HEAPF64[$142>>3] = -9223372036854775808.0; + } else { + $143 = (($129) + 16|0); + $144 = $143; + $145 = $144; + $146 = HEAP32[$145>>2]|0; + $147 = (($144) + 4)|0; + $148 = $147; + $149 = HEAP32[$148>>2]|0; + $150 = (_i64Subtract(0,0,($146|0),($149|0))|0); + $151 = tempRet0; + $152 = HEAP32[$pVal>>2]|0; + $153 = (($152) + 16|0); + $154 = $153; + $155 = $154; + HEAP32[$155>>2] = $150; + $156 = (($154) + 4)|0; + $157 = $156; + HEAP32[$157>>2] = $151; + } + $158 = HEAP32[$pVal>>2]|0; + $159 = (($158) + 8|0); + $160 = +HEAPF64[$159>>3]; + $161 = -$160; + $162 = HEAP32[$pVal>>2]|0; + $163 = (($162) + 8|0); + HEAPF64[$163>>3] = $161; + $164 = HEAP32[$pVal>>2]|0; + $165 = HEAP8[$4>>0]|0; + $166 = HEAP8[$3>>0]|0; + _sqlite3ValueApplyAffinity($164,$165,$166); + label = 34; + break; + } else { + $167 = HEAP32[$op>>2]|0; + $168 = ($167|0)==(101); + if ($168) { + $169 = HEAP32[$1>>2]|0; + $170 = HEAP32[$6>>2]|0; + $171 = (_valueNew($169,$170)|0); + HEAP32[$pVal>>2] = $171; + $172 = HEAP32[$pVal>>2]|0; + $173 = ($172|0)==(0|0); + if ($173) { + label = 35; + break; + } else { + label = 34; + break; + } + } + $174 = HEAP32[$op>>2]|0; + $175 = ($174|0)==(134); + if (!($175)) { + label = 34; + break; + } + $176 = HEAP32[$1>>2]|0; + $177 = HEAP32[$6>>2]|0; + $178 = (_valueNew($176,$177)|0); + HEAP32[$pVal>>2] = $178; + $179 = HEAP32[$pVal>>2]|0; + $180 = ($179|0)!=(0|0); + if (!($180)) { + label = 35; + break; + } + $181 = HEAP32[$2>>2]|0; + $182 = (($181) + 8|0); + $183 = HEAP32[$182>>2]|0; + $184 = (($183) + 2|0); + HEAP32[$zVal>>2] = $184; + $185 = HEAP32[$zVal>>2]|0; + $186 = (_sqlite3Strlen30($185)|0); + $187 = (($186) - 1)|0; + HEAP32[$nVal>>2] = $187; + $188 = HEAP32[$pVal>>2]|0; + $189 = HEAP32[$1>>2]|0; + $190 = HEAP32[$zVal>>2]|0; + $191 = HEAP32[$nVal>>2]|0; + $192 = (_sqlite3HexToBlob($189,$190,$191)|0); + $193 = HEAP32[$nVal>>2]|0; + $194 = (($193|0) / 2)&-1; + (_sqlite3VdbeMemSetStr($188,$192,$194,0,39)|0); + label = 34; + break; + } + } + } while(0); + if ((label|0) == 34) { + $195 = HEAP32[$pVal>>2]|0; + $196 = HEAP32[$5>>2]|0; + HEAP32[$196>>2] = $195; + $197 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $197; + $203 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($203|0); + } + else if ((label|0) == 35) { + $198 = HEAP32[$1>>2]|0; + $199 = (($198) + 64|0); + HEAP8[$199>>0] = 1; + $200 = HEAP32[$1>>2]|0; + $201 = HEAP32[$zVal>>2]|0; + _sqlite3DbFree($200,$201); + $202 = HEAP32[$pVal>>2]|0; + _sqlite3ValueFree($202); + HEAP32[$0>>2] = 7; + $203 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($203|0); + } + return 0|0; +} +function _valueNew($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$0>>2]|0; + $3 = (_sqlite3ValueNew($2)|0); + STACKTOP = sp;return ($3|0); +} +function _sqlite3ValueApplyAffinity($pVal,$affinity,$enc) { + $pVal = $pVal|0; + $affinity = $affinity|0; + $enc = $enc|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + $1 = sp + 5|0; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pVal; + HEAP8[$1>>0] = $affinity; + HEAP8[$2>>0] = $enc; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP8[$1>>0]|0; + $5 = HEAP8[$2>>0]|0; + _applyAffinity($3,$4,$5); + STACKTOP = sp;return; +} +function _sqlite3VdbeMemNumerify($pMem) { + $pMem = $pMem|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pMem; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 28|0); + $3 = HEAP16[$2>>1]|0; + $4 = $3&65535; + $5 = $4 & 13; + $6 = ($5|0)==(0); + do { + if ($6) { + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 16|0); + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 24|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 30|0); + $17 = HEAP8[$16>>0]|0; + $18 = (_sqlite3Atoi64($9,$11,$14,$17)|0); + $19 = (0)==($18|0); + $20 = HEAP32[$0>>2]|0; + if ($19) { + $21 = (($20) + 28|0); + $22 = HEAP16[$21>>1]|0; + $23 = $22&65535; + $24 = $23 & -16896; + $25 = $24 | 4; + $26 = $25&65535; + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 28|0); + HEAP16[$28>>1] = $26; + break; + } else { + $29 = (+_sqlite3VdbeRealValue($20)); + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 8|0); + HEAPF64[$31>>3] = $29; + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 28|0); + $34 = HEAP16[$33>>1]|0; + $35 = $34&65535; + $36 = $35 & -16896; + $37 = $36 | 8; + $38 = $37&65535; + $39 = HEAP32[$0>>2]|0; + $40 = (($39) + 28|0); + HEAP16[$40>>1] = $38; + $41 = HEAP32[$0>>2]|0; + _sqlite3VdbeIntegerAffinity($41); + break; + } + } + } while(0); + $42 = HEAP32[$0>>2]|0; + $43 = (($42) + 28|0); + $44 = HEAP16[$43>>1]|0; + $45 = $44&65535; + $46 = $45 & -19; + $47 = $46&65535; + HEAP16[$43>>1] = $47; + STACKTOP = sp;return 0; +} +function _sqlite3HexToBlob($db,$z,$n) { + $db = $db|0; + $z = $z|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $i = 0, $zBlob = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $zBlob = sp + 8|0; + $i = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $z; + HEAP32[$2>>2] = $n; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = (($4|0) / 2)&-1; + $6 = (($5) + 1)|0; + $7 = (_sqlite3DbMallocRaw($3,$6)|0); + HEAP32[$zBlob>>2] = $7; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + -1)|0; + HEAP32[$2>>2] = $9; + $10 = HEAP32[$zBlob>>2]|0; + $11 = ($10|0)!=(0|0); + if (!($11)) { + $42 = HEAP32[$zBlob>>2]|0; + STACKTOP = sp;return ($42|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $12 = HEAP32[$i>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = ($12|0)<($13|0); + $15 = HEAP32[$i>>2]|0; + if (!($14)) { + break; + } + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + ($15)|0); + $18 = HEAP8[$17>>0]|0; + $19 = $18 << 24 >> 24; + $20 = (_sqlite3HexToInt($19)|0); + $21 = $20&255; + $22 = $21 << 4; + $23 = HEAP32[$i>>2]|0; + $24 = (($23) + 1)|0; + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + ($24)|0); + $27 = HEAP8[$26>>0]|0; + $28 = $27 << 24 >> 24; + $29 = (_sqlite3HexToInt($28)|0); + $30 = $29&255; + $31 = $22 | $30; + $32 = $31&255; + $33 = HEAP32[$i>>2]|0; + $34 = (($33|0) / 2)&-1; + $35 = HEAP32[$zBlob>>2]|0; + $36 = (($35) + ($34)|0); + HEAP8[$36>>0] = $32; + $37 = HEAP32[$i>>2]|0; + $38 = (($37) + 2)|0; + HEAP32[$i>>2] = $38; + } + $39 = (($15|0) / 2)&-1; + $40 = HEAP32[$zBlob>>2]|0; + $41 = (($40) + ($39)|0); + HEAP8[$41>>0] = 0; + $42 = HEAP32[$zBlob>>2]|0; + STACKTOP = sp;return ($42|0); +} +function _sqlite3VdbeIntegerAffinity($pMem) { + $pMem = $pMem|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0.0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0.0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pMem; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = +HEAPF64[$2>>3]; + $4 = (_doubleToInt64($3)|0); + $5 = tempRet0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 16|0); + $8 = $7; + $9 = $8; + HEAP32[$9>>2] = $4; + $10 = (($8) + 4)|0; + $11 = $10; + HEAP32[$11>>2] = $5; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 8|0); + $14 = +HEAPF64[$13>>3]; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 16|0); + $17 = $16; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (($17) + 4)|0; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = (+($19>>>0)) + (4294967296.0*(+($22|0))); + $24 = $14 == $23; + if (!($24)) { + STACKTOP = sp;return; + } + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 16|0); + $27 = $26; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (($27) + 4)|0; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = ($32|0)>(-2147483648); + $34 = ($32|0)==(-2147483648); + $35 = ($29>>>0)>(0); + $36 = $34 & $35; + $37 = $33 | $36; + if (!($37)) { + STACKTOP = sp;return; + } + $38 = HEAP32[$0>>2]|0; + $39 = (($38) + 16|0); + $40 = $39; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (($40) + 4)|0; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = ($45|0)<(2147483647); + $47 = ($45|0)==(2147483647); + $48 = ($42>>>0)<(4294967295); + $49 = $47 & $48; + $50 = $46 | $49; + if (!($50)) { + STACKTOP = sp;return; + } + $51 = HEAP32[$0>>2]|0; + $52 = (($51) + 28|0); + $53 = HEAP16[$52>>1]|0; + $54 = $53&65535; + $55 = $54 | 4; + $56 = $55&65535; + HEAP16[$52>>1] = $56; + STACKTOP = sp;return; +} +function _doubleToInt64($r) { + $r = +$r; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0.0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0.0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + HEAPF64[$1>>3] = $r; + $2 = +HEAPF64[$1>>3]; + $3 = $2 <= -9223372036854775808.0; + do { + if ($3) { + $4 = $0; + $5 = $4; + HEAP32[$5>>2] = 0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = -2147483648; + } else { + $8 = +HEAPF64[$1>>3]; + $9 = $8 >= 9223372036854775808.0; + if ($9) { + $10 = $0; + $11 = $10; + HEAP32[$11>>2] = -1; + $12 = (($10) + 4)|0; + $13 = $12; + HEAP32[$13>>2] = 2147483647; + break; + } else { + $14 = +HEAPF64[$1>>3]; + $15 = (~~$14)>>>0; + $16 = +Math_abs($14) >= 1.0 ? $14 > 0.0 ? (Math_min(+Math_floor($14 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($14 - +(~~$14 >>> 0)) / 4294967296.0) >>> 0 : 0; + $17 = $0; + $18 = $17; + HEAP32[$18>>2] = $15; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = $16; + break; + } + } + } while(0); + $21 = $0; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (($21) + 4)|0; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + tempRet0 = $26; + STACKTOP = sp;return ($23|0); +} +function _applyAffinity($pRec,$affinity,$enc) { + $pRec = $pRec|0; + $affinity = $affinity|0; + $enc = $enc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + $1 = sp + 5|0; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pRec; + HEAP8[$1>>0] = $affinity; + HEAP8[$2>>0] = $enc; + $3 = HEAP8[$1>>0]|0; + $4 = $3 << 24 >> 24; + $5 = ($4|0)==(97); + if ($5) { + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 28|0); + $8 = HEAP16[$7>>1]|0; + $9 = $8&65535; + $10 = $9 & 2; + $11 = (0)==($10|0); + if ($11) { + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 28|0); + $14 = HEAP16[$13>>1]|0; + $15 = $14&65535; + $16 = $15 & 12; + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$0>>2]|0; + $19 = HEAP8[$2>>0]|0; + $20 = $19&255; + (_sqlite3VdbeMemStringify($18,$20)|0); + } + } + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 28|0); + $23 = HEAP16[$22>>1]|0; + $24 = $23&65535; + $25 = $24 & -13; + $26 = $25&65535; + HEAP16[$22>>1] = $26; + STACKTOP = sp;return; + } + $27 = HEAP8[$1>>0]|0; + $28 = $27 << 24 >> 24; + $29 = ($28|0)!=(98); + if (!($29)) { + STACKTOP = sp;return; + } + $30 = HEAP32[$0>>2]|0; + _applyNumericAffinity($30); + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 28|0); + $33 = HEAP16[$32>>1]|0; + $34 = $33&65535; + $35 = $34 & 8; + $36 = ($35|0)!=(0); + if (!($36)) { + STACKTOP = sp;return; + } + $37 = HEAP32[$0>>2]|0; + _sqlite3VdbeIntegerAffinity($37); + STACKTOP = sp;return; +} +function _sqlite3VdbeMemStringify($pMem,$enc) { + $pMem = $pMem|0; + $enc = $enc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $fg = 0, $nByte = 0, $rc = 0, $vararg_buffer1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer1 = sp; + $0 = sp + 28|0; + $1 = sp + 8|0; + $2 = sp + 12|0; + $rc = sp + 16|0; + $fg = sp + 20|0; + $nByte = sp + 24|0; + HEAP32[$1>>2] = $pMem; + HEAP32[$2>>2] = $enc; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 28|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5&65535; + HEAP32[$fg>>2] = $6; + HEAP32[$nByte>>2] = 32; + $7 = HEAP32[$1>>2]|0; + $8 = (_sqlite3VdbeMemGrow($7,32,0)|0); + $9 = ($8|0)!=(0); + if ($9) { + HEAP32[$0>>2] = 7; + $47 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($47|0); + } + $10 = HEAP32[$fg>>2]|0; + $11 = $10 & 4; + $12 = ($11|0)!=(0); + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$1>>2]|0; + if ($12) { + $17 = (($16) + 16|0); + $18 = $17; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = (($18) + 4)|0; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = $vararg_buffer1; + $25 = $24; + HEAP32[$25>>2] = $20; + $26 = (($24) + 4)|0; + $27 = $26; + HEAP32[$27>>2] = $23; + (_sqlite3_snprintf(32,$15,15992,$vararg_buffer1)|0); + } else { + $28 = (($16) + 8|0); + $29 = +HEAPF64[$28>>3]; + HEAPF64[tempDoublePtr>>3]=$29;HEAP32[$vararg_buffer1>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_buffer1+4>>2]=HEAP32[tempDoublePtr+4>>2]; + (_sqlite3_snprintf(32,$15,16344,$vararg_buffer1)|0); + } + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 4|0); + $32 = HEAP32[$31>>2]|0; + $33 = (_sqlite3Strlen30($32)|0); + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 24|0); + HEAP32[$35>>2] = $33; + $36 = HEAP32[$1>>2]|0; + $37 = (($36) + 30|0); + HEAP8[$37>>0] = 1; + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 28|0); + $40 = HEAP16[$39>>1]|0; + $41 = $40&65535; + $42 = $41 | 514; + $43 = $42&65535; + HEAP16[$39>>1] = $43; + $44 = HEAP32[$1>>2]|0; + $45 = HEAP32[$2>>2]|0; + (_sqlite3VdbeChangeEncoding($44,$45)|0); + $46 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $46; + $47 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($47|0); +} +function _sqlite3FindIndex($db,$zName,$zDb) { + $db = $db|0; + $zName = $zName|0; + $zDb = $zDb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $i = 0, $j = 0, $nName = 0, $p = 0, $pSchema = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + $i = sp + 12|0; + $nName = sp + 16|0; + $j = sp + 20|0; + $pSchema = sp + 24|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zName; + HEAP32[$2>>2] = $zDb; + HEAP32[$p>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3Strlen30($3)|0); + HEAP32[$nName>>2] = $4; + HEAP32[$i>>2] = 0; + while(1) { + $5 = HEAP32[$i>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 20|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($5|0)<($8|0); + if (!($9)) { + label = 7; + break; + } + $10 = HEAP32[$i>>2]|0; + $11 = ($10|0)<(2); + $12 = HEAP32[$i>>2]|0; + $13 = $12 ^ 1; + $14 = $11 ? $13 : $12; + HEAP32[$j>>2] = $14; + $15 = HEAP32[$j>>2]|0; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 16|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + ($15<<4)|0); + $20 = (($19) + 12|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$pSchema>>2] = $21; + $22 = HEAP32[$2>>2]|0; + $23 = ($22|0)!=(0|0); + if ($23) { + $24 = HEAP32[$2>>2]|0; + $25 = HEAP32[$j>>2]|0; + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 16|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + ($25<<4)|0); + $30 = HEAP32[$29>>2]|0; + $31 = (_sqlite3_stricmp($24,$30)|0); + $32 = ($31|0)!=(0); + if (!($32)) { + label = 5; + } + } else { + label = 5; + } + if ((label|0) == 5) { + label = 0; + $33 = HEAP32[$pSchema>>2]|0; + $34 = (($33) + 24|0); + $35 = HEAP32[$1>>2]|0; + $36 = HEAP32[$nName>>2]|0; + $37 = (_sqlite3HashFind($34,$35,$36)|0); + HEAP32[$p>>2] = $37; + $38 = HEAP32[$p>>2]|0; + $39 = ($38|0)!=(0|0); + if ($39) { + label = 7; + break; + } + } + $40 = HEAP32[$i>>2]|0; + $41 = (($40) + 1)|0; + HEAP32[$i>>2] = $41; + } + if ((label|0) == 7) { + $42 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($42|0); + } + return 0|0; +} +function _sqlite3CheckObjectName($pParse,$zName) { + $pParse = $pParse|0; + $zName = $zName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 12|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $zName; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 132|0); + $6 = (($5) + 5|0); + $7 = HEAP8[$6>>0]|0; + $8 = ($7<<24>>24)!=(0); + if (!($8)) { + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 18|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = ($12|0)==(0); + if ($13) { + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + 24|0); + $17 = HEAP32[$16>>2]|0; + $18 = $17 & 2048; + $19 = ($18|0)==(0); + if ($19) { + $20 = HEAP32[$2>>2]|0; + $21 = (_sqlite3_strnicmp($20,21672,7)|0); + $22 = (0)==($21|0); + if ($22) { + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer>>2] = $24; + _sqlite3ErrorMsg($23,24584,$vararg_buffer); + HEAP32[$0>>2] = 1; + $25 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($25|0); + } + } + } + } + HEAP32[$0>>2] = 0; + $25 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($25|0); +} +function _sqlite3ViewGetColumnNames($pParse,$pTable) { + $pParse = $pParse|0; + $pTable = $pTable|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $enableLookaside = 0, $n = 0, $nErr = 0, $pSel = 0, $pSelTab = 0, $vararg_buffer = 0, $xAuth = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $pSelTab = sp + 24|0; + $pSel = sp + 20|0; + $nErr = sp + 12|0; + $n = sp + 8|0; + $db = sp + 4|0; + $xAuth = sp + 16|0; + $enableLookaside = sp + 40|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pTable; + HEAP32[$nErr>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = (_sqlite3VtabCallConnect($5,$6)|0); + $8 = ($7|0)!=(0); + if ($8) { + HEAP32[$0>>2] = 1; + $104 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($104|0); + } + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 44|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = $12 & 16; + $14 = ($13|0)!=(0); + if ($14) { + HEAP32[$0>>2] = 0; + $104 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($104|0); + } + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 38|0); + $17 = HEAP16[$16>>1]|0; + $18 = $17 << 16 >> 16; + $19 = ($18|0)>(0); + if ($19) { + HEAP32[$0>>2] = 0; + $104 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($104|0); + } + $20 = HEAP32[$2>>2]|0; + $21 = (($20) + 38|0); + $22 = HEAP16[$21>>1]|0; + $23 = $22 << 16 >> 16; + $24 = ($23|0)<(0); + if ($24) { + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$2>>2]|0; + $27 = HEAP32[$26>>2]|0; + HEAP32[$vararg_buffer>>2] = $27; + _sqlite3ErrorMsg($25,22856,$vararg_buffer); + HEAP32[$0>>2] = 1; + $104 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($104|0); + } + $28 = HEAP32[$db>>2]|0; + $29 = HEAP32[$2>>2]|0; + $30 = (($29) + 12|0); + $31 = HEAP32[$30>>2]|0; + $32 = (_sqlite3SelectDup($28,$31,0)|0); + HEAP32[$pSel>>2] = $32; + $33 = HEAP32[$pSel>>2]|0; + $34 = ($33|0)!=(0|0); + if ($34) { + $35 = HEAP32[$db>>2]|0; + $36 = (($35) + 240|0); + $37 = (($36) + 2|0); + $38 = HEAP8[$37>>0]|0; + HEAP8[$enableLookaside>>0] = $38; + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 68|0); + $41 = HEAP32[$40>>2]|0; + HEAP32[$n>>2] = $41; + $42 = HEAP32[$1>>2]|0; + $43 = HEAP32[$pSel>>2]|0; + $44 = (($43) + 32|0); + $45 = HEAP32[$44>>2]|0; + _sqlite3SrcListAssignCursors($42,$45); + $46 = HEAP32[$2>>2]|0; + $47 = (($46) + 38|0); + HEAP16[$47>>1] = -1; + $48 = HEAP32[$db>>2]|0; + $49 = (($48) + 240|0); + $50 = (($49) + 2|0); + HEAP8[$50>>0] = 0; + $51 = HEAP32[$db>>2]|0; + $52 = (($51) + 276|0); + $53 = HEAP32[$52>>2]|0; + HEAP32[$xAuth>>2] = $53; + $54 = HEAP32[$db>>2]|0; + $55 = (($54) + 276|0); + HEAP32[$55>>2] = 0; + $56 = HEAP32[$1>>2]|0; + $57 = HEAP32[$pSel>>2]|0; + $58 = (_sqlite3ResultSetOfSelect($56,$57)|0); + HEAP32[$pSelTab>>2] = $58; + $59 = HEAP32[$xAuth>>2]|0; + $60 = HEAP32[$db>>2]|0; + $61 = (($60) + 276|0); + HEAP32[$61>>2] = $59; + $62 = HEAP8[$enableLookaside>>0]|0; + $63 = HEAP32[$db>>2]|0; + $64 = (($63) + 240|0); + $65 = (($64) + 2|0); + HEAP8[$65>>0] = $62; + $66 = HEAP32[$n>>2]|0; + $67 = HEAP32[$1>>2]|0; + $68 = (($67) + 68|0); + HEAP32[$68>>2] = $66; + $69 = HEAP32[$pSelTab>>2]|0; + $70 = ($69|0)!=(0|0); + if ($70) { + $71 = HEAP32[$pSelTab>>2]|0; + $72 = (($71) + 38|0); + $73 = HEAP16[$72>>1]|0; + $74 = HEAP32[$2>>2]|0; + $75 = (($74) + 38|0); + HEAP16[$75>>1] = $73; + $76 = HEAP32[$pSelTab>>2]|0; + $77 = (($76) + 4|0); + $78 = HEAP32[$77>>2]|0; + $79 = HEAP32[$2>>2]|0; + $80 = (($79) + 4|0); + HEAP32[$80>>2] = $78; + $81 = HEAP32[$pSelTab>>2]|0; + $82 = (($81) + 38|0); + HEAP16[$82>>1] = 0; + $83 = HEAP32[$pSelTab>>2]|0; + $84 = (($83) + 4|0); + HEAP32[$84>>2] = 0; + $85 = HEAP32[$db>>2]|0; + $86 = HEAP32[$pSelTab>>2]|0; + _sqlite3DeleteTable($85,$86); + $87 = HEAP32[$2>>2]|0; + $88 = (($87) + 68|0); + $89 = HEAP32[$88>>2]|0; + $90 = (($89) + 78|0); + $91 = HEAP16[$90>>1]|0; + $92 = $91&65535; + $93 = $92 | 2; + $94 = $93&65535; + HEAP16[$90>>1] = $94; + } else { + $95 = HEAP32[$2>>2]|0; + $96 = (($95) + 38|0); + HEAP16[$96>>1] = 0; + $97 = HEAP32[$nErr>>2]|0; + $98 = (($97) + 1)|0; + HEAP32[$nErr>>2] = $98; + } + $99 = HEAP32[$db>>2]|0; + $100 = HEAP32[$pSel>>2]|0; + _sqlite3SelectDelete($99,$100); + } else { + $101 = HEAP32[$nErr>>2]|0; + $102 = (($101) + 1)|0; + HEAP32[$nErr>>2] = $102; + } + $103 = HEAP32[$nErr>>2]|0; + HEAP32[$0>>2] = $103; + $104 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($104|0); +} +function _sqlite3GetVTable($db,$pTab) { + $db = $db|0; + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pVtab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pVtab = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pTab; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 60|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pVtab>>2] = $4; + while(1) { + $5 = HEAP32[$pVtab>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + label = 5; + break; + } + $7 = HEAP32[$pVtab>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = ($8|0)!=($9|0); + if (!($10)) { + label = 5; + break; + } + $11 = HEAP32[$pVtab>>2]|0; + $12 = (($11) + 24|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pVtab>>2] = $13; + } + if ((label|0) == 5) { + $14 = HEAP32[$pVtab>>2]|0; + STACKTOP = sp;return ($14|0); + } + return 0|0; +} +function _sqlite3MayAbort($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pToplevel = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pToplevel = sp; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 408|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + $5 = HEAP32[$0>>2]|0; + if ($4) { + $6 = (($5) + 408|0); + $7 = HEAP32[$6>>2]|0; + $8 = $7; + } else { + $8 = $5; + } + HEAP32[$pToplevel>>2] = $8; + $9 = HEAP32[$pToplevel>>2]|0; + $10 = (($9) + 21|0); + HEAP8[$10>>0] = 1; + STACKTOP = sp;return; +} +function _whereForeignKeys($pParse,$pTab) { + $pParse = $pParse|0; + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $zWhere = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $p = sp + 4|0; + $zWhere = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$zWhere>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = (_sqlite3FkReferences($2)|0); + HEAP32[$p>>2] = $3; + while(1) { + $4 = HEAP32[$p>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + break; + } + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$zWhere>>2]|0; + $9 = HEAP32[$p>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = (_whereOrName($7,$8,$11)|0); + HEAP32[$zWhere>>2] = $12; + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 12|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$p>>2] = $15; + } + $16 = HEAP32[$zWhere>>2]|0; + STACKTOP = sp;return ($16|0); +} +function _sqlite3FkReferences($pTab) { + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $nName = sp; + HEAP32[$0>>2] = $pTab; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + $3 = (_sqlite3Strlen30($2)|0); + HEAP32[$nName>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 68|0); + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + 56|0); + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$nName>>2]|0; + $11 = (_sqlite3HashFind($7,$9,$10)|0); + STACKTOP = sp;return ($11|0); +} +function _sqlite3VtabCallConnect($pParse,$pTab) { + $pParse = $pParse|0; + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $pMod = 0, $rc = 0, $vararg_buffer1 = 0, $zErr = 0, $zMod = 0, $zModule = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer1 = sp; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $db = sp + 20|0; + $zMod = sp + 36|0; + $pMod = sp + 8|0; + $rc = sp + 4|0; + $zModule = sp + 12|0; + $zErr = sp + 16|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pTab; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + $5 = HEAP32[$2>>2]|0; + $6 = (($5) + 44|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = $8 & 16; + $10 = ($9|0)==(0); + if (!($10)) { + $11 = HEAP32[$db>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = (_sqlite3GetVTable($11,$12)|0); + $14 = ($13|0)!=(0|0); + if (!($14)) { + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 56|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$17>>2]|0; + HEAP32[$zMod>>2] = $18; + $19 = HEAP32[$db>>2]|0; + $20 = (($19) + 300|0); + $21 = HEAP32[$zMod>>2]|0; + $22 = HEAP32[$zMod>>2]|0; + $23 = (_sqlite3Strlen30($22)|0); + $24 = (_sqlite3HashFind($20,$21,$23)|0); + HEAP32[$pMod>>2] = $24; + $25 = HEAP32[$pMod>>2]|0; + $26 = ($25|0)!=(0|0); + if ($26) { + HEAP32[$zErr>>2] = 0; + $33 = HEAP32[$db>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = HEAP32[$pMod>>2]|0; + $36 = HEAP32[$pMod>>2]|0; + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + 8|0); + $39 = HEAP32[$38>>2]|0; + $40 = (_vtabCallConstructor($33,$34,$35,$39,$zErr)|0); + HEAP32[$rc>>2] = $40; + $41 = HEAP32[$rc>>2]|0; + $42 = ($41|0)!=(0); + if ($42) { + $43 = HEAP32[$1>>2]|0; + $44 = HEAP32[$zErr>>2]|0; + HEAP32[$vararg_buffer1>>2] = $44; + _sqlite3ErrorMsg($43,1768,$vararg_buffer1); + } + $45 = HEAP32[$db>>2]|0; + $46 = HEAP32[$zErr>>2]|0; + _sqlite3DbFree($45,$46); + } else { + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 56|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$29>>2]|0; + HEAP32[$zModule>>2] = $30; + $31 = HEAP32[$1>>2]|0; + $32 = HEAP32[$zModule>>2]|0; + HEAP32[$vararg_buffer1>>2] = $32; + _sqlite3ErrorMsg($31,24464,$vararg_buffer1); + HEAP32[$rc>>2] = 1; + } + $47 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $47; + $48 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($48|0); + } + } + HEAP32[$0>>2] = 0; + $48 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($48|0); +} +function _sqlite3SelectDup($db,$p,$flags) { + $db = $db|0; + $p = $p|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $14 = 0, $15 = 0; + var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $pNew = 0, $pPrior = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pNew = sp + 12|0; + $pPrior = sp + 16|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $flags; + $4 = HEAP32[$2>>2]|0; + $5 = ($4|0)==(0|0); + if ($5) { + HEAP32[$0>>2] = 0; + $131 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($131|0); + } + $6 = HEAP32[$1>>2]|0; + $7 = (_sqlite3DbMallocRaw($6,72)|0); + HEAP32[$pNew>>2] = $7; + $8 = HEAP32[$pNew>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + HEAP32[$0>>2] = 0; + $131 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($131|0); + } + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$3>>2]|0; + $14 = (_sqlite3ExprListDup($10,$12,$13)|0); + $15 = HEAP32[$pNew>>2]|0; + HEAP32[$15>>2] = $14; + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = (($17) + 32|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$3>>2]|0; + $21 = (_sqlite3SrcListDup($16,$19,$20)|0); + $22 = HEAP32[$pNew>>2]|0; + $23 = (($22) + 32|0); + HEAP32[$23>>2] = $21; + $24 = HEAP32[$1>>2]|0; + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 36|0); + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$3>>2]|0; + $29 = (_sqlite3ExprDup($24,$27,$28)|0); + $30 = HEAP32[$pNew>>2]|0; + $31 = (($30) + 36|0); + HEAP32[$31>>2] = $29; + $32 = HEAP32[$1>>2]|0; + $33 = HEAP32[$2>>2]|0; + $34 = (($33) + 40|0); + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$3>>2]|0; + $37 = (_sqlite3ExprListDup($32,$35,$36)|0); + $38 = HEAP32[$pNew>>2]|0; + $39 = (($38) + 40|0); + HEAP32[$39>>2] = $37; + $40 = HEAP32[$1>>2]|0; + $41 = HEAP32[$2>>2]|0; + $42 = (($41) + 44|0); + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$3>>2]|0; + $45 = (_sqlite3ExprDup($40,$43,$44)|0); + $46 = HEAP32[$pNew>>2]|0; + $47 = (($46) + 44|0); + HEAP32[$47>>2] = $45; + $48 = HEAP32[$1>>2]|0; + $49 = HEAP32[$2>>2]|0; + $50 = (($49) + 48|0); + $51 = HEAP32[$50>>2]|0; + $52 = HEAP32[$3>>2]|0; + $53 = (_sqlite3ExprListDup($48,$51,$52)|0); + $54 = HEAP32[$pNew>>2]|0; + $55 = (($54) + 48|0); + HEAP32[$55>>2] = $53; + $56 = HEAP32[$2>>2]|0; + $57 = (($56) + 4|0); + $58 = HEAP8[$57>>0]|0; + $59 = HEAP32[$pNew>>2]|0; + $60 = (($59) + 4|0); + HEAP8[$60>>0] = $58; + $61 = HEAP32[$1>>2]|0; + $62 = HEAP32[$2>>2]|0; + $63 = (($62) + 52|0); + $64 = HEAP32[$63>>2]|0; + $65 = HEAP32[$3>>2]|0; + $66 = (_sqlite3SelectDup($61,$64,$65)|0); + HEAP32[$pPrior>>2] = $66; + $67 = HEAP32[$pNew>>2]|0; + $68 = (($67) + 52|0); + HEAP32[$68>>2] = $66; + $69 = HEAP32[$pPrior>>2]|0; + $70 = ($69|0)!=(0|0); + if ($70) { + $71 = HEAP32[$pNew>>2]|0; + $72 = HEAP32[$pPrior>>2]|0; + $73 = (($72) + 56|0); + HEAP32[$73>>2] = $71; + } + $74 = HEAP32[$pNew>>2]|0; + $75 = (($74) + 56|0); + HEAP32[$75>>2] = 0; + $76 = HEAP32[$1>>2]|0; + $77 = HEAP32[$2>>2]|0; + $78 = (($77) + 60|0); + $79 = HEAP32[$78>>2]|0; + $80 = HEAP32[$3>>2]|0; + $81 = (_sqlite3ExprDup($76,$79,$80)|0); + $82 = HEAP32[$pNew>>2]|0; + $83 = (($82) + 60|0); + HEAP32[$83>>2] = $81; + $84 = HEAP32[$1>>2]|0; + $85 = HEAP32[$2>>2]|0; + $86 = (($85) + 64|0); + $87 = HEAP32[$86>>2]|0; + $88 = HEAP32[$3>>2]|0; + $89 = (_sqlite3ExprDup($84,$87,$88)|0); + $90 = HEAP32[$pNew>>2]|0; + $91 = (($90) + 64|0); + HEAP32[$91>>2] = $89; + $92 = HEAP32[$pNew>>2]|0; + $93 = (($92) + 8|0); + HEAP32[$93>>2] = 0; + $94 = HEAP32[$pNew>>2]|0; + $95 = (($94) + 12|0); + HEAP32[$95>>2] = 0; + $96 = HEAP32[$2>>2]|0; + $97 = (($96) + 6|0); + $98 = HEAP16[$97>>1]|0; + $99 = $98&65535; + $100 = $99 & -9; + $101 = $100&65535; + $102 = HEAP32[$pNew>>2]|0; + $103 = (($102) + 6|0); + HEAP16[$103>>1] = $101; + $104 = HEAP32[$pNew>>2]|0; + $105 = (($104) + 16|0); + HEAP32[$105>>2] = -1; + $106 = HEAP32[$pNew>>2]|0; + $107 = (($106) + 16|0); + $108 = (($107) + 4|0); + HEAP32[$108>>2] = -1; + $109 = HEAP32[$2>>2]|0; + $110 = (($109) + 24|0); + $111 = $110; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = (($111) + 4)|0; + $115 = $114; + $116 = HEAP32[$115>>2]|0; + $117 = HEAP32[$pNew>>2]|0; + $118 = (($117) + 24|0); + $119 = $118; + $120 = $119; + HEAP32[$120>>2] = $113; + $121 = (($119) + 4)|0; + $122 = $121; + HEAP32[$122>>2] = $116; + $123 = HEAP32[$1>>2]|0; + $124 = HEAP32[$2>>2]|0; + $125 = (($124) + 68|0); + $126 = HEAP32[$125>>2]|0; + $127 = (_withDup($123,$126)|0); + $128 = HEAP32[$pNew>>2]|0; + $129 = (($128) + 68|0); + HEAP32[$129>>2] = $127; + $130 = HEAP32[$pNew>>2]|0; + HEAP32[$0>>2] = $130; + $131 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($131|0); +} +function _sqlite3SrcListAssignCursors($pParse,$pList) { + $pParse = $pParse|0; + $pList = $pList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pItem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $i = sp + 4|0; + $pItem = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pList; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 8|0); + HEAP32[$pItem>>2] = $5; + while(1) { + $6 = HEAP32[$i>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = ($6|0)<($8|0); + if (!($9)) { + label = 8; + break; + } + $10 = HEAP32[$pItem>>2]|0; + $11 = (($10) + 40|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)>=(0); + if ($13) { + label = 8; + break; + } + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 68|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + 1)|0; + HEAP32[$15>>2] = $17; + $18 = HEAP32[$pItem>>2]|0; + $19 = (($18) + 40|0); + HEAP32[$19>>2] = $16; + $20 = HEAP32[$pItem>>2]|0; + $21 = (($20) + 20|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)!=(0|0); + if ($23) { + $24 = HEAP32[$0>>2]|0; + $25 = HEAP32[$pItem>>2]|0; + $26 = (($25) + 20|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + 32|0); + $29 = HEAP32[$28>>2]|0; + _sqlite3SrcListAssignCursors($24,$29); + } + $30 = HEAP32[$i>>2]|0; + $31 = (($30) + 1)|0; + HEAP32[$i>>2] = $31; + $32 = HEAP32[$pItem>>2]|0; + $33 = (($32) + 72|0); + HEAP32[$pItem>>2] = $33; + } + if ((label|0) == 8) { + STACKTOP = sp;return; + } +} +function _sqlite3ResultSetOfSelect($pParse,$pSelect) { + $pParse = $pParse|0; + $pSelect = $pSelect|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; + var $9 = 0, $db = 0, $pTab = 0, $savedFlags = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $pTab = sp + 8|0; + $db = sp + 12|0; + $savedFlags = sp + 16|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pSelect; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + $5 = HEAP32[$db>>2]|0; + $6 = (($5) + 24|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$savedFlags>>2] = $7; + $8 = HEAP32[$db>>2]|0; + $9 = (($8) + 24|0); + $10 = HEAP32[$9>>2]|0; + $11 = $10 & -33; + HEAP32[$9>>2] = $11; + $12 = HEAP32[$db>>2]|0; + $13 = (($12) + 24|0); + $14 = HEAP32[$13>>2]|0; + $15 = $14 | 64; + HEAP32[$13>>2] = $15; + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$2>>2]|0; + _sqlite3SelectPrep($16,$17,0); + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 64|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)!=(0); + if ($21) { + HEAP32[$0>>2] = 0; + $60 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($60|0); + } + while(1) { + $22 = HEAP32[$2>>2]|0; + $23 = (($22) + 52|0); + $24 = HEAP32[$23>>2]|0; + $25 = ($24|0)!=(0|0); + if (!($25)) { + break; + } + $26 = HEAP32[$2>>2]|0; + $27 = (($26) + 52|0); + $28 = HEAP32[$27>>2]|0; + HEAP32[$2>>2] = $28; + } + $29 = HEAP32[$savedFlags>>2]|0; + $30 = HEAP32[$db>>2]|0; + $31 = (($30) + 24|0); + HEAP32[$31>>2] = $29; + $32 = HEAP32[$db>>2]|0; + $33 = (_sqlite3DbMallocZero($32,76)|0); + HEAP32[$pTab>>2] = $33; + $34 = HEAP32[$pTab>>2]|0; + $35 = ($34|0)==(0|0); + if ($35) { + HEAP32[$0>>2] = 0; + $60 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($60|0); + } + $36 = HEAP32[$pTab>>2]|0; + $37 = (($36) + 40|0); + HEAP16[$37>>1] = 1; + $38 = HEAP32[$pTab>>2]|0; + HEAP32[$38>>2] = 0; + $39 = HEAP32[$pTab>>2]|0; + $40 = (($39) + 28|0); + HEAP16[$40>>1] = 200; + $41 = HEAP32[$1>>2]|0; + $42 = HEAP32[$2>>2]|0; + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$pTab>>2]|0; + $45 = (($44) + 38|0); + $46 = HEAP32[$pTab>>2]|0; + $47 = (($46) + 4|0); + (_selectColumnsFromExprList($41,$43,$45,$47)|0); + $48 = HEAP32[$1>>2]|0; + $49 = HEAP32[$pTab>>2]|0; + $50 = HEAP32[$2>>2]|0; + _selectAddColumnTypeAndCollation($48,$49,$50); + $51 = HEAP32[$pTab>>2]|0; + $52 = (($51) + 36|0); + HEAP16[$52>>1] = -1; + $53 = HEAP32[$db>>2]|0; + $54 = (($53) + 64|0); + $55 = HEAP8[$54>>0]|0; + $56 = ($55<<24>>24)!=(0); + if ($56) { + $57 = HEAP32[$db>>2]|0; + $58 = HEAP32[$pTab>>2]|0; + _sqlite3DeleteTable($57,$58); + HEAP32[$0>>2] = 0; + $60 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($60|0); + } else { + $59 = HEAP32[$pTab>>2]|0; + HEAP32[$0>>2] = $59; + $60 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($60|0); + } + return 0|0; +} +function _sqlite3SelectPrep($pParse,$p,$pOuterNC) { + $pParse = $pParse|0; + $p = $p|0; + $pOuterNC = $pOuterNC|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $db = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $db = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pOuterNC; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + STACKTOP = sp;return; + } + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$db>>2]|0; + $8 = (($7) + 64|0); + $9 = HEAP8[$8>>0]|0; + $10 = ($9<<24>>24)!=(0); + if ($10) { + STACKTOP = sp;return; + } + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 6|0); + $13 = HEAP16[$12>>1]|0; + $14 = $13&65535; + $15 = $14 & 32; + $16 = ($15|0)!=(0); + if ($16) { + STACKTOP = sp;return; + } + $17 = HEAP32[$0>>2]|0; + $18 = HEAP32[$1>>2]|0; + _sqlite3SelectExpand($17,$18); + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 64|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)!=(0); + if ($22) { + STACKTOP = sp;return; + } + $23 = HEAP32[$db>>2]|0; + $24 = (($23) + 64|0); + $25 = HEAP8[$24>>0]|0; + $26 = $25&255; + $27 = ($26|0)!=(0); + if ($27) { + STACKTOP = sp;return; + } + $28 = HEAP32[$0>>2]|0; + $29 = HEAP32[$1>>2]|0; + $30 = HEAP32[$2>>2]|0; + _sqlite3ResolveSelectNames($28,$29,$30); + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 64|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($33|0)!=(0); + if ($34) { + STACKTOP = sp;return; + } + $35 = HEAP32[$db>>2]|0; + $36 = (($35) + 64|0); + $37 = HEAP8[$36>>0]|0; + $38 = $37&255; + $39 = ($38|0)!=(0); + if ($39) { + STACKTOP = sp;return; + } + $40 = HEAP32[$0>>2]|0; + $41 = HEAP32[$1>>2]|0; + _sqlite3SelectAddTypeInfo($40,$41); + STACKTOP = sp;return; +} +function _selectColumnsFromExprList($pParse,$pEList,$pnCol,$paCol) { + $pParse = $pParse|0; + $pEList = $pEList|0; + $pnCol = $pnCol|0; + $paCol = $paCol|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $aCol = 0, $cnt = 0, $db = 0, $i = 0, $iCol = 0, $j = 0, $k = 0, $nCol = 0, $nName = 0, $p = 0, $pCol = 0, $pColExpr = 0, $pTab = 0, $vararg_buffer7 = 0, $vararg_ptr10 = 0, $zName = 0, $zNewName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $vararg_buffer7 = sp; + $0 = sp + 80|0; + $1 = sp + 76|0; + $2 = sp + 72|0; + $3 = sp + 68|0; + $4 = sp + 64|0; + $db = sp + 60|0; + $i = sp + 56|0; + $j = sp + 52|0; + $cnt = sp + 48|0; + $aCol = sp + 84|0; + $pCol = sp + 20|0; + $nCol = sp + 16|0; + $p = sp + 8|0; + $zName = sp + 12|0; + $nName = sp + 40|0; + $pColExpr = sp + 24|0; + $pTab = sp + 28|0; + $iCol = sp + 32|0; + $zNewName = sp + 36|0; + $k = sp + 44|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pEList; + HEAP32[$3>>2] = $pnCol; + HEAP32[$4>>2] = $paCol; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$2>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$nCol>>2] = $10; + $11 = HEAP32[$db>>2]|0; + $12 = HEAP32[$nCol>>2]|0; + $13 = ($12*24)|0; + $14 = (_sqlite3DbMallocZero($11,$13)|0); + HEAP32[$aCol>>2] = $14; + } else { + HEAP32[$nCol>>2] = 0; + HEAP32[$aCol>>2] = 0; + } + $15 = HEAP32[$nCol>>2]|0; + $16 = $15&65535; + $17 = HEAP32[$3>>2]|0; + HEAP16[$17>>1] = $16; + $18 = HEAP32[$aCol>>2]|0; + $19 = HEAP32[$4>>2]|0; + HEAP32[$19>>2] = $18; + HEAP32[$i>>2] = 0; + $20 = HEAP32[$aCol>>2]|0; + HEAP32[$pCol>>2] = $20; + while(1) { + $21 = HEAP32[$i>>2]|0; + $22 = HEAP32[$nCol>>2]|0; + $23 = ($21|0)<($22|0); + if (!($23)) { + break; + } + $24 = HEAP32[$i>>2]|0; + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 4|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + (($24*20)|0)|0); + $29 = HEAP32[$28>>2]|0; + $30 = (_sqlite3ExprSkipCollate($29)|0); + HEAP32[$p>>2] = $30; + $31 = HEAP32[$i>>2]|0; + $32 = HEAP32[$2>>2]|0; + $33 = (($32) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = (($34) + (($31*20)|0)|0); + $36 = (($35) + 4|0); + $37 = HEAP32[$36>>2]|0; + HEAP32[$zName>>2] = $37; + $38 = ($37|0)!=(0|0); + do { + if ($38) { + $39 = HEAP32[$db>>2]|0; + $40 = HEAP32[$zName>>2]|0; + $41 = (_sqlite3DbStrDup($39,$40)|0); + HEAP32[$zName>>2] = $41; + } else { + $42 = HEAP32[$p>>2]|0; + HEAP32[$pColExpr>>2] = $42; + while(1) { + $43 = HEAP32[$pColExpr>>2]|0; + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = ($45|0)==(122); + $47 = HEAP32[$pColExpr>>2]|0; + if (!($46)) { + break; + } + $48 = (($47) + 16|0); + $49 = HEAP32[$48>>2]|0; + HEAP32[$pColExpr>>2] = $49; + } + $50 = HEAP8[$47>>0]|0; + $51 = $50&255; + $52 = ($51|0)==(154); + if ($52) { + $53 = HEAP32[$pColExpr>>2]|0; + $54 = (($53) + 44|0); + $55 = HEAP32[$54>>2]|0; + $56 = ($55|0)!=(0|0); + if ($56) { + $57 = HEAP32[$pColExpr>>2]|0; + $58 = (($57) + 32|0); + $59 = HEAP16[$58>>1]|0; + $60 = $59 << 16 >> 16; + HEAP32[$iCol>>2] = $60; + $61 = HEAP32[$pColExpr>>2]|0; + $62 = (($61) + 44|0); + $63 = HEAP32[$62>>2]|0; + HEAP32[$pTab>>2] = $63; + $64 = HEAP32[$iCol>>2]|0; + $65 = ($64|0)<(0); + if ($65) { + $66 = HEAP32[$pTab>>2]|0; + $67 = (($66) + 36|0); + $68 = HEAP16[$67>>1]|0; + $69 = $68 << 16 >> 16; + HEAP32[$iCol>>2] = $69; + } + $70 = HEAP32[$db>>2]|0; + $71 = HEAP32[$iCol>>2]|0; + $72 = ($71|0)>=(0); + if ($72) { + $73 = HEAP32[$iCol>>2]|0; + $74 = HEAP32[$pTab>>2]|0; + $75 = (($74) + 4|0); + $76 = HEAP32[$75>>2]|0; + $77 = (($76) + (($73*24)|0)|0); + $78 = HEAP32[$77>>2]|0; + $79 = $78; + } else { + $79 = 8848; + } + HEAP32[$vararg_buffer7>>2] = $79; + $80 = (_sqlite3MPrintf($70,1768,$vararg_buffer7)|0); + HEAP32[$zName>>2] = $80; + break; + } + } + $81 = HEAP32[$pColExpr>>2]|0; + $82 = HEAP8[$81>>0]|0; + $83 = $82&255; + $84 = ($83|0)==(27); + $85 = HEAP32[$db>>2]|0; + if ($84) { + $86 = HEAP32[$pColExpr>>2]|0; + $87 = (($86) + 8|0); + $88 = HEAP32[$87>>2]|0; + HEAP32[$vararg_buffer7>>2] = $88; + $89 = (_sqlite3MPrintf($85,1768,$vararg_buffer7)|0); + HEAP32[$zName>>2] = $89; + break; + } else { + $90 = HEAP32[$i>>2]|0; + $91 = HEAP32[$2>>2]|0; + $92 = (($91) + 4|0); + $93 = HEAP32[$92>>2]|0; + $94 = (($93) + (($90*20)|0)|0); + $95 = (($94) + 8|0); + $96 = HEAP32[$95>>2]|0; + HEAP32[$vararg_buffer7>>2] = $96; + $97 = (_sqlite3MPrintf($85,1768,$vararg_buffer7)|0); + HEAP32[$zName>>2] = $97; + break; + } + } + } while(0); + $98 = HEAP32[$db>>2]|0; + $99 = (($98) + 64|0); + $100 = HEAP8[$99>>0]|0; + $101 = ($100<<24>>24)!=(0); + if ($101) { + label = 22; + break; + } + $104 = HEAP32[$zName>>2]|0; + $105 = (_sqlite3Strlen30($104)|0); + HEAP32[$nName>>2] = $105; + HEAP32[$cnt>>2] = 0; + HEAP32[$j>>2] = 0; + while(1) { + $106 = HEAP32[$j>>2]|0; + $107 = HEAP32[$i>>2]|0; + $108 = ($106|0)<($107|0); + if (!($108)) { + break; + } + $109 = HEAP32[$j>>2]|0; + $110 = HEAP32[$aCol>>2]|0; + $111 = (($110) + (($109*24)|0)|0); + $112 = HEAP32[$111>>2]|0; + $113 = HEAP32[$zName>>2]|0; + $114 = (_sqlite3_stricmp($112,$113)|0); + $115 = ($114|0)==(0); + if ($115) { + $116 = HEAP32[$nName>>2]|0; + $117 = (($116) - 1)|0; + HEAP32[$k>>2] = $117; + while(1) { + $118 = HEAP32[$k>>2]|0; + $119 = ($118|0)>(1); + if (!($119)) { + break; + } + $120 = HEAP32[$k>>2]|0; + $121 = HEAP32[$zName>>2]|0; + $122 = (($121) + ($120)|0); + $123 = HEAP8[$122>>0]|0; + $124 = $123&255; + $125 = (136 + ($124)|0); + $126 = HEAP8[$125>>0]|0; + $127 = $126&255; + $128 = $127 & 4; + $129 = ($128|0)!=(0); + if (!($129)) { + break; + } + $130 = HEAP32[$k>>2]|0; + $131 = (($130) + -1)|0; + HEAP32[$k>>2] = $131; + } + $132 = HEAP32[$k>>2]|0; + $133 = ($132|0)>=(0); + if ($133) { + $134 = HEAP32[$k>>2]|0; + $135 = HEAP32[$zName>>2]|0; + $136 = (($135) + ($134)|0); + $137 = HEAP8[$136>>0]|0; + $138 = $137 << 24 >> 24; + $139 = ($138|0)==(58); + if ($139) { + $140 = HEAP32[$k>>2]|0; + HEAP32[$nName>>2] = $140; + } + } + $141 = HEAP32[$nName>>2]|0; + $142 = HEAP32[$zName>>2]|0; + $143 = (($142) + ($141)|0); + HEAP8[$143>>0] = 0; + $144 = HEAP32[$db>>2]|0; + $145 = HEAP32[$zName>>2]|0; + $146 = HEAP32[$cnt>>2]|0; + $147 = (($146) + 1)|0; + HEAP32[$cnt>>2] = $147; + HEAP32[$vararg_buffer7>>2] = $145; + $vararg_ptr10 = (($vararg_buffer7) + 4|0); + HEAP32[$vararg_ptr10>>2] = $147; + $148 = (_sqlite3MPrintf($144,22952,$vararg_buffer7)|0); + HEAP32[$zNewName>>2] = $148; + $149 = HEAP32[$db>>2]|0; + $150 = HEAP32[$zName>>2]|0; + _sqlite3DbFree($149,$150); + $151 = HEAP32[$zNewName>>2]|0; + HEAP32[$zName>>2] = $151; + HEAP32[$j>>2] = -1; + $152 = HEAP32[$zName>>2]|0; + $153 = ($152|0)==(0|0); + if ($153) { + break; + } + } + $154 = HEAP32[$j>>2]|0; + $155 = (($154) + 1)|0; + HEAP32[$j>>2] = $155; + } + $156 = HEAP32[$zName>>2]|0; + $157 = HEAP32[$pCol>>2]|0; + HEAP32[$157>>2] = $156; + $158 = HEAP32[$i>>2]|0; + $159 = (($158) + 1)|0; + HEAP32[$i>>2] = $159; + $160 = HEAP32[$pCol>>2]|0; + $161 = (($160) + 24|0); + HEAP32[$pCol>>2] = $161; + } + if ((label|0) == 22) { + $102 = HEAP32[$db>>2]|0; + $103 = HEAP32[$zName>>2]|0; + _sqlite3DbFree($102,$103); + } + $162 = HEAP32[$db>>2]|0; + $163 = (($162) + 64|0); + $164 = HEAP8[$163>>0]|0; + $165 = ($164<<24>>24)!=(0); + if (!($165)) { + HEAP32[$0>>2] = 0; + $179 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($179|0); + } + HEAP32[$j>>2] = 0; + while(1) { + $166 = HEAP32[$j>>2]|0; + $167 = HEAP32[$i>>2]|0; + $168 = ($166|0)<($167|0); + $169 = HEAP32[$db>>2]|0; + if (!($168)) { + break; + } + $170 = HEAP32[$j>>2]|0; + $171 = HEAP32[$aCol>>2]|0; + $172 = (($171) + (($170*24)|0)|0); + $173 = HEAP32[$172>>2]|0; + _sqlite3DbFree($169,$173); + $174 = HEAP32[$j>>2]|0; + $175 = (($174) + 1)|0; + HEAP32[$j>>2] = $175; + } + $176 = HEAP32[$aCol>>2]|0; + _sqlite3DbFree($169,$176); + $177 = HEAP32[$4>>2]|0; + HEAP32[$177>>2] = 0; + $178 = HEAP32[$3>>2]|0; + HEAP16[$178>>1] = 0; + HEAP32[$0>>2] = 7; + $179 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($179|0); +} +function _selectAddColumnTypeAndCollation($pParse,$pTab,$pSelect) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $pSelect = $pSelect|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $a = 0, $db = 0, $i = 0, $p = 0, $pCol = 0; + var $pColl = 0, $sNC = 0, $szAll = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 76|0; + $1 = sp + 72|0; + $2 = sp + 68|0; + $db = sp + 64|0; + $sNC = sp + 32|0; + $pCol = sp + 24|0; + $pColl = sp + 16|0; + $i = sp + 12|0; + $p = sp + 8|0; + $a = sp + 20|0; + $szAll = sp; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $pSelect; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + $5 = $szAll; + $6 = $5; + HEAP32[$6>>2] = 0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = 0; + $9 = HEAP32[$db>>2]|0; + $10 = (($9) + 64|0); + $11 = HEAP8[$10>>0]|0; + $12 = ($11<<24>>24)!=(0); + if ($12) { + STACKTOP = sp;return; + } + ;HEAP32[$sNC+0>>2]=0|0;HEAP32[$sNC+4>>2]=0|0;HEAP32[$sNC+8>>2]=0|0;HEAP32[$sNC+12>>2]=0|0;HEAP32[$sNC+16>>2]=0|0;HEAP32[$sNC+20>>2]=0|0;HEAP32[$sNC+24>>2]=0|0;HEAP32[$sNC+28>>2]=0|0; + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 32|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($sNC) + 4|0); + HEAP32[$16>>2] = $15; + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$a>>2] = $20; + HEAP32[$i>>2] = 0; + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 4|0); + $23 = HEAP32[$22>>2]|0; + HEAP32[$pCol>>2] = $23; + while(1) { + $24 = HEAP32[$i>>2]|0; + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 38|0); + $27 = HEAP16[$26>>1]|0; + $28 = $27 << 16 >> 16; + $29 = ($24|0)<($28|0); + if (!($29)) { + break; + } + $30 = HEAP32[$i>>2]|0; + $31 = HEAP32[$a>>2]|0; + $32 = (($31) + (($30*20)|0)|0); + $33 = HEAP32[$32>>2]|0; + HEAP32[$p>>2] = $33; + $34 = HEAP32[$db>>2]|0; + $35 = HEAP32[$p>>2]|0; + $36 = HEAP32[$pCol>>2]|0; + $37 = (($36) + 22|0); + $38 = (_columnTypeImpl($sNC,$35,$37)|0); + $39 = (_sqlite3DbStrDup($34,$38)|0); + $40 = HEAP32[$pCol>>2]|0; + $41 = (($40) + 12|0); + HEAP32[$41>>2] = $39; + $42 = HEAP32[$pCol>>2]|0; + $43 = (($42) + 22|0); + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = $szAll; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = (($46) + 4)|0; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = (_i64Add(($48|0),($51|0),($45|0),0)|0); + $53 = tempRet0; + $54 = $szAll; + $55 = $54; + HEAP32[$55>>2] = $52; + $56 = (($54) + 4)|0; + $57 = $56; + HEAP32[$57>>2] = $53; + $58 = HEAP32[$p>>2]|0; + $59 = (_sqlite3ExprAffinity($58)|0); + $60 = HEAP32[$pCol>>2]|0; + $61 = (($60) + 21|0); + HEAP8[$61>>0] = $59; + $62 = HEAP32[$pCol>>2]|0; + $63 = (($62) + 21|0); + $64 = HEAP8[$63>>0]|0; + $65 = $64 << 24 >> 24; + $66 = ($65|0)==(0); + if ($66) { + $67 = HEAP32[$pCol>>2]|0; + $68 = (($67) + 21|0); + HEAP8[$68>>0] = 98; + } + $69 = HEAP32[$0>>2]|0; + $70 = HEAP32[$p>>2]|0; + $71 = (_sqlite3ExprCollSeq($69,$70)|0); + HEAP32[$pColl>>2] = $71; + $72 = HEAP32[$pColl>>2]|0; + $73 = ($72|0)!=(0|0); + if ($73) { + $74 = HEAP32[$db>>2]|0; + $75 = HEAP32[$pColl>>2]|0; + $76 = HEAP32[$75>>2]|0; + $77 = (_sqlite3DbStrDup($74,$76)|0); + $78 = HEAP32[$pCol>>2]|0; + $79 = (($78) + 16|0); + HEAP32[$79>>2] = $77; + } + $80 = HEAP32[$i>>2]|0; + $81 = (($80) + 1)|0; + HEAP32[$i>>2] = $81; + $82 = HEAP32[$pCol>>2]|0; + $83 = (($82) + 24|0); + HEAP32[$pCol>>2] = $83; + } + $84 = $szAll; + $85 = $84; + $86 = HEAP32[$85>>2]|0; + $87 = (($84) + 4)|0; + $88 = $87; + $89 = HEAP32[$88>>2]|0; + $90 = (___muldi3(($86|0),($89|0),4,0)|0); + $91 = tempRet0; + $92 = (_sqlite3LogEst($90,$91)|0); + $93 = HEAP32[$1>>2]|0; + $94 = (($93) + 42|0); + HEAP16[$94>>1] = $92; + STACKTOP = sp;return; +} +function _columnTypeImpl($pNC,$pExpr,$pEstWidth) { + $pNC = $pNC|0; + $pExpr = $pExpr|0; + $pEstWidth = $pEstWidth|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $estWidth = 0, $iCol = 0; + var $j = 0, $p = 0, $p3 = 0, $pS = 0, $pS2 = 0, $pTab = 0, $pTabList = 0, $sNC = 0, $sNC1 = 0, $zType = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $0 = sp + 120|0; + $1 = sp + 116|0; + $2 = sp + 112|0; + $3 = sp + 108|0; + $zType = sp + 104|0; + $j = sp + 100|0; + $estWidth = sp + 124|0; + $pTab = sp + 96|0; + $pS = sp + 92|0; + $iCol = sp + 84|0; + $pTabList = sp + 80|0; + $sNC = sp + 48|0; + $p = sp + 40|0; + $sNC1 = sp + 8|0; + $pS2 = sp; + $p3 = sp + 88|0; + HEAP32[$1>>2] = $pNC; + HEAP32[$2>>2] = $pExpr; + HEAP32[$3>>2] = $pEstWidth; + HEAP32[$zType>>2] = 0; + HEAP8[$estWidth>>0] = 1; + $4 = HEAP32[$2>>2]|0; + $5 = ($4|0)==(0|0); + if (!($5)) { + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)==(0|0); + if (!($9)) { + $10 = HEAP32[$2>>2]|0; + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + do { + if ((($12|0) == 154) | (($12|0) == 156)) { + HEAP32[$pTab>>2] = 0; + HEAP32[$pS>>2] = 0; + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 32|0); + $15 = HEAP16[$14>>1]|0; + $16 = $15 << 16 >> 16; + HEAP32[$iCol>>2] = $16; + while(1) { + $17 = HEAP32[$1>>2]|0; + $18 = ($17|0)!=(0|0); + if (!($18)) { + break; + } + $19 = HEAP32[$pTab>>2]|0; + $20 = ($19|0)!=(0|0); + $21 = $20 ^ 1; + if (!($21)) { + break; + } + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 4|0); + $24 = HEAP32[$23>>2]|0; + HEAP32[$pTabList>>2] = $24; + HEAP32[$j>>2] = 0; + while(1) { + $25 = HEAP32[$j>>2]|0; + $26 = HEAP32[$pTabList>>2]|0; + $27 = HEAP32[$26>>2]|0; + $28 = ($25|0)<($27|0); + if (!($28)) { + break; + } + $29 = HEAP32[$j>>2]|0; + $30 = HEAP32[$pTabList>>2]|0; + $31 = (($30) + 8|0); + $32 = (($31) + (($29*72)|0)|0); + $33 = (($32) + 40|0); + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$2>>2]|0; + $36 = (($35) + 28|0); + $37 = HEAP32[$36>>2]|0; + $38 = ($34|0)!=($37|0); + if (!($38)) { + break; + } + $39 = HEAP32[$j>>2]|0; + $40 = (($39) + 1)|0; + HEAP32[$j>>2] = $40; + } + $41 = HEAP32[$j>>2]|0; + $42 = HEAP32[$pTabList>>2]|0; + $43 = HEAP32[$42>>2]|0; + $44 = ($41|0)<($43|0); + if ($44) { + $45 = HEAP32[$j>>2]|0; + $46 = HEAP32[$pTabList>>2]|0; + $47 = (($46) + 8|0); + $48 = (($47) + (($45*72)|0)|0); + $49 = (($48) + 16|0); + $50 = HEAP32[$49>>2]|0; + HEAP32[$pTab>>2] = $50; + $51 = HEAP32[$j>>2]|0; + $52 = HEAP32[$pTabList>>2]|0; + $53 = (($52) + 8|0); + $54 = (($53) + (($51*72)|0)|0); + $55 = (($54) + 20|0); + $56 = HEAP32[$55>>2]|0; + HEAP32[$pS>>2] = $56; + continue; + } else { + $57 = HEAP32[$1>>2]|0; + $58 = (($57) + 16|0); + $59 = HEAP32[$58>>2]|0; + HEAP32[$1>>2] = $59; + continue; + } + } + $60 = HEAP32[$pTab>>2]|0; + $61 = ($60|0)==(0|0); + if (!($61)) { + $62 = HEAP32[$pS>>2]|0; + $63 = ($62|0)!=(0|0); + if ($63) { + $64 = HEAP32[$iCol>>2]|0; + $65 = ($64|0)>=(0); + if (!($65)) { + break; + } + $66 = HEAP32[$iCol>>2]|0; + $67 = HEAP32[$pS>>2]|0; + $68 = HEAP32[$67>>2]|0; + $69 = HEAP32[$68>>2]|0; + $70 = ($66|0)<($69|0); + if (!($70)) { + break; + } + $71 = HEAP32[$iCol>>2]|0; + $72 = HEAP32[$pS>>2]|0; + $73 = HEAP32[$72>>2]|0; + $74 = (($73) + 4|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($75) + (($71*20)|0)|0); + $77 = HEAP32[$76>>2]|0; + HEAP32[$p>>2] = $77; + $78 = HEAP32[$pS>>2]|0; + $79 = (($78) + 32|0); + $80 = HEAP32[$79>>2]|0; + $81 = (($sNC) + 4|0); + HEAP32[$81>>2] = $80; + $82 = HEAP32[$1>>2]|0; + $83 = (($sNC) + 16|0); + HEAP32[$83>>2] = $82; + $84 = HEAP32[$1>>2]|0; + $85 = HEAP32[$84>>2]|0; + HEAP32[$sNC>>2] = $85; + $86 = HEAP32[$p>>2]|0; + $87 = (_columnTypeImpl($sNC,$86,$estWidth)|0); + HEAP32[$zType>>2] = $87; + break; + } + $88 = HEAP32[$pTab>>2]|0; + $89 = (($88) + 68|0); + $90 = HEAP32[$89>>2]|0; + $91 = ($90|0)!=(0|0); + if ($91) { + $92 = HEAP32[$iCol>>2]|0; + $93 = ($92|0)<(0); + if ($93) { + $94 = HEAP32[$pTab>>2]|0; + $95 = (($94) + 36|0); + $96 = HEAP16[$95>>1]|0; + $97 = $96 << 16 >> 16; + HEAP32[$iCol>>2] = $97; + } + $98 = HEAP32[$iCol>>2]|0; + $99 = ($98|0)<(0); + if ($99) { + HEAP32[$zType>>2] = 22944; + break; + } else { + $100 = HEAP32[$iCol>>2]|0; + $101 = HEAP32[$pTab>>2]|0; + $102 = (($101) + 4|0); + $103 = HEAP32[$102>>2]|0; + $104 = (($103) + (($100*24)|0)|0); + $105 = (($104) + 12|0); + $106 = HEAP32[$105>>2]|0; + HEAP32[$zType>>2] = $106; + $107 = HEAP32[$iCol>>2]|0; + $108 = HEAP32[$pTab>>2]|0; + $109 = (($108) + 4|0); + $110 = HEAP32[$109>>2]|0; + $111 = (($110) + (($107*24)|0)|0); + $112 = (($111) + 22|0); + $113 = HEAP8[$112>>0]|0; + HEAP8[$estWidth>>0] = $113; + break; + } + } + } + } else if ((($12|0) == 119)) { + $114 = HEAP32[$2>>2]|0; + $115 = (($114) + 20|0); + $116 = HEAP32[$115>>2]|0; + HEAP32[$pS2>>2] = $116; + $117 = HEAP32[$pS2>>2]|0; + $118 = HEAP32[$117>>2]|0; + $119 = (($118) + 4|0); + $120 = HEAP32[$119>>2]|0; + $121 = HEAP32[$120>>2]|0; + HEAP32[$p3>>2] = $121; + $122 = HEAP32[$pS2>>2]|0; + $123 = (($122) + 32|0); + $124 = HEAP32[$123>>2]|0; + $125 = (($sNC1) + 4|0); + HEAP32[$125>>2] = $124; + $126 = HEAP32[$1>>2]|0; + $127 = (($sNC1) + 16|0); + HEAP32[$127>>2] = $126; + $128 = HEAP32[$1>>2]|0; + $129 = HEAP32[$128>>2]|0; + HEAP32[$sNC1>>2] = $129; + $130 = HEAP32[$p3>>2]|0; + $131 = (_columnTypeImpl($sNC1,$130,$estWidth)|0); + HEAP32[$zType>>2] = $131; + } + } while(0); + $132 = HEAP32[$3>>2]|0; + $133 = ($132|0)!=(0|0); + if ($133) { + $134 = HEAP8[$estWidth>>0]|0; + $135 = HEAP32[$3>>2]|0; + HEAP8[$135>>0] = $134; + } + $136 = HEAP32[$zType>>2]|0; + HEAP32[$0>>2] = $136; + $137 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($137|0); + } + } + HEAP32[$0>>2] = 0; + $137 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($137|0); +} +function _sqlite3ExprAffinity($pExpr) { + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $j = 0, $op = 0, $or$cond = 0; + var $or$cond3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $op = sp + 4|0; + $j = sp + 8|0; + HEAP32[$1>>2] = $pExpr; + $2 = HEAP32[$1>>2]|0; + $3 = (_sqlite3ExprSkipCollate($2)|0); + HEAP32[$1>>2] = $3; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + $7 = $6 & 512; + $8 = ($7|0)!=(0); + if ($8) { + HEAP8[$0>>0] = 98; + $56 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($56|0); + } + $9 = HEAP32[$1>>2]|0; + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + HEAP32[$op>>2] = $11; + $12 = HEAP32[$op>>2]|0; + $13 = ($12|0)==(119); + if ($13) { + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 20|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3ExprAffinity($20)|0); + HEAP8[$0>>0] = $21; + $56 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($56|0); + } + $22 = HEAP32[$op>>2]|0; + $23 = ($22|0)==(38); + if ($23) { + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 8|0); + $26 = HEAP32[$25>>2]|0; + $27 = (_sqlite3AffinityType($26,0)|0); + HEAP8[$0>>0] = $27; + $56 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($56|0); + } + $28 = HEAP32[$op>>2]|0; + $29 = ($28|0)==(156); + $30 = HEAP32[$op>>2]|0; + $31 = ($30|0)==(154); + $or$cond = $29 | $31; + $32 = HEAP32[$op>>2]|0; + $33 = ($32|0)==(159); + $or$cond3 = $or$cond | $33; + if ($or$cond3) { + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 44|0); + $36 = HEAP32[$35>>2]|0; + $37 = ($36|0)!=(0|0); + if ($37) { + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 32|0); + $40 = HEAP16[$39>>1]|0; + $41 = $40 << 16 >> 16; + HEAP32[$j>>2] = $41; + $42 = HEAP32[$j>>2]|0; + $43 = ($42|0)<(0); + if ($43) { + HEAP8[$0>>0] = 100; + $56 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($56|0); + } else { + $44 = HEAP32[$j>>2]|0; + $45 = HEAP32[$1>>2]|0; + $46 = (($45) + 44|0); + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + 4|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) + (($44*24)|0)|0); + $51 = (($50) + 21|0); + $52 = HEAP8[$51>>0]|0; + HEAP8[$0>>0] = $52; + $56 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($56|0); + } + } + } + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 1|0); + $55 = HEAP8[$54>>0]|0; + HEAP8[$0>>0] = $55; + $56 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($56|0); +} +function _sqlite3ExprCollSeq($pParse,$pExpr) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; + var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $j = 0, $op = 0, $or$cond = 0, $or$cond3 = 0, $or$cond5 = 0, $or$cond7 = 0, $p = 0, $pColl = 0, $zColl = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $db = sp + 4|0; + $pColl = sp + 8|0; + $p = sp + 12|0; + $op = sp + 16|0; + $j = sp + 20|0; + $zColl = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pExpr; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + HEAP32[$pColl>>2] = 0; + $4 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $4; + while(1) { + $5 = HEAP32[$p>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + break; + } + $7 = HEAP32[$p>>2]|0; + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + HEAP32[$op>>2] = $9; + $10 = HEAP32[$p>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = $12 & 512; + $14 = ($13|0)!=(0); + if ($14) { + break; + } + $15 = HEAP32[$op>>2]|0; + $16 = ($15|0)==(38); + $17 = HEAP32[$op>>2]|0; + $18 = ($17|0)==(158); + $or$cond = $16 | $18; + if ($or$cond) { + $19 = HEAP32[$p>>2]|0; + $20 = (($19) + 12|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$p>>2] = $21; + continue; + } + $22 = HEAP32[$op>>2]|0; + $23 = ($22|0)==(95); + if ($23) { + label = 9; + break; + } + $24 = HEAP32[$op>>2]|0; + $25 = ($24|0)==(159); + if ($25) { + $26 = HEAP32[$p>>2]|0; + $27 = (($26) + 38|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = ($29|0)==(95); + if ($30) { + label = 9; + break; + } + } + $43 = HEAP32[$p>>2]|0; + $44 = (($43) + 44|0); + $45 = HEAP32[$44>>2]|0; + $46 = ($45|0)!=(0|0); + if ($46) { + $47 = HEAP32[$op>>2]|0; + $48 = ($47|0)==(156); + $49 = HEAP32[$op>>2]|0; + $50 = ($49|0)==(154); + $or$cond3 = $48 | $50; + $51 = HEAP32[$op>>2]|0; + $52 = ($51|0)==(159); + $or$cond5 = $or$cond3 | $52; + $53 = HEAP32[$op>>2]|0; + $54 = ($53|0)==(62); + $or$cond7 = $or$cond5 | $54; + if ($or$cond7) { + label = 12; + break; + } + } + $80 = HEAP32[$p>>2]|0; + $81 = (($80) + 4|0); + $82 = HEAP32[$81>>2]|0; + $83 = $82 & 256; + $84 = ($83|0)!=(0); + if (!($84)) { + break; + } + $85 = HEAP32[$p>>2]|0; + $86 = (($85) + 12|0); + $87 = HEAP32[$86>>2]|0; + $88 = ($87|0)!=(0|0); + if ($88) { + $89 = HEAP32[$p>>2]|0; + $90 = (($89) + 12|0); + $91 = HEAP32[$90>>2]|0; + $92 = (($91) + 4|0); + $93 = HEAP32[$92>>2]|0; + $94 = $93 & 256; + $95 = ($94|0)!=(0); + if ($95) { + $96 = HEAP32[$p>>2]|0; + $97 = (($96) + 12|0); + $98 = HEAP32[$97>>2]|0; + HEAP32[$p>>2] = $98; + continue; + } + } + $99 = HEAP32[$p>>2]|0; + $100 = (($99) + 16|0); + $101 = HEAP32[$100>>2]|0; + HEAP32[$p>>2] = $101; + } + if ((label|0) == 9) { + $31 = HEAP32[$0>>2]|0; + $32 = HEAP32[$db>>2]|0; + $33 = (($32) + 16|0); + $34 = HEAP32[$33>>2]|0; + $35 = (($34) + 12|0); + $36 = HEAP32[$35>>2]|0; + $37 = (($36) + 77|0); + $38 = HEAP8[$37>>0]|0; + $39 = HEAP32[$p>>2]|0; + $40 = (($39) + 8|0); + $41 = HEAP32[$40>>2]|0; + $42 = (_sqlite3GetCollSeq($31,$38,0,$41)|0); + HEAP32[$pColl>>2] = $42; + } + else if ((label|0) == 12) { + $55 = HEAP32[$p>>2]|0; + $56 = (($55) + 32|0); + $57 = HEAP16[$56>>1]|0; + $58 = $57 << 16 >> 16; + HEAP32[$j>>2] = $58; + $59 = HEAP32[$j>>2]|0; + $60 = ($59|0)>=(0); + if ($60) { + $61 = HEAP32[$j>>2]|0; + $62 = HEAP32[$p>>2]|0; + $63 = (($62) + 44|0); + $64 = HEAP32[$63>>2]|0; + $65 = (($64) + 4|0); + $66 = HEAP32[$65>>2]|0; + $67 = (($66) + (($61*24)|0)|0); + $68 = (($67) + 16|0); + $69 = HEAP32[$68>>2]|0; + HEAP32[$zColl>>2] = $69; + $70 = HEAP32[$db>>2]|0; + $71 = HEAP32[$db>>2]|0; + $72 = (($71) + 16|0); + $73 = HEAP32[$72>>2]|0; + $74 = (($73) + 12|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($75) + 77|0); + $77 = HEAP8[$76>>0]|0; + $78 = HEAP32[$zColl>>2]|0; + $79 = (_sqlite3FindCollSeq($70,$77,$78,0)|0); + HEAP32[$pColl>>2] = $79; + } + } + $102 = HEAP32[$0>>2]|0; + $103 = HEAP32[$pColl>>2]|0; + $104 = (_sqlite3CheckCollSeq($102,$103)|0); + $105 = ($104|0)!=(0); + if (!($105)) { + $106 = HEAP32[$pColl>>2]|0; + STACKTOP = sp;return ($106|0); + } + HEAP32[$pColl>>2] = 0; + $106 = HEAP32[$pColl>>2]|0; + STACKTOP = sp;return ($106|0); +} +function _sqlite3LogEst($0,$1) { + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp + 10|0; + $3 = sp; + $y = sp + 8|0; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + HEAP16[$y>>1] = 40; + $8 = $3; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = (($8) + 4)|0; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = ($13>>>0)<(0); + $15 = ($13|0)==(0); + $16 = ($10>>>0)<(8); + $17 = $15 & $16; + $18 = $14 | $17; + L1: do { + if ($18) { + $19 = $3; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (($19) + 4)|0; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = ($24>>>0)<(0); + $26 = ($24|0)==(0); + $27 = ($21>>>0)<(2); + $28 = $26 & $27; + $29 = $25 | $28; + if ($29) { + HEAP16[$2>>1] = 0; + $126 = HEAP16[$2>>1]|0; + STACKTOP = sp;return ($126|0); + } else { + while(1) { + $30 = $3; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = ($35>>>0)<(0); + $37 = ($35|0)==(0); + $38 = ($32>>>0)<(8); + $39 = $37 & $38; + $40 = $36 | $39; + if (!($40)) { + break L1; + } + $41 = HEAP16[$y>>1]|0; + $42 = $41 << 16 >> 16; + $43 = (($42) - 10)|0; + $44 = $43&65535; + HEAP16[$y>>1] = $44; + $45 = $3; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (($45) + 4)|0; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = (_bitshift64Shl(($47|0),($50|0),1)|0); + $52 = tempRet0; + $53 = $3; + $54 = $53; + HEAP32[$54>>2] = $51; + $55 = (($53) + 4)|0; + $56 = $55; + HEAP32[$56>>2] = $52; + } + } + } else { + while(1) { + $57 = $3; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = (($57) + 4)|0; + $61 = $60; + $62 = HEAP32[$61>>2]|0; + $63 = ($62>>>0)>(0); + $64 = ($62|0)==(0); + $65 = ($59>>>0)>(255); + $66 = $64 & $65; + $67 = $63 | $66; + if (!($67)) { + break; + } + $68 = HEAP16[$y>>1]|0; + $69 = $68 << 16 >> 16; + $70 = (($69) + 40)|0; + $71 = $70&65535; + HEAP16[$y>>1] = $71; + $72 = $3; + $73 = $72; + $74 = HEAP32[$73>>2]|0; + $75 = (($72) + 4)|0; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = (_bitshift64Lshr(($74|0),($77|0),4)|0); + $79 = tempRet0; + $80 = $3; + $81 = $80; + HEAP32[$81>>2] = $78; + $82 = (($80) + 4)|0; + $83 = $82; + HEAP32[$83>>2] = $79; + } + while(1) { + $84 = $3; + $85 = $84; + $86 = HEAP32[$85>>2]|0; + $87 = (($84) + 4)|0; + $88 = $87; + $89 = HEAP32[$88>>2]|0; + $90 = ($89>>>0)>(0); + $91 = ($89|0)==(0); + $92 = ($86>>>0)>(15); + $93 = $91 & $92; + $94 = $90 | $93; + if (!($94)) { + break L1; + } + $95 = HEAP16[$y>>1]|0; + $96 = $95 << 16 >> 16; + $97 = (($96) + 10)|0; + $98 = $97&65535; + HEAP16[$y>>1] = $98; + $99 = $3; + $100 = $99; + $101 = HEAP32[$100>>2]|0; + $102 = (($99) + 4)|0; + $103 = $102; + $104 = HEAP32[$103>>2]|0; + $105 = (_bitshift64Lshr(($101|0),($104|0),1)|0); + $106 = tempRet0; + $107 = $3; + $108 = $107; + HEAP32[$108>>2] = $105; + $109 = (($107) + 4)|0; + $110 = $109; + HEAP32[$110>>2] = $106; + } + } + } while(0); + $111 = $3; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = (($111) + 4)|0; + $115 = $114; + $116 = HEAP32[$115>>2]|0; + $117 = $113 & 7; + $118 = (22888 + ($117<<1)|0); + $119 = HEAP16[$118>>1]|0; + $120 = $119 << 16 >> 16; + $121 = HEAP16[$y>>1]|0; + $122 = $121 << 16 >> 16; + $123 = (($120) + ($122))|0; + $124 = (($123) - 10)|0; + $125 = $124&65535; + HEAP16[$2>>1] = $125; + $126 = HEAP16[$2>>1]|0; + STACKTOP = sp;return ($126|0); +} +function _sqlite3GetCollSeq($pParse,$enc,$pColl,$zName) { + $pParse = $pParse|0; + $enc = $enc|0; + $pColl = $pColl|0; + $zName = $zName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $db = 0, $p = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 20|0; + $1 = sp + 24|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $p = sp + 16|0; + $db = sp + 4|0; + HEAP32[$0>>2] = $pParse; + HEAP8[$1>>0] = $enc; + HEAP32[$2>>2] = $pColl; + HEAP32[$3>>2] = $zName; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $6; + $7 = HEAP32[$p>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + $9 = HEAP32[$db>>2]|0; + $10 = HEAP8[$1>>0]|0; + $11 = HEAP32[$3>>2]|0; + $12 = (_sqlite3FindCollSeq($9,$10,$11,0)|0); + HEAP32[$p>>2] = $12; + } + $13 = HEAP32[$p>>2]|0; + $14 = ($13|0)!=(0|0); + if ($14) { + $15 = HEAP32[$p>>2]|0; + $16 = (($15) + 12|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)!=(0|0); + if (!($18)) { + label = 5; + } + } else { + label = 5; + } + if ((label|0) == 5) { + $19 = HEAP32[$db>>2]|0; + $20 = HEAP8[$1>>0]|0; + $21 = $20&255; + $22 = HEAP32[$3>>2]|0; + _callCollNeeded($19,$21,$22); + $23 = HEAP32[$db>>2]|0; + $24 = HEAP8[$1>>0]|0; + $25 = HEAP32[$3>>2]|0; + $26 = (_sqlite3FindCollSeq($23,$24,$25,0)|0); + HEAP32[$p>>2] = $26; + } + $27 = HEAP32[$p>>2]|0; + $28 = ($27|0)!=(0|0); + if ($28) { + $29 = HEAP32[$p>>2]|0; + $30 = (($29) + 12|0); + $31 = HEAP32[$30>>2]|0; + $32 = ($31|0)!=(0|0); + if (!($32)) { + $33 = HEAP32[$db>>2]|0; + $34 = HEAP32[$p>>2]|0; + $35 = (_synthCollSeq($33,$34)|0); + $36 = ($35|0)!=(0); + if ($36) { + HEAP32[$p>>2] = 0; + } + } + } + $37 = HEAP32[$p>>2]|0; + $38 = ($37|0)==(0|0); + if (!($38)) { + $41 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($41|0); + } + $39 = HEAP32[$0>>2]|0; + $40 = HEAP32[$3>>2]|0; + HEAP32[$vararg_buffer>>2] = $40; + _sqlite3ErrorMsg($39,22904,$vararg_buffer); + $41 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($41|0); +} +function _sqlite3CheckCollSeq($pParse,$pColl) { + $pParse = $pParse|0; + $pColl = $pColl|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $db = 0, $p = 0, $zName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $zName = sp + 8|0; + $db = sp + 12|0; + $p = sp + 16|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pColl; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$zName>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$db>>2] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$db>>2]|0; + $11 = (($10) + 16|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + 12|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + 77|0); + $16 = HEAP8[$15>>0]|0; + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$zName>>2]|0; + $19 = (_sqlite3GetCollSeq($9,$16,$17,$18)|0); + HEAP32[$p>>2] = $19; + $20 = HEAP32[$p>>2]|0; + $21 = ($20|0)!=(0|0); + if (!($21)) { + HEAP32[$0>>2] = 1; + $22 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($22|0); + } + } + HEAP32[$0>>2] = 0; + $22 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($22|0); +} +function _callCollNeeded($db,$enc,$zName) { + $db = $db|0; + $enc = $enc|0; + $zName = $zName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTmp = 0, $zExternal = 0, $zExternal1 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $zExternal = sp + 8|0; + $zExternal1 = sp + 12|0; + $pTmp = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $enc; + HEAP32[$2>>2] = $zName; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 212|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + do { + if ($6) { + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = (_sqlite3DbStrDup($7,$8)|0); + HEAP32[$zExternal>>2] = $9; + $10 = HEAP32[$zExternal>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 212|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 220|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = HEAP32[$zExternal>>2]|0; + FUNCTION_TABLE_viiii[$14 & 3]($17,$18,$19,$20); + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$zExternal>>2]|0; + _sqlite3DbFree($21,$22); + break; + } else { + STACKTOP = sp;return; + } + } + } while(0); + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 216|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)!=(0|0); + if (!($26)) { + STACKTOP = sp;return; + } + $27 = HEAP32[$0>>2]|0; + $28 = (_sqlite3ValueNew($27)|0); + HEAP32[$pTmp>>2] = $28; + $29 = HEAP32[$pTmp>>2]|0; + $30 = HEAP32[$2>>2]|0; + _sqlite3ValueSetStr($29,-1,$30,1,0); + $31 = HEAP32[$pTmp>>2]|0; + $32 = HEAP8[1480>>0]|0; + $33 = $32 << 24 >> 24; + $34 = ($33|0)==(0); + $35 = $34 ? 3 : 2; + $36 = $35&255; + $37 = (_sqlite3ValueText($31,$36)|0); + HEAP32[$zExternal1>>2] = $37; + $38 = HEAP32[$zExternal1>>2]|0; + $39 = ($38|0)!=(0|0); + if ($39) { + $40 = HEAP32[$0>>2]|0; + $41 = (($40) + 216|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$0>>2]|0; + $44 = (($43) + 220|0); + $45 = HEAP32[$44>>2]|0; + $46 = HEAP32[$0>>2]|0; + $47 = HEAP32[$0>>2]|0; + $48 = (($47) + 16|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) + 12|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + 77|0); + $53 = HEAP8[$52>>0]|0; + $54 = $53&255; + $55 = HEAP32[$zExternal1>>2]|0; + FUNCTION_TABLE_viiii[$42 & 3]($45,$46,$54,$55); + } + $56 = HEAP32[$pTmp>>2]|0; + _sqlite3ValueFree($56); + STACKTOP = sp;return; +} +function _synthCollSeq($db,$pColl) { + $db = $db|0; + $pColl = $pColl|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pColl2 = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $pColl2 = sp + 8|0; + $z = sp + 12|0; + $i = sp + 16|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pColl; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$z>>2] = $4; + HEAP32[$i>>2] = 0; + while(1) { + $5 = HEAP32[$i>>2]|0; + $6 = ($5|0)<(3); + if (!($6)) { + label = 6; + break; + } + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$i>>2]|0; + $9 = (22936 + ($8)|0); + $10 = HEAP8[$9>>0]|0; + $11 = HEAP32[$z>>2]|0; + $12 = (_sqlite3FindCollSeq($7,$10,$11,0)|0); + HEAP32[$pColl2>>2] = $12; + $13 = HEAP32[$pColl2>>2]|0; + $14 = (($13) + 12|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + label = 4; + break; + } + $21 = HEAP32[$i>>2]|0; + $22 = (($21) + 1)|0; + HEAP32[$i>>2] = $22; + } + if ((label|0) == 4) { + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$pColl2>>2]|0; + ;HEAP32[$17+0>>2]=HEAP32[$18+0>>2]|0;HEAP32[$17+4>>2]=HEAP32[$18+4>>2]|0;HEAP32[$17+8>>2]=HEAP32[$18+8>>2]|0;HEAP32[$17+12>>2]=HEAP32[$18+12>>2]|0;HEAP32[$17+16>>2]=HEAP32[$18+16>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = (($19) + 16|0); + HEAP32[$20>>2] = 0; + HEAP32[$0>>2] = 0; + $23 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($23|0); + } + else if ((label|0) == 6) { + HEAP32[$0>>2] = 1; + $23 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($23|0); + } + return 0|0; +} +function _sqlite3ExprSkipCollate($pExpr) { + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pExpr; + while(1) { + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if ($2) { + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = $5 & 4096; + $7 = ($6|0)!=(0); + $21 = $7; + } else { + $21 = 0; + } + $8 = HEAP32[$0>>2]|0; + if (!($21)) { + break; + } + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = $10 & 262144; + $12 = ($11|0)!=(0); + $13 = HEAP32[$0>>2]|0; + if ($12) { + $14 = (($13) + 20|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$17>>2]|0; + HEAP32[$0>>2] = $18; + continue; + } else { + $19 = (($13) + 12|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$0>>2] = $20; + continue; + } + } + STACKTOP = sp;return ($8|0); +} +function _sqlite3AffinityType($zIn,$pszEst) { + $zIn = $zIn|0; + $pszEst = $pszEst|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $aff = 0, $h = 0, $v = 0, $zChar = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 21|0; + $1 = sp; + $2 = sp + 4|0; + $h = sp + 8|0; + $aff = sp + 20|0; + $zChar = sp + 12|0; + $v = sp + 16|0; + HEAP32[$1>>2] = $zIn; + HEAP32[$2>>2] = $pszEst; + HEAP32[$h>>2] = 0; + HEAP8[$aff>>0] = 99; + HEAP32[$zChar>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + $5 = HEAP8[$aff>>0]|0; + HEAP8[$0>>0] = $5; + $91 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($91|0); + } + L4: while(1) { + $6 = HEAP32[$1>>2]|0; + $7 = HEAP8[$6>>0]|0; + $8 = ($7<<24>>24)!=(0); + if (!($8)) { + break; + } + $9 = HEAP32[$h>>2]|0; + $10 = $9 << 8; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP8[$11>>0]|0; + $13 = $12 << 24 >> 24; + $14 = $13 & 255; + $15 = (784 + ($14)|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = (($10) + ($17))|0; + HEAP32[$h>>2] = $18; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 1|0); + HEAP32[$1>>2] = $20; + $21 = HEAP32[$h>>2]|0; + $22 = ($21|0)==(1667785074); + if ($22) { + HEAP8[$aff>>0] = 97; + $23 = HEAP32[$1>>2]|0; + HEAP32[$zChar>>2] = $23; + continue; + } + $24 = HEAP32[$h>>2]|0; + $25 = ($24|0)==(1668050786); + if ($25) { + HEAP8[$aff>>0] = 97; + continue; + } + $26 = HEAP32[$h>>2]|0; + $27 = ($26|0)==(1952807028); + if ($27) { + HEAP8[$aff>>0] = 97; + continue; + } + $28 = HEAP32[$h>>2]|0; + $29 = ($28|0)==(1651273570); + do { + if ($29) { + $30 = HEAP8[$aff>>0]|0; + $31 = $30 << 24 >> 24; + $32 = ($31|0)==(99); + if (!($32)) { + $33 = HEAP8[$aff>>0]|0; + $34 = $33 << 24 >> 24; + $35 = ($34|0)==(101); + if (!($35)) { + break; + } + } + HEAP8[$aff>>0] = 98; + $36 = HEAP32[$1>>2]|0; + $37 = HEAP8[$36>>0]|0; + $38 = $37 << 24 >> 24; + $39 = ($38|0)==(40); + if (!($39)) { + continue L4; + } + $40 = HEAP32[$1>>2]|0; + HEAP32[$zChar>>2] = $40; + continue L4; + } + } while(0); + $41 = HEAP32[$h>>2]|0; + $42 = ($41|0)==(1919246700); + if ($42) { + $43 = HEAP8[$aff>>0]|0; + $44 = $43 << 24 >> 24; + $45 = ($44|0)==(99); + if ($45) { + HEAP8[$aff>>0] = 101; + continue; + } + } + $46 = HEAP32[$h>>2]|0; + $47 = ($46|0)==(1718382433); + if ($47) { + $48 = HEAP8[$aff>>0]|0; + $49 = $48 << 24 >> 24; + $50 = ($49|0)==(99); + if ($50) { + HEAP8[$aff>>0] = 101; + continue; + } + } + $51 = HEAP32[$h>>2]|0; + $52 = ($51|0)==(1685026146); + if ($52) { + $53 = HEAP8[$aff>>0]|0; + $54 = $53 << 24 >> 24; + $55 = ($54|0)==(99); + if ($55) { + HEAP8[$aff>>0] = 101; + continue; + } + } + $56 = HEAP32[$h>>2]|0; + $57 = $56 & 16777215; + $58 = ($57|0)==(6909556); + if ($58) { + label = 25; + break; + } + } + if ((label|0) == 25) { + HEAP8[$aff>>0] = 100; + } + $59 = HEAP32[$2>>2]|0; + $60 = ($59|0)!=(0|0); + L38: do { + if ($60) { + $61 = HEAP32[$2>>2]|0; + HEAP8[$61>>0] = 1; + $62 = HEAP8[$aff>>0]|0; + $63 = $62 << 24 >> 24; + $64 = ($63|0)<=(98); + if ($64) { + $65 = HEAP32[$zChar>>2]|0; + $66 = ($65|0)!=(0|0); + if (!($66)) { + $89 = HEAP32[$2>>2]|0; + HEAP8[$89>>0] = 5; + break; + } + while(1) { + $67 = HEAP32[$zChar>>2]|0; + $68 = HEAP8[$67>>0]|0; + $69 = ($68<<24>>24)!=(0); + if (!($69)) { + break L38; + } + $70 = HEAP32[$zChar>>2]|0; + $71 = HEAP8[$70>>0]|0; + $72 = $71&255; + $73 = (136 + ($72)|0); + $74 = HEAP8[$73>>0]|0; + $75 = $74&255; + $76 = $75 & 4; + $77 = ($76|0)!=(0); + if ($77) { + break; + } + $87 = HEAP32[$zChar>>2]|0; + $88 = (($87) + 1|0); + HEAP32[$zChar>>2] = $88; + } + HEAP32[$v>>2] = 0; + $78 = HEAP32[$zChar>>2]|0; + (_sqlite3GetInt32($78,$v)|0); + $79 = HEAP32[$v>>2]|0; + $80 = (($79|0) / 4)&-1; + $81 = (($80) + 1)|0; + HEAP32[$v>>2] = $81; + $82 = HEAP32[$v>>2]|0; + $83 = ($82|0)>(255); + $$ = $83 ? 255 : $81; + HEAP32[$v>>2] = $$; + $84 = HEAP32[$v>>2]|0; + $85 = $84&255; + $86 = HEAP32[$2>>2]|0; + HEAP8[$86>>0] = $85; + } + } + } while(0); + $90 = HEAP8[$aff>>0]|0; + HEAP8[$0>>0] = $90; + $91 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($91|0); +} +function _sqlite3SelectExpand($pParse,$pSelect) { + $pParse = $pParse|0; + $pSelect = $pSelect|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $w = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp; + $w = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pSelect; + ;HEAP32[$w+0>>2]=0|0;HEAP32[$w+4>>2]=0|0;HEAP32[$w+8>>2]=0|0;HEAP32[$w+12>>2]=0|0;HEAP32[$w+16>>2]=0|0;HEAP32[$w+20>>2]=0|0; + HEAP32[$w>>2] = 55; + $2 = HEAP32[$0>>2]|0; + $3 = (($w) + 12|0); + HEAP32[$3>>2] = $2; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 22|0); + $6 = HEAP8[$5>>0]|0; + $7 = ($6<<24>>24)!=(0); + if ($7) { + $8 = (($w) + 4|0); + HEAP32[$8>>2] = 56; + $9 = HEAP32[$1>>2]|0; + (_sqlite3WalkSelect($w,$9)|0); + } + $10 = (($w) + 4|0); + HEAP32[$10>>2] = 57; + $11 = (($w) + 8|0); + HEAP32[$11>>2] = 3; + $12 = HEAP32[$1>>2]|0; + (_sqlite3WalkSelect($w,$12)|0); + STACKTOP = sp;return; +} +function _sqlite3ResolveSelectNames($pParse,$p,$pOuterNC) { + $pParse = $pParse|0; + $p = $p|0; + $pOuterNC = $pOuterNC|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $w = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp; + $2 = sp + 4|0; + $w = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pOuterNC; + ;HEAP32[$w+0>>2]=0|0;HEAP32[$w+4>>2]=0|0;HEAP32[$w+8>>2]=0|0;HEAP32[$w+12>>2]=0|0;HEAP32[$w+16>>2]=0|0;HEAP32[$w+20>>2]=0|0; + HEAP32[$w>>2] = 58; + $3 = (($w) + 4|0); + HEAP32[$3>>2] = 59; + $4 = HEAP32[$0>>2]|0; + $5 = (($w) + 12|0); + HEAP32[$5>>2] = $4; + $6 = HEAP32[$2>>2]|0; + $7 = (($w) + 20|0); + HEAP32[$7>>2] = $6; + $8 = HEAP32[$1>>2]|0; + (_sqlite3WalkSelect($w,$8)|0); + STACKTOP = sp;return; +} +function _sqlite3SelectAddTypeInfo($pParse,$pSelect) { + $pParse = $pParse|0; + $pSelect = $pSelect|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $w = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp; + $w = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pSelect; + ;HEAP32[$w+0>>2]=0|0;HEAP32[$w+4>>2]=0|0;HEAP32[$w+8>>2]=0|0;HEAP32[$w+12>>2]=0|0;HEAP32[$w+16>>2]=0|0;HEAP32[$w+20>>2]=0|0; + $2 = (($w) + 8|0); + HEAP32[$2>>2] = 4; + HEAP32[$w>>2] = 55; + $3 = HEAP32[$0>>2]|0; + $4 = (($w) + 12|0); + HEAP32[$4>>2] = $3; + $5 = HEAP32[$1>>2]|0; + (_sqlite3WalkSelect($w,$5)|0); + STACKTOP = sp;return; +} +function _selectAddSubqueryTypeInfo($pWalker,$p) { + $pWalker = $pWalker|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pFrom = 0, $pParse = 0, $pSel = 0; + var $pTab = 0, $pTabList = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $pParse = sp + 4|0; + $i = sp + 8|0; + $pTabList = sp + 12|0; + $pFrom = sp + 16|0; + $pTab = sp + 20|0; + $pSel = sp + 24|0; + HEAP32[$0>>2] = $pWalker; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 6|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4&65535; + $6 = $5 & 32; + $7 = ($6|0)==(0); + if (!($7)) { + STACKTOP = sp;return; + } + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 6|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10&65535; + $12 = $11 | 32; + $13 = $12&65535; + HEAP16[$9>>1] = $13; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 12|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$pParse>>2] = $16; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 32|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$pTabList>>2] = $19; + HEAP32[$i>>2] = 0; + $20 = HEAP32[$pTabList>>2]|0; + $21 = (($20) + 8|0); + HEAP32[$pFrom>>2] = $21; + while(1) { + $22 = HEAP32[$i>>2]|0; + $23 = HEAP32[$pTabList>>2]|0; + $24 = HEAP32[$23>>2]|0; + $25 = ($22|0)<($24|0); + if (!($25)) { + break; + } + $26 = HEAP32[$pFrom>>2]|0; + $27 = (($26) + 16|0); + $28 = HEAP32[$27>>2]|0; + HEAP32[$pTab>>2] = $28; + $29 = HEAP32[$pTab>>2]|0; + $30 = ($29|0)!=(0|0); + if ($30) { + $31 = HEAP32[$pTab>>2]|0; + $32 = (($31) + 44|0); + $33 = HEAP8[$32>>0]|0; + $34 = $33&255; + $35 = $34 & 2; + $36 = ($35|0)!=(0); + if ($36) { + $37 = HEAP32[$pFrom>>2]|0; + $38 = (($37) + 20|0); + $39 = HEAP32[$38>>2]|0; + HEAP32[$pSel>>2] = $39; + $40 = HEAP32[$pSel>>2]|0; + $41 = ($40|0)!=(0|0); + if ($41) { + while(1) { + $42 = HEAP32[$pSel>>2]|0; + $43 = (($42) + 52|0); + $44 = HEAP32[$43>>2]|0; + $45 = ($44|0)!=(0|0); + if (!($45)) { + break; + } + $46 = HEAP32[$pSel>>2]|0; + $47 = (($46) + 52|0); + $48 = HEAP32[$47>>2]|0; + HEAP32[$pSel>>2] = $48; + } + $49 = HEAP32[$pParse>>2]|0; + $50 = HEAP32[$pTab>>2]|0; + $51 = HEAP32[$pSel>>2]|0; + _selectAddColumnTypeAndCollation($49,$50,$51); + } + } + } + $52 = HEAP32[$i>>2]|0; + $53 = (($52) + 1)|0; + HEAP32[$i>>2] = $53; + $54 = HEAP32[$pFrom>>2]|0; + $55 = (($54) + 72|0); + HEAP32[$pFrom>>2] = $55; + } + STACKTOP = sp;return; +} +function _exprWalkNoop($NotUsed,$NotUsed2) { + $NotUsed = $NotUsed|0; + $NotUsed2 = $NotUsed2|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $NotUsed; + HEAP32[$1>>2] = $NotUsed2; + STACKTOP = sp;return 0; +} +function _sqlite3WalkSelect($pWalker,$p) { + $pWalker = $pWalker|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $7 = 0; + var $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$1>>2] = $pWalker; + HEAP32[$2>>2] = $p; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)==(0|0); + do { + if (!($4)) { + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 4|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)==(0|0); + if ($8) { + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 8|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)==(0|0); + if ($12) { + break; + } + } + HEAP32[$rc>>2] = 0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 16|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + 1)|0; + HEAP32[$14>>2] = $16; + while(1) { + $17 = HEAP32[$2>>2]|0; + $18 = ($17|0)!=(0|0); + if (!($18)) { + label = 15; + break; + } + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)!=(0|0); + if ($22) { + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$1>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = (FUNCTION_TABLE_iii[$25 & 127]($26,$27)|0); + HEAP32[$rc>>2] = $28; + $29 = HEAP32[$rc>>2]|0; + $30 = ($29|0)!=(0); + if ($30) { + label = 15; + break; + } + } + $31 = HEAP32[$1>>2]|0; + $32 = HEAP32[$2>>2]|0; + $33 = (_sqlite3WalkSelectExpr($31,$32)|0); + $34 = ($33|0)!=(0); + if ($34) { + label = 11; + break; + } + $35 = HEAP32[$1>>2]|0; + $36 = HEAP32[$2>>2]|0; + $37 = (_sqlite3WalkSelectFrom($35,$36)|0); + $38 = ($37|0)!=(0); + if ($38) { + label = 11; + break; + } + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 8|0); + $45 = HEAP32[$44>>2]|0; + $46 = ($45|0)!=(0|0); + if ($46) { + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 8|0); + $49 = HEAP32[$48>>2]|0; + $50 = HEAP32[$1>>2]|0; + $51 = HEAP32[$2>>2]|0; + FUNCTION_TABLE_vii[$49 & 7]($50,$51); + } + $52 = HEAP32[$2>>2]|0; + $53 = (($52) + 52|0); + $54 = HEAP32[$53>>2]|0; + HEAP32[$2>>2] = $54; + } + if ((label|0) == 11) { + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 16|0); + $41 = HEAP32[$40>>2]|0; + $42 = (($41) + -1)|0; + HEAP32[$40>>2] = $42; + HEAP32[$0>>2] = 2; + $61 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($61|0); + } + else if ((label|0) == 15) { + $55 = HEAP32[$1>>2]|0; + $56 = (($55) + 16|0); + $57 = HEAP32[$56>>2]|0; + $58 = (($57) + -1)|0; + HEAP32[$56>>2] = $58; + $59 = HEAP32[$rc>>2]|0; + $60 = $59 & 2; + HEAP32[$0>>2] = $60; + $61 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($61|0); + } + } + } while(0); + HEAP32[$0>>2] = 0; + $61 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($61|0); +} +function _sqlite3WalkSelectExpr($pWalker,$p) { + $pWalker = $pWalker|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$1>>2] = $pWalker; + HEAP32[$2>>2] = $p; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = (_sqlite3WalkExprList($3,$5)|0); + $7 = ($6|0)!=(0); + do { + if ($7) { + HEAP32[$0>>2] = 2; + } else { + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 36|0); + $11 = HEAP32[$10>>2]|0; + $12 = (_sqlite3WalkExpr($8,$11)|0); + $13 = ($12|0)!=(0); + if ($13) { + HEAP32[$0>>2] = 2; + break; + } + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 40|0); + $17 = HEAP32[$16>>2]|0; + $18 = (_sqlite3WalkExprList($14,$17)|0); + $19 = ($18|0)!=(0); + if ($19) { + HEAP32[$0>>2] = 2; + break; + } + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 44|0); + $23 = HEAP32[$22>>2]|0; + $24 = (_sqlite3WalkExpr($20,$23)|0); + $25 = ($24|0)!=(0); + if ($25) { + HEAP32[$0>>2] = 2; + break; + } + $26 = HEAP32[$1>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 48|0); + $29 = HEAP32[$28>>2]|0; + $30 = (_sqlite3WalkExprList($26,$29)|0); + $31 = ($30|0)!=(0); + if ($31) { + HEAP32[$0>>2] = 2; + break; + } + $32 = HEAP32[$1>>2]|0; + $33 = HEAP32[$2>>2]|0; + $34 = (($33) + 60|0); + $35 = HEAP32[$34>>2]|0; + $36 = (_sqlite3WalkExpr($32,$35)|0); + $37 = ($36|0)!=(0); + if ($37) { + HEAP32[$0>>2] = 2; + break; + } + $38 = HEAP32[$1>>2]|0; + $39 = HEAP32[$2>>2]|0; + $40 = (($39) + 64|0); + $41 = HEAP32[$40>>2]|0; + $42 = (_sqlite3WalkExpr($38,$41)|0); + $43 = ($42|0)!=(0); + if ($43) { + HEAP32[$0>>2] = 2; + break; + } else { + HEAP32[$0>>2] = 0; + break; + } + } + } while(0); + $44 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($44|0); +} +function _sqlite3WalkSelectFrom($pWalker,$p) { + $pWalker = $pWalker|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pItem = 0, $pSrc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $pSrc = sp + 8|0; + $i = sp + 12|0; + $pItem = sp + 16|0; + HEAP32[$1>>2] = $pWalker; + HEAP32[$2>>2] = $p; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 32|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pSrc>>2] = $5; + $6 = HEAP32[$pSrc>>2]|0; + $7 = ($6|0)!=(0|0); + L1: do { + if ($7) { + $8 = HEAP32[$pSrc>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$i>>2] = $9; + $10 = HEAP32[$pSrc>>2]|0; + $11 = (($10) + 8|0); + HEAP32[$pItem>>2] = $11; + while(1) { + $12 = HEAP32[$i>>2]|0; + $13 = ($12|0)>(0); + if (!($13)) { + break L1; + } + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$pItem>>2]|0; + $16 = (($15) + 20|0); + $17 = HEAP32[$16>>2]|0; + $18 = (_sqlite3WalkSelect($14,$17)|0); + $19 = ($18|0)!=(0); + if ($19) { + break; + } + $20 = HEAP32[$i>>2]|0; + $21 = (($20) + -1)|0; + HEAP32[$i>>2] = $21; + $22 = HEAP32[$pItem>>2]|0; + $23 = (($22) + 72|0); + HEAP32[$pItem>>2] = $23; + } + HEAP32[$0>>2] = 2; + $24 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($24|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $24 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($24|0); +} +function _sqlite3WalkExprList($pWalker,$p) { + $pWalker = $pWalker|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $i = 0, $pItem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + $pItem = sp + 12|0; + HEAP32[$1>>2] = $pWalker; + HEAP32[$2>>2] = $p; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + L1: do { + if ($4) { + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$i>>2] = $6; + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$pItem>>2] = $9; + while(1) { + $10 = HEAP32[$i>>2]|0; + $11 = ($10|0)>(0); + if (!($11)) { + break L1; + } + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$pItem>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = (_sqlite3WalkExpr($12,$14)|0); + $16 = ($15|0)!=(0); + if ($16) { + break; + } + $17 = HEAP32[$i>>2]|0; + $18 = (($17) + -1)|0; + HEAP32[$i>>2] = $18; + $19 = HEAP32[$pItem>>2]|0; + $20 = (($19) + 20|0); + HEAP32[$pItem>>2] = $20; + } + HEAP32[$0>>2] = 2; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); +} +function _sqlite3WalkExpr($pWalker,$pExpr) { + $pWalker = $pWalker|0; + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$1>>2] = $pWalker; + HEAP32[$2>>2] = $pExpr; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)==(0|0); + L1: do { + if ($4) { + HEAP32[$0>>2] = 0; + } else { + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = (FUNCTION_TABLE_iii[$6 & 127]($7,$8)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + $11 = ($10|0)==(0); + do { + if ($11) { + $12 = HEAP32[$2>>2]|0; + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = $14 & 16384; + $16 = ($15|0)!=(0); + if (!($16)) { + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = (($18) + 12|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3WalkExpr($17,$20)|0); + $22 = ($21|0)!=(0); + if ($22) { + HEAP32[$0>>2] = 2; + break L1; + } + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$2>>2]|0; + $25 = (($24) + 16|0); + $26 = HEAP32[$25>>2]|0; + $27 = (_sqlite3WalkExpr($23,$26)|0); + $28 = ($27|0)!=(0); + if ($28) { + HEAP32[$0>>2] = 2; + break L1; + } + $29 = HEAP32[$2>>2]|0; + $30 = (($29) + 4|0); + $31 = HEAP32[$30>>2]|0; + $32 = $31 & 2048; + $33 = ($32|0)!=(0); + $34 = HEAP32[$1>>2]|0; + $35 = HEAP32[$2>>2]|0; + $36 = (($35) + 20|0); + if ($33) { + $37 = HEAP32[$36>>2]|0; + $38 = (_sqlite3WalkSelect($34,$37)|0); + $39 = ($38|0)!=(0); + if (!($39)) { + break; + } + HEAP32[$0>>2] = 2; + break L1; + } else { + $40 = HEAP32[$36>>2]|0; + $41 = (_sqlite3WalkExprList($34,$40)|0); + $42 = ($41|0)!=(0); + if (!($42)) { + break; + } + HEAP32[$0>>2] = 2; + break L1; + } + } + } + } while(0); + $43 = HEAP32[$rc>>2]|0; + $44 = $43 & 2; + HEAP32[$0>>2] = $44; + } + } while(0); + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); +} +function _resolveExprStep($pWalker,$pExpr) { + $pWalker = $pWalker|0; + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $auth = 0, $enc = 0; + var $is_agg = 0, $n = 0, $nId = 0, $nRef = 0, $no_such_func = 0, $pDef = 0, $pList = 0, $pNC = 0, $pNC2 = 0, $pParse = 0, $pRight = 0, $vararg_buffer11 = 0, $vararg_ptr10 = 0, $vararg_ptr14 = 0, $vararg_ptr6 = 0, $wrong_num_args = 0, $zColumn = 0, $zDb = 0, $zId = 0, $zTable = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $vararg_buffer11 = sp; + $0 = sp + 80|0; + $1 = sp + 76|0; + $2 = sp + 72|0; + $pNC = sp + 68|0; + $pParse = sp + 64|0; + $zColumn = sp + 60|0; + $zTable = sp + 56|0; + $zDb = sp + 52|0; + $pRight = sp + 48|0; + $pList = sp + 24|0; + $n = sp + 84|0; + $no_such_func = sp + 8|0; + $wrong_num_args = sp + 12|0; + $is_agg = sp + 16|0; + $auth = sp + 44|0; + $nId = sp + 28|0; + $zId = sp + 32|0; + $pDef = sp + 36|0; + $enc = sp + 88|0; + $pNC2 = sp + 40|0; + $nRef = sp + 20|0; + HEAP32[$1>>2] = $pWalker; + HEAP32[$2>>2] = $pExpr; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 20|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pNC>>2] = $5; + $6 = HEAP32[$pNC>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$pParse>>2] = $7; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = $10 & 4; + $12 = ($11|0)!=(0); + if ($12) { + HEAP32[$0>>2] = 1; + $297 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($297|0); + } + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = $15 | 4; + HEAP32[$14>>2] = $16; + $17 = HEAP32[$2>>2]|0; + $18 = HEAP8[$17>>0]|0; + $19 = $18&255; + switch ($19|0) { + case 135: { + $281 = HEAP32[$pParse>>2]|0; + $282 = HEAP32[$pNC>>2]|0; + _notValidCheckConstraint($281,$282,23584); + $283 = HEAP32[$pParse>>2]|0; + $284 = HEAP32[$pNC>>2]|0; + _notValidPartIdxWhere($283,$284,23584); + break; + } + case 27: { + $20 = HEAP32[$pParse>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 8|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$pNC>>2]|0; + $25 = HEAP32[$2>>2]|0; + $26 = (_lookupName($20,0,0,$23,$24,$25)|0); + HEAP32[$0>>2] = $26; + $297 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($297|0); + break; + } + case 122: { + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 16|0); + $29 = HEAP32[$28>>2]|0; + HEAP32[$pRight>>2] = $29; + $30 = HEAP32[$pRight>>2]|0; + $31 = HEAP8[$30>>0]|0; + $32 = $31&255; + $33 = ($32|0)==(27); + if ($33) { + HEAP32[$zDb>>2] = 0; + $34 = HEAP32[$2>>2]|0; + $35 = (($34) + 12|0); + $36 = HEAP32[$35>>2]|0; + $37 = (($36) + 8|0); + $38 = HEAP32[$37>>2]|0; + HEAP32[$zTable>>2] = $38; + $39 = HEAP32[$pRight>>2]|0; + $40 = (($39) + 8|0); + $41 = HEAP32[$40>>2]|0; + HEAP32[$zColumn>>2] = $41; + } else { + $42 = HEAP32[$2>>2]|0; + $43 = (($42) + 12|0); + $44 = HEAP32[$43>>2]|0; + $45 = (($44) + 8|0); + $46 = HEAP32[$45>>2]|0; + HEAP32[$zDb>>2] = $46; + $47 = HEAP32[$pRight>>2]|0; + $48 = (($47) + 12|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) + 8|0); + $51 = HEAP32[$50>>2]|0; + HEAP32[$zTable>>2] = $51; + $52 = HEAP32[$pRight>>2]|0; + $53 = (($52) + 16|0); + $54 = HEAP32[$53>>2]|0; + $55 = (($54) + 8|0); + $56 = HEAP32[$55>>2]|0; + HEAP32[$zColumn>>2] = $56; + } + $57 = HEAP32[$pParse>>2]|0; + $58 = HEAP32[$zDb>>2]|0; + $59 = HEAP32[$zTable>>2]|0; + $60 = HEAP32[$zColumn>>2]|0; + $61 = HEAP32[$pNC>>2]|0; + $62 = HEAP32[$2>>2]|0; + $63 = (_lookupName($57,$58,$59,$60,$61,$62)|0); + HEAP32[$0>>2] = $63; + $297 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($297|0); + break; + } + case 75: case 20: case 119: { + $256 = HEAP32[$2>>2]|0; + $257 = (($256) + 4|0); + $258 = HEAP32[$257>>2]|0; + $259 = $258 & 2048; + $260 = ($259|0)!=(0); + if ($260) { + $261 = HEAP32[$pNC>>2]|0; + $262 = (($261) + 20|0); + $263 = HEAP32[$262>>2]|0; + HEAP32[$nRef>>2] = $263; + $264 = HEAP32[$pParse>>2]|0; + $265 = HEAP32[$pNC>>2]|0; + _notValidCheckConstraint($264,$265,23568); + $266 = HEAP32[$pParse>>2]|0; + $267 = HEAP32[$pNC>>2]|0; + _notValidPartIdxWhere($266,$267,23568); + $268 = HEAP32[$1>>2]|0; + $269 = HEAP32[$2>>2]|0; + $270 = (($269) + 20|0); + $271 = HEAP32[$270>>2]|0; + (_sqlite3WalkSelect($268,$271)|0); + $272 = HEAP32[$nRef>>2]|0; + $273 = HEAP32[$pNC>>2]|0; + $274 = (($273) + 20|0); + $275 = HEAP32[$274>>2]|0; + $276 = ($272|0)!=($275|0); + if ($276) { + $277 = HEAP32[$2>>2]|0; + $278 = (($277) + 4|0); + $279 = HEAP32[$278>>2]|0; + $280 = $279 | 32; + HEAP32[$278>>2] = $280; + } + } + break; + } + case 153: { + $64 = HEAP32[$2>>2]|0; + $65 = (($64) + 20|0); + $66 = HEAP32[$65>>2]|0; + HEAP32[$pList>>2] = $66; + $67 = HEAP32[$pList>>2]|0; + $68 = ($67|0)!=(0|0); + if ($68) { + $69 = HEAP32[$pList>>2]|0; + $70 = HEAP32[$69>>2]|0; + $71 = $70; + } else { + $71 = 0; + } + HEAP32[$n>>2] = $71; + HEAP32[$no_such_func>>2] = 0; + HEAP32[$wrong_num_args>>2] = 0; + HEAP32[$is_agg>>2] = 0; + $72 = HEAP32[$pParse>>2]|0; + $73 = HEAP32[$72>>2]|0; + $74 = (($73) + 16|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($75) + 12|0); + $77 = HEAP32[$76>>2]|0; + $78 = (($77) + 77|0); + $79 = HEAP8[$78>>0]|0; + HEAP8[$enc>>0] = $79; + $80 = HEAP32[$pParse>>2]|0; + $81 = HEAP32[$pNC>>2]|0; + _notValidPartIdxWhere($80,$81,23328); + $82 = HEAP32[$2>>2]|0; + $83 = (($82) + 8|0); + $84 = HEAP32[$83>>2]|0; + HEAP32[$zId>>2] = $84; + $85 = HEAP32[$zId>>2]|0; + $86 = (_sqlite3Strlen30($85)|0); + HEAP32[$nId>>2] = $86; + $87 = HEAP32[$pParse>>2]|0; + $88 = HEAP32[$87>>2]|0; + $89 = HEAP32[$zId>>2]|0; + $90 = HEAP32[$nId>>2]|0; + $91 = HEAP32[$n>>2]|0; + $92 = HEAP8[$enc>>0]|0; + $93 = (_sqlite3FindFunction($88,$89,$90,$91,$92,0)|0); + HEAP32[$pDef>>2] = $93; + $94 = HEAP32[$pDef>>2]|0; + $95 = ($94|0)==(0|0); + do { + if ($95) { + $96 = HEAP32[$pParse>>2]|0; + $97 = HEAP32[$96>>2]|0; + $98 = HEAP32[$zId>>2]|0; + $99 = HEAP32[$nId>>2]|0; + $100 = HEAP8[$enc>>0]|0; + $101 = (_sqlite3FindFunction($97,$98,$99,-2,$100,0)|0); + HEAP32[$pDef>>2] = $101; + $102 = HEAP32[$pDef>>2]|0; + $103 = ($102|0)==(0|0); + if ($103) { + HEAP32[$no_such_func>>2] = 1; + break; + } else { + HEAP32[$wrong_num_args>>2] = 1; + break; + } + } else { + $104 = HEAP32[$pDef>>2]|0; + $105 = (($104) + 12|0); + $106 = HEAP32[$105>>2]|0; + $107 = ($106|0)==(0|0); + $108 = $107&1; + HEAP32[$is_agg>>2] = $108; + $109 = HEAP32[$pDef>>2]|0; + $110 = (($109) + 2|0); + $111 = HEAP16[$110>>1]|0; + $112 = $111&65535; + $113 = $112 & 1024; + $114 = ($113|0)!=(0); + if ($114) { + $115 = HEAP32[$2>>2]|0; + $116 = (($115) + 4|0); + $117 = HEAP32[$116>>2]|0; + $118 = $117 | 266240; + HEAP32[$116>>2] = $118; + $119 = HEAP32[$n>>2]|0; + $120 = ($119|0)==(2); + if (!($120)) { + $138 = HEAP32[$2>>2]|0; + $139 = (($138) + 28|0); + HEAP32[$139>>2] = 62; + break; + } + $121 = HEAP32[$pList>>2]|0; + $122 = (($121) + 4|0); + $123 = HEAP32[$122>>2]|0; + $124 = (($123) + 20|0); + $125 = HEAP32[$124>>2]|0; + $126 = (_exprProbability($125)|0); + $127 = HEAP32[$2>>2]|0; + $128 = (($127) + 28|0); + HEAP32[$128>>2] = $126; + $129 = HEAP32[$2>>2]|0; + $130 = (($129) + 28|0); + $131 = HEAP32[$130>>2]|0; + $132 = ($131|0)<(0); + if ($132) { + $133 = HEAP32[$pParse>>2]|0; + _sqlite3ErrorMsg($133,23344,$vararg_buffer11); + $134 = HEAP32[$pNC>>2]|0; + $135 = (($134) + 24|0); + $136 = HEAP32[$135>>2]|0; + $137 = (($136) + 1)|0; + HEAP32[$135>>2] = $137; + } + } + } + } while(0); + $140 = HEAP32[$pDef>>2]|0; + $141 = ($140|0)!=(0|0); + do { + if ($141) { + $142 = HEAP32[$pParse>>2]|0; + $143 = HEAP32[$pDef>>2]|0; + $144 = (($143) + 24|0); + $145 = HEAP32[$144>>2]|0; + $146 = (_sqlite3AuthCheck($142,31,0,$145,0)|0); + HEAP32[$auth>>2] = $146; + $147 = HEAP32[$auth>>2]|0; + $148 = ($147|0)!=(0); + if (!($148)) { + $160 = HEAP32[$pDef>>2]|0; + $161 = (($160) + 2|0); + $162 = HEAP16[$161>>1]|0; + $163 = $162&65535; + $164 = $163 & 2048; + $165 = ($164|0)!=(0); + if (!($165)) { + break; + } + $166 = HEAP32[$2>>2]|0; + $167 = (($166) + 4|0); + $168 = HEAP32[$167>>2]|0; + $169 = $168 | 524288; + HEAP32[$167>>2] = $169; + break; + } + $149 = HEAP32[$auth>>2]|0; + $150 = ($149|0)==(1); + if ($150) { + $151 = HEAP32[$pParse>>2]|0; + $152 = HEAP32[$pDef>>2]|0; + $153 = (($152) + 24|0); + $154 = HEAP32[$153>>2]|0; + HEAP32[$vararg_buffer11>>2] = $154; + _sqlite3ErrorMsg($151,23416,$vararg_buffer11); + $155 = HEAP32[$pNC>>2]|0; + $156 = (($155) + 24|0); + $157 = HEAP32[$156>>2]|0; + $158 = (($157) + 1)|0; + HEAP32[$156>>2] = $158; + } + $159 = HEAP32[$2>>2]|0; + HEAP8[$159>>0] = 101; + HEAP32[$0>>2] = 1; + $297 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($297|0); + } + } while(0); + $170 = HEAP32[$is_agg>>2]|0; + $171 = ($170|0)!=(0); + if ($171) { + $172 = HEAP32[$pNC>>2]|0; + $173 = (($172) + 28|0); + $174 = HEAP8[$173>>0]|0; + $175 = $174&255; + $176 = $175 & 1; + $177 = ($176|0)==(0); + if ($177) { + $178 = HEAP32[$pParse>>2]|0; + $179 = HEAP32[$nId>>2]|0; + $180 = HEAP32[$zId>>2]|0; + HEAP32[$vararg_buffer11>>2] = $179; + $vararg_ptr6 = (($vararg_buffer11) + 4|0); + HEAP32[$vararg_ptr6>>2] = $180; + _sqlite3ErrorMsg($178,23456,$vararg_buffer11); + $181 = HEAP32[$pNC>>2]|0; + $182 = (($181) + 24|0); + $183 = HEAP32[$182>>2]|0; + $184 = (($183) + 1)|0; + HEAP32[$182>>2] = $184; + HEAP32[$is_agg>>2] = 0; + } else { + label = 30; + } + } else { + label = 30; + } + do { + if ((label|0) == 30) { + $185 = HEAP32[$no_such_func>>2]|0; + $186 = ($185|0)!=(0); + if ($186) { + $187 = HEAP32[$pParse>>2]|0; + $188 = HEAP32[$187>>2]|0; + $189 = (($188) + 132|0); + $190 = (($189) + 5|0); + $191 = HEAP8[$190>>0]|0; + $192 = $191&255; + $193 = ($192|0)==(0); + if ($193) { + $194 = HEAP32[$pParse>>2]|0; + $195 = HEAP32[$nId>>2]|0; + $196 = HEAP32[$zId>>2]|0; + HEAP32[$vararg_buffer11>>2] = $195; + $vararg_ptr10 = (($vararg_buffer11) + 4|0); + HEAP32[$vararg_ptr10>>2] = $196; + _sqlite3ErrorMsg($194,23496,$vararg_buffer11); + $197 = HEAP32[$pNC>>2]|0; + $198 = (($197) + 24|0); + $199 = HEAP32[$198>>2]|0; + $200 = (($199) + 1)|0; + HEAP32[$198>>2] = $200; + break; + } + } + $201 = HEAP32[$wrong_num_args>>2]|0; + $202 = ($201|0)!=(0); + if ($202) { + $203 = HEAP32[$pParse>>2]|0; + $204 = HEAP32[$nId>>2]|0; + $205 = HEAP32[$zId>>2]|0; + HEAP32[$vararg_buffer11>>2] = $204; + $vararg_ptr14 = (($vararg_buffer11) + 4|0); + HEAP32[$vararg_ptr14>>2] = $205; + _sqlite3ErrorMsg($203,23520,$vararg_buffer11); + $206 = HEAP32[$pNC>>2]|0; + $207 = (($206) + 24|0); + $208 = HEAP32[$207>>2]|0; + $209 = (($208) + 1)|0; + HEAP32[$207>>2] = $209; + } + } + } while(0); + $210 = HEAP32[$is_agg>>2]|0; + $211 = ($210|0)!=(0); + if ($211) { + $212 = HEAP32[$pNC>>2]|0; + $213 = (($212) + 28|0); + $214 = HEAP8[$213>>0]|0; + $215 = $214&255; + $216 = $215 & -2; + $217 = $216&255; + HEAP8[$213>>0] = $217; + } + $218 = HEAP32[$1>>2]|0; + $219 = HEAP32[$pList>>2]|0; + (_sqlite3WalkExprList($218,$219)|0); + $220 = HEAP32[$is_agg>>2]|0; + $221 = ($220|0)!=(0); + if ($221) { + $222 = HEAP32[$pNC>>2]|0; + HEAP32[$pNC2>>2] = $222; + $223 = HEAP32[$2>>2]|0; + HEAP8[$223>>0] = -101; + $224 = HEAP32[$2>>2]|0; + $225 = (($224) + 38|0); + HEAP8[$225>>0] = 0; + while(1) { + $226 = HEAP32[$pNC2>>2]|0; + $227 = ($226|0)!=(0|0); + if (!($227)) { + break; + } + $228 = HEAP32[$2>>2]|0; + $229 = HEAP32[$pNC2>>2]|0; + $230 = (($229) + 4|0); + $231 = HEAP32[$230>>2]|0; + $232 = (_sqlite3FunctionUsesThisSrc($228,$231)|0); + $233 = ($232|0)!=(0); + $234 = $233 ^ 1; + if (!($234)) { + break; + } + $235 = HEAP32[$2>>2]|0; + $236 = (($235) + 38|0); + $237 = HEAP8[$236>>0]|0; + $238 = (($237) + 1)<<24>>24; + HEAP8[$236>>0] = $238; + $239 = HEAP32[$pNC2>>2]|0; + $240 = (($239) + 16|0); + $241 = HEAP32[$240>>2]|0; + HEAP32[$pNC2>>2] = $241; + } + $242 = HEAP32[$pNC2>>2]|0; + $243 = ($242|0)!=(0|0); + if ($243) { + $244 = HEAP32[$pNC2>>2]|0; + $245 = (($244) + 28|0); + $246 = HEAP8[$245>>0]|0; + $247 = $246&255; + $248 = $247 | 2; + $249 = $248&255; + HEAP8[$245>>0] = $249; + } + $250 = HEAP32[$pNC>>2]|0; + $251 = (($250) + 28|0); + $252 = HEAP8[$251>>0]|0; + $253 = $252&255; + $254 = $253 | 1; + $255 = $254&255; + HEAP8[$251>>0] = $255; + } + HEAP32[$0>>2] = 1; + $297 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($297|0); + break; + } + default: { + } + } + $285 = HEAP32[$pParse>>2]|0; + $286 = (($285) + 64|0); + $287 = HEAP32[$286>>2]|0; + $288 = ($287|0)!=(0); + if ($288) { + $296 = 1; + } else { + $289 = HEAP32[$pParse>>2]|0; + $290 = HEAP32[$289>>2]|0; + $291 = (($290) + 64|0); + $292 = HEAP8[$291>>0]|0; + $293 = $292&255; + $294 = ($293|0)!=(0); + $296 = $294; + } + $295 = $296 ? 2 : 0; + HEAP32[$0>>2] = $295; + $297 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($297|0); +} +function _resolveSelectStep($pWalker,$p) { + $pWalker = $pWalker|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0, $isCompound = 0, $nCompound = 0, $nRef = 0, $pEList = 0, $pGroupBy = 0, $pItem = 0, $pItem1 = 0, $pLeftmost = 0, $pNC = 0, $pOuterNC = 0, $pParse = 0, $pX = 0; + var $sNC = 0, $vararg_buffer1 = 0, $zSavedContext = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $vararg_buffer1 = sp; + $0 = sp + 100|0; + $1 = sp + 96|0; + $2 = sp + 92|0; + $pOuterNC = sp + 88|0; + $sNC = sp + 56|0; + $isCompound = sp + 52|0; + $nCompound = sp + 48|0; + $pParse = sp + 44|0; + $pEList = sp + 40|0; + $i = sp + 104|0; + $pGroupBy = sp + 16|0; + $pLeftmost = sp + 12|0; + $db = sp + 4|0; + $pItem = sp + 8|0; + $pNC = sp + 32|0; + $nRef = sp + 20|0; + $zSavedContext = sp + 24|0; + $pX = sp + 28|0; + $pItem1 = sp + 36|0; + HEAP32[$1>>2] = $pWalker; + HEAP32[$2>>2] = $p; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 6|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5&65535; + $7 = $6 & 2; + $8 = ($7|0)!=(0); + if ($8) { + HEAP32[$0>>2] = 1; + $265 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($265|0); + } + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 20|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$pOuterNC>>2] = $11; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 12|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$pParse>>2] = $14; + $15 = HEAP32[$pParse>>2]|0; + $16 = HEAP32[$15>>2]|0; + HEAP32[$db>>2] = $16; + $17 = HEAP32[$2>>2]|0; + $18 = (($17) + 6|0); + $19 = HEAP16[$18>>1]|0; + $20 = $19&65535; + $21 = $20 & 16; + $22 = ($21|0)==(0); + if ($22) { + $23 = HEAP32[$pParse>>2]|0; + $24 = HEAP32[$2>>2]|0; + $25 = HEAP32[$pOuterNC>>2]|0; + _sqlite3SelectPrep($23,$24,$25); + $26 = HEAP32[$pParse>>2]|0; + $27 = (($26) + 64|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)!=(0); + if ($29) { + $36 = 1; + } else { + $30 = HEAP32[$db>>2]|0; + $31 = (($30) + 64|0); + $32 = HEAP8[$31>>0]|0; + $33 = $32&255; + $34 = ($33|0)!=(0); + $36 = $34; + } + $35 = $36 ? 2 : 1; + HEAP32[$0>>2] = $35; + $265 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($265|0); + } + $37 = HEAP32[$2>>2]|0; + $38 = (($37) + 52|0); + $39 = HEAP32[$38>>2]|0; + $40 = ($39|0)!=(0|0); + $41 = $40&1; + HEAP32[$isCompound>>2] = $41; + HEAP32[$nCompound>>2] = 0; + $42 = HEAP32[$2>>2]|0; + HEAP32[$pLeftmost>>2] = $42; + L12: while(1) { + $43 = HEAP32[$2>>2]|0; + $44 = ($43|0)!=(0|0); + if (!($44)) { + label = 59; + break; + } + $45 = HEAP32[$2>>2]|0; + $46 = (($45) + 6|0); + $47 = HEAP16[$46>>1]|0; + $48 = $47&65535; + $49 = $48 | 2; + $50 = $49&65535; + HEAP16[$46>>1] = $50; + ;HEAP32[$sNC+0>>2]=0|0;HEAP32[$sNC+4>>2]=0|0;HEAP32[$sNC+8>>2]=0|0;HEAP32[$sNC+12>>2]=0|0;HEAP32[$sNC+16>>2]=0|0;HEAP32[$sNC+20>>2]=0|0;HEAP32[$sNC+24>>2]=0|0;HEAP32[$sNC+28>>2]=0|0; + $51 = HEAP32[$pParse>>2]|0; + HEAP32[$sNC>>2] = $51; + $52 = HEAP32[$2>>2]|0; + $53 = (($52) + 60|0); + $54 = HEAP32[$53>>2]|0; + $55 = (_sqlite3ResolveExprNames($sNC,$54)|0); + $56 = ($55|0)!=(0); + if ($56) { + label = 11; + break; + } + $57 = HEAP32[$2>>2]|0; + $58 = (($57) + 64|0); + $59 = HEAP32[$58>>2]|0; + $60 = (_sqlite3ResolveExprNames($sNC,$59)|0); + $61 = ($60|0)!=(0); + if ($61) { + label = 11; + break; + } + HEAP32[$i>>2] = 0; + while(1) { + $62 = HEAP32[$i>>2]|0; + $63 = HEAP32[$2>>2]|0; + $64 = (($63) + 32|0); + $65 = HEAP32[$64>>2]|0; + $66 = HEAP32[$65>>2]|0; + $67 = ($62|0)<($66|0); + if (!($67)) { + break; + } + $68 = HEAP32[$i>>2]|0; + $69 = HEAP32[$2>>2]|0; + $70 = (($69) + 32|0); + $71 = HEAP32[$70>>2]|0; + $72 = (($71) + 8|0); + $73 = (($72) + (($68*72)|0)|0); + HEAP32[$pItem>>2] = $73; + $74 = HEAP32[$pItem>>2]|0; + $75 = (($74) + 20|0); + $76 = HEAP32[$75>>2]|0; + $77 = ($76|0)!=(0|0); + if ($77) { + HEAP32[$nRef>>2] = 0; + $78 = HEAP32[$pParse>>2]|0; + $79 = (($78) + 492|0); + $80 = HEAP32[$79>>2]|0; + HEAP32[$zSavedContext>>2] = $80; + $81 = HEAP32[$pOuterNC>>2]|0; + HEAP32[$pNC>>2] = $81; + while(1) { + $82 = HEAP32[$pNC>>2]|0; + $83 = ($82|0)!=(0|0); + if (!($83)) { + break; + } + $84 = HEAP32[$pNC>>2]|0; + $85 = (($84) + 20|0); + $86 = HEAP32[$85>>2]|0; + $87 = HEAP32[$nRef>>2]|0; + $88 = (($87) + ($86))|0; + HEAP32[$nRef>>2] = $88; + $89 = HEAP32[$pNC>>2]|0; + $90 = (($89) + 16|0); + $91 = HEAP32[$90>>2]|0; + HEAP32[$pNC>>2] = $91; + } + $92 = HEAP32[$pItem>>2]|0; + $93 = (($92) + 8|0); + $94 = HEAP32[$93>>2]|0; + $95 = ($94|0)!=(0|0); + if ($95) { + $96 = HEAP32[$pItem>>2]|0; + $97 = (($96) + 8|0); + $98 = HEAP32[$97>>2]|0; + $99 = HEAP32[$pParse>>2]|0; + $100 = (($99) + 492|0); + HEAP32[$100>>2] = $98; + } + $101 = HEAP32[$pParse>>2]|0; + $102 = HEAP32[$pItem>>2]|0; + $103 = (($102) + 20|0); + $104 = HEAP32[$103>>2]|0; + $105 = HEAP32[$pOuterNC>>2]|0; + _sqlite3ResolveSelectNames($101,$104,$105); + $106 = HEAP32[$zSavedContext>>2]|0; + $107 = HEAP32[$pParse>>2]|0; + $108 = (($107) + 492|0); + HEAP32[$108>>2] = $106; + $109 = HEAP32[$pParse>>2]|0; + $110 = (($109) + 64|0); + $111 = HEAP32[$110>>2]|0; + $112 = ($111|0)!=(0); + if ($112) { + label = 22; + break L12; + } + $113 = HEAP32[$db>>2]|0; + $114 = (($113) + 64|0); + $115 = HEAP8[$114>>0]|0; + $116 = $115&255; + $117 = ($116|0)!=(0); + if ($117) { + label = 22; + break L12; + } + $118 = HEAP32[$pOuterNC>>2]|0; + HEAP32[$pNC>>2] = $118; + while(1) { + $119 = HEAP32[$pNC>>2]|0; + $120 = ($119|0)!=(0|0); + if (!($120)) { + break; + } + $121 = HEAP32[$pNC>>2]|0; + $122 = (($121) + 20|0); + $123 = HEAP32[$122>>2]|0; + $124 = HEAP32[$nRef>>2]|0; + $125 = (($124) - ($123))|0; + HEAP32[$nRef>>2] = $125; + $126 = HEAP32[$pNC>>2]|0; + $127 = (($126) + 16|0); + $128 = HEAP32[$127>>2]|0; + HEAP32[$pNC>>2] = $128; + } + $129 = HEAP32[$nRef>>2]|0; + $130 = ($129|0)!=(0); + $131 = $130&1; + $132 = HEAP32[$pItem>>2]|0; + $133 = (($132) + 37|0); + $134 = $131&255; + $135 = HEAP8[$133>>0]|0; + $136 = $134 & 1; + $137 = ($136 << 1)&255; + $138 = $135 & -3; + $139 = $138 | $137; + HEAP8[$133>>0] = $139; + } + $140 = HEAP32[$i>>2]|0; + $141 = (($140) + 1)|0; + HEAP32[$i>>2] = $141; + } + $142 = (($sNC) + 28|0); + HEAP8[$142>>0] = 1; + $143 = HEAP32[$2>>2]|0; + $144 = (($143) + 32|0); + $145 = HEAP32[$144>>2]|0; + $146 = (($sNC) + 4|0); + HEAP32[$146>>2] = $145; + $147 = HEAP32[$pOuterNC>>2]|0; + $148 = (($sNC) + 16|0); + HEAP32[$148>>2] = $147; + $149 = HEAP32[$2>>2]|0; + $150 = HEAP32[$149>>2]|0; + HEAP32[$pEList>>2] = $150; + HEAP32[$i>>2] = 0; + while(1) { + $151 = HEAP32[$i>>2]|0; + $152 = HEAP32[$pEList>>2]|0; + $153 = HEAP32[$152>>2]|0; + $154 = ($151|0)<($153|0); + if (!($154)) { + break; + } + $155 = HEAP32[$i>>2]|0; + $156 = HEAP32[$pEList>>2]|0; + $157 = (($156) + 4|0); + $158 = HEAP32[$157>>2]|0; + $159 = (($158) + (($155*20)|0)|0); + $160 = HEAP32[$159>>2]|0; + HEAP32[$pX>>2] = $160; + $161 = HEAP32[$pX>>2]|0; + $162 = (_sqlite3ResolveExprNames($sNC,$161)|0); + $163 = ($162|0)!=(0); + if ($163) { + label = 31; + break L12; + } + $164 = HEAP32[$i>>2]|0; + $165 = (($164) + 1)|0; + HEAP32[$i>>2] = $165; + } + $166 = HEAP32[$2>>2]|0; + $167 = (($166) + 40|0); + $168 = HEAP32[$167>>2]|0; + HEAP32[$pGroupBy>>2] = $168; + $169 = HEAP32[$pGroupBy>>2]|0; + $170 = ($169|0)!=(0|0); + if ($170) { + label = 35; + } else { + $171 = (($sNC) + 28|0); + $172 = HEAP8[$171>>0]|0; + $173 = $172&255; + $174 = $173 & 2; + $175 = ($174|0)!=(0); + if ($175) { + label = 35; + } else { + $182 = (($sNC) + 28|0); + $183 = HEAP8[$182>>0]|0; + $184 = $183&255; + $185 = $184 & -2; + $186 = $185&255; + HEAP8[$182>>0] = $186; + } + } + if ((label|0) == 35) { + label = 0; + $176 = HEAP32[$2>>2]|0; + $177 = (($176) + 6|0); + $178 = HEAP16[$177>>1]|0; + $179 = $178&65535; + $180 = $179 | 4; + $181 = $180&65535; + HEAP16[$177>>1] = $181; + } + $187 = HEAP32[$2>>2]|0; + $188 = (($187) + 44|0); + $189 = HEAP32[$188>>2]|0; + $190 = ($189|0)!=(0|0); + if ($190) { + $191 = HEAP32[$pGroupBy>>2]|0; + $192 = ($191|0)!=(0|0); + if (!($192)) { + label = 39; + break; + } + } + $194 = HEAP32[$2>>2]|0; + $195 = HEAP32[$194>>2]|0; + $196 = (($sNC) + 8|0); + HEAP32[$196>>2] = $195; + $197 = HEAP32[$2>>2]|0; + $198 = (($197) + 44|0); + $199 = HEAP32[$198>>2]|0; + $200 = (_sqlite3ResolveExprNames($sNC,$199)|0); + $201 = ($200|0)!=(0); + if ($201) { + label = 41; + break; + } + $202 = HEAP32[$2>>2]|0; + $203 = (($202) + 36|0); + $204 = HEAP32[$203>>2]|0; + $205 = (_sqlite3ResolveExprNames($sNC,$204)|0); + $206 = ($205|0)!=(0); + if ($206) { + label = 43; + break; + } + $207 = (($sNC) + 16|0); + HEAP32[$207>>2] = 0; + $208 = (($sNC) + 28|0); + $209 = HEAP8[$208>>0]|0; + $210 = $209&255; + $211 = $210 | 1; + $212 = $211&255; + HEAP8[$208>>0] = $212; + $213 = HEAP32[$isCompound>>2]|0; + $214 = ($213|0)!=(0); + if (!($214)) { + $215 = HEAP32[$2>>2]|0; + $216 = HEAP32[$2>>2]|0; + $217 = (($216) + 48|0); + $218 = HEAP32[$217>>2]|0; + $219 = (_resolveOrderGroupBy($sNC,$215,$218,23008)|0); + $220 = ($219|0)!=(0); + if ($220) { + label = 46; + break; + } + } + $221 = HEAP32[$db>>2]|0; + $222 = (($221) + 64|0); + $223 = HEAP8[$222>>0]|0; + $224 = ($223<<24>>24)!=(0); + if ($224) { + label = 48; + break; + } + $225 = HEAP32[$pGroupBy>>2]|0; + $226 = ($225|0)!=(0|0); + L57: do { + if ($226) { + $227 = HEAP32[$2>>2]|0; + $228 = HEAP32[$pGroupBy>>2]|0; + $229 = (_resolveOrderGroupBy($sNC,$227,$228,23016)|0); + $230 = ($229|0)!=(0); + if ($230) { + label = 52; + break L12; + } + $231 = HEAP32[$db>>2]|0; + $232 = (($231) + 64|0); + $233 = HEAP8[$232>>0]|0; + $234 = $233&255; + $235 = ($234|0)!=(0); + if ($235) { + label = 52; + break L12; + } + HEAP32[$i>>2] = 0; + $236 = HEAP32[$pGroupBy>>2]|0; + $237 = (($236) + 4|0); + $238 = HEAP32[$237>>2]|0; + HEAP32[$pItem1>>2] = $238; + while(1) { + $239 = HEAP32[$i>>2]|0; + $240 = HEAP32[$pGroupBy>>2]|0; + $241 = HEAP32[$240>>2]|0; + $242 = ($239|0)<($241|0); + if (!($242)) { + break L57; + } + $243 = HEAP32[$pItem1>>2]|0; + $244 = HEAP32[$243>>2]|0; + $245 = (($244) + 4|0); + $246 = HEAP32[$245>>2]|0; + $247 = $246 & 2; + $248 = ($247|0)!=(0); + if ($248) { + label = 56; + break L12; + } + $250 = HEAP32[$i>>2]|0; + $251 = (($250) + 1)|0; + HEAP32[$i>>2] = $251; + $252 = HEAP32[$pItem1>>2]|0; + $253 = (($252) + 20|0); + HEAP32[$pItem1>>2] = $253; + } + } + } while(0); + $254 = HEAP32[$2>>2]|0; + $255 = (($254) + 52|0); + $256 = HEAP32[$255>>2]|0; + HEAP32[$2>>2] = $256; + $257 = HEAP32[$nCompound>>2]|0; + $258 = (($257) + 1)|0; + HEAP32[$nCompound>>2] = $258; + } + switch (label|0) { + case 11: { + HEAP32[$0>>2] = 2; + $265 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($265|0); + break; + } + case 22: { + HEAP32[$0>>2] = 2; + $265 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($265|0); + break; + } + case 31: { + HEAP32[$0>>2] = 2; + $265 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($265|0); + break; + } + case 39: { + $193 = HEAP32[$pParse>>2]|0; + _sqlite3ErrorMsg($193,22960,$vararg_buffer1); + HEAP32[$0>>2] = 2; + $265 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($265|0); + break; + } + case 41: { + HEAP32[$0>>2] = 2; + $265 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($265|0); + break; + } + case 43: { + HEAP32[$0>>2] = 2; + $265 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($265|0); + break; + } + case 46: { + HEAP32[$0>>2] = 2; + $265 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($265|0); + break; + } + case 48: { + HEAP32[$0>>2] = 2; + $265 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($265|0); + break; + } + case 52: { + HEAP32[$0>>2] = 2; + $265 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($265|0); + break; + } + case 56: { + $249 = HEAP32[$pParse>>2]|0; + _sqlite3ErrorMsg($249,23024,$vararg_buffer1); + HEAP32[$0>>2] = 2; + $265 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($265|0); + break; + } + case 59: { + $259 = HEAP32[$isCompound>>2]|0; + $260 = ($259|0)!=(0); + if ($260) { + $261 = HEAP32[$pParse>>2]|0; + $262 = HEAP32[$pLeftmost>>2]|0; + $263 = (_resolveCompoundOrderBy($261,$262)|0); + $264 = ($263|0)!=(0); + if ($264) { + HEAP32[$0>>2] = 2; + $265 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($265|0); + } + } + HEAP32[$0>>2] = 1; + $265 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($265|0); + break; + } + } + return 0|0; +} +function _sqlite3ResolveExprNames($pNC,$pExpr) { + $pNC = $pNC|0; + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $pParse = 0, $savedHasAgg = 0, $w = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp; + $2 = sp + 4|0; + $savedHasAgg = sp + 44|0; + $w = sp + 16|0; + $pParse = sp + 8|0; + HEAP32[$1>>2] = $pNC; + HEAP32[$2>>2] = $pExpr; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + HEAP32[$0>>2] = 0; + $89 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($89|0); + } + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$pParse>>2] = $6; + $7 = HEAP32[$pParse>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 24|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + 460|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($10) + ($14))|0; + $16 = (_sqlite3ExprCheckHeight($7,$15)|0); + $17 = ($16|0)!=(0); + if ($17) { + HEAP32[$0>>2] = 1; + $89 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($89|0); + } + $18 = HEAP32[$2>>2]|0; + $19 = (($18) + 24|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$pParse>>2]|0; + $22 = (($21) + 460|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + ($20))|0; + HEAP32[$22>>2] = $24; + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 28|0); + $27 = HEAP8[$26>>0]|0; + $28 = $27&255; + $29 = $28 & 2; + $30 = $29&255; + HEAP8[$savedHasAgg>>0] = $30; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 28|0); + $33 = HEAP8[$32>>0]|0; + $34 = $33&255; + $35 = $34 & -3; + $36 = $35&255; + HEAP8[$32>>0] = $36; + ;HEAP32[$w+0>>2]=0|0;HEAP32[$w+4>>2]=0|0;HEAP32[$w+8>>2]=0|0;HEAP32[$w+12>>2]=0|0;HEAP32[$w+16>>2]=0|0;HEAP32[$w+20>>2]=0|0; + HEAP32[$w>>2] = 58; + $37 = (($w) + 4|0); + HEAP32[$37>>2] = 59; + $38 = HEAP32[$1>>2]|0; + $39 = HEAP32[$38>>2]|0; + $40 = (($w) + 12|0); + HEAP32[$40>>2] = $39; + $41 = HEAP32[$1>>2]|0; + $42 = (($w) + 20|0); + HEAP32[$42>>2] = $41; + $43 = HEAP32[$2>>2]|0; + (_sqlite3WalkExpr($w,$43)|0); + $44 = HEAP32[$2>>2]|0; + $45 = (($44) + 24|0); + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$1>>2]|0; + $48 = HEAP32[$47>>2]|0; + $49 = (($48) + 460|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) - ($46))|0; + HEAP32[$49>>2] = $51; + $52 = HEAP32[$1>>2]|0; + $53 = (($52) + 24|0); + $54 = HEAP32[$53>>2]|0; + $55 = ($54|0)>(0); + if ($55) { + label = 7; + } else { + $56 = (($w) + 12|0); + $57 = HEAP32[$56>>2]|0; + $58 = (($57) + 64|0); + $59 = HEAP32[$58>>2]|0; + $60 = ($59|0)>(0); + if ($60) { + label = 7; + } + } + if ((label|0) == 7) { + $61 = HEAP32[$2>>2]|0; + $62 = (($61) + 4|0); + $63 = HEAP32[$62>>2]|0; + $64 = $63 | 8; + HEAP32[$62>>2] = $64; + } + $65 = HEAP32[$1>>2]|0; + $66 = (($65) + 28|0); + $67 = HEAP8[$66>>0]|0; + $68 = $67&255; + $69 = $68 & 2; + $70 = ($69|0)!=(0); + if ($70) { + $71 = HEAP32[$2>>2]|0; + $72 = (($71) + 4|0); + $73 = HEAP32[$72>>2]|0; + $74 = $73 | 2; + HEAP32[$72>>2] = $74; + } else { + $75 = HEAP8[$savedHasAgg>>0]|0; + $76 = ($75<<24>>24)!=(0); + if ($76) { + $77 = HEAP32[$1>>2]|0; + $78 = (($77) + 28|0); + $79 = HEAP8[$78>>0]|0; + $80 = $79&255; + $81 = $80 | 2; + $82 = $81&255; + HEAP8[$78>>0] = $82; + } + } + $83 = HEAP32[$2>>2]|0; + $84 = (($83) + 4|0); + $85 = HEAP32[$84>>2]|0; + $86 = $85 & 8; + $87 = ($86|0)!=(0); + $88 = $87&1; + HEAP32[$0>>2] = $88; + $89 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($89|0); +} +function _resolveOrderGroupBy($pNC,$pSelect,$pOrderBy,$zType) { + $pNC = $pNC|0; + $pSelect = $pSelect|0; + $pOrderBy = $pOrderBy|0; + $zType = $zType|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $i = 0, $iCol = 0, $j = 0, $nResult = 0, $or$cond = 0, $pE = 0, $pE2 = 0, $pItem = 0; + var $pParse = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 48|0; + $1 = sp + 44|0; + $2 = sp + 40|0; + $3 = sp + 36|0; + $4 = sp + 32|0; + $i = sp + 28|0; + $j = sp + 24|0; + $iCol = sp + 16|0; + $pItem = sp + 12|0; + $pParse = sp + 8|0; + $nResult = sp + 4|0; + $pE = sp; + $pE2 = sp + 20|0; + HEAP32[$1>>2] = $pNC; + HEAP32[$2>>2] = $pSelect; + HEAP32[$3>>2] = $pOrderBy; + HEAP32[$4>>2] = $zType; + $5 = HEAP32[$3>>2]|0; + $6 = ($5|0)==(0|0); + if ($6) { + HEAP32[$0>>2] = 0; + $91 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($91|0); + } + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$nResult>>2] = $9; + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$10>>2]|0; + HEAP32[$pParse>>2] = $11; + HEAP32[$i>>2] = 0; + $12 = HEAP32[$3>>2]|0; + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$pItem>>2] = $14; + L5: while(1) { + $15 = HEAP32[$i>>2]|0; + $16 = HEAP32[$3>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = ($15|0)<($17|0); + if (!($18)) { + label = 20; + break; + } + $19 = HEAP32[$pItem>>2]|0; + $20 = HEAP32[$19>>2]|0; + HEAP32[$pE>>2] = $20; + $21 = HEAP32[$pE>>2]|0; + $22 = (_sqlite3ExprSkipCollate($21)|0); + HEAP32[$pE2>>2] = $22; + $23 = HEAP32[$4>>2]|0; + $24 = HEAP8[$23>>0]|0; + $25 = $24 << 24 >> 24; + $26 = ($25|0)!=(71); + if ($26) { + $27 = HEAP32[$pParse>>2]|0; + $28 = HEAP32[$2>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$pE2>>2]|0; + $31 = (_resolveAsName($27,$29,$30)|0); + HEAP32[$iCol>>2] = $31; + $32 = HEAP32[$iCol>>2]|0; + $33 = ($32|0)>(0); + if ($33) { + $34 = HEAP32[$iCol>>2]|0; + $35 = $34&65535; + $36 = HEAP32[$pItem>>2]|0; + $37 = (($36) + 16|0); + HEAP16[$37>>1] = $35; + } else { + label = 8; + } + } else { + label = 8; + } + L11: do { + if ((label|0) == 8) { + label = 0; + $38 = HEAP32[$pE2>>2]|0; + $39 = (_sqlite3ExprIsInteger($38,$iCol)|0); + $40 = ($39|0)!=(0); + if ($40) { + $41 = HEAP32[$iCol>>2]|0; + $42 = ($41|0)<(1); + $43 = HEAP32[$iCol>>2]|0; + $44 = ($43|0)>(65535); + $or$cond = $42 | $44; + if ($or$cond) { + label = 10; + break L5; + } + $50 = HEAP32[$iCol>>2]|0; + $51 = $50&65535; + $52 = HEAP32[$pItem>>2]|0; + $53 = (($52) + 16|0); + HEAP16[$53>>1] = $51; + break; + } + $54 = HEAP32[$pItem>>2]|0; + $55 = (($54) + 16|0); + HEAP16[$55>>1] = 0; + $56 = HEAP32[$1>>2]|0; + $57 = HEAP32[$pE>>2]|0; + $58 = (_sqlite3ResolveExprNames($56,$57)|0); + $59 = ($58|0)!=(0); + if ($59) { + label = 13; + break L5; + } + HEAP32[$j>>2] = 0; + while(1) { + $60 = HEAP32[$j>>2]|0; + $61 = HEAP32[$2>>2]|0; + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$62>>2]|0; + $64 = ($60|0)<($63|0); + if (!($64)) { + break L11; + } + $65 = HEAP32[$pE>>2]|0; + $66 = HEAP32[$j>>2]|0; + $67 = HEAP32[$2>>2]|0; + $68 = HEAP32[$67>>2]|0; + $69 = (($68) + 4|0); + $70 = HEAP32[$69>>2]|0; + $71 = (($70) + (($66*20)|0)|0); + $72 = HEAP32[$71>>2]|0; + $73 = (_sqlite3ExprCompare($65,$72,-1)|0); + $74 = ($73|0)==(0); + if ($74) { + $75 = HEAP32[$j>>2]|0; + $76 = (($75) + 1)|0; + $77 = $76&65535; + $78 = HEAP32[$pItem>>2]|0; + $79 = (($78) + 16|0); + HEAP16[$79>>1] = $77; + } + $80 = HEAP32[$j>>2]|0; + $81 = (($80) + 1)|0; + HEAP32[$j>>2] = $81; + } + } + } while(0); + $82 = HEAP32[$i>>2]|0; + $83 = (($82) + 1)|0; + HEAP32[$i>>2] = $83; + $84 = HEAP32[$pItem>>2]|0; + $85 = (($84) + 20|0); + HEAP32[$pItem>>2] = $85; + } + if ((label|0) == 10) { + $45 = HEAP32[$pParse>>2]|0; + $46 = HEAP32[$4>>2]|0; + $47 = HEAP32[$i>>2]|0; + $48 = (($47) + 1)|0; + $49 = HEAP32[$nResult>>2]|0; + _resolveOutOfRangeError($45,$46,$48,$49); + HEAP32[$0>>2] = 1; + $91 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($91|0); + } + else if ((label|0) == 13) { + HEAP32[$0>>2] = 1; + $91 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($91|0); + } + else if ((label|0) == 20) { + $86 = HEAP32[$pParse>>2]|0; + $87 = HEAP32[$2>>2]|0; + $88 = HEAP32[$3>>2]|0; + $89 = HEAP32[$4>>2]|0; + $90 = (_sqlite3ResolveOrderGroupBy($86,$87,$88,$89)|0); + HEAP32[$0>>2] = $90; + $91 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($91|0); + } + return 0|0; +} +function _resolveCompoundOrderBy($pParse,$pSelect) { + $pParse = $pParse|0; + $pSelect = $pSelect|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $db = 0, $i = 0, $iCol = 0, $moreToDo = 0, $pDup = 0, $pE = 0, $pEList = 0, $pItem = 0, $pNew = 0, $pOrderBy = 0, $vararg_buffer1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer1 = sp; + $0 = sp + 48|0; + $1 = sp + 44|0; + $2 = sp + 40|0; + $i = sp + 36|0; + $pOrderBy = sp + 32|0; + $pEList = sp + 28|0; + $db = sp + 52|0; + $moreToDo = sp + 16|0; + $pItem = sp + 12|0; + $iCol = sp + 8|0; + $pE = sp + 4|0; + $pDup = sp + 20|0; + $pNew = sp + 24|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pSelect; + HEAP32[$moreToDo>>2] = 1; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 48|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pOrderBy>>2] = $5; + $6 = HEAP32[$pOrderBy>>2]|0; + $7 = ($6|0)==(0|0); + if ($7) { + HEAP32[$0>>2] = 0; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$db>>2] = $9; + $10 = HEAP32[$pOrderBy>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$db>>2]|0; + $13 = (($12) + 88|0); + $14 = (($13) + 8|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($11|0)>($15|0); + if ($16) { + $17 = HEAP32[$1>>2]|0; + _sqlite3ErrorMsg($17,23088,$vararg_buffer1); + HEAP32[$0>>2] = 1; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $18 = HEAP32[$i>>2]|0; + $19 = HEAP32[$pOrderBy>>2]|0; + $20 = HEAP32[$19>>2]|0; + $21 = ($18|0)<($20|0); + if (!($21)) { + break; + } + $22 = HEAP32[$i>>2]|0; + $23 = HEAP32[$pOrderBy>>2]|0; + $24 = (($23) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + (($22*20)|0)|0); + $27 = (($26) + 13|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28 & -2; + HEAP8[$27>>0] = $29; + $30 = HEAP32[$i>>2]|0; + $31 = (($30) + 1)|0; + HEAP32[$i>>2] = $31; + } + $32 = HEAP32[$2>>2]|0; + $33 = (($32) + 56|0); + HEAP32[$33>>2] = 0; + while(1) { + $34 = HEAP32[$2>>2]|0; + $35 = (($34) + 52|0); + $36 = HEAP32[$35>>2]|0; + $37 = ($36|0)!=(0|0); + if (!($37)) { + break; + } + $38 = HEAP32[$2>>2]|0; + $39 = HEAP32[$2>>2]|0; + $40 = (($39) + 52|0); + $41 = HEAP32[$40>>2]|0; + $42 = (($41) + 56|0); + HEAP32[$42>>2] = $38; + $43 = HEAP32[$2>>2]|0; + $44 = (($43) + 52|0); + $45 = HEAP32[$44>>2]|0; + HEAP32[$2>>2] = $45; + } + L16: while(1) { + $46 = HEAP32[$2>>2]|0; + $47 = ($46|0)!=(0|0); + if (!($47)) { + label = 34; + break; + } + $48 = HEAP32[$moreToDo>>2]|0; + $49 = ($48|0)!=(0); + if (!($49)) { + label = 34; + break; + } + HEAP32[$moreToDo>>2] = 0; + $50 = HEAP32[$2>>2]|0; + $51 = HEAP32[$50>>2]|0; + HEAP32[$pEList>>2] = $51; + HEAP32[$i>>2] = 0; + $52 = HEAP32[$pOrderBy>>2]|0; + $53 = (($52) + 4|0); + $54 = HEAP32[$53>>2]|0; + HEAP32[$pItem>>2] = $54; + while(1) { + $55 = HEAP32[$i>>2]|0; + $56 = HEAP32[$pOrderBy>>2]|0; + $57 = HEAP32[$56>>2]|0; + $58 = ($55|0)<($57|0); + if (!($58)) { + break; + } + HEAP32[$iCol>>2] = -1; + $59 = HEAP32[$pItem>>2]|0; + $60 = (($59) + 13|0); + $61 = HEAP8[$60>>0]|0; + $62 = $61 & 1; + $63 = $62&255; + $64 = ($63|0)!=(0); + do { + if (!($64)) { + $65 = HEAP32[$pItem>>2]|0; + $66 = HEAP32[$65>>2]|0; + $67 = (_sqlite3ExprSkipCollate($66)|0); + HEAP32[$pE>>2] = $67; + $68 = HEAP32[$pE>>2]|0; + $69 = (_sqlite3ExprIsInteger($68,$iCol)|0); + $70 = ($69|0)!=(0); + if ($70) { + $71 = HEAP32[$iCol>>2]|0; + $72 = ($71|0)<=(0); + if ($72) { + label = 19; + break L16; + } + $73 = HEAP32[$iCol>>2]|0; + $74 = HEAP32[$pEList>>2]|0; + $75 = HEAP32[$74>>2]|0; + $76 = ($73|0)>($75|0); + if ($76) { + label = 19; + break L16; + } + } else { + $82 = HEAP32[$1>>2]|0; + $83 = HEAP32[$pEList>>2]|0; + $84 = HEAP32[$pE>>2]|0; + $85 = (_resolveAsName($82,$83,$84)|0); + HEAP32[$iCol>>2] = $85; + $86 = HEAP32[$iCol>>2]|0; + $87 = ($86|0)==(0); + if ($87) { + $88 = HEAP32[$db>>2]|0; + $89 = HEAP32[$pE>>2]|0; + $90 = (_sqlite3ExprDup($88,$89,0)|0); + HEAP32[$pDup>>2] = $90; + $91 = HEAP32[$db>>2]|0; + $92 = (($91) + 64|0); + $93 = HEAP8[$92>>0]|0; + $94 = ($93<<24>>24)!=(0); + if (!($94)) { + $95 = HEAP32[$1>>2]|0; + $96 = HEAP32[$2>>2]|0; + $97 = HEAP32[$pDup>>2]|0; + $98 = (_resolveOrderByTermToExprList($95,$96,$97)|0); + HEAP32[$iCol>>2] = $98; + } + $99 = HEAP32[$db>>2]|0; + $100 = HEAP32[$pDup>>2]|0; + _sqlite3ExprDelete($99,$100); + } + } + $101 = HEAP32[$iCol>>2]|0; + $102 = ($101|0)>(0); + if (!($102)) { + HEAP32[$moreToDo>>2] = 1; + break; + } + $103 = HEAP32[$db>>2]|0; + $104 = (_sqlite3Expr($103,132,0)|0); + HEAP32[$pNew>>2] = $104; + $105 = HEAP32[$pNew>>2]|0; + $106 = ($105|0)==(0|0); + if ($106) { + label = 26; + break L16; + } + $107 = HEAP32[$pNew>>2]|0; + $108 = (($107) + 4|0); + $109 = HEAP32[$108>>2]|0; + $110 = $109 | 1024; + HEAP32[$108>>2] = $110; + $111 = HEAP32[$iCol>>2]|0; + $112 = HEAP32[$pNew>>2]|0; + $113 = (($112) + 8|0); + HEAP32[$113>>2] = $111; + $114 = HEAP32[$pItem>>2]|0; + $115 = HEAP32[$114>>2]|0; + $116 = HEAP32[$pE>>2]|0; + $117 = ($115|0)==($116|0); + $118 = HEAP32[$pNew>>2]|0; + $119 = HEAP32[$pItem>>2]|0; + if ($117) { + HEAP32[$119>>2] = $118; + } else { + $120 = HEAP32[$119>>2]|0; + $121 = (($120) + 12|0); + HEAP32[$121>>2] = $118; + } + $122 = HEAP32[$db>>2]|0; + $123 = HEAP32[$pE>>2]|0; + _sqlite3ExprDelete($122,$123); + $124 = HEAP32[$iCol>>2]|0; + $125 = $124&65535; + $126 = HEAP32[$pItem>>2]|0; + $127 = (($126) + 16|0); + HEAP16[$127>>1] = $125; + $128 = HEAP32[$pItem>>2]|0; + $129 = (($128) + 13|0); + $130 = HEAP8[$129>>0]|0; + $131 = $130 & -2; + $132 = $131 | 1; + HEAP8[$129>>0] = $132; + } + } while(0); + $133 = HEAP32[$i>>2]|0; + $134 = (($133) + 1)|0; + HEAP32[$i>>2] = $134; + $135 = HEAP32[$pItem>>2]|0; + $136 = (($135) + 20|0); + HEAP32[$pItem>>2] = $136; + } + $137 = HEAP32[$2>>2]|0; + $138 = (($137) + 56|0); + $139 = HEAP32[$138>>2]|0; + HEAP32[$2>>2] = $139; + } + if ((label|0) == 19) { + $77 = HEAP32[$1>>2]|0; + $78 = HEAP32[$i>>2]|0; + $79 = (($78) + 1)|0; + $80 = HEAP32[$pEList>>2]|0; + $81 = HEAP32[$80>>2]|0; + _resolveOutOfRangeError($77,23008,$79,$81); + HEAP32[$0>>2] = 1; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + else if ((label|0) == 26) { + HEAP32[$0>>2] = 1; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + else if ((label|0) == 34) { + HEAP32[$i>>2] = 0; + while(1) { + $140 = HEAP32[$i>>2]|0; + $141 = HEAP32[$pOrderBy>>2]|0; + $142 = HEAP32[$141>>2]|0; + $143 = ($140|0)<($142|0); + if (!($143)) { + label = 39; + break; + } + $144 = HEAP32[$i>>2]|0; + $145 = HEAP32[$pOrderBy>>2]|0; + $146 = (($145) + 4|0); + $147 = HEAP32[$146>>2]|0; + $148 = (($147) + (($144*20)|0)|0); + $149 = (($148) + 13|0); + $150 = HEAP8[$149>>0]|0; + $151 = $150 & 1; + $152 = $151&255; + $153 = ($152|0)==(0); + if ($153) { + label = 37; + break; + } + $157 = HEAP32[$i>>2]|0; + $158 = (($157) + 1)|0; + HEAP32[$i>>2] = $158; + } + if ((label|0) == 37) { + $154 = HEAP32[$1>>2]|0; + $155 = HEAP32[$i>>2]|0; + $156 = (($155) + 1)|0; + HEAP32[$vararg_buffer1>>2] = $156; + _sqlite3ErrorMsg($154,23128,$vararg_buffer1); + HEAP32[$0>>2] = 1; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + else if ((label|0) == 39) { + HEAP32[$0>>2] = 0; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + } + return 0|0; +} +function _sqlite3ExprIsInteger($p,$pValue) { + $p = $p|0; + $pValue = $pValue|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $v = sp + 12|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pValue; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = $5 & 1024; + $7 = ($6|0)!=(0); + $8 = HEAP32[$1>>2]|0; + if ($7) { + $9 = (($8) + 8|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$2>>2]|0; + HEAP32[$11>>2] = $10; + HEAP32[$0>>2] = 1; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } + $12 = HEAP8[$8>>0]|0; + $13 = $12&255; + if ((($13|0) == 158)) { + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 12|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = (_sqlite3ExprIsInteger($16,$17)|0); + HEAP32[$rc>>2] = $18; + } else if ((($13|0) == 157)) { + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 12|0); + $21 = HEAP32[$20>>2]|0; + $22 = (_sqlite3ExprIsInteger($21,$v)|0); + $23 = ($22|0)!=(0); + if ($23) { + $24 = HEAP32[$v>>2]|0; + $25 = (0 - ($24))|0; + $26 = HEAP32[$2>>2]|0; + HEAP32[$26>>2] = $25; + HEAP32[$rc>>2] = 1; + } + } + $27 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $27; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); +} +function _resolveOutOfRangeError($pParse,$zType,$i,$mx) { + $pParse = $pParse|0; + $zType = $zType|0; + $i = $i|0; + $mx = $mx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 24|0; + $1 = sp + 12|0; + $2 = sp + 16|0; + $3 = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $zType; + HEAP32[$2>>2] = $i; + HEAP32[$3>>2] = $mx; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$3>>2]|0; + HEAP32[$vararg_buffer>>2] = $5; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $6; + $vararg_ptr2 = (($vararg_buffer) + 8|0); + HEAP32[$vararg_ptr2>>2] = $7; + _sqlite3ErrorMsg($4,23192,$vararg_buffer); + STACKTOP = sp;return; +} +function _resolveAsName($pParse,$pEList,$pE) { + $pParse = $pParse|0; + $pEList = $pEList|0; + $pE = $pE|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $zAs = 0, $zCol = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $i = sp + 12|0; + $zCol = sp + 16|0; + $zAs = sp + 20|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pEList; + HEAP32[$3>>2] = $pE; + $4 = HEAP32[$3>>2]|0; + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = ($6|0)==(27); + L1: do { + if ($7) { + $8 = HEAP32[$3>>2]|0; + $9 = (($8) + 8|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$zCol>>2] = $10; + HEAP32[$i>>2] = 0; + while(1) { + $11 = HEAP32[$i>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = ($11|0)<($13|0); + if (!($14)) { + break L1; + } + $15 = HEAP32[$i>>2]|0; + $16 = HEAP32[$2>>2]|0; + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + (($15*20)|0)|0); + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$zAs>>2] = $21; + $22 = HEAP32[$zAs>>2]|0; + $23 = ($22|0)!=(0|0); + if ($23) { + $24 = HEAP32[$zAs>>2]|0; + $25 = HEAP32[$zCol>>2]|0; + $26 = (_sqlite3_stricmp($24,$25)|0); + $27 = ($26|0)==(0); + if ($27) { + break; + } + } + $30 = HEAP32[$i>>2]|0; + $31 = (($30) + 1)|0; + HEAP32[$i>>2] = $31; + } + $28 = HEAP32[$i>>2]|0; + $29 = (($28) + 1)|0; + HEAP32[$0>>2] = $29; + $32 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($32|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $32 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($32|0); +} +function _sqlite3ExprDup($db,$p,$flags) { + $db = $db|0; + $p = $p|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $flags; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = (_exprDup($3,$4,$5,0)|0); + STACKTOP = sp;return ($6|0); +} +function _resolveOrderByTermToExprList($pParse,$pSelect,$pE) { + $pParse = $pParse|0; + $pSelect = $pSelect|0; + $pE = $pE|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $nc = 0, $pEList = 0, $rc = 0, $savedSuppErr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 44|0; + $1 = sp + 60|0; + $2 = sp + 56|0; + $3 = sp + 52|0; + $i = sp + 48|0; + $pEList = sp + 40|0; + $nc = sp + 8|0; + $db = sp + 4|0; + $rc = sp; + $savedSuppErr = sp + 64|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pSelect; + HEAP32[$3>>2] = $pE; + $4 = HEAP32[$2>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$pEList>>2] = $5; + ;HEAP32[$nc+0>>2]=0|0;HEAP32[$nc+4>>2]=0|0;HEAP32[$nc+8>>2]=0|0;HEAP32[$nc+12>>2]=0|0;HEAP32[$nc+16>>2]=0|0;HEAP32[$nc+20>>2]=0|0;HEAP32[$nc+24>>2]=0|0;HEAP32[$nc+28>>2]=0|0; + $6 = HEAP32[$1>>2]|0; + HEAP32[$nc>>2] = $6; + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 32|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($nc) + 4|0); + HEAP32[$10>>2] = $9; + $11 = HEAP32[$pEList>>2]|0; + $12 = (($nc) + 8|0); + HEAP32[$12>>2] = $11; + $13 = (($nc) + 28|0); + HEAP8[$13>>0] = 1; + $14 = (($nc) + 24|0); + HEAP32[$14>>2] = 0; + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$15>>2]|0; + HEAP32[$db>>2] = $16; + $17 = HEAP32[$db>>2]|0; + $18 = (($17) + 67|0); + $19 = HEAP8[$18>>0]|0; + HEAP8[$savedSuppErr>>0] = $19; + $20 = HEAP32[$db>>2]|0; + $21 = (($20) + 67|0); + HEAP8[$21>>0] = 1; + $22 = HEAP32[$3>>2]|0; + $23 = (_sqlite3ResolveExprNames($nc,$22)|0); + HEAP32[$rc>>2] = $23; + $24 = HEAP8[$savedSuppErr>>0]|0; + $25 = HEAP32[$db>>2]|0; + $26 = (($25) + 67|0); + HEAP8[$26>>0] = $24; + $27 = HEAP32[$rc>>2]|0; + $28 = ($27|0)!=(0); + if ($28) { + HEAP32[$0>>2] = 0; + $44 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($44|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $29 = HEAP32[$i>>2]|0; + $30 = HEAP32[$pEList>>2]|0; + $31 = HEAP32[$30>>2]|0; + $32 = ($29|0)<($31|0); + if (!($32)) { + label = 8; + break; + } + $33 = HEAP32[$i>>2]|0; + $34 = HEAP32[$pEList>>2]|0; + $35 = (($34) + 4|0); + $36 = HEAP32[$35>>2]|0; + $37 = (($36) + (($33*20)|0)|0); + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$3>>2]|0; + $40 = (_sqlite3ExprCompare($38,$39,-1)|0); + $41 = ($40|0)<(2); + $42 = HEAP32[$i>>2]|0; + $43 = (($42) + 1)|0; + if ($41) { + label = 6; + break; + } + HEAP32[$i>>2] = $43; + } + if ((label|0) == 6) { + HEAP32[$0>>2] = $43; + $44 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($44|0); + } + else if ((label|0) == 8) { + HEAP32[$0>>2] = 0; + $44 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($44|0); + } + return 0|0; +} +function _sqlite3ExprCompare($pA,$pB,$iTab) { + $pA = $pA|0; + $pB = $pB|0; + $iTab = $iTab|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; + var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $combinedFlags = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $combinedFlags = sp + 12|0; + HEAP32[$1>>2] = $pA; + HEAP32[$2>>2] = $pB; + HEAP32[$3>>2] = $iTab; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)==(0|0); + if (!($5)) { + $6 = HEAP32[$2>>2]|0; + $7 = ($6|0)==(0|0); + if (!($7)) { + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = $14 | $17; + HEAP32[$combinedFlags>>2] = $18; + $19 = HEAP32[$combinedFlags>>2]|0; + $20 = $19 & 1024; + $21 = ($20|0)!=(0); + $22 = HEAP32[$1>>2]|0; + if ($21) { + $23 = (($22) + 4|0); + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 4|0); + $27 = HEAP32[$26>>2]|0; + $28 = $24 & $27; + $29 = $28 & 1024; + $30 = ($29|0)!=(0); + if ($30) { + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 8|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = (($34) + 8|0); + $36 = HEAP32[$35>>2]|0; + $37 = ($33|0)==($36|0); + if ($37) { + HEAP32[$0>>2] = 0; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); + } + } + HEAP32[$0>>2] = 2; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); + } + $38 = HEAP8[$22>>0]|0; + $39 = $38&255; + $40 = HEAP32[$2>>2]|0; + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = ($39|0)!=($42|0); + $44 = HEAP32[$1>>2]|0; + $45 = HEAP8[$44>>0]|0; + $46 = $45&255; + if ($43) { + $47 = ($46|0)==(95); + if ($47) { + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + 12|0); + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$2>>2]|0; + $52 = HEAP32[$3>>2]|0; + $53 = (_sqlite3ExprCompare($50,$51,$52)|0); + $54 = ($53|0)<(2); + if ($54) { + HEAP32[$0>>2] = 1; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); + } + } + $55 = HEAP32[$2>>2]|0; + $56 = HEAP8[$55>>0]|0; + $57 = $56&255; + $58 = ($57|0)==(95); + if ($58) { + $59 = HEAP32[$1>>2]|0; + $60 = HEAP32[$2>>2]|0; + $61 = (($60) + 12|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$3>>2]|0; + $64 = (_sqlite3ExprCompare($59,$62,$63)|0); + $65 = ($64|0)<(2); + if ($65) { + HEAP32[$0>>2] = 1; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); + } + } + HEAP32[$0>>2] = 2; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); + } + $66 = ($46|0)!=(154); + if ($66) { + $67 = HEAP32[$1>>2]|0; + $68 = HEAP8[$67>>0]|0; + $69 = $68&255; + $70 = ($69|0)!=(156); + if ($70) { + $71 = HEAP32[$1>>2]|0; + $72 = (($71) + 8|0); + $73 = HEAP32[$72>>2]|0; + $74 = ($73|0)!=(0|0); + if ($74) { + $75 = HEAP32[$1>>2]|0; + $76 = (($75) + 8|0); + $77 = HEAP32[$76>>2]|0; + $78 = HEAP32[$2>>2]|0; + $79 = (($78) + 8|0); + $80 = HEAP32[$79>>2]|0; + $81 = (_strcmp($77,$80)|0); + $82 = ($81|0)!=(0); + if ($82) { + $83 = HEAP32[$1>>2]|0; + $84 = HEAP8[$83>>0]|0; + $85 = $84&255; + $86 = ($85|0)==(95); + $87 = $86 ? 1 : 2; + HEAP32[$0>>2] = $87; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); + } + } + } + } + $88 = HEAP32[$1>>2]|0; + $89 = (($88) + 4|0); + $90 = HEAP32[$89>>2]|0; + $91 = $90 & 16; + $92 = HEAP32[$2>>2]|0; + $93 = (($92) + 4|0); + $94 = HEAP32[$93>>2]|0; + $95 = $94 & 16; + $96 = ($91|0)!=($95|0); + if ($96) { + HEAP32[$0>>2] = 2; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); + } + $97 = HEAP32[$combinedFlags>>2]|0; + $98 = $97 & 16384; + $99 = ($98|0)==(0); + do { + if ($99) { + $100 = HEAP32[$combinedFlags>>2]|0; + $101 = $100 & 2048; + $102 = ($101|0)!=(0); + if ($102) { + HEAP32[$0>>2] = 2; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); + } + $103 = HEAP32[$1>>2]|0; + $104 = (($103) + 12|0); + $105 = HEAP32[$104>>2]|0; + $106 = HEAP32[$2>>2]|0; + $107 = (($106) + 12|0); + $108 = HEAP32[$107>>2]|0; + $109 = HEAP32[$3>>2]|0; + $110 = (_sqlite3ExprCompare($105,$108,$109)|0); + $111 = ($110|0)!=(0); + if ($111) { + HEAP32[$0>>2] = 2; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); + } + $112 = HEAP32[$1>>2]|0; + $113 = (($112) + 16|0); + $114 = HEAP32[$113>>2]|0; + $115 = HEAP32[$2>>2]|0; + $116 = (($115) + 16|0); + $117 = HEAP32[$116>>2]|0; + $118 = HEAP32[$3>>2]|0; + $119 = (_sqlite3ExprCompare($114,$117,$118)|0); + $120 = ($119|0)!=(0); + if ($120) { + HEAP32[$0>>2] = 2; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); + } + $121 = HEAP32[$1>>2]|0; + $122 = (($121) + 20|0); + $123 = HEAP32[$122>>2]|0; + $124 = HEAP32[$2>>2]|0; + $125 = (($124) + 20|0); + $126 = HEAP32[$125>>2]|0; + $127 = HEAP32[$3>>2]|0; + $128 = (_sqlite3ExprListCompare($123,$126,$127)|0); + $129 = ($128|0)!=(0); + if ($129) { + HEAP32[$0>>2] = 2; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); + } + $130 = HEAP32[$combinedFlags>>2]|0; + $131 = $130 & 8192; + $132 = ($131|0)==(0); + if ($132) { + $133 = HEAP32[$1>>2]|0; + $134 = (($133) + 32|0); + $135 = HEAP16[$134>>1]|0; + $136 = $135 << 16 >> 16; + $137 = HEAP32[$2>>2]|0; + $138 = (($137) + 32|0); + $139 = HEAP16[$138>>1]|0; + $140 = $139 << 16 >> 16; + $141 = ($136|0)!=($140|0); + if ($141) { + HEAP32[$0>>2] = 2; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); + } + $142 = HEAP32[$1>>2]|0; + $143 = (($142) + 28|0); + $144 = HEAP32[$143>>2]|0; + $145 = HEAP32[$2>>2]|0; + $146 = (($145) + 28|0); + $147 = HEAP32[$146>>2]|0; + $148 = ($144|0)!=($147|0); + if ($148) { + $149 = HEAP32[$1>>2]|0; + $150 = (($149) + 28|0); + $151 = HEAP32[$150>>2]|0; + $152 = HEAP32[$3>>2]|0; + $153 = ($151|0)!=($152|0); + if (!($153)) { + $154 = HEAP32[$2>>2]|0; + $155 = (($154) + 28|0); + $156 = HEAP32[$155>>2]|0; + $157 = ($156|0)>=(0); + if (!($157)) { + break; + } + } + HEAP32[$0>>2] = 2; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); + } + } + } + } while(0); + HEAP32[$0>>2] = 0; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); + } + } + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = ($8|0)==($9|0); + $11 = $10 ? 0 : 2; + HEAP32[$0>>2] = $11; + $158 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($158|0); +} +function _sqlite3ExprListCompare($pA,$pB,$iTab) { + $pA = $pA|0; + $pB = $pB|0; + $iTab = $iTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pExprA = 0; + var $pExprB = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $i = sp + 12|0; + $pExprA = sp + 16|0; + $pExprB = sp + 20|0; + HEAP32[$1>>2] = $pA; + HEAP32[$2>>2] = $pB; + HEAP32[$3>>2] = $iTab; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)==(0|0); + if ($5) { + $6 = HEAP32[$2>>2]|0; + $7 = ($6|0)==(0|0); + if ($7) { + HEAP32[$0>>2] = 0; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); + } + } + $8 = HEAP32[$1>>2]|0; + $9 = ($8|0)==(0|0); + if (!($9)) { + $10 = HEAP32[$2>>2]|0; + $11 = ($10|0)==(0|0); + if (!($11)) { + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = ($13|0)!=($15|0); + if ($16) { + HEAP32[$0>>2] = 1; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $17 = HEAP32[$i>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = HEAP32[$18>>2]|0; + $20 = ($17|0)<($19|0); + if (!($20)) { + label = 16; + break; + } + $21 = HEAP32[$i>>2]|0; + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 4|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + (($21*20)|0)|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$pExprA>>2] = $26; + $27 = HEAP32[$i>>2]|0; + $28 = HEAP32[$2>>2]|0; + $29 = (($28) + 4|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + (($27*20)|0)|0); + $32 = HEAP32[$31>>2]|0; + HEAP32[$pExprB>>2] = $32; + $33 = HEAP32[$i>>2]|0; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 4|0); + $36 = HEAP32[$35>>2]|0; + $37 = (($36) + (($33*20)|0)|0); + $38 = (($37) + 12|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39&255; + $41 = HEAP32[$i>>2]|0; + $42 = HEAP32[$2>>2]|0; + $43 = (($42) + 4|0); + $44 = HEAP32[$43>>2]|0; + $45 = (($44) + (($41*20)|0)|0); + $46 = (($45) + 12|0); + $47 = HEAP8[$46>>0]|0; + $48 = $47&255; + $49 = ($40|0)!=($48|0); + if ($49) { + label = 12; + break; + } + $50 = HEAP32[$pExprA>>2]|0; + $51 = HEAP32[$pExprB>>2]|0; + $52 = HEAP32[$3>>2]|0; + $53 = (_sqlite3ExprCompare($50,$51,$52)|0); + $54 = ($53|0)!=(0); + if ($54) { + label = 14; + break; + } + $55 = HEAP32[$i>>2]|0; + $56 = (($55) + 1)|0; + HEAP32[$i>>2] = $56; + } + if ((label|0) == 12) { + HEAP32[$0>>2] = 1; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); + } + else if ((label|0) == 14) { + HEAP32[$0>>2] = 1; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); + } + else if ((label|0) == 16) { + HEAP32[$0>>2] = 0; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); + } + } + } + HEAP32[$0>>2] = 1; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); +} +function _exprDup($db,$p,$flags,$pzBuffer) { + $db = $db|0; + $p = $p|0; + $flags = $flags|0; + $pzBuffer = $pzBuffer|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $isReduced = 0, $nNewSize = 0, $nSize = 0, $nStructSize = 0, $nToken = 0, $pNew = 0, $staticFlag = 0, $zAlloc = 0, $zToken = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 48|0; + $1 = sp + 44|0; + $2 = sp + 40|0; + $3 = sp + 36|0; + $pNew = sp + 32|0; + $isReduced = sp + 28|0; + $zAlloc = sp + 24|0; + $staticFlag = sp + 16|0; + $nStructSize = sp + 12|0; + $nNewSize = sp + 8|0; + $nToken = sp + 4|0; + $nSize = sp; + $zToken = sp + 20|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $flags; + HEAP32[$3>>2] = $pzBuffer; + HEAP32[$pNew>>2] = 0; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $159 = HEAP32[$pNew>>2]|0; + STACKTOP = sp;return ($159|0); + } + $6 = HEAP32[$2>>2]|0; + $7 = $6 & 1; + HEAP32[$isReduced>>2] = $7; + HEAP32[$staticFlag>>2] = 0; + $8 = HEAP32[$3>>2]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = HEAP32[$3>>2]|0; + $11 = HEAP32[$10>>2]|0; + HEAP32[$zAlloc>>2] = $11; + HEAP32[$staticFlag>>2] = 32768; + } else { + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (_dupedExprSize($13,$14)|0); + $16 = (_sqlite3DbMallocRaw($12,$15)|0); + HEAP32[$zAlloc>>2] = $16; + } + $17 = HEAP32[$zAlloc>>2]|0; + HEAP32[$pNew>>2] = $17; + $18 = HEAP32[$pNew>>2]|0; + $19 = ($18|0)!=(0|0); + if (!($19)) { + $159 = HEAP32[$pNew>>2]|0; + STACKTOP = sp;return ($159|0); + } + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = (_dupedExprStructSize($20,$21)|0); + HEAP32[$nStructSize>>2] = $22; + $23 = HEAP32[$nStructSize>>2]|0; + $24 = $23 & 4095; + HEAP32[$nNewSize>>2] = $24; + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 4|0); + $27 = HEAP32[$26>>2]|0; + $28 = $27 & 1024; + $29 = ($28|0)!=(0); + if ($29) { + label = 9; + } else { + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 8|0); + $32 = HEAP32[$31>>2]|0; + $33 = ($32|0)!=(0|0); + if ($33) { + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 8|0); + $36 = HEAP32[$35>>2]|0; + $37 = (_sqlite3Strlen30($36)|0); + $38 = (($37) + 1)|0; + HEAP32[$nToken>>2] = $38; + } else { + label = 9; + } + } + if ((label|0) == 9) { + HEAP32[$nToken>>2] = 0; + } + $39 = HEAP32[$isReduced>>2]|0; + $40 = ($39|0)!=(0); + if ($40) { + $41 = HEAP32[$zAlloc>>2]|0; + $42 = HEAP32[$1>>2]|0; + $43 = HEAP32[$nNewSize>>2]|0; + _memcpy(($41|0),($42|0),($43|0))|0; + } else { + $44 = HEAP32[$1>>2]|0; + $45 = (_exprStructSize($44)|0); + HEAP32[$nSize>>2] = $45; + $46 = HEAP32[$zAlloc>>2]|0; + $47 = HEAP32[$1>>2]|0; + $48 = HEAP32[$nSize>>2]|0; + _memcpy(($46|0),($47|0),($48|0))|0; + $49 = HEAP32[$nSize>>2]|0; + $50 = HEAP32[$zAlloc>>2]|0; + $51 = (($50) + ($49)|0); + $52 = HEAP32[$nSize>>2]|0; + $53 = (48 - ($52))|0; + _memset(($51|0),0,($53|0))|0; + } + $54 = HEAP32[$pNew>>2]|0; + $55 = (($54) + 4|0); + $56 = HEAP32[$55>>2]|0; + $57 = $56 & -122881; + HEAP32[$55>>2] = $57; + $58 = HEAP32[$nStructSize>>2]|0; + $59 = $58 & 24576; + $60 = HEAP32[$pNew>>2]|0; + $61 = (($60) + 4|0); + $62 = HEAP32[$61>>2]|0; + $63 = $62 | $59; + HEAP32[$61>>2] = $63; + $64 = HEAP32[$staticFlag>>2]|0; + $65 = HEAP32[$pNew>>2]|0; + $66 = (($65) + 4|0); + $67 = HEAP32[$66>>2]|0; + $68 = $67 | $64; + HEAP32[$66>>2] = $68; + $69 = HEAP32[$nToken>>2]|0; + $70 = ($69|0)!=(0); + if ($70) { + $71 = HEAP32[$nNewSize>>2]|0; + $72 = HEAP32[$zAlloc>>2]|0; + $73 = (($72) + ($71)|0); + $74 = HEAP32[$pNew>>2]|0; + $75 = (($74) + 8|0); + HEAP32[$75>>2] = $73; + HEAP32[$zToken>>2] = $73; + $76 = HEAP32[$zToken>>2]|0; + $77 = HEAP32[$1>>2]|0; + $78 = (($77) + 8|0); + $79 = HEAP32[$78>>2]|0; + $80 = HEAP32[$nToken>>2]|0; + _memcpy(($76|0),($79|0),($80|0))|0; + } + $81 = HEAP32[$1>>2]|0; + $82 = (($81) + 4|0); + $83 = HEAP32[$82>>2]|0; + $84 = HEAP32[$pNew>>2]|0; + $85 = (($84) + 4|0); + $86 = HEAP32[$85>>2]|0; + $87 = $83 | $86; + $88 = $87 & 16384; + $89 = (0)==($88|0); + do { + if ($89) { + $90 = HEAP32[$1>>2]|0; + $91 = (($90) + 4|0); + $92 = HEAP32[$91>>2]|0; + $93 = $92 & 2048; + $94 = ($93|0)!=(0); + $95 = HEAP32[$0>>2]|0; + $96 = HEAP32[$1>>2]|0; + $97 = (($96) + 20|0); + if ($94) { + $98 = HEAP32[$97>>2]|0; + $99 = HEAP32[$isReduced>>2]|0; + $100 = (_sqlite3SelectDup($95,$98,$99)|0); + $101 = HEAP32[$pNew>>2]|0; + $102 = (($101) + 20|0); + HEAP32[$102>>2] = $100; + break; + } else { + $103 = HEAP32[$97>>2]|0; + $104 = HEAP32[$isReduced>>2]|0; + $105 = (_sqlite3ExprListDup($95,$103,$104)|0); + $106 = HEAP32[$pNew>>2]|0; + $107 = (($106) + 20|0); + HEAP32[$107>>2] = $105; + break; + } + } + } while(0); + $108 = HEAP32[$pNew>>2]|0; + $109 = (($108) + 4|0); + $110 = HEAP32[$109>>2]|0; + $111 = $110 & 24576; + $112 = ($111|0)!=(0); + $113 = HEAP32[$1>>2]|0; + if (!($112)) { + $141 = (($113) + 4|0); + $142 = HEAP32[$141>>2]|0; + $143 = $142 & 16384; + $144 = ($143|0)!=(0); + if ($144) { + $159 = HEAP32[$pNew>>2]|0; + STACKTOP = sp;return ($159|0); + } + $145 = HEAP32[$0>>2]|0; + $146 = HEAP32[$1>>2]|0; + $147 = (($146) + 12|0); + $148 = HEAP32[$147>>2]|0; + $149 = (_sqlite3ExprDup($145,$148,0)|0); + $150 = HEAP32[$pNew>>2]|0; + $151 = (($150) + 12|0); + HEAP32[$151>>2] = $149; + $152 = HEAP32[$0>>2]|0; + $153 = HEAP32[$1>>2]|0; + $154 = (($153) + 16|0); + $155 = HEAP32[$154>>2]|0; + $156 = (_sqlite3ExprDup($152,$155,0)|0); + $157 = HEAP32[$pNew>>2]|0; + $158 = (($157) + 16|0); + HEAP32[$158>>2] = $156; + $159 = HEAP32[$pNew>>2]|0; + STACKTOP = sp;return ($159|0); + } + $114 = HEAP32[$2>>2]|0; + $115 = (_dupedExprNodeSize($113,$114)|0); + $116 = HEAP32[$zAlloc>>2]|0; + $117 = (($116) + ($115)|0); + HEAP32[$zAlloc>>2] = $117; + $118 = HEAP32[$pNew>>2]|0; + $119 = (($118) + 4|0); + $120 = HEAP32[$119>>2]|0; + $121 = $120 & 8192; + $122 = ($121|0)!=(0); + if ($122) { + $123 = HEAP32[$0>>2]|0; + $124 = HEAP32[$1>>2]|0; + $125 = (($124) + 12|0); + $126 = HEAP32[$125>>2]|0; + $127 = (_exprDup($123,$126,1,$zAlloc)|0); + $128 = HEAP32[$pNew>>2]|0; + $129 = (($128) + 12|0); + HEAP32[$129>>2] = $127; + $130 = HEAP32[$0>>2]|0; + $131 = HEAP32[$1>>2]|0; + $132 = (($131) + 16|0); + $133 = HEAP32[$132>>2]|0; + $134 = (_exprDup($130,$133,1,$zAlloc)|0); + $135 = HEAP32[$pNew>>2]|0; + $136 = (($135) + 16|0); + HEAP32[$136>>2] = $134; + } + $137 = HEAP32[$3>>2]|0; + $138 = ($137|0)!=(0|0); + if (!($138)) { + $159 = HEAP32[$pNew>>2]|0; + STACKTOP = sp;return ($159|0); + } + $139 = HEAP32[$zAlloc>>2]|0; + $140 = HEAP32[$3>>2]|0; + HEAP32[$140>>2] = $139; + $159 = HEAP32[$pNew>>2]|0; + STACKTOP = sp;return ($159|0); +} +function _dupedExprSize($p,$flags) { + $p = $p|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nByte = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $nByte = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $flags; + HEAP32[$nByte>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $23 = HEAP32[$nByte>>2]|0; + STACKTOP = sp;return ($23|0); + } + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (_dupedExprNodeSize($4,$5)|0); + HEAP32[$nByte>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = $7 & 1; + $9 = ($8|0)!=(0); + if (!($9)) { + $23 = HEAP32[$nByte>>2]|0; + STACKTOP = sp;return ($23|0); + } + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 12|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (_dupedExprSize($12,$13)|0); + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 16|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (_dupedExprSize($17,$18)|0); + $20 = (($14) + ($19))|0; + $21 = HEAP32[$nByte>>2]|0; + $22 = (($21) + ($20))|0; + HEAP32[$nByte>>2] = $22; + $23 = HEAP32[$nByte>>2]|0; + STACKTOP = sp;return ($23|0); +} +function _dupedExprStructSize($p,$flags) { + $p = $p|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nSize = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $nSize = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $flags; + $2 = HEAP32[$1>>2]|0; + $3 = $2 & 1; + $4 = (0)==($3|0); + do { + if ($4) { + HEAP32[$nSize>>2] = 48; + } else { + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 12|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 20|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0|0); + if (!($12)) { + HEAP32[$nSize>>2] = 16396; + break; + } + } + HEAP32[$nSize>>2] = 8220; + } + } while(0); + $13 = HEAP32[$nSize>>2]|0; + STACKTOP = sp;return ($13|0); +} +function _exprStructSize($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = $4 & 16384; + $6 = ($5|0)!=(0); + do { + if ($6) { + HEAP32[$0>>2] = 12; + } else { + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = $9 & 8192; + $11 = ($10|0)!=(0); + if ($11) { + HEAP32[$0>>2] = 28; + break; + } else { + HEAP32[$0>>2] = 48; + break; + } + } + } while(0); + $12 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($12|0); +} +function _sqlite3ExprListDup($db,$p,$flags) { + $db = $db|0; + $p = $p|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $i = 0, $pItem = 0, $pNew = 0, $pOldExpr = 0; + var $pOldItem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $pNew = sp + 16|0; + $pItem = sp + 8|0; + $pOldItem = sp + 4|0; + $i = sp; + $pOldExpr = sp + 12|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $flags; + $4 = HEAP32[$2>>2]|0; + $5 = ($4|0)==(0|0); + if ($5) { + HEAP32[$0>>2] = 0; + $95 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($95|0); + } + $6 = HEAP32[$1>>2]|0; + $7 = (_sqlite3DbMallocRaw($6,8)|0); + HEAP32[$pNew>>2] = $7; + $8 = HEAP32[$pNew>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + HEAP32[$0>>2] = 0; + $95 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($95|0); + } + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$10>>2]|0; + HEAP32[$i>>2] = $11; + $12 = HEAP32[$pNew>>2]|0; + HEAP32[$12>>2] = $11; + $13 = HEAP32[$3>>2]|0; + $14 = $13 & 1; + $15 = ($14|0)==(0); + L9: do { + if ($15) { + HEAP32[$i>>2] = 1; + while(1) { + $16 = HEAP32[$i>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = ($16|0)<($18|0); + if (!($19)) { + break L9; + } + $20 = HEAP32[$i>>2]|0; + $21 = HEAP32[$i>>2]|0; + $22 = (($21) + ($20))|0; + HEAP32[$i>>2] = $22; + } + } + } while(0); + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$i>>2]|0; + $25 = ($24*20)|0; + $26 = (_sqlite3DbMallocRaw($23,$25)|0); + HEAP32[$pItem>>2] = $26; + $27 = HEAP32[$pNew>>2]|0; + $28 = (($27) + 4|0); + HEAP32[$28>>2] = $26; + $29 = HEAP32[$pItem>>2]|0; + $30 = ($29|0)==(0|0); + if ($30) { + $31 = HEAP32[$1>>2]|0; + $32 = HEAP32[$pNew>>2]|0; + _sqlite3DbFree($31,$32); + HEAP32[$0>>2] = 0; + $95 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($95|0); + } + $33 = HEAP32[$2>>2]|0; + $34 = (($33) + 4|0); + $35 = HEAP32[$34>>2]|0; + HEAP32[$pOldItem>>2] = $35; + HEAP32[$i>>2] = 0; + while(1) { + $36 = HEAP32[$i>>2]|0; + $37 = HEAP32[$2>>2]|0; + $38 = HEAP32[$37>>2]|0; + $39 = ($36|0)<($38|0); + if (!($39)) { + break; + } + $40 = HEAP32[$pOldItem>>2]|0; + $41 = HEAP32[$40>>2]|0; + HEAP32[$pOldExpr>>2] = $41; + $42 = HEAP32[$1>>2]|0; + $43 = HEAP32[$pOldExpr>>2]|0; + $44 = HEAP32[$3>>2]|0; + $45 = (_sqlite3ExprDup($42,$43,$44)|0); + $46 = HEAP32[$pItem>>2]|0; + HEAP32[$46>>2] = $45; + $47 = HEAP32[$1>>2]|0; + $48 = HEAP32[$pOldItem>>2]|0; + $49 = (($48) + 4|0); + $50 = HEAP32[$49>>2]|0; + $51 = (_sqlite3DbStrDup($47,$50)|0); + $52 = HEAP32[$pItem>>2]|0; + $53 = (($52) + 4|0); + HEAP32[$53>>2] = $51; + $54 = HEAP32[$1>>2]|0; + $55 = HEAP32[$pOldItem>>2]|0; + $56 = (($55) + 8|0); + $57 = HEAP32[$56>>2]|0; + $58 = (_sqlite3DbStrDup($54,$57)|0); + $59 = HEAP32[$pItem>>2]|0; + $60 = (($59) + 8|0); + HEAP32[$60>>2] = $58; + $61 = HEAP32[$pOldItem>>2]|0; + $62 = (($61) + 12|0); + $63 = HEAP8[$62>>0]|0; + $64 = HEAP32[$pItem>>2]|0; + $65 = (($64) + 12|0); + HEAP8[$65>>0] = $63; + $66 = HEAP32[$pItem>>2]|0; + $67 = (($66) + 13|0); + $68 = HEAP8[$67>>0]|0; + $69 = $68 & -2; + HEAP8[$67>>0] = $69; + $70 = HEAP32[$pOldItem>>2]|0; + $71 = (($70) + 13|0); + $72 = HEAP8[$71>>0]|0; + $73 = ($72&255) >>> 1; + $74 = $73 & 1; + $75 = $74&255; + $76 = HEAP32[$pItem>>2]|0; + $77 = (($76) + 13|0); + $78 = $75&255; + $79 = HEAP8[$77>>0]|0; + $80 = $78 & 1; + $81 = ($80 << 1)&255; + $82 = $79 & -3; + $83 = $82 | $81; + HEAP8[$77>>0] = $83; + $84 = HEAP32[$pItem>>2]|0; + $85 = (($84) + 16|0); + $86 = HEAP32[$pOldItem>>2]|0; + $87 = (($86) + 16|0); + ;HEAP32[$85+0>>2]=HEAP32[$87+0>>2]|0; + $88 = HEAP32[$i>>2]|0; + $89 = (($88) + 1)|0; + HEAP32[$i>>2] = $89; + $90 = HEAP32[$pItem>>2]|0; + $91 = (($90) + 20|0); + HEAP32[$pItem>>2] = $91; + $92 = HEAP32[$pOldItem>>2]|0; + $93 = (($92) + 20|0); + HEAP32[$pOldItem>>2] = $93; + } + $94 = HEAP32[$pNew>>2]|0; + HEAP32[$0>>2] = $94; + $95 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($95|0); +} +function _dupedExprNodeSize($p,$flags) { + $p = $p|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nByte = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $nByte = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $flags; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_dupedExprStructSize($2,$3)|0); + $5 = $4 & 4095; + HEAP32[$nByte>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = $8 & 1024; + $10 = ($9|0)!=(0); + if (!($10)) { + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 8|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(0|0); + if ($14) { + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 8|0); + $17 = HEAP32[$16>>2]|0; + $18 = (_sqlite3Strlen30($17)|0); + $19 = (($18) + 1)|0; + $20 = HEAP32[$nByte>>2]|0; + $21 = (($20) + ($19))|0; + HEAP32[$nByte>>2] = $21; + } + } + $22 = HEAP32[$nByte>>2]|0; + $23 = (($22) + 7)|0; + $24 = $23 & -8; + STACKTOP = sp;return ($24|0); +} +function _sqlite3ResolveOrderGroupBy($pParse,$pSelect,$pOrderBy,$zType) { + $pParse = $pParse|0; + $pSelect = $pSelect|0; + $pOrderBy = $pOrderBy|0; + $zType = $zType|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $pEList = 0, $pItem = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $4 = sp + 36|0; + $i = sp + 8|0; + $db = sp + 4|0; + $pEList = sp + 12|0; + $pItem = sp + 16|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pSelect; + HEAP32[$3>>2] = $pOrderBy; + HEAP32[$4>>2] = $zType; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$3>>2]|0; + $8 = ($7|0)==(0|0); + if (!($8)) { + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + 64|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = ($13|0)!=(0); + if (!($14)) { + $15 = HEAP32[$3>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$db>>2]|0; + $18 = (($17) + 88|0); + $19 = (($18) + 8|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($16|0)>($20|0); + if ($21) { + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$4>>2]|0; + HEAP32[$vararg_buffer>>2] = $23; + _sqlite3ErrorMsg($22,23248,$vararg_buffer); + HEAP32[$0>>2] = 1; + $63 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($63|0); + } + $24 = HEAP32[$2>>2]|0; + $25 = HEAP32[$24>>2]|0; + HEAP32[$pEList>>2] = $25; + HEAP32[$i>>2] = 0; + $26 = HEAP32[$3>>2]|0; + $27 = (($26) + 4|0); + $28 = HEAP32[$27>>2]|0; + HEAP32[$pItem>>2] = $28; + while(1) { + $29 = HEAP32[$i>>2]|0; + $30 = HEAP32[$3>>2]|0; + $31 = HEAP32[$30>>2]|0; + $32 = ($29|0)<($31|0); + if (!($32)) { + label = 13; + break; + } + $33 = HEAP32[$pItem>>2]|0; + $34 = (($33) + 16|0); + $35 = HEAP16[$34>>1]|0; + $36 = ($35<<16>>16)!=(0); + if ($36) { + $37 = HEAP32[$pItem>>2]|0; + $38 = (($37) + 16|0); + $39 = HEAP16[$38>>1]|0; + $40 = $39&65535; + $41 = HEAP32[$pEList>>2]|0; + $42 = HEAP32[$41>>2]|0; + $43 = ($40|0)>($42|0); + $44 = HEAP32[$1>>2]|0; + if ($43) { + label = 10; + break; + } + $50 = HEAP32[$pEList>>2]|0; + $51 = HEAP32[$pItem>>2]|0; + $52 = (($51) + 16|0); + $53 = HEAP16[$52>>1]|0; + $54 = $53&65535; + $55 = (($54) - 1)|0; + $56 = HEAP32[$pItem>>2]|0; + $57 = HEAP32[$56>>2]|0; + $58 = HEAP32[$4>>2]|0; + _resolveAlias($44,$50,$55,$57,$58,0); + } + $59 = HEAP32[$i>>2]|0; + $60 = (($59) + 1)|0; + HEAP32[$i>>2] = $60; + $61 = HEAP32[$pItem>>2]|0; + $62 = (($61) + 20|0); + HEAP32[$pItem>>2] = $62; + } + if ((label|0) == 10) { + $45 = HEAP32[$4>>2]|0; + $46 = HEAP32[$i>>2]|0; + $47 = (($46) + 1)|0; + $48 = HEAP32[$pEList>>2]|0; + $49 = HEAP32[$48>>2]|0; + _resolveOutOfRangeError($44,$45,$47,$49); + HEAP32[$0>>2] = 1; + $63 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($63|0); + } + else if ((label|0) == 13) { + HEAP32[$0>>2] = 0; + $63 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($63|0); + } + } + } + HEAP32[$0>>2] = 0; + $63 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($63|0); +} +function _resolveAlias($pParse,$pEList,$iCol,$pExpr,$zType,$nSubquery) { + $pParse = $pParse|0; + $pEList = $pEList|0; + $iCol = $iCol|0; + $pExpr = $pExpr|0; + $zType = $zType|0; + $nSubquery = $nSubquery|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0; + var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $pDup = 0, $pOrig = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $4 = sp + 16|0; + $5 = sp + 8|0; + $pOrig = sp + 4|0; + $pDup = sp; + $db = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pEList; + HEAP32[$2>>2] = $iCol; + HEAP32[$3>>2] = $pExpr; + HEAP32[$4>>2] = $zType; + HEAP32[$5>>2] = $nSubquery; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + (($6*20)|0)|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$pOrig>>2] = $11; + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$12>>2]|0; + HEAP32[$db>>2] = $13; + $14 = HEAP32[$db>>2]|0; + $15 = HEAP32[$pOrig>>2]|0; + $16 = (_sqlite3ExprDup($14,$15,0)|0); + HEAP32[$pDup>>2] = $16; + $17 = HEAP32[$pDup>>2]|0; + $18 = ($17|0)==(0|0); + if ($18) { + STACKTOP = sp;return; + } + $19 = HEAP32[$pOrig>>2]|0; + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = ($21|0)!=(154); + if ($22) { + $23 = HEAP32[$4>>2]|0; + $24 = HEAP8[$23>>0]|0; + $25 = $24 << 24 >> 24; + $26 = ($25|0)!=(71); + if ($26) { + $27 = HEAP32[$pDup>>2]|0; + $28 = HEAP32[$5>>2]|0; + _incrAggFunctionDepth($27,$28); + $29 = HEAP32[$0>>2]|0; + $30 = HEAP32[$pDup>>2]|0; + $31 = (_sqlite3PExpr($29,24,$30,0,0)|0); + HEAP32[$pDup>>2] = $31; + $32 = HEAP32[$pDup>>2]|0; + $33 = ($32|0)==(0|0); + if ($33) { + STACKTOP = sp;return; + } + $34 = HEAP32[$pDup>>2]|0; + $35 = (($34) + 4|0); + $36 = HEAP32[$35>>2]|0; + $37 = $36 | 4096; + HEAP32[$35>>2] = $37; + $38 = HEAP32[$2>>2]|0; + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 4|0); + $41 = HEAP32[$40>>2]|0; + $42 = (($41) + (($38*20)|0)|0); + $43 = (($42) + 16|0); + $44 = (($43) + 2|0); + $45 = HEAP16[$44>>1]|0; + $46 = $45&65535; + $47 = ($46|0)==(0); + if ($47) { + $48 = HEAP32[$0>>2]|0; + $49 = (($48) + 456|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + 1)|0; + HEAP32[$49>>2] = $51; + $52 = $51&65535; + $53 = HEAP32[$2>>2]|0; + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 4|0); + $56 = HEAP32[$55>>2]|0; + $57 = (($56) + (($53*20)|0)|0); + $58 = (($57) + 16|0); + $59 = (($58) + 2|0); + HEAP16[$59>>1] = $52; + } + $60 = HEAP32[$2>>2]|0; + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 4|0); + $63 = HEAP32[$62>>2]|0; + $64 = (($63) + (($60*20)|0)|0); + $65 = (($64) + 16|0); + $66 = (($65) + 2|0); + $67 = HEAP16[$66>>1]|0; + $68 = $67&65535; + $69 = HEAP32[$pDup>>2]|0; + $70 = (($69) + 28|0); + HEAP32[$70>>2] = $68; + } + } + $71 = HEAP32[$3>>2]|0; + $72 = HEAP8[$71>>0]|0; + $73 = $72&255; + $74 = ($73|0)==(95); + if ($74) { + $75 = HEAP32[$0>>2]|0; + $76 = HEAP32[$pDup>>2]|0; + $77 = HEAP32[$3>>2]|0; + $78 = (($77) + 8|0); + $79 = HEAP32[$78>>2]|0; + $80 = (_sqlite3ExprAddCollateString($75,$76,$79)|0); + HEAP32[$pDup>>2] = $80; + } + $81 = HEAP32[$3>>2]|0; + $82 = (($81) + 4|0); + $83 = HEAP32[$82>>2]|0; + $84 = $83 | 32768; + HEAP32[$82>>2] = $84; + $85 = HEAP32[$db>>2]|0; + $86 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($85,$86); + $87 = HEAP32[$3>>2]|0; + $88 = HEAP32[$pDup>>2]|0; + dest=$87+0|0; src=$88+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $89 = HEAP32[$3>>2]|0; + $90 = (($89) + 4|0); + $91 = HEAP32[$90>>2]|0; + $92 = $91 & 1024; + $93 = ($92|0)!=(0); + if (!($93)) { + $94 = HEAP32[$3>>2]|0; + $95 = (($94) + 8|0); + $96 = HEAP32[$95>>2]|0; + $97 = ($96|0)!=(0|0); + if ($97) { + $98 = HEAP32[$db>>2]|0; + $99 = HEAP32[$3>>2]|0; + $100 = (($99) + 8|0); + $101 = HEAP32[$100>>2]|0; + $102 = (_sqlite3DbStrDup($98,$101)|0); + $103 = HEAP32[$3>>2]|0; + $104 = (($103) + 8|0); + HEAP32[$104>>2] = $102; + $105 = HEAP32[$3>>2]|0; + $106 = (($105) + 4|0); + $107 = HEAP32[$106>>2]|0; + $108 = $107 | 65536; + HEAP32[$106>>2] = $108; + } + } + $109 = HEAP32[$db>>2]|0; + $110 = HEAP32[$pDup>>2]|0; + _sqlite3DbFree($109,$110); + STACKTOP = sp;return; +} +function _incrAggFunctionDepth($pExpr,$N) { + $pExpr = $pExpr|0; + $N = $N|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $w = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp; + $w = sp + 8|0; + HEAP32[$0>>2] = $pExpr; + HEAP32[$1>>2] = $N; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)>(0); + if (!($3)) { + STACKTOP = sp;return; + } + ;HEAP32[$w+0>>2]=0|0;HEAP32[$w+4>>2]=0|0;HEAP32[$w+8>>2]=0|0;HEAP32[$w+12>>2]=0|0;HEAP32[$w+16>>2]=0|0;HEAP32[$w+20>>2]=0|0; + HEAP32[$w>>2] = 60; + $4 = HEAP32[$1>>2]|0; + $5 = (($w) + 20|0); + HEAP32[$5>>2] = $4; + $6 = HEAP32[$0>>2]|0; + (_sqlite3WalkExpr($w,$6)|0); + STACKTOP = sp;return; +} +function _sqlite3ExprAddCollateString($pParse,$pExpr,$zC) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + $zC = $zC|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $s = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $s = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $zC; + $3 = HEAP32[$2>>2]|0; + HEAP32[$s>>2] = $3; + $4 = HEAP32[$s>>2]|0; + $5 = (_sqlite3Strlen30($4)|0); + $6 = (($s) + 4|0); + HEAP32[$6>>2] = $5; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (_sqlite3ExprAddCollateToken($7,$8,$s)|0); + STACKTOP = sp;return ($9|0); +} +function _incrAggDepth($pWalker,$pExpr) { + $pWalker = $pWalker|0; + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pWalker; + HEAP32[$1>>2] = $pExpr; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = ($4|0)==(155); + if (!($5)) { + STACKTOP = sp;return 0; + } + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 20|0); + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 38|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = (($12) + ($8))|0; + $14 = $13&255; + HEAP8[$10>>0] = $14; + STACKTOP = sp;return 0; +} +function _sqlite3ExprCheckHeight($pParse,$nHeight) { + $pParse = $pParse|0; + $nHeight = $nHeight|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mxHeight = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 16|0; + $1 = sp + 4|0; + $rc = sp + 8|0; + $mxHeight = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $nHeight; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 88|0); + $5 = (($4) + 12|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$mxHeight>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$mxHeight>>2]|0; + $9 = ($7|0)>($8|0); + if (!($9)) { + $12 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($12|0); + } + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$mxHeight>>2]|0; + HEAP32[$vararg_buffer>>2] = $11; + _sqlite3ErrorMsg($10,23280,$vararg_buffer); + HEAP32[$rc>>2] = 1; + $12 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($12|0); +} +function _lookupName($pParse,$zDb,$zTab,$zCol,$pNC,$pExpr) { + $pParse = $pParse|0; + $zDb = $zDb|0; + $zTab = $zTab|0; + $zCol = $zCol|0; + $pNC = $pNC|0; + $pExpr = $pExpr|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; + var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; + var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; + var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; + var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; + var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; + var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; + var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; + var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; + var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; + var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0; + var $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0; + var $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0; + var $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0; + var $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0; + var $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0; + var $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0; + var $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0; + var $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0; + var $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0; + var $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0; + var $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0; + var $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cnt = 0, $cntTab = 0, $db = 0, $hit = 0, $i = 0, $iCol = 0, $isTrigger = 0, $j = 0, $n = 0, $nSubquery = 0, $op = 0, $pCol = 0, $pEList = 0; + var $pItem = 0, $pMatch = 0, $pOrig = 0, $pSchema = 0, $pSrcList = 0, $pTab = 0, $pTopNC = 0, $vararg_buffer12 = 0, $vararg_ptr10 = 0, $vararg_ptr11 = 0, $vararg_ptr15 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $zAs = 0, $zErr = 0, $zTabName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; + $vararg_buffer12 = sp; + $0 = sp + 128|0; + $1 = sp + 124|0; + $2 = sp + 120|0; + $3 = sp + 116|0; + $4 = sp + 112|0; + $5 = sp + 108|0; + $6 = sp + 104|0; + $i = sp + 100|0; + $j = sp + 96|0; + $cnt = sp + 92|0; + $cntTab = sp + 88|0; + $nSubquery = sp + 84|0; + $db = sp + 80|0; + $pItem = sp + 76|0; + $pMatch = sp + 132|0; + $pTopNC = sp + 40|0; + $pSchema = sp + 36|0; + $isTrigger = sp + 16|0; + $pTab = sp + 20|0; + $pCol = sp + 24|0; + $pEList = sp + 28|0; + $pSrcList = sp + 32|0; + $hit = sp + 68|0; + $zTabName = sp + 44|0; + $op = sp + 48|0; + $iCol = sp + 52|0; + $zAs = sp + 56|0; + $pOrig = sp + 60|0; + $zErr = sp + 64|0; + $n = sp + 72|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $zDb; + HEAP32[$3>>2] = $zTab; + HEAP32[$4>>2] = $zCol; + HEAP32[$5>>2] = $pNC; + HEAP32[$6>>2] = $pExpr; + HEAP32[$cnt>>2] = 0; + HEAP32[$cntTab>>2] = 0; + HEAP32[$nSubquery>>2] = 0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$db>>2] = $8; + HEAP32[$pMatch>>2] = 0; + $9 = HEAP32[$5>>2]|0; + HEAP32[$pTopNC>>2] = $9; + HEAP32[$pSchema>>2] = 0; + HEAP32[$isTrigger>>2] = 0; + HEAP32[$pTab>>2] = 0; + $10 = HEAP32[$6>>2]|0; + $11 = (($10) + 28|0); + HEAP32[$11>>2] = -1; + $12 = HEAP32[$6>>2]|0; + $13 = (($12) + 44|0); + HEAP32[$13>>2] = 0; + $14 = HEAP32[$2>>2]|0; + $15 = ($14|0)!=(0|0); + L1: do { + if ($15) { + $16 = HEAP32[$5>>2]|0; + $17 = (($16) + 28|0); + $18 = HEAP8[$17>>0]|0; + $19 = $18&255; + $20 = $19 & 20; + $21 = ($20|0)!=(0); + if ($21) { + HEAP32[$2>>2] = 0; + break; + } + HEAP32[$i>>2] = 0; + while(1) { + $22 = HEAP32[$i>>2]|0; + $23 = HEAP32[$db>>2]|0; + $24 = (($23) + 20|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($22|0)<($25|0); + if (!($26)) { + break L1; + } + $27 = HEAP32[$i>>2]|0; + $28 = HEAP32[$db>>2]|0; + $29 = (($28) + 16|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + ($27<<4)|0); + $32 = HEAP32[$31>>2]|0; + $33 = HEAP32[$2>>2]|0; + $34 = (_sqlite3_stricmp($32,$33)|0); + $35 = ($34|0)==(0); + $36 = HEAP32[$i>>2]|0; + if ($35) { + break; + } + $43 = (($36) + 1)|0; + HEAP32[$i>>2] = $43; + } + $37 = HEAP32[$db>>2]|0; + $38 = (($37) + 16|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + ($36<<4)|0); + $41 = (($40) + 12|0); + $42 = HEAP32[$41>>2]|0; + HEAP32[$pSchema>>2] = $42; + } + } while(0); + L11: while(1) { + $44 = HEAP32[$5>>2]|0; + $45 = ($44|0)!=(0|0); + if (!($45)) { + label = 98; + break; + } + $46 = HEAP32[$cnt>>2]|0; + $47 = ($46|0)==(0); + if (!($47)) { + label = 98; + break; + } + $48 = HEAP32[$5>>2]|0; + $49 = (($48) + 4|0); + $50 = HEAP32[$49>>2]|0; + HEAP32[$pSrcList>>2] = $50; + $51 = HEAP32[$pSrcList>>2]|0; + $52 = ($51|0)!=(0|0); + if ($52) { + HEAP32[$i>>2] = 0; + $53 = HEAP32[$pSrcList>>2]|0; + $54 = (($53) + 8|0); + HEAP32[$pItem>>2] = $54; + while(1) { + $55 = HEAP32[$i>>2]|0; + $56 = HEAP32[$pSrcList>>2]|0; + $57 = HEAP32[$56>>2]|0; + $58 = ($55|0)<($57|0); + if (!($58)) { + break; + } + $59 = HEAP32[$pItem>>2]|0; + $60 = (($59) + 16|0); + $61 = HEAP32[$60>>2]|0; + HEAP32[$pTab>>2] = $61; + $62 = HEAP32[$pItem>>2]|0; + $63 = (($62) + 20|0); + $64 = HEAP32[$63>>2]|0; + $65 = ($64|0)!=(0|0); + if ($65) { + $66 = HEAP32[$pItem>>2]|0; + $67 = (($66) + 20|0); + $68 = HEAP32[$67>>2]|0; + $69 = (($68) + 6|0); + $70 = HEAP16[$69>>1]|0; + $71 = $70&65535; + $72 = $71 & 512; + $73 = ($72|0)!=(0); + if ($73) { + HEAP32[$hit>>2] = 0; + $74 = HEAP32[$pItem>>2]|0; + $75 = (($74) + 20|0); + $76 = HEAP32[$75>>2]|0; + $77 = HEAP32[$76>>2]|0; + HEAP32[$pEList>>2] = $77; + HEAP32[$j>>2] = 0; + while(1) { + $78 = HEAP32[$j>>2]|0; + $79 = HEAP32[$pEList>>2]|0; + $80 = HEAP32[$79>>2]|0; + $81 = ($78|0)<($80|0); + if (!($81)) { + break; + } + $82 = HEAP32[$j>>2]|0; + $83 = HEAP32[$pEList>>2]|0; + $84 = (($83) + 4|0); + $85 = HEAP32[$84>>2]|0; + $86 = (($85) + (($82*20)|0)|0); + $87 = (($86) + 8|0); + $88 = HEAP32[$87>>2]|0; + $89 = HEAP32[$4>>2]|0; + $90 = HEAP32[$3>>2]|0; + $91 = HEAP32[$2>>2]|0; + $92 = (_sqlite3MatchSpanName($88,$89,$90,$91)|0); + $93 = ($92|0)!=(0); + if ($93) { + $94 = HEAP32[$cnt>>2]|0; + $95 = (($94) + 1)|0; + HEAP32[$cnt>>2] = $95; + HEAP32[$cntTab>>2] = 2; + $96 = HEAP32[$pItem>>2]|0; + HEAP32[$pMatch>>2] = $96; + $97 = HEAP32[$j>>2]|0; + $98 = $97&65535; + $99 = HEAP32[$6>>2]|0; + $100 = (($99) + 32|0); + HEAP16[$100>>1] = $98; + HEAP32[$hit>>2] = 1; + } + $101 = HEAP32[$j>>2]|0; + $102 = (($101) + 1)|0; + HEAP32[$j>>2] = $102; + } + $103 = HEAP32[$hit>>2]|0; + $104 = ($103|0)!=(0); + if (!($104)) { + $105 = HEAP32[$3>>2]|0; + $106 = ($105|0)==(0|0); + if (!($106)) { + label = 23; + } + } + } else { + label = 23; + } + } else { + label = 23; + } + L31: do { + if ((label|0) == 23) { + label = 0; + $107 = HEAP32[$2>>2]|0; + $108 = ($107|0)!=(0|0); + if ($108) { + $109 = HEAP32[$pTab>>2]|0; + $110 = (($109) + 68|0); + $111 = HEAP32[$110>>2]|0; + $112 = HEAP32[$pSchema>>2]|0; + $113 = ($111|0)!=($112|0); + if ($113) { + break; + } + } + $114 = HEAP32[$3>>2]|0; + $115 = ($114|0)!=(0|0); + if ($115) { + $116 = HEAP32[$pItem>>2]|0; + $117 = (($116) + 12|0); + $118 = HEAP32[$117>>2]|0; + $119 = ($118|0)!=(0|0); + if ($119) { + $120 = HEAP32[$pItem>>2]|0; + $121 = (($120) + 12|0); + $122 = HEAP32[$121>>2]|0; + $125 = $122; + } else { + $123 = HEAP32[$pTab>>2]|0; + $124 = HEAP32[$123>>2]|0; + $125 = $124; + } + HEAP32[$zTabName>>2] = $125; + $126 = HEAP32[$zTabName>>2]|0; + $127 = HEAP32[$3>>2]|0; + $128 = (_sqlite3_stricmp($126,$127)|0); + $129 = ($128|0)!=(0); + if ($129) { + break; + } + } + $130 = HEAP32[$cntTab>>2]|0; + $131 = (($130) + 1)|0; + HEAP32[$cntTab>>2] = $131; + $132 = (0)==($130|0); + if ($132) { + $133 = HEAP32[$pItem>>2]|0; + HEAP32[$pMatch>>2] = $133; + } + HEAP32[$j>>2] = 0; + $134 = HEAP32[$pTab>>2]|0; + $135 = (($134) + 4|0); + $136 = HEAP32[$135>>2]|0; + HEAP32[$pCol>>2] = $136; + while(1) { + $137 = HEAP32[$j>>2]|0; + $138 = HEAP32[$pTab>>2]|0; + $139 = (($138) + 38|0); + $140 = HEAP16[$139>>1]|0; + $141 = $140 << 16 >> 16; + $142 = ($137|0)<($141|0); + if (!($142)) { + break L31; + } + $143 = HEAP32[$pCol>>2]|0; + $144 = HEAP32[$143>>2]|0; + $145 = HEAP32[$4>>2]|0; + $146 = (_sqlite3_stricmp($144,$145)|0); + $147 = ($146|0)==(0); + if ($147) { + $148 = HEAP32[$cnt>>2]|0; + $149 = ($148|0)==(1); + if (!($149)) { + break; + } + $150 = HEAP32[$pItem>>2]|0; + $151 = (($150) + 36|0); + $152 = HEAP8[$151>>0]|0; + $153 = $152&255; + $154 = $153 & 4; + $155 = ($154|0)!=(0); + if (!($155)) { + $156 = HEAP32[$pItem>>2]|0; + $157 = (($156) + 48|0); + $158 = HEAP32[$157>>2]|0; + $159 = HEAP32[$4>>2]|0; + $160 = (_nameInUsingClause($158,$159)|0); + $161 = ($160|0)!=(0); + if (!($161)) { + break; + } + } + } + $178 = HEAP32[$j>>2]|0; + $179 = (($178) + 1)|0; + HEAP32[$j>>2] = $179; + $180 = HEAP32[$pCol>>2]|0; + $181 = (($180) + 24|0); + HEAP32[$pCol>>2] = $181; + } + $162 = HEAP32[$cnt>>2]|0; + $163 = (($162) + 1)|0; + HEAP32[$cnt>>2] = $163; + $164 = HEAP32[$pItem>>2]|0; + HEAP32[$pMatch>>2] = $164; + $165 = HEAP32[$j>>2]|0; + $166 = HEAP32[$pTab>>2]|0; + $167 = (($166) + 36|0); + $168 = HEAP16[$167>>1]|0; + $169 = $168 << 16 >> 16; + $170 = ($165|0)==($169|0); + if ($170) { + $175 = -1; + } else { + $171 = HEAP32[$j>>2]|0; + $172 = $171&65535; + $173 = $172 << 16 >> 16; + $175 = $173; + } + $174 = $175&65535; + $176 = HEAP32[$6>>2]|0; + $177 = (($176) + 32|0); + HEAP16[$177>>1] = $174; + } + } while(0); + $182 = HEAP32[$i>>2]|0; + $183 = (($182) + 1)|0; + HEAP32[$i>>2] = $183; + $184 = HEAP32[$pItem>>2]|0; + $185 = (($184) + 72|0); + HEAP32[$pItem>>2] = $185; + } + $186 = HEAP32[$pMatch>>2]|0; + $187 = ($186|0)!=(0|0); + if ($187) { + $188 = HEAP32[$pMatch>>2]|0; + $189 = (($188) + 40|0); + $190 = HEAP32[$189>>2]|0; + $191 = HEAP32[$6>>2]|0; + $192 = (($191) + 28|0); + HEAP32[$192>>2] = $190; + $193 = HEAP32[$pMatch>>2]|0; + $194 = (($193) + 16|0); + $195 = HEAP32[$194>>2]|0; + $196 = HEAP32[$6>>2]|0; + $197 = (($196) + 44|0); + HEAP32[$197>>2] = $195; + $198 = HEAP32[$6>>2]|0; + $199 = (($198) + 44|0); + $200 = HEAP32[$199>>2]|0; + $201 = (($200) + 68|0); + $202 = HEAP32[$201>>2]|0; + HEAP32[$pSchema>>2] = $202; + } + } + $203 = HEAP32[$2>>2]|0; + $204 = ($203|0)==(0|0); + if ($204) { + $205 = HEAP32[$3>>2]|0; + $206 = ($205|0)!=(0|0); + if ($206) { + $207 = HEAP32[$cntTab>>2]|0; + $208 = ($207|0)==(0); + if ($208) { + $209 = HEAP32[$1>>2]|0; + $210 = (($209) + 412|0); + $211 = HEAP32[$210>>2]|0; + $212 = ($211|0)!=(0|0); + if ($212) { + $213 = HEAP32[$1>>2]|0; + $214 = (($213) + 436|0); + $215 = HEAP8[$214>>0]|0; + $216 = $215&255; + HEAP32[$op>>2] = $216; + $217 = HEAP32[$op>>2]|0; + $218 = ($217|0)!=(109); + if ($218) { + $219 = HEAP32[$3>>2]|0; + $220 = (_sqlite3_stricmp(23688,$219)|0); + $221 = ($220|0)==(0); + if ($221) { + $222 = HEAP32[$6>>2]|0; + $223 = (($222) + 28|0); + HEAP32[$223>>2] = 1; + $224 = HEAP32[$1>>2]|0; + $225 = (($224) + 412|0); + $226 = HEAP32[$225>>2]|0; + HEAP32[$pTab>>2] = $226; + } else { + label = 52; + } + } else { + label = 52; + } + do { + if ((label|0) == 52) { + label = 0; + $227 = HEAP32[$op>>2]|0; + $228 = ($227|0)!=(108); + if ($228) { + $229 = HEAP32[$3>>2]|0; + $230 = (_sqlite3_stricmp(23696,$229)|0); + $231 = ($230|0)==(0); + if ($231) { + $232 = HEAP32[$6>>2]|0; + $233 = (($232) + 28|0); + HEAP32[$233>>2] = 0; + $234 = HEAP32[$1>>2]|0; + $235 = (($234) + 412|0); + $236 = HEAP32[$235>>2]|0; + HEAP32[$pTab>>2] = $236; + break; + } + } + HEAP32[$pTab>>2] = 0; + } + } while(0); + $237 = HEAP32[$pTab>>2]|0; + $238 = ($237|0)!=(0|0); + if ($238) { + $239 = HEAP32[$pTab>>2]|0; + $240 = (($239) + 68|0); + $241 = HEAP32[$240>>2]|0; + HEAP32[$pSchema>>2] = $241; + $242 = HEAP32[$cntTab>>2]|0; + $243 = (($242) + 1)|0; + HEAP32[$cntTab>>2] = $243; + HEAP32[$iCol>>2] = 0; + $244 = HEAP32[$pTab>>2]|0; + $245 = (($244) + 4|0); + $246 = HEAP32[$245>>2]|0; + HEAP32[$pCol>>2] = $246; + while(1) { + $247 = HEAP32[$iCol>>2]|0; + $248 = HEAP32[$pTab>>2]|0; + $249 = (($248) + 38|0); + $250 = HEAP16[$249>>1]|0; + $251 = $250 << 16 >> 16; + $252 = ($247|0)<($251|0); + if (!($252)) { + break; + } + $253 = HEAP32[$pCol>>2]|0; + $254 = HEAP32[$253>>2]|0; + $255 = HEAP32[$4>>2]|0; + $256 = (_sqlite3_stricmp($254,$255)|0); + $257 = ($256|0)==(0); + $258 = HEAP32[$iCol>>2]|0; + if ($257) { + label = 60; + break; + } + $264 = (($258) + 1)|0; + HEAP32[$iCol>>2] = $264; + $265 = HEAP32[$pCol>>2]|0; + $266 = (($265) + 24|0); + HEAP32[$pCol>>2] = $266; + } + if ((label|0) == 60) { + label = 0; + $259 = HEAP32[$pTab>>2]|0; + $260 = (($259) + 36|0); + $261 = HEAP16[$260>>1]|0; + $262 = $261 << 16 >> 16; + $263 = ($258|0)==($262|0); + if ($263) { + HEAP32[$iCol>>2] = -1; + } + } + $267 = HEAP32[$iCol>>2]|0; + $268 = HEAP32[$pTab>>2]|0; + $269 = (($268) + 38|0); + $270 = HEAP16[$269>>1]|0; + $271 = $270 << 16 >> 16; + $272 = ($267|0)>=($271|0); + if ($272) { + $273 = HEAP32[$4>>2]|0; + $274 = (_sqlite3IsRowid($273)|0); + $275 = ($274|0)!=(0); + if ($275) { + $276 = HEAP32[$pTab>>2]|0; + $277 = (($276) + 44|0); + $278 = HEAP8[$277>>0]|0; + $279 = $278&255; + $280 = $279 & 32; + $281 = ($280|0)==(0); + if ($281) { + HEAP32[$iCol>>2] = -1; + } + } + } + $282 = HEAP32[$iCol>>2]|0; + $283 = HEAP32[$pTab>>2]|0; + $284 = (($283) + 38|0); + $285 = HEAP16[$284>>1]|0; + $286 = $285 << 16 >> 16; + $287 = ($282|0)<($286|0); + if ($287) { + $288 = HEAP32[$cnt>>2]|0; + $289 = (($288) + 1)|0; + HEAP32[$cnt>>2] = $289; + $290 = HEAP32[$iCol>>2]|0; + $291 = ($290|0)<(0); + $292 = HEAP32[$6>>2]|0; + do { + if ($291) { + $293 = (($292) + 1|0); + HEAP8[$293>>0] = 100; + } else { + $294 = (($292) + 28|0); + $295 = HEAP32[$294>>2]|0; + $296 = ($295|0)==(0); + $297 = HEAP32[$iCol>>2]|0; + $298 = ($297|0)>=(32); + if ($296) { + if ($298) { + $305 = -1; + } else { + $299 = HEAP32[$iCol>>2]|0; + $300 = 1 << $299; + $305 = $300; + } + $301 = HEAP32[$1>>2]|0; + $302 = (($301) + 428|0); + $303 = HEAP32[$302>>2]|0; + $304 = $303 | $305; + HEAP32[$302>>2] = $304; + break; + } else { + if ($298) { + $312 = -1; + } else { + $306 = HEAP32[$iCol>>2]|0; + $307 = 1 << $306; + $312 = $307; + } + $308 = HEAP32[$1>>2]|0; + $309 = (($308) + 432|0); + $310 = HEAP32[$309>>2]|0; + $311 = $310 | $312; + HEAP32[$309>>2] = $311; + break; + } + } + } while(0); + $313 = HEAP32[$iCol>>2]|0; + $314 = $313&65535; + $315 = HEAP32[$6>>2]|0; + $316 = (($315) + 32|0); + HEAP16[$316>>1] = $314; + $317 = HEAP32[$pTab>>2]|0; + $318 = HEAP32[$6>>2]|0; + $319 = (($318) + 44|0); + HEAP32[$319>>2] = $317; + HEAP32[$isTrigger>>2] = 1; + } + } + } + } + } + } + $320 = HEAP32[$cnt>>2]|0; + $321 = ($320|0)==(0); + if ($321) { + $322 = HEAP32[$cntTab>>2]|0; + $323 = ($322|0)==(1); + if ($323) { + $324 = HEAP32[$pMatch>>2]|0; + $325 = ($324|0)!=(0|0); + if ($325) { + $326 = HEAP32[$4>>2]|0; + $327 = (_sqlite3IsRowid($326)|0); + $328 = ($327|0)!=(0); + if ($328) { + $329 = HEAP32[$pMatch>>2]|0; + $330 = (($329) + 16|0); + $331 = HEAP32[$330>>2]|0; + $332 = (($331) + 44|0); + $333 = HEAP8[$332>>0]|0; + $334 = $333&255; + $335 = $334 & 32; + $336 = ($335|0)==(0); + if ($336) { + HEAP32[$cnt>>2] = 1; + $337 = HEAP32[$6>>2]|0; + $338 = (($337) + 32|0); + HEAP16[$338>>1] = -1; + $339 = HEAP32[$6>>2]|0; + $340 = (($339) + 1|0); + HEAP8[$340>>0] = 100; + } + } + } + } + } + $341 = HEAP32[$5>>2]|0; + $342 = (($341) + 8|0); + $343 = HEAP32[$342>>2]|0; + HEAP32[$pEList>>2] = $343; + $344 = ($343|0)!=(0|0); + L113: do { + if ($344) { + $345 = HEAP32[$3>>2]|0; + $346 = ($345|0)==(0|0); + if ($346) { + $347 = HEAP32[$cnt>>2]|0; + $348 = ($347|0)==(0); + if ($348) { + HEAP32[$j>>2] = 0; + while(1) { + $349 = HEAP32[$j>>2]|0; + $350 = HEAP32[$pEList>>2]|0; + $351 = HEAP32[$350>>2]|0; + $352 = ($349|0)<($351|0); + if (!($352)) { + break L113; + } + $353 = HEAP32[$j>>2]|0; + $354 = HEAP32[$pEList>>2]|0; + $355 = (($354) + 4|0); + $356 = HEAP32[$355>>2]|0; + $357 = (($356) + (($353*20)|0)|0); + $358 = (($357) + 4|0); + $359 = HEAP32[$358>>2]|0; + HEAP32[$zAs>>2] = $359; + $360 = HEAP32[$zAs>>2]|0; + $361 = ($360|0)!=(0|0); + if ($361) { + $362 = HEAP32[$zAs>>2]|0; + $363 = HEAP32[$4>>2]|0; + $364 = (_sqlite3_stricmp($362,$363)|0); + $365 = ($364|0)==(0); + if ($365) { + label = 91; + break L11; + } + } + $390 = HEAP32[$j>>2]|0; + $391 = (($390) + 1)|0; + HEAP32[$j>>2] = $391; + } + } + } + } + } while(0); + $392 = HEAP32[$cnt>>2]|0; + $393 = ($392|0)==(0); + if (!($393)) { + continue; + } + $394 = HEAP32[$5>>2]|0; + $395 = (($394) + 16|0); + $396 = HEAP32[$395>>2]|0; + HEAP32[$5>>2] = $396; + $397 = HEAP32[$nSubquery>>2]|0; + $398 = (($397) + 1)|0; + HEAP32[$nSubquery>>2] = $398; + } + if ((label|0) == 91) { + $366 = HEAP32[$j>>2]|0; + $367 = HEAP32[$pEList>>2]|0; + $368 = (($367) + 4|0); + $369 = HEAP32[$368>>2]|0; + $370 = (($369) + (($366*20)|0)|0); + $371 = HEAP32[$370>>2]|0; + HEAP32[$pOrig>>2] = $371; + $372 = HEAP32[$5>>2]|0; + $373 = (($372) + 28|0); + $374 = HEAP8[$373>>0]|0; + $375 = $374&255; + $376 = $375 & 1; + $377 = ($376|0)==(0); + if ($377) { + $378 = HEAP32[$pOrig>>2]|0; + $379 = (($378) + 4|0); + $380 = HEAP32[$379>>2]|0; + $381 = $380 & 2; + $382 = ($381|0)!=(0); + if ($382) { + $383 = HEAP32[$1>>2]|0; + $384 = HEAP32[$zAs>>2]|0; + HEAP32[$vararg_buffer12>>2] = $384; + _sqlite3ErrorMsg($383,23704,$vararg_buffer12); + HEAP32[$0>>2] = 2; + $505 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($505|0); + } + } + $385 = HEAP32[$1>>2]|0; + $386 = HEAP32[$pEList>>2]|0; + $387 = HEAP32[$j>>2]|0; + $388 = HEAP32[$6>>2]|0; + $389 = HEAP32[$nSubquery>>2]|0; + _resolveAlias($385,$386,$387,$388,1784,$389); + HEAP32[$cnt>>2] = 1; + HEAP32[$pMatch>>2] = 0; + } + else if ((label|0) == 98) { + $399 = HEAP32[$cnt>>2]|0; + $400 = ($399|0)==(0); + if ($400) { + $401 = HEAP32[$3>>2]|0; + $402 = ($401|0)==(0|0); + if ($402) { + $403 = HEAP32[$6>>2]|0; + $404 = (($403) + 4|0); + $405 = HEAP32[$404>>2]|0; + $406 = $405 & 64; + $407 = ($406|0)!=(0); + if ($407) { + $408 = HEAP32[$6>>2]|0; + HEAP8[$408>>0] = 97; + $409 = HEAP32[$6>>2]|0; + $410 = (($409) + 44|0); + HEAP32[$410>>2] = 0; + HEAP32[$0>>2] = 1; + $505 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($505|0); + } + } + } + $411 = HEAP32[$cnt>>2]|0; + $412 = ($411|0)!=(1); + if ($412) { + $413 = HEAP32[$cnt>>2]|0; + $414 = ($413|0)==(0); + $415 = $414 ? 23736 : 23752; + HEAP32[$zErr>>2] = $415; + $416 = HEAP32[$2>>2]|0; + $417 = ($416|0)!=(0|0); + do { + if ($417) { + $418 = HEAP32[$1>>2]|0; + $419 = HEAP32[$zErr>>2]|0; + $420 = HEAP32[$2>>2]|0; + $421 = HEAP32[$3>>2]|0; + $422 = HEAP32[$4>>2]|0; + HEAP32[$vararg_buffer12>>2] = $419; + $vararg_ptr4 = (($vararg_buffer12) + 4|0); + HEAP32[$vararg_ptr4>>2] = $420; + $vararg_ptr5 = (($vararg_buffer12) + 8|0); + HEAP32[$vararg_ptr5>>2] = $421; + $vararg_ptr6 = (($vararg_buffer12) + 12|0); + HEAP32[$vararg_ptr6>>2] = $422; + _sqlite3ErrorMsg($418,23776,$vararg_buffer12); + } else { + $423 = HEAP32[$3>>2]|0; + $424 = ($423|0)!=(0|0); + $425 = HEAP32[$1>>2]|0; + $426 = HEAP32[$zErr>>2]|0; + if ($424) { + $427 = HEAP32[$3>>2]|0; + $428 = HEAP32[$4>>2]|0; + HEAP32[$vararg_buffer12>>2] = $426; + $vararg_ptr10 = (($vararg_buffer12) + 4|0); + HEAP32[$vararg_ptr10>>2] = $427; + $vararg_ptr11 = (($vararg_buffer12) + 8|0); + HEAP32[$vararg_ptr11>>2] = $428; + _sqlite3ErrorMsg($425,23792,$vararg_buffer12); + break; + } else { + $429 = HEAP32[$4>>2]|0; + HEAP32[$vararg_buffer12>>2] = $426; + $vararg_ptr15 = (($vararg_buffer12) + 4|0); + HEAP32[$vararg_ptr15>>2] = $429; + _sqlite3ErrorMsg($425,23808,$vararg_buffer12); + break; + } + } + } while(0); + $430 = HEAP32[$1>>2]|0; + $431 = (($430) + 17|0); + HEAP8[$431>>0] = 1; + $432 = HEAP32[$pTopNC>>2]|0; + $433 = (($432) + 24|0); + $434 = HEAP32[$433>>2]|0; + $435 = (($434) + 1)|0; + HEAP32[$433>>2] = $435; + } + $436 = HEAP32[$6>>2]|0; + $437 = (($436) + 32|0); + $438 = HEAP16[$437>>1]|0; + $439 = $438 << 16 >> 16; + $440 = ($439|0)>=(0); + if ($440) { + $441 = HEAP32[$pMatch>>2]|0; + $442 = ($441|0)!=(0|0); + if ($442) { + $443 = HEAP32[$6>>2]|0; + $444 = (($443) + 32|0); + $445 = HEAP16[$444>>1]|0; + $446 = $445 << 16 >> 16; + HEAP32[$n>>2] = $446; + $447 = HEAP32[$n>>2]|0; + $448 = ($447|0)>=(64); + $$ = $448 ? 63 : $446; + HEAP32[$n>>2] = $$; + $449 = HEAP32[$n>>2]|0; + $450 = (_bitshift64Shl(1,0,($449|0))|0); + $451 = tempRet0; + $452 = HEAP32[$pMatch>>2]|0; + $453 = (($452) + 56|0); + $454 = $453; + $455 = $454; + $456 = HEAP32[$455>>2]|0; + $457 = (($454) + 4)|0; + $458 = $457; + $459 = HEAP32[$458>>2]|0; + $460 = $456 | $450; + $461 = $459 | $451; + $462 = $453; + $463 = $462; + HEAP32[$463>>2] = $460; + $464 = (($462) + 4)|0; + $465 = $464; + HEAP32[$465>>2] = $461; + } + } + $466 = HEAP32[$db>>2]|0; + $467 = HEAP32[$6>>2]|0; + $468 = (($467) + 12|0); + $469 = HEAP32[$468>>2]|0; + _sqlite3ExprDelete($466,$469); + $470 = HEAP32[$6>>2]|0; + $471 = (($470) + 12|0); + HEAP32[$471>>2] = 0; + $472 = HEAP32[$db>>2]|0; + $473 = HEAP32[$6>>2]|0; + $474 = (($473) + 16|0); + $475 = HEAP32[$474>>2]|0; + _sqlite3ExprDelete($472,$475); + $476 = HEAP32[$6>>2]|0; + $477 = (($476) + 16|0); + HEAP32[$477>>2] = 0; + $478 = HEAP32[$isTrigger>>2]|0; + $479 = ($478|0)!=(0); + $480 = $479 ? 62 : 154; + $481 = $480&255; + $482 = HEAP32[$6>>2]|0; + HEAP8[$482>>0] = $481; + } + $483 = HEAP32[$cnt>>2]|0; + $484 = ($483|0)==(1); + if (!($484)) { + HEAP32[$0>>2] = 2; + $505 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($505|0); + } + $485 = HEAP32[$6>>2]|0; + $486 = HEAP8[$485>>0]|0; + $487 = $486&255; + $488 = ($487|0)!=(24); + if ($488) { + $489 = HEAP32[$1>>2]|0; + $490 = HEAP32[$6>>2]|0; + $491 = HEAP32[$pSchema>>2]|0; + $492 = HEAP32[$5>>2]|0; + $493 = (($492) + 4|0); + $494 = HEAP32[$493>>2]|0; + _sqlite3AuthRead($489,$490,$491,$494); + } + while(1) { + $495 = HEAP32[$pTopNC>>2]|0; + $496 = (($495) + 20|0); + $497 = HEAP32[$496>>2]|0; + $498 = (($497) + 1)|0; + HEAP32[$496>>2] = $498; + $499 = HEAP32[$pTopNC>>2]|0; + $500 = HEAP32[$5>>2]|0; + $501 = ($499|0)==($500|0); + if ($501) { + break; + } + $502 = HEAP32[$pTopNC>>2]|0; + $503 = (($502) + 16|0); + $504 = HEAP32[$503>>2]|0; + HEAP32[$pTopNC>>2] = $504; + } + HEAP32[$0>>2] = 1; + $505 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($505|0); +} +function _notValidPartIdxWhere($pParse,$pNC,$zMsg) { + $pParse = $pParse|0; + $pNC = $pNC|0; + $zMsg = $zMsg|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 12|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pNC; + HEAP32[$2>>2] = $zMsg; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 28|0); + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = $6 & 16; + $8 = ($7|0)!=(0); + if (!($8)) { + STACKTOP = sp;return; + } + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer>>2] = $10; + _sqlite3ErrorMsg($9,23640,$vararg_buffer); + STACKTOP = sp;return; +} +function _exprProbability($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0.0, $16 = 0.0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp + 8|0; + $r = sp; + HEAP32[$1>>2] = $p; + HEAPF64[$r>>3] = -1.0; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = ($4|0)!=(133); + if ($5) { + HEAP32[$0>>2] = -1; + $18 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($18|0); + } + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 8|0); + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 8|0); + $11 = HEAP32[$10>>2]|0; + $12 = (_sqlite3Strlen30($11)|0); + (_sqlite3AtoF($8,$r,$12,1)|0); + $13 = +HEAPF64[$r>>3]; + $14 = $13 > 1.0; + if ($14) { + HEAP32[$0>>2] = -1; + $18 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($18|0); + } else { + $15 = +HEAPF64[$r>>3]; + $16 = $15 * 1000.0; + $17 = (~~(($16))); + HEAP32[$0>>2] = $17; + $18 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($18|0); + } + return 0|0; +} +function _sqlite3FunctionUsesThisSrc($pExpr,$pSrcList) { + $pExpr = $pExpr|0; + $pSrcList = $pSrcList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cnt = 0, $w = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp; + $w = sp + 8|0; + $cnt = sp + 32|0; + HEAP32[$0>>2] = $pExpr; + HEAP32[$1>>2] = $pSrcList; + ;HEAP32[$w+0>>2]=0|0;HEAP32[$w+4>>2]=0|0;HEAP32[$w+8>>2]=0|0;HEAP32[$w+12>>2]=0|0;HEAP32[$w+16>>2]=0|0;HEAP32[$w+20>>2]=0|0; + HEAP32[$w>>2] = 61; + $2 = (($w) + 20|0); + HEAP32[$2>>2] = $cnt; + $3 = HEAP32[$1>>2]|0; + HEAP32[$cnt>>2] = $3; + $4 = (($cnt) + 4|0); + HEAP32[$4>>2] = 0; + $5 = (($cnt) + 8|0); + HEAP32[$5>>2] = 0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 20|0); + $8 = HEAP32[$7>>2]|0; + (_sqlite3WalkExprList($w,$8)|0); + $9 = (($cnt) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)>(0); + if ($11) { + $16 = 1; + $15 = $16&1; + STACKTOP = sp;return ($15|0); + } + $12 = (($cnt) + 8|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)==(0); + $16 = $14; + $15 = $16&1; + STACKTOP = sp;return ($15|0); +} +function _notValidCheckConstraint($pParse,$pNC,$zMsg) { + $pParse = $pParse|0; + $pNC = $pNC|0; + $zMsg = $zMsg|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 12|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pNC; + HEAP32[$2>>2] = $zMsg; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 28|0); + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = $6 & 4; + $8 = ($7|0)!=(0); + if (!($8)) { + STACKTOP = sp;return; + } + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer>>2] = $10; + _sqlite3ErrorMsg($9,23600,$vararg_buffer); + STACKTOP = sp;return; +} +function _exprSrcCount($pWalker,$pExpr) { + $pWalker = $pWalker|0; + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $i = 0, $p = 0, $pSrc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $i = sp + 4|0; + $p = sp + 8|0; + $pSrc = sp + 12|0; + HEAP32[$0>>2] = $pWalker; + HEAP32[$1>>2] = $pExpr; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = ($4|0)==(154); + if (!($5)) { + $6 = HEAP32[$1>>2]|0; + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = ($8|0)==(156); + if (!($9)) { + STACKTOP = sp;return 0; + } + } + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 20|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$p>>2] = $12; + $13 = HEAP32[$p>>2]|0; + $14 = HEAP32[$13>>2]|0; + HEAP32[$pSrc>>2] = $14; + HEAP32[$i>>2] = 0; + while(1) { + $15 = HEAP32[$i>>2]|0; + $16 = HEAP32[$pSrc>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = ($15|0)<($17|0); + if (!($18)) { + break; + } + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 28|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$i>>2]|0; + $23 = HEAP32[$pSrc>>2]|0; + $24 = (($23) + 8|0); + $25 = (($24) + (($22*72)|0)|0); + $26 = (($25) + 40|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($21|0)==($27|0); + if ($28) { + break; + } + $29 = HEAP32[$i>>2]|0; + $30 = (($29) + 1)|0; + HEAP32[$i>>2] = $30; + } + $31 = HEAP32[$i>>2]|0; + $32 = HEAP32[$pSrc>>2]|0; + $33 = HEAP32[$32>>2]|0; + $34 = ($31|0)<($33|0); + $35 = HEAP32[$p>>2]|0; + if ($34) { + $36 = (($35) + 4|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + 1)|0; + HEAP32[$36>>2] = $38; + STACKTOP = sp;return 0; + } else { + $39 = (($35) + 8|0); + $40 = HEAP32[$39>>2]|0; + $41 = (($40) + 1)|0; + HEAP32[$39>>2] = $41; + STACKTOP = sp;return 0; + } + return 0|0; +} +function _sqlite3MatchSpanName($zSpan,$zCol,$zTab,$zDb) { + $zSpan = $zSpan|0; + $zCol = $zCol|0; + $zTab = $zTab|0; + $zDb = $zDb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $8 = 0, $9 = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $n = sp + 16|0; + HEAP32[$1>>2] = $zSpan; + HEAP32[$2>>2] = $zCol; + HEAP32[$3>>2] = $zTab; + HEAP32[$4>>2] = $zDb; + HEAP32[$n>>2] = 0; + while(1) { + $5 = HEAP32[$n>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + ($5)|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8 << 24 >> 24; + $10 = ($9|0)!=(0); + if (!($10)) { + break; + } + $11 = HEAP32[$n>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + ($11)|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14 << 24 >> 24; + $16 = ($15|0)!=(46); + if (!($16)) { + break; + } + $17 = HEAP32[$n>>2]|0; + $18 = (($17) + 1)|0; + HEAP32[$n>>2] = $18; + } + $19 = HEAP32[$4>>2]|0; + $20 = ($19|0)!=(0|0); + do { + if ($20) { + $21 = HEAP32[$1>>2]|0; + $22 = HEAP32[$4>>2]|0; + $23 = HEAP32[$n>>2]|0; + $24 = (_sqlite3_strnicmp($21,$22,$23)|0); + $25 = ($24|0)!=(0); + if (!($25)) { + $26 = HEAP32[$n>>2]|0; + $27 = HEAP32[$4>>2]|0; + $28 = (($27) + ($26)|0); + $29 = HEAP8[$28>>0]|0; + $30 = $29 << 24 >> 24; + $31 = ($30|0)!=(0); + if (!($31)) { + break; + } + } + HEAP32[$0>>2] = 0; + $73 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($73|0); + } + } while(0); + $32 = HEAP32[$n>>2]|0; + $33 = (($32) + 1)|0; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + ($33)|0); + HEAP32[$1>>2] = $35; + HEAP32[$n>>2] = 0; + while(1) { + $36 = HEAP32[$n>>2]|0; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + ($36)|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39 << 24 >> 24; + $41 = ($40|0)!=(0); + if (!($41)) { + break; + } + $42 = HEAP32[$n>>2]|0; + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + ($42)|0); + $45 = HEAP8[$44>>0]|0; + $46 = $45 << 24 >> 24; + $47 = ($46|0)!=(46); + if (!($47)) { + break; + } + $48 = HEAP32[$n>>2]|0; + $49 = (($48) + 1)|0; + HEAP32[$n>>2] = $49; + } + $50 = HEAP32[$3>>2]|0; + $51 = ($50|0)!=(0|0); + do { + if ($51) { + $52 = HEAP32[$1>>2]|0; + $53 = HEAP32[$3>>2]|0; + $54 = HEAP32[$n>>2]|0; + $55 = (_sqlite3_strnicmp($52,$53,$54)|0); + $56 = ($55|0)!=(0); + if (!($56)) { + $57 = HEAP32[$n>>2]|0; + $58 = HEAP32[$3>>2]|0; + $59 = (($58) + ($57)|0); + $60 = HEAP8[$59>>0]|0; + $61 = $60 << 24 >> 24; + $62 = ($61|0)!=(0); + if (!($62)) { + break; + } + } + HEAP32[$0>>2] = 0; + $73 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($73|0); + } + } while(0); + $63 = HEAP32[$n>>2]|0; + $64 = (($63) + 1)|0; + $65 = HEAP32[$1>>2]|0; + $66 = (($65) + ($64)|0); + HEAP32[$1>>2] = $66; + $67 = HEAP32[$2>>2]|0; + $68 = ($67|0)!=(0|0); + if ($68) { + $69 = HEAP32[$1>>2]|0; + $70 = HEAP32[$2>>2]|0; + $71 = (_sqlite3_stricmp($69,$70)|0); + $72 = ($71|0)!=(0); + if ($72) { + HEAP32[$0>>2] = 0; + $73 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($73|0); + } + } + HEAP32[$0>>2] = 1; + $73 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($73|0); +} +function _nameInUsingClause($pUsing,$zCol) { + $pUsing = $pUsing|0; + $zCol = $zCol|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $k = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $k = sp + 8|0; + HEAP32[$1>>2] = $pUsing; + HEAP32[$2>>2] = $zCol; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)!=(0|0); + L1: do { + if ($4) { + HEAP32[$k>>2] = 0; + while(1) { + $5 = HEAP32[$k>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($5|0)<($8|0); + if (!($9)) { + break L1; + } + $10 = HEAP32[$k>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + ($10<<3)|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = (_sqlite3_stricmp($14,$15)|0); + $17 = ($16|0)==(0); + if ($17) { + break; + } + $18 = HEAP32[$k>>2]|0; + $19 = (($18) + 1)|0; + HEAP32[$k>>2] = $19; + } + HEAP32[$0>>2] = 1; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); +} +function _sqlite3IsRowid($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $z; + $2 = HEAP32[$1>>2]|0; + $3 = (_sqlite3_stricmp($2,23896)|0); + $4 = ($3|0)==(0); + do { + if ($4) { + HEAP32[$0>>2] = 1; + } else { + $5 = HEAP32[$1>>2]|0; + $6 = (_sqlite3_stricmp($5,23816)|0); + $7 = ($6|0)==(0); + if ($7) { + HEAP32[$0>>2] = 1; + break; + } + $8 = HEAP32[$1>>2]|0; + $9 = (_sqlite3_stricmp($8,23904)|0); + $10 = ($9|0)==(0); + if ($10) { + HEAP32[$0>>2] = 1; + break; + } else { + HEAP32[$0>>2] = 0; + break; + } + } + } while(0); + $11 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($11|0); +} +function _sqlite3AuthRead($pParse,$pExpr,$pSchema,$pTabList) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + $pSchema = $pSchema|0; + $pTabList = $pTabList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; + var $db = 0, $iCol = 0, $iDb = 0, $iSrc = 0, $pTab = 0, $zCol = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $db = sp + 20|0; + $pTab = sp + 16|0; + $zCol = sp + 8|0; + $iSrc = sp + 4|0; + $iDb = sp; + $iCol = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $pSchema; + HEAP32[$3>>2] = $pTabList; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + HEAP32[$pTab>>2] = 0; + $6 = HEAP32[$db>>2]|0; + $7 = (($6) + 276|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + STACKTOP = sp;return; + } + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = (_sqlite3SchemaToIndex($11,$12)|0); + HEAP32[$iDb>>2] = $13; + $14 = HEAP32[$iDb>>2]|0; + $15 = ($14|0)<(0); + if ($15) { + STACKTOP = sp;return; + } + $16 = HEAP32[$1>>2]|0; + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = ($18|0)==(62); + L7: do { + if ($19) { + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 412|0); + $22 = HEAP32[$21>>2]|0; + HEAP32[$pTab>>2] = $22; + } else { + HEAP32[$iSrc>>2] = 0; + while(1) { + $23 = HEAP32[$iSrc>>2]|0; + $24 = HEAP32[$3>>2]|0; + $25 = HEAP32[$24>>2]|0; + $26 = ($23|0)<($25|0); + if (!($26)) { + break L7; + } + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 28|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$iSrc>>2]|0; + $31 = HEAP32[$3>>2]|0; + $32 = (($31) + 8|0); + $33 = (($32) + (($30*72)|0)|0); + $34 = (($33) + 40|0); + $35 = HEAP32[$34>>2]|0; + $36 = ($29|0)==($35|0); + $37 = HEAP32[$iSrc>>2]|0; + if ($36) { + break; + } + $43 = (($37) + 1)|0; + HEAP32[$iSrc>>2] = $43; + } + $38 = HEAP32[$3>>2]|0; + $39 = (($38) + 8|0); + $40 = (($39) + (($37*72)|0)|0); + $41 = (($40) + 16|0); + $42 = HEAP32[$41>>2]|0; + HEAP32[$pTab>>2] = $42; + } + } while(0); + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 32|0); + $46 = HEAP16[$45>>1]|0; + $47 = $46 << 16 >> 16; + HEAP32[$iCol>>2] = $47; + $48 = HEAP32[$pTab>>2]|0; + $49 = ($48|0)==(0|0); + if ($49) { + STACKTOP = sp;return; + } + $50 = HEAP32[$iCol>>2]|0; + $51 = ($50|0)>=(0); + do { + if ($51) { + $52 = HEAP32[$iCol>>2]|0; + $53 = HEAP32[$pTab>>2]|0; + $54 = (($53) + 4|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + (($52*24)|0)|0); + $57 = HEAP32[$56>>2]|0; + HEAP32[$zCol>>2] = $57; + } else { + $58 = HEAP32[$pTab>>2]|0; + $59 = (($58) + 36|0); + $60 = HEAP16[$59>>1]|0; + $61 = $60 << 16 >> 16; + $62 = ($61|0)>=(0); + if ($62) { + $63 = HEAP32[$pTab>>2]|0; + $64 = (($63) + 36|0); + $65 = HEAP16[$64>>1]|0; + $66 = $65 << 16 >> 16; + $67 = HEAP32[$pTab>>2]|0; + $68 = (($67) + 4|0); + $69 = HEAP32[$68>>2]|0; + $70 = (($69) + (($66*24)|0)|0); + $71 = HEAP32[$70>>2]|0; + HEAP32[$zCol>>2] = $71; + break; + } else { + HEAP32[$zCol>>2] = 23816; + break; + } + } + } while(0); + $72 = HEAP32[$0>>2]|0; + $73 = HEAP32[$pTab>>2]|0; + $74 = HEAP32[$73>>2]|0; + $75 = HEAP32[$zCol>>2]|0; + $76 = HEAP32[$iDb>>2]|0; + $77 = (_sqlite3AuthReadCol($72,$74,$75,$76)|0); + $78 = (2)==($77|0); + if (!($78)) { + STACKTOP = sp;return; + } + $79 = HEAP32[$1>>2]|0; + HEAP8[$79>>0] = 101; + STACKTOP = sp;return; +} +function _sqlite3AuthReadCol($pParse,$zTab,$zCol,$iDb) { + $pParse = $pParse|0; + $zTab = $zTab|0; + $zCol = $zCol|0; + $iDb = $iDb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $or$cond = 0, $rc = 0, $vararg_buffer4 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr7 = 0, $zDb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer4 = sp; + $0 = sp + 36|0; + $1 = sp + 12|0; + $2 = sp + 16|0; + $3 = sp + 20|0; + $db = sp + 24|0; + $zDb = sp + 28|0; + $rc = sp + 32|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $zTab; + HEAP32[$2>>2] = $zCol; + HEAP32[$3>>2] = $iDb; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$3>>2]|0; + $7 = HEAP32[$db>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + ($6<<4)|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$zDb>>2] = $11; + $12 = HEAP32[$db>>2]|0; + $13 = (($12) + 276|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$db>>2]|0; + $16 = (($15) + 280|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = HEAP32[$zDb>>2]|0; + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 492|0); + $23 = HEAP32[$22>>2]|0; + $24 = (FUNCTION_TABLE_iiiiiii[$14 & 15]($17,20,$18,$19,$20,$23)|0); + HEAP32[$rc>>2] = $24; + $25 = HEAP32[$rc>>2]|0; + $26 = ($25|0)==(1); + if (!($26)) { + $42 = HEAP32[$rc>>2]|0; + $43 = ($42|0)!=(2); + $44 = HEAP32[$rc>>2]|0; + $45 = ($44|0)!=(0); + $or$cond = $43 & $45; + if (!($or$cond)) { + $47 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($47|0); + } + $46 = HEAP32[$0>>2]|0; + _sqliteAuthBadReturnCode($46); + $47 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($47|0); + } + $27 = HEAP32[$db>>2]|0; + $28 = (($27) + 20|0); + $29 = HEAP32[$28>>2]|0; + $30 = ($29|0)>(2); + if ($30) { + label = 4; + } else { + $31 = HEAP32[$3>>2]|0; + $32 = ($31|0)!=(0); + if ($32) { + label = 4; + } else { + $37 = HEAP32[$0>>2]|0; + $38 = HEAP32[$1>>2]|0; + $39 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer4>>2] = $38; + $vararg_ptr7 = (($vararg_buffer4) + 4|0); + HEAP32[$vararg_ptr7>>2] = $39; + _sqlite3ErrorMsg($37,23864,$vararg_buffer4); + } + } + if ((label|0) == 4) { + $33 = HEAP32[$0>>2]|0; + $34 = HEAP32[$zDb>>2]|0; + $35 = HEAP32[$1>>2]|0; + $36 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer4>>2] = $34; + $vararg_ptr2 = (($vararg_buffer4) + 4|0); + HEAP32[$vararg_ptr2>>2] = $35; + $vararg_ptr3 = (($vararg_buffer4) + 8|0); + HEAP32[$vararg_ptr3>>2] = $36; + _sqlite3ErrorMsg($33,23824,$vararg_buffer4); + } + $40 = HEAP32[$0>>2]|0; + $41 = (($40) + 12|0); + HEAP32[$41>>2] = 23; + $47 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($47|0); +} +function _convertCompoundSelectToSubquery($pWalker,$p) { + $pWalker = $pWalker|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0; + var $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a = 0, $db = 0, $dummy = 0, $i = 0, $pNew = 0, $pNewSrc = 0, $pParse = 0, $pX = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $i = sp + 32|0; + $pNew = sp + 28|0; + $pX = sp + 24|0; + $db = sp + 12|0; + $a = sp + 8|0; + $pNewSrc = sp + 4|0; + $pParse = sp; + $dummy = sp + 16|0; + HEAP32[$1>>2] = $pWalker; + HEAP32[$2>>2] = $p; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 52|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)==(0|0); + if ($6) { + HEAP32[$0>>2] = 0; + $106 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($106|0); + } + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 48|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)==(0|0); + if ($10) { + HEAP32[$0>>2] = 0; + $106 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($106|0); + } + $11 = HEAP32[$2>>2]|0; + HEAP32[$pX>>2] = $11; + while(1) { + $12 = HEAP32[$pX>>2]|0; + $13 = ($12|0)!=(0|0); + if (!($13)) { + break; + } + $14 = HEAP32[$pX>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = ($17|0)==(116); + if (!($18)) { + $19 = HEAP32[$pX>>2]|0; + $20 = (($19) + 4|0); + $21 = HEAP8[$20>>0]|0; + $22 = $21&255; + $23 = ($22|0)==(119); + if (!($23)) { + break; + } + } + $24 = HEAP32[$pX>>2]|0; + $25 = (($24) + 52|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$pX>>2] = $26; + } + $27 = HEAP32[$pX>>2]|0; + $28 = ($27|0)==(0|0); + if ($28) { + HEAP32[$0>>2] = 0; + $106 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($106|0); + } + $29 = HEAP32[$2>>2]|0; + $30 = (($29) + 48|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + 4|0); + $33 = HEAP32[$32>>2]|0; + HEAP32[$a>>2] = $33; + $34 = HEAP32[$2>>2]|0; + $35 = (($34) + 48|0); + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$36>>2]|0; + $38 = (($37) - 1)|0; + HEAP32[$i>>2] = $38; + while(1) { + $39 = HEAP32[$i>>2]|0; + $40 = ($39|0)>=(0); + if (!($40)) { + break; + } + $41 = HEAP32[$i>>2]|0; + $42 = HEAP32[$a>>2]|0; + $43 = (($42) + (($41*20)|0)|0); + $44 = HEAP32[$43>>2]|0; + $45 = (($44) + 4|0); + $46 = HEAP32[$45>>2]|0; + $47 = $46 & 256; + $48 = ($47|0)!=(0); + if ($48) { + break; + } + $49 = HEAP32[$i>>2]|0; + $50 = (($49) + -1)|0; + HEAP32[$i>>2] = $50; + } + $51 = HEAP32[$i>>2]|0; + $52 = ($51|0)<(0); + if ($52) { + HEAP32[$0>>2] = 0; + $106 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($106|0); + } + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 12|0); + $55 = HEAP32[$54>>2]|0; + HEAP32[$pParse>>2] = $55; + $56 = HEAP32[$pParse>>2]|0; + $57 = HEAP32[$56>>2]|0; + HEAP32[$db>>2] = $57; + $58 = HEAP32[$db>>2]|0; + $59 = (_sqlite3DbMallocZero($58,72)|0); + HEAP32[$pNew>>2] = $59; + $60 = HEAP32[$pNew>>2]|0; + $61 = ($60|0)==(0|0); + if ($61) { + HEAP32[$0>>2] = 2; + $106 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($106|0); + } + ;HEAP32[$dummy+0>>2]=0|0;HEAP32[$dummy+4>>2]=0|0; + $62 = HEAP32[$pParse>>2]|0; + $63 = HEAP32[$pNew>>2]|0; + $64 = (_sqlite3SrcListAppendFromTerm($62,0,0,0,$dummy,$63,0,0)|0); + HEAP32[$pNewSrc>>2] = $64; + $65 = HEAP32[$pNewSrc>>2]|0; + $66 = ($65|0)==(0|0); + if ($66) { + HEAP32[$0>>2] = 2; + $106 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($106|0); + } else { + $67 = HEAP32[$pNew>>2]|0; + $68 = HEAP32[$2>>2]|0; + dest=$67+0|0; src=$68+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $69 = HEAP32[$pNewSrc>>2]|0; + $70 = HEAP32[$2>>2]|0; + $71 = (($70) + 32|0); + HEAP32[$71>>2] = $69; + $72 = HEAP32[$pParse>>2]|0; + $73 = HEAP32[$db>>2]|0; + $74 = (_sqlite3Expr($73,116,0)|0); + $75 = (_sqlite3ExprListAppend($72,0,$74)|0); + $76 = HEAP32[$2>>2]|0; + HEAP32[$76>>2] = $75; + $77 = HEAP32[$2>>2]|0; + $78 = (($77) + 4|0); + HEAP8[$78>>0] = 119; + $79 = HEAP32[$2>>2]|0; + $80 = (($79) + 36|0); + HEAP32[$80>>2] = 0; + $81 = HEAP32[$pNew>>2]|0; + $82 = (($81) + 40|0); + HEAP32[$82>>2] = 0; + $83 = HEAP32[$pNew>>2]|0; + $84 = (($83) + 44|0); + HEAP32[$84>>2] = 0; + $85 = HEAP32[$pNew>>2]|0; + $86 = (($85) + 48|0); + HEAP32[$86>>2] = 0; + $87 = HEAP32[$2>>2]|0; + $88 = (($87) + 52|0); + HEAP32[$88>>2] = 0; + $89 = HEAP32[$2>>2]|0; + $90 = (($89) + 56|0); + HEAP32[$90>>2] = 0; + $91 = HEAP32[$2>>2]|0; + $92 = (($91) + 6|0); + $93 = HEAP16[$92>>1]|0; + $94 = $93&65535; + $95 = $94 & -4097; + $96 = $95&65535; + HEAP16[$92>>1] = $96; + $97 = HEAP32[$pNew>>2]|0; + $98 = HEAP32[$pNew>>2]|0; + $99 = (($98) + 52|0); + $100 = HEAP32[$99>>2]|0; + $101 = (($100) + 56|0); + HEAP32[$101>>2] = $97; + $102 = HEAP32[$pNew>>2]|0; + $103 = (($102) + 60|0); + HEAP32[$103>>2] = 0; + $104 = HEAP32[$pNew>>2]|0; + $105 = (($104) + 64|0); + HEAP32[$105>>2] = 0; + HEAP32[$0>>2] = 0; + $106 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($106|0); + } + return 0|0; +} +function _selectExpander($pWalker,$p) { + $pWalker = $pWalker|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $a = 0, $db = 0, $flags = 0, $i = 0, $iDb = 0, $j = 0, $k = 0, $longNames = 0, $pE = 0, $pEList = 0, $pExpr = 0, $pFrom = 0, $pLeft = 0, $pNew = 0, $pParse = 0, $pRight = 0, $pSel = 0; + var $pSub = 0, $pTab = 0, $pTab1 = 0, $pTabList = 0, $pX = 0, $sColname = 0, $selFlags = 0, $tableSeen = 0, $vararg_buffer18 = 0, $vararg_ptr11 = 0, $vararg_ptr12 = 0, $vararg_ptr7 = 0, $zColname = 0, $zName = 0, $zSchemaName = 0, $zTName = 0, $zTabName = 0, $zToFree = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; + $vararg_buffer18 = sp; + $0 = sp + 88|0; + $1 = sp + 92|0; + $2 = sp + 96|0; + $pParse = sp + 100|0; + $i = sp + 104|0; + $j = sp + 108|0; + $k = sp + 116|0; + $pTabList = sp + 120|0; + $pEList = sp + 124|0; + $pFrom = sp + 128|0; + $db = sp + 132|0; + $pE = sp + 136|0; + $pRight = sp + 140|0; + $pExpr = sp + 144|0; + $selFlags = sp + 148|0; + $pTab = sp + 84|0; + $pSel = sp + 112|0; + $a = sp + 40|0; + $pNew = sp + 36|0; + $flags = sp + 12|0; + $longNames = sp + 16|0; + $tableSeen = sp + 20|0; + $zTName = sp + 24|0; + $pTab1 = sp + 28|0; + $pSub = sp + 32|0; + $zTabName = sp + 76|0; + $zSchemaName = sp + 44|0; + $iDb = sp + 48|0; + $zName = sp + 52|0; + $zColname = sp + 56|0; + $zToFree = sp + 60|0; + $sColname = sp + 64|0; + $pLeft = sp + 72|0; + $pX = sp + 80|0; + HEAP32[$1>>2] = $pWalker; + HEAP32[$2>>2] = $p; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pParse>>2] = $5; + $6 = HEAP32[$pParse>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$db>>2] = $7; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 6|0); + $10 = HEAP16[$9>>1]|0; + HEAP16[$selFlags>>1] = $10; + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 6|0); + $13 = HEAP16[$12>>1]|0; + $14 = $13&65535; + $15 = $14 | 16; + $16 = $15&65535; + HEAP16[$12>>1] = $16; + $17 = HEAP32[$db>>2]|0; + $18 = (($17) + 64|0); + $19 = HEAP8[$18>>0]|0; + $20 = ($19<<24>>24)!=(0); + if ($20) { + HEAP32[$0>>2] = 2; + $522 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($522|0); + } + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 32|0); + $23 = HEAP32[$22>>2]|0; + $24 = ($23|0)==(0|0); + if (!($24)) { + $25 = HEAP16[$selFlags>>1]|0; + $26 = $25&65535; + $27 = $26 & 16; + $28 = ($27|0)!=(0); + if (!($28)) { + $29 = HEAP32[$2>>2]|0; + $30 = (($29) + 32|0); + $31 = HEAP32[$30>>2]|0; + HEAP32[$pTabList>>2] = $31; + $32 = HEAP32[$2>>2]|0; + $33 = HEAP32[$32>>2]|0; + HEAP32[$pEList>>2] = $33; + $34 = HEAP32[$pParse>>2]|0; + $35 = HEAP32[$2>>2]|0; + $36 = (_findRightmost($35)|0); + $37 = (($36) + 68|0); + $38 = HEAP32[$37>>2]|0; + _sqlite3WithPush($34,$38,0); + $39 = HEAP32[$pParse>>2]|0; + $40 = HEAP32[$pTabList>>2]|0; + _sqlite3SrcListAssignCursors($39,$40); + HEAP32[$i>>2] = 0; + $41 = HEAP32[$pTabList>>2]|0; + $42 = (($41) + 8|0); + HEAP32[$pFrom>>2] = $42; + L8: while(1) { + $43 = HEAP32[$i>>2]|0; + $44 = HEAP32[$pTabList>>2]|0; + $45 = HEAP32[$44>>2]|0; + $46 = ($43|0)<($45|0); + if (!($46)) { + label = 33; + break; + } + $47 = HEAP32[$pFrom>>2]|0; + $48 = (($47) + 37|0); + $49 = HEAP8[$48>>0]|0; + $50 = ($49&255) >>> 3; + $51 = $50 & 1; + $52 = $51&255; + $53 = ($52|0)!=(0); + if (!($53)) { + $54 = HEAP32[$pFrom>>2]|0; + $55 = (($54) + 16|0); + $56 = HEAP32[$55>>2]|0; + $57 = ($56|0)!=(0|0); + $58 = HEAP32[$1>>2]|0; + if ($57) { + label = 10; + break; + } + $60 = HEAP32[$pFrom>>2]|0; + $61 = (_withExpand($58,$60)|0); + $62 = ($61|0)!=(0); + if ($62) { + label = 12; + break; + } + $63 = HEAP32[$pFrom>>2]|0; + $64 = (($63) + 16|0); + $65 = HEAP32[$64>>2]|0; + $66 = ($65|0)!=(0|0); + do { + if (!($66)) { + $67 = HEAP32[$pFrom>>2]|0; + $68 = (($67) + 8|0); + $69 = HEAP32[$68>>2]|0; + $70 = ($69|0)==(0|0); + if ($70) { + $71 = HEAP32[$pFrom>>2]|0; + $72 = (($71) + 20|0); + $73 = HEAP32[$72>>2]|0; + HEAP32[$pSel>>2] = $73; + $74 = HEAP32[$1>>2]|0; + $75 = HEAP32[$pSel>>2]|0; + (_sqlite3WalkSelect($74,$75)|0); + $76 = HEAP32[$db>>2]|0; + $77 = (_sqlite3DbMallocZero($76,76)|0); + HEAP32[$pTab>>2] = $77; + $78 = HEAP32[$pFrom>>2]|0; + $79 = (($78) + 16|0); + HEAP32[$79>>2] = $77; + $80 = HEAP32[$pTab>>2]|0; + $81 = ($80|0)==(0|0); + if ($81) { + label = 16; + break L8; + } + $82 = HEAP32[$pTab>>2]|0; + $83 = (($82) + 40|0); + HEAP16[$83>>1] = 1; + $84 = HEAP32[$db>>2]|0; + $85 = HEAP32[$pTab>>2]|0; + HEAP32[$vararg_buffer18>>2] = $85; + $86 = (_sqlite3MPrintf($84,23912,$vararg_buffer18)|0); + $87 = HEAP32[$pTab>>2]|0; + HEAP32[$87>>2] = $86; + while(1) { + $88 = HEAP32[$pSel>>2]|0; + $89 = (($88) + 52|0); + $90 = HEAP32[$89>>2]|0; + $91 = ($90|0)!=(0|0); + if (!($91)) { + break; + } + $92 = HEAP32[$pSel>>2]|0; + $93 = (($92) + 52|0); + $94 = HEAP32[$93>>2]|0; + HEAP32[$pSel>>2] = $94; + } + $95 = HEAP32[$pParse>>2]|0; + $96 = HEAP32[$pSel>>2]|0; + $97 = HEAP32[$96>>2]|0; + $98 = HEAP32[$pTab>>2]|0; + $99 = (($98) + 38|0); + $100 = HEAP32[$pTab>>2]|0; + $101 = (($100) + 4|0); + (_selectColumnsFromExprList($95,$97,$99,$101)|0); + $102 = HEAP32[$pTab>>2]|0; + $103 = (($102) + 36|0); + HEAP16[$103>>1] = -1; + $104 = HEAP32[$pTab>>2]|0; + $105 = (($104) + 28|0); + HEAP16[$105>>1] = 200; + $106 = HEAP32[$pTab>>2]|0; + $107 = (($106) + 44|0); + $108 = HEAP8[$107>>0]|0; + $109 = $108&255; + $110 = $109 | 2; + $111 = $110&255; + HEAP8[$107>>0] = $111; + break; + } + $112 = HEAP32[$pParse>>2]|0; + $113 = HEAP32[$pFrom>>2]|0; + $114 = (_sqlite3LocateTableItem($112,0,$113)|0); + HEAP32[$pTab>>2] = $114; + $115 = HEAP32[$pFrom>>2]|0; + $116 = (($115) + 16|0); + HEAP32[$116>>2] = $114; + $117 = HEAP32[$pTab>>2]|0; + $118 = ($117|0)==(0|0); + if ($118) { + label = 22; + break L8; + } + $119 = HEAP32[$pTab>>2]|0; + $120 = (($119) + 40|0); + $121 = HEAP16[$120>>1]|0; + $122 = $121&65535; + $123 = ($122|0)==(65535); + if ($123) { + label = 24; + break L8; + } + $129 = HEAP32[$pTab>>2]|0; + $130 = (($129) + 40|0); + $131 = HEAP16[$130>>1]|0; + $132 = (($131) + 1)<<16>>16; + HEAP16[$130>>1] = $132; + $133 = HEAP32[$pTab>>2]|0; + $134 = (($133) + 12|0); + $135 = HEAP32[$134>>2]|0; + $136 = ($135|0)!=(0|0); + if (!($136)) { + $137 = HEAP32[$pTab>>2]|0; + $138 = (($137) + 44|0); + $139 = HEAP8[$138>>0]|0; + $140 = $139&255; + $141 = $140 & 16; + $142 = ($141|0)!=(0); + if (!($142)) { + break; + } + } + $143 = HEAP32[$pParse>>2]|0; + $144 = HEAP32[$pTab>>2]|0; + $145 = (_sqlite3ViewGetColumnNames($143,$144)|0); + $146 = ($145|0)!=(0); + if ($146) { + label = 28; + break L8; + } + $147 = HEAP32[$db>>2]|0; + $148 = HEAP32[$pTab>>2]|0; + $149 = (($148) + 12|0); + $150 = HEAP32[$149>>2]|0; + $151 = (_sqlite3SelectDup($147,$150,0)|0); + $152 = HEAP32[$pFrom>>2]|0; + $153 = (($152) + 20|0); + HEAP32[$153>>2] = $151; + $154 = HEAP32[$1>>2]|0; + $155 = HEAP32[$pFrom>>2]|0; + $156 = (($155) + 20|0); + $157 = HEAP32[$156>>2]|0; + (_sqlite3WalkSelect($154,$157)|0); + } + } while(0); + $158 = HEAP32[$pParse>>2]|0; + $159 = HEAP32[$pFrom>>2]|0; + $160 = (_sqlite3IndexedByLookup($158,$159)|0); + $161 = ($160|0)!=(0); + if ($161) { + label = 31; + break; + } + } + $162 = HEAP32[$i>>2]|0; + $163 = (($162) + 1)|0; + HEAP32[$i>>2] = $163; + $164 = HEAP32[$pFrom>>2]|0; + $165 = (($164) + 72|0); + HEAP32[$pFrom>>2] = $165; + } + if ((label|0) == 10) { + $59 = HEAP32[$2>>2]|0; + _selectPopWith($58,$59); + HEAP32[$0>>2] = 1; + $522 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($522|0); + } + else if ((label|0) == 12) { + HEAP32[$0>>2] = 2; + $522 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($522|0); + } + else if ((label|0) == 16) { + HEAP32[$0>>2] = 2; + $522 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($522|0); + } + else if ((label|0) == 22) { + HEAP32[$0>>2] = 2; + $522 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($522|0); + } + else if ((label|0) == 24) { + $124 = HEAP32[$pParse>>2]|0; + $125 = HEAP32[$pTab>>2]|0; + $126 = HEAP32[$125>>2]|0; + HEAP32[$vararg_buffer18>>2] = $126; + _sqlite3ErrorMsg($124,23928,$vararg_buffer18); + $127 = HEAP32[$pFrom>>2]|0; + $128 = (($127) + 16|0); + HEAP32[$128>>2] = 0; + HEAP32[$0>>2] = 2; + $522 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($522|0); + } + else if ((label|0) == 28) { + HEAP32[$0>>2] = 2; + $522 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($522|0); + } + else if ((label|0) == 31) { + HEAP32[$0>>2] = 2; + $522 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($522|0); + } + else if ((label|0) == 33) { + $166 = HEAP32[$db>>2]|0; + $167 = (($166) + 64|0); + $168 = HEAP8[$167>>0]|0; + $169 = $168&255; + $170 = ($169|0)!=(0); + if (!($170)) { + $171 = HEAP32[$pParse>>2]|0; + $172 = HEAP32[$2>>2]|0; + $173 = (_sqliteProcessJoin($171,$172)|0); + $174 = ($173|0)!=(0); + if (!($174)) { + HEAP32[$k>>2] = 0; + while(1) { + $175 = HEAP32[$k>>2]|0; + $176 = HEAP32[$pEList>>2]|0; + $177 = HEAP32[$176>>2]|0; + $178 = ($175|0)<($177|0); + if (!($178)) { + break; + } + $179 = HEAP32[$k>>2]|0; + $180 = HEAP32[$pEList>>2]|0; + $181 = (($180) + 4|0); + $182 = HEAP32[$181>>2]|0; + $183 = (($182) + (($179*20)|0)|0); + $184 = HEAP32[$183>>2]|0; + HEAP32[$pE>>2] = $184; + $185 = HEAP32[$pE>>2]|0; + $186 = HEAP8[$185>>0]|0; + $187 = $186&255; + $188 = ($187|0)==(116); + if ($188) { + break; + } + $189 = HEAP32[$pE>>2]|0; + $190 = HEAP8[$189>>0]|0; + $191 = $190&255; + $192 = ($191|0)==(122); + if ($192) { + $193 = HEAP32[$pE>>2]|0; + $194 = (($193) + 16|0); + $195 = HEAP32[$194>>2]|0; + $196 = HEAP8[$195>>0]|0; + $197 = $196&255; + $198 = ($197|0)==(116); + if ($198) { + break; + } + } + $199 = HEAP32[$k>>2]|0; + $200 = (($199) + 1)|0; + HEAP32[$k>>2] = $200; + } + $201 = HEAP32[$k>>2]|0; + $202 = HEAP32[$pEList>>2]|0; + $203 = HEAP32[$202>>2]|0; + $204 = ($201|0)<($203|0); + if ($204) { + $205 = HEAP32[$pEList>>2]|0; + $206 = (($205) + 4|0); + $207 = HEAP32[$206>>2]|0; + HEAP32[$a>>2] = $207; + HEAP32[$pNew>>2] = 0; + $208 = HEAP32[$pParse>>2]|0; + $209 = HEAP32[$208>>2]|0; + $210 = (($209) + 24|0); + $211 = HEAP32[$210>>2]|0; + HEAP32[$flags>>2] = $211; + $212 = HEAP32[$flags>>2]|0; + $213 = $212 & 32; + $214 = ($213|0)!=(0); + if ($214) { + $215 = HEAP32[$flags>>2]|0; + $216 = $215 & 64; + $217 = ($216|0)==(0); + $219 = $217; + } else { + $219 = 0; + } + $218 = $219&1; + HEAP32[$longNames>>2] = $218; + HEAP32[$k>>2] = 0; + while(1) { + $220 = HEAP32[$k>>2]|0; + $221 = HEAP32[$pEList>>2]|0; + $222 = HEAP32[$221>>2]|0; + $223 = ($220|0)<($222|0); + if (!($223)) { + break; + } + $224 = HEAP32[$k>>2]|0; + $225 = HEAP32[$a>>2]|0; + $226 = (($225) + (($224*20)|0)|0); + $227 = HEAP32[$226>>2]|0; + HEAP32[$pE>>2] = $227; + $228 = HEAP32[$pE>>2]|0; + $229 = (($228) + 16|0); + $230 = HEAP32[$229>>2]|0; + HEAP32[$pRight>>2] = $230; + $231 = HEAP32[$pE>>2]|0; + $232 = HEAP8[$231>>0]|0; + $233 = $232&255; + $234 = ($233|0)!=(116); + do { + if ($234) { + $235 = HEAP32[$pE>>2]|0; + $236 = HEAP8[$235>>0]|0; + $237 = $236&255; + $238 = ($237|0)!=(122); + if (!($238)) { + $239 = HEAP32[$pRight>>2]|0; + $240 = HEAP8[$239>>0]|0; + $241 = $240&255; + $242 = ($241|0)!=(116); + if (!($242)) { + label = 53; + break; + } + } + $243 = HEAP32[$pParse>>2]|0; + $244 = HEAP32[$pNew>>2]|0; + $245 = HEAP32[$k>>2]|0; + $246 = HEAP32[$a>>2]|0; + $247 = (($246) + (($245*20)|0)|0); + $248 = HEAP32[$247>>2]|0; + $249 = (_sqlite3ExprListAppend($243,$244,$248)|0); + HEAP32[$pNew>>2] = $249; + $250 = HEAP32[$pNew>>2]|0; + $251 = ($250|0)!=(0|0); + if ($251) { + $252 = HEAP32[$k>>2]|0; + $253 = HEAP32[$a>>2]|0; + $254 = (($253) + (($252*20)|0)|0); + $255 = (($254) + 4|0); + $256 = HEAP32[$255>>2]|0; + $257 = HEAP32[$pNew>>2]|0; + $258 = HEAP32[$257>>2]|0; + $259 = (($258) - 1)|0; + $260 = HEAP32[$pNew>>2]|0; + $261 = (($260) + 4|0); + $262 = HEAP32[$261>>2]|0; + $263 = (($262) + (($259*20)|0)|0); + $264 = (($263) + 4|0); + HEAP32[$264>>2] = $256; + $265 = HEAP32[$k>>2]|0; + $266 = HEAP32[$a>>2]|0; + $267 = (($266) + (($265*20)|0)|0); + $268 = (($267) + 8|0); + $269 = HEAP32[$268>>2]|0; + $270 = HEAP32[$pNew>>2]|0; + $271 = HEAP32[$270>>2]|0; + $272 = (($271) - 1)|0; + $273 = HEAP32[$pNew>>2]|0; + $274 = (($273) + 4|0); + $275 = HEAP32[$274>>2]|0; + $276 = (($275) + (($272*20)|0)|0); + $277 = (($276) + 8|0); + HEAP32[$277>>2] = $269; + $278 = HEAP32[$k>>2]|0; + $279 = HEAP32[$a>>2]|0; + $280 = (($279) + (($278*20)|0)|0); + $281 = (($280) + 4|0); + HEAP32[$281>>2] = 0; + $282 = HEAP32[$k>>2]|0; + $283 = HEAP32[$a>>2]|0; + $284 = (($283) + (($282*20)|0)|0); + $285 = (($284) + 8|0); + HEAP32[$285>>2] = 0; + } + $286 = HEAP32[$k>>2]|0; + $287 = HEAP32[$a>>2]|0; + $288 = (($287) + (($286*20)|0)|0); + HEAP32[$288>>2] = 0; + } else { + label = 53; + } + } while(0); + do { + if ((label|0) == 53) { + label = 0; + HEAP32[$tableSeen>>2] = 0; + HEAP32[$zTName>>2] = 0; + $289 = HEAP32[$pE>>2]|0; + $290 = HEAP8[$289>>0]|0; + $291 = $290&255; + $292 = ($291|0)==(122); + if ($292) { + $293 = HEAP32[$pE>>2]|0; + $294 = (($293) + 12|0); + $295 = HEAP32[$294>>2]|0; + $296 = (($295) + 8|0); + $297 = HEAP32[$296>>2]|0; + HEAP32[$zTName>>2] = $297; + } + HEAP32[$i>>2] = 0; + $298 = HEAP32[$pTabList>>2]|0; + $299 = (($298) + 8|0); + HEAP32[$pFrom>>2] = $299; + while(1) { + $300 = HEAP32[$i>>2]|0; + $301 = HEAP32[$pTabList>>2]|0; + $302 = HEAP32[$301>>2]|0; + $303 = ($300|0)<($302|0); + if (!($303)) { + break; + } + $304 = HEAP32[$pFrom>>2]|0; + $305 = (($304) + 16|0); + $306 = HEAP32[$305>>2]|0; + HEAP32[$pTab1>>2] = $306; + $307 = HEAP32[$pFrom>>2]|0; + $308 = (($307) + 20|0); + $309 = HEAP32[$308>>2]|0; + HEAP32[$pSub>>2] = $309; + $310 = HEAP32[$pFrom>>2]|0; + $311 = (($310) + 12|0); + $312 = HEAP32[$311>>2]|0; + HEAP32[$zTabName>>2] = $312; + HEAP32[$zSchemaName>>2] = 0; + $313 = HEAP32[$zTabName>>2]|0; + $314 = ($313|0)==(0|0); + if ($314) { + $315 = HEAP32[$pTab1>>2]|0; + $316 = HEAP32[$315>>2]|0; + HEAP32[$zTabName>>2] = $316; + } + $317 = HEAP32[$db>>2]|0; + $318 = (($317) + 64|0); + $319 = HEAP8[$318>>0]|0; + $320 = ($319<<24>>24)!=(0); + if ($320) { + break; + } + $321 = HEAP32[$pSub>>2]|0; + $322 = ($321|0)==(0|0); + if ($322) { + label = 62; + } else { + $323 = HEAP32[$pSub>>2]|0; + $324 = (($323) + 6|0); + $325 = HEAP16[$324>>1]|0; + $326 = $325&65535; + $327 = $326 & 512; + $328 = ($327|0)==(0); + if ($328) { + label = 62; + } else { + label = 67; + } + } + do { + if ((label|0) == 62) { + label = 0; + HEAP32[$pSub>>2] = 0; + $329 = HEAP32[$zTName>>2]|0; + $330 = ($329|0)!=(0|0); + if ($330) { + $331 = HEAP32[$zTName>>2]|0; + $332 = HEAP32[$zTabName>>2]|0; + $333 = (_sqlite3_stricmp($331,$332)|0); + $334 = ($333|0)!=(0); + if ($334) { + break; + } + } + $335 = HEAP32[$db>>2]|0; + $336 = HEAP32[$pTab1>>2]|0; + $337 = (($336) + 68|0); + $338 = HEAP32[$337>>2]|0; + $339 = (_sqlite3SchemaToIndex($335,$338)|0); + HEAP32[$iDb>>2] = $339; + $340 = HEAP32[$iDb>>2]|0; + $341 = ($340|0)>=(0); + if ($341) { + $342 = HEAP32[$iDb>>2]|0; + $343 = HEAP32[$db>>2]|0; + $344 = (($343) + 16|0); + $345 = HEAP32[$344>>2]|0; + $346 = (($345) + ($342<<4)|0); + $347 = HEAP32[$346>>2]|0; + $348 = $347; + } else { + $348 = 9880; + } + HEAP32[$zSchemaName>>2] = $348; + label = 67; + } + } while(0); + L84: do { + if ((label|0) == 67) { + label = 0; + HEAP32[$j>>2] = 0; + while(1) { + $349 = HEAP32[$j>>2]|0; + $350 = HEAP32[$pTab1>>2]|0; + $351 = (($350) + 38|0); + $352 = HEAP16[$351>>1]|0; + $353 = $352 << 16 >> 16; + $354 = ($349|0)<($353|0); + if (!($354)) { + break L84; + } + $355 = HEAP32[$j>>2]|0; + $356 = HEAP32[$pTab1>>2]|0; + $357 = (($356) + 4|0); + $358 = HEAP32[$357>>2]|0; + $359 = (($358) + (($355*24)|0)|0); + $360 = HEAP32[$359>>2]|0; + HEAP32[$zName>>2] = $360; + $361 = HEAP32[$zTName>>2]|0; + $362 = ($361|0)!=(0|0); + do { + if ($362) { + $363 = HEAP32[$pSub>>2]|0; + $364 = ($363|0)!=(0|0); + if (!($364)) { + label = 72; + break; + } + $365 = HEAP32[$j>>2]|0; + $366 = HEAP32[$pSub>>2]|0; + $367 = HEAP32[$366>>2]|0; + $368 = (($367) + 4|0); + $369 = HEAP32[$368>>2]|0; + $370 = (($369) + (($365*20)|0)|0); + $371 = (($370) + 8|0); + $372 = HEAP32[$371>>2]|0; + $373 = HEAP32[$zTName>>2]|0; + $374 = (_sqlite3MatchSpanName($372,0,$373,0)|0); + $375 = ($374|0)==(0); + if (!($375)) { + label = 72; + } + } else { + label = 72; + } + } while(0); + L92: do { + if ((label|0) == 72) { + label = 0; + $376 = HEAP32[$j>>2]|0; + $377 = HEAP32[$pTab1>>2]|0; + $378 = (($377) + 4|0); + $379 = HEAP32[$378>>2]|0; + $380 = (($379) + (($376*24)|0)|0); + $381 = (($380) + 23|0); + $382 = HEAP8[$381>>0]|0; + $383 = $382&255; + $384 = $383 & 2; + $385 = ($384|0)!=(0); + if ($385) { + break; + } + HEAP32[$tableSeen>>2] = 1; + $386 = HEAP32[$i>>2]|0; + $387 = ($386|0)>(0); + do { + if ($387) { + $388 = HEAP32[$zTName>>2]|0; + $389 = ($388|0)==(0|0); + if (!($389)) { + break; + } + $390 = HEAP32[$pFrom>>2]|0; + $391 = (($390) + 36|0); + $392 = HEAP8[$391>>0]|0; + $393 = $392&255; + $394 = $393 & 4; + $395 = ($394|0)!=(0); + if ($395) { + $396 = HEAP32[$pTabList>>2]|0; + $397 = HEAP32[$i>>2]|0; + $398 = HEAP32[$zName>>2]|0; + $399 = (_tableAndColumnIndex($396,$397,$398,0,0)|0); + $400 = ($399|0)!=(0); + if ($400) { + break L92; + } + } + $401 = HEAP32[$pFrom>>2]|0; + $402 = (($401) + 48|0); + $403 = HEAP32[$402>>2]|0; + $404 = HEAP32[$zName>>2]|0; + $405 = (_sqlite3IdListIndex($403,$404)|0); + $406 = ($405|0)>=(0); + if ($406) { + break L92; + } + } + } while(0); + $407 = HEAP32[$db>>2]|0; + $408 = HEAP32[$zName>>2]|0; + $409 = (_sqlite3Expr($407,27,$408)|0); + HEAP32[$pRight>>2] = $409; + $410 = HEAP32[$zName>>2]|0; + HEAP32[$zColname>>2] = $410; + HEAP32[$zToFree>>2] = 0; + $411 = HEAP32[$longNames>>2]|0; + $412 = ($411|0)!=(0); + do { + if ($412) { + label = 80; + } else { + $413 = HEAP32[$pTabList>>2]|0; + $414 = HEAP32[$413>>2]|0; + $415 = ($414|0)>(1); + if ($415) { + label = 80; + break; + } + $439 = HEAP32[$pRight>>2]|0; + HEAP32[$pExpr>>2] = $439; + } + } while(0); + do { + if ((label|0) == 80) { + label = 0; + $416 = HEAP32[$db>>2]|0; + $417 = HEAP32[$zTabName>>2]|0; + $418 = (_sqlite3Expr($416,27,$417)|0); + HEAP32[$pLeft>>2] = $418; + $419 = HEAP32[$pParse>>2]|0; + $420 = HEAP32[$pLeft>>2]|0; + $421 = HEAP32[$pRight>>2]|0; + $422 = (_sqlite3PExpr($419,122,$420,$421,0)|0); + HEAP32[$pExpr>>2] = $422; + $423 = HEAP32[$zSchemaName>>2]|0; + $424 = ($423|0)!=(0|0); + if ($424) { + $425 = HEAP32[$db>>2]|0; + $426 = HEAP32[$zSchemaName>>2]|0; + $427 = (_sqlite3Expr($425,27,$426)|0); + HEAP32[$pLeft>>2] = $427; + $428 = HEAP32[$pParse>>2]|0; + $429 = HEAP32[$pLeft>>2]|0; + $430 = HEAP32[$pExpr>>2]|0; + $431 = (_sqlite3PExpr($428,122,$429,$430,0)|0); + HEAP32[$pExpr>>2] = $431; + } + $432 = HEAP32[$longNames>>2]|0; + $433 = ($432|0)!=(0); + if (!($433)) { + break; + } + $434 = HEAP32[$db>>2]|0; + $435 = HEAP32[$zTabName>>2]|0; + $436 = HEAP32[$zName>>2]|0; + HEAP32[$vararg_buffer18>>2] = $435; + $vararg_ptr7 = (($vararg_buffer18) + 4|0); + HEAP32[$vararg_ptr7>>2] = $436; + $437 = (_sqlite3MPrintf($434,23968,$vararg_buffer18)|0); + HEAP32[$zColname>>2] = $437; + $438 = HEAP32[$zColname>>2]|0; + HEAP32[$zToFree>>2] = $438; + } + } while(0); + $440 = HEAP32[$pParse>>2]|0; + $441 = HEAP32[$pNew>>2]|0; + $442 = HEAP32[$pExpr>>2]|0; + $443 = (_sqlite3ExprListAppend($440,$441,$442)|0); + HEAP32[$pNew>>2] = $443; + $444 = HEAP32[$zColname>>2]|0; + HEAP32[$sColname>>2] = $444; + $445 = HEAP32[$zColname>>2]|0; + $446 = (_sqlite3Strlen30($445)|0); + $447 = (($sColname) + 4|0); + HEAP32[$447>>2] = $446; + $448 = HEAP32[$pParse>>2]|0; + $449 = HEAP32[$pNew>>2]|0; + _sqlite3ExprListSetName($448,$449,$sColname,0); + $450 = HEAP32[$pNew>>2]|0; + $451 = ($450|0)!=(0|0); + do { + if ($451) { + $452 = HEAP32[$2>>2]|0; + $453 = (($452) + 6|0); + $454 = HEAP16[$453>>1]|0; + $455 = $454&65535; + $456 = $455 & 512; + $457 = ($456|0)!=(0); + if (!($457)) { + break; + } + $458 = HEAP32[$pNew>>2]|0; + $459 = HEAP32[$458>>2]|0; + $460 = (($459) - 1)|0; + $461 = HEAP32[$pNew>>2]|0; + $462 = (($461) + 4|0); + $463 = HEAP32[$462>>2]|0; + $464 = (($463) + (($460*20)|0)|0); + HEAP32[$pX>>2] = $464; + $465 = HEAP32[$pSub>>2]|0; + $466 = ($465|0)!=(0|0); + $467 = HEAP32[$db>>2]|0; + if ($466) { + $468 = HEAP32[$j>>2]|0; + $469 = HEAP32[$pSub>>2]|0; + $470 = HEAP32[$469>>2]|0; + $471 = (($470) + 4|0); + $472 = HEAP32[$471>>2]|0; + $473 = (($472) + (($468*20)|0)|0); + $474 = (($473) + 8|0); + $475 = HEAP32[$474>>2]|0; + $476 = (_sqlite3DbStrDup($467,$475)|0); + $477 = HEAP32[$pX>>2]|0; + $478 = (($477) + 8|0); + HEAP32[$478>>2] = $476; + } else { + $479 = HEAP32[$zSchemaName>>2]|0; + $480 = HEAP32[$zTabName>>2]|0; + $481 = HEAP32[$zColname>>2]|0; + HEAP32[$vararg_buffer18>>2] = $479; + $vararg_ptr11 = (($vararg_buffer18) + 4|0); + HEAP32[$vararg_ptr11>>2] = $480; + $vararg_ptr12 = (($vararg_buffer18) + 8|0); + HEAP32[$vararg_ptr12>>2] = $481; + $482 = (_sqlite3MPrintf($467,23976,$vararg_buffer18)|0); + $483 = HEAP32[$pX>>2]|0; + $484 = (($483) + 8|0); + HEAP32[$484>>2] = $482; + } + $485 = HEAP32[$pX>>2]|0; + $486 = (($485) + 13|0); + $487 = HEAP8[$486>>0]|0; + $488 = $487 & -3; + $489 = $488 | 2; + HEAP8[$486>>0] = $489; + } + } while(0); + $490 = HEAP32[$db>>2]|0; + $491 = HEAP32[$zToFree>>2]|0; + _sqlite3DbFree($490,$491); + } + } while(0); + $492 = HEAP32[$j>>2]|0; + $493 = (($492) + 1)|0; + HEAP32[$j>>2] = $493; + } + } + } while(0); + $494 = HEAP32[$i>>2]|0; + $495 = (($494) + 1)|0; + HEAP32[$i>>2] = $495; + $496 = HEAP32[$pFrom>>2]|0; + $497 = (($496) + 72|0); + HEAP32[$pFrom>>2] = $497; + } + $498 = HEAP32[$tableSeen>>2]|0; + $499 = ($498|0)!=(0); + if (!($499)) { + $500 = HEAP32[$zTName>>2]|0; + $501 = ($500|0)!=(0|0); + $502 = HEAP32[$pParse>>2]|0; + if ($501) { + $503 = HEAP32[$zTName>>2]|0; + HEAP32[$vararg_buffer18>>2] = $503; + _sqlite3ErrorMsg($502,23992,$vararg_buffer18); + break; + } else { + _sqlite3ErrorMsg($502,24016,$vararg_buffer18); + break; + } + } + } + } while(0); + $504 = HEAP32[$k>>2]|0; + $505 = (($504) + 1)|0; + HEAP32[$k>>2] = $505; + } + $506 = HEAP32[$db>>2]|0; + $507 = HEAP32[$pEList>>2]|0; + _sqlite3ExprListDelete($506,$507); + $508 = HEAP32[$pNew>>2]|0; + $509 = HEAP32[$2>>2]|0; + HEAP32[$509>>2] = $508; + } + $510 = HEAP32[$2>>2]|0; + $511 = HEAP32[$510>>2]|0; + $512 = ($511|0)!=(0|0); + if ($512) { + $513 = HEAP32[$2>>2]|0; + $514 = HEAP32[$513>>2]|0; + $515 = HEAP32[$514>>2]|0; + $516 = HEAP32[$db>>2]|0; + $517 = (($516) + 88|0); + $518 = (($517) + 8|0); + $519 = HEAP32[$518>>2]|0; + $520 = ($515|0)>($519|0); + if ($520) { + $521 = HEAP32[$pParse>>2]|0; + _sqlite3ErrorMsg($521,24040,$vararg_buffer18); + } + } + HEAP32[$0>>2] = 0; + $522 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($522|0); + } + } + HEAP32[$0>>2] = 2; + $522 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($522|0); + } + } + } + HEAP32[$0>>2] = 1; + $522 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($522|0); +} +function _selectPopWith($pWalker,$p) { + $pWalker = $pWalker|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pParse = 0, $pWith = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $pParse = sp + 4|0; + $pWith = sp + 8|0; + HEAP32[$0>>2] = $pWalker; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 12|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pParse>>2] = $4; + $5 = HEAP32[$1>>2]|0; + $6 = (_findRightmost($5)|0); + $7 = (($6) + 68|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pWith>>2] = $8; + $9 = HEAP32[$pWith>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + STACKTOP = sp;return; + } + $11 = HEAP32[$pWith>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$pParse>>2]|0; + $15 = (($14) + 532|0); + HEAP32[$15>>2] = $13; + STACKTOP = sp;return; +} +function _findRightmost($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + while(1) { + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 56|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + $5 = HEAP32[$0>>2]|0; + if (!($4)) { + break; + } + $6 = (($5) + 56|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$0>>2] = $7; + } + STACKTOP = sp;return ($5|0); +} +function _withExpand($pWalker,$pFrom) { + $pWalker = $pWalker|0; + $pFrom = $pFrom|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bMayRecursive = 0, $db = 0, $i = 0, $pCte = 0, $pEList = 0, $pItem = 0, $pLeft = 0, $pParse = 0, $pSavedWith = 0, $pSel = 0, $pSrc = 0, $pTab = 0, $pWith = 0, $vararg_buffer4 = 0; + var $vararg_ptr7 = 0, $vararg_ptr8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer4 = sp; + $0 = sp + 68|0; + $1 = sp + 64|0; + $2 = sp + 60|0; + $pParse = sp + 56|0; + $db = sp + 52|0; + $pCte = sp + 48|0; + $pWith = sp + 44|0; + $pTab = sp + 72|0; + $pEList = sp + 32|0; + $pSel = sp + 28|0; + $pLeft = sp + 24|0; + $bMayRecursive = sp + 20|0; + $pSavedWith = sp + 16|0; + $i = sp + 12|0; + $pSrc = sp + 36|0; + $pItem = sp + 40|0; + HEAP32[$1>>2] = $pWalker; + HEAP32[$2>>2] = $pFrom; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pParse>>2] = $5; + $6 = HEAP32[$pParse>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$db>>2] = $7; + $8 = HEAP32[$pParse>>2]|0; + $9 = (($8) + 532|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = (_searchWith($10,$11,$pWith)|0); + HEAP32[$pCte>>2] = $12; + $13 = HEAP32[$pCte>>2]|0; + $14 = ($13|0)!=(0|0); + if ($14) { + $15 = HEAP32[$pCte>>2]|0; + $16 = (($15) + 12|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)!=(0|0); + if ($18) { + $19 = HEAP32[$pParse>>2]|0; + $20 = HEAP32[$pCte>>2]|0; + $21 = (($20) + 12|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$pCte>>2]|0; + $24 = HEAP32[$23>>2]|0; + HEAP32[$vararg_buffer4>>2] = $24; + _sqlite3ErrorMsg($19,$22,$vararg_buffer4); + HEAP32[$0>>2] = 1; + $205 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($205|0); + } + $25 = HEAP32[$db>>2]|0; + $26 = (_sqlite3DbMallocZero($25,76)|0); + HEAP32[$pTab>>2] = $26; + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 16|0); + HEAP32[$28>>2] = $26; + $29 = HEAP32[$pTab>>2]|0; + $30 = ($29|0)==(0|0); + if ($30) { + HEAP32[$0>>2] = 2; + $205 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($205|0); + } + $31 = HEAP32[$pTab>>2]|0; + $32 = (($31) + 40|0); + HEAP16[$32>>1] = 1; + $33 = HEAP32[$db>>2]|0; + $34 = HEAP32[$pCte>>2]|0; + $35 = HEAP32[$34>>2]|0; + $36 = (_sqlite3DbStrDup($33,$35)|0); + $37 = HEAP32[$pTab>>2]|0; + HEAP32[$37>>2] = $36; + $38 = HEAP32[$pTab>>2]|0; + $39 = (($38) + 36|0); + HEAP16[$39>>1] = -1; + $40 = HEAP32[$pTab>>2]|0; + $41 = (($40) + 28|0); + HEAP16[$41>>1] = 200; + $42 = HEAP32[$pTab>>2]|0; + $43 = (($42) + 44|0); + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = $45 | 2; + $47 = $46&255; + HEAP8[$43>>0] = $47; + $48 = HEAP32[$db>>2]|0; + $49 = HEAP32[$pCte>>2]|0; + $50 = (($49) + 8|0); + $51 = HEAP32[$50>>2]|0; + $52 = (_sqlite3SelectDup($48,$51,0)|0); + $53 = HEAP32[$2>>2]|0; + $54 = (($53) + 20|0); + HEAP32[$54>>2] = $52; + $55 = HEAP32[$db>>2]|0; + $56 = (($55) + 64|0); + $57 = HEAP8[$56>>0]|0; + $58 = ($57<<24>>24)!=(0); + if ($58) { + HEAP32[$0>>2] = 7; + $205 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($205|0); + } + $59 = HEAP32[$2>>2]|0; + $60 = (($59) + 20|0); + $61 = HEAP32[$60>>2]|0; + HEAP32[$pSel>>2] = $61; + $62 = HEAP32[$pSel>>2]|0; + $63 = (($62) + 4|0); + $64 = HEAP8[$63>>0]|0; + $65 = $64&255; + $66 = ($65|0)==(116); + if ($66) { + $73 = 1; + } else { + $67 = HEAP32[$pSel>>2]|0; + $68 = (($67) + 4|0); + $69 = HEAP8[$68>>0]|0; + $70 = $69&255; + $71 = ($70|0)==(115); + $73 = $71; + } + $72 = $73&1; + HEAP32[$bMayRecursive>>2] = $72; + $74 = HEAP32[$bMayRecursive>>2]|0; + $75 = ($74|0)!=(0); + L18: do { + if ($75) { + $76 = HEAP32[$2>>2]|0; + $77 = (($76) + 20|0); + $78 = HEAP32[$77>>2]|0; + $79 = (($78) + 32|0); + $80 = HEAP32[$79>>2]|0; + HEAP32[$pSrc>>2] = $80; + HEAP32[$i>>2] = 0; + while(1) { + $81 = HEAP32[$i>>2]|0; + $82 = HEAP32[$pSrc>>2]|0; + $83 = HEAP32[$82>>2]|0; + $84 = ($81|0)<($83|0); + if (!($84)) { + break L18; + } + $85 = HEAP32[$i>>2]|0; + $86 = HEAP32[$pSrc>>2]|0; + $87 = (($86) + 8|0); + $88 = (($87) + (($85*72)|0)|0); + HEAP32[$pItem>>2] = $88; + $89 = HEAP32[$pItem>>2]|0; + $90 = (($89) + 4|0); + $91 = HEAP32[$90>>2]|0; + $92 = ($91|0)==(0|0); + if ($92) { + $93 = HEAP32[$pItem>>2]|0; + $94 = (($93) + 8|0); + $95 = HEAP32[$94>>2]|0; + $96 = ($95|0)!=(0|0); + if ($96) { + $97 = HEAP32[$pItem>>2]|0; + $98 = (($97) + 8|0); + $99 = HEAP32[$98>>2]|0; + $100 = HEAP32[$pCte>>2]|0; + $101 = HEAP32[$100>>2]|0; + $102 = (_sqlite3_stricmp($99,$101)|0); + $103 = (0)==($102|0); + if ($103) { + $104 = HEAP32[$pTab>>2]|0; + $105 = HEAP32[$pItem>>2]|0; + $106 = (($105) + 16|0); + HEAP32[$106>>2] = $104; + $107 = HEAP32[$pItem>>2]|0; + $108 = (($107) + 37|0); + $109 = HEAP8[$108>>0]|0; + $110 = $109 & -9; + $111 = $110 | 8; + HEAP8[$108>>0] = $111; + $112 = HEAP32[$pTab>>2]|0; + $113 = (($112) + 40|0); + $114 = HEAP16[$113>>1]|0; + $115 = (($114) + 1)<<16>>16; + HEAP16[$113>>1] = $115; + $116 = HEAP32[$pSel>>2]|0; + $117 = (($116) + 6|0); + $118 = HEAP16[$117>>1]|0; + $119 = $118&65535; + $120 = $119 | 2048; + $121 = $120&65535; + HEAP16[$117>>1] = $121; + } + } + } + $122 = HEAP32[$i>>2]|0; + $123 = (($122) + 1)|0; + HEAP32[$i>>2] = $123; + } + } + } while(0); + $124 = HEAP32[$pTab>>2]|0; + $125 = (($124) + 40|0); + $126 = HEAP16[$125>>1]|0; + $127 = $126&65535; + $128 = ($127|0)>(2); + if ($128) { + $129 = HEAP32[$pParse>>2]|0; + $130 = HEAP32[$pCte>>2]|0; + $131 = HEAP32[$130>>2]|0; + HEAP32[$vararg_buffer4>>2] = $131; + _sqlite3ErrorMsg($129,24272,$vararg_buffer4); + HEAP32[$0>>2] = 1; + $205 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($205|0); + } + $132 = HEAP32[$pCte>>2]|0; + $133 = (($132) + 12|0); + HEAP32[$133>>2] = 24320; + $134 = HEAP32[$pParse>>2]|0; + $135 = (($134) + 532|0); + $136 = HEAP32[$135>>2]|0; + HEAP32[$pSavedWith>>2] = $136; + $137 = HEAP32[$pWith>>2]|0; + $138 = HEAP32[$pParse>>2]|0; + $139 = (($138) + 532|0); + HEAP32[$139>>2] = $137; + $140 = HEAP32[$1>>2]|0; + $141 = HEAP32[$bMayRecursive>>2]|0; + $142 = ($141|0)!=(0); + $143 = HEAP32[$pSel>>2]|0; + if ($142) { + $144 = (($143) + 52|0); + $145 = HEAP32[$144>>2]|0; + $146 = $145; + } else { + $146 = $143; + } + (_sqlite3WalkSelect($140,$146)|0); + $147 = HEAP32[$pSel>>2]|0; + HEAP32[$pLeft>>2] = $147; + while(1) { + $148 = HEAP32[$pLeft>>2]|0; + $149 = (($148) + 52|0); + $150 = HEAP32[$149>>2]|0; + $151 = ($150|0)!=(0|0); + $152 = HEAP32[$pLeft>>2]|0; + if (!($151)) { + break; + } + $153 = (($152) + 52|0); + $154 = HEAP32[$153>>2]|0; + HEAP32[$pLeft>>2] = $154; + } + $155 = HEAP32[$152>>2]|0; + HEAP32[$pEList>>2] = $155; + $156 = HEAP32[$pCte>>2]|0; + $157 = (($156) + 4|0); + $158 = HEAP32[$157>>2]|0; + $159 = ($158|0)!=(0|0); + do { + if ($159) { + $160 = HEAP32[$pEList>>2]|0; + $161 = HEAP32[$160>>2]|0; + $162 = HEAP32[$pCte>>2]|0; + $163 = (($162) + 4|0); + $164 = HEAP32[$163>>2]|0; + $165 = HEAP32[$164>>2]|0; + $166 = ($161|0)!=($165|0); + if (!($166)) { + $179 = HEAP32[$pCte>>2]|0; + $180 = (($179) + 4|0); + $181 = HEAP32[$180>>2]|0; + HEAP32[$pEList>>2] = $181; + break; + } + $167 = HEAP32[$pParse>>2]|0; + $168 = HEAP32[$pCte>>2]|0; + $169 = HEAP32[$168>>2]|0; + $170 = HEAP32[$pEList>>2]|0; + $171 = HEAP32[$170>>2]|0; + $172 = HEAP32[$pCte>>2]|0; + $173 = (($172) + 4|0); + $174 = HEAP32[$173>>2]|0; + $175 = HEAP32[$174>>2]|0; + HEAP32[$vararg_buffer4>>2] = $169; + $vararg_ptr7 = (($vararg_buffer4) + 4|0); + HEAP32[$vararg_ptr7>>2] = $171; + $vararg_ptr8 = (($vararg_buffer4) + 8|0); + HEAP32[$vararg_ptr8>>2] = $175; + _sqlite3ErrorMsg($167,24344,$vararg_buffer4); + $176 = HEAP32[$pSavedWith>>2]|0; + $177 = HEAP32[$pParse>>2]|0; + $178 = (($177) + 532|0); + HEAP32[$178>>2] = $176; + HEAP32[$0>>2] = 1; + $205 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($205|0); + } + } while(0); + $182 = HEAP32[$pParse>>2]|0; + $183 = HEAP32[$pEList>>2]|0; + $184 = HEAP32[$pTab>>2]|0; + $185 = (($184) + 38|0); + $186 = HEAP32[$pTab>>2]|0; + $187 = (($186) + 4|0); + (_selectColumnsFromExprList($182,$183,$185,$187)|0); + $188 = HEAP32[$bMayRecursive>>2]|0; + $189 = ($188|0)!=(0); + if ($189) { + $190 = HEAP32[$pSel>>2]|0; + $191 = (($190) + 6|0); + $192 = HEAP16[$191>>1]|0; + $193 = $192&65535; + $194 = $193 & 2048; + $195 = ($194|0)!=(0); + $196 = HEAP32[$pCte>>2]|0; + $197 = (($196) + 12|0); + if ($195) { + HEAP32[$197>>2] = 24384; + } else { + HEAP32[$197>>2] = 24424; + } + $198 = HEAP32[$1>>2]|0; + $199 = HEAP32[$pSel>>2]|0; + (_sqlite3WalkSelect($198,$199)|0); + } + $200 = HEAP32[$pCte>>2]|0; + $201 = (($200) + 12|0); + HEAP32[$201>>2] = 0; + $202 = HEAP32[$pSavedWith>>2]|0; + $203 = HEAP32[$pParse>>2]|0; + $204 = (($203) + 532|0); + HEAP32[$204>>2] = $202; + } + HEAP32[$0>>2] = 0; + $205 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($205|0); +} +function _sqlite3IndexedByLookup($pParse,$pFrom) { + $pParse = $pParse|0; + $pFrom = $pFrom|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $pIdx = 0, $pTab = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $zIndex = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 28|0; + $1 = sp + 8|0; + $2 = sp + 12|0; + $pTab = sp + 16|0; + $zIndex = sp + 20|0; + $pIdx = sp + 24|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pFrom; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 16|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + do { + if ($6) { + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 64|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 16|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pTab>>2] = $13; + $14 = HEAP32[$2>>2]|0; + $15 = (($14) + 64|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$zIndex>>2] = $16; + $17 = HEAP32[$pTab>>2]|0; + $18 = (($17) + 8|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$pIdx>>2] = $19; + while(1) { + $20 = HEAP32[$pIdx>>2]|0; + $21 = ($20|0)!=(0|0); + if (!($21)) { + break; + } + $22 = HEAP32[$pIdx>>2]|0; + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$zIndex>>2]|0; + $25 = (_sqlite3_stricmp($23,$24)|0); + $26 = ($25|0)!=(0); + if (!($26)) { + break; + } + $27 = HEAP32[$pIdx>>2]|0; + $28 = (($27) + 20|0); + $29 = HEAP32[$28>>2]|0; + HEAP32[$pIdx>>2] = $29; + } + $30 = HEAP32[$pIdx>>2]|0; + $31 = ($30|0)!=(0|0); + if ($31) { + $36 = HEAP32[$pIdx>>2]|0; + $37 = HEAP32[$2>>2]|0; + $38 = (($37) + 68|0); + HEAP32[$38>>2] = $36; + break; + } + $32 = HEAP32[$1>>2]|0; + $33 = HEAP32[$zIndex>>2]|0; + HEAP32[$vararg_buffer>>2] = $33; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = 0; + _sqlite3ErrorMsg($32,24248,$vararg_buffer); + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 17|0); + HEAP8[$35>>0] = 1; + HEAP32[$0>>2] = 1; + $39 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($39|0); + } + } + } while(0); + HEAP32[$0>>2] = 0; + $39 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($39|0); +} +function _sqliteProcessJoin($pParse,$p) { + $pParse = $pParse|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $i = 0, $iLeft = 0, $iLeft2 = 0, $iLeftCol = 0, $iLeftCol3 = 0, $iRightCol = 0, $isOuter = 0, $j = 0, $pLeft = 0, $pLeftTab = 0, $pList = 0, $pRight = 0, $pRightTab = 0, $pSrc = 0, $vararg_buffer3 = 0, $zName = 0, $zName1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer3 = sp; + $0 = sp + 72|0; + $1 = sp + 68|0; + $2 = sp + 64|0; + $pSrc = sp + 60|0; + $i = sp + 56|0; + $j = sp + 52|0; + $pLeft = sp + 48|0; + $pRight = sp + 44|0; + $pLeftTab = sp + 40|0; + $pRightTab = sp + 76|0; + $isOuter = sp + 16|0; + $zName = sp + 12|0; + $iLeft = sp + 4|0; + $iLeftCol = sp + 8|0; + $pList = sp + 32|0; + $zName1 = sp + 20|0; + $iLeft2 = sp + 24|0; + $iLeftCol3 = sp + 28|0; + $iRightCol = sp + 36|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $p; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 32|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pSrc>>2] = $5; + $6 = HEAP32[$pSrc>>2]|0; + $7 = (($6) + 8|0); + HEAP32[$pLeft>>2] = $7; + $8 = HEAP32[$pLeft>>2]|0; + $9 = (($8) + 72|0); + HEAP32[$pRight>>2] = $9; + HEAP32[$i>>2] = 0; + L1: while(1) { + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$pSrc>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = (($12) - 1)|0; + $14 = ($10|0)<($13|0); + if (!($14)) { + label = 29; + break; + } + $15 = HEAP32[$pLeft>>2]|0; + $16 = (($15) + 16|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$pLeftTab>>2] = $17; + $18 = HEAP32[$pRight>>2]|0; + $19 = (($18) + 16|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$pRightTab>>2] = $20; + $21 = HEAP32[$pLeftTab>>2]|0; + $22 = ($21|0)==(0|0); + L4: do { + if (!($22)) { + $23 = HEAP32[$pRightTab>>2]|0; + $24 = ($23|0)==(0|0); + if (!($24)) { + $25 = HEAP32[$pRight>>2]|0; + $26 = (($25) + 36|0); + $27 = HEAP8[$26>>0]|0; + $28 = $27&255; + $29 = $28 & 32; + $30 = ($29|0)!=(0); + $31 = $30&1; + HEAP32[$isOuter>>2] = $31; + $32 = HEAP32[$pRight>>2]|0; + $33 = (($32) + 36|0); + $34 = HEAP8[$33>>0]|0; + $35 = $34&255; + $36 = $35 & 4; + $37 = ($36|0)!=(0); + L7: do { + if ($37) { + $38 = HEAP32[$pRight>>2]|0; + $39 = (($38) + 44|0); + $40 = HEAP32[$39>>2]|0; + $41 = ($40|0)!=(0|0); + if ($41) { + label = 8; + break L1; + } + $42 = HEAP32[$pRight>>2]|0; + $43 = (($42) + 48|0); + $44 = HEAP32[$43>>2]|0; + $45 = ($44|0)!=(0|0); + if ($45) { + label = 8; + break L1; + } + HEAP32[$j>>2] = 0; + while(1) { + $47 = HEAP32[$j>>2]|0; + $48 = HEAP32[$pRightTab>>2]|0; + $49 = (($48) + 38|0); + $50 = HEAP16[$49>>1]|0; + $51 = $50 << 16 >> 16; + $52 = ($47|0)<($51|0); + if (!($52)) { + break L7; + } + $53 = HEAP32[$j>>2]|0; + $54 = HEAP32[$pRightTab>>2]|0; + $55 = (($54) + 4|0); + $56 = HEAP32[$55>>2]|0; + $57 = (($56) + (($53*24)|0)|0); + $58 = HEAP32[$57>>2]|0; + HEAP32[$zName>>2] = $58; + $59 = HEAP32[$pSrc>>2]|0; + $60 = HEAP32[$i>>2]|0; + $61 = (($60) + 1)|0; + $62 = HEAP32[$zName>>2]|0; + $63 = (_tableAndColumnIndex($59,$61,$62,$iLeft,$iLeftCol)|0); + $64 = ($63|0)!=(0); + if ($64) { + $65 = HEAP32[$1>>2]|0; + $66 = HEAP32[$pSrc>>2]|0; + $67 = HEAP32[$iLeft>>2]|0; + $68 = HEAP32[$iLeftCol>>2]|0; + $69 = HEAP32[$i>>2]|0; + $70 = (($69) + 1)|0; + $71 = HEAP32[$j>>2]|0; + $72 = HEAP32[$isOuter>>2]|0; + $73 = HEAP32[$2>>2]|0; + $74 = (($73) + 36|0); + _addWhereTerm($65,$66,$67,$68,$70,$71,$72,$74); + } + $75 = HEAP32[$j>>2]|0; + $76 = (($75) + 1)|0; + HEAP32[$j>>2] = $76; + } + } + } while(0); + $77 = HEAP32[$pRight>>2]|0; + $78 = (($77) + 44|0); + $79 = HEAP32[$78>>2]|0; + $80 = ($79|0)!=(0|0); + if ($80) { + $81 = HEAP32[$pRight>>2]|0; + $82 = (($81) + 48|0); + $83 = HEAP32[$82>>2]|0; + $84 = ($83|0)!=(0|0); + if ($84) { + label = 16; + break L1; + } + } + $86 = HEAP32[$pRight>>2]|0; + $87 = (($86) + 44|0); + $88 = HEAP32[$87>>2]|0; + $89 = ($88|0)!=(0|0); + if ($89) { + $90 = HEAP32[$isOuter>>2]|0; + $91 = ($90|0)!=(0); + if ($91) { + $92 = HEAP32[$pRight>>2]|0; + $93 = (($92) + 44|0); + $94 = HEAP32[$93>>2]|0; + $95 = HEAP32[$pRight>>2]|0; + $96 = (($95) + 40|0); + $97 = HEAP32[$96>>2]|0; + _setJoinExpr($94,$97); + } + $98 = HEAP32[$1>>2]|0; + $99 = HEAP32[$98>>2]|0; + $100 = HEAP32[$2>>2]|0; + $101 = (($100) + 36|0); + $102 = HEAP32[$101>>2]|0; + $103 = HEAP32[$pRight>>2]|0; + $104 = (($103) + 44|0); + $105 = HEAP32[$104>>2]|0; + $106 = (_sqlite3ExprAnd($99,$102,$105)|0); + $107 = HEAP32[$2>>2]|0; + $108 = (($107) + 36|0); + HEAP32[$108>>2] = $106; + $109 = HEAP32[$pRight>>2]|0; + $110 = (($109) + 44|0); + HEAP32[$110>>2] = 0; + } + $111 = HEAP32[$pRight>>2]|0; + $112 = (($111) + 48|0); + $113 = HEAP32[$112>>2]|0; + $114 = ($113|0)!=(0|0); + if ($114) { + $115 = HEAP32[$pRight>>2]|0; + $116 = (($115) + 48|0); + $117 = HEAP32[$116>>2]|0; + HEAP32[$pList>>2] = $117; + HEAP32[$j>>2] = 0; + while(1) { + $118 = HEAP32[$j>>2]|0; + $119 = HEAP32[$pList>>2]|0; + $120 = (($119) + 4|0); + $121 = HEAP32[$120>>2]|0; + $122 = ($118|0)<($121|0); + if (!($122)) { + break L4; + } + $123 = HEAP32[$j>>2]|0; + $124 = HEAP32[$pList>>2]|0; + $125 = HEAP32[$124>>2]|0; + $126 = (($125) + ($123<<3)|0); + $127 = HEAP32[$126>>2]|0; + HEAP32[$zName1>>2] = $127; + $128 = HEAP32[$pRightTab>>2]|0; + $129 = HEAP32[$zName1>>2]|0; + $130 = (_columnIndex($128,$129)|0); + HEAP32[$iRightCol>>2] = $130; + $131 = HEAP32[$iRightCol>>2]|0; + $132 = ($131|0)<(0); + if ($132) { + label = 26; + break L1; + } + $133 = HEAP32[$pSrc>>2]|0; + $134 = HEAP32[$i>>2]|0; + $135 = (($134) + 1)|0; + $136 = HEAP32[$zName1>>2]|0; + $137 = (_tableAndColumnIndex($133,$135,$136,$iLeft2,$iLeftCol3)|0); + $138 = ($137|0)!=(0); + if (!($138)) { + label = 26; + break L1; + } + $141 = HEAP32[$1>>2]|0; + $142 = HEAP32[$pSrc>>2]|0; + $143 = HEAP32[$iLeft2>>2]|0; + $144 = HEAP32[$iLeftCol3>>2]|0; + $145 = HEAP32[$i>>2]|0; + $146 = (($145) + 1)|0; + $147 = HEAP32[$iRightCol>>2]|0; + $148 = HEAP32[$isOuter>>2]|0; + $149 = HEAP32[$2>>2]|0; + $150 = (($149) + 36|0); + _addWhereTerm($141,$142,$143,$144,$146,$147,$148,$150); + $151 = HEAP32[$j>>2]|0; + $152 = (($151) + 1)|0; + HEAP32[$j>>2] = $152; + } + } + } + } + } while(0); + $153 = HEAP32[$i>>2]|0; + $154 = (($153) + 1)|0; + HEAP32[$i>>2] = $154; + $155 = HEAP32[$pRight>>2]|0; + $156 = (($155) + 72|0); + HEAP32[$pRight>>2] = $156; + $157 = HEAP32[$pLeft>>2]|0; + $158 = (($157) + 72|0); + HEAP32[$pLeft>>2] = $158; + } + if ((label|0) == 8) { + $46 = HEAP32[$1>>2]|0; + HEAP32[$vararg_buffer3>>2] = 0; + _sqlite3ErrorMsg($46,24072,$vararg_buffer3); + HEAP32[$0>>2] = 1; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + else if ((label|0) == 16) { + $85 = HEAP32[$1>>2]|0; + _sqlite3ErrorMsg($85,24128,$vararg_buffer3); + HEAP32[$0>>2] = 1; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + else if ((label|0) == 26) { + $139 = HEAP32[$1>>2]|0; + $140 = HEAP32[$zName1>>2]|0; + HEAP32[$vararg_buffer3>>2] = $140; + _sqlite3ErrorMsg($139,24184,$vararg_buffer3); + HEAP32[$0>>2] = 1; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + else if ((label|0) == 29) { + HEAP32[$0>>2] = 0; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + return 0|0; +} +function _tableAndColumnIndex($pSrc,$N,$zCol,$piTab,$piCol) { + $pSrc = $pSrc|0; + $N = $N|0; + $zCol = $zCol|0; + $piTab = $piTab|0; + $piCol = $piCol|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $iCol = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $5 = sp + 16|0; + $i = sp + 20|0; + $iCol = sp + 24|0; + HEAP32[$1>>2] = $pSrc; + HEAP32[$2>>2] = $N; + HEAP32[$3>>2] = $zCol; + HEAP32[$4>>2] = $piTab; + HEAP32[$5>>2] = $piCol; + HEAP32[$i>>2] = 0; + while(1) { + $6 = HEAP32[$i>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = ($6|0)<($7|0); + if (!($8)) { + label = 8; + break; + } + $9 = HEAP32[$i>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 8|0); + $12 = (($11) + (($9*72)|0)|0); + $13 = (($12) + 16|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$3>>2]|0; + $16 = (_columnIndex($14,$15)|0); + HEAP32[$iCol>>2] = $16; + $17 = HEAP32[$iCol>>2]|0; + $18 = ($17|0)>=(0); + if ($18) { + break; + } + $25 = HEAP32[$i>>2]|0; + $26 = (($25) + 1)|0; + HEAP32[$i>>2] = $26; + } + if ((label|0) == 8) { + HEAP32[$0>>2] = 0; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); + } + $19 = HEAP32[$4>>2]|0; + $20 = ($19|0)!=(0|0); + if ($20) { + $21 = HEAP32[$i>>2]|0; + $22 = HEAP32[$4>>2]|0; + HEAP32[$22>>2] = $21; + $23 = HEAP32[$iCol>>2]|0; + $24 = HEAP32[$5>>2]|0; + HEAP32[$24>>2] = $23; + } + HEAP32[$0>>2] = 1; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); +} +function _sqlite3IdListIndex($pList,$zName) { + $pList = $pList|0; + $zName = $zName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + HEAP32[$1>>2] = $pList; + HEAP32[$2>>2] = $zName; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + HEAP32[$0>>2] = -1; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $5 = HEAP32[$i>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($5|0)<($8|0); + if (!($9)) { + label = 8; + break; + } + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + ($10<<3)|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = (_sqlite3_stricmp($14,$15)|0); + $17 = ($16|0)==(0); + $18 = HEAP32[$i>>2]|0; + if ($17) { + label = 6; + break; + } + $19 = (($18) + 1)|0; + HEAP32[$i>>2] = $19; + } + if ((label|0) == 6) { + HEAP32[$0>>2] = $18; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } + else if ((label|0) == 8) { + HEAP32[$0>>2] = -1; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } + return 0|0; +} +function _columnIndex($pTab,$zCol) { + $pTab = $pTab|0; + $zCol = $zCol|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $zCol; + HEAP32[$i>>2] = 0; + while(1) { + $3 = HEAP32[$i>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 38|0); + $6 = HEAP16[$5>>1]|0; + $7 = $6 << 16 >> 16; + $8 = ($3|0)<($7|0); + if (!($8)) { + label = 6; + break; + } + $9 = HEAP32[$i>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + (($9*24)|0)|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = (_sqlite3_stricmp($14,$15)|0); + $17 = ($16|0)==(0); + $18 = HEAP32[$i>>2]|0; + if ($17) { + label = 4; + break; + } + $19 = (($18) + 1)|0; + HEAP32[$i>>2] = $19; + } + if ((label|0) == 4) { + HEAP32[$0>>2] = $18; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } + else if ((label|0) == 6) { + HEAP32[$0>>2] = -1; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } + return 0|0; +} +function _addWhereTerm($pParse,$pSrc,$iLeft,$iColLeft,$iRight,$iColRight,$isOuterJoin,$ppWhere) { + $pParse = $pParse|0; + $pSrc = $pSrc|0; + $iLeft = $iLeft|0; + $iColLeft = $iColLeft|0; + $iRight = $iRight|0; + $iColRight = $iColRight|0; + $isOuterJoin = $isOuterJoin|0; + $ppWhere = $ppWhere|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $pE1 = 0, $pE2 = 0, $pEq = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $4 = sp + 28|0; + $5 = sp + 24|0; + $6 = sp + 20|0; + $7 = sp + 12|0; + $db = sp + 8|0; + $pE1 = sp + 4|0; + $pE2 = sp; + $pEq = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pSrc; + HEAP32[$2>>2] = $iLeft; + HEAP32[$3>>2] = $iColLeft; + HEAP32[$4>>2] = $iRight; + HEAP32[$5>>2] = $iColRight; + HEAP32[$6>>2] = $isOuterJoin; + HEAP32[$7>>2] = $ppWhere; + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$db>>2] = $9; + $10 = HEAP32[$db>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$3>>2]|0; + $14 = (_sqlite3CreateColumnExpr($10,$11,$12,$13)|0); + HEAP32[$pE1>>2] = $14; + $15 = HEAP32[$db>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$4>>2]|0; + $18 = HEAP32[$5>>2]|0; + $19 = (_sqlite3CreateColumnExpr($15,$16,$17,$18)|0); + HEAP32[$pE2>>2] = $19; + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$pE1>>2]|0; + $22 = HEAP32[$pE2>>2]|0; + $23 = (_sqlite3PExpr($20,79,$21,$22,0)|0); + HEAP32[$pEq>>2] = $23; + $24 = HEAP32[$pEq>>2]|0; + $25 = ($24|0)!=(0|0); + if ($25) { + $26 = HEAP32[$6>>2]|0; + $27 = ($26|0)!=(0); + if ($27) { + $28 = HEAP32[$pEq>>2]|0; + $29 = (($28) + 4|0); + $30 = HEAP32[$29>>2]|0; + $31 = $30 | 1; + HEAP32[$29>>2] = $31; + $32 = HEAP32[$pE2>>2]|0; + $33 = (($32) + 28|0); + $34 = HEAP32[$33>>2]|0; + $35 = $34&65535; + $36 = HEAP32[$pEq>>2]|0; + $37 = (($36) + 36|0); + HEAP16[$37>>1] = $35; + } + } + $38 = HEAP32[$db>>2]|0; + $39 = HEAP32[$7>>2]|0; + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$pEq>>2]|0; + $42 = (_sqlite3ExprAnd($38,$40,$41)|0); + $43 = HEAP32[$7>>2]|0; + HEAP32[$43>>2] = $42; + STACKTOP = sp;return; +} +function _setJoinExpr($p,$iTable) { + $p = $p|0; + $iTable = $iTable|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iTable; + while(1) { + $2 = HEAP32[$0>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + break; + } + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + $7 = $6 | 1; + HEAP32[$5>>2] = $7; + $8 = HEAP32[$1>>2]|0; + $9 = $8&65535; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 36|0); + HEAP16[$11>>1] = $9; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 12|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$1>>2]|0; + _setJoinExpr($14,$15); + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 16|0); + $18 = HEAP32[$17>>2]|0; + HEAP32[$0>>2] = $18; + } + STACKTOP = sp;return; +} +function _sqlite3ExprAnd($db,$pLeft,$pRight) { + $db = $db|0; + $pLeft = $pLeft|0; + $pRight = $pRight|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pNew = sp + 12|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pLeft; + HEAP32[$3>>2] = $pRight; + $4 = HEAP32[$2>>2]|0; + $5 = ($4|0)==(0|0); + $6 = HEAP32[$3>>2]|0; + if ($5) { + HEAP32[$0>>2] = $6; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); + } + $7 = ($6|0)==(0|0); + $8 = HEAP32[$2>>2]|0; + if ($7) { + HEAP32[$0>>2] = $8; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); + } + $9 = (_exprAlwaysFalse($8)|0); + $10 = ($9|0)!=(0); + if (!($10)) { + $11 = HEAP32[$3>>2]|0; + $12 = (_exprAlwaysFalse($11)|0); + $13 = ($12|0)!=(0); + if (!($13)) { + $20 = HEAP32[$1>>2]|0; + $21 = (_sqlite3ExprAlloc($20,72,0,0)|0); + HEAP32[$pNew>>2] = $21; + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$pNew>>2]|0; + $24 = HEAP32[$2>>2]|0; + $25 = HEAP32[$3>>2]|0; + _sqlite3ExprAttachSubtrees($22,$23,$24,$25); + $26 = HEAP32[$pNew>>2]|0; + HEAP32[$0>>2] = $26; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); + } + } + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$2>>2]|0; + _sqlite3ExprDelete($14,$15); + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($16,$17); + $18 = HEAP32[$1>>2]|0; + $19 = (_sqlite3ExprAlloc($18,132,16680,0)|0); + HEAP32[$0>>2] = $19; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); +} +function _exprAlwaysFalse($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $v = sp + 4|0; + HEAP32[$1>>2] = $p; + HEAP32[$v>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = $4 & 1; + $6 = ($5|0)!=(0); + do { + if ($6) { + HEAP32[$0>>2] = 0; + } else { + $7 = HEAP32[$1>>2]|0; + $8 = (_sqlite3ExprIsInteger($7,$v)|0); + $9 = ($8|0)!=(0); + if ($9) { + $10 = HEAP32[$v>>2]|0; + $11 = ($10|0)==(0); + $12 = $11&1; + HEAP32[$0>>2] = $12; + break; + } else { + HEAP32[$0>>2] = 0; + break; + } + } + } while(0); + $13 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($13|0); +} +function _sqlite3ExprAlloc($db,$op,$pToken,$dequote) { + $db = $db|0; + $op = $op|0; + $pToken = $pToken|0; + $dequote = $dequote|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $c = 0, $iValue = 0, $nExtra = 0, $or$cond = 0, $or$cond3 = 0, $pNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pNew = sp + 12|0; + $nExtra = sp + 16|0; + $iValue = sp + 20|0; + $c = sp + 24|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $op; + HEAP32[$2>>2] = $pToken; + HEAP32[$3>>2] = $dequote; + HEAP32[$nExtra>>2] = 0; + HEAP32[$iValue>>2] = 0; + $4 = HEAP32[$2>>2]|0; + $5 = ($4|0)!=(0|0); + do { + if ($5) { + $6 = HEAP32[$1>>2]|0; + $7 = ($6|0)!=(132); + if (!($7)) { + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)==(0|0); + if (!($10)) { + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = (_sqlite3GetInt32($12,$iValue)|0); + $14 = ($13|0)==(0); + if (!($14)) { + break; + } + } + } + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + 1)|0; + HEAP32[$nExtra>>2] = $18; + } + } while(0); + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$nExtra>>2]|0; + $21 = (48 + ($20))|0; + $22 = (_sqlite3DbMallocZero($19,$21)|0); + HEAP32[$pNew>>2] = $22; + $23 = HEAP32[$pNew>>2]|0; + $24 = ($23|0)!=(0|0); + if (!($24)) { + $89 = HEAP32[$pNew>>2]|0; + STACKTOP = sp;return ($89|0); + } + $25 = HEAP32[$1>>2]|0; + $26 = $25&255; + $27 = HEAP32[$pNew>>2]|0; + HEAP8[$27>>0] = $26; + $28 = HEAP32[$pNew>>2]|0; + $29 = (($28) + 34|0); + HEAP16[$29>>1] = -1; + $30 = HEAP32[$2>>2]|0; + $31 = ($30|0)!=(0|0); + do { + if ($31) { + $32 = HEAP32[$nExtra>>2]|0; + $33 = ($32|0)==(0); + $34 = HEAP32[$pNew>>2]|0; + if ($33) { + $35 = (($34) + 4|0); + $36 = HEAP32[$35>>2]|0; + $37 = $36 | 1024; + HEAP32[$35>>2] = $37; + $38 = HEAP32[$iValue>>2]|0; + $39 = HEAP32[$pNew>>2]|0; + $40 = (($39) + 8|0); + HEAP32[$40>>2] = $38; + break; + } + $41 = (($34) + 48|0); + $42 = HEAP32[$pNew>>2]|0; + $43 = (($42) + 8|0); + HEAP32[$43>>2] = $41; + $44 = HEAP32[$2>>2]|0; + $45 = (($44) + 4|0); + $46 = HEAP32[$45>>2]|0; + $47 = ($46|0)!=(0); + if ($47) { + $48 = HEAP32[$pNew>>2]|0; + $49 = (($48) + 8|0); + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$2>>2]|0; + $52 = HEAP32[$51>>2]|0; + $53 = HEAP32[$2>>2]|0; + $54 = (($53) + 4|0); + $55 = HEAP32[$54>>2]|0; + _memcpy(($50|0),($52|0),($55|0))|0; + } + $56 = HEAP32[$2>>2]|0; + $57 = (($56) + 4|0); + $58 = HEAP32[$57>>2]|0; + $59 = HEAP32[$pNew>>2]|0; + $60 = (($59) + 8|0); + $61 = HEAP32[$60>>2]|0; + $62 = (($61) + ($58)|0); + HEAP8[$62>>0] = 0; + $63 = HEAP32[$3>>2]|0; + $64 = ($63|0)!=(0); + if ($64) { + $65 = HEAP32[$nExtra>>2]|0; + $66 = ($65|0)>=(3); + if ($66) { + $67 = HEAP32[$2>>2]|0; + $68 = HEAP32[$67>>2]|0; + $69 = HEAP8[$68>>0]|0; + $70 = $69 << 24 >> 24; + HEAP32[$c>>2] = $70; + $71 = ($70|0)==(39); + if (!($71)) { + $72 = HEAP32[$c>>2]|0; + $73 = ($72|0)==(34); + $74 = HEAP32[$c>>2]|0; + $75 = ($74|0)==(91); + $or$cond = $73 | $75; + $76 = HEAP32[$c>>2]|0; + $77 = ($76|0)==(96); + $or$cond3 = $or$cond | $77; + if (!($or$cond3)) { + break; + } + } + $78 = HEAP32[$pNew>>2]|0; + $79 = (($78) + 8|0); + $80 = HEAP32[$79>>2]|0; + (_sqlite3Dequote($80)|0); + $81 = HEAP32[$c>>2]|0; + $82 = ($81|0)==(34); + if ($82) { + $83 = HEAP32[$pNew>>2]|0; + $84 = (($83) + 4|0); + $85 = HEAP32[$84>>2]|0; + $86 = $85 | 64; + HEAP32[$84>>2] = $86; + } + } + } + } + } while(0); + $87 = HEAP32[$pNew>>2]|0; + $88 = (($87) + 24|0); + HEAP32[$88>>2] = 1; + $89 = HEAP32[$pNew>>2]|0; + STACKTOP = sp;return ($89|0); +} +function _sqlite3ExprAttachSubtrees($db,$pRoot,$pLeft,$pRight) { + $db = $db|0; + $pRoot = $pRoot|0; + $pLeft = $pLeft|0; + $pRight = $pRight|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pRoot; + HEAP32[$2>>2] = $pLeft; + HEAP32[$3>>2] = $pRight; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)==(0|0); + if ($5) { + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$2>>2]|0; + _sqlite3ExprDelete($6,$7); + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$3>>2]|0; + _sqlite3ExprDelete($8,$9); + STACKTOP = sp;return; + } + $10 = HEAP32[$3>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = HEAP32[$3>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 16|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$3>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = 256 & $17; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = $21 | $18; + HEAP32[$20>>2] = $22; + } + $23 = HEAP32[$2>>2]|0; + $24 = ($23|0)!=(0|0); + if ($24) { + $25 = HEAP32[$2>>2]|0; + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 12|0); + HEAP32[$27>>2] = $25; + $28 = HEAP32[$2>>2]|0; + $29 = (($28) + 4|0); + $30 = HEAP32[$29>>2]|0; + $31 = 256 & $30; + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = $34 | $31; + HEAP32[$33>>2] = $35; + } + $36 = HEAP32[$1>>2]|0; + _exprSetHeight($36); + STACKTOP = sp;return; +} +function _exprSetHeight($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $nHeight = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $nHeight = sp; + HEAP32[$0>>2] = $p; + HEAP32[$nHeight>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 12|0); + $3 = HEAP32[$2>>2]|0; + _heightOfExpr($3,$nHeight); + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 16|0); + $6 = HEAP32[$5>>2]|0; + _heightOfExpr($6,$nHeight); + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = $9 & 2048; + $11 = ($10|0)!=(0); + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 20|0); + if ($11) { + $14 = HEAP32[$13>>2]|0; + _heightOfSelect($14,$nHeight); + } else { + $15 = HEAP32[$13>>2]|0; + _heightOfExprList($15,$nHeight); + } + $16 = HEAP32[$nHeight>>2]|0; + $17 = (($16) + 1)|0; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 24|0); + HEAP32[$19>>2] = $17; + STACKTOP = sp;return; +} +function _heightOfExpr($p,$pnHeight) { + $p = $p|0; + $pnHeight = $pnHeight|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pnHeight; + $2 = HEAP32[$0>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 24|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = ($6|0)>($8|0); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 24|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$1>>2]|0; + HEAP32[$13>>2] = $12; + STACKTOP = sp;return; +} +function _heightOfSelect($p,$pnHeight) { + $p = $p|0; + $pnHeight = $pnHeight|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pnHeight; + $2 = HEAP32[$0>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 36|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$1>>2]|0; + _heightOfExpr($6,$7); + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 44|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$1>>2]|0; + _heightOfExpr($10,$11); + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 60|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$1>>2]|0; + _heightOfExpr($14,$15); + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 64|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$1>>2]|0; + _heightOfExpr($18,$19); + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$1>>2]|0; + _heightOfExprList($21,$22); + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 40|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$1>>2]|0; + _heightOfExprList($25,$26); + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 48|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$1>>2]|0; + _heightOfExprList($29,$30); + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 52|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$1>>2]|0; + _heightOfSelect($33,$34); + STACKTOP = sp;return; +} +function _heightOfExprList($p,$pnHeight) { + $p = $p|0; + $pnHeight = $pnHeight|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $i = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pnHeight; + $2 = HEAP32[$0>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $4 = HEAP32[$i>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = ($4|0)<($6|0); + if (!($7)) { + break; + } + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 4|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + (($8*20)|0)|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$1>>2]|0; + _heightOfExpr($13,$14); + $15 = HEAP32[$i>>2]|0; + $16 = (($15) + 1)|0; + HEAP32[$i>>2] = $16; + } + STACKTOP = sp;return; +} +function _sqlite3CreateColumnExpr($db,$pSrc,$iSrc,$iCol) { + $db = $db|0; + $pSrc = $pSrc|0; + $iSrc = $iSrc|0; + $iCol = $iCol|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; + var $9 = 0, $p = 0, $pItem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $p = sp + 12|0; + $pItem = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pSrc; + HEAP32[$2>>2] = $iSrc; + HEAP32[$3>>2] = $iCol; + $4 = HEAP32[$0>>2]|0; + $5 = (_sqlite3ExprAlloc($4,154,0,0)|0); + HEAP32[$p>>2] = $5; + $6 = HEAP32[$p>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + $60 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($60|0); + } + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 8|0); + $11 = (($10) + (($8*72)|0)|0); + HEAP32[$pItem>>2] = $11; + $12 = HEAP32[$pItem>>2]|0; + $13 = (($12) + 16|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$p>>2]|0; + $16 = (($15) + 44|0); + HEAP32[$16>>2] = $14; + $17 = HEAP32[$pItem>>2]|0; + $18 = (($17) + 40|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 28|0); + HEAP32[$21>>2] = $19; + $22 = HEAP32[$p>>2]|0; + $23 = (($22) + 44|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + 36|0); + $26 = HEAP16[$25>>1]|0; + $27 = $26 << 16 >> 16; + $28 = HEAP32[$3>>2]|0; + $29 = ($27|0)==($28|0); + if ($29) { + $30 = HEAP32[$p>>2]|0; + $31 = (($30) + 32|0); + HEAP16[$31>>1] = -1; + } else { + $32 = HEAP32[$3>>2]|0; + $33 = $32&65535; + $34 = HEAP32[$p>>2]|0; + $35 = (($34) + 32|0); + HEAP16[$35>>1] = $33; + $36 = HEAP32[$3>>2]|0; + $37 = ($36|0)>=(64); + $38 = HEAP32[$3>>2]|0; + $39 = $37 ? 63 : $38; + $40 = (_bitshift64Shl(1,0,($39|0))|0); + $41 = tempRet0; + $42 = HEAP32[$pItem>>2]|0; + $43 = (($42) + 56|0); + $44 = $43; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = (($44) + 4)|0; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = $46 | $40; + $51 = $49 | $41; + $52 = $43; + $53 = $52; + HEAP32[$53>>2] = $50; + $54 = (($52) + 4)|0; + $55 = $54; + HEAP32[$55>>2] = $51; + } + $56 = HEAP32[$p>>2]|0; + $57 = (($56) + 4|0); + $58 = HEAP32[$57>>2]|0; + $59 = $58 | 4; + HEAP32[$57>>2] = $59; + $60 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($60|0); +} +function _searchWith($pWith,$pItem,$ppContext) { + $pWith = $pWith|0; + $pItem = $pItem|0; + $ppContext = $ppContext|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0; + var $p = 0, $zName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $zName = sp + 12|0; + $p = sp + 16|0; + $i = sp + 20|0; + HEAP32[$1>>2] = $pWith; + HEAP32[$2>>2] = $pItem; + HEAP32[$3>>2] = $ppContext; + $4 = HEAP32[$2>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)==(0|0); + L1: do { + if ($7) { + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 8|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$zName>>2] = $10; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $12; + L4: while(1) { + $13 = HEAP32[$p>>2]|0; + $14 = ($13|0)!=(0|0); + if (!($14)) { + break L1; + } + HEAP32[$i>>2] = 0; + while(1) { + $15 = HEAP32[$i>>2]|0; + $16 = HEAP32[$p>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = ($15|0)<($17|0); + if (!($18)) { + break; + } + $19 = HEAP32[$zName>>2]|0; + $20 = HEAP32[$i>>2]|0; + $21 = HEAP32[$p>>2]|0; + $22 = (($21) + 8|0); + $23 = (($22) + ($20<<4)|0); + $24 = HEAP32[$23>>2]|0; + $25 = (_sqlite3_stricmp($19,$24)|0); + $26 = ($25|0)==(0); + if ($26) { + break L4; + } + $33 = HEAP32[$i>>2]|0; + $34 = (($33) + 1)|0; + HEAP32[$i>>2] = $34; + } + $35 = HEAP32[$p>>2]|0; + $36 = (($35) + 4|0); + $37 = HEAP32[$36>>2]|0; + HEAP32[$p>>2] = $37; + } + $27 = HEAP32[$p>>2]|0; + $28 = HEAP32[$3>>2]|0; + HEAP32[$28>>2] = $27; + $29 = HEAP32[$i>>2]|0; + $30 = HEAP32[$p>>2]|0; + $31 = (($30) + 8|0); + $32 = (($31) + ($29<<4)|0); + HEAP32[$0>>2] = $32; + $38 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($38|0); + } + } + } while(0); + HEAP32[$0>>2] = 0; + $38 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($38|0); +} +function _sqlite3SrcListDup($db,$p,$flags) { + $db = $db|0; + $p = $p|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; + var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0; + var $nByte = 0, $pNew = 0, $pNewItem = 0, $pOldItem = 0, $pTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $pNew = sp + 20|0; + $i = sp + 16|0; + $nByte = sp + 8|0; + $pNewItem = sp + 4|0; + $pOldItem = sp; + $pTab = sp + 12|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $flags; + $4 = HEAP32[$2>>2]|0; + $5 = ($4|0)==(0|0); + if ($5) { + HEAP32[$0>>2] = 0; + $198 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($198|0); + } + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)>(0); + if ($8) { + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = (($10) - 1)|0; + $12 = ($11*72)|0; + $14 = $12; + } else { + $14 = 0; + } + $13 = (80 + ($14))|0; + HEAP32[$nByte>>2] = $13; + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$nByte>>2]|0; + $17 = (_sqlite3DbMallocRaw($15,$16)|0); + HEAP32[$pNew>>2] = $17; + $18 = HEAP32[$pNew>>2]|0; + $19 = ($18|0)==(0|0); + if ($19) { + HEAP32[$0>>2] = 0; + $198 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($198|0); + } + $20 = HEAP32[$2>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$pNew>>2]|0; + $23 = (($22) + 4|0); + HEAP32[$23>>2] = $21; + $24 = HEAP32[$pNew>>2]|0; + HEAP32[$24>>2] = $21; + HEAP32[$i>>2] = 0; + while(1) { + $25 = HEAP32[$i>>2]|0; + $26 = HEAP32[$2>>2]|0; + $27 = HEAP32[$26>>2]|0; + $28 = ($25|0)<($27|0); + if (!($28)) { + break; + } + $29 = HEAP32[$i>>2]|0; + $30 = HEAP32[$pNew>>2]|0; + $31 = (($30) + 8|0); + $32 = (($31) + (($29*72)|0)|0); + HEAP32[$pNewItem>>2] = $32; + $33 = HEAP32[$i>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = (($34) + 8|0); + $36 = (($35) + (($33*72)|0)|0); + HEAP32[$pOldItem>>2] = $36; + $37 = HEAP32[$pOldItem>>2]|0; + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$pNewItem>>2]|0; + HEAP32[$39>>2] = $38; + $40 = HEAP32[$1>>2]|0; + $41 = HEAP32[$pOldItem>>2]|0; + $42 = (($41) + 4|0); + $43 = HEAP32[$42>>2]|0; + $44 = (_sqlite3DbStrDup($40,$43)|0); + $45 = HEAP32[$pNewItem>>2]|0; + $46 = (($45) + 4|0); + HEAP32[$46>>2] = $44; + $47 = HEAP32[$1>>2]|0; + $48 = HEAP32[$pOldItem>>2]|0; + $49 = (($48) + 8|0); + $50 = HEAP32[$49>>2]|0; + $51 = (_sqlite3DbStrDup($47,$50)|0); + $52 = HEAP32[$pNewItem>>2]|0; + $53 = (($52) + 8|0); + HEAP32[$53>>2] = $51; + $54 = HEAP32[$1>>2]|0; + $55 = HEAP32[$pOldItem>>2]|0; + $56 = (($55) + 12|0); + $57 = HEAP32[$56>>2]|0; + $58 = (_sqlite3DbStrDup($54,$57)|0); + $59 = HEAP32[$pNewItem>>2]|0; + $60 = (($59) + 12|0); + HEAP32[$60>>2] = $58; + $61 = HEAP32[$pOldItem>>2]|0; + $62 = (($61) + 36|0); + $63 = HEAP8[$62>>0]|0; + $64 = HEAP32[$pNewItem>>2]|0; + $65 = (($64) + 36|0); + HEAP8[$65>>0] = $63; + $66 = HEAP32[$pOldItem>>2]|0; + $67 = (($66) + 40|0); + $68 = HEAP32[$67>>2]|0; + $69 = HEAP32[$pNewItem>>2]|0; + $70 = (($69) + 40|0); + HEAP32[$70>>2] = $68; + $71 = HEAP32[$pOldItem>>2]|0; + $72 = (($71) + 24|0); + $73 = HEAP32[$72>>2]|0; + $74 = HEAP32[$pNewItem>>2]|0; + $75 = (($74) + 24|0); + HEAP32[$75>>2] = $73; + $76 = HEAP32[$pOldItem>>2]|0; + $77 = (($76) + 28|0); + $78 = HEAP32[$77>>2]|0; + $79 = HEAP32[$pNewItem>>2]|0; + $80 = (($79) + 28|0); + HEAP32[$80>>2] = $78; + $81 = HEAP32[$pOldItem>>2]|0; + $82 = (($81) + 37|0); + $83 = HEAP8[$82>>0]|0; + $84 = ($83&255) >>> 1; + $85 = $84 & 1; + $86 = $85&255; + $87 = HEAP32[$pNewItem>>2]|0; + $88 = (($87) + 37|0); + $89 = $86&255; + $90 = HEAP8[$88>>0]|0; + $91 = $89 & 1; + $92 = ($91 << 1)&255; + $93 = $90 & -3; + $94 = $93 | $92; + HEAP8[$88>>0] = $94; + $95 = HEAP32[$pOldItem>>2]|0; + $96 = (($95) + 37|0); + $97 = HEAP8[$96>>0]|0; + $98 = ($97&255) >>> 2; + $99 = $98 & 1; + $100 = $99&255; + $101 = HEAP32[$pNewItem>>2]|0; + $102 = (($101) + 37|0); + $103 = $100&255; + $104 = HEAP8[$102>>0]|0; + $105 = $103 & 1; + $106 = ($105 << 2)&255; + $107 = $104 & -5; + $108 = $107 | $106; + HEAP8[$102>>0] = $108; + $109 = HEAP32[$pOldItem>>2]|0; + $110 = (($109) + 37|0); + $111 = HEAP8[$110>>0]|0; + $112 = ($111&255) >>> 3; + $113 = $112 & 1; + $114 = $113&255; + $115 = HEAP32[$pNewItem>>2]|0; + $116 = (($115) + 37|0); + $117 = $114&255; + $118 = HEAP8[$116>>0]|0; + $119 = $117 & 1; + $120 = ($119 << 3)&255; + $121 = $118 & -9; + $122 = $121 | $120; + HEAP8[$116>>0] = $122; + $123 = HEAP32[$1>>2]|0; + $124 = HEAP32[$pOldItem>>2]|0; + $125 = (($124) + 64|0); + $126 = HEAP32[$125>>2]|0; + $127 = (_sqlite3DbStrDup($123,$126)|0); + $128 = HEAP32[$pNewItem>>2]|0; + $129 = (($128) + 64|0); + HEAP32[$129>>2] = $127; + $130 = HEAP32[$pOldItem>>2]|0; + $131 = (($130) + 37|0); + $132 = HEAP8[$131>>0]|0; + $133 = $132 & 1; + $134 = $133&255; + $135 = HEAP32[$pNewItem>>2]|0; + $136 = (($135) + 37|0); + $137 = $134&255; + $138 = HEAP8[$136>>0]|0; + $139 = $137 & 1; + $140 = $138 & -2; + $141 = $140 | $139; + HEAP8[$136>>0] = $141; + $142 = HEAP32[$pOldItem>>2]|0; + $143 = (($142) + 68|0); + $144 = HEAP32[$143>>2]|0; + $145 = HEAP32[$pNewItem>>2]|0; + $146 = (($145) + 68|0); + HEAP32[$146>>2] = $144; + $147 = HEAP32[$pOldItem>>2]|0; + $148 = (($147) + 16|0); + $149 = HEAP32[$148>>2]|0; + $150 = HEAP32[$pNewItem>>2]|0; + $151 = (($150) + 16|0); + HEAP32[$151>>2] = $149; + HEAP32[$pTab>>2] = $149; + $152 = HEAP32[$pTab>>2]|0; + $153 = ($152|0)!=(0|0); + if ($153) { + $154 = HEAP32[$pTab>>2]|0; + $155 = (($154) + 40|0); + $156 = HEAP16[$155>>1]|0; + $157 = (($156) + 1)<<16>>16; + HEAP16[$155>>1] = $157; + } + $158 = HEAP32[$1>>2]|0; + $159 = HEAP32[$pOldItem>>2]|0; + $160 = (($159) + 20|0); + $161 = HEAP32[$160>>2]|0; + $162 = HEAP32[$3>>2]|0; + $163 = (_sqlite3SelectDup($158,$161,$162)|0); + $164 = HEAP32[$pNewItem>>2]|0; + $165 = (($164) + 20|0); + HEAP32[$165>>2] = $163; + $166 = HEAP32[$1>>2]|0; + $167 = HEAP32[$pOldItem>>2]|0; + $168 = (($167) + 44|0); + $169 = HEAP32[$168>>2]|0; + $170 = HEAP32[$3>>2]|0; + $171 = (_sqlite3ExprDup($166,$169,$170)|0); + $172 = HEAP32[$pNewItem>>2]|0; + $173 = (($172) + 44|0); + HEAP32[$173>>2] = $171; + $174 = HEAP32[$1>>2]|0; + $175 = HEAP32[$pOldItem>>2]|0; + $176 = (($175) + 48|0); + $177 = HEAP32[$176>>2]|0; + $178 = (_sqlite3IdListDup($174,$177)|0); + $179 = HEAP32[$pNewItem>>2]|0; + $180 = (($179) + 48|0); + HEAP32[$180>>2] = $178; + $181 = HEAP32[$pOldItem>>2]|0; + $182 = (($181) + 56|0); + $183 = $182; + $184 = $183; + $185 = HEAP32[$184>>2]|0; + $186 = (($183) + 4)|0; + $187 = $186; + $188 = HEAP32[$187>>2]|0; + $189 = HEAP32[$pNewItem>>2]|0; + $190 = (($189) + 56|0); + $191 = $190; + $192 = $191; + HEAP32[$192>>2] = $185; + $193 = (($191) + 4)|0; + $194 = $193; + HEAP32[$194>>2] = $188; + $195 = HEAP32[$i>>2]|0; + $196 = (($195) + 1)|0; + HEAP32[$i>>2] = $196; + } + $197 = HEAP32[$pNew>>2]|0; + HEAP32[$0>>2] = $197; + $198 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($198|0); +} +function _withDup($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; + var $9 = 0, $i = 0, $nByte = 0, $pRet = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $pRet = sp + 4|0; + $nByte = sp + 8|0; + $i = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + HEAP32[$pRet>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $60 = HEAP32[$pRet>>2]|0; + STACKTOP = sp;return ($60|0); + } + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = (($5) - 1)|0; + $7 = $6<<4; + $8 = (24 + ($7))|0; + HEAP32[$nByte>>2] = $8; + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$nByte>>2]|0; + $11 = (_sqlite3DbMallocZero($9,$10)|0); + HEAP32[$pRet>>2] = $11; + $12 = HEAP32[$pRet>>2]|0; + $13 = ($12|0)!=(0|0); + if (!($13)) { + $60 = HEAP32[$pRet>>2]|0; + STACKTOP = sp;return ($60|0); + } + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$pRet>>2]|0; + HEAP32[$16>>2] = $15; + HEAP32[$i>>2] = 0; + while(1) { + $17 = HEAP32[$i>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = HEAP32[$18>>2]|0; + $20 = ($17|0)<($19|0); + if (!($20)) { + break; + } + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$i>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 8|0); + $25 = (($24) + ($22<<4)|0); + $26 = (($25) + 8|0); + $27 = HEAP32[$26>>2]|0; + $28 = (_sqlite3SelectDup($21,$27,0)|0); + $29 = HEAP32[$i>>2]|0; + $30 = HEAP32[$pRet>>2]|0; + $31 = (($30) + 8|0); + $32 = (($31) + ($29<<4)|0); + $33 = (($32) + 8|0); + HEAP32[$33>>2] = $28; + $34 = HEAP32[$0>>2]|0; + $35 = HEAP32[$i>>2]|0; + $36 = HEAP32[$1>>2]|0; + $37 = (($36) + 8|0); + $38 = (($37) + ($35<<4)|0); + $39 = (($38) + 4|0); + $40 = HEAP32[$39>>2]|0; + $41 = (_sqlite3ExprListDup($34,$40,0)|0); + $42 = HEAP32[$i>>2]|0; + $43 = HEAP32[$pRet>>2]|0; + $44 = (($43) + 8|0); + $45 = (($44) + ($42<<4)|0); + $46 = (($45) + 4|0); + HEAP32[$46>>2] = $41; + $47 = HEAP32[$0>>2]|0; + $48 = HEAP32[$i>>2]|0; + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 8|0); + $51 = (($50) + ($48<<4)|0); + $52 = HEAP32[$51>>2]|0; + $53 = (_sqlite3DbStrDup($47,$52)|0); + $54 = HEAP32[$i>>2]|0; + $55 = HEAP32[$pRet>>2]|0; + $56 = (($55) + 8|0); + $57 = (($56) + ($54<<4)|0); + HEAP32[$57>>2] = $53; + $58 = HEAP32[$i>>2]|0; + $59 = (($58) + 1)|0; + HEAP32[$i>>2] = $59; + } + $60 = HEAP32[$pRet>>2]|0; + STACKTOP = sp;return ($60|0); +} +function _sqlite3IdListDup($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pNew = 0, $pNewItem = 0, $pOldItem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $pNew = sp + 8|0; + $i = sp + 12|0; + $pNewItem = sp + 16|0; + $pOldItem = sp + 20|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $p; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + HEAP32[$0>>2] = 0; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); + } + $5 = HEAP32[$1>>2]|0; + $6 = (_sqlite3DbMallocRaw($5,8)|0); + HEAP32[$pNew>>2] = $6; + $7 = HEAP32[$pNew>>2]|0; + $8 = ($7|0)==(0|0); + if ($8) { + HEAP32[$0>>2] = 0; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); + } + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 4|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$pNew>>2]|0; + $13 = (($12) + 4|0); + HEAP32[$13>>2] = $11; + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = $17<<3; + $19 = (_sqlite3DbMallocRaw($14,$18)|0); + $20 = HEAP32[$pNew>>2]|0; + HEAP32[$20>>2] = $19; + $21 = HEAP32[$pNew>>2]|0; + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)==(0|0); + if ($23) { + $24 = HEAP32[$1>>2]|0; + $25 = HEAP32[$pNew>>2]|0; + _sqlite3DbFree($24,$25); + HEAP32[$0>>2] = 0; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $26 = HEAP32[$i>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 4|0); + $29 = HEAP32[$28>>2]|0; + $30 = ($26|0)<($29|0); + if (!($30)) { + break; + } + $31 = HEAP32[$i>>2]|0; + $32 = HEAP32[$pNew>>2]|0; + $33 = HEAP32[$32>>2]|0; + $34 = (($33) + ($31<<3)|0); + HEAP32[$pNewItem>>2] = $34; + $35 = HEAP32[$i>>2]|0; + $36 = HEAP32[$2>>2]|0; + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + ($35<<3)|0); + HEAP32[$pOldItem>>2] = $38; + $39 = HEAP32[$1>>2]|0; + $40 = HEAP32[$pOldItem>>2]|0; + $41 = HEAP32[$40>>2]|0; + $42 = (_sqlite3DbStrDup($39,$41)|0); + $43 = HEAP32[$pNewItem>>2]|0; + HEAP32[$43>>2] = $42; + $44 = HEAP32[$pOldItem>>2]|0; + $45 = (($44) + 4|0); + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$pNewItem>>2]|0; + $48 = (($47) + 4|0); + HEAP32[$48>>2] = $46; + $49 = HEAP32[$i>>2]|0; + $50 = (($49) + 1)|0; + HEAP32[$i>>2] = $50; + } + $51 = HEAP32[$pNew>>2]|0; + HEAP32[$0>>2] = $51; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); +} +function _vtabCallConstructor($db,$pTab,$pMod,$xConstruct,$pzErr) { + $db = $db|0; + $pTab = $pTab|0; + $pMod = $pMod|0; + $xConstruct = $xConstruct|0; + $pzErr = $pzErr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; + var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; + var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; + var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; + var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $azArg = 0, $i = 0, $iCol = 0, $iDb = 0, $j = 0, $nArg = 0, $nDel = 0, $nType = 0, $pPriorCtx = 0, $pVTable = 0, $rc = 0, $sCtx = 0, $vararg_buffer7 = 0, $zErr = 0, $zFormat = 0, $zModuleName = 0; + var $zType = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $vararg_buffer7 = sp; + $0 = sp + 92|0; + $1 = sp + 88|0; + $2 = sp + 84|0; + $3 = sp + 80|0; + $4 = sp + 76|0; + $5 = sp + 72|0; + $sCtx = sp + 64|0; + $pPriorCtx = sp + 56|0; + $pVTable = sp + 52|0; + $rc = sp + 48|0; + $azArg = sp + 96|0; + $nArg = sp + 20|0; + $zErr = sp + 16|0; + $zModuleName = sp + 4|0; + $iDb = sp + 8|0; + $zFormat = sp + 12|0; + $iCol = sp + 40|0; + $zType = sp + 24|0; + $nType = sp + 28|0; + $i = sp + 32|0; + $j = sp + 36|0; + $nDel = sp + 44|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pTab; + HEAP32[$3>>2] = $pMod; + HEAP32[$4>>2] = $xConstruct; + HEAP32[$5>>2] = $pzErr; + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + 56|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$azArg>>2] = $8; + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 52|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$nArg>>2] = $11; + HEAP32[$zErr>>2] = 0; + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = HEAP32[$13>>2]|0; + HEAP32[$vararg_buffer7>>2] = $14; + $15 = (_sqlite3MPrintf($12,1768,$vararg_buffer7)|0); + HEAP32[$zModuleName>>2] = $15; + $16 = HEAP32[$zModuleName>>2]|0; + $17 = ($16|0)!=(0|0); + if (!($17)) { + HEAP32[$0>>2] = 7; + $223 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($223|0); + } + $18 = HEAP32[$1>>2]|0; + $19 = (_sqlite3DbMallocZero($18,28)|0); + HEAP32[$pVTable>>2] = $19; + $20 = HEAP32[$pVTable>>2]|0; + $21 = ($20|0)!=(0|0); + $22 = HEAP32[$1>>2]|0; + if (!($21)) { + $23 = HEAP32[$zModuleName>>2]|0; + _sqlite3DbFree($22,$23); + HEAP32[$0>>2] = 7; + $223 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($223|0); + } + $24 = HEAP32[$pVTable>>2]|0; + HEAP32[$24>>2] = $22; + $25 = HEAP32[$3>>2]|0; + $26 = HEAP32[$pVTable>>2]|0; + $27 = (($26) + 4|0); + HEAP32[$27>>2] = $25; + $28 = HEAP32[$1>>2]|0; + $29 = HEAP32[$2>>2]|0; + $30 = (($29) + 68|0); + $31 = HEAP32[$30>>2]|0; + $32 = (_sqlite3SchemaToIndex($28,$31)|0); + HEAP32[$iDb>>2] = $32; + $33 = HEAP32[$iDb>>2]|0; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 16|0); + $36 = HEAP32[$35>>2]|0; + $37 = (($36) + ($33<<4)|0); + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$2>>2]|0; + $40 = (($39) + 56|0); + $41 = HEAP32[$40>>2]|0; + $42 = (($41) + 4|0); + HEAP32[$42>>2] = $38; + $43 = HEAP32[$2>>2]|0; + $44 = (($sCtx) + 4|0); + HEAP32[$44>>2] = $43; + $45 = HEAP32[$pVTable>>2]|0; + HEAP32[$sCtx>>2] = $45; + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 316|0); + $48 = HEAP32[$47>>2]|0; + HEAP32[$pPriorCtx>>2] = $48; + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 316|0); + HEAP32[$50>>2] = $sCtx; + $51 = HEAP32[$4>>2]|0; + $52 = HEAP32[$1>>2]|0; + $53 = HEAP32[$3>>2]|0; + $54 = (($53) + 8|0); + $55 = HEAP32[$54>>2]|0; + $56 = HEAP32[$nArg>>2]|0; + $57 = HEAP32[$azArg>>2]|0; + $58 = HEAP32[$pVTable>>2]|0; + $59 = (($58) + 8|0); + $60 = (FUNCTION_TABLE_iiiiiii[$51 & 15]($52,$55,$56,$57,$59,$zErr)|0); + HEAP32[$rc>>2] = $60; + $61 = HEAP32[$pPriorCtx>>2]|0; + $62 = HEAP32[$1>>2]|0; + $63 = (($62) + 316|0); + HEAP32[$63>>2] = $61; + $64 = HEAP32[$rc>>2]|0; + $65 = ($64|0)==(7); + if ($65) { + $66 = HEAP32[$1>>2]|0; + $67 = (($66) + 64|0); + HEAP8[$67>>0] = 1; + } + $68 = HEAP32[$rc>>2]|0; + $69 = (0)!=($68|0); + L12: do { + if ($69) { + $70 = HEAP32[$zErr>>2]|0; + $71 = ($70|0)==(0|0); + $72 = HEAP32[$1>>2]|0; + if ($71) { + $73 = HEAP32[$zModuleName>>2]|0; + HEAP32[$vararg_buffer7>>2] = $73; + $74 = (_sqlite3MPrintf($72,24488,$vararg_buffer7)|0); + $75 = HEAP32[$5>>2]|0; + HEAP32[$75>>2] = $74; + } else { + $76 = HEAP32[$zErr>>2]|0; + HEAP32[$vararg_buffer7>>2] = $76; + $77 = (_sqlite3MPrintf($72,1768,$vararg_buffer7)|0); + $78 = HEAP32[$5>>2]|0; + HEAP32[$78>>2] = $77; + $79 = HEAP32[$zErr>>2]|0; + _sqlite3_free($79); + } + $80 = HEAP32[$1>>2]|0; + $81 = HEAP32[$pVTable>>2]|0; + _sqlite3DbFree($80,$81); + } else { + $82 = HEAP32[$pVTable>>2]|0; + $83 = (($82) + 8|0); + $84 = HEAP32[$83>>2]|0; + $85 = ($84|0)!=(0|0); + if ($85) { + $86 = HEAP32[$3>>2]|0; + $87 = HEAP32[$86>>2]|0; + $88 = HEAP32[$pVTable>>2]|0; + $89 = (($88) + 8|0); + $90 = HEAP32[$89>>2]|0; + HEAP32[$90>>2] = $87; + $91 = HEAP32[$pVTable>>2]|0; + $92 = (($91) + 12|0); + HEAP32[$92>>2] = 1; + $93 = (($sCtx) + 4|0); + $94 = HEAP32[$93>>2]|0; + $95 = ($94|0)!=(0|0); + if ($95) { + HEAP32[$zFormat>>2] = 24520; + $96 = HEAP32[$1>>2]|0; + $97 = HEAP32[$zFormat>>2]|0; + $98 = HEAP32[$2>>2]|0; + $99 = HEAP32[$98>>2]|0; + HEAP32[$vararg_buffer7>>2] = $99; + $100 = (_sqlite3MPrintf($96,$97,$vararg_buffer7)|0); + $101 = HEAP32[$5>>2]|0; + HEAP32[$101>>2] = $100; + $102 = HEAP32[$pVTable>>2]|0; + _sqlite3VtabUnlock($102); + HEAP32[$rc>>2] = 1; + break; + } + $103 = HEAP32[$2>>2]|0; + $104 = (($103) + 60|0); + $105 = HEAP32[$104>>2]|0; + $106 = HEAP32[$pVTable>>2]|0; + $107 = (($106) + 24|0); + HEAP32[$107>>2] = $105; + $108 = HEAP32[$pVTable>>2]|0; + $109 = HEAP32[$2>>2]|0; + $110 = (($109) + 60|0); + HEAP32[$110>>2] = $108; + HEAP32[$iCol>>2] = 0; + while(1) { + $111 = HEAP32[$iCol>>2]|0; + $112 = HEAP32[$2>>2]|0; + $113 = (($112) + 38|0); + $114 = HEAP16[$113>>1]|0; + $115 = $114 << 16 >> 16; + $116 = ($111|0)<($115|0); + if (!($116)) { + break L12; + } + $117 = HEAP32[$iCol>>2]|0; + $118 = HEAP32[$2>>2]|0; + $119 = (($118) + 4|0); + $120 = HEAP32[$119>>2]|0; + $121 = (($120) + (($117*24)|0)|0); + $122 = (($121) + 12|0); + $123 = HEAP32[$122>>2]|0; + HEAP32[$zType>>2] = $123; + HEAP32[$i>>2] = 0; + $124 = HEAP32[$zType>>2]|0; + $125 = ($124|0)!=(0|0); + if ($125) { + $126 = HEAP32[$zType>>2]|0; + $127 = (_sqlite3Strlen30($126)|0); + HEAP32[$nType>>2] = $127; + $128 = HEAP32[$zType>>2]|0; + $129 = (_sqlite3_strnicmp(24568,$128,6)|0); + $130 = ($129|0)!=(0); + if ($130) { + label = 21; + } else { + $131 = HEAP32[$zType>>2]|0; + $132 = (($131) + 6|0); + $133 = HEAP8[$132>>0]|0; + $134 = $133 << 24 >> 24; + $135 = ($134|0)!=(0); + if ($135) { + $136 = HEAP32[$zType>>2]|0; + $137 = (($136) + 6|0); + $138 = HEAP8[$137>>0]|0; + $139 = $138 << 24 >> 24; + $140 = ($139|0)!=(32); + if ($140) { + label = 21; + } + } + } + L26: do { + if ((label|0) == 21) { + label = 0; + HEAP32[$i>>2] = 0; + while(1) { + $141 = HEAP32[$i>>2]|0; + $142 = HEAP32[$nType>>2]|0; + $143 = ($141|0)<($142|0); + if (!($143)) { + break L26; + } + $144 = HEAP32[$i>>2]|0; + $145 = HEAP32[$zType>>2]|0; + $146 = (($145) + ($144)|0); + $147 = (_sqlite3_strnicmp(24576,$146,7)|0); + $148 = (0)==($147|0); + if ($148) { + $149 = HEAP32[$i>>2]|0; + $150 = (($149) + 7)|0; + $151 = HEAP32[$zType>>2]|0; + $152 = (($151) + ($150)|0); + $153 = HEAP8[$152>>0]|0; + $154 = $153 << 24 >> 24; + $155 = ($154|0)==(0); + if ($155) { + break; + } + $156 = HEAP32[$i>>2]|0; + $157 = (($156) + 7)|0; + $158 = HEAP32[$zType>>2]|0; + $159 = (($158) + ($157)|0); + $160 = HEAP8[$159>>0]|0; + $161 = $160 << 24 >> 24; + $162 = ($161|0)==(32); + if ($162) { + break; + } + } + $165 = HEAP32[$i>>2]|0; + $166 = (($165) + 1)|0; + HEAP32[$i>>2] = $166; + } + $163 = HEAP32[$i>>2]|0; + $164 = (($163) + 1)|0; + HEAP32[$i>>2] = $164; + } + } while(0); + $167 = HEAP32[$i>>2]|0; + $168 = HEAP32[$nType>>2]|0; + $169 = ($167|0)<($168|0); + if ($169) { + $170 = HEAP32[$i>>2]|0; + $171 = (($170) + 6)|0; + $172 = HEAP32[$zType>>2]|0; + $173 = (($172) + ($171)|0); + $174 = HEAP8[$173>>0]|0; + $175 = $174 << 24 >> 24; + $176 = ($175|0)!=(0); + $177 = $176 ? 1 : 0; + $178 = (6 + ($177))|0; + HEAP32[$nDel>>2] = $178; + $179 = HEAP32[$i>>2]|0; + HEAP32[$j>>2] = $179; + while(1) { + $180 = HEAP32[$j>>2]|0; + $181 = HEAP32[$nDel>>2]|0; + $182 = (($180) + ($181))|0; + $183 = HEAP32[$nType>>2]|0; + $184 = ($182|0)<=($183|0); + if (!($184)) { + break; + } + $185 = HEAP32[$j>>2]|0; + $186 = HEAP32[$nDel>>2]|0; + $187 = (($185) + ($186))|0; + $188 = HEAP32[$zType>>2]|0; + $189 = (($188) + ($187)|0); + $190 = HEAP8[$189>>0]|0; + $191 = HEAP32[$j>>2]|0; + $192 = HEAP32[$zType>>2]|0; + $193 = (($192) + ($191)|0); + HEAP8[$193>>0] = $190; + $194 = HEAP32[$j>>2]|0; + $195 = (($194) + 1)|0; + HEAP32[$j>>2] = $195; + } + $196 = HEAP32[$i>>2]|0; + $197 = HEAP32[$zType>>2]|0; + $198 = (($197) + ($196)|0); + $199 = HEAP8[$198>>0]|0; + $200 = $199 << 24 >> 24; + $201 = ($200|0)==(0); + if ($201) { + $202 = HEAP32[$i>>2]|0; + $203 = ($202|0)>(0); + if ($203) { + $204 = HEAP32[$i>>2]|0; + $205 = (($204) - 1)|0; + $206 = HEAP32[$zType>>2]|0; + $207 = (($206) + ($205)|0); + HEAP8[$207>>0] = 0; + } + } + $208 = HEAP32[$iCol>>2]|0; + $209 = HEAP32[$2>>2]|0; + $210 = (($209) + 4|0); + $211 = HEAP32[$210>>2]|0; + $212 = (($211) + (($208*24)|0)|0); + $213 = (($212) + 23|0); + $214 = HEAP8[$213>>0]|0; + $215 = $214&255; + $216 = $215 | 2; + $217 = $216&255; + HEAP8[$213>>0] = $217; + } + } + $218 = HEAP32[$iCol>>2]|0; + $219 = (($218) + 1)|0; + HEAP32[$iCol>>2] = $219; + } + } + } + } while(0); + $220 = HEAP32[$1>>2]|0; + $221 = HEAP32[$zModuleName>>2]|0; + _sqlite3DbFree($220,$221); + $222 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $222; + $223 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($223|0); +} +function _sqlite3ReadSchema($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $db = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $rc = sp; + $db = sp + 4|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$db>>2] = $2; + $3 = HEAP32[$db>>2]|0; + $4 = (($3) + 132|0); + $5 = (($4) + 5|0); + $6 = HEAP8[$5>>0]|0; + $7 = ($6<<24>>24)!=(0); + if (!($7)) { + $8 = HEAP32[$db>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 4|0); + $11 = (_sqlite3Init($8,$10)|0); + HEAP32[$rc>>2] = $11; + } + $12 = HEAP32[$rc>>2]|0; + $13 = ($12|0)!=(0); + if (!($13)) { + $21 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($21|0); + } + $14 = HEAP32[$rc>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 12|0); + HEAP32[$16>>2] = $14; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 64|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + 1)|0; + HEAP32[$18>>2] = $20; + $21 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($21|0); +} +function _analyzeDatabase($pParse,$iDb) { + $pParse = $pParse|0; + $iDb = $iDb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $iMem = 0, $iStatCur = 0, $iTab = 0, $k = 0, $pSchema = 0, $pTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $db = sp + 24|0; + $pSchema = sp + 20|0; + $k = sp + 16|0; + $iStatCur = sp + 8|0; + $iMem = sp + 4|0; + $iTab = sp; + $pTab = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iDb; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$db>>2]|0; + $6 = (($5) + 16|0); + $7 = HEAP32[$6>>2]|0; + $8 = (($7) + ($4<<4)|0); + $9 = (($8) + 12|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$pSchema>>2] = $10; + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$1>>2]|0; + _sqlite3BeginWriteOperation($11,0,$12); + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 68|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$iStatCur>>2] = $15; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 68|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + 3)|0; + HEAP32[$17>>2] = $19; + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$1>>2]|0; + $22 = HEAP32[$iStatCur>>2]|0; + _openStatTable($20,$21,$22,0,0); + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 72|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + 1)|0; + HEAP32[$iMem>>2] = $26; + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 68|0); + $29 = HEAP32[$28>>2]|0; + HEAP32[$iTab>>2] = $29; + $30 = HEAP32[$pSchema>>2]|0; + $31 = (($30) + 8|0); + $32 = (($31) + 8|0); + $33 = HEAP32[$32>>2]|0; + HEAP32[$k>>2] = $33; + while(1) { + $34 = HEAP32[$k>>2]|0; + $35 = ($34|0)!=(0|0); + if (!($35)) { + break; + } + $36 = HEAP32[$k>>2]|0; + $37 = (($36) + 8|0); + $38 = HEAP32[$37>>2]|0; + HEAP32[$pTab>>2] = $38; + $39 = HEAP32[$0>>2]|0; + $40 = HEAP32[$pTab>>2]|0; + $41 = HEAP32[$iStatCur>>2]|0; + $42 = HEAP32[$iMem>>2]|0; + $43 = HEAP32[$iTab>>2]|0; + _analyzeOneTable($39,$40,0,$41,$42,$43); + $44 = HEAP32[$k>>2]|0; + $45 = HEAP32[$44>>2]|0; + HEAP32[$k>>2] = $45; + } + $46 = HEAP32[$0>>2]|0; + $47 = HEAP32[$1>>2]|0; + _loadAnalysis($46,$47); + STACKTOP = sp;return; +} +function _sqlite3FindDb($db,$pName) { + $db = $db|0; + $pName = $pName|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $zName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $i = sp + 4|0; + $zName = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pName; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3NameFromToken($2,$3)|0); + HEAP32[$zName>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$zName>>2]|0; + $7 = (_sqlite3FindDbName($5,$6)|0); + HEAP32[$i>>2] = $7; + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$zName>>2]|0; + _sqlite3DbFree($8,$9); + $10 = HEAP32[$i>>2]|0; + STACKTOP = sp;return ($10|0); +} +function _analyzeTable($pParse,$pTab,$pOnlyIdx) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $pOnlyIdx = $pOnlyIdx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $iDb = 0, $iStatCur = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $iDb = sp + 8|0; + $iStatCur = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $pOnlyIdx; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 68|0); + $7 = HEAP32[$6>>2]|0; + $8 = (_sqlite3SchemaToIndex($4,$7)|0); + HEAP32[$iDb>>2] = $8; + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$iDb>>2]|0; + _sqlite3BeginWriteOperation($9,0,$10); + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 68|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$iStatCur>>2] = $13; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 68|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + 3)|0; + HEAP32[$15>>2] = $17; + $18 = HEAP32[$2>>2]|0; + $19 = ($18|0)!=(0|0); + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$iDb>>2]|0; + $22 = HEAP32[$iStatCur>>2]|0; + if ($19) { + $23 = HEAP32[$2>>2]|0; + $24 = HEAP32[$23>>2]|0; + _openStatTable($20,$21,$22,$24,24680); + } else { + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$25>>2]|0; + _openStatTable($20,$21,$22,$26,24688); + } + $27 = HEAP32[$0>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = HEAP32[$2>>2]|0; + $30 = HEAP32[$iStatCur>>2]|0; + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 72|0); + $33 = HEAP32[$32>>2]|0; + $34 = (($33) + 1)|0; + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 68|0); + $37 = HEAP32[$36>>2]|0; + _analyzeOneTable($27,$28,$29,$30,$34,$37); + $38 = HEAP32[$0>>2]|0; + $39 = HEAP32[$iDb>>2]|0; + _loadAnalysis($38,$39); + STACKTOP = sp;return; +} +function _sqlite3TwoPartName($pParse,$pName1,$pName2,$pUnqual) { + $pParse = $pParse|0; + $pName1 = $pName1|0; + $pName2 = $pName2|0; + $pUnqual = $pUnqual|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $iDb = 0, $vararg_buffer1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer1 = sp; + $0 = sp + 28|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $4 = sp + 16|0; + $iDb = sp + 20|0; + $db = sp + 24|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pName1; + HEAP32[$3>>2] = $pName2; + HEAP32[$4>>2] = $pUnqual; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$3>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = HEAP32[$3>>2]|0; + $10 = (($9) + 4|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11>>>0)>(0); + if ($12) { + $13 = HEAP32[$db>>2]|0; + $14 = (($13) + 132|0); + $15 = (($14) + 5|0); + $16 = HEAP8[$15>>0]|0; + $17 = ($16<<24>>24)!=(0); + if ($17) { + $18 = HEAP32[$1>>2]|0; + _sqlite3ErrorMsg($18,24632,$vararg_buffer1); + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 64|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + 1)|0; + HEAP32[$20>>2] = $22; + HEAP32[$0>>2] = -1; + $44 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($44|0); + } + $23 = HEAP32[$3>>2]|0; + $24 = HEAP32[$4>>2]|0; + HEAP32[$24>>2] = $23; + $25 = HEAP32[$db>>2]|0; + $26 = HEAP32[$2>>2]|0; + $27 = (_sqlite3FindDb($25,$26)|0); + HEAP32[$iDb>>2] = $27; + $28 = HEAP32[$iDb>>2]|0; + $29 = ($28|0)<(0); + if ($29) { + $30 = HEAP32[$1>>2]|0; + $31 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer1>>2] = $31; + _sqlite3ErrorMsg($30,24656,$vararg_buffer1); + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 64|0); + $34 = HEAP32[$33>>2]|0; + $35 = (($34) + 1)|0; + HEAP32[$33>>2] = $35; + HEAP32[$0>>2] = -1; + $44 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($44|0); + } + } else { + label = 7; + } + } else { + label = 7; + } + if ((label|0) == 7) { + $36 = HEAP32[$db>>2]|0; + $37 = (($36) + 132|0); + $38 = (($37) + 4|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39&255; + HEAP32[$iDb>>2] = $40; + $41 = HEAP32[$2>>2]|0; + $42 = HEAP32[$4>>2]|0; + HEAP32[$42>>2] = $41; + } + $43 = HEAP32[$iDb>>2]|0; + HEAP32[$0>>2] = $43; + $44 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($44|0); +} +function _openStatTable($pParse,$iDb,$iStatCur,$zWhere,$zWhereType) { + $pParse = $pParse|0; + $iDb = $iDb|0; + $iStatCur = $iStatCur|0; + $zWhere = $zWhere|0; + $zWhereType = $zWhereType|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $aCreateTbl = 0, $aRoot = 0, $db = 0, $i = 0, $pDb = 0, $pStat = 0; + var $v = 0, $vararg_buffer3 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, $zTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer3 = sp; + $0 = sp + 64|0; + $1 = sp + 60|0; + $2 = sp + 56|0; + $3 = sp + 52|0; + $4 = sp + 48|0; + $i = sp + 40|0; + $db = sp + 68|0; + $pDb = sp + 32|0; + $v = sp + 28|0; + $aRoot = sp + 16|0; + $aCreateTbl = sp + 72|0; + $zTab = sp + 44|0; + $pStat = sp + 36|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iDb; + HEAP32[$2>>2] = $iStatCur; + HEAP32[$3>>2] = $zWhere; + HEAP32[$4>>2] = $zWhereType; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = (_sqlite3GetVdbe($7)|0); + HEAP32[$v>>2] = $8; + $9 = HEAP32[$v>>2]|0; + $10 = ($9|0)==(0|0); + if ($10) { + STACKTOP = sp;return; + } + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$db>>2]|0; + $13 = (($12) + 16|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + ($11<<4)|0); + HEAP32[$pDb>>2] = $15; + HEAP32[$i>>2] = 0; + while(1) { + $16 = HEAP32[$i>>2]|0; + $17 = ($16|0)<(3); + if (!($17)) { + break; + } + $18 = HEAP32[$i>>2]|0; + $19 = (24888 + ($18<<3)|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$zTab>>2] = $20; + $21 = HEAP32[$db>>2]|0; + $22 = HEAP32[$zTab>>2]|0; + $23 = HEAP32[$pDb>>2]|0; + $24 = HEAP32[$23>>2]|0; + $25 = (_sqlite3FindTable($21,$22,$24)|0); + HEAP32[$pStat>>2] = $25; + $26 = ($25|0)==(0|0); + do { + if ($26) { + $27 = HEAP32[$i>>2]|0; + $28 = (24888 + ($27<<3)|0); + $29 = (($28) + 4|0); + $30 = HEAP32[$29>>2]|0; + $31 = ($30|0)!=(0|0); + if ($31) { + $32 = HEAP32[$0>>2]|0; + $33 = HEAP32[$pDb>>2]|0; + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$zTab>>2]|0; + $36 = HEAP32[$i>>2]|0; + $37 = (24888 + ($36<<3)|0); + $38 = (($37) + 4|0); + $39 = HEAP32[$38>>2]|0; + HEAP32[$vararg_buffer3>>2] = $34; + $vararg_ptr1 = (($vararg_buffer3) + 4|0); + HEAP32[$vararg_ptr1>>2] = $35; + $vararg_ptr2 = (($vararg_buffer3) + 8|0); + HEAP32[$vararg_ptr2>>2] = $39; + _sqlite3NestedParse($32,24976,$vararg_buffer3); + $40 = HEAP32[$0>>2]|0; + $41 = (($40) + 388|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$i>>2]|0; + $44 = (($aRoot) + ($43<<2)|0); + HEAP32[$44>>2] = $42; + $45 = HEAP32[$i>>2]|0; + $46 = (($aCreateTbl) + ($45)|0); + HEAP8[$46>>0] = 2; + } + } else { + $47 = HEAP32[$pStat>>2]|0; + $48 = (($47) + 32|0); + $49 = HEAP32[$48>>2]|0; + $50 = HEAP32[$i>>2]|0; + $51 = (($aRoot) + ($50<<2)|0); + HEAP32[$51>>2] = $49; + $52 = HEAP32[$i>>2]|0; + $53 = (($aCreateTbl) + ($52)|0); + HEAP8[$53>>0] = 0; + $54 = HEAP32[$0>>2]|0; + $55 = HEAP32[$1>>2]|0; + $56 = HEAP32[$i>>2]|0; + $57 = (($aRoot) + ($56<<2)|0); + $58 = HEAP32[$57>>2]|0; + $59 = HEAP32[$zTab>>2]|0; + _sqlite3TableLock($54,$55,$58,1,$59); + $60 = HEAP32[$3>>2]|0; + $61 = ($60|0)!=(0|0); + if ($61) { + $62 = HEAP32[$0>>2]|0; + $63 = HEAP32[$pDb>>2]|0; + $64 = HEAP32[$63>>2]|0; + $65 = HEAP32[$zTab>>2]|0; + $66 = HEAP32[$4>>2]|0; + $67 = HEAP32[$3>>2]|0; + HEAP32[$vararg_buffer3>>2] = $64; + $vararg_ptr6 = (($vararg_buffer3) + 4|0); + HEAP32[$vararg_ptr6>>2] = $65; + $vararg_ptr7 = (($vararg_buffer3) + 8|0); + HEAP32[$vararg_ptr7>>2] = $66; + $vararg_ptr8 = (($vararg_buffer3) + 12|0); + HEAP32[$vararg_ptr8>>2] = $67; + _sqlite3NestedParse($62,25000,$vararg_buffer3); + break; + } else { + $68 = HEAP32[$v>>2]|0; + $69 = HEAP32[$i>>2]|0; + $70 = (($aRoot) + ($69<<2)|0); + $71 = HEAP32[$70>>2]|0; + $72 = HEAP32[$1>>2]|0; + (_sqlite3VdbeAddOp2($68,115,$71,$72)|0); + break; + } + } + } while(0); + $73 = HEAP32[$i>>2]|0; + $74 = (($73) + 1)|0; + HEAP32[$i>>2] = $74; + } + HEAP32[$i>>2] = 0; + while(1) { + $75 = HEAP32[$i>>2]|0; + $76 = (24888 + ($75<<3)|0); + $77 = (($76) + 4|0); + $78 = HEAP32[$77>>2]|0; + $79 = ($78|0)!=(0|0); + if (!($79)) { + break; + } + $80 = HEAP32[$v>>2]|0; + $81 = HEAP32[$2>>2]|0; + $82 = HEAP32[$i>>2]|0; + $83 = (($81) + ($82))|0; + $84 = HEAP32[$i>>2]|0; + $85 = (($aRoot) + ($84<<2)|0); + $86 = HEAP32[$85>>2]|0; + $87 = HEAP32[$1>>2]|0; + (_sqlite3VdbeAddOp4Int($80,53,$83,$86,$87,3)|0); + $88 = HEAP32[$v>>2]|0; + $89 = HEAP32[$i>>2]|0; + $90 = (($aCreateTbl) + ($89)|0); + $91 = HEAP8[$90>>0]|0; + _sqlite3VdbeChangeP5($88,$91); + $92 = HEAP32[$i>>2]|0; + $93 = (($92) + 1)|0; + HEAP32[$i>>2] = $93; + } + STACKTOP = sp;return; +} +function _analyzeOneTable($pParse,$pTab,$pOnlyIdx,$iStatCur,$iMem,$iTab) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $pOnlyIdx = $pOnlyIdx|0; + $iStatCur = $iStatCur|0; + $iMem = $iMem|0; + $iTab = $iTab|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aGotoChng = 0; + var $addrGotoChng0 = 0, $addrNextRow = 0, $addrRewind = 0, $db = 0, $i = 0, $iDb = 0, $iIdxCur = 0, $iTabCur = 0, $jZeroRows = 0, $nCol = 0, $needTableCnt = 0, $pColl = 0, $pIdx = 0, $regChng = 0, $regIdxname = 0, $regNewRowid = 0, $regPrev = 0, $regStat1 = 0, $regStat4 = 0, $regTabname = 0; + var $regTemp = 0, $v = 0, $zIdxName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $0 = sp + 84|0; + $1 = sp + 60|0; + $2 = sp + 64|0; + $3 = sp + 68|0; + $4 = sp + 72|0; + $5 = sp + 76|0; + $db = sp + 80|0; + $pIdx = sp + 88|0; + $iIdxCur = sp + 92|0; + $iTabCur = sp + 96|0; + $v = sp + 100|0; + $i = sp + 104|0; + $jZeroRows = sp + 108|0; + $iDb = sp + 112|0; + $needTableCnt = sp + 116|0; + $regNewRowid = sp + 56|0; + $regStat4 = sp + 20|0; + $regChng = sp; + $regTemp = sp + 4|0; + $regTabname = sp + 8|0; + $regIdxname = sp + 12|0; + $regStat1 = sp + 16|0; + $regPrev = sp + 24|0; + $nCol = sp + 28|0; + $aGotoChng = sp + 32|0; + $addrRewind = sp + 36|0; + $addrGotoChng0 = sp + 40|0; + $addrNextRow = sp + 44|0; + $zIdxName = sp + 48|0; + $pColl = sp + 52|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $pOnlyIdx; + HEAP32[$3>>2] = $iStatCur; + HEAP32[$4>>2] = $iMem; + HEAP32[$5>>2] = $iTab; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$db>>2] = $7; + HEAP32[$jZeroRows>>2] = -1; + HEAP8[$needTableCnt>>0] = 1; + $8 = HEAP32[$4>>2]|0; + $9 = (($8) + 1)|0; + HEAP32[$4>>2] = $9; + HEAP32[$regNewRowid>>2] = $8; + $10 = HEAP32[$4>>2]|0; + $11 = (($10) + 1)|0; + HEAP32[$4>>2] = $11; + HEAP32[$regStat4>>2] = $10; + $12 = HEAP32[$4>>2]|0; + $13 = (($12) + 1)|0; + HEAP32[$4>>2] = $13; + HEAP32[$regChng>>2] = $12; + $14 = HEAP32[$4>>2]|0; + $15 = (($14) + 1)|0; + HEAP32[$4>>2] = $15; + HEAP32[$regTemp>>2] = $14; + $16 = HEAP32[$4>>2]|0; + $17 = (($16) + 1)|0; + HEAP32[$4>>2] = $17; + HEAP32[$regTabname>>2] = $16; + $18 = HEAP32[$4>>2]|0; + $19 = (($18) + 1)|0; + HEAP32[$4>>2] = $19; + HEAP32[$regIdxname>>2] = $18; + $20 = HEAP32[$4>>2]|0; + $21 = (($20) + 1)|0; + HEAP32[$4>>2] = $21; + HEAP32[$regStat1>>2] = $20; + $22 = HEAP32[$4>>2]|0; + HEAP32[$regPrev>>2] = $22; + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 72|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$4>>2]|0; + $27 = ($25|0)>($26|0); + if ($27) { + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 72|0); + $30 = HEAP32[$29>>2]|0; + $34 = $30; + } else { + $31 = HEAP32[$4>>2]|0; + $34 = $31; + } + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 72|0); + HEAP32[$33>>2] = $34; + $35 = HEAP32[$0>>2]|0; + $36 = (_sqlite3GetVdbe($35)|0); + HEAP32[$v>>2] = $36; + $37 = HEAP32[$v>>2]|0; + $38 = ($37|0)==(0|0); + if ($38) { + STACKTOP = sp;return; + } + $39 = HEAP32[$1>>2]|0; + $40 = ($39|0)==(0|0); + if ($40) { + STACKTOP = sp;return; + } + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 32|0); + $43 = HEAP32[$42>>2]|0; + $44 = ($43|0)==(0); + if ($44) { + STACKTOP = sp;return; + } + $45 = HEAP32[$1>>2]|0; + $46 = HEAP32[$45>>2]|0; + $47 = (_sqlite3_strnicmp($46,21672,7)|0); + $48 = ($47|0)==(0); + if ($48) { + STACKTOP = sp;return; + } + $49 = HEAP32[$db>>2]|0; + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 68|0); + $52 = HEAP32[$51>>2]|0; + $53 = (_sqlite3SchemaToIndex($49,$52)|0); + HEAP32[$iDb>>2] = $53; + $54 = HEAP32[$0>>2]|0; + $55 = HEAP32[$1>>2]|0; + $56 = HEAP32[$55>>2]|0; + $57 = HEAP32[$iDb>>2]|0; + $58 = HEAP32[$db>>2]|0; + $59 = (($58) + 16|0); + $60 = HEAP32[$59>>2]|0; + $61 = (($60) + ($57<<4)|0); + $62 = HEAP32[$61>>2]|0; + $63 = (_sqlite3AuthCheck($54,28,$56,0,$62)|0); + $64 = ($63|0)!=(0); + if ($64) { + STACKTOP = sp;return; + } + $65 = HEAP32[$0>>2]|0; + $66 = HEAP32[$iDb>>2]|0; + $67 = HEAP32[$1>>2]|0; + $68 = (($67) + 32|0); + $69 = HEAP32[$68>>2]|0; + $70 = HEAP32[$1>>2]|0; + $71 = HEAP32[$70>>2]|0; + _sqlite3TableLock($65,$66,$69,0,$71); + $72 = HEAP32[$5>>2]|0; + $73 = (($72) + 1)|0; + HEAP32[$5>>2] = $73; + HEAP32[$iTabCur>>2] = $72; + $74 = HEAP32[$5>>2]|0; + $75 = (($74) + 1)|0; + HEAP32[$5>>2] = $75; + HEAP32[$iIdxCur>>2] = $74; + $76 = HEAP32[$0>>2]|0; + $77 = (($76) + 68|0); + $78 = HEAP32[$77>>2]|0; + $79 = HEAP32[$5>>2]|0; + $80 = ($78|0)>($79|0); + if ($80) { + $81 = HEAP32[$0>>2]|0; + $82 = (($81) + 68|0); + $83 = HEAP32[$82>>2]|0; + $87 = $83; + } else { + $84 = HEAP32[$5>>2]|0; + $87 = $84; + } + $85 = HEAP32[$0>>2]|0; + $86 = (($85) + 68|0); + HEAP32[$86>>2] = $87; + $88 = HEAP32[$0>>2]|0; + $89 = HEAP32[$iTabCur>>2]|0; + $90 = HEAP32[$iDb>>2]|0; + $91 = HEAP32[$1>>2]|0; + _sqlite3OpenTable($88,$89,$90,$91,52); + $92 = HEAP32[$v>>2]|0; + $93 = HEAP32[$regTabname>>2]|0; + $94 = HEAP32[$1>>2]|0; + $95 = HEAP32[$94>>2]|0; + (_sqlite3VdbeAddOp4($92,97,0,$93,0,$95,0)|0); + $96 = HEAP32[$1>>2]|0; + $97 = (($96) + 8|0); + $98 = HEAP32[$97>>2]|0; + HEAP32[$pIdx>>2] = $98; + while(1) { + $99 = HEAP32[$pIdx>>2]|0; + $100 = ($99|0)!=(0|0); + $101 = HEAP32[$2>>2]|0; + if (!($100)) { + break; + } + $102 = ($101|0)!=(0|0); + if ($102) { + $103 = HEAP32[$2>>2]|0; + $104 = HEAP32[$pIdx>>2]|0; + $105 = ($103|0)!=($104|0); + if (!($105)) { + label = 16; + } + } else { + label = 16; + } + if ((label|0) == 16) { + label = 0; + $106 = HEAP32[$pIdx>>2]|0; + $107 = (($106) + 36|0); + $108 = HEAP32[$107>>2]|0; + $109 = ($108|0)==(0|0); + if ($109) { + HEAP8[$needTableCnt>>0] = 0; + } + $110 = HEAP32[$pIdx>>2]|0; + $111 = (($110) + 50|0); + $112 = HEAP16[$111>>1]|0; + $113 = $112&65535; + HEAP32[$nCol>>2] = $113; + $114 = HEAP32[$db>>2]|0; + $115 = HEAP32[$nCol>>2]|0; + $116 = (($115) + 1)|0; + $117 = $116<<2; + $118 = (_sqlite3DbMallocRaw($114,$117)|0); + HEAP32[$aGotoChng>>2] = $118; + $119 = HEAP32[$aGotoChng>>2]|0; + $120 = ($119|0)==(0|0); + if (!($120)) { + $121 = HEAP32[$pIdx>>2]|0; + $122 = (($121) + 55|0); + $123 = HEAP8[$122>>0]|0; + $124 = $123 & 3; + $125 = $124&255; + $126 = ($125|0)==(2); + if ($126) { + $127 = HEAP32[$1>>2]|0; + $128 = (($127) + 44|0); + $129 = HEAP8[$128>>0]|0; + $130 = $129&255; + $131 = $130 & 32; + $132 = ($131|0)==(0); + if ($132) { + label = 22; + } else { + $133 = HEAP32[$1>>2]|0; + $134 = HEAP32[$133>>2]|0; + HEAP32[$zIdxName>>2] = $134; + } + } else { + label = 22; + } + if ((label|0) == 22) { + label = 0; + $135 = HEAP32[$pIdx>>2]|0; + $136 = HEAP32[$135>>2]|0; + HEAP32[$zIdxName>>2] = $136; + } + $137 = HEAP32[$v>>2]|0; + $138 = HEAP32[$regIdxname>>2]|0; + $139 = HEAP32[$zIdxName>>2]|0; + (_sqlite3VdbeAddOp4($137,97,0,$138,0,$139,0)|0); + $140 = HEAP32[$0>>2]|0; + $141 = (($140) + 72|0); + $142 = HEAP32[$141>>2]|0; + $143 = HEAP32[$regPrev>>2]|0; + $144 = HEAP32[$nCol>>2]|0; + $145 = (($143) + ($144))|0; + $146 = ($142|0)>($145|0); + if ($146) { + $147 = HEAP32[$0>>2]|0; + $148 = (($147) + 72|0); + $149 = HEAP32[$148>>2]|0; + $155 = $149; + } else { + $150 = HEAP32[$regPrev>>2]|0; + $151 = HEAP32[$nCol>>2]|0; + $152 = (($150) + ($151))|0; + $155 = $152; + } + $153 = HEAP32[$0>>2]|0; + $154 = (($153) + 72|0); + HEAP32[$154>>2] = $155; + $156 = HEAP32[$v>>2]|0; + $157 = HEAP32[$iIdxCur>>2]|0; + $158 = HEAP32[$pIdx>>2]|0; + $159 = (($158) + 44|0); + $160 = HEAP32[$159>>2]|0; + $161 = HEAP32[$iDb>>2]|0; + (_sqlite3VdbeAddOp3($156,52,$157,$160,$161)|0); + $162 = HEAP32[$0>>2]|0; + $163 = HEAP32[$pIdx>>2]|0; + _sqlite3VdbeSetP4KeyInfo($162,$163); + $164 = HEAP32[$v>>2]|0; + $165 = HEAP32[$nCol>>2]|0; + $166 = (($165) + 1)|0; + $167 = HEAP32[$regStat4>>2]|0; + $168 = (($167) + 1)|0; + (_sqlite3VdbeAddOp2($164,25,$166,$168)|0); + $169 = HEAP32[$v>>2]|0; + $170 = HEAP32[$regStat4>>2]|0; + $171 = (($170) + 1)|0; + $172 = HEAP32[$regStat4>>2]|0; + (_sqlite3VdbeAddOp3($169,1,0,$171,$172)|0); + $173 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP4($173,-1,24696,-5); + $174 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($174,1); + $175 = HEAP32[$v>>2]|0; + $176 = HEAP32[$iIdxCur>>2]|0; + $177 = (_sqlite3VdbeAddOp1($175,105,$176)|0); + HEAP32[$addrRewind>>2] = $177; + $178 = HEAP32[$v>>2]|0; + $179 = HEAP32[$regChng>>2]|0; + (_sqlite3VdbeAddOp2($178,25,0,$179)|0); + $180 = HEAP32[$v>>2]|0; + $181 = (_sqlite3VdbeAddOp0($180,16)|0); + HEAP32[$addrGotoChng0>>2] = $181; + $182 = HEAP32[$v>>2]|0; + $183 = (_sqlite3VdbeCurrentAddr($182)|0); + HEAP32[$addrNextRow>>2] = $183; + HEAP32[$i>>2] = 0; + while(1) { + $184 = HEAP32[$i>>2]|0; + $185 = HEAP32[$nCol>>2]|0; + $186 = ($184|0)<($185|0); + if (!($186)) { + break; + } + $187 = HEAP32[$0>>2]|0; + $188 = HEAP32[$i>>2]|0; + $189 = HEAP32[$pIdx>>2]|0; + $190 = (($189) + 32|0); + $191 = HEAP32[$190>>2]|0; + $192 = (($191) + ($188<<2)|0); + $193 = HEAP32[$192>>2]|0; + $194 = (_sqlite3LocateCollSeq($187,$193)|0); + HEAP32[$pColl>>2] = $194; + $195 = HEAP32[$v>>2]|0; + $196 = HEAP32[$i>>2]|0; + $197 = HEAP32[$regChng>>2]|0; + (_sqlite3VdbeAddOp2($195,25,$196,$197)|0); + $198 = HEAP32[$v>>2]|0; + $199 = HEAP32[$iIdxCur>>2]|0; + $200 = HEAP32[$i>>2]|0; + $201 = HEAP32[$regTemp>>2]|0; + (_sqlite3VdbeAddOp3($198,46,$199,$200,$201)|0); + $202 = HEAP32[$v>>2]|0; + $203 = HEAP32[$regTemp>>2]|0; + $204 = HEAP32[$regPrev>>2]|0; + $205 = HEAP32[$i>>2]|0; + $206 = (($204) + ($205))|0; + $207 = HEAP32[$pColl>>2]|0; + $208 = (_sqlite3VdbeAddOp4($202,78,$203,0,$206,$207,-4)|0); + $209 = HEAP32[$i>>2]|0; + $210 = HEAP32[$aGotoChng>>2]|0; + $211 = (($210) + ($209<<2)|0); + HEAP32[$211>>2] = $208; + $212 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($212,-128); + $213 = HEAP32[$i>>2]|0; + $214 = (($213) + 1)|0; + HEAP32[$i>>2] = $214; + } + $215 = HEAP32[$v>>2]|0; + $216 = HEAP32[$nCol>>2]|0; + $217 = HEAP32[$regChng>>2]|0; + (_sqlite3VdbeAddOp2($215,25,$216,$217)|0); + $218 = HEAP32[$v>>2]|0; + $219 = (_sqlite3VdbeAddOp0($218,16)|0); + $220 = HEAP32[$nCol>>2]|0; + $221 = HEAP32[$aGotoChng>>2]|0; + $222 = (($221) + ($220<<2)|0); + HEAP32[$222>>2] = $219; + $223 = HEAP32[$v>>2]|0; + $224 = HEAP32[$addrGotoChng0>>2]|0; + _sqlite3VdbeJumpHere($223,$224); + HEAP32[$i>>2] = 0; + while(1) { + $225 = HEAP32[$i>>2]|0; + $226 = HEAP32[$nCol>>2]|0; + $227 = ($225|0)<($226|0); + $228 = HEAP32[$v>>2]|0; + if (!($227)) { + break; + } + $229 = HEAP32[$i>>2]|0; + $230 = HEAP32[$aGotoChng>>2]|0; + $231 = (($230) + ($229<<2)|0); + $232 = HEAP32[$231>>2]|0; + _sqlite3VdbeJumpHere($228,$232); + $233 = HEAP32[$v>>2]|0; + $234 = HEAP32[$iIdxCur>>2]|0; + $235 = HEAP32[$i>>2]|0; + $236 = HEAP32[$regPrev>>2]|0; + $237 = HEAP32[$i>>2]|0; + $238 = (($236) + ($237))|0; + (_sqlite3VdbeAddOp3($233,46,$234,$235,$238)|0); + $239 = HEAP32[$i>>2]|0; + $240 = (($239) + 1)|0; + HEAP32[$i>>2] = $240; + } + $241 = HEAP32[$nCol>>2]|0; + $242 = HEAP32[$aGotoChng>>2]|0; + $243 = (($242) + ($241<<2)|0); + $244 = HEAP32[$243>>2]|0; + _sqlite3VdbeJumpHere($228,$244); + $245 = HEAP32[$v>>2]|0; + $246 = HEAP32[$regStat4>>2]|0; + $247 = HEAP32[$regTemp>>2]|0; + (_sqlite3VdbeAddOp3($245,1,1,$246,$247)|0); + $248 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP4($248,-1,24736,-5); + $249 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($249,2); + $250 = HEAP32[$v>>2]|0; + $251 = HEAP32[$iIdxCur>>2]|0; + $252 = HEAP32[$addrNextRow>>2]|0; + (_sqlite3VdbeAddOp2($250,9,$251,$252)|0); + $253 = HEAP32[$v>>2]|0; + $254 = HEAP32[$regStat4>>2]|0; + $255 = HEAP32[$regStat1>>2]|0; + _callStatGet($253,$254,0,$255); + $256 = HEAP32[$v>>2]|0; + $257 = HEAP32[$regTabname>>2]|0; + $258 = HEAP32[$regTemp>>2]|0; + (_sqlite3VdbeAddOp4($256,48,$257,3,$258,24776,0)|0); + $259 = HEAP32[$v>>2]|0; + $260 = HEAP32[$3>>2]|0; + $261 = HEAP32[$regNewRowid>>2]|0; + (_sqlite3VdbeAddOp2($259,69,$260,$261)|0); + $262 = HEAP32[$v>>2]|0; + $263 = HEAP32[$3>>2]|0; + $264 = HEAP32[$regTemp>>2]|0; + $265 = HEAP32[$regNewRowid>>2]|0; + (_sqlite3VdbeAddOp3($262,70,$263,$264,$265)|0); + $266 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($266,8); + $267 = HEAP32[$v>>2]|0; + $268 = HEAP32[$addrRewind>>2]|0; + _sqlite3VdbeJumpHere($267,$268); + $269 = HEAP32[$db>>2]|0; + $270 = HEAP32[$aGotoChng>>2]|0; + _sqlite3DbFree($269,$270); + } + } + $271 = HEAP32[$pIdx>>2]|0; + $272 = (($271) + 20|0); + $273 = HEAP32[$272>>2]|0; + HEAP32[$pIdx>>2] = $273; + } + $274 = ($101|0)==(0|0); + if (!($274)) { + STACKTOP = sp;return; + } + $275 = HEAP8[$needTableCnt>>0]|0; + $276 = $275&255; + $277 = ($276|0)!=(0); + if (!($277)) { + STACKTOP = sp;return; + } + $278 = HEAP32[$v>>2]|0; + $279 = HEAP32[$iTabCur>>2]|0; + $280 = HEAP32[$regStat1>>2]|0; + (_sqlite3VdbeAddOp2($278,49,$279,$280)|0); + $281 = HEAP32[$v>>2]|0; + $282 = HEAP32[$regStat1>>2]|0; + $283 = (_sqlite3VdbeAddOp1($281,45,$282)|0); + HEAP32[$jZeroRows>>2] = $283; + $284 = HEAP32[$v>>2]|0; + $285 = HEAP32[$regIdxname>>2]|0; + (_sqlite3VdbeAddOp2($284,28,0,$285)|0); + $286 = HEAP32[$v>>2]|0; + $287 = HEAP32[$regTabname>>2]|0; + $288 = HEAP32[$regTemp>>2]|0; + (_sqlite3VdbeAddOp4($286,48,$287,3,$288,24776,0)|0); + $289 = HEAP32[$v>>2]|0; + $290 = HEAP32[$3>>2]|0; + $291 = HEAP32[$regNewRowid>>2]|0; + (_sqlite3VdbeAddOp2($289,69,$290,$291)|0); + $292 = HEAP32[$v>>2]|0; + $293 = HEAP32[$3>>2]|0; + $294 = HEAP32[$regTemp>>2]|0; + $295 = HEAP32[$regNewRowid>>2]|0; + (_sqlite3VdbeAddOp3($292,70,$293,$294,$295)|0); + $296 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($296,8); + $297 = HEAP32[$v>>2]|0; + $298 = HEAP32[$jZeroRows>>2]|0; + _sqlite3VdbeJumpHere($297,$298); + STACKTOP = sp;return; +} +function _loadAnalysis($pParse,$iDb) { + $pParse = $pParse|0; + $iDb = $iDb|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $v = sp + 4|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iDb; + $2 = HEAP32[$0>>2]|0; + $3 = (_sqlite3GetVdbe($2)|0); + HEAP32[$v>>2] = $3; + $4 = HEAP32[$v>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[$v>>2]|0; + $7 = HEAP32[$1>>2]|0; + (_sqlite3VdbeAddOp1($6,120,$7)|0); + STACKTOP = sp;return; +} +function _sqlite3VdbeAddOp1($p,$op,$p1) { + $p = $p|0; + $op = $op|0; + $p1 = $p1|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $op; + HEAP32[$2>>2] = $p1; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = (_sqlite3VdbeAddOp3($3,$4,$5,0,0)|0); + STACKTOP = sp;return ($6|0); +} +function _sqlite3TableLock($pParse,$iDb,$iTab,$isWriteLock,$zName) { + $pParse = $pParse|0; + $iDb = $iDb|0; + $iTab = $iTab|0; + $isWriteLock = $isWriteLock|0; + $zName = $zName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $i = 0, $nBytes = 0, $p = 0, $pToplevel = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 28|0; + $1 = sp + 24|0; + $2 = sp + 20|0; + $3 = sp + 32|0; + $4 = sp + 16|0; + $pToplevel = sp + 8|0; + $i = sp + 4|0; + $nBytes = sp; + $p = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iDb; + HEAP32[$2>>2] = $iTab; + HEAP8[$3>>0] = $isWriteLock; + HEAP32[$4>>2] = $zName; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 408|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + $9 = HEAP32[$0>>2]|0; + if ($8) { + $10 = (($9) + 408|0); + $11 = HEAP32[$10>>2]|0; + $12 = $11; + } else { + $12 = $9; + } + HEAP32[$pToplevel>>2] = $12; + HEAP32[$i>>2] = 0; + while(1) { + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$pToplevel>>2]|0; + $15 = (($14) + 396|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($13|0)<($16|0); + if (!($17)) { + break; + } + $18 = HEAP32[$i>>2]|0; + $19 = HEAP32[$pToplevel>>2]|0; + $20 = (($19) + 400|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + ($18<<4)|0); + HEAP32[$p>>2] = $22; + $23 = HEAP32[$p>>2]|0; + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$1>>2]|0; + $26 = ($24|0)==($25|0); + if ($26) { + $27 = HEAP32[$p>>2]|0; + $28 = (($27) + 4|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$2>>2]|0; + $31 = ($29|0)==($30|0); + if ($31) { + label = 7; + break; + } + } + $45 = HEAP32[$i>>2]|0; + $46 = (($45) + 1)|0; + HEAP32[$i>>2] = $46; + } + if ((label|0) == 7) { + $32 = HEAP32[$p>>2]|0; + $33 = (($32) + 8|0); + $34 = HEAP8[$33>>0]|0; + $35 = $34&255; + $36 = ($35|0)!=(0); + if ($36) { + $41 = 1; + } else { + $37 = HEAP8[$3>>0]|0; + $38 = $37&255; + $39 = ($38|0)!=(0); + $41 = $39; + } + $40 = $41&1; + $42 = $40&255; + $43 = HEAP32[$p>>2]|0; + $44 = (($43) + 8|0); + HEAP8[$44>>0] = $42; + STACKTOP = sp;return; + } + $47 = HEAP32[$pToplevel>>2]|0; + $48 = (($47) + 396|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) + 1)|0; + $51 = $50<<4; + HEAP32[$nBytes>>2] = $51; + $52 = HEAP32[$pToplevel>>2]|0; + $53 = HEAP32[$52>>2]|0; + $54 = HEAP32[$pToplevel>>2]|0; + $55 = (($54) + 400|0); + $56 = HEAP32[$55>>2]|0; + $57 = HEAP32[$nBytes>>2]|0; + $58 = (_sqlite3DbReallocOrFree($53,$56,$57)|0); + $59 = HEAP32[$pToplevel>>2]|0; + $60 = (($59) + 400|0); + HEAP32[$60>>2] = $58; + $61 = HEAP32[$pToplevel>>2]|0; + $62 = (($61) + 400|0); + $63 = HEAP32[$62>>2]|0; + $64 = ($63|0)!=(0|0); + $65 = HEAP32[$pToplevel>>2]|0; + $66 = (($65) + 396|0); + if ($64) { + $67 = HEAP32[$66>>2]|0; + $68 = (($67) + 1)|0; + HEAP32[$66>>2] = $68; + $69 = HEAP32[$pToplevel>>2]|0; + $70 = (($69) + 400|0); + $71 = HEAP32[$70>>2]|0; + $72 = (($71) + ($67<<4)|0); + HEAP32[$p>>2] = $72; + $73 = HEAP32[$1>>2]|0; + $74 = HEAP32[$p>>2]|0; + HEAP32[$74>>2] = $73; + $75 = HEAP32[$2>>2]|0; + $76 = HEAP32[$p>>2]|0; + $77 = (($76) + 4|0); + HEAP32[$77>>2] = $75; + $78 = HEAP8[$3>>0]|0; + $79 = HEAP32[$p>>2]|0; + $80 = (($79) + 8|0); + HEAP8[$80>>0] = $78; + $81 = HEAP32[$4>>2]|0; + $82 = HEAP32[$p>>2]|0; + $83 = (($82) + 12|0); + HEAP32[$83>>2] = $81; + STACKTOP = sp;return; + } else { + HEAP32[$66>>2] = 0; + $84 = HEAP32[$pToplevel>>2]|0; + $85 = HEAP32[$84>>2]|0; + $86 = (($85) + 64|0); + HEAP8[$86>>0] = 1; + STACKTOP = sp;return; + } +} +function _sqlite3OpenTable($pParse,$iCur,$iDb,$pTab,$opcode) { + $pParse = $pParse|0; + $iCur = $iCur|0; + $iDb = $iDb|0; + $pTab = $pTab|0; + $opcode = $opcode|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pPk = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $v = sp + 16|0; + $pPk = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iCur; + HEAP32[$2>>2] = $iDb; + HEAP32[$3>>2] = $pTab; + HEAP32[$4>>2] = $opcode; + $5 = HEAP32[$0>>2]|0; + $6 = (_sqlite3GetVdbe($5)|0); + HEAP32[$v>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$3>>2]|0; + $10 = (($9) + 32|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$4>>2]|0; + $13 = ($12|0)==(53); + $14 = $13 ? 1 : 0; + $15 = $14&255; + $16 = HEAP32[$3>>2]|0; + $17 = HEAP32[$16>>2]|0; + _sqlite3TableLock($7,$8,$11,$15,$17); + $18 = HEAP32[$3>>2]|0; + $19 = (($18) + 44|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = $21 & 32; + $23 = ($22|0)==(0); + if ($23) { + $24 = HEAP32[$v>>2]|0; + $25 = HEAP32[$4>>2]|0; + $26 = HEAP32[$1>>2]|0; + $27 = HEAP32[$3>>2]|0; + $28 = (($27) + 32|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$2>>2]|0; + $31 = HEAP32[$3>>2]|0; + $32 = (($31) + 38|0); + $33 = HEAP16[$32>>1]|0; + $34 = $33 << 16 >> 16; + (_sqlite3VdbeAddOp4Int($24,$25,$26,$29,$30,$34)|0); + STACKTOP = sp;return; + } else { + $35 = HEAP32[$3>>2]|0; + $36 = (_sqlite3PrimaryKeyIndex($35)|0); + HEAP32[$pPk>>2] = $36; + $37 = HEAP32[$v>>2]|0; + $38 = HEAP32[$4>>2]|0; + $39 = HEAP32[$1>>2]|0; + $40 = HEAP32[$pPk>>2]|0; + $41 = (($40) + 44|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp3($37,$38,$39,$42,$43)|0); + $44 = HEAP32[$0>>2]|0; + $45 = HEAP32[$pPk>>2]|0; + _sqlite3VdbeSetP4KeyInfo($44,$45); + STACKTOP = sp;return; + } +} +function _sqlite3VdbeSetP4KeyInfo($pParse,$pIdx) { + $pParse = $pParse|0; + $pIdx = $pIdx|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $v = sp + 4|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pIdx; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 8|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$v>>2] = $4; + $5 = HEAP32[$v>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (_sqlite3KeyInfoOfIndex($6,$7)|0); + _sqlite3VdbeChangeP4($5,-1,$8,-6); + STACKTOP = sp;return; +} +function _sqlite3VdbeCurrentAddr($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 32|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _sqlite3LocateCollSeq($pParse,$zName) { + $pParse = $pParse|0; + $zName = $zName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $enc = 0, $initbusy = 0, $pColl = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 12|0; + $1 = sp; + $db = sp + 4|0; + $enc = sp + 17|0; + $initbusy = sp + 16|0; + $pColl = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $zName; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$db>>2]|0; + $5 = (($4) + 16|0); + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = (($8) + 77|0); + $10 = HEAP8[$9>>0]|0; + HEAP8[$enc>>0] = $10; + $11 = HEAP32[$db>>2]|0; + $12 = (($11) + 132|0); + $13 = (($12) + 5|0); + $14 = HEAP8[$13>>0]|0; + HEAP8[$initbusy>>0] = $14; + $15 = HEAP32[$db>>2]|0; + $16 = HEAP8[$enc>>0]|0; + $17 = HEAP32[$1>>2]|0; + $18 = HEAP8[$initbusy>>0]|0; + $19 = $18&255; + $20 = (_sqlite3FindCollSeq($15,$16,$17,$19)|0); + HEAP32[$pColl>>2] = $20; + $21 = HEAP8[$initbusy>>0]|0; + $22 = ($21<<24>>24)!=(0); + if ($22) { + $34 = HEAP32[$pColl>>2]|0; + STACKTOP = sp;return ($34|0); + } + $23 = HEAP32[$pColl>>2]|0; + $24 = ($23|0)!=(0|0); + if ($24) { + $25 = HEAP32[$pColl>>2]|0; + $26 = (($25) + 12|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)!=(0|0); + if ($28) { + $34 = HEAP32[$pColl>>2]|0; + STACKTOP = sp;return ($34|0); + } + } + $29 = HEAP32[$0>>2]|0; + $30 = HEAP8[$enc>>0]|0; + $31 = HEAP32[$pColl>>2]|0; + $32 = HEAP32[$1>>2]|0; + $33 = (_sqlite3GetCollSeq($29,$30,$31,$32)|0); + HEAP32[$pColl>>2] = $33; + $34 = HEAP32[$pColl>>2]|0; + STACKTOP = sp;return ($34|0); +} +function _callStatGet($v,$regStat4,$iParam,$regOut) { + $v = $v|0; + $regStat4 = $regStat4|0; + $iParam = $iParam|0; + $regOut = $regOut|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $v; + HEAP32[$1>>2] = $regStat4; + HEAP32[$2>>2] = $iParam; + HEAP32[$3>>2] = $regOut; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp3($4,1,0,$5,$6)|0); + $7 = HEAP32[$0>>2]|0; + _sqlite3VdbeChangeP4($7,-1,24784,-5); + $8 = HEAP32[$0>>2]|0; + _sqlite3VdbeChangeP5($8,1); + STACKTOP = sp;return; +} +function _statGet($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $9 = 0, $i = 0, $iVal = 0, $nDistinct = 0, $p = 0, $vararg_buffer1 = 0, $z = 0, $zRet = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer1 = sp + 16|0; + $0 = sp + 40|0; + $1 = sp + 28|0; + $2 = sp + 48|0; + $p = sp + 24|0; + $z = sp + 44|0; + $i = sp + 32|0; + $zRet = sp + 36|0; + $nDistinct = sp; + $iVal = sp + 8|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_blob($4)|0); + HEAP32[$p>>2] = $5; + $6 = HEAP32[$p>>2]|0; + $7 = (($6) + 8|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8*25)|0; + $10 = (_sqlite3MallocZero($9)|0); + HEAP32[$zRet>>2] = $10; + $11 = HEAP32[$zRet>>2]|0; + $12 = ($11|0)==(0|0); + if ($12) { + $13 = HEAP32[$0>>2]|0; + _sqlite3_result_error_nomem($13); + STACKTOP = sp;return; + } + $14 = HEAP32[$zRet>>2]|0; + $15 = HEAP32[$p>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = $vararg_buffer1; + $18 = $17; + HEAP32[$18>>2] = $16; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = 0; + (_sqlite3_snprintf(24,$14,24840,$vararg_buffer1)|0); + $21 = HEAP32[$zRet>>2]|0; + $22 = HEAP32[$zRet>>2]|0; + $23 = (_sqlite3Strlen30($22)|0); + $24 = (($21) + ($23)|0); + HEAP32[$z>>2] = $24; + HEAP32[$i>>2] = 0; + while(1) { + $25 = HEAP32[$i>>2]|0; + $26 = HEAP32[$p>>2]|0; + $27 = (($26) + 8|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) - 1)|0; + $30 = ($25|0)<($29|0); + if (!($30)) { + break; + } + $31 = HEAP32[$i>>2]|0; + $32 = HEAP32[$p>>2]|0; + $33 = (($32) + 16|0); + $34 = (($33) + 4|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + ($31<<2)|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + 1)|0; + $39 = $nDistinct; + $40 = $39; + HEAP32[$40>>2] = $38; + $41 = (($39) + 4)|0; + $42 = $41; + HEAP32[$42>>2] = 0; + $43 = HEAP32[$p>>2]|0; + $44 = HEAP32[$43>>2]|0; + $45 = $nDistinct; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (($45) + 4)|0; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = (_i64Add(($44|0),0,($47|0),($50|0))|0); + $52 = tempRet0; + $53 = (_i64Subtract(($51|0),($52|0),1,0)|0); + $54 = tempRet0; + $55 = $nDistinct; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = (($55) + 4)|0; + $59 = $58; + $60 = HEAP32[$59>>2]|0; + $61 = (___udivdi3(($53|0),($54|0),($57|0),($60|0))|0); + $62 = tempRet0; + $63 = $iVal; + $64 = $63; + HEAP32[$64>>2] = $61; + $65 = (($63) + 4)|0; + $66 = $65; + HEAP32[$66>>2] = $62; + $67 = HEAP32[$z>>2]|0; + $68 = $iVal; + $69 = $68; + $70 = HEAP32[$69>>2]|0; + $71 = (($68) + 4)|0; + $72 = $71; + $73 = HEAP32[$72>>2]|0; + $74 = $vararg_buffer1; + $75 = $74; + HEAP32[$75>>2] = $70; + $76 = (($74) + 4)|0; + $77 = $76; + HEAP32[$77>>2] = $73; + (_sqlite3_snprintf(24,$67,24848,$vararg_buffer1)|0); + $78 = HEAP32[$z>>2]|0; + $79 = (_sqlite3Strlen30($78)|0); + $80 = HEAP32[$z>>2]|0; + $81 = (($80) + ($79)|0); + HEAP32[$z>>2] = $81; + $82 = HEAP32[$i>>2]|0; + $83 = (($82) + 1)|0; + HEAP32[$i>>2] = $83; + } + $84 = HEAP32[$0>>2]|0; + $85 = HEAP32[$zRet>>2]|0; + _sqlite3_result_text($84,$85,-1,13); + STACKTOP = sp;return; +} +function _statPush($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $7 = 0, $8 = 0, $9 = 0, $i = 0, $iChng = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + $p = sp + 12|0; + $iChng = sp + 16|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_blob($4)|0); + HEAP32[$p>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3_value_int($8)|0); + HEAP32[$iChng>>2] = $9; + $10 = HEAP32[$p>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)==(0); + if ($12) { + HEAP32[$i>>2] = 0; + while(1) { + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 8|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($13|0)<($16|0); + if (!($17)) { + break; + } + $18 = HEAP32[$i>>2]|0; + $19 = HEAP32[$p>>2]|0; + $20 = (($19) + 16|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + ($18<<2)|0); + HEAP32[$22>>2] = 1; + $23 = HEAP32[$i>>2]|0; + $24 = (($23) + 1)|0; + HEAP32[$i>>2] = $24; + } + $60 = HEAP32[$p>>2]|0; + $61 = HEAP32[$60>>2]|0; + $62 = (($61) + 1)|0; + HEAP32[$60>>2] = $62; + STACKTOP = sp;return; + } + $25 = HEAP32[$p>>2]|0; + $26 = HEAP32[$iChng>>2]|0; + _samplePushPrevious($25,$26); + HEAP32[$i>>2] = 0; + while(1) { + $27 = HEAP32[$i>>2]|0; + $28 = HEAP32[$iChng>>2]|0; + $29 = ($27|0)<($28|0); + if (!($29)) { + break; + } + $30 = HEAP32[$i>>2]|0; + $31 = HEAP32[$p>>2]|0; + $32 = (($31) + 16|0); + $33 = HEAP32[$32>>2]|0; + $34 = (($33) + ($30<<2)|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + 1)|0; + HEAP32[$34>>2] = $36; + $37 = HEAP32[$i>>2]|0; + $38 = (($37) + 1)|0; + HEAP32[$i>>2] = $38; + } + $39 = HEAP32[$iChng>>2]|0; + HEAP32[$i>>2] = $39; + while(1) { + $40 = HEAP32[$i>>2]|0; + $41 = HEAP32[$p>>2]|0; + $42 = (($41) + 8|0); + $43 = HEAP32[$42>>2]|0; + $44 = ($40|0)<($43|0); + if (!($44)) { + break; + } + $45 = HEAP32[$i>>2]|0; + $46 = HEAP32[$p>>2]|0; + $47 = (($46) + 16|0); + $48 = (($47) + 4|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) + ($45<<2)|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + 1)|0; + HEAP32[$50>>2] = $52; + $53 = HEAP32[$i>>2]|0; + $54 = HEAP32[$p>>2]|0; + $55 = (($54) + 16|0); + $56 = HEAP32[$55>>2]|0; + $57 = (($56) + ($53<<2)|0); + HEAP32[$57>>2] = 1; + $58 = HEAP32[$i>>2]|0; + $59 = (($58) + 1)|0; + HEAP32[$i>>2] = $59; + } + $60 = HEAP32[$p>>2]|0; + $61 = HEAP32[$60>>2]|0; + $62 = (($61) + 1)|0; + HEAP32[$60>>2] = $62; + STACKTOP = sp;return; +} +function _samplePushPrevious($p,$iChng) { + $p = $p|0; + $iChng = $iChng|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iChng; + STACKTOP = sp;return; +} +function _statInit($context,$argc,$argv) { + $context = $context|0; + $argc = $argc|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $n = 0, $nCol = 0, $nColUp = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + $nCol = sp + 12|0; + $nColUp = sp + 16|0; + $n = sp + 20|0; + $db = sp + 24|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $argc; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_int($4)|0); + HEAP32[$nCol>>2] = $5; + $6 = HEAP32[$nCol>>2]|0; + $7 = (($6) + 1)|0; + $8 = $7 & -2; + HEAP32[$nColUp>>2] = $8; + $9 = HEAP32[$nColUp>>2]|0; + $10 = $9<<2; + $11 = (52 + ($10))|0; + $12 = HEAP32[$nColUp>>2]|0; + $13 = $12<<2; + $14 = (($11) + ($13))|0; + HEAP32[$n>>2] = $14; + $15 = HEAP32[$0>>2]|0; + $16 = (_sqlite3_context_db_handle($15)|0); + HEAP32[$db>>2] = $16; + $17 = HEAP32[$db>>2]|0; + $18 = HEAP32[$n>>2]|0; + $19 = (_sqlite3DbMallocZero($17,$18)|0); + HEAP32[$p>>2] = $19; + $20 = HEAP32[$p>>2]|0; + $21 = ($20|0)==(0|0); + if ($21) { + $22 = HEAP32[$0>>2]|0; + _sqlite3_result_error_nomem($22); + STACKTOP = sp;return; + } else { + $23 = HEAP32[$db>>2]|0; + $24 = HEAP32[$p>>2]|0; + $25 = (($24) + 48|0); + HEAP32[$25>>2] = $23; + $26 = HEAP32[$p>>2]|0; + HEAP32[$26>>2] = 0; + $27 = HEAP32[$nCol>>2]|0; + $28 = HEAP32[$p>>2]|0; + $29 = (($28) + 8|0); + HEAP32[$29>>2] = $27; + $30 = HEAP32[$p>>2]|0; + $31 = (($30) + 52|0); + $32 = HEAP32[$p>>2]|0; + $33 = (($32) + 16|0); + $34 = (($33) + 4|0); + HEAP32[$34>>2] = $31; + $35 = HEAP32[$nColUp>>2]|0; + $36 = HEAP32[$p>>2]|0; + $37 = (($36) + 16|0); + $38 = (($37) + 4|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + ($35<<2)|0); + $41 = HEAP32[$p>>2]|0; + $42 = (($41) + 16|0); + HEAP32[$42>>2] = $40; + $43 = HEAP32[$0>>2]|0; + $44 = HEAP32[$p>>2]|0; + _sqlite3_result_blob($43,$44,4,17); + STACKTOP = sp;return; + } +} +function _stat4Destructor($pOld) { + $pOld = $pOld|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pOld; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + $2 = HEAP32[$p>>2]|0; + $3 = (($2) + 48|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$p>>2]|0; + _sqlite3DbFree($4,$5); + STACKTOP = sp;return; +} +function _sqlite3KeyInfoOfIndex($pParse,$pIdx) { + $pParse = $pParse|0; + $pIdx = $pIdx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $i = 0; + var $nCol = 0, $nKey = 0, $pKey = 0, $zColl = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + $nCol = sp + 12|0; + $nKey = sp + 16|0; + $pKey = sp + 20|0; + $zColl = sp + 24|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pIdx; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 64|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0); + if ($6) { + HEAP32[$0>>2] = 0; + $98 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($98|0); + } + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 40|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 40|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 12|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = ($15|0)!=($17|0); + if ($18) { + $19 = HEAP32[$2>>2]|0; + $20 = (($19) + 40|0); + $21 = HEAP32[$20>>2]|0; + _sqlite3KeyInfoUnref($21); + $22 = HEAP32[$2>>2]|0; + $23 = (($22) + 40|0); + HEAP32[$23>>2] = 0; + } + } + $24 = HEAP32[$2>>2]|0; + $25 = (($24) + 40|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)==(0|0); + do { + if ($27) { + $28 = HEAP32[$2>>2]|0; + $29 = (($28) + 52|0); + $30 = HEAP16[$29>>1]|0; + $31 = $30&65535; + HEAP32[$nCol>>2] = $31; + $32 = HEAP32[$2>>2]|0; + $33 = (($32) + 50|0); + $34 = HEAP16[$33>>1]|0; + $35 = $34&65535; + HEAP32[$nKey>>2] = $35; + $36 = HEAP32[$2>>2]|0; + $37 = (($36) + 55|0); + $38 = HEAP8[$37>>0]|0; + $39 = ($38&255) >>> 3; + $40 = $39 & 1; + $41 = $40&255; + $42 = ($41|0)!=(0); + $43 = HEAP32[$1>>2]|0; + $44 = HEAP32[$43>>2]|0; + if ($42) { + $45 = HEAP32[$nKey>>2]|0; + $46 = HEAP32[$nCol>>2]|0; + $47 = HEAP32[$nKey>>2]|0; + $48 = (($46) - ($47))|0; + $49 = (_sqlite3KeyInfoAlloc($44,$45,$48)|0); + HEAP32[$pKey>>2] = $49; + } else { + $50 = HEAP32[$nCol>>2]|0; + $51 = (_sqlite3KeyInfoAlloc($44,$50,0)|0); + HEAP32[$pKey>>2] = $51; + } + $52 = HEAP32[$pKey>>2]|0; + $53 = ($52|0)!=(0|0); + if ($53) { + HEAP32[$i>>2] = 0; + while(1) { + $54 = HEAP32[$i>>2]|0; + $55 = HEAP32[$nCol>>2]|0; + $56 = ($54|0)<($55|0); + if (!($56)) { + break; + } + $57 = HEAP32[$i>>2]|0; + $58 = HEAP32[$2>>2]|0; + $59 = (($58) + 32|0); + $60 = HEAP32[$59>>2]|0; + $61 = (($60) + ($57<<2)|0); + $62 = HEAP32[$61>>2]|0; + HEAP32[$zColl>>2] = $62; + $63 = HEAP32[$zColl>>2]|0; + $64 = (_strcmp($63,3640)|0); + $65 = ($64|0)==(0); + if ($65) { + $73 = 0; + } else { + $66 = HEAP32[$1>>2]|0; + $67 = HEAP32[$zColl>>2]|0; + $68 = (_sqlite3LocateCollSeq($66,$67)|0); + $73 = $68; + } + $69 = HEAP32[$i>>2]|0; + $70 = HEAP32[$pKey>>2]|0; + $71 = (($70) + 20|0); + $72 = (($71) + ($69<<2)|0); + HEAP32[$72>>2] = $73; + $74 = HEAP32[$i>>2]|0; + $75 = HEAP32[$2>>2]|0; + $76 = (($75) + 28|0); + $77 = HEAP32[$76>>2]|0; + $78 = (($77) + ($74)|0); + $79 = HEAP8[$78>>0]|0; + $80 = HEAP32[$i>>2]|0; + $81 = HEAP32[$pKey>>2]|0; + $82 = (($81) + 16|0); + $83 = HEAP32[$82>>2]|0; + $84 = (($83) + ($80)|0); + HEAP8[$84>>0] = $79; + $85 = HEAP32[$i>>2]|0; + $86 = (($85) + 1)|0; + HEAP32[$i>>2] = $86; + } + $87 = HEAP32[$1>>2]|0; + $88 = (($87) + 64|0); + $89 = HEAP32[$88>>2]|0; + $90 = ($89|0)!=(0); + $91 = HEAP32[$pKey>>2]|0; + if ($90) { + _sqlite3KeyInfoUnref($91); + break; + } else { + $92 = HEAP32[$2>>2]|0; + $93 = (($92) + 40|0); + HEAP32[$93>>2] = $91; + break; + } + } + } + } while(0); + $94 = HEAP32[$2>>2]|0; + $95 = (($94) + 40|0); + $96 = HEAP32[$95>>2]|0; + $97 = (_sqlite3KeyInfoRef($96)|0); + HEAP32[$0>>2] = $97; + $98 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($98|0); +} +function _sqlite3KeyInfoAlloc($db,$N,$X) { + $db = $db|0; + $N = $N|0; + $X = $X|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $N; + HEAP32[$2>>2] = $X; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = (($3) + ($4))|0; + $6 = ($5*5)|0; + $7 = (24 + ($6))|0; + $8 = (_sqlite3DbMallocZero(0,$7)|0); + HEAP32[$p>>2] = $8; + $9 = HEAP32[$p>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = (($11) + ($12))|0; + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 20|0); + $16 = (($15) + ($13<<2)|0); + $17 = HEAP32[$p>>2]|0; + $18 = (($17) + 16|0); + HEAP32[$18>>2] = $16; + $19 = HEAP32[$1>>2]|0; + $20 = $19&65535; + $21 = HEAP32[$p>>2]|0; + $22 = (($21) + 6|0); + HEAP16[$22>>1] = $20; + $23 = HEAP32[$2>>2]|0; + $24 = $23&65535; + $25 = HEAP32[$p>>2]|0; + $26 = (($25) + 8|0); + HEAP16[$26>>1] = $24; + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 16|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + 12|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + 77|0); + $33 = HEAP8[$32>>0]|0; + $34 = HEAP32[$p>>2]|0; + $35 = (($34) + 4|0); + HEAP8[$35>>0] = $33; + $36 = HEAP32[$0>>2]|0; + $37 = HEAP32[$p>>2]|0; + $38 = (($37) + 12|0); + HEAP32[$38>>2] = $36; + $39 = HEAP32[$p>>2]|0; + HEAP32[$39>>2] = 1; + $42 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($42|0); + } else { + $40 = HEAP32[$0>>2]|0; + $41 = (($40) + 64|0); + HEAP8[$41>>0] = 1; + $42 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($42|0); + } + return 0|0; +} +function _sqlite3KeyInfoRef($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if ($2) { + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 1)|0; + HEAP32[$3>>2] = $5; + } + $6 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($6|0); +} +function _sqlite3PrimaryKeyIndex($pTab) { + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pTab; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $3; + while(1) { + $4 = HEAP32[$p>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + label = 5; + break; + } + $6 = HEAP32[$p>>2]|0; + $7 = (($6) + 55|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8 & 3; + $10 = $9&255; + $11 = ($10|0)==(2); + $12 = $11 ^ 1; + if (!($12)) { + label = 5; + break; + } + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 20|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$p>>2] = $15; + } + if ((label|0) == 5) { + $16 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($16|0); + } + return 0|0; +} +function _sqlite3DbReallocOrFree($db,$p,$n) { + $db = $db|0; + $p = $p|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pNew = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $n; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = (_sqlite3DbRealloc($3,$4,$5)|0); + HEAP32[$pNew>>2] = $6; + $7 = HEAP32[$pNew>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $11 = HEAP32[$pNew>>2]|0; + STACKTOP = sp;return ($11|0); + } + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$1>>2]|0; + _sqlite3DbFree($9,$10); + $11 = HEAP32[$pNew>>2]|0; + STACKTOP = sp;return ($11|0); +} +function _sqlite3Init($db,$pzErrMsg) { + $db = $db|0; + $pzErrMsg = $pzErrMsg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $8 = 0, $9 = 0, $commit_internal = 0, $i = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $i = sp + 4|0; + $rc = sp + 8|0; + $commit_internal = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pzErrMsg; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 24|0); + $4 = HEAP32[$3>>2]|0; + $5 = $4 & 2; + $6 = ($5|0)!=(0); + $7 = $6 ^ 1; + $8 = $7&1; + HEAP32[$commit_internal>>2] = $8; + HEAP32[$rc>>2] = 0; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 132|0); + $11 = (($10) + 5|0); + HEAP8[$11>>0] = 1; + HEAP32[$i>>2] = 0; + while(1) { + $12 = HEAP32[$rc>>2]|0; + $13 = ($12|0)==(0); + if (!($13)) { + break; + } + $14 = HEAP32[$i>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 20|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($14|0)<($17|0); + if (!($18)) { + break; + } + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 16|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + ($19<<4)|0); + $24 = (($23) + 12|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + 78|0); + $27 = HEAP16[$26>>1]|0; + $28 = $27&65535; + $29 = $28 & 1; + $30 = ($29|0)==(1); + if (!($30)) { + $31 = HEAP32[$i>>2]|0; + $32 = ($31|0)==(1); + if (!($32)) { + $33 = HEAP32[$0>>2]|0; + $34 = HEAP32[$i>>2]|0; + $35 = HEAP32[$1>>2]|0; + $36 = (_sqlite3InitOne($33,$34,$35)|0); + HEAP32[$rc>>2] = $36; + $37 = HEAP32[$rc>>2]|0; + $38 = ($37|0)!=(0); + if ($38) { + $39 = HEAP32[$0>>2]|0; + $40 = HEAP32[$i>>2]|0; + _sqlite3ResetOneSchema($39,$40); + } + } + } + $41 = HEAP32[$i>>2]|0; + $42 = (($41) + 1)|0; + HEAP32[$i>>2] = $42; + } + $43 = HEAP32[$rc>>2]|0; + $44 = ($43|0)==(0); + if ($44) { + $45 = HEAP32[$0>>2]|0; + $46 = (($45) + 20|0); + $47 = HEAP32[$46>>2]|0; + $48 = ($47|0)>(1); + if ($48) { + $49 = HEAP32[$0>>2]|0; + $50 = (($49) + 16|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + 16|0); + $53 = (($52) + 12|0); + $54 = HEAP32[$53>>2]|0; + $55 = (($54) + 78|0); + $56 = HEAP16[$55>>1]|0; + $57 = $56&65535; + $58 = $57 & 1; + $59 = ($58|0)==(1); + if (!($59)) { + $60 = HEAP32[$0>>2]|0; + $61 = HEAP32[$1>>2]|0; + $62 = (_sqlite3InitOne($60,1,$61)|0); + HEAP32[$rc>>2] = $62; + $63 = HEAP32[$rc>>2]|0; + $64 = ($63|0)!=(0); + if ($64) { + $65 = HEAP32[$0>>2]|0; + _sqlite3ResetOneSchema($65,1); + } + } + } + } + $66 = HEAP32[$0>>2]|0; + $67 = (($66) + 132|0); + $68 = (($67) + 5|0); + HEAP8[$68>>0] = 0; + $69 = HEAP32[$rc>>2]|0; + $70 = ($69|0)==(0); + if (!($70)) { + $74 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($74|0); + } + $71 = HEAP32[$commit_internal>>2]|0; + $72 = ($71|0)!=(0); + if (!($72)) { + $74 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($74|0); + } + $73 = HEAP32[$0>>2]|0; + _sqlite3CommitInternalChanges($73); + $74 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($74|0); +} +function _sqlite3InitOne($db,$iDb,$pzErrMsg) { + $db = $db|0; + $iDb = $iDb|0; + $pzErrMsg = $pzErrMsg|0; + var $$ = 0, $$1 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0; + var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; + var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; + var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; + var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0; + var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0; + var $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0; + var $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0; + var $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0; + var $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0; + var $277 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $azArg = 0, $encoding = 0, $i = 0, $initData = 0, $meta = 0, $openedTransaction = 0, $or$cond = 0, $pDb = 0, $pTab = 0, $rc = 0, $size = 0, $vararg_buffer7 = 0, $vararg_ptr10 = 0, $xAuth = 0, $zMasterName = 0, $zMasterSchema = 0, $zSql = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $vararg_buffer7 = sp; + $0 = sp + 116|0; + $1 = sp + 112|0; + $2 = sp + 108|0; + $3 = sp + 104|0; + $rc = sp + 100|0; + $i = sp + 96|0; + $size = sp + 92|0; + $pTab = sp + 88|0; + $pDb = sp + 120|0; + $azArg = sp + 64|0; + $meta = sp + 40|0; + $initData = sp + 24|0; + $zMasterSchema = sp + 16|0; + $zMasterName = sp + 12|0; + $openedTransaction = sp + 8|0; + $encoding = sp + 124|0; + $zSql = sp + 80|0; + $xAuth = sp + 84|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $iDb; + HEAP32[$3>>2] = $pzErrMsg; + HEAP32[$openedTransaction>>2] = 0; + $4 = HEAP32[$2>>2]|0; + $5 = ($4|0)==(1); + if ($5) { + HEAP32[$zMasterSchema>>2] = 25136; + } else { + HEAP32[$zMasterSchema>>2] = 25032; + } + $6 = HEAP32[$2>>2]|0; + $7 = ($6|0)==(1); + $8 = $7 ? 21432 : 21456; + HEAP32[$zMasterName>>2] = $8; + $9 = HEAP32[$zMasterName>>2]|0; + HEAP32[$azArg>>2] = $9; + $10 = (($azArg) + 4|0); + HEAP32[$10>>2] = 25256; + $11 = HEAP32[$zMasterSchema>>2]|0; + $12 = (($azArg) + 8|0); + HEAP32[$12>>2] = $11; + $13 = (($azArg) + 12|0); + HEAP32[$13>>2] = 0; + $14 = HEAP32[$1>>2]|0; + HEAP32[$initData>>2] = $14; + $15 = HEAP32[$2>>2]|0; + $16 = (($initData) + 8|0); + HEAP32[$16>>2] = $15; + $17 = (($initData) + 12|0); + HEAP32[$17>>2] = 0; + $18 = HEAP32[$3>>2]|0; + $19 = (($initData) + 4|0); + HEAP32[$19>>2] = $18; + (_sqlite3InitCallback($initData,3,$azArg,0)|0); + $20 = (($initData) + 12|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)!=(0); + if ($22) { + $23 = (($initData) + 12|0); + $24 = HEAP32[$23>>2]|0; + HEAP32[$rc>>2] = $24; + } else { + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$zMasterName>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 16|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + ($27<<4)|0); + $32 = HEAP32[$31>>2]|0; + $33 = (_sqlite3FindTable($25,$26,$32)|0); + HEAP32[$pTab>>2] = $33; + $34 = HEAP32[$pTab>>2]|0; + $35 = ($34|0)!=(0|0); + if ($35) { + $36 = HEAP32[$pTab>>2]|0; + $37 = (($36) + 44|0); + $38 = HEAP8[$37>>0]|0; + $39 = $38&255; + $40 = $39 | 1; + $41 = $40&255; + HEAP8[$37>>0] = $41; + } + $42 = HEAP32[$2>>2]|0; + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 16|0); + $45 = HEAP32[$44>>2]|0; + $46 = (($45) + ($42<<4)|0); + HEAP32[$pDb>>2] = $46; + $47 = HEAP32[$pDb>>2]|0; + $48 = (($47) + 4|0); + $49 = HEAP32[$48>>2]|0; + $50 = ($49|0)==(0|0); + if ($50) { + $51 = HEAP32[$2>>2]|0; + $52 = ($51|0)==(1); + if ($52) { + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 16|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + 16|0); + $57 = (($56) + 12|0); + $58 = HEAP32[$57>>2]|0; + $59 = (($58) + 78|0); + $60 = HEAP16[$59>>1]|0; + $61 = $60&65535; + $62 = $61 | 1; + $63 = $62&65535; + HEAP16[$59>>1] = $63; + } + HEAP32[$0>>2] = 0; + $277 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($277|0); + } + $64 = HEAP32[$pDb>>2]|0; + $65 = (($64) + 4|0); + $66 = HEAP32[$65>>2]|0; + _sqlite3BtreeEnter($66); + $67 = HEAP32[$pDb>>2]|0; + $68 = (($67) + 4|0); + $69 = HEAP32[$68>>2]|0; + $70 = (_sqlite3BtreeIsInReadTrans($69)|0); + $71 = ($70|0)!=(0); + do { + if ($71) { + label = 16; + } else { + $72 = HEAP32[$pDb>>2]|0; + $73 = (($72) + 4|0); + $74 = HEAP32[$73>>2]|0; + $75 = (_sqlite3BtreeBeginTrans($74,0)|0); + HEAP32[$rc>>2] = $75; + $76 = HEAP32[$rc>>2]|0; + $77 = ($76|0)!=(0); + if ($77) { + $78 = HEAP32[$3>>2]|0; + $79 = HEAP32[$1>>2]|0; + $80 = HEAP32[$rc>>2]|0; + $81 = (_sqlite3ErrStr($80)|0); + HEAP32[$vararg_buffer7>>2] = $81; + _sqlite3SetString($78,$79,1768,$vararg_buffer7); + break; + } else { + HEAP32[$openedTransaction>>2] = 1; + label = 16; + break; + } + } + } while(0); + L23: do { + if ((label|0) == 16) { + HEAP32[$i>>2] = 0; + while(1) { + $82 = HEAP32[$i>>2]|0; + $83 = ($82|0)<(5); + if (!($83)) { + break; + } + $84 = HEAP32[$pDb>>2]|0; + $85 = (($84) + 4|0); + $86 = HEAP32[$85>>2]|0; + $87 = HEAP32[$i>>2]|0; + $88 = (($87) + 1)|0; + $89 = HEAP32[$i>>2]|0; + $90 = (($meta) + ($89<<2)|0); + _sqlite3BtreeGetMeta($86,$88,$90); + $91 = HEAP32[$i>>2]|0; + $92 = (($91) + 1)|0; + HEAP32[$i>>2] = $92; + } + $93 = HEAP32[$meta>>2]|0; + $94 = HEAP32[$pDb>>2]|0; + $95 = (($94) + 12|0); + $96 = HEAP32[$95>>2]|0; + HEAP32[$96>>2] = $93; + $97 = (($meta) + 16|0); + $98 = HEAP32[$97>>2]|0; + $99 = ($98|0)!=(0); + $100 = HEAP32[$2>>2]|0; + do { + if ($99) { + $101 = ($100|0)==(0); + $102 = (($meta) + 16|0); + $103 = HEAP32[$102>>2]|0; + if ($101) { + $104 = $103&255; + $105 = $104&255; + $106 = $105 & 3; + $107 = $106&255; + HEAP8[$encoding>>0] = $107; + $108 = HEAP8[$encoding>>0]|0; + $109 = $108&255; + $110 = ($109|0)==(0); + $$ = $110 ? 1 : $107; + HEAP8[$encoding>>0] = $$; + $111 = HEAP8[$encoding>>0]|0; + $112 = HEAP32[$1>>2]|0; + $113 = (($112) + 16|0); + $114 = HEAP32[$113>>2]|0; + $115 = (($114) + 12|0); + $116 = HEAP32[$115>>2]|0; + $117 = (($116) + 77|0); + HEAP8[$117>>0] = $111; + break; + } + $118 = HEAP32[$1>>2]|0; + $119 = (($118) + 16|0); + $120 = HEAP32[$119>>2]|0; + $121 = (($120) + 12|0); + $122 = HEAP32[$121>>2]|0; + $123 = (($122) + 77|0); + $124 = HEAP8[$123>>0]|0; + $125 = $124&255; + $126 = ($103|0)!=($125|0); + if ($126) { + $127 = HEAP32[$3>>2]|0; + $128 = HEAP32[$1>>2]|0; + _sqlite3SetString($127,$128,25264,$vararg_buffer7); + HEAP32[$rc>>2] = 1; + break L23; + } + } else { + $129 = HEAP32[$1>>2]|0; + $130 = (($129) + 16|0); + $131 = HEAP32[$130>>2]|0; + $132 = (($131) + ($100<<4)|0); + $133 = (($132) + 12|0); + $134 = HEAP32[$133>>2]|0; + $135 = (($134) + 78|0); + $136 = HEAP16[$135>>1]|0; + $137 = $136&65535; + $138 = $137 | 4; + $139 = $138&65535; + HEAP16[$135>>1] = $139; + } + } while(0); + $140 = HEAP32[$1>>2]|0; + $141 = (($140) + 16|0); + $142 = HEAP32[$141>>2]|0; + $143 = (($142) + 12|0); + $144 = HEAP32[$143>>2]|0; + $145 = (($144) + 77|0); + $146 = HEAP8[$145>>0]|0; + $147 = HEAP32[$pDb>>2]|0; + $148 = (($147) + 12|0); + $149 = HEAP32[$148>>2]|0; + $150 = (($149) + 77|0); + HEAP8[$150>>0] = $146; + $151 = HEAP32[$pDb>>2]|0; + $152 = (($151) + 12|0); + $153 = HEAP32[$152>>2]|0; + $154 = (($153) + 80|0); + $155 = HEAP32[$154>>2]|0; + $156 = ($155|0)==(0); + if ($156) { + $157 = (($meta) + 8|0); + $158 = HEAP32[$157>>2]|0; + $159 = (_sqlite3AbsInt32($158)|0); + HEAP32[$size>>2] = $159; + $160 = HEAP32[$size>>2]|0; + $161 = ($160|0)==(0); + $$1 = $161 ? 2000 : $159; + HEAP32[$size>>2] = $$1; + $162 = HEAP32[$size>>2]|0; + $163 = HEAP32[$pDb>>2]|0; + $164 = (($163) + 12|0); + $165 = HEAP32[$164>>2]|0; + $166 = (($165) + 80|0); + HEAP32[$166>>2] = $162; + $167 = HEAP32[$pDb>>2]|0; + $168 = (($167) + 4|0); + $169 = HEAP32[$168>>2]|0; + $170 = HEAP32[$pDb>>2]|0; + $171 = (($170) + 12|0); + $172 = HEAP32[$171>>2]|0; + $173 = (($172) + 80|0); + $174 = HEAP32[$173>>2]|0; + (_sqlite3BtreeSetCacheSize($169,$174)|0); + } + $175 = (($meta) + 4|0); + $176 = HEAP32[$175>>2]|0; + $177 = $176&255; + $178 = HEAP32[$pDb>>2]|0; + $179 = (($178) + 12|0); + $180 = HEAP32[$179>>2]|0; + $181 = (($180) + 76|0); + HEAP8[$181>>0] = $177; + $182 = HEAP32[$pDb>>2]|0; + $183 = (($182) + 12|0); + $184 = HEAP32[$183>>2]|0; + $185 = (($184) + 76|0); + $186 = HEAP8[$185>>0]|0; + $187 = $186&255; + $188 = ($187|0)==(0); + if ($188) { + $189 = HEAP32[$pDb>>2]|0; + $190 = (($189) + 12|0); + $191 = HEAP32[$190>>2]|0; + $192 = (($191) + 76|0); + HEAP8[$192>>0] = 1; + } + $193 = HEAP32[$pDb>>2]|0; + $194 = (($193) + 12|0); + $195 = HEAP32[$194>>2]|0; + $196 = (($195) + 76|0); + $197 = HEAP8[$196>>0]|0; + $198 = $197&255; + $199 = ($198|0)>(4); + if ($199) { + $200 = HEAP32[$3>>2]|0; + $201 = HEAP32[$1>>2]|0; + _sqlite3SetString($200,$201,25336,$vararg_buffer7); + HEAP32[$rc>>2] = 1; + break; + } + $202 = HEAP32[$2>>2]|0; + $203 = ($202|0)==(0); + if ($203) { + $204 = (($meta) + 4|0); + $205 = HEAP32[$204>>2]|0; + $206 = ($205|0)>=(4); + if ($206) { + $207 = HEAP32[$1>>2]|0; + $208 = (($207) + 24|0); + $209 = HEAP32[$208>>2]|0; + $210 = $209 & -32769; + HEAP32[$208>>2] = $210; + } + } + $211 = HEAP32[$1>>2]|0; + $212 = HEAP32[$2>>2]|0; + $213 = HEAP32[$1>>2]|0; + $214 = (($213) + 16|0); + $215 = HEAP32[$214>>2]|0; + $216 = (($215) + ($212<<4)|0); + $217 = HEAP32[$216>>2]|0; + $218 = HEAP32[$zMasterName>>2]|0; + HEAP32[$vararg_buffer7>>2] = $217; + $vararg_ptr10 = (($vararg_buffer7) + 4|0); + HEAP32[$vararg_ptr10>>2] = $218; + $219 = (_sqlite3MPrintf($211,25360,$vararg_buffer7)|0); + HEAP32[$zSql>>2] = $219; + $220 = HEAP32[$1>>2]|0; + $221 = (($220) + 276|0); + $222 = HEAP32[$221>>2]|0; + HEAP32[$xAuth>>2] = $222; + $223 = HEAP32[$1>>2]|0; + $224 = (($223) + 276|0); + HEAP32[$224>>2] = 0; + $225 = HEAP32[$1>>2]|0; + $226 = HEAP32[$zSql>>2]|0; + $227 = (_sqlite3_exec($225,$226,13,$initData,0)|0); + HEAP32[$rc>>2] = $227; + $228 = HEAP32[$xAuth>>2]|0; + $229 = HEAP32[$1>>2]|0; + $230 = (($229) + 276|0); + HEAP32[$230>>2] = $228; + $231 = HEAP32[$rc>>2]|0; + $232 = ($231|0)==(0); + if ($232) { + $233 = (($initData) + 12|0); + $234 = HEAP32[$233>>2]|0; + HEAP32[$rc>>2] = $234; + } + $235 = HEAP32[$1>>2]|0; + $236 = HEAP32[$zSql>>2]|0; + _sqlite3DbFree($235,$236); + $237 = HEAP32[$rc>>2]|0; + $238 = ($237|0)==(0); + if ($238) { + $239 = HEAP32[$1>>2]|0; + $240 = HEAP32[$2>>2]|0; + (_sqlite3AnalysisLoad($239,$240)|0); + } + $241 = HEAP32[$1>>2]|0; + $242 = (($241) + 64|0); + $243 = HEAP8[$242>>0]|0; + $244 = ($243<<24>>24)!=(0); + if ($244) { + HEAP32[$rc>>2] = 7; + $245 = HEAP32[$1>>2]|0; + _sqlite3ResetAllSchemasOfConnection($245); + } + $246 = HEAP32[$rc>>2]|0; + $247 = ($246|0)==(0); + if (!($247)) { + $248 = HEAP32[$1>>2]|0; + $249 = (($248) + 24|0); + $250 = HEAP32[$249>>2]|0; + $251 = $250 & 65536; + $252 = ($251|0)!=(0); + if (!($252)) { + break; + } + } + $253 = HEAP32[$2>>2]|0; + $254 = HEAP32[$1>>2]|0; + $255 = (($254) + 16|0); + $256 = HEAP32[$255>>2]|0; + $257 = (($256) + ($253<<4)|0); + $258 = (($257) + 12|0); + $259 = HEAP32[$258>>2]|0; + $260 = (($259) + 78|0); + $261 = HEAP16[$260>>1]|0; + $262 = $261&65535; + $263 = $262 | 1; + $264 = $263&65535; + HEAP16[$260>>1] = $264; + HEAP32[$rc>>2] = 0; + } + } while(0); + $265 = HEAP32[$openedTransaction>>2]|0; + $266 = ($265|0)!=(0); + if ($266) { + $267 = HEAP32[$pDb>>2]|0; + $268 = (($267) + 4|0); + $269 = HEAP32[$268>>2]|0; + (_sqlite3BtreeCommit($269)|0); + } + } + $270 = HEAP32[$rc>>2]|0; + $271 = ($270|0)==(7); + $272 = HEAP32[$rc>>2]|0; + $273 = ($272|0)==(3082); + $or$cond = $271 | $273; + if ($or$cond) { + $274 = HEAP32[$1>>2]|0; + $275 = (($274) + 64|0); + HEAP8[$275>>0] = 1; + } + $276 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $276; + $277 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($277|0); +} +function _sqlite3ResetOneSchema($db,$iDb) { + $db = $db|0; + $iDb = $iDb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDb = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pDb = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $iDb; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 16|0); + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + ($2<<4)|0); + HEAP32[$pDb>>2] = $6; + $7 = HEAP32[$pDb>>2]|0; + $8 = (($7) + 12|0); + $9 = HEAP32[$8>>2]|0; + _sqlite3SchemaClear($9); + $10 = HEAP32[$1>>2]|0; + $11 = ($10|0)!=(1); + if (!($11)) { + STACKTOP = sp;return; + } + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 16|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + 16|0); + HEAP32[$pDb>>2] = $15; + $16 = HEAP32[$pDb>>2]|0; + $17 = (($16) + 12|0); + $18 = HEAP32[$17>>2]|0; + _sqlite3SchemaClear($18); + STACKTOP = sp;return; +} +function _sqlite3CommitInternalChanges($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 24|0); + $3 = HEAP32[$2>>2]|0; + $4 = $3 & -3; + HEAP32[$2>>2] = $4; + STACKTOP = sp;return; +} +function _sqlite3InitCallback($pInit,$argc,$argv,$NotUsed) { + $pInit = $pInit|0; + $argc = $argc|0; + $argv = $argv|0; + $NotUsed = $NotUsed|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $iDb = 0, $pData = 0, $pIndex = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $pData = sp + 20|0; + $db = sp + 12|0; + $iDb = sp + 8|0; + $rc = sp + 4|0; + $pStmt = sp; + $pIndex = sp + 16|0; + HEAP32[$1>>2] = $pInit; + HEAP32[$2>>2] = $argc; + HEAP32[$3>>2] = $argv; + HEAP32[$4>>2] = $NotUsed; + $5 = HEAP32[$1>>2]|0; + HEAP32[$pData>>2] = $5; + $6 = HEAP32[$pData>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$db>>2] = $7; + $8 = HEAP32[$pData>>2]|0; + $9 = (($8) + 8|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$iDb>>2] = $10; + $11 = HEAP32[$iDb>>2]|0; + $12 = HEAP32[$db>>2]|0; + $13 = (($12) + 16|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + ($11<<4)|0); + $16 = (($15) + 12|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + 78|0); + $19 = HEAP16[$18>>1]|0; + $20 = $19&65535; + $21 = $20 & -5; + $22 = $21&65535; + HEAP16[$18>>1] = $22; + $23 = HEAP32[$db>>2]|0; + $24 = (($23) + 64|0); + $25 = HEAP8[$24>>0]|0; + $26 = ($25<<24>>24)!=(0); + if ($26) { + $27 = HEAP32[$pData>>2]|0; + $28 = HEAP32[$3>>2]|0; + $29 = HEAP32[$28>>2]|0; + _corruptSchema($27,$29,0); + HEAP32[$0>>2] = 1; + $124 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($124|0); + } + $30 = HEAP32[$3>>2]|0; + $31 = ($30|0)==(0|0); + if ($31) { + HEAP32[$0>>2] = 0; + $124 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($124|0); + } + $32 = HEAP32[$3>>2]|0; + $33 = (($32) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = ($34|0)==(0|0); + do { + if ($35) { + $36 = HEAP32[$pData>>2]|0; + $37 = HEAP32[$3>>2]|0; + $38 = HEAP32[$37>>2]|0; + _corruptSchema($36,$38,0); + } else { + $39 = HEAP32[$3>>2]|0; + $40 = (($39) + 8|0); + $41 = HEAP32[$40>>2]|0; + $42 = ($41|0)!=(0|0); + if ($42) { + $43 = HEAP32[$3>>2]|0; + $44 = (($43) + 8|0); + $45 = HEAP32[$44>>2]|0; + $46 = HEAP8[$45>>0]|0; + $47 = $46 << 24 >> 24; + $48 = ($47|0)!=(0); + if ($48) { + $49 = HEAP32[$iDb>>2]|0; + $50 = $49&255; + $51 = HEAP32[$db>>2]|0; + $52 = (($51) + 132|0); + $53 = (($52) + 4|0); + HEAP8[$53>>0] = $50; + $54 = HEAP32[$3>>2]|0; + $55 = (($54) + 4|0); + $56 = HEAP32[$55>>2]|0; + $57 = (_sqlite3Atoi($56)|0); + $58 = HEAP32[$db>>2]|0; + $59 = (($58) + 132|0); + HEAP32[$59>>2] = $57; + $60 = HEAP32[$db>>2]|0; + $61 = (($60) + 132|0); + $62 = (($61) + 6|0); + HEAP8[$62>>0] = 0; + $63 = HEAP32[$db>>2]|0; + $64 = HEAP32[$3>>2]|0; + $65 = (($64) + 8|0); + $66 = HEAP32[$65>>2]|0; + (_sqlite3_prepare($63,$66,-1,$pStmt,0)|0); + $67 = HEAP32[$db>>2]|0; + $68 = (($67) + 52|0); + $69 = HEAP32[$68>>2]|0; + HEAP32[$rc>>2] = $69; + $70 = HEAP32[$db>>2]|0; + $71 = (($70) + 132|0); + $72 = (($71) + 4|0); + HEAP8[$72>>0] = 0; + $73 = HEAP32[$rc>>2]|0; + $74 = (0)!=($73|0); + do { + if ($74) { + $75 = HEAP32[$db>>2]|0; + $76 = (($75) + 132|0); + $77 = (($76) + 6|0); + $78 = HEAP8[$77>>0]|0; + $79 = ($78<<24>>24)!=(0); + if (!($79)) { + $80 = HEAP32[$rc>>2]|0; + $81 = HEAP32[$pData>>2]|0; + $82 = (($81) + 12|0); + HEAP32[$82>>2] = $80; + $83 = HEAP32[$rc>>2]|0; + $84 = ($83|0)==(7); + if ($84) { + $85 = HEAP32[$db>>2]|0; + $86 = (($85) + 64|0); + HEAP8[$86>>0] = 1; + break; + } + $87 = HEAP32[$rc>>2]|0; + $88 = ($87|0)!=(9); + if ($88) { + $89 = HEAP32[$rc>>2]|0; + $90 = $89 & 255; + $91 = ($90|0)!=(6); + if ($91) { + $92 = HEAP32[$pData>>2]|0; + $93 = HEAP32[$3>>2]|0; + $94 = HEAP32[$93>>2]|0; + $95 = HEAP32[$db>>2]|0; + $96 = (_sqlite3_errmsg($95)|0); + _corruptSchema($92,$94,$96); + } + } + } + } + } while(0); + $97 = HEAP32[$pStmt>>2]|0; + (_sqlite3_finalize($97)|0); + break; + } + } + $98 = HEAP32[$3>>2]|0; + $99 = HEAP32[$98>>2]|0; + $100 = ($99|0)==(0|0); + if ($100) { + $101 = HEAP32[$pData>>2]|0; + _corruptSchema($101,0,0); + break; + } + $102 = HEAP32[$db>>2]|0; + $103 = HEAP32[$3>>2]|0; + $104 = HEAP32[$103>>2]|0; + $105 = HEAP32[$iDb>>2]|0; + $106 = HEAP32[$db>>2]|0; + $107 = (($106) + 16|0); + $108 = HEAP32[$107>>2]|0; + $109 = (($108) + ($105<<4)|0); + $110 = HEAP32[$109>>2]|0; + $111 = (_sqlite3FindIndex($102,$104,$110)|0); + HEAP32[$pIndex>>2] = $111; + $112 = HEAP32[$pIndex>>2]|0; + $113 = ($112|0)==(0|0); + if (!($113)) { + $114 = HEAP32[$3>>2]|0; + $115 = (($114) + 4|0); + $116 = HEAP32[$115>>2]|0; + $117 = HEAP32[$pIndex>>2]|0; + $118 = (($117) + 44|0); + $119 = (_sqlite3GetInt32($116,$118)|0); + $120 = ($119|0)==(0); + if ($120) { + $121 = HEAP32[$pData>>2]|0; + $122 = HEAP32[$3>>2]|0; + $123 = HEAP32[$122>>2]|0; + _corruptSchema($121,$123,25512); + } + } + } + } while(0); + HEAP32[$0>>2] = 0; + $124 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($124|0); +} +function _sqlite3AbsInt32($x) { + $x = $x|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $x; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)>=(0); + $4 = HEAP32[$1>>2]|0; + do { + if ($3) { + HEAP32[$0>>2] = $4; + } else { + $5 = ($4|0)==(-2147483648); + if ($5) { + HEAP32[$0>>2] = 2147483647; + break; + } else { + $6 = HEAP32[$1>>2]|0; + $7 = (0 - ($6))|0; + HEAP32[$0>>2] = $7; + break; + } + } + } while(0); + $8 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($8|0); +} +function _sqlite3BtreeSetCacheSize($p,$mxPage) { + $p = $p|0; + $mxPage = $mxPage|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $pBt = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pBt = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $mxPage; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pBt>>2] = $4; + $5 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($5); + $6 = HEAP32[$pBt>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$1>>2]|0; + _sqlite3PagerSetCachesize($7,$8); + STACKTOP = sp;return 0; +} +function _sqlite3AnalysisLoad($db,$iDb) { + $db = $db|0; + $iDb = $iDb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pIdx = 0, $rc = 0, $sInfo = 0, $vararg_buffer = 0, $zSql = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 28|0; + $1 = sp + 24|0; + $2 = sp + 20|0; + $sInfo = sp + 32|0; + $i = sp + 8|0; + $zSql = sp + 4|0; + $rc = sp + 12|0; + $pIdx = sp + 16|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $iDb; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 16|0); + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + ($3<<4)|0); + $8 = (($7) + 12|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 24|0); + $11 = (($10) + 8|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$i>>2] = $12; + while(1) { + $13 = HEAP32[$i>>2]|0; + $14 = ($13|0)!=(0|0); + if (!($14)) { + break; + } + $15 = HEAP32[$i>>2]|0; + $16 = (($15) + 8|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$pIdx>>2] = $17; + $18 = HEAP32[$pIdx>>2]|0; + _sqlite3DefaultRowEst($18); + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$19>>2]|0; + HEAP32[$i>>2] = $20; + } + $21 = HEAP32[$1>>2]|0; + HEAP32[$sInfo>>2] = $21; + $22 = HEAP32[$2>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 16|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + ($22<<4)|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($sInfo) + 4|0); + HEAP32[$28>>2] = $27; + $29 = HEAP32[$1>>2]|0; + $30 = (($sInfo) + 4|0); + $31 = HEAP32[$30>>2]|0; + $32 = (_sqlite3FindTable($29,24912,$31)|0); + $33 = ($32|0)==(0|0); + if ($33) { + HEAP32[$0>>2] = 1; + $50 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($50|0); + } + $34 = HEAP32[$1>>2]|0; + $35 = (($sInfo) + 4|0); + $36 = HEAP32[$35>>2]|0; + HEAP32[$vararg_buffer>>2] = $36; + $37 = (_sqlite3MPrintf($34,25416,$vararg_buffer)|0); + HEAP32[$zSql>>2] = $37; + $38 = HEAP32[$zSql>>2]|0; + $39 = ($38|0)==(0|0); + if ($39) { + HEAP32[$rc>>2] = 7; + } else { + $40 = HEAP32[$1>>2]|0; + $41 = HEAP32[$zSql>>2]|0; + $42 = (_sqlite3_exec($40,$41,14,$sInfo,0)|0); + HEAP32[$rc>>2] = $42; + $43 = HEAP32[$1>>2]|0; + $44 = HEAP32[$zSql>>2]|0; + _sqlite3DbFree($43,$44); + } + $45 = HEAP32[$rc>>2]|0; + $46 = ($45|0)==(7); + if ($46) { + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 64|0); + HEAP8[$48>>0] = 1; + } + $49 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $49; + $50 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($50|0); +} +function _sqlite3BtreeCommit($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $rc = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($1); + $2 = HEAP32[$0>>2]|0; + $3 = (_sqlite3BtreeCommitPhaseOne($2,0)|0); + HEAP32[$rc>>2] = $3; + $4 = HEAP32[$rc>>2]|0; + $5 = ($4|0)==(0); + if (!($5)) { + $8 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($8|0); + } + $6 = HEAP32[$0>>2]|0; + $7 = (_sqlite3BtreeCommitPhaseTwo($6,0)|0); + HEAP32[$rc>>2] = $7; + $8 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($8|0); +} +function _sqlite3DefaultRowEst($pIdx) { + $pIdx = $pIdx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $aVal = 0, $i = 0, $nCopy = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 12|0; + $aVal = sp + 16|0; + $a = sp + 4|0; + $nCopy = sp + 8|0; + $i = sp; + HEAP32[$0>>2] = $pIdx; + ;HEAP16[$aVal+0>>1]=HEAP16[25496+0>>1]|0;HEAP16[$aVal+2>>1]=HEAP16[25496+2>>1]|0;HEAP16[$aVal+4>>1]=HEAP16[25496+4>>1]|0;HEAP16[$aVal+6>>1]=HEAP16[25496+6>>1]|0;HEAP16[$aVal+8>>1]=HEAP16[25496+8>>1]|0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$a>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 50|0); + $6 = HEAP16[$5>>1]|0; + $7 = $6&65535; + $8 = (5)<($7|0); + if ($8) { + $13 = 5; + } else { + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 50|0); + $11 = HEAP16[$10>>1]|0; + $12 = $11&65535; + $13 = $12; + } + HEAP32[$nCopy>>2] = $13; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 12|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + 28|0); + $18 = HEAP16[$17>>1]|0; + $19 = HEAP32[$a>>2]|0; + HEAP16[$19>>1] = $18; + $20 = HEAP32[$a>>2]|0; + $21 = HEAP16[$20>>1]|0; + $22 = $21 << 16 >> 16; + $23 = ($22|0)<(33); + if ($23) { + $24 = HEAP32[$a>>2]|0; + HEAP16[$24>>1] = 33; + } + $25 = HEAP32[$a>>2]|0; + $26 = (($25) + 2|0); + $27 = HEAP32[$nCopy>>2]|0; + $28 = $27<<1; + _memcpy(($26|0),($aVal|0),($28|0))|0; + $29 = HEAP32[$nCopy>>2]|0; + $30 = (($29) + 1)|0; + HEAP32[$i>>2] = $30; + while(1) { + $31 = HEAP32[$i>>2]|0; + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 50|0); + $34 = HEAP16[$33>>1]|0; + $35 = $34&65535; + $36 = ($31|0)<=($35|0); + if (!($36)) { + break; + } + $37 = HEAP32[$i>>2]|0; + $38 = HEAP32[$a>>2]|0; + $39 = (($38) + ($37<<1)|0); + HEAP16[$39>>1] = 23; + $40 = HEAP32[$i>>2]|0; + $41 = (($40) + 1)|0; + HEAP32[$i>>2] = $41; + } + $42 = HEAP32[$0>>2]|0; + $43 = (($42) + 54|0); + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = ($45|0)!=(0); + if (!($46)) { + STACKTOP = sp;return; + } + $47 = HEAP32[$0>>2]|0; + $48 = (($47) + 50|0); + $49 = HEAP16[$48>>1]|0; + $50 = $49&65535; + $51 = HEAP32[$a>>2]|0; + $52 = (($51) + ($50<<1)|0); + HEAP16[$52>>1] = 0; + STACKTOP = sp;return; +} +function _analysisLoader($pData,$argc,$argv,$NotUsed) { + $pData = $pData|0; + $argc = $argc|0; + $argv = $argv|0; + $NotUsed = $NotUsed|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $9 = 0, $fakeIdx = 0, $pIndex = 0, $pInfo = 0, $pTable = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 92|0; + $1 = sp + 88|0; + $2 = sp + 84|0; + $3 = sp + 80|0; + $4 = sp + 76|0; + $pInfo = sp + 72|0; + $pIndex = sp + 8|0; + $pTable = sp + 4|0; + $z = sp; + $fakeIdx = sp + 16|0; + HEAP32[$1>>2] = $pData; + HEAP32[$2>>2] = $argc; + HEAP32[$3>>2] = $argv; + HEAP32[$4>>2] = $NotUsed; + $5 = HEAP32[$1>>2]|0; + HEAP32[$pInfo>>2] = $5; + $6 = HEAP32[$3>>2]|0; + $7 = ($6|0)==(0|0); + if (!($7)) { + $8 = HEAP32[$3>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)==(0|0); + if (!($10)) { + $11 = HEAP32[$3>>2]|0; + $12 = (($11) + 8|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)==(0|0); + if (!($14)) { + $15 = HEAP32[$pInfo>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$3>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$pInfo>>2]|0; + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = (_sqlite3FindTable($16,$18,$21)|0); + HEAP32[$pTable>>2] = $22; + $23 = HEAP32[$pTable>>2]|0; + $24 = ($23|0)==(0|0); + if ($24) { + HEAP32[$0>>2] = 0; + $83 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($83|0); + } + $25 = HEAP32[$3>>2]|0; + $26 = (($25) + 4|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)==(0|0); + do { + if ($28) { + HEAP32[$pIndex>>2] = 0; + } else { + $29 = HEAP32[$3>>2]|0; + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$3>>2]|0; + $32 = (($31) + 4|0); + $33 = HEAP32[$32>>2]|0; + $34 = (_sqlite3_stricmp($30,$33)|0); + $35 = ($34|0)==(0); + if ($35) { + $36 = HEAP32[$pTable>>2]|0; + $37 = (_sqlite3PrimaryKeyIndex($36)|0); + HEAP32[$pIndex>>2] = $37; + break; + } else { + $38 = HEAP32[$pInfo>>2]|0; + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$3>>2]|0; + $41 = (($40) + 4|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$pInfo>>2]|0; + $44 = (($43) + 4|0); + $45 = HEAP32[$44>>2]|0; + $46 = (_sqlite3FindIndex($39,$42,$45)|0); + HEAP32[$pIndex>>2] = $46; + break; + } + } + } while(0); + $47 = HEAP32[$3>>2]|0; + $48 = (($47) + 8|0); + $49 = HEAP32[$48>>2]|0; + HEAP32[$z>>2] = $49; + $50 = HEAP32[$pIndex>>2]|0; + $51 = ($50|0)!=(0|0); + if ($51) { + $52 = HEAP32[$z>>2]|0; + $53 = HEAP32[$pIndex>>2]|0; + $54 = (($53) + 50|0); + $55 = HEAP16[$54>>1]|0; + $56 = $55&65535; + $57 = (($56) + 1)|0; + $58 = HEAP32[$pIndex>>2]|0; + $59 = (($58) + 8|0); + $60 = HEAP32[$59>>2]|0; + $61 = HEAP32[$pIndex>>2]|0; + _decodeIntArray($52,$57,0,$60,$61); + $62 = HEAP32[$pIndex>>2]|0; + $63 = (($62) + 36|0); + $64 = HEAP32[$63>>2]|0; + $65 = ($64|0)==(0|0); + if ($65) { + $66 = HEAP32[$pIndex>>2]|0; + $67 = (($66) + 8|0); + $68 = HEAP32[$67>>2]|0; + $69 = HEAP16[$68>>1]|0; + $70 = HEAP32[$pTable>>2]|0; + $71 = (($70) + 28|0); + HEAP16[$71>>1] = $69; + } + } else { + $72 = HEAP32[$pTable>>2]|0; + $73 = (($72) + 42|0); + $74 = HEAP16[$73>>1]|0; + $75 = (($fakeIdx) + 48|0); + HEAP16[$75>>1] = $74; + $76 = HEAP32[$z>>2]|0; + $77 = HEAP32[$pTable>>2]|0; + $78 = (($77) + 28|0); + _decodeIntArray($76,1,0,$78,$fakeIdx); + $79 = (($fakeIdx) + 48|0); + $80 = HEAP16[$79>>1]|0; + $81 = HEAP32[$pTable>>2]|0; + $82 = (($81) + 42|0); + HEAP16[$82>>1] = $80; + } + HEAP32[$0>>2] = 0; + $83 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($83|0); + } + } + } + HEAP32[$0>>2] = 0; + $83 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($83|0); +} +function _decodeIntArray($zIntArray,$nOut,$aOut,$aLog,$pIndex) { + $zIntArray = $zIntArray|0; + $nOut = $nOut|0; + $aOut = $aOut|0; + $aLog = $aLog|0; + $pIndex = $pIndex|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $c = 0, $i = 0, $v = 0, $v32 = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 20|0; + $z = sp + 16|0; + $c = sp + 8|0; + $i = sp + 4|0; + $v = sp; + $v32 = sp + 12|0; + HEAP32[$0>>2] = $zIntArray; + HEAP32[$1>>2] = $nOut; + HEAP32[$2>>2] = $aOut; + HEAP32[$3>>2] = $aLog; + HEAP32[$4>>2] = $pIndex; + $5 = HEAP32[$0>>2]|0; + HEAP32[$z>>2] = $5; + $6 = HEAP32[$z>>2]|0; + $7 = ($6|0)==(0|0); + $$ = $7 ? 1784 : $5; + HEAP32[$z>>2] = $$; + HEAP32[$i>>2] = 0; + while(1) { + $8 = HEAP32[$z>>2]|0; + $9 = HEAP8[$8>>0]|0; + $10 = $9 << 24 >> 24; + $11 = ($10|0)!=(0); + if (!($11)) { + break; + } + $12 = HEAP32[$i>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = ($12|0)<($13|0); + if (!($14)) { + break; + } + HEAP32[$v>>2] = 0; + while(1) { + $15 = HEAP32[$z>>2]|0; + $16 = HEAP8[$15>>0]|0; + $17 = $16 << 24 >> 24; + HEAP32[$c>>2] = $17; + $18 = ($17|0)>=(48); + if (!($18)) { + break; + } + $19 = HEAP32[$c>>2]|0; + $20 = ($19|0)<=(57); + if (!($20)) { + break; + } + $21 = HEAP32[$v>>2]|0; + $22 = ($21*10)|0; + $23 = HEAP32[$c>>2]|0; + $24 = (($22) + ($23))|0; + $25 = (($24) - 48)|0; + HEAP32[$v>>2] = $25; + $26 = HEAP32[$z>>2]|0; + $27 = (($26) + 1|0); + HEAP32[$z>>2] = $27; + } + $28 = HEAP32[$v>>2]|0; + $29 = (_sqlite3LogEst($28,0)|0); + $30 = HEAP32[$i>>2]|0; + $31 = HEAP32[$3>>2]|0; + $32 = (($31) + ($30<<1)|0); + HEAP16[$32>>1] = $29; + $33 = HEAP32[$z>>2]|0; + $34 = HEAP8[$33>>0]|0; + $35 = $34 << 24 >> 24; + $36 = ($35|0)==(32); + if ($36) { + $37 = HEAP32[$z>>2]|0; + $38 = (($37) + 1|0); + HEAP32[$z>>2] = $38; + } + $39 = HEAP32[$i>>2]|0; + $40 = (($39) + 1)|0; + HEAP32[$i>>2] = $40; + } + $41 = HEAP32[$z>>2]|0; + $42 = (_strcmp($41,25464)|0); + $43 = ($42|0)==(0); + if ($43) { + $44 = HEAP32[$4>>2]|0; + $45 = (($44) + 55|0); + $46 = HEAP8[$45>>0]|0; + $47 = $46 & -5; + $48 = $47 | 4; + HEAP8[$45>>0] = $48; + STACKTOP = sp;return; + } + $49 = HEAP32[$z>>2]|0; + $50 = (_sqlite3_strglob(25480,$49)|0); + $51 = ($50|0)==(0); + if (!($51)) { + STACKTOP = sp;return; + } + HEAP32[$v32>>2] = 0; + $52 = HEAP32[$z>>2]|0; + $53 = (($52) + 3|0); + (_sqlite3GetInt32($53,$v32)|0); + $54 = HEAP32[$v32>>2]|0; + $55 = ($54|0)<(0); + $56 = $55 << 31 >> 31; + $57 = (_sqlite3LogEst($54,$56)|0); + $58 = HEAP32[$4>>2]|0; + $59 = (($58) + 48|0); + HEAP16[$59>>1] = $57; + STACKTOP = sp;return; +} +function _corruptSchema($pData,$zObj,$zExtra) { + $pData = $pData|0; + $zObj = $zObj|0; + $zExtra = $zExtra|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $vararg_buffer1 = 0, $vararg_ptr4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer1 = sp; + $0 = sp + 20|0; + $1 = sp + 8|0; + $2 = sp + 12|0; + $db = sp + 16|0; + HEAP32[$0>>2] = $pData; + HEAP32[$1>>2] = $zObj; + HEAP32[$2>>2] = $zExtra; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + $5 = HEAP32[$db>>2]|0; + $6 = (($5) + 64|0); + $7 = HEAP8[$6>>0]|0; + $8 = ($7<<24>>24)!=(0); + if (!($8)) { + $9 = HEAP32[$db>>2]|0; + $10 = (($9) + 24|0); + $11 = HEAP32[$10>>2]|0; + $12 = $11 & 65536; + $13 = ($12|0)==(0); + if ($13) { + $14 = HEAP32[$1>>2]|0; + $15 = ($14|0)==(0|0); + if ($15) { + HEAP32[$1>>2] = 8776; + } + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$db>>2]|0; + $20 = HEAP32[$1>>2]|0; + HEAP32[$vararg_buffer1>>2] = $20; + _sqlite3SetString($18,$19,25536,$vararg_buffer1); + $21 = HEAP32[$2>>2]|0; + $22 = ($21|0)!=(0|0); + if ($22) { + $23 = HEAP32[$db>>2]|0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 4|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 4|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer1>>2] = $31; + $vararg_ptr4 = (($vararg_buffer1) + 4|0); + HEAP32[$vararg_ptr4>>2] = $32; + $33 = (_sqlite3MAppendf($23,$27,25568,$vararg_buffer1)|0); + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 4|0); + $36 = HEAP32[$35>>2]|0; + HEAP32[$36>>2] = $33; + } + } + } + $37 = HEAP32[$db>>2]|0; + $38 = (($37) + 64|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39&255; + $41 = ($40|0)!=(0); + if ($41) { + $45 = 7; + $43 = HEAP32[$0>>2]|0; + $44 = (($43) + 12|0); + HEAP32[$44>>2] = $45; + STACKTOP = sp;return; + } + $42 = (_sqlite3CorruptError(99745)|0); + $45 = $42; + $43 = HEAP32[$0>>2]|0; + $44 = (($43) + 12|0); + HEAP32[$44>>2] = $45; + STACKTOP = sp;return; +} +function _sqlite3MAppendf($db,$zStr,$zFormat,$varargs) { + $db = $db|0; + $zStr = $zStr|0; + $zFormat = $zFormat|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $ap = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $ap = sp + 8|0; + $z = sp + 24|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zStr; + HEAP32[$2>>2] = $zFormat; + HEAP32[$ap>>2] = $varargs; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = (_sqlite3VMPrintf($3,$4,$ap)|0); + HEAP32[$z>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + _sqlite3DbFree($6,$7); + $8 = HEAP32[$z>>2]|0; + STACKTOP = sp;return ($8|0); +} +function _reindexDatabases($pParse,$zColl) { + $pParse = $pParse|0; + $zColl = $zColl|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $iDb = 0, $k = 0, $pDb = 0, $pTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $pDb = sp + 4|0; + $iDb = sp + 8|0; + $db = sp + 12|0; + $k = sp + 16|0; + $pTab = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $zColl; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + HEAP32[$iDb>>2] = 0; + $4 = HEAP32[$db>>2]|0; + $5 = (($4) + 16|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$pDb>>2] = $6; + while(1) { + $7 = HEAP32[$iDb>>2]|0; + $8 = HEAP32[$db>>2]|0; + $9 = (($8) + 20|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($7|0)<($10|0); + if (!($11)) { + break; + } + $12 = HEAP32[$pDb>>2]|0; + $13 = (($12) + 12|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + 8|0); + $16 = (($15) + 8|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$k>>2] = $17; + while(1) { + $18 = HEAP32[$k>>2]|0; + $19 = ($18|0)!=(0|0); + if (!($19)) { + break; + } + $20 = HEAP32[$k>>2]|0; + $21 = (($20) + 8|0); + $22 = HEAP32[$21>>2]|0; + HEAP32[$pTab>>2] = $22; + $23 = HEAP32[$0>>2]|0; + $24 = HEAP32[$pTab>>2]|0; + $25 = HEAP32[$1>>2]|0; + _reindexTable($23,$24,$25); + $26 = HEAP32[$k>>2]|0; + $27 = HEAP32[$26>>2]|0; + HEAP32[$k>>2] = $27; + } + $28 = HEAP32[$iDb>>2]|0; + $29 = (($28) + 1)|0; + HEAP32[$iDb>>2] = $29; + $30 = HEAP32[$pDb>>2]|0; + $31 = (($30) + 16|0); + HEAP32[$pDb>>2] = $31; + } + STACKTOP = sp;return; +} +function _reindexTable($pParse,$pTab,$zColl) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $zColl = $zColl|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iDb = 0, $pIndex = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $pIndex = sp + 8|0; + $iDb = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $zColl; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pIndex>>2] = $5; + while(1) { + $6 = HEAP32[$pIndex>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + break; + } + $8 = HEAP32[$2>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + label = 5; + } else { + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$pIndex>>2]|0; + $12 = (_collationMatch($10,$11)|0); + $13 = ($12|0)!=(0); + if ($13) { + label = 5; + } + } + if ((label|0) == 5) { + label = 0; + $14 = HEAP32[$0>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 68|0); + $18 = HEAP32[$17>>2]|0; + $19 = (_sqlite3SchemaToIndex($15,$18)|0); + HEAP32[$iDb>>2] = $19; + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$iDb>>2]|0; + _sqlite3BeginWriteOperation($20,0,$21); + $22 = HEAP32[$0>>2]|0; + $23 = HEAP32[$pIndex>>2]|0; + _sqlite3RefillIndex($22,$23,-1); + } + $24 = HEAP32[$pIndex>>2]|0; + $25 = (($24) + 20|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$pIndex>>2] = $26; + } + STACKTOP = sp;return; +} +function _sqlite3RefillIndex($pParse,$pIndex,$memRootPage) { + $pParse = $pParse|0; + $pIndex = $pIndex|0; + $memRootPage = $memRootPage|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr1 = 0, $addr2 = 0, $db = 0, $iDb = 0, $iIdx = 0, $iPartIdxLabel = 0; + var $iSorter = 0, $iTab = 0, $j2 = 0, $pKey = 0, $pTab = 0, $regRecord = 0, $tnum = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 64|0; + $1 = sp + 60|0; + $2 = sp + 56|0; + $pTab = sp + 52|0; + $iTab = sp + 48|0; + $iIdx = sp + 44|0; + $iSorter = sp + 40|0; + $addr1 = sp + 36|0; + $addr2 = sp + 32|0; + $tnum = sp + 24|0; + $iPartIdxLabel = sp + 20|0; + $v = sp + 16|0; + $pKey = sp + 12|0; + $regRecord = sp + 8|0; + $db = sp + 4|0; + $iDb = sp; + $j2 = sp + 28|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pIndex; + HEAP32[$2>>2] = $memRootPage; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pTab>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 68|0); + $8 = HEAP32[$7>>2]|0; + $9 = (($8) + 1)|0; + HEAP32[$7>>2] = $9; + HEAP32[$iTab>>2] = $8; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 68|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + 1)|0; + HEAP32[$11>>2] = $13; + HEAP32[$iIdx>>2] = $12; + $14 = HEAP32[$0>>2]|0; + $15 = HEAP32[$14>>2]|0; + HEAP32[$db>>2] = $15; + $16 = HEAP32[$db>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 24|0); + $19 = HEAP32[$18>>2]|0; + $20 = (_sqlite3SchemaToIndex($16,$19)|0); + HEAP32[$iDb>>2] = $20; + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$iDb>>2]|0; + $25 = HEAP32[$db>>2]|0; + $26 = (($25) + 16|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + ($24<<4)|0); + $29 = HEAP32[$28>>2]|0; + $30 = (_sqlite3AuthCheck($21,27,$23,0,$29)|0); + $31 = ($30|0)!=(0); + if ($31) { + STACKTOP = sp;return; + } + $32 = HEAP32[$0>>2]|0; + $33 = HEAP32[$iDb>>2]|0; + $34 = HEAP32[$pTab>>2]|0; + $35 = (($34) + 32|0); + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$pTab>>2]|0; + $38 = HEAP32[$37>>2]|0; + _sqlite3TableLock($32,$33,$36,1,$38); + $39 = HEAP32[$0>>2]|0; + $40 = (_sqlite3GetVdbe($39)|0); + HEAP32[$v>>2] = $40; + $41 = HEAP32[$v>>2]|0; + $42 = ($41|0)==(0|0); + if ($42) { + STACKTOP = sp;return; + } + $43 = HEAP32[$2>>2]|0; + $44 = ($43|0)>=(0); + if ($44) { + $45 = HEAP32[$2>>2]|0; + HEAP32[$tnum>>2] = $45; + } else { + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 44|0); + $48 = HEAP32[$47>>2]|0; + HEAP32[$tnum>>2] = $48; + } + $49 = HEAP32[$0>>2]|0; + $50 = HEAP32[$1>>2]|0; + $51 = (_sqlite3KeyInfoOfIndex($49,$50)|0); + HEAP32[$pKey>>2] = $51; + $52 = HEAP32[$0>>2]|0; + $53 = (($52) + 68|0); + $54 = HEAP32[$53>>2]|0; + $55 = (($54) + 1)|0; + HEAP32[$53>>2] = $55; + HEAP32[$iSorter>>2] = $54; + $56 = HEAP32[$v>>2]|0; + $57 = HEAP32[$iSorter>>2]|0; + $58 = HEAP32[$pKey>>2]|0; + $59 = (_sqlite3KeyInfoRef($58)|0); + (_sqlite3VdbeAddOp4($56,56,$57,0,0,$59,-6)|0); + $60 = HEAP32[$0>>2]|0; + $61 = HEAP32[$iTab>>2]|0; + $62 = HEAP32[$iDb>>2]|0; + $63 = HEAP32[$pTab>>2]|0; + _sqlite3OpenTable($60,$61,$62,$63,52); + $64 = HEAP32[$v>>2]|0; + $65 = HEAP32[$iTab>>2]|0; + $66 = (_sqlite3VdbeAddOp2($64,105,$65,0)|0); + HEAP32[$addr1>>2] = $66; + $67 = HEAP32[$0>>2]|0; + $68 = (_sqlite3GetTempReg($67)|0); + HEAP32[$regRecord>>2] = $68; + $69 = HEAP32[$0>>2]|0; + $70 = HEAP32[$1>>2]|0; + $71 = HEAP32[$iTab>>2]|0; + $72 = HEAP32[$regRecord>>2]|0; + (_sqlite3GenerateIndexKey($69,$70,$71,$72,0,$iPartIdxLabel,0,0)|0); + $73 = HEAP32[$v>>2]|0; + $74 = HEAP32[$iSorter>>2]|0; + $75 = HEAP32[$regRecord>>2]|0; + (_sqlite3VdbeAddOp2($73,106,$74,$75)|0); + $76 = HEAP32[$0>>2]|0; + $77 = HEAP32[$iPartIdxLabel>>2]|0; + _sqlite3ResolvePartIdxLabel($76,$77); + $78 = HEAP32[$v>>2]|0; + $79 = HEAP32[$iTab>>2]|0; + $80 = HEAP32[$addr1>>2]|0; + $81 = (($80) + 1)|0; + (_sqlite3VdbeAddOp2($78,9,$79,$81)|0); + $82 = HEAP32[$v>>2]|0; + $83 = HEAP32[$addr1>>2]|0; + _sqlite3VdbeJumpHere($82,$83); + $84 = HEAP32[$2>>2]|0; + $85 = ($84|0)<(0); + if ($85) { + $86 = HEAP32[$v>>2]|0; + $87 = HEAP32[$tnum>>2]|0; + $88 = HEAP32[$iDb>>2]|0; + (_sqlite3VdbeAddOp2($86,115,$87,$88)|0); + } + $89 = HEAP32[$v>>2]|0; + $90 = HEAP32[$iIdx>>2]|0; + $91 = HEAP32[$tnum>>2]|0; + $92 = HEAP32[$iDb>>2]|0; + $93 = HEAP32[$pKey>>2]|0; + (_sqlite3VdbeAddOp4($89,53,$90,$91,$92,$93,-6)|0); + $94 = HEAP32[$v>>2]|0; + $95 = HEAP32[$2>>2]|0; + $96 = ($95|0)>=(0); + $97 = $96 ? 2 : 0; + $98 = 1 | $97; + $99 = $98&255; + _sqlite3VdbeChangeP5($94,$99); + $100 = HEAP32[$v>>2]|0; + $101 = HEAP32[$iSorter>>2]|0; + $102 = (_sqlite3VdbeAddOp2($100,103,$101,0)|0); + HEAP32[$addr1>>2] = $102; + $103 = HEAP32[$1>>2]|0; + $104 = (($103) + 54|0); + $105 = HEAP8[$104>>0]|0; + $106 = $105&255; + $107 = ($106|0)!=(0); + if ($107) { + $108 = HEAP32[$pKey>>2]|0; + $109 = ($108|0)!=(0|0); + if ($109) { + $110 = HEAP32[$v>>2]|0; + $111 = (_sqlite3VdbeCurrentAddr($110)|0); + $112 = (($111) + 3)|0; + HEAP32[$j2>>2] = $112; + $113 = HEAP32[$v>>2]|0; + $114 = HEAP32[$j2>>2]|0; + (_sqlite3VdbeAddOp2($113,16,0,$114)|0); + $115 = HEAP32[$v>>2]|0; + $116 = (_sqlite3VdbeCurrentAddr($115)|0); + HEAP32[$addr2>>2] = $116; + $117 = HEAP32[$v>>2]|0; + $118 = HEAP32[$iSorter>>2]|0; + $119 = HEAP32[$j2>>2]|0; + $120 = HEAP32[$regRecord>>2]|0; + $121 = HEAP32[$pKey>>2]|0; + $122 = (($121) + 6|0); + $123 = HEAP16[$122>>1]|0; + $124 = $123&65535; + $125 = HEAP32[$1>>2]|0; + $126 = (($125) + 50|0); + $127 = HEAP16[$126>>1]|0; + $128 = $127&65535; + $129 = (($124) - ($128))|0; + (_sqlite3VdbeAddOp4Int($117,84,$118,$119,$120,$129)|0); + $130 = HEAP32[$0>>2]|0; + $131 = HEAP32[$1>>2]|0; + _sqlite3UniqueConstraint($130,2,$131); + } else { + label = 11; + } + } else { + label = 11; + } + if ((label|0) == 11) { + $132 = HEAP32[$v>>2]|0; + $133 = (_sqlite3VdbeCurrentAddr($132)|0); + HEAP32[$addr2>>2] = $133; + } + $134 = HEAP32[$v>>2]|0; + $135 = HEAP32[$iSorter>>2]|0; + $136 = HEAP32[$regRecord>>2]|0; + (_sqlite3VdbeAddOp2($134,95,$135,$136)|0); + $137 = HEAP32[$v>>2]|0; + $138 = HEAP32[$iIdx>>2]|0; + $139 = HEAP32[$regRecord>>2]|0; + (_sqlite3VdbeAddOp3($137,107,$138,$139,1)|0); + $140 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($140,16); + $141 = HEAP32[$0>>2]|0; + $142 = HEAP32[$regRecord>>2]|0; + _sqlite3ReleaseTempReg($141,$142); + $143 = HEAP32[$v>>2]|0; + $144 = HEAP32[$iSorter>>2]|0; + $145 = HEAP32[$addr2>>2]|0; + (_sqlite3VdbeAddOp2($143,5,$144,$145)|0); + $146 = HEAP32[$v>>2]|0; + $147 = HEAP32[$addr1>>2]|0; + _sqlite3VdbeJumpHere($146,$147); + $148 = HEAP32[$v>>2]|0; + $149 = HEAP32[$iTab>>2]|0; + (_sqlite3VdbeAddOp1($148,58,$149)|0); + $150 = HEAP32[$v>>2]|0; + $151 = HEAP32[$iIdx>>2]|0; + (_sqlite3VdbeAddOp1($150,58,$151)|0); + $152 = HEAP32[$v>>2]|0; + $153 = HEAP32[$iSorter>>2]|0; + (_sqlite3VdbeAddOp1($152,58,$153)|0); + STACKTOP = sp;return; +} +function _sqlite3GenerateIndexKey($pParse,$pIdx,$iDataCur,$regOut,$prefixOnly,$piPartIdxLabel,$pPrior,$regPrior) { + $pParse = $pParse|0; + $pIdx = $pIdx|0; + $iDataCur = $iDataCur|0; + $regOut = $regOut|0; + $prefixOnly = $prefixOnly|0; + $piPartIdxLabel = $piPartIdxLabel|0; + $pPrior = $pPrior|0; + $regPrior = $regPrior|0; + var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $j = 0, $nCol = 0, $pTab = 0, $regBase = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 48|0; + $1 = sp + 44|0; + $2 = sp + 40|0; + $3 = sp + 36|0; + $4 = sp + 32|0; + $5 = sp + 28|0; + $6 = sp + 24|0; + $7 = sp + 16|0; + $v = sp + 12|0; + $j = sp + 8|0; + $pTab = sp + 4|0; + $regBase = sp; + $nCol = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pIdx; + HEAP32[$2>>2] = $iDataCur; + HEAP32[$3>>2] = $regOut; + HEAP32[$4>>2] = $prefixOnly; + HEAP32[$5>>2] = $piPartIdxLabel; + HEAP32[$6>>2] = $pPrior; + HEAP32[$7>>2] = $regPrior; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 8|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$v>>2] = $10; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 12|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pTab>>2] = $13; + $14 = HEAP32[$5>>2]|0; + $15 = ($14|0)!=(0|0); + do { + if ($15) { + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 36|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($18|0)!=(0|0); + if ($19) { + $20 = HEAP32[$v>>2]|0; + $21 = (_sqlite3VdbeMakeLabel($20)|0); + $22 = HEAP32[$5>>2]|0; + HEAP32[$22>>2] = $21; + $23 = HEAP32[$2>>2]|0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 96|0); + HEAP32[$25>>2] = $23; + $26 = HEAP32[$0>>2]|0; + _sqlite3ExprCachePush($26); + $27 = HEAP32[$0>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 36|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$5>>2]|0; + $32 = HEAP32[$31>>2]|0; + _sqlite3ExprIfFalse($27,$30,$32,8); + break; + } else { + $33 = HEAP32[$5>>2]|0; + HEAP32[$33>>2] = 0; + break; + } + } + } while(0); + $34 = HEAP32[$4>>2]|0; + $35 = ($34|0)!=(0); + if ($35) { + $36 = HEAP32[$1>>2]|0; + $37 = (($36) + 55|0); + $38 = HEAP8[$37>>0]|0; + $39 = ($38&255) >>> 3; + $40 = $39 & 1; + $41 = $40&255; + $42 = ($41|0)!=(0); + if ($42) { + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 50|0); + $45 = HEAP16[$44>>1]|0; + $$sink = $45; + } else { + label = 8; + } + } else { + label = 8; + } + if ((label|0) == 8) { + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 52|0); + $48 = HEAP16[$47>>1]|0; + $$sink = $48; + } + $49 = $$sink&65535; + HEAP32[$nCol>>2] = $49; + $50 = HEAP32[$0>>2]|0; + $51 = HEAP32[$nCol>>2]|0; + $52 = (_sqlite3GetTempRange($50,$51)|0); + HEAP32[$regBase>>2] = $52; + $53 = HEAP32[$6>>2]|0; + $54 = ($53|0)!=(0|0); + do { + if ($54) { + $55 = HEAP32[$regBase>>2]|0; + $56 = HEAP32[$7>>2]|0; + $57 = ($55|0)!=($56|0); + if (!($57)) { + $58 = HEAP32[$6>>2]|0; + $59 = (($58) + 36|0); + $60 = HEAP32[$59>>2]|0; + $61 = ($60|0)!=(0|0); + if (!($61)) { + break; + } + } + HEAP32[$6>>2] = 0; + } + } while(0); + HEAP32[$j>>2] = 0; + while(1) { + $62 = HEAP32[$j>>2]|0; + $63 = HEAP32[$nCol>>2]|0; + $64 = ($62|0)<($63|0); + if (!($64)) { + break; + } + $65 = HEAP32[$6>>2]|0; + $66 = ($65|0)!=(0|0); + if ($66) { + $67 = HEAP32[$j>>2]|0; + $68 = HEAP32[$6>>2]|0; + $69 = (($68) + 4|0); + $70 = HEAP32[$69>>2]|0; + $71 = (($70) + ($67<<1)|0); + $72 = HEAP16[$71>>1]|0; + $73 = $72 << 16 >> 16; + $74 = HEAP32[$j>>2]|0; + $75 = HEAP32[$1>>2]|0; + $76 = (($75) + 4|0); + $77 = HEAP32[$76>>2]|0; + $78 = (($77) + ($74<<1)|0); + $79 = HEAP16[$78>>1]|0; + $80 = $79 << 16 >> 16; + $81 = ($73|0)==($80|0); + if (!($81)) { + label = 17; + } + } else { + label = 17; + } + if ((label|0) == 17) { + label = 0; + $82 = HEAP32[$v>>2]|0; + $83 = HEAP32[$pTab>>2]|0; + $84 = HEAP32[$2>>2]|0; + $85 = HEAP32[$j>>2]|0; + $86 = HEAP32[$1>>2]|0; + $87 = (($86) + 4|0); + $88 = HEAP32[$87>>2]|0; + $89 = (($88) + ($85<<1)|0); + $90 = HEAP16[$89>>1]|0; + $91 = $90 << 16 >> 16; + $92 = HEAP32[$regBase>>2]|0; + $93 = HEAP32[$j>>2]|0; + $94 = (($92) + ($93))|0; + _sqlite3ExprCodeGetColumnOfTable($82,$83,$84,$91,$94); + $95 = HEAP32[$v>>2]|0; + (_sqlite3VdbeDeletePriorOpcode($95,39)|0); + } + $96 = HEAP32[$j>>2]|0; + $97 = (($96) + 1)|0; + HEAP32[$j>>2] = $97; + } + $98 = HEAP32[$3>>2]|0; + $99 = ($98|0)!=(0); + if (!($99)) { + $104 = HEAP32[$0>>2]|0; + $105 = HEAP32[$regBase>>2]|0; + $106 = HEAP32[$nCol>>2]|0; + _sqlite3ReleaseTempRange($104,$105,$106); + $107 = HEAP32[$regBase>>2]|0; + STACKTOP = sp;return ($107|0); + } + $100 = HEAP32[$v>>2]|0; + $101 = HEAP32[$regBase>>2]|0; + $102 = HEAP32[$nCol>>2]|0; + $103 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp3($100,48,$101,$102,$103)|0); + $104 = HEAP32[$0>>2]|0; + $105 = HEAP32[$regBase>>2]|0; + $106 = HEAP32[$nCol>>2]|0; + _sqlite3ReleaseTempRange($104,$105,$106); + $107 = HEAP32[$regBase>>2]|0; + STACKTOP = sp;return ($107|0); +} +function _sqlite3ResolvePartIdxLabel($pParse,$iLabel) { + $pParse = $pParse|0; + $iLabel = $iLabel|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iLabel; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0); + if (!($3)) { + STACKTOP = sp;return; + } + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$1>>2]|0; + _sqlite3VdbeResolveLabel($6,$7); + $8 = HEAP32[$0>>2]|0; + _sqlite3ExprCachePop($8); + STACKTOP = sp;return; +} +function _sqlite3UniqueConstraint($pParse,$onError,$pIdx) { + $pParse = $pParse|0; + $onError = $onError|0; + $pIdx = $pIdx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $errMsg = 0, $j = 0, $pTab = 0, $zCol = 0, $zErr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 52|0; + $1 = sp; + $2 = sp + 4|0; + $zErr = sp + 8|0; + $j = sp + 12|0; + $errMsg = sp + 16|0; + $pTab = sp + 44|0; + $zCol = sp + 48|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $onError; + HEAP32[$2>>2] = $pIdx; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pTab>>2] = $5; + _sqlite3StrAccumInit($errMsg,0,0,200); + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$errMsg>>2] = $7; + HEAP32[$j>>2] = 0; + while(1) { + $8 = HEAP32[$j>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 50|0); + $11 = HEAP16[$10>>1]|0; + $12 = $11&65535; + $13 = ($8|0)<($12|0); + if (!($13)) { + break; + } + $14 = HEAP32[$j>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + ($14<<1)|0); + $19 = HEAP16[$18>>1]|0; + $20 = $19 << 16 >> 16; + $21 = HEAP32[$pTab>>2]|0; + $22 = (($21) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + (($20*24)|0)|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$zCol>>2] = $25; + $26 = HEAP32[$j>>2]|0; + $27 = ($26|0)!=(0); + if ($27) { + _sqlite3StrAccumAppend($errMsg,25624,2); + } + $28 = HEAP32[$pTab>>2]|0; + $29 = HEAP32[$28>>2]|0; + _sqlite3StrAccumAppendAll($errMsg,$29); + _sqlite3StrAccumAppend($errMsg,25632,1); + $30 = HEAP32[$zCol>>2]|0; + _sqlite3StrAccumAppendAll($errMsg,$30); + $31 = HEAP32[$j>>2]|0; + $32 = (($31) + 1)|0; + HEAP32[$j>>2] = $32; + } + $33 = (_sqlite3StrAccumFinish($errMsg)|0); + HEAP32[$zErr>>2] = $33; + $34 = HEAP32[$0>>2]|0; + $35 = HEAP32[$2>>2]|0; + $36 = (($35) + 55|0); + $37 = HEAP8[$36>>0]|0; + $38 = $37 & 3; + $39 = $38&255; + $40 = ($39|0)==(2); + $41 = $40 ? 1555 : 2067; + $42 = HEAP32[$1>>2]|0; + $43 = HEAP32[$zErr>>2]|0; + _sqlite3HaltConstraint($34,$41,$42,$43,-1,2); + STACKTOP = sp;return; +} +function _sqlite3StrAccumAppendAll($p,$z) { + $p = $p|0; + $z = $z|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $z; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (_sqlite3Strlen30($4)|0); + _sqlite3StrAccumAppend($2,$3,$5); + STACKTOP = sp;return; +} +function _sqlite3HaltConstraint($pParse,$errCode,$onError,$p4,$p4type,$p5Errmsg) { + $pParse = $pParse|0; + $errCode = $errCode|0; + $onError = $onError|0; + $p4 = $p4|0; + $p4type = $p4type|0; + $p5Errmsg = $p5Errmsg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 21|0; + $5 = sp + 20|0; + $v = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $errCode; + HEAP32[$2>>2] = $onError; + HEAP32[$3>>2] = $p4; + HEAP8[$4>>0] = $p4type; + HEAP8[$5>>0] = $p5Errmsg; + $6 = HEAP32[$0>>2]|0; + $7 = (_sqlite3GetVdbe($6)|0); + HEAP32[$v>>2] = $7; + $8 = HEAP32[$2>>2]|0; + $9 = ($8|0)==(2); + if ($9) { + $10 = HEAP32[$0>>2]|0; + _sqlite3MayAbort($10); + } + $11 = HEAP32[$v>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = HEAP32[$3>>2]|0; + $15 = HEAP8[$4>>0]|0; + $16 = $15 << 24 >> 24; + (_sqlite3VdbeAddOp4($11,24,$12,$13,0,$14,$16)|0); + $17 = HEAP8[$5>>0]|0; + $18 = ($17<<24>>24)!=(0); + if (!($18)) { + STACKTOP = sp;return; + } + $19 = HEAP32[$v>>2]|0; + $20 = HEAP8[$5>>0]|0; + _sqlite3VdbeChangeP5($19,$20); + STACKTOP = sp;return; +} +function _sqlite3VdbeResolveLabel($v,$x) { + $v = $v|0; + $x = $x|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $j = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $p = sp + 4|0; + $j = sp + 8|0; + HEAP32[$0>>2] = $v; + HEAP32[$1>>2] = $x; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 24|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$p>>2] = $4; + $5 = HEAP32[$1>>2]|0; + $6 = (-1 - ($5))|0; + HEAP32[$j>>2] = $6; + $7 = HEAP32[$j>>2]|0; + $8 = ($7|0)>=(0); + if ($8) { + $9 = HEAP32[$p>>2]|0; + $10 = (($9) + 112|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0|0); + if ($12) { + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 32|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$j>>2]|0; + $17 = HEAP32[$p>>2]|0; + $18 = (($17) + 112|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + ($16<<2)|0); + HEAP32[$20>>2] = $15; + } + } + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 32|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) - 1)|0; + $25 = HEAP32[$p>>2]|0; + $26 = (($25) + 88|0); + HEAP32[$26>>2] = $24; + STACKTOP = sp;return; +} +function _sqlite3ExprCachePop($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $i = sp; + $p = sp + 4|0; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 100|0); + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + -1)|0; + HEAP32[$2>>2] = $4; + HEAP32[$i>>2] = 0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 116|0); + HEAP32[$p>>2] = $6; + while(1) { + $7 = HEAP32[$i>>2]|0; + $8 = ($7|0)<(10); + if (!($8)) { + break; + } + $9 = HEAP32[$p>>2]|0; + $10 = (($9) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0); + if ($12) { + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 8|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 100|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($15|0)>($18|0); + if ($19) { + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$p>>2]|0; + _cacheEntryClear($20,$21); + $22 = HEAP32[$p>>2]|0; + $23 = (($22) + 12|0); + HEAP32[$23>>2] = 0; + } + } + $24 = HEAP32[$i>>2]|0; + $25 = (($24) + 1)|0; + HEAP32[$i>>2] = $25; + $26 = HEAP32[$p>>2]|0; + $27 = (($26) + 20|0); + HEAP32[$p>>2] = $27; + } + STACKTOP = sp;return; +} +function _cacheEntryClear($pParse,$p) { + $pParse = $pParse|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 6|0); + $4 = HEAP8[$3>>0]|0; + $5 = ($4<<24>>24)!=(0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 19|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = ($9|0)<(8); + if ($10) { + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 12|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 19|0); + $16 = HEAP8[$15>>0]|0; + $17 = (($16) + 1)<<24>>24; + HEAP8[$15>>0] = $17; + $18 = $16&255; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 24|0); + $21 = (($20) + ($18<<2)|0); + HEAP32[$21>>2] = $13; + } + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 6|0); + HEAP8[$23>>0] = 0; + STACKTOP = sp;return; +} +function _sqlite3VdbeMakeLabel($v) { + $v = $v|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $p = sp; + $i = sp + 4|0; + HEAP32[$0>>2] = $v; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 24|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $3; + $4 = HEAP32[$p>>2]|0; + $5 = (($4) + 108|0); + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + 1)|0; + HEAP32[$5>>2] = $7; + HEAP32[$i>>2] = $6; + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$i>>2]|0; + $10 = (($9) - 1)|0; + $11 = $8 & $10; + $12 = ($11|0)==(0); + if ($12) { + $13 = HEAP32[$p>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$p>>2]|0; + $16 = (($15) + 112|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$i>>2]|0; + $19 = $18<<1; + $20 = (($19) + 1)|0; + $21 = $20<<2; + $22 = (_sqlite3DbReallocOrFree($14,$17,$21)|0); + $23 = HEAP32[$p>>2]|0; + $24 = (($23) + 112|0); + HEAP32[$24>>2] = $22; + } + $25 = HEAP32[$p>>2]|0; + $26 = (($25) + 112|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)!=(0|0); + if (!($28)) { + $34 = HEAP32[$i>>2]|0; + $35 = (-1 - ($34))|0; + STACKTOP = sp;return ($35|0); + } + $29 = HEAP32[$i>>2]|0; + $30 = HEAP32[$p>>2]|0; + $31 = (($30) + 112|0); + $32 = HEAP32[$31>>2]|0; + $33 = (($32) + ($29<<2)|0); + HEAP32[$33>>2] = -1; + $34 = HEAP32[$i>>2]|0; + $35 = (-1 - ($34))|0; + STACKTOP = sp;return ($35|0); +} +function _sqlite3ExprCachePush($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 100|0); + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 1)|0; + HEAP32[$2>>2] = $4; + STACKTOP = sp;return; +} +function _sqlite3ExprIfFalse($pParse,$pExpr,$dest,$jumpIfNull) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + $dest = $dest|0; + $jumpIfNull = $jumpIfNull|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $d2 = 0, $destIfNull = 0, $op = 0, $r1 = 0, $r2 = 0; + var $regFree1 = 0, $regFree2 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $v = sp + 28|0; + $op = sp + 24|0; + $regFree1 = sp + 20|0; + $regFree2 = sp + 12|0; + $r1 = sp + 8|0; + $r2 = sp + 4|0; + $d2 = sp; + $destIfNull = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $dest; + HEAP32[$3>>2] = $jumpIfNull; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$v>>2] = $6; + HEAP32[$op>>2] = 0; + HEAP32[$regFree1>>2] = 0; + HEAP32[$regFree2>>2] = 0; + $7 = HEAP32[$v>>2]|0; + $8 = ($7|0)==(0|0); + if ($8) { + STACKTOP = sp;return; + } + $9 = HEAP32[$1>>2]|0; + $10 = ($9|0)==(0|0); + if ($10) { + STACKTOP = sp;return; + } + $11 = HEAP32[$1>>2]|0; + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = (($13) + 0)|0; + $15 = $14 ^ 1; + $16 = (($15) - 0)|0; + HEAP32[$op>>2] = $16; + $17 = HEAP32[$1>>2]|0; + $18 = HEAP8[$17>>0]|0; + $19 = $18&255; + L7: do { + switch ($19|0) { + case 19: { + $53 = HEAP32[$0>>2]|0; + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 12|0); + $56 = HEAP32[$55>>2]|0; + $57 = HEAP32[$2>>2]|0; + $58 = HEAP32[$3>>2]|0; + _sqlite3ExprIfTrue($53,$56,$57,$58); + break; + } + case 79: case 78: case 83: case 80: case 81: case 82: { + $59 = HEAP32[$0>>2]|0; + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 12|0); + $62 = HEAP32[$61>>2]|0; + $63 = (_sqlite3ExprCodeTemp($59,$62,$regFree1)|0); + HEAP32[$r1>>2] = $63; + $64 = HEAP32[$0>>2]|0; + $65 = HEAP32[$1>>2]|0; + $66 = (($65) + 16|0); + $67 = HEAP32[$66>>2]|0; + $68 = (_sqlite3ExprCodeTemp($64,$67,$regFree2)|0); + HEAP32[$r2>>2] = $68; + $69 = HEAP32[$0>>2]|0; + $70 = HEAP32[$1>>2]|0; + $71 = (($70) + 12|0); + $72 = HEAP32[$71>>2]|0; + $73 = HEAP32[$1>>2]|0; + $74 = (($73) + 16|0); + $75 = HEAP32[$74>>2]|0; + $76 = HEAP32[$op>>2]|0; + $77 = HEAP32[$r1>>2]|0; + $78 = HEAP32[$r2>>2]|0; + $79 = HEAP32[$2>>2]|0; + $80 = HEAP32[$3>>2]|0; + (_codeCompare($69,$72,$75,$76,$77,$78,$79,$80)|0); + break; + } + case 75: { + $120 = HEAP32[$3>>2]|0; + $121 = ($120|0)!=(0); + if ($121) { + $122 = HEAP32[$0>>2]|0; + $123 = HEAP32[$1>>2]|0; + $124 = HEAP32[$2>>2]|0; + $125 = HEAP32[$2>>2]|0; + _sqlite3ExprCodeIN($122,$123,$124,$125); + break L7; + } else { + $126 = HEAP32[$v>>2]|0; + $127 = (_sqlite3VdbeMakeLabel($126)|0); + HEAP32[$destIfNull>>2] = $127; + $128 = HEAP32[$0>>2]|0; + $129 = HEAP32[$1>>2]|0; + $130 = HEAP32[$2>>2]|0; + $131 = HEAP32[$destIfNull>>2]|0; + _sqlite3ExprCodeIN($128,$129,$130,$131); + $132 = HEAP32[$v>>2]|0; + $133 = HEAP32[$destIfNull>>2]|0; + _sqlite3VdbeResolveLabel($132,$133); + break L7; + } + break; + } + case 72: { + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 12|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$2>>2]|0; + $25 = HEAP32[$3>>2]|0; + _sqlite3ExprIfFalse($20,$23,$24,$25); + $26 = HEAP32[$0>>2]|0; + _sqlite3ExprCachePush($26); + $27 = HEAP32[$0>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 16|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$2>>2]|0; + $32 = HEAP32[$3>>2]|0; + _sqlite3ExprIfFalse($27,$30,$31,$32); + $33 = HEAP32[$0>>2]|0; + _sqlite3ExprCachePop($33); + break; + } + case 74: { + $116 = HEAP32[$0>>2]|0; + $117 = HEAP32[$1>>2]|0; + $118 = HEAP32[$2>>2]|0; + $119 = HEAP32[$3>>2]|0; + _exprCodeBetween($116,$117,$118,0,$119); + break; + } + case 77: case 76: { + $107 = HEAP32[$0>>2]|0; + $108 = HEAP32[$1>>2]|0; + $109 = (($108) + 12|0); + $110 = HEAP32[$109>>2]|0; + $111 = (_sqlite3ExprCodeTemp($107,$110,$regFree1)|0); + HEAP32[$r1>>2] = $111; + $112 = HEAP32[$v>>2]|0; + $113 = HEAP32[$op>>2]|0; + $114 = HEAP32[$r1>>2]|0; + $115 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp2($112,$113,$114,$115)|0); + break; + } + case 71: { + $34 = HEAP32[$v>>2]|0; + $35 = (_sqlite3VdbeMakeLabel($34)|0); + HEAP32[$d2>>2] = $35; + $36 = HEAP32[$0>>2]|0; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 12|0); + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$d2>>2]|0; + $41 = HEAP32[$3>>2]|0; + $42 = $41 ^ 8; + _sqlite3ExprIfTrue($36,$39,$40,$42); + $43 = HEAP32[$0>>2]|0; + _sqlite3ExprCachePush($43); + $44 = HEAP32[$0>>2]|0; + $45 = HEAP32[$1>>2]|0; + $46 = (($45) + 16|0); + $47 = HEAP32[$46>>2]|0; + $48 = HEAP32[$2>>2]|0; + $49 = HEAP32[$3>>2]|0; + _sqlite3ExprIfFalse($44,$47,$48,$49); + $50 = HEAP32[$v>>2]|0; + $51 = HEAP32[$d2>>2]|0; + _sqlite3VdbeResolveLabel($50,$51); + $52 = HEAP32[$0>>2]|0; + _sqlite3ExprCachePop($52); + break; + } + case 148: case 73: { + $81 = HEAP32[$0>>2]|0; + $82 = HEAP32[$1>>2]|0; + $83 = (($82) + 12|0); + $84 = HEAP32[$83>>2]|0; + $85 = (_sqlite3ExprCodeTemp($81,$84,$regFree1)|0); + HEAP32[$r1>>2] = $85; + $86 = HEAP32[$0>>2]|0; + $87 = HEAP32[$1>>2]|0; + $88 = (($87) + 16|0); + $89 = HEAP32[$88>>2]|0; + $90 = (_sqlite3ExprCodeTemp($86,$89,$regFree2)|0); + HEAP32[$r2>>2] = $90; + $91 = HEAP32[$1>>2]|0; + $92 = HEAP8[$91>>0]|0; + $93 = $92&255; + $94 = ($93|0)==(73); + $95 = $94 ? 78 : 79; + HEAP32[$op>>2] = $95; + $96 = HEAP32[$0>>2]|0; + $97 = HEAP32[$1>>2]|0; + $98 = (($97) + 12|0); + $99 = HEAP32[$98>>2]|0; + $100 = HEAP32[$1>>2]|0; + $101 = (($100) + 16|0); + $102 = HEAP32[$101>>2]|0; + $103 = HEAP32[$op>>2]|0; + $104 = HEAP32[$r1>>2]|0; + $105 = HEAP32[$r2>>2]|0; + $106 = HEAP32[$2>>2]|0; + (_codeCompare($96,$99,$102,$103,$104,$105,$106,128)|0); + break; + } + default: { + $134 = HEAP32[$1>>2]|0; + $135 = (_exprAlwaysFalse($134)|0); + $136 = ($135|0)!=(0); + if ($136) { + $137 = HEAP32[$v>>2]|0; + $138 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp2($137,16,0,$138)|0); + break L7; + } + $139 = HEAP32[$1>>2]|0; + $140 = (_exprAlwaysTrue($139)|0); + $141 = ($140|0)!=(0); + if (!($141)) { + $142 = HEAP32[$0>>2]|0; + $143 = HEAP32[$1>>2]|0; + $144 = (_sqlite3ExprCodeTemp($142,$143,$regFree1)|0); + HEAP32[$r1>>2] = $144; + $145 = HEAP32[$v>>2]|0; + $146 = HEAP32[$r1>>2]|0; + $147 = HEAP32[$2>>2]|0; + $148 = HEAP32[$3>>2]|0; + $149 = ($148|0)!=(0); + $150 = $149&1; + (_sqlite3VdbeAddOp3($145,45,$146,$147,$150)|0); + } + } + } + } while(0); + $151 = HEAP32[$0>>2]|0; + $152 = HEAP32[$regFree1>>2]|0; + _sqlite3ReleaseTempReg($151,$152); + $153 = HEAP32[$0>>2]|0; + $154 = HEAP32[$regFree2>>2]|0; + _sqlite3ReleaseTempReg($153,$154); + STACKTOP = sp;return; +} +function _sqlite3GetTempRange($pParse,$nReg) { + $pParse = $pParse|0; + $nReg = $nReg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $i = sp + 4|0; + $n = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $nReg; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 60|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$i>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 56|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$n>>2] = $7; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$n>>2]|0; + $10 = ($8|0)<=($9|0); + if ($10) { + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 60|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + ($11))|0; + HEAP32[$13>>2] = $15; + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 56|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) - ($16))|0; + HEAP32[$18>>2] = $20; + $30 = HEAP32[$i>>2]|0; + STACKTOP = sp;return ($30|0); + } else { + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 72|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + 1)|0; + HEAP32[$i>>2] = $24; + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 72|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + ($25))|0; + HEAP32[$27>>2] = $29; + $30 = HEAP32[$i>>2]|0; + STACKTOP = sp;return ($30|0); + } + return 0|0; +} +function _sqlite3ExprCodeGetColumnOfTable($v,$pTab,$iTabCur,$iCol,$regOut) { + $v = $v|0; + $pTab = $pTab|0; + $iTabCur = $iTabCur|0; + $iCol = $iCol|0; + $regOut = $regOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $op = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $op = sp + 16|0; + $x = sp + 20|0; + HEAP32[$0>>2] = $v; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $iTabCur; + HEAP32[$3>>2] = $iCol; + HEAP32[$4>>2] = $regOut; + $5 = HEAP32[$3>>2]|0; + $6 = ($5|0)<(0); + if ($6) { + label = 3; + } else { + $7 = HEAP32[$3>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 36|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10 << 16 >> 16; + $12 = ($7|0)==($11|0); + if ($12) { + label = 3; + } else { + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 44|0); + $18 = HEAP8[$17>>0]|0; + $19 = $18&255; + $20 = $19 & 16; + $21 = ($20|0)!=(0); + $22 = $21 ? 150 : 46; + HEAP32[$op>>2] = $22; + $23 = HEAP32[$3>>2]|0; + HEAP32[$x>>2] = $23; + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 44|0); + $26 = HEAP8[$25>>0]|0; + $27 = $26&255; + $28 = $27 & 32; + $29 = ($28|0)==(0); + if (!($29)) { + $30 = HEAP32[$1>>2]|0; + $31 = (_sqlite3PrimaryKeyIndex($30)|0); + $32 = HEAP32[$3>>2]|0; + $33 = $32&65535; + $34 = (_sqlite3ColumnOfIndex($31,$33)|0); + $35 = $34 << 16 >> 16; + HEAP32[$x>>2] = $35; + } + $36 = HEAP32[$0>>2]|0; + $37 = HEAP32[$op>>2]|0; + $38 = HEAP32[$2>>2]|0; + $39 = HEAP32[$x>>2]|0; + $40 = HEAP32[$4>>2]|0; + (_sqlite3VdbeAddOp3($36,$37,$38,$39,$40)|0); + } + } + if ((label|0) == 3) { + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$4>>2]|0; + (_sqlite3VdbeAddOp2($13,100,$14,$15)|0); + } + $41 = HEAP32[$3>>2]|0; + $42 = ($41|0)>=(0); + if (!($42)) { + STACKTOP = sp;return; + } + $43 = HEAP32[$0>>2]|0; + $44 = HEAP32[$1>>2]|0; + $45 = HEAP32[$3>>2]|0; + $46 = HEAP32[$4>>2]|0; + _sqlite3ColumnDefault($43,$44,$45,$46); + STACKTOP = sp;return; +} +function _sqlite3VdbeDeletePriorOpcode($p,$op) { + $p = $p|0; + $op = $op|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + $2 = sp + 8|0; + HEAP32[$1>>2] = $p; + HEAP8[$2>>0] = $op; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 32|0); + $5 = HEAP32[$4>>2]|0; + $6 = (($5) - 1)|0; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 24|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 88|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($6|0)>($11|0); + if ($12) { + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 32|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) - 1)|0; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + (($16*20)|0)|0); + $21 = HEAP8[$20>>0]|0; + $22 = $21&255; + $23 = HEAP8[$2>>0]|0; + $24 = $23&255; + $25 = ($22|0)==($24|0); + if ($25) { + $26 = HEAP32[$1>>2]|0; + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 32|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) - 1)|0; + _sqlite3VdbeChangeToNoop($26,$30); + HEAP32[$0>>2] = 1; + $31 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($31|0); + } + } + HEAP32[$0>>2] = 0; + $31 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($31|0); +} +function _sqlite3ReleaseTempRange($pParse,$iReg,$nReg) { + $pParse = $pParse|0; + $iReg = $iReg|0; + $nReg = $nReg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iReg; + HEAP32[$2>>2] = $nReg; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + _sqlite3ExprCacheRemove($3,$4,$5); + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 56|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($6|0)>($9|0); + if (!($10)) { + STACKTOP = sp;return; + } + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 56|0); + HEAP32[$13>>2] = $11; + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 60|0); + HEAP32[$16>>2] = $14; + STACKTOP = sp;return; +} +function _sqlite3ExprCacheRemove($pParse,$iReg,$nReg) { + $pParse = $pParse|0; + $iReg = $iReg|0; + $nReg = $nReg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $iLast = 0, $p = 0, $r = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + $iLast = sp + 12|0; + $p = sp + 16|0; + $r = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iReg; + HEAP32[$2>>2] = $nReg; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = (($3) + ($4))|0; + $6 = (($5) - 1)|0; + HEAP32[$iLast>>2] = $6; + HEAP32[$i>>2] = 0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 116|0); + HEAP32[$p>>2] = $8; + while(1) { + $9 = HEAP32[$i>>2]|0; + $10 = ($9|0)<(10); + if (!($10)) { + break; + } + $11 = HEAP32[$p>>2]|0; + $12 = (($11) + 12|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$r>>2] = $13; + $14 = HEAP32[$r>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = ($14|0)>=($15|0); + if ($16) { + $17 = HEAP32[$r>>2]|0; + $18 = HEAP32[$iLast>>2]|0; + $19 = ($17|0)<=($18|0); + if ($19) { + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$p>>2]|0; + _cacheEntryClear($20,$21); + $22 = HEAP32[$p>>2]|0; + $23 = (($22) + 12|0); + HEAP32[$23>>2] = 0; + } + } + $24 = HEAP32[$i>>2]|0; + $25 = (($24) + 1)|0; + HEAP32[$i>>2] = $25; + $26 = HEAP32[$p>>2]|0; + $27 = (($26) + 20|0); + HEAP32[$p>>2] = $27; + } + STACKTOP = sp;return; +} +function _sqlite3ColumnOfIndex($pIdx,$iCol) { + $pIdx = $pIdx|0; + $iCol = $iCol|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 10|0; + $1 = sp; + $2 = sp + 8|0; + $i = sp + 4|0; + HEAP32[$1>>2] = $pIdx; + HEAP16[$2>>1] = $iCol; + HEAP32[$i>>2] = 0; + while(1) { + $3 = HEAP32[$i>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 52|0); + $6 = HEAP16[$5>>1]|0; + $7 = $6&65535; + $8 = ($3|0)<($7|0); + if (!($8)) { + label = 6; + break; + } + $9 = HEAP16[$2>>1]|0; + $10 = $9 << 16 >> 16; + $11 = HEAP32[$i>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + ($11<<1)|0); + $16 = HEAP16[$15>>1]|0; + $17 = $16 << 16 >> 16; + $18 = ($10|0)==($17|0); + $19 = HEAP32[$i>>2]|0; + if ($18) { + label = 4; + break; + } + $21 = (($19) + 1)|0; + HEAP32[$i>>2] = $21; + } + if ((label|0) == 4) { + $20 = $19&65535; + HEAP16[$0>>1] = $20; + $22 = HEAP16[$0>>1]|0; + STACKTOP = sp;return ($22|0); + } + else if ((label|0) == 6) { + HEAP16[$0>>1] = -1; + $22 = HEAP16[$0>>1]|0; + STACKTOP = sp;return ($22|0); + } + return 0|0; +} +function _sqlite3ColumnDefault($v,$pTab,$i,$iReg) { + $v = $v|0; + $pTab = $pTab|0; + $i = $i|0; + $iReg = $iReg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $enc = 0, $pCol = 0, $pValue = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pValue = sp + 12|0; + $enc = sp + 24|0; + $pCol = sp + 16|0; + HEAP32[$0>>2] = $v; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $i; + HEAP32[$3>>2] = $iReg; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 12|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + STACKTOP = sp;return; + } + HEAP32[$pValue>>2] = 0; + $8 = HEAP32[$0>>2]|0; + $9 = (_sqlite3VdbeDb($8)|0); + $10 = (($9) + 16|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + 12|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 77|0); + $15 = HEAP8[$14>>0]|0; + HEAP8[$enc>>0] = $15; + $16 = HEAP32[$2>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + (($16*24)|0)|0); + HEAP32[$pCol>>2] = $20; + $21 = HEAP32[$0>>2]|0; + $22 = (_sqlite3VdbeDb($21)|0); + $23 = HEAP32[$pCol>>2]|0; + $24 = (($23) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP8[$enc>>0]|0; + $27 = HEAP32[$pCol>>2]|0; + $28 = (($27) + 21|0); + $29 = HEAP8[$28>>0]|0; + (_sqlite3ValueFromExpr($22,$25,$26,$29,$pValue)|0); + $30 = HEAP32[$pValue>>2]|0; + $31 = ($30|0)!=(0|0); + if ($31) { + $32 = HEAP32[$0>>2]|0; + $33 = HEAP32[$pValue>>2]|0; + _sqlite3VdbeChangeP4($32,-1,$33,-8); + } + $34 = HEAP32[$2>>2]|0; + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 4|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + (($34*24)|0)|0); + $39 = (($38) + 21|0); + $40 = HEAP8[$39>>0]|0; + $41 = $40 << 24 >> 24; + $42 = ($41|0)==(101); + if (!($42)) { + STACKTOP = sp;return; + } + $43 = HEAP32[$0>>2]|0; + $44 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp1($43,39,$44)|0); + STACKTOP = sp;return; +} +function _sqlite3VdbeDb($v) { + $v = $v|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $v; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + STACKTOP = sp;return ($2|0); +} +function _sqlite3ExprIfTrue($pParse,$pExpr,$dest,$jumpIfNull) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + $dest = $dest|0; + $jumpIfNull = $jumpIfNull|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $d2 = 0, $destIfFalse = 0, $destIfNull = 0, $op = 0, $r1 = 0, $r2 = 0, $regFree1 = 0, $regFree2 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 48|0; + $1 = sp + 44|0; + $2 = sp + 40|0; + $3 = sp + 36|0; + $v = sp + 32|0; + $op = sp + 28|0; + $regFree1 = sp + 24|0; + $regFree2 = sp + 16|0; + $r1 = sp + 12|0; + $r2 = sp + 8|0; + $d2 = sp + 4|0; + $destIfFalse = sp; + $destIfNull = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $dest; + HEAP32[$3>>2] = $jumpIfNull; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$v>>2] = $6; + HEAP32[$op>>2] = 0; + HEAP32[$regFree1>>2] = 0; + HEAP32[$regFree2>>2] = 0; + $7 = HEAP32[$v>>2]|0; + $8 = ($7|0)==(0|0); + if ($8) { + STACKTOP = sp;return; + } + $9 = HEAP32[$1>>2]|0; + $10 = ($9|0)==(0|0); + if ($10) { + STACKTOP = sp;return; + } + $11 = HEAP32[$1>>2]|0; + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + HEAP32[$op>>2] = $13; + $14 = HEAP32[$op>>2]|0; + L7: do { + switch ($14|0) { + case 79: case 78: case 83: case 80: case 81: case 82: { + $54 = HEAP32[$0>>2]|0; + $55 = HEAP32[$1>>2]|0; + $56 = (($55) + 12|0); + $57 = HEAP32[$56>>2]|0; + $58 = (_sqlite3ExprCodeTemp($54,$57,$regFree1)|0); + HEAP32[$r1>>2] = $58; + $59 = HEAP32[$0>>2]|0; + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 16|0); + $62 = HEAP32[$61>>2]|0; + $63 = (_sqlite3ExprCodeTemp($59,$62,$regFree2)|0); + HEAP32[$r2>>2] = $63; + $64 = HEAP32[$0>>2]|0; + $65 = HEAP32[$1>>2]|0; + $66 = (($65) + 12|0); + $67 = HEAP32[$66>>2]|0; + $68 = HEAP32[$1>>2]|0; + $69 = (($68) + 16|0); + $70 = HEAP32[$69>>2]|0; + $71 = HEAP32[$op>>2]|0; + $72 = HEAP32[$r1>>2]|0; + $73 = HEAP32[$r2>>2]|0; + $74 = HEAP32[$2>>2]|0; + $75 = HEAP32[$3>>2]|0; + (_codeCompare($64,$67,$70,$71,$72,$73,$74,$75)|0); + break; + } + case 148: case 73: { + $76 = HEAP32[$0>>2]|0; + $77 = HEAP32[$1>>2]|0; + $78 = (($77) + 12|0); + $79 = HEAP32[$78>>2]|0; + $80 = (_sqlite3ExprCodeTemp($76,$79,$regFree1)|0); + HEAP32[$r1>>2] = $80; + $81 = HEAP32[$0>>2]|0; + $82 = HEAP32[$1>>2]|0; + $83 = (($82) + 16|0); + $84 = HEAP32[$83>>2]|0; + $85 = (_sqlite3ExprCodeTemp($81,$84,$regFree2)|0); + HEAP32[$r2>>2] = $85; + $86 = HEAP32[$op>>2]|0; + $87 = ($86|0)==(73); + $88 = $87 ? 79 : 78; + HEAP32[$op>>2] = $88; + $89 = HEAP32[$0>>2]|0; + $90 = HEAP32[$1>>2]|0; + $91 = (($90) + 12|0); + $92 = HEAP32[$91>>2]|0; + $93 = HEAP32[$1>>2]|0; + $94 = (($93) + 16|0); + $95 = HEAP32[$94>>2]|0; + $96 = HEAP32[$op>>2]|0; + $97 = HEAP32[$r1>>2]|0; + $98 = HEAP32[$r2>>2]|0; + $99 = HEAP32[$2>>2]|0; + (_codeCompare($89,$92,$95,$96,$97,$98,$99,128)|0); + break; + } + case 74: { + $109 = HEAP32[$0>>2]|0; + $110 = HEAP32[$1>>2]|0; + $111 = HEAP32[$2>>2]|0; + $112 = HEAP32[$3>>2]|0; + _exprCodeBetween($109,$110,$111,1,$112); + break; + } + case 19: { + $48 = HEAP32[$0>>2]|0; + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 12|0); + $51 = HEAP32[$50>>2]|0; + $52 = HEAP32[$2>>2]|0; + $53 = HEAP32[$3>>2]|0; + _sqlite3ExprIfFalse($48,$51,$52,$53); + break; + } + case 75: { + $113 = HEAP32[$v>>2]|0; + $114 = (_sqlite3VdbeMakeLabel($113)|0); + HEAP32[$destIfFalse>>2] = $114; + $115 = HEAP32[$3>>2]|0; + $116 = ($115|0)!=(0); + $117 = HEAP32[$2>>2]|0; + $118 = HEAP32[$destIfFalse>>2]|0; + $119 = $116 ? $117 : $118; + HEAP32[$destIfNull>>2] = $119; + $120 = HEAP32[$0>>2]|0; + $121 = HEAP32[$1>>2]|0; + $122 = HEAP32[$destIfFalse>>2]|0; + $123 = HEAP32[$destIfNull>>2]|0; + _sqlite3ExprCodeIN($120,$121,$122,$123); + $124 = HEAP32[$v>>2]|0; + $125 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp2($124,16,0,$125)|0); + $126 = HEAP32[$v>>2]|0; + $127 = HEAP32[$destIfFalse>>2]|0; + _sqlite3VdbeResolveLabel($126,$127); + break; + } + case 72: { + $15 = HEAP32[$v>>2]|0; + $16 = (_sqlite3VdbeMakeLabel($15)|0); + HEAP32[$d2>>2] = $16; + $17 = HEAP32[$0>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 12|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$d2>>2]|0; + $22 = HEAP32[$3>>2]|0; + $23 = $22 ^ 8; + _sqlite3ExprIfFalse($17,$20,$21,$23); + $24 = HEAP32[$0>>2]|0; + _sqlite3ExprCachePush($24); + $25 = HEAP32[$0>>2]|0; + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 16|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$2>>2]|0; + $30 = HEAP32[$3>>2]|0; + _sqlite3ExprIfTrue($25,$28,$29,$30); + $31 = HEAP32[$v>>2]|0; + $32 = HEAP32[$d2>>2]|0; + _sqlite3VdbeResolveLabel($31,$32); + $33 = HEAP32[$0>>2]|0; + _sqlite3ExprCachePop($33); + break; + } + case 77: case 76: { + $100 = HEAP32[$0>>2]|0; + $101 = HEAP32[$1>>2]|0; + $102 = (($101) + 12|0); + $103 = HEAP32[$102>>2]|0; + $104 = (_sqlite3ExprCodeTemp($100,$103,$regFree1)|0); + HEAP32[$r1>>2] = $104; + $105 = HEAP32[$v>>2]|0; + $106 = HEAP32[$op>>2]|0; + $107 = HEAP32[$r1>>2]|0; + $108 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp2($105,$106,$107,$108)|0); + break; + } + case 71: { + $34 = HEAP32[$0>>2]|0; + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 12|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$2>>2]|0; + $39 = HEAP32[$3>>2]|0; + _sqlite3ExprIfTrue($34,$37,$38,$39); + $40 = HEAP32[$0>>2]|0; + _sqlite3ExprCachePush($40); + $41 = HEAP32[$0>>2]|0; + $42 = HEAP32[$1>>2]|0; + $43 = (($42) + 16|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$2>>2]|0; + $46 = HEAP32[$3>>2]|0; + _sqlite3ExprIfTrue($41,$44,$45,$46); + $47 = HEAP32[$0>>2]|0; + _sqlite3ExprCachePop($47); + break; + } + default: { + $128 = HEAP32[$1>>2]|0; + $129 = (_exprAlwaysTrue($128)|0); + $130 = ($129|0)!=(0); + if ($130) { + $131 = HEAP32[$v>>2]|0; + $132 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp2($131,16,0,$132)|0); + break L7; + } + $133 = HEAP32[$1>>2]|0; + $134 = (_exprAlwaysFalse($133)|0); + $135 = ($134|0)!=(0); + if (!($135)) { + $136 = HEAP32[$0>>2]|0; + $137 = HEAP32[$1>>2]|0; + $138 = (_sqlite3ExprCodeTemp($136,$137,$regFree1)|0); + HEAP32[$r1>>2] = $138; + $139 = HEAP32[$v>>2]|0; + $140 = HEAP32[$r1>>2]|0; + $141 = HEAP32[$2>>2]|0; + $142 = HEAP32[$3>>2]|0; + $143 = ($142|0)!=(0); + $144 = $143&1; + (_sqlite3VdbeAddOp3($139,44,$140,$141,$144)|0); + } + } + } + } while(0); + $145 = HEAP32[$0>>2]|0; + $146 = HEAP32[$regFree1>>2]|0; + _sqlite3ReleaseTempReg($145,$146); + $147 = HEAP32[$0>>2]|0; + $148 = HEAP32[$regFree2>>2]|0; + _sqlite3ReleaseTempReg($147,$148); + STACKTOP = sp;return; +} +function _sqlite3ExprCodeTemp($pParse,$pExpr,$pReg) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + $pReg = $pReg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, $pItem = 0, $r1 = 0, $r2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $r2 = sp + 16|0; + $p = sp + 8|0; + $i = sp + 4|0; + $pItem = sp; + $r1 = sp + 12|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pExpr; + HEAP32[$3>>2] = $pReg; + $4 = HEAP32[$2>>2]|0; + $5 = (_sqlite3ExprSkipCollate($4)|0); + HEAP32[$2>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 23|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = ($9|0)!=(0); + if ($10) { + $11 = HEAP32[$2>>2]|0; + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = ($13|0)!=(159); + if ($14) { + $15 = HEAP32[$2>>2]|0; + $16 = (_sqlite3ExprIsConstantNotJoin($15)|0); + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 316|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$p>>2] = $20; + $21 = HEAP32[$3>>2]|0; + HEAP32[$21>>2] = 0; + $22 = HEAP32[$p>>2]|0; + $23 = ($22|0)!=(0|0); + L5: do { + if ($23) { + $24 = HEAP32[$p>>2]|0; + $25 = (($24) + 4|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$pItem>>2] = $26; + $27 = HEAP32[$p>>2]|0; + $28 = HEAP32[$27>>2]|0; + HEAP32[$i>>2] = $28; + while(1) { + $29 = HEAP32[$i>>2]|0; + $30 = ($29|0)>(0); + if (!($30)) { + break L5; + } + $31 = HEAP32[$pItem>>2]|0; + $32 = (($31) + 13|0); + $33 = HEAP8[$32>>0]|0; + $34 = ($33&255) >>> 2; + $35 = $34 & 1; + $36 = $35&255; + $37 = ($36|0)!=(0); + if ($37) { + $38 = HEAP32[$pItem>>2]|0; + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$2>>2]|0; + $41 = (_sqlite3ExprCompare($39,$40,-1)|0); + $42 = ($41|0)==(0); + if ($42) { + break; + } + } + $46 = HEAP32[$pItem>>2]|0; + $47 = (($46) + 20|0); + HEAP32[$pItem>>2] = $47; + $48 = HEAP32[$i>>2]|0; + $49 = (($48) + -1)|0; + HEAP32[$i>>2] = $49; + } + $43 = HEAP32[$pItem>>2]|0; + $44 = (($43) + 16|0); + $45 = HEAP32[$44>>2]|0; + HEAP32[$0>>2] = $45; + $72 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($72|0); + } + } while(0); + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 72|0); + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + 1)|0; + HEAP32[$51>>2] = $53; + HEAP32[$r2>>2] = $53; + $54 = HEAP32[$1>>2]|0; + $55 = HEAP32[$2>>2]|0; + $56 = HEAP32[$r2>>2]|0; + _sqlite3ExprCodeAtInit($54,$55,$56,1); + } else { + label = 12; + } + } else { + label = 12; + } + } else { + label = 12; + } + do { + if ((label|0) == 12) { + $57 = HEAP32[$1>>2]|0; + $58 = (_sqlite3GetTempReg($57)|0); + HEAP32[$r1>>2] = $58; + $59 = HEAP32[$1>>2]|0; + $60 = HEAP32[$2>>2]|0; + $61 = HEAP32[$r1>>2]|0; + $62 = (_sqlite3ExprCodeTarget($59,$60,$61)|0); + HEAP32[$r2>>2] = $62; + $63 = HEAP32[$r2>>2]|0; + $64 = HEAP32[$r1>>2]|0; + $65 = ($63|0)==($64|0); + if ($65) { + $66 = HEAP32[$r1>>2]|0; + $67 = HEAP32[$3>>2]|0; + HEAP32[$67>>2] = $66; + break; + } else { + $68 = HEAP32[$1>>2]|0; + $69 = HEAP32[$r1>>2]|0; + _sqlite3ReleaseTempReg($68,$69); + $70 = HEAP32[$3>>2]|0; + HEAP32[$70>>2] = 0; + break; + } + } + } while(0); + $71 = HEAP32[$r2>>2]|0; + HEAP32[$0>>2] = $71; + $72 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($72|0); +} +function _codeCompare($pParse,$pLeft,$pRight,$opcode,$in1,$in2,$dest,$jumpIfNull) { + $pParse = $pParse|0; + $pLeft = $pLeft|0; + $pRight = $pRight|0; + $opcode = $opcode|0; + $in1 = $in1|0; + $in2 = $in2|0; + $dest = $dest|0; + $jumpIfNull = $jumpIfNull|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $addr = 0, $p4 = 0, $p5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $5 = sp + 20|0; + $6 = sp + 12|0; + $7 = sp + 8|0; + $p5 = sp + 4|0; + $addr = sp; + $p4 = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pLeft; + HEAP32[$2>>2] = $pRight; + HEAP32[$3>>2] = $opcode; + HEAP32[$4>>2] = $in1; + HEAP32[$5>>2] = $in2; + HEAP32[$6>>2] = $dest; + HEAP32[$7>>2] = $jumpIfNull; + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = (_sqlite3BinaryCompareCollSeq($8,$9,$10)|0); + HEAP32[$p4>>2] = $11; + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = HEAP32[$7>>2]|0; + $15 = (_binaryCompareP5($12,$13,$14)|0); + $16 = $15&255; + HEAP32[$p5>>2] = $16; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 8|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$3>>2]|0; + $21 = HEAP32[$5>>2]|0; + $22 = HEAP32[$6>>2]|0; + $23 = HEAP32[$4>>2]|0; + $24 = HEAP32[$p4>>2]|0; + $25 = (_sqlite3VdbeAddOp4($19,$20,$21,$22,$23,$24,-4)|0); + HEAP32[$addr>>2] = $25; + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 8|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$p5>>2]|0; + $30 = $29&255; + _sqlite3VdbeChangeP5($28,$30); + $31 = HEAP32[$addr>>2]|0; + STACKTOP = sp;return ($31|0); +} +function _exprCodeBetween($pParse,$pExpr,$dest,$jumpIfTrue,$jumpIfNull) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + $dest = $dest|0; + $jumpIfTrue = $jumpIfTrue|0; + $jumpIfNull = $jumpIfNull|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $compLeft = 0, $compRight = 0, $exprAnd = 0, $exprX = 0; + var $regFree1 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 224|0; + $0 = sp + 216|0; + $1 = sp + 212|0; + $2 = sp + 208|0; + $3 = sp + 204|0; + $4 = sp + 200|0; + $exprAnd = sp + 152|0; + $compLeft = sp + 96|0; + $compRight = sp + 48|0; + $exprX = sp; + $regFree1 = sp + 144|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $dest; + HEAP32[$3>>2] = $jumpIfTrue; + HEAP32[$4>>2] = $jumpIfNull; + HEAP32[$regFree1>>2] = 0; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 12|0); + $7 = HEAP32[$6>>2]|0; + dest=$exprX+0|0; src=$7+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + HEAP8[$exprAnd>>0] = 72; + $8 = (($exprAnd) + 12|0); + HEAP32[$8>>2] = $compLeft; + $9 = (($exprAnd) + 16|0); + HEAP32[$9>>2] = $compRight; + HEAP8[$compLeft>>0] = 83; + $10 = (($compLeft) + 12|0); + HEAP32[$10>>2] = $exprX; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 20|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = (($compLeft) + 16|0); + HEAP32[$17>>2] = $16; + HEAP8[$compRight>>0] = 81; + $18 = (($compRight) + 12|0); + HEAP32[$18>>2] = $exprX; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 20|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + 20|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($compRight) + 16|0); + HEAP32[$26>>2] = $25; + $27 = HEAP32[$0>>2]|0; + $28 = (_sqlite3ExprCodeTemp($27,$exprX,$regFree1)|0); + _exprToRegister($exprX,$28); + $29 = HEAP32[$3>>2]|0; + $30 = ($29|0)!=(0); + $31 = HEAP32[$0>>2]|0; + $32 = HEAP32[$2>>2]|0; + $33 = HEAP32[$4>>2]|0; + if ($30) { + _sqlite3ExprIfTrue($31,$exprAnd,$32,$33); + $34 = HEAP32[$0>>2]|0; + $35 = HEAP32[$regFree1>>2]|0; + _sqlite3ReleaseTempReg($34,$35); + STACKTOP = sp;return; + } else { + _sqlite3ExprIfFalse($31,$exprAnd,$32,$33); + $34 = HEAP32[$0>>2]|0; + $35 = HEAP32[$regFree1>>2]|0; + _sqlite3ReleaseTempReg($34,$35); + STACKTOP = sp;return; + } +} +function _sqlite3ExprCodeIN($pParse,$pExpr,$destIfFalse,$destIfNull) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + $destIfFalse = $destIfFalse|0; + $destIfNull = $destIfNull|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $addr1 = 0, $affinity = 0, $eType = 0, $j1 = 0, $j2 = 0, $r1 = 0, $rRhsHasNull = 0, $v = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $rRhsHasNull = sp + 24|0; + $affinity = sp + 44|0; + $eType = sp + 20|0; + $r1 = sp + 12|0; + $v = sp + 8|0; + $addr1 = sp + 4|0; + $j1 = sp; + $j2 = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $destIfFalse; + HEAP32[$3>>2] = $destIfNull; + HEAP32[$rRhsHasNull>>2] = 0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$v>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (_sqlite3FindInIndex($7,$8,$rRhsHasNull)|0); + HEAP32[$eType>>2] = $9; + $10 = HEAP32[$1>>2]|0; + $11 = (_comparisonAffinity($10)|0); + HEAP8[$affinity>>0] = $11; + $12 = HEAP32[$0>>2]|0; + _sqlite3ExprCachePush($12); + $13 = HEAP32[$0>>2]|0; + $14 = (_sqlite3GetTempReg($13)|0); + HEAP32[$r1>>2] = $14; + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 12|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$r1>>2]|0; + _sqlite3ExprCode($15,$18,$19); + $20 = HEAP32[$3>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = ($20|0)==($21|0); + $23 = HEAP32[$v>>2]|0; + $24 = HEAP32[$r1>>2]|0; + if ($22) { + $25 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($23,76,$24,$25)|0); + } else { + $26 = (_sqlite3VdbeAddOp1($23,77,$24)|0); + HEAP32[$addr1>>2] = $26; + $27 = HEAP32[$v>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 28|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp2($27,105,$30,$31)|0); + $32 = HEAP32[$v>>2]|0; + $33 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($32,16,0,$33)|0); + $34 = HEAP32[$v>>2]|0; + $35 = HEAP32[$addr1>>2]|0; + _sqlite3VdbeJumpHere($34,$35); + } + $36 = HEAP32[$eType>>2]|0; + $37 = ($36|0)==(1); + $38 = HEAP32[$v>>2]|0; + $39 = HEAP32[$r1>>2]|0; + if ($37) { + $40 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp2($38,38,$39,$40)|0); + $41 = HEAP32[$v>>2]|0; + $42 = HEAP32[$1>>2]|0; + $43 = (($42) + 28|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$2>>2]|0; + $46 = HEAP32[$r1>>2]|0; + (_sqlite3VdbeAddOp3($41,67,$44,$45,$46)|0); + $88 = HEAP32[$0>>2]|0; + $89 = HEAP32[$r1>>2]|0; + _sqlite3ReleaseTempReg($88,$89); + $90 = HEAP32[$0>>2]|0; + _sqlite3ExprCachePop($90); + STACKTOP = sp;return; + } + (_sqlite3VdbeAddOp4($38,47,$39,1,0,$affinity,1)|0); + $47 = HEAP32[$rRhsHasNull>>2]|0; + $48 = ($47|0)==(0); + if (!($48)) { + $49 = HEAP32[$2>>2]|0; + $50 = HEAP32[$3>>2]|0; + $51 = ($49|0)==($50|0); + if (!($51)) { + $58 = HEAP32[$v>>2]|0; + $59 = HEAP32[$1>>2]|0; + $60 = (($59) + 28|0); + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$r1>>2]|0; + $63 = (_sqlite3VdbeAddOp4Int($58,66,$61,0,$62,1)|0); + HEAP32[$j1>>2] = $63; + $64 = HEAP32[$v>>2]|0; + $65 = HEAP32[$rRhsHasNull>>2]|0; + $66 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($64,44,$65,$66)|0); + $67 = HEAP32[$v>>2]|0; + $68 = HEAP32[$rRhsHasNull>>2]|0; + $69 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp2($67,45,$68,$69)|0); + $70 = HEAP32[$v>>2]|0; + $71 = HEAP32[$1>>2]|0; + $72 = (($71) + 28|0); + $73 = HEAP32[$72>>2]|0; + $74 = HEAP32[$rRhsHasNull>>2]|0; + $75 = (_sqlite3VdbeAddOp4Int($70,66,$73,0,$74,1)|0); + HEAP32[$j2>>2] = $75; + $76 = HEAP32[$v>>2]|0; + $77 = HEAP32[$rRhsHasNull>>2]|0; + (_sqlite3VdbeAddOp2($76,25,0,$77)|0); + $78 = HEAP32[$v>>2]|0; + $79 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp2($78,16,0,$79)|0); + $80 = HEAP32[$v>>2]|0; + $81 = HEAP32[$j2>>2]|0; + _sqlite3VdbeJumpHere($80,$81); + $82 = HEAP32[$v>>2]|0; + $83 = HEAP32[$rRhsHasNull>>2]|0; + (_sqlite3VdbeAddOp2($82,25,1,$83)|0); + $84 = HEAP32[$v>>2]|0; + $85 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($84,16,0,$85)|0); + $86 = HEAP32[$v>>2]|0; + $87 = HEAP32[$j1>>2]|0; + _sqlite3VdbeJumpHere($86,$87); + $88 = HEAP32[$0>>2]|0; + $89 = HEAP32[$r1>>2]|0; + _sqlite3ReleaseTempReg($88,$89); + $90 = HEAP32[$0>>2]|0; + _sqlite3ExprCachePop($90); + STACKTOP = sp;return; + } + } + $52 = HEAP32[$v>>2]|0; + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 28|0); + $55 = HEAP32[$54>>2]|0; + $56 = HEAP32[$2>>2]|0; + $57 = HEAP32[$r1>>2]|0; + (_sqlite3VdbeAddOp4Int($52,65,$55,$56,$57,1)|0); + $88 = HEAP32[$0>>2]|0; + $89 = HEAP32[$r1>>2]|0; + _sqlite3ReleaseTempReg($88,$89); + $90 = HEAP32[$0>>2]|0; + _sqlite3ExprCachePop($90); + STACKTOP = sp;return; +} +function _exprAlwaysTrue($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $v = sp + 4|0; + HEAP32[$1>>2] = $p; + HEAP32[$v>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = $4 & 1; + $6 = ($5|0)!=(0); + do { + if ($6) { + HEAP32[$0>>2] = 0; + } else { + $7 = HEAP32[$1>>2]|0; + $8 = (_sqlite3ExprIsInteger($7,$v)|0); + $9 = ($8|0)!=(0); + if ($9) { + $10 = HEAP32[$v>>2]|0; + $11 = ($10|0)!=(0); + $12 = $11&1; + HEAP32[$0>>2] = $12; + break; + } else { + HEAP32[$0>>2] = 0; + break; + } + } + } while(0); + $13 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($13|0); +} +function _sqlite3FindInIndex($pParse,$pX,$prNotFound) { + $pParse = $pParse|0; + $pX = $pX|0; + $prNotFound = $prNotFound|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $affinity_ok = 0, $db = 0, $eType = 0, $iAddr = 0, $iAddr1 = 0, $iCol = 0; + var $iDb = 0, $iTab = 0, $mustBeUnique = 0, $p = 0, $pExpr = 0, $pIdx = 0, $pReq = 0, $pTab = 0, $rMayHaveNull = 0, $savedNQueryLoop = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 56|0; + $1 = sp + 44|0; + $2 = sp + 48|0; + $p = sp + 52|0; + $eType = sp + 60|0; + $iTab = sp + 64|0; + $mustBeUnique = sp + 68|0; + $v = sp + 40|0; + $db = sp; + $pTab = sp + 12|0; + $pExpr = sp + 4|0; + $iCol = sp + 72|0; + $iDb = sp + 74|0; + $iAddr = sp + 8|0; + $pIdx = sp + 16|0; + $pReq = sp + 20|0; + $affinity_ok = sp + 24|0; + $iAddr1 = sp + 28|0; + $savedNQueryLoop = sp + 32|0; + $rMayHaveNull = sp + 36|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pX; + HEAP32[$2>>2] = $prNotFound; + HEAP32[$eType>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 68|0); + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + 1)|0; + HEAP32[$4>>2] = $6; + HEAP32[$iTab>>2] = $5; + $7 = HEAP32[$2>>2]|0; + $8 = ($7|0)==(0|0); + $9 = $8&1; + HEAP32[$mustBeUnique>>2] = $9; + $10 = HEAP32[$0>>2]|0; + $11 = (_sqlite3GetVdbe($10)|0); + HEAP32[$v>>2] = $11; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = $14 & 2048; + $16 = ($15|0)!=(0); + if ($16) { + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 20|0); + $19 = HEAP32[$18>>2]|0; + $20 = $19; + } else { + $20 = 0; + } + HEAP32[$p>>2] = $20; + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 64|0); + $23 = HEAP32[$22>>2]|0; + $24 = ($23|0)==(0); + L4: do { + if ($24) { + $25 = HEAP32[$p>>2]|0; + $26 = (_isCandidateForInOpt($25)|0); + $27 = ($26|0)!=(0); + if ($27) { + $28 = HEAP32[$0>>2]|0; + $29 = HEAP32[$28>>2]|0; + HEAP32[$db>>2] = $29; + $30 = HEAP32[$p>>2]|0; + $31 = (($30) + 32|0); + $32 = HEAP32[$31>>2]|0; + $33 = (($32) + 8|0); + $34 = (($33) + 16|0); + $35 = HEAP32[$34>>2]|0; + HEAP32[$pTab>>2] = $35; + $36 = HEAP32[$p>>2]|0; + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + 4|0); + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$39>>2]|0; + HEAP32[$pExpr>>2] = $40; + $41 = HEAP32[$pExpr>>2]|0; + $42 = (($41) + 32|0); + $43 = HEAP16[$42>>1]|0; + HEAP16[$iCol>>1] = $43; + $44 = HEAP32[$db>>2]|0; + $45 = HEAP32[$pTab>>2]|0; + $46 = (($45) + 68|0); + $47 = HEAP32[$46>>2]|0; + $48 = (_sqlite3SchemaToIndex($44,$47)|0); + $49 = $48&65535; + HEAP16[$iDb>>1] = $49; + $50 = HEAP32[$0>>2]|0; + $51 = HEAP16[$iDb>>1]|0; + $52 = $51 << 16 >> 16; + _sqlite3CodeVerifySchema($50,$52); + $53 = HEAP32[$0>>2]|0; + $54 = HEAP16[$iDb>>1]|0; + $55 = $54 << 16 >> 16; + $56 = HEAP32[$pTab>>2]|0; + $57 = (($56) + 32|0); + $58 = HEAP32[$57>>2]|0; + $59 = HEAP32[$pTab>>2]|0; + $60 = HEAP32[$59>>2]|0; + _sqlite3TableLock($53,$55,$58,0,$60); + $61 = HEAP16[$iCol>>1]|0; + $62 = $61 << 16 >> 16; + $63 = ($62|0)<(0); + $64 = HEAP32[$0>>2]|0; + if ($63) { + $65 = (_sqlite3CodeOnce($64)|0); + HEAP32[$iAddr>>2] = $65; + $66 = HEAP32[$0>>2]|0; + $67 = HEAP32[$iTab>>2]|0; + $68 = HEAP16[$iDb>>1]|0; + $69 = $68 << 16 >> 16; + $70 = HEAP32[$pTab>>2]|0; + _sqlite3OpenTable($66,$67,$69,$70,52); + HEAP32[$eType>>2] = 1; + $71 = HEAP32[$v>>2]|0; + $72 = HEAP32[$iAddr>>2]|0; + _sqlite3VdbeJumpHere($71,$72); + break; + } + $73 = HEAP32[$1>>2]|0; + $74 = (($73) + 12|0); + $75 = HEAP32[$74>>2]|0; + $76 = HEAP32[$pExpr>>2]|0; + $77 = (_sqlite3BinaryCompareCollSeq($64,$75,$76)|0); + HEAP32[$pReq>>2] = $77; + $78 = HEAP32[$1>>2]|0; + $79 = HEAP16[$iCol>>1]|0; + $80 = $79 << 16 >> 16; + $81 = HEAP32[$pTab>>2]|0; + $82 = (($81) + 4|0); + $83 = HEAP32[$82>>2]|0; + $84 = (($83) + (($80*24)|0)|0); + $85 = (($84) + 21|0); + $86 = HEAP8[$85>>0]|0; + $87 = (_sqlite3IndexAffinityOk($78,$86)|0); + HEAP32[$affinity_ok>>2] = $87; + $88 = HEAP32[$pTab>>2]|0; + $89 = (($88) + 8|0); + $90 = HEAP32[$89>>2]|0; + HEAP32[$pIdx>>2] = $90; + while(1) { + $91 = HEAP32[$pIdx>>2]|0; + $92 = ($91|0)!=(0|0); + if (!($92)) { + break L4; + } + $93 = HEAP32[$eType>>2]|0; + $94 = ($93|0)==(0); + if (!($94)) { + break L4; + } + $95 = HEAP32[$affinity_ok>>2]|0; + $96 = ($95|0)!=(0); + if (!($96)) { + break L4; + } + $97 = HEAP32[$pIdx>>2]|0; + $98 = (($97) + 4|0); + $99 = HEAP32[$98>>2]|0; + $100 = HEAP16[$99>>1]|0; + $101 = $100 << 16 >> 16; + $102 = HEAP16[$iCol>>1]|0; + $103 = $102 << 16 >> 16; + $104 = ($101|0)==($103|0); + do { + if ($104) { + $105 = HEAP32[$db>>2]|0; + $106 = HEAP32[$db>>2]|0; + $107 = (($106) + 16|0); + $108 = HEAP32[$107>>2]|0; + $109 = (($108) + 12|0); + $110 = HEAP32[$109>>2]|0; + $111 = (($110) + 77|0); + $112 = HEAP8[$111>>0]|0; + $113 = HEAP32[$pIdx>>2]|0; + $114 = (($113) + 32|0); + $115 = HEAP32[$114>>2]|0; + $116 = HEAP32[$115>>2]|0; + $117 = (_sqlite3FindCollSeq($105,$112,$116,0)|0); + $118 = HEAP32[$pReq>>2]|0; + $119 = ($117|0)==($118|0); + if ($119) { + $120 = HEAP32[$mustBeUnique>>2]|0; + $121 = ($120|0)!=(0); + if ($121) { + $122 = HEAP32[$pIdx>>2]|0; + $123 = (($122) + 50|0); + $124 = HEAP16[$123>>1]|0; + $125 = $124&65535; + $126 = ($125|0)==(1); + if (!($126)) { + break; + } + $127 = HEAP32[$pIdx>>2]|0; + $128 = (($127) + 54|0); + $129 = HEAP8[$128>>0]|0; + $130 = $129&255; + $131 = ($130|0)!=(0); + if (!($131)) { + break; + } + } + $132 = HEAP32[$0>>2]|0; + $133 = (_sqlite3CodeOnce($132)|0); + HEAP32[$iAddr1>>2] = $133; + $134 = HEAP32[$v>>2]|0; + $135 = HEAP32[$iTab>>2]|0; + $136 = HEAP32[$pIdx>>2]|0; + $137 = (($136) + 44|0); + $138 = HEAP32[$137>>2]|0; + $139 = HEAP16[$iDb>>1]|0; + $140 = $139 << 16 >> 16; + (_sqlite3VdbeAddOp3($134,52,$135,$138,$140)|0); + $141 = HEAP32[$0>>2]|0; + $142 = HEAP32[$pIdx>>2]|0; + _sqlite3VdbeSetP4KeyInfo($141,$142); + $143 = HEAP32[$pIdx>>2]|0; + $144 = (($143) + 28|0); + $145 = HEAP32[$144>>2]|0; + $146 = HEAP8[$145>>0]|0; + $147 = $146&255; + $148 = (3 + ($147))|0; + HEAP32[$eType>>2] = $148; + $149 = HEAP32[$2>>2]|0; + $150 = ($149|0)!=(0|0); + if ($150) { + $151 = HEAP16[$iCol>>1]|0; + $152 = $151 << 16 >> 16; + $153 = HEAP32[$pTab>>2]|0; + $154 = (($153) + 4|0); + $155 = HEAP32[$154>>2]|0; + $156 = (($155) + (($152*24)|0)|0); + $157 = (($156) + 20|0); + $158 = HEAP8[$157>>0]|0; + $159 = ($158<<24>>24)!=(0); + if (!($159)) { + $160 = HEAP32[$0>>2]|0; + $161 = (($160) + 72|0); + $162 = HEAP32[$161>>2]|0; + $163 = (($162) + 1)|0; + HEAP32[$161>>2] = $163; + $164 = HEAP32[$2>>2]|0; + HEAP32[$164>>2] = $163; + $165 = HEAP32[$v>>2]|0; + $166 = HEAP32[$2>>2]|0; + $167 = HEAP32[$166>>2]|0; + (_sqlite3VdbeAddOp2($165,28,0,$167)|0); + } + } + $168 = HEAP32[$v>>2]|0; + $169 = HEAP32[$iAddr1>>2]|0; + _sqlite3VdbeJumpHere($168,$169); + } + } + } while(0); + $170 = HEAP32[$pIdx>>2]|0; + $171 = (($170) + 20|0); + $172 = HEAP32[$171>>2]|0; + HEAP32[$pIdx>>2] = $172; + } + } + } + } while(0); + $173 = HEAP32[$eType>>2]|0; + $174 = ($173|0)==(0); + if (!($174)) { + $210 = HEAP32[$iTab>>2]|0; + $211 = HEAP32[$1>>2]|0; + $212 = (($211) + 28|0); + HEAP32[$212>>2] = $210; + $213 = HEAP32[$eType>>2]|0; + STACKTOP = sp;return ($213|0); + } + $175 = HEAP32[$0>>2]|0; + $176 = (($175) + 424|0); + $177 = HEAP32[$176>>2]|0; + HEAP32[$savedNQueryLoop>>2] = $177; + HEAP32[$rMayHaveNull>>2] = 0; + HEAP32[$eType>>2] = 2; + $178 = HEAP32[$2>>2]|0; + $179 = ($178|0)!=(0|0); + $180 = HEAP32[$0>>2]|0; + if ($179) { + $181 = (($180) + 72|0); + $182 = HEAP32[$181>>2]|0; + $183 = (($182) + 1)|0; + HEAP32[$181>>2] = $183; + HEAP32[$rMayHaveNull>>2] = $183; + $184 = HEAP32[$2>>2]|0; + HEAP32[$184>>2] = $183; + $185 = HEAP32[$v>>2]|0; + $186 = HEAP32[$2>>2]|0; + $187 = HEAP32[$186>>2]|0; + (_sqlite3VdbeAddOp2($185,28,0,$187)|0); + } else { + $188 = (($180) + 424|0); + HEAP32[$188>>2] = 0; + $189 = HEAP32[$1>>2]|0; + $190 = (($189) + 12|0); + $191 = HEAP32[$190>>2]|0; + $192 = (($191) + 32|0); + $193 = HEAP16[$192>>1]|0; + $194 = $193 << 16 >> 16; + $195 = ($194|0)<(0); + if ($195) { + $196 = HEAP32[$1>>2]|0; + $197 = (($196) + 4|0); + $198 = HEAP32[$197>>2]|0; + $199 = $198 & 2048; + $200 = ($199|0)!=(0); + if (!($200)) { + HEAP32[$eType>>2] = 1; + } + } + } + $201 = HEAP32[$0>>2]|0; + $202 = HEAP32[$1>>2]|0; + $203 = HEAP32[$rMayHaveNull>>2]|0; + $204 = HEAP32[$eType>>2]|0; + $205 = ($204|0)==(1); + $206 = $205&1; + (_sqlite3CodeSubselect($201,$202,$203,$206)|0); + $207 = HEAP32[$savedNQueryLoop>>2]|0; + $208 = HEAP32[$0>>2]|0; + $209 = (($208) + 424|0); + HEAP32[$209>>2] = $207; + $213 = HEAP32[$eType>>2]|0; + STACKTOP = sp;return ($213|0); +} +function _comparisonAffinity($pExpr) { + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aff = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + $aff = sp + 4|0; + HEAP32[$0>>2] = $pExpr; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 12|0); + $3 = HEAP32[$2>>2]|0; + $4 = (_sqlite3ExprAffinity($3)|0); + HEAP8[$aff>>0] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 16|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + $9 = HEAP32[$0>>2]|0; + if ($8) { + $10 = (($9) + 16|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP8[$aff>>0]|0; + $13 = (_sqlite3CompareAffinity($11,$12)|0); + HEAP8[$aff>>0] = $13; + $29 = HEAP8[$aff>>0]|0; + STACKTOP = sp;return ($29|0); + } + $14 = (($9) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = $15 & 2048; + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 20|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$23>>2]|0; + $25 = HEAP8[$aff>>0]|0; + $26 = (_sqlite3CompareAffinity($24,$25)|0); + HEAP8[$aff>>0] = $26; + $29 = HEAP8[$aff>>0]|0; + STACKTOP = sp;return ($29|0); + } + $27 = HEAP8[$aff>>0]|0; + $28 = ($27<<24>>24)!=(0); + if ($28) { + $29 = HEAP8[$aff>>0]|0; + STACKTOP = sp;return ($29|0); + } + HEAP8[$aff>>0] = 98; + $29 = HEAP8[$aff>>0]|0; + STACKTOP = sp;return ($29|0); +} +function _sqlite3ExprCode($pParse,$pExpr,$target) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + $target = $target|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $inReg = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $inReg = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $target; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = HEAP32[$1>>2]|0; + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = ($7|0)==(159); + if ($8) { + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 8|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 28|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp2($11,33,$14,$15)|0); + STACKTOP = sp;return; + } + } + $16 = HEAP32[$0>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = (_sqlite3ExprCodeTarget($16,$17,$18)|0); + HEAP32[$inReg>>2] = $19; + $20 = HEAP32[$inReg>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = ($20|0)!=($21|0); + if (!($22)) { + STACKTOP = sp;return; + } + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 8|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)!=(0|0); + if (!($26)) { + STACKTOP = sp;return; + } + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 8|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$inReg>>2]|0; + $31 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp2($29,34,$30,$31)|0); + STACKTOP = sp;return; +} +function _sqlite3ExprCodeTarget($pParse,$pExpr,$target) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + $target = $target|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; + var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; + var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; + var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; + var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; + var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0; + var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0; + var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0; + var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aListelem = 0, $addr = 0, $aff = 0, $constMask = 0, $db = 0, $destIfFalse = 0, $destIfNull = 0, $enc = 0, $endCoalesce = 0, $endLabel = 0, $exprOp = 0, $i = 0, $i2 = 0; + var $iTab = 0, $inReg = 0, $n = 0, $nExpr = 0, $nFarg = 0, $nId = 0, $nextCase = 0, $op = 0, $opCompare = 0, $p1 = 0, $pAggInfo = 0, $pCol = 0, $pColl = 0, $pDef = 0, $pEList = 0, $pFarg = 0, $pInfo = 0, $pLItem = 0, $pLeft = 0, $pLeft1 = 0; + var $pRight = 0, $pTab = 0, $pTest = 0, $pX = 0, $r1 = 0, $r2 = 0, $r3 = 0, $r4 = 0, $regFree1 = 0, $regFree2 = 0, $tempX = 0, $to_op = 0, $v = 0, $vararg_buffer5 = 0, $vararg_ptr4 = 0, $z = 0, $zBlob = 0, $zId = 0, dest = 0, label = 0; + var sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 320|0; + $vararg_buffer5 = sp; + $0 = sp + 216|0; + $1 = sp + 212|0; + $2 = sp + 208|0; + $3 = sp + 204|0; + $v = sp + 196|0; + $op = sp + 192|0; + $inReg = sp + 188|0; + $regFree1 = sp + 200|0; + $regFree2 = sp + 224|0; + $r1 = sp + 228|0; + $r2 = sp + 232|0; + $r3 = sp + 236|0; + $r4 = sp + 240|0; + $db = sp + 244|0; + $tempX = sp + 248|0; + $pAggInfo = sp + 296|0; + $pCol = sp + 300|0; + $iTab = sp + 184|0; + $n = sp + 180|0; + $z = sp + 176|0; + $zBlob = sp + 172|0; + $aff = sp + 168|0; + $to_op = sp + 164|0; + $pLeft = sp + 160|0; + $addr = sp + 48|0; + $pInfo = sp + 56|0; + $pFarg = sp + 220|0; + $nFarg = sp + 40|0; + $pDef = sp + 36|0; + $nId = sp + 32|0; + $zId = sp + 52|0; + $constMask = sp + 20|0; + $i = sp + 16|0; + $enc = sp + 304|0; + $pColl = sp + 12|0; + $endCoalesce = sp + 8|0; + $exprOp = sp + 305|0; + $destIfFalse = sp + 24|0; + $destIfNull = sp + 28|0; + $pLeft1 = sp + 156|0; + $pLItem = sp + 60|0; + $pRight = sp + 64|0; + $pTab = sp + 68|0; + $p1 = sp + 72|0; + $endLabel = sp + 76|0; + $nextCase = sp + 80|0; + $nExpr = sp + 84|0; + $i2 = sp + 88|0; + $pEList = sp + 92|0; + $aListelem = sp + 96|0; + $opCompare = sp + 104|0; + $pX = sp + 152|0; + $pTest = sp + 44|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pExpr; + HEAP32[$3>>2] = $target; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$v>>2] = $6; + $7 = HEAP32[$3>>2]|0; + HEAP32[$inReg>>2] = $7; + HEAP32[$regFree1>>2] = 0; + HEAP32[$regFree2>>2] = 0; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$db>>2] = $9; + $10 = HEAP32[$v>>2]|0; + $11 = ($10|0)==(0|0); + if ($11) { + HEAP32[$0>>2] = 0; + $746 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($746|0); + } + $12 = HEAP32[$2>>2]|0; + $13 = ($12|0)==(0|0); + if ($13) { + HEAP32[$op>>2] = 101; + } else { + $14 = HEAP32[$2>>2]|0; + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + HEAP32[$op>>2] = $16; + } + $17 = HEAP32[$op>>2]|0; + L9: do { + switch ($17|0) { + case 157: { + $232 = HEAP32[$2>>2]|0; + $233 = (($232) + 12|0); + $234 = HEAP32[$233>>2]|0; + HEAP32[$pLeft>>2] = $234; + $235 = HEAP32[$pLeft>>2]|0; + $236 = HEAP8[$235>>0]|0; + $237 = $236&255; + $238 = ($237|0)==(132); + do { + if ($238) { + $239 = HEAP32[$1>>2]|0; + $240 = HEAP32[$pLeft>>2]|0; + $241 = HEAP32[$3>>2]|0; + _codeInteger($239,$240,1,$241); + } else { + $242 = HEAP32[$pLeft>>2]|0; + $243 = HEAP8[$242>>0]|0; + $244 = $243&255; + $245 = ($244|0)==(133); + if ($245) { + $246 = HEAP32[$v>>2]|0; + $247 = HEAP32[$pLeft>>2]|0; + $248 = (($247) + 8|0); + $249 = HEAP32[$248>>2]|0; + $250 = HEAP32[$3>>2]|0; + _codeReal($246,$249,1,$250); + break; + } else { + HEAP8[$tempX>>0] = -124; + $251 = (($tempX) + 4|0); + HEAP32[$251>>2] = 17408; + $252 = (($tempX) + 8|0); + HEAP32[$252>>2] = 0; + $253 = HEAP32[$1>>2]|0; + $254 = (_sqlite3ExprCodeTemp($253,$tempX,$regFree1)|0); + HEAP32[$r1>>2] = $254; + $255 = HEAP32[$1>>2]|0; + $256 = HEAP32[$2>>2]|0; + $257 = (($256) + 12|0); + $258 = HEAP32[$257>>2]|0; + $259 = (_sqlite3ExprCodeTemp($255,$258,$regFree2)|0); + HEAP32[$r2>>2] = $259; + $260 = HEAP32[$v>>2]|0; + $261 = HEAP32[$r2>>2]|0; + $262 = HEAP32[$r1>>2]|0; + $263 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp3($260,90,$261,$262,$263)|0); + break; + } + } + } while(0); + $264 = HEAP32[$3>>2]|0; + HEAP32[$inReg>>2] = $264; + break; + } + case 24: { + $140 = HEAP32[$1>>2]|0; + $141 = HEAP32[$2>>2]|0; + $142 = (($141) + 12|0); + $143 = HEAP32[$142>>2]|0; + $144 = HEAP32[$3>>2]|0; + $145 = (_sqlite3ExprCodeTarget($140,$143,$144)|0); + HEAP32[$inReg>>2] = $145; + break; + } + case 134: { + $96 = HEAP32[$2>>2]|0; + $97 = (($96) + 8|0); + $98 = HEAP32[$97>>2]|0; + $99 = (($98) + 2|0); + HEAP32[$z>>2] = $99; + $100 = HEAP32[$z>>2]|0; + $101 = (_sqlite3Strlen30($100)|0); + $102 = (($101) - 1)|0; + HEAP32[$n>>2] = $102; + $103 = HEAP32[$v>>2]|0; + $104 = (_sqlite3VdbeDb($103)|0); + $105 = HEAP32[$z>>2]|0; + $106 = HEAP32[$n>>2]|0; + $107 = (_sqlite3HexToBlob($104,$105,$106)|0); + HEAP32[$zBlob>>2] = $107; + $108 = HEAP32[$v>>2]|0; + $109 = HEAP32[$n>>2]|0; + $110 = (($109|0) / 2)&-1; + $111 = HEAP32[$3>>2]|0; + $112 = HEAP32[$zBlob>>2]|0; + (_sqlite3VdbeAddOp4($108,30,$110,$111,0,$112,-1)|0); + break; + } + case 159: { + $137 = HEAP32[$2>>2]|0; + $138 = (($137) + 28|0); + $139 = HEAP32[$138>>2]|0; + HEAP32[$inReg>>2] = $139; + break; + } + case 153: { + HEAP32[$constMask>>2] = 0; + $309 = HEAP32[$db>>2]|0; + $310 = (($309) + 16|0); + $311 = HEAP32[$310>>2]|0; + $312 = (($311) + 12|0); + $313 = HEAP32[$312>>2]|0; + $314 = (($313) + 77|0); + $315 = HEAP8[$314>>0]|0; + HEAP8[$enc>>0] = $315; + HEAP32[$pColl>>2] = 0; + $316 = HEAP32[$2>>2]|0; + $317 = (($316) + 4|0); + $318 = HEAP32[$317>>2]|0; + $319 = $318 & 16384; + $320 = ($319|0)!=(0); + if ($320) { + HEAP32[$pFarg>>2] = 0; + } else { + $321 = HEAP32[$2>>2]|0; + $322 = (($321) + 20|0); + $323 = HEAP32[$322>>2]|0; + HEAP32[$pFarg>>2] = $323; + } + $324 = HEAP32[$pFarg>>2]|0; + $325 = ($324|0)!=(0|0); + if ($325) { + $326 = HEAP32[$pFarg>>2]|0; + $327 = HEAP32[$326>>2]|0; + $328 = $327; + } else { + $328 = 0; + } + HEAP32[$nFarg>>2] = $328; + $329 = HEAP32[$2>>2]|0; + $330 = (($329) + 8|0); + $331 = HEAP32[$330>>2]|0; + HEAP32[$zId>>2] = $331; + $332 = HEAP32[$zId>>2]|0; + $333 = (_sqlite3Strlen30($332)|0); + HEAP32[$nId>>2] = $333; + $334 = HEAP32[$db>>2]|0; + $335 = HEAP32[$zId>>2]|0; + $336 = HEAP32[$nId>>2]|0; + $337 = HEAP32[$nFarg>>2]|0; + $338 = HEAP8[$enc>>0]|0; + $339 = (_sqlite3FindFunction($334,$335,$336,$337,$338,0)|0); + HEAP32[$pDef>>2] = $339; + $340 = HEAP32[$pDef>>2]|0; + $341 = ($340|0)==(0|0); + if ($341) { + $342 = HEAP32[$1>>2]|0; + $343 = HEAP32[$nId>>2]|0; + $344 = HEAP32[$zId>>2]|0; + HEAP32[$vararg_buffer5>>2] = $343; + $vararg_ptr4 = (($vararg_buffer5) + 4|0); + HEAP32[$vararg_ptr4>>2] = $344; + _sqlite3ErrorMsg($342,25672,$vararg_buffer5); + break L9; + } + $345 = HEAP32[$pDef>>2]|0; + $346 = (($345) + 2|0); + $347 = HEAP16[$346>>1]|0; + $348 = $347&65535; + $349 = $348 & 512; + $350 = ($349|0)!=(0); + if ($350) { + $351 = HEAP32[$v>>2]|0; + $352 = (_sqlite3VdbeMakeLabel($351)|0); + HEAP32[$endCoalesce>>2] = $352; + $353 = HEAP32[$1>>2]|0; + $354 = HEAP32[$pFarg>>2]|0; + $355 = (($354) + 4|0); + $356 = HEAP32[$355>>2]|0; + $357 = HEAP32[$356>>2]|0; + $358 = HEAP32[$3>>2]|0; + _sqlite3ExprCode($353,$357,$358); + HEAP32[$i>>2] = 1; + while(1) { + $359 = HEAP32[$i>>2]|0; + $360 = HEAP32[$nFarg>>2]|0; + $361 = ($359|0)<($360|0); + $362 = HEAP32[$v>>2]|0; + if (!($361)) { + break; + } + $363 = HEAP32[$3>>2]|0; + $364 = HEAP32[$endCoalesce>>2]|0; + (_sqlite3VdbeAddOp2($362,77,$363,$364)|0); + $365 = HEAP32[$1>>2]|0; + $366 = HEAP32[$3>>2]|0; + _sqlite3ExprCacheRemove($365,$366,1); + $367 = HEAP32[$1>>2]|0; + _sqlite3ExprCachePush($367); + $368 = HEAP32[$1>>2]|0; + $369 = HEAP32[$i>>2]|0; + $370 = HEAP32[$pFarg>>2]|0; + $371 = (($370) + 4|0); + $372 = HEAP32[$371>>2]|0; + $373 = (($372) + (($369*20)|0)|0); + $374 = HEAP32[$373>>2]|0; + $375 = HEAP32[$3>>2]|0; + _sqlite3ExprCode($368,$374,$375); + $376 = HEAP32[$1>>2]|0; + _sqlite3ExprCachePop($376); + $377 = HEAP32[$i>>2]|0; + $378 = (($377) + 1)|0; + HEAP32[$i>>2] = $378; + } + $379 = HEAP32[$endCoalesce>>2]|0; + _sqlite3VdbeResolveLabel($362,$379); + break L9; + } + $380 = HEAP32[$pDef>>2]|0; + $381 = (($380) + 2|0); + $382 = HEAP16[$381>>1]|0; + $383 = $382&65535; + $384 = $383 & 1024; + $385 = ($384|0)!=(0); + if ($385) { + $386 = HEAP32[$1>>2]|0; + $387 = HEAP32[$pFarg>>2]|0; + $388 = (($387) + 4|0); + $389 = HEAP32[$388>>2]|0; + $390 = HEAP32[$389>>2]|0; + $391 = HEAP32[$3>>2]|0; + _sqlite3ExprCode($386,$390,$391); + break L9; + } + HEAP32[$i>>2] = 0; + while(1) { + $392 = HEAP32[$i>>2]|0; + $393 = HEAP32[$nFarg>>2]|0; + $394 = ($392|0)<($393|0); + if (!($394)) { + break; + } + $395 = HEAP32[$i>>2]|0; + $396 = ($395|0)<(32); + if ($396) { + $397 = HEAP32[$i>>2]|0; + $398 = HEAP32[$pFarg>>2]|0; + $399 = (($398) + 4|0); + $400 = HEAP32[$399>>2]|0; + $401 = (($400) + (($397*20)|0)|0); + $402 = HEAP32[$401>>2]|0; + $403 = (_sqlite3ExprIsConstant($402)|0); + $404 = ($403|0)!=(0); + if ($404) { + $405 = HEAP32[$i>>2]|0; + $406 = 1 << $405; + $407 = HEAP32[$constMask>>2]|0; + $408 = $407 | $406; + HEAP32[$constMask>>2] = $408; + } + } + $409 = HEAP32[$pDef>>2]|0; + $410 = (($409) + 2|0); + $411 = HEAP16[$410>>1]|0; + $412 = $411&65535; + $413 = $412 & 32; + $414 = ($413|0)!=(0); + if ($414) { + $415 = HEAP32[$pColl>>2]|0; + $416 = ($415|0)!=(0|0); + if (!($416)) { + $417 = HEAP32[$1>>2]|0; + $418 = HEAP32[$i>>2]|0; + $419 = HEAP32[$pFarg>>2]|0; + $420 = (($419) + 4|0); + $421 = HEAP32[$420>>2]|0; + $422 = (($421) + (($418*20)|0)|0); + $423 = HEAP32[$422>>2]|0; + $424 = (_sqlite3ExprCollSeq($417,$423)|0); + HEAP32[$pColl>>2] = $424; + } + } + $425 = HEAP32[$i>>2]|0; + $426 = (($425) + 1)|0; + HEAP32[$i>>2] = $426; + } + $427 = HEAP32[$pFarg>>2]|0; + $428 = ($427|0)!=(0|0); + if ($428) { + $429 = HEAP32[$constMask>>2]|0; + $430 = ($429|0)!=(0); + $431 = HEAP32[$1>>2]|0; + if ($430) { + $432 = (($431) + 72|0); + $433 = HEAP32[$432>>2]|0; + $434 = (($433) + 1)|0; + HEAP32[$r1>>2] = $434; + $435 = HEAP32[$nFarg>>2]|0; + $436 = HEAP32[$1>>2]|0; + $437 = (($436) + 72|0); + $438 = HEAP32[$437>>2]|0; + $439 = (($438) + ($435))|0; + HEAP32[$437>>2] = $439; + } else { + $440 = HEAP32[$nFarg>>2]|0; + $441 = (_sqlite3GetTempRange($431,$440)|0); + HEAP32[$r1>>2] = $441; + } + $442 = HEAP32[$pDef>>2]|0; + $443 = (($442) + 2|0); + $444 = HEAP16[$443>>1]|0; + $445 = $444&65535; + $446 = $445 & 192; + $447 = ($446|0)!=(0); + do { + if ($447) { + $448 = HEAP32[$pFarg>>2]|0; + $449 = (($448) + 4|0); + $450 = HEAP32[$449>>2]|0; + $451 = HEAP32[$450>>2]|0; + $452 = HEAP8[$451>>0]|0; + HEAP8[$exprOp>>0] = $452; + $453 = HEAP8[$exprOp>>0]|0; + $454 = $453&255; + $455 = ($454|0)==(154); + if (!($455)) { + $456 = HEAP8[$exprOp>>0]|0; + $457 = $456&255; + $458 = ($457|0)==(156); + if (!($458)) { + break; + } + } + $459 = HEAP32[$pDef>>2]|0; + $460 = (($459) + 2|0); + $461 = HEAP16[$460>>1]|0; + $462 = $461&65535; + $463 = $462 & 192; + $464 = $463&255; + $465 = HEAP32[$pFarg>>2]|0; + $466 = (($465) + 4|0); + $467 = HEAP32[$466>>2]|0; + $468 = HEAP32[$467>>2]|0; + $469 = (($468) + 38|0); + HEAP8[$469>>0] = $464; + } + } while(0); + $470 = HEAP32[$1>>2]|0; + _sqlite3ExprCachePush($470); + $471 = HEAP32[$1>>2]|0; + $472 = HEAP32[$pFarg>>2]|0; + $473 = HEAP32[$r1>>2]|0; + (_sqlite3ExprCodeExprList($471,$472,$473,3)|0); + $474 = HEAP32[$1>>2]|0; + _sqlite3ExprCachePop($474); + } else { + HEAP32[$r1>>2] = 0; + } + $475 = HEAP32[$nFarg>>2]|0; + $476 = ($475|0)>=(2); + if ($476) { + $477 = HEAP32[$2>>2]|0; + $478 = (($477) + 4|0); + $479 = HEAP32[$478>>2]|0; + $480 = $479 & 128; + $481 = ($480|0)!=(0); + if ($481) { + $482 = HEAP32[$db>>2]|0; + $483 = HEAP32[$pDef>>2]|0; + $484 = HEAP32[$nFarg>>2]|0; + $485 = HEAP32[$pFarg>>2]|0; + $486 = (($485) + 4|0); + $487 = HEAP32[$486>>2]|0; + $488 = (($487) + 20|0); + $489 = HEAP32[$488>>2]|0; + $490 = (_sqlite3VtabOverloadFunction($482,$483,$484,$489)|0); + HEAP32[$pDef>>2] = $490; + } else { + label = 78; + } + } else { + label = 78; + } + if ((label|0) == 78) { + $491 = HEAP32[$nFarg>>2]|0; + $492 = ($491|0)>(0); + if ($492) { + $493 = HEAP32[$db>>2]|0; + $494 = HEAP32[$pDef>>2]|0; + $495 = HEAP32[$nFarg>>2]|0; + $496 = HEAP32[$pFarg>>2]|0; + $497 = (($496) + 4|0); + $498 = HEAP32[$497>>2]|0; + $499 = HEAP32[$498>>2]|0; + $500 = (_sqlite3VtabOverloadFunction($493,$494,$495,$499)|0); + HEAP32[$pDef>>2] = $500; + } + } + $501 = HEAP32[$pDef>>2]|0; + $502 = (($501) + 2|0); + $503 = HEAP16[$502>>1]|0; + $504 = $503&65535; + $505 = $504 & 32; + $506 = ($505|0)!=(0); + if ($506) { + $507 = HEAP32[$pColl>>2]|0; + $508 = ($507|0)!=(0|0); + if (!($508)) { + $509 = HEAP32[$db>>2]|0; + $510 = (($509) + 8|0); + $511 = HEAP32[$510>>2]|0; + HEAP32[$pColl>>2] = $511; + } + $512 = HEAP32[$v>>2]|0; + $513 = HEAP32[$pColl>>2]|0; + (_sqlite3VdbeAddOp4($512,36,0,0,0,$513,-4)|0); + } + $514 = HEAP32[$v>>2]|0; + $515 = HEAP32[$constMask>>2]|0; + $516 = HEAP32[$r1>>2]|0; + $517 = HEAP32[$3>>2]|0; + $518 = HEAP32[$pDef>>2]|0; + (_sqlite3VdbeAddOp4($514,1,$515,$516,$517,$518,-5)|0); + $519 = HEAP32[$v>>2]|0; + $520 = HEAP32[$nFarg>>2]|0; + $521 = $520&255; + _sqlite3VdbeChangeP5($519,$521); + $522 = HEAP32[$nFarg>>2]|0; + $523 = ($522|0)!=(0); + if ($523) { + $524 = HEAP32[$constMask>>2]|0; + $525 = ($524|0)==(0); + if ($525) { + $526 = HEAP32[$1>>2]|0; + $527 = HEAP32[$r1>>2]|0; + $528 = HEAP32[$nFarg>>2]|0; + _sqlite3ReleaseTempRange($526,$527,$528); + } + } + break; + } + case 38: { + $146 = HEAP32[$1>>2]|0; + $147 = HEAP32[$2>>2]|0; + $148 = (($147) + 12|0); + $149 = HEAP32[$148>>2]|0; + $150 = HEAP32[$3>>2]|0; + $151 = (_sqlite3ExprCodeTarget($146,$149,$150)|0); + HEAP32[$inReg>>2] = $151; + $152 = HEAP32[$2>>2]|0; + $153 = (($152) + 8|0); + $154 = HEAP32[$153>>2]|0; + $155 = (_sqlite3AffinityType($154,0)|0); + $156 = $155 << 24 >> 24; + HEAP32[$aff>>2] = $156; + $157 = HEAP32[$aff>>2]|0; + $158 = (($157) - 97)|0; + $159 = (($158) + 143)|0; + HEAP32[$to_op>>2] = $159; + $160 = HEAP32[$inReg>>2]|0; + $161 = HEAP32[$3>>2]|0; + $162 = ($160|0)!=($161|0); + if ($162) { + $163 = HEAP32[$v>>2]|0; + $164 = HEAP32[$inReg>>2]|0; + $165 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($163,34,$164,$165)|0); + $166 = HEAP32[$3>>2]|0; + HEAP32[$inReg>>2] = $166; + } + $167 = HEAP32[$v>>2]|0; + $168 = HEAP32[$to_op>>2]|0; + $169 = HEAP32[$inReg>>2]|0; + (_sqlite3VdbeAddOp1($167,$168,$169)|0); + $170 = HEAP32[$1>>2]|0; + $171 = HEAP32[$inReg>>2]|0; + _sqlite3ExprCacheAffinityChange($170,$171,1); + break; + } + case 154: { + label = 11; + break; + } + case 148: case 73: { + $193 = HEAP32[$1>>2]|0; + $194 = HEAP32[$2>>2]|0; + $195 = (($194) + 12|0); + $196 = HEAP32[$195>>2]|0; + $197 = (_sqlite3ExprCodeTemp($193,$196,$regFree1)|0); + HEAP32[$r1>>2] = $197; + $198 = HEAP32[$1>>2]|0; + $199 = HEAP32[$2>>2]|0; + $200 = (($199) + 16|0); + $201 = HEAP32[$200>>2]|0; + $202 = (_sqlite3ExprCodeTemp($198,$201,$regFree2)|0); + HEAP32[$r2>>2] = $202; + $203 = HEAP32[$op>>2]|0; + $204 = ($203|0)==(73); + $205 = $204 ? 79 : 78; + HEAP32[$op>>2] = $205; + $206 = HEAP32[$1>>2]|0; + $207 = HEAP32[$2>>2]|0; + $208 = (($207) + 12|0); + $209 = HEAP32[$208>>2]|0; + $210 = HEAP32[$2>>2]|0; + $211 = (($210) + 16|0); + $212 = HEAP32[$211>>2]|0; + $213 = HEAP32[$op>>2]|0; + $214 = HEAP32[$r1>>2]|0; + $215 = HEAP32[$r2>>2]|0; + $216 = HEAP32[$inReg>>2]|0; + (_codeCompare($206,$209,$212,$213,$214,$215,$216,144)|0); + break; + } + case 94: case 88: case 87: case 92: case 86: case 85: case 93: case 90: case 91: case 89: case 71: case 72: { + $217 = HEAP32[$1>>2]|0; + $218 = HEAP32[$2>>2]|0; + $219 = (($218) + 12|0); + $220 = HEAP32[$219>>2]|0; + $221 = (_sqlite3ExprCodeTemp($217,$220,$regFree1)|0); + HEAP32[$r1>>2] = $221; + $222 = HEAP32[$1>>2]|0; + $223 = HEAP32[$2>>2]|0; + $224 = (($223) + 16|0); + $225 = HEAP32[$224>>2]|0; + $226 = (_sqlite3ExprCodeTemp($222,$225,$regFree2)|0); + HEAP32[$r2>>2] = $226; + $227 = HEAP32[$v>>2]|0; + $228 = HEAP32[$op>>2]|0; + $229 = HEAP32[$r2>>2]|0; + $230 = HEAP32[$r1>>2]|0; + $231 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp3($227,$228,$229,$230,$231)|0); + break; + } + case 19: case 96: { + $265 = HEAP32[$1>>2]|0; + $266 = HEAP32[$2>>2]|0; + $267 = (($266) + 12|0); + $268 = HEAP32[$267>>2]|0; + $269 = (_sqlite3ExprCodeTemp($265,$268,$regFree1)|0); + HEAP32[$r1>>2] = $269; + $270 = HEAP32[$3>>2]|0; + HEAP32[$inReg>>2] = $270; + $271 = HEAP32[$v>>2]|0; + $272 = HEAP32[$op>>2]|0; + $273 = HEAP32[$r1>>2]|0; + $274 = HEAP32[$inReg>>2]|0; + (_sqlite3VdbeAddOp2($271,$272,$273,$274)|0); + break; + } + case 77: case 76: { + $275 = HEAP32[$v>>2]|0; + $276 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($275,25,1,$276)|0); + $277 = HEAP32[$1>>2]|0; + $278 = HEAP32[$2>>2]|0; + $279 = (($278) + 12|0); + $280 = HEAP32[$279>>2]|0; + $281 = (_sqlite3ExprCodeTemp($277,$280,$regFree1)|0); + HEAP32[$r1>>2] = $281; + $282 = HEAP32[$v>>2]|0; + $283 = HEAP32[$op>>2]|0; + $284 = HEAP32[$r1>>2]|0; + $285 = (_sqlite3VdbeAddOp1($282,$283,$284)|0); + HEAP32[$addr>>2] = $285; + $286 = HEAP32[$v>>2]|0; + $287 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($286,37,$287,-1)|0); + $288 = HEAP32[$v>>2]|0; + $289 = HEAP32[$addr>>2]|0; + _sqlite3VdbeJumpHere($288,$289); + break; + } + case 135: { + $113 = HEAP32[$v>>2]|0; + $114 = HEAP32[$2>>2]|0; + $115 = (($114) + 32|0); + $116 = HEAP16[$115>>1]|0; + $117 = $116 << 16 >> 16; + $118 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($113,31,$117,$118)|0); + $119 = HEAP32[$2>>2]|0; + $120 = (($119) + 8|0); + $121 = HEAP32[$120>>2]|0; + $122 = (($121) + 1|0); + $123 = HEAP8[$122>>0]|0; + $124 = $123 << 24 >> 24; + $125 = ($124|0)!=(0); + if ($125) { + $126 = HEAP32[$v>>2]|0; + $127 = HEAP32[$2>>2]|0; + $128 = (($127) + 32|0); + $129 = HEAP16[$128>>1]|0; + $130 = $129 << 16 >> 16; + $131 = (($130) - 1)|0; + $132 = HEAP32[$1>>2]|0; + $133 = (($132) + 472|0); + $134 = HEAP32[$133>>2]|0; + $135 = (($134) + ($131<<2)|0); + $136 = HEAP32[$135>>2]|0; + _sqlite3VdbeChangeP4($126,-1,$136,-2); + } + break; + } + case 132: { + $81 = HEAP32[$1>>2]|0; + $82 = HEAP32[$2>>2]|0; + $83 = HEAP32[$3>>2]|0; + _codeInteger($81,$82,0,$83); + break; + } + case 79: case 78: case 83: case 80: case 81: case 82: { + $172 = HEAP32[$1>>2]|0; + $173 = HEAP32[$2>>2]|0; + $174 = (($173) + 12|0); + $175 = HEAP32[$174>>2]|0; + $176 = (_sqlite3ExprCodeTemp($172,$175,$regFree1)|0); + HEAP32[$r1>>2] = $176; + $177 = HEAP32[$1>>2]|0; + $178 = HEAP32[$2>>2]|0; + $179 = (($178) + 16|0); + $180 = HEAP32[$179>>2]|0; + $181 = (_sqlite3ExprCodeTemp($177,$180,$regFree2)|0); + HEAP32[$r2>>2] = $181; + $182 = HEAP32[$1>>2]|0; + $183 = HEAP32[$2>>2]|0; + $184 = (($183) + 12|0); + $185 = HEAP32[$184>>2]|0; + $186 = HEAP32[$2>>2]|0; + $187 = (($186) + 16|0); + $188 = HEAP32[$187>>2]|0; + $189 = HEAP32[$op>>2]|0; + $190 = HEAP32[$r1>>2]|0; + $191 = HEAP32[$r2>>2]|0; + $192 = HEAP32[$inReg>>2]|0; + (_codeCompare($182,$185,$188,$189,$190,$191,$192,16)|0); + break; + } + case 156: { + $18 = HEAP32[$2>>2]|0; + $19 = (($18) + 40|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$pAggInfo>>2] = $20; + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 34|0); + $23 = HEAP16[$22>>1]|0; + $24 = $23 << 16 >> 16; + $25 = HEAP32[$pAggInfo>>2]|0; + $26 = (($25) + 28|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + (($24*24)|0)|0); + HEAP32[$pCol>>2] = $28; + $29 = HEAP32[$pAggInfo>>2]|0; + $30 = HEAP8[$29>>0]|0; + $31 = ($30<<24>>24)!=(0); + if (!($31)) { + $32 = HEAP32[$pCol>>2]|0; + $33 = (($32) + 16|0); + $34 = HEAP32[$33>>2]|0; + HEAP32[$inReg>>2] = $34; + break L9; + } + $35 = HEAP32[$pAggInfo>>2]|0; + $36 = (($35) + 1|0); + $37 = HEAP8[$36>>0]|0; + $38 = ($37<<24>>24)!=(0); + if ($38) { + $39 = HEAP32[$v>>2]|0; + $40 = HEAP32[$pAggInfo>>2]|0; + $41 = (($40) + 8|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$pCol>>2]|0; + $44 = (($43) + 12|0); + $45 = HEAP32[$44>>2]|0; + $46 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp3($39,46,$42,$45,$46)|0); + } else { + label = 11; + } + break; + } + case 97: { + $89 = HEAP32[$v>>2]|0; + $90 = HEAP32[$3>>2]|0; + $91 = HEAP32[$2>>2]|0; + $92 = (($91) + 8|0); + $93 = HEAP32[$92>>2]|0; + (_sqlite3VdbeAddOp4($89,97,0,$90,0,$93,0)|0); + break; + } + case 155: { + $290 = HEAP32[$2>>2]|0; + $291 = (($290) + 40|0); + $292 = HEAP32[$291>>2]|0; + HEAP32[$pInfo>>2] = $292; + $293 = HEAP32[$pInfo>>2]|0; + $294 = ($293|0)==(0|0); + if ($294) { + $295 = HEAP32[$1>>2]|0; + $296 = HEAP32[$2>>2]|0; + $297 = (($296) + 8|0); + $298 = HEAP32[$297>>2]|0; + HEAP32[$vararg_buffer5>>2] = $298; + _sqlite3ErrorMsg($295,25640,$vararg_buffer5); + break L9; + } else { + $299 = HEAP32[$2>>2]|0; + $300 = (($299) + 34|0); + $301 = HEAP16[$300>>1]|0; + $302 = $301 << 16 >> 16; + $303 = HEAP32[$pInfo>>2]|0; + $304 = (($303) + 40|0); + $305 = HEAP32[$304>>2]|0; + $306 = (($305) + ($302<<4)|0); + $307 = (($306) + 8|0); + $308 = HEAP32[$307>>2]|0; + HEAP32[$inReg>>2] = $308; + break L9; + } + break; + } + case 133: { + $84 = HEAP32[$v>>2]|0; + $85 = HEAP32[$2>>2]|0; + $86 = (($85) + 8|0); + $87 = HEAP32[$86>>2]|0; + $88 = HEAP32[$3>>2]|0; + _codeReal($84,$87,0,$88); + break; + } + case 101: { + $94 = HEAP32[$v>>2]|0; + $95 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($94,28,0,$95)|0); + break; + } + case 119: case 20: { + $529 = HEAP32[$1>>2]|0; + $530 = HEAP32[$2>>2]|0; + $531 = (_sqlite3CodeSubselect($529,$530,0,0)|0); + HEAP32[$inReg>>2] = $531; + break; + } + case 62: { + $605 = HEAP32[$2>>2]|0; + $606 = (($605) + 44|0); + $607 = HEAP32[$606>>2]|0; + HEAP32[$pTab>>2] = $607; + $608 = HEAP32[$2>>2]|0; + $609 = (($608) + 28|0); + $610 = HEAP32[$609>>2]|0; + $611 = HEAP32[$pTab>>2]|0; + $612 = (($611) + 38|0); + $613 = HEAP16[$612>>1]|0; + $614 = $613 << 16 >> 16; + $615 = (($614) + 1)|0; + $616 = Math_imul($610, $615)|0; + $617 = (($616) + 1)|0; + $618 = HEAP32[$2>>2]|0; + $619 = (($618) + 32|0); + $620 = HEAP16[$619>>1]|0; + $621 = $620 << 16 >> 16; + $622 = (($617) + ($621))|0; + HEAP32[$p1>>2] = $622; + $623 = HEAP32[$v>>2]|0; + $624 = HEAP32[$p1>>2]|0; + $625 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($623,129,$624,$625)|0); + $626 = HEAP32[$2>>2]|0; + $627 = (($626) + 32|0); + $628 = HEAP16[$627>>1]|0; + $629 = $628 << 16 >> 16; + $630 = ($629|0)>=(0); + if ($630) { + $631 = HEAP32[$2>>2]|0; + $632 = (($631) + 32|0); + $633 = HEAP16[$632>>1]|0; + $634 = $633 << 16 >> 16; + $635 = HEAP32[$pTab>>2]|0; + $636 = (($635) + 4|0); + $637 = HEAP32[$636>>2]|0; + $638 = (($637) + (($634*24)|0)|0); + $639 = (($638) + 21|0); + $640 = HEAP8[$639>>0]|0; + $641 = $640 << 24 >> 24; + $642 = ($641|0)==(101); + if ($642) { + $643 = HEAP32[$v>>2]|0; + $644 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp1($643,39,$644)|0); + } + } + break; + } + case 158: case 95: { + $599 = HEAP32[$1>>2]|0; + $600 = HEAP32[$2>>2]|0; + $601 = (($600) + 12|0); + $602 = HEAP32[$601>>2]|0; + $603 = HEAP32[$3>>2]|0; + $604 = (_sqlite3ExprCodeTarget($599,$602,$603)|0); + HEAP32[$inReg>>2] = $604; + break; + } + case 75: { + $532 = HEAP32[$v>>2]|0; + $533 = (_sqlite3VdbeMakeLabel($532)|0); + HEAP32[$destIfFalse>>2] = $533; + $534 = HEAP32[$v>>2]|0; + $535 = (_sqlite3VdbeMakeLabel($534)|0); + HEAP32[$destIfNull>>2] = $535; + $536 = HEAP32[$v>>2]|0; + $537 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($536,28,0,$537)|0); + $538 = HEAP32[$1>>2]|0; + $539 = HEAP32[$2>>2]|0; + $540 = HEAP32[$destIfFalse>>2]|0; + $541 = HEAP32[$destIfNull>>2]|0; + _sqlite3ExprCodeIN($538,$539,$540,$541); + $542 = HEAP32[$v>>2]|0; + $543 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($542,25,1,$543)|0); + $544 = HEAP32[$v>>2]|0; + $545 = HEAP32[$destIfFalse>>2]|0; + _sqlite3VdbeResolveLabel($544,$545); + $546 = HEAP32[$v>>2]|0; + $547 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($546,37,$547,0)|0); + $548 = HEAP32[$v>>2]|0; + $549 = HEAP32[$destIfNull>>2]|0; + _sqlite3VdbeResolveLabel($548,$549); + break; + } + case 74: { + $550 = HEAP32[$2>>2]|0; + $551 = (($550) + 12|0); + $552 = HEAP32[$551>>2]|0; + HEAP32[$pLeft1>>2] = $552; + $553 = HEAP32[$2>>2]|0; + $554 = (($553) + 20|0); + $555 = HEAP32[$554>>2]|0; + $556 = (($555) + 4|0); + $557 = HEAP32[$556>>2]|0; + HEAP32[$pLItem>>2] = $557; + $558 = HEAP32[$pLItem>>2]|0; + $559 = HEAP32[$558>>2]|0; + HEAP32[$pRight>>2] = $559; + $560 = HEAP32[$1>>2]|0; + $561 = HEAP32[$pLeft1>>2]|0; + $562 = (_sqlite3ExprCodeTemp($560,$561,$regFree1)|0); + HEAP32[$r1>>2] = $562; + $563 = HEAP32[$1>>2]|0; + $564 = HEAP32[$pRight>>2]|0; + $565 = (_sqlite3ExprCodeTemp($563,$564,$regFree2)|0); + HEAP32[$r2>>2] = $565; + $566 = HEAP32[$1>>2]|0; + $567 = (_sqlite3GetTempReg($566)|0); + HEAP32[$r3>>2] = $567; + $568 = HEAP32[$1>>2]|0; + $569 = (_sqlite3GetTempReg($568)|0); + HEAP32[$r4>>2] = $569; + $570 = HEAP32[$1>>2]|0; + $571 = HEAP32[$pLeft1>>2]|0; + $572 = HEAP32[$pRight>>2]|0; + $573 = HEAP32[$r1>>2]|0; + $574 = HEAP32[$r2>>2]|0; + $575 = HEAP32[$r3>>2]|0; + (_codeCompare($570,$571,$572,83,$573,$574,$575,16)|0); + $576 = HEAP32[$pLItem>>2]|0; + $577 = (($576) + 20|0); + HEAP32[$pLItem>>2] = $577; + $578 = HEAP32[$pLItem>>2]|0; + $579 = HEAP32[$578>>2]|0; + HEAP32[$pRight>>2] = $579; + $580 = HEAP32[$1>>2]|0; + $581 = HEAP32[$regFree2>>2]|0; + _sqlite3ReleaseTempReg($580,$581); + $582 = HEAP32[$1>>2]|0; + $583 = HEAP32[$pRight>>2]|0; + $584 = (_sqlite3ExprCodeTemp($582,$583,$regFree2)|0); + HEAP32[$r2>>2] = $584; + $585 = HEAP32[$1>>2]|0; + $586 = HEAP32[$pLeft1>>2]|0; + $587 = HEAP32[$pRight>>2]|0; + $588 = HEAP32[$r1>>2]|0; + $589 = HEAP32[$r2>>2]|0; + $590 = HEAP32[$r4>>2]|0; + (_codeCompare($585,$586,$587,81,$588,$589,$590,16)|0); + $591 = HEAP32[$v>>2]|0; + $592 = HEAP32[$r3>>2]|0; + $593 = HEAP32[$r4>>2]|0; + $594 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp3($591,72,$592,$593,$594)|0); + $595 = HEAP32[$1>>2]|0; + $596 = HEAP32[$r3>>2]|0; + _sqlite3ReleaseTempReg($595,$596); + $597 = HEAP32[$1>>2]|0; + $598 = HEAP32[$r4>>2]|0; + _sqlite3ReleaseTempReg($597,$598); + break; + } + case 57: { + $713 = HEAP32[$1>>2]|0; + $714 = (($713) + 412|0); + $715 = HEAP32[$714>>2]|0; + $716 = ($715|0)!=(0|0); + if (!($716)) { + $717 = HEAP32[$1>>2]|0; + _sqlite3ErrorMsg($717,25704,$vararg_buffer5); + HEAP32[$0>>2] = 0; + $746 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($746|0); + } + $718 = HEAP32[$2>>2]|0; + $719 = (($718) + 1|0); + $720 = HEAP8[$719>>0]|0; + $721 = $720 << 24 >> 24; + $722 = ($721|0)==(2); + if ($722) { + $723 = HEAP32[$1>>2]|0; + _sqlite3MayAbort($723); + } + $724 = HEAP32[$2>>2]|0; + $725 = (($724) + 1|0); + $726 = HEAP8[$725>>0]|0; + $727 = $726 << 24 >> 24; + $728 = ($727|0)==(4); + if ($728) { + $729 = HEAP32[$v>>2]|0; + $730 = HEAP32[$2>>2]|0; + $731 = (($730) + 8|0); + $732 = HEAP32[$731>>2]|0; + (_sqlite3VdbeAddOp4($729,24,0,4,0,$732,0)|0); + break L9; + } else { + $733 = HEAP32[$1>>2]|0; + $734 = HEAP32[$2>>2]|0; + $735 = (($734) + 1|0); + $736 = HEAP8[$735>>0]|0; + $737 = $736 << 24 >> 24; + $738 = HEAP32[$2>>2]|0; + $739 = (($738) + 8|0); + $740 = HEAP32[$739>>2]|0; + _sqlite3HaltConstraint($733,1811,$737,$740,0,0); + break L9; + } + break; + } + default: { + HEAP32[$pTest>>2] = 0; + $645 = HEAP32[$2>>2]|0; + $646 = (($645) + 20|0); + $647 = HEAP32[$646>>2]|0; + HEAP32[$pEList>>2] = $647; + $648 = HEAP32[$pEList>>2]|0; + $649 = (($648) + 4|0); + $650 = HEAP32[$649>>2]|0; + HEAP32[$aListelem>>2] = $650; + $651 = HEAP32[$pEList>>2]|0; + $652 = HEAP32[$651>>2]|0; + HEAP32[$nExpr>>2] = $652; + $653 = HEAP32[$v>>2]|0; + $654 = (_sqlite3VdbeMakeLabel($653)|0); + HEAP32[$endLabel>>2] = $654; + $655 = HEAP32[$2>>2]|0; + $656 = (($655) + 12|0); + $657 = HEAP32[$656>>2]|0; + HEAP32[$pX>>2] = $657; + $658 = ($657|0)!=(0|0); + if ($658) { + $659 = HEAP32[$pX>>2]|0; + dest=$tempX+0|0; src=$659+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $660 = HEAP32[$1>>2]|0; + $661 = HEAP32[$pX>>2]|0; + $662 = (_sqlite3ExprCodeTemp($660,$661,$regFree1)|0); + _exprToRegister($tempX,$662); + HEAP8[$opCompare>>0] = 79; + $663 = (($opCompare) + 12|0); + HEAP32[$663>>2] = $tempX; + HEAP32[$pTest>>2] = $opCompare; + HEAP32[$regFree1>>2] = 0; + } + HEAP32[$i2>>2] = 0; + while(1) { + $664 = HEAP32[$i2>>2]|0; + $665 = HEAP32[$nExpr>>2]|0; + $666 = (($665) - 1)|0; + $667 = ($664|0)<($666|0); + if (!($667)) { + break; + } + $668 = HEAP32[$1>>2]|0; + _sqlite3ExprCachePush($668); + $669 = HEAP32[$pX>>2]|0; + $670 = ($669|0)!=(0|0); + $671 = HEAP32[$i2>>2]|0; + $672 = HEAP32[$aListelem>>2]|0; + $673 = (($672) + (($671*20)|0)|0); + $674 = HEAP32[$673>>2]|0; + if ($670) { + $675 = (($opCompare) + 16|0); + HEAP32[$675>>2] = $674; + } else { + HEAP32[$pTest>>2] = $674; + } + $676 = HEAP32[$v>>2]|0; + $677 = (_sqlite3VdbeMakeLabel($676)|0); + HEAP32[$nextCase>>2] = $677; + $678 = HEAP32[$1>>2]|0; + $679 = HEAP32[$pTest>>2]|0; + $680 = HEAP32[$nextCase>>2]|0; + _sqlite3ExprIfFalse($678,$679,$680,8); + $681 = HEAP32[$1>>2]|0; + $682 = HEAP32[$i2>>2]|0; + $683 = (($682) + 1)|0; + $684 = HEAP32[$aListelem>>2]|0; + $685 = (($684) + (($683*20)|0)|0); + $686 = HEAP32[$685>>2]|0; + $687 = HEAP32[$3>>2]|0; + _sqlite3ExprCode($681,$686,$687); + $688 = HEAP32[$v>>2]|0; + $689 = HEAP32[$endLabel>>2]|0; + (_sqlite3VdbeAddOp2($688,16,0,$689)|0); + $690 = HEAP32[$1>>2]|0; + _sqlite3ExprCachePop($690); + $691 = HEAP32[$v>>2]|0; + $692 = HEAP32[$nextCase>>2]|0; + _sqlite3VdbeResolveLabel($691,$692); + $693 = HEAP32[$i2>>2]|0; + $694 = (($693) + 2)|0; + HEAP32[$i2>>2] = $694; + } + $695 = HEAP32[$nExpr>>2]|0; + $696 = $695 & 1; + $697 = ($696|0)!=(0); + if ($697) { + $698 = HEAP32[$1>>2]|0; + _sqlite3ExprCachePush($698); + $699 = HEAP32[$1>>2]|0; + $700 = HEAP32[$nExpr>>2]|0; + $701 = (($700) - 1)|0; + $702 = HEAP32[$pEList>>2]|0; + $703 = (($702) + 4|0); + $704 = HEAP32[$703>>2]|0; + $705 = (($704) + (($701*20)|0)|0); + $706 = HEAP32[$705>>2]|0; + $707 = HEAP32[$3>>2]|0; + _sqlite3ExprCode($699,$706,$707); + $708 = HEAP32[$1>>2]|0; + _sqlite3ExprCachePop($708); + } else { + $709 = HEAP32[$v>>2]|0; + $710 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($709,28,0,$710)|0); + } + $711 = HEAP32[$v>>2]|0; + $712 = HEAP32[$endLabel>>2]|0; + _sqlite3VdbeResolveLabel($711,$712); + } + } + } while(0); + L141: do { + if ((label|0) == 11) { + $47 = HEAP32[$2>>2]|0; + $48 = (($47) + 28|0); + $49 = HEAP32[$48>>2]|0; + HEAP32[$iTab>>2] = $49; + $50 = HEAP32[$iTab>>2]|0; + $51 = ($50|0)<(0); + do { + if ($51) { + $52 = HEAP32[$1>>2]|0; + $53 = (($52) + 92|0); + $54 = HEAP32[$53>>2]|0; + $55 = ($54|0)>(0); + if ($55) { + $56 = HEAP32[$2>>2]|0; + $57 = (($56) + 32|0); + $58 = HEAP16[$57>>1]|0; + $59 = $58 << 16 >> 16; + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 92|0); + $62 = HEAP32[$61>>2]|0; + $63 = (($59) + ($62))|0; + HEAP32[$inReg>>2] = $63; + break L141; + } else { + $64 = HEAP32[$1>>2]|0; + $65 = (($64) + 96|0); + $66 = HEAP32[$65>>2]|0; + HEAP32[$iTab>>2] = $66; + break; + } + } + } while(0); + $67 = HEAP32[$1>>2]|0; + $68 = HEAP32[$2>>2]|0; + $69 = (($68) + 44|0); + $70 = HEAP32[$69>>2]|0; + $71 = HEAP32[$2>>2]|0; + $72 = (($71) + 32|0); + $73 = HEAP16[$72>>1]|0; + $74 = $73 << 16 >> 16; + $75 = HEAP32[$iTab>>2]|0; + $76 = HEAP32[$3>>2]|0; + $77 = HEAP32[$2>>2]|0; + $78 = (($77) + 38|0); + $79 = HEAP8[$78>>0]|0; + $80 = (_sqlite3ExprCodeGetColumn($67,$70,$74,$75,$76,$79)|0); + HEAP32[$inReg>>2] = $80; + } + } while(0); + $741 = HEAP32[$1>>2]|0; + $742 = HEAP32[$regFree1>>2]|0; + _sqlite3ReleaseTempReg($741,$742); + $743 = HEAP32[$1>>2]|0; + $744 = HEAP32[$regFree2>>2]|0; + _sqlite3ReleaseTempReg($743,$744); + $745 = HEAP32[$inReg>>2]|0; + HEAP32[$0>>2] = $745; + $746 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($746|0); +} +function _sqlite3ExprCodeGetColumn($pParse,$pTab,$iColumn,$iTable,$iReg,$p5) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $iColumn = $iColumn|0; + $iTable = $iTable|0; + $iReg = $iReg|0; + $p5 = $p5|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $i = 0, $p = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $4 = sp + 12|0; + $5 = sp + 8|0; + $6 = sp + 36|0; + $v = sp + 4|0; + $i = sp; + $p = sp + 16|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pTab; + HEAP32[$3>>2] = $iColumn; + HEAP32[$4>>2] = $iTable; + HEAP32[$5>>2] = $iReg; + HEAP8[$6>>0] = $p5; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 8|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$v>>2] = $9; + HEAP32[$i>>2] = 0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 116|0); + HEAP32[$p>>2] = $11; + while(1) { + $12 = HEAP32[$i>>2]|0; + $13 = ($12|0)<(10); + if (!($13)) { + break; + } + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 12|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)>(0); + if ($17) { + $18 = HEAP32[$p>>2]|0; + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$4>>2]|0; + $21 = ($19|0)==($20|0); + if ($21) { + $22 = HEAP32[$p>>2]|0; + $23 = (($22) + 4|0); + $24 = HEAP16[$23>>1]|0; + $25 = $24 << 16 >> 16; + $26 = HEAP32[$3>>2]|0; + $27 = ($25|0)==($26|0); + if ($27) { + label = 6; + break; + } + } + } + $41 = HEAP32[$i>>2]|0; + $42 = (($41) + 1)|0; + HEAP32[$i>>2] = $42; + $43 = HEAP32[$p>>2]|0; + $44 = (($43) + 20|0); + HEAP32[$p>>2] = $44; + } + if ((label|0) == 6) { + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 104|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + 1)|0; + HEAP32[$29>>2] = $31; + $32 = HEAP32[$p>>2]|0; + $33 = (($32) + 16|0); + HEAP32[$33>>2] = $30; + $34 = HEAP32[$1>>2]|0; + $35 = HEAP32[$p>>2]|0; + $36 = (($35) + 12|0); + $37 = HEAP32[$36>>2]|0; + _sqlite3ExprCachePinRegister($34,$37); + $38 = HEAP32[$p>>2]|0; + $39 = (($38) + 12|0); + $40 = HEAP32[$39>>2]|0; + HEAP32[$0>>2] = $40; + $59 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($59|0); + } + $45 = HEAP32[$v>>2]|0; + $46 = HEAP32[$2>>2]|0; + $47 = HEAP32[$4>>2]|0; + $48 = HEAP32[$3>>2]|0; + $49 = HEAP32[$5>>2]|0; + _sqlite3ExprCodeGetColumnOfTable($45,$46,$47,$48,$49); + $50 = HEAP8[$6>>0]|0; + $51 = ($50<<24>>24)!=(0); + if ($51) { + $52 = HEAP32[$v>>2]|0; + $53 = HEAP8[$6>>0]|0; + _sqlite3VdbeChangeP5($52,$53); + } else { + $54 = HEAP32[$1>>2]|0; + $55 = HEAP32[$4>>2]|0; + $56 = HEAP32[$3>>2]|0; + $57 = HEAP32[$5>>2]|0; + _sqlite3ExprCacheStore($54,$55,$56,$57); + } + $58 = HEAP32[$5>>2]|0; + HEAP32[$0>>2] = $58; + $59 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($59|0); +} +function _codeInteger($pParse,$pExpr,$negFlag,$iMem) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + $negFlag = $negFlag|0; + $iMem = $iMem|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $c = 0, $i = 0, $v = 0, $value = 0, $z = 0, $zV = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $v = sp + 24|0; + $i = sp + 20|0; + $c = sp + 12|0; + $value = sp; + $z = sp + 8|0; + $zV = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $negFlag; + HEAP32[$3>>2] = $iMem; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$v>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = $9 & 1024; + $11 = ($10|0)!=(0); + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 8|0); + if ($11) { + $14 = HEAP32[$13>>2]|0; + HEAP32[$i>>2] = $14; + $15 = HEAP32[$2>>2]|0; + $16 = ($15|0)!=(0); + if ($16) { + $17 = HEAP32[$i>>2]|0; + $18 = (0 - ($17))|0; + HEAP32[$i>>2] = $18; + } + $19 = HEAP32[$v>>2]|0; + $20 = HEAP32[$i>>2]|0; + $21 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($19,25,$20,$21)|0); + STACKTOP = sp;return; + } + $22 = HEAP32[$13>>2]|0; + HEAP32[$z>>2] = $22; + $23 = HEAP32[$z>>2]|0; + $24 = HEAP32[$z>>2]|0; + $25 = (_sqlite3Strlen30($24)|0); + $26 = (_sqlite3Atoi64($23,$value,$25,1)|0); + HEAP32[$c>>2] = $26; + $27 = HEAP32[$c>>2]|0; + $28 = ($27|0)==(0); + do { + if (!($28)) { + $29 = HEAP32[$c>>2]|0; + $30 = ($29|0)==(2); + if ($30) { + $31 = HEAP32[$2>>2]|0; + $32 = ($31|0)!=(0); + if ($32) { + break; + } + } + $56 = HEAP32[$v>>2]|0; + $57 = HEAP32[$z>>2]|0; + $58 = HEAP32[$2>>2]|0; + $59 = HEAP32[$3>>2]|0; + _codeReal($56,$57,$58,$59); + STACKTOP = sp;return; + } + } while(0); + $33 = HEAP32[$2>>2]|0; + $34 = ($33|0)!=(0); + if ($34) { + $35 = HEAP32[$c>>2]|0; + $36 = ($35|0)==(2); + if ($36) { + $47 = 0;$50 = -2147483648; + } else { + $37 = $value; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (($37) + 4)|0; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (_i64Subtract(0,0,($39|0),($42|0))|0); + $44 = tempRet0; + $47 = $43;$50 = $44; + } + $45 = $value; + $46 = $45; + HEAP32[$46>>2] = $47; + $48 = (($45) + 4)|0; + $49 = $48; + HEAP32[$49>>2] = $50; + } + $51 = HEAP32[$v>>2]|0; + $52 = (_dup8bytes($51,$value)|0); + HEAP32[$zV>>2] = $52; + $53 = HEAP32[$v>>2]|0; + $54 = HEAP32[$3>>2]|0; + $55 = HEAP32[$zV>>2]|0; + (_sqlite3VdbeAddOp4($53,26,0,$54,0,$55,-13)|0); + STACKTOP = sp;return; +} +function _codeReal($v,$z,$negateFlag,$iMem) { + $v = $v|0; + $z = $z|0; + $negateFlag = $negateFlag|0; + $iMem = $iMem|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0.0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $value = 0, $zV = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp + 16|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $value = sp; + $zV = sp + 20|0; + HEAP32[$0>>2] = $v; + HEAP32[$1>>2] = $z; + HEAP32[$2>>2] = $negateFlag; + HEAP32[$3>>2] = $iMem; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (_sqlite3Strlen30($7)|0); + (_sqlite3AtoF($6,$value,$8,1)|0); + $9 = HEAP32[$2>>2]|0; + $10 = ($9|0)!=(0); + if ($10) { + $11 = +HEAPF64[$value>>3]; + $12 = -$11; + HEAPF64[$value>>3] = $12; + } + $13 = HEAP32[$0>>2]|0; + $14 = (_dup8bytes($13,$value)|0); + HEAP32[$zV>>2] = $14; + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$3>>2]|0; + $17 = HEAP32[$zV>>2]|0; + (_sqlite3VdbeAddOp4($15,133,0,$16,0,$17,-12)|0); + STACKTOP = sp;return; +} +function _sqlite3ExprCacheAffinityChange($pParse,$iStart,$iCount) { + $pParse = $pParse|0; + $iStart = $iStart|0; + $iCount = $iCount|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iStart; + HEAP32[$2>>2] = $iCount; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + _sqlite3ExprCacheRemove($3,$4,$5); + STACKTOP = sp;return; +} +function _sqlite3ExprIsConstant($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (_exprIsConst($1,1)|0); + STACKTOP = sp;return ($2|0); +} +function _sqlite3ExprCodeExprList($pParse,$pList,$target,$flags) { + $pParse = $pParse|0; + $pList = $pList|0; + $target = $target|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $copyOp = 0, $i = 0, $inReg = 0, $n = 0, $pExpr = 0, $pItem = 0, $pOp = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 28|0; + $2 = sp + 32|0; + $3 = sp + 40|0; + $pItem = sp + 24|0; + $i = sp + 16|0; + $n = sp + 12|0; + $copyOp = sp + 41|0; + $pExpr = sp + 8|0; + $inReg = sp + 4|0; + $pOp = sp; + $v = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pList; + HEAP32[$2>>2] = $target; + HEAP8[$3>>0] = $flags; + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = $5 & 1; + $7 = ($6|0)!=(0); + $8 = $7 ? 33 : 34; + $9 = $8&255; + HEAP8[$copyOp>>0] = $9; + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$10>>2]|0; + HEAP32[$n>>2] = $11; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 23|0); + $14 = HEAP8[$13>>0]|0; + $15 = ($14<<24>>24)!=(0); + if (!($15)) { + $16 = HEAP8[$3>>0]|0; + $17 = $16&255; + $18 = $17 & -3; + $19 = $18&255; + HEAP8[$3>>0] = $19; + } + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 4|0); + $22 = HEAP32[$21>>2]|0; + HEAP32[$pItem>>2] = $22; + HEAP32[$i>>2] = 0; + while(1) { + $23 = HEAP32[$i>>2]|0; + $24 = HEAP32[$n>>2]|0; + $25 = ($23|0)<($24|0); + if (!($25)) { + break; + } + $26 = HEAP32[$pItem>>2]|0; + $27 = HEAP32[$26>>2]|0; + HEAP32[$pExpr>>2] = $27; + $28 = HEAP8[$3>>0]|0; + $29 = $28&255; + $30 = $29 & 2; + $31 = ($30|0)!=(0); + if ($31) { + $32 = HEAP32[$pExpr>>2]|0; + $33 = (_sqlite3ExprIsConstant($32)|0); + $34 = ($33|0)!=(0); + if ($34) { + $35 = HEAP32[$0>>2]|0; + $36 = HEAP32[$pExpr>>2]|0; + $37 = HEAP32[$2>>2]|0; + $38 = HEAP32[$i>>2]|0; + $39 = (($37) + ($38))|0; + _sqlite3ExprCodeAtInit($35,$36,$39,0); + } else { + label = 8; + } + } else { + label = 8; + } + do { + if ((label|0) == 8) { + label = 0; + $40 = HEAP32[$0>>2]|0; + $41 = HEAP32[$pExpr>>2]|0; + $42 = HEAP32[$2>>2]|0; + $43 = HEAP32[$i>>2]|0; + $44 = (($42) + ($43))|0; + $45 = (_sqlite3ExprCodeTarget($40,$41,$44)|0); + HEAP32[$inReg>>2] = $45; + $46 = HEAP32[$inReg>>2]|0; + $47 = HEAP32[$2>>2]|0; + $48 = HEAP32[$i>>2]|0; + $49 = (($47) + ($48))|0; + $50 = ($46|0)!=($49|0); + if ($50) { + $51 = HEAP32[$0>>2]|0; + $52 = (($51) + 8|0); + $53 = HEAP32[$52>>2]|0; + HEAP32[$v>>2] = $53; + $54 = HEAP8[$copyOp>>0]|0; + $55 = $54&255; + $56 = ($55|0)==(33); + if ($56) { + $57 = HEAP32[$v>>2]|0; + $58 = (_sqlite3VdbeGetOp($57,-1)|0); + HEAP32[$pOp>>2] = $58; + $59 = HEAP8[$58>>0]|0; + $60 = $59&255; + $61 = ($60|0)==(33); + if ($61) { + $62 = HEAP32[$pOp>>2]|0; + $63 = (($62) + 4|0); + $64 = HEAP32[$63>>2]|0; + $65 = HEAP32[$pOp>>2]|0; + $66 = (($65) + 12|0); + $67 = HEAP32[$66>>2]|0; + $68 = (($64) + ($67))|0; + $69 = (($68) + 1)|0; + $70 = HEAP32[$inReg>>2]|0; + $71 = ($69|0)==($70|0); + if ($71) { + $72 = HEAP32[$pOp>>2]|0; + $73 = (($72) + 8|0); + $74 = HEAP32[$73>>2]|0; + $75 = HEAP32[$pOp>>2]|0; + $76 = (($75) + 12|0); + $77 = HEAP32[$76>>2]|0; + $78 = (($74) + ($77))|0; + $79 = (($78) + 1)|0; + $80 = HEAP32[$2>>2]|0; + $81 = HEAP32[$i>>2]|0; + $82 = (($80) + ($81))|0; + $83 = ($79|0)==($82|0); + if ($83) { + $84 = HEAP32[$pOp>>2]|0; + $85 = (($84) + 12|0); + $86 = HEAP32[$85>>2]|0; + $87 = (($86) + 1)|0; + HEAP32[$85>>2] = $87; + break; + } + } + } + } + $88 = HEAP32[$v>>2]|0; + $89 = HEAP8[$copyOp>>0]|0; + $90 = $89&255; + $91 = HEAP32[$inReg>>2]|0; + $92 = HEAP32[$2>>2]|0; + $93 = HEAP32[$i>>2]|0; + $94 = (($92) + ($93))|0; + (_sqlite3VdbeAddOp2($88,$90,$91,$94)|0); + } + } + } while(0); + $95 = HEAP32[$i>>2]|0; + $96 = (($95) + 1)|0; + HEAP32[$i>>2] = $96; + $97 = HEAP32[$pItem>>2]|0; + $98 = (($97) + 20|0); + HEAP32[$pItem>>2] = $98; + } + $99 = HEAP32[$n>>2]|0; + STACKTOP = sp;return ($99|0); +} +function _sqlite3VtabOverloadFunction($db,$pDef,$nArg,$pExpr) { + $db = $db|0; + $pDef = $pDef|0; + $nArg = $nArg|0; + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $12 = 0, $13 = 0, $14 = 0; + var $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; + var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; + var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; + var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $pArg = 0, $pMod = 0, $pNew = 0, $pTab = 0, $pVtab = 0, $rc = 0, $xFunc = 0; + var $z = 0, $zLowerName = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 56|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $3 = sp + 44|0; + $4 = sp + 40|0; + $pTab = sp + 36|0; + $pVtab = sp + 32|0; + $pMod = sp + 28|0; + $xFunc = sp + 20|0; + $pArg = sp + 16|0; + $pNew = sp + 12|0; + $rc = sp + 8|0; + $zLowerName = sp + 4|0; + $z = sp; + $5 = sp + 24|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pDef; + HEAP32[$3>>2] = $nArg; + HEAP32[$4>>2] = $pExpr; + HEAP32[$xFunc>>2] = 0; + HEAP32[$pArg>>2] = 0; + HEAP32[$rc>>2] = 0; + $6 = HEAP32[$4>>2]|0; + $7 = ($6|0)==(0|0); + if ($7) { + $8 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $8; + $112 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($112|0); + } + $9 = HEAP32[$4>>2]|0; + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = ($11|0)!=(154); + if ($12) { + $13 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $13; + $112 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($112|0); + } + $14 = HEAP32[$4>>2]|0; + $15 = (($14) + 44|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$pTab>>2] = $16; + $17 = HEAP32[$pTab>>2]|0; + $18 = ($17|0)==(0|0); + if ($18) { + $19 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $19; + $112 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($112|0); + } + $20 = HEAP32[$pTab>>2]|0; + $21 = (($20) + 44|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = $23 & 16; + $25 = ($24|0)==(0); + if ($25) { + $26 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $26; + $112 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($112|0); + } + $27 = HEAP32[$1>>2]|0; + $28 = HEAP32[$pTab>>2]|0; + $29 = (_sqlite3GetVTable($27,$28)|0); + $30 = (($29) + 8|0); + $31 = HEAP32[$30>>2]|0; + HEAP32[$pVtab>>2] = $31; + $32 = HEAP32[$pVtab>>2]|0; + $33 = HEAP32[$32>>2]|0; + HEAP32[$pMod>>2] = $33; + $34 = HEAP32[$pMod>>2]|0; + $35 = (($34) + 72|0); + $36 = HEAP32[$35>>2]|0; + $37 = ($36|0)==(0|0); + if ($37) { + $38 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $38; + $112 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($112|0); + } + $39 = HEAP32[$1>>2]|0; + $40 = HEAP32[$2>>2]|0; + $41 = (($40) + 24|0); + $42 = HEAP32[$41>>2]|0; + $43 = (_sqlite3DbStrDup($39,$42)|0); + HEAP32[$zLowerName>>2] = $43; + $44 = HEAP32[$zLowerName>>2]|0; + $45 = ($44|0)!=(0|0); + if ($45) { + $46 = HEAP32[$zLowerName>>2]|0; + HEAP32[$z>>2] = $46; + while(1) { + $47 = HEAP32[$z>>2]|0; + $48 = HEAP8[$47>>0]|0; + $49 = ($48<<24>>24)!=(0); + if (!($49)) { + break; + } + $50 = HEAP32[$z>>2]|0; + $51 = HEAP8[$50>>0]|0; + $52 = $51&255; + $53 = (784 + ($52)|0); + $54 = HEAP8[$53>>0]|0; + $55 = HEAP32[$z>>2]|0; + HEAP8[$55>>0] = $54; + $56 = HEAP32[$z>>2]|0; + $57 = (($56) + 1|0); + HEAP32[$z>>2] = $57; + } + $58 = HEAP32[$pMod>>2]|0; + $59 = (($58) + 72|0); + $60 = HEAP32[$59>>2]|0; + $61 = HEAP32[$pVtab>>2]|0; + $62 = HEAP32[$3>>2]|0; + $63 = HEAP32[$zLowerName>>2]|0; + HEAP32[$5>>2] = $xFunc; + $64 = HEAP32[$5>>2]|0; + $65 = (FUNCTION_TABLE_iiiiii[$60 & 15]($61,$62,$63,$64,$pArg)|0); + HEAP32[$rc>>2] = $65; + $66 = HEAP32[$1>>2]|0; + $67 = HEAP32[$zLowerName>>2]|0; + _sqlite3DbFree($66,$67); + } + $68 = HEAP32[$rc>>2]|0; + $69 = ($68|0)==(0); + if ($69) { + $70 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $70; + $112 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($112|0); + } + $71 = HEAP32[$1>>2]|0; + $72 = HEAP32[$2>>2]|0; + $73 = (($72) + 24|0); + $74 = HEAP32[$73>>2]|0; + $75 = (_sqlite3Strlen30($74)|0); + $76 = (36 + ($75))|0; + $77 = (($76) + 1)|0; + $78 = (_sqlite3DbMallocZero($71,$77)|0); + HEAP32[$pNew>>2] = $78; + $79 = HEAP32[$pNew>>2]|0; + $80 = ($79|0)==(0|0); + if ($80) { + $81 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $81; + $112 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($112|0); + } else { + $82 = HEAP32[$pNew>>2]|0; + $83 = HEAP32[$2>>2]|0; + dest=$82+0|0; src=$83+0|0; stop=dest+36|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $84 = HEAP32[$pNew>>2]|0; + $85 = (($84) + 36|0); + $86 = HEAP32[$pNew>>2]|0; + $87 = (($86) + 24|0); + HEAP32[$87>>2] = $85; + $88 = HEAP32[$pNew>>2]|0; + $89 = (($88) + 24|0); + $90 = HEAP32[$89>>2]|0; + $91 = HEAP32[$2>>2]|0; + $92 = (($91) + 24|0); + $93 = HEAP32[$92>>2]|0; + $94 = HEAP32[$2>>2]|0; + $95 = (($94) + 24|0); + $96 = HEAP32[$95>>2]|0; + $97 = (_sqlite3Strlen30($96)|0); + $98 = (($97) + 1)|0; + _memcpy(($90|0),($93|0),($98|0))|0; + $99 = HEAP32[$xFunc>>2]|0; + $100 = HEAP32[$pNew>>2]|0; + $101 = (($100) + 12|0); + HEAP32[$101>>2] = $99; + $102 = HEAP32[$pArg>>2]|0; + $103 = HEAP32[$pNew>>2]|0; + $104 = (($103) + 4|0); + HEAP32[$104>>2] = $102; + $105 = HEAP32[$pNew>>2]|0; + $106 = (($105) + 2|0); + $107 = HEAP16[$106>>1]|0; + $108 = $107&65535; + $109 = $108 | 16; + $110 = $109&65535; + HEAP16[$106>>1] = $110; + $111 = HEAP32[$pNew>>2]|0; + HEAP32[$0>>2] = $111; + $112 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($112|0); + } + return 0|0; +} +function _sqlite3CodeSubselect($pParse,$pExpr,$rMayHaveNull,$isRowid) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + $rMayHaveNull = $rMayHaveNull|0; + $isRowid = $isRowid|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr = 0, $affinity = 0; + var $cond = 0, $dest = 0, $dest1 = 0, $i = 0, $iValToIns = 0, $pE2 = 0, $pEList = 0, $pItem = 0, $pKeyInfo = 0, $pLeft = 0, $pList = 0, $pSel = 0, $r1 = 0, $r2 = 0, $r3 = 0, $rReg = 0, $testAddr = 0, $v = 0, $vararg_buffer = 0, $vararg_ptr1 = 0; + var $vararg_ptr2 = 0, $zMsg = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; + $vararg_buffer = sp; + $0 = sp + 100|0; + $1 = sp + 104|0; + $2 = sp + 108|0; + $3 = sp + 112|0; + $4 = sp + 120|0; + $testAddr = sp + 124|0; + $rReg = sp + 128|0; + $v = sp + 132|0; + $zMsg = sp + 136|0; + $affinity = sp + 140|0; + $addr = sp + 96|0; + $pLeft = sp + 92|0; + $pKeyInfo = sp + 116|0; + $dest = sp + 28|0; + $pEList = sp + 24|0; + $i = sp + 12|0; + $pList = sp + 16|0; + $pItem = sp + 20|0; + $r1 = sp + 68|0; + $r2 = sp + 48|0; + $r3 = sp + 52|0; + $pE2 = sp + 56|0; + $iValToIns = sp + 60|0; + $pSel = sp + 64|0; + $dest1 = sp + 72|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pExpr; + HEAP32[$3>>2] = $rMayHaveNull; + HEAP32[$4>>2] = $isRowid; + HEAP32[$testAddr>>2] = -1; + HEAP32[$rReg>>2] = 0; + $5 = HEAP32[$1>>2]|0; + $6 = (_sqlite3GetVdbe($5)|0); + HEAP32[$v>>2] = $6; + $7 = HEAP32[$v>>2]|0; + $8 = ($7|0)==(0|0); + if ($8) { + HEAP32[$0>>2] = 0; + $237 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($237|0); + } + $9 = HEAP32[$1>>2]|0; + _sqlite3ExprCachePush($9); + $10 = HEAP32[$2>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = $12 & 32; + $14 = ($13|0)!=(0); + if (!($14)) { + $15 = HEAP32[$1>>2]|0; + $16 = (_sqlite3CodeOnce($15)|0); + HEAP32[$testAddr>>2] = $16; + } + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 450|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = ($20|0)==(2); + if ($21) { + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$testAddr>>2]|0; + $25 = ($24|0)>=(0); + $26 = $25 ? 1784 : 25792; + $27 = HEAP32[$2>>2]|0; + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = ($29|0)==(75); + $31 = $30 ? 25808 : 25816; + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 468|0); + $34 = HEAP32[$33>>2]|0; + HEAP32[$vararg_buffer>>2] = $26; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $31; + $vararg_ptr2 = (($vararg_buffer) + 8|0); + HEAP32[$vararg_ptr2>>2] = $34; + $35 = (_sqlite3MPrintf($23,25760,$vararg_buffer)|0); + HEAP32[$zMsg>>2] = $35; + $36 = HEAP32[$v>>2]|0; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 464|0); + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$zMsg>>2]|0; + (_sqlite3VdbeAddOp4($36,157,$39,0,0,$40,-1)|0); + } + $41 = HEAP32[$2>>2]|0; + $42 = HEAP8[$41>>0]|0; + $43 = $42&255; + $cond = ($43|0)==(75); + $44 = HEAP32[$2>>2]|0; + do { + if ($cond) { + $45 = (($44) + 12|0); + $46 = HEAP32[$45>>2]|0; + HEAP32[$pLeft>>2] = $46; + HEAP32[$pKeyInfo>>2] = 0; + $47 = HEAP32[$3>>2]|0; + $48 = ($47|0)!=(0); + if ($48) { + $49 = HEAP32[$v>>2]|0; + $50 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($49,28,0,$50)|0); + } + $51 = HEAP32[$pLeft>>2]|0; + $52 = (_sqlite3ExprAffinity($51)|0); + HEAP8[$affinity>>0] = $52; + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 68|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + 1)|0; + HEAP32[$54>>2] = $56; + $57 = HEAP32[$2>>2]|0; + $58 = (($57) + 28|0); + HEAP32[$58>>2] = $55; + $59 = HEAP32[$v>>2]|0; + $60 = HEAP32[$2>>2]|0; + $61 = (($60) + 28|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$4>>2]|0; + $64 = ($63|0)!=(0); + $65 = $64 ^ 1; + $66 = $65&1; + $67 = (_sqlite3VdbeAddOp2($59,55,$62,$66)|0); + HEAP32[$addr>>2] = $67; + $68 = HEAP32[$4>>2]|0; + $69 = ($68|0)!=(0); + if ($69) { + $73 = 0; + } else { + $70 = HEAP32[$1>>2]|0; + $71 = HEAP32[$70>>2]|0; + $72 = (_sqlite3KeyInfoAlloc($71,1,1)|0); + $73 = $72; + } + HEAP32[$pKeyInfo>>2] = $73; + $74 = HEAP32[$2>>2]|0; + $75 = (($74) + 4|0); + $76 = HEAP32[$75>>2]|0; + $77 = $76 & 2048; + $78 = ($77|0)!=(0); + $79 = HEAP32[$2>>2]|0; + do { + if ($78) { + $80 = (($79) + 28|0); + $81 = HEAP32[$80>>2]|0; + _sqlite3SelectDestInit($dest,11,$81); + $82 = HEAP8[$affinity>>0]|0; + $83 = (($dest) + 1|0); + HEAP8[$83>>0] = $82; + $84 = HEAP32[$2>>2]|0; + $85 = (($84) + 20|0); + $86 = HEAP32[$85>>2]|0; + $87 = (($86) + 8|0); + HEAP32[$87>>2] = 0; + $88 = HEAP32[$1>>2]|0; + $89 = HEAP32[$2>>2]|0; + $90 = (($89) + 20|0); + $91 = HEAP32[$90>>2]|0; + $92 = (_sqlite3Select($88,$91,$dest)|0); + $93 = ($92|0)!=(0); + if (!($93)) { + $95 = HEAP32[$2>>2]|0; + $96 = (($95) + 20|0); + $97 = HEAP32[$96>>2]|0; + $98 = HEAP32[$97>>2]|0; + HEAP32[$pEList>>2] = $98; + $99 = HEAP32[$1>>2]|0; + $100 = HEAP32[$2>>2]|0; + $101 = (($100) + 12|0); + $102 = HEAP32[$101>>2]|0; + $103 = HEAP32[$pEList>>2]|0; + $104 = (($103) + 4|0); + $105 = HEAP32[$104>>2]|0; + $106 = HEAP32[$105>>2]|0; + $107 = (_sqlite3BinaryCompareCollSeq($99,$102,$106)|0); + $108 = HEAP32[$pKeyInfo>>2]|0; + $109 = (($108) + 20|0); + HEAP32[$109>>2] = $107; + break; + } + $94 = HEAP32[$pKeyInfo>>2]|0; + _sqlite3KeyInfoUnref($94); + HEAP32[$0>>2] = 0; + $237 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($237|0); + } else { + $110 = (($79) + 20|0); + $111 = HEAP32[$110>>2]|0; + $112 = ($111|0)!=(0|0); + if ($112) { + $113 = HEAP32[$2>>2]|0; + $114 = (($113) + 20|0); + $115 = HEAP32[$114>>2]|0; + HEAP32[$pList>>2] = $115; + $116 = HEAP8[$affinity>>0]|0; + $117 = ($116<<24>>24)!=(0); + if (!($117)) { + HEAP8[$affinity>>0] = 98; + } + $118 = HEAP32[$pKeyInfo>>2]|0; + $119 = ($118|0)!=(0|0); + if ($119) { + $120 = HEAP32[$1>>2]|0; + $121 = HEAP32[$2>>2]|0; + $122 = (($121) + 12|0); + $123 = HEAP32[$122>>2]|0; + $124 = (_sqlite3ExprCollSeq($120,$123)|0); + $125 = HEAP32[$pKeyInfo>>2]|0; + $126 = (($125) + 20|0); + HEAP32[$126>>2] = $124; + } + $127 = HEAP32[$1>>2]|0; + $128 = (_sqlite3GetTempReg($127)|0); + HEAP32[$r1>>2] = $128; + $129 = HEAP32[$1>>2]|0; + $130 = (_sqlite3GetTempReg($129)|0); + HEAP32[$r2>>2] = $130; + $131 = HEAP32[$v>>2]|0; + $132 = HEAP32[$r2>>2]|0; + (_sqlite3VdbeAddOp2($131,28,0,$132)|0); + $133 = HEAP32[$pList>>2]|0; + $134 = HEAP32[$133>>2]|0; + HEAP32[$i>>2] = $134; + $135 = HEAP32[$pList>>2]|0; + $136 = (($135) + 4|0); + $137 = HEAP32[$136>>2]|0; + HEAP32[$pItem>>2] = $137; + while(1) { + $138 = HEAP32[$i>>2]|0; + $139 = ($138|0)>(0); + if (!($139)) { + break; + } + $140 = HEAP32[$pItem>>2]|0; + $141 = HEAP32[$140>>2]|0; + HEAP32[$pE2>>2] = $141; + $142 = HEAP32[$testAddr>>2]|0; + $143 = ($142|0)>=(0); + if ($143) { + $144 = HEAP32[$pE2>>2]|0; + $145 = (_sqlite3ExprIsConstant($144)|0); + $146 = ($145|0)!=(0); + if (!($146)) { + $147 = HEAP32[$v>>2]|0; + $148 = HEAP32[$testAddr>>2]|0; + _sqlite3VdbeChangeToNoop($147,$148); + HEAP32[$testAddr>>2] = -1; + } + } + $149 = HEAP32[$4>>2]|0; + $150 = ($149|0)!=(0); + if ($150) { + $151 = HEAP32[$pE2>>2]|0; + $152 = (_sqlite3ExprIsInteger($151,$iValToIns)|0); + $153 = ($152|0)!=(0); + if ($153) { + $154 = HEAP32[$v>>2]|0; + $155 = HEAP32[$2>>2]|0; + $156 = (($155) + 28|0); + $157 = HEAP32[$156>>2]|0; + $158 = HEAP32[$r2>>2]|0; + $159 = HEAP32[$iValToIns>>2]|0; + (_sqlite3VdbeAddOp3($154,73,$157,$158,$159)|0); + } else { + label = 29; + } + } else { + label = 29; + } + do { + if ((label|0) == 29) { + label = 0; + $160 = HEAP32[$1>>2]|0; + $161 = HEAP32[$pE2>>2]|0; + $162 = HEAP32[$r1>>2]|0; + $163 = (_sqlite3ExprCodeTarget($160,$161,$162)|0); + HEAP32[$r3>>2] = $163; + $164 = HEAP32[$4>>2]|0; + $165 = ($164|0)!=(0); + $166 = HEAP32[$v>>2]|0; + $167 = HEAP32[$r3>>2]|0; + if ($165) { + $168 = HEAP32[$v>>2]|0; + $169 = (_sqlite3VdbeCurrentAddr($168)|0); + $170 = (($169) + 2)|0; + (_sqlite3VdbeAddOp2($166,38,$167,$170)|0); + $171 = HEAP32[$v>>2]|0; + $172 = HEAP32[$2>>2]|0; + $173 = (($172) + 28|0); + $174 = HEAP32[$173>>2]|0; + $175 = HEAP32[$r2>>2]|0; + $176 = HEAP32[$r3>>2]|0; + (_sqlite3VdbeAddOp3($171,70,$174,$175,$176)|0); + break; + } else { + $177 = HEAP32[$r2>>2]|0; + (_sqlite3VdbeAddOp4($166,48,$167,1,$177,$affinity,1)|0); + $178 = HEAP32[$1>>2]|0; + $179 = HEAP32[$r3>>2]|0; + _sqlite3ExprCacheAffinityChange($178,$179,1); + $180 = HEAP32[$v>>2]|0; + $181 = HEAP32[$2>>2]|0; + $182 = (($181) + 28|0); + $183 = HEAP32[$182>>2]|0; + $184 = HEAP32[$r2>>2]|0; + (_sqlite3VdbeAddOp2($180,107,$183,$184)|0); + break; + } + } + } while(0); + $185 = HEAP32[$i>>2]|0; + $186 = (($185) + -1)|0; + HEAP32[$i>>2] = $186; + $187 = HEAP32[$pItem>>2]|0; + $188 = (($187) + 20|0); + HEAP32[$pItem>>2] = $188; + } + $189 = HEAP32[$1>>2]|0; + $190 = HEAP32[$r1>>2]|0; + _sqlite3ReleaseTempReg($189,$190); + $191 = HEAP32[$1>>2]|0; + $192 = HEAP32[$r2>>2]|0; + _sqlite3ReleaseTempReg($191,$192); + } + } + } while(0); + $193 = HEAP32[$pKeyInfo>>2]|0; + $194 = ($193|0)!=(0|0); + if ($194) { + $195 = HEAP32[$v>>2]|0; + $196 = HEAP32[$addr>>2]|0; + $197 = HEAP32[$pKeyInfo>>2]|0; + _sqlite3VdbeChangeP4($195,$196,$197,-6); + } + } else { + $198 = (($44) + 20|0); + $199 = HEAP32[$198>>2]|0; + HEAP32[$pSel>>2] = $199; + $200 = HEAP32[$1>>2]|0; + $201 = (($200) + 72|0); + $202 = HEAP32[$201>>2]|0; + $203 = (($202) + 1)|0; + HEAP32[$201>>2] = $203; + _sqlite3SelectDestInit($dest1,0,$203); + $204 = HEAP32[$2>>2]|0; + $205 = HEAP8[$204>>0]|0; + $206 = $205&255; + $207 = ($206|0)==(119); + if ($207) { + HEAP8[$dest1>>0] = 10; + $208 = HEAP32[$v>>2]|0; + $209 = (($dest1) + 4|0); + $210 = HEAP32[$209>>2]|0; + (_sqlite3VdbeAddOp2($208,28,0,$210)|0); + } else { + HEAP8[$dest1>>0] = 3; + $211 = HEAP32[$v>>2]|0; + $212 = (($dest1) + 4|0); + $213 = HEAP32[$212>>2]|0; + (_sqlite3VdbeAddOp2($211,25,0,$213)|0); + } + $214 = HEAP32[$1>>2]|0; + $215 = HEAP32[$214>>2]|0; + $216 = HEAP32[$pSel>>2]|0; + $217 = (($216) + 60|0); + $218 = HEAP32[$217>>2]|0; + _sqlite3ExprDelete($215,$218); + $219 = HEAP32[$1>>2]|0; + $220 = (_sqlite3PExpr($219,132,0,0,((16680 + 8|0)))|0); + $221 = HEAP32[$pSel>>2]|0; + $222 = (($221) + 60|0); + HEAP32[$222>>2] = $220; + $223 = HEAP32[$pSel>>2]|0; + $224 = (($223) + 8|0); + HEAP32[$224>>2] = 0; + $225 = HEAP32[$1>>2]|0; + $226 = HEAP32[$pSel>>2]|0; + $227 = (_sqlite3Select($225,$226,$dest1)|0); + $228 = ($227|0)!=(0); + if (!($228)) { + $229 = (($dest1) + 4|0); + $230 = HEAP32[$229>>2]|0; + HEAP32[$rReg>>2] = $230; + break; + } + HEAP32[$0>>2] = 0; + $237 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($237|0); + } + } while(0); + $231 = HEAP32[$testAddr>>2]|0; + $232 = ($231|0)>=(0); + if ($232) { + $233 = HEAP32[$v>>2]|0; + $234 = HEAP32[$testAddr>>2]|0; + _sqlite3VdbeJumpHere($233,$234); + } + $235 = HEAP32[$1>>2]|0; + _sqlite3ExprCachePop($235); + $236 = HEAP32[$rReg>>2]|0; + HEAP32[$0>>2] = $236; + $237 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($237|0); +} +function _exprToRegister($p,$iReg) { + $p = $p|0; + $iReg = $iReg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iReg; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP8[$2>>0]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 38|0); + HEAP8[$5>>0] = $3; + $6 = HEAP32[$0>>2]|0; + HEAP8[$6>>0] = -97; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 28|0); + HEAP32[$9>>2] = $7; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = $12 & -4097; + HEAP32[$11>>2] = $13; + STACKTOP = sp;return; +} +function _sqlite3CodeOnce($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $v = sp; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3GetVdbe($1)|0); + HEAP32[$v>>2] = $2; + $3 = HEAP32[$v>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 80|0); + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + 1)|0; + HEAP32[$5>>2] = $7; + $8 = (_sqlite3VdbeAddOp1($3,43,$6)|0); + STACKTOP = sp;return ($8|0); +} +function _sqlite3SelectDestInit($pDest,$eDest,$iParm) { + $pDest = $pDest|0; + $eDest = $eDest|0; + $iParm = $iParm|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pDest; + HEAP32[$1>>2] = $eDest; + HEAP32[$2>>2] = $iParm; + $3 = HEAP32[$1>>2]|0; + $4 = $3&255; + $5 = HEAP32[$0>>2]|0; + HEAP8[$5>>0] = $4; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 4|0); + HEAP32[$8>>2] = $6; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 1|0); + HEAP8[$10>>0] = 0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 8|0); + HEAP32[$12>>2] = 0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 12|0); + HEAP32[$14>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3BinaryCompareCollSeq($pParse,$pLeft,$pRight) { + $pParse = $pParse|0; + $pLeft = $pLeft|0; + $pRight = $pRight|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pColl = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pColl = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pLeft; + HEAP32[$2>>2] = $pRight; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = $5 & 256; + $7 = ($6|0)!=(0); + if ($7) { + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (_sqlite3ExprCollSeq($8,$9)|0); + HEAP32[$pColl>>2] = $10; + $29 = HEAP32[$pColl>>2]|0; + STACKTOP = sp;return ($29|0); + } + $11 = HEAP32[$2>>2]|0; + $12 = ($11|0)!=(0|0); + if ($12) { + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = $15 & 256; + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = (_sqlite3ExprCollSeq($18,$19)|0); + HEAP32[$pColl>>2] = $20; + $29 = HEAP32[$pColl>>2]|0; + STACKTOP = sp;return ($29|0); + } + } + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$1>>2]|0; + $23 = (_sqlite3ExprCollSeq($21,$22)|0); + HEAP32[$pColl>>2] = $23; + $24 = HEAP32[$pColl>>2]|0; + $25 = ($24|0)!=(0|0); + if ($25) { + $29 = HEAP32[$pColl>>2]|0; + STACKTOP = sp;return ($29|0); + } + $26 = HEAP32[$0>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = (_sqlite3ExprCollSeq($26,$27)|0); + HEAP32[$pColl>>2] = $28; + $29 = HEAP32[$pColl>>2]|0; + STACKTOP = sp;return ($29|0); +} +function _sqlite3ExprCodeAtInit($pParse,$pExpr,$regDest,$reusable) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + $regDest = $regDest|0; + $reusable = $reusable|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $p = 0, $pItem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 20|0; + $p = sp + 12|0; + $pItem = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $regDest; + HEAP8[$3>>0] = $reusable; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 316|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$p>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (_sqlite3ExprDup($8,$9,0)|0); + HEAP32[$1>>2] = $10; + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$p>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (_sqlite3ExprListAppend($11,$12,$13)|0); + HEAP32[$p>>2] = $14; + $15 = HEAP32[$p>>2]|0; + $16 = ($15|0)!=(0|0); + if (!($16)) { + $37 = HEAP32[$p>>2]|0; + $38 = HEAP32[$0>>2]|0; + $39 = (($38) + 316|0); + HEAP32[$39>>2] = $37; + STACKTOP = sp;return; + } + $17 = HEAP32[$p>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = (($18) - 1)|0; + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 4|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + (($19*20)|0)|0); + HEAP32[$pItem>>2] = $23; + $24 = HEAP32[$2>>2]|0; + $25 = HEAP32[$pItem>>2]|0; + $26 = (($25) + 16|0); + HEAP32[$26>>2] = $24; + $27 = HEAP8[$3>>0]|0; + $28 = $27&255; + $29 = HEAP32[$pItem>>2]|0; + $30 = (($29) + 13|0); + $31 = $28&255; + $32 = HEAP8[$30>>0]|0; + $33 = $31 & 1; + $34 = ($33 << 2)&255; + $35 = $32 & -5; + $36 = $35 | $34; + HEAP8[$30>>0] = $36; + $37 = HEAP32[$p>>2]|0; + $38 = HEAP32[$0>>2]|0; + $39 = (($38) + 316|0); + HEAP32[$39>>2] = $37; + STACKTOP = sp;return; +} +function _sqlite3VdbeGetOp($p,$addr) { + $p = $p|0; + $addr = $addr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $addr; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)<(0); + if ($4) { + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 32|0); + $7 = HEAP32[$6>>2]|0; + $8 = (($7) - 1)|0; + HEAP32[$2>>2] = $8; + } + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + 64|0); + $12 = HEAP8[$11>>0]|0; + $13 = ($12<<24>>24)!=(0); + if ($13) { + HEAP32[$0>>2] = 25824; + $19 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($19|0); + } else { + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + (($14*20)|0)|0); + HEAP32[$0>>2] = $18; + $19 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($19|0); + } + return 0|0; +} +function _exprIsConst($p,$initFlag) { + $p = $p|0; + $initFlag = $initFlag|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $w = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp; + $w = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $initFlag; + ;HEAP32[$w+0>>2]=0|0;HEAP32[$w+4>>2]=0|0;HEAP32[$w+8>>2]=0|0;HEAP32[$w+12>>2]=0|0;HEAP32[$w+16>>2]=0|0;HEAP32[$w+20>>2]=0|0; + $2 = HEAP32[$1>>2]|0; + $3 = (($w) + 20|0); + HEAP32[$3>>2] = $2; + HEAP32[$w>>2] = 62; + $4 = (($w) + 4|0); + HEAP32[$4>>2] = 63; + $5 = HEAP32[$0>>2]|0; + (_sqlite3WalkExpr($w,$5)|0); + $6 = (($w) + 20|0); + $7 = HEAP32[$6>>2]|0; + STACKTOP = sp;return ($7|0); +} +function _exprNodeIsConstant($pWalker,$pExpr) { + $pWalker = $pWalker|0; + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$1>>2] = $pWalker; + HEAP32[$2>>2] = $pExpr; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 20|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)==(3); + if ($6) { + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = $9 & 1; + $11 = ($10|0)!=(0); + if ($11) { + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 20|0); + HEAP32[$13>>2] = 0; + HEAP32[$0>>2] = 2; + } else { + label = 4; + } + } else { + label = 4; + } + L4: do { + if ((label|0) == 4) { + $14 = HEAP32[$2>>2]|0; + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + switch ($16|0) { + case 153: { + label = 5; + break; + } + case 156: case 155: case 154: case 27: { + break; + } + default: { + HEAP32[$0>>2] = 0; + break L4; + } + } + do { + if ((label|0) == 5) { + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 20|0); + $19 = HEAP32[$18>>2]|0; + $20 = ($19|0)==(2); + if (!($20)) { + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = $23 & 524288; + $25 = ($24|0)!=(0); + if (!($25)) { + break; + } + } + HEAP32[$0>>2] = 0; + break L4; + } + } while(0); + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 20|0); + HEAP32[$27>>2] = 0; + HEAP32[$0>>2] = 2; + } + } while(0); + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); +} +function _selectNodeIsConstant($pWalker,$NotUsed) { + $pWalker = $pWalker|0; + $NotUsed = $NotUsed|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pWalker; + HEAP32[$1>>2] = $NotUsed; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 20|0); + HEAP32[$3>>2] = 0; + STACKTOP = sp;return 2; +} +function _dup8bytes($v,$in) { + $v = $v|0; + $in = $in|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $out = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $out = sp + 4|0; + HEAP32[$0>>2] = $v; + HEAP32[$1>>2] = $in; + $2 = HEAP32[$0>>2]|0; + $3 = (_sqlite3VdbeDb($2)|0); + $4 = (_sqlite3DbMallocRaw($3,8)|0); + HEAP32[$out>>2] = $4; + $5 = HEAP32[$out>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $9 = HEAP32[$out>>2]|0; + STACKTOP = sp;return ($9|0); + } + $7 = HEAP32[$out>>2]|0; + $8 = HEAP32[$1>>2]|0; + ;HEAP8[$7+0>>0]=HEAP8[$8+0>>0]|0;HEAP8[$7+1>>0]=HEAP8[$8+1>>0]|0;HEAP8[$7+2>>0]=HEAP8[$8+2>>0]|0;HEAP8[$7+3>>0]=HEAP8[$8+3>>0]|0;HEAP8[$7+4>>0]=HEAP8[$8+4>>0]|0;HEAP8[$7+5>>0]=HEAP8[$8+5>>0]|0;HEAP8[$7+6>>0]=HEAP8[$8+6>>0]|0;HEAP8[$7+7>>0]=HEAP8[$8+7>>0]|0; + $9 = HEAP32[$out>>2]|0; + STACKTOP = sp;return ($9|0); +} +function _sqlite3ExprCachePinRegister($pParse,$iReg) { + $pParse = $pParse|0; + $iReg = $iReg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $i = sp + 4|0; + $p = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iReg; + HEAP32[$i>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 116|0); + HEAP32[$p>>2] = $3; + while(1) { + $4 = HEAP32[$i>>2]|0; + $5 = ($4|0)<(10); + if (!($5)) { + break; + } + $6 = HEAP32[$p>>2]|0; + $7 = (($6) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = ($8|0)==($9|0); + if ($10) { + $11 = HEAP32[$p>>2]|0; + $12 = (($11) + 6|0); + HEAP8[$12>>0] = 0; + } + $13 = HEAP32[$i>>2]|0; + $14 = (($13) + 1)|0; + HEAP32[$i>>2] = $14; + $15 = HEAP32[$p>>2]|0; + $16 = (($15) + 20|0); + HEAP32[$p>>2] = $16; + } + STACKTOP = sp;return; +} +function _sqlite3ExprCacheStore($pParse,$iTab,$iCol,$iReg) { + $pParse = $pParse|0; + $iTab = $iTab|0; + $iCol = $iCol|0; + $iReg = $iReg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $i = 0, $idxLru = 0, $minLru = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $i = sp + 12|0; + $minLru = sp + 16|0; + $idxLru = sp + 20|0; + $p = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iTab; + HEAP32[$2>>2] = $iCol; + HEAP32[$3>>2] = $iReg; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + 60|0); + $7 = HEAP16[$6>>1]|0; + $8 = $7&65535; + $9 = $8 & 2; + $10 = ($9|0)!=(0); + if ($10) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 116|0); + HEAP32[$p>>2] = $12; + while(1) { + $13 = HEAP32[$i>>2]|0; + $14 = ($13|0)<(10); + if (!($14)) { + break; + } + $15 = HEAP32[$p>>2]|0; + $16 = (($15) + 12|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)==(0); + if ($18) { + label = 5; + break; + } + $41 = HEAP32[$i>>2]|0; + $42 = (($41) + 1)|0; + HEAP32[$i>>2] = $42; + $43 = HEAP32[$p>>2]|0; + $44 = (($43) + 20|0); + HEAP32[$p>>2] = $44; + } + if ((label|0) == 5) { + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 100|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$p>>2]|0; + $23 = (($22) + 8|0); + HEAP32[$23>>2] = $21; + $24 = HEAP32[$1>>2]|0; + $25 = HEAP32[$p>>2]|0; + HEAP32[$25>>2] = $24; + $26 = HEAP32[$2>>2]|0; + $27 = $26&65535; + $28 = HEAP32[$p>>2]|0; + $29 = (($28) + 4|0); + HEAP16[$29>>1] = $27; + $30 = HEAP32[$3>>2]|0; + $31 = HEAP32[$p>>2]|0; + $32 = (($31) + 12|0); + HEAP32[$32>>2] = $30; + $33 = HEAP32[$p>>2]|0; + $34 = (($33) + 6|0); + HEAP8[$34>>0] = 0; + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 104|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + 1)|0; + HEAP32[$36>>2] = $38; + $39 = HEAP32[$p>>2]|0; + $40 = (($39) + 16|0); + HEAP32[$40>>2] = $37; + STACKTOP = sp;return; + } + HEAP32[$minLru>>2] = 2147483647; + HEAP32[$idxLru>>2] = -1; + HEAP32[$i>>2] = 0; + $45 = HEAP32[$0>>2]|0; + $46 = (($45) + 116|0); + HEAP32[$p>>2] = $46; + while(1) { + $47 = HEAP32[$i>>2]|0; + $48 = ($47|0)<(10); + if (!($48)) { + break; + } + $49 = HEAP32[$p>>2]|0; + $50 = (($49) + 16|0); + $51 = HEAP32[$50>>2]|0; + $52 = HEAP32[$minLru>>2]|0; + $53 = ($51|0)<($52|0); + if ($53) { + $54 = HEAP32[$i>>2]|0; + HEAP32[$idxLru>>2] = $54; + $55 = HEAP32[$p>>2]|0; + $56 = (($55) + 16|0); + $57 = HEAP32[$56>>2]|0; + HEAP32[$minLru>>2] = $57; + } + $58 = HEAP32[$i>>2]|0; + $59 = (($58) + 1)|0; + HEAP32[$i>>2] = $59; + $60 = HEAP32[$p>>2]|0; + $61 = (($60) + 20|0); + HEAP32[$p>>2] = $61; + } + $62 = HEAP32[$idxLru>>2]|0; + $63 = ($62|0)>=(0); + if (!($63)) { + STACKTOP = sp;return; + } + $64 = HEAP32[$idxLru>>2]|0; + $65 = HEAP32[$0>>2]|0; + $66 = (($65) + 116|0); + $67 = (($66) + (($64*20)|0)|0); + HEAP32[$p>>2] = $67; + $68 = HEAP32[$0>>2]|0; + $69 = (($68) + 100|0); + $70 = HEAP32[$69>>2]|0; + $71 = HEAP32[$p>>2]|0; + $72 = (($71) + 8|0); + HEAP32[$72>>2] = $70; + $73 = HEAP32[$1>>2]|0; + $74 = HEAP32[$p>>2]|0; + HEAP32[$74>>2] = $73; + $75 = HEAP32[$2>>2]|0; + $76 = $75&65535; + $77 = HEAP32[$p>>2]|0; + $78 = (($77) + 4|0); + HEAP16[$78>>1] = $76; + $79 = HEAP32[$3>>2]|0; + $80 = HEAP32[$p>>2]|0; + $81 = (($80) + 12|0); + HEAP32[$81>>2] = $79; + $82 = HEAP32[$p>>2]|0; + $83 = (($82) + 6|0); + HEAP8[$83>>0] = 0; + $84 = HEAP32[$0>>2]|0; + $85 = (($84) + 104|0); + $86 = HEAP32[$85>>2]|0; + $87 = (($86) + 1)|0; + HEAP32[$85>>2] = $87; + $88 = HEAP32[$p>>2]|0; + $89 = (($88) + 16|0); + HEAP32[$89>>2] = $86; + STACKTOP = sp;return; +} +function _sqlite3CompareAffinity($pExpr,$aff2) { + $pExpr = $pExpr|0; + $aff2 = $aff2|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aff1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 6|0; + $1 = sp; + $2 = sp + 4|0; + $aff1 = sp + 5|0; + HEAP32[$1>>2] = $pExpr; + HEAP8[$2>>0] = $aff2; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3ExprAffinity($3)|0); + HEAP8[$aff1>>0] = $4; + $5 = HEAP8[$aff1>>0]|0; + $6 = $5 << 24 >> 24; + $7 = ($6|0)!=(0); + if ($7) { + $8 = HEAP8[$2>>0]|0; + $9 = $8 << 24 >> 24; + $10 = ($9|0)!=(0); + if ($10) { + $11 = HEAP8[$aff1>>0]|0; + $12 = $11 << 24 >> 24; + $13 = ($12|0)>=(99); + if (!($13)) { + $14 = HEAP8[$2>>0]|0; + $15 = $14 << 24 >> 24; + $16 = ($15|0)>=(99); + if (!($16)) { + HEAP8[$0>>0] = 98; + $27 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($27|0); + } + } + HEAP8[$0>>0] = 99; + $27 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($27|0); + } + } + $17 = HEAP8[$aff1>>0]|0; + $18 = ($17<<24>>24)!=(0); + if (!($18)) { + $19 = HEAP8[$2>>0]|0; + $20 = ($19<<24>>24)!=(0); + if (!($20)) { + HEAP8[$0>>0] = 98; + $27 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($27|0); + } + } + $21 = HEAP8[$aff1>>0]|0; + $22 = $21 << 24 >> 24; + $23 = HEAP8[$2>>0]|0; + $24 = $23 << 24 >> 24; + $25 = (($22) + ($24))|0; + $26 = $25&255; + HEAP8[$0>>0] = $26; + $27 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($27|0); +} +function _isCandidateForInOpt($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pEList = 0, $pSrc = 0; + var $pTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $pSrc = sp + 4|0; + $pEList = sp + 8|0; + $pTab = sp + 12|0; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0|0); + do { + if ($3) { + HEAP32[$0>>2] = 0; + } else { + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 52|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + HEAP32[$0>>2] = 0; + break; + } + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 6|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10&65535; + $12 = $11 & 5; + $13 = ($12|0)!=(0); + if ($13) { + HEAP32[$0>>2] = 0; + break; + } + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 60|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + HEAP32[$0>>2] = 0; + break; + } + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 36|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)!=(0|0); + if ($21) { + HEAP32[$0>>2] = 0; + break; + } + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 32|0); + $24 = HEAP32[$23>>2]|0; + HEAP32[$pSrc>>2] = $24; + $25 = HEAP32[$pSrc>>2]|0; + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)!=(1); + if ($27) { + HEAP32[$0>>2] = 0; + break; + } + $28 = HEAP32[$pSrc>>2]|0; + $29 = (($28) + 8|0); + $30 = (($29) + 20|0); + $31 = HEAP32[$30>>2]|0; + $32 = ($31|0)!=(0|0); + if ($32) { + HEAP32[$0>>2] = 0; + break; + } + $33 = HEAP32[$pSrc>>2]|0; + $34 = (($33) + 8|0); + $35 = (($34) + 16|0); + $36 = HEAP32[$35>>2]|0; + HEAP32[$pTab>>2] = $36; + $37 = HEAP32[$pTab>>2]|0; + $38 = ($37|0)==(0|0); + if ($38) { + HEAP32[$0>>2] = 0; + break; + } + $39 = HEAP32[$pTab>>2]|0; + $40 = (($39) + 44|0); + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = $42 & 16; + $44 = ($43|0)!=(0); + if ($44) { + HEAP32[$0>>2] = 0; + break; + } + $45 = HEAP32[$1>>2]|0; + $46 = HEAP32[$45>>2]|0; + HEAP32[$pEList>>2] = $46; + $47 = HEAP32[$pEList>>2]|0; + $48 = HEAP32[$47>>2]|0; + $49 = ($48|0)!=(1); + if ($49) { + HEAP32[$0>>2] = 0; + break; + } + $50 = HEAP32[$pEList>>2]|0; + $51 = (($50) + 4|0); + $52 = HEAP32[$51>>2]|0; + $53 = HEAP32[$52>>2]|0; + $54 = HEAP8[$53>>0]|0; + $55 = $54&255; + $56 = ($55|0)!=(154); + if ($56) { + HEAP32[$0>>2] = 0; + break; + } else { + HEAP32[$0>>2] = 1; + break; + } + } + } while(0); + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); +} +function _sqlite3IndexAffinityOk($pExpr,$idx_affinity) { + $pExpr = $pExpr|0; + $idx_affinity = $idx_affinity|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aff = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + $2 = sp + 9|0; + $aff = sp + 8|0; + HEAP32[$1>>2] = $pExpr; + HEAP8[$2>>0] = $idx_affinity; + $3 = HEAP32[$1>>2]|0; + $4 = (_comparisonAffinity($3)|0); + HEAP8[$aff>>0] = $4; + $5 = HEAP8[$aff>>0]|0; + $6 = $5 << 24 >> 24; + if ((($6|0) == 98)) { + HEAP32[$0>>2] = 1; + } else if ((($6|0) == 97)) { + $7 = HEAP8[$2>>0]|0; + $8 = $7 << 24 >> 24; + $9 = ($8|0)==(97); + $10 = $9&1; + HEAP32[$0>>2] = $10; + } else { + $11 = HEAP8[$2>>0]|0; + $12 = $11 << 24 >> 24; + $13 = ($12|0)>=(99); + $14 = $13&1; + HEAP32[$0>>2] = $14; + } + $15 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($15|0); +} +function _binaryCompareP5($pExpr1,$pExpr2,$jumpIfNull) { + $pExpr1 = $pExpr1|0; + $pExpr2 = $pExpr2|0; + $jumpIfNull = $jumpIfNull|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aff = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + $aff = sp + 12|0; + HEAP32[$0>>2] = $pExpr1; + HEAP32[$1>>2] = $pExpr2; + HEAP32[$2>>2] = $jumpIfNull; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3ExprAffinity($3)|0); + HEAP8[$aff>>0] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP8[$aff>>0]|0; + $7 = (_sqlite3CompareAffinity($5,$6)|0); + $8 = $7&255; + $9 = HEAP32[$2>>2]|0; + $10 = $9&255; + $11 = $10&255; + $12 = $8 | $11; + $13 = $12&255; + HEAP8[$aff>>0] = $13; + $14 = HEAP8[$aff>>0]|0; + STACKTOP = sp;return ($14|0); +} +function _sqlite3ExprIsConstantNotJoin($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (_exprIsConst($1,3)|0); + STACKTOP = sp;return ($2|0); +} +function _collationMatch($zColl,$pIndex) { + $zColl = $zColl|0; + $pIndex = $pIndex|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + $z = sp + 12|0; + HEAP32[$1>>2] = $zColl; + HEAP32[$2>>2] = $pIndex; + HEAP32[$i>>2] = 0; + while(1) { + $3 = HEAP32[$i>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = (($4) + 52|0); + $6 = HEAP16[$5>>1]|0; + $7 = $6&65535; + $8 = ($3|0)<($7|0); + if (!($8)) { + label = 7; + break; + } + $9 = HEAP32[$i>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = (($10) + 32|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + ($9<<2)|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$z>>2] = $14; + $15 = HEAP32[$i>>2]|0; + $16 = HEAP32[$2>>2]|0; + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + ($15<<1)|0); + $20 = HEAP16[$19>>1]|0; + $21 = $20 << 16 >> 16; + $22 = ($21|0)>=(0); + if ($22) { + $23 = HEAP32[$z>>2]|0; + $24 = HEAP32[$1>>2]|0; + $25 = (_sqlite3_stricmp($23,$24)|0); + $26 = (0)==($25|0); + if ($26) { + label = 5; + break; + } + } + $27 = HEAP32[$i>>2]|0; + $28 = (($27) + 1)|0; + HEAP32[$i>>2] = $28; + } + if ((label|0) == 5) { + HEAP32[$0>>2] = 1; + $29 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($29|0); + } + else if ((label|0) == 7) { + HEAP32[$0>>2] = 0; + $29 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($29|0); + } + return 0|0; +} +function _detachFunc($context,$NotUsed,$argv) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $pDb = 0, $vararg_buffer6 = 0, $zErr = 0, $zName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; + $vararg_buffer6 = sp; + $0 = sp + 28|0; + $1 = sp + 24|0; + $2 = sp + 20|0; + $zName = sp + 16|0; + $db = sp + 8|0; + $i = sp + 4|0; + $pDb = sp + 12|0; + $zErr = sp + 32|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $argv; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3_value_text($4)|0); + HEAP32[$zName>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = (_sqlite3_context_db_handle($6)|0); + HEAP32[$db>>2] = $7; + HEAP32[$pDb>>2] = 0; + $8 = HEAP32[$zName>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + HEAP32[$zName>>2] = 1784; + } + HEAP32[$i>>2] = 0; + while(1) { + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$db>>2]|0; + $12 = (($11) + 20|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($10|0)<($13|0); + if (!($14)) { + break; + } + $15 = HEAP32[$i>>2]|0; + $16 = HEAP32[$db>>2]|0; + $17 = (($16) + 16|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + ($15<<4)|0); + HEAP32[$pDb>>2] = $19; + $20 = HEAP32[$pDb>>2]|0; + $21 = (($20) + 4|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)==(0|0); + if (!($23)) { + $24 = HEAP32[$pDb>>2]|0; + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$zName>>2]|0; + $27 = (_sqlite3_stricmp($25,$26)|0); + $28 = ($27|0)==(0); + if ($28) { + break; + } + } + $29 = HEAP32[$i>>2]|0; + $30 = (($29) + 1)|0; + HEAP32[$i>>2] = $30; + } + $31 = HEAP32[$i>>2]|0; + $32 = HEAP32[$db>>2]|0; + $33 = (($32) + 20|0); + $34 = HEAP32[$33>>2]|0; + $35 = ($31|0)>=($34|0); + do { + if ($35) { + $36 = HEAP32[$zName>>2]|0; + HEAP32[$vararg_buffer6>>2] = $36; + (_sqlite3_snprintf(128,$zErr,25904,$vararg_buffer6)|0); + } else { + $37 = HEAP32[$i>>2]|0; + $38 = ($37|0)<(2); + if ($38) { + $39 = HEAP32[$zName>>2]|0; + HEAP32[$vararg_buffer6>>2] = $39; + (_sqlite3_snprintf(128,$zErr,25928,$vararg_buffer6)|0); + break; + } + $40 = HEAP32[$db>>2]|0; + $41 = (($40) + 62|0); + $42 = HEAP8[$41>>0]|0; + $43 = ($42<<24>>24)!=(0); + if (!($43)) { + (_sqlite3_snprintf(128,$zErr,25960,$vararg_buffer6)|0); + break; + } + $44 = HEAP32[$pDb>>2]|0; + $45 = (($44) + 4|0); + $46 = HEAP32[$45>>2]|0; + $47 = (_sqlite3BtreeIsInReadTrans($46)|0); + $48 = ($47|0)!=(0); + if (!($48)) { + $49 = HEAP32[$pDb>>2]|0; + $50 = (($49) + 4|0); + $51 = HEAP32[$50>>2]|0; + $52 = (_sqlite3BtreeIsInBackup($51)|0); + $53 = ($52|0)!=(0); + if (!($53)) { + $55 = HEAP32[$pDb>>2]|0; + $56 = (($55) + 4|0); + $57 = HEAP32[$56>>2]|0; + (_sqlite3BtreeClose($57)|0); + $58 = HEAP32[$pDb>>2]|0; + $59 = (($58) + 4|0); + HEAP32[$59>>2] = 0; + $60 = HEAP32[$pDb>>2]|0; + $61 = (($60) + 12|0); + HEAP32[$61>>2] = 0; + $62 = HEAP32[$db>>2]|0; + _sqlite3ResetAllSchemasOfConnection($62); + STACKTOP = sp;return; + } + } + $54 = HEAP32[$zName>>2]|0; + HEAP32[$vararg_buffer6>>2] = $54; + (_sqlite3_snprintf(128,$zErr,26008,$vararg_buffer6)|0); + } + } while(0); + $63 = HEAP32[$0>>2]|0; + _sqlite3_result_error($63,$zErr,-1); + STACKTOP = sp;return; +} +function _codeAttach($pParse,$type,$pFunc,$pAuthArg,$pFilename,$pDbname,$pKey) { + $pParse = $pParse|0; + $type = $type|0; + $pFunc = $pFunc|0; + $pAuthArg = $pAuthArg|0; + $pFilename = $pFilename|0; + $pDbname = $pDbname|0; + $pKey = $pKey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; + var $db = 0, $rc = 0, $regArgs = 0, $sName = 0, $v = 0, $zAuthArg = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 80|0; + $1 = sp + 76|0; + $2 = sp + 72|0; + $3 = sp + 68|0; + $4 = sp + 64|0; + $5 = sp + 60|0; + $6 = sp + 56|0; + $rc = sp + 48|0; + $sName = sp + 16|0; + $v = sp + 8|0; + $db = sp + 4|0; + $regArgs = sp; + $zAuthArg = sp + 52|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $type; + HEAP32[$2>>2] = $pFunc; + HEAP32[$3>>2] = $pAuthArg; + HEAP32[$4>>2] = $pFilename; + HEAP32[$5>>2] = $pDbname; + HEAP32[$6>>2] = $pKey; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$db>>2] = $8; + ;HEAP32[$sName+0>>2]=0|0;HEAP32[$sName+4>>2]=0|0;HEAP32[$sName+8>>2]=0|0;HEAP32[$sName+12>>2]=0|0;HEAP32[$sName+16>>2]=0|0;HEAP32[$sName+20>>2]=0|0;HEAP32[$sName+24>>2]=0|0;HEAP32[$sName+28>>2]=0|0; + $9 = HEAP32[$0>>2]|0; + HEAP32[$sName>>2] = $9; + $10 = HEAP32[$4>>2]|0; + $11 = (_resolveAttachExpr($sName,$10)|0); + HEAP32[$rc>>2] = $11; + $12 = (0)!=($11|0); + do { + if ($12) { + label = 4; + } else { + $13 = HEAP32[$5>>2]|0; + $14 = (_resolveAttachExpr($sName,$13)|0); + HEAP32[$rc>>2] = $14; + $15 = (0)!=($14|0); + if ($15) { + label = 4; + } else { + $16 = HEAP32[$6>>2]|0; + $17 = (_resolveAttachExpr($sName,$16)|0); + HEAP32[$rc>>2] = $17; + $18 = (0)!=($17|0); + if ($18) { + label = 4; + } else { + $23 = HEAP32[$3>>2]|0; + $24 = ($23|0)!=(0|0); + if ($24) { + $25 = HEAP32[$3>>2]|0; + $26 = HEAP8[$25>>0]|0; + $27 = $26&255; + $28 = ($27|0)==(97); + if ($28) { + $29 = HEAP32[$3>>2]|0; + $30 = (($29) + 8|0); + $31 = HEAP32[$30>>2]|0; + HEAP32[$zAuthArg>>2] = $31; + } else { + HEAP32[$zAuthArg>>2] = 0; + } + $32 = HEAP32[$0>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = HEAP32[$zAuthArg>>2]|0; + $35 = (_sqlite3AuthCheck($32,$33,$34,0,0)|0); + HEAP32[$rc>>2] = $35; + $36 = HEAP32[$rc>>2]|0; + $37 = ($36|0)!=(0); + if ($37) { + break; + } + } + $38 = HEAP32[$0>>2]|0; + $39 = (_sqlite3GetVdbe($38)|0); + HEAP32[$v>>2] = $39; + $40 = HEAP32[$0>>2]|0; + $41 = (_sqlite3GetTempRange($40,4)|0); + HEAP32[$regArgs>>2] = $41; + $42 = HEAP32[$0>>2]|0; + $43 = HEAP32[$4>>2]|0; + $44 = HEAP32[$regArgs>>2]|0; + _sqlite3ExprCode($42,$43,$44); + $45 = HEAP32[$0>>2]|0; + $46 = HEAP32[$5>>2]|0; + $47 = HEAP32[$regArgs>>2]|0; + $48 = (($47) + 1)|0; + _sqlite3ExprCode($45,$46,$48); + $49 = HEAP32[$0>>2]|0; + $50 = HEAP32[$6>>2]|0; + $51 = HEAP32[$regArgs>>2]|0; + $52 = (($51) + 2)|0; + _sqlite3ExprCode($49,$50,$52); + $53 = HEAP32[$v>>2]|0; + $54 = ($53|0)!=(0|0); + if ($54) { + $55 = HEAP32[$v>>2]|0; + $56 = HEAP32[$regArgs>>2]|0; + $57 = (($56) + 3)|0; + $58 = HEAP32[$2>>2]|0; + $59 = HEAP16[$58>>1]|0; + $60 = $59 << 16 >> 16; + $61 = (($57) - ($60))|0; + $62 = HEAP32[$regArgs>>2]|0; + $63 = (($62) + 3)|0; + (_sqlite3VdbeAddOp3($55,1,0,$61,$63)|0); + $64 = HEAP32[$v>>2]|0; + $65 = HEAP32[$2>>2]|0; + $66 = HEAP16[$65>>1]|0; + $67 = $66&255; + _sqlite3VdbeChangeP5($64,$67); + $68 = HEAP32[$v>>2]|0; + $69 = HEAP32[$2>>2]|0; + _sqlite3VdbeChangeP4($68,-1,$69,-5); + $70 = HEAP32[$v>>2]|0; + $71 = HEAP32[$1>>2]|0; + $72 = ($71|0)==(24); + $73 = $72&1; + (_sqlite3VdbeAddOp1($70,139,$73)|0); + } + } + } + } + } while(0); + if ((label|0) == 4) { + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 64|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + 1)|0; + HEAP32[$20>>2] = $22; + } + $74 = HEAP32[$db>>2]|0; + $75 = HEAP32[$4>>2]|0; + _sqlite3ExprDelete($74,$75); + $76 = HEAP32[$db>>2]|0; + $77 = HEAP32[$5>>2]|0; + _sqlite3ExprDelete($76,$77); + $78 = HEAP32[$db>>2]|0; + $79 = HEAP32[$6>>2]|0; + _sqlite3ExprDelete($78,$79); + STACKTOP = sp;return; +} +function _resolveAttachExpr($pName,$pExpr) { + $pName = $pName|0; + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $pName; + HEAP32[$1>>2] = $pExpr; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + do { + if ($3) { + $4 = HEAP32[$1>>2]|0; + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = ($6|0)!=(27); + if ($7) { + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (_sqlite3ResolveExprNames($8,$9)|0); + HEAP32[$rc>>2] = $10; + break; + } else { + $11 = HEAP32[$1>>2]|0; + HEAP8[$11>>0] = 97; + break; + } + } + } while(0); + $12 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($12|0); +} +function _attachFunc($context,$NotUsed,$argv) { + $context = $context|0; + $NotUsed = $NotUsed|0; + $argv = $argv|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aNew = 0, $db = 0, $flags = 0, $i = 0, $iDb = 0, $or$cond = 0, $pPager = 0, $pVfs = 0, $rc = 0, $vararg_buffer13 = 0, $z = 0; + var $zErr = 0, $zErrDyn = 0, $zFile = 0, $zName = 0, $zPath = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer13 = sp; + $0 = sp + 64|0; + $1 = sp + 60|0; + $2 = sp + 56|0; + $i = sp + 52|0; + $rc = sp + 48|0; + $db = sp + 44|0; + $zName = sp + 40|0; + $zFile = sp + 36|0; + $zPath = sp + 68|0; + $zErr = sp + 24|0; + $flags = sp + 20|0; + $aNew = sp + 16|0; + $zErrDyn = sp + 12|0; + $pVfs = sp + 8|0; + $z = sp + 4|0; + $pPager = sp + 28|0; + $iDb = sp + 32|0; + HEAP32[$0>>2] = $context; + HEAP32[$1>>2] = $NotUsed; + HEAP32[$2>>2] = $argv; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3_context_db_handle($3)|0); + HEAP32[$db>>2] = $4; + HEAP32[$zPath>>2] = 0; + HEAP32[$zErr>>2] = 0; + HEAP32[$zErrDyn>>2] = 0; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = (_sqlite3_value_text($6)|0); + HEAP32[$zFile>>2] = $7; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = (_sqlite3_value_text($10)|0); + HEAP32[$zName>>2] = $11; + $12 = HEAP32[$zFile>>2]|0; + $13 = ($12|0)==(0|0); + if ($13) { + HEAP32[$zFile>>2] = 1784; + } + $14 = HEAP32[$zName>>2]|0; + $15 = ($14|0)==(0|0); + if ($15) { + HEAP32[$zName>>2] = 1784; + } + $16 = HEAP32[$db>>2]|0; + $17 = (($16) + 20|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$db>>2]|0; + $20 = (($19) + 88|0); + $21 = (($20) + 28|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + 2)|0; + $24 = ($18|0)>=($23|0); + $25 = HEAP32[$db>>2]|0; + do { + if ($24) { + $26 = HEAP32[$db>>2]|0; + $27 = (($26) + 88|0); + $28 = (($27) + 28|0); + $29 = HEAP32[$28>>2]|0; + HEAP32[$vararg_buffer13>>2] = $29; + $30 = (_sqlite3MPrintf($25,26088,$vararg_buffer13)|0); + HEAP32[$zErrDyn>>2] = $30; + } else { + $31 = (($25) + 62|0); + $32 = HEAP8[$31>>0]|0; + $33 = ($32<<24>>24)!=(0); + if (!($33)) { + $34 = HEAP32[$db>>2]|0; + $35 = (_sqlite3MPrintf($34,26128,$vararg_buffer13)|0); + HEAP32[$zErrDyn>>2] = $35; + break; + } + HEAP32[$i>>2] = 0; + while(1) { + $36 = HEAP32[$i>>2]|0; + $37 = HEAP32[$db>>2]|0; + $38 = (($37) + 20|0); + $39 = HEAP32[$38>>2]|0; + $40 = ($36|0)<($39|0); + if (!($40)) { + break; + } + $41 = HEAP32[$i>>2]|0; + $42 = HEAP32[$db>>2]|0; + $43 = (($42) + 16|0); + $44 = HEAP32[$43>>2]|0; + $45 = (($44) + ($41<<4)|0); + $46 = HEAP32[$45>>2]|0; + HEAP32[$z>>2] = $46; + $47 = HEAP32[$z>>2]|0; + $48 = HEAP32[$zName>>2]|0; + $49 = (_sqlite3_stricmp($47,$48)|0); + $50 = ($49|0)==(0); + if ($50) { + label = 12; + break; + } + $54 = HEAP32[$i>>2]|0; + $55 = (($54) + 1)|0; + HEAP32[$i>>2] = $55; + } + if ((label|0) == 12) { + $51 = HEAP32[$db>>2]|0; + $52 = HEAP32[$zName>>2]|0; + HEAP32[$vararg_buffer13>>2] = $52; + $53 = (_sqlite3MPrintf($51,26176,$vararg_buffer13)|0); + HEAP32[$zErrDyn>>2] = $53; + break; + } + $56 = HEAP32[$db>>2]|0; + $57 = (($56) + 16|0); + $58 = HEAP32[$57>>2]|0; + $59 = HEAP32[$db>>2]|0; + $60 = (($59) + 448|0); + $61 = ($58|0)==($60|0); + $62 = HEAP32[$db>>2]|0; + do { + if ($61) { + $63 = (_sqlite3DbMallocRaw($62,48)|0); + HEAP32[$aNew>>2] = $63; + $64 = HEAP32[$aNew>>2]|0; + $65 = ($64|0)==(0|0); + if ($65) { + STACKTOP = sp;return; + } else { + $66 = HEAP32[$aNew>>2]|0; + $67 = HEAP32[$db>>2]|0; + $68 = (($67) + 16|0); + $69 = HEAP32[$68>>2]|0; + ;HEAP32[$66+0>>2]=HEAP32[$69+0>>2]|0;HEAP32[$66+4>>2]=HEAP32[$69+4>>2]|0;HEAP32[$66+8>>2]=HEAP32[$69+8>>2]|0;HEAP32[$66+12>>2]=HEAP32[$69+12>>2]|0;HEAP32[$66+16>>2]=HEAP32[$69+16>>2]|0;HEAP32[$66+20>>2]=HEAP32[$69+20>>2]|0;HEAP32[$66+24>>2]=HEAP32[$69+24>>2]|0;HEAP32[$66+28>>2]=HEAP32[$69+28>>2]|0; + break; + } + } else { + $70 = HEAP32[$db>>2]|0; + $71 = (($70) + 16|0); + $72 = HEAP32[$71>>2]|0; + $73 = HEAP32[$db>>2]|0; + $74 = (($73) + 20|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($75) + 1)|0; + $77 = $76<<4; + $78 = (_sqlite3DbRealloc($62,$72,$77)|0); + HEAP32[$aNew>>2] = $78; + $79 = HEAP32[$aNew>>2]|0; + $80 = ($79|0)==(0|0); + if ($80) { + STACKTOP = sp;return; + } + } + } while(0); + $81 = HEAP32[$aNew>>2]|0; + $82 = HEAP32[$db>>2]|0; + $83 = (($82) + 16|0); + HEAP32[$83>>2] = $81; + $84 = HEAP32[$db>>2]|0; + $85 = (($84) + 20|0); + $86 = HEAP32[$85>>2]|0; + $87 = HEAP32[$db>>2]|0; + $88 = (($87) + 16|0); + $89 = HEAP32[$88>>2]|0; + $90 = (($89) + ($86<<4)|0); + HEAP32[$aNew>>2] = $90; + $91 = HEAP32[$aNew>>2]|0; + ;HEAP32[$91+0>>2]=0|0;HEAP32[$91+4>>2]=0|0;HEAP32[$91+8>>2]=0|0;HEAP32[$91+12>>2]=0|0; + $92 = HEAP32[$db>>2]|0; + $93 = (($92) + 48|0); + $94 = HEAP32[$93>>2]|0; + HEAP32[$flags>>2] = $94; + $95 = HEAP32[$db>>2]|0; + $96 = HEAP32[$95>>2]|0; + $97 = (($96) + 16|0); + $98 = HEAP32[$97>>2]|0; + $99 = HEAP32[$zFile>>2]|0; + $100 = (_sqlite3ParseUri($98,$99,$flags,$pVfs,$zPath,$zErr)|0); + HEAP32[$rc>>2] = $100; + $101 = HEAP32[$rc>>2]|0; + $102 = ($101|0)!=(0); + if ($102) { + $103 = HEAP32[$rc>>2]|0; + $104 = ($103|0)==(7); + if ($104) { + $105 = HEAP32[$db>>2]|0; + $106 = (($105) + 64|0); + HEAP8[$106>>0] = 1; + } + $107 = HEAP32[$0>>2]|0; + $108 = HEAP32[$zErr>>2]|0; + _sqlite3_result_error($107,$108,-1); + $109 = HEAP32[$zErr>>2]|0; + _sqlite3_free($109); + STACKTOP = sp;return; + } + $110 = HEAP32[$flags>>2]|0; + $111 = $110 | 256; + HEAP32[$flags>>2] = $111; + $112 = HEAP32[$pVfs>>2]|0; + $113 = HEAP32[$zPath>>2]|0; + $114 = HEAP32[$db>>2]|0; + $115 = HEAP32[$aNew>>2]|0; + $116 = (($115) + 4|0); + $117 = HEAP32[$flags>>2]|0; + $118 = (_sqlite3BtreeOpen($112,$113,$114,$116,0,$117)|0); + HEAP32[$rc>>2] = $118; + $119 = HEAP32[$zPath>>2]|0; + _sqlite3_free($119); + $120 = HEAP32[$db>>2]|0; + $121 = (($120) + 20|0); + $122 = HEAP32[$121>>2]|0; + $123 = (($122) + 1)|0; + HEAP32[$121>>2] = $123; + $124 = HEAP32[$rc>>2]|0; + $125 = ($124|0)==(19); + if ($125) { + HEAP32[$rc>>2] = 1; + $126 = HEAP32[$db>>2]|0; + $127 = (_sqlite3MPrintf($126,26208,$vararg_buffer13)|0); + HEAP32[$zErrDyn>>2] = $127; + } else { + $128 = HEAP32[$rc>>2]|0; + $129 = ($128|0)==(0); + if ($129) { + $130 = HEAP32[$db>>2]|0; + $131 = HEAP32[$aNew>>2]|0; + $132 = (($131) + 4|0); + $133 = HEAP32[$132>>2]|0; + $134 = (_sqlite3SchemaGet($130,$133)|0); + $135 = HEAP32[$aNew>>2]|0; + $136 = (($135) + 12|0); + HEAP32[$136>>2] = $134; + $137 = HEAP32[$aNew>>2]|0; + $138 = (($137) + 12|0); + $139 = HEAP32[$138>>2]|0; + $140 = ($139|0)!=(0|0); + if ($140) { + $141 = HEAP32[$aNew>>2]|0; + $142 = (($141) + 12|0); + $143 = HEAP32[$142>>2]|0; + $144 = (($143) + 76|0); + $145 = HEAP8[$144>>0]|0; + $146 = $145&255; + $147 = ($146|0)!=(0); + if ($147) { + $148 = HEAP32[$aNew>>2]|0; + $149 = (($148) + 12|0); + $150 = HEAP32[$149>>2]|0; + $151 = (($150) + 77|0); + $152 = HEAP8[$151>>0]|0; + $153 = $152&255; + $154 = HEAP32[$db>>2]|0; + $155 = (($154) + 16|0); + $156 = HEAP32[$155>>2]|0; + $157 = (($156) + 12|0); + $158 = HEAP32[$157>>2]|0; + $159 = (($158) + 77|0); + $160 = HEAP8[$159>>0]|0; + $161 = $160&255; + $162 = ($153|0)!=($161|0); + if ($162) { + $163 = HEAP32[$db>>2]|0; + $164 = (_sqlite3MPrintf($163,25264,$vararg_buffer13)|0); + HEAP32[$zErrDyn>>2] = $164; + HEAP32[$rc>>2] = 1; + } + } + } else { + HEAP32[$rc>>2] = 7; + } + $165 = HEAP32[$aNew>>2]|0; + $166 = (($165) + 4|0); + $167 = HEAP32[$166>>2]|0; + $168 = (_sqlite3BtreePager($167)|0); + HEAP32[$pPager>>2] = $168; + $169 = HEAP32[$pPager>>2]|0; + $170 = HEAP32[$db>>2]|0; + $171 = (($170) + 65|0); + $172 = HEAP8[$171>>0]|0; + $173 = $172&255; + (_sqlite3PagerLockingMode($169,$173)|0); + $174 = HEAP32[$aNew>>2]|0; + $175 = (($174) + 4|0); + $176 = HEAP32[$175>>2]|0; + $177 = HEAP32[$db>>2]|0; + $178 = (($177) + 16|0); + $179 = HEAP32[$178>>2]|0; + $180 = (($179) + 4|0); + $181 = HEAP32[$180>>2]|0; + $182 = (_sqlite3BtreeSecureDelete($181,-1)|0); + (_sqlite3BtreeSecureDelete($176,$182)|0); + $183 = HEAP32[$aNew>>2]|0; + $184 = (($183) + 4|0); + $185 = HEAP32[$184>>2]|0; + $186 = HEAP32[$db>>2]|0; + $187 = (($186) + 24|0); + $188 = HEAP32[$187>>2]|0; + $189 = $188 & 28; + $190 = 3 | $189; + (_sqlite3BtreeSetPagerFlags($185,$190)|0); + } + } + $191 = HEAP32[$aNew>>2]|0; + $192 = (($191) + 8|0); + HEAP8[$192>>0] = 3; + $193 = HEAP32[$db>>2]|0; + $194 = HEAP32[$zName>>2]|0; + $195 = (_sqlite3DbStrDup($193,$194)|0); + $196 = HEAP32[$aNew>>2]|0; + HEAP32[$196>>2] = $195; + $197 = HEAP32[$rc>>2]|0; + $198 = ($197|0)==(0); + if ($198) { + $199 = HEAP32[$aNew>>2]|0; + $200 = HEAP32[$199>>2]|0; + $201 = ($200|0)==(0|0); + if ($201) { + HEAP32[$rc>>2] = 7; + } + } + $202 = HEAP32[$rc>>2]|0; + $203 = ($202|0)==(0); + if ($203) { + $204 = HEAP32[$db>>2]|0; + _sqlite3BtreeEnterAll($204); + $205 = HEAP32[$db>>2]|0; + $206 = (_sqlite3Init($205,$zErrDyn)|0); + HEAP32[$rc>>2] = $206; + } + $207 = HEAP32[$rc>>2]|0; + $208 = ($207|0)!=(0); + if (!($208)) { + STACKTOP = sp;return; + } + $209 = HEAP32[$db>>2]|0; + $210 = (($209) + 20|0); + $211 = HEAP32[$210>>2]|0; + $212 = (($211) - 1)|0; + HEAP32[$iDb>>2] = $212; + $213 = HEAP32[$iDb>>2]|0; + $214 = HEAP32[$db>>2]|0; + $215 = (($214) + 16|0); + $216 = HEAP32[$215>>2]|0; + $217 = (($216) + ($213<<4)|0); + $218 = (($217) + 4|0); + $219 = HEAP32[$218>>2]|0; + $220 = ($219|0)!=(0|0); + if ($220) { + $221 = HEAP32[$iDb>>2]|0; + $222 = HEAP32[$db>>2]|0; + $223 = (($222) + 16|0); + $224 = HEAP32[$223>>2]|0; + $225 = (($224) + ($221<<4)|0); + $226 = (($225) + 4|0); + $227 = HEAP32[$226>>2]|0; + (_sqlite3BtreeClose($227)|0); + $228 = HEAP32[$iDb>>2]|0; + $229 = HEAP32[$db>>2]|0; + $230 = (($229) + 16|0); + $231 = HEAP32[$230>>2]|0; + $232 = (($231) + ($228<<4)|0); + $233 = (($232) + 4|0); + HEAP32[$233>>2] = 0; + $234 = HEAP32[$iDb>>2]|0; + $235 = HEAP32[$db>>2]|0; + $236 = (($235) + 16|0); + $237 = HEAP32[$236>>2]|0; + $238 = (($237) + ($234<<4)|0); + $239 = (($238) + 12|0); + HEAP32[$239>>2] = 0; + } + $240 = HEAP32[$db>>2]|0; + _sqlite3ResetAllSchemasOfConnection($240); + $241 = HEAP32[$iDb>>2]|0; + $242 = HEAP32[$db>>2]|0; + $243 = (($242) + 20|0); + HEAP32[$243>>2] = $241; + $244 = HEAP32[$rc>>2]|0; + $245 = ($244|0)==(7); + $246 = HEAP32[$rc>>2]|0; + $247 = ($246|0)==(3082); + $or$cond = $245 | $247; + if ($or$cond) { + $248 = HEAP32[$db>>2]|0; + $249 = (($248) + 64|0); + HEAP8[$249>>0] = 1; + $250 = HEAP32[$db>>2]|0; + $251 = HEAP32[$zErrDyn>>2]|0; + _sqlite3DbFree($250,$251); + $252 = HEAP32[$db>>2]|0; + $253 = (_sqlite3MPrintf($252,9112,$vararg_buffer13)|0); + HEAP32[$zErrDyn>>2] = $253; + break; + } + $254 = HEAP32[$zErrDyn>>2]|0; + $255 = ($254|0)==(0|0); + if ($255) { + $256 = HEAP32[$db>>2]|0; + $257 = HEAP32[$zFile>>2]|0; + HEAP32[$vararg_buffer13>>2] = $257; + $258 = (_sqlite3MPrintf($256,26240,$vararg_buffer13)|0); + HEAP32[$zErrDyn>>2] = $258; + } + } + } while(0); + $259 = HEAP32[$zErrDyn>>2]|0; + $260 = ($259|0)!=(0|0); + if ($260) { + $261 = HEAP32[$0>>2]|0; + $262 = HEAP32[$zErrDyn>>2]|0; + _sqlite3_result_error($261,$262,-1); + $263 = HEAP32[$db>>2]|0; + $264 = HEAP32[$zErrDyn>>2]|0; + _sqlite3DbFree($263,$264); + } + $265 = HEAP32[$rc>>2]|0; + $266 = ($265|0)!=(0); + if (!($266)) { + STACKTOP = sp;return; + } + $267 = HEAP32[$0>>2]|0; + $268 = HEAP32[$rc>>2]|0; + _sqlite3_result_error_code($267,$268); + STACKTOP = sp;return; +} +function _sqlite3PagerLockingMode($pPager,$eMode) { + $pPager = $pPager|0; + $eMode = $eMode|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $eMode; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)>=(0); + if ($3) { + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 12|0); + $6 = HEAP8[$5>>0]|0; + $7 = ($6<<24>>24)!=(0); + if (!($7)) { + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 208|0); + $10 = HEAP32[$9>>2]|0; + $11 = (_sqlite3WalHeapMemory($10)|0); + $12 = ($11|0)!=(0); + if (!($12)) { + $13 = HEAP32[$1>>2]|0; + $14 = $13&255; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 4|0); + HEAP8[$16>>0] = $14; + } + } + } + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + STACKTOP = sp;return ($20|0); +} +function _sqlite3BtreeSecureDelete($p,$newFlag) { + $p = $p|0; + $newFlag = $newFlag|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $b = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $b = sp + 8|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $newFlag; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + HEAP32[$0>>2] = 0; + $36 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($36|0); + } + $5 = HEAP32[$1>>2]|0; + _sqlite3BtreeEnter($5); + $6 = HEAP32[$2>>2]|0; + $7 = ($6|0)>=(0); + if ($7) { + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + 22|0); + $12 = HEAP16[$11>>1]|0; + $13 = $12&65535; + $14 = $13 & -5; + $15 = $14&65535; + HEAP16[$11>>1] = $15; + $16 = HEAP32[$2>>2]|0; + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + 22|0); + $22 = HEAP16[$21>>1]|0; + $23 = $22&65535; + $24 = $23 | 4; + $25 = $24&65535; + HEAP16[$21>>1] = $25; + } + } + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 4|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + 22|0); + $30 = HEAP16[$29>>1]|0; + $31 = $30&65535; + $32 = $31 & 4; + $33 = ($32|0)!=(0); + $34 = $33&1; + HEAP32[$b>>2] = $34; + $35 = HEAP32[$b>>2]|0; + HEAP32[$0>>2] = $35; + $36 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($36|0); +} +function _sqlite3BtreeSetPagerFlags($p,$pgFlags) { + $p = $p|0; + $pgFlags = $pgFlags|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $pBt = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pBt = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pgFlags; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pBt>>2] = $4; + $5 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($5); + $6 = HEAP32[$pBt>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$1>>2]|0; + _sqlite3PagerSetFlags($7,$8); + STACKTOP = sp;return 0; +} +function _sqlite3PagerSetFlags($pPager,$pgFlags) { + $pPager = $pPager|0; + $pgFlags = $pgFlags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $8 = 0, $9 = 0, $level = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $level = sp + 4|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $pgFlags; + $2 = HEAP32[$1>>2]|0; + $3 = $2 & 3; + HEAP32[$level>>2] = $3; + $4 = HEAP32[$level>>2]|0; + $5 = ($4|0)==(1); + if ($5) { + $12 = 1; + } else { + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 12|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = ($9|0)!=(0); + $12 = $10; + } + $11 = $12 ? 1 : 0; + $13 = $11&255; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 7|0); + HEAP8[$15>>0] = $13; + $16 = HEAP32[$level>>2]|0; + $17 = ($16|0)==(3); + if ($17) { + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 12|0); + $20 = HEAP8[$19>>0]|0; + $21 = ($20<<24>>24)!=(0); + $22 = $21 ^ 1; + $24 = $22; + } else { + $24 = 0; + } + $23 = $24 ? 1 : 0; + $25 = $23&255; + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 8|0); + HEAP8[$27>>0] = $25; + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 7|0); + $30 = HEAP8[$29>>0]|0; + $31 = ($30<<24>>24)!=(0); + do { + if ($31) { + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 11|0); + HEAP8[$33>>0] = 0; + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 9|0); + HEAP8[$35>>0] = 0; + } else { + $36 = HEAP32[$1>>2]|0; + $37 = $36 & 4; + $38 = ($37|0)!=(0); + if ($38) { + $39 = HEAP32[$0>>2]|0; + $40 = (($39) + 11|0); + HEAP8[$40>>0] = 3; + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + 9|0); + HEAP8[$42>>0] = 3; + break; + } + $43 = HEAP32[$1>>2]|0; + $44 = $43 & 8; + $45 = ($44|0)!=(0); + $46 = HEAP32[$0>>2]|0; + $47 = (($46) + 11|0); + HEAP8[$47>>0] = 2; + $48 = HEAP32[$0>>2]|0; + $49 = (($48) + 9|0); + if ($45) { + HEAP8[$49>>0] = 3; + break; + } else { + HEAP8[$49>>0] = 2; + break; + } + } + } while(0); + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 11|0); + $52 = HEAP8[$51>>0]|0; + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 10|0); + HEAP8[$54>>0] = $52; + $55 = HEAP32[$0>>2]|0; + $56 = (($55) + 8|0); + $57 = HEAP8[$56>>0]|0; + $58 = ($57<<24>>24)!=(0); + if ($58) { + $59 = HEAP32[$0>>2]|0; + $60 = (($59) + 10|0); + $61 = HEAP8[$60>>0]|0; + $62 = $61&255; + $63 = $62 | 32; + $64 = $63&255; + HEAP8[$60>>0] = $64; + } + $65 = HEAP32[$1>>2]|0; + $66 = $65 & 16; + $67 = ($66|0)!=(0); + $68 = HEAP32[$0>>2]|0; + $69 = (($68) + 20|0); + $70 = HEAP8[$69>>0]|0; + $71 = $70&255; + if ($67) { + $72 = $71 & -2; + $73 = $72&255; + HEAP8[$69>>0] = $73; + STACKTOP = sp;return; + } else { + $74 = $71 | 1; + $75 = $74&255; + HEAP8[$69>>0] = $75; + STACKTOP = sp;return; + } +} +function _sqlite3WalHeapMemory($pWal) { + $pWal = $pWal|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pWal; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + $9 = 0; + $8 = $9&1; + STACKTOP = sp;return ($8|0); + } + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 43|0); + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = ($6|0)==(2); + $9 = $7; + $8 = $9&1; + STACKTOP = sp;return ($8|0); +} +function _sqlite3CodeVerifyNamedSchema($pParse,$zDb) { + $pParse = $pParse|0; + $zDb = $zDb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $pDb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $db = sp + 4|0; + $i = sp + 8|0; + $pDb = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $zDb; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + HEAP32[$i>>2] = 0; + while(1) { + $4 = HEAP32[$i>>2]|0; + $5 = HEAP32[$db>>2]|0; + $6 = (($5) + 20|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($4|0)<($7|0); + if (!($8)) { + break; + } + $9 = HEAP32[$i>>2]|0; + $10 = HEAP32[$db>>2]|0; + $11 = (($10) + 16|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + ($9<<4)|0); + HEAP32[$pDb>>2] = $13; + $14 = HEAP32[$pDb>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(0|0); + do { + if ($17) { + $18 = HEAP32[$1>>2]|0; + $19 = ($18|0)!=(0|0); + if ($19) { + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$pDb>>2]|0; + $22 = HEAP32[$21>>2]|0; + $23 = (_sqlite3_stricmp($20,$22)|0); + $24 = (0)==($23|0); + if (!($24)) { + break; + } + } + $25 = HEAP32[$0>>2]|0; + $26 = HEAP32[$i>>2]|0; + _sqlite3CodeVerifySchema($25,$26); + } + } while(0); + $27 = HEAP32[$i>>2]|0; + $28 = (($27) + 1)|0; + HEAP32[$i>>2] = $28; + } + STACKTOP = sp;return; +} +function _sqlite3DropTriggerPtr($pParse,$pTrigger) { + $pParse = $pParse|0; + $pTrigger = $pTrigger|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $base = 0, $code = 0, $db = 0, $iDb = 0, $pTable = 0, $v = 0, $zDb = 0, $zTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $pTable = sp + 28|0; + $v = sp + 24|0; + $db = sp + 20|0; + $iDb = sp + 16|0; + $code = sp + 8|0; + $zDb = sp + 4|0; + $zTab = sp; + $base = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTrigger; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 20|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3SchemaToIndex($5,$8)|0); + HEAP32[$iDb>>2] = $9; + $10 = HEAP32[$1>>2]|0; + $11 = (_tableOfTrigger($10)|0); + HEAP32[$pTable>>2] = $11; + HEAP32[$code>>2] = 16; + $12 = HEAP32[$iDb>>2]|0; + $13 = HEAP32[$db>>2]|0; + $14 = (($13) + 16|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + ($12<<4)|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$zDb>>2] = $17; + $18 = HEAP32[$iDb>>2]|0; + $19 = ($18|0)==(1); + $20 = $19 ? 21432 : 21456; + HEAP32[$zTab>>2] = $20; + $21 = HEAP32[$iDb>>2]|0; + $22 = ($21|0)==(1); + if ($22) { + HEAP32[$code>>2] = 14; + } + $23 = HEAP32[$0>>2]|0; + $24 = HEAP32[$code>>2]|0; + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$pTable>>2]|0; + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$zDb>>2]|0; + $30 = (_sqlite3AuthCheck($23,$24,$26,$28,$29)|0); + $31 = ($30|0)!=(0); + if ($31) { + STACKTOP = sp;return; + } + $32 = HEAP32[$0>>2]|0; + $33 = HEAP32[$zTab>>2]|0; + $34 = HEAP32[$zDb>>2]|0; + $35 = (_sqlite3AuthCheck($32,9,$33,0,$34)|0); + $36 = ($35|0)!=(0); + if ($36) { + STACKTOP = sp;return; + } + $37 = HEAP32[$0>>2]|0; + $38 = (_sqlite3GetVdbe($37)|0); + HEAP32[$v>>2] = $38; + $39 = ($38|0)!=(0|0); + if (!($39)) { + STACKTOP = sp;return; + } + $40 = HEAP32[$0>>2]|0; + $41 = HEAP32[$iDb>>2]|0; + _sqlite3BeginWriteOperation($40,0,$41); + $42 = HEAP32[$0>>2]|0; + $43 = HEAP32[$iDb>>2]|0; + _sqlite3OpenMasterTable($42,$43); + $44 = HEAP32[$v>>2]|0; + $45 = (_sqlite3VdbeAddOpList($44,9,26296,0)|0); + HEAP32[$base>>2] = $45; + $46 = HEAP32[$v>>2]|0; + $47 = HEAP32[$base>>2]|0; + $48 = (($47) + 1)|0; + $49 = HEAP32[$1>>2]|0; + $50 = HEAP32[$49>>2]|0; + _sqlite3VdbeChangeP4($46,$48,$50,0); + $51 = HEAP32[$v>>2]|0; + $52 = HEAP32[$base>>2]|0; + $53 = (($52) + 4)|0; + _sqlite3VdbeChangeP4($51,$53,1808,-2); + $54 = HEAP32[$0>>2]|0; + $55 = HEAP32[$iDb>>2]|0; + _sqlite3ChangeCookie($54,$55); + $56 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($56,58,0,0)|0); + $57 = HEAP32[$v>>2]|0; + $58 = HEAP32[$iDb>>2]|0; + $59 = HEAP32[$1>>2]|0; + $60 = HEAP32[$59>>2]|0; + (_sqlite3VdbeAddOp4($57,123,$58,0,0,$60,0)|0); + $61 = HEAP32[$0>>2]|0; + $62 = (($61) + 72|0); + $63 = HEAP32[$62>>2]|0; + $64 = ($63|0)<(3); + if (!($64)) { + STACKTOP = sp;return; + } + $65 = HEAP32[$0>>2]|0; + $66 = (($65) + 72|0); + HEAP32[$66>>2] = 3; + STACKTOP = sp;return; +} +function _tableOfTrigger($pTrigger) { + $pTrigger = $pTrigger|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $n = sp; + HEAP32[$0>>2] = $pTrigger; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + $4 = (_sqlite3Strlen30($3)|0); + HEAP32[$n>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 24|0); + $7 = HEAP32[$6>>2]|0; + $8 = (($7) + 8|0); + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 4|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$n>>2]|0; + $13 = (_sqlite3HashFind($8,$11,$12)|0); + STACKTOP = sp;return ($13|0); +} +function _sqlite3OpenMasterTable($p,$iDb) { + $p = $p|0; + $iDb = $iDb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $v = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iDb; + $2 = HEAP32[$0>>2]|0; + $3 = (_sqlite3GetVdbe($2)|0); + HEAP32[$v>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = ($6|0)==(1); + $8 = $7 ? 21432 : 21456; + _sqlite3TableLock($4,$5,1,1,$8); + $9 = HEAP32[$v>>2]|0; + $10 = HEAP32[$1>>2]|0; + (_sqlite3VdbeAddOp4Int($9,53,0,1,$10,5)|0); + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 68|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)==(0); + if (!($14)) { + STACKTOP = sp;return; + } + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 68|0); + HEAP32[$16>>2] = 1; + STACKTOP = sp;return; +} +function _triggerStepAllocate($db,$op,$pName) { + $db = $db|0; + $op = $op|0; + $pName = $pName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTriggerStep = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 12|0; + $1 = sp + 16|0; + $2 = sp + 4|0; + $pTriggerStep = sp + 8|0; + $z = sp; + HEAP32[$0>>2] = $db; + HEAP8[$1>>0] = $op; + HEAP32[$2>>2] = $pName; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + $7 = (40 + ($6))|0; + $8 = (_sqlite3DbMallocZero($3,$7)|0); + HEAP32[$pTriggerStep>>2] = $8; + $9 = HEAP32[$pTriggerStep>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + $30 = HEAP32[$pTriggerStep>>2]|0; + STACKTOP = sp;return ($30|0); + } + $11 = HEAP32[$pTriggerStep>>2]|0; + $12 = (($11) + 40|0); + HEAP32[$z>>2] = $12; + $13 = HEAP32[$z>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$2>>2]|0; + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + _memcpy(($13|0),($15|0),($18|0))|0; + $19 = HEAP32[$z>>2]|0; + $20 = HEAP32[$pTriggerStep>>2]|0; + $21 = (($20) + 12|0); + HEAP32[$21>>2] = $19; + $22 = HEAP32[$2>>2]|0; + $23 = (($22) + 4|0); + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$pTriggerStep>>2]|0; + $26 = (($25) + 12|0); + $27 = (($26) + 4|0); + HEAP32[$27>>2] = $24; + $28 = HEAP8[$1>>0]|0; + $29 = HEAP32[$pTriggerStep>>2]|0; + HEAP8[$29>>0] = $28; + $30 = HEAP32[$pTriggerStep>>2]|0; + STACKTOP = sp;return ($30|0); +} +function _sqlite3SrcListLookup($pParse,$pSrc) { + $pParse = $pParse|0; + $pSrc = $pSrc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pItem = 0, $pTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $pItem = sp + 4|0; + $pTab = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pSrc; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 8|0); + HEAP32[$pItem>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$pItem>>2]|0; + $6 = (_sqlite3LocateTableItem($4,0,$5)|0); + HEAP32[$pTab>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$pItem>>2]|0; + $10 = (($9) + 16|0); + $11 = HEAP32[$10>>2]|0; + _sqlite3DeleteTable($8,$11); + $12 = HEAP32[$pTab>>2]|0; + $13 = HEAP32[$pItem>>2]|0; + $14 = (($13) + 16|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$pTab>>2]|0; + $16 = ($15|0)!=(0|0); + if ($16) { + $17 = HEAP32[$pTab>>2]|0; + $18 = (($17) + 40|0); + $19 = HEAP16[$18>>1]|0; + $20 = (($19) + 1)<<16>>16; + HEAP16[$18>>1] = $20; + } + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$pItem>>2]|0; + $23 = (_sqlite3IndexedByLookup($21,$22)|0); + $24 = ($23|0)!=(0); + if (!($24)) { + $25 = HEAP32[$pTab>>2]|0; + STACKTOP = sp;return ($25|0); + } + HEAP32[$pTab>>2] = 0; + $25 = HEAP32[$pTab>>2]|0; + STACKTOP = sp;return ($25|0); +} +function _sqlite3FixInit($pFix,$pParse,$iDb,$zType,$pName) { + $pFix = $pFix|0; + $pParse = $pParse|0; + $iDb = $iDb|0; + $zType = $zType|0; + $pName = $pName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $db = sp + 16|0; + HEAP32[$0>>2] = $pFix; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $iDb; + HEAP32[$3>>2] = $zType; + HEAP32[$4>>2] = $pName; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$0>>2]|0; + HEAP32[$8>>2] = $7; + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$db>>2]|0; + $11 = (($10) + 16|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + ($9<<4)|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 12|0); + HEAP32[$16>>2] = $14; + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$db>>2]|0; + $19 = (($18) + 16|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + ($17<<4)|0); + $22 = (($21) + 12|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 4|0); + HEAP32[$25>>2] = $23; + $26 = HEAP32[$3>>2]|0; + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 16|0); + HEAP32[$28>>2] = $26; + $29 = HEAP32[$4>>2]|0; + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 20|0); + HEAP32[$31>>2] = $29; + $32 = HEAP32[$2>>2]|0; + $33 = ($32|0)==(1); + $34 = $33&1; + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 8|0); + HEAP32[$36>>2] = $34; + STACKTOP = sp;return; +} +function _sqlite3FixSrcList($pFix,$pList) { + $pFix = $pFix|0; + $pList = $pList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pItem = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $zDb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 32|0; + $1 = sp + 12|0; + $2 = sp + 16|0; + $i = sp + 20|0; + $zDb = sp + 24|0; + $pItem = sp + 28|0; + HEAP32[$1>>2] = $pFix; + HEAP32[$2>>2] = $pList; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + HEAP32[$0>>2] = 0; + $67 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($67|0); + } + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 12|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$zDb>>2] = $7; + HEAP32[$i>>2] = 0; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 8|0); + HEAP32[$pItem>>2] = $9; + while(1) { + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = ($10|0)<($12|0); + if (!($13)) { + label = 15; + break; + } + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 8|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)==(0); + if ($17) { + $18 = HEAP32[$pItem>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)!=(0|0); + if ($21) { + $22 = HEAP32[$pItem>>2]|0; + $23 = (($22) + 4|0); + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$zDb>>2]|0; + $26 = (_sqlite3_stricmp($24,$25)|0); + $27 = ($26|0)!=(0); + if ($27) { + label = 8; + break; + } + } + $39 = HEAP32[$1>>2]|0; + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$pItem>>2]|0; + $43 = (($42) + 4|0); + $44 = HEAP32[$43>>2]|0; + _sqlite3DbFree($41,$44); + $45 = HEAP32[$pItem>>2]|0; + $46 = (($45) + 4|0); + HEAP32[$46>>2] = 0; + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 4|0); + $49 = HEAP32[$48>>2]|0; + $50 = HEAP32[$pItem>>2]|0; + HEAP32[$50>>2] = $49; + } + $51 = HEAP32[$1>>2]|0; + $52 = HEAP32[$pItem>>2]|0; + $53 = (($52) + 20|0); + $54 = HEAP32[$53>>2]|0; + $55 = (_sqlite3FixSelect($51,$54)|0); + $56 = ($55|0)!=(0); + if ($56) { + label = 11; + break; + } + $57 = HEAP32[$1>>2]|0; + $58 = HEAP32[$pItem>>2]|0; + $59 = (($58) + 44|0); + $60 = HEAP32[$59>>2]|0; + $61 = (_sqlite3FixExpr($57,$60)|0); + $62 = ($61|0)!=(0); + if ($62) { + label = 13; + break; + } + $63 = HEAP32[$i>>2]|0; + $64 = (($63) + 1)|0; + HEAP32[$i>>2] = $64; + $65 = HEAP32[$pItem>>2]|0; + $66 = (($65) + 72|0); + HEAP32[$pItem>>2] = $66; + } + if ((label|0) == 8) { + $28 = HEAP32[$1>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 16|0); + $32 = HEAP32[$31>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 20|0); + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$pItem>>2]|0; + $37 = (($36) + 4|0); + $38 = HEAP32[$37>>2]|0; + HEAP32[$vararg_buffer>>2] = $32; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $35; + $vararg_ptr2 = (($vararg_buffer) + 8|0); + HEAP32[$vararg_ptr2>>2] = $38; + _sqlite3ErrorMsg($29,26608,$vararg_buffer); + HEAP32[$0>>2] = 1; + $67 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($67|0); + } + else if ((label|0) == 11) { + HEAP32[$0>>2] = 1; + $67 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($67|0); + } + else if ((label|0) == 13) { + HEAP32[$0>>2] = 1; + $67 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($67|0); + } + else if ((label|0) == 15) { + HEAP32[$0>>2] = 0; + $67 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($67|0); + } + return 0|0; +} +function _sqlite3FixSelect($pFix,$pSelect) { + $pFix = $pFix|0; + $pSelect = $pSelect|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$1>>2] = $pFix; + HEAP32[$2>>2] = $pSelect; + while(1) { + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + label = 20; + break; + } + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = (_sqlite3FixExprList($5,$7)|0); + $9 = ($8|0)!=(0); + if ($9) { + label = 4; + break; + } + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 32|0); + $13 = HEAP32[$12>>2]|0; + $14 = (_sqlite3FixSrcList($10,$13)|0); + $15 = ($14|0)!=(0); + if ($15) { + label = 6; + break; + } + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = (($17) + 36|0); + $19 = HEAP32[$18>>2]|0; + $20 = (_sqlite3FixExpr($16,$19)|0); + $21 = ($20|0)!=(0); + if ($21) { + label = 8; + break; + } + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$2>>2]|0; + $24 = (($23) + 40|0); + $25 = HEAP32[$24>>2]|0; + $26 = (_sqlite3FixExprList($22,$25)|0); + $27 = ($26|0)!=(0); + if ($27) { + label = 10; + break; + } + $28 = HEAP32[$1>>2]|0; + $29 = HEAP32[$2>>2]|0; + $30 = (($29) + 44|0); + $31 = HEAP32[$30>>2]|0; + $32 = (_sqlite3FixExpr($28,$31)|0); + $33 = ($32|0)!=(0); + if ($33) { + label = 12; + break; + } + $34 = HEAP32[$1>>2]|0; + $35 = HEAP32[$2>>2]|0; + $36 = (($35) + 48|0); + $37 = HEAP32[$36>>2]|0; + $38 = (_sqlite3FixExprList($34,$37)|0); + $39 = ($38|0)!=(0); + if ($39) { + label = 14; + break; + } + $40 = HEAP32[$1>>2]|0; + $41 = HEAP32[$2>>2]|0; + $42 = (($41) + 60|0); + $43 = HEAP32[$42>>2]|0; + $44 = (_sqlite3FixExpr($40,$43)|0); + $45 = ($44|0)!=(0); + if ($45) { + label = 16; + break; + } + $46 = HEAP32[$1>>2]|0; + $47 = HEAP32[$2>>2]|0; + $48 = (($47) + 64|0); + $49 = HEAP32[$48>>2]|0; + $50 = (_sqlite3FixExpr($46,$49)|0); + $51 = ($50|0)!=(0); + if ($51) { + label = 18; + break; + } + $52 = HEAP32[$2>>2]|0; + $53 = (($52) + 52|0); + $54 = HEAP32[$53>>2]|0; + HEAP32[$2>>2] = $54; + } + if ((label|0) == 4) { + HEAP32[$0>>2] = 1; + } + else if ((label|0) == 6) { + HEAP32[$0>>2] = 1; + } + else if ((label|0) == 8) { + HEAP32[$0>>2] = 1; + } + else if ((label|0) == 10) { + HEAP32[$0>>2] = 1; + } + else if ((label|0) == 12) { + HEAP32[$0>>2] = 1; + } + else if ((label|0) == 14) { + HEAP32[$0>>2] = 1; + } + else if ((label|0) == 16) { + HEAP32[$0>>2] = 1; + } + else if ((label|0) == 18) { + HEAP32[$0>>2] = 1; + } + else if ((label|0) == 20) { + HEAP32[$0>>2] = 0; + } + $55 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($55|0); +} +function _sqlite3FixExpr($pFix,$pExpr) { + $pFix = $pFix|0; + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 12|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + HEAP32[$1>>2] = $pFix; + HEAP32[$2>>2] = $pExpr; + while(1) { + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + label = 16; + break; + } + $5 = HEAP32[$2>>2]|0; + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = ($7|0)==(135); + if ($8) { + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + 132|0); + $13 = (($12) + 5|0); + $14 = HEAP8[$13>>0]|0; + $15 = ($14<<24>>24)!=(0); + if (!($15)) { + label = 6; + break; + } + $16 = HEAP32[$2>>2]|0; + HEAP8[$16>>0] = 101; + } + $22 = HEAP32[$2>>2]|0; + $23 = (($22) + 4|0); + $24 = HEAP32[$23>>2]|0; + $25 = $24 & 16384; + $26 = ($25|0)!=(0); + if ($26) { + label = 16; + break; + } + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 4|0); + $29 = HEAP32[$28>>2]|0; + $30 = $29 & 2048; + $31 = ($30|0)!=(0); + $32 = HEAP32[$1>>2]|0; + $33 = HEAP32[$2>>2]|0; + $34 = (($33) + 20|0); + if ($31) { + $35 = HEAP32[$34>>2]|0; + $36 = (_sqlite3FixSelect($32,$35)|0); + $37 = ($36|0)!=(0); + if ($37) { + label = 10; + break; + } + } else { + $38 = HEAP32[$34>>2]|0; + $39 = (_sqlite3FixExprList($32,$38)|0); + $40 = ($39|0)!=(0); + if ($40) { + label = 12; + break; + } + } + $41 = HEAP32[$1>>2]|0; + $42 = HEAP32[$2>>2]|0; + $43 = (($42) + 16|0); + $44 = HEAP32[$43>>2]|0; + $45 = (_sqlite3FixExpr($41,$44)|0); + $46 = ($45|0)!=(0); + if ($46) { + label = 14; + break; + } + $47 = HEAP32[$2>>2]|0; + $48 = (($47) + 12|0); + $49 = HEAP32[$48>>2]|0; + HEAP32[$2>>2] = $49; + } + if ((label|0) == 6) { + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 16|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$vararg_buffer>>2] = $21; + _sqlite3ErrorMsg($18,26656,$vararg_buffer); + HEAP32[$0>>2] = 1; + $50 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($50|0); + } + else if ((label|0) == 10) { + HEAP32[$0>>2] = 1; + $50 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($50|0); + } + else if ((label|0) == 12) { + HEAP32[$0>>2] = 1; + $50 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($50|0); + } + else if ((label|0) == 14) { + HEAP32[$0>>2] = 1; + $50 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($50|0); + } + else if ((label|0) == 16) { + HEAP32[$0>>2] = 0; + $50 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($50|0); + } + return 0|0; +} +function _sqlite3FixExprList($pFix,$pList) { + $pFix = $pFix|0; + $pList = $pList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $i = 0, $pItem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + $pItem = sp + 12|0; + HEAP32[$1>>2] = $pFix; + HEAP32[$2>>2] = $pList; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + HEAP32[$0>>2] = 0; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); + } + HEAP32[$i>>2] = 0; + $5 = HEAP32[$2>>2]|0; + $6 = (($5) + 4|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pItem>>2] = $7; + while(1) { + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = ($8|0)<($10|0); + if (!($11)) { + label = 8; + break; + } + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$pItem>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = (_sqlite3FixExpr($12,$14)|0); + $16 = ($15|0)!=(0); + if ($16) { + label = 6; + break; + } + $17 = HEAP32[$i>>2]|0; + $18 = (($17) + 1)|0; + HEAP32[$i>>2] = $18; + $19 = HEAP32[$pItem>>2]|0; + $20 = (($19) + 20|0); + HEAP32[$pItem>>2] = $20; + } + if ((label|0) == 6) { + HEAP32[$0>>2] = 1; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); + } + else if ((label|0) == 8) { + HEAP32[$0>>2] = 0; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); + } + return 0|0; +} +function _sqlite3FixTriggerStep($pFix,$pStep) { + $pFix = $pFix|0; + $pStep = $pStep|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$1>>2] = $pFix; + HEAP32[$2>>2] = $pStep; + while(1) { + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + label = 10; + break; + } + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + 8|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3FixSelect($5,$8)|0); + $10 = ($9|0)!=(0); + if ($10) { + label = 4; + break; + } + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = (($12) + 20|0); + $14 = HEAP32[$13>>2]|0; + $15 = (_sqlite3FixExpr($11,$14)|0); + $16 = ($15|0)!=(0); + if ($16) { + label = 6; + break; + } + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = (($18) + 24|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3FixExprList($17,$20)|0); + $22 = ($21|0)!=(0); + if ($22) { + label = 8; + break; + } + $23 = HEAP32[$2>>2]|0; + $24 = (($23) + 32|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$2>>2] = $25; + } + if ((label|0) == 4) { + HEAP32[$0>>2] = 1; + } + else if ((label|0) == 6) { + HEAP32[$0>>2] = 1; + } + else if ((label|0) == 8) { + HEAP32[$0>>2] = 1; + } + else if ((label|0) == 10) { + HEAP32[$0>>2] = 0; + } + $26 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($26|0); +} +function _sqlite3VdbeRunOnlyOnce($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 88|0); + $3 = HEAP16[$2>>1]|0; + $4 = $3 & -65; + $5 = $4 | 64; + HEAP16[$2>>1] = $5; + STACKTOP = sp;return; +} +function _sqlite3VdbeSetNumCols($p,$nResColumn) { + $p = $p|0; + $nResColumn = $nResColumn|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $db = 0, $n = 0, $pColName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $pColName = sp + 4|0; + $n = sp + 8|0; + $db = sp + 12|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $nResColumn; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 16|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 84|0); + $9 = HEAP16[$8>>1]|0; + $10 = $9&65535; + $11 = $10<<1; + _releaseMemArray($6,$11); + $12 = HEAP32[$db>>2]|0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 16|0); + $15 = HEAP32[$14>>2]|0; + _sqlite3DbFree($12,$15); + $16 = HEAP32[$1>>2]|0; + $17 = $16<<1; + HEAP32[$n>>2] = $17; + $18 = HEAP32[$1>>2]|0; + $19 = $18&65535; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 84|0); + HEAP16[$21>>1] = $19; + $22 = HEAP32[$db>>2]|0; + $23 = HEAP32[$n>>2]|0; + $24 = ($23*40)|0; + $25 = (_sqlite3DbMallocZero($22,$24)|0); + HEAP32[$pColName>>2] = $25; + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 16|0); + HEAP32[$27>>2] = $25; + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 16|0); + $30 = HEAP32[$29>>2]|0; + $31 = ($30|0)==(0|0); + if ($31) { + STACKTOP = sp;return; + } + while(1) { + $32 = HEAP32[$n>>2]|0; + $33 = (($32) + -1)|0; + HEAP32[$n>>2] = $33; + $34 = ($32|0)>(0); + if (!($34)) { + break; + } + $35 = HEAP32[$pColName>>2]|0; + $36 = (($35) + 28|0); + HEAP16[$36>>1] = 1; + $37 = HEAP32[$0>>2]|0; + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$pColName>>2]|0; + HEAP32[$39>>2] = $38; + $40 = HEAP32[$pColName>>2]|0; + $41 = (($40) + 40|0); + HEAP32[$pColName>>2] = $41; + } + STACKTOP = sp;return; +} +function _sqlite3VdbeSetColName($p,$idx,$var,$zName,$xDel) { + $p = $p|0; + $idx = $idx|0; + $var = $var|0; + $zName = $zName|0; + $xDel = $xDel|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pColName = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $5 = sp + 16|0; + $rc = sp + 20|0; + $pColName = sp + 24|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $idx; + HEAP32[$3>>2] = $var; + HEAP32[$4>>2] = $zName; + HEAP32[$5>>2] = $xDel; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = (($7) + 64|0); + $9 = HEAP8[$8>>0]|0; + $10 = ($9<<24>>24)!=(0); + if ($10) { + HEAP32[$0>>2] = 7; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } else { + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$3>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 84|0); + $15 = HEAP16[$14>>1]|0; + $16 = $15&65535; + $17 = Math_imul($12, $16)|0; + $18 = (($11) + ($17))|0; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 16|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + (($18*40)|0)|0); + HEAP32[$pColName>>2] = $22; + $23 = HEAP32[$pColName>>2]|0; + $24 = HEAP32[$4>>2]|0; + $25 = HEAP32[$5>>2]|0; + $26 = (_sqlite3VdbeMemSetStr($23,$24,-1,1,$25)|0); + HEAP32[$rc>>2] = $26; + $27 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $27; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } + return 0|0; +} +function _returnSingleInt($pParse,$zLabel,$0,$1) { + $pParse = $pParse|0; + $zLabel = $zLabel|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mem = 0, $pI64 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 24|0; + $3 = sp + 8|0; + $4 = sp; + $v = sp + 12|0; + $mem = sp + 16|0; + $pI64 = sp + 20|0; + HEAP32[$2>>2] = $pParse; + HEAP32[$3>>2] = $zLabel; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + $9 = HEAP32[$2>>2]|0; + $10 = (_sqlite3GetVdbe($9)|0); + HEAP32[$v>>2] = $10; + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 72|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 1)|0; + HEAP32[$12>>2] = $14; + HEAP32[$mem>>2] = $14; + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = (_sqlite3DbMallocRaw($16,8)|0); + HEAP32[$pI64>>2] = $17; + $18 = HEAP32[$pI64>>2]|0; + $19 = ($18|0)!=(0|0); + if ($19) { + $20 = HEAP32[$pI64>>2]|0; + ;HEAP32[$20+0>>2]=HEAP32[$4+0>>2]|0;HEAP32[$20+4>>2]=HEAP32[$4+4>>2]|0; + } + $21 = HEAP32[$v>>2]|0; + $22 = HEAP32[$mem>>2]|0; + $23 = HEAP32[$pI64>>2]|0; + (_sqlite3VdbeAddOp4($21,26,0,$22,0,$23,-13)|0); + $24 = HEAP32[$v>>2]|0; + _sqlite3VdbeSetNumCols($24,1); + $25 = HEAP32[$v>>2]|0; + $26 = HEAP32[$3>>2]|0; + (_sqlite3VdbeSetColName($25,0,0,$26,0)|0); + $27 = HEAP32[$v>>2]|0; + $28 = HEAP32[$mem>>2]|0; + (_sqlite3VdbeAddOp2($27,35,$28,1)|0); + STACKTOP = sp;return; +} +function _getLockingMode($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $z; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + do { + if ($3) { + $4 = HEAP32[$1>>2]|0; + $5 = (_sqlite3_stricmp($4,27536)|0); + $6 = (0)==($5|0); + if ($6) { + HEAP32[$0>>2] = 1; + break; + } + $7 = HEAP32[$1>>2]|0; + $8 = (_sqlite3_stricmp($7,27528)|0); + $9 = (0)==($8|0); + if ($9) { + HEAP32[$0>>2] = 0; + } else { + label = 6; + } + } else { + label = 6; + } + } while(0); + if ((label|0) == 6) { + HEAP32[$0>>2] = -1; + } + $10 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($10|0); +} +function _sqlite3JournalModename($eMode) { + $eMode = $eMode|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $eMode; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(6); + if ($3) { + HEAP32[$0>>2] = 0; + } else { + $4 = HEAP32[$1>>2]|0; + $5 = (28688 + ($4<<2)|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$0>>2] = $6; + } + $7 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($7|0); +} +function _sqlite3PagerJournalSizeLimit($pPager,$0,$1) { + $pPager = $pPager|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp + 8|0; + $3 = sp; + HEAP32[$2>>2] = $pPager; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = $3; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = (($8) + 4)|0; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)>(-1); + $15 = ($13|0)==(-1); + $16 = ($10>>>0)>=(4294967295); + $17 = $15 & $16; + $18 = $14 | $17; + if (!($18)) { + $40 = HEAP32[$2>>2]|0; + $41 = (($40) + 160|0); + $42 = $41; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + tempRet0 = $47; + STACKTOP = sp;return ($44|0); + } + $19 = $3; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (($19) + 4)|0; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 160|0); + $27 = $26; + $28 = $27; + HEAP32[$28>>2] = $21; + $29 = (($27) + 4)|0; + $30 = $29; + HEAP32[$30>>2] = $24; + $31 = HEAP32[$2>>2]|0; + $32 = (($31) + 208|0); + $33 = HEAP32[$32>>2]|0; + $34 = $3; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + _sqlite3WalLimit($33,$36,$39); + $40 = HEAP32[$2>>2]|0; + $41 = (($40) + 160|0); + $42 = $41; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + tempRet0 = $47; + STACKTOP = sp;return ($44|0); +} +function _sqlite3BtreeGetAutoVacuum($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $rc = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($1); + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 17|0); + $6 = HEAP8[$5>>0]|0; + $7 = ($6<<24>>24)!=(0); + if (!($7)) { + $16 = 0; + HEAP32[$rc>>2] = $16; + $17 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($17|0); + } + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + 18|0); + $12 = HEAP8[$11>>0]|0; + $13 = ($12<<24>>24)!=(0); + $14 = $13 ^ 1; + $15 = $14 ? 1 : 2; + $16 = $15; + HEAP32[$rc>>2] = $16; + $17 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($17|0); +} +function _getAutoVacuum($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $i = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $i = sp + 4|0; + HEAP32[$1>>2] = $z; + $2 = HEAP32[$1>>2]|0; + $3 = (_sqlite3_stricmp($2,28664)|0); + $4 = (0)==($3|0); + do { + if ($4) { + HEAP32[$0>>2] = 0; + } else { + $5 = HEAP32[$1>>2]|0; + $6 = (_sqlite3_stricmp($5,28384)|0); + $7 = (0)==($6|0); + if ($7) { + HEAP32[$0>>2] = 1; + break; + } + $8 = HEAP32[$1>>2]|0; + $9 = (_sqlite3_stricmp($8,28672)|0); + $10 = (0)==($9|0); + if ($10) { + HEAP32[$0>>2] = 2; + break; + } else { + $11 = HEAP32[$1>>2]|0; + $12 = (_sqlite3Atoi($11)|0); + HEAP32[$i>>2] = $12; + $13 = HEAP32[$i>>2]|0; + $14 = ($13|0)>=(0); + $15 = HEAP32[$i>>2]|0; + $16 = ($15|0)<=(2); + $or$cond = $14 & $16; + $17 = HEAP32[$i>>2]|0; + $18 = $or$cond ? $17 : 0; + $19 = $18&255; + $20 = $19&255; + HEAP32[$0>>2] = $20; + break; + } + } + } while(0); + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); +} +function _sqlite3BtreeSetAutoVacuum($p,$autoVacuum) { + $p = $p|0; + $autoVacuum = $autoVacuum|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $av = 0, $pBt = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 12|0; + $1 = sp; + $pBt = sp + 4|0; + $rc = sp + 8|0; + $av = sp + 16|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $autoVacuum; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pBt>>2] = $4; + HEAP32[$rc>>2] = 0; + $5 = HEAP32[$1>>2]|0; + $6 = $5&255; + HEAP8[$av>>0] = $6; + $7 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($7); + $8 = HEAP32[$pBt>>2]|0; + $9 = (($8) + 22|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10&65535; + $12 = $11 & 2; + $13 = ($12|0)!=(0); + if ($13) { + $14 = HEAP8[$av>>0]|0; + $15 = $14&255; + $16 = ($15|0)!=(0); + $17 = $16 ? 1 : 0; + $18 = HEAP32[$pBt>>2]|0; + $19 = (($18) + 17|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = ($17|0)!=($21|0); + if ($22) { + HEAP32[$rc>>2] = 8; + $37 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($37|0); + } + } + $23 = HEAP8[$av>>0]|0; + $24 = $23&255; + $25 = ($24|0)!=(0); + $26 = $25 ? 1 : 0; + $27 = $26&255; + $28 = HEAP32[$pBt>>2]|0; + $29 = (($28) + 17|0); + HEAP8[$29>>0] = $27; + $30 = HEAP8[$av>>0]|0; + $31 = $30&255; + $32 = ($31|0)==(2); + $33 = $32 ? 1 : 0; + $34 = $33&255; + $35 = HEAP32[$pBt>>2]|0; + $36 = (($35) + 18|0); + HEAP8[$36>>0] = $34; + $37 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($37|0); +} +function _changeTempStorage($pParse,$zStorageType) { + $pParse = $pParse|0; + $zStorageType = $zStorageType|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $db = 0, $ts = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $ts = sp + 8|0; + $db = sp + 12|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $zStorageType; + $3 = HEAP32[$2>>2]|0; + $4 = (_getTempStore($3)|0); + HEAP32[$ts>>2] = $4; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$db>>2]|0; + $8 = (($7) + 63|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = HEAP32[$ts>>2]|0; + $12 = ($10|0)==($11|0); + if ($12) { + HEAP32[$0>>2] = 0; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } + $13 = HEAP32[$1>>2]|0; + $14 = (_invalidateTempStorage($13)|0); + $15 = ($14|0)!=(0); + if ($15) { + HEAP32[$0>>2] = 1; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } else { + $16 = HEAP32[$ts>>2]|0; + $17 = $16&255; + $18 = HEAP32[$db>>2]|0; + $19 = (($18) + 63|0); + HEAP8[$19>>0] = $17; + HEAP32[$0>>2] = 0; + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); + } + return 0|0; +} +function _invalidateTempStorage($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $vararg_buffer = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 12|0; + $1 = sp + 4|0; + $db = sp + 8|0; + HEAP32[$1>>2] = $pParse; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$db>>2]|0; + $5 = (($4) + 16|0); + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + 16|0); + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0|0); + do { + if ($10) { + $11 = HEAP32[$db>>2]|0; + $12 = (($11) + 62|0); + $13 = HEAP8[$12>>0]|0; + $14 = ($13<<24>>24)!=(0); + if ($14) { + $15 = HEAP32[$db>>2]|0; + $16 = (($15) + 16|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + 16|0); + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3BtreeIsInReadTrans($20)|0); + $22 = ($21|0)!=(0); + if (!($22)) { + $24 = HEAP32[$db>>2]|0; + $25 = (($24) + 16|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($26) + 16|0); + $28 = (($27) + 4|0); + $29 = HEAP32[$28>>2]|0; + (_sqlite3BtreeClose($29)|0); + $30 = HEAP32[$db>>2]|0; + $31 = (($30) + 16|0); + $32 = HEAP32[$31>>2]|0; + $33 = (($32) + 16|0); + $34 = (($33) + 4|0); + HEAP32[$34>>2] = 0; + $35 = HEAP32[$db>>2]|0; + _sqlite3ResetAllSchemasOfConnection($35); + break; + } + } + $23 = HEAP32[$1>>2]|0; + _sqlite3ErrorMsg($23,28600,$vararg_buffer); + HEAP32[$0>>2] = 1; + $36 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($36|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $36 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($36|0); +} +function _setAllPagerFlags($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, $pDb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $pDb = sp; + $n = sp + 4|0; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 62|0); + $3 = HEAP8[$2>>0]|0; + $4 = ($3<<24>>24)!=(0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 16|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pDb>>2] = $7; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 20|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$n>>2] = $10; + while(1) { + $11 = HEAP32[$n>>2]|0; + $12 = (($11) + -1)|0; + HEAP32[$n>>2] = $12; + $13 = ($11|0)>(0); + if (!($13)) { + break; + } + $14 = HEAP32[$pDb>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = HEAP32[$pDb>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$pDb>>2]|0; + $22 = (($21) + 8|0); + $23 = HEAP8[$22>>0]|0; + $24 = $23&255; + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 24|0); + $27 = HEAP32[$26>>2]|0; + $28 = $27 & 28; + $29 = $24 | $28; + (_sqlite3BtreeSetPagerFlags($20,$29)|0); + } + $30 = HEAP32[$pDb>>2]|0; + $31 = (($30) + 16|0); + HEAP32[$pDb>>2] = $31; + } + STACKTOP = sp;return; +} +function _sqlite3LogEstToInt($x) { + $x = $x|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 8|0; + $1 = sp + 16|0; + $n = sp; + HEAP16[$1>>1] = $x; + $2 = HEAP16[$1>>1]|0; + $3 = $2 << 16 >> 16; + $4 = ($3|0)<(10); + if ($4) { + $5 = $0; + $6 = $5; + HEAP32[$6>>2] = 1; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = 0; + $104 = $0; + $105 = $104; + $106 = HEAP32[$105>>2]|0; + $107 = (($104) + 4)|0; + $108 = $107; + $109 = HEAP32[$108>>2]|0; + tempRet0 = $109; + STACKTOP = sp;return ($106|0); + } + $9 = HEAP16[$1>>1]|0; + $10 = $9 << 16 >> 16; + $11 = (($10|0) % 10)&-1; + $12 = ($11|0)<(0); + $13 = $12 << 31 >> 31; + $14 = $n; + $15 = $14; + HEAP32[$15>>2] = $11; + $16 = (($14) + 4)|0; + $17 = $16; + HEAP32[$17>>2] = $13; + $18 = HEAP16[$1>>1]|0; + $19 = $18 << 16 >> 16; + $20 = (($19|0) / 10)&-1; + $21 = $20&65535; + HEAP16[$1>>1] = $21; + $22 = $n; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (($22) + 4)|0; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = ($27>>>0)>(0); + $29 = ($27|0)==(0); + $30 = ($24>>>0)>=(5); + $31 = $29 & $30; + $32 = $28 | $31; + $33 = $n; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = (($33) + 4)|0; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + if ($32) { + $39 = (_i64Subtract(($35|0),($38|0),2,0)|0); + $40 = tempRet0; + $41 = $n; + $42 = $41; + HEAP32[$42>>2] = $39; + $43 = (($41) + 4)|0; + $44 = $43; + HEAP32[$44>>2] = $40; + } else { + $45 = ($38>>>0)>(0); + $46 = ($38|0)==(0); + $47 = ($35>>>0)>=(1); + $48 = $46 & $47; + $49 = $45 | $48; + if ($49) { + $50 = $n; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (($50) + 4)|0; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + $56 = (_i64Subtract(($52|0),($55|0),1,0)|0); + $57 = tempRet0; + $58 = $n; + $59 = $58; + HEAP32[$59>>2] = $56; + $60 = (($58) + 4)|0; + $61 = $60; + HEAP32[$61>>2] = $57; + } + } + $62 = HEAP16[$1>>1]|0; + $63 = $62 << 16 >> 16; + $64 = ($63|0)>=(3); + if (!($64)) { + $87 = $n; + $88 = $87; + $89 = HEAP32[$88>>2]|0; + $90 = (($87) + 4)|0; + $91 = $90; + $92 = HEAP32[$91>>2]|0; + $93 = (_i64Add(($89|0),($92|0),8,0)|0); + $94 = tempRet0; + $95 = HEAP16[$1>>1]|0; + $96 = $95 << 16 >> 16; + $97 = (3 - ($96))|0; + $98 = (_bitshift64Lshr(($93|0),($94|0),($97|0))|0); + $99 = tempRet0; + $100 = $0; + $101 = $100; + HEAP32[$101>>2] = $98; + $102 = (($100) + 4)|0; + $103 = $102; + HEAP32[$103>>2] = $99; + $104 = $0; + $105 = $104; + $106 = HEAP32[$105>>2]|0; + $107 = (($104) + 4)|0; + $108 = $107; + $109 = HEAP32[$108>>2]|0; + tempRet0 = $109; + STACKTOP = sp;return ($106|0); + } + $65 = HEAP16[$1>>1]|0; + $66 = $65 << 16 >> 16; + $67 = ($66|0)>(60); + if ($67) { + $83 = -1;$86 = 2147483647; + } else { + $68 = $n; + $69 = $68; + $70 = HEAP32[$69>>2]|0; + $71 = (($68) + 4)|0; + $72 = $71; + $73 = HEAP32[$72>>2]|0; + $74 = (_i64Add(($70|0),($73|0),8,0)|0); + $75 = tempRet0; + $76 = HEAP16[$1>>1]|0; + $77 = $76 << 16 >> 16; + $78 = (($77) - 3)|0; + $79 = (_bitshift64Shl(($74|0),($75|0),($78|0))|0); + $80 = tempRet0; + $83 = $79;$86 = $80; + } + $81 = $0; + $82 = $81; + HEAP32[$82>>2] = $83; + $84 = (($81) + 4)|0; + $85 = $84; + HEAP32[$85>>2] = $86; + $104 = $0; + $105 = $104; + $106 = HEAP32[$105>>2]|0; + $107 = (($104) + 4)|0; + $108 = $107; + $109 = HEAP32[$108>>2]|0; + tempRet0 = $109; + STACKTOP = sp;return ($106|0); +} +function _actionName($action) { + $action = $action|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $zName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $zName = sp; + HEAP8[$0>>0] = $action; + $1 = HEAP8[$0>>0]|0; + $2 = $1&255; + if ((($2|0) == 6)) { + HEAP32[$zName>>2] = 28568; + } else if ((($2|0) == 7)) { + HEAP32[$zName>>2] = 28528; + } else if ((($2|0) == 8)) { + HEAP32[$zName>>2] = 28544; + } else if ((($2|0) == 9)) { + HEAP32[$zName>>2] = 28560; + } else { + HEAP32[$zName>>2] = 28584; + } + $3 = HEAP32[$zName>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _sqlite3FkLocateIndex($pParse,$pParent,$pFKey,$ppIdx,$paiCol) { + $pParse = $pParse|0; + $pParent = $pParent|0; + $pFKey = $pFKey|0; + $ppIdx = $ppIdx|0; + $paiCol = $paiCol|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; + var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; + var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; + var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; + var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aiCol = 0, $i = 0, $i1 = 0, $iCol = 0, $j = 0, $nCol = 0; + var $pIdx = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $zDfltColl = 0, $zIdxCol = 0, $zKey = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer = sp; + $0 = sp + 60|0; + $1 = sp + 56|0; + $2 = sp + 52|0; + $3 = sp + 48|0; + $4 = sp + 44|0; + $5 = sp + 40|0; + $pIdx = sp + 36|0; + $aiCol = sp + 64|0; + $nCol = sp + 24|0; + $zKey = sp + 20|0; + $i = sp + 16|0; + $i1 = sp + 12|0; + $j = sp + 8|0; + $iCol = sp + 68|0; + $zDfltColl = sp + 28|0; + $zIdxCol = sp + 32|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pParent; + HEAP32[$3>>2] = $pFKey; + HEAP32[$4>>2] = $ppIdx; + HEAP32[$5>>2] = $paiCol; + HEAP32[$pIdx>>2] = 0; + HEAP32[$aiCol>>2] = 0; + $6 = HEAP32[$3>>2]|0; + $7 = (($6) + 20|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$nCol>>2] = $8; + $9 = HEAP32[$3>>2]|0; + $10 = (($9) + 36|0); + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$zKey>>2] = $12; + $13 = HEAP32[$nCol>>2]|0; + $14 = ($13|0)==(1); + do { + if ($14) { + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 36|0); + $17 = HEAP16[$16>>1]|0; + $18 = $17 << 16 >> 16; + $19 = ($18|0)>=(0); + if ($19) { + $20 = HEAP32[$zKey>>2]|0; + $21 = ($20|0)!=(0|0); + if (!($21)) { + HEAP32[$0>>2] = 0; + $172 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($172|0); + } + $22 = HEAP32[$2>>2]|0; + $23 = (($22) + 36|0); + $24 = HEAP16[$23>>1]|0; + $25 = $24 << 16 >> 16; + $26 = HEAP32[$2>>2]|0; + $27 = (($26) + 4|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + (($25*24)|0)|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$zKey>>2]|0; + $32 = (_sqlite3_stricmp($30,$31)|0); + $33 = ($32|0)!=(0); + if (!($33)) { + HEAP32[$0>>2] = 0; + $172 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($172|0); + } + } + } else { + $34 = HEAP32[$5>>2]|0; + $35 = ($34|0)!=(0|0); + if ($35) { + $36 = HEAP32[$1>>2]|0; + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$nCol>>2]|0; + $39 = $38<<2; + $40 = (_sqlite3DbMallocRaw($37,$39)|0); + HEAP32[$aiCol>>2] = $40; + $41 = HEAP32[$aiCol>>2]|0; + $42 = ($41|0)!=(0|0); + if ($42) { + $43 = HEAP32[$aiCol>>2]|0; + $44 = HEAP32[$5>>2]|0; + HEAP32[$44>>2] = $43; + break; + } + HEAP32[$0>>2] = 1; + $172 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($172|0); + } + } + } while(0); + $45 = HEAP32[$2>>2]|0; + $46 = (($45) + 8|0); + $47 = HEAP32[$46>>2]|0; + HEAP32[$pIdx>>2] = $47; + L17: while(1) { + $48 = HEAP32[$pIdx>>2]|0; + $49 = ($48|0)!=(0|0); + if (!($49)) { + break; + } + $50 = HEAP32[$pIdx>>2]|0; + $51 = (($50) + 50|0); + $52 = HEAP16[$51>>1]|0; + $53 = $52&65535; + $54 = HEAP32[$nCol>>2]|0; + $55 = ($53|0)==($54|0); + do { + if ($55) { + $56 = HEAP32[$pIdx>>2]|0; + $57 = (($56) + 54|0); + $58 = HEAP8[$57>>0]|0; + $59 = $58&255; + $60 = ($59|0)!=(0); + if ($60) { + $61 = HEAP32[$zKey>>2]|0; + $62 = ($61|0)==(0|0); + if ($62) { + $63 = HEAP32[$pIdx>>2]|0; + $64 = (($63) + 55|0); + $65 = HEAP8[$64>>0]|0; + $66 = $65 & 3; + $67 = $66&255; + $68 = ($67|0)==(2); + if ($68) { + label = 17; + break L17; + } else { + break; + } + } + HEAP32[$i1>>2] = 0; + while(1) { + $84 = HEAP32[$i1>>2]|0; + $85 = HEAP32[$nCol>>2]|0; + $86 = ($84|0)<($85|0); + if (!($86)) { + break; + } + $87 = HEAP32[$i1>>2]|0; + $88 = HEAP32[$pIdx>>2]|0; + $89 = (($88) + 4|0); + $90 = HEAP32[$89>>2]|0; + $91 = (($90) + ($87<<1)|0); + $92 = HEAP16[$91>>1]|0; + HEAP16[$iCol>>1] = $92; + $93 = HEAP16[$iCol>>1]|0; + $94 = $93 << 16 >> 16; + $95 = HEAP32[$2>>2]|0; + $96 = (($95) + 4|0); + $97 = HEAP32[$96>>2]|0; + $98 = (($97) + (($94*24)|0)|0); + $99 = (($98) + 16|0); + $100 = HEAP32[$99>>2]|0; + HEAP32[$zDfltColl>>2] = $100; + $101 = HEAP32[$zDfltColl>>2]|0; + $102 = ($101|0)!=(0|0); + $$ = $102 ? $100 : 3640; + HEAP32[$zDfltColl>>2] = $$; + $103 = HEAP32[$i1>>2]|0; + $104 = HEAP32[$pIdx>>2]|0; + $105 = (($104) + 32|0); + $106 = HEAP32[$105>>2]|0; + $107 = (($106) + ($103<<2)|0); + $108 = HEAP32[$107>>2]|0; + $109 = HEAP32[$zDfltColl>>2]|0; + $110 = (_sqlite3_stricmp($108,$109)|0); + $111 = ($110|0)!=(0); + if ($111) { + break; + } + $112 = HEAP16[$iCol>>1]|0; + $113 = $112 << 16 >> 16; + $114 = HEAP32[$2>>2]|0; + $115 = (($114) + 4|0); + $116 = HEAP32[$115>>2]|0; + $117 = (($116) + (($113*24)|0)|0); + $118 = HEAP32[$117>>2]|0; + HEAP32[$zIdxCol>>2] = $118; + HEAP32[$j>>2] = 0; + while(1) { + $119 = HEAP32[$j>>2]|0; + $120 = HEAP32[$nCol>>2]|0; + $121 = ($119|0)<($120|0); + if (!($121)) { + break; + } + $122 = HEAP32[$j>>2]|0; + $123 = HEAP32[$3>>2]|0; + $124 = (($123) + 36|0); + $125 = (($124) + ($122<<3)|0); + $126 = (($125) + 4|0); + $127 = HEAP32[$126>>2]|0; + $128 = HEAP32[$zIdxCol>>2]|0; + $129 = (_sqlite3_stricmp($127,$128)|0); + $130 = ($129|0)==(0); + if ($130) { + label = 27; + break; + } + $141 = HEAP32[$j>>2]|0; + $142 = (($141) + 1)|0; + HEAP32[$j>>2] = $142; + } + if ((label|0) == 27) { + label = 0; + $131 = HEAP32[$aiCol>>2]|0; + $132 = ($131|0)!=(0|0); + if ($132) { + $133 = HEAP32[$j>>2]|0; + $134 = HEAP32[$3>>2]|0; + $135 = (($134) + 36|0); + $136 = (($135) + ($133<<3)|0); + $137 = HEAP32[$136>>2]|0; + $138 = HEAP32[$i1>>2]|0; + $139 = HEAP32[$aiCol>>2]|0; + $140 = (($139) + ($138<<2)|0); + HEAP32[$140>>2] = $137; + } + } + $143 = HEAP32[$j>>2]|0; + $144 = HEAP32[$nCol>>2]|0; + $145 = ($143|0)==($144|0); + if ($145) { + break; + } + $146 = HEAP32[$i1>>2]|0; + $147 = (($146) + 1)|0; + HEAP32[$i1>>2] = $147; + } + $148 = HEAP32[$i1>>2]|0; + $149 = HEAP32[$nCol>>2]|0; + $150 = ($148|0)==($149|0); + if ($150) { + break L17; + } + } + } + } while(0); + $151 = HEAP32[$pIdx>>2]|0; + $152 = (($151) + 20|0); + $153 = HEAP32[$152>>2]|0; + HEAP32[$pIdx>>2] = $153; + } + L41: do { + if ((label|0) == 17) { + $69 = HEAP32[$aiCol>>2]|0; + $70 = ($69|0)!=(0|0); + if ($70) { + HEAP32[$i>>2] = 0; + while(1) { + $71 = HEAP32[$i>>2]|0; + $72 = HEAP32[$nCol>>2]|0; + $73 = ($71|0)<($72|0); + if (!($73)) { + break L41; + } + $74 = HEAP32[$i>>2]|0; + $75 = HEAP32[$3>>2]|0; + $76 = (($75) + 36|0); + $77 = (($76) + ($74<<3)|0); + $78 = HEAP32[$77>>2]|0; + $79 = HEAP32[$i>>2]|0; + $80 = HEAP32[$aiCol>>2]|0; + $81 = (($80) + ($79<<2)|0); + HEAP32[$81>>2] = $78; + $82 = HEAP32[$i>>2]|0; + $83 = (($82) + 1)|0; + HEAP32[$i>>2] = $83; + } + } + } + } while(0); + $154 = HEAP32[$pIdx>>2]|0; + $155 = ($154|0)!=(0|0); + if ($155) { + $170 = HEAP32[$pIdx>>2]|0; + $171 = HEAP32[$4>>2]|0; + HEAP32[$171>>2] = $170; + HEAP32[$0>>2] = 0; + $172 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($172|0); + } + $156 = HEAP32[$1>>2]|0; + $157 = (($156) + 438|0); + $158 = HEAP8[$157>>0]|0; + $159 = ($158<<24>>24)!=(0); + if (!($159)) { + $160 = HEAP32[$1>>2]|0; + $161 = HEAP32[$3>>2]|0; + $162 = HEAP32[$161>>2]|0; + $163 = HEAP32[$162>>2]|0; + $164 = HEAP32[$3>>2]|0; + $165 = (($164) + 8|0); + $166 = HEAP32[$165>>2]|0; + HEAP32[$vararg_buffer>>2] = $163; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $166; + _sqlite3ErrorMsg($160,28480,$vararg_buffer); + } + $167 = HEAP32[$1>>2]|0; + $168 = HEAP32[$167>>2]|0; + $169 = HEAP32[$aiCol>>2]|0; + _sqlite3DbFree($168,$169); + HEAP32[$0>>2] = 1; + $172 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($172|0); +} +function _sqlite3IndexAffinityStr($v,$pIdx) { + $v = $v|0; + $pIdx = $pIdx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $n = 0, $pTab = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $n = sp + 8|0; + $pTab = sp + 12|0; + $db = sp + 16|0; + $x = sp + 24|0; + HEAP32[$1>>2] = $v; + HEAP32[$2>>2] = $pIdx; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 16|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 12|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$pTab>>2] = $9; + $10 = HEAP32[$1>>2]|0; + $11 = (_sqlite3VdbeDb($10)|0); + HEAP32[$db>>2] = $11; + $12 = HEAP32[$2>>2]|0; + $13 = (($12) + 52|0); + $14 = HEAP16[$13>>1]|0; + $15 = $14&65535; + $16 = (($15) + 1)|0; + $17 = (_sqlite3DbMallocRaw(0,$16)|0); + $18 = HEAP32[$2>>2]|0; + $19 = (($18) + 16|0); + HEAP32[$19>>2] = $17; + $20 = HEAP32[$2>>2]|0; + $21 = (($20) + 16|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)!=(0|0); + if (!($23)) { + $24 = HEAP32[$db>>2]|0; + $25 = (($24) + 64|0); + HEAP8[$25>>0] = 1; + HEAP32[$0>>2] = 0; + $65 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($65|0); + } + HEAP32[$n>>2] = 0; + while(1) { + $26 = HEAP32[$n>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 52|0); + $29 = HEAP16[$28>>1]|0; + $30 = $29&65535; + $31 = ($26|0)<($30|0); + $32 = HEAP32[$n>>2]|0; + $33 = HEAP32[$2>>2]|0; + if (!($31)) { + break; + } + $34 = (($33) + 4|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + ($32<<1)|0); + $37 = HEAP16[$36>>1]|0; + HEAP16[$x>>1] = $37; + $38 = HEAP16[$x>>1]|0; + $39 = $38 << 16 >> 16; + $40 = ($39|0)<(0); + if ($40) { + $51 = 100; + } else { + $41 = HEAP16[$x>>1]|0; + $42 = $41 << 16 >> 16; + $43 = HEAP32[$pTab>>2]|0; + $44 = (($43) + 4|0); + $45 = HEAP32[$44>>2]|0; + $46 = (($45) + (($42*24)|0)|0); + $47 = (($46) + 21|0); + $48 = HEAP8[$47>>0]|0; + $49 = $48 << 24 >> 24; + $51 = $49; + } + $50 = $51&255; + $52 = HEAP32[$n>>2]|0; + $53 = HEAP32[$2>>2]|0; + $54 = (($53) + 16|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + ($52)|0); + HEAP8[$56>>0] = $50; + $57 = HEAP32[$n>>2]|0; + $58 = (($57) + 1)|0; + HEAP32[$n>>2] = $58; + } + $59 = (($33) + 16|0); + $60 = HEAP32[$59>>2]|0; + $61 = (($60) + ($32)|0); + HEAP8[$61>>0] = 0; + } + $62 = HEAP32[$2>>2]|0; + $63 = (($62) + 16|0); + $64 = HEAP32[$63>>2]|0; + HEAP32[$0>>2] = $64; + $65 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($65|0); +} +function _sqlite3RegisterLikeFunctions($db,$caseSensitive) { + $db = $db|0; + $caseSensitive = $caseSensitive|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pInfo = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pInfo = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $caseSensitive; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0); + if ($3) { + HEAP32[$pInfo>>2] = 28472; + } else { + HEAP32[$pInfo>>2] = 15320; + } + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$pInfo>>2]|0; + (_sqlite3CreateFunc($4,15328,2,1,$5,38,0,0,0)|0); + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$pInfo>>2]|0; + (_sqlite3CreateFunc($6,15328,3,1,$7,38,0,0,0)|0); + $8 = HEAP32[$0>>2]|0; + (_sqlite3CreateFunc($8,15312,2,1,1776,38,0,0,0)|0); + $9 = HEAP32[$0>>2]|0; + _setLikeOptFlag($9,15312,12); + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = ($11|0)!=(0); + $13 = $12 ? 12 : 4; + $14 = $13&255; + _setLikeOptFlag($10,15328,$14); + STACKTOP = sp;return; +} +function _sqlite3ExprCacheClear($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $i = sp; + $p = sp + 4|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$i>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 116|0); + HEAP32[$p>>2] = $2; + while(1) { + $3 = HEAP32[$i>>2]|0; + $4 = ($3|0)<(10); + if (!($4)) { + break; + } + $5 = HEAP32[$p>>2]|0; + $6 = (($5) + 12|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0); + if ($8) { + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$p>>2]|0; + _cacheEntryClear($9,$10); + $11 = HEAP32[$p>>2]|0; + $12 = (($11) + 12|0); + HEAP32[$12>>2] = 0; + } + $13 = HEAP32[$i>>2]|0; + $14 = (($13) + 1)|0; + HEAP32[$i>>2] = $14; + $15 = HEAP32[$p>>2]|0; + $16 = (($15) + 20|0); + HEAP32[$p>>2] = $16; + } + STACKTOP = sp;return; +} +function _sqlite3OpenTableAndIndices($pParse,$pTab,$op,$iBase,$aToOpen,$piDataCur,$piIdxCur) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $op = $op|0; + $iBase = $iBase|0; + $aToOpen = $aToOpen|0; + $piDataCur = $piDataCur|0; + $piIdxCur = $piIdxCur|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $i = 0, $iDataCur = 0, $iDb = 0, $iIdxCur = 0, $pIdx = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 52|0; + $1 = sp + 48|0; + $2 = sp + 44|0; + $3 = sp + 40|0; + $4 = sp + 36|0; + $5 = sp + 32|0; + $6 = sp + 28|0; + $7 = sp + 24|0; + $i = sp + 16|0; + $iDb = sp + 12|0; + $iDataCur = sp + 8|0; + $pIdx = sp + 4|0; + $v = sp; + $iIdxCur = sp + 20|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pTab; + HEAP32[$3>>2] = $op; + HEAP32[$4>>2] = $iBase; + HEAP32[$5>>2] = $aToOpen; + HEAP32[$6>>2] = $piDataCur; + HEAP32[$7>>2] = $piIdxCur; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 44|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = $11 & 16; + $13 = ($12|0)!=(0); + if ($13) { + $14 = HEAP32[$6>>2]|0; + HEAP32[$14>>2] = 0; + $15 = HEAP32[$7>>2]|0; + HEAP32[$15>>2] = 1; + HEAP32[$0>>2] = 0; + $121 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($121|0); + } + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = (($18) + 68|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3SchemaToIndex($17,$20)|0); + HEAP32[$iDb>>2] = $21; + $22 = HEAP32[$1>>2]|0; + $23 = (_sqlite3GetVdbe($22)|0); + HEAP32[$v>>2] = $23; + $24 = HEAP32[$4>>2]|0; + $25 = ($24|0)<(0); + if ($25) { + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 68|0); + $28 = HEAP32[$27>>2]|0; + HEAP32[$4>>2] = $28; + } + $29 = HEAP32[$4>>2]|0; + $30 = (($29) + 1)|0; + HEAP32[$4>>2] = $30; + HEAP32[$iDataCur>>2] = $29; + $31 = HEAP32[$6>>2]|0; + $32 = ($31|0)!=(0|0); + if ($32) { + $33 = HEAP32[$iDataCur>>2]|0; + $34 = HEAP32[$6>>2]|0; + HEAP32[$34>>2] = $33; + } + $35 = HEAP32[$2>>2]|0; + $36 = (($35) + 44|0); + $37 = HEAP8[$36>>0]|0; + $38 = $37&255; + $39 = $38 & 32; + $40 = ($39|0)==(0); + do { + if ($40) { + $41 = HEAP32[$5>>2]|0; + $42 = ($41|0)==(0|0); + if (!($42)) { + $43 = HEAP32[$5>>2]|0; + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = ($45|0)!=(0); + if (!($46)) { + label = 11; + break; + } + } + $47 = HEAP32[$1>>2]|0; + $48 = HEAP32[$iDataCur>>2]|0; + $49 = HEAP32[$iDb>>2]|0; + $50 = HEAP32[$2>>2]|0; + $51 = HEAP32[$3>>2]|0; + _sqlite3OpenTable($47,$48,$49,$50,$51); + } else { + label = 11; + } + } while(0); + if ((label|0) == 11) { + $52 = HEAP32[$1>>2]|0; + $53 = HEAP32[$iDb>>2]|0; + $54 = HEAP32[$2>>2]|0; + $55 = (($54) + 32|0); + $56 = HEAP32[$55>>2]|0; + $57 = HEAP32[$3>>2]|0; + $58 = ($57|0)==(53); + $59 = $58&1; + $60 = $59&255; + $61 = HEAP32[$2>>2]|0; + $62 = HEAP32[$61>>2]|0; + _sqlite3TableLock($52,$53,$56,$60,$62); + } + $63 = HEAP32[$7>>2]|0; + $64 = ($63|0)!=(0|0); + if ($64) { + $65 = HEAP32[$4>>2]|0; + $66 = HEAP32[$7>>2]|0; + HEAP32[$66>>2] = $65; + } + HEAP32[$i>>2] = 0; + $67 = HEAP32[$2>>2]|0; + $68 = (($67) + 8|0); + $69 = HEAP32[$68>>2]|0; + HEAP32[$pIdx>>2] = $69; + while(1) { + $70 = HEAP32[$pIdx>>2]|0; + $71 = ($70|0)!=(0|0); + $72 = HEAP32[$4>>2]|0; + if (!($71)) { + break; + } + $73 = (($72) + 1)|0; + HEAP32[$4>>2] = $73; + HEAP32[$iIdxCur>>2] = $72; + $74 = HEAP32[$pIdx>>2]|0; + $75 = (($74) + 55|0); + $76 = HEAP8[$75>>0]|0; + $77 = $76 & 3; + $78 = $77&255; + $79 = ($78|0)==(2); + if ($79) { + $80 = HEAP32[$2>>2]|0; + $81 = (($80) + 44|0); + $82 = HEAP8[$81>>0]|0; + $83 = $82&255; + $84 = $83 & 32; + $85 = ($84|0)==(0); + if (!($85)) { + $86 = HEAP32[$6>>2]|0; + $87 = ($86|0)!=(0|0); + if ($87) { + $88 = HEAP32[$iIdxCur>>2]|0; + $89 = HEAP32[$6>>2]|0; + HEAP32[$89>>2] = $88; + } + } + } + $90 = HEAP32[$5>>2]|0; + $91 = ($90|0)==(0|0); + if ($91) { + label = 22; + } else { + $92 = HEAP32[$i>>2]|0; + $93 = (($92) + 1)|0; + $94 = HEAP32[$5>>2]|0; + $95 = (($94) + ($93)|0); + $96 = HEAP8[$95>>0]|0; + $97 = $96&255; + $98 = ($97|0)!=(0); + if ($98) { + label = 22; + } + } + if ((label|0) == 22) { + label = 0; + $99 = HEAP32[$v>>2]|0; + $100 = HEAP32[$3>>2]|0; + $101 = HEAP32[$iIdxCur>>2]|0; + $102 = HEAP32[$pIdx>>2]|0; + $103 = (($102) + 44|0); + $104 = HEAP32[$103>>2]|0; + $105 = HEAP32[$iDb>>2]|0; + (_sqlite3VdbeAddOp3($99,$100,$101,$104,$105)|0); + $106 = HEAP32[$1>>2]|0; + $107 = HEAP32[$pIdx>>2]|0; + _sqlite3VdbeSetP4KeyInfo($106,$107); + } + $108 = HEAP32[$pIdx>>2]|0; + $109 = (($108) + 20|0); + $110 = HEAP32[$109>>2]|0; + HEAP32[$pIdx>>2] = $110; + $111 = HEAP32[$i>>2]|0; + $112 = (($111) + 1)|0; + HEAP32[$i>>2] = $112; + } + $113 = HEAP32[$1>>2]|0; + $114 = (($113) + 68|0); + $115 = HEAP32[$114>>2]|0; + $116 = ($72|0)>($115|0); + if ($116) { + $117 = HEAP32[$4>>2]|0; + $118 = HEAP32[$1>>2]|0; + $119 = (($118) + 68|0); + HEAP32[$119>>2] = $117; + } + $120 = HEAP32[$i>>2]|0; + HEAP32[$0>>2] = $120; + $121 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($121|0); +} +function _setLikeOptFlag($db,$zName,$flagVal) { + $db = $db|0; + $zName = $zName|0; + $flagVal = $flagVal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDef = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 12|0; + $pDef = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zName; + HEAP8[$2>>0] = $flagVal; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (_sqlite3Strlen30($5)|0); + $7 = (_sqlite3FindFunction($3,$4,$6,2,1,0)|0); + HEAP32[$pDef>>2] = $7; + $8 = HEAP32[$pDef>>2]|0; + $9 = ($8|0)!=(0|0); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = HEAP8[$2>>0]|0; + $11 = $10&255; + $12 = HEAP32[$pDef>>2]|0; + $13 = (($12) + 2|0); + $14 = HEAP16[$13>>1]|0; + $15 = $14&65535; + $16 = $15 | $11; + $17 = $16&65535; + HEAP16[$13>>1] = $17; + STACKTOP = sp;return; +} +function _getTempStore($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $z; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP8[$2>>0]|0; + $4 = $3 << 24 >> 24; + $5 = ($4|0)>=(48); + if ($5) { + $6 = HEAP32[$1>>2]|0; + $7 = HEAP8[$6>>0]|0; + $8 = $7 << 24 >> 24; + $9 = ($8|0)<=(50); + if ($9) { + $10 = HEAP32[$1>>2]|0; + $11 = HEAP8[$10>>0]|0; + $12 = $11 << 24 >> 24; + $13 = (($12) - 48)|0; + HEAP32[$0>>2] = $13; + } else { + label = 4; + } + } else { + label = 4; + } + do { + if ((label|0) == 4) { + $14 = HEAP32[$1>>2]|0; + $15 = (_sqlite3_stricmp($14,27912)|0); + $16 = ($15|0)==(0); + if ($16) { + HEAP32[$0>>2] = 1; + break; + } + $17 = HEAP32[$1>>2]|0; + $18 = (_sqlite3_stricmp($17,11400)|0); + $19 = ($18|0)==(0); + if ($19) { + HEAP32[$0>>2] = 2; + break; + } else { + HEAP32[$0>>2] = 0; + break; + } + } + } while(0); + $20 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($20|0); +} +function _sqlite3WalLimit($pWal,$0,$1) { + $pWal = $pWal|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp + 8|0; + $3 = sp; + HEAP32[$2>>2] = $pWal; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = HEAP32[$2>>2]|0; + $9 = ($8|0)!=(0|0); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = $3; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (($10) + 4)|0; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$2>>2]|0; + $17 = (($16) + 16|0); + $18 = $17; + $19 = $18; + HEAP32[$19>>2] = $12; + $20 = (($18) + 4)|0; + $21 = $20; + HEAP32[$21>>2] = $15; + STACKTOP = sp;return; +} +function _releaseMemArray($p,$N) { + $p = $p|0; + $N = $N|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $malloc_failed = 0, $pEnd = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 12|0; + $1 = sp; + $pEnd = sp + 4|0; + $db = sp + 8|0; + $malloc_failed = sp + 16|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $N; + $2 = HEAP32[$0>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)!=(0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$db>>2] = $7; + $8 = HEAP32[$db>>2]|0; + $9 = (($8) + 64|0); + $10 = HEAP8[$9>>0]|0; + HEAP8[$malloc_failed>>0] = $10; + $11 = HEAP32[$db>>2]|0; + $12 = (($11) + 512|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(0|0); + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + (($15*40)|0)|0); + HEAP32[$pEnd>>2] = $17; + if ($14) { + while(1) { + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$pEnd>>2]|0; + $20 = ($18>>>0)<($19>>>0); + if (!($20)) { + break; + } + $21 = HEAP32[$db>>2]|0; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 36|0); + $24 = HEAP32[$23>>2]|0; + _sqlite3DbFree($21,$24); + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 40|0); + HEAP32[$0>>2] = $26; + } + STACKTOP = sp;return; + } + while(1) { + $27 = HEAP32[$0>>2]|0; + $28 = HEAP32[$pEnd>>2]|0; + $29 = ($27>>>0)<($28>>>0); + if (!($29)) { + break; + } + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 28|0); + $32 = HEAP16[$31>>1]|0; + $33 = $32&65535; + $34 = $33 & 9312; + $35 = ($34|0)!=(0); + $36 = HEAP32[$0>>2]|0; + if ($35) { + _sqlite3VdbeMemRelease($36); + } else { + $37 = (($36) + 36|0); + $38 = HEAP32[$37>>2]|0; + $39 = ($38|0)!=(0|0); + if ($39) { + $40 = HEAP32[$db>>2]|0; + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + 36|0); + $43 = HEAP32[$42>>2]|0; + _sqlite3DbFree($40,$43); + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 36|0); + HEAP32[$45>>2] = 0; + } + } + $46 = HEAP32[$0>>2]|0; + $47 = (($46) + 28|0); + HEAP16[$47>>1] = 128; + $48 = HEAP32[$0>>2]|0; + $49 = (($48) + 40|0); + HEAP32[$0>>2] = $49; + } + $50 = HEAP8[$malloc_failed>>0]|0; + $51 = HEAP32[$db>>2]|0; + $52 = (($51) + 64|0); + HEAP8[$52>>0] = $50; + STACKTOP = sp;return; +} +function _sqlite3ClearStatTables($pParse,$iDb,$zType,$zName) { + $pParse = $pParse|0; + $iDb = $iDb|0; + $zType = $zType|0; + $zName = $zName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $vararg_buffer1 = 0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $zDbName = 0, $zTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer1 = sp; + $0 = sp + 36|0; + $1 = sp + 16|0; + $2 = sp + 20|0; + $3 = sp + 24|0; + $i = sp + 28|0; + $zDbName = sp + 32|0; + $zTab = sp + 40|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iDb; + HEAP32[$2>>2] = $zType; + HEAP32[$3>>2] = $zName; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + 16|0); + $8 = HEAP32[$7>>2]|0; + $9 = (($8) + ($4<<4)|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$zDbName>>2] = $10; + HEAP32[$i>>2] = 1; + while(1) { + $11 = HEAP32[$i>>2]|0; + $12 = ($11|0)<=(4); + if (!($12)) { + break; + } + $13 = HEAP32[$i>>2]|0; + HEAP32[$vararg_buffer1>>2] = $13; + (_sqlite3_snprintf(24,$zTab,29728,$vararg_buffer1)|0); + $14 = HEAP32[$0>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$zDbName>>2]|0; + $17 = (_sqlite3FindTable($15,$zTab,$16)|0); + $18 = ($17|0)!=(0|0); + if ($18) { + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$zDbName>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = HEAP32[$3>>2]|0; + HEAP32[$vararg_buffer1>>2] = $20; + $vararg_ptr4 = (($vararg_buffer1) + 4|0); + HEAP32[$vararg_ptr4>>2] = $zTab; + $vararg_ptr5 = (($vararg_buffer1) + 8|0); + HEAP32[$vararg_ptr5>>2] = $21; + $vararg_ptr6 = (($vararg_buffer1) + 12|0); + HEAP32[$vararg_ptr6>>2] = $22; + _sqlite3NestedParse($19,25000,$vararg_buffer1); + } + $23 = HEAP32[$i>>2]|0; + $24 = (($23) + 1)|0; + HEAP32[$i>>2] = $24; + } + STACKTOP = sp;return; +} +function _destroyRootPage($pParse,$iTable,$iDb) { + $pParse = $pParse|0; + $iTable = $iTable|0; + $iDb = $iDb|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r1 = 0, $v = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 36|0; + $1 = sp + 20|0; + $2 = sp + 24|0; + $v = sp + 28|0; + $r1 = sp + 32|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iTable; + HEAP32[$2>>2] = $iDb; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3GetVdbe($3)|0); + HEAP32[$v>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (_sqlite3GetTempReg($5)|0); + HEAP32[$r1>>2] = $6; + $7 = HEAP32[$v>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$r1>>2]|0; + $10 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp3($7,114,$8,$9,$10)|0); + $11 = HEAP32[$0>>2]|0; + _sqlite3MayAbort($11); + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = HEAP32[$0>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + 16|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + ($13<<4)|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$2>>2]|0; + $21 = ($20|0)==(1); + $22 = $21 ? 21432 : 21456; + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$r1>>2]|0; + $25 = HEAP32[$r1>>2]|0; + HEAP32[$vararg_buffer>>2] = $19; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $22; + $vararg_ptr2 = (($vararg_buffer) + 8|0); + HEAP32[$vararg_ptr2>>2] = $23; + $vararg_ptr3 = (($vararg_buffer) + 12|0); + HEAP32[$vararg_ptr3>>2] = $24; + $vararg_ptr4 = (($vararg_buffer) + 16|0); + HEAP32[$vararg_ptr4>>2] = $25; + _sqlite3NestedParse($12,29672,$vararg_buffer); + $26 = HEAP32[$0>>2]|0; + $27 = HEAP32[$r1>>2]|0; + _sqlite3ReleaseTempReg($26,$27); + STACKTOP = sp;return; +} +function _sqlite3ArrayAllocate($db,$pArray,$szEntry,$pnEntry,$pIdx) { + $db = $db|0; + $pArray = $pArray|0; + $szEntry = $szEntry|0; + $pnEntry = $pnEntry|0; + $pIdx = $pIdx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $n = 0, $pNew = 0, $sz = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 20|0; + $5 = sp + 16|0; + $z = sp + 8|0; + $n = sp + 4|0; + $sz = sp; + $pNew = sp + 12|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pArray; + HEAP32[$3>>2] = $szEntry; + HEAP32[$4>>2] = $pnEntry; + HEAP32[$5>>2] = $pIdx; + $6 = HEAP32[$4>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$n>>2] = $7; + $8 = HEAP32[$n>>2]|0; + $9 = HEAP32[$n>>2]|0; + $10 = (($9) - 1)|0; + $11 = $8 & $10; + $12 = ($11|0)==(0); + do { + if ($12) { + $13 = HEAP32[$n>>2]|0; + $14 = ($13|0)==(0); + if ($14) { + $17 = 1; + } else { + $15 = HEAP32[$n>>2]|0; + $16 = $15<<1; + $17 = $16; + } + HEAP32[$sz>>2] = $17; + $18 = HEAP32[$1>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = HEAP32[$sz>>2]|0; + $21 = HEAP32[$3>>2]|0; + $22 = Math_imul($20, $21)|0; + $23 = (_sqlite3DbRealloc($18,$19,$22)|0); + HEAP32[$pNew>>2] = $23; + $24 = HEAP32[$pNew>>2]|0; + $25 = ($24|0)==(0|0); + if (!($25)) { + $28 = HEAP32[$pNew>>2]|0; + HEAP32[$2>>2] = $28; + break; + } + $26 = HEAP32[$5>>2]|0; + HEAP32[$26>>2] = -1; + $27 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $27; + $42 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($42|0); + } + } while(0); + $29 = HEAP32[$2>>2]|0; + HEAP32[$z>>2] = $29; + $30 = HEAP32[$n>>2]|0; + $31 = HEAP32[$3>>2]|0; + $32 = Math_imul($30, $31)|0; + $33 = HEAP32[$z>>2]|0; + $34 = (($33) + ($32)|0); + $35 = HEAP32[$3>>2]|0; + _memset(($34|0),0,($35|0))|0; + $36 = HEAP32[$n>>2]|0; + $37 = HEAP32[$5>>2]|0; + HEAP32[$37>>2] = $36; + $38 = HEAP32[$4>>2]|0; + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + 1)|0; + HEAP32[$38>>2] = $40; + $41 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $41; + $42 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($42|0); +} +function _sqlite3TriggersExist($pParse,$pTab,$op,$pChanges,$pMask) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $op = $op|0; + $pChanges = $pChanges|0; + $pMask = $pMask|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mask = 0, $p = 0, $pList = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $mask = sp + 16|0; + $pList = sp + 20|0; + $p = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $op; + HEAP32[$3>>2] = $pChanges; + HEAP32[$4>>2] = $pMask; + HEAP32[$mask>>2] = 0; + HEAP32[$pList>>2] = 0; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + 24|0); + $8 = HEAP32[$7>>2]|0; + $9 = $8 & 8388608; + $10 = ($9|0)!=(0); + if ($10) { + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (_sqlite3TriggerList($11,$12)|0); + HEAP32[$pList>>2] = $13; + } + $14 = HEAP32[$pList>>2]|0; + HEAP32[$p>>2] = $14; + while(1) { + $15 = HEAP32[$p>>2]|0; + $16 = ($15|0)!=(0|0); + if (!($16)) { + break; + } + $17 = HEAP32[$p>>2]|0; + $18 = (($17) + 8|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = HEAP32[$2>>2]|0; + $22 = ($20|0)==($21|0); + if ($22) { + $23 = HEAP32[$p>>2]|0; + $24 = (($23) + 16|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$3>>2]|0; + $27 = (_checkColumnOverlap($25,$26)|0); + $28 = ($27|0)!=(0); + if ($28) { + $29 = HEAP32[$p>>2]|0; + $30 = (($29) + 9|0); + $31 = HEAP8[$30>>0]|0; + $32 = $31&255; + $33 = HEAP32[$mask>>2]|0; + $34 = $33 | $32; + HEAP32[$mask>>2] = $34; + } + } + $35 = HEAP32[$p>>2]|0; + $36 = (($35) + 32|0); + $37 = HEAP32[$36>>2]|0; + HEAP32[$p>>2] = $37; + } + $38 = HEAP32[$4>>2]|0; + $39 = ($38|0)!=(0|0); + if (!($39)) { + $42 = HEAP32[$mask>>2]|0; + $43 = ($42|0)!=(0); + $44 = HEAP32[$pList>>2]|0; + $45 = $43 ? $44 : 0; + STACKTOP = sp;return ($45|0); + } + $40 = HEAP32[$mask>>2]|0; + $41 = HEAP32[$4>>2]|0; + HEAP32[$41>>2] = $40; + $42 = HEAP32[$mask>>2]|0; + $43 = ($42|0)!=(0); + $44 = HEAP32[$pList>>2]|0; + $45 = $43 ? $44 : 0; + STACKTOP = sp;return ($45|0); +} +function _sqlite3IsReadOnly($pParse,$pTab,$viewOk) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $viewOk = $viewOk|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $vararg_buffer1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer1 = sp; + $0 = sp + 16|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pTab; + HEAP32[$3>>2] = $viewOk; + $4 = HEAP32[$2>>2]|0; + $5 = (($4) + 44|0); + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = $7 & 16; + $9 = ($8|0)!=(0); + if ($9) { + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = (_sqlite3GetVTable($11,$12)|0); + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + 52|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($18|0)==(0|0); + if (!($19)) { + label = 3; + } + } else { + label = 3; + } + do { + if ((label|0) == 3) { + $20 = HEAP32[$2>>2]|0; + $21 = (($20) + 44|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = $23 & 1; + $25 = ($24|0)!=(0); + if ($25) { + $26 = HEAP32[$1>>2]|0; + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + 24|0); + $29 = HEAP32[$28>>2]|0; + $30 = $29 & 2048; + $31 = ($30|0)==(0); + if ($31) { + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 18|0); + $34 = HEAP8[$33>>0]|0; + $35 = $34&255; + $36 = ($35|0)==(0); + if ($36) { + break; + } + } + } + $40 = HEAP32[$3>>2]|0; + $41 = ($40|0)!=(0); + if (!($41)) { + $42 = HEAP32[$2>>2]|0; + $43 = (($42) + 12|0); + $44 = HEAP32[$43>>2]|0; + $45 = ($44|0)!=(0|0); + if ($45) { + $46 = HEAP32[$1>>2]|0; + $47 = HEAP32[$2>>2]|0; + $48 = HEAP32[$47>>2]|0; + HEAP32[$vararg_buffer1>>2] = $48; + _sqlite3ErrorMsg($46,30936,$vararg_buffer1); + HEAP32[$0>>2] = 1; + $49 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($49|0); + } + } + HEAP32[$0>>2] = 0; + $49 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($49|0); + } + } while(0); + $37 = HEAP32[$1>>2]|0; + $38 = HEAP32[$2>>2]|0; + $39 = HEAP32[$38>>2]|0; + HEAP32[$vararg_buffer1>>2] = $39; + _sqlite3ErrorMsg($37,30904,$vararg_buffer1); + HEAP32[$0>>2] = 1; + $49 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($49|0); +} +function _sqlite3VdbeCountChanges($v) { + $v = $v|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $v; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 88|0); + $3 = HEAP16[$2>>1]|0; + $4 = $3 & -17; + $5 = $4 | 16; + HEAP16[$2>>1] = $5; + STACKTOP = sp;return; +} +function _xferOptimization($pParse,$pDest,$pSelect,$onError,$iDbDest) { + $pParse = $pParse|0; + $pDest = $pDest|0; + $pSelect = $pSelect|0; + $onError = $onError|0; + $iDbDest = $iDbDest|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr1 = 0, $addr2 = 0, $destHasUniqueIdx = 0, $emptyDestTest = 0, $emptySrcTest = 0, $i = 0, $iDbSrc = 0, $iDest = 0, $iSrc = 0, $or$cond = 0, $pDestCol = 0, $pDestIdx = 0; + var $pEList = 0, $pItem = 0, $pSrc = 0, $pSrcCol = 0, $pSrcIdx = 0, $regAutoinc = 0, $regData = 0, $regRowid = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $0 = sp + 100|0; + $1 = sp + 96|0; + $2 = sp + 92|0; + $3 = sp + 88|0; + $4 = sp + 84|0; + $5 = sp + 80|0; + $pEList = sp + 76|0; + $pSrc = sp + 72|0; + $pSrcIdx = sp + 68|0; + $pDestIdx = sp + 64|0; + $pItem = sp + 60|0; + $i = sp + 56|0; + $iDbSrc = sp + 52|0; + $iSrc = sp + 48|0; + $iDest = sp + 16|0; + $addr1 = sp; + $addr2 = sp + 4|0; + $emptyDestTest = sp + 8|0; + $emptySrcTest = sp + 12|0; + $v = sp + 20|0; + $regAutoinc = sp + 24|0; + $destHasUniqueIdx = sp + 28|0; + $regData = sp + 32|0; + $regRowid = sp + 36|0; + $pDestCol = sp + 40|0; + $pSrcCol = sp + 44|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pDest; + HEAP32[$3>>2] = $pSelect; + HEAP32[$4>>2] = $onError; + HEAP32[$5>>2] = $iDbDest; + HEAP32[$emptyDestTest>>2] = 0; + HEAP32[$emptySrcTest>>2] = 0; + HEAP32[$destHasUniqueIdx>>2] = 0; + $6 = HEAP32[$3>>2]|0; + $7 = ($6|0)==(0|0); + if ($7) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 532|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if (!($11)) { + $12 = HEAP32[$3>>2]|0; + $13 = (($12) + 68|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)!=(0|0); + if (!($15)) { + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = (_sqlite3TriggerList($16,$17)|0); + $19 = ($18|0)!=(0|0); + if ($19) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $20 = HEAP32[$2>>2]|0; + $21 = (($20) + 44|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = $23 & 16; + $25 = ($24|0)!=(0); + if ($25) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $26 = HEAP32[$4>>2]|0; + $27 = ($26|0)==(10); + if ($27) { + $28 = HEAP32[$2>>2]|0; + $29 = (($28) + 36|0); + $30 = HEAP16[$29>>1]|0; + $31 = $30 << 16 >> 16; + $32 = ($31|0)>=(0); + if ($32) { + $33 = HEAP32[$2>>2]|0; + $34 = (($33) + 45|0); + $35 = HEAP8[$34>>0]|0; + $36 = $35&255; + HEAP32[$4>>2] = $36; + } + $37 = HEAP32[$4>>2]|0; + $38 = ($37|0)==(10); + if ($38) { + HEAP32[$4>>2] = 2; + } + } + $39 = HEAP32[$3>>2]|0; + $40 = (($39) + 32|0); + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$41>>2]|0; + $43 = ($42|0)!=(1); + if ($43) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $44 = HEAP32[$3>>2]|0; + $45 = (($44) + 32|0); + $46 = HEAP32[$45>>2]|0; + $47 = (($46) + 8|0); + $48 = (($47) + 20|0); + $49 = HEAP32[$48>>2]|0; + $50 = ($49|0)!=(0|0); + if ($50) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $51 = HEAP32[$3>>2]|0; + $52 = (($51) + 36|0); + $53 = HEAP32[$52>>2]|0; + $54 = ($53|0)!=(0|0); + if ($54) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $55 = HEAP32[$3>>2]|0; + $56 = (($55) + 48|0); + $57 = HEAP32[$56>>2]|0; + $58 = ($57|0)!=(0|0); + if ($58) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $59 = HEAP32[$3>>2]|0; + $60 = (($59) + 40|0); + $61 = HEAP32[$60>>2]|0; + $62 = ($61|0)!=(0|0); + if ($62) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $63 = HEAP32[$3>>2]|0; + $64 = (($63) + 60|0); + $65 = HEAP32[$64>>2]|0; + $66 = ($65|0)!=(0|0); + if ($66) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $67 = HEAP32[$3>>2]|0; + $68 = (($67) + 52|0); + $69 = HEAP32[$68>>2]|0; + $70 = ($69|0)!=(0|0); + if ($70) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $71 = HEAP32[$3>>2]|0; + $72 = (($71) + 6|0); + $73 = HEAP16[$72>>1]|0; + $74 = $73&65535; + $75 = $74 & 1; + $76 = ($75|0)!=(0); + if ($76) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $77 = HEAP32[$3>>2]|0; + $78 = HEAP32[$77>>2]|0; + HEAP32[$pEList>>2] = $78; + $79 = HEAP32[$pEList>>2]|0; + $80 = HEAP32[$79>>2]|0; + $81 = ($80|0)!=(1); + if ($81) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $82 = HEAP32[$pEList>>2]|0; + $83 = (($82) + 4|0); + $84 = HEAP32[$83>>2]|0; + $85 = HEAP32[$84>>2]|0; + $86 = HEAP8[$85>>0]|0; + $87 = $86&255; + $88 = ($87|0)!=(116); + if ($88) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $89 = HEAP32[$3>>2]|0; + $90 = (($89) + 32|0); + $91 = HEAP32[$90>>2]|0; + $92 = (($91) + 8|0); + HEAP32[$pItem>>2] = $92; + $93 = HEAP32[$1>>2]|0; + $94 = HEAP32[$pItem>>2]|0; + $95 = (_sqlite3LocateTableItem($93,0,$94)|0); + HEAP32[$pSrc>>2] = $95; + $96 = HEAP32[$pSrc>>2]|0; + $97 = ($96|0)==(0|0); + if ($97) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $98 = HEAP32[$pSrc>>2]|0; + $99 = HEAP32[$2>>2]|0; + $100 = ($98|0)==($99|0); + if ($100) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $101 = HEAP32[$2>>2]|0; + $102 = (($101) + 44|0); + $103 = HEAP8[$102>>0]|0; + $104 = $103&255; + $105 = $104 & 32; + $106 = ($105|0)==(0); + $107 = $106&1; + $108 = HEAP32[$pSrc>>2]|0; + $109 = (($108) + 44|0); + $110 = HEAP8[$109>>0]|0; + $111 = $110&255; + $112 = $111 & 32; + $113 = ($112|0)==(0); + $114 = $113&1; + $115 = ($107|0)!=($114|0); + if ($115) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $116 = HEAP32[$pSrc>>2]|0; + $117 = (($116) + 44|0); + $118 = HEAP8[$117>>0]|0; + $119 = $118&255; + $120 = $119 & 16; + $121 = ($120|0)!=(0); + if ($121) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $122 = HEAP32[$pSrc>>2]|0; + $123 = (($122) + 12|0); + $124 = HEAP32[$123>>2]|0; + $125 = ($124|0)!=(0|0); + if ($125) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $126 = HEAP32[$2>>2]|0; + $127 = (($126) + 38|0); + $128 = HEAP16[$127>>1]|0; + $129 = $128 << 16 >> 16; + $130 = HEAP32[$pSrc>>2]|0; + $131 = (($130) + 38|0); + $132 = HEAP16[$131>>1]|0; + $133 = $132 << 16 >> 16; + $134 = ($129|0)!=($133|0); + if ($134) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $135 = HEAP32[$2>>2]|0; + $136 = (($135) + 36|0); + $137 = HEAP16[$136>>1]|0; + $138 = $137 << 16 >> 16; + $139 = HEAP32[$pSrc>>2]|0; + $140 = (($139) + 36|0); + $141 = HEAP16[$140>>1]|0; + $142 = $141 << 16 >> 16; + $143 = ($138|0)!=($142|0); + if ($143) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + HEAP32[$i>>2] = 0; + L91: while(1) { + $144 = HEAP32[$i>>2]|0; + $145 = HEAP32[$2>>2]|0; + $146 = (($145) + 38|0); + $147 = HEAP16[$146>>1]|0; + $148 = $147 << 16 >> 16; + $149 = ($144|0)<($148|0); + if (!($149)) { + label = 64; + break; + } + $150 = HEAP32[$i>>2]|0; + $151 = HEAP32[$2>>2]|0; + $152 = (($151) + 4|0); + $153 = HEAP32[$152>>2]|0; + $154 = (($153) + (($150*24)|0)|0); + HEAP32[$pDestCol>>2] = $154; + $155 = HEAP32[$i>>2]|0; + $156 = HEAP32[$pSrc>>2]|0; + $157 = (($156) + 4|0); + $158 = HEAP32[$157>>2]|0; + $159 = (($158) + (($155*24)|0)|0); + HEAP32[$pSrcCol>>2] = $159; + $160 = HEAP32[$pDestCol>>2]|0; + $161 = (($160) + 21|0); + $162 = HEAP8[$161>>0]|0; + $163 = $162 << 24 >> 24; + $164 = HEAP32[$pSrcCol>>2]|0; + $165 = (($164) + 21|0); + $166 = HEAP8[$165>>0]|0; + $167 = $166 << 24 >> 24; + $168 = ($163|0)!=($167|0); + if ($168) { + label = 52; + break; + } + $169 = HEAP32[$pDestCol>>2]|0; + $170 = (($169) + 16|0); + $171 = HEAP32[$170>>2]|0; + $172 = HEAP32[$pSrcCol>>2]|0; + $173 = (($172) + 16|0); + $174 = HEAP32[$173>>2]|0; + $175 = (_xferCompatibleCollation($171,$174)|0); + $176 = ($175|0)!=(0); + if (!($176)) { + label = 54; + break; + } + $177 = HEAP32[$pDestCol>>2]|0; + $178 = (($177) + 20|0); + $179 = HEAP8[$178>>0]|0; + $180 = $179&255; + $181 = ($180|0)!=(0); + if ($181) { + $182 = HEAP32[$pSrcCol>>2]|0; + $183 = (($182) + 20|0); + $184 = HEAP8[$183>>0]|0; + $185 = ($184<<24>>24)!=(0); + if (!($185)) { + label = 57; + break; + } + } + $186 = HEAP32[$i>>2]|0; + $187 = ($186|0)>(0); + do { + if ($187) { + $188 = HEAP32[$pDestCol>>2]|0; + $189 = (($188) + 8|0); + $190 = HEAP32[$189>>2]|0; + $191 = ($190|0)==(0|0); + $192 = $191&1; + $193 = HEAP32[$pSrcCol>>2]|0; + $194 = (($193) + 8|0); + $195 = HEAP32[$194>>2]|0; + $196 = ($195|0)==(0|0); + $197 = $196&1; + $198 = ($192|0)!=($197|0); + if ($198) { + label = 62; + break L91; + } + $199 = HEAP32[$pDestCol>>2]|0; + $200 = (($199) + 8|0); + $201 = HEAP32[$200>>2]|0; + $202 = ($201|0)!=(0|0); + if (!($202)) { + break; + } + $203 = HEAP32[$pDestCol>>2]|0; + $204 = (($203) + 8|0); + $205 = HEAP32[$204>>2]|0; + $206 = HEAP32[$pSrcCol>>2]|0; + $207 = (($206) + 8|0); + $208 = HEAP32[$207>>2]|0; + $209 = (_strcmp($205,$208)|0); + $210 = ($209|0)!=(0); + if ($210) { + label = 62; + break L91; + } + } + } while(0); + $211 = HEAP32[$i>>2]|0; + $212 = (($211) + 1)|0; + HEAP32[$i>>2] = $212; + } + if ((label|0) == 52) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + else if ((label|0) == 54) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + else if ((label|0) == 57) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + else if ((label|0) == 62) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + else if ((label|0) == 64) { + $213 = HEAP32[$2>>2]|0; + $214 = (($213) + 8|0); + $215 = HEAP32[$214>>2]|0; + HEAP32[$pDestIdx>>2] = $215; + while(1) { + $216 = HEAP32[$pDestIdx>>2]|0; + $217 = ($216|0)!=(0|0); + if (!($217)) { + break; + } + $218 = HEAP32[$pDestIdx>>2]|0; + $219 = (($218) + 54|0); + $220 = HEAP8[$219>>0]|0; + $221 = $220&255; + $222 = ($221|0)!=(0); + if ($222) { + HEAP32[$destHasUniqueIdx>>2] = 1; + } + $223 = HEAP32[$pSrc>>2]|0; + $224 = (($223) + 8|0); + $225 = HEAP32[$224>>2]|0; + HEAP32[$pSrcIdx>>2] = $225; + while(1) { + $226 = HEAP32[$pSrcIdx>>2]|0; + $227 = ($226|0)!=(0|0); + if (!($227)) { + break; + } + $228 = HEAP32[$pDestIdx>>2]|0; + $229 = HEAP32[$pSrcIdx>>2]|0; + $230 = (_xferCompatibleIndex($228,$229)|0); + $231 = ($230|0)!=(0); + if ($231) { + break; + } + $232 = HEAP32[$pSrcIdx>>2]|0; + $233 = (($232) + 20|0); + $234 = HEAP32[$233>>2]|0; + HEAP32[$pSrcIdx>>2] = $234; + } + $235 = HEAP32[$pSrcIdx>>2]|0; + $236 = ($235|0)==(0|0); + if ($236) { + label = 73; + break; + } + $237 = HEAP32[$pDestIdx>>2]|0; + $238 = (($237) + 20|0); + $239 = HEAP32[$238>>2]|0; + HEAP32[$pDestIdx>>2] = $239; + } + if ((label|0) == 73) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $240 = HEAP32[$2>>2]|0; + $241 = (($240) + 24|0); + $242 = HEAP32[$241>>2]|0; + $243 = ($242|0)!=(0|0); + do { + if ($243) { + $244 = HEAP32[$pSrc>>2]|0; + $245 = (($244) + 24|0); + $246 = HEAP32[$245>>2]|0; + $247 = HEAP32[$2>>2]|0; + $248 = (($247) + 24|0); + $249 = HEAP32[$248>>2]|0; + $250 = (_sqlite3ExprListCompare($246,$249,-1)|0); + $251 = ($250|0)!=(0); + if (!($251)) { + break; + } + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + } while(0); + $252 = HEAP32[$1>>2]|0; + $253 = HEAP32[$252>>2]|0; + $254 = (($253) + 24|0); + $255 = HEAP32[$254>>2]|0; + $256 = $255 & 524288; + $257 = ($256|0)!=(0); + do { + if ($257) { + $258 = HEAP32[$2>>2]|0; + $259 = (($258) + 16|0); + $260 = HEAP32[$259>>2]|0; + $261 = ($260|0)!=(0|0); + if (!($261)) { + break; + } + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + } while(0); + $262 = HEAP32[$1>>2]|0; + $263 = HEAP32[$262>>2]|0; + $264 = (($263) + 24|0); + $265 = HEAP32[$264>>2]|0; + $266 = $265 & 128; + $267 = ($266|0)!=(0); + if ($267) { + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + $268 = HEAP32[$1>>2]|0; + $269 = HEAP32[$268>>2]|0; + $270 = HEAP32[$pSrc>>2]|0; + $271 = (($270) + 68|0); + $272 = HEAP32[$271>>2]|0; + $273 = (_sqlite3SchemaToIndex($269,$272)|0); + HEAP32[$iDbSrc>>2] = $273; + $274 = HEAP32[$1>>2]|0; + $275 = (_sqlite3GetVdbe($274)|0); + HEAP32[$v>>2] = $275; + $276 = HEAP32[$1>>2]|0; + $277 = HEAP32[$iDbSrc>>2]|0; + _sqlite3CodeVerifySchema($276,$277); + $278 = HEAP32[$1>>2]|0; + $279 = (($278) + 68|0); + $280 = HEAP32[$279>>2]|0; + $281 = (($280) + 1)|0; + HEAP32[$279>>2] = $281; + HEAP32[$iSrc>>2] = $280; + $282 = HEAP32[$1>>2]|0; + $283 = (($282) + 68|0); + $284 = HEAP32[$283>>2]|0; + $285 = (($284) + 1)|0; + HEAP32[$283>>2] = $285; + HEAP32[$iDest>>2] = $284; + $286 = HEAP32[$1>>2]|0; + $287 = HEAP32[$5>>2]|0; + $288 = HEAP32[$2>>2]|0; + $289 = (_autoIncBegin($286,$287,$288)|0); + HEAP32[$regAutoinc>>2] = $289; + $290 = HEAP32[$1>>2]|0; + $291 = (_sqlite3GetTempReg($290)|0); + HEAP32[$regData>>2] = $291; + $292 = HEAP32[$1>>2]|0; + $293 = (_sqlite3GetTempReg($292)|0); + HEAP32[$regRowid>>2] = $293; + $294 = HEAP32[$1>>2]|0; + $295 = HEAP32[$iDest>>2]|0; + $296 = HEAP32[$5>>2]|0; + $297 = HEAP32[$2>>2]|0; + _sqlite3OpenTable($294,$295,$296,$297,53); + $298 = HEAP32[$2>>2]|0; + $299 = (($298) + 36|0); + $300 = HEAP16[$299>>1]|0; + $301 = $300 << 16 >> 16; + $302 = ($301|0)<(0); + if ($302) { + $303 = HEAP32[$2>>2]|0; + $304 = (($303) + 8|0); + $305 = HEAP32[$304>>2]|0; + $306 = ($305|0)!=(0|0); + if ($306) { + label = 87; + } else { + label = 85; + } + } else { + label = 85; + } + do { + if ((label|0) == 85) { + $307 = HEAP32[$destHasUniqueIdx>>2]|0; + $308 = ($307|0)!=(0); + if ($308) { + label = 87; + break; + } + $309 = HEAP32[$4>>2]|0; + $310 = ($309|0)!=(2); + $311 = HEAP32[$4>>2]|0; + $312 = ($311|0)!=(1); + $or$cond = $310 & $312; + if ($or$cond) { + label = 87; + } + } + } while(0); + if ((label|0) == 87) { + $313 = HEAP32[$v>>2]|0; + $314 = HEAP32[$iDest>>2]|0; + $315 = (_sqlite3VdbeAddOp2($313,105,$314,0)|0); + HEAP32[$addr1>>2] = $315; + $316 = HEAP32[$v>>2]|0; + $317 = (_sqlite3VdbeAddOp2($316,16,0,0)|0); + HEAP32[$emptyDestTest>>2] = $317; + $318 = HEAP32[$v>>2]|0; + $319 = HEAP32[$addr1>>2]|0; + _sqlite3VdbeJumpHere($318,$319); + } + $320 = HEAP32[$pSrc>>2]|0; + $321 = (($320) + 44|0); + $322 = HEAP8[$321>>0]|0; + $323 = $322&255; + $324 = $323 & 32; + $325 = ($324|0)==(0); + $326 = HEAP32[$1>>2]|0; + if ($325) { + $327 = HEAP32[$iSrc>>2]|0; + $328 = HEAP32[$iDbSrc>>2]|0; + $329 = HEAP32[$pSrc>>2]|0; + _sqlite3OpenTable($326,$327,$328,$329,52); + $330 = HEAP32[$v>>2]|0; + $331 = HEAP32[$iSrc>>2]|0; + $332 = (_sqlite3VdbeAddOp2($330,105,$331,0)|0); + HEAP32[$emptySrcTest>>2] = $332; + $333 = HEAP32[$2>>2]|0; + $334 = (($333) + 36|0); + $335 = HEAP16[$334>>1]|0; + $336 = $335 << 16 >> 16; + $337 = ($336|0)>=(0); + do { + if ($337) { + $338 = HEAP32[$v>>2]|0; + $339 = HEAP32[$iSrc>>2]|0; + $340 = HEAP32[$regRowid>>2]|0; + $341 = (_sqlite3VdbeAddOp2($338,100,$339,$340)|0); + HEAP32[$addr1>>2] = $341; + $342 = HEAP32[$v>>2]|0; + $343 = HEAP32[$iDest>>2]|0; + $344 = HEAP32[$regRowid>>2]|0; + $345 = (_sqlite3VdbeAddOp3($342,67,$343,0,$344)|0); + HEAP32[$addr2>>2] = $345; + $346 = HEAP32[$1>>2]|0; + $347 = HEAP32[$4>>2]|0; + $348 = HEAP32[$2>>2]|0; + _sqlite3RowidConstraint($346,$347,$348); + $349 = HEAP32[$v>>2]|0; + $350 = HEAP32[$addr2>>2]|0; + _sqlite3VdbeJumpHere($349,$350); + $351 = HEAP32[$1>>2]|0; + $352 = HEAP32[$regAutoinc>>2]|0; + $353 = HEAP32[$regRowid>>2]|0; + _autoIncStep($351,$352,$353); + } else { + $354 = HEAP32[$2>>2]|0; + $355 = (($354) + 8|0); + $356 = HEAP32[$355>>2]|0; + $357 = ($356|0)==(0|0); + $358 = HEAP32[$v>>2]|0; + if ($357) { + $359 = HEAP32[$iDest>>2]|0; + $360 = HEAP32[$regRowid>>2]|0; + $361 = (_sqlite3VdbeAddOp2($358,69,$359,$360)|0); + HEAP32[$addr1>>2] = $361; + break; + } else { + $362 = HEAP32[$iSrc>>2]|0; + $363 = HEAP32[$regRowid>>2]|0; + $364 = (_sqlite3VdbeAddOp2($358,100,$362,$363)|0); + HEAP32[$addr1>>2] = $364; + break; + } + } + } while(0); + $365 = HEAP32[$v>>2]|0; + $366 = HEAP32[$iSrc>>2]|0; + $367 = HEAP32[$regData>>2]|0; + (_sqlite3VdbeAddOp2($365,99,$366,$367)|0); + $368 = HEAP32[$v>>2]|0; + $369 = HEAP32[$iDest>>2]|0; + $370 = HEAP32[$regData>>2]|0; + $371 = HEAP32[$regRowid>>2]|0; + (_sqlite3VdbeAddOp3($368,70,$369,$370,$371)|0); + $372 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($372,11); + $373 = HEAP32[$v>>2]|0; + $374 = HEAP32[$2>>2]|0; + $375 = HEAP32[$374>>2]|0; + _sqlite3VdbeChangeP4($373,-1,$375,0); + $376 = HEAP32[$v>>2]|0; + $377 = HEAP32[$iSrc>>2]|0; + $378 = HEAP32[$addr1>>2]|0; + (_sqlite3VdbeAddOp2($376,9,$377,$378)|0); + $379 = HEAP32[$v>>2]|0; + $380 = HEAP32[$iSrc>>2]|0; + (_sqlite3VdbeAddOp2($379,58,$380,0)|0); + $381 = HEAP32[$v>>2]|0; + $382 = HEAP32[$iDest>>2]|0; + (_sqlite3VdbeAddOp2($381,58,$382,0)|0); + } else { + $383 = HEAP32[$5>>2]|0; + $384 = HEAP32[$2>>2]|0; + $385 = (($384) + 32|0); + $386 = HEAP32[$385>>2]|0; + $387 = HEAP32[$2>>2]|0; + $388 = HEAP32[$387>>2]|0; + _sqlite3TableLock($326,$383,$386,1,$388); + $389 = HEAP32[$1>>2]|0; + $390 = HEAP32[$iDbSrc>>2]|0; + $391 = HEAP32[$pSrc>>2]|0; + $392 = (($391) + 32|0); + $393 = HEAP32[$392>>2]|0; + $394 = HEAP32[$pSrc>>2]|0; + $395 = HEAP32[$394>>2]|0; + _sqlite3TableLock($389,$390,$393,0,$395); + } + $396 = HEAP32[$2>>2]|0; + $397 = (($396) + 8|0); + $398 = HEAP32[$397>>2]|0; + HEAP32[$pDestIdx>>2] = $398; + while(1) { + $399 = HEAP32[$pDestIdx>>2]|0; + $400 = ($399|0)!=(0|0); + if (!($400)) { + break; + } + $401 = HEAP32[$pSrc>>2]|0; + $402 = (($401) + 8|0); + $403 = HEAP32[$402>>2]|0; + HEAP32[$pSrcIdx>>2] = $403; + while(1) { + $404 = HEAP32[$pSrcIdx>>2]|0; + $405 = ($404|0)!=(0|0); + if (!($405)) { + break; + } + $406 = HEAP32[$pDestIdx>>2]|0; + $407 = HEAP32[$pSrcIdx>>2]|0; + $408 = (_xferCompatibleIndex($406,$407)|0); + $409 = ($408|0)!=(0); + if ($409) { + break; + } + $410 = HEAP32[$pSrcIdx>>2]|0; + $411 = (($410) + 20|0); + $412 = HEAP32[$411>>2]|0; + HEAP32[$pSrcIdx>>2] = $412; + } + $413 = HEAP32[$v>>2]|0; + $414 = HEAP32[$iSrc>>2]|0; + $415 = HEAP32[$pSrcIdx>>2]|0; + $416 = (($415) + 44|0); + $417 = HEAP32[$416>>2]|0; + $418 = HEAP32[$iDbSrc>>2]|0; + (_sqlite3VdbeAddOp3($413,52,$414,$417,$418)|0); + $419 = HEAP32[$1>>2]|0; + $420 = HEAP32[$pSrcIdx>>2]|0; + _sqlite3VdbeSetP4KeyInfo($419,$420); + $421 = HEAP32[$v>>2]|0; + $422 = HEAP32[$iDest>>2]|0; + $423 = HEAP32[$pDestIdx>>2]|0; + $424 = (($423) + 44|0); + $425 = HEAP32[$424>>2]|0; + $426 = HEAP32[$5>>2]|0; + (_sqlite3VdbeAddOp3($421,53,$422,$425,$426)|0); + $427 = HEAP32[$1>>2]|0; + $428 = HEAP32[$pDestIdx>>2]|0; + _sqlite3VdbeSetP4KeyInfo($427,$428); + $429 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($429,1); + $430 = HEAP32[$v>>2]|0; + $431 = HEAP32[$iSrc>>2]|0; + $432 = (_sqlite3VdbeAddOp2($430,105,$431,0)|0); + HEAP32[$addr1>>2] = $432; + $433 = HEAP32[$v>>2]|0; + $434 = HEAP32[$iSrc>>2]|0; + $435 = HEAP32[$regData>>2]|0; + (_sqlite3VdbeAddOp2($433,98,$434,$435)|0); + $436 = HEAP32[$v>>2]|0; + $437 = HEAP32[$iDest>>2]|0; + $438 = HEAP32[$regData>>2]|0; + (_sqlite3VdbeAddOp3($436,107,$437,$438,1)|0); + $439 = HEAP32[$v>>2]|0; + $440 = HEAP32[$iSrc>>2]|0; + $441 = HEAP32[$addr1>>2]|0; + $442 = (($441) + 1)|0; + (_sqlite3VdbeAddOp2($439,9,$440,$442)|0); + $443 = HEAP32[$v>>2]|0; + $444 = HEAP32[$addr1>>2]|0; + _sqlite3VdbeJumpHere($443,$444); + $445 = HEAP32[$v>>2]|0; + $446 = HEAP32[$iSrc>>2]|0; + (_sqlite3VdbeAddOp2($445,58,$446,0)|0); + $447 = HEAP32[$v>>2]|0; + $448 = HEAP32[$iDest>>2]|0; + (_sqlite3VdbeAddOp2($447,58,$448,0)|0); + $449 = HEAP32[$pDestIdx>>2]|0; + $450 = (($449) + 20|0); + $451 = HEAP32[$450>>2]|0; + HEAP32[$pDestIdx>>2] = $451; + } + $452 = HEAP32[$emptySrcTest>>2]|0; + $453 = ($452|0)!=(0); + if ($453) { + $454 = HEAP32[$v>>2]|0; + $455 = HEAP32[$emptySrcTest>>2]|0; + _sqlite3VdbeJumpHere($454,$455); + } + $456 = HEAP32[$1>>2]|0; + $457 = HEAP32[$regRowid>>2]|0; + _sqlite3ReleaseTempReg($456,$457); + $458 = HEAP32[$1>>2]|0; + $459 = HEAP32[$regData>>2]|0; + _sqlite3ReleaseTempReg($458,$459); + $460 = HEAP32[$emptyDestTest>>2]|0; + $461 = ($460|0)!=(0); + if ($461) { + $462 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp2($462,24,0,0)|0); + $463 = HEAP32[$v>>2]|0; + $464 = HEAP32[$emptyDestTest>>2]|0; + _sqlite3VdbeJumpHere($463,$464); + $465 = HEAP32[$v>>2]|0; + $466 = HEAP32[$iDest>>2]|0; + (_sqlite3VdbeAddOp2($465,58,$466,0)|0); + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } else { + HEAP32[$0>>2] = 1; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); + } + } + } + } + HEAP32[$0>>2] = 0; + $467 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($467|0); +} +function _autoIncBegin($pParse,$iDb,$pTab) { + $pParse = $pParse|0; + $iDb = $iDb|0; + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $memId = 0, $pInfo = 0, $pToplevel = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $memId = sp + 12|0; + $pToplevel = sp + 16|0; + $pInfo = sp + 20|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $iDb; + HEAP32[$3>>2] = $pTab; + HEAP32[$memId>>2] = 0; + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 44|0); + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = $7 & 8; + $9 = ($8|0)!=(0); + if ($9) { + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 408|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)!=(0|0); + $14 = HEAP32[$1>>2]|0; + if ($13) { + $15 = (($14) + 408|0); + $16 = HEAP32[$15>>2]|0; + $17 = $16; + } else { + $17 = $14; + } + HEAP32[$pToplevel>>2] = $17; + $18 = HEAP32[$pToplevel>>2]|0; + $19 = (($18) + 404|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$pInfo>>2] = $20; + while(1) { + $21 = HEAP32[$pInfo>>2]|0; + $22 = ($21|0)!=(0|0); + if ($22) { + $23 = HEAP32[$pInfo>>2]|0; + $24 = (($23) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$3>>2]|0; + $27 = ($25|0)!=($26|0); + $68 = $27; + } else { + $68 = 0; + } + $28 = HEAP32[$pInfo>>2]|0; + if (!($68)) { + break; + } + $29 = HEAP32[$28>>2]|0; + HEAP32[$pInfo>>2] = $29; + } + $30 = ($28|0)==(0|0); + do { + if ($30) { + $31 = HEAP32[$1>>2]|0; + $32 = HEAP32[$31>>2]|0; + $33 = (_sqlite3DbMallocRaw($32,16)|0); + HEAP32[$pInfo>>2] = $33; + $34 = HEAP32[$pInfo>>2]|0; + $35 = ($34|0)==(0|0); + if (!($35)) { + $36 = HEAP32[$pToplevel>>2]|0; + $37 = (($36) + 404|0); + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$pInfo>>2]|0; + HEAP32[$39>>2] = $38; + $40 = HEAP32[$pInfo>>2]|0; + $41 = HEAP32[$pToplevel>>2]|0; + $42 = (($41) + 404|0); + HEAP32[$42>>2] = $40; + $43 = HEAP32[$3>>2]|0; + $44 = HEAP32[$pInfo>>2]|0; + $45 = (($44) + 4|0); + HEAP32[$45>>2] = $43; + $46 = HEAP32[$2>>2]|0; + $47 = HEAP32[$pInfo>>2]|0; + $48 = (($47) + 8|0); + HEAP32[$48>>2] = $46; + $49 = HEAP32[$pToplevel>>2]|0; + $50 = (($49) + 72|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + 1)|0; + HEAP32[$50>>2] = $52; + $53 = HEAP32[$pToplevel>>2]|0; + $54 = (($53) + 72|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + 1)|0; + HEAP32[$54>>2] = $56; + $57 = HEAP32[$pInfo>>2]|0; + $58 = (($57) + 12|0); + HEAP32[$58>>2] = $56; + $59 = HEAP32[$pToplevel>>2]|0; + $60 = (($59) + 72|0); + $61 = HEAP32[$60>>2]|0; + $62 = (($61) + 1)|0; + HEAP32[$60>>2] = $62; + break; + } + HEAP32[$0>>2] = 0; + $67 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($67|0); + } + } while(0); + $63 = HEAP32[$pInfo>>2]|0; + $64 = (($63) + 12|0); + $65 = HEAP32[$64>>2]|0; + HEAP32[$memId>>2] = $65; + } + $66 = HEAP32[$memId>>2]|0; + HEAP32[$0>>2] = $66; + $67 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($67|0); +} +function _readsTable($p,$iDb,$pTab) { + $p = $p|0; + $iDb = $iDb|0; + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $iEnd = 0, $pIndex = 0, $pOp = 0, $pVTab = 0, $tnum = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $v = sp + 24|0; + $i = sp + 20|0; + $iEnd = sp + 12|0; + $pVTab = sp + 8|0; + $pOp = sp + 4|0; + $pIndex = sp; + $tnum = sp + 16|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $iDb; + HEAP32[$3>>2] = $pTab; + $4 = HEAP32[$1>>2]|0; + $5 = (_sqlite3GetVdbe($4)|0); + HEAP32[$v>>2] = $5; + $6 = HEAP32[$v>>2]|0; + $7 = (_sqlite3VdbeCurrentAddr($6)|0); + HEAP32[$iEnd>>2] = $7; + $8 = HEAP32[$3>>2]|0; + $9 = (($8) + 44|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = $11 & 16; + $13 = ($12|0)!=(0); + if ($13) { + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$3>>2]|0; + $17 = (_sqlite3GetVTable($15,$16)|0); + $18 = $17; + } else { + $18 = 0; + } + HEAP32[$pVTab>>2] = $18; + HEAP32[$i>>2] = 1; + L4: while(1) { + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$iEnd>>2]|0; + $21 = ($19|0)<($20|0); + if (!($21)) { + label = 18; + break; + } + $22 = HEAP32[$v>>2]|0; + $23 = HEAP32[$i>>2]|0; + $24 = (_sqlite3VdbeGetOp($22,$23)|0); + HEAP32[$pOp>>2] = $24; + $25 = HEAP32[$pOp>>2]|0; + $26 = HEAP8[$25>>0]|0; + $27 = $26&255; + $28 = ($27|0)==(52); + L7: do { + if ($28) { + $29 = HEAP32[$pOp>>2]|0; + $30 = (($29) + 12|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$2>>2]|0; + $33 = ($31|0)==($32|0); + if ($33) { + $34 = HEAP32[$pOp>>2]|0; + $35 = (($34) + 8|0); + $36 = HEAP32[$35>>2]|0; + HEAP32[$tnum>>2] = $36; + $37 = HEAP32[$tnum>>2]|0; + $38 = HEAP32[$3>>2]|0; + $39 = (($38) + 32|0); + $40 = HEAP32[$39>>2]|0; + $41 = ($37|0)==($40|0); + if ($41) { + label = 8; + break L4; + } + $42 = HEAP32[$3>>2]|0; + $43 = (($42) + 8|0); + $44 = HEAP32[$43>>2]|0; + HEAP32[$pIndex>>2] = $44; + while(1) { + $45 = HEAP32[$pIndex>>2]|0; + $46 = ($45|0)!=(0|0); + if (!($46)) { + break L7; + } + $47 = HEAP32[$tnum>>2]|0; + $48 = HEAP32[$pIndex>>2]|0; + $49 = (($48) + 44|0); + $50 = HEAP32[$49>>2]|0; + $51 = ($47|0)==($50|0); + if ($51) { + label = 12; + break L4; + } + $52 = HEAP32[$pIndex>>2]|0; + $53 = (($52) + 20|0); + $54 = HEAP32[$53>>2]|0; + HEAP32[$pIndex>>2] = $54; + } + } + } + } while(0); + $55 = HEAP32[$pOp>>2]|0; + $56 = HEAP8[$55>>0]|0; + $57 = $56&255; + $58 = ($57|0)==(149); + if ($58) { + $59 = HEAP32[$pOp>>2]|0; + $60 = (($59) + 16|0); + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$pVTab>>2]|0; + $63 = ($61|0)==($62|0); + if ($63) { + label = 16; + break; + } + } + $64 = HEAP32[$i>>2]|0; + $65 = (($64) + 1)|0; + HEAP32[$i>>2] = $65; + } + if ((label|0) == 8) { + HEAP32[$0>>2] = 1; + $66 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($66|0); + } + else if ((label|0) == 12) { + HEAP32[$0>>2] = 1; + $66 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($66|0); + } + else if ((label|0) == 16) { + HEAP32[$0>>2] = 1; + $66 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($66|0); + } + else if ((label|0) == 18) { + HEAP32[$0>>2] = 0; + $66 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($66|0); + } + return 0|0; +} +function _sqlite3ExprCodeAndCache($pParse,$pExpr,$target) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + $target = $target|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iMem = 0, $v = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $v = sp + 8|0; + $iMem = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $target; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$v>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + _sqlite3ExprCode($6,$7,$8); + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 72|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + 1)|0; + HEAP32[$10>>2] = $12; + HEAP32[$iMem>>2] = $12; + $13 = HEAP32[$v>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$iMem>>2]|0; + (_sqlite3VdbeAddOp2($13,33,$14,$15)|0); + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$iMem>>2]|0; + _exprToRegister($16,$17); + STACKTOP = sp;return; +} +function _sqlite3TableAffinity($v,$pTab,$iReg) { + $v = $v|0; + $pTab = $pTab|0; + $iReg = $iReg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $zColAff = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + $zColAff = sp + 12|0; + $db = sp + 16|0; + HEAP32[$0>>2] = $v; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $iReg; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 20|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$zColAff>>2] = $5; + $6 = HEAP32[$zColAff>>2]|0; + $7 = ($6|0)==(0|0); + if ($7) { + $8 = HEAP32[$0>>2]|0; + $9 = (_sqlite3VdbeDb($8)|0); + HEAP32[$db>>2] = $9; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 38|0); + $12 = HEAP16[$11>>1]|0; + $13 = $12 << 16 >> 16; + $14 = (($13) + 1)|0; + $15 = (_sqlite3DbMallocRaw(0,$14)|0); + HEAP32[$zColAff>>2] = $15; + $16 = HEAP32[$zColAff>>2]|0; + $17 = ($16|0)!=(0|0); + if (!($17)) { + $18 = HEAP32[$db>>2]|0; + $19 = (($18) + 64|0); + HEAP8[$19>>0] = 1; + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $20 = HEAP32[$i>>2]|0; + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 38|0); + $23 = HEAP16[$22>>1]|0; + $24 = $23 << 16 >> 16; + $25 = ($20|0)<($24|0); + if (!($25)) { + break; + } + $26 = HEAP32[$i>>2]|0; + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 4|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + (($26*24)|0)|0); + $31 = (($30) + 21|0); + $32 = HEAP8[$31>>0]|0; + $33 = HEAP32[$i>>2]|0; + $34 = HEAP32[$zColAff>>2]|0; + $35 = (($34) + ($33)|0); + HEAP8[$35>>0] = $32; + $36 = HEAP32[$i>>2]|0; + $37 = (($36) + 1)|0; + HEAP32[$i>>2] = $37; + } + while(1) { + $38 = HEAP32[$i>>2]|0; + $39 = (($38) + -1)|0; + HEAP32[$i>>2] = $39; + $40 = HEAP32[$zColAff>>2]|0; + $41 = (($40) + ($38)|0); + HEAP8[$41>>0] = 0; + $42 = HEAP32[$i>>2]|0; + $43 = ($42|0)>=(0); + if (!($43)) { + break; + } + $44 = HEAP32[$i>>2]|0; + $45 = HEAP32[$zColAff>>2]|0; + $46 = (($45) + ($44)|0); + $47 = HEAP8[$46>>0]|0; + $48 = $47 << 24 >> 24; + $49 = ($48|0)==(98); + if (!($49)) { + break; + } + } + $50 = HEAP32[$zColAff>>2]|0; + $51 = HEAP32[$1>>2]|0; + $52 = (($51) + 20|0); + HEAP32[$52>>2] = $50; + } + $53 = HEAP32[$zColAff>>2]|0; + $54 = (_sqlite3Strlen30($53)|0); + HEAP32[$i>>2] = $54; + $55 = HEAP32[$i>>2]|0; + $56 = ($55|0)!=(0); + if (!($56)) { + STACKTOP = sp;return; + } + $57 = HEAP32[$2>>2]|0; + $58 = ($57|0)!=(0); + $59 = HEAP32[$0>>2]|0; + if ($58) { + $60 = HEAP32[$2>>2]|0; + $61 = HEAP32[$i>>2]|0; + $62 = HEAP32[$zColAff>>2]|0; + $63 = HEAP32[$i>>2]|0; + (_sqlite3VdbeAddOp4($59,47,$60,$61,0,$62,$63)|0); + STACKTOP = sp;return; + } else { + $64 = HEAP32[$zColAff>>2]|0; + $65 = HEAP32[$i>>2]|0; + _sqlite3VdbeChangeP4($59,-1,$64,$65); + STACKTOP = sp;return; + } +} +function _sqlite3CodeRowTrigger($pParse,$pTrigger,$op,$pChanges,$tr_tm,$pTab,$reg,$orconf,$ignoreJump) { + $pParse = $pParse|0; + $pTrigger = $pTrigger|0; + $op = $op|0; + $pChanges = $pChanges|0; + $tr_tm = $tr_tm|0; + $pTab = $pTab|0; + $reg = $reg|0; + $orconf = $orconf|0; + $ignoreJump = $ignoreJump|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 20|0; + $5 = sp + 16|0; + $6 = sp + 8|0; + $7 = sp + 4|0; + $8 = sp; + $p = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTrigger; + HEAP32[$2>>2] = $op; + HEAP32[$3>>2] = $pChanges; + HEAP32[$4>>2] = $tr_tm; + HEAP32[$5>>2] = $pTab; + HEAP32[$6>>2] = $reg; + HEAP32[$7>>2] = $orconf; + HEAP32[$8>>2] = $ignoreJump; + $9 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $9; + while(1) { + $10 = HEAP32[$p>>2]|0; + $11 = ($10|0)!=(0|0); + if (!($11)) { + break; + } + $12 = HEAP32[$p>>2]|0; + $13 = (($12) + 8|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = HEAP32[$2>>2]|0; + $17 = ($15|0)==($16|0); + if ($17) { + $18 = HEAP32[$p>>2]|0; + $19 = (($18) + 9|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = HEAP32[$4>>2]|0; + $23 = ($21|0)==($22|0); + if ($23) { + $24 = HEAP32[$p>>2]|0; + $25 = (($24) + 16|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$3>>2]|0; + $28 = (_checkColumnOverlap($26,$27)|0); + $29 = ($28|0)!=(0); + if ($29) { + $30 = HEAP32[$0>>2]|0; + $31 = HEAP32[$p>>2]|0; + $32 = HEAP32[$5>>2]|0; + $33 = HEAP32[$6>>2]|0; + $34 = HEAP32[$7>>2]|0; + $35 = HEAP32[$8>>2]|0; + _sqlite3CodeRowTriggerDirect($30,$31,$32,$33,$34,$35); + } + } + } + $36 = HEAP32[$p>>2]|0; + $37 = (($36) + 32|0); + $38 = HEAP32[$37>>2]|0; + HEAP32[$p>>2] = $38; + } + STACKTOP = sp;return; +} +function _autoIncStep($pParse,$memId,$regRowid) { + $pParse = $pParse|0; + $memId = $memId|0; + $regRowid = $regRowid|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $memId; + HEAP32[$2>>2] = $regRowid; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)>(0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 8|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp2($7,132,$8,$9)|0); + STACKTOP = sp;return; +} +function _sqlite3ExprCodeFactorable($pParse,$pExpr,$target) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + $target = $target|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pExpr; + HEAP32[$2>>2] = $target; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 23|0); + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = ($6|0)!=(0); + if ($7) { + $8 = HEAP32[$1>>2]|0; + $9 = (_sqlite3ExprIsConstant($8)|0); + $10 = ($9|0)!=(0); + if ($10) { + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$2>>2]|0; + _sqlite3ExprCodeAtInit($11,$12,$13,0); + STACKTOP = sp;return; + } + } + $14 = HEAP32[$0>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$2>>2]|0; + _sqlite3ExprCode($14,$15,$16); + STACKTOP = sp;return; +} +function _sqlite3VtabMakeWritable($pParse,$pTab) { + $pParse = $pParse|0; + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $apVtabLock = 0, $i = 0, $n = 0, $pToplevel = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $pToplevel = sp + 4|0; + $i = sp + 8|0; + $n = sp + 12|0; + $apVtabLock = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 408|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + $6 = HEAP32[$0>>2]|0; + if ($5) { + $7 = (($6) + 408|0); + $8 = HEAP32[$7>>2]|0; + $9 = $8; + } else { + $9 = $6; + } + HEAP32[$pToplevel>>2] = $9; + HEAP32[$i>>2] = 0; + while(1) { + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$pToplevel>>2]|0; + $12 = (($11) + 452|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($10|0)<($13|0); + if (!($14)) { + break; + } + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$i>>2]|0; + $17 = HEAP32[$pToplevel>>2]|0; + $18 = (($17) + 520|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + ($16<<2)|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($15|0)==($21|0); + if ($22) { + label = 10; + break; + } + $23 = HEAP32[$i>>2]|0; + $24 = (($23) + 1)|0; + HEAP32[$i>>2] = $24; + } + if ((label|0) == 10) { + STACKTOP = sp;return; + } + $25 = HEAP32[$pToplevel>>2]|0; + $26 = (($25) + 452|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + 1)|0; + $29 = $28<<2; + HEAP32[$n>>2] = $29; + $30 = HEAP32[$pToplevel>>2]|0; + $31 = (($30) + 520|0); + $32 = HEAP32[$31>>2]|0; + $33 = HEAP32[$n>>2]|0; + $34 = (_sqlite3_realloc($32,$33)|0); + HEAP32[$apVtabLock>>2] = $34; + $35 = HEAP32[$apVtabLock>>2]|0; + $36 = ($35|0)!=(0|0); + if ($36) { + $37 = HEAP32[$apVtabLock>>2]|0; + $38 = HEAP32[$pToplevel>>2]|0; + $39 = (($38) + 520|0); + HEAP32[$39>>2] = $37; + $40 = HEAP32[$1>>2]|0; + $41 = HEAP32[$pToplevel>>2]|0; + $42 = (($41) + 452|0); + $43 = HEAP32[$42>>2]|0; + $44 = (($43) + 1)|0; + HEAP32[$42>>2] = $44; + $45 = HEAP32[$pToplevel>>2]|0; + $46 = (($45) + 520|0); + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + ($43<<2)|0); + HEAP32[$48>>2] = $40; + STACKTOP = sp;return; + } else { + $49 = HEAP32[$pToplevel>>2]|0; + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + 64|0); + HEAP8[$51>>0] = 1; + STACKTOP = sp;return; + } +} +function _sqlite3GenerateConstraintChecks($pParse,$pTab,$aRegIdx,$iDataCur,$iIdxCur,$regNewData,$regOldData,$pkChng,$overrideError,$ignoreDest,$pbMayReplace) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $aRegIdx = $aRegIdx|0; + $iDataCur = $iDataCur|0; + $iIdxCur = $iIdxCur|0; + $regNewData = $regNewData|0; + $regOldData = $regOldData|0; + $pkChng = $pkChng|0; + $overrideError = $overrideError|0; + $ignoreDest = $ignoreDest|0; + $pbMayReplace = $pbMayReplace|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addrJump = 0; + var $addrRowidOk = 0, $addrUniqueOk = 0, $allOk = 0, $bAffinityDone = 0, $db = 0, $i = 0, $iField = 0, $iThisCur = 0, $ipkBottom = 0, $ipkTop = 0, $isUpdate = 0, $ix = 0, $j1 = 0, $nCol = 0, $nPkField = 0, $onError = 0, $op = 0, $p4 = 0, $pCheck = 0, $pIdx = 0; + var $pPk = 0, $pTrigger = 0, $pTrigger2 = 0, $regCmp = 0, $regIdx = 0, $regR = 0, $regRowid = 0, $seenReplace = 0, $v = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $x = 0, $x1 = 0, $zMsg = 0, $zName = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 176|0; + $vararg_buffer = sp; + $0 = sp + 136|0; + $1 = sp + 132|0; + $2 = sp + 128|0; + $3 = sp + 124|0; + $4 = sp + 120|0; + $5 = sp + 112|0; + $6 = sp + 108|0; + $7 = sp + 174|0; + $8 = sp + 175|0; + $9 = sp + 104|0; + $10 = sp + 116|0; + $v = sp + 144|0; + $pIdx = sp + 152|0; + $pPk = sp + 156|0; + $db = sp + 160|0; + $i = sp + 168|0; + $ix = sp + 164|0; + $nCol = sp + 148|0; + $onError = sp + 100|0; + $j1 = sp + 96|0; + $seenReplace = sp + 40|0; + $nPkField = sp + 48|0; + $ipkTop = sp + 140|0; + $ipkBottom = sp + 32|0; + $isUpdate = sp + 172|0; + $bAffinityDone = sp + 173|0; + $regRowid = sp + 28|0; + $zMsg = sp + 44|0; + $pCheck = sp + 16|0; + $allOk = sp + 12|0; + $zName = sp + 8|0; + $addrRowidOk = sp + 20|0; + $pTrigger = sp + 24|0; + $regIdx = sp + 92|0; + $regR = sp + 52|0; + $iThisCur = sp + 56|0; + $addrUniqueOk = sp + 60|0; + $iField = sp + 64|0; + $x = sp + 68|0; + $x1 = sp + 72|0; + $addrJump = sp + 76|0; + $op = sp + 80|0; + $regCmp = sp + 84|0; + $p4 = sp + 88|0; + $pTrigger2 = sp + 36|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $aRegIdx; + HEAP32[$3>>2] = $iDataCur; + HEAP32[$4>>2] = $iIdxCur; + HEAP32[$5>>2] = $regNewData; + HEAP32[$6>>2] = $regOldData; + HEAP8[$7>>0] = $pkChng; + HEAP8[$8>>0] = $overrideError; + HEAP32[$9>>2] = $ignoreDest; + HEAP32[$10>>2] = $pbMayReplace; + HEAP32[$pPk>>2] = 0; + HEAP32[$seenReplace>>2] = 0; + HEAP32[$ipkTop>>2] = 0; + HEAP32[$ipkBottom>>2] = 0; + HEAP8[$bAffinityDone>>0] = 0; + HEAP32[$regRowid>>2] = -1; + $11 = HEAP32[$6>>2]|0; + $12 = ($11|0)!=(0); + $13 = $12&1; + $14 = $13&255; + HEAP8[$isUpdate>>0] = $14; + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$15>>2]|0; + HEAP32[$db>>2] = $16; + $17 = HEAP32[$0>>2]|0; + $18 = (_sqlite3GetVdbe($17)|0); + HEAP32[$v>>2] = $18; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 38|0); + $21 = HEAP16[$20>>1]|0; + $22 = $21 << 16 >> 16; + HEAP32[$nCol>>2] = $22; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 44|0); + $25 = HEAP8[$24>>0]|0; + $26 = $25&255; + $27 = $26 & 32; + $28 = ($27|0)==(0); + if ($28) { + HEAP32[$pPk>>2] = 0; + HEAP32[$nPkField>>2] = 1; + } else { + $29 = HEAP32[$1>>2]|0; + $30 = (_sqlite3PrimaryKeyIndex($29)|0); + HEAP32[$pPk>>2] = $30; + $31 = HEAP32[$pPk>>2]|0; + $32 = (($31) + 50|0); + $33 = HEAP16[$32>>1]|0; + $34 = $33&65535; + HEAP32[$nPkField>>2] = $34; + } + HEAP32[$i>>2] = 0; + while(1) { + $35 = HEAP32[$i>>2]|0; + $36 = HEAP32[$nCol>>2]|0; + $37 = ($35|0)<($36|0); + if (!($37)) { + break; + } + $38 = HEAP32[$i>>2]|0; + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 36|0); + $41 = HEAP16[$40>>1]|0; + $42 = $41 << 16 >> 16; + $43 = ($38|0)==($42|0); + do { + if (!($43)) { + $44 = HEAP32[$i>>2]|0; + $45 = HEAP32[$1>>2]|0; + $46 = (($45) + 4|0); + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + (($44*24)|0)|0); + $49 = (($48) + 20|0); + $50 = HEAP8[$49>>0]|0; + $51 = $50&255; + HEAP32[$onError>>2] = $51; + $52 = HEAP32[$onError>>2]|0; + $53 = ($52|0)==(0); + if (!($53)) { + $54 = HEAP8[$8>>0]|0; + $55 = $54&255; + $56 = ($55|0)!=(10); + if ($56) { + $57 = HEAP8[$8>>0]|0; + $58 = $57&255; + HEAP32[$onError>>2] = $58; + } else { + $59 = HEAP32[$onError>>2]|0; + $60 = ($59|0)==(10); + if ($60) { + HEAP32[$onError>>2] = 2; + } + } + $61 = HEAP32[$onError>>2]|0; + $62 = ($61|0)==(5); + if ($62) { + $63 = HEAP32[$i>>2]|0; + $64 = HEAP32[$1>>2]|0; + $65 = (($64) + 4|0); + $66 = HEAP32[$65>>2]|0; + $67 = (($66) + (($63*24)|0)|0); + $68 = (($67) + 4|0); + $69 = HEAP32[$68>>2]|0; + $70 = ($69|0)==(0|0); + if ($70) { + HEAP32[$onError>>2] = 2; + } + } + $71 = HEAP32[$onError>>2]|0; + if ((($71|0) == 2)) { + $72 = HEAP32[$0>>2]|0; + _sqlite3MayAbort($72); + } else if ((($71|0) == 4)) { + $91 = HEAP32[$v>>2]|0; + $92 = HEAP32[$5>>2]|0; + $93 = (($92) + 1)|0; + $94 = HEAP32[$i>>2]|0; + $95 = (($93) + ($94))|0; + $96 = HEAP32[$9>>2]|0; + (_sqlite3VdbeAddOp2($91,76,$95,$96)|0); + break; + } else if (!((($71|0) == 3) | (($71|0) == 1))) { + $97 = HEAP32[$v>>2]|0; + $98 = HEAP32[$5>>2]|0; + $99 = (($98) + 1)|0; + $100 = HEAP32[$i>>2]|0; + $101 = (($99) + ($100))|0; + $102 = (_sqlite3VdbeAddOp1($97,77,$101)|0); + HEAP32[$j1>>2] = $102; + $103 = HEAP32[$0>>2]|0; + $104 = HEAP32[$i>>2]|0; + $105 = HEAP32[$1>>2]|0; + $106 = (($105) + 4|0); + $107 = HEAP32[$106>>2]|0; + $108 = (($107) + (($104*24)|0)|0); + $109 = (($108) + 4|0); + $110 = HEAP32[$109>>2]|0; + $111 = HEAP32[$5>>2]|0; + $112 = (($111) + 1)|0; + $113 = HEAP32[$i>>2]|0; + $114 = (($112) + ($113))|0; + _sqlite3ExprCode($103,$110,$114); + $115 = HEAP32[$v>>2]|0; + $116 = HEAP32[$j1>>2]|0; + _sqlite3VdbeJumpHere($115,$116); + break; + } + $73 = HEAP32[$db>>2]|0; + $74 = HEAP32[$1>>2]|0; + $75 = HEAP32[$74>>2]|0; + $76 = HEAP32[$i>>2]|0; + $77 = HEAP32[$1>>2]|0; + $78 = (($77) + 4|0); + $79 = HEAP32[$78>>2]|0; + $80 = (($79) + (($76*24)|0)|0); + $81 = HEAP32[$80>>2]|0; + HEAP32[$vararg_buffer>>2] = $75; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $81; + $82 = (_sqlite3MPrintf($73,23968,$vararg_buffer)|0); + HEAP32[$zMsg>>2] = $82; + $83 = HEAP32[$v>>2]|0; + $84 = HEAP32[$onError>>2]|0; + $85 = HEAP32[$5>>2]|0; + $86 = (($85) + 1)|0; + $87 = HEAP32[$i>>2]|0; + $88 = (($86) + ($87))|0; + $89 = HEAP32[$zMsg>>2]|0; + (_sqlite3VdbeAddOp4($83,23,1299,$84,$88,$89,-1)|0); + $90 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($90,1); + } + } + } while(0); + $117 = HEAP32[$i>>2]|0; + $118 = (($117) + 1)|0; + HEAP32[$i>>2] = $118; + } + $119 = HEAP32[$1>>2]|0; + $120 = (($119) + 24|0); + $121 = HEAP32[$120>>2]|0; + $122 = ($121|0)!=(0|0); + L27: do { + if ($122) { + $123 = HEAP32[$db>>2]|0; + $124 = (($123) + 24|0); + $125 = HEAP32[$124>>2]|0; + $126 = $125 & 8192; + $127 = ($126|0)==(0); + if ($127) { + $128 = HEAP32[$1>>2]|0; + $129 = (($128) + 24|0); + $130 = HEAP32[$129>>2]|0; + HEAP32[$pCheck>>2] = $130; + $131 = HEAP32[$5>>2]|0; + $132 = (($131) + 1)|0; + $133 = HEAP32[$0>>2]|0; + $134 = (($133) + 92|0); + HEAP32[$134>>2] = $132; + $135 = HEAP8[$8>>0]|0; + $136 = $135&255; + $137 = ($136|0)!=(10); + if ($137) { + $138 = HEAP8[$8>>0]|0; + $139 = $138&255; + $140 = $139; + } else { + $140 = 2; + } + HEAP32[$onError>>2] = $140; + HEAP32[$i>>2] = 0; + while(1) { + $141 = HEAP32[$i>>2]|0; + $142 = HEAP32[$pCheck>>2]|0; + $143 = HEAP32[$142>>2]|0; + $144 = ($141|0)<($143|0); + if (!($144)) { + break L27; + } + $145 = HEAP32[$v>>2]|0; + $146 = (_sqlite3VdbeMakeLabel($145)|0); + HEAP32[$allOk>>2] = $146; + $147 = HEAP32[$0>>2]|0; + $148 = HEAP32[$i>>2]|0; + $149 = HEAP32[$pCheck>>2]|0; + $150 = (($149) + 4|0); + $151 = HEAP32[$150>>2]|0; + $152 = (($151) + (($148*20)|0)|0); + $153 = HEAP32[$152>>2]|0; + $154 = HEAP32[$allOk>>2]|0; + _sqlite3ExprIfTrue($147,$153,$154,8); + $155 = HEAP32[$onError>>2]|0; + $156 = ($155|0)==(4); + if ($156) { + $157 = HEAP32[$v>>2]|0; + $158 = HEAP32[$9>>2]|0; + (_sqlite3VdbeAddOp2($157,16,0,$158)|0); + } else { + $159 = HEAP32[$i>>2]|0; + $160 = HEAP32[$pCheck>>2]|0; + $161 = (($160) + 4|0); + $162 = HEAP32[$161>>2]|0; + $163 = (($162) + (($159*20)|0)|0); + $164 = (($163) + 4|0); + $165 = HEAP32[$164>>2]|0; + HEAP32[$zName>>2] = $165; + $166 = HEAP32[$zName>>2]|0; + $167 = ($166|0)==(0|0); + if ($167) { + $168 = HEAP32[$1>>2]|0; + $169 = HEAP32[$168>>2]|0; + HEAP32[$zName>>2] = $169; + } + $170 = HEAP32[$onError>>2]|0; + $171 = ($170|0)==(5); + if ($171) { + HEAP32[$onError>>2] = 2; + } + $172 = HEAP32[$0>>2]|0; + $173 = HEAP32[$onError>>2]|0; + $174 = HEAP32[$zName>>2]|0; + _sqlite3HaltConstraint($172,275,$173,$174,0,3); + } + $175 = HEAP32[$v>>2]|0; + $176 = HEAP32[$allOk>>2]|0; + _sqlite3VdbeResolveLabel($175,$176); + $177 = HEAP32[$i>>2]|0; + $178 = (($177) + 1)|0; + HEAP32[$i>>2] = $178; + } + } + } + } while(0); + $179 = HEAP8[$7>>0]|0; + $180 = $179&255; + $181 = ($180|0)!=(0); + if ($181) { + $182 = HEAP32[$pPk>>2]|0; + $183 = ($182|0)==(0|0); + if ($183) { + $184 = HEAP32[$v>>2]|0; + $185 = (_sqlite3VdbeMakeLabel($184)|0); + HEAP32[$addrRowidOk>>2] = $185; + $186 = HEAP32[$1>>2]|0; + $187 = (($186) + 45|0); + $188 = HEAP8[$187>>0]|0; + $189 = $188&255; + HEAP32[$onError>>2] = $189; + $190 = HEAP8[$8>>0]|0; + $191 = $190&255; + $192 = ($191|0)!=(10); + if ($192) { + $193 = HEAP8[$8>>0]|0; + $194 = $193&255; + HEAP32[$onError>>2] = $194; + } else { + $195 = HEAP32[$onError>>2]|0; + $196 = ($195|0)==(10); + if ($196) { + HEAP32[$onError>>2] = 2; + } + } + $197 = HEAP8[$isUpdate>>0]|0; + $198 = ($197<<24>>24)!=(0); + if ($198) { + $199 = HEAP32[$v>>2]|0; + $200 = HEAP32[$5>>2]|0; + $201 = HEAP32[$addrRowidOk>>2]|0; + $202 = HEAP32[$6>>2]|0; + (_sqlite3VdbeAddOp3($199,79,$200,$201,$202)|0); + $203 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($203,-120); + } + $204 = HEAP32[$onError>>2]|0; + $205 = ($204|0)==(5); + L58: do { + if ($205) { + $206 = HEAP8[$8>>0]|0; + $207 = $206&255; + $208 = ($207|0)!=(5); + if ($208) { + $209 = HEAP32[$1>>2]|0; + $210 = (($209) + 8|0); + $211 = HEAP32[$210>>2]|0; + HEAP32[$pIdx>>2] = $211; + while(1) { + $212 = HEAP32[$pIdx>>2]|0; + $213 = ($212|0)!=(0|0); + if (!($213)) { + break L58; + } + $214 = HEAP32[$pIdx>>2]|0; + $215 = (($214) + 54|0); + $216 = HEAP8[$215>>0]|0; + $217 = $216&255; + $218 = ($217|0)==(4); + if ($218) { + break; + } + $219 = HEAP32[$pIdx>>2]|0; + $220 = (($219) + 54|0); + $221 = HEAP8[$220>>0]|0; + $222 = $221&255; + $223 = ($222|0)==(3); + if ($223) { + break; + } + $226 = HEAP32[$pIdx>>2]|0; + $227 = (($226) + 20|0); + $228 = HEAP32[$227>>2]|0; + HEAP32[$pIdx>>2] = $228; + } + $224 = HEAP32[$v>>2]|0; + $225 = (_sqlite3VdbeAddOp0($224,16)|0); + HEAP32[$ipkTop>>2] = $225; + } + } + } while(0); + $229 = HEAP32[$v>>2]|0; + $230 = HEAP32[$3>>2]|0; + $231 = HEAP32[$addrRowidOk>>2]|0; + $232 = HEAP32[$5>>2]|0; + (_sqlite3VdbeAddOp3($229,67,$230,$231,$232)|0); + $233 = HEAP32[$onError>>2]|0; + switch ($233|0) { + case 3: case 2: case 1: { + label = 53; + break; + } + case 5: { + HEAP32[$pTrigger>>2] = 0; + $237 = HEAP32[$db>>2]|0; + $238 = (($237) + 24|0); + $239 = HEAP32[$238>>2]|0; + $240 = $239 & 262144; + $241 = ($240|0)!=(0); + if ($241) { + $242 = HEAP32[$0>>2]|0; + $243 = HEAP32[$1>>2]|0; + $244 = (_sqlite3TriggersExist($242,$243,109,0,0)|0); + HEAP32[$pTrigger>>2] = $244; + } + $245 = HEAP32[$pTrigger>>2]|0; + $246 = ($245|0)!=(0|0); + if ($246) { + label = 58; + } else { + $247 = HEAP32[$0>>2]|0; + $248 = HEAP32[$1>>2]|0; + $249 = (_sqlite3FkRequired($247,$248,0,0)|0); + $250 = ($249|0)!=(0); + if ($250) { + label = 58; + } else { + $258 = HEAP32[$1>>2]|0; + $259 = (($258) + 8|0); + $260 = HEAP32[$259>>2]|0; + $261 = ($260|0)!=(0|0); + if ($261) { + $262 = HEAP32[$0>>2]|0; + _sqlite3MultiWrite($262); + $263 = HEAP32[$0>>2]|0; + $264 = HEAP32[$1>>2]|0; + $265 = HEAP32[$3>>2]|0; + $266 = HEAP32[$4>>2]|0; + _sqlite3GenerateRowIndexDelete($263,$264,$265,$266,0); + } + } + } + if ((label|0) == 58) { + $251 = HEAP32[$0>>2]|0; + _sqlite3MultiWrite($251); + $252 = HEAP32[$0>>2]|0; + $253 = HEAP32[$1>>2]|0; + $254 = HEAP32[$pTrigger>>2]|0; + $255 = HEAP32[$3>>2]|0; + $256 = HEAP32[$4>>2]|0; + $257 = HEAP32[$5>>2]|0; + _sqlite3GenerateRowDelete($252,$253,$254,$255,$256,$257,1,0,5,1); + } + HEAP32[$seenReplace>>2] = 1; + break; + } + case 4: { + $267 = HEAP32[$v>>2]|0; + $268 = HEAP32[$9>>2]|0; + (_sqlite3VdbeAddOp2($267,16,0,$268)|0); + break; + } + default: { + HEAP32[$onError>>2] = 2; + label = 53; + } + } + if ((label|0) == 53) { + $234 = HEAP32[$0>>2]|0; + $235 = HEAP32[$onError>>2]|0; + $236 = HEAP32[$1>>2]|0; + _sqlite3RowidConstraint($234,$235,$236); + } + $269 = HEAP32[$v>>2]|0; + $270 = HEAP32[$addrRowidOk>>2]|0; + _sqlite3VdbeResolveLabel($269,$270); + $271 = HEAP32[$ipkTop>>2]|0; + $272 = ($271|0)!=(0); + if ($272) { + $273 = HEAP32[$v>>2]|0; + $274 = (_sqlite3VdbeAddOp0($273,16)|0); + HEAP32[$ipkBottom>>2] = $274; + $275 = HEAP32[$v>>2]|0; + $276 = HEAP32[$ipkTop>>2]|0; + _sqlite3VdbeJumpHere($275,$276); + } + } + } + HEAP32[$ix>>2] = 0; + $277 = HEAP32[$1>>2]|0; + $278 = (($277) + 8|0); + $279 = HEAP32[$278>>2]|0; + HEAP32[$pIdx>>2] = $279; + while(1) { + $280 = HEAP32[$pIdx>>2]|0; + $281 = ($280|0)!=(0|0); + if (!($281)) { + break; + } + $282 = HEAP32[$ix>>2]|0; + $283 = HEAP32[$2>>2]|0; + $284 = (($283) + ($282<<2)|0); + $285 = HEAP32[$284>>2]|0; + $286 = ($285|0)==(0); + do { + if (!($286)) { + $287 = HEAP8[$bAffinityDone>>0]|0; + $288 = $287&255; + $289 = ($288|0)==(0); + if ($289) { + $290 = HEAP32[$v>>2]|0; + $291 = HEAP32[$1>>2]|0; + $292 = HEAP32[$5>>2]|0; + $293 = (($292) + 1)|0; + _sqlite3TableAffinity($290,$291,$293); + HEAP8[$bAffinityDone>>0] = 1; + } + $294 = HEAP32[$4>>2]|0; + $295 = HEAP32[$ix>>2]|0; + $296 = (($294) + ($295))|0; + HEAP32[$iThisCur>>2] = $296; + $297 = HEAP32[$v>>2]|0; + $298 = (_sqlite3VdbeMakeLabel($297)|0); + HEAP32[$addrUniqueOk>>2] = $298; + $299 = HEAP32[$pIdx>>2]|0; + $300 = (($299) + 36|0); + $301 = HEAP32[$300>>2]|0; + $302 = ($301|0)!=(0|0); + if ($302) { + $303 = HEAP32[$v>>2]|0; + $304 = HEAP32[$ix>>2]|0; + $305 = HEAP32[$2>>2]|0; + $306 = (($305) + ($304<<2)|0); + $307 = HEAP32[$306>>2]|0; + (_sqlite3VdbeAddOp2($303,28,0,$307)|0); + $308 = HEAP32[$5>>2]|0; + $309 = (($308) + 1)|0; + $310 = HEAP32[$0>>2]|0; + $311 = (($310) + 92|0); + HEAP32[$311>>2] = $309; + $312 = HEAP32[$0>>2]|0; + $313 = HEAP32[$pIdx>>2]|0; + $314 = (($313) + 36|0); + $315 = HEAP32[$314>>2]|0; + $316 = HEAP32[$addrUniqueOk>>2]|0; + _sqlite3ExprIfFalse($312,$315,$316,8); + $317 = HEAP32[$0>>2]|0; + $318 = (($317) + 92|0); + HEAP32[$318>>2] = 0; + } + $319 = HEAP32[$0>>2]|0; + $320 = HEAP32[$pIdx>>2]|0; + $321 = (($320) + 52|0); + $322 = HEAP16[$321>>1]|0; + $323 = $322&65535; + $324 = (_sqlite3GetTempRange($319,$323)|0); + HEAP32[$regIdx>>2] = $324; + HEAP32[$i>>2] = 0; + while(1) { + $325 = HEAP32[$i>>2]|0; + $326 = HEAP32[$pIdx>>2]|0; + $327 = (($326) + 52|0); + $328 = HEAP16[$327>>1]|0; + $329 = $328&65535; + $330 = ($325|0)<($329|0); + if (!($330)) { + break; + } + $331 = HEAP32[$i>>2]|0; + $332 = HEAP32[$pIdx>>2]|0; + $333 = (($332) + 4|0); + $334 = HEAP32[$333>>2]|0; + $335 = (($334) + ($331<<1)|0); + $336 = HEAP16[$335>>1]|0; + $337 = $336 << 16 >> 16; + HEAP32[$iField>>2] = $337; + $338 = HEAP32[$iField>>2]|0; + $339 = ($338|0)<(0); + if ($339) { + label = 76; + } else { + $340 = HEAP32[$iField>>2]|0; + $341 = HEAP32[$1>>2]|0; + $342 = (($341) + 36|0); + $343 = HEAP16[$342>>1]|0; + $344 = $343 << 16 >> 16; + $345 = ($340|0)==($344|0); + if ($345) { + label = 76; + } else { + $360 = HEAP32[$iField>>2]|0; + $361 = HEAP32[$5>>2]|0; + $362 = (($360) + ($361))|0; + $363 = (($362) + 1)|0; + HEAP32[$x>>2] = $363; + label = 81; + } + } + if ((label|0) == 76) { + label = 0; + $346 = HEAP32[$regRowid>>2]|0; + $347 = HEAP32[$regIdx>>2]|0; + $348 = HEAP32[$i>>2]|0; + $349 = (($347) + ($348))|0; + $350 = ($346|0)==($349|0); + if (!($350)) { + $351 = HEAP32[$5>>2]|0; + HEAP32[$x>>2] = $351; + $352 = HEAP32[$pIdx>>2]|0; + $353 = (($352) + 36|0); + $354 = HEAP32[$353>>2]|0; + $355 = ($354|0)!=(0|0); + if ($355) { + $359 = -1; + } else { + $356 = HEAP32[$regIdx>>2]|0; + $357 = HEAP32[$i>>2]|0; + $358 = (($356) + ($357))|0; + $359 = $358; + } + HEAP32[$regRowid>>2] = $359; + label = 81; + } + } + if ((label|0) == 81) { + label = 0; + $364 = HEAP32[$v>>2]|0; + $365 = HEAP32[$x>>2]|0; + $366 = HEAP32[$regIdx>>2]|0; + $367 = HEAP32[$i>>2]|0; + $368 = (($366) + ($367))|0; + (_sqlite3VdbeAddOp2($364,34,$365,$368)|0); + } + $369 = HEAP32[$i>>2]|0; + $370 = (($369) + 1)|0; + HEAP32[$i>>2] = $370; + } + $371 = HEAP32[$v>>2]|0; + $372 = HEAP32[$regIdx>>2]|0; + $373 = HEAP32[$pIdx>>2]|0; + $374 = (($373) + 52|0); + $375 = HEAP16[$374>>1]|0; + $376 = $375&65535; + $377 = HEAP32[$ix>>2]|0; + $378 = HEAP32[$2>>2]|0; + $379 = (($378) + ($377<<2)|0); + $380 = HEAP32[$379>>2]|0; + (_sqlite3VdbeAddOp3($371,48,$372,$376,$380)|0); + $381 = HEAP32[$0>>2]|0; + $382 = HEAP32[$regIdx>>2]|0; + $383 = HEAP32[$pIdx>>2]|0; + $384 = (($383) + 52|0); + $385 = HEAP16[$384>>1]|0; + $386 = $385&65535; + _sqlite3ExprCacheAffinityChange($381,$382,$386); + $387 = HEAP8[$isUpdate>>0]|0; + $388 = $387&255; + $389 = ($388|0)!=(0); + if ($389) { + $390 = HEAP32[$pPk>>2]|0; + $391 = HEAP32[$pIdx>>2]|0; + $392 = ($390|0)==($391|0); + if ($392) { + $393 = HEAP8[$7>>0]|0; + $394 = $393&255; + $395 = ($394|0)==(0); + if ($395) { + $396 = HEAP32[$v>>2]|0; + $397 = HEAP32[$addrUniqueOk>>2]|0; + _sqlite3VdbeResolveLabel($396,$397); + break; + } + } + } + $398 = HEAP32[$pIdx>>2]|0; + $399 = (($398) + 54|0); + $400 = HEAP8[$399>>0]|0; + $401 = $400&255; + HEAP32[$onError>>2] = $401; + $402 = HEAP32[$onError>>2]|0; + $403 = ($402|0)==(0); + if ($403) { + $404 = HEAP32[$0>>2]|0; + $405 = HEAP32[$regIdx>>2]|0; + $406 = HEAP32[$pIdx>>2]|0; + $407 = (($406) + 52|0); + $408 = HEAP16[$407>>1]|0; + $409 = $408&65535; + _sqlite3ReleaseTempRange($404,$405,$409); + $410 = HEAP32[$v>>2]|0; + $411 = HEAP32[$addrUniqueOk>>2]|0; + _sqlite3VdbeResolveLabel($410,$411); + break; + } + $412 = HEAP8[$8>>0]|0; + $413 = $412&255; + $414 = ($413|0)!=(10); + if ($414) { + $415 = HEAP8[$8>>0]|0; + $416 = $415&255; + HEAP32[$onError>>2] = $416; + } else { + $417 = HEAP32[$onError>>2]|0; + $418 = ($417|0)==(10); + if ($418) { + HEAP32[$onError>>2] = 2; + } + } + $419 = HEAP32[$v>>2]|0; + $420 = HEAP32[$iThisCur>>2]|0; + $421 = HEAP32[$addrUniqueOk>>2]|0; + $422 = HEAP32[$regIdx>>2]|0; + $423 = HEAP32[$pIdx>>2]|0; + $424 = (($423) + 50|0); + $425 = HEAP16[$424>>1]|0; + $426 = $425&65535; + (_sqlite3VdbeAddOp4Int($419,64,$420,$421,$422,$426)|0); + $427 = HEAP32[$pIdx>>2]|0; + $428 = HEAP32[$pPk>>2]|0; + $429 = ($427|0)==($428|0); + if ($429) { + $430 = HEAP32[$regIdx>>2]|0; + $434 = $430; + } else { + $431 = HEAP32[$0>>2]|0; + $432 = HEAP32[$nPkField>>2]|0; + $433 = (_sqlite3GetTempRange($431,$432)|0); + $434 = $433; + } + HEAP32[$regR>>2] = $434; + $435 = HEAP8[$isUpdate>>0]|0; + $436 = $435&255; + $437 = ($436|0)!=(0); + if ($437) { + label = 98; + } else { + $438 = HEAP32[$onError>>2]|0; + $439 = ($438|0)==(5); + if ($439) { + label = 98; + } + } + L133: do { + if ((label|0) == 98) { + label = 0; + $440 = HEAP32[$1>>2]|0; + $441 = (($440) + 44|0); + $442 = HEAP8[$441>>0]|0; + $443 = $442&255; + $444 = $443 & 32; + $445 = ($444|0)==(0); + if ($445) { + $446 = HEAP32[$v>>2]|0; + $447 = HEAP32[$iThisCur>>2]|0; + $448 = HEAP32[$regR>>2]|0; + (_sqlite3VdbeAddOp2($446,109,$447,$448)|0); + $449 = HEAP8[$isUpdate>>0]|0; + $450 = ($449<<24>>24)!=(0); + if (!($450)) { + break; + } + $451 = HEAP32[$v>>2]|0; + $452 = HEAP32[$regR>>2]|0; + $453 = HEAP32[$addrUniqueOk>>2]|0; + $454 = HEAP32[$6>>2]|0; + (_sqlite3VdbeAddOp3($451,79,$452,$453,$454)|0); + $455 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($455,-120); + break; + } + $456 = HEAP32[$pIdx>>2]|0; + $457 = HEAP32[$pPk>>2]|0; + $458 = ($456|0)!=($457|0); + L139: do { + if ($458) { + HEAP32[$i>>2] = 0; + while(1) { + $459 = HEAP32[$i>>2]|0; + $460 = HEAP32[$pPk>>2]|0; + $461 = (($460) + 50|0); + $462 = HEAP16[$461>>1]|0; + $463 = $462&65535; + $464 = ($459|0)<($463|0); + if (!($464)) { + break L139; + } + $465 = HEAP32[$pIdx>>2]|0; + $466 = HEAP32[$i>>2]|0; + $467 = HEAP32[$pPk>>2]|0; + $468 = (($467) + 4|0); + $469 = HEAP32[$468>>2]|0; + $470 = (($469) + ($466<<1)|0); + $471 = HEAP16[$470>>1]|0; + $472 = (_sqlite3ColumnOfIndex($465,$471)|0); + $473 = $472 << 16 >> 16; + HEAP32[$x1>>2] = $473; + $474 = HEAP32[$v>>2]|0; + $475 = HEAP32[$iThisCur>>2]|0; + $476 = HEAP32[$x1>>2]|0; + $477 = HEAP32[$regR>>2]|0; + $478 = HEAP32[$i>>2]|0; + $479 = (($477) + ($478))|0; + (_sqlite3VdbeAddOp3($474,46,$475,$476,$479)|0); + $480 = HEAP32[$i>>2]|0; + $481 = (($480) + 1)|0; + HEAP32[$i>>2] = $481; + } + } + } while(0); + $482 = HEAP8[$isUpdate>>0]|0; + $483 = ($482<<24>>24)!=(0); + if ($483) { + $484 = HEAP32[$v>>2]|0; + $485 = (_sqlite3VdbeCurrentAddr($484)|0); + $486 = HEAP32[$pPk>>2]|0; + $487 = (($486) + 50|0); + $488 = HEAP16[$487>>1]|0; + $489 = $488&65535; + $490 = (($485) + ($489))|0; + HEAP32[$addrJump>>2] = $490; + HEAP32[$op>>2] = 78; + $491 = HEAP32[$pIdx>>2]|0; + $492 = (($491) + 55|0); + $493 = HEAP8[$492>>0]|0; + $494 = $493 & 3; + $495 = $494&255; + $496 = ($495|0)==(2); + $497 = HEAP32[$regIdx>>2]|0; + $498 = HEAP32[$regR>>2]|0; + $499 = $496 ? $497 : $498; + HEAP32[$regCmp>>2] = $499; + HEAP32[$i>>2] = 0; + while(1) { + $500 = HEAP32[$i>>2]|0; + $501 = HEAP32[$pPk>>2]|0; + $502 = (($501) + 50|0); + $503 = HEAP16[$502>>1]|0; + $504 = $503&65535; + $505 = ($500|0)<($504|0); + if (!($505)) { + break L133; + } + $506 = HEAP32[$0>>2]|0; + $507 = HEAP32[$i>>2]|0; + $508 = HEAP32[$pPk>>2]|0; + $509 = (($508) + 32|0); + $510 = HEAP32[$509>>2]|0; + $511 = (($510) + ($507<<2)|0); + $512 = HEAP32[$511>>2]|0; + $513 = (_sqlite3LocateCollSeq($506,$512)|0); + HEAP32[$p4>>2] = $513; + $514 = HEAP32[$i>>2]|0; + $515 = HEAP32[$pPk>>2]|0; + $516 = (($515) + 4|0); + $517 = HEAP32[$516>>2]|0; + $518 = (($517) + ($514<<1)|0); + $519 = HEAP16[$518>>1]|0; + $520 = $519 << 16 >> 16; + HEAP32[$x1>>2] = $520; + $521 = HEAP32[$i>>2]|0; + $522 = HEAP32[$pPk>>2]|0; + $523 = (($522) + 50|0); + $524 = HEAP16[$523>>1]|0; + $525 = $524&65535; + $526 = (($525) - 1)|0; + $527 = ($521|0)==($526|0); + if ($527) { + $528 = HEAP32[$addrUniqueOk>>2]|0; + HEAP32[$addrJump>>2] = $528; + HEAP32[$op>>2] = 79; + } + $529 = HEAP32[$v>>2]|0; + $530 = HEAP32[$op>>2]|0; + $531 = HEAP32[$6>>2]|0; + $532 = (($531) + 1)|0; + $533 = HEAP32[$x1>>2]|0; + $534 = (($532) + ($533))|0; + $535 = HEAP32[$addrJump>>2]|0; + $536 = HEAP32[$regCmp>>2]|0; + $537 = HEAP32[$i>>2]|0; + $538 = (($536) + ($537))|0; + $539 = HEAP32[$p4>>2]|0; + (_sqlite3VdbeAddOp4($529,$530,$534,$535,$538,$539,-4)|0); + $540 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($540,-120); + $541 = HEAP32[$i>>2]|0; + $542 = (($541) + 1)|0; + HEAP32[$i>>2] = $542; + } + } + } + } while(0); + $543 = HEAP32[$onError>>2]|0; + if ((($543|0) == 4)) { + $547 = HEAP32[$v>>2]|0; + $548 = HEAP32[$9>>2]|0; + (_sqlite3VdbeAddOp2($547,16,0,$548)|0); + } else if ((($543|0) == 3) | (($543|0) == 2) | (($543|0) == 1)) { + $544 = HEAP32[$0>>2]|0; + $545 = HEAP32[$onError>>2]|0; + $546 = HEAP32[$pIdx>>2]|0; + _sqlite3UniqueConstraint($544,$545,$546); + } else { + HEAP32[$pTrigger2>>2] = 0; + $549 = HEAP32[$0>>2]|0; + _sqlite3MultiWrite($549); + $550 = HEAP32[$db>>2]|0; + $551 = (($550) + 24|0); + $552 = HEAP32[$551>>2]|0; + $553 = $552 & 262144; + $554 = ($553|0)!=(0); + if ($554) { + $555 = HEAP32[$0>>2]|0; + $556 = HEAP32[$1>>2]|0; + $557 = (_sqlite3TriggersExist($555,$556,109,0,0)|0); + HEAP32[$pTrigger2>>2] = $557; + } + $558 = HEAP32[$0>>2]|0; + $559 = HEAP32[$1>>2]|0; + $560 = HEAP32[$pTrigger2>>2]|0; + $561 = HEAP32[$3>>2]|0; + $562 = HEAP32[$4>>2]|0; + $563 = HEAP32[$regR>>2]|0; + $564 = HEAP32[$nPkField>>2]|0; + $565 = $564&65535; + $566 = HEAP32[$pIdx>>2]|0; + $567 = HEAP32[$pPk>>2]|0; + $568 = ($566|0)==($567|0); + $569 = $568&1; + $570 = $569&255; + _sqlite3GenerateRowDelete($558,$559,$560,$561,$562,$563,$565,0,5,$570); + HEAP32[$seenReplace>>2] = 1; + } + $571 = HEAP32[$v>>2]|0; + $572 = HEAP32[$addrUniqueOk>>2]|0; + _sqlite3VdbeResolveLabel($571,$572); + $573 = HEAP32[$0>>2]|0; + $574 = HEAP32[$regIdx>>2]|0; + $575 = HEAP32[$pIdx>>2]|0; + $576 = (($575) + 52|0); + $577 = HEAP16[$576>>1]|0; + $578 = $577&65535; + _sqlite3ReleaseTempRange($573,$574,$578); + $579 = HEAP32[$regR>>2]|0; + $580 = HEAP32[$regIdx>>2]|0; + $581 = ($579|0)!=($580|0); + if ($581) { + $582 = HEAP32[$0>>2]|0; + $583 = HEAP32[$regR>>2]|0; + $584 = HEAP32[$nPkField>>2]|0; + _sqlite3ReleaseTempRange($582,$583,$584); + } + } + } while(0); + $585 = HEAP32[$pIdx>>2]|0; + $586 = (($585) + 20|0); + $587 = HEAP32[$586>>2]|0; + HEAP32[$pIdx>>2] = $587; + $588 = HEAP32[$ix>>2]|0; + $589 = (($588) + 1)|0; + HEAP32[$ix>>2] = $589; + } + $590 = HEAP32[$ipkTop>>2]|0; + $591 = ($590|0)!=(0); + if (!($591)) { + $597 = HEAP32[$seenReplace>>2]|0; + $598 = HEAP32[$10>>2]|0; + HEAP32[$598>>2] = $597; + STACKTOP = sp;return; + } + $592 = HEAP32[$v>>2]|0; + $593 = HEAP32[$ipkTop>>2]|0; + $594 = (($593) + 1)|0; + (_sqlite3VdbeAddOp2($592,16,0,$594)|0); + $595 = HEAP32[$v>>2]|0; + $596 = HEAP32[$ipkBottom>>2]|0; + _sqlite3VdbeJumpHere($595,$596); + $597 = HEAP32[$seenReplace>>2]|0; + $598 = HEAP32[$10>>2]|0; + HEAP32[$598>>2] = $597; + STACKTOP = sp;return; +} +function _sqlite3FkCheck($pParse,$pTab,$regOld,$regNew,$aChange,$bChngRowid) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $regOld = $regOld|0; + $regNew = $regNew|0; + $aChange = $aChange|0; + $bChngRowid = $bChngRowid|0; + var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; + var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; + var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; + var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; + var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; + var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; + var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; + var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; + var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; + var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; + var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0; + var $296 = 0, $297 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aiCol = 0; + var $aiCol2 = 0, $aiFree = 0, $db = 0, $i = 0, $iCol = 0, $iDb = 0, $iJump = 0, $iReg = 0, $isIgnore = 0, $isIgnoreErrors = 0, $pFKey = 0, $pIdx = 0, $pIdx1 = 0, $pItem = 0, $pSrc = 0, $pTo = 0, $rcauth = 0, $v = 0, $zCol = 0, $zDb = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $0 = sp + 104|0; + $1 = sp + 100|0; + $2 = sp + 96|0; + $3 = sp + 92|0; + $4 = sp + 88|0; + $5 = sp + 84|0; + $db = sp + 80|0; + $pFKey = sp + 76|0; + $iDb = sp + 72|0; + $zDb = sp + 68|0; + $isIgnoreErrors = sp + 64|0; + $pTo = sp + 60|0; + $pIdx = sp + 56|0; + $aiFree = sp + 52|0; + $aiCol = sp + 20|0; + $iCol = sp; + $i = sp + 4|0; + $isIgnore = sp + 8|0; + $v = sp + 12|0; + $iJump = sp + 16|0; + $iReg = sp + 24|0; + $rcauth = sp + 28|0; + $zCol = sp + 32|0; + $pIdx1 = sp + 36|0; + $pSrc = sp + 40|0; + $aiCol2 = sp + 44|0; + $pItem = sp + 48|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $regOld; + HEAP32[$3>>2] = $regNew; + HEAP32[$4>>2] = $aChange; + HEAP32[$5>>2] = $bChngRowid; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$db>>2] = $7; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 438|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + HEAP32[$isIgnoreErrors>>2] = $11; + $12 = HEAP32[$db>>2]|0; + $13 = (($12) + 24|0); + $14 = HEAP32[$13>>2]|0; + $15 = $14 & 524288; + $16 = ($15|0)==(0); + if ($16) { + STACKTOP = sp;return; + } + $17 = HEAP32[$db>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 68|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3SchemaToIndex($17,$20)|0); + HEAP32[$iDb>>2] = $21; + $22 = HEAP32[$iDb>>2]|0; + $23 = HEAP32[$db>>2]|0; + $24 = (($23) + 16|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + ($22<<4)|0); + $27 = HEAP32[$26>>2]|0; + HEAP32[$zDb>>2] = $27; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 16|0); + $30 = HEAP32[$29>>2]|0; + HEAP32[$pFKey>>2] = $30; + L4: while(1) { + $31 = HEAP32[$pFKey>>2]|0; + $32 = ($31|0)!=(0|0); + if (!($32)) { + label = 38; + break; + } + HEAP32[$pIdx>>2] = 0; + HEAP32[$aiFree>>2] = 0; + HEAP32[$isIgnore>>2] = 0; + $33 = HEAP32[$4>>2]|0; + $34 = ($33|0)!=(0|0); + if ($34) { + $35 = HEAP32[$1>>2]|0; + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$pFKey>>2]|0; + $38 = (($37) + 8|0); + $39 = HEAP32[$38>>2]|0; + $40 = (_sqlite3_stricmp($36,$39)|0); + $41 = ($40|0)!=(0); + if ($41) { + $42 = HEAP32[$1>>2]|0; + $43 = HEAP32[$pFKey>>2]|0; + $44 = HEAP32[$4>>2]|0; + $45 = HEAP32[$5>>2]|0; + $46 = (_fkChildIsModified($42,$43,$44,$45)|0); + $47 = ($46|0)==(0); + if (!($47)) { + label = 7; + } + } else { + label = 7; + } + } else { + label = 7; + } + do { + if ((label|0) == 7) { + label = 0; + $48 = HEAP32[$0>>2]|0; + $49 = (($48) + 438|0); + $50 = HEAP8[$49>>0]|0; + $51 = ($50<<24>>24)!=(0); + if ($51) { + $52 = HEAP32[$db>>2]|0; + $53 = HEAP32[$pFKey>>2]|0; + $54 = (($53) + 8|0); + $55 = HEAP32[$54>>2]|0; + $56 = HEAP32[$zDb>>2]|0; + $57 = (_sqlite3FindTable($52,$55,$56)|0); + HEAP32[$pTo>>2] = $57; + } else { + $58 = HEAP32[$0>>2]|0; + $59 = HEAP32[$pFKey>>2]|0; + $60 = (($59) + 8|0); + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$zDb>>2]|0; + $63 = (_sqlite3LocateTable($58,0,$61,$62)|0); + HEAP32[$pTo>>2] = $63; + } + $64 = HEAP32[$pTo>>2]|0; + $65 = ($64|0)!=(0|0); + if ($65) { + $66 = HEAP32[$0>>2]|0; + $67 = HEAP32[$pTo>>2]|0; + $68 = HEAP32[$pFKey>>2]|0; + $69 = (_sqlite3FkLocateIndex($66,$67,$68,$pIdx,$aiFree)|0); + $70 = ($69|0)!=(0); + if (!($70)) { + $112 = HEAP32[$aiFree>>2]|0; + $113 = ($112|0)!=(0|0); + if ($113) { + $114 = HEAP32[$aiFree>>2]|0; + HEAP32[$aiCol>>2] = $114; + } else { + $115 = HEAP32[$pFKey>>2]|0; + $116 = (($115) + 36|0); + $117 = HEAP32[$116>>2]|0; + HEAP32[$iCol>>2] = $117; + HEAP32[$aiCol>>2] = $iCol; + } + HEAP32[$i>>2] = 0; + while(1) { + $118 = HEAP32[$i>>2]|0; + $119 = HEAP32[$pFKey>>2]|0; + $120 = (($119) + 20|0); + $121 = HEAP32[$120>>2]|0; + $122 = ($118|0)<($121|0); + if (!($122)) { + break; + } + $123 = HEAP32[$i>>2]|0; + $124 = HEAP32[$aiCol>>2]|0; + $125 = (($124) + ($123<<2)|0); + $126 = HEAP32[$125>>2]|0; + $127 = HEAP32[$1>>2]|0; + $128 = (($127) + 36|0); + $129 = HEAP16[$128>>1]|0; + $130 = $129 << 16 >> 16; + $131 = ($126|0)==($130|0); + if ($131) { + $132 = HEAP32[$i>>2]|0; + $133 = HEAP32[$aiCol>>2]|0; + $134 = (($133) + ($132<<2)|0); + HEAP32[$134>>2] = -1; + } + $135 = HEAP32[$db>>2]|0; + $136 = (($135) + 276|0); + $137 = HEAP32[$136>>2]|0; + $138 = ($137|0)!=(0|0); + if ($138) { + $139 = HEAP32[$pIdx>>2]|0; + $140 = ($139|0)!=(0|0); + if ($140) { + $141 = HEAP32[$i>>2]|0; + $142 = HEAP32[$pIdx>>2]|0; + $143 = (($142) + 4|0); + $144 = HEAP32[$143>>2]|0; + $145 = (($144) + ($141<<1)|0); + $146 = HEAP16[$145>>1]|0; + $$sink = $146; + } else { + $147 = HEAP32[$pTo>>2]|0; + $148 = (($147) + 36|0); + $149 = HEAP16[$148>>1]|0; + $$sink = $149; + } + $150 = $$sink << 16 >> 16; + $151 = HEAP32[$pTo>>2]|0; + $152 = (($151) + 4|0); + $153 = HEAP32[$152>>2]|0; + $154 = (($153) + (($150*24)|0)|0); + $155 = HEAP32[$154>>2]|0; + HEAP32[$zCol>>2] = $155; + $156 = HEAP32[$0>>2]|0; + $157 = HEAP32[$pTo>>2]|0; + $158 = HEAP32[$157>>2]|0; + $159 = HEAP32[$zCol>>2]|0; + $160 = HEAP32[$iDb>>2]|0; + $161 = (_sqlite3AuthReadCol($156,$158,$159,$160)|0); + HEAP32[$rcauth>>2] = $161; + $162 = HEAP32[$rcauth>>2]|0; + $163 = ($162|0)==(2); + $164 = $163&1; + HEAP32[$isIgnore>>2] = $164; + } + $165 = HEAP32[$i>>2]|0; + $166 = (($165) + 1)|0; + HEAP32[$i>>2] = $166; + } + $167 = HEAP32[$0>>2]|0; + $168 = HEAP32[$iDb>>2]|0; + $169 = HEAP32[$pTo>>2]|0; + $170 = (($169) + 32|0); + $171 = HEAP32[$170>>2]|0; + $172 = HEAP32[$pTo>>2]|0; + $173 = HEAP32[$172>>2]|0; + _sqlite3TableLock($167,$168,$171,0,$173); + $174 = HEAP32[$0>>2]|0; + $175 = (($174) + 68|0); + $176 = HEAP32[$175>>2]|0; + $177 = (($176) + 1)|0; + HEAP32[$175>>2] = $177; + $178 = HEAP32[$2>>2]|0; + $179 = ($178|0)!=(0); + if ($179) { + $180 = HEAP32[$0>>2]|0; + $181 = HEAP32[$iDb>>2]|0; + $182 = HEAP32[$pTo>>2]|0; + $183 = HEAP32[$pIdx>>2]|0; + $184 = HEAP32[$pFKey>>2]|0; + $185 = HEAP32[$aiCol>>2]|0; + $186 = HEAP32[$2>>2]|0; + $187 = HEAP32[$isIgnore>>2]|0; + _fkLookupParent($180,$181,$182,$183,$184,$185,$186,-1,$187); + } + $188 = HEAP32[$3>>2]|0; + $189 = ($188|0)!=(0); + if ($189) { + $190 = HEAP32[$0>>2]|0; + $191 = HEAP32[$iDb>>2]|0; + $192 = HEAP32[$pTo>>2]|0; + $193 = HEAP32[$pIdx>>2]|0; + $194 = HEAP32[$pFKey>>2]|0; + $195 = HEAP32[$aiCol>>2]|0; + $196 = HEAP32[$3>>2]|0; + $197 = HEAP32[$isIgnore>>2]|0; + _fkLookupParent($190,$191,$192,$193,$194,$195,$196,1,$197); + } + $198 = HEAP32[$db>>2]|0; + $199 = HEAP32[$aiFree>>2]|0; + _sqlite3DbFree($198,$199); + break; + } + } + $71 = HEAP32[$isIgnoreErrors>>2]|0; + $72 = ($71|0)!=(0); + if (!($72)) { + label = 57; + break L4; + } + $73 = HEAP32[$db>>2]|0; + $74 = (($73) + 64|0); + $75 = HEAP8[$74>>0]|0; + $76 = $75&255; + $77 = ($76|0)!=(0); + if ($77) { + label = 57; + break L4; + } + $78 = HEAP32[$pTo>>2]|0; + $79 = ($78|0)==(0|0); + if ($79) { + $80 = HEAP32[$0>>2]|0; + $81 = (_sqlite3GetVdbe($80)|0); + HEAP32[$v>>2] = $81; + $82 = HEAP32[$v>>2]|0; + $83 = (_sqlite3VdbeCurrentAddr($82)|0); + $84 = HEAP32[$pFKey>>2]|0; + $85 = (($84) + 20|0); + $86 = HEAP32[$85>>2]|0; + $87 = (($83) + ($86))|0; + $88 = (($87) + 1)|0; + HEAP32[$iJump>>2] = $88; + HEAP32[$i>>2] = 0; + while(1) { + $89 = HEAP32[$i>>2]|0; + $90 = HEAP32[$pFKey>>2]|0; + $91 = (($90) + 20|0); + $92 = HEAP32[$91>>2]|0; + $93 = ($89|0)<($92|0); + if (!($93)) { + break; + } + $94 = HEAP32[$i>>2]|0; + $95 = HEAP32[$pFKey>>2]|0; + $96 = (($95) + 36|0); + $97 = (($96) + ($94<<3)|0); + $98 = HEAP32[$97>>2]|0; + $99 = HEAP32[$2>>2]|0; + $100 = (($98) + ($99))|0; + $101 = (($100) + 1)|0; + HEAP32[$iReg>>2] = $101; + $102 = HEAP32[$v>>2]|0; + $103 = HEAP32[$iReg>>2]|0; + $104 = HEAP32[$iJump>>2]|0; + (_sqlite3VdbeAddOp2($102,76,$103,$104)|0); + $105 = HEAP32[$i>>2]|0; + $106 = (($105) + 1)|0; + HEAP32[$i>>2] = $106; + } + $107 = HEAP32[$v>>2]|0; + $108 = HEAP32[$pFKey>>2]|0; + $109 = (($108) + 24|0); + $110 = HEAP8[$109>>0]|0; + $111 = $110&255; + (_sqlite3VdbeAddOp2($107,130,$111,-1)|0); + } + } + } while(0); + $200 = HEAP32[$pFKey>>2]|0; + $201 = (($200) + 4|0); + $202 = HEAP32[$201>>2]|0; + HEAP32[$pFKey>>2] = $202; + } + if ((label|0) == 38) { + $203 = HEAP32[$1>>2]|0; + $204 = (_sqlite3FkReferences($203)|0); + HEAP32[$pFKey>>2] = $204; + L54: while(1) { + $205 = HEAP32[$pFKey>>2]|0; + $206 = ($205|0)!=(0|0); + if (!($206)) { + label = 57; + break; + } + HEAP32[$pIdx1>>2] = 0; + HEAP32[$aiCol2>>2] = 0; + $207 = HEAP32[$4>>2]|0; + $208 = ($207|0)!=(0|0); + if ($208) { + $209 = HEAP32[$1>>2]|0; + $210 = HEAP32[$pFKey>>2]|0; + $211 = HEAP32[$4>>2]|0; + $212 = HEAP32[$5>>2]|0; + $213 = (_fkParentIsModified($209,$210,$211,$212)|0); + $214 = ($213|0)==(0); + if (!($214)) { + label = 42; + } + } else { + label = 42; + } + do { + if ((label|0) == 42) { + label = 0; + $215 = HEAP32[$pFKey>>2]|0; + $216 = (($215) + 24|0); + $217 = HEAP8[$216>>0]|0; + $218 = ($217<<24>>24)!=(0); + if (!($218)) { + $219 = HEAP32[$db>>2]|0; + $220 = (($219) + 24|0); + $221 = HEAP32[$220>>2]|0; + $222 = $221 & 16777216; + $223 = ($222|0)!=(0); + if (!($223)) { + $224 = HEAP32[$0>>2]|0; + $225 = (($224) + 408|0); + $226 = HEAP32[$225>>2]|0; + $227 = ($226|0)!=(0|0); + if (!($227)) { + $228 = HEAP32[$0>>2]|0; + $229 = (($228) + 20|0); + $230 = HEAP8[$229>>0]|0; + $231 = ($230<<24>>24)!=(0); + if (!($231)) { + break; + } + } + } + } + $232 = HEAP32[$0>>2]|0; + $233 = HEAP32[$1>>2]|0; + $234 = HEAP32[$pFKey>>2]|0; + $235 = (_sqlite3FkLocateIndex($232,$233,$234,$pIdx1,$aiCol2)|0); + $236 = ($235|0)!=(0); + if ($236) { + $237 = HEAP32[$isIgnoreErrors>>2]|0; + $238 = ($237|0)!=(0); + if (!($238)) { + label = 57; + break L54; + } + $239 = HEAP32[$db>>2]|0; + $240 = (($239) + 64|0); + $241 = HEAP8[$240>>0]|0; + $242 = $241&255; + $243 = ($242|0)!=(0); + if ($243) { + label = 57; + break L54; + } else { + break; + } + } + $244 = HEAP32[$db>>2]|0; + $245 = (_sqlite3SrcListAppend($244,0,0,0)|0); + HEAP32[$pSrc>>2] = $245; + $246 = HEAP32[$pSrc>>2]|0; + $247 = ($246|0)!=(0|0); + if ($247) { + $248 = HEAP32[$pSrc>>2]|0; + $249 = (($248) + 8|0); + HEAP32[$pItem>>2] = $249; + $250 = HEAP32[$pFKey>>2]|0; + $251 = HEAP32[$250>>2]|0; + $252 = HEAP32[$pItem>>2]|0; + $253 = (($252) + 16|0); + HEAP32[$253>>2] = $251; + $254 = HEAP32[$pFKey>>2]|0; + $255 = HEAP32[$254>>2]|0; + $256 = HEAP32[$255>>2]|0; + $257 = HEAP32[$pItem>>2]|0; + $258 = (($257) + 8|0); + HEAP32[$258>>2] = $256; + $259 = HEAP32[$pItem>>2]|0; + $260 = (($259) + 16|0); + $261 = HEAP32[$260>>2]|0; + $262 = (($261) + 40|0); + $263 = HEAP16[$262>>1]|0; + $264 = (($263) + 1)<<16>>16; + HEAP16[$262>>1] = $264; + $265 = HEAP32[$0>>2]|0; + $266 = (($265) + 68|0); + $267 = HEAP32[$266>>2]|0; + $268 = (($267) + 1)|0; + HEAP32[$266>>2] = $268; + $269 = HEAP32[$pItem>>2]|0; + $270 = (($269) + 40|0); + HEAP32[$270>>2] = $267; + $271 = HEAP32[$3>>2]|0; + $272 = ($271|0)!=(0); + if ($272) { + $273 = HEAP32[$0>>2]|0; + $274 = HEAP32[$pSrc>>2]|0; + $275 = HEAP32[$1>>2]|0; + $276 = HEAP32[$pIdx1>>2]|0; + $277 = HEAP32[$pFKey>>2]|0; + $278 = HEAP32[$aiCol2>>2]|0; + $279 = HEAP32[$3>>2]|0; + _fkScanChildren($273,$274,$275,$276,$277,$278,$279,-1); + } + $280 = HEAP32[$2>>2]|0; + $281 = ($280|0)!=(0); + if ($281) { + $282 = HEAP32[$0>>2]|0; + $283 = HEAP32[$pSrc>>2]|0; + $284 = HEAP32[$1>>2]|0; + $285 = HEAP32[$pIdx1>>2]|0; + $286 = HEAP32[$pFKey>>2]|0; + $287 = HEAP32[$aiCol2>>2]|0; + $288 = HEAP32[$2>>2]|0; + _fkScanChildren($282,$283,$284,$285,$286,$287,$288,1); + } + $289 = HEAP32[$pItem>>2]|0; + $290 = (($289) + 8|0); + HEAP32[$290>>2] = 0; + $291 = HEAP32[$db>>2]|0; + $292 = HEAP32[$pSrc>>2]|0; + _sqlite3SrcListDelete($291,$292); + } + $293 = HEAP32[$db>>2]|0; + $294 = HEAP32[$aiCol2>>2]|0; + _sqlite3DbFree($293,$294); + } + } while(0); + $295 = HEAP32[$pFKey>>2]|0; + $296 = (($295) + 12|0); + $297 = HEAP32[$296>>2]|0; + HEAP32[$pFKey>>2] = $297; + } + if ((label|0) == 57) { + STACKTOP = sp;return; + } + } + else if ((label|0) == 57) { + STACKTOP = sp;return; + } +} +function _sqlite3CompleteInsertion($pParse,$pTab,$iDataCur,$iIdxCur,$regNewData,$aRegIdx,$isUpdate,$appendBias,$useSeekResult) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $iDataCur = $iDataCur|0; + $iIdxCur = $iIdxCur|0; + $regNewData = $regNewData|0; + $aRegIdx = $aRegIdx|0; + $isUpdate = $isUpdate|0; + $appendBias = $appendBias|0; + $useSeekResult = $useSeekResult|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; + var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $14 = 0, $15 = 0; + var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bAffinityDone = 0, $i = 0, $pIdx = 0, $pik_flags = 0, $regData = 0, $regRec = 0, $v = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 20|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $3 = sp + 44|0; + $4 = sp + 40|0; + $5 = sp + 36|0; + $6 = sp + 32|0; + $7 = sp + 24|0; + $8 = sp + 28|0; + $v = sp + 16|0; + $pIdx = sp + 12|0; + $pik_flags = sp + 57|0; + $regData = sp + 8|0; + $regRec = sp + 4|0; + $i = sp; + $bAffinityDone = sp + 56|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $iDataCur; + HEAP32[$3>>2] = $iIdxCur; + HEAP32[$4>>2] = $regNewData; + HEAP32[$5>>2] = $aRegIdx; + HEAP32[$6>>2] = $isUpdate; + HEAP32[$7>>2] = $appendBias; + HEAP32[$8>>2] = $useSeekResult; + HEAP8[$bAffinityDone>>0] = 0; + $9 = HEAP32[$0>>2]|0; + $10 = (_sqlite3GetVdbe($9)|0); + HEAP32[$v>>2] = $10; + HEAP32[$i>>2] = 0; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 8|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pIdx>>2] = $13; + while(1) { + $14 = HEAP32[$pIdx>>2]|0; + $15 = ($14|0)!=(0|0); + if (!($15)) { + break; + } + $16 = HEAP32[$i>>2]|0; + $17 = HEAP32[$5>>2]|0; + $18 = (($17) + ($16<<2)|0); + $19 = HEAP32[$18>>2]|0; + $20 = ($19|0)==(0); + if (!($20)) { + HEAP8[$bAffinityDone>>0] = 1; + $21 = HEAP32[$pIdx>>2]|0; + $22 = (($21) + 36|0); + $23 = HEAP32[$22>>2]|0; + $24 = ($23|0)!=(0|0); + if ($24) { + $25 = HEAP32[$v>>2]|0; + $26 = HEAP32[$i>>2]|0; + $27 = HEAP32[$5>>2]|0; + $28 = (($27) + ($26<<2)|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$v>>2]|0; + $31 = (_sqlite3VdbeCurrentAddr($30)|0); + $32 = (($31) + 2)|0; + (_sqlite3VdbeAddOp2($25,76,$29,$32)|0); + } + $33 = HEAP32[$v>>2]|0; + $34 = HEAP32[$3>>2]|0; + $35 = HEAP32[$i>>2]|0; + $36 = (($34) + ($35))|0; + $37 = HEAP32[$i>>2]|0; + $38 = HEAP32[$5>>2]|0; + $39 = (($38) + ($37<<2)|0); + $40 = HEAP32[$39>>2]|0; + (_sqlite3VdbeAddOp2($33,107,$36,$40)|0); + HEAP8[$pik_flags>>0] = 0; + $41 = HEAP32[$8>>2]|0; + $42 = ($41|0)!=(0); + $$ = $42 ? 16 : 0; + HEAP8[$pik_flags>>0] = $$; + $43 = HEAP32[$pIdx>>2]|0; + $44 = (($43) + 55|0); + $45 = HEAP8[$44>>0]|0; + $46 = $45 & 3; + $47 = $46&255; + $48 = ($47|0)==(2); + if ($48) { + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 44|0); + $51 = HEAP8[$50>>0]|0; + $52 = $51&255; + $53 = $52 & 32; + $54 = ($53|0)==(0); + if (!($54)) { + $55 = HEAP8[$pik_flags>>0]|0; + $56 = $55&255; + $57 = $56 | 1; + $58 = $57&255; + HEAP8[$pik_flags>>0] = $58; + } + } + $59 = HEAP8[$pik_flags>>0]|0; + $60 = ($59<<24>>24)!=(0); + if ($60) { + $61 = HEAP32[$v>>2]|0; + $62 = HEAP8[$pik_flags>>0]|0; + _sqlite3VdbeChangeP5($61,$62); + } + } + $63 = HEAP32[$pIdx>>2]|0; + $64 = (($63) + 20|0); + $65 = HEAP32[$64>>2]|0; + HEAP32[$pIdx>>2] = $65; + $66 = HEAP32[$i>>2]|0; + $67 = (($66) + 1)|0; + HEAP32[$i>>2] = $67; + } + $68 = HEAP32[$1>>2]|0; + $69 = (($68) + 44|0); + $70 = HEAP8[$69>>0]|0; + $71 = $70&255; + $72 = $71 & 32; + $73 = ($72|0)==(0); + if (!($73)) { + STACKTOP = sp;return; + } + $74 = HEAP32[$4>>2]|0; + $75 = (($74) + 1)|0; + HEAP32[$regData>>2] = $75; + $76 = HEAP32[$0>>2]|0; + $77 = (_sqlite3GetTempReg($76)|0); + HEAP32[$regRec>>2] = $77; + $78 = HEAP32[$v>>2]|0; + $79 = HEAP32[$regData>>2]|0; + $80 = HEAP32[$1>>2]|0; + $81 = (($80) + 38|0); + $82 = HEAP16[$81>>1]|0; + $83 = $82 << 16 >> 16; + $84 = HEAP32[$regRec>>2]|0; + (_sqlite3VdbeAddOp3($78,48,$79,$83,$84)|0); + $85 = HEAP8[$bAffinityDone>>0]|0; + $86 = ($85<<24>>24)!=(0); + if (!($86)) { + $87 = HEAP32[$v>>2]|0; + $88 = HEAP32[$1>>2]|0; + _sqlite3TableAffinity($87,$88,0); + } + $89 = HEAP32[$0>>2]|0; + $90 = HEAP32[$regData>>2]|0; + $91 = HEAP32[$1>>2]|0; + $92 = (($91) + 38|0); + $93 = HEAP16[$92>>1]|0; + $94 = $93 << 16 >> 16; + _sqlite3ExprCacheAffinityChange($89,$90,$94); + $95 = HEAP32[$0>>2]|0; + $96 = (($95) + 18|0); + $97 = HEAP8[$96>>0]|0; + $98 = ($97<<24>>24)!=(0); + if ($98) { + HEAP8[$pik_flags>>0] = 0; + } else { + HEAP8[$pik_flags>>0] = 1; + $99 = HEAP32[$6>>2]|0; + $100 = ($99|0)!=(0); + $101 = $100 ? 4 : 2; + $102 = HEAP8[$pik_flags>>0]|0; + $103 = $102&255; + $104 = $103 | $101; + $105 = $104&255; + HEAP8[$pik_flags>>0] = $105; + } + $106 = HEAP32[$7>>2]|0; + $107 = ($106|0)!=(0); + if ($107) { + $108 = HEAP8[$pik_flags>>0]|0; + $109 = $108&255; + $110 = $109 | 8; + $111 = $110&255; + HEAP8[$pik_flags>>0] = $111; + } + $112 = HEAP32[$8>>2]|0; + $113 = ($112|0)!=(0); + if ($113) { + $114 = HEAP8[$pik_flags>>0]|0; + $115 = $114&255; + $116 = $115 | 16; + $117 = $116&255; + HEAP8[$pik_flags>>0] = $117; + } + $118 = HEAP32[$v>>2]|0; + $119 = HEAP32[$2>>2]|0; + $120 = HEAP32[$regRec>>2]|0; + $121 = HEAP32[$4>>2]|0; + (_sqlite3VdbeAddOp3($118,70,$119,$120,$121)|0); + $122 = HEAP32[$0>>2]|0; + $123 = (($122) + 18|0); + $124 = HEAP8[$123>>0]|0; + $125 = ($124<<24>>24)!=(0); + if (!($125)) { + $126 = HEAP32[$v>>2]|0; + $127 = HEAP32[$1>>2]|0; + $128 = HEAP32[$127>>2]|0; + _sqlite3VdbeChangeP4($126,-1,$128,0); + } + $129 = HEAP32[$v>>2]|0; + $130 = HEAP8[$pik_flags>>0]|0; + _sqlite3VdbeChangeP5($129,$130); + STACKTOP = sp;return; +} +function _sqlite3AutoincrementEnd($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $iRec = 0, $j1 = 0, $memId = 0, $p = 0; + var $pDb = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $p = sp; + $v = sp + 4|0; + $db = sp + 8|0; + $pDb = sp + 12|0; + $j1 = sp + 16|0; + $iRec = sp + 20|0; + $memId = sp + 24|0; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$v>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 404|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$p>>2] = $8; + while(1) { + $9 = HEAP32[$p>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + break; + } + $11 = HEAP32[$p>>2]|0; + $12 = (($11) + 8|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$db>>2]|0; + $15 = (($14) + 16|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + ($13<<4)|0); + HEAP32[$pDb>>2] = $17; + $18 = HEAP32[$p>>2]|0; + $19 = (($18) + 12|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$memId>>2] = $20; + $21 = HEAP32[$0>>2]|0; + $22 = (_sqlite3GetTempReg($21)|0); + HEAP32[$iRec>>2] = $22; + $23 = HEAP32[$0>>2]|0; + $24 = HEAP32[$p>>2]|0; + $25 = (($24) + 8|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$pDb>>2]|0; + $28 = (($27) + 12|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + 72|0); + $31 = HEAP32[$30>>2]|0; + _sqlite3OpenTable($23,0,$26,$31,53); + $32 = HEAP32[$v>>2]|0; + $33 = HEAP32[$memId>>2]|0; + $34 = (($33) + 1)|0; + $35 = (_sqlite3VdbeAddOp1($32,77,$34)|0); + HEAP32[$j1>>2] = $35; + $36 = HEAP32[$v>>2]|0; + $37 = HEAP32[$memId>>2]|0; + $38 = (($37) + 1)|0; + (_sqlite3VdbeAddOp2($36,69,0,$38)|0); + $39 = HEAP32[$v>>2]|0; + $40 = HEAP32[$j1>>2]|0; + _sqlite3VdbeJumpHere($39,$40); + $41 = HEAP32[$v>>2]|0; + $42 = HEAP32[$memId>>2]|0; + $43 = (($42) - 1)|0; + $44 = HEAP32[$iRec>>2]|0; + (_sqlite3VdbeAddOp3($41,48,$43,2,$44)|0); + $45 = HEAP32[$v>>2]|0; + $46 = HEAP32[$iRec>>2]|0; + $47 = HEAP32[$memId>>2]|0; + $48 = (($47) + 1)|0; + (_sqlite3VdbeAddOp3($45,70,0,$46,$48)|0); + $49 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($49,8); + $50 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp0($50,58)|0); + $51 = HEAP32[$0>>2]|0; + $52 = HEAP32[$iRec>>2]|0; + _sqlite3ReleaseTempReg($51,$52); + $53 = HEAP32[$p>>2]|0; + $54 = HEAP32[$53>>2]|0; + HEAP32[$p>>2] = $54; + } + STACKTOP = sp;return; +} +function _fkChildIsModified($pTab,$p,$aChange,$bChngRowid) { + $pTab = $pTab|0; + $p = $p|0; + $aChange = $aChange|0; + $bChngRowid = $bChngRowid|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $iChildKey = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $i = sp + 16|0; + $iChildKey = sp + 20|0; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $aChange; + HEAP32[$4>>2] = $bChngRowid; + HEAP32[$i>>2] = 0; + while(1) { + $5 = HEAP32[$i>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + 20|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($5|0)<($8|0); + if (!($9)) { + label = 9; + break; + } + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 36|0); + $13 = (($12) + ($10<<3)|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$iChildKey>>2] = $14; + $15 = HEAP32[$iChildKey>>2]|0; + $16 = HEAP32[$3>>2]|0; + $17 = (($16) + ($15<<2)|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($18|0)>=(0); + if ($19) { + label = 4; + break; + } + $20 = HEAP32[$iChildKey>>2]|0; + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 36|0); + $23 = HEAP16[$22>>1]|0; + $24 = $23 << 16 >> 16; + $25 = ($20|0)==($24|0); + if ($25) { + $26 = HEAP32[$4>>2]|0; + $27 = ($26|0)!=(0); + if ($27) { + label = 7; + break; + } + } + $28 = HEAP32[$i>>2]|0; + $29 = (($28) + 1)|0; + HEAP32[$i>>2] = $29; + } + if ((label|0) == 4) { + HEAP32[$0>>2] = 1; + $30 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($30|0); + } + else if ((label|0) == 7) { + HEAP32[$0>>2] = 1; + $30 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($30|0); + } + else if ((label|0) == 9) { + HEAP32[$0>>2] = 0; + $30 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($30|0); + } + return 0|0; +} +function _fkLookupParent($pParse,$iDb,$pTab,$pIdx,$pFKey,$aiCol,$regData,$nIncr,$isIgnore) { + $pParse = $pParse|0; + $iDb = $iDb|0; + $pTab = $pTab|0; + $pIdx = $pIdx|0; + $pFKey = $pFKey|0; + $aiCol = $aiCol|0; + $regData = $regData|0; + $nIncr = $nIncr|0; + $isIgnore = $isIgnore|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; + var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; + var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; + var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iChild = 0, $iCur = 0, $iJump = 0, $iMustBeInt = 0, $iOk = 0, $iParent = 0; + var $iReg = 0, $nCol = 0, $regRec = 0, $regTemp = 0, $regTemp1 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 84|0; + $1 = sp + 80|0; + $2 = sp + 76|0; + $3 = sp + 72|0; + $4 = sp + 68|0; + $5 = sp + 64|0; + $6 = sp + 60|0; + $7 = sp + 56|0; + $8 = sp + 52|0; + $i = sp + 48|0; + $v = sp + 44|0; + $iCur = sp + 40|0; + $iOk = sp + 12|0; + $iReg = sp; + $iMustBeInt = sp + 4|0; + $regTemp = sp + 8|0; + $nCol = sp + 16|0; + $regTemp1 = sp + 20|0; + $regRec = sp + 24|0; + $iJump = sp + 28|0; + $iChild = sp + 32|0; + $iParent = sp + 36|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iDb; + HEAP32[$2>>2] = $pTab; + HEAP32[$3>>2] = $pIdx; + HEAP32[$4>>2] = $pFKey; + HEAP32[$5>>2] = $aiCol; + HEAP32[$6>>2] = $regData; + HEAP32[$7>>2] = $nIncr; + HEAP32[$8>>2] = $isIgnore; + $9 = HEAP32[$0>>2]|0; + $10 = (_sqlite3GetVdbe($9)|0); + HEAP32[$v>>2] = $10; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 68|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) - 1)|0; + HEAP32[$iCur>>2] = $14; + $15 = HEAP32[$v>>2]|0; + $16 = (_sqlite3VdbeMakeLabel($15)|0); + HEAP32[$iOk>>2] = $16; + $17 = HEAP32[$7>>2]|0; + $18 = ($17|0)<(0); + if ($18) { + $19 = HEAP32[$v>>2]|0; + $20 = HEAP32[$4>>2]|0; + $21 = (($20) + 24|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = HEAP32[$iOk>>2]|0; + (_sqlite3VdbeAddOp2($19,131,$23,$24)|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $25 = HEAP32[$i>>2]|0; + $26 = HEAP32[$4>>2]|0; + $27 = (($26) + 20|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($25|0)<($28|0); + if (!($29)) { + break; + } + $30 = HEAP32[$i>>2]|0; + $31 = HEAP32[$5>>2]|0; + $32 = (($31) + ($30<<2)|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$6>>2]|0; + $35 = (($33) + ($34))|0; + $36 = (($35) + 1)|0; + HEAP32[$iReg>>2] = $36; + $37 = HEAP32[$v>>2]|0; + $38 = HEAP32[$iReg>>2]|0; + $39 = HEAP32[$iOk>>2]|0; + (_sqlite3VdbeAddOp2($37,76,$38,$39)|0); + $40 = HEAP32[$i>>2]|0; + $41 = (($40) + 1)|0; + HEAP32[$i>>2] = $41; + } + $42 = HEAP32[$8>>2]|0; + $43 = ($42|0)==(0); + do { + if ($43) { + $44 = HEAP32[$3>>2]|0; + $45 = ($44|0)==(0|0); + if ($45) { + $46 = HEAP32[$0>>2]|0; + $47 = (_sqlite3GetTempReg($46)|0); + HEAP32[$regTemp>>2] = $47; + $48 = HEAP32[$v>>2]|0; + $49 = HEAP32[$5>>2]|0; + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + 1)|0; + $52 = HEAP32[$6>>2]|0; + $53 = (($51) + ($52))|0; + $54 = HEAP32[$regTemp>>2]|0; + (_sqlite3VdbeAddOp2($48,34,$53,$54)|0); + $55 = HEAP32[$v>>2]|0; + $56 = HEAP32[$regTemp>>2]|0; + $57 = (_sqlite3VdbeAddOp2($55,38,$56,0)|0); + HEAP32[$iMustBeInt>>2] = $57; + $58 = HEAP32[$2>>2]|0; + $59 = HEAP32[$4>>2]|0; + $60 = HEAP32[$59>>2]|0; + $61 = ($58|0)==($60|0); + if ($61) { + $62 = HEAP32[$7>>2]|0; + $63 = ($62|0)==(1); + if ($63) { + $64 = HEAP32[$v>>2]|0; + $65 = HEAP32[$6>>2]|0; + $66 = HEAP32[$iOk>>2]|0; + $67 = HEAP32[$regTemp>>2]|0; + (_sqlite3VdbeAddOp3($64,79,$65,$66,$67)|0); + $68 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($68,-120); + } + } + $69 = HEAP32[$0>>2]|0; + $70 = HEAP32[$iCur>>2]|0; + $71 = HEAP32[$1>>2]|0; + $72 = HEAP32[$2>>2]|0; + _sqlite3OpenTable($69,$70,$71,$72,52); + $73 = HEAP32[$v>>2]|0; + $74 = HEAP32[$iCur>>2]|0; + $75 = HEAP32[$regTemp>>2]|0; + (_sqlite3VdbeAddOp3($73,67,$74,0,$75)|0); + $76 = HEAP32[$v>>2]|0; + $77 = HEAP32[$iOk>>2]|0; + (_sqlite3VdbeAddOp2($76,16,0,$77)|0); + $78 = HEAP32[$v>>2]|0; + $79 = HEAP32[$v>>2]|0; + $80 = (_sqlite3VdbeCurrentAddr($79)|0); + $81 = (($80) - 2)|0; + _sqlite3VdbeJumpHere($78,$81); + $82 = HEAP32[$v>>2]|0; + $83 = HEAP32[$iMustBeInt>>2]|0; + _sqlite3VdbeJumpHere($82,$83); + $84 = HEAP32[$0>>2]|0; + $85 = HEAP32[$regTemp>>2]|0; + _sqlite3ReleaseTempReg($84,$85); + break; + } + $86 = HEAP32[$4>>2]|0; + $87 = (($86) + 20|0); + $88 = HEAP32[$87>>2]|0; + HEAP32[$nCol>>2] = $88; + $89 = HEAP32[$0>>2]|0; + $90 = HEAP32[$nCol>>2]|0; + $91 = (_sqlite3GetTempRange($89,$90)|0); + HEAP32[$regTemp1>>2] = $91; + $92 = HEAP32[$0>>2]|0; + $93 = (_sqlite3GetTempReg($92)|0); + HEAP32[$regRec>>2] = $93; + $94 = HEAP32[$v>>2]|0; + $95 = HEAP32[$iCur>>2]|0; + $96 = HEAP32[$3>>2]|0; + $97 = (($96) + 44|0); + $98 = HEAP32[$97>>2]|0; + $99 = HEAP32[$1>>2]|0; + (_sqlite3VdbeAddOp3($94,52,$95,$98,$99)|0); + $100 = HEAP32[$0>>2]|0; + $101 = HEAP32[$3>>2]|0; + _sqlite3VdbeSetP4KeyInfo($100,$101); + HEAP32[$i>>2] = 0; + while(1) { + $102 = HEAP32[$i>>2]|0; + $103 = HEAP32[$nCol>>2]|0; + $104 = ($102|0)<($103|0); + if (!($104)) { + break; + } + $105 = HEAP32[$v>>2]|0; + $106 = HEAP32[$i>>2]|0; + $107 = HEAP32[$5>>2]|0; + $108 = (($107) + ($106<<2)|0); + $109 = HEAP32[$108>>2]|0; + $110 = (($109) + 1)|0; + $111 = HEAP32[$6>>2]|0; + $112 = (($110) + ($111))|0; + $113 = HEAP32[$regTemp1>>2]|0; + $114 = HEAP32[$i>>2]|0; + $115 = (($113) + ($114))|0; + (_sqlite3VdbeAddOp2($105,33,$112,$115)|0); + $116 = HEAP32[$i>>2]|0; + $117 = (($116) + 1)|0; + HEAP32[$i>>2] = $117; + } + $118 = HEAP32[$2>>2]|0; + $119 = HEAP32[$4>>2]|0; + $120 = HEAP32[$119>>2]|0; + $121 = ($118|0)==($120|0); + if ($121) { + $122 = HEAP32[$7>>2]|0; + $123 = ($122|0)==(1); + if ($123) { + $124 = HEAP32[$v>>2]|0; + $125 = (_sqlite3VdbeCurrentAddr($124)|0); + $126 = HEAP32[$nCol>>2]|0; + $127 = (($125) + ($126))|0; + $128 = (($127) + 1)|0; + HEAP32[$iJump>>2] = $128; + HEAP32[$i>>2] = 0; + while(1) { + $129 = HEAP32[$i>>2]|0; + $130 = HEAP32[$nCol>>2]|0; + $131 = ($129|0)<($130|0); + if (!($131)) { + break; + } + $132 = HEAP32[$i>>2]|0; + $133 = HEAP32[$5>>2]|0; + $134 = (($133) + ($132<<2)|0); + $135 = HEAP32[$134>>2]|0; + $136 = (($135) + 1)|0; + $137 = HEAP32[$6>>2]|0; + $138 = (($136) + ($137))|0; + HEAP32[$iChild>>2] = $138; + $139 = HEAP32[$i>>2]|0; + $140 = HEAP32[$3>>2]|0; + $141 = (($140) + 4|0); + $142 = HEAP32[$141>>2]|0; + $143 = (($142) + ($139<<1)|0); + $144 = HEAP16[$143>>1]|0; + $145 = $144 << 16 >> 16; + $146 = (($145) + 1)|0; + $147 = HEAP32[$6>>2]|0; + $148 = (($146) + ($147))|0; + HEAP32[$iParent>>2] = $148; + $149 = HEAP32[$i>>2]|0; + $150 = HEAP32[$3>>2]|0; + $151 = (($150) + 4|0); + $152 = HEAP32[$151>>2]|0; + $153 = (($152) + ($149<<1)|0); + $154 = HEAP16[$153>>1]|0; + $155 = $154 << 16 >> 16; + $156 = HEAP32[$2>>2]|0; + $157 = (($156) + 36|0); + $158 = HEAP16[$157>>1]|0; + $159 = $158 << 16 >> 16; + $160 = ($155|0)==($159|0); + if ($160) { + $161 = HEAP32[$6>>2]|0; + HEAP32[$iParent>>2] = $161; + } + $162 = HEAP32[$v>>2]|0; + $163 = HEAP32[$iChild>>2]|0; + $164 = HEAP32[$iJump>>2]|0; + $165 = HEAP32[$iParent>>2]|0; + (_sqlite3VdbeAddOp3($162,78,$163,$164,$165)|0); + $166 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($166,8); + $167 = HEAP32[$i>>2]|0; + $168 = (($167) + 1)|0; + HEAP32[$i>>2] = $168; + } + $169 = HEAP32[$v>>2]|0; + $170 = HEAP32[$iOk>>2]|0; + (_sqlite3VdbeAddOp2($169,16,0,$170)|0); + } + } + $171 = HEAP32[$v>>2]|0; + $172 = HEAP32[$regTemp1>>2]|0; + $173 = HEAP32[$nCol>>2]|0; + $174 = HEAP32[$regRec>>2]|0; + $175 = HEAP32[$v>>2]|0; + $176 = HEAP32[$3>>2]|0; + $177 = (_sqlite3IndexAffinityStr($175,$176)|0); + $178 = HEAP32[$nCol>>2]|0; + (_sqlite3VdbeAddOp4($171,48,$172,$173,$174,$177,$178)|0); + $179 = HEAP32[$v>>2]|0; + $180 = HEAP32[$iCur>>2]|0; + $181 = HEAP32[$iOk>>2]|0; + $182 = HEAP32[$regRec>>2]|0; + (_sqlite3VdbeAddOp4Int($179,66,$180,$181,$182,0)|0); + $183 = HEAP32[$0>>2]|0; + $184 = HEAP32[$regRec>>2]|0; + _sqlite3ReleaseTempReg($183,$184); + $185 = HEAP32[$0>>2]|0; + $186 = HEAP32[$regTemp1>>2]|0; + $187 = HEAP32[$nCol>>2]|0; + _sqlite3ReleaseTempRange($185,$186,$187); + } + } while(0); + $188 = HEAP32[$4>>2]|0; + $189 = (($188) + 24|0); + $190 = HEAP8[$189>>0]|0; + $191 = ($190<<24>>24)!=(0); + if (!($191)) { + $192 = HEAP32[$0>>2]|0; + $193 = HEAP32[$192>>2]|0; + $194 = (($193) + 24|0); + $195 = HEAP32[$194>>2]|0; + $196 = $195 & 16777216; + $197 = ($196|0)!=(0); + if (!($197)) { + $198 = HEAP32[$0>>2]|0; + $199 = (($198) + 408|0); + $200 = HEAP32[$199>>2]|0; + $201 = ($200|0)!=(0|0); + if (!($201)) { + $202 = HEAP32[$0>>2]|0; + $203 = (($202) + 20|0); + $204 = HEAP8[$203>>0]|0; + $205 = ($204<<24>>24)!=(0); + if (!($205)) { + $206 = HEAP32[$0>>2]|0; + _sqlite3HaltConstraint($206,787,2,0,-2,4); + $229 = HEAP32[$v>>2]|0; + $230 = HEAP32[$iOk>>2]|0; + _sqlite3VdbeResolveLabel($229,$230); + $231 = HEAP32[$v>>2]|0; + $232 = HEAP32[$iCur>>2]|0; + (_sqlite3VdbeAddOp1($231,58,$232)|0); + STACKTOP = sp;return; + } + } + } + } + $207 = HEAP32[$7>>2]|0; + $208 = ($207|0)>(0); + if ($208) { + $209 = HEAP32[$4>>2]|0; + $210 = (($209) + 24|0); + $211 = HEAP8[$210>>0]|0; + $212 = $211&255; + $213 = ($212|0)==(0); + if ($213) { + $214 = HEAP32[$0>>2]|0; + $215 = (($214) + 408|0); + $216 = HEAP32[$215>>2]|0; + $217 = ($216|0)!=(0|0); + $218 = HEAP32[$0>>2]|0; + if ($217) { + $219 = (($218) + 408|0); + $220 = HEAP32[$219>>2]|0; + $222 = $220; + } else { + $222 = $218; + } + $221 = (($222) + 21|0); + HEAP8[$221>>0] = 1; + } + } + $223 = HEAP32[$v>>2]|0; + $224 = HEAP32[$4>>2]|0; + $225 = (($224) + 24|0); + $226 = HEAP8[$225>>0]|0; + $227 = $226&255; + $228 = HEAP32[$7>>2]|0; + (_sqlite3VdbeAddOp2($223,130,$227,$228)|0); + $229 = HEAP32[$v>>2]|0; + $230 = HEAP32[$iOk>>2]|0; + _sqlite3VdbeResolveLabel($229,$230); + $231 = HEAP32[$v>>2]|0; + $232 = HEAP32[$iCur>>2]|0; + (_sqlite3VdbeAddOp1($231,58,$232)|0); + STACKTOP = sp;return; +} +function _fkParentIsModified($pTab,$p,$aChange,$bChngRowid) { + $pTab = $pTab|0; + $p = $p|0; + $aChange = $aChange|0; + $bChngRowid = $bChngRowid|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $iKey = 0, $pCol = 0; + var $zKey = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $4 = sp + 16|0; + $i = sp + 8|0; + $zKey = sp + 4|0; + $iKey = sp; + $pCol = sp + 12|0; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $aChange; + HEAP32[$4>>2] = $bChngRowid; + HEAP32[$i>>2] = 0; + L1: while(1) { + $5 = HEAP32[$i>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + 20|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($5|0)<($8|0); + if (!($9)) { + label = 15; + break; + } + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 36|0); + $13 = (($12) + ($10<<3)|0); + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$zKey>>2] = $15; + HEAP32[$iKey>>2] = 0; + while(1) { + $16 = HEAP32[$iKey>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 38|0); + $19 = HEAP16[$18>>1]|0; + $20 = $19 << 16 >> 16; + $21 = ($16|0)<($20|0); + if (!($21)) { + break; + } + $22 = HEAP32[$iKey>>2]|0; + $23 = HEAP32[$3>>2]|0; + $24 = (($23) + ($22<<2)|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)>=(0); + if ($26) { + label = 8; + } else { + $27 = HEAP32[$iKey>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 36|0); + $30 = HEAP16[$29>>1]|0; + $31 = $30 << 16 >> 16; + $32 = ($27|0)==($31|0); + if ($32) { + $33 = HEAP32[$4>>2]|0; + $34 = ($33|0)!=(0); + if ($34) { + label = 8; + } + } + } + do { + if ((label|0) == 8) { + label = 0; + $35 = HEAP32[$iKey>>2]|0; + $36 = HEAP32[$1>>2]|0; + $37 = (($36) + 4|0); + $38 = HEAP32[$37>>2]|0; + $39 = (($38) + (($35*24)|0)|0); + HEAP32[$pCol>>2] = $39; + $40 = HEAP32[$zKey>>2]|0; + $41 = ($40|0)!=(0|0); + $42 = HEAP32[$pCol>>2]|0; + if ($41) { + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$zKey>>2]|0; + $45 = (_sqlite3_stricmp($43,$44)|0); + $46 = (0)==($45|0); + if ($46) { + label = 10; + break L1; + } else { + break; + } + } else { + $47 = (($42) + 23|0); + $48 = HEAP8[$47>>0]|0; + $49 = $48&255; + $50 = $49 & 1; + $51 = ($50|0)!=(0); + if ($51) { + label = 12; + break L1; + } else { + break; + } + } + } + } while(0); + $52 = HEAP32[$iKey>>2]|0; + $53 = (($52) + 1)|0; + HEAP32[$iKey>>2] = $53; + } + $54 = HEAP32[$i>>2]|0; + $55 = (($54) + 1)|0; + HEAP32[$i>>2] = $55; + } + if ((label|0) == 10) { + HEAP32[$0>>2] = 1; + $56 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($56|0); + } + else if ((label|0) == 12) { + HEAP32[$0>>2] = 1; + $56 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($56|0); + } + else if ((label|0) == 15) { + HEAP32[$0>>2] = 0; + $56 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($56|0); + } + return 0|0; +} +function _fkScanChildren($pParse,$pSrc,$pTab,$pIdx,$pFKey,$aiCol,$regData,$nIncr) { + $pParse = $pParse|0; + $pSrc = $pSrc|0; + $pTab = $pTab|0; + $pIdx = $pIdx|0; + $pFKey = $pFKey|0; + $aiCol = $aiCol|0; + $regData = $regData|0; + $nIncr = $nIncr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0, $iCol = 0, $iCol4 = 0, $iFkIfZero = 0, $pAll = 0, $pEq = 0, $pEq3 = 0, $pLeft = 0, $pLeft1 = 0, $pNe = 0, $pPk = 0, $pRight = 0, $pRight2 = 0, $pWInfo = 0, $pWhere = 0, $sNameContext = 0; + var $v = 0, $zCol = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; + $0 = sp + 48|0; + $1 = sp + 112|0; + $2 = sp + 120|0; + $3 = sp + 116|0; + $4 = sp + 124|0; + $5 = sp + 108|0; + $6 = sp + 104|0; + $7 = sp + 100|0; + $db = sp + 96|0; + $i = sp + 92|0; + $pWhere = sp + 88|0; + $sNameContext = sp + 56|0; + $pWInfo = sp + 52|0; + $iFkIfZero = sp + 44|0; + $v = sp + 16|0; + $pLeft = sp; + $pRight = sp + 4|0; + $pEq = sp + 8|0; + $iCol = sp + 130|0; + $zCol = sp + 12|0; + $pNe = sp + 20|0; + $pLeft1 = sp + 24|0; + $pRight2 = sp + 28|0; + $pEq3 = sp + 32|0; + $pAll = sp + 36|0; + $pPk = sp + 40|0; + $iCol4 = sp + 128|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pSrc; + HEAP32[$2>>2] = $pTab; + HEAP32[$3>>2] = $pIdx; + HEAP32[$4>>2] = $pFKey; + HEAP32[$5>>2] = $aiCol; + HEAP32[$6>>2] = $regData; + HEAP32[$7>>2] = $nIncr; + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$db>>2] = $9; + HEAP32[$pWhere>>2] = 0; + HEAP32[$iFkIfZero>>2] = 0; + $10 = HEAP32[$0>>2]|0; + $11 = (_sqlite3GetVdbe($10)|0); + HEAP32[$v>>2] = $11; + $12 = HEAP32[$7>>2]|0; + $13 = ($12|0)<(0); + if ($13) { + $14 = HEAP32[$v>>2]|0; + $15 = HEAP32[$4>>2]|0; + $16 = (($15) + 24|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = (_sqlite3VdbeAddOp2($14,131,$18,0)|0); + HEAP32[$iFkIfZero>>2] = $19; + } + HEAP32[$i>>2] = 0; + while(1) { + $20 = HEAP32[$i>>2]|0; + $21 = HEAP32[$4>>2]|0; + $22 = (($21) + 20|0); + $23 = HEAP32[$22>>2]|0; + $24 = ($20|0)<($23|0); + if (!($24)) { + break; + } + $25 = HEAP32[$3>>2]|0; + $26 = ($25|0)!=(0|0); + if ($26) { + $27 = HEAP32[$i>>2]|0; + $28 = HEAP32[$3>>2]|0; + $29 = (($28) + 4|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + ($27<<1)|0); + $32 = HEAP16[$31>>1]|0; + $33 = $32 << 16 >> 16; + $35 = $33; + } else { + $35 = -1; + } + $34 = $35&65535; + HEAP16[$iCol>>1] = $34; + $36 = HEAP32[$0>>2]|0; + $37 = HEAP32[$2>>2]|0; + $38 = HEAP32[$6>>2]|0; + $39 = HEAP16[$iCol>>1]|0; + $40 = (_exprTableRegister($36,$37,$38,$39)|0); + HEAP32[$pLeft>>2] = $40; + $41 = HEAP32[$5>>2]|0; + $42 = ($41|0)!=(0|0); + if ($42) { + $43 = HEAP32[$i>>2]|0; + $44 = HEAP32[$5>>2]|0; + $45 = (($44) + ($43<<2)|0); + $46 = HEAP32[$45>>2]|0; + $51 = $46; + } else { + $47 = HEAP32[$4>>2]|0; + $48 = (($47) + 36|0); + $49 = HEAP32[$48>>2]|0; + $51 = $49; + } + $50 = $51&65535; + HEAP16[$iCol>>1] = $50; + $52 = HEAP16[$iCol>>1]|0; + $53 = $52 << 16 >> 16; + $54 = HEAP32[$4>>2]|0; + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + 4|0); + $57 = HEAP32[$56>>2]|0; + $58 = (($57) + (($53*24)|0)|0); + $59 = HEAP32[$58>>2]|0; + HEAP32[$zCol>>2] = $59; + $60 = HEAP32[$db>>2]|0; + $61 = HEAP32[$zCol>>2]|0; + $62 = (_sqlite3Expr($60,27,$61)|0); + HEAP32[$pRight>>2] = $62; + $63 = HEAP32[$0>>2]|0; + $64 = HEAP32[$pLeft>>2]|0; + $65 = HEAP32[$pRight>>2]|0; + $66 = (_sqlite3PExpr($63,79,$64,$65,0)|0); + HEAP32[$pEq>>2] = $66; + $67 = HEAP32[$db>>2]|0; + $68 = HEAP32[$pWhere>>2]|0; + $69 = HEAP32[$pEq>>2]|0; + $70 = (_sqlite3ExprAnd($67,$68,$69)|0); + HEAP32[$pWhere>>2] = $70; + $71 = HEAP32[$i>>2]|0; + $72 = (($71) + 1)|0; + HEAP32[$i>>2] = $72; + } + $73 = HEAP32[$2>>2]|0; + $74 = HEAP32[$4>>2]|0; + $75 = HEAP32[$74>>2]|0; + $76 = ($73|0)==($75|0); + if ($76) { + $77 = HEAP32[$7>>2]|0; + $78 = ($77|0)>(0); + if ($78) { + $79 = HEAP32[$2>>2]|0; + $80 = (($79) + 44|0); + $81 = HEAP8[$80>>0]|0; + $82 = $81&255; + $83 = $82 & 32; + $84 = ($83|0)==(0); + if ($84) { + $85 = HEAP32[$0>>2]|0; + $86 = HEAP32[$2>>2]|0; + $87 = HEAP32[$6>>2]|0; + $88 = (_exprTableRegister($85,$86,$87,-1)|0); + HEAP32[$pLeft1>>2] = $88; + $89 = HEAP32[$db>>2]|0; + $90 = HEAP32[$2>>2]|0; + $91 = HEAP32[$1>>2]|0; + $92 = (($91) + 8|0); + $93 = (($92) + 40|0); + $94 = HEAP32[$93>>2]|0; + $95 = (_exprTableColumn($89,$90,$94,-1)|0); + HEAP32[$pRight2>>2] = $95; + $96 = HEAP32[$0>>2]|0; + $97 = HEAP32[$pLeft1>>2]|0; + $98 = HEAP32[$pRight2>>2]|0; + $99 = (_sqlite3PExpr($96,78,$97,$98,0)|0); + HEAP32[$pNe>>2] = $99; + } else { + HEAP32[$pAll>>2] = 0; + $100 = HEAP32[$2>>2]|0; + $101 = (_sqlite3PrimaryKeyIndex($100)|0); + HEAP32[$pPk>>2] = $101; + HEAP32[$i>>2] = 0; + while(1) { + $102 = HEAP32[$i>>2]|0; + $103 = HEAP32[$pPk>>2]|0; + $104 = (($103) + 50|0); + $105 = HEAP16[$104>>1]|0; + $106 = $105&65535; + $107 = ($102|0)<($106|0); + if (!($107)) { + break; + } + $108 = HEAP32[$i>>2]|0; + $109 = HEAP32[$3>>2]|0; + $110 = (($109) + 4|0); + $111 = HEAP32[$110>>2]|0; + $112 = (($111) + ($108<<1)|0); + $113 = HEAP16[$112>>1]|0; + HEAP16[$iCol4>>1] = $113; + $114 = HEAP32[$0>>2]|0; + $115 = HEAP32[$2>>2]|0; + $116 = HEAP32[$6>>2]|0; + $117 = HEAP16[$iCol4>>1]|0; + $118 = (_exprTableRegister($114,$115,$116,$117)|0); + HEAP32[$pLeft1>>2] = $118; + $119 = HEAP32[$db>>2]|0; + $120 = HEAP32[$2>>2]|0; + $121 = HEAP32[$1>>2]|0; + $122 = (($121) + 8|0); + $123 = (($122) + 40|0); + $124 = HEAP32[$123>>2]|0; + $125 = HEAP16[$iCol4>>1]|0; + $126 = (_exprTableColumn($119,$120,$124,$125)|0); + HEAP32[$pRight2>>2] = $126; + $127 = HEAP32[$0>>2]|0; + $128 = HEAP32[$pLeft1>>2]|0; + $129 = HEAP32[$pRight2>>2]|0; + $130 = (_sqlite3PExpr($127,79,$128,$129,0)|0); + HEAP32[$pEq3>>2] = $130; + $131 = HEAP32[$db>>2]|0; + $132 = HEAP32[$pAll>>2]|0; + $133 = HEAP32[$pEq3>>2]|0; + $134 = (_sqlite3ExprAnd($131,$132,$133)|0); + HEAP32[$pAll>>2] = $134; + $135 = HEAP32[$i>>2]|0; + $136 = (($135) + 1)|0; + HEAP32[$i>>2] = $136; + } + $137 = HEAP32[$0>>2]|0; + $138 = HEAP32[$pAll>>2]|0; + $139 = (_sqlite3PExpr($137,19,$138,0,0)|0); + HEAP32[$pNe>>2] = $139; + } + $140 = HEAP32[$db>>2]|0; + $141 = HEAP32[$pWhere>>2]|0; + $142 = HEAP32[$pNe>>2]|0; + $143 = (_sqlite3ExprAnd($140,$141,$142)|0); + HEAP32[$pWhere>>2] = $143; + } + } + ;HEAP32[$sNameContext+0>>2]=0|0;HEAP32[$sNameContext+4>>2]=0|0;HEAP32[$sNameContext+8>>2]=0|0;HEAP32[$sNameContext+12>>2]=0|0;HEAP32[$sNameContext+16>>2]=0|0;HEAP32[$sNameContext+20>>2]=0|0;HEAP32[$sNameContext+24>>2]=0|0;HEAP32[$sNameContext+28>>2]=0|0; + $144 = HEAP32[$1>>2]|0; + $145 = (($sNameContext) + 4|0); + HEAP32[$145>>2] = $144; + $146 = HEAP32[$0>>2]|0; + HEAP32[$sNameContext>>2] = $146; + $147 = HEAP32[$pWhere>>2]|0; + (_sqlite3ResolveExprNames($sNameContext,$147)|0); + $148 = HEAP32[$0>>2]|0; + $149 = HEAP32[$1>>2]|0; + $150 = HEAP32[$pWhere>>2]|0; + $151 = (_sqlite3WhereBegin($148,$149,$150,0,0,0,0)|0); + HEAP32[$pWInfo>>2] = $151; + $152 = HEAP32[$7>>2]|0; + $153 = ($152|0)>(0); + if ($153) { + $154 = HEAP32[$4>>2]|0; + $155 = (($154) + 24|0); + $156 = HEAP8[$155>>0]|0; + $157 = $156&255; + $158 = ($157|0)==(0); + if ($158) { + $159 = HEAP32[$0>>2]|0; + $160 = (($159) + 408|0); + $161 = HEAP32[$160>>2]|0; + $162 = ($161|0)!=(0|0); + $163 = HEAP32[$0>>2]|0; + if ($162) { + $164 = (($163) + 408|0); + $165 = HEAP32[$164>>2]|0; + $167 = $165; + } else { + $167 = $163; + } + $166 = (($167) + 21|0); + HEAP8[$166>>0] = 1; + } + } + $168 = HEAP32[$v>>2]|0; + $169 = HEAP32[$4>>2]|0; + $170 = (($169) + 24|0); + $171 = HEAP8[$170>>0]|0; + $172 = $171&255; + $173 = HEAP32[$7>>2]|0; + (_sqlite3VdbeAddOp2($168,130,$172,$173)|0); + $174 = HEAP32[$pWInfo>>2]|0; + $175 = ($174|0)!=(0|0); + if ($175) { + $176 = HEAP32[$pWInfo>>2]|0; + _sqlite3WhereEnd($176); + } + $177 = HEAP32[$db>>2]|0; + $178 = HEAP32[$pWhere>>2]|0; + _sqlite3ExprDelete($177,$178); + $179 = HEAP32[$iFkIfZero>>2]|0; + $180 = ($179|0)!=(0); + if (!($180)) { + STACKTOP = sp;return; + } + $181 = HEAP32[$v>>2]|0; + $182 = HEAP32[$iFkIfZero>>2]|0; + _sqlite3VdbeJumpHere($181,$182); + STACKTOP = sp;return; +} +function _exprTableRegister($pParse,$pTab,$regBase,$iCol) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $regBase = $regBase|0; + $iCol = $iCol|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $pCol = 0, $pExpr = 0; + var $zColl = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 28|0; + $pExpr = sp + 12|0; + $pCol = sp + 16|0; + $zColl = sp + 20|0; + $db = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $regBase; + HEAP16[$3>>1] = $iCol; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$db>>2]|0; + $7 = (_sqlite3Expr($6,159,0)|0); + HEAP32[$pExpr>>2] = $7; + $8 = HEAP32[$pExpr>>2]|0; + $9 = ($8|0)!=(0|0); + if (!($9)) { + $56 = HEAP32[$pExpr>>2]|0; + STACKTOP = sp;return ($56|0); + } + $10 = HEAP16[$3>>1]|0; + $11 = $10 << 16 >> 16; + $12 = ($11|0)>=(0); + if ($12) { + $13 = HEAP16[$3>>1]|0; + $14 = $13 << 16 >> 16; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 36|0); + $17 = HEAP16[$16>>1]|0; + $18 = $17 << 16 >> 16; + $19 = ($14|0)!=($18|0); + if ($19) { + $20 = HEAP16[$3>>1]|0; + $21 = $20 << 16 >> 16; + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 4|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + (($21*24)|0)|0); + HEAP32[$pCol>>2] = $25; + $26 = HEAP32[$2>>2]|0; + $27 = HEAP16[$3>>1]|0; + $28 = $27 << 16 >> 16; + $29 = (($26) + ($28))|0; + $30 = (($29) + 1)|0; + $31 = HEAP32[$pExpr>>2]|0; + $32 = (($31) + 28|0); + HEAP32[$32>>2] = $30; + $33 = HEAP32[$pCol>>2]|0; + $34 = (($33) + 21|0); + $35 = HEAP8[$34>>0]|0; + $36 = HEAP32[$pExpr>>2]|0; + $37 = (($36) + 1|0); + HEAP8[$37>>0] = $35; + $38 = HEAP32[$pCol>>2]|0; + $39 = (($38) + 16|0); + $40 = HEAP32[$39>>2]|0; + HEAP32[$zColl>>2] = $40; + $41 = HEAP32[$zColl>>2]|0; + $42 = ($41|0)==(0|0); + if ($42) { + $43 = HEAP32[$db>>2]|0; + $44 = (($43) + 8|0); + $45 = HEAP32[$44>>2]|0; + $46 = HEAP32[$45>>2]|0; + HEAP32[$zColl>>2] = $46; + } + $47 = HEAP32[$0>>2]|0; + $48 = HEAP32[$pExpr>>2]|0; + $49 = HEAP32[$zColl>>2]|0; + $50 = (_sqlite3ExprAddCollateString($47,$48,$49)|0); + HEAP32[$pExpr>>2] = $50; + $56 = HEAP32[$pExpr>>2]|0; + STACKTOP = sp;return ($56|0); + } + } + $51 = HEAP32[$2>>2]|0; + $52 = HEAP32[$pExpr>>2]|0; + $53 = (($52) + 28|0); + HEAP32[$53>>2] = $51; + $54 = HEAP32[$pExpr>>2]|0; + $55 = (($54) + 1|0); + HEAP8[$55>>0] = 100; + $56 = HEAP32[$pExpr>>2]|0; + STACKTOP = sp;return ($56|0); +} +function _exprTableColumn($db,$pTab,$iCursor,$iCol) { + $db = $db|0; + $pTab = $pTab|0; + $iCursor = $iCursor|0; + $iCol = $iCol|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pExpr = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 16|0; + $pExpr = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $iCursor; + HEAP16[$3>>1] = $iCol; + $4 = HEAP32[$0>>2]|0; + $5 = (_sqlite3Expr($4,154,0)|0); + HEAP32[$pExpr>>2] = $5; + $6 = HEAP32[$pExpr>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + $17 = HEAP32[$pExpr>>2]|0; + STACKTOP = sp;return ($17|0); + } + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$pExpr>>2]|0; + $10 = (($9) + 44|0); + HEAP32[$10>>2] = $8; + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$pExpr>>2]|0; + $13 = (($12) + 28|0); + HEAP32[$13>>2] = $11; + $14 = HEAP16[$3>>1]|0; + $15 = HEAP32[$pExpr>>2]|0; + $16 = (($15) + 32|0); + HEAP16[$16>>1] = $14; + $17 = HEAP32[$pExpr>>2]|0; + STACKTOP = sp;return ($17|0); +} +function _sqlite3WhereBegin($pParse,$pTabList,$pWhere,$pOrderBy,$pResultSet,$wctrlFlags,$iIdxCur) { + $pParse = $pParse|0; + $pTabList = $pTabList|0; + $pWhere = $pWhere|0; + $pOrderBy = $pOrderBy|0; + $pResultSet = $pResultSet|0; + $wctrlFlags = $wctrlFlags|0; + $iIdxCur = $iIdxCur|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; + var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; + var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; + var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; + var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; + var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0; + var $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0; + var $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0; + var $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0; + var $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0; + var $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0; + var $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $b = 0, $db = 0, $iCur = 0, $iDb = 0, $iIndexCur = 0, $ii = 0, $n = 0; + var $nByteWInfo = 0, $nTabList = 0, $notReady = 0, $op = 0, $op1 = 0, $pEnd = 0, $pIx = 0, $pJ = 0, $pLevel = 0, $pLoop = 0, $pMaskSet = 0, $pTab = 0, $pTabItem = 0, $pTerm = 0, $pVTab = 0, $pWInfo = 0, $rc = 0, $sWLB = 0, $tabUsed = 0, $v = 0; + var $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 176|0; + $vararg_buffer = sp + 16|0; + $0 = sp + 164|0; + $1 = sp + 160|0; + $2 = sp + 156|0; + $3 = sp + 152|0; + $4 = sp + 148|0; + $5 = sp + 144|0; + $6 = sp + 172|0; + $7 = sp + 140|0; + $nByteWInfo = sp + 136|0; + $nTabList = sp + 132|0; + $pWInfo = sp + 128|0; + $v = sp + 124|0; + $notReady = sp + 8|0; + $sWLB = sp + 104|0; + $pMaskSet = sp + 100|0; + $pLevel = sp + 96|0; + $pLoop = sp + 92|0; + $ii = sp + 168|0; + $db = sp + 52|0; + $rc = sp + 32|0; + $tabUsed = sp + 24|0; + $pTerm = sp + 48|0; + $pEnd = sp + 36|0; + $pTab = sp + 40|0; + $iDb = sp + 44|0; + $pTabItem = sp + 84|0; + $pVTab = sp + 56|0; + $iCur = sp + 60|0; + $op = sp + 64|0; + $b = sp; + $n = sp + 68|0; + $pIx = sp + 72|0; + $iIndexCur = sp + 76|0; + $op1 = sp + 80|0; + $pJ = sp + 88|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pTabList; + HEAP32[$3>>2] = $pWhere; + HEAP32[$4>>2] = $pOrderBy; + HEAP32[$5>>2] = $pResultSet; + HEAP16[$6>>1] = $wctrlFlags; + HEAP32[$7>>2] = $iIdxCur; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 8|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$v>>2] = $10; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$11>>2]|0; + HEAP32[$db>>2] = $12; + ;HEAP32[$sWLB+0>>2]=0|0;HEAP32[$sWLB+4>>2]=0|0;HEAP32[$sWLB+8>>2]=0|0;HEAP32[$sWLB+12>>2]=0|0;HEAP32[$sWLB+16>>2]=0|0; + $13 = HEAP32[$4>>2]|0; + $14 = ($13|0)!=(0|0); + if ($14) { + $15 = HEAP32[$4>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)>=(64); + if ($17) { + HEAP32[$4>>2] = 0; + } + } + $18 = HEAP32[$4>>2]|0; + $19 = (($sWLB) + 8|0); + HEAP32[$19>>2] = $18; + $20 = HEAP32[$db>>2]|0; + $21 = (($20) + 60|0); + $22 = HEAP16[$21>>1]|0; + $23 = $22&65535; + $24 = $23 & 32; + $25 = ($24|0)!=(0); + if ($25) { + $26 = HEAP16[$6>>1]|0; + $27 = $26&65535; + $28 = $27 & -1025; + $29 = $28&65535; + HEAP16[$6>>1] = $29; + } + $30 = HEAP32[$2>>2]|0; + $31 = HEAP32[$30>>2]|0; + $32 = ($31|0)>(64); + if ($32) { + $33 = HEAP32[$1>>2]|0; + HEAP32[$vararg_buffer>>2] = 64; + _sqlite3ErrorMsg($33,29960,$vararg_buffer); + HEAP32[$0>>2] = 0; + $792 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($792|0); + } + $34 = HEAP16[$6>>1]|0; + $35 = $34&65535; + $36 = $35 & 64; + $37 = ($36|0)!=(0); + if ($37) { + $40 = 1; + } else { + $38 = HEAP32[$2>>2]|0; + $39 = HEAP32[$38>>2]|0; + $40 = $39; + } + HEAP32[$nTabList>>2] = $40; + $41 = HEAP32[$nTabList>>2]|0; + $42 = (($41) - 1)|0; + $43 = ($42*72)|0; + $44 = (808 + ($43))|0; + $45 = (($44) + 7)|0; + $46 = $45 & -8; + HEAP32[$nByteWInfo>>2] = $46; + $47 = HEAP32[$db>>2]|0; + $48 = HEAP32[$nByteWInfo>>2]|0; + $49 = (($48) + 72)|0; + $50 = (_sqlite3DbMallocZero($47,$49)|0); + HEAP32[$pWInfo>>2] = $50; + $51 = HEAP32[$db>>2]|0; + $52 = (($51) + 64|0); + $53 = HEAP8[$52>>0]|0; + $54 = ($53<<24>>24)!=(0); + L15: do { + if ($54) { + $55 = HEAP32[$db>>2]|0; + $56 = HEAP32[$pWInfo>>2]|0; + _sqlite3DbFree($55,$56); + HEAP32[$pWInfo>>2] = 0; + } else { + $57 = HEAP32[$pWInfo>>2]|0; + $58 = (($57) + 60|0); + $59 = (($58) + 4|0); + HEAP32[$59>>2] = -1; + $60 = HEAP32[$pWInfo>>2]|0; + $61 = (($60) + 60|0); + HEAP32[$61>>2] = -1; + $62 = HEAP32[$nTabList>>2]|0; + $63 = $62&255; + $64 = HEAP32[$pWInfo>>2]|0; + $65 = (($64) + 41|0); + HEAP8[$65>>0] = $63; + $66 = HEAP32[$1>>2]|0; + $67 = HEAP32[$pWInfo>>2]|0; + HEAP32[$67>>2] = $66; + $68 = HEAP32[$2>>2]|0; + $69 = HEAP32[$pWInfo>>2]|0; + $70 = (($69) + 4|0); + HEAP32[$70>>2] = $68; + $71 = HEAP32[$4>>2]|0; + $72 = HEAP32[$pWInfo>>2]|0; + $73 = (($72) + 8|0); + HEAP32[$73>>2] = $71; + $74 = HEAP32[$5>>2]|0; + $75 = HEAP32[$pWInfo>>2]|0; + $76 = (($75) + 12|0); + HEAP32[$76>>2] = $74; + $77 = HEAP32[$v>>2]|0; + $78 = (_sqlite3VdbeMakeLabel($77)|0); + $79 = HEAP32[$pWInfo>>2]|0; + $80 = (($79) + 48|0); + HEAP32[$80>>2] = $78; + $81 = HEAP32[$pWInfo>>2]|0; + $82 = (($81) + 52|0); + HEAP32[$82>>2] = $78; + $83 = HEAP16[$6>>1]|0; + $84 = HEAP32[$pWInfo>>2]|0; + $85 = (($84) + 34|0); + HEAP16[$85>>1] = $83; + $86 = HEAP32[$1>>2]|0; + $87 = (($86) + 424|0); + $88 = HEAP32[$87>>2]|0; + $89 = HEAP32[$pWInfo>>2]|0; + $90 = (($89) + 56|0); + HEAP32[$90>>2] = $88; + $91 = HEAP32[$pWInfo>>2]|0; + $92 = (($91) + 68|0); + HEAP32[$pMaskSet>>2] = $92; + $93 = HEAP32[$pWInfo>>2]|0; + HEAP32[$sWLB>>2] = $93; + $94 = HEAP32[$pWInfo>>2]|0; + $95 = (($94) + 328|0); + $96 = (($sWLB) + 4|0); + HEAP32[$96>>2] = $95; + $97 = HEAP32[$pWInfo>>2]|0; + $98 = HEAP32[$nByteWInfo>>2]|0; + $99 = (($97) + ($98)|0); + $100 = (($sWLB) + 12|0); + HEAP32[$100>>2] = $99; + $101 = (($sWLB) + 12|0); + $102 = HEAP32[$101>>2]|0; + _whereLoopInit($102); + $103 = HEAP32[$pMaskSet>>2]|0; + HEAP32[$103>>2] = 0; + $104 = HEAP32[$pWInfo>>2]|0; + $105 = (($104) + 328|0); + $106 = HEAP32[$pWInfo>>2]|0; + _whereClauseInit($105,$106); + $107 = HEAP32[$pWInfo>>2]|0; + $108 = (($107) + 328|0); + $109 = HEAP32[$3>>2]|0; + _whereSplit($108,$109,72); + HEAP32[$ii>>2] = 0; + while(1) { + $110 = HEAP32[$ii>>2]|0; + $111 = (($sWLB) + 4|0); + $112 = HEAP32[$111>>2]|0; + $113 = (($112) + 12|0); + $114 = HEAP32[$113>>2]|0; + $115 = ($110|0)<($114|0); + $116 = HEAP32[$nTabList>>2]|0; + $117 = ($116|0)==(0); + if (!($115)) { + break; + } + if ($117) { + label = 16; + } else { + $118 = HEAP32[$ii>>2]|0; + $119 = (($sWLB) + 4|0); + $120 = HEAP32[$119>>2]|0; + $121 = (($120) + 20|0); + $122 = HEAP32[$121>>2]|0; + $123 = (($122) + (($118*48)|0)|0); + $124 = HEAP32[$123>>2]|0; + $125 = (_sqlite3ExprIsConstantNotJoin($124)|0); + $126 = ($125|0)!=(0); + if ($126) { + label = 16; + } + } + if ((label|0) == 16) { + label = 0; + $127 = HEAP32[$1>>2]|0; + $128 = HEAP32[$ii>>2]|0; + $129 = (($sWLB) + 4|0); + $130 = HEAP32[$129>>2]|0; + $131 = (($130) + 20|0); + $132 = HEAP32[$131>>2]|0; + $133 = (($132) + (($128*48)|0)|0); + $134 = HEAP32[$133>>2]|0; + $135 = HEAP32[$pWInfo>>2]|0; + $136 = (($135) + 52|0); + $137 = HEAP32[$136>>2]|0; + _sqlite3ExprIfFalse($127,$134,$137,8); + $138 = HEAP32[$ii>>2]|0; + $139 = (($sWLB) + 4|0); + $140 = HEAP32[$139>>2]|0; + $141 = (($140) + 20|0); + $142 = HEAP32[$141>>2]|0; + $143 = (($142) + (($138*48)|0)|0); + $144 = (($143) + 20|0); + $145 = HEAP8[$144>>0]|0; + $146 = $145&255; + $147 = $146 | 4; + $148 = $147&255; + HEAP8[$144>>0] = $148; + } + $149 = HEAP32[$ii>>2]|0; + $150 = (($149) + 1)|0; + HEAP32[$ii>>2] = $150; + } + if ($117) { + $151 = HEAP32[$4>>2]|0; + $152 = ($151|0)!=(0|0); + if ($152) { + $153 = HEAP32[$4>>2]|0; + $154 = HEAP32[$153>>2]|0; + $155 = $154&255; + $156 = HEAP32[$pWInfo>>2]|0; + $157 = (($156) + 36|0); + HEAP8[$157>>0] = $155; + } + $158 = HEAP16[$6>>1]|0; + $159 = $158&65535; + $160 = $159 & 1024; + $161 = ($160|0)!=(0); + if ($161) { + $162 = HEAP32[$pWInfo>>2]|0; + $163 = (($162) + 40|0); + HEAP8[$163>>0] = 1; + } + } + HEAP32[$ii>>2] = 0; + while(1) { + $164 = HEAP32[$ii>>2]|0; + $165 = HEAP32[$2>>2]|0; + $166 = HEAP32[$165>>2]|0; + $167 = ($164|0)<($166|0); + if (!($167)) { + break; + } + $168 = HEAP32[$pMaskSet>>2]|0; + $169 = HEAP32[$ii>>2]|0; + $170 = HEAP32[$2>>2]|0; + $171 = (($170) + 8|0); + $172 = (($171) + (($169*72)|0)|0); + $173 = (($172) + 40|0); + $174 = HEAP32[$173>>2]|0; + _createMask($168,$174); + $175 = HEAP32[$ii>>2]|0; + $176 = (($175) + 1)|0; + HEAP32[$ii>>2] = $176; + } + $177 = HEAP32[$2>>2]|0; + $178 = HEAP32[$pWInfo>>2]|0; + $179 = (($178) + 328|0); + _exprAnalyzeAll($177,$179); + $180 = HEAP32[$db>>2]|0; + $181 = (($180) + 64|0); + $182 = HEAP8[$181>>0]|0; + $183 = ($182<<24>>24)!=(0); + if (!($183)) { + $184 = HEAP16[$6>>1]|0; + $185 = $184&65535; + $186 = $185 & 1024; + $187 = ($186|0)!=(0); + do { + if ($187) { + $188 = HEAP32[$1>>2]|0; + $189 = HEAP32[$2>>2]|0; + $190 = HEAP32[$pWInfo>>2]|0; + $191 = (($190) + 328|0); + $192 = HEAP32[$5>>2]|0; + $193 = (_isDistinctRedundant($188,$189,$191,$192)|0); + $194 = ($193|0)!=(0); + if ($194) { + $195 = HEAP32[$pWInfo>>2]|0; + $196 = (($195) + 40|0); + HEAP8[$196>>0] = 1; + break; + } + $197 = HEAP32[$4>>2]|0; + $198 = ($197|0)==(0|0); + if ($198) { + $199 = HEAP32[$pWInfo>>2]|0; + $200 = (($199) + 34|0); + $201 = HEAP16[$200>>1]|0; + $202 = $201&65535; + $203 = $202 | 512; + $204 = $203&65535; + HEAP16[$200>>1] = $204; + $205 = HEAP32[$5>>2]|0; + $206 = HEAP32[$pWInfo>>2]|0; + $207 = (($206) + 8|0); + HEAP32[$207>>2] = $205; + } + } + } while(0); + $208 = HEAP32[$nTabList>>2]|0; + $209 = ($208|0)!=(1); + if ($209) { + label = 34; + } else { + $210 = (_whereShortCut($sWLB)|0); + $211 = ($210|0)==(0); + if ($211) { + label = 34; + } + } + if ((label|0) == 34) { + $212 = (_whereLoopAddAll($sWLB)|0); + HEAP32[$rc>>2] = $212; + $213 = HEAP32[$rc>>2]|0; + $214 = ($213|0)!=(0); + if ($214) { + break; + } + $215 = HEAP32[$pWInfo>>2]|0; + (_wherePathSolver($215,0)|0); + $216 = HEAP32[$db>>2]|0; + $217 = (($216) + 64|0); + $218 = HEAP8[$217>>0]|0; + $219 = ($218<<24>>24)!=(0); + if ($219) { + break; + } + $220 = HEAP32[$pWInfo>>2]|0; + $221 = (($220) + 8|0); + $222 = HEAP32[$221>>2]|0; + $223 = ($222|0)!=(0|0); + if ($223) { + $224 = HEAP32[$pWInfo>>2]|0; + $225 = HEAP32[$pWInfo>>2]|0; + $226 = (($225) + 32|0); + $227 = HEAP16[$226>>1]|0; + $228 = $227 << 16 >> 16; + $229 = (($228) + 1)|0; + $230 = $229&65535; + (_wherePathSolver($224,$230)|0); + $231 = HEAP32[$db>>2]|0; + $232 = (($231) + 64|0); + $233 = HEAP8[$232>>0]|0; + $234 = ($233<<24>>24)!=(0); + if ($234) { + break; + } + } + } + $235 = HEAP32[$pWInfo>>2]|0; + $236 = (($235) + 8|0); + $237 = HEAP32[$236>>2]|0; + $238 = ($237|0)==(0|0); + if ($238) { + $239 = HEAP32[$db>>2]|0; + $240 = (($239) + 24|0); + $241 = HEAP32[$240>>2]|0; + $242 = $241 & 131072; + $243 = ($242|0)!=(0); + if ($243) { + $244 = HEAP32[$pWInfo>>2]|0; + $245 = (($244) + 24|0); + $246 = $245; + $247 = $246; + HEAP32[$247>>2] = -1; + $248 = (($246) + 4)|0; + $249 = $248; + HEAP32[$249>>2] = -1; + } + } + $250 = HEAP32[$1>>2]|0; + $251 = (($250) + 64|0); + $252 = HEAP32[$251>>2]|0; + $253 = ($252|0)!=(0); + if (!($253)) { + $254 = HEAP32[$db>>2]|0; + $255 = (($254) + 64|0); + $256 = HEAP8[$255>>0]|0; + $257 = $256&255; + $258 = ($257|0)!=(0); + if (!($258)) { + $259 = HEAP32[$pWInfo>>2]|0; + $260 = (($259) + 41|0); + $261 = HEAP8[$260>>0]|0; + $262 = $261&255; + $263 = ($262|0)>=(2); + L59: do { + if ($263) { + $264 = HEAP32[$5>>2]|0; + $265 = ($264|0)!=(0|0); + if ($265) { + $266 = HEAP32[$db>>2]|0; + $267 = (($266) + 60|0); + $268 = HEAP16[$267>>1]|0; + $269 = $268&65535; + $270 = $269 & 1024; + $271 = ($270|0)==(0); + if ($271) { + $272 = HEAP32[$pMaskSet>>2]|0; + $273 = HEAP32[$5>>2]|0; + $274 = (_exprListTableUsage($272,$273)|0); + $275 = tempRet0; + $276 = $tabUsed; + $277 = $276; + HEAP32[$277>>2] = $274; + $278 = (($276) + 4)|0; + $279 = $278; + HEAP32[$279>>2] = $275; + $280 = (($sWLB) + 8|0); + $281 = HEAP32[$280>>2]|0; + $282 = ($281|0)!=(0|0); + if ($282) { + $283 = HEAP32[$pMaskSet>>2]|0; + $284 = (($sWLB) + 8|0); + $285 = HEAP32[$284>>2]|0; + $286 = (_exprListTableUsage($283,$285)|0); + $287 = tempRet0; + $288 = $tabUsed; + $289 = $288; + $290 = HEAP32[$289>>2]|0; + $291 = (($288) + 4)|0; + $292 = $291; + $293 = HEAP32[$292>>2]|0; + $294 = $290 | $286; + $295 = $293 | $287; + $296 = $tabUsed; + $297 = $296; + HEAP32[$297>>2] = $294; + $298 = (($296) + 4)|0; + $299 = $298; + HEAP32[$299>>2] = $295; + } + while(1) { + $300 = HEAP32[$pWInfo>>2]|0; + $301 = (($300) + 41|0); + $302 = HEAP8[$301>>0]|0; + $303 = $302&255; + $304 = ($303|0)>=(2); + if (!($304)) { + break L59; + } + $305 = HEAP32[$pWInfo>>2]|0; + $306 = (($305) + 41|0); + $307 = HEAP8[$306>>0]|0; + $308 = $307&255; + $309 = (($308) - 1)|0; + $310 = HEAP32[$pWInfo>>2]|0; + $311 = (($310) + 736|0); + $312 = (($311) + (($309*72)|0)|0); + $313 = (($312) + 56|0); + $314 = HEAP32[$313>>2]|0; + HEAP32[$pLoop>>2] = $314; + $315 = HEAP32[$pLoop>>2]|0; + $316 = (($315) + 16|0); + $317 = HEAP8[$316>>0]|0; + $318 = $317&255; + $319 = HEAP32[$pWInfo>>2]|0; + $320 = (($319) + 4|0); + $321 = HEAP32[$320>>2]|0; + $322 = (($321) + 8|0); + $323 = (($322) + (($318*72)|0)|0); + $324 = (($323) + 36|0); + $325 = HEAP8[$324>>0]|0; + $326 = $325&255; + $327 = $326 & 8; + $328 = ($327|0)==(0); + if ($328) { + break L59; + } + $329 = HEAP16[$6>>1]|0; + $330 = $329&65535; + $331 = $330 & 1024; + $332 = ($331|0)==(0); + if ($332) { + $333 = HEAP32[$pLoop>>2]|0; + $334 = (($333) + 36|0); + $335 = HEAP32[$334>>2]|0; + $336 = $335 & 4096; + $337 = ($336|0)==(0); + if ($337) { + break L59; + } + } + $338 = $tabUsed; + $339 = $338; + $340 = HEAP32[$339>>2]|0; + $341 = (($338) + 4)|0; + $342 = $341; + $343 = HEAP32[$342>>2]|0; + $344 = HEAP32[$pLoop>>2]|0; + $345 = (($344) + 8|0); + $346 = $345; + $347 = $346; + $348 = HEAP32[$347>>2]|0; + $349 = (($346) + 4)|0; + $350 = $349; + $351 = HEAP32[$350>>2]|0; + $352 = $340 & $348; + $353 = $343 & $351; + $354 = ($352|0)!=(0); + $355 = ($353|0)!=(0); + $356 = $354 | $355; + if ($356) { + break L59; + } + $357 = (($sWLB) + 4|0); + $358 = HEAP32[$357>>2]|0; + $359 = (($358) + 20|0); + $360 = HEAP32[$359>>2]|0; + $361 = (($sWLB) + 4|0); + $362 = HEAP32[$361>>2]|0; + $363 = (($362) + 12|0); + $364 = HEAP32[$363>>2]|0; + $365 = (($360) + (($364*48)|0)|0); + HEAP32[$pEnd>>2] = $365; + $366 = (($sWLB) + 4|0); + $367 = HEAP32[$366>>2]|0; + $368 = (($367) + 20|0); + $369 = HEAP32[$368>>2]|0; + HEAP32[$pTerm>>2] = $369; + while(1) { + $370 = HEAP32[$pTerm>>2]|0; + $371 = HEAP32[$pEnd>>2]|0; + $372 = ($370>>>0)<($371>>>0); + if (!($372)) { + break; + } + $373 = HEAP32[$pTerm>>2]|0; + $374 = (($373) + 40|0); + $375 = $374; + $376 = $375; + $377 = HEAP32[$376>>2]|0; + $378 = (($375) + 4)|0; + $379 = $378; + $380 = HEAP32[$379>>2]|0; + $381 = HEAP32[$pLoop>>2]|0; + $382 = (($381) + 8|0); + $383 = $382; + $384 = $383; + $385 = HEAP32[$384>>2]|0; + $386 = (($383) + 4)|0; + $387 = $386; + $388 = HEAP32[$387>>2]|0; + $389 = $377 & $385; + $390 = $380 & $388; + $391 = ($389|0)!=(0); + $392 = ($390|0)!=(0); + $393 = $391 | $392; + if ($393) { + $394 = HEAP32[$pTerm>>2]|0; + $395 = HEAP32[$394>>2]|0; + $396 = (($395) + 4|0); + $397 = HEAP32[$396>>2]|0; + $398 = $397 & 1; + $399 = ($398|0)!=(0); + if (!($399)) { + break; + } + } + $400 = HEAP32[$pTerm>>2]|0; + $401 = (($400) + 48|0); + HEAP32[$pTerm>>2] = $401; + } + $402 = HEAP32[$pTerm>>2]|0; + $403 = HEAP32[$pEnd>>2]|0; + $404 = ($402>>>0)<($403>>>0); + if ($404) { + break L59; + } + $405 = HEAP32[$pWInfo>>2]|0; + $406 = (($405) + 41|0); + $407 = HEAP8[$406>>0]|0; + $408 = (($407) + -1)<<24>>24; + HEAP8[$406>>0] = $408; + $409 = HEAP32[$nTabList>>2]|0; + $410 = (($409) + -1)|0; + HEAP32[$nTabList>>2] = $410; + } + } + } + } + } while(0); + $411 = HEAP32[$pWInfo>>2]|0; + $412 = (($411) + 32|0); + $413 = HEAP16[$412>>1]|0; + $414 = $413 << 16 >> 16; + $415 = HEAP32[$pWInfo>>2]|0; + $416 = HEAP32[$415>>2]|0; + $417 = (($416) + 424|0); + $418 = HEAP32[$417>>2]|0; + $419 = (($418) + ($414))|0; + HEAP32[$417>>2] = $419; + $420 = HEAP16[$6>>1]|0; + $421 = $420&65535; + $422 = $421 & 4; + $423 = ($422|0)!=(0); + if ($423) { + $424 = HEAP32[$pWInfo>>2]|0; + $425 = (($424) + 736|0); + $426 = (($425) + 56|0); + $427 = HEAP32[$426>>2]|0; + $428 = (($427) + 36|0); + $429 = HEAP32[$428>>2]|0; + $430 = $429 & 4096; + $431 = ($430|0)!=(0); + if ($431) { + $432 = HEAP32[$pWInfo>>2]|0; + $433 = (($432) + 38|0); + HEAP8[$433>>0] = 1; + $434 = HEAP32[$2>>2]|0; + $435 = (($434) + 8|0); + $436 = (($435) + 16|0); + $437 = HEAP32[$436>>2]|0; + $438 = (($437) + 44|0); + $439 = HEAP8[$438>>0]|0; + $440 = $439&255; + $441 = $440 & 32; + $442 = ($441|0)==(0); + if ($442) { + $443 = HEAP32[$pWInfo>>2]|0; + $444 = (($443) + 736|0); + $445 = (($444) + 56|0); + $446 = HEAP32[$445>>2]|0; + $447 = (($446) + 36|0); + $448 = HEAP32[$447>>2]|0; + $449 = $448 & -65; + HEAP32[$447>>2] = $449; + } + } + } + $450 = $notReady; + $451 = $450; + HEAP32[$451>>2] = -1; + $452 = (($450) + 4)|0; + $453 = $452; + HEAP32[$453>>2] = -1; + HEAP32[$ii>>2] = 0; + $454 = HEAP32[$pWInfo>>2]|0; + $455 = (($454) + 736|0); + HEAP32[$pLevel>>2] = $455; + while(1) { + $456 = HEAP32[$ii>>2]|0; + $457 = HEAP32[$nTabList>>2]|0; + $458 = ($456|0)<($457|0); + if (!($458)) { + break; + } + $459 = HEAP32[$pLevel>>2]|0; + $460 = (($459) + 36|0); + $461 = HEAP8[$460>>0]|0; + $462 = $461&255; + $463 = HEAP32[$2>>2]|0; + $464 = (($463) + 8|0); + $465 = (($464) + (($462*72)|0)|0); + HEAP32[$pTabItem>>2] = $465; + $466 = HEAP32[$pTabItem>>2]|0; + $467 = (($466) + 16|0); + $468 = HEAP32[$467>>2]|0; + HEAP32[$pTab>>2] = $468; + $469 = HEAP32[$db>>2]|0; + $470 = HEAP32[$pTab>>2]|0; + $471 = (($470) + 68|0); + $472 = HEAP32[$471>>2]|0; + $473 = (_sqlite3SchemaToIndex($469,$472)|0); + HEAP32[$iDb>>2] = $473; + $474 = HEAP32[$pLevel>>2]|0; + $475 = (($474) + 56|0); + $476 = HEAP32[$475>>2]|0; + HEAP32[$pLoop>>2] = $476; + $477 = HEAP32[$pTab>>2]|0; + $478 = (($477) + 44|0); + $479 = HEAP8[$478>>0]|0; + $480 = $479&255; + $481 = $480 & 2; + $482 = ($481|0)!=(0); + L90: do { + if (!($482)) { + $483 = HEAP32[$pTab>>2]|0; + $484 = (($483) + 12|0); + $485 = HEAP32[$484>>2]|0; + $486 = ($485|0)!=(0|0); + if (!($486)) { + $487 = HEAP32[$pLoop>>2]|0; + $488 = (($487) + 36|0); + $489 = HEAP32[$488>>2]|0; + $490 = $489 & 1024; + $491 = ($490|0)!=(0); + if ($491) { + $492 = HEAP32[$db>>2]|0; + $493 = HEAP32[$pTab>>2]|0; + $494 = (_sqlite3GetVTable($492,$493)|0); + HEAP32[$pVTab>>2] = $494; + $495 = HEAP32[$pTabItem>>2]|0; + $496 = (($495) + 40|0); + $497 = HEAP32[$496>>2]|0; + HEAP32[$iCur>>2] = $497; + $498 = HEAP32[$v>>2]|0; + $499 = HEAP32[$iCur>>2]|0; + $500 = HEAP32[$pVTab>>2]|0; + (_sqlite3VdbeAddOp4($498,149,$499,0,0,$500,-10)|0); + break; + } + $501 = HEAP32[$pTab>>2]|0; + $502 = (($501) + 44|0); + $503 = HEAP8[$502>>0]|0; + $504 = $503&255; + $505 = $504 & 16; + $506 = ($505|0)!=(0); + if ($506) { + break; + } + $507 = HEAP32[$pLoop>>2]|0; + $508 = (($507) + 36|0); + $509 = HEAP32[$508>>2]|0; + $510 = $509 & 64; + $511 = ($510|0)==(0); + do { + if ($511) { + $512 = HEAP16[$6>>1]|0; + $513 = $512&65535; + $514 = $513 & 16; + $515 = ($514|0)==(0); + if (!($515)) { + break; + } + HEAP32[$op>>2] = 52; + $516 = HEAP32[$pWInfo>>2]|0; + $517 = (($516) + 38|0); + $518 = HEAP8[$517>>0]|0; + $519 = ($518<<24>>24)!=(0); + if ($519) { + HEAP32[$op>>2] = 53; + $520 = HEAP32[$pTabItem>>2]|0; + $521 = (($520) + 40|0); + $522 = HEAP32[$521>>2]|0; + $523 = HEAP32[$pWInfo>>2]|0; + $524 = (($523) + 60|0); + HEAP32[$524>>2] = $522; + } + $525 = HEAP32[$1>>2]|0; + $526 = HEAP32[$pTabItem>>2]|0; + $527 = (($526) + 40|0); + $528 = HEAP32[$527>>2]|0; + $529 = HEAP32[$iDb>>2]|0; + $530 = HEAP32[$pTab>>2]|0; + $531 = HEAP32[$op>>2]|0; + _sqlite3OpenTable($525,$528,$529,$530,$531); + $532 = HEAP32[$pWInfo>>2]|0; + $533 = (($532) + 38|0); + $534 = HEAP8[$533>>0]|0; + $535 = ($534<<24>>24)!=(0); + if ($535) { + break L90; + } + $536 = HEAP32[$pTab>>2]|0; + $537 = (($536) + 38|0); + $538 = HEAP16[$537>>1]|0; + $539 = $538 << 16 >> 16; + $540 = ($539|0)<(64); + if (!($540)) { + break L90; + } + $541 = HEAP32[$pTab>>2]|0; + $542 = (($541) + 44|0); + $543 = HEAP8[$542>>0]|0; + $544 = $543&255; + $545 = $544 & 32; + $546 = ($545|0)==(0); + if (!($546)) { + break L90; + } + $547 = HEAP32[$pTabItem>>2]|0; + $548 = (($547) + 56|0); + $549 = $548; + $550 = $549; + $551 = HEAP32[$550>>2]|0; + $552 = (($549) + 4)|0; + $553 = $552; + $554 = HEAP32[$553>>2]|0; + $555 = $b; + $556 = $555; + HEAP32[$556>>2] = $551; + $557 = (($555) + 4)|0; + $558 = $557; + HEAP32[$558>>2] = $554; + HEAP32[$n>>2] = 0; + while(1) { + $559 = $b; + $560 = $559; + $561 = HEAP32[$560>>2]|0; + $562 = (($559) + 4)|0; + $563 = $562; + $564 = HEAP32[$563>>2]|0; + $565 = ($561|0)!=(0); + $566 = ($564|0)!=(0); + $567 = $565 | $566; + if (!($567)) { + break; + } + $568 = $b; + $569 = $568; + $570 = HEAP32[$569>>2]|0; + $571 = (($568) + 4)|0; + $572 = $571; + $573 = HEAP32[$572>>2]|0; + $574 = (_bitshift64Lshr(($570|0),($573|0),1)|0); + $575 = tempRet0; + $576 = $b; + $577 = $576; + HEAP32[$577>>2] = $574; + $578 = (($576) + 4)|0; + $579 = $578; + HEAP32[$579>>2] = $575; + $580 = HEAP32[$n>>2]|0; + $581 = (($580) + 1)|0; + HEAP32[$n>>2] = $581; + } + $582 = HEAP32[$v>>2]|0; + $583 = HEAP32[$v>>2]|0; + $584 = (_sqlite3VdbeCurrentAddr($583)|0); + $585 = (($584) - 1)|0; + $586 = HEAP32[$n>>2]|0; + $587 = $586; + _sqlite3VdbeChangeP4($582,$585,$587,-14); + break L90; + } + } while(0); + $588 = HEAP32[$1>>2]|0; + $589 = HEAP32[$iDb>>2]|0; + $590 = HEAP32[$pTab>>2]|0; + $591 = (($590) + 32|0); + $592 = HEAP32[$591>>2]|0; + $593 = HEAP32[$pTab>>2]|0; + $594 = HEAP32[$593>>2]|0; + _sqlite3TableLock($588,$589,$592,0,$594); + } + } + } while(0); + $595 = HEAP32[$pLoop>>2]|0; + $596 = (($595) + 36|0); + $597 = HEAP32[$596>>2]|0; + $598 = $597 & 512; + $599 = ($598|0)!=(0); + do { + if ($599) { + $600 = HEAP32[$pLoop>>2]|0; + $601 = (($600) + 24|0); + $602 = (($601) + 4|0); + $603 = HEAP32[$602>>2]|0; + HEAP32[$pIx>>2] = $603; + HEAP32[$op1>>2] = 52; + $604 = HEAP32[$pTab>>2]|0; + $605 = (($604) + 44|0); + $606 = HEAP8[$605>>0]|0; + $607 = $606&255; + $608 = $607 & 32; + $609 = ($608|0)==(0); + do { + if ($609) { + label = 88; + } else { + $610 = HEAP32[$pIx>>2]|0; + $611 = (($610) + 55|0); + $612 = HEAP8[$611>>0]|0; + $613 = $612 & 3; + $614 = $613&255; + $615 = ($614|0)==(2); + if (!($615)) { + label = 88; + break; + } + $616 = HEAP16[$6>>1]|0; + $617 = $616&65535; + $618 = $617 & 64; + $619 = ($618|0)!=(0); + if (!($619)) { + label = 88; + break; + } + $620 = HEAP32[$pLevel>>2]|0; + $621 = (($620) + 4|0); + $622 = HEAP32[$621>>2]|0; + HEAP32[$iIndexCur>>2] = $622; + HEAP32[$op1>>2] = 0; + } + } while(0); + L118: do { + if ((label|0) == 88) { + label = 0; + $623 = HEAP32[$pWInfo>>2]|0; + $624 = (($623) + 38|0); + $625 = HEAP8[$624>>0]|0; + $626 = ($625<<24>>24)!=(0); + if (!($626)) { + $647 = HEAP32[$7>>2]|0; + $648 = ($647|0)!=(0); + do { + if ($648) { + $649 = HEAP16[$6>>1]|0; + $650 = $649&65535; + $651 = $650 & 64; + $652 = ($651|0)!=(0); + if (!($652)) { + break; + } + $653 = HEAP32[$7>>2]|0; + HEAP32[$iIndexCur>>2] = $653; + break L118; + } + } while(0); + $654 = HEAP32[$1>>2]|0; + $655 = (($654) + 68|0); + $656 = HEAP32[$655>>2]|0; + $657 = (($656) + 1)|0; + HEAP32[$655>>2] = $657; + HEAP32[$iIndexCur>>2] = $656; + break; + } + $627 = HEAP32[$pTabItem>>2]|0; + $628 = (($627) + 16|0); + $629 = HEAP32[$628>>2]|0; + $630 = (($629) + 8|0); + $631 = HEAP32[$630>>2]|0; + HEAP32[$pJ>>2] = $631; + $632 = HEAP32[$7>>2]|0; + HEAP32[$iIndexCur>>2] = $632; + while(1) { + $633 = HEAP32[$pJ>>2]|0; + $634 = ($633|0)!=(0|0); + if (!($634)) { + break; + } + $635 = HEAP32[$pJ>>2]|0; + $636 = HEAP32[$pIx>>2]|0; + $637 = ($635|0)!=($636|0); + if (!($637)) { + break; + } + $638 = HEAP32[$iIndexCur>>2]|0; + $639 = (($638) + 1)|0; + HEAP32[$iIndexCur>>2] = $639; + $640 = HEAP32[$pJ>>2]|0; + $641 = (($640) + 20|0); + $642 = HEAP32[$641>>2]|0; + HEAP32[$pJ>>2] = $642; + } + HEAP32[$op1>>2] = 53; + $643 = HEAP32[$iIndexCur>>2]|0; + $644 = HEAP32[$pWInfo>>2]|0; + $645 = (($644) + 60|0); + $646 = (($645) + 4|0); + HEAP32[$646>>2] = $643; + } + } while(0); + $658 = HEAP32[$iIndexCur>>2]|0; + $659 = HEAP32[$pLevel>>2]|0; + $660 = (($659) + 8|0); + HEAP32[$660>>2] = $658; + $661 = HEAP32[$op1>>2]|0; + $662 = ($661|0)!=(0); + if (!($662)) { + break; + } + $663 = HEAP32[$v>>2]|0; + $664 = HEAP32[$op1>>2]|0; + $665 = HEAP32[$iIndexCur>>2]|0; + $666 = HEAP32[$pIx>>2]|0; + $667 = (($666) + 44|0); + $668 = HEAP32[$667>>2]|0; + $669 = HEAP32[$iDb>>2]|0; + (_sqlite3VdbeAddOp3($663,$664,$665,$668,$669)|0); + $670 = HEAP32[$1>>2]|0; + $671 = HEAP32[$pIx>>2]|0; + _sqlite3VdbeSetP4KeyInfo($670,$671); + } + } while(0); + $672 = HEAP32[$iDb>>2]|0; + $673 = ($672|0)>=(0); + if ($673) { + $674 = HEAP32[$1>>2]|0; + $675 = HEAP32[$iDb>>2]|0; + _sqlite3CodeVerifySchema($674,$675); + } + $676 = HEAP32[$pWInfo>>2]|0; + $677 = (($676) + 68|0); + $678 = HEAP32[$pTabItem>>2]|0; + $679 = (($678) + 40|0); + $680 = HEAP32[$679>>2]|0; + $681 = (_getMask($677,$680)|0); + $682 = tempRet0; + $683 = $681 ^ -1; + $684 = $682 ^ -1; + $685 = $notReady; + $686 = $685; + $687 = HEAP32[$686>>2]|0; + $688 = (($685) + 4)|0; + $689 = $688; + $690 = HEAP32[$689>>2]|0; + $691 = $687 & $683; + $692 = $690 & $684; + $693 = $notReady; + $694 = $693; + HEAP32[$694>>2] = $691; + $695 = (($693) + 4)|0; + $696 = $695; + HEAP32[$696>>2] = $692; + $697 = HEAP32[$ii>>2]|0; + $698 = (($697) + 1)|0; + HEAP32[$ii>>2] = $698; + $699 = HEAP32[$pLevel>>2]|0; + $700 = (($699) + 72|0); + HEAP32[$pLevel>>2] = $700; + } + $701 = HEAP32[$v>>2]|0; + $702 = (_sqlite3VdbeCurrentAddr($701)|0); + $703 = HEAP32[$pWInfo>>2]|0; + $704 = (($703) + 44|0); + HEAP32[$704>>2] = $702; + $705 = HEAP32[$db>>2]|0; + $706 = (($705) + 64|0); + $707 = HEAP8[$706>>0]|0; + $708 = ($707<<24>>24)!=(0); + if (!($708)) { + $709 = $notReady; + $710 = $709; + HEAP32[$710>>2] = -1; + $711 = (($709) + 4)|0; + $712 = $711; + HEAP32[$712>>2] = -1; + HEAP32[$ii>>2] = 0; + while(1) { + $713 = HEAP32[$ii>>2]|0; + $714 = HEAP32[$nTabList>>2]|0; + $715 = ($713|0)<($714|0); + if (!($715)) { + break; + } + $716 = HEAP32[$ii>>2]|0; + $717 = HEAP32[$pWInfo>>2]|0; + $718 = (($717) + 736|0); + $719 = (($718) + (($716*72)|0)|0); + HEAP32[$pLevel>>2] = $719; + $720 = HEAP32[$pLevel>>2]|0; + $721 = (($720) + 56|0); + $722 = HEAP32[$721>>2]|0; + $723 = (($722) + 36|0); + $724 = HEAP32[$723>>2]|0; + $725 = $724 & 16384; + $726 = ($725|0)!=(0); + if ($726) { + $727 = HEAP32[$1>>2]|0; + $728 = HEAP32[$pWInfo>>2]|0; + $729 = (($728) + 328|0); + $730 = HEAP32[$pLevel>>2]|0; + $731 = (($730) + 36|0); + $732 = HEAP8[$731>>0]|0; + $733 = $732&255; + $734 = HEAP32[$2>>2]|0; + $735 = (($734) + 8|0); + $736 = (($735) + (($733*72)|0)|0); + $737 = $notReady; + $738 = $737; + $739 = HEAP32[$738>>2]|0; + $740 = (($737) + 4)|0; + $741 = $740; + $742 = HEAP32[$741>>2]|0; + $743 = HEAP32[$pLevel>>2]|0; + _constructAutomaticIndex($727,$729,$736,$739,$742,$743); + $744 = HEAP32[$db>>2]|0; + $745 = (($744) + 64|0); + $746 = HEAP8[$745>>0]|0; + $747 = ($746<<24>>24)!=(0); + if ($747) { + break L15; + } + } + $748 = HEAP32[$1>>2]|0; + $749 = HEAP32[$2>>2]|0; + $750 = HEAP32[$pLevel>>2]|0; + $751 = HEAP32[$ii>>2]|0; + $752 = HEAP32[$pLevel>>2]|0; + $753 = (($752) + 36|0); + $754 = HEAP8[$753>>0]|0; + $755 = $754&255; + $756 = HEAP16[$6>>1]|0; + _explainOneScan($748,$749,$750,$751,$755,$756); + $757 = HEAP32[$v>>2]|0; + $758 = (_sqlite3VdbeCurrentAddr($757)|0); + $759 = HEAP32[$pLevel>>2]|0; + $760 = (($759) + 32|0); + HEAP32[$760>>2] = $758; + $761 = HEAP32[$pWInfo>>2]|0; + $762 = HEAP32[$ii>>2]|0; + $763 = $notReady; + $764 = $763; + $765 = HEAP32[$764>>2]|0; + $766 = (($763) + 4)|0; + $767 = $766; + $768 = HEAP32[$767>>2]|0; + $769 = (_codeOneLoopStart($761,$762,$765,$768)|0); + $770 = tempRet0; + $771 = $notReady; + $772 = $771; + HEAP32[$772>>2] = $769; + $773 = (($771) + 4)|0; + $774 = $773; + HEAP32[$774>>2] = $770; + $775 = HEAP32[$pLevel>>2]|0; + $776 = (($775) + 24|0); + $777 = HEAP32[$776>>2]|0; + $778 = HEAP32[$pWInfo>>2]|0; + $779 = (($778) + 48|0); + HEAP32[$779>>2] = $777; + $780 = HEAP32[$ii>>2]|0; + $781 = (($780) + 1)|0; + HEAP32[$ii>>2] = $781; + } + $782 = HEAP32[$pWInfo>>2]|0; + HEAP32[$0>>2] = $782; + $792 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($792|0); + } + } + } + } + } + } while(0); + $783 = HEAP32[$pWInfo>>2]|0; + $784 = ($783|0)!=(0|0); + if ($784) { + $785 = HEAP32[$pWInfo>>2]|0; + $786 = (($785) + 56|0); + $787 = HEAP32[$786>>2]|0; + $788 = HEAP32[$1>>2]|0; + $789 = (($788) + 424|0); + HEAP32[$789>>2] = $787; + $790 = HEAP32[$db>>2]|0; + $791 = HEAP32[$pWInfo>>2]|0; + _whereInfoFree($790,$791); + } + HEAP32[$0>>2] = 0; + $792 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($792|0); +} +function _sqlite3WhereEnd($pWInfo) { + $pWInfo = $pWInfo|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr = 0, $db = 0, $i = 0, $j = 0, $k = 0, $last = 0, $pIdx = 0, $pIn = 0, $pLevel = 0; + var $pLoop = 0, $pOp = 0, $pParse = 0, $pPk = 0, $pTab = 0, $pTabItem = 0, $pTabList = 0, $v = 0, $ws = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 76|0; + $pParse = sp + 72|0; + $v = sp + 68|0; + $i = sp + 64|0; + $pLevel = sp + 60|0; + $pLoop = sp + 56|0; + $pTabList = sp + 52|0; + $db = sp + 48|0; + $addr = sp + 44|0; + $pIn = sp + 40|0; + $j = sp + 36|0; + $k = sp + 12|0; + $last = sp; + $pOp = sp + 4|0; + $pIdx = sp + 8|0; + $pTabItem = sp + 16|0; + $pTab = sp + 20|0; + $ws = sp + 24|0; + $x = sp + 28|0; + $pPk = sp + 32|0; + HEAP32[$0>>2] = $pWInfo; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$pParse>>2] = $2; + $3 = HEAP32[$pParse>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$v>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pTabList>>2] = $8; + $9 = HEAP32[$pParse>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$db>>2] = $10; + $11 = HEAP32[$pParse>>2]|0; + _sqlite3ExprCacheClear($11); + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 41|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = (($15) - 1)|0; + HEAP32[$i>>2] = $16; + while(1) { + $17 = HEAP32[$i>>2]|0; + $18 = ($17|0)>=(0); + if (!($18)) { + break; + } + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 736|0); + $22 = (($21) + (($19*72)|0)|0); + HEAP32[$pLevel>>2] = $22; + $23 = HEAP32[$pLevel>>2]|0; + $24 = (($23) + 56|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$pLoop>>2] = $25; + $26 = HEAP32[$v>>2]|0; + $27 = HEAP32[$pLevel>>2]|0; + $28 = (($27) + 24|0); + $29 = HEAP32[$28>>2]|0; + _sqlite3VdbeResolveLabel($26,$29); + $30 = HEAP32[$pLevel>>2]|0; + $31 = (($30) + 37|0); + $32 = HEAP8[$31>>0]|0; + $33 = $32&255; + $34 = ($33|0)!=(156); + if ($34) { + $35 = HEAP32[$v>>2]|0; + $36 = HEAP32[$pLevel>>2]|0; + $37 = (($36) + 37|0); + $38 = HEAP8[$37>>0]|0; + $39 = $38&255; + $40 = HEAP32[$pLevel>>2]|0; + $41 = (($40) + 40|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$pLevel>>2]|0; + $44 = (($43) + 44|0); + $45 = HEAP32[$44>>2]|0; + $46 = HEAP32[$pLevel>>2]|0; + $47 = (($46) + 38|0); + $48 = HEAP8[$47>>0]|0; + $49 = $48&255; + (_sqlite3VdbeAddOp3($35,$39,$42,$45,$49)|0); + $50 = HEAP32[$v>>2]|0; + $51 = HEAP32[$pLevel>>2]|0; + $52 = (($51) + 39|0); + $53 = HEAP8[$52>>0]|0; + _sqlite3VdbeChangeP5($50,$53); + } + $54 = HEAP32[$pLoop>>2]|0; + $55 = (($54) + 36|0); + $56 = HEAP32[$55>>2]|0; + $57 = $56 & 2048; + $58 = ($57|0)!=(0); + if ($58) { + $59 = HEAP32[$pLevel>>2]|0; + $60 = (($59) + 48|0); + $61 = HEAP32[$60>>2]|0; + $62 = ($61|0)>(0); + if ($62) { + $63 = HEAP32[$v>>2]|0; + $64 = HEAP32[$pLevel>>2]|0; + $65 = (($64) + 16|0); + $66 = HEAP32[$65>>2]|0; + _sqlite3VdbeResolveLabel($63,$66); + $67 = HEAP32[$pLevel>>2]|0; + $68 = (($67) + 48|0); + $69 = HEAP32[$68>>2]|0; + HEAP32[$j>>2] = $69; + $70 = HEAP32[$j>>2]|0; + $71 = (($70) - 1)|0; + $72 = HEAP32[$pLevel>>2]|0; + $73 = (($72) + 48|0); + $74 = (($73) + 4|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($75) + (($71*12)|0)|0); + HEAP32[$pIn>>2] = $76; + while(1) { + $77 = HEAP32[$j>>2]|0; + $78 = ($77|0)>(0); + if (!($78)) { + break; + } + $79 = HEAP32[$v>>2]|0; + $80 = HEAP32[$pIn>>2]|0; + $81 = (($80) + 4|0); + $82 = HEAP32[$81>>2]|0; + $83 = (($82) + 1)|0; + _sqlite3VdbeJumpHere($79,$83); + $84 = HEAP32[$v>>2]|0; + $85 = HEAP32[$pIn>>2]|0; + $86 = (($85) + 8|0); + $87 = HEAP8[$86>>0]|0; + $88 = $87&255; + $89 = HEAP32[$pIn>>2]|0; + $90 = HEAP32[$89>>2]|0; + $91 = HEAP32[$pIn>>2]|0; + $92 = (($91) + 4|0); + $93 = HEAP32[$92>>2]|0; + (_sqlite3VdbeAddOp2($84,$88,$90,$93)|0); + $94 = HEAP32[$v>>2]|0; + $95 = HEAP32[$pIn>>2]|0; + $96 = (($95) + 4|0); + $97 = HEAP32[$96>>2]|0; + $98 = (($97) - 1)|0; + _sqlite3VdbeJumpHere($94,$98); + $99 = HEAP32[$j>>2]|0; + $100 = (($99) + -1)|0; + HEAP32[$j>>2] = $100; + $101 = HEAP32[$pIn>>2]|0; + $102 = (($101) + -12|0); + HEAP32[$pIn>>2] = $102; + } + $103 = HEAP32[$db>>2]|0; + $104 = HEAP32[$pLevel>>2]|0; + $105 = (($104) + 48|0); + $106 = (($105) + 4|0); + $107 = HEAP32[$106>>2]|0; + _sqlite3DbFree($103,$107); + } + } + $108 = HEAP32[$v>>2]|0; + $109 = HEAP32[$pLevel>>2]|0; + $110 = (($109) + 12|0); + $111 = HEAP32[$110>>2]|0; + _sqlite3VdbeResolveLabel($108,$111); + $112 = HEAP32[$pLevel>>2]|0; + $113 = (($112) + 20|0); + $114 = HEAP32[$113>>2]|0; + $115 = ($114|0)!=(0); + if ($115) { + $116 = HEAP32[$v>>2]|0; + $117 = HEAP32[$pLevel>>2]|0; + $118 = (($117) + 20|0); + $119 = HEAP32[$118>>2]|0; + (_sqlite3VdbeAddOp2($116,16,0,$119)|0); + $120 = HEAP32[$v>>2]|0; + $121 = HEAP32[$pLevel>>2]|0; + $122 = (($121) + 20|0); + $123 = HEAP32[$122>>2]|0; + _sqlite3VdbeJumpHere($120,$123); + $124 = HEAP32[$v>>2]|0; + $125 = HEAP32[$pLevel>>2]|0; + $126 = (($125) + 20|0); + $127 = HEAP32[$126>>2]|0; + $128 = (($127) - 2)|0; + _sqlite3VdbeJumpHere($124,$128); + } + $129 = HEAP32[$pLevel>>2]|0; + $130 = HEAP32[$129>>2]|0; + $131 = ($130|0)!=(0); + if ($131) { + $132 = HEAP32[$v>>2]|0; + $133 = HEAP32[$pLevel>>2]|0; + $134 = HEAP32[$133>>2]|0; + $135 = (_sqlite3VdbeAddOp1($132,134,$134)|0); + HEAP32[$addr>>2] = $135; + $136 = HEAP32[$pLoop>>2]|0; + $137 = (($136) + 36|0); + $138 = HEAP32[$137>>2]|0; + $139 = $138 & 64; + $140 = ($139|0)==(0); + if ($140) { + $141 = HEAP32[$v>>2]|0; + $142 = HEAP32[$i>>2]|0; + $143 = HEAP32[$pTabList>>2]|0; + $144 = (($143) + 8|0); + $145 = (($144) + (($142*72)|0)|0); + $146 = (($145) + 40|0); + $147 = HEAP32[$146>>2]|0; + (_sqlite3VdbeAddOp1($141,101,$147)|0); + } + $148 = HEAP32[$pLoop>>2]|0; + $149 = (($148) + 36|0); + $150 = HEAP32[$149>>2]|0; + $151 = $150 & 512; + $152 = ($151|0)!=(0); + if ($152) { + $153 = HEAP32[$v>>2]|0; + $154 = HEAP32[$pLevel>>2]|0; + $155 = (($154) + 8|0); + $156 = HEAP32[$155>>2]|0; + (_sqlite3VdbeAddOp1($153,101,$156)|0); + } + $157 = HEAP32[$pLevel>>2]|0; + $158 = (($157) + 37|0); + $159 = HEAP8[$158>>0]|0; + $160 = $159&255; + $161 = ($160|0)==(18); + $162 = HEAP32[$v>>2]|0; + $163 = HEAP32[$pLevel>>2]|0; + if ($161) { + $164 = (($163) + 40|0); + $165 = HEAP32[$164>>2]|0; + $166 = HEAP32[$pLevel>>2]|0; + $167 = (($166) + 28|0); + $168 = HEAP32[$167>>2]|0; + (_sqlite3VdbeAddOp2($162,17,$165,$168)|0); + } else { + $169 = (($163) + 28|0); + $170 = HEAP32[$169>>2]|0; + (_sqlite3VdbeAddOp2($162,16,0,$170)|0); + } + $171 = HEAP32[$v>>2]|0; + $172 = HEAP32[$addr>>2]|0; + _sqlite3VdbeJumpHere($171,$172); + } + $173 = HEAP32[$i>>2]|0; + $174 = (($173) + -1)|0; + HEAP32[$i>>2] = $174; + } + $175 = HEAP32[$v>>2]|0; + $176 = HEAP32[$0>>2]|0; + $177 = (($176) + 52|0); + $178 = HEAP32[$177>>2]|0; + _sqlite3VdbeResolveLabel($175,$178); + HEAP32[$i>>2] = 0; + $179 = HEAP32[$0>>2]|0; + $180 = (($179) + 736|0); + HEAP32[$pLevel>>2] = $180; + while(1) { + $181 = HEAP32[$i>>2]|0; + $182 = HEAP32[$0>>2]|0; + $183 = (($182) + 41|0); + $184 = HEAP8[$183>>0]|0; + $185 = $184&255; + $186 = ($181|0)<($185|0); + if (!($186)) { + break; + } + HEAP32[$pIdx>>2] = 0; + $187 = HEAP32[$pLevel>>2]|0; + $188 = (($187) + 36|0); + $189 = HEAP8[$188>>0]|0; + $190 = $189&255; + $191 = HEAP32[$pTabList>>2]|0; + $192 = (($191) + 8|0); + $193 = (($192) + (($190*72)|0)|0); + HEAP32[$pTabItem>>2] = $193; + $194 = HEAP32[$pTabItem>>2]|0; + $195 = (($194) + 16|0); + $196 = HEAP32[$195>>2]|0; + HEAP32[$pTab>>2] = $196; + $197 = HEAP32[$pLevel>>2]|0; + $198 = (($197) + 56|0); + $199 = HEAP32[$198>>2]|0; + HEAP32[$pLoop>>2] = $199; + $200 = HEAP32[$pTabItem>>2]|0; + $201 = (($200) + 37|0); + $202 = HEAP8[$201>>0]|0; + $203 = ($202&255) >>> 2; + $204 = $203 & 1; + $205 = $204&255; + $206 = ($205|0)!=(0); + L35: do { + if ($206) { + $207 = HEAP32[$db>>2]|0; + $208 = (($207) + 64|0); + $209 = HEAP8[$208>>0]|0; + $210 = ($209<<24>>24)!=(0); + if ($210) { + label = 35; + } else { + $211 = HEAP32[$v>>2]|0; + $212 = (_sqlite3VdbeCurrentAddr($211)|0); + HEAP32[$last>>2] = $212; + $213 = HEAP32[$pLevel>>2]|0; + $214 = (($213) + 32|0); + $215 = HEAP32[$214>>2]|0; + HEAP32[$k>>2] = $215; + $216 = HEAP32[$v>>2]|0; + $217 = HEAP32[$k>>2]|0; + $218 = (_sqlite3VdbeGetOp($216,$217)|0); + HEAP32[$pOp>>2] = $218; + while(1) { + $219 = HEAP32[$k>>2]|0; + $220 = HEAP32[$last>>2]|0; + $221 = ($219|0)<($220|0); + if (!($221)) { + break L35; + } + $222 = HEAP32[$pOp>>2]|0; + $223 = (($222) + 4|0); + $224 = HEAP32[$223>>2]|0; + $225 = HEAP32[$pLevel>>2]|0; + $226 = (($225) + 4|0); + $227 = HEAP32[$226>>2]|0; + $228 = ($224|0)!=($227|0); + do { + if (!($228)) { + $229 = HEAP32[$pOp>>2]|0; + $230 = HEAP8[$229>>0]|0; + $231 = $230&255; + $232 = ($231|0)==(46); + $233 = HEAP32[$pOp>>2]|0; + if ($232) { + HEAP8[$233>>0] = 33; + $234 = HEAP32[$pOp>>2]|0; + $235 = (($234) + 8|0); + $236 = HEAP32[$235>>2]|0; + $237 = HEAP32[$pTabItem>>2]|0; + $238 = (($237) + 32|0); + $239 = HEAP32[$238>>2]|0; + $240 = (($236) + ($239))|0; + $241 = HEAP32[$pOp>>2]|0; + $242 = (($241) + 4|0); + HEAP32[$242>>2] = $240; + $243 = HEAP32[$pOp>>2]|0; + $244 = (($243) + 12|0); + $245 = HEAP32[$244>>2]|0; + $246 = HEAP32[$pOp>>2]|0; + $247 = (($246) + 8|0); + HEAP32[$247>>2] = $245; + $248 = HEAP32[$pOp>>2]|0; + $249 = (($248) + 12|0); + HEAP32[$249>>2] = 0; + break; + } + $250 = HEAP8[$233>>0]|0; + $251 = $250&255; + $252 = ($251|0)==(100); + if ($252) { + $253 = HEAP32[$pOp>>2]|0; + HEAP8[$253>>0] = 28; + $254 = HEAP32[$pOp>>2]|0; + $255 = (($254) + 4|0); + HEAP32[$255>>2] = 0; + $256 = HEAP32[$pOp>>2]|0; + $257 = (($256) + 12|0); + HEAP32[$257>>2] = 0; + } + } + } while(0); + $258 = HEAP32[$k>>2]|0; + $259 = (($258) + 1)|0; + HEAP32[$k>>2] = $259; + $260 = HEAP32[$pOp>>2]|0; + $261 = (($260) + 20|0); + HEAP32[$pOp>>2] = $261; + } + } + } else { + label = 35; + } + } while(0); + L48: do { + if ((label|0) == 35) { + label = 0; + $262 = HEAP32[$pTab>>2]|0; + $263 = (($262) + 44|0); + $264 = HEAP8[$263>>0]|0; + $265 = $264&255; + $266 = $265 & 2; + $267 = ($266|0)==(0); + if ($267) { + $268 = HEAP32[$pTab>>2]|0; + $269 = (($268) + 12|0); + $270 = HEAP32[$269>>2]|0; + $271 = ($270|0)==(0|0); + if ($271) { + $272 = HEAP32[$0>>2]|0; + $273 = (($272) + 34|0); + $274 = HEAP16[$273>>1]|0; + $275 = $274&65535; + $276 = $275 & 16; + $277 = ($276|0)==(0); + if ($277) { + $278 = HEAP32[$pLoop>>2]|0; + $279 = (($278) + 36|0); + $280 = HEAP32[$279>>2]|0; + HEAP32[$ws>>2] = $280; + $281 = HEAP32[$0>>2]|0; + $282 = (($281) + 38|0); + $283 = HEAP8[$282>>0]|0; + $284 = ($283<<24>>24)!=(0); + if (!($284)) { + $285 = HEAP32[$ws>>2]|0; + $286 = $285 & 64; + $287 = ($286|0)==(0); + if ($287) { + $288 = HEAP32[$v>>2]|0; + $289 = HEAP32[$pTabItem>>2]|0; + $290 = (($289) + 40|0); + $291 = HEAP32[$290>>2]|0; + (_sqlite3VdbeAddOp1($288,58,$291)|0); + } + } + $292 = HEAP32[$ws>>2]|0; + $293 = $292 & 512; + $294 = ($293|0)!=(0); + if ($294) { + $295 = HEAP32[$ws>>2]|0; + $296 = $295 & 16640; + $297 = ($296|0)==(0); + if ($297) { + $298 = HEAP32[$pLevel>>2]|0; + $299 = (($298) + 8|0); + $300 = HEAP32[$299>>2]|0; + $301 = HEAP32[$0>>2]|0; + $302 = (($301) + 60|0); + $303 = (($302) + 4|0); + $304 = HEAP32[$303>>2]|0; + $305 = ($300|0)!=($304|0); + if ($305) { + $306 = HEAP32[$v>>2]|0; + $307 = HEAP32[$pLevel>>2]|0; + $308 = (($307) + 8|0); + $309 = HEAP32[$308>>2]|0; + (_sqlite3VdbeAddOp1($306,58,$309)|0); + } + } + } + } + } + } + $310 = HEAP32[$pLoop>>2]|0; + $311 = (($310) + 36|0); + $312 = HEAP32[$311>>2]|0; + $313 = $312 & 576; + $314 = ($313|0)!=(0); + $315 = HEAP32[$pLoop>>2]|0; + if ($314) { + $316 = (($315) + 24|0); + $317 = (($316) + 4|0); + $318 = HEAP32[$317>>2]|0; + HEAP32[$pIdx>>2] = $318; + } else { + $319 = (($315) + 36|0); + $320 = HEAP32[$319>>2]|0; + $321 = $320 & 8192; + $322 = ($321|0)!=(0); + if ($322) { + $323 = HEAP32[$pLevel>>2]|0; + $324 = (($323) + 48|0); + $325 = HEAP32[$324>>2]|0; + HEAP32[$pIdx>>2] = $325; + } + } + $326 = HEAP32[$pIdx>>2]|0; + $327 = ($326|0)!=(0|0); + if ($327) { + $328 = HEAP32[$db>>2]|0; + $329 = (($328) + 64|0); + $330 = HEAP8[$329>>0]|0; + $331 = ($330<<24>>24)!=(0); + if (!($331)) { + $332 = HEAP32[$v>>2]|0; + $333 = (_sqlite3VdbeCurrentAddr($332)|0); + HEAP32[$last>>2] = $333; + $334 = HEAP32[$pLevel>>2]|0; + $335 = (($334) + 32|0); + $336 = HEAP32[$335>>2]|0; + HEAP32[$k>>2] = $336; + $337 = HEAP32[$v>>2]|0; + $338 = HEAP32[$k>>2]|0; + $339 = (_sqlite3VdbeGetOp($337,$338)|0); + HEAP32[$pOp>>2] = $339; + while(1) { + $340 = HEAP32[$k>>2]|0; + $341 = HEAP32[$last>>2]|0; + $342 = ($340|0)<($341|0); + if (!($342)) { + break L48; + } + $343 = HEAP32[$pOp>>2]|0; + $344 = (($343) + 4|0); + $345 = HEAP32[$344>>2]|0; + $346 = HEAP32[$pLevel>>2]|0; + $347 = (($346) + 4|0); + $348 = HEAP32[$347>>2]|0; + $349 = ($345|0)!=($348|0); + do { + if (!($349)) { + $350 = HEAP32[$pOp>>2]|0; + $351 = HEAP8[$350>>0]|0; + $352 = $351&255; + $353 = ($352|0)==(46); + $354 = HEAP32[$pOp>>2]|0; + if (!($353)) { + $387 = HEAP8[$354>>0]|0; + $388 = $387&255; + $389 = ($388|0)==(100); + if (!($389)) { + break; + } + $390 = HEAP32[$pLevel>>2]|0; + $391 = (($390) + 8|0); + $392 = HEAP32[$391>>2]|0; + $393 = HEAP32[$pOp>>2]|0; + $394 = (($393) + 4|0); + HEAP32[$394>>2] = $392; + $395 = HEAP32[$pOp>>2]|0; + HEAP8[$395>>0] = 109; + break; + } + $355 = (($354) + 8|0); + $356 = HEAP32[$355>>2]|0; + HEAP32[$x>>2] = $356; + $357 = HEAP32[$pTab>>2]|0; + $358 = (($357) + 44|0); + $359 = HEAP8[$358>>0]|0; + $360 = $359&255; + $361 = $360 & 32; + $362 = ($361|0)==(0); + if (!($362)) { + $363 = HEAP32[$pTab>>2]|0; + $364 = (_sqlite3PrimaryKeyIndex($363)|0); + HEAP32[$pPk>>2] = $364; + $365 = HEAP32[$x>>2]|0; + $366 = HEAP32[$pPk>>2]|0; + $367 = (($366) + 4|0); + $368 = HEAP32[$367>>2]|0; + $369 = (($368) + ($365<<1)|0); + $370 = HEAP16[$369>>1]|0; + $371 = $370 << 16 >> 16; + HEAP32[$x>>2] = $371; + } + $372 = HEAP32[$pIdx>>2]|0; + $373 = HEAP32[$x>>2]|0; + $374 = $373&65535; + $375 = (_sqlite3ColumnOfIndex($372,$374)|0); + $376 = $375 << 16 >> 16; + HEAP32[$x>>2] = $376; + $377 = HEAP32[$x>>2]|0; + $378 = ($377|0)>=(0); + if ($378) { + $379 = HEAP32[$x>>2]|0; + $380 = HEAP32[$pOp>>2]|0; + $381 = (($380) + 8|0); + HEAP32[$381>>2] = $379; + $382 = HEAP32[$pLevel>>2]|0; + $383 = (($382) + 8|0); + $384 = HEAP32[$383>>2]|0; + $385 = HEAP32[$pOp>>2]|0; + $386 = (($385) + 4|0); + HEAP32[$386>>2] = $384; + } + } + } while(0); + $396 = HEAP32[$k>>2]|0; + $397 = (($396) + 1)|0; + HEAP32[$k>>2] = $397; + $398 = HEAP32[$pOp>>2]|0; + $399 = (($398) + 20|0); + HEAP32[$pOp>>2] = $399; + } + } + } + } + } while(0); + $400 = HEAP32[$i>>2]|0; + $401 = (($400) + 1)|0; + HEAP32[$i>>2] = $401; + $402 = HEAP32[$pLevel>>2]|0; + $403 = (($402) + 72|0); + HEAP32[$pLevel>>2] = $403; + } + $404 = HEAP32[$0>>2]|0; + $405 = (($404) + 56|0); + $406 = HEAP32[$405>>2]|0; + $407 = HEAP32[$pParse>>2]|0; + $408 = (($407) + 424|0); + HEAP32[$408>>2] = $406; + $409 = HEAP32[$db>>2]|0; + $410 = HEAP32[$0>>2]|0; + _whereInfoFree($409,$410); + STACKTOP = sp;return; +} +function _whereInfoFree($db,$pWInfo) { + $db = $db|0; + $pWInfo = $pWInfo|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $p = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pWInfo; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 328|0); + _whereClauseClear($5); + while(1) { + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 16|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + if (!($9)) { + break; + } + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 16|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$p>>2] = $12; + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 48|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 16|0); + HEAP32[$17>>2] = $15; + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$p>>2]|0; + _whereLoopDelete($18,$19); + } + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$1>>2]|0; + _sqlite3DbFree($20,$21); + STACKTOP = sp;return; +} +function _whereClauseClear($pWC) { + $pWC = $pWC|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $db = 0, $i = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $i = sp; + $a = sp + 4|0; + $db = sp + 8|0; + HEAP32[$0>>2] = $pWC; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 12|0); + $7 = HEAP32[$6>>2]|0; + $8 = (($7) - 1)|0; + HEAP32[$i>>2] = $8; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 20|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$a>>2] = $11; + while(1) { + $12 = HEAP32[$i>>2]|0; + $13 = ($12|0)>=(0); + if (!($13)) { + break; + } + $14 = HEAP32[$a>>2]|0; + $15 = (($14) + 20|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = $17 & 1; + $19 = ($18|0)!=(0); + if ($19) { + $20 = HEAP32[$db>>2]|0; + $21 = HEAP32[$a>>2]|0; + $22 = HEAP32[$21>>2]|0; + _sqlite3ExprDelete($20,$22); + } + $23 = HEAP32[$a>>2]|0; + $24 = (($23) + 20|0); + $25 = HEAP8[$24>>0]|0; + $26 = $25&255; + $27 = $26 & 16; + $28 = ($27|0)!=(0); + if ($28) { + $29 = HEAP32[$db>>2]|0; + $30 = HEAP32[$a>>2]|0; + $31 = (($30) + 12|0); + $32 = HEAP32[$31>>2]|0; + _whereOrInfoDelete($29,$32); + } else { + $33 = HEAP32[$a>>2]|0; + $34 = (($33) + 20|0); + $35 = HEAP8[$34>>0]|0; + $36 = $35&255; + $37 = $36 & 32; + $38 = ($37|0)!=(0); + if ($38) { + $39 = HEAP32[$db>>2]|0; + $40 = HEAP32[$a>>2]|0; + $41 = (($40) + 12|0); + $42 = HEAP32[$41>>2]|0; + _whereAndInfoDelete($39,$42); + } + } + $43 = HEAP32[$i>>2]|0; + $44 = (($43) + -1)|0; + HEAP32[$i>>2] = $44; + $45 = HEAP32[$a>>2]|0; + $46 = (($45) + 48|0); + HEAP32[$a>>2] = $46; + } + $47 = HEAP32[$0>>2]|0; + $48 = (($47) + 20|0); + $49 = HEAP32[$48>>2]|0; + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 24|0); + $52 = ($49|0)!=($51|0); + if (!($52)) { + STACKTOP = sp;return; + } + $53 = HEAP32[$db>>2]|0; + $54 = HEAP32[$0>>2]|0; + $55 = (($54) + 20|0); + $56 = HEAP32[$55>>2]|0; + _sqlite3DbFree($53,$56); + STACKTOP = sp;return; +} +function _whereLoopDelete($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + _whereLoopClear($2,$3); + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + _sqlite3DbFree($4,$5); + STACKTOP = sp;return; +} +function _whereLoopClear($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 44|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 52|0); + $7 = ($4|0)!=($6|0); + if ($7) { + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 44|0); + $11 = HEAP32[$10>>2]|0; + _sqlite3DbFree($8,$11); + } + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$1>>2]|0; + _whereLoopClearUnion($12,$13); + $14 = HEAP32[$1>>2]|0; + _whereLoopInit($14); + STACKTOP = sp;return; +} +function _whereLoopClearUnion($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 36|0); + $4 = HEAP32[$3>>2]|0; + $5 = $4 & 17408; + $6 = ($5|0)!=(0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 36|0); + $9 = HEAP32[$8>>2]|0; + $10 = $9 & 1024; + $11 = ($10|0)!=(0); + if ($11) { + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 24|0); + $14 = (($13) + 4|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 24|0); + $20 = (($19) + 8|0); + $21 = HEAP32[$20>>2]|0; + _sqlite3_free($21); + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 24|0); + $24 = (($23) + 4|0); + HEAP8[$24>>0] = 0; + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 24|0); + $27 = (($26) + 8|0); + HEAP32[$27>>2] = 0; + STACKTOP = sp;return; + } + } + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 36|0); + $30 = HEAP32[$29>>2]|0; + $31 = $30 & 16384; + $32 = ($31|0)!=(0); + if (!($32)) { + STACKTOP = sp;return; + } + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 24|0); + $35 = (($34) + 4|0); + $36 = HEAP32[$35>>2]|0; + $37 = ($36|0)!=(0|0); + if (!($37)) { + STACKTOP = sp;return; + } + $38 = HEAP32[$0>>2]|0; + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 24|0); + $41 = (($40) + 4|0); + $42 = HEAP32[$41>>2]|0; + $43 = (($42) + 16|0); + $44 = HEAP32[$43>>2]|0; + _sqlite3DbFree($38,$44); + $45 = HEAP32[$1>>2]|0; + $46 = (($45) + 24|0); + $47 = (($46) + 4|0); + $48 = HEAP32[$47>>2]|0; + $49 = (($48) + 40|0); + $50 = HEAP32[$49>>2]|0; + _sqlite3KeyInfoUnref($50); + $51 = HEAP32[$0>>2]|0; + $52 = HEAP32[$1>>2]|0; + $53 = (($52) + 24|0); + $54 = (($53) + 4|0); + $55 = HEAP32[$54>>2]|0; + _sqlite3DbFree($51,$55); + $56 = HEAP32[$1>>2]|0; + $57 = (($56) + 24|0); + $58 = (($57) + 4|0); + HEAP32[$58>>2] = 0; + STACKTOP = sp;return; +} +function _whereLoopInit($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 52|0); + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 44|0); + HEAP32[$4>>2] = $2; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 40|0); + HEAP16[$6>>1] = 0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 42|0); + HEAP16[$8>>1] = 4; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 36|0); + HEAP32[$10>>2] = 0; + STACKTOP = sp;return; +} +function _whereOrInfoDelete($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + _whereClauseClear($2); + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + _sqlite3DbFree($3,$4); + STACKTOP = sp;return; +} +function _whereAndInfoDelete($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + _whereClauseClear($2); + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + _sqlite3DbFree($3,$4); + STACKTOP = sp;return; +} +function _whereClauseInit($pWC,$pWInfo) { + $pWC = $pWC|0; + $pWInfo = $pWInfo|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pWC; + HEAP32[$1>>2] = $pWInfo; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$0>>2]|0; + HEAP32[$3>>2] = $2; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 4|0); + HEAP32[$5>>2] = 0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 12|0); + HEAP32[$7>>2] = 0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 16|0); + HEAP32[$9>>2] = 8; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 24|0); + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 20|0); + HEAP32[$13>>2] = $11; + STACKTOP = sp;return; +} +function _whereSplit($pWC,$pExpr,$op) { + $pWC = $pWC|0; + $pExpr = $pExpr|0; + $op = $op|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + $2 = sp + 8|0; + HEAP32[$0>>2] = $pWC; + HEAP32[$1>>2] = $pExpr; + HEAP8[$2>>0] = $op; + $3 = HEAP8[$2>>0]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 8|0); + HEAP8[$5>>0] = $3; + $6 = HEAP32[$1>>2]|0; + $7 = ($6|0)==(0|0); + if ($7) { + STACKTOP = sp;return; + } + $8 = HEAP32[$1>>2]|0; + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = HEAP8[$2>>0]|0; + $12 = $11&255; + $13 = ($10|0)!=($12|0); + $14 = HEAP32[$0>>2]|0; + $15 = HEAP32[$1>>2]|0; + if ($13) { + (_whereClauseInsert($14,$15,0)|0); + STACKTOP = sp;return; + } else { + $16 = (($15) + 12|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP8[$2>>0]|0; + _whereSplit($14,$17,$18); + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 16|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP8[$2>>0]|0; + _whereSplit($19,$22,$23); + STACKTOP = sp;return; + } +} +function _createMask($pMaskSet,$iCursor) { + $pMaskSet = $pMaskSet|0; + $iCursor = $iCursor|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pMaskSet; + HEAP32[$1>>2] = $iCursor; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 1)|0; + HEAP32[$3>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 4|0); + $8 = (($7) + ($4<<2)|0); + HEAP32[$8>>2] = $2; + STACKTOP = sp;return; +} +function _exprAnalyzeAll($pTabList,$pWC) { + $pTabList = $pTabList|0; + $pWC = $pWC|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $i = sp + 4|0; + HEAP32[$0>>2] = $pTabList; + HEAP32[$1>>2] = $pWC; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 12|0); + $4 = HEAP32[$3>>2]|0; + $5 = (($4) - 1)|0; + HEAP32[$i>>2] = $5; + while(1) { + $6 = HEAP32[$i>>2]|0; + $7 = ($6|0)>=(0); + if (!($7)) { + break; + } + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$i>>2]|0; + _exprAnalyze($8,$9,$10); + $11 = HEAP32[$i>>2]|0; + $12 = (($11) + -1)|0; + HEAP32[$i>>2] = $12; + } + STACKTOP = sp;return; +} +function _isDistinctRedundant($pParse,$pTabList,$pWC,$pDistinct) { + $pParse = $pParse|0; + $pTabList = $pTabList|0; + $pWC = $pWC|0; + $pDistinct = $pDistinct|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $i = 0, $iBase = 0, $iCol = 0, $iIdxCol = 0, $p = 0, $pIdx = 0, $pTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $pTab = sp + 16|0; + $pIdx = sp + 12|0; + $i = sp + 8|0; + $iBase = sp + 4|0; + $p = sp; + $iCol = sp + 44|0; + $iIdxCol = sp + 20|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pTabList; + HEAP32[$3>>2] = $pWC; + HEAP32[$4>>2] = $pDistinct; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(1); + if ($7) { + HEAP32[$0>>2] = 0; + $101 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($101|0); + } + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 8|0); + $10 = (($9) + 40|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$iBase>>2] = $11; + $12 = HEAP32[$2>>2]|0; + $13 = (($12) + 8|0); + $14 = (($13) + 16|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$pTab>>2] = $15; + HEAP32[$i>>2] = 0; + while(1) { + $16 = HEAP32[$i>>2]|0; + $17 = HEAP32[$4>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = ($16|0)<($18|0); + if (!($19)) { + break; + } + $20 = HEAP32[$i>>2]|0; + $21 = HEAP32[$4>>2]|0; + $22 = (($21) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + (($20*20)|0)|0); + $25 = HEAP32[$24>>2]|0; + $26 = (_sqlite3ExprSkipCollate($25)|0); + HEAP32[$p>>2] = $26; + $27 = HEAP32[$p>>2]|0; + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = ($29|0)==(154); + if ($30) { + $31 = HEAP32[$p>>2]|0; + $32 = (($31) + 28|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$iBase>>2]|0; + $35 = ($33|0)==($34|0); + if ($35) { + $36 = HEAP32[$p>>2]|0; + $37 = (($36) + 32|0); + $38 = HEAP16[$37>>1]|0; + $39 = $38 << 16 >> 16; + $40 = ($39|0)<(0); + if ($40) { + label = 8; + break; + } + } + } + $41 = HEAP32[$i>>2]|0; + $42 = (($41) + 1)|0; + HEAP32[$i>>2] = $42; + } + if ((label|0) == 8) { + HEAP32[$0>>2] = 1; + $101 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($101|0); + } + $43 = HEAP32[$pTab>>2]|0; + $44 = (($43) + 8|0); + $45 = HEAP32[$44>>2]|0; + HEAP32[$pIdx>>2] = $45; + while(1) { + $46 = HEAP32[$pIdx>>2]|0; + $47 = ($46|0)!=(0|0); + if (!($47)) { + label = 22; + break; + } + $48 = HEAP32[$pIdx>>2]|0; + $49 = (($48) + 54|0); + $50 = HEAP8[$49>>0]|0; + $51 = $50&255; + $52 = ($51|0)==(0); + if (!($52)) { + HEAP32[$i>>2] = 0; + while(1) { + $53 = HEAP32[$i>>2]|0; + $54 = HEAP32[$pIdx>>2]|0; + $55 = (($54) + 50|0); + $56 = HEAP16[$55>>1]|0; + $57 = $56&65535; + $58 = ($53|0)<($57|0); + if (!($58)) { + break; + } + $59 = HEAP32[$i>>2]|0; + $60 = HEAP32[$pIdx>>2]|0; + $61 = (($60) + 4|0); + $62 = HEAP32[$61>>2]|0; + $63 = (($62) + ($59<<1)|0); + $64 = HEAP16[$63>>1]|0; + HEAP16[$iCol>>1] = $64; + $65 = HEAP32[$3>>2]|0; + $66 = HEAP32[$iBase>>2]|0; + $67 = HEAP16[$iCol>>1]|0; + $68 = $67 << 16 >> 16; + $69 = HEAP32[$pIdx>>2]|0; + $70 = (_findTerm($65,$66,$68,-1,-1,2,$69)|0); + $71 = (0|0)==($70|0); + if ($71) { + $72 = HEAP32[$1>>2]|0; + $73 = HEAP32[$4>>2]|0; + $74 = HEAP32[$iBase>>2]|0; + $75 = HEAP32[$pIdx>>2]|0; + $76 = HEAP32[$i>>2]|0; + $77 = (_findIndexCol($72,$73,$74,$75,$76)|0); + HEAP32[$iIdxCol>>2] = $77; + $78 = HEAP32[$iIdxCol>>2]|0; + $79 = ($78|0)<(0); + if ($79) { + break; + } + $80 = HEAP16[$iCol>>1]|0; + $81 = $80 << 16 >> 16; + $82 = HEAP32[$pTab>>2]|0; + $83 = (($82) + 4|0); + $84 = HEAP32[$83>>2]|0; + $85 = (($84) + (($81*24)|0)|0); + $86 = (($85) + 20|0); + $87 = HEAP8[$86>>0]|0; + $88 = $87&255; + $89 = ($88|0)==(0); + if ($89) { + break; + } + } + $90 = HEAP32[$i>>2]|0; + $91 = (($90) + 1)|0; + HEAP32[$i>>2] = $91; + } + $92 = HEAP32[$i>>2]|0; + $93 = HEAP32[$pIdx>>2]|0; + $94 = (($93) + 50|0); + $95 = HEAP16[$94>>1]|0; + $96 = $95&65535; + $97 = ($92|0)==($96|0); + if ($97) { + label = 20; + break; + } + } + $98 = HEAP32[$pIdx>>2]|0; + $99 = (($98) + 20|0); + $100 = HEAP32[$99>>2]|0; + HEAP32[$pIdx>>2] = $100; + } + if ((label|0) == 20) { + HEAP32[$0>>2] = 1; + $101 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($101|0); + } + else if ((label|0) == 22) { + HEAP32[$0>>2] = 0; + $101 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($101|0); + } + return 0|0; +} +function _whereShortCut($pBuilder) { + $pBuilder = $pBuilder|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $21 = 0, $22 = 0; + var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; + var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; + var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; + var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; + var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iCur = 0, $j = 0, $pIdx = 0, $pItem = 0, $pLoop = 0, $pTab = 0, $pTerm = 0, $pWC = 0, $pWInfo = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $pWInfo = sp + 32|0; + $pItem = sp + 28|0; + $pWC = sp + 24|0; + $pTerm = sp + 20|0; + $pLoop = sp + 12|0; + $iCur = sp + 8|0; + $j = sp + 4|0; + $pTab = sp; + $pIdx = sp + 16|0; + HEAP32[$1>>2] = $pBuilder; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$pWInfo>>2] = $3; + $4 = HEAP32[$pWInfo>>2]|0; + $5 = (($4) + 34|0); + $6 = HEAP16[$5>>1]|0; + $7 = $6&65535; + $8 = $7 & 32; + $9 = ($8|0)!=(0); + if ($9) { + HEAP32[$0>>2] = 0; + $203 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($203|0); + } + $10 = HEAP32[$pWInfo>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + 8|0); + HEAP32[$pItem>>2] = $13; + $14 = HEAP32[$pItem>>2]|0; + $15 = (($14) + 16|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$pTab>>2] = $16; + $17 = HEAP32[$pTab>>2]|0; + $18 = (($17) + 44|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = $20 & 16; + $22 = ($21|0)!=(0); + if ($22) { + HEAP32[$0>>2] = 0; + $203 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($203|0); + } + $23 = HEAP32[$pItem>>2]|0; + $24 = (($23) + 64|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)!=(0|0); + if ($26) { + HEAP32[$0>>2] = 0; + $203 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($203|0); + } + $27 = HEAP32[$pItem>>2]|0; + $28 = (($27) + 40|0); + $29 = HEAP32[$28>>2]|0; + HEAP32[$iCur>>2] = $29; + $30 = HEAP32[$pWInfo>>2]|0; + $31 = (($30) + 328|0); + HEAP32[$pWC>>2] = $31; + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 12|0); + $34 = HEAP32[$33>>2]|0; + HEAP32[$pLoop>>2] = $34; + $35 = HEAP32[$pLoop>>2]|0; + $36 = (($35) + 36|0); + HEAP32[$36>>2] = 0; + $37 = HEAP32[$pLoop>>2]|0; + $38 = (($37) + 24|0); + $39 = (($38) + 2|0); + HEAP16[$39>>1] = 0; + $40 = HEAP32[$pWC>>2]|0; + $41 = HEAP32[$iCur>>2]|0; + $42 = (_findTerm($40,$41,-1,0,0,2,0)|0); + HEAP32[$pTerm>>2] = $42; + $43 = HEAP32[$pTerm>>2]|0; + $44 = ($43|0)!=(0|0); + L13: do { + if ($44) { + $45 = HEAP32[$pLoop>>2]|0; + $46 = (($45) + 36|0); + HEAP32[$46>>2] = 4353; + $47 = HEAP32[$pTerm>>2]|0; + $48 = HEAP32[$pLoop>>2]|0; + $49 = (($48) + 44|0); + $50 = HEAP32[$49>>2]|0; + HEAP32[$50>>2] = $47; + $51 = HEAP32[$pLoop>>2]|0; + $52 = (($51) + 40|0); + HEAP16[$52>>1] = 1; + $53 = HEAP32[$pLoop>>2]|0; + $54 = (($53) + 24|0); + HEAP16[$54>>1] = 1; + $55 = HEAP32[$pLoop>>2]|0; + $56 = (($55) + 20|0); + HEAP16[$56>>1] = 33; + } else { + $57 = HEAP32[$pTab>>2]|0; + $58 = (($57) + 8|0); + $59 = HEAP32[$58>>2]|0; + HEAP32[$pIdx>>2] = $59; + while(1) { + $60 = HEAP32[$pIdx>>2]|0; + $61 = ($60|0)!=(0|0); + if (!($61)) { + break L13; + } + $62 = HEAP32[$pIdx>>2]|0; + $63 = (($62) + 54|0); + $64 = HEAP8[$63>>0]|0; + $65 = $64&255; + $66 = ($65|0)==(0); + if (!($66)) { + $67 = HEAP32[$pIdx>>2]|0; + $68 = (($67) + 36|0); + $69 = HEAP32[$68>>2]|0; + $70 = ($69|0)!=(0|0); + if (!($70)) { + $71 = HEAP32[$pIdx>>2]|0; + $72 = (($71) + 50|0); + $73 = HEAP16[$72>>1]|0; + $74 = $73&65535; + $75 = ($74|0)>(4); + if (!($75)) { + HEAP32[$j>>2] = 0; + while(1) { + $76 = HEAP32[$j>>2]|0; + $77 = HEAP32[$pIdx>>2]|0; + $78 = (($77) + 50|0); + $79 = HEAP16[$78>>1]|0; + $80 = $79&65535; + $81 = ($76|0)<($80|0); + if (!($81)) { + break; + } + $82 = HEAP32[$pWC>>2]|0; + $83 = HEAP32[$iCur>>2]|0; + $84 = HEAP32[$j>>2]|0; + $85 = HEAP32[$pIdx>>2]|0; + $86 = (($85) + 4|0); + $87 = HEAP32[$86>>2]|0; + $88 = (($87) + ($84<<1)|0); + $89 = HEAP16[$88>>1]|0; + $90 = $89 << 16 >> 16; + $91 = HEAP32[$pIdx>>2]|0; + $92 = (_findTerm($82,$83,$90,0,0,2,$91)|0); + HEAP32[$pTerm>>2] = $92; + $93 = HEAP32[$pTerm>>2]|0; + $94 = ($93|0)==(0|0); + if ($94) { + break; + } + $95 = HEAP32[$pTerm>>2]|0; + $96 = HEAP32[$j>>2]|0; + $97 = HEAP32[$pLoop>>2]|0; + $98 = (($97) + 44|0); + $99 = HEAP32[$98>>2]|0; + $100 = (($99) + ($96<<2)|0); + HEAP32[$100>>2] = $95; + $101 = HEAP32[$j>>2]|0; + $102 = (($101) + 1)|0; + HEAP32[$j>>2] = $102; + } + $103 = HEAP32[$j>>2]|0; + $104 = HEAP32[$pIdx>>2]|0; + $105 = (($104) + 50|0); + $106 = HEAP16[$105>>1]|0; + $107 = $106&65535; + $108 = ($103|0)!=($107|0); + if (!($108)) { + break; + } + } + } + } + $154 = HEAP32[$pIdx>>2]|0; + $155 = (($154) + 20|0); + $156 = HEAP32[$155>>2]|0; + HEAP32[$pIdx>>2] = $156; + } + $109 = HEAP32[$pLoop>>2]|0; + $110 = (($109) + 36|0); + HEAP32[$110>>2] = 4609; + $111 = HEAP32[$pIdx>>2]|0; + $112 = (($111) + 55|0); + $113 = HEAP8[$112>>0]|0; + $114 = ($113&255) >>> 5; + $115 = $114 & 1; + $116 = $115&255; + $117 = ($116|0)!=(0); + if ($117) { + label = 21; + } else { + $118 = HEAP32[$pItem>>2]|0; + $119 = (($118) + 56|0); + $120 = $119; + $121 = $120; + $122 = HEAP32[$121>>2]|0; + $123 = (($120) + 4)|0; + $124 = $123; + $125 = HEAP32[$124>>2]|0; + $126 = HEAP32[$pIdx>>2]|0; + $127 = (_columnsInIndex($126)|0); + $128 = tempRet0; + $129 = $127 ^ -1; + $130 = $128 ^ -1; + $131 = $122 & $129; + $132 = $125 & $130; + $133 = ($131|0)==(0); + $134 = ($132|0)==(0); + $135 = $133 & $134; + if ($135) { + label = 21; + } + } + if ((label|0) == 21) { + $136 = HEAP32[$pLoop>>2]|0; + $137 = (($136) + 36|0); + $138 = HEAP32[$137>>2]|0; + $139 = $138 | 64; + HEAP32[$137>>2] = $139; + } + $140 = HEAP32[$j>>2]|0; + $141 = $140&65535; + $142 = HEAP32[$pLoop>>2]|0; + $143 = (($142) + 40|0); + HEAP16[$143>>1] = $141; + $144 = HEAP32[$j>>2]|0; + $145 = $144&65535; + $146 = HEAP32[$pLoop>>2]|0; + $147 = (($146) + 24|0); + HEAP16[$147>>1] = $145; + $148 = HEAP32[$pIdx>>2]|0; + $149 = HEAP32[$pLoop>>2]|0; + $150 = (($149) + 24|0); + $151 = (($150) + 4|0); + HEAP32[$151>>2] = $148; + $152 = HEAP32[$pLoop>>2]|0; + $153 = (($152) + 20|0); + HEAP16[$153>>1] = 39; + } + } while(0); + $157 = HEAP32[$pLoop>>2]|0; + $158 = (($157) + 36|0); + $159 = HEAP32[$158>>2]|0; + $160 = ($159|0)!=(0); + if (!($160)) { + HEAP32[$0>>2] = 0; + $203 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($203|0); + } + $161 = HEAP32[$pLoop>>2]|0; + $162 = (($161) + 22|0); + HEAP16[$162>>1] = 1; + $163 = HEAP32[$pLoop>>2]|0; + $164 = HEAP32[$pWInfo>>2]|0; + $165 = (($164) + 736|0); + $166 = (($165) + 56|0); + HEAP32[$166>>2] = $163; + $167 = HEAP32[$pWInfo>>2]|0; + $168 = (($167) + 68|0); + $169 = HEAP32[$iCur>>2]|0; + $170 = (_getMask($168,$169)|0); + $171 = tempRet0; + $172 = HEAP32[$pLoop>>2]|0; + $173 = (($172) + 8|0); + $174 = $173; + $175 = $174; + HEAP32[$175>>2] = $170; + $176 = (($174) + 4)|0; + $177 = $176; + HEAP32[$177>>2] = $171; + $178 = HEAP32[$iCur>>2]|0; + $179 = HEAP32[$pWInfo>>2]|0; + $180 = (($179) + 736|0); + $181 = (($180) + 4|0); + HEAP32[$181>>2] = $178; + $182 = HEAP32[$pWInfo>>2]|0; + $183 = (($182) + 32|0); + HEAP16[$183>>1] = 1; + $184 = HEAP32[$pWInfo>>2]|0; + $185 = (($184) + 8|0); + $186 = HEAP32[$185>>2]|0; + $187 = ($186|0)!=(0|0); + if ($187) { + $188 = HEAP32[$pWInfo>>2]|0; + $189 = (($188) + 8|0); + $190 = HEAP32[$189>>2]|0; + $191 = HEAP32[$190>>2]|0; + $192 = $191&255; + $193 = HEAP32[$pWInfo>>2]|0; + $194 = (($193) + 36|0); + HEAP8[$194>>0] = $192; + } + $195 = HEAP32[$pWInfo>>2]|0; + $196 = (($195) + 34|0); + $197 = HEAP16[$196>>1]|0; + $198 = $197&65535; + $199 = $198 & 1024; + $200 = ($199|0)!=(0); + if ($200) { + $201 = HEAP32[$pWInfo>>2]|0; + $202 = (($201) + 40|0); + HEAP8[$202>>0] = 1; + } + HEAP32[$0>>2] = 1; + $203 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($203|0); +} +function _whereLoopAddAll($pBuilder) { + $pBuilder = $pBuilder|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $iTab = 0, $mExtra = 0, $mPrior = 0, $nTabList = 0, $pItem = 0, $pNew = 0, $pTabList = 0, $pWInfo = 0, $priorJoinType = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 48|0; + $pWInfo = sp + 44|0; + $mExtra = sp; + $mPrior = sp + 8|0; + $iTab = sp + 40|0; + $pTabList = sp + 36|0; + $pItem = sp + 32|0; + $db = sp + 24|0; + $nTabList = sp + 20|0; + $rc = sp + 16|0; + $priorJoinType = sp + 52|0; + $pNew = sp + 28|0; + HEAP32[$0>>2] = $pBuilder; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$pWInfo>>2] = $2; + $3 = $mExtra; + $4 = $3; + HEAP32[$4>>2] = 0; + $5 = (($3) + 4)|0; + $6 = $5; + HEAP32[$6>>2] = 0; + $7 = $mPrior; + $8 = $7; + HEAP32[$8>>2] = 0; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = 0; + $11 = HEAP32[$pWInfo>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pTabList>>2] = $13; + $14 = HEAP32[$pWInfo>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$15>>2]|0; + HEAP32[$db>>2] = $16; + $17 = HEAP32[$pWInfo>>2]|0; + $18 = (($17) + 41|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + HEAP32[$nTabList>>2] = $20; + HEAP32[$rc>>2] = 0; + HEAP8[$priorJoinType>>0] = 0; + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 12|0); + $23 = HEAP32[$22>>2]|0; + HEAP32[$pNew>>2] = $23; + $24 = HEAP32[$pNew>>2]|0; + _whereLoopInit($24); + HEAP32[$iTab>>2] = 0; + $25 = HEAP32[$pTabList>>2]|0; + $26 = (($25) + 8|0); + HEAP32[$pItem>>2] = $26; + while(1) { + $27 = HEAP32[$iTab>>2]|0; + $28 = HEAP32[$nTabList>>2]|0; + $29 = ($27|0)<($28|0); + if (!($29)) { + label = 13; + break; + } + $30 = HEAP32[$iTab>>2]|0; + $31 = $30&255; + $32 = HEAP32[$pNew>>2]|0; + $33 = (($32) + 16|0); + HEAP8[$33>>0] = $31; + $34 = HEAP32[$pWInfo>>2]|0; + $35 = (($34) + 68|0); + $36 = HEAP32[$pItem>>2]|0; + $37 = (($36) + 40|0); + $38 = HEAP32[$37>>2]|0; + $39 = (_getMask($35,$38)|0); + $40 = tempRet0; + $41 = HEAP32[$pNew>>2]|0; + $42 = (($41) + 8|0); + $43 = $42; + $44 = $43; + HEAP32[$44>>2] = $39; + $45 = (($43) + 4)|0; + $46 = $45; + HEAP32[$46>>2] = $40; + $47 = HEAP32[$pItem>>2]|0; + $48 = (($47) + 36|0); + $49 = HEAP8[$48>>0]|0; + $50 = $49&255; + $51 = HEAP8[$priorJoinType>>0]|0; + $52 = $51&255; + $53 = $50 | $52; + $54 = $53 & 10; + $55 = ($54|0)!=(0); + if ($55) { + $56 = $mPrior; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = (($56) + 4)|0; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = $mExtra; + $63 = $62; + HEAP32[$63>>2] = $58; + $64 = (($62) + 4)|0; + $65 = $64; + HEAP32[$65>>2] = $61; + } + $66 = HEAP32[$pItem>>2]|0; + $67 = (($66) + 36|0); + $68 = HEAP8[$67>>0]|0; + HEAP8[$priorJoinType>>0] = $68; + $69 = HEAP32[$pItem>>2]|0; + $70 = (($69) + 16|0); + $71 = HEAP32[$70>>2]|0; + $72 = (($71) + 44|0); + $73 = HEAP8[$72>>0]|0; + $74 = $73&255; + $75 = $74 & 16; + $76 = ($75|0)!=(0); + $77 = HEAP32[$0>>2]|0; + $78 = $mExtra; + $79 = $78; + $80 = HEAP32[$79>>2]|0; + $81 = (($78) + 4)|0; + $82 = $81; + $83 = HEAP32[$82>>2]|0; + if ($76) { + $84 = (_whereLoopAddVirtual($77,$80,$83)|0); + HEAP32[$rc>>2] = $84; + } else { + $85 = (_whereLoopAddBtree($77,$80,$83)|0); + HEAP32[$rc>>2] = $85; + } + $86 = HEAP32[$rc>>2]|0; + $87 = ($86|0)==(0); + if ($87) { + $88 = HEAP32[$0>>2]|0; + $89 = $mExtra; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + $92 = (($89) + 4)|0; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = (_whereLoopAddOr($88,$91,$94)|0); + HEAP32[$rc>>2] = $95; + } + $96 = HEAP32[$pNew>>2]|0; + $97 = (($96) + 8|0); + $98 = $97; + $99 = $98; + $100 = HEAP32[$99>>2]|0; + $101 = (($98) + 4)|0; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = $mPrior; + $105 = $104; + $106 = HEAP32[$105>>2]|0; + $107 = (($104) + 4)|0; + $108 = $107; + $109 = HEAP32[$108>>2]|0; + $110 = $106 | $100; + $111 = $109 | $103; + $112 = $mPrior; + $113 = $112; + HEAP32[$113>>2] = $110; + $114 = (($112) + 4)|0; + $115 = $114; + HEAP32[$115>>2] = $111; + $116 = HEAP32[$rc>>2]|0; + $117 = ($116|0)!=(0); + if ($117) { + label = 13; + break; + } + $118 = HEAP32[$db>>2]|0; + $119 = (($118) + 64|0); + $120 = HEAP8[$119>>0]|0; + $121 = $120&255; + $122 = ($121|0)!=(0); + if ($122) { + label = 13; + break; + } + $123 = HEAP32[$iTab>>2]|0; + $124 = (($123) + 1)|0; + HEAP32[$iTab>>2] = $124; + $125 = HEAP32[$pItem>>2]|0; + $126 = (($125) + 72|0); + HEAP32[$pItem>>2] = $126; + } + if ((label|0) == 13) { + $127 = HEAP32[$db>>2]|0; + $128 = HEAP32[$pNew>>2]|0; + _whereLoopClear($127,$128); + $129 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($129|0); + } + return 0|0; +} +function _wherePathSolver($pWInfo,$nRowEst) { + $pWInfo = $pWInfo|0; + $nRowEst = $nRowEst|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; + var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; + var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; + var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; + var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aFrom = 0, $aTo = 0, $db = 0, $iLoop = 0, $ii = 0; + var $isOrdered = 0, $jj = 0, $maskNew = 0, $mxChoice = 0, $mxCost = 0, $mxI = 0, $mxOut = 0, $nFrom = 0, $nLoop = 0, $nOrder = 0, $nOrderBy = 0, $nOut = 0, $nTo = 0, $notUsed = 0, $notUsed1 = 0, $pFrom = 0, $pLevel = 0, $pParse = 0, $pSpace = 0, $pTo = 0; + var $pWLoop = 0, $pX = 0, $rCost = 0, $rScale = 0, $rSortCost = 0, $rc = 0, $revMask = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; + $vararg_buffer = sp; + $0 = sp + 116|0; + $1 = sp + 112|0; + $2 = sp + 138|0; + $mxChoice = sp + 108|0; + $nLoop = sp + 104|0; + $pParse = sp + 100|0; + $db = sp + 96|0; + $iLoop = sp + 84|0; + $ii = sp + 88|0; + $jj = sp + 92|0; + $mxI = sp + 124|0; + $nOrderBy = sp + 128|0; + $rCost = sp + 136|0; + $nOut = sp + 140|0; + $mxCost = sp + 142|0; + $mxOut = sp + 144|0; + $nTo = sp + 48|0; + $nFrom = sp + 120|0; + $aFrom = sp + 64|0; + $aTo = sp + 44|0; + $pFrom = sp + 60|0; + $pTo = sp + 56|0; + $pWLoop = sp + 52|0; + $pX = sp + 80|0; + $pSpace = sp + 68|0; + $maskNew = sp + 24|0; + $revMask = sp + 8|0; + $isOrdered = sp + 146|0; + $rScale = sp + 132|0; + $rSortCost = sp + 134|0; + $pLevel = sp + 72|0; + $notUsed = sp + 16|0; + $rc = sp + 76|0; + $notUsed1 = sp + 32|0; + $nOrder = sp + 40|0; + HEAP32[$1>>2] = $pWInfo; + HEAP16[$2>>1] = $nRowEst; + HEAP32[$mxI>>2] = 0; + HEAP16[$mxCost>>1] = 0; + HEAP16[$mxOut>>1] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$pParse>>2] = $4; + $5 = HEAP32[$pParse>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 41|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + HEAP32[$nLoop>>2] = $10; + $11 = HEAP32[$nLoop>>2]|0; + $12 = ($11|0)<=(1); + if ($12) { + $16 = 1; + } else { + $13 = HEAP32[$nLoop>>2]|0; + $14 = ($13|0)==(2); + $15 = $14 ? 5 : 10; + $16 = $15; + } + HEAP32[$mxChoice>>2] = $16; + $17 = HEAP32[$nLoop>>2]|0; + $18 = $17<<2; + $19 = (32 + ($18))|0; + $20 = HEAP32[$mxChoice>>2]|0; + $21 = Math_imul($19, $20)|0; + $22 = $21<<1; + HEAP32[$ii>>2] = $22; + $23 = HEAP32[$db>>2]|0; + $24 = HEAP32[$ii>>2]|0; + $25 = (_sqlite3DbMallocRaw($23,$24)|0); + HEAP32[$pSpace>>2] = $25; + $26 = HEAP32[$pSpace>>2]|0; + $27 = ($26|0)==(0|0); + if ($27) { + HEAP32[$0>>2] = 7; + $674 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($674|0); + } + $28 = HEAP32[$pSpace>>2]|0; + HEAP32[$aTo>>2] = $28; + $29 = HEAP32[$aTo>>2]|0; + $30 = HEAP32[$mxChoice>>2]|0; + $31 = (($29) + ($30<<5)|0); + HEAP32[$aFrom>>2] = $31; + $32 = HEAP32[$aFrom>>2]|0; + ;HEAP32[$32+0>>2]=0|0;HEAP32[$32+4>>2]=0|0;HEAP32[$32+8>>2]=0|0;HEAP32[$32+12>>2]=0|0;HEAP32[$32+16>>2]=0|0;HEAP32[$32+20>>2]=0|0;HEAP32[$32+24>>2]=0|0;HEAP32[$32+28>>2]=0|0; + $33 = HEAP32[$aFrom>>2]|0; + $34 = HEAP32[$mxChoice>>2]|0; + $35 = (($33) + ($34<<5)|0); + HEAP32[$pX>>2] = $35; + $36 = HEAP32[$mxChoice>>2]|0; + $37 = $36<<1; + HEAP32[$ii>>2] = $37; + $38 = HEAP32[$aTo>>2]|0; + HEAP32[$pFrom>>2] = $38; + while(1) { + $39 = HEAP32[$ii>>2]|0; + $40 = ($39|0)>(0); + if (!($40)) { + break; + } + $41 = HEAP32[$pX>>2]|0; + $42 = HEAP32[$pFrom>>2]|0; + $43 = (($42) + 24|0); + HEAP32[$43>>2] = $41; + $44 = HEAP32[$ii>>2]|0; + $45 = (($44) + -1)|0; + HEAP32[$ii>>2] = $45; + $46 = HEAP32[$pFrom>>2]|0; + $47 = (($46) + 32|0); + HEAP32[$pFrom>>2] = $47; + $48 = HEAP32[$nLoop>>2]|0; + $49 = HEAP32[$pX>>2]|0; + $50 = (($49) + ($48<<2)|0); + HEAP32[$pX>>2] = $50; + } + $51 = HEAP32[$pParse>>2]|0; + $52 = (($51) + 424|0); + $53 = HEAP32[$52>>2]|0; + $54 = ($53>>>0)<(46); + if ($54) { + $55 = HEAP32[$pParse>>2]|0; + $56 = (($55) + 424|0); + $57 = HEAP32[$56>>2]|0; + $59 = $57; + } else { + $59 = 46; + } + $58 = $59&65535; + $60 = HEAP32[$aFrom>>2]|0; + $61 = (($60) + 16|0); + HEAP16[$61>>1] = $58; + HEAP32[$nFrom>>2] = 1; + $62 = HEAP32[$1>>2]|0; + $63 = (($62) + 8|0); + $64 = HEAP32[$63>>2]|0; + $65 = ($64|0)==(0|0); + if ($65) { + label = 12; + } else { + $66 = HEAP16[$2>>1]|0; + $67 = $66 << 16 >> 16; + $68 = ($67|0)==(0); + if ($68) { + label = 12; + } else { + $71 = HEAP32[$nLoop>>2]|0; + $72 = ($71|0)>(0); + $73 = $72 ? -1 : 1; + $74 = $73&255; + $75 = HEAP32[$aFrom>>2]|0; + $76 = (($75) + 20|0); + HEAP8[$76>>0] = $74; + $77 = HEAP32[$1>>2]|0; + $78 = (($77) + 8|0); + $79 = HEAP32[$78>>2]|0; + $80 = HEAP32[$79>>2]|0; + HEAP32[$nOrderBy>>2] = $80; + } + } + if ((label|0) == 12) { + $69 = HEAP32[$aFrom>>2]|0; + $70 = (($69) + 20|0); + HEAP8[$70>>0] = 0; + HEAP32[$nOrderBy>>2] = 0; + } + HEAP32[$iLoop>>2] = 0; + while(1) { + $81 = HEAP32[$iLoop>>2]|0; + $82 = HEAP32[$nLoop>>2]|0; + $83 = ($81|0)<($82|0); + if (!($83)) { + break; + } + HEAP32[$nTo>>2] = 0; + HEAP32[$ii>>2] = 0; + $84 = HEAP32[$aFrom>>2]|0; + HEAP32[$pFrom>>2] = $84; + while(1) { + $85 = HEAP32[$ii>>2]|0; + $86 = HEAP32[$nFrom>>2]|0; + $87 = ($85|0)<($86|0); + if (!($87)) { + break; + } + $88 = HEAP32[$1>>2]|0; + $89 = (($88) + 16|0); + $90 = HEAP32[$89>>2]|0; + HEAP32[$pWLoop>>2] = $90; + while(1) { + $91 = HEAP32[$pWLoop>>2]|0; + $92 = ($91|0)!=(0|0); + if (!($92)) { + break; + } + $93 = $revMask; + $94 = $93; + HEAP32[$94>>2] = 0; + $95 = (($93) + 4)|0; + $96 = $95; + HEAP32[$96>>2] = 0; + $97 = HEAP32[$pFrom>>2]|0; + $98 = (($97) + 20|0); + $99 = HEAP8[$98>>0]|0; + HEAP8[$isOrdered>>0] = $99; + $100 = HEAP32[$pWLoop>>2]|0; + $101 = $100; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = (($101) + 4)|0; + $105 = $104; + $106 = HEAP32[$105>>2]|0; + $107 = HEAP32[$pFrom>>2]|0; + $108 = $107; + $109 = $108; + $110 = HEAP32[$109>>2]|0; + $111 = (($108) + 4)|0; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = $110 ^ -1; + $115 = $113 ^ -1; + $116 = $103 & $114; + $117 = $106 & $115; + $118 = ($116|0)!=(0); + $119 = ($117|0)!=(0); + $120 = $118 | $119; + L30: do { + if (!($120)) { + $121 = HEAP32[$pWLoop>>2]|0; + $122 = (($121) + 8|0); + $123 = $122; + $124 = $123; + $125 = HEAP32[$124>>2]|0; + $126 = (($123) + 4)|0; + $127 = $126; + $128 = HEAP32[$127>>2]|0; + $129 = HEAP32[$pFrom>>2]|0; + $130 = $129; + $131 = $130; + $132 = HEAP32[$131>>2]|0; + $133 = (($130) + 4)|0; + $134 = $133; + $135 = HEAP32[$134>>2]|0; + $136 = $125 & $132; + $137 = $128 & $135; + $138 = ($136|0)!=(0); + $139 = ($137|0)!=(0); + $140 = $138 | $139; + if (!($140)) { + $141 = HEAP32[$pWLoop>>2]|0; + $142 = (($141) + 18|0); + $143 = HEAP16[$142>>1]|0; + $144 = HEAP32[$pWLoop>>2]|0; + $145 = (($144) + 20|0); + $146 = HEAP16[$145>>1]|0; + $147 = $146 << 16 >> 16; + $148 = HEAP32[$pFrom>>2]|0; + $149 = (($148) + 16|0); + $150 = HEAP16[$149>>1]|0; + $151 = $150 << 16 >> 16; + $152 = (($147) + ($151))|0; + $153 = $152&65535; + $154 = (_sqlite3LogEstAdd($143,$153)|0); + HEAP16[$rCost>>1] = $154; + $155 = HEAP16[$rCost>>1]|0; + $156 = HEAP32[$pFrom>>2]|0; + $157 = (($156) + 18|0); + $158 = HEAP16[$157>>1]|0; + $159 = (_sqlite3LogEstAdd($155,$158)|0); + HEAP16[$rCost>>1] = $159; + $160 = HEAP32[$pFrom>>2]|0; + $161 = (($160) + 16|0); + $162 = HEAP16[$161>>1]|0; + $163 = $162 << 16 >> 16; + $164 = HEAP32[$pWLoop>>2]|0; + $165 = (($164) + 22|0); + $166 = HEAP16[$165>>1]|0; + $167 = $166 << 16 >> 16; + $168 = (($163) + ($167))|0; + $169 = $168&65535; + HEAP16[$nOut>>1] = $169; + $170 = HEAP32[$pFrom>>2]|0; + $171 = $170; + $172 = $171; + $173 = HEAP32[$172>>2]|0; + $174 = (($171) + 4)|0; + $175 = $174; + $176 = HEAP32[$175>>2]|0; + $177 = HEAP32[$pWLoop>>2]|0; + $178 = (($177) + 8|0); + $179 = $178; + $180 = $179; + $181 = HEAP32[$180>>2]|0; + $182 = (($179) + 4)|0; + $183 = $182; + $184 = HEAP32[$183>>2]|0; + $185 = $173 | $181; + $186 = $176 | $184; + $187 = $maskNew; + $188 = $187; + HEAP32[$188>>2] = $185; + $189 = (($187) + 4)|0; + $190 = $189; + HEAP32[$190>>2] = $186; + $191 = HEAP8[$isOrdered>>0]|0; + $192 = $191 << 24 >> 24; + $193 = ($192|0)<(0); + if ($193) { + $194 = HEAP32[$1>>2]|0; + $195 = HEAP32[$1>>2]|0; + $196 = (($195) + 8|0); + $197 = HEAP32[$196>>2]|0; + $198 = HEAP32[$pFrom>>2]|0; + $199 = HEAP32[$1>>2]|0; + $200 = (($199) + 34|0); + $201 = HEAP16[$200>>1]|0; + $202 = HEAP32[$iLoop>>2]|0; + $203 = $202&65535; + $204 = HEAP32[$pWLoop>>2]|0; + $205 = (_wherePathSatisfiesOrderBy($194,$197,$198,$201,$203,$204,$revMask)|0); + HEAP8[$isOrdered>>0] = $205; + $206 = HEAP8[$isOrdered>>0]|0; + $207 = $206 << 24 >> 24; + $208 = ($207|0)>=(0); + if ($208) { + $209 = HEAP8[$isOrdered>>0]|0; + $210 = $209 << 24 >> 24; + $211 = HEAP32[$nOrderBy>>2]|0; + $212 = ($210|0)<($211|0); + if ($212) { + $213 = HEAP32[$nOrderBy>>2]|0; + $214 = HEAP8[$isOrdered>>0]|0; + $215 = $214 << 24 >> 24; + $216 = (($213) - ($215))|0; + $217 = ($216*100)|0; + $218 = HEAP32[$nOrderBy>>2]|0; + $219 = (($217|0) / ($218|0))&-1; + $220 = ($219|0)<(0); + $221 = $220 << 31 >> 31; + $222 = (_sqlite3LogEst($219,$221)|0); + $223 = $222 << 16 >> 16; + $224 = (($223) - 66)|0; + $225 = $224&65535; + HEAP16[$rScale>>1] = $225; + $226 = HEAP16[$2>>1]|0; + $227 = $226 << 16 >> 16; + $228 = HEAP16[$2>>1]|0; + $229 = (_estLog($228)|0); + $230 = $229 << 16 >> 16; + $231 = (($227) + ($230))|0; + $232 = HEAP16[$rScale>>1]|0; + $233 = $232 << 16 >> 16; + $234 = (($231) + ($233))|0; + $235 = (($234) + 16)|0; + $236 = $235&65535; + HEAP16[$rSortCost>>1] = $236; + $237 = HEAP32[$1>>2]|0; + $238 = (($237) + 34|0); + $239 = HEAP16[$238>>1]|0; + $240 = $239&65535; + $241 = $240 & 1024; + $242 = ($241|0)!=(0); + if ($242) { + $243 = HEAP16[$rSortCost>>1]|0; + $244 = $243 << 16 >> 16; + $245 = (($244) + 16)|0; + $246 = $245&65535; + HEAP16[$rSortCost>>1] = $246; + } + $247 = HEAP16[$rCost>>1]|0; + $248 = HEAP16[$rSortCost>>1]|0; + $249 = (_sqlite3LogEstAdd($247,$248)|0); + HEAP16[$rCost>>1] = $249; + } + } + } else { + $250 = HEAP32[$pFrom>>2]|0; + $251 = (($250) + 8|0); + $252 = $251; + $253 = $252; + $254 = HEAP32[$253>>2]|0; + $255 = (($252) + 4)|0; + $256 = $255; + $257 = HEAP32[$256>>2]|0; + $258 = $revMask; + $259 = $258; + HEAP32[$259>>2] = $254; + $260 = (($258) + 4)|0; + $261 = $260; + HEAP32[$261>>2] = $257; + } + HEAP32[$jj>>2] = 0; + $262 = HEAP32[$aTo>>2]|0; + HEAP32[$pTo>>2] = $262; + L42: while(1) { + $263 = HEAP32[$jj>>2]|0; + $264 = HEAP32[$nTo>>2]|0; + $265 = ($263|0)<($264|0); + if (!($265)) { + break; + } + $266 = HEAP32[$pTo>>2]|0; + $267 = $266; + $268 = $267; + $269 = HEAP32[$268>>2]|0; + $270 = (($267) + 4)|0; + $271 = $270; + $272 = HEAP32[$271>>2]|0; + $273 = $maskNew; + $274 = $273; + $275 = HEAP32[$274>>2]|0; + $276 = (($273) + 4)|0; + $277 = $276; + $278 = HEAP32[$277>>2]|0; + $279 = ($269|0)==($275|0); + $280 = ($272|0)==($278|0); + $281 = $279 & $280; + do { + if ($281) { + $282 = HEAP32[$pTo>>2]|0; + $283 = (($282) + 20|0); + $284 = HEAP8[$283>>0]|0; + $285 = $284 << 24 >> 24; + $286 = HEAP8[$isOrdered>>0]|0; + $287 = $286 << 24 >> 24; + $288 = $285 ^ $287; + $289 = $288 & 80; + $290 = ($289|0)==(0); + if ($290) { + $291 = HEAP32[$pTo>>2]|0; + $292 = (($291) + 18|0); + $293 = HEAP16[$292>>1]|0; + $294 = $293 << 16 >> 16; + $295 = HEAP16[$rCost>>1]|0; + $296 = $295 << 16 >> 16; + $297 = ($294|0)<=($296|0); + if ($297) { + $298 = HEAP32[$pTo>>2]|0; + $299 = (($298) + 16|0); + $300 = HEAP16[$299>>1]|0; + $301 = $300 << 16 >> 16; + $302 = HEAP16[$nOut>>1]|0; + $303 = $302 << 16 >> 16; + $304 = ($301|0)<=($303|0); + if ($304) { + break L42; + } + } + $305 = HEAP32[$pTo>>2]|0; + $306 = (($305) + 18|0); + $307 = HEAP16[$306>>1]|0; + $308 = $307 << 16 >> 16; + $309 = HEAP16[$rCost>>1]|0; + $310 = $309 << 16 >> 16; + $311 = ($308|0)>=($310|0); + if (!($311)) { + break; + } + $312 = HEAP32[$pTo>>2]|0; + $313 = (($312) + 16|0); + $314 = HEAP16[$313>>1]|0; + $315 = $314 << 16 >> 16; + $316 = HEAP16[$nOut>>1]|0; + $317 = $316 << 16 >> 16; + $318 = ($315|0)>=($317|0); + if ($318) { + break L42; + } + } + } + } while(0); + $319 = HEAP32[$jj>>2]|0; + $320 = (($319) + 1)|0; + HEAP32[$jj>>2] = $320; + $321 = HEAP32[$pTo>>2]|0; + $322 = (($321) + 32|0); + HEAP32[$pTo>>2] = $322; + } + $323 = HEAP32[$jj>>2]|0; + $324 = HEAP32[$nTo>>2]|0; + $325 = ($323|0)>=($324|0); + if ($325) { + $326 = HEAP32[$nTo>>2]|0; + $327 = HEAP32[$mxChoice>>2]|0; + $328 = ($326|0)>=($327|0); + if ($328) { + $329 = HEAP16[$rCost>>1]|0; + $330 = $329 << 16 >> 16; + $331 = HEAP16[$mxCost>>1]|0; + $332 = $331 << 16 >> 16; + $333 = ($330|0)>=($332|0); + if ($333) { + break; + } + } + $334 = HEAP32[$nTo>>2]|0; + $335 = HEAP32[$mxChoice>>2]|0; + $336 = ($334|0)<($335|0); + if ($336) { + $337 = HEAP32[$nTo>>2]|0; + $338 = (($337) + 1)|0; + HEAP32[$nTo>>2] = $338; + HEAP32[$jj>>2] = $337; + } else { + $339 = HEAP32[$mxI>>2]|0; + HEAP32[$jj>>2] = $339; + } + $340 = HEAP32[$jj>>2]|0; + $341 = HEAP32[$aTo>>2]|0; + $342 = (($341) + ($340<<5)|0); + HEAP32[$pTo>>2] = $342; + } else { + $343 = HEAP32[$pTo>>2]|0; + $344 = (($343) + 18|0); + $345 = HEAP16[$344>>1]|0; + $346 = $345 << 16 >> 16; + $347 = HEAP16[$rCost>>1]|0; + $348 = $347 << 16 >> 16; + $349 = ($346|0)<=($348|0); + if ($349) { + $350 = HEAP32[$pTo>>2]|0; + $351 = (($350) + 16|0); + $352 = HEAP16[$351>>1]|0; + $353 = $352 << 16 >> 16; + $354 = HEAP16[$nOut>>1]|0; + $355 = $354 << 16 >> 16; + $356 = ($353|0)<=($355|0); + if ($356) { + break; + } + } + } + $357 = HEAP32[$pFrom>>2]|0; + $358 = $357; + $359 = $358; + $360 = HEAP32[$359>>2]|0; + $361 = (($358) + 4)|0; + $362 = $361; + $363 = HEAP32[$362>>2]|0; + $364 = HEAP32[$pWLoop>>2]|0; + $365 = (($364) + 8|0); + $366 = $365; + $367 = $366; + $368 = HEAP32[$367>>2]|0; + $369 = (($366) + 4)|0; + $370 = $369; + $371 = HEAP32[$370>>2]|0; + $372 = $360 | $368; + $373 = $363 | $371; + $374 = HEAP32[$pTo>>2]|0; + $375 = $374; + $376 = $375; + HEAP32[$376>>2] = $372; + $377 = (($375) + 4)|0; + $378 = $377; + HEAP32[$378>>2] = $373; + $379 = $revMask; + $380 = $379; + $381 = HEAP32[$380>>2]|0; + $382 = (($379) + 4)|0; + $383 = $382; + $384 = HEAP32[$383>>2]|0; + $385 = HEAP32[$pTo>>2]|0; + $386 = (($385) + 8|0); + $387 = $386; + $388 = $387; + HEAP32[$388>>2] = $381; + $389 = (($387) + 4)|0; + $390 = $389; + HEAP32[$390>>2] = $384; + $391 = HEAP16[$nOut>>1]|0; + $392 = HEAP32[$pTo>>2]|0; + $393 = (($392) + 16|0); + HEAP16[$393>>1] = $391; + $394 = HEAP16[$rCost>>1]|0; + $395 = HEAP32[$pTo>>2]|0; + $396 = (($395) + 18|0); + HEAP16[$396>>1] = $394; + $397 = HEAP8[$isOrdered>>0]|0; + $398 = HEAP32[$pTo>>2]|0; + $399 = (($398) + 20|0); + HEAP8[$399>>0] = $397; + $400 = HEAP32[$pTo>>2]|0; + $401 = (($400) + 24|0); + $402 = HEAP32[$401>>2]|0; + $403 = HEAP32[$pFrom>>2]|0; + $404 = (($403) + 24|0); + $405 = HEAP32[$404>>2]|0; + $406 = HEAP32[$iLoop>>2]|0; + $407 = $406<<2; + _memcpy(($402|0),($405|0),($407|0))|0; + $408 = HEAP32[$pWLoop>>2]|0; + $409 = HEAP32[$iLoop>>2]|0; + $410 = HEAP32[$pTo>>2]|0; + $411 = (($410) + 24|0); + $412 = HEAP32[$411>>2]|0; + $413 = (($412) + ($409<<2)|0); + HEAP32[$413>>2] = $408; + $414 = HEAP32[$nTo>>2]|0; + $415 = HEAP32[$mxChoice>>2]|0; + $416 = ($414|0)>=($415|0); + if ($416) { + HEAP32[$mxI>>2] = 0; + $417 = HEAP32[$aTo>>2]|0; + $418 = (($417) + 18|0); + $419 = HEAP16[$418>>1]|0; + HEAP16[$mxCost>>1] = $419; + $420 = HEAP32[$aTo>>2]|0; + $421 = (($420) + 16|0); + $422 = HEAP16[$421>>1]|0; + HEAP16[$mxOut>>1] = $422; + HEAP32[$jj>>2] = 1; + $423 = HEAP32[$aTo>>2]|0; + $424 = (($423) + 32|0); + HEAP32[$pTo>>2] = $424; + while(1) { + $425 = HEAP32[$jj>>2]|0; + $426 = HEAP32[$mxChoice>>2]|0; + $427 = ($425|0)<($426|0); + if (!($427)) { + break L30; + } + $428 = HEAP32[$pTo>>2]|0; + $429 = (($428) + 18|0); + $430 = HEAP16[$429>>1]|0; + $431 = $430 << 16 >> 16; + $432 = HEAP16[$mxCost>>1]|0; + $433 = $432 << 16 >> 16; + $434 = ($431|0)>($433|0); + do { + if ($434) { + label = 53; + } else { + $435 = HEAP32[$pTo>>2]|0; + $436 = (($435) + 18|0); + $437 = HEAP16[$436>>1]|0; + $438 = $437 << 16 >> 16; + $439 = HEAP16[$mxCost>>1]|0; + $440 = $439 << 16 >> 16; + $441 = ($438|0)==($440|0); + if (!($441)) { + break; + } + $442 = HEAP32[$pTo>>2]|0; + $443 = (($442) + 16|0); + $444 = HEAP16[$443>>1]|0; + $445 = $444 << 16 >> 16; + $446 = HEAP16[$mxOut>>1]|0; + $447 = $446 << 16 >> 16; + $448 = ($445|0)>($447|0); + if ($448) { + label = 53; + } + } + } while(0); + if ((label|0) == 53) { + label = 0; + $449 = HEAP32[$pTo>>2]|0; + $450 = (($449) + 18|0); + $451 = HEAP16[$450>>1]|0; + HEAP16[$mxCost>>1] = $451; + $452 = HEAP32[$pTo>>2]|0; + $453 = (($452) + 16|0); + $454 = HEAP16[$453>>1]|0; + HEAP16[$mxOut>>1] = $454; + $455 = HEAP32[$jj>>2]|0; + HEAP32[$mxI>>2] = $455; + } + $456 = HEAP32[$jj>>2]|0; + $457 = (($456) + 1)|0; + HEAP32[$jj>>2] = $457; + $458 = HEAP32[$pTo>>2]|0; + $459 = (($458) + 32|0); + HEAP32[$pTo>>2] = $459; + } + } + } + } + } while(0); + $460 = HEAP32[$pWLoop>>2]|0; + $461 = (($460) + 48|0); + $462 = HEAP32[$461>>2]|0; + HEAP32[$pWLoop>>2] = $462; + } + $463 = HEAP32[$ii>>2]|0; + $464 = (($463) + 1)|0; + HEAP32[$ii>>2] = $464; + $465 = HEAP32[$pFrom>>2]|0; + $466 = (($465) + 32|0); + HEAP32[$pFrom>>2] = $466; + } + $467 = HEAP32[$aTo>>2]|0; + HEAP32[$pFrom>>2] = $467; + $468 = HEAP32[$aFrom>>2]|0; + HEAP32[$aTo>>2] = $468; + $469 = HEAP32[$pFrom>>2]|0; + HEAP32[$aFrom>>2] = $469; + $470 = HEAP32[$nTo>>2]|0; + HEAP32[$nFrom>>2] = $470; + $471 = HEAP32[$iLoop>>2]|0; + $472 = (($471) + 1)|0; + HEAP32[$iLoop>>2] = $472; + } + $473 = HEAP32[$nFrom>>2]|0; + $474 = ($473|0)==(0); + if ($474) { + $475 = HEAP32[$pParse>>2]|0; + _sqlite3ErrorMsg($475,30488,$vararg_buffer); + $476 = HEAP32[$db>>2]|0; + $477 = HEAP32[$pSpace>>2]|0; + _sqlite3DbFree($476,$477); + HEAP32[$0>>2] = 1; + $674 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($674|0); + } + $478 = HEAP32[$aFrom>>2]|0; + HEAP32[$pFrom>>2] = $478; + HEAP32[$ii>>2] = 1; + while(1) { + $479 = HEAP32[$ii>>2]|0; + $480 = HEAP32[$nFrom>>2]|0; + $481 = ($479|0)<($480|0); + if (!($481)) { + break; + } + $482 = HEAP32[$pFrom>>2]|0; + $483 = (($482) + 18|0); + $484 = HEAP16[$483>>1]|0; + $485 = $484 << 16 >> 16; + $486 = HEAP32[$ii>>2]|0; + $487 = HEAP32[$aFrom>>2]|0; + $488 = (($487) + ($486<<5)|0); + $489 = (($488) + 18|0); + $490 = HEAP16[$489>>1]|0; + $491 = $490 << 16 >> 16; + $492 = ($485|0)>($491|0); + if ($492) { + $493 = HEAP32[$ii>>2]|0; + $494 = HEAP32[$aFrom>>2]|0; + $495 = (($494) + ($493<<5)|0); + HEAP32[$pFrom>>2] = $495; + } + $496 = HEAP32[$ii>>2]|0; + $497 = (($496) + 1)|0; + HEAP32[$ii>>2] = $497; + } + HEAP32[$iLoop>>2] = 0; + while(1) { + $498 = HEAP32[$iLoop>>2]|0; + $499 = HEAP32[$nLoop>>2]|0; + $500 = ($498|0)<($499|0); + $501 = HEAP32[$1>>2]|0; + if (!($500)) { + break; + } + $502 = (($501) + 736|0); + $503 = HEAP32[$iLoop>>2]|0; + $504 = (($502) + (($503*72)|0)|0); + HEAP32[$pLevel>>2] = $504; + $505 = HEAP32[$iLoop>>2]|0; + $506 = HEAP32[$pFrom>>2]|0; + $507 = (($506) + 24|0); + $508 = HEAP32[$507>>2]|0; + $509 = (($508) + ($505<<2)|0); + $510 = HEAP32[$509>>2]|0; + HEAP32[$pWLoop>>2] = $510; + $511 = HEAP32[$pLevel>>2]|0; + $512 = (($511) + 56|0); + HEAP32[$512>>2] = $510; + $513 = HEAP32[$pWLoop>>2]|0; + $514 = (($513) + 16|0); + $515 = HEAP8[$514>>0]|0; + $516 = HEAP32[$pLevel>>2]|0; + $517 = (($516) + 36|0); + HEAP8[$517>>0] = $515; + $518 = HEAP32[$pLevel>>2]|0; + $519 = (($518) + 36|0); + $520 = HEAP8[$519>>0]|0; + $521 = $520&255; + $522 = HEAP32[$1>>2]|0; + $523 = (($522) + 4|0); + $524 = HEAP32[$523>>2]|0; + $525 = (($524) + 8|0); + $526 = (($525) + (($521*72)|0)|0); + $527 = (($526) + 40|0); + $528 = HEAP32[$527>>2]|0; + $529 = HEAP32[$pLevel>>2]|0; + $530 = (($529) + 4|0); + HEAP32[$530>>2] = $528; + $531 = HEAP32[$iLoop>>2]|0; + $532 = (($531) + 1)|0; + HEAP32[$iLoop>>2] = $532; + } + $533 = (($501) + 34|0); + $534 = HEAP16[$533>>1]|0; + $535 = $534&65535; + $536 = $535 & 1024; + $537 = ($536|0)!=(0); + if ($537) { + $538 = HEAP32[$1>>2]|0; + $539 = (($538) + 34|0); + $540 = HEAP16[$539>>1]|0; + $541 = $540&65535; + $542 = $541 & 512; + $543 = ($542|0)==(0); + if ($543) { + $544 = HEAP32[$1>>2]|0; + $545 = (($544) + 40|0); + $546 = HEAP8[$545>>0]|0; + $547 = $546&255; + $548 = ($547|0)==(0); + if ($548) { + $549 = HEAP16[$2>>1]|0; + $550 = $549 << 16 >> 16; + $551 = ($550|0)!=(0); + if ($551) { + $552 = HEAP32[$1>>2]|0; + $553 = HEAP32[$1>>2]|0; + $554 = (($553) + 12|0); + $555 = HEAP32[$554>>2]|0; + $556 = HEAP32[$pFrom>>2]|0; + $557 = HEAP32[$nLoop>>2]|0; + $558 = (($557) - 1)|0; + $559 = $558&65535; + $560 = HEAP32[$nLoop>>2]|0; + $561 = (($560) - 1)|0; + $562 = HEAP32[$pFrom>>2]|0; + $563 = (($562) + 24|0); + $564 = HEAP32[$563>>2]|0; + $565 = (($564) + ($561<<2)|0); + $566 = HEAP32[$565>>2]|0; + $567 = (_wherePathSatisfiesOrderBy($552,$555,$556,512,$559,$566,$notUsed)|0); + $568 = $567 << 24 >> 24; + HEAP32[$rc>>2] = $568; + $569 = HEAP32[$rc>>2]|0; + $570 = HEAP32[$1>>2]|0; + $571 = (($570) + 12|0); + $572 = HEAP32[$571>>2]|0; + $573 = HEAP32[$572>>2]|0; + $574 = ($569|0)==($573|0); + if ($574) { + $575 = HEAP32[$1>>2]|0; + $576 = (($575) + 40|0); + HEAP8[$576>>0] = 2; + } + } + } + } + } + $577 = HEAP32[$1>>2]|0; + $578 = (($577) + 8|0); + $579 = HEAP32[$578>>2]|0; + $580 = ($579|0)!=(0|0); + if ($580) { + $581 = HEAP32[$1>>2]|0; + $582 = (($581) + 34|0); + $583 = HEAP16[$582>>1]|0; + $584 = $583&65535; + $585 = $584 & 512; + $586 = ($585|0)!=(0); + $587 = HEAP32[$pFrom>>2]|0; + $588 = (($587) + 20|0); + $589 = HEAP8[$588>>0]|0; + if ($586) { + $590 = $589 << 24 >> 24; + $591 = HEAP32[$1>>2]|0; + $592 = (($591) + 8|0); + $593 = HEAP32[$592>>2]|0; + $594 = HEAP32[$593>>2]|0; + $595 = ($590|0)==($594|0); + if ($595) { + $596 = HEAP32[$1>>2]|0; + $597 = (($596) + 40|0); + HEAP8[$597>>0] = 2; + } + } else { + $598 = HEAP32[$1>>2]|0; + $599 = (($598) + 36|0); + HEAP8[$599>>0] = $589; + $600 = HEAP32[$1>>2]|0; + $601 = (($600) + 36|0); + $602 = HEAP8[$601>>0]|0; + $603 = $602 << 24 >> 24; + $604 = ($603|0)<(0); + if ($604) { + $605 = HEAP32[$1>>2]|0; + $606 = (($605) + 36|0); + HEAP8[$606>>0] = 0; + } + $607 = HEAP32[$pFrom>>2]|0; + $608 = (($607) + 8|0); + $609 = $608; + $610 = $609; + $611 = HEAP32[$610>>2]|0; + $612 = (($609) + 4)|0; + $613 = $612; + $614 = HEAP32[$613>>2]|0; + $615 = HEAP32[$1>>2]|0; + $616 = (($615) + 24|0); + $617 = $616; + $618 = $617; + HEAP32[$618>>2] = $611; + $619 = (($617) + 4)|0; + $620 = $619; + HEAP32[$620>>2] = $614; + } + $621 = HEAP32[$1>>2]|0; + $622 = (($621) + 34|0); + $623 = HEAP16[$622>>1]|0; + $624 = $623&65535; + $625 = $624 & 2048; + $626 = ($625|0)!=(0); + if ($626) { + $627 = HEAP32[$1>>2]|0; + $628 = (($627) + 36|0); + $629 = HEAP8[$628>>0]|0; + $630 = $629 << 24 >> 24; + $631 = HEAP32[$1>>2]|0; + $632 = (($631) + 8|0); + $633 = HEAP32[$632>>2]|0; + $634 = HEAP32[$633>>2]|0; + $635 = ($630|0)==($634|0); + if ($635) { + $636 = $notUsed1; + $637 = $636; + HEAP32[$637>>2] = 0; + $638 = (($636) + 4)|0; + $639 = $638; + HEAP32[$639>>2] = 0; + $640 = HEAP32[$1>>2]|0; + $641 = HEAP32[$1>>2]|0; + $642 = (($641) + 8|0); + $643 = HEAP32[$642>>2]|0; + $644 = HEAP32[$pFrom>>2]|0; + $645 = HEAP32[$nLoop>>2]|0; + $646 = (($645) - 1)|0; + $647 = $646&65535; + $648 = HEAP32[$nLoop>>2]|0; + $649 = (($648) - 1)|0; + $650 = HEAP32[$pFrom>>2]|0; + $651 = (($650) + 24|0); + $652 = HEAP32[$651>>2]|0; + $653 = (($652) + ($649<<2)|0); + $654 = HEAP32[$653>>2]|0; + $655 = (_wherePathSatisfiesOrderBy($640,$643,$644,0,$647,$654,$notUsed1)|0); + $656 = $655 << 24 >> 24; + HEAP32[$nOrder>>2] = $656; + $657 = HEAP32[$nOrder>>2]|0; + $658 = HEAP32[$1>>2]|0; + $659 = (($658) + 8|0); + $660 = HEAP32[$659>>2]|0; + $661 = HEAP32[$660>>2]|0; + $662 = ($657|0)==($661|0); + $663 = $662&1; + $664 = $663&255; + $665 = HEAP32[$1>>2]|0; + $666 = (($665) + 37|0); + HEAP8[$666>>0] = $664; + } + } + } + $667 = HEAP32[$pFrom>>2]|0; + $668 = (($667) + 16|0); + $669 = HEAP16[$668>>1]|0; + $670 = HEAP32[$1>>2]|0; + $671 = (($670) + 32|0); + HEAP16[$671>>1] = $669; + $672 = HEAP32[$db>>2]|0; + $673 = HEAP32[$pSpace>>2]|0; + _sqlite3DbFree($672,$673); + HEAP32[$0>>2] = 0; + $674 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($674|0); +} +function _exprListTableUsage($pMaskSet,$pList) { + $pMaskSet = $pMaskSet|0; + $pList = $pList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $i = 0, $mask = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp + 12|0; + $i = sp + 8|0; + $mask = sp; + HEAP32[$0>>2] = $pMaskSet; + HEAP32[$1>>2] = $pList; + $2 = $mask; + $3 = $2; + HEAP32[$3>>2] = 0; + $4 = (($2) + 4)|0; + $5 = $4; + HEAP32[$5>>2] = 0; + $6 = HEAP32[$1>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + $35 = $mask; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = (($35) + 4)|0; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + tempRet0 = $40; + STACKTOP = sp;return ($37|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = ($8|0)<($10|0); + if (!($11)) { + break; + } + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + (($13*20)|0)|0); + $18 = HEAP32[$17>>2]|0; + $19 = (_exprTableUsage($12,$18)|0); + $20 = tempRet0; + $21 = $mask; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (($21) + 4)|0; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = $23 | $19; + $28 = $26 | $20; + $29 = $mask; + $30 = $29; + HEAP32[$30>>2] = $27; + $31 = (($29) + 4)|0; + $32 = $31; + HEAP32[$32>>2] = $28; + $33 = HEAP32[$i>>2]|0; + $34 = (($33) + 1)|0; + HEAP32[$i>>2] = $34; + } + $35 = $mask; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = (($35) + 4)|0; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + tempRet0 = $40; + STACKTOP = sp;return ($37|0); +} +function _getMask($pMaskSet,$iCursor) { + $pMaskSet = $pMaskSet|0; + $iCursor = $iCursor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp; + $1 = sp + 16|0; + $2 = sp + 8|0; + $i = sp + 12|0; + HEAP32[$1>>2] = $pMaskSet; + HEAP32[$2>>2] = $iCursor; + HEAP32[$i>>2] = 0; + while(1) { + $3 = HEAP32[$i>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = ($3|0)<($5|0); + if (!($6)) { + label = 6; + break; + } + $7 = HEAP32[$i>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 4|0); + $10 = (($9) + ($7<<2)|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = ($11|0)==($12|0); + $14 = HEAP32[$i>>2]|0; + if ($13) { + label = 4; + break; + } + $21 = (($14) + 1)|0; + HEAP32[$i>>2] = $21; + } + if ((label|0) == 4) { + $15 = (_bitshift64Shl(1,0,($14|0))|0); + $16 = tempRet0; + $17 = $0; + $18 = $17; + HEAP32[$18>>2] = $15; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = $16; + $26 = $0; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = (($26) + 4)|0; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + tempRet0 = $31; + STACKTOP = sp;return ($28|0); + } + else if ((label|0) == 6) { + $22 = $0; + $23 = $22; + HEAP32[$23>>2] = 0; + $24 = (($22) + 4)|0; + $25 = $24; + HEAP32[$25>>2] = 0; + $26 = $0; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = (($26) + 4)|0; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + tempRet0 = $31; + STACKTOP = sp;return ($28|0); + } + return 0|0; +} +function _constructAutomaticIndex($pParse,$pWC,$pSrc,$0,$1,$pLevel) { + $pParse = $pParse|0; + $pWC = $pWC|0; + $pSrc = $pSrc|0; + $0 = $0|0; + $1 = $1|0; + $pLevel = $pLevel|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; + var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; + var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; + var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0; + var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0; + var $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0; + var $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0; + var $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0; + var $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0; + var $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0; + var $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0; + var $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0; + var $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0; + var $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0; + var $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0; + var $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0; + var $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addrInit = 0, $addrTop = 0, $cMask = 0, $cMask2 = 0, $extraCols = 0, $i = 0, $iCol = 0, $iCol1 = 0, $idxCols = 0, $mxBitCol = 0, $n = 0; + var $nKeyCol = 0, $pColl = 0, $pIdx = 0, $pLoop = 0, $pTable = 0, $pTerm = 0, $pWCEnd = 0, $pX = 0, $regRecord = 0, $sentWarning = 0, $v = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $zNotUsed = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; + $vararg_buffer = sp; + $2 = sp + 128|0; + $3 = sp + 124|0; + $4 = sp + 120|0; + $5 = sp + 24|0; + $6 = sp + 116|0; + $nKeyCol = sp + 112|0; + $pTerm = sp + 108|0; + $pWCEnd = sp + 104|0; + $pIdx = sp + 100|0; + $v = sp + 96|0; + $addrInit = sp + 92|0; + $pTable = sp + 88|0; + $addrTop = sp + 84|0; + $regRecord = sp + 132|0; + $n = sp + 64|0; + $i = sp + 48|0; + $mxBitCol = sp + 52|0; + $pColl = sp + 60|0; + $pLoop = sp + 56|0; + $zNotUsed = sp + 68|0; + $idxCols = sp + 32|0; + $extraCols = sp + 8|0; + $sentWarning = sp + 136|0; + $iCol = sp + 76|0; + $cMask = sp + 16|0; + $iCol1 = sp + 72|0; + $cMask2 = sp + 40|0; + $pX = sp + 80|0; + HEAP32[$2>>2] = $pParse; + HEAP32[$3>>2] = $pWC; + HEAP32[$4>>2] = $pSrc; + $7 = $5; + $8 = $7; + HEAP32[$8>>2] = $0; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = $1; + HEAP32[$6>>2] = $pLevel; + HEAP8[$sentWarning>>0] = 0; + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 8|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$v>>2] = $13; + $14 = HEAP32[$2>>2]|0; + $15 = (_sqlite3CodeOnce($14)|0); + HEAP32[$addrInit>>2] = $15; + HEAP32[$nKeyCol>>2] = 0; + $16 = HEAP32[$4>>2]|0; + $17 = (($16) + 16|0); + $18 = HEAP32[$17>>2]|0; + HEAP32[$pTable>>2] = $18; + $19 = HEAP32[$3>>2]|0; + $20 = (($19) + 12|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$3>>2]|0; + $23 = (($22) + 20|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + (($21*48)|0)|0); + HEAP32[$pWCEnd>>2] = $25; + $26 = HEAP32[$6>>2]|0; + $27 = (($26) + 56|0); + $28 = HEAP32[$27>>2]|0; + HEAP32[$pLoop>>2] = $28; + $29 = $idxCols; + $30 = $29; + HEAP32[$30>>2] = 0; + $31 = (($29) + 4)|0; + $32 = $31; + HEAP32[$32>>2] = 0; + $33 = HEAP32[$3>>2]|0; + $34 = (($33) + 20|0); + $35 = HEAP32[$34>>2]|0; + HEAP32[$pTerm>>2] = $35; + while(1) { + $36 = HEAP32[$pTerm>>2]|0; + $37 = HEAP32[$pWCEnd>>2]|0; + $38 = ($36>>>0)<($37>>>0); + if (!($38)) { + break; + } + $39 = HEAP32[$pTerm>>2]|0; + $40 = HEAP32[$4>>2]|0; + $41 = $5; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = (($41) + 4)|0; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = (_termCanDriveIndex($39,$40,$43,$46)|0); + $48 = ($47|0)!=(0); + if ($48) { + $49 = HEAP32[$pTerm>>2]|0; + $50 = (($49) + 12|0); + $51 = HEAP32[$50>>2]|0; + HEAP32[$iCol>>2] = $51; + $52 = HEAP32[$iCol>>2]|0; + $53 = ($52|0)>=(64); + if ($53) { + $59 = 0;$62 = -2147483648; + } else { + $54 = HEAP32[$iCol>>2]|0; + $55 = (_bitshift64Shl(1,0,($54|0))|0); + $56 = tempRet0; + $59 = $55;$62 = $56; + } + $57 = $cMask; + $58 = $57; + HEAP32[$58>>2] = $59; + $60 = (($57) + 4)|0; + $61 = $60; + HEAP32[$61>>2] = $62; + $63 = HEAP8[$sentWarning>>0]|0; + $64 = ($63<<24>>24)!=(0); + if (!($64)) { + $65 = HEAP32[$pTable>>2]|0; + $66 = HEAP32[$65>>2]|0; + $67 = HEAP32[$iCol>>2]|0; + $68 = HEAP32[$pTable>>2]|0; + $69 = (($68) + 4|0); + $70 = HEAP32[$69>>2]|0; + $71 = (($70) + (($67*24)|0)|0); + $72 = HEAP32[$71>>2]|0; + HEAP32[$vararg_buffer>>2] = $66; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $72; + _sqlite3_log(284,30440,$vararg_buffer); + HEAP8[$sentWarning>>0] = 1; + } + $73 = $idxCols; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $76 = (($73) + 4)|0; + $77 = $76; + $78 = HEAP32[$77>>2]|0; + $79 = $cMask; + $80 = $79; + $81 = HEAP32[$80>>2]|0; + $82 = (($79) + 4)|0; + $83 = $82; + $84 = HEAP32[$83>>2]|0; + $85 = $75 & $81; + $86 = $78 & $84; + $87 = ($85|0)==(0); + $88 = ($86|0)==(0); + $89 = $87 & $88; + if ($89) { + $90 = HEAP32[$2>>2]|0; + $91 = HEAP32[$90>>2]|0; + $92 = HEAP32[$pLoop>>2]|0; + $93 = HEAP32[$nKeyCol>>2]|0; + $94 = (($93) + 1)|0; + $95 = (_whereLoopResize($91,$92,$94)|0); + $96 = ($95|0)!=(0); + if ($96) { + label = 42; + break; + } + $97 = HEAP32[$pTerm>>2]|0; + $98 = HEAP32[$nKeyCol>>2]|0; + $99 = (($98) + 1)|0; + HEAP32[$nKeyCol>>2] = $99; + $100 = HEAP32[$pLoop>>2]|0; + $101 = (($100) + 44|0); + $102 = HEAP32[$101>>2]|0; + $103 = (($102) + ($98<<2)|0); + HEAP32[$103>>2] = $97; + $104 = $cMask; + $105 = $104; + $106 = HEAP32[$105>>2]|0; + $107 = (($104) + 4)|0; + $108 = $107; + $109 = HEAP32[$108>>2]|0; + $110 = $idxCols; + $111 = $110; + $112 = HEAP32[$111>>2]|0; + $113 = (($110) + 4)|0; + $114 = $113; + $115 = HEAP32[$114>>2]|0; + $116 = $112 | $106; + $117 = $115 | $109; + $118 = $idxCols; + $119 = $118; + HEAP32[$119>>2] = $116; + $120 = (($118) + 4)|0; + $121 = $120; + HEAP32[$121>>2] = $117; + } + } + $122 = HEAP32[$pTerm>>2]|0; + $123 = (($122) + 48|0); + HEAP32[$pTerm>>2] = $123; + } + if ((label|0) == 42) { + STACKTOP = sp;return; + } + $124 = HEAP32[$nKeyCol>>2]|0; + $125 = $124&65535; + $126 = HEAP32[$pLoop>>2]|0; + $127 = (($126) + 40|0); + HEAP16[$127>>1] = $125; + $128 = HEAP32[$pLoop>>2]|0; + $129 = (($128) + 24|0); + HEAP16[$129>>1] = $125; + $130 = HEAP32[$pLoop>>2]|0; + $131 = (($130) + 36|0); + HEAP32[$131>>2] = 16961; + $132 = HEAP32[$4>>2]|0; + $133 = (($132) + 56|0); + $134 = $133; + $135 = $134; + $136 = HEAP32[$135>>2]|0; + $137 = (($134) + 4)|0; + $138 = $137; + $139 = HEAP32[$138>>2]|0; + $140 = $idxCols; + $141 = $140; + $142 = HEAP32[$141>>2]|0; + $143 = (($140) + 4)|0; + $144 = $143; + $145 = HEAP32[$144>>2]|0; + $146 = $142 ^ -1; + $147 = $145 ^ -1; + $148 = $147 | -2147483648; + $149 = $136 & $146; + $150 = $139 & $148; + $151 = $extraCols; + $152 = $151; + HEAP32[$152>>2] = $149; + $153 = (($151) + 4)|0; + $154 = $153; + HEAP32[$154>>2] = $150; + $155 = HEAP32[$pTable>>2]|0; + $156 = (($155) + 38|0); + $157 = HEAP16[$156>>1]|0; + $158 = $157 << 16 >> 16; + $159 = ($158|0)>=(63); + if ($159) { + $164 = 63; + } else { + $160 = HEAP32[$pTable>>2]|0; + $161 = (($160) + 38|0); + $162 = HEAP16[$161>>1]|0; + $163 = $162 << 16 >> 16; + $164 = $163; + } + HEAP32[$mxBitCol>>2] = $164; + HEAP32[$i>>2] = 0; + while(1) { + $165 = HEAP32[$i>>2]|0; + $166 = HEAP32[$mxBitCol>>2]|0; + $167 = ($165|0)<($166|0); + if (!($167)) { + break; + } + $168 = $extraCols; + $169 = $168; + $170 = HEAP32[$169>>2]|0; + $171 = (($168) + 4)|0; + $172 = $171; + $173 = HEAP32[$172>>2]|0; + $174 = HEAP32[$i>>2]|0; + $175 = (_bitshift64Shl(1,0,($174|0))|0); + $176 = tempRet0; + $177 = $170 & $175; + $178 = $173 & $176; + $179 = ($177|0)!=(0); + $180 = ($178|0)!=(0); + $181 = $179 | $180; + if ($181) { + $182 = HEAP32[$nKeyCol>>2]|0; + $183 = (($182) + 1)|0; + HEAP32[$nKeyCol>>2] = $183; + } + $184 = HEAP32[$i>>2]|0; + $185 = (($184) + 1)|0; + HEAP32[$i>>2] = $185; + } + $186 = HEAP32[$4>>2]|0; + $187 = (($186) + 56|0); + $188 = $187; + $189 = $188; + $190 = HEAP32[$189>>2]|0; + $191 = (($188) + 4)|0; + $192 = $191; + $193 = HEAP32[$192>>2]|0; + $194 = $193 & -2147483648; + $195 = (0)!=(0); + $196 = ($194|0)!=(0); + $197 = $195 | $196; + if ($197) { + $198 = HEAP32[$pTable>>2]|0; + $199 = (($198) + 38|0); + $200 = HEAP16[$199>>1]|0; + $201 = $200 << 16 >> 16; + $202 = (($201) - 64)|0; + $203 = (($202) + 1)|0; + $204 = HEAP32[$nKeyCol>>2]|0; + $205 = (($204) + ($203))|0; + HEAP32[$nKeyCol>>2] = $205; + } + $206 = HEAP32[$pLoop>>2]|0; + $207 = (($206) + 36|0); + $208 = HEAP32[$207>>2]|0; + $209 = $208 | 65; + HEAP32[$207>>2] = $209; + $210 = HEAP32[$2>>2]|0; + $211 = HEAP32[$210>>2]|0; + $212 = HEAP32[$nKeyCol>>2]|0; + $213 = (($212) + 1)|0; + $214 = $213&65535; + $215 = (_sqlite3AllocateIndexObject($211,$214,0,$zNotUsed)|0); + HEAP32[$pIdx>>2] = $215; + $216 = HEAP32[$pIdx>>2]|0; + $217 = ($216|0)==(0|0); + if ($217) { + STACKTOP = sp;return; + } + $218 = HEAP32[$pIdx>>2]|0; + $219 = HEAP32[$pLoop>>2]|0; + $220 = (($219) + 24|0); + $221 = (($220) + 4|0); + HEAP32[$221>>2] = $218; + $222 = HEAP32[$pIdx>>2]|0; + HEAP32[$222>>2] = 30472; + $223 = HEAP32[$pTable>>2]|0; + $224 = HEAP32[$pIdx>>2]|0; + $225 = (($224) + 12|0); + HEAP32[$225>>2] = $223; + HEAP32[$n>>2] = 0; + $226 = $idxCols; + $227 = $226; + HEAP32[$227>>2] = 0; + $228 = (($226) + 4)|0; + $229 = $228; + HEAP32[$229>>2] = 0; + $230 = HEAP32[$3>>2]|0; + $231 = (($230) + 20|0); + $232 = HEAP32[$231>>2]|0; + HEAP32[$pTerm>>2] = $232; + while(1) { + $233 = HEAP32[$pTerm>>2]|0; + $234 = HEAP32[$pWCEnd>>2]|0; + $235 = ($233>>>0)<($234>>>0); + if (!($235)) { + break; + } + $236 = HEAP32[$pTerm>>2]|0; + $237 = HEAP32[$4>>2]|0; + $238 = $5; + $239 = $238; + $240 = HEAP32[$239>>2]|0; + $241 = (($238) + 4)|0; + $242 = $241; + $243 = HEAP32[$242>>2]|0; + $244 = (_termCanDriveIndex($236,$237,$240,$243)|0); + $245 = ($244|0)!=(0); + if ($245) { + $246 = HEAP32[$pTerm>>2]|0; + $247 = (($246) + 12|0); + $248 = HEAP32[$247>>2]|0; + HEAP32[$iCol1>>2] = $248; + $249 = HEAP32[$iCol1>>2]|0; + $250 = ($249|0)>=(64); + if ($250) { + $256 = 0;$259 = -2147483648; + } else { + $251 = HEAP32[$iCol1>>2]|0; + $252 = (_bitshift64Shl(1,0,($251|0))|0); + $253 = tempRet0; + $256 = $252;$259 = $253; + } + $254 = $cMask2; + $255 = $254; + HEAP32[$255>>2] = $256; + $257 = (($254) + 4)|0; + $258 = $257; + HEAP32[$258>>2] = $259; + $260 = $idxCols; + $261 = $260; + $262 = HEAP32[$261>>2]|0; + $263 = (($260) + 4)|0; + $264 = $263; + $265 = HEAP32[$264>>2]|0; + $266 = $cMask2; + $267 = $266; + $268 = HEAP32[$267>>2]|0; + $269 = (($266) + 4)|0; + $270 = $269; + $271 = HEAP32[$270>>2]|0; + $272 = $262 & $268; + $273 = $265 & $271; + $274 = ($272|0)==(0); + $275 = ($273|0)==(0); + $276 = $274 & $275; + if ($276) { + $277 = HEAP32[$pTerm>>2]|0; + $278 = HEAP32[$277>>2]|0; + HEAP32[$pX>>2] = $278; + $279 = $cMask2; + $280 = $279; + $281 = HEAP32[$280>>2]|0; + $282 = (($279) + 4)|0; + $283 = $282; + $284 = HEAP32[$283>>2]|0; + $285 = $idxCols; + $286 = $285; + $287 = HEAP32[$286>>2]|0; + $288 = (($285) + 4)|0; + $289 = $288; + $290 = HEAP32[$289>>2]|0; + $291 = $287 | $281; + $292 = $290 | $284; + $293 = $idxCols; + $294 = $293; + HEAP32[$294>>2] = $291; + $295 = (($293) + 4)|0; + $296 = $295; + HEAP32[$296>>2] = $292; + $297 = HEAP32[$pTerm>>2]|0; + $298 = (($297) + 12|0); + $299 = HEAP32[$298>>2]|0; + $300 = $299&65535; + $301 = HEAP32[$n>>2]|0; + $302 = HEAP32[$pIdx>>2]|0; + $303 = (($302) + 4|0); + $304 = HEAP32[$303>>2]|0; + $305 = (($304) + ($301<<1)|0); + HEAP16[$305>>1] = $300; + $306 = HEAP32[$2>>2]|0; + $307 = HEAP32[$pX>>2]|0; + $308 = (($307) + 12|0); + $309 = HEAP32[$308>>2]|0; + $310 = HEAP32[$pX>>2]|0; + $311 = (($310) + 16|0); + $312 = HEAP32[$311>>2]|0; + $313 = (_sqlite3BinaryCompareCollSeq($306,$309,$312)|0); + HEAP32[$pColl>>2] = $313; + $314 = HEAP32[$pColl>>2]|0; + $315 = ($314|0)!=(0|0); + if ($315) { + $316 = HEAP32[$pColl>>2]|0; + $317 = HEAP32[$316>>2]|0; + $323 = $317; + } else { + $323 = 3640; + } + $318 = HEAP32[$n>>2]|0; + $319 = HEAP32[$pIdx>>2]|0; + $320 = (($319) + 32|0); + $321 = HEAP32[$320>>2]|0; + $322 = (($321) + ($318<<2)|0); + HEAP32[$322>>2] = $323; + $324 = HEAP32[$n>>2]|0; + $325 = (($324) + 1)|0; + HEAP32[$n>>2] = $325; + } + } + $326 = HEAP32[$pTerm>>2]|0; + $327 = (($326) + 48|0); + HEAP32[$pTerm>>2] = $327; + } + HEAP32[$i>>2] = 0; + while(1) { + $328 = HEAP32[$i>>2]|0; + $329 = HEAP32[$mxBitCol>>2]|0; + $330 = ($328|0)<($329|0); + if (!($330)) { + break; + } + $331 = $extraCols; + $332 = $331; + $333 = HEAP32[$332>>2]|0; + $334 = (($331) + 4)|0; + $335 = $334; + $336 = HEAP32[$335>>2]|0; + $337 = HEAP32[$i>>2]|0; + $338 = (_bitshift64Shl(1,0,($337|0))|0); + $339 = tempRet0; + $340 = $333 & $338; + $341 = $336 & $339; + $342 = ($340|0)!=(0); + $343 = ($341|0)!=(0); + $344 = $342 | $343; + if ($344) { + $345 = HEAP32[$i>>2]|0; + $346 = $345&65535; + $347 = HEAP32[$n>>2]|0; + $348 = HEAP32[$pIdx>>2]|0; + $349 = (($348) + 4|0); + $350 = HEAP32[$349>>2]|0; + $351 = (($350) + ($347<<1)|0); + HEAP16[$351>>1] = $346; + $352 = HEAP32[$n>>2]|0; + $353 = HEAP32[$pIdx>>2]|0; + $354 = (($353) + 32|0); + $355 = HEAP32[$354>>2]|0; + $356 = (($355) + ($352<<2)|0); + HEAP32[$356>>2] = 3640; + $357 = HEAP32[$n>>2]|0; + $358 = (($357) + 1)|0; + HEAP32[$n>>2] = $358; + } + $359 = HEAP32[$i>>2]|0; + $360 = (($359) + 1)|0; + HEAP32[$i>>2] = $360; + } + $361 = HEAP32[$4>>2]|0; + $362 = (($361) + 56|0); + $363 = $362; + $364 = $363; + $365 = HEAP32[$364>>2]|0; + $366 = (($363) + 4)|0; + $367 = $366; + $368 = HEAP32[$367>>2]|0; + $369 = $368 & -2147483648; + $370 = (0)!=(0); + $371 = ($369|0)!=(0); + $372 = $370 | $371; + L55: do { + if ($372) { + HEAP32[$i>>2] = 63; + while(1) { + $373 = HEAP32[$i>>2]|0; + $374 = HEAP32[$pTable>>2]|0; + $375 = (($374) + 38|0); + $376 = HEAP16[$375>>1]|0; + $377 = $376 << 16 >> 16; + $378 = ($373|0)<($377|0); + if (!($378)) { + break L55; + } + $379 = HEAP32[$i>>2]|0; + $380 = $379&65535; + $381 = HEAP32[$n>>2]|0; + $382 = HEAP32[$pIdx>>2]|0; + $383 = (($382) + 4|0); + $384 = HEAP32[$383>>2]|0; + $385 = (($384) + ($381<<1)|0); + HEAP16[$385>>1] = $380; + $386 = HEAP32[$n>>2]|0; + $387 = HEAP32[$pIdx>>2]|0; + $388 = (($387) + 32|0); + $389 = HEAP32[$388>>2]|0; + $390 = (($389) + ($386<<2)|0); + HEAP32[$390>>2] = 3640; + $391 = HEAP32[$n>>2]|0; + $392 = (($391) + 1)|0; + HEAP32[$n>>2] = $392; + $393 = HEAP32[$i>>2]|0; + $394 = (($393) + 1)|0; + HEAP32[$i>>2] = $394; + } + } + } while(0); + $395 = HEAP32[$n>>2]|0; + $396 = HEAP32[$pIdx>>2]|0; + $397 = (($396) + 4|0); + $398 = HEAP32[$397>>2]|0; + $399 = (($398) + ($395<<1)|0); + HEAP16[$399>>1] = -1; + $400 = HEAP32[$n>>2]|0; + $401 = HEAP32[$pIdx>>2]|0; + $402 = (($401) + 32|0); + $403 = HEAP32[$402>>2]|0; + $404 = (($403) + ($400<<2)|0); + HEAP32[$404>>2] = 3640; + $405 = HEAP32[$2>>2]|0; + $406 = (($405) + 68|0); + $407 = HEAP32[$406>>2]|0; + $408 = (($407) + 1)|0; + HEAP32[$406>>2] = $408; + $409 = HEAP32[$6>>2]|0; + $410 = (($409) + 8|0); + HEAP32[$410>>2] = $407; + $411 = HEAP32[$v>>2]|0; + $412 = HEAP32[$6>>2]|0; + $413 = (($412) + 8|0); + $414 = HEAP32[$413>>2]|0; + $415 = HEAP32[$nKeyCol>>2]|0; + $416 = (($415) + 1)|0; + (_sqlite3VdbeAddOp2($411,54,$414,$416)|0); + $417 = HEAP32[$2>>2]|0; + $418 = HEAP32[$pIdx>>2]|0; + _sqlite3VdbeSetP4KeyInfo($417,$418); + $419 = HEAP32[$v>>2]|0; + $420 = HEAP32[$6>>2]|0; + $421 = (($420) + 4|0); + $422 = HEAP32[$421>>2]|0; + $423 = (_sqlite3VdbeAddOp1($419,105,$422)|0); + HEAP32[$addrTop>>2] = $423; + $424 = HEAP32[$2>>2]|0; + $425 = (_sqlite3GetTempReg($424)|0); + HEAP32[$regRecord>>2] = $425; + $426 = HEAP32[$2>>2]|0; + $427 = HEAP32[$pIdx>>2]|0; + $428 = HEAP32[$6>>2]|0; + $429 = (($428) + 4|0); + $430 = HEAP32[$429>>2]|0; + $431 = HEAP32[$regRecord>>2]|0; + (_sqlite3GenerateIndexKey($426,$427,$430,$431,0,0,0,0)|0); + $432 = HEAP32[$v>>2]|0; + $433 = HEAP32[$6>>2]|0; + $434 = (($433) + 8|0); + $435 = HEAP32[$434>>2]|0; + $436 = HEAP32[$regRecord>>2]|0; + (_sqlite3VdbeAddOp2($432,107,$435,$436)|0); + $437 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($437,16); + $438 = HEAP32[$v>>2]|0; + $439 = HEAP32[$6>>2]|0; + $440 = (($439) + 4|0); + $441 = HEAP32[$440>>2]|0; + $442 = HEAP32[$addrTop>>2]|0; + $443 = (($442) + 1)|0; + (_sqlite3VdbeAddOp2($438,9,$441,$443)|0); + $444 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($444,3); + $445 = HEAP32[$v>>2]|0; + $446 = HEAP32[$addrTop>>2]|0; + _sqlite3VdbeJumpHere($445,$446); + $447 = HEAP32[$2>>2]|0; + $448 = HEAP32[$regRecord>>2]|0; + _sqlite3ReleaseTempReg($447,$448); + $449 = HEAP32[$v>>2]|0; + $450 = HEAP32[$addrInit>>2]|0; + _sqlite3VdbeJumpHere($449,$450); + STACKTOP = sp;return; +} +function _explainOneScan($pParse,$pTabList,$pLevel,$iLevel,$iFrom,$wctrlFlags) { + $pParse = $pParse|0; + $pTabList = $pTabList|0; + $pLevel = $pLevel|0; + $iLevel = $iLevel|0; + $iFrom = $iFrom|0; + $wctrlFlags = $wctrlFlags|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; + var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0; + var $flags = 0, $iId = 0, $isSearch = 0, $pIdx = 0, $pItem = 0, $pLoop = 0, $v = 0, $vararg_buffer38 = 0, $vararg_ptr12 = 0, $vararg_ptr16 = 0, $vararg_ptr17 = 0, $vararg_ptr36 = 0, $vararg_ptr37 = 0, $vararg_ptr4 = 0, $vararg_ptr8 = 0, $zFmt = 0, $zMsg = 0, $zWhere = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer38 = sp; + $0 = sp + 68|0; + $1 = sp + 64|0; + $2 = sp + 60|0; + $3 = sp + 56|0; + $4 = sp + 52|0; + $5 = sp + 76|0; + $pItem = sp + 48|0; + $v = sp + 44|0; + $db = sp + 72|0; + $zMsg = sp + 32|0; + $iId = sp + 28|0; + $isSearch = sp + 24|0; + $pLoop = sp + 20|0; + $flags = sp + 16|0; + $zFmt = sp + 12|0; + $pIdx = sp + 36|0; + $zWhere = sp + 40|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTabList; + HEAP32[$2>>2] = $pLevel; + HEAP32[$3>>2] = $iLevel; + HEAP32[$4>>2] = $iFrom; + HEAP16[$5>>1] = $wctrlFlags; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 450|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = ($9|0)==(2); + if (!($10)) { + STACKTOP = sp;return; + } + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 36|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 8|0); + $17 = (($16) + (($14*72)|0)|0); + HEAP32[$pItem>>2] = $17; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 8|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$v>>2] = $20; + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$21>>2]|0; + HEAP32[$db>>2] = $22; + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 464|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$iId>>2] = $25; + $26 = HEAP32[$2>>2]|0; + $27 = (($26) + 56|0); + $28 = HEAP32[$27>>2]|0; + HEAP32[$pLoop>>2] = $28; + $29 = HEAP32[$pLoop>>2]|0; + $30 = (($29) + 36|0); + $31 = HEAP32[$30>>2]|0; + HEAP32[$flags>>2] = $31; + $32 = HEAP32[$flags>>2]|0; + $33 = $32 & 8192; + $34 = ($33|0)!=(0); + if ($34) { + STACKTOP = sp;return; + } + $35 = HEAP16[$5>>1]|0; + $36 = $35&65535; + $37 = $36 & 64; + $38 = ($37|0)!=(0); + if ($38) { + STACKTOP = sp;return; + } + $39 = HEAP32[$flags>>2]|0; + $40 = $39 & 48; + $41 = ($40|0)!=(0); + do { + if ($41) { + $55 = 1; + } else { + $42 = HEAP32[$flags>>2]|0; + $43 = $42 & 1024; + $44 = ($43|0)==(0); + if ($44) { + $45 = HEAP32[$pLoop>>2]|0; + $46 = (($45) + 24|0); + $47 = HEAP16[$46>>1]|0; + $48 = $47&65535; + $49 = ($48|0)>(0); + if ($49) { + $55 = 1; + break; + } + } + $50 = HEAP16[$5>>1]|0; + $51 = $50&65535; + $52 = $51 & 3; + $53 = ($52|0)!=(0); + $55 = $53; + } + } while(0); + $54 = $55&1; + HEAP32[$isSearch>>2] = $54; + $56 = HEAP32[$db>>2]|0; + $57 = HEAP32[$isSearch>>2]|0; + $58 = ($57|0)!=(0); + $59 = $58 ? 30032 : 30040; + HEAP32[$vararg_buffer38>>2] = $59; + $60 = (_sqlite3MPrintf($56,1768,$vararg_buffer38)|0); + HEAP32[$zMsg>>2] = $60; + $61 = HEAP32[$pItem>>2]|0; + $62 = (($61) + 20|0); + $63 = HEAP32[$62>>2]|0; + $64 = ($63|0)!=(0|0); + $65 = HEAP32[$db>>2]|0; + $66 = HEAP32[$zMsg>>2]|0; + $67 = HEAP32[$zMsg>>2]|0; + $68 = HEAP32[$pItem>>2]|0; + if ($64) { + $69 = (($68) + 38|0); + $70 = HEAP8[$69>>0]|0; + $71 = $70&255; + HEAP32[$vararg_buffer38>>2] = $67; + $vararg_ptr4 = (($vararg_buffer38) + 4|0); + HEAP32[$vararg_ptr4>>2] = $71; + $72 = (_sqlite3MAppendf($65,$66,30048,$vararg_buffer38)|0); + HEAP32[$zMsg>>2] = $72; + } else { + $73 = (($68) + 8|0); + $74 = HEAP32[$73>>2]|0; + HEAP32[$vararg_buffer38>>2] = $67; + $vararg_ptr8 = (($vararg_buffer38) + 4|0); + HEAP32[$vararg_ptr8>>2] = $74; + $75 = (_sqlite3MAppendf($65,$66,30064,$vararg_buffer38)|0); + HEAP32[$zMsg>>2] = $75; + } + $76 = HEAP32[$pItem>>2]|0; + $77 = (($76) + 12|0); + $78 = HEAP32[$77>>2]|0; + $79 = ($78|0)!=(0|0); + if ($79) { + $80 = HEAP32[$db>>2]|0; + $81 = HEAP32[$zMsg>>2]|0; + $82 = HEAP32[$zMsg>>2]|0; + $83 = HEAP32[$pItem>>2]|0; + $84 = (($83) + 12|0); + $85 = HEAP32[$84>>2]|0; + HEAP32[$vararg_buffer38>>2] = $82; + $vararg_ptr12 = (($vararg_buffer38) + 4|0); + HEAP32[$vararg_ptr12>>2] = $85; + $86 = (_sqlite3MAppendf($80,$81,30080,$vararg_buffer38)|0); + HEAP32[$zMsg>>2] = $86; + } + $87 = HEAP32[$flags>>2]|0; + $88 = $87 & 1280; + $89 = ($88|0)==(0); + if ($89) { + $90 = HEAP32[$pLoop>>2]|0; + $91 = (($90) + 24|0); + $92 = (($91) + 4|0); + $93 = HEAP32[$92>>2]|0; + $94 = ($93|0)!=(0|0); + if ($94) { + $95 = HEAP32[$pLoop>>2]|0; + $96 = (($95) + 24|0); + $97 = (($96) + 4|0); + $98 = HEAP32[$97>>2]|0; + HEAP32[$pIdx>>2] = $98; + $99 = HEAP32[$db>>2]|0; + $100 = HEAP32[$pLoop>>2]|0; + $101 = HEAP32[$pItem>>2]|0; + $102 = (($101) + 16|0); + $103 = HEAP32[$102>>2]|0; + $104 = (_explainIndexRange($99,$100,$103)|0); + HEAP32[$zWhere>>2] = $104; + $105 = HEAP32[$pItem>>2]|0; + $106 = (($105) + 16|0); + $107 = HEAP32[$106>>2]|0; + $108 = (($107) + 44|0); + $109 = HEAP8[$108>>0]|0; + $110 = $109&255; + $111 = $110 & 32; + $112 = ($111|0)==(0); + if ($112) { + label = 18; + } else { + $113 = HEAP32[$pIdx>>2]|0; + $114 = (($113) + 55|0); + $115 = HEAP8[$114>>0]|0; + $116 = $115 & 3; + $117 = $116&255; + $118 = ($117|0)==(2); + if ($118) { + $119 = HEAP32[$zWhere>>2]|0; + $120 = ($119|0)!=(0|0); + $121 = $120 ? 30096 : 30128; + HEAP32[$zFmt>>2] = $121; + } else { + label = 18; + } + } + do { + if ((label|0) == 18) { + $122 = HEAP32[$flags>>2]|0; + $123 = $122 & 16384; + $124 = ($123|0)!=(0); + if ($124) { + HEAP32[$zFmt>>2] = 30144; + break; + } + $125 = HEAP32[$flags>>2]|0; + $126 = $125 & 64; + $127 = ($126|0)!=(0); + if ($127) { + HEAP32[$zFmt>>2] = 30184; + break; + } else { + HEAP32[$zFmt>>2] = 30216; + break; + } + } + } while(0); + $128 = HEAP32[$db>>2]|0; + $129 = HEAP32[$zMsg>>2]|0; + $130 = HEAP32[$zFmt>>2]|0; + $131 = HEAP32[$zMsg>>2]|0; + $132 = HEAP32[$pIdx>>2]|0; + $133 = HEAP32[$132>>2]|0; + $134 = HEAP32[$zWhere>>2]|0; + HEAP32[$vararg_buffer38>>2] = $131; + $vararg_ptr16 = (($vararg_buffer38) + 4|0); + HEAP32[$vararg_ptr16>>2] = $133; + $vararg_ptr17 = (($vararg_buffer38) + 8|0); + HEAP32[$vararg_ptr17>>2] = $134; + $135 = (_sqlite3MAppendf($128,$129,$130,$vararg_buffer38)|0); + HEAP32[$zMsg>>2] = $135; + $136 = HEAP32[$db>>2]|0; + $137 = HEAP32[$zWhere>>2]|0; + _sqlite3DbFree($136,$137); + } else { + label = 24; + } + } else { + label = 24; + } + do { + if ((label|0) == 24) { + $138 = HEAP32[$flags>>2]|0; + $139 = $138 & 256; + $140 = ($139|0)!=(0); + if ($140) { + $141 = HEAP32[$flags>>2]|0; + $142 = $141 & 15; + $143 = ($142|0)!=(0); + if ($143) { + $144 = HEAP32[$db>>2]|0; + $145 = HEAP32[$zMsg>>2]|0; + $146 = HEAP32[$zMsg>>2]|0; + HEAP32[$vararg_buffer38>>2] = $146; + $147 = (_sqlite3MAppendf($144,$145,30240,$vararg_buffer38)|0); + HEAP32[$zMsg>>2] = $147; + $148 = HEAP32[$flags>>2]|0; + $149 = $148 & 5; + $150 = ($149|0)!=(0); + if ($150) { + $151 = HEAP32[$db>>2]|0; + $152 = HEAP32[$zMsg>>2]|0; + $153 = HEAP32[$zMsg>>2]|0; + HEAP32[$vararg_buffer38>>2] = $153; + $154 = (_sqlite3MAppendf($151,$152,30272,$vararg_buffer38)|0); + HEAP32[$zMsg>>2] = $154; + break; + } + $155 = HEAP32[$flags>>2]|0; + $156 = $155 & 48; + $157 = ($156|0)==(48); + if ($157) { + $158 = HEAP32[$db>>2]|0; + $159 = HEAP32[$zMsg>>2]|0; + $160 = HEAP32[$zMsg>>2]|0; + HEAP32[$vararg_buffer38>>2] = $160; + $161 = (_sqlite3MAppendf($158,$159,30288,$vararg_buffer38)|0); + HEAP32[$zMsg>>2] = $161; + break; + } + $162 = HEAP32[$flags>>2]|0; + $163 = $162 & 32; + $164 = ($163|0)!=(0); + if ($164) { + $165 = HEAP32[$db>>2]|0; + $166 = HEAP32[$zMsg>>2]|0; + $167 = HEAP32[$zMsg>>2]|0; + HEAP32[$vararg_buffer38>>2] = $167; + $168 = (_sqlite3MAppendf($165,$166,30320,$vararg_buffer38)|0); + HEAP32[$zMsg>>2] = $168; + break; + } + $169 = HEAP32[$flags>>2]|0; + $170 = $169 & 16; + $171 = ($170|0)!=(0); + if (!($171)) { + break; + } + $172 = HEAP32[$db>>2]|0; + $173 = HEAP32[$zMsg>>2]|0; + $174 = HEAP32[$zMsg>>2]|0; + HEAP32[$vararg_buffer38>>2] = $174; + $175 = (_sqlite3MAppendf($172,$173,30336,$vararg_buffer38)|0); + HEAP32[$zMsg>>2] = $175; + break; + } + } + $176 = HEAP32[$flags>>2]|0; + $177 = $176 & 1024; + $178 = ($177|0)!=(0); + if ($178) { + $179 = HEAP32[$db>>2]|0; + $180 = HEAP32[$zMsg>>2]|0; + $181 = HEAP32[$zMsg>>2]|0; + $182 = HEAP32[$pLoop>>2]|0; + $183 = (($182) + 24|0); + $184 = HEAP32[$183>>2]|0; + $185 = HEAP32[$pLoop>>2]|0; + $186 = (($185) + 24|0); + $187 = (($186) + 8|0); + $188 = HEAP32[$187>>2]|0; + HEAP32[$vararg_buffer38>>2] = $181; + $vararg_ptr36 = (($vararg_buffer38) + 4|0); + HEAP32[$vararg_ptr36>>2] = $184; + $vararg_ptr37 = (($vararg_buffer38) + 8|0); + HEAP32[$vararg_ptr37>>2] = $188; + $189 = (_sqlite3MAppendf($179,$180,30352,$vararg_buffer38)|0); + HEAP32[$zMsg>>2] = $189; + } + } + } while(0); + $190 = HEAP32[$db>>2]|0; + $191 = HEAP32[$zMsg>>2]|0; + $192 = HEAP32[$zMsg>>2]|0; + HEAP32[$vararg_buffer38>>2] = $192; + $193 = (_sqlite3MAppendf($190,$191,1768,$vararg_buffer38)|0); + HEAP32[$zMsg>>2] = $193; + $194 = HEAP32[$v>>2]|0; + $195 = HEAP32[$iId>>2]|0; + $196 = HEAP32[$3>>2]|0; + $197 = HEAP32[$4>>2]|0; + $198 = HEAP32[$zMsg>>2]|0; + (_sqlite3VdbeAddOp4($194,157,$195,$196,$197,$198,-1)|0); + STACKTOP = sp;return; +} +function _codeOneLoopStart($pWInfo,$iLevel,$0,$1) { + $pWInfo = $pWInfo|0; + $iLevel = $iLevel|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0, $1015 = 0, $1016 = 0; + var $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0, $1033 = 0, $1034 = 0; + var $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0, $1051 = 0, $1052 = 0; + var $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0, $107 = 0, $1070 = 0; + var $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0, $1088 = 0, $1089 = 0; + var $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0, $1093 = 0, $1094 = 0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0, $1099 = 0, $11 = 0, $110 = 0, $1100 = 0, $1101 = 0, $1102 = 0, $1103 = 0, $1104 = 0, $1105 = 0, $1106 = 0; + var $1107 = 0, $1108 = 0, $1109 = 0, $111 = 0, $1110 = 0, $1111 = 0, $1112 = 0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0, $1123 = 0, $1124 = 0; + var $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0, $1141 = 0, $1142 = 0; + var $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0, $116 = 0, $1160 = 0; + var $1161 = 0, $1162 = 0, $1163 = 0, $1164 = 0, $1165 = 0, $1166 = 0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0, $1178 = 0, $1179 = 0; + var $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0, $1196 = 0, $1197 = 0; + var $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0, $1213 = 0, $1214 = 0; + var $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0, $1231 = 0, $1232 = 0; + var $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0, $125 = 0, $1250 = 0; + var $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0, $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0, $1268 = 0, $1269 = 0; + var $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0, $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0, $1286 = 0, $1287 = 0; + var $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0, $1292 = 0, $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, $1299 = 0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0, $1303 = 0, $1304 = 0; + var $1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0, $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0, $1321 = 0, $1322 = 0; + var $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0, $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 0, $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0, $134 = 0, $1340 = 0; + var $1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 0, $1346 = 0, $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, $1352 = 0, $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0, $1358 = 0, $1359 = 0; + var $136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 0, $1364 = 0, $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, $1370 = 0, $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0, $1376 = 0, $1377 = 0; + var $1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 0, $1382 = 0, $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, $1389 = 0, $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0, $1394 = 0, $1395 = 0; + var $1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 0, $140 = 0, $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, $1406 = 0, $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0, $1411 = 0, $1412 = 0; + var $1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 0, $1418 = 0, $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, $1424 = 0, $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0, $143 = 0, $1430 = 0; + var $1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 0, $1436 = 0, $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, $1442 = 0, $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0, $1448 = 0, $1449 = 0; + var $145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 0, $1454 = 0, $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, $1460 = 0, $1461 = 0, $1462 = 0, $1463 = 0, $1464 = 0, $1465 = 0, $1466 = 0, $1467 = 0; + var $1468 = 0, $1469 = 0, $147 = 0, $1470 = 0, $1471 = 0, $1472 = 0, $1473 = 0, $1474 = 0, $1475 = 0, $1476 = 0, $1477 = 0, $1478 = 0, $1479 = 0, $148 = 0, $1480 = 0, $1481 = 0, $1482 = 0, $1483 = 0, $1484 = 0, $1485 = 0; + var $1486 = 0, $1487 = 0, $1488 = 0, $1489 = 0, $149 = 0, $1490 = 0, $1491 = 0, $1492 = 0, $1493 = 0, $1494 = 0, $1495 = 0, $1496 = 0, $1497 = 0, $1498 = 0, $1499 = 0, $15 = 0, $150 = 0, $1500 = 0, $1501 = 0, $1502 = 0; + var $1503 = 0, $1504 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0; + var $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0; + var $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0; + var $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0; + var $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0; + var $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0; + var $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0; + var $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0; + var $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0; + var $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0; + var $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0; + var $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0; + var $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0; + var $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0; + var $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0; + var $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0; + var $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0; + var $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0; + var $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0; + var $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0; + var $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0; + var $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0; + var $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0; + var $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0; + var $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0; + var $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0; + var $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0; + var $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0; + var $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0; + var $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0; + var $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0; + var $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0; + var $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0; + var $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0; + var $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0; + var $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0; + var $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0; + var $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0; + var $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0; + var $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0; + var $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0; + var $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0; + var $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0; + var $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0; + var $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0; + var $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0; + var $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0; + var $997 = 0, $998 = 0, $999 = 0, $addrBrk = 0, $addrCont = 0, $addrNotFound = 0, $addrNxt = 0, $bRev = 0, $bSeekPastNull = 0, $bStopAtNull = 0, $cEndAff = 0, $db = 0, $endEq = 0, $iCol = 0, $iCovCur = 0, $iCur = 0, $iIdxCur = 0, $iLoopBody = 0, $iPk = 0, $iReg = 0; + var $iReleaseReg = 0, $iRetInit = 0, $iRowidReg = 0, $iSet = 0, $iTarget = 0, $iTerm = 0, $ii = 0, $j = 0, $j1 = 0, $k = 0, $memEndValue = 0, $nConstraint = 0, $nConstraint2 = 0, $nEq = 0, $nExtraReg = 0, $nNotReady = 0, $nPk = 0, $omitTable = 0, $op = 0, $or$cond = 0; + var $origSrc = 0, $pAlt = 0, $pAndExpr = 0, $pCov = 0, $pE = 0, $pE7 = 0, $pEAlt = 0, $pEnd = 0, $pExpr = 0, $pIdx = 0, $pLevel = 0, $pLoop = 0, $pOrExpr = 0, $pOrTab = 0, $pOrTerm = 0, $pOrWc = 0, $pParse = 0, $pPk = 0, $pPk5 = 0, $pPk6 = 0; + var $pRangeEnd = 0, $pRangeStart = 0, $pRight = 0, $pRight4 = 0, $pStart = 0, $pSubLoop = 0, $pSubWInfo = 0, $pTab = 0, $pTabItem = 0, $pTerm = 0, $pWC = 0, $pX = 0, $pX1 = 0, $r = 0, $r1 = 0, $rTemp = 0, $regBase = 0, $regReturn = 0, $regRowid = 0, $regRowset = 0; + var $regYield = 0, $start = 0, $startEq = 0, $start_constraints = 0, $t = 0, $t3 = 0, $testOp = 0, $untestedTerms = 0, $v = 0, $zStartAff = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 368|0; + $2 = sp + 8|0; + $3 = sp + 276|0; + $4 = sp + 272|0; + $5 = sp; + $j = sp + 268|0; + $k = sp + 264|0; + $iCur = sp + 260|0; + $addrNxt = sp + 256|0; + $omitTable = sp + 252|0; + $bRev = sp + 248|0; + $pLevel = sp + 244|0; + $pLoop = sp + 240|0; + $pWC = sp + 216|0; + $pTerm = sp + 204|0; + $pParse = sp + 208|0; + $db = sp + 212|0; + $v = sp + 220|0; + $pTabItem = sp + 224|0; + $addrBrk = sp + 228|0; + $addrCont = sp + 232|0; + $iRowidReg = sp + 236|0; + $iReleaseReg = sp + 284|0; + $regYield = sp + 288|0; + $iReg = sp + 292|0; + $addrNotFound = sp + 296|0; + $nConstraint = sp + 300|0; + $iTarget = sp + 304|0; + $testOp = sp + 308|0; + $start = sp + 312|0; + $memEndValue = sp + 316|0; + $pStart = sp + 320|0; + $pEnd = sp + 324|0; + $pX = sp + 328|0; + $r1 = sp + 332|0; + $rTemp = sp + 336|0; + $pX1 = sp + 340|0; + $nEq = sp + 348|0; + $regBase = sp + 344|0; + $pRangeStart = sp + 200|0; + $pRangeEnd = sp + 196|0; + $startEq = sp + 192|0; + $endEq = sp + 188|0; + $start_constraints = sp + 92|0; + $nConstraint2 = sp + 96|0; + $pIdx = sp + 48|0; + $iIdxCur = sp + 280|0; + $nExtraReg = sp + 84|0; + $op = sp + 80|0; + $zStartAff = sp + 76|0; + $cEndAff = sp + 352|0; + $bSeekPastNull = sp + 351|0; + $bStopAtNull = sp + 350|0; + $t = sp + 72|0; + $t3 = sp + 353|0; + $pRight = sp + 68|0; + $pRight4 = sp + 64|0; + $pPk = sp + 60|0; + $pOrWc = sp + 100|0; + $pOrTab = sp + 32|0; + $pCov = sp + 28|0; + $iCovCur = sp + 16|0; + $regReturn = sp + 20|0; + $regRowset = sp + 24|0; + $regRowid = sp + 52|0; + $iLoopBody = sp + 36|0; + $iRetInit = sp + 40|0; + $untestedTerms = sp + 44|0; + $ii = sp + 56|0; + $pAndExpr = sp + 184|0; + $pTab = sp + 104|0; + $nNotReady = sp + 108|0; + $origSrc = sp + 112|0; + $pPk5 = sp + 116|0; + $iTerm = sp + 120|0; + $pExpr = sp + 124|0; + $pOrTerm = sp + 128|0; + $pSubWInfo = sp + 132|0; + $pOrExpr = sp + 136|0; + $j1 = sp + 140|0; + $pSubLoop = sp + 144|0; + $r = sp + 148|0; + $iSet = sp + 152|0; + $pPk6 = sp + 156|0; + $nPk = sp + 160|0; + $iPk = sp + 164|0; + $iCol = sp + 168|0; + $pE = sp + 172|0; + $pE7 = sp + 176|0; + $pEAlt = sp + 180|0; + $pAlt = sp + 88|0; + HEAP32[$3>>2] = $pWInfo; + HEAP32[$4>>2] = $iLevel; + $6 = $5; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + HEAP32[$iRowidReg>>2] = 0; + HEAP32[$iReleaseReg>>2] = 0; + $10 = HEAP32[$3>>2]|0; + $11 = HEAP32[$10>>2]|0; + HEAP32[$pParse>>2] = $11; + $12 = HEAP32[$pParse>>2]|0; + $13 = (($12) + 8|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$v>>2] = $14; + $15 = HEAP32[$3>>2]|0; + $16 = (($15) + 328|0); + HEAP32[$pWC>>2] = $16; + $17 = HEAP32[$pParse>>2]|0; + $18 = HEAP32[$17>>2]|0; + HEAP32[$db>>2] = $18; + $19 = HEAP32[$4>>2]|0; + $20 = HEAP32[$3>>2]|0; + $21 = (($20) + 736|0); + $22 = (($21) + (($19*72)|0)|0); + HEAP32[$pLevel>>2] = $22; + $23 = HEAP32[$pLevel>>2]|0; + $24 = (($23) + 56|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$pLoop>>2] = $25; + $26 = HEAP32[$pLevel>>2]|0; + $27 = (($26) + 36|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = HEAP32[$3>>2]|0; + $31 = (($30) + 4|0); + $32 = HEAP32[$31>>2]|0; + $33 = (($32) + 8|0); + $34 = (($33) + (($29*72)|0)|0); + HEAP32[$pTabItem>>2] = $34; + $35 = HEAP32[$pTabItem>>2]|0; + $36 = (($35) + 40|0); + $37 = HEAP32[$36>>2]|0; + HEAP32[$iCur>>2] = $37; + $38 = $5; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = (($38) + 4)|0; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$3>>2]|0; + $45 = (($44) + 68|0); + $46 = HEAP32[$iCur>>2]|0; + $47 = (_getMask($45,$46)|0); + $48 = tempRet0; + $49 = $47 ^ -1; + $50 = $48 ^ -1; + $51 = $40 & $49; + $52 = $43 & $50; + $53 = HEAP32[$pLevel>>2]|0; + $54 = (($53) + 64|0); + $55 = $54; + $56 = $55; + HEAP32[$56>>2] = $51; + $57 = (($55) + 4)|0; + $58 = $57; + HEAP32[$58>>2] = $52; + $59 = HEAP32[$3>>2]|0; + $60 = (($59) + 24|0); + $61 = $60; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = (($61) + 4)|0; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = HEAP32[$4>>2]|0; + $68 = (_bitshift64Lshr(($63|0),($66|0),($67|0))|0); + $69 = tempRet0; + $70 = $68 & 1; + HEAP32[$bRev>>2] = $70; + $71 = HEAP32[$pLoop>>2]|0; + $72 = (($71) + 36|0); + $73 = HEAP32[$72>>2]|0; + $74 = $73 & 64; + $75 = ($74|0)!=(0); + if ($75) { + $76 = HEAP32[$3>>2]|0; + $77 = (($76) + 34|0); + $78 = HEAP16[$77>>1]|0; + $79 = $78&65535; + $80 = $79 & 32; + $81 = ($80|0)==(0); + $83 = $81; + } else { + $83 = 0; + } + $82 = $83&1; + HEAP32[$omitTable>>2] = $82; + $84 = HEAP32[$v>>2]|0; + $85 = (_sqlite3VdbeMakeLabel($84)|0); + $86 = HEAP32[$pLevel>>2]|0; + $87 = (($86) + 16|0); + HEAP32[$87>>2] = $85; + $88 = HEAP32[$pLevel>>2]|0; + $89 = (($88) + 12|0); + HEAP32[$89>>2] = $85; + HEAP32[$addrBrk>>2] = $85; + $90 = HEAP32[$v>>2]|0; + $91 = (_sqlite3VdbeMakeLabel($90)|0); + $92 = HEAP32[$pLevel>>2]|0; + $93 = (($92) + 24|0); + HEAP32[$93>>2] = $91; + HEAP32[$addrCont>>2] = $91; + $94 = HEAP32[$pLevel>>2]|0; + $95 = (($94) + 36|0); + $96 = HEAP8[$95>>0]|0; + $97 = $96&255; + $98 = ($97|0)>(0); + if ($98) { + $99 = HEAP32[$pTabItem>>2]|0; + $100 = (($99) + 36|0); + $101 = HEAP8[$100>>0]|0; + $102 = $101&255; + $103 = $102 & 8; + $104 = ($103|0)!=(0); + if ($104) { + $105 = HEAP32[$pParse>>2]|0; + $106 = (($105) + 72|0); + $107 = HEAP32[$106>>2]|0; + $108 = (($107) + 1)|0; + HEAP32[$106>>2] = $108; + $109 = HEAP32[$pLevel>>2]|0; + HEAP32[$109>>2] = $108; + $110 = HEAP32[$v>>2]|0; + $111 = HEAP32[$pLevel>>2]|0; + $112 = HEAP32[$111>>2]|0; + (_sqlite3VdbeAddOp2($110,25,0,$112)|0); + } + } + $113 = HEAP32[$pTabItem>>2]|0; + $114 = (($113) + 37|0); + $115 = HEAP8[$114>>0]|0; + $116 = ($115&255) >>> 2; + $117 = $116 & 1; + $118 = $117&255; + $119 = ($118|0)!=(0); + do { + if ($119) { + $120 = HEAP32[$pTabItem>>2]|0; + $121 = (($120) + 28|0); + $122 = HEAP32[$121>>2]|0; + HEAP32[$regYield>>2] = $122; + $123 = HEAP32[$v>>2]|0; + $124 = HEAP32[$regYield>>2]|0; + $125 = HEAP32[$pTabItem>>2]|0; + $126 = (($125) + 24|0); + $127 = HEAP32[$126>>2]|0; + (_sqlite3VdbeAddOp3($123,20,$124,0,$127)|0); + $128 = HEAP32[$v>>2]|0; + $129 = HEAP32[$regYield>>2]|0; + $130 = HEAP32[$addrBrk>>2]|0; + $131 = (_sqlite3VdbeAddOp2($128,22,$129,$130)|0); + $132 = HEAP32[$pLevel>>2]|0; + $133 = (($132) + 44|0); + HEAP32[$133>>2] = $131; + $134 = HEAP32[$pLevel>>2]|0; + $135 = (($134) + 37|0); + HEAP8[$135>>0] = 16; + } else { + $136 = HEAP32[$pLoop>>2]|0; + $137 = (($136) + 36|0); + $138 = HEAP32[$137>>2]|0; + $139 = $138 & 1024; + $140 = ($139|0)!=(0); + $141 = HEAP32[$pLoop>>2]|0; + if ($140) { + $142 = (($141) + 40|0); + $143 = HEAP16[$142>>1]|0; + $144 = $143&65535; + HEAP32[$nConstraint>>2] = $144; + $145 = HEAP32[$pParse>>2]|0; + _sqlite3ExprCachePush($145); + $146 = HEAP32[$pParse>>2]|0; + $147 = HEAP32[$nConstraint>>2]|0; + $148 = (($147) + 2)|0; + $149 = (_sqlite3GetTempRange($146,$148)|0); + HEAP32[$iReg>>2] = $149; + $150 = HEAP32[$pLevel>>2]|0; + $151 = (($150) + 12|0); + $152 = HEAP32[$151>>2]|0; + HEAP32[$addrNotFound>>2] = $152; + HEAP32[$j>>2] = 0; + while(1) { + $153 = HEAP32[$j>>2]|0; + $154 = HEAP32[$nConstraint>>2]|0; + $155 = ($153|0)<($154|0); + if (!($155)) { + break; + } + $156 = HEAP32[$iReg>>2]|0; + $157 = HEAP32[$j>>2]|0; + $158 = (($156) + ($157))|0; + $159 = (($158) + 2)|0; + HEAP32[$iTarget>>2] = $159; + $160 = HEAP32[$j>>2]|0; + $161 = HEAP32[$pLoop>>2]|0; + $162 = (($161) + 44|0); + $163 = HEAP32[$162>>2]|0; + $164 = (($163) + ($160<<2)|0); + $165 = HEAP32[$164>>2]|0; + HEAP32[$pTerm>>2] = $165; + $166 = HEAP32[$pTerm>>2]|0; + $167 = ($166|0)==(0|0); + do { + if (!($167)) { + $168 = HEAP32[$pTerm>>2]|0; + $169 = (($168) + 18|0); + $170 = HEAP16[$169>>1]|0; + $171 = $170&65535; + $172 = $171 & 1; + $173 = ($172|0)!=(0); + $174 = HEAP32[$pParse>>2]|0; + $175 = HEAP32[$pTerm>>2]|0; + if ($173) { + $176 = HEAP32[$pLevel>>2]|0; + $177 = HEAP32[$j>>2]|0; + $178 = HEAP32[$bRev>>2]|0; + $179 = HEAP32[$iTarget>>2]|0; + (_codeEqualityTerm($174,$175,$176,$177,$178,$179)|0); + $180 = HEAP32[$pLevel>>2]|0; + $181 = (($180) + 16|0); + $182 = HEAP32[$181>>2]|0; + HEAP32[$addrNotFound>>2] = $182; + break; + } else { + $183 = HEAP32[$175>>2]|0; + $184 = (($183) + 16|0); + $185 = HEAP32[$184>>2]|0; + $186 = HEAP32[$iTarget>>2]|0; + _sqlite3ExprCode($174,$185,$186); + break; + } + } + } while(0); + $187 = HEAP32[$j>>2]|0; + $188 = (($187) + 1)|0; + HEAP32[$j>>2] = $188; + } + $189 = HEAP32[$v>>2]|0; + $190 = HEAP32[$pLoop>>2]|0; + $191 = (($190) + 24|0); + $192 = HEAP32[$191>>2]|0; + $193 = HEAP32[$iReg>>2]|0; + (_sqlite3VdbeAddOp2($189,25,$192,$193)|0); + $194 = HEAP32[$v>>2]|0; + $195 = HEAP32[$nConstraint>>2]|0; + $196 = HEAP32[$iReg>>2]|0; + $197 = (($196) + 1)|0; + (_sqlite3VdbeAddOp2($194,25,$195,$197)|0); + $198 = HEAP32[$v>>2]|0; + $199 = HEAP32[$iCur>>2]|0; + $200 = HEAP32[$addrNotFound>>2]|0; + $201 = HEAP32[$iReg>>2]|0; + $202 = HEAP32[$pLoop>>2]|0; + $203 = (($202) + 24|0); + $204 = (($203) + 8|0); + $205 = HEAP32[$204>>2]|0; + $206 = HEAP32[$pLoop>>2]|0; + $207 = (($206) + 24|0); + $208 = (($207) + 4|0); + $209 = HEAP8[$208>>0]|0; + $210 = $209&255; + $211 = ($210|0)!=(0); + $212 = $211 ? -11 : -2; + (_sqlite3VdbeAddOp4($198,14,$199,$200,$201,$205,$212)|0); + $213 = HEAP32[$pLoop>>2]|0; + $214 = (($213) + 24|0); + $215 = (($214) + 4|0); + HEAP8[$215>>0] = 0; + HEAP32[$j>>2] = 0; + while(1) { + $216 = HEAP32[$j>>2]|0; + $217 = HEAP32[$nConstraint>>2]|0; + $218 = ($216|0)<($217|0); + $219 = HEAP32[$j>>2]|0; + $220 = ($219|0)<(16); + $or$cond = $218 & $220; + if (!($or$cond)) { + break; + } + $221 = HEAP32[$pLoop>>2]|0; + $222 = (($221) + 24|0); + $223 = (($222) + 6|0); + $224 = HEAP16[$223>>1]|0; + $225 = $224&65535; + $226 = HEAP32[$j>>2]|0; + $227 = $225 >> $226; + $228 = $227 & 1; + $229 = ($228|0)!=(0); + if ($229) { + $230 = HEAP32[$pLevel>>2]|0; + $231 = HEAP32[$j>>2]|0; + $232 = HEAP32[$pLoop>>2]|0; + $233 = (($232) + 44|0); + $234 = HEAP32[$233>>2]|0; + $235 = (($234) + ($231<<2)|0); + $236 = HEAP32[$235>>2]|0; + _disableTerm($230,$236); + } + $237 = HEAP32[$j>>2]|0; + $238 = (($237) + 1)|0; + HEAP32[$j>>2] = $238; + } + $239 = HEAP32[$pLevel>>2]|0; + $240 = (($239) + 37|0); + HEAP8[$240>>0] = -105; + $241 = HEAP32[$iCur>>2]|0; + $242 = HEAP32[$pLevel>>2]|0; + $243 = (($242) + 40|0); + HEAP32[$243>>2] = $241; + $244 = HEAP32[$v>>2]|0; + $245 = (_sqlite3VdbeCurrentAddr($244)|0); + $246 = HEAP32[$pLevel>>2]|0; + $247 = (($246) + 44|0); + HEAP32[$247>>2] = $245; + $248 = HEAP32[$pParse>>2]|0; + $249 = HEAP32[$iReg>>2]|0; + $250 = HEAP32[$nConstraint>>2]|0; + $251 = (($250) + 2)|0; + _sqlite3ReleaseTempRange($248,$249,$251); + $252 = HEAP32[$pParse>>2]|0; + _sqlite3ExprCachePop($252); + break; + } + $253 = (($141) + 36|0); + $254 = HEAP32[$253>>2]|0; + $255 = $254 & 256; + $256 = ($255|0)!=(0); + if ($256) { + $257 = HEAP32[$pLoop>>2]|0; + $258 = (($257) + 36|0); + $259 = HEAP32[$258>>2]|0; + $260 = $259 & 5; + $261 = ($260|0)!=(0); + if ($261) { + $262 = HEAP32[$pLoop>>2]|0; + $263 = (($262) + 44|0); + $264 = HEAP32[$263>>2]|0; + $265 = HEAP32[$264>>2]|0; + HEAP32[$pTerm>>2] = $265; + $266 = HEAP32[$pParse>>2]|0; + $267 = (($266) + 72|0); + $268 = HEAP32[$267>>2]|0; + $269 = (($268) + 1)|0; + HEAP32[$267>>2] = $269; + HEAP32[$iReleaseReg>>2] = $269; + $270 = HEAP32[$pParse>>2]|0; + $271 = HEAP32[$pTerm>>2]|0; + $272 = HEAP32[$pLevel>>2]|0; + $273 = HEAP32[$bRev>>2]|0; + $274 = HEAP32[$iReleaseReg>>2]|0; + $275 = (_codeEqualityTerm($270,$271,$272,0,$273,$274)|0); + HEAP32[$iRowidReg>>2] = $275; + $276 = HEAP32[$iRowidReg>>2]|0; + $277 = HEAP32[$iReleaseReg>>2]|0; + $278 = ($276|0)!=($277|0); + if ($278) { + $279 = HEAP32[$pParse>>2]|0; + $280 = HEAP32[$iReleaseReg>>2]|0; + _sqlite3ReleaseTempReg($279,$280); + } + $281 = HEAP32[$pLevel>>2]|0; + $282 = (($281) + 16|0); + $283 = HEAP32[$282>>2]|0; + HEAP32[$addrNxt>>2] = $283; + $284 = HEAP32[$v>>2]|0; + $285 = HEAP32[$iRowidReg>>2]|0; + $286 = HEAP32[$addrNxt>>2]|0; + (_sqlite3VdbeAddOp2($284,38,$285,$286)|0); + $287 = HEAP32[$v>>2]|0; + $288 = HEAP32[$iCur>>2]|0; + $289 = HEAP32[$addrNxt>>2]|0; + $290 = HEAP32[$iRowidReg>>2]|0; + (_sqlite3VdbeAddOp3($287,67,$288,$289,$290)|0); + $291 = HEAP32[$pParse>>2]|0; + $292 = HEAP32[$iRowidReg>>2]|0; + _sqlite3ExprCacheAffinityChange($291,$292,1); + $293 = HEAP32[$pParse>>2]|0; + $294 = HEAP32[$iCur>>2]|0; + $295 = HEAP32[$iRowidReg>>2]|0; + _sqlite3ExprCacheStore($293,$294,-1,$295); + $296 = HEAP32[$pLevel>>2]|0; + $297 = (($296) + 37|0); + HEAP8[$297>>0] = -100; + break; + } + } + $298 = HEAP32[$pLoop>>2]|0; + $299 = (($298) + 36|0); + $300 = HEAP32[$299>>2]|0; + $301 = $300 & 256; + $302 = ($301|0)!=(0); + if ($302) { + $303 = HEAP32[$pLoop>>2]|0; + $304 = (($303) + 36|0); + $305 = HEAP32[$304>>2]|0; + $306 = $305 & 2; + $307 = ($306|0)!=(0); + if ($307) { + HEAP32[$testOp>>2] = 156; + HEAP32[$memEndValue>>2] = 0; + HEAP32[$j>>2] = 0; + HEAP32[$pEnd>>2] = 0; + HEAP32[$pStart>>2] = 0; + $308 = HEAP32[$pLoop>>2]|0; + $309 = (($308) + 36|0); + $310 = HEAP32[$309>>2]|0; + $311 = $310 & 32; + $312 = ($311|0)!=(0); + if ($312) { + $313 = HEAP32[$j>>2]|0; + $314 = (($313) + 1)|0; + HEAP32[$j>>2] = $314; + $315 = HEAP32[$pLoop>>2]|0; + $316 = (($315) + 44|0); + $317 = HEAP32[$316>>2]|0; + $318 = (($317) + ($313<<2)|0); + $319 = HEAP32[$318>>2]|0; + HEAP32[$pStart>>2] = $319; + } + $320 = HEAP32[$pLoop>>2]|0; + $321 = (($320) + 36|0); + $322 = HEAP32[$321>>2]|0; + $323 = $322 & 16; + $324 = ($323|0)!=(0); + if ($324) { + $325 = HEAP32[$j>>2]|0; + $326 = (($325) + 1)|0; + HEAP32[$j>>2] = $326; + $327 = HEAP32[$pLoop>>2]|0; + $328 = (($327) + 44|0); + $329 = HEAP32[$328>>2]|0; + $330 = (($329) + ($325<<2)|0); + $331 = HEAP32[$330>>2]|0; + HEAP32[$pEnd>>2] = $331; + } + $332 = HEAP32[$bRev>>2]|0; + $333 = ($332|0)!=(0); + if ($333) { + $334 = HEAP32[$pStart>>2]|0; + HEAP32[$pTerm>>2] = $334; + $335 = HEAP32[$pEnd>>2]|0; + HEAP32[$pStart>>2] = $335; + $336 = HEAP32[$pTerm>>2]|0; + HEAP32[$pEnd>>2] = $336; + } + $337 = HEAP32[$pStart>>2]|0; + $338 = ($337|0)!=(0|0); + if ($338) { + $339 = HEAP32[$pStart>>2]|0; + $340 = HEAP32[$339>>2]|0; + HEAP32[$pX>>2] = $340; + $341 = HEAP32[$pParse>>2]|0; + $342 = HEAP32[$pX>>2]|0; + $343 = (($342) + 16|0); + $344 = HEAP32[$343>>2]|0; + $345 = (_sqlite3ExprCodeTemp($341,$344,$rTemp)|0); + HEAP32[$r1>>2] = $345; + $346 = HEAP32[$v>>2]|0; + $347 = HEAP32[$pX>>2]|0; + $348 = HEAP8[$347>>0]|0; + $349 = $348&255; + $350 = (($349) - 80)|0; + $351 = (29992 + ($350)|0); + $352 = HEAP8[$351>>0]|0; + $353 = $352&255; + $354 = HEAP32[$iCur>>2]|0; + $355 = HEAP32[$addrBrk>>2]|0; + $356 = HEAP32[$r1>>2]|0; + (_sqlite3VdbeAddOp3($346,$353,$354,$355,$356)|0); + $357 = HEAP32[$pParse>>2]|0; + $358 = HEAP32[$r1>>2]|0; + _sqlite3ExprCacheAffinityChange($357,$358,1); + $359 = HEAP32[$pParse>>2]|0; + $360 = HEAP32[$rTemp>>2]|0; + _sqlite3ReleaseTempReg($359,$360); + $361 = HEAP32[$pLevel>>2]|0; + $362 = HEAP32[$pStart>>2]|0; + _disableTerm($361,$362); + } else { + $363 = HEAP32[$v>>2]|0; + $364 = HEAP32[$bRev>>2]|0; + $365 = ($364|0)!=(0); + $366 = $365 ? 102 : 105; + $367 = HEAP32[$iCur>>2]|0; + $368 = HEAP32[$addrBrk>>2]|0; + (_sqlite3VdbeAddOp2($363,$366,$367,$368)|0); + } + $369 = HEAP32[$pEnd>>2]|0; + $370 = ($369|0)!=(0|0); + if ($370) { + $371 = HEAP32[$pEnd>>2]|0; + $372 = HEAP32[$371>>2]|0; + HEAP32[$pX1>>2] = $372; + $373 = HEAP32[$pParse>>2]|0; + $374 = (($373) + 72|0); + $375 = HEAP32[$374>>2]|0; + $376 = (($375) + 1)|0; + HEAP32[$374>>2] = $376; + HEAP32[$memEndValue>>2] = $376; + $377 = HEAP32[$pParse>>2]|0; + $378 = HEAP32[$pX1>>2]|0; + $379 = (($378) + 16|0); + $380 = HEAP32[$379>>2]|0; + $381 = HEAP32[$memEndValue>>2]|0; + _sqlite3ExprCode($377,$380,$381); + $382 = HEAP32[$pX1>>2]|0; + $383 = HEAP8[$382>>0]|0; + $384 = $383&255; + $385 = ($384|0)==(82); + if ($385) { + label = 41; + } else { + $386 = HEAP32[$pX1>>2]|0; + $387 = HEAP8[$386>>0]|0; + $388 = $387&255; + $389 = ($388|0)==(80); + if ($389) { + label = 41; + } else { + $393 = HEAP32[$bRev>>2]|0; + $394 = ($393|0)!=(0); + $395 = $394 ? 82 : 80; + HEAP32[$testOp>>2] = $395; + } + } + if ((label|0) == 41) { + $390 = HEAP32[$bRev>>2]|0; + $391 = ($390|0)!=(0); + $392 = $391 ? 81 : 83; + HEAP32[$testOp>>2] = $392; + } + $396 = HEAP32[$pLevel>>2]|0; + $397 = HEAP32[$pEnd>>2]|0; + _disableTerm($396,$397); + } + $398 = HEAP32[$v>>2]|0; + $399 = (_sqlite3VdbeCurrentAddr($398)|0); + HEAP32[$start>>2] = $399; + $400 = HEAP32[$bRev>>2]|0; + $401 = ($400|0)!=(0); + $402 = $401 ? 8 : 9; + $403 = $402&255; + $404 = HEAP32[$pLevel>>2]|0; + $405 = (($404) + 37|0); + HEAP8[$405>>0] = $403; + $406 = HEAP32[$iCur>>2]|0; + $407 = HEAP32[$pLevel>>2]|0; + $408 = (($407) + 40|0); + HEAP32[$408>>2] = $406; + $409 = HEAP32[$start>>2]|0; + $410 = HEAP32[$pLevel>>2]|0; + $411 = (($410) + 44|0); + HEAP32[$411>>2] = $409; + $412 = HEAP32[$testOp>>2]|0; + $413 = ($412|0)!=(156); + if (!($413)) { + break; + } + $414 = HEAP32[$pParse>>2]|0; + $415 = (($414) + 72|0); + $416 = HEAP32[$415>>2]|0; + $417 = (($416) + 1)|0; + HEAP32[$415>>2] = $417; + HEAP32[$iRowidReg>>2] = $417; + $418 = HEAP32[$v>>2]|0; + $419 = HEAP32[$iCur>>2]|0; + $420 = HEAP32[$iRowidReg>>2]|0; + (_sqlite3VdbeAddOp2($418,100,$419,$420)|0); + $421 = HEAP32[$pParse>>2]|0; + $422 = HEAP32[$iCur>>2]|0; + $423 = HEAP32[$iRowidReg>>2]|0; + _sqlite3ExprCacheStore($421,$422,-1,$423); + $424 = HEAP32[$v>>2]|0; + $425 = HEAP32[$testOp>>2]|0; + $426 = HEAP32[$memEndValue>>2]|0; + $427 = HEAP32[$addrBrk>>2]|0; + $428 = HEAP32[$iRowidReg>>2]|0; + (_sqlite3VdbeAddOp3($424,$425,$426,$427,$428)|0); + $429 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($429,107); + break; + } + } + $430 = HEAP32[$pLoop>>2]|0; + $431 = (($430) + 36|0); + $432 = HEAP32[$431>>2]|0; + $433 = $432 & 512; + $434 = ($433|0)!=(0); + $435 = HEAP32[$pLoop>>2]|0; + if ($434) { + $436 = (($435) + 24|0); + $437 = HEAP16[$436>>1]|0; + HEAP16[$nEq>>1] = $437; + HEAP32[$pRangeStart>>2] = 0; + HEAP32[$pRangeEnd>>2] = 0; + HEAP32[$nExtraReg>>2] = 0; + HEAP8[$cEndAff>>0] = 0; + HEAP8[$bSeekPastNull>>0] = 0; + HEAP8[$bStopAtNull>>0] = 0; + $438 = HEAP32[$pLoop>>2]|0; + $439 = (($438) + 24|0); + $440 = (($439) + 4|0); + $441 = HEAP32[$440>>2]|0; + HEAP32[$pIdx>>2] = $441; + $442 = HEAP32[$pLevel>>2]|0; + $443 = (($442) + 8|0); + $444 = HEAP32[$443>>2]|0; + HEAP32[$iIdxCur>>2] = $444; + $445 = HEAP32[$3>>2]|0; + $446 = (($445) + 34|0); + $447 = HEAP16[$446>>1]|0; + $448 = $447&65535; + $449 = $448 & 1; + $450 = ($449|0)!=(0); + if ($450) { + $451 = HEAP32[$3>>2]|0; + $452 = (($451) + 36|0); + $453 = HEAP8[$452>>0]|0; + $454 = $453 << 24 >> 24; + $455 = ($454|0)>(0); + if ($455) { + $456 = HEAP32[$pIdx>>2]|0; + $457 = (($456) + 50|0); + $458 = HEAP16[$457>>1]|0; + $459 = $458&65535; + $460 = HEAP16[$nEq>>1]|0; + $461 = $460&65535; + $462 = ($459|0)>($461|0); + if ($462) { + HEAP8[$bSeekPastNull>>0] = 1; + HEAP32[$nExtraReg>>2] = 1; + } + } + } + $463 = HEAP16[$nEq>>1]|0; + $464 = $463&65535; + HEAP32[$j>>2] = $464; + $465 = HEAP32[$pLoop>>2]|0; + $466 = (($465) + 36|0); + $467 = HEAP32[$466>>2]|0; + $468 = $467 & 32; + $469 = ($468|0)!=(0); + if ($469) { + $470 = HEAP32[$j>>2]|0; + $471 = (($470) + 1)|0; + HEAP32[$j>>2] = $471; + $472 = HEAP32[$pLoop>>2]|0; + $473 = (($472) + 44|0); + $474 = HEAP32[$473>>2]|0; + $475 = (($474) + ($470<<2)|0); + $476 = HEAP32[$475>>2]|0; + HEAP32[$pRangeStart>>2] = $476; + HEAP32[$nExtraReg>>2] = 1; + } + $477 = HEAP32[$pLoop>>2]|0; + $478 = (($477) + 36|0); + $479 = HEAP32[$478>>2]|0; + $480 = $479 & 16; + $481 = ($480|0)!=(0); + if ($481) { + $482 = HEAP32[$j>>2]|0; + $483 = (($482) + 1)|0; + HEAP32[$j>>2] = $483; + $484 = HEAP32[$pLoop>>2]|0; + $485 = (($484) + 44|0); + $486 = HEAP32[$485>>2]|0; + $487 = (($486) + ($482<<2)|0); + $488 = HEAP32[$487>>2]|0; + HEAP32[$pRangeEnd>>2] = $488; + HEAP32[$nExtraReg>>2] = 1; + $489 = HEAP32[$pRangeStart>>2]|0; + $490 = ($489|0)==(0|0); + if ($490) { + $491 = HEAP16[$nEq>>1]|0; + $492 = $491&65535; + $493 = HEAP32[$pIdx>>2]|0; + $494 = (($493) + 4|0); + $495 = HEAP32[$494>>2]|0; + $496 = (($495) + ($492<<1)|0); + $497 = HEAP16[$496>>1]|0; + $498 = $497 << 16 >> 16; + HEAP32[$j>>2] = $498; + $499 = ($498|0)>=(0); + if ($499) { + $500 = HEAP32[$j>>2]|0; + $501 = HEAP32[$pIdx>>2]|0; + $502 = (($501) + 12|0); + $503 = HEAP32[$502>>2]|0; + $504 = (($503) + 4|0); + $505 = HEAP32[$504>>2]|0; + $506 = (($505) + (($500*24)|0)|0); + $507 = (($506) + 20|0); + $508 = HEAP8[$507>>0]|0; + $509 = $508&255; + $510 = ($509|0)==(0); + if ($510) { + HEAP8[$bSeekPastNull>>0] = 1; + } + } + } + } + $511 = HEAP32[$pParse>>2]|0; + $512 = HEAP32[$pLevel>>2]|0; + $513 = HEAP32[$bRev>>2]|0; + $514 = HEAP32[$nExtraReg>>2]|0; + $515 = (_codeAllEqualityTerms($511,$512,$513,$514,$zStartAff)|0); + HEAP32[$regBase>>2] = $515; + $516 = HEAP32[$zStartAff>>2]|0; + $517 = ($516|0)!=(0|0); + if ($517) { + $518 = HEAP16[$nEq>>1]|0; + $519 = $518&65535; + $520 = HEAP32[$zStartAff>>2]|0; + $521 = (($520) + ($519)|0); + $522 = HEAP8[$521>>0]|0; + HEAP8[$cEndAff>>0] = $522; + } + $523 = HEAP32[$pLevel>>2]|0; + $524 = (($523) + 16|0); + $525 = HEAP32[$524>>2]|0; + HEAP32[$addrNxt>>2] = $525; + $526 = HEAP16[$nEq>>1]|0; + $527 = $526&65535; + $528 = HEAP32[$pIdx>>2]|0; + $529 = (($528) + 50|0); + $530 = HEAP16[$529>>1]|0; + $531 = $530&65535; + $532 = ($527|0)<($531|0); + if ($532) { + $533 = HEAP32[$bRev>>2]|0; + $534 = HEAP16[$nEq>>1]|0; + $535 = $534&65535; + $536 = HEAP32[$pIdx>>2]|0; + $537 = (($536) + 28|0); + $538 = HEAP32[$537>>2]|0; + $539 = (($538) + ($535)|0); + $540 = HEAP8[$539>>0]|0; + $541 = $540&255; + $542 = ($541|0)==(0); + $543 = $542&1; + $544 = ($533|0)==($543|0); + if ($544) { + label = 64; + } else { + label = 62; + } + } else { + label = 62; + } + if ((label|0) == 62) { + $545 = HEAP32[$bRev>>2]|0; + $546 = ($545|0)!=(0); + if ($546) { + $547 = HEAP32[$pIdx>>2]|0; + $548 = (($547) + 50|0); + $549 = HEAP16[$548>>1]|0; + $550 = $549&65535; + $551 = HEAP16[$nEq>>1]|0; + $552 = $551&65535; + $553 = ($550|0)==($552|0); + if ($553) { + label = 64; + } + } + } + if ((label|0) == 64) { + $554 = HEAP32[$pRangeEnd>>2]|0; + HEAP32[$t>>2] = $554; + $555 = HEAP32[$pRangeStart>>2]|0; + HEAP32[$pRangeEnd>>2] = $555; + $556 = HEAP32[$t>>2]|0; + HEAP32[$pRangeStart>>2] = $556; + $557 = HEAP8[$bSeekPastNull>>0]|0; + HEAP8[$t3>>0] = $557; + $558 = HEAP8[$bStopAtNull>>0]|0; + HEAP8[$bSeekPastNull>>0] = $558; + $559 = HEAP8[$t3>>0]|0; + HEAP8[$bStopAtNull>>0] = $559; + } + $560 = HEAP32[$pRangeStart>>2]|0; + $561 = ($560|0)!=(0|0); + if ($561) { + $562 = HEAP32[$pRangeStart>>2]|0; + $563 = (($562) + 18|0); + $564 = HEAP16[$563>>1]|0; + $565 = $564&65535; + $566 = $565 & 40; + $567 = ($566|0)!=(0); + $569 = $567; + } else { + $569 = 1; + } + $568 = $569&1; + HEAP32[$startEq>>2] = $568; + $570 = HEAP32[$pRangeEnd>>2]|0; + $571 = ($570|0)!=(0|0); + if ($571) { + $572 = HEAP32[$pRangeEnd>>2]|0; + $573 = (($572) + 18|0); + $574 = HEAP16[$573>>1]|0; + $575 = $574&65535; + $576 = $575 & 40; + $577 = ($576|0)!=(0); + $579 = $577; + } else { + $579 = 1; + } + $578 = $579&1; + HEAP32[$endEq>>2] = $578; + $580 = HEAP32[$pRangeStart>>2]|0; + $581 = ($580|0)!=(0|0); + if ($581) { + $586 = 1; + } else { + $582 = HEAP16[$nEq>>1]|0; + $583 = $582&65535; + $584 = ($583|0)>(0); + $586 = $584; + } + $585 = $586&1; + HEAP32[$start_constraints>>2] = $585; + $587 = HEAP16[$nEq>>1]|0; + $588 = $587&65535; + HEAP32[$nConstraint2>>2] = $588; + $589 = HEAP32[$pRangeStart>>2]|0; + $590 = ($589|0)!=(0|0); + if ($590) { + $591 = HEAP32[$pRangeStart>>2]|0; + $592 = HEAP32[$591>>2]|0; + $593 = (($592) + 16|0); + $594 = HEAP32[$593>>2]|0; + HEAP32[$pRight>>2] = $594; + $595 = HEAP32[$pParse>>2]|0; + $596 = HEAP32[$pRight>>2]|0; + $597 = HEAP32[$regBase>>2]|0; + $598 = HEAP16[$nEq>>1]|0; + $599 = $598&65535; + $600 = (($597) + ($599))|0; + _sqlite3ExprCode($595,$596,$600); + $601 = HEAP32[$pRangeStart>>2]|0; + $602 = (($601) + 20|0); + $603 = HEAP8[$602>>0]|0; + $604 = $603&255; + $605 = $604 & 0; + $606 = ($605|0)==(0); + do { + if ($606) { + $607 = HEAP32[$pRight>>2]|0; + $608 = (_sqlite3ExprCanBeNull($607)|0); + $609 = ($608|0)!=(0); + if (!($609)) { + break; + } + $610 = HEAP32[$v>>2]|0; + $611 = HEAP32[$regBase>>2]|0; + $612 = HEAP16[$nEq>>1]|0; + $613 = $612&65535; + $614 = (($611) + ($613))|0; + $615 = HEAP32[$addrNxt>>2]|0; + (_sqlite3VdbeAddOp2($610,76,$614,$615)|0); + } + } while(0); + $616 = HEAP32[$zStartAff>>2]|0; + $617 = ($616|0)!=(0|0); + do { + if ($617) { + $618 = HEAP32[$pRight>>2]|0; + $619 = HEAP16[$nEq>>1]|0; + $620 = $619&65535; + $621 = HEAP32[$zStartAff>>2]|0; + $622 = (($621) + ($620)|0); + $623 = HEAP8[$622>>0]|0; + $624 = (_sqlite3CompareAffinity($618,$623)|0); + $625 = $624 << 24 >> 24; + $626 = ($625|0)==(98); + if ($626) { + $627 = HEAP16[$nEq>>1]|0; + $628 = $627&65535; + $629 = HEAP32[$zStartAff>>2]|0; + $630 = (($629) + ($628)|0); + HEAP8[$630>>0] = 98; + } + $631 = HEAP32[$pRight>>2]|0; + $632 = HEAP16[$nEq>>1]|0; + $633 = $632&65535; + $634 = HEAP32[$zStartAff>>2]|0; + $635 = (($634) + ($633)|0); + $636 = HEAP8[$635>>0]|0; + $637 = (_sqlite3ExprNeedsNoAffinityChange($631,$636)|0); + $638 = ($637|0)!=(0); + if (!($638)) { + break; + } + $639 = HEAP16[$nEq>>1]|0; + $640 = $639&65535; + $641 = HEAP32[$zStartAff>>2]|0; + $642 = (($641) + ($640)|0); + HEAP8[$642>>0] = 98; + } + } while(0); + $643 = HEAP32[$nConstraint2>>2]|0; + $644 = (($643) + 1)|0; + HEAP32[$nConstraint2>>2] = $644; + } else { + $645 = HEAP8[$bSeekPastNull>>0]|0; + $646 = ($645<<24>>24)!=(0); + if ($646) { + $647 = HEAP32[$v>>2]|0; + $648 = HEAP32[$regBase>>2]|0; + $649 = HEAP16[$nEq>>1]|0; + $650 = $649&65535; + $651 = (($648) + ($650))|0; + (_sqlite3VdbeAddOp2($647,28,0,$651)|0); + $652 = HEAP32[$nConstraint2>>2]|0; + $653 = (($652) + 1)|0; + HEAP32[$nConstraint2>>2] = $653; + HEAP32[$startEq>>2] = 0; + HEAP32[$start_constraints>>2] = 1; + } + } + $654 = HEAP32[$pParse>>2]|0; + $655 = HEAP32[$regBase>>2]|0; + $656 = HEAP32[$nConstraint2>>2]|0; + $657 = HEAP8[$bSeekPastNull>>0]|0; + $658 = $657&255; + $659 = (($656) - ($658))|0; + $660 = HEAP32[$zStartAff>>2]|0; + _codeApplyAffinity($654,$655,$659,$660); + $661 = HEAP32[$start_constraints>>2]|0; + $662 = $661 << 2; + $663 = HEAP32[$startEq>>2]|0; + $664 = $663 << 1; + $665 = (($662) + ($664))|0; + $666 = HEAP32[$bRev>>2]|0; + $667 = (($665) + ($666))|0; + $668 = (30000 + ($667)|0); + $669 = HEAP8[$668>>0]|0; + $670 = $669&255; + HEAP32[$op>>2] = $670; + $671 = HEAP32[$v>>2]|0; + $672 = HEAP32[$op>>2]|0; + $673 = HEAP32[$iIdxCur>>2]|0; + $674 = HEAP32[$addrNxt>>2]|0; + $675 = HEAP32[$regBase>>2]|0; + $676 = HEAP32[$nConstraint2>>2]|0; + (_sqlite3VdbeAddOp4Int($671,$672,$673,$674,$675,$676)|0); + $677 = HEAP16[$nEq>>1]|0; + $678 = $677&65535; + HEAP32[$nConstraint2>>2] = $678; + $679 = HEAP32[$pRangeEnd>>2]|0; + $680 = ($679|0)!=(0|0); + do { + if ($680) { + $681 = HEAP32[$pRangeEnd>>2]|0; + $682 = HEAP32[$681>>2]|0; + $683 = (($682) + 16|0); + $684 = HEAP32[$683>>2]|0; + HEAP32[$pRight4>>2] = $684; + $685 = HEAP32[$pParse>>2]|0; + $686 = HEAP32[$regBase>>2]|0; + $687 = HEAP16[$nEq>>1]|0; + $688 = $687&65535; + $689 = (($686) + ($688))|0; + _sqlite3ExprCacheRemove($685,$689,1); + $690 = HEAP32[$pParse>>2]|0; + $691 = HEAP32[$pRight4>>2]|0; + $692 = HEAP32[$regBase>>2]|0; + $693 = HEAP16[$nEq>>1]|0; + $694 = $693&65535; + $695 = (($692) + ($694))|0; + _sqlite3ExprCode($690,$691,$695); + $696 = HEAP32[$pRangeEnd>>2]|0; + $697 = (($696) + 20|0); + $698 = HEAP8[$697>>0]|0; + $699 = $698&255; + $700 = $699 & 0; + $701 = ($700|0)==(0); + do { + if ($701) { + $702 = HEAP32[$pRight4>>2]|0; + $703 = (_sqlite3ExprCanBeNull($702)|0); + $704 = ($703|0)!=(0); + if (!($704)) { + break; + } + $705 = HEAP32[$v>>2]|0; + $706 = HEAP32[$regBase>>2]|0; + $707 = HEAP16[$nEq>>1]|0; + $708 = $707&65535; + $709 = (($706) + ($708))|0; + $710 = HEAP32[$addrNxt>>2]|0; + (_sqlite3VdbeAddOp2($705,76,$709,$710)|0); + } + } while(0); + $711 = HEAP32[$pRight4>>2]|0; + $712 = HEAP8[$cEndAff>>0]|0; + $713 = (_sqlite3CompareAffinity($711,$712)|0); + $714 = $713 << 24 >> 24; + $715 = ($714|0)!=(98); + do { + if ($715) { + $716 = HEAP32[$pRight4>>2]|0; + $717 = HEAP8[$cEndAff>>0]|0; + $718 = (_sqlite3ExprNeedsNoAffinityChange($716,$717)|0); + $719 = ($718|0)!=(0); + if ($719) { + break; + } + $720 = HEAP32[$pParse>>2]|0; + $721 = HEAP32[$regBase>>2]|0; + $722 = HEAP16[$nEq>>1]|0; + $723 = $722&65535; + $724 = (($721) + ($723))|0; + _codeApplyAffinity($720,$724,1,$cEndAff); + } + } while(0); + $725 = HEAP32[$nConstraint2>>2]|0; + $726 = (($725) + 1)|0; + HEAP32[$nConstraint2>>2] = $726; + } else { + $727 = HEAP8[$bStopAtNull>>0]|0; + $728 = ($727<<24>>24)!=(0); + if (!($728)) { + break; + } + $729 = HEAP32[$v>>2]|0; + $730 = HEAP32[$regBase>>2]|0; + $731 = HEAP16[$nEq>>1]|0; + $732 = $731&65535; + $733 = (($730) + ($732))|0; + (_sqlite3VdbeAddOp2($729,28,0,$733)|0); + HEAP32[$endEq>>2] = 0; + $734 = HEAP32[$nConstraint2>>2]|0; + $735 = (($734) + 1)|0; + HEAP32[$nConstraint2>>2] = $735; + } + } while(0); + $736 = HEAP32[$db>>2]|0; + $737 = HEAP32[$zStartAff>>2]|0; + _sqlite3DbFree($736,$737); + $738 = HEAP32[$v>>2]|0; + $739 = (_sqlite3VdbeCurrentAddr($738)|0); + $740 = HEAP32[$pLevel>>2]|0; + $741 = (($740) + 44|0); + HEAP32[$741>>2] = $739; + $742 = HEAP32[$nConstraint2>>2]|0; + $743 = ($742|0)!=(0); + if ($743) { + $744 = HEAP32[$bRev>>2]|0; + $745 = $744<<1; + $746 = HEAP32[$endEq>>2]|0; + $747 = (($745) + ($746))|0; + $748 = (30008 + ($747)|0); + $749 = HEAP8[$748>>0]|0; + $750 = $749&255; + HEAP32[$op>>2] = $750; + $751 = HEAP32[$v>>2]|0; + $752 = HEAP32[$op>>2]|0; + $753 = HEAP32[$iIdxCur>>2]|0; + $754 = HEAP32[$addrNxt>>2]|0; + $755 = HEAP32[$regBase>>2]|0; + $756 = HEAP32[$nConstraint2>>2]|0; + (_sqlite3VdbeAddOp4Int($751,$752,$753,$754,$755,$756)|0); + } + $757 = HEAP32[$pLevel>>2]|0; + $758 = HEAP32[$pRangeStart>>2]|0; + _disableTerm($757,$758); + $759 = HEAP32[$pLevel>>2]|0; + $760 = HEAP32[$pRangeEnd>>2]|0; + _disableTerm($759,$760); + $761 = HEAP32[$omitTable>>2]|0; + $762 = ($761|0)!=(0); + do { + if (!($762)) { + $763 = HEAP32[$pIdx>>2]|0; + $764 = (($763) + 12|0); + $765 = HEAP32[$764>>2]|0; + $766 = (($765) + 44|0); + $767 = HEAP8[$766>>0]|0; + $768 = $767&255; + $769 = $768 & 32; + $770 = ($769|0)==(0); + if ($770) { + $771 = HEAP32[$pParse>>2]|0; + $772 = (($771) + 72|0); + $773 = HEAP32[$772>>2]|0; + $774 = (($773) + 1)|0; + HEAP32[$772>>2] = $774; + HEAP32[$iRowidReg>>2] = $774; + $775 = HEAP32[$v>>2]|0; + $776 = HEAP32[$iIdxCur>>2]|0; + $777 = HEAP32[$iRowidReg>>2]|0; + (_sqlite3VdbeAddOp2($775,109,$776,$777)|0); + $778 = HEAP32[$pParse>>2]|0; + $779 = HEAP32[$iCur>>2]|0; + $780 = HEAP32[$iRowidReg>>2]|0; + _sqlite3ExprCacheStore($778,$779,-1,$780); + $781 = HEAP32[$v>>2]|0; + $782 = HEAP32[$iCur>>2]|0; + $783 = HEAP32[$iRowidReg>>2]|0; + (_sqlite3VdbeAddOp2($781,63,$782,$783)|0); + break; + } + $784 = HEAP32[$iCur>>2]|0; + $785 = HEAP32[$iIdxCur>>2]|0; + $786 = ($784|0)!=($785|0); + if (!($786)) { + break; + } + $787 = HEAP32[$pIdx>>2]|0; + $788 = (($787) + 12|0); + $789 = HEAP32[$788>>2]|0; + $790 = (_sqlite3PrimaryKeyIndex($789)|0); + HEAP32[$pPk>>2] = $790; + $791 = HEAP32[$pParse>>2]|0; + $792 = HEAP32[$pPk>>2]|0; + $793 = (($792) + 50|0); + $794 = HEAP16[$793>>1]|0; + $795 = $794&65535; + $796 = (_sqlite3GetTempRange($791,$795)|0); + HEAP32[$iRowidReg>>2] = $796; + HEAP32[$j>>2] = 0; + while(1) { + $797 = HEAP32[$j>>2]|0; + $798 = HEAP32[$pPk>>2]|0; + $799 = (($798) + 50|0); + $800 = HEAP16[$799>>1]|0; + $801 = $800&65535; + $802 = ($797|0)<($801|0); + if (!($802)) { + break; + } + $803 = HEAP32[$pIdx>>2]|0; + $804 = HEAP32[$j>>2]|0; + $805 = HEAP32[$pPk>>2]|0; + $806 = (($805) + 4|0); + $807 = HEAP32[$806>>2]|0; + $808 = (($807) + ($804<<1)|0); + $809 = HEAP16[$808>>1]|0; + $810 = (_sqlite3ColumnOfIndex($803,$809)|0); + $811 = $810 << 16 >> 16; + HEAP32[$k>>2] = $811; + $812 = HEAP32[$v>>2]|0; + $813 = HEAP32[$iIdxCur>>2]|0; + $814 = HEAP32[$k>>2]|0; + $815 = HEAP32[$iRowidReg>>2]|0; + $816 = HEAP32[$j>>2]|0; + $817 = (($815) + ($816))|0; + (_sqlite3VdbeAddOp3($812,46,$813,$814,$817)|0); + $818 = HEAP32[$j>>2]|0; + $819 = (($818) + 1)|0; + HEAP32[$j>>2] = $819; + } + $820 = HEAP32[$v>>2]|0; + $821 = HEAP32[$iCur>>2]|0; + $822 = HEAP32[$addrCont>>2]|0; + $823 = HEAP32[$iRowidReg>>2]|0; + $824 = HEAP32[$pPk>>2]|0; + $825 = (($824) + 50|0); + $826 = HEAP16[$825>>1]|0; + $827 = $826&65535; + (_sqlite3VdbeAddOp4Int($820,65,$821,$822,$823,$827)|0); + } + } while(0); + $828 = HEAP32[$pLoop>>2]|0; + $829 = (($828) + 36|0); + $830 = HEAP32[$829>>2]|0; + $831 = $830 & 4096; + $832 = ($831|0)!=(0); + do { + if ($832) { + $833 = HEAP32[$pLevel>>2]|0; + $834 = (($833) + 37|0); + HEAP8[$834>>0] = -100; + } else { + $835 = HEAP32[$bRev>>2]|0; + $836 = ($835|0)!=(0); + $837 = HEAP32[$pLevel>>2]|0; + $838 = (($837) + 37|0); + if ($836) { + HEAP8[$838>>0] = 8; + break; + } else { + HEAP8[$838>>0] = 9; + break; + } + } + } while(0); + $839 = HEAP32[$iIdxCur>>2]|0; + $840 = HEAP32[$pLevel>>2]|0; + $841 = (($840) + 40|0); + HEAP32[$841>>2] = $839; + $842 = HEAP32[$pLoop>>2]|0; + $843 = (($842) + 36|0); + $844 = HEAP32[$843>>2]|0; + $845 = $844 & 65536; + $846 = ($845|0)!=(0); + $847 = $846 ? 1 : 0; + $848 = $847&255; + $849 = HEAP32[$pLevel>>2]|0; + $850 = (($849) + 38|0); + HEAP8[$850>>0] = $848; + $851 = HEAP32[$pLoop>>2]|0; + $852 = (($851) + 36|0); + $853 = HEAP32[$852>>2]|0; + $854 = $853 & 15; + $855 = ($854|0)==(0); + if (!($855)) { + break; + } + $856 = HEAP32[$pLevel>>2]|0; + $857 = (($856) + 39|0); + HEAP8[$857>>0] = 1; + break; + } + $858 = (($435) + 36|0); + $859 = HEAP32[$858>>2]|0; + $860 = $859 & 8192; + $861 = ($860|0)!=(0); + if (!($861)) { + $1267 = HEAP32[$pTabItem>>2]|0; + $1268 = (($1267) + 37|0); + $1269 = HEAP8[$1268>>0]|0; + $1270 = ($1269&255) >>> 3; + $1271 = $1270 & 1; + $1272 = $1271&255; + $1273 = ($1272|0)!=(0); + if ($1273) { + $1274 = HEAP32[$pLevel>>2]|0; + $1275 = (($1274) + 37|0); + HEAP8[$1275>>0] = -100; + break; + } else { + $1276 = HEAP32[$bRev>>2]|0; + $1277 = (30016 + ($1276)|0); + $1278 = HEAP8[$1277>>0]|0; + $1279 = HEAP32[$pLevel>>2]|0; + $1280 = (($1279) + 37|0); + HEAP8[$1280>>0] = $1278; + $1281 = HEAP32[$iCur>>2]|0; + $1282 = HEAP32[$pLevel>>2]|0; + $1283 = (($1282) + 40|0); + HEAP32[$1283>>2] = $1281; + $1284 = HEAP32[$v>>2]|0; + $1285 = HEAP32[$bRev>>2]|0; + $1286 = (30024 + ($1285)|0); + $1287 = HEAP8[$1286>>0]|0; + $1288 = $1287&255; + $1289 = HEAP32[$iCur>>2]|0; + $1290 = HEAP32[$addrBrk>>2]|0; + $1291 = (_sqlite3VdbeAddOp2($1284,$1288,$1289,$1290)|0); + $1292 = (1 + ($1291))|0; + $1293 = HEAP32[$pLevel>>2]|0; + $1294 = (($1293) + 44|0); + HEAP32[$1294>>2] = $1292; + $1295 = HEAP32[$pLevel>>2]|0; + $1296 = (($1295) + 39|0); + HEAP8[$1296>>0] = 1; + break; + } + } + HEAP32[$pCov>>2] = 0; + $862 = HEAP32[$pParse>>2]|0; + $863 = (($862) + 68|0); + $864 = HEAP32[$863>>2]|0; + $865 = (($864) + 1)|0; + HEAP32[$863>>2] = $865; + HEAP32[$iCovCur>>2] = $864; + $866 = HEAP32[$pParse>>2]|0; + $867 = (($866) + 72|0); + $868 = HEAP32[$867>>2]|0; + $869 = (($868) + 1)|0; + HEAP32[$867>>2] = $869; + HEAP32[$regReturn>>2] = $869; + HEAP32[$regRowset>>2] = 0; + HEAP32[$regRowid>>2] = 0; + $870 = HEAP32[$v>>2]|0; + $871 = (_sqlite3VdbeMakeLabel($870)|0); + HEAP32[$iLoopBody>>2] = $871; + HEAP32[$untestedTerms>>2] = 0; + HEAP32[$pAndExpr>>2] = 0; + $872 = HEAP32[$pTabItem>>2]|0; + $873 = (($872) + 16|0); + $874 = HEAP32[$873>>2]|0; + HEAP32[$pTab>>2] = $874; + $875 = HEAP32[$pLoop>>2]|0; + $876 = (($875) + 44|0); + $877 = HEAP32[$876>>2]|0; + $878 = HEAP32[$877>>2]|0; + HEAP32[$pTerm>>2] = $878; + $879 = HEAP32[$pTerm>>2]|0; + $880 = (($879) + 12|0); + $881 = HEAP32[$880>>2]|0; + HEAP32[$pOrWc>>2] = $881; + $882 = HEAP32[$pLevel>>2]|0; + $883 = (($882) + 37|0); + HEAP8[$883>>0] = 18; + $884 = HEAP32[$regReturn>>2]|0; + $885 = HEAP32[$pLevel>>2]|0; + $886 = (($885) + 40|0); + HEAP32[$886>>2] = $884; + $887 = HEAP32[$3>>2]|0; + $888 = (($887) + 41|0); + $889 = HEAP8[$888>>0]|0; + $890 = $889&255; + $891 = ($890|0)>(1); + $892 = HEAP32[$3>>2]|0; + L158: do { + if ($891) { + $893 = (($892) + 41|0); + $894 = HEAP8[$893>>0]|0; + $895 = $894&255; + $896 = HEAP32[$4>>2]|0; + $897 = (($895) - ($896))|0; + $898 = (($897) - 1)|0; + HEAP32[$nNotReady>>2] = $898; + $899 = HEAP32[$db>>2]|0; + $900 = HEAP32[$nNotReady>>2]|0; + $901 = ($900*72)|0; + $902 = (80 + ($901))|0; + $903 = (_sqlite3DbMallocRaw($899,$902)|0); + HEAP32[$pOrTab>>2] = $903; + $904 = HEAP32[$pOrTab>>2]|0; + $905 = ($904|0)==(0|0); + if ($905) { + $906 = $5; + $907 = $906; + $908 = HEAP32[$907>>2]|0; + $909 = (($906) + 4)|0; + $910 = $909; + $911 = HEAP32[$910>>2]|0; + $912 = $2; + $913 = $912; + HEAP32[$913>>2] = $908; + $914 = (($912) + 4)|0; + $915 = $914; + HEAP32[$915>>2] = $911; + $1499 = $2; + $1500 = $1499; + $1501 = HEAP32[$1500>>2]|0; + $1502 = (($1499) + 4)|0; + $1503 = $1502; + $1504 = HEAP32[$1503>>2]|0; + tempRet0 = $1504; + STACKTOP = sp;return ($1501|0); + } + $916 = HEAP32[$nNotReady>>2]|0; + $917 = (($916) + 1)|0; + $918 = $917&255; + $919 = $918&255; + $920 = HEAP32[$pOrTab>>2]|0; + $921 = (($920) + 4|0); + HEAP32[$921>>2] = $919; + $922 = HEAP32[$pOrTab>>2]|0; + $923 = (($922) + 4|0); + $924 = HEAP32[$923>>2]|0; + $925 = HEAP32[$pOrTab>>2]|0; + HEAP32[$925>>2] = $924; + $926 = HEAP32[$pOrTab>>2]|0; + $927 = (($926) + 8|0); + $928 = HEAP32[$pTabItem>>2]|0; + dest=$927+0|0; src=$928+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $929 = HEAP32[$3>>2]|0; + $930 = (($929) + 4|0); + $931 = HEAP32[$930>>2]|0; + $932 = (($931) + 8|0); + HEAP32[$origSrc>>2] = $932; + HEAP32[$k>>2] = 1; + while(1) { + $933 = HEAP32[$k>>2]|0; + $934 = HEAP32[$nNotReady>>2]|0; + $935 = ($933|0)<=($934|0); + if (!($935)) { + break L158; + } + $936 = HEAP32[$k>>2]|0; + $937 = HEAP32[$pOrTab>>2]|0; + $938 = (($937) + 8|0); + $939 = (($938) + (($936*72)|0)|0); + $940 = HEAP32[$k>>2]|0; + $941 = HEAP32[$pLevel>>2]|0; + $942 = (($941) + (($940*72)|0)|0); + $943 = (($942) + 36|0); + $944 = HEAP8[$943>>0]|0; + $945 = $944&255; + $946 = HEAP32[$origSrc>>2]|0; + $947 = (($946) + (($945*72)|0)|0); + dest=$939+0|0; src=$947+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $948 = HEAP32[$k>>2]|0; + $949 = (($948) + 1)|0; + HEAP32[$k>>2] = $949; + } + } else { + $950 = (($892) + 4|0); + $951 = HEAP32[$950>>2]|0; + HEAP32[$pOrTab>>2] = $951; + } + } while(0); + $952 = HEAP32[$3>>2]|0; + $953 = (($952) + 34|0); + $954 = HEAP16[$953>>1]|0; + $955 = $954&65535; + $956 = $955 & 8; + $957 = ($956|0)==(0); + if ($957) { + $958 = HEAP32[$pTab>>2]|0; + $959 = (($958) + 44|0); + $960 = HEAP8[$959>>0]|0; + $961 = $960&255; + $962 = $961 & 32; + $963 = ($962|0)==(0); + if ($963) { + $964 = HEAP32[$pParse>>2]|0; + $965 = (($964) + 72|0); + $966 = HEAP32[$965>>2]|0; + $967 = (($966) + 1)|0; + HEAP32[$965>>2] = $967; + HEAP32[$regRowset>>2] = $967; + $968 = HEAP32[$v>>2]|0; + $969 = HEAP32[$regRowset>>2]|0; + (_sqlite3VdbeAddOp2($968,28,0,$969)|0); + } else { + $970 = HEAP32[$pTab>>2]|0; + $971 = (_sqlite3PrimaryKeyIndex($970)|0); + HEAP32[$pPk5>>2] = $971; + $972 = HEAP32[$pParse>>2]|0; + $973 = (($972) + 68|0); + $974 = HEAP32[$973>>2]|0; + $975 = (($974) + 1)|0; + HEAP32[$973>>2] = $975; + HEAP32[$regRowset>>2] = $974; + $976 = HEAP32[$v>>2]|0; + $977 = HEAP32[$regRowset>>2]|0; + $978 = HEAP32[$pPk5>>2]|0; + $979 = (($978) + 50|0); + $980 = HEAP16[$979>>1]|0; + $981 = $980&65535; + (_sqlite3VdbeAddOp2($976,55,$977,$981)|0); + $982 = HEAP32[$pParse>>2]|0; + $983 = HEAP32[$pPk5>>2]|0; + _sqlite3VdbeSetP4KeyInfo($982,$983); + } + $984 = HEAP32[$pParse>>2]|0; + $985 = (($984) + 72|0); + $986 = HEAP32[$985>>2]|0; + $987 = (($986) + 1)|0; + HEAP32[$985>>2] = $987; + HEAP32[$regRowid>>2] = $987; + } + $988 = HEAP32[$v>>2]|0; + $989 = HEAP32[$regReturn>>2]|0; + $990 = (_sqlite3VdbeAddOp2($988,25,0,$989)|0); + HEAP32[$iRetInit>>2] = $990; + $991 = HEAP32[$pWC>>2]|0; + $992 = (($991) + 12|0); + $993 = HEAP32[$992>>2]|0; + $994 = ($993|0)>(1); + if ($994) { + HEAP32[$iTerm>>2] = 0; + while(1) { + $995 = HEAP32[$iTerm>>2]|0; + $996 = HEAP32[$pWC>>2]|0; + $997 = (($996) + 12|0); + $998 = HEAP32[$997>>2]|0; + $999 = ($995|0)<($998|0); + if (!($999)) { + break; + } + $1000 = HEAP32[$iTerm>>2]|0; + $1001 = HEAP32[$pWC>>2]|0; + $1002 = (($1001) + 20|0); + $1003 = HEAP32[$1002>>2]|0; + $1004 = (($1003) + (($1000*48)|0)|0); + $1005 = HEAP32[$1004>>2]|0; + HEAP32[$pExpr>>2] = $1005; + $1006 = HEAP32[$iTerm>>2]|0; + $1007 = HEAP32[$pWC>>2]|0; + $1008 = (($1007) + 20|0); + $1009 = HEAP32[$1008>>2]|0; + $1010 = (($1009) + (($1006*48)|0)|0); + $1011 = HEAP32[$pTerm>>2]|0; + $1012 = ($1010|0)==($1011|0); + if (!($1012)) { + $1013 = HEAP32[$pExpr>>2]|0; + $1014 = (($1013) + 4|0); + $1015 = HEAP32[$1014>>2]|0; + $1016 = $1015 & 1; + $1017 = ($1016|0)!=(0); + if (!($1017)) { + $1018 = HEAP32[$iTerm>>2]|0; + $1019 = HEAP32[$pWC>>2]|0; + $1020 = (($1019) + 20|0); + $1021 = HEAP32[$1020>>2]|0; + $1022 = (($1021) + (($1018*48)|0)|0); + $1023 = (($1022) + 20|0); + $1024 = HEAP8[$1023>>0]|0; + $1025 = $1024&255; + $1026 = $1025 & 18; + $1027 = ($1026|0)!=(0); + if (!($1027)) { + $1028 = HEAP32[$iTerm>>2]|0; + $1029 = HEAP32[$pWC>>2]|0; + $1030 = (($1029) + 20|0); + $1031 = HEAP32[$1030>>2]|0; + $1032 = (($1031) + (($1028*48)|0)|0); + $1033 = (($1032) + 18|0); + $1034 = HEAP16[$1033>>1]|0; + $1035 = $1034&65535; + $1036 = $1035 & 4095; + $1037 = ($1036|0)==(0); + if (!($1037)) { + $1038 = HEAP32[$db>>2]|0; + $1039 = HEAP32[$pExpr>>2]|0; + $1040 = (_sqlite3ExprDup($1038,$1039,0)|0); + HEAP32[$pExpr>>2] = $1040; + $1041 = HEAP32[$db>>2]|0; + $1042 = HEAP32[$pAndExpr>>2]|0; + $1043 = HEAP32[$pExpr>>2]|0; + $1044 = (_sqlite3ExprAnd($1041,$1042,$1043)|0); + HEAP32[$pAndExpr>>2] = $1044; + } + } + } + } + $1045 = HEAP32[$iTerm>>2]|0; + $1046 = (($1045) + 1)|0; + HEAP32[$iTerm>>2] = $1046; + } + $1047 = HEAP32[$pAndExpr>>2]|0; + $1048 = ($1047|0)!=(0|0); + if ($1048) { + $1049 = HEAP32[$pParse>>2]|0; + $1050 = HEAP32[$pAndExpr>>2]|0; + $1051 = (_sqlite3PExpr($1049,72,0,$1050,0)|0); + HEAP32[$pAndExpr>>2] = $1051; + } + } + HEAP32[$ii>>2] = 0; + while(1) { + $1052 = HEAP32[$ii>>2]|0; + $1053 = HEAP32[$pOrWc>>2]|0; + $1054 = (($1053) + 12|0); + $1055 = HEAP32[$1054>>2]|0; + $1056 = ($1052|0)<($1055|0); + if (!($1056)) { + break; + } + $1057 = HEAP32[$ii>>2]|0; + $1058 = HEAP32[$pOrWc>>2]|0; + $1059 = (($1058) + 20|0); + $1060 = HEAP32[$1059>>2]|0; + $1061 = (($1060) + (($1057*48)|0)|0); + HEAP32[$pOrTerm>>2] = $1061; + $1062 = HEAP32[$pOrTerm>>2]|0; + $1063 = (($1062) + 8|0); + $1064 = HEAP32[$1063>>2]|0; + $1065 = HEAP32[$iCur>>2]|0; + $1066 = ($1064|0)==($1065|0); + if ($1066) { + label = 138; + } else { + $1067 = HEAP32[$pOrTerm>>2]|0; + $1068 = (($1067) + 18|0); + $1069 = HEAP16[$1068>>1]|0; + $1070 = $1069&65535; + $1071 = $1070 & 512; + $1072 = ($1071|0)!=(0); + if ($1072) { + label = 138; + } + } + if ((label|0) == 138) { + label = 0; + $1073 = HEAP32[$pOrTerm>>2]|0; + $1074 = HEAP32[$1073>>2]|0; + HEAP32[$pOrExpr>>2] = $1074; + HEAP32[$j1>>2] = 0; + $1075 = HEAP32[$pAndExpr>>2]|0; + $1076 = ($1075|0)!=(0|0); + if ($1076) { + $1077 = HEAP32[$pOrExpr>>2]|0; + $1078 = (($1077) + 4|0); + $1079 = HEAP32[$1078>>2]|0; + $1080 = $1079 & 1; + $1081 = ($1080|0)!=(0); + if (!($1081)) { + $1082 = HEAP32[$pOrExpr>>2]|0; + $1083 = HEAP32[$pAndExpr>>2]|0; + $1084 = (($1083) + 12|0); + HEAP32[$1084>>2] = $1082; + $1085 = HEAP32[$pAndExpr>>2]|0; + HEAP32[$pOrExpr>>2] = $1085; + } + } + $1086 = HEAP32[$pParse>>2]|0; + $1087 = HEAP32[$pOrTab>>2]|0; + $1088 = HEAP32[$pOrExpr>>2]|0; + $1089 = HEAP32[$iCovCur>>2]|0; + $1090 = (_sqlite3WhereBegin($1086,$1087,$1088,0,0,240,$1089)|0); + HEAP32[$pSubWInfo>>2] = $1090; + $1091 = HEAP32[$pSubWInfo>>2]|0; + $1092 = ($1091|0)!=(0|0); + if ($1092) { + $1093 = HEAP32[$pParse>>2]|0; + $1094 = HEAP32[$pOrTab>>2]|0; + $1095 = HEAP32[$pSubWInfo>>2]|0; + $1096 = (($1095) + 736|0); + $1097 = HEAP32[$4>>2]|0; + $1098 = HEAP32[$pLevel>>2]|0; + $1099 = (($1098) + 36|0); + $1100 = HEAP8[$1099>>0]|0; + $1101 = $1100&255; + _explainOneScan($1093,$1094,$1096,$1097,$1101,0); + $1102 = HEAP32[$3>>2]|0; + $1103 = (($1102) + 34|0); + $1104 = HEAP16[$1103>>1]|0; + $1105 = $1104&65535; + $1106 = $1105 & 8; + $1107 = ($1106|0)==(0); + do { + if ($1107) { + $1108 = HEAP32[$ii>>2]|0; + $1109 = HEAP32[$pOrWc>>2]|0; + $1110 = (($1109) + 12|0); + $1111 = HEAP32[$1110>>2]|0; + $1112 = (($1111) - 1)|0; + $1113 = ($1108|0)==($1112|0); + $1114 = HEAP32[$ii>>2]|0; + $1115 = $1113 ? -1 : $1114; + HEAP32[$iSet>>2] = $1115; + $1116 = HEAP32[$pTab>>2]|0; + $1117 = (($1116) + 44|0); + $1118 = HEAP8[$1117>>0]|0; + $1119 = $1118&255; + $1120 = $1119 & 32; + $1121 = ($1120|0)==(0); + if ($1121) { + $1122 = HEAP32[$pParse>>2]|0; + $1123 = HEAP32[$pTab>>2]|0; + $1124 = HEAP32[$iCur>>2]|0; + $1125 = HEAP32[$regRowid>>2]|0; + $1126 = (_sqlite3ExprCodeGetColumn($1122,$1123,-1,$1124,$1125,0)|0); + HEAP32[$r>>2] = $1126; + $1127 = HEAP32[$v>>2]|0; + $1128 = HEAP32[$regRowset>>2]|0; + $1129 = HEAP32[$r>>2]|0; + $1130 = HEAP32[$iSet>>2]|0; + $1131 = (_sqlite3VdbeAddOp4Int($1127,127,$1128,0,$1129,$1130)|0); + HEAP32[$j1>>2] = $1131; + break; + } + $1132 = HEAP32[$pTab>>2]|0; + $1133 = (_sqlite3PrimaryKeyIndex($1132)|0); + HEAP32[$pPk6>>2] = $1133; + $1134 = HEAP32[$pPk6>>2]|0; + $1135 = (($1134) + 50|0); + $1136 = HEAP16[$1135>>1]|0; + $1137 = $1136&65535; + HEAP32[$nPk>>2] = $1137; + $1138 = HEAP32[$pParse>>2]|0; + $1139 = HEAP32[$nPk>>2]|0; + $1140 = (_sqlite3GetTempRange($1138,$1139)|0); + HEAP32[$r>>2] = $1140; + HEAP32[$iPk>>2] = 0; + while(1) { + $1141 = HEAP32[$iPk>>2]|0; + $1142 = HEAP32[$nPk>>2]|0; + $1143 = ($1141|0)<($1142|0); + if (!($1143)) { + break; + } + $1144 = HEAP32[$iPk>>2]|0; + $1145 = HEAP32[$pPk6>>2]|0; + $1146 = (($1145) + 4|0); + $1147 = HEAP32[$1146>>2]|0; + $1148 = (($1147) + ($1144<<1)|0); + $1149 = HEAP16[$1148>>1]|0; + $1150 = $1149 << 16 >> 16; + HEAP32[$iCol>>2] = $1150; + $1151 = HEAP32[$pParse>>2]|0; + $1152 = HEAP32[$pTab>>2]|0; + $1153 = HEAP32[$iCol>>2]|0; + $1154 = HEAP32[$iCur>>2]|0; + $1155 = HEAP32[$r>>2]|0; + $1156 = HEAP32[$iPk>>2]|0; + $1157 = (($1155) + ($1156))|0; + (_sqlite3ExprCodeGetColumn($1151,$1152,$1153,$1154,$1157,0)|0); + $1158 = HEAP32[$iPk>>2]|0; + $1159 = (($1158) + 1)|0; + HEAP32[$iPk>>2] = $1159; + } + $1160 = HEAP32[$iSet>>2]|0; + $1161 = ($1160|0)!=(0); + if ($1161) { + $1162 = HEAP32[$v>>2]|0; + $1163 = HEAP32[$regRowset>>2]|0; + $1164 = HEAP32[$r>>2]|0; + $1165 = HEAP32[$nPk>>2]|0; + $1166 = (_sqlite3VdbeAddOp4Int($1162,66,$1163,0,$1164,$1165)|0); + HEAP32[$j1>>2] = $1166; + } + $1167 = HEAP32[$iSet>>2]|0; + $1168 = ($1167|0)>=(0); + do { + if ($1168) { + $1169 = HEAP32[$v>>2]|0; + $1170 = HEAP32[$r>>2]|0; + $1171 = HEAP32[$nPk>>2]|0; + $1172 = HEAP32[$regRowid>>2]|0; + (_sqlite3VdbeAddOp3($1169,48,$1170,$1171,$1172)|0); + $1173 = HEAP32[$v>>2]|0; + $1174 = HEAP32[$regRowset>>2]|0; + $1175 = HEAP32[$regRowid>>2]|0; + (_sqlite3VdbeAddOp3($1173,107,$1174,$1175,0)|0); + $1176 = HEAP32[$iSet>>2]|0; + $1177 = ($1176|0)!=(0); + if (!($1177)) { + break; + } + $1178 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($1178,16); + } + } while(0); + $1179 = HEAP32[$pParse>>2]|0; + $1180 = HEAP32[$r>>2]|0; + $1181 = HEAP32[$nPk>>2]|0; + _sqlite3ReleaseTempRange($1179,$1180,$1181); + } + } while(0); + $1182 = HEAP32[$v>>2]|0; + $1183 = HEAP32[$regReturn>>2]|0; + $1184 = HEAP32[$iLoopBody>>2]|0; + (_sqlite3VdbeAddOp2($1182,17,$1183,$1184)|0); + $1185 = HEAP32[$j1>>2]|0; + $1186 = ($1185|0)!=(0); + if ($1186) { + $1187 = HEAP32[$v>>2]|0; + $1188 = HEAP32[$j1>>2]|0; + _sqlite3VdbeJumpHere($1187,$1188); + } + $1189 = HEAP32[$pSubWInfo>>2]|0; + $1190 = (($1189) + 39|0); + $1191 = HEAP8[$1190>>0]|0; + $1192 = ($1191<<24>>24)!=(0); + if ($1192) { + HEAP32[$untestedTerms>>2] = 1; + } + $1193 = HEAP32[$pSubWInfo>>2]|0; + $1194 = (($1193) + 736|0); + $1195 = (($1194) + 56|0); + $1196 = HEAP32[$1195>>2]|0; + HEAP32[$pSubLoop>>2] = $1196; + $1197 = HEAP32[$pSubLoop>>2]|0; + $1198 = (($1197) + 36|0); + $1199 = HEAP32[$1198>>2]|0; + $1200 = $1199 & 512; + $1201 = ($1200|0)!=(0); + do { + if ($1201) { + $1202 = HEAP32[$ii>>2]|0; + $1203 = ($1202|0)==(0); + if (!($1203)) { + $1204 = HEAP32[$pSubLoop>>2]|0; + $1205 = (($1204) + 24|0); + $1206 = (($1205) + 4|0); + $1207 = HEAP32[$1206>>2]|0; + $1208 = HEAP32[$pCov>>2]|0; + $1209 = ($1207|0)==($1208|0); + if (!($1209)) { + label = 164; + break; + } + } + $1210 = HEAP32[$pTab>>2]|0; + $1211 = (($1210) + 44|0); + $1212 = HEAP8[$1211>>0]|0; + $1213 = $1212&255; + $1214 = $1213 & 32; + $1215 = ($1214|0)==(0); + if (!($1215)) { + $1216 = HEAP32[$pSubLoop>>2]|0; + $1217 = (($1216) + 24|0); + $1218 = (($1217) + 4|0); + $1219 = HEAP32[$1218>>2]|0; + $1220 = (($1219) + 55|0); + $1221 = HEAP8[$1220>>0]|0; + $1222 = $1221 & 3; + $1223 = $1222&255; + $1224 = ($1223|0)==(2); + if ($1224) { + label = 164; + break; + } + } + $1225 = HEAP32[$pSubLoop>>2]|0; + $1226 = (($1225) + 24|0); + $1227 = (($1226) + 4|0); + $1228 = HEAP32[$1227>>2]|0; + HEAP32[$pCov>>2] = $1228; + } else { + label = 164; + } + } while(0); + if ((label|0) == 164) { + label = 0; + HEAP32[$pCov>>2] = 0; + } + $1229 = HEAP32[$pSubWInfo>>2]|0; + _sqlite3WhereEnd($1229); + } + } + $1230 = HEAP32[$ii>>2]|0; + $1231 = (($1230) + 1)|0; + HEAP32[$ii>>2] = $1231; + } + $1232 = HEAP32[$pCov>>2]|0; + $1233 = HEAP32[$pLevel>>2]|0; + $1234 = (($1233) + 48|0); + HEAP32[$1234>>2] = $1232; + $1235 = HEAP32[$pCov>>2]|0; + $1236 = ($1235|0)!=(0|0); + if ($1236) { + $1237 = HEAP32[$iCovCur>>2]|0; + $1238 = HEAP32[$pLevel>>2]|0; + $1239 = (($1238) + 8|0); + HEAP32[$1239>>2] = $1237; + } + $1240 = HEAP32[$pAndExpr>>2]|0; + $1241 = ($1240|0)!=(0|0); + if ($1241) { + $1242 = HEAP32[$pAndExpr>>2]|0; + $1243 = (($1242) + 12|0); + HEAP32[$1243>>2] = 0; + $1244 = HEAP32[$db>>2]|0; + $1245 = HEAP32[$pAndExpr>>2]|0; + _sqlite3ExprDelete($1244,$1245); + } + $1246 = HEAP32[$v>>2]|0; + $1247 = HEAP32[$iRetInit>>2]|0; + $1248 = HEAP32[$v>>2]|0; + $1249 = (_sqlite3VdbeCurrentAddr($1248)|0); + _sqlite3VdbeChangeP1($1246,$1247,$1249); + $1250 = HEAP32[$v>>2]|0; + $1251 = HEAP32[$pLevel>>2]|0; + $1252 = (($1251) + 12|0); + $1253 = HEAP32[$1252>>2]|0; + (_sqlite3VdbeAddOp2($1250,16,0,$1253)|0); + $1254 = HEAP32[$v>>2]|0; + $1255 = HEAP32[$iLoopBody>>2]|0; + _sqlite3VdbeResolveLabel($1254,$1255); + $1256 = HEAP32[$3>>2]|0; + $1257 = (($1256) + 41|0); + $1258 = HEAP8[$1257>>0]|0; + $1259 = $1258&255; + $1260 = ($1259|0)>(1); + if ($1260) { + $1261 = HEAP32[$db>>2]|0; + $1262 = HEAP32[$pOrTab>>2]|0; + _sqlite3DbFree($1261,$1262); + } + $1263 = HEAP32[$untestedTerms>>2]|0; + $1264 = ($1263|0)!=(0); + if (!($1264)) { + $1265 = HEAP32[$pLevel>>2]|0; + $1266 = HEAP32[$pTerm>>2]|0; + _disableTerm($1265,$1266); + } + } + } while(0); + $1297 = HEAP32[$pWC>>2]|0; + $1298 = (($1297) + 20|0); + $1299 = HEAP32[$1298>>2]|0; + HEAP32[$pTerm>>2] = $1299; + $1300 = HEAP32[$pWC>>2]|0; + $1301 = (($1300) + 12|0); + $1302 = HEAP32[$1301>>2]|0; + HEAP32[$j>>2] = $1302; + while(1) { + $1303 = HEAP32[$j>>2]|0; + $1304 = ($1303|0)>(0); + if (!($1304)) { + break; + } + $1305 = HEAP32[$pTerm>>2]|0; + $1306 = (($1305) + 20|0); + $1307 = HEAP8[$1306>>0]|0; + $1308 = $1307&255; + $1309 = $1308 & 6; + $1310 = ($1309|0)!=(0); + do { + if (!($1310)) { + $1311 = HEAP32[$pTerm>>2]|0; + $1312 = (($1311) + 40|0); + $1313 = $1312; + $1314 = $1313; + $1315 = HEAP32[$1314>>2]|0; + $1316 = (($1313) + 4)|0; + $1317 = $1316; + $1318 = HEAP32[$1317>>2]|0; + $1319 = HEAP32[$pLevel>>2]|0; + $1320 = (($1319) + 64|0); + $1321 = $1320; + $1322 = $1321; + $1323 = HEAP32[$1322>>2]|0; + $1324 = (($1321) + 4)|0; + $1325 = $1324; + $1326 = HEAP32[$1325>>2]|0; + $1327 = $1315 & $1323; + $1328 = $1318 & $1326; + $1329 = ($1327|0)!=(0); + $1330 = ($1328|0)!=(0); + $1331 = $1329 | $1330; + if ($1331) { + $1332 = HEAP32[$3>>2]|0; + $1333 = (($1332) + 39|0); + HEAP8[$1333>>0] = 1; + break; + } + $1334 = HEAP32[$pTerm>>2]|0; + $1335 = HEAP32[$1334>>2]|0; + HEAP32[$pE>>2] = $1335; + $1336 = HEAP32[$pLevel>>2]|0; + $1337 = HEAP32[$1336>>2]|0; + $1338 = ($1337|0)!=(0); + if ($1338) { + $1339 = HEAP32[$pE>>2]|0; + $1340 = (($1339) + 4|0); + $1341 = HEAP32[$1340>>2]|0; + $1342 = $1341 & 1; + $1343 = ($1342|0)!=(0); + if (!($1343)) { + break; + } + } + $1344 = HEAP32[$pParse>>2]|0; + $1345 = HEAP32[$pE>>2]|0; + $1346 = HEAP32[$addrCont>>2]|0; + _sqlite3ExprIfFalse($1344,$1345,$1346,8); + $1347 = HEAP32[$pTerm>>2]|0; + $1348 = (($1347) + 20|0); + $1349 = HEAP8[$1348>>0]|0; + $1350 = $1349&255; + $1351 = $1350 | 4; + $1352 = $1351&255; + HEAP8[$1348>>0] = $1352; + } + } while(0); + $1353 = HEAP32[$j>>2]|0; + $1354 = (($1353) + -1)|0; + HEAP32[$j>>2] = $1354; + $1355 = HEAP32[$pTerm>>2]|0; + $1356 = (($1355) + 48|0); + HEAP32[$pTerm>>2] = $1356; + } + $1357 = HEAP32[$pWC>>2]|0; + $1358 = (($1357) + 20|0); + $1359 = HEAP32[$1358>>2]|0; + HEAP32[$pTerm>>2] = $1359; + $1360 = HEAP32[$pWC>>2]|0; + $1361 = (($1360) + 12|0); + $1362 = HEAP32[$1361>>2]|0; + HEAP32[$j>>2] = $1362; + while(1) { + $1363 = HEAP32[$j>>2]|0; + $1364 = ($1363|0)>(0); + if (!($1364)) { + break; + } + $1365 = HEAP32[$pTerm>>2]|0; + $1366 = (($1365) + 20|0); + $1367 = HEAP8[$1366>>0]|0; + $1368 = $1367&255; + $1369 = $1368 & 6; + $1370 = ($1369|0)!=(0); + if (!($1370)) { + $1371 = HEAP32[$pTerm>>2]|0; + $1372 = (($1371) + 18|0); + $1373 = HEAP16[$1372>>1]|0; + $1374 = $1373&65535; + $1375 = ($1374|0)!=(1026); + if (!($1375)) { + $1376 = HEAP32[$pTerm>>2]|0; + $1377 = (($1376) + 8|0); + $1378 = HEAP32[$1377>>2]|0; + $1379 = HEAP32[$iCur>>2]|0; + $1380 = ($1378|0)!=($1379|0); + if (!($1380)) { + $1381 = HEAP32[$pLevel>>2]|0; + $1382 = HEAP32[$1381>>2]|0; + $1383 = ($1382|0)!=(0); + if (!($1383)) { + $1384 = HEAP32[$pTerm>>2]|0; + $1385 = HEAP32[$1384>>2]|0; + HEAP32[$pE7>>2] = $1385; + $1386 = HEAP32[$pWC>>2]|0; + $1387 = HEAP32[$iCur>>2]|0; + $1388 = HEAP32[$pTerm>>2]|0; + $1389 = (($1388) + 12|0); + $1390 = HEAP32[$1389>>2]|0; + $1391 = $5; + $1392 = $1391; + $1393 = HEAP32[$1392>>2]|0; + $1394 = (($1391) + 4)|0; + $1395 = $1394; + $1396 = HEAP32[$1395>>2]|0; + $1397 = (_findTerm($1386,$1387,$1390,$1393,$1396,3,0)|0); + HEAP32[$pAlt>>2] = $1397; + $1398 = HEAP32[$pAlt>>2]|0; + $1399 = ($1398|0)==(0|0); + if (!($1399)) { + $1400 = HEAP32[$pAlt>>2]|0; + $1401 = (($1400) + 20|0); + $1402 = HEAP8[$1401>>0]|0; + $1403 = $1402&255; + $1404 = $1403 & 4; + $1405 = ($1404|0)!=(0); + if (!($1405)) { + $1406 = HEAP32[$db>>2]|0; + $1407 = (_sqlite3DbMallocRaw($1406,48)|0); + HEAP32[$pEAlt>>2] = $1407; + $1408 = HEAP32[$pEAlt>>2]|0; + $1409 = ($1408|0)!=(0|0); + if ($1409) { + $1410 = HEAP32[$pEAlt>>2]|0; + $1411 = HEAP32[$pAlt>>2]|0; + $1412 = HEAP32[$1411>>2]|0; + dest=$1410+0|0; src=$1412+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $1413 = HEAP32[$pE7>>2]|0; + $1414 = (($1413) + 12|0); + $1415 = HEAP32[$1414>>2]|0; + $1416 = HEAP32[$pEAlt>>2]|0; + $1417 = (($1416) + 12|0); + HEAP32[$1417>>2] = $1415; + $1418 = HEAP32[$pParse>>2]|0; + $1419 = HEAP32[$pEAlt>>2]|0; + $1420 = HEAP32[$addrCont>>2]|0; + _sqlite3ExprIfFalse($1418,$1419,$1420,8); + $1421 = HEAP32[$db>>2]|0; + $1422 = HEAP32[$pEAlt>>2]|0; + _sqlite3DbFree($1421,$1422); + } + } + } + } + } + } + } + $1423 = HEAP32[$j>>2]|0; + $1424 = (($1423) + -1)|0; + HEAP32[$j>>2] = $1424; + $1425 = HEAP32[$pTerm>>2]|0; + $1426 = (($1425) + 48|0); + HEAP32[$pTerm>>2] = $1426; + } + $1427 = HEAP32[$pLevel>>2]|0; + $1428 = HEAP32[$1427>>2]|0; + $1429 = ($1428|0)!=(0); + L276: do { + if ($1429) { + $1430 = HEAP32[$v>>2]|0; + $1431 = (_sqlite3VdbeCurrentAddr($1430)|0); + $1432 = HEAP32[$pLevel>>2]|0; + $1433 = (($1432) + 28|0); + HEAP32[$1433>>2] = $1431; + $1434 = HEAP32[$v>>2]|0; + $1435 = HEAP32[$pLevel>>2]|0; + $1436 = HEAP32[$1435>>2]|0; + (_sqlite3VdbeAddOp2($1434,25,1,$1436)|0); + $1437 = HEAP32[$pParse>>2]|0; + _sqlite3ExprCacheClear($1437); + $1438 = HEAP32[$pWC>>2]|0; + $1439 = (($1438) + 20|0); + $1440 = HEAP32[$1439>>2]|0; + HEAP32[$pTerm>>2] = $1440; + HEAP32[$j>>2] = 0; + while(1) { + $1441 = HEAP32[$j>>2]|0; + $1442 = HEAP32[$pWC>>2]|0; + $1443 = (($1442) + 12|0); + $1444 = HEAP32[$1443>>2]|0; + $1445 = ($1441|0)<($1444|0); + if (!($1445)) { + break L276; + } + $1446 = HEAP32[$pTerm>>2]|0; + $1447 = (($1446) + 20|0); + $1448 = HEAP8[$1447>>0]|0; + $1449 = $1448&255; + $1450 = $1449 & 6; + $1451 = ($1450|0)!=(0); + if (!($1451)) { + $1452 = HEAP32[$pTerm>>2]|0; + $1453 = (($1452) + 40|0); + $1454 = $1453; + $1455 = $1454; + $1456 = HEAP32[$1455>>2]|0; + $1457 = (($1454) + 4)|0; + $1458 = $1457; + $1459 = HEAP32[$1458>>2]|0; + $1460 = HEAP32[$pLevel>>2]|0; + $1461 = (($1460) + 64|0); + $1462 = $1461; + $1463 = $1462; + $1464 = HEAP32[$1463>>2]|0; + $1465 = (($1462) + 4)|0; + $1466 = $1465; + $1467 = HEAP32[$1466>>2]|0; + $1468 = $1456 & $1464; + $1469 = $1459 & $1467; + $1470 = ($1468|0)!=(0); + $1471 = ($1469|0)!=(0); + $1472 = $1470 | $1471; + if (!($1472)) { + $1473 = HEAP32[$pParse>>2]|0; + $1474 = HEAP32[$pTerm>>2]|0; + $1475 = HEAP32[$1474>>2]|0; + $1476 = HEAP32[$addrCont>>2]|0; + _sqlite3ExprIfFalse($1473,$1475,$1476,8); + $1477 = HEAP32[$pTerm>>2]|0; + $1478 = (($1477) + 20|0); + $1479 = HEAP8[$1478>>0]|0; + $1480 = $1479&255; + $1481 = $1480 | 4; + $1482 = $1481&255; + HEAP8[$1478>>0] = $1482; + } + } + $1483 = HEAP32[$j>>2]|0; + $1484 = (($1483) + 1)|0; + HEAP32[$j>>2] = $1484; + $1485 = HEAP32[$pTerm>>2]|0; + $1486 = (($1485) + 48|0); + HEAP32[$pTerm>>2] = $1486; + } + } + } while(0); + $1487 = HEAP32[$pLevel>>2]|0; + $1488 = (($1487) + 64|0); + $1489 = $1488; + $1490 = $1489; + $1491 = HEAP32[$1490>>2]|0; + $1492 = (($1489) + 4)|0; + $1493 = $1492; + $1494 = HEAP32[$1493>>2]|0; + $1495 = $2; + $1496 = $1495; + HEAP32[$1496>>2] = $1491; + $1497 = (($1495) + 4)|0; + $1498 = $1497; + HEAP32[$1498>>2] = $1494; + $1499 = $2; + $1500 = $1499; + $1501 = HEAP32[$1500>>2]|0; + $1502 = (($1499) + 4)|0; + $1503 = $1502; + $1504 = HEAP32[$1503>>2]|0; + tempRet0 = $1504; + STACKTOP = sp;return ($1501|0); +} +function _codeEqualityTerm($pParse,$pTerm,$pLevel,$iEq,$bRev,$iTarget) { + $pParse = $pParse|0; + $pTerm = $pTerm|0; + $pLevel = $pLevel|0; + $iEq = $iEq|0; + $bRev = $bRev|0; + $iTarget = $iTarget|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $eType = 0, $iReg = 0, $iTab = 0, $pIn = 0, $pLoop = 0, $pX = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 48|0; + $1 = sp + 44|0; + $2 = sp + 40|0; + $3 = sp + 36|0; + $4 = sp + 32|0; + $5 = sp + 28|0; + $pX = sp + 24|0; + $v = sp + 16|0; + $iReg = sp + 12|0; + $eType = sp + 8|0; + $iTab = sp + 4|0; + $pIn = sp; + $pLoop = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTerm; + HEAP32[$2>>2] = $pLevel; + HEAP32[$3>>2] = $iEq; + HEAP32[$4>>2] = $bRev; + HEAP32[$5>>2] = $iTarget; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$pX>>2] = $7; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 8|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$v>>2] = $10; + $11 = HEAP32[$pX>>2]|0; + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = ($13|0)==(79); + if ($14) { + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$pX>>2]|0; + $17 = (($16) + 16|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$5>>2]|0; + $20 = (_sqlite3ExprCodeTarget($15,$18,$19)|0); + HEAP32[$iReg>>2] = $20; + $137 = HEAP32[$2>>2]|0; + $138 = HEAP32[$1>>2]|0; + _disableTerm($137,$138); + $139 = HEAP32[$iReg>>2]|0; + STACKTOP = sp;return ($139|0); + } + $21 = HEAP32[$pX>>2]|0; + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = ($23|0)==(76); + if ($24) { + $25 = HEAP32[$5>>2]|0; + HEAP32[$iReg>>2] = $25; + $26 = HEAP32[$v>>2]|0; + $27 = HEAP32[$iReg>>2]|0; + (_sqlite3VdbeAddOp2($26,28,0,$27)|0); + $137 = HEAP32[$2>>2]|0; + $138 = HEAP32[$1>>2]|0; + _disableTerm($137,$138); + $139 = HEAP32[$iReg>>2]|0; + STACKTOP = sp;return ($139|0); + } + $28 = HEAP32[$2>>2]|0; + $29 = (($28) + 56|0); + $30 = HEAP32[$29>>2]|0; + HEAP32[$pLoop>>2] = $30; + $31 = HEAP32[$pLoop>>2]|0; + $32 = (($31) + 36|0); + $33 = HEAP32[$32>>2]|0; + $34 = $33 & 1024; + $35 = ($34|0)==(0); + if ($35) { + $36 = HEAP32[$pLoop>>2]|0; + $37 = (($36) + 24|0); + $38 = (($37) + 4|0); + $39 = HEAP32[$38>>2]|0; + $40 = ($39|0)!=(0|0); + if ($40) { + $41 = HEAP32[$3>>2]|0; + $42 = HEAP32[$pLoop>>2]|0; + $43 = (($42) + 24|0); + $44 = (($43) + 4|0); + $45 = HEAP32[$44>>2]|0; + $46 = (($45) + 28|0); + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + ($41)|0); + $49 = HEAP8[$48>>0]|0; + $50 = $49&255; + $51 = ($50|0)!=(0); + if ($51) { + $52 = HEAP32[$4>>2]|0; + $53 = ($52|0)!=(0); + $54 = $53 ^ 1; + $55 = $54&1; + HEAP32[$4>>2] = $55; + } + } + } + $56 = HEAP32[$5>>2]|0; + HEAP32[$iReg>>2] = $56; + $57 = HEAP32[$0>>2]|0; + $58 = HEAP32[$pX>>2]|0; + $59 = (_sqlite3FindInIndex($57,$58,0)|0); + HEAP32[$eType>>2] = $59; + $60 = HEAP32[$eType>>2]|0; + $61 = ($60|0)==(4); + if ($61) { + $62 = HEAP32[$4>>2]|0; + $63 = ($62|0)!=(0); + $64 = $63 ^ 1; + $65 = $64&1; + HEAP32[$4>>2] = $65; + } + $66 = HEAP32[$pX>>2]|0; + $67 = (($66) + 28|0); + $68 = HEAP32[$67>>2]|0; + HEAP32[$iTab>>2] = $68; + $69 = HEAP32[$v>>2]|0; + $70 = HEAP32[$4>>2]|0; + $71 = ($70|0)!=(0); + $72 = $71 ? 102 : 105; + $73 = HEAP32[$iTab>>2]|0; + (_sqlite3VdbeAddOp2($69,$72,$73,0)|0); + $74 = HEAP32[$pLoop>>2]|0; + $75 = (($74) + 36|0); + $76 = HEAP32[$75>>2]|0; + $77 = $76 | 2048; + HEAP32[$75>>2] = $77; + $78 = HEAP32[$2>>2]|0; + $79 = (($78) + 48|0); + $80 = HEAP32[$79>>2]|0; + $81 = ($80|0)==(0); + if ($81) { + $82 = HEAP32[$v>>2]|0; + $83 = (_sqlite3VdbeMakeLabel($82)|0); + $84 = HEAP32[$2>>2]|0; + $85 = (($84) + 16|0); + HEAP32[$85>>2] = $83; + } + $86 = HEAP32[$2>>2]|0; + $87 = (($86) + 48|0); + $88 = HEAP32[$87>>2]|0; + $89 = (($88) + 1)|0; + HEAP32[$87>>2] = $89; + $90 = HEAP32[$0>>2]|0; + $91 = HEAP32[$90>>2]|0; + $92 = HEAP32[$2>>2]|0; + $93 = (($92) + 48|0); + $94 = (($93) + 4|0); + $95 = HEAP32[$94>>2]|0; + $96 = HEAP32[$2>>2]|0; + $97 = (($96) + 48|0); + $98 = HEAP32[$97>>2]|0; + $99 = ($98*12)|0; + $100 = (_sqlite3DbReallocOrFree($91,$95,$99)|0); + $101 = HEAP32[$2>>2]|0; + $102 = (($101) + 48|0); + $103 = (($102) + 4|0); + HEAP32[$103>>2] = $100; + $104 = HEAP32[$2>>2]|0; + $105 = (($104) + 48|0); + $106 = (($105) + 4|0); + $107 = HEAP32[$106>>2]|0; + HEAP32[$pIn>>2] = $107; + $108 = HEAP32[$pIn>>2]|0; + $109 = ($108|0)!=(0|0); + $110 = HEAP32[$2>>2]|0; + $111 = (($110) + 48|0); + if (!($109)) { + HEAP32[$111>>2] = 0; + $137 = HEAP32[$2>>2]|0; + $138 = HEAP32[$1>>2]|0; + _disableTerm($137,$138); + $139 = HEAP32[$iReg>>2]|0; + STACKTOP = sp;return ($139|0); + } + $112 = HEAP32[$111>>2]|0; + $113 = (($112) - 1)|0; + $114 = HEAP32[$pIn>>2]|0; + $115 = (($114) + (($113*12)|0)|0); + HEAP32[$pIn>>2] = $115; + $116 = HEAP32[$iTab>>2]|0; + $117 = HEAP32[$pIn>>2]|0; + HEAP32[$117>>2] = $116; + $118 = HEAP32[$eType>>2]|0; + $119 = ($118|0)==(1); + $120 = HEAP32[$v>>2]|0; + $121 = HEAP32[$iTab>>2]|0; + $122 = HEAP32[$iReg>>2]|0; + if ($119) { + $123 = (_sqlite3VdbeAddOp2($120,100,$121,$122)|0); + $124 = HEAP32[$pIn>>2]|0; + $125 = (($124) + 4|0); + HEAP32[$125>>2] = $123; + } else { + $126 = (_sqlite3VdbeAddOp3($120,46,$121,0,$122)|0); + $127 = HEAP32[$pIn>>2]|0; + $128 = (($127) + 4|0); + HEAP32[$128>>2] = $126; + } + $129 = HEAP32[$4>>2]|0; + $130 = ($129|0)!=(0); + $131 = $130 ? 6 : 7; + $132 = $131&255; + $133 = HEAP32[$pIn>>2]|0; + $134 = (($133) + 8|0); + HEAP8[$134>>0] = $132; + $135 = HEAP32[$v>>2]|0; + $136 = HEAP32[$iReg>>2]|0; + (_sqlite3VdbeAddOp1($135,76,$136)|0); + $137 = HEAP32[$2>>2]|0; + $138 = HEAP32[$1>>2]|0; + _disableTerm($137,$138); + $139 = HEAP32[$iReg>>2]|0; + STACKTOP = sp;return ($139|0); +} +function _disableTerm($pLevel,$pTerm) { + $pLevel = $pLevel|0; + $pTerm = $pTerm|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $pOther = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pOther = sp + 4|0; + HEAP32[$0>>2] = $pLevel; + HEAP32[$1>>2] = $pTerm; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 20|0); + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = $7 & 4; + $9 = ($8|0)==(0); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)==(0); + if (!($12)) { + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = $16 & 1; + $18 = ($17|0)!=(0); + if (!($18)) { + STACKTOP = sp;return; + } + } + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 64|0); + $21 = $20; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (($21) + 4)|0; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 40|0); + $29 = $28; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = (($29) + 4)|0; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = $23 & $31; + $36 = $26 & $34; + $37 = ($35|0)==(0); + $38 = ($36|0)==(0); + $39 = $37 & $38; + if (!($39)) { + STACKTOP = sp;return; + } + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 20|0); + $42 = HEAP8[$41>>0]|0; + $43 = $42&255; + $44 = $43 | 4; + $45 = $44&255; + HEAP8[$41>>0] = $45; + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 4|0); + $48 = HEAP32[$47>>2]|0; + $49 = ($48|0)>=(0); + if (!($49)) { + STACKTOP = sp;return; + } + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 4|0); + $52 = HEAP32[$51>>2]|0; + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 24|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + 20|0); + $57 = HEAP32[$56>>2]|0; + $58 = (($57) + (($52*48)|0)|0); + HEAP32[$pOther>>2] = $58; + $59 = HEAP32[$pOther>>2]|0; + $60 = (($59) + 21|0); + $61 = HEAP8[$60>>0]|0; + $62 = (($61) + -1)<<24>>24; + HEAP8[$60>>0] = $62; + $63 = $62&255; + $64 = ($63|0)==(0); + if (!($64)) { + STACKTOP = sp;return; + } + $65 = HEAP32[$0>>2]|0; + $66 = HEAP32[$pOther>>2]|0; + _disableTerm($65,$66); + STACKTOP = sp;return; +} +function _codeAllEqualityTerms($pParse,$pLevel,$bRev,$nExtraReg,$pzAff) { + $pParse = $pParse|0; + $pLevel = $pLevel|0; + $bRev = $bRev|0; + $nExtraReg = $nExtraReg|0; + $pzAff = $pzAff|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $17 = 0, $18 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iIdxCur = 0, $j = 0, $nEq = 0, $nReg = 0, $nSkip = 0, $pIdx = 0, $pLoop = 0, $pRight = 0, $pTerm = 0, $r1 = 0, $regBase = 0; + var $v = 0, $zAff = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 60|0; + $1 = sp + 44|0; + $2 = sp + 56|0; + $3 = sp + 52|0; + $4 = sp + 48|0; + $nEq = sp + 64|0; + $nSkip = sp + 66|0; + $v = sp + 40|0; + $pIdx = sp + 36|0; + $pTerm = sp + 32|0; + $pLoop = sp + 24|0; + $j = sp + 20|0; + $regBase = sp + 16|0; + $nReg = sp + 12|0; + $zAff = sp + 8|0; + $iIdxCur = sp + 4|0; + $r1 = sp; + $pRight = sp + 28|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pLevel; + HEAP32[$2>>2] = $bRev; + HEAP32[$3>>2] = $nExtraReg; + HEAP32[$4>>2] = $pzAff; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 8|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$v>>2] = $7; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 56|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$pLoop>>2] = $10; + $11 = HEAP32[$pLoop>>2]|0; + $12 = (($11) + 24|0); + $13 = HEAP16[$12>>1]|0; + HEAP16[$nEq>>1] = $13; + $14 = HEAP32[$pLoop>>2]|0; + $15 = (($14) + 24|0); + $16 = (($15) + 2|0); + $17 = HEAP16[$16>>1]|0; + HEAP16[$nSkip>>1] = $17; + $18 = HEAP32[$pLoop>>2]|0; + $19 = (($18) + 24|0); + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$pIdx>>2] = $21; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 72|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + 1)|0; + HEAP32[$regBase>>2] = $25; + $26 = HEAP32[$pLoop>>2]|0; + $27 = (($26) + 24|0); + $28 = HEAP16[$27>>1]|0; + $29 = $28&65535; + $30 = HEAP32[$3>>2]|0; + $31 = (($29) + ($30))|0; + HEAP32[$nReg>>2] = $31; + $32 = HEAP32[$nReg>>2]|0; + $33 = HEAP32[$0>>2]|0; + $34 = (($33) + 72|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + ($32))|0; + HEAP32[$34>>2] = $36; + $37 = HEAP32[$0>>2]|0; + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$v>>2]|0; + $40 = HEAP32[$pIdx>>2]|0; + $41 = (_sqlite3IndexAffinityStr($39,$40)|0); + $42 = (_sqlite3DbStrDup($38,$41)|0); + HEAP32[$zAff>>2] = $42; + $43 = HEAP32[$zAff>>2]|0; + $44 = ($43|0)!=(0|0); + if (!($44)) { + $45 = HEAP32[$0>>2]|0; + $46 = HEAP32[$45>>2]|0; + $47 = (($46) + 64|0); + HEAP8[$47>>0] = 1; + } + $48 = HEAP16[$nSkip>>1]|0; + $49 = ($48<<16>>16)!=(0); + L4: do { + if ($49) { + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 8|0); + $52 = HEAP32[$51>>2]|0; + HEAP32[$iIdxCur>>2] = $52; + $53 = HEAP32[$v>>2]|0; + $54 = HEAP32[$2>>2]|0; + $55 = ($54|0)!=(0); + $56 = $55 ? 102 : 105; + $57 = HEAP32[$iIdxCur>>2]|0; + (_sqlite3VdbeAddOp1($53,$56,$57)|0); + $58 = HEAP32[$v>>2]|0; + $59 = (_sqlite3VdbeAddOp0($58,16)|0); + HEAP32[$j>>2] = $59; + $60 = HEAP32[$v>>2]|0; + $61 = HEAP32[$2>>2]|0; + $62 = ($61|0)!=(0); + $63 = $62 ? 59 : 62; + $64 = HEAP32[$iIdxCur>>2]|0; + $65 = HEAP32[$regBase>>2]|0; + $66 = HEAP16[$nSkip>>1]|0; + $67 = $66&65535; + $68 = (_sqlite3VdbeAddOp4Int($60,$63,$64,0,$65,$67)|0); + $69 = HEAP32[$1>>2]|0; + $70 = (($69) + 20|0); + HEAP32[$70>>2] = $68; + $71 = HEAP32[$v>>2]|0; + $72 = HEAP32[$j>>2]|0; + _sqlite3VdbeJumpHere($71,$72); + HEAP32[$j>>2] = 0; + while(1) { + $73 = HEAP32[$j>>2]|0; + $74 = HEAP16[$nSkip>>1]|0; + $75 = $74&65535; + $76 = ($73|0)<($75|0); + if (!($76)) { + break L4; + } + $77 = HEAP32[$v>>2]|0; + $78 = HEAP32[$iIdxCur>>2]|0; + $79 = HEAP32[$j>>2]|0; + $80 = HEAP32[$regBase>>2]|0; + $81 = HEAP32[$j>>2]|0; + $82 = (($80) + ($81))|0; + (_sqlite3VdbeAddOp3($77,46,$78,$79,$82)|0); + $83 = HEAP32[$j>>2]|0; + $84 = (($83) + 1)|0; + HEAP32[$j>>2] = $84; + } + } + } while(0); + $85 = HEAP16[$nSkip>>1]|0; + $86 = $85&65535; + HEAP32[$j>>2] = $86; + while(1) { + $87 = HEAP32[$j>>2]|0; + $88 = HEAP16[$nEq>>1]|0; + $89 = $88&65535; + $90 = ($87|0)<($89|0); + if (!($90)) { + break; + } + $91 = HEAP32[$j>>2]|0; + $92 = HEAP32[$pLoop>>2]|0; + $93 = (($92) + 44|0); + $94 = HEAP32[$93>>2]|0; + $95 = (($94) + ($91<<2)|0); + $96 = HEAP32[$95>>2]|0; + HEAP32[$pTerm>>2] = $96; + $97 = HEAP32[$0>>2]|0; + $98 = HEAP32[$pTerm>>2]|0; + $99 = HEAP32[$1>>2]|0; + $100 = HEAP32[$j>>2]|0; + $101 = HEAP32[$2>>2]|0; + $102 = HEAP32[$regBase>>2]|0; + $103 = HEAP32[$j>>2]|0; + $104 = (($102) + ($103))|0; + $105 = (_codeEqualityTerm($97,$98,$99,$100,$101,$104)|0); + HEAP32[$r1>>2] = $105; + $106 = HEAP32[$r1>>2]|0; + $107 = HEAP32[$regBase>>2]|0; + $108 = HEAP32[$j>>2]|0; + $109 = (($107) + ($108))|0; + $110 = ($106|0)!=($109|0); + do { + if ($110) { + $111 = HEAP32[$nReg>>2]|0; + $112 = ($111|0)==(1); + if ($112) { + $113 = HEAP32[$0>>2]|0; + $114 = HEAP32[$regBase>>2]|0; + _sqlite3ReleaseTempReg($113,$114); + $115 = HEAP32[$r1>>2]|0; + HEAP32[$regBase>>2] = $115; + break; + } else { + $116 = HEAP32[$v>>2]|0; + $117 = HEAP32[$r1>>2]|0; + $118 = HEAP32[$regBase>>2]|0; + $119 = HEAP32[$j>>2]|0; + $120 = (($118) + ($119))|0; + (_sqlite3VdbeAddOp2($116,34,$117,$120)|0); + break; + } + } + } while(0); + $121 = HEAP32[$pTerm>>2]|0; + $122 = (($121) + 18|0); + $123 = HEAP16[$122>>1]|0; + $124 = $123&65535; + $125 = $124 & 129; + $126 = ($125|0)==(0); + if ($126) { + $127 = HEAP32[$pTerm>>2]|0; + $128 = HEAP32[$127>>2]|0; + $129 = (($128) + 16|0); + $130 = HEAP32[$129>>2]|0; + HEAP32[$pRight>>2] = $130; + $131 = HEAP32[$pRight>>2]|0; + $132 = (_sqlite3ExprCanBeNull($131)|0); + $133 = ($132|0)!=(0); + if ($133) { + $134 = HEAP32[$v>>2]|0; + $135 = HEAP32[$regBase>>2]|0; + $136 = HEAP32[$j>>2]|0; + $137 = (($135) + ($136))|0; + $138 = HEAP32[$1>>2]|0; + $139 = (($138) + 12|0); + $140 = HEAP32[$139>>2]|0; + (_sqlite3VdbeAddOp2($134,76,$137,$140)|0); + } + $141 = HEAP32[$zAff>>2]|0; + $142 = ($141|0)!=(0|0); + if ($142) { + $143 = HEAP32[$pRight>>2]|0; + $144 = HEAP32[$j>>2]|0; + $145 = HEAP32[$zAff>>2]|0; + $146 = (($145) + ($144)|0); + $147 = HEAP8[$146>>0]|0; + $148 = (_sqlite3CompareAffinity($143,$147)|0); + $149 = $148 << 24 >> 24; + $150 = ($149|0)==(98); + if ($150) { + $151 = HEAP32[$j>>2]|0; + $152 = HEAP32[$zAff>>2]|0; + $153 = (($152) + ($151)|0); + HEAP8[$153>>0] = 98; + } + $154 = HEAP32[$pRight>>2]|0; + $155 = HEAP32[$j>>2]|0; + $156 = HEAP32[$zAff>>2]|0; + $157 = (($156) + ($155)|0); + $158 = HEAP8[$157>>0]|0; + $159 = (_sqlite3ExprNeedsNoAffinityChange($154,$158)|0); + $160 = ($159|0)!=(0); + if ($160) { + $161 = HEAP32[$j>>2]|0; + $162 = HEAP32[$zAff>>2]|0; + $163 = (($162) + ($161)|0); + HEAP8[$163>>0] = 98; + } + } + } + $164 = HEAP32[$j>>2]|0; + $165 = (($164) + 1)|0; + HEAP32[$j>>2] = $165; + } + $166 = HEAP32[$zAff>>2]|0; + $167 = HEAP32[$4>>2]|0; + HEAP32[$167>>2] = $166; + $168 = HEAP32[$regBase>>2]|0; + STACKTOP = sp;return ($168|0); +} +function _sqlite3ExprCanBeNull($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $op = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + $op = sp + 8|0; + HEAP32[$1>>2] = $p; + while(1) { + $2 = HEAP32[$1>>2]|0; + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = ($4|0)==(158); + if ($5) { + $23 = 1; + } else { + $6 = HEAP32[$1>>2]|0; + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = ($8|0)==(157); + $23 = $9; + } + $10 = HEAP32[$1>>2]|0; + if (!($23)) { + break; + } + $11 = (($10) + 12|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$1>>2] = $12; + } + $13 = HEAP8[$10>>0]|0; + HEAP8[$op>>0] = $13; + $14 = HEAP8[$op>>0]|0; + $15 = $14&255; + $16 = ($15|0)==(159); + if ($16) { + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 38|0); + $19 = HEAP8[$18>>0]|0; + HEAP8[$op>>0] = $19; + } + $20 = HEAP8[$op>>0]|0; + $21 = $20&255; + if ((($21|0) == 134) | (($21|0) == 133) | (($21|0) == 97) | (($21|0) == 132)) { + HEAP32[$0>>2] = 0; + $22 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($22|0); + } else { + HEAP32[$0>>2] = 1; + $22 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($22|0); + } + return 0|0; +} +function _sqlite3ExprNeedsNoAffinityChange($p,$aff) { + $p = $p|0; + $aff = $aff|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; + var $9 = 0, $op = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + $2 = sp + 9|0; + $op = sp + 8|0; + HEAP32[$1>>2] = $p; + HEAP8[$2>>0] = $aff; + $3 = HEAP8[$2>>0]|0; + $4 = $3 << 24 >> 24; + $5 = ($4|0)==(98); + L1: do { + if ($5) { + HEAP32[$0>>2] = 1; + } else { + while(1) { + $6 = HEAP32[$1>>2]|0; + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = ($8|0)==(158); + if ($9) { + $60 = 1; + } else { + $10 = HEAP32[$1>>2]|0; + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = ($12|0)==(157); + $60 = $13; + } + $14 = HEAP32[$1>>2]|0; + if (!($60)) { + break; + } + $15 = (($14) + 12|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$1>>2] = $16; + } + $17 = HEAP8[$14>>0]|0; + HEAP8[$op>>0] = $17; + $18 = HEAP8[$op>>0]|0; + $19 = $18&255; + $20 = ($19|0)==(159); + if ($20) { + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 38|0); + $23 = HEAP8[$22>>0]|0; + HEAP8[$op>>0] = $23; + } + $24 = HEAP8[$op>>0]|0; + $25 = $24&255; + switch ($25|0) { + case 132: { + $26 = HEAP8[$2>>0]|0; + $27 = $26 << 24 >> 24; + $28 = ($27|0)==(100); + if ($28) { + $33 = 1; + } else { + $29 = HEAP8[$2>>0]|0; + $30 = $29 << 24 >> 24; + $31 = ($30|0)==(99); + $33 = $31; + } + $32 = $33&1; + HEAP32[$0>>2] = $32; + break L1; + break; + } + case 134: { + HEAP32[$0>>2] = 1; + break L1; + break; + } + case 133: { + $34 = HEAP8[$2>>0]|0; + $35 = $34 << 24 >> 24; + $36 = ($35|0)==(101); + if ($36) { + $41 = 1; + } else { + $37 = HEAP8[$2>>0]|0; + $38 = $37 << 24 >> 24; + $39 = ($38|0)==(99); + $41 = $39; + } + $40 = $41&1; + HEAP32[$0>>2] = $40; + break L1; + break; + } + case 154: { + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 32|0); + $48 = HEAP16[$47>>1]|0; + $49 = $48 << 16 >> 16; + $50 = ($49|0)<(0); + if ($50) { + $51 = HEAP8[$2>>0]|0; + $52 = $51 << 24 >> 24; + $53 = ($52|0)==(100); + if ($53) { + $58 = 1; + } else { + $54 = HEAP8[$2>>0]|0; + $55 = $54 << 24 >> 24; + $56 = ($55|0)==(99); + $58 = $56; + } + } else { + $58 = 0; + } + $57 = $58&1; + HEAP32[$0>>2] = $57; + break L1; + break; + } + case 97: { + $42 = HEAP8[$2>>0]|0; + $43 = $42 << 24 >> 24; + $44 = ($43|0)==(97); + $45 = $44&1; + HEAP32[$0>>2] = $45; + break L1; + break; + } + default: { + HEAP32[$0>>2] = 0; + break L1; + } + } + } + } while(0); + $59 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($59|0); +} +function _codeApplyAffinity($pParse,$base,$n,$zAff) { + $pParse = $pParse|0; + $base = $base|0; + $n = $n|0; + $zAff = $zAff|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $v = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $base; + HEAP32[$2>>2] = $n; + HEAP32[$3>>2] = $zAff; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$v>>2] = $6; + $7 = HEAP32[$3>>2]|0; + $8 = ($7|0)==(0|0); + if ($8) { + STACKTOP = sp;return; + } + while(1) { + $9 = HEAP32[$2>>2]|0; + $10 = ($9|0)>(0); + if (!($10)) { + break; + } + $11 = HEAP32[$3>>2]|0; + $12 = HEAP8[$11>>0]|0; + $13 = $12 << 24 >> 24; + $14 = ($13|0)==(98); + if (!($14)) { + break; + } + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + -1)|0; + HEAP32[$2>>2] = $16; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 1)|0; + HEAP32[$1>>2] = $18; + $19 = HEAP32[$3>>2]|0; + $20 = (($19) + 1|0); + HEAP32[$3>>2] = $20; + } + while(1) { + $21 = HEAP32[$2>>2]|0; + $22 = ($21|0)>(1); + if ($22) { + $23 = HEAP32[$2>>2]|0; + $24 = (($23) - 1)|0; + $25 = HEAP32[$3>>2]|0; + $26 = (($25) + ($24)|0); + $27 = HEAP8[$26>>0]|0; + $28 = $27 << 24 >> 24; + $29 = ($28|0)==(98); + $42 = $29; + } else { + $42 = 0; + } + $30 = HEAP32[$2>>2]|0; + if (!($42)) { + break; + } + $31 = (($30) + -1)|0; + HEAP32[$2>>2] = $31; + } + $32 = ($30|0)>(0); + if (!($32)) { + STACKTOP = sp;return; + } + $33 = HEAP32[$v>>2]|0; + $34 = HEAP32[$1>>2]|0; + $35 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp2($33,47,$34,$35)|0); + $36 = HEAP32[$v>>2]|0; + $37 = HEAP32[$3>>2]|0; + $38 = HEAP32[$2>>2]|0; + _sqlite3VdbeChangeP4($36,-1,$37,$38); + $39 = HEAP32[$0>>2]|0; + $40 = HEAP32[$1>>2]|0; + $41 = HEAP32[$2>>2]|0; + _sqlite3ExprCacheAffinityChange($39,$40,$41); + STACKTOP = sp;return; +} +function _findTerm($pWC,$iCur,$iColumn,$0,$1,$op,$pIdx) { + $pWC = $pWC|0; + $iCur = $iCur|0; + $iColumn = $iColumn|0; + $0 = $0|0; + $1 = $1|0; + $op = $op|0; + $pIdx = $pIdx|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $7 = 0; + var $8 = 0, $9 = 0, $p = 0, $pResult = 0, $scan = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; + $2 = sp + 152|0; + $3 = sp + 148|0; + $4 = sp + 144|0; + $5 = sp + 140|0; + $6 = sp; + $7 = sp + 136|0; + $8 = sp + 12|0; + $pResult = sp + 8|0; + $p = sp + 16|0; + $scan = sp + 24|0; + HEAP32[$3>>2] = $pWC; + HEAP32[$4>>2] = $iCur; + HEAP32[$5>>2] = $iColumn; + $9 = $6; + $10 = $9; + HEAP32[$10>>2] = $0; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = $1; + HEAP32[$7>>2] = $op; + HEAP32[$8>>2] = $pIdx; + HEAP32[$pResult>>2] = 0; + $13 = HEAP32[$3>>2]|0; + $14 = HEAP32[$4>>2]|0; + $15 = HEAP32[$5>>2]|0; + $16 = HEAP32[$7>>2]|0; + $17 = HEAP32[$8>>2]|0; + $18 = (_whereScanInit($scan,$13,$14,$15,$16,$17)|0); + HEAP32[$p>>2] = $18; + while(1) { + $19 = HEAP32[$p>>2]|0; + $20 = ($19|0)!=(0|0); + if (!($20)) { + label = 10; + break; + } + $21 = HEAP32[$p>>2]|0; + $22 = (($21) + 32|0); + $23 = $22; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = (($23) + 4)|0; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = $6; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = (($29) + 4)|0; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = $25 & $31; + $36 = $28 & $34; + $37 = ($35|0)==(0); + $38 = ($36|0)==(0); + $39 = $37 & $38; + if ($39) { + $40 = HEAP32[$p>>2]|0; + $41 = (($40) + 32|0); + $42 = $41; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = ($44|0)==(0); + $49 = ($47|0)==(0); + $50 = $48 & $49; + if ($50) { + $51 = HEAP32[$p>>2]|0; + $52 = (($51) + 18|0); + $53 = HEAP16[$52>>1]|0; + $54 = $53&65535; + $55 = $54 & 2; + $56 = ($55|0)!=(0); + if ($56) { + label = 6; + break; + } + } + $58 = HEAP32[$pResult>>2]|0; + $59 = ($58|0)==(0|0); + if ($59) { + $60 = HEAP32[$p>>2]|0; + HEAP32[$pResult>>2] = $60; + } + } + $61 = (_whereScanNext($scan)|0); + HEAP32[$p>>2] = $61; + } + if ((label|0) == 6) { + $57 = HEAP32[$p>>2]|0; + HEAP32[$2>>2] = $57; + $63 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($63|0); + } + else if ((label|0) == 10) { + $62 = HEAP32[$pResult>>2]|0; + HEAP32[$2>>2] = $62; + $63 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($63|0); + } + return 0|0; +} +function _whereScanInit($pScan,$pWC,$iCur,$iColumn,$opMask,$pIdx) { + $pScan = $pScan|0; + $pWC = $pWC|0; + $iCur = $iCur|0; + $iColumn = $iColumn|0; + $opMask = $opMask|0; + $pIdx = $pIdx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $j = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $5 = sp + 16|0; + $6 = sp + 20|0; + $j = sp + 24|0; + HEAP32[$1>>2] = $pScan; + HEAP32[$2>>2] = $pWC; + HEAP32[$3>>2] = $iCur; + HEAP32[$4>>2] = $iColumn; + HEAP32[$5>>2] = $opMask; + HEAP32[$6>>2] = $pIdx; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$1>>2]|0; + HEAP32[$8>>2] = $7; + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 4|0); + HEAP32[$11>>2] = $9; + $12 = HEAP32[$6>>2]|0; + $13 = ($12|0)!=(0|0); + do { + if ($13) { + $14 = HEAP32[$4>>2]|0; + $15 = ($14|0)>=(0); + if ($15) { + $16 = HEAP32[$4>>2]|0; + $17 = HEAP32[$6>>2]|0; + $18 = (($17) + 12|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + (($16*24)|0)|0); + $23 = (($22) + 21|0); + $24 = HEAP8[$23>>0]|0; + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 12|0); + HEAP8[$26>>0] = $24; + HEAP32[$j>>2] = 0; + while(1) { + $27 = HEAP32[$j>>2]|0; + $28 = HEAP32[$6>>2]|0; + $29 = (($28) + 4|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + ($27<<1)|0); + $32 = HEAP16[$31>>1]|0; + $33 = $32 << 16 >> 16; + $34 = HEAP32[$4>>2]|0; + $35 = ($33|0)!=($34|0); + $36 = HEAP32[$j>>2]|0; + $37 = HEAP32[$6>>2]|0; + if (!($35)) { + label = 8; + break; + } + $38 = (($37) + 50|0); + $39 = HEAP16[$38>>1]|0; + $40 = $39&65535; + $41 = ($36|0)>=($40|0); + if ($41) { + break; + } + $42 = HEAP32[$j>>2]|0; + $43 = (($42) + 1)|0; + HEAP32[$j>>2] = $43; + } + if ((label|0) == 8) { + $44 = (($37) + 32|0); + $45 = HEAP32[$44>>2]|0; + $46 = (($45) + ($36<<2)|0); + $47 = HEAP32[$46>>2]|0; + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + 8|0); + HEAP32[$49>>2] = $47; + break; + } + HEAP32[$0>>2] = 0; + $72 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($72|0); + } else { + label = 9; + } + } else { + label = 9; + } + } while(0); + if ((label|0) == 9) { + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 12|0); + HEAP8[$51>>0] = 0; + $52 = HEAP32[$1>>2]|0; + $53 = (($52) + 8|0); + HEAP32[$53>>2] = 0; + } + $54 = HEAP32[$5>>2]|0; + $55 = HEAP32[$1>>2]|0; + $56 = (($55) + 16|0); + HEAP32[$56>>2] = $54; + $57 = HEAP32[$1>>2]|0; + $58 = (($57) + 20|0); + HEAP32[$58>>2] = 0; + $59 = HEAP32[$3>>2]|0; + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 24|0); + HEAP32[$61>>2] = $59; + $62 = HEAP32[$4>>2]|0; + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + 24|0); + $65 = (($64) + 4|0); + HEAP32[$65>>2] = $62; + $66 = HEAP32[$1>>2]|0; + $67 = (($66) + 13|0); + HEAP8[$67>>0] = 2; + $68 = HEAP32[$1>>2]|0; + $69 = (($68) + 14|0); + HEAP8[$69>>0] = 2; + $70 = HEAP32[$1>>2]|0; + $71 = (_whereScanNext($70)|0); + HEAP32[$0>>2] = $71; + $72 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($72|0); +} +function _whereScanNext($pScan) { + $pScan = $pScan|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iColumn = 0, $iCur = 0, $j = 0, $k = 0, $pColl = 0, $pParse = 0, $pTerm = 0, $pWC = 0, $pX = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $iCur = sp + 32|0; + $iColumn = sp + 28|0; + $pX = sp + 24|0; + $pWC = sp + 20|0; + $pTerm = sp + 12|0; + $k = sp + 8|0; + $j = sp + 4|0; + $pColl = sp; + $pParse = sp + 16|0; + HEAP32[$1>>2] = $pScan; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 20|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$k>>2] = $4; + L1: while(1) { + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 14|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 13|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = ($8|0)<=($12|0); + if (!($13)) { + label = 35; + break; + } + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 14|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = (($17) - 2)|0; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 24|0); + $21 = (($20) + ($18<<2)|0); + $22 = HEAP32[$21>>2]|0; + HEAP32[$iCur>>2] = $22; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 14|0); + $25 = HEAP8[$24>>0]|0; + $26 = $25&255; + $27 = (($26) - 1)|0; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 24|0); + $30 = (($29) + ($27<<2)|0); + $31 = HEAP32[$30>>2]|0; + HEAP32[$iColumn>>2] = $31; + while(1) { + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 4|0); + $34 = HEAP32[$33>>2]|0; + HEAP32[$pWC>>2] = $34; + $35 = ($34|0)!=(0|0); + if (!($35)) { + break; + } + $36 = HEAP32[$pWC>>2]|0; + $37 = (($36) + 20|0); + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$k>>2]|0; + $40 = (($38) + (($39*48)|0)|0); + HEAP32[$pTerm>>2] = $40; + while(1) { + $41 = HEAP32[$k>>2]|0; + $42 = HEAP32[$pWC>>2]|0; + $43 = (($42) + 12|0); + $44 = HEAP32[$43>>2]|0; + $45 = ($41|0)<($44|0); + if (!($45)) { + break; + } + $46 = HEAP32[$pTerm>>2]|0; + $47 = (($46) + 8|0); + $48 = HEAP32[$47>>2]|0; + $49 = HEAP32[$iCur>>2]|0; + $50 = ($48|0)==($49|0); + do { + if ($50) { + $51 = HEAP32[$pTerm>>2]|0; + $52 = (($51) + 12|0); + $53 = HEAP32[$52>>2]|0; + $54 = HEAP32[$iColumn>>2]|0; + $55 = ($53|0)==($54|0); + if ($55) { + $56 = HEAP32[$1>>2]|0; + $57 = (($56) + 14|0); + $58 = HEAP8[$57>>0]|0; + $59 = $58&255; + $60 = ($59|0)<=(2); + if (!($60)) { + $61 = HEAP32[$pTerm>>2]|0; + $62 = HEAP32[$61>>2]|0; + $63 = (($62) + 4|0); + $64 = HEAP32[$63>>2]|0; + $65 = $64 & 1; + $66 = ($65|0)!=(0); + if ($66) { + break; + } + } + $67 = HEAP32[$pTerm>>2]|0; + $68 = (($67) + 18|0); + $69 = HEAP16[$68>>1]|0; + $70 = $69&65535; + $71 = $70 & 1024; + $72 = ($71|0)!=(0); + if ($72) { + $73 = HEAP32[$1>>2]|0; + $74 = (($73) + 13|0); + $75 = HEAP8[$74>>0]|0; + $76 = $75&255; + $77 = ($76|0)<(22); + if ($77) { + $78 = HEAP32[$pTerm>>2]|0; + $79 = HEAP32[$78>>2]|0; + $80 = (($79) + 16|0); + $81 = HEAP32[$80>>2]|0; + $82 = (_sqlite3ExprSkipCollate($81)|0); + HEAP32[$pX>>2] = $82; + HEAP32[$j>>2] = 0; + while(1) { + $83 = HEAP32[$j>>2]|0; + $84 = HEAP32[$1>>2]|0; + $85 = (($84) + 13|0); + $86 = HEAP8[$85>>0]|0; + $87 = $86&255; + $88 = ($83|0)<($87|0); + if (!($88)) { + break; + } + $89 = HEAP32[$j>>2]|0; + $90 = HEAP32[$1>>2]|0; + $91 = (($90) + 24|0); + $92 = (($91) + ($89<<2)|0); + $93 = HEAP32[$92>>2]|0; + $94 = HEAP32[$pX>>2]|0; + $95 = (($94) + 28|0); + $96 = HEAP32[$95>>2]|0; + $97 = ($93|0)==($96|0); + if ($97) { + $98 = HEAP32[$j>>2]|0; + $99 = (($98) + 1)|0; + $100 = HEAP32[$1>>2]|0; + $101 = (($100) + 24|0); + $102 = (($101) + ($99<<2)|0); + $103 = HEAP32[$102>>2]|0; + $104 = HEAP32[$pX>>2]|0; + $105 = (($104) + 32|0); + $106 = HEAP16[$105>>1]|0; + $107 = $106 << 16 >> 16; + $108 = ($103|0)==($107|0); + if ($108) { + break; + } + } + $109 = HEAP32[$j>>2]|0; + $110 = (($109) + 2)|0; + HEAP32[$j>>2] = $110; + } + $111 = HEAP32[$j>>2]|0; + $112 = HEAP32[$1>>2]|0; + $113 = (($112) + 13|0); + $114 = HEAP8[$113>>0]|0; + $115 = $114&255; + $116 = ($111|0)==($115|0); + if ($116) { + $117 = HEAP32[$pX>>2]|0; + $118 = (($117) + 28|0); + $119 = HEAP32[$118>>2]|0; + $120 = HEAP32[$j>>2]|0; + $121 = HEAP32[$1>>2]|0; + $122 = (($121) + 24|0); + $123 = (($122) + ($120<<2)|0); + HEAP32[$123>>2] = $119; + $124 = HEAP32[$pX>>2]|0; + $125 = (($124) + 32|0); + $126 = HEAP16[$125>>1]|0; + $127 = $126 << 16 >> 16; + $128 = HEAP32[$j>>2]|0; + $129 = (($128) + 1)|0; + $130 = HEAP32[$1>>2]|0; + $131 = (($130) + 24|0); + $132 = (($131) + ($129<<2)|0); + HEAP32[$132>>2] = $127; + $133 = HEAP32[$1>>2]|0; + $134 = (($133) + 13|0); + $135 = HEAP8[$134>>0]|0; + $136 = $135&255; + $137 = (($136) + 2)|0; + $138 = $137&255; + HEAP8[$134>>0] = $138; + } + } + } + $139 = HEAP32[$pTerm>>2]|0; + $140 = (($139) + 18|0); + $141 = HEAP16[$140>>1]|0; + $142 = $141&65535; + $143 = HEAP32[$1>>2]|0; + $144 = (($143) + 16|0); + $145 = HEAP32[$144>>2]|0; + $146 = $142 & $145; + $147 = ($146|0)!=(0); + if ($147) { + $148 = HEAP32[$1>>2]|0; + $149 = (($148) + 8|0); + $150 = HEAP32[$149>>2]|0; + $151 = ($150|0)!=(0|0); + if ($151) { + $152 = HEAP32[$pTerm>>2]|0; + $153 = (($152) + 18|0); + $154 = HEAP16[$153>>1]|0; + $155 = $154&65535; + $156 = $155 & 128; + $157 = ($156|0)==(0); + if ($157) { + $158 = HEAP32[$pWC>>2]|0; + $159 = HEAP32[$158>>2]|0; + $160 = HEAP32[$159>>2]|0; + HEAP32[$pParse>>2] = $160; + $161 = HEAP32[$pTerm>>2]|0; + $162 = HEAP32[$161>>2]|0; + HEAP32[$pX>>2] = $162; + $163 = HEAP32[$pX>>2]|0; + $164 = HEAP32[$1>>2]|0; + $165 = (($164) + 12|0); + $166 = HEAP8[$165>>0]|0; + $167 = (_sqlite3IndexAffinityOk($163,$166)|0); + $168 = ($167|0)!=(0); + if (!($168)) { + break; + } + $169 = HEAP32[$pParse>>2]|0; + $170 = HEAP32[$pX>>2]|0; + $171 = (($170) + 12|0); + $172 = HEAP32[$171>>2]|0; + $173 = HEAP32[$pX>>2]|0; + $174 = (($173) + 16|0); + $175 = HEAP32[$174>>2]|0; + $176 = (_sqlite3BinaryCompareCollSeq($169,$172,$175)|0); + HEAP32[$pColl>>2] = $176; + $177 = HEAP32[$pColl>>2]|0; + $178 = ($177|0)==(0|0); + if ($178) { + $179 = HEAP32[$pParse>>2]|0; + $180 = HEAP32[$179>>2]|0; + $181 = (($180) + 8|0); + $182 = HEAP32[$181>>2]|0; + HEAP32[$pColl>>2] = $182; + } + $183 = HEAP32[$pColl>>2]|0; + $184 = HEAP32[$183>>2]|0; + $185 = HEAP32[$1>>2]|0; + $186 = (($185) + 8|0); + $187 = HEAP32[$186>>2]|0; + $188 = (_sqlite3_stricmp($184,$187)|0); + $189 = ($188|0)!=(0); + if ($189) { + break; + } + } + } + $190 = HEAP32[$pTerm>>2]|0; + $191 = (($190) + 18|0); + $192 = HEAP16[$191>>1]|0; + $193 = $192&65535; + $194 = $193 & 2; + $195 = ($194|0)!=(0); + if (!($195)) { + label = 31; + break L1; + } + $196 = HEAP32[$pTerm>>2]|0; + $197 = HEAP32[$196>>2]|0; + $198 = (($197) + 16|0); + $199 = HEAP32[$198>>2]|0; + HEAP32[$pX>>2] = $199; + $200 = HEAP8[$199>>0]|0; + $201 = $200&255; + $202 = ($201|0)==(154); + if (!($202)) { + label = 31; + break L1; + } + $203 = HEAP32[$pX>>2]|0; + $204 = (($203) + 28|0); + $205 = HEAP32[$204>>2]|0; + $206 = HEAP32[$1>>2]|0; + $207 = (($206) + 24|0); + $208 = HEAP32[$207>>2]|0; + $209 = ($205|0)==($208|0); + if (!($209)) { + label = 31; + break L1; + } + $210 = HEAP32[$pX>>2]|0; + $211 = (($210) + 32|0); + $212 = HEAP16[$211>>1]|0; + $213 = $212 << 16 >> 16; + $214 = HEAP32[$1>>2]|0; + $215 = (($214) + 24|0); + $216 = (($215) + 4|0); + $217 = HEAP32[$216>>2]|0; + $218 = ($213|0)==($217|0); + if (!($218)) { + label = 31; + break L1; + } + } + } + } + } while(0); + $224 = HEAP32[$k>>2]|0; + $225 = (($224) + 1)|0; + HEAP32[$k>>2] = $225; + $226 = HEAP32[$pTerm>>2]|0; + $227 = (($226) + 48|0); + HEAP32[$pTerm>>2] = $227; + } + $228 = HEAP32[$1>>2]|0; + $229 = (($228) + 4|0); + $230 = HEAP32[$229>>2]|0; + $231 = (($230) + 4|0); + $232 = HEAP32[$231>>2]|0; + $233 = HEAP32[$1>>2]|0; + $234 = (($233) + 4|0); + HEAP32[$234>>2] = $232; + HEAP32[$k>>2] = 0; + } + $235 = HEAP32[$1>>2]|0; + $236 = HEAP32[$235>>2]|0; + $237 = HEAP32[$1>>2]|0; + $238 = (($237) + 4|0); + HEAP32[$238>>2] = $236; + HEAP32[$k>>2] = 0; + $239 = HEAP32[$1>>2]|0; + $240 = (($239) + 14|0); + $241 = HEAP8[$240>>0]|0; + $242 = $241&255; + $243 = (($242) + 2)|0; + $244 = $243&255; + HEAP8[$240>>0] = $244; + } + if ((label|0) == 31) { + $219 = HEAP32[$k>>2]|0; + $220 = (($219) + 1)|0; + $221 = HEAP32[$1>>2]|0; + $222 = (($221) + 20|0); + HEAP32[$222>>2] = $220; + $223 = HEAP32[$pTerm>>2]|0; + HEAP32[$0>>2] = $223; + $245 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($245|0); + } + else if ((label|0) == 35) { + HEAP32[$0>>2] = 0; + $245 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($245|0); + } + return 0|0; +} +function _explainIndexRange($db,$pLoop,$pTab) { + $db = $db|0; + $pLoop = $pLoop|0; + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aCol = 0, $aiColumn = 0, $i = 0, $j = 0, $nEq = 0, $nSkip = 0, $pIndex = 0, $txt = 0, $z = 0, $z1 = 0, $z2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 72|0; + $1 = sp + 56|0; + $2 = sp + 68|0; + $3 = sp + 64|0; + $pIndex = sp + 60|0; + $nEq = sp + 76|0; + $nSkip = sp + 78|0; + $i = sp + 52|0; + $j = sp + 44|0; + $aCol = sp + 40|0; + $aiColumn = sp + 36|0; + $txt = sp + 8|0; + $z = sp + 4|0; + $z1 = sp; + $z2 = sp + 48|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pLoop; + HEAP32[$3>>2] = $pTab; + $4 = HEAP32[$2>>2]|0; + $5 = (($4) + 24|0); + $6 = (($5) + 4|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pIndex>>2] = $7; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 24|0); + $10 = HEAP16[$9>>1]|0; + HEAP16[$nEq>>1] = $10; + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 24|0); + $13 = (($12) + 2|0); + $14 = HEAP16[$13>>1]|0; + HEAP16[$nSkip>>1] = $14; + $15 = HEAP32[$3>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$aCol>>2] = $17; + $18 = HEAP32[$pIndex>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$aiColumn>>2] = $20; + $21 = HEAP16[$nEq>>1]|0; + $22 = $21&65535; + $23 = ($22|0)==(0); + if ($23) { + $24 = HEAP32[$2>>2]|0; + $25 = (($24) + 36|0); + $26 = HEAP32[$25>>2]|0; + $27 = $26 & 48; + $28 = ($27|0)==(0); + if ($28) { + HEAP32[$0>>2] = 0; + $105 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($105|0); + } + } + _sqlite3StrAccumInit($txt,0,0,1000000000); + $29 = HEAP32[$1>>2]|0; + HEAP32[$txt>>2] = $29; + _sqlite3StrAccumAppend($txt,30384,2); + HEAP32[$i>>2] = 0; + while(1) { + $30 = HEAP32[$i>>2]|0; + $31 = HEAP16[$nEq>>1]|0; + $32 = $31&65535; + $33 = ($30|0)<($32|0); + $34 = HEAP32[$i>>2]|0; + if (!($33)) { + break; + } + $35 = HEAP32[$pIndex>>2]|0; + $36 = (($35) + 50|0); + $37 = HEAP16[$36>>1]|0; + $38 = $37&65535; + $39 = ($34|0)==($38|0); + if ($39) { + $48 = 8848; + } else { + $40 = HEAP32[$i>>2]|0; + $41 = HEAP32[$aiColumn>>2]|0; + $42 = (($41) + ($40<<1)|0); + $43 = HEAP16[$42>>1]|0; + $44 = $43 << 16 >> 16; + $45 = HEAP32[$aCol>>2]|0; + $46 = (($45) + (($44*24)|0)|0); + $47 = HEAP32[$46>>2]|0; + $48 = $47; + } + HEAP32[$z>>2] = $48; + $49 = HEAP32[$i>>2]|0; + $50 = HEAP16[$nSkip>>1]|0; + $51 = $50&65535; + $52 = ($49|0)>=($51|0); + $53 = HEAP32[$i>>2]|0; + if ($52) { + $54 = HEAP32[$z>>2]|0; + _explainAppendTerm($txt,$53,$54,30392); + } else { + $55 = ($53|0)!=(0); + if ($55) { + _sqlite3StrAccumAppend($txt,30400,5); + } + _sqlite3StrAccumAppend($txt,30408,4); + $56 = HEAP32[$z>>2]|0; + _sqlite3StrAccumAppendAll($txt,$56); + _sqlite3StrAccumAppend($txt,30416,1); + } + $57 = HEAP32[$i>>2]|0; + $58 = (($57) + 1)|0; + HEAP32[$i>>2] = $58; + } + HEAP32[$j>>2] = $34; + $59 = HEAP32[$2>>2]|0; + $60 = (($59) + 36|0); + $61 = HEAP32[$60>>2]|0; + $62 = $61 & 32; + $63 = ($62|0)!=(0); + if ($63) { + $64 = HEAP32[$j>>2]|0; + $65 = HEAP32[$pIndex>>2]|0; + $66 = (($65) + 50|0); + $67 = HEAP16[$66>>1]|0; + $68 = $67&65535; + $69 = ($64|0)==($68|0); + if ($69) { + $78 = 8848; + } else { + $70 = HEAP32[$j>>2]|0; + $71 = HEAP32[$aiColumn>>2]|0; + $72 = (($71) + ($70<<1)|0); + $73 = HEAP16[$72>>1]|0; + $74 = $73 << 16 >> 16; + $75 = HEAP32[$aCol>>2]|0; + $76 = (($75) + (($74*24)|0)|0); + $77 = HEAP32[$76>>2]|0; + $78 = $77; + } + HEAP32[$z1>>2] = $78; + $79 = HEAP32[$i>>2]|0; + $80 = (($79) + 1)|0; + HEAP32[$i>>2] = $80; + $81 = HEAP32[$z1>>2]|0; + _explainAppendTerm($txt,$79,$81,30424); + } + $82 = HEAP32[$2>>2]|0; + $83 = (($82) + 36|0); + $84 = HEAP32[$83>>2]|0; + $85 = $84 & 16; + $86 = ($85|0)!=(0); + if ($86) { + $87 = HEAP32[$j>>2]|0; + $88 = HEAP32[$pIndex>>2]|0; + $89 = (($88) + 50|0); + $90 = HEAP16[$89>>1]|0; + $91 = $90&65535; + $92 = ($87|0)==($91|0); + if ($92) { + $101 = 8848; + } else { + $93 = HEAP32[$j>>2]|0; + $94 = HEAP32[$aiColumn>>2]|0; + $95 = (($94) + ($93<<1)|0); + $96 = HEAP16[$95>>1]|0; + $97 = $96 << 16 >> 16; + $98 = HEAP32[$aCol>>2]|0; + $99 = (($98) + (($97*24)|0)|0); + $100 = HEAP32[$99>>2]|0; + $101 = $100; + } + HEAP32[$z2>>2] = $101; + $102 = HEAP32[$i>>2]|0; + $103 = HEAP32[$z2>>2]|0; + _explainAppendTerm($txt,$102,$103,30432); + } + _sqlite3StrAccumAppend($txt,30416,1); + $104 = (_sqlite3StrAccumFinish($txt)|0); + HEAP32[$0>>2] = $104; + $105 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($105|0); +} +function _explainAppendTerm($pStr,$iTerm,$zColumn,$zOp) { + $pStr = $pStr|0; + $iTerm = $iTerm|0; + $zColumn = $zColumn|0; + $zOp = $zOp|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $pStr; + HEAP32[$1>>2] = $iTerm; + HEAP32[$2>>2] = $zColumn; + HEAP32[$3>>2] = $zOp; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)!=(0); + if ($5) { + $6 = HEAP32[$0>>2]|0; + _sqlite3StrAccumAppend($6,30400,5); + } + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$2>>2]|0; + _sqlite3StrAccumAppendAll($7,$8); + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$3>>2]|0; + _sqlite3StrAccumAppend($9,$10,1); + $11 = HEAP32[$0>>2]|0; + _sqlite3StrAccumAppend($11,8776,1); + STACKTOP = sp;return; +} +function _termCanDriveIndex($pTerm,$pSrc,$0,$1) { + $pTerm = $pTerm|0; + $pSrc = $pSrc|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $7 = 0, $8 = 0; + var $9 = 0, $aff = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 16|0; + $3 = sp + 12|0; + $4 = sp + 8|0; + $5 = sp; + $aff = sp + 20|0; + HEAP32[$3>>2] = $pTerm; + HEAP32[$4>>2] = $pSrc; + $6 = $5; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + $10 = HEAP32[$3>>2]|0; + $11 = (($10) + 8|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$4>>2]|0; + $14 = (($13) + 40|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($12|0)!=($15|0); + if ($16) { + HEAP32[$2>>2] = 0; + $62 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($62|0); + } + $17 = HEAP32[$3>>2]|0; + $18 = (($17) + 18|0); + $19 = HEAP16[$18>>1]|0; + $20 = $19&65535; + $21 = $20 & 2; + $22 = ($21|0)==(0); + if ($22) { + HEAP32[$2>>2] = 0; + $62 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($62|0); + } + $23 = HEAP32[$3>>2]|0; + $24 = (($23) + 32|0); + $25 = $24; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = $5; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = $27 & $33; + $38 = $30 & $36; + $39 = ($37|0)!=(0); + $40 = ($38|0)!=(0); + $41 = $39 | $40; + if ($41) { + HEAP32[$2>>2] = 0; + $62 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($62|0); + } + $42 = HEAP32[$3>>2]|0; + $43 = (($42) + 12|0); + $44 = HEAP32[$43>>2]|0; + $45 = ($44|0)<(0); + if ($45) { + HEAP32[$2>>2] = 0; + $62 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($62|0); + } + $46 = HEAP32[$3>>2]|0; + $47 = (($46) + 12|0); + $48 = HEAP32[$47>>2]|0; + $49 = HEAP32[$4>>2]|0; + $50 = (($49) + 16|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + 4|0); + $53 = HEAP32[$52>>2]|0; + $54 = (($53) + (($48*24)|0)|0); + $55 = (($54) + 21|0); + $56 = HEAP8[$55>>0]|0; + HEAP8[$aff>>0] = $56; + $57 = HEAP32[$3>>2]|0; + $58 = HEAP32[$57>>2]|0; + $59 = HEAP8[$aff>>0]|0; + $60 = (_sqlite3IndexAffinityOk($58,$59)|0); + $61 = ($60|0)!=(0); + if ($61) { + HEAP32[$2>>2] = 1; + $62 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($62|0); + } else { + HEAP32[$2>>2] = 0; + $62 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($62|0); + } + return 0|0; +} +function _whereLoopResize($db,$p,$n) { + $db = $db|0; + $p = $p|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $paNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $paNew = sp + 12|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $n; + $4 = HEAP32[$2>>2]|0; + $5 = (($4) + 42|0); + $6 = HEAP16[$5>>1]|0; + $7 = $6&65535; + $8 = HEAP32[$3>>2]|0; + $9 = ($7|0)>=($8|0); + if ($9) { + HEAP32[$0>>2] = 0; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); + } + $10 = HEAP32[$3>>2]|0; + $11 = (($10) + 7)|0; + $12 = $11 & -8; + HEAP32[$3>>2] = $12; + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$3>>2]|0; + $15 = $14<<2; + $16 = (_sqlite3DbMallocRaw($13,$15)|0); + HEAP32[$paNew>>2] = $16; + $17 = HEAP32[$paNew>>2]|0; + $18 = ($17|0)==(0|0); + if ($18) { + HEAP32[$0>>2] = 7; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); + } + $19 = HEAP32[$paNew>>2]|0; + $20 = HEAP32[$2>>2]|0; + $21 = (($20) + 44|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$2>>2]|0; + $24 = (($23) + 42|0); + $25 = HEAP16[$24>>1]|0; + $26 = $25&65535; + $27 = $26<<2; + _memcpy(($19|0),($22|0),($27|0))|0; + $28 = HEAP32[$2>>2]|0; + $29 = (($28) + 44|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$2>>2]|0; + $32 = (($31) + 52|0); + $33 = ($30|0)!=($32|0); + if ($33) { + $34 = HEAP32[$1>>2]|0; + $35 = HEAP32[$2>>2]|0; + $36 = (($35) + 44|0); + $37 = HEAP32[$36>>2]|0; + _sqlite3DbFree($34,$37); + } + $38 = HEAP32[$paNew>>2]|0; + $39 = HEAP32[$2>>2]|0; + $40 = (($39) + 44|0); + HEAP32[$40>>2] = $38; + $41 = HEAP32[$3>>2]|0; + $42 = $41&65535; + $43 = HEAP32[$2>>2]|0; + $44 = (($43) + 42|0); + HEAP16[$44>>1] = $42; + HEAP32[$0>>2] = 0; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); +} +function _sqlite3AllocateIndexObject($db,$nCol,$nExtra,$ppExtra) { + $db = $db|0; + $nCol = $nCol|0; + $nExtra = $nExtra|0; + $ppExtra = $ppExtra|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $8 = 0, $9 = 0, $nByte = 0, $p = 0; + var $pExtra = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp + 24|0; + $2 = sp + 4|0; + $3 = sp + 8|0; + $p = sp + 12|0; + $nByte = sp + 16|0; + $pExtra = sp; + HEAP32[$0>>2] = $db; + HEAP16[$1>>1] = $nCol; + HEAP32[$2>>2] = $nExtra; + HEAP32[$3>>2] = $ppExtra; + $4 = HEAP16[$1>>1]|0; + $5 = $4 << 16 >> 16; + $6 = $5<<2; + $7 = (($6) + 7)|0; + $8 = $7 & -8; + $9 = (56 + ($8))|0; + $10 = HEAP16[$1>>1]|0; + $11 = $10 << 16 >> 16; + $12 = (($11) + 1)|0; + $13 = $12<<1; + $14 = HEAP16[$1>>1]|0; + $15 = $14 << 16 >> 16; + $16 = $15<<1; + $17 = (($13) + ($16))|0; + $18 = HEAP16[$1>>1]|0; + $19 = $18 << 16 >> 16; + $20 = $19; + $21 = (($17) + ($20))|0; + $22 = (($21) + 7)|0; + $23 = $22 & -8; + $24 = (($9) + ($23))|0; + HEAP32[$nByte>>2] = $24; + $25 = HEAP32[$0>>2]|0; + $26 = HEAP32[$nByte>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = (($26) + ($27))|0; + $29 = (_sqlite3DbMallocZero($25,$28)|0); + HEAP32[$p>>2] = $29; + $30 = HEAP32[$p>>2]|0; + $31 = ($30|0)!=(0|0); + if (!($31)) { + $77 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($77|0); + } + $32 = HEAP32[$p>>2]|0; + $33 = (($32) + 56|0); + HEAP32[$pExtra>>2] = $33; + $34 = HEAP32[$pExtra>>2]|0; + $35 = HEAP32[$p>>2]|0; + $36 = (($35) + 32|0); + HEAP32[$36>>2] = $34; + $37 = HEAP16[$1>>1]|0; + $38 = $37 << 16 >> 16; + $39 = $38<<2; + $40 = (($39) + 7)|0; + $41 = $40 & -8; + $42 = HEAP32[$pExtra>>2]|0; + $43 = (($42) + ($41)|0); + HEAP32[$pExtra>>2] = $43; + $44 = HEAP32[$pExtra>>2]|0; + $45 = HEAP32[$p>>2]|0; + $46 = (($45) + 8|0); + HEAP32[$46>>2] = $44; + $47 = HEAP16[$1>>1]|0; + $48 = $47 << 16 >> 16; + $49 = (($48) + 1)|0; + $50 = $49<<1; + $51 = HEAP32[$pExtra>>2]|0; + $52 = (($51) + ($50)|0); + HEAP32[$pExtra>>2] = $52; + $53 = HEAP32[$pExtra>>2]|0; + $54 = HEAP32[$p>>2]|0; + $55 = (($54) + 4|0); + HEAP32[$55>>2] = $53; + $56 = HEAP16[$1>>1]|0; + $57 = $56 << 16 >> 16; + $58 = $57<<1; + $59 = HEAP32[$pExtra>>2]|0; + $60 = (($59) + ($58)|0); + HEAP32[$pExtra>>2] = $60; + $61 = HEAP32[$pExtra>>2]|0; + $62 = HEAP32[$p>>2]|0; + $63 = (($62) + 28|0); + HEAP32[$63>>2] = $61; + $64 = HEAP16[$1>>1]|0; + $65 = HEAP32[$p>>2]|0; + $66 = (($65) + 52|0); + HEAP16[$66>>1] = $64; + $67 = HEAP16[$1>>1]|0; + $68 = $67 << 16 >> 16; + $69 = (($68) - 1)|0; + $70 = $69&65535; + $71 = HEAP32[$p>>2]|0; + $72 = (($71) + 50|0); + HEAP16[$72>>1] = $70; + $73 = HEAP32[$p>>2]|0; + $74 = HEAP32[$nByte>>2]|0; + $75 = (($73) + ($74)|0); + $76 = HEAP32[$3>>2]|0; + HEAP32[$76>>2] = $75; + $77 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($77|0); +} +function _exprTableUsage($pMaskSet,$p) { + $pMaskSet = $pMaskSet|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; + var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; + var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; + var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; + var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $mask = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 8|0; + $1 = sp + 20|0; + $2 = sp + 16|0; + $mask = sp; + HEAP32[$1>>2] = $pMaskSet; + HEAP32[$2>>2] = $p; + $3 = $mask; + $4 = $3; + HEAP32[$4>>2] = 0; + $5 = (($3) + 4)|0; + $6 = $5; + HEAP32[$6>>2] = 0; + $7 = HEAP32[$2>>2]|0; + $8 = ($7|0)==(0|0); + if ($8) { + $9 = $0; + $10 = $9; + HEAP32[$10>>2] = 0; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = 0; + $111 = $0; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = (($111) + 4)|0; + $115 = $114; + $116 = HEAP32[$115>>2]|0; + tempRet0 = $116; + STACKTOP = sp;return ($113|0); + } + $13 = HEAP32[$2>>2]|0; + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = ($15|0)==(154); + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$2>>2]|0; + if ($16) { + $19 = (($18) + 28|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_getMask($17,$20)|0); + $22 = tempRet0; + $23 = $mask; + $24 = $23; + HEAP32[$24>>2] = $21; + $25 = (($23) + 4)|0; + $26 = $25; + HEAP32[$26>>2] = $22; + $27 = $mask; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (($27) + 4)|0; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = $0; + $34 = $33; + HEAP32[$34>>2] = $29; + $35 = (($33) + 4)|0; + $36 = $35; + HEAP32[$36>>2] = $32; + $111 = $0; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = (($111) + 4)|0; + $115 = $114; + $116 = HEAP32[$115>>2]|0; + tempRet0 = $116; + STACKTOP = sp;return ($113|0); + } + $37 = (($18) + 16|0); + $38 = HEAP32[$37>>2]|0; + $39 = (_exprTableUsage($17,$38)|0); + $40 = tempRet0; + $41 = $mask; + $42 = $41; + HEAP32[$42>>2] = $39; + $43 = (($41) + 4)|0; + $44 = $43; + HEAP32[$44>>2] = $40; + $45 = HEAP32[$1>>2]|0; + $46 = HEAP32[$2>>2]|0; + $47 = (($46) + 12|0); + $48 = HEAP32[$47>>2]|0; + $49 = (_exprTableUsage($45,$48)|0); + $50 = tempRet0; + $51 = $mask; + $52 = $51; + $53 = HEAP32[$52>>2]|0; + $54 = (($51) + 4)|0; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = $53 | $49; + $58 = $56 | $50; + $59 = $mask; + $60 = $59; + HEAP32[$60>>2] = $57; + $61 = (($59) + 4)|0; + $62 = $61; + HEAP32[$62>>2] = $58; + $63 = HEAP32[$2>>2]|0; + $64 = (($63) + 4|0); + $65 = HEAP32[$64>>2]|0; + $66 = $65 & 2048; + $67 = ($66|0)!=(0); + $68 = HEAP32[$1>>2]|0; + $69 = HEAP32[$2>>2]|0; + $70 = (($69) + 20|0); + if ($67) { + $71 = HEAP32[$70>>2]|0; + $72 = (_exprSelectTableUsage($68,$71)|0); + $73 = tempRet0; + $74 = $mask; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = (($74) + 4)|0; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = $76 | $72; + $81 = $79 | $73; + $82 = $mask; + $83 = $82; + HEAP32[$83>>2] = $80; + $84 = (($82) + 4)|0; + $85 = $84; + HEAP32[$85>>2] = $81; + } else { + $86 = HEAP32[$70>>2]|0; + $87 = (_exprListTableUsage($68,$86)|0); + $88 = tempRet0; + $89 = $mask; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + $92 = (($89) + 4)|0; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = $91 | $87; + $96 = $94 | $88; + $97 = $mask; + $98 = $97; + HEAP32[$98>>2] = $95; + $99 = (($97) + 4)|0; + $100 = $99; + HEAP32[$100>>2] = $96; + } + $101 = $mask; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = (($101) + 4)|0; + $105 = $104; + $106 = HEAP32[$105>>2]|0; + $107 = $0; + $108 = $107; + HEAP32[$108>>2] = $103; + $109 = (($107) + 4)|0; + $110 = $109; + HEAP32[$110>>2] = $106; + $111 = $0; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = (($111) + 4)|0; + $115 = $114; + $116 = HEAP32[$115>>2]|0; + tempRet0 = $116; + STACKTOP = sp;return ($113|0); +} +function _exprSelectTableUsage($pMaskSet,$pS) { + $pMaskSet = $pMaskSet|0; + $pS = $pS|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; + var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0; + var $mask = 0, $pSrc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp + 8|0; + $mask = sp; + $pSrc = sp + 12|0; + $i = sp + 16|0; + HEAP32[$0>>2] = $pMaskSet; + HEAP32[$1>>2] = $pS; + $2 = $mask; + $3 = $2; + HEAP32[$3>>2] = 0; + $4 = (($2) + 4)|0; + $5 = $4; + HEAP32[$5>>2] = 0; + while(1) { + $6 = HEAP32[$1>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + break; + } + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 32|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$pSrc>>2] = $10; + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = (_exprListTableUsage($11,$13)|0); + $15 = tempRet0; + $16 = $mask; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = (($16) + 4)|0; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = $18 | $14; + $23 = $21 | $15; + $24 = $mask; + $25 = $24; + HEAP32[$25>>2] = $22; + $26 = (($24) + 4)|0; + $27 = $26; + HEAP32[$27>>2] = $23; + $28 = HEAP32[$0>>2]|0; + $29 = HEAP32[$1>>2]|0; + $30 = (($29) + 40|0); + $31 = HEAP32[$30>>2]|0; + $32 = (_exprListTableUsage($28,$31)|0); + $33 = tempRet0; + $34 = $mask; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = $36 | $32; + $41 = $39 | $33; + $42 = $mask; + $43 = $42; + HEAP32[$43>>2] = $40; + $44 = (($42) + 4)|0; + $45 = $44; + HEAP32[$45>>2] = $41; + $46 = HEAP32[$0>>2]|0; + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 48|0); + $49 = HEAP32[$48>>2]|0; + $50 = (_exprListTableUsage($46,$49)|0); + $51 = tempRet0; + $52 = $mask; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = (($52) + 4)|0; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = $54 | $50; + $59 = $57 | $51; + $60 = $mask; + $61 = $60; + HEAP32[$61>>2] = $58; + $62 = (($60) + 4)|0; + $63 = $62; + HEAP32[$63>>2] = $59; + $64 = HEAP32[$0>>2]|0; + $65 = HEAP32[$1>>2]|0; + $66 = (($65) + 36|0); + $67 = HEAP32[$66>>2]|0; + $68 = (_exprTableUsage($64,$67)|0); + $69 = tempRet0; + $70 = $mask; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = (($70) + 4)|0; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $76 = $72 | $68; + $77 = $75 | $69; + $78 = $mask; + $79 = $78; + HEAP32[$79>>2] = $76; + $80 = (($78) + 4)|0; + $81 = $80; + HEAP32[$81>>2] = $77; + $82 = HEAP32[$0>>2]|0; + $83 = HEAP32[$1>>2]|0; + $84 = (($83) + 44|0); + $85 = HEAP32[$84>>2]|0; + $86 = (_exprTableUsage($82,$85)|0); + $87 = tempRet0; + $88 = $mask; + $89 = $88; + $90 = HEAP32[$89>>2]|0; + $91 = (($88) + 4)|0; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $94 = $90 | $86; + $95 = $93 | $87; + $96 = $mask; + $97 = $96; + HEAP32[$97>>2] = $94; + $98 = (($96) + 4)|0; + $99 = $98; + HEAP32[$99>>2] = $95; + $100 = HEAP32[$pSrc>>2]|0; + $101 = ($100|0)!=(0|0); + L4: do { + if ($101) { + HEAP32[$i>>2] = 0; + while(1) { + $102 = HEAP32[$i>>2]|0; + $103 = HEAP32[$pSrc>>2]|0; + $104 = HEAP32[$103>>2]|0; + $105 = ($102|0)<($104|0); + if (!($105)) { + break L4; + } + $106 = HEAP32[$0>>2]|0; + $107 = HEAP32[$i>>2]|0; + $108 = HEAP32[$pSrc>>2]|0; + $109 = (($108) + 8|0); + $110 = (($109) + (($107*72)|0)|0); + $111 = (($110) + 20|0); + $112 = HEAP32[$111>>2]|0; + $113 = (_exprSelectTableUsage($106,$112)|0); + $114 = tempRet0; + $115 = $mask; + $116 = $115; + $117 = HEAP32[$116>>2]|0; + $118 = (($115) + 4)|0; + $119 = $118; + $120 = HEAP32[$119>>2]|0; + $121 = $117 | $113; + $122 = $120 | $114; + $123 = $mask; + $124 = $123; + HEAP32[$124>>2] = $121; + $125 = (($123) + 4)|0; + $126 = $125; + HEAP32[$126>>2] = $122; + $127 = HEAP32[$0>>2]|0; + $128 = HEAP32[$i>>2]|0; + $129 = HEAP32[$pSrc>>2]|0; + $130 = (($129) + 8|0); + $131 = (($130) + (($128*72)|0)|0); + $132 = (($131) + 44|0); + $133 = HEAP32[$132>>2]|0; + $134 = (_exprTableUsage($127,$133)|0); + $135 = tempRet0; + $136 = $mask; + $137 = $136; + $138 = HEAP32[$137>>2]|0; + $139 = (($136) + 4)|0; + $140 = $139; + $141 = HEAP32[$140>>2]|0; + $142 = $138 | $134; + $143 = $141 | $135; + $144 = $mask; + $145 = $144; + HEAP32[$145>>2] = $142; + $146 = (($144) + 4)|0; + $147 = $146; + HEAP32[$147>>2] = $143; + $148 = HEAP32[$i>>2]|0; + $149 = (($148) + 1)|0; + HEAP32[$i>>2] = $149; + } + } + } while(0); + $150 = HEAP32[$1>>2]|0; + $151 = (($150) + 52|0); + $152 = HEAP32[$151>>2]|0; + HEAP32[$1>>2] = $152; + } + $153 = $mask; + $154 = $153; + $155 = HEAP32[$154>>2]|0; + $156 = (($153) + 4)|0; + $157 = $156; + $158 = HEAP32[$157>>2]|0; + tempRet0 = $158; + STACKTOP = sp;return ($155|0); +} +function _sqlite3LogEstAdd($a,$b) { + $a = $a|0; + $b = $b|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + $2 = sp + 2|0; + HEAP16[$1>>1] = $a; + HEAP16[$2>>1] = $b; + $3 = HEAP16[$1>>1]|0; + $4 = $3 << 16 >> 16; + $5 = HEAP16[$2>>1]|0; + $6 = $5 << 16 >> 16; + $7 = ($4|0)>=($6|0); + if ($7) { + $8 = HEAP16[$1>>1]|0; + $9 = $8 << 16 >> 16; + $10 = HEAP16[$2>>1]|0; + $11 = $10 << 16 >> 16; + $12 = (($11) + 49)|0; + $13 = ($9|0)>($12|0); + $14 = HEAP16[$1>>1]|0; + if ($13) { + HEAP16[$0>>1] = $14; + $60 = HEAP16[$0>>1]|0; + STACKTOP = sp;return ($60|0); + } + $15 = $14 << 16 >> 16; + $16 = HEAP16[$2>>1]|0; + $17 = $16 << 16 >> 16; + $18 = (($17) + 31)|0; + $19 = ($15|0)>($18|0); + $20 = HEAP16[$1>>1]|0; + $21 = $20 << 16 >> 16; + if ($19) { + $22 = (($21) + 1)|0; + $23 = $22&65535; + HEAP16[$0>>1] = $23; + $60 = HEAP16[$0>>1]|0; + STACKTOP = sp;return ($60|0); + } else { + $24 = HEAP16[$1>>1]|0; + $25 = $24 << 16 >> 16; + $26 = HEAP16[$2>>1]|0; + $27 = $26 << 16 >> 16; + $28 = (($25) - ($27))|0; + $29 = (30512 + ($28)|0); + $30 = HEAP8[$29>>0]|0; + $31 = $30&255; + $32 = (($21) + ($31))|0; + $33 = $32&65535; + HEAP16[$0>>1] = $33; + $60 = HEAP16[$0>>1]|0; + STACKTOP = sp;return ($60|0); + } + } else { + $34 = HEAP16[$2>>1]|0; + $35 = $34 << 16 >> 16; + $36 = HEAP16[$1>>1]|0; + $37 = $36 << 16 >> 16; + $38 = (($37) + 49)|0; + $39 = ($35|0)>($38|0); + $40 = HEAP16[$2>>1]|0; + if ($39) { + HEAP16[$0>>1] = $40; + $60 = HEAP16[$0>>1]|0; + STACKTOP = sp;return ($60|0); + } + $41 = $40 << 16 >> 16; + $42 = HEAP16[$1>>1]|0; + $43 = $42 << 16 >> 16; + $44 = (($43) + 31)|0; + $45 = ($41|0)>($44|0); + $46 = HEAP16[$2>>1]|0; + $47 = $46 << 16 >> 16; + if ($45) { + $48 = (($47) + 1)|0; + $49 = $48&65535; + HEAP16[$0>>1] = $49; + $60 = HEAP16[$0>>1]|0; + STACKTOP = sp;return ($60|0); + } else { + $50 = HEAP16[$2>>1]|0; + $51 = $50 << 16 >> 16; + $52 = HEAP16[$1>>1]|0; + $53 = $52 << 16 >> 16; + $54 = (($51) - ($53))|0; + $55 = (30512 + ($54)|0); + $56 = HEAP8[$55>>0]|0; + $57 = $56&255; + $58 = (($47) + ($57))|0; + $59 = $58&65535; + HEAP16[$0>>1] = $59; + $60 = HEAP16[$0>>1]|0; + STACKTOP = sp;return ($60|0); + } + } + return 0|0; +} +function _wherePathSatisfiesOrderBy($pWInfo,$pOrderBy,$pPath,$wctrlFlags,$nLoop,$pLast,$pRevMask) { + $pWInfo = $pWInfo|0; + $pOrderBy = $pOrderBy|0; + $pPath = $pPath|0; + $wctrlFlags = $wctrlFlags|0; + $nLoop = $nLoop|0; + $pLast = $pLast|0; + $pRevMask = $pRevMask|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; + var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; + var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; + var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; + var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0; + var $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $bOnce = 0, $db = 0, $distinctColumns = 0, $i = 0, $iColumn = 0, $iCur = 0, $iLoop = 0, $isMatch = 0, $isOrderDistinct = 0, $j = 0, $m = 0, $mTerm = 0, $nColumn = 0, $nKeyCol = 0, $nOrderBy = 0, $obDone = 0, $obSat = 0, $orderDistinctMask = 0; + var $p = 0, $pColl = 0, $pIndex = 0, $pLoop = 0, $pOBExpr = 0, $pTerm = 0, $ready = 0, $rev = 0, $revIdx = 0, $revSet = 0, $z1 = 0, $z2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; + $0 = sp + 135|0; + $1 = sp + 104|0; + $2 = sp + 108|0; + $3 = sp + 112|0; + $4 = sp + 126|0; + $5 = sp + 124|0; + $6 = sp + 116|0; + $7 = sp + 120|0; + $revSet = sp + 141|0; + $rev = sp + 140|0; + $revIdx = sp + 139|0; + $isOrderDistinct = sp + 138|0; + $distinctColumns = sp + 137|0; + $isMatch = sp + 136|0; + $nKeyCol = sp + 132|0; + $nColumn = sp + 130|0; + $nOrderBy = sp + 128|0; + $iLoop = sp + 100|0; + $i = sp + 68|0; + $j = sp + 72|0; + $iCur = sp + 76|0; + $iColumn = sp + 80|0; + $pLoop = sp + 60|0; + $pTerm = sp + 52|0; + $pOBExpr = sp + 48|0; + $pColl = sp + 56|0; + $pIndex = sp + 64|0; + $db = sp + 96|0; + $obSat = sp; + $obDone = sp + 32|0; + $orderDistinctMask = sp + 16|0; + $ready = sp + 24|0; + $z1 = sp + 84|0; + $z2 = sp + 88|0; + $bOnce = sp + 134|0; + $p = sp + 92|0; + $mTerm = sp + 40|0; + $m = sp + 8|0; + HEAP32[$1>>2] = $pWInfo; + HEAP32[$2>>2] = $pOrderBy; + HEAP32[$3>>2] = $pPath; + HEAP16[$4>>1] = $wctrlFlags; + HEAP16[$5>>1] = $nLoop; + HEAP32[$6>>2] = $pLast; + HEAP32[$7>>2] = $pRevMask; + HEAP32[$pLoop>>2] = 0; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$db>>2] = $10; + $11 = $obSat; + $12 = $11; + HEAP32[$12>>2] = 0; + $13 = (($11) + 4)|0; + $14 = $13; + HEAP32[$14>>2] = 0; + $15 = HEAP16[$5>>1]|0; + $16 = $15&65535; + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$db>>2]|0; + $19 = (($18) + 60|0); + $20 = HEAP16[$19>>1]|0; + $21 = $20&65535; + $22 = $21 & 128; + $23 = ($22|0)!=(0); + if ($23) { + HEAP8[$0>>0] = 0; + $681 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($681|0); + } + } + $24 = HEAP32[$2>>2]|0; + $25 = HEAP32[$24>>2]|0; + $26 = $25&65535; + HEAP16[$nOrderBy>>1] = $26; + $27 = HEAP16[$nOrderBy>>1]|0; + $28 = $27&65535; + $29 = ($28|0)>(63); + if ($29) { + HEAP8[$0>>0] = 0; + $681 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($681|0); + } + HEAP8[$isOrderDistinct>>0] = 1; + $30 = HEAP16[$nOrderBy>>1]|0; + $31 = $30&65535; + $32 = (_bitshift64Shl(1,0,($31|0))|0); + $33 = tempRet0; + $34 = (_i64Subtract(($32|0),($33|0),1,0)|0); + $35 = tempRet0; + $36 = $obDone; + $37 = $36; + HEAP32[$37>>2] = $34; + $38 = (($36) + 4)|0; + $39 = $38; + HEAP32[$39>>2] = $35; + $40 = $orderDistinctMask; + $41 = $40; + HEAP32[$41>>2] = 0; + $42 = (($40) + 4)|0; + $43 = $42; + HEAP32[$43>>2] = 0; + $44 = $ready; + $45 = $44; + HEAP32[$45>>2] = 0; + $46 = (($44) + 4)|0; + $47 = $46; + HEAP32[$47>>2] = 0; + HEAP32[$iLoop>>2] = 0; + while(1) { + $48 = HEAP8[$isOrderDistinct>>0]|0; + $49 = $48&255; + $50 = ($49|0)!=(0); + if (!($50)) { + break; + } + $51 = $obSat; + $52 = $51; + $53 = HEAP32[$52>>2]|0; + $54 = (($51) + 4)|0; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = $obDone; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = (($57) + 4)|0; + $61 = $60; + $62 = HEAP32[$61>>2]|0; + $63 = ($56>>>0)<($62>>>0); + $64 = ($56|0)==($62|0); + $65 = ($53>>>0)<($59>>>0); + $66 = $64 & $65; + $67 = $63 | $66; + if (!($67)) { + break; + } + $68 = HEAP32[$iLoop>>2]|0; + $69 = HEAP16[$5>>1]|0; + $70 = $69&65535; + $71 = ($68|0)<=($70|0); + if (!($71)) { + break; + } + $72 = HEAP32[$iLoop>>2]|0; + $73 = ($72|0)>(0); + if ($73) { + $74 = HEAP32[$pLoop>>2]|0; + $75 = (($74) + 8|0); + $76 = $75; + $77 = $76; + $78 = HEAP32[$77>>2]|0; + $79 = (($76) + 4)|0; + $80 = $79; + $81 = HEAP32[$80>>2]|0; + $82 = $ready; + $83 = $82; + $84 = HEAP32[$83>>2]|0; + $85 = (($82) + 4)|0; + $86 = $85; + $87 = HEAP32[$86>>2]|0; + $88 = $84 | $78; + $89 = $87 | $81; + $90 = $ready; + $91 = $90; + HEAP32[$91>>2] = $88; + $92 = (($90) + 4)|0; + $93 = $92; + HEAP32[$93>>2] = $89; + } + $94 = HEAP32[$iLoop>>2]|0; + $95 = HEAP16[$5>>1]|0; + $96 = $95&65535; + $97 = ($94|0)<($96|0); + if ($97) { + $98 = HEAP32[$iLoop>>2]|0; + $99 = HEAP32[$3>>2]|0; + $100 = (($99) + 24|0); + $101 = HEAP32[$100>>2]|0; + $102 = (($101) + ($98<<2)|0); + $103 = HEAP32[$102>>2]|0; + $105 = $103; + } else { + $104 = HEAP32[$6>>2]|0; + $105 = $104; + } + HEAP32[$pLoop>>2] = $105; + $106 = HEAP32[$pLoop>>2]|0; + $107 = (($106) + 36|0); + $108 = HEAP32[$107>>2]|0; + $109 = $108 & 1024; + $110 = ($109|0)!=(0); + $111 = HEAP32[$pLoop>>2]|0; + if ($110) { + label = 16; + break; + } + $126 = (($111) + 16|0); + $127 = HEAP8[$126>>0]|0; + $128 = $127&255; + $129 = HEAP32[$1>>2]|0; + $130 = (($129) + 4|0); + $131 = HEAP32[$130>>2]|0; + $132 = (($131) + 8|0); + $133 = (($132) + (($128*72)|0)|0); + $134 = (($133) + 40|0); + $135 = HEAP32[$134>>2]|0; + HEAP32[$iCur>>2] = $135; + HEAP32[$i>>2] = 0; + while(1) { + $136 = HEAP32[$i>>2]|0; + $137 = HEAP16[$nOrderBy>>1]|0; + $138 = $137&65535; + $139 = ($136|0)<($138|0); + if (!($139)) { + break; + } + $140 = HEAP32[$i>>2]|0; + $141 = (_bitshift64Shl(1,0,($140|0))|0); + $142 = tempRet0; + $143 = $obSat; + $144 = $143; + $145 = HEAP32[$144>>2]|0; + $146 = (($143) + 4)|0; + $147 = $146; + $148 = HEAP32[$147>>2]|0; + $149 = $141 & $145; + $150 = $142 & $148; + $151 = ($149|0)!=(0); + $152 = ($150|0)!=(0); + $153 = $151 | $152; + do { + if (!($153)) { + $154 = HEAP32[$i>>2]|0; + $155 = HEAP32[$2>>2]|0; + $156 = (($155) + 4|0); + $157 = HEAP32[$156>>2]|0; + $158 = (($157) + (($154*20)|0)|0); + $159 = HEAP32[$158>>2]|0; + $160 = (_sqlite3ExprSkipCollate($159)|0); + HEAP32[$pOBExpr>>2] = $160; + $161 = HEAP32[$pOBExpr>>2]|0; + $162 = HEAP8[$161>>0]|0; + $163 = $162&255; + $164 = ($163|0)!=(154); + if (!($164)) { + $165 = HEAP32[$pOBExpr>>2]|0; + $166 = (($165) + 28|0); + $167 = HEAP32[$166>>2]|0; + $168 = HEAP32[$iCur>>2]|0; + $169 = ($167|0)!=($168|0); + if (!($169)) { + $170 = HEAP32[$1>>2]|0; + $171 = (($170) + 328|0); + $172 = HEAP32[$iCur>>2]|0; + $173 = HEAP32[$pOBExpr>>2]|0; + $174 = (($173) + 32|0); + $175 = HEAP16[$174>>1]|0; + $176 = $175 << 16 >> 16; + $177 = $ready; + $178 = $177; + $179 = HEAP32[$178>>2]|0; + $180 = (($177) + 4)|0; + $181 = $180; + $182 = HEAP32[$181>>2]|0; + $183 = $179 ^ -1; + $184 = $182 ^ -1; + $185 = (_findTerm($171,$172,$176,$183,$184,130,0)|0); + HEAP32[$pTerm>>2] = $185; + $186 = HEAP32[$pTerm>>2]|0; + $187 = ($186|0)==(0|0); + if (!($187)) { + $188 = HEAP32[$pTerm>>2]|0; + $189 = (($188) + 18|0); + $190 = HEAP16[$189>>1]|0; + $191 = $190&65535; + $192 = $191 & 2; + $193 = ($192|0)!=(0); + if ($193) { + $194 = HEAP32[$pOBExpr>>2]|0; + $195 = (($194) + 32|0); + $196 = HEAP16[$195>>1]|0; + $197 = $196 << 16 >> 16; + $198 = ($197|0)>=(0); + if ($198) { + $199 = HEAP32[$1>>2]|0; + $200 = HEAP32[$199>>2]|0; + $201 = HEAP32[$i>>2]|0; + $202 = HEAP32[$2>>2]|0; + $203 = (($202) + 4|0); + $204 = HEAP32[$203>>2]|0; + $205 = (($204) + (($201*20)|0)|0); + $206 = HEAP32[$205>>2]|0; + $207 = (_sqlite3ExprCollSeq($200,$206)|0); + HEAP32[$pColl>>2] = $207; + $208 = HEAP32[$pColl>>2]|0; + $209 = ($208|0)!=(0|0); + if (!($209)) { + $210 = HEAP32[$db>>2]|0; + $211 = (($210) + 8|0); + $212 = HEAP32[$211>>2]|0; + HEAP32[$pColl>>2] = $212; + } + $213 = HEAP32[$pColl>>2]|0; + $214 = HEAP32[$213>>2]|0; + HEAP32[$z1>>2] = $214; + $215 = HEAP32[$1>>2]|0; + $216 = HEAP32[$215>>2]|0; + $217 = HEAP32[$pTerm>>2]|0; + $218 = HEAP32[$217>>2]|0; + $219 = (_sqlite3ExprCollSeq($216,$218)|0); + HEAP32[$pColl>>2] = $219; + $220 = HEAP32[$pColl>>2]|0; + $221 = ($220|0)!=(0|0); + if (!($221)) { + $222 = HEAP32[$db>>2]|0; + $223 = (($222) + 8|0); + $224 = HEAP32[$223>>2]|0; + HEAP32[$pColl>>2] = $224; + } + $225 = HEAP32[$pColl>>2]|0; + $226 = HEAP32[$225>>2]|0; + HEAP32[$z2>>2] = $226; + $227 = HEAP32[$z1>>2]|0; + $228 = HEAP32[$z2>>2]|0; + $229 = (_sqlite3_stricmp($227,$228)|0); + $230 = ($229|0)!=(0); + if ($230) { + break; + } + } + } + $231 = HEAP32[$i>>2]|0; + $232 = (_bitshift64Shl(1,0,($231|0))|0); + $233 = tempRet0; + $234 = $obSat; + $235 = $234; + $236 = HEAP32[$235>>2]|0; + $237 = (($234) + 4)|0; + $238 = $237; + $239 = HEAP32[$238>>2]|0; + $240 = $236 | $232; + $241 = $239 | $233; + $242 = $obSat; + $243 = $242; + HEAP32[$243>>2] = $240; + $244 = (($242) + 4)|0; + $245 = $244; + HEAP32[$245>>2] = $241; + } + } + } + } + } while(0); + $246 = HEAP32[$i>>2]|0; + $247 = (($246) + 1)|0; + HEAP32[$i>>2] = $247; + } + $248 = HEAP32[$pLoop>>2]|0; + $249 = (($248) + 36|0); + $250 = HEAP32[$249>>2]|0; + $251 = $250 & 4096; + $252 = ($251|0)==(0); + if ($252) { + $253 = HEAP32[$pLoop>>2]|0; + $254 = (($253) + 36|0); + $255 = HEAP32[$254>>2]|0; + $256 = $255 & 256; + $257 = ($256|0)!=(0); + if ($257) { + HEAP32[$pIndex>>2] = 0; + HEAP16[$nKeyCol>>1] = 0; + HEAP16[$nColumn>>1] = 1; + } else { + $258 = HEAP32[$pLoop>>2]|0; + $259 = (($258) + 24|0); + $260 = (($259) + 4|0); + $261 = HEAP32[$260>>2]|0; + HEAP32[$pIndex>>2] = $261; + $262 = ($261|0)==(0|0); + if ($262) { + label = 38; + break; + } + $263 = HEAP32[$pIndex>>2]|0; + $264 = (($263) + 55|0); + $265 = HEAP8[$264>>0]|0; + $266 = ($265&255) >>> 2; + $267 = $266 & 1; + $268 = $267&255; + $269 = ($268|0)!=(0); + if ($269) { + label = 38; + break; + } + $270 = HEAP32[$pIndex>>2]|0; + $271 = (($270) + 50|0); + $272 = HEAP16[$271>>1]|0; + HEAP16[$nKeyCol>>1] = $272; + $273 = HEAP32[$pIndex>>2]|0; + $274 = (($273) + 52|0); + $275 = HEAP16[$274>>1]|0; + HEAP16[$nColumn>>1] = $275; + $276 = HEAP32[$pIndex>>2]|0; + $277 = (($276) + 54|0); + $278 = HEAP8[$277>>0]|0; + $279 = $278&255; + $280 = ($279|0)!=(0); + $281 = $280&1; + $282 = $281&255; + HEAP8[$isOrderDistinct>>0] = $282; + } + HEAP8[$revSet>>0] = 0; + HEAP8[$rev>>0] = 0; + HEAP8[$distinctColumns>>0] = 0; + HEAP32[$j>>2] = 0; + while(1) { + $283 = HEAP32[$j>>2]|0; + $284 = HEAP16[$nColumn>>1]|0; + $285 = $284&65535; + $286 = ($283|0)<($285|0); + if (!($286)) { + break; + } + $287 = HEAP32[$j>>2]|0; + $288 = HEAP32[$pLoop>>2]|0; + $289 = (($288) + 24|0); + $290 = HEAP16[$289>>1]|0; + $291 = $290&65535; + $292 = ($287|0)<($291|0); + if ($292) { + $293 = HEAP32[$pLoop>>2]|0; + $294 = (($293) + 24|0); + $295 = (($294) + 2|0); + $296 = HEAP16[$295>>1]|0; + $297 = $296&65535; + $298 = ($297|0)==(0); + if ($298) { + $299 = HEAP32[$j>>2]|0; + $300 = HEAP32[$pLoop>>2]|0; + $301 = (($300) + 44|0); + $302 = HEAP32[$301>>2]|0; + $303 = (($302) + ($299<<2)|0); + $304 = HEAP32[$303>>2]|0; + $305 = (($304) + 18|0); + $306 = HEAP16[$305>>1]|0; + $307 = $306&65535; + HEAP32[$i>>2] = $307; + $308 = $307 & 130; + $309 = ($308|0)!=(0); + if ($309) { + $310 = HEAP32[$i>>2]|0; + $311 = $310 & 128; + $312 = ($311|0)!=(0); + if ($312) { + HEAP8[$isOrderDistinct>>0] = 0; + } + } else { + label = 47; + } + } else { + label = 47; + } + } else { + label = 47; + } + if ((label|0) == 47) { + label = 0; + $313 = HEAP32[$pIndex>>2]|0; + $314 = ($313|0)!=(0|0); + if ($314) { + $315 = HEAP32[$j>>2]|0; + $316 = HEAP32[$pIndex>>2]|0; + $317 = (($316) + 4|0); + $318 = HEAP32[$317>>2]|0; + $319 = (($318) + ($315<<1)|0); + $320 = HEAP16[$319>>1]|0; + $321 = $320 << 16 >> 16; + HEAP32[$iColumn>>2] = $321; + $322 = HEAP32[$j>>2]|0; + $323 = HEAP32[$pIndex>>2]|0; + $324 = (($323) + 28|0); + $325 = HEAP32[$324>>2]|0; + $326 = (($325) + ($322)|0); + $327 = HEAP8[$326>>0]|0; + HEAP8[$revIdx>>0] = $327; + $328 = HEAP32[$iColumn>>2]|0; + $329 = HEAP32[$pIndex>>2]|0; + $330 = (($329) + 12|0); + $331 = HEAP32[$330>>2]|0; + $332 = (($331) + 36|0); + $333 = HEAP16[$332>>1]|0; + $334 = $333 << 16 >> 16; + $335 = ($328|0)==($334|0); + if ($335) { + HEAP32[$iColumn>>2] = -1; + } + } else { + HEAP32[$iColumn>>2] = -1; + HEAP8[$revIdx>>0] = 0; + } + $336 = HEAP8[$isOrderDistinct>>0]|0; + $337 = $336&255; + $338 = ($337|0)!=(0); + do { + if ($338) { + $339 = HEAP32[$iColumn>>2]|0; + $340 = ($339|0)>=(0); + if ($340) { + $341 = HEAP32[$j>>2]|0; + $342 = HEAP32[$pLoop>>2]|0; + $343 = (($342) + 24|0); + $344 = HEAP16[$343>>1]|0; + $345 = $344&65535; + $346 = ($341|0)>=($345|0); + if (!($346)) { + break; + } + $347 = HEAP32[$iColumn>>2]|0; + $348 = HEAP32[$pIndex>>2]|0; + $349 = (($348) + 12|0); + $350 = HEAP32[$349>>2]|0; + $351 = (($350) + 4|0); + $352 = HEAP32[$351>>2]|0; + $353 = (($352) + (($347*24)|0)|0); + $354 = (($353) + 20|0); + $355 = HEAP8[$354>>0]|0; + $356 = $355&255; + $357 = ($356|0)==(0); + if (!($357)) { + break; + } + HEAP8[$isOrderDistinct>>0] = 0; + } + } + } while(0); + HEAP8[$bOnce>>0] = 1; + HEAP8[$isMatch>>0] = 0; + HEAP32[$i>>2] = 0; + L72: while(1) { + $358 = HEAP8[$bOnce>>0]|0; + $359 = $358&255; + $360 = ($359|0)!=(0); + if (!($360)) { + break; + } + $361 = HEAP32[$i>>2]|0; + $362 = HEAP16[$nOrderBy>>1]|0; + $363 = $362&65535; + $364 = ($361|0)<($363|0); + if (!($364)) { + break; + } + $365 = HEAP32[$i>>2]|0; + $366 = (_bitshift64Shl(1,0,($365|0))|0); + $367 = tempRet0; + $368 = $obSat; + $369 = $368; + $370 = HEAP32[$369>>2]|0; + $371 = (($368) + 4)|0; + $372 = $371; + $373 = HEAP32[$372>>2]|0; + $374 = $366 & $370; + $375 = $367 & $373; + $376 = ($374|0)!=(0); + $377 = ($375|0)!=(0); + $378 = $376 | $377; + do { + if (!($378)) { + $379 = HEAP32[$i>>2]|0; + $380 = HEAP32[$2>>2]|0; + $381 = (($380) + 4|0); + $382 = HEAP32[$381>>2]|0; + $383 = (($382) + (($379*20)|0)|0); + $384 = HEAP32[$383>>2]|0; + $385 = (_sqlite3ExprSkipCollate($384)|0); + HEAP32[$pOBExpr>>2] = $385; + $386 = HEAP16[$4>>1]|0; + $387 = $386&65535; + $388 = $387 & 768; + $389 = ($388|0)==(0); + if ($389) { + HEAP8[$bOnce>>0] = 0; + } + $390 = HEAP32[$pOBExpr>>2]|0; + $391 = HEAP8[$390>>0]|0; + $392 = $391&255; + $393 = ($392|0)!=(154); + if ($393) { + break; + } + $394 = HEAP32[$pOBExpr>>2]|0; + $395 = (($394) + 28|0); + $396 = HEAP32[$395>>2]|0; + $397 = HEAP32[$iCur>>2]|0; + $398 = ($396|0)!=($397|0); + if ($398) { + break; + } + $399 = HEAP32[$pOBExpr>>2]|0; + $400 = (($399) + 32|0); + $401 = HEAP16[$400>>1]|0; + $402 = $401 << 16 >> 16; + $403 = HEAP32[$iColumn>>2]|0; + $404 = ($402|0)!=($403|0); + if ($404) { + break; + } + $405 = HEAP32[$iColumn>>2]|0; + $406 = ($405|0)>=(0); + if (!($406)) { + label = 69; + break L72; + } + $407 = HEAP32[$1>>2]|0; + $408 = HEAP32[$407>>2]|0; + $409 = HEAP32[$i>>2]|0; + $410 = HEAP32[$2>>2]|0; + $411 = (($410) + 4|0); + $412 = HEAP32[$411>>2]|0; + $413 = (($412) + (($409*20)|0)|0); + $414 = HEAP32[$413>>2]|0; + $415 = (_sqlite3ExprCollSeq($408,$414)|0); + HEAP32[$pColl>>2] = $415; + $416 = HEAP32[$pColl>>2]|0; + $417 = ($416|0)!=(0|0); + if (!($417)) { + $418 = HEAP32[$db>>2]|0; + $419 = (($418) + 8|0); + $420 = HEAP32[$419>>2]|0; + HEAP32[$pColl>>2] = $420; + } + $421 = HEAP32[$pColl>>2]|0; + $422 = HEAP32[$421>>2]|0; + $423 = HEAP32[$j>>2]|0; + $424 = HEAP32[$pIndex>>2]|0; + $425 = (($424) + 32|0); + $426 = HEAP32[$425>>2]|0; + $427 = (($426) + ($423<<2)|0); + $428 = HEAP32[$427>>2]|0; + $429 = (_sqlite3_stricmp($422,$428)|0); + $430 = ($429|0)!=(0); + if (!($430)) { + label = 69; + break L72; + } + } + } while(0); + $431 = HEAP32[$i>>2]|0; + $432 = (($431) + 1)|0; + HEAP32[$i>>2] = $432; + } + if ((label|0) == 69) { + label = 0; + HEAP8[$isMatch>>0] = 1; + } + $433 = HEAP8[$isMatch>>0]|0; + $434 = $433&255; + $435 = ($434|0)!=(0); + do { + if ($435) { + $436 = HEAP32[$1>>2]|0; + $437 = (($436) + 34|0); + $438 = HEAP16[$437>>1]|0; + $439 = $438&65535; + $440 = $439 & 256; + $441 = ($440|0)==(0); + if (!($441)) { + break; + } + $442 = HEAP8[$revSet>>0]|0; + $443 = ($442<<24>>24)!=(0); + if ($443) { + $444 = HEAP8[$rev>>0]|0; + $445 = $444&255; + $446 = HEAP8[$revIdx>>0]|0; + $447 = $446&255; + $448 = $445 ^ $447; + $449 = HEAP32[$i>>2]|0; + $450 = HEAP32[$2>>2]|0; + $451 = (($450) + 4|0); + $452 = HEAP32[$451>>2]|0; + $453 = (($452) + (($449*20)|0)|0); + $454 = (($453) + 12|0); + $455 = HEAP8[$454>>0]|0; + $456 = $455&255; + $457 = ($448|0)!=($456|0); + if (!($457)) { + break; + } + HEAP8[$isMatch>>0] = 0; + break; + } + $458 = HEAP8[$revIdx>>0]|0; + $459 = $458&255; + $460 = HEAP32[$i>>2]|0; + $461 = HEAP32[$2>>2]|0; + $462 = (($461) + 4|0); + $463 = HEAP32[$462>>2]|0; + $464 = (($463) + (($460*20)|0)|0); + $465 = (($464) + 12|0); + $466 = HEAP8[$465>>0]|0; + $467 = $466&255; + $468 = $459 ^ $467; + $469 = $468&255; + HEAP8[$rev>>0] = $469; + $470 = HEAP8[$rev>>0]|0; + $471 = ($470<<24>>24)!=(0); + if ($471) { + $472 = HEAP32[$iLoop>>2]|0; + $473 = (_bitshift64Shl(1,0,($472|0))|0); + $474 = tempRet0; + $475 = HEAP32[$7>>2]|0; + $476 = $475; + $477 = $476; + $478 = HEAP32[$477>>2]|0; + $479 = (($476) + 4)|0; + $480 = $479; + $481 = HEAP32[$480>>2]|0; + $482 = $478 | $473; + $483 = $481 | $474; + $484 = $475; + $485 = $484; + HEAP32[$485>>2] = $482; + $486 = (($484) + 4)|0; + $487 = $486; + HEAP32[$487>>2] = $483; + } + HEAP8[$revSet>>0] = 1; + } + } while(0); + $488 = HEAP8[$isMatch>>0]|0; + $489 = ($488<<24>>24)!=(0); + if (!($489)) { + label = 83; + break; + } + $490 = HEAP32[$iColumn>>2]|0; + $491 = ($490|0)<(0); + if ($491) { + HEAP8[$distinctColumns>>0] = 1; + } + $492 = HEAP32[$i>>2]|0; + $493 = (_bitshift64Shl(1,0,($492|0))|0); + $494 = tempRet0; + $495 = $obSat; + $496 = $495; + $497 = HEAP32[$496>>2]|0; + $498 = (($495) + 4)|0; + $499 = $498; + $500 = HEAP32[$499>>2]|0; + $501 = $497 | $493; + $502 = $500 | $494; + $503 = $obSat; + $504 = $503; + HEAP32[$504>>2] = $501; + $505 = (($503) + 4)|0; + $506 = $505; + HEAP32[$506>>2] = $502; + } + $513 = HEAP32[$j>>2]|0; + $514 = (($513) + 1)|0; + HEAP32[$j>>2] = $514; + } + do { + if ((label|0) == 83) { + label = 0; + $507 = HEAP32[$j>>2]|0; + $508 = ($507|0)==(0); + if (!($508)) { + $509 = HEAP32[$j>>2]|0; + $510 = HEAP16[$nKeyCol>>1]|0; + $511 = $510&65535; + $512 = ($509|0)<($511|0); + if (!($512)) { + break; + } + } + HEAP8[$isOrderDistinct>>0] = 0; + } + } while(0); + $515 = HEAP8[$distinctColumns>>0]|0; + $516 = ($515<<24>>24)!=(0); + if ($516) { + HEAP8[$isOrderDistinct>>0] = 1; + } + } + $517 = HEAP8[$isOrderDistinct>>0]|0; + $518 = ($517<<24>>24)!=(0); + L116: do { + if ($518) { + $519 = HEAP32[$pLoop>>2]|0; + $520 = (($519) + 8|0); + $521 = $520; + $522 = $521; + $523 = HEAP32[$522>>2]|0; + $524 = (($521) + 4)|0; + $525 = $524; + $526 = HEAP32[$525>>2]|0; + $527 = $orderDistinctMask; + $528 = $527; + $529 = HEAP32[$528>>2]|0; + $530 = (($527) + 4)|0; + $531 = $530; + $532 = HEAP32[$531>>2]|0; + $533 = $529 | $523; + $534 = $532 | $526; + $535 = $orderDistinctMask; + $536 = $535; + HEAP32[$536>>2] = $533; + $537 = (($535) + 4)|0; + $538 = $537; + HEAP32[$538>>2] = $534; + HEAP32[$i>>2] = 0; + while(1) { + $539 = HEAP32[$i>>2]|0; + $540 = HEAP16[$nOrderBy>>1]|0; + $541 = $540&65535; + $542 = ($539|0)<($541|0); + if (!($542)) { + break L116; + } + $543 = HEAP32[$i>>2]|0; + $544 = (_bitshift64Shl(1,0,($543|0))|0); + $545 = tempRet0; + $546 = $obSat; + $547 = $546; + $548 = HEAP32[$547>>2]|0; + $549 = (($546) + 4)|0; + $550 = $549; + $551 = HEAP32[$550>>2]|0; + $552 = $544 & $548; + $553 = $545 & $551; + $554 = ($552|0)!=(0); + $555 = ($553|0)!=(0); + $556 = $554 | $555; + do { + if (!($556)) { + $557 = HEAP32[$i>>2]|0; + $558 = HEAP32[$2>>2]|0; + $559 = (($558) + 4|0); + $560 = HEAP32[$559>>2]|0; + $561 = (($560) + (($557*20)|0)|0); + $562 = HEAP32[$561>>2]|0; + HEAP32[$p>>2] = $562; + $563 = HEAP32[$1>>2]|0; + $564 = (($563) + 68|0); + $565 = HEAP32[$p>>2]|0; + $566 = (_exprTableUsage($564,$565)|0); + $567 = tempRet0; + $568 = $mTerm; + $569 = $568; + HEAP32[$569>>2] = $566; + $570 = (($568) + 4)|0; + $571 = $570; + HEAP32[$571>>2] = $567; + $572 = $mTerm; + $573 = $572; + $574 = HEAP32[$573>>2]|0; + $575 = (($572) + 4)|0; + $576 = $575; + $577 = HEAP32[$576>>2]|0; + $578 = ($574|0)==(0); + $579 = ($577|0)==(0); + $580 = $578 & $579; + if ($580) { + $581 = HEAP32[$p>>2]|0; + $582 = (_sqlite3ExprIsConstant($581)|0); + $583 = ($582|0)!=(0); + if (!($583)) { + break; + } + } + $584 = $mTerm; + $585 = $584; + $586 = HEAP32[$585>>2]|0; + $587 = (($584) + 4)|0; + $588 = $587; + $589 = HEAP32[$588>>2]|0; + $590 = $orderDistinctMask; + $591 = $590; + $592 = HEAP32[$591>>2]|0; + $593 = (($590) + 4)|0; + $594 = $593; + $595 = HEAP32[$594>>2]|0; + $596 = $592 ^ -1; + $597 = $595 ^ -1; + $598 = $586 & $596; + $599 = $589 & $597; + $600 = ($598|0)==(0); + $601 = ($599|0)==(0); + $602 = $600 & $601; + if ($602) { + $603 = HEAP32[$i>>2]|0; + $604 = (_bitshift64Shl(1,0,($603|0))|0); + $605 = tempRet0; + $606 = $obSat; + $607 = $606; + $608 = HEAP32[$607>>2]|0; + $609 = (($606) + 4)|0; + $610 = $609; + $611 = HEAP32[$610>>2]|0; + $612 = $608 | $604; + $613 = $611 | $605; + $614 = $obSat; + $615 = $614; + HEAP32[$615>>2] = $612; + $616 = (($614) + 4)|0; + $617 = $616; + HEAP32[$617>>2] = $613; + } + } + } while(0); + $618 = HEAP32[$i>>2]|0; + $619 = (($618) + 1)|0; + HEAP32[$i>>2] = $619; + } + } + } while(0); + $620 = HEAP32[$iLoop>>2]|0; + $621 = (($620) + 1)|0; + HEAP32[$iLoop>>2] = $621; + } + if ((label|0) == 16) { + $112 = (($111) + 24|0); + $113 = (($112) + 5|0); + $114 = HEAP8[$113>>0]|0; + $115 = ($114<<24>>24)!=(0); + if ($115) { + $116 = $obDone; + $117 = $116; + $118 = HEAP32[$117>>2]|0; + $119 = (($116) + 4)|0; + $120 = $119; + $121 = HEAP32[$120>>2]|0; + $122 = $obSat; + $123 = $122; + HEAP32[$123>>2] = $118; + $124 = (($122) + 4)|0; + $125 = $124; + HEAP32[$125>>2] = $121; + } + } + else if ((label|0) == 38) { + HEAP8[$0>>0] = 0; + $681 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($681|0); + } + $622 = $obSat; + $623 = $622; + $624 = HEAP32[$623>>2]|0; + $625 = (($622) + 4)|0; + $626 = $625; + $627 = HEAP32[$626>>2]|0; + $628 = $obDone; + $629 = $628; + $630 = HEAP32[$629>>2]|0; + $631 = (($628) + 4)|0; + $632 = $631; + $633 = HEAP32[$632>>2]|0; + $634 = ($624|0)==($630|0); + $635 = ($627|0)==($633|0); + $636 = $634 & $635; + if ($636) { + $637 = HEAP16[$nOrderBy>>1]|0; + $638 = $637&255; + HEAP8[$0>>0] = $638; + $681 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($681|0); + } + $639 = HEAP8[$isOrderDistinct>>0]|0; + $640 = ($639<<24>>24)!=(0); + if ($640) { + HEAP8[$0>>0] = -1; + $681 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($681|0); + } + $641 = HEAP16[$nOrderBy>>1]|0; + $642 = $641&65535; + $643 = (($642) - 1)|0; + HEAP32[$i>>2] = $643; + while(1) { + $644 = HEAP32[$i>>2]|0; + $645 = ($644|0)>(0); + if (!($645)) { + label = 107; + break; + } + $646 = HEAP32[$i>>2]|0; + $647 = (_bitshift64Shl(1,0,($646|0))|0); + $648 = tempRet0; + $649 = (_i64Subtract(($647|0),($648|0),1,0)|0); + $650 = tempRet0; + $651 = $m; + $652 = $651; + HEAP32[$652>>2] = $649; + $653 = (($651) + 4)|0; + $654 = $653; + HEAP32[$654>>2] = $650; + $655 = $obSat; + $656 = $655; + $657 = HEAP32[$656>>2]|0; + $658 = (($655) + 4)|0; + $659 = $658; + $660 = HEAP32[$659>>2]|0; + $661 = $m; + $662 = $661; + $663 = HEAP32[$662>>2]|0; + $664 = (($661) + 4)|0; + $665 = $664; + $666 = HEAP32[$665>>2]|0; + $667 = $657 & $663; + $668 = $660 & $666; + $669 = $m; + $670 = $669; + $671 = HEAP32[$670>>2]|0; + $672 = (($669) + 4)|0; + $673 = $672; + $674 = HEAP32[$673>>2]|0; + $675 = ($667|0)==($671|0); + $676 = ($668|0)==($674|0); + $677 = $675 & $676; + $678 = HEAP32[$i>>2]|0; + if ($677) { + label = 105; + break; + } + $680 = (($678) + -1)|0; + HEAP32[$i>>2] = $680; + } + if ((label|0) == 105) { + $679 = $678&255; + HEAP8[$0>>0] = $679; + $681 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($681|0); + } + else if ((label|0) == 107) { + HEAP8[$0>>0] = 0; + $681 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($681|0); + } + return 0|0; +} +function _estLog($N) { + $N = $N|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 2|0; + $x = sp; + HEAP16[$0>>1] = $N; + $1 = HEAP16[$0>>1]|0; + $2 = $1 << 16 >> 16; + $3 = ($2|0)<(0); + $4 = $3 << 31 >> 31; + $5 = (_sqlite3LogEst($2,$4)|0); + HEAP16[$x>>1] = $5; + $6 = HEAP16[$x>>1]|0; + $7 = $6 << 16 >> 16; + $8 = ($7|0)>(33); + if (!($8)) { + $13 = 0; + $12 = $13&65535; + STACKTOP = sp;return ($12|0); + } + $9 = HEAP16[$x>>1]|0; + $10 = $9 << 16 >> 16; + $11 = (($10) - 33)|0; + $13 = $11; + $12 = $13&65535; + STACKTOP = sp;return ($12|0); +} +function _whereLoopAddVirtual($pBuilder,$0,$1) { + $pBuilder = $pBuilder|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; + var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; + var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; + var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0; + var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0; + var $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0; + var $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0; + var $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0; + var $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0; + var $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0; + var $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0; + var $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0.0, $367 = 0, $368 = 0, $369 = 0, $37 = 0; + var $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0; + var $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0; + var $406 = 0, $407 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0, $iPhase = 0, $iTerm = 0, $j = 0, $mxTerm = 0, $nConstraint = 0, $pIdxCons = 0, $pIdxInfo = 0, $pNew = 0, $pParse = 0, $pSrc = 0, $pTab = 0, $pTerm = 0; + var $pUsage = 0, $pWC = 0, $pWInfo = 0, $rc = 0, $seenIn = 0, $seenVar = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $vararg_buffer = sp + 8|0; + $2 = sp + 92|0; + $3 = sp + 88|0; + $4 = sp; + $pWInfo = sp + 84|0; + $pParse = sp + 80|0; + $pWC = sp + 76|0; + $pSrc = sp + 72|0; + $pTab = sp + 68|0; + $db = sp + 64|0; + $pIdxInfo = sp + 60|0; + $pIdxCons = sp + 56|0; + $pUsage = sp + 96|0; + $pTerm = sp + 28|0; + $i = sp + 24|0; + $j = sp + 12|0; + $iTerm = sp + 16|0; + $mxTerm = sp + 20|0; + $nConstraint = sp + 48|0; + $seenIn = sp + 32|0; + $seenVar = sp + 36|0; + $iPhase = sp + 40|0; + $pNew = sp + 44|0; + $rc = sp + 52|0; + HEAP32[$3>>2] = $pBuilder; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + HEAP32[$seenIn>>2] = 0; + HEAP32[$seenVar>>2] = 0; + HEAP32[$rc>>2] = 0; + $9 = HEAP32[$3>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$pWInfo>>2] = $10; + $11 = HEAP32[$pWInfo>>2]|0; + $12 = HEAP32[$11>>2]|0; + HEAP32[$pParse>>2] = $12; + $13 = HEAP32[$pParse>>2]|0; + $14 = HEAP32[$13>>2]|0; + HEAP32[$db>>2] = $14; + $15 = HEAP32[$3>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$pWC>>2] = $17; + $18 = HEAP32[$3>>2]|0; + $19 = (($18) + 12|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$pNew>>2] = $20; + $21 = HEAP32[$pNew>>2]|0; + $22 = (($21) + 16|0); + $23 = HEAP8[$22>>0]|0; + $24 = $23&255; + $25 = HEAP32[$pWInfo>>2]|0; + $26 = (($25) + 4|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + 8|0); + $29 = (($28) + (($24*72)|0)|0); + HEAP32[$pSrc>>2] = $29; + $30 = HEAP32[$pSrc>>2]|0; + $31 = (($30) + 16|0); + $32 = HEAP32[$31>>2]|0; + HEAP32[$pTab>>2] = $32; + $33 = HEAP32[$pParse>>2]|0; + $34 = HEAP32[$pWC>>2]|0; + $35 = HEAP32[$pSrc>>2]|0; + $36 = HEAP32[$3>>2]|0; + $37 = (($36) + 8|0); + $38 = HEAP32[$37>>2]|0; + $39 = (_allocateIndexInfo($33,$34,$35,$38)|0); + HEAP32[$pIdxInfo>>2] = $39; + $40 = HEAP32[$pIdxInfo>>2]|0; + $41 = ($40|0)==(0|0); + if ($41) { + HEAP32[$2>>2] = 7; + $407 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($407|0); + } + $42 = HEAP32[$pNew>>2]|0; + $43 = $42; + $44 = $43; + HEAP32[$44>>2] = 0; + $45 = (($43) + 4)|0; + $46 = $45; + HEAP32[$46>>2] = 0; + $47 = HEAP32[$pNew>>2]|0; + $48 = (($47) + 18|0); + HEAP16[$48>>1] = 0; + $49 = HEAP32[$pNew>>2]|0; + $50 = (($49) + 36|0); + HEAP32[$50>>2] = 1024; + $51 = HEAP32[$pNew>>2]|0; + $52 = (($51) + 40|0); + HEAP16[$52>>1] = 0; + $53 = HEAP32[$pNew>>2]|0; + $54 = (($53) + 24|0); + $55 = (($54) + 4|0); + HEAP8[$55>>0] = 0; + $56 = HEAP32[$pIdxInfo>>2]|0; + $57 = (($56) + 16|0); + $58 = HEAP32[$57>>2]|0; + HEAP32[$pUsage>>2] = $58; + $59 = HEAP32[$pIdxInfo>>2]|0; + $60 = HEAP32[$59>>2]|0; + HEAP32[$nConstraint>>2] = $60; + $61 = HEAP32[$db>>2]|0; + $62 = HEAP32[$pNew>>2]|0; + $63 = HEAP32[$nConstraint>>2]|0; + $64 = (_whereLoopResize($61,$62,$63)|0); + $65 = ($64|0)!=(0); + if ($65) { + $66 = HEAP32[$db>>2]|0; + $67 = HEAP32[$pIdxInfo>>2]|0; + _sqlite3DbFree($66,$67); + HEAP32[$2>>2] = 7; + $407 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($407|0); + } + HEAP32[$iPhase>>2] = 0; + L9: while(1) { + $68 = HEAP32[$iPhase>>2]|0; + $69 = ($68|0)<=(3); + if (!($69)) { + break; + } + $70 = HEAP32[$seenIn>>2]|0; + $71 = ($70|0)!=(0); + if (!($71)) { + $72 = HEAP32[$iPhase>>2]|0; + $73 = $72 & 1; + $74 = ($73|0)!=(0); + if ($74) { + $75 = HEAP32[$iPhase>>2]|0; + $76 = (($75) + 1)|0; + HEAP32[$iPhase>>2] = $76; + $77 = HEAP32[$iPhase>>2]|0; + $78 = ($77|0)>(3); + if ($78) { + break; + } + } + } + $79 = HEAP32[$seenVar>>2]|0; + $80 = ($79|0)!=(0); + if (!($80)) { + $81 = HEAP32[$iPhase>>2]|0; + $82 = ($81|0)>(1); + if ($82) { + break; + } + } + $83 = HEAP32[$pIdxInfo>>2]|0; + $84 = (($83) + 4|0); + $85 = HEAP32[$84>>2]|0; + HEAP32[$pIdxCons>>2] = $85; + HEAP32[$i>>2] = 0; + while(1) { + $86 = HEAP32[$i>>2]|0; + $87 = HEAP32[$pIdxInfo>>2]|0; + $88 = HEAP32[$87>>2]|0; + $89 = ($86|0)<($88|0); + if (!($89)) { + break; + } + $90 = HEAP32[$pIdxCons>>2]|0; + $91 = (($90) + 8|0); + $92 = HEAP32[$91>>2]|0; + HEAP32[$j>>2] = $92; + $93 = HEAP32[$j>>2]|0; + $94 = HEAP32[$pWC>>2]|0; + $95 = (($94) + 20|0); + $96 = HEAP32[$95>>2]|0; + $97 = (($96) + (($93*48)|0)|0); + HEAP32[$pTerm>>2] = $97; + $98 = HEAP32[$iPhase>>2]|0; + do { + if ((($98|0) == 0)) { + $99 = HEAP32[$pIdxCons>>2]|0; + $100 = (($99) + 5|0); + HEAP8[$100>>0] = 0; + $101 = HEAP32[$pTerm>>2]|0; + $102 = (($101) + 18|0); + $103 = HEAP16[$102>>1]|0; + $104 = $103&65535; + $105 = $104 & 1; + $106 = ($105|0)!=(0); + if ($106) { + HEAP32[$seenIn>>2] = 1; + } + $107 = HEAP32[$pTerm>>2]|0; + $108 = (($107) + 32|0); + $109 = $108; + $110 = $109; + $111 = HEAP32[$110>>2]|0; + $112 = (($109) + 4)|0; + $113 = $112; + $114 = HEAP32[$113>>2]|0; + $115 = ($111|0)!=(0); + $116 = ($114|0)!=(0); + $117 = $115 | $116; + if ($117) { + HEAP32[$seenVar>>2] = 1; + break; + } + $118 = HEAP32[$pTerm>>2]|0; + $119 = (($118) + 18|0); + $120 = HEAP16[$119>>1]|0; + $121 = $120&65535; + $122 = $121 & 1; + $123 = ($122|0)==(0); + if ($123) { + $124 = HEAP32[$pIdxCons>>2]|0; + $125 = (($124) + 5|0); + HEAP8[$125>>0] = 1; + } + } else if ((($98|0) == 1)) { + $126 = HEAP32[$pTerm>>2]|0; + $127 = (($126) + 32|0); + $128 = $127; + $129 = $128; + $130 = HEAP32[$129>>2]|0; + $131 = (($128) + 4)|0; + $132 = $131; + $133 = HEAP32[$132>>2]|0; + $134 = ($130|0)==(0); + $135 = ($133|0)==(0); + $136 = $134 & $135; + $137 = $136&1; + $138 = $137&255; + $139 = HEAP32[$pIdxCons>>2]|0; + $140 = (($139) + 5|0); + HEAP8[$140>>0] = $138; + } else if ((($98|0) == 2)) { + $141 = HEAP32[$pTerm>>2]|0; + $142 = (($141) + 18|0); + $143 = HEAP16[$142>>1]|0; + $144 = $143&65535; + $145 = $144 & 1; + $146 = ($145|0)==(0); + $147 = $146&1; + $148 = $147&255; + $149 = HEAP32[$pIdxCons>>2]|0; + $150 = (($149) + 5|0); + HEAP8[$150>>0] = $148; + } else { + $151 = HEAP32[$pIdxCons>>2]|0; + $152 = (($151) + 5|0); + HEAP8[$152>>0] = 1; + } + } while(0); + $153 = HEAP32[$i>>2]|0; + $154 = (($153) + 1)|0; + HEAP32[$i>>2] = $154; + $155 = HEAP32[$pIdxCons>>2]|0; + $156 = (($155) + 12|0); + HEAP32[$pIdxCons>>2] = $156; + } + $157 = HEAP32[$pUsage>>2]|0; + $158 = HEAP32[$pIdxInfo>>2]|0; + $159 = HEAP32[$158>>2]|0; + $160 = $159<<3; + _memset(($157|0),0,($160|0))|0; + $161 = HEAP32[$pIdxInfo>>2]|0; + $162 = (($161) + 28|0); + $163 = HEAP32[$162>>2]|0; + $164 = ($163|0)!=(0); + if ($164) { + $165 = HEAP32[$pIdxInfo>>2]|0; + $166 = (($165) + 24|0); + $167 = HEAP32[$166>>2]|0; + _sqlite3_free($167); + } + $168 = HEAP32[$pIdxInfo>>2]|0; + $169 = (($168) + 24|0); + HEAP32[$169>>2] = 0; + $170 = HEAP32[$pIdxInfo>>2]|0; + $171 = (($170) + 20|0); + HEAP32[$171>>2] = 0; + $172 = HEAP32[$pIdxInfo>>2]|0; + $173 = (($172) + 28|0); + HEAP32[$173>>2] = 0; + $174 = HEAP32[$pIdxInfo>>2]|0; + $175 = (($174) + 32|0); + HEAP32[$175>>2] = 0; + $176 = HEAP32[$pIdxInfo>>2]|0; + $177 = (($176) + 40|0); + HEAPF64[$177>>3] = 4.99999999999999983668E+98; + $178 = HEAP32[$pIdxInfo>>2]|0; + $179 = (($178) + 48|0); + $180 = $179; + $181 = $180; + HEAP32[$181>>2] = 25; + $182 = (($180) + 4)|0; + $183 = $182; + HEAP32[$183>>2] = 0; + $184 = HEAP32[$pParse>>2]|0; + $185 = HEAP32[$pTab>>2]|0; + $186 = HEAP32[$pIdxInfo>>2]|0; + $187 = (_vtabBestIndex($184,$185,$186)|0); + HEAP32[$rc>>2] = $187; + $188 = HEAP32[$rc>>2]|0; + $189 = ($188|0)!=(0); + if ($189) { + break; + } + $190 = HEAP32[$pIdxInfo>>2]|0; + $191 = (($190) + 4|0); + $192 = HEAP32[$191>>2]|0; + HEAP32[$pIdxCons>>2] = $192; + $193 = $4; + $194 = $193; + $195 = HEAP32[$194>>2]|0; + $196 = (($193) + 4)|0; + $197 = $196; + $198 = HEAP32[$197>>2]|0; + $199 = HEAP32[$pNew>>2]|0; + $200 = $199; + $201 = $200; + HEAP32[$201>>2] = $195; + $202 = (($200) + 4)|0; + $203 = $202; + HEAP32[$203>>2] = $198; + HEAP32[$mxTerm>>2] = -1; + HEAP32[$i>>2] = 0; + while(1) { + $204 = HEAP32[$i>>2]|0; + $205 = HEAP32[$nConstraint>>2]|0; + $206 = ($204|0)<($205|0); + if (!($206)) { + break; + } + $207 = HEAP32[$i>>2]|0; + $208 = HEAP32[$pNew>>2]|0; + $209 = (($208) + 44|0); + $210 = HEAP32[$209>>2]|0; + $211 = (($210) + ($207<<2)|0); + HEAP32[$211>>2] = 0; + $212 = HEAP32[$i>>2]|0; + $213 = (($212) + 1)|0; + HEAP32[$i>>2] = $213; + } + $214 = HEAP32[$pNew>>2]|0; + $215 = (($214) + 24|0); + $216 = (($215) + 6|0); + HEAP16[$216>>1] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $217 = HEAP32[$i>>2]|0; + $218 = HEAP32[$nConstraint>>2]|0; + $219 = ($217|0)<($218|0); + if (!($219)) { + break; + } + $220 = HEAP32[$i>>2]|0; + $221 = HEAP32[$pUsage>>2]|0; + $222 = (($221) + ($220<<3)|0); + $223 = HEAP32[$222>>2]|0; + $224 = (($223) - 1)|0; + HEAP32[$iTerm>>2] = $224; + $225 = ($224|0)>=(0); + if ($225) { + $226 = HEAP32[$pIdxCons>>2]|0; + $227 = (($226) + 8|0); + $228 = HEAP32[$227>>2]|0; + HEAP32[$j>>2] = $228; + $229 = HEAP32[$iTerm>>2]|0; + $230 = HEAP32[$nConstraint>>2]|0; + $231 = ($229|0)>=($230|0); + if ($231) { + label = 38; + break L9; + } + $232 = HEAP32[$j>>2]|0; + $233 = ($232|0)<(0); + if ($233) { + label = 38; + break L9; + } + $234 = HEAP32[$j>>2]|0; + $235 = HEAP32[$pWC>>2]|0; + $236 = (($235) + 12|0); + $237 = HEAP32[$236>>2]|0; + $238 = ($234|0)>=($237|0); + if ($238) { + label = 38; + break L9; + } + $239 = HEAP32[$iTerm>>2]|0; + $240 = HEAP32[$pNew>>2]|0; + $241 = (($240) + 44|0); + $242 = HEAP32[$241>>2]|0; + $243 = (($242) + ($239<<2)|0); + $244 = HEAP32[$243>>2]|0; + $245 = ($244|0)!=(0|0); + if ($245) { + label = 38; + break L9; + } + $249 = HEAP32[$j>>2]|0; + $250 = HEAP32[$pWC>>2]|0; + $251 = (($250) + 20|0); + $252 = HEAP32[$251>>2]|0; + $253 = (($252) + (($249*48)|0)|0); + HEAP32[$pTerm>>2] = $253; + $254 = HEAP32[$pTerm>>2]|0; + $255 = (($254) + 32|0); + $256 = $255; + $257 = $256; + $258 = HEAP32[$257>>2]|0; + $259 = (($256) + 4)|0; + $260 = $259; + $261 = HEAP32[$260>>2]|0; + $262 = HEAP32[$pNew>>2]|0; + $263 = $262; + $264 = $263; + $265 = HEAP32[$264>>2]|0; + $266 = (($263) + 4)|0; + $267 = $266; + $268 = HEAP32[$267>>2]|0; + $269 = $265 | $258; + $270 = $268 | $261; + $271 = $262; + $272 = $271; + HEAP32[$272>>2] = $269; + $273 = (($271) + 4)|0; + $274 = $273; + HEAP32[$274>>2] = $270; + $275 = HEAP32[$pTerm>>2]|0; + $276 = HEAP32[$iTerm>>2]|0; + $277 = HEAP32[$pNew>>2]|0; + $278 = (($277) + 44|0); + $279 = HEAP32[$278>>2]|0; + $280 = (($279) + ($276<<2)|0); + HEAP32[$280>>2] = $275; + $281 = HEAP32[$iTerm>>2]|0; + $282 = HEAP32[$mxTerm>>2]|0; + $283 = ($281|0)>($282|0); + if ($283) { + $284 = HEAP32[$iTerm>>2]|0; + HEAP32[$mxTerm>>2] = $284; + } + $285 = HEAP32[$iTerm>>2]|0; + $286 = ($285|0)<(16); + if ($286) { + $287 = HEAP32[$i>>2]|0; + $288 = HEAP32[$pUsage>>2]|0; + $289 = (($288) + ($287<<3)|0); + $290 = (($289) + 4|0); + $291 = HEAP8[$290>>0]|0; + $292 = $291&255; + $293 = ($292|0)!=(0); + if ($293) { + $294 = HEAP32[$iTerm>>2]|0; + $295 = 1 << $294; + $296 = HEAP32[$pNew>>2]|0; + $297 = (($296) + 24|0); + $298 = (($297) + 6|0); + $299 = HEAP16[$298>>1]|0; + $300 = $299&65535; + $301 = $300 | $295; + $302 = $301&65535; + HEAP16[$298>>1] = $302; + } + } + $303 = HEAP32[$pTerm>>2]|0; + $304 = (($303) + 18|0); + $305 = HEAP16[$304>>1]|0; + $306 = $305&65535; + $307 = $306 & 1; + $308 = ($307|0)!=(0); + if ($308) { + $309 = HEAP32[$i>>2]|0; + $310 = HEAP32[$pUsage>>2]|0; + $311 = (($310) + ($309<<3)|0); + $312 = (($311) + 4|0); + $313 = HEAP8[$312>>0]|0; + $314 = $313&255; + $315 = ($314|0)==(0); + if ($315) { + break; + } + $316 = HEAP32[$pIdxInfo>>2]|0; + $317 = (($316) + 32|0); + HEAP32[$317>>2] = 0; + } + } + $318 = HEAP32[$i>>2]|0; + $319 = (($318) + 1)|0; + HEAP32[$i>>2] = $319; + $320 = HEAP32[$pIdxCons>>2]|0; + $321 = (($320) + 12|0); + HEAP32[$pIdxCons>>2] = $321; + } + $322 = HEAP32[$i>>2]|0; + $323 = HEAP32[$nConstraint>>2]|0; + $324 = ($322|0)>=($323|0); + if ($324) { + $325 = HEAP32[$mxTerm>>2]|0; + $326 = (($325) + 1)|0; + $327 = $326&65535; + $328 = HEAP32[$pNew>>2]|0; + $329 = (($328) + 40|0); + HEAP16[$329>>1] = $327; + $330 = HEAP32[$pIdxInfo>>2]|0; + $331 = (($330) + 20|0); + $332 = HEAP32[$331>>2]|0; + $333 = HEAP32[$pNew>>2]|0; + $334 = (($333) + 24|0); + HEAP32[$334>>2] = $332; + $335 = HEAP32[$pIdxInfo>>2]|0; + $336 = (($335) + 28|0); + $337 = HEAP32[$336>>2]|0; + $338 = $337&255; + $339 = HEAP32[$pNew>>2]|0; + $340 = (($339) + 24|0); + $341 = (($340) + 4|0); + HEAP8[$341>>0] = $338; + $342 = HEAP32[$pIdxInfo>>2]|0; + $343 = (($342) + 28|0); + HEAP32[$343>>2] = 0; + $344 = HEAP32[$pIdxInfo>>2]|0; + $345 = (($344) + 24|0); + $346 = HEAP32[$345>>2]|0; + $347 = HEAP32[$pNew>>2]|0; + $348 = (($347) + 24|0); + $349 = (($348) + 8|0); + HEAP32[$349>>2] = $346; + $350 = HEAP32[$pIdxInfo>>2]|0; + $351 = (($350) + 32|0); + $352 = HEAP32[$351>>2]|0; + $353 = ($352|0)!=(0); + if ($353) { + $354 = HEAP32[$pIdxInfo>>2]|0; + $355 = (($354) + 8|0); + $356 = HEAP32[$355>>2]|0; + $358 = $356; + } else { + $358 = 0; + } + $357 = $358&255; + $359 = HEAP32[$pNew>>2]|0; + $360 = (($359) + 24|0); + $361 = (($360) + 5|0); + HEAP8[$361>>0] = $357; + $362 = HEAP32[$pNew>>2]|0; + $363 = (($362) + 18|0); + HEAP16[$363>>1] = 0; + $364 = HEAP32[$pIdxInfo>>2]|0; + $365 = (($364) + 40|0); + $366 = +HEAPF64[$365>>3]; + $367 = (_sqlite3LogEstFromDouble($366)|0); + $368 = HEAP32[$pNew>>2]|0; + $369 = (($368) + 20|0); + HEAP16[$369>>1] = $367; + $370 = HEAP32[$pIdxInfo>>2]|0; + $371 = (($370) + 48|0); + $372 = $371; + $373 = $372; + $374 = HEAP32[$373>>2]|0; + $375 = (($372) + 4)|0; + $376 = $375; + $377 = HEAP32[$376>>2]|0; + $378 = (_sqlite3LogEst($374,$377)|0); + $379 = HEAP32[$pNew>>2]|0; + $380 = (($379) + 22|0); + HEAP16[$380>>1] = $378; + $381 = HEAP32[$3>>2]|0; + $382 = HEAP32[$pNew>>2]|0; + (_whereLoopInsert($381,$382)|0); + $383 = HEAP32[$pNew>>2]|0; + $384 = (($383) + 24|0); + $385 = (($384) + 4|0); + $386 = HEAP8[$385>>0]|0; + $387 = ($386<<24>>24)!=(0); + if ($387) { + $388 = HEAP32[$pNew>>2]|0; + $389 = (($388) + 24|0); + $390 = (($389) + 8|0); + $391 = HEAP32[$390>>2]|0; + _sqlite3_free($391); + $392 = HEAP32[$pNew>>2]|0; + $393 = (($392) + 24|0); + $394 = (($393) + 4|0); + HEAP8[$394>>0] = 0; + } + } + $395 = HEAP32[$iPhase>>2]|0; + $396 = (($395) + 1)|0; + HEAP32[$iPhase>>2] = $396; + } + if ((label|0) == 38) { + HEAP32[$rc>>2] = 1; + $246 = HEAP32[$pParse>>2]|0; + $247 = HEAP32[$pTab>>2]|0; + $248 = HEAP32[$247>>2]|0; + HEAP32[$vararg_buffer>>2] = $248; + _sqlite3ErrorMsg($246,30544,$vararg_buffer); + } + $397 = HEAP32[$pIdxInfo>>2]|0; + $398 = (($397) + 28|0); + $399 = HEAP32[$398>>2]|0; + $400 = ($399|0)!=(0); + if ($400) { + $401 = HEAP32[$pIdxInfo>>2]|0; + $402 = (($401) + 24|0); + $403 = HEAP32[$402>>2]|0; + _sqlite3_free($403); + } + $404 = HEAP32[$db>>2]|0; + $405 = HEAP32[$pIdxInfo>>2]|0; + _sqlite3DbFree($404,$405); + $406 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $406; + $407 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($407|0); +} +function _whereLoopAddBtree($pBuilder,$0,$1) { + $pBuilder = $pBuilder|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; + var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; + var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; + var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0; + var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0; + var $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0; + var $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0; + var $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0; + var $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0; + var $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0; + var $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0; + var $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0; + var $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0; + var $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0; + var $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0; + var $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0; + var $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0; + var $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aiColumnPk = 0, $aiRowEstPk = 0, $b = 0, $iSortIdx = 0, $m = 0, $pFirst = 0, $pNew = 0, $pProbe = 0, $pSrc = 0, $pTab = 0, $pTabList = 0; + var $pTerm = 0, $pWC = 0, $pWCEnd = 0, $pWInfo = 0, $rLogSize = 0, $rSize = 0, $rc = 0, $sPk = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; + $2 = sp + 128|0; + $3 = sp; + $pWInfo = sp + 60|0; + $pProbe = sp + 64|0; + $sPk = sp + 72|0; + $aiRowEstPk = sp + 132|0; + $aiColumnPk = sp + 136|0; + $pTabList = sp + 56|0; + $pSrc = sp + 52|0; + $pNew = sp + 48|0; + $rc = sp + 44|0; + $iSortIdx = sp + 20|0; + $b = sp + 28|0; + $rSize = sp + 140|0; + $rLogSize = sp + 138|0; + $pWC = sp + 16|0; + $pTab = sp + 24|0; + $pFirst = sp + 40|0; + $pTerm = sp + 32|0; + $pWCEnd = sp + 36|0; + $m = sp + 8|0; + HEAP32[$2>>2] = $pBuilder; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + HEAP16[$aiColumnPk>>1] = -1; + HEAP32[$rc>>2] = 0; + HEAP32[$iSortIdx>>2] = 1; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 12|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$pNew>>2] = $10; + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$11>>2]|0; + HEAP32[$pWInfo>>2] = $12; + $13 = HEAP32[$pWInfo>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$pTabList>>2] = $15; + $16 = HEAP32[$pTabList>>2]|0; + $17 = (($16) + 8|0); + $18 = HEAP32[$pNew>>2]|0; + $19 = (($18) + 16|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = (($17) + (($21*72)|0)|0); + HEAP32[$pSrc>>2] = $22; + $23 = HEAP32[$pSrc>>2]|0; + $24 = (($23) + 16|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$pTab>>2] = $25; + $26 = HEAP32[$2>>2]|0; + $27 = (($26) + 4|0); + $28 = HEAP32[$27>>2]|0; + HEAP32[$pWC>>2] = $28; + $29 = HEAP32[$pSrc>>2]|0; + $30 = (($29) + 68|0); + $31 = HEAP32[$30>>2]|0; + $32 = ($31|0)!=(0|0); + do { + if ($32) { + $33 = HEAP32[$pSrc>>2]|0; + $34 = (($33) + 68|0); + $35 = HEAP32[$34>>2]|0; + HEAP32[$pProbe>>2] = $35; + } else { + $36 = HEAP32[$pTab>>2]|0; + $37 = (($36) + 44|0); + $38 = HEAP8[$37>>0]|0; + $39 = $38&255; + $40 = $39 & 32; + $41 = ($40|0)==(0); + if (!($41)) { + $42 = HEAP32[$pTab>>2]|0; + $43 = (($42) + 8|0); + $44 = HEAP32[$43>>2]|0; + HEAP32[$pProbe>>2] = $44; + break; + } + dest=$sPk+0|0; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $45 = (($sPk) + 50|0); + HEAP16[$45>>1] = 1; + $46 = (($sPk) + 4|0); + HEAP32[$46>>2] = $aiColumnPk; + $47 = (($sPk) + 8|0); + HEAP32[$47>>2] = $aiRowEstPk; + $48 = (($sPk) + 54|0); + HEAP8[$48>>0] = 5; + $49 = HEAP32[$pTab>>2]|0; + $50 = (($sPk) + 12|0); + HEAP32[$50>>2] = $49; + $51 = HEAP32[$pTab>>2]|0; + $52 = (($51) + 42|0); + $53 = HEAP16[$52>>1]|0; + $54 = (($sPk) + 48|0); + HEAP16[$54>>1] = $53; + $55 = HEAP32[$pTab>>2]|0; + $56 = (($55) + 28|0); + $57 = HEAP16[$56>>1]|0; + HEAP16[$aiRowEstPk>>1] = $57; + $58 = (($aiRowEstPk) + 2|0); + HEAP16[$58>>1] = 0; + $59 = HEAP32[$pSrc>>2]|0; + $60 = (($59) + 16|0); + $61 = HEAP32[$60>>2]|0; + $62 = (($61) + 8|0); + $63 = HEAP32[$62>>2]|0; + HEAP32[$pFirst>>2] = $63; + $64 = HEAP32[$pSrc>>2]|0; + $65 = (($64) + 37|0); + $66 = HEAP8[$65>>0]|0; + $67 = $66 & 1; + $68 = $67&255; + $69 = ($68|0)==(0); + if ($69) { + $70 = HEAP32[$pFirst>>2]|0; + $71 = (($sPk) + 20|0); + HEAP32[$71>>2] = $70; + } + HEAP32[$pProbe>>2] = $sPk; + } + } while(0); + $72 = HEAP32[$pTab>>2]|0; + $73 = (($72) + 28|0); + $74 = HEAP16[$73>>1]|0; + HEAP16[$rSize>>1] = $74; + $75 = HEAP16[$rSize>>1]|0; + $76 = (_estLog($75)|0); + HEAP16[$rLogSize>>1] = $76; + $77 = HEAP32[$2>>2]|0; + $78 = (($77) + 16|0); + $79 = HEAP32[$78>>2]|0; + $80 = ($79|0)!=(0|0); + L11: do { + if (!($80)) { + $81 = HEAP32[$pWInfo>>2]|0; + $82 = HEAP32[$81>>2]|0; + $83 = HEAP32[$82>>2]|0; + $84 = (($83) + 24|0); + $85 = HEAP32[$84>>2]|0; + $86 = $85 & 1048576; + $87 = ($86|0)!=(0); + if ($87) { + $88 = HEAP32[$pSrc>>2]|0; + $89 = (($88) + 68|0); + $90 = HEAP32[$89>>2]|0; + $91 = ($90|0)==(0|0); + if ($91) { + $92 = HEAP32[$pSrc>>2]|0; + $93 = (($92) + 37|0); + $94 = HEAP8[$93>>0]|0; + $95 = ($94&255) >>> 2; + $96 = $95 & 1; + $97 = $96&255; + $98 = ($97|0)!=(0); + if (!($98)) { + $99 = HEAP32[$pSrc>>2]|0; + $100 = (($99) + 37|0); + $101 = HEAP8[$100>>0]|0; + $102 = $101 & 1; + $103 = $102&255; + $104 = ($103|0)!=(0); + if (!($104)) { + $105 = HEAP32[$pTab>>2]|0; + $106 = (($105) + 44|0); + $107 = HEAP8[$106>>0]|0; + $108 = $107&255; + $109 = $108 & 32; + $110 = ($109|0)==(0); + if ($110) { + $111 = HEAP32[$pSrc>>2]|0; + $112 = (($111) + 37|0); + $113 = HEAP8[$112>>0]|0; + $114 = ($113&255) >>> 1; + $115 = $114 & 1; + $116 = $115&255; + $117 = ($116|0)!=(0); + if (!($117)) { + $118 = HEAP32[$pSrc>>2]|0; + $119 = (($118) + 37|0); + $120 = HEAP8[$119>>0]|0; + $121 = ($120&255) >>> 3; + $122 = $121 & 1; + $123 = $122&255; + $124 = ($123|0)!=(0); + if (!($124)) { + $125 = HEAP32[$pWC>>2]|0; + $126 = (($125) + 20|0); + $127 = HEAP32[$126>>2]|0; + $128 = HEAP32[$pWC>>2]|0; + $129 = (($128) + 12|0); + $130 = HEAP32[$129>>2]|0; + $131 = (($127) + (($130*48)|0)|0); + HEAP32[$pWCEnd>>2] = $131; + $132 = HEAP32[$pWC>>2]|0; + $133 = (($132) + 20|0); + $134 = HEAP32[$133>>2]|0; + HEAP32[$pTerm>>2] = $134; + while(1) { + $135 = HEAP32[$rc>>2]|0; + $136 = ($135|0)==(0); + if (!($136)) { + break L11; + } + $137 = HEAP32[$pTerm>>2]|0; + $138 = HEAP32[$pWCEnd>>2]|0; + $139 = ($137>>>0)<($138>>>0); + if (!($139)) { + break L11; + } + $140 = HEAP32[$pTerm>>2]|0; + $141 = (($140) + 32|0); + $142 = $141; + $143 = $142; + $144 = HEAP32[$143>>2]|0; + $145 = (($142) + 4)|0; + $146 = $145; + $147 = HEAP32[$146>>2]|0; + $148 = HEAP32[$pNew>>2]|0; + $149 = (($148) + 8|0); + $150 = $149; + $151 = $150; + $152 = HEAP32[$151>>2]|0; + $153 = (($150) + 4)|0; + $154 = $153; + $155 = HEAP32[$154>>2]|0; + $156 = $144 & $152; + $157 = $147 & $155; + $158 = ($156|0)!=(0); + $159 = ($157|0)!=(0); + $160 = $158 | $159; + if (!($160)) { + $161 = HEAP32[$pTerm>>2]|0; + $162 = HEAP32[$pSrc>>2]|0; + $163 = (_termCanDriveIndex($161,$162,0,0)|0); + $164 = ($163|0)!=(0); + if ($164) { + $165 = HEAP32[$pNew>>2]|0; + $166 = (($165) + 24|0); + HEAP16[$166>>1] = 1; + $167 = HEAP32[$pNew>>2]|0; + $168 = (($167) + 24|0); + $169 = (($168) + 2|0); + HEAP16[$169>>1] = 0; + $170 = HEAP32[$pNew>>2]|0; + $171 = (($170) + 24|0); + $172 = (($171) + 4|0); + HEAP32[$172>>2] = 0; + $173 = HEAP32[$pNew>>2]|0; + $174 = (($173) + 40|0); + HEAP16[$174>>1] = 1; + $175 = HEAP32[$pTerm>>2]|0; + $176 = HEAP32[$pNew>>2]|0; + $177 = (($176) + 44|0); + $178 = HEAP32[$177>>2]|0; + HEAP32[$178>>2] = $175; + $179 = HEAP16[$rLogSize>>1]|0; + $180 = $179 << 16 >> 16; + $181 = HEAP16[$rSize>>1]|0; + $182 = $181 << 16 >> 16; + $183 = (($180) + ($182))|0; + $184 = (($183) + 28)|0; + $185 = $184&65535; + $186 = HEAP32[$pNew>>2]|0; + $187 = (($186) + 18|0); + HEAP16[$187>>1] = $185; + $188 = HEAP32[$pNew>>2]|0; + $189 = (($188) + 22|0); + HEAP16[$189>>1] = 43; + $190 = HEAP16[$rLogSize>>1]|0; + $191 = HEAP32[$pNew>>2]|0; + $192 = (($191) + 22|0); + $193 = HEAP16[$192>>1]|0; + $194 = (_sqlite3LogEstAdd($190,$193)|0); + $195 = HEAP32[$pNew>>2]|0; + $196 = (($195) + 20|0); + HEAP16[$196>>1] = $194; + $197 = HEAP32[$pNew>>2]|0; + $198 = (($197) + 36|0); + HEAP32[$198>>2] = 16384; + $199 = $3; + $200 = $199; + $201 = HEAP32[$200>>2]|0; + $202 = (($199) + 4)|0; + $203 = $202; + $204 = HEAP32[$203>>2]|0; + $205 = HEAP32[$pTerm>>2]|0; + $206 = (($205) + 32|0); + $207 = $206; + $208 = $207; + $209 = HEAP32[$208>>2]|0; + $210 = (($207) + 4)|0; + $211 = $210; + $212 = HEAP32[$211>>2]|0; + $213 = $201 | $209; + $214 = $204 | $212; + $215 = HEAP32[$pNew>>2]|0; + $216 = $215; + $217 = $216; + HEAP32[$217>>2] = $213; + $218 = (($216) + 4)|0; + $219 = $218; + HEAP32[$219>>2] = $214; + $220 = HEAP32[$2>>2]|0; + $221 = HEAP32[$pNew>>2]|0; + $222 = (_whereLoopInsert($220,$221)|0); + HEAP32[$rc>>2] = $222; + } + } + $223 = HEAP32[$pTerm>>2]|0; + $224 = (($223) + 48|0); + HEAP32[$pTerm>>2] = $224; + } + } + } + } + } + } + } + } + } + } while(0); + L28: while(1) { + $225 = HEAP32[$rc>>2]|0; + $226 = ($225|0)==(0); + if (!($226)) { + label = 45; + break; + } + $227 = HEAP32[$pProbe>>2]|0; + $228 = ($227|0)!=(0|0); + if (!($228)) { + label = 45; + break; + } + $229 = HEAP32[$pProbe>>2]|0; + $230 = (($229) + 36|0); + $231 = HEAP32[$230>>2]|0; + $232 = ($231|0)!=(0|0); + if ($232) { + $233 = HEAP32[$pNew>>2]|0; + $234 = (($233) + 16|0); + $235 = HEAP8[$234>>0]|0; + $236 = $235&255; + $237 = HEAP32[$pWC>>2]|0; + $238 = HEAP32[$pProbe>>2]|0; + $239 = (($238) + 36|0); + $240 = HEAP32[$239>>2]|0; + $241 = (_whereUsablePartialIndex($236,$237,$240)|0); + $242 = ($241|0)!=(0); + if ($242) { + label = 27; + } + } else { + label = 27; + } + if ((label|0) == 27) { + label = 0; + $243 = HEAP32[$pProbe>>2]|0; + $244 = (($243) + 8|0); + $245 = HEAP32[$244>>2]|0; + $246 = HEAP16[$245>>1]|0; + HEAP16[$rSize>>1] = $246; + $247 = HEAP32[$pNew>>2]|0; + $248 = (($247) + 24|0); + HEAP16[$248>>1] = 0; + $249 = HEAP32[$pNew>>2]|0; + $250 = (($249) + 24|0); + $251 = (($250) + 2|0); + HEAP16[$251>>1] = 0; + $252 = HEAP32[$pNew>>2]|0; + $253 = (($252) + 40|0); + HEAP16[$253>>1] = 0; + $254 = HEAP32[$pNew>>2]|0; + $255 = (($254) + 17|0); + HEAP8[$255>>0] = 0; + $256 = HEAP32[$pNew>>2]|0; + $257 = (($256) + 18|0); + HEAP16[$257>>1] = 0; + $258 = $3; + $259 = $258; + $260 = HEAP32[$259>>2]|0; + $261 = (($258) + 4)|0; + $262 = $261; + $263 = HEAP32[$262>>2]|0; + $264 = HEAP32[$pNew>>2]|0; + $265 = $264; + $266 = $265; + HEAP32[$266>>2] = $260; + $267 = (($265) + 4)|0; + $268 = $267; + HEAP32[$268>>2] = $263; + $269 = HEAP16[$rSize>>1]|0; + $270 = HEAP32[$pNew>>2]|0; + $271 = (($270) + 22|0); + HEAP16[$271>>1] = $269; + $272 = HEAP32[$pProbe>>2]|0; + $273 = HEAP32[$pNew>>2]|0; + $274 = (($273) + 24|0); + $275 = (($274) + 4|0); + HEAP32[$275>>2] = $272; + $276 = HEAP32[$2>>2]|0; + $277 = HEAP32[$pProbe>>2]|0; + $278 = HEAP32[$pSrc>>2]|0; + $279 = (($278) + 40|0); + $280 = HEAP32[$279>>2]|0; + $281 = (_indexMightHelpWithOrderBy($276,$277,$280)|0); + HEAP32[$b>>2] = $281; + $282 = HEAP32[$pProbe>>2]|0; + $283 = (($282) + 44|0); + $284 = HEAP32[$283>>2]|0; + $285 = ($284|0)<=(0); + do { + if ($285) { + $286 = HEAP32[$pNew>>2]|0; + $287 = (($286) + 36|0); + HEAP32[$287>>2] = 256; + $288 = HEAP32[$b>>2]|0; + $289 = ($288|0)!=(0); + $290 = HEAP32[$iSortIdx>>2]|0; + $291 = $289 ? $290 : 0; + $292 = $291&255; + $293 = HEAP32[$pNew>>2]|0; + $294 = (($293) + 17|0); + HEAP8[$294>>0] = $292; + $295 = HEAP16[$rSize>>1]|0; + $296 = $295 << 16 >> 16; + $297 = (($296) + 16)|0; + $298 = $297&65535; + $299 = HEAP32[$pNew>>2]|0; + $300 = (($299) + 20|0); + HEAP16[$300>>1] = $298; + $301 = HEAP32[$pWC>>2]|0; + $302 = HEAP32[$pNew>>2]|0; + _whereLoopOutputAdjust($301,$302); + $303 = HEAP32[$2>>2]|0; + $304 = HEAP32[$pNew>>2]|0; + $305 = (_whereLoopInsert($303,$304)|0); + HEAP32[$rc>>2] = $305; + $306 = HEAP16[$rSize>>1]|0; + $307 = HEAP32[$pNew>>2]|0; + $308 = (($307) + 22|0); + HEAP16[$308>>1] = $306; + $309 = HEAP32[$rc>>2]|0; + $310 = ($309|0)!=(0); + if ($310) { + label = 45; + break L28; + } + } else { + $311 = HEAP32[$pProbe>>2]|0; + $312 = (($311) + 55|0); + $313 = HEAP8[$312>>0]|0; + $314 = ($313&255) >>> 5; + $315 = $314 & 1; + $316 = $315&255; + $317 = ($316|0)!=(0); + if ($317) { + $318 = HEAP32[$pNew>>2]|0; + $319 = (($318) + 36|0); + HEAP32[$319>>2] = 576; + $320 = $m; + $321 = $320; + HEAP32[$321>>2] = 0; + $322 = (($320) + 4)|0; + $323 = $322; + HEAP32[$323>>2] = 0; + } else { + $324 = HEAP32[$pSrc>>2]|0; + $325 = (($324) + 56|0); + $326 = $325; + $327 = $326; + $328 = HEAP32[$327>>2]|0; + $329 = (($326) + 4)|0; + $330 = $329; + $331 = HEAP32[$330>>2]|0; + $332 = HEAP32[$pProbe>>2]|0; + $333 = (_columnsInIndex($332)|0); + $334 = tempRet0; + $335 = $333 ^ -1; + $336 = $334 ^ -1; + $337 = $328 & $335; + $338 = $331 & $336; + $339 = $m; + $340 = $339; + HEAP32[$340>>2] = $337; + $341 = (($339) + 4)|0; + $342 = $341; + HEAP32[$342>>2] = $338; + $343 = $m; + $344 = $343; + $345 = HEAP32[$344>>2]|0; + $346 = (($343) + 4)|0; + $347 = $346; + $348 = HEAP32[$347>>2]|0; + $349 = ($345|0)==(0); + $350 = ($348|0)==(0); + $351 = $349 & $350; + $352 = $351 ? 576 : 512; + $353 = HEAP32[$pNew>>2]|0; + $354 = (($353) + 36|0); + HEAP32[$354>>2] = $352; + } + $355 = HEAP32[$b>>2]|0; + $356 = ($355|0)!=(0); + if (!($356)) { + $357 = HEAP32[$pTab>>2]|0; + $358 = (($357) + 44|0); + $359 = HEAP8[$358>>0]|0; + $360 = $359&255; + $361 = $360 & 32; + $362 = ($361|0)==(0); + if ($362) { + $363 = $m; + $364 = $363; + $365 = HEAP32[$364>>2]|0; + $366 = (($363) + 4)|0; + $367 = $366; + $368 = HEAP32[$367>>2]|0; + $369 = ($365|0)==(0); + $370 = ($368|0)==(0); + $371 = $369 & $370; + if (!($371)) { + break; + } + $372 = HEAP32[$pProbe>>2]|0; + $373 = (($372) + 55|0); + $374 = HEAP8[$373>>0]|0; + $375 = ($374&255) >>> 2; + $376 = $375 & 1; + $377 = $376&255; + $378 = ($377|0)==(0); + if (!($378)) { + break; + } + $379 = HEAP32[$pProbe>>2]|0; + $380 = (($379) + 48|0); + $381 = HEAP16[$380>>1]|0; + $382 = $381 << 16 >> 16; + $383 = HEAP32[$pTab>>2]|0; + $384 = (($383) + 42|0); + $385 = HEAP16[$384>>1]|0; + $386 = $385 << 16 >> 16; + $387 = ($382|0)<($386|0); + if (!($387)) { + break; + } + $388 = HEAP32[$pWInfo>>2]|0; + $389 = (($388) + 34|0); + $390 = HEAP16[$389>>1]|0; + $391 = $390&65535; + $392 = $391 & 4; + $393 = ($392|0)==(0); + if (!($393)) { + break; + } + $394 = HEAP32[((45136 + 16|0))>>2]|0; + $395 = ($394|0)!=(0); + if (!($395)) { + break; + } + $396 = HEAP32[$pWInfo>>2]|0; + $397 = HEAP32[$396>>2]|0; + $398 = HEAP32[$397>>2]|0; + $399 = (($398) + 60|0); + $400 = HEAP16[$399>>1]|0; + $401 = $400&65535; + $402 = $401 & 64; + $403 = ($402|0)==(0); + if (!($403)) { + break; + } + } + } + $404 = HEAP32[$b>>2]|0; + $405 = ($404|0)!=(0); + $406 = HEAP32[$iSortIdx>>2]|0; + $407 = $405 ? $406 : 0; + $408 = $407&255; + $409 = HEAP32[$pNew>>2]|0; + $410 = (($409) + 17|0); + HEAP8[$410>>0] = $408; + $411 = HEAP16[$rSize>>1]|0; + $412 = $411 << 16 >> 16; + $413 = (($412) + 1)|0; + $414 = HEAP32[$pProbe>>2]|0; + $415 = (($414) + 48|0); + $416 = HEAP16[$415>>1]|0; + $417 = $416 << 16 >> 16; + $418 = ($417*15)|0; + $419 = HEAP32[$pTab>>2]|0; + $420 = (($419) + 42|0); + $421 = HEAP16[$420>>1]|0; + $422 = $421 << 16 >> 16; + $423 = (($418|0) / ($422|0))&-1; + $424 = (($413) + ($423))|0; + $425 = $424&65535; + $426 = HEAP32[$pNew>>2]|0; + $427 = (($426) + 20|0); + HEAP16[$427>>1] = $425; + $428 = $m; + $429 = $428; + $430 = HEAP32[$429>>2]|0; + $431 = (($428) + 4)|0; + $432 = $431; + $433 = HEAP32[$432>>2]|0; + $434 = ($430|0)!=(0); + $435 = ($433|0)!=(0); + $436 = $434 | $435; + if ($436) { + $437 = HEAP32[$pNew>>2]|0; + $438 = (($437) + 20|0); + $439 = HEAP16[$438>>1]|0; + $440 = HEAP16[$rSize>>1]|0; + $441 = $440 << 16 >> 16; + $442 = (($441) + 16)|0; + $443 = $442&65535; + $444 = (_sqlite3LogEstAdd($439,$443)|0); + $445 = HEAP32[$pNew>>2]|0; + $446 = (($445) + 20|0); + HEAP16[$446>>1] = $444; + } + $447 = HEAP32[$pWC>>2]|0; + $448 = HEAP32[$pNew>>2]|0; + _whereLoopOutputAdjust($447,$448); + $449 = HEAP32[$2>>2]|0; + $450 = HEAP32[$pNew>>2]|0; + $451 = (_whereLoopInsert($449,$450)|0); + HEAP32[$rc>>2] = $451; + $452 = HEAP16[$rSize>>1]|0; + $453 = HEAP32[$pNew>>2]|0; + $454 = (($453) + 22|0); + HEAP16[$454>>1] = $452; + $455 = HEAP32[$rc>>2]|0; + $456 = ($455|0)!=(0); + if ($456) { + label = 45; + break L28; + } + } + } while(0); + $457 = HEAP32[$2>>2]|0; + $458 = HEAP32[$pSrc>>2]|0; + $459 = HEAP32[$pProbe>>2]|0; + $460 = (_whereLoopAddBtreeIndex($457,$458,$459,0)|0); + HEAP32[$rc>>2] = $460; + $461 = HEAP32[$pSrc>>2]|0; + $462 = (($461) + 68|0); + $463 = HEAP32[$462>>2]|0; + $464 = ($463|0)!=(0|0); + if ($464) { + label = 45; + break; + } + } + $465 = HEAP32[$pProbe>>2]|0; + $466 = (($465) + 20|0); + $467 = HEAP32[$466>>2]|0; + HEAP32[$pProbe>>2] = $467; + $468 = HEAP32[$iSortIdx>>2]|0; + $469 = (($468) + 1)|0; + HEAP32[$iSortIdx>>2] = $469; + } + if ((label|0) == 45) { + $470 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($470|0); + } + return 0|0; +} +function _whereLoopAddOr($pBuilder,$0,$1) { + $pBuilder = $pBuilder|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; + var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; + var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; + var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0; + var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0; + var $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iCur = 0, $j = 0, $once = 0, $pItem = 0; + var $pNew = 0, $pOrTerm = 0, $pOrWC = 0, $pOrWCEnd = 0, $pTerm = 0, $pWC = 0, $pWCEnd = 0, $pWInfo = 0, $rc = 0, $sCur = 0, $sPrev = 0, $sSubBuild = 0, $sSum = 0, $tempWC = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 672|0; + $2 = sp + 664|0; + $3 = sp + 660|0; + $4 = sp + 576|0; + $pWInfo = sp + 656|0; + $pWC = sp + 652|0; + $pNew = sp + 648|0; + $pTerm = sp + 644|0; + $pWCEnd = sp + 640|0; + $rc = sp + 636|0; + $iCur = sp + 632|0; + $tempWC = sp; + $sSubBuild = sp + 588|0; + $sSum = sp + 464|0; + $sCur = sp + 408|0; + $pItem = sp + 612|0; + $pOrWC = sp + 616|0; + $pOrWCEnd = sp + 608|0; + $pOrTerm = sp + 624|0; + $once = sp + 628|0; + $i = sp + 620|0; + $j = sp + 584|0; + $sPrev = sp + 520|0; + HEAP32[$3>>2] = $pBuilder; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + $9 = HEAP32[$3>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$pWInfo>>2] = $10; + HEAP32[$rc>>2] = 0; + $11 = HEAP32[$3>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pWC>>2] = $13; + $14 = HEAP32[$pWInfo>>2]|0; + $15 = (($14) + 34|0); + $16 = HEAP16[$15>>1]|0; + $17 = $16&65535; + $18 = $17 & 128; + $19 = ($18|0)!=(0); + if ($19) { + HEAP32[$2>>2] = 0; + $256 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($256|0); + } + $20 = HEAP32[$pWC>>2]|0; + $21 = (($20) + 20|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$pWC>>2]|0; + $24 = (($23) + 12|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($22) + (($25*48)|0)|0); + HEAP32[$pWCEnd>>2] = $26; + $27 = HEAP32[$3>>2]|0; + $28 = (($27) + 12|0); + $29 = HEAP32[$28>>2]|0; + HEAP32[$pNew>>2] = $29; + dest=$sSum+0|0; stop=dest+56|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $30 = HEAP32[$pWInfo>>2]|0; + $31 = (($30) + 4|0); + $32 = HEAP32[$31>>2]|0; + $33 = (($32) + 8|0); + $34 = HEAP32[$pNew>>2]|0; + $35 = (($34) + 16|0); + $36 = HEAP8[$35>>0]|0; + $37 = $36&255; + $38 = (($33) + (($37*72)|0)|0); + HEAP32[$pItem>>2] = $38; + $39 = HEAP32[$pItem>>2]|0; + $40 = (($39) + 40|0); + $41 = HEAP32[$40>>2]|0; + HEAP32[$iCur>>2] = $41; + $42 = HEAP32[$pWC>>2]|0; + $43 = (($42) + 20|0); + $44 = HEAP32[$43>>2]|0; + HEAP32[$pTerm>>2] = $44; + while(1) { + $45 = HEAP32[$pTerm>>2]|0; + $46 = HEAP32[$pWCEnd>>2]|0; + $47 = ($45>>>0)<($46>>>0); + if (!($47)) { + break; + } + $48 = HEAP32[$rc>>2]|0; + $49 = ($48|0)==(0); + if (!($49)) { + break; + } + $50 = HEAP32[$pTerm>>2]|0; + $51 = (($50) + 18|0); + $52 = HEAP16[$51>>1]|0; + $53 = $52&65535; + $54 = $53 & 256; + $55 = ($54|0)!=(0); + L9: do { + if ($55) { + $56 = HEAP32[$pTerm>>2]|0; + $57 = (($56) + 12|0); + $58 = HEAP32[$57>>2]|0; + $59 = (($58) + 408|0); + $60 = $59; + $61 = $60; + $62 = HEAP32[$61>>2]|0; + $63 = (($60) + 4)|0; + $64 = $63; + $65 = HEAP32[$64>>2]|0; + $66 = HEAP32[$pNew>>2]|0; + $67 = (($66) + 8|0); + $68 = $67; + $69 = $68; + $70 = HEAP32[$69>>2]|0; + $71 = (($68) + 4)|0; + $72 = $71; + $73 = HEAP32[$72>>2]|0; + $74 = $62 & $70; + $75 = $65 & $73; + $76 = ($74|0)!=(0); + $77 = ($75|0)!=(0); + $78 = $76 | $77; + if ($78) { + $79 = HEAP32[$pTerm>>2]|0; + $80 = (($79) + 12|0); + $81 = HEAP32[$80>>2]|0; + HEAP32[$pOrWC>>2] = $81; + $82 = HEAP32[$pOrWC>>2]|0; + $83 = (($82) + 12|0); + $84 = HEAP32[$83>>2]|0; + $85 = HEAP32[$pOrWC>>2]|0; + $86 = (($85) + 20|0); + $87 = HEAP32[$86>>2]|0; + $88 = (($87) + (($84*48)|0)|0); + HEAP32[$pOrWCEnd>>2] = $88; + HEAP32[$once>>2] = 1; + $89 = HEAP32[$3>>2]|0; + ;HEAP32[$sSubBuild+0>>2]=HEAP32[$89+0>>2]|0;HEAP32[$sSubBuild+4>>2]=HEAP32[$89+4>>2]|0;HEAP32[$sSubBuild+8>>2]=HEAP32[$89+8>>2]|0;HEAP32[$sSubBuild+12>>2]=HEAP32[$89+12>>2]|0;HEAP32[$sSubBuild+16>>2]=HEAP32[$89+16>>2]|0; + $90 = (($sSubBuild) + 8|0); + HEAP32[$90>>2] = 0; + $91 = (($sSubBuild) + 16|0); + HEAP32[$91>>2] = $sCur; + $92 = HEAP32[$pOrWC>>2]|0; + $93 = (($92) + 20|0); + $94 = HEAP32[$93>>2]|0; + HEAP32[$pOrTerm>>2] = $94; + L12: while(1) { + $95 = HEAP32[$pOrTerm>>2]|0; + $96 = HEAP32[$pOrWCEnd>>2]|0; + $97 = ($95>>>0)<($96>>>0); + if (!($97)) { + break; + } + $98 = HEAP32[$pOrTerm>>2]|0; + $99 = (($98) + 18|0); + $100 = HEAP16[$99>>1]|0; + $101 = $100&65535; + $102 = $101 & 512; + $103 = ($102|0)!=(0); + $104 = HEAP32[$pOrTerm>>2]|0; + if ($103) { + $105 = (($104) + 12|0); + $106 = HEAP32[$105>>2]|0; + $107 = (($sSubBuild) + 4|0); + HEAP32[$107>>2] = $106; + label = 14; + } else { + $108 = (($104) + 8|0); + $109 = HEAP32[$108>>2]|0; + $110 = HEAP32[$iCur>>2]|0; + $111 = ($109|0)==($110|0); + if ($111) { + $112 = HEAP32[$pWC>>2]|0; + $113 = HEAP32[$112>>2]|0; + HEAP32[$tempWC>>2] = $113; + $114 = HEAP32[$pWC>>2]|0; + $115 = (($tempWC) + 4|0); + HEAP32[$115>>2] = $114; + $116 = (($tempWC) + 8|0); + HEAP8[$116>>0] = 72; + $117 = (($tempWC) + 12|0); + HEAP32[$117>>2] = 1; + $118 = HEAP32[$pOrTerm>>2]|0; + $119 = (($tempWC) + 20|0); + HEAP32[$119>>2] = $118; + $120 = (($sSubBuild) + 4|0); + HEAP32[$120>>2] = $tempWC; + label = 14; + } + } + L19: do { + if ((label|0) == 14) { + label = 0; + HEAP16[$sCur>>1] = 0; + $121 = HEAP32[$pItem>>2]|0; + $122 = (($121) + 16|0); + $123 = HEAP32[$122>>2]|0; + $124 = (($123) + 44|0); + $125 = HEAP8[$124>>0]|0; + $126 = $125&255; + $127 = $126 & 16; + $128 = ($127|0)!=(0); + $129 = $4; + $130 = $129; + $131 = HEAP32[$130>>2]|0; + $132 = (($129) + 4)|0; + $133 = $132; + $134 = HEAP32[$133>>2]|0; + if ($128) { + $135 = (_whereLoopAddVirtual($sSubBuild,$131,$134)|0); + HEAP32[$rc>>2] = $135; + } else { + $136 = (_whereLoopAddBtree($sSubBuild,$131,$134)|0); + HEAP32[$rc>>2] = $136; + } + $137 = HEAP16[$sCur>>1]|0; + $138 = $137&65535; + $139 = ($138|0)==(0); + if ($139) { + label = 18; + break L12; + } + $140 = HEAP32[$once>>2]|0; + $141 = ($140|0)!=(0); + if ($141) { + _whereOrMove($sSum,$sCur); + HEAP32[$once>>2] = 0; + break; + } + _whereOrMove($sPrev,$sSum); + HEAP16[$sSum>>1] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $142 = HEAP32[$i>>2]|0; + $143 = HEAP16[$sPrev>>1]|0; + $144 = $143&65535; + $145 = ($142|0)<($144|0); + if (!($145)) { + break L19; + } + HEAP32[$j>>2] = 0; + while(1) { + $146 = HEAP32[$j>>2]|0; + $147 = HEAP16[$sCur>>1]|0; + $148 = $147&65535; + $149 = ($146|0)<($148|0); + $150 = HEAP32[$i>>2]|0; + if (!($149)) { + break; + } + $151 = (($sPrev) + 8|0); + $152 = (($151) + ($150<<4)|0); + $153 = $152; + $154 = $153; + $155 = HEAP32[$154>>2]|0; + $156 = (($153) + 4)|0; + $157 = $156; + $158 = HEAP32[$157>>2]|0; + $159 = HEAP32[$j>>2]|0; + $160 = (($sCur) + 8|0); + $161 = (($160) + ($159<<4)|0); + $162 = $161; + $163 = $162; + $164 = HEAP32[$163>>2]|0; + $165 = (($162) + 4)|0; + $166 = $165; + $167 = HEAP32[$166>>2]|0; + $168 = $155 | $164; + $169 = $158 | $167; + $170 = HEAP32[$i>>2]|0; + $171 = (($sPrev) + 8|0); + $172 = (($171) + ($170<<4)|0); + $173 = (($172) + 8|0); + $174 = HEAP16[$173>>1]|0; + $175 = HEAP32[$j>>2]|0; + $176 = (($sCur) + 8|0); + $177 = (($176) + ($175<<4)|0); + $178 = (($177) + 8|0); + $179 = HEAP16[$178>>1]|0; + $180 = (_sqlite3LogEstAdd($174,$179)|0); + $181 = HEAP32[$i>>2]|0; + $182 = (($sPrev) + 8|0); + $183 = (($182) + ($181<<4)|0); + $184 = (($183) + 10|0); + $185 = HEAP16[$184>>1]|0; + $186 = HEAP32[$j>>2]|0; + $187 = (($sCur) + 8|0); + $188 = (($187) + ($186<<4)|0); + $189 = (($188) + 10|0); + $190 = HEAP16[$189>>1]|0; + $191 = (_sqlite3LogEstAdd($185,$190)|0); + (_whereOrInsert($sSum,$168,$169,$180,$191)|0); + $192 = HEAP32[$j>>2]|0; + $193 = (($192) + 1)|0; + HEAP32[$j>>2] = $193; + } + $194 = (($150) + 1)|0; + HEAP32[$i>>2] = $194; + } + } + } while(0); + $195 = HEAP32[$pOrTerm>>2]|0; + $196 = (($195) + 48|0); + HEAP32[$pOrTerm>>2] = $196; + } + if ((label|0) == 18) { + label = 0; + HEAP16[$sSum>>1] = 0; + } + $197 = HEAP32[$pNew>>2]|0; + $198 = (($197) + 40|0); + HEAP16[$198>>1] = 1; + $199 = HEAP32[$pTerm>>2]|0; + $200 = HEAP32[$pNew>>2]|0; + $201 = (($200) + 44|0); + $202 = HEAP32[$201>>2]|0; + HEAP32[$202>>2] = $199; + $203 = HEAP32[$pNew>>2]|0; + $204 = (($203) + 36|0); + HEAP32[$204>>2] = 8192; + $205 = HEAP32[$pNew>>2]|0; + $206 = (($205) + 18|0); + HEAP16[$206>>1] = 0; + $207 = HEAP32[$pNew>>2]|0; + $208 = (($207) + 17|0); + HEAP8[$208>>0] = 0; + $209 = HEAP32[$pNew>>2]|0; + $210 = (($209) + 24|0); + ;HEAP32[$210+0>>2]=0|0;HEAP32[$210+4>>2]=0|0;HEAP32[$210+8>>2]=0|0; + HEAP32[$i>>2] = 0; + while(1) { + $211 = HEAP32[$rc>>2]|0; + $212 = ($211|0)==(0); + if (!($212)) { + break L9; + } + $213 = HEAP32[$i>>2]|0; + $214 = HEAP16[$sSum>>1]|0; + $215 = $214&65535; + $216 = ($213|0)<($215|0); + if (!($216)) { + break L9; + } + $217 = HEAP32[$i>>2]|0; + $218 = (($sSum) + 8|0); + $219 = (($218) + ($217<<4)|0); + $220 = (($219) + 8|0); + $221 = HEAP16[$220>>1]|0; + $222 = $221 << 16 >> 16; + $223 = (($222) + 1)|0; + $224 = $223&65535; + $225 = HEAP32[$pNew>>2]|0; + $226 = (($225) + 20|0); + HEAP16[$226>>1] = $224; + $227 = HEAP32[$i>>2]|0; + $228 = (($sSum) + 8|0); + $229 = (($228) + ($227<<4)|0); + $230 = (($229) + 10|0); + $231 = HEAP16[$230>>1]|0; + $232 = HEAP32[$pNew>>2]|0; + $233 = (($232) + 22|0); + HEAP16[$233>>1] = $231; + $234 = HEAP32[$i>>2]|0; + $235 = (($sSum) + 8|0); + $236 = (($235) + ($234<<4)|0); + $237 = $236; + $238 = $237; + $239 = HEAP32[$238>>2]|0; + $240 = (($237) + 4)|0; + $241 = $240; + $242 = HEAP32[$241>>2]|0; + $243 = HEAP32[$pNew>>2]|0; + $244 = $243; + $245 = $244; + HEAP32[$245>>2] = $239; + $246 = (($244) + 4)|0; + $247 = $246; + HEAP32[$247>>2] = $242; + $248 = HEAP32[$3>>2]|0; + $249 = HEAP32[$pNew>>2]|0; + $250 = (_whereLoopInsert($248,$249)|0); + HEAP32[$rc>>2] = $250; + $251 = HEAP32[$i>>2]|0; + $252 = (($251) + 1)|0; + HEAP32[$i>>2] = $252; + } + } + } + } while(0); + $253 = HEAP32[$pTerm>>2]|0; + $254 = (($253) + 48|0); + HEAP32[$pTerm>>2] = $254; + } + $255 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $255; + $256 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($256|0); +} +function _whereOrMove($pDest,$pSrc) { + $pDest = $pDest|0; + $pSrc = $pSrc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pDest; + HEAP32[$1>>2] = $pSrc; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP16[$2>>1]|0; + $4 = HEAP32[$0>>2]|0; + HEAP16[$4>>1] = $3; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 8|0); + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 8|0); + $9 = HEAP32[$0>>2]|0; + $10 = HEAP16[$9>>1]|0; + $11 = $10&65535; + $12 = $11<<4; + _memcpy(($6|0),($8|0),($12|0))|0; + STACKTOP = sp;return; +} +function _whereOrInsert($pSet,$0,$1,$rRun,$nOut) { + $pSet = $pSet|0; + $0 = $0|0; + $1 = $1|0; + $rRun = $rRun|0; + $nOut = $nOut|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 16|0; + $3 = sp + 8|0; + $4 = sp; + $5 = sp + 24|0; + $6 = sp + 22|0; + $i = sp + 20|0; + $p = sp + 12|0; + HEAP32[$3>>2] = $pSet; + $7 = $4; + $8 = $7; + HEAP32[$8>>2] = $0; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = $1; + HEAP16[$5>>1] = $rRun; + HEAP16[$6>>1] = $nOut; + $11 = HEAP32[$3>>2]|0; + $12 = HEAP16[$11>>1]|0; + HEAP16[$i>>1] = $12; + $13 = HEAP32[$3>>2]|0; + $14 = (($13) + 8|0); + HEAP32[$p>>2] = $14; + while(1) { + $15 = HEAP16[$i>>1]|0; + $16 = $15&65535; + $17 = ($16|0)>(0); + if (!($17)) { + label = 9; + break; + } + $18 = HEAP16[$5>>1]|0; + $19 = $18 << 16 >> 16; + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 8|0); + $22 = HEAP16[$21>>1]|0; + $23 = $22 << 16 >> 16; + $24 = ($19|0)<=($23|0); + if ($24) { + $25 = $4; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$p>>2]|0; + $32 = $31; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = (($32) + 4)|0; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = $27 & $34; + $39 = $30 & $37; + $40 = $4; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (($40) + 4)|0; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = ($38|0)==($42|0); + $47 = ($39|0)==($45|0); + $48 = $46 & $47; + if ($48) { + break; + } + } + $49 = HEAP32[$p>>2]|0; + $50 = (($49) + 8|0); + $51 = HEAP16[$50>>1]|0; + $52 = $51 << 16 >> 16; + $53 = HEAP16[$5>>1]|0; + $54 = $53 << 16 >> 16; + $55 = ($52|0)<=($54|0); + if ($55) { + $56 = HEAP32[$p>>2]|0; + $57 = $56; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = (($57) + 4)|0; + $61 = $60; + $62 = HEAP32[$61>>2]|0; + $63 = $4; + $64 = $63; + $65 = HEAP32[$64>>2]|0; + $66 = (($63) + 4)|0; + $67 = $66; + $68 = HEAP32[$67>>2]|0; + $69 = $59 & $65; + $70 = $62 & $68; + $71 = HEAP32[$p>>2]|0; + $72 = $71; + $73 = $72; + $74 = HEAP32[$73>>2]|0; + $75 = (($72) + 4)|0; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = ($69|0)==($74|0); + $79 = ($70|0)==($77|0); + $80 = $78 & $79; + if ($80) { + label = 7; + break; + } + } + $81 = HEAP16[$i>>1]|0; + $82 = (($81) + -1)<<16>>16; + HEAP16[$i>>1] = $82; + $83 = HEAP32[$p>>2]|0; + $84 = (($83) + 16|0); + HEAP32[$p>>2] = $84; + } + if ((label|0) == 7) { + HEAP32[$2>>2] = 0; + $153 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($153|0); + } + do { + if ((label|0) == 9) { + $85 = HEAP32[$3>>2]|0; + $86 = HEAP16[$85>>1]|0; + $87 = $86&65535; + $88 = ($87|0)<(3); + $89 = HEAP32[$3>>2]|0; + if ($88) { + $90 = HEAP16[$89>>1]|0; + $91 = (($90) + 1)<<16>>16; + HEAP16[$89>>1] = $91; + $92 = $90&65535; + $93 = HEAP32[$3>>2]|0; + $94 = (($93) + 8|0); + $95 = (($94) + ($92<<4)|0); + HEAP32[$p>>2] = $95; + $96 = HEAP16[$6>>1]|0; + $97 = HEAP32[$p>>2]|0; + $98 = (($97) + 10|0); + HEAP16[$98>>1] = $96; + break; + } + $99 = (($89) + 8|0); + HEAP32[$p>>2] = $99; + HEAP16[$i>>1] = 1; + while(1) { + $100 = HEAP16[$i>>1]|0; + $101 = $100&65535; + $102 = HEAP32[$3>>2]|0; + $103 = HEAP16[$102>>1]|0; + $104 = $103&65535; + $105 = ($101|0)<($104|0); + $106 = HEAP32[$p>>2]|0; + $107 = (($106) + 8|0); + $108 = HEAP16[$107>>1]|0; + $109 = $108 << 16 >> 16; + if (!($105)) { + break; + } + $110 = HEAP16[$i>>1]|0; + $111 = $110&65535; + $112 = HEAP32[$3>>2]|0; + $113 = (($112) + 8|0); + $114 = (($113) + ($111<<4)|0); + $115 = (($114) + 8|0); + $116 = HEAP16[$115>>1]|0; + $117 = $116 << 16 >> 16; + $118 = ($109|0)>($117|0); + if ($118) { + $119 = HEAP32[$3>>2]|0; + $120 = (($119) + 8|0); + $121 = HEAP16[$i>>1]|0; + $122 = $121&65535; + $123 = (($120) + ($122<<4)|0); + HEAP32[$p>>2] = $123; + } + $124 = HEAP16[$i>>1]|0; + $125 = (($124) + 1)<<16>>16; + HEAP16[$i>>1] = $125; + } + $126 = HEAP16[$5>>1]|0; + $127 = $126 << 16 >> 16; + $128 = ($109|0)<=($127|0); + if ($128) { + HEAP32[$2>>2] = 0; + $153 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($153|0); + } + } + } while(0); + $129 = $4; + $130 = $129; + $131 = HEAP32[$130>>2]|0; + $132 = (($129) + 4)|0; + $133 = $132; + $134 = HEAP32[$133>>2]|0; + $135 = HEAP32[$p>>2]|0; + $136 = $135; + $137 = $136; + HEAP32[$137>>2] = $131; + $138 = (($136) + 4)|0; + $139 = $138; + HEAP32[$139>>2] = $134; + $140 = HEAP16[$5>>1]|0; + $141 = HEAP32[$p>>2]|0; + $142 = (($141) + 8|0); + HEAP16[$142>>1] = $140; + $143 = HEAP32[$p>>2]|0; + $144 = (($143) + 10|0); + $145 = HEAP16[$144>>1]|0; + $146 = $145 << 16 >> 16; + $147 = HEAP16[$6>>1]|0; + $148 = $147 << 16 >> 16; + $149 = ($146|0)>($148|0); + if ($149) { + $150 = HEAP16[$6>>1]|0; + $151 = HEAP32[$p>>2]|0; + $152 = (($151) + 10|0); + HEAP16[$152>>1] = $150; + } + HEAP32[$2>>2] = 1; + $153 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($153|0); +} +function _whereLoopInsert($pBuilder,$pTemplate) { + $pBuilder = $pBuilder|0; + $pTemplate = $pTemplate|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $db = 0, $p = 0, $pIndex = 0, $pToDel = 0, $pWInfo = 0, $ppPrev = 0, $ppTail = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $ppPrev = sp + 24|0; + $p = sp + 20|0; + $pWInfo = sp + 16|0; + $db = sp + 8|0; + $ppTail = sp + 4|0; + $pToDel = sp; + $pIndex = sp + 12|0; + HEAP32[$1>>2] = $pBuilder; + HEAP32[$2>>2] = $pTemplate; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$pWInfo>>2] = $4; + $5 = HEAP32[$pWInfo>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$db>>2] = $7; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 16|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 16|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = $15; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = (($16) + 4)|0; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$2>>2]|0; + $23 = (($22) + 20|0); + $24 = HEAP16[$23>>1]|0; + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 22|0); + $27 = HEAP16[$26>>1]|0; + (_whereOrInsert($14,$18,$21,$24,$27)|0); + HEAP32[$0>>2] = 0; + $91 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($91|0); + } + $28 = HEAP32[$pWInfo>>2]|0; + $29 = (($28) + 16|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$2>>2]|0; + _whereLoopAdjustCost($30,$31); + $32 = HEAP32[$pWInfo>>2]|0; + $33 = (($32) + 16|0); + $34 = HEAP32[$2>>2]|0; + $35 = (_whereLoopFindLesser($33,$34)|0); + HEAP32[$ppPrev>>2] = $35; + $36 = HEAP32[$ppPrev>>2]|0; + $37 = ($36|0)==(0|0); + if ($37) { + HEAP32[$0>>2] = 0; + $91 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($91|0); + } + $38 = HEAP32[$ppPrev>>2]|0; + $39 = HEAP32[$38>>2]|0; + HEAP32[$p>>2] = $39; + $40 = HEAP32[$p>>2]|0; + $41 = ($40|0)==(0|0); + L9: do { + if ($41) { + $42 = HEAP32[$db>>2]|0; + $43 = (_sqlite3DbMallocRaw($42,72)|0); + HEAP32[$p>>2] = $43; + $44 = HEAP32[$ppPrev>>2]|0; + HEAP32[$44>>2] = $43; + $45 = HEAP32[$p>>2]|0; + $46 = ($45|0)==(0|0); + if (!($46)) { + $47 = HEAP32[$p>>2]|0; + _whereLoopInit($47); + $48 = HEAP32[$p>>2]|0; + $49 = (($48) + 48|0); + HEAP32[$49>>2] = 0; + break; + } + HEAP32[$0>>2] = 7; + $91 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($91|0); + } else { + $50 = HEAP32[$p>>2]|0; + $51 = (($50) + 48|0); + HEAP32[$ppTail>>2] = $51; + while(1) { + $52 = HEAP32[$ppTail>>2]|0; + $53 = HEAP32[$52>>2]|0; + $54 = ($53|0)!=(0|0); + if (!($54)) { + break L9; + } + $55 = HEAP32[$ppTail>>2]|0; + $56 = HEAP32[$2>>2]|0; + $57 = (_whereLoopFindLesser($55,$56)|0); + HEAP32[$ppTail>>2] = $57; + $58 = HEAP32[$ppTail>>2]|0; + $59 = ($58|0)==(0|0); + if ($59) { + break L9; + } + $60 = HEAP32[$ppTail>>2]|0; + $61 = HEAP32[$60>>2]|0; + HEAP32[$pToDel>>2] = $61; + $62 = HEAP32[$pToDel>>2]|0; + $63 = ($62|0)==(0|0); + if ($63) { + break L9; + } + $64 = HEAP32[$pToDel>>2]|0; + $65 = (($64) + 48|0); + $66 = HEAP32[$65>>2]|0; + $67 = HEAP32[$ppTail>>2]|0; + HEAP32[$67>>2] = $66; + $68 = HEAP32[$db>>2]|0; + $69 = HEAP32[$pToDel>>2]|0; + _whereLoopDelete($68,$69); + } + } + } while(0); + $70 = HEAP32[$db>>2]|0; + $71 = HEAP32[$p>>2]|0; + $72 = HEAP32[$2>>2]|0; + (_whereLoopXfer($70,$71,$72)|0); + $73 = HEAP32[$p>>2]|0; + $74 = (($73) + 36|0); + $75 = HEAP32[$74>>2]|0; + $76 = $75 & 1024; + $77 = ($76|0)==(0); + if ($77) { + $78 = HEAP32[$p>>2]|0; + $79 = (($78) + 24|0); + $80 = (($79) + 4|0); + $81 = HEAP32[$80>>2]|0; + HEAP32[$pIndex>>2] = $81; + $82 = HEAP32[$pIndex>>2]|0; + $83 = ($82|0)!=(0|0); + if ($83) { + $84 = HEAP32[$pIndex>>2]|0; + $85 = (($84) + 44|0); + $86 = HEAP32[$85>>2]|0; + $87 = ($86|0)==(0); + if ($87) { + $88 = HEAP32[$p>>2]|0; + $89 = (($88) + 24|0); + $90 = (($89) + 4|0); + HEAP32[$90>>2] = 0; + } + } + } + HEAP32[$0>>2] = 0; + $91 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($91|0); +} +function _whereLoopAdjustCost($p,$pTemplate) { + $p = $p|0; + $pTemplate = $pTemplate|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pTemplate; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 36|0); + $4 = HEAP32[$3>>2]|0; + $5 = $4 & 512; + $6 = ($5|0)==(0); + if ($6) { + STACKTOP = sp;return; + } + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 36|0); + $9 = HEAP32[$8>>2]|0; + $10 = $9 & 32768; + $11 = ($10|0)!=(0); + if ($11) { + STACKTOP = sp;return; + } + while(1) { + $12 = HEAP32[$0>>2]|0; + $13 = ($12|0)!=(0|0); + if (!($13)) { + break; + } + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 16|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 16|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = ($17|0)!=($21|0); + do { + if (!($22)) { + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 36|0); + $25 = HEAP32[$24>>2]|0; + $26 = $25 & 512; + $27 = ($26|0)==(0); + if (!($27)) { + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 36|0); + $30 = HEAP32[$29>>2]|0; + $31 = $30 & 32768; + $32 = ($31|0)!=(0); + if (!($32)) { + $33 = HEAP32[$0>>2]|0; + $34 = HEAP32[$1>>2]|0; + $35 = (_whereLoopCheaperProperSubset($33,$34)|0); + $36 = ($35|0)!=(0); + if ($36) { + $37 = HEAP32[$0>>2]|0; + $38 = (($37) + 20|0); + $39 = HEAP16[$38>>1]|0; + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 20|0); + HEAP16[$41>>1] = $39; + $42 = HEAP32[$0>>2]|0; + $43 = (($42) + 22|0); + $44 = HEAP16[$43>>1]|0; + $45 = $44 << 16 >> 16; + $46 = (($45) - 1)|0; + $47 = $46&65535; + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + 22|0); + HEAP16[$49>>1] = $47; + break; + } + $50 = HEAP32[$1>>2]|0; + $51 = HEAP32[$0>>2]|0; + $52 = (_whereLoopCheaperProperSubset($50,$51)|0); + $53 = ($52|0)!=(0); + if ($53) { + $54 = HEAP32[$0>>2]|0; + $55 = (($54) + 20|0); + $56 = HEAP16[$55>>1]|0; + $57 = HEAP32[$1>>2]|0; + $58 = (($57) + 20|0); + HEAP16[$58>>1] = $56; + $59 = HEAP32[$0>>2]|0; + $60 = (($59) + 22|0); + $61 = HEAP16[$60>>1]|0; + $62 = $61 << 16 >> 16; + $63 = (($62) + 1)|0; + $64 = $63&65535; + $65 = HEAP32[$1>>2]|0; + $66 = (($65) + 22|0); + HEAP16[$66>>1] = $64; + } + } + } + } + } while(0); + $67 = HEAP32[$0>>2]|0; + $68 = (($67) + 48|0); + $69 = HEAP32[$68>>2]|0; + HEAP32[$0>>2] = $69; + } + STACKTOP = sp;return; +} +function _whereLoopFindLesser($ppPrev,$pTemplate) { + $ppPrev = $ppPrev|0; + $pTemplate = $pTemplate|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; + var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + HEAP32[$1>>2] = $ppPrev; + HEAP32[$2>>2] = $pTemplate; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$p>>2] = $4; + while(1) { + $5 = HEAP32[$p>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + label = 14; + break; + } + $7 = HEAP32[$p>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 16|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = ($10|0)!=($14|0); + if (!($15)) { + $16 = HEAP32[$p>>2]|0; + $17 = (($16) + 17|0); + $18 = HEAP8[$17>>0]|0; + $19 = $18&255; + $20 = HEAP32[$2>>2]|0; + $21 = (($20) + 17|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = ($19|0)!=($23|0); + if (!($24)) { + $25 = HEAP32[$p>>2]|0; + $26 = $25; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = (($26) + 4)|0; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$2>>2]|0; + $33 = $32; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = (($33) + 4)|0; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + $39 = $28 & $35; + $40 = $31 & $38; + $41 = HEAP32[$p>>2]|0; + $42 = $41; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = ($39|0)==($44|0); + $49 = ($40|0)==($47|0); + $50 = $48 & $49; + if ($50) { + $51 = HEAP32[$p>>2]|0; + $52 = (($51) + 18|0); + $53 = HEAP16[$52>>1]|0; + $54 = $53 << 16 >> 16; + $55 = HEAP32[$2>>2]|0; + $56 = (($55) + 18|0); + $57 = HEAP16[$56>>1]|0; + $58 = $57 << 16 >> 16; + $59 = ($54|0)<=($58|0); + if ($59) { + $60 = HEAP32[$p>>2]|0; + $61 = (($60) + 20|0); + $62 = HEAP16[$61>>1]|0; + $63 = $62 << 16 >> 16; + $64 = HEAP32[$2>>2]|0; + $65 = (($64) + 20|0); + $66 = HEAP16[$65>>1]|0; + $67 = $66 << 16 >> 16; + $68 = ($63|0)<=($67|0); + if ($68) { + $69 = HEAP32[$p>>2]|0; + $70 = (($69) + 22|0); + $71 = HEAP16[$70>>1]|0; + $72 = $71 << 16 >> 16; + $73 = HEAP32[$2>>2]|0; + $74 = (($73) + 22|0); + $75 = HEAP16[$74>>1]|0; + $76 = $75 << 16 >> 16; + $77 = ($72|0)<=($76|0); + if ($77) { + label = 9; + break; + } + } + } + } + $78 = HEAP32[$p>>2]|0; + $79 = $78; + $80 = $79; + $81 = HEAP32[$80>>2]|0; + $82 = (($79) + 4)|0; + $83 = $82; + $84 = HEAP32[$83>>2]|0; + $85 = HEAP32[$2>>2]|0; + $86 = $85; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = (($86) + 4)|0; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + $92 = $81 & $88; + $93 = $84 & $91; + $94 = HEAP32[$2>>2]|0; + $95 = $94; + $96 = $95; + $97 = HEAP32[$96>>2]|0; + $98 = (($95) + 4)|0; + $99 = $98; + $100 = HEAP32[$99>>2]|0; + $101 = ($92|0)==($97|0); + $102 = ($93|0)==($100|0); + $103 = $101 & $102; + if ($103) { + $104 = HEAP32[$p>>2]|0; + $105 = (($104) + 20|0); + $106 = HEAP16[$105>>1]|0; + $107 = $106 << 16 >> 16; + $108 = HEAP32[$2>>2]|0; + $109 = (($108) + 20|0); + $110 = HEAP16[$109>>1]|0; + $111 = $110 << 16 >> 16; + $112 = ($107|0)>=($111|0); + if ($112) { + $113 = HEAP32[$p>>2]|0; + $114 = (($113) + 22|0); + $115 = HEAP16[$114>>1]|0; + $116 = $115 << 16 >> 16; + $117 = HEAP32[$2>>2]|0; + $118 = (($117) + 22|0); + $119 = HEAP16[$118>>1]|0; + $120 = $119 << 16 >> 16; + $121 = ($116|0)>=($120|0); + if ($121) { + label = 14; + break; + } + } + } + } + } + $122 = HEAP32[$p>>2]|0; + $123 = (($122) + 48|0); + HEAP32[$1>>2] = $123; + $124 = HEAP32[$1>>2]|0; + $125 = HEAP32[$124>>2]|0; + HEAP32[$p>>2] = $125; + } + if ((label|0) == 9) { + HEAP32[$0>>2] = 0; + $127 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($127|0); + } + else if ((label|0) == 14) { + $126 = HEAP32[$1>>2]|0; + HEAP32[$0>>2] = $126; + $127 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($127|0); + } + return 0|0; +} +function _whereLoopXfer($db,$pTo,$pFrom) { + $db = $db|0; + $pTo = $pTo|0; + $pFrom = $pFrom|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pTo; + HEAP32[$3>>2] = $pFrom; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + _whereLoopClearUnion($4,$5); + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$3>>2]|0; + $9 = (($8) + 40|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10&65535; + $12 = (_whereLoopResize($6,$7,$11)|0); + $13 = ($12|0)!=(0); + $14 = HEAP32[$2>>2]|0; + if ($13) { + $15 = (($14) + 24|0); + ;HEAP32[$15+0>>2]=0|0;HEAP32[$15+4>>2]=0|0;HEAP32[$15+8>>2]=0|0; + HEAP32[$0>>2] = 7; + $43 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($43|0); + } + $16 = HEAP32[$3>>2]|0; + dest=$14+0|0; src=$16+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0));HEAP16[$14+40>>1]=HEAP16[$16+40>>1]|0; + $17 = HEAP32[$2>>2]|0; + $18 = (($17) + 44|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$3>>2]|0; + $21 = (($20) + 44|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$2>>2]|0; + $24 = (($23) + 40|0); + $25 = HEAP16[$24>>1]|0; + $26 = $25&65535; + $27 = $26<<2; + _memcpy(($19|0),($22|0),($27|0))|0; + $28 = HEAP32[$3>>2]|0; + $29 = (($28) + 36|0); + $30 = HEAP32[$29>>2]|0; + $31 = $30 & 1024; + $32 = ($31|0)!=(0); + $33 = HEAP32[$3>>2]|0; + if ($32) { + $34 = (($33) + 24|0); + $35 = (($34) + 4|0); + HEAP8[$35>>0] = 0; + } else { + $36 = (($33) + 36|0); + $37 = HEAP32[$36>>2]|0; + $38 = $37 & 16384; + $39 = ($38|0)!=(0); + if ($39) { + $40 = HEAP32[$3>>2]|0; + $41 = (($40) + 24|0); + $42 = (($41) + 4|0); + HEAP32[$42>>2] = 0; + } + } + HEAP32[$0>>2] = 0; + $43 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($43|0); +} +function _whereLoopCheaperProperSubset($pX,$pY) { + $pX = $pX|0; + $pY = $pY|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $i = 0, $j = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + $j = sp + 12|0; + HEAP32[$1>>2] = $pX; + HEAP32[$2>>2] = $pY; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 40|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5&65535; + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 40|0); + $9 = HEAP16[$8>>1]|0; + $10 = $9&65535; + $11 = ($6|0)>=($10|0); + if ($11) { + HEAP32[$0>>2] = 0; + $72 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($72|0); + } + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 20|0); + $14 = HEAP16[$13>>1]|0; + $15 = $14 << 16 >> 16; + $16 = HEAP32[$2>>2]|0; + $17 = (($16) + 20|0); + $18 = HEAP16[$17>>1]|0; + $19 = $18 << 16 >> 16; + $20 = ($15|0)>=($19|0); + if ($20) { + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 20|0); + $23 = HEAP16[$22>>1]|0; + $24 = $23 << 16 >> 16; + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 20|0); + $27 = HEAP16[$26>>1]|0; + $28 = $27 << 16 >> 16; + $29 = ($24|0)>($28|0); + if ($29) { + HEAP32[$0>>2] = 0; + $72 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($72|0); + } + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 22|0); + $32 = HEAP16[$31>>1]|0; + $33 = $32 << 16 >> 16; + $34 = HEAP32[$2>>2]|0; + $35 = (($34) + 22|0); + $36 = HEAP16[$35>>1]|0; + $37 = $36 << 16 >> 16; + $38 = ($33|0)>($37|0); + if ($38) { + HEAP32[$0>>2] = 0; + $72 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($72|0); + } + } + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 40|0); + $41 = HEAP16[$40>>1]|0; + $42 = $41&65535; + $43 = (($42) - 1)|0; + HEAP32[$i>>2] = $43; + while(1) { + $44 = HEAP32[$i>>2]|0; + $45 = ($44|0)>=(0); + if (!($45)) { + label = 17; + break; + } + $46 = HEAP32[$2>>2]|0; + $47 = (($46) + 40|0); + $48 = HEAP16[$47>>1]|0; + $49 = $48&65535; + $50 = (($49) - 1)|0; + HEAP32[$j>>2] = $50; + while(1) { + $51 = HEAP32[$j>>2]|0; + $52 = ($51|0)>=(0); + if (!($52)) { + break; + } + $53 = HEAP32[$j>>2]|0; + $54 = HEAP32[$2>>2]|0; + $55 = (($54) + 44|0); + $56 = HEAP32[$55>>2]|0; + $57 = (($56) + ($53<<2)|0); + $58 = HEAP32[$57>>2]|0; + $59 = HEAP32[$i>>2]|0; + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 44|0); + $62 = HEAP32[$61>>2]|0; + $63 = (($62) + ($59<<2)|0); + $64 = HEAP32[$63>>2]|0; + $65 = ($58|0)==($64|0); + if ($65) { + break; + } + $66 = HEAP32[$j>>2]|0; + $67 = (($66) + -1)|0; + HEAP32[$j>>2] = $67; + } + $68 = HEAP32[$j>>2]|0; + $69 = ($68|0)<(0); + if ($69) { + label = 15; + break; + } + $70 = HEAP32[$i>>2]|0; + $71 = (($70) + -1)|0; + HEAP32[$i>>2] = $71; + } + if ((label|0) == 15) { + HEAP32[$0>>2] = 0; + $72 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($72|0); + } + else if ((label|0) == 17) { + HEAP32[$0>>2] = 1; + $72 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($72|0); + } + return 0|0; +} +function _whereUsablePartialIndex($iTab,$pWC,$pWhere) { + $iTab = $iTab|0; + $pWC = $pWC|0; + $pWhere = $pWhere|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $i = 0, $pTerm = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $i = sp + 12|0; + $pTerm = sp + 16|0; + HEAP32[$1>>2] = $iTab; + HEAP32[$2>>2] = $pWC; + HEAP32[$3>>2] = $pWhere; + HEAP32[$i>>2] = 0; + $4 = HEAP32[$2>>2]|0; + $5 = (($4) + 20|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$pTerm>>2] = $6; + while(1) { + $7 = HEAP32[$i>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = (($8) + 12|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($7|0)<($10|0); + if (!($11)) { + label = 6; + break; + } + $12 = HEAP32[$pTerm>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$3>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (_sqlite3ExprImpliesExpr($13,$14,$15)|0); + $17 = ($16|0)!=(0); + if ($17) { + label = 4; + break; + } + $18 = HEAP32[$i>>2]|0; + $19 = (($18) + 1)|0; + HEAP32[$i>>2] = $19; + $20 = HEAP32[$pTerm>>2]|0; + $21 = (($20) + 48|0); + HEAP32[$pTerm>>2] = $21; + } + if ((label|0) == 4) { + HEAP32[$0>>2] = 1; + $22 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($22|0); + } + else if ((label|0) == 6) { + HEAP32[$0>>2] = 0; + $22 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($22|0); + } + return 0|0; +} +function _indexMightHelpWithOrderBy($pBuilder,$pIndex,$iCursor) { + $pBuilder = $pBuilder|0; + $pIndex = $pIndex|0; + $iCursor = $iCursor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ii = 0; + var $jj = 0, $pExpr = 0, $pOB = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pOB = sp + 12|0; + $ii = sp + 16|0; + $jj = sp + 20|0; + $pExpr = sp + 24|0; + HEAP32[$1>>2] = $pBuilder; + HEAP32[$2>>2] = $pIndex; + HEAP32[$3>>2] = $iCursor; + $4 = HEAP32[$2>>2]|0; + $5 = (($4) + 55|0); + $6 = HEAP8[$5>>0]|0; + $7 = ($6&255) >>> 2; + $8 = $7 & 1; + $9 = $8&255; + $10 = ($9|0)!=(0); + if ($10) { + HEAP32[$0>>2] = 0; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); + } + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + 8|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$pOB>>2] = $14; + $15 = ($14|0)==(0|0); + if ($15) { + HEAP32[$0>>2] = 0; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); + } + HEAP32[$ii>>2] = 0; + L9: while(1) { + $16 = HEAP32[$ii>>2]|0; + $17 = HEAP32[$pOB>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = ($16|0)<($18|0); + if (!($19)) { + label = 16; + break; + } + $20 = HEAP32[$ii>>2]|0; + $21 = HEAP32[$pOB>>2]|0; + $22 = (($21) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + (($20*20)|0)|0); + $25 = HEAP32[$24>>2]|0; + $26 = (_sqlite3ExprSkipCollate($25)|0); + HEAP32[$pExpr>>2] = $26; + $27 = HEAP32[$pExpr>>2]|0; + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = ($29|0)!=(154); + if ($30) { + label = 8; + break; + } + $31 = HEAP32[$pExpr>>2]|0; + $32 = (($31) + 28|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$3>>2]|0; + $35 = ($33|0)==($34|0); + L13: do { + if ($35) { + HEAP32[$jj>>2] = 0; + while(1) { + $36 = HEAP32[$jj>>2]|0; + $37 = HEAP32[$2>>2]|0; + $38 = (($37) + 50|0); + $39 = HEAP16[$38>>1]|0; + $40 = $39&65535; + $41 = ($36|0)<($40|0); + if (!($41)) { + break L13; + } + $42 = HEAP32[$pExpr>>2]|0; + $43 = (($42) + 32|0); + $44 = HEAP16[$43>>1]|0; + $45 = $44 << 16 >> 16; + $46 = HEAP32[$jj>>2]|0; + $47 = HEAP32[$2>>2]|0; + $48 = (($47) + 4|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) + ($46<<1)|0); + $51 = HEAP16[$50>>1]|0; + $52 = $51 << 16 >> 16; + $53 = ($45|0)==($52|0); + if ($53) { + label = 13; + break L9; + } + $54 = HEAP32[$jj>>2]|0; + $55 = (($54) + 1)|0; + HEAP32[$jj>>2] = $55; + } + } + } while(0); + $56 = HEAP32[$ii>>2]|0; + $57 = (($56) + 1)|0; + HEAP32[$ii>>2] = $57; + } + if ((label|0) == 8) { + HEAP32[$0>>2] = 0; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); + } + else if ((label|0) == 13) { + HEAP32[$0>>2] = 1; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); + } + else if ((label|0) == 16) { + HEAP32[$0>>2] = 0; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); + } + return 0|0; +} +function _whereLoopOutputAdjust($pWC,$pLoop) { + $pWC = $pWC|0; + $pLoop = $pLoop|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $i = 0, $j = 0, $notAllowed = 0, $pTerm = 0, $pX = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp + 16|0; + $pTerm = sp + 8|0; + $pX = sp + 12|0; + $notAllowed = sp; + $i = sp + 20|0; + $j = sp + 24|0; + HEAP32[$0>>2] = $pWC; + HEAP32[$1>>2] = $pLoop; + $2 = HEAP32[$1>>2]|0; + $3 = $2; + $4 = $3; + $5 = HEAP32[$4>>2]|0; + $6 = (($3) + 4)|0; + $7 = $6; + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 8|0); + $11 = $10; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = (($11) + 4)|0; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = $5 | $13; + $18 = $8 | $16; + $19 = $17 ^ -1; + $20 = $18 ^ -1; + $21 = $notAllowed; + $22 = $21; + HEAP32[$22>>2] = $19; + $23 = (($21) + 4)|0; + $24 = $23; + HEAP32[$24>>2] = $20; + $25 = HEAP32[$0>>2]|0; + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + 60|0); + $30 = HEAP16[$29>>1]|0; + $31 = $30&65535; + $32 = $31 & 4096; + $33 = ($32|0)==(0); + if (!($33)) { + STACKTOP = sp;return; + } + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 12|0); + $36 = HEAP32[$35>>2]|0; + HEAP32[$i>>2] = $36; + $37 = HEAP32[$0>>2]|0; + $38 = (($37) + 20|0); + $39 = HEAP32[$38>>2]|0; + HEAP32[$pTerm>>2] = $39; + while(1) { + $40 = HEAP32[$i>>2]|0; + $41 = ($40|0)>(0); + if (!($41)) { + label = 19; + break; + } + $42 = HEAP32[$pTerm>>2]|0; + $43 = (($42) + 20|0); + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = $45 & 2; + $47 = ($46|0)!=(0); + if ($47) { + label = 19; + break; + } + $48 = HEAP32[$pTerm>>2]|0; + $49 = (($48) + 40|0); + $50 = $49; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (($50) + 4)|0; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + $56 = HEAP32[$1>>2]|0; + $57 = (($56) + 8|0); + $58 = $57; + $59 = $58; + $60 = HEAP32[$59>>2]|0; + $61 = (($58) + 4)|0; + $62 = $61; + $63 = HEAP32[$62>>2]|0; + $64 = $52 & $60; + $65 = $55 & $63; + $66 = ($64|0)==(0); + $67 = ($65|0)==(0); + $68 = $66 & $67; + if (!($68)) { + $69 = HEAP32[$pTerm>>2]|0; + $70 = (($69) + 40|0); + $71 = $70; + $72 = $71; + $73 = HEAP32[$72>>2]|0; + $74 = (($71) + 4)|0; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = $notAllowed; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = (($77) + 4)|0; + $81 = $80; + $82 = HEAP32[$81>>2]|0; + $83 = $73 & $79; + $84 = $76 & $82; + $85 = ($83|0)!=(0); + $86 = ($84|0)!=(0); + $87 = $85 | $86; + if (!($87)) { + $88 = HEAP32[$1>>2]|0; + $89 = (($88) + 40|0); + $90 = HEAP16[$89>>1]|0; + $91 = $90&65535; + $92 = (($91) - 1)|0; + HEAP32[$j>>2] = $92; + while(1) { + $93 = HEAP32[$j>>2]|0; + $94 = ($93|0)>=(0); + if (!($94)) { + break; + } + $95 = HEAP32[$j>>2]|0; + $96 = HEAP32[$1>>2]|0; + $97 = (($96) + 44|0); + $98 = HEAP32[$97>>2]|0; + $99 = (($98) + ($95<<2)|0); + $100 = HEAP32[$99>>2]|0; + HEAP32[$pX>>2] = $100; + $101 = HEAP32[$pX>>2]|0; + $102 = ($101|0)==(0|0); + if (!($102)) { + $103 = HEAP32[$pX>>2]|0; + $104 = HEAP32[$pTerm>>2]|0; + $105 = ($103|0)==($104|0); + if ($105) { + break; + } + $106 = HEAP32[$pX>>2]|0; + $107 = (($106) + 4|0); + $108 = HEAP32[$107>>2]|0; + $109 = ($108|0)>=(0); + if ($109) { + $110 = HEAP32[$pX>>2]|0; + $111 = (($110) + 4|0); + $112 = HEAP32[$111>>2]|0; + $113 = HEAP32[$0>>2]|0; + $114 = (($113) + 20|0); + $115 = HEAP32[$114>>2]|0; + $116 = (($115) + (($112*48)|0)|0); + $117 = HEAP32[$pTerm>>2]|0; + $118 = ($116|0)==($117|0); + if ($118) { + break; + } + } + } + $119 = HEAP32[$j>>2]|0; + $120 = (($119) + -1)|0; + HEAP32[$j>>2] = $120; + } + $121 = HEAP32[$j>>2]|0; + $122 = ($121|0)<(0); + if ($122) { + $123 = HEAP32[$pTerm>>2]|0; + $124 = (($123) + 16|0); + $125 = HEAP16[$124>>1]|0; + $126 = $125 << 16 >> 16; + $127 = ($126|0)<=(0); + if ($127) { + $128 = HEAP32[$pTerm>>2]|0; + $129 = (($128) + 16|0); + $130 = HEAP16[$129>>1]|0; + $131 = $130 << 16 >> 16; + $137 = $131; + } else { + $137 = -1; + } + $132 = HEAP32[$1>>2]|0; + $133 = (($132) + 22|0); + $134 = HEAP16[$133>>1]|0; + $135 = $134 << 16 >> 16; + $136 = (($135) + ($137))|0; + $138 = $136&65535; + HEAP16[$133>>1] = $138; + } + } + } + $139 = HEAP32[$i>>2]|0; + $140 = (($139) + -1)|0; + HEAP32[$i>>2] = $140; + $141 = HEAP32[$pTerm>>2]|0; + $142 = (($141) + 48|0); + HEAP32[$pTerm>>2] = $142; + } + if ((label|0) == 19) { + STACKTOP = sp;return; + } +} +function _columnsInIndex($pIdx) { + $pIdx = $pIdx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $j = 0, $m = 0, $or$cond = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $m = sp; + $j = sp + 8|0; + $x = sp + 12|0; + HEAP32[$0>>2] = $pIdx; + $1 = $m; + $2 = $1; + HEAP32[$2>>2] = 0; + $3 = (($1) + 4)|0; + $4 = $3; + HEAP32[$4>>2] = 0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 52|0); + $7 = HEAP16[$6>>1]|0; + $8 = $7&65535; + $9 = (($8) - 1)|0; + HEAP32[$j>>2] = $9; + while(1) { + $10 = HEAP32[$j>>2]|0; + $11 = ($10|0)>=(0); + if (!($11)) { + break; + } + $12 = HEAP32[$j>>2]|0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + ($12<<1)|0); + $17 = HEAP16[$16>>1]|0; + $18 = $17 << 16 >> 16; + HEAP32[$x>>2] = $18; + $19 = HEAP32[$x>>2]|0; + $20 = ($19|0)>=(0); + $21 = HEAP32[$x>>2]|0; + $22 = ($21|0)<(63); + $or$cond = $20 & $22; + if ($or$cond) { + $23 = HEAP32[$x>>2]|0; + $24 = (_bitshift64Shl(1,0,($23|0))|0); + $25 = tempRet0; + $26 = $m; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = (($26) + 4)|0; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = $28 | $24; + $33 = $31 | $25; + $34 = $m; + $35 = $34; + HEAP32[$35>>2] = $32; + $36 = (($34) + 4)|0; + $37 = $36; + HEAP32[$37>>2] = $33; + } + $38 = HEAP32[$j>>2]|0; + $39 = (($38) + -1)|0; + HEAP32[$j>>2] = $39; + } + $40 = $m; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (($40) + 4)|0; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + tempRet0 = $45; + STACKTOP = sp;return ($42|0); +} +function _whereLoopAddBtreeIndex($pBuilder,$pSrc,$pProbe,$nInMul) { + $pBuilder = $pBuilder|0; + $pSrc = $pSrc|0; + $pProbe = $pProbe|0; + $nInMul = $nInMul|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; + var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; + var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $eOp = 0, $iCol = 0, $nEq = 0, $nIn = 0, $nIter = 0, $nOutUnadjusted = 0, $opMask = 0, $pBtm = 0, $pExpr = 0, $pNew = 0; + var $pParse = 0, $pTerm = 0, $pTop = 0, $pWInfo = 0, $rCostIdx = 0, $rLogSize = 0, $rc = 0, $saved_nEq = 0, $saved_nLTerm = 0, $saved_nOut = 0, $saved_nSkip = 0, $saved_prereq = 0, $saved_wsFlags = 0, $scan = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 224|0; + $0 = sp + 16|0; + $1 = sp + 188|0; + $2 = sp + 176|0; + $3 = sp + 164|0; + $4 = sp + 192|0; + $pWInfo = sp + 168|0; + $pParse = sp + 180|0; + $db = sp + 172|0; + $pNew = sp + 184|0; + $pTerm = sp + 12|0; + $opMask = sp + 8|0; + $scan = sp + 24|0; + $saved_prereq = sp; + $saved_nLTerm = sp + 210|0; + $saved_nEq = sp + 208|0; + $saved_nSkip = sp + 202|0; + $saved_wsFlags = sp + 20|0; + $saved_nOut = sp + 206|0; + $iCol = sp + 136|0; + $rc = sp + 140|0; + $rLogSize = sp + 204|0; + $pTop = sp + 144|0; + $pBtm = sp + 148|0; + $nIter = sp + 196|0; + $eOp = sp + 198|0; + $rCostIdx = sp + 200|0; + $nOutUnadjusted = sp + 194|0; + $nIn = sp + 152|0; + $pExpr = sp + 156|0; + $nEq = sp + 160|0; + HEAP32[$1>>2] = $pBuilder; + HEAP32[$2>>2] = $pSrc; + HEAP32[$3>>2] = $pProbe; + HEAP16[$4>>1] = $nInMul; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$pWInfo>>2] = $6; + $7 = HEAP32[$pWInfo>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$pParse>>2] = $8; + $9 = HEAP32[$pParse>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$db>>2] = $10; + HEAP32[$rc>>2] = 0; + HEAP32[$pTop>>2] = 0; + HEAP32[$pBtm>>2] = 0; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 12|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pNew>>2] = $13; + $14 = HEAP32[$db>>2]|0; + $15 = (($14) + 64|0); + $16 = HEAP8[$15>>0]|0; + $17 = ($16<<24>>24)!=(0); + if ($17) { + HEAP32[$0>>2] = 7; + $628 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($628|0); + } + $18 = HEAP32[$pNew>>2]|0; + $19 = (($18) + 36|0); + $20 = HEAP32[$19>>2]|0; + $21 = $20 & 32; + $22 = ($21|0)!=(0); + do { + if ($22) { + HEAP32[$opMask>>2] = 24; + } else { + $23 = HEAP32[$3>>2]|0; + $24 = (($23) + 44|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)<=(0); + if (!($26)) { + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 36|0); + $29 = HEAP8[$28>>0]|0; + $30 = $29&255; + $31 = $30 & 8; + $32 = ($31|0)!=(0); + if (!($32)) { + HEAP32[$opMask>>2] = 191; + break; + } + } + HEAP32[$opMask>>2] = 63; + } + } while(0); + $33 = HEAP32[$3>>2]|0; + $34 = (($33) + 55|0); + $35 = HEAP8[$34>>0]|0; + $36 = ($35&255) >>> 2; + $37 = $36 & 1; + $38 = $37&255; + $39 = ($38|0)!=(0); + if ($39) { + $40 = HEAP32[$opMask>>2]|0; + $41 = $40 & -61; + HEAP32[$opMask>>2] = $41; + } + $42 = HEAP32[$pNew>>2]|0; + $43 = (($42) + 24|0); + $44 = HEAP16[$43>>1]|0; + $45 = $44&65535; + $46 = HEAP32[$3>>2]|0; + $47 = (($46) + 50|0); + $48 = HEAP16[$47>>1]|0; + $49 = $48&65535; + $50 = ($45|0)<($49|0); + if ($50) { + $51 = HEAP32[$pNew>>2]|0; + $52 = (($51) + 24|0); + $53 = HEAP16[$52>>1]|0; + $54 = $53&65535; + $55 = HEAP32[$3>>2]|0; + $56 = (($55) + 4|0); + $57 = HEAP32[$56>>2]|0; + $58 = (($57) + ($54<<1)|0); + $59 = HEAP16[$58>>1]|0; + $60 = $59 << 16 >> 16; + HEAP32[$iCol>>2] = $60; + } else { + HEAP32[$iCol>>2] = -1; + } + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 4|0); + $63 = HEAP32[$62>>2]|0; + $64 = HEAP32[$2>>2]|0; + $65 = (($64) + 40|0); + $66 = HEAP32[$65>>2]|0; + $67 = HEAP32[$iCol>>2]|0; + $68 = HEAP32[$opMask>>2]|0; + $69 = HEAP32[$3>>2]|0; + $70 = (_whereScanInit($scan,$63,$66,$67,$68,$69)|0); + HEAP32[$pTerm>>2] = $70; + $71 = HEAP32[$pNew>>2]|0; + $72 = (($71) + 24|0); + $73 = HEAP16[$72>>1]|0; + HEAP16[$saved_nEq>>1] = $73; + $74 = HEAP32[$pNew>>2]|0; + $75 = (($74) + 24|0); + $76 = (($75) + 2|0); + $77 = HEAP16[$76>>1]|0; + HEAP16[$saved_nSkip>>1] = $77; + $78 = HEAP32[$pNew>>2]|0; + $79 = (($78) + 40|0); + $80 = HEAP16[$79>>1]|0; + HEAP16[$saved_nLTerm>>1] = $80; + $81 = HEAP32[$pNew>>2]|0; + $82 = (($81) + 36|0); + $83 = HEAP32[$82>>2]|0; + HEAP32[$saved_wsFlags>>2] = $83; + $84 = HEAP32[$pNew>>2]|0; + $85 = $84; + $86 = $85; + $87 = HEAP32[$86>>2]|0; + $88 = (($85) + 4)|0; + $89 = $88; + $90 = HEAP32[$89>>2]|0; + $91 = $saved_prereq; + $92 = $91; + HEAP32[$92>>2] = $87; + $93 = (($91) + 4)|0; + $94 = $93; + HEAP32[$94>>2] = $90; + $95 = HEAP32[$pNew>>2]|0; + $96 = (($95) + 22|0); + $97 = HEAP16[$96>>1]|0; + HEAP16[$saved_nOut>>1] = $97; + $98 = HEAP32[$pNew>>2]|0; + $99 = (($98) + 18|0); + HEAP16[$99>>1] = 0; + $100 = HEAP32[$3>>2]|0; + $101 = (($100) + 8|0); + $102 = HEAP32[$101>>2]|0; + $103 = HEAP16[$102>>1]|0; + $104 = (_estLog($103)|0); + HEAP16[$rLogSize>>1] = $104; + $105 = HEAP32[$pTerm>>2]|0; + $106 = ($105|0)==(0|0); + if ($106) { + $107 = HEAP16[$saved_nEq>>1]|0; + $108 = $107&65535; + $109 = HEAP16[$saved_nSkip>>1]|0; + $110 = $109&65535; + $111 = ($108|0)==($110|0); + if ($111) { + $112 = HEAP16[$saved_nEq>>1]|0; + $113 = $112&65535; + $114 = (($113) + 1)|0; + $115 = HEAP32[$3>>2]|0; + $116 = (($115) + 50|0); + $117 = HEAP16[$116>>1]|0; + $118 = $117&65535; + $119 = ($114|0)<($118|0); + if ($119) { + $120 = HEAP16[$saved_nEq>>1]|0; + $121 = $120&65535; + $122 = (($121) + 1)|0; + $123 = HEAP32[$3>>2]|0; + $124 = (($123) + 8|0); + $125 = HEAP32[$124>>2]|0; + $126 = (($125) + ($122<<1)|0); + $127 = HEAP16[$126>>1]|0; + $128 = $127 << 16 >> 16; + $129 = ($128|0)>=(42); + if ($129) { + $130 = HEAP32[$db>>2]|0; + $131 = HEAP32[$pNew>>2]|0; + $132 = HEAP32[$pNew>>2]|0; + $133 = (($132) + 40|0); + $134 = HEAP16[$133>>1]|0; + $135 = $134&65535; + $136 = (($135) + 1)|0; + $137 = (_whereLoopResize($130,$131,$136)|0); + HEAP32[$rc>>2] = $137; + $138 = ($137|0)==(0); + if ($138) { + $139 = HEAP32[$pNew>>2]|0; + $140 = (($139) + 24|0); + $141 = HEAP16[$140>>1]|0; + $142 = (($141) + 1)<<16>>16; + HEAP16[$140>>1] = $142; + $143 = HEAP32[$pNew>>2]|0; + $144 = (($143) + 24|0); + $145 = (($144) + 2|0); + $146 = HEAP16[$145>>1]|0; + $147 = (($146) + 1)<<16>>16; + HEAP16[$145>>1] = $147; + $148 = HEAP32[$pNew>>2]|0; + $149 = (($148) + 40|0); + $150 = HEAP16[$149>>1]|0; + $151 = (($150) + 1)<<16>>16; + HEAP16[$149>>1] = $151; + $152 = $150&65535; + $153 = HEAP32[$pNew>>2]|0; + $154 = (($153) + 44|0); + $155 = HEAP32[$154>>2]|0; + $156 = (($155) + ($152<<2)|0); + HEAP32[$156>>2] = 0; + $157 = HEAP32[$pNew>>2]|0; + $158 = (($157) + 36|0); + $159 = HEAP32[$158>>2]|0; + $160 = $159 | 32768; + HEAP32[$158>>2] = $160; + $161 = HEAP16[$saved_nEq>>1]|0; + $162 = $161&65535; + $163 = HEAP32[$3>>2]|0; + $164 = (($163) + 8|0); + $165 = HEAP32[$164>>2]|0; + $166 = (($165) + ($162<<1)|0); + $167 = HEAP16[$166>>1]|0; + $168 = $167 << 16 >> 16; + $169 = HEAP16[$saved_nEq>>1]|0; + $170 = $169&65535; + $171 = (($170) + 1)|0; + $172 = HEAP32[$3>>2]|0; + $173 = (($172) + 8|0); + $174 = HEAP32[$173>>2]|0; + $175 = (($174) + ($171<<1)|0); + $176 = HEAP16[$175>>1]|0; + $177 = $176 << 16 >> 16; + $178 = (($168) - ($177))|0; + $179 = $178&65535; + HEAP16[$nIter>>1] = $179; + $180 = HEAP16[$nIter>>1]|0; + $181 = $180 << 16 >> 16; + $182 = HEAP32[$pNew>>2]|0; + $183 = (($182) + 22|0); + $184 = HEAP16[$183>>1]|0; + $185 = $184 << 16 >> 16; + $186 = (($185) - ($181))|0; + $187 = $186&65535; + HEAP16[$183>>1] = $187; + $188 = HEAP32[$1>>2]|0; + $189 = HEAP32[$2>>2]|0; + $190 = HEAP32[$3>>2]|0; + $191 = HEAP16[$nIter>>1]|0; + $192 = $191 << 16 >> 16; + $193 = HEAP16[$4>>1]|0; + $194 = $193 << 16 >> 16; + $195 = (($192) + ($194))|0; + $196 = $195&65535; + (_whereLoopAddBtreeIndex($188,$189,$190,$196)|0); + $197 = HEAP16[$saved_nOut>>1]|0; + $198 = HEAP32[$pNew>>2]|0; + $199 = (($198) + 22|0); + HEAP16[$199>>1] = $197; + } + } + } + } + } + while(1) { + $200 = HEAP32[$rc>>2]|0; + $201 = ($200|0)==(0); + if (!($201)) { + break; + } + $202 = HEAP32[$pTerm>>2]|0; + $203 = ($202|0)!=(0|0); + if (!($203)) { + break; + } + $204 = HEAP32[$pTerm>>2]|0; + $205 = (($204) + 18|0); + $206 = HEAP16[$205>>1]|0; + HEAP16[$eOp>>1] = $206; + HEAP32[$nIn>>2] = 0; + $207 = HEAP16[$eOp>>1]|0; + $208 = $207&65535; + $209 = ($208|0)==(128); + if ($209) { + label = 24; + } else { + $210 = HEAP32[$pTerm>>2]|0; + $211 = (($210) + 20|0); + $212 = HEAP8[$211>>0]|0; + $213 = $212&255; + $214 = $213 & 0; + $215 = ($214|0)!=(0); + if ($215) { + label = 24; + } else { + label = 26; + } + } + if ((label|0) == 24) { + label = 0; + $216 = HEAP32[$iCol>>2]|0; + $217 = ($216|0)<(0); + if (!($217)) { + $218 = HEAP32[$iCol>>2]|0; + $219 = HEAP32[$2>>2]|0; + $220 = (($219) + 16|0); + $221 = HEAP32[$220>>2]|0; + $222 = (($221) + 4|0); + $223 = HEAP32[$222>>2]|0; + $224 = (($223) + (($218*24)|0)|0); + $225 = (($224) + 20|0); + $226 = HEAP8[$225>>0]|0; + $227 = $226&255; + $228 = ($227|0)!=(0); + if (!($228)) { + label = 26; + } + } + } + if ((label|0) == 26) { + label = 0; + $229 = HEAP32[$pTerm>>2]|0; + $230 = (($229) + 32|0); + $231 = $230; + $232 = $231; + $233 = HEAP32[$232>>2]|0; + $234 = (($231) + 4)|0; + $235 = $234; + $236 = HEAP32[$235>>2]|0; + $237 = HEAP32[$pNew>>2]|0; + $238 = (($237) + 8|0); + $239 = $238; + $240 = $239; + $241 = HEAP32[$240>>2]|0; + $242 = (($239) + 4)|0; + $243 = $242; + $244 = HEAP32[$243>>2]|0; + $245 = $233 & $241; + $246 = $236 & $244; + $247 = ($245|0)!=(0); + $248 = ($246|0)!=(0); + $249 = $247 | $248; + if (!($249)) { + $250 = HEAP32[$saved_wsFlags>>2]|0; + $251 = HEAP32[$pNew>>2]|0; + $252 = (($251) + 36|0); + HEAP32[$252>>2] = $250; + $253 = HEAP16[$saved_nEq>>1]|0; + $254 = HEAP32[$pNew>>2]|0; + $255 = (($254) + 24|0); + HEAP16[$255>>1] = $253; + $256 = HEAP16[$saved_nLTerm>>1]|0; + $257 = HEAP32[$pNew>>2]|0; + $258 = (($257) + 40|0); + HEAP16[$258>>1] = $256; + $259 = HEAP32[$db>>2]|0; + $260 = HEAP32[$pNew>>2]|0; + $261 = HEAP32[$pNew>>2]|0; + $262 = (($261) + 40|0); + $263 = HEAP16[$262>>1]|0; + $264 = $263&65535; + $265 = (($264) + 1)|0; + $266 = (_whereLoopResize($259,$260,$265)|0); + $267 = ($266|0)!=(0); + if ($267) { + break; + } + $268 = HEAP32[$pTerm>>2]|0; + $269 = HEAP32[$pNew>>2]|0; + $270 = (($269) + 40|0); + $271 = HEAP16[$270>>1]|0; + $272 = (($271) + 1)<<16>>16; + HEAP16[$270>>1] = $272; + $273 = $271&65535; + $274 = HEAP32[$pNew>>2]|0; + $275 = (($274) + 44|0); + $276 = HEAP32[$275>>2]|0; + $277 = (($276) + ($273<<2)|0); + HEAP32[$277>>2] = $268; + $278 = $saved_prereq; + $279 = $278; + $280 = HEAP32[$279>>2]|0; + $281 = (($278) + 4)|0; + $282 = $281; + $283 = HEAP32[$282>>2]|0; + $284 = HEAP32[$pTerm>>2]|0; + $285 = (($284) + 32|0); + $286 = $285; + $287 = $286; + $288 = HEAP32[$287>>2]|0; + $289 = (($286) + 4)|0; + $290 = $289; + $291 = HEAP32[$290>>2]|0; + $292 = $280 | $288; + $293 = $283 | $291; + $294 = HEAP32[$pNew>>2]|0; + $295 = (($294) + 8|0); + $296 = $295; + $297 = $296; + $298 = HEAP32[$297>>2]|0; + $299 = (($296) + 4)|0; + $300 = $299; + $301 = HEAP32[$300>>2]|0; + $302 = $298 ^ -1; + $303 = $301 ^ -1; + $304 = $292 & $302; + $305 = $293 & $303; + $306 = HEAP32[$pNew>>2]|0; + $307 = $306; + $308 = $307; + HEAP32[$308>>2] = $304; + $309 = (($307) + 4)|0; + $310 = $309; + HEAP32[$310>>2] = $305; + $311 = HEAP16[$eOp>>1]|0; + $312 = $311&65535; + $313 = $312 & 1; + $314 = ($313|0)!=(0); + do { + if ($314) { + $315 = HEAP32[$pTerm>>2]|0; + $316 = HEAP32[$315>>2]|0; + HEAP32[$pExpr>>2] = $316; + $317 = HEAP32[$pNew>>2]|0; + $318 = (($317) + 36|0); + $319 = HEAP32[$318>>2]|0; + $320 = $319 | 4; + HEAP32[$318>>2] = $320; + $321 = HEAP32[$pExpr>>2]|0; + $322 = (($321) + 4|0); + $323 = HEAP32[$322>>2]|0; + $324 = $323 & 2048; + $325 = ($324|0)!=(0); + if ($325) { + HEAP32[$nIn>>2] = 46; + break; + } + $326 = HEAP32[$pExpr>>2]|0; + $327 = (($326) + 20|0); + $328 = HEAP32[$327>>2]|0; + $329 = ($328|0)!=(0|0); + if ($329) { + $330 = HEAP32[$pExpr>>2]|0; + $331 = (($330) + 20|0); + $332 = HEAP32[$331>>2]|0; + $333 = HEAP32[$332>>2]|0; + $334 = ($333|0)!=(0); + if ($334) { + $335 = HEAP32[$pExpr>>2]|0; + $336 = (($335) + 20|0); + $337 = HEAP32[$336>>2]|0; + $338 = HEAP32[$337>>2]|0; + $339 = ($338|0)<(0); + $340 = $339 << 31 >> 31; + $341 = (_sqlite3LogEst($338,$340)|0); + $342 = $341 << 16 >> 16; + HEAP32[$nIn>>2] = $342; + } + } + } else { + $343 = HEAP16[$eOp>>1]|0; + $344 = $343&65535; + $345 = $344 & 2; + $346 = ($345|0)!=(0); + if ($346) { + $347 = HEAP32[$pNew>>2]|0; + $348 = (($347) + 36|0); + $349 = HEAP32[$348>>2]|0; + $350 = $349 | 1; + HEAP32[$348>>2] = $350; + $351 = HEAP32[$iCol>>2]|0; + $352 = ($351|0)<(0); + if (!($352)) { + $353 = HEAP16[$4>>1]|0; + $354 = $353 << 16 >> 16; + $355 = ($354|0)==(0); + if (!($355)) { + break; + } + $356 = HEAP32[$pNew>>2]|0; + $357 = (($356) + 24|0); + $358 = HEAP16[$357>>1]|0; + $359 = $358&65535; + $360 = HEAP32[$3>>2]|0; + $361 = (($360) + 50|0); + $362 = HEAP16[$361>>1]|0; + $363 = $362&65535; + $364 = (($363) - 1)|0; + $365 = ($359|0)==($364|0); + if (!($365)) { + break; + } + } + $366 = HEAP32[$iCol>>2]|0; + $367 = ($366|0)>=(0); + if ($367) { + $368 = HEAP32[$3>>2]|0; + $369 = (($368) + 54|0); + $370 = HEAP8[$369>>0]|0; + $371 = $370&255; + $372 = ($371|0)==(0); + if ($372) { + $373 = HEAP32[$pNew>>2]|0; + $374 = (($373) + 36|0); + $375 = HEAP32[$374>>2]|0; + $376 = $375 | 65536; + HEAP32[$374>>2] = $376; + break; + } + } + $377 = HEAP32[$pNew>>2]|0; + $378 = (($377) + 36|0); + $379 = HEAP32[$378>>2]|0; + $380 = $379 | 4096; + HEAP32[$378>>2] = $380; + break; + } else { + $381 = HEAP16[$eOp>>1]|0; + $382 = $381&65535; + $383 = $382 & 128; + $384 = ($383|0)!=(0); + if ($384) { + $385 = HEAP32[$pNew>>2]|0; + $386 = (($385) + 36|0); + $387 = HEAP32[$386>>2]|0; + $388 = $387 | 8; + HEAP32[$386>>2] = $388; + break; + } + $389 = HEAP16[$eOp>>1]|0; + $390 = $389&65535; + $391 = $390 & 36; + $392 = ($391|0)!=(0); + $393 = HEAP32[$pNew>>2]|0; + $394 = (($393) + 36|0); + $395 = HEAP32[$394>>2]|0; + if ($392) { + $396 = $395 | 34; + HEAP32[$394>>2] = $396; + $397 = HEAP32[$pTerm>>2]|0; + HEAP32[$pBtm>>2] = $397; + HEAP32[$pTop>>2] = 0; + break; + } + $398 = $395 | 18; + HEAP32[$394>>2] = $398; + $399 = HEAP32[$pTerm>>2]|0; + HEAP32[$pTop>>2] = $399; + $400 = HEAP32[$pNew>>2]|0; + $401 = (($400) + 36|0); + $402 = HEAP32[$401>>2]|0; + $403 = $402 & 32; + $404 = ($403|0)!=(0); + if ($404) { + $405 = HEAP32[$pNew>>2]|0; + $406 = (($405) + 40|0); + $407 = HEAP16[$406>>1]|0; + $408 = $407&65535; + $409 = (($408) - 2)|0; + $410 = HEAP32[$pNew>>2]|0; + $411 = (($410) + 44|0); + $412 = HEAP32[$411>>2]|0; + $413 = (($412) + ($409<<2)|0); + $414 = HEAP32[$413>>2]|0; + $415 = $414; + } else { + $415 = 0; + } + HEAP32[$pBtm>>2] = $415; + break; + } + } + } while(0); + $416 = HEAP32[$pNew>>2]|0; + $417 = (($416) + 36|0); + $418 = HEAP32[$417>>2]|0; + $419 = $418 & 2; + $420 = ($419|0)!=(0); + do { + if ($420) { + $421 = HEAP32[$pParse>>2]|0; + $422 = HEAP32[$1>>2]|0; + $423 = HEAP32[$pBtm>>2]|0; + $424 = HEAP32[$pTop>>2]|0; + $425 = HEAP32[$pNew>>2]|0; + (_whereRangeScanEst($421,$422,$423,$424,$425)|0); + } else { + $426 = HEAP32[$pNew>>2]|0; + $427 = (($426) + 24|0); + $428 = HEAP16[$427>>1]|0; + $429 = (($428) + 1)<<16>>16; + HEAP16[$427>>1] = $429; + $430 = $429&65535; + HEAP32[$nEq>>2] = $430; + $431 = HEAP32[$pTerm>>2]|0; + $432 = (($431) + 16|0); + $433 = HEAP16[$432>>1]|0; + $434 = $433 << 16 >> 16; + $435 = ($434|0)<=(0); + if ($435) { + $436 = HEAP32[$iCol>>2]|0; + $437 = ($436|0)>=(0); + if ($437) { + $438 = HEAP32[$pTerm>>2]|0; + $439 = (($438) + 16|0); + $440 = HEAP16[$439>>1]|0; + $441 = $440 << 16 >> 16; + $442 = HEAP32[$pNew>>2]|0; + $443 = (($442) + 22|0); + $444 = HEAP16[$443>>1]|0; + $445 = $444 << 16 >> 16; + $446 = (($445) + ($441))|0; + $447 = $446&65535; + HEAP16[$443>>1] = $447; + $448 = HEAP32[$nIn>>2]|0; + $449 = HEAP32[$pNew>>2]|0; + $450 = (($449) + 22|0); + $451 = HEAP16[$450>>1]|0; + $452 = $451 << 16 >> 16; + $453 = (($452) - ($448))|0; + $454 = $453&65535; + HEAP16[$450>>1] = $454; + break; + } + } + $455 = HEAP32[$nEq>>2]|0; + $456 = HEAP32[$3>>2]|0; + $457 = (($456) + 8|0); + $458 = HEAP32[$457>>2]|0; + $459 = (($458) + ($455<<1)|0); + $460 = HEAP16[$459>>1]|0; + $461 = $460 << 16 >> 16; + $462 = HEAP32[$nEq>>2]|0; + $463 = (($462) - 1)|0; + $464 = HEAP32[$3>>2]|0; + $465 = (($464) + 8|0); + $466 = HEAP32[$465>>2]|0; + $467 = (($466) + ($463<<1)|0); + $468 = HEAP16[$467>>1]|0; + $469 = $468 << 16 >> 16; + $470 = (($461) - ($469))|0; + $471 = HEAP32[$pNew>>2]|0; + $472 = (($471) + 22|0); + $473 = HEAP16[$472>>1]|0; + $474 = $473 << 16 >> 16; + $475 = (($474) + ($470))|0; + $476 = $475&65535; + HEAP16[$472>>1] = $476; + $477 = HEAP16[$eOp>>1]|0; + $478 = $477&65535; + $479 = $478 & 128; + $480 = ($479|0)!=(0); + if ($480) { + $481 = HEAP32[$pNew>>2]|0; + $482 = (($481) + 22|0); + $483 = HEAP16[$482>>1]|0; + $484 = $483 << 16 >> 16; + $485 = (($484) + 10)|0; + $486 = $485&65535; + HEAP16[$482>>1] = $486; + } + } + } while(0); + $487 = HEAP32[$pNew>>2]|0; + $488 = (($487) + 22|0); + $489 = HEAP16[$488>>1]|0; + $490 = $489 << 16 >> 16; + $491 = (($490) + 1)|0; + $492 = HEAP32[$3>>2]|0; + $493 = (($492) + 48|0); + $494 = HEAP16[$493>>1]|0; + $495 = $494 << 16 >> 16; + $496 = ($495*15)|0; + $497 = HEAP32[$2>>2]|0; + $498 = (($497) + 16|0); + $499 = HEAP32[$498>>2]|0; + $500 = (($499) + 42|0); + $501 = HEAP16[$500>>1]|0; + $502 = $501 << 16 >> 16; + $503 = (($496|0) / ($502|0))&-1; + $504 = (($491) + ($503))|0; + $505 = $504&65535; + HEAP16[$rCostIdx>>1] = $505; + $506 = HEAP16[$rLogSize>>1]|0; + $507 = HEAP16[$rCostIdx>>1]|0; + $508 = (_sqlite3LogEstAdd($506,$507)|0); + $509 = HEAP32[$pNew>>2]|0; + $510 = (($509) + 20|0); + HEAP16[$510>>1] = $508; + $511 = HEAP32[$pNew>>2]|0; + $512 = (($511) + 36|0); + $513 = HEAP32[$512>>2]|0; + $514 = $513 & 320; + $515 = ($514|0)==(0); + if ($515) { + $516 = HEAP32[$pNew>>2]|0; + $517 = (($516) + 20|0); + $518 = HEAP16[$517>>1]|0; + $519 = HEAP32[$pNew>>2]|0; + $520 = (($519) + 22|0); + $521 = HEAP16[$520>>1]|0; + $522 = $521 << 16 >> 16; + $523 = (($522) + 16)|0; + $524 = $523&65535; + $525 = (_sqlite3LogEstAdd($518,$524)|0); + $526 = HEAP32[$pNew>>2]|0; + $527 = (($526) + 20|0); + HEAP16[$527>>1] = $525; + } + $528 = HEAP32[$pNew>>2]|0; + $529 = (($528) + 22|0); + $530 = HEAP16[$529>>1]|0; + HEAP16[$nOutUnadjusted>>1] = $530; + $531 = HEAP16[$4>>1]|0; + $532 = $531 << 16 >> 16; + $533 = HEAP32[$nIn>>2]|0; + $534 = (($532) + ($533))|0; + $535 = HEAP32[$pNew>>2]|0; + $536 = (($535) + 20|0); + $537 = HEAP16[$536>>1]|0; + $538 = $537 << 16 >> 16; + $539 = (($538) + ($534))|0; + $540 = $539&65535; + HEAP16[$536>>1] = $540; + $541 = HEAP16[$4>>1]|0; + $542 = $541 << 16 >> 16; + $543 = HEAP32[$nIn>>2]|0; + $544 = (($542) + ($543))|0; + $545 = HEAP32[$pNew>>2]|0; + $546 = (($545) + 22|0); + $547 = HEAP16[$546>>1]|0; + $548 = $547 << 16 >> 16; + $549 = (($548) + ($544))|0; + $550 = $549&65535; + HEAP16[$546>>1] = $550; + $551 = HEAP32[$1>>2]|0; + $552 = (($551) + 4|0); + $553 = HEAP32[$552>>2]|0; + $554 = HEAP32[$pNew>>2]|0; + _whereLoopOutputAdjust($553,$554); + $555 = HEAP32[$1>>2]|0; + $556 = HEAP32[$pNew>>2]|0; + $557 = (_whereLoopInsert($555,$556)|0); + HEAP32[$rc>>2] = $557; + $558 = HEAP32[$pNew>>2]|0; + $559 = (($558) + 36|0); + $560 = HEAP32[$559>>2]|0; + $561 = $560 & 2; + $562 = ($561|0)!=(0); + if ($562) { + $563 = HEAP16[$saved_nOut>>1]|0; + $564 = HEAP32[$pNew>>2]|0; + $565 = (($564) + 22|0); + HEAP16[$565>>1] = $563; + } else { + $566 = HEAP16[$nOutUnadjusted>>1]|0; + $567 = HEAP32[$pNew>>2]|0; + $568 = (($567) + 22|0); + HEAP16[$568>>1] = $566; + } + $569 = HEAP32[$pNew>>2]|0; + $570 = (($569) + 36|0); + $571 = HEAP32[$570>>2]|0; + $572 = $571 & 16; + $573 = ($572|0)==(0); + if ($573) { + $574 = HEAP32[$pNew>>2]|0; + $575 = (($574) + 24|0); + $576 = HEAP16[$575>>1]|0; + $577 = $576&65535; + $578 = HEAP32[$3>>2]|0; + $579 = (($578) + 50|0); + $580 = HEAP16[$579>>1]|0; + $581 = $580&65535; + $582 = HEAP32[$3>>2]|0; + $583 = HEAP32[$582>>2]|0; + $584 = ($583|0)!=(0|0); + $585 = $584&1; + $586 = (($581) + ($585))|0; + $587 = ($577|0)<($586|0); + if ($587) { + $588 = HEAP32[$1>>2]|0; + $589 = HEAP32[$2>>2]|0; + $590 = HEAP32[$3>>2]|0; + $591 = HEAP16[$4>>1]|0; + $592 = $591 << 16 >> 16; + $593 = HEAP32[$nIn>>2]|0; + $594 = (($592) + ($593))|0; + $595 = $594&65535; + (_whereLoopAddBtreeIndex($588,$589,$590,$595)|0); + } + } + $596 = HEAP16[$saved_nOut>>1]|0; + $597 = HEAP32[$pNew>>2]|0; + $598 = (($597) + 22|0); + HEAP16[$598>>1] = $596; + } + } + $599 = (_whereScanNext($scan)|0); + HEAP32[$pTerm>>2] = $599; + } + $600 = $saved_prereq; + $601 = $600; + $602 = HEAP32[$601>>2]|0; + $603 = (($600) + 4)|0; + $604 = $603; + $605 = HEAP32[$604>>2]|0; + $606 = HEAP32[$pNew>>2]|0; + $607 = $606; + $608 = $607; + HEAP32[$608>>2] = $602; + $609 = (($607) + 4)|0; + $610 = $609; + HEAP32[$610>>2] = $605; + $611 = HEAP16[$saved_nEq>>1]|0; + $612 = HEAP32[$pNew>>2]|0; + $613 = (($612) + 24|0); + HEAP16[$613>>1] = $611; + $614 = HEAP16[$saved_nSkip>>1]|0; + $615 = HEAP32[$pNew>>2]|0; + $616 = (($615) + 24|0); + $617 = (($616) + 2|0); + HEAP16[$617>>1] = $614; + $618 = HEAP32[$saved_wsFlags>>2]|0; + $619 = HEAP32[$pNew>>2]|0; + $620 = (($619) + 36|0); + HEAP32[$620>>2] = $618; + $621 = HEAP16[$saved_nOut>>1]|0; + $622 = HEAP32[$pNew>>2]|0; + $623 = (($622) + 22|0); + HEAP16[$623>>1] = $621; + $624 = HEAP16[$saved_nLTerm>>1]|0; + $625 = HEAP32[$pNew>>2]|0; + $626 = (($625) + 40|0); + HEAP16[$626>>1] = $624; + $627 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $627; + $628 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($628|0); +} +function _whereRangeScanEst($pParse,$pBuilder,$pLower,$pUpper,$pLoop) { + $pParse = $pParse|0; + $pBuilder = $pBuilder|0; + $pLower = $pLower|0; + $pUpper = $pUpper|0; + $pLoop = $pLoop|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nNew = 0, $nOut = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $rc = sp + 16|0; + $nOut = sp + 20|0; + $nNew = sp + 28|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pBuilder; + HEAP32[$2>>2] = $pLower; + HEAP32[$3>>2] = $pUpper; + HEAP32[$4>>2] = $pLoop; + HEAP32[$rc>>2] = 0; + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + 22|0); + $7 = HEAP16[$6>>1]|0; + $8 = $7 << 16 >> 16; + HEAP32[$nOut>>2] = $8; + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$nOut>>2]|0; + $11 = $10&65535; + $12 = (_whereRangeAdjust($9,$11)|0); + HEAP16[$nNew>>1] = $12; + $13 = HEAP32[$3>>2]|0; + $14 = HEAP16[$nNew>>1]|0; + $15 = (_whereRangeAdjust($13,$14)|0); + HEAP16[$nNew>>1] = $15; + $16 = HEAP32[$2>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = HEAP32[$3>>2]|0; + $19 = ($18|0)!=(0|0); + if ($19) { + $20 = HEAP16[$nNew>>1]|0; + $21 = $20 << 16 >> 16; + $22 = (($21) - 20)|0; + $23 = $22&65535; + HEAP16[$nNew>>1] = $23; + } + } + $24 = HEAP32[$2>>2]|0; + $25 = ($24|0)!=(0|0); + $26 = $25&1; + $27 = HEAP32[$3>>2]|0; + $28 = ($27|0)!=(0|0); + $29 = $28&1; + $30 = (($26) + ($29))|0; + $31 = HEAP32[$nOut>>2]|0; + $32 = (($31) - ($30))|0; + HEAP32[$nOut>>2] = $32; + $33 = HEAP16[$nNew>>1]|0; + $34 = $33 << 16 >> 16; + $35 = ($34|0)<(10); + if ($35) { + HEAP16[$nNew>>1] = 10; + } + $36 = HEAP16[$nNew>>1]|0; + $37 = $36 << 16 >> 16; + $38 = HEAP32[$nOut>>2]|0; + $39 = ($37|0)<($38|0); + if (!($39)) { + $42 = HEAP32[$nOut>>2]|0; + $43 = $42&65535; + $44 = HEAP32[$4>>2]|0; + $45 = (($44) + 22|0); + HEAP16[$45>>1] = $43; + $46 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($46|0); + } + $40 = HEAP16[$nNew>>1]|0; + $41 = $40 << 16 >> 16; + HEAP32[$nOut>>2] = $41; + $42 = HEAP32[$nOut>>2]|0; + $43 = $42&65535; + $44 = HEAP32[$4>>2]|0; + $45 = (($44) + 22|0); + HEAP16[$45>>1] = $43; + $46 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($46|0); +} +function _whereRangeAdjust($pTerm,$nNew) { + $pTerm = $pTerm|0; + $nNew = $nNew|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nRet = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + $1 = sp + 6|0; + $nRet = sp + 4|0; + HEAP32[$0>>2] = $pTerm; + HEAP16[$1>>1] = $nNew; + $2 = HEAP16[$1>>1]|0; + HEAP16[$nRet>>1] = $2; + $3 = HEAP32[$0>>2]|0; + $4 = ($3|0)!=(0|0); + do { + if ($4) { + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 16|0); + $7 = HEAP16[$6>>1]|0; + $8 = $7 << 16 >> 16; + $9 = ($8|0)<=(0); + $10 = HEAP32[$0>>2]|0; + if ($9) { + $11 = (($10) + 16|0); + $12 = HEAP16[$11>>1]|0; + $13 = $12 << 16 >> 16; + $14 = HEAP16[$nRet>>1]|0; + $15 = $14 << 16 >> 16; + $16 = (($15) + ($13))|0; + $17 = $16&65535; + HEAP16[$nRet>>1] = $17; + break; + } + $18 = (($10) + 20|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = $20 & 0; + $22 = ($21|0)==(0); + if ($22) { + $23 = HEAP16[$nRet>>1]|0; + $24 = $23 << 16 >> 16; + $25 = (($24) - 20)|0; + $26 = $25&65535; + HEAP16[$nRet>>1] = $26; + } + } + } while(0); + $27 = HEAP16[$nRet>>1]|0; + STACKTOP = sp;return ($27|0); +} +function _sqlite3ExprImpliesExpr($pE1,$pE2,$iTab) { + $pE1 = $pE1|0; + $pE2 = $pE2|0; + $iTab = $iTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$1>>2] = $pE1; + HEAP32[$2>>2] = $pE2; + HEAP32[$3>>2] = $iTab; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$3>>2]|0; + $7 = (_sqlite3ExprCompare($4,$5,$6)|0); + $8 = ($7|0)==(0); + if ($8) { + HEAP32[$0>>2] = 1; + $48 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($48|0); + } + $9 = HEAP32[$2>>2]|0; + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = ($11|0)==(71); + do { + if ($12) { + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (($14) + 12|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$3>>2]|0; + $18 = (_sqlite3ExprImpliesExpr($13,$16,$17)|0); + $19 = ($18|0)!=(0); + if (!($19)) { + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 16|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$3>>2]|0; + $25 = (_sqlite3ExprImpliesExpr($20,$23,$24)|0); + $26 = ($25|0)!=(0); + if (!($26)) { + break; + } + } + HEAP32[$0>>2] = 1; + $48 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($48|0); + } + } while(0); + $27 = HEAP32[$2>>2]|0; + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = ($29|0)==(77); + if ($30) { + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 12|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = (($34) + 12|0); + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$3>>2]|0; + $38 = (_sqlite3ExprCompare($33,$36,$37)|0); + $39 = ($38|0)==(0); + if ($39) { + $40 = HEAP32[$1>>2]|0; + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = ($42|0)!=(76); + if ($43) { + $44 = HEAP32[$1>>2]|0; + $45 = HEAP8[$44>>0]|0; + $46 = $45&255; + $47 = ($46|0)!=(73); + if ($47) { + HEAP32[$0>>2] = 1; + $48 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($48|0); + } + } + } + } + HEAP32[$0>>2] = 0; + $48 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($48|0); +} +function _allocateIndexInfo($pParse,$pWC,$pSrc,$pOrderBy) { + $pParse = $pParse|0; + $pWC = $pWC|0; + $pSrc = $pSrc|0; + $pOrderBy = $pOrderBy|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; + var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; + var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; + var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; + var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; + var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; + var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; + var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; + var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $j = 0, $n = 0, $nOrderBy = 0, $nTerm = 0, $op = 0, $pExpr = 0; + var $pExpr1 = 0, $pIdxCons = 0, $pIdxInfo = 0, $pIdxOrderBy = 0, $pTerm = 0, $pUsage = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer = sp; + $0 = sp + 64|0; + $1 = sp + 60|0; + $2 = sp + 56|0; + $3 = sp + 52|0; + $4 = sp + 48|0; + $i = sp + 44|0; + $j = sp + 40|0; + $nTerm = sp + 36|0; + $pIdxCons = sp + 68|0; + $pIdxOrderBy = sp + 24|0; + $pUsage = sp + 20|0; + $pTerm = sp + 16|0; + $nOrderBy = sp + 12|0; + $pIdxInfo = sp + 8|0; + $n = sp + 4|0; + $pExpr = sp + 28|0; + $op = sp + 72|0; + $pExpr1 = sp + 32|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pWC; + HEAP32[$3>>2] = $pSrc; + HEAP32[$4>>2] = $pOrderBy; + HEAP32[$nTerm>>2] = 0; + HEAP32[$i>>2] = 0; + $5 = HEAP32[$2>>2]|0; + $6 = (($5) + 20|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pTerm>>2] = $7; + while(1) { + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($8|0)<($11|0); + if (!($12)) { + break; + } + $13 = HEAP32[$pTerm>>2]|0; + $14 = (($13) + 8|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$3>>2]|0; + $17 = (($16) + 40|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($15|0)!=($18|0); + if (!($19)) { + $20 = HEAP32[$pTerm>>2]|0; + $21 = (($20) + 18|0); + $22 = HEAP16[$21>>1]|0; + $23 = $22&65535; + $24 = $23 & -1153; + $25 = ($24|0)==(0); + if (!($25)) { + $26 = HEAP32[$pTerm>>2]|0; + $27 = (($26) + 20|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = $29 & 0; + $31 = ($30|0)!=(0); + if (!($31)) { + $32 = HEAP32[$nTerm>>2]|0; + $33 = (($32) + 1)|0; + HEAP32[$nTerm>>2] = $33; + } + } + } + $34 = HEAP32[$i>>2]|0; + $35 = (($34) + 1)|0; + HEAP32[$i>>2] = $35; + $36 = HEAP32[$pTerm>>2]|0; + $37 = (($36) + 48|0); + HEAP32[$pTerm>>2] = $37; + } + HEAP32[$nOrderBy>>2] = 0; + $38 = HEAP32[$4>>2]|0; + $39 = ($38|0)!=(0|0); + if ($39) { + $40 = HEAP32[$4>>2]|0; + $41 = HEAP32[$40>>2]|0; + HEAP32[$n>>2] = $41; + HEAP32[$i>>2] = 0; + while(1) { + $42 = HEAP32[$i>>2]|0; + $43 = HEAP32[$n>>2]|0; + $44 = ($42|0)<($43|0); + if (!($44)) { + break; + } + $45 = HEAP32[$i>>2]|0; + $46 = HEAP32[$4>>2]|0; + $47 = (($46) + 4|0); + $48 = HEAP32[$47>>2]|0; + $49 = (($48) + (($45*20)|0)|0); + $50 = HEAP32[$49>>2]|0; + HEAP32[$pExpr>>2] = $50; + $51 = HEAP32[$pExpr>>2]|0; + $52 = HEAP8[$51>>0]|0; + $53 = $52&255; + $54 = ($53|0)!=(154); + if ($54) { + break; + } + $55 = HEAP32[$pExpr>>2]|0; + $56 = (($55) + 28|0); + $57 = HEAP32[$56>>2]|0; + $58 = HEAP32[$3>>2]|0; + $59 = (($58) + 40|0); + $60 = HEAP32[$59>>2]|0; + $61 = ($57|0)!=($60|0); + if ($61) { + break; + } + $62 = HEAP32[$i>>2]|0; + $63 = (($62) + 1)|0; + HEAP32[$i>>2] = $63; + } + $64 = HEAP32[$i>>2]|0; + $65 = HEAP32[$n>>2]|0; + $66 = ($64|0)==($65|0); + if ($66) { + $67 = HEAP32[$n>>2]|0; + HEAP32[$nOrderBy>>2] = $67; + } + } + $68 = HEAP32[$1>>2]|0; + $69 = HEAP32[$68>>2]|0; + $70 = HEAP32[$nTerm>>2]|0; + $71 = ($70*20)|0; + $72 = (56 + ($71))|0; + $73 = HEAP32[$nOrderBy>>2]|0; + $74 = $73<<3; + $75 = (($72) + ($74))|0; + $76 = (_sqlite3DbMallocZero($69,$75)|0); + HEAP32[$pIdxInfo>>2] = $76; + $77 = HEAP32[$pIdxInfo>>2]|0; + $78 = ($77|0)==(0|0); + if ($78) { + $79 = HEAP32[$1>>2]|0; + _sqlite3ErrorMsg($79,9112,$vararg_buffer); + HEAP32[$0>>2] = 0; + $191 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($191|0); + } + $80 = HEAP32[$pIdxInfo>>2]|0; + $81 = (($80) + 56|0); + HEAP32[$pIdxCons>>2] = $81; + $82 = HEAP32[$nTerm>>2]|0; + $83 = HEAP32[$pIdxCons>>2]|0; + $84 = (($83) + (($82*12)|0)|0); + HEAP32[$pIdxOrderBy>>2] = $84; + $85 = HEAP32[$nOrderBy>>2]|0; + $86 = HEAP32[$pIdxOrderBy>>2]|0; + $87 = (($86) + ($85<<3)|0); + HEAP32[$pUsage>>2] = $87; + $88 = HEAP32[$nTerm>>2]|0; + $89 = HEAP32[$pIdxInfo>>2]|0; + HEAP32[$89>>2] = $88; + $90 = HEAP32[$nOrderBy>>2]|0; + $91 = HEAP32[$pIdxInfo>>2]|0; + $92 = (($91) + 8|0); + HEAP32[$92>>2] = $90; + $93 = HEAP32[$pIdxCons>>2]|0; + $94 = HEAP32[$pIdxInfo>>2]|0; + $95 = (($94) + 4|0); + HEAP32[$95>>2] = $93; + $96 = HEAP32[$pIdxOrderBy>>2]|0; + $97 = HEAP32[$pIdxInfo>>2]|0; + $98 = (($97) + 12|0); + HEAP32[$98>>2] = $96; + $99 = HEAP32[$pUsage>>2]|0; + $100 = HEAP32[$pIdxInfo>>2]|0; + $101 = (($100) + 16|0); + HEAP32[$101>>2] = $99; + HEAP32[$j>>2] = 0; + HEAP32[$i>>2] = 0; + $102 = HEAP32[$2>>2]|0; + $103 = (($102) + 20|0); + $104 = HEAP32[$103>>2]|0; + HEAP32[$pTerm>>2] = $104; + while(1) { + $105 = HEAP32[$i>>2]|0; + $106 = HEAP32[$2>>2]|0; + $107 = (($106) + 12|0); + $108 = HEAP32[$107>>2]|0; + $109 = ($105|0)<($108|0); + if (!($109)) { + break; + } + $110 = HEAP32[$pTerm>>2]|0; + $111 = (($110) + 8|0); + $112 = HEAP32[$111>>2]|0; + $113 = HEAP32[$3>>2]|0; + $114 = (($113) + 40|0); + $115 = HEAP32[$114>>2]|0; + $116 = ($112|0)!=($115|0); + if (!($116)) { + $117 = HEAP32[$pTerm>>2]|0; + $118 = (($117) + 18|0); + $119 = HEAP16[$118>>1]|0; + $120 = $119&65535; + $121 = $120 & -1153; + $122 = ($121|0)==(0); + if (!($122)) { + $123 = HEAP32[$pTerm>>2]|0; + $124 = (($123) + 20|0); + $125 = HEAP8[$124>>0]|0; + $126 = $125&255; + $127 = $126 & 0; + $128 = ($127|0)!=(0); + if (!($128)) { + $129 = HEAP32[$pTerm>>2]|0; + $130 = (($129) + 12|0); + $131 = HEAP32[$130>>2]|0; + $132 = HEAP32[$j>>2]|0; + $133 = HEAP32[$pIdxCons>>2]|0; + $134 = (($133) + (($132*12)|0)|0); + HEAP32[$134>>2] = $131; + $135 = HEAP32[$i>>2]|0; + $136 = HEAP32[$j>>2]|0; + $137 = HEAP32[$pIdxCons>>2]|0; + $138 = (($137) + (($136*12)|0)|0); + $139 = (($138) + 8|0); + HEAP32[$139>>2] = $135; + $140 = HEAP32[$pTerm>>2]|0; + $141 = (($140) + 18|0); + $142 = HEAP16[$141>>1]|0; + $143 = $142&255; + $144 = $143&255; + $145 = $144 & 4095; + $146 = $145&255; + HEAP8[$op>>0] = $146; + $147 = HEAP8[$op>>0]|0; + $148 = $147&255; + $149 = ($148|0)==(1); + $$ = $149 ? 2 : $146; + HEAP8[$op>>0] = $$; + $150 = HEAP8[$op>>0]|0; + $151 = HEAP32[$j>>2]|0; + $152 = HEAP32[$pIdxCons>>2]|0; + $153 = (($152) + (($151*12)|0)|0); + $154 = (($153) + 4|0); + HEAP8[$154>>0] = $150; + $155 = HEAP32[$j>>2]|0; + $156 = (($155) + 1)|0; + HEAP32[$j>>2] = $156; + } + } + } + $157 = HEAP32[$i>>2]|0; + $158 = (($157) + 1)|0; + HEAP32[$i>>2] = $158; + $159 = HEAP32[$pTerm>>2]|0; + $160 = (($159) + 48|0); + HEAP32[$pTerm>>2] = $160; + } + HEAP32[$i>>2] = 0; + while(1) { + $161 = HEAP32[$i>>2]|0; + $162 = HEAP32[$nOrderBy>>2]|0; + $163 = ($161|0)<($162|0); + if (!($163)) { + break; + } + $164 = HEAP32[$i>>2]|0; + $165 = HEAP32[$4>>2]|0; + $166 = (($165) + 4|0); + $167 = HEAP32[$166>>2]|0; + $168 = (($167) + (($164*20)|0)|0); + $169 = HEAP32[$168>>2]|0; + HEAP32[$pExpr1>>2] = $169; + $170 = HEAP32[$pExpr1>>2]|0; + $171 = (($170) + 32|0); + $172 = HEAP16[$171>>1]|0; + $173 = $172 << 16 >> 16; + $174 = HEAP32[$i>>2]|0; + $175 = HEAP32[$pIdxOrderBy>>2]|0; + $176 = (($175) + ($174<<3)|0); + HEAP32[$176>>2] = $173; + $177 = HEAP32[$i>>2]|0; + $178 = HEAP32[$4>>2]|0; + $179 = (($178) + 4|0); + $180 = HEAP32[$179>>2]|0; + $181 = (($180) + (($177*20)|0)|0); + $182 = (($181) + 12|0); + $183 = HEAP8[$182>>0]|0; + $184 = HEAP32[$i>>2]|0; + $185 = HEAP32[$pIdxOrderBy>>2]|0; + $186 = (($185) + ($184<<3)|0); + $187 = (($186) + 4|0); + HEAP8[$187>>0] = $183; + $188 = HEAP32[$i>>2]|0; + $189 = (($188) + 1)|0; + HEAP32[$i>>2] = $189; + } + $190 = HEAP32[$pIdxInfo>>2]|0; + HEAP32[$0>>2] = $190; + $191 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($191|0); +} +function _vtabBestIndex($pParse,$pTab,$p) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pVtab = 0, $rc = 0, $vararg_buffer4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer4 = sp; + $0 = sp + 24|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $pVtab = sp + 12|0; + $i = sp + 16|0; + $rc = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $p; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (_sqlite3GetVTable($4,$5)|0); + $7 = (($6) + 8|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pVtab>>2] = $8; + $9 = HEAP32[$pVtab>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + 12|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$pVtab>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (FUNCTION_TABLE_iii[$12 & 127]($13,$14)|0); + HEAP32[$rc>>2] = $15; + $16 = HEAP32[$rc>>2]|0; + $17 = ($16|0)!=(0); + do { + if ($17) { + $18 = HEAP32[$rc>>2]|0; + $19 = ($18|0)==(7); + if ($19) { + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + 64|0); + HEAP8[$22>>0] = 1; + break; + } + $23 = HEAP32[$pVtab>>2]|0; + $24 = (($23) + 8|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)!=(0|0); + $27 = HEAP32[$0>>2]|0; + if ($26) { + $30 = HEAP32[$pVtab>>2]|0; + $31 = (($30) + 8|0); + $32 = HEAP32[$31>>2]|0; + HEAP32[$vararg_buffer4>>2] = $32; + _sqlite3ErrorMsg($27,1768,$vararg_buffer4); + break; + } else { + $28 = HEAP32[$rc>>2]|0; + $29 = (_sqlite3ErrStr($28)|0); + HEAP32[$vararg_buffer4>>2] = $29; + _sqlite3ErrorMsg($27,1768,$vararg_buffer4); + break; + } + } + } while(0); + $33 = HEAP32[$pVtab>>2]|0; + $34 = (($33) + 8|0); + $35 = HEAP32[$34>>2]|0; + _sqlite3_free($35); + $36 = HEAP32[$pVtab>>2]|0; + $37 = (($36) + 8|0); + HEAP32[$37>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $38 = HEAP32[$i>>2]|0; + $39 = HEAP32[$2>>2]|0; + $40 = HEAP32[$39>>2]|0; + $41 = ($38|0)<($40|0); + if (!($41)) { + break; + } + $42 = HEAP32[$i>>2]|0; + $43 = HEAP32[$2>>2]|0; + $44 = (($43) + 4|0); + $45 = HEAP32[$44>>2]|0; + $46 = (($45) + (($42*12)|0)|0); + $47 = (($46) + 5|0); + $48 = HEAP8[$47>>0]|0; + $49 = ($48<<24>>24)!=(0); + if (!($49)) { + $50 = HEAP32[$i>>2]|0; + $51 = HEAP32[$2>>2]|0; + $52 = (($51) + 16|0); + $53 = HEAP32[$52>>2]|0; + $54 = (($53) + ($50<<3)|0); + $55 = HEAP32[$54>>2]|0; + $56 = ($55|0)>(0); + if ($56) { + $57 = HEAP32[$0>>2]|0; + $58 = HEAP32[$1>>2]|0; + $59 = HEAP32[$58>>2]|0; + HEAP32[$vararg_buffer4>>2] = $59; + _sqlite3ErrorMsg($57,30576,$vararg_buffer4); + } + } + $60 = HEAP32[$i>>2]|0; + $61 = (($60) + 1)|0; + HEAP32[$i>>2] = $61; + } + $62 = HEAP32[$0>>2]|0; + $63 = (($62) + 64|0); + $64 = HEAP32[$63>>2]|0; + STACKTOP = sp;return ($64|0); +} +function _sqlite3LogEstFromDouble($x) { + $x = +$x; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0.0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0.0, $5 = 0, $6 = 0.0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $e = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 18|0; + $1 = sp; + $a = sp + 8|0; + $e = sp + 16|0; + HEAPF64[$1>>3] = $x; + $2 = +HEAPF64[$1>>3]; + $3 = $2 <= 1.0; + if ($3) { + HEAP16[$0>>1] = 0; + $25 = HEAP16[$0>>1]|0; + STACKTOP = sp;return ($25|0); + } + $4 = +HEAPF64[$1>>3]; + $5 = $4 <= 2.0E+9; + if ($5) { + $6 = +HEAPF64[$1>>3]; + $7 = (~~$6)>>>0; + $8 = +Math_abs($6) >= 1.0 ? $6 > 0.0 ? (Math_min(+Math_floor($6 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($6 - +(~~$6 >>> 0)) / 4294967296.0) >>> 0 : 0; + $9 = (_sqlite3LogEst($7,$8)|0); + HEAP16[$0>>1] = $9; + $25 = HEAP16[$0>>1]|0; + STACKTOP = sp;return ($25|0); + } else { + ;HEAP32[$a+0>>2]=HEAP32[$1+0>>2]|0;HEAP32[$a+4>>2]=HEAP32[$1+4>>2]|0; + $10 = $a; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (($10) + 4)|0; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (_bitshift64Lshr(($12|0),($15|0),52)|0); + $17 = tempRet0; + $18 = (_i64Subtract(($16|0),($17|0),1022,0)|0); + $19 = tempRet0; + $20 = $18&65535; + HEAP16[$e>>1] = $20; + $21 = HEAP16[$e>>1]|0; + $22 = $21 << 16 >> 16; + $23 = ($22*10)|0; + $24 = $23&65535; + HEAP16[$0>>1] = $24; + $25 = HEAP16[$0>>1]|0; + STACKTOP = sp;return ($25|0); + } + return 0|0; +} +function _findIndexCol($pParse,$pList,$iBase,$pIdx,$iCol) { + $pParse = $pParse|0; + $pList = $pList|0; + $iBase = $iBase|0; + $pIdx = $pIdx|0; + $iCol = $iCol|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, $pColl = 0, $zColl = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 20|0; + $5 = sp + 16|0; + $i = sp + 8|0; + $zColl = sp + 4|0; + $p = sp; + $pColl = sp + 12|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pList; + HEAP32[$3>>2] = $iBase; + HEAP32[$4>>2] = $pIdx; + HEAP32[$5>>2] = $iCol; + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$4>>2]|0; + $8 = (($7) + 32|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + ($6<<2)|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$zColl>>2] = $11; + HEAP32[$i>>2] = 0; + while(1) { + $12 = HEAP32[$i>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = ($12|0)<($14|0); + if (!($15)) { + label = 10; + break; + } + $16 = HEAP32[$i>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + (($16*20)|0)|0); + $21 = HEAP32[$20>>2]|0; + $22 = (_sqlite3ExprSkipCollate($21)|0); + HEAP32[$p>>2] = $22; + $23 = HEAP32[$p>>2]|0; + $24 = HEAP8[$23>>0]|0; + $25 = $24&255; + $26 = ($25|0)==(154); + if ($26) { + $27 = HEAP32[$p>>2]|0; + $28 = (($27) + 32|0); + $29 = HEAP16[$28>>1]|0; + $30 = $29 << 16 >> 16; + $31 = HEAP32[$5>>2]|0; + $32 = HEAP32[$4>>2]|0; + $33 = (($32) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = (($34) + ($31<<1)|0); + $36 = HEAP16[$35>>1]|0; + $37 = $36 << 16 >> 16; + $38 = ($30|0)==($37|0); + if ($38) { + $39 = HEAP32[$p>>2]|0; + $40 = (($39) + 28|0); + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$3>>2]|0; + $43 = ($41|0)==($42|0); + if ($43) { + $44 = HEAP32[$1>>2]|0; + $45 = HEAP32[$i>>2]|0; + $46 = HEAP32[$2>>2]|0; + $47 = (($46) + 4|0); + $48 = HEAP32[$47>>2]|0; + $49 = (($48) + (($45*20)|0)|0); + $50 = HEAP32[$49>>2]|0; + $51 = (_sqlite3ExprCollSeq($44,$50)|0); + HEAP32[$pColl>>2] = $51; + $52 = HEAP32[$pColl>>2]|0; + $53 = ($52|0)!=(0|0); + if ($53) { + $54 = HEAP32[$pColl>>2]|0; + $55 = HEAP32[$54>>2]|0; + $56 = HEAP32[$zColl>>2]|0; + $57 = (_sqlite3_stricmp($55,$56)|0); + $58 = (0)==($57|0); + if ($58) { + label = 8; + break; + } + } + } + } + } + $60 = HEAP32[$i>>2]|0; + $61 = (($60) + 1)|0; + HEAP32[$i>>2] = $61; + } + if ((label|0) == 8) { + $59 = HEAP32[$i>>2]|0; + HEAP32[$0>>2] = $59; + $62 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($62|0); + } + else if ((label|0) == 10) { + HEAP32[$0>>2] = -1; + $62 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($62|0); + } + return 0|0; +} +function _exprAnalyze($pSrc,$pWC,$idxTerm) { + $pSrc = $pSrc|0; + $pWC = $pWC|0; + $idxTerm = $idxTerm|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; + var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0; + var $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0; + var $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0; + var $657 = 0, $658 = 0, $659 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $c = 0, $db = 0, $eExtraOp = 0, $extraRight = 0, $i = 0, $idxNew = 0, $idxNew1 = 0, $idxNew13 = 0, $idxNew2 = 0, $idxNew4 = 0, $isComplete = 0, $noCase = 0, $op = 0, $opMask = 0, $pC = 0, $pDup = 0, $pExpr = 0, $pLeft = 0, $pLeft2 = 0, $pLeft6 = 0; + var $pList = 0, $pMaskSet = 0, $pNew = 0, $pNewExpr = 0, $pNewExpr1 = 0, $pNewExpr2 = 0, $pNewExpr7 = 0, $pNewTerm = 0, $pParse = 0, $pRight = 0, $pRight5 = 0, $pStr1 = 0, $pStr2 = 0, $pTerm = 0, $pWInfo = 0, $prereqAll = 0, $prereqColumn = 0, $prereqExpr = 0, $prereqLeft = 0, $sCollSeqName = 0; + var $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 208|0; + $0 = sp + 84|0; + $1 = sp + 188|0; + $2 = sp + 156|0; + $pWInfo = sp + 136|0; + $pTerm = sp + 140|0; + $pMaskSet = sp + 144|0; + $pExpr = sp + 148|0; + $prereqLeft = sp + 32|0; + $prereqAll = sp + 24|0; + $extraRight = sp + 40|0; + $pStr1 = sp + 152|0; + $isComplete = sp + 160|0; + $noCase = sp + 164|0; + $op = sp + 168|0; + $pParse = sp + 172|0; + $db = sp + 176|0; + $x = sp + 16|0; + $pLeft = sp + 180|0; + $pRight = sp + 184|0; + $opMask = sp + 192|0; + $pNew = sp + 132|0; + $pDup = sp + 128|0; + $eExtraOp = sp + 194|0; + $idxNew = sp + 88|0; + $pList = sp + 92|0; + $i = sp + 80|0; + $pNewExpr = sp + 76|0; + $idxNew1 = sp + 60|0; + $pLeft2 = sp + 56|0; + $pStr2 = sp + 52|0; + $pNewExpr1 = sp + 68|0; + $pNewExpr2 = sp + 64|0; + $idxNew13 = sp + 72|0; + $idxNew2 = sp + 48|0; + $sCollSeqName = sp + 96|0; + $c = sp + 196|0; + $pC = sp + 104|0; + $idxNew4 = sp + 108|0; + $pRight5 = sp + 112|0; + $pLeft6 = sp + 116|0; + $pNewTerm = sp + 120|0; + $prereqColumn = sp + 8|0; + $prereqExpr = sp; + $pNewExpr7 = sp + 124|0; + HEAP32[$0>>2] = $pSrc; + HEAP32[$1>>2] = $pWC; + HEAP32[$2>>2] = $idxTerm; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$pWInfo>>2] = $4; + $5 = $extraRight; + $6 = $5; + HEAP32[$6>>2] = 0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = 0; + HEAP32[$pStr1>>2] = 0; + HEAP32[$isComplete>>2] = 0; + HEAP32[$noCase>>2] = 0; + $9 = HEAP32[$pWInfo>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$pParse>>2] = $10; + $11 = HEAP32[$pParse>>2]|0; + $12 = HEAP32[$11>>2]|0; + HEAP32[$db>>2] = $12; + $13 = HEAP32[$db>>2]|0; + $14 = (($13) + 64|0); + $15 = HEAP8[$14>>0]|0; + $16 = ($15<<24>>24)!=(0); + if ($16) { + STACKTOP = sp;return; + } + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 20|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + (($17*48)|0)|0); + HEAP32[$pTerm>>2] = $21; + $22 = HEAP32[$pWInfo>>2]|0; + $23 = (($22) + 68|0); + HEAP32[$pMaskSet>>2] = $23; + $24 = HEAP32[$pTerm>>2]|0; + $25 = HEAP32[$24>>2]|0; + HEAP32[$pExpr>>2] = $25; + $26 = HEAP32[$pMaskSet>>2]|0; + $27 = HEAP32[$pExpr>>2]|0; + $28 = (($27) + 12|0); + $29 = HEAP32[$28>>2]|0; + $30 = (_exprTableUsage($26,$29)|0); + $31 = tempRet0; + $32 = $prereqLeft; + $33 = $32; + HEAP32[$33>>2] = $30; + $34 = (($32) + 4)|0; + $35 = $34; + HEAP32[$35>>2] = $31; + $36 = HEAP32[$pExpr>>2]|0; + $37 = HEAP8[$36>>0]|0; + $38 = $37&255; + HEAP32[$op>>2] = $38; + $39 = HEAP32[$op>>2]|0; + $40 = ($39|0)==(75); + do { + if ($40) { + $41 = HEAP32[$pExpr>>2]|0; + $42 = (($41) + 4|0); + $43 = HEAP32[$42>>2]|0; + $44 = $43 & 2048; + $45 = ($44|0)!=(0); + $46 = HEAP32[$pMaskSet>>2]|0; + $47 = HEAP32[$pExpr>>2]|0; + $48 = (($47) + 20|0); + if ($45) { + $49 = HEAP32[$48>>2]|0; + $50 = (_exprSelectTableUsage($46,$49)|0); + $51 = tempRet0; + $52 = HEAP32[$pTerm>>2]|0; + $53 = (($52) + 32|0); + $54 = $53; + $55 = $54; + HEAP32[$55>>2] = $50; + $56 = (($54) + 4)|0; + $57 = $56; + HEAP32[$57>>2] = $51; + break; + } else { + $58 = HEAP32[$48>>2]|0; + $59 = (_exprListTableUsage($46,$58)|0); + $60 = tempRet0; + $61 = HEAP32[$pTerm>>2]|0; + $62 = (($61) + 32|0); + $63 = $62; + $64 = $63; + HEAP32[$64>>2] = $59; + $65 = (($63) + 4)|0; + $66 = $65; + HEAP32[$66>>2] = $60; + break; + } + } else { + $67 = HEAP32[$op>>2]|0; + $68 = ($67|0)==(76); + if ($68) { + $69 = HEAP32[$pTerm>>2]|0; + $70 = (($69) + 32|0); + $71 = $70; + $72 = $71; + HEAP32[$72>>2] = 0; + $73 = (($71) + 4)|0; + $74 = $73; + HEAP32[$74>>2] = 0; + break; + } else { + $75 = HEAP32[$pMaskSet>>2]|0; + $76 = HEAP32[$pExpr>>2]|0; + $77 = (($76) + 16|0); + $78 = HEAP32[$77>>2]|0; + $79 = (_exprTableUsage($75,$78)|0); + $80 = tempRet0; + $81 = HEAP32[$pTerm>>2]|0; + $82 = (($81) + 32|0); + $83 = $82; + $84 = $83; + HEAP32[$84>>2] = $79; + $85 = (($83) + 4)|0; + $86 = $85; + HEAP32[$86>>2] = $80; + break; + } + } + } while(0); + $87 = HEAP32[$pMaskSet>>2]|0; + $88 = HEAP32[$pExpr>>2]|0; + $89 = (_exprTableUsage($87,$88)|0); + $90 = tempRet0; + $91 = $prereqAll; + $92 = $91; + HEAP32[$92>>2] = $89; + $93 = (($91) + 4)|0; + $94 = $93; + HEAP32[$94>>2] = $90; + $95 = HEAP32[$pExpr>>2]|0; + $96 = (($95) + 4|0); + $97 = HEAP32[$96>>2]|0; + $98 = $97 & 1; + $99 = ($98|0)!=(0); + if ($99) { + $100 = HEAP32[$pMaskSet>>2]|0; + $101 = HEAP32[$pExpr>>2]|0; + $102 = (($101) + 36|0); + $103 = HEAP16[$102>>1]|0; + $104 = $103 << 16 >> 16; + $105 = (_getMask($100,$104)|0); + $106 = tempRet0; + $107 = $x; + $108 = $107; + HEAP32[$108>>2] = $105; + $109 = (($107) + 4)|0; + $110 = $109; + HEAP32[$110>>2] = $106; + $111 = $x; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = (($111) + 4)|0; + $115 = $114; + $116 = HEAP32[$115>>2]|0; + $117 = $prereqAll; + $118 = $117; + $119 = HEAP32[$118>>2]|0; + $120 = (($117) + 4)|0; + $121 = $120; + $122 = HEAP32[$121>>2]|0; + $123 = $119 | $113; + $124 = $122 | $116; + $125 = $prereqAll; + $126 = $125; + HEAP32[$126>>2] = $123; + $127 = (($125) + 4)|0; + $128 = $127; + HEAP32[$128>>2] = $124; + $129 = $x; + $130 = $129; + $131 = HEAP32[$130>>2]|0; + $132 = (($129) + 4)|0; + $133 = $132; + $134 = HEAP32[$133>>2]|0; + $135 = (_i64Subtract(($131|0),($134|0),1,0)|0); + $136 = tempRet0; + $137 = $extraRight; + $138 = $137; + HEAP32[$138>>2] = $135; + $139 = (($137) + 4)|0; + $140 = $139; + HEAP32[$140>>2] = $136; + } + $141 = $prereqAll; + $142 = $141; + $143 = HEAP32[$142>>2]|0; + $144 = (($141) + 4)|0; + $145 = $144; + $146 = HEAP32[$145>>2]|0; + $147 = HEAP32[$pTerm>>2]|0; + $148 = (($147) + 40|0); + $149 = $148; + $150 = $149; + HEAP32[$150>>2] = $143; + $151 = (($149) + 4)|0; + $152 = $151; + HEAP32[$152>>2] = $146; + $153 = HEAP32[$pTerm>>2]|0; + $154 = (($153) + 8|0); + HEAP32[$154>>2] = -1; + $155 = HEAP32[$pTerm>>2]|0; + $156 = (($155) + 4|0); + HEAP32[$156>>2] = -1; + $157 = HEAP32[$pTerm>>2]|0; + $158 = (($157) + 18|0); + HEAP16[$158>>1] = 0; + $159 = HEAP32[$op>>2]|0; + $160 = (_allowedOp($159)|0); + $161 = ($160|0)!=(0); + $162 = HEAP32[$pExpr>>2]|0; + do { + if ($161) { + $163 = (($162) + 12|0); + $164 = HEAP32[$163>>2]|0; + $165 = (_sqlite3ExprSkipCollate($164)|0); + HEAP32[$pLeft>>2] = $165; + $166 = HEAP32[$pExpr>>2]|0; + $167 = (($166) + 16|0); + $168 = HEAP32[$167>>2]|0; + $169 = (_sqlite3ExprSkipCollate($168)|0); + HEAP32[$pRight>>2] = $169; + $170 = HEAP32[$pTerm>>2]|0; + $171 = (($170) + 32|0); + $172 = $171; + $173 = $172; + $174 = HEAP32[$173>>2]|0; + $175 = (($172) + 4)|0; + $176 = $175; + $177 = HEAP32[$176>>2]|0; + $178 = $prereqLeft; + $179 = $178; + $180 = HEAP32[$179>>2]|0; + $181 = (($178) + 4)|0; + $182 = $181; + $183 = HEAP32[$182>>2]|0; + $184 = $174 & $180; + $185 = $177 & $183; + $186 = ($184|0)==(0); + $187 = ($185|0)==(0); + $188 = $186 & $187; + $189 = $188 ? 4095 : 1024; + $190 = $189&65535; + HEAP16[$opMask>>1] = $190; + $191 = HEAP32[$pLeft>>2]|0; + $192 = HEAP8[$191>>0]|0; + $193 = $192&255; + $194 = ($193|0)==(154); + if ($194) { + $195 = HEAP32[$pLeft>>2]|0; + $196 = (($195) + 28|0); + $197 = HEAP32[$196>>2]|0; + $198 = HEAP32[$pTerm>>2]|0; + $199 = (($198) + 8|0); + HEAP32[$199>>2] = $197; + $200 = HEAP32[$pLeft>>2]|0; + $201 = (($200) + 32|0); + $202 = HEAP16[$201>>1]|0; + $203 = $202 << 16 >> 16; + $204 = HEAP32[$pTerm>>2]|0; + $205 = (($204) + 12|0); + HEAP32[$205>>2] = $203; + $206 = HEAP32[$op>>2]|0; + $207 = (_operatorMask($206)|0); + $208 = $207&65535; + $209 = HEAP16[$opMask>>1]|0; + $210 = $209&65535; + $211 = $208 & $210; + $212 = $211&65535; + $213 = HEAP32[$pTerm>>2]|0; + $214 = (($213) + 18|0); + HEAP16[$214>>1] = $212; + } + $215 = HEAP32[$pRight>>2]|0; + $216 = ($215|0)!=(0|0); + if ($216) { + $217 = HEAP32[$pRight>>2]|0; + $218 = HEAP8[$217>>0]|0; + $219 = $218&255; + $220 = ($219|0)==(154); + if ($220) { + HEAP16[$eExtraOp>>1] = 0; + $221 = HEAP32[$pTerm>>2]|0; + $222 = (($221) + 8|0); + $223 = HEAP32[$222>>2]|0; + $224 = ($223|0)>=(0); + if ($224) { + $225 = HEAP32[$db>>2]|0; + $226 = HEAP32[$pExpr>>2]|0; + $227 = (_sqlite3ExprDup($225,$226,0)|0); + HEAP32[$pDup>>2] = $227; + $228 = HEAP32[$db>>2]|0; + $229 = (($228) + 64|0); + $230 = HEAP8[$229>>0]|0; + $231 = ($230<<24>>24)!=(0); + if ($231) { + $232 = HEAP32[$db>>2]|0; + $233 = HEAP32[$pDup>>2]|0; + _sqlite3ExprDelete($232,$233); + STACKTOP = sp;return; + } + $234 = HEAP32[$1>>2]|0; + $235 = HEAP32[$pDup>>2]|0; + $236 = (_whereClauseInsert($234,$235,3)|0); + HEAP32[$idxNew>>2] = $236; + $237 = HEAP32[$idxNew>>2]|0; + $238 = ($237|0)==(0); + if ($238) { + STACKTOP = sp;return; + } + $239 = HEAP32[$idxNew>>2]|0; + $240 = HEAP32[$1>>2]|0; + $241 = (($240) + 20|0); + $242 = HEAP32[$241>>2]|0; + $243 = (($242) + (($239*48)|0)|0); + HEAP32[$pNew>>2] = $243; + $244 = HEAP32[$2>>2]|0; + $245 = HEAP32[$pNew>>2]|0; + $246 = (($245) + 4|0); + HEAP32[$246>>2] = $244; + $247 = HEAP32[$2>>2]|0; + $248 = HEAP32[$1>>2]|0; + $249 = (($248) + 20|0); + $250 = HEAP32[$249>>2]|0; + $251 = (($250) + (($247*48)|0)|0); + HEAP32[$pTerm>>2] = $251; + $252 = HEAP32[$pTerm>>2]|0; + $253 = (($252) + 21|0); + HEAP8[$253>>0] = 1; + $254 = HEAP32[$pTerm>>2]|0; + $255 = (($254) + 20|0); + $256 = HEAP8[$255>>0]|0; + $257 = $256&255; + $258 = $257 | 8; + $259 = $258&255; + HEAP8[$255>>0] = $259; + $260 = HEAP32[$pExpr>>2]|0; + $261 = HEAP8[$260>>0]|0; + $262 = $261&255; + $263 = ($262|0)==(79); + if ($263) { + $264 = HEAP32[$pExpr>>2]|0; + $265 = (($264) + 4|0); + $266 = HEAP32[$265>>2]|0; + $267 = $266 & 1; + $268 = ($267|0)!=(0); + if (!($268)) { + $269 = HEAP32[$db>>2]|0; + $270 = (($269) + 60|0); + $271 = HEAP16[$270>>1]|0; + $272 = $271&65535; + $273 = $272 & 512; + $274 = ($273|0)==(0); + if ($274) { + $275 = HEAP32[$pTerm>>2]|0; + $276 = (($275) + 18|0); + $277 = HEAP16[$276>>1]|0; + $278 = $277&65535; + $279 = $278 | 1024; + $280 = $279&65535; + HEAP16[$276>>1] = $280; + HEAP16[$eExtraOp>>1] = 1024; + } + } + } + } else { + $281 = HEAP32[$pExpr>>2]|0; + HEAP32[$pDup>>2] = $281; + $282 = HEAP32[$pTerm>>2]|0; + HEAP32[$pNew>>2] = $282; + } + $283 = HEAP32[$pParse>>2]|0; + $284 = HEAP32[$pDup>>2]|0; + _exprCommute($283,$284); + $285 = HEAP32[$pDup>>2]|0; + $286 = (($285) + 12|0); + $287 = HEAP32[$286>>2]|0; + $288 = (_sqlite3ExprSkipCollate($287)|0); + HEAP32[$pLeft>>2] = $288; + $289 = HEAP32[$pLeft>>2]|0; + $290 = (($289) + 28|0); + $291 = HEAP32[$290>>2]|0; + $292 = HEAP32[$pNew>>2]|0; + $293 = (($292) + 8|0); + HEAP32[$293>>2] = $291; + $294 = HEAP32[$pLeft>>2]|0; + $295 = (($294) + 32|0); + $296 = HEAP16[$295>>1]|0; + $297 = $296 << 16 >> 16; + $298 = HEAP32[$pNew>>2]|0; + $299 = (($298) + 12|0); + HEAP32[$299>>2] = $297; + $300 = $prereqLeft; + $301 = $300; + $302 = HEAP32[$301>>2]|0; + $303 = (($300) + 4)|0; + $304 = $303; + $305 = HEAP32[$304>>2]|0; + $306 = $extraRight; + $307 = $306; + $308 = HEAP32[$307>>2]|0; + $309 = (($306) + 4)|0; + $310 = $309; + $311 = HEAP32[$310>>2]|0; + $312 = $302 | $308; + $313 = $305 | $311; + $314 = HEAP32[$pNew>>2]|0; + $315 = (($314) + 32|0); + $316 = $315; + $317 = $316; + HEAP32[$317>>2] = $312; + $318 = (($316) + 4)|0; + $319 = $318; + HEAP32[$319>>2] = $313; + $320 = $prereqAll; + $321 = $320; + $322 = HEAP32[$321>>2]|0; + $323 = (($320) + 4)|0; + $324 = $323; + $325 = HEAP32[$324>>2]|0; + $326 = HEAP32[$pNew>>2]|0; + $327 = (($326) + 40|0); + $328 = $327; + $329 = $328; + HEAP32[$329>>2] = $322; + $330 = (($328) + 4)|0; + $331 = $330; + HEAP32[$331>>2] = $325; + $332 = HEAP32[$pDup>>2]|0; + $333 = HEAP8[$332>>0]|0; + $334 = $333&255; + $335 = (_operatorMask($334)|0); + $336 = $335&65535; + $337 = HEAP16[$eExtraOp>>1]|0; + $338 = $337&65535; + $339 = (($336) + ($338))|0; + $340 = HEAP16[$opMask>>1]|0; + $341 = $340&65535; + $342 = $339 & $341; + $343 = $342&65535; + $344 = HEAP32[$pNew>>2]|0; + $345 = (($344) + 18|0); + HEAP16[$345>>1] = $343; + } + } + } else { + $346 = HEAP8[$162>>0]|0; + $347 = $346&255; + $348 = ($347|0)==(74); + if ($348) { + $349 = HEAP32[$1>>2]|0; + $350 = (($349) + 8|0); + $351 = HEAP8[$350>>0]|0; + $352 = $351&255; + $353 = ($352|0)==(72); + if ($353) { + $354 = HEAP32[$pExpr>>2]|0; + $355 = (($354) + 20|0); + $356 = HEAP32[$355>>2]|0; + HEAP32[$pList>>2] = $356; + HEAP32[$i>>2] = 0; + while(1) { + $357 = HEAP32[$i>>2]|0; + $358 = ($357|0)<(2); + if (!($358)) { + break; + } + $359 = HEAP32[$pParse>>2]|0; + $360 = HEAP32[$i>>2]|0; + $361 = (30624 + ($360)|0); + $362 = HEAP8[$361>>0]|0; + $363 = $362&255; + $364 = HEAP32[$db>>2]|0; + $365 = HEAP32[$pExpr>>2]|0; + $366 = (($365) + 12|0); + $367 = HEAP32[$366>>2]|0; + $368 = (_sqlite3ExprDup($364,$367,0)|0); + $369 = HEAP32[$db>>2]|0; + $370 = HEAP32[$i>>2]|0; + $371 = HEAP32[$pList>>2]|0; + $372 = (($371) + 4|0); + $373 = HEAP32[$372>>2]|0; + $374 = (($373) + (($370*20)|0)|0); + $375 = HEAP32[$374>>2]|0; + $376 = (_sqlite3ExprDup($369,$375,0)|0); + $377 = (_sqlite3PExpr($359,$363,$368,$376,0)|0); + HEAP32[$pNewExpr>>2] = $377; + $378 = HEAP32[$pNewExpr>>2]|0; + $379 = HEAP32[$pExpr>>2]|0; + _transferJoinMarkings($378,$379); + $380 = HEAP32[$1>>2]|0; + $381 = HEAP32[$pNewExpr>>2]|0; + $382 = (_whereClauseInsert($380,$381,3)|0); + HEAP32[$idxNew1>>2] = $382; + $383 = HEAP32[$0>>2]|0; + $384 = HEAP32[$1>>2]|0; + $385 = HEAP32[$idxNew1>>2]|0; + _exprAnalyze($383,$384,$385); + $386 = HEAP32[$2>>2]|0; + $387 = HEAP32[$1>>2]|0; + $388 = (($387) + 20|0); + $389 = HEAP32[$388>>2]|0; + $390 = (($389) + (($386*48)|0)|0); + HEAP32[$pTerm>>2] = $390; + $391 = HEAP32[$2>>2]|0; + $392 = HEAP32[$idxNew1>>2]|0; + $393 = HEAP32[$1>>2]|0; + $394 = (($393) + 20|0); + $395 = HEAP32[$394>>2]|0; + $396 = (($395) + (($392*48)|0)|0); + $397 = (($396) + 4|0); + HEAP32[$397>>2] = $391; + $398 = HEAP32[$i>>2]|0; + $399 = (($398) + 1)|0; + HEAP32[$i>>2] = $399; + } + $400 = HEAP32[$pTerm>>2]|0; + $401 = (($400) + 21|0); + HEAP8[$401>>0] = 2; + break; + } + } + $402 = HEAP32[$pExpr>>2]|0; + $403 = HEAP8[$402>>0]|0; + $404 = $403&255; + $405 = ($404|0)==(71); + if ($405) { + $406 = HEAP32[$0>>2]|0; + $407 = HEAP32[$1>>2]|0; + $408 = HEAP32[$2>>2]|0; + _exprAnalyzeOrTerm($406,$407,$408); + $409 = HEAP32[$2>>2]|0; + $410 = HEAP32[$1>>2]|0; + $411 = (($410) + 20|0); + $412 = HEAP32[$411>>2]|0; + $413 = (($412) + (($409*48)|0)|0); + HEAP32[$pTerm>>2] = $413; + } + } + } while(0); + $414 = HEAP32[$1>>2]|0; + $415 = (($414) + 8|0); + $416 = HEAP8[$415>>0]|0; + $417 = $416&255; + $418 = ($417|0)==(72); + if ($418) { + $419 = HEAP32[$pParse>>2]|0; + $420 = HEAP32[$pExpr>>2]|0; + $421 = (_isLikeOrGlob($419,$420,$pStr1,$isComplete,$noCase)|0); + $422 = ($421|0)!=(0); + if ($422) { + $423 = HEAP32[$pExpr>>2]|0; + $424 = (($423) + 20|0); + $425 = HEAP32[$424>>2]|0; + $426 = (($425) + 4|0); + $427 = HEAP32[$426>>2]|0; + $428 = (($427) + 20|0); + $429 = HEAP32[$428>>2]|0; + HEAP32[$pLeft2>>2] = $429; + $430 = HEAP32[$db>>2]|0; + $431 = HEAP32[$pStr1>>2]|0; + $432 = (_sqlite3ExprDup($430,$431,0)|0); + HEAP32[$pStr2>>2] = $432; + $433 = HEAP32[$db>>2]|0; + $434 = (($433) + 64|0); + $435 = HEAP8[$434>>0]|0; + $436 = ($435<<24>>24)!=(0); + if (!($436)) { + $437 = HEAP32[$pStr2>>2]|0; + $438 = (($437) + 8|0); + $439 = HEAP32[$438>>2]|0; + $440 = (_sqlite3Strlen30($439)|0); + $441 = (($440) - 1)|0; + $442 = HEAP32[$pStr2>>2]|0; + $443 = (($442) + 8|0); + $444 = HEAP32[$443>>2]|0; + $445 = (($444) + ($441)|0); + HEAP32[$pC>>2] = $445; + $446 = HEAP32[$pC>>2]|0; + $447 = HEAP8[$446>>0]|0; + HEAP8[$c>>0] = $447; + $448 = HEAP32[$noCase>>2]|0; + $449 = ($448|0)!=(0); + if ($449) { + $450 = HEAP8[$c>>0]|0; + $451 = $450&255; + $452 = ($451|0)==(64); + if ($452) { + HEAP32[$isComplete>>2] = 0; + } + $453 = HEAP8[$c>>0]|0; + $454 = $453&255; + $455 = (784 + ($454)|0); + $456 = HEAP8[$455>>0]|0; + HEAP8[$c>>0] = $456; + } + $457 = HEAP8[$c>>0]|0; + $458 = $457&255; + $459 = (($458) + 1)|0; + $460 = $459&255; + $461 = HEAP32[$pC>>2]|0; + HEAP8[$461>>0] = $460; + } + $462 = HEAP32[$noCase>>2]|0; + $463 = ($462|0)!=(0); + $464 = $463 ? 3656 : 3640; + HEAP32[$sCollSeqName>>2] = $464; + $465 = (($sCollSeqName) + 4|0); + HEAP32[$465>>2] = 6; + $466 = HEAP32[$db>>2]|0; + $467 = HEAP32[$pLeft2>>2]|0; + $468 = (_sqlite3ExprDup($466,$467,0)|0); + HEAP32[$pNewExpr1>>2] = $468; + $469 = HEAP32[$pParse>>2]|0; + $470 = HEAP32[$pParse>>2]|0; + $471 = HEAP32[$pNewExpr1>>2]|0; + $472 = (_sqlite3ExprAddCollateToken($470,$471,$sCollSeqName)|0); + $473 = HEAP32[$pStr1>>2]|0; + $474 = (_sqlite3PExpr($469,83,$472,$473,0)|0); + HEAP32[$pNewExpr1>>2] = $474; + $475 = HEAP32[$pNewExpr1>>2]|0; + $476 = HEAP32[$pExpr>>2]|0; + _transferJoinMarkings($475,$476); + $477 = HEAP32[$1>>2]|0; + $478 = HEAP32[$pNewExpr1>>2]|0; + $479 = (_whereClauseInsert($477,$478,3)|0); + HEAP32[$idxNew13>>2] = $479; + $480 = HEAP32[$0>>2]|0; + $481 = HEAP32[$1>>2]|0; + $482 = HEAP32[$idxNew13>>2]|0; + _exprAnalyze($480,$481,$482); + $483 = HEAP32[$db>>2]|0; + $484 = HEAP32[$pLeft2>>2]|0; + $485 = (_sqlite3ExprDup($483,$484,0)|0); + HEAP32[$pNewExpr2>>2] = $485; + $486 = HEAP32[$pParse>>2]|0; + $487 = HEAP32[$pParse>>2]|0; + $488 = HEAP32[$pNewExpr2>>2]|0; + $489 = (_sqlite3ExprAddCollateToken($487,$488,$sCollSeqName)|0); + $490 = HEAP32[$pStr2>>2]|0; + $491 = (_sqlite3PExpr($486,82,$489,$490,0)|0); + HEAP32[$pNewExpr2>>2] = $491; + $492 = HEAP32[$pNewExpr2>>2]|0; + $493 = HEAP32[$pExpr>>2]|0; + _transferJoinMarkings($492,$493); + $494 = HEAP32[$1>>2]|0; + $495 = HEAP32[$pNewExpr2>>2]|0; + $496 = (_whereClauseInsert($494,$495,3)|0); + HEAP32[$idxNew2>>2] = $496; + $497 = HEAP32[$0>>2]|0; + $498 = HEAP32[$1>>2]|0; + $499 = HEAP32[$idxNew2>>2]|0; + _exprAnalyze($497,$498,$499); + $500 = HEAP32[$2>>2]|0; + $501 = HEAP32[$1>>2]|0; + $502 = (($501) + 20|0); + $503 = HEAP32[$502>>2]|0; + $504 = (($503) + (($500*48)|0)|0); + HEAP32[$pTerm>>2] = $504; + $505 = HEAP32[$isComplete>>2]|0; + $506 = ($505|0)!=(0); + if ($506) { + $507 = HEAP32[$2>>2]|0; + $508 = HEAP32[$idxNew13>>2]|0; + $509 = HEAP32[$1>>2]|0; + $510 = (($509) + 20|0); + $511 = HEAP32[$510>>2]|0; + $512 = (($511) + (($508*48)|0)|0); + $513 = (($512) + 4|0); + HEAP32[$513>>2] = $507; + $514 = HEAP32[$2>>2]|0; + $515 = HEAP32[$idxNew2>>2]|0; + $516 = HEAP32[$1>>2]|0; + $517 = (($516) + 20|0); + $518 = HEAP32[$517>>2]|0; + $519 = (($518) + (($515*48)|0)|0); + $520 = (($519) + 4|0); + HEAP32[$520>>2] = $514; + $521 = HEAP32[$pTerm>>2]|0; + $522 = (($521) + 21|0); + HEAP8[$522>>0] = 2; + } + } + } + $523 = HEAP32[$pExpr>>2]|0; + $524 = (_isMatchOfColumn($523)|0); + $525 = ($524|0)!=(0); + if ($525) { + $526 = HEAP32[$pExpr>>2]|0; + $527 = (($526) + 20|0); + $528 = HEAP32[$527>>2]|0; + $529 = (($528) + 4|0); + $530 = HEAP32[$529>>2]|0; + $531 = HEAP32[$530>>2]|0; + HEAP32[$pRight5>>2] = $531; + $532 = HEAP32[$pExpr>>2]|0; + $533 = (($532) + 20|0); + $534 = HEAP32[$533>>2]|0; + $535 = (($534) + 4|0); + $536 = HEAP32[$535>>2]|0; + $537 = (($536) + 20|0); + $538 = HEAP32[$537>>2]|0; + HEAP32[$pLeft6>>2] = $538; + $539 = HEAP32[$pMaskSet>>2]|0; + $540 = HEAP32[$pRight5>>2]|0; + $541 = (_exprTableUsage($539,$540)|0); + $542 = tempRet0; + $543 = $prereqExpr; + $544 = $543; + HEAP32[$544>>2] = $541; + $545 = (($543) + 4)|0; + $546 = $545; + HEAP32[$546>>2] = $542; + $547 = HEAP32[$pMaskSet>>2]|0; + $548 = HEAP32[$pLeft6>>2]|0; + $549 = (_exprTableUsage($547,$548)|0); + $550 = tempRet0; + $551 = $prereqColumn; + $552 = $551; + HEAP32[$552>>2] = $549; + $553 = (($551) + 4)|0; + $554 = $553; + HEAP32[$554>>2] = $550; + $555 = $prereqExpr; + $556 = $555; + $557 = HEAP32[$556>>2]|0; + $558 = (($555) + 4)|0; + $559 = $558; + $560 = HEAP32[$559>>2]|0; + $561 = $prereqColumn; + $562 = $561; + $563 = HEAP32[$562>>2]|0; + $564 = (($561) + 4)|0; + $565 = $564; + $566 = HEAP32[$565>>2]|0; + $567 = $557 & $563; + $568 = $560 & $566; + $569 = ($567|0)==(0); + $570 = ($568|0)==(0); + $571 = $569 & $570; + if ($571) { + $572 = HEAP32[$pParse>>2]|0; + $573 = HEAP32[$db>>2]|0; + $574 = HEAP32[$pRight5>>2]|0; + $575 = (_sqlite3ExprDup($573,$574,0)|0); + $576 = (_sqlite3PExpr($572,51,0,$575,0)|0); + HEAP32[$pNewExpr7>>2] = $576; + $577 = HEAP32[$1>>2]|0; + $578 = HEAP32[$pNewExpr7>>2]|0; + $579 = (_whereClauseInsert($577,$578,3)|0); + HEAP32[$idxNew4>>2] = $579; + $580 = HEAP32[$idxNew4>>2]|0; + $581 = HEAP32[$1>>2]|0; + $582 = (($581) + 20|0); + $583 = HEAP32[$582>>2]|0; + $584 = (($583) + (($580*48)|0)|0); + HEAP32[$pNewTerm>>2] = $584; + $585 = $prereqExpr; + $586 = $585; + $587 = HEAP32[$586>>2]|0; + $588 = (($585) + 4)|0; + $589 = $588; + $590 = HEAP32[$589>>2]|0; + $591 = HEAP32[$pNewTerm>>2]|0; + $592 = (($591) + 32|0); + $593 = $592; + $594 = $593; + HEAP32[$594>>2] = $587; + $595 = (($593) + 4)|0; + $596 = $595; + HEAP32[$596>>2] = $590; + $597 = HEAP32[$pLeft6>>2]|0; + $598 = (($597) + 28|0); + $599 = HEAP32[$598>>2]|0; + $600 = HEAP32[$pNewTerm>>2]|0; + $601 = (($600) + 8|0); + HEAP32[$601>>2] = $599; + $602 = HEAP32[$pLeft6>>2]|0; + $603 = (($602) + 32|0); + $604 = HEAP16[$603>>1]|0; + $605 = $604 << 16 >> 16; + $606 = HEAP32[$pNewTerm>>2]|0; + $607 = (($606) + 12|0); + HEAP32[$607>>2] = $605; + $608 = HEAP32[$pNewTerm>>2]|0; + $609 = (($608) + 18|0); + HEAP16[$609>>1] = 64; + $610 = HEAP32[$2>>2]|0; + $611 = HEAP32[$pNewTerm>>2]|0; + $612 = (($611) + 4|0); + HEAP32[$612>>2] = $610; + $613 = HEAP32[$2>>2]|0; + $614 = HEAP32[$1>>2]|0; + $615 = (($614) + 20|0); + $616 = HEAP32[$615>>2]|0; + $617 = (($616) + (($613*48)|0)|0); + HEAP32[$pTerm>>2] = $617; + $618 = HEAP32[$pTerm>>2]|0; + $619 = (($618) + 21|0); + HEAP8[$619>>0] = 1; + $620 = HEAP32[$pTerm>>2]|0; + $621 = (($620) + 20|0); + $622 = HEAP8[$621>>0]|0; + $623 = $622&255; + $624 = $623 | 8; + $625 = $624&255; + HEAP8[$621>>0] = $625; + $626 = HEAP32[$pTerm>>2]|0; + $627 = (($626) + 40|0); + $628 = $627; + $629 = $628; + $630 = HEAP32[$629>>2]|0; + $631 = (($628) + 4)|0; + $632 = $631; + $633 = HEAP32[$632>>2]|0; + $634 = HEAP32[$pNewTerm>>2]|0; + $635 = (($634) + 40|0); + $636 = $635; + $637 = $636; + HEAP32[$637>>2] = $630; + $638 = (($636) + 4)|0; + $639 = $638; + HEAP32[$639>>2] = $633; + } + } + $640 = $extraRight; + $641 = $640; + $642 = HEAP32[$641>>2]|0; + $643 = (($640) + 4)|0; + $644 = $643; + $645 = HEAP32[$644>>2]|0; + $646 = HEAP32[$pTerm>>2]|0; + $647 = (($646) + 32|0); + $648 = $647; + $649 = $648; + $650 = HEAP32[$649>>2]|0; + $651 = (($648) + 4)|0; + $652 = $651; + $653 = HEAP32[$652>>2]|0; + $654 = $650 | $642; + $655 = $653 | $645; + $656 = $647; + $657 = $656; + HEAP32[$657>>2] = $654; + $658 = (($656) + 4)|0; + $659 = $658; + HEAP32[$659>>2] = $655; + STACKTOP = sp;return; +} +function _allowedOp($op) { + $op = $op|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $op; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)==(75); + if ($2) { + $10 = 1; + } else { + $3 = HEAP32[$0>>2]|0; + $4 = ($3|0)>=(79); + $5 = HEAP32[$0>>2]|0; + $6 = ($5|0)<=(83); + $or$cond = $4 & $6; + if ($or$cond) { + $10 = 1; + } else { + $7 = HEAP32[$0>>2]|0; + $8 = ($7|0)==(76); + $10 = $8; + } + } + $9 = $10&1; + STACKTOP = sp;return ($9|0); +} +function _operatorMask($op) { + $op = $op|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $c = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + $c = sp + 4|0; + HEAP32[$0>>2] = $op; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)==(75); + do { + if ($2) { + HEAP16[$c>>1] = 1; + } else { + $3 = HEAP32[$0>>2]|0; + $4 = ($3|0)==(76); + if ($4) { + HEAP16[$c>>1] = 128; + break; + } else { + $5 = HEAP32[$0>>2]|0; + $6 = (($5) - 79)|0; + $7 = 2 << $6; + $8 = $7&65535; + HEAP16[$c>>1] = $8; + break; + } + } + } while(0); + $9 = HEAP16[$c>>1]|0; + STACKTOP = sp;return ($9|0); +} +function _whereClauseInsert($pWC,$p,$wtFlags) { + $pWC = $pWC|0; + $p = $p|0; + $wtFlags = $wtFlags|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $db = 0, $idx = 0, $pOld = 0, $pTerm = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 28|0; + $pTerm = sp + 12|0; + $idx = sp + 16|0; + $pOld = sp + 20|0; + $db = sp + 8|0; + HEAP32[$1>>2] = $pWC; + HEAP32[$2>>2] = $p; + HEAP8[$3>>0] = $wtFlags; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 12|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($6|0)>=($9|0); + do { + if ($10) { + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 20|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pOld>>2] = $13; + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$16>>2]|0; + HEAP32[$db>>2] = $17; + $18 = HEAP32[$db>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 16|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21*48)|0; + $23 = $22<<1; + $24 = (_sqlite3DbMallocRaw($18,$23)|0); + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 20|0); + HEAP32[$26>>2] = $24; + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 20|0); + $29 = HEAP32[$28>>2]|0; + $30 = ($29|0)==(0|0); + if (!($30)) { + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 20|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$pOld>>2]|0; + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 12|0); + $46 = HEAP32[$45>>2]|0; + $47 = ($46*48)|0; + _memcpy(($42|0),($43|0),($47|0))|0; + $48 = HEAP32[$pOld>>2]|0; + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 24|0); + $51 = ($48|0)!=($50|0); + if ($51) { + $52 = HEAP32[$db>>2]|0; + $53 = HEAP32[$pOld>>2]|0; + _sqlite3DbFree($52,$53); + } + $54 = HEAP32[$db>>2]|0; + $55 = HEAP32[$1>>2]|0; + $56 = (($55) + 20|0); + $57 = HEAP32[$56>>2]|0; + $58 = (_sqlite3DbMallocSize($54,$57)|0); + $59 = (($58>>>0) / 48)&-1; + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 16|0); + HEAP32[$61>>2] = $59; + break; + } + $31 = HEAP8[$3>>0]|0; + $32 = $31&255; + $33 = $32 & 1; + $34 = ($33|0)!=(0); + if ($34) { + $35 = HEAP32[$db>>2]|0; + $36 = HEAP32[$2>>2]|0; + _sqlite3ExprDelete($35,$36); + } + $37 = HEAP32[$pOld>>2]|0; + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 20|0); + HEAP32[$39>>2] = $37; + HEAP32[$0>>2] = 0; + $102 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($102|0); + } + } while(0); + $62 = HEAP32[$1>>2]|0; + $63 = (($62) + 12|0); + $64 = HEAP32[$63>>2]|0; + $65 = (($64) + 1)|0; + HEAP32[$63>>2] = $65; + HEAP32[$idx>>2] = $64; + $66 = HEAP32[$1>>2]|0; + $67 = (($66) + 20|0); + $68 = HEAP32[$67>>2]|0; + $69 = (($68) + (($64*48)|0)|0); + HEAP32[$pTerm>>2] = $69; + $70 = HEAP32[$2>>2]|0; + $71 = ($70|0)!=(0|0); + if ($71) { + $72 = HEAP32[$2>>2]|0; + $73 = (($72) + 4|0); + $74 = HEAP32[$73>>2]|0; + $75 = $74 & 262144; + $76 = ($75|0)!=(0); + if ($76) { + $77 = HEAP32[$2>>2]|0; + $78 = (($77) + 28|0); + $79 = HEAP32[$78>>2]|0; + $80 = ($79|0)<(0); + $81 = $80 << 31 >> 31; + $82 = (_sqlite3LogEst($79,$81)|0); + $83 = $82 << 16 >> 16; + $84 = (($83) - 99)|0; + $85 = $84&65535; + $86 = HEAP32[$pTerm>>2]|0; + $87 = (($86) + 16|0); + HEAP16[$87>>1] = $85; + } else { + label = 12; + } + } else { + label = 12; + } + if ((label|0) == 12) { + $88 = HEAP32[$pTerm>>2]|0; + $89 = (($88) + 16|0); + HEAP16[$89>>1] = 1; + } + $90 = HEAP32[$2>>2]|0; + $91 = (_sqlite3ExprSkipCollate($90)|0); + $92 = HEAP32[$pTerm>>2]|0; + HEAP32[$92>>2] = $91; + $93 = HEAP8[$3>>0]|0; + $94 = HEAP32[$pTerm>>2]|0; + $95 = (($94) + 20|0); + HEAP8[$95>>0] = $93; + $96 = HEAP32[$1>>2]|0; + $97 = HEAP32[$pTerm>>2]|0; + $98 = (($97) + 24|0); + HEAP32[$98>>2] = $96; + $99 = HEAP32[$pTerm>>2]|0; + $100 = (($99) + 4|0); + HEAP32[$100>>2] = -1; + $101 = HEAP32[$idx>>2]|0; + HEAP32[$0>>2] = $101; + $102 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($102|0); +} +function _exprCommute($pParse,$pExpr) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $expLeft = 0, $expRight = 0, $t = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $expRight = sp + 14|0; + $expLeft = sp + 12|0; + $t = sp + 4|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pExpr; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 16|0); + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + $7 = $6 & 256; + $8 = $7&65535; + HEAP16[$expRight>>1] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = $13 & 256; + $15 = $14&65535; + HEAP16[$expLeft>>1] = $15; + $16 = HEAP16[$expRight>>1]|0; + $17 = $16&65535; + $18 = HEAP16[$expLeft>>1]|0; + $19 = $18&65535; + $20 = ($17|0)==($19|0); + do { + if ($20) { + $21 = HEAP16[$expRight>>1]|0; + $22 = ($21<<16>>16)!=(0); + if ($22) { + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 16|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + 4|0); + $27 = HEAP32[$26>>2]|0; + $28 = $27 & -257; + HEAP32[$26>>2] = $28; + break; + } + $29 = HEAP32[$0>>2]|0; + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 12|0); + $32 = HEAP32[$31>>2]|0; + $33 = (_sqlite3ExprCollSeq($29,$32)|0); + $34 = ($33|0)!=(0|0); + if ($34) { + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 12|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + 4|0); + $39 = HEAP32[$38>>2]|0; + $40 = $39 | 256; + HEAP32[$38>>2] = $40; + } + } + } while(0); + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 16|0); + $43 = HEAP32[$42>>2]|0; + HEAP32[$t>>2] = $43; + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 12|0); + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 16|0); + HEAP32[$48>>2] = $46; + $49 = HEAP32[$t>>2]|0; + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 12|0); + HEAP32[$51>>2] = $49; + $52 = HEAP32[$1>>2]|0; + $53 = HEAP8[$52>>0]|0; + $54 = $53&255; + $55 = ($54|0)>=(80); + if (!($55)) { + STACKTOP = sp;return; + } + $56 = HEAP32[$1>>2]|0; + $57 = HEAP8[$56>>0]|0; + $58 = $57&255; + $59 = (($58) - 80)|0; + $60 = $59 ^ 2; + $61 = (($60) + 80)|0; + $62 = $61&255; + $63 = HEAP32[$1>>2]|0; + HEAP8[$63>>0] = $62; + STACKTOP = sp;return; +} +function _transferJoinMarkings($pDerived,$pBase) { + $pDerived = $pDerived|0; + $pBase = $pBase|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pDerived; + HEAP32[$1>>2] = $pBase; + $2 = HEAP32[$0>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + $7 = $6 & 1; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = $10 | $7; + HEAP32[$9>>2] = $11; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 36|0); + $14 = HEAP16[$13>>1]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 36|0); + HEAP16[$16>>1] = $14; + STACKTOP = sp;return; +} +function _exprAnalyzeOrTerm($pSrc,$pWC,$idxTerm) { + $pSrc = $pSrc|0; + $pWC = $pWC|0; + $idxTerm = $idxTerm|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $affLeft = 0, $affRight = 0, $b = 0, $b1 = 0, $chngToIN = 0, $db = 0; + var $i = 0, $iColumn = 0, $iCursor = 0, $idxNew = 0, $indexable = 0, $j = 0, $j2 = 0, $okToChngToIN = 0, $pAndInfo = 0, $pAndTerm = 0, $pAndWC = 0, $pDup = 0, $pExpr = 0, $pLeft = 0, $pList = 0, $pNew = 0, $pOrInfo = 0, $pOrTerm = 0, $pOrWc = 0, $pOther = 0; + var $pParse = 0, $pTerm = 0, $pWInfo = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; + $0 = sp + 140|0; + $1 = sp + 136|0; + $2 = sp + 132|0; + $pWInfo = sp + 128|0; + $pParse = sp + 124|0; + $db = sp + 120|0; + $pTerm = sp + 116|0; + $pExpr = sp + 112|0; + $i = sp + 108|0; + $pOrWc = sp + 104|0; + $pOrTerm = sp + 100|0; + $pOrInfo = sp + 96|0; + $chngToIN = sp + 24|0; + $indexable = sp; + $pAndInfo = sp + 92|0; + $pAndWC = sp + 88|0; + $pAndTerm = sp + 32|0; + $j = sp + 44|0; + $b = sp + 8|0; + $b1 = sp + 16|0; + $pOther = sp + 36|0; + $okToChngToIN = sp + 40|0; + $iColumn = sp + 48|0; + $iCursor = sp + 52|0; + $j2 = sp + 56|0; + $affLeft = sp + 60|0; + $affRight = sp + 64|0; + $pDup = sp + 68|0; + $pList = sp + 72|0; + $pLeft = sp + 76|0; + $pNew = sp + 80|0; + $idxNew = sp + 84|0; + HEAP32[$0>>2] = $pSrc; + HEAP32[$1>>2] = $pWC; + HEAP32[$2>>2] = $idxTerm; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$pWInfo>>2] = $4; + $5 = HEAP32[$pWInfo>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$pParse>>2] = $6; + $7 = HEAP32[$pParse>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$db>>2] = $8; + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 20|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + (($9*48)|0)|0); + HEAP32[$pTerm>>2] = $13; + $14 = HEAP32[$pTerm>>2]|0; + $15 = HEAP32[$14>>2]|0; + HEAP32[$pExpr>>2] = $15; + $16 = HEAP32[$db>>2]|0; + $17 = (_sqlite3DbMallocZero($16,416)|0); + HEAP32[$pOrInfo>>2] = $17; + $18 = HEAP32[$pTerm>>2]|0; + $19 = (($18) + 12|0); + HEAP32[$19>>2] = $17; + $20 = HEAP32[$pOrInfo>>2]|0; + $21 = ($20|0)==(0|0); + if ($21) { + STACKTOP = sp;return; + } + $22 = HEAP32[$pTerm>>2]|0; + $23 = (($22) + 20|0); + $24 = HEAP8[$23>>0]|0; + $25 = $24&255; + $26 = $25 | 16; + $27 = $26&255; + HEAP8[$23>>0] = $27; + $28 = HEAP32[$pOrInfo>>2]|0; + HEAP32[$pOrWc>>2] = $28; + $29 = HEAP32[$pOrWc>>2]|0; + $30 = HEAP32[$pWInfo>>2]|0; + _whereClauseInit($29,$30); + $31 = HEAP32[$pOrWc>>2]|0; + $32 = HEAP32[$pExpr>>2]|0; + _whereSplit($31,$32,71); + $33 = HEAP32[$0>>2]|0; + $34 = HEAP32[$pOrWc>>2]|0; + _exprAnalyzeAll($33,$34); + $35 = HEAP32[$db>>2]|0; + $36 = (($35) + 64|0); + $37 = HEAP8[$36>>0]|0; + $38 = ($37<<24>>24)!=(0); + if ($38) { + STACKTOP = sp;return; + } + $39 = $indexable; + $40 = $39; + HEAP32[$40>>2] = -1; + $41 = (($39) + 4)|0; + $42 = $41; + HEAP32[$42>>2] = -1; + $43 = $chngToIN; + $44 = $43; + HEAP32[$44>>2] = -1; + $45 = (($43) + 4)|0; + $46 = $45; + HEAP32[$46>>2] = -1; + $47 = HEAP32[$pOrWc>>2]|0; + $48 = (($47) + 12|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) - 1)|0; + HEAP32[$i>>2] = $50; + $51 = HEAP32[$pOrWc>>2]|0; + $52 = (($51) + 20|0); + $53 = HEAP32[$52>>2]|0; + HEAP32[$pOrTerm>>2] = $53; + while(1) { + $54 = HEAP32[$i>>2]|0; + $55 = ($54|0)>=(0); + if (!($55)) { + break; + } + $56 = $indexable; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = (($56) + 4)|0; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = ($58|0)!=(0); + $63 = ($61|0)!=(0); + $64 = $62 | $63; + if (!($64)) { + break; + } + $65 = HEAP32[$pOrTerm>>2]|0; + $66 = (($65) + 18|0); + $67 = HEAP16[$66>>1]|0; + $68 = $67&65535; + $69 = $68 & 255; + $70 = ($69|0)==(0); + do { + if ($70) { + $71 = $chngToIN; + $72 = $71; + HEAP32[$72>>2] = 0; + $73 = (($71) + 4)|0; + $74 = $73; + HEAP32[$74>>2] = 0; + $75 = HEAP32[$db>>2]|0; + $76 = (_sqlite3DbMallocRaw($75,408)|0); + HEAP32[$pAndInfo>>2] = $76; + $77 = HEAP32[$pAndInfo>>2]|0; + $78 = ($77|0)!=(0|0); + if ($78) { + $79 = $b; + $80 = $79; + HEAP32[$80>>2] = 0; + $81 = (($79) + 4)|0; + $82 = $81; + HEAP32[$82>>2] = 0; + $83 = HEAP32[$pAndInfo>>2]|0; + $84 = HEAP32[$pOrTerm>>2]|0; + $85 = (($84) + 12|0); + HEAP32[$85>>2] = $83; + $86 = HEAP32[$pOrTerm>>2]|0; + $87 = (($86) + 20|0); + $88 = HEAP8[$87>>0]|0; + $89 = $88&255; + $90 = $89 | 32; + $91 = $90&255; + HEAP8[$87>>0] = $91; + $92 = HEAP32[$pOrTerm>>2]|0; + $93 = (($92) + 18|0); + HEAP16[$93>>1] = 512; + $94 = HEAP32[$pAndInfo>>2]|0; + HEAP32[$pAndWC>>2] = $94; + $95 = HEAP32[$pAndWC>>2]|0; + $96 = HEAP32[$1>>2]|0; + $97 = HEAP32[$96>>2]|0; + _whereClauseInit($95,$97); + $98 = HEAP32[$pAndWC>>2]|0; + $99 = HEAP32[$pOrTerm>>2]|0; + $100 = HEAP32[$99>>2]|0; + _whereSplit($98,$100,72); + $101 = HEAP32[$0>>2]|0; + $102 = HEAP32[$pAndWC>>2]|0; + _exprAnalyzeAll($101,$102); + $103 = HEAP32[$1>>2]|0; + $104 = HEAP32[$pAndWC>>2]|0; + $105 = (($104) + 4|0); + HEAP32[$105>>2] = $103; + $106 = HEAP32[$db>>2]|0; + $107 = (($106) + 64|0); + $108 = HEAP8[$107>>0]|0; + $109 = ($108<<24>>24)!=(0); + L14: do { + if (!($109)) { + HEAP32[$j>>2] = 0; + $110 = HEAP32[$pAndWC>>2]|0; + $111 = (($110) + 20|0); + $112 = HEAP32[$111>>2]|0; + HEAP32[$pAndTerm>>2] = $112; + while(1) { + $113 = HEAP32[$j>>2]|0; + $114 = HEAP32[$pAndWC>>2]|0; + $115 = (($114) + 12|0); + $116 = HEAP32[$115>>2]|0; + $117 = ($113|0)<($116|0); + if (!($117)) { + break L14; + } + $118 = HEAP32[$pAndTerm>>2]|0; + $119 = HEAP32[$118>>2]|0; + $120 = HEAP8[$119>>0]|0; + $121 = $120&255; + $122 = (_allowedOp($121)|0); + $123 = ($122|0)!=(0); + if ($123) { + $124 = HEAP32[$pWInfo>>2]|0; + $125 = (($124) + 68|0); + $126 = HEAP32[$pAndTerm>>2]|0; + $127 = (($126) + 8|0); + $128 = HEAP32[$127>>2]|0; + $129 = (_getMask($125,$128)|0); + $130 = tempRet0; + $131 = $b; + $132 = $131; + $133 = HEAP32[$132>>2]|0; + $134 = (($131) + 4)|0; + $135 = $134; + $136 = HEAP32[$135>>2]|0; + $137 = $133 | $129; + $138 = $136 | $130; + $139 = $b; + $140 = $139; + HEAP32[$140>>2] = $137; + $141 = (($139) + 4)|0; + $142 = $141; + HEAP32[$142>>2] = $138; + } + $143 = HEAP32[$j>>2]|0; + $144 = (($143) + 1)|0; + HEAP32[$j>>2] = $144; + $145 = HEAP32[$pAndTerm>>2]|0; + $146 = (($145) + 48|0); + HEAP32[$pAndTerm>>2] = $146; + } + } + } while(0); + $147 = $b; + $148 = $147; + $149 = HEAP32[$148>>2]|0; + $150 = (($147) + 4)|0; + $151 = $150; + $152 = HEAP32[$151>>2]|0; + $153 = $indexable; + $154 = $153; + $155 = HEAP32[$154>>2]|0; + $156 = (($153) + 4)|0; + $157 = $156; + $158 = HEAP32[$157>>2]|0; + $159 = $155 & $149; + $160 = $158 & $152; + $161 = $indexable; + $162 = $161; + HEAP32[$162>>2] = $159; + $163 = (($161) + 4)|0; + $164 = $163; + HEAP32[$164>>2] = $160; + } + } else { + $165 = HEAP32[$pOrTerm>>2]|0; + $166 = (($165) + 20|0); + $167 = HEAP8[$166>>0]|0; + $168 = $167&255; + $169 = $168 & 8; + $170 = ($169|0)!=(0); + if (!($170)) { + $171 = HEAP32[$pWInfo>>2]|0; + $172 = (($171) + 68|0); + $173 = HEAP32[$pOrTerm>>2]|0; + $174 = (($173) + 8|0); + $175 = HEAP32[$174>>2]|0; + $176 = (_getMask($172,$175)|0); + $177 = tempRet0; + $178 = $b1; + $179 = $178; + HEAP32[$179>>2] = $176; + $180 = (($178) + 4)|0; + $181 = $180; + HEAP32[$181>>2] = $177; + $182 = HEAP32[$pOrTerm>>2]|0; + $183 = (($182) + 20|0); + $184 = HEAP8[$183>>0]|0; + $185 = $184&255; + $186 = $185 & 2; + $187 = ($186|0)!=(0); + if ($187) { + $188 = HEAP32[$pOrTerm>>2]|0; + $189 = (($188) + 4|0); + $190 = HEAP32[$189>>2]|0; + $191 = HEAP32[$pOrWc>>2]|0; + $192 = (($191) + 20|0); + $193 = HEAP32[$192>>2]|0; + $194 = (($193) + (($190*48)|0)|0); + HEAP32[$pOther>>2] = $194; + $195 = HEAP32[$pWInfo>>2]|0; + $196 = (($195) + 68|0); + $197 = HEAP32[$pOther>>2]|0; + $198 = (($197) + 8|0); + $199 = HEAP32[$198>>2]|0; + $200 = (_getMask($196,$199)|0); + $201 = tempRet0; + $202 = $b1; + $203 = $202; + $204 = HEAP32[$203>>2]|0; + $205 = (($202) + 4)|0; + $206 = $205; + $207 = HEAP32[$206>>2]|0; + $208 = $204 | $200; + $209 = $207 | $201; + $210 = $b1; + $211 = $210; + HEAP32[$211>>2] = $208; + $212 = (($210) + 4)|0; + $213 = $212; + HEAP32[$213>>2] = $209; + } + $214 = $b1; + $215 = $214; + $216 = HEAP32[$215>>2]|0; + $217 = (($214) + 4)|0; + $218 = $217; + $219 = HEAP32[$218>>2]|0; + $220 = $indexable; + $221 = $220; + $222 = HEAP32[$221>>2]|0; + $223 = (($220) + 4)|0; + $224 = $223; + $225 = HEAP32[$224>>2]|0; + $226 = $222 & $216; + $227 = $225 & $219; + $228 = $indexable; + $229 = $228; + HEAP32[$229>>2] = $226; + $230 = (($228) + 4)|0; + $231 = $230; + HEAP32[$231>>2] = $227; + $232 = HEAP32[$pOrTerm>>2]|0; + $233 = (($232) + 18|0); + $234 = HEAP16[$233>>1]|0; + $235 = $234&65535; + $236 = $235 & 2; + $237 = ($236|0)==(0); + if ($237) { + $238 = $chngToIN; + $239 = $238; + HEAP32[$239>>2] = 0; + $240 = (($238) + 4)|0; + $241 = $240; + HEAP32[$241>>2] = 0; + break; + } else { + $242 = $b1; + $243 = $242; + $244 = HEAP32[$243>>2]|0; + $245 = (($242) + 4)|0; + $246 = $245; + $247 = HEAP32[$246>>2]|0; + $248 = $chngToIN; + $249 = $248; + $250 = HEAP32[$249>>2]|0; + $251 = (($248) + 4)|0; + $252 = $251; + $253 = HEAP32[$252>>2]|0; + $254 = $250 & $244; + $255 = $253 & $247; + $256 = $chngToIN; + $257 = $256; + HEAP32[$257>>2] = $254; + $258 = (($256) + 4)|0; + $259 = $258; + HEAP32[$259>>2] = $255; + break; + } + } + } + } while(0); + $260 = HEAP32[$i>>2]|0; + $261 = (($260) + -1)|0; + HEAP32[$i>>2] = $261; + $262 = HEAP32[$pOrTerm>>2]|0; + $263 = (($262) + 48|0); + HEAP32[$pOrTerm>>2] = $263; + } + $264 = $indexable; + $265 = $264; + $266 = HEAP32[$265>>2]|0; + $267 = (($264) + 4)|0; + $268 = $267; + $269 = HEAP32[$268>>2]|0; + $270 = HEAP32[$pOrInfo>>2]|0; + $271 = (($270) + 408|0); + $272 = $271; + $273 = $272; + HEAP32[$273>>2] = $266; + $274 = (($272) + 4)|0; + $275 = $274; + HEAP32[$275>>2] = $269; + $276 = $indexable; + $277 = $276; + $278 = HEAP32[$277>>2]|0; + $279 = (($276) + 4)|0; + $280 = $279; + $281 = HEAP32[$280>>2]|0; + $282 = ($278|0)==(0); + $283 = ($281|0)==(0); + $284 = $282 & $283; + $285 = $284 ? 0 : 256; + $286 = $285&65535; + $287 = HEAP32[$pTerm>>2]|0; + $288 = (($287) + 18|0); + HEAP16[$288>>1] = $286; + $289 = $chngToIN; + $290 = $289; + $291 = HEAP32[$290>>2]|0; + $292 = (($289) + 4)|0; + $293 = $292; + $294 = HEAP32[$293>>2]|0; + $295 = ($291|0)!=(0); + $296 = ($294|0)!=(0); + $297 = $295 | $296; + if (!($297)) { + STACKTOP = sp;return; + } + HEAP32[$okToChngToIN>>2] = 0; + HEAP32[$iColumn>>2] = -1; + HEAP32[$iCursor>>2] = -1; + HEAP32[$j2>>2] = 0; + HEAP32[$j2>>2] = 0; + while(1) { + $298 = HEAP32[$j2>>2]|0; + $299 = ($298|0)<(2); + if (!($299)) { + break; + } + $300 = HEAP32[$okToChngToIN>>2]|0; + $301 = ($300|0)!=(0); + $302 = $301 ^ 1; + if (!($302)) { + break; + } + $303 = HEAP32[$pOrWc>>2]|0; + $304 = (($303) + 20|0); + $305 = HEAP32[$304>>2]|0; + HEAP32[$pOrTerm>>2] = $305; + $306 = HEAP32[$pOrWc>>2]|0; + $307 = (($306) + 12|0); + $308 = HEAP32[$307>>2]|0; + $309 = (($308) - 1)|0; + HEAP32[$i>>2] = $309; + while(1) { + $310 = HEAP32[$i>>2]|0; + $311 = ($310|0)>=(0); + if (!($311)) { + break; + } + $312 = HEAP32[$pOrTerm>>2]|0; + $313 = (($312) + 20|0); + $314 = HEAP8[$313>>0]|0; + $315 = $314&255; + $316 = $315 & -65; + $317 = $316&255; + HEAP8[$313>>0] = $317; + $318 = HEAP32[$pOrTerm>>2]|0; + $319 = (($318) + 8|0); + $320 = HEAP32[$319>>2]|0; + $321 = HEAP32[$iCursor>>2]|0; + $322 = ($320|0)==($321|0); + if (!($322)) { + $323 = $chngToIN; + $324 = $323; + $325 = HEAP32[$324>>2]|0; + $326 = (($323) + 4)|0; + $327 = $326; + $328 = HEAP32[$327>>2]|0; + $329 = HEAP32[$pWInfo>>2]|0; + $330 = (($329) + 68|0); + $331 = HEAP32[$pOrTerm>>2]|0; + $332 = (($331) + 8|0); + $333 = HEAP32[$332>>2]|0; + $334 = (_getMask($330,$333)|0); + $335 = tempRet0; + $336 = $325 & $334; + $337 = $328 & $335; + $338 = ($336|0)==(0); + $339 = ($337|0)==(0); + $340 = $338 & $339; + if (!($340)) { + label = 30; + break; + } + } + $347 = HEAP32[$i>>2]|0; + $348 = (($347) + -1)|0; + HEAP32[$i>>2] = $348; + $349 = HEAP32[$pOrTerm>>2]|0; + $350 = (($349) + 48|0); + HEAP32[$pOrTerm>>2] = $350; + } + if ((label|0) == 30) { + label = 0; + $341 = HEAP32[$pOrTerm>>2]|0; + $342 = (($341) + 12|0); + $343 = HEAP32[$342>>2]|0; + HEAP32[$iColumn>>2] = $343; + $344 = HEAP32[$pOrTerm>>2]|0; + $345 = (($344) + 8|0); + $346 = HEAP32[$345>>2]|0; + HEAP32[$iCursor>>2] = $346; + } + $351 = HEAP32[$i>>2]|0; + $352 = ($351|0)<(0); + if ($352) { + break; + } + HEAP32[$okToChngToIN>>2] = 1; + while(1) { + $353 = HEAP32[$i>>2]|0; + $354 = ($353|0)>=(0); + if (!($354)) { + break; + } + $355 = HEAP32[$okToChngToIN>>2]|0; + $356 = ($355|0)!=(0); + if (!($356)) { + break; + } + $357 = HEAP32[$pOrTerm>>2]|0; + $358 = (($357) + 8|0); + $359 = HEAP32[$358>>2]|0; + $360 = HEAP32[$iCursor>>2]|0; + $361 = ($359|0)!=($360|0); + $362 = HEAP32[$pOrTerm>>2]|0; + do { + if ($361) { + $363 = (($362) + 20|0); + $364 = HEAP8[$363>>0]|0; + $365 = $364&255; + $366 = $365 & -65; + $367 = $366&255; + HEAP8[$363>>0] = $367; + } else { + $368 = (($362) + 12|0); + $369 = HEAP32[$368>>2]|0; + $370 = HEAP32[$iColumn>>2]|0; + $371 = ($369|0)!=($370|0); + if ($371) { + HEAP32[$okToChngToIN>>2] = 0; + break; + } + $372 = HEAP32[$pOrTerm>>2]|0; + $373 = HEAP32[$372>>2]|0; + $374 = (($373) + 16|0); + $375 = HEAP32[$374>>2]|0; + $376 = (_sqlite3ExprAffinity($375)|0); + $377 = $376 << 24 >> 24; + HEAP32[$affRight>>2] = $377; + $378 = HEAP32[$pOrTerm>>2]|0; + $379 = HEAP32[$378>>2]|0; + $380 = (($379) + 12|0); + $381 = HEAP32[$380>>2]|0; + $382 = (_sqlite3ExprAffinity($381)|0); + $383 = $382 << 24 >> 24; + HEAP32[$affLeft>>2] = $383; + $384 = HEAP32[$affRight>>2]|0; + $385 = ($384|0)!=(0); + if ($385) { + $386 = HEAP32[$affRight>>2]|0; + $387 = HEAP32[$affLeft>>2]|0; + $388 = ($386|0)!=($387|0); + if ($388) { + HEAP32[$okToChngToIN>>2] = 0; + break; + } + } + $389 = HEAP32[$pOrTerm>>2]|0; + $390 = (($389) + 20|0); + $391 = HEAP8[$390>>0]|0; + $392 = $391&255; + $393 = $392 | 64; + $394 = $393&255; + HEAP8[$390>>0] = $394; + } + } while(0); + $395 = HEAP32[$i>>2]|0; + $396 = (($395) + -1)|0; + HEAP32[$i>>2] = $396; + $397 = HEAP32[$pOrTerm>>2]|0; + $398 = (($397) + 48|0); + HEAP32[$pOrTerm>>2] = $398; + } + $399 = HEAP32[$j2>>2]|0; + $400 = (($399) + 1)|0; + HEAP32[$j2>>2] = $400; + } + $401 = HEAP32[$okToChngToIN>>2]|0; + $402 = ($401|0)!=(0); + if (!($402)) { + STACKTOP = sp;return; + } + HEAP32[$pList>>2] = 0; + HEAP32[$pLeft>>2] = 0; + $403 = HEAP32[$pOrWc>>2]|0; + $404 = (($403) + 12|0); + $405 = HEAP32[$404>>2]|0; + $406 = (($405) - 1)|0; + HEAP32[$i>>2] = $406; + $407 = HEAP32[$pOrWc>>2]|0; + $408 = (($407) + 20|0); + $409 = HEAP32[$408>>2]|0; + HEAP32[$pOrTerm>>2] = $409; + while(1) { + $410 = HEAP32[$i>>2]|0; + $411 = ($410|0)>=(0); + if (!($411)) { + break; + } + $412 = HEAP32[$pOrTerm>>2]|0; + $413 = (($412) + 20|0); + $414 = HEAP8[$413>>0]|0; + $415 = $414&255; + $416 = $415 & 64; + $417 = ($416|0)==(0); + if (!($417)) { + $418 = HEAP32[$db>>2]|0; + $419 = HEAP32[$pOrTerm>>2]|0; + $420 = HEAP32[$419>>2]|0; + $421 = (($420) + 16|0); + $422 = HEAP32[$421>>2]|0; + $423 = (_sqlite3ExprDup($418,$422,0)|0); + HEAP32[$pDup>>2] = $423; + $424 = HEAP32[$pWInfo>>2]|0; + $425 = HEAP32[$424>>2]|0; + $426 = HEAP32[$pList>>2]|0; + $427 = HEAP32[$pDup>>2]|0; + $428 = (_sqlite3ExprListAppend($425,$426,$427)|0); + HEAP32[$pList>>2] = $428; + $429 = HEAP32[$pOrTerm>>2]|0; + $430 = HEAP32[$429>>2]|0; + $431 = (($430) + 12|0); + $432 = HEAP32[$431>>2]|0; + HEAP32[$pLeft>>2] = $432; + } + $433 = HEAP32[$i>>2]|0; + $434 = (($433) + -1)|0; + HEAP32[$i>>2] = $434; + $435 = HEAP32[$pOrTerm>>2]|0; + $436 = (($435) + 48|0); + HEAP32[$pOrTerm>>2] = $436; + } + $437 = HEAP32[$db>>2]|0; + $438 = HEAP32[$pLeft>>2]|0; + $439 = (_sqlite3ExprDup($437,$438,0)|0); + HEAP32[$pDup>>2] = $439; + $440 = HEAP32[$pParse>>2]|0; + $441 = HEAP32[$pDup>>2]|0; + $442 = (_sqlite3PExpr($440,75,$441,0,0)|0); + HEAP32[$pNew>>2] = $442; + $443 = HEAP32[$pNew>>2]|0; + $444 = ($443|0)!=(0|0); + if ($444) { + $445 = HEAP32[$pNew>>2]|0; + $446 = HEAP32[$pExpr>>2]|0; + _transferJoinMarkings($445,$446); + $447 = HEAP32[$pList>>2]|0; + $448 = HEAP32[$pNew>>2]|0; + $449 = (($448) + 20|0); + HEAP32[$449>>2] = $447; + $450 = HEAP32[$1>>2]|0; + $451 = HEAP32[$pNew>>2]|0; + $452 = (_whereClauseInsert($450,$451,3)|0); + HEAP32[$idxNew>>2] = $452; + $453 = HEAP32[$0>>2]|0; + $454 = HEAP32[$1>>2]|0; + $455 = HEAP32[$idxNew>>2]|0; + _exprAnalyze($453,$454,$455); + $456 = HEAP32[$2>>2]|0; + $457 = HEAP32[$1>>2]|0; + $458 = (($457) + 20|0); + $459 = HEAP32[$458>>2]|0; + $460 = (($459) + (($456*48)|0)|0); + HEAP32[$pTerm>>2] = $460; + $461 = HEAP32[$2>>2]|0; + $462 = HEAP32[$idxNew>>2]|0; + $463 = HEAP32[$1>>2]|0; + $464 = (($463) + 20|0); + $465 = HEAP32[$464>>2]|0; + $466 = (($465) + (($462*48)|0)|0); + $467 = (($466) + 4|0); + HEAP32[$467>>2] = $461; + $468 = HEAP32[$pTerm>>2]|0; + $469 = (($468) + 21|0); + HEAP8[$469>>0] = 1; + } else { + $470 = HEAP32[$db>>2]|0; + $471 = HEAP32[$pList>>2]|0; + _sqlite3ExprListDelete($470,$471); + } + $472 = HEAP32[$pTerm>>2]|0; + $473 = (($472) + 18|0); + HEAP16[$473>>1] = 2048; + STACKTOP = sp;return; +} +function _isLikeOrGlob($pParse,$pExpr,$ppPrefix,$pisComplete,$pnoCase) { + $pParse = $pParse|0; + $pExpr = $pExpr|0; + $ppPrefix = $ppPrefix|0; + $pisComplete = $pisComplete|0; + $pnoCase = $pnoCase|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $17 = 0, $18 = 0, $19 = 0; + var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $cnt = 0, $db = 0, $iCol = 0, $op = 0, $pLeft = 0, $pList = 0, $pPrefix = 0, $pReprepare = 0, $pRight = 0, $pVal = 0, $r1 = 0; + var $v = 0, $wc = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 60|0; + $1 = sp + 48|0; + $2 = sp + 52|0; + $3 = sp + 56|0; + $4 = sp + 64|0; + $5 = sp + 68|0; + $z = sp + 72|0; + $pRight = sp + 76|0; + $pLeft = sp + 44|0; + $pList = sp + 40|0; + $c = sp + 36|0; + $cnt = sp + 12|0; + $wc = sp + 80|0; + $db = sp; + $pVal = sp + 4|0; + $op = sp + 8|0; + $pReprepare = sp + 16|0; + $iCol = sp + 20|0; + $pPrefix = sp + 24|0; + $v = sp + 28|0; + $r1 = sp + 32|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pExpr; + HEAP32[$3>>2] = $ppPrefix; + HEAP32[$4>>2] = $pisComplete; + HEAP32[$5>>2] = $pnoCase; + HEAP32[$z>>2] = 0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$db>>2] = $7; + HEAP32[$pVal>>2] = 0; + $8 = HEAP32[$db>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$5>>2]|0; + $11 = (_sqlite3IsLikeFunction($8,$9,$10,$wc)|0); + $12 = ($11|0)!=(0); + if (!($12)) { + HEAP32[$0>>2] = 0; + $166 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($166|0); + } + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 20|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$pList>>2] = $15; + $16 = HEAP32[$pList>>2]|0; + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + 20|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$pLeft>>2] = $20; + $21 = HEAP32[$pLeft>>2]|0; + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = ($23|0)!=(154); + if (!($24)) { + $25 = HEAP32[$pLeft>>2]|0; + $26 = (_sqlite3ExprAffinity($25)|0); + $27 = $26 << 24 >> 24; + $28 = ($27|0)!=(97); + if (!($28)) { + $29 = HEAP32[$pLeft>>2]|0; + $30 = (($29) + 44|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + 44|0); + $33 = HEAP8[$32>>0]|0; + $34 = $33&255; + $35 = $34 & 16; + $36 = ($35|0)!=(0); + if (!($36)) { + $37 = HEAP32[$pList>>2]|0; + $38 = (($37) + 4|0); + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$39>>2]|0; + $41 = (_sqlite3ExprSkipCollate($40)|0); + HEAP32[$pRight>>2] = $41; + $42 = HEAP32[$pRight>>2]|0; + $43 = HEAP8[$42>>0]|0; + $44 = $43&255; + HEAP32[$op>>2] = $44; + $45 = HEAP32[$op>>2]|0; + $46 = ($45|0)==(135); + if ($46) { + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 476|0); + $49 = HEAP32[$48>>2]|0; + HEAP32[$pReprepare>>2] = $49; + $50 = HEAP32[$pRight>>2]|0; + $51 = (($50) + 32|0); + $52 = HEAP16[$51>>1]|0; + $53 = $52 << 16 >> 16; + HEAP32[$iCol>>2] = $53; + $54 = HEAP32[$pReprepare>>2]|0; + $55 = HEAP32[$iCol>>2]|0; + $56 = (_sqlite3VdbeGetBoundValue($54,$55,98)|0); + HEAP32[$pVal>>2] = $56; + $57 = HEAP32[$pVal>>2]|0; + $58 = ($57|0)!=(0|0); + if ($58) { + $59 = HEAP32[$pVal>>2]|0; + $60 = (_sqlite3_value_type($59)|0); + $61 = ($60|0)==(3); + if ($61) { + $62 = HEAP32[$pVal>>2]|0; + $63 = (_sqlite3_value_text($62)|0); + HEAP32[$z>>2] = $63; + } + } + $64 = HEAP32[$1>>2]|0; + $65 = (($64) + 8|0); + $66 = HEAP32[$65>>2]|0; + $67 = HEAP32[$iCol>>2]|0; + _sqlite3VdbeSetVarmask($66,$67); + } else { + $68 = HEAP32[$op>>2]|0; + $69 = ($68|0)==(97); + if ($69) { + $70 = HEAP32[$pRight>>2]|0; + $71 = (($70) + 8|0); + $72 = HEAP32[$71>>2]|0; + HEAP32[$z>>2] = $72; + } + } + $73 = HEAP32[$z>>2]|0; + $74 = ($73|0)!=(0|0); + do { + if ($74) { + HEAP32[$cnt>>2] = 0; + while(1) { + $75 = HEAP32[$cnt>>2]|0; + $76 = HEAP32[$z>>2]|0; + $77 = (($76) + ($75)|0); + $78 = HEAP8[$77>>0]|0; + $79 = $78 << 24 >> 24; + HEAP32[$c>>2] = $79; + $80 = ($79|0)!=(0); + if ($80) { + $81 = HEAP32[$c>>2]|0; + $82 = HEAP8[$wc>>0]|0; + $83 = $82 << 24 >> 24; + $84 = ($81|0)!=($83|0); + if ($84) { + $85 = HEAP32[$c>>2]|0; + $86 = (($wc) + 1|0); + $87 = HEAP8[$86>>0]|0; + $88 = $87 << 24 >> 24; + $89 = ($85|0)!=($88|0); + if ($89) { + $90 = HEAP32[$c>>2]|0; + $91 = (($wc) + 2|0); + $92 = HEAP8[$91>>0]|0; + $93 = $92 << 24 >> 24; + $94 = ($90|0)!=($93|0); + $167 = $94; + } else { + $167 = 0; + } + } else { + $167 = 0; + } + } else { + $167 = 0; + } + $95 = HEAP32[$cnt>>2]|0; + if (!($167)) { + break; + } + $96 = (($95) + 1)|0; + HEAP32[$cnt>>2] = $96; + } + $97 = ($95|0)!=(0); + if ($97) { + $98 = HEAP32[$cnt>>2]|0; + $99 = (($98) - 1)|0; + $100 = HEAP32[$z>>2]|0; + $101 = (($100) + ($99)|0); + $102 = HEAP8[$101>>0]|0; + $103 = $102&255; + $104 = (255)!=($103|0); + if ($104) { + $105 = HEAP32[$c>>2]|0; + $106 = HEAP8[$wc>>0]|0; + $107 = $106 << 24 >> 24; + $108 = ($105|0)==($107|0); + if ($108) { + $109 = HEAP32[$cnt>>2]|0; + $110 = (($109) + 1)|0; + $111 = HEAP32[$z>>2]|0; + $112 = (($111) + ($110)|0); + $113 = HEAP8[$112>>0]|0; + $114 = $113 << 24 >> 24; + $115 = ($114|0)==(0); + $117 = $115; + } else { + $117 = 0; + } + $116 = $117&1; + $118 = HEAP32[$4>>2]|0; + HEAP32[$118>>2] = $116; + $119 = HEAP32[$db>>2]|0; + $120 = HEAP32[$z>>2]|0; + $121 = (_sqlite3Expr($119,97,$120)|0); + HEAP32[$pPrefix>>2] = $121; + $122 = HEAP32[$pPrefix>>2]|0; + $123 = ($122|0)!=(0|0); + if ($123) { + $124 = HEAP32[$cnt>>2]|0; + $125 = HEAP32[$pPrefix>>2]|0; + $126 = (($125) + 8|0); + $127 = HEAP32[$126>>2]|0; + $128 = (($127) + ($124)|0); + HEAP8[$128>>0] = 0; + } + $129 = HEAP32[$pPrefix>>2]|0; + $130 = HEAP32[$3>>2]|0; + HEAP32[$130>>2] = $129; + $131 = HEAP32[$op>>2]|0; + $132 = ($131|0)==(135); + if (!($132)) { + break; + } + $133 = HEAP32[$1>>2]|0; + $134 = (($133) + 8|0); + $135 = HEAP32[$134>>2]|0; + HEAP32[$v>>2] = $135; + $136 = HEAP32[$v>>2]|0; + $137 = HEAP32[$pRight>>2]|0; + $138 = (($137) + 32|0); + $139 = HEAP16[$138>>1]|0; + $140 = $139 << 16 >> 16; + _sqlite3VdbeSetVarmask($136,$140); + $141 = HEAP32[$4>>2]|0; + $142 = HEAP32[$141>>2]|0; + $143 = ($142|0)!=(0); + if (!($143)) { + break; + } + $144 = HEAP32[$pRight>>2]|0; + $145 = (($144) + 8|0); + $146 = HEAP32[$145>>2]|0; + $147 = (($146) + 1|0); + $148 = HEAP8[$147>>0]|0; + $149 = $148 << 24 >> 24; + $150 = ($149|0)!=(0); + if (!($150)) { + break; + } + $151 = HEAP32[$1>>2]|0; + $152 = (_sqlite3GetTempReg($151)|0); + HEAP32[$r1>>2] = $152; + $153 = HEAP32[$1>>2]|0; + $154 = HEAP32[$pRight>>2]|0; + $155 = HEAP32[$r1>>2]|0; + (_sqlite3ExprCodeTarget($153,$154,$155)|0); + $156 = HEAP32[$v>>2]|0; + $157 = HEAP32[$v>>2]|0; + $158 = (_sqlite3VdbeCurrentAddr($157)|0); + $159 = (($158) - 1)|0; + _sqlite3VdbeChangeP3($156,$159,0); + $160 = HEAP32[$1>>2]|0; + $161 = HEAP32[$r1>>2]|0; + _sqlite3ReleaseTempReg($160,$161); + break; + } + } + HEAP32[$z>>2] = 0; + } + } while(0); + $162 = HEAP32[$pVal>>2]|0; + _sqlite3ValueFree($162); + $163 = HEAP32[$z>>2]|0; + $164 = ($163|0)!=(0|0); + $165 = $164&1; + HEAP32[$0>>2] = $165; + $166 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($166|0); + } + } + } + HEAP32[$0>>2] = 0; + $166 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($166|0); +} +function _isMatchOfColumn($pExpr) { + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pList = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pList = sp + 4|0; + HEAP32[$1>>2] = $pExpr; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = ($4|0)!=(153); + do { + if ($5) { + HEAP32[$0>>2] = 0; + } else { + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 8|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3_stricmp($8,27976)|0); + $10 = ($9|0)!=(0); + if ($10) { + HEAP32[$0>>2] = 0; + break; + } + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 20|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pList>>2] = $13; + $14 = HEAP32[$pList>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(2); + if ($16) { + HEAP32[$0>>2] = 0; + break; + } + $17 = HEAP32[$pList>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + 20|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = ($23|0)!=(154); + if ($24) { + HEAP32[$0>>2] = 0; + break; + } else { + HEAP32[$0>>2] = 1; + break; + } + } + } while(0); + $25 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($25|0); +} +function _sqlite3IsLikeFunction($db,$pExpr,$pIsNocase,$aWc) { + $db = $db|0; + $pExpr = $pExpr|0; + $pIsNocase = $pIsNocase|0; + $aWc = $aWc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDef = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $pDef = sp + 16|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pExpr; + HEAP32[$3>>2] = $pIsNocase; + HEAP32[$4>>2] = $aWc; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = ($7|0)!=(153); + if (!($8)) { + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 20|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0|0); + if ($12) { + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 20|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(2); + if (!($17)) { + $18 = HEAP32[$1>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = (($19) + 8|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$2>>2]|0; + $23 = (($22) + 8|0); + $24 = HEAP32[$23>>2]|0; + $25 = (_sqlite3Strlen30($24)|0); + $26 = (_sqlite3FindFunction($18,$21,$25,2,1,0)|0); + HEAP32[$pDef>>2] = $26; + $27 = HEAP32[$pDef>>2]|0; + $28 = ($27|0)==(0|0); + if (!($28)) { + $29 = HEAP32[$pDef>>2]|0; + $30 = (($29) + 2|0); + $31 = HEAP16[$30>>1]|0; + $32 = $31&65535; + $33 = $32 & 4; + $34 = ($33|0)==(0); + if (!($34)) { + $35 = HEAP32[$4>>2]|0; + $36 = HEAP32[$pDef>>2]|0; + $37 = (($36) + 4|0); + $38 = HEAP32[$37>>2]|0; + ;HEAP8[$35+0>>0]=HEAP8[$38+0>>0]|0;HEAP8[$35+1>>0]=HEAP8[$38+1>>0]|0;HEAP8[$35+2>>0]=HEAP8[$38+2>>0]|0; + $39 = HEAP32[$pDef>>2]|0; + $40 = (($39) + 2|0); + $41 = HEAP16[$40>>1]|0; + $42 = $41&65535; + $43 = $42 & 8; + $44 = ($43|0)==(0); + $45 = $44&1; + $46 = HEAP32[$3>>2]|0; + HEAP32[$46>>2] = $45; + HEAP32[$0>>2] = 1; + $47 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($47|0); + } + } + HEAP32[$0>>2] = 0; + $47 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($47|0); + } + } + } + HEAP32[$0>>2] = 0; + $47 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($47|0); +} +function _sqlite3VdbeGetBoundValue($v,$iVar,$aff) { + $v = $v|0; + $iVar = $iVar|0; + $aff = $aff|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pMem = 0, $pRet = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 20|0; + $pMem = sp + 12|0; + $pRet = sp + 8|0; + HEAP32[$1>>2] = $v; + HEAP32[$2>>2] = $iVar; + HEAP8[$3>>0] = $aff; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = HEAP32[$2>>2]|0; + $7 = (($6) - 1)|0; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 60|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + (($7*40)|0)|0); + HEAP32[$pMem>>2] = $11; + $12 = HEAP32[$pMem>>2]|0; + $13 = (($12) + 28|0); + $14 = HEAP16[$13>>1]|0; + $15 = $14&65535; + $16 = $15 & 1; + $17 = (0)==($16|0); + if ($17) { + $18 = HEAP32[$1>>2]|0; + $19 = HEAP32[$18>>2]|0; + $20 = (_sqlite3ValueNew($19)|0); + HEAP32[$pRet>>2] = $20; + $21 = HEAP32[$pRet>>2]|0; + $22 = ($21|0)!=(0|0); + if ($22) { + $23 = HEAP32[$pRet>>2]|0; + $24 = HEAP32[$pMem>>2]|0; + (_sqlite3VdbeMemCopy($23,$24)|0); + $25 = HEAP32[$pRet>>2]|0; + $26 = HEAP8[$3>>0]|0; + _sqlite3ValueApplyAffinity($25,$26,1); + } + $27 = HEAP32[$pRet>>2]|0; + HEAP32[$0>>2] = $27; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } + } + HEAP32[$0>>2] = 0; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); +} +function _sqlite3VdbeSetVarmask($v,$iVar) { + $v = $v|0; + $iVar = $iVar|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $v; + HEAP32[$1>>2] = $iVar; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)>(32); + if ($3) { + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 188|0); + HEAP32[$5>>2] = -1; + STACKTOP = sp;return; + } else { + $6 = HEAP32[$1>>2]|0; + $7 = (($6) - 1)|0; + $8 = 1 << $7; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 188|0); + $11 = HEAP32[$10>>2]|0; + $12 = $11 | $8; + HEAP32[$10>>2] = $12; + STACKTOP = sp;return; + } +} +function _sqlite3RowidConstraint($pParse,$onError,$pTab) { + $pParse = $pParse|0; + $onError = $onError|0; + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $zMsg = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer2 = sp; + $0 = sp + 24|0; + $1 = sp + 8|0; + $2 = sp + 12|0; + $zMsg = sp + 16|0; + $rc = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $onError; + HEAP32[$2>>2] = $pTab; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 36|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5 << 16 >> 16; + $7 = ($6|0)>=(0); + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$10>>2]|0; + if ($7) { + $12 = HEAP32[$2>>2]|0; + $13 = (($12) + 36|0); + $14 = HEAP16[$13>>1]|0; + $15 = $14 << 16 >> 16; + $16 = HEAP32[$2>>2]|0; + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + (($15*24)|0)|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$vararg_buffer2>>2] = $11; + $vararg_ptr1 = (($vararg_buffer2) + 4|0); + HEAP32[$vararg_ptr1>>2] = $20; + $21 = (_sqlite3MPrintf($9,23968,$vararg_buffer2)|0); + HEAP32[$zMsg>>2] = $21; + HEAP32[$rc>>2] = 1555; + $23 = HEAP32[$0>>2]|0; + $24 = HEAP32[$rc>>2]|0; + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$zMsg>>2]|0; + _sqlite3HaltConstraint($23,$24,$25,$26,-1,2); + STACKTOP = sp;return; + } else { + HEAP32[$vararg_buffer2>>2] = $11; + $22 = (_sqlite3MPrintf($9,30888,$vararg_buffer2)|0); + HEAP32[$zMsg>>2] = $22; + HEAP32[$rc>>2] = 2579; + $23 = HEAP32[$0>>2]|0; + $24 = HEAP32[$rc>>2]|0; + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$zMsg>>2]|0; + _sqlite3HaltConstraint($23,$24,$25,$26,-1,2); + STACKTOP = sp;return; + } +} +function _sqlite3FkRequired($pParse,$pTab,$aChange,$chngRowid) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $aChange = $aChange|0; + $chngRowid = $chngRowid|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $p = sp + 16|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pTab; + HEAP32[$3>>2] = $aChange; + HEAP32[$4>>2] = $chngRowid; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + 24|0); + $8 = HEAP32[$7>>2]|0; + $9 = $8 & 524288; + $10 = ($9|0)!=(0); + L1: do { + if ($10) { + $11 = HEAP32[$3>>2]|0; + $12 = ($11|0)!=(0|0); + $13 = HEAP32[$2>>2]|0; + if (!($12)) { + $14 = (_sqlite3FkReferences($13)|0); + $15 = ($14|0)!=(0|0); + if ($15) { + $21 = 1; + } else { + $16 = HEAP32[$2>>2]|0; + $17 = (($16) + 16|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($18|0)!=(0|0); + $21 = $19; + } + $20 = $21&1; + HEAP32[$0>>2] = $20; + $47 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($47|0); + } + $22 = (($13) + 16|0); + $23 = HEAP32[$22>>2]|0; + HEAP32[$p>>2] = $23; + while(1) { + $24 = HEAP32[$p>>2]|0; + $25 = ($24|0)!=(0|0); + $26 = HEAP32[$2>>2]|0; + if (!($25)) { + break; + } + $27 = HEAP32[$p>>2]|0; + $28 = HEAP32[$3>>2]|0; + $29 = HEAP32[$4>>2]|0; + $30 = (_fkChildIsModified($26,$27,$28,$29)|0); + $31 = ($30|0)!=(0); + if ($31) { + label = 9; + break; + } + $32 = HEAP32[$p>>2]|0; + $33 = (($32) + 4|0); + $34 = HEAP32[$33>>2]|0; + HEAP32[$p>>2] = $34; + } + if ((label|0) == 9) { + HEAP32[$0>>2] = 1; + $47 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($47|0); + } + $35 = (_sqlite3FkReferences($26)|0); + HEAP32[$p>>2] = $35; + while(1) { + $36 = HEAP32[$p>>2]|0; + $37 = ($36|0)!=(0|0); + if (!($37)) { + break L1; + } + $38 = HEAP32[$2>>2]|0; + $39 = HEAP32[$p>>2]|0; + $40 = HEAP32[$3>>2]|0; + $41 = HEAP32[$4>>2]|0; + $42 = (_fkParentIsModified($38,$39,$40,$41)|0); + $43 = ($42|0)!=(0); + if ($43) { + break; + } + $44 = HEAP32[$p>>2]|0; + $45 = (($44) + 12|0); + $46 = HEAP32[$45>>2]|0; + HEAP32[$p>>2] = $46; + } + HEAP32[$0>>2] = 1; + $47 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($47|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $47 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($47|0); +} +function _sqlite3MultiWrite($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pToplevel = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pToplevel = sp; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 408|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + $5 = HEAP32[$0>>2]|0; + if ($4) { + $6 = (($5) + 408|0); + $7 = HEAP32[$6>>2]|0; + $8 = $7; + } else { + $8 = $5; + } + HEAP32[$pToplevel>>2] = $8; + $9 = HEAP32[$pToplevel>>2]|0; + $10 = (($9) + 20|0); + HEAP8[$10>>0] = 1; + STACKTOP = sp;return; +} +function _sqlite3GenerateRowDelete($pParse,$pTab,$pTrigger,$iDataCur,$iIdxCur,$iPk,$nPk,$count,$onconf,$bNoSeek) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $pTrigger = $pTrigger|0; + $iDataCur = $iDataCur|0; + $iIdxCur = $iIdxCur|0; + $iPk = $iPk|0; + $nPk = $nPk|0; + $count = $count|0; + $onconf = $onconf|0; + $bNoSeek = $bNoSeek|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addrStart = 0, $iCol = 0, $iLabel = 0, $iOld = 0, $mask = 0, $opSeek = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 24|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 44|0; + $4 = sp + 40|0; + $5 = sp + 36|0; + $6 = sp + 48|0; + $7 = sp + 53|0; + $8 = sp + 51|0; + $9 = sp + 52|0; + $v = sp + 16|0; + $iOld = sp + 12|0; + $iLabel = sp + 8|0; + $opSeek = sp + 50|0; + $mask = sp + 4|0; + $iCol = sp; + $addrStart = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $pTrigger; + HEAP32[$3>>2] = $iDataCur; + HEAP32[$4>>2] = $iIdxCur; + HEAP32[$5>>2] = $iPk; + HEAP16[$6>>1] = $nPk; + HEAP8[$7>>0] = $count; + HEAP8[$8>>0] = $onconf; + HEAP8[$9>>0] = $bNoSeek; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 8|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$v>>2] = $12; + HEAP32[$iOld>>2] = 0; + $13 = HEAP32[$v>>2]|0; + $14 = (_sqlite3VdbeMakeLabel($13)|0); + HEAP32[$iLabel>>2] = $14; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 44|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = $18 & 32; + $20 = ($19|0)==(0); + $21 = $20 ? 67 : 65; + $22 = $21&255; + HEAP8[$opSeek>>0] = $22; + $23 = HEAP8[$9>>0]|0; + $24 = ($23<<24>>24)!=(0); + if (!($24)) { + $25 = HEAP32[$v>>2]|0; + $26 = HEAP8[$opSeek>>0]|0; + $27 = $26&255; + $28 = HEAP32[$3>>2]|0; + $29 = HEAP32[$iLabel>>2]|0; + $30 = HEAP32[$5>>2]|0; + $31 = HEAP16[$6>>1]|0; + $32 = $31 << 16 >> 16; + (_sqlite3VdbeAddOp4Int($25,$27,$28,$29,$30,$32)|0); + } + $33 = HEAP32[$0>>2]|0; + $34 = HEAP32[$1>>2]|0; + $35 = (_sqlite3FkRequired($33,$34,0,0)|0); + $36 = ($35|0)!=(0); + if ($36) { + label = 5; + } else { + $37 = HEAP32[$2>>2]|0; + $38 = ($37|0)!=(0|0); + if ($38) { + label = 5; + } + } + if ((label|0) == 5) { + $39 = HEAP32[$0>>2]|0; + $40 = HEAP32[$2>>2]|0; + $41 = HEAP32[$1>>2]|0; + $42 = HEAP8[$8>>0]|0; + $43 = $42&255; + $44 = (_sqlite3TriggerColmask($39,$40,0,0,3,$41,$43)|0); + HEAP32[$mask>>2] = $44; + $45 = HEAP32[$0>>2]|0; + $46 = HEAP32[$1>>2]|0; + $47 = (_sqlite3FkOldmask($45,$46)|0); + $48 = HEAP32[$mask>>2]|0; + $49 = $48 | $47; + HEAP32[$mask>>2] = $49; + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 72|0); + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + 1)|0; + HEAP32[$iOld>>2] = $53; + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 38|0); + $56 = HEAP16[$55>>1]|0; + $57 = $56 << 16 >> 16; + $58 = (1 + ($57))|0; + $59 = HEAP32[$0>>2]|0; + $60 = (($59) + 72|0); + $61 = HEAP32[$60>>2]|0; + $62 = (($61) + ($58))|0; + HEAP32[$60>>2] = $62; + $63 = HEAP32[$v>>2]|0; + $64 = HEAP32[$5>>2]|0; + $65 = HEAP32[$iOld>>2]|0; + (_sqlite3VdbeAddOp2($63,33,$64,$65)|0); + HEAP32[$iCol>>2] = 0; + while(1) { + $66 = HEAP32[$iCol>>2]|0; + $67 = HEAP32[$1>>2]|0; + $68 = (($67) + 38|0); + $69 = HEAP16[$68>>1]|0; + $70 = $69 << 16 >> 16; + $71 = ($66|0)<($70|0); + if (!($71)) { + break; + } + $72 = HEAP32[$mask>>2]|0; + $73 = ($72|0)==(-1); + if ($73) { + label = 10; + } else { + $74 = HEAP32[$iCol>>2]|0; + $75 = ($74|0)<=(31); + if ($75) { + $76 = HEAP32[$mask>>2]|0; + $77 = HEAP32[$iCol>>2]|0; + $78 = 1 << $77; + $79 = $76 & $78; + $80 = ($79|0)!=(0); + if ($80) { + label = 10; + } + } + } + if ((label|0) == 10) { + label = 0; + $81 = HEAP32[$v>>2]|0; + $82 = HEAP32[$1>>2]|0; + $83 = HEAP32[$3>>2]|0; + $84 = HEAP32[$iCol>>2]|0; + $85 = HEAP32[$iOld>>2]|0; + $86 = HEAP32[$iCol>>2]|0; + $87 = (($85) + ($86))|0; + $88 = (($87) + 1)|0; + _sqlite3ExprCodeGetColumnOfTable($81,$82,$83,$84,$88); + } + $89 = HEAP32[$iCol>>2]|0; + $90 = (($89) + 1)|0; + HEAP32[$iCol>>2] = $90; + } + $91 = HEAP32[$v>>2]|0; + $92 = (_sqlite3VdbeCurrentAddr($91)|0); + HEAP32[$addrStart>>2] = $92; + $93 = HEAP32[$0>>2]|0; + $94 = HEAP32[$2>>2]|0; + $95 = HEAP32[$1>>2]|0; + $96 = HEAP32[$iOld>>2]|0; + $97 = HEAP8[$8>>0]|0; + $98 = $97&255; + $99 = HEAP32[$iLabel>>2]|0; + _sqlite3CodeRowTrigger($93,$94,109,0,1,$95,$96,$98,$99); + $100 = HEAP32[$addrStart>>2]|0; + $101 = HEAP32[$v>>2]|0; + $102 = (_sqlite3VdbeCurrentAddr($101)|0); + $103 = ($100|0)<($102|0); + if ($103) { + $104 = HEAP32[$v>>2]|0; + $105 = HEAP8[$opSeek>>0]|0; + $106 = $105&255; + $107 = HEAP32[$3>>2]|0; + $108 = HEAP32[$iLabel>>2]|0; + $109 = HEAP32[$5>>2]|0; + $110 = HEAP16[$6>>1]|0; + $111 = $110 << 16 >> 16; + (_sqlite3VdbeAddOp4Int($104,$106,$107,$108,$109,$111)|0); + } + $112 = HEAP32[$0>>2]|0; + $113 = HEAP32[$1>>2]|0; + $114 = HEAP32[$iOld>>2]|0; + _sqlite3FkCheck($112,$113,$114,0,0,0); + } + $115 = HEAP32[$1>>2]|0; + $116 = (($115) + 12|0); + $117 = HEAP32[$116>>2]|0; + $118 = ($117|0)==(0|0); + if (!($118)) { + $134 = HEAP32[$0>>2]|0; + $135 = HEAP32[$1>>2]|0; + $136 = HEAP32[$iOld>>2]|0; + _sqlite3FkActions($134,$135,0,$136,0,0); + $137 = HEAP32[$0>>2]|0; + $138 = HEAP32[$2>>2]|0; + $139 = HEAP32[$1>>2]|0; + $140 = HEAP32[$iOld>>2]|0; + $141 = HEAP8[$8>>0]|0; + $142 = $141&255; + $143 = HEAP32[$iLabel>>2]|0; + _sqlite3CodeRowTrigger($137,$138,109,0,2,$139,$140,$142,$143); + $144 = HEAP32[$v>>2]|0; + $145 = HEAP32[$iLabel>>2]|0; + _sqlite3VdbeResolveLabel($144,$145); + STACKTOP = sp;return; + } + $119 = HEAP32[$0>>2]|0; + $120 = HEAP32[$1>>2]|0; + $121 = HEAP32[$3>>2]|0; + $122 = HEAP32[$4>>2]|0; + _sqlite3GenerateRowIndexDelete($119,$120,$121,$122,0); + $123 = HEAP32[$v>>2]|0; + $124 = HEAP32[$3>>2]|0; + $125 = HEAP8[$7>>0]|0; + $126 = $125&255; + $127 = ($126|0)!=(0); + $128 = $127 ? 1 : 0; + (_sqlite3VdbeAddOp2($123,74,$124,$128)|0); + $129 = HEAP8[$7>>0]|0; + $130 = ($129<<24>>24)!=(0); + if (!($130)) { + $134 = HEAP32[$0>>2]|0; + $135 = HEAP32[$1>>2]|0; + $136 = HEAP32[$iOld>>2]|0; + _sqlite3FkActions($134,$135,0,$136,0,0); + $137 = HEAP32[$0>>2]|0; + $138 = HEAP32[$2>>2]|0; + $139 = HEAP32[$1>>2]|0; + $140 = HEAP32[$iOld>>2]|0; + $141 = HEAP8[$8>>0]|0; + $142 = $141&255; + $143 = HEAP32[$iLabel>>2]|0; + _sqlite3CodeRowTrigger($137,$138,109,0,2,$139,$140,$142,$143); + $144 = HEAP32[$v>>2]|0; + $145 = HEAP32[$iLabel>>2]|0; + _sqlite3VdbeResolveLabel($144,$145); + STACKTOP = sp;return; + } + $131 = HEAP32[$v>>2]|0; + $132 = HEAP32[$1>>2]|0; + $133 = HEAP32[$132>>2]|0; + _sqlite3VdbeChangeP4($131,-1,$133,0); + $134 = HEAP32[$0>>2]|0; + $135 = HEAP32[$1>>2]|0; + $136 = HEAP32[$iOld>>2]|0; + _sqlite3FkActions($134,$135,0,$136,0,0); + $137 = HEAP32[$0>>2]|0; + $138 = HEAP32[$2>>2]|0; + $139 = HEAP32[$1>>2]|0; + $140 = HEAP32[$iOld>>2]|0; + $141 = HEAP8[$8>>0]|0; + $142 = $141&255; + $143 = HEAP32[$iLabel>>2]|0; + _sqlite3CodeRowTrigger($137,$138,109,0,2,$139,$140,$142,$143); + $144 = HEAP32[$v>>2]|0; + $145 = HEAP32[$iLabel>>2]|0; + _sqlite3VdbeResolveLabel($144,$145); + STACKTOP = sp;return; +} +function _sqlite3GenerateRowIndexDelete($pParse,$pTab,$iDataCur,$iIdxCur,$aRegIdx) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $iDataCur = $iDataCur|0; + $iIdxCur = $iIdxCur|0; + $aRegIdx = $aRegIdx|0; + var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $iPartIdxLabel = 0, $pIdx = 0, $pPk = 0, $pPrior = 0, $r1 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $4 = sp + 28|0; + $i = sp + 24|0; + $r1 = sp + 20|0; + $iPartIdxLabel = sp + 12|0; + $pIdx = sp + 8|0; + $pPrior = sp + 4|0; + $v = sp; + $pPk = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $iDataCur; + HEAP32[$3>>2] = $iIdxCur; + HEAP32[$4>>2] = $aRegIdx; + HEAP32[$r1>>2] = -1; + HEAP32[$pPrior>>2] = 0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 8|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$v>>2] = $7; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 44|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = $11 & 32; + $13 = ($12|0)==(0); + if ($13) { + $16 = 0; + } else { + $14 = HEAP32[$1>>2]|0; + $15 = (_sqlite3PrimaryKeyIndex($14)|0); + $16 = $15; + } + HEAP32[$pPk>>2] = $16; + HEAP32[$i>>2] = 0; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 8|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$pIdx>>2] = $19; + while(1) { + $20 = HEAP32[$pIdx>>2]|0; + $21 = ($20|0)!=(0|0); + if (!($21)) { + break; + } + $22 = HEAP32[$4>>2]|0; + $23 = ($22|0)!=(0|0); + if ($23) { + $24 = HEAP32[$i>>2]|0; + $25 = HEAP32[$4>>2]|0; + $26 = (($25) + ($24<<2)|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)==(0); + if (!($28)) { + label = 7; + } + } else { + label = 7; + } + if ((label|0) == 7) { + label = 0; + $29 = HEAP32[$pIdx>>2]|0; + $30 = HEAP32[$pPk>>2]|0; + $31 = ($29|0)==($30|0); + if (!($31)) { + $32 = HEAP32[$0>>2]|0; + $33 = HEAP32[$pIdx>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = HEAP32[$pPrior>>2]|0; + $36 = HEAP32[$r1>>2]|0; + $37 = (_sqlite3GenerateIndexKey($32,$33,$34,0,1,$iPartIdxLabel,$35,$36)|0); + HEAP32[$r1>>2] = $37; + $38 = HEAP32[$v>>2]|0; + $39 = HEAP32[$3>>2]|0; + $40 = HEAP32[$i>>2]|0; + $41 = (($39) + ($40))|0; + $42 = HEAP32[$r1>>2]|0; + $43 = HEAP32[$pIdx>>2]|0; + $44 = (($43) + 55|0); + $45 = HEAP8[$44>>0]|0; + $46 = ($45&255) >>> 3; + $47 = $46 & 1; + $48 = $47&255; + $49 = ($48|0)!=(0); + $50 = HEAP32[$pIdx>>2]|0; + if ($49) { + $51 = (($50) + 50|0); + $52 = HEAP16[$51>>1]|0; + $$sink = $52; + } else { + $53 = (($50) + 52|0); + $54 = HEAP16[$53>>1]|0; + $$sink = $54; + } + $55 = $$sink&65535; + (_sqlite3VdbeAddOp3($38,108,$41,$42,$55)|0); + $56 = HEAP32[$0>>2]|0; + $57 = HEAP32[$iPartIdxLabel>>2]|0; + _sqlite3ResolvePartIdxLabel($56,$57); + $58 = HEAP32[$pIdx>>2]|0; + HEAP32[$pPrior>>2] = $58; + } + } + $59 = HEAP32[$i>>2]|0; + $60 = (($59) + 1)|0; + HEAP32[$i>>2] = $60; + $61 = HEAP32[$pIdx>>2]|0; + $62 = (($61) + 20|0); + $63 = HEAP32[$62>>2]|0; + HEAP32[$pIdx>>2] = $63; + } + STACKTOP = sp;return; +} +function _sqlite3TriggerColmask($pParse,$pTrigger,$pChanges,$isNew,$tr_tm,$pTab,$orconf) { + $pParse = $pParse|0; + $pTrigger = $pTrigger|0; + $pChanges = $pChanges|0; + $isNew = $isNew|0; + $tr_tm = $tr_tm|0; + $pTab = $pTab|0; + $orconf = $orconf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $mask = 0, $op = 0, $p = 0, $pPrg = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $5 = sp + 20|0; + $6 = sp + 12|0; + $op = sp + 8|0; + $mask = sp + 4|0; + $p = sp; + $pPrg = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTrigger; + HEAP32[$2>>2] = $pChanges; + HEAP32[$3>>2] = $isNew; + HEAP32[$4>>2] = $tr_tm; + HEAP32[$5>>2] = $pTab; + HEAP32[$6>>2] = $orconf; + $7 = HEAP32[$2>>2]|0; + $8 = ($7|0)!=(0|0); + $9 = $8 ? 110 : 109; + HEAP32[$op>>2] = $9; + HEAP32[$mask>>2] = 0; + $10 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $10; + while(1) { + $11 = HEAP32[$p>>2]|0; + $12 = ($11|0)!=(0|0); + if (!($12)) { + break; + } + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 8|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = HEAP32[$op>>2]|0; + $18 = ($16|0)==($17|0); + if ($18) { + $19 = HEAP32[$4>>2]|0; + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 9|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = $19 & $23; + $25 = ($24|0)!=(0); + if ($25) { + $26 = HEAP32[$p>>2]|0; + $27 = (($26) + 16|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$2>>2]|0; + $30 = (_checkColumnOverlap($28,$29)|0); + $31 = ($30|0)!=(0); + if ($31) { + $32 = HEAP32[$0>>2]|0; + $33 = HEAP32[$p>>2]|0; + $34 = HEAP32[$5>>2]|0; + $35 = HEAP32[$6>>2]|0; + $36 = (_getRowTrigger($32,$33,$34,$35)|0); + HEAP32[$pPrg>>2] = $36; + $37 = HEAP32[$pPrg>>2]|0; + $38 = ($37|0)!=(0|0); + if ($38) { + $39 = HEAP32[$3>>2]|0; + $40 = HEAP32[$pPrg>>2]|0; + $41 = (($40) + 16|0); + $42 = (($41) + ($39<<2)|0); + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$mask>>2]|0; + $45 = $44 | $43; + HEAP32[$mask>>2] = $45; + } + } + } + } + $46 = HEAP32[$p>>2]|0; + $47 = (($46) + 32|0); + $48 = HEAP32[$47>>2]|0; + HEAP32[$p>>2] = $48; + } + $49 = HEAP32[$mask>>2]|0; + STACKTOP = sp;return ($49|0); +} +function _sqlite3FkOldmask($pParse,$pTab) { + $pParse = $pParse|0; + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $8 = 0, $9 = 0, $i = 0, $mask = 0; + var $p = 0, $pIdx = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $mask = sp + 4|0; + $p = sp + 8|0; + $i = sp + 12|0; + $pIdx = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$mask>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 24|0); + $5 = HEAP32[$4>>2]|0; + $6 = $5 & 524288; + $7 = ($6|0)!=(0); + if (!($7)) { + $77 = HEAP32[$mask>>2]|0; + STACKTOP = sp;return ($77|0); + } + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 16|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$p>>2] = $10; + while(1) { + $11 = HEAP32[$p>>2]|0; + $12 = ($11|0)!=(0|0); + if (!($12)) { + break; + } + HEAP32[$i>>2] = 0; + while(1) { + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 20|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($13|0)<($16|0); + if (!($17)) { + break; + } + $18 = HEAP32[$i>>2]|0; + $19 = HEAP32[$p>>2]|0; + $20 = (($19) + 36|0); + $21 = (($20) + ($18<<3)|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)>(31); + if ($23) { + $32 = -1; + } else { + $24 = HEAP32[$i>>2]|0; + $25 = HEAP32[$p>>2]|0; + $26 = (($25) + 36|0); + $27 = (($26) + ($24<<3)|0); + $28 = HEAP32[$27>>2]|0; + $29 = 1 << $28; + $32 = $29; + } + $30 = HEAP32[$mask>>2]|0; + $31 = $30 | $32; + HEAP32[$mask>>2] = $31; + $33 = HEAP32[$i>>2]|0; + $34 = (($33) + 1)|0; + HEAP32[$i>>2] = $34; + } + $35 = HEAP32[$p>>2]|0; + $36 = (($35) + 4|0); + $37 = HEAP32[$36>>2]|0; + HEAP32[$p>>2] = $37; + } + $38 = HEAP32[$1>>2]|0; + $39 = (_sqlite3FkReferences($38)|0); + HEAP32[$p>>2] = $39; + while(1) { + $40 = HEAP32[$p>>2]|0; + $41 = ($40|0)!=(0|0); + if (!($41)) { + break; + } + HEAP32[$pIdx>>2] = 0; + $42 = HEAP32[$0>>2]|0; + $43 = HEAP32[$1>>2]|0; + $44 = HEAP32[$p>>2]|0; + (_sqlite3FkLocateIndex($42,$43,$44,$pIdx,0)|0); + $45 = HEAP32[$pIdx>>2]|0; + $46 = ($45|0)!=(0|0); + L18: do { + if ($46) { + HEAP32[$i>>2] = 0; + while(1) { + $47 = HEAP32[$i>>2]|0; + $48 = HEAP32[$pIdx>>2]|0; + $49 = (($48) + 50|0); + $50 = HEAP16[$49>>1]|0; + $51 = $50&65535; + $52 = ($47|0)<($51|0); + if (!($52)) { + break L18; + } + $53 = HEAP32[$i>>2]|0; + $54 = HEAP32[$pIdx>>2]|0; + $55 = (($54) + 4|0); + $56 = HEAP32[$55>>2]|0; + $57 = (($56) + ($53<<1)|0); + $58 = HEAP16[$57>>1]|0; + $59 = $58 << 16 >> 16; + $60 = ($59|0)>(31); + if ($60) { + $71 = -1; + } else { + $61 = HEAP32[$i>>2]|0; + $62 = HEAP32[$pIdx>>2]|0; + $63 = (($62) + 4|0); + $64 = HEAP32[$63>>2]|0; + $65 = (($64) + ($61<<1)|0); + $66 = HEAP16[$65>>1]|0; + $67 = $66 << 16 >> 16; + $68 = 1 << $67; + $71 = $68; + } + $69 = HEAP32[$mask>>2]|0; + $70 = $69 | $71; + HEAP32[$mask>>2] = $70; + $72 = HEAP32[$i>>2]|0; + $73 = (($72) + 1)|0; + HEAP32[$i>>2] = $73; + } + } + } while(0); + $74 = HEAP32[$p>>2]|0; + $75 = (($74) + 12|0); + $76 = HEAP32[$75>>2]|0; + HEAP32[$p>>2] = $76; + } + $77 = HEAP32[$mask>>2]|0; + STACKTOP = sp;return ($77|0); +} +function _sqlite3FkActions($pParse,$pTab,$pChanges,$regOld,$aChange,$bChngRowid) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $pChanges = $pChanges|0; + $regOld = $regOld|0; + $aChange = $aChange|0; + $bChngRowid = $bChngRowid|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pAct = 0, $pFKey = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $5 = sp + 16|0; + $pFKey = sp + 20|0; + $pAct = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $pChanges; + HEAP32[$3>>2] = $regOld; + HEAP32[$4>>2] = $aChange; + HEAP32[$5>>2] = $bChngRowid; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = (($7) + 24|0); + $9 = HEAP32[$8>>2]|0; + $10 = $9 & 524288; + $11 = ($10|0)!=(0); + if (!($11)) { + STACKTOP = sp;return; + } + $12 = HEAP32[$1>>2]|0; + $13 = (_sqlite3FkReferences($12)|0); + HEAP32[$pFKey>>2] = $13; + while(1) { + $14 = HEAP32[$pFKey>>2]|0; + $15 = ($14|0)!=(0|0); + if (!($15)) { + break; + } + $16 = HEAP32[$4>>2]|0; + $17 = ($16|0)==(0|0); + if ($17) { + label = 6; + } else { + $18 = HEAP32[$1>>2]|0; + $19 = HEAP32[$pFKey>>2]|0; + $20 = HEAP32[$4>>2]|0; + $21 = HEAP32[$5>>2]|0; + $22 = (_fkParentIsModified($18,$19,$20,$21)|0); + $23 = ($22|0)!=(0); + if ($23) { + label = 6; + } + } + if ((label|0) == 6) { + label = 0; + $24 = HEAP32[$0>>2]|0; + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$pFKey>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = (_fkActionTrigger($24,$25,$26,$27)|0); + HEAP32[$pAct>>2] = $28; + $29 = HEAP32[$pAct>>2]|0; + $30 = ($29|0)!=(0|0); + if ($30) { + $31 = HEAP32[$0>>2]|0; + $32 = HEAP32[$pAct>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = HEAP32[$3>>2]|0; + _sqlite3CodeRowTriggerDirect($31,$32,$33,$34,2,0); + } + } + $35 = HEAP32[$pFKey>>2]|0; + $36 = (($35) + 12|0); + $37 = HEAP32[$36>>2]|0; + HEAP32[$pFKey>>2] = $37; + } + STACKTOP = sp;return; +} +function _fkActionTrigger($pParse,$pTab,$pFKey,$pChanges) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $pFKey = $pFKey|0; + $pChanges = $pChanges|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $action = 0, $aiCol = 0, $db = 0, $enableLookaside = 0, $i = 0, $iAction = 0, $iFromCol = 0, $nFrom = 0, $pDflt = 0, $pEq = 0, $pIdx = 0, $pList = 0, $pNew = 0, $pRaise = 0, $pSelect = 0, $pStep = 0, $pTrigger = 0, $pWhen = 0, $pWhere = 0; + var $tFrom = 0, $tFromCol = 0, $tNew = 0, $tOld = 0, $tToCol = 0, $zFrom = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; + $0 = sp + 120|0; + $1 = sp + 108|0; + $2 = sp + 112|0; + $3 = sp + 116|0; + $4 = sp + 124|0; + $db = sp + 128|0; + $action = sp + 132|0; + $pTrigger = sp + 136|0; + $iAction = sp + 140|0; + $enableLookaside = sp + 144|0; + $zFrom = sp + 104|0; + $nFrom = sp + 100|0; + $pIdx = sp + 96|0; + $aiCol = sp + 92|0; + $pStep = sp + 88|0; + $pWhere = sp + 84|0; + $pList = sp + 32|0; + $pSelect = sp; + $i = sp + 4|0; + $pWhen = sp + 8|0; + $tOld = sp + 16|0; + $tNew = sp + 24|0; + $tFromCol = sp + 40|0; + $tToCol = sp + 48|0; + $iFromCol = sp + 56|0; + $pEq = sp + 60|0; + $pNew = sp + 64|0; + $pDflt = sp + 68|0; + $tFrom = sp + 72|0; + $pRaise = sp + 80|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pTab; + HEAP32[$3>>2] = $pFKey; + HEAP32[$4>>2] = $pChanges; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$db>>2] = $6; + $7 = HEAP32[$4>>2]|0; + $8 = ($7|0)!=(0|0); + $9 = $8&1; + HEAP32[$iAction>>2] = $9; + $10 = HEAP32[$iAction>>2]|0; + $11 = HEAP32[$3>>2]|0; + $12 = (($11) + 25|0); + $13 = (($12) + ($10)|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + HEAP32[$action>>2] = $15; + $16 = HEAP32[$iAction>>2]|0; + $17 = HEAP32[$3>>2]|0; + $18 = (($17) + 28|0); + $19 = (($18) + ($16<<2)|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$pTrigger>>2] = $20; + $21 = HEAP32[$action>>2]|0; + $22 = ($21|0)!=(0); + if ($22) { + $23 = HEAP32[$pTrigger>>2]|0; + $24 = ($23|0)!=(0|0); + if (!($24)) { + HEAP32[$pIdx>>2] = 0; + HEAP32[$aiCol>>2] = 0; + HEAP32[$pStep>>2] = 0; + HEAP32[$pWhere>>2] = 0; + HEAP32[$pList>>2] = 0; + HEAP32[$pSelect>>2] = 0; + HEAP32[$pWhen>>2] = 0; + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$2>>2]|0; + $27 = HEAP32[$3>>2]|0; + $28 = (_sqlite3FkLocateIndex($25,$26,$27,$pIdx,$aiCol)|0); + $29 = ($28|0)!=(0); + if ($29) { + HEAP32[$0>>2] = 0; + $280 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($280|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $30 = HEAP32[$i>>2]|0; + $31 = HEAP32[$3>>2]|0; + $32 = (($31) + 20|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($30|0)<($33|0); + if (!($34)) { + break; + } + ;HEAP32[$tOld+0>>2]=HEAP32[30832+0>>2]|0;HEAP32[$tOld+4>>2]=HEAP32[30832+4>>2]|0; + ;HEAP32[$tNew+0>>2]=HEAP32[30840+0>>2]|0;HEAP32[$tNew+4>>2]=HEAP32[30840+4>>2]|0; + $35 = HEAP32[$aiCol>>2]|0; + $36 = ($35|0)!=(0|0); + if ($36) { + $37 = HEAP32[$i>>2]|0; + $38 = HEAP32[$aiCol>>2]|0; + $39 = (($38) + ($37<<2)|0); + $40 = HEAP32[$39>>2]|0; + $44 = $40; + } else { + $41 = HEAP32[$3>>2]|0; + $42 = (($41) + 36|0); + $43 = HEAP32[$42>>2]|0; + $44 = $43; + } + HEAP32[$iFromCol>>2] = $44; + $45 = HEAP32[$pIdx>>2]|0; + $46 = ($45|0)!=(0|0); + if ($46) { + $47 = HEAP32[$i>>2]|0; + $48 = HEAP32[$pIdx>>2]|0; + $49 = (($48) + 4|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + ($47<<1)|0); + $52 = HEAP16[$51>>1]|0; + $53 = $52 << 16 >> 16; + $54 = HEAP32[$2>>2]|0; + $55 = (($54) + 4|0); + $56 = HEAP32[$55>>2]|0; + $57 = (($56) + (($53*24)|0)|0); + $58 = HEAP32[$57>>2]|0; + $59 = $58; + } else { + $59 = 30848; + } + HEAP32[$tToCol>>2] = $59; + $60 = HEAP32[$iFromCol>>2]|0; + $61 = HEAP32[$3>>2]|0; + $62 = HEAP32[$61>>2]|0; + $63 = (($62) + 4|0); + $64 = HEAP32[$63>>2]|0; + $65 = (($64) + (($60*24)|0)|0); + $66 = HEAP32[$65>>2]|0; + HEAP32[$tFromCol>>2] = $66; + $67 = HEAP32[$tToCol>>2]|0; + $68 = (_sqlite3Strlen30($67)|0); + $69 = (($tToCol) + 4|0); + HEAP32[$69>>2] = $68; + $70 = HEAP32[$tFromCol>>2]|0; + $71 = (_sqlite3Strlen30($70)|0); + $72 = (($tFromCol) + 4|0); + HEAP32[$72>>2] = $71; + $73 = HEAP32[$1>>2]|0; + $74 = HEAP32[$1>>2]|0; + $75 = HEAP32[$1>>2]|0; + $76 = (_sqlite3PExpr($75,27,0,0,$tOld)|0); + $77 = HEAP32[$1>>2]|0; + $78 = (_sqlite3PExpr($77,27,0,0,$tToCol)|0); + $79 = (_sqlite3PExpr($74,122,$76,$78,0)|0); + $80 = HEAP32[$1>>2]|0; + $81 = (_sqlite3PExpr($80,27,0,0,$tFromCol)|0); + $82 = (_sqlite3PExpr($73,79,$79,$81,0)|0); + HEAP32[$pEq>>2] = $82; + $83 = HEAP32[$db>>2]|0; + $84 = HEAP32[$pWhere>>2]|0; + $85 = HEAP32[$pEq>>2]|0; + $86 = (_sqlite3ExprAnd($83,$84,$85)|0); + HEAP32[$pWhere>>2] = $86; + $87 = HEAP32[$4>>2]|0; + $88 = ($87|0)!=(0|0); + if ($88) { + $89 = HEAP32[$1>>2]|0; + $90 = HEAP32[$1>>2]|0; + $91 = HEAP32[$1>>2]|0; + $92 = (_sqlite3PExpr($91,27,0,0,$tOld)|0); + $93 = HEAP32[$1>>2]|0; + $94 = (_sqlite3PExpr($93,27,0,0,$tToCol)|0); + $95 = (_sqlite3PExpr($90,122,$92,$94,0)|0); + $96 = HEAP32[$1>>2]|0; + $97 = HEAP32[$1>>2]|0; + $98 = (_sqlite3PExpr($97,27,0,0,$tNew)|0); + $99 = HEAP32[$1>>2]|0; + $100 = (_sqlite3PExpr($99,27,0,0,$tToCol)|0); + $101 = (_sqlite3PExpr($96,122,$98,$100,0)|0); + $102 = (_sqlite3PExpr($89,73,$95,$101,0)|0); + HEAP32[$pEq>>2] = $102; + $103 = HEAP32[$db>>2]|0; + $104 = HEAP32[$pWhen>>2]|0; + $105 = HEAP32[$pEq>>2]|0; + $106 = (_sqlite3ExprAnd($103,$104,$105)|0); + HEAP32[$pWhen>>2] = $106; + } + $107 = HEAP32[$action>>2]|0; + $108 = ($107|0)!=(6); + do { + if ($108) { + $109 = HEAP32[$action>>2]|0; + $110 = ($109|0)!=(9); + if (!($110)) { + $111 = HEAP32[$4>>2]|0; + $112 = ($111|0)!=(0|0); + if (!($112)) { + break; + } + } + $113 = HEAP32[$action>>2]|0; + $114 = ($113|0)==(9); + do { + if ($114) { + $115 = HEAP32[$1>>2]|0; + $116 = HEAP32[$1>>2]|0; + $117 = (_sqlite3PExpr($116,27,0,0,$tNew)|0); + $118 = HEAP32[$1>>2]|0; + $119 = (_sqlite3PExpr($118,27,0,0,$tToCol)|0); + $120 = (_sqlite3PExpr($115,122,$117,$119,0)|0); + HEAP32[$pNew>>2] = $120; + } else { + $121 = HEAP32[$action>>2]|0; + $122 = ($121|0)==(8); + if (!($122)) { + $138 = HEAP32[$1>>2]|0; + $139 = (_sqlite3PExpr($138,101,0,0,0)|0); + HEAP32[$pNew>>2] = $139; + break; + } + $123 = HEAP32[$iFromCol>>2]|0; + $124 = HEAP32[$3>>2]|0; + $125 = HEAP32[$124>>2]|0; + $126 = (($125) + 4|0); + $127 = HEAP32[$126>>2]|0; + $128 = (($127) + (($123*24)|0)|0); + $129 = (($128) + 4|0); + $130 = HEAP32[$129>>2]|0; + HEAP32[$pDflt>>2] = $130; + $131 = HEAP32[$pDflt>>2]|0; + $132 = ($131|0)!=(0|0); + if ($132) { + $133 = HEAP32[$db>>2]|0; + $134 = HEAP32[$pDflt>>2]|0; + $135 = (_sqlite3ExprDup($133,$134,0)|0); + HEAP32[$pNew>>2] = $135; + break; + } else { + $136 = HEAP32[$1>>2]|0; + $137 = (_sqlite3PExpr($136,101,0,0,0)|0); + HEAP32[$pNew>>2] = $137; + break; + } + } + } while(0); + $140 = HEAP32[$1>>2]|0; + $141 = HEAP32[$pList>>2]|0; + $142 = HEAP32[$pNew>>2]|0; + $143 = (_sqlite3ExprListAppend($140,$141,$142)|0); + HEAP32[$pList>>2] = $143; + $144 = HEAP32[$1>>2]|0; + $145 = HEAP32[$pList>>2]|0; + _sqlite3ExprListSetName($144,$145,$tFromCol,0); + } + } while(0); + $146 = HEAP32[$i>>2]|0; + $147 = (($146) + 1)|0; + HEAP32[$i>>2] = $147; + } + $148 = HEAP32[$db>>2]|0; + $149 = HEAP32[$aiCol>>2]|0; + _sqlite3DbFree($148,$149); + $150 = HEAP32[$3>>2]|0; + $151 = HEAP32[$150>>2]|0; + $152 = HEAP32[$151>>2]|0; + HEAP32[$zFrom>>2] = $152; + $153 = HEAP32[$zFrom>>2]|0; + $154 = (_sqlite3Strlen30($153)|0); + HEAP32[$nFrom>>2] = $154; + $155 = HEAP32[$action>>2]|0; + $156 = ($155|0)==(6); + if ($156) { + $157 = HEAP32[$zFrom>>2]|0; + HEAP32[$tFrom>>2] = $157; + $158 = HEAP32[$nFrom>>2]|0; + $159 = (($tFrom) + 4|0); + HEAP32[$159>>2] = $158; + $160 = HEAP32[$db>>2]|0; + $161 = (_sqlite3Expr($160,57,30856)|0); + HEAP32[$pRaise>>2] = $161; + $162 = HEAP32[$pRaise>>2]|0; + $163 = ($162|0)!=(0|0); + if ($163) { + $164 = HEAP32[$pRaise>>2]|0; + $165 = (($164) + 1|0); + HEAP8[$165>>0] = 2; + } + $166 = HEAP32[$1>>2]|0; + $167 = HEAP32[$1>>2]|0; + $168 = HEAP32[$pRaise>>2]|0; + $169 = (_sqlite3ExprListAppend($167,0,$168)|0); + $170 = HEAP32[$db>>2]|0; + $171 = (_sqlite3SrcListAppend($170,0,$tFrom,0)|0); + $172 = HEAP32[$pWhere>>2]|0; + $173 = (_sqlite3SelectNew($166,$169,$171,$172,0,0,0,0,0,0)|0); + HEAP32[$pSelect>>2] = $173; + HEAP32[$pWhere>>2] = 0; + } + $174 = HEAP32[$db>>2]|0; + $175 = (($174) + 240|0); + $176 = (($175) + 2|0); + $177 = HEAP8[$176>>0]|0; + HEAP8[$enableLookaside>>0] = $177; + $178 = HEAP32[$db>>2]|0; + $179 = (($178) + 240|0); + $180 = (($179) + 2|0); + HEAP8[$180>>0] = 0; + $181 = HEAP32[$db>>2]|0; + $182 = HEAP32[$nFrom>>2]|0; + $183 = (76 + ($182))|0; + $184 = (($183) + 1)|0; + $185 = (_sqlite3DbMallocZero($181,$184)|0); + HEAP32[$pTrigger>>2] = $185; + $186 = HEAP32[$pTrigger>>2]|0; + $187 = ($186|0)!=(0|0); + if ($187) { + $188 = HEAP32[$pTrigger>>2]|0; + $189 = (($188) + 36|0); + $190 = HEAP32[$pTrigger>>2]|0; + $191 = (($190) + 28|0); + HEAP32[$191>>2] = $189; + HEAP32[$pStep>>2] = $189; + $192 = HEAP32[$pStep>>2]|0; + $193 = (($192) + 40|0); + $194 = HEAP32[$pStep>>2]|0; + $195 = (($194) + 12|0); + HEAP32[$195>>2] = $193; + $196 = HEAP32[$nFrom>>2]|0; + $197 = HEAP32[$pStep>>2]|0; + $198 = (($197) + 12|0); + $199 = (($198) + 4|0); + HEAP32[$199>>2] = $196; + $200 = HEAP32[$pStep>>2]|0; + $201 = (($200) + 12|0); + $202 = HEAP32[$201>>2]|0; + $203 = HEAP32[$zFrom>>2]|0; + $204 = HEAP32[$nFrom>>2]|0; + _memcpy(($202|0),($203|0),($204|0))|0; + $205 = HEAP32[$db>>2]|0; + $206 = HEAP32[$pWhere>>2]|0; + $207 = (_sqlite3ExprDup($205,$206,1)|0); + $208 = HEAP32[$pStep>>2]|0; + $209 = (($208) + 20|0); + HEAP32[$209>>2] = $207; + $210 = HEAP32[$db>>2]|0; + $211 = HEAP32[$pList>>2]|0; + $212 = (_sqlite3ExprListDup($210,$211,1)|0); + $213 = HEAP32[$pStep>>2]|0; + $214 = (($213) + 24|0); + HEAP32[$214>>2] = $212; + $215 = HEAP32[$db>>2]|0; + $216 = HEAP32[$pSelect>>2]|0; + $217 = (_sqlite3SelectDup($215,$216,1)|0); + $218 = HEAP32[$pStep>>2]|0; + $219 = (($218) + 8|0); + HEAP32[$219>>2] = $217; + $220 = HEAP32[$pWhen>>2]|0; + $221 = ($220|0)!=(0|0); + if ($221) { + $222 = HEAP32[$1>>2]|0; + $223 = HEAP32[$pWhen>>2]|0; + $224 = (_sqlite3PExpr($222,19,$223,0,0)|0); + HEAP32[$pWhen>>2] = $224; + $225 = HEAP32[$db>>2]|0; + $226 = HEAP32[$pWhen>>2]|0; + $227 = (_sqlite3ExprDup($225,$226,1)|0); + $228 = HEAP32[$pTrigger>>2]|0; + $229 = (($228) + 12|0); + HEAP32[$229>>2] = $227; + } + } + $230 = HEAP8[$enableLookaside>>0]|0; + $231 = HEAP32[$db>>2]|0; + $232 = (($231) + 240|0); + $233 = (($232) + 2|0); + HEAP8[$233>>0] = $230; + $234 = HEAP32[$db>>2]|0; + $235 = HEAP32[$pWhere>>2]|0; + _sqlite3ExprDelete($234,$235); + $236 = HEAP32[$db>>2]|0; + $237 = HEAP32[$pWhen>>2]|0; + _sqlite3ExprDelete($236,$237); + $238 = HEAP32[$db>>2]|0; + $239 = HEAP32[$pList>>2]|0; + _sqlite3ExprListDelete($238,$239); + $240 = HEAP32[$db>>2]|0; + $241 = HEAP32[$pSelect>>2]|0; + _sqlite3SelectDelete($240,$241); + $242 = HEAP32[$db>>2]|0; + $243 = (($242) + 64|0); + $244 = HEAP8[$243>>0]|0; + $245 = $244&255; + $246 = ($245|0)==(1); + if ($246) { + $247 = HEAP32[$db>>2]|0; + $248 = HEAP32[$pTrigger>>2]|0; + _fkTriggerDelete($247,$248); + HEAP32[$0>>2] = 0; + $280 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($280|0); + } + $249 = HEAP32[$action>>2]|0; + if ((($249|0) == 6)) { + $250 = HEAP32[$pStep>>2]|0; + HEAP8[$250>>0] = 119; + } else if ((($249|0) == 9)) { + $251 = HEAP32[$4>>2]|0; + $252 = ($251|0)!=(0|0); + if ($252) { + label = 39; + } else { + $253 = HEAP32[$pStep>>2]|0; + HEAP8[$253>>0] = 109; + } + } else { + label = 39; + } + if ((label|0) == 39) { + $254 = HEAP32[$pStep>>2]|0; + HEAP8[$254>>0] = 110; + } + $255 = HEAP32[$pTrigger>>2]|0; + $256 = HEAP32[$pStep>>2]|0; + $257 = (($256) + 4|0); + HEAP32[$257>>2] = $255; + $258 = HEAP32[$2>>2]|0; + $259 = (($258) + 68|0); + $260 = HEAP32[$259>>2]|0; + $261 = HEAP32[$pTrigger>>2]|0; + $262 = (($261) + 20|0); + HEAP32[$262>>2] = $260; + $263 = HEAP32[$2>>2]|0; + $264 = (($263) + 68|0); + $265 = HEAP32[$264>>2]|0; + $266 = HEAP32[$pTrigger>>2]|0; + $267 = (($266) + 24|0); + HEAP32[$267>>2] = $265; + $268 = HEAP32[$pTrigger>>2]|0; + $269 = HEAP32[$iAction>>2]|0; + $270 = HEAP32[$3>>2]|0; + $271 = (($270) + 28|0); + $272 = (($271) + ($269<<2)|0); + HEAP32[$272>>2] = $268; + $273 = HEAP32[$4>>2]|0; + $274 = ($273|0)!=(0|0); + $275 = $274 ? 110 : 109; + $276 = $275&255; + $277 = HEAP32[$pTrigger>>2]|0; + $278 = (($277) + 8|0); + HEAP8[$278>>0] = $276; + } + } + $279 = HEAP32[$pTrigger>>2]|0; + HEAP32[$0>>2] = $279; + $280 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($280|0); +} +function _sqlite3CodeRowTriggerDirect($pParse,$p,$pTab,$reg,$orconf,$ignoreJump) { + $pParse = $pParse|0; + $p = $p|0; + $pTab = $pTab|0; + $reg = $reg|0; + $orconf = $orconf|0; + $ignoreJump = $ignoreJump|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $bRecursive = 0, $pPrg = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $4 = sp + 16|0; + $5 = sp + 8|0; + $v = sp + 4|0; + $pPrg = sp; + $bRecursive = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pTab; + HEAP32[$3>>2] = $reg; + HEAP32[$4>>2] = $orconf; + HEAP32[$5>>2] = $ignoreJump; + $6 = HEAP32[$0>>2]|0; + $7 = (_sqlite3GetVdbe($6)|0); + HEAP32[$v>>2] = $7; + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$4>>2]|0; + $12 = (_getRowTrigger($8,$9,$10,$11)|0); + HEAP32[$pPrg>>2] = $12; + $13 = HEAP32[$pPrg>>2]|0; + $14 = ($13|0)!=(0|0); + if (!($14)) { + STACKTOP = sp;return; + } + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + 24|0); + $21 = HEAP32[$20>>2]|0; + $22 = $21 & 262144; + $23 = (0)==($22|0); + $25 = $23; + } else { + $25 = 0; + } + $24 = $25&1; + HEAP32[$bRecursive>>2] = $24; + $26 = HEAP32[$v>>2]|0; + $27 = HEAP32[$3>>2]|0; + $28 = HEAP32[$5>>2]|0; + $29 = HEAP32[$0>>2]|0; + $30 = (($29) + 72|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + 1)|0; + HEAP32[$30>>2] = $32; + (_sqlite3VdbeAddOp3($26,128,$27,$28,$32)|0); + $33 = HEAP32[$v>>2]|0; + $34 = HEAP32[$pPrg>>2]|0; + $35 = (($34) + 8|0); + $36 = HEAP32[$35>>2]|0; + _sqlite3VdbeChangeP4($33,-1,$36,-18); + $37 = HEAP32[$v>>2]|0; + $38 = HEAP32[$bRecursive>>2]|0; + $39 = $38&255; + _sqlite3VdbeChangeP5($37,$39); + STACKTOP = sp;return; +} +function _getRowTrigger($pParse,$pTrigger,$pTab,$orconf) { + $pParse = $pParse|0; + $pTrigger = $pTrigger|0; + $pTab = $pTab|0; + $orconf = $orconf|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pPrg = 0, $pRoot = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pRoot = sp + 12|0; + $pPrg = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTrigger; + HEAP32[$2>>2] = $pTab; + HEAP32[$3>>2] = $orconf; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 408|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + $8 = HEAP32[$0>>2]|0; + if ($7) { + $9 = (($8) + 408|0); + $10 = HEAP32[$9>>2]|0; + $11 = $10; + } else { + $11 = $8; + } + HEAP32[$pRoot>>2] = $11; + $12 = HEAP32[$pRoot>>2]|0; + $13 = (($12) + 528|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$pPrg>>2] = $14; + while(1) { + $15 = HEAP32[$pPrg>>2]|0; + $16 = ($15|0)!=(0|0); + if (!($16)) { + break; + } + $17 = HEAP32[$pPrg>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = ($18|0)!=($19|0); + if (!($20)) { + $21 = HEAP32[$pPrg>>2]|0; + $22 = (($21) + 12|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$3>>2]|0; + $25 = ($23|0)!=($24|0); + if (!($25)) { + break; + } + } + $26 = HEAP32[$pPrg>>2]|0; + $27 = (($26) + 4|0); + $28 = HEAP32[$27>>2]|0; + HEAP32[$pPrg>>2] = $28; + } + $29 = HEAP32[$pPrg>>2]|0; + $30 = ($29|0)!=(0|0); + if ($30) { + $36 = HEAP32[$pPrg>>2]|0; + STACKTOP = sp;return ($36|0); + } + $31 = HEAP32[$0>>2]|0; + $32 = HEAP32[$1>>2]|0; + $33 = HEAP32[$2>>2]|0; + $34 = HEAP32[$3>>2]|0; + $35 = (_codeRowTrigger($31,$32,$33,$34)|0); + HEAP32[$pPrg>>2] = $35; + $36 = HEAP32[$pPrg>>2]|0; + STACKTOP = sp;return ($36|0); +} +function _codeRowTrigger($pParse,$pTrigger,$pTab,$orconf) { + $pParse = $pParse|0; + $pTrigger = $pTrigger|0; + $pTab = $pTab|0; + $orconf = $orconf|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $iEndTrigger = 0, $pPrg = 0, $pProgram = 0, $pSubParse = 0, $pTop = 0, $pWhen = 0, $sNC = 0, $v = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $vararg_buffer = sp; + $0 = sp + 80|0; + $1 = sp + 76|0; + $2 = sp + 72|0; + $3 = sp + 68|0; + $4 = sp + 64|0; + $pTop = sp + 60|0; + $db = sp + 84|0; + $pPrg = sp + 48|0; + $pWhen = sp + 44|0; + $v = sp + 40|0; + $sNC = sp + 8|0; + $pProgram = sp + 4|0; + $pSubParse = sp + 52|0; + $iEndTrigger = sp + 56|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pTrigger; + HEAP32[$3>>2] = $pTab; + HEAP32[$4>>2] = $orconf; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 408|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + $9 = HEAP32[$1>>2]|0; + if ($8) { + $10 = (($9) + 408|0); + $11 = HEAP32[$10>>2]|0; + $12 = $11; + } else { + $12 = $9; + } + HEAP32[$pTop>>2] = $12; + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$13>>2]|0; + HEAP32[$db>>2] = $14; + HEAP32[$pWhen>>2] = 0; + HEAP32[$pProgram>>2] = 0; + HEAP32[$iEndTrigger>>2] = 0; + $15 = HEAP32[$db>>2]|0; + $16 = (_sqlite3DbMallocZero($15,24)|0); + HEAP32[$pPrg>>2] = $16; + $17 = HEAP32[$pPrg>>2]|0; + $18 = ($17|0)!=(0|0); + if (!($18)) { + HEAP32[$0>>2] = 0; + $165 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($165|0); + } + $19 = HEAP32[$pTop>>2]|0; + $20 = (($19) + 528|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$pPrg>>2]|0; + $23 = (($22) + 4|0); + HEAP32[$23>>2] = $21; + $24 = HEAP32[$pPrg>>2]|0; + $25 = HEAP32[$pTop>>2]|0; + $26 = (($25) + 528|0); + HEAP32[$26>>2] = $24; + $27 = HEAP32[$db>>2]|0; + $28 = (_sqlite3DbMallocZero($27,28)|0); + HEAP32[$pProgram>>2] = $28; + $29 = HEAP32[$pPrg>>2]|0; + $30 = (($29) + 8|0); + HEAP32[$30>>2] = $28; + $31 = HEAP32[$pProgram>>2]|0; + $32 = ($31|0)!=(0|0); + if (!($32)) { + HEAP32[$0>>2] = 0; + $165 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($165|0); + } + $33 = HEAP32[$pTop>>2]|0; + $34 = (($33) + 8|0); + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$pProgram>>2]|0; + _sqlite3VdbeLinkSubProgram($35,$36); + $37 = HEAP32[$2>>2]|0; + $38 = HEAP32[$pPrg>>2]|0; + HEAP32[$38>>2] = $37; + $39 = HEAP32[$4>>2]|0; + $40 = HEAP32[$pPrg>>2]|0; + $41 = (($40) + 12|0); + HEAP32[$41>>2] = $39; + $42 = HEAP32[$pPrg>>2]|0; + $43 = (($42) + 16|0); + HEAP32[$43>>2] = -1; + $44 = HEAP32[$pPrg>>2]|0; + $45 = (($44) + 16|0); + $46 = (($45) + 4|0); + HEAP32[$46>>2] = -1; + $47 = HEAP32[$db>>2]|0; + $48 = (_sqlite3DbMallocZero($47,536)|0); + HEAP32[$pSubParse>>2] = $48; + $49 = HEAP32[$pSubParse>>2]|0; + $50 = ($49|0)!=(0|0); + if (!($50)) { + HEAP32[$0>>2] = 0; + $165 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($165|0); + } + ;HEAP32[$sNC+0>>2]=0|0;HEAP32[$sNC+4>>2]=0|0;HEAP32[$sNC+8>>2]=0|0;HEAP32[$sNC+12>>2]=0|0;HEAP32[$sNC+16>>2]=0|0;HEAP32[$sNC+20>>2]=0|0;HEAP32[$sNC+24>>2]=0|0;HEAP32[$sNC+28>>2]=0|0; + $51 = HEAP32[$pSubParse>>2]|0; + HEAP32[$sNC>>2] = $51; + $52 = HEAP32[$db>>2]|0; + $53 = HEAP32[$pSubParse>>2]|0; + HEAP32[$53>>2] = $52; + $54 = HEAP32[$3>>2]|0; + $55 = HEAP32[$pSubParse>>2]|0; + $56 = (($55) + 412|0); + HEAP32[$56>>2] = $54; + $57 = HEAP32[$pTop>>2]|0; + $58 = HEAP32[$pSubParse>>2]|0; + $59 = (($58) + 408|0); + HEAP32[$59>>2] = $57; + $60 = HEAP32[$2>>2]|0; + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$pSubParse>>2]|0; + $63 = (($62) + 492|0); + HEAP32[$63>>2] = $61; + $64 = HEAP32[$2>>2]|0; + $65 = (($64) + 8|0); + $66 = HEAP8[$65>>0]|0; + $67 = HEAP32[$pSubParse>>2]|0; + $68 = (($67) + 436|0); + HEAP8[$68>>0] = $66; + $69 = HEAP32[$1>>2]|0; + $70 = (($69) + 424|0); + $71 = HEAP32[$70>>2]|0; + $72 = HEAP32[$pSubParse>>2]|0; + $73 = (($72) + 424|0); + HEAP32[$73>>2] = $71; + $74 = HEAP32[$pSubParse>>2]|0; + $75 = (_sqlite3GetVdbe($74)|0); + HEAP32[$v>>2] = $75; + $76 = HEAP32[$v>>2]|0; + $77 = ($76|0)!=(0|0); + if ($77) { + $78 = HEAP32[$v>>2]|0; + $79 = HEAP32[$db>>2]|0; + $80 = HEAP32[$2>>2]|0; + $81 = HEAP32[$80>>2]|0; + HEAP32[$vararg_buffer>>2] = $81; + $82 = (_sqlite3MPrintf($79,30632,$vararg_buffer)|0); + _sqlite3VdbeChangeP4($78,-1,$82,-1); + $83 = HEAP32[$2>>2]|0; + $84 = (($83) + 12|0); + $85 = HEAP32[$84>>2]|0; + $86 = ($85|0)!=(0|0); + if ($86) { + $87 = HEAP32[$db>>2]|0; + $88 = HEAP32[$2>>2]|0; + $89 = (($88) + 12|0); + $90 = HEAP32[$89>>2]|0; + $91 = (_sqlite3ExprDup($87,$90,0)|0); + HEAP32[$pWhen>>2] = $91; + $92 = HEAP32[$pWhen>>2]|0; + $93 = (_sqlite3ResolveExprNames($sNC,$92)|0); + $94 = (0)==($93|0); + if ($94) { + $95 = HEAP32[$db>>2]|0; + $96 = (($95) + 64|0); + $97 = HEAP8[$96>>0]|0; + $98 = $97&255; + $99 = ($98|0)==(0); + if ($99) { + $100 = HEAP32[$v>>2]|0; + $101 = (_sqlite3VdbeMakeLabel($100)|0); + HEAP32[$iEndTrigger>>2] = $101; + $102 = HEAP32[$pSubParse>>2]|0; + $103 = HEAP32[$pWhen>>2]|0; + $104 = HEAP32[$iEndTrigger>>2]|0; + _sqlite3ExprIfFalse($102,$103,$104,8); + } + } + $105 = HEAP32[$db>>2]|0; + $106 = HEAP32[$pWhen>>2]|0; + _sqlite3ExprDelete($105,$106); + } + $107 = HEAP32[$pSubParse>>2]|0; + $108 = HEAP32[$2>>2]|0; + $109 = (($108) + 28|0); + $110 = HEAP32[$109>>2]|0; + $111 = HEAP32[$4>>2]|0; + (_codeTriggerProgram($107,$110,$111)|0); + $112 = HEAP32[$iEndTrigger>>2]|0; + $113 = ($112|0)!=(0); + if ($113) { + $114 = HEAP32[$v>>2]|0; + $115 = HEAP32[$iEndTrigger>>2]|0; + _sqlite3VdbeResolveLabel($114,$115); + } + $116 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp0($116,24)|0); + $117 = HEAP32[$1>>2]|0; + $118 = HEAP32[$pSubParse>>2]|0; + _transferParseError($117,$118); + $119 = HEAP32[$db>>2]|0; + $120 = (($119) + 64|0); + $121 = HEAP8[$120>>0]|0; + $122 = $121&255; + $123 = ($122|0)==(0); + if ($123) { + $124 = HEAP32[$v>>2]|0; + $125 = HEAP32[$pProgram>>2]|0; + $126 = (($125) + 4|0); + $127 = HEAP32[$pTop>>2]|0; + $128 = (($127) + 392|0); + $129 = (_sqlite3VdbeTakeOpArray($124,$126,$128)|0); + $130 = HEAP32[$pProgram>>2]|0; + HEAP32[$130>>2] = $129; + } + $131 = HEAP32[$pSubParse>>2]|0; + $132 = (($131) + 72|0); + $133 = HEAP32[$132>>2]|0; + $134 = HEAP32[$pProgram>>2]|0; + $135 = (($134) + 8|0); + HEAP32[$135>>2] = $133; + $136 = HEAP32[$pSubParse>>2]|0; + $137 = (($136) + 68|0); + $138 = HEAP32[$137>>2]|0; + $139 = HEAP32[$pProgram>>2]|0; + $140 = (($139) + 12|0); + HEAP32[$140>>2] = $138; + $141 = HEAP32[$pSubParse>>2]|0; + $142 = (($141) + 80|0); + $143 = HEAP32[$142>>2]|0; + $144 = HEAP32[$pProgram>>2]|0; + $145 = (($144) + 16|0); + HEAP32[$145>>2] = $143; + $146 = HEAP32[$2>>2]|0; + $147 = HEAP32[$pProgram>>2]|0; + $148 = (($147) + 20|0); + HEAP32[$148>>2] = $146; + $149 = HEAP32[$pSubParse>>2]|0; + $150 = (($149) + 428|0); + $151 = HEAP32[$150>>2]|0; + $152 = HEAP32[$pPrg>>2]|0; + $153 = (($152) + 16|0); + HEAP32[$153>>2] = $151; + $154 = HEAP32[$pSubParse>>2]|0; + $155 = (($154) + 432|0); + $156 = HEAP32[$155>>2]|0; + $157 = HEAP32[$pPrg>>2]|0; + $158 = (($157) + 16|0); + $159 = (($158) + 4|0); + HEAP32[$159>>2] = $156; + $160 = HEAP32[$v>>2]|0; + _sqlite3VdbeDelete($160); + } + $161 = HEAP32[$pSubParse>>2]|0; + _sqlite3ParserReset($161); + $162 = HEAP32[$db>>2]|0; + $163 = HEAP32[$pSubParse>>2]|0; + _sqlite3DbFree($162,$163); + $164 = HEAP32[$pPrg>>2]|0; + HEAP32[$0>>2] = $164; + $165 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($165|0); +} +function _sqlite3VdbeLinkSubProgram($pVdbe,$p) { + $pVdbe = $pVdbe|0; + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pVdbe; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 192|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 24|0); + HEAP32[$6>>2] = $4; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 192|0); + HEAP32[$9>>2] = $7; + STACKTOP = sp;return; +} +function _codeTriggerProgram($pParse,$pStepList,$orconf) { + $pParse = $pParse|0; + $pStepList = $pStepList|0; + $orconf = $orconf|0; + var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $9 = 0, $db = 0, $pSelect = 0, $pStep = 0, $sDest = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp; + $2 = sp + 4|0; + $pStep = sp + 8|0; + $v = sp + 12|0; + $db = sp + 16|0; + $sDest = sp + 20|0; + $pSelect = sp + 40|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pStepList; + HEAP32[$2>>2] = $orconf; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$v>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$db>>2] = $7; + $8 = HEAP32[$1>>2]|0; + HEAP32[$pStep>>2] = $8; + while(1) { + $9 = HEAP32[$pStep>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + break; + } + $11 = HEAP32[$2>>2]|0; + $12 = ($11|0)==(10); + if ($12) { + $13 = HEAP32[$pStep>>2]|0; + $14 = (($13) + 1|0); + $15 = HEAP8[$14>>0]|0; + $$sink = $15; + } else { + $16 = HEAP32[$2>>2]|0; + $17 = $16&255; + $$sink = $17; + } + $18 = $$sink&255; + $19 = $18&255; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 437|0); + HEAP8[$21>>0] = $19; + $22 = HEAP32[$pStep>>2]|0; + $23 = HEAP8[$22>>0]|0; + $24 = $23&255; + if ((($24|0) == 110)) { + $25 = HEAP32[$0>>2]|0; + $26 = HEAP32[$0>>2]|0; + $27 = HEAP32[$pStep>>2]|0; + $28 = (_targetSrcList($26,$27)|0); + $29 = HEAP32[$db>>2]|0; + $30 = HEAP32[$pStep>>2]|0; + $31 = (($30) + 24|0); + $32 = HEAP32[$31>>2]|0; + $33 = (_sqlite3ExprListDup($29,$32,0)|0); + $34 = HEAP32[$db>>2]|0; + $35 = HEAP32[$pStep>>2]|0; + $36 = (($35) + 20|0); + $37 = HEAP32[$36>>2]|0; + $38 = (_sqlite3ExprDup($34,$37,0)|0); + $39 = HEAP32[$0>>2]|0; + $40 = (($39) + 437|0); + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + _sqlite3Update($25,$28,$33,$38,$42); + } else if ((($24|0) == 108)) { + $43 = HEAP32[$0>>2]|0; + $44 = HEAP32[$0>>2]|0; + $45 = HEAP32[$pStep>>2]|0; + $46 = (_targetSrcList($44,$45)|0); + $47 = HEAP32[$db>>2]|0; + $48 = HEAP32[$pStep>>2]|0; + $49 = (($48) + 8|0); + $50 = HEAP32[$49>>2]|0; + $51 = (_sqlite3SelectDup($47,$50,0)|0); + $52 = HEAP32[$db>>2]|0; + $53 = HEAP32[$pStep>>2]|0; + $54 = (($53) + 28|0); + $55 = HEAP32[$54>>2]|0; + $56 = (_sqlite3IdListDup($52,$55)|0); + $57 = HEAP32[$0>>2]|0; + $58 = (($57) + 437|0); + $59 = HEAP8[$58>>0]|0; + $60 = $59&255; + _sqlite3Insert($43,$46,$51,$56,$60); + } else if ((($24|0) == 109)) { + $61 = HEAP32[$0>>2]|0; + $62 = HEAP32[$0>>2]|0; + $63 = HEAP32[$pStep>>2]|0; + $64 = (_targetSrcList($62,$63)|0); + $65 = HEAP32[$db>>2]|0; + $66 = HEAP32[$pStep>>2]|0; + $67 = (($66) + 20|0); + $68 = HEAP32[$67>>2]|0; + $69 = (_sqlite3ExprDup($65,$68,0)|0); + _sqlite3DeleteFrom($61,$64,$69); + } else { + $70 = HEAP32[$db>>2]|0; + $71 = HEAP32[$pStep>>2]|0; + $72 = (($71) + 8|0); + $73 = HEAP32[$72>>2]|0; + $74 = (_sqlite3SelectDup($70,$73,0)|0); + HEAP32[$pSelect>>2] = $74; + _sqlite3SelectDestInit($sDest,4,0); + $75 = HEAP32[$0>>2]|0; + $76 = HEAP32[$pSelect>>2]|0; + (_sqlite3Select($75,$76,$sDest)|0); + $77 = HEAP32[$db>>2]|0; + $78 = HEAP32[$pSelect>>2]|0; + _sqlite3SelectDelete($77,$78); + } + $79 = HEAP32[$pStep>>2]|0; + $80 = HEAP8[$79>>0]|0; + $81 = $80&255; + $82 = ($81|0)!=(119); + if ($82) { + $83 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp0($83,75)|0); + } + $84 = HEAP32[$pStep>>2]|0; + $85 = (($84) + 32|0); + $86 = HEAP32[$85>>2]|0; + HEAP32[$pStep>>2] = $86; + } + STACKTOP = sp;return 0; +} +function _transferParseError($pTo,$pFrom) { + $pTo = $pTo|0; + $pFrom = $pFrom|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pTo; + HEAP32[$1>>2] = $pFrom; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 64|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)==(0); + $6 = HEAP32[$1>>2]|0; + if ($5) { + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 4|0); + HEAP32[$10>>2] = $8; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 64|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 64|0); + HEAP32[$15>>2] = $13; + STACKTOP = sp;return; + } else { + $16 = HEAP32[$6>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + _sqlite3DbFree($16,$19); + STACKTOP = sp;return; + } +} +function _sqlite3VdbeTakeOpArray($p,$pnOp,$pnMaxArg) { + $p = $p|0; + $pnOp = $pnOp|0; + $pnMaxArg = $pnMaxArg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aOp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $aOp = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pnOp; + HEAP32[$2>>2] = $pnMaxArg; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$aOp>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$2>>2]|0; + _resolveP2Values($6,$7); + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 32|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$1>>2]|0; + HEAP32[$11>>2] = $10; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 4|0); + HEAP32[$13>>2] = 0; + $14 = HEAP32[$aOp>>2]|0; + STACKTOP = sp;return ($14|0); +} +function _resolveP2Values($p,$pMaxFuncArgs) { + $p = $p|0; + $pMaxFuncArgs = $pMaxFuncArgs|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; + var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aLabel = 0, $i = 0, $n = 0, $nMaxArgs = 0, $opcode = 0, $pOp = 0, $pParse = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 28|0; + $1 = sp + 24|0; + $i = sp + 20|0; + $nMaxArgs = sp + 16|0; + $pOp = sp + 12|0; + $pParse = sp + 4|0; + $aLabel = sp; + $opcode = sp + 32|0; + $n = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pMaxFuncArgs; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$nMaxArgs>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 24|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$pParse>>2] = $6; + $7 = HEAP32[$pParse>>2]|0; + $8 = (($7) + 112|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$aLabel>>2] = $9; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 88|0); + $12 = HEAP16[$11>>1]|0; + $13 = $12 & -257; + $14 = $13 | 256; + HEAP16[$11>>1] = $14; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 88|0); + $17 = HEAP16[$16>>1]|0; + $18 = $17 & -513; + HEAP16[$16>>1] = $18; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$pOp>>2] = $21; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 32|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) - 1)|0; + HEAP32[$i>>2] = $25; + while(1) { + $26 = HEAP32[$i>>2]|0; + $27 = ($26|0)>=(0); + if (!($27)) { + break; + } + $28 = HEAP32[$pOp>>2]|0; + $29 = HEAP8[$28>>0]|0; + HEAP8[$opcode>>0] = $29; + $30 = HEAP8[$opcode>>0]|0; + $31 = $30&255; + switch ($31|0) { + case 10: case 1: { + $32 = HEAP32[$pOp>>2]|0; + $33 = (($32) + 3|0); + $34 = HEAP8[$33>>0]|0; + $35 = $34&255; + $36 = HEAP32[$nMaxArgs>>2]|0; + $37 = ($35|0)>($36|0); + if ($37) { + $38 = HEAP32[$pOp>>2]|0; + $39 = (($38) + 3|0); + $40 = HEAP8[$39>>0]|0; + $41 = $40&255; + HEAP32[$nMaxArgs>>2] = $41; + } + break; + } + case 6: case 8: { + $84 = HEAP32[$pOp>>2]|0; + $85 = (($84) + 16|0); + HEAP32[$85>>2] = 65; + $86 = HEAP32[$pOp>>2]|0; + $87 = (($86) + 1|0); + HEAP8[$87>>0] = -19; + break; + } + case 4: { + $42 = HEAP32[$pOp>>2]|0; + $43 = (($42) + 8|0); + $44 = HEAP32[$43>>2]|0; + $45 = ($44|0)!=(0); + if ($45) { + $46 = HEAP32[$0>>2]|0; + $47 = (($46) + 88|0); + $48 = HEAP16[$47>>1]|0; + $49 = $48 & -257; + HEAP16[$47>>1] = $49; + label = 8; + } else { + label = 8; + } + break; + } + case 12: case 13: case 11: { + $55 = HEAP32[$0>>2]|0; + $56 = (($55) + 88|0); + $57 = HEAP16[$56>>1]|0; + $58 = $57 & -257; + HEAP16[$56>>1] = $58; + $59 = HEAP32[$0>>2]|0; + $60 = (($59) + 88|0); + $61 = HEAP16[$60>>1]|0; + $62 = $61 & -513; + $63 = $62 | 512; + HEAP16[$60>>1] = $63; + break; + } + case 5: case 7: case 9: { + $80 = HEAP32[$pOp>>2]|0; + $81 = (($80) + 16|0); + HEAP32[$81>>2] = 64; + $82 = HEAP32[$pOp>>2]|0; + $83 = (($82) + 1|0); + HEAP8[$83>>0] = -19; + break; + } + case 14: { + $72 = HEAP32[$pOp>>2]|0; + $73 = (($72) + -20|0); + $74 = (($73) + 4|0); + $75 = HEAP32[$74>>2]|0; + HEAP32[$n>>2] = $75; + $76 = HEAP32[$n>>2]|0; + $77 = HEAP32[$nMaxArgs>>2]|0; + $78 = ($76|0)>($77|0); + if ($78) { + $79 = HEAP32[$n>>2]|0; + HEAP32[$nMaxArgs>>2] = $79; + } + break; + } + case 15: { + $64 = HEAP32[$pOp>>2]|0; + $65 = (($64) + 8|0); + $66 = HEAP32[$65>>2]|0; + $67 = HEAP32[$nMaxArgs>>2]|0; + $68 = ($66|0)>($67|0); + if ($68) { + $69 = HEAP32[$pOp>>2]|0; + $70 = (($69) + 8|0); + $71 = HEAP32[$70>>2]|0; + HEAP32[$nMaxArgs>>2] = $71; + } + break; + } + case 2: case 3: { + label = 8; + break; + } + default: { + } + } + if ((label|0) == 8) { + label = 0; + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 88|0); + $52 = HEAP16[$51>>1]|0; + $53 = $52 & -513; + $54 = $53 | 512; + HEAP16[$51>>1] = $54; + } + $88 = HEAP8[$opcode>>0]|0; + $89 = $88&255; + $90 = (30648 + ($89)|0); + $91 = HEAP8[$90>>0]|0; + $92 = HEAP32[$pOp>>2]|0; + $93 = (($92) + 2|0); + HEAP8[$93>>0] = $91; + $94 = HEAP32[$pOp>>2]|0; + $95 = (($94) + 2|0); + $96 = HEAP8[$95>>0]|0; + $97 = $96&255; + $98 = $97 & 1; + $99 = ($98|0)!=(0); + if ($99) { + $100 = HEAP32[$pOp>>2]|0; + $101 = (($100) + 8|0); + $102 = HEAP32[$101>>2]|0; + $103 = ($102|0)<(0); + if ($103) { + $104 = HEAP32[$pOp>>2]|0; + $105 = (($104) + 8|0); + $106 = HEAP32[$105>>2]|0; + $107 = (-1 - ($106))|0; + $108 = HEAP32[$aLabel>>2]|0; + $109 = (($108) + ($107<<2)|0); + $110 = HEAP32[$109>>2]|0; + $111 = HEAP32[$pOp>>2]|0; + $112 = (($111) + 8|0); + HEAP32[$112>>2] = $110; + } + } + $113 = HEAP32[$i>>2]|0; + $114 = (($113) + -1)|0; + HEAP32[$i>>2] = $114; + $115 = HEAP32[$pOp>>2]|0; + $116 = (($115) + 20|0); + HEAP32[$pOp>>2] = $116; + } + $117 = HEAP32[$0>>2]|0; + $118 = HEAP32[$117>>2]|0; + $119 = HEAP32[$pParse>>2]|0; + $120 = (($119) + 112|0); + $121 = HEAP32[$120>>2]|0; + _sqlite3DbFree($118,$121); + $122 = HEAP32[$pParse>>2]|0; + $123 = (($122) + 112|0); + HEAP32[$123>>2] = 0; + $124 = HEAP32[$pParse>>2]|0; + $125 = (($124) + 108|0); + HEAP32[$125>>2] = 0; + $126 = HEAP32[$nMaxArgs>>2]|0; + $127 = HEAP32[$1>>2]|0; + HEAP32[$127>>2] = $126; + STACKTOP = sp;return; +} +function _sqlite3BtreeNext($pCur,$pRes) { + $pCur = $pCur|0; + $pRes = $pRes|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $16 = 0; + var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $idx = 0, $pPage = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $idx = sp + 12|0; + $pPage = sp + 16|0; + HEAP32[$1>>2] = $pCur; + HEAP32[$2>>2] = $pRes; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 81|0); + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = ($6|0)!=(1); + if ($7) { + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 80|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = $11 & -5; + $13 = $12&255; + HEAP8[$9>>0] = $13; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 81|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = ($17|0)>=(3); + if ($18) { + $19 = HEAP32[$1>>2]|0; + $20 = (_btreeRestoreCursorPosition($19)|0); + $21 = $20; + } else { + $21 = 0; + } + HEAP32[$rc>>2] = $21; + $22 = HEAP32[$rc>>2]|0; + $23 = ($22|0)!=(0); + if ($23) { + $24 = HEAP32[$2>>2]|0; + HEAP32[$24>>2] = 0; + $25 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $25; + $150 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($150|0); + } + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 81|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = (0)==($29|0); + if ($30) { + $31 = HEAP32[$2>>2]|0; + HEAP32[$31>>2] = 1; + HEAP32[$0>>2] = 0; + $150 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($150|0); + } + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 76|0); + $34 = HEAP32[$33>>2]|0; + $35 = ($34|0)!=(0); + if ($35) { + $36 = HEAP32[$1>>2]|0; + $37 = (($36) + 81|0); + HEAP8[$37>>0] = 1; + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 76|0); + $40 = HEAP32[$39>>2]|0; + $41 = ($40|0)>(0); + $42 = HEAP32[$1>>2]|0; + $43 = (($42) + 76|0); + HEAP32[$43>>2] = 0; + if ($41) { + $44 = HEAP32[$2>>2]|0; + HEAP32[$44>>2] = 0; + HEAP32[$0>>2] = 0; + $150 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($150|0); + } + } + } + $45 = HEAP32[$1>>2]|0; + $46 = (($45) + 84|0); + $47 = HEAP16[$46>>1]|0; + $48 = $47 << 16 >> 16; + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 128|0); + $51 = (($50) + ($48<<2)|0); + $52 = HEAP32[$51>>2]|0; + HEAP32[$pPage>>2] = $52; + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 84|0); + $55 = HEAP16[$54>>1]|0; + $56 = $55 << 16 >> 16; + $57 = HEAP32[$1>>2]|0; + $58 = (($57) + 86|0); + $59 = (($58) + ($56<<1)|0); + $60 = HEAP16[$59>>1]|0; + $61 = (($60) + 1)<<16>>16; + HEAP16[$59>>1] = $61; + $62 = $61&65535; + HEAP32[$idx>>2] = $62; + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + 24|0); + $65 = (($64) + 26|0); + HEAP16[$65>>1] = 0; + $66 = HEAP32[$1>>2]|0; + $67 = (($66) + 80|0); + $68 = HEAP8[$67>>0]|0; + $69 = $68&255; + $70 = $69 & -7; + $71 = $70&255; + HEAP8[$67>>0] = $71; + $72 = HEAP32[$idx>>2]|0; + $73 = HEAP32[$pPage>>2]|0; + $74 = (($73) + 16|0); + $75 = HEAP16[$74>>1]|0; + $76 = $75&65535; + $77 = ($72|0)>=($76|0); + if (!($77)) { + $142 = HEAP32[$2>>2]|0; + HEAP32[$142>>2] = 0; + $143 = HEAP32[$pPage>>2]|0; + $144 = (($143) + 3|0); + $145 = HEAP8[$144>>0]|0; + $146 = ($145<<24>>24)!=(0); + if ($146) { + HEAP32[$0>>2] = 0; + $150 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($150|0); + } else { + $147 = HEAP32[$1>>2]|0; + $148 = (_moveToLeftmost($147)|0); + HEAP32[$rc>>2] = $148; + $149 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $149; + $150 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($150|0); + } + } + $78 = HEAP32[$pPage>>2]|0; + $79 = (($78) + 3|0); + $80 = HEAP8[$79>>0]|0; + $81 = ($80<<24>>24)!=(0); + if (!($81)) { + $82 = HEAP32[$1>>2]|0; + $83 = HEAP32[$pPage>>2]|0; + $84 = (($83) + 5|0); + $85 = HEAP8[$84>>0]|0; + $86 = $85&255; + $87 = (($86) + 8)|0; + $88 = HEAP32[$pPage>>2]|0; + $89 = (($88) + 56|0); + $90 = HEAP32[$89>>2]|0; + $91 = (($90) + ($87)|0); + $92 = (_sqlite3Get4byte($91)|0); + $93 = (_moveToChild($82,$92)|0); + HEAP32[$rc>>2] = $93; + $94 = HEAP32[$rc>>2]|0; + $95 = ($94|0)!=(0); + if ($95) { + $96 = HEAP32[$2>>2]|0; + HEAP32[$96>>2] = 0; + $97 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $97; + $150 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($150|0); + } else { + $98 = HEAP32[$1>>2]|0; + $99 = (_moveToLeftmost($98)|0); + HEAP32[$rc>>2] = $99; + $100 = HEAP32[$2>>2]|0; + HEAP32[$100>>2] = 0; + $101 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $101; + $150 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($150|0); + } + } + while(1) { + $102 = HEAP32[$1>>2]|0; + $103 = (($102) + 84|0); + $104 = HEAP16[$103>>1]|0; + $105 = $104 << 16 >> 16; + $106 = ($105|0)==(0); + if ($106) { + label = 17; + break; + } + $110 = HEAP32[$1>>2]|0; + _moveToParent($110); + $111 = HEAP32[$1>>2]|0; + $112 = (($111) + 84|0); + $113 = HEAP16[$112>>1]|0; + $114 = $113 << 16 >> 16; + $115 = HEAP32[$1>>2]|0; + $116 = (($115) + 128|0); + $117 = (($116) + ($114<<2)|0); + $118 = HEAP32[$117>>2]|0; + HEAP32[$pPage>>2] = $118; + $119 = HEAP32[$1>>2]|0; + $120 = (($119) + 84|0); + $121 = HEAP16[$120>>1]|0; + $122 = $121 << 16 >> 16; + $123 = HEAP32[$1>>2]|0; + $124 = (($123) + 86|0); + $125 = (($124) + ($122<<1)|0); + $126 = HEAP16[$125>>1]|0; + $127 = $126&65535; + $128 = HEAP32[$pPage>>2]|0; + $129 = (($128) + 16|0); + $130 = HEAP16[$129>>1]|0; + $131 = $130&65535; + $132 = ($127|0)>=($131|0); + if (!($132)) { + break; + } + } + if ((label|0) == 17) { + $107 = HEAP32[$2>>2]|0; + HEAP32[$107>>2] = 1; + $108 = HEAP32[$1>>2]|0; + $109 = (($108) + 81|0); + HEAP8[$109>>0] = 0; + HEAP32[$0>>2] = 0; + $150 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($150|0); + } + $133 = HEAP32[$2>>2]|0; + HEAP32[$133>>2] = 0; + $134 = HEAP32[$pPage>>2]|0; + $135 = (($134) + 2|0); + $136 = HEAP8[$135>>0]|0; + $137 = ($136<<24>>24)!=(0); + if ($137) { + $138 = HEAP32[$1>>2]|0; + $139 = HEAP32[$2>>2]|0; + $140 = (_sqlite3BtreeNext($138,$139)|0); + HEAP32[$rc>>2] = $140; + } else { + HEAP32[$rc>>2] = 0; + } + $141 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $141; + $150 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($150|0); +} +function _sqlite3BtreePrevious($pCur,$pRes) { + $pCur = $pCur|0; + $pRes = $pRes|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $idx = 0, $pPage = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $pPage = sp + 12|0; + $idx = sp + 16|0; + HEAP32[$1>>2] = $pCur; + HEAP32[$2>>2] = $pRes; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 80|0); + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = $6 & -13; + $8 = $7&255; + HEAP8[$4>>0] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 81|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = ($12|0)!=(1); + if ($13) { + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 81|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = ($17|0)>=(3); + if ($18) { + $19 = HEAP32[$1>>2]|0; + $20 = (_btreeRestoreCursorPosition($19)|0); + HEAP32[$rc>>2] = $20; + $21 = HEAP32[$rc>>2]|0; + $22 = ($21|0)!=(0); + if ($22) { + $23 = HEAP32[$2>>2]|0; + HEAP32[$23>>2] = 0; + $24 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $24; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + } + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 81|0); + $27 = HEAP8[$26>>0]|0; + $28 = $27&255; + $29 = (0)==($28|0); + if ($29) { + $30 = HEAP32[$2>>2]|0; + HEAP32[$30>>2] = 1; + HEAP32[$0>>2] = 0; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 76|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($33|0)!=(0); + if ($34) { + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 81|0); + HEAP8[$36>>0] = 1; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 76|0); + $39 = HEAP32[$38>>2]|0; + $40 = ($39|0)<(0); + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 76|0); + HEAP32[$42>>2] = 0; + if ($40) { + $43 = HEAP32[$2>>2]|0; + HEAP32[$43>>2] = 0; + HEAP32[$0>>2] = 0; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + } + } + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 84|0); + $46 = HEAP16[$45>>1]|0; + $47 = $46 << 16 >> 16; + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + 128|0); + $50 = (($49) + ($47<<2)|0); + $51 = HEAP32[$50>>2]|0; + HEAP32[$pPage>>2] = $51; + $52 = HEAP32[$pPage>>2]|0; + $53 = (($52) + 3|0); + $54 = HEAP8[$53>>0]|0; + $55 = ($54<<24>>24)!=(0); + do { + if ($55) { + while(1) { + $102 = HEAP32[$1>>2]|0; + $103 = (($102) + 84|0); + $104 = HEAP16[$103>>1]|0; + $105 = $104 << 16 >> 16; + $106 = HEAP32[$1>>2]|0; + $107 = (($106) + 86|0); + $108 = (($107) + ($105<<1)|0); + $109 = HEAP16[$108>>1]|0; + $110 = $109&65535; + $111 = ($110|0)==(0); + $112 = HEAP32[$1>>2]|0; + if (!($111)) { + break; + } + $113 = (($112) + 84|0); + $114 = HEAP16[$113>>1]|0; + $115 = $114 << 16 >> 16; + $116 = ($115|0)==(0); + $117 = HEAP32[$1>>2]|0; + if ($116) { + label = 16; + break; + } + _moveToParent($117); + } + if ((label|0) == 16) { + $118 = (($117) + 81|0); + HEAP8[$118>>0] = 0; + $119 = HEAP32[$2>>2]|0; + HEAP32[$119>>2] = 1; + HEAP32[$0>>2] = 0; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + $120 = (($112) + 24|0); + $121 = (($120) + 26|0); + HEAP16[$121>>1] = 0; + $122 = HEAP32[$1>>2]|0; + $123 = (($122) + 80|0); + $124 = HEAP8[$123>>0]|0; + $125 = $124&255; + $126 = $125 & -7; + $127 = $126&255; + HEAP8[$123>>0] = $127; + $128 = HEAP32[$1>>2]|0; + $129 = (($128) + 84|0); + $130 = HEAP16[$129>>1]|0; + $131 = $130 << 16 >> 16; + $132 = HEAP32[$1>>2]|0; + $133 = (($132) + 86|0); + $134 = (($133) + ($131<<1)|0); + $135 = HEAP16[$134>>1]|0; + $136 = (($135) + -1)<<16>>16; + HEAP16[$134>>1] = $136; + $137 = HEAP32[$1>>2]|0; + $138 = (($137) + 84|0); + $139 = HEAP16[$138>>1]|0; + $140 = $139 << 16 >> 16; + $141 = HEAP32[$1>>2]|0; + $142 = (($141) + 128|0); + $143 = (($142) + ($140<<2)|0); + $144 = HEAP32[$143>>2]|0; + HEAP32[$pPage>>2] = $144; + $145 = HEAP32[$pPage>>2]|0; + $146 = (($145) + 2|0); + $147 = HEAP8[$146>>0]|0; + $148 = $147&255; + $149 = ($148|0)!=(0); + if ($149) { + $150 = HEAP32[$pPage>>2]|0; + $151 = (($150) + 3|0); + $152 = HEAP8[$151>>0]|0; + $153 = ($152<<24>>24)!=(0); + if (!($153)) { + $154 = HEAP32[$1>>2]|0; + $155 = HEAP32[$2>>2]|0; + $156 = (_sqlite3BtreePrevious($154,$155)|0); + HEAP32[$rc>>2] = $156; + break; + } + } + HEAP32[$rc>>2] = 0; + } else { + $56 = HEAP32[$1>>2]|0; + $57 = (($56) + 84|0); + $58 = HEAP16[$57>>1]|0; + $59 = $58 << 16 >> 16; + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 86|0); + $62 = (($61) + ($59<<1)|0); + $63 = HEAP16[$62>>1]|0; + $64 = $63&65535; + HEAP32[$idx>>2] = $64; + $65 = HEAP32[$1>>2]|0; + $66 = HEAP32[$pPage>>2]|0; + $67 = (($66) + 56|0); + $68 = HEAP32[$67>>2]|0; + $69 = HEAP32[$pPage>>2]|0; + $70 = (($69) + 18|0); + $71 = HEAP16[$70>>1]|0; + $72 = $71&65535; + $73 = HEAP32[$idx>>2]|0; + $74 = $73<<1; + $75 = HEAP32[$pPage>>2]|0; + $76 = (($75) + 64|0); + $77 = HEAP32[$76>>2]|0; + $78 = (($77) + ($74)|0); + $79 = HEAP8[$78>>0]|0; + $80 = $79&255; + $81 = $80 << 8; + $82 = HEAP32[$idx>>2]|0; + $83 = $82<<1; + $84 = HEAP32[$pPage>>2]|0; + $85 = (($84) + 64|0); + $86 = HEAP32[$85>>2]|0; + $87 = (($86) + ($83)|0); + $88 = (($87) + 1|0); + $89 = HEAP8[$88>>0]|0; + $90 = $89&255; + $91 = $81 | $90; + $92 = $72 & $91; + $93 = (($68) + ($92)|0); + $94 = (_sqlite3Get4byte($93)|0); + $95 = (_moveToChild($65,$94)|0); + HEAP32[$rc>>2] = $95; + $96 = HEAP32[$rc>>2]|0; + $97 = ($96|0)!=(0); + if (!($97)) { + $100 = HEAP32[$1>>2]|0; + $101 = (_moveToRightmost($100)|0); + HEAP32[$rc>>2] = $101; + break; + } + $98 = HEAP32[$2>>2]|0; + HEAP32[$98>>2] = 0; + $99 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $99; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + } while(0); + $157 = HEAP32[$2>>2]|0; + HEAP32[$157>>2] = 0; + $158 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $158; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); +} +function _btreeRestoreCursorPosition($pCur) { + $pCur = $pCur|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$1>>2] = $pCur; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 81|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = ($5|0)==(4); + $7 = HEAP32[$1>>2]|0; + if ($6) { + $8 = (($7) + 76|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$0>>2] = $9; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); + } + $10 = (($7) + 81|0); + HEAP8[$10>>0] = 0; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 64|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 56|0); + $17 = $16; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (($17) + 4)|0; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 76|0); + $25 = (_btreeMoveto($11,$14,$19,$22,0,$24)|0); + HEAP32[$rc>>2] = $25; + $26 = HEAP32[$rc>>2]|0; + $27 = ($26|0)==(0); + if ($27) { + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 64|0); + $30 = HEAP32[$29>>2]|0; + _sqlite3_free($30); + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 64|0); + HEAP32[$32>>2] = 0; + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 76|0); + $35 = HEAP32[$34>>2]|0; + $36 = ($35|0)!=(0); + if ($36) { + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 81|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39&255; + $41 = ($40|0)==(1); + if ($41) { + $42 = HEAP32[$1>>2]|0; + $43 = (($42) + 81|0); + HEAP8[$43>>0] = 2; + } + } + } + $44 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $44; + $45 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($45|0); +} +function _moveToChild($pCur,$newPgno) { + $pCur = $pCur|0; + $newPgno = $newPgno|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $i = 0, $pBt = 0, $pNewPage = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $i = sp + 12|0; + $pNewPage = sp + 16|0; + $pBt = sp + 20|0; + HEAP32[$1>>2] = $pCur; + HEAP32[$2>>2] = $newPgno; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 84|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5 << 16 >> 16; + HEAP32[$i>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$pBt>>2] = $9; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 84|0); + $12 = HEAP16[$11>>1]|0; + $13 = $12 << 16 >> 16; + $14 = ($13|0)>=(19); + if ($14) { + $15 = (_sqlite3CorruptError(55422)|0); + HEAP32[$0>>2] = $15; + $72 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($72|0); + } + $16 = HEAP32[$pBt>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 80|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = $21 & 1; + $23 = ($22|0)==(0); + $24 = $23 ? 2 : 0; + $25 = (_getAndInitPage($16,$17,$pNewPage,$24)|0); + HEAP32[$rc>>2] = $25; + $26 = HEAP32[$rc>>2]|0; + $27 = ($26|0)!=(0); + if ($27) { + $28 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $28; + $72 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($72|0); + } + $29 = HEAP32[$pNewPage>>2]|0; + $30 = HEAP32[$i>>2]|0; + $31 = (($30) + 1)|0; + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 128|0); + $34 = (($33) + ($31<<2)|0); + HEAP32[$34>>2] = $29; + $35 = HEAP32[$i>>2]|0; + $36 = (($35) + 1)|0; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 86|0); + $39 = (($38) + ($36<<1)|0); + HEAP16[$39>>1] = 0; + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 84|0); + $42 = HEAP16[$41>>1]|0; + $43 = (($42) + 1)<<16>>16; + HEAP16[$41>>1] = $43; + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 24|0); + $46 = (($45) + 26|0); + HEAP16[$46>>1] = 0; + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 80|0); + $49 = HEAP8[$48>>0]|0; + $50 = $49&255; + $51 = $50 & -7; + $52 = $51&255; + HEAP8[$48>>0] = $52; + $53 = HEAP32[$pNewPage>>2]|0; + $54 = (($53) + 16|0); + $55 = HEAP16[$54>>1]|0; + $56 = $55&65535; + $57 = ($56|0)<(1); + if (!($57)) { + $58 = HEAP32[$pNewPage>>2]|0; + $59 = (($58) + 2|0); + $60 = HEAP8[$59>>0]|0; + $61 = $60&255; + $62 = HEAP32[$i>>2]|0; + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + 128|0); + $65 = (($64) + ($62<<2)|0); + $66 = HEAP32[$65>>2]|0; + $67 = (($66) + 2|0); + $68 = HEAP8[$67>>0]|0; + $69 = $68&255; + $70 = ($61|0)!=($69|0); + if (!($70)) { + HEAP32[$0>>2] = 0; + $72 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($72|0); + } + } + $71 = (_sqlite3CorruptError(55434)|0); + HEAP32[$0>>2] = $71; + $72 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($72|0); +} +function _moveToRightmost($pCur) { + $pCur = $pCur|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $7 = 0, $8 = 0, $9 = 0, $pPage = 0, $pgno = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $pgno = sp; + $rc = sp + 4|0; + $pPage = sp + 8|0; + HEAP32[$0>>2] = $pCur; + HEAP32[$rc>>2] = 0; + HEAP32[$pPage>>2] = 0; + while(1) { + $1 = HEAP32[$rc>>2]|0; + $2 = ($1|0)==(0); + if (!($2)) { + break; + } + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 84|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5 << 16 >> 16; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 128|0); + $9 = (($8) + ($6<<2)|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$pPage>>2] = $10; + $11 = (($10) + 3|0); + $12 = HEAP8[$11>>0]|0; + $13 = ($12<<24>>24)!=(0); + $14 = $13 ^ 1; + if (!($14)) { + break; + } + $15 = HEAP32[$pPage>>2]|0; + $16 = (($15) + 5|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = (($18) + 8)|0; + $20 = HEAP32[$pPage>>2]|0; + $21 = (($20) + 56|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + ($19)|0); + $24 = (_sqlite3Get4byte($23)|0); + HEAP32[$pgno>>2] = $24; + $25 = HEAP32[$pPage>>2]|0; + $26 = (($25) + 16|0); + $27 = HEAP16[$26>>1]|0; + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 84|0); + $30 = HEAP16[$29>>1]|0; + $31 = $30 << 16 >> 16; + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 86|0); + $34 = (($33) + ($31<<1)|0); + HEAP16[$34>>1] = $27; + $35 = HEAP32[$0>>2]|0; + $36 = HEAP32[$pgno>>2]|0; + $37 = (_moveToChild($35,$36)|0); + HEAP32[$rc>>2] = $37; + } + $38 = HEAP32[$rc>>2]|0; + $39 = ($38|0)==(0); + if (!($39)) { + $62 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($62|0); + } + $40 = HEAP32[$pPage>>2]|0; + $41 = (($40) + 16|0); + $42 = HEAP16[$41>>1]|0; + $43 = $42&65535; + $44 = (($43) - 1)|0; + $45 = $44&65535; + $46 = HEAP32[$0>>2]|0; + $47 = (($46) + 84|0); + $48 = HEAP16[$47>>1]|0; + $49 = $48 << 16 >> 16; + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 86|0); + $52 = (($51) + ($49<<1)|0); + HEAP16[$52>>1] = $45; + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 24|0); + $55 = (($54) + 26|0); + HEAP16[$55>>1] = 0; + $56 = HEAP32[$0>>2]|0; + $57 = (($56) + 80|0); + $58 = HEAP8[$57>>0]|0; + $59 = $58&255; + $60 = $59 & -3; + $61 = $60&255; + HEAP8[$57>>0] = $61; + $62 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($62|0); +} +function _moveToParent($pCur) { + $pCur = $pCur|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pCur; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 84|0); + $3 = HEAP16[$2>>1]|0; + $4 = $3 << 16 >> 16; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 128|0); + $7 = (($6) + ($4<<2)|0); + $8 = HEAP32[$7>>2]|0; + _releasePage($8); + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 84|0); + $11 = HEAP16[$10>>1]|0; + $12 = (($11) + -1)<<16>>16; + HEAP16[$10>>1] = $12; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 24|0); + $15 = (($14) + 26|0); + HEAP16[$15>>1] = 0; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 80|0); + $18 = HEAP8[$17>>0]|0; + $19 = $18&255; + $20 = $19 & -7; + $21 = $20&255; + HEAP8[$17>>0] = $21; + STACKTOP = sp;return; +} +function _getAndInitPage($pBt,$pgno,$ppPage,$bReadonly) { + $pBt = $pBt|0; + $pgno = $pgno|0; + $ppPage = $ppPage|0; + $bReadonly = $bReadonly|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $rc = sp + 12|0; + HEAP32[$0>>2] = $pBt; + HEAP32[$1>>2] = $pgno; + HEAP32[$2>>2] = $ppPage; + HEAP32[$3>>2] = $bReadonly; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = (_btreePagecount($5)|0); + $7 = ($4>>>0)>($6>>>0); + if ($7) { + $8 = (_sqlite3CorruptError(52811)|0); + HEAP32[$rc>>2] = $8; + } else { + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$3>>2]|0; + $13 = (_btreeGetPage($9,$10,$11,$12)|0); + HEAP32[$rc>>2] = $13; + $14 = HEAP32[$rc>>2]|0; + $15 = ($14|0)==(0); + if ($15) { + $16 = HEAP32[$2>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = HEAP8[$17>>0]|0; + $19 = $18&255; + $20 = ($19|0)==(0); + if ($20) { + $21 = HEAP32[$2>>2]|0; + $22 = HEAP32[$21>>2]|0; + $23 = (_btreeInitPage($22)|0); + HEAP32[$rc>>2] = $23; + $24 = HEAP32[$rc>>2]|0; + $25 = ($24|0)!=(0); + if ($25) { + $26 = HEAP32[$2>>2]|0; + $27 = HEAP32[$26>>2]|0; + _releasePage($27); + } + } + } + } + $28 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($28|0); +} +function _btreePagecount($pBt) { + $pBt = $pBt|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pBt; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 44|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _btreeGetPage($pBt,$pgno,$ppPage,$flags) { + $pBt = $pBt|0; + $pgno = $pgno|0; + $ppPage = $ppPage|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDbPage = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $rc = sp + 16|0; + $pDbPage = sp + 20|0; + HEAP32[$1>>2] = $pBt; + HEAP32[$2>>2] = $pgno; + HEAP32[$3>>2] = $ppPage; + HEAP32[$4>>2] = $flags; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$4>>2]|0; + $9 = (_sqlite3PagerAcquire($6,$7,$pDbPage,$8)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + $11 = ($10|0)!=(0); + if ($11) { + $12 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $12; + $18 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($18|0); + } else { + $13 = HEAP32[$pDbPage>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (_btreePageFromDbPage($13,$14,$15)|0); + $17 = HEAP32[$3>>2]|0; + HEAP32[$17>>2] = $16; + HEAP32[$0>>2] = 0; + $18 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($18|0); + } + return 0|0; +} +function _btreePageFromDbPage($pDbPage,$pgno,$pBt) { + $pDbPage = $pDbPage|0; + $pgno = $pgno|0; + $pBt = $pBt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pPage = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pPage = sp + 8|0; + HEAP32[$0>>2] = $pDbPage; + HEAP32[$1>>2] = $pgno; + HEAP32[$2>>2] = $pBt; + $3 = HEAP32[$0>>2]|0; + $4 = (_sqlite3PagerGetExtra($3)|0); + HEAP32[$pPage>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (_sqlite3PagerGetData($5)|0); + $7 = HEAP32[$pPage>>2]|0; + $8 = (($7) + 56|0); + HEAP32[$8>>2] = $6; + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$pPage>>2]|0; + $11 = (($10) + 68|0); + HEAP32[$11>>2] = $9; + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$pPage>>2]|0; + $14 = (($13) + 52|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$pPage>>2]|0; + $17 = (($16) + 72|0); + HEAP32[$17>>2] = $15; + $18 = HEAP32[$pPage>>2]|0; + $19 = (($18) + 72|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)==(1); + $22 = $21 ? 100 : 0; + $23 = $22&255; + $24 = HEAP32[$pPage>>2]|0; + $25 = (($24) + 5|0); + HEAP8[$25>>0] = $23; + $26 = HEAP32[$pPage>>2]|0; + STACKTOP = sp;return ($26|0); +} +function _btreeMoveto($pCur,$pKey,$0,$1,$bias,$pRes) { + $pCur = $pCur|0; + $pKey = $pKey|0; + $0 = $0|0; + $1 = $1|0; + $bias = $bias|0; + $pRes = $pRes|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $7 = 0; + var $8 = 0, $9 = 0, $aSpace = 0, $pFree = 0, $pIdxKey = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 240|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $4 = sp + 28|0; + $5 = sp; + $6 = sp + 24|0; + $7 = sp + 20|0; + $rc = sp + 8|0; + $pIdxKey = sp + 12|0; + $aSpace = sp + 40|0; + $pFree = sp + 16|0; + HEAP32[$3>>2] = $pCur; + HEAP32[$4>>2] = $pKey; + $8 = $5; + $9 = $8; + HEAP32[$9>>2] = $0; + $10 = (($8) + 4)|0; + $11 = $10; + HEAP32[$11>>2] = $1; + HEAP32[$6>>2] = $bias; + HEAP32[$7>>2] = $pRes; + HEAP32[$pFree>>2] = 0; + $12 = HEAP32[$4>>2]|0; + $13 = ($12|0)!=(0|0); + if ($13) { + $14 = HEAP32[$3>>2]|0; + $15 = (($14) + 16|0); + $16 = HEAP32[$15>>2]|0; + $17 = (_sqlite3VdbeAllocUnpackedRecord($16,$aSpace,200,$pFree)|0); + HEAP32[$pIdxKey>>2] = $17; + $18 = HEAP32[$pIdxKey>>2]|0; + $19 = ($18|0)==(0|0); + if ($19) { + HEAP32[$2>>2] = 7; + $63 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($63|0); + } + $20 = HEAP32[$3>>2]|0; + $21 = (($20) + 16|0); + $22 = HEAP32[$21>>2]|0; + $23 = $5; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = (($23) + 4)|0; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$4>>2]|0; + $30 = HEAP32[$pIdxKey>>2]|0; + _sqlite3VdbeRecordUnpack($22,$25,$29,$30); + $31 = HEAP32[$pIdxKey>>2]|0; + $32 = (($31) + 4|0); + $33 = HEAP16[$32>>1]|0; + $34 = $33&65535; + $35 = ($34|0)==(0); + if ($35) { + $36 = HEAP32[$3>>2]|0; + $37 = (($36) + 16|0); + $38 = HEAP32[$37>>2]|0; + $39 = (($38) + 12|0); + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$pFree>>2]|0; + _sqlite3DbFree($40,$41); + $42 = (_sqlite3CorruptError(51847)|0); + HEAP32[$2>>2] = $42; + $63 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($63|0); + } + } else { + HEAP32[$pIdxKey>>2] = 0; + } + $43 = HEAP32[$3>>2]|0; + $44 = HEAP32[$pIdxKey>>2]|0; + $45 = $5; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (($45) + 4)|0; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$6>>2]|0; + $52 = HEAP32[$7>>2]|0; + $53 = (_sqlite3BtreeMovetoUnpacked($43,$44,$47,$50,$51,$52)|0); + HEAP32[$rc>>2] = $53; + $54 = HEAP32[$pFree>>2]|0; + $55 = ($54|0)!=(0|0); + if ($55) { + $56 = HEAP32[$3>>2]|0; + $57 = (($56) + 16|0); + $58 = HEAP32[$57>>2]|0; + $59 = (($58) + 12|0); + $60 = HEAP32[$59>>2]|0; + $61 = HEAP32[$pFree>>2]|0; + _sqlite3DbFree($60,$61); + } + $62 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $62; + $63 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($63|0); +} +function _sqlite3VdbeAllocUnpackedRecord($pKeyInfo,$pSpace,$szSpace,$ppFree) { + $pKeyInfo = $pKeyInfo|0; + $pSpace = $pSpace|0; + $szSpace = $szSpace|0; + $ppFree = $ppFree|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nByte = 0, $nOff = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $p = sp + 16|0; + $nOff = sp + 20|0; + $nByte = sp + 24|0; + HEAP32[$1>>2] = $pKeyInfo; + HEAP32[$2>>2] = $pSpace; + HEAP32[$3>>2] = $szSpace; + HEAP32[$4>>2] = $ppFree; + $5 = HEAP32[$2>>2]|0; + $6 = $5; + $7 = $6 & 7; + $8 = (8 - ($7))|0; + $9 = $8 & 7; + HEAP32[$nOff>>2] = $9; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 6|0); + $12 = HEAP16[$11>>1]|0; + $13 = $12&65535; + $14 = (($13) + 1)|0; + $15 = ($14*40)|0; + $16 = (24 + ($15))|0; + HEAP32[$nByte>>2] = $16; + $17 = HEAP32[$nByte>>2]|0; + $18 = HEAP32[$3>>2]|0; + $19 = HEAP32[$nOff>>2]|0; + $20 = (($18) + ($19))|0; + $21 = ($17|0)>($20|0); + if ($21) { + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 12|0); + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$nByte>>2]|0; + $26 = (_sqlite3DbMallocRaw($24,$25)|0); + HEAP32[$p>>2] = $26; + $27 = HEAP32[$p>>2]|0; + $28 = HEAP32[$4>>2]|0; + HEAP32[$28>>2] = $27; + $29 = HEAP32[$p>>2]|0; + $30 = ($29|0)!=(0|0); + if (!($30)) { + HEAP32[$0>>2] = 0; + $50 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($50|0); + } + } else { + $31 = HEAP32[$nOff>>2]|0; + $32 = HEAP32[$2>>2]|0; + $33 = (($32) + ($31)|0); + HEAP32[$p>>2] = $33; + $34 = HEAP32[$4>>2]|0; + HEAP32[$34>>2] = 0; + } + $35 = HEAP32[$p>>2]|0; + $36 = (($35) + 24|0); + $37 = HEAP32[$p>>2]|0; + $38 = (($37) + 8|0); + HEAP32[$38>>2] = $36; + $39 = HEAP32[$1>>2]|0; + $40 = HEAP32[$p>>2]|0; + HEAP32[$40>>2] = $39; + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 6|0); + $43 = HEAP16[$42>>1]|0; + $44 = $43&65535; + $45 = (($44) + 1)|0; + $46 = $45&65535; + $47 = HEAP32[$p>>2]|0; + $48 = (($47) + 4|0); + HEAP16[$48>>1] = $46; + $49 = HEAP32[$p>>2]|0; + HEAP32[$0>>2] = $49; + $50 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($50|0); +} +function _sqlite3VdbeRecordUnpack($pKeyInfo,$nKey,$pKey,$p) { + $pKeyInfo = $pKeyInfo|0; + $nKey = $nKey|0; + $pKey = $pKey|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; + var $aKey = 0, $d = 0, $idx = 0, $pMem = 0, $serial_type = 0, $szHdr = 0, $u = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $aKey = sp + 20|0; + $d = sp + 16|0; + $idx = sp + 8|0; + $u = sp + 40|0; + $szHdr = sp + 4|0; + $pMem = sp; + $serial_type = sp + 12|0; + HEAP32[$0>>2] = $pKeyInfo; + HEAP32[$1>>2] = $nKey; + HEAP32[$2>>2] = $pKey; + HEAP32[$3>>2] = $p; + $4 = HEAP32[$2>>2]|0; + HEAP32[$aKey>>2] = $4; + $5 = HEAP32[$3>>2]|0; + $6 = (($5) + 8|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pMem>>2] = $7; + $8 = HEAP32[$3>>2]|0; + $9 = (($8) + 6|0); + HEAP8[$9>>0] = 0; + $10 = HEAP32[$aKey>>2]|0; + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = ($12|0)<(128); + $14 = HEAP32[$aKey>>2]|0; + if ($13) { + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + HEAP32[$szHdr>>2] = $16; + $20 = 1; + } else { + $17 = (_sqlite3GetVarint32($14,$szHdr)|0); + $18 = $17&255; + $20 = $18; + } + $19 = $20&255; + $21 = $19&255; + HEAP32[$idx>>2] = $21; + $22 = HEAP32[$szHdr>>2]|0; + HEAP32[$d>>2] = $22; + HEAP16[$u>>1] = 0; + while(1) { + $23 = HEAP32[$idx>>2]|0; + $24 = HEAP32[$szHdr>>2]|0; + $25 = ($23>>>0)<($24>>>0); + if (!($25)) { + label = 12; + break; + } + $26 = HEAP16[$u>>1]|0; + $27 = $26&65535; + $28 = HEAP32[$3>>2]|0; + $29 = (($28) + 4|0); + $30 = HEAP16[$29>>1]|0; + $31 = $30&65535; + $32 = ($27|0)<($31|0); + if (!($32)) { + label = 12; + break; + } + $33 = HEAP32[$d>>2]|0; + $34 = HEAP32[$1>>2]|0; + $35 = ($33|0)<=($34|0); + if (!($35)) { + label = 12; + break; + } + $36 = HEAP32[$idx>>2]|0; + $37 = HEAP32[$aKey>>2]|0; + $38 = (($37) + ($36)|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39&255; + $41 = ($40|0)<(128); + $42 = HEAP32[$idx>>2]|0; + $43 = HEAP32[$aKey>>2]|0; + $44 = (($43) + ($42)|0); + if ($41) { + $45 = HEAP8[$44>>0]|0; + $46 = $45&255; + HEAP32[$serial_type>>2] = $46; + $50 = 1; + } else { + $47 = (_sqlite3GetVarint32($44,$serial_type)|0); + $48 = $47&255; + $50 = $48; + } + $49 = $50&255; + $51 = $49&255; + $52 = HEAP32[$idx>>2]|0; + $53 = (($52) + ($51))|0; + HEAP32[$idx>>2] = $53; + $54 = HEAP32[$0>>2]|0; + $55 = (($54) + 4|0); + $56 = HEAP8[$55>>0]|0; + $57 = HEAP32[$pMem>>2]|0; + $58 = (($57) + 30|0); + HEAP8[$58>>0] = $56; + $59 = HEAP32[$0>>2]|0; + $60 = (($59) + 12|0); + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$pMem>>2]|0; + HEAP32[$62>>2] = $61; + $63 = HEAP32[$pMem>>2]|0; + $64 = (($63) + 36|0); + HEAP32[$64>>2] = 0; + $65 = HEAP32[$d>>2]|0; + $66 = HEAP32[$aKey>>2]|0; + $67 = (($66) + ($65)|0); + $68 = HEAP32[$serial_type>>2]|0; + $69 = HEAP32[$pMem>>2]|0; + $70 = (_sqlite3VdbeSerialGet($67,$68,$69)|0); + $71 = HEAP32[$d>>2]|0; + $72 = (($71) + ($70))|0; + HEAP32[$d>>2] = $72; + $73 = HEAP32[$pMem>>2]|0; + $74 = (($73) + 40|0); + HEAP32[$pMem>>2] = $74; + $75 = HEAP16[$u>>1]|0; + $76 = (($75) + 1)<<16>>16; + HEAP16[$u>>1] = $76; + } + if ((label|0) == 12) { + $77 = HEAP16[$u>>1]|0; + $78 = HEAP32[$3>>2]|0; + $79 = (($78) + 4|0); + HEAP16[$79>>1] = $77; + STACKTOP = sp;return; + } +} +function _sqlite3BtreeMovetoUnpacked($pCur,$pIdxKey,$0,$1,$biasRight,$pRes) { + $pCur = $pCur|0; + $pIdxKey = $pIdxKey|0; + $0 = $0|0; + $1 = $1|0; + $biasRight = $biasRight|0; + $pRes = $pRes|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; + var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; + var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; + var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0; + var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0; + var $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0; + var $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0; + var $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0; + var $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0; + var $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0; + var $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0; + var $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0; + var $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0; + var $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0; + var $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0; + var $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0; + var $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0; + var $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0; + var $479 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $c = 0, $chldPg = 0; + var $idx = 0, $lwr = 0, $nCell = 0, $nCellKey = 0, $pCell = 0, $pCellBody = 0, $pCellKey = 0, $pPage = 0, $rc = 0, $upr = 0, $xRecordCompare = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $2 = sp + 80|0; + $3 = sp + 76|0; + $4 = sp + 72|0; + $5 = sp; + $6 = sp + 68|0; + $7 = sp + 64|0; + $rc = sp + 60|0; + $xRecordCompare = sp + 56|0; + $lwr = sp + 52|0; + $upr = sp + 20|0; + $idx = sp + 36|0; + $c = sp + 16|0; + $chldPg = sp + 32|0; + $pPage = sp + 28|0; + $pCell = sp + 24|0; + $nCellKey = sp + 8|0; + $nCell = sp + 40|0; + $pCellKey = sp + 44|0; + $pCellBody = sp + 48|0; + HEAP32[$3>>2] = $pCur; + HEAP32[$4>>2] = $pIdxKey; + $8 = $5; + $9 = $8; + HEAP32[$9>>2] = $0; + $10 = (($8) + 4)|0; + $11 = $10; + HEAP32[$11>>2] = $1; + HEAP32[$6>>2] = $biasRight; + HEAP32[$7>>2] = $pRes; + $12 = HEAP32[$3>>2]|0; + $13 = (($12) + 81|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = ($15|0)==(1); + if ($16) { + $17 = HEAP32[$3>>2]|0; + $18 = (($17) + 80|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = $20 & 2; + $22 = ($21|0)!=(0); + if ($22) { + $23 = HEAP32[$3>>2]|0; + $24 = (($23) + 128|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + 2|0); + $27 = HEAP8[$26>>0]|0; + $28 = $27&255; + $29 = ($28|0)!=(0); + if ($29) { + $30 = HEAP32[$3>>2]|0; + $31 = (($30) + 24|0); + $32 = $31; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = (($32) + 4)|0; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = $5; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = (($38) + 4)|0; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = ($34|0)==($40|0); + $45 = ($37|0)==($43|0); + $46 = $44 & $45; + if ($46) { + $47 = HEAP32[$7>>2]|0; + HEAP32[$47>>2] = 0; + HEAP32[$2>>2] = 0; + $479 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($479|0); + } + $48 = HEAP32[$3>>2]|0; + $49 = (($48) + 80|0); + $50 = HEAP8[$49>>0]|0; + $51 = $50&255; + $52 = $51 & 8; + $53 = ($52|0)!=(0); + if ($53) { + $54 = HEAP32[$3>>2]|0; + $55 = (($54) + 24|0); + $56 = $55; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = (($56) + 4)|0; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = $5; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (($62) + 4)|0; + $66 = $65; + $67 = HEAP32[$66>>2]|0; + $68 = ($61|0)<($67|0); + $69 = ($61|0)==($67|0); + $70 = ($58>>>0)<($64>>>0); + $71 = $69 & $70; + $72 = $68 | $71; + if ($72) { + $73 = HEAP32[$7>>2]|0; + HEAP32[$73>>2] = -1; + HEAP32[$2>>2] = 0; + $479 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($479|0); + } + } + } + } + } + $74 = HEAP32[$4>>2]|0; + $75 = ($74|0)!=(0|0); + if ($75) { + $76 = HEAP32[$4>>2]|0; + $77 = (_sqlite3VdbeFindCompare($76)|0); + HEAP32[$xRecordCompare>>2] = $77; + $78 = HEAP32[$4>>2]|0; + $79 = (($78) + 7|0); + HEAP8[$79>>0] = 0; + } else { + HEAP32[$xRecordCompare>>2] = 0; + } + $80 = HEAP32[$3>>2]|0; + $81 = (_moveToRoot($80)|0); + HEAP32[$rc>>2] = $81; + $82 = HEAP32[$rc>>2]|0; + $83 = ($82|0)!=(0); + if ($83) { + $84 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $84; + $479 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($479|0); + } + $85 = HEAP32[$3>>2]|0; + $86 = (($85) + 81|0); + $87 = HEAP8[$86>>0]|0; + $88 = $87&255; + $89 = ($88|0)==(0); + if ($89) { + $90 = HEAP32[$7>>2]|0; + HEAP32[$90>>2] = -1; + HEAP32[$2>>2] = 0; + $479 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($479|0); + } + L24: while(1) { + $91 = HEAP32[$3>>2]|0; + $92 = (($91) + 84|0); + $93 = HEAP16[$92>>1]|0; + $94 = $93 << 16 >> 16; + $95 = HEAP32[$3>>2]|0; + $96 = (($95) + 128|0); + $97 = (($96) + ($94<<2)|0); + $98 = HEAP32[$97>>2]|0; + HEAP32[$pPage>>2] = $98; + HEAP32[$lwr>>2] = 0; + $99 = HEAP32[$pPage>>2]|0; + $100 = (($99) + 16|0); + $101 = HEAP16[$100>>1]|0; + $102 = $101&65535; + $103 = (($102) - 1)|0; + HEAP32[$upr>>2] = $103; + $104 = HEAP32[$upr>>2]|0; + $105 = HEAP32[$6>>2]|0; + $106 = (1 - ($105))|0; + $107 = $104 >> $106; + HEAP32[$idx>>2] = $107; + $108 = HEAP32[$idx>>2]|0; + $109 = $108&65535; + $110 = HEAP32[$3>>2]|0; + $111 = (($110) + 84|0); + $112 = HEAP16[$111>>1]|0; + $113 = $112 << 16 >> 16; + $114 = HEAP32[$3>>2]|0; + $115 = (($114) + 86|0); + $116 = (($115) + ($113<<1)|0); + HEAP16[$116>>1] = $109; + $117 = HEAP32[$xRecordCompare>>2]|0; + $118 = ($117|0)==(0|0); + L26: do { + if ($118) { + while(1) { + $119 = HEAP32[$pPage>>2]|0; + $120 = (($119) + 56|0); + $121 = HEAP32[$120>>2]|0; + $122 = HEAP32[$pPage>>2]|0; + $123 = (($122) + 18|0); + $124 = HEAP16[$123>>1]|0; + $125 = $124&65535; + $126 = HEAP32[$idx>>2]|0; + $127 = $126<<1; + $128 = HEAP32[$pPage>>2]|0; + $129 = (($128) + 64|0); + $130 = HEAP32[$129>>2]|0; + $131 = (($130) + ($127)|0); + $132 = HEAP8[$131>>0]|0; + $133 = $132&255; + $134 = $133 << 8; + $135 = HEAP32[$idx>>2]|0; + $136 = $135<<1; + $137 = HEAP32[$pPage>>2]|0; + $138 = (($137) + 64|0); + $139 = HEAP32[$138>>2]|0; + $140 = (($139) + ($136)|0); + $141 = (($140) + 1|0); + $142 = HEAP8[$141>>0]|0; + $143 = $142&255; + $144 = $134 | $143; + $145 = $125 & $144; + $146 = (($121) + ($145)|0); + $147 = HEAP32[$pPage>>2]|0; + $148 = (($147) + 6|0); + $149 = HEAP8[$148>>0]|0; + $150 = $149&255; + $151 = (($146) + ($150)|0); + HEAP32[$pCell>>2] = $151; + $152 = HEAP32[$pPage>>2]|0; + $153 = (($152) + 4|0); + $154 = HEAP8[$153>>0]|0; + $155 = ($154<<24>>24)!=(0); + L47: do { + if ($155) { + while(1) { + $156 = HEAP32[$pCell>>2]|0; + $157 = (($156) + 1|0); + HEAP32[$pCell>>2] = $157; + $158 = HEAP8[$156>>0]|0; + $159 = $158&255; + $160 = (128)<=($159|0); + if (!($160)) { + break L47; + } + $161 = HEAP32[$pCell>>2]|0; + $162 = HEAP32[$pPage>>2]|0; + $163 = (($162) + 60|0); + $164 = HEAP32[$163>>2]|0; + $165 = ($161>>>0)>=($164>>>0); + if ($165) { + label = 20; + break L24; + } + } + } + } while(0); + $167 = HEAP32[$pCell>>2]|0; + (_sqlite3GetVarint($167,$nCellKey)|0); + $168 = $nCellKey; + $169 = $168; + $170 = HEAP32[$169>>2]|0; + $171 = (($168) + 4)|0; + $172 = $171; + $173 = HEAP32[$172>>2]|0; + $174 = $5; + $175 = $174; + $176 = HEAP32[$175>>2]|0; + $177 = (($174) + 4)|0; + $178 = $177; + $179 = HEAP32[$178>>2]|0; + $180 = ($173|0)<($179|0); + $181 = ($173|0)==($179|0); + $182 = ($170>>>0)<($176>>>0); + $183 = $181 & $182; + $184 = $180 | $183; + if ($184) { + $185 = HEAP32[$idx>>2]|0; + $186 = (($185) + 1)|0; + HEAP32[$lwr>>2] = $186; + $187 = HEAP32[$lwr>>2]|0; + $188 = HEAP32[$upr>>2]|0; + $189 = ($187|0)>($188|0); + if ($189) { + label = 23; + break; + } + } else { + $190 = $nCellKey; + $191 = $190; + $192 = HEAP32[$191>>2]|0; + $193 = (($190) + 4)|0; + $194 = $193; + $195 = HEAP32[$194>>2]|0; + $196 = $5; + $197 = $196; + $198 = HEAP32[$197>>2]|0; + $199 = (($196) + 4)|0; + $200 = $199; + $201 = HEAP32[$200>>2]|0; + $202 = ($195|0)>($201|0); + $203 = ($195|0)==($201|0); + $204 = ($192>>>0)>($198>>>0); + $205 = $203 & $204; + $206 = $202 | $205; + if (!($206)) { + label = 27; + break; + } + $207 = HEAP32[$idx>>2]|0; + $208 = (($207) - 1)|0; + HEAP32[$upr>>2] = $208; + $209 = HEAP32[$lwr>>2]|0; + $210 = HEAP32[$upr>>2]|0; + $211 = ($209|0)>($210|0); + if ($211) { + label = 26; + break; + } + } + $245 = HEAP32[$lwr>>2]|0; + $246 = HEAP32[$upr>>2]|0; + $247 = (($245) + ($246))|0; + $248 = $247 >> 1; + HEAP32[$idx>>2] = $248; + } + if ((label|0) == 23) { + label = 0; + HEAP32[$c>>2] = -1; + label = 49; + break; + } + else if ((label|0) == 26) { + label = 0; + HEAP32[$c>>2] = 1; + label = 49; + break; + } + else if ((label|0) == 27) { + label = 0; + $212 = HEAP32[$3>>2]|0; + $213 = (($212) + 80|0); + $214 = HEAP8[$213>>0]|0; + $215 = $214&255; + $216 = $215 | 2; + $217 = $216&255; + HEAP8[$213>>0] = $217; + $218 = $nCellKey; + $219 = $218; + $220 = HEAP32[$219>>2]|0; + $221 = (($218) + 4)|0; + $222 = $221; + $223 = HEAP32[$222>>2]|0; + $224 = HEAP32[$3>>2]|0; + $225 = (($224) + 24|0); + $226 = $225; + $227 = $226; + HEAP32[$227>>2] = $220; + $228 = (($226) + 4)|0; + $229 = $228; + HEAP32[$229>>2] = $223; + $230 = HEAP32[$idx>>2]|0; + $231 = $230&65535; + $232 = HEAP32[$3>>2]|0; + $233 = (($232) + 84|0); + $234 = HEAP16[$233>>1]|0; + $235 = $234 << 16 >> 16; + $236 = HEAP32[$3>>2]|0; + $237 = (($236) + 86|0); + $238 = (($237) + ($235<<1)|0); + HEAP16[$238>>1] = $231; + $239 = HEAP32[$pPage>>2]|0; + $240 = (($239) + 3|0); + $241 = HEAP8[$240>>0]|0; + $242 = ($241<<24>>24)!=(0); + if ($242) { + label = 29; + break L24; + } + $243 = HEAP32[$idx>>2]|0; + HEAP32[$lwr>>2] = $243; + break; + } + } else { + while(1) { + $249 = HEAP32[$pPage>>2]|0; + $250 = (($249) + 56|0); + $251 = HEAP32[$250>>2]|0; + $252 = HEAP32[$pPage>>2]|0; + $253 = (($252) + 18|0); + $254 = HEAP16[$253>>1]|0; + $255 = $254&65535; + $256 = HEAP32[$idx>>2]|0; + $257 = $256<<1; + $258 = HEAP32[$pPage>>2]|0; + $259 = (($258) + 64|0); + $260 = HEAP32[$259>>2]|0; + $261 = (($260) + ($257)|0); + $262 = HEAP8[$261>>0]|0; + $263 = $262&255; + $264 = $263 << 8; + $265 = HEAP32[$idx>>2]|0; + $266 = $265<<1; + $267 = HEAP32[$pPage>>2]|0; + $268 = (($267) + 64|0); + $269 = HEAP32[$268>>2]|0; + $270 = (($269) + ($266)|0); + $271 = (($270) + 1|0); + $272 = HEAP8[$271>>0]|0; + $273 = $272&255; + $274 = $264 | $273; + $275 = $255 & $274; + $276 = (($251) + ($275)|0); + $277 = HEAP32[$pPage>>2]|0; + $278 = (($277) + 6|0); + $279 = HEAP8[$278>>0]|0; + $280 = $279&255; + $281 = (($276) + ($280)|0); + HEAP32[$pCell>>2] = $281; + $282 = HEAP32[$pCell>>2]|0; + $283 = HEAP8[$282>>0]|0; + $284 = $283&255; + HEAP32[$nCell>>2] = $284; + $285 = HEAP32[$nCell>>2]|0; + $286 = HEAP32[$pPage>>2]|0; + $287 = (($286) + 7|0); + $288 = HEAP8[$287>>0]|0; + $289 = $288&255; + $290 = ($285|0)<=($289|0); + do { + if ($290) { + $291 = HEAP32[$xRecordCompare>>2]|0; + $292 = HEAP32[$nCell>>2]|0; + $293 = HEAP32[$pCell>>2]|0; + $294 = (($293) + 1|0); + $295 = HEAP32[$4>>2]|0; + $296 = (FUNCTION_TABLE_iiiii[$291 & 31]($292,$294,$295,0)|0); + HEAP32[$c>>2] = $296; + } else { + $297 = HEAP32[$pCell>>2]|0; + $298 = (($297) + 1|0); + $299 = HEAP8[$298>>0]|0; + $300 = $299&255; + $301 = $300 & 128; + $302 = ($301|0)!=(0); + if (!($302)) { + $303 = HEAP32[$nCell>>2]|0; + $304 = $303 & 127; + $305 = $304 << 7; + $306 = HEAP32[$pCell>>2]|0; + $307 = (($306) + 1|0); + $308 = HEAP8[$307>>0]|0; + $309 = $308&255; + $310 = (($305) + ($309))|0; + HEAP32[$nCell>>2] = $310; + $311 = HEAP32[$pPage>>2]|0; + $312 = (($311) + 8|0); + $313 = HEAP16[$312>>1]|0; + $314 = $313&65535; + $315 = ($310|0)<=($314|0); + if ($315) { + $316 = HEAP32[$xRecordCompare>>2]|0; + $317 = HEAP32[$nCell>>2]|0; + $318 = HEAP32[$pCell>>2]|0; + $319 = (($318) + 2|0); + $320 = HEAP32[$4>>2]|0; + $321 = (FUNCTION_TABLE_iiiii[$316 & 31]($317,$319,$320,0)|0); + HEAP32[$c>>2] = $321; + break; + } + } + $322 = HEAP32[$pCell>>2]|0; + $323 = HEAP32[$pPage>>2]|0; + $324 = (($323) + 6|0); + $325 = HEAP8[$324>>0]|0; + $326 = $325&255; + $327 = (0 - ($326))|0; + $328 = (($322) + ($327)|0); + HEAP32[$pCellBody>>2] = $328; + $329 = HEAP32[$pPage>>2]|0; + $330 = HEAP32[$pCellBody>>2]|0; + $331 = HEAP32[$3>>2]|0; + $332 = (($331) + 24|0); + _btreeParseCellPtr($329,$330,$332); + $333 = HEAP32[$3>>2]|0; + $334 = (($333) + 24|0); + $335 = $334; + $336 = $335; + $337 = HEAP32[$336>>2]|0; + $338 = (($335) + 4)|0; + $339 = $338; + $340 = HEAP32[$339>>2]|0; + HEAP32[$nCell>>2] = $337; + $341 = HEAP32[$nCell>>2]|0; + $342 = (_sqlite3Malloc($341)|0); + HEAP32[$pCellKey>>2] = $342; + $343 = HEAP32[$pCellKey>>2]|0; + $344 = ($343|0)==(0|0); + if ($344) { + label = 37; + break L24; + } + $345 = HEAP32[$idx>>2]|0; + $346 = $345&65535; + $347 = HEAP32[$3>>2]|0; + $348 = (($347) + 84|0); + $349 = HEAP16[$348>>1]|0; + $350 = $349 << 16 >> 16; + $351 = HEAP32[$3>>2]|0; + $352 = (($351) + 86|0); + $353 = (($352) + ($350<<1)|0); + HEAP16[$353>>1] = $346; + $354 = HEAP32[$3>>2]|0; + $355 = HEAP32[$nCell>>2]|0; + $356 = HEAP32[$pCellKey>>2]|0; + $357 = (_accessPayload($354,0,$355,$356,2)|0); + HEAP32[$rc>>2] = $357; + $358 = HEAP32[$rc>>2]|0; + $359 = ($358|0)!=(0); + if ($359) { + label = 39; + break L24; + } + $361 = HEAP32[$xRecordCompare>>2]|0; + $362 = HEAP32[$nCell>>2]|0; + $363 = HEAP32[$pCellKey>>2]|0; + $364 = HEAP32[$4>>2]|0; + $365 = (FUNCTION_TABLE_iiiii[$361 & 31]($362,$363,$364,0)|0); + HEAP32[$c>>2] = $365; + $366 = HEAP32[$pCellKey>>2]|0; + _sqlite3_free($366); + } + } while(0); + $367 = HEAP32[$c>>2]|0; + $368 = ($367|0)<(0); + if ($368) { + $369 = HEAP32[$idx>>2]|0; + $370 = (($369) + 1)|0; + HEAP32[$lwr>>2] = $370; + } else { + $371 = HEAP32[$c>>2]|0; + $372 = ($371|0)>(0); + if (!($372)) { + label = 45; + break L24; + } + $373 = HEAP32[$idx>>2]|0; + $374 = (($373) - 1)|0; + HEAP32[$upr>>2] = $374; + } + $389 = HEAP32[$lwr>>2]|0; + $390 = HEAP32[$upr>>2]|0; + $391 = ($389|0)>($390|0); + if ($391) { + label = 49; + break L26; + } + $392 = HEAP32[$lwr>>2]|0; + $393 = HEAP32[$upr>>2]|0; + $394 = (($392) + ($393))|0; + $395 = $394 >> 1; + HEAP32[$idx>>2] = $395; + } + } + } while(0); + if ((label|0) == 49) { + label = 0; + $396 = HEAP32[$pPage>>2]|0; + $397 = (($396) + 3|0); + $398 = HEAP8[$397>>0]|0; + $399 = ($398<<24>>24)!=(0); + if ($399) { + label = 50; + break; + } + } + $411 = HEAP32[$lwr>>2]|0; + $412 = HEAP32[$pPage>>2]|0; + $413 = (($412) + 16|0); + $414 = HEAP16[$413>>1]|0; + $415 = $414&65535; + $416 = ($411|0)>=($415|0); + $417 = HEAP32[$pPage>>2]|0; + if ($416) { + $418 = (($417) + 5|0); + $419 = HEAP8[$418>>0]|0; + $420 = $419&255; + $421 = (($420) + 8)|0; + $422 = HEAP32[$pPage>>2]|0; + $423 = (($422) + 56|0); + $424 = HEAP32[$423>>2]|0; + $425 = (($424) + ($421)|0); + $426 = (_sqlite3Get4byte($425)|0); + HEAP32[$chldPg>>2] = $426; + } else { + $427 = (($417) + 56|0); + $428 = HEAP32[$427>>2]|0; + $429 = HEAP32[$pPage>>2]|0; + $430 = (($429) + 18|0); + $431 = HEAP16[$430>>1]|0; + $432 = $431&65535; + $433 = HEAP32[$lwr>>2]|0; + $434 = $433<<1; + $435 = HEAP32[$pPage>>2]|0; + $436 = (($435) + 64|0); + $437 = HEAP32[$436>>2]|0; + $438 = (($437) + ($434)|0); + $439 = HEAP8[$438>>0]|0; + $440 = $439&255; + $441 = $440 << 8; + $442 = HEAP32[$lwr>>2]|0; + $443 = $442<<1; + $444 = HEAP32[$pPage>>2]|0; + $445 = (($444) + 64|0); + $446 = HEAP32[$445>>2]|0; + $447 = (($446) + ($443)|0); + $448 = (($447) + 1|0); + $449 = HEAP8[$448>>0]|0; + $450 = $449&255; + $451 = $441 | $450; + $452 = $432 & $451; + $453 = (($428) + ($452)|0); + $454 = (_sqlite3Get4byte($453)|0); + HEAP32[$chldPg>>2] = $454; + } + $455 = HEAP32[$lwr>>2]|0; + $456 = $455&65535; + $457 = HEAP32[$3>>2]|0; + $458 = (($457) + 84|0); + $459 = HEAP16[$458>>1]|0; + $460 = $459 << 16 >> 16; + $461 = HEAP32[$3>>2]|0; + $462 = (($461) + 86|0); + $463 = (($462) + ($460<<1)|0); + HEAP16[$463>>1] = $456; + $464 = HEAP32[$3>>2]|0; + $465 = HEAP32[$chldPg>>2]|0; + $466 = (_moveToChild($464,$465)|0); + HEAP32[$rc>>2] = $466; + $467 = HEAP32[$rc>>2]|0; + $468 = ($467|0)!=(0); + if ($468) { + break; + } + } + if ((label|0) == 20) { + $166 = (_sqlite3CorruptError(55807)|0); + HEAP32[$2>>2] = $166; + $479 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($479|0); + } + else if ((label|0) == 29) { + $244 = HEAP32[$7>>2]|0; + HEAP32[$244>>2] = 0; + HEAP32[$rc>>2] = 0; + } + else if ((label|0) == 37) { + HEAP32[$rc>>2] = 7; + } + else if ((label|0) == 39) { + $360 = HEAP32[$pCellKey>>2]|0; + _sqlite3_free($360); + } + else if ((label|0) == 45) { + $375 = HEAP32[$7>>2]|0; + HEAP32[$375>>2] = 0; + HEAP32[$rc>>2] = 0; + $376 = HEAP32[$idx>>2]|0; + $377 = $376&65535; + $378 = HEAP32[$3>>2]|0; + $379 = (($378) + 84|0); + $380 = HEAP16[$379>>1]|0; + $381 = $380 << 16 >> 16; + $382 = HEAP32[$3>>2]|0; + $383 = (($382) + 86|0); + $384 = (($383) + ($381<<1)|0); + HEAP16[$384>>1] = $377; + $385 = HEAP32[$4>>2]|0; + $386 = (($385) + 7|0); + $387 = HEAP8[$386>>0]|0; + $388 = ($387<<24>>24)!=(0); + if ($388) { + HEAP32[$rc>>2] = 11; + } + } + else if ((label|0) == 50) { + $400 = HEAP32[$idx>>2]|0; + $401 = $400&65535; + $402 = HEAP32[$3>>2]|0; + $403 = (($402) + 84|0); + $404 = HEAP16[$403>>1]|0; + $405 = $404 << 16 >> 16; + $406 = HEAP32[$3>>2]|0; + $407 = (($406) + 86|0); + $408 = (($407) + ($405<<1)|0); + HEAP16[$408>>1] = $401; + $409 = HEAP32[$c>>2]|0; + $410 = HEAP32[$7>>2]|0; + HEAP32[$410>>2] = $409; + HEAP32[$rc>>2] = 0; + } + $469 = HEAP32[$3>>2]|0; + $470 = (($469) + 24|0); + $471 = (($470) + 26|0); + HEAP16[$471>>1] = 0; + $472 = HEAP32[$3>>2]|0; + $473 = (($472) + 80|0); + $474 = HEAP8[$473>>0]|0; + $475 = $474&255; + $476 = $475 & -7; + $477 = $476&255; + HEAP8[$473>>0] = $477; + $478 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $478; + $479 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($479|0); +} +function _sqlite3VdbeFindCompare($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $flags = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $flags = sp + 4|0; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 6|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5&65535; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = (($8) + 8|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10&65535; + $12 = (($6) + ($11))|0; + $13 = ($12|0)<=(13); + if ($13) { + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 8|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + 28|0); + $18 = HEAP16[$17>>1]|0; + $19 = $18&65535; + HEAP32[$flags>>2] = $19; + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + 16|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP8[$23>>0]|0; + $25 = ($24<<24>>24)!=(0); + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 12|0); + if ($25) { + HEAP32[$27>>2] = 1; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 16|0); + HEAP32[$29>>2] = -1; + } else { + HEAP32[$27>>2] = -1; + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 16|0); + HEAP32[$31>>2] = 1; + } + $32 = HEAP32[$flags>>2]|0; + $33 = $32 & 4; + $34 = ($33|0)!=(0); + if ($34) { + HEAP32[$0>>2] = 15; + $43 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($43|0); + } + $35 = HEAP32[$flags>>2]|0; + $36 = $35 & 25; + $37 = ($36|0)==(0); + if ($37) { + $38 = HEAP32[$1>>2]|0; + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + 20|0); + $41 = HEAP32[$40>>2]|0; + $42 = ($41|0)==(0|0); + if ($42) { + HEAP32[$0>>2] = 16; + $43 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($43|0); + } + } + } + HEAP32[$0>>2] = 17; + $43 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($43|0); +} +function _moveToRoot($pCur) { + $pCur = $pCur|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $pRoot = 0, $rc = 0, $subpage = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $pRoot = sp + 4|0; + $rc = sp + 8|0; + $subpage = sp + 12|0; + HEAP32[$1>>2] = $pCur; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 81|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = ($5|0)>=(3); + do { + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 81|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = ($10|0)==(4); + $12 = HEAP32[$1>>2]|0; + if (!($11)) { + _sqlite3BtreeClearCursor($12); + break; + } + $13 = (($12) + 76|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$0>>2] = $14; + $124 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($124|0); + } + } while(0); + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 84|0); + $17 = HEAP16[$16>>1]|0; + $18 = $17 << 16 >> 16; + $19 = ($18|0)>=(0); + L8: do { + if ($19) { + while(1) { + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 84|0); + $22 = HEAP16[$21>>1]|0; + $23 = ($22<<16>>16)!=(0); + if (!($23)) { + break L8; + } + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 84|0); + $26 = HEAP16[$25>>1]|0; + $27 = (($26) + -1)<<16>>16; + HEAP16[$25>>1] = $27; + $28 = $26 << 16 >> 16; + $29 = HEAP32[$1>>2]|0; + $30 = (($29) + 128|0); + $31 = (($30) + ($28<<2)|0); + $32 = HEAP32[$31>>2]|0; + _releasePage($32); + } + } else { + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 68|0); + $35 = HEAP32[$34>>2]|0; + $36 = ($35|0)==(0); + $37 = HEAP32[$1>>2]|0; + if ($36) { + $38 = (($37) + 81|0); + HEAP8[$38>>0] = 0; + HEAP32[$0>>2] = 0; + $124 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($124|0); + } + $39 = HEAP32[$37>>2]|0; + $40 = (($39) + 4|0); + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$1>>2]|0; + $43 = (($42) + 68|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$1>>2]|0; + $46 = (($45) + 128|0); + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 80|0); + $49 = HEAP8[$48>>0]|0; + $50 = $49&255; + $51 = $50 & 1; + $52 = ($51|0)==(0); + $53 = $52 ? 2 : 0; + $54 = (_getAndInitPage($41,$44,$46,$53)|0); + HEAP32[$rc>>2] = $54; + $55 = HEAP32[$rc>>2]|0; + $56 = ($55|0)!=(0); + $57 = HEAP32[$1>>2]|0; + if (!($56)) { + $60 = (($57) + 84|0); + HEAP16[$60>>1] = 0; + break; + } + $58 = (($57) + 81|0); + HEAP8[$58>>0] = 0; + $59 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $59; + $124 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($124|0); + } + } while(0); + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 128|0); + $63 = HEAP32[$62>>2]|0; + HEAP32[$pRoot>>2] = $63; + $64 = HEAP32[$pRoot>>2]|0; + $65 = HEAP8[$64>>0]|0; + $66 = $65&255; + $67 = ($66|0)==(0); + if (!($67)) { + $68 = HEAP32[$1>>2]|0; + $69 = (($68) + 16|0); + $70 = HEAP32[$69>>2]|0; + $71 = ($70|0)==(0|0); + $72 = $71&1; + $73 = HEAP32[$pRoot>>2]|0; + $74 = (($73) + 2|0); + $75 = HEAP8[$74>>0]|0; + $76 = $75&255; + $77 = ($72|0)!=($76|0); + if (!($77)) { + $79 = HEAP32[$1>>2]|0; + $80 = (($79) + 86|0); + HEAP16[$80>>1] = 0; + $81 = HEAP32[$1>>2]|0; + $82 = (($81) + 24|0); + $83 = (($82) + 26|0); + HEAP16[$83>>1] = 0; + $84 = HEAP32[$1>>2]|0; + $85 = (($84) + 80|0); + $86 = HEAP8[$85>>0]|0; + $87 = $86&255; + $88 = $87 & -15; + $89 = $88&255; + HEAP8[$85>>0] = $89; + $90 = HEAP32[$pRoot>>2]|0; + $91 = (($90) + 16|0); + $92 = HEAP16[$91>>1]|0; + $93 = $92&65535; + $94 = ($93|0)>(0); + do { + if ($94) { + $95 = HEAP32[$1>>2]|0; + $96 = (($95) + 81|0); + HEAP8[$96>>0] = 1; + } else { + $97 = HEAP32[$pRoot>>2]|0; + $98 = (($97) + 3|0); + $99 = HEAP8[$98>>0]|0; + $100 = ($99<<24>>24)!=(0); + if ($100) { + $121 = HEAP32[$1>>2]|0; + $122 = (($121) + 81|0); + HEAP8[$122>>0] = 0; + break; + } + $101 = HEAP32[$pRoot>>2]|0; + $102 = (($101) + 72|0); + $103 = HEAP32[$102>>2]|0; + $104 = ($103|0)!=(1); + if (!($104)) { + $106 = HEAP32[$pRoot>>2]|0; + $107 = (($106) + 5|0); + $108 = HEAP8[$107>>0]|0; + $109 = $108&255; + $110 = (($109) + 8)|0; + $111 = HEAP32[$pRoot>>2]|0; + $112 = (($111) + 56|0); + $113 = HEAP32[$112>>2]|0; + $114 = (($113) + ($110)|0); + $115 = (_sqlite3Get4byte($114)|0); + HEAP32[$subpage>>2] = $115; + $116 = HEAP32[$1>>2]|0; + $117 = (($116) + 81|0); + HEAP8[$117>>0] = 1; + $118 = HEAP32[$1>>2]|0; + $119 = HEAP32[$subpage>>2]|0; + $120 = (_moveToChild($118,$119)|0); + HEAP32[$rc>>2] = $120; + break; + } + $105 = (_sqlite3CorruptError(55570)|0); + HEAP32[$0>>2] = $105; + $124 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($124|0); + } + } while(0); + $123 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $123; + $124 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($124|0); + } + } + $78 = (_sqlite3CorruptError(55559)|0); + HEAP32[$0>>2] = $78; + $124 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($124|0); +} +function _sqlite3GetVarint($p,$v) { + $p = $p|0; + $v = $v|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $a = 0, $b = 0, $s = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $a = sp + 8|0; + $b = sp + 12|0; + $s = sp + 16|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $v; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + HEAP32[$a>>2] = $5; + $6 = HEAP32[$a>>2]|0; + $7 = $6 & 128; + $8 = ($7|0)!=(0); + if (!($8)) { + $9 = HEAP32[$a>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = $10; + $12 = $11; + HEAP32[$12>>2] = $9; + $13 = (($11) + 4)|0; + $14 = $13; + HEAP32[$14>>2] = 0; + HEAP8[$0>>0] = 1; + $242 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($242|0); + } + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 1|0); + HEAP32[$1>>2] = $16; + $17 = HEAP32[$1>>2]|0; + $18 = HEAP8[$17>>0]|0; + $19 = $18&255; + HEAP32[$b>>2] = $19; + $20 = HEAP32[$b>>2]|0; + $21 = $20 & 128; + $22 = ($21|0)!=(0); + if (!($22)) { + $23 = HEAP32[$a>>2]|0; + $24 = $23 & 127; + HEAP32[$a>>2] = $24; + $25 = HEAP32[$a>>2]|0; + $26 = $25 << 7; + HEAP32[$a>>2] = $26; + $27 = HEAP32[$b>>2]|0; + $28 = HEAP32[$a>>2]|0; + $29 = $28 | $27; + HEAP32[$a>>2] = $29; + $30 = HEAP32[$a>>2]|0; + $31 = HEAP32[$2>>2]|0; + $32 = $31; + $33 = $32; + HEAP32[$33>>2] = $30; + $34 = (($32) + 4)|0; + $35 = $34; + HEAP32[$35>>2] = 0; + HEAP8[$0>>0] = 2; + $242 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($242|0); + } + $36 = HEAP32[$1>>2]|0; + $37 = (($36) + 1|0); + HEAP32[$1>>2] = $37; + $38 = HEAP32[$a>>2]|0; + $39 = $38 << 14; + HEAP32[$a>>2] = $39; + $40 = HEAP32[$1>>2]|0; + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = HEAP32[$a>>2]|0; + $44 = $43 | $42; + HEAP32[$a>>2] = $44; + $45 = HEAP32[$a>>2]|0; + $46 = $45 & 128; + $47 = ($46|0)!=(0); + $48 = HEAP32[$a>>2]|0; + $49 = $48 & 2080895; + HEAP32[$a>>2] = $49; + if (!($47)) { + $50 = HEAP32[$b>>2]|0; + $51 = $50 & 127; + HEAP32[$b>>2] = $51; + $52 = HEAP32[$b>>2]|0; + $53 = $52 << 7; + HEAP32[$b>>2] = $53; + $54 = HEAP32[$b>>2]|0; + $55 = HEAP32[$a>>2]|0; + $56 = $55 | $54; + HEAP32[$a>>2] = $56; + $57 = HEAP32[$a>>2]|0; + $58 = HEAP32[$2>>2]|0; + $59 = $58; + $60 = $59; + HEAP32[$60>>2] = $57; + $61 = (($59) + 4)|0; + $62 = $61; + HEAP32[$62>>2] = 0; + HEAP8[$0>>0] = 3; + $242 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($242|0); + } + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + 1|0); + HEAP32[$1>>2] = $64; + $65 = HEAP32[$b>>2]|0; + $66 = $65 << 14; + HEAP32[$b>>2] = $66; + $67 = HEAP32[$1>>2]|0; + $68 = HEAP8[$67>>0]|0; + $69 = $68&255; + $70 = HEAP32[$b>>2]|0; + $71 = $70 | $69; + HEAP32[$b>>2] = $71; + $72 = HEAP32[$b>>2]|0; + $73 = $72 & 128; + $74 = ($73|0)!=(0); + $75 = HEAP32[$b>>2]|0; + $76 = $75 & 2080895; + HEAP32[$b>>2] = $76; + $77 = HEAP32[$a>>2]|0; + if (!($74)) { + $78 = $77 << 7; + HEAP32[$a>>2] = $78; + $79 = HEAP32[$b>>2]|0; + $80 = HEAP32[$a>>2]|0; + $81 = $80 | $79; + HEAP32[$a>>2] = $81; + $82 = HEAP32[$a>>2]|0; + $83 = HEAP32[$2>>2]|0; + $84 = $83; + $85 = $84; + HEAP32[$85>>2] = $82; + $86 = (($84) + 4)|0; + $87 = $86; + HEAP32[$87>>2] = 0; + HEAP8[$0>>0] = 4; + $242 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($242|0); + } + HEAP32[$s>>2] = $77; + $88 = HEAP32[$1>>2]|0; + $89 = (($88) + 1|0); + HEAP32[$1>>2] = $89; + $90 = HEAP32[$a>>2]|0; + $91 = $90 << 14; + HEAP32[$a>>2] = $91; + $92 = HEAP32[$1>>2]|0; + $93 = HEAP8[$92>>0]|0; + $94 = $93&255; + $95 = HEAP32[$a>>2]|0; + $96 = $95 | $94; + HEAP32[$a>>2] = $96; + $97 = HEAP32[$a>>2]|0; + $98 = $97 & 128; + $99 = ($98|0)!=(0); + if (!($99)) { + $100 = HEAP32[$b>>2]|0; + $101 = $100 << 7; + HEAP32[$b>>2] = $101; + $102 = HEAP32[$b>>2]|0; + $103 = HEAP32[$a>>2]|0; + $104 = $103 | $102; + HEAP32[$a>>2] = $104; + $105 = HEAP32[$s>>2]|0; + $106 = $105 >>> 18; + HEAP32[$s>>2] = $106; + $107 = HEAP32[$s>>2]|0; + $108 = HEAP32[$a>>2]|0; + $109 = HEAP32[$2>>2]|0; + $110 = $109; + $111 = $110; + HEAP32[$111>>2] = $108; + $112 = (($110) + 4)|0; + $113 = $112; + HEAP32[$113>>2] = $107; + HEAP8[$0>>0] = 5; + $242 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($242|0); + } + $114 = HEAP32[$s>>2]|0; + $115 = $114 << 7; + HEAP32[$s>>2] = $115; + $116 = HEAP32[$b>>2]|0; + $117 = HEAP32[$s>>2]|0; + $118 = $117 | $116; + HEAP32[$s>>2] = $118; + $119 = HEAP32[$1>>2]|0; + $120 = (($119) + 1|0); + HEAP32[$1>>2] = $120; + $121 = HEAP32[$b>>2]|0; + $122 = $121 << 14; + HEAP32[$b>>2] = $122; + $123 = HEAP32[$1>>2]|0; + $124 = HEAP8[$123>>0]|0; + $125 = $124&255; + $126 = HEAP32[$b>>2]|0; + $127 = $126 | $125; + HEAP32[$b>>2] = $127; + $128 = HEAP32[$b>>2]|0; + $129 = $128 & 128; + $130 = ($129|0)!=(0); + if (!($130)) { + $131 = HEAP32[$a>>2]|0; + $132 = $131 & 2080895; + HEAP32[$a>>2] = $132; + $133 = HEAP32[$a>>2]|0; + $134 = $133 << 7; + HEAP32[$a>>2] = $134; + $135 = HEAP32[$b>>2]|0; + $136 = HEAP32[$a>>2]|0; + $137 = $136 | $135; + HEAP32[$a>>2] = $137; + $138 = HEAP32[$s>>2]|0; + $139 = $138 >>> 18; + HEAP32[$s>>2] = $139; + $140 = HEAP32[$s>>2]|0; + $141 = HEAP32[$a>>2]|0; + $142 = HEAP32[$2>>2]|0; + $143 = $142; + $144 = $143; + HEAP32[$144>>2] = $141; + $145 = (($143) + 4)|0; + $146 = $145; + HEAP32[$146>>2] = $140; + HEAP8[$0>>0] = 6; + $242 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($242|0); + } + $147 = HEAP32[$1>>2]|0; + $148 = (($147) + 1|0); + HEAP32[$1>>2] = $148; + $149 = HEAP32[$a>>2]|0; + $150 = $149 << 14; + HEAP32[$a>>2] = $150; + $151 = HEAP32[$1>>2]|0; + $152 = HEAP8[$151>>0]|0; + $153 = $152&255; + $154 = HEAP32[$a>>2]|0; + $155 = $154 | $153; + HEAP32[$a>>2] = $155; + $156 = HEAP32[$a>>2]|0; + $157 = $156 & 128; + $158 = ($157|0)!=(0); + $159 = HEAP32[$a>>2]|0; + if (!($158)) { + $160 = $159 & -266354561; + HEAP32[$a>>2] = $160; + $161 = HEAP32[$b>>2]|0; + $162 = $161 & 2080895; + HEAP32[$b>>2] = $162; + $163 = HEAP32[$b>>2]|0; + $164 = $163 << 7; + HEAP32[$b>>2] = $164; + $165 = HEAP32[$b>>2]|0; + $166 = HEAP32[$a>>2]|0; + $167 = $166 | $165; + HEAP32[$a>>2] = $167; + $168 = HEAP32[$s>>2]|0; + $169 = $168 >>> 11; + HEAP32[$s>>2] = $169; + $170 = HEAP32[$s>>2]|0; + $171 = HEAP32[$a>>2]|0; + $172 = HEAP32[$2>>2]|0; + $173 = $172; + $174 = $173; + HEAP32[$174>>2] = $171; + $175 = (($173) + 4)|0; + $176 = $175; + HEAP32[$176>>2] = $170; + HEAP8[$0>>0] = 7; + $242 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($242|0); + } + $177 = $159 & 2080895; + HEAP32[$a>>2] = $177; + $178 = HEAP32[$1>>2]|0; + $179 = (($178) + 1|0); + HEAP32[$1>>2] = $179; + $180 = HEAP32[$b>>2]|0; + $181 = $180 << 14; + HEAP32[$b>>2] = $181; + $182 = HEAP32[$1>>2]|0; + $183 = HEAP8[$182>>0]|0; + $184 = $183&255; + $185 = HEAP32[$b>>2]|0; + $186 = $185 | $184; + HEAP32[$b>>2] = $186; + $187 = HEAP32[$b>>2]|0; + $188 = $187 & 128; + $189 = ($188|0)!=(0); + if ($189) { + $206 = HEAP32[$1>>2]|0; + $207 = (($206) + 1|0); + HEAP32[$1>>2] = $207; + $208 = HEAP32[$a>>2]|0; + $209 = $208 << 15; + HEAP32[$a>>2] = $209; + $210 = HEAP32[$1>>2]|0; + $211 = HEAP8[$210>>0]|0; + $212 = $211&255; + $213 = HEAP32[$a>>2]|0; + $214 = $213 | $212; + HEAP32[$a>>2] = $214; + $215 = HEAP32[$b>>2]|0; + $216 = $215 & 2080895; + HEAP32[$b>>2] = $216; + $217 = HEAP32[$b>>2]|0; + $218 = $217 << 8; + HEAP32[$b>>2] = $218; + $219 = HEAP32[$b>>2]|0; + $220 = HEAP32[$a>>2]|0; + $221 = $220 | $219; + HEAP32[$a>>2] = $221; + $222 = HEAP32[$s>>2]|0; + $223 = $222 << 4; + HEAP32[$s>>2] = $223; + $224 = HEAP32[$1>>2]|0; + $225 = (($224) + -4|0); + $226 = HEAP8[$225>>0]|0; + $227 = $226&255; + HEAP32[$b>>2] = $227; + $228 = HEAP32[$b>>2]|0; + $229 = $228 & 127; + HEAP32[$b>>2] = $229; + $230 = HEAP32[$b>>2]|0; + $231 = $230 >>> 3; + HEAP32[$b>>2] = $231; + $232 = HEAP32[$b>>2]|0; + $233 = HEAP32[$s>>2]|0; + $234 = $233 | $232; + HEAP32[$s>>2] = $234; + $235 = HEAP32[$s>>2]|0; + $236 = HEAP32[$a>>2]|0; + $237 = HEAP32[$2>>2]|0; + $238 = $237; + $239 = $238; + HEAP32[$239>>2] = $236; + $240 = (($238) + 4)|0; + $241 = $240; + HEAP32[$241>>2] = $235; + HEAP8[$0>>0] = 9; + $242 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($242|0); + } else { + $190 = HEAP32[$b>>2]|0; + $191 = $190 & -266354561; + HEAP32[$b>>2] = $191; + $192 = HEAP32[$a>>2]|0; + $193 = $192 << 7; + HEAP32[$a>>2] = $193; + $194 = HEAP32[$b>>2]|0; + $195 = HEAP32[$a>>2]|0; + $196 = $195 | $194; + HEAP32[$a>>2] = $196; + $197 = HEAP32[$s>>2]|0; + $198 = $197 >>> 4; + HEAP32[$s>>2] = $198; + $199 = HEAP32[$s>>2]|0; + $200 = HEAP32[$a>>2]|0; + $201 = HEAP32[$2>>2]|0; + $202 = $201; + $203 = $202; + HEAP32[$203>>2] = $200; + $204 = (($202) + 4)|0; + $205 = $204; + HEAP32[$205>>2] = $199; + HEAP8[$0>>0] = 8; + $242 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($242|0); + } + return 0|0; +} +function _btreeParseCellPtr($pPage,$pCell,$pInfo) { + $pPage = $pPage|0; + $pCell = $pCell|0; + $pInfo = $pInfo|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $maxLocal = 0, $minLocal = 0, $n = 0, $nPayload = 0, $surplus = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $n = sp + 28|0; + $nPayload = sp + 12|0; + $minLocal = sp + 16|0; + $maxLocal = sp + 20|0; + $surplus = sp + 8|0; + HEAP32[$0>>2] = $pPage; + HEAP32[$1>>2] = $pCell; + HEAP32[$2>>2] = $pInfo; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = (($4) + 8|0); + HEAP32[$5>>2] = $3; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 6|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + HEAP16[$n>>1] = $9; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 2|0); + $12 = HEAP8[$11>>0]|0; + $13 = ($12<<24>>24)!=(0); + if ($13) { + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP8[$15>>0]|0; + $17 = ($16<<24>>24)!=(0); + if ($17) { + $18 = HEAP32[$1>>2]|0; + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = ($20|0)<(128); + $22 = HEAP32[$1>>2]|0; + if ($21) { + $23 = HEAP8[$22>>0]|0; + $24 = $23&255; + HEAP32[$nPayload>>2] = $24; + $28 = 1; + } else { + $25 = (_sqlite3GetVarint32($22,$nPayload)|0); + $26 = $25&255; + $28 = $26; + } + $27 = $28&255; + $29 = $27&255; + HEAP16[$n>>1] = $29; + } else { + HEAP32[$nPayload>>2] = 0; + } + $30 = HEAP16[$n>>1]|0; + $31 = $30&65535; + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + ($31)|0); + $34 = HEAP32[$2>>2]|0; + $35 = (_sqlite3GetVarint($33,$34)|0); + $36 = $35&255; + $37 = HEAP16[$n>>1]|0; + $38 = $37&65535; + $39 = (($38) + ($36))|0; + $40 = $39&65535; + HEAP16[$n>>1] = $40; + $41 = HEAP32[$nPayload>>2]|0; + $42 = HEAP32[$2>>2]|0; + $43 = (($42) + 12|0); + HEAP32[$43>>2] = $41; + } else { + $44 = HEAP32[$2>>2]|0; + $45 = (($44) + 12|0); + HEAP32[$45>>2] = 0; + $46 = HEAP16[$n>>1]|0; + $47 = $46&65535; + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + ($47)|0); + $50 = HEAP8[$49>>0]|0; + $51 = $50&255; + $52 = ($51|0)<(128); + $53 = HEAP16[$n>>1]|0; + $54 = $53&65535; + $55 = HEAP32[$1>>2]|0; + $56 = (($55) + ($54)|0); + if ($52) { + $57 = HEAP8[$56>>0]|0; + $58 = $57&255; + HEAP32[$nPayload>>2] = $58; + $62 = 1; + } else { + $59 = (_sqlite3GetVarint32($56,$nPayload)|0); + $60 = $59&255; + $62 = $60; + } + $61 = $62&255; + $63 = $61&255; + $64 = HEAP16[$n>>1]|0; + $65 = $64&65535; + $66 = (($65) + ($63))|0; + $67 = $66&65535; + HEAP16[$n>>1] = $67; + $68 = HEAP32[$nPayload>>2]|0; + $69 = HEAP32[$2>>2]|0; + $70 = $69; + $71 = $70; + HEAP32[$71>>2] = $68; + $72 = (($70) + 4)|0; + $73 = $72; + HEAP32[$73>>2] = 0; + } + $74 = HEAP32[$nPayload>>2]|0; + $75 = HEAP32[$2>>2]|0; + $76 = (($75) + 16|0); + HEAP32[$76>>2] = $74; + $77 = HEAP16[$n>>1]|0; + $78 = HEAP32[$2>>2]|0; + $79 = (($78) + 20|0); + HEAP16[$79>>1] = $77; + $80 = HEAP32[$nPayload>>2]|0; + $81 = HEAP32[$0>>2]|0; + $82 = (($81) + 8|0); + $83 = HEAP16[$82>>1]|0; + $84 = $83&65535; + $85 = ($80>>>0)<=($84>>>0); + if ($85) { + $86 = HEAP16[$n>>1]|0; + $87 = $86&65535; + $88 = HEAP32[$nPayload>>2]|0; + $89 = (($87) + ($88))|0; + $90 = $89&65535; + $91 = HEAP32[$2>>2]|0; + $92 = (($91) + 26|0); + HEAP16[$92>>1] = $90; + $93 = $90&65535; + $94 = ($93|0)<(4); + if ($94) { + $95 = HEAP32[$2>>2]|0; + $96 = (($95) + 26|0); + HEAP16[$96>>1] = 4; + } + $97 = HEAP32[$nPayload>>2]|0; + $98 = $97&65535; + $99 = HEAP32[$2>>2]|0; + $100 = (($99) + 22|0); + HEAP16[$100>>1] = $98; + $101 = HEAP32[$2>>2]|0; + $102 = (($101) + 24|0); + HEAP16[$102>>1] = 0; + STACKTOP = sp;return; + } + $103 = HEAP32[$0>>2]|0; + $104 = (($103) + 10|0); + $105 = HEAP16[$104>>1]|0; + $106 = $105&65535; + HEAP32[$minLocal>>2] = $106; + $107 = HEAP32[$0>>2]|0; + $108 = (($107) + 8|0); + $109 = HEAP16[$108>>1]|0; + $110 = $109&65535; + HEAP32[$maxLocal>>2] = $110; + $111 = HEAP32[$minLocal>>2]|0; + $112 = HEAP32[$nPayload>>2]|0; + $113 = HEAP32[$minLocal>>2]|0; + $114 = (($112) - ($113))|0; + $115 = HEAP32[$0>>2]|0; + $116 = (($115) + 52|0); + $117 = HEAP32[$116>>2]|0; + $118 = (($117) + 36|0); + $119 = HEAP32[$118>>2]|0; + $120 = (($119) - 4)|0; + $121 = (($114>>>0) % ($120>>>0))&-1; + $122 = (($111) + ($121))|0; + HEAP32[$surplus>>2] = $122; + $123 = HEAP32[$surplus>>2]|0; + $124 = HEAP32[$maxLocal>>2]|0; + $125 = ($123|0)<=($124|0); + if ($125) { + $126 = HEAP32[$surplus>>2]|0; + $127 = $126&65535; + $128 = HEAP32[$2>>2]|0; + $129 = (($128) + 22|0); + HEAP16[$129>>1] = $127; + } else { + $130 = HEAP32[$minLocal>>2]|0; + $131 = $130&65535; + $132 = HEAP32[$2>>2]|0; + $133 = (($132) + 22|0); + HEAP16[$133>>1] = $131; + } + $134 = HEAP32[$2>>2]|0; + $135 = (($134) + 22|0); + $136 = HEAP16[$135>>1]|0; + $137 = $136&65535; + $138 = HEAP16[$n>>1]|0; + $139 = $138&65535; + $140 = (($137) + ($139))|0; + $141 = $140&65535; + $142 = HEAP32[$2>>2]|0; + $143 = (($142) + 24|0); + HEAP16[$143>>1] = $141; + $144 = HEAP32[$2>>2]|0; + $145 = (($144) + 24|0); + $146 = HEAP16[$145>>1]|0; + $147 = $146&65535; + $148 = (($147) + 4)|0; + $149 = $148&65535; + $150 = HEAP32[$2>>2]|0; + $151 = (($150) + 26|0); + HEAP16[$151>>1] = $149; + STACKTOP = sp;return; +} +function _accessPayload($pCur,$offset,$amt,$pBuf,$eOp) { + $pCur = $pCur|0; + $offset = $offset|0; + $amt = $amt|0; + $pBuf = $pBuf|0; + $eOp = $eOp|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a = 0, $a1 = 0; + var $aNew = 0, $aPayload = 0, $iIdx = 0, $iPage = 0, $nKey = 0, $nOvfl = 0, $nextPage = 0, $ovflSize = 0, $pBt = 0, $pDbPage = 0, $pPage = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 76|0; + $1 = sp + 72|0; + $2 = sp + 68|0; + $3 = sp + 64|0; + $4 = sp + 60|0; + $5 = sp + 56|0; + $aPayload = sp + 52|0; + $rc = sp + 48|0; + $nKey = sp + 44|0; + $iIdx = sp + 40|0; + $pPage = sp + 36|0; + $pBt = sp + 12|0; + $iPage = sp; + $a = sp + 4|0; + $ovflSize = sp + 8|0; + $nextPage = sp + 16|0; + $nOvfl = sp + 20|0; + $aNew = sp + 24|0; + $a1 = sp + 28|0; + $pDbPage = sp + 32|0; + HEAP32[$1>>2] = $pCur; + HEAP32[$2>>2] = $offset; + HEAP32[$3>>2] = $amt; + HEAP32[$4>>2] = $pBuf; + HEAP32[$5>>2] = $eOp; + HEAP32[$rc>>2] = 0; + HEAP32[$iIdx>>2] = 0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 84|0); + $8 = HEAP16[$7>>1]|0; + $9 = $8 << 16 >> 16; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 128|0); + $12 = (($11) + ($9<<2)|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pPage>>2] = $13; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$pBt>>2] = $16; + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 24|0); + $19 = (($18) + 26|0); + $20 = HEAP16[$19>>1]|0; + $21 = $20&65535; + $22 = ($21|0)==(0); + if ($22) { + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 84|0); + $25 = HEAP16[$24>>1]|0; + $26 = $25 << 16 >> 16; + HEAP32[$iPage>>2] = $26; + $27 = HEAP32[$iPage>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 128|0); + $30 = (($29) + ($27<<2)|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$iPage>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 86|0); + $35 = (($34) + ($32<<1)|0); + $36 = HEAP16[$35>>1]|0; + $37 = $36&65535; + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 24|0); + _btreeParseCell($31,$37,$39); + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 80|0); + $42 = HEAP8[$41>>0]|0; + $43 = $42&255; + $44 = $43 | 2; + $45 = $44&255; + HEAP8[$41>>0] = $45; + } + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 24|0); + $48 = (($47) + 8|0); + $49 = HEAP32[$48>>2]|0; + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 24|0); + $52 = (($51) + 20|0); + $53 = HEAP16[$52>>1]|0; + $54 = $53&65535; + $55 = (($49) + ($54)|0); + HEAP32[$aPayload>>2] = $55; + $56 = HEAP32[$pPage>>2]|0; + $57 = (($56) + 2|0); + $58 = HEAP8[$57>>0]|0; + $59 = $58&255; + $60 = ($59|0)!=(0); + if ($60) { + $69 = 0; + } else { + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 24|0); + $63 = $62; + $64 = $63; + $65 = HEAP32[$64>>2]|0; + $66 = (($63) + 4)|0; + $67 = $66; + $68 = HEAP32[$67>>2]|0; + $69 = $65; + } + HEAP32[$nKey>>2] = $69; + $70 = HEAP32[$2>>2]|0; + $71 = HEAP32[$3>>2]|0; + $72 = (($70) + ($71))|0; + $73 = HEAP32[$nKey>>2]|0; + $74 = HEAP32[$1>>2]|0; + $75 = (($74) + 24|0); + $76 = (($75) + 12|0); + $77 = HEAP32[$76>>2]|0; + $78 = (($73) + ($77))|0; + $79 = ($72>>>0)>($78>>>0); + if (!($79)) { + $80 = HEAP32[$1>>2]|0; + $81 = (($80) + 24|0); + $82 = (($81) + 22|0); + $83 = HEAP16[$82>>1]|0; + $84 = $83&65535; + $85 = HEAP32[$aPayload>>2]|0; + $86 = (($85) + ($84)|0); + $87 = HEAP32[$pBt>>2]|0; + $88 = (($87) + 36|0); + $89 = HEAP32[$88>>2]|0; + $90 = HEAP32[$pPage>>2]|0; + $91 = (($90) + 56|0); + $92 = HEAP32[$91>>2]|0; + $93 = (($92) + ($89)|0); + $94 = ($86>>>0)>($93>>>0); + if (!($94)) { + $96 = HEAP32[$2>>2]|0; + $97 = HEAP32[$1>>2]|0; + $98 = (($97) + 24|0); + $99 = (($98) + 22|0); + $100 = HEAP16[$99>>1]|0; + $101 = $100&65535; + $102 = ($96>>>0)<($101>>>0); + if ($102) { + $103 = HEAP32[$3>>2]|0; + HEAP32[$a>>2] = $103; + $104 = HEAP32[$a>>2]|0; + $105 = HEAP32[$2>>2]|0; + $106 = (($104) + ($105))|0; + $107 = HEAP32[$1>>2]|0; + $108 = (($107) + 24|0); + $109 = (($108) + 22|0); + $110 = HEAP16[$109>>1]|0; + $111 = $110&65535; + $112 = ($106>>>0)>($111>>>0); + if ($112) { + $113 = HEAP32[$1>>2]|0; + $114 = (($113) + 24|0); + $115 = (($114) + 22|0); + $116 = HEAP16[$115>>1]|0; + $117 = $116&65535; + $118 = HEAP32[$2>>2]|0; + $119 = (($117) - ($118))|0; + HEAP32[$a>>2] = $119; + } + $120 = HEAP32[$2>>2]|0; + $121 = HEAP32[$aPayload>>2]|0; + $122 = (($121) + ($120)|0); + $123 = HEAP32[$4>>2]|0; + $124 = HEAP32[$a>>2]|0; + $125 = HEAP32[$5>>2]|0; + $126 = $125 & 1; + $127 = HEAP32[$pPage>>2]|0; + $128 = (($127) + 68|0); + $129 = HEAP32[$128>>2]|0; + $130 = (_copyPayload($122,$123,$124,$126,$129)|0); + HEAP32[$rc>>2] = $130; + HEAP32[$2>>2] = 0; + $131 = HEAP32[$a>>2]|0; + $132 = HEAP32[$4>>2]|0; + $133 = (($132) + ($131)|0); + HEAP32[$4>>2] = $133; + $134 = HEAP32[$a>>2]|0; + $135 = HEAP32[$3>>2]|0; + $136 = (($135) - ($134))|0; + HEAP32[$3>>2] = $136; + } else { + $137 = HEAP32[$1>>2]|0; + $138 = (($137) + 24|0); + $139 = (($138) + 22|0); + $140 = HEAP16[$139>>1]|0; + $141 = $140&65535; + $142 = HEAP32[$2>>2]|0; + $143 = (($142) - ($141))|0; + HEAP32[$2>>2] = $143; + } + $144 = HEAP32[$rc>>2]|0; + $145 = ($144|0)==(0); + L17: do { + if ($145) { + $146 = HEAP32[$3>>2]|0; + $147 = ($146>>>0)>(0); + if ($147) { + $148 = HEAP32[$pBt>>2]|0; + $149 = (($148) + 36|0); + $150 = HEAP32[$149>>2]|0; + $151 = (($150) - 4)|0; + HEAP32[$ovflSize>>2] = $151; + $152 = HEAP32[$1>>2]|0; + $153 = (($152) + 24|0); + $154 = (($153) + 22|0); + $155 = HEAP16[$154>>1]|0; + $156 = $155&65535; + $157 = HEAP32[$aPayload>>2]|0; + $158 = (($157) + ($156)|0); + $159 = (_sqlite3Get4byte($158)|0); + HEAP32[$nextPage>>2] = $159; + $160 = HEAP32[$5>>2]|0; + $161 = ($160|0)!=(2); + if ($161) { + $162 = HEAP32[$1>>2]|0; + $163 = (($162) + 80|0); + $164 = HEAP8[$163>>0]|0; + $165 = $164&255; + $166 = $165 & 4; + $167 = ($166|0)==(0); + if ($167) { + $168 = HEAP32[$1>>2]|0; + $169 = (($168) + 24|0); + $170 = (($169) + 16|0); + $171 = HEAP32[$170>>2]|0; + $172 = HEAP32[$1>>2]|0; + $173 = (($172) + 24|0); + $174 = (($173) + 22|0); + $175 = HEAP16[$174>>1]|0; + $176 = $175&65535; + $177 = (($171) - ($176))|0; + $178 = HEAP32[$ovflSize>>2]|0; + $179 = (($177) + ($178))|0; + $180 = (($179) - 1)|0; + $181 = HEAP32[$ovflSize>>2]|0; + $182 = (($180>>>0) / ($181>>>0))&-1; + HEAP32[$nOvfl>>2] = $182; + $183 = HEAP32[$nOvfl>>2]|0; + $184 = HEAP32[$1>>2]|0; + $185 = (($184) + 72|0); + $186 = HEAP32[$185>>2]|0; + $187 = ($183|0)>($186|0); + do { + if ($187) { + $188 = HEAP32[$1>>2]|0; + $189 = HEAP32[$188>>2]|0; + $190 = HEAP32[$189>>2]|0; + $191 = HEAP32[$1>>2]|0; + $192 = (($191) + 20|0); + $193 = HEAP32[$192>>2]|0; + $194 = HEAP32[$nOvfl>>2]|0; + $195 = $194<<1; + $196 = $195<<2; + $197 = (_sqlite3DbRealloc($190,$193,$196)|0); + HEAP32[$aNew>>2] = $197; + $198 = HEAP32[$aNew>>2]|0; + $199 = ($198|0)==(0|0); + if ($199) { + HEAP32[$rc>>2] = 7; + break; + } else { + $200 = HEAP32[$nOvfl>>2]|0; + $201 = $200<<1; + $202 = HEAP32[$1>>2]|0; + $203 = (($202) + 72|0); + HEAP32[$203>>2] = $201; + $204 = HEAP32[$aNew>>2]|0; + $205 = HEAP32[$1>>2]|0; + $206 = (($205) + 20|0); + HEAP32[$206>>2] = $204; + break; + } + } + } while(0); + $207 = HEAP32[$rc>>2]|0; + $208 = ($207|0)==(0); + if ($208) { + $209 = HEAP32[$1>>2]|0; + $210 = (($209) + 20|0); + $211 = HEAP32[$210>>2]|0; + $212 = HEAP32[$nOvfl>>2]|0; + $213 = $212<<2; + _memset(($211|0),0,($213|0))|0; + $214 = HEAP32[$1>>2]|0; + $215 = (($214) + 80|0); + $216 = HEAP8[$215>>0]|0; + $217 = $216&255; + $218 = $217 | 4; + $219 = $218&255; + HEAP8[$215>>0] = $219; + } + } + } + $220 = HEAP32[$1>>2]|0; + $221 = (($220) + 80|0); + $222 = HEAP8[$221>>0]|0; + $223 = $222&255; + $224 = $223 & 4; + $225 = ($224|0)!=(0); + if ($225) { + $226 = HEAP32[$2>>2]|0; + $227 = HEAP32[$ovflSize>>2]|0; + $228 = (($226>>>0) / ($227>>>0))&-1; + $229 = HEAP32[$1>>2]|0; + $230 = (($229) + 20|0); + $231 = HEAP32[$230>>2]|0; + $232 = (($231) + ($228<<2)|0); + $233 = HEAP32[$232>>2]|0; + $234 = ($233|0)!=(0); + if ($234) { + $235 = HEAP32[$2>>2]|0; + $236 = HEAP32[$ovflSize>>2]|0; + $237 = (($235>>>0) / ($236>>>0))&-1; + HEAP32[$iIdx>>2] = $237; + $238 = HEAP32[$iIdx>>2]|0; + $239 = HEAP32[$1>>2]|0; + $240 = (($239) + 20|0); + $241 = HEAP32[$240>>2]|0; + $242 = (($241) + ($238<<2)|0); + $243 = HEAP32[$242>>2]|0; + HEAP32[$nextPage>>2] = $243; + $244 = HEAP32[$2>>2]|0; + $245 = HEAP32[$ovflSize>>2]|0; + $246 = (($244>>>0) % ($245>>>0))&-1; + HEAP32[$2>>2] = $246; + } + } + while(1) { + $247 = HEAP32[$rc>>2]|0; + $248 = ($247|0)==(0); + if (!($248)) { + break L17; + } + $249 = HEAP32[$3>>2]|0; + $250 = ($249>>>0)>(0); + if (!($250)) { + break L17; + } + $251 = HEAP32[$nextPage>>2]|0; + $252 = ($251|0)!=(0); + if (!($252)) { + break L17; + } + $253 = HEAP32[$1>>2]|0; + $254 = (($253) + 80|0); + $255 = HEAP8[$254>>0]|0; + $256 = $255&255; + $257 = $256 & 4; + $258 = ($257|0)!=(0); + if ($258) { + $259 = HEAP32[$nextPage>>2]|0; + $260 = HEAP32[$iIdx>>2]|0; + $261 = HEAP32[$1>>2]|0; + $262 = (($261) + 20|0); + $263 = HEAP32[$262>>2]|0; + $264 = (($263) + ($260<<2)|0); + HEAP32[$264>>2] = $259; + } + $265 = HEAP32[$2>>2]|0; + $266 = HEAP32[$ovflSize>>2]|0; + $267 = ($265>>>0)>=($266>>>0); + if ($267) { + $268 = HEAP32[$iIdx>>2]|0; + $269 = (($268) + 1)|0; + $270 = HEAP32[$1>>2]|0; + $271 = (($270) + 20|0); + $272 = HEAP32[$271>>2]|0; + $273 = (($272) + ($269<<2)|0); + $274 = HEAP32[$273>>2]|0; + $275 = ($274|0)!=(0); + if ($275) { + $276 = HEAP32[$iIdx>>2]|0; + $277 = (($276) + 1)|0; + $278 = HEAP32[$1>>2]|0; + $279 = (($278) + 20|0); + $280 = HEAP32[$279>>2]|0; + $281 = (($280) + ($277<<2)|0); + $282 = HEAP32[$281>>2]|0; + HEAP32[$nextPage>>2] = $282; + } else { + $283 = HEAP32[$pBt>>2]|0; + $284 = HEAP32[$nextPage>>2]|0; + $285 = (_getOverflowPage($283,$284,0,$nextPage)|0); + HEAP32[$rc>>2] = $285; + } + $286 = HEAP32[$ovflSize>>2]|0; + $287 = HEAP32[$2>>2]|0; + $288 = (($287) - ($286))|0; + HEAP32[$2>>2] = $288; + } else { + $289 = HEAP32[$3>>2]|0; + HEAP32[$a1>>2] = $289; + $290 = HEAP32[$a1>>2]|0; + $291 = HEAP32[$2>>2]|0; + $292 = (($290) + ($291))|0; + $293 = HEAP32[$ovflSize>>2]|0; + $294 = ($292>>>0)>($293>>>0); + if ($294) { + $295 = HEAP32[$ovflSize>>2]|0; + $296 = HEAP32[$2>>2]|0; + $297 = (($295) - ($296))|0; + HEAP32[$a1>>2] = $297; + } + $298 = HEAP32[$pBt>>2]|0; + $299 = HEAP32[$298>>2]|0; + $300 = HEAP32[$nextPage>>2]|0; + $301 = HEAP32[$5>>2]|0; + $302 = $301 & 1; + $303 = ($302|0)==(0); + $304 = $303 ? 2 : 0; + $305 = (_sqlite3PagerAcquire($299,$300,$pDbPage,$304)|0); + HEAP32[$rc>>2] = $305; + $306 = HEAP32[$rc>>2]|0; + $307 = ($306|0)==(0); + if ($307) { + $308 = HEAP32[$pDbPage>>2]|0; + $309 = (_sqlite3PagerGetData($308)|0); + HEAP32[$aPayload>>2] = $309; + $310 = HEAP32[$aPayload>>2]|0; + $311 = (_sqlite3Get4byte($310)|0); + HEAP32[$nextPage>>2] = $311; + $312 = HEAP32[$2>>2]|0; + $313 = (($312) + 4)|0; + $314 = HEAP32[$aPayload>>2]|0; + $315 = (($314) + ($313)|0); + $316 = HEAP32[$4>>2]|0; + $317 = HEAP32[$a1>>2]|0; + $318 = HEAP32[$5>>2]|0; + $319 = $318 & 1; + $320 = HEAP32[$pDbPage>>2]|0; + $321 = (_copyPayload($315,$316,$317,$319,$320)|0); + HEAP32[$rc>>2] = $321; + $322 = HEAP32[$pDbPage>>2]|0; + _sqlite3PagerUnref($322); + HEAP32[$2>>2] = 0; + } + $323 = HEAP32[$a1>>2]|0; + $324 = HEAP32[$3>>2]|0; + $325 = (($324) - ($323))|0; + HEAP32[$3>>2] = $325; + $326 = HEAP32[$a1>>2]|0; + $327 = HEAP32[$4>>2]|0; + $328 = (($327) + ($326)|0); + HEAP32[$4>>2] = $328; + } + $329 = HEAP32[$iIdx>>2]|0; + $330 = (($329) + 1)|0; + HEAP32[$iIdx>>2] = $330; + } + } + } + } while(0); + $331 = HEAP32[$rc>>2]|0; + $332 = ($331|0)==(0); + if ($332) { + $333 = HEAP32[$3>>2]|0; + $334 = ($333>>>0)>(0); + if ($334) { + $335 = (_sqlite3CorruptError(55292)|0); + HEAP32[$0>>2] = $335; + $337 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($337|0); + } + } + $336 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $336; + $337 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($337|0); + } + } + $95 = (_sqlite3CorruptError(55144)|0); + HEAP32[$0>>2] = $95; + $337 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($337|0); +} +function _btreeParseCell($pPage,$iCell,$pInfo) { + $pPage = $pPage|0; + $iCell = $iCell|0; + $pInfo = $pInfo|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pPage; + HEAP32[$1>>2] = $iCell; + HEAP32[$2>>2] = $pInfo; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 56|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 18|0); + $9 = HEAP16[$8>>1]|0; + $10 = $9&65535; + $11 = HEAP32[$1>>2]|0; + $12 = $11<<1; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 64|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + ($12)|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = $18 << 8; + $20 = HEAP32[$1>>2]|0; + $21 = $20<<1; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 64|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + ($21)|0); + $26 = (($25) + 1|0); + $27 = HEAP8[$26>>0]|0; + $28 = $27&255; + $29 = $19 | $28; + $30 = $10 & $29; + $31 = (($6) + ($30)|0); + $32 = HEAP32[$2>>2]|0; + _btreeParseCellPtr($3,$31,$32); + STACKTOP = sp;return; +} +function _copyPayload($pPayload,$pBuf,$nByte,$eOp,$pDbPage) { + $pPayload = $pPayload|0; + $pBuf = $pBuf|0; + $nByte = $nByte|0; + $eOp = $eOp|0; + $pDbPage = $pDbPage|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $5 = sp + 16|0; + $rc = sp + 20|0; + HEAP32[$1>>2] = $pPayload; + HEAP32[$2>>2] = $pBuf; + HEAP32[$3>>2] = $nByte; + HEAP32[$4>>2] = $eOp; + HEAP32[$5>>2] = $pDbPage; + $6 = HEAP32[$4>>2]|0; + $7 = ($6|0)!=(0); + do { + if ($7) { + $8 = HEAP32[$5>>2]|0; + $9 = (_sqlite3PagerWrite($8)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + $11 = ($10|0)!=(0); + if (!($11)) { + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$3>>2]|0; + _memcpy(($13|0),($14|0),($15|0))|0; + break; + } + $12 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $12; + $19 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($19|0); + } else { + $16 = HEAP32[$2>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$3>>2]|0; + _memcpy(($16|0),($17|0),($18|0))|0; + } + } while(0); + HEAP32[$0>>2] = 0; + $19 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($19|0); +} +function _getOverflowPage($pBt,$ovfl,$ppPage,$pPgnoNext) { + $pBt = $pBt|0; + $ovfl = $ovfl|0; + $ppPage = $ppPage|0; + $pPgnoNext = $pPgnoNext|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $eType = 0, $iGuess = 0, $next = 0, $pPage = 0, $pgno = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 16|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $next = sp + 20|0; + $pPage = sp + 12|0; + $rc = sp + 8|0; + $pgno = sp + 4|0; + $iGuess = sp; + $eType = sp + 36|0; + HEAP32[$0>>2] = $pBt; + HEAP32[$1>>2] = $ovfl; + HEAP32[$2>>2] = $ppPage; + HEAP32[$3>>2] = $pPgnoNext; + HEAP32[$next>>2] = 0; + HEAP32[$pPage>>2] = 0; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 17|0); + $6 = HEAP8[$5>>0]|0; + $7 = ($6<<24>>24)!=(0); + if ($7) { + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 1)|0; + HEAP32[$iGuess>>2] = $9; + while(1) { + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$iGuess>>2]|0; + $12 = (_ptrmapPageno($10,$11)|0); + $13 = HEAP32[$iGuess>>2]|0; + $14 = ($12|0)==($13|0); + if ($14) { + $64 = 1; + } else { + $15 = HEAP32[$iGuess>>2]|0; + $16 = HEAP32[1472>>2]|0; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 32|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($16>>>0) / ($19>>>0))&-1; + $21 = (($20) + 1)|0; + $22 = ($15|0)==($21|0); + $64 = $22; + } + $23 = HEAP32[$iGuess>>2]|0; + if (!($64)) { + break; + } + $24 = (($23) + 1)|0; + HEAP32[$iGuess>>2] = $24; + } + $25 = HEAP32[$0>>2]|0; + $26 = (_btreePagecount($25)|0); + $27 = ($23>>>0)<=($26>>>0); + if ($27) { + $28 = HEAP32[$0>>2]|0; + $29 = HEAP32[$iGuess>>2]|0; + $30 = (_ptrmapGet($28,$29,$eType,$pgno)|0); + HEAP32[$rc>>2] = $30; + $31 = HEAP32[$rc>>2]|0; + $32 = ($31|0)==(0); + if ($32) { + $33 = HEAP8[$eType>>0]|0; + $34 = $33&255; + $35 = ($34|0)==(4); + if ($35) { + $36 = HEAP32[$pgno>>2]|0; + $37 = HEAP32[$1>>2]|0; + $38 = ($36|0)==($37|0); + if ($38) { + $39 = HEAP32[$iGuess>>2]|0; + HEAP32[$next>>2] = $39; + HEAP32[$rc>>2] = 101; + } + } + } + } + } + $40 = HEAP32[$rc>>2]|0; + $41 = ($40|0)==(0); + if ($41) { + $42 = HEAP32[$0>>2]|0; + $43 = HEAP32[$1>>2]|0; + $44 = HEAP32[$2>>2]|0; + $45 = ($44|0)==(0|0); + $46 = $45 ? 2 : 0; + $47 = (_btreeGetPage($42,$43,$pPage,$46)|0); + HEAP32[$rc>>2] = $47; + $48 = HEAP32[$rc>>2]|0; + $49 = ($48|0)==(0); + if ($49) { + $50 = HEAP32[$pPage>>2]|0; + $51 = (($50) + 56|0); + $52 = HEAP32[$51>>2]|0; + $53 = (_sqlite3Get4byte($52)|0); + HEAP32[$next>>2] = $53; + } + } + $54 = HEAP32[$next>>2]|0; + $55 = HEAP32[$3>>2]|0; + HEAP32[$55>>2] = $54; + $56 = HEAP32[$2>>2]|0; + $57 = ($56|0)!=(0|0); + $58 = HEAP32[$pPage>>2]|0; + if ($57) { + $59 = HEAP32[$2>>2]|0; + HEAP32[$59>>2] = $58; + $60 = HEAP32[$rc>>2]|0; + $61 = ($60|0)==(101); + $62 = HEAP32[$rc>>2]|0; + $63 = $61 ? 0 : $62; + STACKTOP = sp;return ($63|0); + } else { + _releasePage($58); + $60 = HEAP32[$rc>>2]|0; + $61 = ($60|0)==(101); + $62 = HEAP32[$rc>>2]|0; + $63 = $61 ? 0 : $62; + STACKTOP = sp;return ($63|0); + } + return 0|0; +} +function _ptrmapPageno($pBt,$pgno) { + $pBt = $pBt|0; + $pgno = $pgno|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iPtrMap = 0, $nPagesPerMapPage = 0, $ret = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $nPagesPerMapPage = sp + 8|0; + $iPtrMap = sp + 12|0; + $ret = sp + 16|0; + HEAP32[$1>>2] = $pBt; + HEAP32[$2>>2] = $pgno; + $3 = HEAP32[$2>>2]|0; + $4 = ($3>>>0)<(2); + if ($4) { + HEAP32[$0>>2] = 0; + $29 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($29|0); + } + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 36|0); + $7 = HEAP32[$6>>2]|0; + $8 = (($7>>>0) / 5)&-1; + $9 = (($8) + 1)|0; + HEAP32[$nPagesPerMapPage>>2] = $9; + $10 = HEAP32[$2>>2]|0; + $11 = (($10) - 2)|0; + $12 = HEAP32[$nPagesPerMapPage>>2]|0; + $13 = (($11>>>0) / ($12>>>0))&-1; + HEAP32[$iPtrMap>>2] = $13; + $14 = HEAP32[$iPtrMap>>2]|0; + $15 = HEAP32[$nPagesPerMapPage>>2]|0; + $16 = Math_imul($14, $15)|0; + $17 = (($16) + 2)|0; + HEAP32[$ret>>2] = $17; + $18 = HEAP32[$ret>>2]|0; + $19 = HEAP32[1472>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 32|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($19>>>0) / ($22>>>0))&-1; + $24 = (($23) + 1)|0; + $25 = ($18|0)==($24|0); + if ($25) { + $26 = HEAP32[$ret>>2]|0; + $27 = (($26) + 1)|0; + HEAP32[$ret>>2] = $27; + } + $28 = HEAP32[$ret>>2]|0; + HEAP32[$0>>2] = $28; + $29 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($29|0); +} +function _ptrmapGet($pBt,$key,$pEType,$pPgno) { + $pBt = $pBt|0; + $key = $key|0; + $pEType = $pEType|0; + $pPgno = $pPgno|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iPtrmap = 0, $offset = 0, $pDbPage = 0, $pPtrmap = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 20|0; + $pDbPage = sp + 16|0; + $iPtrmap = sp + 8|0; + $pPtrmap = sp + 4|0; + $offset = sp; + $rc = sp + 12|0; + HEAP32[$1>>2] = $pBt; + HEAP32[$2>>2] = $key; + HEAP32[$3>>2] = $pEType; + HEAP32[$4>>2] = $pPgno; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = (_ptrmapPageno($5,$6)|0); + HEAP32[$iPtrmap>>2] = $7; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$iPtrmap>>2]|0; + $11 = (_sqlite3PagerAcquire($9,$10,$pDbPage,0)|0); + HEAP32[$rc>>2] = $11; + $12 = HEAP32[$rc>>2]|0; + $13 = ($12|0)!=(0); + if ($13) { + $14 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $14; + $49 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($49|0); + } + $15 = HEAP32[$pDbPage>>2]|0; + $16 = (_sqlite3PagerGetData($15)|0); + HEAP32[$pPtrmap>>2] = $16; + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$iPtrmap>>2]|0; + $19 = (($17) - ($18))|0; + $20 = (($19) - 1)|0; + $21 = ($20*5)|0; + HEAP32[$offset>>2] = $21; + $22 = HEAP32[$offset>>2]|0; + $23 = ($22|0)<(0); + if ($23) { + $24 = HEAP32[$pDbPage>>2]|0; + _sqlite3PagerUnref($24); + $25 = (_sqlite3CorruptError(52032)|0); + HEAP32[$0>>2] = $25; + $49 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($49|0); + } + $26 = HEAP32[$offset>>2]|0; + $27 = HEAP32[$pPtrmap>>2]|0; + $28 = (($27) + ($26)|0); + $29 = HEAP8[$28>>0]|0; + $30 = HEAP32[$3>>2]|0; + HEAP8[$30>>0] = $29; + $31 = HEAP32[$4>>2]|0; + $32 = ($31|0)!=(0|0); + if ($32) { + $33 = HEAP32[$offset>>2]|0; + $34 = (($33) + 1)|0; + $35 = HEAP32[$pPtrmap>>2]|0; + $36 = (($35) + ($34)|0); + $37 = (_sqlite3Get4byte($36)|0); + $38 = HEAP32[$4>>2]|0; + HEAP32[$38>>2] = $37; + } + $39 = HEAP32[$pDbPage>>2]|0; + _sqlite3PagerUnref($39); + $40 = HEAP32[$3>>2]|0; + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = ($42|0)<(1); + if (!($43)) { + $44 = HEAP32[$3>>2]|0; + $45 = HEAP8[$44>>0]|0; + $46 = $45&255; + $47 = ($46|0)>(5); + if (!($47)) { + HEAP32[$0>>2] = 0; + $49 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($49|0); + } + } + $48 = (_sqlite3CorruptError(52040)|0); + HEAP32[$0>>2] = $48; + $49 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($49|0); +} +function _sqlite3GetVarint32($p,$v) { + $p = $p|0; + $v = $v|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $a = 0, $b = 0, $n = 0, $v64 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 25|0; + $1 = sp + 20|0; + $2 = sp + 8|0; + $a = sp + 12|0; + $b = sp + 16|0; + $v64 = sp; + $n = sp + 24|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $v; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + HEAP32[$a>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 1|0); + HEAP32[$1>>2] = $7; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + HEAP32[$b>>2] = $10; + $11 = HEAP32[$b>>2]|0; + $12 = $11 & 128; + $13 = ($12|0)!=(0); + if (!($13)) { + $14 = HEAP32[$a>>2]|0; + $15 = $14 & 127; + HEAP32[$a>>2] = $15; + $16 = HEAP32[$a>>2]|0; + $17 = $16 << 7; + HEAP32[$a>>2] = $17; + $18 = HEAP32[$a>>2]|0; + $19 = HEAP32[$b>>2]|0; + $20 = $18 | $19; + $21 = HEAP32[$2>>2]|0; + HEAP32[$21>>2] = $20; + HEAP8[$0>>0] = 2; + $72 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($72|0); + } + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 1|0); + HEAP32[$1>>2] = $23; + $24 = HEAP32[$a>>2]|0; + $25 = $24 << 14; + HEAP32[$a>>2] = $25; + $26 = HEAP32[$1>>2]|0; + $27 = HEAP8[$26>>0]|0; + $28 = $27&255; + $29 = HEAP32[$a>>2]|0; + $30 = $29 | $28; + HEAP32[$a>>2] = $30; + $31 = HEAP32[$a>>2]|0; + $32 = $31 & 128; + $33 = ($32|0)!=(0); + if (!($33)) { + $34 = HEAP32[$a>>2]|0; + $35 = $34 & 2080895; + HEAP32[$a>>2] = $35; + $36 = HEAP32[$b>>2]|0; + $37 = $36 & 127; + HEAP32[$b>>2] = $37; + $38 = HEAP32[$b>>2]|0; + $39 = $38 << 7; + HEAP32[$b>>2] = $39; + $40 = HEAP32[$a>>2]|0; + $41 = HEAP32[$b>>2]|0; + $42 = $40 | $41; + $43 = HEAP32[$2>>2]|0; + HEAP32[$43>>2] = $42; + HEAP8[$0>>0] = 3; + $72 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($72|0); + } + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + -2|0); + HEAP32[$1>>2] = $45; + $46 = HEAP32[$1>>2]|0; + $47 = (_sqlite3GetVarint($46,$v64)|0); + HEAP8[$n>>0] = $47; + $48 = $v64; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = (($48) + 4)|0; + $52 = $51; + $53 = HEAP32[$52>>2]|0; + $54 = $v64; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = (($54) + 4)|0; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = ($50|0)!=($56|0); + $61 = (0)!=($59|0); + $62 = $60 | $61; + if ($62) { + $63 = HEAP32[$2>>2]|0; + HEAP32[$63>>2] = -1; + } else { + $64 = $v64; + $65 = $64; + $66 = HEAP32[$65>>2]|0; + $67 = (($64) + 4)|0; + $68 = $67; + $69 = HEAP32[$68>>2]|0; + $70 = HEAP32[$2>>2]|0; + HEAP32[$70>>2] = $66; + } + $71 = HEAP8[$n>>0]|0; + HEAP8[$0>>0] = $71; + $72 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($72|0); +} +function _vdbeRecordCompareInt($nKey1,$pKey1,$pPKey2,$bSkip) { + $nKey1 = $nKey1|0; + $pKey1 = $pKey1|0; + $pPKey2 = $pPKey2|0; + $bSkip = $bSkip|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aKey = 0, $lhs = 0, $res = 0, $serial_type = 0, $v = 0, $x = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 56|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $3 = sp + 44|0; + $4 = sp + 40|0; + $aKey = sp + 36|0; + $serial_type = sp + 32|0; + $res = sp + 24|0; + $y = sp + 28|0; + $x = sp + 8|0; + $v = sp; + $lhs = sp + 16|0; + HEAP32[$1>>2] = $nKey1; + HEAP32[$2>>2] = $pKey1; + HEAP32[$3>>2] = $pPKey2; + HEAP32[$4>>2] = $bSkip; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = $7 & 63; + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + ($8)|0); + HEAP32[$aKey>>2] = $10; + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 1|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + HEAP32[$serial_type>>2] = $14; + $15 = HEAP32[$3>>2]|0; + $16 = (($15) + 8|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + 16|0); + $19 = $18; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (($19) + 4)|0; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = $v; + $26 = $25; + HEAP32[$26>>2] = $21; + $27 = (($25) + 4)|0; + $28 = $27; + HEAP32[$28>>2] = $24; + $29 = HEAP32[$serial_type>>2]|0; + do { + switch ($29|0) { + case 7: case 0: { + $225 = HEAP32[$1>>2]|0; + $226 = HEAP32[$2>>2]|0; + $227 = HEAP32[$3>>2]|0; + $228 = (_sqlite3VdbeRecordCompare($225,$226,$227,0)|0); + HEAP32[$0>>2] = $228; + $286 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($286|0); + break; + } + case 3: { + $54 = HEAP32[$aKey>>2]|0; + $55 = HEAP8[$54>>0]|0; + $56 = $55 << 24 >> 24; + $57 = $56<<16; + $58 = HEAP32[$aKey>>2]|0; + $59 = (($58) + 1|0); + $60 = HEAP8[$59>>0]|0; + $61 = $60&255; + $62 = $61 << 8; + $63 = $57 | $62; + $64 = HEAP32[$aKey>>2]|0; + $65 = (($64) + 2|0); + $66 = HEAP8[$65>>0]|0; + $67 = $66&255; + $68 = $63 | $67; + $69 = ($68|0)<(0); + $70 = $69 << 31 >> 31; + $71 = $lhs; + $72 = $71; + HEAP32[$72>>2] = $68; + $73 = (($71) + 4)|0; + $74 = $73; + HEAP32[$74>>2] = $70; + break; + } + case 4: { + $75 = HEAP32[$aKey>>2]|0; + $76 = HEAP8[$75>>0]|0; + $77 = $76&255; + $78 = $77 << 24; + $79 = HEAP32[$aKey>>2]|0; + $80 = (($79) + 1|0); + $81 = HEAP8[$80>>0]|0; + $82 = $81&255; + $83 = $82 << 16; + $84 = $78 | $83; + $85 = HEAP32[$aKey>>2]|0; + $86 = (($85) + 2|0); + $87 = HEAP8[$86>>0]|0; + $88 = $87&255; + $89 = $88 << 8; + $90 = $84 | $89; + $91 = HEAP32[$aKey>>2]|0; + $92 = (($91) + 3|0); + $93 = HEAP8[$92>>0]|0; + $94 = $93&255; + $95 = $90 | $94; + HEAP32[$y>>2] = $95; + $96 = HEAP32[$y>>2]|0; + $97 = ($96|0)<(0); + $98 = $97 << 31 >> 31; + $99 = $lhs; + $100 = $99; + HEAP32[$100>>2] = $96; + $101 = (($99) + 4)|0; + $102 = $101; + HEAP32[$102>>2] = $98; + break; + } + case 8: { + $217 = $lhs; + $218 = $217; + HEAP32[$218>>2] = 0; + $219 = (($217) + 4)|0; + $220 = $219; + HEAP32[$220>>2] = 0; + break; + } + case 6: { + $147 = HEAP32[$aKey>>2]|0; + $148 = HEAP8[$147>>0]|0; + $149 = $148&255; + $150 = $149 << 24; + $151 = HEAP32[$aKey>>2]|0; + $152 = (($151) + 1|0); + $153 = HEAP8[$152>>0]|0; + $154 = $153&255; + $155 = $154 << 16; + $156 = $150 | $155; + $157 = HEAP32[$aKey>>2]|0; + $158 = (($157) + 2|0); + $159 = HEAP8[$158>>0]|0; + $160 = $159&255; + $161 = $160 << 8; + $162 = $156 | $161; + $163 = HEAP32[$aKey>>2]|0; + $164 = (($163) + 3|0); + $165 = HEAP8[$164>>0]|0; + $166 = $165&255; + $167 = $162 | $166; + $168 = $x; + $169 = $168; + HEAP32[$169>>2] = $167; + $170 = (($168) + 4)|0; + $171 = $170; + HEAP32[$171>>2] = 0; + $172 = $x; + $173 = $172; + $174 = HEAP32[$173>>2]|0; + $175 = (($172) + 4)|0; + $176 = $175; + $177 = HEAP32[$176>>2]|0; + $178 = HEAP32[$aKey>>2]|0; + $179 = (($178) + 4|0); + $180 = HEAP8[$179>>0]|0; + $181 = $180&255; + $182 = $181 << 24; + $183 = HEAP32[$aKey>>2]|0; + $184 = (($183) + 4|0); + $185 = (($184) + 1|0); + $186 = HEAP8[$185>>0]|0; + $187 = $186&255; + $188 = $187 << 16; + $189 = $182 | $188; + $190 = HEAP32[$aKey>>2]|0; + $191 = (($190) + 4|0); + $192 = (($191) + 2|0); + $193 = HEAP8[$192>>0]|0; + $194 = $193&255; + $195 = $194 << 8; + $196 = $189 | $195; + $197 = HEAP32[$aKey>>2]|0; + $198 = (($197) + 4|0); + $199 = (($198) + 3|0); + $200 = HEAP8[$199>>0]|0; + $201 = $200&255; + $202 = $196 | $201; + $203 = $x; + $204 = $203; + HEAP32[$204>>2] = $202; + $205 = (($203) + 4)|0; + $206 = $205; + HEAP32[$206>>2] = $174; + $207 = $x; + $208 = $207; + $209 = HEAP32[$208>>2]|0; + $210 = (($207) + 4)|0; + $211 = $210; + $212 = HEAP32[$211>>2]|0; + $213 = $lhs; + $214 = $213; + HEAP32[$214>>2] = $209; + $215 = (($213) + 4)|0; + $216 = $215; + HEAP32[$216>>2] = $212; + break; + } + case 5: { + $103 = HEAP32[$aKey>>2]|0; + $104 = (($103) + 2|0); + $105 = HEAP8[$104>>0]|0; + $106 = $105&255; + $107 = $106 << 24; + $108 = HEAP32[$aKey>>2]|0; + $109 = (($108) + 2|0); + $110 = (($109) + 1|0); + $111 = HEAP8[$110>>0]|0; + $112 = $111&255; + $113 = $112 << 16; + $114 = $107 | $113; + $115 = HEAP32[$aKey>>2]|0; + $116 = (($115) + 2|0); + $117 = (($116) + 2|0); + $118 = HEAP8[$117>>0]|0; + $119 = $118&255; + $120 = $119 << 8; + $121 = $114 | $120; + $122 = HEAP32[$aKey>>2]|0; + $123 = (($122) + 2|0); + $124 = (($123) + 3|0); + $125 = HEAP8[$124>>0]|0; + $126 = $125&255; + $127 = $121 | $126; + $128 = HEAP32[$aKey>>2]|0; + $129 = HEAP8[$128>>0]|0; + $130 = $129 << 24 >> 24; + $131 = $130<<8; + $132 = HEAP32[$aKey>>2]|0; + $133 = (($132) + 1|0); + $134 = HEAP8[$133>>0]|0; + $135 = $134&255; + $136 = $131 | $135; + $137 = ($136|0)<(0); + $138 = $137 << 31 >> 31; + $139 = (___muldi3(0,1,($136|0),($138|0))|0); + $140 = tempRet0; + $141 = (_i64Add(($127|0),0,($139|0),($140|0))|0); + $142 = tempRet0; + $143 = $lhs; + $144 = $143; + HEAP32[$144>>2] = $141; + $145 = (($143) + 4)|0; + $146 = $145; + HEAP32[$146>>2] = $142; + break; + } + case 2: { + $39 = HEAP32[$aKey>>2]|0; + $40 = HEAP8[$39>>0]|0; + $41 = $40 << 24 >> 24; + $42 = $41<<8; + $43 = HEAP32[$aKey>>2]|0; + $44 = (($43) + 1|0); + $45 = HEAP8[$44>>0]|0; + $46 = $45&255; + $47 = $42 | $46; + $48 = ($47|0)<(0); + $49 = $48 << 31 >> 31; + $50 = $lhs; + $51 = $50; + HEAP32[$51>>2] = $47; + $52 = (($50) + 4)|0; + $53 = $52; + HEAP32[$53>>2] = $49; + break; + } + case 9: { + $221 = $lhs; + $222 = $221; + HEAP32[$222>>2] = 1; + $223 = (($221) + 4)|0; + $224 = $223; + HEAP32[$224>>2] = 0; + break; + } + case 1: { + $30 = HEAP32[$aKey>>2]|0; + $31 = HEAP8[$30>>0]|0; + $32 = $31 << 24 >> 24; + $33 = ($32|0)<(0); + $34 = $33 << 31 >> 31; + $35 = $lhs; + $36 = $35; + HEAP32[$36>>2] = $32; + $37 = (($35) + 4)|0; + $38 = $37; + HEAP32[$38>>2] = $34; + break; + } + default: { + $229 = HEAP32[$1>>2]|0; + $230 = HEAP32[$2>>2]|0; + $231 = HEAP32[$3>>2]|0; + $232 = (_sqlite3VdbeRecordCompare($229,$230,$231,0)|0); + HEAP32[$0>>2] = $232; + $286 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($286|0); + } + } + } while(0); + $233 = $v; + $234 = $233; + $235 = HEAP32[$234>>2]|0; + $236 = (($233) + 4)|0; + $237 = $236; + $238 = HEAP32[$237>>2]|0; + $239 = $lhs; + $240 = $239; + $241 = HEAP32[$240>>2]|0; + $242 = (($239) + 4)|0; + $243 = $242; + $244 = HEAP32[$243>>2]|0; + $245 = ($238|0)>($244|0); + $246 = ($238|0)==($244|0); + $247 = ($235>>>0)>($241>>>0); + $248 = $246 & $247; + $249 = $245 | $248; + do { + if ($249) { + $250 = HEAP32[$3>>2]|0; + $251 = (($250) + 12|0); + $252 = HEAP32[$251>>2]|0; + HEAP32[$res>>2] = $252; + } else { + $253 = $v; + $254 = $253; + $255 = HEAP32[$254>>2]|0; + $256 = (($253) + 4)|0; + $257 = $256; + $258 = HEAP32[$257>>2]|0; + $259 = $lhs; + $260 = $259; + $261 = HEAP32[$260>>2]|0; + $262 = (($259) + 4)|0; + $263 = $262; + $264 = HEAP32[$263>>2]|0; + $265 = ($258|0)<($264|0); + $266 = ($258|0)==($264|0); + $267 = ($255>>>0)<($261>>>0); + $268 = $266 & $267; + $269 = $265 | $268; + $270 = HEAP32[$3>>2]|0; + if ($269) { + $271 = (($270) + 16|0); + $272 = HEAP32[$271>>2]|0; + HEAP32[$res>>2] = $272; + break; + } + $273 = (($270) + 4|0); + $274 = HEAP16[$273>>1]|0; + $275 = $274&65535; + $276 = ($275|0)>(1); + if ($276) { + $277 = HEAP32[$1>>2]|0; + $278 = HEAP32[$2>>2]|0; + $279 = HEAP32[$3>>2]|0; + $280 = (_sqlite3VdbeRecordCompare($277,$278,$279,1)|0); + HEAP32[$res>>2] = $280; + break; + } else { + $281 = HEAP32[$3>>2]|0; + $282 = (($281) + 6|0); + $283 = HEAP8[$282>>0]|0; + $284 = $283 << 24 >> 24; + HEAP32[$res>>2] = $284; + break; + } + } + } while(0); + $285 = HEAP32[$res>>2]|0; + HEAP32[$0>>2] = $285; + $286 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($286|0); +} +function _vdbeRecordCompareString($nKey1,$pKey1,$pPKey2,$bSkip) { + $nKey1 = $nKey1|0; + $pKey1 = $pKey1|0; + $pPKey2 = $pPKey2|0; + $bSkip = $bSkip|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aKey1 = 0, $nCmp = 0, $nStr = 0, $res = 0, $serial_type = 0, $szHdr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $aKey1 = sp + 20|0; + $serial_type = sp + 12|0; + $res = sp + 8|0; + $nCmp = sp + 4|0; + $nStr = sp; + $szHdr = sp + 16|0; + HEAP32[$1>>2] = $nKey1; + HEAP32[$2>>2] = $pKey1; + HEAP32[$3>>2] = $pPKey2; + HEAP32[$4>>2] = $bSkip; + $5 = HEAP32[$2>>2]|0; + HEAP32[$aKey1>>2] = $5; + $6 = HEAP32[$aKey1>>2]|0; + $7 = (($6) + 1|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = ($9|0)<(128); + $11 = HEAP32[$aKey1>>2]|0; + $12 = (($11) + 1|0); + if ($10) { + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + HEAP32[$serial_type>>2] = $14; + } else { + (_sqlite3GetVarint32($12,$serial_type)|0); + } + $15 = HEAP32[$serial_type>>2]|0; + $16 = ($15|0)<(12); + do { + if ($16) { + $17 = HEAP32[$3>>2]|0; + $18 = (($17) + 12|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$res>>2] = $19; + } else { + $20 = HEAP32[$serial_type>>2]|0; + $21 = $20 & 1; + $22 = ($21|0)!=(0); + if (!($22)) { + $23 = HEAP32[$3>>2]|0; + $24 = (($23) + 16|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$res>>2] = $25; + break; + } + $26 = HEAP32[$aKey1>>2]|0; + $27 = HEAP8[$26>>0]|0; + $28 = $27&255; + HEAP32[$szHdr>>2] = $28; + $29 = HEAP32[$serial_type>>2]|0; + $30 = (($29) - 12)|0; + $31 = (($30|0) / 2)&-1; + HEAP32[$nStr>>2] = $31; + $32 = HEAP32[$szHdr>>2]|0; + $33 = HEAP32[$nStr>>2]|0; + $34 = (($32) + ($33))|0; + $35 = HEAP32[$1>>2]|0; + $36 = ($34|0)>($35|0); + if ($36) { + $37 = (_sqlite3CorruptError(65455)|0); + $38 = $37&255; + $39 = HEAP32[$3>>2]|0; + $40 = (($39) + 7|0); + HEAP8[$40>>0] = $38; + HEAP32[$0>>2] = 0; + $104 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($104|0); + } + $41 = HEAP32[$3>>2]|0; + $42 = (($41) + 8|0); + $43 = HEAP32[$42>>2]|0; + $44 = (($43) + 24|0); + $45 = HEAP32[$44>>2]|0; + $46 = HEAP32[$nStr>>2]|0; + $47 = ($45|0)<($46|0); + if ($47) { + $48 = HEAP32[$3>>2]|0; + $49 = (($48) + 8|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + 24|0); + $52 = HEAP32[$51>>2]|0; + $54 = $52; + } else { + $53 = HEAP32[$nStr>>2]|0; + $54 = $53; + } + HEAP32[$nCmp>>2] = $54; + $55 = HEAP32[$szHdr>>2]|0; + $56 = HEAP32[$aKey1>>2]|0; + $57 = (($56) + ($55)|0); + $58 = HEAP32[$3>>2]|0; + $59 = (($58) + 8|0); + $60 = HEAP32[$59>>2]|0; + $61 = (($60) + 4|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$nCmp>>2]|0; + $64 = (_memcmp($57,$62,$63)|0); + HEAP32[$res>>2] = $64; + $65 = HEAP32[$res>>2]|0; + $66 = ($65|0)==(0); + if (!($66)) { + $96 = HEAP32[$res>>2]|0; + $97 = ($96|0)>(0); + $98 = HEAP32[$3>>2]|0; + if ($97) { + $99 = (($98) + 16|0); + $100 = HEAP32[$99>>2]|0; + HEAP32[$res>>2] = $100; + break; + } else { + $101 = (($98) + 12|0); + $102 = HEAP32[$101>>2]|0; + HEAP32[$res>>2] = $102; + break; + } + } + $67 = HEAP32[$nStr>>2]|0; + $68 = HEAP32[$3>>2]|0; + $69 = (($68) + 8|0); + $70 = HEAP32[$69>>2]|0; + $71 = (($70) + 24|0); + $72 = HEAP32[$71>>2]|0; + $73 = (($67) - ($72))|0; + HEAP32[$res>>2] = $73; + $74 = HEAP32[$res>>2]|0; + $75 = ($74|0)==(0); + if ($75) { + $76 = HEAP32[$3>>2]|0; + $77 = (($76) + 4|0); + $78 = HEAP16[$77>>1]|0; + $79 = $78&65535; + $80 = ($79|0)>(1); + if ($80) { + $81 = HEAP32[$1>>2]|0; + $82 = HEAP32[$2>>2]|0; + $83 = HEAP32[$3>>2]|0; + $84 = (_sqlite3VdbeRecordCompare($81,$82,$83,1)|0); + HEAP32[$res>>2] = $84; + break; + } else { + $85 = HEAP32[$3>>2]|0; + $86 = (($85) + 6|0); + $87 = HEAP8[$86>>0]|0; + $88 = $87 << 24 >> 24; + HEAP32[$res>>2] = $88; + break; + } + } else { + $89 = HEAP32[$res>>2]|0; + $90 = ($89|0)>(0); + $91 = HEAP32[$3>>2]|0; + if ($90) { + $92 = (($91) + 16|0); + $93 = HEAP32[$92>>2]|0; + HEAP32[$res>>2] = $93; + break; + } else { + $94 = (($91) + 12|0); + $95 = HEAP32[$94>>2]|0; + HEAP32[$res>>2] = $95; + break; + } + } + } + } while(0); + $103 = HEAP32[$res>>2]|0; + HEAP32[$0>>2] = $103; + $104 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($104|0); +} +function _sqlite3VdbeRecordCompare($nKey1,$pKey1,$pPKey2,$bSkip) { + $nKey1 = $nKey1|0; + $pKey1 = $pKey1|0; + $pPKey2 = $pPKey2|0; + $bSkip = $bSkip|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0.0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0.0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0.0, $184 = 0.0, $185 = 0.0, $186 = 0, $187 = 0.0, $188 = 0.0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0.0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0.0, $88 = 0.0, $89 = 0, $9 = 0, $90 = 0, $91 = 0.0, $92 = 0.0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $aKey1 = 0, $d1 = 0, $i = 0, $idx1 = 0, $lhs = 0, $lhs3 = 0, $mem1 = 0, $nCmp = 0, $nCmp4 = 0, $nStr = 0, $pKeyInfo = 0, $pRhs = 0, $rc = 0, $rhs = 0, $rhs1 = 0, $rhs2 = 0, $s1 = 0, $serial_type = 0, $szHdr1 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; + $0 = sp + 148|0; + $1 = sp + 144|0; + $2 = sp + 140|0; + $3 = sp + 136|0; + $4 = sp + 132|0; + $d1 = sp + 128|0; + $i = sp + 124|0; + $szHdr1 = sp + 120|0; + $idx1 = sp + 116|0; + $rc = sp + 112|0; + $pRhs = sp + 108|0; + $pKeyInfo = sp + 104|0; + $aKey1 = sp + 100|0; + $mem1 = sp + 32|0; + $s1 = sp + 88|0; + $serial_type = sp + 84|0; + $rhs = sp; + $lhs = sp + 8|0; + $rhs1 = sp + 16|0; + $rhs2 = sp + 24|0; + $lhs3 = sp + 72|0; + $nCmp = sp + 96|0; + $nStr = sp + 80|0; + $nCmp4 = sp + 92|0; + HEAP32[$1>>2] = $nKey1; + HEAP32[$2>>2] = $pKey1; + HEAP32[$3>>2] = $pPKey2; + HEAP32[$4>>2] = $bSkip; + HEAP32[$rc>>2] = 0; + $5 = HEAP32[$3>>2]|0; + $6 = (($5) + 8|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pRhs>>2] = $7; + $8 = HEAP32[$3>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$pKeyInfo>>2] = $9; + $10 = HEAP32[$2>>2]|0; + HEAP32[$aKey1>>2] = $10; + $11 = HEAP32[$4>>2]|0; + $12 = ($11|0)!=(0); + $13 = HEAP32[$aKey1>>2]|0; + do { + if ($12) { + $14 = (($13) + 1|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = ($16|0)<(128); + $18 = HEAP32[$aKey1>>2]|0; + $19 = (($18) + 1|0); + if ($17) { + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + HEAP32[$s1>>2] = $21; + $25 = 1; + } else { + $22 = (_sqlite3GetVarint32($19,$s1)|0); + $23 = $22&255; + $25 = $23; + } + $24 = $25&255; + $26 = $24&255; + $27 = (1 + ($26))|0; + HEAP32[$idx1>>2] = $27; + $28 = HEAP32[$aKey1>>2]|0; + $29 = HEAP8[$28>>0]|0; + $30 = $29&255; + HEAP32[$szHdr1>>2] = $30; + $31 = HEAP32[$szHdr1>>2]|0; + $32 = HEAP32[$s1>>2]|0; + $33 = (_sqlite3VdbeSerialTypeLen($32)|0); + $34 = (($31) + ($33))|0; + HEAP32[$d1>>2] = $34; + HEAP32[$i>>2] = 1; + $35 = HEAP32[$pRhs>>2]|0; + $36 = (($35) + 40|0); + HEAP32[$pRhs>>2] = $36; + } else { + $37 = HEAP8[$13>>0]|0; + $38 = $37&255; + $39 = ($38|0)<(128); + $40 = HEAP32[$aKey1>>2]|0; + if ($39) { + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + HEAP32[$szHdr1>>2] = $42; + $46 = 1; + } else { + $43 = (_sqlite3GetVarint32($40,$szHdr1)|0); + $44 = $43&255; + $46 = $44; + } + $45 = $46&255; + $47 = $45&255; + HEAP32[$idx1>>2] = $47; + $48 = HEAP32[$szHdr1>>2]|0; + HEAP32[$d1>>2] = $48; + $49 = HEAP32[$d1>>2]|0; + $50 = HEAP32[$1>>2]|0; + $51 = ($49>>>0)>($50>>>0); + if (!($51)) { + HEAP32[$i>>2] = 0; + break; + } + $52 = (_sqlite3CorruptError(65169)|0); + $53 = $52&255; + $54 = HEAP32[$3>>2]|0; + $55 = (($54) + 7|0); + HEAP8[$55>>0] = $53; + HEAP32[$0>>2] = 0; + $380 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($380|0); + } + } while(0); + L16: while(1) { + $56 = HEAP32[$pRhs>>2]|0; + $57 = (($56) + 28|0); + $58 = HEAP16[$57>>1]|0; + $59 = $58&65535; + $60 = $59 & 4; + $61 = ($60|0)!=(0); + do { + if ($61) { + $62 = HEAP32[$idx1>>2]|0; + $63 = HEAP32[$aKey1>>2]|0; + $64 = (($63) + ($62)|0); + $65 = HEAP8[$64>>0]|0; + $66 = $65&255; + HEAP32[$serial_type>>2] = $66; + $67 = HEAP32[$serial_type>>2]|0; + $68 = ($67>>>0)>=(12); + if ($68) { + HEAP32[$rc>>2] = 1; + break; + } + $69 = HEAP32[$serial_type>>2]|0; + $70 = ($69|0)==(0); + if ($70) { + HEAP32[$rc>>2] = -1; + break; + } + $71 = HEAP32[$serial_type>>2]|0; + $72 = ($71|0)==(7); + if ($72) { + $73 = HEAP32[$pRhs>>2]|0; + $74 = (($73) + 16|0); + $75 = $74; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = (($75) + 4)|0; + $79 = $78; + $80 = HEAP32[$79>>2]|0; + $81 = (+($77>>>0)) + (4294967296.0*(+($80|0))); + HEAPF64[$rhs>>3] = $81; + $82 = HEAP32[$d1>>2]|0; + $83 = HEAP32[$aKey1>>2]|0; + $84 = (($83) + ($82)|0); + $85 = HEAP32[$serial_type>>2]|0; + (_sqlite3VdbeSerialGet($84,$85,$mem1)|0); + $86 = (($mem1) + 8|0); + $87 = +HEAPF64[$86>>3]; + $88 = +HEAPF64[$rhs>>3]; + $89 = $87 < $88; + if ($89) { + HEAP32[$rc>>2] = -1; + break; + } + $90 = (($mem1) + 8|0); + $91 = +HEAPF64[$90>>3]; + $92 = +HEAPF64[$rhs>>3]; + $93 = $91 > $92; + if (!($93)) { + break; + } + HEAP32[$rc>>2] = 1; + break; + } else { + $94 = HEAP32[$serial_type>>2]|0; + $95 = HEAP32[$d1>>2]|0; + $96 = HEAP32[$aKey1>>2]|0; + $97 = (($96) + ($95)|0); + $98 = (_vdbeRecordDecodeInt($94,$97)|0); + $99 = tempRet0; + $100 = $lhs; + $101 = $100; + HEAP32[$101>>2] = $98; + $102 = (($100) + 4)|0; + $103 = $102; + HEAP32[$103>>2] = $99; + $104 = HEAP32[$pRhs>>2]|0; + $105 = (($104) + 16|0); + $106 = $105; + $107 = $106; + $108 = HEAP32[$107>>2]|0; + $109 = (($106) + 4)|0; + $110 = $109; + $111 = HEAP32[$110>>2]|0; + $112 = $rhs1; + $113 = $112; + HEAP32[$113>>2] = $108; + $114 = (($112) + 4)|0; + $115 = $114; + HEAP32[$115>>2] = $111; + $116 = $lhs; + $117 = $116; + $118 = HEAP32[$117>>2]|0; + $119 = (($116) + 4)|0; + $120 = $119; + $121 = HEAP32[$120>>2]|0; + $122 = $rhs1; + $123 = $122; + $124 = HEAP32[$123>>2]|0; + $125 = (($122) + 4)|0; + $126 = $125; + $127 = HEAP32[$126>>2]|0; + $128 = ($121|0)<($127|0); + $129 = ($121|0)==($127|0); + $130 = ($118>>>0)<($124>>>0); + $131 = $129 & $130; + $132 = $128 | $131; + if ($132) { + HEAP32[$rc>>2] = -1; + break; + } + $133 = $lhs; + $134 = $133; + $135 = HEAP32[$134>>2]|0; + $136 = (($133) + 4)|0; + $137 = $136; + $138 = HEAP32[$137>>2]|0; + $139 = $rhs1; + $140 = $139; + $141 = HEAP32[$140>>2]|0; + $142 = (($139) + 4)|0; + $143 = $142; + $144 = HEAP32[$143>>2]|0; + $145 = ($138|0)>($144|0); + $146 = ($138|0)==($144|0); + $147 = ($135>>>0)>($141>>>0); + $148 = $146 & $147; + $149 = $145 | $148; + if (!($149)) { + break; + } + HEAP32[$rc>>2] = 1; + break; + } + } else { + $150 = HEAP32[$pRhs>>2]|0; + $151 = (($150) + 28|0); + $152 = HEAP16[$151>>1]|0; + $153 = $152&65535; + $154 = $153 & 8; + $155 = ($154|0)!=(0); + if ($155) { + $156 = HEAP32[$idx1>>2]|0; + $157 = HEAP32[$aKey1>>2]|0; + $158 = (($157) + ($156)|0); + $159 = HEAP8[$158>>0]|0; + $160 = $159&255; + HEAP32[$serial_type>>2] = $160; + $161 = HEAP32[$serial_type>>2]|0; + $162 = ($161>>>0)>=(12); + if ($162) { + HEAP32[$rc>>2] = 1; + break; + } + $163 = HEAP32[$serial_type>>2]|0; + $164 = ($163|0)==(0); + if ($164) { + HEAP32[$rc>>2] = -1; + break; + } + $165 = HEAP32[$pRhs>>2]|0; + $166 = (($165) + 8|0); + $167 = +HEAPF64[$166>>3]; + HEAPF64[$rhs2>>3] = $167; + $168 = HEAP32[$d1>>2]|0; + $169 = HEAP32[$aKey1>>2]|0; + $170 = (($169) + ($168)|0); + $171 = HEAP32[$serial_type>>2]|0; + (_sqlite3VdbeSerialGet($170,$171,$mem1)|0); + $172 = HEAP32[$serial_type>>2]|0; + $173 = ($172|0)==(7); + if ($173) { + $174 = (($mem1) + 8|0); + $175 = +HEAPF64[$174>>3]; + HEAPF64[$lhs3>>3] = $175; + } else { + $176 = (($mem1) + 16|0); + $177 = $176; + $178 = $177; + $179 = HEAP32[$178>>2]|0; + $180 = (($177) + 4)|0; + $181 = $180; + $182 = HEAP32[$181>>2]|0; + $183 = (+($179>>>0)) + (4294967296.0*(+($182|0))); + HEAPF64[$lhs3>>3] = $183; + } + $184 = +HEAPF64[$lhs3>>3]; + $185 = +HEAPF64[$rhs2>>3]; + $186 = $184 < $185; + if ($186) { + HEAP32[$rc>>2] = -1; + break; + } + $187 = +HEAPF64[$lhs3>>3]; + $188 = +HEAPF64[$rhs2>>3]; + $189 = $187 > $188; + if (!($189)) { + break; + } + HEAP32[$rc>>2] = 1; + break; + } + $190 = HEAP32[$pRhs>>2]|0; + $191 = (($190) + 28|0); + $192 = HEAP16[$191>>1]|0; + $193 = $192&65535; + $194 = $193 & 2; + $195 = ($194|0)!=(0); + if (!($195)) { + $279 = HEAP32[$pRhs>>2]|0; + $280 = (($279) + 28|0); + $281 = HEAP16[$280>>1]|0; + $282 = $281&65535; + $283 = $282 & 16; + $284 = ($283|0)!=(0); + $285 = HEAP32[$idx1>>2]|0; + $286 = HEAP32[$aKey1>>2]|0; + $287 = (($286) + ($285)|0); + $288 = HEAP8[$287>>0]|0; + $289 = $288&255; + if (!($284)) { + HEAP32[$serial_type>>2] = $289; + $338 = HEAP32[$serial_type>>2]|0; + $339 = ($338|0)!=(0); + $340 = $339&1; + HEAP32[$rc>>2] = $340; + break; + } + $290 = ($289|0)<(128); + $291 = HEAP32[$idx1>>2]|0; + $292 = HEAP32[$aKey1>>2]|0; + $293 = (($292) + ($291)|0); + if ($290) { + $294 = HEAP8[$293>>0]|0; + $295 = $294&255; + HEAP32[$serial_type>>2] = $295; + } else { + (_sqlite3GetVarint32($293,$serial_type)|0); + } + $296 = HEAP32[$serial_type>>2]|0; + $297 = ($296>>>0)<(12); + if (!($297)) { + $298 = HEAP32[$serial_type>>2]|0; + $299 = $298 & 1; + $300 = ($299|0)!=(0); + if (!($300)) { + $301 = HEAP32[$serial_type>>2]|0; + $302 = (($301) - 12)|0; + $303 = (($302>>>0) / 2)&-1; + HEAP32[$nStr>>2] = $303; + $304 = HEAP32[$d1>>2]|0; + $305 = HEAP32[$nStr>>2]|0; + $306 = (($304) + ($305))|0; + $307 = HEAP32[$1>>2]|0; + $308 = ($306>>>0)>($307>>>0); + if ($308) { + label = 63; + break L16; + } + $313 = HEAP32[$nStr>>2]|0; + $314 = HEAP32[$pRhs>>2]|0; + $315 = (($314) + 24|0); + $316 = HEAP32[$315>>2]|0; + $317 = ($313|0)<($316|0); + if ($317) { + $318 = HEAP32[$nStr>>2]|0; + $322 = $318; + } else { + $319 = HEAP32[$pRhs>>2]|0; + $320 = (($319) + 24|0); + $321 = HEAP32[$320>>2]|0; + $322 = $321; + } + HEAP32[$nCmp4>>2] = $322; + $323 = HEAP32[$d1>>2]|0; + $324 = HEAP32[$aKey1>>2]|0; + $325 = (($324) + ($323)|0); + $326 = HEAP32[$pRhs>>2]|0; + $327 = (($326) + 4|0); + $328 = HEAP32[$327>>2]|0; + $329 = HEAP32[$nCmp4>>2]|0; + $330 = (_memcmp($325,$328,$329)|0); + HEAP32[$rc>>2] = $330; + $331 = HEAP32[$rc>>2]|0; + $332 = ($331|0)==(0); + if (!($332)) { + break; + } + $333 = HEAP32[$nStr>>2]|0; + $334 = HEAP32[$pRhs>>2]|0; + $335 = (($334) + 24|0); + $336 = HEAP32[$335>>2]|0; + $337 = (($333) - ($336))|0; + HEAP32[$rc>>2] = $337; + break; + } + } + HEAP32[$rc>>2] = -1; + break; + } + $196 = HEAP32[$idx1>>2]|0; + $197 = HEAP32[$aKey1>>2]|0; + $198 = (($197) + ($196)|0); + $199 = HEAP8[$198>>0]|0; + $200 = $199&255; + $201 = ($200|0)<(128); + $202 = HEAP32[$idx1>>2]|0; + $203 = HEAP32[$aKey1>>2]|0; + $204 = (($203) + ($202)|0); + if ($201) { + $205 = HEAP8[$204>>0]|0; + $206 = $205&255; + HEAP32[$serial_type>>2] = $206; + } else { + (_sqlite3GetVarint32($204,$serial_type)|0); + } + $207 = HEAP32[$serial_type>>2]|0; + $208 = ($207>>>0)<(12); + if ($208) { + HEAP32[$rc>>2] = -1; + break; + } + $209 = HEAP32[$serial_type>>2]|0; + $210 = $209 & 1; + $211 = ($210|0)!=(0); + if (!($211)) { + HEAP32[$rc>>2] = 1; + break; + } + $212 = HEAP32[$serial_type>>2]|0; + $213 = (($212) - 12)|0; + $214 = (($213>>>0) / 2)&-1; + $215 = (($mem1) + 24|0); + HEAP32[$215>>2] = $214; + $216 = HEAP32[$d1>>2]|0; + $217 = (($mem1) + 24|0); + $218 = HEAP32[$217>>2]|0; + $219 = (($216) + ($218))|0; + $220 = HEAP32[$1>>2]|0; + $221 = ($219>>>0)>($220>>>0); + if ($221) { + label = 47; + break L16; + } + $226 = HEAP32[$i>>2]|0; + $227 = HEAP32[$pKeyInfo>>2]|0; + $228 = (($227) + 20|0); + $229 = (($228) + ($226<<2)|0); + $230 = HEAP32[$229>>2]|0; + $231 = ($230|0)!=(0|0); + if ($231) { + $232 = HEAP32[$pKeyInfo>>2]|0; + $233 = (($232) + 4|0); + $234 = HEAP8[$233>>0]|0; + $235 = (($mem1) + 30|0); + HEAP8[$235>>0] = $234; + $236 = HEAP32[$pKeyInfo>>2]|0; + $237 = (($236) + 12|0); + $238 = HEAP32[$237>>2]|0; + HEAP32[$mem1>>2] = $238; + $239 = (($mem1) + 28|0); + HEAP16[$239>>1] = 2; + $240 = HEAP32[$d1>>2]|0; + $241 = HEAP32[$aKey1>>2]|0; + $242 = (($241) + ($240)|0); + $243 = (($mem1) + 4|0); + HEAP32[$243>>2] = $242; + $244 = HEAP32[$pRhs>>2]|0; + $245 = HEAP32[$i>>2]|0; + $246 = HEAP32[$pKeyInfo>>2]|0; + $247 = (($246) + 20|0); + $248 = (($247) + ($245<<2)|0); + $249 = HEAP32[$248>>2]|0; + $250 = (_vdbeCompareMemString($mem1,$244,$249)|0); + HEAP32[$rc>>2] = $250; + break; + } + $251 = (($mem1) + 24|0); + $252 = HEAP32[$251>>2]|0; + $253 = HEAP32[$pRhs>>2]|0; + $254 = (($253) + 24|0); + $255 = HEAP32[$254>>2]|0; + $256 = ($252|0)<($255|0); + if ($256) { + $257 = (($mem1) + 24|0); + $258 = HEAP32[$257>>2]|0; + $262 = $258; + } else { + $259 = HEAP32[$pRhs>>2]|0; + $260 = (($259) + 24|0); + $261 = HEAP32[$260>>2]|0; + $262 = $261; + } + HEAP32[$nCmp>>2] = $262; + $263 = HEAP32[$d1>>2]|0; + $264 = HEAP32[$aKey1>>2]|0; + $265 = (($264) + ($263)|0); + $266 = HEAP32[$pRhs>>2]|0; + $267 = (($266) + 4|0); + $268 = HEAP32[$267>>2]|0; + $269 = HEAP32[$nCmp>>2]|0; + $270 = (_memcmp($265,$268,$269)|0); + HEAP32[$rc>>2] = $270; + $271 = HEAP32[$rc>>2]|0; + $272 = ($271|0)==(0); + if ($272) { + $273 = (($mem1) + 24|0); + $274 = HEAP32[$273>>2]|0; + $275 = HEAP32[$pRhs>>2]|0; + $276 = (($275) + 24|0); + $277 = HEAP32[$276>>2]|0; + $278 = (($274) - ($277))|0; + HEAP32[$rc>>2] = $278; + } + } + } while(0); + $341 = HEAP32[$rc>>2]|0; + $342 = ($341|0)!=(0); + $343 = HEAP32[$i>>2]|0; + if ($342) { + label = 71; + break; + } + $353 = (($343) + 1)|0; + HEAP32[$i>>2] = $353; + $354 = HEAP32[$pRhs>>2]|0; + $355 = (($354) + 40|0); + HEAP32[$pRhs>>2] = $355; + $356 = HEAP32[$serial_type>>2]|0; + $357 = (_sqlite3VdbeSerialTypeLen($356)|0); + $358 = HEAP32[$d1>>2]|0; + $359 = (($358) + ($357))|0; + HEAP32[$d1>>2] = $359; + $360 = HEAP32[$serial_type>>2]|0; + $361 = (_sqlite3VarintLen($360,0)|0); + $362 = HEAP32[$idx1>>2]|0; + $363 = (($362) + ($361))|0; + HEAP32[$idx1>>2] = $363; + $364 = HEAP32[$idx1>>2]|0; + $365 = HEAP32[$szHdr1>>2]|0; + $366 = ($364>>>0)<($365>>>0); + if (!($366)) { + label = 77; + break; + } + $367 = HEAP32[$i>>2]|0; + $368 = HEAP32[$3>>2]|0; + $369 = (($368) + 4|0); + $370 = HEAP16[$369>>1]|0; + $371 = $370&65535; + $372 = ($367|0)<($371|0); + if (!($372)) { + label = 77; + break; + } + $373 = HEAP32[$d1>>2]|0; + $374 = HEAP32[$1>>2]|0; + $375 = ($373>>>0)<=($374>>>0); + if (!($375)) { + label = 77; + break; + } + } + if ((label|0) == 47) { + $222 = (_sqlite3CorruptError(65248)|0); + $223 = $222&255; + $224 = HEAP32[$3>>2]|0; + $225 = (($224) + 7|0); + HEAP8[$225>>0] = $223; + HEAP32[$0>>2] = 0; + $380 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($380|0); + } + else if ((label|0) == 63) { + $309 = (_sqlite3CorruptError(65275)|0); + $310 = $309&255; + $311 = HEAP32[$3>>2]|0; + $312 = (($311) + 7|0); + HEAP8[$312>>0] = $310; + HEAP32[$0>>2] = 0; + $380 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($380|0); + } + else if ((label|0) == 71) { + $344 = HEAP32[$pKeyInfo>>2]|0; + $345 = (($344) + 16|0); + $346 = HEAP32[$345>>2]|0; + $347 = (($346) + ($343)|0); + $348 = HEAP8[$347>>0]|0; + $349 = ($348<<24>>24)!=(0); + if ($349) { + $350 = HEAP32[$rc>>2]|0; + $351 = (0 - ($350))|0; + HEAP32[$rc>>2] = $351; + } + $352 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $352; + $380 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($380|0); + } + else if ((label|0) == 77) { + $376 = HEAP32[$3>>2]|0; + $377 = (($376) + 6|0); + $378 = HEAP8[$377>>0]|0; + $379 = $378 << 24 >> 24; + HEAP32[$0>>2] = $379; + $380 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($380|0); + } + return 0|0; +} +function _sqlite3VdbeSerialTypeLen($serial_type) { + $serial_type = $serial_type|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $serial_type; + $2 = HEAP32[$1>>2]|0; + $3 = ($2>>>0)>=(12); + $4 = HEAP32[$1>>2]|0; + if ($3) { + $5 = (($4) - 12)|0; + $6 = (($5>>>0) / 2)&-1; + HEAP32[$0>>2] = $6; + $10 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($10|0); + } else { + $7 = (30816 + ($4)|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + HEAP32[$0>>2] = $9; + $10 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($10|0); + } + return 0|0; +} +function _sqlite3VdbeSerialGet($buf,$serial_type,$pMem) { + $buf = $buf|0; + $serial_type = $serial_type|0; + $pMem = $pMem|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0.0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $len = 0, $x = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp + 16|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $x = sp; + $y = sp + 20|0; + $len = sp + 24|0; + HEAP32[$1>>2] = $buf; + HEAP32[$2>>2] = $serial_type; + HEAP32[$3>>2] = $pMem; + $4 = HEAP32[$2>>2]|0; + switch ($4|0) { + case 7: case 6: { + $144 = HEAP32[$1>>2]|0; + $145 = HEAP8[$144>>0]|0; + $146 = $145&255; + $147 = $146 << 24; + $148 = HEAP32[$1>>2]|0; + $149 = (($148) + 1|0); + $150 = HEAP8[$149>>0]|0; + $151 = $150&255; + $152 = $151 << 16; + $153 = $147 | $152; + $154 = HEAP32[$1>>2]|0; + $155 = (($154) + 2|0); + $156 = HEAP8[$155>>0]|0; + $157 = $156&255; + $158 = $157 << 8; + $159 = $153 | $158; + $160 = HEAP32[$1>>2]|0; + $161 = (($160) + 3|0); + $162 = HEAP8[$161>>0]|0; + $163 = $162&255; + $164 = $159 | $163; + $165 = $x; + $166 = $165; + HEAP32[$166>>2] = $164; + $167 = (($165) + 4)|0; + $168 = $167; + HEAP32[$168>>2] = 0; + $169 = HEAP32[$1>>2]|0; + $170 = (($169) + 4|0); + $171 = HEAP8[$170>>0]|0; + $172 = $171&255; + $173 = $172 << 24; + $174 = HEAP32[$1>>2]|0; + $175 = (($174) + 4|0); + $176 = (($175) + 1|0); + $177 = HEAP8[$176>>0]|0; + $178 = $177&255; + $179 = $178 << 16; + $180 = $173 | $179; + $181 = HEAP32[$1>>2]|0; + $182 = (($181) + 4|0); + $183 = (($182) + 2|0); + $184 = HEAP8[$183>>0]|0; + $185 = $184&255; + $186 = $185 << 8; + $187 = $180 | $186; + $188 = HEAP32[$1>>2]|0; + $189 = (($188) + 4|0); + $190 = (($189) + 3|0); + $191 = HEAP8[$190>>0]|0; + $192 = $191&255; + $193 = $187 | $192; + HEAP32[$y>>2] = $193; + $194 = $x; + $195 = $194; + $196 = HEAP32[$195>>2]|0; + $197 = (($194) + 4)|0; + $198 = $197; + $199 = HEAP32[$198>>2]|0; + $200 = HEAP32[$y>>2]|0; + $201 = $x; + $202 = $201; + HEAP32[$202>>2] = $200; + $203 = (($201) + 4)|0; + $204 = $203; + HEAP32[$204>>2] = $196; + $205 = HEAP32[$2>>2]|0; + $206 = ($205|0)==(6); + if ($206) { + $207 = $x; + $208 = $207; + $209 = HEAP32[$208>>2]|0; + $210 = (($207) + 4)|0; + $211 = $210; + $212 = HEAP32[$211>>2]|0; + $213 = HEAP32[$3>>2]|0; + $214 = (($213) + 16|0); + $215 = $214; + $216 = $215; + HEAP32[$216>>2] = $209; + $217 = (($215) + 4)|0; + $218 = $217; + HEAP32[$218>>2] = $212; + $219 = HEAP32[$3>>2]|0; + $220 = (($219) + 28|0); + HEAP16[$220>>1] = 4; + } else { + $221 = HEAP32[$3>>2]|0; + $222 = (($221) + 8|0); + ;HEAP32[$222+0>>2]=HEAP32[$x+0>>2]|0;HEAP32[$222+4>>2]=HEAP32[$x+4>>2]|0; + $223 = HEAP32[$3>>2]|0; + $224 = (($223) + 8|0); + $225 = +HEAPF64[$224>>3]; + $226 = (_sqlite3IsNaN($225)|0); + $227 = ($226|0)!=(0); + $228 = $227 ? 1 : 8; + $229 = $228&65535; + $230 = HEAP32[$3>>2]|0; + $231 = (($230) + 28|0); + HEAP16[$231>>1] = $229; + } + HEAP32[$0>>2] = 8; + $260 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($260|0); + break; + } + case 0: case 11: case 10: { + $5 = HEAP32[$3>>2]|0; + $6 = (($5) + 28|0); + HEAP16[$6>>1] = 1; + HEAP32[$0>>2] = 0; + $260 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($260|0); + break; + } + case 3: { + $39 = HEAP32[$1>>2]|0; + $40 = HEAP8[$39>>0]|0; + $41 = $40 << 24 >> 24; + $42 = $41<<16; + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 1|0); + $45 = HEAP8[$44>>0]|0; + $46 = $45&255; + $47 = $46 << 8; + $48 = $42 | $47; + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 2|0); + $51 = HEAP8[$50>>0]|0; + $52 = $51&255; + $53 = $48 | $52; + $54 = ($53|0)<(0); + $55 = $54 << 31 >> 31; + $56 = HEAP32[$3>>2]|0; + $57 = (($56) + 16|0); + $58 = $57; + $59 = $58; + HEAP32[$59>>2] = $53; + $60 = (($58) + 4)|0; + $61 = $60; + HEAP32[$61>>2] = $55; + $62 = HEAP32[$3>>2]|0; + $63 = (($62) + 28|0); + HEAP16[$63>>1] = 4; + HEAP32[$0>>2] = 3; + $260 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($260|0); + break; + } + case 5: { + $96 = HEAP32[$1>>2]|0; + $97 = (($96) + 2|0); + $98 = HEAP8[$97>>0]|0; + $99 = $98&255; + $100 = $99 << 24; + $101 = HEAP32[$1>>2]|0; + $102 = (($101) + 2|0); + $103 = (($102) + 1|0); + $104 = HEAP8[$103>>0]|0; + $105 = $104&255; + $106 = $105 << 16; + $107 = $100 | $106; + $108 = HEAP32[$1>>2]|0; + $109 = (($108) + 2|0); + $110 = (($109) + 2|0); + $111 = HEAP8[$110>>0]|0; + $112 = $111&255; + $113 = $112 << 8; + $114 = $107 | $113; + $115 = HEAP32[$1>>2]|0; + $116 = (($115) + 2|0); + $117 = (($116) + 3|0); + $118 = HEAP8[$117>>0]|0; + $119 = $118&255; + $120 = $114 | $119; + $121 = HEAP32[$1>>2]|0; + $122 = HEAP8[$121>>0]|0; + $123 = $122 << 24 >> 24; + $124 = $123<<8; + $125 = HEAP32[$1>>2]|0; + $126 = (($125) + 1|0); + $127 = HEAP8[$126>>0]|0; + $128 = $127&255; + $129 = $124 | $128; + $130 = ($129|0)<(0); + $131 = $130 << 31 >> 31; + $132 = (___muldi3(0,1,($129|0),($131|0))|0); + $133 = tempRet0; + $134 = (_i64Add(($120|0),0,($132|0),($133|0))|0); + $135 = tempRet0; + $136 = HEAP32[$3>>2]|0; + $137 = (($136) + 16|0); + $138 = $137; + $139 = $138; + HEAP32[$139>>2] = $134; + $140 = (($138) + 4)|0; + $141 = $140; + HEAP32[$141>>2] = $135; + $142 = HEAP32[$3>>2]|0; + $143 = (($142) + 28|0); + HEAP16[$143>>1] = 4; + HEAP32[$0>>2] = 6; + $260 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($260|0); + break; + } + case 2: { + $20 = HEAP32[$1>>2]|0; + $21 = HEAP8[$20>>0]|0; + $22 = $21 << 24 >> 24; + $23 = $22<<8; + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 1|0); + $26 = HEAP8[$25>>0]|0; + $27 = $26&255; + $28 = $23 | $27; + $29 = ($28|0)<(0); + $30 = $29 << 31 >> 31; + $31 = HEAP32[$3>>2]|0; + $32 = (($31) + 16|0); + $33 = $32; + $34 = $33; + HEAP32[$34>>2] = $28; + $35 = (($33) + 4)|0; + $36 = $35; + HEAP32[$36>>2] = $30; + $37 = HEAP32[$3>>2]|0; + $38 = (($37) + 28|0); + HEAP16[$38>>1] = 4; + HEAP32[$0>>2] = 2; + $260 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($260|0); + break; + } + case 9: case 8: { + $232 = HEAP32[$2>>2]|0; + $233 = (($232) - 8)|0; + $234 = HEAP32[$3>>2]|0; + $235 = (($234) + 16|0); + $236 = $235; + $237 = $236; + HEAP32[$237>>2] = $233; + $238 = (($236) + 4)|0; + $239 = $238; + HEAP32[$239>>2] = 0; + $240 = HEAP32[$3>>2]|0; + $241 = (($240) + 28|0); + HEAP16[$241>>1] = 4; + HEAP32[$0>>2] = 0; + $260 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($260|0); + break; + } + case 1: { + $7 = HEAP32[$1>>2]|0; + $8 = HEAP8[$7>>0]|0; + $9 = $8 << 24 >> 24; + $10 = ($9|0)<(0); + $11 = $10 << 31 >> 31; + $12 = HEAP32[$3>>2]|0; + $13 = (($12) + 16|0); + $14 = $13; + $15 = $14; + HEAP32[$15>>2] = $9; + $16 = (($14) + 4)|0; + $17 = $16; + HEAP32[$17>>2] = $11; + $18 = HEAP32[$3>>2]|0; + $19 = (($18) + 28|0); + HEAP16[$19>>1] = 4; + HEAP32[$0>>2] = 1; + $260 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($260|0); + break; + } + case 4: { + $64 = HEAP32[$1>>2]|0; + $65 = HEAP8[$64>>0]|0; + $66 = $65&255; + $67 = $66 << 24; + $68 = HEAP32[$1>>2]|0; + $69 = (($68) + 1|0); + $70 = HEAP8[$69>>0]|0; + $71 = $70&255; + $72 = $71 << 16; + $73 = $67 | $72; + $74 = HEAP32[$1>>2]|0; + $75 = (($74) + 2|0); + $76 = HEAP8[$75>>0]|0; + $77 = $76&255; + $78 = $77 << 8; + $79 = $73 | $78; + $80 = HEAP32[$1>>2]|0; + $81 = (($80) + 3|0); + $82 = HEAP8[$81>>0]|0; + $83 = $82&255; + $84 = $79 | $83; + HEAP32[$y>>2] = $84; + $85 = HEAP32[$y>>2]|0; + $86 = ($85|0)<(0); + $87 = $86 << 31 >> 31; + $88 = HEAP32[$3>>2]|0; + $89 = (($88) + 16|0); + $90 = $89; + $91 = $90; + HEAP32[$91>>2] = $85; + $92 = (($90) + 4)|0; + $93 = $92; + HEAP32[$93>>2] = $87; + $94 = HEAP32[$3>>2]|0; + $95 = (($94) + 28|0); + HEAP16[$95>>1] = 4; + HEAP32[$0>>2] = 4; + $260 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($260|0); + break; + } + default: { + $242 = HEAP32[$2>>2]|0; + $243 = (($242) - 12)|0; + $244 = (($243>>>0) / 2)&-1; + HEAP32[$len>>2] = $244; + $245 = HEAP32[$1>>2]|0; + $246 = HEAP32[$3>>2]|0; + $247 = (($246) + 4|0); + HEAP32[$247>>2] = $245; + $248 = HEAP32[$len>>2]|0; + $249 = HEAP32[$3>>2]|0; + $250 = (($249) + 24|0); + HEAP32[$250>>2] = $248; + $251 = HEAP32[$3>>2]|0; + $252 = (($251) + 32|0); + HEAP32[$252>>2] = 0; + $253 = HEAP32[$2>>2]|0; + $254 = $253 & 1; + $255 = (30808 + ($254<<1)|0); + $256 = HEAP16[$255>>1]|0; + $257 = HEAP32[$3>>2]|0; + $258 = (($257) + 28|0); + HEAP16[$258>>1] = $256; + $259 = HEAP32[$len>>2]|0; + HEAP32[$0>>2] = $259; + $260 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($260|0); + } + } + return 0|0; +} +function _vdbeRecordDecodeInt($serial_type,$aKey) { + $serial_type = $serial_type|0; + $aKey = $aKey|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $x = 0, $y = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 8|0; + $1 = sp + 24|0; + $2 = sp + 20|0; + $y = sp + 16|0; + $x = sp; + HEAP32[$1>>2] = $serial_type; + HEAP32[$2>>2] = $aKey; + $3 = HEAP32[$1>>2]|0; + switch ($3|0) { + case 2: { + $13 = HEAP32[$2>>2]|0; + $14 = HEAP8[$13>>0]|0; + $15 = $14 << 24 >> 24; + $16 = $15<<8; + $17 = HEAP32[$2>>2]|0; + $18 = (($17) + 1|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = $16 | $20; + $22 = ($21|0)<(0); + $23 = $22 << 31 >> 31; + $24 = $0; + $25 = $24; + HEAP32[$25>>2] = $21; + $26 = (($24) + 4)|0; + $27 = $26; + HEAP32[$27>>2] = $23; + break; + } + case 1: case 0: { + $4 = HEAP32[$2>>2]|0; + $5 = HEAP8[$4>>0]|0; + $6 = $5 << 24 >> 24; + $7 = ($6|0)<(0); + $8 = $7 << 31 >> 31; + $9 = $0; + $10 = $9; + HEAP32[$10>>2] = $6; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = $8; + break; + } + case 5: { + $77 = HEAP32[$2>>2]|0; + $78 = (($77) + 2|0); + $79 = HEAP8[$78>>0]|0; + $80 = $79&255; + $81 = $80 << 24; + $82 = HEAP32[$2>>2]|0; + $83 = (($82) + 2|0); + $84 = (($83) + 1|0); + $85 = HEAP8[$84>>0]|0; + $86 = $85&255; + $87 = $86 << 16; + $88 = $81 | $87; + $89 = HEAP32[$2>>2]|0; + $90 = (($89) + 2|0); + $91 = (($90) + 2|0); + $92 = HEAP8[$91>>0]|0; + $93 = $92&255; + $94 = $93 << 8; + $95 = $88 | $94; + $96 = HEAP32[$2>>2]|0; + $97 = (($96) + 2|0); + $98 = (($97) + 3|0); + $99 = HEAP8[$98>>0]|0; + $100 = $99&255; + $101 = $95 | $100; + $102 = HEAP32[$2>>2]|0; + $103 = HEAP8[$102>>0]|0; + $104 = $103 << 24 >> 24; + $105 = $104<<8; + $106 = HEAP32[$2>>2]|0; + $107 = (($106) + 1|0); + $108 = HEAP8[$107>>0]|0; + $109 = $108&255; + $110 = $105 | $109; + $111 = ($110|0)<(0); + $112 = $111 << 31 >> 31; + $113 = (___muldi3(0,1,($110|0),($112|0))|0); + $114 = tempRet0; + $115 = (_i64Add(($101|0),0,($113|0),($114|0))|0); + $116 = tempRet0; + $117 = $0; + $118 = $117; + HEAP32[$118>>2] = $115; + $119 = (($117) + 4)|0; + $120 = $119; + HEAP32[$120>>2] = $116; + break; + } + case 4: { + $49 = HEAP32[$2>>2]|0; + $50 = HEAP8[$49>>0]|0; + $51 = $50&255; + $52 = $51 << 24; + $53 = HEAP32[$2>>2]|0; + $54 = (($53) + 1|0); + $55 = HEAP8[$54>>0]|0; + $56 = $55&255; + $57 = $56 << 16; + $58 = $52 | $57; + $59 = HEAP32[$2>>2]|0; + $60 = (($59) + 2|0); + $61 = HEAP8[$60>>0]|0; + $62 = $61&255; + $63 = $62 << 8; + $64 = $58 | $63; + $65 = HEAP32[$2>>2]|0; + $66 = (($65) + 3|0); + $67 = HEAP8[$66>>0]|0; + $68 = $67&255; + $69 = $64 | $68; + HEAP32[$y>>2] = $69; + $70 = HEAP32[$y>>2]|0; + $71 = ($70|0)<(0); + $72 = $71 << 31 >> 31; + $73 = $0; + $74 = $73; + HEAP32[$74>>2] = $70; + $75 = (($73) + 4)|0; + $76 = $75; + HEAP32[$76>>2] = $72; + break; + } + case 3: { + $28 = HEAP32[$2>>2]|0; + $29 = HEAP8[$28>>0]|0; + $30 = $29 << 24 >> 24; + $31 = $30<<16; + $32 = HEAP32[$2>>2]|0; + $33 = (($32) + 1|0); + $34 = HEAP8[$33>>0]|0; + $35 = $34&255; + $36 = $35 << 8; + $37 = $31 | $36; + $38 = HEAP32[$2>>2]|0; + $39 = (($38) + 2|0); + $40 = HEAP8[$39>>0]|0; + $41 = $40&255; + $42 = $37 | $41; + $43 = ($42|0)<(0); + $44 = $43 << 31 >> 31; + $45 = $0; + $46 = $45; + HEAP32[$46>>2] = $42; + $47 = (($45) + 4)|0; + $48 = $47; + HEAP32[$48>>2] = $44; + break; + } + case 6: { + $121 = HEAP32[$2>>2]|0; + $122 = HEAP8[$121>>0]|0; + $123 = $122&255; + $124 = $123 << 24; + $125 = HEAP32[$2>>2]|0; + $126 = (($125) + 1|0); + $127 = HEAP8[$126>>0]|0; + $128 = $127&255; + $129 = $128 << 16; + $130 = $124 | $129; + $131 = HEAP32[$2>>2]|0; + $132 = (($131) + 2|0); + $133 = HEAP8[$132>>0]|0; + $134 = $133&255; + $135 = $134 << 8; + $136 = $130 | $135; + $137 = HEAP32[$2>>2]|0; + $138 = (($137) + 3|0); + $139 = HEAP8[$138>>0]|0; + $140 = $139&255; + $141 = $136 | $140; + $142 = $x; + $143 = $142; + HEAP32[$143>>2] = $141; + $144 = (($142) + 4)|0; + $145 = $144; + HEAP32[$145>>2] = 0; + $146 = $x; + $147 = $146; + $148 = HEAP32[$147>>2]|0; + $149 = (($146) + 4)|0; + $150 = $149; + $151 = HEAP32[$150>>2]|0; + $152 = HEAP32[$2>>2]|0; + $153 = (($152) + 4|0); + $154 = HEAP8[$153>>0]|0; + $155 = $154&255; + $156 = $155 << 24; + $157 = HEAP32[$2>>2]|0; + $158 = (($157) + 4|0); + $159 = (($158) + 1|0); + $160 = HEAP8[$159>>0]|0; + $161 = $160&255; + $162 = $161 << 16; + $163 = $156 | $162; + $164 = HEAP32[$2>>2]|0; + $165 = (($164) + 4|0); + $166 = (($165) + 2|0); + $167 = HEAP8[$166>>0]|0; + $168 = $167&255; + $169 = $168 << 8; + $170 = $163 | $169; + $171 = HEAP32[$2>>2]|0; + $172 = (($171) + 4|0); + $173 = (($172) + 3|0); + $174 = HEAP8[$173>>0]|0; + $175 = $174&255; + $176 = $170 | $175; + $177 = $x; + $178 = $177; + HEAP32[$178>>2] = $176; + $179 = (($177) + 4)|0; + $180 = $179; + HEAP32[$180>>2] = $148; + $181 = $x; + $182 = $181; + $183 = HEAP32[$182>>2]|0; + $184 = (($181) + 4)|0; + $185 = $184; + $186 = HEAP32[$185>>2]|0; + $187 = $0; + $188 = $187; + HEAP32[$188>>2] = $183; + $189 = (($187) + 4)|0; + $190 = $189; + HEAP32[$190>>2] = $186; + break; + } + default: { + $191 = HEAP32[$1>>2]|0; + $192 = (($191) - 8)|0; + $193 = $0; + $194 = $193; + HEAP32[$194>>2] = $192; + $195 = (($193) + 4)|0; + $196 = $195; + HEAP32[$196>>2] = 0; + } + } + $197 = $0; + $198 = $197; + $199 = HEAP32[$198>>2]|0; + $200 = (($197) + 4)|0; + $201 = $200; + $202 = HEAP32[$201>>2]|0; + tempRet0 = $202; + STACKTOP = sp;return ($199|0); +} +function _sqlite3VarintLen($0,$1) { + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp; + $i = sp + 8|0; + $3 = $2; + $4 = $3; + HEAP32[$4>>2] = $0; + $5 = (($3) + 4)|0; + $6 = $5; + HEAP32[$6>>2] = $1; + HEAP32[$i>>2] = 0; + while(1) { + $7 = HEAP32[$i>>2]|0; + $8 = (($7) + 1)|0; + HEAP32[$i>>2] = $8; + $9 = $2; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = (($9) + 4)|0; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = (_bitshift64Lshr(($11|0),($14|0),7)|0); + $16 = tempRet0; + $17 = $2; + $18 = $17; + HEAP32[$18>>2] = $15; + $19 = (($17) + 4)|0; + $20 = $19; + HEAP32[$20>>2] = $16; + $21 = $2; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (($21) + 4)|0; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = ($23|0)!=(0); + $28 = ($26|0)!=(0); + $29 = $27 | $28; + if (!($29)) { + label = 4; + break; + } + $30 = HEAP32[$i>>2]|0; + $31 = ($30|0)<(9); + if (!($31)) { + label = 4; + break; + } + } + if ((label|0) == 4) { + $32 = HEAP32[$i>>2]|0; + STACKTOP = sp;return ($32|0); + } + return 0|0; +} +function _sqlite3IsNaN($x) { + $x = +$x; + var $0 = 0, $1 = 0.0, $2 = 0.0, $3 = 0.0, $4 = 0.0, $5 = 0, $6 = 0, $7 = 0, $rc = 0, $y = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $rc = sp + 24|0; + $y = sp + 8|0; + $z = sp; + HEAPF64[$0>>3] = $x; + $1 = +HEAPF64[$0>>3]; + HEAPF64[$y>>3] = $1; + $2 = +HEAPF64[$y>>3]; + HEAPF64[$z>>3] = $2; + $3 = +HEAPF64[$y>>3]; + $4 = +HEAPF64[$z>>3]; + $5 = $3 != $4; + $6 = $5&1; + HEAP32[$rc>>2] = $6; + $7 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($7|0); +} +function _moveToLeftmost($pCur) { + $pCur = $pCur|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $pPage = 0, $pgno = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $pgno = sp; + $rc = sp + 4|0; + $pPage = sp + 8|0; + HEAP32[$0>>2] = $pCur; + HEAP32[$rc>>2] = 0; + while(1) { + $1 = HEAP32[$rc>>2]|0; + $2 = ($1|0)==(0); + if (!($2)) { + label = 5; + break; + } + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 84|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5 << 16 >> 16; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 128|0); + $9 = (($8) + ($6<<2)|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$pPage>>2] = $10; + $11 = (($10) + 3|0); + $12 = HEAP8[$11>>0]|0; + $13 = ($12<<24>>24)!=(0); + $14 = $13 ^ 1; + if (!($14)) { + label = 5; + break; + } + $15 = HEAP32[$pPage>>2]|0; + $16 = (($15) + 56|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$pPage>>2]|0; + $19 = (($18) + 18|0); + $20 = HEAP16[$19>>1]|0; + $21 = $20&65535; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 84|0); + $24 = HEAP16[$23>>1]|0; + $25 = $24 << 16 >> 16; + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 86|0); + $28 = (($27) + ($25<<1)|0); + $29 = HEAP16[$28>>1]|0; + $30 = $29&65535; + $31 = $30<<1; + $32 = HEAP32[$pPage>>2]|0; + $33 = (($32) + 64|0); + $34 = HEAP32[$33>>2]|0; + $35 = (($34) + ($31)|0); + $36 = HEAP8[$35>>0]|0; + $37 = $36&255; + $38 = $37 << 8; + $39 = HEAP32[$0>>2]|0; + $40 = (($39) + 84|0); + $41 = HEAP16[$40>>1]|0; + $42 = $41 << 16 >> 16; + $43 = HEAP32[$0>>2]|0; + $44 = (($43) + 86|0); + $45 = (($44) + ($42<<1)|0); + $46 = HEAP16[$45>>1]|0; + $47 = $46&65535; + $48 = $47<<1; + $49 = HEAP32[$pPage>>2]|0; + $50 = (($49) + 64|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + ($48)|0); + $53 = (($52) + 1|0); + $54 = HEAP8[$53>>0]|0; + $55 = $54&255; + $56 = $38 | $55; + $57 = $21 & $56; + $58 = (($17) + ($57)|0); + $59 = (_sqlite3Get4byte($58)|0); + HEAP32[$pgno>>2] = $59; + $60 = HEAP32[$0>>2]|0; + $61 = HEAP32[$pgno>>2]|0; + $62 = (_moveToChild($60,$61)|0); + HEAP32[$rc>>2] = $62; + } + if ((label|0) == 5) { + $63 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($63|0); + } + return 0|0; +} +function _targetSrcList($pParse,$pStep) { + $pParse = $pParse|0; + $pStep = $pStep|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0; + var $iDb = 0, $or$cond = 0, $pSrc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $iDb = sp + 4|0; + $pSrc = sp + 8|0; + $db = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pStep; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 12|0); + $6 = (_sqlite3SrcListAppend($3,0,$5,0)|0); + HEAP32[$pSrc>>2] = $6; + $7 = HEAP32[$pSrc>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + $38 = HEAP32[$pSrc>>2]|0; + STACKTOP = sp;return ($38|0); + } + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 20|0); + $15 = HEAP32[$14>>2]|0; + $16 = (_sqlite3SchemaToIndex($10,$15)|0); + HEAP32[$iDb>>2] = $16; + $17 = HEAP32[$iDb>>2]|0; + $18 = ($17|0)==(0); + $19 = HEAP32[$iDb>>2]|0; + $20 = ($19|0)>=(2); + $or$cond = $18 | $20; + if (!($or$cond)) { + $38 = HEAP32[$pSrc>>2]|0; + STACKTOP = sp;return ($38|0); + } + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$21>>2]|0; + HEAP32[$db>>2] = $22; + $23 = HEAP32[$db>>2]|0; + $24 = HEAP32[$iDb>>2]|0; + $25 = HEAP32[$db>>2]|0; + $26 = (($25) + 16|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + ($24<<4)|0); + $29 = HEAP32[$28>>2]|0; + $30 = (_sqlite3DbStrDup($23,$29)|0); + $31 = HEAP32[$pSrc>>2]|0; + $32 = HEAP32[$31>>2]|0; + $33 = (($32) - 1)|0; + $34 = HEAP32[$pSrc>>2]|0; + $35 = (($34) + 8|0); + $36 = (($35) + (($33*72)|0)|0); + $37 = (($36) + 4|0); + HEAP32[$37>>2] = $30; + $38 = HEAP32[$pSrc>>2]|0; + STACKTOP = sp;return ($38|0); +} +function _fkTriggerDelete($dbMem,$p) { + $dbMem = $dbMem|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pStep = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pStep = sp + 4|0; + HEAP32[$0>>2] = $dbMem; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 28|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$pStep>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$pStep>>2]|0; + $9 = (($8) + 20|0); + $10 = HEAP32[$9>>2]|0; + _sqlite3ExprDelete($7,$10); + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$pStep>>2]|0; + $13 = (($12) + 24|0); + $14 = HEAP32[$13>>2]|0; + _sqlite3ExprListDelete($11,$14); + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$pStep>>2]|0; + $17 = (($16) + 8|0); + $18 = HEAP32[$17>>2]|0; + _sqlite3SelectDelete($15,$18); + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 12|0); + $22 = HEAP32[$21>>2]|0; + _sqlite3ExprDelete($19,$22); + $23 = HEAP32[$0>>2]|0; + $24 = HEAP32[$1>>2]|0; + _sqlite3DbFree($23,$24); + STACKTOP = sp;return; +} +function _checkColumnOverlap($pIdList,$pEList) { + $pIdList = $pIdList|0; + $pEList = $pEList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $e = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $e = sp + 8|0; + HEAP32[$1>>2] = $pIdList; + HEAP32[$2>>2] = $pEList; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)==(0|0); + if (!($4)) { + $5 = HEAP32[$2>>2]|0; + $6 = ($5|0)==(0|0); + if (!($6)) { + HEAP32[$e>>2] = 0; + while(1) { + $7 = HEAP32[$e>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = ($7|0)<($9|0); + if (!($10)) { + label = 9; + break; + } + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$e>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + (($12*20)|0)|0); + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = (_sqlite3IdListIndex($11,$18)|0); + $20 = ($19|0)>=(0); + if ($20) { + label = 7; + break; + } + $21 = HEAP32[$e>>2]|0; + $22 = (($21) + 1)|0; + HEAP32[$e>>2] = $22; + } + if ((label|0) == 7) { + HEAP32[$0>>2] = 1; + $23 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($23|0); + } + else if ((label|0) == 9) { + HEAP32[$0>>2] = 0; + $23 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($23|0); + } + } + } + HEAP32[$0>>2] = 1; + $23 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($23|0); +} +function _xferCompatibleCollation($z1,$z2) { + $z1 = $z1|0; + $z2 = $z2|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$1>>2] = $z1; + HEAP32[$2>>2] = $z2; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)==(0|0); + $5 = HEAP32[$2>>2]|0; + $6 = ($5|0)==(0|0); + do { + if ($4) { + $7 = $6&1; + HEAP32[$0>>2] = $7; + } else { + if ($6) { + HEAP32[$0>>2] = 0; + break; + } else { + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = (_sqlite3_stricmp($8,$9)|0); + $11 = ($10|0)==(0); + $12 = $11&1; + HEAP32[$0>>2] = $12; + break; + } + } + } while(0); + $13 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($13|0); +} +function _xferCompatibleIndex($pDest,$pSrc) { + $pDest = $pDest|0; + $pSrc = $pSrc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + HEAP32[$1>>2] = $pDest; + HEAP32[$2>>2] = $pSrc; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 50|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5&65535; + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 50|0); + $9 = HEAP16[$8>>1]|0; + $10 = $9&65535; + $11 = ($6|0)!=($10|0); + if ($11) { + HEAP32[$0>>2] = 0; + $81 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($81|0); + } + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 54|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = HEAP32[$2>>2]|0; + $17 = (($16) + 54|0); + $18 = HEAP8[$17>>0]|0; + $19 = $18&255; + $20 = ($15|0)!=($19|0); + if ($20) { + HEAP32[$0>>2] = 0; + $81 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($81|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $21 = HEAP32[$i>>2]|0; + $22 = HEAP32[$2>>2]|0; + $23 = (($22) + 50|0); + $24 = HEAP16[$23>>1]|0; + $25 = $24&65535; + $26 = ($21|0)<($25|0); + if (!($26)) { + label = 14; + break; + } + $27 = HEAP32[$i>>2]|0; + $28 = HEAP32[$2>>2]|0; + $29 = (($28) + 4|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + ($27<<1)|0); + $32 = HEAP16[$31>>1]|0; + $33 = $32 << 16 >> 16; + $34 = HEAP32[$i>>2]|0; + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 4|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + ($34<<1)|0); + $39 = HEAP16[$38>>1]|0; + $40 = $39 << 16 >> 16; + $41 = ($33|0)!=($40|0); + if ($41) { + label = 8; + break; + } + $42 = HEAP32[$i>>2]|0; + $43 = HEAP32[$2>>2]|0; + $44 = (($43) + 28|0); + $45 = HEAP32[$44>>2]|0; + $46 = (($45) + ($42)|0); + $47 = HEAP8[$46>>0]|0; + $48 = $47&255; + $49 = HEAP32[$i>>2]|0; + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 28|0); + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + ($49)|0); + $54 = HEAP8[$53>>0]|0; + $55 = $54&255; + $56 = ($48|0)!=($55|0); + if ($56) { + label = 10; + break; + } + $57 = HEAP32[$i>>2]|0; + $58 = HEAP32[$2>>2]|0; + $59 = (($58) + 32|0); + $60 = HEAP32[$59>>2]|0; + $61 = (($60) + ($57<<2)|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$i>>2]|0; + $64 = HEAP32[$1>>2]|0; + $65 = (($64) + 32|0); + $66 = HEAP32[$65>>2]|0; + $67 = (($66) + ($63<<2)|0); + $68 = HEAP32[$67>>2]|0; + $69 = (_xferCompatibleCollation($62,$68)|0); + $70 = ($69|0)!=(0); + if (!($70)) { + label = 12; + break; + } + $71 = HEAP32[$i>>2]|0; + $72 = (($71) + 1)|0; + HEAP32[$i>>2] = $72; + } + if ((label|0) == 8) { + HEAP32[$0>>2] = 0; + $81 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($81|0); + } + else if ((label|0) == 10) { + HEAP32[$0>>2] = 0; + $81 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($81|0); + } + else if ((label|0) == 12) { + HEAP32[$0>>2] = 0; + $81 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($81|0); + } + else if ((label|0) == 14) { + $73 = HEAP32[$2>>2]|0; + $74 = (($73) + 36|0); + $75 = HEAP32[$74>>2]|0; + $76 = HEAP32[$1>>2]|0; + $77 = (($76) + 36|0); + $78 = HEAP32[$77>>2]|0; + $79 = (_sqlite3ExprCompare($75,$78,-1)|0); + $80 = ($79|0)!=(0); + if ($80) { + HEAP32[$0>>2] = 0; + $81 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($81|0); + } else { + HEAP32[$0>>2] = 1; + $81 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($81|0); + } + } + return 0|0; +} +function _updateVirtualTable($pParse,$pSrc,$pTab,$pChanges,$pRowid,$aXRef,$pWhere,$onError) { + $pParse = $pParse|0; + $pSrc = $pSrc|0; + $pTab = $pTab|0; + $pChanges = $pChanges|0; + $pRowid = $pRowid|0; + $aXRef = $aXRef|0; + $pWhere = $pWhere|0; + $onError = $onError|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; + var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr = 0; + var $db = 0, $dest = 0, $ephemTab = 0, $i = 0, $iReg = 0, $pEList = 0, $pExpr = 0, $pSelect = 0, $pVTab = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 88|0; + $1 = sp + 84|0; + $2 = sp + 80|0; + $3 = sp + 76|0; + $4 = sp + 72|0; + $5 = sp + 68|0; + $6 = sp + 64|0; + $7 = sp + 60|0; + $v = sp + 56|0; + $pEList = sp + 52|0; + $pSelect = sp + 12|0; + $pExpr = sp; + $ephemTab = sp + 4|0; + $i = sp + 8|0; + $addr = sp + 16|0; + $iReg = sp + 20|0; + $db = sp + 24|0; + $pVTab = sp + 28|0; + $dest = sp + 32|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pSrc; + HEAP32[$2>>2] = $pTab; + HEAP32[$3>>2] = $pChanges; + HEAP32[$4>>2] = $pRowid; + HEAP32[$5>>2] = $aXRef; + HEAP32[$6>>2] = $pWhere; + HEAP32[$7>>2] = $onError; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 8|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$v>>2] = $10; + HEAP32[$pEList>>2] = 0; + HEAP32[$pSelect>>2] = 0; + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$11>>2]|0; + HEAP32[$db>>2] = $12; + $13 = HEAP32[$db>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (_sqlite3GetVTable($13,$14)|0); + HEAP32[$pVTab>>2] = $15; + $16 = HEAP32[$0>>2]|0; + $17 = HEAP32[$db>>2]|0; + $18 = (_sqlite3Expr($17,27,30992)|0); + $19 = (_sqlite3ExprListAppend($16,0,$18)|0); + HEAP32[$pEList>>2] = $19; + $20 = HEAP32[$4>>2]|0; + $21 = ($20|0)!=(0|0); + if ($21) { + $22 = HEAP32[$0>>2]|0; + $23 = HEAP32[$pEList>>2]|0; + $24 = HEAP32[$db>>2]|0; + $25 = HEAP32[$4>>2]|0; + $26 = (_sqlite3ExprDup($24,$25,0)|0); + $27 = (_sqlite3ExprListAppend($22,$23,$26)|0); + HEAP32[$pEList>>2] = $27; + } + HEAP32[$i>>2] = 0; + while(1) { + $28 = HEAP32[$i>>2]|0; + $29 = HEAP32[$2>>2]|0; + $30 = (($29) + 38|0); + $31 = HEAP16[$30>>1]|0; + $32 = $31 << 16 >> 16; + $33 = ($28|0)<($32|0); + if (!($33)) { + break; + } + $34 = HEAP32[$i>>2]|0; + $35 = HEAP32[$5>>2]|0; + $36 = (($35) + ($34<<2)|0); + $37 = HEAP32[$36>>2]|0; + $38 = ($37|0)>=(0); + $39 = HEAP32[$db>>2]|0; + $40 = HEAP32[$i>>2]|0; + if ($38) { + $41 = HEAP32[$5>>2]|0; + $42 = (($41) + ($40<<2)|0); + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$3>>2]|0; + $45 = (($44) + 4|0); + $46 = HEAP32[$45>>2]|0; + $47 = (($46) + (($43*20)|0)|0); + $48 = HEAP32[$47>>2]|0; + $49 = (_sqlite3ExprDup($39,$48,0)|0); + HEAP32[$pExpr>>2] = $49; + } else { + $50 = HEAP32[$2>>2]|0; + $51 = (($50) + 4|0); + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + (($40*24)|0)|0); + $54 = HEAP32[$53>>2]|0; + $55 = (_sqlite3Expr($39,27,$54)|0); + HEAP32[$pExpr>>2] = $55; + } + $56 = HEAP32[$0>>2]|0; + $57 = HEAP32[$pEList>>2]|0; + $58 = HEAP32[$pExpr>>2]|0; + $59 = (_sqlite3ExprListAppend($56,$57,$58)|0); + HEAP32[$pEList>>2] = $59; + $60 = HEAP32[$i>>2]|0; + $61 = (($60) + 1)|0; + HEAP32[$i>>2] = $61; + } + $62 = HEAP32[$0>>2]|0; + $63 = HEAP32[$pEList>>2]|0; + $64 = HEAP32[$1>>2]|0; + $65 = HEAP32[$6>>2]|0; + $66 = (_sqlite3SelectNew($62,$63,$64,$65,0,0,0,0,0,0)|0); + HEAP32[$pSelect>>2] = $66; + $67 = HEAP32[$0>>2]|0; + $68 = (($67) + 68|0); + $69 = HEAP32[$68>>2]|0; + $70 = (($69) + 1)|0; + HEAP32[$68>>2] = $70; + HEAP32[$ephemTab>>2] = $69; + $71 = HEAP32[$v>>2]|0; + $72 = HEAP32[$ephemTab>>2]|0; + $73 = HEAP32[$2>>2]|0; + $74 = (($73) + 38|0); + $75 = HEAP16[$74>>1]|0; + $76 = $75 << 16 >> 16; + $77 = (($76) + 1)|0; + $78 = HEAP32[$4>>2]|0; + $79 = ($78|0)!=(0|0); + $80 = $79&1; + $81 = (($77) + ($80))|0; + (_sqlite3VdbeAddOp2($71,55,$72,$81)|0); + $82 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($82,8); + $83 = HEAP32[$ephemTab>>2]|0; + _sqlite3SelectDestInit($dest,14,$83); + $84 = HEAP32[$0>>2]|0; + $85 = HEAP32[$pSelect>>2]|0; + (_sqlite3Select($84,$85,$dest)|0); + $86 = HEAP32[$0>>2]|0; + $87 = (($86) + 72|0); + $88 = HEAP32[$87>>2]|0; + $89 = (($88) + 1)|0; + HEAP32[$87>>2] = $89; + HEAP32[$iReg>>2] = $89; + $90 = HEAP32[$2>>2]|0; + $91 = (($90) + 38|0); + $92 = HEAP16[$91>>1]|0; + $93 = $92 << 16 >> 16; + $94 = (($93) + 1)|0; + $95 = HEAP32[$0>>2]|0; + $96 = (($95) + 72|0); + $97 = HEAP32[$96>>2]|0; + $98 = (($97) + ($94))|0; + HEAP32[$96>>2] = $98; + $99 = HEAP32[$v>>2]|0; + $100 = HEAP32[$ephemTab>>2]|0; + $101 = (_sqlite3VdbeAddOp2($99,105,$100,0)|0); + HEAP32[$addr>>2] = $101; + $102 = HEAP32[$v>>2]|0; + $103 = HEAP32[$ephemTab>>2]|0; + $104 = HEAP32[$iReg>>2]|0; + (_sqlite3VdbeAddOp3($102,46,$103,0,$104)|0); + $105 = HEAP32[$v>>2]|0; + $106 = HEAP32[$ephemTab>>2]|0; + $107 = HEAP32[$4>>2]|0; + $108 = ($107|0)!=(0|0); + $109 = $108 ? 1 : 0; + $110 = HEAP32[$iReg>>2]|0; + $111 = (($110) + 1)|0; + (_sqlite3VdbeAddOp3($105,46,$106,$109,$111)|0); + HEAP32[$i>>2] = 0; + while(1) { + $112 = HEAP32[$i>>2]|0; + $113 = HEAP32[$2>>2]|0; + $114 = (($113) + 38|0); + $115 = HEAP16[$114>>1]|0; + $116 = $115 << 16 >> 16; + $117 = ($112|0)<($116|0); + if (!($117)) { + break; + } + $118 = HEAP32[$v>>2]|0; + $119 = HEAP32[$ephemTab>>2]|0; + $120 = HEAP32[$i>>2]|0; + $121 = (($120) + 1)|0; + $122 = HEAP32[$4>>2]|0; + $123 = ($122|0)!=(0|0); + $124 = $123&1; + $125 = (($121) + ($124))|0; + $126 = HEAP32[$iReg>>2]|0; + $127 = (($126) + 2)|0; + $128 = HEAP32[$i>>2]|0; + $129 = (($127) + ($128))|0; + (_sqlite3VdbeAddOp3($118,46,$119,$125,$129)|0); + $130 = HEAP32[$i>>2]|0; + $131 = (($130) + 1)|0; + HEAP32[$i>>2] = $131; + } + $132 = HEAP32[$0>>2]|0; + $133 = HEAP32[$2>>2]|0; + _sqlite3VtabMakeWritable($132,$133); + $134 = HEAP32[$v>>2]|0; + $135 = HEAP32[$2>>2]|0; + $136 = (($135) + 38|0); + $137 = HEAP16[$136>>1]|0; + $138 = $137 << 16 >> 16; + $139 = (($138) + 2)|0; + $140 = HEAP32[$iReg>>2]|0; + $141 = HEAP32[$pVTab>>2]|0; + (_sqlite3VdbeAddOp4($134,15,0,$139,$140,$141,-10)|0); + $142 = HEAP32[$v>>2]|0; + $143 = HEAP32[$7>>2]|0; + $144 = ($143|0)==(10); + $145 = HEAP32[$7>>2]|0; + $146 = $144 ? 2 : $145; + $147 = $146&255; + _sqlite3VdbeChangeP5($142,$147); + $148 = HEAP32[$0>>2]|0; + _sqlite3MayAbort($148); + $149 = HEAP32[$v>>2]|0; + $150 = HEAP32[$ephemTab>>2]|0; + $151 = HEAP32[$addr>>2]|0; + $152 = (($151) + 1)|0; + (_sqlite3VdbeAddOp2($149,9,$150,$152)|0); + $153 = HEAP32[$v>>2]|0; + $154 = HEAP32[$addr>>2]|0; + _sqlite3VdbeJumpHere($153,$154); + $155 = HEAP32[$v>>2]|0; + $156 = HEAP32[$ephemTab>>2]|0; + (_sqlite3VdbeAddOp2($155,58,$156,0)|0); + $157 = HEAP32[$db>>2]|0; + $158 = HEAP32[$pSelect>>2]|0; + _sqlite3SelectDelete($157,$158); + STACKTOP = sp;return; +} +function _sqlite3AuthContextPush($pParse,$pContext,$zContext) { + $pParse = $pParse|0; + $pContext = $pContext|0; + $zContext = $zContext|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pContext; + HEAP32[$2>>2] = $zContext; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 4|0); + HEAP32[$5>>2] = $3; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 492|0); + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$1>>2]|0; + HEAP32[$9>>2] = $8; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 492|0); + HEAP32[$12>>2] = $10; + STACKTOP = sp;return; +} +function _sqlite3MaterializeView($pParse,$pView,$pWhere,$iCur) { + $pParse = $pParse|0; + $pView = $pView|0; + $pWhere = $pWhere|0; + $iCur = $iCur|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $dest = 0, $iDb = 0, $pFrom = 0, $pSel = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 48|0; + $1 = sp + 44|0; + $2 = sp + 40|0; + $3 = sp + 36|0; + $dest = sp + 16|0; + $pSel = sp + 8|0; + $pFrom = sp + 4|0; + $db = sp; + $iDb = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pView; + HEAP32[$2>>2] = $pWhere; + HEAP32[$3>>2] = $iCur; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$db>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 68|0); + $9 = HEAP32[$8>>2]|0; + $10 = (_sqlite3SchemaToIndex($6,$9)|0); + HEAP32[$iDb>>2] = $10; + $11 = HEAP32[$db>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = (_sqlite3ExprDup($11,$12,0)|0); + HEAP32[$2>>2] = $13; + $14 = HEAP32[$db>>2]|0; + $15 = (_sqlite3SrcListAppend($14,0,0,0)|0); + HEAP32[$pFrom>>2] = $15; + $16 = HEAP32[$pFrom>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = HEAP32[$db>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3DbStrDup($18,$20)|0); + $22 = HEAP32[$pFrom>>2]|0; + $23 = (($22) + 8|0); + $24 = (($23) + 8|0); + HEAP32[$24>>2] = $21; + $25 = HEAP32[$db>>2]|0; + $26 = HEAP32[$iDb>>2]|0; + $27 = HEAP32[$db>>2]|0; + $28 = (($27) + 16|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + ($26<<4)|0); + $31 = HEAP32[$30>>2]|0; + $32 = (_sqlite3DbStrDup($25,$31)|0); + $33 = HEAP32[$pFrom>>2]|0; + $34 = (($33) + 8|0); + $35 = (($34) + 4|0); + HEAP32[$35>>2] = $32; + } + $36 = HEAP32[$0>>2]|0; + $37 = HEAP32[$pFrom>>2]|0; + $38 = HEAP32[$2>>2]|0; + $39 = (_sqlite3SelectNew($36,0,$37,$38,0,0,0,0,0,0)|0); + HEAP32[$pSel>>2] = $39; + $40 = HEAP32[$3>>2]|0; + _sqlite3SelectDestInit($dest,12,$40); + $41 = HEAP32[$0>>2]|0; + $42 = HEAP32[$pSel>>2]|0; + (_sqlite3Select($41,$42,$dest)|0); + $43 = HEAP32[$db>>2]|0; + $44 = HEAP32[$pSel>>2]|0; + _sqlite3SelectDelete($43,$44); + STACKTOP = sp;return; +} +function _sqlite3WhereOkOnePass($pWInfo,$aiCur) { + $pWInfo = $pWInfo|0; + $aiCur = $aiCur|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pWInfo; + HEAP32[$1>>2] = $aiCur; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 60|0); + ;HEAP32[$2+0>>2]=HEAP32[$4+0>>2]|0;HEAP32[$2+4>>2]=HEAP32[$4+4>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 38|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + STACKTOP = sp;return ($8|0); +} +function _sqlite3AuthContextPop($pContext) { + $pContext = $pContext|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pContext; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 492|0); + HEAP32[$10>>2] = $6; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 4|0); + HEAP32[$12>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3SrcListEnlarge($db,$pSrc,$nExtra,$iStart) { + $db = $db|0; + $pSrc = $pSrc|0; + $nExtra = $nExtra|0; + $iStart = $iStart|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; + var $i = 0, $nAlloc = 0, $nGot = 0, $pNew = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $4 = sp + 16|0; + $i = sp + 8|0; + $pNew = sp + 4|0; + $nAlloc = sp; + $nGot = sp + 12|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pSrc; + HEAP32[$3>>2] = $nExtra; + HEAP32[$4>>2] = $iStart; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$3>>2]|0; + $8 = (($6) + ($7))|0; + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 4|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($8>>>0)>($11>>>0); + do { + if ($12) { + $13 = HEAP32[$2>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$3>>2]|0; + $16 = (($14) + ($15))|0; + HEAP32[$nAlloc>>2] = $16; + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = HEAP32[$nAlloc>>2]|0; + $20 = (($19) - 1)|0; + $21 = ($20*72)|0; + $22 = (80 + ($21))|0; + $23 = (_sqlite3DbRealloc($17,$18,$22)|0); + HEAP32[$pNew>>2] = $23; + $24 = HEAP32[$pNew>>2]|0; + $25 = ($24|0)==(0|0); + if (!($25)) { + $27 = HEAP32[$pNew>>2]|0; + HEAP32[$2>>2] = $27; + $28 = HEAP32[$1>>2]|0; + $29 = HEAP32[$pNew>>2]|0; + $30 = (_sqlite3DbMallocSize($28,$29)|0); + $31 = (($30) - 80)|0; + $32 = (($31>>>0) / 72)&-1; + $33 = (($32) + 1)|0; + HEAP32[$nGot>>2] = $33; + $34 = HEAP32[$nGot>>2]|0; + $35 = HEAP32[$2>>2]|0; + $36 = (($35) + 4|0); + HEAP32[$36>>2] = $34; + break; + } + $26 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $26; + $79 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($79|0); + } + } while(0); + $37 = HEAP32[$2>>2]|0; + $38 = HEAP32[$37>>2]|0; + $39 = (($38) - 1)|0; + HEAP32[$i>>2] = $39; + while(1) { + $40 = HEAP32[$i>>2]|0; + $41 = HEAP32[$4>>2]|0; + $42 = ($40|0)>=($41|0); + if (!($42)) { + break; + } + $43 = HEAP32[$i>>2]|0; + $44 = HEAP32[$3>>2]|0; + $45 = (($43) + ($44))|0; + $46 = HEAP32[$2>>2]|0; + $47 = (($46) + 8|0); + $48 = (($47) + (($45*72)|0)|0); + $49 = HEAP32[$i>>2]|0; + $50 = HEAP32[$2>>2]|0; + $51 = (($50) + 8|0); + $52 = (($51) + (($49*72)|0)|0); + dest=$48+0|0; src=$52+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $53 = HEAP32[$i>>2]|0; + $54 = (($53) + -1)|0; + HEAP32[$i>>2] = $54; + } + $55 = HEAP32[$3>>2]|0; + $56 = HEAP32[$2>>2]|0; + $57 = HEAP32[$56>>2]|0; + $58 = (($57) + ($55))|0; + HEAP32[$56>>2] = $58; + $59 = HEAP32[$4>>2]|0; + $60 = HEAP32[$2>>2]|0; + $61 = (($60) + 8|0); + $62 = (($61) + (($59*72)|0)|0); + $63 = HEAP32[$3>>2]|0; + $64 = ($63*72)|0; + _memset(($62|0),0,($64|0))|0; + $65 = HEAP32[$4>>2]|0; + HEAP32[$i>>2] = $65; + while(1) { + $66 = HEAP32[$i>>2]|0; + $67 = HEAP32[$4>>2]|0; + $68 = HEAP32[$3>>2]|0; + $69 = (($67) + ($68))|0; + $70 = ($66|0)<($69|0); + if (!($70)) { + break; + } + $71 = HEAP32[$i>>2]|0; + $72 = HEAP32[$2>>2]|0; + $73 = (($72) + 8|0); + $74 = (($73) + (($71*72)|0)|0); + $75 = (($74) + 40|0); + HEAP32[$75>>2] = -1; + $76 = HEAP32[$i>>2]|0; + $77 = (($76) + 1)|0; + HEAP32[$i>>2] = $77; + } + $78 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $78; + $79 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($79|0); +} +function _checkForMultiColumnSelectError($pParse,$pDest,$nExpr) { + $pParse = $pParse|0; + $pDest = $pDest|0; + $nExpr = $nExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $eDest = 0, $or$cond = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 20|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $eDest = sp + 16|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $pDest; + HEAP32[$3>>2] = $nExpr; + $4 = HEAP32[$2>>2]|0; + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + HEAP32[$eDest>>2] = $6; + $7 = HEAP32[$3>>2]|0; + $8 = ($7|0)>(1); + if ($8) { + $9 = HEAP32[$eDest>>2]|0; + $10 = ($9|0)==(10); + $11 = HEAP32[$eDest>>2]|0; + $12 = ($11|0)==(11); + $or$cond = $10 | $12; + if ($or$cond) { + $13 = HEAP32[$1>>2]|0; + _sqlite3ErrorMsg($13,31824,$vararg_buffer); + HEAP32[$0>>2] = 1; + $14 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($14|0); + } + } + HEAP32[$0>>2] = 0; + $14 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($14|0); +} +function _sqlite3SelectExprHeight($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $nHeight = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $nHeight = sp; + HEAP32[$0>>2] = $p; + HEAP32[$nHeight>>2] = 0; + $1 = HEAP32[$0>>2]|0; + _heightOfSelect($1,$nHeight); + $2 = HEAP32[$nHeight>>2]|0; + STACKTOP = sp;return ($2|0); +} +function _flattenSubquery($pParse,$p,$iFrom,$isAgg,$subqueryIsAgg) { + $pParse = $pParse|0; + $p = $p|0; + $iFrom = $iFrom|0; + $isAgg = $isAgg|0; + $subqueryIsAgg = $subqueryIsAgg|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $db = 0, $i = 0, $iParent = 0, $ii = 0, $jointype = 0, $nSubSrc = 0, $pLimit = 0, $pList = 0, $pNew = 0, $pOffset = 0, $pOrderBy = 0, $pParent = 0, $pPrior = 0, $pSrc = 0, $pSub = 0, $pSub1 = 0, $pSubSrc = 0, $pSubitem = 0; + var $pTabToDel = 0, $pToplevel = 0, $pWhere = 0, $zName = 0, $zSavedAuthContext = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $0 = sp + 108|0; + $1 = sp + 104|0; + $2 = sp + 100|0; + $3 = sp + 96|0; + $4 = sp + 92|0; + $5 = sp + 88|0; + $zSavedAuthContext = sp + 84|0; + $pParent = sp + 80|0; + $pSub = sp + 76|0; + $pSub1 = sp + 72|0; + $pSrc = sp + 68|0; + $pSubSrc = sp + 64|0; + $pList = sp + 60|0; + $iParent = sp + 56|0; + $i = sp + 52|0; + $pWhere = sp + 20|0; + $pSubitem = sp; + $db = sp + 4|0; + $ii = sp + 8|0; + $pNew = sp + 12|0; + $pOrderBy = sp + 16|0; + $pLimit = sp + 24|0; + $pOffset = sp + 28|0; + $pPrior = sp + 32|0; + $pTabToDel = sp + 36|0; + $pToplevel = sp + 40|0; + $nSubSrc = sp + 44|0; + $jointype = sp + 112|0; + $zName = sp + 48|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $iFrom; + HEAP32[$4>>2] = $isAgg; + HEAP32[$5>>2] = $subqueryIsAgg; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 492|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$zSavedAuthContext>>2] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$db>>2] = $10; + $11 = HEAP32[$db>>2]|0; + $12 = (($11) + 60|0); + $13 = HEAP16[$12>>1]|0; + $14 = $13&65535; + $15 = $14 & 1; + $16 = ($15|0)!=(0); + if ($16) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + $17 = HEAP32[$2>>2]|0; + $18 = (($17) + 32|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$pSrc>>2] = $19; + $20 = HEAP32[$3>>2]|0; + $21 = HEAP32[$pSrc>>2]|0; + $22 = (($21) + 8|0); + $23 = (($22) + (($20*72)|0)|0); + HEAP32[$pSubitem>>2] = $23; + $24 = HEAP32[$pSubitem>>2]|0; + $25 = (($24) + 40|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$iParent>>2] = $26; + $27 = HEAP32[$pSubitem>>2]|0; + $28 = (($27) + 20|0); + $29 = HEAP32[$28>>2]|0; + HEAP32[$pSub>>2] = $29; + $30 = HEAP32[$4>>2]|0; + $31 = ($30|0)!=(0); + if ($31) { + $32 = HEAP32[$5>>2]|0; + $33 = ($32|0)!=(0); + if ($33) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + } + $34 = HEAP32[$5>>2]|0; + $35 = ($34|0)!=(0); + if ($35) { + $36 = HEAP32[$pSrc>>2]|0; + $37 = HEAP32[$36>>2]|0; + $38 = ($37|0)>(1); + if ($38) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + } + $39 = HEAP32[$pSub>>2]|0; + $40 = (($39) + 32|0); + $41 = HEAP32[$40>>2]|0; + HEAP32[$pSubSrc>>2] = $41; + $42 = HEAP32[$pSub>>2]|0; + $43 = (($42) + 60|0); + $44 = HEAP32[$43>>2]|0; + $45 = ($44|0)!=(0|0); + if ($45) { + $46 = HEAP32[$2>>2]|0; + $47 = (($46) + 60|0); + $48 = HEAP32[$47>>2]|0; + $49 = ($48|0)!=(0|0); + if ($49) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + } + $50 = HEAP32[$pSub>>2]|0; + $51 = (($50) + 64|0); + $52 = HEAP32[$51>>2]|0; + $53 = ($52|0)!=(0|0); + if ($53) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + $54 = HEAP32[$2>>2]|0; + $55 = (($54) + 6|0); + $56 = HEAP16[$55>>1]|0; + $57 = $56&65535; + $58 = $57 & 4096; + $59 = ($58|0)!=(0); + if ($59) { + $60 = HEAP32[$pSub>>2]|0; + $61 = (($60) + 60|0); + $62 = HEAP32[$61>>2]|0; + $63 = ($62|0)!=(0|0); + if ($63) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + } + $64 = HEAP32[$pSubSrc>>2]|0; + $65 = HEAP32[$64>>2]|0; + $66 = ($65|0)==(0); + if ($66) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + $67 = HEAP32[$pSub>>2]|0; + $68 = (($67) + 6|0); + $69 = HEAP16[$68>>1]|0; + $70 = $69&65535; + $71 = $70 & 1; + $72 = ($71|0)!=(0); + if ($72) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + $73 = HEAP32[$pSub>>2]|0; + $74 = (($73) + 60|0); + $75 = HEAP32[$74>>2]|0; + $76 = ($75|0)!=(0|0); + do { + if ($76) { + $77 = HEAP32[$pSrc>>2]|0; + $78 = HEAP32[$77>>2]|0; + $79 = ($78|0)>(1); + if (!($79)) { + $80 = HEAP32[$4>>2]|0; + $81 = ($80|0)!=(0); + if (!($81)) { + break; + } + } + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + } while(0); + $82 = HEAP32[$2>>2]|0; + $83 = (($82) + 6|0); + $84 = HEAP16[$83>>1]|0; + $85 = $84&65535; + $86 = $85 & 1; + $87 = ($86|0)!=(0); + if ($87) { + $88 = HEAP32[$5>>2]|0; + $89 = ($88|0)!=(0); + if ($89) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + } + $90 = HEAP32[$2>>2]|0; + $91 = (($90) + 48|0); + $92 = HEAP32[$91>>2]|0; + $93 = ($92|0)!=(0|0); + if ($93) { + $94 = HEAP32[$pSub>>2]|0; + $95 = (($94) + 48|0); + $96 = HEAP32[$95>>2]|0; + $97 = ($96|0)!=(0|0); + if ($97) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + } + $98 = HEAP32[$4>>2]|0; + $99 = ($98|0)!=(0); + if ($99) { + $100 = HEAP32[$pSub>>2]|0; + $101 = (($100) + 48|0); + $102 = HEAP32[$101>>2]|0; + $103 = ($102|0)!=(0|0); + if ($103) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + } + $104 = HEAP32[$pSub>>2]|0; + $105 = (($104) + 60|0); + $106 = HEAP32[$105>>2]|0; + $107 = ($106|0)!=(0|0); + if ($107) { + $108 = HEAP32[$2>>2]|0; + $109 = (($108) + 36|0); + $110 = HEAP32[$109>>2]|0; + $111 = ($110|0)!=(0|0); + if ($111) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + } + $112 = HEAP32[$pSub>>2]|0; + $113 = (($112) + 60|0); + $114 = HEAP32[$113>>2]|0; + $115 = ($114|0)!=(0|0); + if ($115) { + $116 = HEAP32[$2>>2]|0; + $117 = (($116) + 6|0); + $118 = HEAP16[$117>>1]|0; + $119 = $118&65535; + $120 = $119 & 1; + $121 = ($120|0)!=(0); + if ($121) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + } + $122 = HEAP32[$pSub>>2]|0; + $123 = (($122) + 6|0); + $124 = HEAP16[$123>>1]|0; + $125 = $124&65535; + $126 = $125 & 2048; + $127 = ($126|0)!=(0); + if ($127) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + $128 = HEAP32[$2>>2]|0; + $129 = (($128) + 6|0); + $130 = HEAP16[$129>>1]|0; + $131 = $130&65535; + $132 = $131 & 2048; + $133 = ($132|0)!=(0); + if ($133) { + $134 = HEAP32[$pSub>>2]|0; + $135 = (($134) + 52|0); + $136 = HEAP32[$135>>2]|0; + $137 = ($136|0)!=(0|0); + if ($137) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + } + $138 = HEAP32[$pSubitem>>2]|0; + $139 = (($138) + 36|0); + $140 = HEAP8[$139>>0]|0; + $141 = $140&255; + $142 = $141 & 32; + $143 = ($142|0)!=(0); + if ($143) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + $144 = HEAP32[$pSub>>2]|0; + $145 = (($144) + 52|0); + $146 = HEAP32[$145>>2]|0; + $147 = ($146|0)!=(0|0); + L82: do { + if ($147) { + $148 = HEAP32[$pSub>>2]|0; + $149 = (($148) + 48|0); + $150 = HEAP32[$149>>2]|0; + $151 = ($150|0)!=(0|0); + if ($151) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + $152 = HEAP32[$4>>2]|0; + $153 = ($152|0)!=(0); + do { + if (!($153)) { + $154 = HEAP32[$2>>2]|0; + $155 = (($154) + 6|0); + $156 = HEAP16[$155>>1]|0; + $157 = $156&65535; + $158 = $157 & 1; + $159 = ($158|0)!=(0); + if ($159) { + break; + } + $160 = HEAP32[$pSrc>>2]|0; + $161 = HEAP32[$160>>2]|0; + $162 = ($161|0)!=(1); + if ($162) { + break; + } + $163 = HEAP32[$pSub>>2]|0; + HEAP32[$pSub1>>2] = $163; + while(1) { + $164 = HEAP32[$pSub1>>2]|0; + $165 = ($164|0)!=(0|0); + if (!($165)) { + break; + } + $166 = HEAP32[$pSub1>>2]|0; + $167 = (($166) + 6|0); + $168 = HEAP16[$167>>1]|0; + $169 = $168&65535; + $170 = $169 & 5; + $171 = ($170|0)!=(0); + if ($171) { + label = 61; + break; + } + $172 = HEAP32[$pSub1>>2]|0; + $173 = (($172) + 52|0); + $174 = HEAP32[$173>>2]|0; + $175 = ($174|0)!=(0|0); + if ($175) { + $176 = HEAP32[$pSub1>>2]|0; + $177 = (($176) + 4|0); + $178 = HEAP8[$177>>0]|0; + $179 = $178&255; + $180 = ($179|0)!=(116); + if ($180) { + label = 61; + break; + } + } + $181 = HEAP32[$pSub1>>2]|0; + $182 = (($181) + 32|0); + $183 = HEAP32[$182>>2]|0; + $184 = HEAP32[$183>>2]|0; + $185 = ($184|0)<(1); + if ($185) { + label = 61; + break; + } + $186 = HEAP32[$pSub>>2]|0; + $187 = HEAP32[$186>>2]|0; + $188 = HEAP32[$187>>2]|0; + $189 = HEAP32[$pSub1>>2]|0; + $190 = HEAP32[$189>>2]|0; + $191 = HEAP32[$190>>2]|0; + $192 = ($188|0)!=($191|0); + if ($192) { + label = 61; + break; + } + $193 = HEAP32[$pSub1>>2]|0; + $194 = (($193) + 52|0); + $195 = HEAP32[$194>>2]|0; + HEAP32[$pSub1>>2] = $195; + } + if ((label|0) == 61) { + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + $196 = HEAP32[$2>>2]|0; + $197 = (($196) + 48|0); + $198 = HEAP32[$197>>2]|0; + $199 = ($198|0)!=(0|0); + if (!($199)) { + break L82; + } + HEAP32[$ii>>2] = 0; + while(1) { + $200 = HEAP32[$ii>>2]|0; + $201 = HEAP32[$2>>2]|0; + $202 = (($201) + 48|0); + $203 = HEAP32[$202>>2]|0; + $204 = HEAP32[$203>>2]|0; + $205 = ($200|0)<($204|0); + if (!($205)) { + break L82; + } + $206 = HEAP32[$ii>>2]|0; + $207 = HEAP32[$2>>2]|0; + $208 = (($207) + 48|0); + $209 = HEAP32[$208>>2]|0; + $210 = (($209) + 4|0); + $211 = HEAP32[$210>>2]|0; + $212 = (($211) + (($206*20)|0)|0); + $213 = (($212) + 16|0); + $214 = HEAP16[$213>>1]|0; + $215 = $214&65535; + $216 = ($215|0)==(0); + if ($216) { + break; + } + $217 = HEAP32[$ii>>2]|0; + $218 = (($217) + 1)|0; + HEAP32[$ii>>2] = $218; + } + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + } while(0); + $219 = HEAP32[$pSubitem>>2]|0; + $220 = (($219) + 8|0); + $221 = HEAP32[$220>>2]|0; + $222 = HEAP32[$1>>2]|0; + $223 = (($222) + 492|0); + HEAP32[$223>>2] = $221; + $224 = HEAP32[$1>>2]|0; + (_sqlite3AuthCheck($224,21,0,0,0)|0); + $225 = HEAP32[$zSavedAuthContext>>2]|0; + $226 = HEAP32[$1>>2]|0; + $227 = (($226) + 492|0); + HEAP32[$227>>2] = $225; + $228 = HEAP32[$pSub>>2]|0; + $229 = (($228) + 52|0); + $230 = HEAP32[$229>>2]|0; + HEAP32[$pSub>>2] = $230; + while(1) { + $231 = HEAP32[$pSub>>2]|0; + $232 = ($231|0)!=(0|0); + if (!($232)) { + break; + } + $233 = HEAP32[$2>>2]|0; + $234 = (($233) + 48|0); + $235 = HEAP32[$234>>2]|0; + HEAP32[$pOrderBy>>2] = $235; + $236 = HEAP32[$2>>2]|0; + $237 = (($236) + 60|0); + $238 = HEAP32[$237>>2]|0; + HEAP32[$pLimit>>2] = $238; + $239 = HEAP32[$2>>2]|0; + $240 = (($239) + 64|0); + $241 = HEAP32[$240>>2]|0; + HEAP32[$pOffset>>2] = $241; + $242 = HEAP32[$2>>2]|0; + $243 = (($242) + 52|0); + $244 = HEAP32[$243>>2]|0; + HEAP32[$pPrior>>2] = $244; + $245 = HEAP32[$2>>2]|0; + $246 = (($245) + 48|0); + HEAP32[$246>>2] = 0; + $247 = HEAP32[$2>>2]|0; + $248 = (($247) + 32|0); + HEAP32[$248>>2] = 0; + $249 = HEAP32[$2>>2]|0; + $250 = (($249) + 52|0); + HEAP32[$250>>2] = 0; + $251 = HEAP32[$2>>2]|0; + $252 = (($251) + 60|0); + HEAP32[$252>>2] = 0; + $253 = HEAP32[$2>>2]|0; + $254 = (($253) + 64|0); + HEAP32[$254>>2] = 0; + $255 = HEAP32[$db>>2]|0; + $256 = HEAP32[$2>>2]|0; + $257 = (_sqlite3SelectDup($255,$256,0)|0); + HEAP32[$pNew>>2] = $257; + $258 = HEAP32[$pOffset>>2]|0; + $259 = HEAP32[$2>>2]|0; + $260 = (($259) + 64|0); + HEAP32[$260>>2] = $258; + $261 = HEAP32[$pLimit>>2]|0; + $262 = HEAP32[$2>>2]|0; + $263 = (($262) + 60|0); + HEAP32[$263>>2] = $261; + $264 = HEAP32[$pOrderBy>>2]|0; + $265 = HEAP32[$2>>2]|0; + $266 = (($265) + 48|0); + HEAP32[$266>>2] = $264; + $267 = HEAP32[$pSrc>>2]|0; + $268 = HEAP32[$2>>2]|0; + $269 = (($268) + 32|0); + HEAP32[$269>>2] = $267; + $270 = HEAP32[$2>>2]|0; + $271 = (($270) + 4|0); + HEAP8[$271>>0] = 116; + $272 = HEAP32[$pNew>>2]|0; + $273 = ($272|0)==(0|0); + $274 = HEAP32[$pPrior>>2]|0; + if ($273) { + $275 = HEAP32[$2>>2]|0; + $276 = (($275) + 52|0); + HEAP32[$276>>2] = $274; + } else { + $277 = HEAP32[$pNew>>2]|0; + $278 = (($277) + 52|0); + HEAP32[$278>>2] = $274; + $279 = HEAP32[$pPrior>>2]|0; + $280 = ($279|0)!=(0|0); + if ($280) { + $281 = HEAP32[$pNew>>2]|0; + $282 = HEAP32[$pPrior>>2]|0; + $283 = (($282) + 56|0); + HEAP32[$283>>2] = $281; + } + $284 = HEAP32[$2>>2]|0; + $285 = HEAP32[$pNew>>2]|0; + $286 = (($285) + 56|0); + HEAP32[$286>>2] = $284; + $287 = HEAP32[$pNew>>2]|0; + $288 = HEAP32[$2>>2]|0; + $289 = (($288) + 52|0); + HEAP32[$289>>2] = $287; + } + $290 = HEAP32[$db>>2]|0; + $291 = (($290) + 64|0); + $292 = HEAP8[$291>>0]|0; + $293 = ($292<<24>>24)!=(0); + if ($293) { + label = 77; + break; + } + $294 = HEAP32[$pSub>>2]|0; + $295 = (($294) + 52|0); + $296 = HEAP32[$295>>2]|0; + HEAP32[$pSub>>2] = $296; + } + if ((label|0) == 77) { + HEAP32[$0>>2] = 1; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); + } + $297 = HEAP32[$pSubitem>>2]|0; + $298 = (($297) + 20|0); + $299 = HEAP32[$298>>2]|0; + HEAP32[$pSub1>>2] = $299; + HEAP32[$pSub>>2] = $299; + $300 = HEAP32[$db>>2]|0; + $301 = HEAP32[$pSubitem>>2]|0; + $302 = (($301) + 4|0); + $303 = HEAP32[$302>>2]|0; + _sqlite3DbFree($300,$303); + $304 = HEAP32[$db>>2]|0; + $305 = HEAP32[$pSubitem>>2]|0; + $306 = (($305) + 8|0); + $307 = HEAP32[$306>>2]|0; + _sqlite3DbFree($304,$307); + $308 = HEAP32[$db>>2]|0; + $309 = HEAP32[$pSubitem>>2]|0; + $310 = (($309) + 12|0); + $311 = HEAP32[$310>>2]|0; + _sqlite3DbFree($308,$311); + $312 = HEAP32[$pSubitem>>2]|0; + $313 = (($312) + 4|0); + HEAP32[$313>>2] = 0; + $314 = HEAP32[$pSubitem>>2]|0; + $315 = (($314) + 8|0); + HEAP32[$315>>2] = 0; + $316 = HEAP32[$pSubitem>>2]|0; + $317 = (($316) + 12|0); + HEAP32[$317>>2] = 0; + $318 = HEAP32[$pSubitem>>2]|0; + $319 = (($318) + 20|0); + HEAP32[$319>>2] = 0; + $320 = HEAP32[$pSubitem>>2]|0; + $321 = (($320) + 16|0); + $322 = HEAP32[$321>>2]|0; + $323 = ($322|0)!=(0|0); + if ($323) { + $324 = HEAP32[$pSubitem>>2]|0; + $325 = (($324) + 16|0); + $326 = HEAP32[$325>>2]|0; + HEAP32[$pTabToDel>>2] = $326; + $327 = HEAP32[$pTabToDel>>2]|0; + $328 = (($327) + 40|0); + $329 = HEAP16[$328>>1]|0; + $330 = $329&65535; + $331 = ($330|0)==(1); + if ($331) { + $332 = HEAP32[$1>>2]|0; + $333 = (($332) + 408|0); + $334 = HEAP32[$333>>2]|0; + $335 = ($334|0)!=(0|0); + $336 = HEAP32[$1>>2]|0; + if ($335) { + $337 = (($336) + 408|0); + $338 = HEAP32[$337>>2]|0; + $339 = $338; + } else { + $339 = $336; + } + HEAP32[$pToplevel>>2] = $339; + $340 = HEAP32[$pToplevel>>2]|0; + $341 = (($340) + 524|0); + $342 = HEAP32[$341>>2]|0; + $343 = HEAP32[$pTabToDel>>2]|0; + $344 = (($343) + 72|0); + HEAP32[$344>>2] = $342; + $345 = HEAP32[$pTabToDel>>2]|0; + $346 = HEAP32[$pToplevel>>2]|0; + $347 = (($346) + 524|0); + HEAP32[$347>>2] = $345; + } else { + $348 = HEAP32[$pTabToDel>>2]|0; + $349 = (($348) + 40|0); + $350 = HEAP16[$349>>1]|0; + $351 = (($350) + -1)<<16>>16; + HEAP16[$349>>1] = $351; + } + $352 = HEAP32[$pSubitem>>2]|0; + $353 = (($352) + 16|0); + HEAP32[$353>>2] = 0; + } + $354 = HEAP32[$2>>2]|0; + HEAP32[$pParent>>2] = $354; + while(1) { + $355 = HEAP32[$pParent>>2]|0; + $356 = ($355|0)!=(0|0); + if (!($356)) { + break; + } + HEAP8[$jointype>>0] = 0; + $357 = HEAP32[$pSub>>2]|0; + $358 = (($357) + 32|0); + $359 = HEAP32[$358>>2]|0; + HEAP32[$pSubSrc>>2] = $359; + $360 = HEAP32[$pSubSrc>>2]|0; + $361 = HEAP32[$360>>2]|0; + HEAP32[$nSubSrc>>2] = $361; + $362 = HEAP32[$pParent>>2]|0; + $363 = (($362) + 32|0); + $364 = HEAP32[$363>>2]|0; + HEAP32[$pSrc>>2] = $364; + $365 = HEAP32[$pSrc>>2]|0; + $366 = ($365|0)!=(0|0); + if ($366) { + $367 = HEAP32[$pSubitem>>2]|0; + $368 = (($367) + 36|0); + $369 = HEAP8[$368>>0]|0; + HEAP8[$jointype>>0] = $369; + } else { + $370 = HEAP32[$db>>2]|0; + $371 = (_sqlite3SrcListAppend($370,0,0,0)|0); + $372 = HEAP32[$pParent>>2]|0; + $373 = (($372) + 32|0); + HEAP32[$373>>2] = $371; + HEAP32[$pSrc>>2] = $371; + $374 = HEAP32[$pSrc>>2]|0; + $375 = ($374|0)==(0|0); + if ($375) { + break; + } + } + $376 = HEAP32[$nSubSrc>>2]|0; + $377 = ($376|0)>(1); + if ($377) { + $378 = HEAP32[$db>>2]|0; + $379 = HEAP32[$pSrc>>2]|0; + $380 = HEAP32[$nSubSrc>>2]|0; + $381 = (($380) - 1)|0; + $382 = HEAP32[$3>>2]|0; + $383 = (($382) + 1)|0; + $384 = (_sqlite3SrcListEnlarge($378,$379,$381,$383)|0); + HEAP32[$pSrc>>2] = $384; + $385 = HEAP32[$pParent>>2]|0; + $386 = (($385) + 32|0); + HEAP32[$386>>2] = $384; + $387 = HEAP32[$db>>2]|0; + $388 = (($387) + 64|0); + $389 = HEAP8[$388>>0]|0; + $390 = ($389<<24>>24)!=(0); + if ($390) { + break; + } + } + HEAP32[$i>>2] = 0; + while(1) { + $391 = HEAP32[$i>>2]|0; + $392 = HEAP32[$nSubSrc>>2]|0; + $393 = ($391|0)<($392|0); + if (!($393)) { + break; + } + $394 = HEAP32[$db>>2]|0; + $395 = HEAP32[$i>>2]|0; + $396 = HEAP32[$3>>2]|0; + $397 = (($395) + ($396))|0; + $398 = HEAP32[$pSrc>>2]|0; + $399 = (($398) + 8|0); + $400 = (($399) + (($397*72)|0)|0); + $401 = (($400) + 48|0); + $402 = HEAP32[$401>>2]|0; + _sqlite3IdListDelete($394,$402); + $403 = HEAP32[$i>>2]|0; + $404 = HEAP32[$3>>2]|0; + $405 = (($403) + ($404))|0; + $406 = HEAP32[$pSrc>>2]|0; + $407 = (($406) + 8|0); + $408 = (($407) + (($405*72)|0)|0); + $409 = HEAP32[$i>>2]|0; + $410 = HEAP32[$pSubSrc>>2]|0; + $411 = (($410) + 8|0); + $412 = (($411) + (($409*72)|0)|0); + dest=$408+0|0; src=$412+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $413 = HEAP32[$i>>2]|0; + $414 = HEAP32[$pSubSrc>>2]|0; + $415 = (($414) + 8|0); + $416 = (($415) + (($413*72)|0)|0); + dest=$416+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $417 = HEAP32[$i>>2]|0; + $418 = (($417) + 1)|0; + HEAP32[$i>>2] = $418; + } + $419 = HEAP8[$jointype>>0]|0; + $420 = HEAP32[$3>>2]|0; + $421 = HEAP32[$pSrc>>2]|0; + $422 = (($421) + 8|0); + $423 = (($422) + (($420*72)|0)|0); + $424 = (($423) + 36|0); + HEAP8[$424>>0] = $419; + $425 = HEAP32[$pParent>>2]|0; + $426 = HEAP32[$425>>2]|0; + HEAP32[$pList>>2] = $426; + HEAP32[$i>>2] = 0; + while(1) { + $427 = HEAP32[$i>>2]|0; + $428 = HEAP32[$pList>>2]|0; + $429 = HEAP32[$428>>2]|0; + $430 = ($427|0)<($429|0); + if (!($430)) { + break; + } + $431 = HEAP32[$i>>2]|0; + $432 = HEAP32[$pList>>2]|0; + $433 = (($432) + 4|0); + $434 = HEAP32[$433>>2]|0; + $435 = (($434) + (($431*20)|0)|0); + $436 = (($435) + 4|0); + $437 = HEAP32[$436>>2]|0; + $438 = ($437|0)==(0|0); + if ($438) { + $439 = HEAP32[$db>>2]|0; + $440 = HEAP32[$i>>2]|0; + $441 = HEAP32[$pList>>2]|0; + $442 = (($441) + 4|0); + $443 = HEAP32[$442>>2]|0; + $444 = (($443) + (($440*20)|0)|0); + $445 = (($444) + 8|0); + $446 = HEAP32[$445>>2]|0; + $447 = (_sqlite3DbStrDup($439,$446)|0); + HEAP32[$zName>>2] = $447; + $448 = HEAP32[$zName>>2]|0; + (_sqlite3Dequote($448)|0); + $449 = HEAP32[$zName>>2]|0; + $450 = HEAP32[$i>>2]|0; + $451 = HEAP32[$pList>>2]|0; + $452 = (($451) + 4|0); + $453 = HEAP32[$452>>2]|0; + $454 = (($453) + (($450*20)|0)|0); + $455 = (($454) + 4|0); + HEAP32[$455>>2] = $449; + } + $456 = HEAP32[$i>>2]|0; + $457 = (($456) + 1)|0; + HEAP32[$i>>2] = $457; + } + $458 = HEAP32[$db>>2]|0; + $459 = HEAP32[$pParent>>2]|0; + $460 = HEAP32[$459>>2]|0; + $461 = HEAP32[$iParent>>2]|0; + $462 = HEAP32[$pSub>>2]|0; + $463 = HEAP32[$462>>2]|0; + _substExprList($458,$460,$461,$463); + $464 = HEAP32[$4>>2]|0; + $465 = ($464|0)!=(0); + if ($465) { + $466 = HEAP32[$db>>2]|0; + $467 = HEAP32[$pParent>>2]|0; + $468 = (($467) + 40|0); + $469 = HEAP32[$468>>2]|0; + $470 = HEAP32[$iParent>>2]|0; + $471 = HEAP32[$pSub>>2]|0; + $472 = HEAP32[$471>>2]|0; + _substExprList($466,$469,$470,$472); + $473 = HEAP32[$db>>2]|0; + $474 = HEAP32[$pParent>>2]|0; + $475 = (($474) + 44|0); + $476 = HEAP32[$475>>2]|0; + $477 = HEAP32[$iParent>>2]|0; + $478 = HEAP32[$pSub>>2]|0; + $479 = HEAP32[$478>>2]|0; + $480 = (_substExpr($473,$476,$477,$479)|0); + $481 = HEAP32[$pParent>>2]|0; + $482 = (($481) + 44|0); + HEAP32[$482>>2] = $480; + } + $483 = HEAP32[$pSub>>2]|0; + $484 = (($483) + 48|0); + $485 = HEAP32[$484>>2]|0; + $486 = ($485|0)!=(0|0); + do { + if ($486) { + $487 = HEAP32[$pSub>>2]|0; + $488 = (($487) + 48|0); + $489 = HEAP32[$488>>2]|0; + $490 = HEAP32[$pParent>>2]|0; + $491 = (($490) + 48|0); + HEAP32[$491>>2] = $489; + $492 = HEAP32[$pSub>>2]|0; + $493 = (($492) + 48|0); + HEAP32[$493>>2] = 0; + } else { + $494 = HEAP32[$pParent>>2]|0; + $495 = (($494) + 48|0); + $496 = HEAP32[$495>>2]|0; + $497 = ($496|0)!=(0|0); + if (!($497)) { + break; + } + $498 = HEAP32[$db>>2]|0; + $499 = HEAP32[$pParent>>2]|0; + $500 = (($499) + 48|0); + $501 = HEAP32[$500>>2]|0; + $502 = HEAP32[$iParent>>2]|0; + $503 = HEAP32[$pSub>>2]|0; + $504 = HEAP32[$503>>2]|0; + _substExprList($498,$501,$502,$504); + } + } while(0); + $505 = HEAP32[$pSub>>2]|0; + $506 = (($505) + 36|0); + $507 = HEAP32[$506>>2]|0; + $508 = ($507|0)!=(0|0); + if ($508) { + $509 = HEAP32[$db>>2]|0; + $510 = HEAP32[$pSub>>2]|0; + $511 = (($510) + 36|0); + $512 = HEAP32[$511>>2]|0; + $513 = (_sqlite3ExprDup($509,$512,0)|0); + HEAP32[$pWhere>>2] = $513; + } else { + HEAP32[$pWhere>>2] = 0; + } + $514 = HEAP32[$5>>2]|0; + $515 = ($514|0)!=(0); + if ($515) { + $516 = HEAP32[$pParent>>2]|0; + $517 = (($516) + 36|0); + $518 = HEAP32[$517>>2]|0; + $519 = HEAP32[$pParent>>2]|0; + $520 = (($519) + 44|0); + HEAP32[$520>>2] = $518; + $521 = HEAP32[$pWhere>>2]|0; + $522 = HEAP32[$pParent>>2]|0; + $523 = (($522) + 36|0); + HEAP32[$523>>2] = $521; + $524 = HEAP32[$db>>2]|0; + $525 = HEAP32[$pParent>>2]|0; + $526 = (($525) + 44|0); + $527 = HEAP32[$526>>2]|0; + $528 = HEAP32[$iParent>>2]|0; + $529 = HEAP32[$pSub>>2]|0; + $530 = HEAP32[$529>>2]|0; + $531 = (_substExpr($524,$527,$528,$530)|0); + $532 = HEAP32[$pParent>>2]|0; + $533 = (($532) + 44|0); + HEAP32[$533>>2] = $531; + $534 = HEAP32[$db>>2]|0; + $535 = HEAP32[$pParent>>2]|0; + $536 = (($535) + 44|0); + $537 = HEAP32[$536>>2]|0; + $538 = HEAP32[$db>>2]|0; + $539 = HEAP32[$pSub>>2]|0; + $540 = (($539) + 44|0); + $541 = HEAP32[$540>>2]|0; + $542 = (_sqlite3ExprDup($538,$541,0)|0); + $543 = (_sqlite3ExprAnd($534,$537,$542)|0); + $544 = HEAP32[$pParent>>2]|0; + $545 = (($544) + 44|0); + HEAP32[$545>>2] = $543; + $546 = HEAP32[$db>>2]|0; + $547 = HEAP32[$pSub>>2]|0; + $548 = (($547) + 40|0); + $549 = HEAP32[$548>>2]|0; + $550 = (_sqlite3ExprListDup($546,$549,0)|0); + $551 = HEAP32[$pParent>>2]|0; + $552 = (($551) + 40|0); + HEAP32[$552>>2] = $550; + } else { + $553 = HEAP32[$db>>2]|0; + $554 = HEAP32[$pParent>>2]|0; + $555 = (($554) + 36|0); + $556 = HEAP32[$555>>2]|0; + $557 = HEAP32[$iParent>>2]|0; + $558 = HEAP32[$pSub>>2]|0; + $559 = HEAP32[$558>>2]|0; + $560 = (_substExpr($553,$556,$557,$559)|0); + $561 = HEAP32[$pParent>>2]|0; + $562 = (($561) + 36|0); + HEAP32[$562>>2] = $560; + $563 = HEAP32[$db>>2]|0; + $564 = HEAP32[$pParent>>2]|0; + $565 = (($564) + 36|0); + $566 = HEAP32[$565>>2]|0; + $567 = HEAP32[$pWhere>>2]|0; + $568 = (_sqlite3ExprAnd($563,$566,$567)|0); + $569 = HEAP32[$pParent>>2]|0; + $570 = (($569) + 36|0); + HEAP32[$570>>2] = $568; + } + $571 = HEAP32[$pSub>>2]|0; + $572 = (($571) + 6|0); + $573 = HEAP16[$572>>1]|0; + $574 = $573&65535; + $575 = $574 & 1; + $576 = HEAP32[$pParent>>2]|0; + $577 = (($576) + 6|0); + $578 = HEAP16[$577>>1]|0; + $579 = $578&65535; + $580 = $579 | $575; + $581 = $580&65535; + HEAP16[$577>>1] = $581; + $582 = HEAP32[$pSub>>2]|0; + $583 = (($582) + 60|0); + $584 = HEAP32[$583>>2]|0; + $585 = ($584|0)!=(0|0); + if ($585) { + $586 = HEAP32[$pSub>>2]|0; + $587 = (($586) + 60|0); + $588 = HEAP32[$587>>2]|0; + $589 = HEAP32[$pParent>>2]|0; + $590 = (($589) + 60|0); + HEAP32[$590>>2] = $588; + $591 = HEAP32[$pSub>>2]|0; + $592 = (($591) + 60|0); + HEAP32[$592>>2] = 0; + } + $593 = HEAP32[$pParent>>2]|0; + $594 = (($593) + 52|0); + $595 = HEAP32[$594>>2]|0; + HEAP32[$pParent>>2] = $595; + $596 = HEAP32[$pSub>>2]|0; + $597 = (($596) + 52|0); + $598 = HEAP32[$597>>2]|0; + HEAP32[$pSub>>2] = $598; + } + $599 = HEAP32[$db>>2]|0; + $600 = HEAP32[$pSub1>>2]|0; + _sqlite3SelectDelete($599,$600); + HEAP32[$0>>2] = 1; + $601 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($601|0); +} +function _sqlite3ClearTempRegCache($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 19|0); + HEAP8[$2>>0] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 56|0); + HEAP32[$4>>2] = 0; + STACKTOP = sp;return; +} +function _multiSelect($pParse,$p,$pDest) { + $pParse = $pParse|0; + $p = $p|0; + $pDest = $pDest|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; + var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; + var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; + var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; + var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; + var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0; + var $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr = 0, $addr1 = 0, $addr7 = 0, $addr9 = 0, $apColl = 0, $db = 0, $dest = 0, $i = 0, $iBreak = 0, $iBreak3 = 0; + var $iCont = 0, $iCont2 = 0, $iStart = 0, $iStart4 = 0, $iSub1 = 0, $iSub2 = 0, $intersectdest = 0, $nCol = 0, $nLimit = 0, $op = 0, $or$cond = 0, $pDelete = 0, $pFirst = 0, $pFirst8 = 0, $pKeyInfo = 0, $pLimit = 0, $pLimit5 = 0, $pLoop = 0, $pOffset = 0, $pOffset6 = 0; + var $pPrior = 0, $priorOp = 0, $r1 = 0, $rc = 0, $tab1 = 0, $tab2 = 0, $unionTab = 0, $uniondest = 0, $v = 0, $vararg_buffer7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 224|0; + $vararg_buffer7 = sp; + $0 = sp + 120|0; + $1 = sp + 124|0; + $2 = sp + 128|0; + $3 = sp + 132|0; + $rc = sp + 136|0; + $pPrior = sp + 140|0; + $v = sp + 144|0; + $dest = sp + 168|0; + $pDelete = sp + 188|0; + $db = sp + 192|0; + $iSub1 = sp + 196|0; + $iSub2 = sp + 200|0; + $addr = sp + 204|0; + $nLimit = sp + 208|0; + $unionTab = sp + 212|0; + $op = sp + 216|0; + $priorOp = sp + 116|0; + $pLimit = sp + 112|0; + $pOffset = sp + 108|0; + $addr1 = sp + 104|0; + $uniondest = sp + 148|0; + $iCont = sp + 40|0; + $iBreak = sp + 32|0; + $iStart = sp + 28|0; + $pFirst = sp + 24|0; + $tab1 = sp + 20|0; + $tab2 = sp + 36|0; + $iCont2 = sp + 8|0; + $iBreak3 = sp + 4|0; + $iStart4 = sp + 12|0; + $pLimit5 = sp + 16|0; + $pOffset6 = sp + 96|0; + $addr7 = sp + 44|0; + $intersectdest = sp + 48|0; + $r1 = sp + 68|0; + $pFirst8 = sp + 72|0; + $i = sp + 76|0; + $pKeyInfo = sp + 80|0; + $pLoop = sp + 84|0; + $apColl = sp + 88|0; + $nCol = sp + 92|0; + $addr9 = sp + 100|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $pDest; + HEAP32[$rc>>2] = 0; + HEAP32[$pDelete>>2] = 0; + HEAP32[$iSub1>>2] = 0; + HEAP32[$iSub2>>2] = 0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + 52|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pPrior>>2] = $8; + $9 = HEAP32[$3>>2]|0; + ;HEAP32[$dest+0>>2]=HEAP32[$9+0>>2]|0;HEAP32[$dest+4>>2]=HEAP32[$9+4>>2]|0;HEAP32[$dest+8>>2]=HEAP32[$9+8>>2]|0;HEAP32[$dest+12>>2]=HEAP32[$9+12>>2]|0;HEAP32[$dest+16>>2]=HEAP32[$9+16>>2]|0; + $10 = HEAP32[$pPrior>>2]|0; + $11 = (($10) + 48|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)!=(0|0); + L1: do { + if ($13) { + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = (_selectOpName($18)|0); + HEAP32[$vararg_buffer7>>2] = $19; + _sqlite3ErrorMsg($14,31480,$vararg_buffer7); + HEAP32[$rc>>2] = 1; + } else { + $20 = HEAP32[$pPrior>>2]|0; + $21 = (($20) + 60|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)!=(0|0); + $24 = HEAP32[$1>>2]|0; + if ($23) { + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 4|0); + $27 = HEAP8[$26>>0]|0; + $28 = $27&255; + $29 = (_selectOpName($28)|0); + HEAP32[$vararg_buffer7>>2] = $29; + _sqlite3ErrorMsg($24,31528,$vararg_buffer7); + HEAP32[$rc>>2] = 1; + break; + } + $30 = (_sqlite3GetVdbe($24)|0); + HEAP32[$v>>2] = $30; + $31 = HEAP8[$dest>>0]|0; + $32 = $31&255; + $33 = ($32|0)==(12); + if ($33) { + $34 = HEAP32[$v>>2]|0; + $35 = (($dest) + 4|0); + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$2>>2]|0; + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$38>>2]|0; + (_sqlite3VdbeAddOp2($34,55,$36,$39)|0); + $40 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($40,8); + HEAP8[$dest>>0] = 14; + } + $41 = HEAP32[$2>>2]|0; + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$pPrior>>2]|0; + $45 = HEAP32[$44>>2]|0; + $46 = HEAP32[$45>>2]|0; + $47 = ($43|0)!=($46|0); + $48 = HEAP32[$2>>2]|0; + $49 = (($48) + 6|0); + $50 = HEAP16[$49>>1]|0; + $51 = $50&65535; + if ($47) { + $52 = $51 & 128; + $53 = ($52|0)!=(0); + $54 = HEAP32[$1>>2]|0; + if ($53) { + _sqlite3ErrorMsg($54,31576,$vararg_buffer7); + } else { + $55 = HEAP32[$2>>2]|0; + $56 = (($55) + 4|0); + $57 = HEAP8[$56>>0]|0; + $58 = $57&255; + $59 = (_selectOpName($58)|0); + HEAP32[$vararg_buffer7>>2] = $59; + _sqlite3ErrorMsg($54,31624,$vararg_buffer7); + } + HEAP32[$rc>>2] = 1; + break; + } + $60 = $51 & 2048; + $61 = ($60|0)!=(0); + do { + if ($61) { + $62 = HEAP32[$1>>2]|0; + $63 = HEAP32[$2>>2]|0; + _generateWithRecursiveQuery($62,$63,$dest); + } else { + $64 = HEAP32[$2>>2]|0; + $65 = (($64) + 48|0); + $66 = HEAP32[$65>>2]|0; + $67 = ($66|0)!=(0|0); + if ($67) { + $68 = HEAP32[$1>>2]|0; + $69 = HEAP32[$2>>2]|0; + $70 = HEAP32[$3>>2]|0; + $71 = (_multiSelectOrderBy($68,$69,$70)|0); + HEAP32[$0>>2] = $71; + $609 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($609|0); + } + $72 = HEAP32[$2>>2]|0; + $73 = (($72) + 4|0); + $74 = HEAP8[$73>>0]|0; + $75 = $74&255; + if ((($75|0) == 115) | (($75|0) == 117)) { + HEAP8[$op>>0] = 0; + HEAP32[$priorOp>>2] = 1; + $203 = HEAP8[$dest>>0]|0; + $204 = $203&255; + $205 = HEAP32[$priorOp>>2]|0; + $206 = ($204|0)==($205|0); + if ($206) { + $207 = (($dest) + 4|0); + $208 = HEAP32[$207>>2]|0; + HEAP32[$unionTab>>2] = $208; + } else { + $209 = HEAP32[$1>>2]|0; + $210 = (($209) + 68|0); + $211 = HEAP32[$210>>2]|0; + $212 = (($211) + 1)|0; + HEAP32[$210>>2] = $212; + HEAP32[$unionTab>>2] = $211; + $213 = HEAP32[$v>>2]|0; + $214 = HEAP32[$unionTab>>2]|0; + $215 = (_sqlite3VdbeAddOp2($213,55,$214,0)|0); + HEAP32[$addr1>>2] = $215; + $216 = HEAP32[$addr1>>2]|0; + $217 = HEAP32[$2>>2]|0; + $218 = (($217) + 16|0); + HEAP32[$218>>2] = $216; + $219 = HEAP32[$2>>2]|0; + $220 = (_findRightmost($219)|0); + $221 = (($220) + 6|0); + $222 = HEAP16[$221>>1]|0; + $223 = $222&65535; + $224 = $223 | 8; + $225 = $224&65535; + HEAP16[$221>>1] = $225; + } + $226 = HEAP32[$priorOp>>2]|0; + $227 = HEAP32[$unionTab>>2]|0; + _sqlite3SelectDestInit($uniondest,$226,$227); + $228 = HEAP32[$1>>2]|0; + $229 = (($228) + 468|0); + $230 = HEAP32[$229>>2]|0; + HEAP32[$iSub1>>2] = $230; + $231 = HEAP32[$1>>2]|0; + $232 = HEAP32[$pPrior>>2]|0; + $233 = (_sqlite3Select($231,$232,$uniondest)|0); + HEAP32[$rc>>2] = $233; + $234 = HEAP32[$rc>>2]|0; + $235 = ($234|0)!=(0); + if ($235) { + break L1; + } + $236 = HEAP32[$2>>2]|0; + $237 = (($236) + 4|0); + $238 = HEAP8[$237>>0]|0; + $239 = $238&255; + $240 = ($239|0)==(117); + if ($240) { + HEAP8[$op>>0] = 2; + } else { + HEAP8[$op>>0] = 1; + } + $241 = HEAP32[$2>>2]|0; + $242 = (($241) + 52|0); + HEAP32[$242>>2] = 0; + $243 = HEAP32[$2>>2]|0; + $244 = (($243) + 60|0); + $245 = HEAP32[$244>>2]|0; + HEAP32[$pLimit>>2] = $245; + $246 = HEAP32[$2>>2]|0; + $247 = (($246) + 60|0); + HEAP32[$247>>2] = 0; + $248 = HEAP32[$2>>2]|0; + $249 = (($248) + 64|0); + $250 = HEAP32[$249>>2]|0; + HEAP32[$pOffset>>2] = $250; + $251 = HEAP32[$2>>2]|0; + $252 = (($251) + 64|0); + HEAP32[$252>>2] = 0; + $253 = HEAP8[$op>>0]|0; + HEAP8[$uniondest>>0] = $253; + $254 = HEAP32[$1>>2]|0; + $255 = (($254) + 468|0); + $256 = HEAP32[$255>>2]|0; + HEAP32[$iSub2>>2] = $256; + $257 = HEAP32[$1>>2]|0; + $258 = HEAP32[$2>>2]|0; + $259 = (_sqlite3Select($257,$258,$uniondest)|0); + HEAP32[$rc>>2] = $259; + $260 = HEAP32[$db>>2]|0; + $261 = HEAP32[$2>>2]|0; + $262 = (($261) + 48|0); + $263 = HEAP32[$262>>2]|0; + _sqlite3ExprListDelete($260,$263); + $264 = HEAP32[$2>>2]|0; + $265 = (($264) + 52|0); + $266 = HEAP32[$265>>2]|0; + HEAP32[$pDelete>>2] = $266; + $267 = HEAP32[$pPrior>>2]|0; + $268 = HEAP32[$2>>2]|0; + $269 = (($268) + 52|0); + HEAP32[$269>>2] = $267; + $270 = HEAP32[$2>>2]|0; + $271 = (($270) + 48|0); + HEAP32[$271>>2] = 0; + $272 = HEAP32[$2>>2]|0; + $273 = (($272) + 4|0); + $274 = HEAP8[$273>>0]|0; + $275 = $274&255; + $276 = ($275|0)==(115); + if ($276) { + $277 = HEAP32[$pPrior>>2]|0; + $278 = (($277) + 24|0); + $279 = $278; + $280 = $279; + $281 = HEAP32[$280>>2]|0; + $282 = (($279) + 4)|0; + $283 = $282; + $284 = HEAP32[$283>>2]|0; + $285 = HEAP32[$2>>2]|0; + $286 = (($285) + 24|0); + $287 = $286; + $288 = $287; + $289 = HEAP32[$288>>2]|0; + $290 = (($287) + 4)|0; + $291 = $290; + $292 = HEAP32[$291>>2]|0; + $293 = (_i64Add(($289|0),($292|0),($281|0),($284|0))|0); + $294 = tempRet0; + $295 = $286; + $296 = $295; + HEAP32[$296>>2] = $293; + $297 = (($295) + 4)|0; + $298 = $297; + HEAP32[$298>>2] = $294; + } + $299 = HEAP32[$db>>2]|0; + $300 = HEAP32[$2>>2]|0; + $301 = (($300) + 60|0); + $302 = HEAP32[$301>>2]|0; + _sqlite3ExprDelete($299,$302); + $303 = HEAP32[$pLimit>>2]|0; + $304 = HEAP32[$2>>2]|0; + $305 = (($304) + 60|0); + HEAP32[$305>>2] = $303; + $306 = HEAP32[$pOffset>>2]|0; + $307 = HEAP32[$2>>2]|0; + $308 = (($307) + 64|0); + HEAP32[$308>>2] = $306; + $309 = HEAP32[$2>>2]|0; + $310 = (($309) + 8|0); + HEAP32[$310>>2] = 0; + $311 = HEAP32[$2>>2]|0; + $312 = (($311) + 12|0); + HEAP32[$312>>2] = 0; + $313 = HEAP8[$dest>>0]|0; + $314 = $313&255; + $315 = HEAP32[$priorOp>>2]|0; + $316 = ($314|0)!=($315|0); + if (!($316)) { + break; + } + $317 = HEAP8[$dest>>0]|0; + $318 = $317&255; + $319 = ($318|0)==(9); + if ($319) { + $320 = HEAP32[$2>>2]|0; + HEAP32[$pFirst>>2] = $320; + while(1) { + $321 = HEAP32[$pFirst>>2]|0; + $322 = (($321) + 52|0); + $323 = HEAP32[$322>>2]|0; + $324 = ($323|0)!=(0|0); + if (!($324)) { + break; + } + $325 = HEAP32[$pFirst>>2]|0; + $326 = (($325) + 52|0); + $327 = HEAP32[$326>>2]|0; + HEAP32[$pFirst>>2] = $327; + } + $328 = HEAP32[$1>>2]|0; + $329 = HEAP32[$pFirst>>2]|0; + $330 = HEAP32[$329>>2]|0; + _generateColumnNames($328,0,$330); + } + $331 = HEAP32[$v>>2]|0; + $332 = (_sqlite3VdbeMakeLabel($331)|0); + HEAP32[$iBreak>>2] = $332; + $333 = HEAP32[$v>>2]|0; + $334 = (_sqlite3VdbeMakeLabel($333)|0); + HEAP32[$iCont>>2] = $334; + $335 = HEAP32[$1>>2]|0; + $336 = HEAP32[$2>>2]|0; + $337 = HEAP32[$iBreak>>2]|0; + _computeLimitRegisters($335,$336,$337); + $338 = HEAP32[$v>>2]|0; + $339 = HEAP32[$unionTab>>2]|0; + $340 = HEAP32[$iBreak>>2]|0; + (_sqlite3VdbeAddOp2($338,105,$339,$340)|0); + $341 = HEAP32[$v>>2]|0; + $342 = (_sqlite3VdbeCurrentAddr($341)|0); + HEAP32[$iStart>>2] = $342; + $343 = HEAP32[$1>>2]|0; + $344 = HEAP32[$2>>2]|0; + $345 = HEAP32[$2>>2]|0; + $346 = HEAP32[$345>>2]|0; + $347 = HEAP32[$unionTab>>2]|0; + $348 = HEAP32[$iCont>>2]|0; + $349 = HEAP32[$iBreak>>2]|0; + _selectInnerLoop($343,$344,$346,$347,0,0,$dest,$348,$349); + $350 = HEAP32[$v>>2]|0; + $351 = HEAP32[$iCont>>2]|0; + _sqlite3VdbeResolveLabel($350,$351); + $352 = HEAP32[$v>>2]|0; + $353 = HEAP32[$unionTab>>2]|0; + $354 = HEAP32[$iStart>>2]|0; + (_sqlite3VdbeAddOp2($352,9,$353,$354)|0); + $355 = HEAP32[$v>>2]|0; + $356 = HEAP32[$iBreak>>2]|0; + _sqlite3VdbeResolveLabel($355,$356); + $357 = HEAP32[$v>>2]|0; + $358 = HEAP32[$unionTab>>2]|0; + (_sqlite3VdbeAddOp2($357,58,$358,0)|0); + break; + } else if ((($75|0) == 116)) { + HEAP32[$addr>>2] = 0; + $76 = HEAP32[$2>>2]|0; + $77 = (($76) + 8|0); + $78 = HEAP32[$77>>2]|0; + $79 = HEAP32[$pPrior>>2]|0; + $80 = (($79) + 8|0); + HEAP32[$80>>2] = $78; + $81 = HEAP32[$2>>2]|0; + $82 = (($81) + 12|0); + $83 = HEAP32[$82>>2]|0; + $84 = HEAP32[$pPrior>>2]|0; + $85 = (($84) + 12|0); + HEAP32[$85>>2] = $83; + $86 = HEAP32[$2>>2]|0; + $87 = (($86) + 60|0); + $88 = HEAP32[$87>>2]|0; + $89 = HEAP32[$pPrior>>2]|0; + $90 = (($89) + 60|0); + HEAP32[$90>>2] = $88; + $91 = HEAP32[$2>>2]|0; + $92 = (($91) + 64|0); + $93 = HEAP32[$92>>2]|0; + $94 = HEAP32[$pPrior>>2]|0; + $95 = (($94) + 64|0); + HEAP32[$95>>2] = $93; + $96 = HEAP32[$1>>2]|0; + $97 = (($96) + 468|0); + $98 = HEAP32[$97>>2]|0; + HEAP32[$iSub1>>2] = $98; + $99 = HEAP32[$1>>2]|0; + $100 = HEAP32[$pPrior>>2]|0; + $101 = (_sqlite3Select($99,$100,$dest)|0); + HEAP32[$rc>>2] = $101; + $102 = HEAP32[$2>>2]|0; + $103 = (($102) + 60|0); + HEAP32[$103>>2] = 0; + $104 = HEAP32[$2>>2]|0; + $105 = (($104) + 64|0); + HEAP32[$105>>2] = 0; + $106 = HEAP32[$rc>>2]|0; + $107 = ($106|0)!=(0); + if ($107) { + break L1; + } + $108 = HEAP32[$2>>2]|0; + $109 = (($108) + 52|0); + HEAP32[$109>>2] = 0; + $110 = HEAP32[$pPrior>>2]|0; + $111 = (($110) + 8|0); + $112 = HEAP32[$111>>2]|0; + $113 = HEAP32[$2>>2]|0; + $114 = (($113) + 8|0); + HEAP32[$114>>2] = $112; + $115 = HEAP32[$pPrior>>2]|0; + $116 = (($115) + 12|0); + $117 = HEAP32[$116>>2]|0; + $118 = HEAP32[$2>>2]|0; + $119 = (($118) + 12|0); + HEAP32[$119>>2] = $117; + $120 = HEAP32[$2>>2]|0; + $121 = (($120) + 8|0); + $122 = HEAP32[$121>>2]|0; + $123 = ($122|0)!=(0); + if ($123) { + $124 = HEAP32[$v>>2]|0; + $125 = HEAP32[$2>>2]|0; + $126 = (($125) + 8|0); + $127 = HEAP32[$126>>2]|0; + $128 = (_sqlite3VdbeAddOp1($124,136,$127)|0); + HEAP32[$addr>>2] = $128; + } + $129 = HEAP32[$1>>2]|0; + $130 = (($129) + 468|0); + $131 = HEAP32[$130>>2]|0; + HEAP32[$iSub2>>2] = $131; + $132 = HEAP32[$1>>2]|0; + $133 = HEAP32[$2>>2]|0; + $134 = (_sqlite3Select($132,$133,$dest)|0); + HEAP32[$rc>>2] = $134; + $135 = HEAP32[$2>>2]|0; + $136 = (($135) + 52|0); + $137 = HEAP32[$136>>2]|0; + HEAP32[$pDelete>>2] = $137; + $138 = HEAP32[$pPrior>>2]|0; + $139 = HEAP32[$2>>2]|0; + $140 = (($139) + 52|0); + HEAP32[$140>>2] = $138; + $141 = HEAP32[$pPrior>>2]|0; + $142 = (($141) + 24|0); + $143 = $142; + $144 = $143; + $145 = HEAP32[$144>>2]|0; + $146 = (($143) + 4)|0; + $147 = $146; + $148 = HEAP32[$147>>2]|0; + $149 = HEAP32[$2>>2]|0; + $150 = (($149) + 24|0); + $151 = $150; + $152 = $151; + $153 = HEAP32[$152>>2]|0; + $154 = (($151) + 4)|0; + $155 = $154; + $156 = HEAP32[$155>>2]|0; + $157 = (_i64Add(($153|0),($156|0),($145|0),($148|0))|0); + $158 = tempRet0; + $159 = $150; + $160 = $159; + HEAP32[$160>>2] = $157; + $161 = (($159) + 4)|0; + $162 = $161; + HEAP32[$162>>2] = $158; + $163 = HEAP32[$pPrior>>2]|0; + $164 = (($163) + 60|0); + $165 = HEAP32[$164>>2]|0; + $166 = ($165|0)!=(0|0); + if ($166) { + $167 = HEAP32[$pPrior>>2]|0; + $168 = (($167) + 60|0); + $169 = HEAP32[$168>>2]|0; + $170 = (_sqlite3ExprIsInteger($169,$nLimit)|0); + $171 = ($170|0)!=(0); + $172 = HEAP32[$nLimit>>2]|0; + $173 = ($172|0)>(0); + $or$cond = $171 & $173; + if ($or$cond) { + $174 = HEAP32[$2>>2]|0; + $175 = (($174) + 24|0); + $176 = $175; + $177 = $176; + $178 = HEAP32[$177>>2]|0; + $179 = (($176) + 4)|0; + $180 = $179; + $181 = HEAP32[$180>>2]|0; + $182 = HEAP32[$nLimit>>2]|0; + $183 = ($182|0)<(0); + $184 = $183 << 31 >> 31; + $185 = ($181>>>0)>($184>>>0); + $186 = ($181|0)==($184|0); + $187 = ($178>>>0)>($182>>>0); + $188 = $186 & $187; + $189 = $185 | $188; + if ($189) { + $190 = HEAP32[$nLimit>>2]|0; + $191 = ($190|0)<(0); + $192 = $191 << 31 >> 31; + $193 = HEAP32[$2>>2]|0; + $194 = (($193) + 24|0); + $195 = $194; + $196 = $195; + HEAP32[$196>>2] = $190; + $197 = (($195) + 4)|0; + $198 = $197; + HEAP32[$198>>2] = $192; + } + } + } + $199 = HEAP32[$addr>>2]|0; + $200 = ($199|0)!=(0); + if (!($200)) { + break; + } + $201 = HEAP32[$v>>2]|0; + $202 = HEAP32[$addr>>2]|0; + _sqlite3VdbeJumpHere($201,$202); + break; + } else { + $359 = HEAP32[$1>>2]|0; + $360 = (($359) + 68|0); + $361 = HEAP32[$360>>2]|0; + $362 = (($361) + 1)|0; + HEAP32[$360>>2] = $362; + HEAP32[$tab1>>2] = $361; + $363 = HEAP32[$1>>2]|0; + $364 = (($363) + 68|0); + $365 = HEAP32[$364>>2]|0; + $366 = (($365) + 1)|0; + HEAP32[$364>>2] = $366; + HEAP32[$tab2>>2] = $365; + $367 = HEAP32[$v>>2]|0; + $368 = HEAP32[$tab1>>2]|0; + $369 = (_sqlite3VdbeAddOp2($367,55,$368,0)|0); + HEAP32[$addr7>>2] = $369; + $370 = HEAP32[$addr7>>2]|0; + $371 = HEAP32[$2>>2]|0; + $372 = (($371) + 16|0); + HEAP32[$372>>2] = $370; + $373 = HEAP32[$2>>2]|0; + $374 = (_findRightmost($373)|0); + $375 = (($374) + 6|0); + $376 = HEAP16[$375>>1]|0; + $377 = $376&65535; + $378 = $377 | 8; + $379 = $378&65535; + HEAP16[$375>>1] = $379; + $380 = HEAP32[$tab1>>2]|0; + _sqlite3SelectDestInit($intersectdest,1,$380); + $381 = HEAP32[$1>>2]|0; + $382 = (($381) + 468|0); + $383 = HEAP32[$382>>2]|0; + HEAP32[$iSub1>>2] = $383; + $384 = HEAP32[$1>>2]|0; + $385 = HEAP32[$pPrior>>2]|0; + $386 = (_sqlite3Select($384,$385,$intersectdest)|0); + HEAP32[$rc>>2] = $386; + $387 = HEAP32[$rc>>2]|0; + $388 = ($387|0)!=(0); + if ($388) { + break L1; + } + $389 = HEAP32[$v>>2]|0; + $390 = HEAP32[$tab2>>2]|0; + $391 = (_sqlite3VdbeAddOp2($389,55,$390,0)|0); + HEAP32[$addr7>>2] = $391; + $392 = HEAP32[$addr7>>2]|0; + $393 = HEAP32[$2>>2]|0; + $394 = (($393) + 16|0); + $395 = (($394) + 4|0); + HEAP32[$395>>2] = $392; + $396 = HEAP32[$2>>2]|0; + $397 = (($396) + 52|0); + HEAP32[$397>>2] = 0; + $398 = HEAP32[$2>>2]|0; + $399 = (($398) + 60|0); + $400 = HEAP32[$399>>2]|0; + HEAP32[$pLimit5>>2] = $400; + $401 = HEAP32[$2>>2]|0; + $402 = (($401) + 60|0); + HEAP32[$402>>2] = 0; + $403 = HEAP32[$2>>2]|0; + $404 = (($403) + 64|0); + $405 = HEAP32[$404>>2]|0; + HEAP32[$pOffset6>>2] = $405; + $406 = HEAP32[$2>>2]|0; + $407 = (($406) + 64|0); + HEAP32[$407>>2] = 0; + $408 = HEAP32[$tab2>>2]|0; + $409 = (($intersectdest) + 4|0); + HEAP32[$409>>2] = $408; + $410 = HEAP32[$1>>2]|0; + $411 = (($410) + 468|0); + $412 = HEAP32[$411>>2]|0; + HEAP32[$iSub2>>2] = $412; + $413 = HEAP32[$1>>2]|0; + $414 = HEAP32[$2>>2]|0; + $415 = (_sqlite3Select($413,$414,$intersectdest)|0); + HEAP32[$rc>>2] = $415; + $416 = HEAP32[$2>>2]|0; + $417 = (($416) + 52|0); + $418 = HEAP32[$417>>2]|0; + HEAP32[$pDelete>>2] = $418; + $419 = HEAP32[$pPrior>>2]|0; + $420 = HEAP32[$2>>2]|0; + $421 = (($420) + 52|0); + HEAP32[$421>>2] = $419; + $422 = HEAP32[$2>>2]|0; + $423 = (($422) + 24|0); + $424 = $423; + $425 = $424; + $426 = HEAP32[$425>>2]|0; + $427 = (($424) + 4)|0; + $428 = $427; + $429 = HEAP32[$428>>2]|0; + $430 = HEAP32[$pPrior>>2]|0; + $431 = (($430) + 24|0); + $432 = $431; + $433 = $432; + $434 = HEAP32[$433>>2]|0; + $435 = (($432) + 4)|0; + $436 = $435; + $437 = HEAP32[$436>>2]|0; + $438 = ($429>>>0)>($437>>>0); + $439 = ($429|0)==($437|0); + $440 = ($426>>>0)>($434>>>0); + $441 = $439 & $440; + $442 = $438 | $441; + if ($442) { + $443 = HEAP32[$pPrior>>2]|0; + $444 = (($443) + 24|0); + $445 = $444; + $446 = $445; + $447 = HEAP32[$446>>2]|0; + $448 = (($445) + 4)|0; + $449 = $448; + $450 = HEAP32[$449>>2]|0; + $451 = HEAP32[$2>>2]|0; + $452 = (($451) + 24|0); + $453 = $452; + $454 = $453; + HEAP32[$454>>2] = $447; + $455 = (($453) + 4)|0; + $456 = $455; + HEAP32[$456>>2] = $450; + } + $457 = HEAP32[$db>>2]|0; + $458 = HEAP32[$2>>2]|0; + $459 = (($458) + 60|0); + $460 = HEAP32[$459>>2]|0; + _sqlite3ExprDelete($457,$460); + $461 = HEAP32[$pLimit5>>2]|0; + $462 = HEAP32[$2>>2]|0; + $463 = (($462) + 60|0); + HEAP32[$463>>2] = $461; + $464 = HEAP32[$pOffset6>>2]|0; + $465 = HEAP32[$2>>2]|0; + $466 = (($465) + 64|0); + HEAP32[$466>>2] = $464; + $467 = HEAP8[$dest>>0]|0; + $468 = $467&255; + $469 = ($468|0)==(9); + if ($469) { + $470 = HEAP32[$2>>2]|0; + HEAP32[$pFirst8>>2] = $470; + while(1) { + $471 = HEAP32[$pFirst8>>2]|0; + $472 = (($471) + 52|0); + $473 = HEAP32[$472>>2]|0; + $474 = ($473|0)!=(0|0); + if (!($474)) { + break; + } + $475 = HEAP32[$pFirst8>>2]|0; + $476 = (($475) + 52|0); + $477 = HEAP32[$476>>2]|0; + HEAP32[$pFirst8>>2] = $477; + } + $478 = HEAP32[$1>>2]|0; + $479 = HEAP32[$pFirst8>>2]|0; + $480 = HEAP32[$479>>2]|0; + _generateColumnNames($478,0,$480); + } + $481 = HEAP32[$v>>2]|0; + $482 = (_sqlite3VdbeMakeLabel($481)|0); + HEAP32[$iBreak3>>2] = $482; + $483 = HEAP32[$v>>2]|0; + $484 = (_sqlite3VdbeMakeLabel($483)|0); + HEAP32[$iCont2>>2] = $484; + $485 = HEAP32[$1>>2]|0; + $486 = HEAP32[$2>>2]|0; + $487 = HEAP32[$iBreak3>>2]|0; + _computeLimitRegisters($485,$486,$487); + $488 = HEAP32[$v>>2]|0; + $489 = HEAP32[$tab1>>2]|0; + $490 = HEAP32[$iBreak3>>2]|0; + (_sqlite3VdbeAddOp2($488,105,$489,$490)|0); + $491 = HEAP32[$1>>2]|0; + $492 = (_sqlite3GetTempReg($491)|0); + HEAP32[$r1>>2] = $492; + $493 = HEAP32[$v>>2]|0; + $494 = HEAP32[$tab1>>2]|0; + $495 = HEAP32[$r1>>2]|0; + $496 = (_sqlite3VdbeAddOp2($493,98,$494,$495)|0); + HEAP32[$iStart4>>2] = $496; + $497 = HEAP32[$v>>2]|0; + $498 = HEAP32[$tab2>>2]|0; + $499 = HEAP32[$iCont2>>2]|0; + $500 = HEAP32[$r1>>2]|0; + (_sqlite3VdbeAddOp4Int($497,65,$498,$499,$500,0)|0); + $501 = HEAP32[$1>>2]|0; + $502 = HEAP32[$r1>>2]|0; + _sqlite3ReleaseTempReg($501,$502); + $503 = HEAP32[$1>>2]|0; + $504 = HEAP32[$2>>2]|0; + $505 = HEAP32[$2>>2]|0; + $506 = HEAP32[$505>>2]|0; + $507 = HEAP32[$tab1>>2]|0; + $508 = HEAP32[$iCont2>>2]|0; + $509 = HEAP32[$iBreak3>>2]|0; + _selectInnerLoop($503,$504,$506,$507,0,0,$dest,$508,$509); + $510 = HEAP32[$v>>2]|0; + $511 = HEAP32[$iCont2>>2]|0; + _sqlite3VdbeResolveLabel($510,$511); + $512 = HEAP32[$v>>2]|0; + $513 = HEAP32[$tab1>>2]|0; + $514 = HEAP32[$iStart4>>2]|0; + (_sqlite3VdbeAddOp2($512,9,$513,$514)|0); + $515 = HEAP32[$v>>2]|0; + $516 = HEAP32[$iBreak3>>2]|0; + _sqlite3VdbeResolveLabel($515,$516); + $517 = HEAP32[$v>>2]|0; + $518 = HEAP32[$tab2>>2]|0; + (_sqlite3VdbeAddOp2($517,58,$518,0)|0); + $519 = HEAP32[$v>>2]|0; + $520 = HEAP32[$tab1>>2]|0; + (_sqlite3VdbeAddOp2($519,58,$520,0)|0); + break; + } + } + } while(0); + $521 = HEAP32[$1>>2]|0; + $522 = HEAP32[$2>>2]|0; + $523 = (($522) + 4|0); + $524 = HEAP8[$523>>0]|0; + $525 = $524&255; + $526 = HEAP32[$iSub1>>2]|0; + $527 = HEAP32[$iSub2>>2]|0; + $528 = HEAP32[$2>>2]|0; + $529 = (($528) + 4|0); + $530 = HEAP8[$529>>0]|0; + $531 = $530&255; + $532 = ($531|0)!=(116); + $533 = $532&1; + _explainComposite($521,$525,$526,$527,$533); + $534 = HEAP32[$2>>2]|0; + $535 = (($534) + 6|0); + $536 = HEAP16[$535>>1]|0; + $537 = $536&65535; + $538 = $537 & 8; + $539 = ($538|0)!=(0); + if ($539) { + $540 = HEAP32[$2>>2]|0; + $541 = HEAP32[$540>>2]|0; + $542 = HEAP32[$541>>2]|0; + HEAP32[$nCol>>2] = $542; + $543 = HEAP32[$db>>2]|0; + $544 = HEAP32[$nCol>>2]|0; + $545 = (_sqlite3KeyInfoAlloc($543,$544,1)|0); + HEAP32[$pKeyInfo>>2] = $545; + $546 = HEAP32[$pKeyInfo>>2]|0; + $547 = ($546|0)!=(0|0); + if (!($547)) { + HEAP32[$rc>>2] = 7; + break; + } + HEAP32[$i>>2] = 0; + $548 = HEAP32[$pKeyInfo>>2]|0; + $549 = (($548) + 20|0); + HEAP32[$apColl>>2] = $549; + while(1) { + $550 = HEAP32[$i>>2]|0; + $551 = HEAP32[$nCol>>2]|0; + $552 = ($550|0)<($551|0); + if (!($552)) { + break; + } + $553 = HEAP32[$1>>2]|0; + $554 = HEAP32[$2>>2]|0; + $555 = HEAP32[$i>>2]|0; + $556 = (_multiSelectCollSeq($553,$554,$555)|0); + $557 = HEAP32[$apColl>>2]|0; + HEAP32[$557>>2] = $556; + $558 = HEAP32[$apColl>>2]|0; + $559 = HEAP32[$558>>2]|0; + $560 = (0|0)==($559|0); + if ($560) { + $561 = HEAP32[$db>>2]|0; + $562 = (($561) + 8|0); + $563 = HEAP32[$562>>2]|0; + $564 = HEAP32[$apColl>>2]|0; + HEAP32[$564>>2] = $563; + } + $565 = HEAP32[$i>>2]|0; + $566 = (($565) + 1)|0; + HEAP32[$i>>2] = $566; + $567 = HEAP32[$apColl>>2]|0; + $568 = (($567) + 4|0); + HEAP32[$apColl>>2] = $568; + } + $569 = HEAP32[$2>>2]|0; + HEAP32[$pLoop>>2] = $569; + while(1) { + $570 = HEAP32[$pLoop>>2]|0; + $571 = ($570|0)!=(0|0); + if (!($571)) { + break; + } + HEAP32[$i>>2] = 0; + while(1) { + $572 = HEAP32[$i>>2]|0; + $573 = ($572|0)<(2); + if (!($573)) { + break; + } + $574 = HEAP32[$i>>2]|0; + $575 = HEAP32[$pLoop>>2]|0; + $576 = (($575) + 16|0); + $577 = (($576) + ($574<<2)|0); + $578 = HEAP32[$577>>2]|0; + HEAP32[$addr9>>2] = $578; + $579 = HEAP32[$addr9>>2]|0; + $580 = ($579|0)<(0); + if ($580) { + break; + } + $581 = HEAP32[$v>>2]|0; + $582 = HEAP32[$addr9>>2]|0; + $583 = HEAP32[$nCol>>2]|0; + _sqlite3VdbeChangeP2($581,$582,$583); + $584 = HEAP32[$v>>2]|0; + $585 = HEAP32[$addr9>>2]|0; + $586 = HEAP32[$pKeyInfo>>2]|0; + $587 = (_sqlite3KeyInfoRef($586)|0); + _sqlite3VdbeChangeP4($584,$585,$587,-6); + $588 = HEAP32[$i>>2]|0; + $589 = HEAP32[$pLoop>>2]|0; + $590 = (($589) + 16|0); + $591 = (($590) + ($588<<2)|0); + HEAP32[$591>>2] = -1; + $592 = HEAP32[$i>>2]|0; + $593 = (($592) + 1)|0; + HEAP32[$i>>2] = $593; + } + $594 = HEAP32[$pLoop>>2]|0; + $595 = (($594) + 52|0); + $596 = HEAP32[$595>>2]|0; + HEAP32[$pLoop>>2] = $596; + } + $597 = HEAP32[$pKeyInfo>>2]|0; + _sqlite3KeyInfoUnref($597); + } + } + } while(0); + $598 = (($dest) + 8|0); + $599 = HEAP32[$598>>2]|0; + $600 = HEAP32[$3>>2]|0; + $601 = (($600) + 8|0); + HEAP32[$601>>2] = $599; + $602 = (($dest) + 12|0); + $603 = HEAP32[$602>>2]|0; + $604 = HEAP32[$3>>2]|0; + $605 = (($604) + 12|0); + HEAP32[$605>>2] = $603; + $606 = HEAP32[$db>>2]|0; + $607 = HEAP32[$pDelete>>2]|0; + _sqlite3SelectDelete($606,$607); + $608 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $608; + $609 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($609|0); +} +function _keyInfoFromExprList($pParse,$pList,$iStart,$nExtra) { + $pParse = $pParse|0; + $pList = $pList|0; + $iStart = $iStart|0; + $nExtra = $nExtra|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $i = 0, $nExpr = 0; + var $pColl = 0, $pInfo = 0, $pItem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $nExpr = sp + 20|0; + $pInfo = sp + 16|0; + $pItem = sp + 8|0; + $db = sp + 4|0; + $i = sp; + $pColl = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pList; + HEAP32[$2>>2] = $iStart; + HEAP32[$3>>2] = $nExtra; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$nExpr>>2] = $7; + $8 = HEAP32[$db>>2]|0; + $9 = HEAP32[$nExpr>>2]|0; + $10 = HEAP32[$3>>2]|0; + $11 = (($9) + ($10))|0; + $12 = HEAP32[$2>>2]|0; + $13 = (($11) - ($12))|0; + $14 = (_sqlite3KeyInfoAlloc($8,$13,1)|0); + HEAP32[$pInfo>>2] = $14; + $15 = HEAP32[$pInfo>>2]|0; + $16 = ($15|0)!=(0|0); + if (!($16)) { + $56 = HEAP32[$pInfo>>2]|0; + STACKTOP = sp;return ($56|0); + } + $17 = HEAP32[$2>>2]|0; + HEAP32[$i>>2] = $17; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = (($20) + (($21*20)|0)|0); + HEAP32[$pItem>>2] = $22; + while(1) { + $23 = HEAP32[$i>>2]|0; + $24 = HEAP32[$nExpr>>2]|0; + $25 = ($23|0)<($24|0); + if (!($25)) { + break; + } + $26 = HEAP32[$0>>2]|0; + $27 = HEAP32[$pItem>>2]|0; + $28 = HEAP32[$27>>2]|0; + $29 = (_sqlite3ExprCollSeq($26,$28)|0); + HEAP32[$pColl>>2] = $29; + $30 = HEAP32[$pColl>>2]|0; + $31 = ($30|0)!=(0|0); + if (!($31)) { + $32 = HEAP32[$db>>2]|0; + $33 = (($32) + 8|0); + $34 = HEAP32[$33>>2]|0; + HEAP32[$pColl>>2] = $34; + } + $35 = HEAP32[$pColl>>2]|0; + $36 = HEAP32[$i>>2]|0; + $37 = HEAP32[$2>>2]|0; + $38 = (($36) - ($37))|0; + $39 = HEAP32[$pInfo>>2]|0; + $40 = (($39) + 20|0); + $41 = (($40) + ($38<<2)|0); + HEAP32[$41>>2] = $35; + $42 = HEAP32[$pItem>>2]|0; + $43 = (($42) + 12|0); + $44 = HEAP8[$43>>0]|0; + $45 = HEAP32[$i>>2]|0; + $46 = HEAP32[$2>>2]|0; + $47 = (($45) - ($46))|0; + $48 = HEAP32[$pInfo>>2]|0; + $49 = (($48) + 16|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + ($47)|0); + HEAP8[$51>>0] = $44; + $52 = HEAP32[$i>>2]|0; + $53 = (($52) + 1)|0; + HEAP32[$i>>2] = $53; + $54 = HEAP32[$pItem>>2]|0; + $55 = (($54) + 20|0); + HEAP32[$pItem>>2] = $55; + } + $56 = HEAP32[$pInfo>>2]|0; + STACKTOP = sp;return ($56|0); +} +function _computeLimitRegisters($pParse,$p,$iBreak) { + $pParse = $pParse|0; + $p = $p|0; + $iBreak = $iBreak|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr1 = 0, $iLimit = 0, $iOffset = 0, $n = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $v = sp + 8|0; + $iLimit = sp + 12|0; + $iOffset = sp + 16|0; + $addr1 = sp + 20|0; + $n = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $iBreak; + HEAP32[$v>>2] = 0; + HEAP32[$iLimit>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0); + if ($6) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + _sqlite3ExprCacheClear($7); + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 60|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if (!($11)) { + STACKTOP = sp;return; + } + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 72|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + 1)|0; + HEAP32[$13>>2] = $15; + HEAP32[$iLimit>>2] = $15; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 8|0); + HEAP32[$17>>2] = $15; + $18 = HEAP32[$0>>2]|0; + $19 = (_sqlite3GetVdbe($18)|0); + HEAP32[$v>>2] = $19; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 60|0); + $22 = HEAP32[$21>>2]|0; + $23 = (_sqlite3ExprIsInteger($22,$n)|0); + $24 = ($23|0)!=(0); + do { + if ($24) { + $25 = HEAP32[$v>>2]|0; + $26 = HEAP32[$n>>2]|0; + $27 = HEAP32[$iLimit>>2]|0; + (_sqlite3VdbeAddOp2($25,25,$26,$27)|0); + $28 = HEAP32[$n>>2]|0; + $29 = ($28|0)==(0); + if ($29) { + $30 = HEAP32[$v>>2]|0; + $31 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp2($30,16,0,$31)|0); + break; + } + $32 = HEAP32[$n>>2]|0; + $33 = ($32|0)>=(0); + if ($33) { + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 24|0); + $36 = $35; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + $39 = (($36) + 4)|0; + $40 = $39; + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$n>>2]|0; + $43 = ($42|0)<(0); + $44 = $43 << 31 >> 31; + $45 = ($41>>>0)>($44>>>0); + $46 = ($41|0)==($44|0); + $47 = ($38>>>0)>($42>>>0); + $48 = $46 & $47; + $49 = $45 | $48; + if ($49) { + $50 = HEAP32[$n>>2]|0; + $51 = ($50|0)<(0); + $52 = $51 << 31 >> 31; + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 24|0); + $55 = $54; + $56 = $55; + HEAP32[$56>>2] = $50; + $57 = (($55) + 4)|0; + $58 = $57; + HEAP32[$58>>2] = $52; + } + } + } else { + $59 = HEAP32[$0>>2]|0; + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 60|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$iLimit>>2]|0; + _sqlite3ExprCode($59,$62,$63); + $64 = HEAP32[$v>>2]|0; + $65 = HEAP32[$iLimit>>2]|0; + (_sqlite3VdbeAddOp1($64,38,$65)|0); + $66 = HEAP32[$v>>2]|0; + $67 = HEAP32[$iLimit>>2]|0; + $68 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp2($66,136,$67,$68)|0); + } + } while(0); + $69 = HEAP32[$1>>2]|0; + $70 = (($69) + 64|0); + $71 = HEAP32[$70>>2]|0; + $72 = ($71|0)!=(0|0); + if (!($72)) { + STACKTOP = sp;return; + } + $73 = HEAP32[$0>>2]|0; + $74 = (($73) + 72|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($75) + 1)|0; + HEAP32[$74>>2] = $76; + HEAP32[$iOffset>>2] = $76; + $77 = HEAP32[$1>>2]|0; + $78 = (($77) + 12|0); + HEAP32[$78>>2] = $76; + $79 = HEAP32[$0>>2]|0; + $80 = (($79) + 72|0); + $81 = HEAP32[$80>>2]|0; + $82 = (($81) + 1)|0; + HEAP32[$80>>2] = $82; + $83 = HEAP32[$0>>2]|0; + $84 = HEAP32[$1>>2]|0; + $85 = (($84) + 64|0); + $86 = HEAP32[$85>>2]|0; + $87 = HEAP32[$iOffset>>2]|0; + _sqlite3ExprCode($83,$86,$87); + $88 = HEAP32[$v>>2]|0; + $89 = HEAP32[$iOffset>>2]|0; + (_sqlite3VdbeAddOp1($88,38,$89)|0); + $90 = HEAP32[$v>>2]|0; + $91 = HEAP32[$iOffset>>2]|0; + $92 = (_sqlite3VdbeAddOp1($90,134,$91)|0); + HEAP32[$addr1>>2] = $92; + $93 = HEAP32[$v>>2]|0; + $94 = HEAP32[$iOffset>>2]|0; + (_sqlite3VdbeAddOp2($93,25,0,$94)|0); + $95 = HEAP32[$v>>2]|0; + $96 = HEAP32[$addr1>>2]|0; + _sqlite3VdbeJumpHere($95,$96); + $97 = HEAP32[$v>>2]|0; + $98 = HEAP32[$iLimit>>2]|0; + $99 = HEAP32[$iOffset>>2]|0; + $100 = HEAP32[$iOffset>>2]|0; + $101 = (($100) + 1)|0; + (_sqlite3VdbeAddOp3($97,89,$98,$99,$101)|0); + $102 = HEAP32[$v>>2]|0; + $103 = HEAP32[$iLimit>>2]|0; + $104 = (_sqlite3VdbeAddOp1($102,134,$103)|0); + HEAP32[$addr1>>2] = $104; + $105 = HEAP32[$v>>2]|0; + $106 = HEAP32[$iOffset>>2]|0; + $107 = (($106) + 1)|0; + (_sqlite3VdbeAddOp2($105,25,-1,$107)|0); + $108 = HEAP32[$v>>2]|0; + $109 = HEAP32[$addr1>>2]|0; + _sqlite3VdbeJumpHere($108,$109); + STACKTOP = sp;return; +} +function _sqlite3WhereOutputRowCount($pWInfo) { + $pWInfo = $pWInfo|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pWInfo; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 32|0); + $3 = HEAP16[$2>>1]|0; + $4 = (_sqlite3LogEstToInt($3)|0); + $5 = tempRet0; + tempRet0 = $5; + STACKTOP = sp;return ($4|0); +} +function _sqlite3WhereIsDistinct($pWInfo) { + $pWInfo = $pWInfo|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pWInfo; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 40|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + STACKTOP = sp;return ($4|0); +} +function _sqlite3WhereIsOrdered($pWInfo) { + $pWInfo = $pWInfo|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pWInfo; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 36|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3 << 24 >> 24; + STACKTOP = sp;return ($4|0); +} +function _selectInnerLoop($pParse,$p,$pEList,$srcTab,$pSort,$pDistinct,$pDest,$iContinue,$iBreak) { + $pParse = $pParse|0; + $p = $p|0; + $pEList = $pEList|0; + $srcTab = $srcTab|0; + $pSort = $pSort|0; + $pDistinct = $pDistinct|0; + $pDest = $pDest|0; + $iContinue = $iContinue|0; + $iBreak = $iBreak|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; + var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; + var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; + var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr = 0, $addrTest = 0, $eDest = 0, $hasDistinct = 0; + var $i = 0, $iJump = 0, $iParm = 0, $nKey = 0, $nResultCol = 0, $pColl = 0, $pOp = 0, $pSO = 0, $r1 = 0, $r11 = 0, $r12 = 0, $r13 = 0, $r14 = 0, $r2 = 0, $r25 = 0, $r3 = 0, $regPrev = 0, $regResult = 0, $v = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $0 = sp + 124|0; + $1 = sp + 120|0; + $2 = sp + 116|0; + $3 = sp + 112|0; + $4 = sp + 108|0; + $5 = sp + 104|0; + $6 = sp + 100|0; + $7 = sp + 96|0; + $8 = sp + 92|0; + $v = sp + 88|0; + $i = sp + 84|0; + $hasDistinct = sp + 80|0; + $regResult = sp + 76|0; + $eDest = sp + 72|0; + $iParm = sp + 68|0; + $nResultCol = sp + 64|0; + $pOp = sp + 60|0; + $iJump = sp + 24|0; + $regPrev = sp; + $pColl = sp + 4|0; + $r1 = sp + 8|0; + $r11 = sp + 12|0; + $addr = sp + 16|0; + $r2 = sp + 20|0; + $r12 = sp + 28|0; + $r13 = sp + 32|0; + $nKey = sp + 36|0; + $r14 = sp + 40|0; + $r25 = sp + 44|0; + $r3 = sp + 48|0; + $addrTest = sp + 52|0; + $pSO = sp + 56|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pEList; + HEAP32[$3>>2] = $srcTab; + HEAP32[$4>>2] = $pSort; + HEAP32[$5>>2] = $pDistinct; + HEAP32[$6>>2] = $pDest; + HEAP32[$7>>2] = $iContinue; + HEAP32[$8>>2] = $iBreak; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 8|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$v>>2] = $11; + $12 = HEAP32[$6>>2]|0; + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + HEAP32[$eDest>>2] = $14; + $15 = HEAP32[$6>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$iParm>>2] = $17; + $18 = HEAP32[$5>>2]|0; + $19 = ($18|0)!=(0|0); + if ($19) { + $20 = HEAP32[$5>>2]|0; + $21 = (($20) + 1|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = $23; + } else { + $24 = 0; + } + HEAP32[$hasDistinct>>2] = $24; + $25 = HEAP32[$4>>2]|0; + $26 = ($25|0)!=(0|0); + if ($26) { + $27 = HEAP32[$4>>2]|0; + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)==(0|0); + if ($29) { + HEAP32[$4>>2] = 0; + } + } + $30 = HEAP32[$4>>2]|0; + $31 = ($30|0)==(0|0); + if ($31) { + $32 = HEAP32[$hasDistinct>>2]|0; + $33 = ($32|0)!=(0); + if (!($33)) { + $34 = HEAP32[$v>>2]|0; + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 12|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$7>>2]|0; + _codeOffset($34,$37,$38); + } + } + $39 = HEAP32[$2>>2]|0; + $40 = HEAP32[$39>>2]|0; + HEAP32[$nResultCol>>2] = $40; + $41 = HEAP32[$6>>2]|0; + $42 = (($41) + 8|0); + $43 = HEAP32[$42>>2]|0; + $44 = ($43|0)==(0); + if ($44) { + $45 = HEAP32[$0>>2]|0; + $46 = (($45) + 72|0); + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + 1)|0; + $49 = HEAP32[$6>>2]|0; + $50 = (($49) + 8|0); + HEAP32[$50>>2] = $48; + $51 = HEAP32[$nResultCol>>2]|0; + $52 = HEAP32[$0>>2]|0; + $53 = (($52) + 72|0); + $54 = HEAP32[$53>>2]|0; + $55 = (($54) + ($51))|0; + HEAP32[$53>>2] = $55; + } else { + $56 = HEAP32[$6>>2]|0; + $57 = (($56) + 8|0); + $58 = HEAP32[$57>>2]|0; + $59 = HEAP32[$nResultCol>>2]|0; + $60 = (($58) + ($59))|0; + $61 = HEAP32[$0>>2]|0; + $62 = (($61) + 72|0); + $63 = HEAP32[$62>>2]|0; + $64 = ($60|0)>($63|0); + if ($64) { + $65 = HEAP32[$nResultCol>>2]|0; + $66 = HEAP32[$0>>2]|0; + $67 = (($66) + 72|0); + $68 = HEAP32[$67>>2]|0; + $69 = (($68) + ($65))|0; + HEAP32[$67>>2] = $69; + } + } + $70 = HEAP32[$nResultCol>>2]|0; + $71 = HEAP32[$6>>2]|0; + $72 = (($71) + 12|0); + HEAP32[$72>>2] = $70; + $73 = HEAP32[$6>>2]|0; + $74 = (($73) + 8|0); + $75 = HEAP32[$74>>2]|0; + HEAP32[$regResult>>2] = $75; + $76 = HEAP32[$3>>2]|0; + $77 = ($76|0)>=(0); + L17: do { + if ($77) { + HEAP32[$i>>2] = 0; + while(1) { + $78 = HEAP32[$i>>2]|0; + $79 = HEAP32[$nResultCol>>2]|0; + $80 = ($78|0)<($79|0); + if (!($80)) { + break L17; + } + $81 = HEAP32[$v>>2]|0; + $82 = HEAP32[$3>>2]|0; + $83 = HEAP32[$i>>2]|0; + $84 = HEAP32[$regResult>>2]|0; + $85 = HEAP32[$i>>2]|0; + $86 = (($84) + ($85))|0; + (_sqlite3VdbeAddOp3($81,46,$82,$83,$86)|0); + $87 = HEAP32[$i>>2]|0; + $88 = (($87) + 1)|0; + HEAP32[$i>>2] = $88; + } + } else { + $89 = HEAP32[$eDest>>2]|0; + $90 = ($89|0)!=(3); + if ($90) { + $91 = HEAP32[$0>>2]|0; + $92 = HEAP32[$2>>2]|0; + $93 = HEAP32[$regResult>>2]|0; + $94 = HEAP32[$eDest>>2]|0; + $95 = ($94|0)==(9); + if ($95) { + $99 = 1; + } else { + $96 = HEAP32[$eDest>>2]|0; + $97 = ($96|0)==(13); + $99 = $97; + } + $98 = $99 ? 1 : 0; + $100 = $98&255; + (_sqlite3ExprCodeExprList($91,$92,$93,$100)|0); + } + } + } while(0); + $101 = HEAP32[$hasDistinct>>2]|0; + $102 = ($101|0)!=(0); + if ($102) { + $103 = HEAP32[$5>>2]|0; + $104 = (($103) + 1|0); + $105 = HEAP8[$104>>0]|0; + $106 = $105&255; + if ((($106|0) == 1)) { + $172 = HEAP32[$v>>2]|0; + $173 = HEAP32[$5>>2]|0; + $174 = (($173) + 8|0); + $175 = HEAP32[$174>>2]|0; + _sqlite3VdbeChangeToNoop($172,$175); + } else if ((($106|0) == 2)) { + $107 = HEAP32[$0>>2]|0; + $108 = (($107) + 72|0); + $109 = HEAP32[$108>>2]|0; + $110 = (($109) + 1)|0; + HEAP32[$regPrev>>2] = $110; + $111 = HEAP32[$nResultCol>>2]|0; + $112 = HEAP32[$0>>2]|0; + $113 = (($112) + 72|0); + $114 = HEAP32[$113>>2]|0; + $115 = (($114) + ($111))|0; + HEAP32[$113>>2] = $115; + $116 = HEAP32[$v>>2]|0; + $117 = HEAP32[$5>>2]|0; + $118 = (($117) + 8|0); + $119 = HEAP32[$118>>2]|0; + _sqlite3VdbeChangeToNoop($116,$119); + $120 = HEAP32[$v>>2]|0; + $121 = HEAP32[$5>>2]|0; + $122 = (($121) + 8|0); + $123 = HEAP32[$122>>2]|0; + $124 = (_sqlite3VdbeGetOp($120,$123)|0); + HEAP32[$pOp>>2] = $124; + $125 = HEAP32[$pOp>>2]|0; + HEAP8[$125>>0] = 28; + $126 = HEAP32[$pOp>>2]|0; + $127 = (($126) + 4|0); + HEAP32[$127>>2] = 1; + $128 = HEAP32[$regPrev>>2]|0; + $129 = HEAP32[$pOp>>2]|0; + $130 = (($129) + 8|0); + HEAP32[$130>>2] = $128; + $131 = HEAP32[$v>>2]|0; + $132 = (_sqlite3VdbeCurrentAddr($131)|0); + $133 = HEAP32[$nResultCol>>2]|0; + $134 = (($132) + ($133))|0; + HEAP32[$iJump>>2] = $134; + HEAP32[$i>>2] = 0; + while(1) { + $135 = HEAP32[$i>>2]|0; + $136 = HEAP32[$nResultCol>>2]|0; + $137 = ($135|0)<($136|0); + if (!($137)) { + break; + } + $138 = HEAP32[$0>>2]|0; + $139 = HEAP32[$i>>2]|0; + $140 = HEAP32[$2>>2]|0; + $141 = (($140) + 4|0); + $142 = HEAP32[$141>>2]|0; + $143 = (($142) + (($139*20)|0)|0); + $144 = HEAP32[$143>>2]|0; + $145 = (_sqlite3ExprCollSeq($138,$144)|0); + HEAP32[$pColl>>2] = $145; + $146 = HEAP32[$i>>2]|0; + $147 = HEAP32[$nResultCol>>2]|0; + $148 = (($147) - 1)|0; + $149 = ($146|0)<($148|0); + $150 = HEAP32[$v>>2]|0; + $151 = HEAP32[$regResult>>2]|0; + $152 = HEAP32[$i>>2]|0; + $153 = (($151) + ($152))|0; + if ($149) { + $154 = HEAP32[$iJump>>2]|0; + $155 = HEAP32[$regPrev>>2]|0; + $156 = HEAP32[$i>>2]|0; + $157 = (($155) + ($156))|0; + (_sqlite3VdbeAddOp3($150,78,$153,$154,$157)|0); + } else { + $158 = HEAP32[$7>>2]|0; + $159 = HEAP32[$regPrev>>2]|0; + $160 = HEAP32[$i>>2]|0; + $161 = (($159) + ($160))|0; + (_sqlite3VdbeAddOp3($150,79,$153,$158,$161)|0); + } + $162 = HEAP32[$v>>2]|0; + $163 = HEAP32[$pColl>>2]|0; + _sqlite3VdbeChangeP4($162,-1,$163,-4); + $164 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($164,-128); + $165 = HEAP32[$i>>2]|0; + $166 = (($165) + 1)|0; + HEAP32[$i>>2] = $166; + } + $167 = HEAP32[$v>>2]|0; + $168 = HEAP32[$regResult>>2]|0; + $169 = HEAP32[$regPrev>>2]|0; + $170 = HEAP32[$nResultCol>>2]|0; + $171 = (($170) - 1)|0; + (_sqlite3VdbeAddOp3($167,33,$168,$169,$171)|0); + } else { + $176 = HEAP32[$0>>2]|0; + $177 = HEAP32[$5>>2]|0; + $178 = (($177) + 4|0); + $179 = HEAP32[$178>>2]|0; + $180 = HEAP32[$7>>2]|0; + $181 = HEAP32[$nResultCol>>2]|0; + $182 = HEAP32[$regResult>>2]|0; + _codeDistinct($176,$179,$180,$181,$182); + } + $183 = HEAP32[$4>>2]|0; + $184 = ($183|0)==(0|0); + if ($184) { + $185 = HEAP32[$v>>2]|0; + $186 = HEAP32[$1>>2]|0; + $187 = (($186) + 12|0); + $188 = HEAP32[$187>>2]|0; + $189 = HEAP32[$7>>2]|0; + _codeOffset($185,$188,$189); + } + } + $190 = HEAP32[$eDest>>2]|0; + L45: do { + switch ($190|0) { + case 12: case 14: case 6: case 5: { + $206 = HEAP32[$0>>2]|0; + $207 = (_sqlite3GetTempReg($206)|0); + HEAP32[$r11>>2] = $207; + $208 = HEAP32[$v>>2]|0; + $209 = HEAP32[$regResult>>2]|0; + $210 = HEAP32[$nResultCol>>2]|0; + $211 = HEAP32[$r11>>2]|0; + (_sqlite3VdbeAddOp3($208,48,$209,$210,$211)|0); + $212 = HEAP32[$eDest>>2]|0; + $213 = ($212|0)==(6); + if ($213) { + $214 = HEAP32[$v>>2]|0; + $215 = (_sqlite3VdbeCurrentAddr($214)|0); + $216 = (($215) + 4)|0; + HEAP32[$addr>>2] = $216; + $217 = HEAP32[$v>>2]|0; + $218 = HEAP32[$iParm>>2]|0; + $219 = (($218) + 1)|0; + $220 = HEAP32[$addr>>2]|0; + $221 = HEAP32[$r11>>2]|0; + (_sqlite3VdbeAddOp4Int($217,66,$219,$220,$221,0)|0); + $222 = HEAP32[$v>>2]|0; + $223 = HEAP32[$iParm>>2]|0; + $224 = (($223) + 1)|0; + $225 = HEAP32[$r11>>2]|0; + (_sqlite3VdbeAddOp2($222,107,$224,$225)|0); + } + $226 = HEAP32[$4>>2]|0; + $227 = ($226|0)!=(0|0); + $228 = HEAP32[$0>>2]|0; + if ($227) { + $229 = HEAP32[$4>>2]|0; + $230 = HEAP32[$1>>2]|0; + $231 = HEAP32[$r11>>2]|0; + _pushOntoSorter($228,$229,$230,$231); + } else { + $232 = (_sqlite3GetTempReg($228)|0); + HEAP32[$r2>>2] = $232; + $233 = HEAP32[$v>>2]|0; + $234 = HEAP32[$iParm>>2]|0; + $235 = HEAP32[$r2>>2]|0; + (_sqlite3VdbeAddOp2($233,69,$234,$235)|0); + $236 = HEAP32[$v>>2]|0; + $237 = HEAP32[$iParm>>2]|0; + $238 = HEAP32[$r11>>2]|0; + $239 = HEAP32[$r2>>2]|0; + (_sqlite3VdbeAddOp3($236,70,$237,$238,$239)|0); + $240 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($240,8); + $241 = HEAP32[$0>>2]|0; + $242 = HEAP32[$r2>>2]|0; + _sqlite3ReleaseTempReg($241,$242); + } + $243 = HEAP32[$0>>2]|0; + $244 = HEAP32[$r11>>2]|0; + _sqlite3ReleaseTempReg($243,$244); + break; + } + case 11: { + $245 = HEAP32[$2>>2]|0; + $246 = (($245) + 4|0); + $247 = HEAP32[$246>>2]|0; + $248 = HEAP32[$247>>2]|0; + $249 = HEAP32[$6>>2]|0; + $250 = (($249) + 1|0); + $251 = HEAP8[$250>>0]|0; + $252 = (_sqlite3CompareAffinity($248,$251)|0); + $253 = HEAP32[$6>>2]|0; + $254 = (($253) + 1|0); + HEAP8[$254>>0] = $252; + $255 = HEAP32[$4>>2]|0; + $256 = ($255|0)!=(0|0); + $257 = HEAP32[$0>>2]|0; + if ($256) { + $258 = HEAP32[$4>>2]|0; + $259 = HEAP32[$1>>2]|0; + $260 = HEAP32[$regResult>>2]|0; + _pushOntoSorter($257,$258,$259,$260); + break L45; + } else { + $261 = (_sqlite3GetTempReg($257)|0); + HEAP32[$r12>>2] = $261; + $262 = HEAP32[$v>>2]|0; + $263 = HEAP32[$regResult>>2]|0; + $264 = HEAP32[$r12>>2]|0; + $265 = HEAP32[$6>>2]|0; + $266 = (($265) + 1|0); + (_sqlite3VdbeAddOp4($262,48,$263,1,$264,$266,1)|0); + $267 = HEAP32[$0>>2]|0; + $268 = HEAP32[$regResult>>2]|0; + _sqlite3ExprCacheAffinityChange($267,$268,1); + $269 = HEAP32[$v>>2]|0; + $270 = HEAP32[$iParm>>2]|0; + $271 = HEAP32[$r12>>2]|0; + (_sqlite3VdbeAddOp2($269,107,$270,$271)|0); + $272 = HEAP32[$0>>2]|0; + $273 = HEAP32[$r12>>2]|0; + _sqlite3ReleaseTempReg($272,$273); + break L45; + } + break; + } + case 9: case 13: { + $284 = HEAP32[$4>>2]|0; + $285 = ($284|0)!=(0|0); + if ($285) { + $286 = HEAP32[$0>>2]|0; + $287 = (_sqlite3GetTempReg($286)|0); + HEAP32[$r13>>2] = $287; + $288 = HEAP32[$v>>2]|0; + $289 = HEAP32[$regResult>>2]|0; + $290 = HEAP32[$nResultCol>>2]|0; + $291 = HEAP32[$r13>>2]|0; + (_sqlite3VdbeAddOp3($288,48,$289,$290,$291)|0); + $292 = HEAP32[$0>>2]|0; + $293 = HEAP32[$4>>2]|0; + $294 = HEAP32[$1>>2]|0; + $295 = HEAP32[$r13>>2]|0; + _pushOntoSorter($292,$293,$294,$295); + $296 = HEAP32[$0>>2]|0; + $297 = HEAP32[$r13>>2]|0; + _sqlite3ReleaseTempReg($296,$297); + break L45; + } + $298 = HEAP32[$eDest>>2]|0; + $299 = ($298|0)==(13); + $300 = HEAP32[$v>>2]|0; + if ($299) { + $301 = HEAP32[$6>>2]|0; + $302 = (($301) + 4|0); + $303 = HEAP32[$302>>2]|0; + (_sqlite3VdbeAddOp1($300,22,$303)|0); + break L45; + } else { + $304 = HEAP32[$regResult>>2]|0; + $305 = HEAP32[$nResultCol>>2]|0; + (_sqlite3VdbeAddOp2($300,35,$304,$305)|0); + $306 = HEAP32[$0>>2]|0; + $307 = HEAP32[$regResult>>2]|0; + $308 = HEAP32[$nResultCol>>2]|0; + _sqlite3ExprCacheAffinityChange($306,$307,$308); + break L45; + } + break; + } + case 7: case 8: { + HEAP32[$addrTest>>2] = 0; + $309 = HEAP32[$6>>2]|0; + $310 = (($309) + 16|0); + $311 = HEAP32[$310>>2]|0; + HEAP32[$pSO>>2] = $311; + $312 = HEAP32[$pSO>>2]|0; + $313 = HEAP32[$312>>2]|0; + HEAP32[$nKey>>2] = $313; + $314 = HEAP32[$0>>2]|0; + $315 = (_sqlite3GetTempReg($314)|0); + HEAP32[$r14>>2] = $315; + $316 = HEAP32[$0>>2]|0; + $317 = HEAP32[$nKey>>2]|0; + $318 = (($317) + 2)|0; + $319 = (_sqlite3GetTempRange($316,$318)|0); + HEAP32[$r25>>2] = $319; + $320 = HEAP32[$r25>>2]|0; + $321 = HEAP32[$nKey>>2]|0; + $322 = (($320) + ($321))|0; + $323 = (($322) + 1)|0; + HEAP32[$r3>>2] = $323; + $324 = HEAP32[$eDest>>2]|0; + $325 = ($324|0)==(8); + if ($325) { + $326 = HEAP32[$v>>2]|0; + $327 = HEAP32[$iParm>>2]|0; + $328 = (($327) + 1)|0; + $329 = HEAP32[$regResult>>2]|0; + $330 = HEAP32[$nResultCol>>2]|0; + $331 = (_sqlite3VdbeAddOp4Int($326,66,$328,0,$329,$330)|0); + HEAP32[$addrTest>>2] = $331; + } + $332 = HEAP32[$v>>2]|0; + $333 = HEAP32[$regResult>>2]|0; + $334 = HEAP32[$nResultCol>>2]|0; + $335 = HEAP32[$r3>>2]|0; + (_sqlite3VdbeAddOp3($332,48,$333,$334,$335)|0); + $336 = HEAP32[$eDest>>2]|0; + $337 = ($336|0)==(8); + if ($337) { + $338 = HEAP32[$v>>2]|0; + $339 = HEAP32[$iParm>>2]|0; + $340 = (($339) + 1)|0; + $341 = HEAP32[$r3>>2]|0; + (_sqlite3VdbeAddOp2($338,107,$340,$341)|0); + $342 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($342,16); + } + HEAP32[$i>>2] = 0; + while(1) { + $343 = HEAP32[$i>>2]|0; + $344 = HEAP32[$nKey>>2]|0; + $345 = ($343|0)<($344|0); + $346 = HEAP32[$v>>2]|0; + if (!($345)) { + break; + } + $347 = HEAP32[$regResult>>2]|0; + $348 = HEAP32[$i>>2]|0; + $349 = HEAP32[$pSO>>2]|0; + $350 = (($349) + 4|0); + $351 = HEAP32[$350>>2]|0; + $352 = (($351) + (($348*20)|0)|0); + $353 = (($352) + 16|0); + $354 = HEAP16[$353>>1]|0; + $355 = $354&65535; + $356 = (($347) + ($355))|0; + $357 = (($356) - 1)|0; + $358 = HEAP32[$r25>>2]|0; + $359 = HEAP32[$i>>2]|0; + $360 = (($358) + ($359))|0; + (_sqlite3VdbeAddOp2($346,34,$357,$360)|0); + $361 = HEAP32[$i>>2]|0; + $362 = (($361) + 1)|0; + HEAP32[$i>>2] = $362; + } + $363 = HEAP32[$iParm>>2]|0; + $364 = HEAP32[$r25>>2]|0; + $365 = HEAP32[$nKey>>2]|0; + $366 = (($364) + ($365))|0; + (_sqlite3VdbeAddOp2($346,68,$363,$366)|0); + $367 = HEAP32[$v>>2]|0; + $368 = HEAP32[$r25>>2]|0; + $369 = HEAP32[$nKey>>2]|0; + $370 = (($369) + 2)|0; + $371 = HEAP32[$r14>>2]|0; + (_sqlite3VdbeAddOp3($367,48,$368,$370,$371)|0); + $372 = HEAP32[$v>>2]|0; + $373 = HEAP32[$iParm>>2]|0; + $374 = HEAP32[$r14>>2]|0; + (_sqlite3VdbeAddOp2($372,107,$373,$374)|0); + $375 = HEAP32[$addrTest>>2]|0; + $376 = ($375|0)!=(0); + if ($376) { + $377 = HEAP32[$v>>2]|0; + $378 = HEAP32[$addrTest>>2]|0; + _sqlite3VdbeJumpHere($377,$378); + } + $379 = HEAP32[$0>>2]|0; + $380 = HEAP32[$r14>>2]|0; + _sqlite3ReleaseTempReg($379,$380); + $381 = HEAP32[$0>>2]|0; + $382 = HEAP32[$r25>>2]|0; + $383 = HEAP32[$nKey>>2]|0; + $384 = (($383) + 2)|0; + _sqlite3ReleaseTempRange($381,$382,$384); + break; + } + case 3: { + $274 = HEAP32[$v>>2]|0; + $275 = HEAP32[$iParm>>2]|0; + (_sqlite3VdbeAddOp2($274,25,1,$275)|0); + break; + } + case 1: { + $191 = HEAP32[$0>>2]|0; + $192 = (_sqlite3GetTempReg($191)|0); + HEAP32[$r1>>2] = $192; + $193 = HEAP32[$v>>2]|0; + $194 = HEAP32[$regResult>>2]|0; + $195 = HEAP32[$nResultCol>>2]|0; + $196 = HEAP32[$r1>>2]|0; + (_sqlite3VdbeAddOp3($193,48,$194,$195,$196)|0); + $197 = HEAP32[$v>>2]|0; + $198 = HEAP32[$iParm>>2]|0; + $199 = HEAP32[$r1>>2]|0; + (_sqlite3VdbeAddOp2($197,107,$198,$199)|0); + $200 = HEAP32[$0>>2]|0; + $201 = HEAP32[$r1>>2]|0; + _sqlite3ReleaseTempReg($200,$201); + break; + } + case 2: { + $202 = HEAP32[$v>>2]|0; + $203 = HEAP32[$iParm>>2]|0; + $204 = HEAP32[$regResult>>2]|0; + $205 = HEAP32[$nResultCol>>2]|0; + (_sqlite3VdbeAddOp3($202,108,$203,$204,$205)|0); + break; + } + case 10: { + $276 = HEAP32[$4>>2]|0; + $277 = ($276|0)!=(0|0); + $278 = HEAP32[$0>>2]|0; + if ($277) { + $279 = HEAP32[$4>>2]|0; + $280 = HEAP32[$1>>2]|0; + $281 = HEAP32[$regResult>>2]|0; + _pushOntoSorter($278,$279,$280,$281); + break L45; + } else { + $282 = HEAP32[$regResult>>2]|0; + $283 = HEAP32[$iParm>>2]|0; + _sqlite3ExprCodeMove($278,$282,$283,1); + break L45; + } + break; + } + default: { + } + } + } while(0); + $385 = HEAP32[$4>>2]|0; + $386 = ($385|0)==(0|0); + if (!($386)) { + STACKTOP = sp;return; + } + $387 = HEAP32[$1>>2]|0; + $388 = (($387) + 8|0); + $389 = HEAP32[$388>>2]|0; + $390 = ($389|0)!=(0); + if (!($390)) { + STACKTOP = sp;return; + } + $391 = HEAP32[$v>>2]|0; + $392 = HEAP32[$1>>2]|0; + $393 = (($392) + 8|0); + $394 = HEAP32[$393>>2]|0; + $395 = HEAP32[$8>>2]|0; + (_sqlite3VdbeAddOp3($391,136,$394,$395,-1)|0); + STACKTOP = sp;return; +} +function _sqlite3WhereContinueLabel($pWInfo) { + $pWInfo = $pWInfo|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pWInfo; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 48|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _sqlite3WhereBreakLabel($pWInfo) { + $pWInfo = $pWInfo|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pWInfo; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 52|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _sqlite3ExprAnalyzeAggList($pNC,$pList) { + $pNC = $pNC|0; + $pList = $pList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pItem = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $pItem = sp + 4|0; + $i = sp + 8|0; + HEAP32[$0>>2] = $pNC; + HEAP32[$1>>2] = $pList; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$pItem>>2] = $6; + HEAP32[$i>>2] = 0; + while(1) { + $7 = HEAP32[$i>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = ($7|0)<($9|0); + if (!($10)) { + break; + } + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$pItem>>2]|0; + $13 = HEAP32[$12>>2]|0; + _sqlite3ExprAnalyzeAggregates($11,$13); + $14 = HEAP32[$i>>2]|0; + $15 = (($14) + 1)|0; + HEAP32[$i>>2] = $15; + $16 = HEAP32[$pItem>>2]|0; + $17 = (($16) + 20|0); + HEAP32[$pItem>>2] = $17; + } + STACKTOP = sp;return; +} +function _sqlite3ExprAnalyzeAggregates($pNC,$pExpr) { + $pNC = $pNC|0; + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $w = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp; + $w = sp + 8|0; + HEAP32[$0>>2] = $pNC; + HEAP32[$1>>2] = $pExpr; + ;HEAP32[$w+0>>2]=0|0;HEAP32[$w+4>>2]=0|0;HEAP32[$w+8>>2]=0|0;HEAP32[$w+12>>2]=0|0;HEAP32[$w+16>>2]=0|0;HEAP32[$w+20>>2]=0|0; + HEAP32[$w>>2] = 66; + $2 = (($w) + 4|0); + HEAP32[$2>>2] = 67; + $3 = HEAP32[$0>>2]|0; + $4 = (($w) + 20|0); + HEAP32[$4>>2] = $3; + $5 = HEAP32[$1>>2]|0; + (_sqlite3WalkExpr($w,$5)|0); + STACKTOP = sp;return; +} +function _explainTempTable($pParse,$zUsage) { + $pParse = $pParse|0; + $zUsage = $zUsage|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $v = 0; + var $vararg_buffer = 0, $zMsg = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 16|0; + $1 = sp + 4|0; + $v = sp + 8|0; + $zMsg = sp + 12|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $zUsage; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 450|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = ($5|0)==(2); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 8|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$v>>2] = $9; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$1>>2]|0; + HEAP32[$vararg_buffer>>2] = $12; + $13 = (_sqlite3MPrintf($11,31456,$vararg_buffer)|0); + HEAP32[$zMsg>>2] = $13; + $14 = HEAP32[$v>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 464|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$zMsg>>2]|0; + (_sqlite3VdbeAddOp4($14,157,$17,0,0,$18,-1)|0); + STACKTOP = sp;return; +} +function _sqlite3WhereIsSorted($pWInfo) { + $pWInfo = $pWInfo|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pWInfo; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 37|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + STACKTOP = sp;return ($4|0); +} +function _sqlite3ExprCodeMove($pParse,$iFrom,$iTo,$nReg) { + $pParse = $pParse|0; + $iFrom = $iFrom|0; + $iTo = $iTo|0; + $nReg = $nReg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, $x = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $i = sp + 12|0; + $p = sp + 16|0; + $x = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iFrom; + HEAP32[$2>>2] = $iTo; + HEAP32[$3>>2] = $nReg; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp3($6,32,$7,$8,$9)|0); + HEAP32[$i>>2] = 0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 116|0); + HEAP32[$p>>2] = $11; + while(1) { + $12 = HEAP32[$i>>2]|0; + $13 = ($12|0)<(10); + if (!($13)) { + break; + } + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 12|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$x>>2] = $16; + $17 = HEAP32[$x>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = ($17|0)>=($18|0); + if ($19) { + $20 = HEAP32[$x>>2]|0; + $21 = HEAP32[$1>>2]|0; + $22 = HEAP32[$3>>2]|0; + $23 = (($21) + ($22))|0; + $24 = ($20|0)<($23|0); + if ($24) { + $25 = HEAP32[$2>>2]|0; + $26 = HEAP32[$1>>2]|0; + $27 = (($25) - ($26))|0; + $28 = HEAP32[$p>>2]|0; + $29 = (($28) + 12|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + ($27))|0; + HEAP32[$29>>2] = $31; + } + } + $32 = HEAP32[$i>>2]|0; + $33 = (($32) + 1)|0; + HEAP32[$i>>2] = $33; + $34 = HEAP32[$p>>2]|0; + $35 = (($34) + 20|0); + HEAP32[$p>>2] = $35; + } + STACKTOP = sp;return; +} +function _updateAccumulator($pParse,$pAggInfo) { + $pParse = $pParse|0; + $pAggInfo = $pAggInfo|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $addrHitTest = 0, $addrNext = 0, $i = 0, $j = 0, $nArg = 0, $pC = 0, $pColl = 0, $pF = 0, $pItem = 0, $pList = 0, $regAgg = 0, $regHit = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 56|0; + $1 = sp + 52|0; + $v = sp + 48|0; + $i = sp + 44|0; + $regHit = sp + 40|0; + $addrHitTest = sp + 36|0; + $pF = sp + 32|0; + $pC = sp + 28|0; + $nArg = sp + 20|0; + $addrNext = sp + 16|0; + $regAgg = sp + 12|0; + $pList = sp + 8|0; + $pColl = sp + 4|0; + $pItem = sp; + $j = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pAggInfo; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 8|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$v>>2] = $4; + HEAP32[$regHit>>2] = 0; + HEAP32[$addrHitTest>>2] = 0; + $5 = HEAP32[$1>>2]|0; + HEAP8[$5>>0] = 1; + HEAP32[$i>>2] = 0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 40|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pF>>2] = $8; + while(1) { + $9 = HEAP32[$i>>2]|0; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 44|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($9|0)<($12|0); + if (!($13)) { + break; + } + HEAP32[$addrNext>>2] = 0; + $14 = HEAP32[$pF>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + 20|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$pList>>2] = $17; + $18 = HEAP32[$pList>>2]|0; + $19 = ($18|0)!=(0|0); + if ($19) { + $20 = HEAP32[$pList>>2]|0; + $21 = HEAP32[$20>>2]|0; + HEAP32[$nArg>>2] = $21; + $22 = HEAP32[$0>>2]|0; + $23 = HEAP32[$nArg>>2]|0; + $24 = (_sqlite3GetTempRange($22,$23)|0); + HEAP32[$regAgg>>2] = $24; + $25 = HEAP32[$0>>2]|0; + $26 = HEAP32[$pList>>2]|0; + $27 = HEAP32[$regAgg>>2]|0; + (_sqlite3ExprCodeExprList($25,$26,$27,1)|0); + } else { + HEAP32[$nArg>>2] = 0; + HEAP32[$regAgg>>2] = 0; + } + $28 = HEAP32[$pF>>2]|0; + $29 = (($28) + 12|0); + $30 = HEAP32[$29>>2]|0; + $31 = ($30|0)>=(0); + if ($31) { + $32 = HEAP32[$v>>2]|0; + $33 = (_sqlite3VdbeMakeLabel($32)|0); + HEAP32[$addrNext>>2] = $33; + $34 = HEAP32[$0>>2]|0; + $35 = HEAP32[$pF>>2]|0; + $36 = (($35) + 12|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$addrNext>>2]|0; + $39 = HEAP32[$regAgg>>2]|0; + _codeDistinct($34,$37,$38,1,$39); + } + $40 = HEAP32[$pF>>2]|0; + $41 = (($40) + 4|0); + $42 = HEAP32[$41>>2]|0; + $43 = (($42) + 2|0); + $44 = HEAP16[$43>>1]|0; + $45 = $44&65535; + $46 = $45 & 32; + $47 = ($46|0)!=(0); + if ($47) { + HEAP32[$pColl>>2] = 0; + HEAP32[$j>>2] = 0; + $48 = HEAP32[$pList>>2]|0; + $49 = (($48) + 4|0); + $50 = HEAP32[$49>>2]|0; + HEAP32[$pItem>>2] = $50; + while(1) { + $51 = HEAP32[$pColl>>2]|0; + $52 = ($51|0)!=(0|0); + if ($52) { + break; + } + $53 = HEAP32[$j>>2]|0; + $54 = HEAP32[$nArg>>2]|0; + $55 = ($53|0)<($54|0); + if (!($55)) { + break; + } + $56 = HEAP32[$0>>2]|0; + $57 = HEAP32[$pItem>>2]|0; + $58 = HEAP32[$57>>2]|0; + $59 = (_sqlite3ExprCollSeq($56,$58)|0); + HEAP32[$pColl>>2] = $59; + $60 = HEAP32[$j>>2]|0; + $61 = (($60) + 1)|0; + HEAP32[$j>>2] = $61; + $62 = HEAP32[$pItem>>2]|0; + $63 = (($62) + 20|0); + HEAP32[$pItem>>2] = $63; + } + $64 = HEAP32[$pColl>>2]|0; + $65 = ($64|0)!=(0|0); + if (!($65)) { + $66 = HEAP32[$0>>2]|0; + $67 = HEAP32[$66>>2]|0; + $68 = (($67) + 8|0); + $69 = HEAP32[$68>>2]|0; + HEAP32[$pColl>>2] = $69; + } + $70 = HEAP32[$regHit>>2]|0; + $71 = ($70|0)==(0); + if ($71) { + $72 = HEAP32[$1>>2]|0; + $73 = (($72) + 36|0); + $74 = HEAP32[$73>>2]|0; + $75 = ($74|0)!=(0); + if ($75) { + $76 = HEAP32[$0>>2]|0; + $77 = (($76) + 72|0); + $78 = HEAP32[$77>>2]|0; + $79 = (($78) + 1)|0; + HEAP32[$77>>2] = $79; + HEAP32[$regHit>>2] = $79; + } + } + $80 = HEAP32[$v>>2]|0; + $81 = HEAP32[$regHit>>2]|0; + $82 = HEAP32[$pColl>>2]|0; + (_sqlite3VdbeAddOp4($80,36,$81,0,0,$82,-4)|0); + } + $83 = HEAP32[$v>>2]|0; + $84 = HEAP32[$regAgg>>2]|0; + $85 = HEAP32[$pF>>2]|0; + $86 = (($85) + 8|0); + $87 = HEAP32[$86>>2]|0; + $88 = HEAP32[$pF>>2]|0; + $89 = (($88) + 4|0); + $90 = HEAP32[$89>>2]|0; + (_sqlite3VdbeAddOp4($83,10,0,$84,$87,$90,-5)|0); + $91 = HEAP32[$v>>2]|0; + $92 = HEAP32[$nArg>>2]|0; + $93 = $92&255; + _sqlite3VdbeChangeP5($91,$93); + $94 = HEAP32[$0>>2]|0; + $95 = HEAP32[$regAgg>>2]|0; + $96 = HEAP32[$nArg>>2]|0; + _sqlite3ExprCacheAffinityChange($94,$95,$96); + $97 = HEAP32[$0>>2]|0; + $98 = HEAP32[$regAgg>>2]|0; + $99 = HEAP32[$nArg>>2]|0; + _sqlite3ReleaseTempRange($97,$98,$99); + $100 = HEAP32[$addrNext>>2]|0; + $101 = ($100|0)!=(0); + if ($101) { + $102 = HEAP32[$v>>2]|0; + $103 = HEAP32[$addrNext>>2]|0; + _sqlite3VdbeResolveLabel($102,$103); + $104 = HEAP32[$0>>2]|0; + _sqlite3ExprCacheClear($104); + } + $105 = HEAP32[$i>>2]|0; + $106 = (($105) + 1)|0; + HEAP32[$i>>2] = $106; + $107 = HEAP32[$pF>>2]|0; + $108 = (($107) + 16|0); + HEAP32[$pF>>2] = $108; + } + $109 = HEAP32[$regHit>>2]|0; + $110 = ($109|0)!=(0); + if ($110) { + $111 = HEAP32[$v>>2]|0; + $112 = HEAP32[$regHit>>2]|0; + $113 = (_sqlite3VdbeAddOp1($111,44,$112)|0); + HEAP32[$addrHitTest>>2] = $113; + } + $114 = HEAP32[$0>>2]|0; + _sqlite3ExprCacheClear($114); + HEAP32[$i>>2] = 0; + $115 = HEAP32[$1>>2]|0; + $116 = (($115) + 28|0); + $117 = HEAP32[$116>>2]|0; + HEAP32[$pC>>2] = $117; + while(1) { + $118 = HEAP32[$i>>2]|0; + $119 = HEAP32[$1>>2]|0; + $120 = (($119) + 36|0); + $121 = HEAP32[$120>>2]|0; + $122 = ($118|0)<($121|0); + if (!($122)) { + break; + } + $123 = HEAP32[$0>>2]|0; + $124 = HEAP32[$pC>>2]|0; + $125 = (($124) + 20|0); + $126 = HEAP32[$125>>2]|0; + $127 = HEAP32[$pC>>2]|0; + $128 = (($127) + 16|0); + $129 = HEAP32[$128>>2]|0; + _sqlite3ExprCode($123,$126,$129); + $130 = HEAP32[$i>>2]|0; + $131 = (($130) + 1)|0; + HEAP32[$i>>2] = $131; + $132 = HEAP32[$pC>>2]|0; + $133 = (($132) + 24|0); + HEAP32[$pC>>2] = $133; + } + $134 = HEAP32[$1>>2]|0; + HEAP8[$134>>0] = 0; + $135 = HEAP32[$0>>2]|0; + _sqlite3ExprCacheClear($135); + $136 = HEAP32[$addrHitTest>>2]|0; + $137 = ($136|0)!=(0); + if (!($137)) { + STACKTOP = sp;return; + } + $138 = HEAP32[$v>>2]|0; + $139 = HEAP32[$addrHitTest>>2]|0; + _sqlite3VdbeJumpHere($138,$139); + STACKTOP = sp;return; +} +function _finalizeAggFunctions($pParse,$pAggInfo) { + $pParse = $pParse|0; + $pAggInfo = $pAggInfo|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pF = 0, $pList = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $v = sp + 4|0; + $i = sp + 8|0; + $pF = sp + 12|0; + $pList = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pAggInfo; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 8|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$v>>2] = $4; + HEAP32[$i>>2] = 0; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 40|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pF>>2] = $7; + while(1) { + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 44|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($8|0)<($11|0); + if (!($12)) { + break; + } + $13 = HEAP32[$pF>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + 20|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$pList>>2] = $16; + $17 = HEAP32[$v>>2]|0; + $18 = HEAP32[$pF>>2]|0; + $19 = (($18) + 8|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$pList>>2]|0; + $22 = ($21|0)!=(0|0); + if ($22) { + $23 = HEAP32[$pList>>2]|0; + $24 = HEAP32[$23>>2]|0; + $28 = $24; + } else { + $28 = 0; + } + $25 = HEAP32[$pF>>2]|0; + $26 = (($25) + 4|0); + $27 = HEAP32[$26>>2]|0; + (_sqlite3VdbeAddOp4($17,137,$20,$28,0,$27,-5)|0); + $29 = HEAP32[$i>>2]|0; + $30 = (($29) + 1)|0; + HEAP32[$i>>2] = $30; + $31 = HEAP32[$pF>>2]|0; + $32 = (($31) + 16|0); + HEAP32[$pF>>2] = $32; + } + STACKTOP = sp;return; +} +function _resetAccumulator($pParse,$pAggInfo) { + $pParse = $pParse|0; + $pAggInfo = $pAggInfo|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; + var $9 = 0, $i = 0, $nReg = 0, $pE = 0, $pFunc = 0, $pKeyInfo = 0, $v = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 28|0; + $1 = sp + 24|0; + $v = sp + 20|0; + $i = sp + 32|0; + $pFunc = sp + 8|0; + $nReg = sp + 4|0; + $pE = sp + 12|0; + $pKeyInfo = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pAggInfo; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 8|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$v>>2] = $4; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 44|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 32|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($7) + ($10))|0; + HEAP32[$nReg>>2] = $11; + $12 = HEAP32[$nReg>>2]|0; + $13 = ($12|0)==(0); + if ($13) { + STACKTOP = sp;return; + } + $14 = HEAP32[$v>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 16|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 20|0); + $20 = HEAP32[$19>>2]|0; + (_sqlite3VdbeAddOp3($14,28,0,$17,$20)|0); + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 40|0); + $23 = HEAP32[$22>>2]|0; + HEAP32[$pFunc>>2] = $23; + HEAP32[$i>>2] = 0; + while(1) { + $24 = HEAP32[$i>>2]|0; + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 44|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($24|0)<($27|0); + if (!($28)) { + break; + } + $29 = HEAP32[$pFunc>>2]|0; + $30 = (($29) + 12|0); + $31 = HEAP32[$30>>2]|0; + $32 = ($31|0)>=(0); + do { + if ($32) { + $33 = HEAP32[$pFunc>>2]|0; + $34 = HEAP32[$33>>2]|0; + HEAP32[$pE>>2] = $34; + $35 = HEAP32[$pE>>2]|0; + $36 = (($35) + 20|0); + $37 = HEAP32[$36>>2]|0; + $38 = ($37|0)==(0|0); + if (!($38)) { + $39 = HEAP32[$pE>>2]|0; + $40 = (($39) + 20|0); + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$41>>2]|0; + $43 = ($42|0)!=(1); + if (!($43)) { + $47 = HEAP32[$0>>2]|0; + $48 = HEAP32[$pE>>2]|0; + $49 = (($48) + 20|0); + $50 = HEAP32[$49>>2]|0; + $51 = (_keyInfoFromExprList($47,$50,0,0)|0); + HEAP32[$pKeyInfo>>2] = $51; + $52 = HEAP32[$v>>2]|0; + $53 = HEAP32[$pFunc>>2]|0; + $54 = (($53) + 12|0); + $55 = HEAP32[$54>>2]|0; + $56 = HEAP32[$pKeyInfo>>2]|0; + (_sqlite3VdbeAddOp4($52,55,$55,0,0,$56,-6)|0); + break; + } + } + $44 = HEAP32[$0>>2]|0; + _sqlite3ErrorMsg($44,31400,$vararg_buffer); + $45 = HEAP32[$pFunc>>2]|0; + $46 = (($45) + 12|0); + HEAP32[$46>>2] = -1; + } + } while(0); + $57 = HEAP32[$i>>2]|0; + $58 = (($57) + 1)|0; + HEAP32[$i>>2] = $58; + $59 = HEAP32[$pFunc>>2]|0; + $60 = (($59) + 16|0); + HEAP32[$pFunc>>2] = $60; + } + STACKTOP = sp;return; +} +function _isSimpleCount($p,$pAggInfo) { + $p = $p|0; + $pAggInfo = $pAggInfo|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $pExpr = 0, $pTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $pTab = sp + 8|0; + $pExpr = sp + 12|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pAggInfo; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 36|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(1); + if (!($10)) { + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 32|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)!=(1); + if (!($15)) { + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 32|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + 8|0); + $20 = (($19) + 20|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)!=(0|0); + if (!($22)) { + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 32|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + 8|0); + $27 = (($26) + 16|0); + $28 = HEAP32[$27>>2]|0; + HEAP32[$pTab>>2] = $28; + $29 = HEAP32[$1>>2]|0; + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + 4|0); + $32 = HEAP32[$31>>2]|0; + $33 = HEAP32[$32>>2]|0; + HEAP32[$pExpr>>2] = $33; + $34 = HEAP32[$pTab>>2]|0; + $35 = (($34) + 44|0); + $36 = HEAP8[$35>>0]|0; + $37 = $36&255; + $38 = $37 & 16; + $39 = ($38|0)!=(0); + if ($39) { + HEAP32[$0>>2] = 0; + $64 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($64|0); + } + $40 = HEAP32[$pExpr>>2]|0; + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = ($42|0)!=(155); + if ($43) { + HEAP32[$0>>2] = 0; + $64 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($64|0); + } + $44 = HEAP32[$2>>2]|0; + $45 = (($44) + 44|0); + $46 = HEAP32[$45>>2]|0; + $47 = ($46|0)==(0); + if ($47) { + HEAP32[$0>>2] = 0; + $64 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($64|0); + } + $48 = HEAP32[$2>>2]|0; + $49 = (($48) + 40|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + 4|0); + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + 2|0); + $54 = HEAP16[$53>>1]|0; + $55 = $54&65535; + $56 = $55 & 256; + $57 = ($56|0)==(0); + if ($57) { + HEAP32[$0>>2] = 0; + $64 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($64|0); + } + $58 = HEAP32[$pExpr>>2]|0; + $59 = (($58) + 4|0); + $60 = HEAP32[$59>>2]|0; + $61 = $60 & 16; + $62 = ($61|0)!=(0); + if ($62) { + HEAP32[$0>>2] = 0; + $64 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($64|0); + } else { + $63 = HEAP32[$pTab>>2]|0; + HEAP32[$0>>2] = $63; + $64 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($64|0); + } + } + } + } + } + HEAP32[$0>>2] = 0; + $64 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($64|0); +} +function _explainSimpleCount($pParse,$pTab,$pIdx) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $pIdx = $pIdx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $bCover = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $zEqp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 28|0; + $1 = sp + 12|0; + $2 = sp + 16|0; + $bCover = sp + 20|0; + $zEqp = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $pIdx; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 450|0); + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = ($6|0)==(2); + if (!($7)) { + STACKTOP = sp;return; + } + $8 = HEAP32[$2>>2]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 44|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = $13 & 32; + $15 = ($14|0)==(0); + if ($15) { + $24 = 1; + } else { + $16 = HEAP32[$2>>2]|0; + $17 = (($16) + 55|0); + $18 = HEAP8[$17>>0]|0; + $19 = $18 & 3; + $20 = $19&255; + $21 = ($20|0)==(2); + $22 = $21 ^ 1; + $24 = $22; + } + } else { + $24 = 0; + } + $23 = $24&1; + HEAP32[$bCover>>2] = $23; + $25 = HEAP32[$0>>2]|0; + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$1>>2]|0; + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$bCover>>2]|0; + $30 = ($29|0)!=(0); + $31 = $30 ? 31376 : 1784; + $32 = HEAP32[$bCover>>2]|0; + $33 = ($32|0)!=(0); + if ($33) { + $34 = HEAP32[$2>>2]|0; + $35 = HEAP32[$34>>2]|0; + $36 = $35; + } else { + $36 = 1784; + } + HEAP32[$vararg_buffer>>2] = $28; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $31; + $vararg_ptr2 = (($vararg_buffer) + 8|0); + HEAP32[$vararg_ptr2>>2] = $36; + $37 = (_sqlite3MPrintf($26,31352,$vararg_buffer)|0); + HEAP32[$zEqp>>2] = $37; + $38 = HEAP32[$0>>2]|0; + $39 = (($38) + 8|0); + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + 464|0); + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$zEqp>>2]|0; + (_sqlite3VdbeAddOp4($40,157,$43,0,0,$44,-1)|0); + STACKTOP = sp;return; +} +function _minMaxQuery($pAggInfo,$ppMinMax) { + $pAggInfo = $pAggInfo|0; + $ppMinMax = $ppMinMax|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $eRet = 0, $pEList = 0, $pExpr = 0, $zFunc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $eRet = sp + 4|0; + $pExpr = sp + 8|0; + $pEList = sp + 12|0; + $zFunc = sp + 16|0; + HEAP32[$0>>2] = $pAggInfo; + HEAP32[$1>>2] = $ppMinMax; + HEAP32[$eRet>>2] = 0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$2>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 44|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)==(1); + do { + if ($6) { + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 40|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$pExpr>>2] = $10; + $11 = HEAP32[$pExpr>>2]|0; + $12 = (($11) + 20|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pEList>>2] = $13; + $14 = HEAP32[$pEList>>2]|0; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = HEAP32[$pEList>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)==(1); + if ($18) { + $19 = HEAP32[$pEList>>2]|0; + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$21>>2]|0; + $23 = HEAP8[$22>>0]|0; + $24 = $23&255; + $25 = ($24|0)==(156); + if ($25) { + $26 = HEAP32[$pExpr>>2]|0; + $27 = (($26) + 8|0); + $28 = HEAP32[$27>>2]|0; + HEAP32[$zFunc>>2] = $28; + $29 = HEAP32[$zFunc>>2]|0; + $30 = (_sqlite3_stricmp($29,14864)|0); + $31 = ($30|0)==(0); + if ($31) { + HEAP32[$eRet>>2] = 1; + $32 = HEAP32[$pEList>>2]|0; + $33 = HEAP32[$1>>2]|0; + HEAP32[$33>>2] = $32; + break; + } + $34 = HEAP32[$zFunc>>2]|0; + $35 = (_sqlite3_stricmp($34,14872)|0); + $36 = ($35|0)==(0); + if ($36) { + HEAP32[$eRet>>2] = 2; + $37 = HEAP32[$pEList>>2]|0; + $38 = HEAP32[$1>>2]|0; + HEAP32[$38>>2] = $37; + } + } + } + } + } + } while(0); + $39 = HEAP32[$eRet>>2]|0; + $40 = $39&255; + STACKTOP = sp;return ($40|0); +} +function _generateSortTail($pParse,$p,$pSort,$nColumn,$pDest) { + $pParse = $pParse|0; + $p = $p|0; + $pSort = $pSort|0; + $nColumn = $nColumn|0; + $pDest = $pDest|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $addr = 0, $addrBreak = 0, $addrContinue = 0, $addrOnce = 0, $eDest = 0, $i = 0, $iParm = 0, $iTab = 0, $nKey = 0, $or$cond = 0, $pOrderBy = 0, $pseudoTab = 0, $ptab2 = 0, $regRow = 0, $regRowid = 0, $regSortOut = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 80|0; + $1 = sp + 76|0; + $2 = sp + 72|0; + $3 = sp + 68|0; + $4 = sp + 64|0; + $v = sp + 60|0; + $addrBreak = sp + 56|0; + $addrContinue = sp + 52|0; + $addr = sp + 48|0; + $addrOnce = sp + 44|0; + $iTab = sp + 40|0; + $pseudoTab = sp + 12|0; + $pOrderBy = sp; + $eDest = sp + 4|0; + $iParm = sp + 8|0; + $regRow = sp + 16|0; + $regRowid = sp + 20|0; + $nKey = sp + 24|0; + $regSortOut = sp + 28|0; + $ptab2 = sp + 32|0; + $i = sp + 36|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pSort; + HEAP32[$3>>2] = $nColumn; + HEAP32[$4>>2] = $pDest; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 8|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$v>>2] = $7; + $8 = HEAP32[$v>>2]|0; + $9 = (_sqlite3VdbeMakeLabel($8)|0); + HEAP32[$addrBreak>>2] = $9; + $10 = HEAP32[$v>>2]|0; + $11 = (_sqlite3VdbeMakeLabel($10)|0); + HEAP32[$addrContinue>>2] = $11; + HEAP32[$addrOnce>>2] = 0; + HEAP32[$pseudoTab>>2] = 0; + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$12>>2]|0; + HEAP32[$pOrderBy>>2] = $13; + $14 = HEAP32[$4>>2]|0; + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + HEAP32[$eDest>>2] = $16; + $17 = HEAP32[$4>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$iParm>>2] = $19; + $20 = HEAP32[$2>>2]|0; + $21 = (($20) + 16|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)!=(0); + if ($23) { + $24 = HEAP32[$v>>2]|0; + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 12|0); + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$2>>2]|0; + $29 = (($28) + 16|0); + $30 = HEAP32[$29>>2]|0; + (_sqlite3VdbeAddOp2($24,17,$27,$30)|0); + $31 = HEAP32[$v>>2]|0; + $32 = HEAP32[$addrBreak>>2]|0; + (_sqlite3VdbeAddOp2($31,16,0,$32)|0); + $33 = HEAP32[$v>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = (($34) + 16|0); + $36 = HEAP32[$35>>2]|0; + _sqlite3VdbeResolveLabel($33,$36); + $37 = HEAP32[$0>>2]|0; + $38 = (_sqlite3CodeOnce($37)|0); + HEAP32[$addrOnce>>2] = $38; + } + $39 = HEAP32[$2>>2]|0; + $40 = (($39) + 8|0); + $41 = HEAP32[$40>>2]|0; + HEAP32[$iTab>>2] = $41; + $42 = HEAP32[$0>>2]|0; + $43 = (_sqlite3GetTempReg($42)|0); + HEAP32[$regRow>>2] = $43; + $44 = HEAP32[$eDest>>2]|0; + $45 = ($44|0)==(9); + $46 = HEAP32[$eDest>>2]|0; + $47 = ($46|0)==(13); + $or$cond = $45 | $47; + $48 = HEAP32[$0>>2]|0; + if ($or$cond) { + $49 = (($48) + 68|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + 1)|0; + HEAP32[$49>>2] = $51; + HEAP32[$pseudoTab>>2] = $50; + $52 = HEAP32[$v>>2]|0; + $53 = HEAP32[$pseudoTab>>2]|0; + $54 = HEAP32[$regRow>>2]|0; + $55 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp3($52,57,$53,$54,$55)|0); + HEAP32[$regRowid>>2] = 0; + } else { + $56 = (_sqlite3GetTempReg($48)|0); + HEAP32[$regRowid>>2] = $56; + } + $57 = HEAP32[$pOrderBy>>2]|0; + $58 = HEAP32[$57>>2]|0; + $59 = HEAP32[$2>>2]|0; + $60 = (($59) + 4|0); + $61 = HEAP32[$60>>2]|0; + $62 = (($58) - ($61))|0; + HEAP32[$nKey>>2] = $62; + $63 = HEAP32[$2>>2]|0; + $64 = (($63) + 24|0); + $65 = HEAP8[$64>>0]|0; + $66 = $65&255; + $67 = $66 & 1; + $68 = ($67|0)!=(0); + if ($68) { + $69 = HEAP32[$0>>2]|0; + $70 = (($69) + 72|0); + $71 = HEAP32[$70>>2]|0; + $72 = (($71) + 1)|0; + HEAP32[$70>>2] = $72; + HEAP32[$regSortOut>>2] = $72; + $73 = HEAP32[$0>>2]|0; + $74 = (($73) + 68|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($75) + 1)|0; + HEAP32[$74>>2] = $76; + HEAP32[$ptab2>>2] = $75; + $77 = HEAP32[$v>>2]|0; + $78 = HEAP32[$ptab2>>2]|0; + $79 = HEAP32[$regSortOut>>2]|0; + $80 = HEAP32[$nKey>>2]|0; + $81 = (($80) + 2)|0; + (_sqlite3VdbeAddOp3($77,57,$78,$79,$81)|0); + $82 = HEAP32[$addrOnce>>2]|0; + $83 = ($82|0)!=(0); + if ($83) { + $84 = HEAP32[$v>>2]|0; + $85 = HEAP32[$addrOnce>>2]|0; + _sqlite3VdbeJumpHere($84,$85); + } + $86 = HEAP32[$v>>2]|0; + $87 = HEAP32[$iTab>>2]|0; + $88 = HEAP32[$addrBreak>>2]|0; + $89 = (_sqlite3VdbeAddOp2($86,103,$87,$88)|0); + $90 = (1 + ($89))|0; + HEAP32[$addr>>2] = $90; + $91 = HEAP32[$v>>2]|0; + $92 = HEAP32[$1>>2]|0; + $93 = (($92) + 12|0); + $94 = HEAP32[$93>>2]|0; + $95 = HEAP32[$addrContinue>>2]|0; + _codeOffset($91,$94,$95); + $96 = HEAP32[$v>>2]|0; + $97 = HEAP32[$iTab>>2]|0; + $98 = HEAP32[$regSortOut>>2]|0; + (_sqlite3VdbeAddOp2($96,95,$97,$98)|0); + $99 = HEAP32[$v>>2]|0; + $100 = HEAP32[$ptab2>>2]|0; + $101 = HEAP32[$nKey>>2]|0; + $102 = (($101) + 1)|0; + $103 = HEAP32[$regRow>>2]|0; + (_sqlite3VdbeAddOp3($99,46,$100,$102,$103)|0); + $104 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($104,32); + } else { + $105 = HEAP32[$addrOnce>>2]|0; + $106 = ($105|0)!=(0); + if ($106) { + $107 = HEAP32[$v>>2]|0; + $108 = HEAP32[$addrOnce>>2]|0; + _sqlite3VdbeJumpHere($107,$108); + } + $109 = HEAP32[$v>>2]|0; + $110 = HEAP32[$iTab>>2]|0; + $111 = HEAP32[$addrBreak>>2]|0; + $112 = (_sqlite3VdbeAddOp2($109,104,$110,$111)|0); + $113 = (1 + ($112))|0; + HEAP32[$addr>>2] = $113; + $114 = HEAP32[$v>>2]|0; + $115 = HEAP32[$1>>2]|0; + $116 = (($115) + 12|0); + $117 = HEAP32[$116>>2]|0; + $118 = HEAP32[$addrContinue>>2]|0; + _codeOffset($114,$117,$118); + $119 = HEAP32[$v>>2]|0; + $120 = HEAP32[$iTab>>2]|0; + $121 = HEAP32[$nKey>>2]|0; + $122 = (($121) + 1)|0; + $123 = HEAP32[$regRow>>2]|0; + (_sqlite3VdbeAddOp3($119,46,$120,$122,$123)|0); + } + $124 = HEAP32[$eDest>>2]|0; + do { + if ((($124|0) == 12) | (($124|0) == 14)) { + $125 = HEAP32[$v>>2]|0; + $126 = HEAP32[$iParm>>2]|0; + $127 = HEAP32[$regRowid>>2]|0; + (_sqlite3VdbeAddOp2($125,69,$126,$127)|0); + $128 = HEAP32[$v>>2]|0; + $129 = HEAP32[$iParm>>2]|0; + $130 = HEAP32[$regRow>>2]|0; + $131 = HEAP32[$regRowid>>2]|0; + (_sqlite3VdbeAddOp3($128,70,$129,$130,$131)|0); + $132 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($132,8); + } else if ((($124|0) == 10)) { + $143 = HEAP32[$0>>2]|0; + $144 = HEAP32[$regRow>>2]|0; + $145 = HEAP32[$iParm>>2]|0; + _sqlite3ExprCodeMove($143,$144,$145,1); + } else if ((($124|0) == 11)) { + $133 = HEAP32[$v>>2]|0; + $134 = HEAP32[$regRow>>2]|0; + $135 = HEAP32[$regRowid>>2]|0; + $136 = HEAP32[$4>>2]|0; + $137 = (($136) + 1|0); + (_sqlite3VdbeAddOp4($133,48,$134,1,$135,$137,1)|0); + $138 = HEAP32[$0>>2]|0; + $139 = HEAP32[$regRow>>2]|0; + _sqlite3ExprCacheAffinityChange($138,$139,1); + $140 = HEAP32[$v>>2]|0; + $141 = HEAP32[$iParm>>2]|0; + $142 = HEAP32[$regRowid>>2]|0; + (_sqlite3VdbeAddOp2($140,107,$141,$142)|0); + } else { + HEAP32[$i>>2] = 0; + while(1) { + $146 = HEAP32[$i>>2]|0; + $147 = HEAP32[$3>>2]|0; + $148 = ($146|0)<($147|0); + if (!($148)) { + break; + } + $149 = HEAP32[$v>>2]|0; + $150 = HEAP32[$pseudoTab>>2]|0; + $151 = HEAP32[$i>>2]|0; + $152 = HEAP32[$4>>2]|0; + $153 = (($152) + 8|0); + $154 = HEAP32[$153>>2]|0; + $155 = HEAP32[$i>>2]|0; + $156 = (($154) + ($155))|0; + (_sqlite3VdbeAddOp3($149,46,$150,$151,$156)|0); + $157 = HEAP32[$i>>2]|0; + $158 = ($157|0)==(0); + if ($158) { + $159 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($159,32); + } + $160 = HEAP32[$i>>2]|0; + $161 = (($160) + 1)|0; + HEAP32[$i>>2] = $161; + } + $162 = HEAP32[$eDest>>2]|0; + $163 = ($162|0)==(9); + $164 = HEAP32[$v>>2]|0; + $165 = HEAP32[$4>>2]|0; + if ($163) { + $166 = (($165) + 8|0); + $167 = HEAP32[$166>>2]|0; + $168 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp2($164,35,$167,$168)|0); + $169 = HEAP32[$0>>2]|0; + $170 = HEAP32[$4>>2]|0; + $171 = (($170) + 8|0); + $172 = HEAP32[$171>>2]|0; + $173 = HEAP32[$3>>2]|0; + _sqlite3ExprCacheAffinityChange($169,$172,$173); + break; + } else { + $174 = (($165) + 4|0); + $175 = HEAP32[$174>>2]|0; + (_sqlite3VdbeAddOp1($164,22,$175)|0); + break; + } + } + } while(0); + $176 = HEAP32[$0>>2]|0; + $177 = HEAP32[$regRow>>2]|0; + _sqlite3ReleaseTempReg($176,$177); + $178 = HEAP32[$0>>2]|0; + $179 = HEAP32[$regRowid>>2]|0; + _sqlite3ReleaseTempReg($178,$179); + $180 = HEAP32[$v>>2]|0; + $181 = HEAP32[$addrContinue>>2]|0; + _sqlite3VdbeResolveLabel($180,$181); + $182 = HEAP32[$2>>2]|0; + $183 = (($182) + 24|0); + $184 = HEAP8[$183>>0]|0; + $185 = $184&255; + $186 = $185 & 1; + $187 = ($186|0)!=(0); + $188 = HEAP32[$v>>2]|0; + $189 = HEAP32[$iTab>>2]|0; + $190 = HEAP32[$addr>>2]|0; + if ($187) { + (_sqlite3VdbeAddOp2($188,5,$189,$190)|0); + } else { + (_sqlite3VdbeAddOp2($188,9,$189,$190)|0); + } + $191 = HEAP32[$2>>2]|0; + $192 = (($191) + 12|0); + $193 = HEAP32[$192>>2]|0; + $194 = ($193|0)!=(0); + if (!($194)) { + $199 = HEAP32[$v>>2]|0; + $200 = HEAP32[$addrBreak>>2]|0; + _sqlite3VdbeResolveLabel($199,$200); + STACKTOP = sp;return; + } + $195 = HEAP32[$v>>2]|0; + $196 = HEAP32[$2>>2]|0; + $197 = (($196) + 12|0); + $198 = HEAP32[$197>>2]|0; + (_sqlite3VdbeAddOp1($195,18,$198)|0); + $199 = HEAP32[$v>>2]|0; + $200 = HEAP32[$addrBreak>>2]|0; + _sqlite3VdbeResolveLabel($199,$200); + STACKTOP = sp;return; +} +function _generateColumnNames($pParse,$pTabList,$pEList) { + $pParse = $pParse|0; + $pTabList = $pTabList|0; + $pEList = $pEList|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; + var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; + var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; + var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $fullNames = 0, $i = 0, $iCol = 0, $j = 0, $p = 0, $pTab = 0; + var $shortNames = 0, $v = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $z = 0, $zCol = 0, $zName = 0, $zName1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer2 = sp; + $0 = sp + 64|0; + $1 = sp + 60|0; + $2 = sp + 56|0; + $v = sp + 52|0; + $i = sp + 48|0; + $j = sp + 44|0; + $db = sp + 40|0; + $fullNames = sp + 68|0; + $shortNames = sp + 28|0; + $p = sp + 24|0; + $zName = sp + 20|0; + $pTab = sp + 16|0; + $zCol = sp + 12|0; + $iCol = sp + 8|0; + $zName1 = sp + 32|0; + $z = sp + 36|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTabList; + HEAP32[$2>>2] = $pEList; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$v>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$db>>2] = $7; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 450|0); + $10 = HEAP8[$9>>0]|0; + $11 = ($10<<24>>24)!=(0); + if ($11) { + STACKTOP = sp;return; + } + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 16|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = ($15|0)!=(0); + if ($16) { + STACKTOP = sp;return; + } + $17 = HEAP32[$v>>2]|0; + $18 = ($17|0)==(0|0); + if ($18) { + STACKTOP = sp;return; + } + $19 = HEAP32[$db>>2]|0; + $20 = (($19) + 64|0); + $21 = HEAP8[$20>>0]|0; + $22 = $21&255; + $23 = ($22|0)!=(0); + if ($23) { + STACKTOP = sp;return; + } + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 16|0); + HEAP8[$25>>0] = 1; + $26 = HEAP32[$db>>2]|0; + $27 = (($26) + 24|0); + $28 = HEAP32[$27>>2]|0; + $29 = $28 & 32; + $30 = ($29|0)!=(0); + $31 = $30&1; + HEAP32[$fullNames>>2] = $31; + $32 = HEAP32[$db>>2]|0; + $33 = (($32) + 24|0); + $34 = HEAP32[$33>>2]|0; + $35 = $34 & 64; + $36 = ($35|0)!=(0); + $37 = $36&1; + HEAP32[$shortNames>>2] = $37; + $38 = HEAP32[$v>>2]|0; + $39 = HEAP32[$2>>2]|0; + $40 = HEAP32[$39>>2]|0; + _sqlite3VdbeSetNumCols($38,$40); + HEAP32[$i>>2] = 0; + while(1) { + $41 = HEAP32[$i>>2]|0; + $42 = HEAP32[$2>>2]|0; + $43 = HEAP32[$42>>2]|0; + $44 = ($41|0)<($43|0); + if (!($44)) { + break; + } + $45 = HEAP32[$i>>2]|0; + $46 = HEAP32[$2>>2]|0; + $47 = (($46) + 4|0); + $48 = HEAP32[$47>>2]|0; + $49 = (($48) + (($45*20)|0)|0); + $50 = HEAP32[$49>>2]|0; + HEAP32[$p>>2] = $50; + $51 = HEAP32[$p>>2]|0; + $52 = ($51|0)==(0|0); + do { + if (!($52)) { + $53 = HEAP32[$i>>2]|0; + $54 = HEAP32[$2>>2]|0; + $55 = (($54) + 4|0); + $56 = HEAP32[$55>>2]|0; + $57 = (($56) + (($53*20)|0)|0); + $58 = (($57) + 4|0); + $59 = HEAP32[$58>>2]|0; + $60 = ($59|0)!=(0|0); + if ($60) { + $61 = HEAP32[$i>>2]|0; + $62 = HEAP32[$2>>2]|0; + $63 = (($62) + 4|0); + $64 = HEAP32[$63>>2]|0; + $65 = (($64) + (($61*20)|0)|0); + $66 = (($65) + 4|0); + $67 = HEAP32[$66>>2]|0; + HEAP32[$zName>>2] = $67; + $68 = HEAP32[$v>>2]|0; + $69 = HEAP32[$i>>2]|0; + $70 = HEAP32[$zName>>2]|0; + (_sqlite3VdbeSetColName($68,$69,0,$70,(-1))|0); + break; + } + $71 = HEAP32[$p>>2]|0; + $72 = HEAP8[$71>>0]|0; + $73 = $72&255; + $74 = ($73|0)==(154); + if ($74) { + label = 12; + } else { + $75 = HEAP32[$p>>2]|0; + $76 = HEAP8[$75>>0]|0; + $77 = $76&255; + $78 = ($77|0)==(156); + if ($78) { + label = 12; + } + } + if ((label|0) == 12) { + label = 0; + $79 = HEAP32[$1>>2]|0; + $80 = ($79|0)!=(0|0); + if ($80) { + $81 = HEAP32[$p>>2]|0; + $82 = (($81) + 32|0); + $83 = HEAP16[$82>>1]|0; + $84 = $83 << 16 >> 16; + HEAP32[$iCol>>2] = $84; + HEAP32[$j>>2] = 0; + while(1) { + $85 = HEAP32[$j>>2]|0; + $86 = HEAP32[$1>>2]|0; + $87 = HEAP32[$86>>2]|0; + $88 = ($85|0)<($87|0); + if (!($88)) { + break; + } + $89 = HEAP32[$j>>2]|0; + $90 = HEAP32[$1>>2]|0; + $91 = (($90) + 8|0); + $92 = (($91) + (($89*72)|0)|0); + $93 = (($92) + 40|0); + $94 = HEAP32[$93>>2]|0; + $95 = HEAP32[$p>>2]|0; + $96 = (($95) + 28|0); + $97 = HEAP32[$96>>2]|0; + $98 = ($94|0)==($97|0); + if ($98) { + break; + } + $99 = HEAP32[$j>>2]|0; + $100 = (($99) + 1)|0; + HEAP32[$j>>2] = $100; + } + $101 = HEAP32[$j>>2]|0; + $102 = HEAP32[$1>>2]|0; + $103 = (($102) + 8|0); + $104 = (($103) + (($101*72)|0)|0); + $105 = (($104) + 16|0); + $106 = HEAP32[$105>>2]|0; + HEAP32[$pTab>>2] = $106; + $107 = HEAP32[$iCol>>2]|0; + $108 = ($107|0)<(0); + if ($108) { + $109 = HEAP32[$pTab>>2]|0; + $110 = (($109) + 36|0); + $111 = HEAP16[$110>>1]|0; + $112 = $111 << 16 >> 16; + HEAP32[$iCol>>2] = $112; + } + $113 = HEAP32[$iCol>>2]|0; + $114 = ($113|0)<(0); + if ($114) { + HEAP32[$zCol>>2] = 8848; + } else { + $115 = HEAP32[$iCol>>2]|0; + $116 = HEAP32[$pTab>>2]|0; + $117 = (($116) + 4|0); + $118 = HEAP32[$117>>2]|0; + $119 = (($118) + (($115*24)|0)|0); + $120 = HEAP32[$119>>2]|0; + HEAP32[$zCol>>2] = $120; + } + $121 = HEAP32[$shortNames>>2]|0; + $122 = ($121|0)!=(0); + if (!($122)) { + $123 = HEAP32[$fullNames>>2]|0; + $124 = ($123|0)!=(0); + if (!($124)) { + $125 = HEAP32[$v>>2]|0; + $126 = HEAP32[$i>>2]|0; + $127 = HEAP32[$db>>2]|0; + $128 = HEAP32[$i>>2]|0; + $129 = HEAP32[$2>>2]|0; + $130 = (($129) + 4|0); + $131 = HEAP32[$130>>2]|0; + $132 = (($131) + (($128*20)|0)|0); + $133 = (($132) + 8|0); + $134 = HEAP32[$133>>2]|0; + $135 = (_sqlite3DbStrDup($127,$134)|0); + (_sqlite3VdbeSetColName($125,$126,0,$135,39)|0); + break; + } + } + $136 = HEAP32[$fullNames>>2]|0; + $137 = ($136|0)!=(0); + if ($137) { + HEAP32[$zName1>>2] = 0; + $138 = HEAP32[$db>>2]|0; + $139 = HEAP32[$pTab>>2]|0; + $140 = HEAP32[$139>>2]|0; + $141 = HEAP32[$zCol>>2]|0; + HEAP32[$vararg_buffer2>>2] = $140; + $vararg_ptr1 = (($vararg_buffer2) + 4|0); + HEAP32[$vararg_ptr1>>2] = $141; + $142 = (_sqlite3MPrintf($138,23968,$vararg_buffer2)|0); + HEAP32[$zName1>>2] = $142; + $143 = HEAP32[$v>>2]|0; + $144 = HEAP32[$i>>2]|0; + $145 = HEAP32[$zName1>>2]|0; + (_sqlite3VdbeSetColName($143,$144,0,$145,39)|0); + break; + } else { + $146 = HEAP32[$v>>2]|0; + $147 = HEAP32[$i>>2]|0; + $148 = HEAP32[$zCol>>2]|0; + (_sqlite3VdbeSetColName($146,$147,0,$148,(-1))|0); + break; + } + } + } + $149 = HEAP32[$i>>2]|0; + $150 = HEAP32[$2>>2]|0; + $151 = (($150) + 4|0); + $152 = HEAP32[$151>>2]|0; + $153 = (($152) + (($149*20)|0)|0); + $154 = (($153) + 8|0); + $155 = HEAP32[$154>>2]|0; + HEAP32[$z>>2] = $155; + $156 = HEAP32[$z>>2]|0; + $157 = ($156|0)==(0|0); + $158 = HEAP32[$db>>2]|0; + if ($157) { + $159 = HEAP32[$i>>2]|0; + $160 = (($159) + 1)|0; + HEAP32[$vararg_buffer2>>2] = $160; + $161 = (_sqlite3MPrintf($158,31336,$vararg_buffer2)|0); + $164 = $161; + } else { + $162 = HEAP32[$z>>2]|0; + $163 = (_sqlite3DbStrDup($158,$162)|0); + $164 = $163; + } + HEAP32[$z>>2] = $164; + $165 = HEAP32[$v>>2]|0; + $166 = HEAP32[$i>>2]|0; + $167 = HEAP32[$z>>2]|0; + (_sqlite3VdbeSetColName($165,$166,0,$167,39)|0); + } + } while(0); + $168 = HEAP32[$i>>2]|0; + $169 = (($168) + 1)|0; + HEAP32[$i>>2] = $169; + } + $170 = HEAP32[$0>>2]|0; + $171 = HEAP32[$1>>2]|0; + $172 = HEAP32[$2>>2]|0; + _generateColumnTypes($170,$171,$172); + STACKTOP = sp;return; +} +function _generateColumnTypes($pParse,$pTabList,$pEList) { + $pParse = $pParse|0; + $pTabList = $pTabList|0; + $pEList = $pEList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, $sNC = 0, $v = 0, $zType = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 56|0; + $1 = sp; + $2 = sp + 4|0; + $v = sp + 8|0; + $i = sp + 12|0; + $sNC = sp + 16|0; + $p = sp + 48|0; + $zType = sp + 52|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTabList; + HEAP32[$2>>2] = $pEList; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$v>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = (($sNC) + 4|0); + HEAP32[$7>>2] = $6; + $8 = HEAP32[$0>>2]|0; + HEAP32[$sNC>>2] = $8; + HEAP32[$i>>2] = 0; + while(1) { + $9 = HEAP32[$i>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = ($9|0)<($11|0); + if (!($12)) { + break; + } + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + (($13*20)|0)|0); + $18 = HEAP32[$17>>2]|0; + HEAP32[$p>>2] = $18; + $19 = HEAP32[$p>>2]|0; + $20 = (_columnTypeImpl($sNC,$19,0)|0); + HEAP32[$zType>>2] = $20; + $21 = HEAP32[$v>>2]|0; + $22 = HEAP32[$i>>2]|0; + $23 = HEAP32[$zType>>2]|0; + (_sqlite3VdbeSetColName($21,$22,1,$23,(-1))|0); + $24 = HEAP32[$i>>2]|0; + $25 = (($24) + 1)|0; + HEAP32[$i>>2] = $25; + } + STACKTOP = sp;return; +} +function _codeOffset($v,$iOffset,$iContinue) { + $v = $v|0; + $iOffset = $iOffset|0; + $iContinue = $iContinue|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $addr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $addr = sp + 8|0; + HEAP32[$0>>2] = $v; + HEAP32[$1>>2] = $iOffset; + HEAP32[$2>>2] = $iContinue; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)>(0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + (_sqlite3VdbeAddOp2($5,37,$6,-1)|0); + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (_sqlite3VdbeAddOp1($7,135,$8)|0); + HEAP32[$addr>>2] = $9; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$2>>2]|0; + (_sqlite3VdbeAddOp2($10,16,0,$11)|0); + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$addr>>2]|0; + _sqlite3VdbeJumpHere($12,$13); + STACKTOP = sp;return; +} +function _codeDistinct($pParse,$iTab,$addrRepeat,$N,$iMem) { + $pParse = $pParse|0; + $iTab = $iTab|0; + $addrRepeat = $addrRepeat|0; + $N = $N|0; + $iMem = $iMem|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $r1 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $v = sp + 16|0; + $r1 = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $iTab; + HEAP32[$2>>2] = $addrRepeat; + HEAP32[$3>>2] = $N; + HEAP32[$4>>2] = $iMem; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 8|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$v>>2] = $7; + $8 = HEAP32[$0>>2]|0; + $9 = (_sqlite3GetTempReg($8)|0); + HEAP32[$r1>>2] = $9; + $10 = HEAP32[$v>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$4>>2]|0; + $14 = HEAP32[$3>>2]|0; + (_sqlite3VdbeAddOp4Int($10,66,$11,$12,$13,$14)|0); + $15 = HEAP32[$v>>2]|0; + $16 = HEAP32[$4>>2]|0; + $17 = HEAP32[$3>>2]|0; + $18 = HEAP32[$r1>>2]|0; + (_sqlite3VdbeAddOp3($15,48,$16,$17,$18)|0); + $19 = HEAP32[$v>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$r1>>2]|0; + (_sqlite3VdbeAddOp2($19,107,$20,$21)|0); + $22 = HEAP32[$0>>2]|0; + $23 = HEAP32[$r1>>2]|0; + _sqlite3ReleaseTempReg($22,$23); + STACKTOP = sp;return; +} +function _analyzeAggregate($pWalker,$pExpr) { + $pWalker = $pWalker|0; + $pExpr = $pExpr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $enc = 0, $i = 0, $j = 0, $k = 0, $n = 0, $pAggInfo = 0, $pCol = 0, $pE = 0; + var $pGB = 0, $pItem = 0, $pItem1 = 0, $pNC = 0, $pParse = 0, $pSrcList = 0, $pTerm = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 32|0; + $1 = sp + 64|0; + $2 = sp + 60|0; + $i = sp + 56|0; + $pNC = sp + 52|0; + $pParse = sp + 48|0; + $pSrcList = sp + 44|0; + $pAggInfo = sp + 40|0; + $pItem = sp + 36|0; + $pCol = sp + 28|0; + $k = sp + 24|0; + $j = sp + 20|0; + $n = sp + 16|0; + $pGB = sp + 12|0; + $pTerm = sp + 8|0; + $pE = sp + 4|0; + $pItem1 = sp; + $enc = sp + 68|0; + HEAP32[$1>>2] = $pWalker; + HEAP32[$2>>2] = $pExpr; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 20|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pNC>>2] = $5; + $6 = HEAP32[$pNC>>2]|0; + $7 = HEAP32[$6>>2]|0; + HEAP32[$pParse>>2] = $7; + $8 = HEAP32[$pNC>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$pSrcList>>2] = $10; + $11 = HEAP32[$pNC>>2]|0; + $12 = (($11) + 12|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pAggInfo>>2] = $13; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + if ((($16|0) == 154) | (($16|0) == 156)) { + $17 = HEAP32[$pSrcList>>2]|0; + $18 = ($17|0)!=(0|0); + L3: do { + if ($18) { + $19 = HEAP32[$pSrcList>>2]|0; + $20 = (($19) + 8|0); + HEAP32[$pItem>>2] = $20; + HEAP32[$i>>2] = 0; + while(1) { + $21 = HEAP32[$i>>2]|0; + $22 = HEAP32[$pSrcList>>2]|0; + $23 = HEAP32[$22>>2]|0; + $24 = ($21|0)<($23|0); + if (!($24)) { + break L3; + } + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 28|0); + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$pItem>>2]|0; + $29 = (($28) + 40|0); + $30 = HEAP32[$29>>2]|0; + $31 = ($27|0)==($30|0); + if ($31) { + break; + } + $162 = HEAP32[$i>>2]|0; + $163 = (($162) + 1)|0; + HEAP32[$i>>2] = $163; + $164 = HEAP32[$pItem>>2]|0; + $165 = (($164) + 72|0); + HEAP32[$pItem>>2] = $165; + } + $32 = HEAP32[$pAggInfo>>2]|0; + $33 = (($32) + 28|0); + $34 = HEAP32[$33>>2]|0; + HEAP32[$pCol>>2] = $34; + HEAP32[$k>>2] = 0; + while(1) { + $35 = HEAP32[$k>>2]|0; + $36 = HEAP32[$pAggInfo>>2]|0; + $37 = (($36) + 32|0); + $38 = HEAP32[$37>>2]|0; + $39 = ($35|0)<($38|0); + if (!($39)) { + break; + } + $40 = HEAP32[$pCol>>2]|0; + $41 = (($40) + 4|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$2>>2]|0; + $44 = (($43) + 28|0); + $45 = HEAP32[$44>>2]|0; + $46 = ($42|0)==($45|0); + if ($46) { + $47 = HEAP32[$pCol>>2]|0; + $48 = (($47) + 8|0); + $49 = HEAP32[$48>>2]|0; + $50 = HEAP32[$2>>2]|0; + $51 = (($50) + 32|0); + $52 = HEAP16[$51>>1]|0; + $53 = $52 << 16 >> 16; + $54 = ($49|0)==($53|0); + if ($54) { + break; + } + } + $55 = HEAP32[$k>>2]|0; + $56 = (($55) + 1)|0; + HEAP32[$k>>2] = $56; + $57 = HEAP32[$pCol>>2]|0; + $58 = (($57) + 24|0); + HEAP32[$pCol>>2] = $58; + } + $59 = HEAP32[$k>>2]|0; + $60 = HEAP32[$pAggInfo>>2]|0; + $61 = (($60) + 32|0); + $62 = HEAP32[$61>>2]|0; + $63 = ($59|0)>=($62|0); + if ($63) { + $64 = HEAP32[$pParse>>2]|0; + $65 = HEAP32[$64>>2]|0; + $66 = HEAP32[$pAggInfo>>2]|0; + $67 = (_addAggInfoColumn($65,$66)|0); + HEAP32[$k>>2] = $67; + $68 = ($67|0)>=(0); + if ($68) { + $69 = HEAP32[$k>>2]|0; + $70 = HEAP32[$pAggInfo>>2]|0; + $71 = (($70) + 28|0); + $72 = HEAP32[$71>>2]|0; + $73 = (($72) + (($69*24)|0)|0); + HEAP32[$pCol>>2] = $73; + $74 = HEAP32[$2>>2]|0; + $75 = (($74) + 44|0); + $76 = HEAP32[$75>>2]|0; + $77 = HEAP32[$pCol>>2]|0; + HEAP32[$77>>2] = $76; + $78 = HEAP32[$2>>2]|0; + $79 = (($78) + 28|0); + $80 = HEAP32[$79>>2]|0; + $81 = HEAP32[$pCol>>2]|0; + $82 = (($81) + 4|0); + HEAP32[$82>>2] = $80; + $83 = HEAP32[$2>>2]|0; + $84 = (($83) + 32|0); + $85 = HEAP16[$84>>1]|0; + $86 = $85 << 16 >> 16; + $87 = HEAP32[$pCol>>2]|0; + $88 = (($87) + 8|0); + HEAP32[$88>>2] = $86; + $89 = HEAP32[$pParse>>2]|0; + $90 = (($89) + 72|0); + $91 = HEAP32[$90>>2]|0; + $92 = (($91) + 1)|0; + HEAP32[$90>>2] = $92; + $93 = HEAP32[$pCol>>2]|0; + $94 = (($93) + 16|0); + HEAP32[$94>>2] = $92; + $95 = HEAP32[$pCol>>2]|0; + $96 = (($95) + 12|0); + HEAP32[$96>>2] = -1; + $97 = HEAP32[$2>>2]|0; + $98 = HEAP32[$pCol>>2]|0; + $99 = (($98) + 20|0); + HEAP32[$99>>2] = $97; + $100 = HEAP32[$pAggInfo>>2]|0; + $101 = (($100) + 24|0); + $102 = HEAP32[$101>>2]|0; + $103 = ($102|0)!=(0|0); + L20: do { + if ($103) { + $104 = HEAP32[$pAggInfo>>2]|0; + $105 = (($104) + 24|0); + $106 = HEAP32[$105>>2]|0; + HEAP32[$pGB>>2] = $106; + $107 = HEAP32[$pGB>>2]|0; + $108 = (($107) + 4|0); + $109 = HEAP32[$108>>2]|0; + HEAP32[$pTerm>>2] = $109; + $110 = HEAP32[$pGB>>2]|0; + $111 = HEAP32[$110>>2]|0; + HEAP32[$n>>2] = $111; + HEAP32[$j>>2] = 0; + while(1) { + $112 = HEAP32[$j>>2]|0; + $113 = HEAP32[$n>>2]|0; + $114 = ($112|0)<($113|0); + if (!($114)) { + break L20; + } + $115 = HEAP32[$pTerm>>2]|0; + $116 = HEAP32[$115>>2]|0; + HEAP32[$pE>>2] = $116; + $117 = HEAP32[$pE>>2]|0; + $118 = HEAP8[$117>>0]|0; + $119 = $118&255; + $120 = ($119|0)==(154); + if ($120) { + $121 = HEAP32[$pE>>2]|0; + $122 = (($121) + 28|0); + $123 = HEAP32[$122>>2]|0; + $124 = HEAP32[$2>>2]|0; + $125 = (($124) + 28|0); + $126 = HEAP32[$125>>2]|0; + $127 = ($123|0)==($126|0); + if ($127) { + $128 = HEAP32[$pE>>2]|0; + $129 = (($128) + 32|0); + $130 = HEAP16[$129>>1]|0; + $131 = $130 << 16 >> 16; + $132 = HEAP32[$2>>2]|0; + $133 = (($132) + 32|0); + $134 = HEAP16[$133>>1]|0; + $135 = $134 << 16 >> 16; + $136 = ($131|0)==($135|0); + if ($136) { + break; + } + } + } + $140 = HEAP32[$j>>2]|0; + $141 = (($140) + 1)|0; + HEAP32[$j>>2] = $141; + $142 = HEAP32[$pTerm>>2]|0; + $143 = (($142) + 20|0); + HEAP32[$pTerm>>2] = $143; + } + $137 = HEAP32[$j>>2]|0; + $138 = HEAP32[$pCol>>2]|0; + $139 = (($138) + 12|0); + HEAP32[$139>>2] = $137; + } + } while(0); + $144 = HEAP32[$pCol>>2]|0; + $145 = (($144) + 12|0); + $146 = HEAP32[$145>>2]|0; + $147 = ($146|0)<(0); + if ($147) { + $148 = HEAP32[$pAggInfo>>2]|0; + $149 = (($148) + 12|0); + $150 = HEAP32[$149>>2]|0; + $151 = (($150) + 1)|0; + HEAP32[$149>>2] = $151; + $152 = HEAP32[$pCol>>2]|0; + $153 = (($152) + 12|0); + HEAP32[$153>>2] = $150; + } + } + } + $154 = HEAP32[$pAggInfo>>2]|0; + $155 = HEAP32[$2>>2]|0; + $156 = (($155) + 40|0); + HEAP32[$156>>2] = $154; + $157 = HEAP32[$2>>2]|0; + HEAP8[$157>>0] = -100; + $158 = HEAP32[$k>>2]|0; + $159 = $158&65535; + $160 = HEAP32[$2>>2]|0; + $161 = (($160) + 34|0); + HEAP16[$161>>1] = $159; + } + } while(0); + HEAP32[$0>>2] = 1; + $271 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($271|0); + } else if ((($16|0) == 155)) { + $166 = HEAP32[$pNC>>2]|0; + $167 = (($166) + 28|0); + $168 = HEAP8[$167>>0]|0; + $169 = $168&255; + $170 = $169 & 8; + $171 = ($170|0)==(0); + if ($171) { + $172 = HEAP32[$1>>2]|0; + $173 = (($172) + 16|0); + $174 = HEAP32[$173>>2]|0; + $175 = HEAP32[$2>>2]|0; + $176 = (($175) + 38|0); + $177 = HEAP8[$176>>0]|0; + $178 = $177&255; + $179 = ($174|0)==($178|0); + if ($179) { + $180 = HEAP32[$pAggInfo>>2]|0; + $181 = (($180) + 40|0); + $182 = HEAP32[$181>>2]|0; + HEAP32[$pItem1>>2] = $182; + HEAP32[$i>>2] = 0; + while(1) { + $183 = HEAP32[$i>>2]|0; + $184 = HEAP32[$pAggInfo>>2]|0; + $185 = (($184) + 44|0); + $186 = HEAP32[$185>>2]|0; + $187 = ($183|0)<($186|0); + if (!($187)) { + break; + } + $188 = HEAP32[$pItem1>>2]|0; + $189 = HEAP32[$188>>2]|0; + $190 = HEAP32[$2>>2]|0; + $191 = (_sqlite3ExprCompare($189,$190,-1)|0); + $192 = ($191|0)==(0); + if ($192) { + break; + } + $193 = HEAP32[$i>>2]|0; + $194 = (($193) + 1)|0; + HEAP32[$i>>2] = $194; + $195 = HEAP32[$pItem1>>2]|0; + $196 = (($195) + 16|0); + HEAP32[$pItem1>>2] = $196; + } + $197 = HEAP32[$i>>2]|0; + $198 = HEAP32[$pAggInfo>>2]|0; + $199 = (($198) + 44|0); + $200 = HEAP32[$199>>2]|0; + $201 = ($197|0)>=($200|0); + do { + if ($201) { + $202 = HEAP32[$pParse>>2]|0; + $203 = HEAP32[$202>>2]|0; + $204 = (($203) + 16|0); + $205 = HEAP32[$204>>2]|0; + $206 = (($205) + 12|0); + $207 = HEAP32[$206>>2]|0; + $208 = (($207) + 77|0); + $209 = HEAP8[$208>>0]|0; + HEAP8[$enc>>0] = $209; + $210 = HEAP32[$pParse>>2]|0; + $211 = HEAP32[$210>>2]|0; + $212 = HEAP32[$pAggInfo>>2]|0; + $213 = (_addAggInfoFunc($211,$212)|0); + HEAP32[$i>>2] = $213; + $214 = HEAP32[$i>>2]|0; + $215 = ($214|0)>=(0); + if ($215) { + $216 = HEAP32[$i>>2]|0; + $217 = HEAP32[$pAggInfo>>2]|0; + $218 = (($217) + 40|0); + $219 = HEAP32[$218>>2]|0; + $220 = (($219) + ($216<<4)|0); + HEAP32[$pItem1>>2] = $220; + $221 = HEAP32[$2>>2]|0; + $222 = HEAP32[$pItem1>>2]|0; + HEAP32[$222>>2] = $221; + $223 = HEAP32[$pParse>>2]|0; + $224 = (($223) + 72|0); + $225 = HEAP32[$224>>2]|0; + $226 = (($225) + 1)|0; + HEAP32[$224>>2] = $226; + $227 = HEAP32[$pItem1>>2]|0; + $228 = (($227) + 8|0); + HEAP32[$228>>2] = $226; + $229 = HEAP32[$pParse>>2]|0; + $230 = HEAP32[$229>>2]|0; + $231 = HEAP32[$2>>2]|0; + $232 = (($231) + 8|0); + $233 = HEAP32[$232>>2]|0; + $234 = HEAP32[$2>>2]|0; + $235 = (($234) + 8|0); + $236 = HEAP32[$235>>2]|0; + $237 = (_sqlite3Strlen30($236)|0); + $238 = HEAP32[$2>>2]|0; + $239 = (($238) + 20|0); + $240 = HEAP32[$239>>2]|0; + $241 = ($240|0)!=(0|0); + if ($241) { + $242 = HEAP32[$2>>2]|0; + $243 = (($242) + 20|0); + $244 = HEAP32[$243>>2]|0; + $245 = HEAP32[$244>>2]|0; + $247 = $245; + } else { + $247 = 0; + } + $246 = HEAP8[$enc>>0]|0; + $248 = (_sqlite3FindFunction($230,$233,$237,$247,$246,0)|0); + $249 = HEAP32[$pItem1>>2]|0; + $250 = (($249) + 4|0); + HEAP32[$250>>2] = $248; + $251 = HEAP32[$2>>2]|0; + $252 = (($251) + 4|0); + $253 = HEAP32[$252>>2]|0; + $254 = $253 & 16; + $255 = ($254|0)!=(0); + if ($255) { + $256 = HEAP32[$pParse>>2]|0; + $257 = (($256) + 68|0); + $258 = HEAP32[$257>>2]|0; + $259 = (($258) + 1)|0; + HEAP32[$257>>2] = $259; + $260 = HEAP32[$pItem1>>2]|0; + $261 = (($260) + 12|0); + HEAP32[$261>>2] = $258; + break; + } else { + $262 = HEAP32[$pItem1>>2]|0; + $263 = (($262) + 12|0); + HEAP32[$263>>2] = -1; + break; + } + } + } + } while(0); + $264 = HEAP32[$i>>2]|0; + $265 = $264&65535; + $266 = HEAP32[$2>>2]|0; + $267 = (($266) + 34|0); + HEAP16[$267>>1] = $265; + $268 = HEAP32[$pAggInfo>>2]|0; + $269 = HEAP32[$2>>2]|0; + $270 = (($269) + 40|0); + HEAP32[$270>>2] = $268; + HEAP32[$0>>2] = 1; + $271 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($271|0); + } + } + HEAP32[$0>>2] = 0; + $271 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($271|0); + } else { + HEAP32[$0>>2] = 0; + $271 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($271|0); + } + return 0|0; +} +function _analyzeAggregatesInSelect($pWalker,$pSelect) { + $pWalker = $pWalker|0; + $pSelect = $pSelect|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pWalker; + HEAP32[$1>>2] = $pSelect; + STACKTOP = sp;return 0; +} +function _addAggInfoColumn($db,$pInfo) { + $db = $db|0; + $pInfo = $pInfo|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $i = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pInfo; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 28|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 32|0); + $8 = (_sqlite3ArrayAllocate($2,$5,24,$7,$i)|0); + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 28|0); + HEAP32[$10>>2] = $8; + $11 = HEAP32[$i>>2]|0; + STACKTOP = sp;return ($11|0); +} +function _addAggInfoFunc($db,$pInfo) { + $db = $db|0; + $pInfo = $pInfo|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $i = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pInfo; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 40|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 44|0); + $8 = (_sqlite3ArrayAllocate($2,$5,16,$7,$i)|0); + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 40|0); + HEAP32[$10>>2] = $8; + $11 = HEAP32[$i>>2]|0; + STACKTOP = sp;return ($11|0); +} +function _pushOntoSorter($pParse,$pSort,$pSelect,$regData) { + $pParse = $pParse|0; + $pSort = $pSort|0; + $pSelect = $pSelect|0; + $regData = $regData|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $addr1 = 0, $addr2 = 0, $addrFirst = 0, $addrJmp = 0, $iLimit = 0, $nExpr = 0, $nKey = 0, $nOBSat = 0, $op = 0, $pKI = 0, $pOp = 0, $regBase = 0, $regPrevKey = 0, $regRecord = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 72|0; + $1 = sp + 68|0; + $2 = sp + 64|0; + $3 = sp + 60|0; + $v = sp + 56|0; + $nExpr = sp + 52|0; + $regRecord = sp + 48|0; + $regBase = sp + 44|0; + $nOBSat = sp + 40|0; + $op = sp + 36|0; + $regPrevKey = sp + 12|0; + $addrFirst = sp; + $addrJmp = sp + 4|0; + $pOp = sp + 8|0; + $nKey = sp + 16|0; + $pKI = sp + 20|0; + $addr1 = sp + 24|0; + $addr2 = sp + 28|0; + $iLimit = sp + 32|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pSort; + HEAP32[$2>>2] = $pSelect; + HEAP32[$3>>2] = $regData; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$v>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$nExpr>>2] = $9; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 72|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + 1)|0; + HEAP32[$11>>2] = $13; + HEAP32[$regRecord>>2] = $13; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 72|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + 1)|0; + HEAP32[$regBase>>2] = $17; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$nOBSat>>2] = $20; + $21 = HEAP32[$nExpr>>2]|0; + $22 = (($21) + 2)|0; + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 72|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + ($22))|0; + HEAP32[$24>>2] = $26; + $27 = HEAP32[$0>>2]|0; + _sqlite3ExprCacheClear($27); + $28 = HEAP32[$0>>2]|0; + $29 = HEAP32[$1>>2]|0; + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$regBase>>2]|0; + (_sqlite3ExprCodeExprList($28,$30,$31,0)|0); + $32 = HEAP32[$v>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 8|0); + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$regBase>>2]|0; + $37 = HEAP32[$nExpr>>2]|0; + $38 = (($36) + ($37))|0; + (_sqlite3VdbeAddOp2($32,68,$35,$38)|0); + $39 = HEAP32[$0>>2]|0; + $40 = HEAP32[$3>>2]|0; + $41 = HEAP32[$regBase>>2]|0; + $42 = HEAP32[$nExpr>>2]|0; + $43 = (($41) + ($42))|0; + $44 = (($43) + 1)|0; + _sqlite3ExprCodeMove($39,$40,$44,1); + $45 = HEAP32[$v>>2]|0; + $46 = HEAP32[$regBase>>2]|0; + $47 = HEAP32[$nOBSat>>2]|0; + $48 = (($46) + ($47))|0; + $49 = HEAP32[$nExpr>>2]|0; + $50 = (($49) + 2)|0; + $51 = HEAP32[$nOBSat>>2]|0; + $52 = (($50) - ($51))|0; + $53 = HEAP32[$regRecord>>2]|0; + (_sqlite3VdbeAddOp3($45,48,$48,$52,$53)|0); + $54 = HEAP32[$nOBSat>>2]|0; + $55 = ($54|0)>(0); + do { + if ($55) { + $56 = HEAP32[$0>>2]|0; + $57 = (($56) + 72|0); + $58 = HEAP32[$57>>2]|0; + $59 = (($58) + 1)|0; + HEAP32[$regPrevKey>>2] = $59; + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 4|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$0>>2]|0; + $64 = (($63) + 72|0); + $65 = HEAP32[$64>>2]|0; + $66 = (($65) + ($62))|0; + HEAP32[$64>>2] = $66; + $67 = HEAP32[$nExpr>>2]|0; + $68 = HEAP32[$1>>2]|0; + $69 = (($68) + 4|0); + $70 = HEAP32[$69>>2]|0; + $71 = (($67) - ($70))|0; + $72 = (($71) + 1)|0; + HEAP32[$nKey>>2] = $72; + $73 = HEAP32[$v>>2]|0; + $74 = HEAP32[$regBase>>2]|0; + $75 = HEAP32[$nExpr>>2]|0; + $76 = (($74) + ($75))|0; + $77 = (_sqlite3VdbeAddOp1($73,45,$76)|0); + HEAP32[$addrFirst>>2] = $77; + $78 = HEAP32[$v>>2]|0; + $79 = HEAP32[$regPrevKey>>2]|0; + $80 = HEAP32[$regBase>>2]|0; + $81 = HEAP32[$1>>2]|0; + $82 = (($81) + 4|0); + $83 = HEAP32[$82>>2]|0; + (_sqlite3VdbeAddOp3($78,41,$79,$80,$83)|0); + $84 = HEAP32[$v>>2]|0; + $85 = HEAP32[$1>>2]|0; + $86 = (($85) + 20|0); + $87 = HEAP32[$86>>2]|0; + $88 = (_sqlite3VdbeGetOp($84,$87)|0); + HEAP32[$pOp>>2] = $88; + $89 = HEAP32[$0>>2]|0; + $90 = HEAP32[$89>>2]|0; + $91 = (($90) + 64|0); + $92 = HEAP8[$91>>0]|0; + $93 = ($92<<24>>24)!=(0); + if ($93) { + STACKTOP = sp;return; + } else { + $94 = HEAP32[$nKey>>2]|0; + $95 = (($94) + 1)|0; + $96 = HEAP32[$pOp>>2]|0; + $97 = (($96) + 8|0); + HEAP32[$97>>2] = $95; + $98 = HEAP32[$pOp>>2]|0; + $99 = (($98) + 16|0); + $100 = HEAP32[$99>>2]|0; + HEAP32[$pKI>>2] = $100; + $101 = HEAP32[$pKI>>2]|0; + $102 = (($101) + 16|0); + $103 = HEAP32[$102>>2]|0; + $104 = HEAP32[$pKI>>2]|0; + $105 = (($104) + 6|0); + $106 = HEAP16[$105>>1]|0; + $107 = $106&65535; + _memset(($103|0),0,($107|0))|0; + $108 = HEAP32[$v>>2]|0; + $109 = HEAP32[$pKI>>2]|0; + _sqlite3VdbeChangeP4($108,-1,$109,-6); + $110 = HEAP32[$0>>2]|0; + $111 = HEAP32[$1>>2]|0; + $112 = HEAP32[$111>>2]|0; + $113 = HEAP32[$nOBSat>>2]|0; + $114 = (_keyInfoFromExprList($110,$112,$113,1)|0); + $115 = HEAP32[$pOp>>2]|0; + $116 = (($115) + 16|0); + HEAP32[$116>>2] = $114; + $117 = HEAP32[$v>>2]|0; + $118 = (_sqlite3VdbeCurrentAddr($117)|0); + HEAP32[$addrJmp>>2] = $118; + $119 = HEAP32[$v>>2]|0; + $120 = HEAP32[$addrJmp>>2]|0; + $121 = (($120) + 1)|0; + $122 = HEAP32[$addrJmp>>2]|0; + $123 = (($122) + 1)|0; + (_sqlite3VdbeAddOp3($119,42,$121,0,$123)|0); + $124 = HEAP32[$v>>2]|0; + $125 = (_sqlite3VdbeMakeLabel($124)|0); + $126 = HEAP32[$1>>2]|0; + $127 = (($126) + 16|0); + HEAP32[$127>>2] = $125; + $128 = HEAP32[$0>>2]|0; + $129 = (($128) + 72|0); + $130 = HEAP32[$129>>2]|0; + $131 = (($130) + 1)|0; + HEAP32[$129>>2] = $131; + $132 = HEAP32[$1>>2]|0; + $133 = (($132) + 12|0); + HEAP32[$133>>2] = $131; + $134 = HEAP32[$v>>2]|0; + $135 = HEAP32[$1>>2]|0; + $136 = (($135) + 12|0); + $137 = HEAP32[$136>>2]|0; + $138 = HEAP32[$1>>2]|0; + $139 = (($138) + 16|0); + $140 = HEAP32[$139>>2]|0; + (_sqlite3VdbeAddOp2($134,17,$137,$140)|0); + $141 = HEAP32[$v>>2]|0; + $142 = HEAP32[$1>>2]|0; + $143 = (($142) + 8|0); + $144 = HEAP32[$143>>2]|0; + (_sqlite3VdbeAddOp1($141,116,$144)|0); + $145 = HEAP32[$v>>2]|0; + $146 = HEAP32[$addrFirst>>2]|0; + _sqlite3VdbeJumpHere($145,$146); + $147 = HEAP32[$v>>2]|0; + $148 = HEAP32[$regBase>>2]|0; + $149 = HEAP32[$regPrevKey>>2]|0; + $150 = HEAP32[$1>>2]|0; + $151 = (($150) + 4|0); + $152 = HEAP32[$151>>2]|0; + (_sqlite3VdbeAddOp3($147,32,$148,$149,$152)|0); + $153 = HEAP32[$v>>2]|0; + $154 = HEAP32[$addrJmp>>2]|0; + _sqlite3VdbeJumpHere($153,$154); + break; + } + } + } while(0); + $155 = HEAP32[$1>>2]|0; + $156 = (($155) + 24|0); + $157 = HEAP8[$156>>0]|0; + $158 = $157&255; + $159 = $158 & 1; + $160 = ($159|0)!=(0); + if ($160) { + HEAP32[$op>>2] = 106; + } else { + HEAP32[$op>>2] = 107; + } + $161 = HEAP32[$v>>2]|0; + $162 = HEAP32[$op>>2]|0; + $163 = HEAP32[$1>>2]|0; + $164 = (($163) + 8|0); + $165 = HEAP32[$164>>2]|0; + $166 = HEAP32[$regRecord>>2]|0; + (_sqlite3VdbeAddOp2($161,$162,$165,$166)|0); + $167 = HEAP32[$2>>2]|0; + $168 = (($167) + 8|0); + $169 = HEAP32[$168>>2]|0; + $170 = ($169|0)!=(0); + if (!($170)) { + STACKTOP = sp;return; + } + $171 = HEAP32[$2>>2]|0; + $172 = (($171) + 12|0); + $173 = HEAP32[$172>>2]|0; + $174 = ($173|0)!=(0); + $175 = HEAP32[$2>>2]|0; + if ($174) { + $176 = (($175) + 12|0); + $177 = HEAP32[$176>>2]|0; + $178 = (($177) + 1)|0; + HEAP32[$iLimit>>2] = $178; + } else { + $179 = (($175) + 8|0); + $180 = HEAP32[$179>>2]|0; + HEAP32[$iLimit>>2] = $180; + } + $181 = HEAP32[$v>>2]|0; + $182 = HEAP32[$iLimit>>2]|0; + $183 = (_sqlite3VdbeAddOp1($181,136,$182)|0); + HEAP32[$addr1>>2] = $183; + $184 = HEAP32[$v>>2]|0; + $185 = HEAP32[$iLimit>>2]|0; + (_sqlite3VdbeAddOp2($184,37,$185,-1)|0); + $186 = HEAP32[$v>>2]|0; + $187 = (_sqlite3VdbeAddOp0($186,16)|0); + HEAP32[$addr2>>2] = $187; + $188 = HEAP32[$v>>2]|0; + $189 = HEAP32[$addr1>>2]|0; + _sqlite3VdbeJumpHere($188,$189); + $190 = HEAP32[$v>>2]|0; + $191 = HEAP32[$1>>2]|0; + $192 = (($191) + 8|0); + $193 = HEAP32[$192>>2]|0; + (_sqlite3VdbeAddOp1($190,102,$193)|0); + $194 = HEAP32[$v>>2]|0; + $195 = HEAP32[$1>>2]|0; + $196 = (($195) + 8|0); + $197 = HEAP32[$196>>2]|0; + (_sqlite3VdbeAddOp1($194,74,$197)|0); + $198 = HEAP32[$v>>2]|0; + $199 = HEAP32[$addr2>>2]|0; + _sqlite3VdbeJumpHere($198,$199); + STACKTOP = sp;return; +} +function _selectOpName($id) { + $id = $id|0; + var $0 = 0, $1 = 0, $2 = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $z = sp; + HEAP32[$0>>2] = $id; + $1 = HEAP32[$0>>2]|0; + if ((($1|0) == 116)) { + HEAP32[$z>>2] = 31776; + } else if ((($1|0) == 117)) { + HEAP32[$z>>2] = 31808; + } else if ((($1|0) == 118)) { + HEAP32[$z>>2] = 31792; + } else { + HEAP32[$z>>2] = 31816; + } + $2 = HEAP32[$z>>2]|0; + STACKTOP = sp;return ($2|0); +} +function _generateWithRecursiveQuery($pParse,$p,$pDest) { + $pParse = $pParse|0; + $p = $p|0; + $pDest = $pDest|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; + var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; + var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; + var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; + var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addrBreak = 0, $addrCont = 0, $addrTop = 0; + var $destQueue = 0, $eDest = 0, $i = 0, $iCurrent = 0, $iDistinct = 0, $iQueue = 0, $nCol = 0, $pKeyInfo = 0, $pLimit = 0, $pOffset = 0, $pOrderBy = 0, $pSetup = 0, $pSrc = 0, $rc = 0, $regCurrent = 0, $regLimit = 0, $regOffset = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $0 = sp + 108|0; + $1 = sp + 104|0; + $2 = sp + 100|0; + $pSrc = sp + 96|0; + $nCol = sp + 92|0; + $v = sp + 88|0; + $pSetup = sp + 84|0; + $addrTop = sp + 80|0; + $addrCont = sp + 76|0; + $addrBreak = sp + 72|0; + $iCurrent = sp + 68|0; + $regCurrent = sp + 64|0; + $iQueue = sp + 60|0; + $iDistinct = sp + 32|0; + $eDest = sp; + $destQueue = sp + 4|0; + $i = sp + 24|0; + $rc = sp + 28|0; + $pOrderBy = sp + 36|0; + $pLimit = sp + 40|0; + $pOffset = sp + 44|0; + $regLimit = sp + 48|0; + $regOffset = sp + 52|0; + $pKeyInfo = sp + 56|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pDest; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 32|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pSrc>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$7>>2]|0; + HEAP32[$nCol>>2] = $8; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 8|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$v>>2] = $11; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 52|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$pSetup>>2] = $14; + HEAP32[$iCurrent>>2] = 0; + HEAP32[$iDistinct>>2] = 0; + HEAP32[$eDest>>2] = 5; + $15 = HEAP32[$0>>2]|0; + $16 = (_sqlite3AuthCheck($15,33,0,0,0)|0); + $17 = ($16|0)!=(0); + if ($17) { + STACKTOP = sp;return; + } + $18 = HEAP32[$v>>2]|0; + $19 = (_sqlite3VdbeMakeLabel($18)|0); + HEAP32[$addrBreak>>2] = $19; + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$1>>2]|0; + $22 = HEAP32[$addrBreak>>2]|0; + _computeLimitRegisters($20,$21,$22); + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 60|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$pLimit>>2] = $25; + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 64|0); + $28 = HEAP32[$27>>2]|0; + HEAP32[$pOffset>>2] = $28; + $29 = HEAP32[$1>>2]|0; + $30 = (($29) + 8|0); + $31 = HEAP32[$30>>2]|0; + HEAP32[$regLimit>>2] = $31; + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 12|0); + $34 = HEAP32[$33>>2]|0; + HEAP32[$regOffset>>2] = $34; + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 64|0); + HEAP32[$36>>2] = 0; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 60|0); + HEAP32[$38>>2] = 0; + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 12|0); + HEAP32[$40>>2] = 0; + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 8|0); + HEAP32[$42>>2] = 0; + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 48|0); + $45 = HEAP32[$44>>2]|0; + HEAP32[$pOrderBy>>2] = $45; + HEAP32[$i>>2] = 0; + while(1) { + $46 = HEAP32[$i>>2]|0; + $47 = HEAP32[$pSrc>>2]|0; + $48 = HEAP32[$47>>2]|0; + $49 = ($46|0)<($48|0); + if (!($49)) { + break; + } + $50 = HEAP32[$i>>2]|0; + $51 = HEAP32[$pSrc>>2]|0; + $52 = (($51) + 8|0); + $53 = (($52) + (($50*72)|0)|0); + $54 = (($53) + 37|0); + $55 = HEAP8[$54>>0]|0; + $56 = ($55&255) >>> 3; + $57 = $56 & 1; + $58 = $57&255; + $59 = ($58|0)!=(0); + $60 = HEAP32[$i>>2]|0; + if ($59) { + label = 5; + break; + } + $66 = (($60) + 1)|0; + HEAP32[$i>>2] = $66; + } + if ((label|0) == 5) { + $61 = HEAP32[$pSrc>>2]|0; + $62 = (($61) + 8|0); + $63 = (($62) + (($60*72)|0)|0); + $64 = (($63) + 40|0); + $65 = HEAP32[$64>>2]|0; + HEAP32[$iCurrent>>2] = $65; + } + $67 = HEAP32[$0>>2]|0; + $68 = (($67) + 68|0); + $69 = HEAP32[$68>>2]|0; + $70 = (($69) + 1)|0; + HEAP32[$68>>2] = $70; + HEAP32[$iQueue>>2] = $69; + $71 = HEAP32[$1>>2]|0; + $72 = (($71) + 4|0); + $73 = HEAP8[$72>>0]|0; + $74 = $73&255; + $75 = ($74|0)==(115); + $76 = HEAP32[$pOrderBy>>2]|0; + $77 = ($76|0)!=(0|0); + if ($75) { + $78 = $77 ? 8 : 6; + HEAP32[$eDest>>2] = $78; + $79 = HEAP32[$0>>2]|0; + $80 = (($79) + 68|0); + $81 = HEAP32[$80>>2]|0; + $82 = (($81) + 1)|0; + HEAP32[$80>>2] = $82; + HEAP32[$iDistinct>>2] = $81; + } else { + $83 = $77 ? 7 : 5; + HEAP32[$eDest>>2] = $83; + } + $84 = HEAP32[$eDest>>2]|0; + $85 = HEAP32[$iQueue>>2]|0; + _sqlite3SelectDestInit($destQueue,$84,$85); + $86 = HEAP32[$0>>2]|0; + $87 = (($86) + 72|0); + $88 = HEAP32[$87>>2]|0; + $89 = (($88) + 1)|0; + HEAP32[$87>>2] = $89; + HEAP32[$regCurrent>>2] = $89; + $90 = HEAP32[$v>>2]|0; + $91 = HEAP32[$iCurrent>>2]|0; + $92 = HEAP32[$regCurrent>>2]|0; + $93 = HEAP32[$nCol>>2]|0; + (_sqlite3VdbeAddOp3($90,57,$91,$92,$93)|0); + $94 = HEAP32[$pOrderBy>>2]|0; + $95 = ($94|0)!=(0|0); + if ($95) { + $96 = HEAP32[$0>>2]|0; + $97 = HEAP32[$1>>2]|0; + $98 = (_multiSelectOrderByKeyInfo($96,$97,1)|0); + HEAP32[$pKeyInfo>>2] = $98; + $99 = HEAP32[$v>>2]|0; + $100 = HEAP32[$iQueue>>2]|0; + $101 = HEAP32[$pOrderBy>>2]|0; + $102 = HEAP32[$101>>2]|0; + $103 = (($102) + 2)|0; + $104 = HEAP32[$pKeyInfo>>2]|0; + (_sqlite3VdbeAddOp4($99,55,$100,$103,0,$104,-6)|0); + $105 = HEAP32[$pOrderBy>>2]|0; + $106 = (($destQueue) + 16|0); + HEAP32[$106>>2] = $105; + } else { + $107 = HEAP32[$v>>2]|0; + $108 = HEAP32[$iQueue>>2]|0; + $109 = HEAP32[$nCol>>2]|0; + (_sqlite3VdbeAddOp2($107,55,$108,$109)|0); + } + $110 = HEAP32[$iDistinct>>2]|0; + $111 = ($110|0)!=(0); + if ($111) { + $112 = HEAP32[$v>>2]|0; + $113 = HEAP32[$iDistinct>>2]|0; + $114 = (_sqlite3VdbeAddOp2($112,55,$113,0)|0); + $115 = HEAP32[$1>>2]|0; + $116 = (($115) + 16|0); + HEAP32[$116>>2] = $114; + $117 = HEAP32[$1>>2]|0; + $118 = (($117) + 6|0); + $119 = HEAP16[$118>>1]|0; + $120 = $119&65535; + $121 = $120 | 8; + $122 = $121&65535; + HEAP16[$118>>1] = $122; + } + $123 = HEAP32[$1>>2]|0; + $124 = (($123) + 48|0); + HEAP32[$124>>2] = 0; + $125 = HEAP32[$pSetup>>2]|0; + $126 = (($125) + 56|0); + HEAP32[$126>>2] = 0; + $127 = HEAP32[$0>>2]|0; + $128 = HEAP32[$pSetup>>2]|0; + $129 = (_sqlite3Select($127,$128,$destQueue)|0); + HEAP32[$rc>>2] = $129; + $130 = HEAP32[$1>>2]|0; + $131 = HEAP32[$pSetup>>2]|0; + $132 = (($131) + 56|0); + HEAP32[$132>>2] = $130; + $133 = HEAP32[$rc>>2]|0; + $134 = ($133|0)!=(0); + if (!($134)) { + $135 = HEAP32[$v>>2]|0; + $136 = HEAP32[$iQueue>>2]|0; + $137 = HEAP32[$addrBreak>>2]|0; + $138 = (_sqlite3VdbeAddOp2($135,105,$136,$137)|0); + HEAP32[$addrTop>>2] = $138; + $139 = HEAP32[$v>>2]|0; + $140 = HEAP32[$iCurrent>>2]|0; + (_sqlite3VdbeAddOp1($139,101,$140)|0); + $141 = HEAP32[$pOrderBy>>2]|0; + $142 = ($141|0)!=(0|0); + $143 = HEAP32[$v>>2]|0; + $144 = HEAP32[$iQueue>>2]|0; + if ($142) { + $145 = HEAP32[$pOrderBy>>2]|0; + $146 = HEAP32[$145>>2]|0; + $147 = (($146) + 1)|0; + $148 = HEAP32[$regCurrent>>2]|0; + (_sqlite3VdbeAddOp3($143,46,$144,$147,$148)|0); + } else { + $149 = HEAP32[$regCurrent>>2]|0; + (_sqlite3VdbeAddOp2($143,99,$144,$149)|0); + } + $150 = HEAP32[$v>>2]|0; + $151 = HEAP32[$iQueue>>2]|0; + (_sqlite3VdbeAddOp1($150,74,$151)|0); + $152 = HEAP32[$v>>2]|0; + $153 = (_sqlite3VdbeMakeLabel($152)|0); + HEAP32[$addrCont>>2] = $153; + $154 = HEAP32[$v>>2]|0; + $155 = HEAP32[$regOffset>>2]|0; + $156 = HEAP32[$addrCont>>2]|0; + _codeOffset($154,$155,$156); + $157 = HEAP32[$0>>2]|0; + $158 = HEAP32[$1>>2]|0; + $159 = HEAP32[$1>>2]|0; + $160 = HEAP32[$159>>2]|0; + $161 = HEAP32[$iCurrent>>2]|0; + $162 = HEAP32[$2>>2]|0; + $163 = HEAP32[$addrCont>>2]|0; + $164 = HEAP32[$addrBreak>>2]|0; + _selectInnerLoop($157,$158,$160,$161,0,0,$162,$163,$164); + $165 = HEAP32[$regLimit>>2]|0; + $166 = ($165|0)!=(0); + if ($166) { + $167 = HEAP32[$v>>2]|0; + $168 = HEAP32[$regLimit>>2]|0; + $169 = HEAP32[$addrBreak>>2]|0; + (_sqlite3VdbeAddOp3($167,136,$168,$169,-1)|0); + } + $170 = HEAP32[$v>>2]|0; + $171 = HEAP32[$addrCont>>2]|0; + _sqlite3VdbeResolveLabel($170,$171); + $172 = HEAP32[$1>>2]|0; + $173 = (($172) + 52|0); + HEAP32[$173>>2] = 0; + $174 = HEAP32[$0>>2]|0; + $175 = HEAP32[$1>>2]|0; + (_sqlite3Select($174,$175,$destQueue)|0); + $176 = HEAP32[$pSetup>>2]|0; + $177 = HEAP32[$1>>2]|0; + $178 = (($177) + 52|0); + HEAP32[$178>>2] = $176; + $179 = HEAP32[$v>>2]|0; + $180 = HEAP32[$addrTop>>2]|0; + (_sqlite3VdbeAddOp2($179,16,0,$180)|0); + $181 = HEAP32[$v>>2]|0; + $182 = HEAP32[$addrBreak>>2]|0; + _sqlite3VdbeResolveLabel($181,$182); + } + $183 = HEAP32[$0>>2]|0; + $184 = HEAP32[$183>>2]|0; + $185 = HEAP32[$1>>2]|0; + $186 = (($185) + 48|0); + $187 = HEAP32[$186>>2]|0; + _sqlite3ExprListDelete($184,$187); + $188 = HEAP32[$pOrderBy>>2]|0; + $189 = HEAP32[$1>>2]|0; + $190 = (($189) + 48|0); + HEAP32[$190>>2] = $188; + $191 = HEAP32[$pLimit>>2]|0; + $192 = HEAP32[$1>>2]|0; + $193 = (($192) + 60|0); + HEAP32[$193>>2] = $191; + $194 = HEAP32[$pOffset>>2]|0; + $195 = HEAP32[$1>>2]|0; + $196 = (($195) + 64|0); + HEAP32[$196>>2] = $194; + STACKTOP = sp;return; +} +function _multiSelectOrderBy($pParse,$p,$pDest) { + $pParse = $pParse|0; + $p = $p|0; + $pDest = $pDest|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; + var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; + var $495 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; + var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; + var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aPermute = 0, $addrAeqB = 0, $addrAgtB = 0, $addrAltB = 0; + var $addrEofA = 0, $addrEofA_noB = 0, $addrEofB = 0, $addrOutA = 0, $addrOutB = 0, $addrSelectA = 0, $addrSelectB = 0, $db = 0, $destA = 0, $destB = 0, $i = 0, $iSub1 = 0, $iSub2 = 0, $j = 0, $j1 = 0, $labelCmpr = 0, $labelEnd = 0, $nExpr = 0, $nOrderBy = 0, $op = 0; + var $or$cond = 0, $or$cond3 = 0, $or$cond5 = 0, $pFirst = 0, $pItem = 0, $pItem1 = 0, $pKeyDup = 0, $pKeyMerge = 0, $pNew = 0, $pOrderBy = 0, $pPrior = 0, $regAddrA = 0, $regAddrB = 0, $regLimitA = 0, $regLimitB = 0, $regOutA = 0, $regOutB = 0, $regPrev = 0, $savedLimit = 0, $savedOffset = 0; + var $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 224|0; + $0 = sp + 212|0; + $1 = sp + 208|0; + $2 = sp + 204|0; + $3 = sp + 200|0; + $i = sp + 196|0; + $j = sp + 192|0; + $pPrior = sp + 188|0; + $v = sp + 184|0; + $destA = sp + 164|0; + $destB = sp + 144|0; + $regAddrA = sp + 140|0; + $regAddrB = sp + 136|0; + $addrSelectA = sp + 132|0; + $addrSelectB = sp + 128|0; + $regOutA = sp + 124|0; + $regOutB = sp + 120|0; + $addrOutA = sp + 116|0; + $addrOutB = sp + 112|0; + $addrEofA = sp + 108|0; + $addrEofA_noB = sp + 104|0; + $addrEofB = sp + 100|0; + $addrAltB = sp + 96|0; + $addrAeqB = sp + 92|0; + $addrAgtB = sp + 88|0; + $regLimitA = sp + 36|0; + $regLimitB = sp + 32|0; + $regPrev = sp + 28|0; + $savedLimit = sp + 24|0; + $savedOffset = sp + 20|0; + $labelCmpr = sp + 16|0; + $labelEnd = sp + 8|0; + $j1 = sp + 4|0; + $op = sp; + $pKeyDup = sp + 12|0; + $pKeyMerge = sp + 40|0; + $db = sp + 44|0; + $pOrderBy = sp + 48|0; + $nOrderBy = sp + 52|0; + $aPermute = sp + 56|0; + $iSub1 = sp + 60|0; + $iSub2 = sp + 64|0; + $pItem = sp + 68|0; + $pNew = sp + 72|0; + $pItem1 = sp + 76|0; + $nExpr = sp + 80|0; + $pFirst = sp + 84|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $pDest; + HEAP32[$addrOutB>>2] = 0; + HEAP32[$pKeyDup>>2] = 0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 8|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$v>>2] = $8; + $9 = HEAP32[$v>>2]|0; + $10 = (_sqlite3VdbeMakeLabel($9)|0); + HEAP32[$labelEnd>>2] = $10; + $11 = HEAP32[$v>>2]|0; + $12 = (_sqlite3VdbeMakeLabel($11)|0); + HEAP32[$labelCmpr>>2] = $12; + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + HEAP32[$op>>2] = $16; + $17 = HEAP32[$2>>2]|0; + $18 = (($17) + 52|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$pPrior>>2] = $19; + $20 = HEAP32[$2>>2]|0; + $21 = (($20) + 48|0); + $22 = HEAP32[$21>>2]|0; + HEAP32[$pOrderBy>>2] = $22; + $23 = HEAP32[$pOrderBy>>2]|0; + $24 = HEAP32[$23>>2]|0; + HEAP32[$nOrderBy>>2] = $24; + $25 = HEAP32[$op>>2]|0; + $26 = ($25|0)!=(116); + L1: do { + if ($26) { + HEAP32[$i>>2] = 1; + while(1) { + $27 = HEAP32[$db>>2]|0; + $28 = (($27) + 64|0); + $29 = HEAP8[$28>>0]|0; + $30 = $29&255; + $31 = ($30|0)==(0); + if (!($31)) { + break L1; + } + $32 = HEAP32[$i>>2]|0; + $33 = HEAP32[$2>>2]|0; + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$34>>2]|0; + $36 = ($32|0)<=($35|0); + if (!($36)) { + break L1; + } + HEAP32[$j>>2] = 0; + $37 = HEAP32[$pOrderBy>>2]|0; + $38 = (($37) + 4|0); + $39 = HEAP32[$38>>2]|0; + HEAP32[$pItem>>2] = $39; + while(1) { + $40 = HEAP32[$j>>2]|0; + $41 = HEAP32[$nOrderBy>>2]|0; + $42 = ($40|0)<($41|0); + if (!($42)) { + break; + } + $43 = HEAP32[$pItem>>2]|0; + $44 = (($43) + 16|0); + $45 = HEAP16[$44>>1]|0; + $46 = $45&65535; + $47 = HEAP32[$i>>2]|0; + $48 = ($46|0)==($47|0); + if ($48) { + break; + } + $49 = HEAP32[$j>>2]|0; + $50 = (($49) + 1)|0; + HEAP32[$j>>2] = $50; + $51 = HEAP32[$pItem>>2]|0; + $52 = (($51) + 20|0); + HEAP32[$pItem>>2] = $52; + } + $53 = HEAP32[$j>>2]|0; + $54 = HEAP32[$nOrderBy>>2]|0; + $55 = ($53|0)==($54|0); + if ($55) { + $56 = HEAP32[$db>>2]|0; + $57 = (_sqlite3Expr($56,132,0)|0); + HEAP32[$pNew>>2] = $57; + $58 = HEAP32[$pNew>>2]|0; + $59 = ($58|0)==(0|0); + if ($59) { + break; + } + $60 = HEAP32[$pNew>>2]|0; + $61 = (($60) + 4|0); + $62 = HEAP32[$61>>2]|0; + $63 = $62 | 1024; + HEAP32[$61>>2] = $63; + $64 = HEAP32[$i>>2]|0; + $65 = HEAP32[$pNew>>2]|0; + $66 = (($65) + 8|0); + HEAP32[$66>>2] = $64; + $67 = HEAP32[$1>>2]|0; + $68 = HEAP32[$pOrderBy>>2]|0; + $69 = HEAP32[$pNew>>2]|0; + $70 = (_sqlite3ExprListAppend($67,$68,$69)|0); + HEAP32[$pOrderBy>>2] = $70; + $71 = HEAP32[$pOrderBy>>2]|0; + $72 = ($71|0)!=(0|0); + if ($72) { + $73 = HEAP32[$i>>2]|0; + $74 = $73&65535; + $75 = HEAP32[$nOrderBy>>2]|0; + $76 = (($75) + 1)|0; + HEAP32[$nOrderBy>>2] = $76; + $77 = HEAP32[$pOrderBy>>2]|0; + $78 = (($77) + 4|0); + $79 = HEAP32[$78>>2]|0; + $80 = (($79) + (($75*20)|0)|0); + $81 = (($80) + 16|0); + HEAP16[$81>>1] = $74; + } + } + $82 = HEAP32[$i>>2]|0; + $83 = (($82) + 1)|0; + HEAP32[$i>>2] = $83; + } + HEAP32[$0>>2] = 7; + $495 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($495|0); + } + } while(0); + $84 = HEAP32[$db>>2]|0; + $85 = HEAP32[$nOrderBy>>2]|0; + $86 = $85<<2; + $87 = (_sqlite3DbMallocRaw($84,$86)|0); + HEAP32[$aPermute>>2] = $87; + $88 = HEAP32[$aPermute>>2]|0; + $89 = ($88|0)!=(0|0); + if ($89) { + HEAP32[$i>>2] = 0; + $90 = HEAP32[$pOrderBy>>2]|0; + $91 = (($90) + 4|0); + $92 = HEAP32[$91>>2]|0; + HEAP32[$pItem1>>2] = $92; + while(1) { + $93 = HEAP32[$i>>2]|0; + $94 = HEAP32[$nOrderBy>>2]|0; + $95 = ($93|0)<($94|0); + if (!($95)) { + break; + } + $96 = HEAP32[$pItem1>>2]|0; + $97 = (($96) + 16|0); + $98 = HEAP16[$97>>1]|0; + $99 = $98&65535; + $100 = (($99) - 1)|0; + $101 = HEAP32[$i>>2]|0; + $102 = HEAP32[$aPermute>>2]|0; + $103 = (($102) + ($101<<2)|0); + HEAP32[$103>>2] = $100; + $104 = HEAP32[$i>>2]|0; + $105 = (($104) + 1)|0; + HEAP32[$i>>2] = $105; + $106 = HEAP32[$pItem1>>2]|0; + $107 = (($106) + 20|0); + HEAP32[$pItem1>>2] = $107; + } + $108 = HEAP32[$1>>2]|0; + $109 = HEAP32[$2>>2]|0; + $110 = (_multiSelectOrderByKeyInfo($108,$109,1)|0); + HEAP32[$pKeyMerge>>2] = $110; + } else { + HEAP32[$pKeyMerge>>2] = 0; + } + $111 = HEAP32[$pOrderBy>>2]|0; + $112 = HEAP32[$2>>2]|0; + $113 = (($112) + 48|0); + HEAP32[$113>>2] = $111; + $114 = HEAP32[$1>>2]|0; + $115 = HEAP32[$114>>2]|0; + $116 = HEAP32[$pOrderBy>>2]|0; + $117 = (_sqlite3ExprListDup($115,$116,0)|0); + $118 = HEAP32[$pPrior>>2]|0; + $119 = (($118) + 48|0); + HEAP32[$119>>2] = $117; + $120 = HEAP32[$op>>2]|0; + $121 = ($120|0)==(116); + L28: do { + if ($121) { + HEAP32[$regPrev>>2] = 0; + } else { + $122 = HEAP32[$2>>2]|0; + $123 = HEAP32[$122>>2]|0; + $124 = HEAP32[$123>>2]|0; + HEAP32[$nExpr>>2] = $124; + $125 = HEAP32[$1>>2]|0; + $126 = (($125) + 72|0); + $127 = HEAP32[$126>>2]|0; + $128 = (($127) + 1)|0; + HEAP32[$regPrev>>2] = $128; + $129 = HEAP32[$nExpr>>2]|0; + $130 = (($129) + 1)|0; + $131 = HEAP32[$1>>2]|0; + $132 = (($131) + 72|0); + $133 = HEAP32[$132>>2]|0; + $134 = (($133) + ($130))|0; + HEAP32[$132>>2] = $134; + $135 = HEAP32[$v>>2]|0; + $136 = HEAP32[$regPrev>>2]|0; + (_sqlite3VdbeAddOp2($135,25,0,$136)|0); + $137 = HEAP32[$db>>2]|0; + $138 = HEAP32[$nExpr>>2]|0; + $139 = (_sqlite3KeyInfoAlloc($137,$138,1)|0); + HEAP32[$pKeyDup>>2] = $139; + $140 = HEAP32[$pKeyDup>>2]|0; + $141 = ($140|0)!=(0|0); + if ($141) { + HEAP32[$i>>2] = 0; + while(1) { + $142 = HEAP32[$i>>2]|0; + $143 = HEAP32[$nExpr>>2]|0; + $144 = ($142|0)<($143|0); + if (!($144)) { + break L28; + } + $145 = HEAP32[$1>>2]|0; + $146 = HEAP32[$2>>2]|0; + $147 = HEAP32[$i>>2]|0; + $148 = (_multiSelectCollSeq($145,$146,$147)|0); + $149 = HEAP32[$i>>2]|0; + $150 = HEAP32[$pKeyDup>>2]|0; + $151 = (($150) + 20|0); + $152 = (($151) + ($149<<2)|0); + HEAP32[$152>>2] = $148; + $153 = HEAP32[$i>>2]|0; + $154 = HEAP32[$pKeyDup>>2]|0; + $155 = (($154) + 16|0); + $156 = HEAP32[$155>>2]|0; + $157 = (($156) + ($153)|0); + HEAP8[$157>>0] = 0; + $158 = HEAP32[$i>>2]|0; + $159 = (($158) + 1)|0; + HEAP32[$i>>2] = $159; + } + } + } + } while(0); + $160 = HEAP32[$2>>2]|0; + $161 = (($160) + 52|0); + HEAP32[$161>>2] = 0; + $162 = HEAP32[$pPrior>>2]|0; + $163 = (($162) + 56|0); + HEAP32[$163>>2] = 0; + $164 = HEAP32[$1>>2]|0; + $165 = HEAP32[$2>>2]|0; + $166 = HEAP32[$2>>2]|0; + $167 = (($166) + 48|0); + $168 = HEAP32[$167>>2]|0; + (_sqlite3ResolveOrderGroupBy($164,$165,$168,23008)|0); + $169 = HEAP32[$pPrior>>2]|0; + $170 = (($169) + 52|0); + $171 = HEAP32[$170>>2]|0; + $172 = ($171|0)==(0|0); + if ($172) { + $173 = HEAP32[$1>>2]|0; + $174 = HEAP32[$pPrior>>2]|0; + $175 = HEAP32[$pPrior>>2]|0; + $176 = (($175) + 48|0); + $177 = HEAP32[$176>>2]|0; + (_sqlite3ResolveOrderGroupBy($173,$174,$177,23008)|0); + } + $178 = HEAP32[$1>>2]|0; + $179 = HEAP32[$2>>2]|0; + $180 = HEAP32[$labelEnd>>2]|0; + _computeLimitRegisters($178,$179,$180); + $181 = HEAP32[$2>>2]|0; + $182 = (($181) + 8|0); + $183 = HEAP32[$182>>2]|0; + $184 = ($183|0)!=(0); + if ($184) { + $185 = HEAP32[$op>>2]|0; + $186 = ($185|0)==(116); + if ($186) { + $187 = HEAP32[$1>>2]|0; + $188 = (($187) + 72|0); + $189 = HEAP32[$188>>2]|0; + $190 = (($189) + 1)|0; + HEAP32[$188>>2] = $190; + HEAP32[$regLimitA>>2] = $190; + $191 = HEAP32[$1>>2]|0; + $192 = (($191) + 72|0); + $193 = HEAP32[$192>>2]|0; + $194 = (($193) + 1)|0; + HEAP32[$192>>2] = $194; + HEAP32[$regLimitB>>2] = $194; + $195 = HEAP32[$v>>2]|0; + $196 = HEAP32[$2>>2]|0; + $197 = (($196) + 12|0); + $198 = HEAP32[$197>>2]|0; + $199 = ($198|0)!=(0); + $200 = HEAP32[$2>>2]|0; + if ($199) { + $201 = (($200) + 12|0); + $202 = HEAP32[$201>>2]|0; + $203 = (($202) + 1)|0; + $207 = $203; + } else { + $204 = (($200) + 8|0); + $205 = HEAP32[$204>>2]|0; + $207 = $205; + } + $206 = HEAP32[$regLimitA>>2]|0; + (_sqlite3VdbeAddOp2($195,33,$207,$206)|0); + $208 = HEAP32[$v>>2]|0; + $209 = HEAP32[$regLimitA>>2]|0; + $210 = HEAP32[$regLimitB>>2]|0; + (_sqlite3VdbeAddOp2($208,33,$209,$210)|0); + } else { + label = 35; + } + } else { + label = 35; + } + if ((label|0) == 35) { + HEAP32[$regLimitB>>2] = 0; + HEAP32[$regLimitA>>2] = 0; + } + $211 = HEAP32[$db>>2]|0; + $212 = HEAP32[$2>>2]|0; + $213 = (($212) + 60|0); + $214 = HEAP32[$213>>2]|0; + _sqlite3ExprDelete($211,$214); + $215 = HEAP32[$2>>2]|0; + $216 = (($215) + 60|0); + HEAP32[$216>>2] = 0; + $217 = HEAP32[$db>>2]|0; + $218 = HEAP32[$2>>2]|0; + $219 = (($218) + 64|0); + $220 = HEAP32[$219>>2]|0; + _sqlite3ExprDelete($217,$220); + $221 = HEAP32[$2>>2]|0; + $222 = (($221) + 64|0); + HEAP32[$222>>2] = 0; + $223 = HEAP32[$1>>2]|0; + $224 = (($223) + 72|0); + $225 = HEAP32[$224>>2]|0; + $226 = (($225) + 1)|0; + HEAP32[$224>>2] = $226; + HEAP32[$regAddrA>>2] = $226; + $227 = HEAP32[$1>>2]|0; + $228 = (($227) + 72|0); + $229 = HEAP32[$228>>2]|0; + $230 = (($229) + 1)|0; + HEAP32[$228>>2] = $230; + HEAP32[$regAddrB>>2] = $230; + $231 = HEAP32[$1>>2]|0; + $232 = (($231) + 72|0); + $233 = HEAP32[$232>>2]|0; + $234 = (($233) + 1)|0; + HEAP32[$232>>2] = $234; + HEAP32[$regOutA>>2] = $234; + $235 = HEAP32[$1>>2]|0; + $236 = (($235) + 72|0); + $237 = HEAP32[$236>>2]|0; + $238 = (($237) + 1)|0; + HEAP32[$236>>2] = $238; + HEAP32[$regOutB>>2] = $238; + $239 = HEAP32[$regAddrA>>2]|0; + _sqlite3SelectDestInit($destA,13,$239); + $240 = HEAP32[$regAddrB>>2]|0; + _sqlite3SelectDestInit($destB,13,$240); + $241 = HEAP32[$v>>2]|0; + $242 = (_sqlite3VdbeCurrentAddr($241)|0); + $243 = (($242) + 1)|0; + HEAP32[$addrSelectA>>2] = $243; + $244 = HEAP32[$v>>2]|0; + $245 = HEAP32[$regAddrA>>2]|0; + $246 = HEAP32[$addrSelectA>>2]|0; + $247 = (_sqlite3VdbeAddOp3($244,20,$245,0,$246)|0); + HEAP32[$j1>>2] = $247; + $248 = HEAP32[$regLimitA>>2]|0; + $249 = HEAP32[$pPrior>>2]|0; + $250 = (($249) + 8|0); + HEAP32[$250>>2] = $248; + $251 = HEAP32[$1>>2]|0; + $252 = (($251) + 468|0); + $253 = HEAP32[$252>>2]|0; + HEAP32[$iSub1>>2] = $253; + $254 = HEAP32[$1>>2]|0; + $255 = HEAP32[$pPrior>>2]|0; + (_sqlite3Select($254,$255,$destA)|0); + $256 = HEAP32[$v>>2]|0; + $257 = HEAP32[$regAddrA>>2]|0; + (_sqlite3VdbeAddOp1($256,21,$257)|0); + $258 = HEAP32[$v>>2]|0; + $259 = HEAP32[$j1>>2]|0; + _sqlite3VdbeJumpHere($258,$259); + $260 = HEAP32[$v>>2]|0; + $261 = (_sqlite3VdbeCurrentAddr($260)|0); + $262 = (($261) + 1)|0; + HEAP32[$addrSelectB>>2] = $262; + $263 = HEAP32[$v>>2]|0; + $264 = HEAP32[$regAddrB>>2]|0; + $265 = HEAP32[$addrSelectB>>2]|0; + $266 = (_sqlite3VdbeAddOp3($263,20,$264,0,$265)|0); + HEAP32[$j1>>2] = $266; + $267 = HEAP32[$2>>2]|0; + $268 = (($267) + 8|0); + $269 = HEAP32[$268>>2]|0; + HEAP32[$savedLimit>>2] = $269; + $270 = HEAP32[$2>>2]|0; + $271 = (($270) + 12|0); + $272 = HEAP32[$271>>2]|0; + HEAP32[$savedOffset>>2] = $272; + $273 = HEAP32[$regLimitB>>2]|0; + $274 = HEAP32[$2>>2]|0; + $275 = (($274) + 8|0); + HEAP32[$275>>2] = $273; + $276 = HEAP32[$2>>2]|0; + $277 = (($276) + 12|0); + HEAP32[$277>>2] = 0; + $278 = HEAP32[$1>>2]|0; + $279 = (($278) + 468|0); + $280 = HEAP32[$279>>2]|0; + HEAP32[$iSub2>>2] = $280; + $281 = HEAP32[$1>>2]|0; + $282 = HEAP32[$2>>2]|0; + (_sqlite3Select($281,$282,$destB)|0); + $283 = HEAP32[$savedLimit>>2]|0; + $284 = HEAP32[$2>>2]|0; + $285 = (($284) + 8|0); + HEAP32[$285>>2] = $283; + $286 = HEAP32[$savedOffset>>2]|0; + $287 = HEAP32[$2>>2]|0; + $288 = (($287) + 12|0); + HEAP32[$288>>2] = $286; + $289 = HEAP32[$v>>2]|0; + $290 = HEAP32[$regAddrB>>2]|0; + (_sqlite3VdbeAddOp1($289,21,$290)|0); + $291 = HEAP32[$1>>2]|0; + $292 = HEAP32[$2>>2]|0; + $293 = HEAP32[$3>>2]|0; + $294 = HEAP32[$regOutA>>2]|0; + $295 = HEAP32[$regPrev>>2]|0; + $296 = HEAP32[$pKeyDup>>2]|0; + $297 = HEAP32[$labelEnd>>2]|0; + $298 = (_generateOutputSubroutine($291,$292,$destA,$293,$294,$295,$296,$297)|0); + HEAP32[$addrOutA>>2] = $298; + $299 = HEAP32[$op>>2]|0; + $300 = ($299|0)==(116); + $301 = HEAP32[$op>>2]|0; + $302 = ($301|0)==(115); + $or$cond = $300 | $302; + if ($or$cond) { + $303 = HEAP32[$1>>2]|0; + $304 = HEAP32[$2>>2]|0; + $305 = HEAP32[$3>>2]|0; + $306 = HEAP32[$regOutB>>2]|0; + $307 = HEAP32[$regPrev>>2]|0; + $308 = HEAP32[$pKeyDup>>2]|0; + $309 = HEAP32[$labelEnd>>2]|0; + $310 = (_generateOutputSubroutine($303,$304,$destB,$305,$306,$307,$308,$309)|0); + HEAP32[$addrOutB>>2] = $310; + } + $311 = HEAP32[$pKeyDup>>2]|0; + _sqlite3KeyInfoUnref($311); + $312 = HEAP32[$op>>2]|0; + $313 = ($312|0)==(117); + $314 = HEAP32[$op>>2]|0; + $315 = ($314|0)==(118); + $or$cond3 = $313 | $315; + if ($or$cond3) { + $316 = HEAP32[$labelEnd>>2]|0; + HEAP32[$addrEofA>>2] = $316; + HEAP32[$addrEofA_noB>>2] = $316; + } else { + $317 = HEAP32[$v>>2]|0; + $318 = HEAP32[$regOutB>>2]|0; + $319 = HEAP32[$addrOutB>>2]|0; + $320 = (_sqlite3VdbeAddOp2($317,17,$318,$319)|0); + HEAP32[$addrEofA>>2] = $320; + $321 = HEAP32[$v>>2]|0; + $322 = HEAP32[$regAddrB>>2]|0; + $323 = HEAP32[$labelEnd>>2]|0; + $324 = (_sqlite3VdbeAddOp2($321,22,$322,$323)|0); + HEAP32[$addrEofA_noB>>2] = $324; + $325 = HEAP32[$v>>2]|0; + $326 = HEAP32[$addrEofA>>2]|0; + (_sqlite3VdbeAddOp2($325,16,0,$326)|0); + $327 = HEAP32[$pPrior>>2]|0; + $328 = (($327) + 24|0); + $329 = $328; + $330 = $329; + $331 = HEAP32[$330>>2]|0; + $332 = (($329) + 4)|0; + $333 = $332; + $334 = HEAP32[$333>>2]|0; + $335 = HEAP32[$2>>2]|0; + $336 = (($335) + 24|0); + $337 = $336; + $338 = $337; + $339 = HEAP32[$338>>2]|0; + $340 = (($337) + 4)|0; + $341 = $340; + $342 = HEAP32[$341>>2]|0; + $343 = (_i64Add(($339|0),($342|0),($331|0),($334|0))|0); + $344 = tempRet0; + $345 = $336; + $346 = $345; + HEAP32[$346>>2] = $343; + $347 = (($345) + 4)|0; + $348 = $347; + HEAP32[$348>>2] = $344; + } + $349 = HEAP32[$op>>2]|0; + $350 = ($349|0)==(118); + if ($350) { + $351 = HEAP32[$addrEofA>>2]|0; + HEAP32[$addrEofB>>2] = $351; + $352 = HEAP32[$2>>2]|0; + $353 = (($352) + 24|0); + $354 = $353; + $355 = $354; + $356 = HEAP32[$355>>2]|0; + $357 = (($354) + 4)|0; + $358 = $357; + $359 = HEAP32[$358>>2]|0; + $360 = HEAP32[$pPrior>>2]|0; + $361 = (($360) + 24|0); + $362 = $361; + $363 = $362; + $364 = HEAP32[$363>>2]|0; + $365 = (($362) + 4)|0; + $366 = $365; + $367 = HEAP32[$366>>2]|0; + $368 = ($359>>>0)>($367>>>0); + $369 = ($359|0)==($367|0); + $370 = ($356>>>0)>($364>>>0); + $371 = $369 & $370; + $372 = $368 | $371; + if ($372) { + $373 = HEAP32[$pPrior>>2]|0; + $374 = (($373) + 24|0); + $375 = $374; + $376 = $375; + $377 = HEAP32[$376>>2]|0; + $378 = (($375) + 4)|0; + $379 = $378; + $380 = HEAP32[$379>>2]|0; + $381 = HEAP32[$2>>2]|0; + $382 = (($381) + 24|0); + $383 = $382; + $384 = $383; + HEAP32[$384>>2] = $377; + $385 = (($383) + 4)|0; + $386 = $385; + HEAP32[$386>>2] = $380; + } + } else { + $387 = HEAP32[$v>>2]|0; + $388 = HEAP32[$regOutA>>2]|0; + $389 = HEAP32[$addrOutA>>2]|0; + $390 = (_sqlite3VdbeAddOp2($387,17,$388,$389)|0); + HEAP32[$addrEofB>>2] = $390; + $391 = HEAP32[$v>>2]|0; + $392 = HEAP32[$regAddrA>>2]|0; + $393 = HEAP32[$labelEnd>>2]|0; + (_sqlite3VdbeAddOp2($391,22,$392,$393)|0); + $394 = HEAP32[$v>>2]|0; + $395 = HEAP32[$addrEofB>>2]|0; + (_sqlite3VdbeAddOp2($394,16,0,$395)|0); + } + $396 = HEAP32[$v>>2]|0; + $397 = HEAP32[$regOutA>>2]|0; + $398 = HEAP32[$addrOutA>>2]|0; + $399 = (_sqlite3VdbeAddOp2($396,17,$397,$398)|0); + HEAP32[$addrAltB>>2] = $399; + $400 = HEAP32[$v>>2]|0; + $401 = HEAP32[$regAddrA>>2]|0; + $402 = HEAP32[$addrEofA>>2]|0; + (_sqlite3VdbeAddOp2($400,22,$401,$402)|0); + $403 = HEAP32[$v>>2]|0; + $404 = HEAP32[$labelCmpr>>2]|0; + (_sqlite3VdbeAddOp2($403,16,0,$404)|0); + $405 = HEAP32[$op>>2]|0; + $406 = ($405|0)==(116); + do { + if ($406) { + $407 = HEAP32[$addrAltB>>2]|0; + HEAP32[$addrAeqB>>2] = $407; + } else { + $408 = HEAP32[$op>>2]|0; + $409 = ($408|0)==(118); + if ($409) { + $410 = HEAP32[$addrAltB>>2]|0; + HEAP32[$addrAeqB>>2] = $410; + $411 = HEAP32[$addrAltB>>2]|0; + $412 = (($411) + 1)|0; + HEAP32[$addrAltB>>2] = $412; + break; + } else { + $413 = HEAP32[$v>>2]|0; + $414 = HEAP32[$regAddrA>>2]|0; + $415 = HEAP32[$addrEofA>>2]|0; + $416 = (_sqlite3VdbeAddOp2($413,22,$414,$415)|0); + HEAP32[$addrAeqB>>2] = $416; + $417 = HEAP32[$v>>2]|0; + $418 = HEAP32[$labelCmpr>>2]|0; + (_sqlite3VdbeAddOp2($417,16,0,$418)|0); + break; + } + } + } while(0); + $419 = HEAP32[$v>>2]|0; + $420 = (_sqlite3VdbeCurrentAddr($419)|0); + HEAP32[$addrAgtB>>2] = $420; + $421 = HEAP32[$op>>2]|0; + $422 = ($421|0)==(116); + $423 = HEAP32[$op>>2]|0; + $424 = ($423|0)==(115); + $or$cond5 = $422 | $424; + if ($or$cond5) { + $425 = HEAP32[$v>>2]|0; + $426 = HEAP32[$regOutB>>2]|0; + $427 = HEAP32[$addrOutB>>2]|0; + (_sqlite3VdbeAddOp2($425,17,$426,$427)|0); + } + $428 = HEAP32[$v>>2]|0; + $429 = HEAP32[$regAddrB>>2]|0; + $430 = HEAP32[$addrEofB>>2]|0; + (_sqlite3VdbeAddOp2($428,22,$429,$430)|0); + $431 = HEAP32[$v>>2]|0; + $432 = HEAP32[$labelCmpr>>2]|0; + (_sqlite3VdbeAddOp2($431,16,0,$432)|0); + $433 = HEAP32[$v>>2]|0; + $434 = HEAP32[$j1>>2]|0; + _sqlite3VdbeJumpHere($433,$434); + $435 = HEAP32[$v>>2]|0; + $436 = HEAP32[$regAddrA>>2]|0; + $437 = HEAP32[$addrEofA_noB>>2]|0; + (_sqlite3VdbeAddOp2($435,22,$436,$437)|0); + $438 = HEAP32[$v>>2]|0; + $439 = HEAP32[$regAddrB>>2]|0; + $440 = HEAP32[$addrEofB>>2]|0; + (_sqlite3VdbeAddOp2($438,22,$439,$440)|0); + $441 = HEAP32[$v>>2]|0; + $442 = HEAP32[$labelCmpr>>2]|0; + _sqlite3VdbeResolveLabel($441,$442); + $443 = HEAP32[$v>>2]|0; + $444 = HEAP32[$aPermute>>2]|0; + (_sqlite3VdbeAddOp4($443,40,0,0,0,$444,-15)|0); + $445 = HEAP32[$v>>2]|0; + $446 = (($destA) + 8|0); + $447 = HEAP32[$446>>2]|0; + $448 = (($destB) + 8|0); + $449 = HEAP32[$448>>2]|0; + $450 = HEAP32[$nOrderBy>>2]|0; + $451 = HEAP32[$pKeyMerge>>2]|0; + (_sqlite3VdbeAddOp4($445,41,$447,$449,$450,$451,-6)|0); + $452 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($452,1); + $453 = HEAP32[$v>>2]|0; + $454 = HEAP32[$addrAltB>>2]|0; + $455 = HEAP32[$addrAeqB>>2]|0; + $456 = HEAP32[$addrAgtB>>2]|0; + (_sqlite3VdbeAddOp3($453,42,$454,$455,$456)|0); + $457 = HEAP32[$v>>2]|0; + $458 = HEAP32[$labelEnd>>2]|0; + _sqlite3VdbeResolveLabel($457,$458); + $459 = HEAP32[$3>>2]|0; + $460 = HEAP8[$459>>0]|0; + $461 = $460&255; + $462 = ($461|0)==(9); + if ($462) { + $463 = HEAP32[$pPrior>>2]|0; + HEAP32[$pFirst>>2] = $463; + while(1) { + $464 = HEAP32[$pFirst>>2]|0; + $465 = (($464) + 52|0); + $466 = HEAP32[$465>>2]|0; + $467 = ($466|0)!=(0|0); + if (!($467)) { + break; + } + $468 = HEAP32[$pFirst>>2]|0; + $469 = (($468) + 52|0); + $470 = HEAP32[$469>>2]|0; + HEAP32[$pFirst>>2] = $470; + } + $471 = HEAP32[$1>>2]|0; + $472 = HEAP32[$pFirst>>2]|0; + $473 = HEAP32[$472>>2]|0; + _generateColumnNames($471,0,$473); + } + $474 = HEAP32[$2>>2]|0; + $475 = (($474) + 52|0); + $476 = HEAP32[$475>>2]|0; + $477 = ($476|0)!=(0|0); + if ($477) { + $478 = HEAP32[$db>>2]|0; + $479 = HEAP32[$2>>2]|0; + $480 = (($479) + 52|0); + $481 = HEAP32[$480>>2]|0; + _sqlite3SelectDelete($478,$481); + } + $482 = HEAP32[$pPrior>>2]|0; + $483 = HEAP32[$2>>2]|0; + $484 = (($483) + 52|0); + HEAP32[$484>>2] = $482; + $485 = HEAP32[$2>>2]|0; + $486 = HEAP32[$pPrior>>2]|0; + $487 = (($486) + 56|0); + HEAP32[$487>>2] = $485; + $488 = HEAP32[$1>>2]|0; + $489 = HEAP32[$2>>2]|0; + $490 = (($489) + 4|0); + $491 = HEAP8[$490>>0]|0; + $492 = $491&255; + $493 = HEAP32[$iSub1>>2]|0; + $494 = HEAP32[$iSub2>>2]|0; + _explainComposite($488,$492,$493,$494,0); + HEAP32[$0>>2] = 0; + $495 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($495|0); +} +function _explainComposite($pParse,$op,$iSub1,$iSub2,$bUseTmp) { + $pParse = $pParse|0; + $op = $op|0; + $iSub1 = $iSub1|0; + $iSub2 = $iSub2|0; + $bUseTmp = $bUseTmp|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $v = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $zMsg = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 40|0; + $1 = sp + 16|0; + $2 = sp + 20|0; + $3 = sp + 24|0; + $4 = sp + 28|0; + $v = sp + 32|0; + $zMsg = sp + 36|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $op; + HEAP32[$2>>2] = $iSub1; + HEAP32[$3>>2] = $iSub2; + HEAP32[$4>>2] = $bUseTmp; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 450|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = ($8|0)==(2); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 8|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$v>>2] = $12; + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$3>>2]|0; + $17 = HEAP32[$4>>2]|0; + $18 = ($17|0)!=(0); + $19 = $18 ? 31752 : 1784; + $20 = HEAP32[$1>>2]|0; + $21 = (_selectOpName($20)|0); + HEAP32[$vararg_buffer>>2] = $15; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $16; + $vararg_ptr2 = (($vararg_buffer) + 8|0); + HEAP32[$vararg_ptr2>>2] = $19; + $vararg_ptr3 = (($vararg_buffer) + 12|0); + HEAP32[$vararg_ptr3>>2] = $21; + $22 = (_sqlite3MPrintf($14,31712,$vararg_buffer)|0); + HEAP32[$zMsg>>2] = $22; + $23 = HEAP32[$v>>2]|0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 464|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$zMsg>>2]|0; + (_sqlite3VdbeAddOp4($23,157,$26,0,0,$27,-1)|0); + STACKTOP = sp;return; +} +function _multiSelectCollSeq($pParse,$p,$iCol) { + $pParse = $pParse|0; + $p = $p|0; + $iCol = $iCol|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pRet = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pRet = sp + 8|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $iCol; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 52|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if ($6) { + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 52|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = (_multiSelectCollSeq($7,$10,$11)|0); + HEAP32[$pRet>>2] = $12; + } else { + HEAP32[$pRet>>2] = 0; + } + $13 = HEAP32[$pRet>>2]|0; + $14 = ($13|0)==(0|0); + if (!($14)) { + $29 = HEAP32[$pRet>>2]|0; + STACKTOP = sp;return ($29|0); + } + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = ($15|0)<($18|0); + if (!($19)) { + $29 = HEAP32[$pRet>>2]|0; + STACKTOP = sp;return ($29|0); + } + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + (($21*20)|0)|0); + $27 = HEAP32[$26>>2]|0; + $28 = (_sqlite3ExprCollSeq($20,$27)|0); + HEAP32[$pRet>>2] = $28; + $29 = HEAP32[$pRet>>2]|0; + STACKTOP = sp;return ($29|0); +} +function _multiSelectOrderByKeyInfo($pParse,$p,$nExtra) { + $pParse = $pParse|0; + $p = $p|0; + $nExtra = $nExtra|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $8 = 0, $9 = 0, $db = 0; + var $i = 0, $nOrderBy = 0, $pColl = 0, $pItem = 0, $pOrderBy = 0, $pRet = 0, $pTerm = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $pOrderBy = sp + 28|0; + $nOrderBy = sp + 24|0; + $db = sp + 20|0; + $pRet = sp + 12|0; + $i = sp + 8|0; + $pItem = sp + 4|0; + $pTerm = sp; + $pColl = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $nExtra; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 48|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pOrderBy>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 48|0); + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$nOrderBy>>2] = $9; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$10>>2]|0; + HEAP32[$db>>2] = $11; + $12 = HEAP32[$db>>2]|0; + $13 = HEAP32[$nOrderBy>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (($13) + ($14))|0; + $16 = (_sqlite3KeyInfoAlloc($12,$15,1)|0); + HEAP32[$pRet>>2] = $16; + $17 = HEAP32[$pRet>>2]|0; + $18 = ($17|0)!=(0|0); + if (!($18)) { + $78 = HEAP32[$pRet>>2]|0; + STACKTOP = sp;return ($78|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$nOrderBy>>2]|0; + $21 = ($19|0)<($20|0); + if (!($21)) { + break; + } + $22 = HEAP32[$i>>2]|0; + $23 = HEAP32[$pOrderBy>>2]|0; + $24 = (($23) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + (($22*20)|0)|0); + HEAP32[$pItem>>2] = $26; + $27 = HEAP32[$pItem>>2]|0; + $28 = HEAP32[$27>>2]|0; + HEAP32[$pTerm>>2] = $28; + $29 = HEAP32[$pTerm>>2]|0; + $30 = (($29) + 4|0); + $31 = HEAP32[$30>>2]|0; + $32 = $31 & 256; + $33 = ($32|0)!=(0); + $34 = HEAP32[$0>>2]|0; + if ($33) { + $35 = HEAP32[$pTerm>>2]|0; + $36 = (_sqlite3ExprCollSeq($34,$35)|0); + HEAP32[$pColl>>2] = $36; + } else { + $37 = HEAP32[$1>>2]|0; + $38 = HEAP32[$pItem>>2]|0; + $39 = (($38) + 16|0); + $40 = HEAP16[$39>>1]|0; + $41 = $40&65535; + $42 = (($41) - 1)|0; + $43 = (_multiSelectCollSeq($34,$37,$42)|0); + HEAP32[$pColl>>2] = $43; + $44 = HEAP32[$pColl>>2]|0; + $45 = ($44|0)==(0|0); + if ($45) { + $46 = HEAP32[$db>>2]|0; + $47 = (($46) + 8|0); + $48 = HEAP32[$47>>2]|0; + HEAP32[$pColl>>2] = $48; + } + $49 = HEAP32[$0>>2]|0; + $50 = HEAP32[$pTerm>>2]|0; + $51 = HEAP32[$pColl>>2]|0; + $52 = HEAP32[$51>>2]|0; + $53 = (_sqlite3ExprAddCollateString($49,$50,$52)|0); + $54 = HEAP32[$i>>2]|0; + $55 = HEAP32[$pOrderBy>>2]|0; + $56 = (($55) + 4|0); + $57 = HEAP32[$56>>2]|0; + $58 = (($57) + (($54*20)|0)|0); + HEAP32[$58>>2] = $53; + } + $59 = HEAP32[$pColl>>2]|0; + $60 = HEAP32[$i>>2]|0; + $61 = HEAP32[$pRet>>2]|0; + $62 = (($61) + 20|0); + $63 = (($62) + ($60<<2)|0); + HEAP32[$63>>2] = $59; + $64 = HEAP32[$i>>2]|0; + $65 = HEAP32[$pOrderBy>>2]|0; + $66 = (($65) + 4|0); + $67 = HEAP32[$66>>2]|0; + $68 = (($67) + (($64*20)|0)|0); + $69 = (($68) + 12|0); + $70 = HEAP8[$69>>0]|0; + $71 = HEAP32[$i>>2]|0; + $72 = HEAP32[$pRet>>2]|0; + $73 = (($72) + 16|0); + $74 = HEAP32[$73>>2]|0; + $75 = (($74) + ($71)|0); + HEAP8[$75>>0] = $70; + $76 = HEAP32[$i>>2]|0; + $77 = (($76) + 1)|0; + HEAP32[$i>>2] = $77; + } + $78 = HEAP32[$pRet>>2]|0; + STACKTOP = sp;return ($78|0); +} +function _generateOutputSubroutine($pParse,$p,$pIn,$pDest,$regReturn,$regPrev,$pKeyInfo,$iBreak) { + $pParse = $pParse|0; + $p = $p|0; + $pIn = $pIn|0; + $pDest = $pDest|0; + $regReturn = $regReturn|0; + $regPrev = $regPrev|0; + $pKeyInfo = $pKeyInfo|0; + $iBreak = $iBreak|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr = 0, $iContinue = 0, $j1 = 0, $j2 = 0, $r1 = 0, $r11 = 0, $r2 = 0, $v = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 64|0; + $1 = sp + 60|0; + $2 = sp + 56|0; + $3 = sp + 52|0; + $4 = sp + 48|0; + $5 = sp + 44|0; + $6 = sp + 40|0; + $7 = sp + 36|0; + $8 = sp + 32|0; + $v = sp + 24|0; + $iContinue = sp + 20|0; + $addr = sp + 16|0; + $j1 = sp + 12|0; + $j2 = sp + 8|0; + $r1 = sp + 4|0; + $r2 = sp; + $r11 = sp + 28|0; + HEAP32[$1>>2] = $pParse; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $pIn; + HEAP32[$4>>2] = $pDest; + HEAP32[$5>>2] = $regReturn; + HEAP32[$6>>2] = $regPrev; + HEAP32[$7>>2] = $pKeyInfo; + HEAP32[$8>>2] = $iBreak; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 8|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$v>>2] = $11; + $12 = HEAP32[$v>>2]|0; + $13 = (_sqlite3VdbeCurrentAddr($12)|0); + HEAP32[$addr>>2] = $13; + $14 = HEAP32[$v>>2]|0; + $15 = (_sqlite3VdbeMakeLabel($14)|0); + HEAP32[$iContinue>>2] = $15; + $16 = HEAP32[$6>>2]|0; + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$v>>2]|0; + $19 = HEAP32[$6>>2]|0; + $20 = (_sqlite3VdbeAddOp1($18,45,$19)|0); + HEAP32[$j1>>2] = $20; + $21 = HEAP32[$v>>2]|0; + $22 = HEAP32[$3>>2]|0; + $23 = (($22) + 8|0); + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$6>>2]|0; + $26 = (($25) + 1)|0; + $27 = HEAP32[$3>>2]|0; + $28 = (($27) + 12|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$7>>2]|0; + $31 = (_sqlite3KeyInfoRef($30)|0); + $32 = (_sqlite3VdbeAddOp4($21,41,$24,$26,$29,$31,-6)|0); + HEAP32[$j2>>2] = $32; + $33 = HEAP32[$v>>2]|0; + $34 = HEAP32[$j2>>2]|0; + $35 = (($34) + 2)|0; + $36 = HEAP32[$iContinue>>2]|0; + $37 = HEAP32[$j2>>2]|0; + $38 = (($37) + 2)|0; + (_sqlite3VdbeAddOp3($33,42,$35,$36,$38)|0); + $39 = HEAP32[$v>>2]|0; + $40 = HEAP32[$j1>>2]|0; + _sqlite3VdbeJumpHere($39,$40); + $41 = HEAP32[$v>>2]|0; + $42 = HEAP32[$3>>2]|0; + $43 = (($42) + 8|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$6>>2]|0; + $46 = (($45) + 1)|0; + $47 = HEAP32[$3>>2]|0; + $48 = (($47) + 12|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) - 1)|0; + (_sqlite3VdbeAddOp3($41,33,$44,$46,$50)|0); + $51 = HEAP32[$v>>2]|0; + $52 = HEAP32[$6>>2]|0; + (_sqlite3VdbeAddOp2($51,25,1,$52)|0); + } + $53 = HEAP32[$1>>2]|0; + $54 = HEAP32[$53>>2]|0; + $55 = (($54) + 64|0); + $56 = HEAP8[$55>>0]|0; + $57 = ($56<<24>>24)!=(0); + if ($57) { + HEAP32[$0>>2] = 0; + $190 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($190|0); + } + $58 = HEAP32[$v>>2]|0; + $59 = HEAP32[$2>>2]|0; + $60 = (($59) + 12|0); + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$iContinue>>2]|0; + _codeOffset($58,$61,$62); + $63 = HEAP32[$4>>2]|0; + $64 = HEAP8[$63>>0]|0; + $65 = $64&255; + switch ($65|0) { + case 12: case 14: { + $66 = HEAP32[$1>>2]|0; + $67 = (_sqlite3GetTempReg($66)|0); + HEAP32[$r1>>2] = $67; + $68 = HEAP32[$1>>2]|0; + $69 = (_sqlite3GetTempReg($68)|0); + HEAP32[$r2>>2] = $69; + $70 = HEAP32[$v>>2]|0; + $71 = HEAP32[$3>>2]|0; + $72 = (($71) + 8|0); + $73 = HEAP32[$72>>2]|0; + $74 = HEAP32[$3>>2]|0; + $75 = (($74) + 12|0); + $76 = HEAP32[$75>>2]|0; + $77 = HEAP32[$r1>>2]|0; + (_sqlite3VdbeAddOp3($70,48,$73,$76,$77)|0); + $78 = HEAP32[$v>>2]|0; + $79 = HEAP32[$4>>2]|0; + $80 = (($79) + 4|0); + $81 = HEAP32[$80>>2]|0; + $82 = HEAP32[$r2>>2]|0; + (_sqlite3VdbeAddOp2($78,69,$81,$82)|0); + $83 = HEAP32[$v>>2]|0; + $84 = HEAP32[$4>>2]|0; + $85 = (($84) + 4|0); + $86 = HEAP32[$85>>2]|0; + $87 = HEAP32[$r1>>2]|0; + $88 = HEAP32[$r2>>2]|0; + (_sqlite3VdbeAddOp3($83,70,$86,$87,$88)|0); + $89 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($89,8); + $90 = HEAP32[$1>>2]|0; + $91 = HEAP32[$r2>>2]|0; + _sqlite3ReleaseTempReg($90,$91); + $92 = HEAP32[$1>>2]|0; + $93 = HEAP32[$r1>>2]|0; + _sqlite3ReleaseTempReg($92,$93); + break; + } + case 13: { + $132 = HEAP32[$4>>2]|0; + $133 = (($132) + 8|0); + $134 = HEAP32[$133>>2]|0; + $135 = ($134|0)==(0); + if ($135) { + $136 = HEAP32[$1>>2]|0; + $137 = HEAP32[$3>>2]|0; + $138 = (($137) + 12|0); + $139 = HEAP32[$138>>2]|0; + $140 = (_sqlite3GetTempRange($136,$139)|0); + $141 = HEAP32[$4>>2]|0; + $142 = (($141) + 8|0); + HEAP32[$142>>2] = $140; + $143 = HEAP32[$3>>2]|0; + $144 = (($143) + 12|0); + $145 = HEAP32[$144>>2]|0; + $146 = HEAP32[$4>>2]|0; + $147 = (($146) + 12|0); + HEAP32[$147>>2] = $145; + } + $148 = HEAP32[$1>>2]|0; + $149 = HEAP32[$3>>2]|0; + $150 = (($149) + 8|0); + $151 = HEAP32[$150>>2]|0; + $152 = HEAP32[$4>>2]|0; + $153 = (($152) + 8|0); + $154 = HEAP32[$153>>2]|0; + $155 = HEAP32[$4>>2]|0; + $156 = (($155) + 12|0); + $157 = HEAP32[$156>>2]|0; + _sqlite3ExprCodeMove($148,$151,$154,$157); + $158 = HEAP32[$v>>2]|0; + $159 = HEAP32[$4>>2]|0; + $160 = (($159) + 4|0); + $161 = HEAP32[$160>>2]|0; + (_sqlite3VdbeAddOp1($158,22,$161)|0); + break; + } + case 11: { + $94 = HEAP32[$2>>2]|0; + $95 = HEAP32[$94>>2]|0; + $96 = (($95) + 4|0); + $97 = HEAP32[$96>>2]|0; + $98 = HEAP32[$97>>2]|0; + $99 = HEAP32[$4>>2]|0; + $100 = (($99) + 1|0); + $101 = HEAP8[$100>>0]|0; + $102 = (_sqlite3CompareAffinity($98,$101)|0); + $103 = HEAP32[$4>>2]|0; + $104 = (($103) + 1|0); + HEAP8[$104>>0] = $102; + $105 = HEAP32[$1>>2]|0; + $106 = (_sqlite3GetTempReg($105)|0); + HEAP32[$r11>>2] = $106; + $107 = HEAP32[$v>>2]|0; + $108 = HEAP32[$3>>2]|0; + $109 = (($108) + 8|0); + $110 = HEAP32[$109>>2]|0; + $111 = HEAP32[$r11>>2]|0; + $112 = HEAP32[$4>>2]|0; + $113 = (($112) + 1|0); + (_sqlite3VdbeAddOp4($107,48,$110,1,$111,$113,1)|0); + $114 = HEAP32[$1>>2]|0; + $115 = HEAP32[$3>>2]|0; + $116 = (($115) + 8|0); + $117 = HEAP32[$116>>2]|0; + _sqlite3ExprCacheAffinityChange($114,$117,1); + $118 = HEAP32[$v>>2]|0; + $119 = HEAP32[$4>>2]|0; + $120 = (($119) + 4|0); + $121 = HEAP32[$120>>2]|0; + $122 = HEAP32[$r11>>2]|0; + (_sqlite3VdbeAddOp2($118,107,$121,$122)|0); + $123 = HEAP32[$1>>2]|0; + $124 = HEAP32[$r11>>2]|0; + _sqlite3ReleaseTempReg($123,$124); + break; + } + case 10: { + $125 = HEAP32[$1>>2]|0; + $126 = HEAP32[$3>>2]|0; + $127 = (($126) + 8|0); + $128 = HEAP32[$127>>2]|0; + $129 = HEAP32[$4>>2]|0; + $130 = (($129) + 4|0); + $131 = HEAP32[$130>>2]|0; + _sqlite3ExprCodeMove($125,$128,$131,1); + break; + } + default: { + $162 = HEAP32[$v>>2]|0; + $163 = HEAP32[$3>>2]|0; + $164 = (($163) + 8|0); + $165 = HEAP32[$164>>2]|0; + $166 = HEAP32[$3>>2]|0; + $167 = (($166) + 12|0); + $168 = HEAP32[$167>>2]|0; + (_sqlite3VdbeAddOp2($162,35,$165,$168)|0); + $169 = HEAP32[$1>>2]|0; + $170 = HEAP32[$3>>2]|0; + $171 = (($170) + 8|0); + $172 = HEAP32[$171>>2]|0; + $173 = HEAP32[$3>>2]|0; + $174 = (($173) + 12|0); + $175 = HEAP32[$174>>2]|0; + _sqlite3ExprCacheAffinityChange($169,$172,$175); + } + } + $176 = HEAP32[$2>>2]|0; + $177 = (($176) + 8|0); + $178 = HEAP32[$177>>2]|0; + $179 = ($178|0)!=(0); + if ($179) { + $180 = HEAP32[$v>>2]|0; + $181 = HEAP32[$2>>2]|0; + $182 = (($181) + 8|0); + $183 = HEAP32[$182>>2]|0; + $184 = HEAP32[$8>>2]|0; + (_sqlite3VdbeAddOp3($180,136,$183,$184,-1)|0); + } + $185 = HEAP32[$v>>2]|0; + $186 = HEAP32[$iContinue>>2]|0; + _sqlite3VdbeResolveLabel($185,$186); + $187 = HEAP32[$v>>2]|0; + $188 = HEAP32[$5>>2]|0; + (_sqlite3VdbeAddOp1($187,18,$188)|0); + $189 = HEAP32[$addr>>2]|0; + HEAP32[$0>>2] = $189; + $190 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($190|0); +} +function _substExprList($db,$pList,$iTable,$pEList) { + $db = $db|0; + $pList = $pList|0; + $iTable = $iTable|0; + $pEList = $pEList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $i = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pList; + HEAP32[$2>>2] = $iTable; + HEAP32[$3>>2] = $pEList; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)==(0|0); + if ($5) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $6 = HEAP32[$i>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = ($6|0)<($8|0); + if (!($9)) { + break; + } + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$i>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + (($11*20)|0)|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$3>>2]|0; + $19 = (_substExpr($10,$16,$17,$18)|0); + $20 = HEAP32[$i>>2]|0; + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + (($20*20)|0)|0); + HEAP32[$24>>2] = $19; + $25 = HEAP32[$i>>2]|0; + $26 = (($25) + 1)|0; + HEAP32[$i>>2] = $26; + } + STACKTOP = sp;return; +} +function _substExpr($db,$pExpr,$iTable,$pEList) { + $db = $db|0; + $pExpr = $pExpr|0; + $iTable = $iTable|0; + $pEList = $pEList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $pNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $pNew = sp + 16|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pExpr; + HEAP32[$3>>2] = $iTable; + HEAP32[$4>>2] = $pEList; + $5 = HEAP32[$2>>2]|0; + $6 = ($5|0)==(0|0); + if ($6) { + HEAP32[$0>>2] = 0; + $69 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($69|0); + } + $7 = HEAP32[$2>>2]|0; + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = ($9|0)==(154); + do { + if ($10) { + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 28|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$3>>2]|0; + $15 = ($13|0)==($14|0); + if ($15) { + $16 = HEAP32[$2>>2]|0; + $17 = (($16) + 32|0); + $18 = HEAP16[$17>>1]|0; + $19 = $18 << 16 >> 16; + $20 = ($19|0)<(0); + if ($20) { + $21 = HEAP32[$2>>2]|0; + HEAP8[$21>>0] = 101; + break; + } else { + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$2>>2]|0; + $24 = (($23) + 32|0); + $25 = HEAP16[$24>>1]|0; + $26 = $25 << 16 >> 16; + $27 = HEAP32[$4>>2]|0; + $28 = (($27) + 4|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + (($26*20)|0)|0); + $31 = HEAP32[$30>>2]|0; + $32 = (_sqlite3ExprDup($22,$31,0)|0); + HEAP32[$pNew>>2] = $32; + $33 = HEAP32[$1>>2]|0; + $34 = HEAP32[$2>>2]|0; + _sqlite3ExprDelete($33,$34); + $35 = HEAP32[$pNew>>2]|0; + HEAP32[$2>>2] = $35; + break; + } + } else { + label = 8; + } + } else { + label = 8; + } + } while(0); + do { + if ((label|0) == 8) { + $36 = HEAP32[$1>>2]|0; + $37 = HEAP32[$2>>2]|0; + $38 = (($37) + 12|0); + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$3>>2]|0; + $41 = HEAP32[$4>>2]|0; + $42 = (_substExpr($36,$39,$40,$41)|0); + $43 = HEAP32[$2>>2]|0; + $44 = (($43) + 12|0); + HEAP32[$44>>2] = $42; + $45 = HEAP32[$1>>2]|0; + $46 = HEAP32[$2>>2]|0; + $47 = (($46) + 16|0); + $48 = HEAP32[$47>>2]|0; + $49 = HEAP32[$3>>2]|0; + $50 = HEAP32[$4>>2]|0; + $51 = (_substExpr($45,$48,$49,$50)|0); + $52 = HEAP32[$2>>2]|0; + $53 = (($52) + 16|0); + HEAP32[$53>>2] = $51; + $54 = HEAP32[$2>>2]|0; + $55 = (($54) + 4|0); + $56 = HEAP32[$55>>2]|0; + $57 = $56 & 2048; + $58 = ($57|0)!=(0); + $59 = HEAP32[$1>>2]|0; + $60 = HEAP32[$2>>2]|0; + $61 = (($60) + 20|0); + if ($58) { + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$3>>2]|0; + $64 = HEAP32[$4>>2]|0; + _substSelect($59,$62,$63,$64); + break; + } else { + $65 = HEAP32[$61>>2]|0; + $66 = HEAP32[$3>>2]|0; + $67 = HEAP32[$4>>2]|0; + _substExprList($59,$65,$66,$67); + break; + } + } + } while(0); + $68 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $68; + $69 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($69|0); +} +function _substSelect($db,$p,$iTable,$pEList) { + $db = $db|0; + $p = $p|0; + $iTable = $iTable|0; + $pEList = $pEList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pItem = 0, $pSrc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pSrc = sp + 12|0; + $pItem = sp + 16|0; + $i = sp + 20|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $iTable; + HEAP32[$3>>2] = $pEList; + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = HEAP32[$3>>2]|0; + _substExprList($6,$8,$9,$10); + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 40|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$3>>2]|0; + _substExprList($11,$14,$15,$16); + $17 = HEAP32[$0>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 48|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = HEAP32[$3>>2]|0; + _substExprList($17,$20,$21,$22); + $23 = HEAP32[$0>>2]|0; + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 44|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = HEAP32[$3>>2]|0; + $29 = (_substExpr($23,$26,$27,$28)|0); + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 44|0); + HEAP32[$31>>2] = $29; + $32 = HEAP32[$0>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 36|0); + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$2>>2]|0; + $37 = HEAP32[$3>>2]|0; + $38 = (_substExpr($32,$35,$36,$37)|0); + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 36|0); + HEAP32[$40>>2] = $38; + $41 = HEAP32[$0>>2]|0; + $42 = HEAP32[$1>>2]|0; + $43 = (($42) + 52|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$2>>2]|0; + $46 = HEAP32[$3>>2]|0; + _substSelect($41,$44,$45,$46); + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 32|0); + $49 = HEAP32[$48>>2]|0; + HEAP32[$pSrc>>2] = $49; + $50 = HEAP32[$pSrc>>2]|0; + $51 = ($50|0)!=(0|0); + if (!($51)) { + STACKTOP = sp;return; + } + $52 = HEAP32[$pSrc>>2]|0; + $53 = HEAP32[$52>>2]|0; + HEAP32[$i>>2] = $53; + $54 = HEAP32[$pSrc>>2]|0; + $55 = (($54) + 8|0); + HEAP32[$pItem>>2] = $55; + while(1) { + $56 = HEAP32[$i>>2]|0; + $57 = ($56|0)>(0); + if (!($57)) { + break; + } + $58 = HEAP32[$0>>2]|0; + $59 = HEAP32[$pItem>>2]|0; + $60 = (($59) + 20|0); + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$2>>2]|0; + $63 = HEAP32[$3>>2]|0; + _substSelect($58,$61,$62,$63); + $64 = HEAP32[$i>>2]|0; + $65 = (($64) + -1)|0; + HEAP32[$i>>2] = $65; + $66 = HEAP32[$pItem>>2]|0; + $67 = (($66) + 72|0); + HEAP32[$pItem>>2] = $67; + } + STACKTOP = sp;return; +} +function _sqlite3FkDropTable($pParse,$pName,$pTab) { + $pParse = $pParse|0; + $pName = $pName|0; + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $db = 0, $iSkip = 0, $p = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $db = sp + 8|0; + $iSkip = sp + 12|0; + $v = sp + 16|0; + $p = sp + 20|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pName; + HEAP32[$2>>2] = $pTab; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + $5 = HEAP32[$db>>2]|0; + $6 = (($5) + 24|0); + $7 = HEAP32[$6>>2]|0; + $8 = $7 & 524288; + $9 = ($8|0)!=(0); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = HEAP32[$2>>2]|0; + $11 = (($10) + 44|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = $13 & 16; + $15 = ($14|0)!=(0); + if ($15) { + STACKTOP = sp;return; + } + $16 = HEAP32[$2>>2]|0; + $17 = (($16) + 12|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($18|0)!=(0|0); + if ($19) { + STACKTOP = sp;return; + } + HEAP32[$iSkip>>2] = 0; + $20 = HEAP32[$0>>2]|0; + $21 = (_sqlite3GetVdbe($20)|0); + HEAP32[$v>>2] = $21; + $22 = HEAP32[$2>>2]|0; + $23 = (_sqlite3FkReferences($22)|0); + $24 = ($23|0)==(0|0); + do { + if ($24) { + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 16|0); + $27 = HEAP32[$26>>2]|0; + HEAP32[$p>>2] = $27; + while(1) { + $28 = HEAP32[$p>>2]|0; + $29 = ($28|0)!=(0|0); + if (!($29)) { + break; + } + $30 = HEAP32[$p>>2]|0; + $31 = (($30) + 24|0); + $32 = HEAP8[$31>>0]|0; + $33 = $32&255; + $34 = ($33|0)!=(0); + if ($34) { + break; + } + $35 = HEAP32[$db>>2]|0; + $36 = (($35) + 24|0); + $37 = HEAP32[$36>>2]|0; + $38 = $37 & 16777216; + $39 = ($38|0)!=(0); + if ($39) { + break; + } + $40 = HEAP32[$p>>2]|0; + $41 = (($40) + 4|0); + $42 = HEAP32[$41>>2]|0; + HEAP32[$p>>2] = $42; + } + $43 = HEAP32[$p>>2]|0; + $44 = ($43|0)!=(0|0); + if ($44) { + $45 = HEAP32[$v>>2]|0; + $46 = (_sqlite3VdbeMakeLabel($45)|0); + HEAP32[$iSkip>>2] = $46; + $47 = HEAP32[$v>>2]|0; + $48 = HEAP32[$iSkip>>2]|0; + (_sqlite3VdbeAddOp2($47,131,1,$48)|0); + break; + } else { + STACKTOP = sp;return; + } + } + } while(0); + $49 = HEAP32[$0>>2]|0; + $50 = (($49) + 438|0); + HEAP8[$50>>0] = 1; + $51 = HEAP32[$0>>2]|0; + $52 = HEAP32[$db>>2]|0; + $53 = HEAP32[$1>>2]|0; + $54 = (_sqlite3SrcListDup($52,$53,0)|0); + _sqlite3DeleteFrom($51,$54,0); + $55 = HEAP32[$0>>2]|0; + $56 = (($55) + 438|0); + HEAP8[$56>>0] = 0; + $57 = HEAP32[$db>>2]|0; + $58 = (($57) + 24|0); + $59 = HEAP32[$58>>2]|0; + $60 = $59 & 16777216; + $61 = ($60|0)==(0); + if ($61) { + $62 = HEAP32[$v>>2]|0; + $63 = HEAP32[$v>>2]|0; + $64 = (_sqlite3VdbeCurrentAddr($63)|0); + $65 = (($64) + 2)|0; + (_sqlite3VdbeAddOp2($62,131,0,$65)|0); + $66 = HEAP32[$0>>2]|0; + _sqlite3HaltConstraint($66,787,2,0,-2,4); + } + $67 = HEAP32[$iSkip>>2]|0; + $68 = ($67|0)!=(0); + if (!($68)) { + STACKTOP = sp;return; + } + $69 = HEAP32[$v>>2]|0; + $70 = HEAP32[$iSkip>>2]|0; + _sqlite3VdbeResolveLabel($69,$70); + STACKTOP = sp;return; +} +function _sqlite3CodeDropTable($pParse,$pTab,$iDb,$isView) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $iDb = $iDb|0; + $isView = $isView|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $8 = 0, $9 = 0, $db = 0; + var $pDb = 0, $pTrigger = 0, $v = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer2 = sp; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 40|0; + $v = sp + 16|0; + $db = sp + 12|0; + $pTrigger = sp + 20|0; + $pDb = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $iDb; + HEAP32[$3>>2] = $isView; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$db>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + ($6<<4)|0); + HEAP32[$pDb>>2] = $10; + $11 = HEAP32[$0>>2]|0; + $12 = (_sqlite3GetVdbe($11)|0); + HEAP32[$v>>2] = $12; + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$2>>2]|0; + _sqlite3BeginWriteOperation($13,1,$14); + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 44|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = $18 & 16; + $20 = ($19|0)!=(0); + if ($20) { + $21 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp0($21,141)|0); + } + $22 = HEAP32[$0>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (_sqlite3TriggerList($22,$23)|0); + HEAP32[$pTrigger>>2] = $24; + while(1) { + $25 = HEAP32[$pTrigger>>2]|0; + $26 = ($25|0)!=(0|0); + if (!($26)) { + break; + } + $27 = HEAP32[$0>>2]|0; + $28 = HEAP32[$pTrigger>>2]|0; + _sqlite3DropTriggerPtr($27,$28); + $29 = HEAP32[$pTrigger>>2]|0; + $30 = (($29) + 32|0); + $31 = HEAP32[$30>>2]|0; + HEAP32[$pTrigger>>2] = $31; + } + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 44|0); + $34 = HEAP8[$33>>0]|0; + $35 = $34&255; + $36 = $35 & 8; + $37 = ($36|0)!=(0); + if ($37) { + $38 = HEAP32[$0>>2]|0; + $39 = HEAP32[$pDb>>2]|0; + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$1>>2]|0; + $42 = HEAP32[$41>>2]|0; + HEAP32[$vararg_buffer2>>2] = $40; + $vararg_ptr1 = (($vararg_buffer2) + 4|0); + HEAP32[$vararg_ptr1>>2] = $42; + _sqlite3NestedParse($38,32064,$vararg_buffer2); + } + $43 = HEAP32[$0>>2]|0; + $44 = HEAP32[$pDb>>2]|0; + $45 = HEAP32[$44>>2]|0; + $46 = HEAP32[$2>>2]|0; + $47 = ($46|0)==(1); + $48 = $47 ? 21432 : 21456; + $49 = HEAP32[$1>>2]|0; + $50 = HEAP32[$49>>2]|0; + HEAP32[$vararg_buffer2>>2] = $45; + $vararg_ptr5 = (($vararg_buffer2) + 4|0); + HEAP32[$vararg_ptr5>>2] = $48; + $vararg_ptr6 = (($vararg_buffer2) + 8|0); + HEAP32[$vararg_ptr6>>2] = $50; + _sqlite3NestedParse($43,32112,$vararg_buffer2); + $51 = HEAP32[$3>>2]|0; + $52 = ($51|0)!=(0); + if (!($52)) { + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 44|0); + $55 = HEAP8[$54>>0]|0; + $56 = $55&255; + $57 = $56 & 16; + $58 = ($57|0)!=(0); + if (!($58)) { + $59 = HEAP32[$0>>2]|0; + $60 = HEAP32[$1>>2]|0; + _destroyTable($59,$60); + } + } + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 44|0); + $63 = HEAP8[$62>>0]|0; + $64 = $63&255; + $65 = $64 & 16; + $66 = ($65|0)!=(0); + if (!($66)) { + $71 = HEAP32[$v>>2]|0; + $72 = HEAP32[$2>>2]|0; + $73 = HEAP32[$1>>2]|0; + $74 = HEAP32[$73>>2]|0; + (_sqlite3VdbeAddOp4($71,121,$72,0,0,$74,0)|0); + $75 = HEAP32[$0>>2]|0; + $76 = HEAP32[$2>>2]|0; + _sqlite3ChangeCookie($75,$76); + $77 = HEAP32[$db>>2]|0; + $78 = HEAP32[$2>>2]|0; + _sqliteViewResetAll($77,$78); + STACKTOP = sp;return; + } + $67 = HEAP32[$v>>2]|0; + $68 = HEAP32[$2>>2]|0; + $69 = HEAP32[$1>>2]|0; + $70 = HEAP32[$69>>2]|0; + (_sqlite3VdbeAddOp4($67,148,$68,0,0,$70,0)|0); + $71 = HEAP32[$v>>2]|0; + $72 = HEAP32[$2>>2]|0; + $73 = HEAP32[$1>>2]|0; + $74 = HEAP32[$73>>2]|0; + (_sqlite3VdbeAddOp4($71,121,$72,0,0,$74,0)|0); + $75 = HEAP32[$0>>2]|0; + $76 = HEAP32[$2>>2]|0; + _sqlite3ChangeCookie($75,$76); + $77 = HEAP32[$db>>2]|0; + $78 = HEAP32[$2>>2]|0; + _sqliteViewResetAll($77,$78); + STACKTOP = sp;return; +} +function _destroyTable($pParse,$pTab) { + $pParse = $pParse|0; + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $iDb = 0, $iDestroyed = 0, $iIdx = 0, $iLargest = 0, $iTab = 0, $pIdx = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $iTab = sp + 4|0; + $iDestroyed = sp + 8|0; + $pIdx = sp + 12|0; + $iLargest = sp + 16|0; + $iIdx = sp + 20|0; + $iDb = sp + 24|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 32|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$iTab>>2] = $4; + HEAP32[$iDestroyed>>2] = 0; + while(1) { + HEAP32[$iLargest>>2] = 0; + $5 = HEAP32[$iDestroyed>>2]|0; + $6 = ($5|0)==(0); + if ($6) { + label = 4; + } else { + $7 = HEAP32[$iTab>>2]|0; + $8 = HEAP32[$iDestroyed>>2]|0; + $9 = ($7|0)<($8|0); + if ($9) { + label = 4; + } + } + if ((label|0) == 4) { + label = 0; + $10 = HEAP32[$iTab>>2]|0; + HEAP32[$iLargest>>2] = $10; + } + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 8|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pIdx>>2] = $13; + while(1) { + $14 = HEAP32[$pIdx>>2]|0; + $15 = ($14|0)!=(0|0); + if (!($15)) { + break; + } + $16 = HEAP32[$pIdx>>2]|0; + $17 = (($16) + 44|0); + $18 = HEAP32[$17>>2]|0; + HEAP32[$iIdx>>2] = $18; + $19 = HEAP32[$iDestroyed>>2]|0; + $20 = ($19|0)==(0); + if ($20) { + label = 9; + } else { + $21 = HEAP32[$iIdx>>2]|0; + $22 = HEAP32[$iDestroyed>>2]|0; + $23 = ($21|0)<($22|0); + if ($23) { + label = 9; + } + } + if ((label|0) == 9) { + label = 0; + $24 = HEAP32[$iIdx>>2]|0; + $25 = HEAP32[$iLargest>>2]|0; + $26 = ($24|0)>($25|0); + if ($26) { + $27 = HEAP32[$iIdx>>2]|0; + HEAP32[$iLargest>>2] = $27; + } + } + $28 = HEAP32[$pIdx>>2]|0; + $29 = (($28) + 20|0); + $30 = HEAP32[$29>>2]|0; + HEAP32[$pIdx>>2] = $30; + } + $31 = HEAP32[$iLargest>>2]|0; + $32 = ($31|0)==(0); + if ($32) { + break; + } + $33 = HEAP32[$0>>2]|0; + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 68|0); + $37 = HEAP32[$36>>2]|0; + $38 = (_sqlite3SchemaToIndex($34,$37)|0); + HEAP32[$iDb>>2] = $38; + $39 = HEAP32[$0>>2]|0; + $40 = HEAP32[$iLargest>>2]|0; + $41 = HEAP32[$iDb>>2]|0; + _destroyRootPage($39,$40,$41); + $42 = HEAP32[$iLargest>>2]|0; + HEAP32[$iDestroyed>>2] = $42; + } + STACKTOP = sp;return; +} +function _sqliteViewResetAll($db,$idx) { + $db = $db|0; + $idx = $idx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $i = sp + 4|0; + $pTab = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $idx; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 16|0); + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + ($2<<4)|0); + $7 = (($6) + 12|0); + $8 = HEAP32[$7>>2]|0; + $9 = (($8) + 78|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10&65535; + $12 = $11 & 2; + $13 = ($12|0)==(2); + if (!($13)) { + STACKTOP = sp;return; + } + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 16|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + ($14<<4)|0); + $19 = (($18) + 12|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + 8|0); + $22 = (($21) + 8|0); + $23 = HEAP32[$22>>2]|0; + HEAP32[$i>>2] = $23; + while(1) { + $24 = HEAP32[$i>>2]|0; + $25 = ($24|0)!=(0|0); + if (!($25)) { + break; + } + $26 = HEAP32[$i>>2]|0; + $27 = (($26) + 8|0); + $28 = HEAP32[$27>>2]|0; + HEAP32[$pTab>>2] = $28; + $29 = HEAP32[$pTab>>2]|0; + $30 = (($29) + 12|0); + $31 = HEAP32[$30>>2]|0; + $32 = ($31|0)!=(0|0); + if ($32) { + $33 = HEAP32[$0>>2]|0; + $34 = HEAP32[$pTab>>2]|0; + _sqliteDeleteColumnNames($33,$34); + $35 = HEAP32[$pTab>>2]|0; + $36 = (($35) + 4|0); + HEAP32[$36>>2] = 0; + $37 = HEAP32[$pTab>>2]|0; + $38 = (($37) + 38|0); + HEAP16[$38>>1] = 0; + } + $39 = HEAP32[$i>>2]|0; + $40 = HEAP32[$39>>2]|0; + HEAP32[$i>>2] = $40; + } + $41 = HEAP32[$1>>2]|0; + $42 = HEAP32[$0>>2]|0; + $43 = (($42) + 16|0); + $44 = HEAP32[$43>>2]|0; + $45 = (($44) + ($41<<4)|0); + $46 = (($45) + 12|0); + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + 78|0); + $49 = HEAP16[$48>>1]|0; + $50 = $49&65535; + $51 = $50 & -3; + $52 = $51&65535; + HEAP16[$48>>1] = $52; + STACKTOP = sp;return; +} +function _sqliteDeleteColumnNames($db,$pTable) { + $db = $db|0; + $pTable = $pTable|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pCol = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $i = sp + 4|0; + $pCol = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pTable; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pCol>>2] = $4; + $5 = ($4|0)!=(0|0); + if (!($5)) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $6 = HEAP32[$i>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 38|0); + $9 = HEAP16[$8>>1]|0; + $10 = $9 << 16 >> 16; + $11 = ($6|0)<($10|0); + $12 = HEAP32[$0>>2]|0; + if (!($11)) { + break; + } + $13 = HEAP32[$pCol>>2]|0; + $14 = HEAP32[$13>>2]|0; + _sqlite3DbFree($12,$14); + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$pCol>>2]|0; + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + _sqlite3ExprDelete($15,$18); + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$pCol>>2]|0; + $21 = (($20) + 8|0); + $22 = HEAP32[$21>>2]|0; + _sqlite3DbFree($19,$22); + $23 = HEAP32[$0>>2]|0; + $24 = HEAP32[$pCol>>2]|0; + $25 = (($24) + 12|0); + $26 = HEAP32[$25>>2]|0; + _sqlite3DbFree($23,$26); + $27 = HEAP32[$0>>2]|0; + $28 = HEAP32[$pCol>>2]|0; + $29 = (($28) + 16|0); + $30 = HEAP32[$29>>2]|0; + _sqlite3DbFree($27,$30); + $31 = HEAP32[$i>>2]|0; + $32 = (($31) + 1)|0; + HEAP32[$i>>2] = $32; + $33 = HEAP32[$pCol>>2]|0; + $34 = (($33) + 24|0); + HEAP32[$pCol>>2] = $34; + } + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 4|0); + $37 = HEAP32[$36>>2]|0; + _sqlite3DbFree($12,$37); + STACKTOP = sp;return; +} +function _sqlite3ResolveSelfReference($pParse,$pTab,$type,$pExpr,$pList) { + $pParse = $pParse|0; + $pTab = $pTab|0; + $type = $type|0; + $pExpr = $pExpr|0; + $pList = $pList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $sNC = 0; + var $sSrc = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; + $0 = sp + 132|0; + $1 = sp + 92|0; + $2 = sp + 80|0; + $3 = sp + 84|0; + $4 = sp + 88|0; + $sSrc = sp; + $sNC = sp + 96|0; + $i = sp + 128|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + HEAP32[$2>>2] = $type; + HEAP32[$3>>2] = $pExpr; + HEAP32[$4>>2] = $pList; + ;HEAP32[$sNC+0>>2]=0|0;HEAP32[$sNC+4>>2]=0|0;HEAP32[$sNC+8>>2]=0|0;HEAP32[$sNC+12>>2]=0|0;HEAP32[$sNC+16>>2]=0|0;HEAP32[$sNC+20>>2]=0|0;HEAP32[$sNC+24>>2]=0|0;HEAP32[$sNC+28>>2]=0|0; + dest=$sSrc+0|0; stop=dest+80|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + HEAP32[$sSrc>>2] = 1; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = (($sSrc) + 8|0); + $8 = (($7) + 8|0); + HEAP32[$8>>2] = $6; + $9 = HEAP32[$1>>2]|0; + $10 = (($sSrc) + 8|0); + $11 = (($10) + 16|0); + HEAP32[$11>>2] = $9; + $12 = (($sSrc) + 8|0); + $13 = (($12) + 40|0); + HEAP32[$13>>2] = -1; + $14 = HEAP32[$0>>2]|0; + HEAP32[$sNC>>2] = $14; + $15 = (($sNC) + 4|0); + HEAP32[$15>>2] = $sSrc; + $16 = HEAP32[$2>>2]|0; + $17 = $16&255; + $18 = (($sNC) + 28|0); + HEAP8[$18>>0] = $17; + $19 = HEAP32[$3>>2]|0; + $20 = (_sqlite3ResolveExprNames($sNC,$19)|0); + $21 = ($20|0)!=(0); + if ($21) { + STACKTOP = sp;return; + } + $22 = HEAP32[$4>>2]|0; + $23 = ($22|0)!=(0|0); + if (!($23)) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $24 = HEAP32[$i>>2]|0; + $25 = HEAP32[$4>>2]|0; + $26 = HEAP32[$25>>2]|0; + $27 = ($24|0)<($26|0); + if (!($27)) { + label = 7; + break; + } + $28 = HEAP32[$i>>2]|0; + $29 = HEAP32[$4>>2]|0; + $30 = (($29) + 4|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + (($28*20)|0)|0); + $33 = HEAP32[$32>>2]|0; + $34 = (_sqlite3ResolveExprNames($sNC,$33)|0); + $35 = ($34|0)!=(0); + if ($35) { + label = 7; + break; + } + $36 = HEAP32[$i>>2]|0; + $37 = (($36) + 1)|0; + HEAP32[$i>>2] = $37; + } + if ((label|0) == 7) { + STACKTOP = sp;return; + } +} +function _hasColumn($aiCol,$nCol,$x) { + $aiCol = $aiCol|0; + $nCol = $nCol|0; + $x = $x|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$1>>2] = $aiCol; + HEAP32[$2>>2] = $nCol; + HEAP32[$3>>2] = $x; + while(1) { + $4 = HEAP32[$2>>2]|0; + $5 = (($4) + -1)|0; + HEAP32[$2>>2] = $5; + $6 = ($4|0)>(0); + if (!($6)) { + label = 5; + break; + } + $7 = HEAP32[$3>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 2|0); + HEAP32[$1>>2] = $9; + $10 = HEAP16[$8>>1]|0; + $11 = $10 << 16 >> 16; + $12 = ($7|0)==($11|0); + if ($12) { + label = 4; + break; + } + } + if ((label|0) == 4) { + HEAP32[$0>>2] = 1; + $13 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($13|0); + } + else if ((label|0) == 5) { + HEAP32[$0>>2] = 0; + $13 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($13|0); + } + return 0|0; +} +function _estimateIndexWidth($pIdx) { + $pIdx = $pIdx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $aCol = 0, $i = 0, $wIndex = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 12|0; + $wIndex = sp; + $i = sp + 4|0; + $aCol = sp + 8|0; + $x = sp + 16|0; + HEAP32[$0>>2] = $pIdx; + HEAP32[$wIndex>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 12|0); + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$aCol>>2] = $5; + HEAP32[$i>>2] = 0; + while(1) { + $6 = HEAP32[$i>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 52|0); + $9 = HEAP16[$8>>1]|0; + $10 = $9&65535; + $11 = ($6|0)<($10|0); + if (!($11)) { + break; + } + $12 = HEAP32[$i>>2]|0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + ($12<<1)|0); + $17 = HEAP16[$16>>1]|0; + HEAP16[$x>>1] = $17; + $18 = HEAP16[$x>>1]|0; + $19 = $18 << 16 >> 16; + $20 = ($19|0)<(0); + if ($20) { + $35 = 1; + } else { + $21 = HEAP32[$i>>2]|0; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 4|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + ($21<<1)|0); + $26 = HEAP16[$25>>1]|0; + $27 = $26 << 16 >> 16; + $28 = HEAP32[$aCol>>2]|0; + $29 = (($28) + (($27*24)|0)|0); + $30 = (($29) + 22|0); + $31 = HEAP8[$30>>0]|0; + $32 = $31&255; + $35 = $32; + } + $33 = HEAP32[$wIndex>>2]|0; + $34 = (($33) + ($35))|0; + HEAP32[$wIndex>>2] = $34; + $36 = HEAP32[$i>>2]|0; + $37 = (($36) + 1)|0; + HEAP32[$i>>2] = $37; + } + $38 = HEAP32[$wIndex>>2]|0; + $39 = $38<<2; + $40 = (_sqlite3LogEst($39,0)|0); + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + 48|0); + HEAP16[$42>>1] = $40; + STACKTOP = sp;return; +} +function _freeIndex($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + _sqlite3DeleteIndexSamples($2,$3); + $4 = HEAP32[$0>>2]|0; + $5 = ($4|0)==(0|0); + if ($5) { + label = 3; + } else { + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 512|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + label = 3; + } + } + if ((label|0) == 3) { + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 40|0); + $12 = HEAP32[$11>>2]|0; + _sqlite3KeyInfoUnref($12); + } + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 36|0); + $16 = HEAP32[$15>>2]|0; + _sqlite3ExprDelete($13,$16); + $17 = HEAP32[$0>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 16|0); + $20 = HEAP32[$19>>2]|0; + _sqlite3DbFree($17,$20); + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 55|0); + $23 = HEAP8[$22>>0]|0; + $24 = ($23&255) >>> 4; + $25 = $24 & 1; + $26 = $25&255; + $27 = ($26|0)!=(0); + if (!($27)) { + $32 = HEAP32[$0>>2]|0; + $33 = HEAP32[$1>>2]|0; + _sqlite3DbFree($32,$33); + STACKTOP = sp;return; + } + $28 = HEAP32[$0>>2]|0; + $29 = HEAP32[$1>>2]|0; + $30 = (($29) + 32|0); + $31 = HEAP32[$30>>2]|0; + _sqlite3DbFree($28,$31); + $32 = HEAP32[$0>>2]|0; + $33 = HEAP32[$1>>2]|0; + _sqlite3DbFree($32,$33); + STACKTOP = sp;return; +} +function _sqlite3DeleteIndexSamples($db,$pIdx) { + $db = $db|0; + $pIdx = $pIdx|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pIdx; + STACKTOP = sp;return; +} +function _sqlite3ExprIsConstantOrFunction($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (_exprIsConst($1,2)|0); + STACKTOP = sp;return ($2|0); +} +function _convertToWithoutRowidTable($pParse,$pTab) { + $pParse = $pParse|0; + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $db = 0, $i = 0, $j = 0, $n = 0, $nPk = 0, $pIdx = 0, $pList = 0, $pPk = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $pIdx = sp + 32|0; + $pPk = sp + 28|0; + $nPk = sp + 24|0; + $i = sp + 20|0; + $j = sp + 12|0; + $db = sp + 8|0; + $v = sp + 4|0; + $pList = sp; + $n = sp + 16|0; + HEAP32[$0>>2] = $pParse; + HEAP32[$1>>2] = $pTab; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$v>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 416|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0); + if ($10) { + $11 = HEAP32[$v>>2]|0; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 416|0); + $14 = HEAP32[$13>>2]|0; + $15 = (_sqlite3VdbeGetOp($11,$14)|0); + HEAP8[$15>>0] = 117; + } + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 420|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($18|0)!=(0); + if ($19) { + $20 = HEAP32[$v>>2]|0; + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 420|0); + $23 = HEAP32[$22>>2]|0; + $24 = (_sqlite3VdbeGetOp($20,$23)|0); + HEAP8[$24>>0] = 16; + } + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 36|0); + $27 = HEAP16[$26>>1]|0; + $28 = $27 << 16 >> 16; + $29 = ($28|0)>=(0); + do { + if ($29) { + $30 = HEAP32[$0>>2]|0; + $31 = (_sqlite3ExprListAppend($30,0,0)|0); + HEAP32[$pList>>2] = $31; + $32 = HEAP32[$pList>>2]|0; + $33 = ($32|0)==(0|0); + if ($33) { + STACKTOP = sp;return; + } + $34 = HEAP32[$0>>2]|0; + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$1>>2]|0; + $37 = (($36) + 36|0); + $38 = HEAP16[$37>>1]|0; + $39 = $38 << 16 >> 16; + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 4|0); + $42 = HEAP32[$41>>2]|0; + $43 = (($42) + (($39*24)|0)|0); + $44 = HEAP32[$43>>2]|0; + $45 = (_sqlite3DbStrDup($35,$44)|0); + $46 = HEAP32[$pList>>2]|0; + $47 = (($46) + 4|0); + $48 = HEAP32[$47>>2]|0; + $49 = (($48) + 4|0); + HEAP32[$49>>2] = $45; + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 448|0); + $52 = HEAP8[$51>>0]|0; + $53 = HEAP32[$pList>>2]|0; + $54 = (($53) + 4|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + 12|0); + HEAP8[$56>>0] = $52; + $57 = HEAP32[$0>>2]|0; + $58 = HEAP32[$pList>>2]|0; + $59 = HEAP32[$1>>2]|0; + $60 = (($59) + 45|0); + $61 = HEAP8[$60>>0]|0; + $62 = $61&255; + $63 = (_sqlite3CreateIndex($57,0,0,0,$58,$62,0,0,0,0)|0); + HEAP32[$pPk>>2] = $63; + $64 = HEAP32[$pPk>>2]|0; + $65 = ($64|0)==(0|0); + if ($65) { + STACKTOP = sp;return; + } else { + $66 = HEAP32[$pPk>>2]|0; + $67 = (($66) + 55|0); + $68 = HEAP8[$67>>0]|0; + $69 = $68 & -4; + $70 = $69 | 2; + HEAP8[$67>>0] = $70; + $71 = HEAP32[$1>>2]|0; + $72 = (($71) + 36|0); + HEAP16[$72>>1] = -1; + break; + } + } else { + $73 = HEAP32[$1>>2]|0; + $74 = (_sqlite3PrimaryKeyIndex($73)|0); + HEAP32[$pPk>>2] = $74; + } + } while(0); + $75 = HEAP32[$pPk>>2]|0; + $76 = (($75) + 55|0); + $77 = HEAP8[$76>>0]|0; + $78 = $77 & -33; + $79 = $78 | 32; + HEAP8[$76>>0] = $79; + $80 = HEAP32[$pPk>>2]|0; + $81 = (($80) + 50|0); + $82 = HEAP16[$81>>1]|0; + $83 = $82&65535; + HEAP32[$nPk>>2] = $83; + HEAP32[$i>>2] = 0; + while(1) { + $84 = HEAP32[$i>>2]|0; + $85 = HEAP32[$nPk>>2]|0; + $86 = ($84|0)<($85|0); + if (!($86)) { + break; + } + $87 = HEAP32[$i>>2]|0; + $88 = HEAP32[$pPk>>2]|0; + $89 = (($88) + 4|0); + $90 = HEAP32[$89>>2]|0; + $91 = (($90) + ($87<<1)|0); + $92 = HEAP16[$91>>1]|0; + $93 = $92 << 16 >> 16; + $94 = HEAP32[$1>>2]|0; + $95 = (($94) + 4|0); + $96 = HEAP32[$95>>2]|0; + $97 = (($96) + (($93*24)|0)|0); + $98 = (($97) + 20|0); + HEAP8[$98>>0] = 1; + $99 = HEAP32[$i>>2]|0; + $100 = (($99) + 1)|0; + HEAP32[$i>>2] = $100; + } + $101 = HEAP32[$pPk>>2]|0; + $102 = (($101) + 55|0); + $103 = HEAP8[$102>>0]|0; + $104 = $103 & -9; + $105 = $104 | 8; + HEAP8[$102>>0] = $105; + $106 = HEAP32[$1>>2]|0; + $107 = (($106) + 32|0); + $108 = HEAP32[$107>>2]|0; + $109 = HEAP32[$pPk>>2]|0; + $110 = (($109) + 44|0); + HEAP32[$110>>2] = $108; + $111 = HEAP32[$1>>2]|0; + $112 = (($111) + 8|0); + $113 = HEAP32[$112>>2]|0; + HEAP32[$pIdx>>2] = $113; + L21: while(1) { + $114 = HEAP32[$pIdx>>2]|0; + $115 = ($114|0)!=(0|0); + if (!($115)) { + break; + } + $116 = HEAP32[$pIdx>>2]|0; + $117 = (($116) + 55|0); + $118 = HEAP8[$117>>0]|0; + $119 = $118 & 3; + $120 = $119&255; + $121 = ($120|0)==(2); + L24: do { + if (!($121)) { + HEAP32[$n>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $122 = HEAP32[$i>>2]|0; + $123 = HEAP32[$nPk>>2]|0; + $124 = ($122|0)<($123|0); + if (!($124)) { + break; + } + $125 = HEAP32[$pIdx>>2]|0; + $126 = (($125) + 4|0); + $127 = HEAP32[$126>>2]|0; + $128 = HEAP32[$pIdx>>2]|0; + $129 = (($128) + 50|0); + $130 = HEAP16[$129>>1]|0; + $131 = $130&65535; + $132 = HEAP32[$i>>2]|0; + $133 = HEAP32[$pPk>>2]|0; + $134 = (($133) + 4|0); + $135 = HEAP32[$134>>2]|0; + $136 = (($135) + ($132<<1)|0); + $137 = HEAP16[$136>>1]|0; + $138 = $137 << 16 >> 16; + $139 = (_hasColumn($127,$131,$138)|0); + $140 = ($139|0)!=(0); + if (!($140)) { + $141 = HEAP32[$n>>2]|0; + $142 = (($141) + 1)|0; + HEAP32[$n>>2] = $142; + } + $143 = HEAP32[$i>>2]|0; + $144 = (($143) + 1)|0; + HEAP32[$i>>2] = $144; + } + $145 = HEAP32[$n>>2]|0; + $146 = ($145|0)==(0); + if ($146) { + $147 = HEAP32[$pIdx>>2]|0; + $148 = (($147) + 50|0); + $149 = HEAP16[$148>>1]|0; + $150 = HEAP32[$pIdx>>2]|0; + $151 = (($150) + 52|0); + HEAP16[$151>>1] = $149; + break; + } + $152 = HEAP32[$db>>2]|0; + $153 = HEAP32[$pIdx>>2]|0; + $154 = HEAP32[$pIdx>>2]|0; + $155 = (($154) + 50|0); + $156 = HEAP16[$155>>1]|0; + $157 = $156&65535; + $158 = HEAP32[$n>>2]|0; + $159 = (($157) + ($158))|0; + $160 = (_resizeIndexObject($152,$153,$159)|0); + $161 = ($160|0)!=(0); + if ($161) { + label = 38; + break L21; + } + HEAP32[$i>>2] = 0; + $162 = HEAP32[$pIdx>>2]|0; + $163 = (($162) + 50|0); + $164 = HEAP16[$163>>1]|0; + $165 = $164&65535; + HEAP32[$j>>2] = $165; + while(1) { + $166 = HEAP32[$i>>2]|0; + $167 = HEAP32[$nPk>>2]|0; + $168 = ($166|0)<($167|0); + if (!($168)) { + break L24; + } + $169 = HEAP32[$pIdx>>2]|0; + $170 = (($169) + 4|0); + $171 = HEAP32[$170>>2]|0; + $172 = HEAP32[$pIdx>>2]|0; + $173 = (($172) + 50|0); + $174 = HEAP16[$173>>1]|0; + $175 = $174&65535; + $176 = HEAP32[$i>>2]|0; + $177 = HEAP32[$pPk>>2]|0; + $178 = (($177) + 4|0); + $179 = HEAP32[$178>>2]|0; + $180 = (($179) + ($176<<1)|0); + $181 = HEAP16[$180>>1]|0; + $182 = $181 << 16 >> 16; + $183 = (_hasColumn($171,$175,$182)|0); + $184 = ($183|0)!=(0); + if (!($184)) { + $185 = HEAP32[$i>>2]|0; + $186 = HEAP32[$pPk>>2]|0; + $187 = (($186) + 4|0); + $188 = HEAP32[$187>>2]|0; + $189 = (($188) + ($185<<1)|0); + $190 = HEAP16[$189>>1]|0; + $191 = HEAP32[$j>>2]|0; + $192 = HEAP32[$pIdx>>2]|0; + $193 = (($192) + 4|0); + $194 = HEAP32[$193>>2]|0; + $195 = (($194) + ($191<<1)|0); + HEAP16[$195>>1] = $190; + $196 = HEAP32[$i>>2]|0; + $197 = HEAP32[$pPk>>2]|0; + $198 = (($197) + 32|0); + $199 = HEAP32[$198>>2]|0; + $200 = (($199) + ($196<<2)|0); + $201 = HEAP32[$200>>2]|0; + $202 = HEAP32[$j>>2]|0; + $203 = HEAP32[$pIdx>>2]|0; + $204 = (($203) + 32|0); + $205 = HEAP32[$204>>2]|0; + $206 = (($205) + ($202<<2)|0); + HEAP32[$206>>2] = $201; + $207 = HEAP32[$j>>2]|0; + $208 = (($207) + 1)|0; + HEAP32[$j>>2] = $208; + } + $209 = HEAP32[$i>>2]|0; + $210 = (($209) + 1)|0; + HEAP32[$i>>2] = $210; + } + } + } while(0); + $211 = HEAP32[$pIdx>>2]|0; + $212 = (($211) + 20|0); + $213 = HEAP32[$212>>2]|0; + HEAP32[$pIdx>>2] = $213; + } + if ((label|0) == 38) { + STACKTOP = sp;return; + } + $214 = HEAP32[$nPk>>2]|0; + $215 = HEAP32[$1>>2]|0; + $216 = (($215) + 38|0); + $217 = HEAP16[$216>>1]|0; + $218 = $217 << 16 >> 16; + $219 = ($214|0)<($218|0); + if (!($219)) { + $258 = HEAP32[$1>>2]|0; + $259 = (($258) + 38|0); + $260 = HEAP16[$259>>1]|0; + $261 = HEAP32[$pPk>>2]|0; + $262 = (($261) + 52|0); + HEAP16[$262>>1] = $260; + STACKTOP = sp;return; + } + $220 = HEAP32[$db>>2]|0; + $221 = HEAP32[$pPk>>2]|0; + $222 = HEAP32[$1>>2]|0; + $223 = (($222) + 38|0); + $224 = HEAP16[$223>>1]|0; + $225 = $224 << 16 >> 16; + $226 = (_resizeIndexObject($220,$221,$225)|0); + $227 = ($226|0)!=(0); + if ($227) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + $228 = HEAP32[$nPk>>2]|0; + HEAP32[$j>>2] = $228; + while(1) { + $229 = HEAP32[$i>>2]|0; + $230 = HEAP32[$1>>2]|0; + $231 = (($230) + 38|0); + $232 = HEAP16[$231>>1]|0; + $233 = $232 << 16 >> 16; + $234 = ($229|0)<($233|0); + if (!($234)) { + break; + } + $235 = HEAP32[$pPk>>2]|0; + $236 = (($235) + 4|0); + $237 = HEAP32[$236>>2]|0; + $238 = HEAP32[$j>>2]|0; + $239 = HEAP32[$i>>2]|0; + $240 = (_hasColumn($237,$238,$239)|0); + $241 = ($240|0)!=(0); + if (!($241)) { + $242 = HEAP32[$i>>2]|0; + $243 = $242&65535; + $244 = HEAP32[$j>>2]|0; + $245 = HEAP32[$pPk>>2]|0; + $246 = (($245) + 4|0); + $247 = HEAP32[$246>>2]|0; + $248 = (($247) + ($244<<1)|0); + HEAP16[$248>>1] = $243; + $249 = HEAP32[$j>>2]|0; + $250 = HEAP32[$pPk>>2]|0; + $251 = (($250) + 32|0); + $252 = HEAP32[$251>>2]|0; + $253 = (($252) + ($249<<2)|0); + HEAP32[$253>>2] = 3640; + $254 = HEAP32[$j>>2]|0; + $255 = (($254) + 1)|0; + HEAP32[$j>>2] = $255; + } + $256 = HEAP32[$i>>2]|0; + $257 = (($256) + 1)|0; + HEAP32[$i>>2] = $257; + } + STACKTOP = sp;return; +} +function _estimateTableWidth($pTab) { + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pTabCol = 0, $wTable = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $wTable = sp; + $pTabCol = sp + 4|0; + $i = sp + 8|0; + HEAP32[$0>>2] = $pTab; + HEAP32[$wTable>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 38|0); + $3 = HEAP16[$2>>1]|0; + $4 = $3 << 16 >> 16; + HEAP32[$i>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 4|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pTabCol>>2] = $7; + while(1) { + $8 = HEAP32[$i>>2]|0; + $9 = ($8|0)>(0); + if (!($9)) { + break; + } + $10 = HEAP32[$pTabCol>>2]|0; + $11 = (($10) + 22|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + $14 = HEAP32[$wTable>>2]|0; + $15 = (($14) + ($13))|0; + HEAP32[$wTable>>2] = $15; + $16 = HEAP32[$i>>2]|0; + $17 = (($16) + -1)|0; + HEAP32[$i>>2] = $17; + $18 = HEAP32[$pTabCol>>2]|0; + $19 = (($18) + 24|0); + HEAP32[$pTabCol>>2] = $19; + } + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 36|0); + $22 = HEAP16[$21>>1]|0; + $23 = $22 << 16 >> 16; + $24 = ($23|0)<(0); + if (!($24)) { + $27 = HEAP32[$wTable>>2]|0; + $28 = $27<<2; + $29 = (_sqlite3LogEst($28,0)|0); + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 42|0); + HEAP16[$31>>1] = $29; + STACKTOP = sp;return; + } + $25 = HEAP32[$wTable>>2]|0; + $26 = (($25) + 1)|0; + HEAP32[$wTable>>2] = $26; + $27 = HEAP32[$wTable>>2]|0; + $28 = $27<<2; + $29 = (_sqlite3LogEst($28,0)|0); + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 42|0); + HEAP16[$31>>1] = $29; + STACKTOP = sp;return; +} +function _createTableStmt($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; + var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; + var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; + var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; + var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; + var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $k = 0, $len = 0, $n = 0, $pCol = 0, $vararg_buffer3 = 0, $zEnd = 0, $zSep = 0, $zSep2 = 0, $zStmt = 0, $zType = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer3 = sp; + $0 = sp + 48|0; + $1 = sp + 44|0; + $2 = sp + 40|0; + $i = sp + 36|0; + $k = sp + 32|0; + $n = sp + 28|0; + $zStmt = sp + 52|0; + $zSep = sp + 16|0; + $zSep2 = sp + 12|0; + $zEnd = sp + 8|0; + $pCol = sp + 4|0; + $len = sp + 20|0; + $zType = sp + 24|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $p; + HEAP32[$n>>2] = 0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pCol>>2] = $5; + HEAP32[$i>>2] = 0; + while(1) { + $6 = HEAP32[$i>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 38|0); + $9 = HEAP16[$8>>1]|0; + $10 = $9 << 16 >> 16; + $11 = ($6|0)<($10|0); + if (!($11)) { + break; + } + $12 = HEAP32[$pCol>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = (_identLength($13)|0); + $15 = (($14) + 5)|0; + $16 = HEAP32[$n>>2]|0; + $17 = (($16) + ($15))|0; + HEAP32[$n>>2] = $17; + $18 = HEAP32[$i>>2]|0; + $19 = (($18) + 1)|0; + HEAP32[$i>>2] = $19; + $20 = HEAP32[$pCol>>2]|0; + $21 = (($20) + 24|0); + HEAP32[$pCol>>2] = $21; + } + $22 = HEAP32[$2>>2]|0; + $23 = HEAP32[$22>>2]|0; + $24 = (_identLength($23)|0); + $25 = HEAP32[$n>>2]|0; + $26 = (($25) + ($24))|0; + HEAP32[$n>>2] = $26; + $27 = HEAP32[$n>>2]|0; + $28 = ($27|0)<(50); + if ($28) { + HEAP32[$zSep>>2] = 1784; + HEAP32[$zSep2>>2] = 16312; + HEAP32[$zEnd>>2] = 30416; + } else { + HEAP32[$zSep>>2] = 33336; + HEAP32[$zSep2>>2] = 33344; + HEAP32[$zEnd>>2] = 33352; + } + $29 = HEAP32[$2>>2]|0; + $30 = (($29) + 38|0); + $31 = HEAP16[$30>>1]|0; + $32 = $31 << 16 >> 16; + $33 = ($32*6)|0; + $34 = (35 + ($33))|0; + $35 = HEAP32[$n>>2]|0; + $36 = (($35) + ($34))|0; + HEAP32[$n>>2] = $36; + $37 = HEAP32[$n>>2]|0; + $38 = (_sqlite3DbMallocRaw(0,$37)|0); + HEAP32[$zStmt>>2] = $38; + $39 = HEAP32[$zStmt>>2]|0; + $40 = ($39|0)==(0|0); + if ($40) { + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 64|0); + HEAP8[$42>>0] = 1; + HEAP32[$0>>2] = 0; + $103 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($103|0); + } + $43 = HEAP32[$n>>2]|0; + $44 = HEAP32[$zStmt>>2]|0; + (_sqlite3_snprintf($43,$44,33360,$vararg_buffer3)|0); + $45 = HEAP32[$zStmt>>2]|0; + $46 = (_sqlite3Strlen30($45)|0); + HEAP32[$k>>2] = $46; + $47 = HEAP32[$zStmt>>2]|0; + $48 = HEAP32[$2>>2]|0; + $49 = HEAP32[$48>>2]|0; + _identPut($47,$k,$49); + $50 = HEAP32[$k>>2]|0; + $51 = (($50) + 1)|0; + HEAP32[$k>>2] = $51; + $52 = HEAP32[$zStmt>>2]|0; + $53 = (($52) + ($50)|0); + HEAP8[$53>>0] = 40; + $54 = HEAP32[$2>>2]|0; + $55 = (($54) + 4|0); + $56 = HEAP32[$55>>2]|0; + HEAP32[$pCol>>2] = $56; + HEAP32[$i>>2] = 0; + while(1) { + $57 = HEAP32[$i>>2]|0; + $58 = HEAP32[$2>>2]|0; + $59 = (($58) + 38|0); + $60 = HEAP16[$59>>1]|0; + $61 = $60 << 16 >> 16; + $62 = ($57|0)<($61|0); + $63 = HEAP32[$n>>2]|0; + $64 = HEAP32[$k>>2]|0; + $65 = (($63) - ($64))|0; + $66 = HEAP32[$k>>2]|0; + $67 = HEAP32[$zStmt>>2]|0; + $68 = (($67) + ($66)|0); + if (!($62)) { + break; + } + $69 = HEAP32[$zSep>>2]|0; + (_sqlite3_snprintf($65,$68,$69,$vararg_buffer3)|0); + $70 = HEAP32[$k>>2]|0; + $71 = HEAP32[$zStmt>>2]|0; + $72 = (($71) + ($70)|0); + $73 = (_sqlite3Strlen30($72)|0); + $74 = HEAP32[$k>>2]|0; + $75 = (($74) + ($73))|0; + HEAP32[$k>>2] = $75; + $76 = HEAP32[$zSep2>>2]|0; + HEAP32[$zSep>>2] = $76; + $77 = HEAP32[$zStmt>>2]|0; + $78 = HEAP32[$pCol>>2]|0; + $79 = HEAP32[$78>>2]|0; + _identPut($77,$k,$79); + $80 = HEAP32[$pCol>>2]|0; + $81 = (($80) + 21|0); + $82 = HEAP8[$81>>0]|0; + $83 = $82 << 24 >> 24; + $84 = (($83) - 97)|0; + $85 = (33376 + ($84<<2)|0); + $86 = HEAP32[$85>>2]|0; + HEAP32[$zType>>2] = $86; + $87 = HEAP32[$zType>>2]|0; + $88 = (_sqlite3Strlen30($87)|0); + HEAP32[$len>>2] = $88; + $89 = HEAP32[$k>>2]|0; + $90 = HEAP32[$zStmt>>2]|0; + $91 = (($90) + ($89)|0); + $92 = HEAP32[$zType>>2]|0; + $93 = HEAP32[$len>>2]|0; + _memcpy(($91|0),($92|0),($93|0))|0; + $94 = HEAP32[$len>>2]|0; + $95 = HEAP32[$k>>2]|0; + $96 = (($95) + ($94))|0; + HEAP32[$k>>2] = $96; + $97 = HEAP32[$i>>2]|0; + $98 = (($97) + 1)|0; + HEAP32[$i>>2] = $98; + $99 = HEAP32[$pCol>>2]|0; + $100 = (($99) + 24|0); + HEAP32[$pCol>>2] = $100; + } + $101 = HEAP32[$zEnd>>2]|0; + HEAP32[$vararg_buffer3>>2] = $101; + (_sqlite3_snprintf($65,$68,1768,$vararg_buffer3)|0); + $102 = HEAP32[$zStmt>>2]|0; + HEAP32[$0>>2] = $102; + $103 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($103|0); +} +function _identLength($z) { + $z = $z|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $n = sp; + HEAP32[$0>>2] = $z; + HEAP32[$n>>2] = 0; + while(1) { + $1 = HEAP32[$0>>2]|0; + $2 = HEAP8[$1>>0]|0; + $3 = ($2<<24>>24)!=(0); + if (!($3)) { + break; + } + $4 = HEAP32[$0>>2]|0; + $5 = HEAP8[$4>>0]|0; + $6 = $5 << 24 >> 24; + $7 = ($6|0)==(34); + if ($7) { + $8 = HEAP32[$n>>2]|0; + $9 = (($8) + 1)|0; + HEAP32[$n>>2] = $9; + } + $10 = HEAP32[$n>>2]|0; + $11 = (($10) + 1)|0; + HEAP32[$n>>2] = $11; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 1|0); + HEAP32[$0>>2] = $13; + } + $14 = HEAP32[$n>>2]|0; + $15 = (($14) + 2)|0; + STACKTOP = sp;return ($15|0); +} +function _identPut($z,$pIdx,$zSignedIdent) { + $z = $z|0; + $pIdx = $pIdx|0; + $zSignedIdent = $zSignedIdent|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $i = 0, $j = 0, $needQuote = 0, $zIdent = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $zIdent = sp + 8|0; + $i = sp + 12|0; + $j = sp + 16|0; + $needQuote = sp + 20|0; + HEAP32[$0>>2] = $z; + HEAP32[$1>>2] = $pIdx; + HEAP32[$2>>2] = $zSignedIdent; + $3 = HEAP32[$2>>2]|0; + HEAP32[$zIdent>>2] = $3; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$i>>2] = $5; + HEAP32[$j>>2] = 0; + while(1) { + $6 = HEAP32[$j>>2]|0; + $7 = HEAP32[$zIdent>>2]|0; + $8 = (($7) + ($6)|0); + $9 = HEAP8[$8>>0]|0; + $10 = ($9<<24>>24)!=(0); + if (!($10)) { + break; + } + $11 = HEAP32[$j>>2]|0; + $12 = HEAP32[$zIdent>>2]|0; + $13 = (($12) + ($11)|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = (136 + ($15)|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = $18 & 6; + $20 = ($19|0)!=(0); + if (!($20)) { + $21 = HEAP32[$j>>2]|0; + $22 = HEAP32[$zIdent>>2]|0; + $23 = (($22) + ($21)|0); + $24 = HEAP8[$23>>0]|0; + $25 = $24&255; + $26 = ($25|0)!=(95); + if ($26) { + break; + } + } + $27 = HEAP32[$j>>2]|0; + $28 = (($27) + 1)|0; + HEAP32[$j>>2] = $28; + } + $29 = HEAP32[$zIdent>>2]|0; + $30 = HEAP8[$29>>0]|0; + $31 = $30&255; + $32 = (136 + ($31)|0); + $33 = HEAP8[$32>>0]|0; + $34 = $33&255; + $35 = $34 & 4; + $36 = ($35|0)!=(0); + if ($36) { + $50 = 1; + } else { + $37 = HEAP32[$zIdent>>2]|0; + $38 = HEAP32[$j>>2]|0; + $39 = (_sqlite3KeywordCode($37,$38)|0); + $40 = ($39|0)!=(27); + if ($40) { + $50 = 1; + } else { + $41 = HEAP32[$j>>2]|0; + $42 = HEAP32[$zIdent>>2]|0; + $43 = (($42) + ($41)|0); + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = ($45|0)!=(0); + if ($46) { + $50 = 1; + } else { + $47 = HEAP32[$j>>2]|0; + $48 = ($47|0)==(0); + $50 = $48; + } + } + } + $49 = $50&1; + HEAP32[$needQuote>>2] = $49; + $51 = HEAP32[$needQuote>>2]|0; + $52 = ($51|0)!=(0); + if ($52) { + $53 = HEAP32[$i>>2]|0; + $54 = (($53) + 1)|0; + HEAP32[$i>>2] = $54; + $55 = HEAP32[$0>>2]|0; + $56 = (($55) + ($53)|0); + HEAP8[$56>>0] = 34; + } + HEAP32[$j>>2] = 0; + while(1) { + $57 = HEAP32[$j>>2]|0; + $58 = HEAP32[$zIdent>>2]|0; + $59 = (($58) + ($57)|0); + $60 = HEAP8[$59>>0]|0; + $61 = ($60<<24>>24)!=(0); + if (!($61)) { + break; + } + $62 = HEAP32[$j>>2]|0; + $63 = HEAP32[$zIdent>>2]|0; + $64 = (($63) + ($62)|0); + $65 = HEAP8[$64>>0]|0; + $66 = HEAP32[$i>>2]|0; + $67 = (($66) + 1)|0; + HEAP32[$i>>2] = $67; + $68 = HEAP32[$0>>2]|0; + $69 = (($68) + ($66)|0); + HEAP8[$69>>0] = $65; + $70 = HEAP32[$j>>2]|0; + $71 = HEAP32[$zIdent>>2]|0; + $72 = (($71) + ($70)|0); + $73 = HEAP8[$72>>0]|0; + $74 = $73&255; + $75 = ($74|0)==(34); + if ($75) { + $76 = HEAP32[$i>>2]|0; + $77 = (($76) + 1)|0; + HEAP32[$i>>2] = $77; + $78 = HEAP32[$0>>2]|0; + $79 = (($78) + ($76)|0); + HEAP8[$79>>0] = 34; + } + $80 = HEAP32[$j>>2]|0; + $81 = (($80) + 1)|0; + HEAP32[$j>>2] = $81; + } + $82 = HEAP32[$needQuote>>2]|0; + $83 = ($82|0)!=(0); + if (!($83)) { + $88 = HEAP32[$i>>2]|0; + $89 = HEAP32[$0>>2]|0; + $90 = (($89) + ($88)|0); + HEAP8[$90>>0] = 0; + $91 = HEAP32[$i>>2]|0; + $92 = HEAP32[$1>>2]|0; + HEAP32[$92>>2] = $91; + STACKTOP = sp;return; + } + $84 = HEAP32[$i>>2]|0; + $85 = (($84) + 1)|0; + HEAP32[$i>>2] = $85; + $86 = HEAP32[$0>>2]|0; + $87 = (($86) + ($84)|0); + HEAP8[$87>>0] = 34; + $88 = HEAP32[$i>>2]|0; + $89 = HEAP32[$0>>2]|0; + $90 = (($89) + ($88)|0); + HEAP8[$90>>0] = 0; + $91 = HEAP32[$i>>2]|0; + $92 = HEAP32[$1>>2]|0; + HEAP32[$92>>2] = $91; + STACKTOP = sp;return; +} +function _resizeIndexObject($db,$pIdx,$N) { + $db = $db|0; + $pIdx = $pIdx|0; + $N = $N|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $nByte = 0, $zExtra = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $zExtra = sp + 12|0; + $nByte = sp + 16|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pIdx; + HEAP32[$3>>2] = $N; + $4 = HEAP32[$2>>2]|0; + $5 = (($4) + 52|0); + $6 = HEAP16[$5>>1]|0; + $7 = $6&65535; + $8 = HEAP32[$3>>2]|0; + $9 = ($7|0)>=($8|0); + if ($9) { + HEAP32[$0>>2] = 0; + $69 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($69|0); + } + $10 = HEAP32[$3>>2]|0; + $11 = ($10*7)|0; + HEAP32[$nByte>>2] = $11; + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$nByte>>2]|0; + $14 = (_sqlite3DbMallocZero($12,$13)|0); + HEAP32[$zExtra>>2] = $14; + $15 = HEAP32[$zExtra>>2]|0; + $16 = ($15|0)==(0|0); + if ($16) { + HEAP32[$0>>2] = 7; + $69 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($69|0); + } else { + $17 = HEAP32[$zExtra>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = (($18) + 32|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 52|0); + $23 = HEAP16[$22>>1]|0; + $24 = $23&65535; + $25 = $24<<2; + _memcpy(($17|0),($20|0),($25|0))|0; + $26 = HEAP32[$zExtra>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 32|0); + HEAP32[$28>>2] = $26; + $29 = HEAP32[$3>>2]|0; + $30 = $29<<2; + $31 = HEAP32[$zExtra>>2]|0; + $32 = (($31) + ($30)|0); + HEAP32[$zExtra>>2] = $32; + $33 = HEAP32[$zExtra>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = (($34) + 4|0); + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$2>>2]|0; + $38 = (($37) + 52|0); + $39 = HEAP16[$38>>1]|0; + $40 = $39&65535; + $41 = $40<<1; + _memcpy(($33|0),($36|0),($41|0))|0; + $42 = HEAP32[$zExtra>>2]|0; + $43 = HEAP32[$2>>2]|0; + $44 = (($43) + 4|0); + HEAP32[$44>>2] = $42; + $45 = HEAP32[$3>>2]|0; + $46 = $45<<1; + $47 = HEAP32[$zExtra>>2]|0; + $48 = (($47) + ($46)|0); + HEAP32[$zExtra>>2] = $48; + $49 = HEAP32[$zExtra>>2]|0; + $50 = HEAP32[$2>>2]|0; + $51 = (($50) + 28|0); + $52 = HEAP32[$51>>2]|0; + $53 = HEAP32[$2>>2]|0; + $54 = (($53) + 52|0); + $55 = HEAP16[$54>>1]|0; + $56 = $55&65535; + _memcpy(($49|0),($52|0),($56|0))|0; + $57 = HEAP32[$zExtra>>2]|0; + $58 = HEAP32[$2>>2]|0; + $59 = (($58) + 28|0); + HEAP32[$59>>2] = $57; + $60 = HEAP32[$3>>2]|0; + $61 = $60&65535; + $62 = HEAP32[$2>>2]|0; + $63 = (($62) + 52|0); + HEAP16[$63>>1] = $61; + $64 = HEAP32[$2>>2]|0; + $65 = (($64) + 55|0); + $66 = HEAP8[$65>>0]|0; + $67 = $66 & -17; + $68 = $67 | 16; + HEAP8[$65>>0] = $68; + HEAP32[$0>>2] = 0; + $69 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($69|0); + } + return 0|0; +} +function _codeTableLocks($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0, $p1 = 0, $pVdbe = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $i = sp; + $pVdbe = sp + 4|0; + $p = sp + 8|0; + $p1 = sp + 12|0; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3GetVdbe($1)|0); + HEAP32[$pVdbe>>2] = $2; + HEAP32[$i>>2] = 0; + while(1) { + $3 = HEAP32[$i>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 396|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($3|0)<($6|0); + if (!($7)) { + break; + } + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 400|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + ($8<<4)|0); + HEAP32[$p>>2] = $12; + $13 = HEAP32[$p>>2]|0; + $14 = HEAP32[$13>>2]|0; + HEAP32[$p1>>2] = $14; + $15 = HEAP32[$pVdbe>>2]|0; + $16 = HEAP32[$p1>>2]|0; + $17 = HEAP32[$p>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 8|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = HEAP32[$p>>2]|0; + $25 = (($24) + 12|0); + $26 = HEAP32[$25>>2]|0; + (_sqlite3VdbeAddOp4($15,140,$16,$19,$23,$26,-2)|0); + $27 = HEAP32[$i>>2]|0; + $28 = (($27) + 1)|0; + HEAP32[$i>>2] = $28; + } + STACKTOP = sp;return; +} +function _sqlite3AutoincrementBegin($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $addr = 0, $db = 0, $memId = 0, $p = 0, $pDb = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $p = sp; + $db = sp + 4|0; + $pDb = sp + 8|0; + $memId = sp + 12|0; + $addr = sp + 16|0; + $v = sp + 20|0; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$db>>2] = $2; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$v>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 404|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$p>>2] = $8; + while(1) { + $9 = HEAP32[$p>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + break; + } + $11 = HEAP32[$p>>2]|0; + $12 = (($11) + 8|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$db>>2]|0; + $15 = (($14) + 16|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + ($13<<4)|0); + HEAP32[$pDb>>2] = $17; + $18 = HEAP32[$p>>2]|0; + $19 = (($18) + 12|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$memId>>2] = $20; + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$p>>2]|0; + $23 = (($22) + 8|0); + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$pDb>>2]|0; + $26 = (($25) + 12|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + 72|0); + $29 = HEAP32[$28>>2]|0; + _sqlite3OpenTable($21,0,$24,$29,52); + $30 = HEAP32[$v>>2]|0; + $31 = HEAP32[$memId>>2]|0; + $32 = HEAP32[$memId>>2]|0; + $33 = (($32) + 1)|0; + (_sqlite3VdbeAddOp3($30,28,0,$31,$33)|0); + $34 = HEAP32[$v>>2]|0; + $35 = (_sqlite3VdbeCurrentAddr($34)|0); + HEAP32[$addr>>2] = $35; + $36 = HEAP32[$v>>2]|0; + $37 = HEAP32[$memId>>2]|0; + $38 = (($37) - 1)|0; + $39 = HEAP32[$p>>2]|0; + $40 = (($39) + 4|0); + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$41>>2]|0; + (_sqlite3VdbeAddOp4($36,97,0,$38,0,$42,0)|0); + $43 = HEAP32[$v>>2]|0; + $44 = HEAP32[$addr>>2]|0; + $45 = (($44) + 9)|0; + (_sqlite3VdbeAddOp2($43,105,0,$45)|0); + $46 = HEAP32[$v>>2]|0; + $47 = HEAP32[$memId>>2]|0; + (_sqlite3VdbeAddOp3($46,46,0,0,$47)|0); + $48 = HEAP32[$v>>2]|0; + $49 = HEAP32[$memId>>2]|0; + $50 = (($49) - 1)|0; + $51 = HEAP32[$addr>>2]|0; + $52 = (($51) + 7)|0; + $53 = HEAP32[$memId>>2]|0; + (_sqlite3VdbeAddOp3($48,78,$50,$52,$53)|0); + $54 = HEAP32[$v>>2]|0; + _sqlite3VdbeChangeP5($54,8); + $55 = HEAP32[$v>>2]|0; + $56 = HEAP32[$memId>>2]|0; + $57 = (($56) + 1)|0; + (_sqlite3VdbeAddOp2($55,100,0,$57)|0); + $58 = HEAP32[$v>>2]|0; + $59 = HEAP32[$memId>>2]|0; + (_sqlite3VdbeAddOp3($58,46,0,1,$59)|0); + $60 = HEAP32[$v>>2]|0; + $61 = HEAP32[$addr>>2]|0; + $62 = (($61) + 9)|0; + (_sqlite3VdbeAddOp2($60,16,0,$62)|0); + $63 = HEAP32[$v>>2]|0; + $64 = HEAP32[$addr>>2]|0; + $65 = (($64) + 2)|0; + (_sqlite3VdbeAddOp2($63,9,0,$65)|0); + $66 = HEAP32[$v>>2]|0; + $67 = HEAP32[$memId>>2]|0; + (_sqlite3VdbeAddOp2($66,25,0,$67)|0); + $68 = HEAP32[$v>>2]|0; + (_sqlite3VdbeAddOp0($68,58)|0); + $69 = HEAP32[$p>>2]|0; + $70 = HEAP32[$69>>2]|0; + HEAP32[$p>>2] = $70; + } + STACKTOP = sp;return; +} +function _yyStackOverflow($yypParser,$yypMinor) { + $yypParser = $yypParser|0; + $yypMinor = $yypMinor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pParse = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 12|0; + $1 = sp + 4|0; + $pParse = sp + 8|0; + HEAP32[$0>>2] = $yypParser; + HEAP32[$1>>2] = $yypMinor; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 8|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pParse>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + -1)|0; + HEAP32[$5>>2] = $7; + while(1) { + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)>=(0); + if (!($10)) { + break; + } + $11 = HEAP32[$0>>2]|0; + (_yy_pop_parser_stack($11)|0); + } + $12 = HEAP32[$pParse>>2]|0; + _sqlite3ErrorMsg($12,33616,$vararg_buffer); + $13 = HEAP32[$pParse>>2]|0; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 8|0); + HEAP32[$15>>2] = $13; + STACKTOP = sp;return; +} +function _sqlite3Prepare($db,$zSql,$nBytes,$saveSqlFlag,$pReprepare,$ppStmt,$pzTail) { + $db = $db|0; + $zSql = $zSql|0; + $nBytes = $nBytes|0; + $saveSqlFlag = $saveSqlFlag|0; + $pReprepare = $pReprepare|0; + $ppStmt = $ppStmt|0; + $pzTail = $pzTail|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iFirst = 0, $mx = 0, $mxLen = 0, $pBt = 0, $pParse = 0, $pT = 0, $pVdbe = 0, $rc = 0, $vararg_buffer6 = 0, $zDb = 0, $zErrMsg = 0, $zSqlCopy = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer6 = sp; + $0 = sp + 72|0; + $1 = sp + 68|0; + $2 = sp + 64|0; + $3 = sp + 60|0; + $4 = sp + 56|0; + $5 = sp + 52|0; + $6 = sp + 48|0; + $pParse = sp + 44|0; + $zErrMsg = sp + 40|0; + $rc = sp + 76|0; + $i = sp + 16|0; + $pBt = sp + 12|0; + $zDb = sp + 4|0; + $zSqlCopy = sp + 8|0; + $mxLen = sp + 32|0; + $iFirst = sp + 20|0; + $mx = sp + 24|0; + $pVdbe = sp + 28|0; + $pT = sp + 36|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $zSql; + HEAP32[$2>>2] = $nBytes; + HEAP32[$3>>2] = $saveSqlFlag; + HEAP32[$4>>2] = $pReprepare; + HEAP32[$5>>2] = $ppStmt; + HEAP32[$6>>2] = $pzTail; + HEAP32[$zErrMsg>>2] = 0; + HEAP32[$rc>>2] = 0; + $7 = HEAP32[$0>>2]|0; + $8 = (_sqlite3DbMallocZero($7,536)|0); + HEAP32[$pParse>>2] = $8; + $9 = HEAP32[$pParse>>2]|0; + $10 = ($9|0)==(0|0); + if ($10) { + HEAP32[$rc>>2] = 7; + $220 = HEAP32[$pParse>>2]|0; + _sqlite3ParserReset($220); + $221 = HEAP32[$0>>2]|0; + $222 = HEAP32[$pParse>>2]|0; + _sqlite3DbFree($221,$222); + $223 = HEAP32[$0>>2]|0; + $224 = HEAP32[$rc>>2]|0; + $225 = (_sqlite3ApiExit($223,$224)|0); + HEAP32[$rc>>2] = $225; + $226 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($226|0); + } + $11 = HEAP32[$4>>2]|0; + $12 = HEAP32[$pParse>>2]|0; + $13 = (($12) + 476|0); + HEAP32[$13>>2] = $11; + HEAP32[$i>>2] = 0; + while(1) { + $14 = HEAP32[$i>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 20|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($14|0)<($17|0); + if (!($18)) { + break; + } + $19 = HEAP32[$i>>2]|0; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 16|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + ($19<<4)|0); + $24 = (($23) + 4|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$pBt>>2] = $25; + $26 = HEAP32[$pBt>>2]|0; + $27 = ($26|0)!=(0|0); + if ($27) { + $28 = HEAP32[$pBt>>2]|0; + $29 = (_sqlite3BtreeSchemaLocked($28)|0); + HEAP32[$rc>>2] = $29; + $30 = HEAP32[$rc>>2]|0; + $31 = ($30|0)!=(0); + if ($31) { + label = 7; + break; + } + } + $41 = HEAP32[$i>>2]|0; + $42 = (($41) + 1)|0; + HEAP32[$i>>2] = $42; + } + if ((label|0) == 7) { + $32 = HEAP32[$i>>2]|0; + $33 = HEAP32[$0>>2]|0; + $34 = (($33) + 16|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + ($32<<4)|0); + $37 = HEAP32[$36>>2]|0; + HEAP32[$zDb>>2] = $37; + $38 = HEAP32[$0>>2]|0; + $39 = HEAP32[$rc>>2]|0; + $40 = HEAP32[$zDb>>2]|0; + HEAP32[$vararg_buffer6>>2] = $40; + _sqlite3Error($38,$39,37368,$vararg_buffer6); + $220 = HEAP32[$pParse>>2]|0; + _sqlite3ParserReset($220); + $221 = HEAP32[$0>>2]|0; + $222 = HEAP32[$pParse>>2]|0; + _sqlite3DbFree($221,$222); + $223 = HEAP32[$0>>2]|0; + $224 = HEAP32[$rc>>2]|0; + $225 = (_sqlite3ApiExit($223,$224)|0); + HEAP32[$rc>>2] = $225; + $226 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($226|0); + } + $43 = HEAP32[$0>>2]|0; + _sqlite3VtabUnlockList($43); + $44 = HEAP32[$0>>2]|0; + $45 = HEAP32[$pParse>>2]|0; + HEAP32[$45>>2] = $44; + $46 = HEAP32[$pParse>>2]|0; + $47 = (($46) + 424|0); + HEAP32[$47>>2] = 0; + $48 = HEAP32[$2>>2]|0; + $49 = ($48|0)>=(0); + do { + if ($49) { + $50 = HEAP32[$2>>2]|0; + $51 = ($50|0)==(0); + if (!($51)) { + $52 = HEAP32[$2>>2]|0; + $53 = (($52) - 1)|0; + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + ($53)|0); + $56 = HEAP8[$55>>0]|0; + $57 = $56 << 24 >> 24; + $58 = ($57|0)!=(0); + if (!($58)) { + label = 17; + break; + } + } + $59 = HEAP32[$0>>2]|0; + $60 = (($59) + 88|0); + $61 = (($60) + 4|0); + $62 = HEAP32[$61>>2]|0; + HEAP32[$mxLen>>2] = $62; + $63 = HEAP32[$2>>2]|0; + $64 = HEAP32[$mxLen>>2]|0; + $65 = ($63|0)>($64|0); + $66 = HEAP32[$0>>2]|0; + if ($65) { + _sqlite3Error($66,18,37400,$vararg_buffer6); + $67 = HEAP32[$0>>2]|0; + $68 = (_sqlite3ApiExit($67,18)|0); + HEAP32[$rc>>2] = $68; + $220 = HEAP32[$pParse>>2]|0; + _sqlite3ParserReset($220); + $221 = HEAP32[$0>>2]|0; + $222 = HEAP32[$pParse>>2]|0; + _sqlite3DbFree($221,$222); + $223 = HEAP32[$0>>2]|0; + $224 = HEAP32[$rc>>2]|0; + $225 = (_sqlite3ApiExit($223,$224)|0); + HEAP32[$rc>>2] = $225; + $226 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($226|0); + } + $69 = HEAP32[$1>>2]|0; + $70 = HEAP32[$2>>2]|0; + $71 = (_sqlite3DbStrNDup($66,$69,$70)|0); + HEAP32[$zSqlCopy>>2] = $71; + $72 = HEAP32[$zSqlCopy>>2]|0; + $73 = ($72|0)!=(0|0); + if ($73) { + $74 = HEAP32[$pParse>>2]|0; + $75 = HEAP32[$zSqlCopy>>2]|0; + (_sqlite3RunParser($74,$75,$zErrMsg)|0); + $76 = HEAP32[$0>>2]|0; + $77 = HEAP32[$zSqlCopy>>2]|0; + _sqlite3DbFree($76,$77); + $78 = HEAP32[$pParse>>2]|0; + $79 = (($78) + 480|0); + $80 = HEAP32[$79>>2]|0; + $81 = HEAP32[$zSqlCopy>>2]|0; + $82 = $80; + $83 = $81; + $84 = (($82) - ($83))|0; + $85 = HEAP32[$1>>2]|0; + $86 = (($85) + ($84)|0); + $87 = HEAP32[$pParse>>2]|0; + $88 = (($87) + 480|0); + HEAP32[$88>>2] = $86; + break; + } else { + $89 = HEAP32[$2>>2]|0; + $90 = HEAP32[$1>>2]|0; + $91 = (($90) + ($89)|0); + $92 = HEAP32[$pParse>>2]|0; + $93 = (($92) + 480|0); + HEAP32[$93>>2] = $91; + break; + } + } else { + label = 17; + } + } while(0); + if ((label|0) == 17) { + $94 = HEAP32[$pParse>>2]|0; + $95 = HEAP32[$1>>2]|0; + (_sqlite3RunParser($94,$95,$zErrMsg)|0); + } + $96 = HEAP32[$0>>2]|0; + $97 = (($96) + 64|0); + $98 = HEAP8[$97>>0]|0; + $99 = ($98<<24>>24)!=(0); + if ($99) { + $100 = HEAP32[$pParse>>2]|0; + $101 = (($100) + 12|0); + HEAP32[$101>>2] = 7; + } + $102 = HEAP32[$pParse>>2]|0; + $103 = (($102) + 12|0); + $104 = HEAP32[$103>>2]|0; + $105 = ($104|0)==(101); + if ($105) { + $106 = HEAP32[$pParse>>2]|0; + $107 = (($106) + 12|0); + HEAP32[$107>>2] = 0; + } + $108 = HEAP32[$pParse>>2]|0; + $109 = (($108) + 17|0); + $110 = HEAP8[$109>>0]|0; + $111 = ($110<<24>>24)!=(0); + if ($111) { + $112 = HEAP32[$pParse>>2]|0; + _schemaIsValid($112); + } + $113 = HEAP32[$0>>2]|0; + $114 = (($113) + 64|0); + $115 = HEAP8[$114>>0]|0; + $116 = ($115<<24>>24)!=(0); + if ($116) { + $117 = HEAP32[$pParse>>2]|0; + $118 = (($117) + 12|0); + HEAP32[$118>>2] = 7; + } + $119 = HEAP32[$6>>2]|0; + $120 = ($119|0)!=(0|0); + if ($120) { + $121 = HEAP32[$pParse>>2]|0; + $122 = (($121) + 480|0); + $123 = HEAP32[$122>>2]|0; + $124 = HEAP32[$6>>2]|0; + HEAP32[$124>>2] = $123; + } + $125 = HEAP32[$pParse>>2]|0; + $126 = (($125) + 12|0); + $127 = HEAP32[$126>>2]|0; + HEAP32[$rc>>2] = $127; + $128 = HEAP32[$rc>>2]|0; + $129 = ($128|0)==(0); + L45: do { + if ($129) { + $130 = HEAP32[$pParse>>2]|0; + $131 = (($130) + 8|0); + $132 = HEAP32[$131>>2]|0; + $133 = ($132|0)!=(0|0); + if ($133) { + $134 = HEAP32[$pParse>>2]|0; + $135 = (($134) + 450|0); + $136 = HEAP8[$135>>0]|0; + $137 = $136&255; + $138 = ($137|0)!=(0); + if ($138) { + $139 = HEAP32[$pParse>>2]|0; + $140 = (($139) + 450|0); + $141 = HEAP8[$140>>0]|0; + $142 = $141&255; + $143 = ($142|0)==(2); + $144 = HEAP32[$pParse>>2]|0; + $145 = (($144) + 8|0); + $146 = HEAP32[$145>>2]|0; + if ($143) { + _sqlite3VdbeSetNumCols($146,4); + HEAP32[$iFirst>>2] = 8; + HEAP32[$mx>>2] = 12; + } else { + _sqlite3VdbeSetNumCols($146,8); + HEAP32[$iFirst>>2] = 0; + HEAP32[$mx>>2] = 8; + } + $147 = HEAP32[$iFirst>>2]|0; + HEAP32[$i>>2] = $147; + while(1) { + $148 = HEAP32[$i>>2]|0; + $149 = HEAP32[$mx>>2]|0; + $150 = ($148|0)<($149|0); + if (!($150)) { + break L45; + } + $151 = HEAP32[$pParse>>2]|0; + $152 = (($151) + 8|0); + $153 = HEAP32[$152>>2]|0; + $154 = HEAP32[$i>>2]|0; + $155 = HEAP32[$iFirst>>2]|0; + $156 = (($154) - ($155))|0; + $157 = HEAP32[$i>>2]|0; + $158 = (37424 + ($157<<2)|0); + $159 = HEAP32[$158>>2]|0; + (_sqlite3VdbeSetColName($153,$156,0,$159,0)|0); + $160 = HEAP32[$i>>2]|0; + $161 = (($160) + 1)|0; + HEAP32[$i>>2] = $161; + } + } + } + } + } while(0); + $162 = HEAP32[$0>>2]|0; + $163 = (($162) + 132|0); + $164 = (($163) + 5|0); + $165 = HEAP8[$164>>0]|0; + $166 = $165&255; + $167 = ($166|0)==(0); + if ($167) { + $168 = HEAP32[$pParse>>2]|0; + $169 = (($168) + 8|0); + $170 = HEAP32[$169>>2]|0; + HEAP32[$pVdbe>>2] = $170; + $171 = HEAP32[$pVdbe>>2]|0; + $172 = HEAP32[$1>>2]|0; + $173 = HEAP32[$pParse>>2]|0; + $174 = (($173) + 480|0); + $175 = HEAP32[$174>>2]|0; + $176 = HEAP32[$1>>2]|0; + $177 = $175; + $178 = $176; + $179 = (($177) - ($178))|0; + $180 = HEAP32[$3>>2]|0; + _sqlite3VdbeSetSql($171,$172,$179,$180); + } + $181 = HEAP32[$pParse>>2]|0; + $182 = (($181) + 8|0); + $183 = HEAP32[$182>>2]|0; + $184 = ($183|0)!=(0|0); + do { + if ($184) { + $185 = HEAP32[$rc>>2]|0; + $186 = ($185|0)!=(0); + if (!($186)) { + $187 = HEAP32[$0>>2]|0; + $188 = (($187) + 64|0); + $189 = HEAP8[$188>>0]|0; + $190 = $189&255; + $191 = ($190|0)!=(0); + if (!($191)) { + label = 43; + break; + } + } + $192 = HEAP32[$pParse>>2]|0; + $193 = (($192) + 8|0); + $194 = HEAP32[$193>>2]|0; + (_sqlite3VdbeFinalize($194)|0); + } else { + label = 43; + } + } while(0); + if ((label|0) == 43) { + $195 = HEAP32[$pParse>>2]|0; + $196 = (($195) + 8|0); + $197 = HEAP32[$196>>2]|0; + $198 = HEAP32[$5>>2]|0; + HEAP32[$198>>2] = $197; + } + $199 = HEAP32[$zErrMsg>>2]|0; + $200 = ($199|0)!=(0|0); + $201 = HEAP32[$0>>2]|0; + $202 = HEAP32[$rc>>2]|0; + if ($200) { + $203 = HEAP32[$zErrMsg>>2]|0; + HEAP32[$vararg_buffer6>>2] = $203; + _sqlite3Error($201,$202,1768,$vararg_buffer6); + $204 = HEAP32[$0>>2]|0; + $205 = HEAP32[$zErrMsg>>2]|0; + _sqlite3DbFree($204,$205); + } else { + _sqlite3Error($201,$202,0,$vararg_buffer6); + } + while(1) { + $206 = HEAP32[$pParse>>2]|0; + $207 = (($206) + 528|0); + $208 = HEAP32[$207>>2]|0; + $209 = ($208|0)!=(0|0); + if (!($209)) { + break; + } + $210 = HEAP32[$pParse>>2]|0; + $211 = (($210) + 528|0); + $212 = HEAP32[$211>>2]|0; + HEAP32[$pT>>2] = $212; + $213 = HEAP32[$pT>>2]|0; + $214 = (($213) + 4|0); + $215 = HEAP32[$214>>2]|0; + $216 = HEAP32[$pParse>>2]|0; + $217 = (($216) + 528|0); + HEAP32[$217>>2] = $215; + $218 = HEAP32[$0>>2]|0; + $219 = HEAP32[$pT>>2]|0; + _sqlite3DbFree($218,$219); + } + $220 = HEAP32[$pParse>>2]|0; + _sqlite3ParserReset($220); + $221 = HEAP32[$0>>2]|0; + $222 = HEAP32[$pParse>>2]|0; + _sqlite3DbFree($221,$222); + $223 = HEAP32[$0>>2]|0; + $224 = HEAP32[$rc>>2]|0; + $225 = (_sqlite3ApiExit($223,$224)|0); + HEAP32[$rc>>2] = $225; + $226 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($226|0); +} +function _sqlite3BtreeSchemaLocked($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $rc = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($1); + $2 = HEAP32[$0>>2]|0; + $3 = (_querySharedCacheTableLock($2,1,1)|0); + HEAP32[$rc>>2] = $3; + $4 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($4|0); +} +function _schemaIsValid($pParse) { + $pParse = $pParse|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cookie = 0, $db = 0, $iDb = 0, $openedTransaction = 0, $or$cond = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $db = sp; + $iDb = sp + 4|0; + $rc = sp + 8|0; + $cookie = sp + 12|0; + $openedTransaction = sp + 16|0; + $pBt = sp + 20|0; + HEAP32[$0>>2] = $pParse; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$db>>2] = $2; + HEAP32[$iDb>>2] = 0; + while(1) { + $3 = HEAP32[$iDb>>2]|0; + $4 = HEAP32[$db>>2]|0; + $5 = (($4) + 20|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($3|0)<($6|0); + if (!($7)) { + label = 14; + break; + } + HEAP32[$openedTransaction>>2] = 0; + $8 = HEAP32[$iDb>>2]|0; + $9 = HEAP32[$db>>2]|0; + $10 = (($9) + 16|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + ($8<<4)|0); + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$pBt>>2] = $14; + $15 = HEAP32[$pBt>>2]|0; + $16 = ($15|0)==(0|0); + if (!($16)) { + $17 = HEAP32[$pBt>>2]|0; + $18 = (_sqlite3BtreeIsInReadTrans($17)|0); + $19 = ($18|0)!=(0); + if (!($19)) { + $20 = HEAP32[$pBt>>2]|0; + $21 = (_sqlite3BtreeBeginTrans($20,0)|0); + HEAP32[$rc>>2] = $21; + $22 = HEAP32[$rc>>2]|0; + $23 = ($22|0)==(7); + $24 = HEAP32[$rc>>2]|0; + $25 = ($24|0)==(3082); + $or$cond = $23 | $25; + if ($or$cond) { + $26 = HEAP32[$db>>2]|0; + $27 = (($26) + 64|0); + HEAP8[$27>>0] = 1; + } + $28 = HEAP32[$rc>>2]|0; + $29 = ($28|0)!=(0); + if ($29) { + label = 14; + break; + } + HEAP32[$openedTransaction>>2] = 1; + } + $30 = HEAP32[$pBt>>2]|0; + _sqlite3BtreeGetMeta($30,1,$cookie); + $31 = HEAP32[$cookie>>2]|0; + $32 = HEAP32[$iDb>>2]|0; + $33 = HEAP32[$db>>2]|0; + $34 = (($33) + 16|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + ($32<<4)|0); + $37 = (($36) + 12|0); + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$38>>2]|0; + $40 = ($31|0)!=($39|0); + if ($40) { + $41 = HEAP32[$db>>2]|0; + $42 = HEAP32[$iDb>>2]|0; + _sqlite3ResetOneSchema($41,$42); + $43 = HEAP32[$0>>2]|0; + $44 = (($43) + 12|0); + HEAP32[$44>>2] = 17; + } + $45 = HEAP32[$openedTransaction>>2]|0; + $46 = ($45|0)!=(0); + if ($46) { + $47 = HEAP32[$pBt>>2]|0; + (_sqlite3BtreeCommit($47)|0); + } + } + $48 = HEAP32[$iDb>>2]|0; + $49 = (($48) + 1)|0; + HEAP32[$iDb>>2] = $49; + } + if ((label|0) == 14) { + STACKTOP = sp;return; + } +} +function _sqlite3VdbeSetSql($p,$z,$n,$isPrepareV2) { + $p = $p|0; + $z = $z|0; + $n = $n|0; + $isPrepareV2 = $isPrepareV2|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $z; + HEAP32[$2>>2] = $n; + HEAP32[$3>>2] = $isPrepareV2; + $4 = HEAP32[$0>>2]|0; + $5 = ($4|0)==(0|0); + if ($5) { + STACKTOP = sp;return; + } + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = (_sqlite3DbStrNDup($7,$8,$9)|0); + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 168|0); + HEAP32[$12>>2] = $10; + $13 = HEAP32[$3>>2]|0; + $14 = $13&255; + $15 = $14&255; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 88|0); + $18 = $15&65535; + $19 = HEAP16[$17>>1]|0; + $20 = $18 & 1; + $21 = ($20 << 10)&65535; + $22 = $19 & -1025; + $23 = $22 | $21; + HEAP16[$17>>1] = $23; + STACKTOP = sp;return; +} +function _querySharedCacheTableLock($p,$iTab,$eLock) { + $p = $p|0; + $iTab = $iTab|0; + $eLock = $eLock|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $pIter = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 20|0; + $pBt = sp + 12|0; + $pIter = sp + 8|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $iTab; + HEAP8[$3>>0] = $eLock; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$pBt>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 9|0); + $9 = HEAP8[$8>>0]|0; + $10 = ($9<<24>>24)!=(0); + if (!($10)) { + HEAP32[$0>>2] = 0; + $55 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($55|0); + } + $11 = HEAP32[$pBt>>2]|0; + $12 = (($11) + 76|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = ($13|0)!=($14|0); + if ($15) { + $16 = HEAP32[$pBt>>2]|0; + $17 = (($16) + 22|0); + $18 = HEAP16[$17>>1]|0; + $19 = $18&65535; + $20 = $19 & 32; + $21 = ($20|0)!=(0); + if ($21) { + HEAP32[$0>>2] = 262; + $55 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($55|0); + } + } + $22 = HEAP32[$pBt>>2]|0; + $23 = (($22) + 72|0); + $24 = HEAP32[$23>>2]|0; + HEAP32[$pIter>>2] = $24; + while(1) { + $25 = HEAP32[$pIter>>2]|0; + $26 = ($25|0)!=(0|0); + if (!($26)) { + label = 15; + break; + } + $27 = HEAP32[$pIter>>2]|0; + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$1>>2]|0; + $30 = ($28|0)!=($29|0); + if ($30) { + $31 = HEAP32[$pIter>>2]|0; + $32 = (($31) + 4|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = ($33|0)==($34|0); + if ($35) { + $36 = HEAP32[$pIter>>2]|0; + $37 = (($36) + 8|0); + $38 = HEAP8[$37>>0]|0; + $39 = $38&255; + $40 = HEAP8[$3>>0]|0; + $41 = $40&255; + $42 = ($39|0)!=($41|0); + if ($42) { + break; + } + } + } + $52 = HEAP32[$pIter>>2]|0; + $53 = (($52) + 12|0); + $54 = HEAP32[$53>>2]|0; + HEAP32[$pIter>>2] = $54; + } + if ((label|0) == 15) { + HEAP32[$0>>2] = 0; + $55 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($55|0); + } + $43 = HEAP8[$3>>0]|0; + $44 = $43&255; + $45 = ($44|0)==(2); + if ($45) { + $46 = HEAP32[$pBt>>2]|0; + $47 = (($46) + 22|0); + $48 = HEAP16[$47>>1]|0; + $49 = $48&65535; + $50 = $49 | 64; + $51 = $50&65535; + HEAP16[$47>>1] = $51; + } + HEAP32[$0>>2] = 262; + $55 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($55|0); +} +function _sqlite3VdbeSwap($pA,$pB) { + $pA = $pA|0; + $pB = $pB|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pTmp = 0, $tmp = 0, $zTmp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 224|0; + $0 = sp + 220|0; + $1 = sp + 208|0; + $tmp = sp; + $pTmp = sp + 212|0; + $zTmp = sp + 216|0; + HEAP32[$0>>2] = $pA; + HEAP32[$1>>2] = $pB; + $2 = HEAP32[$0>>2]|0; + _memcpy(($tmp|0),($2|0),208)|0; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + _memcpy(($3|0),($4|0),208)|0; + $5 = HEAP32[$1>>2]|0; + _memcpy(($5|0),($tmp|0),208)|0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 52|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pTmp>>2] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 52|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 52|0); + HEAP32[$13>>2] = $11; + $14 = HEAP32[$pTmp>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 52|0); + HEAP32[$16>>2] = $14; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 48|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$pTmp>>2] = $19; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 48|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 48|0); + HEAP32[$24>>2] = $22; + $25 = HEAP32[$pTmp>>2]|0; + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 48|0); + HEAP32[$27>>2] = $25; + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 168|0); + $30 = HEAP32[$29>>2]|0; + HEAP32[$zTmp>>2] = $30; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 168|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 168|0); + HEAP32[$35>>2] = $33; + $36 = HEAP32[$zTmp>>2]|0; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 168|0); + HEAP32[$38>>2] = $36; + $39 = HEAP32[$0>>2]|0; + $40 = (($39) + 88|0); + $41 = HEAP16[$40>>1]|0; + $42 = ($41&65535) >>> 10; + $43 = $42 & 1; + $44 = $43&65535; + $45 = HEAP32[$1>>2]|0; + $46 = (($45) + 88|0); + $47 = $44&65535; + $48 = HEAP16[$46>>1]|0; + $49 = $47 & 1; + $50 = ($49 << 10)&65535; + $51 = $48 & -1025; + $52 = $51 | $50; + HEAP16[$46>>1] = $52; + STACKTOP = sp;return; +} +function _sqlite3VdbeResetStepResult($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 80|0); + HEAP32[$2>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3FkDelete($db,$pTab) { + $db = $db|0; + $pTab = $pTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pFKey = 0, $pNext = 0, $z = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $pFKey = sp + 4|0; + $pNext = sp + 8|0; + $p = sp + 12|0; + $z = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pTab; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 16|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pFKey>>2] = $4; + while(1) { + $5 = HEAP32[$pFKey>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + break; + } + $7 = HEAP32[$0>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 512|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)==(0|0); + if ($12) { + label = 5; + } + } else { + label = 5; + } + if ((label|0) == 5) { + label = 0; + $13 = HEAP32[$pFKey>>2]|0; + $14 = (($13) + 16|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0|0); + $17 = HEAP32[$pFKey>>2]|0; + $18 = (($17) + 12|0); + $19 = HEAP32[$18>>2]|0; + if ($16) { + $20 = HEAP32[$pFKey>>2]|0; + $21 = (($20) + 16|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + 12|0); + HEAP32[$23>>2] = $19; + } else { + HEAP32[$p>>2] = $19; + $24 = HEAP32[$p>>2]|0; + $25 = ($24|0)!=(0|0); + $26 = HEAP32[$pFKey>>2]|0; + if ($25) { + $27 = (($26) + 12|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + 8|0); + $30 = HEAP32[$29>>2]|0; + $33 = $30; + } else { + $31 = (($26) + 8|0); + $32 = HEAP32[$31>>2]|0; + $33 = $32; + } + HEAP32[$z>>2] = $33; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 68|0); + $36 = HEAP32[$35>>2]|0; + $37 = (($36) + 56|0); + $38 = HEAP32[$z>>2]|0; + $39 = HEAP32[$z>>2]|0; + $40 = (_sqlite3Strlen30($39)|0); + $41 = HEAP32[$p>>2]|0; + (_sqlite3HashInsert($37,$38,$40,$41)|0); + } + $42 = HEAP32[$pFKey>>2]|0; + $43 = (($42) + 12|0); + $44 = HEAP32[$43>>2]|0; + $45 = ($44|0)!=(0|0); + if ($45) { + $46 = HEAP32[$pFKey>>2]|0; + $47 = (($46) + 16|0); + $48 = HEAP32[$47>>2]|0; + $49 = HEAP32[$pFKey>>2]|0; + $50 = (($49) + 12|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + 16|0); + HEAP32[$52>>2] = $48; + } + } + $53 = HEAP32[$0>>2]|0; + $54 = HEAP32[$pFKey>>2]|0; + $55 = (($54) + 28|0); + $56 = HEAP32[$55>>2]|0; + _fkTriggerDelete($53,$56); + $57 = HEAP32[$0>>2]|0; + $58 = HEAP32[$pFKey>>2]|0; + $59 = (($58) + 28|0); + $60 = (($59) + 4|0); + $61 = HEAP32[$60>>2]|0; + _fkTriggerDelete($57,$61); + $62 = HEAP32[$pFKey>>2]|0; + $63 = (($62) + 4|0); + $64 = HEAP32[$63>>2]|0; + HEAP32[$pNext>>2] = $64; + $65 = HEAP32[$0>>2]|0; + $66 = HEAP32[$pFKey>>2]|0; + _sqlite3DbFree($65,$66); + $67 = HEAP32[$pNext>>2]|0; + HEAP32[$pFKey>>2] = $67; + } + STACKTOP = sp;return; +} +function _sqlite3VtabClear($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $i = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$0>>2]|0; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 512|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)==(0|0); + if ($7) { + label = 3; + } + } else { + label = 3; + } + if ((label|0) == 3) { + $8 = HEAP32[$1>>2]|0; + (_vtabDisconnectAll(0,$8)|0); + } + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 56|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0|0); + if (!($12)) { + STACKTOP = sp;return; + } + HEAP32[$i>>2] = 0; + while(1) { + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 52|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($13|0)<($16|0); + if (!($17)) { + break; + } + $18 = HEAP32[$i>>2]|0; + $19 = ($18|0)!=(1); + if ($19) { + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$i>>2]|0; + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 56|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + ($21<<2)|0); + $26 = HEAP32[$25>>2]|0; + _sqlite3DbFree($20,$26); + } + $27 = HEAP32[$i>>2]|0; + $28 = (($27) + 1)|0; + HEAP32[$i>>2] = $28; + } + $29 = HEAP32[$0>>2]|0; + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 56|0); + $32 = HEAP32[$31>>2]|0; + _sqlite3DbFree($29,$32); + STACKTOP = sp;return; +} +function _vtabDisconnectAll($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db2 = 0, $pNext = 0, $pRet = 0, $pVTable = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $pRet = sp + 4|0; + $pVTable = sp + 8|0; + $db2 = sp + 12|0; + $pNext = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + HEAP32[$pRet>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 60|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pVTable>>2] = $4; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 60|0); + HEAP32[$6>>2] = 0; + while(1) { + $7 = HEAP32[$pVTable>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + break; + } + $9 = HEAP32[$pVTable>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$db2>>2] = $10; + $11 = HEAP32[$pVTable>>2]|0; + $12 = (($11) + 24|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pNext>>2] = $13; + $14 = HEAP32[$db2>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = ($14|0)==($15|0); + if ($16) { + $17 = HEAP32[$pVTable>>2]|0; + HEAP32[$pRet>>2] = $17; + $18 = HEAP32[$pRet>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 60|0); + HEAP32[$20>>2] = $18; + $21 = HEAP32[$pRet>>2]|0; + $22 = (($21) + 24|0); + HEAP32[$22>>2] = 0; + } else { + $23 = HEAP32[$db2>>2]|0; + $24 = (($23) + 324|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$pVTable>>2]|0; + $27 = (($26) + 24|0); + HEAP32[$27>>2] = $25; + $28 = HEAP32[$pVTable>>2]|0; + $29 = HEAP32[$db2>>2]|0; + $30 = (($29) + 324|0); + HEAP32[$30>>2] = $28; + } + $31 = HEAP32[$pNext>>2]|0; + HEAP32[$pVTable>>2] = $31; + } + $32 = HEAP32[$pRet>>2]|0; + STACKTOP = sp;return ($32|0); +} +function _saveAllCursors($pBt,$iRoot,$pExcept) { + $pBt = $pBt|0; + $iRoot = $iRoot|0; + $pExcept = $pExcept|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $p = sp + 12|0; + $rc = sp + 16|0; + HEAP32[$1>>2] = $pBt; + HEAP32[$2>>2] = $iRoot; + HEAP32[$3>>2] = $pExcept; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$p>>2] = $6; + L1: while(1) { + $7 = HEAP32[$p>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + label = 11; + break; + } + $9 = HEAP32[$p>>2]|0; + $10 = HEAP32[$3>>2]|0; + $11 = ($9|0)!=($10|0); + do { + if ($11) { + $12 = HEAP32[$2>>2]|0; + $13 = (0)==($12|0); + if (!($13)) { + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 68|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = ($16|0)==($17|0); + if (!($18)) { + break; + } + } + $19 = HEAP32[$p>>2]|0; + $20 = (($19) + 81|0); + $21 = HEAP8[$20>>0]|0; + $22 = $21&255; + $23 = ($22|0)==(1); + $24 = HEAP32[$p>>2]|0; + if ($23) { + $25 = (_saveCursorPosition($24)|0); + HEAP32[$rc>>2] = $25; + $26 = HEAP32[$rc>>2]|0; + $27 = (0)!=($26|0); + if ($27) { + label = 8; + break L1; + } else { + break; + } + } else { + _btreeReleaseAllCursorPages($24); + break; + } + } + } while(0); + $29 = HEAP32[$p>>2]|0; + $30 = (($29) + 8|0); + $31 = HEAP32[$30>>2]|0; + HEAP32[$p>>2] = $31; + } + if ((label|0) == 8) { + $28 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $28; + $32 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($32|0); + } + else if ((label|0) == 11) { + HEAP32[$0>>2] = 0; + $32 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($32|0); + } + return 0|0; +} +function _saveCursorPosition($pCur) { + $pCur = $pCur|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pKey = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $rc = sp; + $pKey = sp + 4|0; + HEAP32[$0>>2] = $pCur; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 56|0); + $4 = (_sqlite3BtreeKeySize($1,$3)|0); + HEAP32[$rc>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 128|0); + $7 = HEAP32[$6>>2]|0; + $8 = (($7) + 2|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = (0)==($10|0); + do { + if ($11) { + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 56|0); + $14 = $13; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (_sqlite3Malloc($16)|0); + HEAP32[$pKey>>2] = $20; + $21 = HEAP32[$pKey>>2]|0; + $22 = ($21|0)!=(0|0); + if (!($22)) { + HEAP32[$rc>>2] = 7; + break; + } + $23 = HEAP32[$0>>2]|0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 56|0); + $26 = $25; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = (($26) + 4)|0; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$pKey>>2]|0; + $33 = (_sqlite3BtreeKey($23,0,$28,$32)|0); + HEAP32[$rc>>2] = $33; + $34 = HEAP32[$rc>>2]|0; + $35 = ($34|0)==(0); + $36 = HEAP32[$pKey>>2]|0; + if ($35) { + $37 = HEAP32[$0>>2]|0; + $38 = (($37) + 64|0); + HEAP32[$38>>2] = $36; + break; + } else { + _sqlite3_free($36); + break; + } + } + } while(0); + $39 = HEAP32[$rc>>2]|0; + $40 = ($39|0)==(0); + if (!($40)) { + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 80|0); + $46 = HEAP8[$45>>0]|0; + $47 = $46&255; + $48 = $47 & -5; + $49 = $48&255; + HEAP8[$45>>0] = $49; + $50 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($50|0); + } + $41 = HEAP32[$0>>2]|0; + _btreeReleaseAllCursorPages($41); + $42 = HEAP32[$0>>2]|0; + $43 = (($42) + 81|0); + HEAP8[$43>>0] = 3; + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 80|0); + $46 = HEAP8[$45>>0]|0; + $47 = $46&255; + $48 = $47 & -5; + $49 = $48&255; + HEAP8[$45>>0] = $49; + $50 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($50|0); +} +function _btreeReleaseAllCursorPages($pCur) { + $pCur = $pCur|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $i = sp; + HEAP32[$0>>2] = $pCur; + HEAP32[$i>>2] = 0; + while(1) { + $1 = HEAP32[$i>>2]|0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 84|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4 << 16 >> 16; + $6 = ($1|0)<=($5|0); + if (!($6)) { + break; + } + $7 = HEAP32[$i>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 128|0); + $10 = (($9) + ($7<<2)|0); + $11 = HEAP32[$10>>2]|0; + _releasePage($11); + $12 = HEAP32[$i>>2]|0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 128|0); + $15 = (($14) + ($12<<2)|0); + HEAP32[$15>>2] = 0; + $16 = HEAP32[$i>>2]|0; + $17 = (($16) + 1)|0; + HEAP32[$i>>2] = $17; + } + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 84|0); + HEAP16[$19>>1] = -1; + STACKTOP = sp;return; +} +function _sqlite3BtreeKeySize($pCur,$pSize) { + $pCur = $pCur|0; + $pSize = $pSize|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iPage = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $iPage = sp + 4|0; + HEAP32[$0>>2] = $pCur; + HEAP32[$1>>2] = $pSize; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 81|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = ($5|0)!=(1); + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = $7; + $9 = $8; + HEAP32[$9>>2] = 0; + $10 = (($8) + 4)|0; + $11 = $10; + HEAP32[$11>>2] = 0; + STACKTOP = sp;return 0; + } + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 24|0); + $14 = (($13) + 26|0); + $15 = HEAP16[$14>>1]|0; + $16 = $15&65535; + $17 = ($16|0)==(0); + if ($17) { + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 84|0); + $20 = HEAP16[$19>>1]|0; + $21 = $20 << 16 >> 16; + HEAP32[$iPage>>2] = $21; + $22 = HEAP32[$iPage>>2]|0; + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 128|0); + $25 = (($24) + ($22<<2)|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$iPage>>2]|0; + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 86|0); + $30 = (($29) + ($27<<1)|0); + $31 = HEAP16[$30>>1]|0; + $32 = $31&65535; + $33 = HEAP32[$0>>2]|0; + $34 = (($33) + 24|0); + _btreeParseCell($26,$32,$34); + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 80|0); + $37 = HEAP8[$36>>0]|0; + $38 = $37&255; + $39 = $38 | 2; + $40 = $39&255; + HEAP8[$36>>0] = $40; + } + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + 24|0); + $43 = $42; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = (($43) + 4)|0; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = HEAP32[$1>>2]|0; + $50 = $49; + $51 = $50; + HEAP32[$51>>2] = $45; + $52 = (($50) + 4)|0; + $53 = $52; + HEAP32[$53>>2] = $48; + STACKTOP = sp;return 0; +} +function _sqlite3BtreeKey($pCur,$offset,$amt,$pBuf) { + $pCur = $pCur|0; + $offset = $offset|0; + $amt = $amt|0; + $pBuf = $pBuf|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + HEAP32[$0>>2] = $pCur; + HEAP32[$1>>2] = $offset; + HEAP32[$2>>2] = $amt; + HEAP32[$3>>2] = $pBuf; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$3>>2]|0; + $8 = (_accessPayload($4,$5,$6,$7,0)|0); + STACKTOP = sp;return ($8|0); +} +function _sqlite3BtreeIncrblobCursor($pCur) { + $pCur = $pCur|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pCur; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 80|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = $4 | 16; + $6 = $5&255; + HEAP8[$2>>0] = $6; + STACKTOP = sp;return; +} +function _allocSpace($pBuf,$nByte,$ppFrom,$pEnd,$pnByte) { + $pBuf = $pBuf|0; + $nByte = $nByte|0; + $ppFrom = $ppFrom|0; + $pEnd = $pEnd|0; + $pnByte = $pnByte|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $5 = sp + 16|0; + HEAP32[$1>>2] = $pBuf; + HEAP32[$2>>2] = $nByte; + HEAP32[$3>>2] = $ppFrom; + HEAP32[$4>>2] = $pEnd; + HEAP32[$5>>2] = $pnByte; + $6 = HEAP32[$1>>2]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = HEAP32[$1>>2]|0; + HEAP32[$0>>2] = $8; + $29 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($29|0); + } + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 7)|0; + $11 = $10 & -8; + HEAP32[$2>>2] = $11; + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$3>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + ($12)|0); + $16 = HEAP32[$4>>2]|0; + $17 = ($15>>>0)<=($16>>>0); + if ($17) { + $18 = HEAP32[$3>>2]|0; + $19 = HEAP32[$18>>2]|0; + HEAP32[$1>>2] = $19; + $20 = HEAP32[$2>>2]|0; + $21 = HEAP32[$3>>2]|0; + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + ($20)|0); + HEAP32[$21>>2] = $23; + } else { + $24 = HEAP32[$2>>2]|0; + $25 = HEAP32[$5>>2]|0; + $26 = HEAP32[$25>>2]|0; + $27 = (($26) + ($24))|0; + HEAP32[$25>>2] = $27; + } + $28 = HEAP32[$1>>2]|0; + HEAP32[$0>>2] = $28; + $29 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($29|0); +} +function _freeP4($db,$p4type,$p4) { + $db = $db|0; + $p4type = $p4type|0; + $p4 = $p4|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p4type; + HEAP32[$2>>2] = $p4; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + L1: do { + if ($4) { + $5 = HEAP32[$1>>2]|0; + switch ($5|0) { + case -15: case -1: case -13: case -12: { + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$2>>2]|0; + _sqlite3DbFree($6,$7); + break L1; + break; + } + case -11: { + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 512|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)==(0|0); + if (!($16)) { + break L1; + } + $17 = HEAP32[$2>>2]|0; + _sqlite3_free($17); + break L1; + break; + } + case -8: { + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 512|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)==(0|0); + $24 = HEAP32[$2>>2]|0; + if ($23) { + _sqlite3ValueFree($24); + break L1; + } else { + HEAP32[$p>>2] = $24; + $25 = HEAP32[$0>>2]|0; + $26 = HEAP32[$p>>2]|0; + $27 = (($26) + 36|0); + $28 = HEAP32[$27>>2]|0; + _sqlite3DbFree($25,$28); + $29 = HEAP32[$0>>2]|0; + $30 = HEAP32[$p>>2]|0; + _sqlite3DbFree($29,$30); + break L1; + } + break; + } + case -5: { + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$2>>2]|0; + _freeEphemeralFunction($18,$19); + break L1; + break; + } + case -6: { + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 512|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)==(0|0); + if (!($11)) { + break L1; + } + $12 = HEAP32[$2>>2]|0; + _sqlite3KeyInfoUnref($12); + break L1; + break; + } + case -10: { + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 512|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($33|0)==(0|0); + if (!($34)) { + break L1; + } + $35 = HEAP32[$2>>2]|0; + _sqlite3VtabUnlock($35); + break L1; + break; + } + default: { + break L1; + } + } + } + } while(0); + STACKTOP = sp;return; +} +function _freeEphemeralFunction($db,$pDef) { + $db = $db|0; + $pDef = $pDef|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pDef; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + STACKTOP = sp;return; + } + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 2|0); + $6 = HEAP16[$5>>1]|0; + $7 = $6&65535; + $8 = $7 & 16; + $9 = ($8|0)!=(0); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$1>>2]|0; + _sqlite3DbFree($10,$11); + STACKTOP = sp;return; +} +function _sqlite3VtabLock($pVTab) { + $pVTab = $pVTab|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pVTab; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 12|0); + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 1)|0; + HEAP32[$2>>2] = $4; + STACKTOP = sp;return; +} +function _sqlite3VdbeMemMove($pTo,$pFrom) { + $pTo = $pTo|0; + $pFrom = $pFrom|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pTo; + HEAP32[$1>>2] = $pFrom; + $2 = HEAP32[$0>>2]|0; + _sqlite3VdbeMemRelease($2); + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + dest=$3+0|0; src=$4+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 28|0); + HEAP16[$6>>1] = 1; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 32|0); + HEAP32[$8>>2] = 0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 36|0); + HEAP32[$10>>2] = 0; + STACKTOP = sp;return; +} +function _columnNullValue() { + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = sp;return (37704|0); +} +function _sqlite3VdbeMemFinalize($pMem,$pFunc) { + $pMem = $pMem|0; + $pFunc = $pFunc|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ctx = 0, $rc = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 80|0; + $1 = sp + 76|0; + $rc = sp + 72|0; + $ctx = sp; + HEAP32[$0>>2] = $pMem; + HEAP32[$1>>2] = $pFunc; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if (!($3)) { + $28 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($28|0); + } + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 20|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + $28 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($28|0); + } + dest=$ctx+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $8 = (($ctx) + 8|0); + $9 = (($8) + 28|0); + HEAP16[$9>>1] = 1; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = (($ctx) + 8|0); + HEAP32[$12>>2] = $11; + $13 = HEAP32[$0>>2]|0; + $14 = (($ctx) + 48|0); + HEAP32[$14>>2] = $13; + $15 = HEAP32[$1>>2]|0; + HEAP32[$ctx>>2] = $15; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 20|0); + $18 = HEAP32[$17>>2]|0; + FUNCTION_TABLE_vi[$18 & 31]($ctx); + $19 = HEAP32[$0>>2]|0; + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 36|0); + $23 = HEAP32[$22>>2]|0; + _sqlite3DbFree($20,$23); + $24 = HEAP32[$0>>2]|0; + $25 = (($ctx) + 8|0); + dest=$24+0|0; src=$25+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $26 = (($ctx) + 64|0); + $27 = HEAP32[$26>>2]|0; + HEAP32[$rc>>2] = $27; + $28 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($28|0); +} +function _sqlite3RowSetClear($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $pChunk = 0, $pNextChunk = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $pChunk = sp; + $pNextChunk = sp + 4|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$pChunk>>2] = $2; + while(1) { + $3 = HEAP32[$pChunk>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + break; + } + $5 = HEAP32[$pChunk>>2]|0; + $6 = HEAP32[$5>>2]|0; + HEAP32[$pNextChunk>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$pChunk>>2]|0; + _sqlite3DbFree($9,$10); + $11 = HEAP32[$pNextChunk>>2]|0; + HEAP32[$pChunk>>2] = $11; + } + $12 = HEAP32[$0>>2]|0; + HEAP32[$12>>2] = 0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 24|0); + HEAP16[$14>>1] = 0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 8|0); + HEAP32[$16>>2] = 0; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 12|0); + HEAP32[$18>>2] = 0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 20|0); + HEAP32[$20>>2] = 0; + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 26|0); + HEAP16[$22>>1] = 1; + STACKTOP = sp;return; +} +function _sqlite3VdbeList($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $apSub = 0, $db = 0, $i = 0, $j = 0, $j1 = 0, $nByte = 0, $nRow = 0, $nSub = 0, $pMem = 0, $pOp = 0, $pSub = 0, $rc = 0, $vararg_buffer2 = 0, $zP4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer2 = sp; + $0 = sp + 56|0; + $1 = sp + 52|0; + $nRow = sp + 48|0; + $nSub = sp + 44|0; + $apSub = sp + 40|0; + $pSub = sp + 36|0; + $db = sp + 32|0; + $i = sp + 60|0; + $rc = sp + 20|0; + $pMem = sp + 16|0; + $zP4 = sp + 12|0; + $pOp = sp + 8|0; + $j = sp + 4|0; + $nByte = sp + 24|0; + $j1 = sp + 28|0; + HEAP32[$1>>2] = $p; + HEAP32[$nSub>>2] = 0; + HEAP32[$apSub>>2] = 0; + HEAP32[$pSub>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + 40|0); + HEAP32[$pMem>>2] = $7; + $8 = HEAP32[$pMem>>2]|0; + _releaseMemArray($8,8); + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 20|0); + HEAP32[$10>>2] = 0; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 80|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)==(7); + if ($14) { + $15 = HEAP32[$db>>2]|0; + $16 = (($15) + 64|0); + HEAP8[$16>>0] = 1; + HEAP32[$0>>2] = 1; + $340 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($340|0); + } + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 32|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$nRow>>2] = $19; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 88|0); + $22 = HEAP16[$21>>1]|0; + $23 = $22 & 3; + $24 = $23&65535; + $25 = ($24|0)==(1); + L5: do { + if ($25) { + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 8|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + 360|0); + HEAP32[$pSub>>2] = $29; + $30 = HEAP32[$pSub>>2]|0; + $31 = (($30) + 28|0); + $32 = HEAP16[$31>>1]|0; + $33 = $32&65535; + $34 = $33 & 16; + $35 = ($34|0)!=(0); + if ($35) { + $36 = HEAP32[$pSub>>2]|0; + $37 = (($36) + 24|0); + $38 = HEAP32[$37>>2]|0; + $39 = (($38>>>0) / 4)&-1; + HEAP32[$nSub>>2] = $39; + $40 = HEAP32[$pSub>>2]|0; + $41 = (($40) + 4|0); + $42 = HEAP32[$41>>2]|0; + HEAP32[$apSub>>2] = $42; + } + HEAP32[$i>>2] = 0; + while(1) { + $43 = HEAP32[$i>>2]|0; + $44 = HEAP32[$nSub>>2]|0; + $45 = ($43|0)<($44|0); + if (!($45)) { + break L5; + } + $46 = HEAP32[$i>>2]|0; + $47 = HEAP32[$apSub>>2]|0; + $48 = (($47) + ($46<<2)|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) + 4|0); + $51 = HEAP32[$50>>2]|0; + $52 = HEAP32[$nRow>>2]|0; + $53 = (($52) + ($51))|0; + HEAP32[$nRow>>2] = $53; + $54 = HEAP32[$i>>2]|0; + $55 = (($54) + 1)|0; + HEAP32[$i>>2] = $55; + } + } + } while(0); + while(1) { + $56 = HEAP32[$1>>2]|0; + $57 = (($56) + 76|0); + $58 = HEAP32[$57>>2]|0; + $59 = (($58) + 1)|0; + HEAP32[$57>>2] = $59; + HEAP32[$i>>2] = $58; + $60 = HEAP32[$i>>2]|0; + $61 = HEAP32[$nRow>>2]|0; + $62 = ($60|0)<($61|0); + if (!($62)) { + break; + } + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + 88|0); + $65 = HEAP16[$64>>1]|0; + $66 = $65 & 3; + $67 = $66&65535; + $68 = ($67|0)==(2); + if (!($68)) { + break; + } + $69 = HEAP32[$i>>2]|0; + $70 = HEAP32[$1>>2]|0; + $71 = (($70) + 4|0); + $72 = HEAP32[$71>>2]|0; + $73 = (($72) + (($69*20)|0)|0); + $74 = HEAP8[$73>>0]|0; + $75 = $74&255; + $76 = ($75|0)!=(157); + if (!($76)) { + break; + } + } + $77 = HEAP32[$i>>2]|0; + $78 = HEAP32[$nRow>>2]|0; + $79 = ($77|0)>=($78|0); + do { + if ($79) { + $80 = HEAP32[$1>>2]|0; + $81 = (($80) + 80|0); + HEAP32[$81>>2] = 0; + HEAP32[$rc>>2] = 101; + } else { + $82 = HEAP32[$db>>2]|0; + $83 = (($82) + 232|0); + $84 = HEAP32[$83>>2]|0; + $85 = ($84|0)!=(0); + if ($85) { + $86 = HEAP32[$1>>2]|0; + $87 = (($86) + 80|0); + HEAP32[$87>>2] = 9; + HEAP32[$rc>>2] = 1; + $88 = HEAP32[$1>>2]|0; + $89 = (($88) + 44|0); + $90 = HEAP32[$db>>2]|0; + $91 = HEAP32[$1>>2]|0; + $92 = (($91) + 80|0); + $93 = HEAP32[$92>>2]|0; + $94 = (_sqlite3ErrStr($93)|0); + HEAP32[$vararg_buffer2>>2] = $94; + _sqlite3SetString($89,$90,1768,$vararg_buffer2); + break; + } + $95 = HEAP32[$i>>2]|0; + $96 = HEAP32[$1>>2]|0; + $97 = (($96) + 32|0); + $98 = HEAP32[$97>>2]|0; + $99 = ($95|0)<($98|0); + if ($99) { + $100 = HEAP32[$i>>2]|0; + $101 = HEAP32[$1>>2]|0; + $102 = (($101) + 4|0); + $103 = HEAP32[$102>>2]|0; + $104 = (($103) + (($100*20)|0)|0); + HEAP32[$pOp>>2] = $104; + } else { + $105 = HEAP32[$1>>2]|0; + $106 = (($105) + 32|0); + $107 = HEAP32[$106>>2]|0; + $108 = HEAP32[$i>>2]|0; + $109 = (($108) - ($107))|0; + HEAP32[$i>>2] = $109; + HEAP32[$j>>2] = 0; + while(1) { + $110 = HEAP32[$i>>2]|0; + $111 = HEAP32[$j>>2]|0; + $112 = HEAP32[$apSub>>2]|0; + $113 = (($112) + ($111<<2)|0); + $114 = HEAP32[$113>>2]|0; + $115 = (($114) + 4|0); + $116 = HEAP32[$115>>2]|0; + $117 = ($110|0)>=($116|0); + if (!($117)) { + break; + } + $118 = HEAP32[$j>>2]|0; + $119 = HEAP32[$apSub>>2]|0; + $120 = (($119) + ($118<<2)|0); + $121 = HEAP32[$120>>2]|0; + $122 = (($121) + 4|0); + $123 = HEAP32[$122>>2]|0; + $124 = HEAP32[$i>>2]|0; + $125 = (($124) - ($123))|0; + HEAP32[$i>>2] = $125; + $126 = HEAP32[$j>>2]|0; + $127 = (($126) + 1)|0; + HEAP32[$j>>2] = $127; + } + $128 = HEAP32[$i>>2]|0; + $129 = HEAP32[$j>>2]|0; + $130 = HEAP32[$apSub>>2]|0; + $131 = (($130) + ($129<<2)|0); + $132 = HEAP32[$131>>2]|0; + $133 = HEAP32[$132>>2]|0; + $134 = (($133) + (($128*20)|0)|0); + HEAP32[$pOp>>2] = $134; + } + $135 = HEAP32[$1>>2]|0; + $136 = (($135) + 88|0); + $137 = HEAP16[$136>>1]|0; + $138 = $137 & 3; + $139 = $138&65535; + $140 = ($139|0)==(1); + if ($140) { + $141 = HEAP32[$pMem>>2]|0; + $142 = (($141) + 28|0); + HEAP16[$142>>1] = 4; + $143 = HEAP32[$i>>2]|0; + $144 = ($143|0)<(0); + $145 = $144 << 31 >> 31; + $146 = HEAP32[$pMem>>2]|0; + $147 = (($146) + 16|0); + $148 = $147; + $149 = $148; + HEAP32[$149>>2] = $143; + $150 = (($148) + 4)|0; + $151 = $150; + HEAP32[$151>>2] = $145; + $152 = HEAP32[$pMem>>2]|0; + $153 = (($152) + 40|0); + HEAP32[$pMem>>2] = $153; + $154 = HEAP32[$pMem>>2]|0; + $155 = (($154) + 28|0); + HEAP16[$155>>1] = 2562; + $156 = HEAP32[$pOp>>2]|0; + $157 = HEAP8[$156>>0]|0; + $158 = $157&255; + $159 = (_sqlite3OpcodeName($158)|0); + $160 = HEAP32[$pMem>>2]|0; + $161 = (($160) + 4|0); + HEAP32[$161>>2] = $159; + $162 = HEAP32[$pMem>>2]|0; + $163 = (($162) + 4|0); + $164 = HEAP32[$163>>2]|0; + $165 = (_sqlite3Strlen30($164)|0); + $166 = HEAP32[$pMem>>2]|0; + $167 = (($166) + 24|0); + HEAP32[$167>>2] = $165; + $168 = HEAP32[$pMem>>2]|0; + $169 = (($168) + 30|0); + HEAP8[$169>>0] = 1; + $170 = HEAP32[$pMem>>2]|0; + $171 = (($170) + 40|0); + HEAP32[$pMem>>2] = $171; + $172 = HEAP32[$pOp>>2]|0; + $173 = (($172) + 1|0); + $174 = HEAP8[$173>>0]|0; + $175 = $174 << 24 >> 24; + $176 = ($175|0)==(-18); + if ($176) { + $177 = HEAP32[$nSub>>2]|0; + $178 = (($177) + 1)|0; + $179 = $178<<2; + HEAP32[$nByte>>2] = $179; + HEAP32[$j1>>2] = 0; + while(1) { + $180 = HEAP32[$j1>>2]|0; + $181 = HEAP32[$nSub>>2]|0; + $182 = ($180|0)<($181|0); + if (!($182)) { + break; + } + $183 = HEAP32[$j1>>2]|0; + $184 = HEAP32[$apSub>>2]|0; + $185 = (($184) + ($183<<2)|0); + $186 = HEAP32[$185>>2]|0; + $187 = HEAP32[$pOp>>2]|0; + $188 = (($187) + 16|0); + $189 = HEAP32[$188>>2]|0; + $190 = ($186|0)==($189|0); + if ($190) { + break; + } + $191 = HEAP32[$j1>>2]|0; + $192 = (($191) + 1)|0; + HEAP32[$j1>>2] = $192; + } + $193 = HEAP32[$j1>>2]|0; + $194 = HEAP32[$nSub>>2]|0; + $195 = ($193|0)==($194|0); + if ($195) { + $196 = HEAP32[$pSub>>2]|0; + $197 = HEAP32[$nByte>>2]|0; + $198 = HEAP32[$nSub>>2]|0; + $199 = ($198|0)!=(0); + $200 = $199&1; + $201 = (_sqlite3VdbeMemGrow($196,$197,$200)|0); + $202 = (0)==($201|0); + if ($202) { + $203 = HEAP32[$pSub>>2]|0; + $204 = (($203) + 4|0); + $205 = HEAP32[$204>>2]|0; + HEAP32[$apSub>>2] = $205; + $206 = HEAP32[$pOp>>2]|0; + $207 = (($206) + 16|0); + $208 = HEAP32[$207>>2]|0; + $209 = HEAP32[$nSub>>2]|0; + $210 = (($209) + 1)|0; + HEAP32[$nSub>>2] = $210; + $211 = HEAP32[$apSub>>2]|0; + $212 = (($211) + ($209<<2)|0); + HEAP32[$212>>2] = $208; + $213 = HEAP32[$pSub>>2]|0; + $214 = (($213) + 28|0); + $215 = HEAP16[$214>>1]|0; + $216 = $215&65535; + $217 = $216 | 16; + $218 = $217&65535; + HEAP16[$214>>1] = $218; + $219 = HEAP32[$nSub>>2]|0; + $220 = $219<<2; + $221 = HEAP32[$pSub>>2]|0; + $222 = (($221) + 24|0); + HEAP32[$222>>2] = $220; + } + } + } + } + $223 = HEAP32[$pMem>>2]|0; + $224 = (($223) + 28|0); + HEAP16[$224>>1] = 4; + $225 = HEAP32[$pOp>>2]|0; + $226 = (($225) + 4|0); + $227 = HEAP32[$226>>2]|0; + $228 = ($227|0)<(0); + $229 = $228 << 31 >> 31; + $230 = HEAP32[$pMem>>2]|0; + $231 = (($230) + 16|0); + $232 = $231; + $233 = $232; + HEAP32[$233>>2] = $227; + $234 = (($232) + 4)|0; + $235 = $234; + HEAP32[$235>>2] = $229; + $236 = HEAP32[$pMem>>2]|0; + $237 = (($236) + 40|0); + HEAP32[$pMem>>2] = $237; + $238 = HEAP32[$pMem>>2]|0; + $239 = (($238) + 28|0); + HEAP16[$239>>1] = 4; + $240 = HEAP32[$pOp>>2]|0; + $241 = (($240) + 8|0); + $242 = HEAP32[$241>>2]|0; + $243 = ($242|0)<(0); + $244 = $243 << 31 >> 31; + $245 = HEAP32[$pMem>>2]|0; + $246 = (($245) + 16|0); + $247 = $246; + $248 = $247; + HEAP32[$248>>2] = $242; + $249 = (($247) + 4)|0; + $250 = $249; + HEAP32[$250>>2] = $244; + $251 = HEAP32[$pMem>>2]|0; + $252 = (($251) + 40|0); + HEAP32[$pMem>>2] = $252; + $253 = HEAP32[$pMem>>2]|0; + $254 = (($253) + 28|0); + HEAP16[$254>>1] = 4; + $255 = HEAP32[$pOp>>2]|0; + $256 = (($255) + 12|0); + $257 = HEAP32[$256>>2]|0; + $258 = ($257|0)<(0); + $259 = $258 << 31 >> 31; + $260 = HEAP32[$pMem>>2]|0; + $261 = (($260) + 16|0); + $262 = $261; + $263 = $262; + HEAP32[$263>>2] = $257; + $264 = (($262) + 4)|0; + $265 = $264; + HEAP32[$265>>2] = $259; + $266 = HEAP32[$pMem>>2]|0; + $267 = (($266) + 40|0); + HEAP32[$pMem>>2] = $267; + $268 = HEAP32[$pMem>>2]|0; + $269 = (_sqlite3VdbeMemGrow($268,32,0)|0); + $270 = ($269|0)!=(0); + if ($270) { + HEAP32[$0>>2] = 1; + $340 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($340|0); + } + $271 = HEAP32[$pMem>>2]|0; + $272 = (($271) + 28|0); + HEAP16[$272>>1] = 514; + $273 = HEAP32[$pOp>>2]|0; + $274 = HEAP32[$pMem>>2]|0; + $275 = (($274) + 4|0); + $276 = HEAP32[$275>>2]|0; + $277 = (_displayP4($273,$276,32)|0); + HEAP32[$zP4>>2] = $277; + $278 = HEAP32[$zP4>>2]|0; + $279 = HEAP32[$pMem>>2]|0; + $280 = (($279) + 4|0); + $281 = HEAP32[$280>>2]|0; + $282 = ($278|0)!=($281|0); + $283 = HEAP32[$pMem>>2]|0; + if ($282) { + $284 = HEAP32[$zP4>>2]|0; + (_sqlite3VdbeMemSetStr($283,$284,-1,1,0)|0); + } else { + $285 = (($283) + 4|0); + $286 = HEAP32[$285>>2]|0; + $287 = (_sqlite3Strlen30($286)|0); + $288 = HEAP32[$pMem>>2]|0; + $289 = (($288) + 24|0); + HEAP32[$289>>2] = $287; + $290 = HEAP32[$pMem>>2]|0; + $291 = (($290) + 30|0); + HEAP8[$291>>0] = 1; + } + $292 = HEAP32[$pMem>>2]|0; + $293 = (($292) + 40|0); + HEAP32[$pMem>>2] = $293; + $294 = HEAP32[$1>>2]|0; + $295 = (($294) + 88|0); + $296 = HEAP16[$295>>1]|0; + $297 = $296 & 3; + $298 = $297&65535; + $299 = ($298|0)==(1); + do { + if ($299) { + $300 = HEAP32[$pMem>>2]|0; + $301 = (_sqlite3VdbeMemGrow($300,4,0)|0); + $302 = ($301|0)!=(0); + if (!($302)) { + $303 = HEAP32[$pMem>>2]|0; + $304 = (($303) + 28|0); + HEAP16[$304>>1] = 514; + $305 = HEAP32[$pMem>>2]|0; + $306 = (($305) + 24|0); + HEAP32[$306>>2] = 2; + $307 = HEAP32[$pMem>>2]|0; + $308 = (($307) + 4|0); + $309 = HEAP32[$308>>2]|0; + $310 = HEAP32[$pOp>>2]|0; + $311 = (($310) + 3|0); + $312 = HEAP8[$311>>0]|0; + $313 = $312&255; + HEAP32[$vararg_buffer2>>2] = $313; + (_sqlite3_snprintf(3,$309,40968,$vararg_buffer2)|0); + $314 = HEAP32[$pMem>>2]|0; + $315 = (($314) + 30|0); + HEAP8[$315>>0] = 1; + $316 = HEAP32[$pMem>>2]|0; + $317 = (($316) + 40|0); + HEAP32[$pMem>>2] = $317; + $318 = HEAP32[$pMem>>2]|0; + $319 = (($318) + 28|0); + HEAP16[$319>>1] = 1; + break; + } + HEAP32[$0>>2] = 1; + $340 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($340|0); + } + } while(0); + $320 = HEAP32[$1>>2]|0; + $321 = (($320) + 88|0); + $322 = HEAP16[$321>>1]|0; + $323 = $322 & 3; + $324 = $323&65535; + $325 = (($324) - 1)|0; + $326 = $325<<2; + $327 = (8 - ($326))|0; + $328 = $327&65535; + $329 = HEAP32[$1>>2]|0; + $330 = (($329) + 84|0); + HEAP16[$330>>1] = $328; + $331 = HEAP32[$1>>2]|0; + $332 = (($331) + 8|0); + $333 = HEAP32[$332>>2]|0; + $334 = (($333) + 40|0); + $335 = HEAP32[$1>>2]|0; + $336 = (($335) + 20|0); + HEAP32[$336>>2] = $334; + $337 = HEAP32[$1>>2]|0; + $338 = (($337) + 80|0); + HEAP32[$338>>2] = 0; + HEAP32[$rc>>2] = 100; + } + } while(0); + $339 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $339; + $340 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($340|0); +} +function _sqlite3VdbeExec($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0; + var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0; + var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0; + var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0; + var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $1080 = 0, $1081 = 0, $1082 = 0, $1083 = 0, $1084 = 0, $1085 = 0, $1086 = 0, $1087 = 0; + var $1088 = 0, $1089 = 0, $109 = 0, $1090 = 0, $1091 = 0, $1092 = 0.0, $1093 = 0, $1094 = 0.0, $1095 = 0, $1096 = 0, $1097 = 0, $1098 = 0.0, $1099 = 0.0, $11 = 0, $110 = 0, $1100 = 0.0, $1101 = 0.0, $1102 = 0.0, $1103 = 0.0, $1104 = 0.0; + var $1105 = 0.0, $1106 = 0.0, $1107 = 0.0, $1108 = 0, $1109 = 0.0, $111 = 0, $1110 = 0.0, $1111 = 0.0, $1112 = 0.0, $1113 = 0, $1114 = 0, $1115 = 0, $1116 = 0, $1117 = 0, $1118 = 0, $1119 = 0.0, $112 = 0, $1120 = 0, $1121 = 0, $1122 = 0; + var $1123 = 0, $1124 = 0, $1125 = 0, $1126 = 0, $1127 = 0, $1128 = 0, $1129 = 0, $113 = 0, $1130 = 0, $1131 = 0, $1132 = 0, $1133 = 0, $1134 = 0, $1135 = 0, $1136 = 0, $1137 = 0, $1138 = 0, $1139 = 0, $114 = 0, $1140 = 0; + var $1141 = 0, $1142 = 0, $1143 = 0, $1144 = 0, $1145 = 0, $1146 = 0, $1147 = 0, $1148 = 0, $1149 = 0, $115 = 0, $1150 = 0, $1151 = 0, $1152 = 0, $1153 = 0, $1154 = 0, $1155 = 0, $1156 = 0, $1157 = 0, $1158 = 0, $1159 = 0; + var $116 = 0, $1160 = 0, $1161 = 0, $1162 = 0.0, $1163 = 0.0, $1164 = 0, $1165 = 0, $1166 = 0.0, $1167 = 0, $1168 = 0, $1169 = 0, $117 = 0, $1170 = 0, $1171 = 0, $1172 = 0, $1173 = 0, $1174 = 0, $1175 = 0, $1176 = 0, $1177 = 0; + var $1178 = 0, $1179 = 0, $118 = 0, $1180 = 0, $1181 = 0, $1182 = 0, $1183 = 0, $1184 = 0, $1185 = 0, $1186 = 0, $1187 = 0, $1188 = 0, $1189 = 0, $119 = 0, $1190 = 0, $1191 = 0, $1192 = 0, $1193 = 0, $1194 = 0, $1195 = 0; + var $1196 = 0, $1197 = 0, $1198 = 0, $1199 = 0, $12 = 0, $120 = 0, $1200 = 0, $1201 = 0, $1202 = 0, $1203 = 0, $1204 = 0, $1205 = 0, $1206 = 0, $1207 = 0, $1208 = 0, $1209 = 0, $121 = 0, $1210 = 0, $1211 = 0, $1212 = 0; + var $1213 = 0, $1214 = 0, $1215 = 0, $1216 = 0, $1217 = 0, $1218 = 0, $1219 = 0, $122 = 0, $1220 = 0, $1221 = 0, $1222 = 0, $1223 = 0, $1224 = 0, $1225 = 0, $1226 = 0, $1227 = 0, $1228 = 0, $1229 = 0, $123 = 0, $1230 = 0; + var $1231 = 0, $1232 = 0, $1233 = 0, $1234 = 0, $1235 = 0, $1236 = 0, $1237 = 0, $1238 = 0, $1239 = 0, $124 = 0, $1240 = 0, $1241 = 0, $1242 = 0, $1243 = 0, $1244 = 0, $1245 = 0, $1246 = 0, $1247 = 0, $1248 = 0, $1249 = 0; + var $125 = 0, $1250 = 0, $1251 = 0, $1252 = 0, $1253 = 0, $1254 = 0, $1255 = 0, $1256 = 0, $1257 = 0, $1258 = 0, $1259 = 0, $126 = 0, $1260 = 0, $1261 = 0, $1262 = 0, $1263 = 0, $1264 = 0, $1265 = 0, $1266 = 0, $1267 = 0; + var $1268 = 0, $1269 = 0, $127 = 0, $1270 = 0, $1271 = 0, $1272 = 0, $1273 = 0, $1274 = 0, $1275 = 0, $1276 = 0, $1277 = 0, $1278 = 0, $1279 = 0, $128 = 0, $1280 = 0, $1281 = 0, $1282 = 0, $1283 = 0, $1284 = 0, $1285 = 0; + var $1286 = 0, $1287 = 0, $1288 = 0, $1289 = 0, $129 = 0, $1290 = 0, $1291 = 0, $1292 = 0, $1293 = 0, $1294 = 0, $1295 = 0, $1296 = 0, $1297 = 0, $1298 = 0, $1299 = 0, $13 = 0, $130 = 0, $1300 = 0, $1301 = 0, $1302 = 0; + var $1303 = 0, $1304 = 0, $1305 = 0, $1306 = 0, $1307 = 0, $1308 = 0, $1309 = 0, $131 = 0, $1310 = 0, $1311 = 0, $1312 = 0, $1313 = 0, $1314 = 0, $1315 = 0, $1316 = 0, $1317 = 0, $1318 = 0, $1319 = 0, $132 = 0, $1320 = 0; + var $1321 = 0, $1322 = 0, $1323 = 0, $1324 = 0, $1325 = 0, $1326 = 0, $1327 = 0, $1328 = 0, $1329 = 0, $133 = 0, $1330 = 0, $1331 = 0, $1332 = 0, $1333 = 0, $1334 = 0, $1335 = 0, $1336 = 0, $1337 = 0, $1338 = 0, $1339 = 0; + var $134 = 0, $1340 = 0, $1341 = 0, $1342 = 0, $1343 = 0, $1344 = 0, $1345 = 0, $1346 = 0, $1347 = 0, $1348 = 0, $1349 = 0, $135 = 0, $1350 = 0, $1351 = 0, $1352 = 0, $1353 = 0, $1354 = 0, $1355 = 0, $1356 = 0, $1357 = 0; + var $1358 = 0, $1359 = 0, $136 = 0, $1360 = 0, $1361 = 0, $1362 = 0, $1363 = 0, $1364 = 0, $1365 = 0, $1366 = 0, $1367 = 0, $1368 = 0, $1369 = 0, $137 = 0, $1370 = 0, $1371 = 0, $1372 = 0, $1373 = 0, $1374 = 0, $1375 = 0; + var $1376 = 0, $1377 = 0, $1378 = 0, $1379 = 0, $138 = 0, $1380 = 0, $1381 = 0, $1382 = 0, $1383 = 0, $1384 = 0, $1385 = 0, $1386 = 0, $1387 = 0, $1388 = 0, $1389 = 0, $139 = 0, $1390 = 0, $1391 = 0, $1392 = 0, $1393 = 0; + var $1394 = 0, $1395 = 0, $1396 = 0, $1397 = 0, $1398 = 0, $1399 = 0, $14 = 0, $140 = 0, $1400 = 0, $1401 = 0, $1402 = 0, $1403 = 0, $1404 = 0, $1405 = 0, $1406 = 0, $1407 = 0, $1408 = 0, $1409 = 0, $141 = 0, $1410 = 0; + var $1411 = 0, $1412 = 0, $1413 = 0, $1414 = 0, $1415 = 0, $1416 = 0, $1417 = 0, $1418 = 0, $1419 = 0, $142 = 0, $1420 = 0, $1421 = 0, $1422 = 0, $1423 = 0, $1424 = 0, $1425 = 0, $1426 = 0, $1427 = 0, $1428 = 0, $1429 = 0; + var $143 = 0, $1430 = 0, $1431 = 0, $1432 = 0, $1433 = 0, $1434 = 0, $1435 = 0, $1436 = 0, $1437 = 0, $1438 = 0, $1439 = 0, $144 = 0, $1440 = 0, $1441 = 0, $1442 = 0, $1443 = 0, $1444 = 0, $1445 = 0, $1446 = 0, $1447 = 0; + var $1448 = 0, $1449 = 0, $145 = 0, $1450 = 0, $1451 = 0, $1452 = 0, $1453 = 0, $1454 = 0, $1455 = 0, $1456 = 0, $1457 = 0, $1458 = 0, $1459 = 0, $146 = 0, $1460 = 0, $1461 = 0, $1462 = 0, $1463 = 0, $1464 = 0, $1465 = 0; + var $1466 = 0, $1467 = 0, $1468 = 0, $1469 = 0, $147 = 0, $1470 = 0, $1471 = 0, $1472 = 0, $1473 = 0, $1474 = 0, $1475 = 0, $1476 = 0, $1477 = 0, $1478 = 0, $1479 = 0, $148 = 0, $1480 = 0, $1481 = 0, $1482 = 0, $1483 = 0; + var $1484 = 0, $1485 = 0, $1486 = 0, $1487 = 0, $1488 = 0, $1489 = 0, $149 = 0, $1490 = 0, $1491 = 0, $1492 = 0, $1493 = 0, $1494 = 0, $1495 = 0, $1496 = 0, $1497 = 0, $1498 = 0, $1499 = 0, $15 = 0, $150 = 0, $1500 = 0; + var $1501 = 0, $1502 = 0, $1503 = 0, $1504 = 0, $1505 = 0, $1506 = 0, $1507 = 0, $1508 = 0, $1509 = 0, $151 = 0, $1510 = 0, $1511 = 0, $1512 = 0, $1513 = 0, $1514 = 0, $1515 = 0, $1516 = 0, $1517 = 0, $1518 = 0, $1519 = 0; + var $152 = 0, $1520 = 0, $1521 = 0, $1522 = 0, $1523 = 0, $1524 = 0, $1525 = 0, $1526 = 0, $1527 = 0, $1528 = 0, $1529 = 0, $153 = 0, $1530 = 0, $1531 = 0, $1532 = 0, $1533 = 0, $1534 = 0, $1535 = 0, $1536 = 0, $1537 = 0; + var $1538 = 0, $1539 = 0, $154 = 0, $1540 = 0, $1541 = 0, $1542 = 0, $1543 = 0, $1544 = 0, $1545 = 0, $1546 = 0, $1547 = 0, $1548 = 0, $1549 = 0, $155 = 0, $1550 = 0, $1551 = 0, $1552 = 0, $1553 = 0, $1554 = 0, $1555 = 0; + var $1556 = 0, $1557 = 0, $1558 = 0, $1559 = 0, $156 = 0, $1560 = 0, $1561 = 0, $1562 = 0, $1563 = 0, $1564 = 0, $1565 = 0, $1566 = 0, $1567 = 0, $1568 = 0, $1569 = 0, $157 = 0, $1570 = 0, $1571 = 0, $1572 = 0, $1573 = 0; + var $1574 = 0, $1575 = 0, $1576 = 0, $1577 = 0, $1578 = 0, $1579 = 0, $158 = 0, $1580 = 0, $1581 = 0, $1582 = 0, $1583 = 0, $1584 = 0, $1585 = 0, $1586 = 0, $1587 = 0, $1588 = 0, $1589 = 0, $159 = 0, $1590 = 0, $1591 = 0; + var $1592 = 0, $1593 = 0, $1594 = 0, $1595 = 0, $1596 = 0, $1597 = 0, $1598 = 0, $1599 = 0, $16 = 0, $160 = 0, $1600 = 0, $1601 = 0, $1602 = 0, $1603 = 0, $1604 = 0, $1605 = 0, $1606 = 0, $1607 = 0, $1608 = 0, $1609 = 0; + var $161 = 0, $1610 = 0, $1611 = 0, $1612 = 0, $1613 = 0, $1614 = 0, $1615 = 0, $1616 = 0, $1617 = 0, $1618 = 0, $1619 = 0, $162 = 0, $1620 = 0, $1621 = 0, $1622 = 0, $1623 = 0, $1624 = 0, $1625 = 0, $1626 = 0, $1627 = 0; + var $1628 = 0, $1629 = 0, $163 = 0, $1630 = 0, $1631 = 0, $1632 = 0, $1633 = 0, $1634 = 0, $1635 = 0, $1636 = 0, $1637 = 0, $1638 = 0, $1639 = 0, $164 = 0, $1640 = 0, $1641 = 0, $1642 = 0, $1643 = 0, $1644 = 0, $1645 = 0; + var $1646 = 0, $1647 = 0, $1648 = 0, $1649 = 0, $165 = 0, $1650 = 0, $1651 = 0, $1652 = 0, $1653 = 0, $1654 = 0, $1655 = 0, $1656 = 0, $1657 = 0, $1658 = 0, $1659 = 0, $166 = 0, $1660 = 0, $1661 = 0, $1662 = 0, $1663 = 0; + var $1664 = 0, $1665 = 0, $1666 = 0, $1667 = 0, $1668 = 0, $1669 = 0, $167 = 0, $1670 = 0, $1671 = 0, $1672 = 0, $1673 = 0, $1674 = 0, $1675 = 0, $1676 = 0, $1677 = 0, $1678 = 0, $1679 = 0, $168 = 0, $1680 = 0, $1681 = 0; + var $1682 = 0, $1683 = 0, $1684 = 0, $1685 = 0, $1686 = 0, $1687 = 0, $1688 = 0, $1689 = 0, $169 = 0, $1690 = 0, $1691 = 0, $1692 = 0, $1693 = 0, $1694 = 0, $1695 = 0, $1696 = 0, $1697 = 0, $1698 = 0, $1699 = 0, $17 = 0; + var $170 = 0, $1700 = 0, $1701 = 0, $1702 = 0, $1703 = 0, $1704 = 0, $1705 = 0, $1706 = 0, $1707 = 0, $1708 = 0, $1709 = 0, $171 = 0, $1710 = 0, $1711 = 0, $1712 = 0, $1713 = 0, $1714 = 0, $1715 = 0, $1716 = 0, $1717 = 0; + var $1718 = 0, $1719 = 0, $172 = 0, $1720 = 0, $1721 = 0, $1722 = 0, $1723 = 0, $1724 = 0, $1725 = 0, $1726 = 0, $1727 = 0, $1728 = 0, $1729 = 0, $173 = 0, $1730 = 0, $1731 = 0, $1732 = 0, $1733 = 0, $1734 = 0, $1735 = 0; + var $1736 = 0, $1737 = 0, $1738 = 0, $1739 = 0, $174 = 0, $1740 = 0, $1741 = 0, $1742 = 0, $1743 = 0, $1744 = 0, $1745 = 0, $1746 = 0, $1747 = 0, $1748 = 0, $1749 = 0, $175 = 0, $1750 = 0, $1751 = 0, $1752 = 0, $1753 = 0; + var $1754 = 0, $1755 = 0, $1756 = 0, $1757 = 0, $1758 = 0, $1759 = 0, $176 = 0, $1760 = 0, $1761 = 0, $1762 = 0, $1763 = 0, $1764 = 0, $1765 = 0, $1766 = 0, $1767 = 0, $1768 = 0, $1769 = 0, $177 = 0, $1770 = 0, $1771 = 0; + var $1772 = 0, $1773 = 0, $1774 = 0, $1775 = 0, $1776 = 0, $1777 = 0, $1778 = 0, $1779 = 0, $178 = 0, $1780 = 0, $1781 = 0, $1782 = 0, $1783 = 0, $1784 = 0, $1785 = 0, $1786 = 0, $1787 = 0, $1788 = 0, $1789 = 0, $179 = 0; + var $1790 = 0, $1791 = 0, $1792 = 0, $1793 = 0, $1794 = 0, $1795 = 0, $1796 = 0, $1797 = 0, $1798 = 0, $1799 = 0, $18 = 0, $180 = 0, $1800 = 0, $1801 = 0, $1802 = 0, $1803 = 0, $1804 = 0, $1805 = 0, $1806 = 0, $1807 = 0; + var $1808 = 0, $1809 = 0, $181 = 0, $1810 = 0, $1811 = 0, $1812 = 0, $1813 = 0, $1814 = 0, $1815 = 0, $1816 = 0, $1817 = 0, $1818 = 0, $1819 = 0, $182 = 0, $1820 = 0, $1821 = 0, $1822 = 0, $1823 = 0, $1824 = 0, $1825 = 0; + var $1826 = 0, $1827 = 0, $1828 = 0, $1829 = 0, $183 = 0, $1830 = 0, $1831 = 0, $1832 = 0, $1833 = 0, $1834 = 0, $1835 = 0, $1836 = 0, $1837 = 0, $1838 = 0, $1839 = 0, $184 = 0, $1840 = 0, $1841 = 0, $1842 = 0, $1843 = 0; + var $1844 = 0, $1845 = 0, $1846 = 0, $1847 = 0, $1848 = 0, $1849 = 0, $185 = 0, $1850 = 0, $1851 = 0, $1852 = 0, $1853 = 0, $1854 = 0, $1855 = 0, $1856 = 0, $1857 = 0, $1858 = 0, $1859 = 0, $186 = 0, $1860 = 0, $1861 = 0; + var $1862 = 0, $1863 = 0, $1864 = 0, $1865 = 0, $1866 = 0, $1867 = 0, $1868 = 0, $1869 = 0, $187 = 0, $1870 = 0, $1871 = 0, $1872 = 0, $1873 = 0, $1874 = 0, $1875 = 0, $1876 = 0, $1877 = 0, $1878 = 0, $1879 = 0, $188 = 0; + var $1880 = 0, $1881 = 0, $1882 = 0, $1883 = 0, $1884 = 0, $1885 = 0, $1886 = 0, $1887 = 0, $1888 = 0, $1889 = 0, $189 = 0, $1890 = 0, $1891 = 0, $1892 = 0, $1893 = 0, $1894 = 0, $1895 = 0, $1896 = 0, $1897 = 0, $1898 = 0; + var $1899 = 0, $19 = 0, $190 = 0, $1900 = 0, $1901 = 0, $1902 = 0, $1903 = 0, $1904 = 0, $1905 = 0, $1906 = 0, $1907 = 0, $1908 = 0, $1909 = 0, $191 = 0, $1910 = 0, $1911 = 0, $1912 = 0, $1913 = 0, $1914 = 0, $1915 = 0; + var $1916 = 0, $1917 = 0, $1918 = 0, $1919 = 0, $192 = 0, $1920 = 0, $1921 = 0, $1922 = 0, $1923 = 0, $1924 = 0, $1925 = 0, $1926 = 0, $1927 = 0, $1928 = 0, $1929 = 0, $193 = 0, $1930 = 0, $1931 = 0, $1932 = 0, $1933 = 0; + var $1934 = 0, $1935 = 0, $1936 = 0, $1937 = 0, $1938 = 0, $1939 = 0, $194 = 0, $1940 = 0, $1941 = 0, $1942 = 0, $1943 = 0, $1944 = 0, $1945 = 0, $1946 = 0, $1947 = 0, $1948 = 0, $1949 = 0, $195 = 0, $1950 = 0, $1951 = 0; + var $1952 = 0, $1953 = 0, $1954 = 0, $1955 = 0, $1956 = 0, $1957 = 0, $1958 = 0, $1959 = 0, $196 = 0, $1960 = 0, $1961 = 0, $1962 = 0, $1963 = 0, $1964 = 0, $1965 = 0, $1966 = 0, $1967 = 0, $1968 = 0, $1969 = 0, $197 = 0; + var $1970 = 0, $1971 = 0, $1972 = 0, $1973 = 0, $1974 = 0, $1975 = 0, $1976 = 0, $1977 = 0, $1978 = 0, $1979 = 0, $198 = 0, $1980 = 0, $1981 = 0, $1982 = 0, $1983 = 0, $1984 = 0, $1985 = 0, $1986 = 0, $1987 = 0, $1988 = 0; + var $1989 = 0, $199 = 0, $1990 = 0, $1991 = 0, $1992 = 0, $1993 = 0, $1994 = 0, $1995 = 0, $1996 = 0, $1997 = 0, $1998 = 0, $1999 = 0, $2 = 0, $20 = 0, $200 = 0, $2000 = 0, $2001 = 0, $2002 = 0, $2003 = 0, $2004 = 0; + var $2005 = 0, $2006 = 0, $2007 = 0, $2008 = 0, $2009 = 0, $201 = 0, $2010 = 0, $2011 = 0, $2012 = 0, $2013 = 0, $2014 = 0, $2015 = 0, $2016 = 0, $2017 = 0, $2018 = 0, $2019 = 0, $202 = 0, $2020 = 0, $2021 = 0, $2022 = 0; + var $2023 = 0, $2024 = 0, $2025 = 0, $2026 = 0, $2027 = 0, $2028 = 0, $2029 = 0, $203 = 0, $2030 = 0, $2031 = 0, $2032 = 0, $2033 = 0, $2034 = 0, $2035 = 0, $2036 = 0, $2037 = 0, $2038 = 0, $2039 = 0, $204 = 0, $2040 = 0; + var $2041 = 0, $2042 = 0, $2043 = 0, $2044 = 0, $2045 = 0, $2046 = 0, $2047 = 0, $2048 = 0, $2049 = 0, $205 = 0, $2050 = 0, $2051 = 0, $2052 = 0, $2053 = 0, $2054 = 0, $2055 = 0, $2056 = 0, $2057 = 0, $2058 = 0, $2059 = 0; + var $206 = 0, $2060 = 0, $2061 = 0, $2062 = 0, $2063 = 0, $2064 = 0, $2065 = 0, $2066 = 0, $2067 = 0, $2068 = 0, $2069 = 0, $207 = 0, $2070 = 0, $2071 = 0, $2072 = 0, $2073 = 0, $2074 = 0, $2075 = 0, $2076 = 0, $2077 = 0; + var $2078 = 0, $2079 = 0, $208 = 0, $2080 = 0, $2081 = 0, $2082 = 0, $2083 = 0, $2084 = 0, $2085 = 0, $2086 = 0, $2087 = 0, $2088 = 0, $2089 = 0, $209 = 0, $2090 = 0, $2091 = 0, $2092 = 0, $2093 = 0, $2094 = 0, $2095 = 0; + var $2096 = 0, $2097 = 0, $2098 = 0, $2099 = 0, $21 = 0, $210 = 0, $2100 = 0, $2101 = 0, $2102 = 0, $2103 = 0, $2104 = 0, $2105 = 0, $2106 = 0, $2107 = 0, $2108 = 0, $2109 = 0, $211 = 0, $2110 = 0, $2111 = 0, $2112 = 0; + var $2113 = 0, $2114 = 0, $2115 = 0, $2116 = 0, $2117 = 0, $2118 = 0, $2119 = 0, $212 = 0, $2120 = 0, $2121 = 0, $2122 = 0, $2123 = 0, $2124 = 0, $2125 = 0, $2126 = 0, $2127 = 0, $2128 = 0, $2129 = 0, $213 = 0, $2130 = 0; + var $2131 = 0, $2132 = 0, $2133 = 0, $2134 = 0, $2135 = 0, $2136 = 0, $2137 = 0, $2138 = 0, $2139 = 0, $214 = 0, $2140 = 0, $2141 = 0, $2142 = 0, $2143 = 0, $2144 = 0, $2145 = 0, $2146 = 0, $2147 = 0, $2148 = 0, $2149 = 0; + var $215 = 0, $2150 = 0, $2151 = 0, $2152 = 0, $2153 = 0, $2154 = 0, $2155 = 0, $2156 = 0, $2157 = 0, $2158 = 0, $2159 = 0, $216 = 0, $2160 = 0, $2161 = 0, $2162 = 0, $2163 = 0, $2164 = 0, $2165 = 0, $2166 = 0, $2167 = 0; + var $2168 = 0, $2169 = 0, $217 = 0, $2170 = 0.0, $2171 = 0, $2172 = 0, $2173 = 0, $2174 = 0, $2175 = 0, $2176 = 0, $2177 = 0, $2178 = 0, $2179 = 0, $218 = 0, $2180 = 0, $2181 = 0, $2182 = 0, $2183 = 0, $2184 = 0, $2185 = 0; + var $2186 = 0, $2187 = 0, $2188 = 0, $2189 = 0, $219 = 0, $2190 = 0, $2191 = 0, $2192 = 0, $2193 = 0, $2194 = 0, $2195 = 0, $2196 = 0, $2197 = 0, $2198 = 0, $2199 = 0, $22 = 0, $220 = 0, $2200 = 0, $2201 = 0, $2202 = 0; + var $2203 = 0, $2204 = 0, $2205 = 0, $2206 = 0, $2207 = 0, $2208 = 0, $2209 = 0, $221 = 0, $2210 = 0, $2211 = 0, $2212 = 0, $2213 = 0, $2214 = 0, $2215 = 0, $2216 = 0, $2217 = 0, $2218 = 0, $2219 = 0, $222 = 0, $2220 = 0; + var $2221 = 0, $2222 = 0, $2223 = 0, $2224 = 0, $2225 = 0, $2226 = 0, $2227 = 0, $2228 = 0, $2229 = 0, $223 = 0, $2230 = 0, $2231 = 0, $2232 = 0, $2233 = 0, $2234 = 0, $2235 = 0, $2236 = 0, $2237 = 0, $2238 = 0, $2239 = 0; + var $224 = 0, $2240 = 0, $2241 = 0, $2242 = 0, $2243 = 0, $2244 = 0, $2245 = 0, $2246 = 0, $2247 = 0, $2248 = 0, $2249 = 0, $225 = 0, $2250 = 0, $2251 = 0, $2252 = 0, $2253 = 0, $2254 = 0, $2255 = 0, $2256 = 0, $2257 = 0; + var $2258 = 0, $2259 = 0, $226 = 0, $2260 = 0, $2261 = 0, $2262 = 0, $2263 = 0, $2264 = 0, $2265 = 0, $2266 = 0, $2267 = 0, $2268 = 0, $2269 = 0, $227 = 0, $2270 = 0, $2271 = 0, $2272 = 0, $2273 = 0, $2274 = 0, $2275 = 0; + var $2276 = 0, $2277 = 0, $2278 = 0, $2279 = 0, $228 = 0, $2280 = 0, $2281 = 0, $2282 = 0, $2283 = 0, $2284 = 0, $2285 = 0, $2286 = 0, $2287 = 0, $2288 = 0, $2289 = 0, $229 = 0, $2290 = 0, $2291 = 0, $2292 = 0, $2293 = 0; + var $2294 = 0, $2295 = 0, $2296 = 0, $2297 = 0, $2298 = 0, $2299 = 0, $23 = 0, $230 = 0, $2300 = 0, $2301 = 0, $2302 = 0, $2303 = 0, $2304 = 0, $2305 = 0, $2306 = 0, $2307 = 0, $2308 = 0, $2309 = 0, $231 = 0, $2310 = 0; + var $2311 = 0, $2312 = 0, $2313 = 0, $2314 = 0, $2315 = 0, $2316 = 0, $2317 = 0, $2318 = 0, $2319 = 0, $232 = 0, $2320 = 0, $2321 = 0, $2322 = 0, $2323 = 0, $2324 = 0, $2325 = 0, $2326 = 0, $2327 = 0, $2328 = 0, $2329 = 0; + var $233 = 0, $2330 = 0, $2331 = 0, $2332 = 0, $2333 = 0, $2334 = 0, $2335 = 0, $2336 = 0, $2337 = 0, $2338 = 0, $2339 = 0, $234 = 0, $2340 = 0, $2341 = 0, $2342 = 0, $2343 = 0, $2344 = 0, $2345 = 0, $2346 = 0, $2347 = 0; + var $2348 = 0, $2349 = 0, $235 = 0, $2350 = 0, $2351 = 0, $2352 = 0, $2353 = 0, $2354 = 0, $2355 = 0, $2356 = 0, $2357 = 0, $2358 = 0, $2359 = 0, $236 = 0, $2360 = 0, $2361 = 0, $2362 = 0, $2363 = 0, $2364 = 0, $2365 = 0; + var $2366 = 0, $2367 = 0, $2368 = 0, $2369 = 0, $237 = 0, $2370 = 0, $2371 = 0, $2372 = 0, $2373 = 0, $2374 = 0, $2375 = 0, $2376 = 0, $2377 = 0, $2378 = 0, $2379 = 0, $238 = 0, $2380 = 0, $2381 = 0, $2382 = 0, $2383 = 0; + var $2384 = 0, $2385 = 0, $2386 = 0, $2387 = 0, $2388 = 0, $2389 = 0, $239 = 0, $2390 = 0, $2391 = 0, $2392 = 0, $2393 = 0, $2394 = 0, $2395 = 0, $2396 = 0, $2397 = 0, $2398 = 0, $2399 = 0, $24 = 0, $240 = 0, $2400 = 0; + var $2401 = 0, $2402 = 0, $2403 = 0, $2404 = 0, $2405 = 0, $2406 = 0, $2407 = 0, $2408 = 0, $2409 = 0, $241 = 0, $2410 = 0, $2411 = 0, $2412 = 0, $2413 = 0, $2414 = 0, $2415 = 0, $2416 = 0, $2417 = 0, $2418 = 0, $2419 = 0; + var $242 = 0, $2420 = 0, $2421 = 0, $2422 = 0, $2423 = 0, $2424 = 0, $2425 = 0, $2426 = 0, $2427 = 0, $2428 = 0, $2429 = 0, $243 = 0, $2430 = 0, $2431 = 0, $2432 = 0, $2433 = 0, $2434 = 0, $2435 = 0, $2436 = 0, $2437 = 0; + var $2438 = 0, $2439 = 0, $244 = 0, $2440 = 0, $2441 = 0, $2442 = 0, $2443 = 0, $2444 = 0, $2445 = 0, $2446 = 0, $2447 = 0, $2448 = 0, $2449 = 0, $245 = 0, $2450 = 0, $2451 = 0, $2452 = 0, $2453 = 0, $2454 = 0, $2455 = 0; + var $2456 = 0, $2457 = 0, $2458 = 0, $2459 = 0, $246 = 0, $2460 = 0, $2461 = 0, $2462 = 0, $2463 = 0, $2464 = 0, $2465 = 0, $2466 = 0, $2467 = 0, $2468 = 0, $2469 = 0, $247 = 0, $2470 = 0, $2471 = 0, $2472 = 0, $2473 = 0; + var $2474 = 0, $2475 = 0, $2476 = 0, $2477 = 0, $2478 = 0, $2479 = 0, $248 = 0, $2480 = 0, $2481 = 0, $2482 = 0, $2483 = 0, $2484 = 0, $2485 = 0, $2486 = 0, $2487 = 0, $2488 = 0, $2489 = 0, $249 = 0, $2490 = 0, $2491 = 0; + var $2492 = 0, $2493 = 0, $2494 = 0, $2495 = 0, $2496 = 0, $2497 = 0, $2498 = 0, $2499 = 0, $25 = 0, $250 = 0, $2500 = 0, $2501 = 0, $2502 = 0, $2503 = 0, $2504 = 0, $2505 = 0, $2506 = 0, $2507 = 0, $2508 = 0, $2509 = 0; + var $251 = 0, $2510 = 0, $2511 = 0, $2512 = 0, $2513 = 0, $2514 = 0, $2515 = 0, $2516 = 0, $2517 = 0, $2518 = 0, $2519 = 0, $252 = 0, $2520 = 0, $2521 = 0, $2522 = 0, $2523 = 0, $2524 = 0, $2525 = 0, $2526 = 0, $2527 = 0; + var $2528 = 0, $2529 = 0, $253 = 0, $2530 = 0, $2531 = 0, $2532 = 0, $2533 = 0, $2534 = 0, $2535 = 0, $2536 = 0, $2537 = 0, $2538 = 0, $2539 = 0, $254 = 0, $2540 = 0, $2541 = 0, $2542 = 0, $2543 = 0, $2544 = 0, $2545 = 0; + var $2546 = 0, $2547 = 0, $2548 = 0, $2549 = 0, $255 = 0, $2550 = 0, $2551 = 0, $2552 = 0, $2553 = 0, $2554 = 0, $2555 = 0, $2556 = 0, $2557 = 0, $2558 = 0, $2559 = 0, $256 = 0, $2560 = 0, $2561 = 0, $2562 = 0, $2563 = 0; + var $2564 = 0, $2565 = 0, $2566 = 0, $2567 = 0, $2568 = 0, $2569 = 0, $257 = 0, $2570 = 0, $2571 = 0, $2572 = 0, $2573 = 0, $2574 = 0, $2575 = 0, $2576 = 0, $2577 = 0, $2578 = 0, $2579 = 0, $258 = 0, $2580 = 0, $2581 = 0; + var $2582 = 0, $2583 = 0, $2584 = 0, $2585 = 0, $2586 = 0, $2587 = 0, $2588 = 0, $2589 = 0, $259 = 0, $2590 = 0, $2591 = 0, $2592 = 0, $2593 = 0, $2594 = 0, $2595 = 0, $2596 = 0, $2597 = 0, $2598 = 0, $2599 = 0, $26 = 0; + var $260 = 0, $2600 = 0, $2601 = 0, $2602 = 0, $2603 = 0, $2604 = 0, $2605 = 0, $2606 = 0, $2607 = 0, $2608 = 0, $2609 = 0, $261 = 0, $2610 = 0, $2611 = 0, $2612 = 0, $2613 = 0, $2614 = 0, $2615 = 0, $2616 = 0, $2617 = 0; + var $2618 = 0, $2619 = 0, $262 = 0, $2620 = 0, $2621 = 0, $2622 = 0, $2623 = 0, $2624 = 0, $2625 = 0, $2626 = 0, $2627 = 0, $2628 = 0, $2629 = 0, $263 = 0, $2630 = 0, $2631 = 0, $2632 = 0, $2633 = 0, $2634 = 0, $2635 = 0; + var $2636 = 0, $2637 = 0, $2638 = 0, $2639 = 0, $264 = 0, $2640 = 0, $2641 = 0, $2642 = 0, $2643 = 0, $2644 = 0, $2645 = 0, $2646 = 0, $2647 = 0, $2648 = 0, $2649 = 0, $265 = 0, $2650 = 0, $2651 = 0, $2652 = 0, $2653 = 0; + var $2654 = 0, $2655 = 0, $2656 = 0, $2657 = 0, $2658 = 0, $2659 = 0, $266 = 0, $2660 = 0, $2661 = 0, $2662 = 0, $2663 = 0, $2664 = 0, $2665 = 0, $2666 = 0, $2667 = 0, $2668 = 0, $2669 = 0, $267 = 0, $2670 = 0, $2671 = 0; + var $2672 = 0, $2673 = 0, $2674 = 0, $2675 = 0, $2676 = 0, $2677 = 0, $2678 = 0, $2679 = 0, $268 = 0, $2680 = 0, $2681 = 0, $2682 = 0, $2683 = 0, $2684 = 0, $2685 = 0, $2686 = 0, $2687 = 0, $2688 = 0, $2689 = 0, $269 = 0; + var $2690 = 0, $2691 = 0, $2692 = 0, $2693 = 0, $2694 = 0, $2695 = 0, $2696 = 0, $2697 = 0, $2698 = 0, $2699 = 0, $27 = 0, $270 = 0, $2700 = 0, $2701 = 0, $2702 = 0, $2703 = 0, $2704 = 0, $2705 = 0, $2706 = 0, $2707 = 0; + var $2708 = 0, $2709 = 0, $271 = 0, $2710 = 0, $2711 = 0, $2712 = 0, $2713 = 0, $2714 = 0, $2715 = 0, $2716 = 0, $2717 = 0, $2718 = 0, $2719 = 0, $272 = 0, $2720 = 0, $2721 = 0, $2722 = 0, $2723 = 0, $2724 = 0, $2725 = 0; + var $2726 = 0, $2727 = 0, $2728 = 0, $2729 = 0, $273 = 0, $2730 = 0, $2731 = 0, $2732 = 0, $2733 = 0, $2734 = 0, $2735 = 0, $2736 = 0, $2737 = 0, $2738 = 0, $2739 = 0, $274 = 0, $2740 = 0, $2741 = 0, $2742 = 0, $2743 = 0; + var $2744 = 0, $2745 = 0, $2746 = 0, $2747 = 0, $2748 = 0, $2749 = 0, $275 = 0, $2750 = 0, $2751 = 0, $2752 = 0, $2753 = 0, $2754 = 0, $2755 = 0, $2756 = 0, $2757 = 0, $2758 = 0, $2759 = 0, $276 = 0, $2760 = 0, $2761 = 0; + var $2762 = 0, $2763 = 0, $2764 = 0, $2765 = 0, $2766 = 0, $2767 = 0, $2768 = 0, $2769 = 0, $277 = 0, $2770 = 0, $2771 = 0, $2772 = 0, $2773 = 0, $2774 = 0, $2775 = 0, $2776 = 0, $2777 = 0, $2778 = 0, $2779 = 0, $278 = 0; + var $2780 = 0, $2781 = 0, $2782 = 0, $2783 = 0, $2784 = 0, $2785 = 0, $2786 = 0, $2787 = 0, $2788 = 0, $2789 = 0, $279 = 0, $2790 = 0, $2791 = 0, $2792 = 0, $2793 = 0, $2794 = 0, $2795 = 0, $2796 = 0, $2797 = 0, $2798 = 0; + var $2799 = 0, $28 = 0, $280 = 0, $2800 = 0, $2801 = 0, $2802 = 0, $2803 = 0, $2804 = 0, $2805 = 0, $2806 = 0, $2807 = 0, $2808 = 0, $2809 = 0, $281 = 0, $2810 = 0, $2811 = 0, $2812 = 0, $2813 = 0, $2814 = 0, $2815 = 0; + var $2816 = 0, $2817 = 0, $2818 = 0, $2819 = 0, $282 = 0, $2820 = 0, $2821 = 0, $2822 = 0, $2823 = 0, $2824 = 0, $2825 = 0, $2826 = 0, $2827 = 0, $2828 = 0, $2829 = 0, $283 = 0, $2830 = 0, $2831 = 0, $2832 = 0, $2833 = 0; + var $2834 = 0, $2835 = 0, $2836 = 0, $2837 = 0, $2838 = 0, $2839 = 0, $284 = 0, $2840 = 0, $2841 = 0, $2842 = 0, $2843 = 0, $2844 = 0, $2845 = 0, $2846 = 0, $2847 = 0, $2848 = 0, $2849 = 0, $285 = 0, $2850 = 0, $2851 = 0; + var $2852 = 0, $2853 = 0, $2854 = 0, $2855 = 0, $2856 = 0, $2857 = 0, $2858 = 0, $2859 = 0, $286 = 0, $2860 = 0, $2861 = 0, $2862 = 0, $2863 = 0, $2864 = 0, $2865 = 0, $2866 = 0, $2867 = 0, $2868 = 0, $2869 = 0, $287 = 0; + var $2870 = 0, $2871 = 0, $2872 = 0, $2873 = 0, $2874 = 0, $2875 = 0, $2876 = 0, $2877 = 0, $2878 = 0, $2879 = 0, $288 = 0, $2880 = 0, $2881 = 0, $2882 = 0, $2883 = 0, $2884 = 0, $2885 = 0, $2886 = 0, $2887 = 0, $2888 = 0; + var $2889 = 0, $289 = 0, $2890 = 0, $2891 = 0, $2892 = 0, $2893 = 0, $2894 = 0, $2895 = 0, $2896 = 0, $2897 = 0, $2898 = 0, $2899 = 0, $29 = 0, $290 = 0, $2900 = 0, $2901 = 0, $2902 = 0, $2903 = 0, $2904 = 0, $2905 = 0; + var $2906 = 0, $2907 = 0, $2908 = 0, $2909 = 0, $291 = 0, $2910 = 0, $2911 = 0, $2912 = 0, $2913 = 0, $2914 = 0, $2915 = 0, $2916 = 0, $2917 = 0, $2918 = 0, $2919 = 0, $292 = 0, $2920 = 0, $2921 = 0, $2922 = 0, $2923 = 0; + var $2924 = 0, $2925 = 0, $2926 = 0, $2927 = 0, $2928 = 0, $2929 = 0, $293 = 0, $2930 = 0, $2931 = 0, $2932 = 0, $2933 = 0, $2934 = 0, $2935 = 0, $2936 = 0, $2937 = 0, $2938 = 0, $2939 = 0, $294 = 0, $2940 = 0, $2941 = 0; + var $2942 = 0, $2943 = 0, $2944 = 0, $2945 = 0, $2946 = 0, $2947 = 0, $2948 = 0, $2949 = 0, $295 = 0, $2950 = 0, $2951 = 0, $2952 = 0, $2953 = 0, $2954 = 0, $2955 = 0, $2956 = 0, $2957 = 0, $2958 = 0, $2959 = 0, $296 = 0; + var $2960 = 0, $2961 = 0, $2962 = 0, $2963 = 0, $2964 = 0, $2965 = 0, $2966 = 0, $2967 = 0, $2968 = 0, $2969 = 0, $297 = 0, $2970 = 0, $2971 = 0, $2972 = 0, $2973 = 0, $2974 = 0, $2975 = 0, $2976 = 0, $2977 = 0, $2978 = 0; + var $2979 = 0, $298 = 0, $2980 = 0, $2981 = 0, $2982 = 0, $2983 = 0, $2984 = 0, $2985 = 0, $2986 = 0, $2987 = 0, $2988 = 0, $2989 = 0, $299 = 0, $2990 = 0, $2991 = 0, $2992 = 0, $2993 = 0, $2994 = 0, $2995 = 0, $2996 = 0; + var $2997 = 0, $2998 = 0, $2999 = 0, $3 = 0, $30 = 0, $300 = 0, $3000 = 0, $3001 = 0, $3002 = 0, $3003 = 0, $3004 = 0, $3005 = 0, $3006 = 0, $3007 = 0, $3008 = 0, $3009 = 0, $301 = 0, $3010 = 0, $3011 = 0, $3012 = 0; + var $3013 = 0, $3014 = 0, $3015 = 0, $3016 = 0, $3017 = 0, $3018 = 0, $3019 = 0, $302 = 0, $3020 = 0, $3021 = 0, $3022 = 0, $3023 = 0, $3024 = 0, $3025 = 0, $3026 = 0, $3027 = 0, $3028 = 0, $3029 = 0, $303 = 0, $3030 = 0; + var $3031 = 0, $3032 = 0, $3033 = 0, $3034 = 0, $3035 = 0, $3036 = 0, $3037 = 0, $3038 = 0, $3039 = 0, $304 = 0, $3040 = 0, $3041 = 0, $3042 = 0, $3043 = 0, $3044 = 0, $3045 = 0, $3046 = 0, $3047 = 0, $3048 = 0, $3049 = 0; + var $305 = 0, $3050 = 0, $3051 = 0, $3052 = 0, $3053 = 0, $3054 = 0, $3055 = 0, $3056 = 0, $3057 = 0, $3058 = 0, $3059 = 0, $306 = 0, $3060 = 0, $3061 = 0, $3062 = 0, $3063 = 0, $3064 = 0, $3065 = 0, $3066 = 0, $3067 = 0; + var $3068 = 0, $3069 = 0, $307 = 0, $3070 = 0, $3071 = 0, $3072 = 0, $3073 = 0, $3074 = 0, $3075 = 0, $3076 = 0, $3077 = 0, $3078 = 0, $3079 = 0, $308 = 0, $3080 = 0, $3081 = 0, $3082 = 0, $3083 = 0, $3084 = 0, $3085 = 0; + var $3086 = 0, $3087 = 0, $3088 = 0, $3089 = 0, $309 = 0, $3090 = 0, $3091 = 0, $3092 = 0, $3093 = 0, $3094 = 0, $3095 = 0, $3096 = 0, $3097 = 0, $3098 = 0, $3099 = 0, $31 = 0, $310 = 0, $3100 = 0, $3101 = 0, $3102 = 0; + var $3103 = 0, $3104 = 0, $3105 = 0, $3106 = 0, $3107 = 0, $3108 = 0, $3109 = 0, $311 = 0, $3110 = 0, $3111 = 0, $3112 = 0, $3113 = 0, $3114 = 0, $3115 = 0, $3116 = 0, $3117 = 0, $3118 = 0, $3119 = 0, $312 = 0, $3120 = 0; + var $3121 = 0, $3122 = 0, $3123 = 0, $3124 = 0, $3125 = 0, $3126 = 0, $3127 = 0, $3128 = 0, $3129 = 0, $313 = 0, $3130 = 0, $3131 = 0, $3132 = 0, $3133 = 0, $3134 = 0, $3135 = 0, $3136 = 0, $3137 = 0, $3138 = 0, $3139 = 0; + var $314 = 0, $3140 = 0, $3141 = 0, $3142 = 0, $3143 = 0, $3144 = 0, $3145 = 0, $3146 = 0, $3147 = 0, $3148 = 0, $3149 = 0, $315 = 0, $3150 = 0, $3151 = 0, $3152 = 0, $3153 = 0, $3154 = 0, $3155 = 0, $3156 = 0, $3157 = 0; + var $3158 = 0, $3159 = 0, $316 = 0, $3160 = 0, $3161 = 0, $3162 = 0, $3163 = 0, $3164 = 0, $3165 = 0, $3166 = 0, $3167 = 0, $3168 = 0, $3169 = 0, $317 = 0, $3170 = 0, $3171 = 0, $3172 = 0, $3173 = 0, $3174 = 0, $3175 = 0; + var $3176 = 0, $3177 = 0, $3178 = 0, $3179 = 0, $318 = 0, $3180 = 0, $3181 = 0, $3182 = 0, $3183 = 0, $3184 = 0, $3185 = 0, $3186 = 0, $3187 = 0, $3188 = 0, $3189 = 0, $319 = 0, $3190 = 0, $3191 = 0, $3192 = 0, $3193 = 0; + var $3194 = 0, $3195 = 0, $3196 = 0, $3197 = 0, $3198 = 0, $3199 = 0, $32 = 0, $320 = 0, $3200 = 0, $3201 = 0, $3202 = 0, $3203 = 0, $3204 = 0, $3205 = 0, $3206 = 0, $3207 = 0, $3208 = 0, $3209 = 0, $321 = 0, $3210 = 0; + var $3211 = 0, $3212 = 0, $3213 = 0, $3214 = 0, $3215 = 0, $3216 = 0, $3217 = 0, $3218 = 0, $3219 = 0, $322 = 0, $3220 = 0, $3221 = 0, $3222 = 0, $3223 = 0, $3224 = 0, $3225 = 0, $3226 = 0, $3227 = 0, $3228 = 0, $3229 = 0; + var $323 = 0, $3230 = 0, $3231 = 0, $3232 = 0, $3233 = 0, $3234 = 0, $3235 = 0, $3236 = 0, $3237 = 0, $3238 = 0, $3239 = 0, $324 = 0, $3240 = 0, $3241 = 0, $3242 = 0, $3243 = 0, $3244 = 0, $3245 = 0, $3246 = 0, $3247 = 0; + var $3248 = 0, $3249 = 0, $325 = 0, $3250 = 0, $3251 = 0, $3252 = 0, $3253 = 0, $3254 = 0, $3255 = 0, $3256 = 0, $3257 = 0, $3258 = 0, $3259 = 0, $326 = 0, $3260 = 0, $3261 = 0, $3262 = 0, $3263 = 0, $3264 = 0, $3265 = 0; + var $3266 = 0, $3267 = 0, $3268 = 0, $3269 = 0, $327 = 0, $3270 = 0, $3271 = 0, $3272 = 0, $3273 = 0, $3274 = 0, $3275 = 0, $3276 = 0, $3277 = 0, $3278 = 0, $3279 = 0, $328 = 0, $3280 = 0, $3281 = 0, $3282 = 0, $3283 = 0; + var $3284 = 0, $3285 = 0, $3286 = 0, $3287 = 0, $3288 = 0, $3289 = 0, $329 = 0, $3290 = 0, $3291 = 0, $3292 = 0, $3293 = 0, $3294 = 0, $3295 = 0, $3296 = 0, $3297 = 0, $3298 = 0, $3299 = 0, $33 = 0, $330 = 0, $3300 = 0; + var $3301 = 0, $3302 = 0, $3303 = 0, $3304 = 0, $3305 = 0, $3306 = 0, $3307 = 0, $3308 = 0, $3309 = 0, $331 = 0, $3310 = 0, $3311 = 0, $3312 = 0, $3313 = 0, $3314 = 0, $3315 = 0, $3316 = 0, $3317 = 0, $3318 = 0, $3319 = 0; + var $332 = 0, $3320 = 0, $3321 = 0, $3322 = 0, $3323 = 0, $3324 = 0, $3325 = 0, $3326 = 0, $3327 = 0, $3328 = 0, $3329 = 0, $333 = 0, $3330 = 0, $3331 = 0, $3332 = 0, $3333 = 0, $3334 = 0, $3335 = 0, $3336 = 0, $3337 = 0; + var $3338 = 0, $3339 = 0, $334 = 0, $3340 = 0, $3341 = 0, $3342 = 0, $3343 = 0, $3344 = 0, $3345 = 0, $3346 = 0, $3347 = 0, $3348 = 0, $3349 = 0, $335 = 0, $3350 = 0, $3351 = 0, $3352 = 0, $3353 = 0, $3354 = 0, $3355 = 0; + var $3356 = 0, $3357 = 0, $3358 = 0, $3359 = 0, $336 = 0, $3360 = 0, $3361 = 0, $3362 = 0, $3363 = 0, $3364 = 0, $3365 = 0, $3366 = 0, $3367 = 0, $3368 = 0, $3369 = 0, $337 = 0, $3370 = 0, $3371 = 0, $3372 = 0, $3373 = 0; + var $3374 = 0, $3375 = 0, $3376 = 0, $3377 = 0, $3378 = 0, $3379 = 0, $338 = 0, $3380 = 0, $3381 = 0, $3382 = 0, $3383 = 0, $3384 = 0, $3385 = 0, $3386 = 0, $3387 = 0, $3388 = 0, $3389 = 0, $339 = 0, $3390 = 0, $3391 = 0; + var $3392 = 0, $3393 = 0, $3394 = 0, $3395 = 0, $3396 = 0, $3397 = 0, $3398 = 0, $3399 = 0, $34 = 0, $340 = 0, $3400 = 0, $3401 = 0, $3402 = 0, $3403 = 0, $3404 = 0, $3405 = 0, $3406 = 0, $3407 = 0, $3408 = 0, $3409 = 0; + var $341 = 0, $3410 = 0, $3411 = 0, $3412 = 0, $3413 = 0, $3414 = 0, $3415 = 0, $3416 = 0, $3417 = 0, $3418 = 0, $3419 = 0, $342 = 0, $3420 = 0, $3421 = 0, $3422 = 0, $3423 = 0, $3424 = 0, $3425 = 0, $3426 = 0, $3427 = 0; + var $3428 = 0, $3429 = 0, $343 = 0, $3430 = 0, $3431 = 0, $3432 = 0, $3433 = 0, $3434 = 0, $3435 = 0, $3436 = 0, $3437 = 0, $3438 = 0, $3439 = 0, $344 = 0, $3440 = 0, $3441 = 0, $3442 = 0, $3443 = 0, $3444 = 0, $3445 = 0; + var $3446 = 0, $3447 = 0, $3448 = 0, $3449 = 0, $345 = 0, $3450 = 0, $3451 = 0, $3452 = 0, $3453 = 0, $3454 = 0, $3455 = 0, $3456 = 0, $3457 = 0, $3458 = 0, $3459 = 0, $346 = 0, $3460 = 0, $3461 = 0, $3462 = 0, $3463 = 0; + var $3464 = 0, $3465 = 0, $3466 = 0, $3467 = 0, $3468 = 0, $3469 = 0, $347 = 0, $3470 = 0, $3471 = 0, $3472 = 0, $3473 = 0, $3474 = 0, $3475 = 0, $3476 = 0, $3477 = 0, $3478 = 0, $3479 = 0, $348 = 0, $3480 = 0, $3481 = 0; + var $3482 = 0, $3483 = 0, $3484 = 0, $3485 = 0, $3486 = 0, $3487 = 0, $3488 = 0, $3489 = 0, $349 = 0, $3490 = 0, $3491 = 0, $3492 = 0, $3493 = 0, $3494 = 0, $3495 = 0, $3496 = 0, $3497 = 0, $3498 = 0, $3499 = 0, $35 = 0; + var $350 = 0, $3500 = 0, $3501 = 0, $3502 = 0, $3503 = 0, $3504 = 0, $3505 = 0, $3506 = 0, $3507 = 0, $3508 = 0, $3509 = 0, $351 = 0, $3510 = 0, $3511 = 0, $3512 = 0, $3513 = 0, $3514 = 0, $3515 = 0, $3516 = 0, $3517 = 0; + var $3518 = 0, $3519 = 0, $352 = 0, $3520 = 0, $3521 = 0, $3522 = 0, $3523 = 0, $3524 = 0, $3525 = 0, $3526 = 0, $3527 = 0, $3528 = 0, $3529 = 0, $353 = 0, $3530 = 0, $3531 = 0, $3532 = 0, $3533 = 0, $3534 = 0, $3535 = 0; + var $3536 = 0, $3537 = 0, $3538 = 0, $3539 = 0, $354 = 0, $3540 = 0, $3541 = 0, $3542 = 0, $3543 = 0, $3544 = 0, $3545 = 0, $3546 = 0, $3547 = 0, $3548 = 0, $3549 = 0, $355 = 0, $3550 = 0, $3551 = 0, $3552 = 0, $3553 = 0; + var $3554 = 0, $3555 = 0, $3556 = 0, $3557 = 0, $3558 = 0, $3559 = 0, $356 = 0, $3560 = 0, $3561 = 0, $3562 = 0, $3563 = 0, $3564 = 0, $3565 = 0, $3566 = 0, $3567 = 0, $3568 = 0, $3569 = 0, $357 = 0, $3570 = 0, $3571 = 0; + var $3572 = 0, $3573 = 0, $3574 = 0, $3575 = 0, $3576 = 0, $3577 = 0, $3578 = 0, $3579 = 0, $358 = 0, $3580 = 0, $3581 = 0, $3582 = 0, $3583 = 0, $3584 = 0, $3585 = 0, $3586 = 0, $3587 = 0, $3588 = 0, $3589 = 0, $359 = 0; + var $3590 = 0, $3591 = 0, $3592 = 0, $3593 = 0, $3594 = 0, $3595 = 0, $3596 = 0, $3597 = 0, $3598 = 0, $3599 = 0, $36 = 0, $360 = 0, $3600 = 0, $3601 = 0, $3602 = 0, $3603 = 0, $3604 = 0, $3605 = 0, $3606 = 0, $3607 = 0; + var $3608 = 0, $3609 = 0, $361 = 0, $3610 = 0, $3611 = 0, $3612 = 0, $3613 = 0, $3614 = 0, $3615 = 0, $3616 = 0, $3617 = 0, $3618 = 0, $3619 = 0, $362 = 0, $3620 = 0, $3621 = 0, $3622 = 0, $3623 = 0, $3624 = 0, $3625 = 0; + var $3626 = 0, $3627 = 0, $3628 = 0, $3629 = 0, $363 = 0, $3630 = 0, $3631 = 0, $3632 = 0, $3633 = 0, $3634 = 0, $3635 = 0, $3636 = 0, $3637 = 0, $3638 = 0, $3639 = 0, $364 = 0, $3640 = 0, $3641 = 0, $3642 = 0, $3643 = 0; + var $3644 = 0, $3645 = 0, $3646 = 0, $3647 = 0, $3648 = 0, $3649 = 0, $365 = 0, $3650 = 0, $3651 = 0, $3652 = 0, $3653 = 0, $3654 = 0, $3655 = 0, $3656 = 0, $3657 = 0, $3658 = 0, $3659 = 0, $366 = 0, $3660 = 0, $3661 = 0; + var $3662 = 0, $3663 = 0, $3664 = 0, $3665 = 0, $3666 = 0, $3667 = 0, $3668 = 0, $3669 = 0, $367 = 0, $3670 = 0, $3671 = 0, $3672 = 0, $3673 = 0, $3674 = 0, $3675 = 0, $3676 = 0, $3677 = 0, $3678 = 0, $3679 = 0, $368 = 0; + var $3680 = 0, $3681 = 0, $3682 = 0, $3683 = 0, $3684 = 0, $3685 = 0, $3686 = 0, $3687 = 0, $3688 = 0, $3689 = 0, $369 = 0, $3690 = 0, $3691 = 0, $3692 = 0, $3693 = 0, $3694 = 0, $3695 = 0, $3696 = 0, $3697 = 0, $3698 = 0; + var $3699 = 0, $37 = 0, $370 = 0, $3700 = 0, $3701 = 0, $3702 = 0, $3703 = 0, $3704 = 0, $3705 = 0, $3706 = 0, $3707 = 0, $3708 = 0, $3709 = 0, $371 = 0, $3710 = 0, $3711 = 0, $3712 = 0, $3713 = 0, $3714 = 0, $3715 = 0; + var $3716 = 0, $3717 = 0, $3718 = 0, $3719 = 0, $372 = 0, $3720 = 0, $3721 = 0, $3722 = 0, $3723 = 0, $3724 = 0, $3725 = 0, $3726 = 0, $3727 = 0, $3728 = 0, $3729 = 0, $373 = 0, $3730 = 0, $3731 = 0, $3732 = 0, $3733 = 0; + var $3734 = 0, $3735 = 0, $3736 = 0, $3737 = 0, $3738 = 0, $3739 = 0, $374 = 0, $3740 = 0, $3741 = 0, $3742 = 0, $3743 = 0, $3744 = 0, $3745 = 0, $3746 = 0, $3747 = 0, $3748 = 0, $3749 = 0, $375 = 0, $3750 = 0, $3751 = 0; + var $3752 = 0, $3753 = 0, $3754 = 0, $3755 = 0, $3756 = 0, $3757 = 0, $3758 = 0, $3759 = 0, $376 = 0, $3760 = 0, $3761 = 0, $3762 = 0, $3763 = 0, $3764 = 0, $3765 = 0, $3766 = 0, $3767 = 0, $3768 = 0, $3769 = 0, $377 = 0; + var $3770 = 0, $3771 = 0, $3772 = 0, $3773 = 0, $3774 = 0, $3775 = 0, $3776 = 0, $3777 = 0, $3778 = 0, $3779 = 0, $378 = 0, $3780 = 0, $3781 = 0, $3782 = 0, $3783 = 0, $3784 = 0, $3785 = 0, $3786 = 0, $3787 = 0, $3788 = 0; + var $3789 = 0, $379 = 0, $3790 = 0, $3791 = 0, $3792 = 0, $3793 = 0, $3794 = 0, $3795 = 0, $3796 = 0, $3797 = 0, $3798 = 0, $3799 = 0, $38 = 0, $380 = 0, $3800 = 0, $3801 = 0, $3802 = 0, $3803 = 0, $3804 = 0, $3805 = 0; + var $3806 = 0, $3807 = 0, $3808 = 0, $3809 = 0, $381 = 0, $3810 = 0, $3811 = 0, $3812 = 0, $3813 = 0, $3814 = 0, $3815 = 0, $3816 = 0, $3817 = 0, $3818 = 0, $3819 = 0, $382 = 0, $3820 = 0, $3821 = 0, $3822 = 0, $3823 = 0; + var $3824 = 0, $3825 = 0, $3826 = 0, $3827 = 0, $3828 = 0, $3829 = 0, $383 = 0, $3830 = 0, $3831 = 0, $3832 = 0, $3833 = 0, $3834 = 0, $3835 = 0, $3836 = 0, $3837 = 0, $3838 = 0, $3839 = 0, $384 = 0, $3840 = 0, $3841 = 0; + var $3842 = 0, $3843 = 0, $3844 = 0, $3845 = 0, $3846 = 0, $3847 = 0, $3848 = 0, $3849 = 0, $385 = 0, $3850 = 0, $3851 = 0, $3852 = 0, $3853 = 0, $3854 = 0, $3855 = 0, $3856 = 0, $3857 = 0, $3858 = 0, $3859 = 0, $386 = 0; + var $3860 = 0, $3861 = 0, $3862 = 0, $3863 = 0, $3864 = 0, $3865 = 0.0, $3866 = 0, $3867 = 0, $3868 = 0, $3869 = 0, $387 = 0, $3870 = 0, $3871 = 0, $3872 = 0.0, $3873 = 0, $3874 = 0, $3875 = 0, $3876 = 0, $3877 = 0, $3878 = 0; + var $3879 = 0, $388 = 0, $3880 = 0, $3881 = 0.0, $3882 = 0, $3883 = 0, $3884 = 0, $3885 = 0, $3886 = 0, $3887 = 0, $3888 = 0.0, $3889 = 0, $389 = 0, $3890 = 0, $3891 = 0, $3892 = 0, $3893 = 0, $3894 = 0, $3895 = 0, $3896 = 0; + var $3897 = 0, $3898 = 0, $3899 = 0, $39 = 0, $390 = 0, $3900 = 0, $3901 = 0, $3902 = 0, $3903 = 0, $3904 = 0, $3905 = 0, $3906 = 0, $3907 = 0, $3908 = 0, $3909 = 0, $391 = 0, $3910 = 0, $3911 = 0, $3912 = 0, $3913 = 0; + var $3914 = 0, $3915 = 0, $3916 = 0, $3917 = 0, $3918 = 0, $3919 = 0, $392 = 0, $3920 = 0, $3921 = 0, $3922 = 0, $3923 = 0, $3924 = 0, $3925 = 0, $3926 = 0, $3927 = 0, $3928 = 0, $3929 = 0, $393 = 0, $3930 = 0, $3931 = 0; + var $3932 = 0, $3933 = 0, $3934 = 0, $3935 = 0, $3936 = 0, $3937 = 0, $3938 = 0, $3939 = 0, $394 = 0, $3940 = 0, $3941 = 0, $3942 = 0, $3943 = 0, $3944 = 0, $3945 = 0, $3946 = 0, $3947 = 0, $3948 = 0, $3949 = 0, $395 = 0; + var $3950 = 0, $3951 = 0, $3952 = 0, $3953 = 0, $3954 = 0, $3955 = 0, $3956 = 0, $3957 = 0, $3958 = 0, $3959 = 0, $396 = 0, $3960 = 0, $3961 = 0, $3962 = 0, $3963 = 0, $3964 = 0, $3965 = 0, $3966 = 0, $3967 = 0, $3968 = 0; + var $3969 = 0, $397 = 0, $3970 = 0, $3971 = 0, $3972 = 0, $3973 = 0, $3974 = 0, $3975 = 0, $3976 = 0, $3977 = 0, $3978 = 0, $3979 = 0, $398 = 0, $3980 = 0, $3981 = 0, $3982 = 0, $3983 = 0, $3984 = 0, $3985 = 0, $3986 = 0; + var $3987 = 0, $3988 = 0, $3989 = 0, $399 = 0, $3990 = 0, $3991 = 0, $3992 = 0, $3993 = 0, $3994 = 0, $3995 = 0, $3996 = 0, $3997 = 0, $3998 = 0, $3999 = 0, $4 = 0, $40 = 0, $400 = 0, $4000 = 0, $4001 = 0, $4002 = 0; + var $4003 = 0, $4004 = 0, $4005 = 0, $4006 = 0, $4007 = 0, $4008 = 0, $4009 = 0, $401 = 0, $4010 = 0, $4011 = 0, $4012 = 0, $4013 = 0, $4014 = 0, $4015 = 0, $4016 = 0, $4017 = 0, $4018 = 0, $4019 = 0, $402 = 0, $4020 = 0; + var $4021 = 0, $4022 = 0, $4023 = 0, $4024 = 0, $4025 = 0, $4026 = 0, $4027 = 0, $4028 = 0, $4029 = 0, $403 = 0, $4030 = 0, $4031 = 0, $4032 = 0, $4033 = 0, $4034 = 0, $4035 = 0, $4036 = 0, $4037 = 0, $4038 = 0, $4039 = 0; + var $404 = 0, $4040 = 0, $4041 = 0, $4042 = 0, $4043 = 0, $4044 = 0, $4045 = 0, $4046 = 0, $4047 = 0, $4048 = 0, $4049 = 0, $405 = 0, $4050 = 0, $4051 = 0, $4052 = 0, $4053 = 0, $4054 = 0, $4055 = 0, $4056 = 0, $4057 = 0; + var $4058 = 0, $4059 = 0, $406 = 0, $4060 = 0, $4061 = 0, $4062 = 0, $4063 = 0, $4064 = 0, $4065 = 0, $4066 = 0, $4067 = 0, $4068 = 0, $4069 = 0, $407 = 0, $4070 = 0, $4071 = 0, $4072 = 0, $4073 = 0, $4074 = 0, $4075 = 0; + var $4076 = 0, $4077 = 0, $4078 = 0, $4079 = 0, $408 = 0, $4080 = 0, $4081 = 0, $4082 = 0, $4083 = 0, $4084 = 0, $4085 = 0, $4086 = 0, $4087 = 0, $4088 = 0, $4089 = 0, $409 = 0, $4090 = 0, $4091 = 0, $4092 = 0, $4093 = 0; + var $4094 = 0, $4095 = 0, $4096 = 0, $4097 = 0, $4098 = 0, $4099 = 0, $41 = 0, $410 = 0, $4100 = 0, $4101 = 0, $4102 = 0, $4103 = 0, $4104 = 0, $4105 = 0, $4106 = 0, $4107 = 0, $4108 = 0, $4109 = 0, $411 = 0, $4110 = 0; + var $4111 = 0, $4112 = 0, $4113 = 0, $4114 = 0, $4115 = 0, $4116 = 0, $4117 = 0, $4118 = 0, $4119 = 0, $412 = 0, $4120 = 0, $4121 = 0, $4122 = 0, $4123 = 0, $4124 = 0, $4125 = 0, $4126 = 0, $4127 = 0, $4128 = 0, $4129 = 0; + var $413 = 0, $4130 = 0, $4131 = 0, $4132 = 0, $4133 = 0, $4134 = 0, $4135 = 0, $4136 = 0, $4137 = 0, $4138 = 0, $4139 = 0, $414 = 0, $4140 = 0, $4141 = 0, $4142 = 0, $4143 = 0, $4144 = 0, $4145 = 0, $4146 = 0, $4147 = 0; + var $4148 = 0, $4149 = 0, $415 = 0, $4150 = 0, $4151 = 0, $4152 = 0, $4153 = 0, $4154 = 0, $4155 = 0, $4156 = 0, $4157 = 0, $4158 = 0, $4159 = 0, $416 = 0.0, $4160 = 0, $4161 = 0, $4162 = 0, $4163 = 0, $4164 = 0, $4165 = 0; + var $4166 = 0, $4167 = 0, $4168 = 0, $4169 = 0, $417 = 0, $4170 = 0, $4171 = 0, $4172 = 0, $4173 = 0, $4174 = 0, $4175 = 0, $4176 = 0, $4177 = 0, $4178 = 0, $4179 = 0, $418 = 0, $4180 = 0, $4181 = 0, $4182 = 0, $4183 = 0; + var $4184 = 0, $4185 = 0, $4186 = 0, $4187 = 0, $4188 = 0, $4189 = 0, $419 = 0, $4190 = 0, $4191 = 0, $4192 = 0, $4193 = 0, $4194 = 0, $4195 = 0, $4196 = 0, $4197 = 0, $4198 = 0, $4199 = 0, $42 = 0, $420 = 0, $4200 = 0; + var $4201 = 0, $4202 = 0, $4203 = 0, $4204 = 0, $4205 = 0, $4206 = 0, $4207 = 0, $4208 = 0, $4209 = 0, $421 = 0, $4210 = 0, $4211 = 0, $4212 = 0, $4213 = 0, $4214 = 0, $4215 = 0, $4216 = 0, $4217 = 0, $4218 = 0, $4219 = 0; + var $422 = 0, $4220 = 0, $4221 = 0, $4222 = 0, $4223 = 0, $4224 = 0, $4225 = 0, $4226 = 0, $4227 = 0, $4228 = 0, $4229 = 0, $423 = 0, $4230 = 0, $4231 = 0, $4232 = 0, $4233 = 0, $4234 = 0, $4235 = 0, $4236 = 0, $4237 = 0; + var $4238 = 0, $4239 = 0, $424 = 0, $4240 = 0, $4241 = 0, $4242 = 0, $4243 = 0, $4244 = 0, $4245 = 0, $4246 = 0, $4247 = 0, $4248 = 0, $4249 = 0, $425 = 0, $4250 = 0, $4251 = 0, $4252 = 0, $4253 = 0, $4254 = 0, $4255 = 0; + var $4256 = 0, $4257 = 0, $4258 = 0, $4259 = 0, $426 = 0, $4260 = 0, $4261 = 0, $4262 = 0, $4263 = 0, $4264 = 0, $4265 = 0, $4266 = 0, $4267 = 0, $4268 = 0, $4269 = 0, $427 = 0, $4270 = 0, $4271 = 0, $4272 = 0, $4273 = 0; + var $4274 = 0, $4275 = 0, $4276 = 0, $4277 = 0, $4278 = 0, $4279 = 0, $428 = 0, $4280 = 0, $4281 = 0, $4282 = 0, $4283 = 0, $4284 = 0, $4285 = 0, $4286 = 0, $4287 = 0, $4288 = 0, $4289 = 0, $429 = 0, $4290 = 0, $4291 = 0; + var $4292 = 0, $4293 = 0, $4294 = 0, $4295 = 0, $4296 = 0, $4297 = 0, $4298 = 0, $4299 = 0, $43 = 0, $430 = 0, $4300 = 0, $4301 = 0, $4302 = 0, $4303 = 0, $4304 = 0, $4305 = 0, $4306 = 0, $4307 = 0, $4308 = 0, $4309 = 0; + var $431 = 0, $4310 = 0, $4311 = 0, $4312 = 0, $4313 = 0, $4314 = 0, $4315 = 0, $4316 = 0, $4317 = 0, $4318 = 0, $4319 = 0, $432 = 0, $4320 = 0, $4321 = 0, $4322 = 0, $4323 = 0, $4324 = 0, $4325 = 0, $4326 = 0, $4327 = 0; + var $4328 = 0, $4329 = 0, $433 = 0, $4330 = 0, $4331 = 0, $4332 = 0, $4333 = 0, $4334 = 0, $4335 = 0, $4336 = 0, $4337 = 0, $4338 = 0, $4339 = 0, $434 = 0, $4340 = 0, $4341 = 0, $4342 = 0, $4343 = 0, $4344 = 0, $4345 = 0; + var $4346 = 0, $4347 = 0, $4348 = 0, $4349 = 0, $435 = 0, $4350 = 0, $4351 = 0, $4352 = 0, $4353 = 0, $4354 = 0, $4355 = 0, $4356 = 0, $4357 = 0, $4358 = 0, $4359 = 0, $436 = 0, $4360 = 0, $4361 = 0, $4362 = 0, $4363 = 0; + var $4364 = 0, $4365 = 0, $4366 = 0, $4367 = 0, $4368 = 0, $4369 = 0, $437 = 0, $4370 = 0, $4371 = 0, $4372 = 0, $4373 = 0, $4374 = 0, $4375 = 0, $4376 = 0, $4377 = 0, $4378 = 0, $4379 = 0, $438 = 0, $4380 = 0, $4381 = 0; + var $4382 = 0, $4383 = 0, $4384 = 0, $4385 = 0, $4386 = 0, $4387 = 0, $4388 = 0, $4389 = 0, $439 = 0, $4390 = 0, $4391 = 0, $4392 = 0, $4393 = 0, $4394 = 0, $4395 = 0, $4396 = 0, $4397 = 0, $4398 = 0, $4399 = 0, $44 = 0; + var $440 = 0, $4400 = 0, $4401 = 0, $4402 = 0, $4403 = 0, $4404 = 0, $4405 = 0, $4406 = 0, $4407 = 0, $4408 = 0, $4409 = 0, $441 = 0, $4410 = 0, $4411 = 0, $4412 = 0, $4413 = 0, $4414 = 0, $4415 = 0, $4416 = 0, $4417 = 0; + var $4418 = 0, $4419 = 0, $442 = 0, $4420 = 0, $4421 = 0, $4422 = 0, $4423 = 0, $4424 = 0, $4425 = 0, $4426 = 0, $4427 = 0, $4428 = 0, $4429 = 0, $443 = 0, $4430 = 0, $4431 = 0, $4432 = 0, $4433 = 0, $4434 = 0, $4435 = 0; + var $4436 = 0, $4437 = 0, $4438 = 0, $4439 = 0, $444 = 0, $4440 = 0, $4441 = 0, $4442 = 0, $4443 = 0, $4444 = 0, $4445 = 0, $4446 = 0, $4447 = 0, $4448 = 0, $4449 = 0, $445 = 0, $4450 = 0, $4451 = 0, $4452 = 0, $4453 = 0; + var $4454 = 0, $4455 = 0, $4456 = 0, $4457 = 0, $4458 = 0, $4459 = 0, $446 = 0, $4460 = 0, $4461 = 0, $4462 = 0, $4463 = 0, $4464 = 0, $4465 = 0, $4466 = 0, $4467 = 0, $4468 = 0, $4469 = 0, $447 = 0, $4470 = 0, $4471 = 0; + var $4472 = 0, $4473 = 0, $4474 = 0, $4475 = 0, $4476 = 0, $4477 = 0, $4478 = 0, $4479 = 0, $448 = 0, $4480 = 0, $4481 = 0, $4482 = 0, $4483 = 0, $4484 = 0, $4485 = 0, $4486 = 0, $4487 = 0, $4488 = 0, $4489 = 0, $449 = 0; + var $4490 = 0, $4491 = 0, $4492 = 0, $4493 = 0, $4494 = 0, $4495 = 0, $4496 = 0, $4497 = 0, $4498 = 0, $4499 = 0, $45 = 0, $450 = 0, $4500 = 0, $4501 = 0, $4502 = 0, $4503 = 0, $4504 = 0, $4505 = 0, $4506 = 0, $4507 = 0; + var $4508 = 0, $4509 = 0, $451 = 0, $4510 = 0, $4511 = 0, $4512 = 0, $4513 = 0, $4514 = 0, $4515 = 0, $4516 = 0, $4517 = 0, $4518 = 0, $4519 = 0, $452 = 0, $4520 = 0, $4521 = 0, $4522 = 0, $4523 = 0, $4524 = 0, $4525 = 0; + var $4526 = 0, $4527 = 0, $4528 = 0, $4529 = 0, $453 = 0, $4530 = 0, $4531 = 0, $4532 = 0, $4533 = 0, $4534 = 0, $4535 = 0, $4536 = 0, $4537 = 0, $4538 = 0, $4539 = 0, $454 = 0, $4540 = 0, $4541 = 0, $4542 = 0, $4543 = 0; + var $4544 = 0, $4545 = 0, $4546 = 0, $4547 = 0, $4548 = 0, $4549 = 0, $455 = 0, $4550 = 0, $4551 = 0, $4552 = 0, $4553 = 0, $4554 = 0, $4555 = 0, $4556 = 0, $4557 = 0, $4558 = 0, $4559 = 0, $456 = 0, $4560 = 0, $4561 = 0; + var $4562 = 0, $4563 = 0, $4564 = 0, $4565 = 0, $4566 = 0, $4567 = 0, $4568 = 0, $4569 = 0, $457 = 0, $4570 = 0, $4571 = 0, $4572 = 0, $4573 = 0, $4574 = 0, $4575 = 0, $4576 = 0, $4577 = 0, $4578 = 0, $4579 = 0, $458 = 0; + var $4580 = 0, $4581 = 0, $4582 = 0, $4583 = 0, $4584 = 0, $4585 = 0, $4586 = 0, $4587 = 0, $4588 = 0, $4589 = 0, $459 = 0, $4590 = 0, $4591 = 0, $4592 = 0, $4593 = 0, $4594 = 0, $4595 = 0, $4596 = 0, $4597 = 0, $4598 = 0; + var $4599 = 0, $46 = 0, $460 = 0, $4600 = 0, $4601 = 0, $4602 = 0, $4603 = 0, $4604 = 0, $4605 = 0, $4606 = 0, $4607 = 0, $4608 = 0, $4609 = 0, $461 = 0, $4610 = 0, $4611 = 0, $4612 = 0, $4613 = 0, $4614 = 0, $4615 = 0; + var $4616 = 0, $4617 = 0, $4618 = 0, $4619 = 0, $462 = 0, $4620 = 0, $4621 = 0, $4622 = 0, $4623 = 0, $4624 = 0, $4625 = 0, $4626 = 0, $4627 = 0, $4628 = 0, $4629 = 0, $463 = 0, $4630 = 0, $4631 = 0, $4632 = 0, $4633 = 0; + var $4634 = 0, $4635 = 0, $4636 = 0, $4637 = 0, $4638 = 0, $4639 = 0, $464 = 0, $4640 = 0, $4641 = 0, $4642 = 0, $4643 = 0, $4644 = 0, $4645 = 0, $4646 = 0, $4647 = 0, $4648 = 0, $4649 = 0, $465 = 0, $4650 = 0, $4651 = 0; + var $4652 = 0, $4653 = 0, $4654 = 0, $4655 = 0, $4656 = 0, $4657 = 0, $4658 = 0, $4659 = 0, $466 = 0, $4660 = 0, $4661 = 0, $4662 = 0, $4663 = 0, $4664 = 0, $4665 = 0, $4666 = 0, $4667 = 0, $4668 = 0, $4669 = 0, $467 = 0; + var $4670 = 0, $4671 = 0, $4672 = 0, $4673 = 0, $4674 = 0, $4675 = 0, $4676 = 0, $4677 = 0, $4678 = 0, $4679 = 0, $468 = 0, $4680 = 0, $4681 = 0, $4682 = 0, $4683 = 0, $4684 = 0, $4685 = 0, $4686 = 0, $4687 = 0, $4688 = 0; + var $4689 = 0, $469 = 0, $4690 = 0, $4691 = 0, $4692 = 0, $4693 = 0, $4694 = 0, $4695 = 0, $4696 = 0, $4697 = 0, $4698 = 0, $4699 = 0, $47 = 0, $470 = 0, $4700 = 0, $4701 = 0, $4702 = 0, $4703 = 0, $4704 = 0, $4705 = 0; + var $4706 = 0, $4707 = 0, $4708 = 0, $4709 = 0, $471 = 0, $4710 = 0, $4711 = 0, $4712 = 0, $4713 = 0, $4714 = 0, $4715 = 0, $4716 = 0, $4717 = 0, $4718 = 0, $4719 = 0, $472 = 0, $4720 = 0, $4721 = 0, $4722 = 0, $4723 = 0; + var $4724 = 0, $4725 = 0, $4726 = 0, $4727 = 0, $4728 = 0, $4729 = 0, $473 = 0, $4730 = 0, $4731 = 0, $4732 = 0, $4733 = 0, $4734 = 0, $4735 = 0, $4736 = 0, $4737 = 0, $4738 = 0, $4739 = 0, $474 = 0, $4740 = 0, $4741 = 0; + var $4742 = 0, $4743 = 0, $4744 = 0, $4745 = 0, $4746 = 0, $4747 = 0, $4748 = 0, $4749 = 0, $475 = 0, $4750 = 0, $4751 = 0, $4752 = 0, $4753 = 0, $4754 = 0, $4755 = 0, $4756 = 0, $4757 = 0, $4758 = 0, $4759 = 0, $476 = 0; + var $4760 = 0, $4761 = 0, $4762 = 0, $4763 = 0, $4764 = 0, $4765 = 0, $4766 = 0, $4767 = 0, $4768 = 0, $4769 = 0, $477 = 0, $4770 = 0, $4771 = 0, $4772 = 0, $4773 = 0, $4774 = 0, $4775 = 0, $4776 = 0, $4777 = 0, $4778 = 0; + var $4779 = 0, $478 = 0, $4780 = 0, $4781 = 0, $4782 = 0, $4783 = 0, $4784 = 0, $4785 = 0, $4786 = 0, $4787 = 0, $4788 = 0, $4789 = 0, $479 = 0, $4790 = 0, $4791 = 0, $4792 = 0, $4793 = 0, $4794 = 0, $4795 = 0, $4796 = 0; + var $4797 = 0, $4798 = 0, $4799 = 0, $48 = 0, $480 = 0, $4800 = 0, $4801 = 0, $4802 = 0, $4803 = 0, $4804 = 0, $4805 = 0, $4806 = 0, $4807 = 0, $4808 = 0, $4809 = 0, $481 = 0, $4810 = 0, $4811 = 0, $4812 = 0, $4813 = 0; + var $4814 = 0, $4815 = 0, $4816 = 0, $4817 = 0, $4818 = 0, $4819 = 0, $482 = 0, $4820 = 0, $4821 = 0, $4822 = 0, $4823 = 0, $4824 = 0, $4825 = 0, $4826 = 0, $4827 = 0, $4828 = 0, $4829 = 0, $483 = 0, $4830 = 0, $4831 = 0; + var $4832 = 0, $4833 = 0, $4834 = 0, $4835 = 0, $4836 = 0, $4837 = 0, $4838 = 0, $4839 = 0, $484 = 0, $4840 = 0, $4841 = 0, $4842 = 0, $4843 = 0, $4844 = 0, $4845 = 0, $4846 = 0, $4847 = 0, $4848 = 0, $4849 = 0, $485 = 0; + var $4850 = 0, $4851 = 0, $4852 = 0, $4853 = 0, $4854 = 0, $4855 = 0, $4856 = 0, $4857 = 0, $4858 = 0, $4859 = 0, $486 = 0, $4860 = 0, $4861 = 0, $4862 = 0, $4863 = 0, $4864 = 0, $4865 = 0, $4866 = 0, $4867 = 0, $4868 = 0; + var $4869 = 0, $487 = 0, $4870 = 0, $4871 = 0, $4872 = 0, $4873 = 0, $4874 = 0, $4875 = 0, $4876 = 0, $4877 = 0, $4878 = 0, $4879 = 0, $488 = 0, $4880 = 0, $4881 = 0, $4882 = 0, $4883 = 0, $4884 = 0, $4885 = 0, $4886 = 0; + var $4887 = 0, $4888 = 0, $4889 = 0, $489 = 0, $4890 = 0, $4891 = 0, $4892 = 0, $4893 = 0, $4894 = 0, $4895 = 0, $4896 = 0, $4897 = 0, $4898 = 0, $4899 = 0, $49 = 0, $490 = 0, $4900 = 0, $4901 = 0, $4902 = 0, $4903 = 0; + var $4904 = 0, $4905 = 0, $4906 = 0, $4907 = 0, $4908 = 0, $4909 = 0, $491 = 0, $4910 = 0, $4911 = 0, $4912 = 0, $4913 = 0, $4914 = 0, $4915 = 0, $4916 = 0, $4917 = 0, $4918 = 0, $4919 = 0, $492 = 0, $4920 = 0, $4921 = 0; + var $4922 = 0, $4923 = 0, $4924 = 0, $4925 = 0, $4926 = 0, $4927 = 0, $4928 = 0, $4929 = 0, $493 = 0, $4930 = 0, $4931 = 0, $4932 = 0, $4933 = 0, $4934 = 0, $4935 = 0, $4936 = 0, $4937 = 0, $4938 = 0, $4939 = 0, $494 = 0; + var $4940 = 0, $4941 = 0, $4942 = 0, $4943 = 0, $4944 = 0, $4945 = 0, $4946 = 0, $4947 = 0, $4948 = 0, $4949 = 0, $495 = 0, $4950 = 0, $4951 = 0, $4952 = 0, $4953 = 0, $4954 = 0, $4955 = 0, $4956 = 0, $4957 = 0, $4958 = 0; + var $4959 = 0, $496 = 0, $4960 = 0, $4961 = 0, $4962 = 0, $4963 = 0, $4964 = 0, $4965 = 0, $4966 = 0, $4967 = 0, $4968 = 0, $4969 = 0, $497 = 0, $4970 = 0, $4971 = 0, $4972 = 0, $4973 = 0, $4974 = 0, $4975 = 0, $4976 = 0; + var $4977 = 0, $4978 = 0, $4979 = 0, $498 = 0, $4980 = 0, $4981 = 0, $4982 = 0, $4983 = 0, $4984 = 0, $4985 = 0, $4986 = 0, $4987 = 0, $4988 = 0, $4989 = 0, $499 = 0, $4990 = 0, $4991 = 0, $4992 = 0, $4993 = 0, $4994 = 0; + var $4995 = 0, $4996 = 0, $4997 = 0, $4998 = 0, $4999 = 0, $5 = 0, $50 = 0, $500 = 0, $5000 = 0, $5001 = 0, $5002 = 0, $5003 = 0, $5004 = 0, $5005 = 0, $5006 = 0, $5007 = 0, $5008 = 0, $5009 = 0, $501 = 0, $5010 = 0; + var $5011 = 0, $5012 = 0, $5013 = 0, $5014 = 0, $5015 = 0, $5016 = 0, $5017 = 0, $5018 = 0, $5019 = 0, $502 = 0, $5020 = 0, $5021 = 0, $5022 = 0, $5023 = 0, $5024 = 0, $5025 = 0, $5026 = 0, $5027 = 0, $5028 = 0, $5029 = 0; + var $503 = 0, $5030 = 0, $5031 = 0, $5032 = 0, $5033 = 0, $5034 = 0, $5035 = 0, $5036 = 0, $5037 = 0, $5038 = 0, $5039 = 0, $504 = 0, $5040 = 0, $5041 = 0, $5042 = 0, $5043 = 0, $5044 = 0, $5045 = 0, $5046 = 0, $5047 = 0; + var $5048 = 0, $5049 = 0, $505 = 0, $5050 = 0, $5051 = 0, $5052 = 0, $5053 = 0, $5054 = 0, $5055 = 0, $5056 = 0, $5057 = 0, $5058 = 0, $5059 = 0, $506 = 0, $5060 = 0, $5061 = 0, $5062 = 0, $5063 = 0, $5064 = 0, $5065 = 0; + var $5066 = 0, $5067 = 0, $5068 = 0, $5069 = 0, $507 = 0, $5070 = 0, $5071 = 0, $5072 = 0, $5073 = 0, $5074 = 0, $5075 = 0, $5076 = 0, $5077 = 0, $5078 = 0, $5079 = 0, $508 = 0, $5080 = 0, $5081 = 0, $5082 = 0, $5083 = 0; + var $5084 = 0, $5085 = 0, $5086 = 0, $5087 = 0, $5088 = 0, $5089 = 0, $509 = 0, $5090 = 0, $5091 = 0, $5092 = 0, $5093 = 0, $5094 = 0, $5095 = 0, $5096 = 0, $5097 = 0, $5098 = 0, $5099 = 0, $51 = 0, $510 = 0, $5100 = 0; + var $5101 = 0, $5102 = 0, $5103 = 0, $5104 = 0, $5105 = 0, $5106 = 0, $5107 = 0, $5108 = 0, $5109 = 0, $511 = 0, $5110 = 0, $5111 = 0, $5112 = 0, $5113 = 0, $5114 = 0, $5115 = 0, $5116 = 0, $5117 = 0, $5118 = 0, $5119 = 0; + var $512 = 0, $5120 = 0, $5121 = 0, $5122 = 0, $5123 = 0, $5124 = 0, $5125 = 0, $5126 = 0, $5127 = 0, $5128 = 0, $5129 = 0, $513 = 0, $5130 = 0, $5131 = 0, $5132 = 0, $5133 = 0, $5134 = 0, $5135 = 0, $5136 = 0, $5137 = 0; + var $5138 = 0, $5139 = 0, $514 = 0, $5140 = 0, $5141 = 0, $5142 = 0, $5143 = 0, $5144 = 0, $5145 = 0, $5146 = 0, $5147 = 0, $5148 = 0, $5149 = 0, $515 = 0, $5150 = 0, $5151 = 0, $5152 = 0, $5153 = 0, $5154 = 0, $5155 = 0; + var $5156 = 0, $5157 = 0, $5158 = 0, $5159 = 0, $516 = 0, $5160 = 0, $5161 = 0, $5162 = 0, $5163 = 0, $5164 = 0, $5165 = 0, $5166 = 0, $5167 = 0, $5168 = 0, $5169 = 0, $517 = 0, $5170 = 0, $5171 = 0, $5172 = 0, $5173 = 0; + var $5174 = 0, $5175 = 0, $5176 = 0, $5177 = 0, $5178 = 0, $5179 = 0, $518 = 0, $5180 = 0, $5181 = 0, $5182 = 0, $5183 = 0, $5184 = 0, $5185 = 0, $5186 = 0, $5187 = 0, $5188 = 0, $5189 = 0, $519 = 0, $5190 = 0, $5191 = 0; + var $5192 = 0, $5193 = 0, $5194 = 0, $5195 = 0, $5196 = 0, $5197 = 0, $5198 = 0, $5199 = 0, $52 = 0, $520 = 0, $5200 = 0, $5201 = 0, $5202 = 0, $5203 = 0, $5204 = 0, $5205 = 0, $5206 = 0, $5207 = 0, $5208 = 0, $5209 = 0; + var $521 = 0, $5210 = 0, $5211 = 0, $5212 = 0, $5213 = 0, $5214 = 0, $5215 = 0, $5216 = 0, $5217 = 0, $5218 = 0, $5219 = 0, $522 = 0, $5220 = 0, $5221 = 0, $5222 = 0, $5223 = 0, $5224 = 0, $5225 = 0, $5226 = 0, $5227 = 0; + var $5228 = 0, $5229 = 0, $523 = 0, $5230 = 0, $5231 = 0, $5232 = 0, $5233 = 0, $5234 = 0, $5235 = 0, $5236 = 0, $5237 = 0, $5238 = 0, $5239 = 0, $524 = 0, $5240 = 0, $5241 = 0, $5242 = 0, $5243 = 0, $5244 = 0, $5245 = 0; + var $5246 = 0, $5247 = 0, $5248 = 0, $5249 = 0, $525 = 0, $5250 = 0, $5251 = 0, $5252 = 0, $5253 = 0, $5254 = 0, $5255 = 0, $5256 = 0, $5257 = 0, $5258 = 0, $5259 = 0, $526 = 0, $5260 = 0, $5261 = 0, $5262 = 0, $5263 = 0; + var $5264 = 0, $5265 = 0, $5266 = 0, $5267 = 0, $5268 = 0, $5269 = 0, $527 = 0, $5270 = 0, $5271 = 0, $5272 = 0, $5273 = 0, $5274 = 0, $5275 = 0, $5276 = 0, $5277 = 0, $5278 = 0, $5279 = 0, $528 = 0, $5280 = 0, $5281 = 0; + var $5282 = 0, $5283 = 0, $5284 = 0, $5285 = 0, $5286 = 0, $5287 = 0, $5288 = 0, $5289 = 0, $529 = 0, $5290 = 0, $5291 = 0, $5292 = 0, $5293 = 0, $5294 = 0, $5295 = 0, $5296 = 0, $5297 = 0, $5298 = 0, $5299 = 0, $53 = 0; + var $530 = 0, $5300 = 0, $5301 = 0, $5302 = 0, $5303 = 0, $5304 = 0, $5305 = 0, $5306 = 0, $5307 = 0, $5308 = 0, $5309 = 0, $531 = 0, $5310 = 0, $5311 = 0, $5312 = 0, $5313 = 0, $5314 = 0, $5315 = 0, $5316 = 0, $5317 = 0; + var $5318 = 0, $5319 = 0, $532 = 0, $5320 = 0, $5321 = 0, $5322 = 0, $5323 = 0, $5324 = 0, $5325 = 0, $5326 = 0, $5327 = 0, $5328 = 0, $5329 = 0, $533 = 0, $5330 = 0, $5331 = 0, $5332 = 0, $5333 = 0, $5334 = 0, $5335 = 0; + var $5336 = 0, $5337 = 0, $5338 = 0, $5339 = 0, $534 = 0, $5340 = 0, $5341 = 0, $5342 = 0, $5343 = 0, $5344 = 0, $5345 = 0, $5346 = 0, $5347 = 0, $5348 = 0, $5349 = 0, $535 = 0, $5350 = 0, $5351 = 0, $5352 = 0, $5353 = 0; + var $5354 = 0, $5355 = 0, $5356 = 0, $5357 = 0, $5358 = 0, $5359 = 0, $536 = 0, $5360 = 0, $5361 = 0, $5362 = 0, $5363 = 0, $5364 = 0, $5365 = 0, $5366 = 0, $5367 = 0, $5368 = 0, $5369 = 0, $537 = 0, $5370 = 0, $5371 = 0; + var $5372 = 0, $5373 = 0, $5374 = 0, $5375 = 0, $5376 = 0, $5377 = 0, $5378 = 0, $5379 = 0, $538 = 0, $5380 = 0, $5381 = 0, $5382 = 0, $5383 = 0, $5384 = 0, $5385 = 0, $5386 = 0, $5387 = 0, $5388 = 0, $5389 = 0, $539 = 0; + var $5390 = 0, $5391 = 0, $5392 = 0, $5393 = 0, $5394 = 0, $5395 = 0, $5396 = 0, $5397 = 0, $5398 = 0, $5399 = 0, $54 = 0, $540 = 0, $5400 = 0, $5401 = 0, $5402 = 0, $5403 = 0, $5404 = 0, $5405 = 0, $5406 = 0, $5407 = 0; + var $5408 = 0, $5409 = 0, $541 = 0, $5410 = 0, $5411 = 0, $5412 = 0, $5413 = 0, $5414 = 0, $5415 = 0, $5416 = 0, $5417 = 0, $5418 = 0, $5419 = 0, $542 = 0, $5420 = 0, $5421 = 0, $5422 = 0, $5423 = 0, $5424 = 0, $5425 = 0; + var $5426 = 0, $5427 = 0, $5428 = 0, $5429 = 0, $543 = 0, $5430 = 0, $5431 = 0, $5432 = 0, $5433 = 0, $5434 = 0, $5435 = 0, $5436 = 0, $5437 = 0, $5438 = 0, $5439 = 0, $544 = 0, $5440 = 0, $5441 = 0, $5442 = 0, $5443 = 0; + var $5444 = 0, $5445 = 0, $5446 = 0, $5447 = 0, $5448 = 0, $5449 = 0, $545 = 0, $5450 = 0, $5451 = 0, $5452 = 0, $5453 = 0, $5454 = 0, $5455 = 0, $5456 = 0, $5457 = 0, $5458 = 0, $5459 = 0, $546 = 0, $5460 = 0, $5461 = 0; + var $5462 = 0, $5463 = 0, $5464 = 0, $5465 = 0, $5466 = 0, $5467 = 0, $5468 = 0, $5469 = 0, $547 = 0, $5470 = 0, $5471 = 0, $5472 = 0, $5473 = 0, $5474 = 0, $5475 = 0, $5476 = 0, $5477 = 0, $5478 = 0, $5479 = 0, $548 = 0; + var $5480 = 0, $5481 = 0, $5482 = 0, $5483 = 0, $5484 = 0, $5485 = 0, $5486 = 0, $5487 = 0, $5488 = 0, $5489 = 0, $549 = 0, $5490 = 0, $5491 = 0, $5492 = 0, $5493 = 0, $5494 = 0, $5495 = 0, $5496 = 0, $5497 = 0, $5498 = 0; + var $5499 = 0, $55 = 0, $550 = 0, $5500 = 0, $5501 = 0, $5502 = 0, $5503 = 0, $5504 = 0, $5505 = 0, $5506 = 0, $5507 = 0, $5508 = 0, $5509 = 0, $551 = 0, $5510 = 0, $5511 = 0, $5512 = 0, $5513 = 0, $5514 = 0, $5515 = 0; + var $5516 = 0, $5517 = 0, $5518 = 0, $5519 = 0, $552 = 0, $5520 = 0, $5521 = 0, $5522 = 0, $5523 = 0, $5524 = 0, $5525 = 0, $5526 = 0, $5527 = 0, $5528 = 0, $5529 = 0, $553 = 0, $5530 = 0, $5531 = 0, $5532 = 0, $5533 = 0; + var $5534 = 0, $5535 = 0, $5536 = 0, $5537 = 0, $5538 = 0, $5539 = 0, $554 = 0, $5540 = 0, $5541 = 0, $5542 = 0, $5543 = 0, $5544 = 0, $5545 = 0, $5546 = 0, $5547 = 0, $5548 = 0, $5549 = 0, $555 = 0, $5550 = 0, $5551 = 0; + var $5552 = 0, $5553 = 0, $5554 = 0, $5555 = 0, $5556 = 0, $5557 = 0, $5558 = 0, $5559 = 0, $556 = 0, $5560 = 0, $5561 = 0, $5562 = 0, $5563 = 0, $5564 = 0, $5565 = 0, $5566 = 0, $5567 = 0, $5568 = 0, $5569 = 0, $557 = 0; + var $5570 = 0, $5571 = 0, $5572 = 0, $5573 = 0, $5574 = 0, $5575 = 0, $5576 = 0, $5577 = 0, $5578 = 0, $5579 = 0, $558 = 0, $5580 = 0, $5581 = 0, $5582 = 0, $5583 = 0, $5584 = 0, $5585 = 0, $5586 = 0, $5587 = 0, $5588 = 0; + var $5589 = 0, $559 = 0, $5590 = 0, $5591 = 0, $5592 = 0, $5593 = 0, $5594 = 0, $5595 = 0, $5596 = 0, $5597 = 0, $5598 = 0, $5599 = 0, $56 = 0, $560 = 0, $5600 = 0, $5601 = 0, $5602 = 0, $5603 = 0, $5604 = 0, $5605 = 0; + var $5606 = 0, $5607 = 0, $5608 = 0, $5609 = 0, $561 = 0, $5610 = 0, $5611 = 0, $5612 = 0, $5613 = 0, $5614 = 0, $5615 = 0, $5616 = 0, $5617 = 0, $5618 = 0, $5619 = 0, $562 = 0, $5620 = 0, $5621 = 0, $5622 = 0, $5623 = 0; + var $5624 = 0, $5625 = 0, $5626 = 0, $5627 = 0, $5628 = 0, $5629 = 0, $563 = 0, $5630 = 0, $5631 = 0, $5632 = 0, $5633 = 0, $5634 = 0, $5635 = 0, $5636 = 0, $5637 = 0, $5638 = 0, $5639 = 0, $564 = 0, $5640 = 0, $5641 = 0; + var $5642 = 0, $5643 = 0, $5644 = 0, $5645 = 0, $5646 = 0, $5647 = 0, $5648 = 0, $5649 = 0, $565 = 0, $5650 = 0, $5651 = 0, $5652 = 0, $5653 = 0, $5654 = 0, $5655 = 0, $5656 = 0, $5657 = 0, $5658 = 0, $5659 = 0, $566 = 0; + var $5660 = 0, $5661 = 0, $5662 = 0, $5663 = 0, $5664 = 0, $5665 = 0, $5666 = 0, $5667 = 0, $5668 = 0, $5669 = 0, $567 = 0, $5670 = 0, $5671 = 0, $5672 = 0, $5673 = 0, $5674 = 0, $5675 = 0, $5676 = 0, $5677 = 0, $5678 = 0; + var $5679 = 0, $568 = 0, $5680 = 0, $5681 = 0, $5682 = 0, $5683 = 0, $5684 = 0, $5685 = 0, $5686 = 0, $5687 = 0, $5688 = 0, $5689 = 0, $569 = 0, $5690 = 0, $5691 = 0, $5692 = 0, $5693 = 0, $5694 = 0, $5695 = 0, $5696 = 0; + var $5697 = 0, $5698 = 0, $5699 = 0, $57 = 0, $570 = 0, $5700 = 0, $5701 = 0, $5702 = 0, $5703 = 0, $5704 = 0, $5705 = 0, $5706 = 0, $5707 = 0, $5708 = 0, $5709 = 0, $571 = 0, $5710 = 0, $5711 = 0, $5712 = 0, $5713 = 0; + var $5714 = 0, $5715 = 0, $5716 = 0, $5717 = 0, $5718 = 0, $5719 = 0, $572 = 0, $5720 = 0, $5721 = 0, $5722 = 0, $5723 = 0, $5724 = 0, $5725 = 0, $5726 = 0, $5727 = 0, $5728 = 0, $5729 = 0, $573 = 0, $5730 = 0, $5731 = 0; + var $5732 = 0, $5733 = 0, $5734 = 0, $5735 = 0, $5736 = 0, $5737 = 0, $5738 = 0, $5739 = 0, $574 = 0, $5740 = 0, $5741 = 0, $5742 = 0, $5743 = 0, $5744 = 0, $5745 = 0, $5746 = 0, $5747 = 0, $5748 = 0, $5749 = 0, $575 = 0; + var $5750 = 0, $5751 = 0, $5752 = 0, $5753 = 0, $5754 = 0, $5755 = 0, $5756 = 0, $5757 = 0, $5758 = 0, $5759 = 0, $576 = 0, $5760 = 0, $5761 = 0, $5762 = 0, $5763 = 0, $5764 = 0, $5765 = 0, $5766 = 0, $5767 = 0, $5768 = 0; + var $5769 = 0, $577 = 0, $5770 = 0, $5771 = 0, $5772 = 0, $5773 = 0, $5774 = 0, $5775 = 0, $5776 = 0, $5777 = 0, $5778 = 0, $5779 = 0, $578 = 0, $5780 = 0, $5781 = 0, $5782 = 0, $5783 = 0, $5784 = 0, $5785 = 0, $5786 = 0; + var $5787 = 0, $5788 = 0, $5789 = 0, $579 = 0, $5790 = 0, $5791 = 0, $5792 = 0, $5793 = 0, $5794 = 0, $5795 = 0, $5796 = 0, $5797 = 0, $5798 = 0, $5799 = 0, $58 = 0, $580 = 0, $5800 = 0, $5801 = 0, $5802 = 0, $5803 = 0; + var $5804 = 0, $5805 = 0, $5806 = 0, $5807 = 0, $5808 = 0, $5809 = 0, $581 = 0, $5810 = 0, $5811 = 0, $5812 = 0, $5813 = 0, $5814 = 0, $5815 = 0, $5816 = 0, $5817 = 0, $5818 = 0, $5819 = 0, $582 = 0, $5820 = 0, $5821 = 0; + var $5822 = 0, $5823 = 0, $5824 = 0, $5825 = 0, $5826 = 0, $5827 = 0, $5828 = 0, $5829 = 0, $583 = 0, $5830 = 0, $5831 = 0, $5832 = 0, $5833 = 0, $5834 = 0, $5835 = 0, $5836 = 0, $5837 = 0, $5838 = 0, $5839 = 0, $584 = 0; + var $5840 = 0, $5841 = 0, $5842 = 0, $5843 = 0, $5844 = 0, $5845 = 0, $5846 = 0, $5847 = 0, $5848 = 0, $5849 = 0, $585 = 0, $5850 = 0, $5851 = 0, $5852 = 0, $5853 = 0, $5854 = 0, $5855 = 0, $5856 = 0, $5857 = 0, $5858 = 0; + var $5859 = 0, $586 = 0, $5860 = 0, $5861 = 0, $5862 = 0, $5863 = 0, $5864 = 0, $5865 = 0, $5866 = 0, $5867 = 0, $5868 = 0, $5869 = 0, $587 = 0, $5870 = 0, $5871 = 0, $5872 = 0, $5873 = 0, $5874 = 0, $5875 = 0, $5876 = 0; + var $5877 = 0, $5878 = 0, $5879 = 0, $588 = 0, $5880 = 0, $5881 = 0, $5882 = 0, $5883 = 0, $5884 = 0, $5885 = 0, $5886 = 0, $5887 = 0, $5888 = 0, $5889 = 0, $589 = 0, $5890 = 0, $5891 = 0, $5892 = 0, $5893 = 0, $5894 = 0; + var $5895 = 0, $5896 = 0, $5897 = 0, $5898 = 0, $5899 = 0, $59 = 0, $590 = 0, $5900 = 0, $5901 = 0, $5902 = 0, $5903 = 0, $5904 = 0, $5905 = 0, $5906 = 0, $5907 = 0, $5908 = 0, $5909 = 0, $591 = 0, $5910 = 0, $5911 = 0; + var $5912 = 0, $5913 = 0, $5914 = 0, $5915 = 0, $5916 = 0, $5917 = 0, $5918 = 0, $5919 = 0, $592 = 0, $5920 = 0, $5921 = 0, $5922 = 0, $5923 = 0, $5924 = 0, $5925 = 0, $5926 = 0, $5927 = 0, $5928 = 0, $5929 = 0, $593 = 0; + var $5930 = 0, $5931 = 0, $5932 = 0, $5933 = 0, $5934 = 0, $5935 = 0, $5936 = 0, $5937 = 0, $5938 = 0, $5939 = 0, $594 = 0, $5940 = 0, $5941 = 0, $5942 = 0, $5943 = 0, $5944 = 0, $5945 = 0, $5946 = 0, $5947 = 0, $5948 = 0; + var $5949 = 0, $595 = 0, $5950 = 0, $5951 = 0, $5952 = 0, $5953 = 0, $5954 = 0, $5955 = 0, $5956 = 0, $5957 = 0, $5958 = 0, $5959 = 0, $596 = 0, $5960 = 0, $5961 = 0, $5962 = 0, $5963 = 0, $5964 = 0, $5965 = 0, $5966 = 0; + var $5967 = 0, $5968 = 0, $5969 = 0, $597 = 0, $5970 = 0, $5971 = 0, $5972 = 0, $5973 = 0, $5974 = 0, $5975 = 0, $5976 = 0, $5977 = 0, $5978 = 0, $5979 = 0, $598 = 0, $5980 = 0, $5981 = 0, $5982 = 0, $5983 = 0, $5984 = 0; + var $5985 = 0, $5986 = 0, $5987 = 0, $5988 = 0, $5989 = 0, $599 = 0, $5990 = 0, $5991 = 0, $5992 = 0, $5993 = 0, $5994 = 0, $5995 = 0, $5996 = 0, $5997 = 0, $5998 = 0, $5999 = 0, $6 = 0, $60 = 0, $600 = 0, $6000 = 0; + var $6001 = 0, $6002 = 0, $6003 = 0, $6004 = 0, $6005 = 0, $6006 = 0, $6007 = 0, $6008 = 0, $6009 = 0, $601 = 0, $6010 = 0, $6011 = 0, $6012 = 0, $6013 = 0, $6014 = 0, $6015 = 0, $6016 = 0, $6017 = 0, $6018 = 0, $6019 = 0; + var $602 = 0, $6020 = 0, $6021 = 0, $6022 = 0, $6023 = 0, $6024 = 0, $6025 = 0, $6026 = 0, $6027 = 0, $6028 = 0, $6029 = 0, $603 = 0, $6030 = 0, $6031 = 0, $6032 = 0, $6033 = 0, $6034 = 0, $6035 = 0, $6036 = 0, $6037 = 0; + var $6038 = 0, $6039 = 0, $604 = 0, $6040 = 0, $6041 = 0, $6042 = 0, $6043 = 0, $6044 = 0, $6045 = 0, $6046 = 0, $6047 = 0, $6048 = 0, $6049 = 0, $605 = 0, $6050 = 0, $6051 = 0, $6052 = 0, $6053 = 0, $6054 = 0, $6055 = 0; + var $6056 = 0, $6057 = 0, $6058 = 0, $6059 = 0, $606 = 0, $6060 = 0, $6061 = 0, $6062 = 0, $6063 = 0, $6064 = 0, $6065 = 0, $6066 = 0, $6067 = 0, $6068 = 0, $6069 = 0, $607 = 0, $6070 = 0, $6071 = 0, $6072 = 0, $6073 = 0; + var $6074 = 0, $6075 = 0, $6076 = 0, $6077 = 0, $6078 = 0, $6079 = 0, $608 = 0, $6080 = 0, $6081 = 0, $6082 = 0, $6083 = 0, $6084 = 0, $6085 = 0, $6086 = 0, $6087 = 0, $6088 = 0, $6089 = 0, $609 = 0, $6090 = 0, $6091 = 0; + var $6092 = 0, $6093 = 0, $6094 = 0, $6095 = 0, $6096 = 0, $6097 = 0, $6098 = 0, $6099 = 0, $61 = 0, $610 = 0, $6100 = 0, $6101 = 0, $6102 = 0, $6103 = 0, $6104 = 0, $6105 = 0, $6106 = 0, $6107 = 0, $6108 = 0, $6109 = 0; + var $611 = 0, $6110 = 0, $6111 = 0, $6112 = 0, $6113 = 0, $6114 = 0, $6115 = 0, $6116 = 0, $6117 = 0, $6118 = 0, $6119 = 0, $612 = 0, $6120 = 0, $6121 = 0, $6122 = 0, $6123 = 0, $6124 = 0, $6125 = 0, $6126 = 0, $6127 = 0; + var $6128 = 0, $6129 = 0, $613 = 0, $6130 = 0, $6131 = 0, $6132 = 0, $6133 = 0, $6134 = 0, $6135 = 0, $6136 = 0, $6137 = 0, $6138 = 0, $6139 = 0, $614 = 0, $6140 = 0, $6141 = 0, $6142 = 0, $6143 = 0, $6144 = 0, $6145 = 0; + var $6146 = 0, $6147 = 0, $6148 = 0, $6149 = 0, $615 = 0, $6150 = 0, $6151 = 0, $6152 = 0, $6153 = 0, $6154 = 0, $6155 = 0, $6156 = 0, $6157 = 0, $6158 = 0, $6159 = 0, $616 = 0, $6160 = 0, $6161 = 0, $6162 = 0, $6163 = 0; + var $6164 = 0, $6165 = 0, $6166 = 0, $6167 = 0, $6168 = 0, $6169 = 0, $617 = 0, $6170 = 0, $6171 = 0, $6172 = 0, $6173 = 0, $6174 = 0, $6175 = 0, $6176 = 0, $6177 = 0, $6178 = 0, $6179 = 0, $618 = 0, $6180 = 0, $6181 = 0; + var $6182 = 0, $6183 = 0, $6184 = 0, $6185 = 0, $6186 = 0, $6187 = 0, $6188 = 0, $6189 = 0, $619 = 0, $6190 = 0, $6191 = 0, $6192 = 0, $6193 = 0, $6194 = 0, $6195 = 0, $6196 = 0, $6197 = 0, $6198 = 0, $6199 = 0, $62 = 0; + var $620 = 0, $6200 = 0, $6201 = 0, $6202 = 0, $6203 = 0, $6204 = 0, $6205 = 0, $6206 = 0, $6207 = 0, $6208 = 0, $6209 = 0, $621 = 0, $6210 = 0, $6211 = 0, $6212 = 0, $6213 = 0, $6214 = 0, $6215 = 0, $6216 = 0, $6217 = 0; + var $6218 = 0, $6219 = 0, $622 = 0, $6220 = 0, $6221 = 0, $6222 = 0, $6223 = 0, $6224 = 0, $6225 = 0, $6226 = 0, $6227 = 0, $6228 = 0, $6229 = 0, $623 = 0, $6230 = 0, $6231 = 0, $6232 = 0, $6233 = 0, $6234 = 0, $6235 = 0; + var $6236 = 0, $6237 = 0, $6238 = 0, $6239 = 0, $624 = 0, $6240 = 0, $6241 = 0, $6242 = 0, $6243 = 0, $6244 = 0, $6245 = 0, $6246 = 0, $6247 = 0, $6248 = 0, $6249 = 0, $625 = 0, $6250 = 0, $6251 = 0, $6252 = 0, $6253 = 0; + var $6254 = 0, $6255 = 0, $6256 = 0, $6257 = 0, $6258 = 0, $6259 = 0, $626 = 0, $6260 = 0, $6261 = 0, $6262 = 0, $6263 = 0, $6264 = 0, $6265 = 0, $6266 = 0, $6267 = 0, $6268 = 0, $6269 = 0, $627 = 0, $6270 = 0, $6271 = 0; + var $6272 = 0, $6273 = 0, $6274 = 0, $6275 = 0, $6276 = 0, $6277 = 0, $6278 = 0, $6279 = 0, $628 = 0, $6280 = 0, $6281 = 0, $6282 = 0, $6283 = 0, $6284 = 0, $6285 = 0, $6286 = 0, $6287 = 0, $6288 = 0, $6289 = 0, $629 = 0; + var $6290 = 0, $6291 = 0, $6292 = 0, $6293 = 0, $6294 = 0, $6295 = 0, $6296 = 0, $6297 = 0, $6298 = 0, $6299 = 0, $63 = 0, $630 = 0, $6300 = 0, $6301 = 0, $6302 = 0, $6303 = 0, $6304 = 0, $6305 = 0, $6306 = 0, $6307 = 0; + var $6308 = 0, $6309 = 0, $631 = 0, $6310 = 0, $6311 = 0, $6312 = 0, $6313 = 0, $6314 = 0, $6315 = 0, $6316 = 0, $6317 = 0, $6318 = 0, $6319 = 0, $632 = 0, $6320 = 0, $6321 = 0, $6322 = 0, $6323 = 0, $6324 = 0, $6325 = 0; + var $6326 = 0, $6327 = 0, $6328 = 0, $6329 = 0, $633 = 0, $6330 = 0, $6331 = 0, $6332 = 0, $6333 = 0, $6334 = 0, $6335 = 0, $6336 = 0, $6337 = 0, $6338 = 0, $6339 = 0, $634 = 0, $6340 = 0, $6341 = 0, $6342 = 0, $6343 = 0; + var $6344 = 0, $6345 = 0, $6346 = 0, $6347 = 0, $6348 = 0, $6349 = 0, $635 = 0, $6350 = 0, $6351 = 0, $6352 = 0, $6353 = 0, $6354 = 0, $6355 = 0, $6356 = 0, $6357 = 0, $6358 = 0, $6359 = 0, $636 = 0, $6360 = 0, $6361 = 0; + var $6362 = 0, $6363 = 0, $6364 = 0, $6365 = 0, $6366 = 0, $6367 = 0, $6368 = 0, $6369 = 0, $637 = 0, $6370 = 0, $6371 = 0, $6372 = 0, $6373 = 0, $6374 = 0, $6375 = 0, $6376 = 0, $6377 = 0, $6378 = 0, $6379 = 0, $638 = 0; + var $6380 = 0, $6381 = 0, $6382 = 0, $6383 = 0, $6384 = 0, $6385 = 0, $6386 = 0, $6387 = 0, $6388 = 0, $6389 = 0, $639 = 0, $6390 = 0, $6391 = 0, $6392 = 0, $6393 = 0, $6394 = 0, $6395 = 0, $6396 = 0, $6397 = 0, $6398 = 0; + var $6399 = 0, $64 = 0, $640 = 0, $6400 = 0, $6401 = 0, $6402 = 0, $6403 = 0, $6404 = 0, $6405 = 0, $6406 = 0, $6407 = 0, $6408 = 0, $6409 = 0, $641 = 0, $6410 = 0, $6411 = 0, $6412 = 0, $6413 = 0, $6414 = 0, $6415 = 0; + var $6416 = 0, $6417 = 0, $6418 = 0, $6419 = 0, $642 = 0, $6420 = 0, $6421 = 0, $6422 = 0, $6423 = 0, $6424 = 0, $6425 = 0, $6426 = 0, $6427 = 0, $6428 = 0, $6429 = 0, $643 = 0, $6430 = 0, $6431 = 0, $6432 = 0, $6433 = 0; + var $6434 = 0, $6435 = 0, $6436 = 0, $6437 = 0, $6438 = 0, $6439 = 0, $644 = 0, $6440 = 0, $6441 = 0, $6442 = 0, $6443 = 0, $6444 = 0, $6445 = 0, $6446 = 0, $6447 = 0, $6448 = 0, $6449 = 0, $645 = 0, $6450 = 0, $6451 = 0; + var $6452 = 0, $6453 = 0, $6454 = 0, $6455 = 0, $6456 = 0, $6457 = 0, $6458 = 0, $6459 = 0, $646 = 0, $6460 = 0, $6461 = 0, $6462 = 0, $6463 = 0, $6464 = 0, $6465 = 0, $6466 = 0, $6467 = 0, $6468 = 0, $6469 = 0, $647 = 0; + var $6470 = 0, $6471 = 0, $6472 = 0, $6473 = 0, $6474 = 0, $6475 = 0, $6476 = 0, $6477 = 0, $6478 = 0, $6479 = 0, $648 = 0, $6480 = 0, $6481 = 0, $6482 = 0, $6483 = 0, $6484 = 0, $6485 = 0, $6486 = 0, $6487 = 0, $6488 = 0; + var $6489 = 0, $649 = 0, $6490 = 0, $6491 = 0, $6492 = 0, $6493 = 0, $6494 = 0, $6495 = 0, $6496 = 0, $6497 = 0, $6498 = 0, $6499 = 0, $65 = 0, $650 = 0, $6500 = 0, $6501 = 0, $6502 = 0, $6503 = 0, $6504 = 0, $6505 = 0; + var $6506 = 0, $6507 = 0, $6508 = 0, $6509 = 0, $651 = 0, $6510 = 0, $6511 = 0, $6512 = 0, $6513 = 0, $6514 = 0, $6515 = 0, $6516 = 0, $6517 = 0, $6518 = 0, $6519 = 0, $652 = 0, $6520 = 0, $6521 = 0, $6522 = 0, $6523 = 0; + var $6524 = 0, $6525 = 0, $6526 = 0, $6527 = 0, $6528 = 0, $6529 = 0, $653 = 0, $6530 = 0, $6531 = 0, $6532 = 0, $6533 = 0, $6534 = 0, $6535 = 0, $6536 = 0, $6537 = 0, $6538 = 0, $6539 = 0, $654 = 0, $6540 = 0, $6541 = 0; + var $6542 = 0, $6543 = 0, $6544 = 0, $6545 = 0, $6546 = 0, $6547 = 0, $6548 = 0, $6549 = 0, $655 = 0, $6550 = 0, $6551 = 0, $6552 = 0, $6553 = 0, $6554 = 0, $6555 = 0, $6556 = 0, $6557 = 0, $6558 = 0, $6559 = 0, $656 = 0; + var $6560 = 0, $6561 = 0, $6562 = 0, $6563 = 0, $6564 = 0, $6565 = 0, $6566 = 0, $6567 = 0, $6568 = 0, $6569 = 0, $657 = 0, $6570 = 0, $6571 = 0, $6572 = 0, $6573 = 0, $6574 = 0, $6575 = 0, $6576 = 0, $6577 = 0, $6578 = 0; + var $6579 = 0, $658 = 0, $6580 = 0, $6581 = 0, $6582 = 0, $6583 = 0, $6584 = 0, $6585 = 0, $6586 = 0, $6587 = 0, $6588 = 0, $6589 = 0, $659 = 0, $6590 = 0, $6591 = 0, $6592 = 0, $6593 = 0, $6594 = 0, $6595 = 0, $6596 = 0; + var $6597 = 0, $6598 = 0, $6599 = 0, $66 = 0, $660 = 0, $6600 = 0, $6601 = 0, $6602 = 0, $6603 = 0, $6604 = 0, $6605 = 0, $6606 = 0, $6607 = 0, $6608 = 0, $6609 = 0, $661 = 0, $6610 = 0, $6611 = 0, $6612 = 0, $6613 = 0; + var $6614 = 0, $6615 = 0, $6616 = 0, $6617 = 0, $6618 = 0, $6619 = 0, $662 = 0, $6620 = 0, $6621 = 0, $6622 = 0, $6623 = 0, $6624 = 0, $6625 = 0, $6626 = 0, $6627 = 0, $6628 = 0, $6629 = 0, $663 = 0, $6630 = 0, $6631 = 0; + var $6632 = 0, $6633 = 0, $6634 = 0, $6635 = 0, $6636 = 0, $6637 = 0, $6638 = 0, $6639 = 0, $664 = 0, $6640 = 0, $6641 = 0, $6642 = 0, $6643 = 0, $6644 = 0, $6645 = 0, $6646 = 0, $6647 = 0, $6648 = 0, $6649 = 0, $665 = 0; + var $6650 = 0, $6651 = 0, $6652 = 0, $6653 = 0, $6654 = 0, $6655 = 0, $6656 = 0, $6657 = 0, $6658 = 0, $6659 = 0, $666 = 0, $6660 = 0, $6661 = 0, $6662 = 0, $6663 = 0, $6664 = 0, $6665 = 0, $6666 = 0, $6667 = 0, $6668 = 0; + var $6669 = 0, $667 = 0, $6670 = 0, $6671 = 0, $6672 = 0, $6673 = 0, $6674 = 0, $6675 = 0, $6676 = 0, $6677 = 0, $6678 = 0, $6679 = 0, $668 = 0, $6680 = 0, $6681 = 0, $6682 = 0, $6683 = 0, $6684 = 0, $6685 = 0, $6686 = 0; + var $6687 = 0, $6688 = 0, $6689 = 0, $669 = 0, $6690 = 0, $6691 = 0, $6692 = 0, $6693 = 0, $6694 = 0, $6695 = 0, $6696 = 0, $6697 = 0, $6698 = 0, $6699 = 0, $67 = 0, $670 = 0, $6700 = 0, $6701 = 0, $6702 = 0, $6703 = 0; + var $6704 = 0, $6705 = 0, $6706 = 0, $6707 = 0, $6708 = 0, $6709 = 0, $671 = 0, $6710 = 0, $6711 = 0, $6712 = 0, $6713 = 0, $6714 = 0, $6715 = 0, $6716 = 0, $6717 = 0, $6718 = 0, $6719 = 0, $672 = 0, $6720 = 0, $6721 = 0; + var $6722 = 0, $6723 = 0, $6724 = 0, $6725 = 0, $6726 = 0, $6727 = 0, $6728 = 0, $6729 = 0, $673 = 0, $6730 = 0, $6731 = 0, $6732 = 0, $6733 = 0, $6734 = 0, $6735 = 0, $6736 = 0, $6737 = 0, $6738 = 0, $6739 = 0, $674 = 0; + var $6740 = 0, $6741 = 0, $6742 = 0, $6743 = 0, $6744 = 0, $6745 = 0, $6746 = 0, $6747 = 0, $6748 = 0, $6749 = 0, $675 = 0, $6750 = 0, $6751 = 0, $6752 = 0, $6753 = 0, $6754 = 0, $6755 = 0, $6756 = 0, $6757 = 0, $6758 = 0; + var $6759 = 0, $676 = 0, $6760 = 0, $6761 = 0, $6762 = 0, $6763 = 0, $6764 = 0, $6765 = 0, $6766 = 0, $6767 = 0, $6768 = 0, $6769 = 0, $677 = 0, $6770 = 0, $6771 = 0, $6772 = 0, $6773 = 0, $6774 = 0, $6775 = 0, $6776 = 0; + var $6777 = 0, $6778 = 0, $6779 = 0, $678 = 0, $6780 = 0, $6781 = 0, $6782 = 0, $6783 = 0, $6784 = 0, $6785 = 0, $6786 = 0, $6787 = 0, $6788 = 0, $6789 = 0, $679 = 0, $6790 = 0, $6791 = 0, $6792 = 0, $6793 = 0, $6794 = 0; + var $6795 = 0, $6796 = 0, $6797 = 0, $6798 = 0, $6799 = 0, $68 = 0, $680 = 0, $6800 = 0, $6801 = 0, $6802 = 0, $6803 = 0, $6804 = 0, $6805 = 0, $6806 = 0, $6807 = 0, $6808 = 0, $6809 = 0, $681 = 0, $6810 = 0, $6811 = 0; + var $6812 = 0, $6813 = 0, $6814 = 0, $6815 = 0, $6816 = 0, $6817 = 0, $6818 = 0, $6819 = 0, $682 = 0, $6820 = 0, $6821 = 0, $6822 = 0, $6823 = 0, $6824 = 0, $6825 = 0, $6826 = 0, $6827 = 0, $6828 = 0, $6829 = 0, $683 = 0; + var $6830 = 0, $6831 = 0, $6832 = 0, $6833 = 0, $6834 = 0, $6835 = 0, $6836 = 0, $6837 = 0, $6838 = 0, $6839 = 0, $684 = 0, $6840 = 0, $6841 = 0, $6842 = 0, $6843 = 0, $6844 = 0, $6845 = 0, $6846 = 0, $6847 = 0, $6848 = 0; + var $6849 = 0, $685 = 0, $6850 = 0, $6851 = 0, $6852 = 0, $6853 = 0, $6854 = 0, $6855 = 0, $6856 = 0, $6857 = 0, $6858 = 0, $6859 = 0, $686 = 0, $6860 = 0, $6861 = 0, $6862 = 0, $6863 = 0, $6864 = 0, $6865 = 0, $6866 = 0; + var $6867 = 0, $6868 = 0, $6869 = 0, $687 = 0, $6870 = 0, $6871 = 0, $6872 = 0, $6873 = 0, $6874 = 0, $6875 = 0, $6876 = 0, $6877 = 0, $6878 = 0, $6879 = 0, $688 = 0, $6880 = 0, $6881 = 0, $6882 = 0, $6883 = 0, $6884 = 0; + var $6885 = 0, $6886 = 0, $6887 = 0, $6888 = 0, $6889 = 0, $689 = 0, $6890 = 0, $6891 = 0, $6892 = 0, $6893 = 0, $6894 = 0, $6895 = 0, $6896 = 0, $6897 = 0, $6898 = 0, $6899 = 0, $69 = 0, $690 = 0, $6900 = 0, $6901 = 0; + var $6902 = 0, $6903 = 0, $6904 = 0, $6905 = 0, $6906 = 0, $6907 = 0, $6908 = 0, $6909 = 0, $691 = 0, $6910 = 0, $6911 = 0, $6912 = 0, $6913 = 0, $6914 = 0, $6915 = 0, $6916 = 0, $6917 = 0, $6918 = 0, $6919 = 0, $692 = 0; + var $6920 = 0, $6921 = 0, $6922 = 0, $6923 = 0, $6924 = 0, $6925 = 0, $6926 = 0, $6927 = 0, $6928 = 0, $6929 = 0, $693 = 0, $6930 = 0, $6931 = 0, $6932 = 0, $6933 = 0, $6934 = 0, $6935 = 0, $6936 = 0, $6937 = 0, $6938 = 0; + var $6939 = 0, $694 = 0, $6940 = 0, $6941 = 0, $6942 = 0, $6943 = 0, $6944 = 0, $6945 = 0, $6946 = 0, $6947 = 0, $6948 = 0, $6949 = 0, $695 = 0, $6950 = 0, $6951 = 0, $6952 = 0, $6953 = 0, $6954 = 0, $6955 = 0, $6956 = 0; + var $6957 = 0, $6958 = 0, $6959 = 0, $696 = 0, $6960 = 0, $6961 = 0, $6962 = 0, $6963 = 0, $6964 = 0, $6965 = 0, $6966 = 0, $6967 = 0, $6968 = 0, $6969 = 0, $697 = 0, $6970 = 0, $6971 = 0, $6972 = 0, $6973 = 0, $6974 = 0; + var $6975 = 0, $6976 = 0, $6977 = 0, $6978 = 0, $6979 = 0, $698 = 0, $6980 = 0, $6981 = 0, $6982 = 0, $6983 = 0, $6984 = 0, $6985 = 0, $6986 = 0, $6987 = 0, $6988 = 0, $6989 = 0, $699 = 0, $6990 = 0, $6991 = 0, $6992 = 0; + var $6993 = 0, $6994 = 0, $6995 = 0, $6996 = 0, $6997 = 0, $6998 = 0, $6999 = 0, $7 = 0, $70 = 0, $700 = 0, $7000 = 0, $7001 = 0, $7002 = 0, $7003 = 0, $7004 = 0, $7005 = 0, $7006 = 0, $7007 = 0, $7008 = 0, $7009 = 0; + var $701 = 0, $7010 = 0, $7011 = 0, $7012 = 0, $7013 = 0, $7014 = 0, $7015 = 0, $7016 = 0, $7017 = 0, $7018 = 0, $7019 = 0, $702 = 0, $7020 = 0, $7021 = 0, $7022 = 0, $7023 = 0, $7024 = 0, $7025 = 0, $7026 = 0, $7027 = 0; + var $7028 = 0, $7029 = 0, $703 = 0, $7030 = 0, $7031 = 0, $7032 = 0, $7033 = 0, $7034 = 0, $7035 = 0, $7036 = 0, $7037 = 0, $7038 = 0, $7039 = 0, $704 = 0, $7040 = 0, $7041 = 0, $7042 = 0, $7043 = 0, $7044 = 0, $7045 = 0; + var $7046 = 0, $7047 = 0, $7048 = 0, $7049 = 0, $705 = 0, $7050 = 0, $7051 = 0, $7052 = 0, $7053 = 0, $7054 = 0, $7055 = 0, $7056 = 0, $7057 = 0, $7058 = 0, $7059 = 0, $706 = 0, $7060 = 0, $7061 = 0, $7062 = 0, $7063 = 0; + var $7064 = 0, $7065 = 0, $7066 = 0, $7067 = 0, $7068 = 0, $7069 = 0, $707 = 0, $7070 = 0, $7071 = 0, $7072 = 0, $7073 = 0, $7074 = 0, $7075 = 0, $7076 = 0, $7077 = 0, $7078 = 0, $7079 = 0, $708 = 0, $7080 = 0, $7081 = 0; + var $7082 = 0, $7083 = 0, $7084 = 0, $7085 = 0, $7086 = 0, $7087 = 0, $7088 = 0, $7089 = 0, $709 = 0, $7090 = 0, $7091 = 0, $7092 = 0, $7093 = 0, $7094 = 0, $7095 = 0, $7096 = 0, $7097 = 0, $7098 = 0, $7099 = 0, $71 = 0; + var $710 = 0, $7100 = 0, $7101 = 0, $7102 = 0, $7103 = 0, $7104 = 0, $7105 = 0, $7106 = 0, $7107 = 0, $7108 = 0, $7109 = 0, $711 = 0, $7110 = 0, $7111 = 0, $7112 = 0, $7113 = 0, $7114 = 0, $7115 = 0, $7116 = 0, $7117 = 0; + var $7118 = 0, $7119 = 0, $712 = 0, $7120 = 0, $7121 = 0, $7122 = 0, $7123 = 0, $7124 = 0, $7125 = 0, $7126 = 0, $7127 = 0, $7128 = 0, $7129 = 0, $713 = 0, $7130 = 0, $7131 = 0, $7132 = 0, $7133 = 0, $7134 = 0, $7135 = 0; + var $7136 = 0, $7137 = 0, $7138 = 0, $7139 = 0, $714 = 0, $7140 = 0, $7141 = 0, $7142 = 0, $7143 = 0, $7144 = 0, $7145 = 0, $7146 = 0, $7147 = 0, $7148 = 0, $7149 = 0, $715 = 0, $7150 = 0, $7151 = 0, $7152 = 0, $7153 = 0; + var $7154 = 0, $7155 = 0, $7156 = 0, $7157 = 0, $7158 = 0, $7159 = 0, $716 = 0, $7160 = 0, $7161 = 0, $7162 = 0, $7163 = 0, $7164 = 0, $7165 = 0, $7166 = 0, $7167 = 0, $7168 = 0, $7169 = 0, $717 = 0, $7170 = 0, $7171 = 0; + var $7172 = 0, $7173 = 0, $7174 = 0, $7175 = 0, $7176 = 0, $7177 = 0, $7178 = 0, $7179 = 0, $718 = 0, $7180 = 0, $7181 = 0, $7182 = 0, $7183 = 0, $7184 = 0, $7185 = 0, $7186 = 0, $7187 = 0, $7188 = 0, $7189 = 0, $719 = 0; + var $7190 = 0, $7191 = 0, $7192 = 0, $7193 = 0, $7194 = 0, $7195 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0; + var $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0; + var $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0; + var $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0; + var $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0; + var $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0; + var $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 = 0; + var $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0, $858 = 0; + var $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0, $876 = 0; + var $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0; + var $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0, $911 = 0; + var $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0; + var $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0, $948 = 0; + var $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0, $966 = 0; + var $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0, $983 = 0, $984 = 0; + var $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $aMem = 0, $aOffset = 0, $aOp = 0, $aPermute = 0; + var $aRes = 0, $aRoot = 0, $aTempRec = 0, $aType = 0, $affinity = 0, $alreadyExists = 0, $apArg = 0, $apArg127 = 0, $apVal = 0, $apVal96 = 0, $avail = 0, $bIntint = 0, $bRev = 0, $c = 0, $cAff = 0, $cnt = 0, $cnt41 = 0, $ctx = 0, $ctx95 = 0, $db = 0; + var $desiredAutoCommit = 0, $eNew = 0, $eOld = 0, $encoding = 0, $exists = 0, $file_format = 0, $flags = 0, $flags1 = 0, $flags3 = 0, $flags81 = 0, $i = 0, $i11 = 0, $i112 = 0, $i125 = 0, $i14 = 0, $i2 = 0, $i7 = 0, $i92 = 0, $i98 = 0, $iA = 0; + var $iA4 = 0, $iB = 0, $iB5 = 0, $iCnt = 0, $iCompare = 0, $iCookie = 0, $iDb = 0, $iDb22 = 0, $iDb78 = 0, $iDb83 = 0, $iGen = 0, $iKey = 0, $iKey38 = 0, $iKey44 = 0, $iKey48 = 0, $iMeta = 0, $iMeta18 = 0, $iMoved = 0, $iQuery = 0, $iRollback = 0; + var $iSavepoint = 0, $iSet = 0, $idx = 0, $ii = 0, $ii31 = 0, $initData = 0, $isTransaction = 0, $isWriteLock = 0, $j = 0, $j84 = 0, $lastRowid = 0, $len = 0, $len15 = 0, $n = 0, $n1 = 0, $n3 = 0, $n55 = 0, $n6 = 0, $n64 = 0, $n91 = 0; + var $nArg = 0, $nArg124 = 0, $nByte = 0, $nByte12 = 0, $nByte85 = 0, $nChange = 0, $nChange$ = 0, $nData = 0, $nEntry = 0, $nErr = 0, $nField = 0, $nField19 = 0, $nField29 = 0, $nHdr = 0, $nIgnore = 0, $nKey = 0, $nMem = 0, $nName = 0, $nProgressLimit = 0, $nRoot = 0; + var $nVarint = 0, $nVmStep = 0, $nZero = 0, $nZero46 = 0, $newMax = 0, $nullFlag = 0, $oc = 0, $offset = 0, $op = 0, $op47 = 0, $or$cond = 0, $p1 = 0, $p1102 = 0, $p117 = 0, $p18 = 0, $p2 = 0, $p210 = 0, $p221 = 0, $p29 = 0, $pArg = 0; + var $pArgc = 0, $pBt = 0, $pBt100 = 0, $pBt101 = 0, $pBt129 = 0, $pC = 0, $pC28 = 0, $pC30 = 0, $pC32 = 0, $pC35 = 0, $pC39 = 0, $pC45 = 0, $pC49 = 0, $pC50 = 0, $pC52 = 0, $pC53 = 0, $pC56 = 0, $pC58 = 0, $pC59 = 0, $pC62 = 0; + var $pC65 = 0, $pC67 = 0, $pC69 = 0, $pC74 = 0, $pC75 = 0, $pC79 = 0, $pCaller = 0, $pColl = 0, $pCrsr = 0, $pCrsr16 = 0, $pCrsr36 = 0, $pCrsr54 = 0, $pCrsr60 = 0, $pCrsr63 = 0, $pCrsr68 = 0, $pCrsr70 = 0, $pCrsr73 = 0, $pCur = 0, $pCur104 = 0, $pCur110 = 0; + var $pCur116 = 0, $pCur120 = 0, $pCx = 0, $pCx25 = 0, $pCx26 = 0, $pData = 0, $pData0 = 0, $pDb = 0, $pDb23 = 0, $pDb82 = 0, $pDest = 0, $pDest115 = 0, $pEnd = 0, $pFrame = 0, $pFrame43 = 0, $pFrame87 = 0, $pFrame89 = 0, $pFrame90 = 0, $pFree = 0, $pIdxKey = 0; + var $pIn = 0, $pIn1 = 0, $pIn2 = 0, $pIn3 = 0, $pKey = 0, $pKeyInfo = 0, $pKeyInfo20 = 0, $pKeyInfo24 = 0, $pLast = 0, $pMem = 0, $pMem42 = 0, $pMem86 = 0, $pMem93 = 0, $pMem97 = 0, $pMem99 = 0, $pModule = 0, $pModule106 = 0, $pModule107 = 0, $pModule114 = 0, $pModule118 = 0; + var $pModule123 = 0, $pName = 0, $pNew = 0, $pOp = 0, $pOut = 0, $pPager = 0, $pProgram = 0, $pQuery = 0, $pRec = 0, $pRec94 = 0, $pReg = 0, $pRt = 0, $pSavepoint = 0, $pTmp = 0, $pVTab = 0, $pVar = 0, $pVdbe = 0, $pVtab = 0, $pVtab105 = 0, $pVtab109 = 0; + var $pVtab113 = 0, $pVtab117 = 0, $pVtab121 = 0, $pVtab122 = 0, $pVtabCursor = 0, $pVtabCursor108 = 0, $pX = 0, $pX128 = 0, $payloadSize64 = 0, $pc = 0, $pcDest = 0, $pgno = 0, $pgno80 = 0, $pnErr = 0, $r = 0, $r34 = 0, $r72 = 0, $r77 = 0, $rA = 0, $rB = 0; + var $rc = 0, $res = 0, $res111 = 0, $res119 = 0, $res27 = 0, $res33 = 0, $res37 = 0, $res40 = 0, $res51 = 0, $res61 = 0, $res64 = 0, $res66 = 0, $res71 = 0, $res76 = 0, $resetSchemaOnFault = 0, $rowid = 0, $rowid126 = 0, $sContext = 0, $sMem = 0, $seekResult = 0; + var $serial_type = 0, $szField = 0, $t = 0, $t88 = 0, $turnOnAC = 0, $type1 = 0, $type2 = 0, $uA = 0, $v = 0, $v1 = 0, $v2 = 0, $v57 = 0, $val = 0, $vararg_buffer62 = 0, $vararg_ptr15 = 0, $vararg_ptr16 = 0, $vararg_ptr34 = 0, $vararg_ptr35 = 0, $vararg_ptr5 = 0, $vararg_ptr53 = 0; + var $vararg_ptr54 = 0, $vtabOnConflict = 0, $wrFlag = 0, $z = 0, $z103 = 0, $z130 = 0, $zAffinity = 0, $zAffinity13 = 0, $zData = 0, $zDb = 0, $zEndHdr = 0, $zFilename = 0, $zHdr = 0, $zKey = 0, $zLogFmt = 0, $zMalloc = 0, $zMaster = 0, $zName = 0, $zNewRecord = 0, $zSql = 0; + var $zTbl = 0, $zTrace = 0, $zType = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 1792|0; + $vararg_buffer62 = sp + 336|0; + $0 = sp + 1328|0; + $pc = sp + 1324|0; + $aOp = sp + 1320|0; + $pOp = sp + 1316|0; + $rc = sp + 1312|0; + $db = sp + 1308|0; + $resetSchemaOnFault = sp + 1580|0; + $encoding = sp + 1581|0; + $iCompare = sp + 1304|0; + $nVmStep = sp + 1300|0; + $nProgressLimit = sp + 1296|0; + $aMem = sp + 1292|0; + $pIn1 = sp + 1288|0; + $pIn2 = sp + 1284|0; + $pIn3 = sp + 1280|0; + $pOut = sp + 1276|0; + $aPermute = sp + 1272|0; + $lastRowid = sp + 88|0; + $pCaller = sp + 1268|0; + $pcDest = sp + 1264|0; + $zType = sp + 1260|0; + $zLogFmt = sp + 1256|0; + $pFrame = sp + 1252|0; + $cnt = sp + 1248|0; + $nullFlag = sp + 1572|0; + $pVar = sp + 1244|0; + $zMalloc = sp + 1240|0; + $n = sp + 1236|0; + $p1 = sp + 1232|0; + $p2 = sp + 1228|0; + $n1 = sp + 1224|0; + $pMem = sp + 1220|0; + $i = sp + 1216|0; + $nByte = sp + 288|0; + $bIntint = sp + 1583|0; + $flags = sp + 1568|0; + $type1 = sp + 1570|0; + $type2 = sp + 1574|0; + $iA = sp + 280|0; + $iB = sp + 272|0; + $rA = sp + 264|0; + $rB = sp + 256|0; + $i2 = sp + 1212|0; + $pArg = sp + 1208|0; + $ctx = sp + 184|0; + $apVal = sp + 1204|0; + $n3 = sp + 1200|0; + $iA4 = sp + 176|0; + $uA = sp + 80|0; + $iB5 = sp + 72|0; + $op = sp + 1776|0; + $res = sp + 1128|0; + $affinity = sp + 1777|0; + $flags1 = sp + 1576|0; + $flags3 = sp + 1578|0; + $n6 = sp + 1124|0; + $i7 = sp + 1120|0; + $p18 = sp + 1116|0; + $p29 = sp + 1112|0; + $pKeyInfo = sp + 1108|0; + $idx = sp + 1104|0; + $pColl = sp + 1100|0; + $bRev = sp + 1096|0; + $v1 = sp + 1088|0; + $v2 = sp + 1084|0; + $c = sp + 1080|0; + $payloadSize64 = sp + 168|0; + $p210 = sp + 1076|0; + $pC = sp + 1072|0; + $pCrsr = sp + 1068|0; + $aType = sp + 1092|0; + $aOffset = sp + 1132|0; + $len = sp + 1136|0; + $i11 = sp + 1140|0; + $pDest = sp + 1144|0; + $sMem = sp + 296|0; + $zData = sp + 1148|0; + $zHdr = sp + 1168|0; + $zEndHdr = sp + 1196|0; + $offset = sp + 1192|0; + $szField = sp + 1188|0; + $avail = sp + 1184|0; + $t = sp + 1180|0; + $pReg = sp + 1176|0; + $zAffinity = sp + 1172|0; + $cAff = sp + 1778|0; + $zNewRecord = sp + 1164|0; + $pRec = sp + 1160|0; + $nData = sp + 352|0; + $nHdr = sp + 1156|0; + $nByte12 = sp + 360|0; + $nZero = sp + 1152|0; + $nVarint = sp + 1520|0; + $serial_type = sp + 1516|0; + $pData0 = sp + 1512|0; + $pLast = sp + 1508|0; + $nField = sp + 1504|0; + $zAffinity13 = sp + 1500|0; + $file_format = sp + 1492|0; + $i14 = sp + 1488|0; + $j = sp + 1484|0; + $len15 = sp + 1480|0; + $nEntry = sp + 368|0; + $pCrsr16 = sp + 1496|0; + $p117 = sp + 1528|0; + $zName = sp + 1564|0; + $nName = sp + 1560|0; + $pNew = sp + 1556|0; + $pSavepoint = sp + 1552|0; + $pTmp = sp + 1544|0; + $iSavepoint = sp + 1548|0; + $ii = sp + 1540|0; + $isTransaction = sp + 1536|0; + $desiredAutoCommit = sp + 1468|0; + $iRollback = sp + 1396|0; + $turnOnAC = sp + 1392|0; + $pBt = sp + 1388|0; + $iMeta = sp + 1384|0; + $iGen = sp + 1352|0; + $iMeta18 = sp + 1348|0; + $iDb = sp + 1344|0; + $iCookie = sp + 1340|0; + $pDb = sp + 1336|0; + $nField19 = sp + 1356|0; + $pKeyInfo20 = sp + 1404|0; + $p221 = sp + 1408|0; + $iDb22 = sp + 1412|0; + $wrFlag = sp + 1416|0; + $pX = sp + 1420|0; + $pCur = sp + 1424|0; + $pDb23 = sp + 1428|0; + $pCx = sp + 1432|0; + $pKeyInfo24 = sp + 1436|0; + $pgno = sp + 1440|0; + $pCx25 = sp + 1444|0; + $pCx26 = sp + 1448|0; + $res27 = sp + 1452|0; + $oc = sp + 1456|0; + $pC28 = sp + 1460|0; + $r = sp + 1360|0; + $nField29 = sp + 1380|0; + $iKey = sp + 408|0; + $pC30 = sp + 1476|0; + $alreadyExists = sp + 1532|0; + $ii31 = sp + 1524|0; + $pC32 = sp + 1400|0; + $res33 = sp + 1464|0; + $pFree = sp + 1472|0; + $pIdxKey = sp + 1332|0; + $r34 = sp + 700|0; + $aTempRec = sp + 1584|0; + $pC35 = sp + 724|0; + $pCrsr36 = sp + 728|0; + $res37 = sp + 732|0; + $iKey38 = sp + 424|0; + $v = sp + 432|0; + $pC39 = sp + 744|0; + $res40 = sp + 748|0; + $cnt41 = sp + 752|0; + $pMem42 = sp + 756|0; + $pFrame43 = sp + 760|0; + $pData = sp + 764|0; + $pKey = sp + 720|0; + $iKey44 = sp + 416|0; + $pC45 = sp + 688|0; + $nZero46 = sp + 684|0; + $seekResult = sp + 680|0; + $zDb = sp + 676|0; + $zTbl = sp + 672|0; + $op47 = sp + 664|0; + $iKey48 = sp + 400|0; + $pC49 = sp + 656|0; + $pC50 = sp + 652|0; + $res51 = sp + 648|0; + $nIgnore = sp + 644|0; + $pC52 = sp + 640|0; + $pC53 = sp + 636|0; + $pCrsr54 = sp + 632|0; + $n55 = sp + 628|0; + $n64 = sp + 392|0; + $pC56 = sp + 624|0; + $v57 = sp + 384|0; + $pVtab = sp + 516|0; + $pModule = sp + 508|0; + $pC58 = sp + 504|0; + $pC59 = sp + 500|0; + $pCrsr60 = sp + 496|0; + $res61 = sp + 492|0; + $pC62 = sp + 460|0; + $pCrsr63 = sp + 468|0; + $res64 = sp + 456|0; + $pC65 = sp + 464|0; + $res66 = sp + 472|0; + $pC67 = sp + 476|0; + $pCrsr68 = sp + 480|0; + $nKey = sp + 484|0; + $zKey = sp + 488|0; + $pC69 = sp + 520|0; + $pCrsr70 = sp + 524|0; + $res71 = sp + 528|0; + $r72 = sp + 532|0; + $pCrsr73 = sp + 552|0; + $pC74 = sp + 556|0; + $rowid = sp + 376|0; + $pC75 = sp + 564|0; + $res76 = sp + 568|0; + $r77 = sp + 572|0; + $iMoved = sp + 596|0; + $iCnt = sp + 600|0; + $pVdbe = sp + 604|0; + $iDb78 = sp + 608|0; + $nChange = sp + 612|0; + $pC79 = sp + 616|0; + $pgno80 = sp + 620|0; + $flags81 = sp + 768|0; + $pDb82 = sp + 772|0; + $iDb83 = sp + 776|0; + $zMaster = sp + 780|0; + $zSql = sp + 788|0; + $initData = sp + 800|0; + $nRoot = sp + 816|0; + $aRoot = sp + 820|0; + $j84 = sp + 824|0; + $nErr = sp + 828|0; + $z = sp + 832|0; + $pnErr = sp + 836|0; + $val = sp + 440|0; + $iSet = sp + 844|0; + $exists = sp + 848|0; + $nMem = sp + 852|0; + $nByte85 = sp + 856|0; + $pRt = sp + 864|0; + $pMem86 = sp + 868|0; + $pEnd = sp + 872|0; + $pFrame87 = sp + 876|0; + $pProgram = sp + 880|0; + $t88 = sp + 884|0; + $pFrame89 = sp + 888|0; + $pIn = sp + 892|0; + $pFrame90 = sp + 900|0; + $n91 = sp + 904|0; + $i92 = sp + 908|0; + $pMem93 = sp + 912|0; + $pRec94 = sp + 916|0; + $ctx95 = sp; + $apVal96 = sp + 924|0; + $pMem97 = sp + 928|0; + $i98 = sp + 932|0; + $aRes = sp + 936|0; + $pMem99 = sp + 948|0; + $pBt100 = sp + 952|0; + $pPager = sp + 956|0; + $eNew = sp + 960|0; + $eOld = sp + 964|0; + $zFilename = sp + 968|0; + $pBt101 = sp + 984|0; + $isWriteLock = sp + 1775|0; + $p1102 = sp + 988|0; + $z103 = sp + 996|0; + $pVTab = sp + 1000|0; + $pCur104 = sp + 1020|0; + $pVtabCursor = sp + 1024|0; + $pVtab105 = sp + 1028|0; + $pModule106 = sp + 1032|0; + $nArg = sp + 1040|0; + $iQuery = sp + 1044|0; + $pModule107 = sp + 1048|0; + $pQuery = sp + 1052|0; + $pArgc = sp + 1056|0; + $pVtabCursor108 = sp + 1060|0; + $pVtab109 = sp + 1064|0; + $pCur110 = sp + 1036|0; + $res111 = sp + 1016|0; + $i112 = sp + 1012|0; + $apArg = sp + 1008|0; + $pVtab113 = sp + 1004|0; + $pModule114 = sp + 992|0; + $pDest115 = sp + 980|0; + $sContext = sp + 96|0; + $pCur116 = sp + 976|0; + $pVtab117 = sp + 972|0; + $pModule118 = sp + 920|0; + $res119 = sp + 896|0; + $pCur120 = sp + 860|0; + $pVtab121 = sp + 840|0; + $pName = sp + 792|0; + $pVtab122 = sp + 784|0; + $pModule123 = sp + 592|0; + $nArg124 = sp + 560|0; + $i125 = sp + 512|0; + $rowid126 = sp + 448|0; + $apArg127 = sp + 660|0; + $pX128 = sp + 668|0; + $vtabOnConflict = sp + 1582|0; + $newMax = sp + 692|0; + $pBt129 = sp + 736|0; + $zTrace = sp + 740|0; + $z130 = sp + 696|0; + HEAP32[$0>>2] = $p; + HEAP32[$pc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$aOp>>2] = $3; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + HEAP8[$resetSchemaOnFault>>0] = 0; + $6 = HEAP32[$db>>2]|0; + $7 = (($6) + 16|0); + $8 = HEAP32[$7>>2]|0; + $9 = (($8) + 12|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + 77|0); + $12 = HEAP8[$11>>0]|0; + HEAP8[$encoding>>0] = $12; + HEAP32[$iCompare>>2] = 0; + HEAP32[$nVmStep>>2] = 0; + HEAP32[$nProgressLimit>>2] = 0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 8|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$aMem>>2] = $15; + HEAP32[$pIn1>>2] = 0; + HEAP32[$pIn2>>2] = 0; + HEAP32[$pIn3>>2] = 0; + HEAP32[$pOut>>2] = 0; + HEAP32[$aPermute>>2] = 0; + $16 = HEAP32[$db>>2]|0; + $17 = (($16) + 32|0); + $18 = $17; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = (($18) + 4)|0; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = $lastRowid; + $25 = $24; + HEAP32[$25>>2] = $20; + $26 = (($24) + 4)|0; + $27 = $26; + HEAP32[$27>>2] = $23; + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 80|0); + $30 = HEAP32[$29>>2]|0; + $31 = ($30|0)==(7); + L1: do { + if ($31) { + label = 900; + } else { + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 80|0); + HEAP32[$33>>2] = 0; + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 136|0); + $36 = $35; + $37 = $36; + HEAP32[$37>>2] = 0; + $38 = (($36) + 4)|0; + $39 = $38; + HEAP32[$39>>2] = 0; + $40 = HEAP32[$0>>2]|0; + $41 = (($40) + 20|0); + HEAP32[$41>>2] = 0; + $42 = HEAP32[$db>>2]|0; + $43 = (($42) + 436|0); + $44 = (($43) + 8|0); + HEAP32[$44>>2] = 0; + $45 = HEAP32[$db>>2]|0; + $46 = (($45) + 232|0); + $47 = HEAP32[$46>>2]|0; + $48 = ($47|0)!=(0); + L3: do { + if (!($48)) { + $49 = HEAP32[$db>>2]|0; + $50 = (($49) + 284|0); + $51 = HEAP32[$50>>2]|0; + $52 = ($51|0)!=(0|0); + do { + if ($52) { + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 108|0); + $55 = (($54) + 16|0); + $56 = HEAP32[$55>>2]|0; + HEAP32[$nProgressLimit>>2] = $56; + $57 = HEAP32[$nProgressLimit>>2]|0; + $58 = ($57|0)==(0); + $59 = HEAP32[$db>>2]|0; + $60 = (($59) + 292|0); + $61 = HEAP32[$60>>2]|0; + if ($58) { + HEAP32[$nProgressLimit>>2] = $61; + break; + } else { + $62 = HEAP32[$nProgressLimit>>2]|0; + $63 = (($62>>>0) % ($61>>>0))&-1; + HEAP32[$nProgressLimit>>2] = $63; + break; + } + } + } while(0); + $64 = HEAP32[$0>>2]|0; + $65 = (($64) + 76|0); + $66 = HEAP32[$65>>2]|0; + HEAP32[$pc>>2] = $66; + L11: while(1) { + $67 = HEAP32[$rc>>2]|0; + $68 = ($67|0)==(0); + if (!($68)) { + break L1; + } + $69 = HEAP32[$db>>2]|0; + $70 = (($69) + 64|0); + $71 = HEAP8[$70>>0]|0; + $72 = ($71<<24>>24)!=(0); + if ($72) { + label = 900; + break L1; + } + $73 = HEAP32[$nVmStep>>2]|0; + $74 = (($73) + 1)|0; + HEAP32[$nVmStep>>2] = $74; + $75 = HEAP32[$pc>>2]|0; + $76 = HEAP32[$aOp>>2]|0; + $77 = (($76) + (($75*20)|0)|0); + HEAP32[$pOp>>2] = $77; + $78 = HEAP32[$pOp>>2]|0; + $79 = (($78) + 2|0); + $80 = HEAP8[$79>>0]|0; + $81 = $80&255; + $82 = $81 & 2; + $83 = ($82|0)!=(0); + if ($83) { + $84 = HEAP32[$pOp>>2]|0; + $85 = (($84) + 8|0); + $86 = HEAP32[$85>>2]|0; + $87 = HEAP32[$aMem>>2]|0; + $88 = (($87) + (($86*40)|0)|0); + HEAP32[$pOut>>2] = $88; + $89 = HEAP32[$pOut>>2]|0; + $90 = (($89) + 28|0); + $91 = HEAP16[$90>>1]|0; + $92 = $91&65535; + $93 = $92 & 9312; + $94 = ($93|0)!=(0); + if ($94) { + $95 = HEAP32[$pOut>>2]|0; + _sqlite3VdbeMemReleaseExternal($95); + } + $96 = HEAP32[$pOut>>2]|0; + $97 = (($96) + 28|0); + HEAP16[$97>>1] = 4; + } + $98 = HEAP32[$pOp>>2]|0; + $99 = HEAP8[$98>>0]|0; + $100 = $99&255; + L21: do { + switch ($100|0) { + case 155: { + $7082 = HEAP32[$pOp>>2]|0; + $7083 = (($7082) + 8|0); + $7084 = HEAP32[$7083>>2]|0; + $7085 = ($7084|0)!=(0); + if ($7085) { + $7086 = HEAP32[$pOp>>2]|0; + $7087 = (($7086) + 8|0); + $7088 = HEAP32[$7087>>2]|0; + $7089 = (($7088) - 1)|0; + HEAP32[$pc>>2] = $7089; + } + $7090 = HEAP32[$db>>2]|0; + $7091 = (($7090) + 164|0); + $7092 = HEAP32[$7091>>2]|0; + $7093 = ($7092|0)!=(0|0); + if ($7093) { + $7094 = HEAP32[$0>>2]|0; + $7095 = (($7094) + 88|0); + $7096 = HEAP16[$7095>>1]|0; + $7097 = ($7096&65535) >>> 11; + $7098 = $7097 & 1; + $7099 = $7098&65535; + $7100 = ($7099|0)!=(0); + if (!($7100)) { + $7101 = HEAP32[$pOp>>2]|0; + $7102 = (($7101) + 16|0); + $7103 = HEAP32[$7102>>2]|0; + $7104 = ($7103|0)!=(0|0); + if ($7104) { + $7105 = HEAP32[$pOp>>2]|0; + $7106 = (($7105) + 16|0); + $7107 = HEAP32[$7106>>2]|0; + $7111 = $7107; + } else { + $7108 = HEAP32[$0>>2]|0; + $7109 = (($7108) + 168|0); + $7110 = HEAP32[$7109>>2]|0; + $7111 = $7110; + } + HEAP32[$zTrace>>2] = $7111; + $7112 = ($7111|0)!=(0|0); + if ($7112) { + $7113 = HEAP32[$0>>2]|0; + $7114 = HEAP32[$zTrace>>2]|0; + $7115 = (_sqlite3VdbeExpandSql($7113,$7114)|0); + HEAP32[$z130>>2] = $7115; + $7116 = HEAP32[$db>>2]|0; + $7117 = (($7116) + 164|0); + $7118 = HEAP32[$7117>>2]|0; + $7119 = HEAP32[$db>>2]|0; + $7120 = (($7119) + 168|0); + $7121 = HEAP32[$7120>>2]|0; + $7122 = HEAP32[$z130>>2]|0; + FUNCTION_TABLE_vii[$7118 & 7]($7121,$7122); + $7123 = HEAP32[$db>>2]|0; + $7124 = HEAP32[$z130>>2]|0; + _sqlite3DbFree($7123,$7124); + } + } + } + break; + } + case 62: case 61: case 60: case 59: { + $3812 = HEAP32[$pOp>>2]|0; + $3813 = (($3812) + 4|0); + $3814 = HEAP32[$3813>>2]|0; + $3815 = HEAP32[$0>>2]|0; + $3816 = (($3815) + 56|0); + $3817 = HEAP32[$3816>>2]|0; + $3818 = (($3817) + ($3814<<2)|0); + $3819 = HEAP32[$3818>>2]|0; + HEAP32[$pC28>>2] = $3819; + $3820 = HEAP32[$pOp>>2]|0; + $3821 = HEAP8[$3820>>0]|0; + $3822 = $3821&255; + HEAP32[$oc>>2] = $3822; + $3823 = HEAP32[$pC28>>2]|0; + $3824 = (($3823) + 25|0); + HEAP8[$3824>>0] = 0; + $3825 = HEAP32[$pC28>>2]|0; + $3826 = (($3825) + 28|0); + $3827 = HEAP8[$3826>>0]|0; + $3828 = ($3827&255) >>> 2; + $3829 = $3828 & 1; + $3830 = $3829&255; + $3831 = ($3830|0)!=(0); + $3832 = HEAP32[$pOp>>2]|0; + if ($3831) { + $3833 = (($3832) + 12|0); + $3834 = HEAP32[$3833>>2]|0; + $3835 = HEAP32[$aMem>>2]|0; + $3836 = (($3835) + (($3834*40)|0)|0); + HEAP32[$pIn3>>2] = $3836; + $3837 = HEAP32[$pIn3>>2]|0; + _applyNumericAffinity($3837); + $3838 = HEAP32[$pIn3>>2]|0; + $3839 = (_sqlite3VdbeIntValue($3838)|0); + $3840 = tempRet0; + $3841 = $iKey; + $3842 = $3841; + HEAP32[$3842>>2] = $3839; + $3843 = (($3841) + 4)|0; + $3844 = $3843; + HEAP32[$3844>>2] = $3840; + $3845 = HEAP32[$pC28>>2]|0; + $3846 = (($3845) + 26|0); + HEAP8[$3846>>0] = 0; + $3847 = HEAP32[$pIn3>>2]|0; + $3848 = (($3847) + 28|0); + $3849 = HEAP16[$3848>>1]|0; + $3850 = $3849&65535; + $3851 = $3850 & 4; + $3852 = ($3851|0)==(0); + do { + if ($3852) { + $3853 = HEAP32[$pIn3>>2]|0; + $3854 = (($3853) + 28|0); + $3855 = HEAP16[$3854>>1]|0; + $3856 = $3855&65535; + $3857 = $3856 & 8; + $3858 = ($3857|0)==(0); + if ($3858) { + $3859 = HEAP32[$pOp>>2]|0; + $3860 = (($3859) + 8|0); + $3861 = HEAP32[$3860>>2]|0; + $3862 = (($3861) - 1)|0; + HEAP32[$pc>>2] = $3862; + break L21; + } + $3863 = HEAP32[$pIn3>>2]|0; + $3864 = (($3863) + 8|0); + $3865 = +HEAPF64[$3864>>3]; + $3866 = $iKey; + $3867 = $3866; + $3868 = HEAP32[$3867>>2]|0; + $3869 = (($3866) + 4)|0; + $3870 = $3869; + $3871 = HEAP32[$3870>>2]|0; + $3872 = (+($3868>>>0)) + (4294967296.0*(+($3871|0))); + $3873 = $3865 < $3872; + if ($3873) { + $3874 = HEAP32[$oc>>2]|0; + $3875 = $3874 & 1; + $3876 = ($3875|0)==(0); + if (!($3876)) { + break; + } + $3877 = HEAP32[$oc>>2]|0; + $3878 = (($3877) + -1)|0; + HEAP32[$oc>>2] = $3878; + break; + } + $3879 = HEAP32[$pIn3>>2]|0; + $3880 = (($3879) + 8|0); + $3881 = +HEAPF64[$3880>>3]; + $3882 = $iKey; + $3883 = $3882; + $3884 = HEAP32[$3883>>2]|0; + $3885 = (($3882) + 4)|0; + $3886 = $3885; + $3887 = HEAP32[$3886>>2]|0; + $3888 = (+($3884>>>0)) + (4294967296.0*(+($3887|0))); + $3889 = $3881 > $3888; + if ($3889) { + $3890 = HEAP32[$oc>>2]|0; + $3891 = $3890 & 1; + $3892 = ($3891|0)==(1); + if ($3892) { + $3893 = HEAP32[$oc>>2]|0; + $3894 = (($3893) + 1)|0; + HEAP32[$oc>>2] = $3894; + } + } + } + } while(0); + $3895 = HEAP32[$pC28>>2]|0; + $3896 = HEAP32[$3895>>2]|0; + $3897 = $iKey; + $3898 = $3897; + $3899 = HEAP32[$3898>>2]|0; + $3900 = (($3897) + 4)|0; + $3901 = $3900; + $3902 = HEAP32[$3901>>2]|0; + $3903 = (_sqlite3BtreeMovetoUnpacked($3896,0,$3899,$3902,0,$res27)|0); + HEAP32[$rc>>2] = $3903; + $3904 = HEAP32[$rc>>2]|0; + $3905 = ($3904|0)!=(0); + if ($3905) { + break L11; + } + $3906 = HEAP32[$res27>>2]|0; + $3907 = ($3906|0)==(0); + if ($3907) { + $3908 = HEAP32[$pC28>>2]|0; + $3909 = (($3908) + 26|0); + HEAP8[$3909>>0] = 1; + $3910 = $iKey; + $3911 = $3910; + $3912 = HEAP32[$3911>>2]|0; + $3913 = (($3910) + 4)|0; + $3914 = $3913; + $3915 = HEAP32[$3914>>2]|0; + $3916 = HEAP32[$pC28>>2]|0; + $3917 = (($3916) + 56|0); + $3918 = $3917; + $3919 = $3918; + HEAP32[$3919>>2] = $3912; + $3920 = (($3918) + 4)|0; + $3921 = $3920; + HEAP32[$3921>>2] = $3915; + } + } else { + $3922 = (($3832) + 16|0); + $3923 = HEAP32[$3922>>2]|0; + HEAP32[$nField29>>2] = $3923; + $3924 = HEAP32[$pC28>>2]|0; + $3925 = (($3924) + 8|0); + $3926 = HEAP32[$3925>>2]|0; + HEAP32[$r>>2] = $3926; + $3927 = HEAP32[$nField29>>2]|0; + $3928 = $3927&65535; + $3929 = (($r) + 4|0); + HEAP16[$3929>>1] = $3928; + $3930 = HEAP32[$oc>>2]|0; + $3931 = (($3930) - 59)|0; + $3932 = 1 & $3931; + $3933 = ($3932|0)!=(0); + $3934 = $3933 ? -1 : 1; + $3935 = $3934&255; + $3936 = (($r) + 6|0); + HEAP8[$3936>>0] = $3935; + $3937 = HEAP32[$pOp>>2]|0; + $3938 = (($3937) + 12|0); + $3939 = HEAP32[$3938>>2]|0; + $3940 = HEAP32[$aMem>>2]|0; + $3941 = (($3940) + (($3939*40)|0)|0); + $3942 = (($r) + 8|0); + HEAP32[$3942>>2] = $3941; + $3943 = (($r) + 8|0); + $3944 = HEAP32[$3943>>2]|0; + $3945 = (($3944) + 28|0); + $3946 = HEAP16[$3945>>1]|0; + $3947 = $3946&65535; + $3948 = $3947 & 16384; + $3949 = ($3948|0)!=(0); + if ($3949) { + $3950 = (($r) + 8|0); + $3951 = HEAP32[$3950>>2]|0; + (_sqlite3VdbeMemExpandBlob($3951)|0); + } + $3952 = HEAP32[$pC28>>2]|0; + $3953 = HEAP32[$3952>>2]|0; + $3954 = (_sqlite3BtreeMovetoUnpacked($3953,$r,0,0,0,$res27)|0); + HEAP32[$rc>>2] = $3954; + $3955 = HEAP32[$rc>>2]|0; + $3956 = ($3955|0)!=(0); + if ($3956) { + break L11; + } + $3957 = HEAP32[$pC28>>2]|0; + $3958 = (($3957) + 26|0); + HEAP8[$3958>>0] = 0; + } + $3959 = HEAP32[$pC28>>2]|0; + $3960 = (($3959) + 27|0); + HEAP8[$3960>>0] = 0; + $3961 = HEAP32[$pC28>>2]|0; + $3962 = (($3961) + 68|0); + HEAP32[$3962>>2] = 0; + $3963 = HEAP32[$oc>>2]|0; + $3964 = ($3963|0)>=(61); + $3965 = HEAP32[$res27>>2]|0; + L56: do { + if ($3964) { + $3966 = ($3965|0)<(0); + do { + if (!($3966)) { + $3967 = HEAP32[$res27>>2]|0; + $3968 = ($3967|0)==(0); + if ($3968) { + $3969 = HEAP32[$oc>>2]|0; + $3970 = ($3969|0)==(62); + if ($3970) { + break; + } + } + HEAP32[$res27>>2] = 0; + break L56; + } + } while(0); + HEAP32[$res27>>2] = 0; + $3971 = HEAP32[$pC28>>2]|0; + $3972 = HEAP32[$3971>>2]|0; + $3973 = (_sqlite3BtreeNext($3972,$res27)|0); + HEAP32[$rc>>2] = $3973; + $3974 = HEAP32[$rc>>2]|0; + $3975 = ($3974|0)!=(0); + if ($3975) { + break L11; + } + $3976 = HEAP32[$pC28>>2]|0; + $3977 = (($3976) + 26|0); + HEAP8[$3977>>0] = 0; + } else { + $3978 = ($3965|0)>(0); + do { + if (!($3978)) { + $3979 = HEAP32[$res27>>2]|0; + $3980 = ($3979|0)==(0); + if ($3980) { + $3981 = HEAP32[$oc>>2]|0; + $3982 = ($3981|0)==(59); + if ($3982) { + break; + } + } + $3990 = HEAP32[$pC28>>2]|0; + $3991 = HEAP32[$3990>>2]|0; + $3992 = (_sqlite3BtreeEof($3991)|0); + HEAP32[$res27>>2] = $3992; + break L56; + } + } while(0); + HEAP32[$res27>>2] = 0; + $3983 = HEAP32[$pC28>>2]|0; + $3984 = HEAP32[$3983>>2]|0; + $3985 = (_sqlite3BtreePrevious($3984,$res27)|0); + HEAP32[$rc>>2] = $3985; + $3986 = HEAP32[$rc>>2]|0; + $3987 = ($3986|0)!=(0); + if ($3987) { + break L11; + } + $3988 = HEAP32[$pC28>>2]|0; + $3989 = (($3988) + 26|0); + HEAP8[$3989>>0] = 0; + } + } while(0); + $3993 = HEAP32[$res27>>2]|0; + $3994 = ($3993|0)!=(0); + if ($3994) { + $3995 = HEAP32[$pOp>>2]|0; + $3996 = (($3995) + 8|0); + $3997 = HEAP32[$3996>>2]|0; + $3998 = (($3997) - 1)|0; + HEAP32[$pc>>2] = $3998; + } + break; + } + case 63: { + $3999 = HEAP32[$pOp>>2]|0; + $4000 = (($3999) + 4|0); + $4001 = HEAP32[$4000>>2]|0; + $4002 = HEAP32[$0>>2]|0; + $4003 = (($4002) + 56|0); + $4004 = HEAP32[$4003>>2]|0; + $4005 = (($4004) + ($4001<<2)|0); + $4006 = HEAP32[$4005>>2]|0; + HEAP32[$pC30>>2] = $4006; + $4007 = HEAP32[$pC30>>2]|0; + $4008 = (($4007) + 25|0); + HEAP8[$4008>>0] = 0; + $4009 = HEAP32[$pOp>>2]|0; + $4010 = (($4009) + 8|0); + $4011 = HEAP32[$4010>>2]|0; + $4012 = HEAP32[$aMem>>2]|0; + $4013 = (($4012) + (($4011*40)|0)|0); + HEAP32[$pIn2>>2] = $4013; + $4014 = HEAP32[$pIn2>>2]|0; + $4015 = (_sqlite3VdbeIntValue($4014)|0); + $4016 = tempRet0; + $4017 = HEAP32[$pC30>>2]|0; + $4018 = (($4017) + 48|0); + $4019 = $4018; + $4020 = $4019; + HEAP32[$4020>>2] = $4015; + $4021 = (($4019) + 4)|0; + $4022 = $4021; + HEAP32[$4022>>2] = $4016; + $4023 = HEAP32[$pC30>>2]|0; + $4024 = (($4023) + 26|0); + HEAP8[$4024>>0] = 0; + $4025 = HEAP32[$pC30>>2]|0; + $4026 = (($4025) + 27|0); + HEAP8[$4026>>0] = 1; + break; + } + case 66: case 65: case 64: { + $4027 = HEAP32[$pOp>>2]|0; + $4028 = (($4027) + 4|0); + $4029 = HEAP32[$4028>>2]|0; + $4030 = HEAP32[$0>>2]|0; + $4031 = (($4030) + 56|0); + $4032 = HEAP32[$4031>>2]|0; + $4033 = (($4032) + ($4029<<2)|0); + $4034 = HEAP32[$4033>>2]|0; + HEAP32[$pC32>>2] = $4034; + $4035 = HEAP32[$pOp>>2]|0; + $4036 = (($4035) + 12|0); + $4037 = HEAP32[$4036>>2]|0; + $4038 = HEAP32[$aMem>>2]|0; + $4039 = (($4038) + (($4037*40)|0)|0); + HEAP32[$pIn3>>2] = $4039; + HEAP32[$pFree>>2] = 0; + $4040 = HEAP32[$pOp>>2]|0; + $4041 = (($4040) + 16|0); + $4042 = HEAP32[$4041>>2]|0; + $4043 = ($4042|0)>(0); + $4044 = HEAP32[$pC32>>2]|0; + $4045 = (($4044) + 8|0); + $4046 = HEAP32[$4045>>2]|0; + if ($4043) { + HEAP32[$r34>>2] = $4046; + $4047 = HEAP32[$pOp>>2]|0; + $4048 = (($4047) + 16|0); + $4049 = HEAP32[$4048>>2]|0; + $4050 = $4049&65535; + $4051 = (($r34) + 4|0); + HEAP16[$4051>>1] = $4050; + $4052 = HEAP32[$pIn3>>2]|0; + $4053 = (($r34) + 8|0); + HEAP32[$4053>>2] = $4052; + HEAP32[$ii31>>2] = 0; + while(1) { + $4054 = HEAP32[$ii31>>2]|0; + $4055 = (($r34) + 4|0); + $4056 = HEAP16[$4055>>1]|0; + $4057 = $4056&65535; + $4058 = ($4054|0)<($4057|0); + if (!($4058)) { + break; + } + $4059 = HEAP32[$ii31>>2]|0; + $4060 = (($r34) + 8|0); + $4061 = HEAP32[$4060>>2]|0; + $4062 = (($4061) + (($4059*40)|0)|0); + $4063 = (($4062) + 28|0); + $4064 = HEAP16[$4063>>1]|0; + $4065 = $4064&65535; + $4066 = $4065 & 16384; + $4067 = ($4066|0)!=(0); + if ($4067) { + $4068 = HEAP32[$ii31>>2]|0; + $4069 = (($r34) + 8|0); + $4070 = HEAP32[$4069>>2]|0; + $4071 = (($4070) + (($4068*40)|0)|0); + (_sqlite3VdbeMemExpandBlob($4071)|0); + } + $4072 = HEAP32[$ii31>>2]|0; + $4073 = (($4072) + 1)|0; + HEAP32[$ii31>>2] = $4073; + } + HEAP32[$pIdxKey>>2] = $r34; + } else { + $4074 = (_sqlite3VdbeAllocUnpackedRecord($4046,$aTempRec,191,$pFree)|0); + HEAP32[$pIdxKey>>2] = $4074; + $4075 = HEAP32[$pIdxKey>>2]|0; + $4076 = ($4075|0)==(0|0); + if ($4076) { + label = 900; + break L1; + } + $4077 = HEAP32[$pC32>>2]|0; + $4078 = (($4077) + 8|0); + $4079 = HEAP32[$4078>>2]|0; + $4080 = HEAP32[$pIn3>>2]|0; + $4081 = (($4080) + 24|0); + $4082 = HEAP32[$4081>>2]|0; + $4083 = HEAP32[$pIn3>>2]|0; + $4084 = (($4083) + 4|0); + $4085 = HEAP32[$4084>>2]|0; + $4086 = HEAP32[$pIdxKey>>2]|0; + _sqlite3VdbeRecordUnpack($4079,$4082,$4085,$4086); + } + $4087 = HEAP32[$pIdxKey>>2]|0; + $4088 = (($4087) + 6|0); + HEAP8[$4088>>0] = 0; + $4089 = HEAP32[$pOp>>2]|0; + $4090 = HEAP8[$4089>>0]|0; + $4091 = $4090&255; + $4092 = ($4091|0)==(64); + L89: do { + if ($4092) { + HEAP32[$ii31>>2] = 0; + while(1) { + $4093 = HEAP32[$ii31>>2]|0; + $4094 = (($r34) + 4|0); + $4095 = HEAP16[$4094>>1]|0; + $4096 = $4095&65535; + $4097 = ($4093|0)<($4096|0); + if (!($4097)) { + break L89; + } + $4098 = HEAP32[$ii31>>2]|0; + $4099 = (($r34) + 8|0); + $4100 = HEAP32[$4099>>2]|0; + $4101 = (($4100) + (($4098*40)|0)|0); + $4102 = (($4101) + 28|0); + $4103 = HEAP16[$4102>>1]|0; + $4104 = $4103&65535; + $4105 = $4104 & 1; + $4106 = ($4105|0)!=(0); + if ($4106) { + break; + } + $4111 = HEAP32[$ii31>>2]|0; + $4112 = (($4111) + 1)|0; + HEAP32[$ii31>>2] = $4112; + } + $4107 = HEAP32[$pOp>>2]|0; + $4108 = (($4107) + 8|0); + $4109 = HEAP32[$4108>>2]|0; + $4110 = (($4109) - 1)|0; + HEAP32[$pc>>2] = $4110; + } + } while(0); + $4113 = HEAP32[$pC32>>2]|0; + $4114 = HEAP32[$4113>>2]|0; + $4115 = HEAP32[$pIdxKey>>2]|0; + $4116 = (_sqlite3BtreeMovetoUnpacked($4114,$4115,0,0,0,$res33)|0); + HEAP32[$rc>>2] = $4116; + $4117 = HEAP32[$pOp>>2]|0; + $4118 = (($4117) + 16|0); + $4119 = HEAP32[$4118>>2]|0; + $4120 = ($4119|0)==(0); + if ($4120) { + $4121 = HEAP32[$db>>2]|0; + $4122 = HEAP32[$pFree>>2]|0; + _sqlite3DbFree($4121,$4122); + } + $4123 = HEAP32[$rc>>2]|0; + $4124 = ($4123|0)!=(0); + if (!($4124)) { + $4125 = HEAP32[$res33>>2]|0; + $4126 = HEAP32[$pC32>>2]|0; + $4127 = (($4126) + 12|0); + HEAP32[$4127>>2] = $4125; + $4128 = HEAP32[$res33>>2]|0; + $4129 = ($4128|0)==(0); + $4130 = $4129&1; + HEAP32[$alreadyExists>>2] = $4130; + $4131 = HEAP32[$alreadyExists>>2]|0; + $4132 = (1 - ($4131))|0; + $4133 = $4132&255; + $4134 = HEAP32[$pC32>>2]|0; + $4135 = (($4134) + 25|0); + HEAP8[$4135>>0] = $4133; + $4136 = HEAP32[$pC32>>2]|0; + $4137 = (($4136) + 27|0); + HEAP8[$4137>>0] = 0; + $4138 = HEAP32[$pC32>>2]|0; + $4139 = (($4138) + 68|0); + HEAP32[$4139>>2] = 0; + $4140 = HEAP32[$pOp>>2]|0; + $4141 = HEAP8[$4140>>0]|0; + $4142 = $4141&255; + $4143 = ($4142|0)==(66); + $4144 = HEAP32[$alreadyExists>>2]|0; + $4145 = ($4144|0)!=(0); + if ($4143) { + if (!($4145)) { + break L21; + } + $4146 = HEAP32[$pOp>>2]|0; + $4147 = (($4146) + 8|0); + $4148 = HEAP32[$4147>>2]|0; + $4149 = (($4148) - 1)|0; + HEAP32[$pc>>2] = $4149; + break L21; + } else { + if ($4145) { + break L21; + } + $4150 = HEAP32[$pOp>>2]|0; + $4151 = (($4150) + 8|0); + $4152 = HEAP32[$4151>>2]|0; + $4153 = (($4152) - 1)|0; + HEAP32[$pc>>2] = $4153; + break L21; + } + } + break; + } + case 67: { + $4154 = HEAP32[$pOp>>2]|0; + $4155 = (($4154) + 12|0); + $4156 = HEAP32[$4155>>2]|0; + $4157 = HEAP32[$aMem>>2]|0; + $4158 = (($4157) + (($4156*40)|0)|0); + HEAP32[$pIn3>>2] = $4158; + $4159 = HEAP32[$pOp>>2]|0; + $4160 = (($4159) + 4|0); + $4161 = HEAP32[$4160>>2]|0; + $4162 = HEAP32[$0>>2]|0; + $4163 = (($4162) + 56|0); + $4164 = HEAP32[$4163>>2]|0; + $4165 = (($4164) + ($4161<<2)|0); + $4166 = HEAP32[$4165>>2]|0; + HEAP32[$pC35>>2] = $4166; + $4167 = HEAP32[$pC35>>2]|0; + $4168 = HEAP32[$4167>>2]|0; + HEAP32[$pCrsr36>>2] = $4168; + HEAP32[$res37>>2] = 0; + $4169 = HEAP32[$pIn3>>2]|0; + $4170 = (($4169) + 16|0); + $4171 = $4170; + $4172 = $4171; + $4173 = HEAP32[$4172>>2]|0; + $4174 = (($4171) + 4)|0; + $4175 = $4174; + $4176 = HEAP32[$4175>>2]|0; + $4177 = $iKey38; + $4178 = $4177; + HEAP32[$4178>>2] = $4173; + $4179 = (($4177) + 4)|0; + $4180 = $4179; + HEAP32[$4180>>2] = $4176; + $4181 = HEAP32[$pCrsr36>>2]|0; + $4182 = $iKey38; + $4183 = $4182; + $4184 = HEAP32[$4183>>2]|0; + $4185 = (($4182) + 4)|0; + $4186 = $4185; + $4187 = HEAP32[$4186>>2]|0; + $4188 = (_sqlite3BtreeMovetoUnpacked($4181,0,$4184,$4187,0,$res37)|0); + HEAP32[$rc>>2] = $4188; + $4189 = HEAP32[$pIn3>>2]|0; + $4190 = (($4189) + 16|0); + $4191 = $4190; + $4192 = $4191; + $4193 = HEAP32[$4192>>2]|0; + $4194 = (($4191) + 4)|0; + $4195 = $4194; + $4196 = HEAP32[$4195>>2]|0; + $4197 = HEAP32[$pC35>>2]|0; + $4198 = (($4197) + 56|0); + $4199 = $4198; + $4200 = $4199; + HEAP32[$4200>>2] = $4193; + $4201 = (($4199) + 4)|0; + $4202 = $4201; + HEAP32[$4202>>2] = $4196; + $4203 = HEAP32[$res37>>2]|0; + $4204 = ($4203|0)==(0); + $4205 = $4204 ? 1 : 0; + $4206 = $4205&255; + $4207 = HEAP32[$pC35>>2]|0; + $4208 = (($4207) + 26|0); + HEAP8[$4208>>0] = $4206; + $4209 = HEAP32[$pC35>>2]|0; + $4210 = (($4209) + 25|0); + HEAP8[$4210>>0] = 0; + $4211 = HEAP32[$pC35>>2]|0; + $4212 = (($4211) + 68|0); + HEAP32[$4212>>2] = 0; + $4213 = HEAP32[$pC35>>2]|0; + $4214 = (($4213) + 27|0); + HEAP8[$4214>>0] = 0; + $4215 = HEAP32[$res37>>2]|0; + $4216 = ($4215|0)!=(0); + if ($4216) { + $4217 = HEAP32[$pOp>>2]|0; + $4218 = (($4217) + 8|0); + $4219 = HEAP32[$4218>>2]|0; + $4220 = (($4219) - 1)|0; + HEAP32[$pc>>2] = $4220; + } + $4221 = HEAP32[$res37>>2]|0; + $4222 = HEAP32[$pC35>>2]|0; + $4223 = (($4222) + 12|0); + HEAP32[$4223>>2] = $4221; + break; + } + case 68: { + $4224 = HEAP32[$pOp>>2]|0; + $4225 = (($4224) + 4|0); + $4226 = HEAP32[$4225>>2]|0; + $4227 = HEAP32[$0>>2]|0; + $4228 = (($4227) + 56|0); + $4229 = HEAP32[$4228>>2]|0; + $4230 = (($4229) + ($4226<<2)|0); + $4231 = HEAP32[$4230>>2]|0; + $4232 = (($4231) + 40|0); + $4233 = $4232; + $4234 = $4233; + $4235 = HEAP32[$4234>>2]|0; + $4236 = (($4233) + 4)|0; + $4237 = $4236; + $4238 = HEAP32[$4237>>2]|0; + $4239 = (_i64Add(($4235|0),($4238|0),1,0)|0); + $4240 = tempRet0; + $4241 = $4232; + $4242 = $4241; + HEAP32[$4242>>2] = $4239; + $4243 = (($4241) + 4)|0; + $4244 = $4243; + HEAP32[$4244>>2] = $4240; + $4245 = HEAP32[$pOut>>2]|0; + $4246 = (($4245) + 16|0); + $4247 = $4246; + $4248 = $4247; + HEAP32[$4248>>2] = $4235; + $4249 = (($4247) + 4)|0; + $4250 = $4249; + HEAP32[$4250>>2] = $4238; + break; + } + case 69: { + $4251 = $v; + $4252 = $4251; + HEAP32[$4252>>2] = 0; + $4253 = (($4251) + 4)|0; + $4254 = $4253; + HEAP32[$4254>>2] = 0; + HEAP32[$res40>>2] = 0; + $4255 = HEAP32[$pOp>>2]|0; + $4256 = (($4255) + 4|0); + $4257 = HEAP32[$4256>>2]|0; + $4258 = HEAP32[$0>>2]|0; + $4259 = (($4258) + 56|0); + $4260 = HEAP32[$4259>>2]|0; + $4261 = (($4260) + ($4257<<2)|0); + $4262 = HEAP32[$4261>>2]|0; + HEAP32[$pC39>>2] = $4262; + $4263 = HEAP32[$pC39>>2]|0; + $4264 = HEAP32[$4263>>2]|0; + $4265 = ($4264|0)==(0|0); + if (!($4265)) { + $4266 = HEAP32[$pC39>>2]|0; + $4267 = (($4266) + 28|0); + $4268 = HEAP8[$4267>>0]|0; + $4269 = ($4268&255) >>> 1; + $4270 = $4269 & 1; + $4271 = $4270&255; + $4272 = ($4271|0)!=(0); + do { + if (!($4272)) { + $4273 = HEAP32[$pC39>>2]|0; + $4274 = HEAP32[$4273>>2]|0; + $4275 = (_sqlite3BtreeLast($4274,$res40)|0); + HEAP32[$rc>>2] = $4275; + $4276 = HEAP32[$rc>>2]|0; + $4277 = ($4276|0)!=(0); + if ($4277) { + break L11; + } + $4278 = HEAP32[$res40>>2]|0; + $4279 = ($4278|0)!=(0); + if ($4279) { + $4280 = $v; + $4281 = $4280; + HEAP32[$4281>>2] = 1; + $4282 = (($4280) + 4)|0; + $4283 = $4282; + HEAP32[$4283>>2] = 0; + break; + } + $4284 = HEAP32[$pC39>>2]|0; + $4285 = HEAP32[$4284>>2]|0; + $4286 = (_sqlite3BtreeKeySize($4285,$v)|0); + HEAP32[$rc>>2] = $4286; + $4287 = $v; + $4288 = $4287; + $4289 = HEAP32[$4288>>2]|0; + $4290 = (($4287) + 4)|0; + $4291 = $4290; + $4292 = HEAP32[$4291>>2]|0; + $4293 = ($4292|0)>(2147483647); + $4294 = ($4292|0)==(2147483647); + $4295 = ($4289>>>0)>=(4294967295); + $4296 = $4294 & $4295; + $4297 = $4293 | $4296; + if ($4297) { + $4298 = HEAP32[$pC39>>2]|0; + $4299 = (($4298) + 28|0); + $4300 = HEAP8[$4299>>0]|0; + $4301 = $4300 & -3; + $4302 = $4301 | 2; + HEAP8[$4299>>0] = $4302; + break; + } else { + $4303 = $v; + $4304 = $4303; + $4305 = HEAP32[$4304>>2]|0; + $4306 = (($4303) + 4)|0; + $4307 = $4306; + $4308 = HEAP32[$4307>>2]|0; + $4309 = (_i64Add(($4305|0),($4308|0),1,0)|0); + $4310 = tempRet0; + $4311 = $v; + $4312 = $4311; + HEAP32[$4312>>2] = $4309; + $4313 = (($4311) + 4)|0; + $4314 = $4313; + HEAP32[$4314>>2] = $4310; + break; + } + } + } while(0); + $4315 = HEAP32[$pOp>>2]|0; + $4316 = (($4315) + 12|0); + $4317 = HEAP32[$4316>>2]|0; + $4318 = ($4317|0)!=(0); + if ($4318) { + $4319 = HEAP32[$0>>2]|0; + $4320 = (($4319) + 176|0); + $4321 = HEAP32[$4320>>2]|0; + $4322 = ($4321|0)!=(0|0); + if ($4322) { + $4323 = HEAP32[$0>>2]|0; + $4324 = (($4323) + 176|0); + $4325 = HEAP32[$4324>>2]|0; + HEAP32[$pFrame43>>2] = $4325; + while(1) { + $4326 = HEAP32[$pFrame43>>2]|0; + $4327 = (($4326) + 4|0); + $4328 = HEAP32[$4327>>2]|0; + $4329 = ($4328|0)!=(0|0); + if (!($4329)) { + break; + } + $4330 = HEAP32[$pFrame43>>2]|0; + $4331 = (($4330) + 4|0); + $4332 = HEAP32[$4331>>2]|0; + HEAP32[$pFrame43>>2] = $4332; + } + $4333 = HEAP32[$pOp>>2]|0; + $4334 = (($4333) + 12|0); + $4335 = HEAP32[$4334>>2]|0; + $4336 = HEAP32[$pFrame43>>2]|0; + $4337 = (($4336) + 12|0); + $4338 = HEAP32[$4337>>2]|0; + $4339 = (($4338) + (($4335*40)|0)|0); + HEAP32[$pMem42>>2] = $4339; + } else { + $4340 = HEAP32[$pOp>>2]|0; + $4341 = (($4340) + 12|0); + $4342 = HEAP32[$4341>>2]|0; + $4343 = HEAP32[$aMem>>2]|0; + $4344 = (($4343) + (($4342*40)|0)|0); + HEAP32[$pMem42>>2] = $4344; + } + $4345 = HEAP32[$pMem42>>2]|0; + (_sqlite3VdbeMemIntegerify($4345)|0); + $4346 = HEAP32[$pMem42>>2]|0; + $4347 = (($4346) + 16|0); + $4348 = $4347; + $4349 = $4348; + $4350 = HEAP32[$4349>>2]|0; + $4351 = (($4348) + 4)|0; + $4352 = $4351; + $4353 = HEAP32[$4352>>2]|0; + $4354 = ($4350|0)==(-1); + $4355 = ($4353|0)==(2147483647); + $4356 = $4354 & $4355; + if ($4356) { + label = 572; + break L11; + } + $4357 = HEAP32[$pC39>>2]|0; + $4358 = (($4357) + 28|0); + $4359 = HEAP8[$4358>>0]|0; + $4360 = ($4359&255) >>> 1; + $4361 = $4360 & 1; + $4362 = $4361&255; + $4363 = ($4362|0)!=(0); + if ($4363) { + label = 572; + break L11; + } + $4364 = $v; + $4365 = $4364; + $4366 = HEAP32[$4365>>2]|0; + $4367 = (($4364) + 4)|0; + $4368 = $4367; + $4369 = HEAP32[$4368>>2]|0; + $4370 = HEAP32[$pMem42>>2]|0; + $4371 = (($4370) + 16|0); + $4372 = $4371; + $4373 = $4372; + $4374 = HEAP32[$4373>>2]|0; + $4375 = (($4372) + 4)|0; + $4376 = $4375; + $4377 = HEAP32[$4376>>2]|0; + $4378 = (_i64Add(($4374|0),($4377|0),1,0)|0); + $4379 = tempRet0; + $4380 = ($4369|0)<($4379|0); + $4381 = ($4369|0)==($4379|0); + $4382 = ($4366>>>0)<($4378>>>0); + $4383 = $4381 & $4382; + $4384 = $4380 | $4383; + if ($4384) { + $4385 = HEAP32[$pMem42>>2]|0; + $4386 = (($4385) + 16|0); + $4387 = $4386; + $4388 = $4387; + $4389 = HEAP32[$4388>>2]|0; + $4390 = (($4387) + 4)|0; + $4391 = $4390; + $4392 = HEAP32[$4391>>2]|0; + $4393 = (_i64Add(($4389|0),($4392|0),1,0)|0); + $4394 = tempRet0; + $4395 = $v; + $4396 = $4395; + HEAP32[$4396>>2] = $4393; + $4397 = (($4395) + 4)|0; + $4398 = $4397; + HEAP32[$4398>>2] = $4394; + } + $4399 = $v; + $4400 = $4399; + $4401 = HEAP32[$4400>>2]|0; + $4402 = (($4399) + 4)|0; + $4403 = $4402; + $4404 = HEAP32[$4403>>2]|0; + $4405 = HEAP32[$pMem42>>2]|0; + $4406 = (($4405) + 16|0); + $4407 = $4406; + $4408 = $4407; + HEAP32[$4408>>2] = $4401; + $4409 = (($4407) + 4)|0; + $4410 = $4409; + HEAP32[$4410>>2] = $4404; + } + $4411 = HEAP32[$pC39>>2]|0; + $4412 = (($4411) + 28|0); + $4413 = HEAP8[$4412>>0]|0; + $4414 = ($4413&255) >>> 1; + $4415 = $4414 & 1; + $4416 = $4415&255; + $4417 = ($4416|0)!=(0); + if ($4417) { + $4418 = $lastRowid; + $4419 = $4418; + $4420 = HEAP32[$4419>>2]|0; + $4421 = (($4418) + 4)|0; + $4422 = $4421; + $4423 = HEAP32[$4422>>2]|0; + $4424 = $v; + $4425 = $4424; + HEAP32[$4425>>2] = $4420; + $4426 = (($4424) + 4)|0; + $4427 = $4426; + HEAP32[$4427>>2] = $4423; + $4428 = $v; + $4429 = $4428; + $4430 = HEAP32[$4429>>2]|0; + $4431 = (($4428) + 4)|0; + $4432 = $4431; + $4433 = HEAP32[$4432>>2]|0; + $4434 = $4433 & 1073741823; + $4435 = $v; + $4436 = $4435; + HEAP32[$4436>>2] = $4430; + $4437 = (($4435) + 4)|0; + $4438 = $4437; + HEAP32[$4438>>2] = $4434; + $4439 = $v; + $4440 = $4439; + $4441 = HEAP32[$4440>>2]|0; + $4442 = (($4439) + 4)|0; + $4443 = $4442; + $4444 = HEAP32[$4443>>2]|0; + $4445 = (_i64Add(($4441|0),($4444|0),1,0)|0); + $4446 = tempRet0; + $4447 = $v; + $4448 = $4447; + HEAP32[$4448>>2] = $4445; + $4449 = (($4447) + 4)|0; + $4450 = $4449; + HEAP32[$4450>>2] = $4446; + HEAP32[$cnt41>>2] = 0; + while(1) { + $4451 = HEAP32[$pC39>>2]|0; + $4452 = HEAP32[$4451>>2]|0; + $4453 = $v; + $4454 = $4453; + $4455 = HEAP32[$4454>>2]|0; + $4456 = (($4453) + 4)|0; + $4457 = $4456; + $4458 = HEAP32[$4457>>2]|0; + $4459 = (_sqlite3BtreeMovetoUnpacked($4452,0,$4455,$4458,0,$res40)|0); + HEAP32[$rc>>2] = $4459; + $4460 = ($4459|0)==(0); + $4461 = HEAP32[$res40>>2]|0; + $4462 = ($4461|0)==(0); + $or$cond = $4460 & $4462; + if (!($or$cond)) { + break; + } + $4463 = HEAP32[$cnt41>>2]|0; + $4464 = (($4463) + 1)|0; + HEAP32[$cnt41>>2] = $4464; + $4465 = ($4464|0)<(100); + if (!($4465)) { + break; + } + _sqlite3_randomness(8,$v); + $4466 = HEAP32[$cnt41>>2]|0; + $4467 = ($4466|0)<(5); + $4468 = $v; + $4469 = $4468; + $4470 = HEAP32[$4469>>2]|0; + $4471 = (($4468) + 4)|0; + $4472 = $4471; + $4473 = HEAP32[$4472>>2]|0; + if ($4467) { + $4474 = $4470 & 16777215; + $4475 = $v; + $4476 = $4475; + HEAP32[$4476>>2] = $4474; + $4477 = (($4475) + 4)|0; + $4478 = $4477; + HEAP32[$4478>>2] = 0; + } else { + $4479 = $4473 & 1073741823; + $4480 = $v; + $4481 = $4480; + HEAP32[$4481>>2] = $4470; + $4482 = (($4480) + 4)|0; + $4483 = $4482; + HEAP32[$4483>>2] = $4479; + } + $4484 = $v; + $4485 = $4484; + $4486 = HEAP32[$4485>>2]|0; + $4487 = (($4484) + 4)|0; + $4488 = $4487; + $4489 = HEAP32[$4488>>2]|0; + $4490 = (_i64Add(($4486|0),($4489|0),1,0)|0); + $4491 = tempRet0; + $4492 = $v; + $4493 = $4492; + HEAP32[$4493>>2] = $4490; + $4494 = (($4492) + 4)|0; + $4495 = $4494; + HEAP32[$4495>>2] = $4491; + } + $4496 = HEAP32[$rc>>2]|0; + $4497 = ($4496|0)==(0); + if ($4497) { + $4498 = HEAP32[$res40>>2]|0; + $4499 = ($4498|0)==(0); + if ($4499) { + label = 586; + break L11; + } + } + } + $4500 = HEAP32[$pC39>>2]|0; + $4501 = (($4500) + 26|0); + HEAP8[$4501>>0] = 0; + $4502 = HEAP32[$pC39>>2]|0; + $4503 = (($4502) + 27|0); + HEAP8[$4503>>0] = 0; + $4504 = HEAP32[$pC39>>2]|0; + $4505 = (($4504) + 68|0); + HEAP32[$4505>>2] = 0; + } + $4506 = $v; + $4507 = $4506; + $4508 = HEAP32[$4507>>2]|0; + $4509 = (($4506) + 4)|0; + $4510 = $4509; + $4511 = HEAP32[$4510>>2]|0; + $4512 = HEAP32[$pOut>>2]|0; + $4513 = (($4512) + 16|0); + $4514 = $4513; + $4515 = $4514; + HEAP32[$4515>>2] = $4508; + $4516 = (($4514) + 4)|0; + $4517 = $4516; + HEAP32[$4517>>2] = $4511; + break; + } + case 95: { + $4804 = HEAP32[$pOp>>2]|0; + $4805 = (($4804) + 8|0); + $4806 = HEAP32[$4805>>2]|0; + $4807 = HEAP32[$aMem>>2]|0; + $4808 = (($4807) + (($4806*40)|0)|0); + HEAP32[$pOut>>2] = $4808; + $4809 = HEAP32[$pOp>>2]|0; + $4810 = (($4809) + 4|0); + $4811 = HEAP32[$4810>>2]|0; + $4812 = HEAP32[$0>>2]|0; + $4813 = (($4812) + 56|0); + $4814 = HEAP32[$4813>>2]|0; + $4815 = (($4814) + ($4811<<2)|0); + $4816 = HEAP32[$4815>>2]|0; + HEAP32[$pC52>>2] = $4816; + $4817 = HEAP32[$pC52>>2]|0; + $4818 = HEAP32[$pOut>>2]|0; + $4819 = (_sqlite3VdbeSorterRowkey($4817,$4818)|0); + HEAP32[$rc>>2] = $4819; + break; + } + case 74: { + $4693 = HEAP32[$pOp>>2]|0; + $4694 = (($4693) + 4|0); + $4695 = HEAP32[$4694>>2]|0; + $4696 = HEAP32[$0>>2]|0; + $4697 = (($4696) + 56|0); + $4698 = HEAP32[$4697>>2]|0; + $4699 = (($4698) + ($4695<<2)|0); + $4700 = HEAP32[$4699>>2]|0; + HEAP32[$pC49>>2] = $4700; + $4701 = HEAP32[$pC49>>2]|0; + $4702 = (($4701) + 56|0); + $4703 = $4702; + $4704 = $4703; + $4705 = HEAP32[$4704>>2]|0; + $4706 = (($4703) + 4)|0; + $4707 = $4706; + $4708 = HEAP32[$4707>>2]|0; + $4709 = $iKey48; + $4710 = $4709; + HEAP32[$4710>>2] = $4705; + $4711 = (($4709) + 4)|0; + $4712 = $4711; + HEAP32[$4712>>2] = $4708; + $4713 = HEAP32[$pC49>>2]|0; + $4714 = (_sqlite3VdbeCursorMoveto($4713)|0); + HEAP32[$rc>>2] = $4714; + $4715 = HEAP32[$rc>>2]|0; + $4716 = ($4715|0)!=(0); + if ($4716) { + break L11; + } + $4717 = HEAP32[$pC49>>2]|0; + $4718 = HEAP32[$4717>>2]|0; + $4719 = (_sqlite3BtreeDelete($4718)|0); + HEAP32[$rc>>2] = $4719; + $4720 = HEAP32[$pC49>>2]|0; + $4721 = (($4720) + 68|0); + HEAP32[$4721>>2] = 0; + $4722 = HEAP32[$rc>>2]|0; + $4723 = ($4722|0)==(0); + if ($4723) { + $4724 = HEAP32[$db>>2]|0; + $4725 = (($4724) + 200|0); + $4726 = HEAP32[$4725>>2]|0; + $4727 = ($4726|0)!=(0|0); + if ($4727) { + $4728 = HEAP32[$pOp>>2]|0; + $4729 = (($4728) + 16|0); + $4730 = HEAP32[$4729>>2]|0; + $4731 = ($4730|0)!=(0|0); + if ($4731) { + $4732 = HEAP32[$pC49>>2]|0; + $4733 = (($4732) + 28|0); + $4734 = HEAP8[$4733>>0]|0; + $4735 = ($4734&255) >>> 2; + $4736 = $4735 & 1; + $4737 = $4736&255; + $4738 = ($4737|0)!=(0); + if ($4738) { + $4739 = HEAP32[$db>>2]|0; + $4740 = (($4739) + 200|0); + $4741 = HEAP32[$4740>>2]|0; + $4742 = HEAP32[$db>>2]|0; + $4743 = (($4742) + 196|0); + $4744 = HEAP32[$4743>>2]|0; + $4745 = HEAP32[$pC49>>2]|0; + $4746 = (($4745) + 24|0); + $4747 = HEAP8[$4746>>0]|0; + $4748 = $4747 << 24 >> 24; + $4749 = HEAP32[$db>>2]|0; + $4750 = (($4749) + 16|0); + $4751 = HEAP32[$4750>>2]|0; + $4752 = (($4751) + ($4748<<4)|0); + $4753 = HEAP32[$4752>>2]|0; + $4754 = HEAP32[$pOp>>2]|0; + $4755 = (($4754) + 16|0); + $4756 = HEAP32[$4755>>2]|0; + $4757 = $iKey48; + $4758 = $4757; + $4759 = HEAP32[$4758>>2]|0; + $4760 = (($4757) + 4)|0; + $4761 = $4760; + $4762 = HEAP32[$4761>>2]|0; + FUNCTION_TABLE_viiiiii[$4741 & 0]($4744,9,$4753,$4756,$4759,$4762); + } + } + } + } + $4763 = HEAP32[$pOp>>2]|0; + $4764 = (($4763) + 8|0); + $4765 = HEAP32[$4764>>2]|0; + $4766 = $4765 & 1; + $4767 = ($4766|0)!=(0); + if ($4767) { + $4768 = HEAP32[$0>>2]|0; + $4769 = (($4768) + 92|0); + $4770 = HEAP32[$4769>>2]|0; + $4771 = (($4770) + 1)|0; + HEAP32[$4769>>2] = $4771; + } + break; + } + case 73: case 70: { + $4518 = HEAP32[$pOp>>2]|0; + $4519 = (($4518) + 8|0); + $4520 = HEAP32[$4519>>2]|0; + $4521 = HEAP32[$aMem>>2]|0; + $4522 = (($4521) + (($4520*40)|0)|0); + HEAP32[$pData>>2] = $4522; + $4523 = HEAP32[$pOp>>2]|0; + $4524 = (($4523) + 4|0); + $4525 = HEAP32[$4524>>2]|0; + $4526 = HEAP32[$0>>2]|0; + $4527 = (($4526) + 56|0); + $4528 = HEAP32[$4527>>2]|0; + $4529 = (($4528) + ($4525<<2)|0); + $4530 = HEAP32[$4529>>2]|0; + HEAP32[$pC45>>2] = $4530; + $4531 = HEAP32[$pOp>>2]|0; + $4532 = HEAP8[$4531>>0]|0; + $4533 = $4532&255; + $4534 = ($4533|0)==(70); + $4535 = HEAP32[$pOp>>2]|0; + $4536 = (($4535) + 12|0); + $4537 = HEAP32[$4536>>2]|0; + if ($4534) { + $4538 = HEAP32[$aMem>>2]|0; + $4539 = (($4538) + (($4537*40)|0)|0); + HEAP32[$pKey>>2] = $4539; + $4540 = HEAP32[$pKey>>2]|0; + $4541 = (($4540) + 16|0); + $4542 = $4541; + $4543 = $4542; + $4544 = HEAP32[$4543>>2]|0; + $4545 = (($4542) + 4)|0; + $4546 = $4545; + $4547 = HEAP32[$4546>>2]|0; + $4548 = $iKey44; + $4549 = $4548; + HEAP32[$4549>>2] = $4544; + $4550 = (($4548) + 4)|0; + $4551 = $4550; + HEAP32[$4551>>2] = $4547; + } else { + $4552 = ($4537|0)<(0); + $4553 = $4552 << 31 >> 31; + $4554 = $iKey44; + $4555 = $4554; + HEAP32[$4555>>2] = $4537; + $4556 = (($4554) + 4)|0; + $4557 = $4556; + HEAP32[$4557>>2] = $4553; + } + $4558 = HEAP32[$pOp>>2]|0; + $4559 = (($4558) + 3|0); + $4560 = HEAP8[$4559>>0]|0; + $4561 = $4560&255; + $4562 = $4561 & 1; + $4563 = ($4562|0)!=(0); + if ($4563) { + $4564 = HEAP32[$0>>2]|0; + $4565 = (($4564) + 92|0); + $4566 = HEAP32[$4565>>2]|0; + $4567 = (($4566) + 1)|0; + HEAP32[$4565>>2] = $4567; + } + $4568 = HEAP32[$pOp>>2]|0; + $4569 = (($4568) + 3|0); + $4570 = HEAP8[$4569>>0]|0; + $4571 = $4570&255; + $4572 = $4571 & 2; + $4573 = ($4572|0)!=(0); + if ($4573) { + $4574 = $iKey44; + $4575 = $4574; + $4576 = HEAP32[$4575>>2]|0; + $4577 = (($4574) + 4)|0; + $4578 = $4577; + $4579 = HEAP32[$4578>>2]|0; + $4580 = $lastRowid; + $4581 = $4580; + HEAP32[$4581>>2] = $4576; + $4582 = (($4580) + 4)|0; + $4583 = $4582; + HEAP32[$4583>>2] = $4579; + $4584 = HEAP32[$db>>2]|0; + $4585 = (($4584) + 32|0); + $4586 = $4585; + $4587 = $4586; + HEAP32[$4587>>2] = $4576; + $4588 = (($4586) + 4)|0; + $4589 = $4588; + HEAP32[$4589>>2] = $4579; + } + $4590 = HEAP32[$pData>>2]|0; + $4591 = (($4590) + 28|0); + $4592 = HEAP16[$4591>>1]|0; + $4593 = $4592&65535; + $4594 = $4593 & 1; + $4595 = ($4594|0)!=(0); + if ($4595) { + $4596 = HEAP32[$pData>>2]|0; + $4597 = (($4596) + 4|0); + HEAP32[$4597>>2] = 0; + $4598 = HEAP32[$pData>>2]|0; + $4599 = (($4598) + 24|0); + HEAP32[$4599>>2] = 0; + } + $4600 = HEAP32[$pOp>>2]|0; + $4601 = (($4600) + 3|0); + $4602 = HEAP8[$4601>>0]|0; + $4603 = $4602&255; + $4604 = $4603 & 16; + $4605 = ($4604|0)!=(0); + if ($4605) { + $4606 = HEAP32[$pC45>>2]|0; + $4607 = (($4606) + 12|0); + $4608 = HEAP32[$4607>>2]|0; + $4609 = $4608; + } else { + $4609 = 0; + } + HEAP32[$seekResult>>2] = $4609; + $4610 = HEAP32[$pData>>2]|0; + $4611 = (($4610) + 28|0); + $4612 = HEAP16[$4611>>1]|0; + $4613 = $4612&65535; + $4614 = $4613 & 16384; + $4615 = ($4614|0)!=(0); + if ($4615) { + $4616 = HEAP32[$pData>>2]|0; + $4617 = (($4616) + 16|0); + $4618 = HEAP32[$4617>>2]|0; + HEAP32[$nZero46>>2] = $4618; + } else { + HEAP32[$nZero46>>2] = 0; + } + $4619 = HEAP32[$pC45>>2]|0; + $4620 = HEAP32[$4619>>2]|0; + $4621 = $iKey44; + $4622 = $4621; + $4623 = HEAP32[$4622>>2]|0; + $4624 = (($4621) + 4)|0; + $4625 = $4624; + $4626 = HEAP32[$4625>>2]|0; + $4627 = HEAP32[$pData>>2]|0; + $4628 = (($4627) + 4|0); + $4629 = HEAP32[$4628>>2]|0; + $4630 = HEAP32[$pData>>2]|0; + $4631 = (($4630) + 24|0); + $4632 = HEAP32[$4631>>2]|0; + $4633 = HEAP32[$nZero46>>2]|0; + $4634 = HEAP32[$pOp>>2]|0; + $4635 = (($4634) + 3|0); + $4636 = HEAP8[$4635>>0]|0; + $4637 = $4636&255; + $4638 = $4637 & 8; + $4639 = ($4638|0)!=(0); + $4640 = $4639&1; + $4641 = HEAP32[$seekResult>>2]|0; + $4642 = (_sqlite3BtreeInsert($4620,0,$4623,$4626,$4629,$4632,$4633,$4640,$4641)|0); + HEAP32[$rc>>2] = $4642; + $4643 = HEAP32[$pC45>>2]|0; + $4644 = (($4643) + 26|0); + HEAP8[$4644>>0] = 0; + $4645 = HEAP32[$pC45>>2]|0; + $4646 = (($4645) + 27|0); + HEAP8[$4646>>0] = 0; + $4647 = HEAP32[$pC45>>2]|0; + $4648 = (($4647) + 68|0); + HEAP32[$4648>>2] = 0; + $4649 = HEAP32[$rc>>2]|0; + $4650 = ($4649|0)==(0); + if ($4650) { + $4651 = HEAP32[$db>>2]|0; + $4652 = (($4651) + 200|0); + $4653 = HEAP32[$4652>>2]|0; + $4654 = ($4653|0)!=(0|0); + if ($4654) { + $4655 = HEAP32[$pOp>>2]|0; + $4656 = (($4655) + 16|0); + $4657 = HEAP32[$4656>>2]|0; + $4658 = ($4657|0)!=(0|0); + if ($4658) { + $4659 = HEAP32[$pC45>>2]|0; + $4660 = (($4659) + 24|0); + $4661 = HEAP8[$4660>>0]|0; + $4662 = $4661 << 24 >> 24; + $4663 = HEAP32[$db>>2]|0; + $4664 = (($4663) + 16|0); + $4665 = HEAP32[$4664>>2]|0; + $4666 = (($4665) + ($4662<<4)|0); + $4667 = HEAP32[$4666>>2]|0; + HEAP32[$zDb>>2] = $4667; + $4668 = HEAP32[$pOp>>2]|0; + $4669 = (($4668) + 16|0); + $4670 = HEAP32[$4669>>2]|0; + HEAP32[$zTbl>>2] = $4670; + $4671 = HEAP32[$pOp>>2]|0; + $4672 = (($4671) + 3|0); + $4673 = HEAP8[$4672>>0]|0; + $4674 = $4673&255; + $4675 = $4674 & 4; + $4676 = ($4675|0)!=(0); + $4677 = $4676 ? 23 : 18; + HEAP32[$op47>>2] = $4677; + $4678 = HEAP32[$db>>2]|0; + $4679 = (($4678) + 200|0); + $4680 = HEAP32[$4679>>2]|0; + $4681 = HEAP32[$db>>2]|0; + $4682 = (($4681) + 196|0); + $4683 = HEAP32[$4682>>2]|0; + $4684 = HEAP32[$op47>>2]|0; + $4685 = HEAP32[$zDb>>2]|0; + $4686 = HEAP32[$zTbl>>2]|0; + $4687 = $iKey44; + $4688 = $4687; + $4689 = HEAP32[$4688>>2]|0; + $4690 = (($4687) + 4)|0; + $4691 = $4690; + $4692 = HEAP32[$4691>>2]|0; + FUNCTION_TABLE_viiiiii[$4680 & 0]($4683,$4684,$4685,$4686,$4689,$4692); + } + } + } + break; + } + case 84: { + $4778 = HEAP32[$pOp>>2]|0; + $4779 = (($4778) + 4|0); + $4780 = HEAP32[$4779>>2]|0; + $4781 = HEAP32[$0>>2]|0; + $4782 = (($4781) + 56|0); + $4783 = HEAP32[$4782>>2]|0; + $4784 = (($4783) + ($4780<<2)|0); + $4785 = HEAP32[$4784>>2]|0; + HEAP32[$pC50>>2] = $4785; + $4786 = HEAP32[$pOp>>2]|0; + $4787 = (($4786) + 12|0); + $4788 = HEAP32[$4787>>2]|0; + $4789 = HEAP32[$aMem>>2]|0; + $4790 = (($4789) + (($4788*40)|0)|0); + HEAP32[$pIn3>>2] = $4790; + $4791 = HEAP32[$pOp>>2]|0; + $4792 = (($4791) + 16|0); + $4793 = HEAP32[$4792>>2]|0; + HEAP32[$nIgnore>>2] = $4793; + $4794 = HEAP32[$pC50>>2]|0; + $4795 = HEAP32[$pIn3>>2]|0; + $4796 = HEAP32[$nIgnore>>2]|0; + $4797 = (_sqlite3VdbeSorterCompare($4794,$4795,$4796,$res51)|0); + HEAP32[$rc>>2] = $4797; + $4798 = HEAP32[$res51>>2]|0; + $4799 = ($4798|0)!=(0); + if ($4799) { + $4800 = HEAP32[$pOp>>2]|0; + $4801 = (($4800) + 8|0); + $4802 = HEAP32[$4801>>2]|0; + $4803 = (($4802) - 1)|0; + HEAP32[$pc>>2] = $4803; + } + break; + } + case 99: case 98: { + $4820 = HEAP32[$pOp>>2]|0; + $4821 = (($4820) + 8|0); + $4822 = HEAP32[$4821>>2]|0; + $4823 = HEAP32[$aMem>>2]|0; + $4824 = (($4823) + (($4822*40)|0)|0); + HEAP32[$pOut>>2] = $4824; + $4825 = HEAP32[$pOp>>2]|0; + $4826 = (($4825) + 4|0); + $4827 = HEAP32[$4826>>2]|0; + $4828 = HEAP32[$0>>2]|0; + $4829 = (($4828) + 56|0); + $4830 = HEAP32[$4829>>2]|0; + $4831 = (($4830) + ($4827<<2)|0); + $4832 = HEAP32[$4831>>2]|0; + HEAP32[$pC53>>2] = $4832; + $4833 = HEAP32[$pC53>>2]|0; + $4834 = HEAP32[$4833>>2]|0; + HEAP32[$pCrsr54>>2] = $4834; + $4835 = HEAP32[$pC53>>2]|0; + $4836 = (_sqlite3VdbeCursorMoveto($4835)|0); + HEAP32[$rc>>2] = $4836; + $4837 = HEAP32[$rc>>2]|0; + $4838 = ($4837|0)!=(0); + if ($4838) { + break L11; + } + $4839 = HEAP32[$pC53>>2]|0; + $4840 = (($4839) + 28|0); + $4841 = HEAP8[$4840>>0]|0; + $4842 = ($4841&255) >>> 2; + $4843 = $4842 & 1; + $4844 = $4843&255; + $4845 = ($4844|0)==(0); + $4846 = HEAP32[$pCrsr54>>2]|0; + if ($4845) { + (_sqlite3BtreeKeySize($4846,$n64)|0); + $4847 = $n64; + $4848 = $4847; + $4849 = HEAP32[$4848>>2]|0; + $4850 = (($4847) + 4)|0; + $4851 = $4850; + $4852 = HEAP32[$4851>>2]|0; + $4853 = HEAP32[$db>>2]|0; + $4854 = (($4853) + 88|0); + $4855 = HEAP32[$4854>>2]|0; + $4856 = ($4855|0)<(0); + $4857 = $4856 << 31 >> 31; + $4858 = ($4852|0)>($4857|0); + $4859 = ($4852|0)==($4857|0); + $4860 = ($4849>>>0)>($4855>>>0); + $4861 = $4859 & $4860; + $4862 = $4858 | $4861; + if ($4862) { + label = 899; + break L11; + } + $4863 = $n64; + $4864 = $4863; + $4865 = HEAP32[$4864>>2]|0; + $4866 = (($4863) + 4)|0; + $4867 = $4866; + $4868 = HEAP32[$4867>>2]|0; + HEAP32[$n55>>2] = $4865; + } else { + (_sqlite3BtreeDataSize($4846,$n55)|0); + $4869 = HEAP32[$n55>>2]|0; + $4870 = HEAP32[$db>>2]|0; + $4871 = (($4870) + 88|0); + $4872 = HEAP32[$4871>>2]|0; + $4873 = ($4869>>>0)>($4872>>>0); + if ($4873) { + label = 899; + break L11; + } + } + $4874 = HEAP32[$pOut>>2]|0; + $4875 = HEAP32[$n55>>2]|0; + $4876 = (_sqlite3VdbeMemGrow($4874,$4875,0)|0); + $4877 = ($4876|0)!=(0); + if ($4877) { + label = 900; + break L1; + } + $4878 = HEAP32[$n55>>2]|0; + $4879 = HEAP32[$pOut>>2]|0; + $4880 = (($4879) + 24|0); + HEAP32[$4880>>2] = $4878; + $4881 = HEAP32[$pOut>>2]|0; + $4882 = (($4881) + 28|0); + $4883 = HEAP16[$4882>>1]|0; + $4884 = $4883&65535; + $4885 = $4884 & -16896; + $4886 = $4885 | 16; + $4887 = $4886&65535; + $4888 = HEAP32[$pOut>>2]|0; + $4889 = (($4888) + 28|0); + HEAP16[$4889>>1] = $4887; + $4890 = HEAP32[$pC53>>2]|0; + $4891 = (($4890) + 28|0); + $4892 = HEAP8[$4891>>0]|0; + $4893 = ($4892&255) >>> 2; + $4894 = $4893 & 1; + $4895 = $4894&255; + $4896 = ($4895|0)==(0); + $4897 = HEAP32[$pCrsr54>>2]|0; + $4898 = HEAP32[$n55>>2]|0; + $4899 = HEAP32[$pOut>>2]|0; + $4900 = (($4899) + 4|0); + $4901 = HEAP32[$4900>>2]|0; + if ($4896) { + $4902 = (_sqlite3BtreeKey($4897,0,$4898,$4901)|0); + HEAP32[$rc>>2] = $4902; + } else { + $4903 = (_sqlite3BtreeData($4897,0,$4898,$4901)|0); + HEAP32[$rc>>2] = $4903; + } + $4904 = HEAP32[$pOut>>2]|0; + $4905 = (($4904) + 30|0); + HEAP8[$4905>>0] = 1; + break; + } + case 100: { + $4906 = HEAP32[$pOp>>2]|0; + $4907 = (($4906) + 4|0); + $4908 = HEAP32[$4907>>2]|0; + $4909 = HEAP32[$0>>2]|0; + $4910 = (($4909) + 56|0); + $4911 = HEAP32[$4910>>2]|0; + $4912 = (($4911) + ($4908<<2)|0); + $4913 = HEAP32[$4912>>2]|0; + HEAP32[$pC56>>2] = $4913; + $4914 = HEAP32[$pC56>>2]|0; + $4915 = (($4914) + 25|0); + $4916 = HEAP8[$4915>>0]|0; + $4917 = ($4916<<24>>24)!=(0); + if ($4917) { + $4918 = HEAP32[$pOut>>2]|0; + $4919 = (($4918) + 28|0); + HEAP16[$4919>>1] = 1; + break L21; + } + $4920 = HEAP32[$pC56>>2]|0; + $4921 = (($4920) + 27|0); + $4922 = HEAP8[$4921>>0]|0; + $4923 = ($4922<<24>>24)!=(0); + $4924 = HEAP32[$pC56>>2]|0; + do { + if ($4923) { + $4925 = (($4924) + 48|0); + $4926 = $4925; + $4927 = $4926; + $4928 = HEAP32[$4927>>2]|0; + $4929 = (($4926) + 4)|0; + $4930 = $4929; + $4931 = HEAP32[$4930>>2]|0; + $4932 = $v57; + $4933 = $4932; + HEAP32[$4933>>2] = $4928; + $4934 = (($4932) + 4)|0; + $4935 = $4934; + HEAP32[$4935>>2] = $4931; + } else { + $4936 = (($4924) + 32|0); + $4937 = HEAP32[$4936>>2]|0; + $4938 = ($4937|0)!=(0|0); + $4939 = HEAP32[$pC56>>2]|0; + if ($4938) { + $4940 = (($4939) + 32|0); + $4941 = HEAP32[$4940>>2]|0; + $4942 = HEAP32[$4941>>2]|0; + HEAP32[$pVtab>>2] = $4942; + $4943 = HEAP32[$pVtab>>2]|0; + $4944 = HEAP32[$4943>>2]|0; + HEAP32[$pModule>>2] = $4944; + $4945 = HEAP32[$pModule>>2]|0; + $4946 = (($4945) + 48|0); + $4947 = HEAP32[$4946>>2]|0; + $4948 = HEAP32[$pC56>>2]|0; + $4949 = (($4948) + 32|0); + $4950 = HEAP32[$4949>>2]|0; + $4951 = (FUNCTION_TABLE_iii[$4947 & 127]($4950,$v57)|0); + HEAP32[$rc>>2] = $4951; + $4952 = HEAP32[$0>>2]|0; + $4953 = HEAP32[$pVtab>>2]|0; + _sqlite3VtabImportErrmsg($4952,$4953); + break; + } + $4954 = (_sqlite3VdbeCursorMoveto($4939)|0); + HEAP32[$rc>>2] = $4954; + $4955 = HEAP32[$rc>>2]|0; + $4956 = ($4955|0)!=(0); + if ($4956) { + break L11; + } + $4957 = HEAP32[$pC56>>2]|0; + $4958 = (($4957) + 26|0); + $4959 = HEAP8[$4958>>0]|0; + $4960 = ($4959<<24>>24)!=(0); + $4961 = HEAP32[$pC56>>2]|0; + if ($4960) { + $4962 = (($4961) + 56|0); + $4963 = $4962; + $4964 = $4963; + $4965 = HEAP32[$4964>>2]|0; + $4966 = (($4963) + 4)|0; + $4967 = $4966; + $4968 = HEAP32[$4967>>2]|0; + $4969 = $v57; + $4970 = $4969; + HEAP32[$4970>>2] = $4965; + $4971 = (($4969) + 4)|0; + $4972 = $4971; + HEAP32[$4972>>2] = $4968; + break; + } else { + $4973 = HEAP32[$4961>>2]|0; + $4974 = (_sqlite3BtreeKeySize($4973,$v57)|0); + HEAP32[$rc>>2] = $4974; + break; + } + } + } while(0); + $4975 = $v57; + $4976 = $4975; + $4977 = HEAP32[$4976>>2]|0; + $4978 = (($4975) + 4)|0; + $4979 = $4978; + $4980 = HEAP32[$4979>>2]|0; + $4981 = HEAP32[$pOut>>2]|0; + $4982 = (($4981) + 16|0); + $4983 = $4982; + $4984 = $4983; + HEAP32[$4984>>2] = $4977; + $4985 = (($4983) + 4)|0; + $4986 = $4985; + HEAP32[$4986>>2] = $4980; + break; + } + case 75: { + $4772 = HEAP32[$db>>2]|0; + $4773 = HEAP32[$0>>2]|0; + $4774 = (($4773) + 92|0); + $4775 = HEAP32[$4774>>2]|0; + _sqlite3VdbeSetChanges($4772,$4775); + $4776 = HEAP32[$0>>2]|0; + $4777 = (($4776) + 92|0); + HEAP32[$4777>>2] = 0; + break; + } + case 105: { + label = 646; + break; + } + case 7: case 6: { + $5089 = HEAP32[$pOp>>2]|0; + $5090 = (($5089) + 4|0); + $5091 = HEAP32[$5090>>2]|0; + $5092 = HEAP32[$0>>2]|0; + $5093 = (($5092) + 56|0); + $5094 = HEAP32[$5093>>2]|0; + $5095 = (($5094) + ($5091<<2)|0); + $5096 = HEAP32[$5095>>2]|0; + $5097 = ($5096|0)==(0|0); + if (!($5097)) { + label = 653; + } + break; + } + case 107: case 106: { + $5136 = HEAP32[$pOp>>2]|0; + $5137 = (($5136) + 4|0); + $5138 = HEAP32[$5137>>2]|0; + $5139 = HEAP32[$0>>2]|0; + $5140 = (($5139) + 56|0); + $5141 = HEAP32[$5140>>2]|0; + $5142 = (($5141) + ($5138<<2)|0); + $5143 = HEAP32[$5142>>2]|0; + HEAP32[$pC67>>2] = $5143; + $5144 = HEAP32[$pOp>>2]|0; + $5145 = (($5144) + 8|0); + $5146 = HEAP32[$5145>>2]|0; + $5147 = HEAP32[$aMem>>2]|0; + $5148 = (($5147) + (($5146*40)|0)|0); + HEAP32[$pIn2>>2] = $5148; + $5149 = HEAP32[$pC67>>2]|0; + $5150 = HEAP32[$5149>>2]|0; + HEAP32[$pCrsr68>>2] = $5150; + $5151 = HEAP32[$pOp>>2]|0; + $5152 = (($5151) + 3|0); + $5153 = HEAP8[$5152>>0]|0; + $5154 = $5153&255; + $5155 = $5154 & 1; + $5156 = ($5155|0)!=(0); + if ($5156) { + $5157 = HEAP32[$0>>2]|0; + $5158 = (($5157) + 92|0); + $5159 = HEAP32[$5158>>2]|0; + $5160 = (($5159) + 1)|0; + HEAP32[$5158>>2] = $5160; + } + $5161 = HEAP32[$pIn2>>2]|0; + $5162 = (($5161) + 28|0); + $5163 = HEAP16[$5162>>1]|0; + $5164 = $5163&65535; + $5165 = $5164 & 16384; + $5166 = ($5165|0)!=(0); + if ($5166) { + $5167 = HEAP32[$pIn2>>2]|0; + $5168 = (_sqlite3VdbeMemExpandBlob($5167)|0); + $5169 = $5168; + } else { + $5169 = 0; + } + HEAP32[$rc>>2] = $5169; + $5170 = HEAP32[$rc>>2]|0; + $5171 = ($5170|0)==(0); + if ($5171) { + $5172 = HEAP32[$pC67>>2]|0; + $5173 = (($5172) + 64|0); + $5174 = HEAP32[$5173>>2]|0; + $5175 = ($5174|0)!=(0|0); + if ($5175) { + $5176 = HEAP32[$db>>2]|0; + $5177 = HEAP32[$pC67>>2]|0; + $5178 = HEAP32[$pIn2>>2]|0; + $5179 = (_sqlite3VdbeSorterWrite($5176,$5177,$5178)|0); + HEAP32[$rc>>2] = $5179; + break L21; + } + $5180 = HEAP32[$pIn2>>2]|0; + $5181 = (($5180) + 24|0); + $5182 = HEAP32[$5181>>2]|0; + HEAP32[$nKey>>2] = $5182; + $5183 = HEAP32[$pIn2>>2]|0; + $5184 = (($5183) + 4|0); + $5185 = HEAP32[$5184>>2]|0; + HEAP32[$zKey>>2] = $5185; + $5186 = HEAP32[$pCrsr68>>2]|0; + $5187 = HEAP32[$zKey>>2]|0; + $5188 = HEAP32[$nKey>>2]|0; + $5189 = ($5188|0)<(0); + $5190 = $5189 << 31 >> 31; + $5191 = HEAP32[$pOp>>2]|0; + $5192 = (($5191) + 12|0); + $5193 = HEAP32[$5192>>2]|0; + $5194 = HEAP32[$pOp>>2]|0; + $5195 = (($5194) + 3|0); + $5196 = HEAP8[$5195>>0]|0; + $5197 = $5196&255; + $5198 = $5197 & 16; + $5199 = ($5198|0)!=(0); + if ($5199) { + $5200 = HEAP32[$pC67>>2]|0; + $5201 = (($5200) + 12|0); + $5202 = HEAP32[$5201>>2]|0; + $5203 = $5202; + } else { + $5203 = 0; + } + $5204 = (_sqlite3BtreeInsert($5186,$5187,$5188,$5190,1784,0,0,$5193,$5203)|0); + HEAP32[$rc>>2] = $5204; + $5205 = HEAP32[$pC67>>2]|0; + $5206 = (($5205) + 68|0); + HEAP32[$5206>>2] = 0; + } + break; + } + case 104: case 103: { + $5038 = HEAP32[$0>>2]|0; + $5039 = (($5038) + 108|0); + $5040 = (($5039) + 8|0); + $5041 = HEAP32[$5040>>2]|0; + $5042 = (($5041) + 1)|0; + HEAP32[$5040>>2] = $5042; + label = 646; + break; + } + case 113: case 112: case 111: case 110: { + $5285 = HEAP32[$pOp>>2]|0; + $5286 = (($5285) + 4|0); + $5287 = HEAP32[$5286>>2]|0; + $5288 = HEAP32[$0>>2]|0; + $5289 = (($5288) + 56|0); + $5290 = HEAP32[$5289>>2]|0; + $5291 = (($5290) + ($5287<<2)|0); + $5292 = HEAP32[$5291>>2]|0; + HEAP32[$pC75>>2] = $5292; + $5293 = HEAP32[$pC75>>2]|0; + $5294 = (($5293) + 8|0); + $5295 = HEAP32[$5294>>2]|0; + HEAP32[$r77>>2] = $5295; + $5296 = HEAP32[$pOp>>2]|0; + $5297 = (($5296) + 16|0); + $5298 = HEAP32[$5297>>2]|0; + $5299 = $5298&65535; + $5300 = (($r77) + 4|0); + HEAP16[$5300>>1] = $5299; + $5301 = HEAP32[$pOp>>2]|0; + $5302 = HEAP8[$5301>>0]|0; + $5303 = $5302&255; + $5304 = ($5303|0)<(112); + $5305 = (($r77) + 6|0); + if ($5304) { + HEAP8[$5305>>0] = -1; + } else { + HEAP8[$5305>>0] = 0; + } + $5306 = HEAP32[$pOp>>2]|0; + $5307 = (($5306) + 12|0); + $5308 = HEAP32[$5307>>2]|0; + $5309 = HEAP32[$aMem>>2]|0; + $5310 = (($5309) + (($5308*40)|0)|0); + $5311 = (($r77) + 8|0); + HEAP32[$5311>>2] = $5310; + HEAP32[$res76>>2] = 0; + $5312 = HEAP32[$pC75>>2]|0; + $5313 = (_sqlite3VdbeIdxKeyCompare($5312,$r77,$res76)|0); + HEAP32[$rc>>2] = $5313; + $5314 = HEAP32[$pOp>>2]|0; + $5315 = HEAP8[$5314>>0]|0; + $5316 = $5315&255; + $5317 = $5316 & 1; + $5318 = ($5317|0)==(0); + $5319 = HEAP32[$res76>>2]|0; + if ($5318) { + $5320 = (0 - ($5319))|0; + HEAP32[$res76>>2] = $5320; + } else { + $5321 = (($5319) + 1)|0; + HEAP32[$res76>>2] = $5321; + } + $5322 = HEAP32[$res76>>2]|0; + $5323 = ($5322|0)>(0); + if ($5323) { + $5324 = HEAP32[$pOp>>2]|0; + $5325 = (($5324) + 8|0); + $5326 = HEAP32[$5325>>2]|0; + $5327 = (($5326) - 1)|0; + HEAP32[$pc>>2] = $5327; + } + break; + } + case 101: { + $4987 = HEAP32[$pOp>>2]|0; + $4988 = (($4987) + 4|0); + $4989 = HEAP32[$4988>>2]|0; + $4990 = HEAP32[$0>>2]|0; + $4991 = (($4990) + 56|0); + $4992 = HEAP32[$4991>>2]|0; + $4993 = (($4992) + ($4989<<2)|0); + $4994 = HEAP32[$4993>>2]|0; + HEAP32[$pC58>>2] = $4994; + $4995 = HEAP32[$pC58>>2]|0; + $4996 = (($4995) + 25|0); + HEAP8[$4996>>0] = 1; + $4997 = HEAP32[$pC58>>2]|0; + $4998 = (($4997) + 26|0); + HEAP8[$4998>>0] = 0; + $4999 = HEAP32[$pC58>>2]|0; + $5000 = (($4999) + 68|0); + HEAP32[$5000>>2] = 0; + $5001 = HEAP32[$pC58>>2]|0; + $5002 = HEAP32[$5001>>2]|0; + $5003 = ($5002|0)!=(0|0); + if ($5003) { + $5004 = HEAP32[$pC58>>2]|0; + $5005 = HEAP32[$5004>>2]|0; + _sqlite3BtreeClearCursor($5005); + } + break; + } + case 108: { + $5207 = HEAP32[$pOp>>2]|0; + $5208 = (($5207) + 4|0); + $5209 = HEAP32[$5208>>2]|0; + $5210 = HEAP32[$0>>2]|0; + $5211 = (($5210) + 56|0); + $5212 = HEAP32[$5211>>2]|0; + $5213 = (($5212) + ($5209<<2)|0); + $5214 = HEAP32[$5213>>2]|0; + HEAP32[$pC69>>2] = $5214; + $5215 = HEAP32[$pC69>>2]|0; + $5216 = HEAP32[$5215>>2]|0; + HEAP32[$pCrsr70>>2] = $5216; + $5217 = HEAP32[$pC69>>2]|0; + $5218 = (($5217) + 8|0); + $5219 = HEAP32[$5218>>2]|0; + HEAP32[$r72>>2] = $5219; + $5220 = HEAP32[$pOp>>2]|0; + $5221 = (($5220) + 12|0); + $5222 = HEAP32[$5221>>2]|0; + $5223 = $5222&65535; + $5224 = (($r72) + 4|0); + HEAP16[$5224>>1] = $5223; + $5225 = (($r72) + 6|0); + HEAP8[$5225>>0] = 0; + $5226 = HEAP32[$pOp>>2]|0; + $5227 = (($5226) + 8|0); + $5228 = HEAP32[$5227>>2]|0; + $5229 = HEAP32[$aMem>>2]|0; + $5230 = (($5229) + (($5228*40)|0)|0); + $5231 = (($r72) + 8|0); + HEAP32[$5231>>2] = $5230; + $5232 = HEAP32[$pCrsr70>>2]|0; + $5233 = (_sqlite3BtreeMovetoUnpacked($5232,$r72,0,0,0,$res71)|0); + HEAP32[$rc>>2] = $5233; + $5234 = HEAP32[$rc>>2]|0; + $5235 = ($5234|0)==(0); + if ($5235) { + $5236 = HEAP32[$res71>>2]|0; + $5237 = ($5236|0)==(0); + if ($5237) { + $5238 = HEAP32[$pCrsr70>>2]|0; + $5239 = (_sqlite3BtreeDelete($5238)|0); + HEAP32[$rc>>2] = $5239; + } + } + $5240 = HEAP32[$pC69>>2]|0; + $5241 = (($5240) + 68|0); + HEAP32[$5241>>2] = 0; + break; + } + case 5: { + $5078 = HEAP32[$pOp>>2]|0; + $5079 = (($5078) + 4|0); + $5080 = HEAP32[$5079>>2]|0; + $5081 = HEAP32[$0>>2]|0; + $5082 = (($5081) + 56|0); + $5083 = HEAP32[$5082>>2]|0; + $5084 = (($5083) + ($5080<<2)|0); + $5085 = HEAP32[$5084>>2]|0; + HEAP32[$pC65>>2] = $5085; + HEAP32[$res66>>2] = 0; + $5086 = HEAP32[$db>>2]|0; + $5087 = HEAP32[$pC65>>2]|0; + $5088 = (_sqlite3VdbeSorterNext($5086,$5087,$res66)|0); + HEAP32[$rc>>2] = $5088; + label = 654; + break; + } + case 102: { + $5006 = HEAP32[$pOp>>2]|0; + $5007 = (($5006) + 4|0); + $5008 = HEAP32[$5007>>2]|0; + $5009 = HEAP32[$0>>2]|0; + $5010 = (($5009) + 56|0); + $5011 = HEAP32[$5010>>2]|0; + $5012 = (($5011) + ($5008<<2)|0); + $5013 = HEAP32[$5012>>2]|0; + HEAP32[$pC59>>2] = $5013; + $5014 = HEAP32[$pC59>>2]|0; + $5015 = HEAP32[$5014>>2]|0; + HEAP32[$pCrsr60>>2] = $5015; + HEAP32[$res61>>2] = 0; + $5016 = HEAP32[$pCrsr60>>2]|0; + $5017 = (_sqlite3BtreeLast($5016,$res61)|0); + HEAP32[$rc>>2] = $5017; + $5018 = HEAP32[$res61>>2]|0; + $5019 = $5018&255; + $5020 = HEAP32[$pC59>>2]|0; + $5021 = (($5020) + 25|0); + HEAP8[$5021>>0] = $5019; + $5022 = HEAP32[$pC59>>2]|0; + $5023 = (($5022) + 27|0); + HEAP8[$5023>>0] = 0; + $5024 = HEAP32[$pC59>>2]|0; + $5025 = (($5024) + 26|0); + HEAP8[$5025>>0] = 0; + $5026 = HEAP32[$pC59>>2]|0; + $5027 = (($5026) + 68|0); + HEAP32[$5027>>2] = 0; + $5028 = HEAP32[$pOp>>2]|0; + $5029 = (($5028) + 8|0); + $5030 = HEAP32[$5029>>2]|0; + $5031 = ($5030|0)>(0); + if ($5031) { + $5032 = HEAP32[$res61>>2]|0; + $5033 = ($5032|0)!=(0); + if ($5033) { + $5034 = HEAP32[$pOp>>2]|0; + $5035 = (($5034) + 8|0); + $5036 = HEAP32[$5035>>2]|0; + $5037 = (($5036) - 1)|0; + HEAP32[$pc>>2] = $5037; + } + } + break; + } + case 114: { + HEAP32[$iCnt>>2] = 0; + $5328 = HEAP32[$db>>2]|0; + $5329 = (($5328) + 4|0); + $5330 = HEAP32[$5329>>2]|0; + HEAP32[$pVdbe>>2] = $5330; + while(1) { + $5331 = HEAP32[$pVdbe>>2]|0; + $5332 = ($5331|0)!=(0|0); + if (!($5332)) { + break; + } + $5333 = HEAP32[$pVdbe>>2]|0; + $5334 = (($5333) + 40|0); + $5335 = HEAP32[$5334>>2]|0; + $5336 = ($5335|0)==(-1108210269); + if ($5336) { + $5337 = HEAP32[$pVdbe>>2]|0; + $5338 = (($5337) + 88|0); + $5339 = HEAP16[$5338>>1]|0; + $5340 = ($5339&65535) >>> 9; + $5341 = $5340 & 1; + $5342 = $5341&65535; + $5343 = ($5342|0)!=(0); + if ($5343) { + $5344 = HEAP32[$pVdbe>>2]|0; + $5345 = (($5344) + 88|0); + $5346 = HEAP16[$5345>>1]|0; + $5347 = ($5346&65535) >>> 2; + $5348 = $5347 & 3; + $5349 = $5348&65535; + $5350 = ($5349|0)<(2); + if ($5350) { + $5351 = HEAP32[$pVdbe>>2]|0; + $5352 = (($5351) + 76|0); + $5353 = HEAP32[$5352>>2]|0; + $5354 = ($5353|0)>=(0); + if ($5354) { + $5355 = HEAP32[$iCnt>>2]|0; + $5356 = (($5355) + 1)|0; + HEAP32[$iCnt>>2] = $5356; + } + } + } + } + $5357 = HEAP32[$pVdbe>>2]|0; + $5358 = (($5357) + 52|0); + $5359 = HEAP32[$5358>>2]|0; + HEAP32[$pVdbe>>2] = $5359; + } + $5360 = HEAP32[$pOut>>2]|0; + $5361 = (($5360) + 28|0); + HEAP16[$5361>>1] = 1; + $5362 = HEAP32[$iCnt>>2]|0; + $5363 = ($5362|0)>(1); + if ($5363) { + HEAP32[$rc>>2] = 6; + $5364 = HEAP32[$0>>2]|0; + $5365 = (($5364) + 86|0); + HEAP8[$5365>>0] = 2; + break L21; + } + $5366 = HEAP32[$pOp>>2]|0; + $5367 = (($5366) + 12|0); + $5368 = HEAP32[$5367>>2]|0; + HEAP32[$iDb78>>2] = $5368; + HEAP32[$iMoved>>2] = 0; + $5369 = HEAP32[$iDb78>>2]|0; + $5370 = HEAP32[$db>>2]|0; + $5371 = (($5370) + 16|0); + $5372 = HEAP32[$5371>>2]|0; + $5373 = (($5372) + ($5369<<4)|0); + $5374 = (($5373) + 4|0); + $5375 = HEAP32[$5374>>2]|0; + $5376 = HEAP32[$pOp>>2]|0; + $5377 = (($5376) + 4|0); + $5378 = HEAP32[$5377>>2]|0; + $5379 = (_sqlite3BtreeDropTable($5375,$5378,$iMoved)|0); + HEAP32[$rc>>2] = $5379; + $5380 = HEAP32[$pOut>>2]|0; + $5381 = (($5380) + 28|0); + HEAP16[$5381>>1] = 4; + $5382 = HEAP32[$iMoved>>2]|0; + $5383 = ($5382|0)<(0); + $5384 = $5383 << 31 >> 31; + $5385 = HEAP32[$pOut>>2]|0; + $5386 = (($5385) + 16|0); + $5387 = $5386; + $5388 = $5387; + HEAP32[$5388>>2] = $5382; + $5389 = (($5387) + 4)|0; + $5390 = $5389; + HEAP32[$5390>>2] = $5384; + $5391 = HEAP32[$rc>>2]|0; + $5392 = ($5391|0)==(0); + if ($5392) { + $5393 = HEAP32[$iMoved>>2]|0; + $5394 = ($5393|0)!=(0); + if ($5394) { + $5395 = HEAP32[$db>>2]|0; + $5396 = HEAP32[$iDb78>>2]|0; + $5397 = HEAP32[$iMoved>>2]|0; + $5398 = HEAP32[$pOp>>2]|0; + $5399 = (($5398) + 4|0); + $5400 = HEAP32[$5399>>2]|0; + _sqlite3RootPageMoved($5395,$5396,$5397,$5400); + $5401 = HEAP32[$iDb78>>2]|0; + $5402 = (($5401) + 1)|0; + $5403 = $5402&255; + HEAP8[$resetSchemaOnFault>>0] = $5403; + } + } + break; + } + case 109: { + $5242 = HEAP32[$pOp>>2]|0; + $5243 = (($5242) + 4|0); + $5244 = HEAP32[$5243>>2]|0; + $5245 = HEAP32[$0>>2]|0; + $5246 = (($5245) + 56|0); + $5247 = HEAP32[$5246>>2]|0; + $5248 = (($5247) + ($5244<<2)|0); + $5249 = HEAP32[$5248>>2]|0; + HEAP32[$pC74>>2] = $5249; + $5250 = HEAP32[$pC74>>2]|0; + $5251 = HEAP32[$5250>>2]|0; + HEAP32[$pCrsr73>>2] = $5251; + $5252 = HEAP32[$pOut>>2]|0; + $5253 = (($5252) + 28|0); + HEAP16[$5253>>1] = 1; + $5254 = HEAP32[$pC74>>2]|0; + $5255 = (_sqlite3VdbeCursorMoveto($5254)|0); + HEAP32[$rc>>2] = $5255; + $5256 = HEAP32[$rc>>2]|0; + $5257 = ($5256|0)!=(0); + if ($5257) { + break L11; + } + $5258 = HEAP32[$pC74>>2]|0; + $5259 = (($5258) + 25|0); + $5260 = HEAP8[$5259>>0]|0; + $5261 = ($5260<<24>>24)!=(0); + if (!($5261)) { + $5262 = $rowid; + $5263 = $5262; + HEAP32[$5263>>2] = 0; + $5264 = (($5262) + 4)|0; + $5265 = $5264; + HEAP32[$5265>>2] = 0; + $5266 = HEAP32[$db>>2]|0; + $5267 = HEAP32[$pCrsr73>>2]|0; + $5268 = (_sqlite3VdbeIdxRowid($5266,$5267,$rowid)|0); + HEAP32[$rc>>2] = $5268; + $5269 = HEAP32[$rc>>2]|0; + $5270 = ($5269|0)!=(0); + if ($5270) { + break L11; + } + $5271 = $rowid; + $5272 = $5271; + $5273 = HEAP32[$5272>>2]|0; + $5274 = (($5271) + 4)|0; + $5275 = $5274; + $5276 = HEAP32[$5275>>2]|0; + $5277 = HEAP32[$pOut>>2]|0; + $5278 = (($5277) + 16|0); + $5279 = $5278; + $5280 = $5279; + HEAP32[$5280>>2] = $5273; + $5281 = (($5279) + 4)|0; + $5282 = $5281; + HEAP32[$5282>>2] = $5276; + $5283 = HEAP32[$pOut>>2]|0; + $5284 = (($5283) + 28|0); + HEAP16[$5284>>1] = 4; + } + break; + } + case 9: case 8: { + label = 653; + break; + } + case 116: { + $5455 = HEAP32[$pOp>>2]|0; + $5456 = (($5455) + 4|0); + $5457 = HEAP32[$5456>>2]|0; + $5458 = HEAP32[$0>>2]|0; + $5459 = (($5458) + 56|0); + $5460 = HEAP32[$5459>>2]|0; + $5461 = (($5460) + ($5457<<2)|0); + $5462 = HEAP32[$5461>>2]|0; + HEAP32[$pC79>>2] = $5462; + $5463 = HEAP32[$pC79>>2]|0; + $5464 = (($5463) + 64|0); + $5465 = HEAP32[$5464>>2]|0; + $5466 = ($5465|0)!=(0|0); + if ($5466) { + $5467 = HEAP32[$db>>2]|0; + $5468 = HEAP32[$pC79>>2]|0; + $5469 = (($5468) + 64|0); + $5470 = HEAP32[$5469>>2]|0; + _sqlite3VdbeSorterReset($5467,$5470); + break L21; + } else { + $5471 = HEAP32[$pC79>>2]|0; + $5472 = HEAP32[$5471>>2]|0; + $5473 = (_sqlite3BtreeClearTableOfCursor($5472)|0); + HEAP32[$rc>>2] = $5473; + break L21; + } + break; + } + case 127: { + $5725 = HEAP32[$pOp>>2]|0; + $5726 = (($5725) + 4|0); + $5727 = HEAP32[$5726>>2]|0; + $5728 = HEAP32[$aMem>>2]|0; + $5729 = (($5728) + (($5727*40)|0)|0); + HEAP32[$pIn1>>2] = $5729; + $5730 = HEAP32[$pOp>>2]|0; + $5731 = (($5730) + 12|0); + $5732 = HEAP32[$5731>>2]|0; + $5733 = HEAP32[$aMem>>2]|0; + $5734 = (($5733) + (($5732*40)|0)|0); + HEAP32[$pIn3>>2] = $5734; + $5735 = HEAP32[$pOp>>2]|0; + $5736 = (($5735) + 16|0); + $5737 = HEAP32[$5736>>2]|0; + HEAP32[$iSet>>2] = $5737; + $5738 = HEAP32[$pIn1>>2]|0; + $5739 = (($5738) + 28|0); + $5740 = HEAP16[$5739>>1]|0; + $5741 = $5740&65535; + $5742 = $5741 & 32; + $5743 = ($5742|0)==(0); + if ($5743) { + $5744 = HEAP32[$pIn1>>2]|0; + _sqlite3VdbeMemSetRowSet($5744); + $5745 = HEAP32[$pIn1>>2]|0; + $5746 = (($5745) + 28|0); + $5747 = HEAP16[$5746>>1]|0; + $5748 = $5747&65535; + $5749 = $5748 & 32; + $5750 = ($5749|0)==(0); + if ($5750) { + label = 900; + break L1; + } + } + $5751 = HEAP32[$iSet>>2]|0; + $5752 = ($5751|0)!=(0); + if ($5752) { + $5753 = HEAP32[$pIn1>>2]|0; + $5754 = (($5753) + 16|0); + $5755 = HEAP32[$5754>>2]|0; + $5756 = HEAP32[$iSet>>2]|0; + $5757 = HEAP32[$pIn3>>2]|0; + $5758 = (($5757) + 16|0); + $5759 = $5758; + $5760 = $5759; + $5761 = HEAP32[$5760>>2]|0; + $5762 = (($5759) + 4)|0; + $5763 = $5762; + $5764 = HEAP32[$5763>>2]|0; + $5765 = (_sqlite3RowSetTest($5755,$5756,$5761,$5764)|0); + HEAP32[$exists>>2] = $5765; + $5766 = HEAP32[$exists>>2]|0; + $5767 = ($5766|0)!=(0); + if ($5767) { + $5768 = HEAP32[$pOp>>2]|0; + $5769 = (($5768) + 8|0); + $5770 = HEAP32[$5769>>2]|0; + $5771 = (($5770) - 1)|0; + HEAP32[$pc>>2] = $5771; + break L21; + } + } + $5772 = HEAP32[$iSet>>2]|0; + $5773 = ($5772|0)>=(0); + if ($5773) { + $5774 = HEAP32[$pIn1>>2]|0; + $5775 = (($5774) + 16|0); + $5776 = HEAP32[$5775>>2]|0; + $5777 = HEAP32[$pIn3>>2]|0; + $5778 = (($5777) + 16|0); + $5779 = $5778; + $5780 = $5779; + $5781 = HEAP32[$5780>>2]|0; + $5782 = (($5779) + 4)|0; + $5783 = $5782; + $5784 = HEAP32[$5783>>2]|0; + _sqlite3RowSetInsert($5776,$5781,$5784); + } + break; + } + case 125: { + $5659 = HEAP32[$pOp>>2]|0; + $5660 = (($5659) + 4|0); + $5661 = HEAP32[$5660>>2]|0; + $5662 = HEAP32[$aMem>>2]|0; + $5663 = (($5662) + (($5661*40)|0)|0); + HEAP32[$pIn1>>2] = $5663; + $5664 = HEAP32[$pOp>>2]|0; + $5665 = (($5664) + 8|0); + $5666 = HEAP32[$5665>>2]|0; + $5667 = HEAP32[$aMem>>2]|0; + $5668 = (($5667) + (($5666*40)|0)|0); + HEAP32[$pIn2>>2] = $5668; + $5669 = HEAP32[$pIn1>>2]|0; + $5670 = (($5669) + 28|0); + $5671 = HEAP16[$5670>>1]|0; + $5672 = $5671&65535; + $5673 = $5672 & 32; + $5674 = ($5673|0)==(0); + if ($5674) { + $5675 = HEAP32[$pIn1>>2]|0; + _sqlite3VdbeMemSetRowSet($5675); + $5676 = HEAP32[$pIn1>>2]|0; + $5677 = (($5676) + 28|0); + $5678 = HEAP16[$5677>>1]|0; + $5679 = $5678&65535; + $5680 = $5679 & 32; + $5681 = ($5680|0)==(0); + if ($5681) { + label = 900; + break L1; + } + } + $5682 = HEAP32[$pIn1>>2]|0; + $5683 = (($5682) + 16|0); + $5684 = HEAP32[$5683>>2]|0; + $5685 = HEAP32[$pIn2>>2]|0; + $5686 = (($5685) + 16|0); + $5687 = $5686; + $5688 = $5687; + $5689 = HEAP32[$5688>>2]|0; + $5690 = (($5687) + 4)|0; + $5691 = $5690; + $5692 = HEAP32[$5691>>2]|0; + _sqlite3RowSetInsert($5684,$5689,$5692); + break; + } + case 128: { + $5785 = HEAP32[$pOp>>2]|0; + $5786 = (($5785) + 16|0); + $5787 = HEAP32[$5786>>2]|0; + HEAP32[$pProgram>>2] = $5787; + $5788 = HEAP32[$pOp>>2]|0; + $5789 = (($5788) + 12|0); + $5790 = HEAP32[$5789>>2]|0; + $5791 = HEAP32[$aMem>>2]|0; + $5792 = (($5791) + (($5790*40)|0)|0); + HEAP32[$pRt>>2] = $5792; + $5793 = HEAP32[$pOp>>2]|0; + $5794 = (($5793) + 3|0); + $5795 = HEAP8[$5794>>0]|0; + $5796 = ($5795<<24>>24)!=(0); + if ($5796) { + $5797 = HEAP32[$pProgram>>2]|0; + $5798 = (($5797) + 20|0); + $5799 = HEAP32[$5798>>2]|0; + HEAP32[$t88>>2] = $5799; + $5800 = HEAP32[$0>>2]|0; + $5801 = (($5800) + 176|0); + $5802 = HEAP32[$5801>>2]|0; + HEAP32[$pFrame87>>2] = $5802; + while(1) { + $5803 = HEAP32[$pFrame87>>2]|0; + $5804 = ($5803|0)!=(0|0); + if (!($5804)) { + break; + } + $5805 = HEAP32[$pFrame87>>2]|0; + $5806 = (($5805) + 24|0); + $5807 = HEAP32[$5806>>2]|0; + $5808 = HEAP32[$t88>>2]|0; + $5809 = ($5807|0)!=($5808|0); + if (!($5809)) { + break; + } + $5810 = HEAP32[$pFrame87>>2]|0; + $5811 = (($5810) + 4|0); + $5812 = HEAP32[$5811>>2]|0; + HEAP32[$pFrame87>>2] = $5812; + } + $5813 = HEAP32[$pFrame87>>2]|0; + $5814 = ($5813|0)!=(0|0); + if ($5814) { + break L21; + } + } + $5815 = HEAP32[$0>>2]|0; + $5816 = (($5815) + 184|0); + $5817 = HEAP32[$5816>>2]|0; + $5818 = HEAP32[$db>>2]|0; + $5819 = (($5818) + 88|0); + $5820 = (($5819) + 40|0); + $5821 = HEAP32[$5820>>2]|0; + $5822 = ($5817|0)>=($5821|0); + if ($5822) { + HEAP32[$rc>>2] = 1; + $5823 = HEAP32[$0>>2]|0; + $5824 = (($5823) + 44|0); + $5825 = HEAP32[$db>>2]|0; + _sqlite3SetString($5824,$5825,38320,$vararg_buffer62); + break L21; + } + $5826 = HEAP32[$pRt>>2]|0; + $5827 = (($5826) + 28|0); + $5828 = HEAP16[$5827>>1]|0; + $5829 = $5828&65535; + $5830 = $5829 & 64; + $5831 = ($5830|0)==(0); + L304: do { + if ($5831) { + $5832 = HEAP32[$pProgram>>2]|0; + $5833 = (($5832) + 8|0); + $5834 = HEAP32[$5833>>2]|0; + $5835 = HEAP32[$pProgram>>2]|0; + $5836 = (($5835) + 12|0); + $5837 = HEAP32[$5836>>2]|0; + $5838 = (($5834) + ($5837))|0; + HEAP32[$nMem>>2] = $5838; + $5839 = HEAP32[$nMem>>2]|0; + $5840 = ($5839*40)|0; + $5841 = (72 + ($5840))|0; + $5842 = HEAP32[$pProgram>>2]|0; + $5843 = (($5842) + 12|0); + $5844 = HEAP32[$5843>>2]|0; + $5845 = $5844<<2; + $5846 = (($5841) + ($5845))|0; + $5847 = HEAP32[$pProgram>>2]|0; + $5848 = (($5847) + 16|0); + $5849 = HEAP32[$5848>>2]|0; + $5850 = $5849; + $5851 = (($5846) + ($5850))|0; + HEAP32[$nByte85>>2] = $5851; + $5852 = HEAP32[$db>>2]|0; + $5853 = HEAP32[$nByte85>>2]|0; + $5854 = (_sqlite3DbMallocZero($5852,$5853)|0); + HEAP32[$pFrame87>>2] = $5854; + $5855 = HEAP32[$pFrame87>>2]|0; + $5856 = ($5855|0)!=(0|0); + if (!($5856)) { + label = 900; + break L1; + } + $5857 = HEAP32[$pRt>>2]|0; + _sqlite3VdbeMemRelease($5857); + $5858 = HEAP32[$pRt>>2]|0; + $5859 = (($5858) + 28|0); + HEAP16[$5859>>1] = 64; + $5860 = HEAP32[$pFrame87>>2]|0; + $5861 = HEAP32[$pRt>>2]|0; + $5862 = (($5861) + 16|0); + HEAP32[$5862>>2] = $5860; + $5863 = HEAP32[$0>>2]|0; + $5864 = HEAP32[$pFrame87>>2]|0; + HEAP32[$5864>>2] = $5863; + $5865 = HEAP32[$nMem>>2]|0; + $5866 = HEAP32[$pFrame87>>2]|0; + $5867 = (($5866) + 60|0); + HEAP32[$5867>>2] = $5865; + $5868 = HEAP32[$pProgram>>2]|0; + $5869 = (($5868) + 12|0); + $5870 = HEAP32[$5869>>2]|0; + $5871 = HEAP32[$pFrame87>>2]|0; + $5872 = (($5871) + 64|0); + HEAP32[$5872>>2] = $5870; + $5873 = HEAP32[$pc>>2]|0; + $5874 = HEAP32[$pFrame87>>2]|0; + $5875 = (($5874) + 44|0); + HEAP32[$5875>>2] = $5873; + $5876 = HEAP32[$0>>2]|0; + $5877 = (($5876) + 8|0); + $5878 = HEAP32[$5877>>2]|0; + $5879 = HEAP32[$pFrame87>>2]|0; + $5880 = (($5879) + 12|0); + HEAP32[$5880>>2] = $5878; + $5881 = HEAP32[$0>>2]|0; + $5882 = (($5881) + 28|0); + $5883 = HEAP32[$5882>>2]|0; + $5884 = HEAP32[$pFrame87>>2]|0; + $5885 = (($5884) + 52|0); + HEAP32[$5885>>2] = $5883; + $5886 = HEAP32[$0>>2]|0; + $5887 = (($5886) + 56|0); + $5888 = HEAP32[$5887>>2]|0; + $5889 = HEAP32[$pFrame87>>2]|0; + $5890 = (($5889) + 20|0); + HEAP32[$5890>>2] = $5888; + $5891 = HEAP32[$0>>2]|0; + $5892 = (($5891) + 36|0); + $5893 = HEAP32[$5892>>2]|0; + $5894 = HEAP32[$pFrame87>>2]|0; + $5895 = (($5894) + 40|0); + HEAP32[$5895>>2] = $5893; + $5896 = HEAP32[$0>>2]|0; + $5897 = (($5896) + 4|0); + $5898 = HEAP32[$5897>>2]|0; + $5899 = HEAP32[$pFrame87>>2]|0; + $5900 = (($5899) + 8|0); + HEAP32[$5900>>2] = $5898; + $5901 = HEAP32[$0>>2]|0; + $5902 = (($5901) + 32|0); + $5903 = HEAP32[$5902>>2]|0; + $5904 = HEAP32[$pFrame87>>2]|0; + $5905 = (($5904) + 48|0); + HEAP32[$5905>>2] = $5903; + $5906 = HEAP32[$pProgram>>2]|0; + $5907 = (($5906) + 20|0); + $5908 = HEAP32[$5907>>2]|0; + $5909 = HEAP32[$pFrame87>>2]|0; + $5910 = (($5909) + 24|0); + HEAP32[$5910>>2] = $5908; + $5911 = HEAP32[$0>>2]|0; + $5912 = (($5911) + 200|0); + $5913 = HEAP32[$5912>>2]|0; + $5914 = HEAP32[$pFrame87>>2]|0; + $5915 = (($5914) + 16|0); + HEAP32[$5915>>2] = $5913; + $5916 = HEAP32[$0>>2]|0; + $5917 = (($5916) + 196|0); + $5918 = HEAP32[$5917>>2]|0; + $5919 = HEAP32[$pFrame87>>2]|0; + $5920 = (($5919) + 56|0); + HEAP32[$5920>>2] = $5918; + $5921 = HEAP32[$pFrame87>>2]|0; + $5922 = (($5921) + 60|0); + $5923 = HEAP32[$5922>>2]|0; + $5924 = HEAP32[$pFrame87>>2]|0; + $5925 = (($5924) + 72|0); + $5926 = (($5925) + (($5923*40)|0)|0); + HEAP32[$pEnd>>2] = $5926; + $5927 = HEAP32[$pFrame87>>2]|0; + $5928 = (($5927) + 72|0); + HEAP32[$pMem86>>2] = $5928; + while(1) { + $5929 = HEAP32[$pMem86>>2]|0; + $5930 = HEAP32[$pEnd>>2]|0; + $5931 = ($5929|0)!=($5930|0); + if (!($5931)) { + break L304; + } + $5932 = HEAP32[$pMem86>>2]|0; + $5933 = (($5932) + 28|0); + HEAP16[$5933>>1] = 128; + $5934 = HEAP32[$db>>2]|0; + $5935 = HEAP32[$pMem86>>2]|0; + HEAP32[$5935>>2] = $5934; + $5936 = HEAP32[$pMem86>>2]|0; + $5937 = (($5936) + 40|0); + HEAP32[$pMem86>>2] = $5937; + } + } else { + $5938 = HEAP32[$pRt>>2]|0; + $5939 = (($5938) + 16|0); + $5940 = HEAP32[$5939>>2]|0; + HEAP32[$pFrame87>>2] = $5940; + } + } while(0); + $5941 = HEAP32[$0>>2]|0; + $5942 = (($5941) + 184|0); + $5943 = HEAP32[$5942>>2]|0; + $5944 = (($5943) + 1)|0; + HEAP32[$5942>>2] = $5944; + $5945 = HEAP32[$0>>2]|0; + $5946 = (($5945) + 176|0); + $5947 = HEAP32[$5946>>2]|0; + $5948 = HEAP32[$pFrame87>>2]|0; + $5949 = (($5948) + 4|0); + HEAP32[$5949>>2] = $5947; + $5950 = $lastRowid; + $5951 = $5950; + $5952 = HEAP32[$5951>>2]|0; + $5953 = (($5950) + 4)|0; + $5954 = $5953; + $5955 = HEAP32[$5954>>2]|0; + $5956 = HEAP32[$pFrame87>>2]|0; + $5957 = (($5956) + 32|0); + $5958 = $5957; + $5959 = $5958; + HEAP32[$5959>>2] = $5952; + $5960 = (($5958) + 4)|0; + $5961 = $5960; + HEAP32[$5961>>2] = $5955; + $5962 = HEAP32[$0>>2]|0; + $5963 = (($5962) + 92|0); + $5964 = HEAP32[$5963>>2]|0; + $5965 = HEAP32[$pFrame87>>2]|0; + $5966 = (($5965) + 68|0); + HEAP32[$5966>>2] = $5964; + $5967 = HEAP32[$0>>2]|0; + $5968 = (($5967) + 92|0); + HEAP32[$5968>>2] = 0; + $5969 = HEAP32[$pFrame87>>2]|0; + $5970 = HEAP32[$0>>2]|0; + $5971 = (($5970) + 176|0); + HEAP32[$5971>>2] = $5969; + $5972 = HEAP32[$pFrame87>>2]|0; + $5973 = (($5972) + 72|0); + $5974 = (($5973) + -40|0); + HEAP32[$aMem>>2] = $5974; + $5975 = HEAP32[$0>>2]|0; + $5976 = (($5975) + 8|0); + HEAP32[$5976>>2] = $5974; + $5977 = HEAP32[$pFrame87>>2]|0; + $5978 = (($5977) + 60|0); + $5979 = HEAP32[$5978>>2]|0; + $5980 = HEAP32[$0>>2]|0; + $5981 = (($5980) + 28|0); + HEAP32[$5981>>2] = $5979; + $5982 = HEAP32[$pFrame87>>2]|0; + $5983 = (($5982) + 64|0); + $5984 = HEAP32[$5983>>2]|0; + $5985 = $5984&65535; + $5986 = $5985&65535; + $5987 = HEAP32[$0>>2]|0; + $5988 = (($5987) + 36|0); + HEAP32[$5988>>2] = $5986; + $5989 = HEAP32[$0>>2]|0; + $5990 = (($5989) + 28|0); + $5991 = HEAP32[$5990>>2]|0; + $5992 = (($5991) + 1)|0; + $5993 = HEAP32[$aMem>>2]|0; + $5994 = (($5993) + (($5992*40)|0)|0); + $5995 = HEAP32[$0>>2]|0; + $5996 = (($5995) + 56|0); + HEAP32[$5996>>2] = $5994; + $5997 = HEAP32[$pProgram>>2]|0; + $5998 = HEAP32[$5997>>2]|0; + HEAP32[$aOp>>2] = $5998; + $5999 = HEAP32[$0>>2]|0; + $6000 = (($5999) + 4|0); + HEAP32[$6000>>2] = $5998; + $6001 = HEAP32[$pProgram>>2]|0; + $6002 = (($6001) + 4|0); + $6003 = HEAP32[$6002>>2]|0; + $6004 = HEAP32[$0>>2]|0; + $6005 = (($6004) + 32|0); + HEAP32[$6005>>2] = $6003; + $6006 = HEAP32[$0>>2]|0; + $6007 = (($6006) + 36|0); + $6008 = HEAP32[$6007>>2]|0; + $6009 = HEAP32[$0>>2]|0; + $6010 = (($6009) + 56|0); + $6011 = HEAP32[$6010>>2]|0; + $6012 = (($6011) + ($6008<<2)|0); + $6013 = HEAP32[$0>>2]|0; + $6014 = (($6013) + 200|0); + HEAP32[$6014>>2] = $6012; + $6015 = HEAP32[$pProgram>>2]|0; + $6016 = (($6015) + 16|0); + $6017 = HEAP32[$6016>>2]|0; + $6018 = HEAP32[$0>>2]|0; + $6019 = (($6018) + 196|0); + HEAP32[$6019>>2] = $6017; + HEAP32[$pc>>2] = -1; + $6020 = HEAP32[$0>>2]|0; + $6021 = (($6020) + 200|0); + $6022 = HEAP32[$6021>>2]|0; + $6023 = HEAP32[$0>>2]|0; + $6024 = (($6023) + 196|0); + $6025 = HEAP32[$6024>>2]|0; + _memset(($6022|0),0,($6025|0))|0; + break; + } + case 115: { + HEAP32[$nChange>>2] = 0; + $5404 = HEAP32[$pOp>>2]|0; + $5405 = (($5404) + 8|0); + $5406 = HEAP32[$5405>>2]|0; + $5407 = HEAP32[$db>>2]|0; + $5408 = (($5407) + 16|0); + $5409 = HEAP32[$5408>>2]|0; + $5410 = (($5409) + ($5406<<4)|0); + $5411 = (($5410) + 4|0); + $5412 = HEAP32[$5411>>2]|0; + $5413 = HEAP32[$pOp>>2]|0; + $5414 = (($5413) + 4|0); + $5415 = HEAP32[$5414>>2]|0; + $5416 = HEAP32[$pOp>>2]|0; + $5417 = (($5416) + 12|0); + $5418 = HEAP32[$5417>>2]|0; + $5419 = ($5418|0)!=(0); + $nChange$ = $5419 ? $nChange : 0; + $5420 = (_sqlite3BtreeClearTable($5412,$5415,$nChange$)|0); + HEAP32[$rc>>2] = $5420; + $5421 = HEAP32[$pOp>>2]|0; + $5422 = (($5421) + 12|0); + $5423 = HEAP32[$5422>>2]|0; + $5424 = ($5423|0)!=(0); + if ($5424) { + $5425 = HEAP32[$nChange>>2]|0; + $5426 = HEAP32[$0>>2]|0; + $5427 = (($5426) + 92|0); + $5428 = HEAP32[$5427>>2]|0; + $5429 = (($5428) + ($5425))|0; + HEAP32[$5427>>2] = $5429; + $5430 = HEAP32[$pOp>>2]|0; + $5431 = (($5430) + 12|0); + $5432 = HEAP32[$5431>>2]|0; + $5433 = ($5432|0)>(0); + if ($5433) { + $5434 = HEAP32[$nChange>>2]|0; + $5435 = ($5434|0)<(0); + $5436 = $5435 << 31 >> 31; + $5437 = HEAP32[$pOp>>2]|0; + $5438 = (($5437) + 12|0); + $5439 = HEAP32[$5438>>2]|0; + $5440 = HEAP32[$aMem>>2]|0; + $5441 = (($5440) + (($5439*40)|0)|0); + $5442 = (($5441) + 16|0); + $5443 = $5442; + $5444 = $5443; + $5445 = HEAP32[$5444>>2]|0; + $5446 = (($5443) + 4)|0; + $5447 = $5446; + $5448 = HEAP32[$5447>>2]|0; + $5449 = (_i64Add(($5445|0),($5448|0),($5434|0),($5436|0))|0); + $5450 = tempRet0; + $5451 = $5442; + $5452 = $5451; + HEAP32[$5452>>2] = $5449; + $5453 = (($5451) + 4)|0; + $5454 = $5453; + HEAP32[$5454>>2] = $5450; + } + } + break; + } + case 120: { + $5548 = HEAP32[$db>>2]|0; + $5549 = HEAP32[$pOp>>2]|0; + $5550 = (($5549) + 4|0); + $5551 = HEAP32[$5550>>2]|0; + $5552 = (_sqlite3AnalysisLoad($5548,$5551)|0); + HEAP32[$rc>>2] = $5552; + break; + } + case 123: { + $5567 = HEAP32[$db>>2]|0; + $5568 = HEAP32[$pOp>>2]|0; + $5569 = (($5568) + 4|0); + $5570 = HEAP32[$5569>>2]|0; + $5571 = HEAP32[$pOp>>2]|0; + $5572 = (($5571) + 16|0); + $5573 = HEAP32[$5572>>2]|0; + _sqlite3UnlinkAndDeleteTrigger($5567,$5570,$5573); + break; + } + case 129: { + $6026 = HEAP32[$0>>2]|0; + $6027 = (($6026) + 176|0); + $6028 = HEAP32[$6027>>2]|0; + HEAP32[$pFrame89>>2] = $6028; + $6029 = HEAP32[$pOp>>2]|0; + $6030 = (($6029) + 4|0); + $6031 = HEAP32[$6030>>2]|0; + $6032 = HEAP32[$pFrame89>>2]|0; + $6033 = (($6032) + 44|0); + $6034 = HEAP32[$6033>>2]|0; + $6035 = HEAP32[$pFrame89>>2]|0; + $6036 = (($6035) + 8|0); + $6037 = HEAP32[$6036>>2]|0; + $6038 = (($6037) + (($6034*20)|0)|0); + $6039 = (($6038) + 4|0); + $6040 = HEAP32[$6039>>2]|0; + $6041 = (($6031) + ($6040))|0; + $6042 = HEAP32[$pFrame89>>2]|0; + $6043 = (($6042) + 12|0); + $6044 = HEAP32[$6043>>2]|0; + $6045 = (($6044) + (($6041*40)|0)|0); + HEAP32[$pIn>>2] = $6045; + $6046 = HEAP32[$pOut>>2]|0; + $6047 = HEAP32[$pIn>>2]|0; + _sqlite3VdbeMemShallowCopy($6046,$6047,4096); + break; + } + case 121: { + $5553 = HEAP32[$db>>2]|0; + $5554 = HEAP32[$pOp>>2]|0; + $5555 = (($5554) + 4|0); + $5556 = HEAP32[$5555>>2]|0; + $5557 = HEAP32[$pOp>>2]|0; + $5558 = (($5557) + 16|0); + $5559 = HEAP32[$5558>>2]|0; + _sqlite3UnlinkAndDeleteTable($5553,$5556,$5559); + break; + } + case 130: { + $6048 = HEAP32[$db>>2]|0; + $6049 = (($6048) + 24|0); + $6050 = HEAP32[$6049>>2]|0; + $6051 = $6050 & 16777216; + $6052 = ($6051|0)!=(0); + $6053 = HEAP32[$pOp>>2]|0; + if ($6052) { + $6054 = (($6053) + 8|0); + $6055 = HEAP32[$6054>>2]|0; + $6056 = ($6055|0)<(0); + $6057 = $6056 << 31 >> 31; + $6058 = HEAP32[$db>>2]|0; + $6059 = (($6058) + 504|0); + $6060 = $6059; + $6061 = $6060; + $6062 = HEAP32[$6061>>2]|0; + $6063 = (($6060) + 4)|0; + $6064 = $6063; + $6065 = HEAP32[$6064>>2]|0; + $6066 = (_i64Add(($6062|0),($6065|0),($6055|0),($6057|0))|0); + $6067 = tempRet0; + $6068 = $6059; + $6069 = $6068; + HEAP32[$6069>>2] = $6066; + $6070 = (($6068) + 4)|0; + $6071 = $6070; + HEAP32[$6071>>2] = $6067; + break L21; + } + $6072 = (($6053) + 4|0); + $6073 = HEAP32[$6072>>2]|0; + $6074 = ($6073|0)!=(0); + $6075 = HEAP32[$pOp>>2]|0; + $6076 = (($6075) + 8|0); + $6077 = HEAP32[$6076>>2]|0; + $6078 = ($6077|0)<(0); + $6079 = $6078 << 31 >> 31; + if ($6074) { + $6080 = HEAP32[$db>>2]|0; + $6081 = (($6080) + 496|0); + $6082 = $6081; + $6083 = $6082; + $6084 = HEAP32[$6083>>2]|0; + $6085 = (($6082) + 4)|0; + $6086 = $6085; + $6087 = HEAP32[$6086>>2]|0; + $6088 = (_i64Add(($6084|0),($6087|0),($6077|0),($6079|0))|0); + $6089 = tempRet0; + $6090 = $6081; + $6091 = $6090; + HEAP32[$6091>>2] = $6088; + $6092 = (($6090) + 4)|0; + $6093 = $6092; + HEAP32[$6093>>2] = $6089; + break L21; + } else { + $6094 = HEAP32[$0>>2]|0; + $6095 = (($6094) + 144|0); + $6096 = $6095; + $6097 = $6096; + $6098 = HEAP32[$6097>>2]|0; + $6099 = (($6096) + 4)|0; + $6100 = $6099; + $6101 = HEAP32[$6100>>2]|0; + $6102 = (_i64Add(($6098|0),($6101|0),($6077|0),($6079|0))|0); + $6103 = tempRet0; + $6104 = $6095; + $6105 = $6104; + HEAP32[$6105>>2] = $6102; + $6106 = (($6104) + 4)|0; + $6107 = $6106; + HEAP32[$6107>>2] = $6103; + break L21; + } + break; + } + case 118: case 117: { + HEAP32[$pgno80>>2] = 0; + $5474 = HEAP32[$pOp>>2]|0; + $5475 = (($5474) + 4|0); + $5476 = HEAP32[$5475>>2]|0; + $5477 = HEAP32[$db>>2]|0; + $5478 = (($5477) + 16|0); + $5479 = HEAP32[$5478>>2]|0; + $5480 = (($5479) + ($5476<<4)|0); + HEAP32[$pDb82>>2] = $5480; + $5481 = HEAP32[$pOp>>2]|0; + $5482 = HEAP8[$5481>>0]|0; + $5483 = $5482&255; + $5484 = ($5483|0)==(118); + if ($5484) { + HEAP32[$flags81>>2] = 1; + } else { + HEAP32[$flags81>>2] = 2; + } + $5485 = HEAP32[$pDb82>>2]|0; + $5486 = (($5485) + 4|0); + $5487 = HEAP32[$5486>>2]|0; + $5488 = HEAP32[$flags81>>2]|0; + $5489 = (_sqlite3BtreeCreateTable($5487,$pgno80,$5488)|0); + HEAP32[$rc>>2] = $5489; + $5490 = HEAP32[$pgno80>>2]|0; + $5491 = ($5490|0)<(0); + $5492 = $5491 << 31 >> 31; + $5493 = HEAP32[$pOut>>2]|0; + $5494 = (($5493) + 16|0); + $5495 = $5494; + $5496 = $5495; + HEAP32[$5496>>2] = $5490; + $5497 = (($5495) + 4)|0; + $5498 = $5497; + HEAP32[$5498>>2] = $5492; + break; + } + case 124: { + $5574 = HEAP32[$pOp>>2]|0; + $5575 = (($5574) + 8|0); + $5576 = HEAP32[$5575>>2]|0; + HEAP32[$nRoot>>2] = $5576; + $5577 = HEAP32[$db>>2]|0; + $5578 = HEAP32[$nRoot>>2]|0; + $5579 = (($5578) + 1)|0; + $5580 = $5579<<2; + $5581 = (_sqlite3DbMallocRaw($5577,$5580)|0); + HEAP32[$aRoot>>2] = $5581; + $5582 = HEAP32[$aRoot>>2]|0; + $5583 = ($5582|0)==(0|0); + if ($5583) { + label = 900; + break L1; + } + $5584 = HEAP32[$pOp>>2]|0; + $5585 = (($5584) + 12|0); + $5586 = HEAP32[$5585>>2]|0; + $5587 = HEAP32[$aMem>>2]|0; + $5588 = (($5587) + (($5586*40)|0)|0); + HEAP32[$pnErr>>2] = $5588; + $5589 = HEAP32[$pOp>>2]|0; + $5590 = (($5589) + 4|0); + $5591 = HEAP32[$5590>>2]|0; + $5592 = HEAP32[$aMem>>2]|0; + $5593 = (($5592) + (($5591*40)|0)|0); + HEAP32[$pIn1>>2] = $5593; + HEAP32[$j84>>2] = 0; + while(1) { + $5594 = HEAP32[$j84>>2]|0; + $5595 = HEAP32[$nRoot>>2]|0; + $5596 = ($5594|0)<($5595|0); + $5597 = HEAP32[$j84>>2]|0; + if (!($5596)) { + break; + } + $5598 = HEAP32[$pIn1>>2]|0; + $5599 = (($5598) + (($5597*40)|0)|0); + $5600 = (_sqlite3VdbeIntValue($5599)|0); + $5601 = tempRet0; + $5602 = HEAP32[$j84>>2]|0; + $5603 = HEAP32[$aRoot>>2]|0; + $5604 = (($5603) + ($5602<<2)|0); + HEAP32[$5604>>2] = $5600; + $5605 = HEAP32[$j84>>2]|0; + $5606 = (($5605) + 1)|0; + HEAP32[$j84>>2] = $5606; + } + $5607 = HEAP32[$aRoot>>2]|0; + $5608 = (($5607) + ($5597<<2)|0); + HEAP32[$5608>>2] = 0; + $5609 = HEAP32[$pOp>>2]|0; + $5610 = (($5609) + 3|0); + $5611 = HEAP8[$5610>>0]|0; + $5612 = $5611&255; + $5613 = HEAP32[$db>>2]|0; + $5614 = (($5613) + 16|0); + $5615 = HEAP32[$5614>>2]|0; + $5616 = (($5615) + ($5612<<4)|0); + $5617 = (($5616) + 4|0); + $5618 = HEAP32[$5617>>2]|0; + $5619 = HEAP32[$aRoot>>2]|0; + $5620 = HEAP32[$nRoot>>2]|0; + $5621 = HEAP32[$pnErr>>2]|0; + $5622 = (($5621) + 16|0); + $5623 = $5622; + $5624 = $5623; + $5625 = HEAP32[$5624>>2]|0; + $5626 = (($5623) + 4)|0; + $5627 = $5626; + $5628 = HEAP32[$5627>>2]|0; + $5629 = (_sqlite3BtreeIntegrityCheck($5618,$5619,$5620,$5625,$nErr)|0); + HEAP32[$z>>2] = $5629; + $5630 = HEAP32[$db>>2]|0; + $5631 = HEAP32[$aRoot>>2]|0; + _sqlite3DbFree($5630,$5631); + $5632 = HEAP32[$nErr>>2]|0; + $5633 = ($5632|0)<(0); + $5634 = $5633 << 31 >> 31; + $5635 = HEAP32[$pnErr>>2]|0; + $5636 = (($5635) + 16|0); + $5637 = $5636; + $5638 = $5637; + $5639 = HEAP32[$5638>>2]|0; + $5640 = (($5637) + 4)|0; + $5641 = $5640; + $5642 = HEAP32[$5641>>2]|0; + $5643 = (_i64Subtract(($5639|0),($5642|0),($5632|0),($5634|0))|0); + $5644 = tempRet0; + $5645 = $5636; + $5646 = $5645; + HEAP32[$5646>>2] = $5643; + $5647 = (($5645) + 4)|0; + $5648 = $5647; + HEAP32[$5648>>2] = $5644; + $5649 = HEAP32[$pIn1>>2]|0; + _sqlite3VdbeMemSetNull($5649); + $5650 = HEAP32[$nErr>>2]|0; + $5651 = ($5650|0)==(0); + if (!($5651)) { + $5652 = HEAP32[$z>>2]|0; + $5653 = ($5652|0)==(0|0); + if ($5653) { + label = 900; + break L1; + } + $5654 = HEAP32[$pIn1>>2]|0; + $5655 = HEAP32[$z>>2]|0; + (_sqlite3VdbeMemSetStr($5654,$5655,-1,1,13)|0); + } + $5656 = HEAP32[$pIn1>>2]|0; + $5657 = HEAP8[$encoding>>0]|0; + $5658 = $5657&255; + (_sqlite3VdbeChangeEncoding($5656,$5658)|0); + break; + } + case 126: { + $5693 = HEAP32[$pOp>>2]|0; + $5694 = (($5693) + 4|0); + $5695 = HEAP32[$5694>>2]|0; + $5696 = HEAP32[$aMem>>2]|0; + $5697 = (($5696) + (($5695*40)|0)|0); + HEAP32[$pIn1>>2] = $5697; + $5698 = HEAP32[$pIn1>>2]|0; + $5699 = (($5698) + 28|0); + $5700 = HEAP16[$5699>>1]|0; + $5701 = $5700&65535; + $5702 = $5701 & 32; + $5703 = ($5702|0)==(0); + if (!($5703)) { + $5704 = HEAP32[$pIn1>>2]|0; + $5705 = (($5704) + 16|0); + $5706 = HEAP32[$5705>>2]|0; + $5707 = (_sqlite3RowSetNext($5706,$val)|0); + $5708 = ($5707|0)==(0); + if (!($5708)) { + $5714 = HEAP32[$pOp>>2]|0; + $5715 = (($5714) + 12|0); + $5716 = HEAP32[$5715>>2]|0; + $5717 = HEAP32[$aMem>>2]|0; + $5718 = (($5717) + (($5716*40)|0)|0); + $5719 = $val; + $5720 = $5719; + $5721 = HEAP32[$5720>>2]|0; + $5722 = (($5719) + 4)|0; + $5723 = $5722; + $5724 = HEAP32[$5723>>2]|0; + _sqlite3VdbeMemSetInt64($5718,$5721,$5724); + label = 16; + break L21; + } + } + $5709 = HEAP32[$pIn1>>2]|0; + _sqlite3VdbeMemSetNull($5709); + $5710 = HEAP32[$pOp>>2]|0; + $5711 = (($5710) + 8|0); + $5712 = HEAP32[$5711>>2]|0; + $5713 = (($5712) - 1)|0; + HEAP32[$pc>>2] = $5713; + label = 16; + break; + } + case 122: { + $5560 = HEAP32[$db>>2]|0; + $5561 = HEAP32[$pOp>>2]|0; + $5562 = (($5561) + 4|0); + $5563 = HEAP32[$5562>>2]|0; + $5564 = HEAP32[$pOp>>2]|0; + $5565 = (($5564) + 16|0); + $5566 = HEAP32[$5565>>2]|0; + _sqlite3UnlinkAndDeleteIndex($5560,$5563,$5566); + break; + } + case 119: { + $5499 = HEAP32[$pOp>>2]|0; + $5500 = (($5499) + 4|0); + $5501 = HEAP32[$5500>>2]|0; + HEAP32[$iDb83>>2] = $5501; + $5502 = HEAP32[$iDb83>>2]|0; + $5503 = ($5502|0)==(1); + $5504 = $5503 ? 21432 : 21456; + HEAP32[$zMaster>>2] = $5504; + $5505 = HEAP32[$db>>2]|0; + HEAP32[$initData>>2] = $5505; + $5506 = HEAP32[$pOp>>2]|0; + $5507 = (($5506) + 4|0); + $5508 = HEAP32[$5507>>2]|0; + $5509 = (($initData) + 8|0); + HEAP32[$5509>>2] = $5508; + $5510 = HEAP32[$0>>2]|0; + $5511 = (($5510) + 44|0); + $5512 = (($initData) + 4|0); + HEAP32[$5512>>2] = $5511; + $5513 = HEAP32[$db>>2]|0; + $5514 = HEAP32[$iDb83>>2]|0; + $5515 = HEAP32[$db>>2]|0; + $5516 = (($5515) + 16|0); + $5517 = HEAP32[$5516>>2]|0; + $5518 = (($5517) + ($5514<<4)|0); + $5519 = HEAP32[$5518>>2]|0; + $5520 = HEAP32[$zMaster>>2]|0; + $5521 = HEAP32[$pOp>>2]|0; + $5522 = (($5521) + 16|0); + $5523 = HEAP32[$5522>>2]|0; + HEAP32[$vararg_buffer62>>2] = $5519; + $vararg_ptr34 = (($vararg_buffer62) + 4|0); + HEAP32[$vararg_ptr34>>2] = $5520; + $vararg_ptr35 = (($vararg_buffer62) + 8|0); + HEAP32[$vararg_ptr35>>2] = $5523; + $5524 = (_sqlite3MPrintf($5513,38256,$vararg_buffer62)|0); + HEAP32[$zSql>>2] = $5524; + $5525 = HEAP32[$zSql>>2]|0; + $5526 = ($5525|0)==(0|0); + if ($5526) { + HEAP32[$rc>>2] = 7; + } else { + $5527 = HEAP32[$db>>2]|0; + $5528 = (($5527) + 132|0); + $5529 = (($5528) + 5|0); + HEAP8[$5529>>0] = 1; + $5530 = (($initData) + 12|0); + HEAP32[$5530>>2] = 0; + $5531 = HEAP32[$db>>2]|0; + $5532 = HEAP32[$zSql>>2]|0; + $5533 = (_sqlite3_exec($5531,$5532,13,$initData,0)|0); + HEAP32[$rc>>2] = $5533; + $5534 = HEAP32[$rc>>2]|0; + $5535 = ($5534|0)==(0); + if ($5535) { + $5536 = (($initData) + 12|0); + $5537 = HEAP32[$5536>>2]|0; + HEAP32[$rc>>2] = $5537; + } + $5538 = HEAP32[$db>>2]|0; + $5539 = HEAP32[$zSql>>2]|0; + _sqlite3DbFree($5538,$5539); + $5540 = HEAP32[$db>>2]|0; + $5541 = (($5540) + 132|0); + $5542 = (($5541) + 5|0); + HEAP8[$5542>>0] = 0; + } + $5543 = HEAP32[$rc>>2]|0; + $5544 = ($5543|0)!=(0); + if ($5544) { + $5545 = HEAP32[$db>>2]|0; + _sqlite3ResetAllSchemasOfConnection($5545); + } + $5546 = HEAP32[$rc>>2]|0; + $5547 = ($5546|0)==(7); + if ($5547) { + label = 900; + break L1; + } + break; + } + case 10: { + $6311 = HEAP32[$pOp>>2]|0; + $6312 = (($6311) + 3|0); + $6313 = HEAP8[$6312>>0]|0; + $6314 = $6313&255; + HEAP32[$n91>>2] = $6314; + $6315 = HEAP32[$pOp>>2]|0; + $6316 = (($6315) + 8|0); + $6317 = HEAP32[$6316>>2]|0; + $6318 = HEAP32[$aMem>>2]|0; + $6319 = (($6318) + (($6317*40)|0)|0); + HEAP32[$pRec94>>2] = $6319; + $6320 = HEAP32[$0>>2]|0; + $6321 = (($6320) + 12|0); + $6322 = HEAP32[$6321>>2]|0; + HEAP32[$apVal96>>2] = $6322; + HEAP32[$i92>>2] = 0; + while(1) { + $6323 = HEAP32[$i92>>2]|0; + $6324 = HEAP32[$n91>>2]|0; + $6325 = ($6323|0)<($6324|0); + if (!($6325)) { + break; + } + $6326 = HEAP32[$pRec94>>2]|0; + $6327 = HEAP32[$i92>>2]|0; + $6328 = HEAP32[$apVal96>>2]|0; + $6329 = (($6328) + ($6327<<2)|0); + HEAP32[$6329>>2] = $6326; + $6330 = HEAP32[$i92>>2]|0; + $6331 = (($6330) + 1)|0; + HEAP32[$i92>>2] = $6331; + $6332 = HEAP32[$pRec94>>2]|0; + $6333 = (($6332) + 40|0); + HEAP32[$pRec94>>2] = $6333; + } + $6334 = HEAP32[$pOp>>2]|0; + $6335 = (($6334) + 16|0); + $6336 = HEAP32[$6335>>2]|0; + HEAP32[$ctx95>>2] = $6336; + $6337 = HEAP32[$pOp>>2]|0; + $6338 = (($6337) + 12|0); + $6339 = HEAP32[$6338>>2]|0; + $6340 = HEAP32[$aMem>>2]|0; + $6341 = (($6340) + (($6339*40)|0)|0); + HEAP32[$pMem93>>2] = $6341; + $6342 = (($ctx95) + 48|0); + HEAP32[$6342>>2] = $6341; + $6343 = HEAP32[$pMem93>>2]|0; + $6344 = (($6343) + 24|0); + $6345 = HEAP32[$6344>>2]|0; + $6346 = (($6345) + 1)|0; + HEAP32[$6344>>2] = $6346; + $6347 = (($ctx95) + 8|0); + $6348 = (($6347) + 28|0); + HEAP16[$6348>>1] = 1; + $6349 = (($ctx95) + 8|0); + $6350 = (($6349) + 4|0); + HEAP32[$6350>>2] = 0; + $6351 = (($ctx95) + 8|0); + $6352 = (($6351) + 36|0); + HEAP32[$6352>>2] = 0; + $6353 = (($ctx95) + 8|0); + $6354 = (($6353) + 32|0); + HEAP32[$6354>>2] = 0; + $6355 = HEAP32[$db>>2]|0; + $6356 = (($ctx95) + 8|0); + HEAP32[$6356>>2] = $6355; + $6357 = (($ctx95) + 64|0); + HEAP32[$6357>>2] = 0; + $6358 = (($ctx95) + 52|0); + HEAP32[$6358>>2] = 0; + $6359 = (($ctx95) + 68|0); + HEAP8[$6359>>0] = 0; + $6360 = HEAP32[$ctx95>>2]|0; + $6361 = (($6360) + 2|0); + $6362 = HEAP16[$6361>>1]|0; + $6363 = $6362&65535; + $6364 = $6363 & 32; + $6365 = ($6364|0)!=(0); + if ($6365) { + $6366 = HEAP32[$pOp>>2]|0; + $6367 = (($6366) + -20|0); + $6368 = (($6367) + 16|0); + $6369 = HEAP32[$6368>>2]|0; + $6370 = (($ctx95) + 52|0); + HEAP32[$6370>>2] = $6369; + } + $6371 = HEAP32[$ctx95>>2]|0; + $6372 = (($6371) + 16|0); + $6373 = HEAP32[$6372>>2]|0; + $6374 = HEAP32[$n91>>2]|0; + $6375 = HEAP32[$apVal96>>2]|0; + FUNCTION_TABLE_viii[$6373 & 63]($ctx95,$6374,$6375); + $6376 = (($ctx95) + 64|0); + $6377 = HEAP32[$6376>>2]|0; + $6378 = ($6377|0)!=(0); + if ($6378) { + $6379 = HEAP32[$0>>2]|0; + $6380 = (($6379) + 44|0); + $6381 = HEAP32[$db>>2]|0; + $6382 = (($ctx95) + 8|0); + $6383 = (_sqlite3_value_text($6382)|0); + HEAP32[$vararg_buffer62>>2] = $6383; + _sqlite3SetString($6380,$6381,1768,$vararg_buffer62); + $6384 = (($ctx95) + 64|0); + $6385 = HEAP32[$6384>>2]|0; + HEAP32[$rc>>2] = $6385; + } + $6386 = (($ctx95) + 68|0); + $6387 = HEAP8[$6386>>0]|0; + $6388 = ($6387<<24>>24)!=(0); + if ($6388) { + $6389 = HEAP32[$pOp>>2]|0; + $6390 = (($6389) + -20|0); + $6391 = (($6390) + 4|0); + $6392 = HEAP32[$6391>>2]|0; + HEAP32[$i92>>2] = $6392; + $6393 = HEAP32[$i92>>2]|0; + $6394 = ($6393|0)!=(0); + if ($6394) { + $6395 = HEAP32[$i92>>2]|0; + $6396 = HEAP32[$aMem>>2]|0; + $6397 = (($6396) + (($6395*40)|0)|0); + _sqlite3VdbeMemSetInt64($6397,1,0); + } + } + $6398 = (($ctx95) + 8|0); + _sqlite3VdbeMemRelease($6398); + break; + } + case 132: { + $6164 = HEAP32[$0>>2]|0; + $6165 = (($6164) + 176|0); + $6166 = HEAP32[$6165>>2]|0; + $6167 = ($6166|0)!=(0|0); + if ($6167) { + $6168 = HEAP32[$0>>2]|0; + $6169 = (($6168) + 176|0); + $6170 = HEAP32[$6169>>2]|0; + HEAP32[$pFrame90>>2] = $6170; + while(1) { + $6171 = HEAP32[$pFrame90>>2]|0; + $6172 = (($6171) + 4|0); + $6173 = HEAP32[$6172>>2]|0; + $6174 = ($6173|0)!=(0|0); + if (!($6174)) { + break; + } + $6175 = HEAP32[$pFrame90>>2]|0; + $6176 = (($6175) + 4|0); + $6177 = HEAP32[$6176>>2]|0; + HEAP32[$pFrame90>>2] = $6177; + } + $6178 = HEAP32[$pOp>>2]|0; + $6179 = (($6178) + 4|0); + $6180 = HEAP32[$6179>>2]|0; + $6181 = HEAP32[$pFrame90>>2]|0; + $6182 = (($6181) + 12|0); + $6183 = HEAP32[$6182>>2]|0; + $6184 = (($6183) + (($6180*40)|0)|0); + HEAP32[$pIn1>>2] = $6184; + } else { + $6185 = HEAP32[$pOp>>2]|0; + $6186 = (($6185) + 4|0); + $6187 = HEAP32[$6186>>2]|0; + $6188 = HEAP32[$aMem>>2]|0; + $6189 = (($6188) + (($6187*40)|0)|0); + HEAP32[$pIn1>>2] = $6189; + } + $6190 = HEAP32[$pIn1>>2]|0; + (_sqlite3VdbeMemIntegerify($6190)|0); + $6191 = HEAP32[$pOp>>2]|0; + $6192 = (($6191) + 8|0); + $6193 = HEAP32[$6192>>2]|0; + $6194 = HEAP32[$aMem>>2]|0; + $6195 = (($6194) + (($6193*40)|0)|0); + HEAP32[$pIn2>>2] = $6195; + $6196 = HEAP32[$pIn2>>2]|0; + (_sqlite3VdbeMemIntegerify($6196)|0); + $6197 = HEAP32[$pIn1>>2]|0; + $6198 = (($6197) + 16|0); + $6199 = $6198; + $6200 = $6199; + $6201 = HEAP32[$6200>>2]|0; + $6202 = (($6199) + 4)|0; + $6203 = $6202; + $6204 = HEAP32[$6203>>2]|0; + $6205 = HEAP32[$pIn2>>2]|0; + $6206 = (($6205) + 16|0); + $6207 = $6206; + $6208 = $6207; + $6209 = HEAP32[$6208>>2]|0; + $6210 = (($6207) + 4)|0; + $6211 = $6210; + $6212 = HEAP32[$6211>>2]|0; + $6213 = ($6204|0)<($6212|0); + $6214 = ($6204|0)==($6212|0); + $6215 = ($6201>>>0)<($6209>>>0); + $6216 = $6214 & $6215; + $6217 = $6213 | $6216; + if ($6217) { + $6218 = HEAP32[$pIn2>>2]|0; + $6219 = (($6218) + 16|0); + $6220 = $6219; + $6221 = $6220; + $6222 = HEAP32[$6221>>2]|0; + $6223 = (($6220) + 4)|0; + $6224 = $6223; + $6225 = HEAP32[$6224>>2]|0; + $6226 = HEAP32[$pIn1>>2]|0; + $6227 = (($6226) + 16|0); + $6228 = $6227; + $6229 = $6228; + HEAP32[$6229>>2] = $6222; + $6230 = (($6228) + 4)|0; + $6231 = $6230; + HEAP32[$6231>>2] = $6225; + } + break; + } + case 137: { + $6399 = HEAP32[$pOp>>2]|0; + $6400 = (($6399) + 4|0); + $6401 = HEAP32[$6400>>2]|0; + $6402 = HEAP32[$aMem>>2]|0; + $6403 = (($6402) + (($6401*40)|0)|0); + HEAP32[$pMem97>>2] = $6403; + $6404 = HEAP32[$pMem97>>2]|0; + $6405 = HEAP32[$pOp>>2]|0; + $6406 = (($6405) + 16|0); + $6407 = HEAP32[$6406>>2]|0; + $6408 = (_sqlite3VdbeMemFinalize($6404,$6407)|0); + HEAP32[$rc>>2] = $6408; + $6409 = HEAP32[$rc>>2]|0; + $6410 = ($6409|0)!=(0); + if ($6410) { + $6411 = HEAP32[$0>>2]|0; + $6412 = (($6411) + 44|0); + $6413 = HEAP32[$db>>2]|0; + $6414 = HEAP32[$pMem97>>2]|0; + $6415 = (_sqlite3_value_text($6414)|0); + HEAP32[$vararg_buffer62>>2] = $6415; + _sqlite3SetString($6412,$6413,1768,$vararg_buffer62); + } + $6416 = HEAP32[$pMem97>>2]|0; + $6417 = HEAP8[$encoding>>0]|0; + $6418 = $6417&255; + (_sqlite3VdbeChangeEncoding($6416,$6418)|0); + $6419 = HEAP32[$pMem97>>2]|0; + $6420 = (_sqlite3VdbeMemTooBig($6419)|0); + $6421 = ($6420|0)!=(0); + if ($6421) { + label = 899; + break L11; + } + break; + } + case 11: { + HEAP32[$aRes>>2] = 0; + $6422 = (($aRes) + 8|0); + HEAP32[$6422>>2] = -1; + $6423 = (($aRes) + 4|0); + HEAP32[$6423>>2] = -1; + $6424 = HEAP32[$db>>2]|0; + $6425 = HEAP32[$pOp>>2]|0; + $6426 = (($6425) + 4|0); + $6427 = HEAP32[$6426>>2]|0; + $6428 = HEAP32[$pOp>>2]|0; + $6429 = (($6428) + 8|0); + $6430 = HEAP32[$6429>>2]|0; + $6431 = (($aRes) + 4|0); + $6432 = (($aRes) + 8|0); + $6433 = (_sqlite3Checkpoint($6424,$6427,$6430,$6431,$6432)|0); + HEAP32[$rc>>2] = $6433; + $6434 = HEAP32[$rc>>2]|0; + $6435 = ($6434|0)==(5); + if ($6435) { + HEAP32[$rc>>2] = 0; + HEAP32[$aRes>>2] = 1; + } + HEAP32[$i98>>2] = 0; + $6436 = HEAP32[$pOp>>2]|0; + $6437 = (($6436) + 12|0); + $6438 = HEAP32[$6437>>2]|0; + $6439 = HEAP32[$aMem>>2]|0; + $6440 = (($6439) + (($6438*40)|0)|0); + HEAP32[$pMem99>>2] = $6440; + while(1) { + $6441 = HEAP32[$i98>>2]|0; + $6442 = ($6441|0)<(3); + if (!($6442)) { + break L21; + } + $6443 = HEAP32[$pMem99>>2]|0; + $6444 = HEAP32[$i98>>2]|0; + $6445 = (($aRes) + ($6444<<2)|0); + $6446 = HEAP32[$6445>>2]|0; + $6447 = ($6446|0)<(0); + $6448 = $6447 << 31 >> 31; + _sqlite3VdbeMemSetInt64($6443,$6446,$6448); + $6449 = HEAP32[$i98>>2]|0; + $6450 = (($6449) + 1)|0; + HEAP32[$i98>>2] = $6450; + $6451 = HEAP32[$pMem99>>2]|0; + $6452 = (($6451) + 40|0); + HEAP32[$pMem99>>2] = $6452; + } + break; + } + case 136: { + $6272 = HEAP32[$pOp>>2]|0; + $6273 = (($6272) + 4|0); + $6274 = HEAP32[$6273>>2]|0; + $6275 = HEAP32[$aMem>>2]|0; + $6276 = (($6275) + (($6274*40)|0)|0); + HEAP32[$pIn1>>2] = $6276; + $6277 = HEAP32[$pOp>>2]|0; + $6278 = (($6277) + 12|0); + $6279 = HEAP32[$6278>>2]|0; + $6280 = ($6279|0)<(0); + $6281 = $6280 << 31 >> 31; + $6282 = HEAP32[$pIn1>>2]|0; + $6283 = (($6282) + 16|0); + $6284 = $6283; + $6285 = $6284; + $6286 = HEAP32[$6285>>2]|0; + $6287 = (($6284) + 4)|0; + $6288 = $6287; + $6289 = HEAP32[$6288>>2]|0; + $6290 = (_i64Add(($6286|0),($6289|0),($6279|0),($6281|0))|0); + $6291 = tempRet0; + $6292 = $6283; + $6293 = $6292; + HEAP32[$6293>>2] = $6290; + $6294 = (($6292) + 4)|0; + $6295 = $6294; + HEAP32[$6295>>2] = $6291; + $6296 = HEAP32[$pIn1>>2]|0; + $6297 = (($6296) + 16|0); + $6298 = $6297; + $6299 = $6298; + $6300 = HEAP32[$6299>>2]|0; + $6301 = (($6298) + 4)|0; + $6302 = $6301; + $6303 = HEAP32[$6302>>2]|0; + $6304 = ($6300|0)==(0); + $6305 = ($6303|0)==(0); + $6306 = $6304 & $6305; + if ($6306) { + $6307 = HEAP32[$pOp>>2]|0; + $6308 = (($6307) + 8|0); + $6309 = HEAP32[$6308>>2]|0; + $6310 = (($6309) - 1)|0; + HEAP32[$pc>>2] = $6310; + } + break; + } + case 12: { + $6453 = HEAP32[$pOp>>2]|0; + $6454 = (($6453) + 12|0); + $6455 = HEAP32[$6454>>2]|0; + HEAP32[$eNew>>2] = $6455; + $6456 = HEAP32[$pOp>>2]|0; + $6457 = (($6456) + 4|0); + $6458 = HEAP32[$6457>>2]|0; + $6459 = HEAP32[$db>>2]|0; + $6460 = (($6459) + 16|0); + $6461 = HEAP32[$6460>>2]|0; + $6462 = (($6461) + ($6458<<4)|0); + $6463 = (($6462) + 4|0); + $6464 = HEAP32[$6463>>2]|0; + HEAP32[$pBt100>>2] = $6464; + $6465 = HEAP32[$pBt100>>2]|0; + $6466 = (_sqlite3BtreePager($6465)|0); + HEAP32[$pPager>>2] = $6466; + $6467 = HEAP32[$pPager>>2]|0; + $6468 = (_sqlite3PagerGetJournalMode($6467)|0); + HEAP32[$eOld>>2] = $6468; + $6469 = HEAP32[$eNew>>2]|0; + $6470 = ($6469|0)==(-1); + if ($6470) { + $6471 = HEAP32[$eOld>>2]|0; + HEAP32[$eNew>>2] = $6471; + } + $6472 = HEAP32[$pPager>>2]|0; + $6473 = (_sqlite3PagerOkToChangeJournalMode($6472)|0); + $6474 = ($6473|0)!=(0); + if (!($6474)) { + $6475 = HEAP32[$eOld>>2]|0; + HEAP32[$eNew>>2] = $6475; + } + $6476 = HEAP32[$pPager>>2]|0; + $6477 = (_sqlite3PagerFilename($6476,1)|0); + HEAP32[$zFilename>>2] = $6477; + $6478 = HEAP32[$eNew>>2]|0; + $6479 = ($6478|0)==(5); + do { + if ($6479) { + $6480 = HEAP32[$zFilename>>2]|0; + $6481 = (_sqlite3Strlen30($6480)|0); + $6482 = ($6481|0)==(0); + if (!($6482)) { + $6483 = HEAP32[$pPager>>2]|0; + $6484 = (_sqlite3PagerWalSupported($6483)|0); + $6485 = ($6484|0)!=(0); + if ($6485) { + break; + } + } + $6486 = HEAP32[$eOld>>2]|0; + HEAP32[$eNew>>2] = $6486; + } + } while(0); + $6487 = HEAP32[$eNew>>2]|0; + $6488 = HEAP32[$eOld>>2]|0; + $6489 = ($6487|0)!=($6488|0); + do { + if ($6489) { + $6490 = HEAP32[$eOld>>2]|0; + $6491 = ($6490|0)==(5); + if (!($6491)) { + $6492 = HEAP32[$eNew>>2]|0; + $6493 = ($6492|0)==(5); + if (!($6493)) { + break; + } + } + $6494 = HEAP32[$db>>2]|0; + $6495 = (($6494) + 62|0); + $6496 = HEAP8[$6495>>0]|0; + $6497 = ($6496<<24>>24)!=(0); + if ($6497) { + $6498 = HEAP32[$db>>2]|0; + $6499 = (($6498) + 144|0); + $6500 = HEAP32[$6499>>2]|0; + $6501 = ($6500|0)>(1); + if (!($6501)) { + $6508 = HEAP32[$eOld>>2]|0; + $6509 = ($6508|0)==(5); + do { + if ($6509) { + $6510 = HEAP32[$pPager>>2]|0; + $6511 = (_sqlite3PagerCloseWal($6510)|0); + HEAP32[$rc>>2] = $6511; + $6512 = HEAP32[$rc>>2]|0; + $6513 = ($6512|0)==(0); + if (!($6513)) { + break; + } + $6514 = HEAP32[$pPager>>2]|0; + $6515 = HEAP32[$eNew>>2]|0; + (_sqlite3PagerSetJournalMode($6514,$6515)|0); + } else { + $6516 = HEAP32[$eOld>>2]|0; + $6517 = ($6516|0)==(4); + if (!($6517)) { + break; + } + $6518 = HEAP32[$pPager>>2]|0; + (_sqlite3PagerSetJournalMode($6518,2)|0); + } + } while(0); + $6519 = HEAP32[$rc>>2]|0; + $6520 = ($6519|0)==(0); + if (!($6520)) { + break; + } + $6521 = HEAP32[$pBt100>>2]|0; + $6522 = HEAP32[$eNew>>2]|0; + $6523 = ($6522|0)==(5); + $6524 = $6523 ? 2 : 1; + $6525 = (_sqlite3BtreeSetVersion($6521,$6524)|0); + HEAP32[$rc>>2] = $6525; + break; + } + } + HEAP32[$rc>>2] = 1; + $6502 = HEAP32[$0>>2]|0; + $6503 = (($6502) + 44|0); + $6504 = HEAP32[$db>>2]|0; + $6505 = HEAP32[$eNew>>2]|0; + $6506 = ($6505|0)==(5); + $6507 = $6506 ? 38416 : 38424; + HEAP32[$vararg_buffer62>>2] = $6507; + _sqlite3SetString($6503,$6504,38360,$vararg_buffer62); + break L21; + } + } while(0); + $6526 = HEAP32[$rc>>2]|0; + $6527 = ($6526|0)!=(0); + if ($6527) { + $6528 = HEAP32[$eOld>>2]|0; + HEAP32[$eNew>>2] = $6528; + } + $6529 = HEAP32[$pPager>>2]|0; + $6530 = HEAP32[$eNew>>2]|0; + $6531 = (_sqlite3PagerSetJournalMode($6529,$6530)|0); + HEAP32[$eNew>>2] = $6531; + $6532 = HEAP32[$pOp>>2]|0; + $6533 = (($6532) + 8|0); + $6534 = HEAP32[$6533>>2]|0; + $6535 = HEAP32[$aMem>>2]|0; + $6536 = (($6535) + (($6534*40)|0)|0); + HEAP32[$pOut>>2] = $6536; + $6537 = HEAP32[$pOut>>2]|0; + $6538 = (($6537) + 28|0); + HEAP16[$6538>>1] = 2562; + $6539 = HEAP32[$eNew>>2]|0; + $6540 = (_sqlite3JournalModename($6539)|0); + $6541 = HEAP32[$pOut>>2]|0; + $6542 = (($6541) + 4|0); + HEAP32[$6542>>2] = $6540; + $6543 = HEAP32[$pOut>>2]|0; + $6544 = (($6543) + 4|0); + $6545 = HEAP32[$6544>>2]|0; + $6546 = (_sqlite3Strlen30($6545)|0); + $6547 = HEAP32[$pOut>>2]|0; + $6548 = (($6547) + 24|0); + HEAP32[$6548>>2] = $6546; + $6549 = HEAP32[$pOut>>2]|0; + $6550 = (($6549) + 30|0); + HEAP8[$6550>>0] = 1; + $6551 = HEAP32[$pOut>>2]|0; + $6552 = HEAP8[$encoding>>0]|0; + $6553 = $6552&255; + (_sqlite3VdbeChangeEncoding($6551,$6553)|0); + break; + } + case 131: { + $6108 = HEAP32[$pOp>>2]|0; + $6109 = (($6108) + 4|0); + $6110 = HEAP32[$6109>>2]|0; + $6111 = ($6110|0)!=(0); + if ($6111) { + $6112 = HEAP32[$db>>2]|0; + $6113 = (($6112) + 496|0); + $6114 = $6113; + $6115 = $6114; + $6116 = HEAP32[$6115>>2]|0; + $6117 = (($6114) + 4)|0; + $6118 = $6117; + $6119 = HEAP32[$6118>>2]|0; + $6120 = ($6116|0)==(0); + $6121 = ($6119|0)==(0); + $6122 = $6120 & $6121; + if (!($6122)) { + break L21; + } + $6123 = HEAP32[$db>>2]|0; + $6124 = (($6123) + 504|0); + $6125 = $6124; + $6126 = $6125; + $6127 = HEAP32[$6126>>2]|0; + $6128 = (($6125) + 4)|0; + $6129 = $6128; + $6130 = HEAP32[$6129>>2]|0; + $6131 = ($6127|0)==(0); + $6132 = ($6130|0)==(0); + $6133 = $6131 & $6132; + if (!($6133)) { + break L21; + } + $6134 = HEAP32[$pOp>>2]|0; + $6135 = (($6134) + 8|0); + $6136 = HEAP32[$6135>>2]|0; + $6137 = (($6136) - 1)|0; + HEAP32[$pc>>2] = $6137; + break L21; + } else { + $6138 = HEAP32[$0>>2]|0; + $6139 = (($6138) + 144|0); + $6140 = $6139; + $6141 = $6140; + $6142 = HEAP32[$6141>>2]|0; + $6143 = (($6140) + 4)|0; + $6144 = $6143; + $6145 = HEAP32[$6144>>2]|0; + $6146 = ($6142|0)==(0); + $6147 = ($6145|0)==(0); + $6148 = $6146 & $6147; + if (!($6148)) { + break L21; + } + $6149 = HEAP32[$db>>2]|0; + $6150 = (($6149) + 504|0); + $6151 = $6150; + $6152 = $6151; + $6153 = HEAP32[$6152>>2]|0; + $6154 = (($6151) + 4)|0; + $6155 = $6154; + $6156 = HEAP32[$6155>>2]|0; + $6157 = ($6153|0)==(0); + $6158 = ($6156|0)==(0); + $6159 = $6157 & $6158; + if (!($6159)) { + break L21; + } + $6160 = HEAP32[$pOp>>2]|0; + $6161 = (($6160) + 8|0); + $6162 = HEAP32[$6161>>2]|0; + $6163 = (($6162) - 1)|0; + HEAP32[$pc>>2] = $6163; + break L21; + } + break; + } + case 135: { + $6254 = HEAP32[$pOp>>2]|0; + $6255 = (($6254) + 4|0); + $6256 = HEAP32[$6255>>2]|0; + $6257 = HEAP32[$aMem>>2]|0; + $6258 = (($6257) + (($6256*40)|0)|0); + HEAP32[$pIn1>>2] = $6258; + $6259 = HEAP32[$pIn1>>2]|0; + $6260 = (($6259) + 16|0); + $6261 = $6260; + $6262 = $6261; + $6263 = HEAP32[$6262>>2]|0; + $6264 = (($6261) + 4)|0; + $6265 = $6264; + $6266 = HEAP32[$6265>>2]|0; + $6267 = ($6266|0)<(0); + if ($6267) { + $6268 = HEAP32[$pOp>>2]|0; + $6269 = (($6268) + 8|0); + $6270 = HEAP32[$6269>>2]|0; + $6271 = (($6270) - 1)|0; + HEAP32[$pc>>2] = $6271; + } + break; + } + case 134: { + $6232 = HEAP32[$pOp>>2]|0; + $6233 = (($6232) + 4|0); + $6234 = HEAP32[$6233>>2]|0; + $6235 = HEAP32[$aMem>>2]|0; + $6236 = (($6235) + (($6234*40)|0)|0); + HEAP32[$pIn1>>2] = $6236; + $6237 = HEAP32[$pIn1>>2]|0; + $6238 = (($6237) + 16|0); + $6239 = $6238; + $6240 = $6239; + $6241 = HEAP32[$6240>>2]|0; + $6242 = (($6239) + 4)|0; + $6243 = $6242; + $6244 = HEAP32[$6243>>2]|0; + $6245 = ($6244|0)>(0); + $6246 = ($6244|0)==(0); + $6247 = ($6241>>>0)>(0); + $6248 = $6246 & $6247; + $6249 = $6245 | $6248; + if ($6249) { + $6250 = HEAP32[$pOp>>2]|0; + $6251 = (($6250) + 8|0); + $6252 = HEAP32[$6251>>2]|0; + $6253 = (($6252) - 1)|0; + HEAP32[$pc>>2] = $6253; + } + break; + } + case 152: { + $6896 = HEAP32[$pOp>>2]|0; + $6897 = (($6896) + 16|0); + $6898 = HEAP32[$6897>>2]|0; + $6899 = (($6898) + 8|0); + $6900 = HEAP32[$6899>>2]|0; + HEAP32[$pVtab121>>2] = $6900; + $6901 = HEAP32[$pOp>>2]|0; + $6902 = (($6901) + 4|0); + $6903 = HEAP32[$6902>>2]|0; + $6904 = HEAP32[$aMem>>2]|0; + $6905 = (($6904) + (($6903*40)|0)|0); + HEAP32[$pName>>2] = $6905; + $6906 = HEAP32[$pName>>2]|0; + $6907 = (_sqlite3VdbeChangeEncoding($6906,1)|0); + HEAP32[$rc>>2] = $6907; + $6908 = HEAP32[$rc>>2]|0; + $6909 = ($6908|0)==(0); + if ($6909) { + $6910 = HEAP32[$pVtab121>>2]|0; + $6911 = HEAP32[$6910>>2]|0; + $6912 = (($6911) + 76|0); + $6913 = HEAP32[$6912>>2]|0; + $6914 = HEAP32[$pVtab121>>2]|0; + $6915 = HEAP32[$pName>>2]|0; + $6916 = (($6915) + 4|0); + $6917 = HEAP32[$6916>>2]|0; + $6918 = (FUNCTION_TABLE_iii[$6913 & 127]($6914,$6917)|0); + HEAP32[$rc>>2] = $6918; + $6919 = HEAP32[$0>>2]|0; + $6920 = HEAP32[$pVtab121>>2]|0; + _sqlite3VtabImportErrmsg($6919,$6920); + $6921 = HEAP32[$0>>2]|0; + $6922 = (($6921) + 88|0); + $6923 = HEAP16[$6922>>1]|0; + $6924 = $6923 & -33; + HEAP16[$6922>>1] = $6924; + } + break; + } + case 148: { + $6644 = HEAP32[$0>>2]|0; + $6645 = (($6644) + 88|0); + $6646 = HEAP16[$6645>>1]|0; + $6647 = $6646 & -13; + $6648 = $6647 | 8; + HEAP16[$6645>>1] = $6648; + $6649 = HEAP32[$db>>2]|0; + $6650 = HEAP32[$pOp>>2]|0; + $6651 = (($6650) + 4|0); + $6652 = HEAP32[$6651>>2]|0; + $6653 = HEAP32[$pOp>>2]|0; + $6654 = (($6653) + 16|0); + $6655 = HEAP32[$6654>>2]|0; + $6656 = (_sqlite3VtabCallDestroy($6649,$6652,$6655)|0); + HEAP32[$rc>>2] = $6656; + $6657 = HEAP32[$0>>2]|0; + $6658 = (($6657) + 88|0); + $6659 = HEAP16[$6658>>1]|0; + $6660 = $6659 & -13; + HEAP16[$6658>>1] = $6660; + break; + } + case 14: { + $6695 = HEAP32[$pOp>>2]|0; + $6696 = (($6695) + 12|0); + $6697 = HEAP32[$6696>>2]|0; + $6698 = HEAP32[$aMem>>2]|0; + $6699 = (($6698) + (($6697*40)|0)|0); + HEAP32[$pQuery>>2] = $6699; + $6700 = HEAP32[$pQuery>>2]|0; + $6701 = (($6700) + 40|0); + HEAP32[$pArgc>>2] = $6701; + $6702 = HEAP32[$pOp>>2]|0; + $6703 = (($6702) + 4|0); + $6704 = HEAP32[$6703>>2]|0; + $6705 = HEAP32[$0>>2]|0; + $6706 = (($6705) + 56|0); + $6707 = HEAP32[$6706>>2]|0; + $6708 = (($6707) + ($6704<<2)|0); + $6709 = HEAP32[$6708>>2]|0; + HEAP32[$pCur110>>2] = $6709; + $6710 = HEAP32[$pCur110>>2]|0; + $6711 = (($6710) + 32|0); + $6712 = HEAP32[$6711>>2]|0; + HEAP32[$pVtabCursor108>>2] = $6712; + $6713 = HEAP32[$pVtabCursor108>>2]|0; + $6714 = HEAP32[$6713>>2]|0; + HEAP32[$pVtab109>>2] = $6714; + $6715 = HEAP32[$pVtab109>>2]|0; + $6716 = HEAP32[$6715>>2]|0; + HEAP32[$pModule107>>2] = $6716; + $6717 = HEAP32[$pArgc>>2]|0; + $6718 = (($6717) + 16|0); + $6719 = $6718; + $6720 = $6719; + $6721 = HEAP32[$6720>>2]|0; + $6722 = (($6719) + 4)|0; + $6723 = $6722; + $6724 = HEAP32[$6723>>2]|0; + HEAP32[$nArg>>2] = $6721; + $6725 = HEAP32[$pQuery>>2]|0; + $6726 = (($6725) + 16|0); + $6727 = $6726; + $6728 = $6727; + $6729 = HEAP32[$6728>>2]|0; + $6730 = (($6727) + 4)|0; + $6731 = $6730; + $6732 = HEAP32[$6731>>2]|0; + HEAP32[$iQuery>>2] = $6729; + HEAP32[$res111>>2] = 0; + $6733 = HEAP32[$0>>2]|0; + $6734 = (($6733) + 12|0); + $6735 = HEAP32[$6734>>2]|0; + HEAP32[$apArg>>2] = $6735; + HEAP32[$i112>>2] = 0; + while(1) { + $6736 = HEAP32[$i112>>2]|0; + $6737 = HEAP32[$nArg>>2]|0; + $6738 = ($6736|0)<($6737|0); + if (!($6738)) { + break; + } + $6739 = HEAP32[$i112>>2]|0; + $6740 = (($6739) + 1)|0; + $6741 = HEAP32[$pArgc>>2]|0; + $6742 = (($6741) + (($6740*40)|0)|0); + $6743 = HEAP32[$i112>>2]|0; + $6744 = HEAP32[$apArg>>2]|0; + $6745 = (($6744) + ($6743<<2)|0); + HEAP32[$6745>>2] = $6742; + $6746 = HEAP32[$i112>>2]|0; + $6747 = (($6746) + 1)|0; + HEAP32[$i112>>2] = $6747; + } + $6748 = HEAP32[$0>>2]|0; + $6749 = (($6748) + 88|0); + $6750 = HEAP16[$6749>>1]|0; + $6751 = $6750 & -13; + $6752 = $6751 | 4; + HEAP16[$6749>>1] = $6752; + $6753 = HEAP32[$pModule107>>2]|0; + $6754 = (($6753) + 32|0); + $6755 = HEAP32[$6754>>2]|0; + $6756 = HEAP32[$pVtabCursor108>>2]|0; + $6757 = HEAP32[$iQuery>>2]|0; + $6758 = HEAP32[$pOp>>2]|0; + $6759 = (($6758) + 16|0); + $6760 = HEAP32[$6759>>2]|0; + $6761 = HEAP32[$nArg>>2]|0; + $6762 = HEAP32[$apArg>>2]|0; + $6763 = (FUNCTION_TABLE_iiiiii[$6755 & 15]($6756,$6757,$6760,$6761,$6762)|0); + HEAP32[$rc>>2] = $6763; + $6764 = HEAP32[$0>>2]|0; + $6765 = (($6764) + 88|0); + $6766 = HEAP16[$6765>>1]|0; + $6767 = $6766 & -13; + HEAP16[$6765>>1] = $6767; + $6768 = HEAP32[$0>>2]|0; + $6769 = HEAP32[$pVtab109>>2]|0; + _sqlite3VtabImportErrmsg($6768,$6769); + $6770 = HEAP32[$rc>>2]|0; + $6771 = ($6770|0)==(0); + if ($6771) { + $6772 = HEAP32[$pModule107>>2]|0; + $6773 = (($6772) + 40|0); + $6774 = HEAP32[$6773>>2]|0; + $6775 = HEAP32[$pVtabCursor108>>2]|0; + $6776 = (FUNCTION_TABLE_ii[$6774 & 63]($6775)|0); + HEAP32[$res111>>2] = $6776; + } + $6777 = HEAP32[$res111>>2]|0; + $6778 = ($6777|0)!=(0); + if ($6778) { + $6779 = HEAP32[$pOp>>2]|0; + $6780 = (($6779) + 8|0); + $6781 = HEAP32[$6780>>2]|0; + $6782 = (($6781) - 1)|0; + HEAP32[$pc>>2] = $6782; + } + $6783 = HEAP32[$pCur110>>2]|0; + $6784 = (($6783) + 25|0); + HEAP8[$6784>>0] = 0; + break; + } + case 150: { + $6785 = HEAP32[$pOp>>2]|0; + $6786 = (($6785) + 4|0); + $6787 = HEAP32[$6786>>2]|0; + $6788 = HEAP32[$0>>2]|0; + $6789 = (($6788) + 56|0); + $6790 = HEAP32[$6789>>2]|0; + $6791 = (($6790) + ($6787<<2)|0); + $6792 = HEAP32[$6791>>2]|0; + HEAP32[$pCur116>>2] = $6792; + $6793 = HEAP32[$pOp>>2]|0; + $6794 = (($6793) + 12|0); + $6795 = HEAP32[$6794>>2]|0; + $6796 = HEAP32[$aMem>>2]|0; + $6797 = (($6796) + (($6795*40)|0)|0); + HEAP32[$pDest115>>2] = $6797; + $6798 = HEAP32[$pCur116>>2]|0; + $6799 = (($6798) + 25|0); + $6800 = HEAP8[$6799>>0]|0; + $6801 = ($6800<<24>>24)!=(0); + if ($6801) { + $6802 = HEAP32[$pDest115>>2]|0; + _sqlite3VdbeMemSetNull($6802); + break L21; + } + $6803 = HEAP32[$pCur116>>2]|0; + $6804 = (($6803) + 32|0); + $6805 = HEAP32[$6804>>2]|0; + $6806 = HEAP32[$6805>>2]|0; + HEAP32[$pVtab113>>2] = $6806; + $6807 = HEAP32[$pVtab113>>2]|0; + $6808 = HEAP32[$6807>>2]|0; + HEAP32[$pModule114>>2] = $6808; + dest=$sContext+0|0; stop=dest+72|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $6809 = (($sContext) + 8|0); + $6810 = HEAP32[$pDest115>>2]|0; + _sqlite3VdbeMemMove($6809,$6810); + $6811 = (($sContext) + 8|0); + $6812 = (($6811) + 28|0); + $6813 = HEAP16[$6812>>1]|0; + $6814 = $6813&65535; + $6815 = $6814 & -16896; + $6816 = $6815 | 1; + $6817 = $6816&65535; + $6818 = (($sContext) + 8|0); + $6819 = (($6818) + 28|0); + HEAP16[$6819>>1] = $6817; + $6820 = HEAP32[$pModule114>>2]|0; + $6821 = (($6820) + 44|0); + $6822 = HEAP32[$6821>>2]|0; + $6823 = HEAP32[$pCur116>>2]|0; + $6824 = (($6823) + 32|0); + $6825 = HEAP32[$6824>>2]|0; + $6826 = HEAP32[$pOp>>2]|0; + $6827 = (($6826) + 8|0); + $6828 = HEAP32[$6827>>2]|0; + $6829 = (FUNCTION_TABLE_iiii[$6822 & 31]($6825,$sContext,$6828)|0); + HEAP32[$rc>>2] = $6829; + $6830 = HEAP32[$0>>2]|0; + $6831 = HEAP32[$pVtab113>>2]|0; + _sqlite3VtabImportErrmsg($6830,$6831); + $6832 = (($sContext) + 64|0); + $6833 = HEAP32[$6832>>2]|0; + $6834 = ($6833|0)!=(0); + if ($6834) { + $6835 = (($sContext) + 64|0); + $6836 = HEAP32[$6835>>2]|0; + HEAP32[$rc>>2] = $6836; + } + $6837 = (($sContext) + 8|0); + $6838 = HEAP8[$encoding>>0]|0; + $6839 = $6838&255; + (_sqlite3VdbeChangeEncoding($6837,$6839)|0); + $6840 = HEAP32[$pDest115>>2]|0; + $6841 = (($sContext) + 8|0); + _sqlite3VdbeMemMove($6840,$6841); + $6842 = HEAP32[$pDest115>>2]|0; + $6843 = (_sqlite3VdbeMemTooBig($6842)|0); + $6844 = ($6843|0)!=(0); + if ($6844) { + label = 899; + break L11; + } + break; + } + case 138: { + $6558 = HEAP32[$pOp>>2]|0; + $6559 = (($6558) + 4|0); + $6560 = HEAP32[$6559>>2]|0; + $6561 = HEAP32[$db>>2]|0; + $6562 = (($6561) + 16|0); + $6563 = HEAP32[$6562>>2]|0; + $6564 = (($6563) + ($6560<<4)|0); + $6565 = (($6564) + 4|0); + $6566 = HEAP32[$6565>>2]|0; + HEAP32[$pBt101>>2] = $6566; + $6567 = HEAP32[$pBt101>>2]|0; + $6568 = (_sqlite3BtreeIncrVacuum($6567)|0); + HEAP32[$rc>>2] = $6568; + $6569 = HEAP32[$rc>>2]|0; + $6570 = ($6569|0)==(101); + if ($6570) { + $6571 = HEAP32[$pOp>>2]|0; + $6572 = (($6571) + 8|0); + $6573 = HEAP32[$6572>>2]|0; + $6574 = (($6573) - 1)|0; + HEAP32[$pc>>2] = $6574; + HEAP32[$rc>>2] = 0; + } + break; + } + case 153: { + $7032 = HEAP32[$pOp>>2]|0; + $7033 = (($7032) + 4|0); + $7034 = HEAP32[$7033>>2]|0; + $7035 = HEAP32[$db>>2]|0; + $7036 = (($7035) + 16|0); + $7037 = HEAP32[$7036>>2]|0; + $7038 = (($7037) + ($7034<<4)|0); + $7039 = (($7038) + 4|0); + $7040 = HEAP32[$7039>>2]|0; + $7041 = (_sqlite3BtreeLastPage($7040)|0); + $7042 = HEAP32[$pOut>>2]|0; + $7043 = (($7042) + 16|0); + $7044 = $7043; + $7045 = $7044; + HEAP32[$7045>>2] = $7041; + $7046 = (($7044) + 4)|0; + $7047 = $7046; + HEAP32[$7047>>2] = 0; + break; + } + case 154: { + $7048 = HEAP32[$pOp>>2]|0; + $7049 = (($7048) + 4|0); + $7050 = HEAP32[$7049>>2]|0; + $7051 = HEAP32[$db>>2]|0; + $7052 = (($7051) + 16|0); + $7053 = HEAP32[$7052>>2]|0; + $7054 = (($7053) + ($7050<<4)|0); + $7055 = (($7054) + 4|0); + $7056 = HEAP32[$7055>>2]|0; + HEAP32[$pBt129>>2] = $7056; + HEAP32[$newMax>>2] = 0; + $7057 = HEAP32[$pOp>>2]|0; + $7058 = (($7057) + 12|0); + $7059 = HEAP32[$7058>>2]|0; + $7060 = ($7059|0)!=(0); + if ($7060) { + $7061 = HEAP32[$pBt129>>2]|0; + $7062 = (_sqlite3BtreeLastPage($7061)|0); + HEAP32[$newMax>>2] = $7062; + $7063 = HEAP32[$newMax>>2]|0; + $7064 = HEAP32[$pOp>>2]|0; + $7065 = (($7064) + 12|0); + $7066 = HEAP32[$7065>>2]|0; + $7067 = ($7063>>>0)<($7066>>>0); + if ($7067) { + $7068 = HEAP32[$pOp>>2]|0; + $7069 = (($7068) + 12|0); + $7070 = HEAP32[$7069>>2]|0; + HEAP32[$newMax>>2] = $7070; + } + } + $7071 = HEAP32[$pBt129>>2]|0; + $7072 = HEAP32[$newMax>>2]|0; + $7073 = (_sqlite3BtreeMaxPageCount($7071,$7072)|0); + $7074 = ($7073|0)<(0); + $7075 = $7074 << 31 >> 31; + $7076 = HEAP32[$pOut>>2]|0; + $7077 = (($7076) + 16|0); + $7078 = $7077; + $7079 = $7078; + HEAP32[$7079>>2] = $7073; + $7080 = (($7078) + 4)|0; + $7081 = $7080; + HEAP32[$7081>>2] = $7075; + break; + } + case 142: { + $6634 = HEAP32[$db>>2]|0; + $6635 = HEAP32[$pOp>>2]|0; + $6636 = (($6635) + 4|0); + $6637 = HEAP32[$6636>>2]|0; + $6638 = HEAP32[$pOp>>2]|0; + $6639 = (($6638) + 16|0); + $6640 = HEAP32[$6639>>2]|0; + $6641 = HEAP32[$0>>2]|0; + $6642 = (($6641) + 44|0); + $6643 = (_sqlite3VtabCallCreate($6634,$6637,$6640,$6642)|0); + HEAP32[$rc>>2] = $6643; + break; + } + case 149: { + HEAP32[$pCur104>>2] = 0; + HEAP32[$pVtabCursor>>2] = 0; + $6661 = HEAP32[$pOp>>2]|0; + $6662 = (($6661) + 16|0); + $6663 = HEAP32[$6662>>2]|0; + $6664 = (($6663) + 8|0); + $6665 = HEAP32[$6664>>2]|0; + HEAP32[$pVtab105>>2] = $6665; + $6666 = HEAP32[$pVtab105>>2]|0; + $6667 = HEAP32[$6666>>2]|0; + HEAP32[$pModule106>>2] = $6667; + $6668 = HEAP32[$pModule106>>2]|0; + $6669 = (($6668) + 24|0); + $6670 = HEAP32[$6669>>2]|0; + $6671 = HEAP32[$pVtab105>>2]|0; + $6672 = (FUNCTION_TABLE_iii[$6670 & 127]($6671,$pVtabCursor)|0); + HEAP32[$rc>>2] = $6672; + $6673 = HEAP32[$0>>2]|0; + $6674 = HEAP32[$pVtab105>>2]|0; + _sqlite3VtabImportErrmsg($6673,$6674); + $6675 = HEAP32[$rc>>2]|0; + $6676 = (0)==($6675|0); + if ($6676) { + $6677 = HEAP32[$pVtab105>>2]|0; + $6678 = HEAP32[$pVtabCursor>>2]|0; + HEAP32[$6678>>2] = $6677; + $6679 = HEAP32[$0>>2]|0; + $6680 = HEAP32[$pOp>>2]|0; + $6681 = (($6680) + 4|0); + $6682 = HEAP32[$6681>>2]|0; + $6683 = (_allocateCursor($6679,$6682,0,-1,0)|0); + HEAP32[$pCur104>>2] = $6683; + $6684 = HEAP32[$pCur104>>2]|0; + $6685 = ($6684|0)!=(0|0); + if ($6685) { + $6686 = HEAP32[$pVtabCursor>>2]|0; + $6687 = HEAP32[$pCur104>>2]|0; + $6688 = (($6687) + 32|0); + HEAP32[$6688>>2] = $6686; + break L21; + } else { + $6689 = HEAP32[$db>>2]|0; + $6690 = (($6689) + 64|0); + HEAP8[$6690>>0] = 1; + $6691 = HEAP32[$pModule106>>2]|0; + $6692 = (($6691) + 28|0); + $6693 = HEAP32[$6692>>2]|0; + $6694 = HEAP32[$pVtabCursor>>2]|0; + (FUNCTION_TABLE_ii[$6693 & 63]($6694)|0); + break L21; + } + } + break; + } + case 15: { + $6925 = HEAP32[$pOp>>2]|0; + $6926 = (($6925) + 16|0); + $6927 = HEAP32[$6926>>2]|0; + $6928 = (($6927) + 8|0); + $6929 = HEAP32[$6928>>2]|0; + HEAP32[$pVtab122>>2] = $6929; + $6930 = HEAP32[$pVtab122>>2]|0; + $6931 = HEAP32[$6930>>2]|0; + HEAP32[$pModule123>>2] = $6931; + $6932 = HEAP32[$pOp>>2]|0; + $6933 = (($6932) + 8|0); + $6934 = HEAP32[$6933>>2]|0; + HEAP32[$nArg124>>2] = $6934; + $6935 = HEAP32[$pModule123>>2]|0; + $6936 = (($6935) + 52|0); + $6937 = HEAP32[$6936>>2]|0; + $6938 = ($6937|0)!=(0|0); + if ($6938) { + $6939 = HEAP32[$db>>2]|0; + $6940 = (($6939) + 68|0); + $6941 = HEAP8[$6940>>0]|0; + HEAP8[$vtabOnConflict>>0] = $6941; + $6942 = HEAP32[$0>>2]|0; + $6943 = (($6942) + 12|0); + $6944 = HEAP32[$6943>>2]|0; + HEAP32[$apArg127>>2] = $6944; + $6945 = HEAP32[$pOp>>2]|0; + $6946 = (($6945) + 12|0); + $6947 = HEAP32[$6946>>2]|0; + $6948 = HEAP32[$aMem>>2]|0; + $6949 = (($6948) + (($6947*40)|0)|0); + HEAP32[$pX128>>2] = $6949; + HEAP32[$i125>>2] = 0; + while(1) { + $6950 = HEAP32[$i125>>2]|0; + $6951 = HEAP32[$nArg124>>2]|0; + $6952 = ($6950|0)<($6951|0); + if (!($6952)) { + break; + } + $6953 = HEAP32[$pX128>>2]|0; + $6954 = HEAP32[$i125>>2]|0; + $6955 = HEAP32[$apArg127>>2]|0; + $6956 = (($6955) + ($6954<<2)|0); + HEAP32[$6956>>2] = $6953; + $6957 = HEAP32[$pX128>>2]|0; + $6958 = (($6957) + 40|0); + HEAP32[$pX128>>2] = $6958; + $6959 = HEAP32[$i125>>2]|0; + $6960 = (($6959) + 1)|0; + HEAP32[$i125>>2] = $6960; + } + $6961 = HEAP32[$pOp>>2]|0; + $6962 = (($6961) + 3|0); + $6963 = HEAP8[$6962>>0]|0; + $6964 = HEAP32[$db>>2]|0; + $6965 = (($6964) + 68|0); + HEAP8[$6965>>0] = $6963; + $6966 = HEAP32[$pModule123>>2]|0; + $6967 = (($6966) + 52|0); + $6968 = HEAP32[$6967>>2]|0; + $6969 = HEAP32[$pVtab122>>2]|0; + $6970 = HEAP32[$nArg124>>2]|0; + $6971 = HEAP32[$apArg127>>2]|0; + $6972 = (FUNCTION_TABLE_iiiii[$6968 & 31]($6969,$6970,$6971,$rowid126)|0); + HEAP32[$rc>>2] = $6972; + $6973 = HEAP8[$vtabOnConflict>>0]|0; + $6974 = HEAP32[$db>>2]|0; + $6975 = (($6974) + 68|0); + HEAP8[$6975>>0] = $6973; + $6976 = HEAP32[$0>>2]|0; + $6977 = HEAP32[$pVtab122>>2]|0; + _sqlite3VtabImportErrmsg($6976,$6977); + $6978 = HEAP32[$rc>>2]|0; + $6979 = ($6978|0)==(0); + if ($6979) { + $6980 = HEAP32[$pOp>>2]|0; + $6981 = (($6980) + 4|0); + $6982 = HEAP32[$6981>>2]|0; + $6983 = ($6982|0)!=(0); + if ($6983) { + $6984 = $rowid126; + $6985 = $6984; + $6986 = HEAP32[$6985>>2]|0; + $6987 = (($6984) + 4)|0; + $6988 = $6987; + $6989 = HEAP32[$6988>>2]|0; + $6990 = $lastRowid; + $6991 = $6990; + HEAP32[$6991>>2] = $6986; + $6992 = (($6990) + 4)|0; + $6993 = $6992; + HEAP32[$6993>>2] = $6989; + $6994 = HEAP32[$db>>2]|0; + $6995 = (($6994) + 32|0); + $6996 = $6995; + $6997 = $6996; + HEAP32[$6997>>2] = $6986; + $6998 = (($6996) + 4)|0; + $6999 = $6998; + HEAP32[$6999>>2] = $6989; + } + } + $7000 = HEAP32[$rc>>2]|0; + $7001 = $7000 & 255; + $7002 = ($7001|0)==(19); + if ($7002) { + $7003 = HEAP32[$pOp>>2]|0; + $7004 = (($7003) + 16|0); + $7005 = HEAP32[$7004>>2]|0; + $7006 = (($7005) + 16|0); + $7007 = HEAP8[$7006>>0]|0; + $7008 = $7007&255; + $7009 = ($7008|0)!=(0); + if ($7009) { + $7010 = HEAP32[$pOp>>2]|0; + $7011 = (($7010) + 3|0); + $7012 = HEAP8[$7011>>0]|0; + $7013 = $7012&255; + $7014 = ($7013|0)==(4); + if ($7014) { + HEAP32[$rc>>2] = 0; + break L21; + } + $7015 = HEAP32[$pOp>>2]|0; + $7016 = (($7015) + 3|0); + $7017 = HEAP8[$7016>>0]|0; + $7018 = $7017&255; + $7019 = ($7018|0)==(5); + if ($7019) { + $7025 = 2; + } else { + $7020 = HEAP32[$pOp>>2]|0; + $7021 = (($7020) + 3|0); + $7022 = HEAP8[$7021>>0]|0; + $7023 = $7022&255; + $7025 = $7023; + } + $7024 = $7025&255; + $7026 = HEAP32[$0>>2]|0; + $7027 = (($7026) + 86|0); + HEAP8[$7027>>0] = $7024; + break L21; + } + } + $7028 = HEAP32[$0>>2]|0; + $7029 = (($7028) + 92|0); + $7030 = HEAP32[$7029>>2]|0; + $7031 = (($7030) + 1)|0; + HEAP32[$7029>>2] = $7031; + } + break; + } + case 13: { + $6554 = HEAP32[$0>>2]|0; + $6555 = (($6554) + 44|0); + $6556 = HEAP32[$db>>2]|0; + $6557 = (_sqlite3RunVacuum($6555,$6556)|0); + HEAP32[$rc>>2] = $6557; + break; + } + case 151: { + HEAP32[$res119>>2] = 0; + $6845 = HEAP32[$pOp>>2]|0; + $6846 = (($6845) + 4|0); + $6847 = HEAP32[$6846>>2]|0; + $6848 = HEAP32[$0>>2]|0; + $6849 = (($6848) + 56|0); + $6850 = HEAP32[$6849>>2]|0; + $6851 = (($6850) + ($6847<<2)|0); + $6852 = HEAP32[$6851>>2]|0; + HEAP32[$pCur120>>2] = $6852; + $6853 = HEAP32[$pCur120>>2]|0; + $6854 = (($6853) + 25|0); + $6855 = HEAP8[$6854>>0]|0; + $6856 = ($6855<<24>>24)!=(0); + if (!($6856)) { + $6857 = HEAP32[$pCur120>>2]|0; + $6858 = (($6857) + 32|0); + $6859 = HEAP32[$6858>>2]|0; + $6860 = HEAP32[$6859>>2]|0; + HEAP32[$pVtab117>>2] = $6860; + $6861 = HEAP32[$pVtab117>>2]|0; + $6862 = HEAP32[$6861>>2]|0; + HEAP32[$pModule118>>2] = $6862; + $6863 = HEAP32[$0>>2]|0; + $6864 = (($6863) + 88|0); + $6865 = HEAP16[$6864>>1]|0; + $6866 = $6865 & -13; + $6867 = $6866 | 4; + HEAP16[$6864>>1] = $6867; + $6868 = HEAP32[$pModule118>>2]|0; + $6869 = (($6868) + 36|0); + $6870 = HEAP32[$6869>>2]|0; + $6871 = HEAP32[$pCur120>>2]|0; + $6872 = (($6871) + 32|0); + $6873 = HEAP32[$6872>>2]|0; + $6874 = (FUNCTION_TABLE_ii[$6870 & 63]($6873)|0); + HEAP32[$rc>>2] = $6874; + $6875 = HEAP32[$0>>2]|0; + $6876 = (($6875) + 88|0); + $6877 = HEAP16[$6876>>1]|0; + $6878 = $6877 & -13; + HEAP16[$6876>>1] = $6878; + $6879 = HEAP32[$0>>2]|0; + $6880 = HEAP32[$pVtab117>>2]|0; + _sqlite3VtabImportErrmsg($6879,$6880); + $6881 = HEAP32[$rc>>2]|0; + $6882 = ($6881|0)==(0); + if ($6882) { + $6883 = HEAP32[$pModule118>>2]|0; + $6884 = (($6883) + 40|0); + $6885 = HEAP32[$6884>>2]|0; + $6886 = HEAP32[$pCur120>>2]|0; + $6887 = (($6886) + 32|0); + $6888 = HEAP32[$6887>>2]|0; + $6889 = (FUNCTION_TABLE_ii[$6885 & 63]($6888)|0); + HEAP32[$res119>>2] = $6889; + } + $6890 = HEAP32[$res119>>2]|0; + $6891 = ($6890|0)!=(0); + if ($6891) { + label = 16; + } else { + $6892 = HEAP32[$pOp>>2]|0; + $6893 = (($6892) + 8|0); + $6894 = HEAP32[$6893>>2]|0; + $6895 = (($6894) - 1)|0; + HEAP32[$pc>>2] = $6895; + label = 16; + } + } + break; + } + case 139: { + $6575 = HEAP32[$pOp>>2]|0; + $6576 = (($6575) + 4|0); + $6577 = HEAP32[$6576>>2]|0; + $6578 = ($6577|0)!=(0); + if ($6578) { + $6580 = HEAP32[$0>>2]|0; + $6581 = (($6580) + 88|0); + $6582 = HEAP16[$6581>>1]|0; + $6583 = $6582 & -33; + $6584 = $6583 | 32; + HEAP16[$6581>>1] = $6584; + break L21; + } else { + $6579 = HEAP32[$db>>2]|0; + _sqlite3ExpirePreparedStatements($6579); + break L21; + } + break; + } + case 140: { + $6585 = HEAP32[$pOp>>2]|0; + $6586 = (($6585) + 12|0); + $6587 = HEAP32[$6586>>2]|0; + $6588 = $6587&255; + HEAP8[$isWriteLock>>0] = $6588; + $6589 = HEAP8[$isWriteLock>>0]|0; + $6590 = $6589&255; + $6591 = ($6590|0)!=(0); + if (!($6591)) { + $6592 = HEAP32[$db>>2]|0; + $6593 = (($6592) + 24|0); + $6594 = HEAP32[$6593>>2]|0; + $6595 = $6594 & 16384; + $6596 = (0)==($6595|0); + if (!($6596)) { + break L21; + } + } + $6597 = HEAP32[$pOp>>2]|0; + $6598 = (($6597) + 4|0); + $6599 = HEAP32[$6598>>2]|0; + HEAP32[$p1102>>2] = $6599; + $6600 = HEAP32[$p1102>>2]|0; + $6601 = HEAP32[$db>>2]|0; + $6602 = (($6601) + 16|0); + $6603 = HEAP32[$6602>>2]|0; + $6604 = (($6603) + ($6600<<4)|0); + $6605 = (($6604) + 4|0); + $6606 = HEAP32[$6605>>2]|0; + $6607 = HEAP32[$pOp>>2]|0; + $6608 = (($6607) + 8|0); + $6609 = HEAP32[$6608>>2]|0; + $6610 = HEAP8[$isWriteLock>>0]|0; + $6611 = (_sqlite3BtreeLockTable($6606,$6609,$6610)|0); + HEAP32[$rc>>2] = $6611; + $6612 = HEAP32[$rc>>2]|0; + $6613 = $6612 & 255; + $6614 = ($6613|0)==(6); + if ($6614) { + $6615 = HEAP32[$pOp>>2]|0; + $6616 = (($6615) + 16|0); + $6617 = HEAP32[$6616>>2]|0; + HEAP32[$z103>>2] = $6617; + $6618 = HEAP32[$0>>2]|0; + $6619 = (($6618) + 44|0); + $6620 = HEAP32[$db>>2]|0; + $6621 = HEAP32[$z103>>2]|0; + HEAP32[$vararg_buffer62>>2] = $6621; + _sqlite3SetString($6619,$6620,38432,$vararg_buffer62); + } + break; + } + case 141: { + $6622 = HEAP32[$pOp>>2]|0; + $6623 = (($6622) + 16|0); + $6624 = HEAP32[$6623>>2]|0; + HEAP32[$pVTab>>2] = $6624; + $6625 = HEAP32[$db>>2]|0; + $6626 = HEAP32[$pVTab>>2]|0; + $6627 = (_sqlite3VtabBegin($6625,$6626)|0); + HEAP32[$rc>>2] = $6627; + $6628 = HEAP32[$pVTab>>2]|0; + $6629 = ($6628|0)!=(0|0); + if ($6629) { + $6630 = HEAP32[$0>>2]|0; + $6631 = HEAP32[$pVTab>>2]|0; + $6632 = (($6631) + 8|0); + $6633 = HEAP32[$6632>>2]|0; + _sqlite3VtabImportErrmsg($6630,$6633); + } + break; + } + case 16: { + $101 = HEAP32[$pOp>>2]|0; + $102 = (($101) + 8|0); + $103 = HEAP32[$102>>2]|0; + $104 = (($103) - 1)|0; + HEAP32[$pc>>2] = $104; + label = 16; + break; + } + case 29: { + $523 = HEAP32[$pOp>>2]|0; + $524 = (($523) + 4|0); + $525 = HEAP32[$524>>2]|0; + $526 = HEAP32[$aMem>>2]|0; + $527 = (($526) + (($525*40)|0)|0); + HEAP32[$pOut>>2] = $527; + $528 = HEAP32[$pOut>>2]|0; + $529 = (($528) + 28|0); + $530 = HEAP16[$529>>1]|0; + $531 = $530&65535; + $532 = $531 | 1; + $533 = $532 & -129; + $534 = $533&65535; + $535 = HEAP32[$pOut>>2]|0; + $536 = (($535) + 28|0); + HEAP16[$536>>1] = $534; + break; + } + case 21: { + $197 = HEAP32[$pOp>>2]|0; + $198 = (($197) + 4|0); + $199 = HEAP32[$198>>2]|0; + $200 = HEAP32[$aMem>>2]|0; + $201 = (($200) + (($199*40)|0)|0); + HEAP32[$pIn1>>2] = $201; + $202 = HEAP32[$pIn1>>2]|0; + $203 = (($202) + 16|0); + $204 = $203; + $205 = $204; + $206 = HEAP32[$205>>2]|0; + $207 = (($204) + 4)|0; + $208 = $207; + $209 = HEAP32[$208>>2]|0; + $210 = HEAP32[$aOp>>2]|0; + $211 = (($210) + (($206*20)|0)|0); + HEAP32[$pCaller>>2] = $211; + $212 = HEAP32[$pCaller>>2]|0; + $213 = (($212) + 8|0); + $214 = HEAP32[$213>>2]|0; + $215 = (($214) - 1)|0; + HEAP32[$pc>>2] = $215; + $216 = HEAP32[$pIn1>>2]|0; + $217 = (($216) + 28|0); + HEAP16[$217>>1] = 128; + break; + } + case 18: { + $155 = HEAP32[$pOp>>2]|0; + $156 = (($155) + 4|0); + $157 = HEAP32[$156>>2]|0; + $158 = HEAP32[$aMem>>2]|0; + $159 = (($158) + (($157*40)|0)|0); + HEAP32[$pIn1>>2] = $159; + $160 = HEAP32[$pIn1>>2]|0; + $161 = (($160) + 16|0); + $162 = $161; + $163 = $162; + $164 = HEAP32[$163>>2]|0; + $165 = (($162) + 4)|0; + $166 = $165; + $167 = HEAP32[$166>>2]|0; + HEAP32[$pc>>2] = $164; + $168 = HEAP32[$pIn1>>2]|0; + $169 = (($168) + 28|0); + HEAP16[$169>>1] = 128; + break; + } + case 23: { + $243 = HEAP32[$pOp>>2]|0; + $244 = (($243) + 12|0); + $245 = HEAP32[$244>>2]|0; + $246 = HEAP32[$aMem>>2]|0; + $247 = (($246) + (($245*40)|0)|0); + HEAP32[$pIn3>>2] = $247; + $248 = HEAP32[$pIn3>>2]|0; + $249 = (($248) + 28|0); + $250 = HEAP16[$249>>1]|0; + $251 = $250&65535; + $252 = $251 & 1; + $253 = ($252|0)==(0); + if (!($253)) { + label = 28; + } + break; + } + case 133: { + $411 = HEAP32[$pOut>>2]|0; + $412 = (($411) + 28|0); + HEAP16[$412>>1] = 8; + $413 = HEAP32[$pOp>>2]|0; + $414 = (($413) + 16|0); + $415 = HEAP32[$414>>2]|0; + $416 = +HEAPF64[$415>>3]; + $417 = HEAP32[$pOut>>2]|0; + $418 = (($417) + 8|0); + HEAPF64[$418>>3] = $416; + break; + } + case 97: { + $419 = HEAP32[$pOp>>2]|0; + HEAP8[$419>>0] = 27; + $420 = HEAP32[$pOp>>2]|0; + $421 = (($420) + 16|0); + $422 = HEAP32[$421>>2]|0; + $423 = (_sqlite3Strlen30($422)|0); + $424 = HEAP32[$pOp>>2]|0; + $425 = (($424) + 4|0); + HEAP32[$425>>2] = $423; + $426 = HEAP8[$encoding>>0]|0; + $427 = $426&255; + $428 = ($427|0)!=(1); + if ($428) { + $429 = HEAP32[$pOut>>2]|0; + $430 = HEAP32[$pOp>>2]|0; + $431 = (($430) + 16|0); + $432 = HEAP32[$431>>2]|0; + $433 = (_sqlite3VdbeMemSetStr($429,$432,-1,1,0)|0); + HEAP32[$rc>>2] = $433; + $434 = HEAP32[$rc>>2]|0; + $435 = ($434|0)==(18); + if ($435) { + label = 899; + break L11; + } + $436 = HEAP32[$pOut>>2]|0; + $437 = HEAP8[$encoding>>0]|0; + $438 = $437&255; + $439 = (_sqlite3VdbeChangeEncoding($436,$438)|0); + $440 = (0)!=($439|0); + if ($440) { + label = 900; + break L1; + } + $441 = HEAP32[$pOut>>2]|0; + $442 = (($441) + 36|0); + HEAP32[$442>>2] = 0; + $443 = HEAP32[$pOut>>2]|0; + $444 = (($443) + 28|0); + $445 = HEAP16[$444>>1]|0; + $446 = $445&65535; + $447 = $446 | 2048; + $448 = $447&65535; + HEAP16[$444>>1] = $448; + $449 = HEAP32[$pOp>>2]|0; + $450 = (($449) + 1|0); + $451 = HEAP8[$450>>0]|0; + $452 = $451 << 24 >> 24; + $453 = ($452|0)==(-1); + if ($453) { + $454 = HEAP32[$db>>2]|0; + $455 = HEAP32[$pOp>>2]|0; + $456 = (($455) + 16|0); + $457 = HEAP32[$456>>2]|0; + _sqlite3DbFree($454,$457); + } + $458 = HEAP32[$pOp>>2]|0; + $459 = (($458) + 1|0); + HEAP8[$459>>0] = -1; + $460 = HEAP32[$pOut>>2]|0; + $461 = (($460) + 4|0); + $462 = HEAP32[$461>>2]|0; + $463 = HEAP32[$pOp>>2]|0; + $464 = (($463) + 16|0); + HEAP32[$464>>2] = $462; + $465 = HEAP32[$pOut>>2]|0; + $466 = (($465) + 24|0); + $467 = HEAP32[$466>>2]|0; + $468 = HEAP32[$pOp>>2]|0; + $469 = (($468) + 4|0); + HEAP32[$469>>2] = $467; + } + $470 = HEAP32[$pOp>>2]|0; + $471 = (($470) + 4|0); + $472 = HEAP32[$471>>2]|0; + $473 = HEAP32[$db>>2]|0; + $474 = (($473) + 88|0); + $475 = HEAP32[$474>>2]|0; + $476 = ($472|0)>($475|0); + if ($476) { + label = 899; + break L11; + } else { + label = 57; + } + break; + } + case 24: { + label = 28; + break; + } + case 26: { + $396 = HEAP32[$pOp>>2]|0; + $397 = (($396) + 16|0); + $398 = HEAP32[$397>>2]|0; + $399 = $398; + $400 = $399; + $401 = HEAP32[$400>>2]|0; + $402 = (($399) + 4)|0; + $403 = $402; + $404 = HEAP32[$403>>2]|0; + $405 = HEAP32[$pOut>>2]|0; + $406 = (($405) + 16|0); + $407 = $406; + $408 = $407; + HEAP32[$408>>2] = $401; + $409 = (($407) + 4)|0; + $410 = $409; + HEAP32[$410>>2] = $404; + break; + } + case 22: { + $218 = HEAP32[$pOp>>2]|0; + $219 = (($218) + 4|0); + $220 = HEAP32[$219>>2]|0; + $221 = HEAP32[$aMem>>2]|0; + $222 = (($221) + (($220*40)|0)|0); + HEAP32[$pIn1>>2] = $222; + $223 = HEAP32[$pIn1>>2]|0; + $224 = (($223) + 28|0); + HEAP16[$224>>1] = 4; + $225 = HEAP32[$pIn1>>2]|0; + $226 = (($225) + 16|0); + $227 = $226; + $228 = $227; + $229 = HEAP32[$228>>2]|0; + $230 = (($227) + 4)|0; + $231 = $230; + $232 = HEAP32[$231>>2]|0; + HEAP32[$pcDest>>2] = $229; + $233 = HEAP32[$pc>>2]|0; + $234 = ($233|0)<(0); + $235 = $234 << 31 >> 31; + $236 = HEAP32[$pIn1>>2]|0; + $237 = (($236) + 16|0); + $238 = $237; + $239 = $238; + HEAP32[$239>>2] = $233; + $240 = (($238) + 4)|0; + $241 = $240; + HEAP32[$241>>2] = $235; + $242 = HEAP32[$pcDest>>2]|0; + HEAP32[$pc>>2] = $242; + break; + } + case 28: { + $492 = HEAP32[$pOp>>2]|0; + $493 = (($492) + 12|0); + $494 = HEAP32[$493>>2]|0; + $495 = HEAP32[$pOp>>2]|0; + $496 = (($495) + 8|0); + $497 = HEAP32[$496>>2]|0; + $498 = (($494) - ($497))|0; + HEAP32[$cnt>>2] = $498; + $499 = HEAP32[$pOp>>2]|0; + $500 = (($499) + 4|0); + $501 = HEAP32[$500>>2]|0; + $502 = ($501|0)!=(0); + $503 = $502 ? 257 : 1; + $504 = $503&65535; + HEAP16[$nullFlag>>1] = $504; + $505 = HEAP32[$pOut>>2]|0; + $506 = (($505) + 28|0); + HEAP16[$506>>1] = $504; + while(1) { + $507 = HEAP32[$cnt>>2]|0; + $508 = ($507|0)>(0); + if (!($508)) { + break L21; + } + $509 = HEAP32[$pOut>>2]|0; + $510 = (($509) + 40|0); + HEAP32[$pOut>>2] = $510; + $511 = HEAP32[$pOut>>2]|0; + $512 = (($511) + 28|0); + $513 = HEAP16[$512>>1]|0; + $514 = $513&65535; + $515 = $514 & 9312; + $516 = ($515|0)!=(0); + if ($516) { + $517 = HEAP32[$pOut>>2]|0; + _sqlite3VdbeMemReleaseExternal($517); + } + $518 = HEAP16[$nullFlag>>1]|0; + $519 = HEAP32[$pOut>>2]|0; + $520 = (($519) + 28|0); + HEAP16[$520>>1] = $518; + $521 = HEAP32[$cnt>>2]|0; + $522 = (($521) + -1)|0; + HEAP32[$cnt>>2] = $522; + } + break; + } + case 20: { + $170 = HEAP32[$pOp>>2]|0; + $171 = (($170) + 4|0); + $172 = HEAP32[$171>>2]|0; + $173 = HEAP32[$aMem>>2]|0; + $174 = (($173) + (($172*40)|0)|0); + HEAP32[$pOut>>2] = $174; + $175 = HEAP32[$pOp>>2]|0; + $176 = (($175) + 12|0); + $177 = HEAP32[$176>>2]|0; + $178 = (($177) - 1)|0; + $179 = ($178|0)<(0); + $180 = $179 << 31 >> 31; + $181 = HEAP32[$pOut>>2]|0; + $182 = (($181) + 16|0); + $183 = $182; + $184 = $183; + HEAP32[$184>>2] = $178; + $185 = (($183) + 4)|0; + $186 = $185; + HEAP32[$186>>2] = $180; + $187 = HEAP32[$pOut>>2]|0; + $188 = (($187) + 28|0); + HEAP16[$188>>1] = 4; + $189 = HEAP32[$pOp>>2]|0; + $190 = (($189) + 8|0); + $191 = HEAP32[$190>>2]|0; + $192 = ($191|0)!=(0); + if ($192) { + $193 = HEAP32[$pOp>>2]|0; + $194 = (($193) + 8|0); + $195 = HEAP32[$194>>2]|0; + $196 = (($195) - 1)|0; + HEAP32[$pc>>2] = $196; + } + break; + } + case 27: { + label = 57; + break; + } + case 17: { + $135 = HEAP32[$pOp>>2]|0; + $136 = (($135) + 4|0); + $137 = HEAP32[$136>>2]|0; + $138 = HEAP32[$aMem>>2]|0; + $139 = (($138) + (($137*40)|0)|0); + HEAP32[$pIn1>>2] = $139; + $140 = HEAP32[$pIn1>>2]|0; + $141 = (($140) + 28|0); + HEAP16[$141>>1] = 4; + $142 = HEAP32[$pc>>2]|0; + $143 = ($142|0)<(0); + $144 = $143 << 31 >> 31; + $145 = HEAP32[$pIn1>>2]|0; + $146 = (($145) + 16|0); + $147 = $146; + $148 = $147; + HEAP32[$148>>2] = $142; + $149 = (($147) + 4)|0; + $150 = $149; + HEAP32[$150>>2] = $144; + $151 = HEAP32[$pOp>>2]|0; + $152 = (($151) + 8|0); + $153 = HEAP32[$152>>2]|0; + $154 = (($153) - 1)|0; + HEAP32[$pc>>2] = $154; + break; + } + case 25: { + $385 = HEAP32[$pOp>>2]|0; + $386 = (($385) + 4|0); + $387 = HEAP32[$386>>2]|0; + $388 = ($387|0)<(0); + $389 = $388 << 31 >> 31; + $390 = HEAP32[$pOut>>2]|0; + $391 = (($390) + 16|0); + $392 = $391; + $393 = $392; + HEAP32[$393>>2] = $387; + $394 = (($392) + 4)|0; + $395 = $394; + HEAP32[$395>>2] = $389; + break; + } + case 94: { + $711 = HEAP32[$pOp>>2]|0; + $712 = (($711) + 4|0); + $713 = HEAP32[$712>>2]|0; + $714 = HEAP32[$aMem>>2]|0; + $715 = (($714) + (($713*40)|0)|0); + HEAP32[$pIn1>>2] = $715; + $716 = HEAP32[$pOp>>2]|0; + $717 = (($716) + 8|0); + $718 = HEAP32[$717>>2]|0; + $719 = HEAP32[$aMem>>2]|0; + $720 = (($719) + (($718*40)|0)|0); + HEAP32[$pIn2>>2] = $720; + $721 = HEAP32[$pOp>>2]|0; + $722 = (($721) + 12|0); + $723 = HEAP32[$722>>2]|0; + $724 = HEAP32[$aMem>>2]|0; + $725 = (($724) + (($723*40)|0)|0); + HEAP32[$pOut>>2] = $725; + $726 = HEAP32[$pIn1>>2]|0; + $727 = (($726) + 28|0); + $728 = HEAP16[$727>>1]|0; + $729 = $728&65535; + $730 = HEAP32[$pIn2>>2]|0; + $731 = (($730) + 28|0); + $732 = HEAP16[$731>>1]|0; + $733 = $732&65535; + $734 = $729 | $733; + $735 = $734 & 1; + $736 = ($735|0)!=(0); + if ($736) { + $737 = HEAP32[$pOut>>2]|0; + _sqlite3VdbeMemSetNull($737); + break L21; + } + $738 = HEAP32[$pIn1>>2]|0; + $739 = (($738) + 28|0); + $740 = HEAP16[$739>>1]|0; + $741 = $740&65535; + $742 = $741 & 16384; + $743 = ($742|0)!=(0); + if ($743) { + $744 = HEAP32[$pIn1>>2]|0; + $745 = (_sqlite3VdbeMemExpandBlob($744)|0); + $746 = ($745|0)!=(0); + if ($746) { + label = 900; + break L1; + } + } + $747 = HEAP32[$pIn2>>2]|0; + $748 = (($747) + 28|0); + $749 = HEAP16[$748>>1]|0; + $750 = $749&65535; + $751 = $750 & 16384; + $752 = ($751|0)!=(0); + if ($752) { + $753 = HEAP32[$pIn2>>2]|0; + $754 = (_sqlite3VdbeMemExpandBlob($753)|0); + $755 = ($754|0)!=(0); + if ($755) { + label = 900; + break L1; + } + } + $756 = HEAP32[$pIn1>>2]|0; + $757 = (($756) + 28|0); + $758 = HEAP16[$757>>1]|0; + $759 = $758&65535; + $760 = $759 & 18; + $761 = ($760|0)==(0); + if ($761) { + $762 = HEAP32[$pIn1>>2]|0; + $763 = HEAP8[$encoding>>0]|0; + $764 = $763&255; + $765 = (_sqlite3VdbeMemStringify($762,$764)|0); + $766 = ($765|0)!=(0); + if ($766) { + label = 900; + break L1; + } + } + $767 = HEAP32[$pIn2>>2]|0; + $768 = (($767) + 28|0); + $769 = HEAP16[$768>>1]|0; + $770 = $769&65535; + $771 = $770 & 18; + $772 = ($771|0)==(0); + if ($772) { + $773 = HEAP32[$pIn2>>2]|0; + $774 = HEAP8[$encoding>>0]|0; + $775 = $774&255; + $776 = (_sqlite3VdbeMemStringify($773,$775)|0); + $777 = ($776|0)!=(0); + if ($777) { + label = 900; + break L1; + } + } + $778 = HEAP32[$pIn1>>2]|0; + $779 = (($778) + 24|0); + $780 = HEAP32[$779>>2]|0; + $781 = HEAP32[$pIn2>>2]|0; + $782 = (($781) + 24|0); + $783 = HEAP32[$782>>2]|0; + $784 = (($780) + ($783))|0; + $785 = ($784|0)<(0); + $786 = $785 << 31 >> 31; + $787 = $nByte; + $788 = $787; + HEAP32[$788>>2] = $784; + $789 = (($787) + 4)|0; + $790 = $789; + HEAP32[$790>>2] = $786; + $791 = $nByte; + $792 = $791; + $793 = HEAP32[$792>>2]|0; + $794 = (($791) + 4)|0; + $795 = $794; + $796 = HEAP32[$795>>2]|0; + $797 = HEAP32[$db>>2]|0; + $798 = (($797) + 88|0); + $799 = HEAP32[$798>>2]|0; + $800 = ($799|0)<(0); + $801 = $800 << 31 >> 31; + $802 = ($796|0)>($801|0); + $803 = ($796|0)==($801|0); + $804 = ($793>>>0)>($799>>>0); + $805 = $803 & $804; + $806 = $802 | $805; + if ($806) { + label = 899; + break L11; + } + $807 = HEAP32[$pOut>>2]|0; + $808 = $nByte; + $809 = $808; + $810 = HEAP32[$809>>2]|0; + $811 = (($808) + 4)|0; + $812 = $811; + $813 = HEAP32[$812>>2]|0; + $814 = (($810) + 2)|0; + $815 = HEAP32[$pOut>>2]|0; + $816 = HEAP32[$pIn2>>2]|0; + $817 = ($815|0)==($816|0); + $818 = $817&1; + $819 = (_sqlite3VdbeMemGrow($807,$814,$818)|0); + $820 = ($819|0)!=(0); + if ($820) { + label = 900; + break L1; + } + $821 = HEAP32[$pOut>>2]|0; + $822 = (($821) + 28|0); + $823 = HEAP16[$822>>1]|0; + $824 = $823&65535; + $825 = $824 & -16896; + $826 = $825 | 2; + $827 = $826&65535; + $828 = HEAP32[$pOut>>2]|0; + $829 = (($828) + 28|0); + HEAP16[$829>>1] = $827; + $830 = HEAP32[$pOut>>2]|0; + $831 = HEAP32[$pIn2>>2]|0; + $832 = ($830|0)!=($831|0); + if ($832) { + $833 = HEAP32[$pOut>>2]|0; + $834 = (($833) + 4|0); + $835 = HEAP32[$834>>2]|0; + $836 = HEAP32[$pIn2>>2]|0; + $837 = (($836) + 4|0); + $838 = HEAP32[$837>>2]|0; + $839 = HEAP32[$pIn2>>2]|0; + $840 = (($839) + 24|0); + $841 = HEAP32[$840>>2]|0; + _memcpy(($835|0),($838|0),($841|0))|0; + } + $842 = HEAP32[$pIn2>>2]|0; + $843 = (($842) + 24|0); + $844 = HEAP32[$843>>2]|0; + $845 = HEAP32[$pOut>>2]|0; + $846 = (($845) + 4|0); + $847 = HEAP32[$846>>2]|0; + $848 = (($847) + ($844)|0); + $849 = HEAP32[$pIn1>>2]|0; + $850 = (($849) + 4|0); + $851 = HEAP32[$850>>2]|0; + $852 = HEAP32[$pIn1>>2]|0; + $853 = (($852) + 24|0); + $854 = HEAP32[$853>>2]|0; + _memcpy(($848|0),($851|0),($854|0))|0; + $855 = $nByte; + $856 = $855; + $857 = HEAP32[$856>>2]|0; + $858 = (($855) + 4)|0; + $859 = $858; + $860 = HEAP32[$859>>2]|0; + $861 = HEAP32[$pOut>>2]|0; + $862 = (($861) + 4|0); + $863 = HEAP32[$862>>2]|0; + $864 = (($863) + ($857)|0); + HEAP8[$864>>0] = 0; + $865 = $nByte; + $866 = $865; + $867 = HEAP32[$866>>2]|0; + $868 = (($865) + 4)|0; + $869 = $868; + $870 = HEAP32[$869>>2]|0; + $871 = (_i64Add(($867|0),($870|0),1,0)|0); + $872 = tempRet0; + $873 = HEAP32[$pOut>>2]|0; + $874 = (($873) + 4|0); + $875 = HEAP32[$874>>2]|0; + $876 = (($875) + ($871)|0); + HEAP8[$876>>0] = 0; + $877 = HEAP32[$pOut>>2]|0; + $878 = (($877) + 28|0); + $879 = HEAP16[$878>>1]|0; + $880 = $879&65535; + $881 = $880 | 512; + $882 = $881&65535; + HEAP16[$878>>1] = $882; + $883 = $nByte; + $884 = $883; + $885 = HEAP32[$884>>2]|0; + $886 = (($883) + 4)|0; + $887 = $886; + $888 = HEAP32[$887>>2]|0; + $889 = HEAP32[$pOut>>2]|0; + $890 = (($889) + 24|0); + HEAP32[$890>>2] = $885; + $891 = HEAP8[$encoding>>0]|0; + $892 = HEAP32[$pOut>>2]|0; + $893 = (($892) + 30|0); + HEAP8[$893>>0] = $891; + break; + } + case 32: { + $560 = HEAP32[$pOp>>2]|0; + $561 = (($560) + 12|0); + $562 = HEAP32[$561>>2]|0; + HEAP32[$n>>2] = $562; + $563 = HEAP32[$pOp>>2]|0; + $564 = (($563) + 4|0); + $565 = HEAP32[$564>>2]|0; + HEAP32[$p1>>2] = $565; + $566 = HEAP32[$pOp>>2]|0; + $567 = (($566) + 8|0); + $568 = HEAP32[$567>>2]|0; + HEAP32[$p2>>2] = $568; + $569 = HEAP32[$p1>>2]|0; + $570 = HEAP32[$aMem>>2]|0; + $571 = (($570) + (($569*40)|0)|0); + HEAP32[$pIn1>>2] = $571; + $572 = HEAP32[$p2>>2]|0; + $573 = HEAP32[$aMem>>2]|0; + $574 = (($573) + (($572*40)|0)|0); + HEAP32[$pOut>>2] = $574; + while(1) { + $575 = HEAP32[$pOut>>2]|0; + $576 = (($575) + 28|0); + $577 = HEAP16[$576>>1]|0; + $578 = $577&65535; + $579 = $578 & 9312; + $580 = ($579|0)!=(0); + if ($580) { + $581 = HEAP32[$pOut>>2]|0; + _sqlite3VdbeMemReleaseExternal($581); + } + $582 = HEAP32[$pOut>>2]|0; + $583 = (($582) + 36|0); + $584 = HEAP32[$583>>2]|0; + HEAP32[$zMalloc>>2] = $584; + $585 = HEAP32[$pOut>>2]|0; + $586 = HEAP32[$pIn1>>2]|0; + dest=$585+0|0; src=$586+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $587 = HEAP32[$pIn1>>2]|0; + $588 = (($587) + 28|0); + HEAP16[$588>>1] = 128; + $589 = HEAP32[$pIn1>>2]|0; + $590 = (($589) + 32|0); + HEAP32[$590>>2] = 0; + $591 = HEAP32[$zMalloc>>2]|0; + $592 = HEAP32[$pIn1>>2]|0; + $593 = (($592) + 36|0); + HEAP32[$593>>2] = $591; + $594 = HEAP32[$pIn1>>2]|0; + $595 = (($594) + 40|0); + HEAP32[$pIn1>>2] = $595; + $596 = HEAP32[$pOut>>2]|0; + $597 = (($596) + 40|0); + HEAP32[$pOut>>2] = $597; + $598 = HEAP32[$n>>2]|0; + $599 = (($598) + -1)|0; + HEAP32[$n>>2] = $599; + $600 = ($599|0)!=(0); + if (!($600)) { + break; + } + } + break; + } + case 33: { + $601 = HEAP32[$pOp>>2]|0; + $602 = (($601) + 12|0); + $603 = HEAP32[$602>>2]|0; + HEAP32[$n1>>2] = $603; + $604 = HEAP32[$pOp>>2]|0; + $605 = (($604) + 4|0); + $606 = HEAP32[$605>>2]|0; + $607 = HEAP32[$aMem>>2]|0; + $608 = (($607) + (($606*40)|0)|0); + HEAP32[$pIn1>>2] = $608; + $609 = HEAP32[$pOp>>2]|0; + $610 = (($609) + 8|0); + $611 = HEAP32[$610>>2]|0; + $612 = HEAP32[$aMem>>2]|0; + $613 = (($612) + (($611*40)|0)|0); + HEAP32[$pOut>>2] = $613; + while(1) { + $614 = HEAP32[$pOut>>2]|0; + $615 = HEAP32[$pIn1>>2]|0; + _sqlite3VdbeMemShallowCopy($614,$615,4096); + $616 = HEAP32[$pOut>>2]|0; + $617 = (($616) + 28|0); + $618 = HEAP16[$617>>1]|0; + $619 = $618&65535; + $620 = $619 & 4096; + $621 = ($620|0)!=(0); + if ($621) { + $622 = HEAP32[$pOut>>2]|0; + $623 = (_sqlite3VdbeMemMakeWriteable($622)|0); + $624 = ($623|0)!=(0); + if ($624) { + label = 900; + break L1; + } + } + $625 = HEAP32[$n1>>2]|0; + $626 = (($625) + -1)|0; + HEAP32[$n1>>2] = $626; + $627 = ($625|0)==(0); + if ($627) { + break L21; + } + $628 = HEAP32[$pOut>>2]|0; + $629 = (($628) + 40|0); + HEAP32[$pOut>>2] = $629; + $630 = HEAP32[$pIn1>>2]|0; + $631 = (($630) + 40|0); + HEAP32[$pIn1>>2] = $631; + } + break; + } + case 30: { + $537 = HEAP32[$pOut>>2]|0; + $538 = HEAP32[$pOp>>2]|0; + $539 = (($538) + 16|0); + $540 = HEAP32[$539>>2]|0; + $541 = HEAP32[$pOp>>2]|0; + $542 = (($541) + 4|0); + $543 = HEAP32[$542>>2]|0; + (_sqlite3VdbeMemSetStr($537,$540,$543,0,0)|0); + $544 = HEAP8[$encoding>>0]|0; + $545 = HEAP32[$pOut>>2]|0; + $546 = (($545) + 30|0); + HEAP8[$546>>0] = $544; + break; + } + case 35: { + $644 = HEAP32[$db>>2]|0; + $645 = (($644) + 284|0); + $646 = HEAP32[$645>>2]|0; + $647 = ($646|0)!=(0|0); + if ($647) { + $648 = HEAP32[$nVmStep>>2]|0; + $649 = HEAP32[$nProgressLimit>>2]|0; + $650 = ($648>>>0)>=($649>>>0); + if ($650) { + $651 = HEAP32[$db>>2]|0; + $652 = (($651) + 284|0); + $653 = HEAP32[$652>>2]|0; + $654 = HEAP32[$db>>2]|0; + $655 = (($654) + 288|0); + $656 = HEAP32[$655>>2]|0; + $657 = (FUNCTION_TABLE_ii[$653 & 63]($656)|0); + $658 = ($657|0)!=(0); + if ($658) { + label = 80; + break L11; + } + } + } + $659 = HEAP32[$0>>2]|0; + $660 = (_sqlite3VdbeCheckFk($659,0)|0); + HEAP32[$rc>>2] = $660; + $661 = (0)!=($660|0); + if (!($661)) { + $662 = HEAP32[$0>>2]|0; + $663 = (_sqlite3VdbeCloseStatement($662,1)|0); + HEAP32[$rc>>2] = $663; + $664 = HEAP32[$rc>>2]|0; + $665 = ($664|0)!=(0); + if (!($665)) { + label = 83; + break L11; + } + } + break; + } + case 34: { + $632 = HEAP32[$pOp>>2]|0; + $633 = (($632) + 4|0); + $634 = HEAP32[$633>>2]|0; + $635 = HEAP32[$aMem>>2]|0; + $636 = (($635) + (($634*40)|0)|0); + HEAP32[$pIn1>>2] = $636; + $637 = HEAP32[$pOp>>2]|0; + $638 = (($637) + 8|0); + $639 = HEAP32[$638>>2]|0; + $640 = HEAP32[$aMem>>2]|0; + $641 = (($640) + (($639*40)|0)|0); + HEAP32[$pOut>>2] = $641; + $642 = HEAP32[$pOut>>2]|0; + $643 = HEAP32[$pIn1>>2]|0; + _sqlite3VdbeMemShallowCopy($642,$643,4096); + break; + } + case 93: case 92: case 91: case 90: case 89: { + $894 = HEAP32[$pOp>>2]|0; + $895 = (($894) + 4|0); + $896 = HEAP32[$895>>2]|0; + $897 = HEAP32[$aMem>>2]|0; + $898 = (($897) + (($896*40)|0)|0); + HEAP32[$pIn1>>2] = $898; + $899 = HEAP32[$pIn1>>2]|0; + $900 = (_numericType($899)|0); + HEAP16[$type1>>1] = $900; + $901 = HEAP32[$pOp>>2]|0; + $902 = (($901) + 8|0); + $903 = HEAP32[$902>>2]|0; + $904 = HEAP32[$aMem>>2]|0; + $905 = (($904) + (($903*40)|0)|0); + HEAP32[$pIn2>>2] = $905; + $906 = HEAP32[$pIn2>>2]|0; + $907 = (_numericType($906)|0); + HEAP16[$type2>>1] = $907; + $908 = HEAP32[$pOp>>2]|0; + $909 = (($908) + 12|0); + $910 = HEAP32[$909>>2]|0; + $911 = HEAP32[$aMem>>2]|0; + $912 = (($911) + (($910*40)|0)|0); + HEAP32[$pOut>>2] = $912; + $913 = HEAP32[$pIn1>>2]|0; + $914 = (($913) + 28|0); + $915 = HEAP16[$914>>1]|0; + $916 = $915&65535; + $917 = HEAP32[$pIn2>>2]|0; + $918 = (($917) + 28|0); + $919 = HEAP16[$918>>1]|0; + $920 = $919&65535; + $921 = $916 | $920; + $922 = $921&65535; + HEAP16[$flags>>1] = $922; + $923 = HEAP16[$flags>>1]|0; + $924 = $923&65535; + $925 = $924 & 1; + $926 = ($925|0)!=(0); + L585: do { + if (!($926)) { + $927 = HEAP16[$type1>>1]|0; + $928 = $927&65535; + $929 = HEAP16[$type2>>1]|0; + $930 = $929&65535; + $931 = $928 & $930; + $932 = $931 & 4; + $933 = ($932|0)!=(0); + do { + if ($933) { + $934 = HEAP32[$pIn1>>2]|0; + $935 = (($934) + 16|0); + $936 = $935; + $937 = $936; + $938 = HEAP32[$937>>2]|0; + $939 = (($936) + 4)|0; + $940 = $939; + $941 = HEAP32[$940>>2]|0; + $942 = $iA; + $943 = $942; + HEAP32[$943>>2] = $938; + $944 = (($942) + 4)|0; + $945 = $944; + HEAP32[$945>>2] = $941; + $946 = HEAP32[$pIn2>>2]|0; + $947 = (($946) + 16|0); + $948 = $947; + $949 = $948; + $950 = HEAP32[$949>>2]|0; + $951 = (($948) + 4)|0; + $952 = $951; + $953 = HEAP32[$952>>2]|0; + $954 = $iB; + $955 = $954; + HEAP32[$955>>2] = $950; + $956 = (($954) + 4)|0; + $957 = $956; + HEAP32[$957>>2] = $953; + HEAP8[$bIntint>>0] = 1; + $958 = HEAP32[$pOp>>2]|0; + $959 = HEAP8[$958>>0]|0; + $960 = $959&255; + if ((($960|0) == 89)) { + $961 = $iA; + $962 = $961; + $963 = HEAP32[$962>>2]|0; + $964 = (($961) + 4)|0; + $965 = $964; + $966 = HEAP32[$965>>2]|0; + $967 = (_sqlite3AddInt64($iB,$963,$966)|0); + $968 = ($967|0)!=(0); + if ($968) { + break; + } + } else if ((($960|0) == 90)) { + $969 = $iA; + $970 = $969; + $971 = HEAP32[$970>>2]|0; + $972 = (($969) + 4)|0; + $973 = $972; + $974 = HEAP32[$973>>2]|0; + $975 = (_sqlite3SubInt64($iB,$971,$974)|0); + $976 = ($975|0)!=(0); + if ($976) { + break; + } + } else if ((($960|0) == 91)) { + $977 = $iA; + $978 = $977; + $979 = HEAP32[$978>>2]|0; + $980 = (($977) + 4)|0; + $981 = $980; + $982 = HEAP32[$981>>2]|0; + $983 = (_sqlite3MulInt64($iB,$979,$982)|0); + $984 = ($983|0)!=(0); + if ($984) { + break; + } + } else if ((($960|0) == 92)) { + $985 = $iA; + $986 = $985; + $987 = HEAP32[$986>>2]|0; + $988 = (($985) + 4)|0; + $989 = $988; + $990 = HEAP32[$989>>2]|0; + $991 = ($987|0)==(0); + $992 = ($990|0)==(0); + $993 = $991 & $992; + if ($993) { + break L585; + } + $994 = $iA; + $995 = $994; + $996 = HEAP32[$995>>2]|0; + $997 = (($994) + 4)|0; + $998 = $997; + $999 = HEAP32[$998>>2]|0; + $1000 = ($996|0)==(-1); + $1001 = ($999|0)==(-1); + $1002 = $1000 & $1001; + if ($1002) { + $1003 = $iB; + $1004 = $1003; + $1005 = HEAP32[$1004>>2]|0; + $1006 = (($1003) + 4)|0; + $1007 = $1006; + $1008 = HEAP32[$1007>>2]|0; + $1009 = ($1005|0)==(0); + $1010 = ($1008|0)==(-2147483648); + $1011 = $1009 & $1010; + if ($1011) { + break; + } + } + $1012 = $iA; + $1013 = $1012; + $1014 = HEAP32[$1013>>2]|0; + $1015 = (($1012) + 4)|0; + $1016 = $1015; + $1017 = HEAP32[$1016>>2]|0; + $1018 = $iB; + $1019 = $1018; + $1020 = HEAP32[$1019>>2]|0; + $1021 = (($1018) + 4)|0; + $1022 = $1021; + $1023 = HEAP32[$1022>>2]|0; + $1024 = (___divdi3(($1020|0),($1023|0),($1014|0),($1017|0))|0); + $1025 = tempRet0; + $1026 = $iB; + $1027 = $1026; + HEAP32[$1027>>2] = $1024; + $1028 = (($1026) + 4)|0; + $1029 = $1028; + HEAP32[$1029>>2] = $1025; + } else { + $1030 = $iA; + $1031 = $1030; + $1032 = HEAP32[$1031>>2]|0; + $1033 = (($1030) + 4)|0; + $1034 = $1033; + $1035 = HEAP32[$1034>>2]|0; + $1036 = ($1032|0)==(0); + $1037 = ($1035|0)==(0); + $1038 = $1036 & $1037; + if ($1038) { + break L585; + } + $1039 = $iA; + $1040 = $1039; + $1041 = HEAP32[$1040>>2]|0; + $1042 = (($1039) + 4)|0; + $1043 = $1042; + $1044 = HEAP32[$1043>>2]|0; + $1045 = ($1041|0)==(-1); + $1046 = ($1044|0)==(-1); + $1047 = $1045 & $1046; + if ($1047) { + $1048 = $iA; + $1049 = $1048; + HEAP32[$1049>>2] = 1; + $1050 = (($1048) + 4)|0; + $1051 = $1050; + HEAP32[$1051>>2] = 0; + } + $1052 = $iA; + $1053 = $1052; + $1054 = HEAP32[$1053>>2]|0; + $1055 = (($1052) + 4)|0; + $1056 = $1055; + $1057 = HEAP32[$1056>>2]|0; + $1058 = $iB; + $1059 = $1058; + $1060 = HEAP32[$1059>>2]|0; + $1061 = (($1058) + 4)|0; + $1062 = $1061; + $1063 = HEAP32[$1062>>2]|0; + $1064 = (___remdi3(($1060|0),($1063|0),($1054|0),($1057|0))|0); + $1065 = tempRet0; + $1066 = $iB; + $1067 = $1066; + HEAP32[$1067>>2] = $1064; + $1068 = (($1066) + 4)|0; + $1069 = $1068; + HEAP32[$1069>>2] = $1065; + } + $1070 = $iB; + $1071 = $1070; + $1072 = HEAP32[$1071>>2]|0; + $1073 = (($1070) + 4)|0; + $1074 = $1073; + $1075 = HEAP32[$1074>>2]|0; + $1076 = HEAP32[$pOut>>2]|0; + $1077 = (($1076) + 16|0); + $1078 = $1077; + $1079 = $1078; + HEAP32[$1079>>2] = $1072; + $1080 = (($1078) + 4)|0; + $1081 = $1080; + HEAP32[$1081>>2] = $1075; + $1082 = HEAP32[$pOut>>2]|0; + $1083 = (($1082) + 28|0); + $1084 = HEAP16[$1083>>1]|0; + $1085 = $1084&65535; + $1086 = $1085 & -16896; + $1087 = $1086 | 4; + $1088 = $1087&65535; + $1089 = HEAP32[$pOut>>2]|0; + $1090 = (($1089) + 28|0); + HEAP16[$1090>>1] = $1088; + break L21; + } else { + HEAP8[$bIntint>>0] = 0; + } + } while(0); + $1091 = HEAP32[$pIn1>>2]|0; + $1092 = (+_sqlite3VdbeRealValue($1091)); + HEAPF64[$rA>>3] = $1092; + $1093 = HEAP32[$pIn2>>2]|0; + $1094 = (+_sqlite3VdbeRealValue($1093)); + HEAPF64[$rB>>3] = $1094; + $1095 = HEAP32[$pOp>>2]|0; + $1096 = HEAP8[$1095>>0]|0; + $1097 = $1096&255; + if ((($1097|0) == 89)) { + $1098 = +HEAPF64[$rA>>3]; + $1099 = +HEAPF64[$rB>>3]; + $1100 = $1099 + $1098; + HEAPF64[$rB>>3] = $1100; + } else if ((($1097|0) == 90)) { + $1101 = +HEAPF64[$rA>>3]; + $1102 = +HEAPF64[$rB>>3]; + $1103 = $1102 - $1101; + HEAPF64[$rB>>3] = $1103; + } else if ((($1097|0) == 91)) { + $1104 = +HEAPF64[$rA>>3]; + $1105 = +HEAPF64[$rB>>3]; + $1106 = $1105 * $1104; + HEAPF64[$rB>>3] = $1106; + } else if ((($1097|0) == 92)) { + $1107 = +HEAPF64[$rA>>3]; + $1108 = $1107 == 0.0; + if ($1108) { + break; + } + $1109 = +HEAPF64[$rA>>3]; + $1110 = +HEAPF64[$rB>>3]; + $1111 = $1110 / $1109; + HEAPF64[$rB>>3] = $1111; + } else { + $1112 = +HEAPF64[$rA>>3]; + $1113 = (~~$1112)>>>0; + $1114 = +Math_abs($1112) >= 1.0 ? $1112 > 0.0 ? (Math_min(+Math_floor($1112 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($1112 - +(~~$1112 >>> 0)) / 4294967296.0) >>> 0 : 0; + $1115 = $iA; + $1116 = $1115; + HEAP32[$1116>>2] = $1113; + $1117 = (($1115) + 4)|0; + $1118 = $1117; + HEAP32[$1118>>2] = $1114; + $1119 = +HEAPF64[$rB>>3]; + $1120 = (~~$1119)>>>0; + $1121 = +Math_abs($1119) >= 1.0 ? $1119 > 0.0 ? (Math_min(+Math_floor($1119 / 4294967296.0), 4294967295.0) | 0) >>> 0 : ~~+Math_ceil(($1119 - +(~~$1119 >>> 0)) / 4294967296.0) >>> 0 : 0; + $1122 = $iB; + $1123 = $1122; + HEAP32[$1123>>2] = $1120; + $1124 = (($1122) + 4)|0; + $1125 = $1124; + HEAP32[$1125>>2] = $1121; + $1126 = $iA; + $1127 = $1126; + $1128 = HEAP32[$1127>>2]|0; + $1129 = (($1126) + 4)|0; + $1130 = $1129; + $1131 = HEAP32[$1130>>2]|0; + $1132 = ($1128|0)==(0); + $1133 = ($1131|0)==(0); + $1134 = $1132 & $1133; + if ($1134) { + break; + } + $1135 = $iA; + $1136 = $1135; + $1137 = HEAP32[$1136>>2]|0; + $1138 = (($1135) + 4)|0; + $1139 = $1138; + $1140 = HEAP32[$1139>>2]|0; + $1141 = ($1137|0)==(-1); + $1142 = ($1140|0)==(-1); + $1143 = $1141 & $1142; + if ($1143) { + $1144 = $iA; + $1145 = $1144; + HEAP32[$1145>>2] = 1; + $1146 = (($1144) + 4)|0; + $1147 = $1146; + HEAP32[$1147>>2] = 0; + } + $1148 = $iB; + $1149 = $1148; + $1150 = HEAP32[$1149>>2]|0; + $1151 = (($1148) + 4)|0; + $1152 = $1151; + $1153 = HEAP32[$1152>>2]|0; + $1154 = $iA; + $1155 = $1154; + $1156 = HEAP32[$1155>>2]|0; + $1157 = (($1154) + 4)|0; + $1158 = $1157; + $1159 = HEAP32[$1158>>2]|0; + $1160 = (___remdi3(($1150|0),($1153|0),($1156|0),($1159|0))|0); + $1161 = tempRet0; + $1162 = (+($1160>>>0)) + (4294967296.0*(+($1161|0))); + HEAPF64[$rB>>3] = $1162; + } + $1163 = +HEAPF64[$rB>>3]; + $1164 = (_sqlite3IsNaN($1163)|0); + $1165 = ($1164|0)!=(0); + if (!($1165)) { + $1166 = +HEAPF64[$rB>>3]; + $1167 = HEAP32[$pOut>>2]|0; + $1168 = (($1167) + 8|0); + HEAPF64[$1168>>3] = $1166; + $1169 = HEAP32[$pOut>>2]|0; + $1170 = (($1169) + 28|0); + $1171 = HEAP16[$1170>>1]|0; + $1172 = $1171&65535; + $1173 = $1172 & -16896; + $1174 = $1173 | 8; + $1175 = $1174&65535; + $1176 = HEAP32[$pOut>>2]|0; + $1177 = (($1176) + 28|0); + HEAP16[$1177>>1] = $1175; + $1178 = HEAP16[$type1>>1]|0; + $1179 = $1178&65535; + $1180 = HEAP16[$type2>>1]|0; + $1181 = $1180&65535; + $1182 = $1179 | $1181; + $1183 = $1182 & 8; + $1184 = ($1183|0)==(0); + if (!($1184)) { + break L21; + } + $1185 = HEAP8[$bIntint>>0]|0; + $1186 = ($1185<<24>>24)!=(0); + if ($1186) { + break L21; + } + $1187 = HEAP32[$pOut>>2]|0; + _sqlite3VdbeIntegerAffinity($1187); + break L21; + } + } + } while(0); + $1188 = HEAP32[$pOut>>2]|0; + _sqlite3VdbeMemSetNull($1188); + break; + } + case 31: { + $547 = HEAP32[$pOp>>2]|0; + $548 = (($547) + 4|0); + $549 = HEAP32[$548>>2]|0; + $550 = (($549) - 1)|0; + $551 = HEAP32[$0>>2]|0; + $552 = (($551) + 60|0); + $553 = HEAP32[$552>>2]|0; + $554 = (($553) + (($550*40)|0)|0); + HEAP32[$pVar>>2] = $554; + $555 = HEAP32[$pVar>>2]|0; + $556 = (_sqlite3VdbeMemTooBig($555)|0); + $557 = ($556|0)!=(0); + if ($557) { + label = 899; + break L11; + } + $558 = HEAP32[$pOut>>2]|0; + $559 = HEAP32[$pVar>>2]|0; + _sqlite3VdbeMemShallowCopy($558,$559,2048); + break; + } + case 143: { + $1638 = HEAP32[$pOp>>2]|0; + $1639 = (($1638) + 4|0); + $1640 = HEAP32[$1639>>2]|0; + $1641 = HEAP32[$aMem>>2]|0; + $1642 = (($1641) + (($1640*40)|0)|0); + HEAP32[$pIn1>>2] = $1642; + $1643 = HEAP32[$pIn1>>2]|0; + $1644 = (($1643) + 28|0); + $1645 = HEAP16[$1644>>1]|0; + $1646 = $1645&65535; + $1647 = $1646 & 1; + $1648 = ($1647|0)!=(0); + if (!($1648)) { + $1649 = HEAP32[$pIn1>>2]|0; + $1650 = (($1649) + 28|0); + $1651 = HEAP16[$1650>>1]|0; + $1652 = $1651&65535; + $1653 = $1652 & 16; + $1654 = $1653 >> 3; + $1655 = HEAP32[$pIn1>>2]|0; + $1656 = (($1655) + 28|0); + $1657 = HEAP16[$1656>>1]|0; + $1658 = $1657&65535; + $1659 = $1658 | $1654; + $1660 = $1659&65535; + HEAP16[$1656>>1] = $1660; + $1661 = HEAP32[$pIn1>>2]|0; + $1662 = HEAP8[$encoding>>0]|0; + _applyAffinity($1661,97,$1662); + $1663 = HEAP32[$pIn1>>2]|0; + $1664 = (($1663) + 28|0); + $1665 = HEAP16[$1664>>1]|0; + $1666 = $1665&65535; + $1667 = $1666 & 16384; + $1668 = ($1667|0)!=(0); + if ($1668) { + $1669 = HEAP32[$pIn1>>2]|0; + $1670 = (_sqlite3VdbeMemExpandBlob($1669)|0); + $1671 = $1670; + } else { + $1671 = 0; + } + HEAP32[$rc>>2] = $1671; + $1672 = HEAP32[$pIn1>>2]|0; + $1673 = (($1672) + 28|0); + $1674 = HEAP16[$1673>>1]|0; + $1675 = $1674&65535; + $1676 = $1675 & -16413; + $1677 = $1676&65535; + HEAP16[$1673>>1] = $1677; + } + break; + } + case 88: case 87: case 86: case 85: { + $1331 = HEAP32[$pOp>>2]|0; + $1332 = (($1331) + 4|0); + $1333 = HEAP32[$1332>>2]|0; + $1334 = HEAP32[$aMem>>2]|0; + $1335 = (($1334) + (($1333*40)|0)|0); + HEAP32[$pIn1>>2] = $1335; + $1336 = HEAP32[$pOp>>2]|0; + $1337 = (($1336) + 8|0); + $1338 = HEAP32[$1337>>2]|0; + $1339 = HEAP32[$aMem>>2]|0; + $1340 = (($1339) + (($1338*40)|0)|0); + HEAP32[$pIn2>>2] = $1340; + $1341 = HEAP32[$pOp>>2]|0; + $1342 = (($1341) + 12|0); + $1343 = HEAP32[$1342>>2]|0; + $1344 = HEAP32[$aMem>>2]|0; + $1345 = (($1344) + (($1343*40)|0)|0); + HEAP32[$pOut>>2] = $1345; + $1346 = HEAP32[$pIn1>>2]|0; + $1347 = (($1346) + 28|0); + $1348 = HEAP16[$1347>>1]|0; + $1349 = $1348&65535; + $1350 = HEAP32[$pIn2>>2]|0; + $1351 = (($1350) + 28|0); + $1352 = HEAP16[$1351>>1]|0; + $1353 = $1352&65535; + $1354 = $1349 | $1353; + $1355 = $1354 & 1; + $1356 = ($1355|0)!=(0); + if ($1356) { + $1357 = HEAP32[$pOut>>2]|0; + _sqlite3VdbeMemSetNull($1357); + break L21; + } + $1358 = HEAP32[$pIn2>>2]|0; + $1359 = (_sqlite3VdbeIntValue($1358)|0); + $1360 = tempRet0; + $1361 = $iA4; + $1362 = $1361; + HEAP32[$1362>>2] = $1359; + $1363 = (($1361) + 4)|0; + $1364 = $1363; + HEAP32[$1364>>2] = $1360; + $1365 = HEAP32[$pIn1>>2]|0; + $1366 = (_sqlite3VdbeIntValue($1365)|0); + $1367 = tempRet0; + $1368 = $iB5; + $1369 = $1368; + HEAP32[$1369>>2] = $1366; + $1370 = (($1368) + 4)|0; + $1371 = $1370; + HEAP32[$1371>>2] = $1367; + $1372 = HEAP32[$pOp>>2]|0; + $1373 = HEAP8[$1372>>0]|0; + HEAP8[$op>>0] = $1373; + $1374 = HEAP8[$op>>0]|0; + $1375 = $1374&255; + $1376 = ($1375|0)==(85); + do { + if ($1376) { + $1377 = $iB5; + $1378 = $1377; + $1379 = HEAP32[$1378>>2]|0; + $1380 = (($1377) + 4)|0; + $1381 = $1380; + $1382 = HEAP32[$1381>>2]|0; + $1383 = $iA4; + $1384 = $1383; + $1385 = HEAP32[$1384>>2]|0; + $1386 = (($1383) + 4)|0; + $1387 = $1386; + $1388 = HEAP32[$1387>>2]|0; + $1389 = $1385 & $1379; + $1390 = $1388 & $1382; + $1391 = $iA4; + $1392 = $1391; + HEAP32[$1392>>2] = $1389; + $1393 = (($1391) + 4)|0; + $1394 = $1393; + HEAP32[$1394>>2] = $1390; + } else { + $1395 = HEAP8[$op>>0]|0; + $1396 = $1395&255; + $1397 = ($1396|0)==(86); + $1398 = $iB5; + $1399 = $1398; + $1400 = HEAP32[$1399>>2]|0; + $1401 = (($1398) + 4)|0; + $1402 = $1401; + $1403 = HEAP32[$1402>>2]|0; + if ($1397) { + $1404 = $iA4; + $1405 = $1404; + $1406 = HEAP32[$1405>>2]|0; + $1407 = (($1404) + 4)|0; + $1408 = $1407; + $1409 = HEAP32[$1408>>2]|0; + $1410 = $1406 | $1400; + $1411 = $1409 | $1403; + $1412 = $iA4; + $1413 = $1412; + HEAP32[$1413>>2] = $1410; + $1414 = (($1412) + 4)|0; + $1415 = $1414; + HEAP32[$1415>>2] = $1411; + break; + } + $1416 = ($1400|0)!=(0); + $1417 = ($1403|0)!=(0); + $1418 = $1416 | $1417; + if ($1418) { + $1419 = $iB5; + $1420 = $1419; + $1421 = HEAP32[$1420>>2]|0; + $1422 = (($1419) + 4)|0; + $1423 = $1422; + $1424 = HEAP32[$1423>>2]|0; + $1425 = ($1424|0)<(0); + if ($1425) { + $1426 = HEAP8[$op>>0]|0; + $1427 = $1426&255; + $1428 = (175 - ($1427))|0; + $1429 = $1428&255; + HEAP8[$op>>0] = $1429; + $1430 = $iB5; + $1431 = $1430; + $1432 = HEAP32[$1431>>2]|0; + $1433 = (($1430) + 4)|0; + $1434 = $1433; + $1435 = HEAP32[$1434>>2]|0; + $1436 = ($1435|0)>(-1); + $1437 = ($1435|0)==(-1); + $1438 = ($1432>>>0)>(4294967232); + $1439 = $1437 & $1438; + $1440 = $1436 | $1439; + if ($1440) { + $1441 = $iB5; + $1442 = $1441; + $1443 = HEAP32[$1442>>2]|0; + $1444 = (($1441) + 4)|0; + $1445 = $1444; + $1446 = HEAP32[$1445>>2]|0; + $1447 = (_i64Subtract(0,0,($1443|0),($1446|0))|0); + $1448 = tempRet0; + $1451 = $1447;$1454 = $1448; + } else { + $1451 = 64;$1454 = 0; + } + $1449 = $iB5; + $1450 = $1449; + HEAP32[$1450>>2] = $1451; + $1452 = (($1449) + 4)|0; + $1453 = $1452; + HEAP32[$1453>>2] = $1454; + } + $1455 = $iB5; + $1456 = $1455; + $1457 = HEAP32[$1456>>2]|0; + $1458 = (($1455) + 4)|0; + $1459 = $1458; + $1460 = HEAP32[$1459>>2]|0; + $1461 = ($1460|0)>(0); + $1462 = ($1460|0)==(0); + $1463 = ($1457>>>0)>=(64); + $1464 = $1462 & $1463; + $1465 = $1461 | $1464; + if ($1465) { + $1466 = $iA4; + $1467 = $1466; + $1468 = HEAP32[$1467>>2]|0; + $1469 = (($1466) + 4)|0; + $1470 = $1469; + $1471 = HEAP32[$1470>>2]|0; + $1472 = ($1471|0)>(0); + $1473 = ($1471|0)==(0); + $1474 = ($1468>>>0)>=(0); + $1475 = $1473 & $1474; + $1476 = $1472 | $1475; + if ($1476) { + $1481 = 1; + } else { + $1477 = HEAP8[$op>>0]|0; + $1478 = $1477&255; + $1479 = ($1478|0)==(87); + $1481 = $1479; + } + $1480 = $1481 ? 0 : -1; + $1482 = ($1480|0)<(0); + $1483 = $1482 << 31 >> 31; + $1484 = $iA4; + $1485 = $1484; + HEAP32[$1485>>2] = $1480; + $1486 = (($1484) + 4)|0; + $1487 = $1486; + HEAP32[$1487>>2] = $1483; + break; + } + ;HEAP32[$uA+0>>2]=HEAP32[$iA4+0>>2]|0;HEAP32[$uA+4>>2]=HEAP32[$iA4+4>>2]|0; + $1488 = HEAP8[$op>>0]|0; + $1489 = $1488&255; + $1490 = ($1489|0)==(87); + $1491 = $iB5; + $1492 = $1491; + $1493 = HEAP32[$1492>>2]|0; + $1494 = (($1491) + 4)|0; + $1495 = $1494; + $1496 = HEAP32[$1495>>2]|0; + $1497 = $uA; + $1498 = $1497; + $1499 = HEAP32[$1498>>2]|0; + $1500 = (($1497) + 4)|0; + $1501 = $1500; + $1502 = HEAP32[$1501>>2]|0; + if ($1490) { + $1503 = (_bitshift64Shl(($1499|0),($1502|0),($1493|0))|0); + $1504 = tempRet0; + $1505 = $uA; + $1506 = $1505; + HEAP32[$1506>>2] = $1503; + $1507 = (($1505) + 4)|0; + $1508 = $1507; + HEAP32[$1508>>2] = $1504; + } else { + $1509 = (_bitshift64Lshr(($1499|0),($1502|0),($1493|0))|0); + $1510 = tempRet0; + $1511 = $uA; + $1512 = $1511; + HEAP32[$1512>>2] = $1509; + $1513 = (($1511) + 4)|0; + $1514 = $1513; + HEAP32[$1514>>2] = $1510; + $1515 = $iA4; + $1516 = $1515; + $1517 = HEAP32[$1516>>2]|0; + $1518 = (($1515) + 4)|0; + $1519 = $1518; + $1520 = HEAP32[$1519>>2]|0; + $1521 = ($1520|0)<(0); + if ($1521) { + $1522 = $iB5; + $1523 = $1522; + $1524 = HEAP32[$1523>>2]|0; + $1525 = (($1522) + 4)|0; + $1526 = $1525; + $1527 = HEAP32[$1526>>2]|0; + $1528 = (_i64Subtract(64,0,($1524|0),($1527|0))|0); + $1529 = tempRet0; + $1530 = (_bitshift64Shl(-1,-1,($1528|0))|0); + $1531 = tempRet0; + $1532 = $uA; + $1533 = $1532; + $1534 = HEAP32[$1533>>2]|0; + $1535 = (($1532) + 4)|0; + $1536 = $1535; + $1537 = HEAP32[$1536>>2]|0; + $1538 = $1534 | $1530; + $1539 = $1537 | $1531; + $1540 = $uA; + $1541 = $1540; + HEAP32[$1541>>2] = $1538; + $1542 = (($1540) + 4)|0; + $1543 = $1542; + HEAP32[$1543>>2] = $1539; + } + } + ;HEAP32[$iA4+0>>2]=HEAP32[$uA+0>>2]|0;HEAP32[$iA4+4>>2]=HEAP32[$uA+4>>2]|0; + } + } + } while(0); + $1544 = $iA4; + $1545 = $1544; + $1546 = HEAP32[$1545>>2]|0; + $1547 = (($1544) + 4)|0; + $1548 = $1547; + $1549 = HEAP32[$1548>>2]|0; + $1550 = HEAP32[$pOut>>2]|0; + $1551 = (($1550) + 16|0); + $1552 = $1551; + $1553 = $1552; + HEAP32[$1553>>2] = $1546; + $1554 = (($1552) + 4)|0; + $1555 = $1554; + HEAP32[$1555>>2] = $1549; + $1556 = HEAP32[$pOut>>2]|0; + $1557 = (($1556) + 28|0); + $1558 = HEAP16[$1557>>1]|0; + $1559 = $1558&65535; + $1560 = $1559 & -16896; + $1561 = $1560 | 4; + $1562 = $1561&65535; + $1563 = HEAP32[$pOut>>2]|0; + $1564 = (($1563) + 28|0); + HEAP16[$1564>>1] = $1562; + break; + } + case 39: { + $1626 = HEAP32[$pOp>>2]|0; + $1627 = (($1626) + 4|0); + $1628 = HEAP32[$1627>>2]|0; + $1629 = HEAP32[$aMem>>2]|0; + $1630 = (($1629) + (($1628*40)|0)|0); + HEAP32[$pIn1>>2] = $1630; + $1631 = HEAP32[$pIn1>>2]|0; + $1632 = (($1631) + 28|0); + $1633 = HEAP16[$1632>>1]|0; + $1634 = $1633&65535; + $1635 = $1634 & 4; + $1636 = ($1635|0)!=(0); + if ($1636) { + $1637 = HEAP32[$pIn1>>2]|0; + (_sqlite3VdbeMemRealify($1637)|0); + } + break; + } + case 1: { + $1198 = HEAP32[$pOp>>2]|0; + $1199 = (($1198) + 3|0); + $1200 = HEAP8[$1199>>0]|0; + $1201 = $1200&255; + HEAP32[$n3>>2] = $1201; + $1202 = HEAP32[$0>>2]|0; + $1203 = (($1202) + 12|0); + $1204 = HEAP32[$1203>>2]|0; + HEAP32[$apVal>>2] = $1204; + $1205 = HEAP32[$pOp>>2]|0; + $1206 = (($1205) + 12|0); + $1207 = HEAP32[$1206>>2]|0; + $1208 = HEAP32[$aMem>>2]|0; + $1209 = (($1208) + (($1207*40)|0)|0); + HEAP32[$pOut>>2] = $1209; + $1210 = HEAP32[$pOp>>2]|0; + $1211 = (($1210) + 8|0); + $1212 = HEAP32[$1211>>2]|0; + $1213 = HEAP32[$aMem>>2]|0; + $1214 = (($1213) + (($1212*40)|0)|0); + HEAP32[$pArg>>2] = $1214; + HEAP32[$i2>>2] = 0; + while(1) { + $1215 = HEAP32[$i2>>2]|0; + $1216 = HEAP32[$n3>>2]|0; + $1217 = ($1215|0)<($1216|0); + if (!($1217)) { + break; + } + $1218 = HEAP32[$pArg>>2]|0; + $1219 = HEAP32[$i2>>2]|0; + $1220 = HEAP32[$apVal>>2]|0; + $1221 = (($1220) + ($1219<<2)|0); + HEAP32[$1221>>2] = $1218; + $1222 = HEAP32[$pArg>>2]|0; + $1223 = (($1222) + 28|0); + $1224 = HEAP16[$1223>>1]|0; + $1225 = $1224&65535; + $1226 = $1225 & 4096; + $1227 = ($1226|0)!=(0); + if ($1227) { + $1228 = HEAP32[$pArg>>2]|0; + $1229 = (_sqlite3VdbeMemMakeWriteable($1228)|0); + $1230 = ($1229|0)!=(0); + if ($1230) { + label = 900; + break L1; + } + } + $1231 = HEAP32[$i2>>2]|0; + $1232 = (($1231) + 1)|0; + HEAP32[$i2>>2] = $1232; + $1233 = HEAP32[$pArg>>2]|0; + $1234 = (($1233) + 40|0); + HEAP32[$pArg>>2] = $1234; + } + $1235 = HEAP32[$pOp>>2]|0; + $1236 = (($1235) + 16|0); + $1237 = HEAP32[$1236>>2]|0; + HEAP32[$ctx>>2] = $1237; + $1238 = HEAP32[$pc>>2]|0; + $1239 = (($ctx) + 60|0); + HEAP32[$1239>>2] = $1238; + $1240 = HEAP32[$0>>2]|0; + $1241 = (($ctx) + 56|0); + HEAP32[$1241>>2] = $1240; + $1242 = (($ctx) + 8|0); + $1243 = HEAP32[$pOut>>2]|0; + dest=$1242+0|0; src=$1243+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $1244 = HEAP32[$pOut>>2]|0; + $1245 = (($1244) + 28|0); + HEAP16[$1245>>1] = 1; + $1246 = HEAP32[$pOut>>2]|0; + $1247 = (($1246) + 32|0); + HEAP32[$1247>>2] = 0; + $1248 = HEAP32[$pOut>>2]|0; + $1249 = (($1248) + 36|0); + HEAP32[$1249>>2] = 0; + $1250 = (($ctx) + 8|0); + $1251 = (($1250) + 28|0); + $1252 = HEAP16[$1251>>1]|0; + $1253 = $1252&65535; + $1254 = $1253 & -16896; + $1255 = $1254 | 1; + $1256 = $1255&65535; + $1257 = (($ctx) + 8|0); + $1258 = (($1257) + 28|0); + HEAP16[$1258>>1] = $1256; + $1259 = (($ctx) + 69|0); + HEAP8[$1259>>0] = 0; + $1260 = HEAP32[$ctx>>2]|0; + $1261 = (($1260) + 2|0); + $1262 = HEAP16[$1261>>1]|0; + $1263 = $1262&65535; + $1264 = $1263 & 32; + $1265 = ($1264|0)!=(0); + if ($1265) { + $1266 = HEAP32[$pOp>>2]|0; + $1267 = (($1266) + -20|0); + $1268 = (($1267) + 16|0); + $1269 = HEAP32[$1268>>2]|0; + $1270 = (($ctx) + 52|0); + HEAP32[$1270>>2] = $1269; + } + $1271 = $lastRowid; + $1272 = $1271; + $1273 = HEAP32[$1272>>2]|0; + $1274 = (($1271) + 4)|0; + $1275 = $1274; + $1276 = HEAP32[$1275>>2]|0; + $1277 = HEAP32[$db>>2]|0; + $1278 = (($1277) + 32|0); + $1279 = $1278; + $1280 = $1279; + HEAP32[$1280>>2] = $1273; + $1281 = (($1279) + 4)|0; + $1282 = $1281; + HEAP32[$1282>>2] = $1276; + $1283 = HEAP32[$ctx>>2]|0; + $1284 = (($1283) + 12|0); + $1285 = HEAP32[$1284>>2]|0; + $1286 = HEAP32[$n3>>2]|0; + $1287 = HEAP32[$apVal>>2]|0; + FUNCTION_TABLE_viii[$1285 & 63]($ctx,$1286,$1287); + $1288 = HEAP32[$db>>2]|0; + $1289 = (($1288) + 32|0); + $1290 = $1289; + $1291 = $1290; + $1292 = HEAP32[$1291>>2]|0; + $1293 = (($1290) + 4)|0; + $1294 = $1293; + $1295 = HEAP32[$1294>>2]|0; + $1296 = $lastRowid; + $1297 = $1296; + HEAP32[$1297>>2] = $1292; + $1298 = (($1296) + 4)|0; + $1299 = $1298; + HEAP32[$1299>>2] = $1295; + $1300 = HEAP32[$db>>2]|0; + $1301 = (($1300) + 64|0); + $1302 = HEAP8[$1301>>0]|0; + $1303 = ($1302<<24>>24)!=(0); + if ($1303) { + label = 146; + break L11; + } + $1305 = (($ctx) + 69|0); + $1306 = HEAP8[$1305>>0]|0; + $1307 = ($1306<<24>>24)!=(0); + if ($1307) { + $1308 = (($ctx) + 64|0); + $1309 = HEAP32[$1308>>2]|0; + $1310 = ($1309|0)!=(0); + if ($1310) { + $1311 = HEAP32[$0>>2]|0; + $1312 = (($1311) + 44|0); + $1313 = HEAP32[$db>>2]|0; + $1314 = (($ctx) + 8|0); + $1315 = (_sqlite3_value_text($1314)|0); + HEAP32[$vararg_buffer62>>2] = $1315; + _sqlite3SetString($1312,$1313,1768,$vararg_buffer62); + $1316 = (($ctx) + 64|0); + $1317 = HEAP32[$1316>>2]|0; + HEAP32[$rc>>2] = $1317; + } + $1318 = HEAP32[$0>>2]|0; + $1319 = HEAP32[$pc>>2]|0; + $1320 = HEAP32[$pOp>>2]|0; + $1321 = (($1320) + 4|0); + $1322 = HEAP32[$1321>>2]|0; + _sqlite3VdbeDeleteAuxData($1318,$1319,$1322); + } + $1323 = (($ctx) + 8|0); + $1324 = HEAP8[$encoding>>0]|0; + $1325 = $1324&255; + (_sqlite3VdbeChangeEncoding($1323,$1325)|0); + $1326 = HEAP32[$pOut>>2]|0; + $1327 = (($ctx) + 8|0); + dest=$1326+0|0; src=$1327+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $1328 = HEAP32[$pOut>>2]|0; + $1329 = (_sqlite3VdbeMemTooBig($1328)|0); + $1330 = ($1329|0)!=(0); + if ($1330) { + label = 899; + break L11; + } + break; + } + case 37: { + $1565 = HEAP32[$pOp>>2]|0; + $1566 = (($1565) + 4|0); + $1567 = HEAP32[$1566>>2]|0; + $1568 = HEAP32[$aMem>>2]|0; + $1569 = (($1568) + (($1567*40)|0)|0); + HEAP32[$pIn1>>2] = $1569; + $1570 = HEAP32[$pIn1>>2]|0; + (_sqlite3VdbeMemIntegerify($1570)|0); + $1571 = HEAP32[$pOp>>2]|0; + $1572 = (($1571) + 8|0); + $1573 = HEAP32[$1572>>2]|0; + $1574 = ($1573|0)<(0); + $1575 = $1574 << 31 >> 31; + $1576 = HEAP32[$pIn1>>2]|0; + $1577 = (($1576) + 16|0); + $1578 = $1577; + $1579 = $1578; + $1580 = HEAP32[$1579>>2]|0; + $1581 = (($1578) + 4)|0; + $1582 = $1581; + $1583 = HEAP32[$1582>>2]|0; + $1584 = (_i64Add(($1580|0),($1583|0),($1573|0),($1575|0))|0); + $1585 = tempRet0; + $1586 = $1577; + $1587 = $1586; + HEAP32[$1587>>2] = $1584; + $1588 = (($1586) + 4)|0; + $1589 = $1588; + HEAP32[$1589>>2] = $1585; + break; + } + case 36: { + $1189 = HEAP32[$pOp>>2]|0; + $1190 = (($1189) + 4|0); + $1191 = HEAP32[$1190>>2]|0; + $1192 = ($1191|0)!=(0); + if ($1192) { + $1193 = HEAP32[$pOp>>2]|0; + $1194 = (($1193) + 4|0); + $1195 = HEAP32[$1194>>2]|0; + $1196 = HEAP32[$aMem>>2]|0; + $1197 = (($1196) + (($1195*40)|0)|0); + _sqlite3VdbeMemSetInt64($1197,0,0); + } + break; + } + case 38: { + $1590 = HEAP32[$pOp>>2]|0; + $1591 = (($1590) + 4|0); + $1592 = HEAP32[$1591>>2]|0; + $1593 = HEAP32[$aMem>>2]|0; + $1594 = (($1593) + (($1592*40)|0)|0); + HEAP32[$pIn1>>2] = $1594; + $1595 = HEAP32[$pIn1>>2]|0; + $1596 = (($1595) + 28|0); + $1597 = HEAP16[$1596>>1]|0; + $1598 = $1597&65535; + $1599 = $1598 & 4; + $1600 = ($1599|0)==(0); + if ($1600) { + $1601 = HEAP32[$pIn1>>2]|0; + $1602 = HEAP8[$encoding>>0]|0; + _applyAffinity($1601,99,$1602); + $1603 = HEAP32[$pIn1>>2]|0; + $1604 = (($1603) + 28|0); + $1605 = HEAP16[$1604>>1]|0; + $1606 = $1605&65535; + $1607 = $1606 & 4; + $1608 = ($1607|0)==(0); + if ($1608) { + $1609 = HEAP32[$pOp>>2]|0; + $1610 = (($1609) + 8|0); + $1611 = HEAP32[$1610>>2]|0; + $1612 = ($1611|0)==(0); + if ($1612) { + label = 177; + break L11; + } + $1613 = HEAP32[$pOp>>2]|0; + $1614 = (($1613) + 8|0); + $1615 = HEAP32[$1614>>2]|0; + $1616 = (($1615) - 1)|0; + HEAP32[$pc>>2] = $1616; + break L21; + } + } + $1617 = HEAP32[$pIn1>>2]|0; + $1618 = (($1617) + 28|0); + $1619 = HEAP16[$1618>>1]|0; + $1620 = $1619&65535; + $1621 = $1620 & -16896; + $1622 = $1621 | 4; + $1623 = $1622&65535; + $1624 = HEAP32[$pIn1>>2]|0; + $1625 = (($1624) + 28|0); + HEAP16[$1625>>1] = $1623; + break; + } + case 146: { + $1717 = HEAP32[$pOp>>2]|0; + $1718 = (($1717) + 4|0); + $1719 = HEAP32[$1718>>2]|0; + $1720 = HEAP32[$aMem>>2]|0; + $1721 = (($1720) + (($1719*40)|0)|0); + HEAP32[$pIn1>>2] = $1721; + $1722 = HEAP32[$pIn1>>2]|0; + $1723 = (($1722) + 28|0); + $1724 = HEAP16[$1723>>1]|0; + $1725 = $1724&65535; + $1726 = $1725 & 1; + $1727 = ($1726|0)==(0); + if ($1727) { + $1728 = HEAP32[$pIn1>>2]|0; + (_sqlite3VdbeMemIntegerify($1728)|0); + } + break; + } + case 71: case 72: { + $2003 = HEAP32[$pOp>>2]|0; + $2004 = (($2003) + 4|0); + $2005 = HEAP32[$2004>>2]|0; + $2006 = HEAP32[$aMem>>2]|0; + $2007 = (($2006) + (($2005*40)|0)|0); + HEAP32[$pIn1>>2] = $2007; + $2008 = HEAP32[$pIn1>>2]|0; + $2009 = (($2008) + 28|0); + $2010 = HEAP16[$2009>>1]|0; + $2011 = $2010&65535; + $2012 = $2011 & 1; + $2013 = ($2012|0)!=(0); + if ($2013) { + HEAP32[$v1>>2] = 2; + } else { + $2014 = HEAP32[$pIn1>>2]|0; + $2015 = (_sqlite3VdbeIntValue($2014)|0); + $2016 = tempRet0; + $2017 = ($2015|0)!=(0); + $2018 = ($2016|0)!=(0); + $2019 = $2017 | $2018; + $2020 = $2019&1; + HEAP32[$v1>>2] = $2020; + } + $2021 = HEAP32[$pOp>>2]|0; + $2022 = (($2021) + 8|0); + $2023 = HEAP32[$2022>>2]|0; + $2024 = HEAP32[$aMem>>2]|0; + $2025 = (($2024) + (($2023*40)|0)|0); + HEAP32[$pIn2>>2] = $2025; + $2026 = HEAP32[$pIn2>>2]|0; + $2027 = (($2026) + 28|0); + $2028 = HEAP16[$2027>>1]|0; + $2029 = $2028&65535; + $2030 = $2029 & 1; + $2031 = ($2030|0)!=(0); + if ($2031) { + HEAP32[$v2>>2] = 2; + } else { + $2032 = HEAP32[$pIn2>>2]|0; + $2033 = (_sqlite3VdbeIntValue($2032)|0); + $2034 = tempRet0; + $2035 = ($2033|0)!=(0); + $2036 = ($2034|0)!=(0); + $2037 = $2035 | $2036; + $2038 = $2037&1; + HEAP32[$v2>>2] = $2038; + } + $2039 = HEAP32[$pOp>>2]|0; + $2040 = HEAP8[$2039>>0]|0; + $2041 = $2040&255; + $2042 = ($2041|0)==(72); + $2043 = HEAP32[$v1>>2]|0; + $2044 = ($2043*3)|0; + $2045 = HEAP32[$v2>>2]|0; + $2046 = (($2044) + ($2045))|0; + if ($2042) { + $2047 = (37888 + ($2046)|0); + $2048 = HEAP8[$2047>>0]|0; + $2049 = $2048&255; + HEAP32[$v1>>2] = $2049; + } else { + $2050 = (37904 + ($2046)|0); + $2051 = HEAP8[$2050>>0]|0; + $2052 = $2051&255; + HEAP32[$v1>>2] = $2052; + } + $2053 = HEAP32[$pOp>>2]|0; + $2054 = (($2053) + 12|0); + $2055 = HEAP32[$2054>>2]|0; + $2056 = HEAP32[$aMem>>2]|0; + $2057 = (($2056) + (($2055*40)|0)|0); + HEAP32[$pOut>>2] = $2057; + $2058 = HEAP32[$v1>>2]|0; + $2059 = ($2058|0)==(2); + if ($2059) { + $2060 = HEAP32[$pOut>>2]|0; + $2061 = (($2060) + 28|0); + $2062 = HEAP16[$2061>>1]|0; + $2063 = $2062&65535; + $2064 = $2063 & -16896; + $2065 = $2064 | 1; + $2066 = $2065&65535; + $2067 = HEAP32[$pOut>>2]|0; + $2068 = (($2067) + 28|0); + HEAP16[$2068>>1] = $2066; + break L21; + } else { + $2069 = HEAP32[$v1>>2]|0; + $2070 = ($2069|0)<(0); + $2071 = $2070 << 31 >> 31; + $2072 = HEAP32[$pOut>>2]|0; + $2073 = (($2072) + 16|0); + $2074 = $2073; + $2075 = $2074; + HEAP32[$2075>>2] = $2069; + $2076 = (($2074) + 4)|0; + $2077 = $2076; + HEAP32[$2077>>2] = $2071; + $2078 = HEAP32[$pOut>>2]|0; + $2079 = (($2078) + 28|0); + $2080 = HEAP16[$2079>>1]|0; + $2081 = $2080&65535; + $2082 = $2081 & -16896; + $2083 = $2082 | 4; + $2084 = $2083&65535; + $2085 = HEAP32[$pOut>>2]|0; + $2086 = (($2085) + 28|0); + HEAP16[$2086>>1] = $2084; + break L21; + } + break; + } + case 144: { + $1678 = HEAP32[$pOp>>2]|0; + $1679 = (($1678) + 4|0); + $1680 = HEAP32[$1679>>2]|0; + $1681 = HEAP32[$aMem>>2]|0; + $1682 = (($1681) + (($1680*40)|0)|0); + HEAP32[$pIn1>>2] = $1682; + $1683 = HEAP32[$pIn1>>2]|0; + $1684 = (($1683) + 28|0); + $1685 = HEAP16[$1684>>1]|0; + $1686 = $1685&65535; + $1687 = $1686 & 1; + $1688 = ($1687|0)!=(0); + if (!($1688)) { + $1689 = HEAP32[$pIn1>>2]|0; + $1690 = (($1689) + 28|0); + $1691 = HEAP16[$1690>>1]|0; + $1692 = $1691&65535; + $1693 = $1692 & 16; + $1694 = ($1693|0)==(0); + $1695 = HEAP32[$pIn1>>2]|0; + if ($1694) { + $1696 = HEAP8[$encoding>>0]|0; + _applyAffinity($1695,97,$1696); + $1697 = HEAP32[$pIn1>>2]|0; + $1698 = (($1697) + 28|0); + $1699 = HEAP16[$1698>>1]|0; + $1700 = $1699&65535; + $1701 = $1700 & -16896; + $1702 = $1701 | 16; + $1703 = $1702&65535; + $1704 = HEAP32[$pIn1>>2]|0; + $1705 = (($1704) + 28|0); + HEAP16[$1705>>1] = $1703; + break L21; + } else { + $1706 = (($1695) + 28|0); + $1707 = HEAP16[$1706>>1]|0; + $1708 = $1707&65535; + $1709 = $1708 & -496; + $1710 = $1709&65535; + HEAP16[$1706>>1] = $1710; + break L21; + } + } + break; + } + case 41: { + $1928 = HEAP32[$pOp>>2]|0; + $1929 = (($1928) + 3|0); + $1930 = HEAP8[$1929>>0]|0; + $1931 = $1930&255; + $1932 = $1931 & 1; + $1933 = ($1932|0)==(0); + if ($1933) { + HEAP32[$aPermute>>2] = 0; + } + $1934 = HEAP32[$pOp>>2]|0; + $1935 = (($1934) + 12|0); + $1936 = HEAP32[$1935>>2]|0; + HEAP32[$n6>>2] = $1936; + $1937 = HEAP32[$pOp>>2]|0; + $1938 = (($1937) + 16|0); + $1939 = HEAP32[$1938>>2]|0; + HEAP32[$pKeyInfo>>2] = $1939; + $1940 = HEAP32[$pOp>>2]|0; + $1941 = (($1940) + 4|0); + $1942 = HEAP32[$1941>>2]|0; + HEAP32[$p18>>2] = $1942; + $1943 = HEAP32[$pOp>>2]|0; + $1944 = (($1943) + 8|0); + $1945 = HEAP32[$1944>>2]|0; + HEAP32[$p29>>2] = $1945; + HEAP32[$i7>>2] = 0; + while(1) { + $1946 = HEAP32[$i7>>2]|0; + $1947 = HEAP32[$n6>>2]|0; + $1948 = ($1946|0)<($1947|0); + if (!($1948)) { + break; + } + $1949 = HEAP32[$aPermute>>2]|0; + $1950 = ($1949|0)!=(0|0); + $1951 = HEAP32[$i7>>2]|0; + if ($1950) { + $1952 = HEAP32[$aPermute>>2]|0; + $1953 = (($1952) + ($1951<<2)|0); + $1954 = HEAP32[$1953>>2]|0; + $1955 = $1954; + } else { + $1955 = $1951; + } + HEAP32[$idx>>2] = $1955; + $1956 = HEAP32[$i7>>2]|0; + $1957 = HEAP32[$pKeyInfo>>2]|0; + $1958 = (($1957) + 20|0); + $1959 = (($1958) + ($1956<<2)|0); + $1960 = HEAP32[$1959>>2]|0; + HEAP32[$pColl>>2] = $1960; + $1961 = HEAP32[$i7>>2]|0; + $1962 = HEAP32[$pKeyInfo>>2]|0; + $1963 = (($1962) + 16|0); + $1964 = HEAP32[$1963>>2]|0; + $1965 = (($1964) + ($1961)|0); + $1966 = HEAP8[$1965>>0]|0; + $1967 = $1966&255; + HEAP32[$bRev>>2] = $1967; + $1968 = HEAP32[$p18>>2]|0; + $1969 = HEAP32[$idx>>2]|0; + $1970 = (($1968) + ($1969))|0; + $1971 = HEAP32[$aMem>>2]|0; + $1972 = (($1971) + (($1970*40)|0)|0); + $1973 = HEAP32[$p29>>2]|0; + $1974 = HEAP32[$idx>>2]|0; + $1975 = (($1973) + ($1974))|0; + $1976 = HEAP32[$aMem>>2]|0; + $1977 = (($1976) + (($1975*40)|0)|0); + $1978 = HEAP32[$pColl>>2]|0; + $1979 = (_sqlite3MemCompare($1972,$1977,$1978)|0); + HEAP32[$iCompare>>2] = $1979; + $1980 = HEAP32[$iCompare>>2]|0; + $1981 = ($1980|0)!=(0); + if ($1981) { + label = 233; + break; + } + $1986 = HEAP32[$i7>>2]|0; + $1987 = (($1986) + 1)|0; + HEAP32[$i7>>2] = $1987; + } + if ((label|0) == 233) { + label = 0; + $1982 = HEAP32[$bRev>>2]|0; + $1983 = ($1982|0)!=(0); + if ($1983) { + $1984 = HEAP32[$iCompare>>2]|0; + $1985 = (0 - ($1984))|0; + HEAP32[$iCompare>>2] = $1985; + } + } + HEAP32[$aPermute>>2] = 0; + break; + } + case 42: { + $1988 = HEAP32[$iCompare>>2]|0; + $1989 = ($1988|0)<(0); + if ($1989) { + $1990 = HEAP32[$pOp>>2]|0; + $1991 = (($1990) + 4|0); + $1992 = HEAP32[$1991>>2]|0; + $1993 = (($1992) - 1)|0; + HEAP32[$pc>>2] = $1993; + break L21; + } + $1994 = HEAP32[$iCompare>>2]|0; + $1995 = ($1994|0)==(0); + $1996 = HEAP32[$pOp>>2]|0; + if ($1995) { + $1997 = (($1996) + 8|0); + $1998 = HEAP32[$1997>>2]|0; + $1999 = (($1998) - 1)|0; + HEAP32[$pc>>2] = $1999; + break L21; + } else { + $2000 = (($1996) + 12|0); + $2001 = HEAP32[$2000>>2]|0; + $2002 = (($2001) - 1)|0; + HEAP32[$pc>>2] = $2002; + break L21; + } + break; + } + case 145: { + $1711 = HEAP32[$pOp>>2]|0; + $1712 = (($1711) + 4|0); + $1713 = HEAP32[$1712>>2]|0; + $1714 = HEAP32[$aMem>>2]|0; + $1715 = (($1714) + (($1713*40)|0)|0); + HEAP32[$pIn1>>2] = $1715; + $1716 = HEAP32[$pIn1>>2]|0; + (_sqlite3VdbeMemNumerify($1716)|0); + break; + } + case 83: case 80: case 81: case 82: case 78: case 79: { + $1741 = HEAP32[$pOp>>2]|0; + $1742 = (($1741) + 4|0); + $1743 = HEAP32[$1742>>2]|0; + $1744 = HEAP32[$aMem>>2]|0; + $1745 = (($1744) + (($1743*40)|0)|0); + HEAP32[$pIn1>>2] = $1745; + $1746 = HEAP32[$pOp>>2]|0; + $1747 = (($1746) + 12|0); + $1748 = HEAP32[$1747>>2]|0; + $1749 = HEAP32[$aMem>>2]|0; + $1750 = (($1749) + (($1748*40)|0)|0); + HEAP32[$pIn3>>2] = $1750; + $1751 = HEAP32[$pIn1>>2]|0; + $1752 = (($1751) + 28|0); + $1753 = HEAP16[$1752>>1]|0; + HEAP16[$flags1>>1] = $1753; + $1754 = HEAP32[$pIn3>>2]|0; + $1755 = (($1754) + 28|0); + $1756 = HEAP16[$1755>>1]|0; + HEAP16[$flags3>>1] = $1756; + $1757 = HEAP16[$flags1>>1]|0; + $1758 = $1757&65535; + $1759 = HEAP16[$flags3>>1]|0; + $1760 = $1759&65535; + $1761 = $1758 | $1760; + $1762 = $1761 & 1; + $1763 = ($1762|0)!=(0); + $1764 = HEAP32[$pOp>>2]|0; + $1765 = (($1764) + 3|0); + $1766 = HEAP8[$1765>>0]|0; + $1767 = $1766&255; + do { + if ($1763) { + $1768 = $1767 & 128; + $1769 = ($1768|0)!=(0); + if (!($1769)) { + $1782 = HEAP32[$pOp>>2]|0; + $1783 = (($1782) + 3|0); + $1784 = HEAP8[$1783>>0]|0; + $1785 = $1784&255; + $1786 = $1785 & 16; + $1787 = ($1786|0)!=(0); + $1788 = HEAP32[$pOp>>2]|0; + if ($1787) { + $1789 = (($1788) + 8|0); + $1790 = HEAP32[$1789>>2]|0; + $1791 = HEAP32[$aMem>>2]|0; + $1792 = (($1791) + (($1790*40)|0)|0); + HEAP32[$pOut>>2] = $1792; + $1793 = HEAP32[$pOut>>2]|0; + $1794 = (($1793) + 28|0); + $1795 = HEAP16[$1794>>1]|0; + $1796 = $1795&65535; + $1797 = $1796 & -16896; + $1798 = $1797 | 1; + $1799 = $1798&65535; + $1800 = HEAP32[$pOut>>2]|0; + $1801 = (($1800) + 28|0); + HEAP16[$1801>>1] = $1799; + break L21; + } + $1802 = (($1788) + 3|0); + $1803 = HEAP8[$1802>>0]|0; + $1804 = $1803&255; + $1805 = $1804 & 8; + $1806 = ($1805|0)!=(0); + if (!($1806)) { + break L21; + } + $1807 = HEAP32[$pOp>>2]|0; + $1808 = (($1807) + 8|0); + $1809 = HEAP32[$1808>>2]|0; + $1810 = (($1809) - 1)|0; + HEAP32[$pc>>2] = $1810; + break L21; + } + $1770 = HEAP16[$flags1>>1]|0; + $1771 = $1770&65535; + $1772 = $1771 & 1; + $1773 = ($1772|0)!=(0); + if ($1773) { + $1774 = HEAP16[$flags3>>1]|0; + $1775 = $1774&65535; + $1776 = $1775 & 1; + $1777 = ($1776|0)!=(0); + if ($1777) { + $1778 = HEAP16[$flags3>>1]|0; + $1779 = $1778&65535; + $1780 = $1779 & 256; + $1781 = ($1780|0)==(0); + if ($1781) { + HEAP32[$res>>2] = 0; + break; + } + } + } + HEAP32[$res>>2] = 1; + } else { + $1811 = $1767 & 103; + $1812 = $1811&255; + HEAP8[$affinity>>0] = $1812; + $1813 = HEAP8[$affinity>>0]|0; + $1814 = ($1813<<24>>24)!=(0); + if ($1814) { + $1815 = HEAP32[$pIn1>>2]|0; + $1816 = HEAP8[$affinity>>0]|0; + $1817 = HEAP8[$encoding>>0]|0; + _applyAffinity($1815,$1816,$1817); + $1818 = HEAP32[$pIn3>>2]|0; + $1819 = HEAP8[$affinity>>0]|0; + $1820 = HEAP8[$encoding>>0]|0; + _applyAffinity($1818,$1819,$1820); + $1821 = HEAP32[$db>>2]|0; + $1822 = (($1821) + 64|0); + $1823 = HEAP8[$1822>>0]|0; + $1824 = ($1823<<24>>24)!=(0); + if ($1824) { + label = 900; + break L1; + } + } + $1825 = HEAP32[$pIn1>>2]|0; + $1826 = (($1825) + 28|0); + $1827 = HEAP16[$1826>>1]|0; + $1828 = $1827&65535; + $1829 = $1828 & 16384; + $1830 = ($1829|0)!=(0); + if ($1830) { + $1831 = HEAP32[$pIn1>>2]|0; + (_sqlite3VdbeMemExpandBlob($1831)|0); + } + $1832 = HEAP32[$pIn3>>2]|0; + $1833 = (($1832) + 28|0); + $1834 = HEAP16[$1833>>1]|0; + $1835 = $1834&65535; + $1836 = $1835 & 16384; + $1837 = ($1836|0)!=(0); + if ($1837) { + $1838 = HEAP32[$pIn3>>2]|0; + (_sqlite3VdbeMemExpandBlob($1838)|0); + } + $1839 = HEAP32[$pIn3>>2]|0; + $1840 = HEAP32[$pIn1>>2]|0; + $1841 = HEAP32[$pOp>>2]|0; + $1842 = (($1841) + 16|0); + $1843 = HEAP32[$1842>>2]|0; + $1844 = (_sqlite3MemCompare($1839,$1840,$1843)|0); + HEAP32[$res>>2] = $1844; + } + } while(0); + $1845 = HEAP32[$pOp>>2]|0; + $1846 = HEAP8[$1845>>0]|0; + $1847 = $1846&255; + switch ($1847|0) { + case 79: { + $1848 = HEAP32[$res>>2]|0; + $1849 = ($1848|0)==(0); + $1850 = $1849&1; + HEAP32[$res>>2] = $1850; + break; + } + case 80: { + $1860 = HEAP32[$res>>2]|0; + $1861 = ($1860|0)>(0); + $1862 = $1861&1; + HEAP32[$res>>2] = $1862; + break; + } + case 78: { + $1851 = HEAP32[$res>>2]|0; + $1852 = ($1851|0)!=(0); + $1853 = $1852&1; + HEAP32[$res>>2] = $1853; + break; + } + case 82: { + $1854 = HEAP32[$res>>2]|0; + $1855 = ($1854|0)<(0); + $1856 = $1855&1; + HEAP32[$res>>2] = $1856; + break; + } + case 81: { + $1857 = HEAP32[$res>>2]|0; + $1858 = ($1857|0)<=(0); + $1859 = $1858&1; + HEAP32[$res>>2] = $1859; + break; + } + default: { + $1863 = HEAP32[$res>>2]|0; + $1864 = ($1863|0)>=(0); + $1865 = $1864&1; + HEAP32[$res>>2] = $1865; + } + } + $1866 = HEAP32[$pOp>>2]|0; + $1867 = (($1866) + 3|0); + $1868 = HEAP8[$1867>>0]|0; + $1869 = $1868&255; + $1870 = $1869 & 16; + $1871 = ($1870|0)!=(0); + if ($1871) { + $1872 = HEAP32[$pOp>>2]|0; + $1873 = (($1872) + 8|0); + $1874 = HEAP32[$1873>>2]|0; + $1875 = HEAP32[$aMem>>2]|0; + $1876 = (($1875) + (($1874*40)|0)|0); + HEAP32[$pOut>>2] = $1876; + $1877 = HEAP32[$pOut>>2]|0; + $1878 = (($1877) + 28|0); + $1879 = HEAP16[$1878>>1]|0; + $1880 = $1879&65535; + $1881 = $1880 & -16896; + $1882 = $1881 | 4; + $1883 = $1882&65535; + $1884 = HEAP32[$pOut>>2]|0; + $1885 = (($1884) + 28|0); + HEAP16[$1885>>1] = $1883; + $1886 = HEAP32[$res>>2]|0; + $1887 = ($1886|0)<(0); + $1888 = $1887 << 31 >> 31; + $1889 = HEAP32[$pOut>>2]|0; + $1890 = (($1889) + 16|0); + $1891 = $1890; + $1892 = $1891; + HEAP32[$1892>>2] = $1886; + $1893 = (($1891) + 4)|0; + $1894 = $1893; + HEAP32[$1894>>2] = $1888; + } else { + $1895 = HEAP32[$res>>2]|0; + $1896 = ($1895|0)!=(0); + if ($1896) { + $1897 = HEAP32[$pOp>>2]|0; + $1898 = (($1897) + 8|0); + $1899 = HEAP32[$1898>>2]|0; + $1900 = (($1899) - 1)|0; + HEAP32[$pc>>2] = $1900; + } + } + $1901 = HEAP32[$pIn1>>2]|0; + $1902 = (($1901) + 28|0); + $1903 = HEAP16[$1902>>1]|0; + $1904 = $1903&65535; + $1905 = $1904 & -512; + $1906 = HEAP16[$flags1>>1]|0; + $1907 = $1906&65535; + $1908 = $1907 & 511; + $1909 = $1905 | $1908; + $1910 = $1909&65535; + $1911 = HEAP32[$pIn1>>2]|0; + $1912 = (($1911) + 28|0); + HEAP16[$1912>>1] = $1910; + $1913 = HEAP32[$pIn3>>2]|0; + $1914 = (($1913) + 28|0); + $1915 = HEAP16[$1914>>1]|0; + $1916 = $1915&65535; + $1917 = $1916 & -512; + $1918 = HEAP16[$flags3>>1]|0; + $1919 = $1918&65535; + $1920 = $1919 & 511; + $1921 = $1917 | $1920; + $1922 = $1921&65535; + $1923 = HEAP32[$pIn3>>2]|0; + $1924 = (($1923) + 28|0); + HEAP16[$1924>>1] = $1922; + break; + } + case 40: { + $1925 = HEAP32[$pOp>>2]|0; + $1926 = (($1925) + 16|0); + $1927 = HEAP32[$1926>>2]|0; + HEAP32[$aPermute>>2] = $1927; + break; + } + case 147: { + $1729 = HEAP32[$pOp>>2]|0; + $1730 = (($1729) + 4|0); + $1731 = HEAP32[$1730>>2]|0; + $1732 = HEAP32[$aMem>>2]|0; + $1733 = (($1732) + (($1731*40)|0)|0); + HEAP32[$pIn1>>2] = $1733; + $1734 = HEAP32[$pIn1>>2]|0; + $1735 = (($1734) + 28|0); + $1736 = HEAP16[$1735>>1]|0; + $1737 = $1736&65535; + $1738 = $1737 & 1; + $1739 = ($1738|0)==(0); + if ($1739) { + $1740 = HEAP32[$pIn1>>2]|0; + (_sqlite3VdbeMemRealify($1740)|0); + } + break; + } + case 77: { + $2202 = HEAP32[$pOp>>2]|0; + $2203 = (($2202) + 4|0); + $2204 = HEAP32[$2203>>2]|0; + $2205 = HEAP32[$aMem>>2]|0; + $2206 = (($2205) + (($2204*40)|0)|0); + HEAP32[$pIn1>>2] = $2206; + $2207 = HEAP32[$pIn1>>2]|0; + $2208 = (($2207) + 28|0); + $2209 = HEAP16[$2208>>1]|0; + $2210 = $2209&65535; + $2211 = $2210 & 1; + $2212 = ($2211|0)==(0); + if ($2212) { + $2213 = HEAP32[$pOp>>2]|0; + $2214 = (($2213) + 8|0); + $2215 = HEAP32[$2214>>2]|0; + $2216 = (($2215) - 1)|0; + HEAP32[$pc>>2] = $2216; + } + break; + } + case 96: { + $2114 = HEAP32[$pOp>>2]|0; + $2115 = (($2114) + 4|0); + $2116 = HEAP32[$2115>>2]|0; + $2117 = HEAP32[$aMem>>2]|0; + $2118 = (($2117) + (($2116*40)|0)|0); + HEAP32[$pIn1>>2] = $2118; + $2119 = HEAP32[$pOp>>2]|0; + $2120 = (($2119) + 8|0); + $2121 = HEAP32[$2120>>2]|0; + $2122 = HEAP32[$aMem>>2]|0; + $2123 = (($2122) + (($2121*40)|0)|0); + HEAP32[$pOut>>2] = $2123; + $2124 = HEAP32[$pIn1>>2]|0; + $2125 = (($2124) + 28|0); + $2126 = HEAP16[$2125>>1]|0; + $2127 = $2126&65535; + $2128 = $2127 & 1; + $2129 = ($2128|0)!=(0); + $2130 = HEAP32[$pOut>>2]|0; + if ($2129) { + _sqlite3VdbeMemSetNull($2130); + break L21; + } else { + $2131 = HEAP32[$pIn1>>2]|0; + $2132 = (_sqlite3VdbeIntValue($2131)|0); + $2133 = tempRet0; + $2134 = $2132 ^ -1; + $2135 = $2133 ^ -1; + _sqlite3VdbeMemSetInt64($2130,$2134,$2135); + break L21; + } + break; + } + case 76: { + $2187 = HEAP32[$pOp>>2]|0; + $2188 = (($2187) + 4|0); + $2189 = HEAP32[$2188>>2]|0; + $2190 = HEAP32[$aMem>>2]|0; + $2191 = (($2190) + (($2189*40)|0)|0); + HEAP32[$pIn1>>2] = $2191; + $2192 = HEAP32[$pIn1>>2]|0; + $2193 = (($2192) + 28|0); + $2194 = HEAP16[$2193>>1]|0; + $2195 = $2194&65535; + $2196 = $2195 & 1; + $2197 = ($2196|0)!=(0); + if ($2197) { + $2198 = HEAP32[$pOp>>2]|0; + $2199 = (($2198) + 8|0); + $2200 = HEAP32[$2199>>2]|0; + $2201 = (($2200) - 1)|0; + HEAP32[$pc>>2] = $2201; + } + break; + } + case 43: { + $2136 = HEAP32[$pOp>>2]|0; + $2137 = (($2136) + 4|0); + $2138 = HEAP32[$2137>>2]|0; + $2139 = HEAP32[$0>>2]|0; + $2140 = (($2139) + 200|0); + $2141 = HEAP32[$2140>>2]|0; + $2142 = (($2141) + ($2138)|0); + $2143 = HEAP8[$2142>>0]|0; + $2144 = ($2143<<24>>24)!=(0); + $2145 = HEAP32[$pOp>>2]|0; + if ($2144) { + $2146 = (($2145) + 8|0); + $2147 = HEAP32[$2146>>2]|0; + $2148 = (($2147) - 1)|0; + HEAP32[$pc>>2] = $2148; + break L21; + } else { + $2149 = (($2145) + 4|0); + $2150 = HEAP32[$2149>>2]|0; + $2151 = HEAP32[$0>>2]|0; + $2152 = (($2151) + 200|0); + $2153 = HEAP32[$2152>>2]|0; + $2154 = (($2153) + ($2150)|0); + HEAP8[$2154>>0] = 1; + break L21; + } + break; + } + case 45: case 44: { + $2155 = HEAP32[$pOp>>2]|0; + $2156 = (($2155) + 4|0); + $2157 = HEAP32[$2156>>2]|0; + $2158 = HEAP32[$aMem>>2]|0; + $2159 = (($2158) + (($2157*40)|0)|0); + HEAP32[$pIn1>>2] = $2159; + $2160 = HEAP32[$pIn1>>2]|0; + $2161 = (($2160) + 28|0); + $2162 = HEAP16[$2161>>1]|0; + $2163 = $2162&65535; + $2164 = $2163 & 1; + $2165 = ($2164|0)!=(0); + if ($2165) { + $2166 = HEAP32[$pOp>>2]|0; + $2167 = (($2166) + 12|0); + $2168 = HEAP32[$2167>>2]|0; + HEAP32[$c>>2] = $2168; + } else { + $2169 = HEAP32[$pIn1>>2]|0; + $2170 = (+_sqlite3VdbeRealValue($2169)); + $2171 = $2170 != 0.0; + $2172 = $2171&1; + HEAP32[$c>>2] = $2172; + $2173 = HEAP32[$pOp>>2]|0; + $2174 = HEAP8[$2173>>0]|0; + $2175 = $2174&255; + $2176 = ($2175|0)==(45); + if ($2176) { + $2177 = HEAP32[$c>>2]|0; + $2178 = ($2177|0)!=(0); + $2179 = $2178 ^ 1; + $2180 = $2179&1; + HEAP32[$c>>2] = $2180; + } + } + $2181 = HEAP32[$c>>2]|0; + $2182 = ($2181|0)!=(0); + if ($2182) { + $2183 = HEAP32[$pOp>>2]|0; + $2184 = (($2183) + 8|0); + $2185 = HEAP32[$2184>>2]|0; + $2186 = (($2185) - 1)|0; + HEAP32[$pc>>2] = $2186; + } + break; + } + case 46: { + $2217 = HEAP32[$pOp>>2]|0; + $2218 = (($2217) + 8|0); + $2219 = HEAP32[$2218>>2]|0; + HEAP32[$p210>>2] = $2219; + $2220 = HEAP32[$pOp>>2]|0; + $2221 = (($2220) + 12|0); + $2222 = HEAP32[$2221>>2]|0; + $2223 = HEAP32[$aMem>>2]|0; + $2224 = (($2223) + (($2222*40)|0)|0); + HEAP32[$pDest>>2] = $2224; + $2225 = HEAP32[$pOp>>2]|0; + $2226 = (($2225) + 4|0); + $2227 = HEAP32[$2226>>2]|0; + $2228 = HEAP32[$0>>2]|0; + $2229 = (($2228) + 56|0); + $2230 = HEAP32[$2229>>2]|0; + $2231 = (($2230) + ($2227<<2)|0); + $2232 = HEAP32[$2231>>2]|0; + HEAP32[$pC>>2] = $2232; + $2233 = HEAP32[$pC>>2]|0; + $2234 = (($2233) + 88|0); + HEAP32[$aType>>2] = $2234; + $2235 = HEAP32[$aType>>2]|0; + $2236 = HEAP32[$pC>>2]|0; + $2237 = (($2236) + 20|0); + $2238 = HEAP16[$2237>>1]|0; + $2239 = $2238 << 16 >> 16; + $2240 = (($2235) + ($2239<<2)|0); + HEAP32[$aOffset>>2] = $2240; + $2241 = HEAP32[$pC>>2]|0; + $2242 = HEAP32[$2241>>2]|0; + HEAP32[$pCrsr>>2] = $2242; + $2243 = HEAP32[$pC>>2]|0; + $2244 = (_sqlite3VdbeCursorMoveto($2243)|0); + HEAP32[$rc>>2] = $2244; + $2245 = HEAP32[$rc>>2]|0; + $2246 = ($2245|0)!=(0); + if ($2246) { + break L11; + } + $2247 = HEAP32[$pC>>2]|0; + $2248 = (($2247) + 68|0); + $2249 = HEAP32[$2248>>2]|0; + $2250 = HEAP32[$0>>2]|0; + $2251 = (($2250) + 72|0); + $2252 = HEAP32[$2251>>2]|0; + $2253 = ($2249|0)!=($2252|0); + if ($2253) { + label = 276; + } else { + $2254 = HEAP32[$pOp>>2]|0; + $2255 = (($2254) + 3|0); + $2256 = HEAP8[$2255>>0]|0; + $2257 = $2256&255; + $2258 = $2257 & 32; + $2259 = ($2258|0)!=(0); + if ($2259) { + label = 276; + } else { + label = 295; + } + } + L798: do { + if ((label|0) == 276) { + label = 0; + $2260 = HEAP32[$pC>>2]|0; + $2261 = (($2260) + 25|0); + $2262 = HEAP8[$2261>>0]|0; + $2263 = ($2262<<24>>24)!=(0); + do { + if ($2263) { + $2264 = HEAP32[$pCrsr>>2]|0; + $2265 = ($2264|0)==(0|0); + if ($2265) { + $2266 = HEAP32[$pC>>2]|0; + $2267 = (($2266) + 16|0); + $2268 = HEAP32[$2267>>2]|0; + $2269 = HEAP32[$aMem>>2]|0; + $2270 = (($2269) + (($2268*40)|0)|0); + HEAP32[$pReg>>2] = $2270; + $2271 = HEAP32[$pReg>>2]|0; + $2272 = (($2271) + 24|0); + $2273 = HEAP32[$2272>>2]|0; + HEAP32[$avail>>2] = $2273; + $2274 = HEAP32[$pC>>2]|0; + $2275 = (($2274) + 76|0); + HEAP32[$2275>>2] = $2273; + $2276 = HEAP32[$pC>>2]|0; + $2277 = (($2276) + 72|0); + HEAP32[$2277>>2] = $2273; + $2278 = HEAP32[$pReg>>2]|0; + $2279 = (($2278) + 4|0); + $2280 = HEAP32[$2279>>2]|0; + $2281 = HEAP32[$pC>>2]|0; + $2282 = (($2281) + 84|0); + HEAP32[$2282>>2] = $2280; + break; + } else { + $2283 = HEAP32[$pDest>>2]|0; + $2284 = (($2283) + 28|0); + $2285 = HEAP16[$2284>>1]|0; + $2286 = $2285&65535; + $2287 = $2286 & -16896; + $2288 = $2287 | 1; + $2289 = $2288&65535; + $2290 = HEAP32[$pDest>>2]|0; + $2291 = (($2290) + 28|0); + HEAP16[$2291>>1] = $2289; + break L798; + } + } else { + $2292 = HEAP32[$pC>>2]|0; + $2293 = (($2292) + 28|0); + $2294 = HEAP8[$2293>>0]|0; + $2295 = ($2294&255) >>> 2; + $2296 = $2295 & 1; + $2297 = $2296&255; + $2298 = ($2297|0)==(0); + $2299 = HEAP32[$pCrsr>>2]|0; + if ($2298) { + (_sqlite3BtreeKeySize($2299,$payloadSize64)|0); + $2300 = HEAP32[$pCrsr>>2]|0; + $2301 = (_sqlite3BtreeKeyFetch($2300,$avail)|0); + $2302 = HEAP32[$pC>>2]|0; + $2303 = (($2302) + 84|0); + HEAP32[$2303>>2] = $2301; + $2304 = $payloadSize64; + $2305 = $2304; + $2306 = HEAP32[$2305>>2]|0; + $2307 = (($2304) + 4)|0; + $2308 = $2307; + $2309 = HEAP32[$2308>>2]|0; + $2310 = HEAP32[$pC>>2]|0; + $2311 = (($2310) + 72|0); + HEAP32[$2311>>2] = $2306; + } else { + $2312 = HEAP32[$pC>>2]|0; + $2313 = (($2312) + 72|0); + (_sqlite3BtreeDataSize($2299,$2313)|0); + $2314 = HEAP32[$pCrsr>>2]|0; + $2315 = (_sqlite3BtreeDataFetch($2314,$avail)|0); + $2316 = HEAP32[$pC>>2]|0; + $2317 = (($2316) + 84|0); + HEAP32[$2317>>2] = $2315; + } + $2318 = HEAP32[$pC>>2]|0; + $2319 = (($2318) + 72|0); + $2320 = HEAP32[$2319>>2]|0; + $2321 = HEAP32[$avail>>2]|0; + $2322 = ($2320>>>0)<=($2321>>>0); + if ($2322) { + $2323 = HEAP32[$pC>>2]|0; + $2324 = (($2323) + 72|0); + $2325 = HEAP32[$2324>>2]|0; + $2326 = HEAP32[$pC>>2]|0; + $2327 = (($2326) + 76|0); + HEAP32[$2327>>2] = $2325; + } else { + $2328 = HEAP32[$avail>>2]|0; + $2329 = HEAP32[$pC>>2]|0; + $2330 = (($2329) + 76|0); + HEAP32[$2330>>2] = $2328; + } + $2331 = HEAP32[$pC>>2]|0; + $2332 = (($2331) + 72|0); + $2333 = HEAP32[$2332>>2]|0; + $2334 = HEAP32[$db>>2]|0; + $2335 = (($2334) + 88|0); + $2336 = HEAP32[$2335>>2]|0; + $2337 = ($2333>>>0)>($2336>>>0); + if ($2337) { + label = 899; + break L11; + } + } + } while(0); + $2338 = HEAP32[$0>>2]|0; + $2339 = (($2338) + 72|0); + $2340 = HEAP32[$2339>>2]|0; + $2341 = HEAP32[$pC>>2]|0; + $2342 = (($2341) + 68|0); + HEAP32[$2342>>2] = $2340; + $2343 = HEAP32[$pC>>2]|0; + $2344 = (($2343) + 84|0); + $2345 = HEAP32[$2344>>2]|0; + $2346 = HEAP8[$2345>>0]|0; + $2347 = $2346&255; + $2348 = ($2347|0)<(128); + $2349 = HEAP32[$pC>>2]|0; + $2350 = (($2349) + 84|0); + $2351 = HEAP32[$2350>>2]|0; + if ($2348) { + $2352 = HEAP8[$2351>>0]|0; + $2353 = $2352&255; + HEAP32[$offset>>2] = $2353; + $2357 = 1; + } else { + $2354 = (_sqlite3GetVarint32($2351,$offset)|0); + $2355 = $2354&255; + $2357 = $2355; + } + $2356 = $2357&255; + $2358 = $2356&255; + $2359 = HEAP32[$pC>>2]|0; + $2360 = (($2359) + 80|0); + HEAP32[$2360>>2] = $2358; + $2361 = HEAP32[$pC>>2]|0; + $2362 = (($2361) + 22|0); + HEAP16[$2362>>1] = 0; + $2363 = HEAP32[$offset>>2]|0; + $2364 = HEAP32[$aOffset>>2]|0; + HEAP32[$2364>>2] = $2363; + $2365 = HEAP32[$avail>>2]|0; + $2366 = HEAP32[$offset>>2]|0; + $2367 = ($2365>>>0)<($2366>>>0); + if ($2367) { + $2368 = HEAP32[$pC>>2]|0; + $2369 = (($2368) + 84|0); + HEAP32[$2369>>2] = 0; + $2370 = HEAP32[$pC>>2]|0; + $2371 = (($2370) + 76|0); + HEAP32[$2371>>2] = 0; + } + $2372 = HEAP32[$offset>>2]|0; + $2373 = ($2372>>>0)>(98307); + if (!($2373)) { + $2374 = HEAP32[$offset>>2]|0; + $2375 = HEAP32[$pC>>2]|0; + $2376 = (($2375) + 72|0); + $2377 = HEAP32[$2376>>2]|0; + $2378 = ($2374>>>0)>($2377>>>0); + if (!($2378)) { + label = 295; + break; + } + } + $2379 = (_sqlite3CorruptError(69894)|0); + HEAP32[$rc>>2] = $2379; + break L21; + } + } while(0); + do { + if ((label|0) == 295) { + label = 0; + $2380 = HEAP32[$pC>>2]|0; + $2381 = (($2380) + 22|0); + $2382 = HEAP16[$2381>>1]|0; + $2383 = $2382&65535; + $2384 = HEAP32[$p210>>2]|0; + $2385 = ($2383|0)<=($2384|0); + if ($2385) { + $2386 = HEAP32[$pC>>2]|0; + $2387 = (($2386) + 80|0); + $2388 = HEAP32[$2387>>2]|0; + $2389 = HEAP32[$aOffset>>2]|0; + $2390 = HEAP32[$2389>>2]|0; + $2391 = ($2388>>>0)<($2390>>>0); + L829: do { + if ($2391) { + $2392 = HEAP32[$pC>>2]|0; + $2393 = (($2392) + 84|0); + $2394 = HEAP32[$2393>>2]|0; + $2395 = ($2394|0)==(0|0); + if ($2395) { + dest=$sMem+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $2396 = HEAP32[$pCrsr>>2]|0; + $2397 = HEAP32[$aOffset>>2]|0; + $2398 = HEAP32[$2397>>2]|0; + $2399 = HEAP32[$pC>>2]|0; + $2400 = (($2399) + 28|0); + $2401 = HEAP8[$2400>>0]|0; + $2402 = ($2401&255) >>> 2; + $2403 = $2402 & 1; + $2404 = $2403&255; + $2405 = ($2404|0)!=(0); + $2406 = $2405 ^ 1; + $2407 = $2406&1; + $2408 = (_sqlite3VdbeMemFromBtree($2396,0,$2398,$2407,$sMem)|0); + HEAP32[$rc>>2] = $2408; + $2409 = HEAP32[$rc>>2]|0; + $2410 = ($2409|0)!=(0); + if ($2410) { + break L21; + } + $2411 = (($sMem) + 4|0); + $2412 = HEAP32[$2411>>2]|0; + HEAP32[$zData>>2] = $2412; + } else { + $2413 = HEAP32[$pC>>2]|0; + $2414 = (($2413) + 84|0); + $2415 = HEAP32[$2414>>2]|0; + HEAP32[$zData>>2] = $2415; + } + $2416 = HEAP32[$pC>>2]|0; + $2417 = (($2416) + 22|0); + $2418 = HEAP16[$2417>>1]|0; + $2419 = $2418&65535; + HEAP32[$i11>>2] = $2419; + $2420 = HEAP32[$i11>>2]|0; + $2421 = HEAP32[$aOffset>>2]|0; + $2422 = (($2421) + ($2420<<2)|0); + $2423 = HEAP32[$2422>>2]|0; + HEAP32[$offset>>2] = $2423; + $2424 = HEAP32[$zData>>2]|0; + $2425 = HEAP32[$pC>>2]|0; + $2426 = (($2425) + 80|0); + $2427 = HEAP32[$2426>>2]|0; + $2428 = (($2424) + ($2427)|0); + HEAP32[$zHdr>>2] = $2428; + $2429 = HEAP32[$zData>>2]|0; + $2430 = HEAP32[$aOffset>>2]|0; + $2431 = HEAP32[$2430>>2]|0; + $2432 = (($2429) + ($2431)|0); + HEAP32[$zEndHdr>>2] = $2432; + while(1) { + $2433 = HEAP32[$zHdr>>2]|0; + $2434 = HEAP8[$2433>>0]|0; + $2435 = $2434&255; + $2436 = ($2435|0)<(128); + $2437 = HEAP32[$zHdr>>2]|0; + if ($2436) { + $2438 = HEAP8[$2437>>0]|0; + $2439 = $2438&255; + HEAP32[$t>>2] = $2439; + $2440 = HEAP32[$zHdr>>2]|0; + $2441 = (($2440) + 1|0); + HEAP32[$zHdr>>2] = $2441; + } else { + $2442 = (_sqlite3GetVarint32($2437,$t)|0); + $2443 = $2442&255; + $2444 = HEAP32[$zHdr>>2]|0; + $2445 = (($2444) + ($2443)|0); + HEAP32[$zHdr>>2] = $2445; + } + $2446 = HEAP32[$t>>2]|0; + $2447 = HEAP32[$i11>>2]|0; + $2448 = HEAP32[$aType>>2]|0; + $2449 = (($2448) + ($2447<<2)|0); + HEAP32[$2449>>2] = $2446; + $2450 = HEAP32[$t>>2]|0; + $2451 = (_sqlite3VdbeSerialTypeLen($2450)|0); + HEAP32[$szField>>2] = $2451; + $2452 = HEAP32[$szField>>2]|0; + $2453 = HEAP32[$offset>>2]|0; + $2454 = (($2453) + ($2452))|0; + HEAP32[$offset>>2] = $2454; + $2455 = HEAP32[$offset>>2]|0; + $2456 = HEAP32[$szField>>2]|0; + $2457 = ($2455>>>0)<($2456>>>0); + if ($2457) { + label = 306; + break; + } + $2460 = HEAP32[$i11>>2]|0; + $2461 = (($2460) + 1)|0; + HEAP32[$i11>>2] = $2461; + $2462 = HEAP32[$offset>>2]|0; + $2463 = HEAP32[$i11>>2]|0; + $2464 = HEAP32[$aOffset>>2]|0; + $2465 = (($2464) + ($2463<<2)|0); + HEAP32[$2465>>2] = $2462; + $2466 = HEAP32[$i11>>2]|0; + $2467 = HEAP32[$p210>>2]|0; + $2468 = ($2466|0)<=($2467|0); + if (!($2468)) { + break; + } + $2469 = HEAP32[$zHdr>>2]|0; + $2470 = HEAP32[$zEndHdr>>2]|0; + $2471 = ($2469>>>0)<($2470>>>0); + if (!($2471)) { + break; + } + } + if ((label|0) == 306) { + label = 0; + $2458 = HEAP32[$zEndHdr>>2]|0; + $2459 = (($2458) + 1|0); + HEAP32[$zHdr>>2] = $2459; + } + $2472 = HEAP32[$i11>>2]|0; + $2473 = $2472&65535; + $2474 = HEAP32[$pC>>2]|0; + $2475 = (($2474) + 22|0); + HEAP16[$2475>>1] = $2473; + $2476 = HEAP32[$zHdr>>2]|0; + $2477 = HEAP32[$zData>>2]|0; + $2478 = $2476; + $2479 = $2477; + $2480 = (($2478) - ($2479))|0; + $2481 = HEAP32[$pC>>2]|0; + $2482 = (($2481) + 80|0); + HEAP32[$2482>>2] = $2480; + $2483 = HEAP32[$pC>>2]|0; + $2484 = (($2483) + 84|0); + $2485 = HEAP32[$2484>>2]|0; + $2486 = ($2485|0)==(0|0); + if ($2486) { + _sqlite3VdbeMemRelease($sMem); + $2487 = (($sMem) + 28|0); + HEAP16[$2487>>1] = 1; + } + $2488 = HEAP32[$zHdr>>2]|0; + $2489 = HEAP32[$zEndHdr>>2]|0; + $2490 = ($2488>>>0)>($2489>>>0); + do { + if (!($2490)) { + $2491 = HEAP32[$offset>>2]|0; + $2492 = HEAP32[$pC>>2]|0; + $2493 = (($2492) + 72|0); + $2494 = HEAP32[$2493>>2]|0; + $2495 = ($2491>>>0)>($2494>>>0); + if ($2495) { + break; + } + $2496 = HEAP32[$zHdr>>2]|0; + $2497 = HEAP32[$zEndHdr>>2]|0; + $2498 = ($2496|0)==($2497|0); + if (!($2498)) { + break L829; + } + $2499 = HEAP32[$offset>>2]|0; + $2500 = HEAP32[$pC>>2]|0; + $2501 = (($2500) + 72|0); + $2502 = HEAP32[$2501>>2]|0; + $2503 = ($2499|0)!=($2502|0); + if (!($2503)) { + break L829; + } + } + } while(0); + $2504 = (_sqlite3CorruptError(69960)|0); + HEAP32[$rc>>2] = $2504; + break L21; + } + } while(0); + $2505 = HEAP32[$pC>>2]|0; + $2506 = (($2505) + 22|0); + $2507 = HEAP16[$2506>>1]|0; + $2508 = $2507&65535; + $2509 = HEAP32[$p210>>2]|0; + $2510 = ($2508|0)<=($2509|0); + if ($2510) { + $2511 = HEAP32[$pOp>>2]|0; + $2512 = (($2511) + 1|0); + $2513 = HEAP8[$2512>>0]|0; + $2514 = $2513 << 24 >> 24; + $2515 = ($2514|0)==(-8); + $2516 = HEAP32[$pDest>>2]|0; + if ($2515) { + $2517 = HEAP32[$pOp>>2]|0; + $2518 = (($2517) + 16|0); + $2519 = HEAP32[$2518>>2]|0; + _sqlite3VdbeMemShallowCopy($2516,$2519,2048); + break; + } else { + $2520 = (($2516) + 28|0); + $2521 = HEAP16[$2520>>1]|0; + $2522 = $2521&65535; + $2523 = $2522 & -16896; + $2524 = $2523 | 1; + $2525 = $2524&65535; + $2526 = HEAP32[$pDest>>2]|0; + $2527 = (($2526) + 28|0); + HEAP16[$2527>>1] = $2525; + break; + } + } + } + $2528 = HEAP32[$pC>>2]|0; + $2529 = (($2528) + 76|0); + $2530 = HEAP32[$2529>>2]|0; + $2531 = HEAP32[$p210>>2]|0; + $2532 = (($2531) + 1)|0; + $2533 = HEAP32[$aOffset>>2]|0; + $2534 = (($2533) + ($2532<<2)|0); + $2535 = HEAP32[$2534>>2]|0; + $2536 = ($2530>>>0)>=($2535>>>0); + if ($2536) { + $2537 = HEAP32[$pDest>>2]|0; + $2538 = (($2537) + 28|0); + $2539 = HEAP16[$2538>>1]|0; + $2540 = $2539&65535; + $2541 = $2540 & 9312; + $2542 = ($2541|0)!=(0); + if ($2542) { + $2543 = HEAP32[$pDest>>2]|0; + _sqlite3VdbeMemReleaseExternal($2543); + } + $2544 = HEAP32[$pC>>2]|0; + $2545 = (($2544) + 84|0); + $2546 = HEAP32[$2545>>2]|0; + $2547 = HEAP32[$p210>>2]|0; + $2548 = HEAP32[$aOffset>>2]|0; + $2549 = (($2548) + ($2547<<2)|0); + $2550 = HEAP32[$2549>>2]|0; + $2551 = (($2546) + ($2550)|0); + $2552 = HEAP32[$p210>>2]|0; + $2553 = HEAP32[$aType>>2]|0; + $2554 = (($2553) + ($2552<<2)|0); + $2555 = HEAP32[$2554>>2]|0; + $2556 = HEAP32[$pDest>>2]|0; + (_sqlite3VdbeSerialGet($2551,$2555,$2556)|0); + } else { + $2557 = HEAP32[$p210>>2]|0; + $2558 = HEAP32[$aType>>2]|0; + $2559 = (($2558) + ($2557<<2)|0); + $2560 = HEAP32[$2559>>2]|0; + HEAP32[$t>>2] = $2560; + $2561 = HEAP32[$pOp>>2]|0; + $2562 = (($2561) + 3|0); + $2563 = HEAP8[$2562>>0]|0; + $2564 = $2563&255; + $2565 = $2564 & 192; + $2566 = ($2565|0)!=(0); + do { + if ($2566) { + $2567 = HEAP32[$t>>2]|0; + $2568 = ($2567>>>0)>=(12); + if ($2568) { + $2569 = HEAP32[$t>>2]|0; + $2570 = $2569 & 1; + $2571 = ($2570|0)==(0); + if ($2571) { + label = 329; + break; + } + } + $2572 = HEAP32[$pOp>>2]|0; + $2573 = (($2572) + 3|0); + $2574 = HEAP8[$2573>>0]|0; + $2575 = $2574&255; + $2576 = $2575 & 128; + $2577 = ($2576|0)!=(0); + if ($2577) { + label = 329; + } else { + label = 328; + } + } else { + label = 328; + } + } while(0); + if ((label|0) == 328) { + label = 0; + $2578 = HEAP32[$t>>2]|0; + $2579 = (_sqlite3VdbeSerialTypeLen($2578)|0); + HEAP32[$len>>2] = $2579; + $2580 = ($2579|0)==(0); + if ($2580) { + label = 329; + } else { + dest=$sMem+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $2585 = HEAP32[$pDest>>2]|0; + _sqlite3VdbeMemMove($sMem,$2585); + $2586 = HEAP32[$pCrsr>>2]|0; + $2587 = HEAP32[$p210>>2]|0; + $2588 = HEAP32[$aOffset>>2]|0; + $2589 = (($2588) + ($2587<<2)|0); + $2590 = HEAP32[$2589>>2]|0; + $2591 = HEAP32[$len>>2]|0; + $2592 = HEAP32[$pC>>2]|0; + $2593 = (($2592) + 28|0); + $2594 = HEAP8[$2593>>0]|0; + $2595 = ($2594&255) >>> 2; + $2596 = $2595 & 1; + $2597 = $2596&255; + $2598 = ($2597|0)!=(0); + $2599 = $2598 ^ 1; + $2600 = $2599&1; + $2601 = (_sqlite3VdbeMemFromBtree($2586,$2590,$2591,$2600,$sMem)|0); + HEAP32[$rc>>2] = $2601; + $2602 = HEAP32[$rc>>2]|0; + $2603 = ($2602|0)!=(0); + if ($2603) { + break L21; + } + $2604 = (($sMem) + 4|0); + $2605 = HEAP32[$2604>>2]|0; + HEAP32[$zData>>2] = $2605; + } + } + if ((label|0) == 329) { + label = 0; + $2581 = HEAP32[$t>>2]|0; + $2582 = ($2581>>>0)<=(13); + if ($2582) { + $2583 = $payloadSize64; + } else { + $2583 = 0; + } + HEAP32[$zData>>2] = $2583; + $2584 = (($sMem) + 36|0); + HEAP32[$2584>>2] = 0; + } + $2606 = HEAP32[$zData>>2]|0; + $2607 = HEAP32[$t>>2]|0; + $2608 = HEAP32[$pDest>>2]|0; + (_sqlite3VdbeSerialGet($2606,$2607,$2608)|0); + $2609 = (($sMem) + 36|0); + $2610 = HEAP32[$2609>>2]|0; + $2611 = ($2610|0)!=(0|0); + if ($2611) { + $2612 = HEAP32[$pDest>>2]|0; + $2613 = (($2612) + 28|0); + $2614 = HEAP16[$2613>>1]|0; + $2615 = $2614&65535; + $2616 = $2615 & -6145; + $2617 = $2616&65535; + HEAP16[$2613>>1] = $2617; + $2618 = HEAP32[$pDest>>2]|0; + $2619 = (($2618) + 28|0); + $2620 = HEAP16[$2619>>1]|0; + $2621 = $2620&65535; + $2622 = $2621 | 512; + $2623 = $2622&65535; + HEAP16[$2619>>1] = $2623; + $2624 = (($sMem) + 4|0); + $2625 = HEAP32[$2624>>2]|0; + $2626 = HEAP32[$pDest>>2]|0; + $2627 = (($2626) + 4|0); + HEAP32[$2627>>2] = $2625; + $2628 = (($sMem) + 36|0); + $2629 = HEAP32[$2628>>2]|0; + $2630 = HEAP32[$pDest>>2]|0; + $2631 = (($2630) + 36|0); + HEAP32[$2631>>2] = $2629; + } + } + $2632 = HEAP8[$encoding>>0]|0; + $2633 = HEAP32[$pDest>>2]|0; + $2634 = (($2633) + 30|0); + HEAP8[$2634>>0] = $2632; + } + } while(0); + $2635 = HEAP32[$pDest>>2]|0; + $2636 = (($2635) + 28|0); + $2637 = HEAP16[$2636>>1]|0; + $2638 = $2637&65535; + $2639 = $2638 & 4096; + $2640 = ($2639|0)!=(0); + if ($2640) { + $2641 = HEAP32[$pDest>>2]|0; + $2642 = (_sqlite3VdbeMemMakeWriteable($2641)|0); + $2643 = ($2642|0)!=(0); + if ($2643) { + label = 900; + break L1; + } + } + break; + } + case 19: { + $2087 = HEAP32[$pOp>>2]|0; + $2088 = (($2087) + 4|0); + $2089 = HEAP32[$2088>>2]|0; + $2090 = HEAP32[$aMem>>2]|0; + $2091 = (($2090) + (($2089*40)|0)|0); + HEAP32[$pIn1>>2] = $2091; + $2092 = HEAP32[$pOp>>2]|0; + $2093 = (($2092) + 8|0); + $2094 = HEAP32[$2093>>2]|0; + $2095 = HEAP32[$aMem>>2]|0; + $2096 = (($2095) + (($2094*40)|0)|0); + HEAP32[$pOut>>2] = $2096; + $2097 = HEAP32[$pIn1>>2]|0; + $2098 = (($2097) + 28|0); + $2099 = HEAP16[$2098>>1]|0; + $2100 = $2099&65535; + $2101 = $2100 & 1; + $2102 = ($2101|0)!=(0); + $2103 = HEAP32[$pOut>>2]|0; + if ($2102) { + _sqlite3VdbeMemSetNull($2103); + break L21; + } else { + $2104 = HEAP32[$pIn1>>2]|0; + $2105 = (_sqlite3VdbeIntValue($2104)|0); + $2106 = tempRet0; + $2107 = ($2105|0)!=(0); + $2108 = ($2106|0)!=(0); + $2109 = $2107 | $2108; + $2110 = $2109 ^ 1; + $2111 = $2110&1; + $2112 = ($2111|0)<(0); + $2113 = $2112 << 31 >> 31; + _sqlite3VdbeMemSetInt64($2103,$2111,$2113); + break L21; + } + break; + } + case 2: { + $2918 = HEAP32[$pOp>>2]|0; + $2919 = (($2918) + 4|0); + $2920 = HEAP32[$2919>>2]|0; + HEAP32[$p117>>2] = $2920; + $2921 = HEAP32[$pOp>>2]|0; + $2922 = (($2921) + 16|0); + $2923 = HEAP32[$2922>>2]|0; + HEAP32[$zName>>2] = $2923; + $2924 = HEAP32[$p117>>2]|0; + $2925 = ($2924|0)==(0); + if ($2925) { + $2926 = HEAP32[$db>>2]|0; + $2927 = (($2926) + 148|0); + $2928 = HEAP32[$2927>>2]|0; + $2929 = ($2928|0)>(0); + if ($2929) { + $2930 = HEAP32[$0>>2]|0; + $2931 = (($2930) + 44|0); + $2932 = HEAP32[$db>>2]|0; + _sqlite3SetString($2931,$2932,37920,$vararg_buffer62); + HEAP32[$rc>>2] = 5; + break L21; + } + $2933 = HEAP32[$zName>>2]|0; + $2934 = (_sqlite3Strlen30($2933)|0); + HEAP32[$nName>>2] = $2934; + $2935 = HEAP32[$db>>2]|0; + $2936 = HEAP32[$db>>2]|0; + $2937 = (($2936) + 492|0); + $2938 = HEAP32[$2937>>2]|0; + $2939 = HEAP32[$db>>2]|0; + $2940 = (($2939) + 488|0); + $2941 = HEAP32[$2940>>2]|0; + $2942 = (($2938) + ($2941))|0; + $2943 = (_sqlite3VtabSavepoint($2935,0,$2942)|0); + HEAP32[$rc>>2] = $2943; + $2944 = HEAP32[$rc>>2]|0; + $2945 = ($2944|0)!=(0); + if ($2945) { + break L11; + } + $2946 = HEAP32[$db>>2]|0; + $2947 = HEAP32[$nName>>2]|0; + $2948 = (32 + ($2947))|0; + $2949 = (($2948) + 1)|0; + $2950 = (_sqlite3DbMallocRaw($2946,$2949)|0); + HEAP32[$pNew>>2] = $2950; + $2951 = HEAP32[$pNew>>2]|0; + $2952 = ($2951|0)!=(0|0); + if (!($2952)) { + break L21; + } + $2953 = HEAP32[$pNew>>2]|0; + $2954 = (($2953) + 32|0); + $2955 = HEAP32[$pNew>>2]|0; + HEAP32[$2955>>2] = $2954; + $2956 = HEAP32[$pNew>>2]|0; + $2957 = HEAP32[$2956>>2]|0; + $2958 = HEAP32[$zName>>2]|0; + $2959 = HEAP32[$nName>>2]|0; + $2960 = (($2959) + 1)|0; + _memcpy(($2957|0),($2958|0),($2960|0))|0; + $2961 = HEAP32[$db>>2]|0; + $2962 = (($2961) + 62|0); + $2963 = HEAP8[$2962>>0]|0; + $2964 = ($2963<<24>>24)!=(0); + $2965 = HEAP32[$db>>2]|0; + if ($2964) { + $2966 = (($2965) + 62|0); + HEAP8[$2966>>0] = 0; + $2967 = HEAP32[$db>>2]|0; + $2968 = (($2967) + 69|0); + HEAP8[$2968>>0] = 1; + } else { + $2969 = (($2965) + 488|0); + $2970 = HEAP32[$2969>>2]|0; + $2971 = (($2970) + 1)|0; + HEAP32[$2969>>2] = $2971; + } + $2972 = HEAP32[$db>>2]|0; + $2973 = (($2972) + 480|0); + $2974 = HEAP32[$2973>>2]|0; + $2975 = HEAP32[$pNew>>2]|0; + $2976 = (($2975) + 24|0); + HEAP32[$2976>>2] = $2974; + $2977 = HEAP32[$pNew>>2]|0; + $2978 = HEAP32[$db>>2]|0; + $2979 = (($2978) + 480|0); + HEAP32[$2979>>2] = $2977; + $2980 = HEAP32[$db>>2]|0; + $2981 = (($2980) + 496|0); + $2982 = $2981; + $2983 = $2982; + $2984 = HEAP32[$2983>>2]|0; + $2985 = (($2982) + 4)|0; + $2986 = $2985; + $2987 = HEAP32[$2986>>2]|0; + $2988 = HEAP32[$pNew>>2]|0; + $2989 = (($2988) + 8|0); + $2990 = $2989; + $2991 = $2990; + HEAP32[$2991>>2] = $2984; + $2992 = (($2990) + 4)|0; + $2993 = $2992; + HEAP32[$2993>>2] = $2987; + $2994 = HEAP32[$db>>2]|0; + $2995 = (($2994) + 504|0); + $2996 = $2995; + $2997 = $2996; + $2998 = HEAP32[$2997>>2]|0; + $2999 = (($2996) + 4)|0; + $3000 = $2999; + $3001 = HEAP32[$3000>>2]|0; + $3002 = HEAP32[$pNew>>2]|0; + $3003 = (($3002) + 16|0); + $3004 = $3003; + $3005 = $3004; + HEAP32[$3005>>2] = $2998; + $3006 = (($3004) + 4)|0; + $3007 = $3006; + HEAP32[$3007>>2] = $3001; + break L21; + } + HEAP32[$iSavepoint>>2] = 0; + $3008 = HEAP32[$db>>2]|0; + $3009 = (($3008) + 480|0); + $3010 = HEAP32[$3009>>2]|0; + HEAP32[$pSavepoint>>2] = $3010; + while(1) { + $3011 = HEAP32[$pSavepoint>>2]|0; + $3012 = ($3011|0)!=(0|0); + if (!($3012)) { + break; + } + $3013 = HEAP32[$pSavepoint>>2]|0; + $3014 = HEAP32[$3013>>2]|0; + $3015 = HEAP32[$zName>>2]|0; + $3016 = (_sqlite3_stricmp($3014,$3015)|0); + $3017 = ($3016|0)!=(0); + if (!($3017)) { + break; + } + $3018 = HEAP32[$iSavepoint>>2]|0; + $3019 = (($3018) + 1)|0; + HEAP32[$iSavepoint>>2] = $3019; + $3020 = HEAP32[$pSavepoint>>2]|0; + $3021 = (($3020) + 24|0); + $3022 = HEAP32[$3021>>2]|0; + HEAP32[$pSavepoint>>2] = $3022; + } + $3023 = HEAP32[$pSavepoint>>2]|0; + $3024 = ($3023|0)!=(0|0); + if (!($3024)) { + $3025 = HEAP32[$0>>2]|0; + $3026 = (($3025) + 44|0); + $3027 = HEAP32[$db>>2]|0; + $3028 = HEAP32[$zName>>2]|0; + HEAP32[$vararg_buffer62>>2] = $3028; + _sqlite3SetString($3026,$3027,37976,$vararg_buffer62); + HEAP32[$rc>>2] = 1; + break L21; + } + $3029 = HEAP32[$db>>2]|0; + $3030 = (($3029) + 148|0); + $3031 = HEAP32[$3030>>2]|0; + $3032 = ($3031|0)>(0); + if ($3032) { + $3033 = HEAP32[$p117>>2]|0; + $3034 = ($3033|0)==(1); + if ($3034) { + $3035 = HEAP32[$0>>2]|0; + $3036 = (($3035) + 44|0); + $3037 = HEAP32[$db>>2]|0; + _sqlite3SetString($3036,$3037,38000,$vararg_buffer62); + HEAP32[$rc>>2] = 5; + break L21; + } + } + $3038 = HEAP32[$pSavepoint>>2]|0; + $3039 = (($3038) + 24|0); + $3040 = HEAP32[$3039>>2]|0; + $3041 = ($3040|0)==(0|0); + if ($3041) { + $3042 = HEAP32[$db>>2]|0; + $3043 = (($3042) + 69|0); + $3044 = HEAP8[$3043>>0]|0; + $3045 = $3044&255; + $3046 = ($3045|0)!=(0); + $3048 = $3046; + } else { + $3048 = 0; + } + $3047 = $3048&1; + HEAP32[$isTransaction>>2] = $3047; + $3049 = HEAP32[$isTransaction>>2]|0; + $3050 = ($3049|0)!=(0); + if ($3050) { + $3051 = HEAP32[$p117>>2]|0; + $3052 = ($3051|0)==(1); + if ($3052) { + $3053 = HEAP32[$0>>2]|0; + $3054 = (_sqlite3VdbeCheckFk($3053,1)|0); + HEAP32[$rc>>2] = $3054; + $3055 = ($3054|0)!=(0); + if ($3055) { + label = 898; + break L11; + } + $3056 = HEAP32[$db>>2]|0; + $3057 = (($3056) + 62|0); + HEAP8[$3057>>0] = 1; + $3058 = HEAP32[$0>>2]|0; + $3059 = (_sqlite3VdbeHalt($3058)|0); + $3060 = ($3059|0)==(5); + if ($3060) { + label = 395; + break L11; + } + $3068 = HEAP32[$db>>2]|0; + $3069 = (($3068) + 69|0); + HEAP8[$3069>>0] = 0; + $3070 = HEAP32[$0>>2]|0; + $3071 = (($3070) + 80|0); + $3072 = HEAP32[$3071>>2]|0; + HEAP32[$rc>>2] = $3072; + } else { + label = 397; + } + } else { + label = 397; + } + if ((label|0) == 397) { + label = 0; + $3073 = HEAP32[$db>>2]|0; + $3074 = (($3073) + 488|0); + $3075 = HEAP32[$3074>>2]|0; + $3076 = HEAP32[$iSavepoint>>2]|0; + $3077 = (($3075) - ($3076))|0; + $3078 = (($3077) - 1)|0; + HEAP32[$iSavepoint>>2] = $3078; + $3079 = HEAP32[$p117>>2]|0; + $3080 = ($3079|0)==(2); + L925: do { + if ($3080) { + HEAP32[$ii>>2] = 0; + while(1) { + $3081 = HEAP32[$ii>>2]|0; + $3082 = HEAP32[$db>>2]|0; + $3083 = (($3082) + 20|0); + $3084 = HEAP32[$3083>>2]|0; + $3085 = ($3081|0)<($3084|0); + if (!($3085)) { + break L925; + } + $3086 = HEAP32[$ii>>2]|0; + $3087 = HEAP32[$db>>2]|0; + $3088 = (($3087) + 16|0); + $3089 = HEAP32[$3088>>2]|0; + $3090 = (($3089) + ($3086<<4)|0); + $3091 = (($3090) + 4|0); + $3092 = HEAP32[$3091>>2]|0; + _sqlite3BtreeTripAllCursors($3092,4); + $3093 = HEAP32[$ii>>2]|0; + $3094 = (($3093) + 1)|0; + HEAP32[$ii>>2] = $3094; + } + } + } while(0); + HEAP32[$ii>>2] = 0; + while(1) { + $3095 = HEAP32[$ii>>2]|0; + $3096 = HEAP32[$db>>2]|0; + $3097 = (($3096) + 20|0); + $3098 = HEAP32[$3097>>2]|0; + $3099 = ($3095|0)<($3098|0); + if (!($3099)) { + break; + } + $3100 = HEAP32[$ii>>2]|0; + $3101 = HEAP32[$db>>2]|0; + $3102 = (($3101) + 16|0); + $3103 = HEAP32[$3102>>2]|0; + $3104 = (($3103) + ($3100<<4)|0); + $3105 = (($3104) + 4|0); + $3106 = HEAP32[$3105>>2]|0; + $3107 = HEAP32[$p117>>2]|0; + $3108 = HEAP32[$iSavepoint>>2]|0; + $3109 = (_sqlite3BtreeSavepoint($3106,$3107,$3108)|0); + HEAP32[$rc>>2] = $3109; + $3110 = HEAP32[$rc>>2]|0; + $3111 = ($3110|0)!=(0); + if ($3111) { + break L11; + } + $3112 = HEAP32[$ii>>2]|0; + $3113 = (($3112) + 1)|0; + HEAP32[$ii>>2] = $3113; + } + $3114 = HEAP32[$p117>>2]|0; + $3115 = ($3114|0)==(2); + if ($3115) { + $3116 = HEAP32[$db>>2]|0; + $3117 = (($3116) + 24|0); + $3118 = HEAP32[$3117>>2]|0; + $3119 = $3118 & 2; + $3120 = ($3119|0)!=(0); + if ($3120) { + $3121 = HEAP32[$db>>2]|0; + _sqlite3ExpirePreparedStatements($3121); + $3122 = HEAP32[$db>>2]|0; + _sqlite3ResetAllSchemasOfConnection($3122); + $3123 = HEAP32[$db>>2]|0; + $3124 = (($3123) + 24|0); + $3125 = HEAP32[$3124>>2]|0; + $3126 = $3125 | 2; + $3127 = HEAP32[$db>>2]|0; + $3128 = (($3127) + 24|0); + HEAP32[$3128>>2] = $3126; + } + } + } + while(1) { + $3129 = HEAP32[$db>>2]|0; + $3130 = (($3129) + 480|0); + $3131 = HEAP32[$3130>>2]|0; + $3132 = HEAP32[$pSavepoint>>2]|0; + $3133 = ($3131|0)!=($3132|0); + if (!($3133)) { + break; + } + $3134 = HEAP32[$db>>2]|0; + $3135 = (($3134) + 480|0); + $3136 = HEAP32[$3135>>2]|0; + HEAP32[$pTmp>>2] = $3136; + $3137 = HEAP32[$pTmp>>2]|0; + $3138 = (($3137) + 24|0); + $3139 = HEAP32[$3138>>2]|0; + $3140 = HEAP32[$db>>2]|0; + $3141 = (($3140) + 480|0); + HEAP32[$3141>>2] = $3139; + $3142 = HEAP32[$db>>2]|0; + $3143 = HEAP32[$pTmp>>2]|0; + _sqlite3DbFree($3142,$3143); + $3144 = HEAP32[$db>>2]|0; + $3145 = (($3144) + 488|0); + $3146 = HEAP32[$3145>>2]|0; + $3147 = (($3146) + -1)|0; + HEAP32[$3145>>2] = $3147; + } + $3148 = HEAP32[$p117>>2]|0; + $3149 = ($3148|0)==(1); + $3150 = HEAP32[$pSavepoint>>2]|0; + if ($3149) { + $3151 = (($3150) + 24|0); + $3152 = HEAP32[$3151>>2]|0; + $3153 = HEAP32[$db>>2]|0; + $3154 = (($3153) + 480|0); + HEAP32[$3154>>2] = $3152; + $3155 = HEAP32[$db>>2]|0; + $3156 = HEAP32[$pSavepoint>>2]|0; + _sqlite3DbFree($3155,$3156); + $3157 = HEAP32[$isTransaction>>2]|0; + $3158 = ($3157|0)!=(0); + if (!($3158)) { + $3159 = HEAP32[$db>>2]|0; + $3160 = (($3159) + 488|0); + $3161 = HEAP32[$3160>>2]|0; + $3162 = (($3161) + -1)|0; + HEAP32[$3160>>2] = $3162; + } + } else { + $3163 = (($3150) + 8|0); + $3164 = $3163; + $3165 = $3164; + $3166 = HEAP32[$3165>>2]|0; + $3167 = (($3164) + 4)|0; + $3168 = $3167; + $3169 = HEAP32[$3168>>2]|0; + $3170 = HEAP32[$db>>2]|0; + $3171 = (($3170) + 496|0); + $3172 = $3171; + $3173 = $3172; + HEAP32[$3173>>2] = $3166; + $3174 = (($3172) + 4)|0; + $3175 = $3174; + HEAP32[$3175>>2] = $3169; + $3176 = HEAP32[$pSavepoint>>2]|0; + $3177 = (($3176) + 16|0); + $3178 = $3177; + $3179 = $3178; + $3180 = HEAP32[$3179>>2]|0; + $3181 = (($3178) + 4)|0; + $3182 = $3181; + $3183 = HEAP32[$3182>>2]|0; + $3184 = HEAP32[$db>>2]|0; + $3185 = (($3184) + 504|0); + $3186 = $3185; + $3187 = $3186; + HEAP32[$3187>>2] = $3180; + $3188 = (($3186) + 4)|0; + $3189 = $3188; + HEAP32[$3189>>2] = $3183; + } + $3190 = HEAP32[$isTransaction>>2]|0; + $3191 = ($3190|0)!=(0); + if (!($3191)) { + $3192 = HEAP32[$db>>2]|0; + $3193 = HEAP32[$p117>>2]|0; + $3194 = HEAP32[$iSavepoint>>2]|0; + $3195 = (_sqlite3VtabSavepoint($3192,$3193,$3194)|0); + HEAP32[$rc>>2] = $3195; + $3196 = HEAP32[$rc>>2]|0; + $3197 = ($3196|0)!=(0); + if ($3197) { + break L11; + } + } + break; + } + case 47: { + $2644 = HEAP32[$pOp>>2]|0; + $2645 = (($2644) + 16|0); + $2646 = HEAP32[$2645>>2]|0; + HEAP32[$zAffinity>>2] = $2646; + $2647 = HEAP32[$pOp>>2]|0; + $2648 = (($2647) + 4|0); + $2649 = HEAP32[$2648>>2]|0; + $2650 = HEAP32[$aMem>>2]|0; + $2651 = (($2650) + (($2649*40)|0)|0); + HEAP32[$pIn1>>2] = $2651; + while(1) { + $2652 = HEAP32[$zAffinity>>2]|0; + $2653 = (($2652) + 1|0); + HEAP32[$zAffinity>>2] = $2653; + $2654 = HEAP8[$2652>>0]|0; + HEAP8[$cAff>>0] = $2654; + $2655 = $2654 << 24 >> 24; + $2656 = ($2655|0)!=(0); + if (!($2656)) { + break L21; + } + $2657 = HEAP32[$pIn1>>2]|0; + $2658 = HEAP8[$cAff>>0]|0; + $2659 = HEAP8[$encoding>>0]|0; + _applyAffinity($2657,$2658,$2659); + $2660 = HEAP32[$pIn1>>2]|0; + $2661 = (($2660) + 40|0); + HEAP32[$pIn1>>2] = $2661; + } + break; + } + case 48: { + $2662 = $nData; + $2663 = $2662; + HEAP32[$2663>>2] = 0; + $2664 = (($2662) + 4)|0; + $2665 = $2664; + HEAP32[$2665>>2] = 0; + HEAP32[$nHdr>>2] = 0; + HEAP32[$nZero>>2] = 0; + $2666 = HEAP32[$pOp>>2]|0; + $2667 = (($2666) + 4|0); + $2668 = HEAP32[$2667>>2]|0; + HEAP32[$nField>>2] = $2668; + $2669 = HEAP32[$pOp>>2]|0; + $2670 = (($2669) + 16|0); + $2671 = HEAP32[$2670>>2]|0; + HEAP32[$zAffinity13>>2] = $2671; + $2672 = HEAP32[$nField>>2]|0; + $2673 = HEAP32[$aMem>>2]|0; + $2674 = (($2673) + (($2672*40)|0)|0); + HEAP32[$pData0>>2] = $2674; + $2675 = HEAP32[$pOp>>2]|0; + $2676 = (($2675) + 8|0); + $2677 = HEAP32[$2676>>2]|0; + HEAP32[$nField>>2] = $2677; + $2678 = HEAP32[$nField>>2]|0; + $2679 = (($2678) - 1)|0; + $2680 = HEAP32[$pData0>>2]|0; + $2681 = (($2680) + (($2679*40)|0)|0); + HEAP32[$pLast>>2] = $2681; + $2682 = HEAP32[$0>>2]|0; + $2683 = (($2682) + 87|0); + $2684 = HEAP8[$2683>>0]|0; + $2685 = $2684&255; + HEAP32[$file_format>>2] = $2685; + $2686 = HEAP32[$pOp>>2]|0; + $2687 = (($2686) + 12|0); + $2688 = HEAP32[$2687>>2]|0; + $2689 = HEAP32[$aMem>>2]|0; + $2690 = (($2689) + (($2688*40)|0)|0); + HEAP32[$pOut>>2] = $2690; + $2691 = HEAP32[$zAffinity13>>2]|0; + $2692 = ($2691|0)!=(0|0); + if ($2692) { + $2693 = HEAP32[$pData0>>2]|0; + HEAP32[$pRec>>2] = $2693; + while(1) { + $2694 = HEAP32[$pRec>>2]|0; + $2695 = (($2694) + 40|0); + HEAP32[$pRec>>2] = $2695; + $2696 = HEAP32[$zAffinity13>>2]|0; + $2697 = (($2696) + 1|0); + HEAP32[$zAffinity13>>2] = $2697; + $2698 = HEAP8[$2696>>0]|0; + $2699 = HEAP8[$encoding>>0]|0; + _applyAffinity($2694,$2698,$2699); + $2700 = HEAP32[$zAffinity13>>2]|0; + $2701 = HEAP8[$2700>>0]|0; + $2702 = ($2701<<24>>24)!=(0); + if (!($2702)) { + break; + } + } + } + $2703 = HEAP32[$pLast>>2]|0; + HEAP32[$pRec>>2] = $2703; + while(1) { + $2704 = HEAP32[$pRec>>2]|0; + $2705 = HEAP32[$file_format>>2]|0; + $2706 = (_sqlite3VdbeSerialType($2704,$2705)|0); + HEAP32[$serial_type>>2] = $2706; + $2707 = HEAP32[$serial_type>>2]|0; + $2708 = (_sqlite3VdbeSerialTypeLen($2707)|0); + HEAP32[$len15>>2] = $2708; + $2709 = HEAP32[$pRec>>2]|0; + $2710 = (($2709) + 28|0); + $2711 = HEAP16[$2710>>1]|0; + $2712 = $2711&65535; + $2713 = $2712 & 16384; + $2714 = ($2713|0)!=(0); + do { + if ($2714) { + $2715 = $nData; + $2716 = $2715; + $2717 = HEAP32[$2716>>2]|0; + $2718 = (($2715) + 4)|0; + $2719 = $2718; + $2720 = HEAP32[$2719>>2]|0; + $2721 = ($2717|0)!=(0); + $2722 = ($2720|0)!=(0); + $2723 = $2721 | $2722; + $2724 = HEAP32[$pRec>>2]|0; + if ($2723) { + (_sqlite3VdbeMemExpandBlob($2724)|0); + break; + } else { + $2725 = (($2724) + 16|0); + $2726 = HEAP32[$2725>>2]|0; + $2727 = HEAP32[$nZero>>2]|0; + $2728 = (($2727) + ($2726))|0; + HEAP32[$nZero>>2] = $2728; + $2729 = HEAP32[$pRec>>2]|0; + $2730 = (($2729) + 16|0); + $2731 = HEAP32[$2730>>2]|0; + $2732 = HEAP32[$len15>>2]|0; + $2733 = (($2732) - ($2731))|0; + HEAP32[$len15>>2] = $2733; + break; + } + } + } while(0); + $2734 = HEAP32[$len15>>2]|0; + $2735 = ($2734|0)<(0); + $2736 = $2735 << 31 >> 31; + $2737 = $nData; + $2738 = $2737; + $2739 = HEAP32[$2738>>2]|0; + $2740 = (($2737) + 4)|0; + $2741 = $2740; + $2742 = HEAP32[$2741>>2]|0; + $2743 = (_i64Add(($2739|0),($2742|0),($2734|0),($2736|0))|0); + $2744 = tempRet0; + $2745 = $nData; + $2746 = $2745; + HEAP32[$2746>>2] = $2743; + $2747 = (($2745) + 4)|0; + $2748 = $2747; + HEAP32[$2748>>2] = $2744; + $2749 = HEAP32[$serial_type>>2]|0; + $2750 = ($2749>>>0)<=(127); + if ($2750) { + $2755 = 1; + } else { + $2751 = HEAP32[$serial_type>>2]|0; + $2752 = (_sqlite3VarintLen($2751,0)|0); + $2755 = $2752; + } + $2753 = HEAP32[$nHdr>>2]|0; + $2754 = (($2753) + ($2755))|0; + HEAP32[$nHdr>>2] = $2754; + $2756 = HEAP32[$pRec>>2]|0; + $2757 = (($2756) + -40|0); + HEAP32[$pRec>>2] = $2757; + $2758 = HEAP32[$pData0>>2]|0; + $2759 = ($2757>>>0)>=($2758>>>0); + if (!($2759)) { + break; + } + } + $2760 = HEAP32[$nHdr>>2]|0; + $2761 = ($2760|0)<=(126); + $2762 = HEAP32[$nHdr>>2]|0; + if ($2761) { + $2763 = (($2762) + 1)|0; + HEAP32[$nHdr>>2] = $2763; + } else { + $2764 = ($2762|0)<(0); + $2765 = $2764 << 31 >> 31; + $2766 = (_sqlite3VarintLen($2762,$2765)|0); + HEAP32[$nVarint>>2] = $2766; + $2767 = HEAP32[$nVarint>>2]|0; + $2768 = HEAP32[$nHdr>>2]|0; + $2769 = (($2768) + ($2767))|0; + HEAP32[$nHdr>>2] = $2769; + $2770 = HEAP32[$nVarint>>2]|0; + $2771 = HEAP32[$nHdr>>2]|0; + $2772 = ($2771|0)<(0); + $2773 = $2772 << 31 >> 31; + $2774 = (_sqlite3VarintLen($2771,$2773)|0); + $2775 = ($2770|0)<($2774|0); + if ($2775) { + $2776 = HEAP32[$nHdr>>2]|0; + $2777 = (($2776) + 1)|0; + HEAP32[$nHdr>>2] = $2777; + } + } + $2778 = HEAP32[$nHdr>>2]|0; + $2779 = ($2778|0)<(0); + $2780 = $2779 << 31 >> 31; + $2781 = $nData; + $2782 = $2781; + $2783 = HEAP32[$2782>>2]|0; + $2784 = (($2781) + 4)|0; + $2785 = $2784; + $2786 = HEAP32[$2785>>2]|0; + $2787 = (_i64Add(($2778|0),($2780|0),($2783|0),($2786|0))|0); + $2788 = tempRet0; + $2789 = $nByte12; + $2790 = $2789; + HEAP32[$2790>>2] = $2787; + $2791 = (($2789) + 4)|0; + $2792 = $2791; + HEAP32[$2792>>2] = $2788; + $2793 = $nByte12; + $2794 = $2793; + $2795 = HEAP32[$2794>>2]|0; + $2796 = (($2793) + 4)|0; + $2797 = $2796; + $2798 = HEAP32[$2797>>2]|0; + $2799 = HEAP32[$db>>2]|0; + $2800 = (($2799) + 88|0); + $2801 = HEAP32[$2800>>2]|0; + $2802 = ($2801|0)<(0); + $2803 = $2802 << 31 >> 31; + $2804 = ($2798|0)>($2803|0); + $2805 = ($2798|0)==($2803|0); + $2806 = ($2795>>>0)>($2801>>>0); + $2807 = $2805 & $2806; + $2808 = $2804 | $2807; + if ($2808) { + label = 899; + break L11; + } + $2809 = HEAP32[$pOut>>2]|0; + $2810 = $nByte12; + $2811 = $2810; + $2812 = HEAP32[$2811>>2]|0; + $2813 = (($2810) + 4)|0; + $2814 = $2813; + $2815 = HEAP32[$2814>>2]|0; + $2816 = (_sqlite3VdbeMemGrow($2809,$2812,0)|0); + $2817 = ($2816|0)!=(0); + if ($2817) { + label = 900; + break L1; + } + $2818 = HEAP32[$pOut>>2]|0; + $2819 = (($2818) + 4|0); + $2820 = HEAP32[$2819>>2]|0; + HEAP32[$zNewRecord>>2] = $2820; + $2821 = HEAP32[$nHdr>>2]|0; + $2822 = ($2821>>>0)<(128); + if ($2822) { + $2823 = HEAP32[$nHdr>>2]|0; + $2824 = $2823&255; + $2825 = HEAP32[$zNewRecord>>2]|0; + HEAP8[$2825>>0] = $2824; + $2830 = 1; + } else { + $2826 = HEAP32[$zNewRecord>>2]|0; + $2827 = HEAP32[$nHdr>>2]|0; + $2828 = (_sqlite3PutVarint32($2826,$2827)|0); + $2830 = $2828; + } + $2829 = $2830&255; + $2831 = $2829&255; + HEAP32[$i14>>2] = $2831; + $2832 = HEAP32[$nHdr>>2]|0; + HEAP32[$j>>2] = $2832; + $2833 = HEAP32[$pData0>>2]|0; + HEAP32[$pRec>>2] = $2833; + while(1) { + $2834 = HEAP32[$pRec>>2]|0; + $2835 = HEAP32[$file_format>>2]|0; + $2836 = (_sqlite3VdbeSerialType($2834,$2835)|0); + HEAP32[$serial_type>>2] = $2836; + $2837 = HEAP32[$serial_type>>2]|0; + $2838 = ($2837>>>0)<(128); + if ($2838) { + $2839 = HEAP32[$serial_type>>2]|0; + $2840 = $2839&255; + $2841 = HEAP32[$i14>>2]|0; + $2842 = HEAP32[$zNewRecord>>2]|0; + $2843 = (($2842) + ($2841)|0); + HEAP8[$2843>>0] = $2840; + $2850 = 1; + } else { + $2844 = HEAP32[$i14>>2]|0; + $2845 = HEAP32[$zNewRecord>>2]|0; + $2846 = (($2845) + ($2844)|0); + $2847 = HEAP32[$serial_type>>2]|0; + $2848 = (_sqlite3PutVarint32($2846,$2847)|0); + $2850 = $2848; + } + $2849 = $2850&255; + $2851 = $2849&255; + $2852 = HEAP32[$i14>>2]|0; + $2853 = (($2852) + ($2851))|0; + HEAP32[$i14>>2] = $2853; + $2854 = HEAP32[$j>>2]|0; + $2855 = HEAP32[$zNewRecord>>2]|0; + $2856 = (($2855) + ($2854)|0); + $2857 = HEAP32[$pRec>>2]|0; + $2858 = HEAP32[$serial_type>>2]|0; + $2859 = (_sqlite3VdbeSerialPut($2856,$2857,$2858)|0); + $2860 = HEAP32[$j>>2]|0; + $2861 = (($2860) + ($2859))|0; + HEAP32[$j>>2] = $2861; + $2862 = HEAP32[$pRec>>2]|0; + $2863 = (($2862) + 40|0); + HEAP32[$pRec>>2] = $2863; + $2864 = HEAP32[$pLast>>2]|0; + $2865 = ($2863>>>0)<=($2864>>>0); + if (!($2865)) { + break; + } + } + $2866 = $nByte12; + $2867 = $2866; + $2868 = HEAP32[$2867>>2]|0; + $2869 = (($2866) + 4)|0; + $2870 = $2869; + $2871 = HEAP32[$2870>>2]|0; + $2872 = HEAP32[$pOut>>2]|0; + $2873 = (($2872) + 24|0); + HEAP32[$2873>>2] = $2868; + $2874 = HEAP32[$pOut>>2]|0; + $2875 = (($2874) + 28|0); + HEAP16[$2875>>1] = 16; + $2876 = HEAP32[$pOut>>2]|0; + $2877 = (($2876) + 32|0); + HEAP32[$2877>>2] = 0; + $2878 = HEAP32[$nZero>>2]|0; + $2879 = ($2878|0)!=(0); + if ($2879) { + $2880 = HEAP32[$nZero>>2]|0; + $2881 = HEAP32[$pOut>>2]|0; + $2882 = (($2881) + 16|0); + HEAP32[$2882>>2] = $2880; + $2883 = HEAP32[$pOut>>2]|0; + $2884 = (($2883) + 28|0); + $2885 = HEAP16[$2884>>1]|0; + $2886 = $2885&65535; + $2887 = $2886 | 16384; + $2888 = $2887&65535; + HEAP16[$2884>>1] = $2888; + } + $2889 = HEAP32[$pOut>>2]|0; + $2890 = (($2889) + 30|0); + HEAP8[$2890>>0] = 1; + break; + } + case 49: { + $2891 = HEAP32[$pOp>>2]|0; + $2892 = (($2891) + 4|0); + $2893 = HEAP32[$2892>>2]|0; + $2894 = HEAP32[$0>>2]|0; + $2895 = (($2894) + 56|0); + $2896 = HEAP32[$2895>>2]|0; + $2897 = (($2896) + ($2893<<2)|0); + $2898 = HEAP32[$2897>>2]|0; + $2899 = HEAP32[$2898>>2]|0; + HEAP32[$pCrsr16>>2] = $2899; + $2900 = $nEntry; + $2901 = $2900; + HEAP32[$2901>>2] = 0; + $2902 = (($2900) + 4)|0; + $2903 = $2902; + HEAP32[$2903>>2] = 0; + $2904 = HEAP32[$pCrsr16>>2]|0; + $2905 = (_sqlite3BtreeCount($2904,$nEntry)|0); + HEAP32[$rc>>2] = $2905; + $2906 = $nEntry; + $2907 = $2906; + $2908 = HEAP32[$2907>>2]|0; + $2909 = (($2906) + 4)|0; + $2910 = $2909; + $2911 = HEAP32[$2910>>2]|0; + $2912 = HEAP32[$pOut>>2]|0; + $2913 = (($2912) + 16|0); + $2914 = $2913; + $2915 = $2914; + HEAP32[$2915>>2] = $2908; + $2916 = (($2914) + 4)|0; + $2917 = $2916; + HEAP32[$2917>>2] = $2911; + break; + } + case 3: { + $3198 = HEAP32[$pOp>>2]|0; + $3199 = (($3198) + 4|0); + $3200 = HEAP32[$3199>>2]|0; + HEAP32[$desiredAutoCommit>>2] = $3200; + $3201 = HEAP32[$pOp>>2]|0; + $3202 = (($3201) + 8|0); + $3203 = HEAP32[$3202>>2]|0; + HEAP32[$iRollback>>2] = $3203; + $3204 = HEAP32[$desiredAutoCommit>>2]|0; + $3205 = ($3204|0)!=(0); + if ($3205) { + $3206 = HEAP32[$db>>2]|0; + $3207 = (($3206) + 62|0); + $3208 = HEAP8[$3207>>0]|0; + $3209 = ($3208<<24>>24)!=(0); + $3210 = $3209 ^ 1; + $3212 = $3210; + } else { + $3212 = 0; + } + $3211 = $3212&1; + HEAP32[$turnOnAC>>2] = $3211; + $3213 = HEAP32[$turnOnAC>>2]|0; + $3214 = ($3213|0)!=(0); + if ($3214) { + $3215 = HEAP32[$iRollback>>2]|0; + $3216 = ($3215|0)!=(0); + if (!($3216)) { + $3217 = HEAP32[$db>>2]|0; + $3218 = (($3217) + 148|0); + $3219 = HEAP32[$3218>>2]|0; + $3220 = ($3219|0)>(0); + if ($3220) { + $3221 = HEAP32[$0>>2]|0; + $3222 = (($3221) + 44|0); + $3223 = HEAP32[$db>>2]|0; + _sqlite3SetString($3222,$3223,38056,$vararg_buffer62); + HEAP32[$rc>>2] = 5; + break L21; + } + } + } + $3224 = HEAP32[$desiredAutoCommit>>2]|0; + $3225 = HEAP32[$db>>2]|0; + $3226 = (($3225) + 62|0); + $3227 = HEAP8[$3226>>0]|0; + $3228 = $3227&255; + $3229 = ($3224|0)!=($3228|0); + if ($3229) { + label = 423; + break L11; + } + $3260 = HEAP32[$0>>2]|0; + $3261 = (($3260) + 44|0); + $3262 = HEAP32[$db>>2]|0; + $3263 = HEAP32[$desiredAutoCommit>>2]|0; + $3264 = ($3263|0)!=(0); + if ($3264) { + $3265 = HEAP32[$iRollback>>2]|0; + $3266 = ($3265|0)!=(0); + $3267 = $3266 ? 38160 : 38208; + $3268 = $3267; + } else { + $3268 = 38112; + } + _sqlite3SetString($3261,$3262,$3268,$vararg_buffer62); + HEAP32[$rc>>2] = 1; + break; + } + case 55: case 54: { + $3668 = HEAP32[$0>>2]|0; + $3669 = HEAP32[$pOp>>2]|0; + $3670 = (($3669) + 4|0); + $3671 = HEAP32[$3670>>2]|0; + $3672 = HEAP32[$pOp>>2]|0; + $3673 = (($3672) + 8|0); + $3674 = HEAP32[$3673>>2]|0; + $3675 = (_allocateCursor($3668,$3671,$3674,-1,1)|0); + HEAP32[$pCx>>2] = $3675; + $3676 = HEAP32[$pCx>>2]|0; + $3677 = ($3676|0)==(0|0); + if ($3677) { + label = 900; + break L1; + } + $3678 = HEAP32[$pCx>>2]|0; + $3679 = (($3678) + 25|0); + HEAP8[$3679>>0] = 1; + $3680 = HEAP32[$pCx>>2]|0; + $3681 = (($3680) + 28|0); + $3682 = HEAP8[$3681>>0]|0; + $3683 = $3682 & -2; + $3684 = $3683 | 1; + HEAP8[$3681>>0] = $3684; + $3685 = HEAP32[$db>>2]|0; + $3686 = HEAP32[$3685>>2]|0; + $3687 = HEAP32[$db>>2]|0; + $3688 = HEAP32[$pCx>>2]|0; + $3689 = (($3688) + 4|0); + $3690 = HEAP32[$pOp>>2]|0; + $3691 = (($3690) + 3|0); + $3692 = HEAP8[$3691>>0]|0; + $3693 = $3692&255; + $3694 = 5 | $3693; + $3695 = (_sqlite3BtreeOpen($3686,0,$3687,$3689,$3694,1054)|0); + HEAP32[$rc>>2] = $3695; + $3696 = HEAP32[$rc>>2]|0; + $3697 = ($3696|0)==(0); + if ($3697) { + $3698 = HEAP32[$pCx>>2]|0; + $3699 = (($3698) + 4|0); + $3700 = HEAP32[$3699>>2]|0; + $3701 = (_sqlite3BtreeBeginTrans($3700,1)|0); + HEAP32[$rc>>2] = $3701; + } + $3702 = HEAP32[$rc>>2]|0; + $3703 = ($3702|0)==(0); + do { + if ($3703) { + $3704 = HEAP32[$pOp>>2]|0; + $3705 = (($3704) + 16|0); + $3706 = HEAP32[$3705>>2]|0; + HEAP32[$pKeyInfo24>>2] = $3706; + $3707 = ($3706|0)!=(0|0); + $3708 = HEAP32[$pCx>>2]|0; + $3709 = (($3708) + 4|0); + $3710 = HEAP32[$3709>>2]|0; + if (!($3707)) { + $3734 = HEAP32[$pCx>>2]|0; + $3735 = HEAP32[$3734>>2]|0; + $3736 = (_sqlite3BtreeCursor($3710,1,1,0,$3735)|0); + HEAP32[$rc>>2] = $3736; + $3737 = HEAP32[$pCx>>2]|0; + $3738 = (($3737) + 28|0); + $3739 = HEAP8[$3738>>0]|0; + $3740 = $3739 & -5; + $3741 = $3740 | 4; + HEAP8[$3738>>0] = $3741; + break; + } + $3711 = HEAP32[$pOp>>2]|0; + $3712 = (($3711) + 3|0); + $3713 = HEAP8[$3712>>0]|0; + $3714 = $3713&255; + $3715 = 2 | $3714; + $3716 = (_sqlite3BtreeCreateTable($3710,$pgno,$3715)|0); + HEAP32[$rc>>2] = $3716; + $3717 = HEAP32[$rc>>2]|0; + $3718 = ($3717|0)==(0); + if ($3718) { + $3719 = HEAP32[$pKeyInfo24>>2]|0; + $3720 = HEAP32[$pCx>>2]|0; + $3721 = (($3720) + 8|0); + HEAP32[$3721>>2] = $3719; + $3722 = HEAP32[$pCx>>2]|0; + $3723 = (($3722) + 4|0); + $3724 = HEAP32[$3723>>2]|0; + $3725 = HEAP32[$pgno>>2]|0; + $3726 = HEAP32[$pKeyInfo24>>2]|0; + $3727 = HEAP32[$pCx>>2]|0; + $3728 = HEAP32[$3727>>2]|0; + $3729 = (_sqlite3BtreeCursor($3724,$3725,1,$3726,$3728)|0); + HEAP32[$rc>>2] = $3729; + } + $3730 = HEAP32[$pCx>>2]|0; + $3731 = (($3730) + 28|0); + $3732 = HEAP8[$3731>>0]|0; + $3733 = $3732 & -5; + HEAP8[$3731>>0] = $3733; + } + } while(0); + $3742 = HEAP32[$pOp>>2]|0; + $3743 = (($3742) + 3|0); + $3744 = HEAP8[$3743>>0]|0; + $3745 = $3744&255; + $3746 = ($3745|0)!=(8); + $3747 = $3746&1; + $3748 = HEAP32[$pCx>>2]|0; + $3749 = (($3748) + 28|0); + $3750 = $3747&255; + $3751 = HEAP8[$3749>>0]|0; + $3752 = $3750 & 1; + $3753 = ($3752 << 3)&255; + $3754 = $3751 & -9; + $3755 = $3754 | $3753; + HEAP8[$3749>>0] = $3755; + break; + } + case 53: case 52: { + $3533 = HEAP32[$0>>2]|0; + $3534 = (($3533) + 88|0); + $3535 = HEAP16[$3534>>1]|0; + $3536 = ($3535&65535) >>> 5; + $3537 = $3536 & 1; + $3538 = $3537&65535; + $3539 = ($3538|0)!=(0); + if ($3539) { + HEAP32[$rc>>2] = 4; + break L21; + } + HEAP32[$nField19>>2] = 0; + HEAP32[$pKeyInfo20>>2] = 0; + $3540 = HEAP32[$pOp>>2]|0; + $3541 = (($3540) + 8|0); + $3542 = HEAP32[$3541>>2]|0; + HEAP32[$p221>>2] = $3542; + $3543 = HEAP32[$pOp>>2]|0; + $3544 = (($3543) + 12|0); + $3545 = HEAP32[$3544>>2]|0; + HEAP32[$iDb22>>2] = $3545; + $3546 = HEAP32[$iDb22>>2]|0; + $3547 = HEAP32[$db>>2]|0; + $3548 = (($3547) + 16|0); + $3549 = HEAP32[$3548>>2]|0; + $3550 = (($3549) + ($3546<<4)|0); + HEAP32[$pDb23>>2] = $3550; + $3551 = HEAP32[$pDb23>>2]|0; + $3552 = (($3551) + 4|0); + $3553 = HEAP32[$3552>>2]|0; + HEAP32[$pX>>2] = $3553; + $3554 = HEAP32[$pOp>>2]|0; + $3555 = HEAP8[$3554>>0]|0; + $3556 = $3555&255; + $3557 = ($3556|0)==(53); + if ($3557) { + HEAP32[$wrFlag>>2] = 1; + $3558 = HEAP32[$pDb23>>2]|0; + $3559 = (($3558) + 12|0); + $3560 = HEAP32[$3559>>2]|0; + $3561 = (($3560) + 76|0); + $3562 = HEAP8[$3561>>0]|0; + $3563 = $3562&255; + $3564 = HEAP32[$0>>2]|0; + $3565 = (($3564) + 87|0); + $3566 = HEAP8[$3565>>0]|0; + $3567 = $3566&255; + $3568 = ($3563|0)<($3567|0); + if ($3568) { + $3569 = HEAP32[$pDb23>>2]|0; + $3570 = (($3569) + 12|0); + $3571 = HEAP32[$3570>>2]|0; + $3572 = (($3571) + 76|0); + $3573 = HEAP8[$3572>>0]|0; + $3574 = HEAP32[$0>>2]|0; + $3575 = (($3574) + 87|0); + HEAP8[$3575>>0] = $3573; + } + } else { + HEAP32[$wrFlag>>2] = 0; + } + $3576 = HEAP32[$pOp>>2]|0; + $3577 = (($3576) + 3|0); + $3578 = HEAP8[$3577>>0]|0; + $3579 = $3578&255; + $3580 = $3579 & 2; + $3581 = ($3580|0)!=(0); + if ($3581) { + $3582 = HEAP32[$p221>>2]|0; + $3583 = HEAP32[$aMem>>2]|0; + $3584 = (($3583) + (($3582*40)|0)|0); + HEAP32[$pIn2>>2] = $3584; + $3585 = HEAP32[$pIn2>>2]|0; + (_sqlite3VdbeMemIntegerify($3585)|0); + $3586 = HEAP32[$pIn2>>2]|0; + $3587 = (($3586) + 16|0); + $3588 = $3587; + $3589 = $3588; + $3590 = HEAP32[$3589>>2]|0; + $3591 = (($3588) + 4)|0; + $3592 = $3591; + $3593 = HEAP32[$3592>>2]|0; + HEAP32[$p221>>2] = $3590; + $3594 = HEAP32[$p221>>2]|0; + $3595 = ($3594|0)<(2); + if ($3595) { + label = 473; + break L11; + } + } + $3597 = HEAP32[$pOp>>2]|0; + $3598 = (($3597) + 1|0); + $3599 = HEAP8[$3598>>0]|0; + $3600 = $3599 << 24 >> 24; + $3601 = ($3600|0)==(-6); + $3602 = HEAP32[$pOp>>2]|0; + if ($3601) { + $3603 = (($3602) + 16|0); + $3604 = HEAP32[$3603>>2]|0; + HEAP32[$pKeyInfo20>>2] = $3604; + $3605 = HEAP32[$pKeyInfo20>>2]|0; + $3606 = (($3605) + 6|0); + $3607 = HEAP16[$3606>>1]|0; + $3608 = $3607&65535; + $3609 = HEAP32[$pKeyInfo20>>2]|0; + $3610 = (($3609) + 8|0); + $3611 = HEAP16[$3610>>1]|0; + $3612 = $3611&65535; + $3613 = (($3608) + ($3612))|0; + HEAP32[$nField19>>2] = $3613; + } else { + $3614 = (($3602) + 1|0); + $3615 = HEAP8[$3614>>0]|0; + $3616 = $3615 << 24 >> 24; + $3617 = ($3616|0)==(-14); + if ($3617) { + $3618 = HEAP32[$pOp>>2]|0; + $3619 = (($3618) + 16|0); + $3620 = HEAP32[$3619>>2]|0; + HEAP32[$nField19>>2] = $3620; + } + } + $3621 = HEAP32[$0>>2]|0; + $3622 = HEAP32[$pOp>>2]|0; + $3623 = (($3622) + 4|0); + $3624 = HEAP32[$3623>>2]|0; + $3625 = HEAP32[$nField19>>2]|0; + $3626 = HEAP32[$iDb22>>2]|0; + $3627 = (_allocateCursor($3621,$3624,$3625,$3626,1)|0); + HEAP32[$pCur>>2] = $3627; + $3628 = HEAP32[$pCur>>2]|0; + $3629 = ($3628|0)==(0|0); + if ($3629) { + label = 900; + break L1; + } + $3630 = HEAP32[$pCur>>2]|0; + $3631 = (($3630) + 25|0); + HEAP8[$3631>>0] = 1; + $3632 = HEAP32[$pCur>>2]|0; + $3633 = (($3632) + 28|0); + $3634 = HEAP8[$3633>>0]|0; + $3635 = $3634 & -9; + $3636 = $3635 | 8; + HEAP8[$3633>>0] = $3636; + $3637 = HEAP32[$pX>>2]|0; + $3638 = HEAP32[$p221>>2]|0; + $3639 = HEAP32[$wrFlag>>2]|0; + $3640 = HEAP32[$pKeyInfo20>>2]|0; + $3641 = HEAP32[$pCur>>2]|0; + $3642 = HEAP32[$3641>>2]|0; + $3643 = (_sqlite3BtreeCursor($3637,$3638,$3639,$3640,$3642)|0); + HEAP32[$rc>>2] = $3643; + $3644 = HEAP32[$pKeyInfo20>>2]|0; + $3645 = HEAP32[$pCur>>2]|0; + $3646 = (($3645) + 8|0); + HEAP32[$3646>>2] = $3644; + $3647 = HEAP32[$pCur>>2]|0; + $3648 = HEAP32[$3647>>2]|0; + $3649 = HEAP32[$pOp>>2]|0; + $3650 = (($3649) + 3|0); + $3651 = HEAP8[$3650>>0]|0; + $3652 = $3651&255; + $3653 = $3652 & 1; + _sqlite3BtreeCursorHints($3648,$3653); + $3654 = HEAP32[$pOp>>2]|0; + $3655 = (($3654) + 1|0); + $3656 = HEAP8[$3655>>0]|0; + $3657 = $3656 << 24 >> 24; + $3658 = ($3657|0)!=(-6); + $3659 = $3658&1; + $3660 = HEAP32[$pCur>>2]|0; + $3661 = (($3660) + 28|0); + $3662 = $3659&255; + $3663 = HEAP8[$3661>>0]|0; + $3664 = $3662 & 1; + $3665 = ($3664 << 2)&255; + $3666 = $3663 & -5; + $3667 = $3666 | $3665; + HEAP8[$3661>>0] = $3667; + break; + } + case 56: { + $3756 = HEAP32[$0>>2]|0; + $3757 = HEAP32[$pOp>>2]|0; + $3758 = (($3757) + 4|0); + $3759 = HEAP32[$3758>>2]|0; + $3760 = HEAP32[$pOp>>2]|0; + $3761 = (($3760) + 8|0); + $3762 = HEAP32[$3761>>2]|0; + $3763 = (_allocateCursor($3756,$3759,$3762,-1,1)|0); + HEAP32[$pCx25>>2] = $3763; + $3764 = HEAP32[$pCx25>>2]|0; + $3765 = ($3764|0)==(0|0); + if ($3765) { + label = 900; + break L1; + } + $3766 = HEAP32[$pOp>>2]|0; + $3767 = (($3766) + 16|0); + $3768 = HEAP32[$3767>>2]|0; + $3769 = HEAP32[$pCx25>>2]|0; + $3770 = (($3769) + 8|0); + HEAP32[$3770>>2] = $3768; + $3771 = HEAP32[$db>>2]|0; + $3772 = HEAP32[$pCx25>>2]|0; + $3773 = (_sqlite3VdbeSorterInit($3771,$3772)|0); + HEAP32[$rc>>2] = $3773; + break; + } + case 57: { + $3774 = HEAP32[$0>>2]|0; + $3775 = HEAP32[$pOp>>2]|0; + $3776 = (($3775) + 4|0); + $3777 = HEAP32[$3776>>2]|0; + $3778 = HEAP32[$pOp>>2]|0; + $3779 = (($3778) + 12|0); + $3780 = HEAP32[$3779>>2]|0; + $3781 = (_allocateCursor($3774,$3777,$3780,-1,0)|0); + HEAP32[$pCx26>>2] = $3781; + $3782 = HEAP32[$pCx26>>2]|0; + $3783 = ($3782|0)==(0|0); + if ($3783) { + label = 900; + break L1; + } + $3784 = HEAP32[$pCx26>>2]|0; + $3785 = (($3784) + 25|0); + HEAP8[$3785>>0] = 1; + $3786 = HEAP32[$pOp>>2]|0; + $3787 = (($3786) + 8|0); + $3788 = HEAP32[$3787>>2]|0; + $3789 = HEAP32[$pCx26>>2]|0; + $3790 = (($3789) + 16|0); + HEAP32[$3790>>2] = $3788; + $3791 = HEAP32[$pCx26>>2]|0; + $3792 = (($3791) + 28|0); + $3793 = HEAP8[$3792>>0]|0; + $3794 = $3793 & -5; + $3795 = $3794 | 4; + HEAP8[$3792>>0] = $3795; + break; + } + case 50: { + $3437 = HEAP32[$pOp>>2]|0; + $3438 = (($3437) + 4|0); + $3439 = HEAP32[$3438>>2]|0; + HEAP32[$iDb>>2] = $3439; + $3440 = HEAP32[$pOp>>2]|0; + $3441 = (($3440) + 12|0); + $3442 = HEAP32[$3441>>2]|0; + HEAP32[$iCookie>>2] = $3442; + $3443 = HEAP32[$iDb>>2]|0; + $3444 = HEAP32[$db>>2]|0; + $3445 = (($3444) + 16|0); + $3446 = HEAP32[$3445>>2]|0; + $3447 = (($3446) + ($3443<<4)|0); + $3448 = (($3447) + 4|0); + $3449 = HEAP32[$3448>>2]|0; + $3450 = HEAP32[$iCookie>>2]|0; + _sqlite3BtreeGetMeta($3449,$3450,$iMeta18); + $3451 = HEAP32[$iMeta18>>2]|0; + $3452 = ($3451|0)<(0); + $3453 = $3452 << 31 >> 31; + $3454 = HEAP32[$pOut>>2]|0; + $3455 = (($3454) + 16|0); + $3456 = $3455; + $3457 = $3456; + HEAP32[$3457>>2] = $3451; + $3458 = (($3456) + 4)|0; + $3459 = $3458; + HEAP32[$3459>>2] = $3453; + break; + } + case 4: { + $3269 = HEAP32[$pOp>>2]|0; + $3270 = (($3269) + 8|0); + $3271 = HEAP32[$3270>>2]|0; + $3272 = ($3271|0)!=(0); + if ($3272) { + $3273 = HEAP32[$db>>2]|0; + $3274 = (($3273) + 24|0); + $3275 = HEAP32[$3274>>2]|0; + $3276 = $3275 & 33554432; + $3277 = ($3276|0)!=(0); + if ($3277) { + label = 436; + break L11; + } + } + $3278 = HEAP32[$pOp>>2]|0; + $3279 = (($3278) + 4|0); + $3280 = HEAP32[$3279>>2]|0; + $3281 = HEAP32[$db>>2]|0; + $3282 = (($3281) + 16|0); + $3283 = HEAP32[$3282>>2]|0; + $3284 = (($3283) + ($3280<<4)|0); + $3285 = (($3284) + 4|0); + $3286 = HEAP32[$3285>>2]|0; + HEAP32[$pBt>>2] = $3286; + $3287 = HEAP32[$pBt>>2]|0; + $3288 = ($3287|0)!=(0|0); + if ($3288) { + $3289 = HEAP32[$pBt>>2]|0; + $3290 = HEAP32[$pOp>>2]|0; + $3291 = (($3290) + 8|0); + $3292 = HEAP32[$3291>>2]|0; + $3293 = (_sqlite3BtreeBeginTrans($3289,$3292)|0); + HEAP32[$rc>>2] = $3293; + $3294 = HEAP32[$rc>>2]|0; + $3295 = ($3294|0)==(5); + if ($3295) { + label = 439; + break L11; + } + $3301 = HEAP32[$rc>>2]|0; + $3302 = ($3301|0)!=(0); + if ($3302) { + break L11; + } + $3303 = HEAP32[$pOp>>2]|0; + $3304 = (($3303) + 8|0); + $3305 = HEAP32[$3304>>2]|0; + $3306 = ($3305|0)!=(0); + do { + if ($3306) { + $3307 = HEAP32[$0>>2]|0; + $3308 = (($3307) + 88|0); + $3309 = HEAP16[$3308>>1]|0; + $3310 = ($3309&65535) >>> 7; + $3311 = $3310 & 1; + $3312 = $3311&65535; + $3313 = ($3312|0)!=(0); + if ($3313) { + $3314 = HEAP32[$db>>2]|0; + $3315 = (($3314) + 62|0); + $3316 = HEAP8[$3315>>0]|0; + $3317 = $3316&255; + $3318 = ($3317|0)==(0); + if (!($3318)) { + $3319 = HEAP32[$db>>2]|0; + $3320 = (($3319) + 144|0); + $3321 = HEAP32[$3320>>2]|0; + $3322 = ($3321|0)>(1); + if (!($3322)) { + break; + } + } + $3323 = HEAP32[$0>>2]|0; + $3324 = (($3323) + 104|0); + $3325 = HEAP32[$3324>>2]|0; + $3326 = ($3325|0)==(0); + if ($3326) { + $3327 = HEAP32[$db>>2]|0; + $3328 = (($3327) + 492|0); + $3329 = HEAP32[$3328>>2]|0; + $3330 = (($3329) + 1)|0; + HEAP32[$3328>>2] = $3330; + $3331 = HEAP32[$db>>2]|0; + $3332 = (($3331) + 488|0); + $3333 = HEAP32[$3332>>2]|0; + $3334 = HEAP32[$db>>2]|0; + $3335 = (($3334) + 492|0); + $3336 = HEAP32[$3335>>2]|0; + $3337 = (($3333) + ($3336))|0; + $3338 = HEAP32[$0>>2]|0; + $3339 = (($3338) + 104|0); + HEAP32[$3339>>2] = $3337; + } + $3340 = HEAP32[$db>>2]|0; + $3341 = HEAP32[$0>>2]|0; + $3342 = (($3341) + 104|0); + $3343 = HEAP32[$3342>>2]|0; + $3344 = (($3343) - 1)|0; + $3345 = (_sqlite3VtabSavepoint($3340,0,$3344)|0); + HEAP32[$rc>>2] = $3345; + $3346 = HEAP32[$rc>>2]|0; + $3347 = ($3346|0)==(0); + if ($3347) { + $3348 = HEAP32[$pBt>>2]|0; + $3349 = HEAP32[$0>>2]|0; + $3350 = (($3349) + 104|0); + $3351 = HEAP32[$3350>>2]|0; + $3352 = (_sqlite3BtreeBeginStmt($3348,$3351)|0); + HEAP32[$rc>>2] = $3352; + } + $3353 = HEAP32[$db>>2]|0; + $3354 = (($3353) + 496|0); + $3355 = $3354; + $3356 = $3355; + $3357 = HEAP32[$3356>>2]|0; + $3358 = (($3355) + 4)|0; + $3359 = $3358; + $3360 = HEAP32[$3359>>2]|0; + $3361 = HEAP32[$0>>2]|0; + $3362 = (($3361) + 152|0); + $3363 = $3362; + $3364 = $3363; + HEAP32[$3364>>2] = $3357; + $3365 = (($3363) + 4)|0; + $3366 = $3365; + HEAP32[$3366>>2] = $3360; + $3367 = HEAP32[$db>>2]|0; + $3368 = (($3367) + 504|0); + $3369 = $3368; + $3370 = $3369; + $3371 = HEAP32[$3370>>2]|0; + $3372 = (($3369) + 4)|0; + $3373 = $3372; + $3374 = HEAP32[$3373>>2]|0; + $3375 = HEAP32[$0>>2]|0; + $3376 = (($3375) + 160|0); + $3377 = $3376; + $3378 = $3377; + HEAP32[$3378>>2] = $3371; + $3379 = (($3377) + 4)|0; + $3380 = $3379; + HEAP32[$3380>>2] = $3374; + } + } + } while(0); + $3381 = HEAP32[$pBt>>2]|0; + _sqlite3BtreeGetMeta($3381,1,$iMeta); + $3382 = HEAP32[$pOp>>2]|0; + $3383 = (($3382) + 4|0); + $3384 = HEAP32[$3383>>2]|0; + $3385 = HEAP32[$db>>2]|0; + $3386 = (($3385) + 16|0); + $3387 = HEAP32[$3386>>2]|0; + $3388 = (($3387) + ($3384<<4)|0); + $3389 = (($3388) + 12|0); + $3390 = HEAP32[$3389>>2]|0; + $3391 = (($3390) + 4|0); + $3392 = HEAP32[$3391>>2]|0; + HEAP32[$iGen>>2] = $3392; + } else { + HEAP32[$iMeta>>2] = 0; + HEAP32[$iGen>>2] = 0; + } + $3393 = HEAP32[$pOp>>2]|0; + $3394 = (($3393) + 3|0); + $3395 = HEAP8[$3394>>0]|0; + $3396 = $3395&255; + $3397 = ($3396|0)!=(0); + if ($3397) { + $3398 = HEAP32[$iMeta>>2]|0; + $3399 = HEAP32[$pOp>>2]|0; + $3400 = (($3399) + 12|0); + $3401 = HEAP32[$3400>>2]|0; + $3402 = ($3398|0)!=($3401|0); + if (!($3402)) { + $3403 = HEAP32[$iGen>>2]|0; + $3404 = HEAP32[$pOp>>2]|0; + $3405 = (($3404) + 16|0); + $3406 = HEAP32[$3405>>2]|0; + $3407 = ($3403|0)!=($3406|0); + if (!($3407)) { + break L21; + } + } + $3408 = HEAP32[$db>>2]|0; + $3409 = HEAP32[$0>>2]|0; + $3410 = (($3409) + 44|0); + $3411 = HEAP32[$3410>>2]|0; + _sqlite3DbFree($3408,$3411); + $3412 = HEAP32[$db>>2]|0; + $3413 = (_sqlite3DbStrDup($3412,12256)|0); + $3414 = HEAP32[$0>>2]|0; + $3415 = (($3414) + 44|0); + HEAP32[$3415>>2] = $3413; + $3416 = HEAP32[$pOp>>2]|0; + $3417 = (($3416) + 4|0); + $3418 = HEAP32[$3417>>2]|0; + $3419 = HEAP32[$db>>2]|0; + $3420 = (($3419) + 16|0); + $3421 = HEAP32[$3420>>2]|0; + $3422 = (($3421) + ($3418<<4)|0); + $3423 = (($3422) + 12|0); + $3424 = HEAP32[$3423>>2]|0; + $3425 = HEAP32[$3424>>2]|0; + $3426 = HEAP32[$iMeta>>2]|0; + $3427 = ($3425|0)!=($3426|0); + if ($3427) { + $3428 = HEAP32[$db>>2]|0; + $3429 = HEAP32[$pOp>>2]|0; + $3430 = (($3429) + 4|0); + $3431 = HEAP32[$3430>>2]|0; + _sqlite3ResetOneSchema($3428,$3431); + } + $3432 = HEAP32[$0>>2]|0; + $3433 = (($3432) + 88|0); + $3434 = HEAP16[$3433>>1]|0; + $3435 = $3434 & -33; + $3436 = $3435 | 32; + HEAP16[$3433>>1] = $3436; + HEAP32[$rc>>2] = 17; + } + break; + } + case 51: { + $3460 = HEAP32[$pOp>>2]|0; + $3461 = (($3460) + 4|0); + $3462 = HEAP32[$3461>>2]|0; + $3463 = HEAP32[$db>>2]|0; + $3464 = (($3463) + 16|0); + $3465 = HEAP32[$3464>>2]|0; + $3466 = (($3465) + ($3462<<4)|0); + HEAP32[$pDb>>2] = $3466; + $3467 = HEAP32[$pOp>>2]|0; + $3468 = (($3467) + 12|0); + $3469 = HEAP32[$3468>>2]|0; + $3470 = HEAP32[$aMem>>2]|0; + $3471 = (($3470) + (($3469*40)|0)|0); + HEAP32[$pIn3>>2] = $3471; + $3472 = HEAP32[$pIn3>>2]|0; + (_sqlite3VdbeMemIntegerify($3472)|0); + $3473 = HEAP32[$pDb>>2]|0; + $3474 = (($3473) + 4|0); + $3475 = HEAP32[$3474>>2]|0; + $3476 = HEAP32[$pOp>>2]|0; + $3477 = (($3476) + 8|0); + $3478 = HEAP32[$3477>>2]|0; + $3479 = HEAP32[$pIn3>>2]|0; + $3480 = (($3479) + 16|0); + $3481 = $3480; + $3482 = $3481; + $3483 = HEAP32[$3482>>2]|0; + $3484 = (($3481) + 4)|0; + $3485 = $3484; + $3486 = HEAP32[$3485>>2]|0; + $3487 = (_sqlite3BtreeUpdateMeta($3475,$3478,$3483)|0); + HEAP32[$rc>>2] = $3487; + $3488 = HEAP32[$pOp>>2]|0; + $3489 = (($3488) + 8|0); + $3490 = HEAP32[$3489>>2]|0; + $3491 = ($3490|0)==(1); + if ($3491) { + $3492 = HEAP32[$pIn3>>2]|0; + $3493 = (($3492) + 16|0); + $3494 = $3493; + $3495 = $3494; + $3496 = HEAP32[$3495>>2]|0; + $3497 = (($3494) + 4)|0; + $3498 = $3497; + $3499 = HEAP32[$3498>>2]|0; + $3500 = HEAP32[$pDb>>2]|0; + $3501 = (($3500) + 12|0); + $3502 = HEAP32[$3501>>2]|0; + HEAP32[$3502>>2] = $3496; + $3503 = HEAP32[$db>>2]|0; + $3504 = (($3503) + 24|0); + $3505 = HEAP32[$3504>>2]|0; + $3506 = $3505 | 2; + HEAP32[$3504>>2] = $3506; + } else { + $3507 = HEAP32[$pOp>>2]|0; + $3508 = (($3507) + 8|0); + $3509 = HEAP32[$3508>>2]|0; + $3510 = ($3509|0)==(2); + if ($3510) { + $3511 = HEAP32[$pIn3>>2]|0; + $3512 = (($3511) + 16|0); + $3513 = $3512; + $3514 = $3513; + $3515 = HEAP32[$3514>>2]|0; + $3516 = (($3513) + 4)|0; + $3517 = $3516; + $3518 = HEAP32[$3517>>2]|0; + $3519 = $3515&255; + $3520 = HEAP32[$pDb>>2]|0; + $3521 = (($3520) + 12|0); + $3522 = HEAP32[$3521>>2]|0; + $3523 = (($3522) + 76|0); + HEAP8[$3523>>0] = $3519; + } + } + $3524 = HEAP32[$pOp>>2]|0; + $3525 = (($3524) + 4|0); + $3526 = HEAP32[$3525>>2]|0; + $3527 = ($3526|0)==(1); + if ($3527) { + $3528 = HEAP32[$db>>2]|0; + _sqlite3ExpirePreparedStatements($3528); + $3529 = HEAP32[$0>>2]|0; + $3530 = (($3529) + 88|0); + $3531 = HEAP16[$3530>>1]|0; + $3532 = $3531 & -33; + HEAP16[$3530>>1] = $3532; + } + break; + } + case 58: { + $3796 = HEAP32[$0>>2]|0; + $3797 = HEAP32[$pOp>>2]|0; + $3798 = (($3797) + 4|0); + $3799 = HEAP32[$3798>>2]|0; + $3800 = HEAP32[$0>>2]|0; + $3801 = (($3800) + 56|0); + $3802 = HEAP32[$3801>>2]|0; + $3803 = (($3802) + ($3799<<2)|0); + $3804 = HEAP32[$3803>>2]|0; + _sqlite3VdbeFreeCursor($3796,$3804); + $3805 = HEAP32[$pOp>>2]|0; + $3806 = (($3805) + 4|0); + $3807 = HEAP32[$3806>>2]|0; + $3808 = HEAP32[$0>>2]|0; + $3809 = (($3808) + 56|0); + $3810 = HEAP32[$3809>>2]|0; + $3811 = (($3810) + ($3807<<2)|0); + HEAP32[$3811>>2] = 0; + break; + } + default: { + } + } + } while(0); + if ((label|0) == 28) { + label = 0; + $254 = HEAP32[$pOp>>2]|0; + $255 = (($254) + 4|0); + $256 = HEAP32[$255>>2]|0; + $257 = ($256|0)==(0); + if (!($257)) { + label = 33; + break; + } + $258 = HEAP32[$0>>2]|0; + $259 = (($258) + 176|0); + $260 = HEAP32[$259>>2]|0; + $261 = ($260|0)!=(0|0); + if (!($261)) { + label = 33; + break; + } + $262 = HEAP32[$0>>2]|0; + $263 = (($262) + 176|0); + $264 = HEAP32[$263>>2]|0; + HEAP32[$pFrame>>2] = $264; + $265 = HEAP32[$pFrame>>2]|0; + $266 = (($265) + 4|0); + $267 = HEAP32[$266>>2]|0; + $268 = HEAP32[$0>>2]|0; + $269 = (($268) + 176|0); + HEAP32[$269>>2] = $267; + $270 = HEAP32[$0>>2]|0; + $271 = (($270) + 184|0); + $272 = HEAP32[$271>>2]|0; + $273 = (($272) + -1)|0; + HEAP32[$271>>2] = $273; + $274 = HEAP32[$db>>2]|0; + $275 = HEAP32[$0>>2]|0; + $276 = (($275) + 92|0); + $277 = HEAP32[$276>>2]|0; + _sqlite3VdbeSetChanges($274,$277); + $278 = HEAP32[$pFrame>>2]|0; + $279 = (_sqlite3VdbeFrameRestore($278)|0); + HEAP32[$pc>>2] = $279; + $280 = HEAP32[$db>>2]|0; + $281 = (($280) + 32|0); + $282 = $281; + $283 = $282; + $284 = HEAP32[$283>>2]|0; + $285 = (($282) + 4)|0; + $286 = $285; + $287 = HEAP32[$286>>2]|0; + $288 = $lastRowid; + $289 = $288; + HEAP32[$289>>2] = $284; + $290 = (($288) + 4)|0; + $291 = $290; + HEAP32[$291>>2] = $287; + $292 = HEAP32[$pOp>>2]|0; + $293 = (($292) + 8|0); + $294 = HEAP32[$293>>2]|0; + $295 = ($294|0)==(4); + if ($295) { + $296 = HEAP32[$pc>>2]|0; + $297 = HEAP32[$0>>2]|0; + $298 = (($297) + 4|0); + $299 = HEAP32[$298>>2]|0; + $300 = (($299) + (($296*20)|0)|0); + $301 = (($300) + 8|0); + $302 = HEAP32[$301>>2]|0; + $303 = (($302) - 1)|0; + HEAP32[$pc>>2] = $303; + } + $304 = HEAP32[$0>>2]|0; + $305 = (($304) + 4|0); + $306 = HEAP32[$305>>2]|0; + HEAP32[$aOp>>2] = $306; + $307 = HEAP32[$0>>2]|0; + $308 = (($307) + 8|0); + $309 = HEAP32[$308>>2]|0; + HEAP32[$aMem>>2] = $309; + } + else if ((label|0) == 57) { + label = 0; + $477 = HEAP32[$pOut>>2]|0; + $478 = (($477) + 28|0); + HEAP16[$478>>1] = 2562; + $479 = HEAP32[$pOp>>2]|0; + $480 = (($479) + 16|0); + $481 = HEAP32[$480>>2]|0; + $482 = HEAP32[$pOut>>2]|0; + $483 = (($482) + 4|0); + HEAP32[$483>>2] = $481; + $484 = HEAP32[$pOp>>2]|0; + $485 = (($484) + 4|0); + $486 = HEAP32[$485>>2]|0; + $487 = HEAP32[$pOut>>2]|0; + $488 = (($487) + 24|0); + HEAP32[$488>>2] = $486; + $489 = HEAP8[$encoding>>0]|0; + $490 = HEAP32[$pOut>>2]|0; + $491 = (($490) + 30|0); + HEAP8[$491>>0] = $489; + } + else if ((label|0) == 646) { + label = 0; + $5043 = HEAP32[$pOp>>2]|0; + $5044 = (($5043) + 4|0); + $5045 = HEAP32[$5044>>2]|0; + $5046 = HEAP32[$0>>2]|0; + $5047 = (($5046) + 56|0); + $5048 = HEAP32[$5047>>2]|0; + $5049 = (($5048) + ($5045<<2)|0); + $5050 = HEAP32[$5049>>2]|0; + HEAP32[$pC62>>2] = $5050; + HEAP32[$res64>>2] = 1; + $5051 = HEAP32[$pC62>>2]|0; + $5052 = (($5051) + 64|0); + $5053 = HEAP32[$5052>>2]|0; + $5054 = ($5053|0)!=(0|0); + if ($5054) { + $5055 = HEAP32[$db>>2]|0; + $5056 = HEAP32[$pC62>>2]|0; + $5057 = (_sqlite3VdbeSorterRewind($5055,$5056,$res64)|0); + HEAP32[$rc>>2] = $5057; + } else { + $5058 = HEAP32[$pC62>>2]|0; + $5059 = HEAP32[$5058>>2]|0; + HEAP32[$pCrsr63>>2] = $5059; + $5060 = HEAP32[$pCrsr63>>2]|0; + $5061 = (_sqlite3BtreeFirst($5060,$res64)|0); + HEAP32[$rc>>2] = $5061; + $5062 = HEAP32[$pC62>>2]|0; + $5063 = (($5062) + 27|0); + HEAP8[$5063>>0] = 0; + $5064 = HEAP32[$pC62>>2]|0; + $5065 = (($5064) + 68|0); + HEAP32[$5065>>2] = 0; + $5066 = HEAP32[$pC62>>2]|0; + $5067 = (($5066) + 26|0); + HEAP8[$5067>>0] = 0; + } + $5068 = HEAP32[$res64>>2]|0; + $5069 = $5068&255; + $5070 = HEAP32[$pC62>>2]|0; + $5071 = (($5070) + 25|0); + HEAP8[$5071>>0] = $5069; + $5072 = HEAP32[$res64>>2]|0; + $5073 = ($5072|0)!=(0); + if ($5073) { + $5074 = HEAP32[$pOp>>2]|0; + $5075 = (($5074) + 8|0); + $5076 = HEAP32[$5075>>2]|0; + $5077 = (($5076) - 1)|0; + HEAP32[$pc>>2] = $5077; + } + } + else if ((label|0) == 653) { + label = 0; + $5098 = HEAP32[$pOp>>2]|0; + $5099 = (($5098) + 4|0); + $5100 = HEAP32[$5099>>2]|0; + $5101 = HEAP32[$0>>2]|0; + $5102 = (($5101) + 56|0); + $5103 = HEAP32[$5102>>2]|0; + $5104 = (($5103) + ($5100<<2)|0); + $5105 = HEAP32[$5104>>2]|0; + HEAP32[$pC65>>2] = $5105; + $5106 = HEAP32[$pOp>>2]|0; + $5107 = (($5106) + 12|0); + $5108 = HEAP32[$5107>>2]|0; + HEAP32[$res66>>2] = $5108; + $5109 = HEAP32[$pOp>>2]|0; + $5110 = (($5109) + 16|0); + $5111 = HEAP32[$5110>>2]|0; + $5112 = HEAP32[$pC65>>2]|0; + $5113 = HEAP32[$5112>>2]|0; + $5114 = (FUNCTION_TABLE_iii[$5111 & 127]($5113,$res66)|0); + HEAP32[$rc>>2] = $5114; + label = 654; + } + if ((label|0) == 654) { + label = 0; + $5115 = HEAP32[$pC65>>2]|0; + $5116 = (($5115) + 68|0); + HEAP32[$5116>>2] = 0; + $5117 = HEAP32[$res66>>2]|0; + $5118 = ($5117|0)==(0); + $5119 = HEAP32[$pC65>>2]|0; + $5120 = (($5119) + 25|0); + if ($5118) { + HEAP8[$5120>>0] = 0; + $5121 = HEAP32[$pOp>>2]|0; + $5122 = (($5121) + 8|0); + $5123 = HEAP32[$5122>>2]|0; + $5124 = (($5123) - 1)|0; + HEAP32[$pc>>2] = $5124; + $5125 = HEAP32[$pOp>>2]|0; + $5126 = (($5125) + 3|0); + $5127 = HEAP8[$5126>>0]|0; + $5128 = $5127&255; + $5129 = HEAP32[$0>>2]|0; + $5130 = (($5129) + 108|0); + $5131 = (($5130) + ($5128<<2)|0); + $5132 = HEAP32[$5131>>2]|0; + $5133 = (($5132) + 1)|0; + HEAP32[$5131>>2] = $5133; + } else { + HEAP8[$5120>>0] = 1; + } + $5134 = HEAP32[$pC65>>2]|0; + $5135 = (($5134) + 26|0); + HEAP8[$5135>>0] = 0; + label = 16; + } + if ((label|0) == 16) { + label = 0; + $105 = HEAP32[$db>>2]|0; + $106 = (($105) + 232|0); + $107 = HEAP32[$106>>2]|0; + $108 = ($107|0)!=(0); + if ($108) { + break L3; + } + $109 = HEAP32[$db>>2]|0; + $110 = (($109) + 284|0); + $111 = HEAP32[$110>>2]|0; + $112 = ($111|0)!=(0|0); + if ($112) { + $113 = HEAP32[$nVmStep>>2]|0; + $114 = HEAP32[$nProgressLimit>>2]|0; + $115 = ($113>>>0)>=($114>>>0); + if ($115) { + $116 = HEAP32[$nVmStep>>2]|0; + $117 = HEAP32[$db>>2]|0; + $118 = (($117) + 292|0); + $119 = HEAP32[$118>>2]|0; + $120 = (($116) + ($119))|0; + $121 = HEAP32[$nVmStep>>2]|0; + $122 = HEAP32[$db>>2]|0; + $123 = (($122) + 292|0); + $124 = HEAP32[$123>>2]|0; + $125 = (($121>>>0) % ($124>>>0))&-1; + $126 = (($120) - ($125))|0; + HEAP32[$nProgressLimit>>2] = $126; + $127 = HEAP32[$db>>2]|0; + $128 = (($127) + 284|0); + $129 = HEAP32[$128>>2]|0; + $130 = HEAP32[$db>>2]|0; + $131 = (($130) + 288|0); + $132 = HEAP32[$131>>2]|0; + $133 = (FUNCTION_TABLE_ii[$129 & 63]($132)|0); + $134 = ($133|0)!=(0); + if ($134) { + label = 20; + break; + } + } + } + } + $7125 = HEAP32[$pc>>2]|0; + $7126 = (($7125) + 1)|0; + HEAP32[$pc>>2] = $7126; + } + switch (label|0) { + case 20: { + HEAP32[$rc>>2] = 9; + break L1; + break; + } + case 33: { + $310 = HEAP32[$pOp>>2]|0; + $311 = (($310) + 4|0); + $312 = HEAP32[$311>>2]|0; + $313 = HEAP32[$0>>2]|0; + $314 = (($313) + 80|0); + HEAP32[$314>>2] = $312; + $315 = HEAP32[$pOp>>2]|0; + $316 = (($315) + 8|0); + $317 = HEAP32[$316>>2]|0; + $318 = $317&255; + $319 = HEAP32[$0>>2]|0; + $320 = (($319) + 86|0); + HEAP8[$320>>0] = $318; + $321 = HEAP32[$pc>>2]|0; + $322 = HEAP32[$0>>2]|0; + $323 = (($322) + 76|0); + HEAP32[$323>>2] = $321; + $324 = HEAP32[$0>>2]|0; + $325 = (($324) + 80|0); + $326 = HEAP32[$325>>2]|0; + $327 = ($326|0)!=(0); + if ($327) { + $328 = HEAP32[$pOp>>2]|0; + $329 = (($328) + 3|0); + $330 = HEAP8[$329>>0]|0; + $331 = ($330<<24>>24)!=(0); + if ($331) { + $332 = HEAP32[$pOp>>2]|0; + $333 = (($332) + 3|0); + $334 = HEAP8[$333>>0]|0; + $335 = $334&255; + $336 = (($335) - 1)|0; + $337 = (37744 + ($336<<2)|0); + $338 = HEAP32[$337>>2]|0; + HEAP32[$zType>>2] = $338; + } else { + HEAP32[$zType>>2] = 0; + } + HEAP32[$zLogFmt>>2] = 37808; + $339 = HEAP32[$zType>>2]|0; + $340 = ($339|0)!=(0|0); + if ($340) { + $341 = HEAP32[$pOp>>2]|0; + $342 = (($341) + 16|0); + $343 = HEAP32[$342>>2]|0; + $344 = ($343|0)!=(0|0); + if ($344) { + $345 = HEAP32[$0>>2]|0; + $346 = (($345) + 44|0); + $347 = HEAP32[$db>>2]|0; + $348 = HEAP32[$zType>>2]|0; + $349 = HEAP32[$pOp>>2]|0; + $350 = (($349) + 16|0); + $351 = HEAP32[$350>>2]|0; + HEAP32[$vararg_buffer62>>2] = $348; + $vararg_ptr5 = (($vararg_buffer62) + 4|0); + HEAP32[$vararg_ptr5>>2] = $351; + _sqlite3SetString($346,$347,37832,$vararg_buffer62); + } else { + label = 40; + } + } else { + label = 40; + } + do { + if ((label|0) == 40) { + $352 = HEAP32[$pOp>>2]|0; + $353 = (($352) + 16|0); + $354 = HEAP32[$353>>2]|0; + $355 = ($354|0)!=(0|0); + $356 = HEAP32[$0>>2]|0; + $357 = (($356) + 44|0); + $358 = HEAP32[$db>>2]|0; + if ($355) { + $359 = HEAP32[$pOp>>2]|0; + $360 = (($359) + 16|0); + $361 = HEAP32[$360>>2]|0; + HEAP32[$vararg_buffer62>>2] = $361; + _sqlite3SetString($357,$358,1768,$vararg_buffer62); + break; + } else { + $362 = HEAP32[$zType>>2]|0; + HEAP32[$vararg_buffer62>>2] = $362; + _sqlite3SetString($357,$358,37864,$vararg_buffer62); + break; + } + } + } while(0); + $363 = HEAP32[$pOp>>2]|0; + $364 = (($363) + 4|0); + $365 = HEAP32[$364>>2]|0; + $366 = HEAP32[$zLogFmt>>2]|0; + $367 = HEAP32[$pc>>2]|0; + $368 = HEAP32[$0>>2]|0; + $369 = (($368) + 168|0); + $370 = HEAP32[$369>>2]|0; + $371 = HEAP32[$0>>2]|0; + $372 = (($371) + 44|0); + $373 = HEAP32[$372>>2]|0; + HEAP32[$vararg_buffer62>>2] = $367; + $vararg_ptr15 = (($vararg_buffer62) + 4|0); + HEAP32[$vararg_ptr15>>2] = $370; + $vararg_ptr16 = (($vararg_buffer62) + 8|0); + HEAP32[$vararg_ptr16>>2] = $373; + _sqlite3_log($365,$366,$vararg_buffer62); + } + $374 = HEAP32[$0>>2]|0; + $375 = (_sqlite3VdbeHalt($374)|0); + HEAP32[$rc>>2] = $375; + $376 = HEAP32[$rc>>2]|0; + $377 = ($376|0)==(5); + if ($377) { + HEAP32[$rc>>2] = 5; + $378 = HEAP32[$0>>2]|0; + $379 = (($378) + 80|0); + HEAP32[$379>>2] = 5; + $7150 = $lastRowid; + $7151 = $7150; + $7152 = HEAP32[$7151>>2]|0; + $7153 = (($7150) + 4)|0; + $7154 = $7153; + $7155 = HEAP32[$7154>>2]|0; + $7156 = HEAP32[$db>>2]|0; + $7157 = (($7156) + 32|0); + $7158 = $7157; + $7159 = $7158; + HEAP32[$7159>>2] = $7152; + $7160 = (($7158) + 4)|0; + $7161 = $7160; + HEAP32[$7161>>2] = $7155; + $7162 = HEAP32[$nVmStep>>2]|0; + $7163 = HEAP32[$0>>2]|0; + $7164 = (($7163) + 108|0); + $7165 = (($7164) + 16|0); + $7166 = HEAP32[$7165>>2]|0; + $7167 = (($7166) + ($7162))|0; + HEAP32[$7165>>2] = $7167; + $7168 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($7168|0); + } else { + $380 = HEAP32[$0>>2]|0; + $381 = (($380) + 80|0); + $382 = HEAP32[$381>>2]|0; + $383 = ($382|0)!=(0); + $384 = $383 ? 1 : 101; + HEAP32[$rc>>2] = $384; + $7150 = $lastRowid; + $7151 = $7150; + $7152 = HEAP32[$7151>>2]|0; + $7153 = (($7150) + 4)|0; + $7154 = $7153; + $7155 = HEAP32[$7154>>2]|0; + $7156 = HEAP32[$db>>2]|0; + $7157 = (($7156) + 32|0); + $7158 = $7157; + $7159 = $7158; + HEAP32[$7159>>2] = $7152; + $7160 = (($7158) + 4)|0; + $7161 = $7160; + HEAP32[$7161>>2] = $7155; + $7162 = HEAP32[$nVmStep>>2]|0; + $7163 = HEAP32[$0>>2]|0; + $7164 = (($7163) + 108|0); + $7165 = (($7164) + 16|0); + $7166 = HEAP32[$7165>>2]|0; + $7167 = (($7166) + ($7162))|0; + HEAP32[$7165>>2] = $7167; + $7168 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($7168|0); + } + break; + } + case 80: { + HEAP32[$rc>>2] = 9; + break L1; + break; + } + case 83: { + $666 = HEAP32[$0>>2]|0; + $667 = (($666) + 72|0); + $668 = HEAP32[$667>>2]|0; + $669 = (($668) + 2)|0; + $670 = $669 | 1; + $671 = HEAP32[$0>>2]|0; + $672 = (($671) + 72|0); + HEAP32[$672>>2] = $670; + $673 = HEAP32[$pOp>>2]|0; + $674 = (($673) + 4|0); + $675 = HEAP32[$674>>2]|0; + $676 = HEAP32[$aMem>>2]|0; + $677 = (($676) + (($675*40)|0)|0); + $678 = HEAP32[$0>>2]|0; + $679 = (($678) + 20|0); + HEAP32[$679>>2] = $677; + HEAP32[$pMem>>2] = $677; + HEAP32[$i>>2] = 0; + while(1) { + $680 = HEAP32[$i>>2]|0; + $681 = HEAP32[$pOp>>2]|0; + $682 = (($681) + 8|0); + $683 = HEAP32[$682>>2]|0; + $684 = ($680|0)<($683|0); + if (!($684)) { + break; + } + $685 = HEAP32[$i>>2]|0; + $686 = HEAP32[$pMem>>2]|0; + $687 = (($686) + (($685*40)|0)|0); + $688 = (($687) + 28|0); + $689 = HEAP16[$688>>1]|0; + $690 = $689&65535; + $691 = $690 & 4096; + $692 = ($691|0)!=(0); + if ($692) { + $693 = HEAP32[$i>>2]|0; + $694 = HEAP32[$pMem>>2]|0; + $695 = (($694) + (($693*40)|0)|0); + $696 = (_sqlite3VdbeMemMakeWriteable($695)|0); + $697 = ($696|0)!=(0); + if ($697) { + label = 900; + break L1; + } + } + $698 = HEAP32[$i>>2]|0; + $699 = HEAP32[$pMem>>2]|0; + $700 = (($699) + (($698*40)|0)|0); + (_sqlite3VdbeMemNulTerminate($700)|0); + $701 = HEAP32[$i>>2]|0; + $702 = (($701) + 1)|0; + HEAP32[$i>>2] = $702; + } + $703 = HEAP32[$db>>2]|0; + $704 = (($703) + 64|0); + $705 = HEAP8[$704>>0]|0; + $706 = ($705<<24>>24)!=(0); + if ($706) { + label = 900; + break L1; + } + $707 = HEAP32[$pc>>2]|0; + $708 = (($707) + 1)|0; + $709 = HEAP32[$0>>2]|0; + $710 = (($709) + 76|0); + HEAP32[$710>>2] = $708; + HEAP32[$rc>>2] = 100; + $7150 = $lastRowid; + $7151 = $7150; + $7152 = HEAP32[$7151>>2]|0; + $7153 = (($7150) + 4)|0; + $7154 = $7153; + $7155 = HEAP32[$7154>>2]|0; + $7156 = HEAP32[$db>>2]|0; + $7157 = (($7156) + 32|0); + $7158 = $7157; + $7159 = $7158; + HEAP32[$7159>>2] = $7152; + $7160 = (($7158) + 4)|0; + $7161 = $7160; + HEAP32[$7161>>2] = $7155; + $7162 = HEAP32[$nVmStep>>2]|0; + $7163 = HEAP32[$0>>2]|0; + $7164 = (($7163) + 108|0); + $7165 = (($7164) + 16|0); + $7166 = HEAP32[$7165>>2]|0; + $7167 = (($7166) + ($7162))|0; + HEAP32[$7165>>2] = $7167; + $7168 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($7168|0); + break; + } + case 146: { + $1304 = (($ctx) + 8|0); + _sqlite3VdbeMemRelease($1304); + label = 900; + break L1; + break; + } + case 177: { + HEAP32[$rc>>2] = 20; + break; + } + case 395: { + $3061 = HEAP32[$pc>>2]|0; + $3062 = HEAP32[$0>>2]|0; + $3063 = (($3062) + 76|0); + HEAP32[$3063>>2] = $3061; + $3064 = HEAP32[$db>>2]|0; + $3065 = (($3064) + 62|0); + HEAP8[$3065>>0] = 0; + HEAP32[$rc>>2] = 5; + $3066 = HEAP32[$0>>2]|0; + $3067 = (($3066) + 80|0); + HEAP32[$3067>>2] = 5; + $7150 = $lastRowid; + $7151 = $7150; + $7152 = HEAP32[$7151>>2]|0; + $7153 = (($7150) + 4)|0; + $7154 = $7153; + $7155 = HEAP32[$7154>>2]|0; + $7156 = HEAP32[$db>>2]|0; + $7157 = (($7156) + 32|0); + $7158 = $7157; + $7159 = $7158; + HEAP32[$7159>>2] = $7152; + $7160 = (($7158) + 4)|0; + $7161 = $7160; + HEAP32[$7161>>2] = $7155; + $7162 = HEAP32[$nVmStep>>2]|0; + $7163 = HEAP32[$0>>2]|0; + $7164 = (($7163) + 108|0); + $7165 = (($7164) + 16|0); + $7166 = HEAP32[$7165>>2]|0; + $7167 = (($7166) + ($7162))|0; + HEAP32[$7165>>2] = $7167; + $7168 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($7168|0); + break; + } + case 423: { + $3230 = HEAP32[$iRollback>>2]|0; + $3231 = ($3230|0)!=(0); + if ($3231) { + $3232 = HEAP32[$db>>2]|0; + _sqlite3RollbackAll($3232,516); + $3233 = HEAP32[$db>>2]|0; + $3234 = (($3233) + 62|0); + HEAP8[$3234>>0] = 1; + } else { + $3235 = HEAP32[$0>>2]|0; + $3236 = (_sqlite3VdbeCheckFk($3235,1)|0); + HEAP32[$rc>>2] = $3236; + $3237 = ($3236|0)!=(0); + if ($3237) { + $7150 = $lastRowid; + $7151 = $7150; + $7152 = HEAP32[$7151>>2]|0; + $7153 = (($7150) + 4)|0; + $7154 = $7153; + $7155 = HEAP32[$7154>>2]|0; + $7156 = HEAP32[$db>>2]|0; + $7157 = (($7156) + 32|0); + $7158 = $7157; + $7159 = $7158; + HEAP32[$7159>>2] = $7152; + $7160 = (($7158) + 4)|0; + $7161 = $7160; + HEAP32[$7161>>2] = $7155; + $7162 = HEAP32[$nVmStep>>2]|0; + $7163 = HEAP32[$0>>2]|0; + $7164 = (($7163) + 108|0); + $7165 = (($7164) + 16|0); + $7166 = HEAP32[$7165>>2]|0; + $7167 = (($7166) + ($7162))|0; + HEAP32[$7165>>2] = $7167; + $7168 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($7168|0); + } + $3238 = HEAP32[$desiredAutoCommit>>2]|0; + $3239 = $3238&255; + $3240 = HEAP32[$db>>2]|0; + $3241 = (($3240) + 62|0); + HEAP8[$3241>>0] = $3239; + $3242 = HEAP32[$0>>2]|0; + $3243 = (_sqlite3VdbeHalt($3242)|0); + $3244 = ($3243|0)==(5); + if ($3244) { + $3245 = HEAP32[$pc>>2]|0; + $3246 = HEAP32[$0>>2]|0; + $3247 = (($3246) + 76|0); + HEAP32[$3247>>2] = $3245; + $3248 = HEAP32[$desiredAutoCommit>>2]|0; + $3249 = (1 - ($3248))|0; + $3250 = $3249&255; + $3251 = HEAP32[$db>>2]|0; + $3252 = (($3251) + 62|0); + HEAP8[$3252>>0] = $3250; + HEAP32[$rc>>2] = 5; + $3253 = HEAP32[$0>>2]|0; + $3254 = (($3253) + 80|0); + HEAP32[$3254>>2] = 5; + $7150 = $lastRowid; + $7151 = $7150; + $7152 = HEAP32[$7151>>2]|0; + $7153 = (($7150) + 4)|0; + $7154 = $7153; + $7155 = HEAP32[$7154>>2]|0; + $7156 = HEAP32[$db>>2]|0; + $7157 = (($7156) + 32|0); + $7158 = $7157; + $7159 = $7158; + HEAP32[$7159>>2] = $7152; + $7160 = (($7158) + 4)|0; + $7161 = $7160; + HEAP32[$7161>>2] = $7155; + $7162 = HEAP32[$nVmStep>>2]|0; + $7163 = HEAP32[$0>>2]|0; + $7164 = (($7163) + 108|0); + $7165 = (($7164) + 16|0); + $7166 = HEAP32[$7165>>2]|0; + $7167 = (($7166) + ($7162))|0; + HEAP32[$7165>>2] = $7167; + $7168 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($7168|0); + } + } + $3255 = HEAP32[$db>>2]|0; + _sqlite3CloseSavepoints($3255); + $3256 = HEAP32[$0>>2]|0; + $3257 = (($3256) + 80|0); + $3258 = HEAP32[$3257>>2]|0; + $3259 = ($3258|0)==(0); + if ($3259) { + HEAP32[$rc>>2] = 101; + $7150 = $lastRowid; + $7151 = $7150; + $7152 = HEAP32[$7151>>2]|0; + $7153 = (($7150) + 4)|0; + $7154 = $7153; + $7155 = HEAP32[$7154>>2]|0; + $7156 = HEAP32[$db>>2]|0; + $7157 = (($7156) + 32|0); + $7158 = $7157; + $7159 = $7158; + HEAP32[$7159>>2] = $7152; + $7160 = (($7158) + 4)|0; + $7161 = $7160; + HEAP32[$7161>>2] = $7155; + $7162 = HEAP32[$nVmStep>>2]|0; + $7163 = HEAP32[$0>>2]|0; + $7164 = (($7163) + 108|0); + $7165 = (($7164) + 16|0); + $7166 = HEAP32[$7165>>2]|0; + $7167 = (($7166) + ($7162))|0; + HEAP32[$7165>>2] = $7167; + $7168 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($7168|0); + } else { + HEAP32[$rc>>2] = 1; + $7150 = $lastRowid; + $7151 = $7150; + $7152 = HEAP32[$7151>>2]|0; + $7153 = (($7150) + 4)|0; + $7154 = $7153; + $7155 = HEAP32[$7154>>2]|0; + $7156 = HEAP32[$db>>2]|0; + $7157 = (($7156) + 32|0); + $7158 = $7157; + $7159 = $7158; + HEAP32[$7159>>2] = $7152; + $7160 = (($7158) + 4)|0; + $7161 = $7160; + HEAP32[$7161>>2] = $7155; + $7162 = HEAP32[$nVmStep>>2]|0; + $7163 = HEAP32[$0>>2]|0; + $7164 = (($7163) + 108|0); + $7165 = (($7164) + 16|0); + $7166 = HEAP32[$7165>>2]|0; + $7167 = (($7166) + ($7162))|0; + HEAP32[$7165>>2] = $7167; + $7168 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($7168|0); + } + break; + } + case 436: { + HEAP32[$rc>>2] = 8; + break; + } + case 439: { + $3296 = HEAP32[$pc>>2]|0; + $3297 = HEAP32[$0>>2]|0; + $3298 = (($3297) + 76|0); + HEAP32[$3298>>2] = $3296; + HEAP32[$rc>>2] = 5; + $3299 = HEAP32[$0>>2]|0; + $3300 = (($3299) + 80|0); + HEAP32[$3300>>2] = 5; + $7150 = $lastRowid; + $7151 = $7150; + $7152 = HEAP32[$7151>>2]|0; + $7153 = (($7150) + 4)|0; + $7154 = $7153; + $7155 = HEAP32[$7154>>2]|0; + $7156 = HEAP32[$db>>2]|0; + $7157 = (($7156) + 32|0); + $7158 = $7157; + $7159 = $7158; + HEAP32[$7159>>2] = $7152; + $7160 = (($7158) + 4)|0; + $7161 = $7160; + HEAP32[$7161>>2] = $7155; + $7162 = HEAP32[$nVmStep>>2]|0; + $7163 = HEAP32[$0>>2]|0; + $7164 = (($7163) + 108|0); + $7165 = (($7164) + 16|0); + $7166 = HEAP32[$7165>>2]|0; + $7167 = (($7166) + ($7162))|0; + HEAP32[$7165>>2] = $7167; + $7168 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($7168|0); + break; + } + case 473: { + $3596 = (_sqlite3CorruptError(70771)|0); + HEAP32[$rc>>2] = $3596; + break; + } + case 572: { + HEAP32[$rc>>2] = 13; + break; + } + case 586: { + HEAP32[$rc>>2] = 13; + break; + } + case 898: { + $7150 = $lastRowid; + $7151 = $7150; + $7152 = HEAP32[$7151>>2]|0; + $7153 = (($7150) + 4)|0; + $7154 = $7153; + $7155 = HEAP32[$7154>>2]|0; + $7156 = HEAP32[$db>>2]|0; + $7157 = (($7156) + 32|0); + $7158 = $7157; + $7159 = $7158; + HEAP32[$7159>>2] = $7152; + $7160 = (($7158) + 4)|0; + $7161 = $7160; + HEAP32[$7161>>2] = $7155; + $7162 = HEAP32[$nVmStep>>2]|0; + $7163 = HEAP32[$0>>2]|0; + $7164 = (($7163) + 108|0); + $7165 = (($7164) + 16|0); + $7166 = HEAP32[$7165>>2]|0; + $7167 = (($7166) + ($7162))|0; + HEAP32[$7165>>2] = $7167; + $7168 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($7168|0); + break; + } + case 899: { + $7169 = HEAP32[$0>>2]|0; + $7170 = (($7169) + 44|0); + $7171 = HEAP32[$db>>2]|0; + _sqlite3SetString($7170,$7171,1520,$vararg_buffer62); + HEAP32[$rc>>2] = 18; + break L1; + break; + } + } + $7177 = HEAP32[$db>>2]|0; + $7178 = (($7177) + 64|0); + $7179 = HEAP8[$7178>>0]|0; + $7180 = ($7179<<24>>24)!=(0); + if ($7180) { + HEAP32[$rc>>2] = 7; + } + $7181 = HEAP32[$rc>>2]|0; + $7182 = ($7181|0)!=(3082); + if (!($7182)) { + break L1; + } + $7183 = HEAP32[$0>>2]|0; + $7184 = (($7183) + 44|0); + $7185 = HEAP32[$db>>2]|0; + $7186 = HEAP32[$rc>>2]|0; + $7187 = (_sqlite3ErrStr($7186)|0); + HEAP32[$vararg_buffer62>>2] = $7187; + _sqlite3SetString($7184,$7185,1768,$vararg_buffer62); + break L1; + } + } while(0); + HEAP32[$rc>>2] = 9; + $7188 = HEAP32[$rc>>2]|0; + $7189 = HEAP32[$0>>2]|0; + $7190 = (($7189) + 80|0); + HEAP32[$7190>>2] = $7188; + $7191 = HEAP32[$0>>2]|0; + $7192 = (($7191) + 44|0); + $7193 = HEAP32[$db>>2]|0; + $7194 = HEAP32[$rc>>2]|0; + $7195 = (_sqlite3ErrStr($7194)|0); + HEAP32[$vararg_buffer62>>2] = $7195; + _sqlite3SetString($7192,$7193,1768,$vararg_buffer62); + } + } while(0); + if ((label|0) == 900) { + $7172 = HEAP32[$db>>2]|0; + $7173 = (($7172) + 64|0); + HEAP8[$7173>>0] = 1; + $7174 = HEAP32[$0>>2]|0; + $7175 = (($7174) + 44|0); + $7176 = HEAP32[$db>>2]|0; + _sqlite3SetString($7175,$7176,9112,$vararg_buffer62); + HEAP32[$rc>>2] = 7; + } + $7127 = HEAP32[$rc>>2]|0; + $7128 = HEAP32[$0>>2]|0; + $7129 = (($7128) + 80|0); + HEAP32[$7129>>2] = $7127; + $7130 = HEAP32[$rc>>2]|0; + $7131 = HEAP32[$pc>>2]|0; + $7132 = HEAP32[$0>>2]|0; + $7133 = (($7132) + 168|0); + $7134 = HEAP32[$7133>>2]|0; + $7135 = HEAP32[$0>>2]|0; + $7136 = (($7135) + 44|0); + $7137 = HEAP32[$7136>>2]|0; + HEAP32[$vararg_buffer62>>2] = $7131; + $vararg_ptr53 = (($vararg_buffer62) + 4|0); + HEAP32[$vararg_ptr53>>2] = $7134; + $vararg_ptr54 = (($vararg_buffer62) + 8|0); + HEAP32[$vararg_ptr54>>2] = $7137; + _sqlite3_log($7130,38464,$vararg_buffer62); + $7138 = HEAP32[$0>>2]|0; + (_sqlite3VdbeHalt($7138)|0); + $7139 = HEAP32[$rc>>2]|0; + $7140 = ($7139|0)==(3082); + if ($7140) { + $7141 = HEAP32[$db>>2]|0; + $7142 = (($7141) + 64|0); + HEAP8[$7142>>0] = 1; + } + HEAP32[$rc>>2] = 1; + $7143 = HEAP8[$resetSchemaOnFault>>0]|0; + $7144 = $7143&255; + $7145 = ($7144|0)>(0); + if (!($7145)) { + $7150 = $lastRowid; + $7151 = $7150; + $7152 = HEAP32[$7151>>2]|0; + $7153 = (($7150) + 4)|0; + $7154 = $7153; + $7155 = HEAP32[$7154>>2]|0; + $7156 = HEAP32[$db>>2]|0; + $7157 = (($7156) + 32|0); + $7158 = $7157; + $7159 = $7158; + HEAP32[$7159>>2] = $7152; + $7160 = (($7158) + 4)|0; + $7161 = $7160; + HEAP32[$7161>>2] = $7155; + $7162 = HEAP32[$nVmStep>>2]|0; + $7163 = HEAP32[$0>>2]|0; + $7164 = (($7163) + 108|0); + $7165 = (($7164) + 16|0); + $7166 = HEAP32[$7165>>2]|0; + $7167 = (($7166) + ($7162))|0; + HEAP32[$7165>>2] = $7167; + $7168 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($7168|0); + } + $7146 = HEAP32[$db>>2]|0; + $7147 = HEAP8[$resetSchemaOnFault>>0]|0; + $7148 = $7147&255; + $7149 = (($7148) - 1)|0; + _sqlite3ResetOneSchema($7146,$7149); + $7150 = $lastRowid; + $7151 = $7150; + $7152 = HEAP32[$7151>>2]|0; + $7153 = (($7150) + 4)|0; + $7154 = $7153; + $7155 = HEAP32[$7154>>2]|0; + $7156 = HEAP32[$db>>2]|0; + $7157 = (($7156) + 32|0); + $7158 = $7157; + $7159 = $7158; + HEAP32[$7159>>2] = $7152; + $7160 = (($7158) + 4)|0; + $7161 = $7160; + HEAP32[$7161>>2] = $7155; + $7162 = HEAP32[$nVmStep>>2]|0; + $7163 = HEAP32[$0>>2]|0; + $7164 = (($7163) + 108|0); + $7165 = (($7164) + 16|0); + $7166 = HEAP32[$7165>>2]|0; + $7167 = (($7166) + ($7162))|0; + HEAP32[$7165>>2] = $7167; + $7168 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($7168|0); +} +function _doWalCallbacks($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $nEntry = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $rc = sp; + $i = sp + 4|0; + $pBt = sp + 8|0; + $nEntry = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$rc>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $1 = HEAP32[$i>>2]|0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 20|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($1|0)<($4|0); + if (!($5)) { + break; + } + $6 = HEAP32[$i>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + ($6<<4)|0); + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$pBt>>2] = $12; + $13 = HEAP32[$pBt>>2]|0; + $14 = ($13|0)!=(0|0); + if ($14) { + $15 = HEAP32[$pBt>>2]|0; + $16 = (_sqlite3BtreePager($15)|0); + $17 = (_sqlite3PagerWalCallback($16)|0); + HEAP32[$nEntry>>2] = $17; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 204|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)!=(0|0); + if ($21) { + $22 = HEAP32[$nEntry>>2]|0; + $23 = ($22|0)>(0); + if ($23) { + $24 = HEAP32[$rc>>2]|0; + $25 = ($24|0)==(0); + if ($25) { + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 204|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$0>>2]|0; + $30 = (($29) + 208|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$0>>2]|0; + $33 = HEAP32[$i>>2]|0; + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 16|0); + $36 = HEAP32[$35>>2]|0; + $37 = (($36) + ($33<<4)|0); + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$nEntry>>2]|0; + $40 = (FUNCTION_TABLE_iiiii[$28 & 31]($31,$32,$38,$39)|0); + HEAP32[$rc>>2] = $40; + } + } + } + } + $41 = HEAP32[$i>>2]|0; + $42 = (($41) + 1)|0; + HEAP32[$i>>2] = $42; + } + $43 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($43|0); +} +function _sqlite3VdbeTransferError($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $mallocFailed = 0, $rc = 0, $vararg_buffer = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 12|0; + $db = sp + 4|0; + $rc = sp + 8|0; + $mallocFailed = sp + 16|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$db>>2] = $2; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 80|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$rc>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 44|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + $10 = HEAP32[$db>>2]|0; + if (!($9)) { + $33 = HEAP32[$rc>>2]|0; + _sqlite3Error($10,$33,0,$vararg_buffer); + $34 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($34|0); + } + $11 = (($10) + 64|0); + $12 = HEAP8[$11>>0]|0; + HEAP8[$mallocFailed>>0] = $12; + _sqlite3BeginBenignMalloc(); + $13 = HEAP32[$db>>2]|0; + $14 = (($13) + 224|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)==(0|0); + if ($16) { + $17 = HEAP32[$db>>2]|0; + $18 = (_sqlite3ValueNew($17)|0); + $19 = HEAP32[$db>>2]|0; + $20 = (($19) + 224|0); + HEAP32[$20>>2] = $18; + } + $21 = HEAP32[$db>>2]|0; + $22 = (($21) + 224|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 44|0); + $26 = HEAP32[$25>>2]|0; + _sqlite3ValueSetStr($23,-1,$26,1,(-1)); + _sqlite3EndBenignMalloc(); + $27 = HEAP8[$mallocFailed>>0]|0; + $28 = HEAP32[$db>>2]|0; + $29 = (($28) + 64|0); + HEAP8[$29>>0] = $27; + $30 = HEAP32[$rc>>2]|0; + $31 = HEAP32[$db>>2]|0; + $32 = (($31) + 52|0); + HEAP32[$32>>2] = $30; + $34 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($34|0); +} +function _sqlite3PagerWalCallback($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 208|0); + $3 = HEAP32[$2>>2]|0; + $4 = (_sqlite3WalCallback($3)|0); + STACKTOP = sp;return ($4|0); +} +function _sqlite3WalCallback($pWal) { + $pWal = $pWal|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $ret = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $ret = sp; + HEAP32[$0>>2] = $pWal; + HEAP32[$ret>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + $8 = HEAP32[$ret>>2]|0; + STACKTOP = sp;return ($8|0); + } + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$ret>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 12|0); + HEAP32[$7>>2] = 0; + $8 = HEAP32[$ret>>2]|0; + STACKTOP = sp;return ($8|0); +} +function _sqlite3VdbeSetChanges($db,$nChange) { + $db = $db|0; + $nChange = $nChange|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $nChange; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 80|0); + HEAP32[$4>>2] = $2; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 84|0); + $8 = HEAP32[$7>>2]|0; + $9 = (($8) + ($5))|0; + HEAP32[$7>>2] = $9; + STACKTOP = sp;return; +} +function _sqlite3VdbeFrameRestore($pFrame) { + $pFrame = $pFrame|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $v = sp; + HEAP32[$0>>2] = $pFrame; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$v>>2] = $2; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 16|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$v>>2]|0; + $7 = (($6) + 200|0); + HEAP32[$7>>2] = $5; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 56|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$v>>2]|0; + $12 = (($11) + 196|0); + HEAP32[$12>>2] = $10; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 8|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$v>>2]|0; + $17 = (($16) + 4|0); + HEAP32[$17>>2] = $15; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 48|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$v>>2]|0; + $22 = (($21) + 32|0); + HEAP32[$22>>2] = $20; + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 12|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$v>>2]|0; + $27 = (($26) + 8|0); + HEAP32[$27>>2] = $25; + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 52|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$v>>2]|0; + $32 = (($31) + 28|0); + HEAP32[$32>>2] = $30; + $33 = HEAP32[$0>>2]|0; + $34 = (($33) + 20|0); + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$v>>2]|0; + $37 = (($36) + 56|0); + HEAP32[$37>>2] = $35; + $38 = HEAP32[$0>>2]|0; + $39 = (($38) + 40|0); + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$v>>2]|0; + $42 = (($41) + 36|0); + HEAP32[$42>>2] = $40; + $43 = HEAP32[$0>>2]|0; + $44 = (($43) + 32|0); + $45 = $44; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (($45) + 4)|0; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$v>>2]|0; + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + 32|0); + $54 = $53; + $55 = $54; + HEAP32[$55>>2] = $47; + $56 = (($54) + 4)|0; + $57 = $56; + HEAP32[$57>>2] = $50; + $58 = HEAP32[$0>>2]|0; + $59 = (($58) + 68|0); + $60 = HEAP32[$59>>2]|0; + $61 = HEAP32[$v>>2]|0; + $62 = (($61) + 92|0); + HEAP32[$62>>2] = $60; + $63 = HEAP32[$0>>2]|0; + $64 = (($63) + 44|0); + $65 = HEAP32[$64>>2]|0; + STACKTOP = sp;return ($65|0); +} +function _sqlite3VdbeHalt($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $28 = 0, $29 = 0, $3 = 0; + var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; + var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; + var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; + var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $db = 0, $eStatementOp = 0, $isSpecialError = 0, $mrc = 0; + var $or$cond = 0, $or$cond3 = 0, $or$cond5 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $rc = sp + 4|0; + $db = sp + 8|0; + $mrc = sp + 12|0; + $eStatementOp = sp + 16|0; + $isSpecialError = sp + 20|0; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + 64|0); + $7 = HEAP8[$6>>0]|0; + $8 = ($7<<24>>24)!=(0); + if ($8) { + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 80|0); + HEAP32[$10>>2] = 7; + } + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 200|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(0|0); + if ($14) { + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 200|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 196|0); + $20 = HEAP32[$19>>2]|0; + _memset(($17|0),0,($20|0))|0; + } + $21 = HEAP32[$1>>2]|0; + _closeAllCursors($21); + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 40|0); + $24 = HEAP32[$23>>2]|0; + $25 = ($24|0)!=(-1108210269); + if ($25) { + HEAP32[$0>>2] = 0; + $275 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($275|0); + } + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 76|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)>=(0); + if ($29) { + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 88|0); + $32 = HEAP16[$31>>1]|0; + $33 = ($32&65535) >>> 9; + $34 = $33 & 1; + $35 = $34&65535; + $36 = ($35|0)!=(0); + if ($36) { + HEAP32[$eStatementOp>>2] = 0; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 80|0); + $39 = HEAP32[$38>>2]|0; + $40 = $39 & 255; + HEAP32[$mrc>>2] = $40; + $41 = HEAP32[$mrc>>2]|0; + $42 = ($41|0)==(7); + $43 = HEAP32[$mrc>>2]|0; + $44 = ($43|0)==(10); + $or$cond = $42 | $44; + $45 = HEAP32[$mrc>>2]|0; + $46 = ($45|0)==(9); + $or$cond3 = $or$cond | $46; + if ($or$cond3) { + $50 = 1; + } else { + $47 = HEAP32[$mrc>>2]|0; + $48 = ($47|0)==(13); + $50 = $48; + } + $49 = $50&1; + HEAP32[$isSpecialError>>2] = $49; + $51 = HEAP32[$isSpecialError>>2]|0; + $52 = ($51|0)!=(0); + do { + if ($52) { + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 88|0); + $55 = HEAP16[$54>>1]|0; + $56 = ($55&65535) >>> 8; + $57 = $56 & 1; + $58 = $57&65535; + $59 = ($58|0)!=(0); + if ($59) { + $60 = HEAP32[$mrc>>2]|0; + $61 = ($60|0)!=(9); + if (!($61)) { + break; + } + } + $62 = HEAP32[$mrc>>2]|0; + $63 = ($62|0)==(7); + $64 = HEAP32[$mrc>>2]|0; + $65 = ($64|0)==(13); + $or$cond5 = $63 | $65; + if ($or$cond5) { + $66 = HEAP32[$1>>2]|0; + $67 = (($66) + 88|0); + $68 = HEAP16[$67>>1]|0; + $69 = ($68&65535) >>> 7; + $70 = $69 & 1; + $71 = $70&65535; + $72 = ($71|0)!=(0); + if ($72) { + HEAP32[$eStatementOp>>2] = 2; + break; + } + } + $73 = HEAP32[$db>>2]|0; + _sqlite3RollbackAll($73,516); + $74 = HEAP32[$db>>2]|0; + _sqlite3CloseSavepoints($74); + $75 = HEAP32[$db>>2]|0; + $76 = (($75) + 62|0); + HEAP8[$76>>0] = 1; + } + } while(0); + $77 = HEAP32[$1>>2]|0; + $78 = (($77) + 80|0); + $79 = HEAP32[$78>>2]|0; + $80 = ($79|0)==(0); + if ($80) { + $81 = HEAP32[$1>>2]|0; + (_sqlite3VdbeCheckFk($81,0)|0); + } + $82 = HEAP32[$db>>2]|0; + $83 = (($82) + 296|0); + $84 = HEAP32[$83>>2]|0; + $85 = ($84|0)>(0); + if ($85) { + $86 = HEAP32[$db>>2]|0; + $87 = (($86) + 320|0); + $88 = HEAP32[$87>>2]|0; + $89 = ($88|0)==(0|0); + if ($89) { + label = 40; + } else { + label = 22; + } + } else { + label = 22; + } + if ((label|0) == 22) { + $90 = HEAP32[$db>>2]|0; + $91 = (($90) + 62|0); + $92 = HEAP8[$91>>0]|0; + $93 = $92&255; + $94 = ($93|0)!=(0); + if ($94) { + $95 = HEAP32[$db>>2]|0; + $96 = (($95) + 148|0); + $97 = HEAP32[$96>>2]|0; + $98 = HEAP32[$1>>2]|0; + $99 = (($98) + 88|0); + $100 = HEAP16[$99>>1]|0; + $101 = ($100&65535) >>> 8; + $102 = $101 & 1; + $103 = $102&65535; + $104 = ($103|0)==(0); + $105 = $104&1; + $106 = ($97|0)==($105|0); + if ($106) { + $107 = HEAP32[$1>>2]|0; + $108 = (($107) + 80|0); + $109 = HEAP32[$108>>2]|0; + $110 = ($109|0)==(0); + do { + if ($110) { + label = 27; + } else { + $111 = HEAP32[$1>>2]|0; + $112 = (($111) + 86|0); + $113 = HEAP8[$112>>0]|0; + $114 = $113&255; + $115 = ($114|0)==(3); + if ($115) { + $116 = HEAP32[$isSpecialError>>2]|0; + $117 = ($116|0)!=(0); + if (!($117)) { + label = 27; + break; + } + } + $164 = HEAP32[$db>>2]|0; + _sqlite3RollbackAll($164,0); + } + } while(0); + do { + if ((label|0) == 27) { + $118 = HEAP32[$1>>2]|0; + $119 = (_sqlite3VdbeCheckFk($118,1)|0); + HEAP32[$rc>>2] = $119; + $120 = HEAP32[$rc>>2]|0; + $121 = ($120|0)!=(0); + do { + if ($121) { + $122 = HEAP32[$1>>2]|0; + $123 = (($122) + 88|0); + $124 = HEAP16[$123>>1]|0; + $125 = ($124&65535) >>> 8; + $126 = $125 & 1; + $127 = $126&65535; + $128 = ($127|0)!=(0); + if (!($128)) { + HEAP32[$rc>>2] = 787; + break; + } + HEAP32[$0>>2] = 1; + $275 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($275|0); + } else { + $129 = HEAP32[$db>>2]|0; + $130 = HEAP32[$1>>2]|0; + $131 = (_vdbeCommit($129,$130)|0); + HEAP32[$rc>>2] = $131; + } + } while(0); + $132 = HEAP32[$rc>>2]|0; + $133 = ($132|0)==(5); + if ($133) { + $134 = HEAP32[$1>>2]|0; + $135 = (($134) + 88|0); + $136 = HEAP16[$135>>1]|0; + $137 = ($136&65535) >>> 8; + $138 = $137 & 1; + $139 = $138&65535; + $140 = ($139|0)!=(0); + if ($140) { + HEAP32[$0>>2] = 5; + $275 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($275|0); + } + } + $141 = HEAP32[$rc>>2]|0; + $142 = ($141|0)!=(0); + if ($142) { + $143 = HEAP32[$rc>>2]|0; + $144 = HEAP32[$1>>2]|0; + $145 = (($144) + 80|0); + HEAP32[$145>>2] = $143; + $146 = HEAP32[$db>>2]|0; + _sqlite3RollbackAll($146,0); + break; + } else { + $147 = HEAP32[$db>>2]|0; + $148 = (($147) + 496|0); + $149 = $148; + $150 = $149; + HEAP32[$150>>2] = 0; + $151 = (($149) + 4)|0; + $152 = $151; + HEAP32[$152>>2] = 0; + $153 = HEAP32[$db>>2]|0; + $154 = (($153) + 504|0); + $155 = $154; + $156 = $155; + HEAP32[$156>>2] = 0; + $157 = (($155) + 4)|0; + $158 = $157; + HEAP32[$158>>2] = 0; + $159 = HEAP32[$db>>2]|0; + $160 = (($159) + 24|0); + $161 = HEAP32[$160>>2]|0; + $162 = $161 & -16777217; + HEAP32[$160>>2] = $162; + $163 = HEAP32[$db>>2]|0; + _sqlite3CommitInternalChanges($163); + break; + } + } + } while(0); + $165 = HEAP32[$db>>2]|0; + $166 = (($165) + 492|0); + HEAP32[$166>>2] = 0; + } else { + label = 40; + } + } else { + label = 40; + } + } + do { + if ((label|0) == 40) { + $167 = HEAP32[$eStatementOp>>2]|0; + $168 = ($167|0)==(0); + if ($168) { + $169 = HEAP32[$1>>2]|0; + $170 = (($169) + 80|0); + $171 = HEAP32[$170>>2]|0; + $172 = ($171|0)==(0); + if (!($172)) { + $173 = HEAP32[$1>>2]|0; + $174 = (($173) + 86|0); + $175 = HEAP8[$174>>0]|0; + $176 = $175&255; + $177 = ($176|0)==(3); + if (!($177)) { + $178 = HEAP32[$1>>2]|0; + $179 = (($178) + 86|0); + $180 = HEAP8[$179>>0]|0; + $181 = $180&255; + $182 = ($181|0)==(2); + if ($182) { + HEAP32[$eStatementOp>>2] = 2; + break; + } else { + $183 = HEAP32[$db>>2]|0; + _sqlite3RollbackAll($183,516); + $184 = HEAP32[$db>>2]|0; + _sqlite3CloseSavepoints($184); + $185 = HEAP32[$db>>2]|0; + $186 = (($185) + 62|0); + HEAP8[$186>>0] = 1; + break; + } + } + } + HEAP32[$eStatementOp>>2] = 1; + } + } + } while(0); + $187 = HEAP32[$eStatementOp>>2]|0; + $188 = ($187|0)!=(0); + if ($188) { + $189 = HEAP32[$1>>2]|0; + $190 = HEAP32[$eStatementOp>>2]|0; + $191 = (_sqlite3VdbeCloseStatement($189,$190)|0); + HEAP32[$rc>>2] = $191; + $192 = HEAP32[$rc>>2]|0; + $193 = ($192|0)!=(0); + if ($193) { + $194 = HEAP32[$1>>2]|0; + $195 = (($194) + 80|0); + $196 = HEAP32[$195>>2]|0; + $197 = ($196|0)==(0); + if ($197) { + label = 51; + } else { + $198 = HEAP32[$1>>2]|0; + $199 = (($198) + 80|0); + $200 = HEAP32[$199>>2]|0; + $201 = $200 & 255; + $202 = ($201|0)==(19); + if ($202) { + label = 51; + } + } + if ((label|0) == 51) { + $203 = HEAP32[$rc>>2]|0; + $204 = HEAP32[$1>>2]|0; + $205 = (($204) + 80|0); + HEAP32[$205>>2] = $203; + $206 = HEAP32[$db>>2]|0; + $207 = HEAP32[$1>>2]|0; + $208 = (($207) + 44|0); + $209 = HEAP32[$208>>2]|0; + _sqlite3DbFree($206,$209); + $210 = HEAP32[$1>>2]|0; + $211 = (($210) + 44|0); + HEAP32[$211>>2] = 0; + } + $212 = HEAP32[$db>>2]|0; + _sqlite3RollbackAll($212,516); + $213 = HEAP32[$db>>2]|0; + _sqlite3CloseSavepoints($213); + $214 = HEAP32[$db>>2]|0; + $215 = (($214) + 62|0); + HEAP8[$215>>0] = 1; + } + } + $216 = HEAP32[$1>>2]|0; + $217 = (($216) + 88|0); + $218 = HEAP16[$217>>1]|0; + $219 = ($218&65535) >>> 4; + $220 = $219 & 1; + $221 = $220&65535; + $222 = ($221|0)!=(0); + if ($222) { + $223 = HEAP32[$eStatementOp>>2]|0; + $224 = ($223|0)!=(2); + $225 = HEAP32[$db>>2]|0; + if ($224) { + $226 = HEAP32[$1>>2]|0; + $227 = (($226) + 92|0); + $228 = HEAP32[$227>>2]|0; + _sqlite3VdbeSetChanges($225,$228); + } else { + _sqlite3VdbeSetChanges($225,0); + } + $229 = HEAP32[$1>>2]|0; + $230 = (($229) + 92|0); + HEAP32[$230>>2] = 0; + } + } + } + $231 = HEAP32[$1>>2]|0; + $232 = (($231) + 76|0); + $233 = HEAP32[$232>>2]|0; + $234 = ($233|0)>=(0); + if ($234) { + $235 = HEAP32[$db>>2]|0; + $236 = (($235) + 140|0); + $237 = HEAP32[$236>>2]|0; + $238 = (($237) + -1)|0; + HEAP32[$236>>2] = $238; + $239 = HEAP32[$1>>2]|0; + $240 = (($239) + 88|0); + $241 = HEAP16[$240>>1]|0; + $242 = ($241&65535) >>> 8; + $243 = $242 & 1; + $244 = $243&65535; + $245 = ($244|0)!=(0); + if (!($245)) { + $246 = HEAP32[$db>>2]|0; + $247 = (($246) + 148|0); + $248 = HEAP32[$247>>2]|0; + $249 = (($248) + -1)|0; + HEAP32[$247>>2] = $249; + } + $250 = HEAP32[$1>>2]|0; + $251 = (($250) + 88|0); + $252 = HEAP16[$251>>1]|0; + $253 = ($252&65535) >>> 9; + $254 = $253 & 1; + $255 = $254&65535; + $256 = ($255|0)!=(0); + if ($256) { + $257 = HEAP32[$db>>2]|0; + $258 = (($257) + 144|0); + $259 = HEAP32[$258>>2]|0; + $260 = (($259) + -1)|0; + HEAP32[$258>>2] = $260; + } + } + $261 = HEAP32[$1>>2]|0; + $262 = (($261) + 40|0); + HEAP32[$262>>2] = 1369188723; + $263 = HEAP32[$1>>2]|0; + $264 = HEAP32[$263>>2]|0; + $265 = (($264) + 64|0); + $266 = HEAP8[$265>>0]|0; + $267 = ($266<<24>>24)!=(0); + if ($267) { + $268 = HEAP32[$1>>2]|0; + $269 = (($268) + 80|0); + HEAP32[$269>>2] = 7; + } + $270 = HEAP32[$1>>2]|0; + $271 = (($270) + 80|0); + $272 = HEAP32[$271>>2]|0; + $273 = ($272|0)==(5); + $274 = $273 ? 5 : 0; + HEAP32[$0>>2] = $274; + $275 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($275|0); +} +function _sqlite3VdbeMemTooBig($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $n = sp + 4|0; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 28|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4&65535; + $6 = $5 & 18; + $7 = ($6|0)!=(0); + if (!($7)) { + HEAP32[$0>>2] = 0; + $29 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($29|0); + } + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 24|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$n>>2] = $10; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 28|0); + $13 = HEAP16[$12>>1]|0; + $14 = $13&65535; + $15 = $14 & 16384; + $16 = ($15|0)!=(0); + if ($16) { + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 16|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$n>>2]|0; + $21 = (($20) + ($19))|0; + HEAP32[$n>>2] = $21; + } + $22 = HEAP32[$n>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + 88|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($22|0)>($26|0); + $28 = $27&1; + HEAP32[$0>>2] = $28; + $29 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($29|0); +} +function _sqlite3VdbeCheckFk($p,$deferred) { + $p = $p|0; + $deferred = $deferred|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 16|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $db = sp + 12|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $deferred; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$db>>2] = $4; + $5 = HEAP32[$2>>2]|0; + $6 = ($5|0)!=(0); + if ($6) { + $7 = HEAP32[$db>>2]|0; + $8 = (($7) + 496|0); + $9 = $8; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = (($9) + 4)|0; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$db>>2]|0; + $16 = (($15) + 504|0); + $17 = $16; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (($17) + 4)|0; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = (_i64Add(($11|0),($14|0),($19|0),($22|0))|0); + $24 = tempRet0; + $25 = ($24|0)>(0); + $26 = ($24|0)==(0); + $27 = ($23>>>0)>(0); + $28 = $26 & $27; + $29 = $25 | $28; + if (!($29)) { + label = 3; + } + } else { + label = 3; + } + do { + if ((label|0) == 3) { + $30 = HEAP32[$2>>2]|0; + $31 = ($30|0)!=(0); + if (!($31)) { + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 144|0); + $34 = $33; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = ($39|0)>(0); + $41 = ($39|0)==(0); + $42 = ($36>>>0)>(0); + $43 = $41 & $42; + $44 = $40 | $43; + if ($44) { + break; + } + } + HEAP32[$0>>2] = 0; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); + } + } while(0); + $45 = HEAP32[$1>>2]|0; + $46 = (($45) + 80|0); + HEAP32[$46>>2] = 787; + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 86|0); + HEAP8[$48>>0] = 2; + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 44|0); + $51 = HEAP32[$db>>2]|0; + _sqlite3SetString($50,$51,30856,$vararg_buffer); + HEAP32[$0>>2] = 1; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); +} +function _sqlite3VdbeCloseStatement($p,$eOp) { + $p = $p|0; + $eOp = $eOp|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $db = 0, $i = 0, $iSavepoint = 0, $pBt = 0, $rc = 0, $rc2 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $db = sp + 4|0; + $rc = sp + 8|0; + $i = sp + 12|0; + $iSavepoint = sp + 16|0; + $rc2 = sp + 20|0; + $pBt = sp + 24|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $eOp; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$db>>2]|0; + $5 = (($4) + 492|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0); + if (!($7)) { + $93 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($93|0); + } + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 104|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0); + if (!($11)) { + $93 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($93|0); + } + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 104|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) - 1)|0; + HEAP32[$iSavepoint>>2] = $15; + HEAP32[$i>>2] = 0; + while(1) { + $16 = HEAP32[$i>>2]|0; + $17 = HEAP32[$db>>2]|0; + $18 = (($17) + 20|0); + $19 = HEAP32[$18>>2]|0; + $20 = ($16|0)<($19|0); + if (!($20)) { + break; + } + HEAP32[$rc2>>2] = 0; + $21 = HEAP32[$i>>2]|0; + $22 = HEAP32[$db>>2]|0; + $23 = (($22) + 16|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + ($21<<4)|0); + $26 = (($25) + 4|0); + $27 = HEAP32[$26>>2]|0; + HEAP32[$pBt>>2] = $27; + $28 = HEAP32[$pBt>>2]|0; + $29 = ($28|0)!=(0|0); + if ($29) { + $30 = HEAP32[$1>>2]|0; + $31 = ($30|0)==(2); + if ($31) { + $32 = HEAP32[$pBt>>2]|0; + $33 = HEAP32[$iSavepoint>>2]|0; + $34 = (_sqlite3BtreeSavepoint($32,2,$33)|0); + HEAP32[$rc2>>2] = $34; + } + $35 = HEAP32[$rc2>>2]|0; + $36 = ($35|0)==(0); + if ($36) { + $37 = HEAP32[$pBt>>2]|0; + $38 = HEAP32[$iSavepoint>>2]|0; + $39 = (_sqlite3BtreeSavepoint($37,1,$38)|0); + HEAP32[$rc2>>2] = $39; + } + $40 = HEAP32[$rc>>2]|0; + $41 = ($40|0)==(0); + if ($41) { + $42 = HEAP32[$rc2>>2]|0; + HEAP32[$rc>>2] = $42; + } + } + $43 = HEAP32[$i>>2]|0; + $44 = (($43) + 1)|0; + HEAP32[$i>>2] = $44; + } + $45 = HEAP32[$db>>2]|0; + $46 = (($45) + 492|0); + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + -1)|0; + HEAP32[$46>>2] = $48; + $49 = HEAP32[$0>>2]|0; + $50 = (($49) + 104|0); + HEAP32[$50>>2] = 0; + $51 = HEAP32[$rc>>2]|0; + $52 = ($51|0)==(0); + if ($52) { + $53 = HEAP32[$1>>2]|0; + $54 = ($53|0)==(2); + if ($54) { + $55 = HEAP32[$db>>2]|0; + $56 = HEAP32[$iSavepoint>>2]|0; + $57 = (_sqlite3VtabSavepoint($55,2,$56)|0); + HEAP32[$rc>>2] = $57; + } + $58 = HEAP32[$rc>>2]|0; + $59 = ($58|0)==(0); + if ($59) { + $60 = HEAP32[$db>>2]|0; + $61 = HEAP32[$iSavepoint>>2]|0; + $62 = (_sqlite3VtabSavepoint($60,1,$61)|0); + HEAP32[$rc>>2] = $62; + } + } + $63 = HEAP32[$1>>2]|0; + $64 = ($63|0)==(2); + if (!($64)) { + $93 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($93|0); + } + $65 = HEAP32[$0>>2]|0; + $66 = (($65) + 152|0); + $67 = $66; + $68 = $67; + $69 = HEAP32[$68>>2]|0; + $70 = (($67) + 4)|0; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = HEAP32[$db>>2]|0; + $74 = (($73) + 496|0); + $75 = $74; + $76 = $75; + HEAP32[$76>>2] = $69; + $77 = (($75) + 4)|0; + $78 = $77; + HEAP32[$78>>2] = $72; + $79 = HEAP32[$0>>2]|0; + $80 = (($79) + 160|0); + $81 = $80; + $82 = $81; + $83 = HEAP32[$82>>2]|0; + $84 = (($81) + 4)|0; + $85 = $84; + $86 = HEAP32[$85>>2]|0; + $87 = HEAP32[$db>>2]|0; + $88 = (($87) + 504|0); + $89 = $88; + $90 = $89; + HEAP32[$90>>2] = $83; + $91 = (($89) + 4)|0; + $92 = $91; + HEAP32[$92>>2] = $86; + $93 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($93|0); +} +function _sqlite3VdbeMemNulTerminate($pMem) { + $pMem = $pMem|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $pMem; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 28|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4&65535; + $6 = $5 & 512; + $7 = ($6|0)!=(0); + if (!($7)) { + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 28|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10&65535; + $12 = $11 & 2; + $13 = ($12|0)==(0); + if (!($13)) { + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 24|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + 2)|0; + $19 = (_sqlite3VdbeMemGrow($14,$18,1)|0); + $20 = ($19|0)!=(0); + if ($20) { + HEAP32[$0>>2] = 7; + $42 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($42|0); + } else { + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 24|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 4|0); + $26 = HEAP32[$25>>2]|0; + $27 = (($26) + ($23)|0); + HEAP8[$27>>0] = 0; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 24|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + 1)|0; + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = (($34) + ($31)|0); + HEAP8[$35>>0] = 0; + $36 = HEAP32[$1>>2]|0; + $37 = (($36) + 28|0); + $38 = HEAP16[$37>>1]|0; + $39 = $38&65535; + $40 = $39 | 512; + $41 = $40&65535; + HEAP16[$37>>1] = $41; + HEAP32[$0>>2] = 0; + $42 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($42|0); + } + } + } + HEAP32[$0>>2] = 0; + $42 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($42|0); +} +function _numericType($pMem) { + $pMem = $pMem|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $pMem; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 28|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4&65535; + $6 = $5 & 12; + $7 = ($6|0)!=(0); + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 28|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10&65535; + if ($7) { + $12 = $11 & 12; + $13 = $12&65535; + HEAP16[$0>>1] = $13; + $42 = HEAP16[$0>>1]|0; + STACKTOP = sp;return ($42|0); + } + $14 = $11 & 18; + $15 = ($14|0)!=(0); + if (!($15)) { + HEAP16[$0>>1] = 0; + $42 = HEAP16[$0>>1]|0; + STACKTOP = sp;return ($42|0); + } + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 8|0); + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 24|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 30|0); + $26 = HEAP8[$25>>0]|0; + $27 = (_sqlite3AtoF($18,$20,$23,$26)|0); + $28 = ($27|0)==(0); + if ($28) { + HEAP16[$0>>1] = 0; + $42 = HEAP16[$0>>1]|0; + STACKTOP = sp;return ($42|0); + } + $29 = HEAP32[$1>>2]|0; + $30 = (($29) + 4|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 16|0); + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 24|0); + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 30|0); + $39 = HEAP8[$38>>0]|0; + $40 = (_sqlite3Atoi64($31,$33,$36,$39)|0); + $41 = ($40|0)==(0); + if ($41) { + HEAP16[$0>>1] = 4; + $42 = HEAP16[$0>>1]|0; + STACKTOP = sp;return ($42|0); + } else { + HEAP16[$0>>1] = 8; + $42 = HEAP16[$0>>1]|0; + STACKTOP = sp;return ($42|0); + } + return 0|0; +} +function _sqlite3SubInt64($pA,$0,$1) { + $pA = $pA|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp + 12|0; + $3 = sp + 8|0; + $4 = sp; + HEAP32[$3>>2] = $pA; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + $9 = $4; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = (($9) + 4)|0; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = ($11|0)==(0); + $16 = ($14|0)==(-2147483648); + $17 = $15 & $16; + $18 = HEAP32[$3>>2]|0; + if (!($17)) { + $49 = $4; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = (($49) + 4)|0; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = (_i64Subtract(0,0,($51|0),($54|0))|0); + $56 = tempRet0; + $57 = (_sqlite3AddInt64($18,$55,$56)|0); + HEAP32[$2>>2] = $57; + $58 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($58|0); + } + $19 = $18; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (($19) + 4)|0; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = ($24|0)>(0); + $26 = ($24|0)==(0); + $27 = ($21>>>0)>=(0); + $28 = $26 & $27; + $29 = $25 | $28; + if ($29) { + HEAP32[$2>>2] = 1; + $58 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($58|0); + } else { + $30 = $4; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$3>>2]|0; + $37 = $36; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (($37) + 4)|0; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (_i64Subtract(($39|0),($42|0),($32|0),($35|0))|0); + $44 = tempRet0; + $45 = $36; + $46 = $45; + HEAP32[$46>>2] = $43; + $47 = (($45) + 4)|0; + $48 = $47; + HEAP32[$48>>2] = $44; + HEAP32[$2>>2] = 0; + $58 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($58|0); + } + return 0|0; +} +function _sqlite3MulInt64($pA,$0,$1) { + $pA = $pA|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; + var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; + var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; + var $99 = 0, $iA = 0, $iA0 = 0, $iA1 = 0, $iB0 = 0, $iB1 = 0, $or$cond = 0, $r = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $2 = sp + 56|0; + $3 = sp + 60|0; + $4 = sp + 48|0; + $iA = sp + 40|0; + $iA1 = sp + 32|0; + $iA0 = sp + 16|0; + $iB1 = sp + 8|0; + $iB0 = sp; + $r = sp + 24|0; + HEAP32[$3>>2] = $pA; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + $9 = HEAP32[$3>>2]|0; + $10 = $9; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (($10) + 4)|0; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = $iA; + $17 = $16; + HEAP32[$17>>2] = $12; + $18 = (($16) + 4)|0; + $19 = $18; + HEAP32[$19>>2] = $15; + $20 = $iA; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = (($20) + 4)|0; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = (___divdi3(($22|0),($25|0),0,1)|0); + $27 = tempRet0; + $28 = $iA1; + $29 = $28; + HEAP32[$29>>2] = $26; + $30 = (($28) + 4)|0; + $31 = $30; + HEAP32[$31>>2] = $27; + $32 = $iA; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = (($32) + 4)|0; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = (___remdi3(($34|0),($37|0),0,1)|0); + $39 = tempRet0; + $40 = $iA0; + $41 = $40; + HEAP32[$41>>2] = $38; + $42 = (($40) + 4)|0; + $43 = $42; + HEAP32[$43>>2] = $39; + $44 = $4; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = (($44) + 4)|0; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = (___divdi3(($46|0),($49|0),0,1)|0); + $51 = tempRet0; + $52 = $iB1; + $53 = $52; + HEAP32[$53>>2] = $50; + $54 = (($52) + 4)|0; + $55 = $54; + HEAP32[$55>>2] = $51; + $56 = $4; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = (($56) + 4)|0; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = (___remdi3(($58|0),($61|0),0,1)|0); + $63 = tempRet0; + $64 = $iB0; + $65 = $64; + HEAP32[$65>>2] = $62; + $66 = (($64) + 4)|0; + $67 = $66; + HEAP32[$67>>2] = $63; + $68 = $iA1; + $69 = $68; + $70 = HEAP32[$69>>2]|0; + $71 = (($68) + 4)|0; + $72 = $71; + $73 = HEAP32[$72>>2]|0; + $74 = ($70|0)==(0); + $75 = ($73|0)==(0); + $76 = $74 & $75; + $77 = $iB1; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = (($77) + 4)|0; + $81 = $80; + $82 = HEAP32[$81>>2]|0; + $83 = ($79|0)==(0); + $84 = ($82|0)==(0); + $85 = $83 & $84; + do { + if ($76) { + if (!($85)) { + $105 = $iA0; + $106 = $105; + $107 = HEAP32[$106>>2]|0; + $108 = (($105) + 4)|0; + $109 = $108; + $110 = HEAP32[$109>>2]|0; + $111 = $iB1; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = (($111) + 4)|0; + $115 = $114; + $116 = HEAP32[$115>>2]|0; + $117 = (___muldi3(($107|0),($110|0),($113|0),($116|0))|0); + $118 = tempRet0; + $119 = $r; + $120 = $119; + HEAP32[$120>>2] = $117; + $121 = (($119) + 4)|0; + $122 = $121; + HEAP32[$122>>2] = $118; + break; + } + $86 = $4; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = (($86) + 4)|0; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + $92 = HEAP32[$3>>2]|0; + $93 = $92; + $94 = $93; + $95 = HEAP32[$94>>2]|0; + $96 = (($93) + 4)|0; + $97 = $96; + $98 = HEAP32[$97>>2]|0; + $99 = (___muldi3(($95|0),($98|0),($88|0),($91|0))|0); + $100 = tempRet0; + $101 = $92; + $102 = $101; + HEAP32[$102>>2] = $99; + $103 = (($101) + 4)|0; + $104 = $103; + HEAP32[$104>>2] = $100; + HEAP32[$2>>2] = 0; + $202 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($202|0); + } else { + if ($85) { + $123 = $iA1; + $124 = $123; + $125 = HEAP32[$124>>2]|0; + $126 = (($123) + 4)|0; + $127 = $126; + $128 = HEAP32[$127>>2]|0; + $129 = $iB0; + $130 = $129; + $131 = HEAP32[$130>>2]|0; + $132 = (($129) + 4)|0; + $133 = $132; + $134 = HEAP32[$133>>2]|0; + $135 = (___muldi3(($125|0),($128|0),($131|0),($134|0))|0); + $136 = tempRet0; + $137 = $r; + $138 = $137; + HEAP32[$138>>2] = $135; + $139 = (($137) + 4)|0; + $140 = $139; + HEAP32[$140>>2] = $136; + break; + } + HEAP32[$2>>2] = 1; + $202 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($202|0); + } + } while(0); + $141 = $r; + $142 = $141; + $143 = HEAP32[$142>>2]|0; + $144 = (($141) + 4)|0; + $145 = $144; + $146 = HEAP32[$145>>2]|0; + $147 = ($146|0)<(-1); + $148 = ($146|0)==(-1); + $149 = ($143>>>0)<(2147483648); + $150 = $148 & $149; + $151 = $147 | $150; + $152 = $r; + $153 = $152; + $154 = HEAP32[$153>>2]|0; + $155 = (($152) + 4)|0; + $156 = $155; + $157 = HEAP32[$156>>2]|0; + $158 = ($157|0)>(0); + $159 = ($157|0)==(0); + $160 = ($154>>>0)>=(2147483648); + $161 = $159 & $160; + $162 = $158 | $161; + $or$cond = $151 | $162; + if ($or$cond) { + HEAP32[$2>>2] = 1; + $202 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($202|0); + } + $163 = $r; + $164 = $163; + $165 = HEAP32[$164>>2]|0; + $166 = (($163) + 4)|0; + $167 = $166; + $168 = HEAP32[$167>>2]|0; + $169 = (___muldi3(($165|0),($168|0),0,1)|0); + $170 = tempRet0; + $171 = $r; + $172 = $171; + HEAP32[$172>>2] = $169; + $173 = (($171) + 4)|0; + $174 = $173; + HEAP32[$174>>2] = $170; + $175 = $iA0; + $176 = $175; + $177 = HEAP32[$176>>2]|0; + $178 = (($175) + 4)|0; + $179 = $178; + $180 = HEAP32[$179>>2]|0; + $181 = $iB0; + $182 = $181; + $183 = HEAP32[$182>>2]|0; + $184 = (($181) + 4)|0; + $185 = $184; + $186 = HEAP32[$185>>2]|0; + $187 = (___muldi3(($177|0),($180|0),($183|0),($186|0))|0); + $188 = tempRet0; + $189 = (_sqlite3AddInt64($r,$187,$188)|0); + $190 = ($189|0)!=(0); + if ($190) { + HEAP32[$2>>2] = 1; + $202 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($202|0); + } else { + $191 = $r; + $192 = $191; + $193 = HEAP32[$192>>2]|0; + $194 = (($191) + 4)|0; + $195 = $194; + $196 = HEAP32[$195>>2]|0; + $197 = HEAP32[$3>>2]|0; + $198 = $197; + $199 = $198; + HEAP32[$199>>2] = $193; + $200 = (($198) + 4)|0; + $201 = $200; + HEAP32[$201>>2] = $196; + HEAP32[$2>>2] = 0; + $202 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($202|0); + } + return 0|0; +} +function _sqlite3VdbeDeleteAuxData($pVdbe,$iOp,$mask) { + $pVdbe = $pVdbe|0; + $iOp = $iOp|0; + $mask = $mask|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pAux = 0, $pp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $pp = sp + 8|0; + $pAux = sp + 12|0; + HEAP32[$0>>2] = $pVdbe; + HEAP32[$1>>2] = $iOp; + HEAP32[$2>>2] = $mask; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 204|0); + HEAP32[$pp>>2] = $4; + L1: while(1) { + $5 = HEAP32[$pp>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + break; + } + $8 = HEAP32[$pp>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$pAux>>2] = $9; + $10 = HEAP32[$1>>2]|0; + $11 = ($10|0)<(0); + do { + if (!($11)) { + $12 = HEAP32[$pAux>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = ($13|0)==($14|0); + if ($15) { + $16 = HEAP32[$pAux>>2]|0; + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($18|0)>(31); + if ($19) { + break; + } + $20 = HEAP32[$2>>2]|0; + $21 = HEAP32[$pAux>>2]|0; + $22 = (($21) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = 1 << $23; + $25 = $20 & $24; + $26 = ($25|0)!=(0); + if (!($26)) { + break; + } + } + $44 = HEAP32[$pAux>>2]|0; + $45 = (($44) + 16|0); + HEAP32[$pp>>2] = $45; + continue L1; + } + } while(0); + $27 = HEAP32[$pAux>>2]|0; + $28 = (($27) + 12|0); + $29 = HEAP32[$28>>2]|0; + $30 = ($29|0)!=(0|0); + if ($30) { + $31 = HEAP32[$pAux>>2]|0; + $32 = (($31) + 12|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$pAux>>2]|0; + $35 = (($34) + 8|0); + $36 = HEAP32[$35>>2]|0; + FUNCTION_TABLE_vi[$33 & 31]($36); + } + $37 = HEAP32[$pAux>>2]|0; + $38 = (($37) + 16|0); + $39 = HEAP32[$38>>2]|0; + $40 = HEAP32[$pp>>2]|0; + HEAP32[$40>>2] = $39; + $41 = HEAP32[$0>>2]|0; + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$pAux>>2]|0; + _sqlite3DbFree($42,$43); + } + STACKTOP = sp;return; +} +function _sqlite3VdbeMemIntegerify($pMem) { + $pMem = $pMem|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pMem; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3VdbeIntValue($1)|0); + $3 = tempRet0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 16|0); + $6 = $5; + $7 = $6; + HEAP32[$7>>2] = $2; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $3; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 28|0); + $12 = HEAP16[$11>>1]|0; + $13 = $12&65535; + $14 = $13 & -16896; + $15 = $14 | 4; + $16 = $15&65535; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 28|0); + HEAP16[$18>>1] = $16; + STACKTOP = sp;return 0; +} +function _sqlite3VdbeMemRealify($pMem) { + $pMem = $pMem|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0.0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pMem; + $1 = HEAP32[$0>>2]|0; + $2 = (+_sqlite3VdbeRealValue($1)); + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 8|0); + HEAPF64[$4>>3] = $2; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 28|0); + $7 = HEAP16[$6>>1]|0; + $8 = $7&65535; + $9 = $8 & -16896; + $10 = $9 | 8; + $11 = $10&65535; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 28|0); + HEAP16[$13>>1] = $11; + STACKTOP = sp;return 0; +} +function _sqlite3VdbeCursorMoveto($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $hasMoved = 0; + var $rc = 0, $rc1 = 0, $res = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $res = sp + 4|0; + $rc = sp + 8|0; + $hasMoved = sp + 12|0; + $rc1 = sp + 16|0; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 27|0); + $4 = HEAP8[$3>>0]|0; + $5 = ($4<<24>>24)!=(0); + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$6>>2]|0; + do { + if ($5) { + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 48|0); + $10 = $9; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (($10) + 4)|0; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (_sqlite3BtreeMovetoUnpacked($7,0,$12,$15,0,$res)|0); + HEAP32[$rc>>2] = $16; + $17 = HEAP32[$rc>>2]|0; + $18 = ($17|0)!=(0); + if ($18) { + $19 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $19; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); + } + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 48|0); + $22 = $21; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (($22) + 4)|0; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 56|0); + $30 = $29; + $31 = $30; + HEAP32[$31>>2] = $24; + $32 = (($30) + 4)|0; + $33 = $32; + HEAP32[$33>>2] = $27; + $34 = HEAP32[$res>>2]|0; + $35 = ($34|0)!=(0); + if (!($35)) { + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 26|0); + HEAP8[$38>>0] = 1; + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + 27|0); + HEAP8[$40>>0] = 0; + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 68|0); + HEAP32[$42>>2] = 0; + break; + } + $36 = (_sqlite3CorruptError(64453)|0); + HEAP32[$0>>2] = $36; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); + } else { + $43 = ($7|0)!=(0|0); + if ($43) { + $44 = HEAP32[$1>>2]|0; + $45 = HEAP32[$44>>2]|0; + $46 = (_sqlite3BtreeCursorHasMoved($45,$hasMoved)|0); + HEAP32[$rc1>>2] = $46; + $47 = HEAP32[$rc1>>2]|0; + $48 = ($47|0)!=(0); + if ($48) { + $49 = HEAP32[$rc1>>2]|0; + HEAP32[$0>>2] = $49; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); + } + $50 = HEAP32[$hasMoved>>2]|0; + $51 = ($50|0)!=(0); + if ($51) { + $52 = HEAP32[$1>>2]|0; + $53 = (($52) + 68|0); + HEAP32[$53>>2] = 0; + $54 = HEAP32[$hasMoved>>2]|0; + $55 = ($54|0)==(2); + if ($55) { + $56 = HEAP32[$1>>2]|0; + $57 = (($56) + 25|0); + HEAP8[$57>>0] = 1; + } + } + } + } + } while(0); + HEAP32[$0>>2] = 0; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); +} +function _sqlite3BtreeKeyFetch($pCur,$pAmt) { + $pCur = $pCur|0; + $pAmt = $pAmt|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pCur; + HEAP32[$1>>2] = $pAmt; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_fetchPayload($2,$3)|0); + STACKTOP = sp;return ($4|0); +} +function _sqlite3BtreeDataSize($pCur,$pSize) { + $pCur = $pCur|0; + $pSize = $pSize|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iPage = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $iPage = sp + 4|0; + HEAP32[$0>>2] = $pCur; + HEAP32[$1>>2] = $pSize; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 24|0); + $4 = (($3) + 26|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5&65535; + $7 = ($6|0)==(0); + if (!($7)) { + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 24|0); + $33 = (($32) + 12|0); + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$1>>2]|0; + HEAP32[$35>>2] = $34; + STACKTOP = sp;return 0; + } + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 84|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10 << 16 >> 16; + HEAP32[$iPage>>2] = $11; + $12 = HEAP32[$iPage>>2]|0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 128|0); + $15 = (($14) + ($12<<2)|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$iPage>>2]|0; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 86|0); + $20 = (($19) + ($17<<1)|0); + $21 = HEAP16[$20>>1]|0; + $22 = $21&65535; + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 24|0); + _btreeParseCell($16,$22,$24); + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 80|0); + $27 = HEAP8[$26>>0]|0; + $28 = $27&255; + $29 = $28 | 2; + $30 = $29&255; + HEAP8[$26>>0] = $30; + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 24|0); + $33 = (($32) + 12|0); + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$1>>2]|0; + HEAP32[$35>>2] = $34; + STACKTOP = sp;return 0; +} +function _sqlite3BtreeDataFetch($pCur,$pAmt) { + $pCur = $pCur|0; + $pAmt = $pAmt|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pCur; + HEAP32[$1>>2] = $pAmt; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_fetchPayload($2,$3)|0); + STACKTOP = sp;return ($4|0); +} +function _sqlite3VdbeMemFromBtree($pCur,$offset,$amt,$key,$pMem) { + $pCur = $pCur|0; + $offset = $offset|0; + $amt = $amt|0; + $key = $key|0; + $pMem = $pMem|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $available = 0, $rc = 0, $zData = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $zData = sp + 16|0; + $available = sp + 20|0; + $rc = sp + 24|0; + HEAP32[$0>>2] = $pCur; + HEAP32[$1>>2] = $offset; + HEAP32[$2>>2] = $amt; + HEAP32[$3>>2] = $key; + HEAP32[$4>>2] = $pMem; + HEAP32[$available>>2] = 0; + HEAP32[$rc>>2] = 0; + $5 = HEAP32[$3>>2]|0; + $6 = ($5|0)!=(0); + $7 = HEAP32[$0>>2]|0; + if ($6) { + $8 = (_sqlite3BtreeKeyFetch($7,$available)|0); + HEAP32[$zData>>2] = $8; + } else { + $9 = (_sqlite3BtreeDataFetch($7,$available)|0); + HEAP32[$zData>>2] = $9; + } + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = (($10) + ($11))|0; + $13 = HEAP32[$available>>2]|0; + $14 = ($12>>>0)<=($13>>>0); + $15 = HEAP32[$4>>2]|0; + if ($14) { + _sqlite3VdbeMemRelease($15); + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$zData>>2]|0; + $18 = (($17) + ($16)|0); + $19 = HEAP32[$4>>2]|0; + $20 = (($19) + 4|0); + HEAP32[$20>>2] = $18; + $21 = HEAP32[$4>>2]|0; + $22 = (($21) + 28|0); + HEAP16[$22>>1] = 4112; + $23 = HEAP32[$2>>2]|0; + $24 = HEAP32[$4>>2]|0; + $25 = (($24) + 24|0); + HEAP32[$25>>2] = $23; + $59 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($59|0); + } + $26 = HEAP32[$2>>2]|0; + $27 = (($26) + 2)|0; + $28 = (_sqlite3VdbeMemGrow($15,$27,0)|0); + HEAP32[$rc>>2] = $28; + $29 = (0)==($28|0); + if (!($29)) { + $59 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($59|0); + } + $30 = HEAP32[$3>>2]|0; + $31 = ($30|0)!=(0); + $32 = HEAP32[$0>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = HEAP32[$4>>2]|0; + $36 = (($35) + 4|0); + $37 = HEAP32[$36>>2]|0; + if ($31) { + $38 = (_sqlite3BtreeKey($32,$33,$34,$37)|0); + HEAP32[$rc>>2] = $38; + } else { + $39 = (_sqlite3BtreeData($32,$33,$34,$37)|0); + HEAP32[$rc>>2] = $39; + } + $40 = HEAP32[$rc>>2]|0; + $41 = ($40|0)==(0); + if ($41) { + $42 = HEAP32[$2>>2]|0; + $43 = HEAP32[$4>>2]|0; + $44 = (($43) + 4|0); + $45 = HEAP32[$44>>2]|0; + $46 = (($45) + ($42)|0); + HEAP8[$46>>0] = 0; + $47 = HEAP32[$2>>2]|0; + $48 = (($47) + 1)|0; + $49 = HEAP32[$4>>2]|0; + $50 = (($49) + 4|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + ($48)|0); + HEAP8[$52>>0] = 0; + $53 = HEAP32[$4>>2]|0; + $54 = (($53) + 28|0); + HEAP16[$54>>1] = 528; + $55 = HEAP32[$2>>2]|0; + $56 = HEAP32[$4>>2]|0; + $57 = (($56) + 24|0); + HEAP32[$57>>2] = $55; + $59 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($59|0); + } else { + $58 = HEAP32[$4>>2]|0; + _sqlite3VdbeMemRelease($58); + $59 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($59|0); + } + return 0|0; +} +function _sqlite3VdbeSerialType($pMem,$file_format) { + $pMem = $pMem|0; + $file_format = $file_format|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $flags = 0, $i = 0, $n = 0, $u = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $flags = sp + 16|0; + $n = sp + 20|0; + $i = sp; + $u = sp + 8|0; + HEAP32[$1>>2] = $pMem; + HEAP32[$2>>2] = $file_format; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 28|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5&65535; + HEAP32[$flags>>2] = $6; + $7 = HEAP32[$flags>>2]|0; + $8 = $7 & 1; + $9 = ($8|0)!=(0); + if ($9) { + HEAP32[$0>>2] = 0; + $162 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($162|0); + } + $10 = HEAP32[$flags>>2]|0; + $11 = $10 & 4; + $12 = ($11|0)!=(0); + if (!($12)) { + $140 = HEAP32[$flags>>2]|0; + $141 = $140 & 8; + $142 = ($141|0)!=(0); + if ($142) { + HEAP32[$0>>2] = 7; + $162 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($162|0); + } + $143 = HEAP32[$1>>2]|0; + $144 = (($143) + 24|0); + $145 = HEAP32[$144>>2]|0; + HEAP32[$n>>2] = $145; + $146 = HEAP32[$flags>>2]|0; + $147 = $146 & 16384; + $148 = ($147|0)!=(0); + if ($148) { + $149 = HEAP32[$1>>2]|0; + $150 = (($149) + 16|0); + $151 = HEAP32[$150>>2]|0; + $152 = HEAP32[$n>>2]|0; + $153 = (($152) + ($151))|0; + HEAP32[$n>>2] = $153; + } + $154 = HEAP32[$n>>2]|0; + $155 = $154<<1; + $156 = (($155) + 12)|0; + $157 = HEAP32[$flags>>2]|0; + $158 = $157 & 2; + $159 = ($158|0)!=(0); + $160 = $159&1; + $161 = (($156) + ($160))|0; + HEAP32[$0>>2] = $161; + $162 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($162|0); + } + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 16|0); + $15 = $14; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = (($15) + 4)|0; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = $i; + $22 = $21; + HEAP32[$22>>2] = $17; + $23 = (($21) + 4)|0; + $24 = $23; + HEAP32[$24>>2] = $20; + $25 = $i; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = ($30|0)<(0); + $32 = $i; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = (($32) + 4)|0; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + do { + if ($31) { + $38 = ($37|0)<(-32768); + $39 = ($37|0)==(-32768); + $40 = ($34>>>0)<(1); + $41 = $39 & $40; + $42 = $38 | $41; + if (!($42)) { + $43 = $i; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = (($43) + 4)|0; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = (_i64Subtract(0,0,($45|0),($48|0))|0); + $50 = tempRet0; + $51 = $u; + $52 = $51; + HEAP32[$52>>2] = $49; + $53 = (($51) + 4)|0; + $54 = $53; + HEAP32[$54>>2] = $50; + break; + } + HEAP32[$0>>2] = 6; + $162 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($162|0); + } else { + $55 = $u; + $56 = $55; + HEAP32[$56>>2] = $34; + $57 = (($55) + 4)|0; + $58 = $57; + HEAP32[$58>>2] = $37; + } + } while(0); + $59 = $u; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = (($59) + 4)|0; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = ($64>>>0)<(0); + $66 = ($64|0)==(0); + $67 = ($61>>>0)<=(127); + $68 = $66 & $67; + $69 = $65 | $68; + if ($69) { + $70 = $i; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = (($70) + 4)|0; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $76 = $72 & 1; + $77 = $i; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = (($77) + 4)|0; + $81 = $80; + $82 = HEAP32[$81>>2]|0; + $83 = ($76|0)==($79|0); + $84 = (0)==($82|0); + $85 = $83 & $84; + if ($85) { + $86 = HEAP32[$2>>2]|0; + $87 = ($86|0)>=(4); + if ($87) { + $88 = $u; + $89 = $88; + $90 = HEAP32[$89>>2]|0; + $91 = (($88) + 4)|0; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $94 = (8 + ($90))|0; + $95 = $94; + } else { + $95 = 1; + } + } else { + $95 = 1; + } + HEAP32[$0>>2] = $95; + $162 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($162|0); + } + $96 = $u; + $97 = $96; + $98 = HEAP32[$97>>2]|0; + $99 = (($96) + 4)|0; + $100 = $99; + $101 = HEAP32[$100>>2]|0; + $102 = ($101>>>0)<(0); + $103 = ($101|0)==(0); + $104 = ($98>>>0)<=(32767); + $105 = $103 & $104; + $106 = $102 | $105; + if ($106) { + HEAP32[$0>>2] = 2; + $162 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($162|0); + } + $107 = $u; + $108 = $107; + $109 = HEAP32[$108>>2]|0; + $110 = (($107) + 4)|0; + $111 = $110; + $112 = HEAP32[$111>>2]|0; + $113 = ($112>>>0)<(0); + $114 = ($112|0)==(0); + $115 = ($109>>>0)<=(8388607); + $116 = $114 & $115; + $117 = $113 | $116; + if ($117) { + HEAP32[$0>>2] = 3; + $162 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($162|0); + } + $118 = $u; + $119 = $118; + $120 = HEAP32[$119>>2]|0; + $121 = (($118) + 4)|0; + $122 = $121; + $123 = HEAP32[$122>>2]|0; + $124 = ($123>>>0)<(0); + $125 = ($123|0)==(0); + $126 = ($120>>>0)<=(2147483647); + $127 = $125 & $126; + $128 = $124 | $127; + if ($128) { + HEAP32[$0>>2] = 4; + $162 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($162|0); + } + $129 = $u; + $130 = $129; + $131 = HEAP32[$130>>2]|0; + $132 = (($129) + 4)|0; + $133 = $132; + $134 = HEAP32[$133>>2]|0; + $135 = ($134>>>0)<(32767); + $136 = ($134|0)==(32767); + $137 = ($131>>>0)<=(4294967295); + $138 = $136 & $137; + $139 = $135 | $138; + if ($139) { + HEAP32[$0>>2] = 5; + $162 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($162|0); + } else { + HEAP32[$0>>2] = 6; + $162 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($162|0); + } + return 0|0; +} +function _sqlite3PutVarint32($p,$v) { + $p = $p|0; + $v = $v|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $v; + $3 = HEAP32[$2>>2]|0; + $4 = $3 & -16384; + $5 = ($4|0)==(0); + if ($5) { + $6 = HEAP32[$2>>2]|0; + $7 = $6 >>> 7; + $8 = $7 | 128; + $9 = $8&255; + $10 = HEAP32[$1>>2]|0; + HEAP8[$10>>0] = $9; + $11 = HEAP32[$2>>2]|0; + $12 = $11 & 127; + $13 = $12&255; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 1|0); + HEAP8[$15>>0] = $13; + HEAP32[$0>>2] = 2; + $19 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($19|0); + } else { + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = (_sqlite3PutVarint($16,$17,0)|0); + HEAP32[$0>>2] = $18; + $19 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($19|0); + } + return 0|0; +} +function _sqlite3VdbeSerialPut($buf,$pMem,$serial_type) { + $buf = $buf|0; + $pMem = $pMem|0; + $serial_type = $serial_type|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $len = 0, $or$cond = 0, $v = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp + 20|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $len = sp + 16|0; + $v = sp; + $i = sp + 24|0; + HEAP32[$1>>2] = $buf; + HEAP32[$2>>2] = $pMem; + HEAP32[$3>>2] = $serial_type; + $4 = HEAP32[$3>>2]|0; + $5 = ($4>>>0)<=(7); + $6 = HEAP32[$3>>2]|0; + $7 = ($6>>>0)>(0); + $or$cond = $5 & $7; + $8 = HEAP32[$3>>2]|0; + if (!($or$cond)) { + $53 = ($8>>>0)>=(12); + if ($53) { + $54 = HEAP32[$2>>2]|0; + $55 = (($54) + 24|0); + $56 = HEAP32[$55>>2]|0; + HEAP32[$len>>2] = $56; + $57 = HEAP32[$1>>2]|0; + $58 = HEAP32[$2>>2]|0; + $59 = (($58) + 4|0); + $60 = HEAP32[$59>>2]|0; + $61 = HEAP32[$len>>2]|0; + _memcpy(($57|0),($60|0),($61|0))|0; + $62 = HEAP32[$len>>2]|0; + HEAP32[$0>>2] = $62; + $63 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($63|0); + } else { + HEAP32[$0>>2] = 0; + $63 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($63|0); + } + } + $9 = ($8|0)==(7); + if ($9) { + $10 = HEAP32[$2>>2]|0; + $11 = (($10) + 8|0); + ;HEAP32[$v+0>>2]=HEAP32[$11+0>>2]|0;HEAP32[$v+4>>2]=HEAP32[$11+4>>2]|0; + } else { + $12 = HEAP32[$2>>2]|0; + $13 = (($12) + 16|0); + $14 = $13; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = $v; + $21 = $20; + HEAP32[$21>>2] = $16; + $22 = (($20) + 4)|0; + $23 = $22; + HEAP32[$23>>2] = $19; + } + $24 = HEAP32[$3>>2]|0; + $25 = (_sqlite3VdbeSerialTypeLen($24)|0); + HEAP32[$i>>2] = $25; + HEAP32[$len>>2] = $25; + while(1) { + $26 = HEAP32[$i>>2]|0; + $27 = (($26) + -1)|0; + HEAP32[$i>>2] = $27; + $28 = ($26|0)!=(0); + if (!($28)) { + break; + } + $29 = $v; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = (($29) + 4)|0; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = $31 & 255; + $36 = $35&255; + $37 = HEAP32[$i>>2]|0; + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + ($37)|0); + HEAP8[$39>>0] = $36; + $40 = $v; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (($40) + 4)|0; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = (_bitshift64Lshr(($42|0),($45|0),8)|0); + $47 = tempRet0; + $48 = $v; + $49 = $48; + HEAP32[$49>>2] = $46; + $50 = (($48) + 4)|0; + $51 = $50; + HEAP32[$51>>2] = $47; + } + $52 = HEAP32[$len>>2]|0; + HEAP32[$0>>2] = $52; + $63 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($63|0); +} +function _sqlite3BtreeCount($pCur,$pnEntry) { + $pCur = $pCur|0; + $pnEntry = $pnEntry|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iIdx = 0, $nEntry = 0, $pPage = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp + 12|0; + $2 = sp + 8|0; + $nEntry = sp; + $rc = sp + 16|0; + $iIdx = sp + 20|0; + $pPage = sp + 24|0; + HEAP32[$1>>2] = $pCur; + HEAP32[$2>>2] = $pnEntry; + $3 = $nEntry; + $4 = $3; + HEAP32[$4>>2] = 0; + $5 = (($3) + 4)|0; + $6 = $5; + HEAP32[$6>>2] = 0; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 68|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)==(0); + if ($10) { + $11 = HEAP32[$2>>2]|0; + $12 = $11; + $13 = $12; + HEAP32[$13>>2] = 0; + $14 = (($12) + 4)|0; + $15 = $14; + HEAP32[$15>>2] = 0; + HEAP32[$0>>2] = 0; + $169 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($169|0); + } + $16 = HEAP32[$1>>2]|0; + $17 = (_moveToRoot($16)|0); + HEAP32[$rc>>2] = $17; + L5: while(1) { + $18 = HEAP32[$rc>>2]|0; + $19 = ($18|0)==(0); + if (!($19)) { + label = 16; + break; + } + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 84|0); + $22 = HEAP16[$21>>1]|0; + $23 = $22 << 16 >> 16; + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 128|0); + $26 = (($25) + ($23<<2)|0); + $27 = HEAP32[$26>>2]|0; + HEAP32[$pPage>>2] = $27; + $28 = HEAP32[$pPage>>2]|0; + $29 = (($28) + 3|0); + $30 = HEAP8[$29>>0]|0; + $31 = $30&255; + $32 = ($31|0)!=(0); + if ($32) { + label = 7; + } else { + $33 = HEAP32[$pPage>>2]|0; + $34 = (($33) + 2|0); + $35 = HEAP8[$34>>0]|0; + $36 = ($35<<24>>24)!=(0); + if (!($36)) { + label = 7; + } + } + if ((label|0) == 7) { + label = 0; + $37 = HEAP32[$pPage>>2]|0; + $38 = (($37) + 16|0); + $39 = HEAP16[$38>>1]|0; + $40 = $39&65535; + $41 = $nEntry; + $42 = $41; + $43 = HEAP32[$42>>2]|0; + $44 = (($41) + 4)|0; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = (_i64Add(($43|0),($46|0),($40|0),0)|0); + $48 = tempRet0; + $49 = $nEntry; + $50 = $49; + HEAP32[$50>>2] = $47; + $51 = (($49) + 4)|0; + $52 = $51; + HEAP32[$52>>2] = $48; + } + $53 = HEAP32[$pPage>>2]|0; + $54 = (($53) + 3|0); + $55 = HEAP8[$54>>0]|0; + $56 = ($55<<24>>24)!=(0); + if ($56) { + while(1) { + $57 = HEAP32[$1>>2]|0; + $58 = (($57) + 84|0); + $59 = HEAP16[$58>>1]|0; + $60 = $59 << 16 >> 16; + $61 = ($60|0)==(0); + if ($61) { + label = 10; + break L5; + } + $73 = HEAP32[$1>>2]|0; + _moveToParent($73); + $74 = HEAP32[$1>>2]|0; + $75 = (($74) + 84|0); + $76 = HEAP16[$75>>1]|0; + $77 = $76 << 16 >> 16; + $78 = HEAP32[$1>>2]|0; + $79 = (($78) + 86|0); + $80 = (($79) + ($77<<1)|0); + $81 = HEAP16[$80>>1]|0; + $82 = $81&65535; + $83 = HEAP32[$1>>2]|0; + $84 = (($83) + 84|0); + $85 = HEAP16[$84>>1]|0; + $86 = $85 << 16 >> 16; + $87 = HEAP32[$1>>2]|0; + $88 = (($87) + 128|0); + $89 = (($88) + ($86<<2)|0); + $90 = HEAP32[$89>>2]|0; + $91 = (($90) + 16|0); + $92 = HEAP16[$91>>1]|0; + $93 = $92&65535; + $94 = ($82|0)>=($93|0); + if (!($94)) { + break; + } + } + $95 = HEAP32[$1>>2]|0; + $96 = (($95) + 84|0); + $97 = HEAP16[$96>>1]|0; + $98 = $97 << 16 >> 16; + $99 = HEAP32[$1>>2]|0; + $100 = (($99) + 86|0); + $101 = (($100) + ($98<<1)|0); + $102 = HEAP16[$101>>1]|0; + $103 = (($102) + 1)<<16>>16; + HEAP16[$101>>1] = $103; + $104 = HEAP32[$1>>2]|0; + $105 = (($104) + 84|0); + $106 = HEAP16[$105>>1]|0; + $107 = $106 << 16 >> 16; + $108 = HEAP32[$1>>2]|0; + $109 = (($108) + 128|0); + $110 = (($109) + ($107<<2)|0); + $111 = HEAP32[$110>>2]|0; + HEAP32[$pPage>>2] = $111; + } + $112 = HEAP32[$1>>2]|0; + $113 = (($112) + 84|0); + $114 = HEAP16[$113>>1]|0; + $115 = $114 << 16 >> 16; + $116 = HEAP32[$1>>2]|0; + $117 = (($116) + 86|0); + $118 = (($117) + ($115<<1)|0); + $119 = HEAP16[$118>>1]|0; + $120 = $119&65535; + HEAP32[$iIdx>>2] = $120; + $121 = HEAP32[$iIdx>>2]|0; + $122 = HEAP32[$pPage>>2]|0; + $123 = (($122) + 16|0); + $124 = HEAP16[$123>>1]|0; + $125 = $124&65535; + $126 = ($121|0)==($125|0); + $127 = HEAP32[$1>>2]|0; + $128 = HEAP32[$pPage>>2]|0; + if ($126) { + $129 = (($128) + 5|0); + $130 = HEAP8[$129>>0]|0; + $131 = $130&255; + $132 = (($131) + 8)|0; + $133 = HEAP32[$pPage>>2]|0; + $134 = (($133) + 56|0); + $135 = HEAP32[$134>>2]|0; + $136 = (($135) + ($132)|0); + $137 = (_sqlite3Get4byte($136)|0); + $138 = (_moveToChild($127,$137)|0); + HEAP32[$rc>>2] = $138; + continue; + } else { + $139 = (($128) + 56|0); + $140 = HEAP32[$139>>2]|0; + $141 = HEAP32[$pPage>>2]|0; + $142 = (($141) + 18|0); + $143 = HEAP16[$142>>1]|0; + $144 = $143&65535; + $145 = HEAP32[$iIdx>>2]|0; + $146 = $145<<1; + $147 = HEAP32[$pPage>>2]|0; + $148 = (($147) + 64|0); + $149 = HEAP32[$148>>2]|0; + $150 = (($149) + ($146)|0); + $151 = HEAP8[$150>>0]|0; + $152 = $151&255; + $153 = $152 << 8; + $154 = HEAP32[$iIdx>>2]|0; + $155 = $154<<1; + $156 = HEAP32[$pPage>>2]|0; + $157 = (($156) + 64|0); + $158 = HEAP32[$157>>2]|0; + $159 = (($158) + ($155)|0); + $160 = (($159) + 1|0); + $161 = HEAP8[$160>>0]|0; + $162 = $161&255; + $163 = $153 | $162; + $164 = $144 & $163; + $165 = (($140) + ($164)|0); + $166 = (_sqlite3Get4byte($165)|0); + $167 = (_moveToChild($127,$166)|0); + HEAP32[$rc>>2] = $167; + continue; + } + } + if ((label|0) == 10) { + $62 = $nEntry; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (($62) + 4)|0; + $66 = $65; + $67 = HEAP32[$66>>2]|0; + $68 = HEAP32[$2>>2]|0; + $69 = $68; + $70 = $69; + HEAP32[$70>>2] = $64; + $71 = (($69) + 4)|0; + $72 = $71; + HEAP32[$72>>2] = $67; + HEAP32[$0>>2] = 0; + $169 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($169|0); + } + else if ((label|0) == 16) { + $168 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $168; + $169 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($169|0); + } + return 0|0; +} +function _sqlite3VtabSavepoint($db,$op,$iSavepoint) { + $db = $db|0; + $op = $op|0; + $iSavepoint = $iSavepoint|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; + var $9 = 0, $i = 0, $pMod = 0, $pVTab = 0, $rc = 0, $xMethod = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $i = sp + 12|0; + $pVTab = sp + 16|0; + $pMod = sp + 20|0; + $xMethod = sp + 24|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $op; + HEAP32[$2>>2] = $iSavepoint; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 320|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $60 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($60|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)==(0); + if (!($8)) { + label = 15; + break; + } + $9 = HEAP32[$i>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 296|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($9|0)<($12|0); + if (!($13)) { + label = 15; + break; + } + $14 = HEAP32[$i>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 320|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + ($14<<2)|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$pVTab>>2] = $19; + $20 = HEAP32[$pVTab>>2]|0; + $21 = (($20) + 4|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$22>>2]|0; + HEAP32[$pMod>>2] = $23; + $24 = HEAP32[$pVTab>>2]|0; + $25 = (($24) + 8|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)!=(0|0); + if ($27) { + $28 = HEAP32[$pMod>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = ($29|0)>=(2); + if ($30) { + $31 = HEAP32[$1>>2]|0; + if ((($31|0) == 2)) { + $39 = HEAP32[$pMod>>2]|0; + $40 = (($39) + 88|0); + $41 = HEAP32[$40>>2]|0; + HEAP32[$xMethod>>2] = $41; + } else if ((($31|0) == 0)) { + $32 = HEAP32[$pMod>>2]|0; + $33 = (($32) + 80|0); + $34 = HEAP32[$33>>2]|0; + HEAP32[$xMethod>>2] = $34; + $35 = HEAP32[$2>>2]|0; + $36 = (($35) + 1)|0; + $37 = HEAP32[$pVTab>>2]|0; + $38 = (($37) + 20|0); + HEAP32[$38>>2] = $36; + } else { + $42 = HEAP32[$pMod>>2]|0; + $43 = (($42) + 84|0); + $44 = HEAP32[$43>>2]|0; + HEAP32[$xMethod>>2] = $44; + } + $45 = HEAP32[$xMethod>>2]|0; + $46 = ($45|0)!=(0|0); + if ($46) { + $47 = HEAP32[$pVTab>>2]|0; + $48 = (($47) + 20|0); + $49 = HEAP32[$48>>2]|0; + $50 = HEAP32[$2>>2]|0; + $51 = ($49|0)>($50|0); + if ($51) { + $52 = HEAP32[$xMethod>>2]|0; + $53 = HEAP32[$pVTab>>2]|0; + $54 = (($53) + 8|0); + $55 = HEAP32[$54>>2]|0; + $56 = HEAP32[$2>>2]|0; + $57 = (FUNCTION_TABLE_iii[$52 & 127]($55,$56)|0); + HEAP32[$rc>>2] = $57; + } + } + } + } + $58 = HEAP32[$i>>2]|0; + $59 = (($58) + 1)|0; + HEAP32[$i>>2] = $59; + } + if ((label|0) == 15) { + $60 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($60|0); + } + return 0|0; +} +function _sqlite3BtreeTripAllCursors($pBtree,$errCode) { + $pBtree = $pBtree|0; + $errCode = $errCode|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $p = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $p = sp + 4|0; + $i = sp + 8|0; + HEAP32[$0>>2] = $pBtree; + HEAP32[$1>>2] = $errCode; + $2 = HEAP32[$0>>2]|0; + $3 = ($2|0)==(0|0); + if ($3) { + STACKTOP = sp;return; + } + $4 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($4); + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 4|0); + $7 = HEAP32[$6>>2]|0; + $8 = (($7) + 8|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$p>>2] = $9; + while(1) { + $10 = HEAP32[$p>>2]|0; + $11 = ($10|0)!=(0|0); + if (!($11)) { + break; + } + $12 = HEAP32[$p>>2]|0; + _sqlite3BtreeClearCursor($12); + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 81|0); + HEAP8[$14>>0] = 4; + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$p>>2]|0; + $17 = (($16) + 76|0); + HEAP32[$17>>2] = $15; + HEAP32[$i>>2] = 0; + while(1) { + $18 = HEAP32[$i>>2]|0; + $19 = HEAP32[$p>>2]|0; + $20 = (($19) + 84|0); + $21 = HEAP16[$20>>1]|0; + $22 = $21 << 16 >> 16; + $23 = ($18|0)<=($22|0); + if (!($23)) { + break; + } + $24 = HEAP32[$i>>2]|0; + $25 = HEAP32[$p>>2]|0; + $26 = (($25) + 128|0); + $27 = (($26) + ($24<<2)|0); + $28 = HEAP32[$27>>2]|0; + _releasePage($28); + $29 = HEAP32[$i>>2]|0; + $30 = HEAP32[$p>>2]|0; + $31 = (($30) + 128|0); + $32 = (($31) + ($29<<2)|0); + HEAP32[$32>>2] = 0; + $33 = HEAP32[$i>>2]|0; + $34 = (($33) + 1)|0; + HEAP32[$i>>2] = $34; + } + $35 = HEAP32[$p>>2]|0; + $36 = (($35) + 8|0); + $37 = HEAP32[$36>>2]|0; + HEAP32[$p>>2] = $37; + } + STACKTOP = sp;return; +} +function _sqlite3BtreeSavepoint($p,$op,$iSavepoint) { + $p = $p|0; + $op = $op|0; + $iSavepoint = $iSavepoint|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $pBt = sp + 12|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $op; + HEAP32[$2>>2] = $iSavepoint; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + $42 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($42|0); + } + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 8|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = ($8|0)==(2); + if (!($9)) { + $42 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($42|0); + } + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 4|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$pBt>>2] = $12; + $13 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($13); + $14 = HEAP32[$pBt>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = (_sqlite3PagerSavepoint($15,$16,$17)|0); + HEAP32[$rc>>2] = $18; + $19 = HEAP32[$rc>>2]|0; + $20 = ($19|0)==(0); + if (!($20)) { + $42 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($42|0); + } + $21 = HEAP32[$2>>2]|0; + $22 = ($21|0)<(0); + if ($22) { + $23 = HEAP32[$pBt>>2]|0; + $24 = (($23) + 22|0); + $25 = HEAP16[$24>>1]|0; + $26 = $25&65535; + $27 = $26 & 8; + $28 = ($27|0)!=(0); + if ($28) { + $29 = HEAP32[$pBt>>2]|0; + $30 = (($29) + 44|0); + HEAP32[$30>>2] = 0; + } + } + $31 = HEAP32[$pBt>>2]|0; + $32 = (_newDatabase($31)|0); + HEAP32[$rc>>2] = $32; + $33 = HEAP32[$pBt>>2]|0; + $34 = (($33) + 12|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + 56|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + 28|0); + $39 = (_sqlite3Get4byte($38)|0); + $40 = HEAP32[$pBt>>2]|0; + $41 = (($40) + 44|0); + HEAP32[$41>>2] = $39; + $42 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($42|0); +} +function _sqlite3BtreeBeginStmt($p,$iStatement) { + $p = $p|0; + $iStatement = $iStatement|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $rc = sp + 4|0; + $pBt = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iStatement; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pBt>>2] = $4; + $5 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($5); + $6 = HEAP32[$pBt>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (_sqlite3PagerOpenSavepoint($7,$8)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($10|0); +} +function _allocateCursor($p,$iCur,$nField,$iDb,$isBtreeCursor) { + $p = $p|0; + $iCur = $iCur|0; + $nField = $nField|0; + $iDb = $iDb|0; + $isBtreeCursor = $isBtreeCursor|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $8 = 0, $9 = 0, $nByte = 0, $pCx = 0, $pMem = 0, dest = 0, label = 0; + var sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $pMem = sp + 16|0; + $nByte = sp + 20|0; + $pCx = sp + 24|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iCur; + HEAP32[$2>>2] = $nField; + HEAP32[$3>>2] = $iDb; + HEAP32[$4>>2] = $isBtreeCursor; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 28|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (($7) - ($8))|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 8|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + (($9*40)|0)|0); + HEAP32[$pMem>>2] = $13; + HEAP32[$pCx>>2] = 0; + $14 = HEAP32[$2>>2]|0; + $15 = $14<<3; + $16 = (96 + ($15))|0; + $17 = HEAP32[$4>>2]|0; + $18 = ($17|0)!=(0); + if ($18) { + $19 = (_sqlite3BtreeCursorSize()|0); + $21 = $19; + } else { + $21 = 0; + } + $20 = (($16) + ($21))|0; + HEAP32[$nByte>>2] = $20; + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 56|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + ($22<<2)|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)!=(0|0); + if ($28) { + $29 = HEAP32[$0>>2]|0; + $30 = HEAP32[$1>>2]|0; + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 56|0); + $33 = HEAP32[$32>>2]|0; + $34 = (($33) + ($30<<2)|0); + $35 = HEAP32[$34>>2]|0; + _sqlite3VdbeFreeCursor($29,$35); + $36 = HEAP32[$1>>2]|0; + $37 = HEAP32[$0>>2]|0; + $38 = (($37) + 56|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + ($36<<2)|0); + HEAP32[$40>>2] = 0; + } + $41 = HEAP32[$pMem>>2]|0; + $42 = HEAP32[$nByte>>2]|0; + $43 = (_sqlite3VdbeMemGrow($41,$42,0)|0); + $44 = (0)==($43|0); + if (!($44)) { + $74 = HEAP32[$pCx>>2]|0; + STACKTOP = sp;return ($74|0); + } + $45 = HEAP32[$pMem>>2]|0; + $46 = (($45) + 4|0); + $47 = HEAP32[$46>>2]|0; + HEAP32[$pCx>>2] = $47; + $48 = HEAP32[$1>>2]|0; + $49 = HEAP32[$0>>2]|0; + $50 = (($49) + 56|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + ($48<<2)|0); + HEAP32[$52>>2] = $47; + $53 = HEAP32[$pCx>>2]|0; + dest=$53+0|0; stop=dest+96|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $54 = HEAP32[$3>>2]|0; + $55 = $54&255; + $56 = HEAP32[$pCx>>2]|0; + $57 = (($56) + 24|0); + HEAP8[$57>>0] = $55; + $58 = HEAP32[$2>>2]|0; + $59 = $58&65535; + $60 = HEAP32[$pCx>>2]|0; + $61 = (($60) + 20|0); + HEAP16[$61>>1] = $59; + $62 = HEAP32[$4>>2]|0; + $63 = ($62|0)!=(0); + if (!($63)) { + $74 = HEAP32[$pCx>>2]|0; + STACKTOP = sp;return ($74|0); + } + $64 = HEAP32[$2>>2]|0; + $65 = $64<<3; + $66 = (96 + ($65))|0; + $67 = HEAP32[$pMem>>2]|0; + $68 = (($67) + 4|0); + $69 = HEAP32[$68>>2]|0; + $70 = (($69) + ($66)|0); + $71 = HEAP32[$pCx>>2]|0; + HEAP32[$71>>2] = $70; + $72 = HEAP32[$pCx>>2]|0; + $73 = HEAP32[$72>>2]|0; + _sqlite3BtreeCursorZero($73); + $74 = HEAP32[$pCx>>2]|0; + STACKTOP = sp;return ($74|0); +} +function _sqlite3BtreeCursor($p,$iTable,$wrFlag,$pKeyInfo,$pCur) { + $p = $p|0; + $iTable = $iTable|0; + $wrFlag = $wrFlag|0; + $pKeyInfo = $pKeyInfo|0; + $pCur = $pCur|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $rc = sp + 16|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iTable; + HEAP32[$2>>2] = $wrFlag; + HEAP32[$3>>2] = $pKeyInfo; + HEAP32[$4>>2] = $pCur; + $5 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($5); + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$3>>2]|0; + $10 = HEAP32[$4>>2]|0; + $11 = (_btreeCursor($6,$7,$8,$9,$10)|0); + HEAP32[$rc>>2] = $11; + $12 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($12|0); +} +function _sqlite3BtreeCursorHints($pCsr,$mask) { + $pCsr = $pCsr|0; + $mask = $mask|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $mask; + $2 = HEAP32[$1>>2]|0; + $3 = $2&255; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 82|0); + HEAP8[$5>>0] = $3; + STACKTOP = sp;return; +} +function _sqlite3BtreeCreateTable($p,$piTable,$flags) { + $p = $p|0; + $piTable = $piTable|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $piTable; + HEAP32[$2>>2] = $flags; + $3 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($3); + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = (_btreeCreateTable($4,$5,$6)|0); + HEAP32[$rc>>2] = $7; + $8 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($8|0); +} +function _sqlite3VdbeSorterInit($db,$pCsr) { + $db = $db|0; + $pCsr = $pCsr|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $d = 0, $mxCache = 0, $pSorter = 0, $pgsz = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $pgsz = sp + 8|0; + $mxCache = sp + 12|0; + $pSorter = sp + 16|0; + $d = sp + 20|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pCsr; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3DbMallocZero($3,56)|0); + HEAP32[$pSorter>>2] = $4; + $5 = HEAP32[$2>>2]|0; + $6 = (($5) + 64|0); + HEAP32[$6>>2] = $4; + $7 = HEAP32[$pSorter>>2]|0; + $8 = ($7|0)==(0|0); + if ($8) { + HEAP32[$0>>2] = 7; + $46 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($46|0); + } + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 8|0); + $11 = HEAP32[$10>>2]|0; + $12 = (_sqlite3VdbeAllocUnpackedRecord($11,0,0,$d)|0); + $13 = HEAP32[$pSorter>>2]|0; + $14 = (($13) + 52|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$pSorter>>2]|0; + $16 = (($15) + 52|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)==(0|0); + if ($18) { + HEAP32[$0>>2] = 7; + $46 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($46|0); + } + $19 = HEAP32[$1>>2]|0; + $20 = (_sqlite3TempInMemory($19)|0); + $21 = ($20|0)!=(0); + if (!($21)) { + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 16|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + 4|0); + $26 = HEAP32[$25>>2]|0; + $27 = (_sqlite3BtreeGetPageSize($26)|0); + HEAP32[$pgsz>>2] = $27; + $28 = HEAP32[$pgsz>>2]|0; + $29 = ($28*10)|0; + $30 = HEAP32[$pSorter>>2]|0; + $31 = (($30) + 28|0); + HEAP32[$31>>2] = $29; + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 16|0); + $34 = HEAP32[$33>>2]|0; + $35 = (($34) + 12|0); + $36 = HEAP32[$35>>2]|0; + $37 = (($36) + 80|0); + $38 = HEAP32[$37>>2]|0; + HEAP32[$mxCache>>2] = $38; + $39 = HEAP32[$mxCache>>2]|0; + $40 = ($39|0)<(10); + $$ = $40 ? 10 : $38; + HEAP32[$mxCache>>2] = $$; + $41 = HEAP32[$mxCache>>2]|0; + $42 = HEAP32[$pgsz>>2]|0; + $43 = Math_imul($41, $42)|0; + $44 = HEAP32[$pSorter>>2]|0; + $45 = (($44) + 32|0); + HEAP32[$45>>2] = $43; + } + HEAP32[$0>>2] = 0; + $46 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($46|0); +} +function _sqlite3VdbeFreeCursor($p,$pCx) { + $p = $p|0; + $pCx = $pCx|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $pModule = 0, $pVtabCursor = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $pVtabCursor = sp + 4|0; + $pModule = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pCx; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)==(0|0); + if ($3) { + STACKTOP = sp;return; + } + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$1>>2]|0; + _sqlite3VdbeSorterClose($5,$6); + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0|0); + $11 = HEAP32[$1>>2]|0; + if ($10) { + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + (_sqlite3BtreeClose($13)|0); + } else { + $14 = HEAP32[$11>>2]|0; + $15 = ($14|0)!=(0|0); + if ($15) { + $16 = HEAP32[$1>>2]|0; + $17 = HEAP32[$16>>2]|0; + (_sqlite3BtreeCloseCursor($17)|0); + } + } + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 32|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)!=(0|0); + if (!($21)) { + STACKTOP = sp;return; + } + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 32|0); + $24 = HEAP32[$23>>2]|0; + HEAP32[$pVtabCursor>>2] = $24; + $25 = HEAP32[$pVtabCursor>>2]|0; + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$26>>2]|0; + HEAP32[$pModule>>2] = $27; + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 88|0); + $30 = HEAP16[$29>>1]|0; + $31 = $30 & -13; + $32 = $31 | 4; + HEAP16[$29>>1] = $32; + $33 = HEAP32[$pModule>>2]|0; + $34 = (($33) + 28|0); + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$pVtabCursor>>2]|0; + (FUNCTION_TABLE_ii[$35 & 63]($36)|0); + $37 = HEAP32[$0>>2]|0; + $38 = (($37) + 88|0); + $39 = HEAP16[$38>>1]|0; + $40 = $39 & -13; + HEAP16[$38>>1] = $40; + STACKTOP = sp;return; +} +function _sqlite3BtreeEof($pCur) { + $pCur = $pCur|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pCur; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 81|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + $5 = (1)!=($4|0); + $6 = $5&1; + STACKTOP = sp;return ($6|0); +} +function _sqlite3BtreeLast($pCur,$pRes) { + $pCur = $pCur|0; + $pRes = $pRes|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$1>>2] = $pCur; + HEAP32[$2>>2] = $pRes; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 81|0); + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = (1)==($6|0); + if ($7) { + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 80|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = $11 & 8; + $13 = ($12|0)!=(0); + if ($13) { + HEAP32[$0>>2] = 0; + $37 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($37|0); + } + } + $14 = HEAP32[$1>>2]|0; + $15 = (_moveToRoot($14)|0); + HEAP32[$rc>>2] = $15; + $16 = HEAP32[$rc>>2]|0; + $17 = ($16|0)==(0); + do { + if ($17) { + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 81|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = (0)==($21|0); + $23 = HEAP32[$2>>2]|0; + if ($22) { + HEAP32[$23>>2] = 1; + break; + } + HEAP32[$23>>2] = 0; + $24 = HEAP32[$1>>2]|0; + $25 = (_moveToRightmost($24)|0); + HEAP32[$rc>>2] = $25; + $26 = HEAP32[$rc>>2]|0; + $27 = ($26|0)==(0); + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 80|0); + $30 = HEAP8[$29>>0]|0; + $31 = $30&255; + if ($27) { + $32 = $31 | 8; + $33 = $32&255; + HEAP8[$29>>0] = $33; + break; + } else { + $34 = $31 & -9; + $35 = $34&255; + HEAP8[$29>>0] = $35; + break; + } + } + } while(0); + $36 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $36; + $37 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($37|0); +} +function _sqlite3BtreeInsert($pCur,$pKey,$0,$1,$pData,$nData,$nZero,$appendBias,$seekResult) { + $pCur = $pCur|0; + $pKey = $pKey|0; + $0 = $0|0; + $1 = $1|0; + $pData = $pData|0; + $nData = $nData|0; + $nZero = $nZero|0; + $appendBias = $appendBias|0; + $seekResult = $seekResult|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; + var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; + var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; + var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0; + var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $idx = 0, $loc = 0, $newCell = 0, $oldCell = 0, $p = 0, $pBt = 0, $pPage = 0, $rc = 0, $szNew = 0, $szOld = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $2 = sp + 12|0; + $3 = sp + 72|0; + $4 = sp + 68|0; + $5 = sp; + $6 = sp + 64|0; + $7 = sp + 60|0; + $8 = sp + 56|0; + $9 = sp + 52|0; + $10 = sp + 48|0; + $rc = sp + 44|0; + $loc = sp + 28|0; + $szNew = sp + 8|0; + $idx = sp + 16|0; + $pPage = sp + 24|0; + $p = sp + 20|0; + $pBt = sp + 32|0; + $oldCell = sp + 36|0; + $newCell = sp + 40|0; + $szOld = sp + 76|0; + HEAP32[$3>>2] = $pCur; + HEAP32[$4>>2] = $pKey; + $11 = $5; + $12 = $11; + HEAP32[$12>>2] = $0; + $13 = (($11) + 4)|0; + $14 = $13; + HEAP32[$14>>2] = $1; + HEAP32[$6>>2] = $pData; + HEAP32[$7>>2] = $nData; + HEAP32[$8>>2] = $nZero; + HEAP32[$9>>2] = $appendBias; + HEAP32[$10>>2] = $seekResult; + $15 = HEAP32[$10>>2]|0; + HEAP32[$loc>>2] = $15; + HEAP32[$szNew>>2] = 0; + $16 = HEAP32[$3>>2]|0; + $17 = HEAP32[$16>>2]|0; + HEAP32[$p>>2] = $17; + $18 = HEAP32[$p>>2]|0; + $19 = (($18) + 4|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$pBt>>2] = $20; + HEAP32[$newCell>>2] = 0; + $21 = HEAP32[$3>>2]|0; + $22 = (($21) + 81|0); + $23 = HEAP8[$22>>0]|0; + $24 = $23&255; + $25 = ($24|0)==(4); + if ($25) { + $26 = HEAP32[$3>>2]|0; + $27 = (($26) + 76|0); + $28 = HEAP32[$27>>2]|0; + HEAP32[$2>>2] = $28; + $243 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($243|0); + } + $29 = HEAP32[$pBt>>2]|0; + $30 = HEAP32[$3>>2]|0; + $31 = (($30) + 68|0); + $32 = HEAP32[$31>>2]|0; + $33 = HEAP32[$3>>2]|0; + $34 = (_saveAllCursors($29,$32,$33)|0); + HEAP32[$rc>>2] = $34; + $35 = HEAP32[$rc>>2]|0; + $36 = ($35|0)!=(0); + if ($36) { + $37 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $37; + $243 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($243|0); + } + $38 = HEAP32[$3>>2]|0; + $39 = (($38) + 16|0); + $40 = HEAP32[$39>>2]|0; + $41 = ($40|0)==(0|0); + if ($41) { + $42 = HEAP32[$p>>2]|0; + $43 = $5; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = (($43) + 4)|0; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + _invalidateIncrblobCursors($42,$45,$48,0); + $49 = HEAP32[$3>>2]|0; + $50 = (($49) + 80|0); + $51 = HEAP8[$50>>0]|0; + $52 = $51&255; + $53 = $52 & 2; + $54 = ($53|0)!=(0); + if ($54) { + $55 = $5; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = (($55) + 4)|0; + $59 = $58; + $60 = HEAP32[$59>>2]|0; + $61 = ($60|0)>(0); + $62 = ($60|0)==(0); + $63 = ($57>>>0)>(0); + $64 = $62 & $63; + $65 = $61 | $64; + if ($65) { + $66 = HEAP32[$3>>2]|0; + $67 = (($66) + 24|0); + $68 = $67; + $69 = $68; + $70 = HEAP32[$69>>2]|0; + $71 = (($68) + 4)|0; + $72 = $71; + $73 = HEAP32[$72>>2]|0; + $74 = $5; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = (($74) + 4)|0; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = (_i64Subtract(($76|0),($79|0),1,0)|0); + $81 = tempRet0; + $82 = ($70|0)==($80|0); + $83 = ($73|0)==($81|0); + $84 = $82 & $83; + if ($84) { + HEAP32[$loc>>2] = -1; + } + } + } + } + $85 = HEAP32[$loc>>2]|0; + $86 = ($85|0)!=(0); + if (!($86)) { + $87 = HEAP32[$3>>2]|0; + $88 = HEAP32[$4>>2]|0; + $89 = $5; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + $92 = (($89) + 4)|0; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = HEAP32[$9>>2]|0; + $96 = (_btreeMoveto($87,$88,$91,$94,$95,$loc)|0); + HEAP32[$rc>>2] = $96; + $97 = HEAP32[$rc>>2]|0; + $98 = ($97|0)!=(0); + if ($98) { + $99 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $99; + $243 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($243|0); + } + } + $100 = HEAP32[$3>>2]|0; + $101 = (($100) + 84|0); + $102 = HEAP16[$101>>1]|0; + $103 = $102 << 16 >> 16; + $104 = HEAP32[$3>>2]|0; + $105 = (($104) + 128|0); + $106 = (($105) + ($103<<2)|0); + $107 = HEAP32[$106>>2]|0; + HEAP32[$pPage>>2] = $107; + $108 = HEAP32[$pBt>>2]|0; + _allocateTempSpace($108); + $109 = HEAP32[$pBt>>2]|0; + $110 = (($109) + 80|0); + $111 = HEAP32[$110>>2]|0; + HEAP32[$newCell>>2] = $111; + $112 = HEAP32[$newCell>>2]|0; + $113 = ($112|0)==(0|0); + if ($113) { + HEAP32[$2>>2] = 7; + $243 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($243|0); + } + $114 = HEAP32[$pPage>>2]|0; + $115 = HEAP32[$newCell>>2]|0; + $116 = HEAP32[$4>>2]|0; + $117 = $5; + $118 = $117; + $119 = HEAP32[$118>>2]|0; + $120 = (($117) + 4)|0; + $121 = $120; + $122 = HEAP32[$121>>2]|0; + $123 = HEAP32[$6>>2]|0; + $124 = HEAP32[$7>>2]|0; + $125 = HEAP32[$8>>2]|0; + $126 = (_fillInCell($114,$115,$116,$119,$122,$123,$124,$125,$szNew)|0); + HEAP32[$rc>>2] = $126; + $127 = HEAP32[$rc>>2]|0; + $128 = ($127|0)!=(0); + do { + if (!($128)) { + $129 = HEAP32[$3>>2]|0; + $130 = (($129) + 84|0); + $131 = HEAP16[$130>>1]|0; + $132 = $131 << 16 >> 16; + $133 = HEAP32[$3>>2]|0; + $134 = (($133) + 86|0); + $135 = (($134) + ($132<<1)|0); + $136 = HEAP16[$135>>1]|0; + $137 = $136&65535; + HEAP32[$idx>>2] = $137; + $138 = HEAP32[$loc>>2]|0; + $139 = ($138|0)==(0); + if ($139) { + $140 = HEAP32[$pPage>>2]|0; + $141 = (($140) + 68|0); + $142 = HEAP32[$141>>2]|0; + $143 = (_sqlite3PagerWrite($142)|0); + HEAP32[$rc>>2] = $143; + $144 = HEAP32[$rc>>2]|0; + $145 = ($144|0)!=(0); + if ($145) { + break; + } + $146 = HEAP32[$pPage>>2]|0; + $147 = (($146) + 56|0); + $148 = HEAP32[$147>>2]|0; + $149 = HEAP32[$pPage>>2]|0; + $150 = (($149) + 18|0); + $151 = HEAP16[$150>>1]|0; + $152 = $151&65535; + $153 = HEAP32[$idx>>2]|0; + $154 = $153<<1; + $155 = HEAP32[$pPage>>2]|0; + $156 = (($155) + 64|0); + $157 = HEAP32[$156>>2]|0; + $158 = (($157) + ($154)|0); + $159 = HEAP8[$158>>0]|0; + $160 = $159&255; + $161 = $160 << 8; + $162 = HEAP32[$idx>>2]|0; + $163 = $162<<1; + $164 = HEAP32[$pPage>>2]|0; + $165 = (($164) + 64|0); + $166 = HEAP32[$165>>2]|0; + $167 = (($166) + ($163)|0); + $168 = (($167) + 1|0); + $169 = HEAP8[$168>>0]|0; + $170 = $169&255; + $171 = $161 | $170; + $172 = $152 & $171; + $173 = (($148) + ($172)|0); + HEAP32[$oldCell>>2] = $173; + $174 = HEAP32[$pPage>>2]|0; + $175 = (($174) + 3|0); + $176 = HEAP8[$175>>0]|0; + $177 = ($176<<24>>24)!=(0); + if (!($177)) { + $178 = HEAP32[$newCell>>2]|0; + $179 = HEAP32[$oldCell>>2]|0; + ;HEAP8[$178+0>>0]=HEAP8[$179+0>>0]|0;HEAP8[$178+1>>0]=HEAP8[$179+1>>0]|0;HEAP8[$178+2>>0]=HEAP8[$179+2>>0]|0;HEAP8[$178+3>>0]=HEAP8[$179+3>>0]|0; + } + $180 = HEAP32[$pPage>>2]|0; + $181 = HEAP32[$oldCell>>2]|0; + $182 = (_cellSizePtr($180,$181)|0); + HEAP16[$szOld>>1] = $182; + $183 = HEAP32[$pPage>>2]|0; + $184 = HEAP32[$oldCell>>2]|0; + $185 = (_clearCell($183,$184)|0); + HEAP32[$rc>>2] = $185; + $186 = HEAP32[$pPage>>2]|0; + $187 = HEAP32[$idx>>2]|0; + $188 = HEAP16[$szOld>>1]|0; + $189 = $188&65535; + _dropCell($186,$187,$189,$rc); + $190 = HEAP32[$rc>>2]|0; + $191 = ($190|0)!=(0); + if ($191) { + break; + } + } else { + $192 = HEAP32[$loc>>2]|0; + $193 = ($192|0)<(0); + if ($193) { + $194 = HEAP32[$pPage>>2]|0; + $195 = (($194) + 16|0); + $196 = HEAP16[$195>>1]|0; + $197 = $196&65535; + $198 = ($197|0)>(0); + if ($198) { + $199 = HEAP32[$3>>2]|0; + $200 = (($199) + 84|0); + $201 = HEAP16[$200>>1]|0; + $202 = $201 << 16 >> 16; + $203 = HEAP32[$3>>2]|0; + $204 = (($203) + 86|0); + $205 = (($204) + ($202<<1)|0); + $206 = HEAP16[$205>>1]|0; + $207 = (($206) + 1)<<16>>16; + HEAP16[$205>>1] = $207; + $208 = $207&65535; + HEAP32[$idx>>2] = $208; + } + } + } + $209 = HEAP32[$pPage>>2]|0; + $210 = HEAP32[$idx>>2]|0; + $211 = HEAP32[$newCell>>2]|0; + $212 = HEAP32[$szNew>>2]|0; + _insertCell($209,$210,$211,$212,0,0,$rc); + $213 = HEAP32[$3>>2]|0; + $214 = (($213) + 24|0); + $215 = (($214) + 26|0); + HEAP16[$215>>1] = 0; + $216 = HEAP32[$rc>>2]|0; + $217 = ($216|0)==(0); + if ($217) { + $218 = HEAP32[$pPage>>2]|0; + $219 = (($218) + 1|0); + $220 = HEAP8[$219>>0]|0; + $221 = $220&255; + $222 = ($221|0)!=(0); + if ($222) { + $223 = HEAP32[$3>>2]|0; + $224 = (($223) + 80|0); + $225 = HEAP8[$224>>0]|0; + $226 = $225&255; + $227 = $226 & -3; + $228 = $227&255; + HEAP8[$224>>0] = $228; + $229 = HEAP32[$3>>2]|0; + $230 = (_balance($229)|0); + HEAP32[$rc>>2] = $230; + $231 = HEAP32[$3>>2]|0; + $232 = (($231) + 84|0); + $233 = HEAP16[$232>>1]|0; + $234 = $233 << 16 >> 16; + $235 = HEAP32[$3>>2]|0; + $236 = (($235) + 128|0); + $237 = (($236) + ($234<<2)|0); + $238 = HEAP32[$237>>2]|0; + $239 = (($238) + 1|0); + HEAP8[$239>>0] = 0; + $240 = HEAP32[$3>>2]|0; + $241 = (($240) + 81|0); + HEAP8[$241>>0] = 0; + } + } + } + } while(0); + $242 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $242; + $243 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($243|0); +} +function _sqlite3BtreeDelete($pCur) { + $pCur = $pCur|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $iCellDepth = 0, $iCellIdx = 0, $n = 0, $nCell = 0, $notUsed = 0, $p = 0, $pBt = 0, $pCell = 0, $pLeaf = 0, $pPage = 0, $pTmp = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 52|0; + $1 = sp + 48|0; + $p = sp + 44|0; + $pBt = sp + 40|0; + $rc = sp + 36|0; + $pPage = sp + 32|0; + $pCell = sp + 28|0; + $iCellIdx = sp + 24|0; + $iCellDepth = sp + 16|0; + $notUsed = sp + 12|0; + $pLeaf = sp + 8|0; + $nCell = sp + 4|0; + $n = sp; + $pTmp = sp + 20|0; + HEAP32[$1>>2] = $pCur; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $3; + $4 = HEAP32[$p>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$pBt>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 84|0); + $9 = HEAP16[$8>>1]|0; + $10 = $9 << 16 >> 16; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 86|0); + $13 = (($12) + ($10<<1)|0); + $14 = HEAP16[$13>>1]|0; + $15 = $14&65535; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 84|0); + $18 = HEAP16[$17>>1]|0; + $19 = $18 << 16 >> 16; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 128|0); + $22 = (($21) + ($19<<2)|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + 16|0); + $25 = HEAP16[$24>>1]|0; + $26 = $25&65535; + $27 = ($15|0)>=($26|0); + if (!($27)) { + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 81|0); + $30 = HEAP8[$29>>0]|0; + $31 = $30&255; + $32 = ($31|0)!=(1); + if (!($32)) { + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 84|0); + $35 = HEAP16[$34>>1]|0; + $36 = $35 << 16 >> 16; + HEAP32[$iCellDepth>>2] = $36; + $37 = HEAP32[$iCellDepth>>2]|0; + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 86|0); + $40 = (($39) + ($37<<1)|0); + $41 = HEAP16[$40>>1]|0; + $42 = $41&65535; + HEAP32[$iCellIdx>>2] = $42; + $43 = HEAP32[$iCellDepth>>2]|0; + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 128|0); + $46 = (($45) + ($43<<2)|0); + $47 = HEAP32[$46>>2]|0; + HEAP32[$pPage>>2] = $47; + $48 = HEAP32[$pPage>>2]|0; + $49 = (($48) + 56|0); + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$pPage>>2]|0; + $52 = (($51) + 18|0); + $53 = HEAP16[$52>>1]|0; + $54 = $53&65535; + $55 = HEAP32[$iCellIdx>>2]|0; + $56 = $55<<1; + $57 = HEAP32[$pPage>>2]|0; + $58 = (($57) + 64|0); + $59 = HEAP32[$58>>2]|0; + $60 = (($59) + ($56)|0); + $61 = HEAP8[$60>>0]|0; + $62 = $61&255; + $63 = $62 << 8; + $64 = HEAP32[$iCellIdx>>2]|0; + $65 = $64<<1; + $66 = HEAP32[$pPage>>2]|0; + $67 = (($66) + 64|0); + $68 = HEAP32[$67>>2]|0; + $69 = (($68) + ($65)|0); + $70 = (($69) + 1|0); + $71 = HEAP8[$70>>0]|0; + $72 = $71&255; + $73 = $63 | $72; + $74 = $54 & $73; + $75 = (($50) + ($74)|0); + HEAP32[$pCell>>2] = $75; + $76 = HEAP32[$pPage>>2]|0; + $77 = (($76) + 3|0); + $78 = HEAP8[$77>>0]|0; + $79 = ($78<<24>>24)!=(0); + if (!($79)) { + HEAP32[$notUsed>>2] = 0; + $80 = HEAP32[$1>>2]|0; + $81 = (_sqlite3BtreePrevious($80,$notUsed)|0); + HEAP32[$rc>>2] = $81; + $82 = HEAP32[$rc>>2]|0; + $83 = ($82|0)!=(0); + if ($83) { + $84 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $84; + $242 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($242|0); + } + } + $85 = HEAP32[$pBt>>2]|0; + $86 = HEAP32[$1>>2]|0; + $87 = (($86) + 68|0); + $88 = HEAP32[$87>>2]|0; + $89 = HEAP32[$1>>2]|0; + $90 = (_saveAllCursors($85,$88,$89)|0); + HEAP32[$rc>>2] = $90; + $91 = HEAP32[$rc>>2]|0; + $92 = ($91|0)!=(0); + if ($92) { + $93 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $93; + $242 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($242|0); + } + $94 = HEAP32[$1>>2]|0; + $95 = (($94) + 16|0); + $96 = HEAP32[$95>>2]|0; + $97 = ($96|0)==(0|0); + if ($97) { + $98 = HEAP32[$p>>2]|0; + $99 = HEAP32[$1>>2]|0; + $100 = (($99) + 24|0); + $101 = $100; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = (($101) + 4)|0; + $105 = $104; + $106 = HEAP32[$105>>2]|0; + _invalidateIncrblobCursors($98,$103,$106,0); + } + $107 = HEAP32[$pPage>>2]|0; + $108 = (($107) + 68|0); + $109 = HEAP32[$108>>2]|0; + $110 = (_sqlite3PagerWrite($109)|0); + HEAP32[$rc>>2] = $110; + $111 = HEAP32[$rc>>2]|0; + $112 = ($111|0)!=(0); + if ($112) { + $113 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $113; + $242 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($242|0); + } + $114 = HEAP32[$pPage>>2]|0; + $115 = HEAP32[$pCell>>2]|0; + $116 = (_clearCell($114,$115)|0); + HEAP32[$rc>>2] = $116; + $117 = HEAP32[$pPage>>2]|0; + $118 = HEAP32[$iCellIdx>>2]|0; + $119 = HEAP32[$pPage>>2]|0; + $120 = HEAP32[$pCell>>2]|0; + $121 = (_cellSizePtr($119,$120)|0); + $122 = $121&65535; + _dropCell($117,$118,$122,$rc); + $123 = HEAP32[$rc>>2]|0; + $124 = ($123|0)!=(0); + if ($124) { + $125 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $125; + $242 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($242|0); + } + $126 = HEAP32[$pPage>>2]|0; + $127 = (($126) + 3|0); + $128 = HEAP8[$127>>0]|0; + $129 = ($128<<24>>24)!=(0); + if (!($129)) { + $130 = HEAP32[$1>>2]|0; + $131 = (($130) + 84|0); + $132 = HEAP16[$131>>1]|0; + $133 = $132 << 16 >> 16; + $134 = HEAP32[$1>>2]|0; + $135 = (($134) + 128|0); + $136 = (($135) + ($133<<2)|0); + $137 = HEAP32[$136>>2]|0; + HEAP32[$pLeaf>>2] = $137; + $138 = HEAP32[$iCellDepth>>2]|0; + $139 = (($138) + 1)|0; + $140 = HEAP32[$1>>2]|0; + $141 = (($140) + 128|0); + $142 = (($141) + ($139<<2)|0); + $143 = HEAP32[$142>>2]|0; + $144 = (($143) + 72|0); + $145 = HEAP32[$144>>2]|0; + HEAP32[$n>>2] = $145; + $146 = HEAP32[$pLeaf>>2]|0; + $147 = (($146) + 56|0); + $148 = HEAP32[$147>>2]|0; + $149 = HEAP32[$pLeaf>>2]|0; + $150 = (($149) + 18|0); + $151 = HEAP16[$150>>1]|0; + $152 = $151&65535; + $153 = HEAP32[$pLeaf>>2]|0; + $154 = (($153) + 16|0); + $155 = HEAP16[$154>>1]|0; + $156 = $155&65535; + $157 = (($156) - 1)|0; + $158 = $157<<1; + $159 = HEAP32[$pLeaf>>2]|0; + $160 = (($159) + 64|0); + $161 = HEAP32[$160>>2]|0; + $162 = (($161) + ($158)|0); + $163 = HEAP8[$162>>0]|0; + $164 = $163&255; + $165 = $164 << 8; + $166 = HEAP32[$pLeaf>>2]|0; + $167 = (($166) + 16|0); + $168 = HEAP16[$167>>1]|0; + $169 = $168&65535; + $170 = (($169) - 1)|0; + $171 = $170<<1; + $172 = HEAP32[$pLeaf>>2]|0; + $173 = (($172) + 64|0); + $174 = HEAP32[$173>>2]|0; + $175 = (($174) + ($171)|0); + $176 = (($175) + 1|0); + $177 = HEAP8[$176>>0]|0; + $178 = $177&255; + $179 = $165 | $178; + $180 = $152 & $179; + $181 = (($148) + ($180)|0); + HEAP32[$pCell>>2] = $181; + $182 = HEAP32[$pLeaf>>2]|0; + $183 = HEAP32[$pCell>>2]|0; + $184 = (_cellSizePtr($182,$183)|0); + $185 = $184&65535; + HEAP32[$nCell>>2] = $185; + $186 = HEAP32[$pBt>>2]|0; + _allocateTempSpace($186); + $187 = HEAP32[$pBt>>2]|0; + $188 = (($187) + 80|0); + $189 = HEAP32[$188>>2]|0; + HEAP32[$pTmp>>2] = $189; + $190 = HEAP32[$pLeaf>>2]|0; + $191 = (($190) + 68|0); + $192 = HEAP32[$191>>2]|0; + $193 = (_sqlite3PagerWrite($192)|0); + HEAP32[$rc>>2] = $193; + $194 = HEAP32[$pPage>>2]|0; + $195 = HEAP32[$iCellIdx>>2]|0; + $196 = HEAP32[$pCell>>2]|0; + $197 = (($196) + -4|0); + $198 = HEAP32[$nCell>>2]|0; + $199 = (($198) + 4)|0; + $200 = HEAP32[$pTmp>>2]|0; + $201 = HEAP32[$n>>2]|0; + _insertCell($194,$195,$197,$199,$200,$201,$rc); + $202 = HEAP32[$pLeaf>>2]|0; + $203 = HEAP32[$pLeaf>>2]|0; + $204 = (($203) + 16|0); + $205 = HEAP16[$204>>1]|0; + $206 = $205&65535; + $207 = (($206) - 1)|0; + $208 = HEAP32[$nCell>>2]|0; + _dropCell($202,$207,$208,$rc); + $209 = HEAP32[$rc>>2]|0; + $210 = ($209|0)!=(0); + if ($210) { + $211 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $211; + $242 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($242|0); + } + } + $212 = HEAP32[$1>>2]|0; + $213 = (_balance($212)|0); + HEAP32[$rc>>2] = $213; + $214 = HEAP32[$rc>>2]|0; + $215 = ($214|0)==(0); + if ($215) { + $216 = HEAP32[$1>>2]|0; + $217 = (($216) + 84|0); + $218 = HEAP16[$217>>1]|0; + $219 = $218 << 16 >> 16; + $220 = HEAP32[$iCellDepth>>2]|0; + $221 = ($219|0)>($220|0); + if ($221) { + while(1) { + $222 = HEAP32[$1>>2]|0; + $223 = (($222) + 84|0); + $224 = HEAP16[$223>>1]|0; + $225 = $224 << 16 >> 16; + $226 = HEAP32[$iCellDepth>>2]|0; + $227 = ($225|0)>($226|0); + $228 = HEAP32[$1>>2]|0; + if (!($227)) { + break; + } + $229 = (($228) + 84|0); + $230 = HEAP16[$229>>1]|0; + $231 = (($230) + -1)<<16>>16; + HEAP16[$229>>1] = $231; + $232 = $230 << 16 >> 16; + $233 = HEAP32[$1>>2]|0; + $234 = (($233) + 128|0); + $235 = (($234) + ($232<<2)|0); + $236 = HEAP32[$235>>2]|0; + _releasePage($236); + } + $237 = (_balance($228)|0); + HEAP32[$rc>>2] = $237; + } + } + $238 = HEAP32[$rc>>2]|0; + $239 = ($238|0)==(0); + if ($239) { + $240 = HEAP32[$1>>2]|0; + (_moveToRoot($240)|0); + } + $241 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $241; + $242 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($242|0); + } + } + HEAP32[$0>>2] = 1; + $242 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($242|0); +} +function _sqlite3VdbeSorterCompare($pCsr,$pVal,$nIgnore,$pRes) { + $pCsr = $pCsr|0; + $pVal = $pVal|0; + $nIgnore = $nIgnore|0; + $pRes = $pRes|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $nKey = 0, $pKey = 0, $pSorter = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pSorter = sp + 12|0; + $pKey = sp + 16|0; + $nKey = sp + 20|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $pVal; + HEAP32[$2>>2] = $nIgnore; + HEAP32[$3>>2] = $pRes; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 64|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$pSorter>>2] = $6; + $7 = HEAP32[$pSorter>>2]|0; + $8 = (_vdbeSorterRowkey($7,$nKey)|0); + HEAP32[$pKey>>2] = $8; + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 4|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 24|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$pKey>>2]|0; + $18 = HEAP32[$nKey>>2]|0; + $19 = HEAP32[$3>>2]|0; + _vdbeSorterCompare($9,$10,$13,$16,$17,$18,$19); + STACKTOP = sp;return 0; +} +function _sqlite3VdbeSorterRowkey($pCsr,$pOut) { + $pCsr = $pCsr|0; + $pOut = $pOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nKey = 0, $pKey = 0, $pSorter = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $pSorter = sp + 8|0; + $pKey = sp + 12|0; + $nKey = sp + 16|0; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $pOut; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 64|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pSorter>>2] = $5; + $6 = HEAP32[$pSorter>>2]|0; + $7 = (_vdbeSorterRowkey($6,$nKey)|0); + HEAP32[$pKey>>2] = $7; + $8 = HEAP32[$2>>2]|0; + $9 = HEAP32[$nKey>>2]|0; + $10 = (_sqlite3VdbeMemGrow($8,$9,0)|0); + $11 = ($10|0)!=(0); + if ($11) { + HEAP32[$0>>2] = 7; + $29 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($29|0); + } else { + $12 = HEAP32[$nKey>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 24|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 28|0); + $17 = HEAP16[$16>>1]|0; + $18 = $17&65535; + $19 = $18 & -16896; + $20 = $19 | 16; + $21 = $20&65535; + $22 = HEAP32[$2>>2]|0; + $23 = (($22) + 28|0); + HEAP16[$23>>1] = $21; + $24 = HEAP32[$2>>2]|0; + $25 = (($24) + 4|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$pKey>>2]|0; + $28 = HEAP32[$nKey>>2]|0; + _memcpy(($26|0),($27|0),($28|0))|0; + HEAP32[$0>>2] = 0; + $29 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($29|0); + } + return 0|0; +} +function _sqlite3VtabImportErrmsg($p,$pVtab) { + $p = $p|0; + $pVtab = $pVtab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $db = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $db = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pVtab; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$db>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 44|0); + $7 = HEAP32[$6>>2]|0; + _sqlite3DbFree($4,$7); + $8 = HEAP32[$db>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 8|0); + $11 = HEAP32[$10>>2]|0; + $12 = (_sqlite3DbStrDup($8,$11)|0); + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 44|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 8|0); + $17 = HEAP32[$16>>2]|0; + _sqlite3_free($17); + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 8|0); + HEAP32[$19>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3VdbeSorterRewind($db,$pCsr,$pbEof) { + $db = $db|0; + $pCsr = $pCsr|0; + $pbEof = $pbEof|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; + var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; + var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; + var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; + var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $N = 0, $bEof = 0, $iNew = 0, $iWrite2 = 0, $nByte = 0, $nIter = 0, $nWrite = 0, $pIter = 0, $pSorter = 0, $pTemp2 = 0, $pTmp = 0; + var $rc = 0, $rc2 = 0, $writer = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $0 = sp + 112|0; + $1 = sp + 108|0; + $2 = sp + 104|0; + $3 = sp + 100|0; + $pSorter = sp + 96|0; + $rc = sp + 92|0; + $pTemp2 = sp + 88|0; + $iWrite2 = sp; + $nIter = sp + 84|0; + $nByte = sp + 80|0; + $N = sp + 56|0; + $iNew = sp + 64|0; + $rc2 = sp + 60|0; + $writer = sp + 16|0; + $nWrite = sp + 8|0; + $bEof = sp + 68|0; + $pIter = sp + 72|0; + $pTmp = sp + 76|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pCsr; + HEAP32[$3>>2] = $pbEof; + $4 = HEAP32[$2>>2]|0; + $5 = (($4) + 64|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$pSorter>>2] = $6; + HEAP32[$pTemp2>>2] = 0; + $7 = $iWrite2; + $8 = $7; + HEAP32[$8>>2] = 0; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = 0; + HEAP32[$N>>2] = 2; + $11 = HEAP32[$pSorter>>2]|0; + $12 = (($11) + 24|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)==(0); + if ($14) { + $15 = HEAP32[$pSorter>>2]|0; + $16 = (($15) + 48|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)!=(0|0); + $19 = $18 ^ 1; + $20 = $19&1; + $21 = HEAP32[$3>>2]|0; + HEAP32[$21>>2] = $20; + $22 = HEAP32[$2>>2]|0; + $23 = (_vdbeSorterSort($22)|0); + HEAP32[$0>>2] = $23; + $187 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($187|0); + } + $24 = HEAP32[$1>>2]|0; + $25 = HEAP32[$2>>2]|0; + $26 = (_vdbeSorterListToPMA($24,$25)|0); + HEAP32[$rc>>2] = $26; + $27 = HEAP32[$rc>>2]|0; + $28 = ($27|0)!=(0); + if ($28) { + $29 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $29; + $187 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($187|0); + } + $30 = HEAP32[$pSorter>>2]|0; + $31 = (($30) + 24|0); + $32 = HEAP32[$31>>2]|0; + HEAP32[$nIter>>2] = $32; + $33 = HEAP32[$nIter>>2]|0; + $34 = ($33|0)>(16); + $$ = $34 ? 16 : $32; + HEAP32[$nIter>>2] = $$; + while(1) { + $35 = HEAP32[$N>>2]|0; + $36 = HEAP32[$nIter>>2]|0; + $37 = ($35|0)<($36|0); + $38 = HEAP32[$N>>2]|0; + if (!($37)) { + break; + } + $39 = HEAP32[$N>>2]|0; + $40 = (($39) + ($38))|0; + HEAP32[$N>>2] = $40; + } + $41 = ($38*52)|0; + HEAP32[$nByte>>2] = $41; + $42 = HEAP32[$1>>2]|0; + $43 = HEAP32[$nByte>>2]|0; + $44 = (_sqlite3DbMallocZero($42,$43)|0); + $45 = HEAP32[$pSorter>>2]|0; + $46 = (($45) + 36|0); + HEAP32[$46>>2] = $44; + $47 = HEAP32[$pSorter>>2]|0; + $48 = (($47) + 36|0); + $49 = HEAP32[$48>>2]|0; + $50 = ($49|0)!=(0|0); + if (!($50)) { + HEAP32[$0>>2] = 7; + $187 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($187|0); + } + $51 = HEAP32[$N>>2]|0; + $52 = HEAP32[$pSorter>>2]|0; + $53 = (($52) + 36|0); + $54 = HEAP32[$53>>2]|0; + $55 = (($54) + (($51*48)|0)|0); + $56 = HEAP32[$pSorter>>2]|0; + $57 = (($56) + 40|0); + HEAP32[$57>>2] = $55; + $58 = HEAP32[$N>>2]|0; + $59 = HEAP32[$pSorter>>2]|0; + $60 = (($59) + 20|0); + HEAP32[$60>>2] = $58; + while(1) { + HEAP32[$iNew>>2] = 0; + while(1) { + $61 = HEAP32[$rc>>2]|0; + $62 = ($61|0)==(0); + if (!($62)) { + break; + } + $63 = HEAP32[$iNew>>2]|0; + $64 = $63<<4; + $65 = HEAP32[$pSorter>>2]|0; + $66 = (($65) + 24|0); + $67 = HEAP32[$66>>2]|0; + $68 = ($64|0)<($67|0); + if (!($68)) { + break; + } + dest=$writer+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $69 = HEAP32[$1>>2]|0; + $70 = HEAP32[$2>>2]|0; + $71 = (_vdbeSorterInitMerge($69,$70,$nWrite)|0); + HEAP32[$rc>>2] = $71; + $72 = HEAP32[$rc>>2]|0; + $73 = ($72|0)!=(0); + if ($73) { + break; + } + $74 = HEAP32[$pSorter>>2]|0; + $75 = (($74) + 24|0); + $76 = HEAP32[$75>>2]|0; + $77 = ($76|0)<=(16); + if ($77) { + break; + } + $78 = HEAP32[$pTemp2>>2]|0; + $79 = ($78|0)==(0|0); + if ($79) { + $80 = HEAP32[$1>>2]|0; + $81 = (_vdbeSorterOpenTempFile($80,$pTemp2)|0); + HEAP32[$rc>>2] = $81; + } + $82 = HEAP32[$rc>>2]|0; + $83 = ($82|0)==(0); + if ($83) { + HEAP32[$bEof>>2] = 0; + $84 = HEAP32[$1>>2]|0; + $85 = HEAP32[$pTemp2>>2]|0; + $86 = $iWrite2; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = (($86) + 4)|0; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + _fileWriterInit($84,$85,$writer,$88,$91); + $92 = $nWrite; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = (($92) + 4)|0; + $96 = $95; + $97 = HEAP32[$96>>2]|0; + _fileWriterWriteVarint($writer,$94,$97); + while(1) { + $98 = HEAP32[$rc>>2]|0; + $99 = ($98|0)==(0); + if (!($99)) { + break; + } + $100 = HEAP32[$bEof>>2]|0; + $101 = ($100|0)==(0); + if (!($101)) { + break; + } + $102 = HEAP32[$pSorter>>2]|0; + $103 = (($102) + 40|0); + $104 = HEAP32[$103>>2]|0; + $105 = (($104) + 4|0); + $106 = HEAP32[$105>>2]|0; + $107 = HEAP32[$pSorter>>2]|0; + $108 = (($107) + 36|0); + $109 = HEAP32[$108>>2]|0; + $110 = (($109) + (($106*48)|0)|0); + HEAP32[$pIter>>2] = $110; + $111 = HEAP32[$pIter>>2]|0; + $112 = (($111) + 20|0); + $113 = HEAP32[$112>>2]|0; + $114 = ($113|0)<(0); + $115 = $114 << 31 >> 31; + _fileWriterWriteVarint($writer,$113,$115); + $116 = HEAP32[$pIter>>2]|0; + $117 = (($116) + 32|0); + $118 = HEAP32[$117>>2]|0; + $119 = HEAP32[$pIter>>2]|0; + $120 = (($119) + 20|0); + $121 = HEAP32[$120>>2]|0; + _fileWriterWrite($writer,$118,$121); + $122 = HEAP32[$1>>2]|0; + $123 = HEAP32[$2>>2]|0; + $124 = (_sqlite3VdbeSorterNext($122,$123,$bEof)|0); + HEAP32[$rc>>2] = $124; + } + $125 = HEAP32[$1>>2]|0; + $126 = (_fileWriterFinish($125,$writer,$iWrite2)|0); + HEAP32[$rc2>>2] = $126; + $127 = HEAP32[$rc>>2]|0; + $128 = ($127|0)==(0); + if ($128) { + $129 = HEAP32[$rc2>>2]|0; + HEAP32[$rc>>2] = $129; + } + } + $130 = HEAP32[$iNew>>2]|0; + $131 = (($130) + 1)|0; + HEAP32[$iNew>>2] = $131; + } + $132 = HEAP32[$pSorter>>2]|0; + $133 = (($132) + 24|0); + $134 = HEAP32[$133>>2]|0; + $135 = ($134|0)<=(16); + if ($135) { + break; + } + $136 = HEAP32[$pSorter>>2]|0; + $137 = (($136) + 44|0); + $138 = HEAP32[$137>>2]|0; + HEAP32[$pTmp>>2] = $138; + $139 = HEAP32[$iNew>>2]|0; + $140 = HEAP32[$pSorter>>2]|0; + $141 = (($140) + 24|0); + HEAP32[$141>>2] = $139; + $142 = HEAP32[$pTemp2>>2]|0; + $143 = HEAP32[$pSorter>>2]|0; + $144 = (($143) + 44|0); + HEAP32[$144>>2] = $142; + $145 = HEAP32[$pTmp>>2]|0; + HEAP32[$pTemp2>>2] = $145; + $146 = $iWrite2; + $147 = $146; + $148 = HEAP32[$147>>2]|0; + $149 = (($146) + 4)|0; + $150 = $149; + $151 = HEAP32[$150>>2]|0; + $152 = HEAP32[$pSorter>>2]|0; + $153 = $152; + $154 = $153; + HEAP32[$154>>2] = $148; + $155 = (($153) + 4)|0; + $156 = $155; + HEAP32[$156>>2] = $151; + $157 = HEAP32[$pSorter>>2]|0; + $158 = (($157) + 8|0); + $159 = $158; + $160 = $159; + HEAP32[$160>>2] = 0; + $161 = (($159) + 4)|0; + $162 = $161; + HEAP32[$162>>2] = 0; + $163 = $iWrite2; + $164 = $163; + HEAP32[$164>>2] = 0; + $165 = (($163) + 4)|0; + $166 = $165; + HEAP32[$166>>2] = 0; + $167 = HEAP32[$rc>>2]|0; + $168 = ($167|0)==(0); + if (!($168)) { + break; + } + } + $169 = HEAP32[$pTemp2>>2]|0; + $170 = ($169|0)!=(0|0); + if ($170) { + $171 = HEAP32[$pTemp2>>2]|0; + (_sqlite3OsCloseFree($171)|0); + } + $172 = HEAP32[$pSorter>>2]|0; + $173 = (($172) + 40|0); + $174 = HEAP32[$173>>2]|0; + $175 = (($174) + 4|0); + $176 = HEAP32[$175>>2]|0; + $177 = HEAP32[$pSorter>>2]|0; + $178 = (($177) + 36|0); + $179 = HEAP32[$178>>2]|0; + $180 = (($179) + (($176*48)|0)|0); + $181 = (($180) + 24|0); + $182 = HEAP32[$181>>2]|0; + $183 = ($182|0)==(0|0); + $184 = $183&1; + $185 = HEAP32[$3>>2]|0; + HEAP32[$185>>2] = $184; + $186 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $186; + $187 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($187|0); +} +function _sqlite3BtreeFirst($pCur,$pRes) { + $pCur = $pCur|0; + $pRes = $pRes|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $pCur; + HEAP32[$1>>2] = $pRes; + $2 = HEAP32[$0>>2]|0; + $3 = (_moveToRoot($2)|0); + HEAP32[$rc>>2] = $3; + $4 = HEAP32[$rc>>2]|0; + $5 = ($4|0)==(0); + do { + if ($5) { + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 81|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = ($9|0)==(0); + $11 = HEAP32[$1>>2]|0; + if ($10) { + HEAP32[$11>>2] = 1; + break; + } else { + HEAP32[$11>>2] = 0; + $12 = HEAP32[$0>>2]|0; + $13 = (_moveToLeftmost($12)|0); + HEAP32[$rc>>2] = $13; + break; + } + } + } while(0); + $14 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($14|0); +} +function _sqlite3VdbeSorterNext($db,$pCsr,$pbEof) { + $db = $db|0; + $pCsr = $pCsr|0; + $pbEof = $pbEof|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; + var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; + var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; + var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; + var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iPrev = 0, $iRes = 0; + var $pFree = 0, $pIter1 = 0, $pIter2 = 0, $pKey2 = 0, $pSorter = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $pSorter = sp + 32|0; + $rc = sp + 28|0; + $iPrev = sp + 24|0; + $i = sp + 20|0; + $pIter1 = sp + 12|0; + $pIter2 = sp + 8|0; + $pKey2 = sp + 4|0; + $iRes = sp; + $pFree = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $pbEof; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 64|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pSorter>>2] = $5; + $6 = HEAP32[$pSorter>>2]|0; + $7 = (($6) + 40|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + $10 = HEAP32[$pSorter>>2]|0; + if (!($9)) { + $138 = (($10) + 48|0); + $139 = HEAP32[$138>>2]|0; + HEAP32[$pFree>>2] = $139; + $140 = HEAP32[$pFree>>2]|0; + $141 = (($140) + 8|0); + $142 = HEAP32[$141>>2]|0; + $143 = HEAP32[$pSorter>>2]|0; + $144 = (($143) + 48|0); + HEAP32[$144>>2] = $142; + $145 = HEAP32[$pFree>>2]|0; + $146 = (($145) + 8|0); + HEAP32[$146>>2] = 0; + $147 = HEAP32[$0>>2]|0; + $148 = HEAP32[$pFree>>2]|0; + _vdbeSorterRecordFree($147,$148); + $149 = HEAP32[$pSorter>>2]|0; + $150 = (($149) + 48|0); + $151 = HEAP32[$150>>2]|0; + $152 = ($151|0)!=(0|0); + $153 = $152 ^ 1; + $154 = $153&1; + $155 = HEAP32[$2>>2]|0; + HEAP32[$155>>2] = $154; + HEAP32[$rc>>2] = 0; + $156 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($156|0); + } + $11 = (($10) + 40|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$iPrev>>2] = $14; + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$iPrev>>2]|0; + $17 = HEAP32[$pSorter>>2]|0; + $18 = (($17) + 36|0); + $19 = HEAP32[$18>>2]|0; + $20 = (($19) + (($16*48)|0)|0); + $21 = (_vdbeSorterIterNext($15,$20)|0); + HEAP32[$rc>>2] = $21; + $22 = HEAP32[$rc>>2]|0; + $23 = ($22|0)==(0); + if (!($23)) { + $156 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($156|0); + } + $24 = HEAP32[$iPrev>>2]|0; + $25 = $24 & 65534; + $26 = HEAP32[$pSorter>>2]|0; + $27 = (($26) + 36|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + (($25*48)|0)|0); + HEAP32[$pIter1>>2] = $29; + $30 = HEAP32[$iPrev>>2]|0; + $31 = $30 | 1; + $32 = HEAP32[$pSorter>>2]|0; + $33 = (($32) + 36|0); + $34 = HEAP32[$33>>2]|0; + $35 = (($34) + (($31*48)|0)|0); + HEAP32[$pIter2>>2] = $35; + $36 = HEAP32[$pIter2>>2]|0; + $37 = (($36) + 32|0); + $38 = HEAP32[$37>>2]|0; + HEAP32[$pKey2>>2] = $38; + $39 = HEAP32[$pSorter>>2]|0; + $40 = (($39) + 20|0); + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$iPrev>>2]|0; + $43 = (($41) + ($42))|0; + $44 = (($43|0) / 2)&-1; + HEAP32[$i>>2] = $44; + while(1) { + $45 = HEAP32[$i>>2]|0; + $46 = ($45|0)>(0); + if (!($46)) { + break; + } + $47 = HEAP32[$pIter1>>2]|0; + $48 = (($47) + 24|0); + $49 = HEAP32[$48>>2]|0; + $50 = ($49|0)==(0|0); + do { + if ($50) { + HEAP32[$iRes>>2] = 1; + } else { + $51 = HEAP32[$pIter2>>2]|0; + $52 = (($51) + 24|0); + $53 = HEAP32[$52>>2]|0; + $54 = ($53|0)==(0|0); + if ($54) { + HEAP32[$iRes>>2] = -1; + break; + } else { + $55 = HEAP32[$1>>2]|0; + $56 = HEAP32[$pIter1>>2]|0; + $57 = (($56) + 32|0); + $58 = HEAP32[$57>>2]|0; + $59 = HEAP32[$pIter1>>2]|0; + $60 = (($59) + 20|0); + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$pKey2>>2]|0; + $63 = HEAP32[$pIter2>>2]|0; + $64 = (($63) + 20|0); + $65 = HEAP32[$64>>2]|0; + _vdbeSorterCompare($55,0,$58,$61,$62,$65,$iRes); + break; + } + } + } while(0); + $66 = HEAP32[$iRes>>2]|0; + $67 = ($66|0)<=(0); + $68 = HEAP32[$pIter1>>2]|0; + if ($67) { + $69 = HEAP32[$pSorter>>2]|0; + $70 = (($69) + 36|0); + $71 = HEAP32[$70>>2]|0; + $72 = $68; + $73 = $71; + $74 = (($72) - ($73))|0; + $75 = (($74|0) / 48)&-1; + $76 = HEAP32[$i>>2]|0; + $77 = HEAP32[$pSorter>>2]|0; + $78 = (($77) + 40|0); + $79 = HEAP32[$78>>2]|0; + $80 = (($79) + ($76<<2)|0); + HEAP32[$80>>2] = $75; + $81 = HEAP32[$i>>2]|0; + $82 = $81 ^ 1; + $83 = HEAP32[$pSorter>>2]|0; + $84 = (($83) + 40|0); + $85 = HEAP32[$84>>2]|0; + $86 = (($85) + ($82<<2)|0); + $87 = HEAP32[$86>>2]|0; + $88 = HEAP32[$pSorter>>2]|0; + $89 = (($88) + 36|0); + $90 = HEAP32[$89>>2]|0; + $91 = (($90) + (($87*48)|0)|0); + HEAP32[$pIter2>>2] = $91; + $92 = HEAP32[$pIter2>>2]|0; + $93 = (($92) + 32|0); + $94 = HEAP32[$93>>2]|0; + HEAP32[$pKey2>>2] = $94; + } else { + $95 = (($68) + 24|0); + $96 = HEAP32[$95>>2]|0; + $97 = ($96|0)!=(0|0); + if ($97) { + HEAP32[$pKey2>>2] = 0; + } + $98 = HEAP32[$pIter2>>2]|0; + $99 = HEAP32[$pSorter>>2]|0; + $100 = (($99) + 36|0); + $101 = HEAP32[$100>>2]|0; + $102 = $98; + $103 = $101; + $104 = (($102) - ($103))|0; + $105 = (($104|0) / 48)&-1; + $106 = HEAP32[$i>>2]|0; + $107 = HEAP32[$pSorter>>2]|0; + $108 = (($107) + 40|0); + $109 = HEAP32[$108>>2]|0; + $110 = (($109) + ($106<<2)|0); + HEAP32[$110>>2] = $105; + $111 = HEAP32[$i>>2]|0; + $112 = $111 ^ 1; + $113 = HEAP32[$pSorter>>2]|0; + $114 = (($113) + 40|0); + $115 = HEAP32[$114>>2]|0; + $116 = (($115) + ($112<<2)|0); + $117 = HEAP32[$116>>2]|0; + $118 = HEAP32[$pSorter>>2]|0; + $119 = (($118) + 36|0); + $120 = HEAP32[$119>>2]|0; + $121 = (($120) + (($117*48)|0)|0); + HEAP32[$pIter1>>2] = $121; + } + $122 = HEAP32[$i>>2]|0; + $123 = (($122|0) / 2)&-1; + HEAP32[$i>>2] = $123; + } + $124 = HEAP32[$pSorter>>2]|0; + $125 = (($124) + 40|0); + $126 = HEAP32[$125>>2]|0; + $127 = (($126) + 4|0); + $128 = HEAP32[$127>>2]|0; + $129 = HEAP32[$pSorter>>2]|0; + $130 = (($129) + 36|0); + $131 = HEAP32[$130>>2]|0; + $132 = (($131) + (($128*48)|0)|0); + $133 = (($132) + 24|0); + $134 = HEAP32[$133>>2]|0; + $135 = ($134|0)==(0|0); + $136 = $135&1; + $137 = HEAP32[$2>>2]|0; + HEAP32[$137>>2] = $136; + $156 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($156|0); +} +function _sqlite3VdbeSorterWrite($db,$pCsr,$pVal) { + $db = $db|0; + $pCsr = $pCsr|0; + $pVal = $pVal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; + var $pNew = 0, $pSorter = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $pSorter = sp + 8|0; + $rc = sp + 12|0; + $pNew = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $pVal; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 64|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pSorter>>2] = $5; + HEAP32[$rc>>2] = 0; + $6 = HEAP32[$2>>2]|0; + $7 = (($6) + 24|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)<(0); + $10 = $9 << 31 >> 31; + $11 = (_sqlite3VarintLen($8,$10)|0); + $12 = HEAP32[$2>>2]|0; + $13 = (($12) + 24|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($11) + ($14))|0; + $16 = HEAP32[$pSorter>>2]|0; + $17 = (($16) + 16|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + ($15))|0; + HEAP32[$17>>2] = $19; + $20 = HEAP32[$0>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 24|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + 12)|0; + $25 = (_sqlite3DbMallocRaw($20,$24)|0); + HEAP32[$pNew>>2] = $25; + $26 = HEAP32[$pNew>>2]|0; + $27 = ($26|0)==(0|0); + if ($27) { + HEAP32[$rc>>2] = 7; + } else { + $28 = HEAP32[$pNew>>2]|0; + $29 = (($28) + 12|0); + $30 = HEAP32[$pNew>>2]|0; + HEAP32[$30>>2] = $29; + $31 = HEAP32[$pNew>>2]|0; + $32 = HEAP32[$31>>2]|0; + $33 = HEAP32[$2>>2]|0; + $34 = (($33) + 4|0); + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$2>>2]|0; + $37 = (($36) + 24|0); + $38 = HEAP32[$37>>2]|0; + _memcpy(($32|0),($35|0),($38|0))|0; + $39 = HEAP32[$2>>2]|0; + $40 = (($39) + 24|0); + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$pNew>>2]|0; + $43 = (($42) + 4|0); + HEAP32[$43>>2] = $41; + $44 = HEAP32[$pSorter>>2]|0; + $45 = (($44) + 48|0); + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$pNew>>2]|0; + $48 = (($47) + 8|0); + HEAP32[$48>>2] = $46; + $49 = HEAP32[$pNew>>2]|0; + $50 = HEAP32[$pSorter>>2]|0; + $51 = (($50) + 48|0); + HEAP32[$51>>2] = $49; + } + $52 = HEAP32[$rc>>2]|0; + $53 = ($52|0)==(0); + if (!($53)) { + $79 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($79|0); + } + $54 = HEAP32[$pSorter>>2]|0; + $55 = (($54) + 32|0); + $56 = HEAP32[$55>>2]|0; + $57 = ($56|0)>(0); + if (!($57)) { + $79 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($79|0); + } + $58 = HEAP32[$pSorter>>2]|0; + $59 = (($58) + 16|0); + $60 = HEAP32[$59>>2]|0; + $61 = HEAP32[$pSorter>>2]|0; + $62 = (($61) + 32|0); + $63 = HEAP32[$62>>2]|0; + $64 = ($60|0)>($63|0); + if (!($64)) { + $65 = HEAP32[$pSorter>>2]|0; + $66 = (($65) + 16|0); + $67 = HEAP32[$66>>2]|0; + $68 = HEAP32[$pSorter>>2]|0; + $69 = (($68) + 28|0); + $70 = HEAP32[$69>>2]|0; + $71 = ($67|0)>($70|0); + if (!($71)) { + $79 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($79|0); + } + $72 = (_sqlite3HeapNearlyFull()|0); + $73 = ($72|0)!=(0); + if (!($73)) { + $79 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($79|0); + } + } + $74 = HEAP32[$0>>2]|0; + $75 = HEAP32[$1>>2]|0; + $76 = (_vdbeSorterListToPMA($74,$75)|0); + HEAP32[$rc>>2] = $76; + $77 = HEAP32[$pSorter>>2]|0; + $78 = (($77) + 16|0); + HEAP32[$78>>2] = 0; + $79 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($79|0); +} +function _sqlite3VdbeIdxRowid($db,$pCur,$rowid) { + $db = $db|0; + $pCur = $pCur|0; + $rowid = $rowid|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $9 = 0, $lenRowid = 0, $m = 0, $nCellKey = 0, $or$cond = 0, $or$cond3 = 0, $rc = 0, $szHdr = 0, $typeRowid = 0, $v = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $0 = sp + 116|0; + $1 = sp + 112|0; + $2 = sp + 108|0; + $3 = sp + 104|0; + $nCellKey = sp + 40|0; + $rc = sp + 92|0; + $szHdr = sp + 96|0; + $typeRowid = sp + 88|0; + $lenRowid = sp + 100|0; + $m = sp; + $v = sp + 48|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pCur; + HEAP32[$3>>2] = $rowid; + $4 = $nCellKey; + $5 = $4; + HEAP32[$5>>2] = 0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = 0; + $8 = HEAP32[$2>>2]|0; + (_sqlite3BtreeKeySize($8,$nCellKey)|0); + dest=$m+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $9 = HEAP32[$2>>2]|0; + $10 = $nCellKey; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (($10) + 4)|0; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (_sqlite3VdbeMemFromBtree($9,0,$12,1,$m)|0); + HEAP32[$rc>>2] = $16; + $17 = HEAP32[$rc>>2]|0; + $18 = ($17|0)!=(0); + if ($18) { + $19 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $19; + $85 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($85|0); + } + $20 = (($m) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = ($23|0)<(128); + $25 = (($m) + 4|0); + $26 = HEAP32[$25>>2]|0; + if ($24) { + $27 = HEAP8[$26>>0]|0; + $28 = $27&255; + HEAP32[$szHdr>>2] = $28; + } else { + (_sqlite3GetVarint32($26,$szHdr)|0); + } + $29 = HEAP32[$szHdr>>2]|0; + $30 = ($29>>>0)<(3); + if (!($30)) { + $31 = HEAP32[$szHdr>>2]|0; + $32 = (($m) + 24|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($31|0)>($33|0); + if (!($34)) { + $35 = HEAP32[$szHdr>>2]|0; + $36 = (($35) - 1)|0; + $37 = (($m) + 4|0); + $38 = HEAP32[$37>>2]|0; + $39 = (($38) + ($36)|0); + $40 = HEAP8[$39>>0]|0; + $41 = $40&255; + $42 = ($41|0)<(128); + $43 = HEAP32[$szHdr>>2]|0; + $44 = (($43) - 1)|0; + $45 = (($m) + 4|0); + $46 = HEAP32[$45>>2]|0; + $47 = (($46) + ($44)|0); + if ($42) { + $48 = HEAP8[$47>>0]|0; + $49 = $48&255; + HEAP32[$typeRowid>>2] = $49; + } else { + (_sqlite3GetVarint32($47,$typeRowid)|0); + } + $50 = HEAP32[$typeRowid>>2]|0; + $51 = ($50>>>0)<(1); + $52 = HEAP32[$typeRowid>>2]|0; + $53 = ($52>>>0)>(9); + $or$cond = $51 | $53; + $54 = HEAP32[$typeRowid>>2]|0; + $55 = ($54|0)==(7); + $or$cond3 = $or$cond | $55; + if (!($or$cond3)) { + $56 = HEAP32[$typeRowid>>2]|0; + $57 = (_sqlite3VdbeSerialTypeLen($56)|0); + HEAP32[$lenRowid>>2] = $57; + $58 = (($m) + 24|0); + $59 = HEAP32[$58>>2]|0; + $60 = HEAP32[$szHdr>>2]|0; + $61 = HEAP32[$lenRowid>>2]|0; + $62 = (($60) + ($61))|0; + $63 = ($59>>>0)<($62>>>0); + if (!($63)) { + $64 = (($m) + 24|0); + $65 = HEAP32[$64>>2]|0; + $66 = HEAP32[$lenRowid>>2]|0; + $67 = (($65) - ($66))|0; + $68 = (($m) + 4|0); + $69 = HEAP32[$68>>2]|0; + $70 = (($69) + ($67)|0); + $71 = HEAP32[$typeRowid>>2]|0; + (_sqlite3VdbeSerialGet($70,$71,$v)|0); + $72 = (($v) + 16|0); + $73 = $72; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $76 = (($73) + 4)|0; + $77 = $76; + $78 = HEAP32[$77>>2]|0; + $79 = HEAP32[$3>>2]|0; + $80 = $79; + $81 = $80; + HEAP32[$81>>2] = $75; + $82 = (($80) + 4)|0; + $83 = $82; + HEAP32[$83>>2] = $78; + _sqlite3VdbeMemRelease($m); + HEAP32[$0>>2] = 0; + $85 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($85|0); + } + } + } + } + _sqlite3VdbeMemRelease($m); + $84 = (_sqlite3CorruptError(65606)|0); + HEAP32[$0>>2] = $84; + $85 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($85|0); +} +function _sqlite3VdbeIdxKeyCompare($pC,$pUnpacked,$res) { + $pC = $pC|0; + $pUnpacked = $pUnpacked|0; + $res = $res|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $m = 0, $nCellKey = 0, $or$cond = 0, $pCur = 0, $rc = 0; + var dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 68|0; + $1 = sp + 64|0; + $2 = sp + 52|0; + $3 = sp + 48|0; + $nCellKey = sp; + $rc = sp + 56|0; + $pCur = sp + 60|0; + $m = sp + 8|0; + HEAP32[$1>>2] = $pC; + HEAP32[$2>>2] = $pUnpacked; + HEAP32[$3>>2] = $res; + $4 = $nCellKey; + $5 = $4; + HEAP32[$5>>2] = 0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = 0; + $8 = HEAP32[$1>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$pCur>>2] = $9; + $10 = HEAP32[$pCur>>2]|0; + (_sqlite3BtreeKeySize($10,$nCellKey)|0); + $11 = $nCellKey; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = (($11) + 4)|0; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)<(0); + $18 = ($16|0)==(0); + $19 = ($13>>>0)<=(0); + $20 = $18 & $19; + $21 = $17 | $20; + $22 = $nCellKey; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (($22) + 4)|0; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)>(0); + $29 = ($27|0)==(0); + $30 = ($24>>>0)>(2147483647); + $31 = $29 & $30; + $32 = $28 | $31; + $or$cond = $21 | $32; + if ($or$cond) { + $33 = HEAP32[$3>>2]|0; + HEAP32[$33>>2] = 0; + $34 = (_sqlite3CorruptError(65637)|0); + HEAP32[$0>>2] = $34; + $54 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($54|0); + } + dest=$m+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $35 = HEAP32[$1>>2]|0; + $36 = HEAP32[$35>>2]|0; + $37 = $nCellKey; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = (($37) + 4)|0; + $41 = $40; + $42 = HEAP32[$41>>2]|0; + $43 = (_sqlite3VdbeMemFromBtree($36,0,$39,1,$m)|0); + HEAP32[$rc>>2] = $43; + $44 = HEAP32[$rc>>2]|0; + $45 = ($44|0)!=(0); + if ($45) { + $46 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $46; + $54 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($54|0); + } else { + $47 = (($m) + 24|0); + $48 = HEAP32[$47>>2]|0; + $49 = (($m) + 4|0); + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$2>>2]|0; + $52 = (_sqlite3VdbeRecordCompare($48,$50,$51,0)|0); + $53 = HEAP32[$3>>2]|0; + HEAP32[$53>>2] = $52; + _sqlite3VdbeMemRelease($m); + HEAP32[$0>>2] = 0; + $54 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($54|0); + } + return 0|0; +} +function _sqlite3BtreeDropTable($p,$iTable,$piMoved) { + $p = $p|0; + $iTable = $iTable|0; + $piMoved = $piMoved|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iTable; + HEAP32[$2>>2] = $piMoved; + $3 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($3); + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$2>>2]|0; + $7 = (_btreeDropTable($4,$5,$6)|0); + HEAP32[$rc>>2] = $7; + $8 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($8|0); +} +function _sqlite3RootPageMoved($db,$iDb,$iFrom,$iTo) { + $db = $db|0; + $iDb = $iDb|0; + $iFrom = $iFrom|0; + $iTo = $iTo|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDb = 0, $pElem = 0, $pHash = 0, $pIdx = 0, $pTab = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $pElem = sp + 16|0; + $pHash = sp + 8|0; + $pDb = sp + 4|0; + $pTab = sp; + $pIdx = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $iDb; + HEAP32[$2>>2] = $iFrom; + HEAP32[$3>>2] = $iTo; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 16|0); + $7 = HEAP32[$6>>2]|0; + $8 = (($7) + ($4<<4)|0); + HEAP32[$pDb>>2] = $8; + $9 = HEAP32[$pDb>>2]|0; + $10 = (($9) + 12|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + 8|0); + HEAP32[$pHash>>2] = $12; + $13 = HEAP32[$pHash>>2]|0; + $14 = (($13) + 8|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$pElem>>2] = $15; + while(1) { + $16 = HEAP32[$pElem>>2]|0; + $17 = ($16|0)!=(0|0); + if (!($17)) { + break; + } + $18 = HEAP32[$pElem>>2]|0; + $19 = (($18) + 8|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$pTab>>2] = $20; + $21 = HEAP32[$pTab>>2]|0; + $22 = (($21) + 32|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$2>>2]|0; + $25 = ($23|0)==($24|0); + if ($25) { + $26 = HEAP32[$3>>2]|0; + $27 = HEAP32[$pTab>>2]|0; + $28 = (($27) + 32|0); + HEAP32[$28>>2] = $26; + } + $29 = HEAP32[$pElem>>2]|0; + $30 = HEAP32[$29>>2]|0; + HEAP32[$pElem>>2] = $30; + } + $31 = HEAP32[$pDb>>2]|0; + $32 = (($31) + 12|0); + $33 = HEAP32[$32>>2]|0; + $34 = (($33) + 24|0); + HEAP32[$pHash>>2] = $34; + $35 = HEAP32[$pHash>>2]|0; + $36 = (($35) + 8|0); + $37 = HEAP32[$36>>2]|0; + HEAP32[$pElem>>2] = $37; + while(1) { + $38 = HEAP32[$pElem>>2]|0; + $39 = ($38|0)!=(0|0); + if (!($39)) { + break; + } + $40 = HEAP32[$pElem>>2]|0; + $41 = (($40) + 8|0); + $42 = HEAP32[$41>>2]|0; + HEAP32[$pIdx>>2] = $42; + $43 = HEAP32[$pIdx>>2]|0; + $44 = (($43) + 44|0); + $45 = HEAP32[$44>>2]|0; + $46 = HEAP32[$2>>2]|0; + $47 = ($45|0)==($46|0); + if ($47) { + $48 = HEAP32[$3>>2]|0; + $49 = HEAP32[$pIdx>>2]|0; + $50 = (($49) + 44|0); + HEAP32[$50>>2] = $48; + } + $51 = HEAP32[$pElem>>2]|0; + $52 = HEAP32[$51>>2]|0; + HEAP32[$pElem>>2] = $52; + } + STACKTOP = sp;return; +} +function _sqlite3BtreeClearTable($p,$iTable,$pnChange) { + $p = $p|0; + $iTable = $iTable|0; + $pnChange = $pnChange|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $rc = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $pBt = sp + 12|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iTable; + HEAP32[$2>>2] = $pnChange; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pBt>>2] = $5; + $6 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($6); + $7 = HEAP32[$pBt>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (_saveAllCursors($7,$8,0)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + $11 = (0)==($10|0); + if (!($11)) { + $17 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($17|0); + } + $12 = HEAP32[$0>>2]|0; + _invalidateIncrblobCursors($12,0,0,1); + $13 = HEAP32[$pBt>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = (_clearDatabasePage($13,$14,0,$15)|0); + HEAP32[$rc>>2] = $16; + $17 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($17|0); +} +function _sqlite3VdbeSorterReset($db,$pSorter) { + $db = $db|0; + $pSorter = $pSorter|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $i = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pSorter; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 36|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if ($5) { + HEAP32[$i>>2] = 0; + while(1) { + $6 = HEAP32[$i>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 20|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($6|0)<($9|0); + $11 = HEAP32[$0>>2]|0; + if (!($10)) { + break; + } + $12 = HEAP32[$i>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 36|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + (($12*48)|0)|0); + _vdbeSorterIterZero($11,$16); + $17 = HEAP32[$i>>2]|0; + $18 = (($17) + 1)|0; + HEAP32[$i>>2] = $18; + } + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 36|0); + $21 = HEAP32[$20>>2]|0; + _sqlite3DbFree($11,$21); + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 36|0); + HEAP32[$23>>2] = 0; + } + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 44|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)!=(0|0); + if ($27) { + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 44|0); + $30 = HEAP32[$29>>2]|0; + (_sqlite3OsCloseFree($30)|0); + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 44|0); + HEAP32[$32>>2] = 0; + } + $33 = HEAP32[$0>>2]|0; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 48|0); + $36 = HEAP32[$35>>2]|0; + _vdbeSorterRecordFree($33,$36); + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 48|0); + HEAP32[$38>>2] = 0; + $39 = HEAP32[$1>>2]|0; + $40 = $39; + $41 = $40; + HEAP32[$41>>2] = 0; + $42 = (($40) + 4)|0; + $43 = $42; + HEAP32[$43>>2] = 0; + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 8|0); + $46 = $45; + $47 = $46; + HEAP32[$47>>2] = 0; + $48 = (($46) + 4)|0; + $49 = $48; + HEAP32[$49>>2] = 0; + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 16|0); + HEAP32[$51>>2] = 0; + $52 = HEAP32[$1>>2]|0; + $53 = (($52) + 20|0); + HEAP32[$53>>2] = 0; + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 24|0); + HEAP32[$55>>2] = 0; + $56 = HEAP32[$1>>2]|0; + $57 = (($56) + 40|0); + HEAP32[$57>>2] = 0; + STACKTOP = sp;return; +} +function _sqlite3BtreeClearTableOfCursor($pCur) { + $pCur = $pCur|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pCur; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 68|0); + $5 = HEAP32[$4>>2]|0; + $6 = (_sqlite3BtreeClearTable($2,$5,0)|0); + STACKTOP = sp;return ($6|0); +} +function _sqlite3UnlinkAndDeleteTable($db,$iDb,$zTabName) { + $db = $db|0; + $iDb = $iDb|0; + $zTabName = $zTabName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $p = 0, $pDb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + $pDb = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $iDb; + HEAP32[$2>>2] = $zTabName; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 16|0); + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + ($3<<4)|0); + HEAP32[$pDb>>2] = $7; + $8 = HEAP32[$pDb>>2]|0; + $9 = (($8) + 12|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + 8|0); + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = (_sqlite3Strlen30($13)|0); + $15 = (_sqlite3HashInsert($11,$12,$14,0)|0); + HEAP32[$p>>2] = $15; + $16 = HEAP32[$0>>2]|0; + $17 = HEAP32[$p>>2]|0; + _sqlite3DeleteTable($16,$17); + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 24|0); + $20 = HEAP32[$19>>2]|0; + $21 = $20 | 2; + HEAP32[$19>>2] = $21; + STACKTOP = sp;return; +} +function _sqlite3UnlinkAndDeleteIndex($db,$iDb,$zIdxName) { + $db = $db|0; + $iDb = $iDb|0; + $zIdxName = $zIdxName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $len = 0, $p = 0, $pHash = 0, $pIndex = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $pIndex = sp + 8|0; + $len = sp + 12|0; + $pHash = sp + 16|0; + $p = sp + 20|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $iDb; + HEAP32[$2>>2] = $zIdxName; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 16|0); + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + ($3<<4)|0); + $8 = (($7) + 12|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 24|0); + HEAP32[$pHash>>2] = $10; + $11 = HEAP32[$2>>2]|0; + $12 = (_sqlite3Strlen30($11)|0); + HEAP32[$len>>2] = $12; + $13 = HEAP32[$pHash>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$len>>2]|0; + $16 = (_sqlite3HashInsert($13,$14,$15,0)|0); + HEAP32[$pIndex>>2] = $16; + $17 = HEAP32[$pIndex>>2]|0; + $18 = ($17|0)!=(0|0); + if (!($18)) { + $60 = HEAP32[$0>>2]|0; + $61 = (($60) + 24|0); + $62 = HEAP32[$61>>2]|0; + $63 = $62 | 2; + HEAP32[$61>>2] = $63; + STACKTOP = sp;return; + } + $19 = HEAP32[$pIndex>>2]|0; + $20 = (($19) + 12|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($21) + 8|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$pIndex>>2]|0; + $25 = ($23|0)==($24|0); + $26 = HEAP32[$pIndex>>2]|0; + if ($25) { + $27 = (($26) + 20|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$pIndex>>2]|0; + $30 = (($29) + 12|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + 8|0); + HEAP32[$32>>2] = $28; + } else { + $33 = (($26) + 12|0); + $34 = HEAP32[$33>>2]|0; + $35 = (($34) + 8|0); + $36 = HEAP32[$35>>2]|0; + HEAP32[$p>>2] = $36; + while(1) { + $37 = HEAP32[$p>>2]|0; + $38 = ($37|0)!=(0|0); + if ($38) { + $39 = HEAP32[$p>>2]|0; + $40 = (($39) + 20|0); + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$pIndex>>2]|0; + $43 = ($41|0)!=($42|0); + $64 = $43; + } else { + $64 = 0; + } + $44 = HEAP32[$p>>2]|0; + if (!($64)) { + break; + } + $45 = (($44) + 20|0); + $46 = HEAP32[$45>>2]|0; + HEAP32[$p>>2] = $46; + } + $47 = ($44|0)!=(0|0); + if ($47) { + $48 = HEAP32[$p>>2]|0; + $49 = (($48) + 20|0); + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$pIndex>>2]|0; + $52 = ($50|0)==($51|0); + if ($52) { + $53 = HEAP32[$pIndex>>2]|0; + $54 = (($53) + 20|0); + $55 = HEAP32[$54>>2]|0; + $56 = HEAP32[$p>>2]|0; + $57 = (($56) + 20|0); + HEAP32[$57>>2] = $55; + } + } + } + $58 = HEAP32[$0>>2]|0; + $59 = HEAP32[$pIndex>>2]|0; + _freeIndex($58,$59); + $60 = HEAP32[$0>>2]|0; + $61 = (($60) + 24|0); + $62 = HEAP32[$61>>2]|0; + $63 = $62 | 2; + HEAP32[$61>>2] = $63; + STACKTOP = sp;return; +} +function _sqlite3UnlinkAndDeleteTrigger($db,$iDb,$zName) { + $db = $db|0; + $iDb = $iDb|0; + $zName = $zName|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pHash = 0, $pTab = 0, $pTrigger = 0, $pp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $pTrigger = sp + 8|0; + $pHash = sp + 12|0; + $pTab = sp + 16|0; + $pp = sp + 20|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $iDb; + HEAP32[$2>>2] = $zName; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 16|0); + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + ($3<<4)|0); + $8 = (($7) + 12|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 40|0); + HEAP32[$pHash>>2] = $10; + $11 = HEAP32[$pHash>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = (_sqlite3Strlen30($13)|0); + $15 = (_sqlite3HashInsert($11,$12,$14,0)|0); + HEAP32[$pTrigger>>2] = $15; + $16 = HEAP32[$pTrigger>>2]|0; + $17 = ($16|0)!=(0|0); + if (!($17)) { + STACKTOP = sp;return; + } + $18 = HEAP32[$pTrigger>>2]|0; + $19 = (($18) + 20|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$pTrigger>>2]|0; + $22 = (($21) + 24|0); + $23 = HEAP32[$22>>2]|0; + $24 = ($20|0)==($23|0); + if ($24) { + $25 = HEAP32[$pTrigger>>2]|0; + $26 = (_tableOfTrigger($25)|0); + HEAP32[$pTab>>2] = $26; + $27 = HEAP32[$pTab>>2]|0; + $28 = (($27) + 64|0); + HEAP32[$pp>>2] = $28; + while(1) { + $29 = HEAP32[$pp>>2]|0; + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$pTrigger>>2]|0; + $32 = ($30|0)!=($31|0); + $33 = HEAP32[$pp>>2]|0; + $34 = HEAP32[$33>>2]|0; + $35 = (($34) + 32|0); + if (!($32)) { + break; + } + HEAP32[$pp>>2] = $35; + } + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$pp>>2]|0; + HEAP32[$37>>2] = $36; + } + $38 = HEAP32[$0>>2]|0; + $39 = HEAP32[$pTrigger>>2]|0; + _sqlite3DeleteTrigger($38,$39); + $40 = HEAP32[$0>>2]|0; + $41 = (($40) + 24|0); + $42 = HEAP32[$41>>2]|0; + $43 = $42 | 2; + HEAP32[$41>>2] = $43; + STACKTOP = sp;return; +} +function _sqlite3BtreeIntegrityCheck($p,$aRoot,$nRoot,$mxErr,$pnErr) { + $p = $p|0; + $aRoot = $aRoot|0; + $nRoot = $nRoot|0; + $mxErr = $mxErr|0; + $pnErr = $pnErr|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $i = 0, $nRef = 0, $pBt = 0, $sCheck = 0, $vararg_buffer5 = 0, $vararg_ptr8 = 0, $zErr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 208|0; + $vararg_buffer5 = sp; + $0 = sp + 96|0; + $1 = sp + 92|0; + $2 = sp + 88|0; + $3 = sp + 84|0; + $4 = sp + 80|0; + $5 = sp + 76|0; + $i = sp + 68|0; + $nRef = sp + 64|0; + $sCheck = sp + 8|0; + $pBt = sp + 72|0; + $zErr = sp + 100|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $aRoot; + HEAP32[$3>>2] = $nRoot; + HEAP32[$4>>2] = $mxErr; + HEAP32[$5>>2] = $pnErr; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pBt>>2] = $8; + $9 = HEAP32[$1>>2]|0; + _sqlite3BtreeEnter($9); + $10 = HEAP32[$pBt>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = (_sqlite3PagerRefcount($11)|0); + HEAP32[$nRef>>2] = $12; + $13 = HEAP32[$pBt>>2]|0; + HEAP32[$sCheck>>2] = $13; + $14 = HEAP32[$pBt>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = (($sCheck) + 4|0); + HEAP32[$16>>2] = $15; + $17 = HEAP32[$sCheck>>2]|0; + $18 = (_btreePagecount($17)|0); + $19 = (($sCheck) + 12|0); + HEAP32[$19>>2] = $18; + $20 = HEAP32[$4>>2]|0; + $21 = (($sCheck) + 16|0); + HEAP32[$21>>2] = $20; + $22 = (($sCheck) + 20|0); + HEAP32[$22>>2] = 0; + $23 = (($sCheck) + 24|0); + HEAP32[$23>>2] = 0; + $24 = HEAP32[$5>>2]|0; + HEAP32[$24>>2] = 0; + $25 = (($sCheck) + 12|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)==(0); + if ($27) { + HEAP32[$0>>2] = 0; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + $28 = (($sCheck) + 12|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29>>>0) / 8)&-1; + $31 = (($30) + 1)|0; + $32 = (_sqlite3MallocZero($31)|0); + $33 = (($sCheck) + 8|0); + HEAP32[$33>>2] = $32; + $34 = (($sCheck) + 8|0); + $35 = HEAP32[$34>>2]|0; + $36 = ($35|0)!=(0|0); + if (!($36)) { + $37 = HEAP32[$5>>2]|0; + HEAP32[$37>>2] = 1; + HEAP32[$0>>2] = 0; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + $38 = HEAP32[1472>>2]|0; + $39 = HEAP32[$pBt>>2]|0; + $40 = (($39) + 32|0); + $41 = HEAP32[$40>>2]|0; + $42 = (($38>>>0) / ($41>>>0))&-1; + $43 = (($42) + 1)|0; + HEAP32[$i>>2] = $43; + $44 = HEAP32[$i>>2]|0; + $45 = (($sCheck) + 12|0); + $46 = HEAP32[$45>>2]|0; + $47 = ($44>>>0)<=($46>>>0); + if ($47) { + $48 = HEAP32[$i>>2]|0; + _setPageReferenced($sCheck,$48); + } + $49 = (($sCheck) + 28|0); + _sqlite3StrAccumInit($49,$zErr,100,1000000000); + $50 = (($sCheck) + 28|0); + $51 = (($50) + 24|0); + HEAP8[$51>>0] = 2; + $52 = HEAP32[$pBt>>2]|0; + $53 = (($52) + 12|0); + $54 = HEAP32[$53>>2]|0; + $55 = (($54) + 56|0); + $56 = HEAP32[$55>>2]|0; + $57 = (($56) + 32|0); + $58 = (_sqlite3Get4byte($57)|0); + $59 = HEAP32[$pBt>>2]|0; + $60 = (($59) + 12|0); + $61 = HEAP32[$60>>2]|0; + $62 = (($61) + 56|0); + $63 = HEAP32[$62>>2]|0; + $64 = (($63) + 36|0); + $65 = (_sqlite3Get4byte($64)|0); + _checkList($sCheck,1,$58,$65,39800); + HEAP32[$i>>2] = 0; + while(1) { + $66 = HEAP32[$i>>2]|0; + $67 = HEAP32[$3>>2]|0; + $68 = ($66|0)<($67|0); + if (!($68)) { + break; + } + $69 = (($sCheck) + 16|0); + $70 = HEAP32[$69>>2]|0; + $71 = ($70|0)!=(0); + if (!($71)) { + break; + } + $72 = HEAP32[$i>>2]|0; + $73 = HEAP32[$2>>2]|0; + $74 = (($73) + ($72<<2)|0); + $75 = HEAP32[$74>>2]|0; + $76 = ($75|0)==(0); + if (!($76)) { + $77 = HEAP32[$pBt>>2]|0; + $78 = (($77) + 17|0); + $79 = HEAP8[$78>>0]|0; + $80 = $79&255; + $81 = ($80|0)!=(0); + if ($81) { + $82 = HEAP32[$i>>2]|0; + $83 = HEAP32[$2>>2]|0; + $84 = (($83) + ($82<<2)|0); + $85 = HEAP32[$84>>2]|0; + $86 = ($85|0)>(1); + if ($86) { + $87 = HEAP32[$i>>2]|0; + $88 = HEAP32[$2>>2]|0; + $89 = (($88) + ($87<<2)|0); + $90 = HEAP32[$89>>2]|0; + _checkPtrmap($sCheck,$90,1,0,0); + } + } + $91 = HEAP32[$i>>2]|0; + $92 = HEAP32[$2>>2]|0; + $93 = (($92) + ($91<<2)|0); + $94 = HEAP32[$93>>2]|0; + (_checkTreePage($sCheck,$94,39816,0,0)|0); + } + $95 = HEAP32[$i>>2]|0; + $96 = (($95) + 1)|0; + HEAP32[$i>>2] = $96; + } + HEAP32[$i>>2] = 1; + while(1) { + $97 = HEAP32[$i>>2]|0; + $98 = (($sCheck) + 12|0); + $99 = HEAP32[$98>>2]|0; + $100 = ($97>>>0)<=($99>>>0); + if (!($100)) { + break; + } + $101 = (($sCheck) + 16|0); + $102 = HEAP32[$101>>2]|0; + $103 = ($102|0)!=(0); + if (!($103)) { + break; + } + $104 = HEAP32[$i>>2]|0; + $105 = (_getPageReferenced($sCheck,$104)|0); + $106 = ($105|0)==(0); + do { + if ($106) { + $107 = HEAP32[$pBt>>2]|0; + $108 = HEAP32[$i>>2]|0; + $109 = (_ptrmapPageno($107,$108)|0); + $110 = HEAP32[$i>>2]|0; + $111 = ($109|0)!=($110|0); + if (!($111)) { + $112 = HEAP32[$pBt>>2]|0; + $113 = (($112) + 17|0); + $114 = HEAP8[$113>>0]|0; + $115 = ($114<<24>>24)!=(0); + if ($115) { + break; + } + } + $116 = HEAP32[$i>>2]|0; + HEAP32[$vararg_buffer5>>2] = $116; + _checkAppendMsg($sCheck,0,39840,$vararg_buffer5); + } + } while(0); + $117 = HEAP32[$i>>2]|0; + $118 = (_getPageReferenced($sCheck,$117)|0); + $119 = ($118|0)!=(0); + if ($119) { + $120 = HEAP32[$pBt>>2]|0; + $121 = HEAP32[$i>>2]|0; + $122 = (_ptrmapPageno($120,$121)|0); + $123 = HEAP32[$i>>2]|0; + $124 = ($122|0)==($123|0); + if ($124) { + $125 = HEAP32[$pBt>>2]|0; + $126 = (($125) + 17|0); + $127 = HEAP8[$126>>0]|0; + $128 = $127&255; + $129 = ($128|0)!=(0); + if ($129) { + $130 = HEAP32[$i>>2]|0; + HEAP32[$vararg_buffer5>>2] = $130; + _checkAppendMsg($sCheck,0,39864,$vararg_buffer5); + } + } + } + $131 = HEAP32[$i>>2]|0; + $132 = (($131) + 1)|0; + HEAP32[$i>>2] = $132; + } + $133 = HEAP32[$nRef>>2]|0; + $134 = HEAP32[$pBt>>2]|0; + $135 = HEAP32[$134>>2]|0; + $136 = (_sqlite3PagerRefcount($135)|0); + $137 = ($133|0)!=($136|0); + if ($137) { + $138 = HEAP32[$nRef>>2]|0; + $139 = HEAP32[$pBt>>2]|0; + $140 = HEAP32[$139>>2]|0; + $141 = (_sqlite3PagerRefcount($140)|0); + HEAP32[$vararg_buffer5>>2] = $138; + $vararg_ptr8 = (($vararg_buffer5) + 4|0); + HEAP32[$vararg_ptr8>>2] = $141; + _checkAppendMsg($sCheck,0,39904,$vararg_buffer5); + } + $142 = (($sCheck) + 8|0); + $143 = HEAP32[$142>>2]|0; + _sqlite3_free($143); + $144 = (($sCheck) + 24|0); + $145 = HEAP32[$144>>2]|0; + $146 = ($145|0)!=(0); + if ($146) { + $147 = (($sCheck) + 28|0); + _sqlite3StrAccumReset($147); + $148 = (($sCheck) + 20|0); + $149 = HEAP32[$148>>2]|0; + $150 = (($149) + 1)|0; + $151 = HEAP32[$5>>2]|0; + HEAP32[$151>>2] = $150; + HEAP32[$0>>2] = 0; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + $152 = (($sCheck) + 20|0); + $153 = HEAP32[$152>>2]|0; + $154 = HEAP32[$5>>2]|0; + HEAP32[$154>>2] = $153; + $155 = (($sCheck) + 20|0); + $156 = HEAP32[$155>>2]|0; + $157 = ($156|0)==(0); + if ($157) { + $158 = (($sCheck) + 28|0); + _sqlite3StrAccumReset($158); + } + $159 = (($sCheck) + 28|0); + $160 = (_sqlite3StrAccumFinish($159)|0); + HEAP32[$0>>2] = $160; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); +} +function _sqlite3VdbeMemSetRowSet($pMem) { + $pMem = $pMem|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $db = sp; + HEAP32[$0>>2] = $pMem; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$db>>2] = $2; + $3 = HEAP32[$0>>2]|0; + _sqlite3VdbeMemRelease($3); + $4 = HEAP32[$db>>2]|0; + $5 = (_sqlite3DbMallocRaw($4,64)|0); + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 36|0); + HEAP32[$7>>2] = $5; + $8 = HEAP32[$db>>2]|0; + $9 = (($8) + 64|0); + $10 = HEAP8[$9>>0]|0; + $11 = ($10<<24>>24)!=(0); + if ($11) { + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 28|0); + HEAP16[$13>>1] = 1; + STACKTOP = sp;return; + } else { + $14 = HEAP32[$db>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 36|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$db>>2]|0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 36|0); + $21 = HEAP32[$20>>2]|0; + $22 = (_sqlite3DbMallocSize($18,$21)|0); + $23 = (_sqlite3RowSetInit($14,$17,$22)|0); + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 16|0); + HEAP32[$25>>2] = $23; + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 28|0); + HEAP16[$27>>1] = 32; + STACKTOP = sp;return; + } +} +function _sqlite3RowSetInsert($p,$0,$1) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $pEntry = 0, $pLast = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 16|0; + $3 = sp; + $pEntry = sp + 8|0; + $pLast = sp + 12|0; + HEAP32[$2>>2] = $p; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = HEAP32[$2>>2]|0; + $9 = (_rowSetEntryAlloc($8)|0); + HEAP32[$pEntry>>2] = $9; + $10 = HEAP32[$pEntry>>2]|0; + $11 = ($10|0)==(0|0); + if ($11) { + STACKTOP = sp;return; + } + $12 = $3; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = (($12) + 4)|0; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$pEntry>>2]|0; + $19 = $18; + $20 = $19; + HEAP32[$20>>2] = $14; + $21 = (($19) + 4)|0; + $22 = $21; + HEAP32[$22>>2] = $17; + $23 = HEAP32[$pEntry>>2]|0; + $24 = (($23) + 8|0); + HEAP32[$24>>2] = 0; + $25 = HEAP32[$2>>2]|0; + $26 = (($25) + 12|0); + $27 = HEAP32[$26>>2]|0; + HEAP32[$pLast>>2] = $27; + $28 = HEAP32[$pLast>>2]|0; + $29 = ($28|0)!=(0|0); + if ($29) { + $30 = HEAP32[$2>>2]|0; + $31 = (($30) + 26|0); + $32 = HEAP16[$31>>1]|0; + $33 = $32&65535; + $34 = $33 & 1; + $35 = ($34|0)!=(0); + if ($35) { + $36 = $3; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + $39 = (($36) + 4)|0; + $40 = $39; + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$pLast>>2]|0; + $43 = $42; + $44 = $43; + $45 = HEAP32[$44>>2]|0; + $46 = (($43) + 4)|0; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = ($41|0)<($48|0); + $50 = ($41|0)==($48|0); + $51 = ($38>>>0)<=($45>>>0); + $52 = $50 & $51; + $53 = $49 | $52; + if ($53) { + $54 = HEAP32[$2>>2]|0; + $55 = (($54) + 26|0); + $56 = HEAP16[$55>>1]|0; + $57 = $56&65535; + $58 = $57 & -2; + $59 = $58&65535; + HEAP16[$55>>1] = $59; + } + } + $60 = HEAP32[$pEntry>>2]|0; + $61 = HEAP32[$pLast>>2]|0; + $62 = (($61) + 8|0); + HEAP32[$62>>2] = $60; + } else { + $63 = HEAP32[$pEntry>>2]|0; + $64 = HEAP32[$2>>2]|0; + $65 = (($64) + 8|0); + HEAP32[$65>>2] = $63; + } + $66 = HEAP32[$pEntry>>2]|0; + $67 = HEAP32[$2>>2]|0; + $68 = (($67) + 12|0); + HEAP32[$68>>2] = $66; + STACKTOP = sp;return; +} +function _sqlite3RowSetNext($p,$pRowid) { + $p = $p|0; + $pRowid = $pRowid|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $pRowid; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 26|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5&65535; + $7 = $6 & 2; + $8 = ($7|0)==(0); + if ($8) { + $9 = HEAP32[$1>>2]|0; + _rowSetToList($9); + } + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 8|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)!=(0|0); + if (!($13)) { + HEAP32[$0>>2] = 0; + $40 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($40|0); + } + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 8|0); + $16 = HEAP32[$15>>2]|0; + $17 = $16; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = (($17) + 4)|0; + $21 = $20; + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$2>>2]|0; + $24 = $23; + $25 = $24; + HEAP32[$25>>2] = $19; + $26 = (($24) + 4)|0; + $27 = $26; + HEAP32[$27>>2] = $22; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 8|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + 8|0); + $32 = HEAP32[$31>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 8|0); + HEAP32[$34>>2] = $32; + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 8|0); + $37 = HEAP32[$36>>2]|0; + $38 = ($37|0)==(0|0); + if ($38) { + $39 = HEAP32[$1>>2]|0; + _sqlite3RowSetClear($39); + } + HEAP32[$0>>2] = 1; + $40 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($40|0); +} +function _sqlite3RowSetTest($pRowSet,$iBatch,$0,$1) { + $pRowSet = $pRowSet|0; + $iBatch = $iBatch|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $p = 0, $pAux = 0, $pTail = 0, $pTree = 0, $ppPrevTree = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $4 = sp + 28|0; + $5 = sp; + $p = sp + 16|0; + $pTree = sp + 20|0; + $ppPrevTree = sp + 8|0; + $pAux = sp + 12|0; + $pTail = sp + 24|0; + HEAP32[$3>>2] = $pRowSet; + HEAP32[$4>>2] = $iBatch; + $6 = $5; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + $10 = HEAP32[$4>>2]|0; + $11 = HEAP32[$3>>2]|0; + $12 = (($11) + 28|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($10|0)!=($13|0); + if ($14) { + $15 = HEAP32[$3>>2]|0; + $16 = (($15) + 8|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$p>>2] = $17; + $18 = HEAP32[$p>>2]|0; + $19 = ($18|0)!=(0|0); + if ($19) { + $20 = HEAP32[$3>>2]|0; + $21 = (($20) + 20|0); + HEAP32[$ppPrevTree>>2] = $21; + $22 = HEAP32[$3>>2]|0; + $23 = (($22) + 26|0); + $24 = HEAP16[$23>>1]|0; + $25 = $24&65535; + $26 = $25 & 1; + $27 = ($26|0)==(0); + if ($27) { + $28 = HEAP32[$p>>2]|0; + $29 = (_rowSetEntrySort($28)|0); + HEAP32[$p>>2] = $29; + } + $30 = HEAP32[$3>>2]|0; + $31 = (($30) + 20|0); + $32 = HEAP32[$31>>2]|0; + HEAP32[$pTree>>2] = $32; + while(1) { + $33 = HEAP32[$pTree>>2]|0; + $34 = ($33|0)!=(0|0); + if (!($34)) { + break; + } + $35 = HEAP32[$pTree>>2]|0; + $36 = (($35) + 8|0); + HEAP32[$ppPrevTree>>2] = $36; + $37 = HEAP32[$pTree>>2]|0; + $38 = (($37) + 12|0); + $39 = HEAP32[$38>>2]|0; + $40 = ($39|0)==(0|0); + if ($40) { + label = 8; + break; + } + $45 = HEAP32[$pTree>>2]|0; + $46 = (($45) + 12|0); + $47 = HEAP32[$46>>2]|0; + _rowSetTreeToList($47,$pAux,$pTail); + $48 = HEAP32[$pTree>>2]|0; + $49 = (($48) + 12|0); + HEAP32[$49>>2] = 0; + $50 = HEAP32[$pAux>>2]|0; + $51 = HEAP32[$p>>2]|0; + $52 = (_rowSetEntryMerge($50,$51)|0); + HEAP32[$p>>2] = $52; + $53 = HEAP32[$pTree>>2]|0; + $54 = (($53) + 8|0); + $55 = HEAP32[$54>>2]|0; + HEAP32[$pTree>>2] = $55; + } + if ((label|0) == 8) { + $41 = HEAP32[$p>>2]|0; + $42 = (_rowSetListToTree($41)|0); + $43 = HEAP32[$pTree>>2]|0; + $44 = (($43) + 12|0); + HEAP32[$44>>2] = $42; + } + $56 = HEAP32[$pTree>>2]|0; + $57 = ($56|0)==(0|0); + if ($57) { + $58 = HEAP32[$3>>2]|0; + $59 = (_rowSetEntryAlloc($58)|0); + HEAP32[$pTree>>2] = $59; + $60 = HEAP32[$ppPrevTree>>2]|0; + HEAP32[$60>>2] = $59; + $61 = HEAP32[$pTree>>2]|0; + $62 = ($61|0)!=(0|0); + if ($62) { + $63 = HEAP32[$pTree>>2]|0; + $64 = $63; + $65 = $64; + HEAP32[$65>>2] = 0; + $66 = (($64) + 4)|0; + $67 = $66; + HEAP32[$67>>2] = 0; + $68 = HEAP32[$pTree>>2]|0; + $69 = (($68) + 8|0); + HEAP32[$69>>2] = 0; + $70 = HEAP32[$p>>2]|0; + $71 = (_rowSetListToTree($70)|0); + $72 = HEAP32[$pTree>>2]|0; + $73 = (($72) + 12|0); + HEAP32[$73>>2] = $71; + } + } + $74 = HEAP32[$3>>2]|0; + $75 = (($74) + 8|0); + HEAP32[$75>>2] = 0; + $76 = HEAP32[$3>>2]|0; + $77 = (($76) + 12|0); + HEAP32[$77>>2] = 0; + $78 = HEAP32[$3>>2]|0; + $79 = (($78) + 26|0); + $80 = HEAP16[$79>>1]|0; + $81 = $80&65535; + $82 = $81 | 1; + $83 = $82&65535; + HEAP16[$79>>1] = $83; + } + $84 = HEAP32[$4>>2]|0; + $85 = HEAP32[$3>>2]|0; + $86 = (($85) + 28|0); + HEAP32[$86>>2] = $84; + } + $87 = HEAP32[$3>>2]|0; + $88 = (($87) + 20|0); + $89 = HEAP32[$88>>2]|0; + HEAP32[$pTree>>2] = $89; + L21: while(1) { + $90 = HEAP32[$pTree>>2]|0; + $91 = ($90|0)!=(0|0); + if (!($91)) { + label = 25; + break; + } + $92 = HEAP32[$pTree>>2]|0; + $93 = (($92) + 12|0); + $94 = HEAP32[$93>>2]|0; + HEAP32[$p>>2] = $94; + while(1) { + $95 = HEAP32[$p>>2]|0; + $96 = ($95|0)!=(0|0); + if (!($96)) { + break; + } + $97 = HEAP32[$p>>2]|0; + $98 = $97; + $99 = $98; + $100 = HEAP32[$99>>2]|0; + $101 = (($98) + 4)|0; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + $104 = $5; + $105 = $104; + $106 = HEAP32[$105>>2]|0; + $107 = (($104) + 4)|0; + $108 = $107; + $109 = HEAP32[$108>>2]|0; + $110 = ($103|0)<($109|0); + $111 = ($103|0)==($109|0); + $112 = ($100>>>0)<($106>>>0); + $113 = $111 & $112; + $114 = $110 | $113; + $115 = HEAP32[$p>>2]|0; + if ($114) { + $116 = (($115) + 8|0); + $117 = HEAP32[$116>>2]|0; + HEAP32[$p>>2] = $117; + continue; + } + $118 = $115; + $119 = $118; + $120 = HEAP32[$119>>2]|0; + $121 = (($118) + 4)|0; + $122 = $121; + $123 = HEAP32[$122>>2]|0; + $124 = $5; + $125 = $124; + $126 = HEAP32[$125>>2]|0; + $127 = (($124) + 4)|0; + $128 = $127; + $129 = HEAP32[$128>>2]|0; + $130 = ($123|0)>($129|0); + $131 = ($123|0)==($129|0); + $132 = ($120>>>0)>($126>>>0); + $133 = $131 & $132; + $134 = $130 | $133; + if (!($134)) { + label = 23; + break L21; + } + $135 = HEAP32[$p>>2]|0; + $136 = (($135) + 12|0); + $137 = HEAP32[$136>>2]|0; + HEAP32[$p>>2] = $137; + } + $138 = HEAP32[$pTree>>2]|0; + $139 = (($138) + 8|0); + $140 = HEAP32[$139>>2]|0; + HEAP32[$pTree>>2] = $140; + } + if ((label|0) == 23) { + HEAP32[$2>>2] = 1; + $141 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($141|0); + } + else if ((label|0) == 25) { + HEAP32[$2>>2] = 0; + $141 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($141|0); + } + return 0|0; +} +function _sqlite3PagerOkToChangeJournalMode($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $pPager; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 16|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = ($5|0)>=(3); + if ($6) { + HEAP32[$0>>2] = 0; + $25 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($25|0); + } + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 64|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if ($11) { + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 72|0); + $14 = $13; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = ($19|0)>(0); + $21 = ($19|0)==(0); + $22 = ($16>>>0)>(0); + $23 = $21 & $22; + $24 = $20 | $23; + if ($24) { + HEAP32[$0>>2] = 0; + $25 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($25|0); + } + } + HEAP32[$0>>2] = 1; + $25 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($25|0); +} +function _sqlite3PagerWalSupported($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pMethods = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pMethods = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 60|0); + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + HEAP32[$pMethods>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 4|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = ($8|0)!=(0); + if ($9) { + $18 = 1; + $17 = $18&1; + STACKTOP = sp;return ($17|0); + } + $10 = HEAP32[$pMethods>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)>=(2); + if (!($12)) { + $18 = 0; + $17 = $18&1; + STACKTOP = sp;return ($17|0); + } + $13 = HEAP32[$pMethods>>2]|0; + $14 = (($13) + 52|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)!=(0|0); + $18 = $16; + $17 = $18&1; + STACKTOP = sp;return ($17|0); +} +function _sqlite3PagerCloseWal($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $logexists = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $rc = sp; + $logexists = sp + 4|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 208|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + HEAP32[$logexists>>2] = 0; + $5 = HEAP32[$0>>2]|0; + $6 = (_pagerLockDb($5,1)|0); + HEAP32[$rc>>2] = $6; + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)==(0); + if ($8) { + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 212|0); + $13 = HEAP32[$12>>2]|0; + $14 = (_sqlite3OsAccess($10,$13,0,$logexists)|0); + HEAP32[$rc>>2] = $14; + } + $15 = HEAP32[$rc>>2]|0; + $16 = ($15|0)==(0); + if ($16) { + $17 = HEAP32[$logexists>>2]|0; + $18 = ($17|0)!=(0); + if ($18) { + $19 = HEAP32[$0>>2]|0; + $20 = (_pagerOpenWal($19)|0); + HEAP32[$rc>>2] = $20; + } + } + } + $21 = HEAP32[$rc>>2]|0; + $22 = ($21|0)==(0); + if (!($22)) { + $48 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($48|0); + } + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 208|0); + $25 = HEAP32[$24>>2]|0; + $26 = ($25|0)!=(0|0); + if (!($26)) { + $48 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($48|0); + } + $27 = HEAP32[$0>>2]|0; + $28 = (_pagerExclusiveLock($27)|0); + HEAP32[$rc>>2] = $28; + $29 = HEAP32[$rc>>2]|0; + $30 = ($29|0)==(0); + if (!($30)) { + $48 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($48|0); + } + $31 = HEAP32[$0>>2]|0; + $32 = (($31) + 208|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 9|0); + $36 = HEAP8[$35>>0]|0; + $37 = $36&255; + $38 = HEAP32[$0>>2]|0; + $39 = (($38) + 152|0); + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + 200|0); + $43 = HEAP32[$42>>2]|0; + $44 = (_sqlite3WalClose($33,$37,$40,$43)|0); + HEAP32[$rc>>2] = $44; + $45 = HEAP32[$0>>2]|0; + $46 = (($45) + 208|0); + HEAP32[$46>>2] = 0; + $47 = HEAP32[$0>>2]|0; + _pagerFixMaplimit($47); + $48 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($48|0); +} +function _sqlite3PagerSetJournalMode($pPager,$eMode) { + $pPager = $pPager|0; + $eMode = $eMode|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $9 = 0, $eOld = 0, $or$cond = 0, $rc = 0, $state = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 12|0; + $1 = sp; + $eOld = sp + 16|0; + $rc = sp + 8|0; + $state = sp + 4|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $eMode; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 5|0); + $4 = HEAP8[$3>>0]|0; + HEAP8[$eOld>>0] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 15|0); + $7 = HEAP8[$6>>0]|0; + $8 = ($7<<24>>24)!=(0); + if ($8) { + $9 = HEAP32[$1>>2]|0; + $10 = ($9|0)!=(4); + $11 = HEAP32[$1>>2]|0; + $12 = ($11|0)!=(2); + $or$cond = $10 & $12; + if ($or$cond) { + $13 = HEAP8[$eOld>>0]|0; + $14 = $13&255; + HEAP32[$1>>2] = $14; + } + } + $15 = HEAP32[$1>>2]|0; + $16 = HEAP8[$eOld>>0]|0; + $17 = $16&255; + $18 = ($15|0)!=($17|0); + do { + if ($18) { + $19 = HEAP32[$1>>2]|0; + $20 = $19&255; + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 5|0); + HEAP8[$22>>0] = $20; + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 4|0); + $25 = HEAP8[$24>>0]|0; + $26 = ($25<<24>>24)!=(0); + if (!($26)) { + $27 = HEAP8[$eOld>>0]|0; + $28 = $27&255; + $29 = $28 & 5; + $30 = ($29|0)==(1); + if ($30) { + $31 = HEAP32[$1>>2]|0; + $32 = $31 & 1; + $33 = ($32|0)==(0); + if ($33) { + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 64|0); + $36 = HEAP32[$35>>2]|0; + (_sqlite3OsClose($36)|0); + $37 = HEAP32[$0>>2]|0; + $38 = (($37) + 17|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39&255; + $41 = ($40|0)>=(2); + if ($41) { + $42 = HEAP32[$0>>2]|0; + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 172|0); + $46 = HEAP32[$45>>2]|0; + (_sqlite3OsDelete($43,$46,0)|0); + break; + } + HEAP32[$rc>>2] = 0; + $47 = HEAP32[$0>>2]|0; + $48 = (($47) + 16|0); + $49 = HEAP8[$48>>0]|0; + $50 = $49&255; + HEAP32[$state>>2] = $50; + $51 = HEAP32[$state>>2]|0; + $52 = ($51|0)==(0); + if ($52) { + $53 = HEAP32[$0>>2]|0; + $54 = (_sqlite3PagerSharedLock($53)|0); + HEAP32[$rc>>2] = $54; + } + $55 = HEAP32[$0>>2]|0; + $56 = (($55) + 16|0); + $57 = HEAP8[$56>>0]|0; + $58 = $57&255; + $59 = ($58|0)==(1); + if ($59) { + $60 = HEAP32[$0>>2]|0; + $61 = (_pagerLockDb($60,2)|0); + HEAP32[$rc>>2] = $61; + } + $62 = HEAP32[$rc>>2]|0; + $63 = ($62|0)==(0); + if ($63) { + $64 = HEAP32[$0>>2]|0; + $65 = HEAP32[$64>>2]|0; + $66 = HEAP32[$0>>2]|0; + $67 = (($66) + 172|0); + $68 = HEAP32[$67>>2]|0; + (_sqlite3OsDelete($65,$68,0)|0); + } + $69 = HEAP32[$rc>>2]|0; + $70 = ($69|0)==(0); + if ($70) { + $71 = HEAP32[$state>>2]|0; + $72 = ($71|0)==(1); + if ($72) { + $73 = HEAP32[$0>>2]|0; + (_pagerUnlockDb($73,1)|0); + break; + } + } + $74 = HEAP32[$state>>2]|0; + $75 = ($74|0)==(0); + if ($75) { + $76 = HEAP32[$0>>2]|0; + _pager_unlock($76); + } + } + } + } + } + } while(0); + $77 = HEAP32[$0>>2]|0; + $78 = (($77) + 5|0); + $79 = HEAP8[$78>>0]|0; + $80 = $79&255; + STACKTOP = sp;return ($80|0); +} +function _sqlite3RunVacuum($pzErrMsg,$db) { + $pzErrMsg = $pzErrMsg|0; + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $isMemDb = 0; + var $meta = 0, $nDb = 0, $nRes = 0, $pDb = 0, $pMain = 0, $pTemp = 0, $rc = 0, $saved_flags = 0, $saved_nChange = 0, $saved_nTotalChange = 0, $saved_xTrace = 0, $vararg_buffer1 = 0, $zSql = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $vararg_buffer1 = sp; + $0 = sp + 64|0; + $1 = sp + 60|0; + $2 = sp + 56|0; + $rc = sp + 52|0; + $pMain = sp + 48|0; + $pTemp = sp + 44|0; + $zSql = sp + 40|0; + $saved_flags = sp + 36|0; + $saved_nChange = sp + 68|0; + $saved_nTotalChange = sp + 24|0; + $saved_xTrace = sp + 20|0; + $pDb = sp + 16|0; + $isMemDb = sp + 12|0; + $nRes = sp + 8|0; + $nDb = sp + 4|0; + $meta = sp + 28|0; + $i = sp + 32|0; + HEAP32[$1>>2] = $pzErrMsg; + HEAP32[$2>>2] = $db; + HEAP32[$rc>>2] = 0; + HEAP32[$zSql>>2] = 0; + HEAP32[$pDb>>2] = 0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 62|0); + $5 = HEAP8[$4>>0]|0; + $6 = ($5<<24>>24)!=(0); + if (!($6)) { + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$2>>2]|0; + _sqlite3SetString($7,$8,38552,$vararg_buffer1); + HEAP32[$0>>2] = 1; + $237 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($237|0); + } + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 140|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)>(1); + if ($12) { + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$2>>2]|0; + _sqlite3SetString($13,$14,38592,$vararg_buffer1); + HEAP32[$0>>2] = 1; + $237 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($237|0); + } + $15 = HEAP32[$2>>2]|0; + $16 = (($15) + 24|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$saved_flags>>2] = $17; + $18 = HEAP32[$2>>2]|0; + $19 = (($18) + 80|0); + $20 = HEAP32[$19>>2]|0; + HEAP32[$saved_nChange>>2] = $20; + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 84|0); + $23 = HEAP32[$22>>2]|0; + HEAP32[$saved_nTotalChange>>2] = $23; + $24 = HEAP32[$2>>2]|0; + $25 = (($24) + 164|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$saved_xTrace>>2] = $26; + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 24|0); + $29 = HEAP32[$28>>2]|0; + $30 = $29 | 2107392; + HEAP32[$28>>2] = $30; + $31 = HEAP32[$2>>2]|0; + $32 = (($31) + 24|0); + $33 = HEAP32[$32>>2]|0; + $34 = $33 & -655361; + HEAP32[$32>>2] = $34; + $35 = HEAP32[$2>>2]|0; + $36 = (($35) + 164|0); + HEAP32[$36>>2] = 0; + $37 = HEAP32[$2>>2]|0; + $38 = (($37) + 16|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + 4|0); + $41 = HEAP32[$40>>2]|0; + HEAP32[$pMain>>2] = $41; + $42 = HEAP32[$pMain>>2]|0; + $43 = (_sqlite3BtreePager($42)|0); + $44 = (_sqlite3PagerIsMemdb($43)|0); + HEAP32[$isMemDb>>2] = $44; + $45 = HEAP32[$2>>2]|0; + $46 = (($45) + 20|0); + $47 = HEAP32[$46>>2]|0; + HEAP32[$nDb>>2] = $47; + $48 = HEAP32[$2>>2]|0; + $49 = (_sqlite3TempInMemory($48)|0); + $50 = ($49|0)!=(0); + if ($50) { + HEAP32[$zSql>>2] = 38640; + } else { + HEAP32[$zSql>>2] = 38672; + } + $51 = HEAP32[$2>>2]|0; + $52 = HEAP32[$1>>2]|0; + $53 = HEAP32[$zSql>>2]|0; + $54 = (_execSql($51,$52,$53)|0); + HEAP32[$rc>>2] = $54; + $55 = HEAP32[$2>>2]|0; + $56 = (($55) + 20|0); + $57 = HEAP32[$56>>2]|0; + $58 = HEAP32[$nDb>>2]|0; + $59 = ($57|0)>($58|0); + if ($59) { + $60 = HEAP32[$2>>2]|0; + $61 = (($60) + 20|0); + $62 = HEAP32[$61>>2]|0; + $63 = (($62) - 1)|0; + $64 = HEAP32[$2>>2]|0; + $65 = (($64) + 16|0); + $66 = HEAP32[$65>>2]|0; + $67 = (($66) + ($63<<4)|0); + HEAP32[$pDb>>2] = $67; + } + $68 = HEAP32[$rc>>2]|0; + $69 = ($68|0)!=(0); + L16: do { + if (!($69)) { + $70 = HEAP32[$2>>2]|0; + $71 = (($70) + 20|0); + $72 = HEAP32[$71>>2]|0; + $73 = (($72) - 1)|0; + $74 = HEAP32[$2>>2]|0; + $75 = (($74) + 16|0); + $76 = HEAP32[$75>>2]|0; + $77 = (($76) + ($73<<4)|0); + $78 = (($77) + 4|0); + $79 = HEAP32[$78>>2]|0; + HEAP32[$pTemp>>2] = $79; + $80 = HEAP32[$pTemp>>2]|0; + (_sqlite3BtreeCommit($80)|0); + $81 = HEAP32[$pMain>>2]|0; + $82 = (_sqlite3BtreeGetReserve($81)|0); + HEAP32[$nRes>>2] = $82; + $83 = HEAP32[$2>>2]|0; + $84 = HEAP32[$1>>2]|0; + $85 = (_execSql($83,$84,38696)|0); + HEAP32[$rc>>2] = $85; + $86 = HEAP32[$rc>>2]|0; + $87 = ($86|0)!=(0); + if (!($87)) { + $88 = HEAP32[$2>>2]|0; + $89 = HEAP32[$1>>2]|0; + $90 = (_execSql($88,$89,38736)|0); + HEAP32[$rc>>2] = $90; + $91 = HEAP32[$rc>>2]|0; + $92 = ($91|0)!=(0); + if (!($92)) { + $93 = HEAP32[$pMain>>2]|0; + $94 = (_sqlite3BtreeBeginTrans($93,2)|0); + HEAP32[$rc>>2] = $94; + $95 = HEAP32[$rc>>2]|0; + $96 = ($95|0)!=(0); + if (!($96)) { + $97 = HEAP32[$pMain>>2]|0; + $98 = (_sqlite3BtreePager($97)|0); + $99 = (_sqlite3PagerGetJournalMode($98)|0); + $100 = ($99|0)==(5); + if ($100) { + $101 = HEAP32[$2>>2]|0; + $102 = (($101) + 72|0); + HEAP32[$102>>2] = 0; + } + $103 = HEAP32[$pTemp>>2]|0; + $104 = HEAP32[$pMain>>2]|0; + $105 = (_sqlite3BtreeGetPageSize($104)|0); + $106 = HEAP32[$nRes>>2]|0; + $107 = (_sqlite3BtreeSetPageSize($103,$105,$106,0)|0); + $108 = ($107|0)!=(0); + do { + if (!($108)) { + $109 = HEAP32[$isMemDb>>2]|0; + $110 = ($109|0)!=(0); + if (!($110)) { + $111 = HEAP32[$pTemp>>2]|0; + $112 = HEAP32[$2>>2]|0; + $113 = (($112) + 72|0); + $114 = HEAP32[$113>>2]|0; + $115 = HEAP32[$nRes>>2]|0; + $116 = (_sqlite3BtreeSetPageSize($111,$114,$115,0)|0); + $117 = ($116|0)!=(0); + if ($117) { + break; + } + } + $118 = HEAP32[$2>>2]|0; + $119 = (($118) + 64|0); + $120 = HEAP8[$119>>0]|0; + $121 = $120&255; + $122 = ($121|0)!=(0); + if (!($122)) { + $123 = HEAP32[$pTemp>>2]|0; + $124 = HEAP32[$2>>2]|0; + $125 = (($124) + 66|0); + $126 = HEAP8[$125>>0]|0; + $127 = $126 << 24 >> 24; + $128 = ($127|0)>=(0); + if ($128) { + $129 = HEAP32[$2>>2]|0; + $130 = (($129) + 66|0); + $131 = HEAP8[$130>>0]|0; + $132 = $131 << 24 >> 24; + $135 = $132; + } else { + $133 = HEAP32[$pMain>>2]|0; + $134 = (_sqlite3BtreeGetAutoVacuum($133)|0); + $135 = $134; + } + (_sqlite3BtreeSetAutoVacuum($123,$135)|0); + $136 = HEAP32[$2>>2]|0; + $137 = HEAP32[$1>>2]|0; + $138 = (_execExecSql($136,$137,38744)|0); + HEAP32[$rc>>2] = $138; + $139 = HEAP32[$rc>>2]|0; + $140 = ($139|0)!=(0); + if ($140) { + break L16; + } + $141 = HEAP32[$2>>2]|0; + $142 = HEAP32[$1>>2]|0; + $143 = (_execExecSql($141,$142,38896)|0); + HEAP32[$rc>>2] = $143; + $144 = HEAP32[$rc>>2]|0; + $145 = ($144|0)!=(0); + if ($145) { + break L16; + } + $146 = HEAP32[$2>>2]|0; + $147 = HEAP32[$1>>2]|0; + $148 = (_execExecSql($146,$147,39000)|0); + HEAP32[$rc>>2] = $148; + $149 = HEAP32[$rc>>2]|0; + $150 = ($149|0)!=(0); + if ($150) { + break L16; + } + $151 = HEAP32[$2>>2]|0; + $152 = HEAP32[$1>>2]|0; + $153 = (_execExecSql($151,$152,39120)|0); + HEAP32[$rc>>2] = $153; + $154 = HEAP32[$rc>>2]|0; + $155 = ($154|0)!=(0); + if ($155) { + break L16; + } + $156 = HEAP32[$2>>2]|0; + $157 = HEAP32[$1>>2]|0; + $158 = (_execExecSql($156,$157,39320)|0); + HEAP32[$rc>>2] = $158; + $159 = HEAP32[$rc>>2]|0; + $160 = ($159|0)!=(0); + if ($160) { + break L16; + } + $161 = HEAP32[$2>>2]|0; + $162 = HEAP32[$1>>2]|0; + $163 = (_execExecSql($161,$162,39440)|0); + HEAP32[$rc>>2] = $163; + $164 = HEAP32[$rc>>2]|0; + $165 = ($164|0)!=(0); + if ($165) { + break L16; + } + $166 = HEAP32[$2>>2]|0; + $167 = HEAP32[$1>>2]|0; + $168 = (_execSql($166,$167,39600)|0); + HEAP32[$rc>>2] = $168; + $169 = HEAP32[$rc>>2]|0; + $170 = ($169|0)!=(0); + if ($170) { + break L16; + } + HEAP32[$i>>2] = 0; + while(1) { + $171 = HEAP32[$i>>2]|0; + $172 = ($171|0)<(10); + $173 = HEAP32[$pMain>>2]|0; + if (!($172)) { + break; + } + $174 = HEAP32[$i>>2]|0; + $175 = (39784 + ($174)|0); + $176 = HEAP8[$175>>0]|0; + $177 = $176&255; + _sqlite3BtreeGetMeta($173,$177,$meta); + $178 = HEAP32[$pTemp>>2]|0; + $179 = HEAP32[$i>>2]|0; + $180 = (39784 + ($179)|0); + $181 = HEAP8[$180>>0]|0; + $182 = $181&255; + $183 = HEAP32[$meta>>2]|0; + $184 = HEAP32[$i>>2]|0; + $185 = (($184) + 1)|0; + $186 = (39784 + ($185)|0); + $187 = HEAP8[$186>>0]|0; + $188 = $187&255; + $189 = (($183) + ($188))|0; + $190 = (_sqlite3BtreeUpdateMeta($178,$182,$189)|0); + HEAP32[$rc>>2] = $190; + $191 = HEAP32[$rc>>2]|0; + $192 = ($191|0)!=(0); + if ($192) { + break L16; + } + $193 = HEAP32[$i>>2]|0; + $194 = (($193) + 2)|0; + HEAP32[$i>>2] = $194; + } + $195 = HEAP32[$pTemp>>2]|0; + $196 = (_sqlite3BtreeCopyFile($173,$195)|0); + HEAP32[$rc>>2] = $196; + $197 = HEAP32[$rc>>2]|0; + $198 = ($197|0)!=(0); + if ($198) { + break L16; + } + $199 = HEAP32[$pTemp>>2]|0; + $200 = (_sqlite3BtreeCommit($199)|0); + HEAP32[$rc>>2] = $200; + $201 = HEAP32[$rc>>2]|0; + $202 = ($201|0)!=(0); + if ($202) { + break L16; + } + $203 = HEAP32[$pMain>>2]|0; + $204 = HEAP32[$pTemp>>2]|0; + $205 = (_sqlite3BtreeGetAutoVacuum($204)|0); + (_sqlite3BtreeSetAutoVacuum($203,$205)|0); + $206 = HEAP32[$pMain>>2]|0; + $207 = HEAP32[$pTemp>>2]|0; + $208 = (_sqlite3BtreeGetPageSize($207)|0); + $209 = HEAP32[$nRes>>2]|0; + $210 = (_sqlite3BtreeSetPageSize($206,$208,$209,1)|0); + HEAP32[$rc>>2] = $210; + break L16; + } + } + } while(0); + HEAP32[$rc>>2] = 7; + } + } + } + } + } while(0); + $211 = HEAP32[$saved_flags>>2]|0; + $212 = HEAP32[$2>>2]|0; + $213 = (($212) + 24|0); + HEAP32[$213>>2] = $211; + $214 = HEAP32[$saved_nChange>>2]|0; + $215 = HEAP32[$2>>2]|0; + $216 = (($215) + 80|0); + HEAP32[$216>>2] = $214; + $217 = HEAP32[$saved_nTotalChange>>2]|0; + $218 = HEAP32[$2>>2]|0; + $219 = (($218) + 84|0); + HEAP32[$219>>2] = $217; + $220 = HEAP32[$saved_xTrace>>2]|0; + $221 = HEAP32[$2>>2]|0; + $222 = (($221) + 164|0); + HEAP32[$222>>2] = $220; + $223 = HEAP32[$pMain>>2]|0; + (_sqlite3BtreeSetPageSize($223,-1,-1,1)|0); + $224 = HEAP32[$2>>2]|0; + $225 = (($224) + 62|0); + HEAP8[$225>>0] = 1; + $226 = HEAP32[$pDb>>2]|0; + $227 = ($226|0)!=(0|0); + if ($227) { + $228 = HEAP32[$pDb>>2]|0; + $229 = (($228) + 4|0); + $230 = HEAP32[$229>>2]|0; + (_sqlite3BtreeClose($230)|0); + $231 = HEAP32[$pDb>>2]|0; + $232 = (($231) + 4|0); + HEAP32[$232>>2] = 0; + $233 = HEAP32[$pDb>>2]|0; + $234 = (($233) + 12|0); + HEAP32[$234>>2] = 0; + } + $235 = HEAP32[$2>>2]|0; + _sqlite3ResetAllSchemasOfConnection($235); + $236 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $236; + $237 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($237|0); +} +function _sqlite3BtreeIncrVacuum($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nFin = 0, $nFree = 0, $nOrig = 0, $pBt = 0, $rc = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $rc = sp; + $pBt = sp + 4|0; + $nOrig = sp + 8|0; + $nFree = sp + 12|0; + $nFin = sp + 16|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pBt>>2] = $3; + $4 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($4); + $5 = HEAP32[$pBt>>2]|0; + $6 = (($5) + 17|0); + $7 = HEAP8[$6>>0]|0; + $8 = ($7<<24>>24)!=(0); + if (!($8)) { + HEAP32[$rc>>2] = 101; + $54 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($54|0); + } + $9 = HEAP32[$pBt>>2]|0; + $10 = (_btreePagecount($9)|0); + HEAP32[$nOrig>>2] = $10; + $11 = HEAP32[$pBt>>2]|0; + $12 = (($11) + 12|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 56|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + 36|0); + $17 = (_sqlite3Get4byte($16)|0); + HEAP32[$nFree>>2] = $17; + $18 = HEAP32[$pBt>>2]|0; + $19 = HEAP32[$nOrig>>2]|0; + $20 = HEAP32[$nFree>>2]|0; + $21 = (_finalDbSize($18,$19,$20)|0); + HEAP32[$nFin>>2] = $21; + $22 = HEAP32[$nOrig>>2]|0; + $23 = HEAP32[$nFin>>2]|0; + $24 = ($22>>>0)<($23>>>0); + if ($24) { + $25 = (_sqlite3CorruptError(54318)|0); + HEAP32[$rc>>2] = $25; + $54 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($54|0); + } + $26 = HEAP32[$nFree>>2]|0; + $27 = ($26>>>0)>(0); + if (!($27)) { + HEAP32[$rc>>2] = 101; + $54 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($54|0); + } + $28 = HEAP32[$pBt>>2]|0; + $29 = (_saveAllCursors($28,0,0)|0); + HEAP32[$rc>>2] = $29; + $30 = HEAP32[$rc>>2]|0; + $31 = ($30|0)==(0); + if ($31) { + $32 = HEAP32[$pBt>>2]|0; + _invalidateAllOverflowCache($32); + $33 = HEAP32[$pBt>>2]|0; + $34 = HEAP32[$nFin>>2]|0; + $35 = HEAP32[$nOrig>>2]|0; + $36 = (_incrVacuumStep($33,$34,$35,0)|0); + HEAP32[$rc>>2] = $36; + } + $37 = HEAP32[$rc>>2]|0; + $38 = ($37|0)==(0); + if (!($38)) { + $54 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($54|0); + } + $39 = HEAP32[$pBt>>2]|0; + $40 = (($39) + 12|0); + $41 = HEAP32[$40>>2]|0; + $42 = (($41) + 68|0); + $43 = HEAP32[$42>>2]|0; + $44 = (_sqlite3PagerWrite($43)|0); + HEAP32[$rc>>2] = $44; + $45 = HEAP32[$pBt>>2]|0; + $46 = (($45) + 12|0); + $47 = HEAP32[$46>>2]|0; + $48 = (($47) + 56|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) + 28|0); + $51 = HEAP32[$pBt>>2]|0; + $52 = (($51) + 44|0); + $53 = HEAP32[$52>>2]|0; + _sqlite3Put4byte($50,$53); + $54 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($54|0); +} +function _sqlite3BtreeLockTable($p,$iTab,$isWriteLock) { + $p = $p|0; + $iTab = $iTab|0; + $isWriteLock = $isWriteLock|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $lockType = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 13|0; + $rc = sp + 4|0; + $lockType = sp + 12|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $iTab; + HEAP8[$2>>0] = $isWriteLock; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 9|0); + $5 = HEAP8[$4>>0]|0; + $6 = ($5<<24>>24)!=(0); + if (!($6)) { + $22 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($22|0); + } + $7 = HEAP8[$2>>0]|0; + $8 = $7&255; + $9 = (1 + ($8))|0; + $10 = $9&255; + HEAP8[$lockType>>0] = $10; + $11 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($11); + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = HEAP8[$lockType>>0]|0; + $15 = (_querySharedCacheTableLock($12,$13,$14)|0); + HEAP32[$rc>>2] = $15; + $16 = HEAP32[$rc>>2]|0; + $17 = ($16|0)==(0); + if (!($17)) { + $22 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($22|0); + } + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = HEAP8[$lockType>>0]|0; + $21 = (_setSharedCacheTableLock($18,$19,$20)|0); + HEAP32[$rc>>2] = $21; + $22 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($22|0); +} +function _sqlite3VtabBegin($db,$pVTab) { + $db = $db|0; + $pVTab = $pVTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pModule = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $pModule = sp + 12|0; + $i = sp + 16|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pVTab; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 296|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)>(0); + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 320|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)==(0|0); + if ($10) { + HEAP32[$0>>2] = 6; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); + } + } + $11 = HEAP32[$2>>2]|0; + $12 = ($11|0)!=(0|0); + if (!($12)) { + HEAP32[$0>>2] = 0; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); + } + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 8|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$15>>2]|0; + HEAP32[$pModule>>2] = $16; + $17 = HEAP32[$pModule>>2]|0; + $18 = (($17) + 56|0); + $19 = HEAP32[$18>>2]|0; + $20 = ($19|0)!=(0|0); + if ($20) { + HEAP32[$i>>2] = 0; + while(1) { + $21 = HEAP32[$i>>2]|0; + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 296|0); + $24 = HEAP32[$23>>2]|0; + $25 = ($21|0)<($24|0); + if (!($25)) { + break; + } + $26 = HEAP32[$i>>2]|0; + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 320|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + ($26<<2)|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$2>>2]|0; + $33 = ($31|0)==($32|0); + if ($33) { + label = 10; + break; + } + $34 = HEAP32[$i>>2]|0; + $35 = (($34) + 1)|0; + HEAP32[$i>>2] = $35; + } + if ((label|0) == 10) { + HEAP32[$0>>2] = 0; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); + } + $36 = HEAP32[$1>>2]|0; + $37 = (_growVTrans($36)|0); + HEAP32[$rc>>2] = $37; + $38 = HEAP32[$rc>>2]|0; + $39 = ($38|0)==(0); + if ($39) { + $40 = HEAP32[$pModule>>2]|0; + $41 = (($40) + 56|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$2>>2]|0; + $44 = (($43) + 8|0); + $45 = HEAP32[$44>>2]|0; + $46 = (FUNCTION_TABLE_ii[$42 & 63]($45)|0); + HEAP32[$rc>>2] = $46; + $47 = HEAP32[$rc>>2]|0; + $48 = ($47|0)==(0); + if ($48) { + $49 = HEAP32[$1>>2]|0; + $50 = HEAP32[$2>>2]|0; + _addToVTrans($49,$50); + } + } + } + $51 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $51; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); +} +function _sqlite3VtabCallCreate($db,$iDb,$zTab,$pzErr) { + $db = $db|0; + $iDb = $iDb|0; + $zTab = $zTab|0; + $pzErr = $pzErr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pMod = 0, $pTab = 0, $rc = 0, $vararg_buffer = 0, $zMod = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 28|0; + $1 = sp + 24|0; + $2 = sp + 20|0; + $3 = sp + 32|0; + $rc = sp + 8|0; + $pTab = sp + 4|0; + $pMod = sp + 12|0; + $zMod = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $iDb; + HEAP32[$2>>2] = $zTab; + HEAP32[$3>>2] = $pzErr; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + ($6<<4)|0); + $11 = HEAP32[$10>>2]|0; + $12 = (_sqlite3FindTable($4,$5,$11)|0); + HEAP32[$pTab>>2] = $12; + $13 = HEAP32[$pTab>>2]|0; + $14 = (($13) + 56|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$15>>2]|0; + HEAP32[$zMod>>2] = $16; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 300|0); + $19 = HEAP32[$zMod>>2]|0; + $20 = HEAP32[$zMod>>2]|0; + $21 = (_sqlite3Strlen30($20)|0); + $22 = (_sqlite3HashFind($18,$19,$21)|0); + HEAP32[$pMod>>2] = $22; + $23 = HEAP32[$pMod>>2]|0; + $24 = ($23|0)!=(0|0); + $25 = HEAP32[$0>>2]|0; + if ($24) { + $29 = HEAP32[$pTab>>2]|0; + $30 = HEAP32[$pMod>>2]|0; + $31 = HEAP32[$pMod>>2]|0; + $32 = HEAP32[$31>>2]|0; + $33 = (($32) + 4|0); + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$3>>2]|0; + $36 = (_vtabCallConstructor($25,$29,$30,$34,$35)|0); + HEAP32[$rc>>2] = $36; + } else { + $26 = HEAP32[$zMod>>2]|0; + HEAP32[$vararg_buffer>>2] = $26; + $27 = (_sqlite3MPrintf($25,24464,$vararg_buffer)|0); + $28 = HEAP32[$3>>2]|0; + HEAP32[$28>>2] = $27; + HEAP32[$rc>>2] = 1; + } + $37 = HEAP32[$rc>>2]|0; + $38 = ($37|0)==(0); + if (!($38)) { + $51 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($51|0); + } + $39 = HEAP32[$0>>2]|0; + $40 = HEAP32[$pTab>>2]|0; + $41 = (_sqlite3GetVTable($39,$40)|0); + $42 = ($41|0)!=(0|0); + if (!($42)) { + $51 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($51|0); + } + $43 = HEAP32[$0>>2]|0; + $44 = (_growVTrans($43)|0); + HEAP32[$rc>>2] = $44; + $45 = HEAP32[$rc>>2]|0; + $46 = ($45|0)==(0); + if (!($46)) { + $51 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($51|0); + } + $47 = HEAP32[$0>>2]|0; + $48 = HEAP32[$0>>2]|0; + $49 = HEAP32[$pTab>>2]|0; + $50 = (_sqlite3GetVTable($48,$49)|0); + _addToVTrans($47,$50); + $51 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($51|0); +} +function _sqlite3VtabCallDestroy($db,$iDb,$zTab) { + $db = $db|0; + $iDb = $iDb|0; + $zTab = $zTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0; + var $pTab = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $pTab = sp + 12|0; + $p = sp + 16|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $iDb; + HEAP32[$2>>2] = $zTab; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 16|0); + $8 = HEAP32[$7>>2]|0; + $9 = (($8) + ($5<<4)|0); + $10 = HEAP32[$9>>2]|0; + $11 = (_sqlite3FindTable($3,$4,$10)|0); + HEAP32[$pTab>>2] = $11; + $12 = HEAP32[$pTab>>2]|0; + $13 = ($12|0)!=(0|0); + if (!($13)) { + $38 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($38|0); + } + $14 = HEAP32[$pTab>>2]|0; + $15 = (($14) + 60|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(0|0); + if (!($17)) { + $38 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($38|0); + } + $18 = HEAP32[$0>>2]|0; + $19 = HEAP32[$pTab>>2]|0; + $20 = (_vtabDisconnectAll($18,$19)|0); + HEAP32[$p>>2] = $20; + $21 = HEAP32[$p>>2]|0; + $22 = (($21) + 4|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + 20|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$p>>2]|0; + $28 = (($27) + 8|0); + $29 = HEAP32[$28>>2]|0; + $30 = (FUNCTION_TABLE_ii[$26 & 63]($29)|0); + HEAP32[$rc>>2] = $30; + $31 = HEAP32[$rc>>2]|0; + $32 = ($31|0)==(0); + if (!($32)) { + $38 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($38|0); + } + $33 = HEAP32[$p>>2]|0; + $34 = (($33) + 8|0); + HEAP32[$34>>2] = 0; + $35 = HEAP32[$pTab>>2]|0; + $36 = (($35) + 60|0); + HEAP32[$36>>2] = 0; + $37 = HEAP32[$p>>2]|0; + _sqlite3VtabUnlock($37); + $38 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($38|0); +} +function _sqlite3BtreeMaxPageCount($p,$mxPage) { + $p = $p|0; + $mxPage = $mxPage|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $n = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $mxPage; + $2 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($2); + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 4|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (_sqlite3PagerMaxPageCount($6,$7)|0); + HEAP32[$n>>2] = $8; + $9 = HEAP32[$n>>2]|0; + STACKTOP = sp;return ($9|0); +} +function _sqlite3VdbeExpandSql($p,$zRawSql) { + $p = $p|0; + $zRawSql = $zRawSql|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0.0, $99 = 0, $db = 0, $enc = 0; + var $i = 0, $idx = 0, $n = 0, $nOut = 0, $nOut1 = 0, $nToken = 0, $nextIndex = 0, $out = 0, $pVar = 0, $utf8 = 0, $vararg_buffer11 = 0, $vararg_ptr7 = 0, $zBase = 0, $zStart = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 240|0; + $vararg_buffer11 = sp + 40|0; + $0 = sp + 116|0; + $1 = sp + 112|0; + $db = sp + 108|0; + $idx = sp + 104|0; + $nextIndex = sp + 100|0; + $n = sp + 96|0; + $nToken = sp + 88|0; + $i = sp + 120|0; + $pVar = sp + 80|0; + $out = sp + 52|0; + $zBase = sp + 128|0; + $zStart = sp + 48|0; + $nOut = sp + 92|0; + $enc = sp + 124|0; + $utf8 = sp; + $nOut1 = sp + 84|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $zRawSql; + HEAP32[$idx>>2] = 0; + HEAP32[$nextIndex>>2] = 1; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$db>>2] = $3; + $4 = HEAP32[$db>>2]|0; + $5 = (($4) + 88|0); + $6 = HEAP32[$5>>2]|0; + _sqlite3StrAccumInit($out,$zBase,100,$6); + $7 = HEAP32[$db>>2]|0; + HEAP32[$out>>2] = $7; + $8 = HEAP32[$db>>2]|0; + $9 = (($8) + 152|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)>(1); + if ($11) { + while(1) { + $12 = HEAP32[$1>>2]|0; + $13 = HEAP8[$12>>0]|0; + $14 = ($13<<24>>24)!=(0); + if (!($14)) { + break; + } + $15 = HEAP32[$1>>2]|0; + HEAP32[$zStart>>2] = $15; + while(1) { + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 1|0); + HEAP32[$1>>2] = $17; + $18 = HEAP8[$16>>0]|0; + $19 = $18 << 24 >> 24; + $20 = ($19|0)!=(10); + if (!($20)) { + break; + } + $21 = HEAP32[$1>>2]|0; + $22 = HEAP8[$21>>0]|0; + $23 = $22 << 24 >> 24; + $24 = ($23|0)!=(0); + if (!($24)) { + break; + } + } + _sqlite3StrAccumAppend($out,38496,3); + $25 = HEAP32[$zStart>>2]|0; + $26 = HEAP32[$1>>2]|0; + $27 = HEAP32[$zStart>>2]|0; + $28 = $26; + $29 = $27; + $30 = (($28) - ($29))|0; + _sqlite3StrAccumAppend($out,$25,$30); + } + $157 = (_sqlite3StrAccumFinish($out)|0); + STACKTOP = sp;return ($157|0); + } + while(1) { + $31 = HEAP32[$1>>2]|0; + $32 = HEAP8[$31>>0]|0; + $33 = ($32<<24>>24)!=(0); + if (!($33)) { + label = 31; + break; + } + $34 = HEAP32[$1>>2]|0; + $35 = (_findNextHostParameter($34,$nToken)|0); + HEAP32[$n>>2] = $35; + $36 = HEAP32[$1>>2]|0; + $37 = HEAP32[$n>>2]|0; + _sqlite3StrAccumAppend($out,$36,$37); + $38 = HEAP32[$n>>2]|0; + $39 = HEAP32[$1>>2]|0; + $40 = (($39) + ($38)|0); + HEAP32[$1>>2] = $40; + $41 = HEAP32[$nToken>>2]|0; + $42 = ($41|0)==(0); + if ($42) { + label = 31; + break; + } + $43 = HEAP32[$1>>2]|0; + $44 = HEAP8[$43>>0]|0; + $45 = $44 << 24 >> 24; + $46 = ($45|0)==(63); + do { + if ($46) { + $47 = HEAP32[$nToken>>2]|0; + $48 = ($47|0)>(1); + if ($48) { + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 1|0); + (_sqlite3GetInt32($50,$idx)|0); + break; + } else { + $51 = HEAP32[$nextIndex>>2]|0; + HEAP32[$idx>>2] = $51; + break; + } + } else { + $52 = HEAP32[$0>>2]|0; + $53 = HEAP32[$1>>2]|0; + $54 = HEAP32[$nToken>>2]|0; + $55 = (_sqlite3VdbeParameterIndex($52,$53,$54)|0); + HEAP32[$idx>>2] = $55; + } + } while(0); + $56 = HEAP32[$nToken>>2]|0; + $57 = HEAP32[$1>>2]|0; + $58 = (($57) + ($56)|0); + HEAP32[$1>>2] = $58; + $59 = HEAP32[$idx>>2]|0; + $60 = (($59) + 1)|0; + HEAP32[$nextIndex>>2] = $60; + $61 = HEAP32[$idx>>2]|0; + $62 = (($61) - 1)|0; + $63 = HEAP32[$0>>2]|0; + $64 = (($63) + 60|0); + $65 = HEAP32[$64>>2]|0; + $66 = (($65) + (($62*40)|0)|0); + HEAP32[$pVar>>2] = $66; + $67 = HEAP32[$pVar>>2]|0; + $68 = (($67) + 28|0); + $69 = HEAP16[$68>>1]|0; + $70 = $69&65535; + $71 = $70 & 1; + $72 = ($71|0)!=(0); + if ($72) { + _sqlite3StrAccumAppend($out,16376,4); + continue; + } + $73 = HEAP32[$pVar>>2]|0; + $74 = (($73) + 28|0); + $75 = HEAP16[$74>>1]|0; + $76 = $75&65535; + $77 = $76 & 4; + $78 = ($77|0)!=(0); + $79 = HEAP32[$pVar>>2]|0; + if ($78) { + $80 = (($79) + 16|0); + $81 = $80; + $82 = $81; + $83 = HEAP32[$82>>2]|0; + $84 = (($81) + 4)|0; + $85 = $84; + $86 = HEAP32[$85>>2]|0; + $87 = $vararg_buffer11; + $88 = $87; + HEAP32[$88>>2] = $83; + $89 = (($87) + 4)|0; + $90 = $89; + HEAP32[$90>>2] = $86; + _sqlite3XPrintf($out,0,15992,$vararg_buffer11); + continue; + } + $91 = (($79) + 28|0); + $92 = HEAP16[$91>>1]|0; + $93 = $92&65535; + $94 = $93 & 8; + $95 = ($94|0)!=(0); + $96 = HEAP32[$pVar>>2]|0; + if ($95) { + $97 = (($96) + 8|0); + $98 = +HEAPF64[$97>>3]; + HEAPF64[tempDoublePtr>>3]=$98;HEAP32[$vararg_buffer11>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_buffer11+4>>2]=HEAP32[tempDoublePtr+4>>2]; + _sqlite3XPrintf($out,0,16344,$vararg_buffer11); + continue; + } + $99 = (($96) + 28|0); + $100 = HEAP16[$99>>1]|0; + $101 = $100&65535; + $102 = $101 & 2; + $103 = ($102|0)!=(0); + if ($103) { + $104 = HEAP32[$db>>2]|0; + $105 = (($104) + 16|0); + $106 = HEAP32[$105>>2]|0; + $107 = (($106) + 12|0); + $108 = HEAP32[$107>>2]|0; + $109 = (($108) + 77|0); + $110 = HEAP8[$109>>0]|0; + HEAP8[$enc>>0] = $110; + $111 = HEAP8[$enc>>0]|0; + $112 = $111&255; + $113 = ($112|0)!=(1); + if ($113) { + dest=$utf8+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $114 = HEAP32[$db>>2]|0; + HEAP32[$utf8>>2] = $114; + $115 = HEAP32[$pVar>>2]|0; + $116 = (($115) + 4|0); + $117 = HEAP32[$116>>2]|0; + $118 = HEAP32[$pVar>>2]|0; + $119 = (($118) + 24|0); + $120 = HEAP32[$119>>2]|0; + $121 = HEAP8[$enc>>0]|0; + (_sqlite3VdbeMemSetStr($utf8,$117,$120,$121,0)|0); + (_sqlite3VdbeChangeEncoding($utf8,1)|0); + HEAP32[$pVar>>2] = $utf8; + } + $122 = HEAP32[$pVar>>2]|0; + $123 = (($122) + 24|0); + $124 = HEAP32[$123>>2]|0; + HEAP32[$nOut>>2] = $124; + $125 = HEAP32[$nOut>>2]|0; + $126 = HEAP32[$pVar>>2]|0; + $127 = (($126) + 4|0); + $128 = HEAP32[$127>>2]|0; + HEAP32[$vararg_buffer11>>2] = $125; + $vararg_ptr7 = (($vararg_buffer11) + 4|0); + HEAP32[$vararg_ptr7>>2] = $128; + _sqlite3XPrintf($out,0,38504,$vararg_buffer11); + $129 = HEAP8[$enc>>0]|0; + $130 = $129&255; + $131 = ($130|0)!=(1); + if (!($131)) { + continue; + } + _sqlite3VdbeMemRelease($utf8); + continue; + } + $132 = HEAP32[$pVar>>2]|0; + $133 = (($132) + 28|0); + $134 = HEAP16[$133>>1]|0; + $135 = $134&65535; + $136 = $135 & 16384; + $137 = ($136|0)!=(0); + if ($137) { + $138 = HEAP32[$pVar>>2]|0; + $139 = (($138) + 16|0); + $140 = HEAP32[$139>>2]|0; + HEAP32[$vararg_buffer11>>2] = $140; + _sqlite3XPrintf($out,0,38512,$vararg_buffer11); + continue; + } + _sqlite3StrAccumAppend($out,38528,2); + $141 = HEAP32[$pVar>>2]|0; + $142 = (($141) + 24|0); + $143 = HEAP32[$142>>2]|0; + HEAP32[$nOut1>>2] = $143; + HEAP32[$i>>2] = 0; + while(1) { + $144 = HEAP32[$i>>2]|0; + $145 = HEAP32[$nOut1>>2]|0; + $146 = ($144|0)<($145|0); + if (!($146)) { + break; + } + $147 = HEAP32[$i>>2]|0; + $148 = HEAP32[$pVar>>2]|0; + $149 = (($148) + 4|0); + $150 = HEAP32[$149>>2]|0; + $151 = (($150) + ($147)|0); + $152 = HEAP8[$151>>0]|0; + $153 = $152 << 24 >> 24; + $154 = $153 & 255; + HEAP32[$vararg_buffer11>>2] = $154; + _sqlite3XPrintf($out,0,38536,$vararg_buffer11); + $155 = HEAP32[$i>>2]|0; + $156 = (($155) + 1)|0; + HEAP32[$i>>2] = $156; + } + _sqlite3StrAccumAppend($out,38544,1); + } + if ((label|0) == 31) { + $157 = (_sqlite3StrAccumFinish($out)|0); + STACKTOP = sp;return ($157|0); + } + return 0|0; +} +function _findNextHostParameter($zSql,$pnToken) { + $zSql = $zSql|0; + $pnToken = $pnToken|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, $nTotal = 0; + var $tokenType = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $tokenType = sp + 4|0; + $nTotal = sp + 8|0; + $n = sp + 12|0; + HEAP32[$0>>2] = $zSql; + HEAP32[$1>>2] = $pnToken; + HEAP32[$nTotal>>2] = 0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$2>>2] = 0; + while(1) { + $3 = HEAP32[$0>>2]|0; + $4 = HEAP8[$3>>0]|0; + $5 = ($4<<24>>24)!=(0); + if (!($5)) { + label = 6; + break; + } + $6 = HEAP32[$0>>2]|0; + $7 = (_sqlite3GetToken($6,$tokenType)|0); + HEAP32[$n>>2] = $7; + $8 = HEAP32[$tokenType>>2]|0; + $9 = ($8|0)==(135); + $10 = HEAP32[$n>>2]|0; + if ($9) { + break; + } + $12 = HEAP32[$nTotal>>2]|0; + $13 = (($12) + ($10))|0; + HEAP32[$nTotal>>2] = $13; + $14 = HEAP32[$n>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + ($14)|0); + HEAP32[$0>>2] = $16; + } + if ((label|0) == 6) { + $17 = HEAP32[$nTotal>>2]|0; + STACKTOP = sp;return ($17|0); + } + $11 = HEAP32[$1>>2]|0; + HEAP32[$11>>2] = $10; + $17 = HEAP32[$nTotal>>2]|0; + STACKTOP = sp;return ($17|0); +} +function _sqlite3PagerMaxPageCount($pPager,$mxPage) { + $pPager = $pPager|0; + $mxPage = $mxPage|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $mxPage; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)>(0); + if ($3) { + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 156|0); + HEAP32[$6>>2] = $4; + } + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 156|0); + $9 = HEAP32[$8>>2]|0; + STACKTOP = sp;return ($9|0); +} +function _growVTrans($db) { + $db = $db|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ARRAY_INCR = 0, $aVTrans = 0, $nBytes = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $ARRAY_INCR = sp + 4|0; + $aVTrans = sp + 8|0; + $nBytes = sp + 12|0; + HEAP32[$1>>2] = $db; + HEAP32[$ARRAY_INCR>>2] = 5; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 296|0); + $4 = HEAP32[$3>>2]|0; + $5 = (($4|0) % 5)&-1; + $6 = ($5|0)==(0); + do { + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 296|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 5)|0; + $11 = $10<<2; + HEAP32[$nBytes>>2] = $11; + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 320|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$nBytes>>2]|0; + $17 = (_sqlite3DbRealloc($12,$15,$16)|0); + HEAP32[$aVTrans>>2] = $17; + $18 = HEAP32[$aVTrans>>2]|0; + $19 = ($18|0)!=(0|0); + if ($19) { + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 296|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$aVTrans>>2]|0; + $24 = (($23) + ($22<<2)|0); + ;HEAP32[$24+0>>2]=0|0;HEAP32[$24+4>>2]=0|0;HEAP32[$24+8>>2]=0|0;HEAP32[$24+12>>2]=0|0;HEAP32[$24+16>>2]=0|0; + $25 = HEAP32[$aVTrans>>2]|0; + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 320|0); + HEAP32[$27>>2] = $25; + break; + } + HEAP32[$0>>2] = 7; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $28 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($28|0); +} +function _addToVTrans($db,$pVTab) { + $db = $db|0; + $pVTab = $pVTab|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pVTab; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 296|0); + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + 1)|0; + HEAP32[$4>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 320|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + ($5<<2)|0); + HEAP32[$10>>2] = $2; + $11 = HEAP32[$1>>2]|0; + _sqlite3VtabLock($11); + STACKTOP = sp;return; +} +function _setSharedCacheTableLock($p,$iTable,$eLock) { + $p = $p|0; + $iTable = $iTable|0; + $eLock = $eLock|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $pIter = 0, $pLock = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 24|0; + $pBt = sp + 12|0; + $pLock = sp + 16|0; + $pIter = sp + 8|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $iTable; + HEAP8[$3>>0] = $eLock; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$pBt>>2] = $6; + HEAP32[$pLock>>2] = 0; + $7 = HEAP32[$pBt>>2]|0; + $8 = (($7) + 72|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$pIter>>2] = $9; + while(1) { + $10 = HEAP32[$pIter>>2]|0; + $11 = ($10|0)!=(0|0); + if (!($11)) { + break; + } + $12 = HEAP32[$pIter>>2]|0; + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$2>>2]|0; + $16 = ($14|0)==($15|0); + if ($16) { + $17 = HEAP32[$pIter>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$1>>2]|0; + $20 = ($18|0)==($19|0); + if ($20) { + label = 5; + break; + } + } + $22 = HEAP32[$pIter>>2]|0; + $23 = (($22) + 12|0); + $24 = HEAP32[$23>>2]|0; + HEAP32[$pIter>>2] = $24; + } + if ((label|0) == 5) { + $21 = HEAP32[$pIter>>2]|0; + HEAP32[$pLock>>2] = $21; + } + $25 = HEAP32[$pLock>>2]|0; + $26 = ($25|0)!=(0|0); + do { + if (!($26)) { + $27 = (_sqlite3MallocZero(16)|0); + HEAP32[$pLock>>2] = $27; + $28 = HEAP32[$pLock>>2]|0; + $29 = ($28|0)!=(0|0); + if ($29) { + $30 = HEAP32[$2>>2]|0; + $31 = HEAP32[$pLock>>2]|0; + $32 = (($31) + 4|0); + HEAP32[$32>>2] = $30; + $33 = HEAP32[$1>>2]|0; + $34 = HEAP32[$pLock>>2]|0; + HEAP32[$34>>2] = $33; + $35 = HEAP32[$pBt>>2]|0; + $36 = (($35) + 72|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$pLock>>2]|0; + $39 = (($38) + 12|0); + HEAP32[$39>>2] = $37; + $40 = HEAP32[$pLock>>2]|0; + $41 = HEAP32[$pBt>>2]|0; + $42 = (($41) + 72|0); + HEAP32[$42>>2] = $40; + break; + } + HEAP32[$0>>2] = 7; + $53 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($53|0); + } + } while(0); + $43 = HEAP8[$3>>0]|0; + $44 = $43&255; + $45 = HEAP32[$pLock>>2]|0; + $46 = (($45) + 8|0); + $47 = HEAP8[$46>>0]|0; + $48 = $47&255; + $49 = ($44|0)>($48|0); + if ($49) { + $50 = HEAP8[$3>>0]|0; + $51 = HEAP32[$pLock>>2]|0; + $52 = (($51) + 8|0); + HEAP8[$52>>0] = $50; + } + HEAP32[$0>>2] = 0; + $53 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($53|0); +} +function _finalDbSize($pBt,$nOrig,$nFree) { + $pBt = $pBt|0; + $nOrig = $nOrig|0; + $nFree = $nFree|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nEntry = 0, $nFin = 0, $nPtrmap = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $nEntry = sp + 8|0; + $nPtrmap = sp + 12|0; + $nFin = sp + 16|0; + HEAP32[$0>>2] = $pBt; + HEAP32[$1>>2] = $nOrig; + HEAP32[$2>>2] = $nFree; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 36|0); + $5 = HEAP32[$4>>2]|0; + $6 = (($5>>>0) / 5)&-1; + HEAP32[$nEntry>>2] = $6; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (($7) - ($8))|0; + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = (_ptrmapPageno($10,$11)|0); + $13 = (($9) + ($12))|0; + $14 = HEAP32[$nEntry>>2]|0; + $15 = (($13) + ($14))|0; + $16 = HEAP32[$nEntry>>2]|0; + $17 = (($15>>>0) / ($16>>>0))&-1; + HEAP32[$nPtrmap>>2] = $17; + $18 = HEAP32[$1>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = (($18) - ($19))|0; + $21 = HEAP32[$nPtrmap>>2]|0; + $22 = (($20) - ($21))|0; + HEAP32[$nFin>>2] = $22; + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[1472>>2]|0; + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 32|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($24>>>0) / ($27>>>0))&-1; + $29 = (($28) + 1)|0; + $30 = ($23>>>0)>($29>>>0); + if ($30) { + $31 = HEAP32[$nFin>>2]|0; + $32 = HEAP32[1472>>2]|0; + $33 = HEAP32[$0>>2]|0; + $34 = (($33) + 32|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($32>>>0) / ($35>>>0))&-1; + $37 = (($36) + 1)|0; + $38 = ($31>>>0)<($37>>>0); + if ($38) { + $39 = HEAP32[$nFin>>2]|0; + $40 = (($39) + -1)|0; + HEAP32[$nFin>>2] = $40; + } + } + while(1) { + $41 = HEAP32[$0>>2]|0; + $42 = HEAP32[$nFin>>2]|0; + $43 = (_ptrmapPageno($41,$42)|0); + $44 = HEAP32[$nFin>>2]|0; + $45 = ($43|0)==($44|0); + if ($45) { + $56 = 1; + } else { + $46 = HEAP32[$nFin>>2]|0; + $47 = HEAP32[1472>>2]|0; + $48 = HEAP32[$0>>2]|0; + $49 = (($48) + 32|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($47>>>0) / ($50>>>0))&-1; + $52 = (($51) + 1)|0; + $53 = ($46|0)==($52|0); + $56 = $53; + } + $54 = HEAP32[$nFin>>2]|0; + if (!($56)) { + break; + } + $55 = (($54) + -1)|0; + HEAP32[$nFin>>2] = $55; + } + STACKTOP = sp;return ($54|0); +} +function _invalidateAllOverflowCache($pBt) { + $pBt = $pBt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $p = sp; + HEAP32[$0>>2] = $pBt; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$p>>2] = $3; + while(1) { + $4 = HEAP32[$p>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + break; + } + $6 = HEAP32[$p>>2]|0; + $7 = (($6) + 80|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = $9 & -5; + $11 = $10&255; + HEAP8[$7>>0] = $11; + $12 = HEAP32[$p>>2]|0; + $13 = (($12) + 8|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$p>>2] = $14; + } + STACKTOP = sp;return; +} +function _incrVacuumStep($pBt,$nFin,$iLastPg,$bCommit) { + $pBt = $pBt|0; + $nFin = $nFin|0; + $iLastPg = $iLastPg|0; + $bCommit = $bCommit|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $eMode = 0, $eType = 0, $iFreePg = 0, $iFreePg1 = 0, $iNear = 0, $iPtrPage = 0, $nFreeList = 0, $pFreePg = 0, $pFreePg2 = 0, $pLastPg = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 36|0; + $1 = sp + 28|0; + $2 = sp + 32|0; + $3 = sp + 40|0; + $4 = sp + 44|0; + $nFreeList = sp + 48|0; + $rc = sp + 52|0; + $eType = sp + 56|0; + $iPtrPage = sp + 24|0; + $iFreePg = sp + 16|0; + $pFreePg = sp + 12|0; + $iFreePg1 = sp + 8|0; + $pLastPg = sp + 4|0; + $eMode = sp + 57|0; + $iNear = sp; + $pFreePg2 = sp + 20|0; + HEAP32[$1>>2] = $pBt; + HEAP32[$2>>2] = $nFin; + HEAP32[$3>>2] = $iLastPg; + HEAP32[$4>>2] = $bCommit; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$3>>2]|0; + $7 = (_ptrmapPageno($5,$6)|0); + $8 = HEAP32[$3>>2]|0; + $9 = ($7|0)==($8|0); + do { + if (!($9)) { + $10 = HEAP32[$3>>2]|0; + $11 = HEAP32[1472>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 32|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($11>>>0) / ($14>>>0))&-1; + $16 = (($15) + 1)|0; + $17 = ($10|0)!=($16|0); + if ($17) { + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 12|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + 56|0); + $22 = HEAP32[$21>>2]|0; + $23 = (($22) + 36|0); + $24 = (_sqlite3Get4byte($23)|0); + HEAP32[$nFreeList>>2] = $24; + $25 = HEAP32[$nFreeList>>2]|0; + $26 = ($25|0)==(0); + if ($26) { + HEAP32[$0>>2] = 101; + $105 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($105|0); + } + $27 = HEAP32[$1>>2]|0; + $28 = HEAP32[$3>>2]|0; + $29 = (_ptrmapGet($27,$28,$eType,$iPtrPage)|0); + HEAP32[$rc>>2] = $29; + $30 = HEAP32[$rc>>2]|0; + $31 = ($30|0)!=(0); + if ($31) { + $32 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $32; + $105 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($105|0); + } + $33 = HEAP8[$eType>>0]|0; + $34 = $33&255; + $35 = ($34|0)==(1); + if ($35) { + $36 = (_sqlite3CorruptError(54203)|0); + HEAP32[$0>>2] = $36; + $105 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($105|0); + } + $37 = HEAP8[$eType>>0]|0; + $38 = $37&255; + $39 = ($38|0)==(2); + if ($39) { + $40 = HEAP32[$4>>2]|0; + $41 = ($40|0)==(0); + if (!($41)) { + break; + } + $42 = HEAP32[$1>>2]|0; + $43 = HEAP32[$3>>2]|0; + $44 = (_allocateBtreePage($42,$pFreePg,$iFreePg,$43,1)|0); + HEAP32[$rc>>2] = $44; + $45 = HEAP32[$rc>>2]|0; + $46 = ($45|0)!=(0); + if (!($46)) { + $48 = HEAP32[$pFreePg>>2]|0; + _releasePage($48); + break; + } + $47 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $47; + $105 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($105|0); + } + HEAP8[$eMode>>0] = 0; + HEAP32[$iNear>>2] = 0; + $49 = HEAP32[$1>>2]|0; + $50 = HEAP32[$3>>2]|0; + $51 = (_btreeGetPage($49,$50,$pLastPg,0)|0); + HEAP32[$rc>>2] = $51; + $52 = HEAP32[$rc>>2]|0; + $53 = ($52|0)!=(0); + if ($53) { + $54 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $54; + $105 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($105|0); + } + $55 = HEAP32[$4>>2]|0; + $56 = ($55|0)==(0); + if ($56) { + HEAP8[$eMode>>0] = 2; + $57 = HEAP32[$2>>2]|0; + HEAP32[$iNear>>2] = $57; + } + while(1) { + $58 = HEAP32[$1>>2]|0; + $59 = HEAP32[$iNear>>2]|0; + $60 = HEAP8[$eMode>>0]|0; + $61 = (_allocateBtreePage($58,$pFreePg2,$iFreePg1,$59,$60)|0); + HEAP32[$rc>>2] = $61; + $62 = HEAP32[$rc>>2]|0; + $63 = ($62|0)!=(0); + if ($63) { + label = 19; + break; + } + $66 = HEAP32[$pFreePg2>>2]|0; + _releasePage($66); + $67 = HEAP32[$4>>2]|0; + $68 = ($67|0)!=(0); + if (!($68)) { + break; + } + $69 = HEAP32[$iFreePg1>>2]|0; + $70 = HEAP32[$2>>2]|0; + $71 = ($69>>>0)>($70>>>0); + if (!($71)) { + break; + } + } + if ((label|0) == 19) { + $64 = HEAP32[$pLastPg>>2]|0; + _releasePage($64); + $65 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $65; + $105 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($105|0); + } + $72 = HEAP32[$1>>2]|0; + $73 = HEAP32[$pLastPg>>2]|0; + $74 = HEAP8[$eType>>0]|0; + $75 = HEAP32[$iPtrPage>>2]|0; + $76 = HEAP32[$iFreePg1>>2]|0; + $77 = HEAP32[$4>>2]|0; + $78 = (_relocatePage($72,$73,$74,$75,$76,$77)|0); + HEAP32[$rc>>2] = $78; + $79 = HEAP32[$pLastPg>>2]|0; + _releasePage($79); + $80 = HEAP32[$rc>>2]|0; + $81 = ($80|0)!=(0); + if ($81) { + $82 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $82; + $105 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($105|0); + } + } + } + } while(0); + $83 = HEAP32[$4>>2]|0; + $84 = ($83|0)==(0); + if ($84) { + while(1) { + $85 = HEAP32[$3>>2]|0; + $86 = (($85) + -1)|0; + HEAP32[$3>>2] = $86; + $87 = HEAP32[$3>>2]|0; + $88 = HEAP32[1472>>2]|0; + $89 = HEAP32[$1>>2]|0; + $90 = (($89) + 32|0); + $91 = HEAP32[$90>>2]|0; + $92 = (($88>>>0) / ($91>>>0))&-1; + $93 = (($92) + 1)|0; + $94 = ($87|0)==($93|0); + if ($94) { + continue; + } + $95 = HEAP32[$1>>2]|0; + $96 = HEAP32[$3>>2]|0; + $97 = (_ptrmapPageno($95,$96)|0); + $98 = HEAP32[$3>>2]|0; + $99 = ($97|0)==($98|0); + if (!($99)) { + break; + } + } + $100 = HEAP32[$1>>2]|0; + $101 = (($100) + 19|0); + HEAP8[$101>>0] = 1; + $102 = HEAP32[$3>>2]|0; + $103 = HEAP32[$1>>2]|0; + $104 = (($103) + 44|0); + HEAP32[$104>>2] = $102; + } + HEAP32[$0>>2] = 0; + $105 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($105|0); +} +function _allocateBtreePage($pBt,$ppPage,$pPgno,$nearby,$eMode) { + $pBt = $pBt|0; + $ppPage = $ppPage|0; + $pPgno = $pPgno|0; + $nearby = $nearby|0; + $eMode = $eMode|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; + var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; + var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; + var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; + var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; + var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; + var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; + var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aData = 0, $bNoContent = 0, $closest = 0, $d2 = 0, $dist = 0, $eType = 0, $i = 0, $iNewTrunk = 0, $iPage = 0, $iTrunk = 0, $k = 0, $mxPage = 0, $n = 0, $noContent = 0, $pNewTrunk = 0; + var $pPage1 = 0, $pPg = 0, $pPrevTrunk = 0, $pTrunk = 0, $rc = 0, $searchList = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $0 = sp + 72|0; + $1 = sp + 56|0; + $2 = sp + 60|0; + $3 = sp + 64|0; + $4 = sp + 68|0; + $5 = sp + 98|0; + $pPage1 = sp + 76|0; + $rc = sp + 80|0; + $n = sp + 84|0; + $k = sp + 88|0; + $pTrunk = sp + 92|0; + $pPrevTrunk = sp + 52|0; + $mxPage = sp + 20|0; + $iTrunk = sp; + $searchList = sp + 97|0; + $eType = sp + 96|0; + $pNewTrunk = sp + 4|0; + $iNewTrunk = sp + 8|0; + $closest = sp + 12|0; + $iPage = sp + 16|0; + $aData = sp + 24|0; + $i = sp + 28|0; + $dist = sp + 32|0; + $d2 = sp + 36|0; + $noContent = sp + 40|0; + $bNoContent = sp + 44|0; + $pPg = sp + 48|0; + HEAP32[$1>>2] = $pBt; + HEAP32[$2>>2] = $ppPage; + HEAP32[$3>>2] = $pPgno; + HEAP32[$4>>2] = $nearby; + HEAP8[$5>>0] = $eMode; + HEAP32[$pTrunk>>2] = 0; + HEAP32[$pPrevTrunk>>2] = 0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 12|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pPage1>>2] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = (_btreePagecount($9)|0); + HEAP32[$mxPage>>2] = $10; + $11 = HEAP32[$pPage1>>2]|0; + $12 = (($11) + 56|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 36|0); + $15 = (_sqlite3Get4byte($14)|0); + HEAP32[$n>>2] = $15; + $16 = HEAP32[$n>>2]|0; + $17 = HEAP32[$mxPage>>2]|0; + $18 = ($16>>>0)>=($17>>>0); + if ($18) { + $19 = (_sqlite3CorruptError(56167)|0); + HEAP32[$0>>2] = $19; + $464 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($464|0); + } + $20 = HEAP32[$n>>2]|0; + $21 = ($20>>>0)>(0); + L5: do { + if ($21) { + HEAP8[$searchList>>0] = 0; + $22 = HEAP8[$5>>0]|0; + $23 = $22&255; + $24 = ($23|0)==(1); + do { + if ($24) { + $25 = HEAP32[$4>>2]|0; + $26 = HEAP32[$mxPage>>2]|0; + $27 = ($25>>>0)<=($26>>>0); + if ($27) { + $28 = HEAP32[$1>>2]|0; + $29 = HEAP32[$4>>2]|0; + $30 = (_ptrmapGet($28,$29,$eType,0)|0); + HEAP32[$rc>>2] = $30; + $31 = HEAP32[$rc>>2]|0; + $32 = ($31|0)!=(0); + if ($32) { + $33 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $33; + $464 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($464|0); + } else { + $34 = HEAP8[$eType>>0]|0; + $35 = $34&255; + $36 = ($35|0)==(2); + if (!($36)) { + break; + } + HEAP8[$searchList>>0] = 1; + break; + } + } + } else { + $37 = HEAP8[$5>>0]|0; + $38 = $37&255; + $39 = ($38|0)==(2); + if ($39) { + HEAP8[$searchList>>0] = 1; + } + } + } while(0); + $40 = HEAP32[$pPage1>>2]|0; + $41 = (($40) + 68|0); + $42 = HEAP32[$41>>2]|0; + $43 = (_sqlite3PagerWrite($42)|0); + HEAP32[$rc>>2] = $43; + $44 = HEAP32[$rc>>2]|0; + $45 = ($44|0)!=(0); + if ($45) { + $46 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $46; + $464 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($464|0); + } + $47 = HEAP32[$pPage1>>2]|0; + $48 = (($47) + 56|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) + 36|0); + $51 = HEAP32[$n>>2]|0; + $52 = (($51) - 1)|0; + _sqlite3Put4byte($50,$52); + L22: while(1) { + $53 = HEAP32[$pTrunk>>2]|0; + HEAP32[$pPrevTrunk>>2] = $53; + $54 = HEAP32[$pPrevTrunk>>2]|0; + $55 = ($54|0)!=(0|0); + if ($55) { + $56 = HEAP32[$pPrevTrunk>>2]|0; + $57 = (($56) + 56|0); + $58 = HEAP32[$57>>2]|0; + $59 = (_sqlite3Get4byte($58)|0); + HEAP32[$iTrunk>>2] = $59; + } else { + $60 = HEAP32[$pPage1>>2]|0; + $61 = (($60) + 56|0); + $62 = HEAP32[$61>>2]|0; + $63 = (($62) + 32|0); + $64 = (_sqlite3Get4byte($63)|0); + HEAP32[$iTrunk>>2] = $64; + } + $65 = HEAP32[$iTrunk>>2]|0; + $66 = HEAP32[$mxPage>>2]|0; + $67 = ($65>>>0)>($66>>>0); + if ($67) { + $68 = (_sqlite3CorruptError(56216)|0); + HEAP32[$rc>>2] = $68; + } else { + $69 = HEAP32[$1>>2]|0; + $70 = HEAP32[$iTrunk>>2]|0; + $71 = (_btreeGetPage($69,$70,$pTrunk,0)|0); + HEAP32[$rc>>2] = $71; + } + $72 = HEAP32[$rc>>2]|0; + $73 = ($72|0)!=(0); + if ($73) { + label = 22; + break; + } + $74 = HEAP32[$pTrunk>>2]|0; + $75 = (($74) + 56|0); + $76 = HEAP32[$75>>2]|0; + $77 = (($76) + 4|0); + $78 = (_sqlite3Get4byte($77)|0); + HEAP32[$k>>2] = $78; + $79 = HEAP32[$k>>2]|0; + $80 = ($79|0)==(0); + if ($80) { + $81 = HEAP8[$searchList>>0]|0; + $82 = ($81<<24>>24)!=(0); + if ($82) { + label = 27; + } else { + $83 = HEAP32[$pTrunk>>2]|0; + $84 = (($83) + 68|0); + $85 = HEAP32[$84>>2]|0; + $86 = (_sqlite3PagerWrite($85)|0); + HEAP32[$rc>>2] = $86; + $87 = HEAP32[$rc>>2]|0; + $88 = ($87|0)!=(0); + if ($88) { + break L5; + } + $89 = HEAP32[$iTrunk>>2]|0; + $90 = HEAP32[$3>>2]|0; + HEAP32[$90>>2] = $89; + $91 = HEAP32[$pPage1>>2]|0; + $92 = (($91) + 56|0); + $93 = HEAP32[$92>>2]|0; + $94 = (($93) + 32|0); + $95 = HEAP32[$pTrunk>>2]|0; + $96 = (($95) + 56|0); + $97 = HEAP32[$96>>2]|0; + ;HEAP8[$94+0>>0]=HEAP8[$97+0>>0]|0;HEAP8[$94+1>>0]=HEAP8[$97+1>>0]|0;HEAP8[$94+2>>0]=HEAP8[$97+2>>0]|0;HEAP8[$94+3>>0]=HEAP8[$97+3>>0]|0; + $98 = HEAP32[$pTrunk>>2]|0; + $99 = HEAP32[$2>>2]|0; + HEAP32[$99>>2] = $98; + HEAP32[$pTrunk>>2] = 0; + } + } else { + label = 27; + } + L37: do { + if ((label|0) == 27) { + label = 0; + $100 = HEAP32[$k>>2]|0; + $101 = HEAP32[$1>>2]|0; + $102 = (($101) + 36|0); + $103 = HEAP32[$102>>2]|0; + $104 = (($103>>>0) / 4)&-1; + $105 = (($104) - 2)|0; + $106 = ($100>>>0)>($105>>>0); + if ($106) { + label = 28; + break L22; + } + $108 = HEAP8[$searchList>>0]|0; + $109 = $108&255; + $110 = ($109|0)!=(0); + do { + if ($110) { + $111 = HEAP32[$4>>2]|0; + $112 = HEAP32[$iTrunk>>2]|0; + $113 = ($111|0)==($112|0); + if (!($113)) { + $114 = HEAP32[$iTrunk>>2]|0; + $115 = HEAP32[$4>>2]|0; + $116 = ($114>>>0)<($115>>>0); + if (!($116)) { + break; + } + $117 = HEAP8[$5>>0]|0; + $118 = $117&255; + $119 = ($118|0)==(2); + if (!($119)) { + break; + } + } + $120 = HEAP32[$iTrunk>>2]|0; + $121 = HEAP32[$3>>2]|0; + HEAP32[$121>>2] = $120; + $122 = HEAP32[$pTrunk>>2]|0; + $123 = HEAP32[$2>>2]|0; + HEAP32[$123>>2] = $122; + HEAP8[$searchList>>0] = 0; + $124 = HEAP32[$pTrunk>>2]|0; + $125 = (($124) + 68|0); + $126 = HEAP32[$125>>2]|0; + $127 = (_sqlite3PagerWrite($126)|0); + HEAP32[$rc>>2] = $127; + $128 = HEAP32[$rc>>2]|0; + $129 = ($128|0)!=(0); + if ($129) { + break L5; + } + $130 = HEAP32[$k>>2]|0; + $131 = ($130|0)==(0); + do { + if ($131) { + $132 = HEAP32[$pPrevTrunk>>2]|0; + $133 = ($132|0)!=(0|0); + if (!($133)) { + $134 = HEAP32[$pPage1>>2]|0; + $135 = (($134) + 56|0); + $136 = HEAP32[$135>>2]|0; + $137 = (($136) + 32|0); + $138 = HEAP32[$pTrunk>>2]|0; + $139 = (($138) + 56|0); + $140 = HEAP32[$139>>2]|0; + ;HEAP8[$137+0>>0]=HEAP8[$140+0>>0]|0;HEAP8[$137+1>>0]=HEAP8[$140+1>>0]|0;HEAP8[$137+2>>0]=HEAP8[$140+2>>0]|0;HEAP8[$137+3>>0]=HEAP8[$140+3>>0]|0; + break; + } + $141 = HEAP32[$pPrevTrunk>>2]|0; + $142 = (($141) + 68|0); + $143 = HEAP32[$142>>2]|0; + $144 = (_sqlite3PagerWrite($143)|0); + HEAP32[$rc>>2] = $144; + $145 = HEAP32[$rc>>2]|0; + $146 = ($145|0)!=(0); + if ($146) { + break L5; + } + $147 = HEAP32[$pPrevTrunk>>2]|0; + $148 = (($147) + 56|0); + $149 = HEAP32[$148>>2]|0; + $150 = HEAP32[$pTrunk>>2]|0; + $151 = (($150) + 56|0); + $152 = HEAP32[$151>>2]|0; + ;HEAP8[$149+0>>0]=HEAP8[$152+0>>0]|0;HEAP8[$149+1>>0]=HEAP8[$152+1>>0]|0;HEAP8[$149+2>>0]=HEAP8[$152+2>>0]|0;HEAP8[$149+3>>0]=HEAP8[$152+3>>0]|0; + } else { + $153 = HEAP32[$pTrunk>>2]|0; + $154 = (($153) + 56|0); + $155 = HEAP32[$154>>2]|0; + $156 = (($155) + 8|0); + $157 = (_sqlite3Get4byte($156)|0); + HEAP32[$iNewTrunk>>2] = $157; + $158 = HEAP32[$iNewTrunk>>2]|0; + $159 = HEAP32[$mxPage>>2]|0; + $160 = ($158>>>0)>($159>>>0); + if ($160) { + label = 40; + break L22; + } + $162 = HEAP32[$1>>2]|0; + $163 = HEAP32[$iNewTrunk>>2]|0; + $164 = (_btreeGetPage($162,$163,$pNewTrunk,0)|0); + HEAP32[$rc>>2] = $164; + $165 = HEAP32[$rc>>2]|0; + $166 = ($165|0)!=(0); + if ($166) { + break L5; + } + $167 = HEAP32[$pNewTrunk>>2]|0; + $168 = (($167) + 68|0); + $169 = HEAP32[$168>>2]|0; + $170 = (_sqlite3PagerWrite($169)|0); + HEAP32[$rc>>2] = $170; + $171 = HEAP32[$rc>>2]|0; + $172 = ($171|0)!=(0); + $173 = HEAP32[$pNewTrunk>>2]|0; + if ($172) { + label = 43; + break L22; + } + $174 = (($173) + 56|0); + $175 = HEAP32[$174>>2]|0; + $176 = HEAP32[$pTrunk>>2]|0; + $177 = (($176) + 56|0); + $178 = HEAP32[$177>>2]|0; + ;HEAP8[$175+0>>0]=HEAP8[$178+0>>0]|0;HEAP8[$175+1>>0]=HEAP8[$178+1>>0]|0;HEAP8[$175+2>>0]=HEAP8[$178+2>>0]|0;HEAP8[$175+3>>0]=HEAP8[$178+3>>0]|0; + $179 = HEAP32[$pNewTrunk>>2]|0; + $180 = (($179) + 56|0); + $181 = HEAP32[$180>>2]|0; + $182 = (($181) + 4|0); + $183 = HEAP32[$k>>2]|0; + $184 = (($183) - 1)|0; + _sqlite3Put4byte($182,$184); + $185 = HEAP32[$pNewTrunk>>2]|0; + $186 = (($185) + 56|0); + $187 = HEAP32[$186>>2]|0; + $188 = (($187) + 8|0); + $189 = HEAP32[$pTrunk>>2]|0; + $190 = (($189) + 56|0); + $191 = HEAP32[$190>>2]|0; + $192 = (($191) + 12|0); + $193 = HEAP32[$k>>2]|0; + $194 = (($193) - 1)|0; + $195 = $194<<2; + _memcpy(($188|0),($192|0),($195|0))|0; + $196 = HEAP32[$pNewTrunk>>2]|0; + _releasePage($196); + $197 = HEAP32[$pPrevTrunk>>2]|0; + $198 = ($197|0)!=(0|0); + if (!($198)) { + $199 = HEAP32[$pPage1>>2]|0; + $200 = (($199) + 56|0); + $201 = HEAP32[$200>>2]|0; + $202 = (($201) + 32|0); + $203 = HEAP32[$iNewTrunk>>2]|0; + _sqlite3Put4byte($202,$203); + break; + } + $204 = HEAP32[$pPrevTrunk>>2]|0; + $205 = (($204) + 68|0); + $206 = HEAP32[$205>>2]|0; + $207 = (_sqlite3PagerWrite($206)|0); + HEAP32[$rc>>2] = $207; + $208 = HEAP32[$rc>>2]|0; + $209 = ($208|0)!=(0); + if ($209) { + break L5; + } + $210 = HEAP32[$pPrevTrunk>>2]|0; + $211 = (($210) + 56|0); + $212 = HEAP32[$211>>2]|0; + $213 = HEAP32[$iNewTrunk>>2]|0; + _sqlite3Put4byte($212,$213); + } + } while(0); + HEAP32[$pTrunk>>2] = 0; + break L37; + } + } while(0); + $214 = HEAP32[$k>>2]|0; + $215 = ($214>>>0)>(0); + if ($215) { + $216 = HEAP32[$pTrunk>>2]|0; + $217 = (($216) + 56|0); + $218 = HEAP32[$217>>2]|0; + HEAP32[$aData>>2] = $218; + $219 = HEAP32[$4>>2]|0; + $220 = ($219>>>0)>(0); + HEAP32[$closest>>2] = 0; + L64: do { + if ($220) { + $221 = HEAP8[$5>>0]|0; + $222 = $221&255; + $223 = ($222|0)==(2); + if ($223) { + HEAP32[$i>>2] = 0; + while(1) { + $224 = HEAP32[$i>>2]|0; + $225 = HEAP32[$k>>2]|0; + $226 = ($224>>>0)<($225>>>0); + if (!($226)) { + break L64; + } + $227 = HEAP32[$i>>2]|0; + $228 = $227<<2; + $229 = (8 + ($228))|0; + $230 = HEAP32[$aData>>2]|0; + $231 = (($230) + ($229)|0); + $232 = (_sqlite3Get4byte($231)|0); + HEAP32[$iPage>>2] = $232; + $233 = HEAP32[$iPage>>2]|0; + $234 = HEAP32[$4>>2]|0; + $235 = ($233>>>0)<=($234>>>0); + $236 = HEAP32[$i>>2]|0; + if ($235) { + break; + } + $237 = (($236) + 1)|0; + HEAP32[$i>>2] = $237; + } + HEAP32[$closest>>2] = $236; + break; + } else { + $238 = HEAP32[$aData>>2]|0; + $239 = (($238) + 8|0); + $240 = (_sqlite3Get4byte($239)|0); + $241 = HEAP32[$4>>2]|0; + $242 = (($240) - ($241))|0; + $243 = (_sqlite3AbsInt32($242)|0); + HEAP32[$dist>>2] = $243; + HEAP32[$i>>2] = 1; + while(1) { + $244 = HEAP32[$i>>2]|0; + $245 = HEAP32[$k>>2]|0; + $246 = ($244>>>0)<($245>>>0); + if (!($246)) { + break L64; + } + $247 = HEAP32[$i>>2]|0; + $248 = $247<<2; + $249 = (8 + ($248))|0; + $250 = HEAP32[$aData>>2]|0; + $251 = (($250) + ($249)|0); + $252 = (_sqlite3Get4byte($251)|0); + $253 = HEAP32[$4>>2]|0; + $254 = (($252) - ($253))|0; + $255 = (_sqlite3AbsInt32($254)|0); + HEAP32[$d2>>2] = $255; + $256 = HEAP32[$d2>>2]|0; + $257 = HEAP32[$dist>>2]|0; + $258 = ($256|0)<($257|0); + if ($258) { + $259 = HEAP32[$i>>2]|0; + HEAP32[$closest>>2] = $259; + $260 = HEAP32[$d2>>2]|0; + HEAP32[$dist>>2] = $260; + } + $261 = HEAP32[$i>>2]|0; + $262 = (($261) + 1)|0; + HEAP32[$i>>2] = $262; + } + } + } + } while(0); + $263 = HEAP32[$closest>>2]|0; + $264 = $263<<2; + $265 = (8 + ($264))|0; + $266 = HEAP32[$aData>>2]|0; + $267 = (($266) + ($265)|0); + $268 = (_sqlite3Get4byte($267)|0); + HEAP32[$iPage>>2] = $268; + $269 = HEAP32[$iPage>>2]|0; + $270 = HEAP32[$mxPage>>2]|0; + $271 = ($269>>>0)>($270>>>0); + if ($271) { + label = 63; + break L22; + } + $273 = HEAP8[$searchList>>0]|0; + $274 = ($273<<24>>24)!=(0); + if ($274) { + $275 = HEAP32[$iPage>>2]|0; + $276 = HEAP32[$4>>2]|0; + $277 = ($275|0)==($276|0); + if (!($277)) { + $278 = HEAP32[$iPage>>2]|0; + $279 = HEAP32[$4>>2]|0; + $280 = ($278>>>0)<($279>>>0); + if (!($280)) { + break; + } + $281 = HEAP8[$5>>0]|0; + $282 = $281&255; + $283 = ($282|0)==(2); + if (!($283)) { + break; + } + } + } + $284 = HEAP32[$iPage>>2]|0; + $285 = HEAP32[$3>>2]|0; + HEAP32[$285>>2] = $284; + $286 = HEAP32[$pTrunk>>2]|0; + $287 = (($286) + 68|0); + $288 = HEAP32[$287>>2]|0; + $289 = (_sqlite3PagerWrite($288)|0); + HEAP32[$rc>>2] = $289; + $290 = HEAP32[$rc>>2]|0; + $291 = ($290|0)!=(0); + if ($291) { + break L5; + } + $292 = HEAP32[$closest>>2]|0; + $293 = HEAP32[$k>>2]|0; + $294 = (($293) - 1)|0; + $295 = ($292>>>0)<($294>>>0); + if ($295) { + $296 = HEAP32[$closest>>2]|0; + $297 = $296<<2; + $298 = (8 + ($297))|0; + $299 = HEAP32[$aData>>2]|0; + $300 = (($299) + ($298)|0); + $301 = HEAP32[$k>>2]|0; + $302 = $301<<2; + $303 = (4 + ($302))|0; + $304 = HEAP32[$aData>>2]|0; + $305 = (($304) + ($303)|0); + ;HEAP8[$300+0>>0]=HEAP8[$305+0>>0]|0;HEAP8[$300+1>>0]=HEAP8[$305+1>>0]|0;HEAP8[$300+2>>0]=HEAP8[$305+2>>0]|0;HEAP8[$300+3>>0]=HEAP8[$305+3>>0]|0; + } + $306 = HEAP32[$aData>>2]|0; + $307 = (($306) + 4|0); + $308 = HEAP32[$k>>2]|0; + $309 = (($308) - 1)|0; + _sqlite3Put4byte($307,$309); + $310 = HEAP32[$1>>2]|0; + $311 = HEAP32[$3>>2]|0; + $312 = HEAP32[$311>>2]|0; + $313 = (_btreeGetHasContent($310,$312)|0); + $314 = ($313|0)!=(0); + $315 = $314 ^ 1; + $316 = $315 ? 1 : 0; + HEAP32[$noContent>>2] = $316; + $317 = HEAP32[$1>>2]|0; + $318 = HEAP32[$3>>2]|0; + $319 = HEAP32[$318>>2]|0; + $320 = HEAP32[$2>>2]|0; + $321 = HEAP32[$noContent>>2]|0; + $322 = (_btreeGetPage($317,$319,$320,$321)|0); + HEAP32[$rc>>2] = $322; + $323 = HEAP32[$rc>>2]|0; + $324 = ($323|0)==(0); + do { + if ($324) { + $325 = HEAP32[$2>>2]|0; + $326 = HEAP32[$325>>2]|0; + $327 = (($326) + 68|0); + $328 = HEAP32[$327>>2]|0; + $329 = (_sqlite3PagerWrite($328)|0); + HEAP32[$rc>>2] = $329; + $330 = HEAP32[$rc>>2]|0; + $331 = ($330|0)!=(0); + if (!($331)) { + break; + } + $332 = HEAP32[$2>>2]|0; + $333 = HEAP32[$332>>2]|0; + _releasePage($333); + } + } while(0); + HEAP8[$searchList>>0] = 0; + } + } + } while(0); + $334 = HEAP32[$pPrevTrunk>>2]|0; + _releasePage($334); + HEAP32[$pPrevTrunk>>2] = 0; + $335 = HEAP8[$searchList>>0]|0; + $336 = ($335<<24>>24)!=(0); + if (!($336)) { + break L5; + } + } + if ((label|0) == 22) { + HEAP32[$pTrunk>>2] = 0; + break; + } + else if ((label|0) == 28) { + $107 = (_sqlite3CorruptError(56244)|0); + HEAP32[$rc>>2] = $107; + break; + } + else if ((label|0) == 40) { + $161 = (_sqlite3CorruptError(56278)|0); + HEAP32[$rc>>2] = $161; + break; + } + else if ((label|0) == 43) { + _releasePage($173); + break; + } + else if ((label|0) == 63) { + $272 = (_sqlite3CorruptError(56343)|0); + HEAP32[$rc>>2] = $272; + break; + } + } else { + $337 = HEAP32[$1>>2]|0; + $338 = (($337) + 19|0); + $339 = HEAP8[$338>>0]|0; + $340 = $339&255; + $341 = (0)==($340|0); + $342 = $341 ? 1 : 0; + HEAP32[$bNoContent>>2] = $342; + $343 = HEAP32[$1>>2]|0; + $344 = (($343) + 12|0); + $345 = HEAP32[$344>>2]|0; + $346 = (($345) + 68|0); + $347 = HEAP32[$346>>2]|0; + $348 = (_sqlite3PagerWrite($347)|0); + HEAP32[$rc>>2] = $348; + $349 = HEAP32[$rc>>2]|0; + $350 = ($349|0)!=(0); + if ($350) { + $351 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $351; + $464 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($464|0); + } + $352 = HEAP32[$1>>2]|0; + $353 = (($352) + 44|0); + $354 = HEAP32[$353>>2]|0; + $355 = (($354) + 1)|0; + HEAP32[$353>>2] = $355; + $356 = HEAP32[$1>>2]|0; + $357 = (($356) + 44|0); + $358 = HEAP32[$357>>2]|0; + $359 = HEAP32[1472>>2]|0; + $360 = HEAP32[$1>>2]|0; + $361 = (($360) + 32|0); + $362 = HEAP32[$361>>2]|0; + $363 = (($359>>>0) / ($362>>>0))&-1; + $364 = (($363) + 1)|0; + $365 = ($358|0)==($364|0); + if ($365) { + $366 = HEAP32[$1>>2]|0; + $367 = (($366) + 44|0); + $368 = HEAP32[$367>>2]|0; + $369 = (($368) + 1)|0; + HEAP32[$367>>2] = $369; + } + $370 = HEAP32[$1>>2]|0; + $371 = (($370) + 17|0); + $372 = HEAP8[$371>>0]|0; + $373 = $372&255; + $374 = ($373|0)!=(0); + do { + if ($374) { + $375 = HEAP32[$1>>2]|0; + $376 = HEAP32[$1>>2]|0; + $377 = (($376) + 44|0); + $378 = HEAP32[$377>>2]|0; + $379 = (_ptrmapPageno($375,$378)|0); + $380 = HEAP32[$1>>2]|0; + $381 = (($380) + 44|0); + $382 = HEAP32[$381>>2]|0; + $383 = ($379|0)==($382|0); + if ($383) { + HEAP32[$pPg>>2] = 0; + $384 = HEAP32[$1>>2]|0; + $385 = HEAP32[$1>>2]|0; + $386 = (($385) + 44|0); + $387 = HEAP32[$386>>2]|0; + $388 = HEAP32[$bNoContent>>2]|0; + $389 = (_btreeGetPage($384,$387,$pPg,$388)|0); + HEAP32[$rc>>2] = $389; + $390 = HEAP32[$rc>>2]|0; + $391 = ($390|0)==(0); + if ($391) { + $392 = HEAP32[$pPg>>2]|0; + $393 = (($392) + 68|0); + $394 = HEAP32[$393>>2]|0; + $395 = (_sqlite3PagerWrite($394)|0); + HEAP32[$rc>>2] = $395; + $396 = HEAP32[$pPg>>2]|0; + _releasePage($396); + } + $397 = HEAP32[$rc>>2]|0; + $398 = ($397|0)!=(0); + if ($398) { + $399 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $399; + $464 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($464|0); + } else { + $400 = HEAP32[$1>>2]|0; + $401 = (($400) + 44|0); + $402 = HEAP32[$401>>2]|0; + $403 = (($402) + 1)|0; + HEAP32[$401>>2] = $403; + $404 = HEAP32[$1>>2]|0; + $405 = (($404) + 44|0); + $406 = HEAP32[$405>>2]|0; + $407 = HEAP32[1472>>2]|0; + $408 = HEAP32[$1>>2]|0; + $409 = (($408) + 32|0); + $410 = HEAP32[$409>>2]|0; + $411 = (($407>>>0) / ($410>>>0))&-1; + $412 = (($411) + 1)|0; + $413 = ($406|0)==($412|0); + if (!($413)) { + break; + } + $414 = HEAP32[$1>>2]|0; + $415 = (($414) + 44|0); + $416 = HEAP32[$415>>2]|0; + $417 = (($416) + 1)|0; + HEAP32[$415>>2] = $417; + break; + } + } + } + } while(0); + $418 = HEAP32[$1>>2]|0; + $419 = (($418) + 12|0); + $420 = HEAP32[$419>>2]|0; + $421 = (($420) + 56|0); + $422 = HEAP32[$421>>2]|0; + $423 = (($422) + 28|0); + $424 = HEAP32[$1>>2]|0; + $425 = (($424) + 44|0); + $426 = HEAP32[$425>>2]|0; + _sqlite3Put4byte($423,$426); + $427 = HEAP32[$1>>2]|0; + $428 = (($427) + 44|0); + $429 = HEAP32[$428>>2]|0; + $430 = HEAP32[$3>>2]|0; + HEAP32[$430>>2] = $429; + $431 = HEAP32[$1>>2]|0; + $432 = HEAP32[$3>>2]|0; + $433 = HEAP32[$432>>2]|0; + $434 = HEAP32[$2>>2]|0; + $435 = HEAP32[$bNoContent>>2]|0; + $436 = (_btreeGetPage($431,$433,$434,$435)|0); + HEAP32[$rc>>2] = $436; + $437 = HEAP32[$rc>>2]|0; + $438 = ($437|0)!=(0); + if ($438) { + $439 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $439; + $464 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($464|0); + } else { + $440 = HEAP32[$2>>2]|0; + $441 = HEAP32[$440>>2]|0; + $442 = (($441) + 68|0); + $443 = HEAP32[$442>>2]|0; + $444 = (_sqlite3PagerWrite($443)|0); + HEAP32[$rc>>2] = $444; + $445 = HEAP32[$rc>>2]|0; + $446 = ($445|0)!=(0); + if (!($446)) { + break; + } + $447 = HEAP32[$2>>2]|0; + $448 = HEAP32[$447>>2]|0; + _releasePage($448); + break; + } + } + } while(0); + $449 = HEAP32[$pTrunk>>2]|0; + _releasePage($449); + $450 = HEAP32[$pPrevTrunk>>2]|0; + _releasePage($450); + $451 = HEAP32[$rc>>2]|0; + $452 = ($451|0)==(0); + $453 = HEAP32[$2>>2]|0; + do { + if ($452) { + $454 = HEAP32[$453>>2]|0; + $455 = (($454) + 68|0); + $456 = HEAP32[$455>>2]|0; + $457 = (_sqlite3PagerPageRefcount($456)|0); + $458 = ($457|0)>(1); + $459 = HEAP32[$2>>2]|0; + $460 = HEAP32[$459>>2]|0; + if (!($458)) { + HEAP8[$460>>0] = 0; + break; + } + _releasePage($460); + $461 = HEAP32[$2>>2]|0; + HEAP32[$461>>2] = 0; + $462 = (_sqlite3CorruptError(56442)|0); + HEAP32[$0>>2] = $462; + $464 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($464|0); + } else { + HEAP32[$453>>2] = 0; + } + } while(0); + $463 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $463; + $464 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($464|0); +} +function _relocatePage($pBt,$pDbPage,$eType,$iPtrPage,$iFreePage,$isCommit) { + $pBt = $pBt|0; + $pDbPage = $pDbPage|0; + $eType = $eType|0; + $iPtrPage = $iPtrPage|0; + $iFreePage = $iFreePage|0; + $isCommit = $isCommit|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $8 = 0, $9 = 0, $iDbPage = 0, $nextOvfl = 0; + var $pPager = 0, $pPtrPage = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 44|0; + $4 = sp + 28|0; + $5 = sp + 24|0; + $6 = sp + 20|0; + $pPtrPage = sp + 12|0; + $iDbPage = sp + 8|0; + $pPager = sp + 4|0; + $rc = sp; + $nextOvfl = sp + 16|0; + HEAP32[$1>>2] = $pBt; + HEAP32[$2>>2] = $pDbPage; + HEAP8[$3>>0] = $eType; + HEAP32[$4>>2] = $iPtrPage; + HEAP32[$5>>2] = $iFreePage; + HEAP32[$6>>2] = $isCommit; + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 72|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$iDbPage>>2] = $9; + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$10>>2]|0; + HEAP32[$pPager>>2] = $11; + $12 = HEAP32[$pPager>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = (($13) + 68|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$5>>2]|0; + $17 = HEAP32[$6>>2]|0; + $18 = (_sqlite3PagerMovepage($12,$15,$16,$17)|0); + HEAP32[$rc>>2] = $18; + $19 = HEAP32[$rc>>2]|0; + $20 = ($19|0)!=(0); + if ($20) { + $21 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $21; + $77 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($77|0); + } + $22 = HEAP32[$5>>2]|0; + $23 = HEAP32[$2>>2]|0; + $24 = (($23) + 72|0); + HEAP32[$24>>2] = $22; + $25 = HEAP8[$3>>0]|0; + $26 = $25&255; + $27 = ($26|0)==(5); + if ($27) { + label = 5; + } else { + $28 = HEAP8[$3>>0]|0; + $29 = $28&255; + $30 = ($29|0)==(1); + if ($30) { + label = 5; + } else { + $36 = HEAP32[$2>>2]|0; + $37 = (($36) + 56|0); + $38 = HEAP32[$37>>2]|0; + $39 = (_sqlite3Get4byte($38)|0); + HEAP32[$nextOvfl>>2] = $39; + $40 = HEAP32[$nextOvfl>>2]|0; + $41 = ($40|0)!=(0); + if ($41) { + $42 = HEAP32[$1>>2]|0; + $43 = HEAP32[$nextOvfl>>2]|0; + $44 = HEAP32[$5>>2]|0; + _ptrmapPut($42,$43,4,$44,$rc); + $45 = HEAP32[$rc>>2]|0; + $46 = ($45|0)!=(0); + if ($46) { + $47 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $47; + $77 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($77|0); + } + } + } + } + if ((label|0) == 5) { + $31 = HEAP32[$2>>2]|0; + $32 = (_setChildPtrmaps($31)|0); + HEAP32[$rc>>2] = $32; + $33 = HEAP32[$rc>>2]|0; + $34 = ($33|0)!=(0); + if ($34) { + $35 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $35; + $77 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($77|0); + } + } + $48 = HEAP8[$3>>0]|0; + $49 = $48&255; + $50 = ($49|0)!=(1); + do { + if ($50) { + $51 = HEAP32[$1>>2]|0; + $52 = HEAP32[$4>>2]|0; + $53 = (_btreeGetPage($51,$52,$pPtrPage,0)|0); + HEAP32[$rc>>2] = $53; + $54 = HEAP32[$rc>>2]|0; + $55 = ($54|0)!=(0); + if ($55) { + $56 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $56; + $77 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($77|0); + } + $57 = HEAP32[$pPtrPage>>2]|0; + $58 = (($57) + 68|0); + $59 = HEAP32[$58>>2]|0; + $60 = (_sqlite3PagerWrite($59)|0); + HEAP32[$rc>>2] = $60; + $61 = HEAP32[$rc>>2]|0; + $62 = ($61|0)!=(0); + $63 = HEAP32[$pPtrPage>>2]|0; + if ($62) { + _releasePage($63); + $64 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $64; + $77 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($77|0); + } else { + $65 = HEAP32[$iDbPage>>2]|0; + $66 = HEAP32[$5>>2]|0; + $67 = HEAP8[$3>>0]|0; + $68 = (_modifyPagePointer($63,$65,$66,$67)|0); + HEAP32[$rc>>2] = $68; + $69 = HEAP32[$pPtrPage>>2]|0; + _releasePage($69); + $70 = HEAP32[$rc>>2]|0; + $71 = ($70|0)==(0); + if (!($71)) { + break; + } + $72 = HEAP32[$1>>2]|0; + $73 = HEAP32[$5>>2]|0; + $74 = HEAP8[$3>>0]|0; + $75 = HEAP32[$4>>2]|0; + _ptrmapPut($72,$73,$74,$75,$rc); + break; + } + } + } while(0); + $76 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $76; + $77 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($77|0); +} +function _sqlite3PagerMovepage($pPager,$pPg,$pgno,$isCommit) { + $pPager = $pPager|0; + $pPg = $pPg|0; + $pgno = $pgno|0; + $isCommit = $isCommit|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0; + var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $needSyncPgno = 0, $origPgno = 0, $pPgHdr = 0, $pPgOld = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 20|0; + $pPgOld = sp + 16|0; + $needSyncPgno = sp + 8|0; + $rc = sp + 4|0; + $origPgno = sp; + $pPgHdr = sp + 12|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$2>>2] = $pPg; + HEAP32[$3>>2] = $pgno; + HEAP32[$4>>2] = $isCommit; + HEAP32[$needSyncPgno>>2] = 0; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 15|0); + $7 = HEAP8[$6>>0]|0; + $8 = ($7<<24>>24)!=(0); + if ($8) { + $9 = HEAP32[$2>>2]|0; + $10 = (_sqlite3PagerWrite($9)|0); + HEAP32[$rc>>2] = $10; + $11 = HEAP32[$rc>>2]|0; + $12 = ($11|0)!=(0); + if ($12) { + $13 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $13; + $110 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($110|0); + } + } + $14 = HEAP32[$2>>2]|0; + $15 = (($14) + 24|0); + $16 = HEAP16[$15>>1]|0; + $17 = $16&65535; + $18 = $17 & 2; + $19 = ($18|0)!=(0); + if ($19) { + $20 = HEAP32[$2>>2]|0; + $21 = (_subjRequiresPage($20)|0); + $22 = ($21|0)!=(0); + if ($22) { + $23 = HEAP32[$2>>2]|0; + $24 = (_subjournalPage($23)|0); + HEAP32[$rc>>2] = $24; + $25 = (0)!=($24|0); + if ($25) { + $26 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $26; + $110 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($110|0); + } + } + } + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 24|0); + $29 = HEAP16[$28>>1]|0; + $30 = $29&65535; + $31 = $30 & 4; + $32 = ($31|0)!=(0); + if ($32) { + $33 = HEAP32[$4>>2]|0; + $34 = ($33|0)!=(0); + if (!($34)) { + $35 = HEAP32[$2>>2]|0; + $36 = (($35) + 20|0); + $37 = HEAP32[$36>>2]|0; + HEAP32[$needSyncPgno>>2] = $37; + } + } + $38 = HEAP32[$2>>2]|0; + $39 = (($38) + 24|0); + $40 = HEAP16[$39>>1]|0; + $41 = $40&65535; + $42 = $41 & -5; + $43 = $42&65535; + HEAP16[$39>>1] = $43; + $44 = HEAP32[$1>>2]|0; + $45 = HEAP32[$3>>2]|0; + $46 = (_pager_lookup($44,$45)|0); + HEAP32[$pPgOld>>2] = $46; + $47 = HEAP32[$pPgOld>>2]|0; + $48 = ($47|0)!=(0|0); + do { + if ($48) { + $49 = HEAP32[$pPgOld>>2]|0; + $50 = (($49) + 24|0); + $51 = HEAP16[$50>>1]|0; + $52 = $51&65535; + $53 = $52 & 4; + $54 = HEAP32[$2>>2]|0; + $55 = (($54) + 24|0); + $56 = HEAP16[$55>>1]|0; + $57 = $56&65535; + $58 = $57 | $53; + $59 = $58&65535; + HEAP16[$55>>1] = $59; + $60 = HEAP32[$1>>2]|0; + $61 = (($60) + 15|0); + $62 = HEAP8[$61>>0]|0; + $63 = ($62<<24>>24)!=(0); + $64 = HEAP32[$pPgOld>>2]|0; + if ($63) { + $65 = HEAP32[$1>>2]|0; + $66 = (($65) + 24|0); + $67 = HEAP32[$66>>2]|0; + $68 = (($67) + 1)|0; + _sqlite3PcacheMove($64,$68); + break; + } else { + _sqlite3PcacheDrop($64); + break; + } + } + } while(0); + $69 = HEAP32[$2>>2]|0; + $70 = (($69) + 20|0); + $71 = HEAP32[$70>>2]|0; + HEAP32[$origPgno>>2] = $71; + $72 = HEAP32[$2>>2]|0; + $73 = HEAP32[$3>>2]|0; + _sqlite3PcacheMove($72,$73); + $74 = HEAP32[$2>>2]|0; + _sqlite3PcacheMakeDirty($74); + $75 = HEAP32[$1>>2]|0; + $76 = (($75) + 15|0); + $77 = HEAP8[$76>>0]|0; + $78 = ($77<<24>>24)!=(0); + if ($78) { + $79 = HEAP32[$pPgOld>>2]|0; + $80 = HEAP32[$origPgno>>2]|0; + _sqlite3PcacheMove($79,$80); + $81 = HEAP32[$pPgOld>>2]|0; + _sqlite3PagerUnrefNotNull($81); + } + $82 = HEAP32[$needSyncPgno>>2]|0; + $83 = ($82|0)!=(0); + do { + if ($83) { + $84 = HEAP32[$1>>2]|0; + $85 = HEAP32[$needSyncPgno>>2]|0; + $86 = (_sqlite3PagerAcquire($84,$85,$pPgHdr,0)|0); + HEAP32[$rc>>2] = $86; + $87 = HEAP32[$rc>>2]|0; + $88 = ($87|0)!=(0); + if (!($88)) { + $102 = HEAP32[$pPgHdr>>2]|0; + $103 = (($102) + 24|0); + $104 = HEAP16[$103>>1]|0; + $105 = $104&65535; + $106 = $105 | 4; + $107 = $106&65535; + HEAP16[$103>>1] = $107; + $108 = HEAP32[$pPgHdr>>2]|0; + _sqlite3PcacheMakeDirty($108); + $109 = HEAP32[$pPgHdr>>2]|0; + _sqlite3PagerUnrefNotNull($109); + break; + } + $89 = HEAP32[$needSyncPgno>>2]|0; + $90 = HEAP32[$1>>2]|0; + $91 = (($90) + 28|0); + $92 = HEAP32[$91>>2]|0; + $93 = ($89>>>0)<=($92>>>0); + if ($93) { + $94 = HEAP32[$1>>2]|0; + $95 = (($94) + 56|0); + $96 = HEAP32[$95>>2]|0; + $97 = HEAP32[$needSyncPgno>>2]|0; + $98 = HEAP32[$1>>2]|0; + $99 = (($98) + 200|0); + $100 = HEAP32[$99>>2]|0; + _sqlite3BitvecClear($96,$97,$100); + } + $101 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $101; + $110 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($110|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $110 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($110|0); +} +function _setChildPtrmaps($pPage) { + $pPage = $pPage|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; + var $childPgno = 0, $childPgno1 = 0, $i = 0, $isInitOrig = 0, $nCell = 0, $pBt = 0, $pCell = 0, $pgno = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 16|0; + $i = sp + 32|0; + $nCell = sp + 28|0; + $rc = sp + 24|0; + $pBt = sp + 20|0; + $isInitOrig = sp + 36|0; + $pgno = sp + 8|0; + $pCell = sp + 4|0; + $childPgno = sp; + $childPgno1 = sp + 12|0; + HEAP32[$0>>2] = $pPage; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 52|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pBt>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP8[$4>>0]|0; + HEAP8[$isInitOrig>>0] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 72|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pgno>>2] = $8; + $9 = HEAP32[$0>>2]|0; + $10 = (_btreeInitPage($9)|0); + HEAP32[$rc>>2] = $10; + $11 = HEAP32[$rc>>2]|0; + $12 = ($11|0)!=(0); + if ($12) { + $77 = HEAP8[$isInitOrig>>0]|0; + $78 = HEAP32[$0>>2]|0; + HEAP8[$78>>0] = $77; + $79 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($79|0); + } + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 16|0); + $15 = HEAP16[$14>>1]|0; + $16 = $15&65535; + HEAP32[$nCell>>2] = $16; + HEAP32[$i>>2] = 0; + while(1) { + $17 = HEAP32[$i>>2]|0; + $18 = HEAP32[$nCell>>2]|0; + $19 = ($17|0)<($18|0); + $20 = HEAP32[$0>>2]|0; + if (!($19)) { + break; + } + $21 = (($20) + 56|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$0>>2]|0; + $24 = (($23) + 18|0); + $25 = HEAP16[$24>>1]|0; + $26 = $25&65535; + $27 = HEAP32[$i>>2]|0; + $28 = $27<<1; + $29 = HEAP32[$0>>2]|0; + $30 = (($29) + 64|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + ($28)|0); + $33 = HEAP8[$32>>0]|0; + $34 = $33&255; + $35 = $34 << 8; + $36 = HEAP32[$i>>2]|0; + $37 = $36<<1; + $38 = HEAP32[$0>>2]|0; + $39 = (($38) + 64|0); + $40 = HEAP32[$39>>2]|0; + $41 = (($40) + ($37)|0); + $42 = (($41) + 1|0); + $43 = HEAP8[$42>>0]|0; + $44 = $43&255; + $45 = $35 | $44; + $46 = $26 & $45; + $47 = (($22) + ($46)|0); + HEAP32[$pCell>>2] = $47; + $48 = HEAP32[$0>>2]|0; + $49 = HEAP32[$pCell>>2]|0; + _ptrmapPutOvflPtr($48,$49,$rc); + $50 = HEAP32[$0>>2]|0; + $51 = (($50) + 3|0); + $52 = HEAP8[$51>>0]|0; + $53 = ($52<<24>>24)!=(0); + if (!($53)) { + $54 = HEAP32[$pCell>>2]|0; + $55 = (_sqlite3Get4byte($54)|0); + HEAP32[$childPgno>>2] = $55; + $56 = HEAP32[$pBt>>2]|0; + $57 = HEAP32[$childPgno>>2]|0; + $58 = HEAP32[$pgno>>2]|0; + _ptrmapPut($56,$57,5,$58,$rc); + } + $59 = HEAP32[$i>>2]|0; + $60 = (($59) + 1)|0; + HEAP32[$i>>2] = $60; + } + $61 = (($20) + 3|0); + $62 = HEAP8[$61>>0]|0; + $63 = ($62<<24>>24)!=(0); + if ($63) { + $77 = HEAP8[$isInitOrig>>0]|0; + $78 = HEAP32[$0>>2]|0; + HEAP8[$78>>0] = $77; + $79 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($79|0); + } + $64 = HEAP32[$0>>2]|0; + $65 = (($64) + 5|0); + $66 = HEAP8[$65>>0]|0; + $67 = $66&255; + $68 = (($67) + 8)|0; + $69 = HEAP32[$0>>2]|0; + $70 = (($69) + 56|0); + $71 = HEAP32[$70>>2]|0; + $72 = (($71) + ($68)|0); + $73 = (_sqlite3Get4byte($72)|0); + HEAP32[$childPgno1>>2] = $73; + $74 = HEAP32[$pBt>>2]|0; + $75 = HEAP32[$childPgno1>>2]|0; + $76 = HEAP32[$pgno>>2]|0; + _ptrmapPut($74,$75,5,$76,$rc); + $77 = HEAP8[$isInitOrig>>0]|0; + $78 = HEAP32[$0>>2]|0; + HEAP8[$78>>0] = $77; + $79 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($79|0); +} +function _ptrmapPut($pBt,$key,$eType,$parent,$pRC) { + $pBt = $pBt|0; + $key = $key|0; + $eType = $eType|0; + $parent = $parent|0; + $pRC = $pRC|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $iPtrmap = 0, $offset = 0, $pDbPage = 0, $pPtrmap = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 36|0; + $3 = sp + 24|0; + $4 = sp + 20|0; + $pDbPage = sp + 16|0; + $pPtrmap = sp + 8|0; + $iPtrmap = sp + 4|0; + $offset = sp; + $rc = sp + 12|0; + HEAP32[$0>>2] = $pBt; + HEAP32[$1>>2] = $key; + HEAP8[$2>>0] = $eType; + HEAP32[$3>>2] = $parent; + HEAP32[$4>>2] = $pRC; + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0); + if ($7) { + STACKTOP = sp;return; + } + $8 = HEAP32[$1>>2]|0; + $9 = ($8|0)==(0); + if ($9) { + $10 = (_sqlite3CorruptError(51976)|0); + $11 = HEAP32[$4>>2]|0; + HEAP32[$11>>2] = $10; + STACKTOP = sp;return; + } + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (_ptrmapPageno($12,$13)|0); + HEAP32[$iPtrmap>>2] = $14; + $15 = HEAP32[$0>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$iPtrmap>>2]|0; + $18 = (_sqlite3PagerAcquire($16,$17,$pDbPage,0)|0); + HEAP32[$rc>>2] = $18; + $19 = HEAP32[$rc>>2]|0; + $20 = ($19|0)!=(0); + if ($20) { + $21 = HEAP32[$rc>>2]|0; + $22 = HEAP32[$4>>2]|0; + HEAP32[$22>>2] = $21; + STACKTOP = sp;return; + } + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$iPtrmap>>2]|0; + $25 = (($23) - ($24))|0; + $26 = (($25) - 1)|0; + $27 = ($26*5)|0; + HEAP32[$offset>>2] = $27; + $28 = HEAP32[$offset>>2]|0; + $29 = ($28|0)<(0); + do { + if ($29) { + $30 = (_sqlite3CorruptError(51987)|0); + $31 = HEAP32[$4>>2]|0; + HEAP32[$31>>2] = $30; + } else { + $32 = HEAP32[$pDbPage>>2]|0; + $33 = (_sqlite3PagerGetData($32)|0); + HEAP32[$pPtrmap>>2] = $33; + $34 = HEAP8[$2>>0]|0; + $35 = $34&255; + $36 = HEAP32[$offset>>2]|0; + $37 = HEAP32[$pPtrmap>>2]|0; + $38 = (($37) + ($36)|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39&255; + $41 = ($35|0)!=($40|0); + if (!($41)) { + $42 = HEAP32[$offset>>2]|0; + $43 = (($42) + 1)|0; + $44 = HEAP32[$pPtrmap>>2]|0; + $45 = (($44) + ($43)|0); + $46 = (_sqlite3Get4byte($45)|0); + $47 = HEAP32[$3>>2]|0; + $48 = ($46|0)!=($47|0); + if (!($48)) { + break; + } + } + $49 = HEAP32[$pDbPage>>2]|0; + $50 = (_sqlite3PagerWrite($49)|0); + HEAP32[$rc>>2] = $50; + $51 = HEAP32[$4>>2]|0; + HEAP32[$51>>2] = $50; + $52 = HEAP32[$rc>>2]|0; + $53 = ($52|0)==(0); + if ($53) { + $54 = HEAP8[$2>>0]|0; + $55 = HEAP32[$offset>>2]|0; + $56 = HEAP32[$pPtrmap>>2]|0; + $57 = (($56) + ($55)|0); + HEAP8[$57>>0] = $54; + $58 = HEAP32[$offset>>2]|0; + $59 = (($58) + 1)|0; + $60 = HEAP32[$pPtrmap>>2]|0; + $61 = (($60) + ($59)|0); + $62 = HEAP32[$3>>2]|0; + _sqlite3Put4byte($61,$62); + } + } + } while(0); + $63 = HEAP32[$pDbPage>>2]|0; + _sqlite3PagerUnref($63); + STACKTOP = sp;return; +} +function _modifyPagePointer($pPage,$iFrom,$iTo,$eType) { + $pPage = $pPage|0; + $iFrom = $iFrom|0; + $iTo = $iTo|0; + $eType = $eType|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $info = 0, $isInitOrig = 0, $nCell = 0, $pCell = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 44|0; + $1 = sp + 56|0; + $2 = sp + 52|0; + $3 = sp + 48|0; + $4 = sp + 61|0; + $isInitOrig = sp + 60|0; + $i = sp + 36|0; + $nCell = sp + 32|0; + $pCell = sp + 40|0; + $info = sp; + HEAP32[$1>>2] = $pPage; + HEAP32[$2>>2] = $iFrom; + HEAP32[$3>>2] = $iTo; + HEAP8[$4>>0] = $eType; + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = ($6|0)==(4); + $8 = HEAP32[$1>>2]|0; + do { + if ($7) { + $9 = (($8) + 56|0); + $10 = HEAP32[$9>>2]|0; + $11 = (_sqlite3Get4byte($10)|0); + $12 = HEAP32[$2>>2]|0; + $13 = ($11|0)!=($12|0); + if (!($13)) { + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 56|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$3>>2]|0; + _sqlite3Put4byte($17,$18); + break; + } + $14 = (_sqlite3CorruptError(54035)|0); + HEAP32[$0>>2] = $14; + $133 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($133|0); + } else { + $19 = HEAP8[$8>>0]|0; + HEAP8[$isInitOrig>>0] = $19; + $20 = HEAP32[$1>>2]|0; + (_btreeInitPage($20)|0); + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 16|0); + $23 = HEAP16[$22>>1]|0; + $24 = $23&65535; + HEAP32[$nCell>>2] = $24; + HEAP32[$i>>2] = 0; + while(1) { + $25 = HEAP32[$i>>2]|0; + $26 = HEAP32[$nCell>>2]|0; + $27 = ($25|0)<($26|0); + if (!($27)) { + break; + } + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 56|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 18|0); + $33 = HEAP16[$32>>1]|0; + $34 = $33&65535; + $35 = HEAP32[$i>>2]|0; + $36 = $35<<1; + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 64|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($39) + ($36)|0); + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = $42 << 8; + $44 = HEAP32[$i>>2]|0; + $45 = $44<<1; + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 64|0); + $48 = HEAP32[$47>>2]|0; + $49 = (($48) + ($45)|0); + $50 = (($49) + 1|0); + $51 = HEAP8[$50>>0]|0; + $52 = $51&255; + $53 = $43 | $52; + $54 = $34 & $53; + $55 = (($30) + ($54)|0); + HEAP32[$pCell>>2] = $55; + $56 = HEAP8[$4>>0]|0; + $57 = $56&255; + $58 = ($57|0)==(3); + if ($58) { + $59 = HEAP32[$1>>2]|0; + $60 = HEAP32[$pCell>>2]|0; + _btreeParseCellPtr($59,$60,$info); + $61 = (($info) + 24|0); + $62 = HEAP16[$61>>1]|0; + $63 = $62&65535; + $64 = ($63|0)!=(0); + if ($64) { + $65 = HEAP32[$pCell>>2]|0; + $66 = (($info) + 24|0); + $67 = HEAP16[$66>>1]|0; + $68 = $67&65535; + $69 = (($65) + ($68)|0); + $70 = (($69) + 3|0); + $71 = HEAP32[$1>>2]|0; + $72 = (($71) + 56|0); + $73 = HEAP32[$72>>2]|0; + $74 = HEAP32[$1>>2]|0; + $75 = (($74) + 18|0); + $76 = HEAP16[$75>>1]|0; + $77 = $76&65535; + $78 = (($73) + ($77)|0); + $79 = ($70>>>0)<=($78>>>0); + if ($79) { + $80 = HEAP32[$2>>2]|0; + $81 = (($info) + 24|0); + $82 = HEAP16[$81>>1]|0; + $83 = $82&65535; + $84 = HEAP32[$pCell>>2]|0; + $85 = (($84) + ($83)|0); + $86 = (_sqlite3Get4byte($85)|0); + $87 = ($80|0)==($86|0); + if ($87) { + label = 11; + break; + } + } + } + } else { + $94 = HEAP32[$pCell>>2]|0; + $95 = (_sqlite3Get4byte($94)|0); + $96 = HEAP32[$2>>2]|0; + $97 = ($95|0)==($96|0); + if ($97) { + label = 13; + break; + } + } + $100 = HEAP32[$i>>2]|0; + $101 = (($100) + 1)|0; + HEAP32[$i>>2] = $101; + } + if ((label|0) == 11) { + $88 = (($info) + 24|0); + $89 = HEAP16[$88>>1]|0; + $90 = $89&65535; + $91 = HEAP32[$pCell>>2]|0; + $92 = (($91) + ($90)|0); + $93 = HEAP32[$3>>2]|0; + _sqlite3Put4byte($92,$93); + } + else if ((label|0) == 13) { + $98 = HEAP32[$pCell>>2]|0; + $99 = HEAP32[$3>>2]|0; + _sqlite3Put4byte($98,$99); + } + $102 = HEAP32[$i>>2]|0; + $103 = HEAP32[$nCell>>2]|0; + $104 = ($102|0)==($103|0); + do { + if ($104) { + $105 = HEAP8[$4>>0]|0; + $106 = $105&255; + $107 = ($106|0)!=(5); + if (!($107)) { + $108 = HEAP32[$1>>2]|0; + $109 = (($108) + 5|0); + $110 = HEAP8[$109>>0]|0; + $111 = $110&255; + $112 = (($111) + 8)|0; + $113 = HEAP32[$1>>2]|0; + $114 = (($113) + 56|0); + $115 = HEAP32[$114>>2]|0; + $116 = (($115) + ($112)|0); + $117 = (_sqlite3Get4byte($116)|0); + $118 = HEAP32[$2>>2]|0; + $119 = ($117|0)!=($118|0); + if (!($119)) { + $121 = HEAP32[$1>>2]|0; + $122 = (($121) + 5|0); + $123 = HEAP8[$122>>0]|0; + $124 = $123&255; + $125 = (($124) + 8)|0; + $126 = HEAP32[$1>>2]|0; + $127 = (($126) + 56|0); + $128 = HEAP32[$127>>2]|0; + $129 = (($128) + ($125)|0); + $130 = HEAP32[$3>>2]|0; + _sqlite3Put4byte($129,$130); + break; + } + } + $120 = (_sqlite3CorruptError(54069)|0); + HEAP32[$0>>2] = $120; + $133 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($133|0); + } + } while(0); + $131 = HEAP8[$isInitOrig>>0]|0; + $132 = HEAP32[$1>>2]|0; + HEAP8[$132>>0] = $131; + } + } while(0); + HEAP32[$0>>2] = 0; + $133 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($133|0); +} +function _ptrmapPutOvflPtr($pPage,$pCell,$pRC) { + $pPage = $pPage|0; + $pCell = $pCell|0; + $pRC = $pRC|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $info = 0, $ovfl = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $info = sp; + $ovfl = sp + 40|0; + HEAP32[$0>>2] = $pPage; + HEAP32[$1>>2] = $pCell; + HEAP32[$2>>2] = $pRC; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0); + if ($5) { + STACKTOP = sp;return; + } + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + _btreeParseCellPtr($6,$7,$info); + $8 = (($info) + 24|0); + $9 = HEAP16[$8>>1]|0; + $10 = ($9<<16>>16)!=(0); + if (!($10)) { + STACKTOP = sp;return; + } + $11 = (($info) + 24|0); + $12 = HEAP16[$11>>1]|0; + $13 = $12&65535; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + ($13)|0); + $16 = (_sqlite3Get4byte($15)|0); + HEAP32[$ovfl>>2] = $16; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 52|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$ovfl>>2]|0; + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 72|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP32[$2>>2]|0; + _ptrmapPut($19,$20,3,$23,$24); + STACKTOP = sp;return; +} +function _sqlite3PcacheMove($p,$newPgno) { + $p = $p|0; + $newPgno = $newPgno|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pCache = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pCache = sp + 4|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $newPgno; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 28|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pCache>>2] = $4; + $5 = HEAP32[((45136 + 140|0))>>2]|0; + $6 = HEAP32[$pCache>>2]|0; + $7 = (($6) + 40|0); + $8 = HEAP32[$7>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 20|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$1>>2]|0; + FUNCTION_TABLE_viiii[$5 & 3]($8,$10,$13,$14); + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 20|0); + HEAP32[$17>>2] = $15; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 24|0); + $20 = HEAP16[$19>>1]|0; + $21 = $20&65535; + $22 = $21 & 2; + $23 = ($22|0)!=(0); + if (!($23)) { + STACKTOP = sp;return; + } + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 24|0); + $26 = HEAP16[$25>>1]|0; + $27 = $26&65535; + $28 = $27 & 4; + $29 = ($28|0)!=(0); + if (!($29)) { + STACKTOP = sp;return; + } + $30 = HEAP32[$0>>2]|0; + _pcacheRemoveFromDirtyList($30); + $31 = HEAP32[$0>>2]|0; + _pcacheAddToDirtyList($31); + STACKTOP = sp;return; +} +function _btreeGetHasContent($pBt,$pgno) { + $pBt = $pBt|0; + $pgno = $pgno|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $p = sp + 4|0; + HEAP32[$0>>2] = $pBt; + HEAP32[$1>>2] = $pgno; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 60|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$p>>2] = $4; + $5 = HEAP32[$p>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + $16 = 0; + $15 = $16&1; + STACKTOP = sp;return ($15|0); + } + $7 = HEAP32[$1>>2]|0; + $8 = HEAP32[$p>>2]|0; + $9 = (_sqlite3BitvecSize($8)|0); + $10 = ($7>>>0)>($9>>>0); + if ($10) { + $16 = 1; + $15 = $16&1; + STACKTOP = sp;return ($15|0); + } + $11 = HEAP32[$p>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (_sqlite3BitvecTest($11,$12)|0); + $14 = ($13|0)!=(0); + $16 = $14; + $15 = $16&1; + STACKTOP = sp;return ($15|0); +} +function _sqlite3PagerIsMemdb($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 15|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + STACKTOP = sp;return ($4|0); +} +function _execSql($db,$pzErrMsg,$zSql) { + $db = $db|0; + $pzErrMsg = $pzErrMsg|0; + $zSql = $zSql|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $pStmt = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 20|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $pStmt = sp + 16|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pzErrMsg; + HEAP32[$3>>2] = $zSql; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + HEAP32[$0>>2] = 7; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); + } + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$3>>2]|0; + $8 = (_sqlite3_prepare($6,$7,-1,$pStmt,0)|0); + $9 = (0)!=($8|0); + if ($9) { + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (_sqlite3_errmsg($12)|0); + _sqlite3SetString($10,$11,$13,$vararg_buffer); + $14 = HEAP32[$1>>2]|0; + $15 = (_sqlite3_errcode($14)|0); + HEAP32[$0>>2] = $15; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); + } else { + $16 = HEAP32[$pStmt>>2]|0; + (_sqlite3_step($16)|0); + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$pStmt>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = (_vacuumFinalize($17,$18,$19)|0); + HEAP32[$0>>2] = $20; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); + } + return 0|0; +} +function _sqlite3BtreeGetReserve($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $n = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($1); + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 4|0); + $4 = HEAP32[$3>>2]|0; + $5 = (($4) + 32|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 36|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($6) - ($11))|0; + HEAP32[$n>>2] = $12; + $13 = HEAP32[$n>>2]|0; + STACKTOP = sp;return ($13|0); +} +function _execExecSql($db,$pzErrMsg,$zSql) { + $db = $db|0; + $pzErrMsg = $pzErrMsg|0; + $zSql = $zSql|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pStmt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pStmt = sp + 12|0; + $rc = sp + 16|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pzErrMsg; + HEAP32[$3>>2] = $zSql; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$3>>2]|0; + $6 = (_sqlite3_prepare($4,$5,-1,$pStmt,0)|0); + HEAP32[$rc>>2] = $6; + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)!=(0); + if ($8) { + $9 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $9; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); + } + while(1) { + $10 = HEAP32[$pStmt>>2]|0; + $11 = (_sqlite3_step($10)|0); + $12 = (100)==($11|0); + $13 = HEAP32[$1>>2]|0; + if (!($12)) { + label = 6; + break; + } + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$pStmt>>2]|0; + $16 = (_sqlite3_column_text($15,0)|0); + $17 = (_execSql($13,$14,$16)|0); + HEAP32[$rc>>2] = $17; + $18 = HEAP32[$rc>>2]|0; + $19 = ($18|0)!=(0); + if ($19) { + label = 5; + break; + } + } + if ((label|0) == 5) { + $20 = HEAP32[$1>>2]|0; + $21 = HEAP32[$pStmt>>2]|0; + $22 = HEAP32[$2>>2]|0; + (_vacuumFinalize($20,$21,$22)|0); + $23 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $23; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); + } + else if ((label|0) == 6) { + $24 = HEAP32[$pStmt>>2]|0; + $25 = HEAP32[$2>>2]|0; + $26 = (_vacuumFinalize($13,$24,$25)|0); + HEAP32[$0>>2] = $26; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); + } + return 0|0; +} +function _sqlite3BtreeCopyFile($pTo,$pFrom) { + $pTo = $pTo|0; + $pFrom = $pFrom|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $b = 0, $nByte = 0, $pFd = 0, $rc = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 68|0; + $1 = sp + 64|0; + $rc = sp + 8|0; + $pFd = sp + 12|0; + $b = sp + 16|0; + $nByte = sp; + HEAP32[$0>>2] = $pTo; + HEAP32[$1>>2] = $pFrom; + $2 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($2); + $3 = HEAP32[$1>>2]|0; + _sqlite3BtreeEnter($3); + $4 = HEAP32[$0>>2]|0; + $5 = (_sqlite3BtreePager($4)|0); + $6 = (_sqlite3PagerFile($5)|0); + HEAP32[$pFd>>2] = $6; + $7 = HEAP32[$pFd>>2]|0; + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = HEAP32[$1>>2]|0; + $11 = (_sqlite3BtreeGetPageSize($10)|0); + $12 = ($11|0)<(0); + $13 = $12 << 31 >> 31; + $14 = HEAP32[$1>>2]|0; + $15 = (_sqlite3BtreeLastPage($14)|0); + $16 = (___muldi3(($11|0),($13|0),($15|0),0)|0); + $17 = tempRet0; + $18 = $nByte; + $19 = $18; + HEAP32[$19>>2] = $16; + $20 = (($18) + 4)|0; + $21 = $20; + HEAP32[$21>>2] = $17; + $22 = HEAP32[$pFd>>2]|0; + $23 = (_sqlite3OsFileControl($22,11,$nByte)|0); + HEAP32[$rc>>2] = $23; + $24 = HEAP32[$rc>>2]|0; + $25 = ($24|0)==(12); + $$ = $25 ? 0 : $23; + HEAP32[$rc>>2] = $$; + $26 = HEAP32[$rc>>2]|0; + $27 = ($26|0)!=(0); + if ($27) { + $50 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($50|0); + } + } + dest=$b+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $28 = HEAP32[$1>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = (($b) + 20|0); + HEAP32[$30>>2] = $29; + $31 = HEAP32[$1>>2]|0; + $32 = (($b) + 24|0); + HEAP32[$32>>2] = $31; + $33 = HEAP32[$0>>2]|0; + $34 = (($b) + 4|0); + HEAP32[$34>>2] = $33; + $35 = (($b) + 16|0); + HEAP32[$35>>2] = 1; + (_sqlite3_backup_step($b,2147483647)|0); + $36 = (_sqlite3_backup_finish($b)|0); + HEAP32[$rc>>2] = $36; + $37 = HEAP32[$rc>>2]|0; + $38 = ($37|0)==(0); + if ($38) { + $39 = HEAP32[$0>>2]|0; + $40 = (($39) + 4|0); + $41 = HEAP32[$40>>2]|0; + $42 = (($41) + 22|0); + $43 = HEAP16[$42>>1]|0; + $44 = $43&65535; + $45 = $44 & -3; + $46 = $45&65535; + HEAP16[$42>>1] = $46; + $50 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($50|0); + } else { + $47 = (($b) + 4|0); + $48 = HEAP32[$47>>2]|0; + $49 = (_sqlite3BtreePager($48)|0); + _sqlite3PagerClearCache($49); + $50 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($50|0); + } + return 0|0; +} +function _sqlite3PagerClearCache($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 15|0); + $3 = HEAP8[$2>>0]|0; + $4 = ($3<<24>>24)!=(0); + if ($4) { + STACKTOP = sp;return; + } + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 12|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = ($8|0)==(0); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = HEAP32[$0>>2]|0; + _pager_reset($10); + STACKTOP = sp;return; +} +function _vacuumFinalize($db,$pStmt,$pzErrMsg) { + $db = $db|0; + $pStmt = $pStmt|0; + $pzErrMsg = $pzErrMsg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 16|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $rc = sp + 12|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pStmt; + HEAP32[$2>>2] = $pzErrMsg; + $3 = HEAP32[$1>>2]|0; + $4 = (_sqlite3VdbeFinalize($3)|0); + HEAP32[$rc>>2] = $4; + $5 = HEAP32[$rc>>2]|0; + $6 = ($5|0)!=(0); + if (!($6)) { + $11 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($11|0); + } + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = (_sqlite3_errmsg($9)|0); + _sqlite3SetString($7,$8,$10,$vararg_buffer); + $11 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($11|0); +} +function _sqlite3PagerSharedLock($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; + var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; + var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; + var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; + var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $bExists = 0, $bHotJournal = 0, $dbFileVers = 0, $f = 0; + var $fout = 0, $nPage = 0, $or$cond = 0, $pVfs = 0, $rc = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 16|0; + $1 = sp + 32|0; + $rc = sp + 28|0; + $bHotJournal = sp + 24|0; + $pVfs = sp + 20|0; + $bExists = sp + 12|0; + $fout = sp + 8|0; + $f = sp + 4|0; + $nPage = sp; + $dbFileVers = sp + 40|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 15|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = ($5|0)!=(0); + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 40|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0); + if ($10) { + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 40|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$0>>2] = $13; + $155 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($155|0); + } + } + $14 = HEAP32[$1>>2]|0; + $15 = (_pagerUseWal($14)|0); + $16 = ($15|0)!=(0); + L6: do { + if ($16) { + label = 37; + } else { + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 16|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = ($20|0)==(0); + if ($21) { + HEAP32[$bHotJournal>>2] = 1; + $22 = HEAP32[$1>>2]|0; + $23 = (_pager_wait_on_lock($22,1)|0); + HEAP32[$rc>>2] = $23; + $24 = HEAP32[$rc>>2]|0; + $25 = ($24|0)!=(0); + if (!($25)) { + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 17|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = ($29|0)<=(1); + if ($30) { + $31 = HEAP32[$1>>2]|0; + $32 = (_hasHotJournal($31,$bHotJournal)|0); + HEAP32[$rc>>2] = $32; + } + $33 = HEAP32[$rc>>2]|0; + $34 = ($33|0)!=(0); + if (!($34)) { + $35 = HEAP32[$bHotJournal>>2]|0; + $36 = ($35|0)!=(0); + if ($36) { + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 14|0); + $39 = HEAP8[$38>>0]|0; + $40 = ($39<<24>>24)!=(0); + if ($40) { + HEAP32[$rc>>2] = 776; + break; + } + $41 = HEAP32[$1>>2]|0; + $42 = (_pagerLockDb($41,4)|0); + HEAP32[$rc>>2] = $42; + $43 = HEAP32[$rc>>2]|0; + $44 = ($43|0)!=(0); + if ($44) { + break; + } + $45 = HEAP32[$1>>2]|0; + $46 = (($45) + 64|0); + $47 = HEAP32[$46>>2]|0; + $48 = HEAP32[$47>>2]|0; + $49 = ($48|0)!=(0|0); + if (!($49)) { + $50 = HEAP32[$1>>2]|0; + $51 = HEAP32[$50>>2]|0; + HEAP32[$pVfs>>2] = $51; + $52 = HEAP32[$pVfs>>2]|0; + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 172|0); + $55 = HEAP32[$54>>2]|0; + $56 = (_sqlite3OsAccess($52,$55,0,$bExists)|0); + HEAP32[$rc>>2] = $56; + $57 = HEAP32[$rc>>2]|0; + $58 = ($57|0)==(0); + if ($58) { + $59 = HEAP32[$bExists>>2]|0; + $60 = ($59|0)!=(0); + if ($60) { + HEAP32[$fout>>2] = 0; + HEAP32[$f>>2] = 2050; + $61 = HEAP32[$pVfs>>2]|0; + $62 = HEAP32[$1>>2]|0; + $63 = (($62) + 172|0); + $64 = HEAP32[$63>>2]|0; + $65 = HEAP32[$1>>2]|0; + $66 = (($65) + 64|0); + $67 = HEAP32[$66>>2]|0; + $68 = HEAP32[$f>>2]|0; + $69 = (_sqlite3OsOpen($61,$64,$67,$68,$fout)|0); + HEAP32[$rc>>2] = $69; + $70 = HEAP32[$rc>>2]|0; + $71 = ($70|0)==(0); + if ($71) { + $72 = HEAP32[$fout>>2]|0; + $73 = $72 & 1; + $74 = ($73|0)!=(0); + if ($74) { + $75 = (_sqlite3CantopenError(44932)|0); + HEAP32[$rc>>2] = $75; + $76 = HEAP32[$1>>2]|0; + $77 = (($76) + 64|0); + $78 = HEAP32[$77>>2]|0; + (_sqlite3OsClose($78)|0); + } + } + } + } + } + $79 = HEAP32[$1>>2]|0; + $80 = (($79) + 64|0); + $81 = HEAP32[$80>>2]|0; + $82 = HEAP32[$81>>2]|0; + $83 = ($82|0)!=(0|0); + $84 = HEAP32[$1>>2]|0; + if ($83) { + $85 = (_pagerSyncHotJournal($84)|0); + HEAP32[$rc>>2] = $85; + $86 = HEAP32[$rc>>2]|0; + $87 = ($86|0)==(0); + if ($87) { + $88 = HEAP32[$1>>2]|0; + $89 = (_pager_playback($88,1)|0); + HEAP32[$rc>>2] = $89; + $90 = HEAP32[$1>>2]|0; + $91 = (($90) + 16|0); + HEAP8[$91>>0] = 0; + } + } else { + $92 = (($84) + 4|0); + $93 = HEAP8[$92>>0]|0; + $94 = ($93<<24>>24)!=(0); + if (!($94)) { + $95 = HEAP32[$1>>2]|0; + (_pagerUnlockDb($95,1)|0); + } + } + $96 = HEAP32[$rc>>2]|0; + $97 = ($96|0)!=(0); + if ($97) { + $98 = HEAP32[$1>>2]|0; + $99 = HEAP32[$rc>>2]|0; + (_pager_error($98,$99)|0); + break; + } + } + $100 = HEAP32[$1>>2]|0; + $101 = (($100) + 12|0); + $102 = HEAP8[$101>>0]|0; + $103 = ($102<<24>>24)!=(0); + do { + if (!($103)) { + $104 = HEAP32[$1>>2]|0; + $105 = (($104) + 88|0); + $106 = HEAP32[$105>>2]|0; + $107 = ($106|0)!=(0|0); + if (!($107)) { + $108 = HEAP32[$1>>2]|0; + $109 = (($108) + 204|0); + $110 = HEAP32[$109>>2]|0; + $111 = (_sqlite3PcachePagecount($110)|0); + $112 = ($111|0)>(0); + if (!($112)) { + break; + } + } + HEAP32[$nPage>>2] = 0; + $113 = HEAP32[$1>>2]|0; + $114 = (_pagerPagecount($113,$nPage)|0); + HEAP32[$rc>>2] = $114; + $115 = HEAP32[$rc>>2]|0; + $116 = ($115|0)!=(0); + if ($116) { + break L6; + } + $117 = HEAP32[$nPage>>2]|0; + $118 = ($117>>>0)>(0); + if ($118) { + $119 = HEAP32[$1>>2]|0; + $120 = (($119) + 60|0); + $121 = HEAP32[$120>>2]|0; + $122 = (_sqlite3OsRead($121,$dbFileVers,16,24,0)|0); + HEAP32[$rc>>2] = $122; + $123 = HEAP32[$rc>>2]|0; + $124 = ($123|0)!=(0); + $125 = HEAP32[$rc>>2]|0; + $126 = ($125|0)!=(522); + $or$cond = $124 & $126; + if ($or$cond) { + break L6; + } + } else { + dest=$dbFileVers+0|0; stop=dest+16|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + } + $127 = HEAP32[$1>>2]|0; + $128 = (($127) + 100|0); + $129 = (_memcmp($128,$dbFileVers,16)|0); + $130 = ($129|0)!=(0); + if ($130) { + $131 = HEAP32[$1>>2]|0; + _pager_reset($131); + } + } + } while(0); + $132 = HEAP32[$1>>2]|0; + $133 = (_pagerOpenWalIfPresent($132)|0); + HEAP32[$rc>>2] = $133; + label = 37; + } + } + } else { + label = 37; + } + } + } while(0); + if ((label|0) == 37) { + $134 = HEAP32[$1>>2]|0; + $135 = (_pagerUseWal($134)|0); + $136 = ($135|0)!=(0); + if ($136) { + $137 = HEAP32[$1>>2]|0; + $138 = (_pagerBeginReadTransaction($137)|0); + HEAP32[$rc>>2] = $138; + } + $139 = HEAP32[$1>>2]|0; + $140 = (($139) + 16|0); + $141 = HEAP8[$140>>0]|0; + $142 = $141&255; + $143 = ($142|0)==(0); + if ($143) { + $144 = HEAP32[$rc>>2]|0; + $145 = ($144|0)==(0); + if ($145) { + $146 = HEAP32[$1>>2]|0; + $147 = HEAP32[$1>>2]|0; + $148 = (($147) + 24|0); + $149 = (_pagerPagecount($146,$148)|0); + HEAP32[$rc>>2] = $149; + } + } + } + $150 = HEAP32[$rc>>2]|0; + $151 = ($150|0)!=(0); + $152 = HEAP32[$1>>2]|0; + if ($151) { + _pager_unlock($152); + } else { + $153 = (($152) + 16|0); + HEAP8[$153>>0] = 1; + } + $154 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $154; + $155 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($155|0); +} +function _hasHotJournal($pPager,$pExists) { + $pPager = $pPager|0; + $pExists = $pExists|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $9 = 0, $exists = 0, $f = 0, $first = 0, $jrnlOpen = 0, $locked = 0, $nPage = 0, $pVfs = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 16|0; + $1 = sp + 32|0; + $pVfs = sp + 28|0; + $rc = sp + 24|0; + $exists = sp + 20|0; + $jrnlOpen = sp + 12|0; + $locked = sp + 8|0; + $nPage = sp + 4|0; + $f = sp; + $first = sp + 36|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $pExists; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$pVfs>>2] = $3; + HEAP32[$rc>>2] = 0; + HEAP32[$exists>>2] = 1; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 64|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + $9 = $8 ^ 1; + $10 = $9 ^ 1; + $11 = $10&1; + HEAP32[$jrnlOpen>>2] = $11; + $12 = HEAP32[$1>>2]|0; + HEAP32[$12>>2] = 0; + $13 = HEAP32[$jrnlOpen>>2]|0; + $14 = ($13|0)!=(0); + if (!($14)) { + $15 = HEAP32[$pVfs>>2]|0; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 172|0); + $18 = HEAP32[$17>>2]|0; + $19 = (_sqlite3OsAccess($15,$18,0,$exists)|0); + HEAP32[$rc>>2] = $19; + } + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)==(0); + if (!($21)) { + $84 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($84|0); + } + $22 = HEAP32[$exists>>2]|0; + $23 = ($22|0)!=(0); + if (!($23)) { + $84 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($84|0); + } + HEAP32[$locked>>2] = 0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 60|0); + $26 = HEAP32[$25>>2]|0; + $27 = (_sqlite3OsCheckReservedLock($26,$locked)|0); + HEAP32[$rc>>2] = $27; + $28 = HEAP32[$rc>>2]|0; + $29 = ($28|0)==(0); + if (!($29)) { + $84 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($84|0); + } + $30 = HEAP32[$locked>>2]|0; + $31 = ($30|0)!=(0); + if ($31) { + $84 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($84|0); + } + $32 = HEAP32[$0>>2]|0; + $33 = (_pagerPagecount($32,$nPage)|0); + HEAP32[$rc>>2] = $33; + $34 = HEAP32[$rc>>2]|0; + $35 = ($34|0)==(0); + if (!($35)) { + $84 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($84|0); + } + $36 = HEAP32[$nPage>>2]|0; + $37 = ($36|0)==(0); + if ($37) { + $38 = HEAP32[$jrnlOpen>>2]|0; + $39 = ($38|0)!=(0); + if (!($39)) { + _sqlite3BeginBenignMalloc(); + $40 = HEAP32[$0>>2]|0; + $41 = (_pagerLockDb($40,2)|0); + $42 = ($41|0)==(0); + if ($42) { + $43 = HEAP32[$pVfs>>2]|0; + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 172|0); + $46 = HEAP32[$45>>2]|0; + (_sqlite3OsDelete($43,$46,0)|0); + $47 = HEAP32[$0>>2]|0; + $48 = (($47) + 4|0); + $49 = HEAP8[$48>>0]|0; + $50 = ($49<<24>>24)!=(0); + if (!($50)) { + $51 = HEAP32[$0>>2]|0; + (_pagerUnlockDb($51,1)|0); + } + } + _sqlite3EndBenignMalloc(); + $84 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($84|0); + } + } + $52 = HEAP32[$jrnlOpen>>2]|0; + $53 = ($52|0)!=(0); + if (!($53)) { + HEAP32[$f>>2] = 2049; + $54 = HEAP32[$pVfs>>2]|0; + $55 = HEAP32[$0>>2]|0; + $56 = (($55) + 172|0); + $57 = HEAP32[$56>>2]|0; + $58 = HEAP32[$0>>2]|0; + $59 = (($58) + 64|0); + $60 = HEAP32[$59>>2]|0; + $61 = HEAP32[$f>>2]|0; + $62 = (_sqlite3OsOpen($54,$57,$60,$61,$f)|0); + HEAP32[$rc>>2] = $62; + } + $63 = HEAP32[$rc>>2]|0; + $64 = ($63|0)==(0); + if ($64) { + HEAP8[$first>>0] = 0; + $65 = HEAP32[$0>>2]|0; + $66 = (($65) + 64|0); + $67 = HEAP32[$66>>2]|0; + $68 = (_sqlite3OsRead($67,$first,1,0,0)|0); + HEAP32[$rc>>2] = $68; + $69 = HEAP32[$rc>>2]|0; + $70 = ($69|0)==(522); + $$ = $70 ? 0 : $68; + HEAP32[$rc>>2] = $$; + $71 = HEAP32[$jrnlOpen>>2]|0; + $72 = ($71|0)!=(0); + if (!($72)) { + $73 = HEAP32[$0>>2]|0; + $74 = (($73) + 64|0); + $75 = HEAP32[$74>>2]|0; + (_sqlite3OsClose($75)|0); + } + $76 = HEAP8[$first>>0]|0; + $77 = $76&255; + $78 = ($77|0)!=(0); + $79 = $78&1; + $80 = HEAP32[$1>>2]|0; + HEAP32[$80>>2] = $79; + $84 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($84|0); + } else { + $81 = HEAP32[$rc>>2]|0; + $82 = ($81|0)==(14); + if (!($82)) { + $84 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($84|0); + } + $83 = HEAP32[$1>>2]|0; + HEAP32[$83>>2] = 1; + HEAP32[$rc>>2] = 0; + $84 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($84|0); + } + return 0|0; +} +function _sqlite3PcachePagecount($pCache) { + $pCache = $pCache|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nPage = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $nPage = sp; + HEAP32[$0>>2] = $pCache; + HEAP32[$nPage>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 40|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + $10 = HEAP32[$nPage>>2]|0; + STACKTOP = sp;return ($10|0); + } + $5 = HEAP32[((45136 + 128|0))>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 40|0); + $8 = HEAP32[$7>>2]|0; + $9 = (FUNCTION_TABLE_ii[$5 & 63]($8)|0); + HEAP32[$nPage>>2] = $9; + $10 = HEAP32[$nPage>>2]|0; + STACKTOP = sp;return ($10|0); +} +function _pagerPagecount($pPager,$pnPage) { + $pPager = $pPager|0; + $pnPage = $pnPage|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $n = 0, $nPage = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp + 16|0; + $2 = sp + 8|0; + $nPage = sp + 12|0; + $n = sp; + $rc = sp + 20|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$2>>2] = $pnPage; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 208|0); + $5 = HEAP32[$4>>2]|0; + $6 = (_sqlite3WalDbsize($5)|0); + HEAP32[$nPage>>2] = $6; + $7 = HEAP32[$nPage>>2]|0; + $8 = ($7|0)==(0); + if ($8) { + $9 = $n; + $10 = $9; + HEAP32[$10>>2] = 0; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = 0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 60|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 60|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3OsFileSize($20,$n)|0); + HEAP32[$rc>>2] = $21; + $22 = HEAP32[$rc>>2]|0; + $23 = ($22|0)!=(0); + if ($23) { + $24 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $24; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); + } + } + $25 = $n; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = (($25) + 4)|0; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 152|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($33|0)<(0); + $35 = $34 << 31 >> 31; + $36 = (_i64Add(($27|0),($30|0),($33|0),($35|0))|0); + $37 = tempRet0; + $38 = (_i64Subtract(($36|0),($37|0),1,0)|0); + $39 = tempRet0; + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 152|0); + $42 = HEAP32[$41>>2]|0; + $43 = ($42|0)<(0); + $44 = $43 << 31 >> 31; + $45 = (___divdi3(($38|0),($39|0),($42|0),($44|0))|0); + $46 = tempRet0; + HEAP32[$nPage>>2] = $45; + } + $47 = HEAP32[$nPage>>2]|0; + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + 156|0); + $50 = HEAP32[$49>>2]|0; + $51 = ($47>>>0)>($50>>>0); + if ($51) { + $52 = HEAP32[$nPage>>2]|0; + $53 = HEAP32[$1>>2]|0; + $54 = (($53) + 156|0); + HEAP32[$54>>2] = $52; + } + $55 = HEAP32[$nPage>>2]|0; + $56 = HEAP32[$2>>2]|0; + HEAP32[$56>>2] = $55; + HEAP32[$0>>2] = 0; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); +} +function _pagerOpenWalIfPresent($pPager) { + $pPager = $pPager|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $isWal = 0, $nPage = 0, $rc = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $rc = sp + 4|0; + $isWal = sp + 8|0; + $nPage = sp + 12|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 12|0); + $4 = HEAP8[$3>>0]|0; + $5 = ($4<<24>>24)!=(0); + do { + if (!($5)) { + $6 = HEAP32[$1>>2]|0; + $7 = (_pagerPagecount($6,$nPage)|0); + HEAP32[$rc>>2] = $7; + $8 = HEAP32[$rc>>2]|0; + $9 = ($8|0)!=(0); + if ($9) { + $10 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $10; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); + } + $11 = HEAP32[$nPage>>2]|0; + $12 = ($11|0)==(0); + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 212|0); + $17 = HEAP32[$16>>2]|0; + if ($12) { + $18 = (_sqlite3OsDelete($14,$17,0)|0); + HEAP32[$rc>>2] = $18; + $19 = HEAP32[$rc>>2]|0; + $20 = ($19|0)==(5898); + $$ = $20 ? 0 : $18; + HEAP32[$rc>>2] = $$; + HEAP32[$isWal>>2] = 0; + } else { + $21 = (_sqlite3OsAccess($14,$17,0,$isWal)|0); + HEAP32[$rc>>2] = $21; + } + $22 = HEAP32[$rc>>2]|0; + $23 = ($22|0)==(0); + if ($23) { + $24 = HEAP32[$isWal>>2]|0; + $25 = ($24|0)!=(0); + $26 = HEAP32[$1>>2]|0; + if ($25) { + $27 = (_sqlite3PagerOpenWal($26,0)|0); + HEAP32[$rc>>2] = $27; + break; + } + $28 = (($26) + 5|0); + $29 = HEAP8[$28>>0]|0; + $30 = $29&255; + $31 = ($30|0)==(5); + if ($31) { + $32 = HEAP32[$1>>2]|0; + $33 = (($32) + 5|0); + HEAP8[$33>>0] = 0; + } + } + } + } while(0); + $34 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $34; + $35 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($35|0); +} +function _pagerBeginReadTransaction($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $changed = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $rc = sp; + $changed = sp + 4|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$changed>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 208|0); + $3 = HEAP32[$2>>2]|0; + _sqlite3WalEndReadTransaction($3); + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 208|0); + $6 = HEAP32[$5>>2]|0; + $7 = (_sqlite3WalBeginReadTransaction($6,$changed)|0); + HEAP32[$rc>>2] = $7; + $8 = HEAP32[$rc>>2]|0; + $9 = ($8|0)!=(0); + if (!($9)) { + $10 = HEAP32[$changed>>2]|0; + $11 = ($10|0)!=(0); + if (!($11)) { + $13 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($13|0); + } + } + $12 = HEAP32[$0>>2]|0; + _pager_reset($12); + $13 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($13|0); +} +function _sqlite3WalBeginReadTransaction($pWal,$pChanged) { + $pWal = $pWal|0; + $pChanged = $pChanged|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $cnt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $rc = sp + 4|0; + $cnt = sp + 8|0; + HEAP32[$0>>2] = $pWal; + HEAP32[$1>>2] = $pChanged; + HEAP32[$cnt>>2] = 0; + while(1) { + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$cnt>>2]|0; + $5 = (($4) + 1)|0; + HEAP32[$cnt>>2] = $5; + $6 = (_walTryBeginRead($2,$3,0,$5)|0); + HEAP32[$rc>>2] = $6; + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)==(-1); + if (!($8)) { + break; + } + } + $9 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($9|0); +} +function _sqlite3PagerOpenWal($pPager,$pbOpen) { + $pPager = $pPager|0; + $pbOpen = $pbOpen|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$2>>2] = $pbOpen; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP8[$4>>0]|0; + $6 = ($5<<24>>24)!=(0); + do { + if ($6) { + label = 7; + } else { + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 208|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + label = 7; + } else { + $11 = HEAP32[$1>>2]|0; + $12 = (_sqlite3PagerWalSupported($11)|0); + $13 = ($12|0)!=(0); + if ($13) { + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 64|0); + $16 = HEAP32[$15>>2]|0; + (_sqlite3OsClose($16)|0); + $17 = HEAP32[$1>>2]|0; + $18 = (_pagerOpenWal($17)|0); + HEAP32[$rc>>2] = $18; + $19 = HEAP32[$rc>>2]|0; + $20 = ($19|0)==(0); + if (!($20)) { + break; + } + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 5|0); + HEAP8[$22>>0] = 5; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 16|0); + HEAP8[$24>>0] = 0; + break; + } else { + HEAP32[$0>>2] = 14; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); + } + } + } + } while(0); + if ((label|0) == 7) { + $25 = HEAP32[$2>>2]|0; + HEAP32[$25>>2] = 1; + } + $26 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $26; + $27 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($27|0); +} +function _pagerOpenWal($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $rc = sp; + HEAP32[$0>>2] = $pPager; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP8[$2>>0]|0; + $4 = ($3<<24>>24)!=(0); + if ($4) { + $5 = HEAP32[$0>>2]|0; + $6 = (_pagerExclusiveLock($5)|0); + HEAP32[$rc>>2] = $6; + } + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)==(0); + if (!($8)) { + $32 = HEAP32[$0>>2]|0; + _pagerFixMaplimit($32); + $33 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($33|0); + } + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 60|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 212|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 4|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = HEAP32[$0>>2]|0; + $22 = (($21) + 160|0); + $23 = $22; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = (($23) + 4)|0; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$0>>2]|0; + $30 = (($29) + 208|0); + $31 = (_sqlite3WalOpen($10,$13,$16,$20,$25,$28,$30)|0); + HEAP32[$rc>>2] = $31; + $32 = HEAP32[$0>>2]|0; + _pagerFixMaplimit($32); + $33 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($33|0); +} +function _pagerExclusiveLock($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $rc = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (_pagerLockDb($1,4)|0); + HEAP32[$rc>>2] = $2; + $3 = HEAP32[$rc>>2]|0; + $4 = ($3|0)!=(0); + if (!($4)) { + $6 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($6|0); + } + $5 = HEAP32[$0>>2]|0; + (_pagerUnlockDb($5,1)|0); + $6 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($6|0); +} +function _sqlite3WalOpen($pVfs,$pDbFd,$zWalName,$bNoShm,$0,$1,$ppWal) { + $pVfs = $pVfs|0; + $pDbFd = $pDbFd|0; + $zWalName = $zWalName|0; + $bNoShm = $bNoShm|0; + $0 = $0|0; + $1 = $1|0; + $ppWal = $ppWal|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $flags = 0, $iDC = 0, $pRet = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $2 = sp + 44|0; + $3 = sp + 40|0; + $4 = sp + 36|0; + $5 = sp + 32|0; + $6 = sp + 28|0; + $7 = sp; + $8 = sp + 16|0; + $rc = sp + 12|0; + $pRet = sp + 8|0; + $flags = sp + 20|0; + $iDC = sp + 24|0; + HEAP32[$3>>2] = $pVfs; + HEAP32[$4>>2] = $pDbFd; + HEAP32[$5>>2] = $zWalName; + HEAP32[$6>>2] = $bNoShm; + $9 = $7; + $10 = $9; + HEAP32[$10>>2] = $0; + $11 = (($9) + 4)|0; + $12 = $11; + HEAP32[$12>>2] = $1; + HEAP32[$8>>2] = $ppWal; + $13 = HEAP32[$8>>2]|0; + HEAP32[$13>>2] = 0; + $14 = HEAP32[$3>>2]|0; + $15 = (($14) + 4|0); + $16 = HEAP32[$15>>2]|0; + $17 = (112 + ($16))|0; + $18 = (_sqlite3MallocZero($17)|0); + HEAP32[$pRet>>2] = $18; + $19 = HEAP32[$pRet>>2]|0; + $20 = ($19|0)!=(0|0); + if (!($20)) { + HEAP32[$2>>2] = 7; + $93 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($93|0); + } + $21 = HEAP32[$3>>2]|0; + $22 = HEAP32[$pRet>>2]|0; + HEAP32[$22>>2] = $21; + $23 = HEAP32[$pRet>>2]|0; + $24 = (($23) + 112|0); + $25 = HEAP32[$pRet>>2]|0; + $26 = (($25) + 8|0); + HEAP32[$26>>2] = $24; + $27 = HEAP32[$4>>2]|0; + $28 = HEAP32[$pRet>>2]|0; + $29 = (($28) + 4|0); + HEAP32[$29>>2] = $27; + $30 = HEAP32[$pRet>>2]|0; + $31 = (($30) + 40|0); + HEAP16[$31>>1] = -1; + $32 = $7; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = (($32) + 4)|0; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$pRet>>2]|0; + $39 = (($38) + 16|0); + $40 = $39; + $41 = $40; + HEAP32[$41>>2] = $34; + $42 = (($40) + 4)|0; + $43 = $42; + HEAP32[$43>>2] = $37; + $44 = HEAP32[$5>>2]|0; + $45 = HEAP32[$pRet>>2]|0; + $46 = (($45) + 100|0); + HEAP32[$46>>2] = $44; + $47 = HEAP32[$pRet>>2]|0; + $48 = (($47) + 48|0); + HEAP8[$48>>0] = 1; + $49 = HEAP32[$pRet>>2]|0; + $50 = (($49) + 49|0); + HEAP8[$50>>0] = 1; + $51 = HEAP32[$6>>2]|0; + $52 = ($51|0)!=(0); + $53 = $52 ? 2 : 0; + $54 = $53&255; + $55 = HEAP32[$pRet>>2]|0; + $56 = (($55) + 43|0); + HEAP8[$56>>0] = $54; + HEAP32[$flags>>2] = 524294; + $57 = HEAP32[$3>>2]|0; + $58 = HEAP32[$5>>2]|0; + $59 = HEAP32[$pRet>>2]|0; + $60 = (($59) + 8|0); + $61 = HEAP32[$60>>2]|0; + $62 = HEAP32[$flags>>2]|0; + $63 = (_sqlite3OsOpen($57,$58,$61,$62,$flags)|0); + HEAP32[$rc>>2] = $63; + $64 = HEAP32[$rc>>2]|0; + $65 = ($64|0)==(0); + if ($65) { + $66 = HEAP32[$flags>>2]|0; + $67 = $66 & 1; + $68 = ($67|0)!=(0); + if ($68) { + $69 = HEAP32[$pRet>>2]|0; + $70 = (($69) + 46|0); + HEAP8[$70>>0] = 1; + } + } + $71 = HEAP32[$rc>>2]|0; + $72 = ($71|0)!=(0); + if ($72) { + $73 = HEAP32[$pRet>>2]|0; + _walIndexClose($73,0); + $74 = HEAP32[$pRet>>2]|0; + $75 = (($74) + 8|0); + $76 = HEAP32[$75>>2]|0; + (_sqlite3OsClose($76)|0); + $77 = HEAP32[$pRet>>2]|0; + _sqlite3_free($77); + } else { + $78 = HEAP32[$4>>2]|0; + $79 = (_sqlite3OsDeviceCharacteristics($78)|0); + HEAP32[$iDC>>2] = $79; + $80 = HEAP32[$iDC>>2]|0; + $81 = $80 & 1024; + $82 = ($81|0)!=(0); + if ($82) { + $83 = HEAP32[$pRet>>2]|0; + $84 = (($83) + 48|0); + HEAP8[$84>>0] = 0; + } + $85 = HEAP32[$iDC>>2]|0; + $86 = $85 & 4096; + $87 = ($86|0)!=(0); + if ($87) { + $88 = HEAP32[$pRet>>2]|0; + $89 = (($88) + 49|0); + HEAP8[$89>>0] = 0; + } + $90 = HEAP32[$pRet>>2]|0; + $91 = HEAP32[$8>>2]|0; + HEAP32[$91>>2] = $90; + } + $92 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $92; + $93 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($93|0); +} +function _sqlite3WalDbsize($pWal) { + $pWal = $pWal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $pWal; + $2 = HEAP32[$1>>2]|0; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 40|0); + $6 = HEAP16[$5>>1]|0; + $7 = $6 << 16 >> 16; + $8 = ($7|0)>=(0); + if ($8) { + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 52|0); + $11 = (($10) + 20|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$0>>2] = $12; + $13 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($13|0); + } + } + HEAP32[$0>>2] = 0; + $13 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($13|0); +} +function _sqlite3OsCheckReservedLock($id,$pResOut) { + $id = $id|0; + $pResOut = $pResOut|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $id; + HEAP32[$1>>2] = $pResOut; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 36|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (FUNCTION_TABLE_iii[$5 & 127]($6,$7)|0); + STACKTOP = sp;return ($8|0); +} +function _rowSetEntrySort($pIn) { + $pIn = $pIn|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aBucket = 0, $i = 0, $pNext = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 176|0; + $0 = sp + 168|0; + $i = sp; + $pNext = sp + 4|0; + $aBucket = sp + 8|0; + HEAP32[$0>>2] = $pIn; + _memset(($aBucket|0),0,160)|0; + while(1) { + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + break; + } + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pNext>>2] = $5; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 8|0); + HEAP32[$7>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $8 = HEAP32[$i>>2]|0; + $9 = (($aBucket) + ($8<<2)|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + if (!($11)) { + break; + } + $12 = HEAP32[$i>>2]|0; + $13 = (($aBucket) + ($12<<2)|0); + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (_rowSetEntryMerge($14,$15)|0); + HEAP32[$0>>2] = $16; + $17 = HEAP32[$i>>2]|0; + $18 = (($aBucket) + ($17<<2)|0); + HEAP32[$18>>2] = 0; + $19 = HEAP32[$i>>2]|0; + $20 = (($19) + 1)|0; + HEAP32[$i>>2] = $20; + } + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$i>>2]|0; + $23 = (($aBucket) + ($22<<2)|0); + HEAP32[$23>>2] = $21; + $24 = HEAP32[$pNext>>2]|0; + HEAP32[$0>>2] = $24; + } + HEAP32[$0>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $25 = HEAP32[$i>>2]|0; + $26 = ($25>>>0)<(40); + $27 = HEAP32[$0>>2]|0; + if (!($26)) { + break; + } + $28 = HEAP32[$i>>2]|0; + $29 = (($aBucket) + ($28<<2)|0); + $30 = HEAP32[$29>>2]|0; + $31 = (_rowSetEntryMerge($27,$30)|0); + HEAP32[$0>>2] = $31; + $32 = HEAP32[$i>>2]|0; + $33 = (($32) + 1)|0; + HEAP32[$i>>2] = $33; + } + STACKTOP = sp;return ($27|0); +} +function _rowSetListToTree($pList) { + $pList = $pList|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iDepth = 0, $p = 0, $pLeft = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $iDepth = sp; + $p = sp + 4|0; + $pLeft = sp + 8|0; + HEAP32[$0>>2] = $pList; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + $2 = HEAP32[$p>>2]|0; + $3 = (($2) + 8|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$0>>2] = $4; + $5 = HEAP32[$p>>2]|0; + $6 = (($5) + 8|0); + HEAP32[$6>>2] = 0; + $7 = HEAP32[$p>>2]|0; + $8 = (($7) + 12|0); + HEAP32[$8>>2] = 0; + HEAP32[$iDepth>>2] = 1; + while(1) { + $9 = HEAP32[$0>>2]|0; + $10 = ($9|0)!=(0|0); + $11 = HEAP32[$p>>2]|0; + if (!($10)) { + break; + } + HEAP32[$pLeft>>2] = $11; + $12 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $12; + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 8|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$0>>2] = $15; + $16 = HEAP32[$pLeft>>2]|0; + $17 = HEAP32[$p>>2]|0; + $18 = (($17) + 12|0); + HEAP32[$18>>2] = $16; + $19 = HEAP32[$iDepth>>2]|0; + $20 = (_rowSetNDeepTree($0,$19)|0); + $21 = HEAP32[$p>>2]|0; + $22 = (($21) + 8|0); + HEAP32[$22>>2] = $20; + $23 = HEAP32[$iDepth>>2]|0; + $24 = (($23) + 1)|0; + HEAP32[$iDepth>>2] = $24; + } + STACKTOP = sp;return ($11|0); +} +function _rowSetTreeToList($pIn,$ppFirst,$ppLast) { + $pIn = $pIn|0; + $ppFirst = $ppFirst|0; + $ppLast = $ppLast|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + HEAP32[$0>>2] = $pIn; + HEAP32[$1>>2] = $ppFirst; + HEAP32[$2>>2] = $ppLast; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0|0); + $7 = HEAP32[$0>>2]|0; + if ($6) { + $8 = (($7) + 12|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$1>>2]|0; + _rowSetTreeToList($9,$10,$p); + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$p>>2]|0; + $13 = (($12) + 8|0); + HEAP32[$13>>2] = $11; + } else { + $14 = HEAP32[$1>>2]|0; + HEAP32[$14>>2] = $7; + } + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 8|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)!=(0|0); + $19 = HEAP32[$0>>2]|0; + if ($18) { + $20 = (($19) + 8|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 8|0); + $24 = HEAP32[$2>>2]|0; + _rowSetTreeToList($21,$23,$24); + STACKTOP = sp;return; + } else { + $25 = HEAP32[$2>>2]|0; + HEAP32[$25>>2] = $19; + STACKTOP = sp;return; + } +} +function _rowSetEntryMerge($pA,$pB) { + $pA = $pA|0; + $pB = $pB|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $8 = 0, $9 = 0, $head = 0, $pTail = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp + 16|0; + $head = sp; + $pTail = sp + 20|0; + HEAP32[$0>>2] = $pA; + HEAP32[$1>>2] = $pB; + HEAP32[$pTail>>2] = $head; + while(1) { + $2 = HEAP32[$0>>2]|0; + $3 = ($2|0)!=(0|0); + if ($3) { + $4 = HEAP32[$1>>2]|0; + $5 = ($4|0)!=(0|0); + $74 = $5; + } else { + $74 = 0; + } + $6 = HEAP32[$0>>2]|0; + if (!($74)) { + break; + } + $7 = $6; + $8 = $7; + $9 = HEAP32[$8>>2]|0; + $10 = (($7) + 4)|0; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = $13; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = ($12|0)<($19|0); + $21 = ($12|0)==($19|0); + $22 = ($9>>>0)<($16>>>0); + $23 = $21 & $22; + $24 = $20 | $23; + if ($24) { + $25 = HEAP32[$0>>2]|0; + $26 = HEAP32[$pTail>>2]|0; + $27 = (($26) + 8|0); + HEAP32[$27>>2] = $25; + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 8|0); + $30 = HEAP32[$29>>2]|0; + HEAP32[$0>>2] = $30; + $31 = HEAP32[$pTail>>2]|0; + $32 = (($31) + 8|0); + $33 = HEAP32[$32>>2]|0; + HEAP32[$pTail>>2] = $33; + continue; + } + $34 = HEAP32[$1>>2]|0; + $35 = $34; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = (($35) + 4)|0; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = HEAP32[$0>>2]|0; + $42 = $41; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = ($40|0)<($47|0); + $49 = ($40|0)==($47|0); + $50 = ($37>>>0)<($44>>>0); + $51 = $49 & $50; + $52 = $48 | $51; + if ($52) { + $53 = HEAP32[$1>>2]|0; + $54 = HEAP32[$pTail>>2]|0; + $55 = (($54) + 8|0); + HEAP32[$55>>2] = $53; + $56 = HEAP32[$1>>2]|0; + $57 = (($56) + 8|0); + $58 = HEAP32[$57>>2]|0; + HEAP32[$1>>2] = $58; + $59 = HEAP32[$pTail>>2]|0; + $60 = (($59) + 8|0); + $61 = HEAP32[$60>>2]|0; + HEAP32[$pTail>>2] = $61; + continue; + } else { + $62 = HEAP32[$0>>2]|0; + $63 = (($62) + 8|0); + $64 = HEAP32[$63>>2]|0; + HEAP32[$0>>2] = $64; + continue; + } + } + $65 = ($6|0)!=(0|0); + if ($65) { + $66 = HEAP32[$0>>2]|0; + $67 = HEAP32[$pTail>>2]|0; + $68 = (($67) + 8|0); + HEAP32[$68>>2] = $66; + $72 = (($head) + 8|0); + $73 = HEAP32[$72>>2]|0; + STACKTOP = sp;return ($73|0); + } else { + $69 = HEAP32[$1>>2]|0; + $70 = HEAP32[$pTail>>2]|0; + $71 = (($70) + 8|0); + HEAP32[$71>>2] = $69; + $72 = (($head) + 8|0); + $73 = HEAP32[$72>>2]|0; + STACKTOP = sp;return ($73|0); + } + return 0|0; +} +function _rowSetEntryAlloc($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pNew = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pNew = sp + 4|0; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 24|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4&65535; + $6 = ($5|0)==(0); + do { + if ($6) { + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 4|0); + $9 = HEAP32[$8>>2]|0; + $10 = (_sqlite3DbMallocRaw($9,1016)|0); + HEAP32[$pNew>>2] = $10; + $11 = HEAP32[$pNew>>2]|0; + $12 = ($11|0)==(0|0); + if (!($12)) { + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$pNew>>2]|0; + HEAP32[$15>>2] = $14; + $16 = HEAP32[$pNew>>2]|0; + $17 = HEAP32[$1>>2]|0; + HEAP32[$17>>2] = $16; + $18 = HEAP32[$pNew>>2]|0; + $19 = (($18) + 8|0); + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 16|0); + HEAP32[$21>>2] = $19; + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 24|0); + HEAP16[$23>>1] = 63; + break; + } + HEAP32[$0>>2] = 0; + $32 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($32|0); + } + } while(0); + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 24|0); + $26 = HEAP16[$25>>1]|0; + $27 = (($26) + -1)<<16>>16; + HEAP16[$25>>1] = $27; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 16|0); + $30 = HEAP32[$29>>2]|0; + $31 = (($30) + 16|0); + HEAP32[$29>>2] = $31; + HEAP32[$0>>2] = $30; + $32 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($32|0); +} +function _rowSetNDeepTree($ppList,$iDepth) { + $ppList = $ppList|0; + $iDepth = $iDepth|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $p = 0, $pLeft = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + $pLeft = sp + 12|0; + HEAP32[$1>>2] = $ppList; + HEAP32[$2>>2] = $iDepth; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)==(0|0); + if ($5) { + HEAP32[$0>>2] = 0; + $40 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($40|0); + } + $6 = HEAP32[$2>>2]|0; + $7 = ($6|0)==(1); + $8 = HEAP32[$1>>2]|0; + if ($7) { + $9 = HEAP32[$8>>2]|0; + HEAP32[$p>>2] = $9; + $10 = HEAP32[$p>>2]|0; + $11 = (($10) + 8|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$1>>2]|0; + HEAP32[$13>>2] = $12; + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 8|0); + HEAP32[$15>>2] = 0; + $16 = HEAP32[$p>>2]|0; + $17 = (($16) + 12|0); + HEAP32[$17>>2] = 0; + $18 = HEAP32[$p>>2]|0; + HEAP32[$0>>2] = $18; + $40 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($40|0); + } + $19 = HEAP32[$2>>2]|0; + $20 = (($19) - 1)|0; + $21 = (_rowSetNDeepTree($8,$20)|0); + HEAP32[$pLeft>>2] = $21; + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$22>>2]|0; + HEAP32[$p>>2] = $23; + $24 = HEAP32[$p>>2]|0; + $25 = ($24|0)==(0|0); + $26 = HEAP32[$pLeft>>2]|0; + if ($25) { + HEAP32[$0>>2] = $26; + $40 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($40|0); + } else { + $27 = HEAP32[$p>>2]|0; + $28 = (($27) + 12|0); + HEAP32[$28>>2] = $26; + $29 = HEAP32[$p>>2]|0; + $30 = (($29) + 8|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$1>>2]|0; + HEAP32[$32>>2] = $31; + $33 = HEAP32[$1>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = (($34) - 1)|0; + $36 = (_rowSetNDeepTree($33,$35)|0); + $37 = HEAP32[$p>>2]|0; + $38 = (($37) + 8|0); + HEAP32[$38>>2] = $36; + $39 = HEAP32[$p>>2]|0; + HEAP32[$0>>2] = $39; + $40 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($40|0); + } + return 0|0; +} +function _rowSetToList($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 26|0); + $3 = HEAP16[$2>>1]|0; + $4 = $3&65535; + $5 = $4 & 1; + $6 = ($5|0)==(0); + if ($6) { + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 8|0); + $9 = HEAP32[$8>>2]|0; + $10 = (_rowSetEntrySort($9)|0); + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 8|0); + HEAP32[$12>>2] = $10; + } + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 26|0); + $15 = HEAP16[$14>>1]|0; + $16 = $15&65535; + $17 = $16 | 2; + $18 = $17&65535; + HEAP16[$14>>1] = $18; + STACKTOP = sp;return; +} +function _sqlite3RowSetInit($db,$pSpace,$N) { + $db = $db|0; + $pSpace = $pSpace|0; + $N = $N|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pSpace; + HEAP32[$2>>2] = $N; + $3 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $3; + $4 = HEAP32[$p>>2]|0; + HEAP32[$4>>2] = 0; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$p>>2]|0; + $7 = (($6) + 4|0); + HEAP32[$7>>2] = $5; + $8 = HEAP32[$p>>2]|0; + $9 = (($8) + 8|0); + HEAP32[$9>>2] = 0; + $10 = HEAP32[$p>>2]|0; + $11 = (($10) + 12|0); + HEAP32[$11>>2] = 0; + $12 = HEAP32[$p>>2]|0; + $13 = (($12) + 20|0); + HEAP32[$13>>2] = 0; + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 32|0); + $16 = HEAP32[$p>>2]|0; + $17 = (($16) + 16|0); + HEAP32[$17>>2] = $15; + $18 = HEAP32[$2>>2]|0; + $19 = (($18) - 32)|0; + $20 = (($19>>>0) / 16)&-1; + $21 = $20&65535; + $22 = HEAP32[$p>>2]|0; + $23 = (($22) + 24|0); + HEAP16[$23>>1] = $21; + $24 = HEAP32[$p>>2]|0; + $25 = (($24) + 26|0); + HEAP16[$25>>1] = 1; + $26 = HEAP32[$p>>2]|0; + $27 = (($26) + 28|0); + HEAP32[$27>>2] = 0; + $28 = HEAP32[$p>>2]|0; + STACKTOP = sp;return ($28|0); +} +function _sqlite3PagerRefcount($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 204|0); + $3 = HEAP32[$2>>2]|0; + $4 = (_sqlite3PcacheRefCount($3)|0); + STACKTOP = sp;return ($4|0); +} +function _setPageReferenced($pCheck,$iPg) { + $pCheck = $pCheck|0; + $iPg = $iPg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pCheck; + HEAP32[$1>>2] = $iPg; + $2 = HEAP32[$1>>2]|0; + $3 = $2 & 7; + $4 = 1 << $3; + $5 = HEAP32[$1>>2]|0; + $6 = (($5>>>0) / 8)&-1; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 8|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + ($6)|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = $12 | $4; + $14 = $13&255; + HEAP8[$10>>0] = $14; + STACKTOP = sp;return; +} +function _checkList($pCheck,$isFreeList,$iPage,$N,$zContext) { + $pCheck = $pCheck|0; + $isFreeList = $isFreeList|0; + $iPage = $iPage|0; + $N = $N|0; + $zContext = $zContext|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $expected = 0, $i = 0, $iFirst = 0, $iFreePage = 0, $n = 0, $pOvflData = 0, $pOvflPage = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer6 = sp; + $0 = sp + 52|0; + $1 = sp + 48|0; + $2 = sp + 44|0; + $3 = sp + 40|0; + $4 = sp + 36|0; + $i = sp + 56|0; + $expected = sp + 24|0; + $iFirst = sp + 20|0; + $pOvflPage = sp + 16|0; + $pOvflData = sp + 12|0; + $n = sp + 28|0; + $iFreePage = sp + 32|0; + HEAP32[$0>>2] = $pCheck; + HEAP32[$1>>2] = $isFreeList; + HEAP32[$2>>2] = $iPage; + HEAP32[$3>>2] = $N; + HEAP32[$4>>2] = $zContext; + $5 = HEAP32[$3>>2]|0; + HEAP32[$expected>>2] = $5; + $6 = HEAP32[$2>>2]|0; + HEAP32[$iFirst>>2] = $6; + while(1) { + $7 = HEAP32[$3>>2]|0; + $8 = (($7) + -1)|0; + HEAP32[$3>>2] = $8; + $9 = ($7|0)>(0); + if (!($9)) { + label = 24; + break; + } + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 16|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)!=(0); + if (!($13)) { + label = 24; + break; + } + $14 = HEAP32[$2>>2]|0; + $15 = ($14|0)<(1); + $16 = HEAP32[$0>>2]|0; + if ($15) { + label = 5; + break; + } + $22 = HEAP32[$2>>2]|0; + $23 = HEAP32[$4>>2]|0; + $24 = (_checkRef($16,$22,$23)|0); + $25 = ($24|0)!=(0); + if ($25) { + label = 24; + break; + } + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 4|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$2>>2]|0; + $30 = (_sqlite3PagerAcquire($28,$29,$pOvflPage,0)|0); + $31 = ($30|0)!=(0); + if ($31) { + label = 8; + break; + } + $35 = HEAP32[$pOvflPage>>2]|0; + $36 = (_sqlite3PagerGetData($35)|0); + HEAP32[$pOvflData>>2] = $36; + $37 = HEAP32[$1>>2]|0; + $38 = ($37|0)!=(0); + do { + if ($38) { + $39 = HEAP32[$pOvflData>>2]|0; + $40 = (($39) + 4|0); + $41 = (_sqlite3Get4byte($40)|0); + HEAP32[$n>>2] = $41; + $42 = HEAP32[$0>>2]|0; + $43 = HEAP32[$42>>2]|0; + $44 = (($43) + 17|0); + $45 = HEAP8[$44>>0]|0; + $46 = ($45<<24>>24)!=(0); + if ($46) { + $47 = HEAP32[$0>>2]|0; + $48 = HEAP32[$2>>2]|0; + $49 = HEAP32[$4>>2]|0; + _checkPtrmap($47,$48,2,0,$49); + } + $50 = HEAP32[$n>>2]|0; + $51 = HEAP32[$0>>2]|0; + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + 36|0); + $54 = HEAP32[$53>>2]|0; + $55 = (($54|0) / 4)&-1; + $56 = (($55) - 2)|0; + $57 = ($50|0)>($56|0); + if ($57) { + $58 = HEAP32[$0>>2]|0; + $59 = HEAP32[$4>>2]|0; + $60 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer6>>2] = $60; + _checkAppendMsg($58,$59,40848,$vararg_buffer6); + $61 = HEAP32[$3>>2]|0; + $62 = (($61) + -1)|0; + HEAP32[$3>>2] = $62; + break; + } + HEAP32[$i>>2] = 0; + while(1) { + $63 = HEAP32[$i>>2]|0; + $64 = HEAP32[$n>>2]|0; + $65 = ($63|0)<($64|0); + if (!($65)) { + break; + } + $66 = HEAP32[$i>>2]|0; + $67 = $66<<2; + $68 = (8 + ($67))|0; + $69 = HEAP32[$pOvflData>>2]|0; + $70 = (($69) + ($68)|0); + $71 = (_sqlite3Get4byte($70)|0); + HEAP32[$iFreePage>>2] = $71; + $72 = HEAP32[$0>>2]|0; + $73 = HEAP32[$72>>2]|0; + $74 = (($73) + 17|0); + $75 = HEAP8[$74>>0]|0; + $76 = ($75<<24>>24)!=(0); + if ($76) { + $77 = HEAP32[$0>>2]|0; + $78 = HEAP32[$iFreePage>>2]|0; + $79 = HEAP32[$4>>2]|0; + _checkPtrmap($77,$78,2,0,$79); + } + $80 = HEAP32[$0>>2]|0; + $81 = HEAP32[$iFreePage>>2]|0; + $82 = HEAP32[$4>>2]|0; + (_checkRef($80,$81,$82)|0); + $83 = HEAP32[$i>>2]|0; + $84 = (($83) + 1)|0; + HEAP32[$i>>2] = $84; + } + $85 = HEAP32[$n>>2]|0; + $86 = HEAP32[$3>>2]|0; + $87 = (($86) - ($85))|0; + HEAP32[$3>>2] = $87; + } else { + $88 = HEAP32[$0>>2]|0; + $89 = HEAP32[$88>>2]|0; + $90 = (($89) + 17|0); + $91 = HEAP8[$90>>0]|0; + $92 = $91&255; + $93 = ($92|0)!=(0); + if ($93) { + $94 = HEAP32[$3>>2]|0; + $95 = ($94|0)>(0); + if ($95) { + $96 = HEAP32[$pOvflData>>2]|0; + $97 = (_sqlite3Get4byte($96)|0); + HEAP32[$i>>2] = $97; + $98 = HEAP32[$0>>2]|0; + $99 = HEAP32[$i>>2]|0; + $100 = HEAP32[$2>>2]|0; + $101 = HEAP32[$4>>2]|0; + _checkPtrmap($98,$99,4,$100,$101); + } + } + } + } while(0); + $102 = HEAP32[$pOvflData>>2]|0; + $103 = (_sqlite3Get4byte($102)|0); + HEAP32[$2>>2] = $103; + $104 = HEAP32[$pOvflPage>>2]|0; + _sqlite3PagerUnref($104); + } + if ((label|0) == 5) { + $17 = HEAP32[$4>>2]|0; + $18 = HEAP32[$3>>2]|0; + $19 = (($18) + 1)|0; + $20 = HEAP32[$expected>>2]|0; + $21 = HEAP32[$iFirst>>2]|0; + HEAP32[$vararg_buffer6>>2] = $19; + $vararg_ptr1 = (($vararg_buffer6) + 4|0); + HEAP32[$vararg_ptr1>>2] = $20; + $vararg_ptr2 = (($vararg_buffer6) + 8|0); + HEAP32[$vararg_ptr2>>2] = $21; + _checkAppendMsg($16,$17,40760,$vararg_buffer6); + STACKTOP = sp;return; + } + else if ((label|0) == 8) { + $32 = HEAP32[$0>>2]|0; + $33 = HEAP32[$4>>2]|0; + $34 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer6>>2] = $34; + _checkAppendMsg($32,$33,40824,$vararg_buffer6); + STACKTOP = sp;return; + } + else if ((label|0) == 24) { + STACKTOP = sp;return; + } +} +function _checkPtrmap($pCheck,$iChild,$eType,$iParent,$zContext) { + $pCheck = $pCheck|0; + $iChild = $iChild|0; + $eType = $eType|0; + $iParent = $iParent|0; + $zContext = $zContext|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ePtrmapType = 0, $iPtrmapParent = 0, $or$cond = 0; + var $rc = 0, $vararg_buffer2 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $vararg_ptr8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer2 = sp; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 45|0; + $3 = sp + 40|0; + $4 = sp + 20|0; + $rc = sp + 24|0; + $ePtrmapType = sp + 44|0; + $iPtrmapParent = sp + 28|0; + HEAP32[$0>>2] = $pCheck; + HEAP32[$1>>2] = $iChild; + HEAP8[$2>>0] = $eType; + HEAP32[$3>>2] = $iParent; + HEAP32[$4>>2] = $zContext; + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (_ptrmapGet($6,$7,$ePtrmapType,$iPtrmapParent)|0); + HEAP32[$rc>>2] = $8; + $9 = HEAP32[$rc>>2]|0; + $10 = ($9|0)!=(0); + if ($10) { + $11 = HEAP32[$rc>>2]|0; + $12 = ($11|0)==(7); + $13 = HEAP32[$rc>>2]|0; + $14 = ($13|0)==(3082); + $or$cond = $12 | $14; + if ($or$cond) { + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 24|0); + HEAP32[$16>>2] = 1; + } + $17 = HEAP32[$0>>2]|0; + $18 = HEAP32[$4>>2]|0; + $19 = HEAP32[$1>>2]|0; + HEAP32[$vararg_buffer2>>2] = $19; + _checkAppendMsg($17,$18,40672,$vararg_buffer2); + STACKTOP = sp;return; + } + $20 = HEAP8[$ePtrmapType>>0]|0; + $21 = $20&255; + $22 = HEAP8[$2>>0]|0; + $23 = $22&255; + $24 = ($21|0)!=($23|0); + if (!($24)) { + $25 = HEAP32[$iPtrmapParent>>2]|0; + $26 = HEAP32[$3>>2]|0; + $27 = ($25|0)!=($26|0); + if (!($27)) { + STACKTOP = sp;return; + } + } + $28 = HEAP32[$0>>2]|0; + $29 = HEAP32[$4>>2]|0; + $30 = HEAP32[$1>>2]|0; + $31 = HEAP8[$2>>0]|0; + $32 = $31&255; + $33 = HEAP32[$3>>2]|0; + $34 = HEAP8[$ePtrmapType>>0]|0; + $35 = $34&255; + $36 = HEAP32[$iPtrmapParent>>2]|0; + HEAP32[$vararg_buffer2>>2] = $30; + $vararg_ptr5 = (($vararg_buffer2) + 4|0); + HEAP32[$vararg_ptr5>>2] = $32; + $vararg_ptr6 = (($vararg_buffer2) + 8|0); + HEAP32[$vararg_ptr6>>2] = $33; + $vararg_ptr7 = (($vararg_buffer2) + 12|0); + HEAP32[$vararg_ptr7>>2] = $35; + $vararg_ptr8 = (($vararg_buffer2) + 16|0); + HEAP32[$vararg_ptr8>>2] = $36; + _checkAppendMsg($28,$29,40704,$vararg_buffer2); + STACKTOP = sp;return; +} +function _checkTreePage($pCheck,$iPage,$zParentContext,$pnParentMinKey,$pnParentMaxKey) { + $pCheck = $pCheck|0; + $iPage = $iPage|0; + $zParentContext = $zParentContext|0; + $pnParentMinKey = $pnParentMinKey|0; + $pnParentMaxKey = $pnParentMaxKey|0; + var $$nMaxKey = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; + var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; + var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; + var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; + var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; + var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; + var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; + var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; + var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; + var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; + var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0; + var $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0; + var $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0; + var $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0; + var $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0; + var $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0; + var $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0; + var $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0; + var $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0; + var $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0; + var $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0; + var $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0; + var $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0; + var $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0; + var $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0; + var $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0; + var $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0; + var $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0; + var $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0; + var $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0; + var $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0; + var $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cellStart = 0, $cnt = 0, $contentOffset = 0, $d2 = 0, $data = 0, $depth = 0, $hdr = 0, $hit = 0, $i = 0, $info = 0, $j = 0, $j2 = 0, $nCell = 0, $nMaxKey = 0, $nMaxKey$ = 0; + var $nMinKey = 0, $nPage = 0, $pBt = 0, $pCell = 0, $pPage = 0, $pc = 0, $pgno = 0, $pgnoOvfl = 0, $rc = 0, $size = 0, $size1 = 0, $sz = 0, $usableSize = 0, $vararg_buffer44 = 0, $vararg_ptr10 = 0, $vararg_ptr14 = 0, $vararg_ptr23 = 0, $vararg_ptr27 = 0, $vararg_ptr31 = 0, $vararg_ptr35 = 0; + var $vararg_ptr39 = 0, $vararg_ptr43 = 0, $vararg_ptr47 = 0, $vararg_ptr48 = 0, $zContext = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 288|0; + $vararg_buffer44 = sp + 48|0; + $0 = sp + 128|0; + $1 = sp + 132|0; + $2 = sp + 136|0; + $3 = sp + 140|0; + $4 = sp + 144|0; + $5 = sp + 148|0; + $pPage = sp + 156|0; + $i = sp + 160|0; + $rc = sp + 164|0; + $depth = sp + 168|0; + $d2 = sp + 172|0; + $pgno = sp + 176|0; + $cnt = sp + 180|0; + $hdr = sp + 124|0; + $cellStart = sp + 120|0; + $nCell = sp + 116|0; + $data = sp + 152|0; + $pBt = sp + 80|0; + $usableSize = sp + 64|0; + $zContext = sp + 184|0; + $hit = sp + 68|0; + $nMinKey = sp; + $nMaxKey = sp + 8|0; + $pCell = sp + 84|0; + $sz = sp + 88|0; + $info = sp + 16|0; + $nPage = sp + 96|0; + $pgnoOvfl = sp + 100|0; + $contentOffset = sp + 104|0; + $pc = sp + 108|0; + $size = sp + 92|0; + $j = sp + 76|0; + $size1 = sp + 72|0; + $j2 = sp + 112|0; + HEAP32[$1>>2] = $pCheck; + HEAP32[$2>>2] = $iPage; + HEAP32[$3>>2] = $zParentContext; + HEAP32[$4>>2] = $pnParentMinKey; + HEAP32[$5>>2] = $pnParentMaxKey; + HEAP32[$hit>>2] = 0; + $6 = $nMinKey; + $7 = $6; + HEAP32[$7>>2] = 0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = 0; + $10 = $nMaxKey; + $11 = $10; + HEAP32[$11>>2] = 0; + $12 = (($10) + 4)|0; + $13 = $12; + HEAP32[$13>>2] = 0; + $14 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer44>>2] = $14; + (_sqlite3_snprintf(100,$zContext,39976,$vararg_buffer44)|0); + $15 = HEAP32[$1>>2]|0; + $16 = HEAP32[$15>>2]|0; + HEAP32[$pBt>>2] = $16; + $17 = HEAP32[$pBt>>2]|0; + $18 = (($17) + 36|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$usableSize>>2] = $19; + $20 = HEAP32[$2>>2]|0; + $21 = ($20|0)==(0); + if ($21) { + HEAP32[$0>>2] = 0; + $663 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($663|0); + } + $22 = HEAP32[$1>>2]|0; + $23 = HEAP32[$2>>2]|0; + $24 = HEAP32[$3>>2]|0; + $25 = (_checkRef($22,$23,$24)|0); + $26 = ($25|0)!=(0); + if ($26) { + HEAP32[$0>>2] = 0; + $663 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($663|0); + } + $27 = HEAP32[$pBt>>2]|0; + $28 = HEAP32[$2>>2]|0; + $29 = (_btreeGetPage($27,$28,$pPage,0)|0); + HEAP32[$rc>>2] = $29; + $30 = ($29|0)!=(0); + if ($30) { + $31 = HEAP32[$1>>2]|0; + $32 = HEAP32[$rc>>2]|0; + HEAP32[$vararg_buffer44>>2] = $32; + _checkAppendMsg($31,$zContext,39992,$vararg_buffer44); + HEAP32[$0>>2] = 0; + $663 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($663|0); + } + $33 = HEAP32[$pPage>>2]|0; + HEAP8[$33>>0] = 0; + $34 = HEAP32[$pPage>>2]|0; + $35 = (_btreeInitPage($34)|0); + HEAP32[$rc>>2] = $35; + $36 = ($35|0)!=(0); + if ($36) { + $37 = HEAP32[$1>>2]|0; + $38 = HEAP32[$rc>>2]|0; + HEAP32[$vararg_buffer44>>2] = $38; + _checkAppendMsg($37,$zContext,40032,$vararg_buffer44); + $39 = HEAP32[$pPage>>2]|0; + _releasePage($39); + HEAP32[$0>>2] = 0; + $663 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($663|0); + } + HEAP32[$depth>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $40 = HEAP32[$i>>2]|0; + $41 = HEAP32[$pPage>>2]|0; + $42 = (($41) + 16|0); + $43 = HEAP16[$42>>1]|0; + $44 = $43&65535; + $45 = ($40|0)<($44|0); + if (!($45)) { + break; + } + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 16|0); + $48 = HEAP32[$47>>2]|0; + $49 = ($48|0)!=(0); + if (!($49)) { + break; + } + $50 = HEAP32[$2>>2]|0; + $51 = HEAP32[$i>>2]|0; + HEAP32[$vararg_buffer44>>2] = $50; + $vararg_ptr10 = (($vararg_buffer44) + 4|0); + HEAP32[$vararg_ptr10>>2] = $51; + (_sqlite3_snprintf(100,$zContext,40072,$vararg_buffer44)|0); + $52 = HEAP32[$pPage>>2]|0; + $53 = (($52) + 56|0); + $54 = HEAP32[$53>>2]|0; + $55 = HEAP32[$pPage>>2]|0; + $56 = (($55) + 18|0); + $57 = HEAP16[$56>>1]|0; + $58 = $57&65535; + $59 = HEAP32[$i>>2]|0; + $60 = $59<<1; + $61 = HEAP32[$pPage>>2]|0; + $62 = (($61) + 64|0); + $63 = HEAP32[$62>>2]|0; + $64 = (($63) + ($60)|0); + $65 = HEAP8[$64>>0]|0; + $66 = $65&255; + $67 = $66 << 8; + $68 = HEAP32[$i>>2]|0; + $69 = $68<<1; + $70 = HEAP32[$pPage>>2]|0; + $71 = (($70) + 64|0); + $72 = HEAP32[$71>>2]|0; + $73 = (($72) + ($69)|0); + $74 = (($73) + 1|0); + $75 = HEAP8[$74>>0]|0; + $76 = $75&255; + $77 = $67 | $76; + $78 = $58 & $77; + $79 = (($54) + ($78)|0); + HEAP32[$pCell>>2] = $79; + $80 = HEAP32[$pPage>>2]|0; + $81 = HEAP32[$pCell>>2]|0; + _btreeParseCellPtr($80,$81,$info); + $82 = (($info) + 12|0); + $83 = HEAP32[$82>>2]|0; + HEAP32[$sz>>2] = $83; + $84 = HEAP32[$pPage>>2]|0; + $85 = (($84) + 2|0); + $86 = HEAP8[$85>>0]|0; + $87 = ($86<<24>>24)!=(0); + do { + if ($87) { + $96 = HEAP32[$i>>2]|0; + $97 = ($96|0)==(0); + $98 = $info; + $99 = $98; + $100 = HEAP32[$99>>2]|0; + $101 = (($98) + 4)|0; + $102 = $101; + $103 = HEAP32[$102>>2]|0; + if ($97) { + $104 = $nMaxKey; + $105 = $104; + HEAP32[$105>>2] = $100; + $106 = (($104) + 4)|0; + $107 = $106; + HEAP32[$107>>2] = $103; + $108 = $nMinKey; + $109 = $108; + HEAP32[$109>>2] = $100; + $110 = (($108) + 4)|0; + $111 = $110; + HEAP32[$111>>2] = $103; + break; + } + $112 = $nMaxKey; + $113 = $112; + $114 = HEAP32[$113>>2]|0; + $115 = (($112) + 4)|0; + $116 = $115; + $117 = HEAP32[$116>>2]|0; + $118 = ($103|0)<($117|0); + $119 = ($103|0)==($117|0); + $120 = ($100>>>0)<=($114>>>0); + $121 = $119 & $120; + $122 = $118 | $121; + if ($122) { + $123 = HEAP32[$1>>2]|0; + $124 = $info; + $125 = $124; + $126 = HEAP32[$125>>2]|0; + $127 = (($124) + 4)|0; + $128 = $127; + $129 = HEAP32[$128>>2]|0; + $130 = $nMaxKey; + $131 = $130; + $132 = HEAP32[$131>>2]|0; + $133 = (($130) + 4)|0; + $134 = $133; + $135 = HEAP32[$134>>2]|0; + $136 = $vararg_buffer44; + $137 = $136; + HEAP32[$137>>2] = $126; + $138 = (($136) + 4)|0; + $139 = $138; + HEAP32[$139>>2] = $129; + $vararg_ptr14 = (($vararg_buffer44) + 8|0); + $140 = $vararg_ptr14; + $141 = $140; + HEAP32[$141>>2] = $132; + $142 = (($140) + 4)|0; + $143 = $142; + HEAP32[$143>>2] = $135; + _checkAppendMsg($123,$zContext,40104,$vararg_buffer44); + } + $144 = $info; + $145 = $144; + $146 = HEAP32[$145>>2]|0; + $147 = (($144) + 4)|0; + $148 = $147; + $149 = HEAP32[$148>>2]|0; + $150 = $nMaxKey; + $151 = $150; + HEAP32[$151>>2] = $146; + $152 = (($150) + 4)|0; + $153 = $152; + HEAP32[$153>>2] = $149; + } else { + $88 = $info; + $89 = $88; + $90 = HEAP32[$89>>2]|0; + $91 = (($88) + 4)|0; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $94 = HEAP32[$sz>>2]|0; + $95 = (($94) + ($90))|0; + HEAP32[$sz>>2] = $95; + } + } while(0); + $154 = HEAP32[$sz>>2]|0; + $155 = (($info) + 22|0); + $156 = HEAP16[$155>>1]|0; + $157 = $156&65535; + $158 = ($154>>>0)>($157>>>0); + if ($158) { + $159 = (($info) + 24|0); + $160 = HEAP16[$159>>1]|0; + $161 = $160&65535; + $162 = HEAP32[$pCell>>2]|0; + $163 = (($162) + ($161)|0); + $164 = HEAP32[$pBt>>2]|0; + $165 = (($164) + 36|0); + $166 = HEAP32[$165>>2]|0; + $167 = HEAP32[$pPage>>2]|0; + $168 = (($167) + 56|0); + $169 = HEAP32[$168>>2]|0; + $170 = (($169) + ($166)|0); + $171 = ($163>>>0)<=($170>>>0); + if ($171) { + $172 = HEAP32[$sz>>2]|0; + $173 = (($info) + 22|0); + $174 = HEAP16[$173>>1]|0; + $175 = $174&65535; + $176 = (($172) - ($175))|0; + $177 = HEAP32[$usableSize>>2]|0; + $178 = (($176) + ($177))|0; + $179 = (($178) - 5)|0; + $180 = HEAP32[$usableSize>>2]|0; + $181 = (($180) - 4)|0; + $182 = (($179>>>0) / ($181>>>0))&-1; + HEAP32[$nPage>>2] = $182; + $183 = (($info) + 24|0); + $184 = HEAP16[$183>>1]|0; + $185 = $184&65535; + $186 = HEAP32[$pCell>>2]|0; + $187 = (($186) + ($185)|0); + $188 = (_sqlite3Get4byte($187)|0); + HEAP32[$pgnoOvfl>>2] = $188; + $189 = HEAP32[$pBt>>2]|0; + $190 = (($189) + 17|0); + $191 = HEAP8[$190>>0]|0; + $192 = ($191<<24>>24)!=(0); + if ($192) { + $193 = HEAP32[$1>>2]|0; + $194 = HEAP32[$pgnoOvfl>>2]|0; + $195 = HEAP32[$2>>2]|0; + _checkPtrmap($193,$194,3,$195,$zContext); + } + $196 = HEAP32[$1>>2]|0; + $197 = HEAP32[$pgnoOvfl>>2]|0; + $198 = HEAP32[$nPage>>2]|0; + _checkList($196,0,$197,$198,$zContext); + } + } + $199 = HEAP32[$pPage>>2]|0; + $200 = (($199) + 3|0); + $201 = HEAP8[$200>>0]|0; + $202 = ($201<<24>>24)!=(0); + if (!($202)) { + $203 = HEAP32[$pCell>>2]|0; + $204 = (_sqlite3Get4byte($203)|0); + HEAP32[$pgno>>2] = $204; + $205 = HEAP32[$pBt>>2]|0; + $206 = (($205) + 17|0); + $207 = HEAP8[$206>>0]|0; + $208 = ($207<<24>>24)!=(0); + if ($208) { + $209 = HEAP32[$1>>2]|0; + $210 = HEAP32[$pgno>>2]|0; + $211 = HEAP32[$2>>2]|0; + _checkPtrmap($209,$210,5,$211,$zContext); + } + $212 = HEAP32[$1>>2]|0; + $213 = HEAP32[$pgno>>2]|0; + $214 = HEAP32[$i>>2]|0; + $215 = ($214|0)==(0); + $$nMaxKey = $215 ? 0 : $nMaxKey; + $216 = (_checkTreePage($212,$213,$zContext,$nMinKey,$$nMaxKey)|0); + HEAP32[$d2>>2] = $216; + $217 = HEAP32[$i>>2]|0; + $218 = ($217|0)>(0); + if ($218) { + $219 = HEAP32[$d2>>2]|0; + $220 = HEAP32[$depth>>2]|0; + $221 = ($219|0)!=($220|0); + if ($221) { + $222 = HEAP32[$1>>2]|0; + _checkAppendMsg($222,$zContext,40152,$vararg_buffer44); + } + } + $223 = HEAP32[$d2>>2]|0; + HEAP32[$depth>>2] = $223; + } + $224 = HEAP32[$i>>2]|0; + $225 = (($224) + 1)|0; + HEAP32[$i>>2] = $225; + } + $226 = HEAP32[$pPage>>2]|0; + $227 = (($226) + 3|0); + $228 = HEAP8[$227>>0]|0; + $229 = ($228<<24>>24)!=(0); + if (!($229)) { + $230 = HEAP32[$pPage>>2]|0; + $231 = (($230) + 5|0); + $232 = HEAP8[$231>>0]|0; + $233 = $232&255; + $234 = (($233) + 8)|0; + $235 = HEAP32[$pPage>>2]|0; + $236 = (($235) + 56|0); + $237 = HEAP32[$236>>2]|0; + $238 = (($237) + ($234)|0); + $239 = (_sqlite3Get4byte($238)|0); + HEAP32[$pgno>>2] = $239; + $240 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer44>>2] = $240; + (_sqlite3_snprintf(100,$zContext,40184,$vararg_buffer44)|0); + $241 = HEAP32[$pBt>>2]|0; + $242 = (($241) + 17|0); + $243 = HEAP8[$242>>0]|0; + $244 = ($243<<24>>24)!=(0); + if ($244) { + $245 = HEAP32[$1>>2]|0; + $246 = HEAP32[$pgno>>2]|0; + $247 = HEAP32[$2>>2]|0; + _checkPtrmap($245,$246,5,$247,$zContext); + } + $248 = HEAP32[$1>>2]|0; + $249 = HEAP32[$pgno>>2]|0; + $250 = HEAP32[$pPage>>2]|0; + $251 = (($250) + 16|0); + $252 = HEAP16[$251>>1]|0; + $253 = ($252<<16>>16)!=(0); + $nMaxKey$ = $253 ? $nMaxKey : 0; + (_checkTreePage($248,$249,$zContext,0,$nMaxKey$)|0); + } + $254 = HEAP32[$pPage>>2]|0; + $255 = (($254) + 3|0); + $256 = HEAP8[$255>>0]|0; + $257 = $256&255; + $258 = ($257|0)!=(0); + do { + if ($258) { + $259 = HEAP32[$pPage>>2]|0; + $260 = (($259) + 2|0); + $261 = HEAP8[$260>>0]|0; + $262 = $261&255; + $263 = ($262|0)!=(0); + if ($263) { + $264 = HEAP32[$4>>2]|0; + $265 = ($264|0)!=(0|0); + $266 = HEAP32[$5>>2]|0; + $267 = ($266|0)!=(0|0); + if (!($265)) { + if (!($267)) { + break; + } + $399 = $nMinKey; + $400 = $399; + $401 = HEAP32[$400>>2]|0; + $402 = (($399) + 4)|0; + $403 = $402; + $404 = HEAP32[$403>>2]|0; + $405 = HEAP32[$5>>2]|0; + $406 = $405; + $407 = $406; + $408 = HEAP32[$407>>2]|0; + $409 = (($406) + 4)|0; + $410 = $409; + $411 = HEAP32[$410>>2]|0; + $412 = ($404|0)<($411|0); + $413 = ($404|0)==($411|0); + $414 = ($401>>>0)<=($408>>>0); + $415 = $413 & $414; + $416 = $412 | $415; + if (!($416)) { + break; + } + $417 = HEAP32[$1>>2]|0; + $418 = $nMinKey; + $419 = $418; + $420 = HEAP32[$419>>2]|0; + $421 = (($418) + 4)|0; + $422 = $421; + $423 = HEAP32[$422>>2]|0; + $424 = HEAP32[$5>>2]|0; + $425 = $424; + $426 = $425; + $427 = HEAP32[$426>>2]|0; + $428 = (($425) + 4)|0; + $429 = $428; + $430 = HEAP32[$429>>2]|0; + $431 = $vararg_buffer44; + $432 = $431; + HEAP32[$432>>2] = $420; + $433 = (($431) + 4)|0; + $434 = $433; + HEAP32[$434>>2] = $423; + $vararg_ptr35 = (($vararg_buffer44) + 8|0); + $435 = $vararg_ptr35; + $436 = $435; + HEAP32[$436>>2] = $427; + $437 = (($435) + 4)|0; + $438 = $437; + HEAP32[$438>>2] = $430; + _checkAppendMsg($417,$zContext,40408,$vararg_buffer44); + break; + } + if (!($267)) { + $268 = $nMaxKey; + $269 = $268; + $270 = HEAP32[$269>>2]|0; + $271 = (($268) + 4)|0; + $272 = $271; + $273 = HEAP32[$272>>2]|0; + $274 = HEAP32[$4>>2]|0; + $275 = $274; + $276 = $275; + $277 = HEAP32[$276>>2]|0; + $278 = (($275) + 4)|0; + $279 = $278; + $280 = HEAP32[$279>>2]|0; + $281 = ($273|0)>($280|0); + $282 = ($273|0)==($280|0); + $283 = ($270>>>0)>($277>>>0); + $284 = $282 & $283; + $285 = $281 | $284; + if (!($285)) { + break; + } + $286 = HEAP32[$1>>2]|0; + $287 = $nMaxKey; + $288 = $287; + $289 = HEAP32[$288>>2]|0; + $290 = (($287) + 4)|0; + $291 = $290; + $292 = HEAP32[$291>>2]|0; + $293 = HEAP32[$4>>2]|0; + $294 = $293; + $295 = $294; + $296 = HEAP32[$295>>2]|0; + $297 = (($294) + 4)|0; + $298 = $297; + $299 = HEAP32[$298>>2]|0; + $300 = $vararg_buffer44; + $301 = $300; + HEAP32[$301>>2] = $289; + $302 = (($300) + 4)|0; + $303 = $302; + HEAP32[$303>>2] = $292; + $vararg_ptr23 = (($vararg_buffer44) + 8|0); + $304 = $vararg_ptr23; + $305 = $304; + HEAP32[$305>>2] = $296; + $306 = (($304) + 4)|0; + $307 = $306; + HEAP32[$307>>2] = $299; + _checkAppendMsg($286,$zContext,40216,$vararg_buffer44); + break; + } + $308 = $nMinKey; + $309 = $308; + $310 = HEAP32[$309>>2]|0; + $311 = (($308) + 4)|0; + $312 = $311; + $313 = HEAP32[$312>>2]|0; + $314 = HEAP32[$4>>2]|0; + $315 = $314; + $316 = $315; + $317 = HEAP32[$316>>2]|0; + $318 = (($315) + 4)|0; + $319 = $318; + $320 = HEAP32[$319>>2]|0; + $321 = ($313|0)<($320|0); + $322 = ($313|0)==($320|0); + $323 = ($310>>>0)<=($317>>>0); + $324 = $322 & $323; + $325 = $321 | $324; + if ($325) { + $326 = HEAP32[$1>>2]|0; + $327 = $nMinKey; + $328 = $327; + $329 = HEAP32[$328>>2]|0; + $330 = (($327) + 4)|0; + $331 = $330; + $332 = HEAP32[$331>>2]|0; + $333 = HEAP32[$4>>2]|0; + $334 = $333; + $335 = $334; + $336 = HEAP32[$335>>2]|0; + $337 = (($334) + 4)|0; + $338 = $337; + $339 = HEAP32[$338>>2]|0; + $340 = $vararg_buffer44; + $341 = $340; + HEAP32[$341>>2] = $329; + $342 = (($340) + 4)|0; + $343 = $342; + HEAP32[$343>>2] = $332; + $vararg_ptr27 = (($vararg_buffer44) + 8|0); + $344 = $vararg_ptr27; + $345 = $344; + HEAP32[$345>>2] = $336; + $346 = (($344) + 4)|0; + $347 = $346; + HEAP32[$347>>2] = $339; + _checkAppendMsg($326,$zContext,40280,$vararg_buffer44); + } + $348 = $nMaxKey; + $349 = $348; + $350 = HEAP32[$349>>2]|0; + $351 = (($348) + 4)|0; + $352 = $351; + $353 = HEAP32[$352>>2]|0; + $354 = HEAP32[$5>>2]|0; + $355 = $354; + $356 = $355; + $357 = HEAP32[$356>>2]|0; + $358 = (($355) + 4)|0; + $359 = $358; + $360 = HEAP32[$359>>2]|0; + $361 = ($353|0)>($360|0); + $362 = ($353|0)==($360|0); + $363 = ($350>>>0)>($357>>>0); + $364 = $362 & $363; + $365 = $361 | $364; + if ($365) { + $366 = HEAP32[$1>>2]|0; + $367 = $nMaxKey; + $368 = $367; + $369 = HEAP32[$368>>2]|0; + $370 = (($367) + 4)|0; + $371 = $370; + $372 = HEAP32[$371>>2]|0; + $373 = HEAP32[$5>>2]|0; + $374 = $373; + $375 = $374; + $376 = HEAP32[$375>>2]|0; + $377 = (($374) + 4)|0; + $378 = $377; + $379 = HEAP32[$378>>2]|0; + $380 = $vararg_buffer44; + $381 = $380; + HEAP32[$381>>2] = $369; + $382 = (($380) + 4)|0; + $383 = $382; + HEAP32[$383>>2] = $372; + $vararg_ptr31 = (($vararg_buffer44) + 8|0); + $384 = $vararg_ptr31; + $385 = $384; + HEAP32[$385>>2] = $376; + $386 = (($384) + 4)|0; + $387 = $386; + HEAP32[$387>>2] = $379; + _checkAppendMsg($366,$zContext,40344,$vararg_buffer44); + } + $388 = $nMaxKey; + $389 = $388; + $390 = HEAP32[$389>>2]|0; + $391 = (($388) + 4)|0; + $392 = $391; + $393 = HEAP32[$392>>2]|0; + $394 = HEAP32[$4>>2]|0; + $395 = $394; + $396 = $395; + HEAP32[$396>>2] = $390; + $397 = (($395) + 4)|0; + $398 = $397; + HEAP32[$398>>2] = $393; + } + } + } while(0); + $439 = HEAP32[$pPage>>2]|0; + $440 = (($439) + 56|0); + $441 = HEAP32[$440>>2]|0; + HEAP32[$data>>2] = $441; + $442 = HEAP32[$pPage>>2]|0; + $443 = (($442) + 5|0); + $444 = HEAP8[$443>>0]|0; + $445 = $444&255; + HEAP32[$hdr>>2] = $445; + $446 = HEAP32[$pBt>>2]|0; + $447 = (($446) + 32|0); + $448 = HEAP32[$447>>2]|0; + $449 = (_sqlite3PageMalloc($448)|0); + HEAP32[$hit>>2] = $449; + $450 = HEAP32[$hit>>2]|0; + $451 = ($450|0)==(0|0); + if ($451) { + $452 = HEAP32[$1>>2]|0; + $453 = (($452) + 24|0); + HEAP32[$453>>2] = 1; + } else { + $454 = HEAP32[$hdr>>2]|0; + $455 = (($454) + 5)|0; + $456 = HEAP32[$data>>2]|0; + $457 = (($456) + ($455)|0); + $458 = HEAP8[$457>>0]|0; + $459 = $458&255; + $460 = $459 << 8; + $461 = HEAP32[$hdr>>2]|0; + $462 = (($461) + 5)|0; + $463 = HEAP32[$data>>2]|0; + $464 = (($463) + ($462)|0); + $465 = (($464) + 1|0); + $466 = HEAP8[$465>>0]|0; + $467 = $466&255; + $468 = $460 | $467; + $469 = (($468) - 1)|0; + $470 = $469 & 65535; + $471 = (($470) + 1)|0; + HEAP32[$contentOffset>>2] = $471; + $472 = HEAP32[$hit>>2]|0; + $473 = HEAP32[$contentOffset>>2]|0; + $474 = (($472) + ($473)|0); + $475 = HEAP32[$usableSize>>2]|0; + $476 = HEAP32[$contentOffset>>2]|0; + $477 = (($475) - ($476))|0; + _memset(($474|0),0,($477|0))|0; + $478 = HEAP32[$hit>>2]|0; + $479 = HEAP32[$contentOffset>>2]|0; + _memset(($478|0),1,($479|0))|0; + $480 = HEAP32[$hdr>>2]|0; + $481 = (($480) + 3)|0; + $482 = HEAP32[$data>>2]|0; + $483 = (($482) + ($481)|0); + $484 = HEAP8[$483>>0]|0; + $485 = $484&255; + $486 = $485 << 8; + $487 = HEAP32[$hdr>>2]|0; + $488 = (($487) + 3)|0; + $489 = HEAP32[$data>>2]|0; + $490 = (($489) + ($488)|0); + $491 = (($490) + 1|0); + $492 = HEAP8[$491>>0]|0; + $493 = $492&255; + $494 = $486 | $493; + HEAP32[$nCell>>2] = $494; + $495 = HEAP32[$hdr>>2]|0; + $496 = (($495) + 12)|0; + $497 = HEAP32[$pPage>>2]|0; + $498 = (($497) + 3|0); + $499 = HEAP8[$498>>0]|0; + $500 = $499&255; + $501 = $500<<2; + $502 = (($496) - ($501))|0; + HEAP32[$cellStart>>2] = $502; + HEAP32[$i>>2] = 0; + while(1) { + $503 = HEAP32[$i>>2]|0; + $504 = HEAP32[$nCell>>2]|0; + $505 = ($503|0)<($504|0); + if (!($505)) { + break; + } + $506 = HEAP32[$cellStart>>2]|0; + $507 = HEAP32[$i>>2]|0; + $508 = $507<<1; + $509 = (($506) + ($508))|0; + $510 = HEAP32[$data>>2]|0; + $511 = (($510) + ($509)|0); + $512 = HEAP8[$511>>0]|0; + $513 = $512&255; + $514 = $513 << 8; + $515 = HEAP32[$cellStart>>2]|0; + $516 = HEAP32[$i>>2]|0; + $517 = $516<<1; + $518 = (($515) + ($517))|0; + $519 = HEAP32[$data>>2]|0; + $520 = (($519) + ($518)|0); + $521 = (($520) + 1|0); + $522 = HEAP8[$521>>0]|0; + $523 = $522&255; + $524 = $514 | $523; + HEAP32[$pc>>2] = $524; + HEAP32[$size>>2] = 65536; + $525 = HEAP32[$pc>>2]|0; + $526 = HEAP32[$usableSize>>2]|0; + $527 = (($526) - 4)|0; + $528 = ($525|0)<=($527|0); + if ($528) { + $529 = HEAP32[$pPage>>2]|0; + $530 = HEAP32[$pc>>2]|0; + $531 = HEAP32[$data>>2]|0; + $532 = (($531) + ($530)|0); + $533 = (_cellSizePtr($529,$532)|0); + $534 = $533&65535; + HEAP32[$size>>2] = $534; + } + $535 = HEAP32[$pc>>2]|0; + $536 = HEAP32[$size>>2]|0; + $537 = (($535) + ($536))|0; + $538 = (($537) - 1)|0; + $539 = HEAP32[$usableSize>>2]|0; + $540 = ($538|0)>=($539|0); + L82: do { + if ($540) { + $541 = HEAP32[$1>>2]|0; + $542 = HEAP32[$i>>2]|0; + $543 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer44>>2] = $542; + $vararg_ptr39 = (($vararg_buffer44) + 4|0); + HEAP32[$vararg_ptr39>>2] = $543; + _checkAppendMsg($541,0,40472,$vararg_buffer44); + } else { + $544 = HEAP32[$pc>>2]|0; + $545 = HEAP32[$size>>2]|0; + $546 = (($544) + ($545))|0; + $547 = (($546) - 1)|0; + HEAP32[$j>>2] = $547; + while(1) { + $548 = HEAP32[$j>>2]|0; + $549 = HEAP32[$pc>>2]|0; + $550 = ($548|0)>=($549|0); + if (!($550)) { + break L82; + } + $551 = HEAP32[$j>>2]|0; + $552 = HEAP32[$hit>>2]|0; + $553 = (($552) + ($551)|0); + $554 = HEAP8[$553>>0]|0; + $555 = (($554) + 1)<<24>>24; + HEAP8[$553>>0] = $555; + $556 = HEAP32[$j>>2]|0; + $557 = (($556) + -1)|0; + HEAP32[$j>>2] = $557; + } + } + } while(0); + $558 = HEAP32[$i>>2]|0; + $559 = (($558) + 1)|0; + HEAP32[$i>>2] = $559; + } + $560 = HEAP32[$hdr>>2]|0; + $561 = (($560) + 1)|0; + $562 = HEAP32[$data>>2]|0; + $563 = (($562) + ($561)|0); + $564 = HEAP8[$563>>0]|0; + $565 = $564&255; + $566 = $565 << 8; + $567 = HEAP32[$hdr>>2]|0; + $568 = (($567) + 1)|0; + $569 = HEAP32[$data>>2]|0; + $570 = (($569) + ($568)|0); + $571 = (($570) + 1|0); + $572 = HEAP8[$571>>0]|0; + $573 = $572&255; + $574 = $566 | $573; + HEAP32[$i>>2] = $574; + while(1) { + $575 = HEAP32[$i>>2]|0; + $576 = ($575|0)>(0); + if (!($576)) { + break; + } + $577 = HEAP32[$i>>2]|0; + $578 = (($577) + 2)|0; + $579 = HEAP32[$data>>2]|0; + $580 = (($579) + ($578)|0); + $581 = HEAP8[$580>>0]|0; + $582 = $581&255; + $583 = $582 << 8; + $584 = HEAP32[$i>>2]|0; + $585 = (($584) + 2)|0; + $586 = HEAP32[$data>>2]|0; + $587 = (($586) + ($585)|0); + $588 = (($587) + 1|0); + $589 = HEAP8[$588>>0]|0; + $590 = $589&255; + $591 = $583 | $590; + HEAP32[$size1>>2] = $591; + $592 = HEAP32[$i>>2]|0; + $593 = HEAP32[$size1>>2]|0; + $594 = (($592) + ($593))|0; + $595 = (($594) - 1)|0; + HEAP32[$j2>>2] = $595; + while(1) { + $596 = HEAP32[$j2>>2]|0; + $597 = HEAP32[$i>>2]|0; + $598 = ($596|0)>=($597|0); + if (!($598)) { + break; + } + $599 = HEAP32[$j2>>2]|0; + $600 = HEAP32[$hit>>2]|0; + $601 = (($600) + ($599)|0); + $602 = HEAP8[$601>>0]|0; + $603 = (($602) + 1)<<24>>24; + HEAP8[$601>>0] = $603; + $604 = HEAP32[$j2>>2]|0; + $605 = (($604) + -1)|0; + HEAP32[$j2>>2] = $605; + } + $606 = HEAP32[$i>>2]|0; + $607 = HEAP32[$data>>2]|0; + $608 = (($607) + ($606)|0); + $609 = HEAP8[$608>>0]|0; + $610 = $609&255; + $611 = $610 << 8; + $612 = HEAP32[$i>>2]|0; + $613 = HEAP32[$data>>2]|0; + $614 = (($613) + ($612)|0); + $615 = (($614) + 1|0); + $616 = HEAP8[$615>>0]|0; + $617 = $616&255; + $618 = $611 | $617; + HEAP32[$j2>>2] = $618; + $619 = HEAP32[$j2>>2]|0; + HEAP32[$i>>2] = $619; + } + HEAP32[$cnt>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $620 = HEAP32[$i>>2]|0; + $621 = HEAP32[$usableSize>>2]|0; + $622 = ($620|0)<($621|0); + if (!($622)) { + break; + } + $623 = HEAP32[$i>>2]|0; + $624 = HEAP32[$hit>>2]|0; + $625 = (($624) + ($623)|0); + $626 = HEAP8[$625>>0]|0; + $627 = $626 << 24 >> 24; + $628 = ($627|0)==(0); + if ($628) { + $629 = HEAP32[$cnt>>2]|0; + $630 = (($629) + 1)|0; + HEAP32[$cnt>>2] = $630; + } else { + $631 = HEAP32[$i>>2]|0; + $632 = HEAP32[$hit>>2]|0; + $633 = (($632) + ($631)|0); + $634 = HEAP8[$633>>0]|0; + $635 = $634 << 24 >> 24; + $636 = ($635|0)>(1); + if ($636) { + label = 73; + break; + } + } + $640 = HEAP32[$i>>2]|0; + $641 = (($640) + 1)|0; + HEAP32[$i>>2] = $641; + } + if ((label|0) == 73) { + $637 = HEAP32[$1>>2]|0; + $638 = HEAP32[$i>>2]|0; + $639 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer44>>2] = $638; + $vararg_ptr43 = (($vararg_buffer44) + 4|0); + HEAP32[$vararg_ptr43>>2] = $639; + _checkAppendMsg($637,0,40520,$vararg_buffer44); + } + $642 = HEAP32[$cnt>>2]|0; + $643 = HEAP32[$hdr>>2]|0; + $644 = (($643) + 7)|0; + $645 = HEAP32[$data>>2]|0; + $646 = (($645) + ($644)|0); + $647 = HEAP8[$646>>0]|0; + $648 = $647&255; + $649 = ($642|0)!=($648|0); + if ($649) { + $650 = HEAP32[$1>>2]|0; + $651 = HEAP32[$cnt>>2]|0; + $652 = HEAP32[$hdr>>2]|0; + $653 = (($652) + 7)|0; + $654 = HEAP32[$data>>2]|0; + $655 = (($654) + ($653)|0); + $656 = HEAP8[$655>>0]|0; + $657 = $656&255; + $658 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer44>>2] = $651; + $vararg_ptr47 = (($vararg_buffer44) + 4|0); + HEAP32[$vararg_ptr47>>2] = $657; + $vararg_ptr48 = (($vararg_buffer44) + 8|0); + HEAP32[$vararg_ptr48>>2] = $658; + _checkAppendMsg($650,0,40560,$vararg_buffer44); + } + } + $659 = HEAP32[$hit>>2]|0; + _sqlite3PageFree($659); + $660 = HEAP32[$pPage>>2]|0; + _releasePage($660); + $661 = HEAP32[$depth>>2]|0; + $662 = (($661) + 1)|0; + HEAP32[$0>>2] = $662; + $663 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($663|0); +} +function _getPageReferenced($pCheck,$iPg) { + $pCheck = $pCheck|0; + $iPg = $iPg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pCheck; + HEAP32[$1>>2] = $iPg; + $2 = HEAP32[$1>>2]|0; + $3 = (($2>>>0) / 8)&-1; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + $7 = (($6) + ($3)|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = HEAP32[$1>>2]|0; + $11 = $10 & 7; + $12 = 1 << $11; + $13 = $9 & $12; + STACKTOP = sp;return ($13|0); +} +function _checkAppendMsg($pCheck,$zMsg1,$zFormat,$varargs) { + $pCheck = $pCheck|0; + $zMsg1 = $zMsg1|0; + $zFormat = $zFormat|0; + $varargs = $varargs|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ap = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $ap = sp + 8|0; + HEAP32[$0>>2] = $pCheck; + HEAP32[$1>>2] = $zMsg1; + HEAP32[$2>>2] = $zFormat; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 16|0); + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + -1)|0; + HEAP32[$8>>2] = $10; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 20|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 1)|0; + HEAP32[$12>>2] = $14; + HEAP32[$ap>>2] = $varargs; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 28|0); + $17 = (($16) + 12|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($18|0)!=(0); + if ($19) { + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 28|0); + _sqlite3StrAccumAppend($21,39968,1); + } + $22 = HEAP32[$1>>2]|0; + $23 = ($22|0)!=(0|0); + if ($23) { + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 28|0); + $26 = HEAP32[$1>>2]|0; + _sqlite3StrAccumAppendAll($25,$26); + } + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 28|0); + $29 = HEAP32[$2>>2]|0; + _sqlite3VXPrintf($28,1,$29,$ap); + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 28|0); + $32 = (($31) + 25|0); + $33 = HEAP8[$32>>0]|0; + $34 = $33&255; + $35 = ($34|0)==(1); + if (!($35)) { + STACKTOP = sp;return; + } + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + 24|0); + HEAP32[$37>>2] = 1; + STACKTOP = sp;return; +} +function _checkRef($pCheck,$iPage,$zContext) { + $pCheck = $pCheck|0; + $iPage = $iPage|0; + $zContext = $zContext|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $vararg_buffer1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer1 = sp; + $0 = sp + 16|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + HEAP32[$1>>2] = $pCheck; + HEAP32[$2>>2] = $iPage; + HEAP32[$3>>2] = $zContext; + $4 = HEAP32[$2>>2]|0; + $5 = ($4|0)==(0); + if ($5) { + HEAP32[$0>>2] = 1; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); + } + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 12|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($6>>>0)>($9>>>0); + $11 = HEAP32[$1>>2]|0; + if ($10) { + $12 = HEAP32[$3>>2]|0; + $13 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer1>>2] = $13; + _checkAppendMsg($11,$12,40616,$vararg_buffer1); + HEAP32[$0>>2] = 1; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); + } + $14 = HEAP32[$2>>2]|0; + $15 = (_getPageReferenced($11,$14)|0); + $16 = ($15|0)!=(0); + $17 = HEAP32[$1>>2]|0; + if ($16) { + $18 = HEAP32[$3>>2]|0; + $19 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer1>>2] = $19; + _checkAppendMsg($17,$18,40640,$vararg_buffer1); + HEAP32[$0>>2] = 1; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); + } else { + $20 = HEAP32[$2>>2]|0; + _setPageReferenced($17,$20); + HEAP32[$0>>2] = 0; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); + } + return 0|0; +} +function _cellSizePtr($pPage,$pCell) { + $pPage = $pPage|0; + $pCell = $pCell|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; + var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; + var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $minLocal = 0, $nSize = 0; + var $pEnd = 0, $pIter = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $pIter = sp + 4|0; + $nSize = sp + 8|0; + $pEnd = sp + 12|0; + $minLocal = sp + 16|0; + HEAP32[$0>>2] = $pPage; + HEAP32[$1>>2] = $pCell; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 6|0); + $4 = HEAP8[$3>>0]|0; + $5 = $4&255; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + ($5)|0); + HEAP32[$pIter>>2] = $7; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 2|0); + $10 = HEAP8[$9>>0]|0; + $11 = ($10<<24>>24)!=(0); + L1: do { + if ($11) { + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 4|0); + $14 = HEAP8[$13>>0]|0; + $15 = ($14<<24>>24)!=(0); + if ($15) { + $16 = HEAP32[$pIter>>2]|0; + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = ($18|0)<(128); + $20 = HEAP32[$pIter>>2]|0; + if ($19) { + $21 = HEAP8[$20>>0]|0; + $22 = $21&255; + HEAP32[$nSize>>2] = $22; + $26 = 1; + } else { + $23 = (_sqlite3GetVarint32($20,$nSize)|0); + $24 = $23&255; + $26 = $24; + } + $25 = $26&255; + $27 = $25&255; + $28 = HEAP32[$pIter>>2]|0; + $29 = (($28) + ($27)|0); + HEAP32[$pIter>>2] = $29; + } else { + HEAP32[$nSize>>2] = 0; + } + $30 = HEAP32[$pIter>>2]|0; + $31 = (($30) + 9|0); + HEAP32[$pEnd>>2] = $31; + while(1) { + $32 = HEAP32[$pIter>>2]|0; + $33 = (($32) + 1|0); + HEAP32[$pIter>>2] = $33; + $34 = HEAP8[$32>>0]|0; + $35 = $34&255; + $36 = $35 & 128; + $37 = ($36|0)!=(0); + if (!($37)) { + break L1; + } + $38 = HEAP32[$pIter>>2]|0; + $39 = HEAP32[$pEnd>>2]|0; + $40 = ($38>>>0)<($39>>>0); + if (!($40)) { + break; + } + } + } else { + $41 = HEAP32[$pIter>>2]|0; + $42 = HEAP8[$41>>0]|0; + $43 = $42&255; + $44 = ($43|0)<(128); + $45 = HEAP32[$pIter>>2]|0; + if ($44) { + $46 = HEAP8[$45>>0]|0; + $47 = $46&255; + HEAP32[$nSize>>2] = $47; + $51 = 1; + } else { + $48 = (_sqlite3GetVarint32($45,$nSize)|0); + $49 = $48&255; + $51 = $49; + } + $50 = $51&255; + $52 = $50&255; + $53 = HEAP32[$pIter>>2]|0; + $54 = (($53) + ($52)|0); + HEAP32[$pIter>>2] = $54; + } + } while(0); + $55 = HEAP32[$nSize>>2]|0; + $56 = HEAP32[$0>>2]|0; + $57 = (($56) + 8|0); + $58 = HEAP16[$57>>1]|0; + $59 = $58&65535; + $60 = ($55>>>0)>($59>>>0); + if (!($60)) { + $86 = HEAP32[$pIter>>2]|0; + $87 = HEAP32[$1>>2]|0; + $88 = $86; + $89 = $87; + $90 = (($88) - ($89))|0; + $91 = HEAP32[$nSize>>2]|0; + $92 = (($91) + ($90))|0; + HEAP32[$nSize>>2] = $92; + $93 = HEAP32[$nSize>>2]|0; + $94 = ($93>>>0)<(4); + $$ = $94 ? 4 : $92; + HEAP32[$nSize>>2] = $$; + $95 = HEAP32[$nSize>>2]|0; + $96 = $95&65535; + STACKTOP = sp;return ($96|0); + } + $61 = HEAP32[$0>>2]|0; + $62 = (($61) + 10|0); + $63 = HEAP16[$62>>1]|0; + $64 = $63&65535; + HEAP32[$minLocal>>2] = $64; + $65 = HEAP32[$minLocal>>2]|0; + $66 = HEAP32[$nSize>>2]|0; + $67 = HEAP32[$minLocal>>2]|0; + $68 = (($66) - ($67))|0; + $69 = HEAP32[$0>>2]|0; + $70 = (($69) + 52|0); + $71 = HEAP32[$70>>2]|0; + $72 = (($71) + 36|0); + $73 = HEAP32[$72>>2]|0; + $74 = (($73) - 4)|0; + $75 = (($68>>>0) % ($74>>>0))&-1; + $76 = (($65) + ($75))|0; + HEAP32[$nSize>>2] = $76; + $77 = HEAP32[$nSize>>2]|0; + $78 = HEAP32[$0>>2]|0; + $79 = (($78) + 8|0); + $80 = HEAP16[$79>>1]|0; + $81 = $80&65535; + $82 = ($77>>>0)>($81>>>0); + if ($82) { + $83 = HEAP32[$minLocal>>2]|0; + HEAP32[$nSize>>2] = $83; + } + $84 = HEAP32[$nSize>>2]|0; + $85 = (($84) + 4)|0; + HEAP32[$nSize>>2] = $85; + $86 = HEAP32[$pIter>>2]|0; + $87 = HEAP32[$1>>2]|0; + $88 = $86; + $89 = $87; + $90 = (($88) - ($89))|0; + $91 = HEAP32[$nSize>>2]|0; + $92 = (($91) + ($90))|0; + HEAP32[$nSize>>2] = $92; + $93 = HEAP32[$nSize>>2]|0; + $94 = ($93>>>0)<(4); + $$ = $94 ? 4 : $92; + HEAP32[$nSize>>2] = $$; + $95 = HEAP32[$nSize>>2]|0; + $96 = $95&65535; + STACKTOP = sp;return ($96|0); +} +function _vdbeSorterIterZero($db,$pIter) { + $db = $db|0; + $pIter = $pIter|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pIter; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 28|0); + $5 = HEAP32[$4>>2]|0; + _sqlite3DbFree($2,$5); + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 36|0); + $9 = HEAP32[$8>>2]|0; + _sqlite3DbFree($6,$9); + $10 = HEAP32[$1>>2]|0; + dest=$10+0|0; stop=dest+48|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + STACKTOP = sp;return; +} +function _sqlite3OsCloseFree($pFile) { + $pFile = $pFile|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $rc = sp; + HEAP32[$0>>2] = $pFile; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (_sqlite3OsClose($1)|0); + HEAP32[$rc>>2] = $2; + $3 = HEAP32[$0>>2]|0; + _sqlite3_free($3); + $4 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($4|0); +} +function _vdbeSorterRecordFree($db,$pRecord) { + $db = $db|0; + $pRecord = $pRecord|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pNext = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $p = sp + 4|0; + $pNext = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pRecord; + $2 = HEAP32[$1>>2]|0; + HEAP32[$p>>2] = $2; + while(1) { + $3 = HEAP32[$p>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + break; + } + $5 = HEAP32[$p>>2]|0; + $6 = (($5) + 8|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pNext>>2] = $7; + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$p>>2]|0; + _sqlite3DbFree($8,$9); + $10 = HEAP32[$pNext>>2]|0; + HEAP32[$p>>2] = $10; + } + STACKTOP = sp;return; +} +function _invalidateIncrblobCursors($pBtree,$0,$1,$isClearTable) { + $pBtree = $pBtree|0; + $0 = $0|0; + $1 = $1|0; + $isClearTable = $isClearTable|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pBt = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 20|0; + $3 = sp; + $4 = sp + 8|0; + $p = sp + 12|0; + $pBt = sp + 16|0; + HEAP32[$2>>2] = $pBtree; + $5 = $3; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + HEAP32[$4>>2] = $isClearTable; + $9 = HEAP32[$2>>2]|0; + $10 = (($9) + 4|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$pBt>>2] = $11; + $12 = HEAP32[$pBt>>2]|0; + $13 = (($12) + 8|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$p>>2] = $14; + while(1) { + $15 = HEAP32[$p>>2]|0; + $16 = ($15|0)!=(0|0); + if (!($16)) { + break; + } + $17 = HEAP32[$p>>2]|0; + $18 = (($17) + 80|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = $20 & 16; + $22 = ($21|0)!=(0); + do { + if ($22) { + $23 = HEAP32[$4>>2]|0; + $24 = ($23|0)!=(0); + if (!($24)) { + $25 = HEAP32[$p>>2]|0; + $26 = (($25) + 24|0); + $27 = $26; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (($27) + 4)|0; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = $3; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = (($33) + 4)|0; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + $39 = ($29|0)==($35|0); + $40 = ($32|0)==($38|0); + $41 = $39 & $40; + if (!($41)) { + break; + } + } + $42 = HEAP32[$p>>2]|0; + $43 = (($42) + 81|0); + HEAP8[$43>>0] = 0; + } + } while(0); + $44 = HEAP32[$p>>2]|0; + $45 = (($44) + 8|0); + $46 = HEAP32[$45>>2]|0; + HEAP32[$p>>2] = $46; + } + STACKTOP = sp;return; +} +function _clearDatabasePage($pBt,$pgno,$freePageFlag,$pnChange) { + $pBt = $pBt|0; + $pgno = $pgno|0; + $freePageFlag = $freePageFlag|0; + $pnChange = $pnChange|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $12 = 0; + var $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0; + var $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $hdr = 0, $i = 0, $pCell = 0, $pPage = 0, $rc = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 20|0; + $pPage = sp + 16|0; + $rc = sp + 8|0; + $pCell = sp + 4|0; + $i = sp; + $hdr = sp + 12|0; + HEAP32[$1>>2] = $pBt; + HEAP32[$2>>2] = $pgno; + HEAP32[$3>>2] = $freePageFlag; + HEAP32[$4>>2] = $pnChange; + $5 = HEAP32[$2>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = (_btreePagecount($6)|0); + $8 = ($5>>>0)>($7>>>0); + if ($8) { + $9 = (_sqlite3CorruptError(58551)|0); + HEAP32[$0>>2] = $9; + $114 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($114|0); + } + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = (_getAndInitPage($10,$11,$pPage,0)|0); + HEAP32[$rc>>2] = $12; + $13 = HEAP32[$rc>>2]|0; + $14 = ($13|0)!=(0); + if ($14) { + $15 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $15; + $114 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($114|0); + } + $16 = HEAP32[$pPage>>2]|0; + $17 = (($16) + 5|0); + $18 = HEAP8[$17>>0]|0; + $19 = $18&255; + HEAP32[$hdr>>2] = $19; + HEAP32[$i>>2] = 0; + while(1) { + $20 = HEAP32[$i>>2]|0; + $21 = HEAP32[$pPage>>2]|0; + $22 = (($21) + 16|0); + $23 = HEAP16[$22>>1]|0; + $24 = $23&65535; + $25 = ($20|0)<($24|0); + $26 = HEAP32[$pPage>>2]|0; + if (!($25)) { + label = 11; + break; + } + $27 = (($26) + 56|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$pPage>>2]|0; + $30 = (($29) + 18|0); + $31 = HEAP16[$30>>1]|0; + $32 = $31&65535; + $33 = HEAP32[$i>>2]|0; + $34 = $33<<1; + $35 = HEAP32[$pPage>>2]|0; + $36 = (($35) + 64|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + ($34)|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39&255; + $41 = $40 << 8; + $42 = HEAP32[$i>>2]|0; + $43 = $42<<1; + $44 = HEAP32[$pPage>>2]|0; + $45 = (($44) + 64|0); + $46 = HEAP32[$45>>2]|0; + $47 = (($46) + ($43)|0); + $48 = (($47) + 1|0); + $49 = HEAP8[$48>>0]|0; + $50 = $49&255; + $51 = $41 | $50; + $52 = $32 & $51; + $53 = (($28) + ($52)|0); + HEAP32[$pCell>>2] = $53; + $54 = HEAP32[$pPage>>2]|0; + $55 = (($54) + 3|0); + $56 = HEAP8[$55>>0]|0; + $57 = ($56<<24>>24)!=(0); + if (!($57)) { + $58 = HEAP32[$1>>2]|0; + $59 = HEAP32[$pCell>>2]|0; + $60 = (_sqlite3Get4byte($59)|0); + $61 = HEAP32[$4>>2]|0; + $62 = (_clearDatabasePage($58,$60,1,$61)|0); + HEAP32[$rc>>2] = $62; + $63 = HEAP32[$rc>>2]|0; + $64 = ($63|0)!=(0); + if ($64) { + break; + } + } + $65 = HEAP32[$pPage>>2]|0; + $66 = HEAP32[$pCell>>2]|0; + $67 = (_clearCell($65,$66)|0); + HEAP32[$rc>>2] = $67; + $68 = HEAP32[$rc>>2]|0; + $69 = ($68|0)!=(0); + if ($69) { + break; + } + $70 = HEAP32[$i>>2]|0; + $71 = (($70) + 1)|0; + HEAP32[$i>>2] = $71; + } + do { + if ((label|0) == 11) { + $72 = (($26) + 3|0); + $73 = HEAP8[$72>>0]|0; + $74 = ($73<<24>>24)!=(0); + if ($74) { + $87 = HEAP32[$4>>2]|0; + $88 = ($87|0)!=(0|0); + if ($88) { + $89 = HEAP32[$pPage>>2]|0; + $90 = (($89) + 16|0); + $91 = HEAP16[$90>>1]|0; + $92 = $91&65535; + $93 = HEAP32[$4>>2]|0; + $94 = HEAP32[$93>>2]|0; + $95 = (($94) + ($92))|0; + HEAP32[$93>>2] = $95; + } + } else { + $75 = HEAP32[$1>>2]|0; + $76 = HEAP32[$hdr>>2]|0; + $77 = (($76) + 8)|0; + $78 = HEAP32[$pPage>>2]|0; + $79 = (($78) + 56|0); + $80 = HEAP32[$79>>2]|0; + $81 = (($80) + ($77)|0); + $82 = (_sqlite3Get4byte($81)|0); + $83 = HEAP32[$4>>2]|0; + $84 = (_clearDatabasePage($75,$82,1,$83)|0); + HEAP32[$rc>>2] = $84; + $85 = HEAP32[$rc>>2]|0; + $86 = ($85|0)!=(0); + if ($86) { + break; + } + } + $96 = HEAP32[$3>>2]|0; + $97 = ($96|0)!=(0); + $98 = HEAP32[$pPage>>2]|0; + if ($97) { + _freePage($98,$rc); + break; + } + $99 = (($98) + 68|0); + $100 = HEAP32[$99>>2]|0; + $101 = (_sqlite3PagerWrite($100)|0); + HEAP32[$rc>>2] = $101; + $102 = ($101|0)==(0); + if ($102) { + $103 = HEAP32[$pPage>>2]|0; + $104 = HEAP32[$hdr>>2]|0; + $105 = HEAP32[$pPage>>2]|0; + $106 = (($105) + 56|0); + $107 = HEAP32[$106>>2]|0; + $108 = (($107) + ($104)|0); + $109 = HEAP8[$108>>0]|0; + $110 = $109&255; + $111 = $110 | 8; + _zeroPage($103,$111); + } + } + } while(0); + $112 = HEAP32[$pPage>>2]|0; + _releasePage($112); + $113 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $113; + $114 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($114|0); +} +function _clearCell($pPage,$pCell) { + $pPage = $pPage|0; + $pCell = $pCell|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $iNext = 0, $info = 0, $nOvfl = 0, $ovflPageSize = 0, $ovflPgno = 0, $pBt = 0, $pOvfl = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 68|0; + $1 = sp + 64|0; + $2 = sp + 60|0; + $pBt = sp + 56|0; + $info = sp; + $ovflPgno = sp + 44|0; + $rc = sp + 48|0; + $nOvfl = sp + 36|0; + $ovflPageSize = sp + 32|0; + $iNext = sp + 40|0; + $pOvfl = sp + 52|0; + HEAP32[$1>>2] = $pPage; + HEAP32[$2>>2] = $pCell; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 52|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pBt>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$2>>2]|0; + _btreeParseCellPtr($6,$7,$info); + $8 = (($info) + 24|0); + $9 = HEAP16[$8>>1]|0; + $10 = $9&65535; + $11 = ($10|0)==(0); + if ($11) { + HEAP32[$0>>2] = 0; + $92 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($92|0); + } + $12 = HEAP32[$2>>2]|0; + $13 = (($info) + 24|0); + $14 = HEAP16[$13>>1]|0; + $15 = $14&65535; + $16 = (($12) + ($15)|0); + $17 = (($16) + 3|0); + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 56|0); + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 18|0); + $23 = HEAP16[$22>>1]|0; + $24 = $23&65535; + $25 = (($20) + ($24)|0); + $26 = ($17>>>0)>($25>>>0); + if ($26) { + $27 = (_sqlite3CorruptError(56609)|0); + HEAP32[$0>>2] = $27; + $92 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($92|0); + } + $28 = (($info) + 24|0); + $29 = HEAP16[$28>>1]|0; + $30 = $29&65535; + $31 = HEAP32[$2>>2]|0; + $32 = (($31) + ($30)|0); + $33 = (_sqlite3Get4byte($32)|0); + HEAP32[$ovflPgno>>2] = $33; + $34 = HEAP32[$pBt>>2]|0; + $35 = (($34) + 36|0); + $36 = HEAP32[$35>>2]|0; + $37 = (($36) - 4)|0; + HEAP32[$ovflPageSize>>2] = $37; + $38 = (($info) + 16|0); + $39 = HEAP32[$38>>2]|0; + $40 = (($info) + 22|0); + $41 = HEAP16[$40>>1]|0; + $42 = $41&65535; + $43 = (($39) - ($42))|0; + $44 = HEAP32[$ovflPageSize>>2]|0; + $45 = (($43) + ($44))|0; + $46 = (($45) - 1)|0; + $47 = HEAP32[$ovflPageSize>>2]|0; + $48 = (($46>>>0) / ($47>>>0))&-1; + HEAP32[$nOvfl>>2] = $48; + while(1) { + $49 = HEAP32[$nOvfl>>2]|0; + $50 = (($49) + -1)|0; + HEAP32[$nOvfl>>2] = $50; + $51 = ($49|0)!=(0); + if (!($51)) { + label = 23; + break; + } + HEAP32[$iNext>>2] = 0; + HEAP32[$pOvfl>>2] = 0; + $52 = HEAP32[$ovflPgno>>2]|0; + $53 = ($52>>>0)<(2); + if ($53) { + label = 9; + break; + } + $54 = HEAP32[$ovflPgno>>2]|0; + $55 = HEAP32[$pBt>>2]|0; + $56 = (_btreePagecount($55)|0); + $57 = ($54>>>0)>($56>>>0); + if ($57) { + label = 9; + break; + } + $59 = HEAP32[$nOvfl>>2]|0; + $60 = ($59|0)!=(0); + if ($60) { + $61 = HEAP32[$pBt>>2]|0; + $62 = HEAP32[$ovflPgno>>2]|0; + $63 = (_getOverflowPage($61,$62,$pOvfl,$iNext)|0); + HEAP32[$rc>>2] = $63; + $64 = HEAP32[$rc>>2]|0; + $65 = ($64|0)!=(0); + if ($65) { + label = 12; + break; + } + } + $67 = HEAP32[$pOvfl>>2]|0; + $68 = ($67|0)!=(0|0); + if ($68) { + label = 15; + } else { + $69 = HEAP32[$pBt>>2]|0; + $70 = HEAP32[$ovflPgno>>2]|0; + $71 = (_btreePageLookup($69,$70)|0); + HEAP32[$pOvfl>>2] = $71; + $72 = ($71|0)!=(0|0); + if ($72) { + label = 15; + } else { + label = 17; + } + } + if ((label|0) == 15) { + label = 0; + $73 = HEAP32[$pOvfl>>2]|0; + $74 = (($73) + 68|0); + $75 = HEAP32[$74>>2]|0; + $76 = (_sqlite3PagerPageRefcount($75)|0); + $77 = ($76|0)!=(1); + if ($77) { + $78 = (_sqlite3CorruptError(56643)|0); + HEAP32[$rc>>2] = $78; + } else { + label = 17; + } + } + if ((label|0) == 17) { + label = 0; + $79 = HEAP32[$pBt>>2]|0; + $80 = HEAP32[$pOvfl>>2]|0; + $81 = HEAP32[$ovflPgno>>2]|0; + $82 = (_freePage2($79,$80,$81)|0); + HEAP32[$rc>>2] = $82; + } + $83 = HEAP32[$pOvfl>>2]|0; + $84 = ($83|0)!=(0|0); + if ($84) { + $85 = HEAP32[$pOvfl>>2]|0; + $86 = (($85) + 68|0); + $87 = HEAP32[$86>>2]|0; + _sqlite3PagerUnref($87); + } + $88 = HEAP32[$rc>>2]|0; + $89 = ($88|0)!=(0); + if ($89) { + label = 21; + break; + } + $91 = HEAP32[$iNext>>2]|0; + HEAP32[$ovflPgno>>2] = $91; + } + if ((label|0) == 9) { + $58 = (_sqlite3CorruptError(56623)|0); + HEAP32[$0>>2] = $58; + $92 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($92|0); + } + else if ((label|0) == 12) { + $66 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $66; + $92 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($92|0); + } + else if ((label|0) == 21) { + $90 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $90; + $92 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($92|0); + } + else if ((label|0) == 23) { + HEAP32[$0>>2] = 0; + $92 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($92|0); + } + return 0|0; +} +function _freePage($pPage,$pRC) { + $pPage = $pPage|0; + $pRC = $pRC|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pPage; + HEAP32[$1>>2] = $pRC; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)==(0); + if (!($4)) { + STACKTOP = sp;return; + } + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 52|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 72|0); + $11 = HEAP32[$10>>2]|0; + $12 = (_freePage2($7,$8,$11)|0); + $13 = HEAP32[$1>>2]|0; + HEAP32[$13>>2] = $12; + STACKTOP = sp;return; +} +function _zeroPage($pPage,$flags) { + $pPage = $pPage|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $data = 0, $first = 0, $hdr = 0, $pBt = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 12|0; + $1 = sp; + $data = sp + 4|0; + $pBt = sp + 8|0; + $hdr = sp + 18|0; + $first = sp + 16|0; + HEAP32[$0>>2] = $pPage; + HEAP32[$1>>2] = $flags; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 56|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$data>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 52|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pBt>>2] = $7; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 5|0); + $10 = HEAP8[$9>>0]|0; + HEAP8[$hdr>>0] = $10; + $11 = HEAP32[$pBt>>2]|0; + $12 = (($11) + 22|0); + $13 = HEAP16[$12>>1]|0; + $14 = $13&65535; + $15 = $14 & 4; + $16 = ($15|0)!=(0); + if ($16) { + $17 = HEAP8[$hdr>>0]|0; + $18 = $17&255; + $19 = HEAP32[$data>>2]|0; + $20 = (($19) + ($18)|0); + $21 = HEAP32[$pBt>>2]|0; + $22 = (($21) + 36|0); + $23 = HEAP32[$22>>2]|0; + $24 = HEAP8[$hdr>>0]|0; + $25 = $24&255; + $26 = (($23) - ($25))|0; + _memset(($20|0),0,($26|0))|0; + } + $27 = HEAP32[$1>>2]|0; + $28 = $27&255; + $29 = HEAP8[$hdr>>0]|0; + $30 = $29&255; + $31 = HEAP32[$data>>2]|0; + $32 = (($31) + ($30)|0); + HEAP8[$32>>0] = $28; + $33 = HEAP8[$hdr>>0]|0; + $34 = $33&255; + $35 = HEAP32[$1>>2]|0; + $36 = $35 & 8; + $37 = ($36|0)==(0); + $38 = $37 ? 12 : 8; + $39 = (($34) + ($38))|0; + $40 = $39&65535; + HEAP16[$first>>1] = $40; + $41 = HEAP8[$hdr>>0]|0; + $42 = $41&255; + $43 = (($42) + 1)|0; + $44 = HEAP32[$data>>2]|0; + $45 = (($44) + ($43)|0); + ;HEAP8[$45+0>>0]=0|0;HEAP8[$45+1>>0]=0|0;HEAP8[$45+2>>0]=0|0;HEAP8[$45+3>>0]=0|0; + $46 = HEAP8[$hdr>>0]|0; + $47 = $46&255; + $48 = (($47) + 7)|0; + $49 = HEAP32[$data>>2]|0; + $50 = (($49) + ($48)|0); + HEAP8[$50>>0] = 0; + $51 = HEAP32[$pBt>>2]|0; + $52 = (($51) + 36|0); + $53 = HEAP32[$52>>2]|0; + $54 = $53 >>> 8; + $55 = $54&255; + $56 = HEAP8[$hdr>>0]|0; + $57 = $56&255; + $58 = (($57) + 5)|0; + $59 = HEAP32[$data>>2]|0; + $60 = (($59) + ($58)|0); + HEAP8[$60>>0] = $55; + $61 = HEAP32[$pBt>>2]|0; + $62 = (($61) + 36|0); + $63 = HEAP32[$62>>2]|0; + $64 = $63&255; + $65 = HEAP8[$hdr>>0]|0; + $66 = $65&255; + $67 = (($66) + 5)|0; + $68 = HEAP32[$data>>2]|0; + $69 = (($68) + ($67)|0); + $70 = (($69) + 1|0); + HEAP8[$70>>0] = $64; + $71 = HEAP32[$pBt>>2]|0; + $72 = (($71) + 36|0); + $73 = HEAP32[$72>>2]|0; + $74 = HEAP16[$first>>1]|0; + $75 = $74&65535; + $76 = (($73) - ($75))|0; + $77 = $76&65535; + $78 = HEAP32[$0>>2]|0; + $79 = (($78) + 14|0); + HEAP16[$79>>1] = $77; + $80 = HEAP32[$0>>2]|0; + $81 = HEAP32[$1>>2]|0; + (_decodeFlags($80,$81)|0); + $82 = HEAP16[$first>>1]|0; + $83 = HEAP32[$0>>2]|0; + $84 = (($83) + 12|0); + HEAP16[$84>>1] = $82; + $85 = HEAP32[$pBt>>2]|0; + $86 = (($85) + 36|0); + $87 = HEAP32[$86>>2]|0; + $88 = HEAP32[$data>>2]|0; + $89 = (($88) + ($87)|0); + $90 = HEAP32[$0>>2]|0; + $91 = (($90) + 60|0); + HEAP32[$91>>2] = $89; + $92 = HEAP16[$first>>1]|0; + $93 = $92&65535; + $94 = HEAP32[$data>>2]|0; + $95 = (($94) + ($93)|0); + $96 = HEAP32[$0>>2]|0; + $97 = (($96) + 64|0); + HEAP32[$97>>2] = $95; + $98 = HEAP32[$0>>2]|0; + $99 = (($98) + 1|0); + HEAP8[$99>>0] = 0; + $100 = HEAP32[$pBt>>2]|0; + $101 = (($100) + 32|0); + $102 = HEAP32[$101>>2]|0; + $103 = (($102) - 1)|0; + $104 = $103&65535; + $105 = HEAP32[$0>>2]|0; + $106 = (($105) + 18|0); + HEAP16[$106>>1] = $104; + $107 = HEAP32[$0>>2]|0; + $108 = (($107) + 16|0); + HEAP16[$108>>1] = 0; + $109 = HEAP32[$0>>2]|0; + HEAP8[$109>>0] = 1; + STACKTOP = sp;return; +} +function _freePage2($pBt,$pMemPage,$iPage) { + $pBt = $pBt|0; + $pMemPage = $pMemPage|0; + $iPage = $iPage|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $iTrunk = 0, $nFree = 0, $nLeaf = 0, $pPage = 0, $pPage1 = 0, $pTrunk = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $pTrunk = sp + 24|0; + $iTrunk = sp + 20|0; + $pPage1 = sp + 16|0; + $pPage = sp + 8|0; + $rc = sp + 4|0; + $nFree = sp; + $nLeaf = sp + 12|0; + HEAP32[$0>>2] = $pBt; + HEAP32[$1>>2] = $pMemPage; + HEAP32[$2>>2] = $iPage; + HEAP32[$pTrunk>>2] = 0; + HEAP32[$iTrunk>>2] = 0; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pPage1>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = HEAP32[$1>>2]|0; + HEAP32[$pPage>>2] = $8; + $9 = HEAP32[$pPage>>2]|0; + $10 = (($9) + 68|0); + $11 = HEAP32[$10>>2]|0; + _sqlite3PagerRef($11); + } else { + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$2>>2]|0; + $14 = (_btreePageLookup($12,$13)|0); + HEAP32[$pPage>>2] = $14; + } + $15 = HEAP32[$pPage1>>2]|0; + $16 = (($15) + 68|0); + $17 = HEAP32[$16>>2]|0; + $18 = (_sqlite3PagerWrite($17)|0); + HEAP32[$rc>>2] = $18; + $19 = HEAP32[$rc>>2]|0; + $20 = ($19|0)!=(0); + do { + if (!($20)) { + $21 = HEAP32[$pPage1>>2]|0; + $22 = (($21) + 56|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + 36|0); + $25 = (_sqlite3Get4byte($24)|0); + HEAP32[$nFree>>2] = $25; + $26 = HEAP32[$pPage1>>2]|0; + $27 = (($26) + 56|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + 36|0); + $30 = HEAP32[$nFree>>2]|0; + $31 = (($30) + 1)|0; + _sqlite3Put4byte($29,$31); + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 22|0); + $34 = HEAP16[$33>>1]|0; + $35 = $34&65535; + $36 = $35 & 4; + $37 = ($36|0)!=(0); + if ($37) { + $38 = HEAP32[$pPage>>2]|0; + $39 = ($38|0)!=(0|0); + if (!($39)) { + $40 = HEAP32[$0>>2]|0; + $41 = HEAP32[$2>>2]|0; + $42 = (_btreeGetPage($40,$41,$pPage,0)|0); + HEAP32[$rc>>2] = $42; + $43 = ($42|0)!=(0); + if ($43) { + break; + } + } + $44 = HEAP32[$pPage>>2]|0; + $45 = (($44) + 68|0); + $46 = HEAP32[$45>>2]|0; + $47 = (_sqlite3PagerWrite($46)|0); + HEAP32[$rc>>2] = $47; + $48 = ($47|0)!=(0); + if ($48) { + break; + } + $49 = HEAP32[$pPage>>2]|0; + $50 = (($49) + 56|0); + $51 = HEAP32[$50>>2]|0; + $52 = HEAP32[$pPage>>2]|0; + $53 = (($52) + 52|0); + $54 = HEAP32[$53>>2]|0; + $55 = (($54) + 32|0); + $56 = HEAP32[$55>>2]|0; + _memset(($51|0),0,($56|0))|0; + } + $57 = HEAP32[$0>>2]|0; + $58 = (($57) + 17|0); + $59 = HEAP8[$58>>0]|0; + $60 = ($59<<24>>24)!=(0); + if ($60) { + $61 = HEAP32[$0>>2]|0; + $62 = HEAP32[$2>>2]|0; + _ptrmapPut($61,$62,2,0,$rc); + $63 = HEAP32[$rc>>2]|0; + $64 = ($63|0)!=(0); + if ($64) { + break; + } + } + $65 = HEAP32[$nFree>>2]|0; + $66 = ($65|0)!=(0); + if ($66) { + $67 = HEAP32[$pPage1>>2]|0; + $68 = (($67) + 56|0); + $69 = HEAP32[$68>>2]|0; + $70 = (($69) + 32|0); + $71 = (_sqlite3Get4byte($70)|0); + HEAP32[$iTrunk>>2] = $71; + $72 = HEAP32[$0>>2]|0; + $73 = HEAP32[$iTrunk>>2]|0; + $74 = (_btreeGetPage($72,$73,$pTrunk,0)|0); + HEAP32[$rc>>2] = $74; + $75 = HEAP32[$rc>>2]|0; + $76 = ($75|0)!=(0); + if ($76) { + break; + } + $77 = HEAP32[$pTrunk>>2]|0; + $78 = (($77) + 56|0); + $79 = HEAP32[$78>>2]|0; + $80 = (($79) + 4|0); + $81 = (_sqlite3Get4byte($80)|0); + HEAP32[$nLeaf>>2] = $81; + $82 = HEAP32[$nLeaf>>2]|0; + $83 = HEAP32[$0>>2]|0; + $84 = (($83) + 36|0); + $85 = HEAP32[$84>>2]|0; + $86 = (($85>>>0) / 4)&-1; + $87 = (($86) - 2)|0; + $88 = ($82>>>0)>($87>>>0); + if ($88) { + $89 = (_sqlite3CorruptError(56528)|0); + HEAP32[$rc>>2] = $89; + break; + } + $90 = HEAP32[$nLeaf>>2]|0; + $91 = HEAP32[$0>>2]|0; + $92 = (($91) + 36|0); + $93 = HEAP32[$92>>2]|0; + $94 = (($93>>>0) / 4)&-1; + $95 = (($94) - 8)|0; + $96 = ($90>>>0)<($95>>>0); + if ($96) { + $97 = HEAP32[$pTrunk>>2]|0; + $98 = (($97) + 68|0); + $99 = HEAP32[$98>>2]|0; + $100 = (_sqlite3PagerWrite($99)|0); + HEAP32[$rc>>2] = $100; + $101 = HEAP32[$rc>>2]|0; + $102 = ($101|0)==(0); + if (!($102)) { + break; + } + $103 = HEAP32[$pTrunk>>2]|0; + $104 = (($103) + 56|0); + $105 = HEAP32[$104>>2]|0; + $106 = (($105) + 4|0); + $107 = HEAP32[$nLeaf>>2]|0; + $108 = (($107) + 1)|0; + _sqlite3Put4byte($106,$108); + $109 = HEAP32[$nLeaf>>2]|0; + $110 = $109<<2; + $111 = (8 + ($110))|0; + $112 = HEAP32[$pTrunk>>2]|0; + $113 = (($112) + 56|0); + $114 = HEAP32[$113>>2]|0; + $115 = (($114) + ($111)|0); + $116 = HEAP32[$2>>2]|0; + _sqlite3Put4byte($115,$116); + $117 = HEAP32[$pPage>>2]|0; + $118 = ($117|0)!=(0|0); + if ($118) { + $119 = HEAP32[$0>>2]|0; + $120 = (($119) + 22|0); + $121 = HEAP16[$120>>1]|0; + $122 = $121&65535; + $123 = $122 & 4; + $124 = ($123|0)==(0); + if ($124) { + $125 = HEAP32[$pPage>>2]|0; + $126 = (($125) + 68|0); + $127 = HEAP32[$126>>2]|0; + _sqlite3PagerDontWrite($127); + } + } + $128 = HEAP32[$0>>2]|0; + $129 = HEAP32[$2>>2]|0; + $130 = (_btreeSetHasContent($128,$129)|0); + HEAP32[$rc>>2] = $130; + break; + } + } + $131 = HEAP32[$pPage>>2]|0; + $132 = ($131|0)==(0|0); + if ($132) { + $133 = HEAP32[$0>>2]|0; + $134 = HEAP32[$2>>2]|0; + $135 = (_btreeGetPage($133,$134,$pPage,0)|0); + HEAP32[$rc>>2] = $135; + $136 = (0)!=($135|0); + if ($136) { + break; + } + } + $137 = HEAP32[$pPage>>2]|0; + $138 = (($137) + 68|0); + $139 = HEAP32[$138>>2]|0; + $140 = (_sqlite3PagerWrite($139)|0); + HEAP32[$rc>>2] = $140; + $141 = HEAP32[$rc>>2]|0; + $142 = ($141|0)!=(0); + if (!($142)) { + $143 = HEAP32[$pPage>>2]|0; + $144 = (($143) + 56|0); + $145 = HEAP32[$144>>2]|0; + $146 = HEAP32[$iTrunk>>2]|0; + _sqlite3Put4byte($145,$146); + $147 = HEAP32[$pPage>>2]|0; + $148 = (($147) + 56|0); + $149 = HEAP32[$148>>2]|0; + $150 = (($149) + 4|0); + _sqlite3Put4byte($150,0); + $151 = HEAP32[$pPage1>>2]|0; + $152 = (($151) + 56|0); + $153 = HEAP32[$152>>2]|0; + $154 = (($153) + 32|0); + $155 = HEAP32[$2>>2]|0; + _sqlite3Put4byte($154,$155); + } + } + } while(0); + $156 = HEAP32[$pPage>>2]|0; + $157 = ($156|0)!=(0|0); + if (!($157)) { + $159 = HEAP32[$pPage>>2]|0; + _releasePage($159); + $160 = HEAP32[$pTrunk>>2]|0; + _releasePage($160); + $161 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($161|0); + } + $158 = HEAP32[$pPage>>2]|0; + HEAP8[$158>>0] = 0; + $159 = HEAP32[$pPage>>2]|0; + _releasePage($159); + $160 = HEAP32[$pTrunk>>2]|0; + _releasePage($160); + $161 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($161|0); +} +function _sqlite3PagerRef($pPg) { + $pPg = $pPg|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPg; + $1 = HEAP32[$0>>2]|0; + _sqlite3PcacheRef($1); + STACKTOP = sp;return; +} +function _btreePageLookup($pBt,$pgno) { + $pBt = $pBt|0; + $pgno = $pgno|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pDbPage = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pDbPage = sp + 8|0; + HEAP32[$1>>2] = $pBt; + HEAP32[$2>>2] = $pgno; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$2>>2]|0; + $6 = (_sqlite3PagerLookup($4,$5)|0); + HEAP32[$pDbPage>>2] = $6; + $7 = HEAP32[$pDbPage>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = HEAP32[$pDbPage>>2]|0; + $10 = HEAP32[$2>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = (_btreePageFromDbPage($9,$10,$11)|0); + HEAP32[$0>>2] = $12; + $13 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($13|0); + } else { + HEAP32[$0>>2] = 0; + $13 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($13|0); + } + return 0|0; +} +function _sqlite3PagerDontWrite($pPg) { + $pPg = $pPg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $pPager = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pPager = sp; + HEAP32[$0>>2] = $pPg; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 16|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pPager>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 24|0); + $6 = HEAP16[$5>>1]|0; + $7 = $6&65535; + $8 = $7 & 2; + $9 = ($8|0)!=(0); + if (!($9)) { + STACKTOP = sp;return; + } + $10 = HEAP32[$pPager>>2]|0; + $11 = (($10) + 96|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)==(0); + if (!($13)) { + STACKTOP = sp;return; + } + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 24|0); + $16 = HEAP16[$15>>1]|0; + $17 = $16&65535; + $18 = $17 | 32; + $19 = $18&65535; + HEAP16[$15>>1] = $19; + STACKTOP = sp;return; +} +function _btreeSetHasContent($pBt,$pgno) { + $pBt = $pBt|0; + $pgno = $pgno|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $pBt; + HEAP32[$1>>2] = $pgno; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 60|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 44|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3BitvecCreate($8)|0); + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 60|0); + HEAP32[$11>>2] = $9; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 60|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)!=(0|0); + if (!($15)) { + HEAP32[$rc>>2] = 7; + } + } + $16 = HEAP32[$rc>>2]|0; + $17 = ($16|0)==(0); + if (!($17)) { + $29 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($29|0); + } + $18 = HEAP32[$1>>2]|0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 60|0); + $21 = HEAP32[$20>>2]|0; + $22 = (_sqlite3BitvecSize($21)|0); + $23 = ($18>>>0)<=($22>>>0); + if (!($23)) { + $29 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($29|0); + } + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 60|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$1>>2]|0; + $28 = (_sqlite3BitvecSet($26,$27)|0); + HEAP32[$rc>>2] = $28; + $29 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($29|0); +} +function _sqlite3PcacheRef($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 26|0); + $3 = HEAP16[$2>>1]|0; + $4 = (($3) + 1)<<16>>16; + HEAP16[$2>>1] = $4; + STACKTOP = sp;return; +} +function _btreeDropTable($p,$iTable,$piMoved) { + $p = $p|0; + $iTable = $iTable|0; + $piMoved = $piMoved|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $maxRootPgno = 0, $pBt = 0, $pMove = 0, $pPage = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $rc = sp + 16|0; + $pPage = sp + 8|0; + $pBt = sp + 4|0; + $maxRootPgno = sp; + $pMove = sp + 12|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $iTable; + HEAP32[$3>>2] = $piMoved; + HEAP32[$pPage>>2] = 0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$pBt>>2] = $6; + $7 = HEAP32[$pBt>>2]|0; + $8 = (($7) + 8|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($9|0)!=(0|0); + if ($10) { + HEAP32[$0>>2] = 262; + $89 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($89|0); + } + $11 = HEAP32[$pBt>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = (_btreeGetPage($11,$12,$pPage,0)|0); + HEAP32[$rc>>2] = $13; + $14 = HEAP32[$rc>>2]|0; + $15 = ($14|0)!=(0); + if ($15) { + $16 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $16; + $89 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($89|0); + } + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = (_sqlite3BtreeClearTable($17,$18,0)|0); + HEAP32[$rc>>2] = $19; + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)!=(0); + if ($21) { + $22 = HEAP32[$pPage>>2]|0; + _releasePage($22); + $23 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $23; + $89 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($89|0); + } + $24 = HEAP32[$3>>2]|0; + HEAP32[$24>>2] = 0; + $25 = HEAP32[$2>>2]|0; + $26 = ($25>>>0)>(1); + do { + if ($26) { + $27 = HEAP32[$pBt>>2]|0; + $28 = (($27) + 17|0); + $29 = HEAP8[$28>>0]|0; + $30 = ($29<<24>>24)!=(0); + if (!($30)) { + $84 = HEAP32[$pPage>>2]|0; + _freePage($84,$rc); + $85 = HEAP32[$pPage>>2]|0; + _releasePage($85); + break; + } + $31 = HEAP32[$1>>2]|0; + _sqlite3BtreeGetMeta($31,4,$maxRootPgno); + $32 = HEAP32[$2>>2]|0; + $33 = HEAP32[$maxRootPgno>>2]|0; + $34 = ($32|0)==($33|0); + $35 = HEAP32[$pPage>>2]|0; + do { + if ($34) { + _freePage($35,$rc); + $36 = HEAP32[$pPage>>2]|0; + _releasePage($36); + $37 = HEAP32[$rc>>2]|0; + $38 = ($37|0)!=(0); + if ($38) { + $39 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $39; + $89 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($89|0); + } + } else { + _releasePage($35); + $40 = HEAP32[$pBt>>2]|0; + $41 = HEAP32[$maxRootPgno>>2]|0; + $42 = (_btreeGetPage($40,$41,$pMove,0)|0); + HEAP32[$rc>>2] = $42; + $43 = HEAP32[$rc>>2]|0; + $44 = ($43|0)!=(0); + if ($44) { + $45 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $45; + $89 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($89|0); + } + $46 = HEAP32[$pBt>>2]|0; + $47 = HEAP32[$pMove>>2]|0; + $48 = HEAP32[$2>>2]|0; + $49 = (_relocatePage($46,$47,1,0,$48,0)|0); + HEAP32[$rc>>2] = $49; + $50 = HEAP32[$pMove>>2]|0; + _releasePage($50); + $51 = HEAP32[$rc>>2]|0; + $52 = ($51|0)!=(0); + if ($52) { + $53 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $53; + $89 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($89|0); + } + HEAP32[$pMove>>2] = 0; + $54 = HEAP32[$pBt>>2]|0; + $55 = HEAP32[$maxRootPgno>>2]|0; + $56 = (_btreeGetPage($54,$55,$pMove,0)|0); + HEAP32[$rc>>2] = $56; + $57 = HEAP32[$pMove>>2]|0; + _freePage($57,$rc); + $58 = HEAP32[$pMove>>2]|0; + _releasePage($58); + $59 = HEAP32[$rc>>2]|0; + $60 = ($59|0)!=(0); + if (!($60)) { + $62 = HEAP32[$maxRootPgno>>2]|0; + $63 = HEAP32[$3>>2]|0; + HEAP32[$63>>2] = $62; + break; + } + $61 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $61; + $89 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($89|0); + } + } while(0); + $64 = HEAP32[$maxRootPgno>>2]|0; + $65 = (($64) + -1)|0; + HEAP32[$maxRootPgno>>2] = $65; + while(1) { + $66 = HEAP32[$maxRootPgno>>2]|0; + $67 = HEAP32[1472>>2]|0; + $68 = HEAP32[$pBt>>2]|0; + $69 = (($68) + 32|0); + $70 = HEAP32[$69>>2]|0; + $71 = (($67>>>0) / ($70>>>0))&-1; + $72 = (($71) + 1)|0; + $73 = ($66|0)==($72|0); + if (!($73)) { + $74 = HEAP32[$pBt>>2]|0; + $75 = HEAP32[$maxRootPgno>>2]|0; + $76 = (_ptrmapPageno($74,$75)|0); + $77 = HEAP32[$maxRootPgno>>2]|0; + $78 = ($76|0)==($77|0); + if (!($78)) { + break; + } + } + $79 = HEAP32[$maxRootPgno>>2]|0; + $80 = (($79) + -1)|0; + HEAP32[$maxRootPgno>>2] = $80; + } + $81 = HEAP32[$1>>2]|0; + $82 = HEAP32[$maxRootPgno>>2]|0; + $83 = (_sqlite3BtreeUpdateMeta($81,4,$82)|0); + HEAP32[$rc>>2] = $83; + } else { + $86 = HEAP32[$pPage>>2]|0; + _zeroPage($86,9); + $87 = HEAP32[$pPage>>2]|0; + _releasePage($87); + } + } while(0); + $88 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $88; + $89 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($89|0); +} +function _vdbeSorterListToPMA($db,$pCsr) { + $db = $db|0; + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $8 = 0, $9 = 0, $p = 0, $pNext = 0, $pSorter = 0, $rc = 0, $writer = 0, dest = 0, label = 0; + var sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 64|0; + $1 = sp + 52|0; + $2 = sp + 40|0; + $rc = sp + 44|0; + $pSorter = sp + 48|0; + $writer = sp; + $p = sp + 56|0; + $pNext = sp + 60|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pCsr; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 64|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pSorter>>2] = $5; + dest=$writer+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $6 = HEAP32[$pSorter>>2]|0; + $7 = (($6) + 16|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)==(0); + if ($9) { + $10 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $10; + $72 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($72|0); + } + $11 = HEAP32[$2>>2]|0; + $12 = (_vdbeSorterSort($11)|0); + HEAP32[$rc>>2] = $12; + $13 = HEAP32[$rc>>2]|0; + $14 = ($13|0)==(0); + if ($14) { + $15 = HEAP32[$pSorter>>2]|0; + $16 = (($15) + 44|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)==(0|0); + if ($18) { + $19 = HEAP32[$1>>2]|0; + $20 = HEAP32[$pSorter>>2]|0; + $21 = (($20) + 44|0); + $22 = (_vdbeSorterOpenTempFile($19,$21)|0); + HEAP32[$rc>>2] = $22; + } + } + $23 = HEAP32[$rc>>2]|0; + $24 = ($23|0)==(0); + if ($24) { + HEAP32[$pNext>>2] = 0; + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$pSorter>>2]|0; + $27 = (($26) + 44|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$pSorter>>2]|0; + $30 = $29; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + _fileWriterInit($25,$28,$writer,$32,$35); + $36 = HEAP32[$pSorter>>2]|0; + $37 = (($36) + 24|0); + $38 = HEAP32[$37>>2]|0; + $39 = (($38) + 1)|0; + HEAP32[$37>>2] = $39; + $40 = HEAP32[$pSorter>>2]|0; + $41 = (($40) + 16|0); + $42 = HEAP32[$41>>2]|0; + $43 = ($42|0)<(0); + $44 = $43 << 31 >> 31; + _fileWriterWriteVarint($writer,$42,$44); + $45 = HEAP32[$pSorter>>2]|0; + $46 = (($45) + 48|0); + $47 = HEAP32[$46>>2]|0; + HEAP32[$p>>2] = $47; + while(1) { + $48 = HEAP32[$p>>2]|0; + $49 = ($48|0)!=(0|0); + $50 = HEAP32[$p>>2]|0; + if (!($49)) { + break; + } + $51 = (($50) + 8|0); + $52 = HEAP32[$51>>2]|0; + HEAP32[$pNext>>2] = $52; + $53 = HEAP32[$p>>2]|0; + $54 = (($53) + 4|0); + $55 = HEAP32[$54>>2]|0; + $56 = ($55|0)<(0); + $57 = $56 << 31 >> 31; + _fileWriterWriteVarint($writer,$55,$57); + $58 = HEAP32[$p>>2]|0; + $59 = HEAP32[$58>>2]|0; + $60 = HEAP32[$p>>2]|0; + $61 = (($60) + 4|0); + $62 = HEAP32[$61>>2]|0; + _fileWriterWrite($writer,$59,$62); + $63 = HEAP32[$1>>2]|0; + $64 = HEAP32[$p>>2]|0; + _sqlite3DbFree($63,$64); + $65 = HEAP32[$pNext>>2]|0; + HEAP32[$p>>2] = $65; + } + $66 = HEAP32[$pSorter>>2]|0; + $67 = (($66) + 48|0); + HEAP32[$67>>2] = $50; + $68 = HEAP32[$1>>2]|0; + $69 = HEAP32[$pSorter>>2]|0; + $70 = (_fileWriterFinish($68,$writer,$69)|0); + HEAP32[$rc>>2] = $70; + } + $71 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $71; + $72 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($72|0); +} +function _vdbeSorterSort($pCsr) { + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aSlot = 0, $i = 0, $p = 0, $pNext = 0, $pSorter = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $i = sp + 4|0; + $aSlot = sp + 8|0; + $p = sp + 12|0; + $pSorter = sp + 16|0; + $pNext = sp + 20|0; + HEAP32[$1>>2] = $pCsr; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 64|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pSorter>>2] = $4; + $5 = (_sqlite3MallocZero(256)|0); + HEAP32[$aSlot>>2] = $5; + $6 = HEAP32[$aSlot>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + HEAP32[$0>>2] = 7; + $53 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($53|0); + } + $8 = HEAP32[$pSorter>>2]|0; + $9 = (($8) + 48|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$p>>2] = $10; + while(1) { + $11 = HEAP32[$p>>2]|0; + $12 = ($11|0)!=(0|0); + if (!($12)) { + break; + } + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 8|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$pNext>>2] = $15; + $16 = HEAP32[$p>>2]|0; + $17 = (($16) + 8|0); + HEAP32[$17>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $18 = HEAP32[$i>>2]|0; + $19 = HEAP32[$aSlot>>2]|0; + $20 = (($19) + ($18<<2)|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)!=(0|0); + if (!($22)) { + break; + } + $23 = HEAP32[$1>>2]|0; + $24 = HEAP32[$p>>2]|0; + $25 = HEAP32[$i>>2]|0; + $26 = HEAP32[$aSlot>>2]|0; + $27 = (($26) + ($25<<2)|0); + $28 = HEAP32[$27>>2]|0; + _vdbeSorterMerge($23,$24,$28,$p); + $29 = HEAP32[$i>>2]|0; + $30 = HEAP32[$aSlot>>2]|0; + $31 = (($30) + ($29<<2)|0); + HEAP32[$31>>2] = 0; + $32 = HEAP32[$i>>2]|0; + $33 = (($32) + 1)|0; + HEAP32[$i>>2] = $33; + } + $34 = HEAP32[$p>>2]|0; + $35 = HEAP32[$i>>2]|0; + $36 = HEAP32[$aSlot>>2]|0; + $37 = (($36) + ($35<<2)|0); + HEAP32[$37>>2] = $34; + $38 = HEAP32[$pNext>>2]|0; + HEAP32[$p>>2] = $38; + } + HEAP32[$p>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $39 = HEAP32[$i>>2]|0; + $40 = ($39|0)<(64); + if (!($40)) { + break; + } + $41 = HEAP32[$1>>2]|0; + $42 = HEAP32[$p>>2]|0; + $43 = HEAP32[$i>>2]|0; + $44 = HEAP32[$aSlot>>2]|0; + $45 = (($44) + ($43<<2)|0); + $46 = HEAP32[$45>>2]|0; + _vdbeSorterMerge($41,$42,$46,$p); + $47 = HEAP32[$i>>2]|0; + $48 = (($47) + 1)|0; + HEAP32[$i>>2] = $48; + } + $49 = HEAP32[$p>>2]|0; + $50 = HEAP32[$pSorter>>2]|0; + $51 = (($50) + 48|0); + HEAP32[$51>>2] = $49; + $52 = HEAP32[$aSlot>>2]|0; + _sqlite3_free($52); + HEAP32[$0>>2] = 0; + $53 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($53|0); +} +function _vdbeSorterOpenTempFile($db,$ppFile) { + $db = $db|0; + $ppFile = $ppFile|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $dummy = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $dummy = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $ppFile; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (_sqlite3OsOpenMalloc($3,0,$4,4126,$dummy)|0); + STACKTOP = sp;return ($5|0); +} +function _fileWriterInit($db,$pFile,$p,$0,$1) { + $db = $db|0; + $pFile = $pFile|0; + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $nBuf = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 20|0; + $3 = sp + 12|0; + $4 = sp + 8|0; + $5 = sp; + $nBuf = sp + 16|0; + HEAP32[$2>>2] = $db; + HEAP32[$3>>2] = $pFile; + HEAP32[$4>>2] = $p; + $6 = $5; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + $10 = HEAP32[$2>>2]|0; + $11 = (($10) + 16|0); + $12 = HEAP32[$11>>2]|0; + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = (_sqlite3BtreeGetPageSize($14)|0); + HEAP32[$nBuf>>2] = $15; + $16 = HEAP32[$4>>2]|0; + dest=$16+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $17 = HEAP32[$2>>2]|0; + $18 = HEAP32[$nBuf>>2]|0; + $19 = (_sqlite3DbMallocRaw($17,$18)|0); + $20 = HEAP32[$4>>2]|0; + $21 = (($20) + 4|0); + HEAP32[$21>>2] = $19; + $22 = HEAP32[$4>>2]|0; + $23 = (($22) + 4|0); + $24 = HEAP32[$23>>2]|0; + $25 = ($24|0)!=(0|0); + if ($25) { + $27 = $5; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (($27) + 4)|0; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = HEAP32[$nBuf>>2]|0; + $34 = ($33|0)<(0); + $35 = $34 << 31 >> 31; + $36 = (___remdi3(($29|0),($32|0),($33|0),($35|0))|0); + $37 = tempRet0; + $38 = HEAP32[$4>>2]|0; + $39 = (($38) + 12|0); + HEAP32[$39>>2] = $36; + $40 = HEAP32[$4>>2]|0; + $41 = (($40) + 16|0); + HEAP32[$41>>2] = $36; + $42 = $5; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = HEAP32[$4>>2]|0; + $49 = (($48) + 12|0); + $50 = HEAP32[$49>>2]|0; + $51 = ($50|0)<(0); + $52 = $51 << 31 >> 31; + $53 = (_i64Subtract(($44|0),($47|0),($50|0),($52|0))|0); + $54 = tempRet0; + $55 = HEAP32[$4>>2]|0; + $56 = (($55) + 24|0); + $57 = $56; + $58 = $57; + HEAP32[$58>>2] = $53; + $59 = (($57) + 4)|0; + $60 = $59; + HEAP32[$60>>2] = $54; + $61 = HEAP32[$nBuf>>2]|0; + $62 = HEAP32[$4>>2]|0; + $63 = (($62) + 8|0); + HEAP32[$63>>2] = $61; + $64 = HEAP32[$3>>2]|0; + $65 = HEAP32[$4>>2]|0; + $66 = (($65) + 32|0); + HEAP32[$66>>2] = $64; + STACKTOP = sp;return; + } else { + $26 = HEAP32[$4>>2]|0; + HEAP32[$26>>2] = 7; + STACKTOP = sp;return; + } +} +function _fileWriterWriteVarint($p,$0,$1) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aByte = 0, $nByte = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 12|0; + $3 = sp; + $nByte = sp + 8|0; + $aByte = sp + 16|0; + HEAP32[$2>>2] = $p; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + $8 = $3; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = (($8) + 4)|0; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = (_sqlite3PutVarint($aByte,$10,$13)|0); + HEAP32[$nByte>>2] = $14; + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$nByte>>2]|0; + _fileWriterWrite($15,$aByte,$16); + STACKTOP = sp;return; +} +function _fileWriterWrite($p,$pData,$nData) { + $p = $p|0; + $pData = $pData|0; + $nData = $nData|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0; + var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; + var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; + var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; + var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; + var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $nCopy = 0, $nRem = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $nRem = sp + 8|0; + $nCopy = sp + 12|0; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $pData; + HEAP32[$2>>2] = $nData; + $3 = HEAP32[$2>>2]|0; + HEAP32[$nRem>>2] = $3; + while(1) { + $4 = HEAP32[$nRem>>2]|0; + $5 = ($4|0)>(0); + if (!($5)) { + label = 9; + break; + } + $6 = HEAP32[$0>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)==(0); + if (!($8)) { + label = 9; + break; + } + $9 = HEAP32[$nRem>>2]|0; + HEAP32[$nCopy>>2] = $9; + $10 = HEAP32[$nCopy>>2]|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 8|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 16|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($13) - ($16))|0; + $18 = ($10|0)>($17|0); + if ($18) { + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 8|0); + $21 = HEAP32[$20>>2]|0; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 16|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($21) - ($24))|0; + HEAP32[$nCopy>>2] = $25; + } + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 16|0); + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$0>>2]|0; + $30 = (($29) + 4|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + ($28)|0); + $33 = HEAP32[$2>>2]|0; + $34 = HEAP32[$nRem>>2]|0; + $35 = (($33) - ($34))|0; + $36 = HEAP32[$1>>2]|0; + $37 = (($36) + ($35)|0); + $38 = HEAP32[$nCopy>>2]|0; + _memcpy(($32|0),($37|0),($38|0))|0; + $39 = HEAP32[$nCopy>>2]|0; + $40 = HEAP32[$0>>2]|0; + $41 = (($40) + 16|0); + $42 = HEAP32[$41>>2]|0; + $43 = (($42) + ($39))|0; + HEAP32[$41>>2] = $43; + $44 = HEAP32[$0>>2]|0; + $45 = (($44) + 16|0); + $46 = HEAP32[$45>>2]|0; + $47 = HEAP32[$0>>2]|0; + $48 = (($47) + 8|0); + $49 = HEAP32[$48>>2]|0; + $50 = ($46|0)==($49|0); + if ($50) { + $51 = HEAP32[$0>>2]|0; + $52 = (($51) + 32|0); + $53 = HEAP32[$52>>2]|0; + $54 = HEAP32[$0>>2]|0; + $55 = (($54) + 12|0); + $56 = HEAP32[$55>>2]|0; + $57 = HEAP32[$0>>2]|0; + $58 = (($57) + 4|0); + $59 = HEAP32[$58>>2]|0; + $60 = (($59) + ($56)|0); + $61 = HEAP32[$0>>2]|0; + $62 = (($61) + 16|0); + $63 = HEAP32[$62>>2]|0; + $64 = HEAP32[$0>>2]|0; + $65 = (($64) + 12|0); + $66 = HEAP32[$65>>2]|0; + $67 = (($63) - ($66))|0; + $68 = HEAP32[$0>>2]|0; + $69 = (($68) + 24|0); + $70 = $69; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = (($70) + 4)|0; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $76 = HEAP32[$0>>2]|0; + $77 = (($76) + 12|0); + $78 = HEAP32[$77>>2]|0; + $79 = ($78|0)<(0); + $80 = $79 << 31 >> 31; + $81 = (_i64Add(($72|0),($75|0),($78|0),($80|0))|0); + $82 = tempRet0; + $83 = (_sqlite3OsWrite($53,$60,$67,$81,$82)|0); + $84 = HEAP32[$0>>2]|0; + HEAP32[$84>>2] = $83; + $85 = HEAP32[$0>>2]|0; + $86 = (($85) + 16|0); + HEAP32[$86>>2] = 0; + $87 = HEAP32[$0>>2]|0; + $88 = (($87) + 12|0); + HEAP32[$88>>2] = 0; + $89 = HEAP32[$0>>2]|0; + $90 = (($89) + 8|0); + $91 = HEAP32[$90>>2]|0; + $92 = ($91|0)<(0); + $93 = $92 << 31 >> 31; + $94 = HEAP32[$0>>2]|0; + $95 = (($94) + 24|0); + $96 = $95; + $97 = $96; + $98 = HEAP32[$97>>2]|0; + $99 = (($96) + 4)|0; + $100 = $99; + $101 = HEAP32[$100>>2]|0; + $102 = (_i64Add(($98|0),($101|0),($91|0),($93|0))|0); + $103 = tempRet0; + $104 = $95; + $105 = $104; + HEAP32[$105>>2] = $102; + $106 = (($104) + 4)|0; + $107 = $106; + HEAP32[$107>>2] = $103; + } + $108 = HEAP32[$nCopy>>2]|0; + $109 = HEAP32[$nRem>>2]|0; + $110 = (($109) - ($108))|0; + HEAP32[$nRem>>2] = $110; + } + if ((label|0) == 9) { + STACKTOP = sp;return; + } +} +function _fileWriterFinish($db,$p,$piEof) { + $db = $db|0; + $p = $p|0; + $piEof = $piEof|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $8 = 0, $9 = 0, $rc = 0; + var dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $piEof; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)==(0); + if ($5) { + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)!=(0|0); + if ($9) { + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 16|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 12|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($12|0)>($15|0); + if ($16) { + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 32|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 12|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = (($25) + ($22)|0); + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 16|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 12|0); + $32 = HEAP32[$31>>2]|0; + $33 = (($29) - ($32))|0; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 24|0); + $36 = $35; + $37 = $36; + $38 = HEAP32[$37>>2]|0; + $39 = (($36) + 4)|0; + $40 = $39; + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$1>>2]|0; + $43 = (($42) + 12|0); + $44 = HEAP32[$43>>2]|0; + $45 = ($44|0)<(0); + $46 = $45 << 31 >> 31; + $47 = (_i64Add(($38|0),($41|0),($44|0),($46|0))|0); + $48 = tempRet0; + $49 = (_sqlite3OsWrite($19,$26,$33,$47,$48)|0); + $50 = HEAP32[$1>>2]|0; + HEAP32[$50>>2] = $49; + } + } + } + $51 = HEAP32[$1>>2]|0; + $52 = (($51) + 24|0); + $53 = $52; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + $56 = (($53) + 4)|0; + $57 = $56; + $58 = HEAP32[$57>>2]|0; + $59 = HEAP32[$1>>2]|0; + $60 = (($59) + 16|0); + $61 = HEAP32[$60>>2]|0; + $62 = ($61|0)<(0); + $63 = $62 << 31 >> 31; + $64 = (_i64Add(($55|0),($58|0),($61|0),($63|0))|0); + $65 = tempRet0; + $66 = HEAP32[$2>>2]|0; + $67 = $66; + $68 = $67; + HEAP32[$68>>2] = $64; + $69 = (($67) + 4)|0; + $70 = $69; + HEAP32[$70>>2] = $65; + $71 = HEAP32[$0>>2]|0; + $72 = HEAP32[$1>>2]|0; + $73 = (($72) + 4|0); + $74 = HEAP32[$73>>2]|0; + _sqlite3DbFree($71,$74); + $75 = HEAP32[$1>>2]|0; + $76 = HEAP32[$75>>2]|0; + HEAP32[$rc>>2] = $76; + $77 = HEAP32[$1>>2]|0; + dest=$77+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $78 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($78|0); +} +function _sqlite3PutVarint($p,$0,$1) { + $p = $p|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; + var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $buf = 0; + var $i = 0, $j = 0, $n = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $2 = sp + 24|0; + $3 = sp + 8|0; + $4 = sp; + $i = sp + 12|0; + $j = sp + 16|0; + $n = sp + 20|0; + $buf = sp + 28|0; + HEAP32[$3>>2] = $p; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + $9 = $4; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = (($9) + 4)|0; + $13 = $12; + $14 = HEAP32[$13>>2]|0; + $15 = $14 & -16777216; + $16 = (0)!=(0); + $17 = ($15|0)!=(0); + $18 = $16 | $17; + if ($18) { + $19 = $4; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (($19) + 4)|0; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = $21&255; + $26 = HEAP32[$3>>2]|0; + $27 = (($26) + 8|0); + HEAP8[$27>>0] = $25; + $28 = $4; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = (($28) + 4)|0; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (_bitshift64Lshr(($30|0),($33|0),8)|0); + $35 = tempRet0; + $36 = $4; + $37 = $36; + HEAP32[$37>>2] = $34; + $38 = (($36) + 4)|0; + $39 = $38; + HEAP32[$39>>2] = $35; + HEAP32[$i>>2] = 7; + while(1) { + $40 = HEAP32[$i>>2]|0; + $41 = ($40|0)>=(0); + if (!($41)) { + break; + } + $42 = $4; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = $44 & 127; + $49 = $48 | 128; + $50 = $49&255; + $51 = HEAP32[$i>>2]|0; + $52 = HEAP32[$3>>2]|0; + $53 = (($52) + ($51)|0); + HEAP8[$53>>0] = $50; + $54 = $4; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = (($54) + 4)|0; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = (_bitshift64Lshr(($56|0),($59|0),7)|0); + $61 = tempRet0; + $62 = $4; + $63 = $62; + HEAP32[$63>>2] = $60; + $64 = (($62) + 4)|0; + $65 = $64; + HEAP32[$65>>2] = $61; + $66 = HEAP32[$i>>2]|0; + $67 = (($66) + -1)|0; + HEAP32[$i>>2] = $67; + } + HEAP32[$2>>2] = 9; + $120 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($120|0); + } + HEAP32[$n>>2] = 0; + while(1) { + $68 = $4; + $69 = $68; + $70 = HEAP32[$69>>2]|0; + $71 = (($68) + 4)|0; + $72 = $71; + $73 = HEAP32[$72>>2]|0; + $74 = $70 & 127; + $75 = $74 | 128; + $76 = $75&255; + $77 = HEAP32[$n>>2]|0; + $78 = (($77) + 1)|0; + HEAP32[$n>>2] = $78; + $79 = (($buf) + ($77)|0); + HEAP8[$79>>0] = $76; + $80 = $4; + $81 = $80; + $82 = HEAP32[$81>>2]|0; + $83 = (($80) + 4)|0; + $84 = $83; + $85 = HEAP32[$84>>2]|0; + $86 = (_bitshift64Lshr(($82|0),($85|0),7)|0); + $87 = tempRet0; + $88 = $4; + $89 = $88; + HEAP32[$89>>2] = $86; + $90 = (($88) + 4)|0; + $91 = $90; + HEAP32[$91>>2] = $87; + $92 = $4; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = (($92) + 4)|0; + $96 = $95; + $97 = HEAP32[$96>>2]|0; + $98 = ($94|0)!=(0); + $99 = ($97|0)!=(0); + $100 = $98 | $99; + if (!($100)) { + break; + } + } + $101 = HEAP8[$buf>>0]|0; + $102 = $101&255; + $103 = $102 & 127; + $104 = $103&255; + HEAP8[$buf>>0] = $104; + HEAP32[$i>>2] = 0; + $105 = HEAP32[$n>>2]|0; + $106 = (($105) - 1)|0; + HEAP32[$j>>2] = $106; + while(1) { + $107 = HEAP32[$j>>2]|0; + $108 = ($107|0)>=(0); + if (!($108)) { + break; + } + $109 = HEAP32[$j>>2]|0; + $110 = (($buf) + ($109)|0); + $111 = HEAP8[$110>>0]|0; + $112 = HEAP32[$i>>2]|0; + $113 = HEAP32[$3>>2]|0; + $114 = (($113) + ($112)|0); + HEAP8[$114>>0] = $111; + $115 = HEAP32[$j>>2]|0; + $116 = (($115) + -1)|0; + HEAP32[$j>>2] = $116; + $117 = HEAP32[$i>>2]|0; + $118 = (($117) + 1)|0; + HEAP32[$i>>2] = $118; + } + $119 = HEAP32[$n>>2]|0; + HEAP32[$2>>2] = $119; + $120 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($120|0); +} +function _sqlite3OsOpenMalloc($pVfs,$zFile,$ppFile,$flags,$pOutFlags) { + $pVfs = $pVfs|0; + $zFile = $zFile|0; + $ppFile = $ppFile|0; + $flags = $flags|0; + $pOutFlags = $pOutFlags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $pFile = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $rc = sp + 16|0; + $pFile = sp + 20|0; + HEAP32[$0>>2] = $pVfs; + HEAP32[$1>>2] = $zFile; + HEAP32[$2>>2] = $ppFile; + HEAP32[$3>>2] = $flags; + HEAP32[$4>>2] = $pOutFlags; + HEAP32[$rc>>2] = 7; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 4|0); + $7 = HEAP32[$6>>2]|0; + $8 = (_sqlite3MallocZero($7)|0); + HEAP32[$pFile>>2] = $8; + $9 = HEAP32[$pFile>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + $21 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($21|0); + } + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$pFile>>2]|0; + $14 = HEAP32[$3>>2]|0; + $15 = HEAP32[$4>>2]|0; + $16 = (_sqlite3OsOpen($11,$12,$13,$14,$15)|0); + HEAP32[$rc>>2] = $16; + $17 = HEAP32[$rc>>2]|0; + $18 = ($17|0)!=(0); + $19 = HEAP32[$pFile>>2]|0; + if ($18) { + _sqlite3_free($19); + $21 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($21|0); + } else { + $20 = HEAP32[$2>>2]|0; + HEAP32[$20>>2] = $19; + $21 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($21|0); + } + return 0|0; +} +function _vdbeSorterMerge($pCsr,$p1,$p2,$ppOut) { + $pCsr = $pCsr|0; + $p1 = $p1|0; + $p2 = $p2|0; + $ppOut = $ppOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pFinal = 0, $pVal2 = 0, $pp = 0, $res = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pFinal = sp + 12|0; + $pp = sp + 16|0; + $pVal2 = sp + 20|0; + $res = sp + 24|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $p1; + HEAP32[$2>>2] = $p2; + HEAP32[$3>>2] = $ppOut; + HEAP32[$pFinal>>2] = 0; + HEAP32[$pp>>2] = $pFinal; + $4 = HEAP32[$2>>2]|0; + $5 = ($4|0)!=(0|0); + if ($5) { + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = $7; + } else { + $8 = 0; + } + HEAP32[$pVal2>>2] = $8; + while(1) { + $9 = HEAP32[$1>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + break; + } + $11 = HEAP32[$2>>2]|0; + $12 = ($11|0)!=(0|0); + if (!($12)) { + break; + } + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 4|0); + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$pVal2>>2]|0; + $20 = HEAP32[$2>>2]|0; + $21 = (($20) + 4|0); + $22 = HEAP32[$21>>2]|0; + _vdbeSorterCompare($13,0,$15,$18,$19,$22,$res); + $23 = HEAP32[$res>>2]|0; + $24 = ($23|0)<=(0); + if ($24) { + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$pp>>2]|0; + HEAP32[$26>>2] = $25; + $27 = HEAP32[$1>>2]|0; + $28 = (($27) + 8|0); + HEAP32[$pp>>2] = $28; + $29 = HEAP32[$1>>2]|0; + $30 = (($29) + 8|0); + $31 = HEAP32[$30>>2]|0; + HEAP32[$1>>2] = $31; + HEAP32[$pVal2>>2] = 0; + continue; + } + $32 = HEAP32[$2>>2]|0; + $33 = HEAP32[$pp>>2]|0; + HEAP32[$33>>2] = $32; + $34 = HEAP32[$2>>2]|0; + $35 = (($34) + 8|0); + HEAP32[$pp>>2] = $35; + $36 = HEAP32[$2>>2]|0; + $37 = (($36) + 8|0); + $38 = HEAP32[$37>>2]|0; + HEAP32[$2>>2] = $38; + $39 = HEAP32[$2>>2]|0; + $40 = ($39|0)==(0|0); + if ($40) { + break; + } + $41 = HEAP32[$2>>2]|0; + $42 = HEAP32[$41>>2]|0; + HEAP32[$pVal2>>2] = $42; + } + $43 = HEAP32[$1>>2]|0; + $44 = ($43|0)!=(0|0); + $45 = HEAP32[$1>>2]|0; + $46 = HEAP32[$2>>2]|0; + $47 = $44 ? $45 : $46; + $48 = HEAP32[$pp>>2]|0; + HEAP32[$48>>2] = $47; + $49 = HEAP32[$pFinal>>2]|0; + $50 = HEAP32[$3>>2]|0; + HEAP32[$50>>2] = $49; + STACKTOP = sp;return; +} +function _vdbeSorterCompare($pCsr,$nIgnore,$pKey1,$nKey1,$pKey2,$nKey2,$pRes) { + $pCsr = $pCsr|0; + $nIgnore = $nIgnore|0; + $pKey1 = $pKey1|0; + $nKey1 = $nKey1|0; + $pKey2 = $pKey2|0; + $nKey2 = $nKey2|0; + $pRes = $pRes|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pKeyInfo = 0, $pSorter = 0; + var $r2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $4 = sp + 24|0; + $5 = sp + 20|0; + $6 = sp + 12|0; + $pKeyInfo = sp + 8|0; + $pSorter = sp + 4|0; + $r2 = sp; + $i = sp + 16|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $nIgnore; + HEAP32[$2>>2] = $pKey1; + HEAP32[$3>>2] = $nKey1; + HEAP32[$4>>2] = $pKey2; + HEAP32[$5>>2] = $nKey2; + HEAP32[$6>>2] = $pRes; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 8|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$pKeyInfo>>2] = $9; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 64|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$pSorter>>2] = $12; + $13 = HEAP32[$pSorter>>2]|0; + $14 = (($13) + 52|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$r2>>2] = $15; + $16 = HEAP32[$4>>2]|0; + $17 = ($16|0)!=(0|0); + if ($17) { + $18 = HEAP32[$pKeyInfo>>2]|0; + $19 = HEAP32[$5>>2]|0; + $20 = HEAP32[$4>>2]|0; + $21 = HEAP32[$r2>>2]|0; + _sqlite3VdbeRecordUnpack($18,$19,$20,$21); + } + $22 = HEAP32[$1>>2]|0; + $23 = ($22|0)!=(0); + L4: do { + if ($23) { + $24 = HEAP32[$pKeyInfo>>2]|0; + $25 = (($24) + 6|0); + $26 = HEAP16[$25>>1]|0; + $27 = $26&65535; + $28 = HEAP32[$1>>2]|0; + $29 = (($27) - ($28))|0; + $30 = $29&65535; + $31 = HEAP32[$r2>>2]|0; + $32 = (($31) + 4|0); + HEAP16[$32>>1] = $30; + HEAP32[$i>>2] = 0; + while(1) { + $33 = HEAP32[$i>>2]|0; + $34 = HEAP32[$r2>>2]|0; + $35 = (($34) + 4|0); + $36 = HEAP16[$35>>1]|0; + $37 = $36&65535; + $38 = ($33|0)<($37|0); + if (!($38)) { + break L4; + } + $39 = HEAP32[$i>>2]|0; + $40 = HEAP32[$r2>>2]|0; + $41 = (($40) + 8|0); + $42 = HEAP32[$41>>2]|0; + $43 = (($42) + (($39*40)|0)|0); + $44 = (($43) + 28|0); + $45 = HEAP16[$44>>1]|0; + $46 = $45&65535; + $47 = $46 & 1; + $48 = ($47|0)!=(0); + if ($48) { + break; + } + $50 = HEAP32[$i>>2]|0; + $51 = (($50) + 1)|0; + HEAP32[$i>>2] = $51; + } + $49 = HEAP32[$6>>2]|0; + HEAP32[$49>>2] = -1; + STACKTOP = sp;return; + } + } while(0); + $52 = HEAP32[$3>>2]|0; + $53 = HEAP32[$2>>2]|0; + $54 = HEAP32[$r2>>2]|0; + $55 = (_sqlite3VdbeRecordCompare($52,$53,$54,0)|0); + $56 = HEAP32[$6>>2]|0; + HEAP32[$56>>2] = $55; + STACKTOP = sp;return; +} +function _vdbeSorterIterNext($db,$pIter) { + $db = $db|0; + $pIter = $pIter|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nRec = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp + 16|0; + $2 = sp + 8|0; + $rc = sp + 12|0; + $nRec = sp; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $pIter; + $3 = $nRec; + $4 = $3; + HEAP32[$4>>2] = 0; + $5 = (($3) + 4)|0; + $6 = $5; + HEAP32[$6>>2] = 0; + $7 = HEAP32[$2>>2]|0; + $8 = $7; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = (($8) + 4)|0; + $12 = $11; + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = (($14) + 8|0); + $16 = $15; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = (($16) + 4)|0; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = ($13|0)>($21|0); + $23 = ($13|0)==($21|0); + $24 = ($10>>>0)>=($18>>>0); + $25 = $23 & $24; + $26 = $22 | $25; + $27 = HEAP32[$1>>2]|0; + $28 = HEAP32[$2>>2]|0; + if ($26) { + _vdbeSorterIterZero($27,$28); + HEAP32[$0>>2] = 0; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); + } + $29 = (_vdbeSorterIterVarint($27,$28,$nRec)|0); + HEAP32[$rc>>2] = $29; + $30 = HEAP32[$rc>>2]|0; + $31 = ($30|0)==(0); + if ($31) { + $32 = $nRec; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = (($32) + 4)|0; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$2>>2]|0; + $39 = (($38) + 20|0); + HEAP32[$39>>2] = $34; + $40 = HEAP32[$1>>2]|0; + $41 = HEAP32[$2>>2]|0; + $42 = $nRec; + $43 = $42; + $44 = HEAP32[$43>>2]|0; + $45 = (($42) + 4)|0; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = HEAP32[$2>>2]|0; + $49 = (($48) + 32|0); + $50 = (_vdbeSorterIterRead($40,$41,$44,$49)|0); + HEAP32[$rc>>2] = $50; + } + $51 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $51; + $52 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($52|0); +} +function _vdbeSorterIterVarint($db,$p,$pnOut) { + $db = $db|0; + $p = $p|0; + $pnOut = $pnOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0, $aVarint = 0, $i = 0, $iBuf = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 28|0; + $1 = sp + 24|0; + $2 = sp + 20|0; + $3 = sp + 16|0; + $iBuf = sp + 12|0; + $aVarint = sp + 32|0; + $a = sp + 4|0; + $i = sp; + $rc = sp + 8|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $pnOut; + $4 = HEAP32[$2>>2]|0; + $5 = $4; + $6 = $5; + $7 = HEAP32[$6>>2]|0; + $8 = (($5) + 4)|0; + $9 = $8; + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 40|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)<(0); + $15 = $14 << 31 >> 31; + $16 = (___remdi3(($7|0),($10|0),($13|0),($15|0))|0); + $17 = tempRet0; + HEAP32[$iBuf>>2] = $16; + $18 = HEAP32[$iBuf>>2]|0; + $19 = ($18|0)!=(0); + if ($19) { + $20 = HEAP32[$2>>2]|0; + $21 = (($20) + 40|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$iBuf>>2]|0; + $24 = (($22) - ($23))|0; + $25 = ($24|0)>=(9); + if ($25) { + $26 = HEAP32[$iBuf>>2]|0; + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + 36|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + ($26)|0); + $31 = HEAP32[$3>>2]|0; + $32 = (_sqlite3GetVarint($30,$31)|0); + $33 = $32&255; + $34 = HEAP32[$2>>2]|0; + $35 = $34; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = (($35) + 4)|0; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = (_i64Add(($37|0),($40|0),($33|0),0)|0); + $42 = tempRet0; + $43 = $34; + $44 = $43; + HEAP32[$44>>2] = $41; + $45 = (($43) + 4)|0; + $46 = $45; + HEAP32[$46>>2] = $42; + } else { + label = 4; + } + } else { + label = 4; + } + do { + if ((label|0) == 4) { + HEAP32[$i>>2] = 0; + while(1) { + $47 = HEAP32[$1>>2]|0; + $48 = HEAP32[$2>>2]|0; + $49 = (_vdbeSorterIterRead($47,$48,1,$a)|0); + HEAP32[$rc>>2] = $49; + $50 = HEAP32[$rc>>2]|0; + $51 = ($50|0)!=(0); + if ($51) { + break; + } + $53 = HEAP32[$a>>2]|0; + $54 = HEAP8[$53>>0]|0; + $55 = HEAP32[$i>>2]|0; + $56 = (($55) + 1)|0; + HEAP32[$i>>2] = $56; + $57 = $55 & 15; + $58 = (($aVarint) + ($57)|0); + HEAP8[$58>>0] = $54; + $59 = HEAP32[$a>>2]|0; + $60 = HEAP8[$59>>0]|0; + $61 = $60&255; + $62 = $61 & 128; + $63 = ($62|0)!=(0); + if (!($63)) { + label = 8; + break; + } + } + if ((label|0) == 8) { + $64 = HEAP32[$3>>2]|0; + (_sqlite3GetVarint($aVarint,$64)|0); + break; + } + $52 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $52; + $65 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($65|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $65 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($65|0); +} +function _vdbeSorterIterRead($db,$p,$nByte,$ppOut) { + $db = $db|0; + $p = $p|0; + $nByte = $nByte|0; + $ppOut = $ppOut|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; + var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; + var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; + var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; + var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aNext = 0, $iBuf = 0, $nAvail = 0, $nCopy = 0, $nNew = 0, $nRead = 0, $nRem = 0, $rc = 0, $rc1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 52|0; + $1 = sp + 48|0; + $2 = sp + 44|0; + $3 = sp + 40|0; + $4 = sp + 36|0; + $iBuf = sp + 32|0; + $nAvail = sp + 28|0; + $nRead = sp + 24|0; + $rc = sp + 16|0; + $nRem = sp + 12|0; + $nNew = sp + 8|0; + $rc1 = sp + 4|0; + $nCopy = sp; + $aNext = sp + 20|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $p; + HEAP32[$3>>2] = $nByte; + HEAP32[$4>>2] = $ppOut; + $5 = HEAP32[$2>>2]|0; + $6 = $5; + $7 = $6; + $8 = HEAP32[$7>>2]|0; + $9 = (($6) + 4)|0; + $10 = $9; + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$2>>2]|0; + $13 = (($12) + 40|0); + $14 = HEAP32[$13>>2]|0; + $15 = ($14|0)<(0); + $16 = $15 << 31 >> 31; + $17 = (___remdi3(($8|0),($11|0),($14|0),($16|0))|0); + $18 = tempRet0; + HEAP32[$iBuf>>2] = $17; + $19 = HEAP32[$iBuf>>2]|0; + $20 = ($19|0)==(0); + if ($20) { + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 8|0); + $23 = $22; + $24 = $23; + $25 = HEAP32[$24>>2]|0; + $26 = (($23) + 4)|0; + $27 = $26; + $28 = HEAP32[$27>>2]|0; + $29 = HEAP32[$2>>2]|0; + $30 = $29; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + $33 = (($30) + 4)|0; + $34 = $33; + $35 = HEAP32[$34>>2]|0; + $36 = (_i64Subtract(($25|0),($28|0),($32|0),($35|0))|0); + $37 = tempRet0; + $38 = HEAP32[$2>>2]|0; + $39 = (($38) + 40|0); + $40 = HEAP32[$39>>2]|0; + $41 = ($40|0)<(0); + $42 = $41 << 31 >> 31; + $43 = ($37|0)>($42|0); + $44 = ($37|0)==($42|0); + $45 = ($36>>>0)>($40>>>0); + $46 = $44 & $45; + $47 = $43 | $46; + $48 = HEAP32[$2>>2]|0; + if ($47) { + $49 = (($48) + 40|0); + $50 = HEAP32[$49>>2]|0; + HEAP32[$nRead>>2] = $50; + } else { + $51 = (($48) + 8|0); + $52 = $51; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = (($52) + 4)|0; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = HEAP32[$2>>2]|0; + $59 = $58; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = (($59) + 4)|0; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = (_i64Subtract(($54|0),($57|0),($61|0),($64|0))|0); + $66 = tempRet0; + HEAP32[$nRead>>2] = $65; + } + $67 = HEAP32[$2>>2]|0; + $68 = (($67) + 24|0); + $69 = HEAP32[$68>>2]|0; + $70 = HEAP32[$2>>2]|0; + $71 = (($70) + 36|0); + $72 = HEAP32[$71>>2]|0; + $73 = HEAP32[$nRead>>2]|0; + $74 = HEAP32[$2>>2]|0; + $75 = $74; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = (($75) + 4)|0; + $79 = $78; + $80 = HEAP32[$79>>2]|0; + $81 = (_sqlite3OsRead($69,$72,$73,$77,$80)|0); + HEAP32[$rc>>2] = $81; + $82 = HEAP32[$rc>>2]|0; + $83 = ($82|0)!=(0); + if ($83) { + $84 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $84; + $206 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($206|0); + } + } + $85 = HEAP32[$2>>2]|0; + $86 = (($85) + 40|0); + $87 = HEAP32[$86>>2]|0; + $88 = HEAP32[$iBuf>>2]|0; + $89 = (($87) - ($88))|0; + HEAP32[$nAvail>>2] = $89; + $90 = HEAP32[$3>>2]|0; + $91 = HEAP32[$nAvail>>2]|0; + $92 = ($90|0)<=($91|0); + do { + if ($92) { + $93 = HEAP32[$iBuf>>2]|0; + $94 = HEAP32[$2>>2]|0; + $95 = (($94) + 36|0); + $96 = HEAP32[$95>>2]|0; + $97 = (($96) + ($93)|0); + $98 = HEAP32[$4>>2]|0; + HEAP32[$98>>2] = $97; + $99 = HEAP32[$3>>2]|0; + $100 = ($99|0)<(0); + $101 = $100 << 31 >> 31; + $102 = HEAP32[$2>>2]|0; + $103 = $102; + $104 = $103; + $105 = HEAP32[$104>>2]|0; + $106 = (($103) + 4)|0; + $107 = $106; + $108 = HEAP32[$107>>2]|0; + $109 = (_i64Add(($105|0),($108|0),($99|0),($101|0))|0); + $110 = tempRet0; + $111 = $102; + $112 = $111; + HEAP32[$112>>2] = $109; + $113 = (($111) + 4)|0; + $114 = $113; + HEAP32[$114>>2] = $110; + } else { + $115 = HEAP32[$2>>2]|0; + $116 = (($115) + 16|0); + $117 = HEAP32[$116>>2]|0; + $118 = HEAP32[$3>>2]|0; + $119 = ($117|0)<($118|0); + do { + if ($119) { + $120 = HEAP32[$2>>2]|0; + $121 = (($120) + 16|0); + $122 = HEAP32[$121>>2]|0; + $123 = $122<<1; + HEAP32[$nNew>>2] = $123; + while(1) { + $124 = HEAP32[$3>>2]|0; + $125 = HEAP32[$nNew>>2]|0; + $126 = ($124|0)>($125|0); + if (!($126)) { + break; + } + $127 = HEAP32[$nNew>>2]|0; + $128 = $127<<1; + HEAP32[$nNew>>2] = $128; + } + $129 = HEAP32[$1>>2]|0; + $130 = HEAP32[$2>>2]|0; + $131 = (($130) + 28|0); + $132 = HEAP32[$131>>2]|0; + $133 = HEAP32[$nNew>>2]|0; + $134 = (_sqlite3DbReallocOrFree($129,$132,$133)|0); + $135 = HEAP32[$2>>2]|0; + $136 = (($135) + 28|0); + HEAP32[$136>>2] = $134; + $137 = HEAP32[$2>>2]|0; + $138 = (($137) + 28|0); + $139 = HEAP32[$138>>2]|0; + $140 = ($139|0)!=(0|0); + if ($140) { + $141 = HEAP32[$nNew>>2]|0; + $142 = HEAP32[$2>>2]|0; + $143 = (($142) + 16|0); + HEAP32[$143>>2] = $141; + break; + } + HEAP32[$0>>2] = 7; + $206 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($206|0); + } + } while(0); + $144 = HEAP32[$2>>2]|0; + $145 = (($144) + 28|0); + $146 = HEAP32[$145>>2]|0; + $147 = HEAP32[$iBuf>>2]|0; + $148 = HEAP32[$2>>2]|0; + $149 = (($148) + 36|0); + $150 = HEAP32[$149>>2]|0; + $151 = (($150) + ($147)|0); + $152 = HEAP32[$nAvail>>2]|0; + _memcpy(($146|0),($151|0),($152|0))|0; + $153 = HEAP32[$nAvail>>2]|0; + $154 = ($153|0)<(0); + $155 = $154 << 31 >> 31; + $156 = HEAP32[$2>>2]|0; + $157 = $156; + $158 = $157; + $159 = HEAP32[$158>>2]|0; + $160 = (($157) + 4)|0; + $161 = $160; + $162 = HEAP32[$161>>2]|0; + $163 = (_i64Add(($159|0),($162|0),($153|0),($155|0))|0); + $164 = tempRet0; + $165 = $156; + $166 = $165; + HEAP32[$166>>2] = $163; + $167 = (($165) + 4)|0; + $168 = $167; + HEAP32[$168>>2] = $164; + $169 = HEAP32[$3>>2]|0; + $170 = HEAP32[$nAvail>>2]|0; + $171 = (($169) - ($170))|0; + HEAP32[$nRem>>2] = $171; + while(1) { + $172 = HEAP32[$nRem>>2]|0; + $173 = ($172|0)>(0); + if (!($173)) { + label = 23; + break; + } + $174 = HEAP32[$nRem>>2]|0; + HEAP32[$nCopy>>2] = $174; + $175 = HEAP32[$nRem>>2]|0; + $176 = HEAP32[$2>>2]|0; + $177 = (($176) + 40|0); + $178 = HEAP32[$177>>2]|0; + $179 = ($175|0)>($178|0); + if ($179) { + $180 = HEAP32[$2>>2]|0; + $181 = (($180) + 40|0); + $182 = HEAP32[$181>>2]|0; + HEAP32[$nCopy>>2] = $182; + } + $183 = HEAP32[$1>>2]|0; + $184 = HEAP32[$2>>2]|0; + $185 = HEAP32[$nCopy>>2]|0; + $186 = (_vdbeSorterIterRead($183,$184,$185,$aNext)|0); + HEAP32[$rc1>>2] = $186; + $187 = HEAP32[$rc1>>2]|0; + $188 = ($187|0)!=(0); + if ($188) { + break; + } + $190 = HEAP32[$3>>2]|0; + $191 = HEAP32[$nRem>>2]|0; + $192 = (($190) - ($191))|0; + $193 = HEAP32[$2>>2]|0; + $194 = (($193) + 28|0); + $195 = HEAP32[$194>>2]|0; + $196 = (($195) + ($192)|0); + $197 = HEAP32[$aNext>>2]|0; + $198 = HEAP32[$nCopy>>2]|0; + _memcpy(($196|0),($197|0),($198|0))|0; + $199 = HEAP32[$nCopy>>2]|0; + $200 = HEAP32[$nRem>>2]|0; + $201 = (($200) - ($199))|0; + HEAP32[$nRem>>2] = $201; + } + if ((label|0) == 23) { + $202 = HEAP32[$2>>2]|0; + $203 = (($202) + 28|0); + $204 = HEAP32[$203>>2]|0; + $205 = HEAP32[$4>>2]|0; + HEAP32[$205>>2] = $204; + break; + } + $189 = HEAP32[$rc1>>2]|0; + HEAP32[$0>>2] = $189; + $206 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($206|0); + } + } while(0); + HEAP32[$0>>2] = 0; + $206 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($206|0); +} +function _vdbeSorterInitMerge($db,$pCsr,$pnByte) { + $db = $db|0; + $pCsr = $pCsr|0; + $pnByte = $pnByte|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $i = 0, $nByte = 0, $pIter = 0, $pSorter = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 24|0; + $2 = sp + 8|0; + $pSorter = sp + 12|0; + $rc = sp + 16|0; + $i = sp + 20|0; + $nByte = sp; + $pIter = sp + 28|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pCsr; + HEAP32[$2>>2] = $pnByte; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 64|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pSorter>>2] = $5; + HEAP32[$rc>>2] = 0; + $6 = $nByte; + $7 = $6; + HEAP32[$7>>2] = 0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $10 = HEAP32[$i>>2]|0; + $11 = ($10|0)<(16); + if (!($11)) { + break; + } + $12 = HEAP32[$i>>2]|0; + $13 = HEAP32[$pSorter>>2]|0; + $14 = (($13) + 36|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + (($12*48)|0)|0); + HEAP32[$pIter>>2] = $16; + $17 = HEAP32[$0>>2]|0; + $18 = HEAP32[$pSorter>>2]|0; + $19 = HEAP32[$pSorter>>2]|0; + $20 = (($19) + 8|0); + $21 = $20; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (($21) + 4)|0; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$pIter>>2]|0; + $28 = (_vdbeSorterIterInit($17,$18,$23,$26,$27,$nByte)|0); + HEAP32[$rc>>2] = $28; + $29 = HEAP32[$pIter>>2]|0; + $30 = (($29) + 8|0); + $31 = $30; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = HEAP32[$pSorter>>2]|0; + $38 = (($37) + 8|0); + $39 = $38; + $40 = $39; + HEAP32[$40>>2] = $33; + $41 = (($39) + 4)|0; + $42 = $41; + HEAP32[$42>>2] = $36; + $43 = HEAP32[$rc>>2]|0; + $44 = ($43|0)!=(0); + if ($44) { + break; + } + $45 = HEAP32[$pSorter>>2]|0; + $46 = (($45) + 8|0); + $47 = $46; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = (($47) + 4)|0; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = HEAP32[$pSorter>>2]|0; + $54 = $53; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = (($54) + 4)|0; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = ($52|0)>($59|0); + $61 = ($52|0)==($59|0); + $62 = ($49>>>0)>=($56>>>0); + $63 = $61 & $62; + $64 = $60 | $63; + if ($64) { + break; + } + $65 = HEAP32[$i>>2]|0; + $66 = (($65) + 1)|0; + HEAP32[$i>>2] = $66; + } + $67 = HEAP32[$pSorter>>2]|0; + $68 = (($67) + 20|0); + $69 = HEAP32[$68>>2]|0; + $70 = (($69) - 1)|0; + HEAP32[$i>>2] = $70; + while(1) { + $71 = HEAP32[$rc>>2]|0; + $72 = ($71|0)==(0); + if (!($72)) { + label = 10; + break; + } + $73 = HEAP32[$i>>2]|0; + $74 = ($73|0)>(0); + if (!($74)) { + label = 10; + break; + } + $75 = HEAP32[$1>>2]|0; + $76 = HEAP32[$i>>2]|0; + $77 = (_vdbeSorterDoCompare($75,$76)|0); + HEAP32[$rc>>2] = $77; + $78 = HEAP32[$i>>2]|0; + $79 = (($78) + -1)|0; + HEAP32[$i>>2] = $79; + } + if ((label|0) == 10) { + $80 = $nByte; + $81 = $80; + $82 = HEAP32[$81>>2]|0; + $83 = (($80) + 4)|0; + $84 = $83; + $85 = HEAP32[$84>>2]|0; + $86 = HEAP32[$2>>2]|0; + $87 = $86; + $88 = $87; + HEAP32[$88>>2] = $82; + $89 = (($87) + 4)|0; + $90 = $89; + HEAP32[$90>>2] = $85; + $91 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($91|0); + } + return 0|0; +} +function _vdbeSorterIterInit($db,$pSorter,$0,$1,$pIter,$pnByte) { + $db = $db|0; + $pSorter = $pSorter|0; + $0 = $0|0; + $1 = $1|0; + $pIter = $pIter|0; + $pnByte = $pnByte|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; + var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $iBuf = 0, $nBuf = 0, $nByte = 0, $nRead = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $2 = sp + 44|0; + $3 = sp + 40|0; + $4 = sp; + $5 = sp + 36|0; + $6 = sp + 32|0; + $rc = sp + 28|0; + $nBuf = sp + 20|0; + $iBuf = sp + 16|0; + $nRead = sp + 24|0; + $nByte = sp + 8|0; + HEAP32[$2>>2] = $db; + HEAP32[$3>>2] = $pSorter; + $7 = $4; + $8 = $7; + HEAP32[$8>>2] = $0; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = $1; + HEAP32[$5>>2] = $pIter; + HEAP32[$6>>2] = $pnByte; + HEAP32[$rc>>2] = 0; + $11 = HEAP32[$2>>2]|0; + $12 = (($11) + 16|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = (_sqlite3BtreeGetPageSize($15)|0); + HEAP32[$nBuf>>2] = $16; + $17 = HEAP32[$3>>2]|0; + $18 = (($17) + 44|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$5>>2]|0; + $21 = (($20) + 24|0); + HEAP32[$21>>2] = $19; + $22 = $4; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = (($22) + 4)|0; + $26 = $25; + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$5>>2]|0; + $29 = $28; + $30 = $29; + HEAP32[$30>>2] = $24; + $31 = (($29) + 4)|0; + $32 = $31; + HEAP32[$32>>2] = $27; + $33 = HEAP32[$5>>2]|0; + $34 = (($33) + 16|0); + HEAP32[$34>>2] = 128; + $35 = HEAP32[$2>>2]|0; + $36 = HEAP32[$5>>2]|0; + $37 = (($36) + 16|0); + $38 = HEAP32[$37>>2]|0; + $39 = (_sqlite3DbMallocRaw($35,$38)|0); + $40 = HEAP32[$5>>2]|0; + $41 = (($40) + 28|0); + HEAP32[$41>>2] = $39; + $42 = HEAP32[$nBuf>>2]|0; + $43 = HEAP32[$5>>2]|0; + $44 = (($43) + 40|0); + HEAP32[$44>>2] = $42; + $45 = HEAP32[$2>>2]|0; + $46 = HEAP32[$nBuf>>2]|0; + $47 = (_sqlite3DbMallocRaw($45,$46)|0); + $48 = HEAP32[$5>>2]|0; + $49 = (($48) + 36|0); + HEAP32[$49>>2] = $47; + $50 = HEAP32[$5>>2]|0; + $51 = (($50) + 36|0); + $52 = HEAP32[$51>>2]|0; + $53 = ($52|0)!=(0|0); + if ($53) { + $54 = $4; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = (($54) + 4)|0; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = HEAP32[$nBuf>>2]|0; + $61 = ($60|0)<(0); + $62 = $61 << 31 >> 31; + $63 = (___remdi3(($56|0),($59|0),($60|0),($62|0))|0); + $64 = tempRet0; + HEAP32[$iBuf>>2] = $63; + $65 = HEAP32[$iBuf>>2]|0; + $66 = ($65|0)!=(0); + if ($66) { + $67 = HEAP32[$nBuf>>2]|0; + $68 = HEAP32[$iBuf>>2]|0; + $69 = (($67) - ($68))|0; + HEAP32[$nRead>>2] = $69; + $70 = $4; + $71 = $70; + $72 = HEAP32[$71>>2]|0; + $73 = (($70) + 4)|0; + $74 = $73; + $75 = HEAP32[$74>>2]|0; + $76 = HEAP32[$nRead>>2]|0; + $77 = ($76|0)<(0); + $78 = $77 << 31 >> 31; + $79 = (_i64Add(($72|0),($75|0),($76|0),($78|0))|0); + $80 = tempRet0; + $81 = HEAP32[$3>>2]|0; + $82 = $81; + $83 = $82; + $84 = HEAP32[$83>>2]|0; + $85 = (($82) + 4)|0; + $86 = $85; + $87 = HEAP32[$86>>2]|0; + $88 = ($80|0)>($87|0); + $89 = ($80|0)==($87|0); + $90 = ($79>>>0)>($84>>>0); + $91 = $89 & $90; + $92 = $88 | $91; + if ($92) { + $93 = HEAP32[$3>>2]|0; + $94 = $93; + $95 = $94; + $96 = HEAP32[$95>>2]|0; + $97 = (($94) + 4)|0; + $98 = $97; + $99 = HEAP32[$98>>2]|0; + $100 = $4; + $101 = $100; + $102 = HEAP32[$101>>2]|0; + $103 = (($100) + 4)|0; + $104 = $103; + $105 = HEAP32[$104>>2]|0; + $106 = (_i64Subtract(($96|0),($99|0),($102|0),($105|0))|0); + $107 = tempRet0; + HEAP32[$nRead>>2] = $106; + } + $108 = HEAP32[$3>>2]|0; + $109 = (($108) + 44|0); + $110 = HEAP32[$109>>2]|0; + $111 = HEAP32[$iBuf>>2]|0; + $112 = HEAP32[$5>>2]|0; + $113 = (($112) + 36|0); + $114 = HEAP32[$113>>2]|0; + $115 = (($114) + ($111)|0); + $116 = HEAP32[$nRead>>2]|0; + $117 = $4; + $118 = $117; + $119 = HEAP32[$118>>2]|0; + $120 = (($117) + 4)|0; + $121 = $120; + $122 = HEAP32[$121>>2]|0; + $123 = (_sqlite3OsRead($110,$115,$116,$119,$122)|0); + HEAP32[$rc>>2] = $123; + } + $124 = HEAP32[$rc>>2]|0; + $125 = ($124|0)==(0); + if ($125) { + $126 = HEAP32[$3>>2]|0; + $127 = $126; + $128 = $127; + $129 = HEAP32[$128>>2]|0; + $130 = (($127) + 4)|0; + $131 = $130; + $132 = HEAP32[$131>>2]|0; + $133 = HEAP32[$5>>2]|0; + $134 = (($133) + 8|0); + $135 = $134; + $136 = $135; + HEAP32[$136>>2] = $129; + $137 = (($135) + 4)|0; + $138 = $137; + HEAP32[$138>>2] = $132; + $139 = HEAP32[$2>>2]|0; + $140 = HEAP32[$5>>2]|0; + $141 = (_vdbeSorterIterVarint($139,$140,$nByte)|0); + HEAP32[$rc>>2] = $141; + $142 = HEAP32[$5>>2]|0; + $143 = $142; + $144 = $143; + $145 = HEAP32[$144>>2]|0; + $146 = (($143) + 4)|0; + $147 = $146; + $148 = HEAP32[$147>>2]|0; + $149 = $nByte; + $150 = $149; + $151 = HEAP32[$150>>2]|0; + $152 = (($149) + 4)|0; + $153 = $152; + $154 = HEAP32[$153>>2]|0; + $155 = (_i64Add(($145|0),($148|0),($151|0),($154|0))|0); + $156 = tempRet0; + $157 = HEAP32[$5>>2]|0; + $158 = (($157) + 8|0); + $159 = $158; + $160 = $159; + HEAP32[$160>>2] = $155; + $161 = (($159) + 4)|0; + $162 = $161; + HEAP32[$162>>2] = $156; + $163 = $nByte; + $164 = $163; + $165 = HEAP32[$164>>2]|0; + $166 = (($163) + 4)|0; + $167 = $166; + $168 = HEAP32[$167>>2]|0; + $169 = HEAP32[$6>>2]|0; + $170 = $169; + $171 = $170; + $172 = HEAP32[$171>>2]|0; + $173 = (($170) + 4)|0; + $174 = $173; + $175 = HEAP32[$174>>2]|0; + $176 = (_i64Add(($172|0),($175|0),($165|0),($168|0))|0); + $177 = tempRet0; + $178 = $169; + $179 = $178; + HEAP32[$179>>2] = $176; + $180 = (($178) + 4)|0; + $181 = $180; + HEAP32[$181>>2] = $177; + } + } else { + HEAP32[$rc>>2] = 7; + } + $182 = HEAP32[$rc>>2]|0; + $183 = ($182|0)==(0); + if (!($183)) { + $187 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($187|0); + } + $184 = HEAP32[$2>>2]|0; + $185 = HEAP32[$5>>2]|0; + $186 = (_vdbeSorterIterNext($184,$185)|0); + HEAP32[$rc>>2] = $186; + $187 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($187|0); +} +function _vdbeSorterDoCompare($pCsr,$iOut) { + $pCsr = $pCsr|0; + $iOut = $iOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $8 = 0, $9 = 0, $i1 = 0, $i2 = 0, $iRes = 0; + var $p1 = 0, $p2 = 0, $pSorter = 0, $res = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $pSorter = sp + 24|0; + $i1 = sp + 20|0; + $i2 = sp + 16|0; + $iRes = sp + 8|0; + $p1 = sp + 4|0; + $p2 = sp; + $res = sp + 12|0; + HEAP32[$0>>2] = $pCsr; + HEAP32[$1>>2] = $iOut; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 64|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pSorter>>2] = $4; + $5 = HEAP32[$1>>2]|0; + $6 = HEAP32[$pSorter>>2]|0; + $7 = (($6) + 20|0); + $8 = HEAP32[$7>>2]|0; + $9 = (($8|0) / 2)&-1; + $10 = ($5|0)>=($9|0); + $11 = HEAP32[$1>>2]|0; + if ($10) { + $12 = HEAP32[$pSorter>>2]|0; + $13 = (($12) + 20|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14|0) / 2)&-1; + $16 = (($11) - ($15))|0; + $17 = $16<<1; + HEAP32[$i1>>2] = $17; + $18 = HEAP32[$i1>>2]|0; + $19 = (($18) + 1)|0; + HEAP32[$i2>>2] = $19; + } else { + $20 = $11<<1; + $21 = HEAP32[$pSorter>>2]|0; + $22 = (($21) + 40|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + ($20<<2)|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$i1>>2] = $25; + $26 = HEAP32[$1>>2]|0; + $27 = $26<<1; + $28 = (($27) + 1)|0; + $29 = HEAP32[$pSorter>>2]|0; + $30 = (($29) + 40|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + ($28<<2)|0); + $33 = HEAP32[$32>>2]|0; + HEAP32[$i2>>2] = $33; + } + $34 = HEAP32[$i1>>2]|0; + $35 = HEAP32[$pSorter>>2]|0; + $36 = (($35) + 36|0); + $37 = HEAP32[$36>>2]|0; + $38 = (($37) + (($34*48)|0)|0); + HEAP32[$p1>>2] = $38; + $39 = HEAP32[$i2>>2]|0; + $40 = HEAP32[$pSorter>>2]|0; + $41 = (($40) + 36|0); + $42 = HEAP32[$41>>2]|0; + $43 = (($42) + (($39*48)|0)|0); + HEAP32[$p2>>2] = $43; + $44 = HEAP32[$p1>>2]|0; + $45 = (($44) + 24|0); + $46 = HEAP32[$45>>2]|0; + $47 = ($46|0)==(0|0); + do { + if ($47) { + $48 = HEAP32[$i2>>2]|0; + HEAP32[$iRes>>2] = $48; + } else { + $49 = HEAP32[$p2>>2]|0; + $50 = (($49) + 24|0); + $51 = HEAP32[$50>>2]|0; + $52 = ($51|0)==(0|0); + if ($52) { + $53 = HEAP32[$i1>>2]|0; + HEAP32[$iRes>>2] = $53; + break; + } + $54 = HEAP32[$0>>2]|0; + $55 = HEAP32[$p1>>2]|0; + $56 = (($55) + 32|0); + $57 = HEAP32[$56>>2]|0; + $58 = HEAP32[$p1>>2]|0; + $59 = (($58) + 20|0); + $60 = HEAP32[$59>>2]|0; + $61 = HEAP32[$p2>>2]|0; + $62 = (($61) + 32|0); + $63 = HEAP32[$62>>2]|0; + $64 = HEAP32[$p2>>2]|0; + $65 = (($64) + 20|0); + $66 = HEAP32[$65>>2]|0; + _vdbeSorterCompare($54,0,$57,$60,$63,$66,$res); + $67 = HEAP32[$res>>2]|0; + $68 = ($67|0)<=(0); + if ($68) { + $69 = HEAP32[$i1>>2]|0; + HEAP32[$iRes>>2] = $69; + break; + } else { + $70 = HEAP32[$i2>>2]|0; + HEAP32[$iRes>>2] = $70; + break; + } + } + } while(0); + $71 = HEAP32[$iRes>>2]|0; + $72 = HEAP32[$1>>2]|0; + $73 = HEAP32[$pSorter>>2]|0; + $74 = (($73) + 40|0); + $75 = HEAP32[$74>>2]|0; + $76 = (($75) + ($72<<2)|0); + HEAP32[$76>>2] = $71; + STACKTOP = sp;return 0; +} +function _vdbeSorterRowkey($pSorter,$pnKey) { + $pSorter = $pSorter|0; + $pnKey = $pnKey|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pIter = 0, $pKey = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $pKey = sp + 4|0; + $pIter = sp + 8|0; + HEAP32[$0>>2] = $pSorter; + HEAP32[$1>>2] = $pnKey; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 40|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0|0); + $6 = HEAP32[$0>>2]|0; + if ($5) { + $7 = (($6) + 40|0); + $8 = HEAP32[$7>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 36|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + (($10*48)|0)|0); + HEAP32[$pIter>>2] = $14; + $15 = HEAP32[$pIter>>2]|0; + $16 = (($15) + 20|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$1>>2]|0; + HEAP32[$18>>2] = $17; + $19 = HEAP32[$pIter>>2]|0; + $20 = (($19) + 32|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$pKey>>2] = $21; + $31 = HEAP32[$pKey>>2]|0; + STACKTOP = sp;return ($31|0); + } else { + $22 = (($6) + 48|0); + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + 4|0); + $25 = HEAP32[$24>>2]|0; + $26 = HEAP32[$1>>2]|0; + HEAP32[$26>>2] = $25; + $27 = HEAP32[$0>>2]|0; + $28 = (($27) + 48|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$29>>2]|0; + HEAP32[$pKey>>2] = $30; + $31 = HEAP32[$pKey>>2]|0; + STACKTOP = sp;return ($31|0); + } + return 0|0; +} +function _dropCell($pPage,$idx,$sz,$pRC) { + $pPage = $pPage|0; + $idx = $idx|0; + $sz = $sz|0; + $pRC = $pRC|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; + var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; + var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; + var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; + var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; + var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $data = 0, $hdr = 0, $pc = 0, $ptr = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $3 = sp + 20|0; + $pc = sp + 16|0; + $data = sp + 8|0; + $ptr = sp + 4|0; + $rc = sp; + $hdr = sp + 12|0; + HEAP32[$0>>2] = $pPage; + HEAP32[$1>>2] = $idx; + HEAP32[$2>>2] = $sz; + HEAP32[$3>>2] = $pRC; + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = ($5|0)!=(0); + if ($6) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 56|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$data>>2] = $9; + $10 = HEAP32[$1>>2]|0; + $11 = $10<<1; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 64|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + ($11)|0); + HEAP32[$ptr>>2] = $15; + $16 = HEAP32[$ptr>>2]|0; + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = $18 << 8; + $20 = HEAP32[$ptr>>2]|0; + $21 = (($20) + 1|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = $19 | $23; + HEAP32[$pc>>2] = $24; + $25 = HEAP32[$0>>2]|0; + $26 = (($25) + 5|0); + $27 = HEAP8[$26>>0]|0; + $28 = $27&255; + HEAP32[$hdr>>2] = $28; + $29 = HEAP32[$pc>>2]|0; + $30 = HEAP32[$hdr>>2]|0; + $31 = (($30) + 5)|0; + $32 = HEAP32[$data>>2]|0; + $33 = (($32) + ($31)|0); + $34 = HEAP8[$33>>0]|0; + $35 = $34&255; + $36 = $35 << 8; + $37 = HEAP32[$hdr>>2]|0; + $38 = (($37) + 5)|0; + $39 = HEAP32[$data>>2]|0; + $40 = (($39) + ($38)|0); + $41 = (($40) + 1|0); + $42 = HEAP8[$41>>0]|0; + $43 = $42&255; + $44 = $36 | $43; + $45 = ($29>>>0)<($44>>>0); + if (!($45)) { + $46 = HEAP32[$pc>>2]|0; + $47 = HEAP32[$2>>2]|0; + $48 = (($46) + ($47))|0; + $49 = HEAP32[$0>>2]|0; + $50 = (($49) + 52|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + 36|0); + $53 = HEAP32[$52>>2]|0; + $54 = ($48>>>0)>($53>>>0); + if (!($54)) { + $57 = HEAP32[$0>>2]|0; + $58 = HEAP32[$pc>>2]|0; + $59 = HEAP32[$2>>2]|0; + $60 = (_freeSpace($57,$58,$59)|0); + HEAP32[$rc>>2] = $60; + $61 = HEAP32[$rc>>2]|0; + $62 = ($61|0)!=(0); + if ($62) { + $63 = HEAP32[$rc>>2]|0; + $64 = HEAP32[$3>>2]|0; + HEAP32[$64>>2] = $63; + STACKTOP = sp;return; + } else { + $65 = HEAP32[$0>>2]|0; + $66 = (($65) + 16|0); + $67 = HEAP16[$66>>1]|0; + $68 = (($67) + -1)<<16>>16; + HEAP16[$66>>1] = $68; + $69 = HEAP32[$ptr>>2]|0; + $70 = HEAP32[$ptr>>2]|0; + $71 = (($70) + 2|0); + $72 = HEAP32[$0>>2]|0; + $73 = (($72) + 16|0); + $74 = HEAP16[$73>>1]|0; + $75 = $74&65535; + $76 = HEAP32[$1>>2]|0; + $77 = (($75) - ($76))|0; + $78 = $77<<1; + _memmove(($69|0),($71|0),($78|0))|0; + $79 = HEAP32[$0>>2]|0; + $80 = (($79) + 16|0); + $81 = HEAP16[$80>>1]|0; + $82 = $81&65535; + $83 = $82 >> 8; + $84 = $83&255; + $85 = HEAP32[$hdr>>2]|0; + $86 = (($85) + 3)|0; + $87 = HEAP32[$data>>2]|0; + $88 = (($87) + ($86)|0); + HEAP8[$88>>0] = $84; + $89 = HEAP32[$0>>2]|0; + $90 = (($89) + 16|0); + $91 = HEAP16[$90>>1]|0; + $92 = $91&255; + $93 = HEAP32[$hdr>>2]|0; + $94 = (($93) + 3)|0; + $95 = HEAP32[$data>>2]|0; + $96 = (($95) + ($94)|0); + $97 = (($96) + 1|0); + HEAP8[$97>>0] = $92; + $98 = HEAP32[$0>>2]|0; + $99 = (($98) + 14|0); + $100 = HEAP16[$99>>1]|0; + $101 = $100&65535; + $102 = (($101) + 2)|0; + $103 = $102&65535; + HEAP16[$99>>1] = $103; + STACKTOP = sp;return; + } + } + } + $55 = (_sqlite3CorruptError(56847)|0); + $56 = HEAP32[$3>>2]|0; + HEAP32[$56>>2] = $55; + STACKTOP = sp;return; +} +function _allocateTempSpace($pBt) { + $pBt = $pBt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pBt; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 80|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if ($4) { + STACKTOP = sp;return; + } + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 32|0); + $7 = HEAP32[$6>>2]|0; + $8 = (_sqlite3PageMalloc($7)|0); + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 80|0); + HEAP32[$10>>2] = $8; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 80|0); + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(0|0); + if (!($14)) { + STACKTOP = sp;return; + } + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 80|0); + $17 = HEAP32[$16>>2]|0; + ;HEAP8[$17+0>>0]=0|0;HEAP8[$17+1>>0]=0|0;HEAP8[$17+2>>0]=0|0;HEAP8[$17+3>>0]=0|0; + STACKTOP = sp;return; +} +function _insertCell($pPage,$i,$pCell,$sz,$pTemp,$iChild,$pRC) { + $pPage = $pPage|0; + $i = $i|0; + $pCell = $pCell|0; + $sz = $sz|0; + $pTemp = $pTemp|0; + $iChild = $iChild|0; + $pRC = $pRC|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; + var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; + var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; + var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; + var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cellOffset = 0, $data = 0, $end = 0; + var $idx = 0, $ins = 0, $j = 0, $nSkip = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 56|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $3 = sp + 44|0; + $4 = sp + 40|0; + $5 = sp + 36|0; + $6 = sp + 32|0; + $idx = sp + 28|0; + $j = sp + 20|0; + $end = sp + 16|0; + $ins = sp + 12|0; + $cellOffset = sp + 8|0; + $data = sp + 4|0; + $nSkip = sp; + $rc = sp + 24|0; + HEAP32[$0>>2] = $pPage; + HEAP32[$1>>2] = $i; + HEAP32[$2>>2] = $pCell; + HEAP32[$3>>2] = $sz; + HEAP32[$4>>2] = $pTemp; + HEAP32[$5>>2] = $iChild; + HEAP32[$6>>2] = $pRC; + HEAP32[$idx>>2] = 0; + $7 = HEAP32[$5>>2]|0; + $8 = ($7|0)!=(0); + $9 = $8 ? 4 : 0; + HEAP32[$nSkip>>2] = $9; + $10 = HEAP32[$6>>2]|0; + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)!=(0); + if ($12) { + STACKTOP = sp;return; + } + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 1|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = ($16|0)!=(0); + if (!($17)) { + $18 = HEAP32[$3>>2]|0; + $19 = (($18) + 2)|0; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 14|0); + $22 = HEAP16[$21>>1]|0; + $23 = $22&65535; + $24 = ($19|0)>($23|0); + if (!($24)) { + $57 = HEAP32[$0>>2]|0; + $58 = (($57) + 68|0); + $59 = HEAP32[$58>>2]|0; + $60 = (_sqlite3PagerWrite($59)|0); + HEAP32[$rc>>2] = $60; + $61 = HEAP32[$rc>>2]|0; + $62 = ($61|0)!=(0); + if ($62) { + $63 = HEAP32[$rc>>2]|0; + $64 = HEAP32[$6>>2]|0; + HEAP32[$64>>2] = $63; + STACKTOP = sp;return; + } + $65 = HEAP32[$0>>2]|0; + $66 = (($65) + 56|0); + $67 = HEAP32[$66>>2]|0; + HEAP32[$data>>2] = $67; + $68 = HEAP32[$0>>2]|0; + $69 = (($68) + 12|0); + $70 = HEAP16[$69>>1]|0; + $71 = $70&65535; + HEAP32[$cellOffset>>2] = $71; + $72 = HEAP32[$cellOffset>>2]|0; + $73 = HEAP32[$0>>2]|0; + $74 = (($73) + 16|0); + $75 = HEAP16[$74>>1]|0; + $76 = $75&65535; + $77 = $76<<1; + $78 = (($72) + ($77))|0; + HEAP32[$end>>2] = $78; + $79 = HEAP32[$cellOffset>>2]|0; + $80 = HEAP32[$1>>2]|0; + $81 = $80<<1; + $82 = (($79) + ($81))|0; + HEAP32[$ins>>2] = $82; + $83 = HEAP32[$0>>2]|0; + $84 = HEAP32[$3>>2]|0; + $85 = (_allocateSpace($83,$84,$idx)|0); + HEAP32[$rc>>2] = $85; + $86 = HEAP32[$rc>>2]|0; + $87 = ($86|0)!=(0); + if ($87) { + $88 = HEAP32[$rc>>2]|0; + $89 = HEAP32[$6>>2]|0; + HEAP32[$89>>2] = $88; + STACKTOP = sp;return; + } + $90 = HEAP32[$0>>2]|0; + $91 = (($90) + 16|0); + $92 = HEAP16[$91>>1]|0; + $93 = (($92) + 1)<<16>>16; + HEAP16[$91>>1] = $93; + $94 = HEAP32[$3>>2]|0; + $95 = (2 + ($94))|0; + $96 = $95&65535; + $97 = $96&65535; + $98 = HEAP32[$0>>2]|0; + $99 = (($98) + 14|0); + $100 = HEAP16[$99>>1]|0; + $101 = $100&65535; + $102 = (($101) - ($97))|0; + $103 = $102&65535; + HEAP16[$99>>1] = $103; + $104 = HEAP32[$idx>>2]|0; + $105 = HEAP32[$nSkip>>2]|0; + $106 = (($104) + ($105))|0; + $107 = HEAP32[$data>>2]|0; + $108 = (($107) + ($106)|0); + $109 = HEAP32[$2>>2]|0; + $110 = HEAP32[$nSkip>>2]|0; + $111 = (($109) + ($110)|0); + $112 = HEAP32[$3>>2]|0; + $113 = HEAP32[$nSkip>>2]|0; + $114 = (($112) - ($113))|0; + _memcpy(($108|0),($111|0),($114|0))|0; + $115 = HEAP32[$5>>2]|0; + $116 = ($115|0)!=(0); + if ($116) { + $117 = HEAP32[$idx>>2]|0; + $118 = HEAP32[$data>>2]|0; + $119 = (($118) + ($117)|0); + $120 = HEAP32[$5>>2]|0; + _sqlite3Put4byte($119,$120); + } + $121 = HEAP32[$ins>>2]|0; + $122 = (($121) + 2)|0; + $123 = HEAP32[$data>>2]|0; + $124 = (($123) + ($122)|0); + $125 = HEAP32[$ins>>2]|0; + $126 = HEAP32[$data>>2]|0; + $127 = (($126) + ($125)|0); + $128 = HEAP32[$end>>2]|0; + $129 = HEAP32[$ins>>2]|0; + $130 = (($128) - ($129))|0; + _memmove(($124|0),($127|0),($130|0))|0; + $131 = HEAP32[$idx>>2]|0; + $132 = $131 >> 8; + $133 = $132&255; + $134 = HEAP32[$ins>>2]|0; + $135 = HEAP32[$data>>2]|0; + $136 = (($135) + ($134)|0); + HEAP8[$136>>0] = $133; + $137 = HEAP32[$idx>>2]|0; + $138 = $137&255; + $139 = HEAP32[$ins>>2]|0; + $140 = HEAP32[$data>>2]|0; + $141 = (($140) + ($139)|0); + $142 = (($141) + 1|0); + HEAP8[$142>>0] = $138; + $143 = HEAP32[$0>>2]|0; + $144 = (($143) + 16|0); + $145 = HEAP16[$144>>1]|0; + $146 = $145&65535; + $147 = $146 >> 8; + $148 = $147&255; + $149 = HEAP32[$0>>2]|0; + $150 = (($149) + 5|0); + $151 = HEAP8[$150>>0]|0; + $152 = $151&255; + $153 = (($152) + 3)|0; + $154 = HEAP32[$data>>2]|0; + $155 = (($154) + ($153)|0); + HEAP8[$155>>0] = $148; + $156 = HEAP32[$0>>2]|0; + $157 = (($156) + 16|0); + $158 = HEAP16[$157>>1]|0; + $159 = $158&255; + $160 = HEAP32[$0>>2]|0; + $161 = (($160) + 5|0); + $162 = HEAP8[$161>>0]|0; + $163 = $162&255; + $164 = (($163) + 3)|0; + $165 = HEAP32[$data>>2]|0; + $166 = (($165) + ($164)|0); + $167 = (($166) + 1|0); + HEAP8[$167>>0] = $159; + $168 = HEAP32[$0>>2]|0; + $169 = (($168) + 52|0); + $170 = HEAP32[$169>>2]|0; + $171 = (($170) + 17|0); + $172 = HEAP8[$171>>0]|0; + $173 = ($172<<24>>24)!=(0); + if (!($173)) { + STACKTOP = sp;return; + } + $174 = HEAP32[$0>>2]|0; + $175 = HEAP32[$2>>2]|0; + $176 = HEAP32[$6>>2]|0; + _ptrmapPutOvflPtr($174,$175,$176); + STACKTOP = sp;return; + } + } + $25 = HEAP32[$4>>2]|0; + $26 = ($25|0)!=(0|0); + if ($26) { + $27 = HEAP32[$4>>2]|0; + $28 = HEAP32[$nSkip>>2]|0; + $29 = (($27) + ($28)|0); + $30 = HEAP32[$2>>2]|0; + $31 = HEAP32[$nSkip>>2]|0; + $32 = (($30) + ($31)|0); + $33 = HEAP32[$3>>2]|0; + $34 = HEAP32[$nSkip>>2]|0; + $35 = (($33) - ($34))|0; + _memcpy(($29|0),($32|0),($35|0))|0; + $36 = HEAP32[$4>>2]|0; + HEAP32[$2>>2] = $36; + } + $37 = HEAP32[$5>>2]|0; + $38 = ($37|0)!=(0); + if ($38) { + $39 = HEAP32[$2>>2]|0; + $40 = HEAP32[$5>>2]|0; + _sqlite3Put4byte($39,$40); + } + $41 = HEAP32[$0>>2]|0; + $42 = (($41) + 1|0); + $43 = HEAP8[$42>>0]|0; + $44 = (($43) + 1)<<24>>24; + HEAP8[$42>>0] = $44; + $45 = $43&255; + HEAP32[$j>>2] = $45; + $46 = HEAP32[$2>>2]|0; + $47 = HEAP32[$j>>2]|0; + $48 = HEAP32[$0>>2]|0; + $49 = (($48) + 32|0); + $50 = (($49) + ($47<<2)|0); + HEAP32[$50>>2] = $46; + $51 = HEAP32[$1>>2]|0; + $52 = $51&65535; + $53 = HEAP32[$j>>2]|0; + $54 = HEAP32[$0>>2]|0; + $55 = (($54) + 20|0); + $56 = (($55) + ($53<<1)|0); + HEAP16[$56>>1] = $52; + STACKTOP = sp;return; +} +function _balance($pCur) { + $pCur = $pCur|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0; + var $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0; + var $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; + var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; + var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; + var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aBalanceQuickSpace = 0, $iIdx = 0, $iPage = 0, $nMin = 0, $pFree = 0, $pPage = 0, $pParent = 0, $pSpace = 0, $rc = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 32|0; + $rc = sp + 28|0; + $nMin = sp + 24|0; + $aBalanceQuickSpace = sp + 36|0; + $pFree = sp + 20|0; + $iPage = sp + 16|0; + $pPage = sp + 8|0; + $pParent = sp + 4|0; + $iIdx = sp; + $pSpace = sp + 12|0; + HEAP32[$0>>2] = $pCur; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 36|0); + $5 = HEAP32[$4>>2]|0; + $6 = $5<<1; + $7 = (($6>>>0) / 3)&-1; + HEAP32[$nMin>>2] = $7; + HEAP32[$pFree>>2] = 0; + while(1) { + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 84|0); + $10 = HEAP16[$9>>1]|0; + $11 = $10 << 16 >> 16; + HEAP32[$iPage>>2] = $11; + $12 = HEAP32[$iPage>>2]|0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 128|0); + $15 = (($14) + ($12<<2)|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$pPage>>2] = $16; + $17 = HEAP32[$iPage>>2]|0; + $18 = ($17|0)==(0); + $19 = HEAP32[$pPage>>2]|0; + $20 = (($19) + 1|0); + $21 = HEAP8[$20>>0]|0; + if ($18) { + $22 = ($21<<24>>24)!=(0); + if (!($22)) { + break; + } + $23 = HEAP32[$pPage>>2]|0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 128|0); + $26 = (($25) + 4|0); + $27 = (_balance_deeper($23,$26)|0); + HEAP32[$rc>>2] = $27; + $28 = HEAP32[$rc>>2]|0; + $29 = ($28|0)==(0); + if ($29) { + $30 = HEAP32[$0>>2]|0; + $31 = (($30) + 84|0); + HEAP16[$31>>1] = 1; + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 86|0); + HEAP16[$33>>1] = 0; + $34 = HEAP32[$0>>2]|0; + $35 = (($34) + 86|0); + $36 = (($35) + 2|0); + HEAP16[$36>>1] = 0; + } + } else { + $37 = $21&255; + $38 = ($37|0)==(0); + if ($38) { + $39 = HEAP32[$pPage>>2]|0; + $40 = (($39) + 14|0); + $41 = HEAP16[$40>>1]|0; + $42 = $41&65535; + $43 = HEAP32[$nMin>>2]|0; + $44 = ($42|0)<=($43|0); + if ($44) { + break; + } + } + $45 = HEAP32[$iPage>>2]|0; + $46 = (($45) - 1)|0; + $47 = HEAP32[$0>>2]|0; + $48 = (($47) + 128|0); + $49 = (($48) + ($46<<2)|0); + $50 = HEAP32[$49>>2]|0; + HEAP32[$pParent>>2] = $50; + $51 = HEAP32[$iPage>>2]|0; + $52 = (($51) - 1)|0; + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 86|0); + $55 = (($54) + ($52<<1)|0); + $56 = HEAP16[$55>>1]|0; + $57 = $56&65535; + HEAP32[$iIdx>>2] = $57; + $58 = HEAP32[$pParent>>2]|0; + $59 = (($58) + 68|0); + $60 = HEAP32[$59>>2]|0; + $61 = (_sqlite3PagerWrite($60)|0); + HEAP32[$rc>>2] = $61; + $62 = HEAP32[$rc>>2]|0; + $63 = ($62|0)==(0); + do { + if ($63) { + $64 = HEAP32[$pPage>>2]|0; + $65 = (($64) + 4|0); + $66 = HEAP8[$65>>0]|0; + $67 = $66&255; + $68 = ($67|0)!=(0); + if ($68) { + $69 = HEAP32[$pPage>>2]|0; + $70 = (($69) + 1|0); + $71 = HEAP8[$70>>0]|0; + $72 = $71&255; + $73 = ($72|0)==(1); + if ($73) { + $74 = HEAP32[$pPage>>2]|0; + $75 = (($74) + 20|0); + $76 = HEAP16[$75>>1]|0; + $77 = $76&65535; + $78 = HEAP32[$pPage>>2]|0; + $79 = (($78) + 16|0); + $80 = HEAP16[$79>>1]|0; + $81 = $80&65535; + $82 = ($77|0)==($81|0); + if ($82) { + $83 = HEAP32[$pParent>>2]|0; + $84 = (($83) + 72|0); + $85 = HEAP32[$84>>2]|0; + $86 = ($85|0)!=(1); + if ($86) { + $87 = HEAP32[$pParent>>2]|0; + $88 = (($87) + 16|0); + $89 = HEAP16[$88>>1]|0; + $90 = $89&65535; + $91 = HEAP32[$iIdx>>2]|0; + $92 = ($90|0)==($91|0); + if ($92) { + $93 = HEAP32[$pParent>>2]|0; + $94 = HEAP32[$pPage>>2]|0; + $95 = (_balance_quick($93,$94,$aBalanceQuickSpace)|0); + HEAP32[$rc>>2] = $95; + break; + } + } + } + } + } + $96 = HEAP32[$0>>2]|0; + $97 = (($96) + 4|0); + $98 = HEAP32[$97>>2]|0; + $99 = (($98) + 32|0); + $100 = HEAP32[$99>>2]|0; + $101 = (_sqlite3PageMalloc($100)|0); + HEAP32[$pSpace>>2] = $101; + $102 = HEAP32[$pParent>>2]|0; + $103 = HEAP32[$iIdx>>2]|0; + $104 = HEAP32[$pSpace>>2]|0; + $105 = HEAP32[$iPage>>2]|0; + $106 = ($105|0)==(1); + $107 = $106&1; + $108 = HEAP32[$0>>2]|0; + $109 = (($108) + 82|0); + $110 = HEAP8[$109>>0]|0; + $111 = $110&255; + $112 = (_balance_nonroot($102,$103,$104,$107,$111)|0); + HEAP32[$rc>>2] = $112; + $113 = HEAP32[$pFree>>2]|0; + $114 = ($113|0)!=(0|0); + if ($114) { + $115 = HEAP32[$pFree>>2]|0; + _sqlite3PageFree($115); + } + $116 = HEAP32[$pSpace>>2]|0; + HEAP32[$pFree>>2] = $116; + } + } while(0); + $117 = HEAP32[$pPage>>2]|0; + $118 = (($117) + 1|0); + HEAP8[$118>>0] = 0; + $119 = HEAP32[$pPage>>2]|0; + _releasePage($119); + $120 = HEAP32[$0>>2]|0; + $121 = (($120) + 84|0); + $122 = HEAP16[$121>>1]|0; + $123 = (($122) + -1)<<16>>16; + HEAP16[$121>>1] = $123; + } + $124 = HEAP32[$rc>>2]|0; + $125 = ($124|0)==(0); + if (!($125)) { + break; + } + } + $126 = HEAP32[$pFree>>2]|0; + $127 = ($126|0)!=(0|0); + if (!($127)) { + $129 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($129|0); + } + $128 = HEAP32[$pFree>>2]|0; + _sqlite3PageFree($128); + $129 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($129|0); +} +function _balance_deeper($pRoot,$ppChild) { + $pRoot = $pRoot|0; + $ppChild = $ppChild|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $8 = 0, $9 = 0, $pBt = 0, $pChild = 0, $pgnoChild = 0, $rc = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $pChild = sp + 12|0; + $pgnoChild = sp + 16|0; + $pBt = sp + 20|0; + HEAP32[$1>>2] = $pRoot; + HEAP32[$2>>2] = $ppChild; + HEAP32[$pChild>>2] = 0; + HEAP32[$pgnoChild>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 52|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pBt>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 68|0); + $8 = HEAP32[$7>>2]|0; + $9 = (_sqlite3PagerWrite($8)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + $11 = ($10|0)==(0); + if ($11) { + $12 = HEAP32[$pBt>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 72|0); + $15 = HEAP32[$14>>2]|0; + $16 = (_allocateBtreePage($12,$pChild,$pgnoChild,$15,0)|0); + HEAP32[$rc>>2] = $16; + $17 = HEAP32[$1>>2]|0; + $18 = HEAP32[$pChild>>2]|0; + _copyNodeContent($17,$18,$rc); + $19 = HEAP32[$pBt>>2]|0; + $20 = (($19) + 17|0); + $21 = HEAP8[$20>>0]|0; + $22 = ($21<<24>>24)!=(0); + if ($22) { + $23 = HEAP32[$pBt>>2]|0; + $24 = HEAP32[$pgnoChild>>2]|0; + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 72|0); + $27 = HEAP32[$26>>2]|0; + _ptrmapPut($23,$24,5,$27,$rc); + } + } + $28 = HEAP32[$rc>>2]|0; + $29 = ($28|0)!=(0); + if ($29) { + $30 = HEAP32[$2>>2]|0; + HEAP32[$30>>2] = 0; + $31 = HEAP32[$pChild>>2]|0; + _releasePage($31); + $32 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $32; + $75 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($75|0); + } else { + $33 = HEAP32[$pChild>>2]|0; + $34 = (($33) + 20|0); + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 20|0); + $37 = HEAP32[$1>>2]|0; + $38 = (($37) + 1|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39&255; + $41 = $40<<1; + _memcpy(($34|0),($36|0),($41|0))|0; + $42 = HEAP32[$pChild>>2]|0; + $43 = (($42) + 32|0); + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 32|0); + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 1|0); + $48 = HEAP8[$47>>0]|0; + $49 = $48&255; + $50 = $49<<2; + _memcpy(($43|0),($45|0),($50|0))|0; + $51 = HEAP32[$1>>2]|0; + $52 = (($51) + 1|0); + $53 = HEAP8[$52>>0]|0; + $54 = HEAP32[$pChild>>2]|0; + $55 = (($54) + 1|0); + HEAP8[$55>>0] = $53; + $56 = HEAP32[$1>>2]|0; + $57 = HEAP32[$pChild>>2]|0; + $58 = (($57) + 56|0); + $59 = HEAP32[$58>>2]|0; + $60 = HEAP8[$59>>0]|0; + $61 = $60&255; + $62 = $61 & -9; + _zeroPage($56,$62); + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + 5|0); + $65 = HEAP8[$64>>0]|0; + $66 = $65&255; + $67 = (($66) + 8)|0; + $68 = HEAP32[$1>>2]|0; + $69 = (($68) + 56|0); + $70 = HEAP32[$69>>2]|0; + $71 = (($70) + ($67)|0); + $72 = HEAP32[$pgnoChild>>2]|0; + _sqlite3Put4byte($71,$72); + $73 = HEAP32[$pChild>>2]|0; + $74 = HEAP32[$2>>2]|0; + HEAP32[$74>>2] = $73; + HEAP32[$0>>2] = 0; + $75 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($75|0); + } + return 0|0; +} +function _balance_quick($pParent,$pPage,$pSpace) { + $pParent = $pParent|0; + $pPage = $pPage|0; + $pSpace = $pSpace|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $14 = 0, $15 = 0; + var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; + var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; + var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; + var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; + var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $pBt = 0, $pCell = 0, $pNew = 0, $pOut = 0, $pStop = 0, $pgnoNew = 0, $rc = 0, $szCell = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $pBt = sp + 24|0; + $pNew = sp + 16|0; + $rc = sp + 12|0; + $pgnoNew = sp + 8|0; + $pOut = sp + 4|0; + $pCell = sp; + $szCell = sp + 44|0; + $pStop = sp + 20|0; + HEAP32[$1>>2] = $pParent; + HEAP32[$2>>2] = $pPage; + HEAP32[$3>>2] = $pSpace; + $4 = HEAP32[$2>>2]|0; + $5 = (($4) + 52|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$pBt>>2] = $6; + $7 = HEAP32[$2>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP16[$8>>1]|0; + $10 = $9&65535; + $11 = ($10|0)==(0); + if ($11) { + $12 = (_sqlite3CorruptError(57050)|0); + HEAP32[$0>>2] = $12; + $131 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($131|0); + } + $13 = HEAP32[$pBt>>2]|0; + $14 = (_allocateBtreePage($13,$pNew,$pgnoNew,0,0)|0); + HEAP32[$rc>>2] = $14; + $15 = HEAP32[$rc>>2]|0; + $16 = ($15|0)==(0); + if ($16) { + $17 = HEAP32[$3>>2]|0; + $18 = (($17) + 4|0); + HEAP32[$pOut>>2] = $18; + $19 = HEAP32[$2>>2]|0; + $20 = (($19) + 32|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$pCell>>2] = $21; + $22 = HEAP32[$2>>2]|0; + $23 = HEAP32[$pCell>>2]|0; + $24 = (_cellSizePtr($22,$23)|0); + HEAP16[$szCell>>1] = $24; + $25 = HEAP32[$pNew>>2]|0; + _zeroPage($25,13); + $26 = HEAP32[$pNew>>2]|0; + _assemblePage($26,1,$pCell,$szCell); + $27 = HEAP32[$pBt>>2]|0; + $28 = (($27) + 17|0); + $29 = HEAP8[$28>>0]|0; + $30 = ($29<<24>>24)!=(0); + if ($30) { + $31 = HEAP32[$pBt>>2]|0; + $32 = HEAP32[$pgnoNew>>2]|0; + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 72|0); + $35 = HEAP32[$34>>2]|0; + _ptrmapPut($31,$32,5,$35,$rc); + $36 = HEAP16[$szCell>>1]|0; + $37 = $36&65535; + $38 = HEAP32[$pNew>>2]|0; + $39 = (($38) + 10|0); + $40 = HEAP16[$39>>1]|0; + $41 = $40&65535; + $42 = ($37|0)>($41|0); + if ($42) { + $43 = HEAP32[$pNew>>2]|0; + $44 = HEAP32[$pCell>>2]|0; + _ptrmapPutOvflPtr($43,$44,$rc); + } + } + $45 = HEAP32[$2>>2]|0; + $46 = (($45) + 56|0); + $47 = HEAP32[$46>>2]|0; + $48 = HEAP32[$2>>2]|0; + $49 = (($48) + 18|0); + $50 = HEAP16[$49>>1]|0; + $51 = $50&65535; + $52 = HEAP32[$2>>2]|0; + $53 = (($52) + 16|0); + $54 = HEAP16[$53>>1]|0; + $55 = $54&65535; + $56 = (($55) - 1)|0; + $57 = $56<<1; + $58 = HEAP32[$2>>2]|0; + $59 = (($58) + 64|0); + $60 = HEAP32[$59>>2]|0; + $61 = (($60) + ($57)|0); + $62 = HEAP8[$61>>0]|0; + $63 = $62&255; + $64 = $63 << 8; + $65 = HEAP32[$2>>2]|0; + $66 = (($65) + 16|0); + $67 = HEAP16[$66>>1]|0; + $68 = $67&65535; + $69 = (($68) - 1)|0; + $70 = $69<<1; + $71 = HEAP32[$2>>2]|0; + $72 = (($71) + 64|0); + $73 = HEAP32[$72>>2]|0; + $74 = (($73) + ($70)|0); + $75 = (($74) + 1|0); + $76 = HEAP8[$75>>0]|0; + $77 = $76&255; + $78 = $64 | $77; + $79 = $51 & $78; + $80 = (($47) + ($79)|0); + HEAP32[$pCell>>2] = $80; + $81 = HEAP32[$pCell>>2]|0; + $82 = (($81) + 9|0); + HEAP32[$pStop>>2] = $82; + while(1) { + $83 = HEAP32[$pCell>>2]|0; + $84 = (($83) + 1|0); + HEAP32[$pCell>>2] = $84; + $85 = HEAP8[$83>>0]|0; + $86 = $85&255; + $87 = $86 & 128; + $88 = ($87|0)!=(0); + if (!($88)) { + break; + } + $89 = HEAP32[$pCell>>2]|0; + $90 = HEAP32[$pStop>>2]|0; + $91 = ($89>>>0)<($90>>>0); + if (!($91)) { + break; + } + } + $92 = HEAP32[$pCell>>2]|0; + $93 = (($92) + 9|0); + HEAP32[$pStop>>2] = $93; + while(1) { + $94 = HEAP32[$pCell>>2]|0; + $95 = (($94) + 1|0); + HEAP32[$pCell>>2] = $95; + $96 = HEAP8[$94>>0]|0; + $97 = HEAP32[$pOut>>2]|0; + $98 = (($97) + 1|0); + HEAP32[$pOut>>2] = $98; + HEAP8[$97>>0] = $96; + $99 = $96&255; + $100 = $99 & 128; + $101 = ($100|0)!=(0); + if (!($101)) { + break; + } + $102 = HEAP32[$pCell>>2]|0; + $103 = HEAP32[$pStop>>2]|0; + $104 = ($102>>>0)<($103>>>0); + if (!($104)) { + break; + } + } + $105 = HEAP32[$1>>2]|0; + $106 = HEAP32[$1>>2]|0; + $107 = (($106) + 16|0); + $108 = HEAP16[$107>>1]|0; + $109 = $108&65535; + $110 = HEAP32[$3>>2]|0; + $111 = HEAP32[$pOut>>2]|0; + $112 = HEAP32[$3>>2]|0; + $113 = $111; + $114 = $112; + $115 = (($113) - ($114))|0; + $116 = HEAP32[$2>>2]|0; + $117 = (($116) + 72|0); + $118 = HEAP32[$117>>2]|0; + _insertCell($105,$109,$110,$115,0,$118,$rc); + $119 = HEAP32[$1>>2]|0; + $120 = (($119) + 5|0); + $121 = HEAP8[$120>>0]|0; + $122 = $121&255; + $123 = (($122) + 8)|0; + $124 = HEAP32[$1>>2]|0; + $125 = (($124) + 56|0); + $126 = HEAP32[$125>>2]|0; + $127 = (($126) + ($123)|0); + $128 = HEAP32[$pgnoNew>>2]|0; + _sqlite3Put4byte($127,$128); + $129 = HEAP32[$pNew>>2]|0; + _releasePage($129); + } + $130 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $130; + $131 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($131|0); +} +function _balance_nonroot($pParent,$iParentIdx,$aOvflSpace,$isRoot,$bBulk) { + $pParent = $pParent|0; + $iParentIdx = $iParentIdx|0; + $aOvflSpace = $aOvflSpace|0; + $isRoot = $isRoot|0; + $bBulk = $bBulk|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0, $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0; + var $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0, $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0; + var $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0, $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0; + var $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0, $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0; + var $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0, $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; + var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; + var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; + var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0; + var $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0; + var $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0; + var $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0; + var $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0; + var $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0; + var $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0; + var $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0; + var $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0; + var $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0; + var $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0; + var $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0; + var $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0; + var $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0; + var $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0; + var $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0; + var $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0; + var $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0; + var $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0; + var $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0; + var $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0; + var $587 = 0, $588 = 0, $589 = 0, $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0; + var $604 = 0, $605 = 0, $606 = 0, $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0; + var $622 = 0, $623 = 0, $624 = 0, $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0; + var $640 = 0, $641 = 0, $642 = 0, $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0; + var $659 = 0, $66 = 0, $660 = 0, $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0; + var $677 = 0, $678 = 0, $679 = 0, $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0; + var $695 = 0, $696 = 0, $697 = 0, $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0; + var $712 = 0, $713 = 0, $714 = 0, $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0; + var $730 = 0, $731 = 0, $732 = 0, $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0; + var $749 = 0, $75 = 0, $750 = 0, $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0; + var $767 = 0, $768 = 0, $769 = 0, $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0; + var $785 = 0, $786 = 0, $787 = 0, $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0; + var $802 = 0, $803 = 0, $804 = 0, $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0; + var $820 = 0, $821 = 0, $822 = 0, $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0; + var $839 = 0, $84 = 0, $840 = 0, $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0; + var $857 = 0, $858 = 0, $859 = 0, $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0; + var $875 = 0, $876 = 0, $877 = 0, $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0; + var $893 = 0, $894 = 0, $895 = 0, $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0; + var $910 = 0, $911 = 0, $912 = 0, $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0; + var $929 = 0, $93 = 0, $930 = 0, $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0; + var $947 = 0, $948 = 0, $949 = 0, $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0; + var $965 = 0, $966 = 0, $967 = 0, $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0; + var $983 = 0, $984 = 0, $985 = 0, $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $aData = 0, $aSpace1 = 0; + var $apCell = 0, $apCopy = 0, $apDiv = 0, $apNew = 0, $apOld = 0, $cellOffset = 0, $cntNew = 0, $d = 0, $i = 0, $iNextOld = 0, $iOff = 0, $iOverflow = 0, $iOvflSpace = 0, $iSpace1 = 0, $info = 0, $isDivider = 0, $j = 0, $k = 0, $key = 0, $leafCorrection = 0; + var $leafData = 0, $limit = 0, $maskPage = 0, $minI = 0, $minV = 0, $nCell = 0, $nMaxCells = 0, $nNew = 0, $nOld = 0, $nOverflow = 0, $nxDiv = 0, $pBt = 0, $pCell = 0, $pNew = 0, $pNew1 = 0, $pNew4 = 0, $pOld = 0, $pOld5 = 0, $pRight = 0, $pT = 0; + var $pTemp = 0, $pTemp2 = 0, $pageFlags = 0, $pgno = 0, $r = 0, $rc = 0, $subtotal = 0, $sz = 0, $sz3 = 0, $szCell = 0, $szLeft = 0, $szNew = 0, $szRight = 0, $szScratch = 0, $usableSpace = 0, $zChild = 0, dest = 0, label = 0, sp = 0, src = 0; + var stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 352|0; + $0 = sp + 300|0; + $1 = sp + 296|0; + $2 = sp + 292|0; + $3 = sp + 288|0; + $4 = sp + 284|0; + $5 = sp + 280|0; + $pBt = sp + 276|0; + $nCell = sp + 268|0; + $nMaxCells = sp + 264|0; + $nNew = sp + 260|0; + $nOld = sp + 256|0; + $i = sp + 272|0; + $j = sp + 304|0; + $k = sp + 308|0; + $nxDiv = sp + 312|0; + $rc = sp + 316|0; + $leafCorrection = sp + 346|0; + $leafData = sp + 320|0; + $usableSpace = sp + 324|0; + $pageFlags = sp + 328|0; + $subtotal = sp + 336|0; + $iSpace1 = sp + 332|0; + $iOvflSpace = sp + 252|0; + $szScratch = sp + 248|0; + $apOld = sp + 236|0; + $apCopy = sp + 224|0; + $apNew = sp + 204|0; + $pRight = sp + 200|0; + $apDiv = sp + 192|0; + $cntNew = sp + 80|0; + $szNew = sp + 100|0; + $apCell = sp + 120|0; + $szCell = sp + 76|0; + $aSpace1 = sp + 72|0; + $pgno = sp + 68|0; + $iOff = sp + 64|0; + $limit = sp + 60|0; + $pOld = sp + 48|0; + $aData = sp + 44|0; + $maskPage = sp + 344|0; + $cellOffset = sp + 342|0; + $sz = sp + 340|0; + $pTemp = sp + 40|0; + $szRight = sp + 36|0; + $szLeft = sp + 32|0; + $r = sp + 52|0; + $d = sp + 56|0; + $pNew = sp + 124|0; + $minV = sp + 128|0; + $minI = sp + 132|0; + $pT = sp + 136|0; + $pNew1 = sp + 140|0; + $pCell = sp + 144|0; + $pTemp2 = sp + 148|0; + $sz3 = sp + 152|0; + $info = sp; + $zChild = sp + 156|0; + $pNew4 = sp + 160|0; + $pOld5 = sp + 164|0; + $nOverflow = sp + 168|0; + $iNextOld = sp + 172|0; + $iOverflow = sp + 176|0; + $isDivider = sp + 180|0; + $key = sp + 184|0; + HEAP32[$1>>2] = $pParent; + HEAP32[$2>>2] = $iParentIdx; + HEAP32[$3>>2] = $aOvflSpace; + HEAP32[$4>>2] = $isRoot; + HEAP32[$5>>2] = $bBulk; + HEAP32[$nCell>>2] = 0; + HEAP32[$nMaxCells>>2] = 0; + HEAP32[$nNew>>2] = 0; + HEAP32[$rc>>2] = 0; + HEAP32[$iSpace1>>2] = 0; + HEAP32[$iOvflSpace>>2] = 0; + HEAP32[$apCell>>2] = 0; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 52|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pBt>>2] = $8; + $9 = HEAP32[$3>>2]|0; + $10 = ($9|0)!=(0|0); + if (!($10)) { + HEAP32[$0>>2] = 7; + $1077 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($1077|0); + } + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 1|0); + $13 = HEAP8[$12>>0]|0; + $14 = $13&255; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 16|0); + $17 = HEAP16[$16>>1]|0; + $18 = $17&65535; + $19 = (($14) + ($18))|0; + HEAP32[$i>>2] = $19; + $20 = HEAP32[$i>>2]|0; + $21 = ($20|0)<(2); + if ($21) { + HEAP32[$nxDiv>>2] = 0; + } else { + $22 = HEAP32[$2>>2]|0; + $23 = ($22|0)==(0); + do { + if ($23) { + HEAP32[$nxDiv>>2] = 0; + } else { + $24 = HEAP32[$2>>2]|0; + $25 = HEAP32[$i>>2]|0; + $26 = ($24|0)==($25|0); + if ($26) { + $27 = HEAP32[$i>>2]|0; + $28 = (($27) - 2)|0; + $29 = HEAP32[$5>>2]|0; + $30 = (($28) + ($29))|0; + HEAP32[$nxDiv>>2] = $30; + break; + } else { + $31 = HEAP32[$2>>2]|0; + $32 = (($31) - 1)|0; + HEAP32[$nxDiv>>2] = $32; + break; + } + } + } while(0); + $33 = HEAP32[$5>>2]|0; + $34 = (2 - ($33))|0; + HEAP32[$i>>2] = $34; + } + $35 = HEAP32[$i>>2]|0; + $36 = (($35) + 1)|0; + HEAP32[$nOld>>2] = $36; + $37 = HEAP32[$i>>2]|0; + $38 = HEAP32[$nxDiv>>2]|0; + $39 = (($37) + ($38))|0; + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 1|0); + $42 = HEAP8[$41>>0]|0; + $43 = $42&255; + $44 = (($39) - ($43))|0; + $45 = HEAP32[$1>>2]|0; + $46 = (($45) + 16|0); + $47 = HEAP16[$46>>1]|0; + $48 = $47&65535; + $49 = ($44|0)==($48|0); + $50 = HEAP32[$1>>2]|0; + if ($49) { + $51 = (($50) + 5|0); + $52 = HEAP8[$51>>0]|0; + $53 = $52&255; + $54 = (($53) + 8)|0; + $55 = HEAP32[$1>>2]|0; + $56 = (($55) + 56|0); + $57 = HEAP32[$56>>2]|0; + $58 = (($57) + ($54)|0); + HEAP32[$pRight>>2] = $58; + } else { + $59 = (($50) + 56|0); + $60 = HEAP32[$59>>2]|0; + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 18|0); + $63 = HEAP16[$62>>1]|0; + $64 = $63&65535; + $65 = HEAP32[$i>>2]|0; + $66 = HEAP32[$nxDiv>>2]|0; + $67 = (($65) + ($66))|0; + $68 = HEAP32[$1>>2]|0; + $69 = (($68) + 1|0); + $70 = HEAP8[$69>>0]|0; + $71 = $70&255; + $72 = (($67) - ($71))|0; + $73 = $72<<1; + $74 = HEAP32[$1>>2]|0; + $75 = (($74) + 64|0); + $76 = HEAP32[$75>>2]|0; + $77 = (($76) + ($73)|0); + $78 = HEAP8[$77>>0]|0; + $79 = $78&255; + $80 = $79 << 8; + $81 = HEAP32[$i>>2]|0; + $82 = HEAP32[$nxDiv>>2]|0; + $83 = (($81) + ($82))|0; + $84 = HEAP32[$1>>2]|0; + $85 = (($84) + 1|0); + $86 = HEAP8[$85>>0]|0; + $87 = $86&255; + $88 = (($83) - ($87))|0; + $89 = $88<<1; + $90 = HEAP32[$1>>2]|0; + $91 = (($90) + 64|0); + $92 = HEAP32[$91>>2]|0; + $93 = (($92) + ($89)|0); + $94 = (($93) + 1|0); + $95 = HEAP8[$94>>0]|0; + $96 = $95&255; + $97 = $80 | $96; + $98 = $64 & $97; + $99 = (($60) + ($98)|0); + HEAP32[$pRight>>2] = $99; + } + $100 = HEAP32[$pRight>>2]|0; + $101 = (_sqlite3Get4byte($100)|0); + HEAP32[$pgno>>2] = $101; + while(1) { + $102 = HEAP32[$pBt>>2]|0; + $103 = HEAP32[$pgno>>2]|0; + $104 = HEAP32[$i>>2]|0; + $105 = (($apOld) + ($104<<2)|0); + $106 = (_getAndInitPage($102,$103,$105,0)|0); + HEAP32[$rc>>2] = $106; + $107 = HEAP32[$rc>>2]|0; + $108 = ($107|0)!=(0); + if ($108) { + label = 16; + break; + } + $112 = HEAP32[$i>>2]|0; + $113 = (($apOld) + ($112<<2)|0); + $114 = HEAP32[$113>>2]|0; + $115 = (($114) + 16|0); + $116 = HEAP16[$115>>1]|0; + $117 = $116&65535; + $118 = (1 + ($117))|0; + $119 = HEAP32[$i>>2]|0; + $120 = (($apOld) + ($119<<2)|0); + $121 = HEAP32[$120>>2]|0; + $122 = (($121) + 1|0); + $123 = HEAP8[$122>>0]|0; + $124 = $123&255; + $125 = (($118) + ($124))|0; + $126 = HEAP32[$nMaxCells>>2]|0; + $127 = (($126) + ($125))|0; + HEAP32[$nMaxCells>>2] = $127; + $128 = HEAP32[$i>>2]|0; + $129 = (($128) + -1)|0; + HEAP32[$i>>2] = $129; + $130 = ($128|0)==(0); + if ($130) { + label = 26; + break; + } + $131 = HEAP32[$i>>2]|0; + $132 = HEAP32[$nxDiv>>2]|0; + $133 = (($131) + ($132))|0; + $134 = HEAP32[$1>>2]|0; + $135 = (($134) + 20|0); + $136 = HEAP16[$135>>1]|0; + $137 = $136&65535; + $138 = ($133|0)==($137|0); + if ($138) { + $139 = HEAP32[$1>>2]|0; + $140 = (($139) + 1|0); + $141 = HEAP8[$140>>0]|0; + $142 = $141&255; + $143 = ($142|0)!=(0); + if ($143) { + $144 = HEAP32[$1>>2]|0; + $145 = (($144) + 32|0); + $146 = HEAP32[$145>>2]|0; + $147 = HEAP32[$i>>2]|0; + $148 = (($apDiv) + ($147<<2)|0); + HEAP32[$148>>2] = $146; + $149 = HEAP32[$i>>2]|0; + $150 = (($apDiv) + ($149<<2)|0); + $151 = HEAP32[$150>>2]|0; + $152 = (_sqlite3Get4byte($151)|0); + HEAP32[$pgno>>2] = $152; + $153 = HEAP32[$1>>2]|0; + $154 = HEAP32[$i>>2]|0; + $155 = (($apDiv) + ($154<<2)|0); + $156 = HEAP32[$155>>2]|0; + $157 = (_cellSizePtr($153,$156)|0); + $158 = $157&65535; + $159 = HEAP32[$i>>2]|0; + $160 = (($szNew) + ($159<<2)|0); + HEAP32[$160>>2] = $158; + $161 = HEAP32[$1>>2]|0; + $162 = (($161) + 1|0); + HEAP8[$162>>0] = 0; + continue; + } + } + $163 = HEAP32[$1>>2]|0; + $164 = (($163) + 56|0); + $165 = HEAP32[$164>>2]|0; + $166 = HEAP32[$1>>2]|0; + $167 = (($166) + 18|0); + $168 = HEAP16[$167>>1]|0; + $169 = $168&65535; + $170 = HEAP32[$i>>2]|0; + $171 = HEAP32[$nxDiv>>2]|0; + $172 = (($170) + ($171))|0; + $173 = HEAP32[$1>>2]|0; + $174 = (($173) + 1|0); + $175 = HEAP8[$174>>0]|0; + $176 = $175&255; + $177 = (($172) - ($176))|0; + $178 = $177<<1; + $179 = HEAP32[$1>>2]|0; + $180 = (($179) + 64|0); + $181 = HEAP32[$180>>2]|0; + $182 = (($181) + ($178)|0); + $183 = HEAP8[$182>>0]|0; + $184 = $183&255; + $185 = $184 << 8; + $186 = HEAP32[$i>>2]|0; + $187 = HEAP32[$nxDiv>>2]|0; + $188 = (($186) + ($187))|0; + $189 = HEAP32[$1>>2]|0; + $190 = (($189) + 1|0); + $191 = HEAP8[$190>>0]|0; + $192 = $191&255; + $193 = (($188) - ($192))|0; + $194 = $193<<1; + $195 = HEAP32[$1>>2]|0; + $196 = (($195) + 64|0); + $197 = HEAP32[$196>>2]|0; + $198 = (($197) + ($194)|0); + $199 = (($198) + 1|0); + $200 = HEAP8[$199>>0]|0; + $201 = $200&255; + $202 = $185 | $201; + $203 = $169 & $202; + $204 = (($165) + ($203)|0); + $205 = HEAP32[$i>>2]|0; + $206 = (($apDiv) + ($205<<2)|0); + HEAP32[$206>>2] = $204; + $207 = HEAP32[$i>>2]|0; + $208 = (($apDiv) + ($207<<2)|0); + $209 = HEAP32[$208>>2]|0; + $210 = (_sqlite3Get4byte($209)|0); + HEAP32[$pgno>>2] = $210; + $211 = HEAP32[$1>>2]|0; + $212 = HEAP32[$i>>2]|0; + $213 = (($apDiv) + ($212<<2)|0); + $214 = HEAP32[$213>>2]|0; + $215 = (_cellSizePtr($211,$214)|0); + $216 = $215&65535; + $217 = HEAP32[$i>>2]|0; + $218 = (($szNew) + ($217<<2)|0); + HEAP32[$218>>2] = $216; + $219 = HEAP32[$pBt>>2]|0; + $220 = (($219) + 22|0); + $221 = HEAP16[$220>>1]|0; + $222 = $221&65535; + $223 = $222 & 4; + $224 = ($223|0)!=(0); + if ($224) { + $225 = HEAP32[$i>>2]|0; + $226 = (($apDiv) + ($225<<2)|0); + $227 = HEAP32[$226>>2]|0; + $228 = $227; + $229 = HEAP32[$1>>2]|0; + $230 = (($229) + 56|0); + $231 = HEAP32[$230>>2]|0; + $232 = $231; + $233 = (($228) - ($232))|0; + HEAP32[$iOff>>2] = $233; + $234 = HEAP32[$iOff>>2]|0; + $235 = HEAP32[$i>>2]|0; + $236 = (($szNew) + ($235<<2)|0); + $237 = HEAP32[$236>>2]|0; + $238 = (($234) + ($237))|0; + $239 = HEAP32[$pBt>>2]|0; + $240 = (($239) + 36|0); + $241 = HEAP32[$240>>2]|0; + $242 = ($238|0)>($241|0); + if ($242) { + label = 23; + break; + } + $247 = HEAP32[$iOff>>2]|0; + $248 = HEAP32[$3>>2]|0; + $249 = (($248) + ($247)|0); + $250 = HEAP32[$i>>2]|0; + $251 = (($apDiv) + ($250<<2)|0); + $252 = HEAP32[$251>>2]|0; + $253 = HEAP32[$i>>2]|0; + $254 = (($szNew) + ($253<<2)|0); + $255 = HEAP32[$254>>2]|0; + _memcpy(($249|0),($252|0),($255|0))|0; + $256 = HEAP32[$i>>2]|0; + $257 = (($apDiv) + ($256<<2)|0); + $258 = HEAP32[$257>>2]|0; + $259 = HEAP32[$1>>2]|0; + $260 = (($259) + 56|0); + $261 = HEAP32[$260>>2]|0; + $262 = $258; + $263 = $261; + $264 = (($262) - ($263))|0; + $265 = HEAP32[$3>>2]|0; + $266 = (($265) + ($264)|0); + $267 = HEAP32[$i>>2]|0; + $268 = (($apDiv) + ($267<<2)|0); + HEAP32[$268>>2] = $266; + } + $269 = HEAP32[$1>>2]|0; + $270 = HEAP32[$i>>2]|0; + $271 = HEAP32[$nxDiv>>2]|0; + $272 = (($270) + ($271))|0; + $273 = HEAP32[$1>>2]|0; + $274 = (($273) + 1|0); + $275 = HEAP8[$274>>0]|0; + $276 = $275&255; + $277 = (($272) - ($276))|0; + $278 = HEAP32[$i>>2]|0; + $279 = (($szNew) + ($278<<2)|0); + $280 = HEAP32[$279>>2]|0; + _dropCell($269,$277,$280,$rc); + } + L32: do { + if ((label|0) == 16) { + $109 = HEAP32[$i>>2]|0; + $110 = (($109) + 1)|0; + $111 = $110<<2; + _memset(($apOld|0),0,($111|0))|0; + } + else if ((label|0) == 23) { + $243 = (_sqlite3CorruptError(57387)|0); + HEAP32[$rc>>2] = $243; + $244 = HEAP32[$i>>2]|0; + $245 = (($244) + 1)|0; + $246 = $245<<2; + _memset(($apOld|0),0,($246|0))|0; + } + else if ((label|0) == 26) { + $281 = HEAP32[$nMaxCells>>2]|0; + $282 = (($281) + 3)|0; + $283 = $282 & -4; + HEAP32[$nMaxCells>>2] = $283; + $284 = HEAP32[$pBt>>2]|0; + $285 = (($284) + 32|0); + $286 = HEAP32[$285>>2]|0; + $287 = (($286) + 80)|0; + HEAP32[$k>>2] = $287; + $288 = HEAP32[$nMaxCells>>2]|0; + $289 = $288<<2; + $290 = HEAP32[$nMaxCells>>2]|0; + $291 = $290<<1; + $292 = (($289) + ($291))|0; + $293 = HEAP32[$pBt>>2]|0; + $294 = (($293) + 32|0); + $295 = HEAP32[$294>>2]|0; + $296 = (($292) + ($295))|0; + $297 = HEAP32[$k>>2]|0; + $298 = HEAP32[$nOld>>2]|0; + $299 = Math_imul($297, $298)|0; + $300 = (($296) + ($299))|0; + HEAP32[$szScratch>>2] = $300; + $301 = HEAP32[$szScratch>>2]|0; + $302 = (_sqlite3ScratchMalloc($301)|0); + HEAP32[$apCell>>2] = $302; + $303 = HEAP32[$apCell>>2]|0; + $304 = ($303|0)==(0|0); + if ($304) { + HEAP32[$rc>>2] = 7; + break; + } + $305 = HEAP32[$nMaxCells>>2]|0; + $306 = HEAP32[$apCell>>2]|0; + $307 = (($306) + ($305<<2)|0); + HEAP32[$szCell>>2] = $307; + $308 = HEAP32[$nMaxCells>>2]|0; + $309 = HEAP32[$szCell>>2]|0; + $310 = (($309) + ($308<<1)|0); + HEAP32[$aSpace1>>2] = $310; + $311 = HEAP32[$apOld>>2]|0; + $312 = (($311) + 3|0); + $313 = HEAP8[$312>>0]|0; + $314 = $313&255; + $315 = $314<<2; + $316 = $315&65535; + HEAP16[$leafCorrection>>1] = $316; + $317 = HEAP32[$apOld>>2]|0; + $318 = (($317) + 4|0); + $319 = HEAP8[$318>>0]|0; + $320 = $319&255; + HEAP32[$leafData>>2] = $320; + HEAP32[$i>>2] = 0; + while(1) { + $321 = HEAP32[$i>>2]|0; + $322 = HEAP32[$nOld>>2]|0; + $323 = ($321|0)<($322|0); + $324 = HEAP32[$pBt>>2]|0; + if (!($323)) { + break; + } + $325 = (($324) + 32|0); + $326 = HEAP32[$325>>2]|0; + $327 = HEAP32[$k>>2]|0; + $328 = HEAP32[$i>>2]|0; + $329 = Math_imul($327, $328)|0; + $330 = (($326) + ($329))|0; + $331 = HEAP32[$aSpace1>>2]|0; + $332 = (($331) + ($330)|0); + $333 = HEAP32[$i>>2]|0; + $334 = (($apCopy) + ($333<<2)|0); + HEAP32[$334>>2] = $332; + HEAP32[$pOld>>2] = $332; + $335 = HEAP32[$pOld>>2]|0; + $336 = HEAP32[$i>>2]|0; + $337 = (($apOld) + ($336<<2)|0); + $338 = HEAP32[$337>>2]|0; + dest=$335+0|0; src=$338+0|0; stop=dest+76|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); + $339 = HEAP32[$pOld>>2]|0; + $340 = (($339) + 76|0); + $341 = HEAP32[$pOld>>2]|0; + $342 = (($341) + 56|0); + HEAP32[$342>>2] = $340; + $343 = HEAP32[$pOld>>2]|0; + $344 = (($343) + 56|0); + $345 = HEAP32[$344>>2]|0; + $346 = HEAP32[$i>>2]|0; + $347 = (($apOld) + ($346<<2)|0); + $348 = HEAP32[$347>>2]|0; + $349 = (($348) + 56|0); + $350 = HEAP32[$349>>2]|0; + $351 = HEAP32[$pBt>>2]|0; + $352 = (($351) + 32|0); + $353 = HEAP32[$352>>2]|0; + _memcpy(($345|0),($350|0),($353|0))|0; + $354 = HEAP32[$pOld>>2]|0; + $355 = (($354) + 16|0); + $356 = HEAP16[$355>>1]|0; + $357 = $356&65535; + $358 = HEAP32[$pOld>>2]|0; + $359 = (($358) + 1|0); + $360 = HEAP8[$359>>0]|0; + $361 = $360&255; + $362 = (($357) + ($361))|0; + HEAP32[$limit>>2] = $362; + $363 = HEAP32[$pOld>>2]|0; + $364 = (($363) + 1|0); + $365 = HEAP8[$364>>0]|0; + $366 = $365&255; + $367 = ($366|0)>(0); + L41: do { + if ($367) { + HEAP32[$j>>2] = 0; + while(1) { + $368 = HEAP32[$j>>2]|0; + $369 = HEAP32[$limit>>2]|0; + $370 = ($368|0)<($369|0); + if (!($370)) { + break L41; + } + $371 = HEAP32[$pOld>>2]|0; + $372 = HEAP32[$j>>2]|0; + $373 = (_findOverflowCell($371,$372)|0); + $374 = HEAP32[$nCell>>2]|0; + $375 = HEAP32[$apCell>>2]|0; + $376 = (($375) + ($374<<2)|0); + HEAP32[$376>>2] = $373; + $377 = HEAP32[$pOld>>2]|0; + $378 = HEAP32[$nCell>>2]|0; + $379 = HEAP32[$apCell>>2]|0; + $380 = (($379) + ($378<<2)|0); + $381 = HEAP32[$380>>2]|0; + $382 = (_cellSizePtr($377,$381)|0); + $383 = HEAP32[$nCell>>2]|0; + $384 = HEAP32[$szCell>>2]|0; + $385 = (($384) + ($383<<1)|0); + HEAP16[$385>>1] = $382; + $386 = HEAP32[$nCell>>2]|0; + $387 = (($386) + 1)|0; + HEAP32[$nCell>>2] = $387; + $388 = HEAP32[$j>>2]|0; + $389 = (($388) + 1)|0; + HEAP32[$j>>2] = $389; + } + } else { + $390 = HEAP32[$pOld>>2]|0; + $391 = (($390) + 56|0); + $392 = HEAP32[$391>>2]|0; + HEAP32[$aData>>2] = $392; + $393 = HEAP32[$pOld>>2]|0; + $394 = (($393) + 18|0); + $395 = HEAP16[$394>>1]|0; + HEAP16[$maskPage>>1] = $395; + $396 = HEAP32[$pOld>>2]|0; + $397 = (($396) + 12|0); + $398 = HEAP16[$397>>1]|0; + HEAP16[$cellOffset>>1] = $398; + HEAP32[$j>>2] = 0; + while(1) { + $399 = HEAP32[$j>>2]|0; + $400 = HEAP32[$limit>>2]|0; + $401 = ($399|0)<($400|0); + if (!($401)) { + break L41; + } + $402 = HEAP32[$aData>>2]|0; + $403 = HEAP16[$maskPage>>1]|0; + $404 = $403&65535; + $405 = HEAP32[$aData>>2]|0; + $406 = HEAP16[$cellOffset>>1]|0; + $407 = $406&65535; + $408 = HEAP32[$j>>2]|0; + $409 = $408<<1; + $410 = (($407) + ($409))|0; + $411 = (($405) + ($410)|0); + $412 = HEAP8[$411>>0]|0; + $413 = $412&255; + $414 = $413 << 8; + $415 = HEAP32[$aData>>2]|0; + $416 = HEAP16[$cellOffset>>1]|0; + $417 = $416&65535; + $418 = HEAP32[$j>>2]|0; + $419 = $418<<1; + $420 = (($417) + ($419))|0; + $421 = (($415) + ($420)|0); + $422 = (($421) + 1|0); + $423 = HEAP8[$422>>0]|0; + $424 = $423&255; + $425 = $414 | $424; + $426 = $404 & $425; + $427 = (($402) + ($426)|0); + $428 = HEAP32[$nCell>>2]|0; + $429 = HEAP32[$apCell>>2]|0; + $430 = (($429) + ($428<<2)|0); + HEAP32[$430>>2] = $427; + $431 = HEAP32[$pOld>>2]|0; + $432 = HEAP32[$nCell>>2]|0; + $433 = HEAP32[$apCell>>2]|0; + $434 = (($433) + ($432<<2)|0); + $435 = HEAP32[$434>>2]|0; + $436 = (_cellSizePtr($431,$435)|0); + $437 = HEAP32[$nCell>>2]|0; + $438 = HEAP32[$szCell>>2]|0; + $439 = (($438) + ($437<<1)|0); + HEAP16[$439>>1] = $436; + $440 = HEAP32[$nCell>>2]|0; + $441 = (($440) + 1)|0; + HEAP32[$nCell>>2] = $441; + $442 = HEAP32[$j>>2]|0; + $443 = (($442) + 1)|0; + HEAP32[$j>>2] = $443; + } + } + } while(0); + $444 = HEAP32[$i>>2]|0; + $445 = HEAP32[$nOld>>2]|0; + $446 = (($445) - 1)|0; + $447 = ($444|0)<($446|0); + if ($447) { + $448 = HEAP32[$leafData>>2]|0; + $449 = ($448|0)!=(0); + if (!($449)) { + $450 = HEAP32[$i>>2]|0; + $451 = (($szNew) + ($450<<2)|0); + $452 = HEAP32[$451>>2]|0; + $453 = $452&65535; + HEAP16[$sz>>1] = $453; + $454 = HEAP16[$sz>>1]|0; + $455 = HEAP32[$nCell>>2]|0; + $456 = HEAP32[$szCell>>2]|0; + $457 = (($456) + ($455<<1)|0); + HEAP16[$457>>1] = $454; + $458 = HEAP32[$iSpace1>>2]|0; + $459 = HEAP32[$aSpace1>>2]|0; + $460 = (($459) + ($458)|0); + HEAP32[$pTemp>>2] = $460; + $461 = HEAP16[$sz>>1]|0; + $462 = $461&65535; + $463 = HEAP32[$iSpace1>>2]|0; + $464 = (($463) + ($462))|0; + HEAP32[$iSpace1>>2] = $464; + $465 = HEAP32[$pTemp>>2]|0; + $466 = HEAP32[$i>>2]|0; + $467 = (($apDiv) + ($466<<2)|0); + $468 = HEAP32[$467>>2]|0; + $469 = HEAP16[$sz>>1]|0; + $470 = $469&65535; + _memcpy(($465|0),($468|0),($470|0))|0; + $471 = HEAP32[$pTemp>>2]|0; + $472 = HEAP16[$leafCorrection>>1]|0; + $473 = $472&65535; + $474 = (($471) + ($473)|0); + $475 = HEAP32[$nCell>>2]|0; + $476 = HEAP32[$apCell>>2]|0; + $477 = (($476) + ($475<<2)|0); + HEAP32[$477>>2] = $474; + $478 = HEAP32[$nCell>>2]|0; + $479 = HEAP32[$szCell>>2]|0; + $480 = (($479) + ($478<<1)|0); + $481 = HEAP16[$480>>1]|0; + $482 = $481&65535; + $483 = HEAP16[$leafCorrection>>1]|0; + $484 = $483&65535; + $485 = (($482) - ($484))|0; + $486 = $485&65535; + $487 = HEAP32[$nCell>>2]|0; + $488 = HEAP32[$szCell>>2]|0; + $489 = (($488) + ($487<<1)|0); + HEAP16[$489>>1] = $486; + $490 = HEAP32[$pOld>>2]|0; + $491 = (($490) + 3|0); + $492 = HEAP8[$491>>0]|0; + $493 = ($492<<24>>24)!=(0); + $494 = HEAP32[$nCell>>2]|0; + if ($493) { + $502 = HEAP32[$szCell>>2]|0; + $503 = (($502) + ($494<<1)|0); + $504 = HEAP16[$503>>1]|0; + $505 = $504&65535; + $506 = ($505|0)<(4); + if ($506) { + $507 = HEAP32[$nCell>>2]|0; + $508 = HEAP32[$szCell>>2]|0; + $509 = (($508) + ($507<<1)|0); + HEAP16[$509>>1] = 4; + } + } else { + $495 = HEAP32[$apCell>>2]|0; + $496 = (($495) + ($494<<2)|0); + $497 = HEAP32[$496>>2]|0; + $498 = HEAP32[$pOld>>2]|0; + $499 = (($498) + 56|0); + $500 = HEAP32[$499>>2]|0; + $501 = (($500) + 8|0); + ;HEAP8[$497+0>>0]=HEAP8[$501+0>>0]|0;HEAP8[$497+1>>0]=HEAP8[$501+1>>0]|0;HEAP8[$497+2>>0]=HEAP8[$501+2>>0]|0;HEAP8[$497+3>>0]=HEAP8[$501+3>>0]|0; + } + $510 = HEAP32[$nCell>>2]|0; + $511 = (($510) + 1)|0; + HEAP32[$nCell>>2] = $511; + } + } + $512 = HEAP32[$i>>2]|0; + $513 = (($512) + 1)|0; + HEAP32[$i>>2] = $513; + } + $514 = (($324) + 36|0); + $515 = HEAP32[$514>>2]|0; + $516 = (($515) - 12)|0; + $517 = HEAP16[$leafCorrection>>1]|0; + $518 = $517&65535; + $519 = (($516) + ($518))|0; + HEAP32[$usableSpace>>2] = $519; + HEAP32[$i>>2] = 0; + HEAP32[$k>>2] = 0; + HEAP32[$subtotal>>2] = 0; + while(1) { + $520 = HEAP32[$i>>2]|0; + $521 = HEAP32[$nCell>>2]|0; + $522 = ($520|0)<($521|0); + if (!($522)) { + break; + } + $523 = HEAP32[$i>>2]|0; + $524 = HEAP32[$szCell>>2]|0; + $525 = (($524) + ($523<<1)|0); + $526 = HEAP16[$525>>1]|0; + $527 = $526&65535; + $528 = (($527) + 2)|0; + $529 = HEAP32[$subtotal>>2]|0; + $530 = (($529) + ($528))|0; + HEAP32[$subtotal>>2] = $530; + $531 = HEAP32[$subtotal>>2]|0; + $532 = HEAP32[$usableSpace>>2]|0; + $533 = ($531|0)>($532|0); + if ($533) { + $534 = HEAP32[$subtotal>>2]|0; + $535 = HEAP32[$i>>2]|0; + $536 = HEAP32[$szCell>>2]|0; + $537 = (($536) + ($535<<1)|0); + $538 = HEAP16[$537>>1]|0; + $539 = $538&65535; + $540 = (($534) - ($539))|0; + $541 = HEAP32[$k>>2]|0; + $542 = (($szNew) + ($541<<2)|0); + HEAP32[$542>>2] = $540; + $543 = HEAP32[$i>>2]|0; + $544 = HEAP32[$k>>2]|0; + $545 = (($cntNew) + ($544<<2)|0); + HEAP32[$545>>2] = $543; + $546 = HEAP32[$leafData>>2]|0; + $547 = ($546|0)!=(0); + if ($547) { + $548 = HEAP32[$i>>2]|0; + $549 = (($548) + -1)|0; + HEAP32[$i>>2] = $549; + } + HEAP32[$subtotal>>2] = 0; + $550 = HEAP32[$k>>2]|0; + $551 = (($550) + 1)|0; + HEAP32[$k>>2] = $551; + $552 = HEAP32[$k>>2]|0; + $553 = ($552|0)>(4); + if ($553) { + label = 51; + break; + } + } + $555 = HEAP32[$i>>2]|0; + $556 = (($555) + 1)|0; + HEAP32[$i>>2] = $556; + } + if ((label|0) == 51) { + $554 = (_sqlite3CorruptError(57526)|0); + HEAP32[$rc>>2] = $554; + break; + } + $557 = HEAP32[$subtotal>>2]|0; + $558 = HEAP32[$k>>2]|0; + $559 = (($szNew) + ($558<<2)|0); + HEAP32[$559>>2] = $557; + $560 = HEAP32[$nCell>>2]|0; + $561 = HEAP32[$k>>2]|0; + $562 = (($cntNew) + ($561<<2)|0); + HEAP32[$562>>2] = $560; + $563 = HEAP32[$k>>2]|0; + $564 = (($563) + 1)|0; + HEAP32[$k>>2] = $564; + $565 = HEAP32[$k>>2]|0; + $566 = (($565) - 1)|0; + HEAP32[$i>>2] = $566; + while(1) { + $567 = HEAP32[$i>>2]|0; + $568 = ($567|0)>(0); + if (!($568)) { + break; + } + $569 = HEAP32[$i>>2]|0; + $570 = (($szNew) + ($569<<2)|0); + $571 = HEAP32[$570>>2]|0; + HEAP32[$szRight>>2] = $571; + $572 = HEAP32[$i>>2]|0; + $573 = (($572) - 1)|0; + $574 = (($szNew) + ($573<<2)|0); + $575 = HEAP32[$574>>2]|0; + HEAP32[$szLeft>>2] = $575; + $576 = HEAP32[$i>>2]|0; + $577 = (($576) - 1)|0; + $578 = (($cntNew) + ($577<<2)|0); + $579 = HEAP32[$578>>2]|0; + $580 = (($579) - 1)|0; + HEAP32[$r>>2] = $580; + $581 = HEAP32[$r>>2]|0; + $582 = (($581) + 1)|0; + $583 = HEAP32[$leafData>>2]|0; + $584 = (($582) - ($583))|0; + HEAP32[$d>>2] = $584; + while(1) { + $585 = HEAP32[$szRight>>2]|0; + $586 = ($585|0)==(0); + if (!($586)) { + $587 = HEAP32[$5>>2]|0; + $588 = ($587|0)!=(0); + if ($588) { + break; + } + $589 = HEAP32[$szRight>>2]|0; + $590 = HEAP32[$d>>2]|0; + $591 = HEAP32[$szCell>>2]|0; + $592 = (($591) + ($590<<1)|0); + $593 = HEAP16[$592>>1]|0; + $594 = $593&65535; + $595 = (($589) + ($594))|0; + $596 = (($595) + 2)|0; + $597 = HEAP32[$szLeft>>2]|0; + $598 = HEAP32[$r>>2]|0; + $599 = HEAP32[$szCell>>2]|0; + $600 = (($599) + ($598<<1)|0); + $601 = HEAP16[$600>>1]|0; + $602 = $601&65535; + $603 = (($602) + 2)|0; + $604 = (($597) - ($603))|0; + $605 = ($596|0)<=($604|0); + if (!($605)) { + break; + } + } + $606 = HEAP32[$d>>2]|0; + $607 = HEAP32[$szCell>>2]|0; + $608 = (($607) + ($606<<1)|0); + $609 = HEAP16[$608>>1]|0; + $610 = $609&65535; + $611 = (($610) + 2)|0; + $612 = HEAP32[$szRight>>2]|0; + $613 = (($612) + ($611))|0; + HEAP32[$szRight>>2] = $613; + $614 = HEAP32[$r>>2]|0; + $615 = HEAP32[$szCell>>2]|0; + $616 = (($615) + ($614<<1)|0); + $617 = HEAP16[$616>>1]|0; + $618 = $617&65535; + $619 = (($618) + 2)|0; + $620 = HEAP32[$szLeft>>2]|0; + $621 = (($620) - ($619))|0; + HEAP32[$szLeft>>2] = $621; + $622 = HEAP32[$i>>2]|0; + $623 = (($622) - 1)|0; + $624 = (($cntNew) + ($623<<2)|0); + $625 = HEAP32[$624>>2]|0; + $626 = (($625) + -1)|0; + HEAP32[$624>>2] = $626; + $627 = HEAP32[$i>>2]|0; + $628 = (($627) - 1)|0; + $629 = (($cntNew) + ($628<<2)|0); + $630 = HEAP32[$629>>2]|0; + $631 = (($630) - 1)|0; + HEAP32[$r>>2] = $631; + $632 = HEAP32[$r>>2]|0; + $633 = (($632) + 1)|0; + $634 = HEAP32[$leafData>>2]|0; + $635 = (($633) - ($634))|0; + HEAP32[$d>>2] = $635; + } + $636 = HEAP32[$szRight>>2]|0; + $637 = HEAP32[$i>>2]|0; + $638 = (($szNew) + ($637<<2)|0); + HEAP32[$638>>2] = $636; + $639 = HEAP32[$szLeft>>2]|0; + $640 = HEAP32[$i>>2]|0; + $641 = (($640) - 1)|0; + $642 = (($szNew) + ($641<<2)|0); + HEAP32[$642>>2] = $639; + $643 = HEAP32[$i>>2]|0; + $644 = (($643) + -1)|0; + HEAP32[$i>>2] = $644; + } + $645 = HEAP32[$apOld>>2]|0; + $646 = (($645) + 72|0); + $647 = HEAP32[$646>>2]|0; + $648 = ($647>>>0)<=(1); + if ($648) { + $649 = (_sqlite3CorruptError(57588)|0); + HEAP32[$rc>>2] = $649; + break; + } + $650 = HEAP32[$apOld>>2]|0; + $651 = (($650) + 56|0); + $652 = HEAP32[$651>>2]|0; + $653 = HEAP8[$652>>0]|0; + $654 = $653&255; + HEAP32[$pageFlags>>2] = $654; + HEAP32[$i>>2] = 0; + while(1) { + $655 = HEAP32[$i>>2]|0; + $656 = HEAP32[$k>>2]|0; + $657 = ($655|0)<($656|0); + if (!($657)) { + break; + } + $658 = HEAP32[$i>>2]|0; + $659 = HEAP32[$nOld>>2]|0; + $660 = ($658|0)<($659|0); + if ($660) { + $661 = HEAP32[$i>>2]|0; + $662 = (($apOld) + ($661<<2)|0); + $663 = HEAP32[$662>>2]|0; + $664 = HEAP32[$i>>2]|0; + $665 = (($apNew) + ($664<<2)|0); + HEAP32[$665>>2] = $663; + HEAP32[$pNew>>2] = $663; + $666 = HEAP32[$i>>2]|0; + $667 = (($apOld) + ($666<<2)|0); + HEAP32[$667>>2] = 0; + $668 = HEAP32[$pNew>>2]|0; + $669 = (($668) + 68|0); + $670 = HEAP32[$669>>2]|0; + $671 = (_sqlite3PagerWrite($670)|0); + HEAP32[$rc>>2] = $671; + $672 = HEAP32[$nNew>>2]|0; + $673 = (($672) + 1)|0; + HEAP32[$nNew>>2] = $673; + $674 = HEAP32[$rc>>2]|0; + $675 = ($674|0)!=(0); + if ($675) { + break L32; + } + } else { + $676 = HEAP32[$pBt>>2]|0; + $677 = HEAP32[$5>>2]|0; + $678 = ($677|0)!=(0); + $679 = HEAP32[$pgno>>2]|0; + $680 = $678 ? 1 : $679; + $681 = (_allocateBtreePage($676,$pNew,$pgno,$680,0)|0); + HEAP32[$rc>>2] = $681; + $682 = HEAP32[$rc>>2]|0; + $683 = ($682|0)!=(0); + if ($683) { + break L32; + } + $684 = HEAP32[$pNew>>2]|0; + $685 = HEAP32[$i>>2]|0; + $686 = (($apNew) + ($685<<2)|0); + HEAP32[$686>>2] = $684; + $687 = HEAP32[$nNew>>2]|0; + $688 = (($687) + 1)|0; + HEAP32[$nNew>>2] = $688; + $689 = HEAP32[$pBt>>2]|0; + $690 = (($689) + 17|0); + $691 = HEAP8[$690>>0]|0; + $692 = ($691<<24>>24)!=(0); + if ($692) { + $693 = HEAP32[$pBt>>2]|0; + $694 = HEAP32[$pNew>>2]|0; + $695 = (($694) + 72|0); + $696 = HEAP32[$695>>2]|0; + $697 = HEAP32[$1>>2]|0; + $698 = (($697) + 72|0); + $699 = HEAP32[$698>>2]|0; + _ptrmapPut($693,$696,5,$699,$rc); + $700 = HEAP32[$rc>>2]|0; + $701 = ($700|0)!=(0); + if ($701) { + break L32; + } + } + } + $702 = HEAP32[$i>>2]|0; + $703 = (($702) + 1)|0; + HEAP32[$i>>2] = $703; + } + while(1) { + $704 = HEAP32[$i>>2]|0; + $705 = HEAP32[$nOld>>2]|0; + $706 = ($704|0)<($705|0); + if (!($706)) { + break; + } + $707 = HEAP32[$i>>2]|0; + $708 = (($apOld) + ($707<<2)|0); + $709 = HEAP32[$708>>2]|0; + _freePage($709,$rc); + $710 = HEAP32[$rc>>2]|0; + $711 = ($710|0)!=(0); + if ($711) { + break L32; + } + $712 = HEAP32[$i>>2]|0; + $713 = (($apOld) + ($712<<2)|0); + $714 = HEAP32[$713>>2]|0; + _releasePage($714); + $715 = HEAP32[$i>>2]|0; + $716 = (($apOld) + ($715<<2)|0); + HEAP32[$716>>2] = 0; + $717 = HEAP32[$i>>2]|0; + $718 = (($717) + 1)|0; + HEAP32[$i>>2] = $718; + } + HEAP32[$i>>2] = 0; + while(1) { + $719 = HEAP32[$i>>2]|0; + $720 = HEAP32[$k>>2]|0; + $721 = (($720) - 1)|0; + $722 = ($719|0)<($721|0); + if (!($722)) { + break; + } + $723 = HEAP32[$i>>2]|0; + $724 = (($apNew) + ($723<<2)|0); + $725 = HEAP32[$724>>2]|0; + $726 = (($725) + 72|0); + $727 = HEAP32[$726>>2]|0; + HEAP32[$minV>>2] = $727; + $728 = HEAP32[$i>>2]|0; + HEAP32[$minI>>2] = $728; + $729 = HEAP32[$i>>2]|0; + $730 = (($729) + 1)|0; + HEAP32[$j>>2] = $730; + while(1) { + $731 = HEAP32[$j>>2]|0; + $732 = HEAP32[$k>>2]|0; + $733 = ($731|0)<($732|0); + if (!($733)) { + break; + } + $734 = HEAP32[$j>>2]|0; + $735 = (($apNew) + ($734<<2)|0); + $736 = HEAP32[$735>>2]|0; + $737 = (($736) + 72|0); + $738 = HEAP32[$737>>2]|0; + $739 = HEAP32[$minV>>2]|0; + $740 = ($738>>>0)<($739>>>0); + if ($740) { + $741 = HEAP32[$j>>2]|0; + HEAP32[$minI>>2] = $741; + $742 = HEAP32[$j>>2]|0; + $743 = (($apNew) + ($742<<2)|0); + $744 = HEAP32[$743>>2]|0; + $745 = (($744) + 72|0); + $746 = HEAP32[$745>>2]|0; + HEAP32[$minV>>2] = $746; + } + $747 = HEAP32[$j>>2]|0; + $748 = (($747) + 1)|0; + HEAP32[$j>>2] = $748; + } + $749 = HEAP32[$minI>>2]|0; + $750 = HEAP32[$i>>2]|0; + $751 = ($749|0)>($750|0); + if ($751) { + $752 = HEAP32[$i>>2]|0; + $753 = (($apNew) + ($752<<2)|0); + $754 = HEAP32[$753>>2]|0; + HEAP32[$pT>>2] = $754; + $755 = HEAP32[$minI>>2]|0; + $756 = (($apNew) + ($755<<2)|0); + $757 = HEAP32[$756>>2]|0; + $758 = HEAP32[$i>>2]|0; + $759 = (($apNew) + ($758<<2)|0); + HEAP32[$759>>2] = $757; + $760 = HEAP32[$pT>>2]|0; + $761 = HEAP32[$minI>>2]|0; + $762 = (($apNew) + ($761<<2)|0); + HEAP32[$762>>2] = $760; + } + $763 = HEAP32[$i>>2]|0; + $764 = (($763) + 1)|0; + HEAP32[$i>>2] = $764; + } + $765 = HEAP32[$pRight>>2]|0; + $766 = HEAP32[$nNew>>2]|0; + $767 = (($766) - 1)|0; + $768 = (($apNew) + ($767<<2)|0); + $769 = HEAP32[$768>>2]|0; + $770 = (($769) + 72|0); + $771 = HEAP32[$770>>2]|0; + _sqlite3Put4byte($765,$771); + HEAP32[$j>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $772 = HEAP32[$i>>2]|0; + $773 = HEAP32[$nNew>>2]|0; + $774 = ($772|0)<($773|0); + if (!($774)) { + break; + } + $775 = HEAP32[$i>>2]|0; + $776 = (($apNew) + ($775<<2)|0); + $777 = HEAP32[$776>>2]|0; + HEAP32[$pNew1>>2] = $777; + $778 = HEAP32[$pNew1>>2]|0; + $779 = HEAP32[$pageFlags>>2]|0; + _zeroPage($778,$779); + $780 = HEAP32[$pNew1>>2]|0; + $781 = HEAP32[$i>>2]|0; + $782 = (($cntNew) + ($781<<2)|0); + $783 = HEAP32[$782>>2]|0; + $784 = HEAP32[$j>>2]|0; + $785 = (($783) - ($784))|0; + $786 = HEAP32[$j>>2]|0; + $787 = HEAP32[$apCell>>2]|0; + $788 = (($787) + ($786<<2)|0); + $789 = HEAP32[$j>>2]|0; + $790 = HEAP32[$szCell>>2]|0; + $791 = (($790) + ($789<<1)|0); + _assemblePage($780,$785,$788,$791); + $792 = HEAP32[$i>>2]|0; + $793 = (($cntNew) + ($792<<2)|0); + $794 = HEAP32[$793>>2]|0; + HEAP32[$j>>2] = $794; + $795 = HEAP32[$j>>2]|0; + $796 = HEAP32[$nCell>>2]|0; + $797 = ($795|0)<($796|0); + if ($797) { + $798 = HEAP32[$j>>2]|0; + $799 = HEAP32[$apCell>>2]|0; + $800 = (($799) + ($798<<2)|0); + $801 = HEAP32[$800>>2]|0; + HEAP32[$pCell>>2] = $801; + $802 = HEAP32[$j>>2]|0; + $803 = HEAP32[$szCell>>2]|0; + $804 = (($803) + ($802<<1)|0); + $805 = HEAP16[$804>>1]|0; + $806 = $805&65535; + $807 = HEAP16[$leafCorrection>>1]|0; + $808 = $807&65535; + $809 = (($806) + ($808))|0; + HEAP32[$sz3>>2] = $809; + $810 = HEAP32[$iOvflSpace>>2]|0; + $811 = HEAP32[$3>>2]|0; + $812 = (($811) + ($810)|0); + HEAP32[$pTemp2>>2] = $812; + $813 = HEAP32[$pNew1>>2]|0; + $814 = (($813) + 3|0); + $815 = HEAP8[$814>>0]|0; + $816 = ($815<<24>>24)!=(0); + do { + if ($816) { + $822 = HEAP32[$leafData>>2]|0; + $823 = ($822|0)!=(0); + if ($823) { + $824 = HEAP32[$j>>2]|0; + $825 = (($824) + -1)|0; + HEAP32[$j>>2] = $825; + $826 = HEAP32[$pNew1>>2]|0; + $827 = HEAP32[$j>>2]|0; + $828 = HEAP32[$apCell>>2]|0; + $829 = (($828) + ($827<<2)|0); + $830 = HEAP32[$829>>2]|0; + _btreeParseCellPtr($826,$830,$info); + $831 = HEAP32[$pTemp2>>2]|0; + HEAP32[$pCell>>2] = $831; + $832 = HEAP32[$pCell>>2]|0; + $833 = (($832) + 4|0); + $834 = $info; + $835 = $834; + $836 = HEAP32[$835>>2]|0; + $837 = (($834) + 4)|0; + $838 = $837; + $839 = HEAP32[$838>>2]|0; + $840 = (_sqlite3PutVarint($833,$836,$839)|0); + $841 = (4 + ($840))|0; + HEAP32[$sz3>>2] = $841; + HEAP32[$pTemp2>>2] = 0; + break; + } + $842 = HEAP32[$pCell>>2]|0; + $843 = (($842) + -4|0); + HEAP32[$pCell>>2] = $843; + $844 = HEAP32[$j>>2]|0; + $845 = HEAP32[$szCell>>2]|0; + $846 = (($845) + ($844<<1)|0); + $847 = HEAP16[$846>>1]|0; + $848 = $847&65535; + $849 = ($848|0)==(4); + if ($849) { + $850 = HEAP32[$1>>2]|0; + $851 = HEAP32[$pCell>>2]|0; + $852 = (_cellSizePtr($850,$851)|0); + $853 = $852&65535; + HEAP32[$sz3>>2] = $853; + } + } else { + $817 = HEAP32[$pNew1>>2]|0; + $818 = (($817) + 56|0); + $819 = HEAP32[$818>>2]|0; + $820 = (($819) + 8|0); + $821 = HEAP32[$pCell>>2]|0; + ;HEAP8[$820+0>>0]=HEAP8[$821+0>>0]|0;HEAP8[$820+1>>0]=HEAP8[$821+1>>0]|0;HEAP8[$820+2>>0]=HEAP8[$821+2>>0]|0;HEAP8[$820+3>>0]=HEAP8[$821+3>>0]|0; + } + } while(0); + $854 = HEAP32[$sz3>>2]|0; + $855 = HEAP32[$iOvflSpace>>2]|0; + $856 = (($855) + ($854))|0; + HEAP32[$iOvflSpace>>2] = $856; + $857 = HEAP32[$1>>2]|0; + $858 = HEAP32[$nxDiv>>2]|0; + $859 = HEAP32[$pCell>>2]|0; + $860 = HEAP32[$sz3>>2]|0; + $861 = HEAP32[$pTemp2>>2]|0; + $862 = HEAP32[$pNew1>>2]|0; + $863 = (($862) + 72|0); + $864 = HEAP32[$863>>2]|0; + _insertCell($857,$858,$859,$860,$861,$864,$rc); + $865 = HEAP32[$rc>>2]|0; + $866 = ($865|0)!=(0); + if ($866) { + break L32; + } + $867 = HEAP32[$j>>2]|0; + $868 = (($867) + 1)|0; + HEAP32[$j>>2] = $868; + $869 = HEAP32[$nxDiv>>2]|0; + $870 = (($869) + 1)|0; + HEAP32[$nxDiv>>2] = $870; + } + $871 = HEAP32[$i>>2]|0; + $872 = (($871) + 1)|0; + HEAP32[$i>>2] = $872; + } + $873 = HEAP32[$pageFlags>>2]|0; + $874 = $873 & 8; + $875 = ($874|0)==(0); + if ($875) { + $876 = HEAP32[$nOld>>2]|0; + $877 = (($876) - 1)|0; + $878 = (($apCopy) + ($877<<2)|0); + $879 = HEAP32[$878>>2]|0; + $880 = (($879) + 56|0); + $881 = HEAP32[$880>>2]|0; + $882 = (($881) + 8|0); + HEAP32[$zChild>>2] = $882; + $883 = HEAP32[$nNew>>2]|0; + $884 = (($883) - 1)|0; + $885 = (($apNew) + ($884<<2)|0); + $886 = HEAP32[$885>>2]|0; + $887 = (($886) + 56|0); + $888 = HEAP32[$887>>2]|0; + $889 = (($888) + 8|0); + $890 = HEAP32[$zChild>>2]|0; + ;HEAP8[$889+0>>0]=HEAP8[$890+0>>0]|0;HEAP8[$889+1>>0]=HEAP8[$890+1>>0]|0;HEAP8[$889+2>>0]=HEAP8[$890+2>>0]|0;HEAP8[$889+3>>0]=HEAP8[$890+3>>0]|0; + } + $891 = HEAP32[$4>>2]|0; + $892 = ($891|0)!=(0); + if ($892) { + $893 = HEAP32[$1>>2]|0; + $894 = (($893) + 16|0); + $895 = HEAP16[$894>>1]|0; + $896 = $895&65535; + $897 = ($896|0)==(0); + if ($897) { + $898 = HEAP32[$1>>2]|0; + $899 = (($898) + 5|0); + $900 = HEAP8[$899>>0]|0; + $901 = $900&255; + $902 = HEAP32[$apNew>>2]|0; + $903 = (($902) + 14|0); + $904 = HEAP16[$903>>1]|0; + $905 = $904&65535; + $906 = ($901|0)<=($905|0); + if ($906) { + $907 = HEAP32[$apNew>>2]|0; + $908 = HEAP32[$1>>2]|0; + _copyNodeContent($907,$908,$rc); + $909 = HEAP32[$apNew>>2]|0; + _freePage($909,$rc); + break; + } + } + } + $910 = HEAP32[$pBt>>2]|0; + $911 = (($910) + 17|0); + $912 = HEAP8[$911>>0]|0; + $913 = ($912<<24>>24)!=(0); + if ($913) { + $914 = HEAP32[$apNew>>2]|0; + HEAP32[$pNew4>>2] = $914; + $915 = HEAP32[$apCopy>>2]|0; + HEAP32[$pOld5>>2] = $915; + $916 = HEAP32[$pOld5>>2]|0; + $917 = (($916) + 1|0); + $918 = HEAP8[$917>>0]|0; + $919 = $918&255; + HEAP32[$nOverflow>>2] = $919; + $920 = HEAP32[$pOld5>>2]|0; + $921 = (($920) + 16|0); + $922 = HEAP16[$921>>1]|0; + $923 = $922&65535; + $924 = HEAP32[$nOverflow>>2]|0; + $925 = (($923) + ($924))|0; + HEAP32[$iNextOld>>2] = $925; + $926 = HEAP32[$nOverflow>>2]|0; + $927 = ($926|0)!=(0); + if ($927) { + $928 = HEAP32[$pOld5>>2]|0; + $929 = (($928) + 20|0); + $930 = HEAP16[$929>>1]|0; + $931 = $930&65535; + $932 = $931; + } else { + $932 = -1; + } + HEAP32[$iOverflow>>2] = $932; + HEAP32[$j>>2] = 0; + HEAP32[$k>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $933 = HEAP32[$i>>2]|0; + $934 = HEAP32[$nCell>>2]|0; + $935 = ($933|0)<($934|0); + if (!($935)) { + break; + } + HEAP32[$isDivider>>2] = 0; + while(1) { + $936 = HEAP32[$i>>2]|0; + $937 = HEAP32[$iNextOld>>2]|0; + $938 = ($936|0)==($937|0); + if (!($938)) { + break; + } + $939 = HEAP32[$j>>2]|0; + $940 = (($939) + 1)|0; + HEAP32[$j>>2] = $940; + $941 = (($apCopy) + ($940<<2)|0); + $942 = HEAP32[$941>>2]|0; + HEAP32[$pOld5>>2] = $942; + $943 = HEAP32[$i>>2]|0; + $944 = HEAP32[$leafData>>2]|0; + $945 = ($944|0)!=(0); + $946 = $945 ^ 1; + $947 = $946&1; + $948 = (($943) + ($947))|0; + $949 = HEAP32[$pOld5>>2]|0; + $950 = (($949) + 16|0); + $951 = HEAP16[$950>>1]|0; + $952 = $951&65535; + $953 = (($948) + ($952))|0; + $954 = HEAP32[$pOld5>>2]|0; + $955 = (($954) + 1|0); + $956 = HEAP8[$955>>0]|0; + $957 = $956&255; + $958 = (($953) + ($957))|0; + HEAP32[$iNextOld>>2] = $958; + $959 = HEAP32[$pOld5>>2]|0; + $960 = (($959) + 1|0); + $961 = HEAP8[$960>>0]|0; + $962 = ($961<<24>>24)!=(0); + if ($962) { + $963 = HEAP32[$pOld5>>2]|0; + $964 = (($963) + 1|0); + $965 = HEAP8[$964>>0]|0; + $966 = $965&255; + HEAP32[$nOverflow>>2] = $966; + $967 = HEAP32[$i>>2]|0; + $968 = HEAP32[$leafData>>2]|0; + $969 = ($968|0)!=(0); + $970 = $969 ^ 1; + $971 = $970&1; + $972 = (($967) + ($971))|0; + $973 = HEAP32[$pOld5>>2]|0; + $974 = (($973) + 20|0); + $975 = HEAP16[$974>>1]|0; + $976 = $975&65535; + $977 = (($972) + ($976))|0; + HEAP32[$iOverflow>>2] = $977; + } + $978 = HEAP32[$leafData>>2]|0; + $979 = ($978|0)!=(0); + $980 = $979 ^ 1; + $981 = $980&1; + HEAP32[$isDivider>>2] = $981; + } + $982 = HEAP32[$i>>2]|0; + $983 = HEAP32[$iOverflow>>2]|0; + $984 = ($982|0)==($983|0); + if ($984) { + HEAP32[$isDivider>>2] = 1; + $985 = HEAP32[$nOverflow>>2]|0; + $986 = (($985) + -1)|0; + HEAP32[$nOverflow>>2] = $986; + $987 = ($986|0)>(0); + if ($987) { + $988 = HEAP32[$iOverflow>>2]|0; + $989 = (($988) + 1)|0; + HEAP32[$iOverflow>>2] = $989; + } + } + $990 = HEAP32[$i>>2]|0; + $991 = HEAP32[$k>>2]|0; + $992 = (($cntNew) + ($991<<2)|0); + $993 = HEAP32[$992>>2]|0; + $994 = ($990|0)==($993|0); + if ($994) { + $995 = HEAP32[$k>>2]|0; + $996 = (($995) + 1)|0; + HEAP32[$k>>2] = $996; + $997 = (($apNew) + ($996<<2)|0); + $998 = HEAP32[$997>>2]|0; + HEAP32[$pNew4>>2] = $998; + $999 = HEAP32[$leafData>>2]|0; + $1000 = ($999|0)!=(0); + if ($1000) { + label = 117; + } + } else { + label = 117; + } + do { + if ((label|0) == 117) { + label = 0; + $1001 = HEAP32[$isDivider>>2]|0; + $1002 = ($1001|0)!=(0); + if (!($1002)) { + $1003 = HEAP32[$pOld5>>2]|0; + $1004 = (($1003) + 72|0); + $1005 = HEAP32[$1004>>2]|0; + $1006 = HEAP32[$pNew4>>2]|0; + $1007 = (($1006) + 72|0); + $1008 = HEAP32[$1007>>2]|0; + $1009 = ($1005|0)!=($1008|0); + if (!($1009)) { + break; + } + } + $1010 = HEAP16[$leafCorrection>>1]|0; + $1011 = ($1010<<16>>16)!=(0); + if (!($1011)) { + $1012 = HEAP32[$pBt>>2]|0; + $1013 = HEAP32[$i>>2]|0; + $1014 = HEAP32[$apCell>>2]|0; + $1015 = (($1014) + ($1013<<2)|0); + $1016 = HEAP32[$1015>>2]|0; + $1017 = (_sqlite3Get4byte($1016)|0); + $1018 = HEAP32[$pNew4>>2]|0; + $1019 = (($1018) + 72|0); + $1020 = HEAP32[$1019>>2]|0; + _ptrmapPut($1012,$1017,5,$1020,$rc); + } + $1021 = HEAP32[$i>>2]|0; + $1022 = HEAP32[$szCell>>2]|0; + $1023 = (($1022) + ($1021<<1)|0); + $1024 = HEAP16[$1023>>1]|0; + $1025 = $1024&65535; + $1026 = HEAP32[$pNew4>>2]|0; + $1027 = (($1026) + 10|0); + $1028 = HEAP16[$1027>>1]|0; + $1029 = $1028&65535; + $1030 = ($1025|0)>($1029|0); + if ($1030) { + $1031 = HEAP32[$pNew4>>2]|0; + $1032 = HEAP32[$i>>2]|0; + $1033 = HEAP32[$apCell>>2]|0; + $1034 = (($1033) + ($1032<<2)|0); + $1035 = HEAP32[$1034>>2]|0; + _ptrmapPutOvflPtr($1031,$1035,$rc); + } + } + } while(0); + $1036 = HEAP32[$i>>2]|0; + $1037 = (($1036) + 1)|0; + HEAP32[$i>>2] = $1037; + } + $1038 = HEAP16[$leafCorrection>>1]|0; + $1039 = ($1038<<16>>16)!=(0); + if (!($1039)) { + HEAP32[$i>>2] = 0; + while(1) { + $1040 = HEAP32[$i>>2]|0; + $1041 = HEAP32[$nNew>>2]|0; + $1042 = ($1040|0)<($1041|0); + if (!($1042)) { + break L32; + } + $1043 = HEAP32[$i>>2]|0; + $1044 = (($apNew) + ($1043<<2)|0); + $1045 = HEAP32[$1044>>2]|0; + $1046 = (($1045) + 56|0); + $1047 = HEAP32[$1046>>2]|0; + $1048 = (($1047) + 8|0); + $1049 = (_sqlite3Get4byte($1048)|0); + HEAP32[$key>>2] = $1049; + $1050 = HEAP32[$pBt>>2]|0; + $1051 = HEAP32[$key>>2]|0; + $1052 = HEAP32[$i>>2]|0; + $1053 = (($apNew) + ($1052<<2)|0); + $1054 = HEAP32[$1053>>2]|0; + $1055 = (($1054) + 72|0); + $1056 = HEAP32[$1055>>2]|0; + _ptrmapPut($1050,$1051,5,$1056,$rc); + $1057 = HEAP32[$i>>2]|0; + $1058 = (($1057) + 1)|0; + HEAP32[$i>>2] = $1058; + } + } + } + } + } while(0); + $1059 = HEAP32[$apCell>>2]|0; + _sqlite3ScratchFree($1059); + HEAP32[$i>>2] = 0; + while(1) { + $1060 = HEAP32[$i>>2]|0; + $1061 = HEAP32[$nOld>>2]|0; + $1062 = ($1060|0)<($1061|0); + if (!($1062)) { + break; + } + $1063 = HEAP32[$i>>2]|0; + $1064 = (($apOld) + ($1063<<2)|0); + $1065 = HEAP32[$1064>>2]|0; + _releasePage($1065); + $1066 = HEAP32[$i>>2]|0; + $1067 = (($1066) + 1)|0; + HEAP32[$i>>2] = $1067; + } + HEAP32[$i>>2] = 0; + while(1) { + $1068 = HEAP32[$i>>2]|0; + $1069 = HEAP32[$nNew>>2]|0; + $1070 = ($1068|0)<($1069|0); + if (!($1070)) { + break; + } + $1071 = HEAP32[$i>>2]|0; + $1072 = (($apNew) + ($1071<<2)|0); + $1073 = HEAP32[$1072>>2]|0; + _releasePage($1073); + $1074 = HEAP32[$i>>2]|0; + $1075 = (($1074) + 1)|0; + HEAP32[$i>>2] = $1075; + } + $1076 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $1076; + $1077 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($1077|0); +} +function _findOverflowCell($pPage,$iCell) { + $pPage = $pPage|0; + $iCell = $iCell|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $i = 0, $k = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $i = sp + 8|0; + $k = sp + 12|0; + HEAP32[$1>>2] = $pPage; + HEAP32[$2>>2] = $iCell; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 1|0); + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = (($6) - 1)|0; + HEAP32[$i>>2] = $7; + while(1) { + $8 = HEAP32[$i>>2]|0; + $9 = ($8|0)>=(0); + if (!($9)) { + label = 8; + break; + } + $10 = HEAP32[$i>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 20|0); + $13 = (($12) + ($10<<1)|0); + $14 = HEAP16[$13>>1]|0; + $15 = $14&65535; + HEAP32[$k>>2] = $15; + $16 = HEAP32[$k>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = ($16|0)<=($17|0); + if ($18) { + $19 = HEAP32[$k>>2]|0; + $20 = HEAP32[$2>>2]|0; + $21 = ($19|0)==($20|0); + if ($21) { + label = 5; + break; + } + $27 = HEAP32[$2>>2]|0; + $28 = (($27) + -1)|0; + HEAP32[$2>>2] = $28; + } + $29 = HEAP32[$i>>2]|0; + $30 = (($29) + -1)|0; + HEAP32[$i>>2] = $30; + } + if ((label|0) == 5) { + $22 = HEAP32[$i>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 32|0); + $25 = (($24) + ($22<<2)|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$0>>2] = $26; + $59 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($59|0); + } + else if ((label|0) == 8) { + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 56|0); + $33 = HEAP32[$32>>2]|0; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 18|0); + $36 = HEAP16[$35>>1]|0; + $37 = $36&65535; + $38 = HEAP32[$2>>2]|0; + $39 = $38<<1; + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 64|0); + $42 = HEAP32[$41>>2]|0; + $43 = (($42) + ($39)|0); + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = $45 << 8; + $47 = HEAP32[$2>>2]|0; + $48 = $47<<1; + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + 64|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + ($48)|0); + $53 = (($52) + 1|0); + $54 = HEAP8[$53>>0]|0; + $55 = $54&255; + $56 = $46 | $55; + $57 = $37 & $56; + $58 = (($33) + ($57)|0); + HEAP32[$0>>2] = $58; + $59 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($59|0); + } + return 0|0; +} +function _assemblePage($pPage,$nCell,$apCell,$aSize) { + $pPage = $pPage|0; + $nCell = $nCell|0; + $apCell = $apCell|0; + $aSize = $aSize|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $cellbody = 0, $data = 0, $hdr = 0, $i = 0, $nUsable = 0, $pCellptr = 0, $sz = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 20|0; + $1 = sp + 36|0; + $2 = sp + 32|0; + $3 = sp + 28|0; + $i = sp + 24|0; + $pCellptr = sp + 16|0; + $cellbody = sp + 12|0; + $data = sp + 8|0; + $hdr = sp + 4|0; + $nUsable = sp; + $sz = sp + 40|0; + HEAP32[$0>>2] = $pPage; + HEAP32[$1>>2] = $nCell; + HEAP32[$2>>2] = $apCell; + HEAP32[$3>>2] = $aSize; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 56|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$data>>2] = $6; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 5|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + HEAP32[$hdr>>2] = $10; + $11 = HEAP32[$0>>2]|0; + $12 = (($11) + 52|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 36|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$nUsable>>2] = $15; + $16 = HEAP32[$1>>2]|0; + $17 = $16<<1; + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 64|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + ($17)|0); + HEAP32[$pCellptr>>2] = $21; + $22 = HEAP32[$nUsable>>2]|0; + HEAP32[$cellbody>>2] = $22; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) - 1)|0; + HEAP32[$i>>2] = $24; + while(1) { + $25 = HEAP32[$i>>2]|0; + $26 = ($25|0)>=(0); + if (!($26)) { + break; + } + $27 = HEAP32[$i>>2]|0; + $28 = HEAP32[$3>>2]|0; + $29 = (($28) + ($27<<1)|0); + $30 = HEAP16[$29>>1]|0; + HEAP16[$sz>>1] = $30; + $31 = HEAP32[$pCellptr>>2]|0; + $32 = (($31) + -2|0); + HEAP32[$pCellptr>>2] = $32; + $33 = HEAP16[$sz>>1]|0; + $34 = $33&65535; + $35 = HEAP32[$cellbody>>2]|0; + $36 = (($35) - ($34))|0; + HEAP32[$cellbody>>2] = $36; + $37 = HEAP32[$cellbody>>2]|0; + $38 = $37 >> 8; + $39 = $38&255; + $40 = HEAP32[$pCellptr>>2]|0; + HEAP8[$40>>0] = $39; + $41 = HEAP32[$cellbody>>2]|0; + $42 = $41&255; + $43 = HEAP32[$pCellptr>>2]|0; + $44 = (($43) + 1|0); + HEAP8[$44>>0] = $42; + $45 = HEAP32[$cellbody>>2]|0; + $46 = HEAP32[$data>>2]|0; + $47 = (($46) + ($45)|0); + $48 = HEAP32[$i>>2]|0; + $49 = HEAP32[$2>>2]|0; + $50 = (($49) + ($48<<2)|0); + $51 = HEAP32[$50>>2]|0; + $52 = HEAP16[$sz>>1]|0; + $53 = $52&65535; + _memcpy(($47|0),($51|0),($53|0))|0; + $54 = HEAP32[$i>>2]|0; + $55 = (($54) + -1)|0; + HEAP32[$i>>2] = $55; + } + $56 = HEAP32[$1>>2]|0; + $57 = $56 >> 8; + $58 = $57&255; + $59 = HEAP32[$hdr>>2]|0; + $60 = (($59) + 3)|0; + $61 = HEAP32[$data>>2]|0; + $62 = (($61) + ($60)|0); + HEAP8[$62>>0] = $58; + $63 = HEAP32[$1>>2]|0; + $64 = $63&255; + $65 = HEAP32[$hdr>>2]|0; + $66 = (($65) + 3)|0; + $67 = HEAP32[$data>>2]|0; + $68 = (($67) + ($66)|0); + $69 = (($68) + 1|0); + HEAP8[$69>>0] = $64; + $70 = HEAP32[$cellbody>>2]|0; + $71 = $70 >> 8; + $72 = $71&255; + $73 = HEAP32[$hdr>>2]|0; + $74 = (($73) + 5)|0; + $75 = HEAP32[$data>>2]|0; + $76 = (($75) + ($74)|0); + HEAP8[$76>>0] = $72; + $77 = HEAP32[$cellbody>>2]|0; + $78 = $77&255; + $79 = HEAP32[$hdr>>2]|0; + $80 = (($79) + 5)|0; + $81 = HEAP32[$data>>2]|0; + $82 = (($81) + ($80)|0); + $83 = (($82) + 1|0); + HEAP8[$83>>0] = $78; + $84 = HEAP32[$1>>2]|0; + $85 = $84<<1; + $86 = HEAP32[$nUsable>>2]|0; + $87 = (($85) + ($86))|0; + $88 = HEAP32[$cellbody>>2]|0; + $89 = (($87) - ($88))|0; + $90 = HEAP32[$0>>2]|0; + $91 = (($90) + 14|0); + $92 = HEAP16[$91>>1]|0; + $93 = $92&65535; + $94 = (($93) - ($89))|0; + $95 = $94&65535; + HEAP16[$91>>1] = $95; + $96 = HEAP32[$1>>2]|0; + $97 = $96&65535; + $98 = HEAP32[$0>>2]|0; + $99 = (($98) + 16|0); + HEAP16[$99>>1] = $97; + STACKTOP = sp;return; +} +function _copyNodeContent($pFrom,$pTo,$pRC) { + $pFrom = $pFrom|0; + $pTo = $pTo|0; + $pRC = $pRC|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $9 = 0; + var $aFrom = 0, $aTo = 0, $iData = 0, $iFromHdr = 0, $iToHdr = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $pBt = sp + 24|0; + $aFrom = sp + 20|0; + $aTo = sp + 16|0; + $iFromHdr = sp + 8|0; + $iToHdr = sp + 4|0; + $rc = sp; + $iData = sp + 12|0; + HEAP32[$0>>2] = $pFrom; + HEAP32[$1>>2] = $pTo; + HEAP32[$2>>2] = $pRC; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)==(0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 52|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pBt>>2] = $8; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 56|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$aFrom>>2] = $11; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 56|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$aTo>>2] = $14; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 5|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + HEAP32[$iFromHdr>>2] = $18; + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 72|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)==(1); + $23 = $22 ? 100 : 0; + HEAP32[$iToHdr>>2] = $23; + $24 = HEAP32[$iFromHdr>>2]|0; + $25 = (($24) + 5)|0; + $26 = HEAP32[$aFrom>>2]|0; + $27 = (($26) + ($25)|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = $29 << 8; + $31 = HEAP32[$iFromHdr>>2]|0; + $32 = (($31) + 5)|0; + $33 = HEAP32[$aFrom>>2]|0; + $34 = (($33) + ($32)|0); + $35 = (($34) + 1|0); + $36 = HEAP8[$35>>0]|0; + $37 = $36&255; + $38 = $30 | $37; + HEAP32[$iData>>2] = $38; + $39 = HEAP32[$iData>>2]|0; + $40 = HEAP32[$aTo>>2]|0; + $41 = (($40) + ($39)|0); + $42 = HEAP32[$iData>>2]|0; + $43 = HEAP32[$aFrom>>2]|0; + $44 = (($43) + ($42)|0); + $45 = HEAP32[$pBt>>2]|0; + $46 = (($45) + 36|0); + $47 = HEAP32[$46>>2]|0; + $48 = HEAP32[$iData>>2]|0; + $49 = (($47) - ($48))|0; + _memcpy(($41|0),($44|0),($49|0))|0; + $50 = HEAP32[$iToHdr>>2]|0; + $51 = HEAP32[$aTo>>2]|0; + $52 = (($51) + ($50)|0); + $53 = HEAP32[$iFromHdr>>2]|0; + $54 = HEAP32[$aFrom>>2]|0; + $55 = (($54) + ($53)|0); + $56 = HEAP32[$0>>2]|0; + $57 = (($56) + 12|0); + $58 = HEAP16[$57>>1]|0; + $59 = $58&65535; + $60 = HEAP32[$0>>2]|0; + $61 = (($60) + 16|0); + $62 = HEAP16[$61>>1]|0; + $63 = $62&65535; + $64 = $63<<1; + $65 = (($59) + ($64))|0; + _memcpy(($52|0),($55|0),($65|0))|0; + $66 = HEAP32[$1>>2]|0; + HEAP8[$66>>0] = 0; + $67 = HEAP32[$1>>2]|0; + $68 = (_btreeInitPage($67)|0); + HEAP32[$rc>>2] = $68; + $69 = HEAP32[$rc>>2]|0; + $70 = ($69|0)!=(0); + if ($70) { + $71 = HEAP32[$rc>>2]|0; + $72 = HEAP32[$2>>2]|0; + HEAP32[$72>>2] = $71; + STACKTOP = sp;return; + } + $73 = HEAP32[$pBt>>2]|0; + $74 = (($73) + 17|0); + $75 = HEAP8[$74>>0]|0; + $76 = ($75<<24>>24)!=(0); + if (!($76)) { + STACKTOP = sp;return; + } + $77 = HEAP32[$1>>2]|0; + $78 = (_setChildPtrmaps($77)|0); + $79 = HEAP32[$2>>2]|0; + HEAP32[$79>>2] = $78; + STACKTOP = sp;return; +} +function _allocateSpace($pPage,$nByte,$pIdx) { + $pPage = $pPage|0; + $nByte = $nByte|0; + $pIdx = $pIdx|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; + var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr = 0; + var $data = 0, $gap = 0, $hdr = 0, $nFrag = 0, $pc = 0, $rc = 0, $size = 0, $top = 0, $usableSize = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 56|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $3 = sp + 44|0; + $hdr = sp + 40|0; + $data = sp + 36|0; + $nFrag = sp + 32|0; + $top = sp + 28|0; + $gap = sp + 20|0; + $rc = sp + 16|0; + $usableSize = sp + 12|0; + $pc = sp + 8|0; + $addr = sp + 4|0; + $size = sp; + $x = sp + 24|0; + HEAP32[$1>>2] = $pPage; + HEAP32[$2>>2] = $nByte; + HEAP32[$3>>2] = $pIdx; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 5|0); + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + HEAP32[$hdr>>2] = $7; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 56|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$data>>2] = $10; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 52|0); + $13 = HEAP32[$12>>2]|0; + $14 = (($13) + 36|0); + $15 = HEAP32[$14>>2]|0; + HEAP32[$usableSize>>2] = $15; + $16 = HEAP32[$hdr>>2]|0; + $17 = (($16) + 7)|0; + $18 = HEAP32[$data>>2]|0; + $19 = (($18) + ($17)|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + HEAP32[$nFrag>>2] = $21; + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 12|0); + $24 = HEAP16[$23>>1]|0; + $25 = $24&65535; + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 16|0); + $28 = HEAP16[$27>>1]|0; + $29 = $28&65535; + $30 = $29<<1; + $31 = (($25) + ($30))|0; + HEAP32[$gap>>2] = $31; + $32 = HEAP32[$hdr>>2]|0; + $33 = (($32) + 5)|0; + $34 = HEAP32[$data>>2]|0; + $35 = (($34) + ($33)|0); + $36 = HEAP8[$35>>0]|0; + $37 = $36&255; + $38 = $37 << 8; + $39 = HEAP32[$hdr>>2]|0; + $40 = (($39) + 5)|0; + $41 = HEAP32[$data>>2]|0; + $42 = (($41) + ($40)|0); + $43 = (($42) + 1|0); + $44 = HEAP8[$43>>0]|0; + $45 = $44&255; + $46 = $38 | $45; + $47 = (($46) - 1)|0; + $48 = $47 & 65535; + $49 = (($48) + 1)|0; + HEAP32[$top>>2] = $49; + $50 = HEAP32[$gap>>2]|0; + $51 = HEAP32[$top>>2]|0; + $52 = ($50|0)>($51|0); + if ($52) { + $53 = (_sqlite3CorruptError(52373)|0); + HEAP32[$0>>2] = $53; + $218 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($218|0); + } + $54 = HEAP32[$nFrag>>2]|0; + $55 = ($54|0)>=(60); + L5: do { + if ($55) { + $56 = HEAP32[$1>>2]|0; + $57 = (_defragmentPage($56)|0); + HEAP32[$rc>>2] = $57; + $58 = HEAP32[$rc>>2]|0; + $59 = ($58|0)!=(0); + if (!($59)) { + $61 = HEAP32[$hdr>>2]|0; + $62 = (($61) + 5)|0; + $63 = HEAP32[$data>>2]|0; + $64 = (($63) + ($62)|0); + $65 = HEAP8[$64>>0]|0; + $66 = $65&255; + $67 = $66 << 8; + $68 = HEAP32[$hdr>>2]|0; + $69 = (($68) + 5)|0; + $70 = HEAP32[$data>>2]|0; + $71 = (($70) + ($69)|0); + $72 = (($71) + 1|0); + $73 = HEAP8[$72>>0]|0; + $74 = $73&255; + $75 = $67 | $74; + $76 = (($75) - 1)|0; + $77 = $76 & 65535; + $78 = (($77) + 1)|0; + HEAP32[$top>>2] = $78; + break; + } + $60 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $60; + $218 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($218|0); + } else { + $79 = HEAP32[$gap>>2]|0; + $80 = (($79) + 2)|0; + $81 = HEAP32[$top>>2]|0; + $82 = ($80|0)<=($81|0); + if ($82) { + $83 = HEAP32[$hdr>>2]|0; + $84 = (($83) + 1)|0; + HEAP32[$addr>>2] = $84; + while(1) { + $85 = HEAP32[$addr>>2]|0; + $86 = HEAP32[$data>>2]|0; + $87 = (($86) + ($85)|0); + $88 = HEAP8[$87>>0]|0; + $89 = $88&255; + $90 = $89 << 8; + $91 = HEAP32[$addr>>2]|0; + $92 = HEAP32[$data>>2]|0; + $93 = (($92) + ($91)|0); + $94 = (($93) + 1|0); + $95 = HEAP8[$94>>0]|0; + $96 = $95&255; + $97 = $90 | $96; + HEAP32[$pc>>2] = $97; + $98 = ($97|0)>(0); + if (!($98)) { + break L5; + } + $99 = HEAP32[$pc>>2]|0; + $100 = HEAP32[$usableSize>>2]|0; + $101 = (($100) - 4)|0; + $102 = ($99|0)>($101|0); + if ($102) { + label = 12; + break; + } + $103 = HEAP32[$pc>>2]|0; + $104 = HEAP32[$addr>>2]|0; + $105 = (($104) + 4)|0; + $106 = ($103|0)<($105|0); + if ($106) { + label = 12; + break; + } + $108 = HEAP32[$pc>>2]|0; + $109 = (($108) + 2)|0; + $110 = HEAP32[$data>>2]|0; + $111 = (($110) + ($109)|0); + $112 = HEAP8[$111>>0]|0; + $113 = $112&255; + $114 = $113 << 8; + $115 = HEAP32[$pc>>2]|0; + $116 = (($115) + 2)|0; + $117 = HEAP32[$data>>2]|0; + $118 = (($117) + ($116)|0); + $119 = (($118) + 1|0); + $120 = HEAP8[$119>>0]|0; + $121 = $120&255; + $122 = $114 | $121; + HEAP32[$size>>2] = $122; + $123 = HEAP32[$size>>2]|0; + $124 = HEAP32[$2>>2]|0; + $125 = ($123|0)>=($124|0); + if ($125) { + break; + } + $169 = HEAP32[$pc>>2]|0; + HEAP32[$addr>>2] = $169; + } + if ((label|0) == 12) { + $107 = (_sqlite3CorruptError(52392)|0); + HEAP32[$0>>2] = $107; + $218 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($218|0); + } + $126 = HEAP32[$size>>2]|0; + $127 = HEAP32[$2>>2]|0; + $128 = (($126) - ($127))|0; + HEAP32[$x>>2] = $128; + $129 = HEAP32[$x>>2]|0; + $130 = ($129|0)<(4); + do { + if ($130) { + $131 = HEAP32[$addr>>2]|0; + $132 = HEAP32[$data>>2]|0; + $133 = (($132) + ($131)|0); + $134 = HEAP32[$pc>>2]|0; + $135 = HEAP32[$data>>2]|0; + $136 = (($135) + ($134)|0); + ;HEAP8[$133+0>>0]=HEAP8[$136+0>>0]|0;HEAP8[$133+1>>0]=HEAP8[$136+1>>0]|0; + $137 = HEAP32[$nFrag>>2]|0; + $138 = HEAP32[$x>>2]|0; + $139 = (($137) + ($138))|0; + $140 = $139&255; + $141 = HEAP32[$hdr>>2]|0; + $142 = (($141) + 7)|0; + $143 = HEAP32[$data>>2]|0; + $144 = (($143) + ($142)|0); + HEAP8[$144>>0] = $140; + } else { + $145 = HEAP32[$size>>2]|0; + $146 = HEAP32[$pc>>2]|0; + $147 = (($145) + ($146))|0; + $148 = HEAP32[$usableSize>>2]|0; + $149 = ($147|0)>($148|0); + if (!($149)) { + $151 = HEAP32[$x>>2]|0; + $152 = $151 >> 8; + $153 = $152&255; + $154 = HEAP32[$pc>>2]|0; + $155 = (($154) + 2)|0; + $156 = HEAP32[$data>>2]|0; + $157 = (($156) + ($155)|0); + HEAP8[$157>>0] = $153; + $158 = HEAP32[$x>>2]|0; + $159 = $158&255; + $160 = HEAP32[$pc>>2]|0; + $161 = (($160) + 2)|0; + $162 = HEAP32[$data>>2]|0; + $163 = (($162) + ($161)|0); + $164 = (($163) + 1|0); + HEAP8[$164>>0] = $159; + break; + } + $150 = (_sqlite3CorruptError(52405)|0); + HEAP32[$0>>2] = $150; + $218 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($218|0); + } + } while(0); + $165 = HEAP32[$pc>>2]|0; + $166 = HEAP32[$x>>2]|0; + $167 = (($165) + ($166))|0; + $168 = HEAP32[$3>>2]|0; + HEAP32[$168>>2] = $167; + HEAP32[$0>>2] = 0; + $218 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($218|0); + } + } + } while(0); + $170 = HEAP32[$gap>>2]|0; + $171 = (($170) + 2)|0; + $172 = HEAP32[$2>>2]|0; + $173 = (($171) + ($172))|0; + $174 = HEAP32[$top>>2]|0; + $175 = ($173|0)>($174|0); + do { + if ($175) { + $176 = HEAP32[$1>>2]|0; + $177 = (_defragmentPage($176)|0); + HEAP32[$rc>>2] = $177; + $178 = HEAP32[$rc>>2]|0; + $179 = ($178|0)!=(0); + if (!($179)) { + $181 = HEAP32[$hdr>>2]|0; + $182 = (($181) + 5)|0; + $183 = HEAP32[$data>>2]|0; + $184 = (($183) + ($182)|0); + $185 = HEAP8[$184>>0]|0; + $186 = $185&255; + $187 = $186 << 8; + $188 = HEAP32[$hdr>>2]|0; + $189 = (($188) + 5)|0; + $190 = HEAP32[$data>>2]|0; + $191 = (($190) + ($189)|0); + $192 = (($191) + 1|0); + $193 = HEAP8[$192>>0]|0; + $194 = $193&255; + $195 = $187 | $194; + $196 = (($195) - 1)|0; + $197 = $196 & 65535; + $198 = (($197) + 1)|0; + HEAP32[$top>>2] = $198; + break; + } + $180 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $180; + $218 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($218|0); + } + } while(0); + $199 = HEAP32[$2>>2]|0; + $200 = HEAP32[$top>>2]|0; + $201 = (($200) - ($199))|0; + HEAP32[$top>>2] = $201; + $202 = HEAP32[$top>>2]|0; + $203 = $202 >> 8; + $204 = $203&255; + $205 = HEAP32[$hdr>>2]|0; + $206 = (($205) + 5)|0; + $207 = HEAP32[$data>>2]|0; + $208 = (($207) + ($206)|0); + HEAP8[$208>>0] = $204; + $209 = HEAP32[$top>>2]|0; + $210 = $209&255; + $211 = HEAP32[$hdr>>2]|0; + $212 = (($211) + 5)|0; + $213 = HEAP32[$data>>2]|0; + $214 = (($213) + ($212)|0); + $215 = (($214) + 1|0); + HEAP8[$215>>0] = $210; + $216 = HEAP32[$top>>2]|0; + $217 = HEAP32[$3>>2]|0; + HEAP32[$217>>2] = $216; + HEAP32[$0>>2] = 0; + $218 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($218|0); +} +function _defragmentPage($pPage) { + $pPage = $pPage|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $cbrk = 0, $cellOffset = 0, $data = 0, $hdr = 0, $i = 0, $iCellFirst = 0, $iCellLast = 0, $nCell = 0, $pAddr = 0, $pc = 0, $size = 0, $temp = 0, $usableSize = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 56|0; + $1 = sp + 52|0; + $i = sp + 48|0; + $pc = sp + 44|0; + $hdr = sp + 40|0; + $size = sp + 36|0; + $usableSize = sp + 32|0; + $cellOffset = sp + 28|0; + $cbrk = sp + 20|0; + $nCell = sp + 16|0; + $data = sp + 12|0; + $temp = sp + 8|0; + $iCellFirst = sp + 4|0; + $iCellLast = sp; + $pAddr = sp + 24|0; + HEAP32[$1>>2] = $pPage; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 52|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$4>>2]|0; + $6 = (_sqlite3PagerTempSpace($5)|0); + HEAP32[$temp>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 56|0); + $9 = HEAP32[$8>>2]|0; + HEAP32[$data>>2] = $9; + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 5|0); + $12 = HEAP8[$11>>0]|0; + $13 = $12&255; + HEAP32[$hdr>>2] = $13; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 12|0); + $16 = HEAP16[$15>>1]|0; + $17 = $16&65535; + HEAP32[$cellOffset>>2] = $17; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 16|0); + $20 = HEAP16[$19>>1]|0; + $21 = $20&65535; + HEAP32[$nCell>>2] = $21; + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 52|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + 36|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$usableSize>>2] = $26; + $27 = HEAP32[$hdr>>2]|0; + $28 = (($27) + 5)|0; + $29 = HEAP32[$data>>2]|0; + $30 = (($29) + ($28)|0); + $31 = HEAP8[$30>>0]|0; + $32 = $31&255; + $33 = $32 << 8; + $34 = HEAP32[$hdr>>2]|0; + $35 = (($34) + 5)|0; + $36 = HEAP32[$data>>2]|0; + $37 = (($36) + ($35)|0); + $38 = (($37) + 1|0); + $39 = HEAP8[$38>>0]|0; + $40 = $39&255; + $41 = $33 | $40; + HEAP32[$cbrk>>2] = $41; + $42 = HEAP32[$cbrk>>2]|0; + $43 = HEAP32[$temp>>2]|0; + $44 = (($43) + ($42)|0); + $45 = HEAP32[$cbrk>>2]|0; + $46 = HEAP32[$data>>2]|0; + $47 = (($46) + ($45)|0); + $48 = HEAP32[$usableSize>>2]|0; + $49 = HEAP32[$cbrk>>2]|0; + $50 = (($48) - ($49))|0; + _memcpy(($44|0),($47|0),($50|0))|0; + $51 = HEAP32[$usableSize>>2]|0; + HEAP32[$cbrk>>2] = $51; + $52 = HEAP32[$cellOffset>>2]|0; + $53 = HEAP32[$nCell>>2]|0; + $54 = $53<<1; + $55 = (($52) + ($54))|0; + HEAP32[$iCellFirst>>2] = $55; + $56 = HEAP32[$usableSize>>2]|0; + $57 = (($56) - 4)|0; + HEAP32[$iCellLast>>2] = $57; + HEAP32[$i>>2] = 0; + while(1) { + $58 = HEAP32[$i>>2]|0; + $59 = HEAP32[$nCell>>2]|0; + $60 = ($58|0)<($59|0); + if (!($60)) { + label = 10; + break; + } + $61 = HEAP32[$cellOffset>>2]|0; + $62 = HEAP32[$i>>2]|0; + $63 = $62<<1; + $64 = (($61) + ($63))|0; + $65 = HEAP32[$data>>2]|0; + $66 = (($65) + ($64)|0); + HEAP32[$pAddr>>2] = $66; + $67 = HEAP32[$pAddr>>2]|0; + $68 = HEAP8[$67>>0]|0; + $69 = $68&255; + $70 = $69 << 8; + $71 = HEAP32[$pAddr>>2]|0; + $72 = (($71) + 1|0); + $73 = HEAP8[$72>>0]|0; + $74 = $73&255; + $75 = $70 | $74; + HEAP32[$pc>>2] = $75; + $76 = HEAP32[$pc>>2]|0; + $77 = HEAP32[$iCellFirst>>2]|0; + $78 = ($76|0)<($77|0); + if ($78) { + label = 5; + break; + } + $79 = HEAP32[$pc>>2]|0; + $80 = HEAP32[$iCellLast>>2]|0; + $81 = ($79|0)>($80|0); + if ($81) { + label = 5; + break; + } + $83 = HEAP32[$1>>2]|0; + $84 = HEAP32[$pc>>2]|0; + $85 = HEAP32[$temp>>2]|0; + $86 = (($85) + ($84)|0); + $87 = (_cellSizePtr($83,$86)|0); + $88 = $87&65535; + HEAP32[$size>>2] = $88; + $89 = HEAP32[$size>>2]|0; + $90 = HEAP32[$cbrk>>2]|0; + $91 = (($90) - ($89))|0; + HEAP32[$cbrk>>2] = $91; + $92 = HEAP32[$cbrk>>2]|0; + $93 = HEAP32[$iCellFirst>>2]|0; + $94 = ($92|0)<($93|0); + if ($94) { + label = 8; + break; + } + $95 = HEAP32[$pc>>2]|0; + $96 = HEAP32[$size>>2]|0; + $97 = (($95) + ($96))|0; + $98 = HEAP32[$usableSize>>2]|0; + $99 = ($97|0)>($98|0); + if ($99) { + label = 8; + break; + } + $101 = HEAP32[$cbrk>>2]|0; + $102 = HEAP32[$data>>2]|0; + $103 = (($102) + ($101)|0); + $104 = HEAP32[$pc>>2]|0; + $105 = HEAP32[$temp>>2]|0; + $106 = (($105) + ($104)|0); + $107 = HEAP32[$size>>2]|0; + _memcpy(($103|0),($106|0),($107|0))|0; + $108 = HEAP32[$cbrk>>2]|0; + $109 = $108 >> 8; + $110 = $109&255; + $111 = HEAP32[$pAddr>>2]|0; + HEAP8[$111>>0] = $110; + $112 = HEAP32[$cbrk>>2]|0; + $113 = $112&255; + $114 = HEAP32[$pAddr>>2]|0; + $115 = (($114) + 1|0); + HEAP8[$115>>0] = $113; + $116 = HEAP32[$i>>2]|0; + $117 = (($116) + 1)|0; + HEAP32[$i>>2] = $117; + } + if ((label|0) == 5) { + $82 = (_sqlite3CorruptError(52304)|0); + HEAP32[$0>>2] = $82; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + else if ((label|0) == 8) { + $100 = (_sqlite3CorruptError(52316)|0); + HEAP32[$0>>2] = $100; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + else if ((label|0) == 10) { + $118 = HEAP32[$cbrk>>2]|0; + $119 = $118 >> 8; + $120 = $119&255; + $121 = HEAP32[$hdr>>2]|0; + $122 = (($121) + 5)|0; + $123 = HEAP32[$data>>2]|0; + $124 = (($123) + ($122)|0); + HEAP8[$124>>0] = $120; + $125 = HEAP32[$cbrk>>2]|0; + $126 = $125&255; + $127 = HEAP32[$hdr>>2]|0; + $128 = (($127) + 5)|0; + $129 = HEAP32[$data>>2]|0; + $130 = (($129) + ($128)|0); + $131 = (($130) + 1|0); + HEAP8[$131>>0] = $126; + $132 = HEAP32[$hdr>>2]|0; + $133 = (($132) + 1)|0; + $134 = HEAP32[$data>>2]|0; + $135 = (($134) + ($133)|0); + HEAP8[$135>>0] = 0; + $136 = HEAP32[$hdr>>2]|0; + $137 = (($136) + 2)|0; + $138 = HEAP32[$data>>2]|0; + $139 = (($138) + ($137)|0); + HEAP8[$139>>0] = 0; + $140 = HEAP32[$hdr>>2]|0; + $141 = (($140) + 7)|0; + $142 = HEAP32[$data>>2]|0; + $143 = (($142) + ($141)|0); + HEAP8[$143>>0] = 0; + $144 = HEAP32[$iCellFirst>>2]|0; + $145 = HEAP32[$data>>2]|0; + $146 = (($145) + ($144)|0); + $147 = HEAP32[$cbrk>>2]|0; + $148 = HEAP32[$iCellFirst>>2]|0; + $149 = (($147) - ($148))|0; + _memset(($146|0),0,($149|0))|0; + $150 = HEAP32[$cbrk>>2]|0; + $151 = HEAP32[$iCellFirst>>2]|0; + $152 = (($150) - ($151))|0; + $153 = HEAP32[$1>>2]|0; + $154 = (($153) + 14|0); + $155 = HEAP16[$154>>1]|0; + $156 = $155&65535; + $157 = ($152|0)!=($156|0); + if ($157) { + $158 = (_sqlite3CorruptError(52333)|0); + HEAP32[$0>>2] = $158; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } else { + HEAP32[$0>>2] = 0; + $159 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($159|0); + } + } + return 0|0; +} +function _sqlite3PagerTempSpace($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 200|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _freeSpace($pPage,$start,$size) { + $pPage = $pPage|0; + $start = $start|0; + $size = $size|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; + var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; + var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; + var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0; + var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0; + var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0; + var $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $addr = 0; + var $data = 0, $frag = 0, $hdr = 0, $iLast = 0, $or$cond = 0, $pbegin = 0, $pnext = 0, $psize = 0, $top = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 52|0; + $1 = sp + 48|0; + $2 = sp + 44|0; + $3 = sp + 40|0; + $addr = sp + 36|0; + $pbegin = sp + 32|0; + $hdr = sp + 28|0; + $iLast = sp + 24|0; + $data = sp + 16|0; + $pnext = sp + 12|0; + $psize = sp + 8|0; + $x = sp + 4|0; + $frag = sp; + $top = sp + 20|0; + HEAP32[$1>>2] = $pPage; + HEAP32[$2>>2] = $start; + HEAP32[$3>>2] = $size; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 56|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$data>>2] = $6; + $7 = HEAP32[$1>>2]|0; + $8 = (($7) + 52|0); + $9 = HEAP32[$8>>2]|0; + $10 = (($9) + 22|0); + $11 = HEAP16[$10>>1]|0; + $12 = $11&65535; + $13 = $12 & 4; + $14 = ($13|0)!=(0); + if ($14) { + $15 = HEAP32[$2>>2]|0; + $16 = HEAP32[$data>>2]|0; + $17 = (($16) + ($15)|0); + $18 = HEAP32[$3>>2]|0; + _memset(($17|0),0,($18|0))|0; + } + $19 = HEAP32[$1>>2]|0; + $20 = (($19) + 5|0); + $21 = HEAP8[$20>>0]|0; + $22 = $21&255; + HEAP32[$hdr>>2] = $22; + $23 = HEAP32[$hdr>>2]|0; + $24 = (($23) + 1)|0; + HEAP32[$addr>>2] = $24; + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 52|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + 36|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) - 4)|0; + HEAP32[$iLast>>2] = $30; + while(1) { + $31 = HEAP32[$addr>>2]|0; + $32 = HEAP32[$data>>2]|0; + $33 = (($32) + ($31)|0); + $34 = HEAP8[$33>>0]|0; + $35 = $34&255; + $36 = $35 << 8; + $37 = HEAP32[$addr>>2]|0; + $38 = HEAP32[$data>>2]|0; + $39 = (($38) + ($37)|0); + $40 = (($39) + 1|0); + $41 = HEAP8[$40>>0]|0; + $42 = $41&255; + $43 = $36 | $42; + HEAP32[$pbegin>>2] = $43; + $44 = HEAP32[$2>>2]|0; + $45 = ($43|0)<($44|0); + if ($45) { + $46 = HEAP32[$pbegin>>2]|0; + $47 = ($46|0)>(0); + $338 = $47; + } else { + $338 = 0; + } + $48 = HEAP32[$pbegin>>2]|0; + if (!($338)) { + break; + } + $49 = HEAP32[$addr>>2]|0; + $50 = (($49) + 4)|0; + $51 = ($48|0)<($50|0); + if ($51) { + label = 8; + break; + } + $53 = HEAP32[$pbegin>>2]|0; + HEAP32[$addr>>2] = $53; + } + if ((label|0) == 8) { + $52 = (_sqlite3CorruptError(52483)|0); + HEAP32[$0>>2] = $52; + $337 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($337|0); + } + $54 = HEAP32[$iLast>>2]|0; + $55 = ($48|0)>($54|0); + if ($55) { + $56 = (_sqlite3CorruptError(52488)|0); + HEAP32[$0>>2] = $56; + $337 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($337|0); + } + $57 = HEAP32[$2>>2]|0; + $58 = $57 >> 8; + $59 = $58&255; + $60 = HEAP32[$addr>>2]|0; + $61 = HEAP32[$data>>2]|0; + $62 = (($61) + ($60)|0); + HEAP8[$62>>0] = $59; + $63 = HEAP32[$2>>2]|0; + $64 = $63&255; + $65 = HEAP32[$addr>>2]|0; + $66 = HEAP32[$data>>2]|0; + $67 = (($66) + ($65)|0); + $68 = (($67) + 1|0); + HEAP8[$68>>0] = $64; + $69 = HEAP32[$pbegin>>2]|0; + $70 = $69 >> 8; + $71 = $70&255; + $72 = HEAP32[$2>>2]|0; + $73 = HEAP32[$data>>2]|0; + $74 = (($73) + ($72)|0); + HEAP8[$74>>0] = $71; + $75 = HEAP32[$pbegin>>2]|0; + $76 = $75&255; + $77 = HEAP32[$2>>2]|0; + $78 = HEAP32[$data>>2]|0; + $79 = (($78) + ($77)|0); + $80 = (($79) + 1|0); + HEAP8[$80>>0] = $76; + $81 = HEAP32[$3>>2]|0; + $82 = $81 >> 8; + $83 = $82&255; + $84 = HEAP32[$2>>2]|0; + $85 = (($84) + 2)|0; + $86 = HEAP32[$data>>2]|0; + $87 = (($86) + ($85)|0); + HEAP8[$87>>0] = $83; + $88 = HEAP32[$3>>2]|0; + $89 = $88&255; + $90 = HEAP32[$2>>2]|0; + $91 = (($90) + 2)|0; + $92 = HEAP32[$data>>2]|0; + $93 = (($92) + ($91)|0); + $94 = (($93) + 1|0); + HEAP8[$94>>0] = $89; + $95 = HEAP32[$1>>2]|0; + $96 = (($95) + 14|0); + $97 = HEAP16[$96>>1]|0; + $98 = $97&65535; + $99 = HEAP32[$3>>2]|0; + $100 = $99&65535; + $101 = $100&65535; + $102 = (($98) + ($101))|0; + $103 = $102&65535; + $104 = HEAP32[$1>>2]|0; + $105 = (($104) + 14|0); + HEAP16[$105>>1] = $103; + $106 = HEAP32[$hdr>>2]|0; + $107 = (($106) + 1)|0; + HEAP32[$addr>>2] = $107; + while(1) { + $108 = HEAP32[$addr>>2]|0; + $109 = HEAP32[$data>>2]|0; + $110 = (($109) + ($108)|0); + $111 = HEAP8[$110>>0]|0; + $112 = $111&255; + $113 = $112 << 8; + $114 = HEAP32[$addr>>2]|0; + $115 = HEAP32[$data>>2]|0; + $116 = (($115) + ($114)|0); + $117 = (($116) + 1|0); + $118 = HEAP8[$117>>0]|0; + $119 = $118&255; + $120 = $113 | $119; + HEAP32[$pbegin>>2] = $120; + $121 = ($120|0)>(0); + if (!($121)) { + break; + } + $122 = HEAP32[$pbegin>>2]|0; + $123 = HEAP32[$data>>2]|0; + $124 = (($123) + ($122)|0); + $125 = HEAP8[$124>>0]|0; + $126 = $125&255; + $127 = $126 << 8; + $128 = HEAP32[$pbegin>>2]|0; + $129 = HEAP32[$data>>2]|0; + $130 = (($129) + ($128)|0); + $131 = (($130) + 1|0); + $132 = HEAP8[$131>>0]|0; + $133 = $132&255; + $134 = $127 | $133; + HEAP32[$pnext>>2] = $134; + $135 = HEAP32[$pbegin>>2]|0; + $136 = (($135) + 2)|0; + $137 = HEAP32[$data>>2]|0; + $138 = (($137) + ($136)|0); + $139 = HEAP8[$138>>0]|0; + $140 = $139&255; + $141 = $140 << 8; + $142 = HEAP32[$pbegin>>2]|0; + $143 = (($142) + 2)|0; + $144 = HEAP32[$data>>2]|0; + $145 = (($144) + ($143)|0); + $146 = (($145) + 1|0); + $147 = HEAP8[$146>>0]|0; + $148 = $147&255; + $149 = $141 | $148; + HEAP32[$psize>>2] = $149; + $150 = HEAP32[$pbegin>>2]|0; + $151 = HEAP32[$psize>>2]|0; + $152 = (($150) + ($151))|0; + $153 = (($152) + 3)|0; + $154 = HEAP32[$pnext>>2]|0; + $155 = ($153|0)>=($154|0); + $156 = HEAP32[$pnext>>2]|0; + $157 = ($156|0)>(0); + $or$cond = $155 & $157; + if (!($or$cond)) { + $243 = HEAP32[$pbegin>>2]|0; + HEAP32[$addr>>2] = $243; + continue; + } + $158 = HEAP32[$pnext>>2]|0; + $159 = HEAP32[$pbegin>>2]|0; + $160 = HEAP32[$psize>>2]|0; + $161 = (($159) + ($160))|0; + $162 = (($158) - ($161))|0; + HEAP32[$frag>>2] = $162; + $163 = HEAP32[$frag>>2]|0; + $164 = ($163|0)<(0); + if ($164) { + label = 17; + break; + } + $165 = HEAP32[$frag>>2]|0; + $166 = HEAP32[$hdr>>2]|0; + $167 = (($166) + 7)|0; + $168 = HEAP32[$data>>2]|0; + $169 = (($168) + ($167)|0); + $170 = HEAP8[$169>>0]|0; + $171 = $170&255; + $172 = ($165|0)>($171|0); + if ($172) { + label = 17; + break; + } + $174 = HEAP32[$frag>>2]|0; + $175 = $174&255; + $176 = $175&255; + $177 = HEAP32[$hdr>>2]|0; + $178 = (($177) + 7)|0; + $179 = HEAP32[$data>>2]|0; + $180 = (($179) + ($178)|0); + $181 = HEAP8[$180>>0]|0; + $182 = $181&255; + $183 = (($182) - ($176))|0; + $184 = $183&255; + HEAP8[$180>>0] = $184; + $185 = HEAP32[$pnext>>2]|0; + $186 = HEAP32[$data>>2]|0; + $187 = (($186) + ($185)|0); + $188 = HEAP8[$187>>0]|0; + $189 = $188&255; + $190 = $189 << 8; + $191 = HEAP32[$pnext>>2]|0; + $192 = HEAP32[$data>>2]|0; + $193 = (($192) + ($191)|0); + $194 = (($193) + 1|0); + $195 = HEAP8[$194>>0]|0; + $196 = $195&255; + $197 = $190 | $196; + HEAP32[$x>>2] = $197; + $198 = HEAP32[$x>>2]|0; + $199 = $198 >> 8; + $200 = $199&255; + $201 = HEAP32[$pbegin>>2]|0; + $202 = HEAP32[$data>>2]|0; + $203 = (($202) + ($201)|0); + HEAP8[$203>>0] = $200; + $204 = HEAP32[$x>>2]|0; + $205 = $204&255; + $206 = HEAP32[$pbegin>>2]|0; + $207 = HEAP32[$data>>2]|0; + $208 = (($207) + ($206)|0); + $209 = (($208) + 1|0); + HEAP8[$209>>0] = $205; + $210 = HEAP32[$pnext>>2]|0; + $211 = HEAP32[$pnext>>2]|0; + $212 = (($211) + 2)|0; + $213 = HEAP32[$data>>2]|0; + $214 = (($213) + ($212)|0); + $215 = HEAP8[$214>>0]|0; + $216 = $215&255; + $217 = $216 << 8; + $218 = HEAP32[$pnext>>2]|0; + $219 = (($218) + 2)|0; + $220 = HEAP32[$data>>2]|0; + $221 = (($220) + ($219)|0); + $222 = (($221) + 1|0); + $223 = HEAP8[$222>>0]|0; + $224 = $223&255; + $225 = $217 | $224; + $226 = (($210) + ($225))|0; + $227 = HEAP32[$pbegin>>2]|0; + $228 = (($226) - ($227))|0; + HEAP32[$x>>2] = $228; + $229 = HEAP32[$x>>2]|0; + $230 = $229 >> 8; + $231 = $230&255; + $232 = HEAP32[$pbegin>>2]|0; + $233 = (($232) + 2)|0; + $234 = HEAP32[$data>>2]|0; + $235 = (($234) + ($233)|0); + HEAP8[$235>>0] = $231; + $236 = HEAP32[$x>>2]|0; + $237 = $236&255; + $238 = HEAP32[$pbegin>>2]|0; + $239 = (($238) + 2)|0; + $240 = HEAP32[$data>>2]|0; + $241 = (($240) + ($239)|0); + $242 = (($241) + 1|0); + HEAP8[$242>>0] = $237; + } + if ((label|0) == 17) { + $173 = (_sqlite3CorruptError(52507)|0); + HEAP32[$0>>2] = $173; + $337 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($337|0); + } + $244 = HEAP32[$hdr>>2]|0; + $245 = (($244) + 1)|0; + $246 = HEAP32[$data>>2]|0; + $247 = (($246) + ($245)|0); + $248 = HEAP8[$247>>0]|0; + $249 = $248&255; + $250 = HEAP32[$hdr>>2]|0; + $251 = (($250) + 5)|0; + $252 = HEAP32[$data>>2]|0; + $253 = (($252) + ($251)|0); + $254 = HEAP8[$253>>0]|0; + $255 = $254&255; + $256 = ($249|0)==($255|0); + if ($256) { + $257 = HEAP32[$hdr>>2]|0; + $258 = (($257) + 2)|0; + $259 = HEAP32[$data>>2]|0; + $260 = (($259) + ($258)|0); + $261 = HEAP8[$260>>0]|0; + $262 = $261&255; + $263 = HEAP32[$hdr>>2]|0; + $264 = (($263) + 6)|0; + $265 = HEAP32[$data>>2]|0; + $266 = (($265) + ($264)|0); + $267 = HEAP8[$266>>0]|0; + $268 = $267&255; + $269 = ($262|0)==($268|0); + if ($269) { + $270 = HEAP32[$hdr>>2]|0; + $271 = (($270) + 1)|0; + $272 = HEAP32[$data>>2]|0; + $273 = (($272) + ($271)|0); + $274 = HEAP8[$273>>0]|0; + $275 = $274&255; + $276 = $275 << 8; + $277 = HEAP32[$hdr>>2]|0; + $278 = (($277) + 1)|0; + $279 = HEAP32[$data>>2]|0; + $280 = (($279) + ($278)|0); + $281 = (($280) + 1|0); + $282 = HEAP8[$281>>0]|0; + $283 = $282&255; + $284 = $276 | $283; + HEAP32[$pbegin>>2] = $284; + $285 = HEAP32[$hdr>>2]|0; + $286 = (($285) + 1)|0; + $287 = HEAP32[$data>>2]|0; + $288 = (($287) + ($286)|0); + $289 = HEAP32[$pbegin>>2]|0; + $290 = HEAP32[$data>>2]|0; + $291 = (($290) + ($289)|0); + ;HEAP8[$288+0>>0]=HEAP8[$291+0>>0]|0;HEAP8[$288+1>>0]=HEAP8[$291+1>>0]|0; + $292 = HEAP32[$hdr>>2]|0; + $293 = (($292) + 5)|0; + $294 = HEAP32[$data>>2]|0; + $295 = (($294) + ($293)|0); + $296 = HEAP8[$295>>0]|0; + $297 = $296&255; + $298 = $297 << 8; + $299 = HEAP32[$hdr>>2]|0; + $300 = (($299) + 5)|0; + $301 = HEAP32[$data>>2]|0; + $302 = (($301) + ($300)|0); + $303 = (($302) + 1|0); + $304 = HEAP8[$303>>0]|0; + $305 = $304&255; + $306 = $298 | $305; + $307 = HEAP32[$pbegin>>2]|0; + $308 = (($307) + 2)|0; + $309 = HEAP32[$data>>2]|0; + $310 = (($309) + ($308)|0); + $311 = HEAP8[$310>>0]|0; + $312 = $311&255; + $313 = $312 << 8; + $314 = HEAP32[$pbegin>>2]|0; + $315 = (($314) + 2)|0; + $316 = HEAP32[$data>>2]|0; + $317 = (($316) + ($315)|0); + $318 = (($317) + 1|0); + $319 = HEAP8[$318>>0]|0; + $320 = $319&255; + $321 = $313 | $320; + $322 = (($306) + ($321))|0; + HEAP32[$top>>2] = $322; + $323 = HEAP32[$top>>2]|0; + $324 = $323 >> 8; + $325 = $324&255; + $326 = HEAP32[$hdr>>2]|0; + $327 = (($326) + 5)|0; + $328 = HEAP32[$data>>2]|0; + $329 = (($328) + ($327)|0); + HEAP8[$329>>0] = $325; + $330 = HEAP32[$top>>2]|0; + $331 = $330&255; + $332 = HEAP32[$hdr>>2]|0; + $333 = (($332) + 5)|0; + $334 = HEAP32[$data>>2]|0; + $335 = (($334) + ($333)|0); + $336 = (($335) + 1|0); + HEAP8[$336>>0] = $331; + } + } + HEAP32[$0>>2] = 0; + $337 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($337|0); +} +function _fillInCell($pPage,$pCell,$pKey,$0,$1,$pData,$nData,$nZero,$pnSize) { + $pPage = $pPage|0; + $pCell = $pCell|0; + $pKey = $pKey|0; + $0 = $0|0; + $1 = $1|0; + $pData = $pData|0; + $nData = $nData|0; + $nZero = $nZero|0; + $pnSize = $pnSize|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0; + var $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0; + var $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0; + var $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0; + var $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $eType = 0, $info = 0; + var $n = 0, $nHeader = 0, $nPayload = 0, $nSrc = 0, $pBt = 0, $pOvfl = 0, $pPayload = 0, $pPrior = 0, $pSrc = 0, $pToRelease = 0, $pgnoOvfl = 0, $pgnoPtrmap = 0, $rc = 0, $spaceLeft = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 144|0; + $2 = sp + 60|0; + $3 = sp + 124|0; + $4 = sp + 120|0; + $5 = sp + 116|0; + $6 = sp + 32|0; + $7 = sp + 112|0; + $8 = sp + 108|0; + $9 = sp + 104|0; + $10 = sp + 100|0; + $nPayload = sp + 96|0; + $pSrc = sp + 92|0; + $nSrc = sp + 88|0; + $n = sp + 84|0; + $rc = sp + 64|0; + $spaceLeft = sp + 56|0; + $pOvfl = sp + 48|0; + $pToRelease = sp + 40|0; + $pPrior = sp + 44|0; + $pPayload = sp + 52|0; + $pBt = sp + 68|0; + $pgnoOvfl = sp + 72|0; + $nHeader = sp + 76|0; + $info = sp; + $pgnoPtrmap = sp + 80|0; + $eType = sp + 128|0; + HEAP32[$3>>2] = $pPage; + HEAP32[$4>>2] = $pCell; + HEAP32[$5>>2] = $pKey; + $11 = $6; + $12 = $11; + HEAP32[$12>>2] = $0; + $13 = (($11) + 4)|0; + $14 = $13; + HEAP32[$14>>2] = $1; + HEAP32[$7>>2] = $pData; + HEAP32[$8>>2] = $nData; + HEAP32[$9>>2] = $nZero; + HEAP32[$10>>2] = $pnSize; + HEAP32[$pOvfl>>2] = 0; + HEAP32[$pToRelease>>2] = 0; + $15 = HEAP32[$3>>2]|0; + $16 = (($15) + 52|0); + $17 = HEAP32[$16>>2]|0; + HEAP32[$pBt>>2] = $17; + HEAP32[$pgnoOvfl>>2] = 0; + HEAP32[$nHeader>>2] = 0; + $18 = HEAP32[$3>>2]|0; + $19 = (($18) + 3|0); + $20 = HEAP8[$19>>0]|0; + $21 = ($20<<24>>24)!=(0); + if (!($21)) { + $22 = HEAP32[$nHeader>>2]|0; + $23 = (($22) + 4)|0; + HEAP32[$nHeader>>2] = $23; + } + $24 = HEAP32[$3>>2]|0; + $25 = (($24) + 4|0); + $26 = HEAP8[$25>>0]|0; + $27 = ($26<<24>>24)!=(0); + if ($27) { + $28 = HEAP32[$8>>2]|0; + $29 = HEAP32[$9>>2]|0; + $30 = (($28) + ($29))|0; + $31 = ($30>>>0)<(128); + if ($31) { + $32 = HEAP32[$8>>2]|0; + $33 = HEAP32[$9>>2]|0; + $34 = (($32) + ($33))|0; + $35 = $34&255; + $36 = HEAP32[$nHeader>>2]|0; + $37 = HEAP32[$4>>2]|0; + $38 = (($37) + ($36)|0); + HEAP8[$38>>0] = $35; + $47 = 1; + } else { + $39 = HEAP32[$nHeader>>2]|0; + $40 = HEAP32[$4>>2]|0; + $41 = (($40) + ($39)|0); + $42 = HEAP32[$8>>2]|0; + $43 = HEAP32[$9>>2]|0; + $44 = (($42) + ($43))|0; + $45 = (_sqlite3PutVarint32($41,$44)|0); + $47 = $45; + } + $46 = $47&255; + $48 = $46&255; + $49 = HEAP32[$nHeader>>2]|0; + $50 = (($49) + ($48))|0; + HEAP32[$nHeader>>2] = $50; + } else { + HEAP32[$9>>2] = 0; + HEAP32[$8>>2] = 0; + } + $51 = HEAP32[$nHeader>>2]|0; + $52 = HEAP32[$4>>2]|0; + $53 = (($52) + ($51)|0); + $54 = $6; + $55 = $54; + $56 = HEAP32[$55>>2]|0; + $57 = (($54) + 4)|0; + $58 = $57; + $59 = HEAP32[$58>>2]|0; + $60 = (_sqlite3PutVarint($53,$56,$59)|0); + $61 = HEAP32[$nHeader>>2]|0; + $62 = (($61) + ($60))|0; + HEAP32[$nHeader>>2] = $62; + $63 = HEAP32[$3>>2]|0; + $64 = HEAP32[$4>>2]|0; + _btreeParseCellPtr($63,$64,$info); + $65 = HEAP32[$8>>2]|0; + $66 = HEAP32[$9>>2]|0; + $67 = (($65) + ($66))|0; + HEAP32[$nPayload>>2] = $67; + $68 = HEAP32[$3>>2]|0; + $69 = (($68) + 2|0); + $70 = HEAP8[$69>>0]|0; + $71 = ($70<<24>>24)!=(0); + do { + if ($71) { + $72 = HEAP32[$7>>2]|0; + HEAP32[$pSrc>>2] = $72; + $73 = HEAP32[$8>>2]|0; + HEAP32[$nSrc>>2] = $73; + HEAP32[$8>>2] = 0; + } else { + $74 = $6; + $75 = $74; + $76 = HEAP32[$75>>2]|0; + $77 = (($74) + 4)|0; + $78 = $77; + $79 = HEAP32[$78>>2]|0; + $80 = ($79|0)>(0); + $81 = ($79|0)==(0); + $82 = ($76>>>0)>(2147483647); + $83 = $81 & $82; + $84 = $80 | $83; + if (!($84)) { + $85 = HEAP32[$5>>2]|0; + $86 = ($85|0)==(0|0); + if (!($86)) { + $88 = $6; + $89 = $88; + $90 = HEAP32[$89>>2]|0; + $91 = (($88) + 4)|0; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $94 = HEAP32[$nPayload>>2]|0; + $95 = (($94) + ($90))|0; + HEAP32[$nPayload>>2] = $95; + $96 = HEAP32[$5>>2]|0; + HEAP32[$pSrc>>2] = $96; + $97 = $6; + $98 = $97; + $99 = HEAP32[$98>>2]|0; + $100 = (($97) + 4)|0; + $101 = $100; + $102 = HEAP32[$101>>2]|0; + HEAP32[$nSrc>>2] = $99; + break; + } + } + $87 = (_sqlite3CorruptError(56721)|0); + HEAP32[$2>>2] = $87; + $219 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($219|0); + } + } while(0); + $103 = (($info) + 26|0); + $104 = HEAP16[$103>>1]|0; + $105 = $104&65535; + $106 = HEAP32[$10>>2]|0; + HEAP32[$106>>2] = $105; + $107 = (($info) + 22|0); + $108 = HEAP16[$107>>1]|0; + $109 = $108&65535; + HEAP32[$spaceLeft>>2] = $109; + $110 = HEAP32[$nHeader>>2]|0; + $111 = HEAP32[$4>>2]|0; + $112 = (($111) + ($110)|0); + HEAP32[$pPayload>>2] = $112; + $113 = (($info) + 24|0); + $114 = HEAP16[$113>>1]|0; + $115 = $114&65535; + $116 = HEAP32[$4>>2]|0; + $117 = (($116) + ($115)|0); + HEAP32[$pPrior>>2] = $117; + while(1) { + $118 = HEAP32[$nPayload>>2]|0; + $119 = ($118|0)>(0); + if (!($119)) { + label = 37; + break; + } + $120 = HEAP32[$spaceLeft>>2]|0; + $121 = ($120|0)==(0); + if ($121) { + $122 = HEAP32[$pgnoOvfl>>2]|0; + HEAP32[$pgnoPtrmap>>2] = $122; + $123 = HEAP32[$pBt>>2]|0; + $124 = (($123) + 17|0); + $125 = HEAP8[$124>>0]|0; + $126 = ($125<<24>>24)!=(0); + if ($126) { + while(1) { + $127 = HEAP32[$pgnoOvfl>>2]|0; + $128 = (($127) + 1)|0; + HEAP32[$pgnoOvfl>>2] = $128; + $129 = HEAP32[$pBt>>2]|0; + $130 = HEAP32[$pgnoOvfl>>2]|0; + $131 = (_ptrmapPageno($129,$130)|0); + $132 = HEAP32[$pgnoOvfl>>2]|0; + $133 = ($131|0)==($132|0); + if ($133) { + continue; + } + $134 = HEAP32[$pgnoOvfl>>2]|0; + $135 = HEAP32[1472>>2]|0; + $136 = HEAP32[$pBt>>2]|0; + $137 = (($136) + 32|0); + $138 = HEAP32[$137>>2]|0; + $139 = (($135>>>0) / ($138>>>0))&-1; + $140 = (($139) + 1)|0; + $141 = ($134|0)==($140|0); + if (!($141)) { + break; + } + } + } + $142 = HEAP32[$pBt>>2]|0; + $143 = HEAP32[$pgnoOvfl>>2]|0; + $144 = (_allocateBtreePage($142,$pOvfl,$pgnoOvfl,$143,0)|0); + HEAP32[$rc>>2] = $144; + $145 = HEAP32[$pBt>>2]|0; + $146 = (($145) + 17|0); + $147 = HEAP8[$146>>0]|0; + $148 = $147&255; + $149 = ($148|0)!=(0); + if ($149) { + $150 = HEAP32[$rc>>2]|0; + $151 = ($150|0)==(0); + if ($151) { + $152 = HEAP32[$pgnoPtrmap>>2]|0; + $153 = ($152|0)!=(0); + $154 = $153 ? 4 : 3; + $155 = $154&255; + HEAP8[$eType>>0] = $155; + $156 = HEAP32[$pBt>>2]|0; + $157 = HEAP32[$pgnoOvfl>>2]|0; + $158 = HEAP8[$eType>>0]|0; + $159 = HEAP32[$pgnoPtrmap>>2]|0; + _ptrmapPut($156,$157,$158,$159,$rc); + $160 = HEAP32[$rc>>2]|0; + $161 = ($160|0)!=(0); + if ($161) { + $162 = HEAP32[$pOvfl>>2]|0; + _releasePage($162); + } + } + } + $163 = HEAP32[$rc>>2]|0; + $164 = ($163|0)!=(0); + if ($164) { + label = 26; + break; + } + $167 = HEAP32[$pPrior>>2]|0; + $168 = HEAP32[$pgnoOvfl>>2]|0; + _sqlite3Put4byte($167,$168); + $169 = HEAP32[$pToRelease>>2]|0; + _releasePage($169); + $170 = HEAP32[$pOvfl>>2]|0; + HEAP32[$pToRelease>>2] = $170; + $171 = HEAP32[$pOvfl>>2]|0; + $172 = (($171) + 56|0); + $173 = HEAP32[$172>>2]|0; + HEAP32[$pPrior>>2] = $173; + $174 = HEAP32[$pPrior>>2]|0; + _sqlite3Put4byte($174,0); + $175 = HEAP32[$pOvfl>>2]|0; + $176 = (($175) + 56|0); + $177 = HEAP32[$176>>2]|0; + $178 = (($177) + 4|0); + HEAP32[$pPayload>>2] = $178; + $179 = HEAP32[$pBt>>2]|0; + $180 = (($179) + 36|0); + $181 = HEAP32[$180>>2]|0; + $182 = (($181) - 4)|0; + HEAP32[$spaceLeft>>2] = $182; + } + $183 = HEAP32[$nPayload>>2]|0; + HEAP32[$n>>2] = $183; + $184 = HEAP32[$n>>2]|0; + $185 = HEAP32[$spaceLeft>>2]|0; + $186 = ($184|0)>($185|0); + if ($186) { + $187 = HEAP32[$spaceLeft>>2]|0; + HEAP32[$n>>2] = $187; + } + $188 = HEAP32[$nSrc>>2]|0; + $189 = ($188|0)>(0); + if ($189) { + $190 = HEAP32[$n>>2]|0; + $191 = HEAP32[$nSrc>>2]|0; + $192 = ($190|0)>($191|0); + if ($192) { + $193 = HEAP32[$nSrc>>2]|0; + HEAP32[$n>>2] = $193; + } + $194 = HEAP32[$pPayload>>2]|0; + $195 = HEAP32[$pSrc>>2]|0; + $196 = HEAP32[$n>>2]|0; + _memcpy(($194|0),($195|0),($196|0))|0; + } else { + $197 = HEAP32[$pPayload>>2]|0; + $198 = HEAP32[$n>>2]|0; + _memset(($197|0),0,($198|0))|0; + } + $199 = HEAP32[$n>>2]|0; + $200 = HEAP32[$nPayload>>2]|0; + $201 = (($200) - ($199))|0; + HEAP32[$nPayload>>2] = $201; + $202 = HEAP32[$n>>2]|0; + $203 = HEAP32[$pPayload>>2]|0; + $204 = (($203) + ($202)|0); + HEAP32[$pPayload>>2] = $204; + $205 = HEAP32[$n>>2]|0; + $206 = HEAP32[$pSrc>>2]|0; + $207 = (($206) + ($205)|0); + HEAP32[$pSrc>>2] = $207; + $208 = HEAP32[$n>>2]|0; + $209 = HEAP32[$nSrc>>2]|0; + $210 = (($209) - ($208))|0; + HEAP32[$nSrc>>2] = $210; + $211 = HEAP32[$n>>2]|0; + $212 = HEAP32[$spaceLeft>>2]|0; + $213 = (($212) - ($211))|0; + HEAP32[$spaceLeft>>2] = $213; + $214 = HEAP32[$nSrc>>2]|0; + $215 = ($214|0)==(0); + if (!($215)) { + continue; + } + $216 = HEAP32[$8>>2]|0; + HEAP32[$nSrc>>2] = $216; + $217 = HEAP32[$7>>2]|0; + HEAP32[$pSrc>>2] = $217; + } + if ((label|0) == 26) { + $165 = HEAP32[$pToRelease>>2]|0; + _releasePage($165); + $166 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $166; + $219 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($219|0); + } + else if ((label|0) == 37) { + $218 = HEAP32[$pToRelease>>2]|0; + _releasePage($218); + HEAP32[$2>>2] = 0; + $219 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($219|0); + } + return 0|0; +} +function _sqlite3VdbeSorterClose($db,$pCsr) { + $db = $db|0; + $pCsr = $pCsr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pSorter = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $pSorter = sp + 4|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $pCsr; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 64|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pSorter>>2] = $4; + $5 = HEAP32[$pSorter>>2]|0; + $6 = ($5|0)!=(0|0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + $8 = HEAP32[$pSorter>>2]|0; + _sqlite3VdbeSorterReset($7,$8); + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$pSorter>>2]|0; + $11 = (($10) + 52|0); + $12 = HEAP32[$11>>2]|0; + _sqlite3DbFree($9,$12); + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$pSorter>>2]|0; + _sqlite3DbFree($13,$14); + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 64|0); + HEAP32[$16>>2] = 0; + STACKTOP = sp;return; +} +function _btreeCreateTable($p,$piTable,$createTabFlags) { + $p = $p|0; + $piTable = $piTable|0; + $createTabFlags = $createTabFlags|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; + var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $eType = 0, $iPtrPage = 0; + var $pBt = 0, $pPageMove = 0, $pRoot = 0, $pgnoMove = 0, $pgnoRoot = 0, $ptfFlags = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $0 = sp + 44|0; + $1 = sp + 40|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $pBt = sp + 28|0; + $pRoot = sp + 24|0; + $pgnoRoot = sp + 20|0; + $rc = sp + 12|0; + $ptfFlags = sp + 8|0; + $pgnoMove = sp + 4|0; + $pPageMove = sp; + $eType = sp + 48|0; + $iPtrPage = sp + 16|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $piTable; + HEAP32[$3>>2] = $createTabFlags; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$pBt>>2] = $6; + $7 = HEAP32[$pBt>>2]|0; + $8 = (($7) + 17|0); + $9 = HEAP8[$8>>0]|0; + $10 = ($9<<24>>24)!=(0); + $11 = HEAP32[$pBt>>2]|0; + if ($10) { + _invalidateAllOverflowCache($11); + $12 = HEAP32[$1>>2]|0; + _sqlite3BtreeGetMeta($12,4,$pgnoRoot); + $13 = HEAP32[$pgnoRoot>>2]|0; + $14 = (($13) + 1)|0; + HEAP32[$pgnoRoot>>2] = $14; + while(1) { + $15 = HEAP32[$pgnoRoot>>2]|0; + $16 = HEAP32[$pBt>>2]|0; + $17 = HEAP32[$pgnoRoot>>2]|0; + $18 = (_ptrmapPageno($16,$17)|0); + $19 = ($15|0)==($18|0); + if (!($19)) { + $20 = HEAP32[$pgnoRoot>>2]|0; + $21 = HEAP32[1472>>2]|0; + $22 = HEAP32[$pBt>>2]|0; + $23 = (($22) + 32|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($21>>>0) / ($24>>>0))&-1; + $26 = (($25) + 1)|0; + $27 = ($20|0)==($26|0); + if (!($27)) { + break; + } + } + $28 = HEAP32[$pgnoRoot>>2]|0; + $29 = (($28) + 1)|0; + HEAP32[$pgnoRoot>>2] = $29; + } + $30 = HEAP32[$pBt>>2]|0; + $31 = HEAP32[$pgnoRoot>>2]|0; + $32 = (_allocateBtreePage($30,$pPageMove,$pgnoMove,$31,1)|0); + HEAP32[$rc>>2] = $32; + $33 = HEAP32[$rc>>2]|0; + $34 = ($33|0)!=(0); + if ($34) { + $35 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $35; + $117 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($117|0); + } + $36 = HEAP32[$pgnoMove>>2]|0; + $37 = HEAP32[$pgnoRoot>>2]|0; + $38 = ($36|0)!=($37|0); + if ($38) { + HEAP8[$eType>>0] = 0; + HEAP32[$iPtrPage>>2] = 0; + $39 = HEAP32[$pBt>>2]|0; + $40 = (_saveAllCursors($39,0,0)|0); + HEAP32[$rc>>2] = $40; + $41 = HEAP32[$pPageMove>>2]|0; + _releasePage($41); + $42 = HEAP32[$rc>>2]|0; + $43 = ($42|0)!=(0); + if ($43) { + $44 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $44; + $117 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($117|0); + } + $45 = HEAP32[$pBt>>2]|0; + $46 = HEAP32[$pgnoRoot>>2]|0; + $47 = (_btreeGetPage($45,$46,$pRoot,0)|0); + HEAP32[$rc>>2] = $47; + $48 = HEAP32[$rc>>2]|0; + $49 = ($48|0)!=(0); + if ($49) { + $50 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $50; + $117 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($117|0); + } + $51 = HEAP32[$pBt>>2]|0; + $52 = HEAP32[$pgnoRoot>>2]|0; + $53 = (_ptrmapGet($51,$52,$eType,$iPtrPage)|0); + HEAP32[$rc>>2] = $53; + $54 = HEAP8[$eType>>0]|0; + $55 = $54&255; + $56 = ($55|0)==(1); + if ($56) { + label = 15; + } else { + $57 = HEAP8[$eType>>0]|0; + $58 = $57&255; + $59 = ($58|0)==(2); + if ($59) { + label = 15; + } + } + if ((label|0) == 15) { + $60 = (_sqlite3CorruptError(58462)|0); + HEAP32[$rc>>2] = $60; + } + $61 = HEAP32[$rc>>2]|0; + $62 = ($61|0)!=(0); + if ($62) { + $63 = HEAP32[$pRoot>>2]|0; + _releasePage($63); + $64 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $64; + $117 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($117|0); + } + $65 = HEAP32[$pBt>>2]|0; + $66 = HEAP32[$pRoot>>2]|0; + $67 = HEAP8[$eType>>0]|0; + $68 = HEAP32[$iPtrPage>>2]|0; + $69 = HEAP32[$pgnoMove>>2]|0; + $70 = (_relocatePage($65,$66,$67,$68,$69,0)|0); + HEAP32[$rc>>2] = $70; + $71 = HEAP32[$pRoot>>2]|0; + _releasePage($71); + $72 = HEAP32[$rc>>2]|0; + $73 = ($72|0)!=(0); + if ($73) { + $74 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $74; + $117 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($117|0); + } + $75 = HEAP32[$pBt>>2]|0; + $76 = HEAP32[$pgnoRoot>>2]|0; + $77 = (_btreeGetPage($75,$76,$pRoot,0)|0); + HEAP32[$rc>>2] = $77; + $78 = HEAP32[$rc>>2]|0; + $79 = ($78|0)!=(0); + if ($79) { + $80 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $80; + $117 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($117|0); + } + $81 = HEAP32[$pRoot>>2]|0; + $82 = (($81) + 68|0); + $83 = HEAP32[$82>>2]|0; + $84 = (_sqlite3PagerWrite($83)|0); + HEAP32[$rc>>2] = $84; + $85 = HEAP32[$rc>>2]|0; + $86 = ($85|0)!=(0); + if ($86) { + $87 = HEAP32[$pRoot>>2]|0; + _releasePage($87); + $88 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $88; + $117 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($117|0); + } + } else { + $89 = HEAP32[$pPageMove>>2]|0; + HEAP32[$pRoot>>2] = $89; + } + $90 = HEAP32[$pBt>>2]|0; + $91 = HEAP32[$pgnoRoot>>2]|0; + _ptrmapPut($90,$91,1,0,$rc); + $92 = HEAP32[$rc>>2]|0; + $93 = ($92|0)!=(0); + if ($93) { + $94 = HEAP32[$pRoot>>2]|0; + _releasePage($94); + $95 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $95; + $117 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($117|0); + } + $96 = HEAP32[$1>>2]|0; + $97 = HEAP32[$pgnoRoot>>2]|0; + $98 = (_sqlite3BtreeUpdateMeta($96,4,$97)|0); + HEAP32[$rc>>2] = $98; + $99 = HEAP32[$rc>>2]|0; + $100 = ($99|0)!=(0); + if ($100) { + $101 = HEAP32[$pRoot>>2]|0; + _releasePage($101); + $102 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $102; + $117 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($117|0); + } + } else { + $103 = (_allocateBtreePage($11,$pRoot,$pgnoRoot,1,0)|0); + HEAP32[$rc>>2] = $103; + $104 = HEAP32[$rc>>2]|0; + $105 = ($104|0)!=(0); + if ($105) { + $106 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $106; + $117 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($117|0); + } + } + $107 = HEAP32[$3>>2]|0; + $108 = $107 & 1; + $109 = ($108|0)!=(0); + if ($109) { + HEAP32[$ptfFlags>>2] = 13; + } else { + HEAP32[$ptfFlags>>2] = 10; + } + $110 = HEAP32[$pRoot>>2]|0; + $111 = HEAP32[$ptfFlags>>2]|0; + _zeroPage($110,$111); + $112 = HEAP32[$pRoot>>2]|0; + $113 = (($112) + 68|0); + $114 = HEAP32[$113>>2]|0; + _sqlite3PagerUnref($114); + $115 = HEAP32[$pgnoRoot>>2]|0; + $116 = HEAP32[$2>>2]|0; + HEAP32[$116>>2] = $115; + HEAP32[$0>>2] = 0; + $117 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($117|0); +} +function _btreeCursor($p,$iTable,$wrFlag,$pKeyInfo,$pCur) { + $p = $p|0; + $iTable = $iTable|0; + $wrFlag = $wrFlag|0; + $pKeyInfo = $pKeyInfo|0; + $pCur = $pCur|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $5 = sp + 16|0; + $pBt = sp + 20|0; + HEAP32[$1>>2] = $p; + HEAP32[$2>>2] = $iTable; + HEAP32[$3>>2] = $wrFlag; + HEAP32[$4>>2] = $pKeyInfo; + HEAP32[$5>>2] = $pCur; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 4|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pBt>>2] = $8; + $9 = HEAP32[$3>>2]|0; + $10 = ($9|0)!=(0); + if ($10) { + $11 = HEAP32[$pBt>>2]|0; + $12 = (($11) + 22|0); + $13 = HEAP16[$12>>1]|0; + $14 = $13&65535; + $15 = $14 & 1; + $16 = ($15|0)!=(0); + if ($16) { + HEAP32[$0>>2] = 8; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); + } + } + $17 = HEAP32[$2>>2]|0; + $18 = ($17|0)==(1); + if ($18) { + $19 = HEAP32[$pBt>>2]|0; + $20 = (_btreePagecount($19)|0); + $21 = ($20|0)==(0); + if ($21) { + HEAP32[$2>>2] = 0; + } + } + $22 = HEAP32[$2>>2]|0; + $23 = HEAP32[$5>>2]|0; + $24 = (($23) + 68|0); + HEAP32[$24>>2] = $22; + $25 = HEAP32[$5>>2]|0; + $26 = (($25) + 84|0); + HEAP16[$26>>1] = -1; + $27 = HEAP32[$4>>2]|0; + $28 = HEAP32[$5>>2]|0; + $29 = (($28) + 16|0); + HEAP32[$29>>2] = $27; + $30 = HEAP32[$1>>2]|0; + $31 = HEAP32[$5>>2]|0; + HEAP32[$31>>2] = $30; + $32 = HEAP32[$pBt>>2]|0; + $33 = HEAP32[$5>>2]|0; + $34 = (($33) + 4|0); + HEAP32[$34>>2] = $32; + $35 = HEAP32[$3>>2]|0; + $36 = $35&255; + $37 = HEAP32[$5>>2]|0; + $38 = (($37) + 80|0); + HEAP8[$38>>0] = $36; + $39 = HEAP32[$pBt>>2]|0; + $40 = (($39) + 8|0); + $41 = HEAP32[$40>>2]|0; + $42 = HEAP32[$5>>2]|0; + $43 = (($42) + 8|0); + HEAP32[$43>>2] = $41; + $44 = HEAP32[$5>>2]|0; + $45 = (($44) + 8|0); + $46 = HEAP32[$45>>2]|0; + $47 = ($46|0)!=(0|0); + if ($47) { + $48 = HEAP32[$5>>2]|0; + $49 = HEAP32[$5>>2]|0; + $50 = (($49) + 8|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + 12|0); + HEAP32[$52>>2] = $48; + } + $53 = HEAP32[$5>>2]|0; + $54 = HEAP32[$pBt>>2]|0; + $55 = (($54) + 8|0); + HEAP32[$55>>2] = $53; + $56 = HEAP32[$5>>2]|0; + $57 = (($56) + 81|0); + HEAP8[$57>>0] = 0; + HEAP32[$0>>2] = 0; + $58 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($58|0); +} +function _sqlite3BtreeCursorSize() { + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = sp;return 208; +} +function _sqlite3BtreeCursorZero($p) { + $p = $p|0; + var $0 = 0, $1 = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + dest=$1+0|0; stop=dest+84|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + STACKTOP = sp;return; +} +function _sqlite3PagerOpenSavepoint($pPager,$nSavepoint) { + $pPager = $pPager|0; + $nSavepoint = $nSavepoint|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $aNew = 0, $ii = 0, $nCurrent = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $nCurrent = sp + 12|0; + $ii = sp + 16|0; + $aNew = sp + 20|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$2>>2] = $nSavepoint; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 96|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$nCurrent>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$nCurrent>>2]|0; + $8 = ($6|0)>($7|0); + L1: do { + if ($8) { + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 6|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = ($12|0)!=(0); + if ($13) { + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 92|0); + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$2>>2]|0; + $18 = ($17*48)|0; + $19 = (_sqlite3Realloc($16,$18)|0); + HEAP32[$aNew>>2] = $19; + $20 = HEAP32[$aNew>>2]|0; + $21 = ($20|0)!=(0|0); + if (!($21)) { + HEAP32[$0>>2] = 7; + $124 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($124|0); + } + $22 = HEAP32[$nCurrent>>2]|0; + $23 = HEAP32[$aNew>>2]|0; + $24 = (($23) + (($22*48)|0)|0); + $25 = HEAP32[$2>>2]|0; + $26 = HEAP32[$nCurrent>>2]|0; + $27 = (($25) - ($26))|0; + $28 = ($27*48)|0; + _memset(($24|0),0,($28|0))|0; + $29 = HEAP32[$aNew>>2]|0; + $30 = HEAP32[$1>>2]|0; + $31 = (($30) + 92|0); + HEAP32[$31>>2] = $29; + $32 = HEAP32[$nCurrent>>2]|0; + HEAP32[$ii>>2] = $32; + while(1) { + $33 = HEAP32[$ii>>2]|0; + $34 = HEAP32[$2>>2]|0; + $35 = ($33|0)<($34|0); + if (!($35)) { + break L1; + } + $36 = HEAP32[$1>>2]|0; + $37 = (($36) + 24|0); + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$ii>>2]|0; + $40 = HEAP32[$aNew>>2]|0; + $41 = (($40) + (($39*48)|0)|0); + $42 = (($41) + 20|0); + HEAP32[$42>>2] = $38; + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 64|0); + $45 = HEAP32[$44>>2]|0; + $46 = HEAP32[$45>>2]|0; + $47 = ($46|0)!=(0|0); + if ($47) { + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + 72|0); + $50 = $49; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (($50) + 4)|0; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + $56 = ($55|0)>(0); + $57 = ($55|0)==(0); + $58 = ($52>>>0)>(0); + $59 = $57 & $58; + $60 = $56 | $59; + if ($60) { + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 72|0); + $63 = $62; + $64 = $63; + $65 = HEAP32[$64>>2]|0; + $66 = (($63) + 4)|0; + $67 = $66; + $68 = HEAP32[$67>>2]|0; + $69 = HEAP32[$ii>>2]|0; + $70 = HEAP32[$aNew>>2]|0; + $71 = (($70) + (($69*48)|0)|0); + $72 = $71; + $73 = $72; + HEAP32[$73>>2] = $65; + $74 = (($72) + 4)|0; + $75 = $74; + HEAP32[$75>>2] = $68; + } else { + label = 10; + } + } else { + label = 10; + } + if ((label|0) == 10) { + label = 0; + $76 = HEAP32[$1>>2]|0; + $77 = (($76) + 148|0); + $78 = HEAP32[$77>>2]|0; + $79 = HEAP32[$ii>>2]|0; + $80 = HEAP32[$aNew>>2]|0; + $81 = (($80) + (($79*48)|0)|0); + $82 = $81; + $83 = $82; + HEAP32[$83>>2] = $78; + $84 = (($82) + 4)|0; + $85 = $84; + HEAP32[$85>>2] = 0; + } + $86 = HEAP32[$1>>2]|0; + $87 = (($86) + 52|0); + $88 = HEAP32[$87>>2]|0; + $89 = HEAP32[$ii>>2]|0; + $90 = HEAP32[$aNew>>2]|0; + $91 = (($90) + (($89*48)|0)|0); + $92 = (($91) + 24|0); + HEAP32[$92>>2] = $88; + $93 = HEAP32[$1>>2]|0; + $94 = (($93) + 24|0); + $95 = HEAP32[$94>>2]|0; + $96 = (_sqlite3BitvecCreate($95)|0); + $97 = HEAP32[$ii>>2]|0; + $98 = HEAP32[$aNew>>2]|0; + $99 = (($98) + (($97*48)|0)|0); + $100 = (($99) + 16|0); + HEAP32[$100>>2] = $96; + $101 = HEAP32[$ii>>2]|0; + $102 = HEAP32[$aNew>>2]|0; + $103 = (($102) + (($101*48)|0)|0); + $104 = (($103) + 16|0); + $105 = HEAP32[$104>>2]|0; + $106 = ($105|0)!=(0|0); + if (!($106)) { + break; + } + $107 = HEAP32[$1>>2]|0; + $108 = (_pagerUseWal($107)|0); + $109 = ($108|0)!=(0); + if ($109) { + $110 = HEAP32[$1>>2]|0; + $111 = (($110) + 208|0); + $112 = HEAP32[$111>>2]|0; + $113 = HEAP32[$ii>>2]|0; + $114 = HEAP32[$aNew>>2]|0; + $115 = (($114) + (($113*48)|0)|0); + $116 = (($115) + 28|0); + _sqlite3WalSavepoint($112,$116); + } + $117 = HEAP32[$ii>>2]|0; + $118 = (($117) + 1)|0; + $119 = HEAP32[$1>>2]|0; + $120 = (($119) + 96|0); + HEAP32[$120>>2] = $118; + $121 = HEAP32[$ii>>2]|0; + $122 = (($121) + 1)|0; + HEAP32[$ii>>2] = $122; + } + HEAP32[$0>>2] = 7; + $124 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($124|0); + } + } + } while(0); + $123 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $123; + $124 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($124|0); +} +function _sqlite3WalSavepoint($pWal,$aWalData) { + $pWal = $pWal|0; + $aWalData = $aWalData|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pWal; + HEAP32[$1>>2] = $aWalData; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 52|0); + $4 = (($3) + 16|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$1>>2]|0; + HEAP32[$6>>2] = $5; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 52|0); + $9 = (($8) + 24|0); + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 4|0); + HEAP32[$12>>2] = $10; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 52|0); + $15 = (($14) + 24|0); + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 8|0); + HEAP32[$19>>2] = $17; + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 104|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 12|0); + HEAP32[$24>>2] = $22; + STACKTOP = sp;return; +} +function _newDatabase($pBt) { + $pBt = $pBt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $9 = 0, $data = 0, $pP1 = 0, $rc = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $pP1 = sp + 4|0; + $data = sp + 8|0; + $rc = sp + 12|0; + HEAP32[$1>>2] = $pBt; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 44|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4>>>0)>(0); + if ($5) { + HEAP32[$0>>2] = 0; + $81 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($81|0); + } + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 12|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pP1>>2] = $8; + $9 = HEAP32[$pP1>>2]|0; + $10 = (($9) + 56|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$data>>2] = $11; + $12 = HEAP32[$pP1>>2]|0; + $13 = (($12) + 68|0); + $14 = HEAP32[$13>>2]|0; + $15 = (_sqlite3PagerWrite($14)|0); + HEAP32[$rc>>2] = $15; + $16 = HEAP32[$rc>>2]|0; + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $18; + $81 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($81|0); + } else { + $19 = HEAP32[$data>>2]|0; + dest=$19+0|0; src=40888+0|0; stop=dest+16|0; do { HEAP8[dest>>0]=HEAP8[src>>0]|0; dest=dest+1|0; src=src+1|0; } while ((dest|0) < (stop|0)); + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 32|0); + $22 = HEAP32[$21>>2]|0; + $23 = $22 >>> 8; + $24 = $23 & 255; + $25 = $24&255; + $26 = HEAP32[$data>>2]|0; + $27 = (($26) + 16|0); + HEAP8[$27>>0] = $25; + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 32|0); + $30 = HEAP32[$29>>2]|0; + $31 = $30 >>> 16; + $32 = $31 & 255; + $33 = $32&255; + $34 = HEAP32[$data>>2]|0; + $35 = (($34) + 17|0); + HEAP8[$35>>0] = $33; + $36 = HEAP32[$data>>2]|0; + $37 = (($36) + 18|0); + HEAP8[$37>>0] = 1; + $38 = HEAP32[$data>>2]|0; + $39 = (($38) + 19|0); + HEAP8[$39>>0] = 1; + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 32|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$1>>2]|0; + $44 = (($43) + 36|0); + $45 = HEAP32[$44>>2]|0; + $46 = (($42) - ($45))|0; + $47 = $46&255; + $48 = HEAP32[$data>>2]|0; + $49 = (($48) + 20|0); + HEAP8[$49>>0] = $47; + $50 = HEAP32[$data>>2]|0; + $51 = (($50) + 21|0); + HEAP8[$51>>0] = 64; + $52 = HEAP32[$data>>2]|0; + $53 = (($52) + 22|0); + HEAP8[$53>>0] = 32; + $54 = HEAP32[$data>>2]|0; + $55 = (($54) + 23|0); + HEAP8[$55>>0] = 32; + $56 = HEAP32[$data>>2]|0; + $57 = (($56) + 24|0); + dest=$57+0|0; stop=dest+76|0; do { HEAP8[dest>>0]=0|0; dest=dest+1|0; } while ((dest|0) < (stop|0)); + $58 = HEAP32[$pP1>>2]|0; + _zeroPage($58,13); + $59 = HEAP32[$1>>2]|0; + $60 = (($59) + 22|0); + $61 = HEAP16[$60>>1]|0; + $62 = $61&65535; + $63 = $62 | 2; + $64 = $63&65535; + HEAP16[$60>>1] = $64; + $65 = HEAP32[$data>>2]|0; + $66 = (($65) + 52|0); + $67 = HEAP32[$1>>2]|0; + $68 = (($67) + 17|0); + $69 = HEAP8[$68>>0]|0; + $70 = $69&255; + _sqlite3Put4byte($66,$70); + $71 = HEAP32[$data>>2]|0; + $72 = (($71) + 64|0); + $73 = HEAP32[$1>>2]|0; + $74 = (($73) + 18|0); + $75 = HEAP8[$74>>0]|0; + $76 = $75&255; + _sqlite3Put4byte($72,$76); + $77 = HEAP32[$1>>2]|0; + $78 = (($77) + 44|0); + HEAP32[$78>>2] = 1; + $79 = HEAP32[$data>>2]|0; + $80 = (($79) + 31|0); + HEAP8[$80>>0] = 1; + HEAP32[$0>>2] = 0; + $81 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($81|0); + } + return 0|0; +} +function _fetchPayload($pCur,$pAmt) { + $pCur = $pCur|0; + $pAmt = $pAmt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pCur; + HEAP32[$1>>2] = $pAmt; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 24|0); + $4 = (($3) + 22|0); + $5 = HEAP16[$4>>1]|0; + $6 = $5&65535; + $7 = HEAP32[$1>>2]|0; + HEAP32[$7>>2] = $6; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 24|0); + $10 = (($9) + 8|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$0>>2]|0; + $13 = (($12) + 24|0); + $14 = (($13) + 20|0); + $15 = HEAP16[$14>>1]|0; + $16 = $15&65535; + $17 = (($11) + ($16)|0); + STACKTOP = sp;return ($17|0); +} +function _sqlite3BtreeCursorHasMoved($pCur,$pHasMoved) { + $pCur = $pCur|0; + $pHasMoved = $pHasMoved|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$1>>2] = $pCur; + HEAP32[$2>>2] = $pHasMoved; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 81|0); + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = ($6|0)==(1); + if ($7) { + $8 = HEAP32[$2>>2]|0; + HEAP32[$8>>2] = 0; + HEAP32[$0>>2] = 0; + $32 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($32|0); + } + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 81|0); + $11 = HEAP8[$10>>0]|0; + $12 = $11&255; + $13 = ($12|0)>=(3); + if ($13) { + $14 = HEAP32[$1>>2]|0; + $15 = (_btreeRestoreCursorPosition($14)|0); + $16 = $15; + } else { + $16 = 0; + } + HEAP32[$rc>>2] = $16; + $17 = HEAP32[$rc>>2]|0; + $18 = ($17|0)!=(0); + if ($18) { + $19 = HEAP32[$2>>2]|0; + HEAP32[$19>>2] = 2; + $20 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $20; + $32 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($32|0); + } + $21 = HEAP32[$1>>2]|0; + $22 = (($21) + 81|0); + $23 = HEAP8[$22>>0]|0; + $24 = $23&255; + $25 = ($24|0)!=(1); + if ($25) { + label = 9; + } else { + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 76|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)!=(0); + if ($29) { + label = 9; + } else { + $31 = HEAP32[$2>>2]|0; + HEAP32[$31>>2] = 1; + } + } + if ((label|0) == 9) { + $30 = HEAP32[$2>>2]|0; + HEAP32[$30>>2] = 2; + } + HEAP32[$0>>2] = 0; + $32 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($32|0); +} +function _closeAllCursors($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $pC = 0, $pDel = 0, $pFrame = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $pFrame = sp; + $i = sp + 4|0; + $pC = sp + 8|0; + $pDel = sp + 12|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 176|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 176|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$pFrame>>2] = $7; + while(1) { + $8 = HEAP32[$pFrame>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)!=(0|0); + $12 = HEAP32[$pFrame>>2]|0; + if (!($11)) { + break; + } + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + HEAP32[$pFrame>>2] = $14; + } + (_sqlite3VdbeFrameRestore($12)|0); + } + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 176|0); + HEAP32[$16>>2] = 0; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 184|0); + HEAP32[$18>>2] = 0; + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 56|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)!=(0|0); + L8: do { + if ($22) { + HEAP32[$i>>2] = 0; + while(1) { + $23 = HEAP32[$i>>2]|0; + $24 = HEAP32[$0>>2]|0; + $25 = (($24) + 36|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($23|0)<($26|0); + if (!($27)) { + break L8; + } + $28 = HEAP32[$i>>2]|0; + $29 = HEAP32[$0>>2]|0; + $30 = (($29) + 56|0); + $31 = HEAP32[$30>>2]|0; + $32 = (($31) + ($28<<2)|0); + $33 = HEAP32[$32>>2]|0; + HEAP32[$pC>>2] = $33; + $34 = HEAP32[$pC>>2]|0; + $35 = ($34|0)!=(0|0); + if ($35) { + $36 = HEAP32[$0>>2]|0; + $37 = HEAP32[$pC>>2]|0; + _sqlite3VdbeFreeCursor($36,$37); + $38 = HEAP32[$i>>2]|0; + $39 = HEAP32[$0>>2]|0; + $40 = (($39) + 56|0); + $41 = HEAP32[$40>>2]|0; + $42 = (($41) + ($38<<2)|0); + HEAP32[$42>>2] = 0; + } + $43 = HEAP32[$i>>2]|0; + $44 = (($43) + 1)|0; + HEAP32[$i>>2] = $44; + } + } + } while(0); + $45 = HEAP32[$0>>2]|0; + $46 = (($45) + 8|0); + $47 = HEAP32[$46>>2]|0; + $48 = ($47|0)!=(0|0); + if ($48) { + $49 = HEAP32[$0>>2]|0; + $50 = (($49) + 8|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + 40|0); + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 28|0); + $55 = HEAP32[$54>>2]|0; + _releaseMemArray($52,$55); + } + while(1) { + $56 = HEAP32[$0>>2]|0; + $57 = (($56) + 180|0); + $58 = HEAP32[$57>>2]|0; + $59 = ($58|0)!=(0|0); + $60 = HEAP32[$0>>2]|0; + if (!($59)) { + break; + } + $61 = (($60) + 180|0); + $62 = HEAP32[$61>>2]|0; + HEAP32[$pDel>>2] = $62; + $63 = HEAP32[$pDel>>2]|0; + $64 = (($63) + 4|0); + $65 = HEAP32[$64>>2]|0; + $66 = HEAP32[$0>>2]|0; + $67 = (($66) + 180|0); + HEAP32[$67>>2] = $65; + $68 = HEAP32[$pDel>>2]|0; + _sqlite3VdbeFrameDelete($68); + } + _sqlite3VdbeDeleteAuxData($60,-1,0); + STACKTOP = sp;return; +} +function _vdbeCommit($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; + var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; + var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; + var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; + var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0; + var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0; + var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0; + var $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0; + var $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $i = 0, $iRandom = 0, $nMainFile = 0, $nTrans = 0, $needSync = 0, $needXcommit = 0, $offset = 0; + var $pBt = 0, $pBt1 = 0, $pBt2 = 0, $pBt3 = 0, $pBt4 = 0, $pBt5 = 0, $pMaster = 0, $pVfs = 0, $rc = 0, $res = 0, $retryCount = 0, $vararg_buffer11 = 0, $vararg_ptr14 = 0, $zFile = 0, $zMainFile = 0, $zMaster = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $vararg_buffer11 = sp + 8|0; + $0 = sp + 100|0; + $1 = sp + 96|0; + $2 = sp + 92|0; + $i = sp + 88|0; + $nTrans = sp + 84|0; + $rc = sp + 80|0; + $needXcommit = sp + 76|0; + $pBt = sp + 72|0; + $pBt1 = sp + 68|0; + $pBt2 = sp + 64|0; + $pVfs = sp + 60|0; + $needSync = sp + 104|0; + $zMaster = sp + 28|0; + $zMainFile = sp + 24|0; + $pMaster = sp + 16|0; + $offset = sp; + $res = sp + 20|0; + $retryCount = sp + 52|0; + $nMainFile = sp + 32|0; + $iRandom = sp + 36|0; + $pBt3 = sp + 40|0; + $zFile = sp + 44|0; + $pBt4 = sp + 48|0; + $pBt5 = sp + 56|0; + HEAP32[$1>>2] = $db; + HEAP32[$2>>2] = $p; + HEAP32[$nTrans>>2] = 0; + HEAP32[$rc>>2] = 0; + HEAP32[$needXcommit>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = HEAP32[$2>>2]|0; + $5 = (_sqlite3VtabSync($3,$4)|0); + HEAP32[$rc>>2] = $5; + HEAP32[$i>>2] = 0; + while(1) { + $6 = HEAP32[$rc>>2]|0; + $7 = ($6|0)==(0); + if (!($7)) { + break; + } + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = (($9) + 20|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($8|0)<($11|0); + if (!($12)) { + break; + } + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$1>>2]|0; + $15 = (($14) + 16|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + ($13<<4)|0); + $18 = (($17) + 4|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$pBt>>2] = $19; + $20 = HEAP32[$pBt>>2]|0; + $21 = (_sqlite3BtreeIsInTrans($20)|0); + $22 = ($21|0)!=(0); + if ($22) { + HEAP32[$needXcommit>>2] = 1; + $23 = HEAP32[$i>>2]|0; + $24 = ($23|0)!=(1); + if ($24) { + $25 = HEAP32[$nTrans>>2]|0; + $26 = (($25) + 1)|0; + HEAP32[$nTrans>>2] = $26; + } + $27 = HEAP32[$pBt>>2]|0; + _sqlite3BtreeEnter($27); + $28 = HEAP32[$pBt>>2]|0; + $29 = (_sqlite3BtreePager($28)|0); + $30 = (_sqlite3PagerExclusiveLock($29)|0); + HEAP32[$rc>>2] = $30; + } + $31 = HEAP32[$i>>2]|0; + $32 = (($31) + 1)|0; + HEAP32[$i>>2] = $32; + } + $33 = HEAP32[$rc>>2]|0; + $34 = ($33|0)!=(0); + if ($34) { + $35 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $35; + $292 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($292|0); + } + $36 = HEAP32[$needXcommit>>2]|0; + $37 = ($36|0)!=(0); + if ($37) { + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 184|0); + $40 = HEAP32[$39>>2]|0; + $41 = ($40|0)!=(0|0); + if ($41) { + $42 = HEAP32[$1>>2]|0; + $43 = (($42) + 184|0); + $44 = HEAP32[$43>>2]|0; + $45 = HEAP32[$1>>2]|0; + $46 = (($45) + 180|0); + $47 = HEAP32[$46>>2]|0; + $48 = (FUNCTION_TABLE_ii[$44 & 63]($47)|0); + HEAP32[$rc>>2] = $48; + $49 = HEAP32[$rc>>2]|0; + $50 = ($49|0)!=(0); + if ($50) { + HEAP32[$0>>2] = 531; + $292 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($292|0); + } + } + } + $51 = HEAP32[$1>>2]|0; + $52 = (($51) + 16|0); + $53 = HEAP32[$52>>2]|0; + $54 = (($53) + 4|0); + $55 = HEAP32[$54>>2]|0; + $56 = (_sqlite3BtreeGetFilename($55)|0); + $57 = (_sqlite3Strlen30($56)|0); + $58 = (0)==($57|0); + if ($58) { + label = 17; + } else { + $59 = HEAP32[$nTrans>>2]|0; + $60 = ($59|0)<=(1); + if ($60) { + label = 17; + } else { + $104 = HEAP32[$1>>2]|0; + $105 = HEAP32[$104>>2]|0; + HEAP32[$pVfs>>2] = $105; + HEAP32[$needSync>>2] = 0; + HEAP32[$zMaster>>2] = 0; + $106 = HEAP32[$1>>2]|0; + $107 = (($106) + 16|0); + $108 = HEAP32[$107>>2]|0; + $109 = (($108) + 4|0); + $110 = HEAP32[$109>>2]|0; + $111 = (_sqlite3BtreeGetFilename($110)|0); + HEAP32[$zMainFile>>2] = $111; + HEAP32[$pMaster>>2] = 0; + $112 = $offset; + $113 = $112; + HEAP32[$113>>2] = 0; + $114 = (($112) + 4)|0; + $115 = $114; + HEAP32[$115>>2] = 0; + HEAP32[$retryCount>>2] = 0; + $116 = HEAP32[$zMainFile>>2]|0; + $117 = (_sqlite3Strlen30($116)|0); + HEAP32[$nMainFile>>2] = $117; + $118 = HEAP32[$1>>2]|0; + $119 = HEAP32[$zMainFile>>2]|0; + HEAP32[$vararg_buffer11>>2] = $119; + $120 = (_sqlite3MPrintf($118,40904,$vararg_buffer11)|0); + HEAP32[$zMaster>>2] = $120; + $121 = HEAP32[$zMaster>>2]|0; + $122 = ($121|0)==(0|0); + if ($122) { + HEAP32[$0>>2] = 7; + $292 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($292|0); + } + while(1) { + $123 = HEAP32[$retryCount>>2]|0; + $124 = ($123|0)!=(0); + if ($124) { + $125 = HEAP32[$retryCount>>2]|0; + $126 = ($125|0)>(100); + if ($126) { + label = 35; + break; + } + $130 = HEAP32[$retryCount>>2]|0; + $131 = ($130|0)==(1); + if ($131) { + $132 = HEAP32[$zMaster>>2]|0; + HEAP32[$vararg_buffer11>>2] = $132; + _sqlite3_log(13,40936,$vararg_buffer11); + } + } + $133 = HEAP32[$retryCount>>2]|0; + $134 = (($133) + 1)|0; + HEAP32[$retryCount>>2] = $134; + _sqlite3_randomness(4,$iRandom); + $135 = HEAP32[$nMainFile>>2]|0; + $136 = HEAP32[$zMaster>>2]|0; + $137 = (($136) + ($135)|0); + $138 = HEAP32[$iRandom>>2]|0; + $139 = $138 >>> 8; + $140 = $139 & 16777215; + $141 = HEAP32[$iRandom>>2]|0; + $142 = $141 & 255; + HEAP32[$vararg_buffer11>>2] = $140; + $vararg_ptr14 = (($vararg_buffer11) + 4|0); + HEAP32[$vararg_ptr14>>2] = $142; + (_sqlite3_snprintf(13,$137,40952,$vararg_buffer11)|0); + $143 = HEAP32[$pVfs>>2]|0; + $144 = HEAP32[$zMaster>>2]|0; + $145 = (_sqlite3OsAccess($143,$144,0,$res)|0); + HEAP32[$rc>>2] = $145; + $146 = HEAP32[$rc>>2]|0; + $147 = ($146|0)==(0); + if (!($147)) { + break; + } + $148 = HEAP32[$res>>2]|0; + $149 = ($148|0)!=(0); + if (!($149)) { + break; + } + } + if ((label|0) == 35) { + $127 = HEAP32[$zMaster>>2]|0; + HEAP32[$vararg_buffer11>>2] = $127; + _sqlite3_log(13,40920,$vararg_buffer11); + $128 = HEAP32[$pVfs>>2]|0; + $129 = HEAP32[$zMaster>>2]|0; + (_sqlite3OsDelete($128,$129,0)|0); + } + $150 = HEAP32[$rc>>2]|0; + $151 = ($150|0)==(0); + if ($151) { + $152 = HEAP32[$pVfs>>2]|0; + $153 = HEAP32[$zMaster>>2]|0; + $154 = (_sqlite3OsOpenMalloc($152,$153,$pMaster,16406,0)|0); + HEAP32[$rc>>2] = $154; + } + $155 = HEAP32[$rc>>2]|0; + $156 = ($155|0)!=(0); + if ($156) { + $157 = HEAP32[$1>>2]|0; + $158 = HEAP32[$zMaster>>2]|0; + _sqlite3DbFree($157,$158); + $159 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $159; + $292 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($292|0); + } + HEAP32[$i>>2] = 0; + while(1) { + $160 = HEAP32[$i>>2]|0; + $161 = HEAP32[$1>>2]|0; + $162 = (($161) + 20|0); + $163 = HEAP32[$162>>2]|0; + $164 = ($160|0)<($163|0); + if (!($164)) { + break; + } + $165 = HEAP32[$i>>2]|0; + $166 = HEAP32[$1>>2]|0; + $167 = (($166) + 16|0); + $168 = HEAP32[$167>>2]|0; + $169 = (($168) + ($165<<4)|0); + $170 = (($169) + 4|0); + $171 = HEAP32[$170>>2]|0; + HEAP32[$pBt3>>2] = $171; + $172 = HEAP32[$pBt3>>2]|0; + $173 = (_sqlite3BtreeIsInTrans($172)|0); + $174 = ($173|0)!=(0); + if ($174) { + $175 = HEAP32[$pBt3>>2]|0; + $176 = (_sqlite3BtreeGetJournalname($175)|0); + HEAP32[$zFile>>2] = $176; + $177 = HEAP32[$zFile>>2]|0; + $178 = ($177|0)==(0|0); + if (!($178)) { + $179 = HEAP32[$needSync>>2]|0; + $180 = ($179|0)!=(0); + if (!($180)) { + $181 = HEAP32[$pBt3>>2]|0; + $182 = (_sqlite3BtreeSyncDisabled($181)|0); + $183 = ($182|0)!=(0); + if (!($183)) { + HEAP32[$needSync>>2] = 1; + } + } + $184 = HEAP32[$pMaster>>2]|0; + $185 = HEAP32[$zFile>>2]|0; + $186 = HEAP32[$zFile>>2]|0; + $187 = (_sqlite3Strlen30($186)|0); + $188 = (($187) + 1)|0; + $189 = $offset; + $190 = $189; + $191 = HEAP32[$190>>2]|0; + $192 = (($189) + 4)|0; + $193 = $192; + $194 = HEAP32[$193>>2]|0; + $195 = (_sqlite3OsWrite($184,$185,$188,$191,$194)|0); + HEAP32[$rc>>2] = $195; + $196 = HEAP32[$zFile>>2]|0; + $197 = (_sqlite3Strlen30($196)|0); + $198 = (($197) + 1)|0; + $199 = ($198|0)<(0); + $200 = $199 << 31 >> 31; + $201 = $offset; + $202 = $201; + $203 = HEAP32[$202>>2]|0; + $204 = (($201) + 4)|0; + $205 = $204; + $206 = HEAP32[$205>>2]|0; + $207 = (_i64Add(($203|0),($206|0),($198|0),($200|0))|0); + $208 = tempRet0; + $209 = $offset; + $210 = $209; + HEAP32[$210>>2] = $207; + $211 = (($209) + 4)|0; + $212 = $211; + HEAP32[$212>>2] = $208; + $213 = HEAP32[$rc>>2]|0; + $214 = ($213|0)!=(0); + if ($214) { + label = 52; + break; + } + } + } + $221 = HEAP32[$i>>2]|0; + $222 = (($221) + 1)|0; + HEAP32[$i>>2] = $222; + } + if ((label|0) == 52) { + $215 = HEAP32[$pMaster>>2]|0; + (_sqlite3OsCloseFree($215)|0); + $216 = HEAP32[$pVfs>>2]|0; + $217 = HEAP32[$zMaster>>2]|0; + (_sqlite3OsDelete($216,$217,0)|0); + $218 = HEAP32[$1>>2]|0; + $219 = HEAP32[$zMaster>>2]|0; + _sqlite3DbFree($218,$219); + $220 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $220; + $292 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($292|0); + } + $223 = HEAP32[$needSync>>2]|0; + $224 = ($223|0)!=(0); + if ($224) { + $225 = HEAP32[$pMaster>>2]|0; + $226 = (_sqlite3OsDeviceCharacteristics($225)|0); + $227 = $226 & 1024; + $228 = (0)==($227|0); + if ($228) { + $229 = HEAP32[$pMaster>>2]|0; + $230 = (_sqlite3OsSync($229,2)|0); + HEAP32[$rc>>2] = $230; + $231 = (0)!=($230|0); + if ($231) { + $232 = HEAP32[$pMaster>>2]|0; + (_sqlite3OsCloseFree($232)|0); + $233 = HEAP32[$pVfs>>2]|0; + $234 = HEAP32[$zMaster>>2]|0; + (_sqlite3OsDelete($233,$234,0)|0); + $235 = HEAP32[$1>>2]|0; + $236 = HEAP32[$zMaster>>2]|0; + _sqlite3DbFree($235,$236); + $237 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $237; + $292 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($292|0); + } + } + } + HEAP32[$i>>2] = 0; + while(1) { + $238 = HEAP32[$rc>>2]|0; + $239 = ($238|0)==(0); + if (!($239)) { + break; + } + $240 = HEAP32[$i>>2]|0; + $241 = HEAP32[$1>>2]|0; + $242 = (($241) + 20|0); + $243 = HEAP32[$242>>2]|0; + $244 = ($240|0)<($243|0); + if (!($244)) { + break; + } + $245 = HEAP32[$i>>2]|0; + $246 = HEAP32[$1>>2]|0; + $247 = (($246) + 16|0); + $248 = HEAP32[$247>>2]|0; + $249 = (($248) + ($245<<4)|0); + $250 = (($249) + 4|0); + $251 = HEAP32[$250>>2]|0; + HEAP32[$pBt4>>2] = $251; + $252 = HEAP32[$pBt4>>2]|0; + $253 = ($252|0)!=(0|0); + if ($253) { + $254 = HEAP32[$pBt4>>2]|0; + $255 = HEAP32[$zMaster>>2]|0; + $256 = (_sqlite3BtreeCommitPhaseOne($254,$255)|0); + HEAP32[$rc>>2] = $256; + } + $257 = HEAP32[$i>>2]|0; + $258 = (($257) + 1)|0; + HEAP32[$i>>2] = $258; + } + $259 = HEAP32[$pMaster>>2]|0; + (_sqlite3OsCloseFree($259)|0); + $260 = HEAP32[$rc>>2]|0; + $261 = ($260|0)!=(0); + if ($261) { + $262 = HEAP32[$1>>2]|0; + $263 = HEAP32[$zMaster>>2]|0; + _sqlite3DbFree($262,$263); + $264 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $264; + $292 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($292|0); + } + $265 = HEAP32[$pVfs>>2]|0; + $266 = HEAP32[$zMaster>>2]|0; + $267 = (_sqlite3OsDelete($265,$266,1)|0); + HEAP32[$rc>>2] = $267; + $268 = HEAP32[$1>>2]|0; + $269 = HEAP32[$zMaster>>2]|0; + _sqlite3DbFree($268,$269); + HEAP32[$zMaster>>2] = 0; + $270 = HEAP32[$rc>>2]|0; + $271 = ($270|0)!=(0); + if ($271) { + $272 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $272; + $292 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($292|0); + } + _sqlite3BeginBenignMalloc(); + HEAP32[$i>>2] = 0; + while(1) { + $273 = HEAP32[$i>>2]|0; + $274 = HEAP32[$1>>2]|0; + $275 = (($274) + 20|0); + $276 = HEAP32[$275>>2]|0; + $277 = ($273|0)<($276|0); + if (!($277)) { + break; + } + $278 = HEAP32[$i>>2]|0; + $279 = HEAP32[$1>>2]|0; + $280 = (($279) + 16|0); + $281 = HEAP32[$280>>2]|0; + $282 = (($281) + ($278<<4)|0); + $283 = (($282) + 4|0); + $284 = HEAP32[$283>>2]|0; + HEAP32[$pBt5>>2] = $284; + $285 = HEAP32[$pBt5>>2]|0; + $286 = ($285|0)!=(0|0); + if ($286) { + $287 = HEAP32[$pBt5>>2]|0; + (_sqlite3BtreeCommitPhaseTwo($287,1)|0); + } + $288 = HEAP32[$i>>2]|0; + $289 = (($288) + 1)|0; + HEAP32[$i>>2] = $289; + } + _sqlite3EndBenignMalloc(); + $290 = HEAP32[$1>>2]|0; + (_sqlite3VtabCommit($290)|0); + } + } + if ((label|0) == 17) { + HEAP32[$i>>2] = 0; + while(1) { + $61 = HEAP32[$rc>>2]|0; + $62 = ($61|0)==(0); + if (!($62)) { + break; + } + $63 = HEAP32[$i>>2]|0; + $64 = HEAP32[$1>>2]|0; + $65 = (($64) + 20|0); + $66 = HEAP32[$65>>2]|0; + $67 = ($63|0)<($66|0); + if (!($67)) { + break; + } + $68 = HEAP32[$i>>2]|0; + $69 = HEAP32[$1>>2]|0; + $70 = (($69) + 16|0); + $71 = HEAP32[$70>>2]|0; + $72 = (($71) + ($68<<4)|0); + $73 = (($72) + 4|0); + $74 = HEAP32[$73>>2]|0; + HEAP32[$pBt1>>2] = $74; + $75 = HEAP32[$pBt1>>2]|0; + $76 = ($75|0)!=(0|0); + if ($76) { + $77 = HEAP32[$pBt1>>2]|0; + $78 = (_sqlite3BtreeCommitPhaseOne($77,0)|0); + HEAP32[$rc>>2] = $78; + } + $79 = HEAP32[$i>>2]|0; + $80 = (($79) + 1)|0; + HEAP32[$i>>2] = $80; + } + HEAP32[$i>>2] = 0; + while(1) { + $81 = HEAP32[$rc>>2]|0; + $82 = ($81|0)==(0); + if (!($82)) { + break; + } + $83 = HEAP32[$i>>2]|0; + $84 = HEAP32[$1>>2]|0; + $85 = (($84) + 20|0); + $86 = HEAP32[$85>>2]|0; + $87 = ($83|0)<($86|0); + if (!($87)) { + break; + } + $88 = HEAP32[$i>>2]|0; + $89 = HEAP32[$1>>2]|0; + $90 = (($89) + 16|0); + $91 = HEAP32[$90>>2]|0; + $92 = (($91) + ($88<<4)|0); + $93 = (($92) + 4|0); + $94 = HEAP32[$93>>2]|0; + HEAP32[$pBt2>>2] = $94; + $95 = HEAP32[$pBt2>>2]|0; + $96 = ($95|0)!=(0|0); + if ($96) { + $97 = HEAP32[$pBt2>>2]|0; + $98 = (_sqlite3BtreeCommitPhaseTwo($97,0)|0); + HEAP32[$rc>>2] = $98; + } + $99 = HEAP32[$i>>2]|0; + $100 = (($99) + 1)|0; + HEAP32[$i>>2] = $100; + } + $101 = HEAP32[$rc>>2]|0; + $102 = ($101|0)==(0); + if ($102) { + $103 = HEAP32[$1>>2]|0; + (_sqlite3VtabCommit($103)|0); + } + } + $291 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $291; + $292 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($292|0); +} +function _sqlite3VtabSync($db,$p) { + $db = $db|0; + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aVTrans = 0, $i = 0; + var $pVtab = 0, $rc = 0, $x = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $i = sp + 4|0; + $rc = sp + 8|0; + $aVTrans = sp + 12|0; + $x = sp + 16|0; + $pVtab = sp + 20|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $p; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 320|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$aVTrans>>2] = $4; + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 320|0); + HEAP32[$6>>2] = 0; + HEAP32[$i>>2] = 0; + while(1) { + $7 = HEAP32[$rc>>2]|0; + $8 = ($7|0)==(0); + if (!($8)) { + label = 8; + break; + } + $9 = HEAP32[$i>>2]|0; + $10 = HEAP32[$0>>2]|0; + $11 = (($10) + 296|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($9|0)<($12|0); + if (!($13)) { + label = 8; + break; + } + $14 = HEAP32[$i>>2]|0; + $15 = HEAP32[$aVTrans>>2]|0; + $16 = (($15) + ($14<<2)|0); + $17 = HEAP32[$16>>2]|0; + $18 = (($17) + 8|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$pVtab>>2] = $19; + $20 = HEAP32[$pVtab>>2]|0; + $21 = ($20|0)!=(0|0); + if ($21) { + $22 = HEAP32[$pVtab>>2]|0; + $23 = HEAP32[$22>>2]|0; + $24 = (($23) + 60|0); + $25 = HEAP32[$24>>2]|0; + HEAP32[$x>>2] = $25; + $26 = ($25|0)!=(0|0); + if ($26) { + $27 = HEAP32[$x>>2]|0; + $28 = HEAP32[$pVtab>>2]|0; + $29 = (FUNCTION_TABLE_ii[$27 & 63]($28)|0); + HEAP32[$rc>>2] = $29; + $30 = HEAP32[$1>>2]|0; + $31 = HEAP32[$pVtab>>2]|0; + _sqlite3VtabImportErrmsg($30,$31); + } + } + $32 = HEAP32[$i>>2]|0; + $33 = (($32) + 1)|0; + HEAP32[$i>>2] = $33; + } + if ((label|0) == 8) { + $34 = HEAP32[$aVTrans>>2]|0; + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 320|0); + HEAP32[$36>>2] = $34; + $37 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($37|0); + } + return 0|0; +} +function _sqlite3VtabCommit($db) { + $db = $db|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $db; + $1 = HEAP32[$0>>2]|0; + _callFinaliser($1,64); + STACKTOP = sp;return 0; +} +function _sqlite3BtreeGetJournalname($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = (_sqlite3PagerJournalname($4)|0); + STACKTOP = sp;return ($5|0); +} +function _sqlite3BtreeSyncDisabled($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $pBt = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $pBt = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pBt>>2] = $3; + $4 = HEAP32[$0>>2]|0; + _sqlite3BtreeEnter($4); + $5 = HEAP32[$pBt>>2]|0; + $6 = HEAP32[$5>>2]|0; + $7 = (_sqlite3PagerNosync($6)|0); + HEAP32[$rc>>2] = $7; + $8 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($8|0); +} +function _sqlite3PagerNosync($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 7|0); + $3 = HEAP8[$2>>0]|0; + $4 = $3&255; + STACKTOP = sp;return ($4|0); +} +function _sqlite3PagerJournalname($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pPager; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 172|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _sqlite3VdbeFrameDelete($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $aMem = 0, $apCsr = 0, $i = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $i = sp; + $aMem = sp + 4|0; + $apCsr = sp + 8|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 72|0); + HEAP32[$aMem>>2] = $2; + $3 = HEAP32[$0>>2]|0; + $4 = (($3) + 60|0); + $5 = HEAP32[$4>>2]|0; + $6 = HEAP32[$aMem>>2]|0; + $7 = (($6) + (($5*40)|0)|0); + HEAP32[$apCsr>>2] = $7; + HEAP32[$i>>2] = 0; + while(1) { + $8 = HEAP32[$i>>2]|0; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 64|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($8|0)<($11|0); + if (!($12)) { + break; + } + $13 = HEAP32[$0>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$i>>2]|0; + $16 = HEAP32[$apCsr>>2]|0; + $17 = (($16) + ($15<<2)|0); + $18 = HEAP32[$17>>2]|0; + _sqlite3VdbeFreeCursor($14,$18); + $19 = HEAP32[$i>>2]|0; + $20 = (($19) + 1)|0; + HEAP32[$i>>2] = $20; + } + $21 = HEAP32[$aMem>>2]|0; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 60|0); + $24 = HEAP32[$23>>2]|0; + _releaseMemArray($21,$24); + $25 = HEAP32[$0>>2]|0; + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$26>>2]|0; + $28 = HEAP32[$0>>2]|0; + _sqlite3DbFree($27,$28); + STACKTOP = sp;return; +} +function _sqlite3OpcodeName($i) { + $i = $i|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $i; + $1 = HEAP32[$0>>2]|0; + $2 = (41080 + ($1<<2)|0); + $3 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($3|0); +} +function _displayP4($pOp,$zTemp,$nTemp) { + $pOp = $pOp|0; + $zTemp = $zTemp|0; + $nTemp = $nTemp|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0.0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0.0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; + var $i = 0, $j = 0, $n = 0, $pColl = 0, $pColl1 = 0, $pDef = 0, $pKeyInfo = 0, $pMem = 0, $pVtab = 0, $vararg_buffer31 = 0, $vararg_ptr28 = 0, $vararg_ptr7 = 0, $zColl = 0, $zP4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 64|0; + $vararg_buffer31 = sp; + $0 = sp + 56|0; + $1 = sp + 52|0; + $2 = sp + 48|0; + $zP4 = sp + 44|0; + $i = sp + 40|0; + $j = sp + 36|0; + $pKeyInfo = sp + 60|0; + $pColl = sp + 24|0; + $zColl = sp + 20|0; + $n = sp + 16|0; + $pColl1 = sp + 12|0; + $pDef = sp + 8|0; + $pMem = sp + 28|0; + $pVtab = sp + 32|0; + HEAP32[$0>>2] = $pOp; + HEAP32[$1>>2] = $zTemp; + HEAP32[$2>>2] = $nTemp; + $3 = HEAP32[$1>>2]|0; + HEAP32[$zP4>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 1|0); + $6 = HEAP8[$5>>0]|0; + $7 = $6 << 24 >> 24; + do { + switch ($7|0) { + case -10: { + $177 = HEAP32[$0>>2]|0; + $178 = (($177) + 16|0); + $179 = HEAP32[$178>>2]|0; + $180 = (($179) + 8|0); + $181 = HEAP32[$180>>2]|0; + HEAP32[$pVtab>>2] = $181; + $182 = HEAP32[$2>>2]|0; + $183 = HEAP32[$1>>2]|0; + $184 = HEAP32[$pVtab>>2]|0; + $185 = HEAP32[$pVtab>>2]|0; + $186 = HEAP32[$185>>2]|0; + HEAP32[$vararg_buffer31>>2] = $184; + $vararg_ptr28 = (($vararg_buffer31) + 4|0); + HEAP32[$vararg_ptr28>>2] = $186; + (_sqlite3_snprintf($182,$183,41040,$vararg_buffer31)|0); + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + break; + } + case -13: { + $101 = HEAP32[$2>>2]|0; + $102 = HEAP32[$1>>2]|0; + $103 = HEAP32[$0>>2]|0; + $104 = (($103) + 16|0); + $105 = HEAP32[$104>>2]|0; + $106 = $105; + $107 = $106; + $108 = HEAP32[$107>>2]|0; + $109 = (($106) + 4)|0; + $110 = $109; + $111 = HEAP32[$110>>2]|0; + $112 = $vararg_buffer31; + $113 = $112; + HEAP32[$113>>2] = $108; + $114 = (($112) + 4)|0; + $115 = $114; + HEAP32[$115>>2] = $111; + (_sqlite3_snprintf($101,$102,15992,$vararg_buffer31)|0); + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + break; + } + case -14: { + $116 = HEAP32[$2>>2]|0; + $117 = HEAP32[$1>>2]|0; + $118 = HEAP32[$0>>2]|0; + $119 = (($118) + 16|0); + $120 = HEAP32[$119>>2]|0; + HEAP32[$vararg_buffer31>>2] = $120; + (_sqlite3_snprintf($116,$117,41024,$vararg_buffer31)|0); + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + break; + } + case -18: { + $189 = HEAP32[$2>>2]|0; + $190 = HEAP32[$1>>2]|0; + (_sqlite3_snprintf($189,$190,41072,$vararg_buffer31)|0); + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + break; + } + case -6: { + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 16|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$pKeyInfo>>2] = $10; + $11 = HEAP32[$2>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = HEAP32[$pKeyInfo>>2]|0; + $14 = (($13) + 6|0); + $15 = HEAP16[$14>>1]|0; + $16 = $15&65535; + HEAP32[$vararg_buffer31>>2] = $16; + (_sqlite3_snprintf($11,$12,40976,$vararg_buffer31)|0); + $17 = HEAP32[$1>>2]|0; + $18 = (_sqlite3Strlen30($17)|0); + HEAP32[$i>>2] = $18; + HEAP32[$j>>2] = 0; + while(1) { + $19 = HEAP32[$j>>2]|0; + $20 = HEAP32[$pKeyInfo>>2]|0; + $21 = (($20) + 6|0); + $22 = HEAP16[$21>>1]|0; + $23 = $22&65535; + $24 = ($19|0)<($23|0); + if (!($24)) { + break; + } + $25 = HEAP32[$j>>2]|0; + $26 = HEAP32[$pKeyInfo>>2]|0; + $27 = (($26) + 20|0); + $28 = (($27) + ($25<<2)|0); + $29 = HEAP32[$28>>2]|0; + HEAP32[$pColl>>2] = $29; + $30 = HEAP32[$pColl>>2]|0; + $31 = ($30|0)!=(0|0); + if ($31) { + $32 = HEAP32[$pColl>>2]|0; + $33 = HEAP32[$32>>2]|0; + $34 = $33; + } else { + $34 = 40984; + } + HEAP32[$zColl>>2] = $34; + $35 = HEAP32[$zColl>>2]|0; + $36 = (_sqlite3Strlen30($35)|0); + HEAP32[$n>>2] = $36; + $37 = HEAP32[$n>>2]|0; + $38 = ($37|0)==(6); + if ($38) { + $39 = HEAP32[$zColl>>2]|0; + $40 = (_memcmp($39,3640,6)|0); + $41 = ($40|0)==(0); + if ($41) { + HEAP32[$zColl>>2] = 40992; + HEAP32[$n>>2] = 1; + } + } + $42 = HEAP32[$i>>2]|0; + $43 = HEAP32[$n>>2]|0; + $44 = (($42) + ($43))|0; + $45 = HEAP32[$2>>2]|0; + $46 = (($45) - 6)|0; + $47 = ($44|0)>($46|0); + $48 = HEAP32[$i>>2]|0; + if ($47) { + label = 10; + break; + } + $51 = (($48) + 1)|0; + HEAP32[$i>>2] = $51; + $52 = HEAP32[$1>>2]|0; + $53 = (($52) + ($48)|0); + HEAP8[$53>>0] = 44; + $54 = HEAP32[$j>>2]|0; + $55 = HEAP32[$pKeyInfo>>2]|0; + $56 = (($55) + 16|0); + $57 = HEAP32[$56>>2]|0; + $58 = (($57) + ($54)|0); + $59 = HEAP8[$58>>0]|0; + $60 = ($59<<24>>24)!=(0); + if ($60) { + $61 = HEAP32[$i>>2]|0; + $62 = (($61) + 1)|0; + HEAP32[$i>>2] = $62; + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + ($61)|0); + HEAP8[$64>>0] = 45; + } + $65 = HEAP32[$i>>2]|0; + $66 = HEAP32[$1>>2]|0; + $67 = (($66) + ($65)|0); + $68 = HEAP32[$zColl>>2]|0; + $69 = HEAP32[$n>>2]|0; + $70 = (($69) + 1)|0; + _memcpy(($67|0),($68|0),($70|0))|0; + $71 = HEAP32[$n>>2]|0; + $72 = HEAP32[$i>>2]|0; + $73 = (($72) + ($71))|0; + HEAP32[$i>>2] = $73; + $74 = HEAP32[$j>>2]|0; + $75 = (($74) + 1)|0; + HEAP32[$j>>2] = $75; + } + if ((label|0) == 10) { + $49 = HEAP32[$1>>2]|0; + $50 = (($49) + ($48)|0); + ;HEAP8[$50+0>>0]=HEAP8[41000+0>>0]|0;HEAP8[$50+1>>0]=HEAP8[41000+1>>0]|0;HEAP8[$50+2>>0]=HEAP8[41000+2>>0]|0;HEAP8[$50+3>>0]=HEAP8[41000+3>>0]|0; + } + $76 = HEAP32[$i>>2]|0; + $77 = (($76) + 1)|0; + HEAP32[$i>>2] = $77; + $78 = HEAP32[$1>>2]|0; + $79 = (($78) + ($76)|0); + HEAP8[$79>>0] = 41; + $80 = HEAP32[$i>>2]|0; + $81 = HEAP32[$1>>2]|0; + $82 = (($81) + ($80)|0); + HEAP8[$82>>0] = 0; + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + break; + } + case -8: { + $127 = HEAP32[$0>>2]|0; + $128 = (($127) + 16|0); + $129 = HEAP32[$128>>2]|0; + HEAP32[$pMem>>2] = $129; + $130 = HEAP32[$pMem>>2]|0; + $131 = (($130) + 28|0); + $132 = HEAP16[$131>>1]|0; + $133 = $132&65535; + $134 = $133 & 2; + $135 = ($134|0)!=(0); + $136 = HEAP32[$pMem>>2]|0; + if ($135) { + $137 = (($136) + 4|0); + $138 = HEAP32[$137>>2]|0; + HEAP32[$zP4>>2] = $138; + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + } + $139 = (($136) + 28|0); + $140 = HEAP16[$139>>1]|0; + $141 = $140&65535; + $142 = $141 & 4; + $143 = ($142|0)!=(0); + if ($143) { + $144 = HEAP32[$2>>2]|0; + $145 = HEAP32[$1>>2]|0; + $146 = HEAP32[$pMem>>2]|0; + $147 = (($146) + 16|0); + $148 = $147; + $149 = $148; + $150 = HEAP32[$149>>2]|0; + $151 = (($148) + 4)|0; + $152 = $151; + $153 = HEAP32[$152>>2]|0; + $154 = $vararg_buffer31; + $155 = $154; + HEAP32[$155>>2] = $150; + $156 = (($154) + 4)|0; + $157 = $156; + HEAP32[$157>>2] = $153; + (_sqlite3_snprintf($144,$145,15992,$vararg_buffer31)|0); + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + } + $158 = HEAP32[$pMem>>2]|0; + $159 = (($158) + 28|0); + $160 = HEAP16[$159>>1]|0; + $161 = $160&65535; + $162 = $161 & 8; + $163 = ($162|0)!=(0); + if ($163) { + $164 = HEAP32[$2>>2]|0; + $165 = HEAP32[$1>>2]|0; + $166 = HEAP32[$pMem>>2]|0; + $167 = (($166) + 8|0); + $168 = +HEAPF64[$167>>3]; + HEAPF64[tempDoublePtr>>3]=$168;HEAP32[$vararg_buffer31>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_buffer31+4>>2]=HEAP32[tempDoublePtr+4>>2]; + (_sqlite3_snprintf($164,$165,15984,$vararg_buffer31)|0); + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + } + $169 = HEAP32[$pMem>>2]|0; + $170 = (($169) + 28|0); + $171 = HEAP16[$170>>1]|0; + $172 = $171&65535; + $173 = $172 & 1; + $174 = ($173|0)!=(0); + if ($174) { + $175 = HEAP32[$2>>2]|0; + $176 = HEAP32[$1>>2]|0; + (_sqlite3_snprintf($175,$176,16376,$vararg_buffer31)|0); + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + } else { + HEAP32[$zP4>>2] = 41032; + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + } + break; + } + case -4: { + $83 = HEAP32[$0>>2]|0; + $84 = (($83) + 16|0); + $85 = HEAP32[$84>>2]|0; + HEAP32[$pColl1>>2] = $85; + $86 = HEAP32[$2>>2]|0; + $87 = HEAP32[$1>>2]|0; + $88 = HEAP32[$pColl1>>2]|0; + $89 = HEAP32[$88>>2]|0; + HEAP32[$vararg_buffer31>>2] = $89; + (_sqlite3_snprintf($86,$87,41008,$vararg_buffer31)|0); + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + break; + } + case -19: { + $191 = HEAP32[$1>>2]|0; + HEAP8[$191>>0] = 0; + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + break; + } + case -15: { + $187 = HEAP32[$2>>2]|0; + $188 = HEAP32[$1>>2]|0; + (_sqlite3_snprintf($187,$188,41056,$vararg_buffer31)|0); + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + break; + } + case -12: { + $121 = HEAP32[$2>>2]|0; + $122 = HEAP32[$1>>2]|0; + $123 = HEAP32[$0>>2]|0; + $124 = (($123) + 16|0); + $125 = HEAP32[$124>>2]|0; + $126 = +HEAPF64[$125>>3]; + HEAPF64[tempDoublePtr>>3]=$126;HEAP32[$vararg_buffer31>>2]=HEAP32[tempDoublePtr>>2];HEAP32[$vararg_buffer31+4>>2]=HEAP32[tempDoublePtr+4>>2]; + (_sqlite3_snprintf($121,$122,15984,$vararg_buffer31)|0); + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + break; + } + case -5: { + $90 = HEAP32[$0>>2]|0; + $91 = (($90) + 16|0); + $92 = HEAP32[$91>>2]|0; + HEAP32[$pDef>>2] = $92; + $93 = HEAP32[$2>>2]|0; + $94 = HEAP32[$1>>2]|0; + $95 = HEAP32[$pDef>>2]|0; + $96 = (($95) + 24|0); + $97 = HEAP32[$96>>2]|0; + $98 = HEAP32[$pDef>>2]|0; + $99 = HEAP16[$98>>1]|0; + $100 = $99 << 16 >> 16; + HEAP32[$vararg_buffer31>>2] = $97; + $vararg_ptr7 = (($vararg_buffer31) + 4|0); + HEAP32[$vararg_ptr7>>2] = $100; + (_sqlite3_snprintf($93,$94,41016,$vararg_buffer31)|0); + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + break; + } + default: { + $192 = HEAP32[$0>>2]|0; + $193 = (($192) + 16|0); + $194 = HEAP32[$193>>2]|0; + HEAP32[$zP4>>2] = $194; + $195 = HEAP32[$zP4>>2]|0; + $196 = ($195|0)==(0|0); + if (!($196)) { + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + } + $197 = HEAP32[$1>>2]|0; + HEAP32[$zP4>>2] = $197; + $198 = HEAP32[$1>>2]|0; + HEAP8[$198>>0] = 0; + $199 = HEAP32[$zP4>>2]|0; + STACKTOP = sp;return ($199|0); + } + } + } while(0); + return 0|0; +} +function _sqlite3VdbeMemHandleBom($pMem) { + $pMem = $pMem|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $8 = 0, $9 = 0, $b1 = 0, $b2 = 0, $bom = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $rc = sp; + $bom = sp + 10|0; + $b1 = sp + 8|0; + $b2 = sp + 9|0; + HEAP32[$0>>2] = $pMem; + HEAP32[$rc>>2] = 0; + HEAP8[$bom>>0] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 24|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)>(1); + if ($4) { + $5 = HEAP32[$0>>2]|0; + $6 = (($5) + 4|0); + $7 = HEAP32[$6>>2]|0; + $8 = HEAP8[$7>>0]|0; + HEAP8[$b1>>0] = $8; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 4|0); + $11 = HEAP32[$10>>2]|0; + $12 = (($11) + 1|0); + $13 = HEAP8[$12>>0]|0; + HEAP8[$b2>>0] = $13; + $14 = HEAP8[$b1>>0]|0; + $15 = $14&255; + $16 = ($15|0)==(254); + if ($16) { + $17 = HEAP8[$b2>>0]|0; + $18 = $17&255; + $19 = ($18|0)==(255); + if ($19) { + HEAP8[$bom>>0] = 3; + } + } + $20 = HEAP8[$b1>>0]|0; + $21 = $20&255; + $22 = ($21|0)==(255); + if ($22) { + $23 = HEAP8[$b2>>0]|0; + $24 = $23&255; + $25 = ($24|0)==(254); + if ($25) { + HEAP8[$bom>>0] = 2; + } + } + } + $26 = HEAP8[$bom>>0]|0; + $27 = ($26<<24>>24)!=(0); + if (!($27)) { + $70 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($70|0); + } + $28 = HEAP32[$0>>2]|0; + $29 = (_sqlite3VdbeMemMakeWriteable($28)|0); + HEAP32[$rc>>2] = $29; + $30 = HEAP32[$rc>>2]|0; + $31 = ($30|0)==(0); + if (!($31)) { + $70 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($70|0); + } + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 24|0); + $34 = HEAP32[$33>>2]|0; + $35 = (($34) - 2)|0; + HEAP32[$33>>2] = $35; + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + 4|0); + $38 = HEAP32[$37>>2]|0; + $39 = HEAP32[$0>>2]|0; + $40 = (($39) + 4|0); + $41 = HEAP32[$40>>2]|0; + $42 = (($41) + 2|0); + $43 = HEAP32[$0>>2]|0; + $44 = (($43) + 24|0); + $45 = HEAP32[$44>>2]|0; + _memmove(($38|0),($42|0),($45|0))|0; + $46 = HEAP32[$0>>2]|0; + $47 = (($46) + 24|0); + $48 = HEAP32[$47>>2]|0; + $49 = HEAP32[$0>>2]|0; + $50 = (($49) + 4|0); + $51 = HEAP32[$50>>2]|0; + $52 = (($51) + ($48)|0); + HEAP8[$52>>0] = 0; + $53 = HEAP32[$0>>2]|0; + $54 = (($53) + 24|0); + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + 1)|0; + $57 = HEAP32[$0>>2]|0; + $58 = (($57) + 4|0); + $59 = HEAP32[$58>>2]|0; + $60 = (($59) + ($56)|0); + HEAP8[$60>>0] = 0; + $61 = HEAP32[$0>>2]|0; + $62 = (($61) + 28|0); + $63 = HEAP16[$62>>1]|0; + $64 = $63&65535; + $65 = $64 | 512; + $66 = $65&65535; + HEAP16[$62>>1] = $66; + $67 = HEAP8[$bom>>0]|0; + $68 = HEAP32[$0>>2]|0; + $69 = (($68) + 30|0); + HEAP8[$69>>0] = $67; + $70 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($70|0); +} +function _Cleanup($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $db = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = HEAP32[$1>>2]|0; + HEAP32[$db>>2] = $2; + $3 = HEAP32[$db>>2]|0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 44|0); + $6 = HEAP32[$5>>2]|0; + _sqlite3DbFree($3,$6); + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 44|0); + HEAP32[$8>>2] = 0; + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 20|0); + HEAP32[$10>>2] = 0; + STACKTOP = sp;return; +} +function _vdbeFreeOpArray($db,$aOp,$nOp) { + $db = $db|0; + $aOp = $aOp|0; + $nOp = $nOp|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $pOp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $pOp = sp + 8|0; + HEAP32[$0>>2] = $db; + HEAP32[$1>>2] = $aOp; + HEAP32[$2>>2] = $nOp; + $3 = HEAP32[$1>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$1>>2]|0; + _sqlite3DbFree($21,$22); + STACKTOP = sp;return; + } + $5 = HEAP32[$1>>2]|0; + HEAP32[$pOp>>2] = $5; + while(1) { + $6 = HEAP32[$pOp>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + (($7*20)|0)|0); + $10 = ($6>>>0)<($9>>>0); + if (!($10)) { + break; + } + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$pOp>>2]|0; + $13 = (($12) + 1|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14 << 24 >> 24; + $16 = HEAP32[$pOp>>2]|0; + $17 = (($16) + 16|0); + $18 = HEAP32[$17>>2]|0; + _freeP4($11,$15,$18); + $19 = HEAP32[$pOp>>2]|0; + $20 = (($19) + 20|0); + HEAP32[$pOp>>2] = $20; + } + $21 = HEAP32[$0>>2]|0; + $22 = HEAP32[$1>>2]|0; + _sqlite3DbFree($21,$22); + STACKTOP = sp;return; +} +function _btreeClearHasContent($pBt) { + $pBt = $pBt|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $pBt; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 60|0); + $3 = HEAP32[$2>>2]|0; + _sqlite3BitvecDestroy($3); + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 60|0); + HEAP32[$5>>2] = 0; + STACKTOP = sp;return; +} +function _btreeEndTransaction($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $db = 0; + var $pBt = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $pBt = sp; + $db = sp + 4|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pBt>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = HEAP32[$4>>2]|0; + HEAP32[$db>>2] = $5; + $6 = HEAP32[$pBt>>2]|0; + $7 = (($6) + 19|0); + HEAP8[$7>>0] = 0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 8|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = ($11|0)>(0); + if ($12) { + $13 = HEAP32[$db>>2]|0; + $14 = (($13) + 144|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)>(1); + if ($16) { + $17 = HEAP32[$0>>2]|0; + _downgradeAllSharedCacheTableLocks($17); + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 8|0); + HEAP8[$19>>0] = 1; + STACKTOP = sp;return; + } + } + $20 = HEAP32[$0>>2]|0; + $21 = (($20) + 8|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = ($23|0)!=(0); + if ($24) { + $25 = HEAP32[$0>>2]|0; + _clearAllSharedCacheTableLocks($25); + $26 = HEAP32[$pBt>>2]|0; + $27 = (($26) + 40|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + -1)|0; + HEAP32[$27>>2] = $29; + $30 = HEAP32[$pBt>>2]|0; + $31 = (($30) + 40|0); + $32 = HEAP32[$31>>2]|0; + $33 = (0)==($32|0); + if ($33) { + $34 = HEAP32[$pBt>>2]|0; + $35 = (($34) + 20|0); + HEAP8[$35>>0] = 0; + } + } + $36 = HEAP32[$0>>2]|0; + $37 = (($36) + 8|0); + HEAP8[$37>>0] = 0; + $38 = HEAP32[$pBt>>2]|0; + _unlockBtreeIfUnused($38); + STACKTOP = sp;return; +} +function _downgradeAllSharedCacheTableLocks($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $pLock = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $pBt = sp; + $pLock = sp + 4|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pBt>>2] = $3; + $4 = HEAP32[$pBt>>2]|0; + $5 = (($4) + 76|0); + $6 = HEAP32[$5>>2]|0; + $7 = HEAP32[$0>>2]|0; + $8 = ($6|0)==($7|0); + if (!($8)) { + STACKTOP = sp;return; + } + $9 = HEAP32[$pBt>>2]|0; + $10 = (($9) + 76|0); + HEAP32[$10>>2] = 0; + $11 = HEAP32[$pBt>>2]|0; + $12 = (($11) + 22|0); + $13 = HEAP16[$12>>1]|0; + $14 = $13&65535; + $15 = $14 & -97; + $16 = $15&65535; + HEAP16[$12>>1] = $16; + $17 = HEAP32[$pBt>>2]|0; + $18 = (($17) + 72|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$pLock>>2] = $19; + while(1) { + $20 = HEAP32[$pLock>>2]|0; + $21 = ($20|0)!=(0|0); + if (!($21)) { + break; + } + $22 = HEAP32[$pLock>>2]|0; + $23 = (($22) + 8|0); + HEAP8[$23>>0] = 1; + $24 = HEAP32[$pLock>>2]|0; + $25 = (($24) + 12|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$pLock>>2] = $26; + } + STACKTOP = sp;return; +} +function _clearAllSharedCacheTableLocks($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pBt = 0, $pLock = 0, $ppIter = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $pBt = sp; + $ppIter = sp + 4|0; + $pLock = sp + 8|0; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 4|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pBt>>2] = $3; + $4 = HEAP32[$pBt>>2]|0; + $5 = (($4) + 72|0); + HEAP32[$ppIter>>2] = $5; + while(1) { + $6 = HEAP32[$ppIter>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + break; + } + $9 = HEAP32[$ppIter>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$pLock>>2] = $10; + $11 = HEAP32[$pLock>>2]|0; + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$0>>2]|0; + $14 = ($12|0)==($13|0); + $15 = HEAP32[$pLock>>2]|0; + $16 = (($15) + 12|0); + if (!($14)) { + HEAP32[$ppIter>>2] = $16; + continue; + } + $17 = HEAP32[$16>>2]|0; + $18 = HEAP32[$ppIter>>2]|0; + HEAP32[$18>>2] = $17; + $19 = HEAP32[$pLock>>2]|0; + $20 = (($19) + 4|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)!=(1); + if (!($22)) { + continue; + } + $23 = HEAP32[$pLock>>2]|0; + _sqlite3_free($23); + } + $24 = HEAP32[$pBt>>2]|0; + $25 = (($24) + 76|0); + $26 = HEAP32[$25>>2]|0; + $27 = HEAP32[$0>>2]|0; + $28 = ($26|0)==($27|0); + $29 = HEAP32[$pBt>>2]|0; + if ($28) { + $30 = (($29) + 76|0); + HEAP32[$30>>2] = 0; + $31 = HEAP32[$pBt>>2]|0; + $32 = (($31) + 22|0); + $33 = HEAP16[$32>>1]|0; + $34 = $33&65535; + $35 = $34 & -97; + $36 = $35&65535; + HEAP16[$32>>1] = $36; + STACKTOP = sp;return; + } + $37 = (($29) + 40|0); + $38 = HEAP32[$37>>2]|0; + $39 = ($38|0)==(2); + if (!($39)) { + STACKTOP = sp;return; + } + $40 = HEAP32[$pBt>>2]|0; + $41 = (($40) + 22|0); + $42 = HEAP16[$41>>1]|0; + $43 = $42&65535; + $44 = $43 & -65; + $45 = $44&65535; + HEAP16[$41>>1] = $45; + STACKTOP = sp;return; +} +function _autoVacuumCommit($pBt) { + $pBt = $pBt|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $iFree = 0, $nFin = 0; + var $nFree = 0, $nOrig = 0, $or$cond = 0, $pPager = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $rc = sp + 4|0; + $pPager = sp + 8|0; + $nFin = sp + 12|0; + $nFree = sp + 16|0; + $iFree = sp + 20|0; + $nOrig = sp + 24|0; + HEAP32[$1>>2] = $pBt; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$pPager>>2] = $3; + $4 = HEAP32[$1>>2]|0; + _invalidateAllOverflowCache($4); + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 18|0); + $7 = HEAP8[$6>>0]|0; + $8 = ($7<<24>>24)!=(0); + do { + if (!($8)) { + $9 = HEAP32[$1>>2]|0; + $10 = (_btreePagecount($9)|0); + HEAP32[$nOrig>>2] = $10; + $11 = HEAP32[$1>>2]|0; + $12 = HEAP32[$nOrig>>2]|0; + $13 = (_ptrmapPageno($11,$12)|0); + $14 = HEAP32[$nOrig>>2]|0; + $15 = ($13|0)==($14|0); + if (!($15)) { + $16 = HEAP32[$nOrig>>2]|0; + $17 = HEAP32[1472>>2]|0; + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 32|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($17>>>0) / ($20>>>0))&-1; + $22 = (($21) + 1)|0; + $23 = ($16|0)==($22|0); + if (!($23)) { + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 12|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + 56|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + 36|0); + $31 = (_sqlite3Get4byte($30)|0); + HEAP32[$nFree>>2] = $31; + $32 = HEAP32[$1>>2]|0; + $33 = HEAP32[$nOrig>>2]|0; + $34 = HEAP32[$nFree>>2]|0; + $35 = (_finalDbSize($32,$33,$34)|0); + HEAP32[$nFin>>2] = $35; + $36 = HEAP32[$nFin>>2]|0; + $37 = HEAP32[$nOrig>>2]|0; + $38 = ($36>>>0)>($37>>>0); + if ($38) { + $39 = (_sqlite3CorruptError(54371)|0); + HEAP32[$0>>2] = $39; + $97 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($97|0); + } + $40 = HEAP32[$nFin>>2]|0; + $41 = HEAP32[$nOrig>>2]|0; + $42 = ($40>>>0)<($41>>>0); + if ($42) { + $43 = HEAP32[$1>>2]|0; + $44 = (_saveAllCursors($43,0,0)|0); + HEAP32[$rc>>2] = $44; + } + $45 = HEAP32[$nOrig>>2]|0; + HEAP32[$iFree>>2] = $45; + while(1) { + $46 = HEAP32[$iFree>>2]|0; + $47 = HEAP32[$nFin>>2]|0; + $48 = ($46>>>0)>($47>>>0); + if (!($48)) { + break; + } + $49 = HEAP32[$rc>>2]|0; + $50 = ($49|0)==(0); + if (!($50)) { + break; + } + $51 = HEAP32[$1>>2]|0; + $52 = HEAP32[$nFin>>2]|0; + $53 = HEAP32[$iFree>>2]|0; + $54 = (_incrVacuumStep($51,$52,$53,1)|0); + HEAP32[$rc>>2] = $54; + $55 = HEAP32[$iFree>>2]|0; + $56 = (($55) + -1)|0; + HEAP32[$iFree>>2] = $56; + } + $57 = HEAP32[$rc>>2]|0; + $58 = ($57|0)==(101); + $59 = HEAP32[$rc>>2]|0; + $60 = ($59|0)==(0); + $or$cond = $58 | $60; + if ($or$cond) { + $61 = HEAP32[$nFree>>2]|0; + $62 = ($61>>>0)>(0); + if ($62) { + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + 12|0); + $65 = HEAP32[$64>>2]|0; + $66 = (($65) + 68|0); + $67 = HEAP32[$66>>2]|0; + $68 = (_sqlite3PagerWrite($67)|0); + HEAP32[$rc>>2] = $68; + $69 = HEAP32[$1>>2]|0; + $70 = (($69) + 12|0); + $71 = HEAP32[$70>>2]|0; + $72 = (($71) + 56|0); + $73 = HEAP32[$72>>2]|0; + $74 = (($73) + 32|0); + _sqlite3Put4byte($74,0); + $75 = HEAP32[$1>>2]|0; + $76 = (($75) + 12|0); + $77 = HEAP32[$76>>2]|0; + $78 = (($77) + 56|0); + $79 = HEAP32[$78>>2]|0; + $80 = (($79) + 36|0); + _sqlite3Put4byte($80,0); + $81 = HEAP32[$1>>2]|0; + $82 = (($81) + 12|0); + $83 = HEAP32[$82>>2]|0; + $84 = (($83) + 56|0); + $85 = HEAP32[$84>>2]|0; + $86 = (($85) + 28|0); + $87 = HEAP32[$nFin>>2]|0; + _sqlite3Put4byte($86,$87); + $88 = HEAP32[$1>>2]|0; + $89 = (($88) + 19|0); + HEAP8[$89>>0] = 1; + $90 = HEAP32[$nFin>>2]|0; + $91 = HEAP32[$1>>2]|0; + $92 = (($91) + 44|0); + HEAP32[$92>>2] = $90; + } + } + $93 = HEAP32[$rc>>2]|0; + $94 = ($93|0)!=(0); + if (!($94)) { + break; + } + $95 = HEAP32[$pPager>>2]|0; + (_sqlite3PagerRollback($95)|0); + break; + } + } + $24 = (_sqlite3CorruptError(54366)|0); + HEAP32[$0>>2] = $24; + $97 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($97|0); + } + } while(0); + $96 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $96; + $97 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($97|0); +} +function _sqlite3PagerCommitPhaseTwo($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 40|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)!=(0); + $6 = HEAP32[$1>>2]|0; + if ($5) { + $7 = (($6) + 40|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$0>>2] = $8; + $34 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($34|0); + } + $9 = (($6) + 16|0); + $10 = HEAP8[$9>>0]|0; + $11 = $10&255; + $12 = ($11|0)==(2); + if ($12) { + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = ($16|0)!=(0); + if ($17) { + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 5|0); + $20 = HEAP8[$19>>0]|0; + $21 = $20&255; + $22 = ($21|0)==(1); + if ($22) { + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 16|0); + HEAP8[$24>>0] = 1; + HEAP32[$0>>2] = 0; + $34 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($34|0); + } + } + } + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$1>>2]|0; + $27 = (($26) + 19|0); + $28 = HEAP8[$27>>0]|0; + $29 = $28&255; + $30 = (_pager_end_transaction($25,$29,1)|0); + HEAP32[$rc>>2] = $30; + $31 = HEAP32[$1>>2]|0; + $32 = HEAP32[$rc>>2]|0; + $33 = (_pager_error($31,$32)|0); + HEAP32[$0>>2] = $33; + $34 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($34|0); +} +function _pager_incr_changecounter($pPager,$isDirectMode) { + $pPager = $pPager|0; + $isDirectMode = $isDirectMode|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $pPgHdr = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $rc = sp + 4|0; + $pPgHdr = sp + 8|0; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $isDirectMode; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 18|0); + $4 = HEAP8[$3>>0]|0; + $5 = ($4<<24>>24)!=(0); + if ($5) { + $22 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($22|0); + } + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 24|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8>>>0)>(0); + if (!($9)) { + $22 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($22|0); + } + $10 = HEAP32[$0>>2]|0; + $11 = (_sqlite3PagerAcquire($10,1,$pPgHdr,0)|0); + HEAP32[$rc>>2] = $11; + $12 = HEAP32[$rc>>2]|0; + $13 = ($12|0)==(0); + if ($13) { + $14 = HEAP32[$pPgHdr>>2]|0; + $15 = (_sqlite3PagerWrite($14)|0); + HEAP32[$rc>>2] = $15; + } + $16 = HEAP32[$rc>>2]|0; + $17 = ($16|0)==(0); + if ($17) { + $18 = HEAP32[$pPgHdr>>2]|0; + _pager_write_changecounter($18); + $19 = HEAP32[$0>>2]|0; + $20 = (($19) + 18|0); + HEAP8[$20>>0] = 1; + } + $21 = HEAP32[$pPgHdr>>2]|0; + _sqlite3PagerUnref($21); + $22 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($22|0); +} +function _writeMasterJournal($pPager,$zMaster) { + $pPager = $pPager|0; + $zMaster = $zMaster|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $21 = 0; + var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $cksum = 0, $iHdrOff = 0, $jrnlSize = 0, $nMaster = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 36|0; + $1 = sp + 28|0; + $2 = sp + 24|0; + $rc = sp + 16|0; + $nMaster = sp + 20|0; + $iHdrOff = sp; + $jrnlSize = sp + 8|0; + $cksum = sp + 32|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$2>>2] = $zMaster; + HEAP32[$cksum>>2] = 0; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if ($4) { + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 5|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = ($8|0)==(4); + if (!($9)) { + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 64|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$12>>2]|0; + $14 = ($13|0)!=(0|0); + if ($14) { + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 19|0); + HEAP8[$16>>0] = 1; + HEAP32[$nMaster>>2] = 0; + while(1) { + $17 = HEAP32[$nMaster>>2]|0; + $18 = HEAP32[$2>>2]|0; + $19 = (($18) + ($17)|0); + $20 = HEAP8[$19>>0]|0; + $21 = ($20<<24>>24)!=(0); + if (!($21)) { + break; + } + $22 = HEAP32[$nMaster>>2]|0; + $23 = HEAP32[$2>>2]|0; + $24 = (($23) + ($22)|0); + $25 = HEAP8[$24>>0]|0; + $26 = $25 << 24 >> 24; + $27 = HEAP32[$cksum>>2]|0; + $28 = (($27) + ($26))|0; + HEAP32[$cksum>>2] = $28; + $29 = HEAP32[$nMaster>>2]|0; + $30 = (($29) + 1)|0; + HEAP32[$nMaster>>2] = $30; + } + $31 = HEAP32[$1>>2]|0; + $32 = (($31) + 8|0); + $33 = HEAP8[$32>>0]|0; + $34 = ($33<<24>>24)!=(0); + if ($34) { + $35 = HEAP32[$1>>2]|0; + $36 = (_journalHdrOffset($35)|0); + $37 = tempRet0; + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 72|0); + $40 = $39; + $41 = $40; + HEAP32[$41>>2] = $36; + $42 = (($40) + 4)|0; + $43 = $42; + HEAP32[$43>>2] = $37; + } + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 72|0); + $46 = $45; + $47 = $46; + $48 = HEAP32[$47>>2]|0; + $49 = (($46) + 4)|0; + $50 = $49; + $51 = HEAP32[$50>>2]|0; + $52 = $iHdrOff; + $53 = $52; + HEAP32[$53>>2] = $48; + $54 = (($52) + 4)|0; + $55 = $54; + HEAP32[$55>>2] = $51; + $56 = HEAP32[$1>>2]|0; + $57 = (($56) + 64|0); + $58 = HEAP32[$57>>2]|0; + $59 = $iHdrOff; + $60 = $59; + $61 = HEAP32[$60>>2]|0; + $62 = (($59) + 4)|0; + $63 = $62; + $64 = HEAP32[$63>>2]|0; + $65 = HEAP32[1472>>2]|0; + $66 = HEAP32[$1>>2]|0; + $67 = (($66) + 152|0); + $68 = HEAP32[$67>>2]|0; + $69 = (($65|0) / ($68|0))&-1; + $70 = (($69) + 1)|0; + $71 = (_write32bits($58,$61,$64,$70)|0); + HEAP32[$rc>>2] = $71; + $72 = (0)!=($71|0); + if (!($72)) { + $73 = HEAP32[$1>>2]|0; + $74 = (($73) + 64|0); + $75 = HEAP32[$74>>2]|0; + $76 = HEAP32[$2>>2]|0; + $77 = HEAP32[$nMaster>>2]|0; + $78 = $iHdrOff; + $79 = $78; + $80 = HEAP32[$79>>2]|0; + $81 = (($78) + 4)|0; + $82 = $81; + $83 = HEAP32[$82>>2]|0; + $84 = (_i64Add(($80|0),($83|0),4,0)|0); + $85 = tempRet0; + $86 = (_sqlite3OsWrite($75,$76,$77,$84,$85)|0); + HEAP32[$rc>>2] = $86; + $87 = (0)!=($86|0); + if (!($87)) { + $88 = HEAP32[$1>>2]|0; + $89 = (($88) + 64|0); + $90 = HEAP32[$89>>2]|0; + $91 = $iHdrOff; + $92 = $91; + $93 = HEAP32[$92>>2]|0; + $94 = (($91) + 4)|0; + $95 = $94; + $96 = HEAP32[$95>>2]|0; + $97 = (_i64Add(($93|0),($96|0),4,0)|0); + $98 = tempRet0; + $99 = HEAP32[$nMaster>>2]|0; + $100 = ($99|0)<(0); + $101 = $100 << 31 >> 31; + $102 = (_i64Add(($97|0),($98|0),($99|0),($101|0))|0); + $103 = tempRet0; + $104 = HEAP32[$nMaster>>2]|0; + $105 = (_write32bits($90,$102,$103,$104)|0); + HEAP32[$rc>>2] = $105; + $106 = (0)!=($105|0); + if (!($106)) { + $107 = HEAP32[$1>>2]|0; + $108 = (($107) + 64|0); + $109 = HEAP32[$108>>2]|0; + $110 = $iHdrOff; + $111 = $110; + $112 = HEAP32[$111>>2]|0; + $113 = (($110) + 4)|0; + $114 = $113; + $115 = HEAP32[$114>>2]|0; + $116 = (_i64Add(($112|0),($115|0),4,0)|0); + $117 = tempRet0; + $118 = HEAP32[$nMaster>>2]|0; + $119 = ($118|0)<(0); + $120 = $119 << 31 >> 31; + $121 = (_i64Add(($116|0),($117|0),($118|0),($120|0))|0); + $122 = tempRet0; + $123 = (_i64Add(($121|0),($122|0),4,0)|0); + $124 = tempRet0; + $125 = HEAP32[$cksum>>2]|0; + $126 = (_write32bits($109,$123,$124,$125)|0); + HEAP32[$rc>>2] = $126; + $127 = (0)!=($126|0); + if (!($127)) { + $128 = HEAP32[$1>>2]|0; + $129 = (($128) + 64|0); + $130 = HEAP32[$129>>2]|0; + $131 = $iHdrOff; + $132 = $131; + $133 = HEAP32[$132>>2]|0; + $134 = (($131) + 4)|0; + $135 = $134; + $136 = HEAP32[$135>>2]|0; + $137 = (_i64Add(($133|0),($136|0),4,0)|0); + $138 = tempRet0; + $139 = HEAP32[$nMaster>>2]|0; + $140 = ($139|0)<(0); + $141 = $140 << 31 >> 31; + $142 = (_i64Add(($137|0),($138|0),($139|0),($141|0))|0); + $143 = tempRet0; + $144 = (_i64Add(($142|0),($143|0),8,0)|0); + $145 = tempRet0; + $146 = (_sqlite3OsWrite($130,10992,8,$144,$145)|0); + HEAP32[$rc>>2] = $146; + $147 = (0)!=($146|0); + if (!($147)) { + $149 = HEAP32[$nMaster>>2]|0; + $150 = (($149) + 20)|0; + $151 = ($150|0)<(0); + $152 = $151 << 31 >> 31; + $153 = HEAP32[$1>>2]|0; + $154 = (($153) + 72|0); + $155 = $154; + $156 = $155; + $157 = HEAP32[$156>>2]|0; + $158 = (($155) + 4)|0; + $159 = $158; + $160 = HEAP32[$159>>2]|0; + $161 = (_i64Add(($157|0),($160|0),($150|0),($152|0))|0); + $162 = tempRet0; + $163 = $154; + $164 = $163; + HEAP32[$164>>2] = $161; + $165 = (($163) + 4)|0; + $166 = $165; + HEAP32[$166>>2] = $162; + $167 = HEAP32[$1>>2]|0; + $168 = (($167) + 64|0); + $169 = HEAP32[$168>>2]|0; + $170 = (_sqlite3OsFileSize($169,$jrnlSize)|0); + HEAP32[$rc>>2] = $170; + $171 = (0)==($170|0); + if ($171) { + $172 = $jrnlSize; + $173 = $172; + $174 = HEAP32[$173>>2]|0; + $175 = (($172) + 4)|0; + $176 = $175; + $177 = HEAP32[$176>>2]|0; + $178 = HEAP32[$1>>2]|0; + $179 = (($178) + 72|0); + $180 = $179; + $181 = $180; + $182 = HEAP32[$181>>2]|0; + $183 = (($180) + 4)|0; + $184 = $183; + $185 = HEAP32[$184>>2]|0; + $186 = ($177|0)>($185|0); + $187 = ($177|0)==($185|0); + $188 = ($174>>>0)>($182>>>0); + $189 = $187 & $188; + $190 = $186 | $189; + if ($190) { + $191 = HEAP32[$1>>2]|0; + $192 = (($191) + 64|0); + $193 = HEAP32[$192>>2]|0; + $194 = HEAP32[$1>>2]|0; + $195 = (($194) + 72|0); + $196 = $195; + $197 = $196; + $198 = HEAP32[$197>>2]|0; + $199 = (($196) + 4)|0; + $200 = $199; + $201 = HEAP32[$200>>2]|0; + $202 = (_sqlite3OsTruncate($193,$198,$201)|0); + HEAP32[$rc>>2] = $202; + } + } + $203 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $203; + $204 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($204|0); + } + } + } + } + } + $148 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $148; + $204 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($204|0); + } + } + } + HEAP32[$0>>2] = 0; + $204 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($204|0); +} +function _pager_write($pPg) { + $pPg = $pPg|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $cksum = 0, $iOff = 0, $inJournal = 0, $pData2 = 0, $pPager = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 32|0; + $1 = sp + 28|0; + $pPager = sp + 8|0; + $rc = sp + 12|0; + $inJournal = sp + 16|0; + $cksum = sp + 20|0; + $pData2 = sp + 24|0; + $iOff = sp; + HEAP32[$1>>2] = $pPg; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 16|0); + $4 = HEAP32[$3>>2]|0; + HEAP32[$pPager>>2] = $4; + HEAP32[$rc>>2] = 0; + $5 = HEAP32[$pPager>>2]|0; + $6 = (($5) + 16|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = ($8|0)==(2); + if ($9) { + $10 = HEAP32[$pPager>>2]|0; + $11 = (_pager_open_journal($10)|0); + HEAP32[$rc>>2] = $11; + $12 = HEAP32[$rc>>2]|0; + $13 = ($12|0)!=(0); + if ($13) { + $14 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $14; + $201 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($201|0); + } + } + $15 = HEAP32[$1>>2]|0; + _sqlite3PcacheMakeDirty($15); + $16 = HEAP32[$pPager>>2]|0; + $17 = HEAP32[$1>>2]|0; + $18 = (_pageInJournal($16,$17)|0); + HEAP32[$inJournal>>2] = $18; + $19 = HEAP32[$inJournal>>2]|0; + $20 = ($19|0)!=(0); + if ($20) { + $21 = HEAP32[$pPager>>2]|0; + $22 = (($21) + 96|0); + $23 = HEAP32[$22>>2]|0; + $24 = ($23|0)==(0); + if (!($24)) { + $25 = HEAP32[$1>>2]|0; + $26 = (_subjRequiresPage($25)|0); + $27 = ($26|0)!=(0); + if ($27) { + label = 7; + } + } + } else { + label = 7; + } + if ((label|0) == 7) { + $28 = HEAP32[$inJournal>>2]|0; + $29 = ($28|0)!=(0); + do { + if (!($29)) { + $30 = HEAP32[$pPager>>2]|0; + $31 = (_pagerUseWal($30)|0); + $32 = ($31|0)!=(0); + if (!($32)) { + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 20|0); + $35 = HEAP32[$34>>2]|0; + $36 = HEAP32[$pPager>>2]|0; + $37 = (($36) + 28|0); + $38 = HEAP32[$37>>2]|0; + $39 = ($35>>>0)<=($38>>>0); + if ($39) { + $40 = HEAP32[$pPager>>2]|0; + $41 = (($40) + 64|0); + $42 = HEAP32[$41>>2]|0; + $43 = HEAP32[$42>>2]|0; + $44 = ($43|0)!=(0|0); + if ($44) { + $45 = HEAP32[$pPager>>2]|0; + $46 = (($45) + 72|0); + $47 = $46; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = (($47) + 4)|0; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = $iOff; + $54 = $53; + HEAP32[$54>>2] = $49; + $55 = (($53) + 4)|0; + $56 = $55; + HEAP32[$56>>2] = $52; + $57 = HEAP32[$1>>2]|0; + $58 = (($57) + 4|0); + $59 = HEAP32[$58>>2]|0; + HEAP32[$pData2>>2] = $59; + $60 = HEAP32[$pPager>>2]|0; + $61 = HEAP32[$pData2>>2]|0; + $62 = (_pager_cksum($60,$61)|0); + HEAP32[$cksum>>2] = $62; + $63 = HEAP32[$1>>2]|0; + $64 = (($63) + 24|0); + $65 = HEAP16[$64>>1]|0; + $66 = $65&65535; + $67 = $66 | 4; + $68 = $67&65535; + HEAP16[$64>>1] = $68; + $69 = HEAP32[$pPager>>2]|0; + $70 = (($69) + 64|0); + $71 = HEAP32[$70>>2]|0; + $72 = $iOff; + $73 = $72; + $74 = HEAP32[$73>>2]|0; + $75 = (($72) + 4)|0; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = HEAP32[$1>>2]|0; + $79 = (($78) + 20|0); + $80 = HEAP32[$79>>2]|0; + $81 = (_write32bits($71,$74,$77,$80)|0); + HEAP32[$rc>>2] = $81; + $82 = HEAP32[$rc>>2]|0; + $83 = ($82|0)!=(0); + if ($83) { + $84 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $84; + $201 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($201|0); + } + $85 = HEAP32[$pPager>>2]|0; + $86 = (($85) + 64|0); + $87 = HEAP32[$86>>2]|0; + $88 = HEAP32[$pData2>>2]|0; + $89 = HEAP32[$pPager>>2]|0; + $90 = (($89) + 152|0); + $91 = HEAP32[$90>>2]|0; + $92 = $iOff; + $93 = $92; + $94 = HEAP32[$93>>2]|0; + $95 = (($92) + 4)|0; + $96 = $95; + $97 = HEAP32[$96>>2]|0; + $98 = (_i64Add(($94|0),($97|0),4,0)|0); + $99 = tempRet0; + $100 = (_sqlite3OsWrite($87,$88,$91,$98,$99)|0); + HEAP32[$rc>>2] = $100; + $101 = HEAP32[$rc>>2]|0; + $102 = ($101|0)!=(0); + if ($102) { + $103 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $103; + $201 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($201|0); + } + $104 = HEAP32[$pPager>>2]|0; + $105 = (($104) + 64|0); + $106 = HEAP32[$105>>2]|0; + $107 = $iOff; + $108 = $107; + $109 = HEAP32[$108>>2]|0; + $110 = (($107) + 4)|0; + $111 = $110; + $112 = HEAP32[$111>>2]|0; + $113 = HEAP32[$pPager>>2]|0; + $114 = (($113) + 152|0); + $115 = HEAP32[$114>>2]|0; + $116 = ($115|0)<(0); + $117 = $116 << 31 >> 31; + $118 = (_i64Add(($109|0),($112|0),($115|0),($117|0))|0); + $119 = tempRet0; + $120 = (_i64Add(($118|0),($119|0),4,0)|0); + $121 = tempRet0; + $122 = HEAP32[$cksum>>2]|0; + $123 = (_write32bits($106,$120,$121,$122)|0); + HEAP32[$rc>>2] = $123; + $124 = HEAP32[$rc>>2]|0; + $125 = ($124|0)!=(0); + if ($125) { + $126 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $126; + $201 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($201|0); + } + $127 = HEAP32[$pPager>>2]|0; + $128 = (($127) + 152|0); + $129 = HEAP32[$128>>2]|0; + $130 = (8 + ($129))|0; + $131 = ($130|0)<(0); + $132 = $131 << 31 >> 31; + $133 = HEAP32[$pPager>>2]|0; + $134 = (($133) + 72|0); + $135 = $134; + $136 = $135; + $137 = HEAP32[$136>>2]|0; + $138 = (($135) + 4)|0; + $139 = $138; + $140 = HEAP32[$139>>2]|0; + $141 = (_i64Add(($137|0),($140|0),($130|0),($132|0))|0); + $142 = tempRet0; + $143 = $134; + $144 = $143; + HEAP32[$144>>2] = $141; + $145 = (($143) + 4)|0; + $146 = $145; + HEAP32[$146>>2] = $142; + $147 = HEAP32[$pPager>>2]|0; + $148 = (($147) + 44|0); + $149 = HEAP32[$148>>2]|0; + $150 = (($149) + 1)|0; + HEAP32[$148>>2] = $150; + $151 = HEAP32[$pPager>>2]|0; + $152 = (($151) + 56|0); + $153 = HEAP32[$152>>2]|0; + $154 = HEAP32[$1>>2]|0; + $155 = (($154) + 20|0); + $156 = HEAP32[$155>>2]|0; + $157 = (_sqlite3BitvecSet($153,$156)|0); + HEAP32[$rc>>2] = $157; + $158 = HEAP32[$pPager>>2]|0; + $159 = HEAP32[$1>>2]|0; + $160 = (($159) + 20|0); + $161 = HEAP32[$160>>2]|0; + $162 = (_addToSavepointBitvecs($158,$161)|0); + $163 = HEAP32[$rc>>2]|0; + $164 = $163 | $162; + HEAP32[$rc>>2] = $164; + $165 = HEAP32[$rc>>2]|0; + $166 = ($165|0)!=(0); + if (!($166)) { + break; + } + $167 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $167; + $201 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($201|0); + } + } + $168 = HEAP32[$pPager>>2]|0; + $169 = (($168) + 16|0); + $170 = HEAP8[$169>>0]|0; + $171 = $170&255; + $172 = ($171|0)!=(4); + if ($172) { + $173 = HEAP32[$1>>2]|0; + $174 = (($173) + 24|0); + $175 = HEAP16[$174>>1]|0; + $176 = $175&65535; + $177 = $176 | 4; + $178 = $177&65535; + HEAP16[$174>>1] = $178; + } + } + } + } while(0); + $179 = HEAP32[$pPager>>2]|0; + $180 = (($179) + 96|0); + $181 = HEAP32[$180>>2]|0; + $182 = ($181|0)>(0); + if ($182) { + $183 = HEAP32[$1>>2]|0; + $184 = (_subjRequiresPage($183)|0); + $185 = ($184|0)!=(0); + if ($185) { + $186 = HEAP32[$1>>2]|0; + $187 = (_subjournalPage($186)|0); + HEAP32[$rc>>2] = $187; + } + } + } + $188 = HEAP32[$pPager>>2]|0; + $189 = (($188) + 24|0); + $190 = HEAP32[$189>>2]|0; + $191 = HEAP32[$1>>2]|0; + $192 = (($191) + 20|0); + $193 = HEAP32[$192>>2]|0; + $194 = ($190>>>0)<($193>>>0); + if ($194) { + $195 = HEAP32[$1>>2]|0; + $196 = (($195) + 20|0); + $197 = HEAP32[$196>>2]|0; + $198 = HEAP32[$pPager>>2]|0; + $199 = (($198) + 24|0); + HEAP32[$199>>2] = $197; + } + $200 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $200; + $201 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($201|0); +} +function _pager_open_journal($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $flags = 0, $pVfs = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $rc = sp + 4|0; + $pVfs = sp + 8|0; + $flags = sp + 12|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + HEAP32[$pVfs>>2] = $3; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 40|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0); + $8 = HEAP32[$1>>2]|0; + if ($7) { + $9 = (($8) + 40|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$0>>2] = $10; + $89 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($89|0); + } + $11 = (_pagerUseWal($8)|0); + $12 = ($11|0)!=(0); + if (!($12)) { + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 5|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = ($16|0)!=(2); + if ($17) { + $18 = HEAP32[$1>>2]|0; + $19 = (($18) + 24|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3BitvecCreate($20)|0); + $22 = HEAP32[$1>>2]|0; + $23 = (($22) + 56|0); + HEAP32[$23>>2] = $21; + $24 = HEAP32[$1>>2]|0; + $25 = (($24) + 56|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)==(0|0); + if ($27) { + HEAP32[$0>>2] = 7; + $89 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($89|0); + } + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 64|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$30>>2]|0; + $32 = ($31|0)!=(0|0); + do { + if (!($32)) { + $33 = HEAP32[$1>>2]|0; + $34 = (($33) + 5|0); + $35 = HEAP8[$34>>0]|0; + $36 = $35&255; + $37 = ($36|0)==(4); + $38 = HEAP32[$1>>2]|0; + if ($37) { + $39 = (($38) + 64|0); + $40 = HEAP32[$39>>2]|0; + _sqlite3MemJournalOpen($40); + break; + } + $41 = (($38) + 12|0); + $42 = HEAP8[$41>>0]|0; + $43 = $42&255; + $44 = ($43|0)!=(0); + $45 = $44 ? 4104 : 2048; + $46 = 6 | $45; + HEAP32[$flags>>2] = $46; + $47 = HEAP32[$1>>2]|0; + $48 = (_databaseIsUnmoved($47)|0); + HEAP32[$rc>>2] = $48; + $49 = HEAP32[$rc>>2]|0; + $50 = ($49|0)==(0); + if ($50) { + $51 = HEAP32[$pVfs>>2]|0; + $52 = HEAP32[$1>>2]|0; + $53 = (($52) + 172|0); + $54 = HEAP32[$53>>2]|0; + $55 = HEAP32[$1>>2]|0; + $56 = (($55) + 64|0); + $57 = HEAP32[$56>>2]|0; + $58 = HEAP32[$flags>>2]|0; + $59 = (_sqlite3OsOpen($51,$54,$57,$58,0)|0); + HEAP32[$rc>>2] = $59; + } + } + } while(0); + $60 = HEAP32[$rc>>2]|0; + $61 = ($60|0)==(0); + if ($61) { + $62 = HEAP32[$1>>2]|0; + $63 = (($62) + 44|0); + HEAP32[$63>>2] = 0; + $64 = HEAP32[$1>>2]|0; + $65 = (($64) + 72|0); + $66 = $65; + $67 = $66; + HEAP32[$67>>2] = 0; + $68 = (($66) + 4)|0; + $69 = $68; + HEAP32[$69>>2] = 0; + $70 = HEAP32[$1>>2]|0; + $71 = (($70) + 19|0); + HEAP8[$71>>0] = 0; + $72 = HEAP32[$1>>2]|0; + $73 = (($72) + 80|0); + $74 = $73; + $75 = $74; + HEAP32[$75>>2] = 0; + $76 = (($74) + 4)|0; + $77 = $76; + HEAP32[$77>>2] = 0; + $78 = HEAP32[$1>>2]|0; + $79 = (_writeJournalHdr($78)|0); + HEAP32[$rc>>2] = $79; + } + } + } + $80 = HEAP32[$rc>>2]|0; + $81 = ($80|0)!=(0); + $82 = HEAP32[$1>>2]|0; + if ($81) { + $83 = (($82) + 56|0); + $84 = HEAP32[$83>>2]|0; + _sqlite3BitvecDestroy($84); + $85 = HEAP32[$1>>2]|0; + $86 = (($85) + 56|0); + HEAP32[$86>>2] = 0; + } else { + $87 = (($82) + 16|0); + HEAP8[$87>>0] = 3; + } + $88 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $88; + $89 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($89|0); +} +function _pageInJournal($pPager,$pPg) { + $pPager = $pPager|0; + $pPg = $pPg|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $pPager; + HEAP32[$1>>2] = $pPg; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 56|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 20|0); + $7 = HEAP32[$6>>2]|0; + $8 = (_sqlite3BitvecTest($4,$7)|0); + STACKTOP = sp;return ($8|0); +} +function _databaseIsUnmoved($pPager) { + $pPager = $pPager|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $bHasMoved = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $bHasMoved = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$bHasMoved>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 12|0); + $4 = HEAP8[$3>>0]|0; + $5 = ($4<<24>>24)!=(0); + if ($5) { + HEAP32[$0>>2] = 0; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); + } + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 24|0); + $8 = HEAP32[$7>>2]|0; + $9 = ($8|0)==(0); + if ($9) { + HEAP32[$0>>2] = 0; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); + } + $10 = HEAP32[$1>>2]|0; + $11 = (($10) + 60|0); + $12 = HEAP32[$11>>2]|0; + $13 = (_sqlite3OsFileControl($12,20,$bHasMoved)|0); + HEAP32[$rc>>2] = $13; + $14 = HEAP32[$rc>>2]|0; + $15 = ($14|0)==(12); + if ($15) { + HEAP32[$rc>>2] = 0; + } else { + $16 = HEAP32[$rc>>2]|0; + $17 = ($16|0)==(0); + if ($17) { + $18 = HEAP32[$bHasMoved>>2]|0; + $19 = ($18|0)!=(0); + if ($19) { + HEAP32[$rc>>2] = 1032; + } + } + } + $20 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $20; + $21 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($21|0); +} +function _sqlite3OsFetch($id,$0,$1,$iAmt,$pp) { + $id = $id|0; + $0 = $0|0; + $1 = $1|0; + $iAmt = $iAmt|0; + $pp = $pp|0; + var $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 16|0; + $3 = sp; + $4 = sp + 8|0; + $5 = sp + 12|0; + HEAP32[$2>>2] = $id; + $6 = $3; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + HEAP32[$4>>2] = $iAmt; + HEAP32[$5>>2] = $pp; + $10 = HEAP32[$5>>2]|0; + HEAP32[$10>>2] = 0; + STACKTOP = sp;return 0; +} +function _pagerAcquireMapPage($pPager,$pgno,$pData,$ppPage) { + $pPager = $pPager|0; + $pgno = $pgno|0; + $pData = $pData|0; + $ppPage = $ppPage|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $4 = sp + 12|0; + $p = sp + 16|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$2>>2] = $pgno; + HEAP32[$3>>2] = $pData; + HEAP32[$4>>2] = $ppPage; + $5 = HEAP32[$1>>2]|0; + $6 = (($5) + 136|0); + $7 = HEAP32[$6>>2]|0; + $8 = ($7|0)!=(0|0); + $9 = HEAP32[$1>>2]|0; + do { + if ($8) { + $10 = (($9) + 136|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$p>>2] = $11; + $12 = HEAP32[$4>>2]|0; + HEAP32[$12>>2] = $11; + $13 = HEAP32[$p>>2]|0; + $14 = (($13) + 12|0); + $15 = HEAP32[$14>>2]|0; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 136|0); + HEAP32[$17>>2] = $15; + $18 = HEAP32[$p>>2]|0; + $19 = (($18) + 12|0); + HEAP32[$19>>2] = 0; + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 8|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$1>>2]|0; + $24 = (($23) + 140|0); + $25 = HEAP16[$24>>1]|0; + $26 = $25&65535; + _memset(($22|0),0,($26|0))|0; + } else { + $27 = (($9) + 140|0); + $28 = HEAP16[$27>>1]|0; + $29 = $28&65535; + $30 = (40 + ($29))|0; + $31 = (_sqlite3MallocZero($30)|0); + HEAP32[$p>>2] = $31; + $32 = HEAP32[$4>>2]|0; + HEAP32[$32>>2] = $31; + $33 = HEAP32[$p>>2]|0; + $34 = ($33|0)==(0|0); + if (!($34)) { + $48 = HEAP32[$p>>2]|0; + $49 = (($48) + 40|0); + $50 = HEAP32[$p>>2]|0; + $51 = (($50) + 8|0); + HEAP32[$51>>2] = $49; + $52 = HEAP32[$p>>2]|0; + $53 = (($52) + 24|0); + HEAP16[$53>>1] = 64; + $54 = HEAP32[$p>>2]|0; + $55 = (($54) + 26|0); + HEAP16[$55>>1] = 1; + $56 = HEAP32[$1>>2]|0; + $57 = HEAP32[$p>>2]|0; + $58 = (($57) + 16|0); + HEAP32[$58>>2] = $56; + break; + } + $35 = HEAP32[$1>>2]|0; + $36 = (($35) + 60|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$2>>2]|0; + $39 = (($38) - 1)|0; + $40 = HEAP32[$1>>2]|0; + $41 = (($40) + 152|0); + $42 = HEAP32[$41>>2]|0; + $43 = ($42|0)<(0); + $44 = $43 << 31 >> 31; + $45 = (___muldi3(($39|0),0,($42|0),($44|0))|0); + $46 = tempRet0; + $47 = HEAP32[$3>>2]|0; + (_sqlite3OsUnfetch($37,$45,$46,$47)|0); + HEAP32[$0>>2] = 7; + $69 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($69|0); + } + } while(0); + $59 = HEAP32[$2>>2]|0; + $60 = HEAP32[$p>>2]|0; + $61 = (($60) + 20|0); + HEAP32[$61>>2] = $59; + $62 = HEAP32[$3>>2]|0; + $63 = HEAP32[$p>>2]|0; + $64 = (($63) + 4|0); + HEAP32[$64>>2] = $62; + $65 = HEAP32[$1>>2]|0; + $66 = (($65) + 120|0); + $67 = HEAP32[$66>>2]|0; + $68 = (($67) + 1)|0; + HEAP32[$66>>2] = $68; + HEAP32[$0>>2] = 0; + $69 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($69|0); +} +function _lockBtree($pBt) { + $pBt = $pBt|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; + var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $isOpen = 0, $nPage = 0, $nPageFile = 0, $nPageHeader = 0, $or$cond = 0, $or$cond3 = 0, $pPage1 = 0, $page1 = 0, $pageSize = 0, $rc = 0, $usableSize = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 40|0; + $1 = sp + 36|0; + $rc = sp + 32|0; + $pPage1 = sp + 28|0; + $nPage = sp + 24|0; + $nPageFile = sp + 20|0; + $nPageHeader = sp + 12|0; + $pageSize = sp + 8|0; + $usableSize = sp + 4|0; + $page1 = sp; + $isOpen = sp + 16|0; + HEAP32[$1>>2] = $pBt; + HEAP32[$nPageFile>>2] = 0; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = (_sqlite3PagerSharedLock($3)|0); + HEAP32[$rc>>2] = $4; + $5 = HEAP32[$rc>>2]|0; + $6 = ($5|0)!=(0); + if ($6) { + $7 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $7; + $222 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($222|0); + } + $8 = HEAP32[$1>>2]|0; + $9 = (_btreeGetPage($8,1,$pPage1,0)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + $11 = ($10|0)!=(0); + if ($11) { + $12 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $12; + $222 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($222|0); + } + $13 = HEAP32[$pPage1>>2]|0; + $14 = (($13) + 56|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + 28|0); + $17 = (_sqlite3Get4byte($16)|0); + HEAP32[$nPageHeader>>2] = $17; + HEAP32[$nPage>>2] = $17; + $18 = HEAP32[$1>>2]|0; + $19 = HEAP32[$18>>2]|0; + _sqlite3PagerPagecount($19,$nPageFile); + $20 = HEAP32[$nPage>>2]|0; + $21 = ($20|0)==(0); + if ($21) { + label = 7; + } else { + $22 = HEAP32[$pPage1>>2]|0; + $23 = (($22) + 56|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + 24|0); + $26 = HEAP32[$pPage1>>2]|0; + $27 = (($26) + 56|0); + $28 = HEAP32[$27>>2]|0; + $29 = (($28) + 92|0); + $30 = (_memcmp($25,$29,4)|0); + $31 = ($30|0)!=(0); + if ($31) { + label = 7; + } + } + if ((label|0) == 7) { + $32 = HEAP32[$nPageFile>>2]|0; + HEAP32[$nPage>>2] = $32; + } + $33 = HEAP32[$nPage>>2]|0; + $34 = ($33|0)>(0); + L14: do { + if ($34) { + $35 = HEAP32[$pPage1>>2]|0; + $36 = (($35) + 56|0); + $37 = HEAP32[$36>>2]|0; + HEAP32[$page1>>2] = $37; + HEAP32[$rc>>2] = 26; + $38 = HEAP32[$page1>>2]|0; + $39 = (_memcmp($38,40888,16)|0); + $40 = ($39|0)!=(0); + L16: do { + if (!($40)) { + $41 = HEAP32[$page1>>2]|0; + $42 = (($41) + 18|0); + $43 = HEAP8[$42>>0]|0; + $44 = $43&255; + $45 = ($44|0)>(2); + if ($45) { + $46 = HEAP32[$1>>2]|0; + $47 = (($46) + 22|0); + $48 = HEAP16[$47>>1]|0; + $49 = $48&65535; + $50 = $49 | 1; + $51 = $50&65535; + HEAP16[$47>>1] = $51; + } + $52 = HEAP32[$page1>>2]|0; + $53 = (($52) + 19|0); + $54 = HEAP8[$53>>0]|0; + $55 = $54&255; + $56 = ($55|0)>(2); + if (!($56)) { + $57 = HEAP32[$page1>>2]|0; + $58 = (($57) + 19|0); + $59 = HEAP8[$58>>0]|0; + $60 = $59&255; + $61 = ($60|0)==(2); + do { + if ($61) { + $62 = HEAP32[$1>>2]|0; + $63 = (($62) + 22|0); + $64 = HEAP16[$63>>1]|0; + $65 = $64&65535; + $66 = $65 & 16; + $67 = ($66|0)==(0); + if ($67) { + HEAP32[$isOpen>>2] = 0; + $68 = HEAP32[$1>>2]|0; + $69 = HEAP32[$68>>2]|0; + $70 = (_sqlite3PagerOpenWal($69,$isOpen)|0); + HEAP32[$rc>>2] = $70; + $71 = HEAP32[$rc>>2]|0; + $72 = ($71|0)!=(0); + if ($72) { + break L16; + } + $73 = HEAP32[$isOpen>>2]|0; + $74 = ($73|0)==(0); + if (!($74)) { + HEAP32[$rc>>2] = 26; + break; + } + $75 = HEAP32[$pPage1>>2]|0; + _releasePage($75); + HEAP32[$0>>2] = 0; + $222 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($222|0); + } + } + } while(0); + $76 = HEAP32[$page1>>2]|0; + $77 = (($76) + 21|0); + $78 = (_memcmp($77,43600,3)|0); + $79 = ($78|0)!=(0); + if (!($79)) { + $80 = HEAP32[$page1>>2]|0; + $81 = (($80) + 16|0); + $82 = HEAP8[$81>>0]|0; + $83 = $82&255; + $84 = $83 << 8; + $85 = HEAP32[$page1>>2]|0; + $86 = (($85) + 17|0); + $87 = HEAP8[$86>>0]|0; + $88 = $87&255; + $89 = $88 << 16; + $90 = $84 | $89; + HEAP32[$pageSize>>2] = $90; + $91 = HEAP32[$pageSize>>2]|0; + $92 = (($91) - 1)|0; + $93 = HEAP32[$pageSize>>2]|0; + $94 = $92 & $93; + $95 = ($94|0)!=(0); + $96 = HEAP32[$pageSize>>2]|0; + $97 = ($96>>>0)>(65536); + $or$cond = $95 | $97; + $98 = HEAP32[$pageSize>>2]|0; + $99 = ($98>>>0)<=(256); + $or$cond3 = $or$cond | $99; + if (!($or$cond3)) { + $100 = HEAP32[$pageSize>>2]|0; + $101 = HEAP32[$page1>>2]|0; + $102 = (($101) + 20|0); + $103 = HEAP8[$102>>0]|0; + $104 = $103&255; + $105 = (($100) - ($104))|0; + HEAP32[$usableSize>>2] = $105; + $106 = HEAP32[$pageSize>>2]|0; + $107 = HEAP32[$1>>2]|0; + $108 = (($107) + 32|0); + $109 = HEAP32[$108>>2]|0; + $110 = ($106|0)!=($109|0); + if ($110) { + $111 = HEAP32[$pPage1>>2]|0; + _releasePage($111); + $112 = HEAP32[$usableSize>>2]|0; + $113 = HEAP32[$1>>2]|0; + $114 = (($113) + 36|0); + HEAP32[$114>>2] = $112; + $115 = HEAP32[$pageSize>>2]|0; + $116 = HEAP32[$1>>2]|0; + $117 = (($116) + 32|0); + HEAP32[$117>>2] = $115; + $118 = HEAP32[$1>>2]|0; + _freeTempSpace($118); + $119 = HEAP32[$1>>2]|0; + $120 = HEAP32[$119>>2]|0; + $121 = HEAP32[$1>>2]|0; + $122 = (($121) + 32|0); + $123 = HEAP32[$pageSize>>2]|0; + $124 = HEAP32[$usableSize>>2]|0; + $125 = (($123) - ($124))|0; + $126 = (_sqlite3PagerSetPagesize($120,$122,$125)|0); + HEAP32[$rc>>2] = $126; + $127 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $127; + $222 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($222|0); + } + $128 = HEAP32[$1>>2]|0; + $129 = (($128) + 4|0); + $130 = HEAP32[$129>>2]|0; + $131 = (($130) + 24|0); + $132 = HEAP32[$131>>2]|0; + $133 = $132 & 65536; + $134 = ($133|0)==(0); + if ($134) { + $135 = HEAP32[$nPage>>2]|0; + $136 = HEAP32[$nPageFile>>2]|0; + $137 = ($135|0)>($136|0); + if ($137) { + $138 = (_sqlite3CorruptError(53650)|0); + HEAP32[$rc>>2] = $138; + break; + } + } + $139 = HEAP32[$usableSize>>2]|0; + $140 = ($139>>>0)<(480); + if (!($140)) { + $141 = HEAP32[$pageSize>>2]|0; + $142 = HEAP32[$1>>2]|0; + $143 = (($142) + 32|0); + HEAP32[$143>>2] = $141; + $144 = HEAP32[$usableSize>>2]|0; + $145 = HEAP32[$1>>2]|0; + $146 = (($145) + 36|0); + HEAP32[$146>>2] = $144; + $147 = HEAP32[$page1>>2]|0; + $148 = (($147) + 52|0); + $149 = (_sqlite3Get4byte($148)|0); + $150 = ($149|0)!=(0); + $151 = $150 ? 1 : 0; + $152 = $151&255; + $153 = HEAP32[$1>>2]|0; + $154 = (($153) + 17|0); + HEAP8[$154>>0] = $152; + $155 = HEAP32[$page1>>2]|0; + $156 = (($155) + 64|0); + $157 = (_sqlite3Get4byte($156)|0); + $158 = ($157|0)!=(0); + $159 = $158 ? 1 : 0; + $160 = $159&255; + $161 = HEAP32[$1>>2]|0; + $162 = (($161) + 18|0); + HEAP8[$162>>0] = $160; + break L14; + } + } + } + } + } + } while(0); + $218 = HEAP32[$pPage1>>2]|0; + _releasePage($218); + $219 = HEAP32[$1>>2]|0; + $220 = (($219) + 12|0); + HEAP32[$220>>2] = 0; + $221 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $221; + $222 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($222|0); + } + } while(0); + $163 = HEAP32[$1>>2]|0; + $164 = (($163) + 36|0); + $165 = HEAP32[$164>>2]|0; + $166 = (($165) - 12)|0; + $167 = $166<<6; + $168 = (($167>>>0) / 255)&-1; + $169 = (($168) - 23)|0; + $170 = $169&65535; + $171 = HEAP32[$1>>2]|0; + $172 = (($171) + 24|0); + HEAP16[$172>>1] = $170; + $173 = HEAP32[$1>>2]|0; + $174 = (($173) + 36|0); + $175 = HEAP32[$174>>2]|0; + $176 = (($175) - 12)|0; + $177 = $176<<5; + $178 = (($177>>>0) / 255)&-1; + $179 = (($178) - 23)|0; + $180 = $179&65535; + $181 = HEAP32[$1>>2]|0; + $182 = (($181) + 26|0); + HEAP16[$182>>1] = $180; + $183 = HEAP32[$1>>2]|0; + $184 = (($183) + 36|0); + $185 = HEAP32[$184>>2]|0; + $186 = (($185) - 35)|0; + $187 = $186&65535; + $188 = HEAP32[$1>>2]|0; + $189 = (($188) + 28|0); + HEAP16[$189>>1] = $187; + $190 = HEAP32[$1>>2]|0; + $191 = (($190) + 36|0); + $192 = HEAP32[$191>>2]|0; + $193 = (($192) - 12)|0; + $194 = $193<<5; + $195 = (($194>>>0) / 255)&-1; + $196 = (($195) - 23)|0; + $197 = $196&65535; + $198 = HEAP32[$1>>2]|0; + $199 = (($198) + 30|0); + HEAP16[$199>>1] = $197; + $200 = HEAP32[$1>>2]|0; + $201 = (($200) + 24|0); + $202 = HEAP16[$201>>1]|0; + $203 = $202&65535; + $204 = ($203|0)>(127); + $205 = HEAP32[$1>>2]|0; + if ($204) { + $206 = (($205) + 21|0); + HEAP8[$206>>0] = 127; + } else { + $207 = (($205) + 24|0); + $208 = HEAP16[$207>>1]|0; + $209 = $208&255; + $210 = HEAP32[$1>>2]|0; + $211 = (($210) + 21|0); + HEAP8[$211>>0] = $209; + } + $212 = HEAP32[$pPage1>>2]|0; + $213 = HEAP32[$1>>2]|0; + $214 = (($213) + 12|0); + HEAP32[$214>>2] = $212; + $215 = HEAP32[$nPage>>2]|0; + $216 = HEAP32[$1>>2]|0; + $217 = (($216) + 44|0); + HEAP32[$217>>2] = $215; + HEAP32[$0>>2] = 0; + $222 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($222|0); +} +function _sqlite3PagerBegin($pPager,$exFlag,$subjInMemory) { + $pPager = $pPager|0; + $exFlag = $exFlag|0; + $subjInMemory = $subjInMemory|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $8 = 0, $9 = 0, $rc = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 16|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $rc = sp + 12|0; + HEAP32[$1>>2] = $pPager; + HEAP32[$2>>2] = $exFlag; + HEAP32[$3>>2] = $subjInMemory; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 40|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0); + if ($7) { + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 40|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$0>>2] = $10; + $78 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($78|0); + } + $11 = HEAP32[$3>>2]|0; + $12 = $11&255; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 21|0); + HEAP8[$14>>0] = $12; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 16|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17&255; + $19 = ($18|0)==(1); + if ($19) { + $20 = HEAP32[$1>>2]|0; + $21 = (_pagerUseWal($20)|0); + $22 = ($21|0)!=(0); + $23 = HEAP32[$1>>2]|0; + if ($22) { + $24 = (($23) + 4|0); + $25 = HEAP8[$24>>0]|0; + $26 = $25&255; + $27 = ($26|0)!=(0); + do { + if ($27) { + $28 = HEAP32[$1>>2]|0; + $29 = (($28) + 208|0); + $30 = HEAP32[$29>>2]|0; + $31 = (_sqlite3WalExclusiveMode($30,-1)|0); + $32 = ($31|0)!=(0); + if ($32) { + $33 = HEAP32[$1>>2]|0; + $34 = (_pagerLockDb($33,4)|0); + HEAP32[$rc>>2] = $34; + $35 = HEAP32[$rc>>2]|0; + $36 = ($35|0)!=(0); + if (!($36)) { + $38 = HEAP32[$1>>2]|0; + $39 = (($38) + 208|0); + $40 = HEAP32[$39>>2]|0; + (_sqlite3WalExclusiveMode($40,1)|0); + break; + } + $37 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $37; + $78 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($78|0); + } + } + } while(0); + $41 = HEAP32[$1>>2]|0; + $42 = (($41) + 208|0); + $43 = HEAP32[$42>>2]|0; + $44 = (_sqlite3WalBeginWriteTransaction($43)|0); + HEAP32[$rc>>2] = $44; + } else { + $45 = (_pagerLockDb($23,2)|0); + HEAP32[$rc>>2] = $45; + $46 = HEAP32[$rc>>2]|0; + $47 = ($46|0)==(0); + if ($47) { + $48 = HEAP32[$2>>2]|0; + $49 = ($48|0)!=(0); + if ($49) { + $50 = HEAP32[$1>>2]|0; + $51 = (_pager_wait_on_lock($50,4)|0); + HEAP32[$rc>>2] = $51; + } + } + } + $52 = HEAP32[$rc>>2]|0; + $53 = ($52|0)==(0); + if ($53) { + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 16|0); + HEAP8[$55>>0] = 2; + $56 = HEAP32[$1>>2]|0; + $57 = (($56) + 24|0); + $58 = HEAP32[$57>>2]|0; + $59 = HEAP32[$1>>2]|0; + $60 = (($59) + 36|0); + HEAP32[$60>>2] = $58; + $61 = HEAP32[$1>>2]|0; + $62 = (($61) + 24|0); + $63 = HEAP32[$62>>2]|0; + $64 = HEAP32[$1>>2]|0; + $65 = (($64) + 32|0); + HEAP32[$65>>2] = $63; + $66 = HEAP32[$1>>2]|0; + $67 = (($66) + 24|0); + $68 = HEAP32[$67>>2]|0; + $69 = HEAP32[$1>>2]|0; + $70 = (($69) + 28|0); + HEAP32[$70>>2] = $68; + $71 = HEAP32[$1>>2]|0; + $72 = (($71) + 72|0); + $73 = $72; + $74 = $73; + HEAP32[$74>>2] = 0; + $75 = (($73) + 4)|0; + $76 = $75; + HEAP32[$76>>2] = 0; + } + } + $77 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $77; + $78 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($78|0); +} +function _sqlite3WalBeginWriteTransaction($pWal) { + $pWal = $pWal|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $rc = sp + 4|0; + HEAP32[$1>>2] = $pWal; + $2 = HEAP32[$1>>2]|0; + $3 = (($2) + 46|0); + $4 = HEAP8[$3>>0]|0; + $5 = ($4<<24>>24)!=(0); + if ($5) { + HEAP32[$0>>2] = 8; + $23 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($23|0); + } + $6 = HEAP32[$1>>2]|0; + $7 = (_walLockExclusive($6,0,1)|0); + HEAP32[$rc>>2] = $7; + $8 = HEAP32[$rc>>2]|0; + $9 = ($8|0)!=(0); + if ($9) { + $10 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $10; + $23 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($23|0); + } + $11 = HEAP32[$1>>2]|0; + $12 = (($11) + 44|0); + HEAP8[$12>>0] = 1; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 52|0); + $15 = HEAP32[$1>>2]|0; + $16 = (_walIndexHdr($15)|0); + $17 = (_memcmp($14,$16,48)|0); + $18 = ($17|0)!=(0); + if ($18) { + $19 = HEAP32[$1>>2]|0; + _walUnlockExclusive($19,0,1); + $20 = HEAP32[$1>>2]|0; + $21 = (($20) + 44|0); + HEAP8[$21>>0] = 0; + HEAP32[$rc>>2] = 517; + } + $22 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $22; + $23 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($23|0); +} +function _sqlite3ValueSetNull($p) { + $p = $p|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $p; + $1 = HEAP32[$0>>2]|0; + _sqlite3VdbeMemSetNull($1); + STACKTOP = sp;return; +} +function _dotlockIoFinderImpl($z,$p) { + $z = $z|0; + $p = $p|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $z; + HEAP32[$1>>2] = $p; + STACKTOP = sp;return (43608|0); +} +function _dotlockClose($id) { + $id = $id|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pFile = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $rc = sp; + $pFile = sp + 4|0; + HEAP32[$0>>2] = $id; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + $10 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($10|0); + } + $3 = HEAP32[$0>>2]|0; + HEAP32[$pFile>>2] = $3; + $4 = HEAP32[$0>>2]|0; + (_dotlockUnlock($4,0)|0); + $5 = HEAP32[$pFile>>2]|0; + $6 = (($5) + 24|0); + $7 = HEAP32[$6>>2]|0; + _sqlite3_free($7); + $8 = HEAP32[$0>>2]|0; + $9 = (_closeUnixFile($8)|0); + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($10|0); +} +function _unixRead($id,$pBuf,$amt,$0,$1) { + $id = $id|0; + $pBuf = $pBuf|0; + $amt = $amt|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $got = 0, $pFile = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 28|0; + $3 = sp + 16|0; + $4 = sp + 8|0; + $5 = sp + 12|0; + $6 = sp; + $pFile = sp + 20|0; + $got = sp + 24|0; + HEAP32[$3>>2] = $id; + HEAP32[$4>>2] = $pBuf; + HEAP32[$5>>2] = $amt; + $7 = $6; + $8 = $7; + HEAP32[$8>>2] = $0; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = $1; + $11 = HEAP32[$3>>2]|0; + HEAP32[$pFile>>2] = $11; + $12 = HEAP32[$pFile>>2]|0; + $13 = $6; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (($13) + 4)|0; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$4>>2]|0; + $20 = HEAP32[$5>>2]|0; + $21 = (_seekAndRead($12,$15,$18,$19,$20)|0); + HEAP32[$got>>2] = $21; + $22 = HEAP32[$got>>2]|0; + $23 = HEAP32[$5>>2]|0; + $24 = ($22|0)==($23|0); + if ($24) { + HEAP32[$2>>2] = 0; + $35 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($35|0); + } + $25 = HEAP32[$got>>2]|0; + $26 = ($25|0)<(0); + if ($26) { + HEAP32[$2>>2] = 266; + $35 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($35|0); + } else { + $27 = HEAP32[$pFile>>2]|0; + $28 = (($27) + 20|0); + HEAP32[$28>>2] = 0; + $29 = HEAP32[$got>>2]|0; + $30 = HEAP32[$4>>2]|0; + $31 = (($30) + ($29)|0); + $32 = HEAP32[$5>>2]|0; + $33 = HEAP32[$got>>2]|0; + $34 = (($32) - ($33))|0; + _memset(($31|0),0,($34|0))|0; + HEAP32[$2>>2] = 522; + $35 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($35|0); + } + return 0|0; +} +function _unixWrite($id,$pBuf,$amt,$0,$1) { + $id = $id|0; + $pBuf = $pBuf|0; + $amt = $amt|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pFile = 0, $wrote = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 28|0; + $3 = sp + 16|0; + $4 = sp + 8|0; + $5 = sp + 12|0; + $6 = sp; + $pFile = sp + 20|0; + $wrote = sp + 24|0; + HEAP32[$3>>2] = $id; + HEAP32[$4>>2] = $pBuf; + HEAP32[$5>>2] = $amt; + $7 = $6; + $8 = $7; + HEAP32[$8>>2] = $0; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = $1; + $11 = HEAP32[$3>>2]|0; + HEAP32[$pFile>>2] = $11; + HEAP32[$wrote>>2] = 0; + while(1) { + $12 = HEAP32[$5>>2]|0; + $13 = ($12|0)>(0); + if (!($13)) { + break; + } + $14 = HEAP32[$pFile>>2]|0; + $15 = $6; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = (($15) + 4)|0; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = HEAP32[$4>>2]|0; + $22 = HEAP32[$5>>2]|0; + $23 = (_seekAndWrite($14,$17,$20,$21,$22)|0); + HEAP32[$wrote>>2] = $23; + $24 = ($23|0)>(0); + if (!($24)) { + break; + } + $25 = HEAP32[$wrote>>2]|0; + $26 = HEAP32[$5>>2]|0; + $27 = (($26) - ($25))|0; + HEAP32[$5>>2] = $27; + $28 = HEAP32[$wrote>>2]|0; + $29 = ($28|0)<(0); + $30 = $29 << 31 >> 31; + $31 = $6; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = (($31) + 4)|0; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (_i64Add(($33|0),($36|0),($28|0),($30|0))|0); + $38 = tempRet0; + $39 = $6; + $40 = $39; + HEAP32[$40>>2] = $37; + $41 = (($39) + 4)|0; + $42 = $41; + HEAP32[$42>>2] = $38; + $43 = HEAP32[$wrote>>2]|0; + $44 = HEAP32[$4>>2]|0; + $45 = (($44) + ($43)|0); + HEAP32[$4>>2] = $45; + } + $46 = HEAP32[$5>>2]|0; + $47 = ($46|0)>(0); + if (!($47)) { + HEAP32[$2>>2] = 0; + $56 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($56|0); + } + $48 = HEAP32[$wrote>>2]|0; + $49 = ($48|0)<(0); + if ($49) { + $50 = HEAP32[$pFile>>2]|0; + $51 = (($50) + 20|0); + $52 = HEAP32[$51>>2]|0; + $53 = ($52|0)!=(28); + if ($53) { + HEAP32[$2>>2] = 778; + $56 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($56|0); + } + } + $54 = HEAP32[$pFile>>2]|0; + $55 = (($54) + 20|0); + HEAP32[$55>>2] = 0; + HEAP32[$2>>2] = 13; + $56 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($56|0); +} +function _unixTruncate($id,$0,$1) { + $id = $id|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $8 = 0, $9 = 0, $pFile = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 20|0; + $3 = sp + 8|0; + $4 = sp; + $pFile = sp + 12|0; + $rc = sp + 16|0; + HEAP32[$3>>2] = $id; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + $9 = HEAP32[$3>>2]|0; + HEAP32[$pFile>>2] = $9; + $10 = HEAP32[$pFile>>2]|0; + $11 = (($10) + 40|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)>(0); + if ($13) { + $14 = $4; + $15 = $14; + $16 = HEAP32[$15>>2]|0; + $17 = (($14) + 4)|0; + $18 = $17; + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$pFile>>2]|0; + $21 = (($20) + 40|0); + $22 = HEAP32[$21>>2]|0; + $23 = ($22|0)<(0); + $24 = $23 << 31 >> 31; + $25 = (_i64Add(($16|0),($19|0),($22|0),($24|0))|0); + $26 = tempRet0; + $27 = (_i64Subtract(($25|0),($26|0),1,0)|0); + $28 = tempRet0; + $29 = HEAP32[$pFile>>2]|0; + $30 = (($29) + 40|0); + $31 = HEAP32[$30>>2]|0; + $32 = ($31|0)<(0); + $33 = $32 << 31 >> 31; + $34 = (___divdi3(($27|0),($28|0),($31|0),($33|0))|0); + $35 = tempRet0; + $36 = HEAP32[$pFile>>2]|0; + $37 = (($36) + 40|0); + $38 = HEAP32[$37>>2]|0; + $39 = ($38|0)<(0); + $40 = $39 << 31 >> 31; + $41 = (___muldi3(($34|0),($35|0),($38|0),($40|0))|0); + $42 = tempRet0; + $43 = $4; + $44 = $43; + HEAP32[$44>>2] = $41; + $45 = (($43) + 4)|0; + $46 = $45; + HEAP32[$46>>2] = $42; + } + $47 = HEAP32[$pFile>>2]|0; + $48 = (($47) + 12|0); + $49 = HEAP32[$48>>2]|0; + $50 = $4; + $51 = $50; + $52 = HEAP32[$51>>2]|0; + $53 = (($50) + 4)|0; + $54 = $53; + $55 = HEAP32[$54>>2]|0; + $56 = ($52|0)<(0); + $57 = $56 << 31 >> 31; + $58 = (_robust_ftruncate($49,$52,$57)|0); + HEAP32[$rc>>2] = $58; + $59 = HEAP32[$rc>>2]|0; + $60 = ($59|0)!=(0); + if ($60) { + $61 = (___errno_location()|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$pFile>>2]|0; + $64 = (($63) + 20|0); + HEAP32[$64>>2] = $62; + $65 = HEAP32[$pFile>>2]|0; + $66 = (($65) + 32|0); + $67 = HEAP32[$66>>2]|0; + $68 = (_unixLogErrorAtLine(1546,44064,$67,27527)|0); + HEAP32[$2>>2] = $68; + $69 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($69|0); + } else { + HEAP32[$2>>2] = 0; + $69 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($69|0); + } + return 0|0; +} +function _unixSync($id,$flags) { + $id = $id|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $dirfd = 0, $isDataOnly = 0, $isFullsync = 0, $pFile = 0, $rc = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 28|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $pFile = sp + 12|0; + $isDataOnly = sp + 16|0; + $isFullsync = sp + 20|0; + $dirfd = sp + 24|0; + HEAP32[$1>>2] = $id; + HEAP32[$2>>2] = $flags; + $3 = HEAP32[$1>>2]|0; + HEAP32[$pFile>>2] = $3; + $4 = HEAP32[$2>>2]|0; + $5 = $4 & 16; + HEAP32[$isDataOnly>>2] = $5; + $6 = HEAP32[$2>>2]|0; + $7 = $6 & 15; + $8 = ($7|0)==(3); + $9 = $8&1; + HEAP32[$isFullsync>>2] = $9; + $10 = HEAP32[$pFile>>2]|0; + $11 = (($10) + 12|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$isFullsync>>2]|0; + $14 = HEAP32[$isDataOnly>>2]|0; + $15 = (_full_fsync($12,$13,$14)|0); + HEAP32[$rc>>2] = $15; + $16 = HEAP32[$rc>>2]|0; + $17 = ($16|0)!=(0); + if ($17) { + $18 = (___errno_location()|0); + $19 = HEAP32[$18>>2]|0; + $20 = HEAP32[$pFile>>2]|0; + $21 = (($20) + 20|0); + HEAP32[$21>>2] = $19; + $22 = HEAP32[$pFile>>2]|0; + $23 = (($22) + 32|0); + $24 = HEAP32[$23>>2]|0; + $25 = (_unixLogErrorAtLine(1034,44520,$24,27483)|0); + HEAP32[$0>>2] = $25; + $53 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($53|0); + } + $26 = HEAP32[$pFile>>2]|0; + $27 = (($26) + 18|0); + $28 = HEAP16[$27>>1]|0; + $29 = $28&65535; + $30 = $29 & 8; + $31 = ($30|0)!=(0); + if ($31) { + $32 = HEAP32[((43688 + 208|0))>>2]|0; + $33 = HEAP32[$pFile>>2]|0; + $34 = (($33) + 32|0); + $35 = HEAP32[$34>>2]|0; + $36 = (FUNCTION_TABLE_iii[$32 & 127]($35,$dirfd)|0); + HEAP32[$rc>>2] = $36; + $37 = HEAP32[$rc>>2]|0; + $38 = ($37|0)==(0); + if ($38) { + $39 = HEAP32[$dirfd>>2]|0; + $40 = ($39|0)>=(0); + if ($40) { + $41 = HEAP32[$dirfd>>2]|0; + (_full_fsync($41,0,0)|0); + $42 = HEAP32[$pFile>>2]|0; + $43 = HEAP32[$dirfd>>2]|0; + _robust_close($42,$43,27497); + } else { + label = 7; + } + } else { + label = 7; + } + if ((label|0) == 7) { + $44 = HEAP32[$rc>>2]|0; + $45 = ($44|0)==(14); + if ($45) { + HEAP32[$rc>>2] = 0; + } + } + $46 = HEAP32[$pFile>>2]|0; + $47 = (($46) + 18|0); + $48 = HEAP16[$47>>1]|0; + $49 = $48&65535; + $50 = $49 & -9; + $51 = $50&65535; + HEAP16[$47>>1] = $51; + } + $52 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $52; + $53 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($53|0); +} +function _unixFileSize($id,$pSize) { + $id = $id|0; + $pSize = $pSize|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $buf = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 88|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $buf = sp + 12|0; + HEAP32[$1>>2] = $id; + HEAP32[$2>>2] = $pSize; + $3 = HEAP32[((43688 + 64|0))>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 12|0); + $6 = HEAP32[$5>>2]|0; + $7 = (FUNCTION_TABLE_iii[$3 & 127]($6,$buf)|0); + HEAP32[$rc>>2] = $7; + $8 = HEAP32[$rc>>2]|0; + $9 = ($8|0)!=(0); + if ($9) { + $10 = (___errno_location()|0); + $11 = HEAP32[$10>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 20|0); + HEAP32[$13>>2] = $11; + HEAP32[$0>>2] = 1802; + $38 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($38|0); + } + $14 = (($buf) + 36|0); + $15 = HEAP32[$14>>2]|0; + $16 = ($15|0)<(0); + $17 = $16 << 31 >> 31; + $18 = HEAP32[$2>>2]|0; + $19 = $18; + $20 = $19; + HEAP32[$20>>2] = $15; + $21 = (($19) + 4)|0; + $22 = $21; + HEAP32[$22>>2] = $17; + $23 = HEAP32[$2>>2]|0; + $24 = $23; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = (($24) + 4)|0; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = ($26|0)==(1); + $31 = ($29|0)==(0); + $32 = $30 & $31; + if ($32) { + $33 = HEAP32[$2>>2]|0; + $34 = $33; + $35 = $34; + HEAP32[$35>>2] = 0; + $36 = (($34) + 4)|0; + $37 = $36; + HEAP32[$37>>2] = 0; + } + HEAP32[$0>>2] = 0; + $38 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($38|0); +} +function _dotlockLock($id,$eFileLock) { + $id = $id|0; + $eFileLock = $eFileLock|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, $or$cond = 0, $pFile = 0, $rc = 0, $tErrno = 0, $zLockFile = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $pFile = sp + 8|0; + $zLockFile = sp + 12|0; + $rc = sp + 16|0; + $tErrno = sp + 20|0; + HEAP32[$1>>2] = $id; + HEAP32[$2>>2] = $eFileLock; + $3 = HEAP32[$1>>2]|0; + HEAP32[$pFile>>2] = $3; + $4 = HEAP32[$pFile>>2]|0; + $5 = (($4) + 24|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$zLockFile>>2] = $6; + HEAP32[$rc>>2] = 0; + $7 = HEAP32[$pFile>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = ($10|0)>(0); + if ($11) { + $12 = HEAP32[$2>>2]|0; + $13 = $12&255; + $14 = HEAP32[$pFile>>2]|0; + $15 = (($14) + 16|0); + HEAP8[$15>>0] = $13; + $16 = HEAP32[$zLockFile>>2]|0; + (_utimes(($16|0),(0|0))|0); + HEAP32[$0>>2] = 0; + $41 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($41|0); + } + $17 = HEAP32[((43688 + 220|0))>>2]|0; + $18 = HEAP32[$zLockFile>>2]|0; + $19 = (FUNCTION_TABLE_iii[$17 & 127]($18,511)|0); + HEAP32[$rc>>2] = $19; + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)<(0); + if (!($21)) { + $36 = HEAP32[$2>>2]|0; + $37 = $36&255; + $38 = HEAP32[$pFile>>2]|0; + $39 = (($38) + 16|0); + HEAP8[$39>>0] = $37; + $40 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $40; + $41 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($41|0); + } + $22 = (___errno_location()|0); + $23 = HEAP32[$22>>2]|0; + HEAP32[$tErrno>>2] = $23; + $24 = HEAP32[$tErrno>>2]|0; + $25 = (17)==($24|0); + if ($25) { + HEAP32[$rc>>2] = 5; + } else { + $26 = HEAP32[$tErrno>>2]|0; + $27 = (_sqliteErrorFromPosixError($26,3850)|0); + HEAP32[$rc>>2] = $27; + $28 = HEAP32[$rc>>2]|0; + $29 = ($28|0)!=(0); + $30 = HEAP32[$rc>>2]|0; + $31 = ($30|0)!=(5); + $or$cond = $29 & $31; + if ($or$cond) { + $32 = HEAP32[$tErrno>>2]|0; + $33 = HEAP32[$pFile>>2]|0; + $34 = (($33) + 20|0); + HEAP32[$34>>2] = $32; + } + } + $35 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $35; + $41 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($41|0); +} +function _dotlockUnlock($id,$eFileLock) { + $id = $id|0; + $eFileLock = $eFileLock|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $pFile = 0, $rc = 0, $tErrno = 0, $zLockFile = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $pFile = sp + 8|0; + $zLockFile = sp + 12|0; + $rc = sp + 16|0; + $tErrno = sp + 20|0; + HEAP32[$1>>2] = $id; + HEAP32[$2>>2] = $eFileLock; + $3 = HEAP32[$1>>2]|0; + HEAP32[$pFile>>2] = $3; + $4 = HEAP32[$pFile>>2]|0; + $5 = (($4) + 24|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$zLockFile>>2] = $6; + $7 = HEAP32[$pFile>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP8[$8>>0]|0; + $10 = $9&255; + $11 = HEAP32[$2>>2]|0; + $12 = ($10|0)==($11|0); + if ($12) { + HEAP32[$0>>2] = 0; + $44 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($44|0); + } + $13 = HEAP32[$2>>2]|0; + $14 = ($13|0)==(1); + if ($14) { + $15 = HEAP32[$pFile>>2]|0; + $16 = (($15) + 16|0); + HEAP8[$16>>0] = 1; + HEAP32[$0>>2] = 0; + $44 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($44|0); + } + $17 = HEAP32[((43688 + 232|0))>>2]|0; + $18 = HEAP32[$zLockFile>>2]|0; + $19 = (FUNCTION_TABLE_ii[$17 & 63]($18)|0); + HEAP32[$rc>>2] = $19; + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)<(0); + if ($21) { + $22 = (___errno_location()|0); + $23 = HEAP32[$22>>2]|0; + $24 = ($23|0)==(20); + if ($24) { + $25 = HEAP32[((43688 + 196|0))>>2]|0; + $26 = HEAP32[$zLockFile>>2]|0; + $27 = (FUNCTION_TABLE_ii[$25 & 63]($26)|0); + HEAP32[$rc>>2] = $27; + } + } + $28 = HEAP32[$rc>>2]|0; + $29 = ($28|0)<(0); + if (!($29)) { + $42 = HEAP32[$pFile>>2]|0; + $43 = (($42) + 16|0); + HEAP8[$43>>0] = 0; + HEAP32[$0>>2] = 0; + $44 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($44|0); + } + $30 = (___errno_location()|0); + $31 = HEAP32[$30>>2]|0; + HEAP32[$tErrno>>2] = $31; + HEAP32[$rc>>2] = 0; + $32 = HEAP32[$tErrno>>2]|0; + $33 = (2)!=($32|0); + $$ = $33 ? 2058 : 0; + HEAP32[$rc>>2] = $$; + $34 = HEAP32[$rc>>2]|0; + $35 = ($34|0)!=(0); + $36 = HEAP32[$rc>>2]|0; + $37 = ($36|0)!=(5); + $or$cond = $35 & $37; + if ($or$cond) { + $38 = HEAP32[$tErrno>>2]|0; + $39 = HEAP32[$pFile>>2]|0; + $40 = (($39) + 20|0); + HEAP32[$40>>2] = $38; + } + $41 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $41; + $44 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($44|0); +} +function _dotlockCheckReservedLock($id,$pResOut) { + $id = $id|0; + $pResOut = $pResOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pFile = 0; + var $rc = 0, $reserved = 0, $zLockFile = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp; + $rc = sp + 4|0; + $reserved = sp + 8|0; + $pFile = sp + 12|0; + $zLockFile = sp + 16|0; + HEAP32[$0>>2] = $id; + HEAP32[$1>>2] = $pResOut; + HEAP32[$rc>>2] = 0; + HEAP32[$reserved>>2] = 0; + $2 = HEAP32[$0>>2]|0; + HEAP32[$pFile>>2] = $2; + $3 = HEAP32[$pFile>>2]|0; + $4 = (($3) + 16|0); + $5 = HEAP8[$4>>0]|0; + $6 = $5&255; + $7 = ($6|0)>(1); + if ($7) { + HEAP32[$reserved>>2] = 1; + $16 = HEAP32[$reserved>>2]|0; + $17 = HEAP32[$1>>2]|0; + HEAP32[$17>>2] = $16; + $18 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($18|0); + } else { + $8 = HEAP32[$pFile>>2]|0; + $9 = (($8) + 24|0); + $10 = HEAP32[$9>>2]|0; + HEAP32[$zLockFile>>2] = $10; + $11 = HEAP32[((43688 + 28|0))>>2]|0; + $12 = HEAP32[$zLockFile>>2]|0; + $13 = (FUNCTION_TABLE_iii[$11 & 127]($12,0)|0); + $14 = ($13|0)==(0); + $15 = $14&1; + HEAP32[$reserved>>2] = $15; + $16 = HEAP32[$reserved>>2]|0; + $17 = HEAP32[$1>>2]|0; + HEAP32[$17>>2] = $16; + $18 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($18|0); + } + return 0|0; +} +function _unixFileControl($id,$op,$pArg) { + $id = $id|0; + $op = $op|0; + $pArg = $pArg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; + var $pFile = 0, $rc = 0, $vararg_buffer = 0, $zTFile = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 28|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $pFile = sp + 16|0; + $rc = sp + 20|0; + $zTFile = sp + 24|0; + HEAP32[$1>>2] = $id; + HEAP32[$2>>2] = $op; + HEAP32[$3>>2] = $pArg; + $4 = HEAP32[$1>>2]|0; + HEAP32[$pFile>>2] = $4; + $5 = HEAP32[$2>>2]|0; + do { + switch ($5|0) { + case 16: { + $40 = HEAP32[$pFile>>2]|0; + $41 = (($40) + 4|0); + $42 = HEAP32[$41>>2]|0; + $43 = (($42) + 8|0); + $44 = HEAP32[$43>>2]|0; + $45 = (_sqlite3_malloc($44)|0); + HEAP32[$zTFile>>2] = $45; + $46 = HEAP32[$zTFile>>2]|0; + $47 = ($46|0)!=(0|0); + if ($47) { + $48 = HEAP32[$pFile>>2]|0; + $49 = (($48) + 4|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + 8|0); + $52 = HEAP32[$51>>2]|0; + $53 = HEAP32[$zTFile>>2]|0; + (_unixGetTempname($52,$53)|0); + $54 = HEAP32[$zTFile>>2]|0; + $55 = HEAP32[$3>>2]|0; + HEAP32[$55>>2] = $54; + } + HEAP32[$0>>2] = 0; + break; + } + case 20: { + $56 = HEAP32[$pFile>>2]|0; + $57 = (_fileHasMoved($56)|0); + $58 = HEAP32[$3>>2]|0; + HEAP32[$58>>2] = $57; + HEAP32[$0>>2] = 0; + break; + } + case 10: { + $29 = HEAP32[$pFile>>2]|0; + $30 = HEAP32[$3>>2]|0; + _unixModeBit($29,4,$30); + HEAP32[$0>>2] = 0; + break; + } + case 13: { + $31 = HEAP32[$pFile>>2]|0; + $32 = HEAP32[$3>>2]|0; + _unixModeBit($31,16,$32); + HEAP32[$0>>2] = 0; + break; + } + case 4: { + $11 = HEAP32[$pFile>>2]|0; + $12 = (($11) + 20|0); + $13 = HEAP32[$12>>2]|0; + $14 = HEAP32[$3>>2]|0; + HEAP32[$14>>2] = $13; + HEAP32[$0>>2] = 0; + break; + } + case 5: { + $19 = HEAP32[$pFile>>2]|0; + $20 = HEAP32[$3>>2]|0; + $21 = $20; + $22 = $21; + $23 = HEAP32[$22>>2]|0; + $24 = (($21) + 4)|0; + $25 = $24; + $26 = HEAP32[$25>>2]|0; + $27 = (_fcntlSizeHint($19,$23,$26)|0); + HEAP32[$rc>>2] = $27; + $28 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $28; + break; + } + case 6: { + $15 = HEAP32[$3>>2]|0; + $16 = HEAP32[$15>>2]|0; + $17 = HEAP32[$pFile>>2]|0; + $18 = (($17) + 40|0); + HEAP32[$18>>2] = $16; + HEAP32[$0>>2] = 0; + break; + } + case 1: { + $6 = HEAP32[$pFile>>2]|0; + $7 = (($6) + 16|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8&255; + $10 = HEAP32[$3>>2]|0; + HEAP32[$10>>2] = $9; + HEAP32[$0>>2] = 0; + break; + } + case 12: { + $33 = HEAP32[$pFile>>2]|0; + $34 = (($33) + 4|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + 16|0); + $37 = HEAP32[$36>>2]|0; + HEAP32[$vararg_buffer>>2] = $37; + $38 = (_sqlite3_mprintf(1768,$vararg_buffer)|0); + $39 = HEAP32[$3>>2]|0; + HEAP32[$39>>2] = $38; + HEAP32[$0>>2] = 0; + break; + } + default: { + HEAP32[$0>>2] = 12; + } + } + } while(0); + $59 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($59|0); +} +function _unixSectorSize($NotUsed) { + $NotUsed = $NotUsed|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $NotUsed; + STACKTOP = sp;return 4096; +} +function _unixDeviceCharacteristics($id) { + $id = $id|0; + var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $p = sp; + $rc = sp + 4|0; + HEAP32[$0>>2] = $id; + $1 = HEAP32[$0>>2]|0; + HEAP32[$p>>2] = $1; + HEAP32[$rc>>2] = 0; + $2 = HEAP32[$p>>2]|0; + $3 = (($2) + 18|0); + $4 = HEAP16[$3>>1]|0; + $5 = $4&65535; + $6 = $5 & 16; + $7 = ($6|0)!=(0); + if (!($7)) { + $10 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($10|0); + } + $8 = HEAP32[$rc>>2]|0; + $9 = $8 | 4096; + HEAP32[$rc>>2] = $9; + $10 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($10|0); +} +function _unixShmMap($fd,$iRegion,$szRegion,$bExtend,$pp) { + $fd = $fd|0; + $iRegion = $iRegion|0; + $szRegion = $szRegion|0; + $bExtend = $bExtend|0; + $pp = $pp|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; + var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; + var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; + var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; + var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; + var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; + var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $apNew = 0, $i = 0, $iPg = 0, $nByte = 0, $nMap = 0, $nReqRegion = 0, $nShmPerMap = 0, $p = 0, $pDbFd = 0, $pMem = 0, $pShmNode = 0; + var $rc = 0, $sStat = 0, $zFile = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 160|0; + $0 = sp + 148|0; + $1 = sp + 144|0; + $2 = sp + 140|0; + $3 = sp + 136|0; + $4 = sp + 132|0; + $5 = sp + 128|0; + $pDbFd = sp + 124|0; + $p = sp + 120|0; + $pShmNode = sp + 116|0; + $rc = sp + 112|0; + $nShmPerMap = sp + 108|0; + $nReqRegion = sp + 84|0; + $apNew = sp; + $nByte = sp + 4|0; + $sStat = sp + 8|0; + $iPg = sp + 88|0; + $zFile = sp + 92|0; + $nMap = sp + 96|0; + $i = sp + 100|0; + $pMem = sp + 104|0; + HEAP32[$1>>2] = $fd; + HEAP32[$2>>2] = $iRegion; + HEAP32[$3>>2] = $szRegion; + HEAP32[$4>>2] = $bExtend; + HEAP32[$5>>2] = $pp; + $6 = HEAP32[$1>>2]|0; + HEAP32[$pDbFd>>2] = $6; + HEAP32[$rc>>2] = 0; + $7 = (_unixShmRegionPerMap()|0); + HEAP32[$nShmPerMap>>2] = $7; + $8 = HEAP32[$pDbFd>>2]|0; + $9 = (($8) + 36|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)==(0|0); + if ($11) { + $12 = HEAP32[$pDbFd>>2]|0; + $13 = (_unixOpenSharedMemory($12)|0); + HEAP32[$rc>>2] = $13; + $14 = HEAP32[$rc>>2]|0; + $15 = ($14|0)!=(0); + if ($15) { + $16 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $16; + $188 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($188|0); + } + } + $17 = HEAP32[$pDbFd>>2]|0; + $18 = (($17) + 36|0); + $19 = HEAP32[$18>>2]|0; + HEAP32[$p>>2] = $19; + $20 = HEAP32[$p>>2]|0; + $21 = HEAP32[$20>>2]|0; + HEAP32[$pShmNode>>2] = $21; + $22 = HEAP32[$2>>2]|0; + $23 = HEAP32[$nShmPerMap>>2]|0; + $24 = (($22) + ($23))|0; + $25 = HEAP32[$nShmPerMap>>2]|0; + $26 = (($24|0) / ($25|0))&-1; + $27 = HEAP32[$nShmPerMap>>2]|0; + $28 = Math_imul($26, $27)|0; + HEAP32[$nReqRegion>>2] = $28; + $29 = HEAP32[$pShmNode>>2]|0; + $30 = (($29) + 20|0); + $31 = HEAP16[$30>>1]|0; + $32 = $31&65535; + $33 = HEAP32[$nReqRegion>>2]|0; + $34 = ($32|0)<($33|0); + L6: do { + if ($34) { + $35 = HEAP32[$nReqRegion>>2]|0; + $36 = HEAP32[$3>>2]|0; + $37 = Math_imul($35, $36)|0; + HEAP32[$nByte>>2] = $37; + $38 = HEAP32[$3>>2]|0; + $39 = HEAP32[$pShmNode>>2]|0; + $40 = (($39) + 16|0); + HEAP32[$40>>2] = $38; + $41 = HEAP32[$pShmNode>>2]|0; + $42 = (($41) + 12|0); + $43 = HEAP32[$42>>2]|0; + $44 = ($43|0)>=(0); + L8: do { + if ($44) { + $45 = HEAP32[((43688 + 64|0))>>2]|0; + $46 = HEAP32[$pShmNode>>2]|0; + $47 = (($46) + 12|0); + $48 = HEAP32[$47>>2]|0; + $49 = (FUNCTION_TABLE_iii[$45 & 127]($48,$sStat)|0); + $50 = ($49|0)!=(0); + if ($50) { + HEAP32[$rc>>2] = 4874; + break L6; + } + $51 = (($sStat) + 36|0); + $52 = HEAP32[$51>>2]|0; + $53 = HEAP32[$nByte>>2]|0; + $54 = ($52|0)<($53|0); + if ($54) { + $55 = HEAP32[$4>>2]|0; + $56 = ($55|0)!=(0); + if (!($56)) { + break L6; + } + $57 = (($sStat) + 36|0); + $58 = HEAP32[$57>>2]|0; + $59 = (($58|0) / 4096)&-1; + HEAP32[$iPg>>2] = $59; + while(1) { + $60 = HEAP32[$iPg>>2]|0; + $61 = HEAP32[$nByte>>2]|0; + $62 = (($61|0) / 4096)&-1; + $63 = ($60|0)<($62|0); + if (!($63)) { + break L8; + } + $64 = HEAP32[$pShmNode>>2]|0; + $65 = (($64) + 12|0); + $66 = HEAP32[$65>>2]|0; + $67 = HEAP32[$iPg>>2]|0; + $68 = $67<<12; + $69 = (($68) + 4096)|0; + $70 = (($69) - 1)|0; + $71 = ($70|0)<(0); + $72 = $71 << 31 >> 31; + $73 = (_seekAndWriteFd($66,$70,$72,1784,1,0)|0); + $74 = ($73|0)!=(1); + if ($74) { + break; + } + $80 = HEAP32[$iPg>>2]|0; + $81 = (($80) + 1)|0; + HEAP32[$iPg>>2] = $81; + } + $75 = HEAP32[$pShmNode>>2]|0; + $76 = (($75) + 8|0); + $77 = HEAP32[$76>>2]|0; + HEAP32[$zFile>>2] = $77; + $78 = HEAP32[$zFile>>2]|0; + $79 = (_unixLogErrorAtLine(4874,44112,$78,28353)|0); + HEAP32[$rc>>2] = $79; + break L6; + } + } + } while(0); + $82 = HEAP32[$pShmNode>>2]|0; + $83 = (($82) + 24|0); + $84 = HEAP32[$83>>2]|0; + $85 = HEAP32[$nReqRegion>>2]|0; + $86 = $85<<2; + $87 = (_sqlite3_realloc($84,$86)|0); + HEAP32[$apNew>>2] = $87; + $88 = HEAP32[$apNew>>2]|0; + $89 = ($88|0)!=(0|0); + if (!($89)) { + HEAP32[$rc>>2] = 3082; + break; + } + $90 = HEAP32[$apNew>>2]|0; + $91 = HEAP32[$pShmNode>>2]|0; + $92 = (($91) + 24|0); + HEAP32[$92>>2] = $90; + while(1) { + $93 = HEAP32[$pShmNode>>2]|0; + $94 = (($93) + 20|0); + $95 = HEAP16[$94>>1]|0; + $96 = $95&65535; + $97 = HEAP32[$nReqRegion>>2]|0; + $98 = ($96|0)<($97|0); + if (!($98)) { + break L6; + } + $99 = HEAP32[$3>>2]|0; + $100 = HEAP32[$nShmPerMap>>2]|0; + $101 = Math_imul($99, $100)|0; + HEAP32[$nMap>>2] = $101; + $102 = HEAP32[$pShmNode>>2]|0; + $103 = (($102) + 12|0); + $104 = HEAP32[$103>>2]|0; + $105 = ($104|0)>=(0); + if ($105) { + $106 = HEAP32[((43688 + 256|0))>>2]|0; + $107 = HEAP32[$nMap>>2]|0; + $108 = HEAP32[$pShmNode>>2]|0; + $109 = (($108) + 22|0); + $110 = HEAP8[$109>>0]|0; + $111 = $110&255; + $112 = ($111|0)!=(0); + $113 = $112 ? 1 : 3; + $114 = HEAP32[$pShmNode>>2]|0; + $115 = (($114) + 12|0); + $116 = HEAP32[$115>>2]|0; + $117 = HEAP32[$3>>2]|0; + $118 = ($117|0)<(0); + $119 = $118 << 31 >> 31; + $120 = HEAP32[$pShmNode>>2]|0; + $121 = (($120) + 20|0); + $122 = HEAP16[$121>>1]|0; + $123 = $122&65535; + $124 = (___muldi3(($117|0),($119|0),($123|0),0)|0); + $125 = tempRet0; + $126 = (FUNCTION_TABLE_iiiiiii[$106 & 15](0,$107,$113,1,$116,$124)|0); + HEAP32[$pMem>>2] = $126; + $127 = HEAP32[$pMem>>2]|0; + $128 = ($127|0)==((-1)|0); + if ($128) { + label = 21; + break; + } + } else { + $133 = HEAP32[$3>>2]|0; + $134 = (_sqlite3_malloc($133)|0); + HEAP32[$pMem>>2] = $134; + $135 = HEAP32[$pMem>>2]|0; + $136 = ($135|0)==(0|0); + if ($136) { + label = 23; + break; + } + $137 = HEAP32[$pMem>>2]|0; + $138 = HEAP32[$3>>2]|0; + _memset(($137|0),0,($138|0))|0; + } + HEAP32[$i>>2] = 0; + while(1) { + $139 = HEAP32[$i>>2]|0; + $140 = HEAP32[$nShmPerMap>>2]|0; + $141 = ($139|0)<($140|0); + if (!($141)) { + break; + } + $142 = HEAP32[$3>>2]|0; + $143 = HEAP32[$i>>2]|0; + $144 = Math_imul($142, $143)|0; + $145 = HEAP32[$pMem>>2]|0; + $146 = (($145) + ($144)|0); + $147 = HEAP32[$pShmNode>>2]|0; + $148 = (($147) + 20|0); + $149 = HEAP16[$148>>1]|0; + $150 = $149&65535; + $151 = HEAP32[$i>>2]|0; + $152 = (($150) + ($151))|0; + $153 = HEAP32[$pShmNode>>2]|0; + $154 = (($153) + 24|0); + $155 = HEAP32[$154>>2]|0; + $156 = (($155) + ($152<<2)|0); + HEAP32[$156>>2] = $146; + $157 = HEAP32[$i>>2]|0; + $158 = (($157) + 1)|0; + HEAP32[$i>>2] = $158; + } + $159 = HEAP32[$nShmPerMap>>2]|0; + $160 = HEAP32[$pShmNode>>2]|0; + $161 = (($160) + 20|0); + $162 = HEAP16[$161>>1]|0; + $163 = $162&65535; + $164 = (($163) + ($159))|0; + $165 = $164&65535; + HEAP16[$161>>1] = $165; + } + if ((label|0) == 21) { + $129 = HEAP32[$pShmNode>>2]|0; + $130 = (($129) + 8|0); + $131 = HEAP32[$130>>2]|0; + $132 = (_unixLogErrorAtLine(5386,44216,$131,28380)|0); + HEAP32[$rc>>2] = $132; + break; + } + else if ((label|0) == 23) { + HEAP32[$rc>>2] = 7; + break; + } + } + } while(0); + $166 = HEAP32[$pShmNode>>2]|0; + $167 = (($166) + 20|0); + $168 = HEAP16[$167>>1]|0; + $169 = $168&65535; + $170 = HEAP32[$2>>2]|0; + $171 = ($169|0)>($170|0); + if ($171) { + $172 = HEAP32[$2>>2]|0; + $173 = HEAP32[$pShmNode>>2]|0; + $174 = (($173) + 24|0); + $175 = HEAP32[$174>>2]|0; + $176 = (($175) + ($172<<2)|0); + $177 = HEAP32[$176>>2]|0; + $178 = HEAP32[$5>>2]|0; + HEAP32[$178>>2] = $177; + } else { + $179 = HEAP32[$5>>2]|0; + HEAP32[$179>>2] = 0; + } + $180 = HEAP32[$pShmNode>>2]|0; + $181 = (($180) + 22|0); + $182 = HEAP8[$181>>0]|0; + $183 = $182&255; + $184 = ($183|0)!=(0); + if ($184) { + $185 = HEAP32[$rc>>2]|0; + $186 = ($185|0)==(0); + if ($186) { + HEAP32[$rc>>2] = 8; + } + } + $187 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $187; + $188 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($188|0); +} +function _unixShmLock($fd,$ofst,$n,$flags) { + $fd = $fd|0; + $ofst = $ofst|0; + $n = $n|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; + var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; + var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; + var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; + var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; + var $97 = 0, $98 = 0, $99 = 0, $allMask = 0, $allShared = 0, $mask = 0, $p = 0, $pDbFd = 0, $pShmNode = 0, $pX = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 8|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $pDbFd = sp + 12|0; + $p = sp + 16|0; + $pX = sp + 20|0; + $pShmNode = sp + 4|0; + $rc = sp; + $mask = sp + 40|0; + $allMask = sp + 36|0; + $allShared = sp + 38|0; + HEAP32[$0>>2] = $fd; + HEAP32[$1>>2] = $ofst; + HEAP32[$2>>2] = $n; + HEAP32[$3>>2] = $flags; + $4 = HEAP32[$0>>2]|0; + HEAP32[$pDbFd>>2] = $4; + $5 = HEAP32[$pDbFd>>2]|0; + $6 = (($5) + 36|0); + $7 = HEAP32[$6>>2]|0; + HEAP32[$p>>2] = $7; + $8 = HEAP32[$p>>2]|0; + $9 = HEAP32[$8>>2]|0; + HEAP32[$pShmNode>>2] = $9; + HEAP32[$rc>>2] = 0; + $10 = HEAP32[$1>>2]|0; + $11 = HEAP32[$2>>2]|0; + $12 = (($10) + ($11))|0; + $13 = 1 << $12; + $14 = HEAP32[$1>>2]|0; + $15 = 1 << $14; + $16 = (($13) - ($15))|0; + $17 = $16&65535; + HEAP16[$mask>>1] = $17; + $18 = HEAP32[$3>>2]|0; + $19 = $18 & 1; + $20 = ($19|0)!=(0); + if ($20) { + HEAP16[$allMask>>1] = 0; + $21 = HEAP32[$pShmNode>>2]|0; + $22 = (($21) + 32|0); + $23 = HEAP32[$22>>2]|0; + HEAP32[$pX>>2] = $23; + while(1) { + $24 = HEAP32[$pX>>2]|0; + $25 = ($24|0)!=(0|0); + if (!($25)) { + break; + } + $26 = HEAP32[$pX>>2]|0; + $27 = HEAP32[$p>>2]|0; + $28 = ($26|0)==($27|0); + if (!($28)) { + $29 = HEAP32[$pX>>2]|0; + $30 = (($29) + 10|0); + $31 = HEAP16[$30>>1]|0; + $32 = $31&65535; + $33 = HEAP16[$allMask>>1]|0; + $34 = $33&65535; + $35 = $34 | $32; + $36 = $35&65535; + HEAP16[$allMask>>1] = $36; + } + $37 = HEAP32[$pX>>2]|0; + $38 = (($37) + 4|0); + $39 = HEAP32[$38>>2]|0; + HEAP32[$pX>>2] = $39; + } + $40 = HEAP16[$mask>>1]|0; + $41 = $40&65535; + $42 = HEAP16[$allMask>>1]|0; + $43 = $42&65535; + $44 = $41 & $43; + $45 = ($44|0)==(0); + if ($45) { + $46 = HEAP32[$pShmNode>>2]|0; + $47 = HEAP32[$1>>2]|0; + $48 = (($47) + 120)|0; + $49 = HEAP32[$2>>2]|0; + $50 = (_unixShmSystemLock($46,2,$48,$49)|0); + HEAP32[$rc>>2] = $50; + } else { + HEAP32[$rc>>2] = 0; + } + $51 = HEAP32[$rc>>2]|0; + $52 = ($51|0)==(0); + if (!($52)) { + $162 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($162|0); + } + $53 = HEAP16[$mask>>1]|0; + $54 = $53&65535; + $55 = $54 ^ -1; + $56 = HEAP32[$p>>2]|0; + $57 = (($56) + 12|0); + $58 = HEAP16[$57>>1]|0; + $59 = $58&65535; + $60 = $59 & $55; + $61 = $60&65535; + HEAP16[$57>>1] = $61; + $62 = HEAP16[$mask>>1]|0; + $63 = $62&65535; + $64 = $63 ^ -1; + $65 = HEAP32[$p>>2]|0; + $66 = (($65) + 10|0); + $67 = HEAP16[$66>>1]|0; + $68 = $67&65535; + $69 = $68 & $64; + $70 = $69&65535; + HEAP16[$66>>1] = $70; + $162 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($162|0); + } + $71 = HEAP32[$3>>2]|0; + $72 = $71 & 4; + $73 = ($72|0)!=(0); + if (!($73)) { + $121 = HEAP32[$pShmNode>>2]|0; + $122 = (($121) + 32|0); + $123 = HEAP32[$122>>2]|0; + HEAP32[$pX>>2] = $123; + while(1) { + $124 = HEAP32[$pX>>2]|0; + $125 = ($124|0)!=(0|0); + if (!($125)) { + break; + } + $126 = HEAP32[$pX>>2]|0; + $127 = (($126) + 12|0); + $128 = HEAP16[$127>>1]|0; + $129 = $128&65535; + $130 = HEAP16[$mask>>1]|0; + $131 = $130&65535; + $132 = $129 & $131; + $133 = ($132|0)!=(0); + if ($133) { + label = 28; + break; + } + $134 = HEAP32[$pX>>2]|0; + $135 = (($134) + 10|0); + $136 = HEAP16[$135>>1]|0; + $137 = $136&65535; + $138 = HEAP16[$mask>>1]|0; + $139 = $138&65535; + $140 = $137 & $139; + $141 = ($140|0)!=(0); + if ($141) { + label = 28; + break; + } + $142 = HEAP32[$pX>>2]|0; + $143 = (($142) + 4|0); + $144 = HEAP32[$143>>2]|0; + HEAP32[$pX>>2] = $144; + } + if ((label|0) == 28) { + HEAP32[$rc>>2] = 5; + } + $145 = HEAP32[$rc>>2]|0; + $146 = ($145|0)==(0); + if (!($146)) { + $162 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($162|0); + } + $147 = HEAP32[$pShmNode>>2]|0; + $148 = HEAP32[$1>>2]|0; + $149 = (($148) + 120)|0; + $150 = HEAP32[$2>>2]|0; + $151 = (_unixShmSystemLock($147,1,$149,$150)|0); + HEAP32[$rc>>2] = $151; + $152 = HEAP32[$rc>>2]|0; + $153 = ($152|0)==(0); + if (!($153)) { + $162 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($162|0); + } + $154 = HEAP16[$mask>>1]|0; + $155 = $154&65535; + $156 = HEAP32[$p>>2]|0; + $157 = (($156) + 12|0); + $158 = HEAP16[$157>>1]|0; + $159 = $158&65535; + $160 = $159 | $155; + $161 = $160&65535; + HEAP16[$157>>1] = $161; + $162 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($162|0); + } + HEAP16[$allShared>>1] = 0; + $74 = HEAP32[$pShmNode>>2]|0; + $75 = (($74) + 32|0); + $76 = HEAP32[$75>>2]|0; + HEAP32[$pX>>2] = $76; + while(1) { + $77 = HEAP32[$pX>>2]|0; + $78 = ($77|0)!=(0|0); + if (!($78)) { + break; + } + $79 = HEAP32[$pX>>2]|0; + $80 = (($79) + 12|0); + $81 = HEAP16[$80>>1]|0; + $82 = $81&65535; + $83 = HEAP16[$mask>>1]|0; + $84 = $83&65535; + $85 = $82 & $84; + $86 = ($85|0)!=(0); + if ($86) { + label = 16; + break; + } + $87 = HEAP32[$pX>>2]|0; + $88 = (($87) + 10|0); + $89 = HEAP16[$88>>1]|0; + $90 = $89&65535; + $91 = HEAP16[$allShared>>1]|0; + $92 = $91&65535; + $93 = $92 | $90; + $94 = $93&65535; + HEAP16[$allShared>>1] = $94; + $95 = HEAP32[$pX>>2]|0; + $96 = (($95) + 4|0); + $97 = HEAP32[$96>>2]|0; + HEAP32[$pX>>2] = $97; + } + if ((label|0) == 16) { + HEAP32[$rc>>2] = 5; + } + $98 = HEAP32[$rc>>2]|0; + $99 = ($98|0)==(0); + do { + if ($99) { + $100 = HEAP16[$allShared>>1]|0; + $101 = $100&65535; + $102 = HEAP16[$mask>>1]|0; + $103 = $102&65535; + $104 = $101 & $103; + $105 = ($104|0)==(0); + if ($105) { + $106 = HEAP32[$pShmNode>>2]|0; + $107 = HEAP32[$1>>2]|0; + $108 = (($107) + 120)|0; + $109 = HEAP32[$2>>2]|0; + $110 = (_unixShmSystemLock($106,0,$108,$109)|0); + HEAP32[$rc>>2] = $110; + break; + } else { + HEAP32[$rc>>2] = 0; + break; + } + } + } while(0); + $111 = HEAP32[$rc>>2]|0; + $112 = ($111|0)==(0); + if (!($112)) { + $162 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($162|0); + } + $113 = HEAP16[$mask>>1]|0; + $114 = $113&65535; + $115 = HEAP32[$p>>2]|0; + $116 = (($115) + 10|0); + $117 = HEAP16[$116>>1]|0; + $118 = $117&65535; + $119 = $118 | $114; + $120 = $119&65535; + HEAP16[$116>>1] = $120; + $162 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($162|0); +} +function _unixShmBarrier($fd) { + $fd = $fd|0; + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $fd; + _unixEnterMutex(); + _unixLeaveMutex(); + STACKTOP = sp;return; +} +function _unixShmUnmap($fd,$deleteFlag) { + $fd = $fd|0; + $deleteFlag = $deleteFlag|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0, $pDbFd = 0, $pShmNode = 0, $pp = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 24|0; + $1 = sp; + $2 = sp + 4|0; + $p = sp + 8|0; + $pShmNode = sp + 12|0; + $pp = sp + 16|0; + $pDbFd = sp + 20|0; + HEAP32[$1>>2] = $fd; + HEAP32[$2>>2] = $deleteFlag; + $3 = HEAP32[$1>>2]|0; + HEAP32[$pDbFd>>2] = $3; + $4 = HEAP32[$pDbFd>>2]|0; + $5 = (($4) + 36|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$p>>2] = $6; + $7 = HEAP32[$p>>2]|0; + $8 = ($7|0)==(0|0); + if ($8) { + HEAP32[$0>>2] = 0; + $46 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($46|0); + } + $9 = HEAP32[$p>>2]|0; + $10 = HEAP32[$9>>2]|0; + HEAP32[$pShmNode>>2] = $10; + $11 = HEAP32[$pShmNode>>2]|0; + $12 = (($11) + 32|0); + HEAP32[$pp>>2] = $12; + while(1) { + $13 = HEAP32[$pp>>2]|0; + $14 = HEAP32[$13>>2]|0; + $15 = HEAP32[$p>>2]|0; + $16 = ($14|0)!=($15|0); + if (!($16)) { + break; + } + $17 = HEAP32[$pp>>2]|0; + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + 4|0); + HEAP32[$pp>>2] = $19; + } + $20 = HEAP32[$p>>2]|0; + $21 = (($20) + 4|0); + $22 = HEAP32[$21>>2]|0; + $23 = HEAP32[$pp>>2]|0; + HEAP32[$23>>2] = $22; + $24 = HEAP32[$p>>2]|0; + _sqlite3_free($24); + $25 = HEAP32[$pDbFd>>2]|0; + $26 = (($25) + 36|0); + HEAP32[$26>>2] = 0; + _unixEnterMutex(); + $27 = HEAP32[$pShmNode>>2]|0; + $28 = (($27) + 28|0); + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + -1)|0; + HEAP32[$28>>2] = $30; + $31 = HEAP32[$pShmNode>>2]|0; + $32 = (($31) + 28|0); + $33 = HEAP32[$32>>2]|0; + $34 = ($33|0)==(0); + if ($34) { + $35 = HEAP32[$2>>2]|0; + $36 = ($35|0)!=(0); + if ($36) { + $37 = HEAP32[$pShmNode>>2]|0; + $38 = (($37) + 12|0); + $39 = HEAP32[$38>>2]|0; + $40 = ($39|0)>=(0); + if ($40) { + $41 = HEAP32[((43688 + 196|0))>>2]|0; + $42 = HEAP32[$pShmNode>>2]|0; + $43 = (($42) + 8|0); + $44 = HEAP32[$43>>2]|0; + (FUNCTION_TABLE_ii[$41 & 63]($44)|0); + } + } + $45 = HEAP32[$pDbFd>>2]|0; + _unixShmPurge($45); + } + _unixLeaveMutex(); + HEAP32[$0>>2] = 0; + $46 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($46|0); +} +function _unixFetch($fd,$0,$1,$nAmt,$pp) { + $fd = $fd|0; + $0 = $0|0; + $1 = $1|0; + $nAmt = $nAmt|0; + $pp = $pp|0; + var $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 16|0; + $3 = sp; + $4 = sp + 8|0; + $5 = sp + 12|0; + HEAP32[$2>>2] = $fd; + $6 = $3; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + HEAP32[$4>>2] = $nAmt; + HEAP32[$5>>2] = $pp; + $10 = HEAP32[$5>>2]|0; + HEAP32[$10>>2] = 0; + STACKTOP = sp;return 0; +} +function _unixUnfetch($fd,$0,$1,$p) { + $fd = $fd|0; + $0 = $0|0; + $1 = $1|0; + $p = $p|0; + var $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp + 12|0; + $3 = sp; + $4 = sp + 8|0; + HEAP32[$2>>2] = $fd; + $5 = $3; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + HEAP32[$4>>2] = $p; + STACKTOP = sp;return 0; +} +function _unixEnterMutex() { + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = sp;return; +} +function _unixShmPurge($pFd) { + $pFd = $pFd|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $nShmPerMap = 0; + var $p = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $p = sp; + $nShmPerMap = sp + 4|0; + $i = sp + 8|0; + HEAP32[$0>>2] = $pFd; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + $4 = (($3) + 20|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$p>>2] = $5; + $6 = HEAP32[$p>>2]|0; + $7 = ($6|0)!=(0|0); + if (!($7)) { + STACKTOP = sp;return; + } + $8 = HEAP32[$p>>2]|0; + $9 = (($8) + 28|0); + $10 = HEAP32[$9>>2]|0; + $11 = ($10|0)==(0); + if (!($11)) { + STACKTOP = sp;return; + } + $12 = (_unixShmRegionPerMap()|0); + HEAP32[$nShmPerMap>>2] = $12; + HEAP32[$i>>2] = 0; + while(1) { + $13 = HEAP32[$i>>2]|0; + $14 = HEAP32[$p>>2]|0; + $15 = (($14) + 20|0); + $16 = HEAP16[$15>>1]|0; + $17 = $16&65535; + $18 = ($13|0)<($17|0); + $19 = HEAP32[$p>>2]|0; + if (!($18)) { + break; + } + $20 = (($19) + 12|0); + $21 = HEAP32[$20>>2]|0; + $22 = ($21|0)>=(0); + if ($22) { + $23 = HEAP32[((43688 + 268|0))>>2]|0; + $24 = HEAP32[$i>>2]|0; + $25 = HEAP32[$p>>2]|0; + $26 = (($25) + 24|0); + $27 = HEAP32[$26>>2]|0; + $28 = (($27) + ($24<<2)|0); + $29 = HEAP32[$28>>2]|0; + $30 = HEAP32[$p>>2]|0; + $31 = (($30) + 16|0); + $32 = HEAP32[$31>>2]|0; + (FUNCTION_TABLE_iii[$23 & 127]($29,$32)|0); + } else { + $33 = HEAP32[$i>>2]|0; + $34 = HEAP32[$p>>2]|0; + $35 = (($34) + 24|0); + $36 = HEAP32[$35>>2]|0; + $37 = (($36) + ($33<<2)|0); + $38 = HEAP32[$37>>2]|0; + _sqlite3_free($38); + } + $39 = HEAP32[$nShmPerMap>>2]|0; + $40 = HEAP32[$i>>2]|0; + $41 = (($40) + ($39))|0; + HEAP32[$i>>2] = $41; + } + $42 = (($19) + 24|0); + $43 = HEAP32[$42>>2]|0; + _sqlite3_free($43); + $44 = HEAP32[$p>>2]|0; + $45 = (($44) + 12|0); + $46 = HEAP32[$45>>2]|0; + $47 = ($46|0)>=(0); + if ($47) { + $48 = HEAP32[$0>>2]|0; + $49 = HEAP32[$p>>2]|0; + $50 = (($49) + 12|0); + $51 = HEAP32[$50>>2]|0; + _robust_close($48,$51,28094); + $52 = HEAP32[$p>>2]|0; + $53 = (($52) + 12|0); + HEAP32[$53>>2] = -1; + } + $54 = HEAP32[$p>>2]|0; + $55 = HEAP32[$54>>2]|0; + $56 = (($55) + 20|0); + HEAP32[$56>>2] = 0; + $57 = HEAP32[$p>>2]|0; + _sqlite3_free($57); + STACKTOP = sp;return; +} +function _unixLeaveMutex() { + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = sp;return; +} +function _unixShmRegionPerMap() { + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pgsz = 0, $shmsz = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $shmsz = sp; + $pgsz = sp + 4|0; + HEAP32[$shmsz>>2] = 32768; + $1 = HEAP32[((43688 + 292|0))>>2]|0; + $2 = (FUNCTION_TABLE_i[$1 & 1]()|0); + HEAP32[$pgsz>>2] = $2; + $3 = HEAP32[$pgsz>>2]|0; + $4 = HEAP32[$shmsz>>2]|0; + $5 = ($3|0)<($4|0); + if ($5) { + HEAP32[$0>>2] = 1; + $9 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($9|0); + } else { + $6 = HEAP32[$pgsz>>2]|0; + $7 = HEAP32[$shmsz>>2]|0; + $8 = (($6|0) / ($7|0))&-1; + HEAP32[$0>>2] = $8; + $9 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($9|0); + } + return 0|0; +} +function _robust_close($pFile,$h,$lineno) { + $pFile = $pFile|0; + $h = $h|0; + $lineno = $lineno|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $pFile; + HEAP32[$1>>2] = $h; + HEAP32[$2>>2] = $lineno; + $3 = HEAP32[((43688 + 16|0))>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (FUNCTION_TABLE_ii[$3 & 63]($4)|0); + $6 = ($5|0)!=(0); + if (!($6)) { + STACKTOP = sp;return; + } + $7 = HEAP32[$0>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = HEAP32[$0>>2]|0; + $10 = (($9) + 32|0); + $11 = HEAP32[$10>>2]|0; + $13 = $11; + } else { + $13 = 0; + } + $12 = HEAP32[$2>>2]|0; + (_unixLogErrorAtLine(4106,43992,$13,$12)|0); + STACKTOP = sp;return; +} +function _unixLogErrorAtLine($errcode,$zFunc,$zPath,$iLine) { + $errcode = $errcode|0; + $zFunc = $zFunc|0; + $zPath = $zPath|0; + $iLine = $iLine|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $iErrno = 0, $vararg_buffer = 0, $vararg_ptr1 = 0; + var $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, $zErr = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 40|0; + $1 = sp + 20|0; + $2 = sp + 24|0; + $3 = sp + 28|0; + $zErr = sp + 32|0; + $iErrno = sp + 36|0; + HEAP32[$0>>2] = $errcode; + HEAP32[$1>>2] = $zFunc; + HEAP32[$2>>2] = $zPath; + HEAP32[$3>>2] = $iLine; + $4 = (___errno_location()|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$iErrno>>2] = $5; + $6 = HEAP32[$iErrno>>2]|0; + $7 = (_strerror(($6|0))|0); + HEAP32[$zErr>>2] = $7; + $8 = HEAP32[$2>>2]|0; + $9 = ($8|0)==(0|0); + if ($9) { + HEAP32[$2>>2] = 1784; + } + $10 = HEAP32[$0>>2]|0; + $11 = HEAP32[$3>>2]|0; + $12 = HEAP32[$iErrno>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$zErr>>2]|0; + HEAP32[$vararg_buffer>>2] = $11; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $12; + $vararg_ptr2 = (($vararg_buffer) + 8|0); + HEAP32[$vararg_ptr2>>2] = $13; + $vararg_ptr3 = (($vararg_buffer) + 12|0); + HEAP32[$vararg_ptr3>>2] = $14; + $vararg_ptr4 = (($vararg_buffer) + 16|0); + HEAP32[$vararg_ptr4>>2] = $15; + _sqlite3_log($10,44000,$vararg_buffer); + $16 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($16|0); +} +function _posixOpen($zFile,$flags,$mode) { + $zFile = $zFile|0; + $flags = $flags|0; + $mode = $mode|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $vararg_buffer = sp; + $0 = sp + 12|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + HEAP32[$0>>2] = $zFile; + HEAP32[$1>>2] = $flags; + HEAP32[$2>>2] = $mode; + $3 = HEAP32[$0>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer>>2] = $5; + $6 = (_open(($3|0),($4|0),($vararg_buffer|0))|0); + STACKTOP = sp;return ($6|0); +} +function _openDirectory($zFilename,$pFd) { + $zFilename = $zFilename|0; + $pFd = $pFd|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $fd = 0, $ii = 0, $vararg_buffer = 0, $zDirname = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 544|0; + $vararg_buffer = sp; + $0 = sp + 16|0; + $1 = sp + 4|0; + $ii = sp + 8|0; + $fd = sp + 12|0; + $zDirname = sp + 20|0; + HEAP32[$0>>2] = $zFilename; + HEAP32[$1>>2] = $pFd; + HEAP32[$fd>>2] = -1; + $2 = HEAP32[$0>>2]|0; + HEAP32[$vararg_buffer>>2] = $2; + (_sqlite3_snprintf(512,$zDirname,1768,$vararg_buffer)|0); + $3 = (_strlen(($zDirname|0))|0); + HEAP32[$ii>>2] = $3; + while(1) { + $4 = HEAP32[$ii>>2]|0; + $5 = ($4|0)>(1); + if (!($5)) { + break; + } + $6 = HEAP32[$ii>>2]|0; + $7 = (($zDirname) + ($6)|0); + $8 = HEAP8[$7>>0]|0; + $9 = $8 << 24 >> 24; + $10 = ($9|0)!=(47); + if (!($10)) { + break; + } + $11 = HEAP32[$ii>>2]|0; + $12 = (($11) + -1)|0; + HEAP32[$ii>>2] = $12; + } + $13 = HEAP32[$ii>>2]|0; + $14 = ($13|0)>(0); + if ($14) { + $15 = HEAP32[$ii>>2]|0; + $16 = (($zDirname) + ($15)|0); + HEAP8[$16>>0] = 0; + $17 = (_robust_open($zDirname,0,0)|0); + HEAP32[$fd>>2] = $17; + } + $18 = HEAP32[$fd>>2]|0; + $19 = HEAP32[$1>>2]|0; + HEAP32[$19>>2] = $18; + $20 = HEAP32[$fd>>2]|0; + $21 = ($20|0)>=(0); + if ($21) { + $24 = 0; + STACKTOP = sp;return ($24|0); + } + $22 = (_sqlite3CantopenError(27442)|0); + $23 = (_unixLogErrorAtLine($22,44032,$zDirname,27442)|0); + $24 = $23; + STACKTOP = sp;return ($24|0); +} +function _posixFchown($fd,$uid,$gid) { + $fd = $fd|0; + $uid = $uid|0; + $gid = $gid|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$0>>2] = $fd; + HEAP32[$1>>2] = $uid; + HEAP32[$2>>2] = $gid; + $3 = (_geteuid()|0); + $4 = ($3|0)!=(0); + if ($4) { + $9 = 0; + STACKTOP = sp;return ($9|0); + } + $5 = HEAP32[$0>>2]|0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$2>>2]|0; + $8 = (_fchown(($5|0),($6|0),($7|0))|0); + $9 = $8; + STACKTOP = sp;return ($9|0); +} +function _unixGetpagesize() { + var $0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_sysconf(30)|0); + STACKTOP = sp;return ($0|0); +} +function _robust_open($z,$f,$m) { + $z = $z|0; + $f = $f|0; + $m = $m|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $fd = 0, $m2 = 0, $statbuf = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $vararg_buffer = sp; + $0 = sp + 100|0; + $1 = sp + 8|0; + $2 = sp + 12|0; + $fd = sp + 16|0; + $m2 = sp + 20|0; + $statbuf = sp + 24|0; + HEAP32[$0>>2] = $z; + HEAP32[$1>>2] = $f; + HEAP32[$2>>2] = $m; + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0); + $5 = HEAP32[$2>>2]|0; + $6 = $4 ? $5 : 420; + HEAP32[$m2>>2] = $6; + while(1) { + $7 = HEAP32[((43688 + 4|0))>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = HEAP32[$1>>2]|0; + $10 = $9 | 524288; + $11 = HEAP32[$m2>>2]|0; + $12 = (FUNCTION_TABLE_iiii[$7 & 31]($8,$10,$11)|0); + HEAP32[$fd>>2] = $12; + $13 = HEAP32[$fd>>2]|0; + $14 = ($13|0)<(0); + if ($14) { + $15 = (___errno_location()|0); + $16 = HEAP32[$15>>2]|0; + $17 = ($16|0)==(4); + if ($17) { + continue; + } else { + break; + } + } + $18 = HEAP32[$fd>>2]|0; + $19 = ($18|0)>=(3); + if ($19) { + break; + } + $20 = HEAP32[((43688 + 16|0))>>2]|0; + $21 = HEAP32[$fd>>2]|0; + (FUNCTION_TABLE_ii[$20 & 63]($21)|0); + $22 = HEAP32[$0>>2]|0; + $23 = HEAP32[$fd>>2]|0; + HEAP32[$vararg_buffer>>2] = $22; + $vararg_ptr1 = (($vararg_buffer) + 4|0); + HEAP32[$vararg_ptr1>>2] = $23; + _sqlite3_log(28,44256,$vararg_buffer); + HEAP32[$fd>>2] = -1; + $24 = HEAP32[((43688 + 4|0))>>2]|0; + $25 = HEAP32[$1>>2]|0; + $26 = HEAP32[$2>>2]|0; + $27 = (FUNCTION_TABLE_iiii[$24 & 31](44304,$25,$26)|0); + $28 = ($27|0)<(0); + if ($28) { + break; + } + } + $29 = HEAP32[$fd>>2]|0; + $30 = ($29|0)>=(0); + if (!($30)) { + $48 = HEAP32[$fd>>2]|0; + STACKTOP = sp;return ($48|0); + } + $31 = HEAP32[$2>>2]|0; + $32 = ($31|0)!=(0); + if (!($32)) { + $48 = HEAP32[$fd>>2]|0; + STACKTOP = sp;return ($48|0); + } + $33 = HEAP32[((43688 + 64|0))>>2]|0; + $34 = HEAP32[$fd>>2]|0; + $35 = (FUNCTION_TABLE_iii[$33 & 127]($34,$statbuf)|0); + $36 = ($35|0)==(0); + if (!($36)) { + $48 = HEAP32[$fd>>2]|0; + STACKTOP = sp;return ($48|0); + } + $37 = (($statbuf) + 36|0); + $38 = HEAP32[$37>>2]|0; + $39 = ($38|0)==(0); + if (!($39)) { + $48 = HEAP32[$fd>>2]|0; + STACKTOP = sp;return ($48|0); + } + $40 = (($statbuf) + 12|0); + $41 = HEAP32[$40>>2]|0; + $42 = $41 & 511; + $43 = HEAP32[$2>>2]|0; + $44 = ($42|0)!=($43|0); + if (!($44)) { + $48 = HEAP32[$fd>>2]|0; + STACKTOP = sp;return ($48|0); + } + $45 = HEAP32[((43688 + 172|0))>>2]|0; + $46 = HEAP32[$fd>>2]|0; + $47 = HEAP32[$2>>2]|0; + (FUNCTION_TABLE_iii[$45 & 127]($46,$47)|0); + $48 = HEAP32[$fd>>2]|0; + STACKTOP = sp;return ($48|0); +} +function _unixShmSystemLock($pShmNode,$lockType,$ofst,$n) { + $pShmNode = $pShmNode|0; + $lockType = $lockType|0; + $ofst = $ofst|0; + $n = $n|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $f = 0, $rc = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 36|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $3 = sp + 12|0; + $f = sp + 16|0; + $rc = sp + 32|0; + HEAP32[$0>>2] = $pShmNode; + HEAP32[$1>>2] = $lockType; + HEAP32[$2>>2] = $ofst; + HEAP32[$3>>2] = $n; + HEAP32[$rc>>2] = 0; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 12|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)>=(0); + if (!($7)) { + $23 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($23|0); + } + ;HEAP32[$f+0>>2]=0|0;HEAP32[$f+4>>2]=0|0;HEAP32[$f+8>>2]=0|0;HEAP32[$f+12>>2]=0|0; + $8 = HEAP32[$1>>2]|0; + $9 = $8&65535; + HEAP16[$f>>1] = $9; + $10 = (($f) + 2|0); + HEAP16[$10>>1] = 0; + $11 = HEAP32[$2>>2]|0; + $12 = (($f) + 4|0); + HEAP32[$12>>2] = $11; + $13 = HEAP32[$3>>2]|0; + $14 = (($f) + 8|0); + HEAP32[$14>>2] = $13; + $15 = HEAP32[((43688 + 88|0))>>2]|0; + $16 = HEAP32[$0>>2]|0; + $17 = (($16) + 12|0); + $18 = HEAP32[$17>>2]|0; + HEAP32[$vararg_buffer>>2] = $f; + $19 = (FUNCTION_TABLE_iiii[$15 & 31]($18,13,$vararg_buffer)|0); + HEAP32[$rc>>2] = $19; + $20 = HEAP32[$rc>>2]|0; + $21 = ($20|0)!=(-1); + $22 = $21 ? 0 : 5; + HEAP32[$rc>>2] = $22; + $23 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($23|0); +} +function _unixOpenSharedMemory($pDbFd) { + $pDbFd = $pDbFd|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; + var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; + var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; + var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; + var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $nShmFilename = 0, $openFlags = 0, $p = 0, $pInode = 0; + var $pShmNode = 0, $rc = 0, $sStat = 0, $vararg_buffer = 0, $zShmFilename = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $vararg_buffer = sp; + $0 = sp + 108|0; + $1 = sp + 104|0; + $p = sp + 100|0; + $pShmNode = sp + 96|0; + $rc = sp + 112|0; + $pInode = sp + 12|0; + $zShmFilename = sp + 8|0; + $nShmFilename = sp + 4|0; + $sStat = sp + 16|0; + $openFlags = sp + 92|0; + HEAP32[$1>>2] = $pDbFd; + HEAP32[$p>>2] = 0; + $2 = (_sqlite3_malloc(16)|0); + HEAP32[$p>>2] = $2; + $3 = HEAP32[$p>>2]|0; + $4 = ($3|0)==(0|0); + if ($4) { + HEAP32[$0>>2] = 7; + $135 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($135|0); + } + $5 = HEAP32[$p>>2]|0; + ;HEAP32[$5+0>>2]=0|0;HEAP32[$5+4>>2]=0|0;HEAP32[$5+8>>2]=0|0;HEAP32[$5+12>>2]=0|0; + _unixEnterMutex(); + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 8|0); + $8 = HEAP32[$7>>2]|0; + HEAP32[$pInode>>2] = $8; + $9 = HEAP32[$pInode>>2]|0; + $10 = (($9) + 20|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$pShmNode>>2] = $11; + $12 = HEAP32[$pShmNode>>2]|0; + $13 = ($12|0)==(0|0); + L5: do { + if ($13) { + $14 = HEAP32[((43688 + 64|0))>>2]|0; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 12|0); + $17 = HEAP32[$16>>2]|0; + $18 = (FUNCTION_TABLE_iii[$14 & 127]($17,$sStat)|0); + $19 = ($18|0)!=(0); + if ($19) { + $20 = HEAP32[$pInode>>2]|0; + $21 = (($20) + 13|0); + $22 = HEAP8[$21>>0]|0; + $23 = $22&255; + $24 = ($23|0)==(0); + if ($24) { + HEAP32[$rc>>2] = 1802; + } else { + label = 7; + } + } else { + label = 7; + } + do { + if ((label|0) == 7) { + $25 = HEAP32[$1>>2]|0; + $26 = (($25) + 32|0); + $27 = HEAP32[$26>>2]|0; + $28 = (_strlen(($27|0))|0); + $29 = (6 + ($28))|0; + HEAP32[$nShmFilename>>2] = $29; + $30 = HEAP32[$nShmFilename>>2]|0; + $31 = (36 + ($30))|0; + $32 = (_sqlite3_malloc($31)|0); + HEAP32[$pShmNode>>2] = $32; + $33 = HEAP32[$pShmNode>>2]|0; + $34 = ($33|0)==(0|0); + if ($34) { + HEAP32[$rc>>2] = 7; + break; + } + $35 = HEAP32[$pShmNode>>2]|0; + $36 = HEAP32[$nShmFilename>>2]|0; + $37 = (36 + ($36))|0; + _memset(($35|0),0,($37|0))|0; + $38 = HEAP32[$pShmNode>>2]|0; + $39 = (($38) + 36|0); + $40 = HEAP32[$pShmNode>>2]|0; + $41 = (($40) + 8|0); + HEAP32[$41>>2] = $39; + HEAP32[$zShmFilename>>2] = $39; + $42 = HEAP32[$nShmFilename>>2]|0; + $43 = HEAP32[$zShmFilename>>2]|0; + $44 = HEAP32[$1>>2]|0; + $45 = (($44) + 32|0); + $46 = HEAP32[$45>>2]|0; + HEAP32[$vararg_buffer>>2] = $46; + (_sqlite3_snprintf($42,$43,44320,$vararg_buffer)|0); + $47 = HEAP32[$pShmNode>>2]|0; + $48 = (($47) + 12|0); + HEAP32[$48>>2] = -1; + $49 = HEAP32[$pShmNode>>2]|0; + $50 = HEAP32[$1>>2]|0; + $51 = (($50) + 8|0); + $52 = HEAP32[$51>>2]|0; + $53 = (($52) + 20|0); + HEAP32[$53>>2] = $49; + $54 = HEAP32[$1>>2]|0; + $55 = (($54) + 8|0); + $56 = HEAP32[$55>>2]|0; + $57 = HEAP32[$pShmNode>>2]|0; + HEAP32[$57>>2] = $56; + $58 = HEAP32[$pShmNode>>2]|0; + $59 = (($58) + 4|0); + HEAP32[$59>>2] = (8); + $60 = HEAP32[$pShmNode>>2]|0; + $61 = (($60) + 4|0); + $62 = HEAP32[$61>>2]|0; + $63 = ($62|0)==(0|0); + if ($63) { + HEAP32[$rc>>2] = 7; + break; + } + $64 = HEAP32[$pInode>>2]|0; + $65 = (($64) + 13|0); + $66 = HEAP8[$65>>0]|0; + $67 = $66&255; + $68 = ($67|0)==(0); + if (!($68)) { + break L5; + } + HEAP32[$openFlags>>2] = 66; + $69 = HEAP32[$1>>2]|0; + $70 = (($69) + 32|0); + $71 = HEAP32[$70>>2]|0; + $72 = (_sqlite3_uri_boolean($71,44328,0)|0); + $73 = ($72|0)!=(0); + if ($73) { + HEAP32[$openFlags>>2] = 0; + $74 = HEAP32[$pShmNode>>2]|0; + $75 = (($74) + 22|0); + HEAP8[$75>>0] = 1; + } + $76 = HEAP32[$zShmFilename>>2]|0; + $77 = HEAP32[$openFlags>>2]|0; + $78 = (($sStat) + 12|0); + $79 = HEAP32[$78>>2]|0; + $80 = $79 & 511; + $81 = (_robust_open($76,$77,$80)|0); + $82 = HEAP32[$pShmNode>>2]|0; + $83 = (($82) + 12|0); + HEAP32[$83>>2] = $81; + $84 = HEAP32[$pShmNode>>2]|0; + $85 = (($84) + 12|0); + $86 = HEAP32[$85>>2]|0; + $87 = ($86|0)<(0); + if ($87) { + $88 = (_sqlite3CantopenError(28206)|0); + $89 = HEAP32[$zShmFilename>>2]|0; + $90 = (_unixLogErrorAtLine($88,44032,$89,28206)|0); + HEAP32[$rc>>2] = $90; + break; + } + $91 = HEAP32[((43688 + 244|0))>>2]|0; + $92 = HEAP32[$pShmNode>>2]|0; + $93 = (($92) + 12|0); + $94 = HEAP32[$93>>2]|0; + $95 = (($sStat) + 20|0); + $96 = HEAP32[$95>>2]|0; + $97 = (($sStat) + 24|0); + $98 = HEAP32[$97>>2]|0; + (FUNCTION_TABLE_iiii[$91 & 31]($94,$96,$98)|0); + HEAP32[$rc>>2] = 0; + $99 = HEAP32[$pShmNode>>2]|0; + $100 = (_unixShmSystemLock($99,1,128,1)|0); + $101 = ($100|0)==(0); + if ($101) { + $102 = HEAP32[$pShmNode>>2]|0; + $103 = (($102) + 12|0); + $104 = HEAP32[$103>>2]|0; + $105 = (_robust_ftruncate($104,0,0)|0); + $106 = ($105|0)!=(0); + if ($106) { + $107 = HEAP32[$zShmFilename>>2]|0; + $108 = (_unixLogErrorAtLine(4618,44064,$107,28222)|0); + HEAP32[$rc>>2] = $108; + } + } + $109 = HEAP32[$rc>>2]|0; + $110 = ($109|0)==(0); + if ($110) { + $111 = HEAP32[$pShmNode>>2]|0; + $112 = (_unixShmSystemLock($111,0,128,1)|0); + HEAP32[$rc>>2] = $112; + } + $113 = HEAP32[$rc>>2]|0; + $114 = ($113|0)!=(0); + if (!($114)) { + break L5; + } + } + } while(0); + $132 = HEAP32[$1>>2]|0; + _unixShmPurge($132); + $133 = HEAP32[$p>>2]|0; + _sqlite3_free($133); + _unixLeaveMutex(); + $134 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $134; + $135 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($135|0); + } + } while(0); + $115 = HEAP32[$pShmNode>>2]|0; + $116 = HEAP32[$p>>2]|0; + HEAP32[$116>>2] = $115; + $117 = HEAP32[$pShmNode>>2]|0; + $118 = (($117) + 28|0); + $119 = HEAP32[$118>>2]|0; + $120 = (($119) + 1)|0; + HEAP32[$118>>2] = $120; + $121 = HEAP32[$p>>2]|0; + $122 = HEAP32[$1>>2]|0; + $123 = (($122) + 36|0); + HEAP32[$123>>2] = $121; + _unixLeaveMutex(); + $124 = HEAP32[$pShmNode>>2]|0; + $125 = (($124) + 32|0); + $126 = HEAP32[$125>>2]|0; + $127 = HEAP32[$p>>2]|0; + $128 = (($127) + 4|0); + HEAP32[$128>>2] = $126; + $129 = HEAP32[$p>>2]|0; + $130 = HEAP32[$pShmNode>>2]|0; + $131 = (($130) + 32|0); + HEAP32[$131>>2] = $129; + HEAP32[$0>>2] = 0; + $135 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($135|0); +} +function _seekAndWriteFd($fd,$0,$1,$pBuf,$nBuf,$piErrno) { + $fd = $fd|0; + $0 = $0|0; + $1 = $1|0; + $pBuf = $pBuf|0; + $nBuf = $nBuf|0; + $piErrno = $piErrno|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; + var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; + var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; + var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $8 = 0, $9 = 0, $iSeek = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $4 = sp; + $5 = sp + 16|0; + $6 = sp + 20|0; + $7 = sp + 24|0; + $rc = sp + 28|0; + $iSeek = sp + 8|0; + HEAP32[$3>>2] = $fd; + $8 = $4; + $9 = $8; + HEAP32[$9>>2] = $0; + $10 = (($8) + 4)|0; + $11 = $10; + HEAP32[$11>>2] = $1; + HEAP32[$5>>2] = $pBuf; + HEAP32[$6>>2] = $nBuf; + HEAP32[$7>>2] = $piErrno; + HEAP32[$rc>>2] = 0; + $12 = HEAP32[$6>>2]|0; + $13 = $12 & 131071; + HEAP32[$6>>2] = $13; + while(1) { + $14 = HEAP32[$3>>2]|0; + $15 = $4; + $16 = $15; + $17 = HEAP32[$16>>2]|0; + $18 = (($15) + 4)|0; + $19 = $18; + $20 = HEAP32[$19>>2]|0; + $21 = (_lseek(($14|0),($17|0),0)|0); + $22 = ($21|0)<(0); + $23 = $22 << 31 >> 31; + $24 = $iSeek; + $25 = $24; + HEAP32[$25>>2] = $21; + $26 = (($24) + 4)|0; + $27 = $26; + HEAP32[$27>>2] = $23; + $28 = $iSeek; + $29 = $28; + $30 = HEAP32[$29>>2]|0; + $31 = (($28) + 4)|0; + $32 = $31; + $33 = HEAP32[$32>>2]|0; + $34 = $4; + $35 = $34; + $36 = HEAP32[$35>>2]|0; + $37 = (($34) + 4)|0; + $38 = $37; + $39 = HEAP32[$38>>2]|0; + $40 = ($30|0)!=($36|0); + $41 = ($33|0)!=($39|0); + $42 = $40 | $41; + if ($42) { + break; + } + $58 = HEAP32[((43688 + 136|0))>>2]|0; + $59 = HEAP32[$3>>2]|0; + $60 = HEAP32[$5>>2]|0; + $61 = HEAP32[$6>>2]|0; + $62 = (FUNCTION_TABLE_iiii[$58 & 31]($59,$60,$61)|0); + HEAP32[$rc>>2] = $62; + $63 = HEAP32[$rc>>2]|0; + $64 = ($63|0)<(0); + if (!($64)) { + label = 10; + break; + } + $65 = (___errno_location()|0); + $66 = HEAP32[$65>>2]|0; + $67 = ($66|0)==(4); + if (!($67)) { + label = 10; + break; + } + } + if ((label|0) == 10) { + $68 = HEAP32[$rc>>2]|0; + $69 = ($68|0)<(0); + if ($69) { + $70 = HEAP32[$7>>2]|0; + $71 = ($70|0)!=(0|0); + if ($71) { + $72 = (___errno_location()|0); + $73 = HEAP32[$72>>2]|0; + $74 = HEAP32[$7>>2]|0; + HEAP32[$74>>2] = $73; + } + } + $75 = HEAP32[$rc>>2]|0; + HEAP32[$2>>2] = $75; + $76 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($76|0); + } + $43 = HEAP32[$7>>2]|0; + $44 = ($43|0)!=(0|0); + if ($44) { + $45 = $iSeek; + $46 = $45; + $47 = HEAP32[$46>>2]|0; + $48 = (($45) + 4)|0; + $49 = $48; + $50 = HEAP32[$49>>2]|0; + $51 = ($47|0)==(-1); + $52 = ($50|0)==(-1); + $53 = $51 & $52; + if ($53) { + $54 = (___errno_location()|0); + $55 = HEAP32[$54>>2]|0; + $57 = $55; + } else { + $57 = 0; + } + $56 = HEAP32[$7>>2]|0; + HEAP32[$56>>2] = $57; + } + HEAP32[$2>>2] = -1; + $76 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($76|0); +} +function _robust_ftruncate($h,$0,$1) { + $h = $h|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $2 = sp + 12|0; + $3 = sp; + $rc = sp + 8|0; + HEAP32[$2>>2] = $h; + $4 = $3; + $5 = $4; + HEAP32[$5>>2] = $0; + $6 = (($4) + 4)|0; + $7 = $6; + HEAP32[$7>>2] = $1; + while(1) { + $8 = HEAP32[((43688 + 76|0))>>2]|0; + $9 = HEAP32[$2>>2]|0; + $10 = $3; + $11 = $10; + $12 = HEAP32[$11>>2]|0; + $13 = (($10) + 4)|0; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (FUNCTION_TABLE_iii[$8 & 127]($9,$12)|0); + HEAP32[$rc>>2] = $16; + $17 = HEAP32[$rc>>2]|0; + $18 = ($17|0)<(0); + if (!($18)) { + label = 4; + break; + } + $19 = (___errno_location()|0); + $20 = HEAP32[$19>>2]|0; + $21 = ($20|0)==(4); + if (!($21)) { + label = 4; + break; + } + } + if ((label|0) == 4) { + $22 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($22|0); + } + return 0|0; +} +function _fcntlSizeHint($pFile,$0,$1) { + $pFile = $pFile|0; + $0 = $0|0; + $1 = $1|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0; + var $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0; + var $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; + var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; + var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; + var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; + var $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0; + var $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $buf = 0, $iWrite = 0, $nBlk = 0, $nSize = 0, $nWrite = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 128|0; + $2 = sp + 112|0; + $3 = sp + 104|0; + $4 = sp + 8|0; + $nSize = sp; + $buf = sp + 24|0; + $nBlk = sp + 100|0; + $iWrite = sp + 16|0; + $nWrite = sp + 108|0; + HEAP32[$3>>2] = $pFile; + $5 = $4; + $6 = $5; + HEAP32[$6>>2] = $0; + $7 = (($5) + 4)|0; + $8 = $7; + HEAP32[$8>>2] = $1; + $9 = HEAP32[$3>>2]|0; + $10 = (($9) + 40|0); + $11 = HEAP32[$10>>2]|0; + $12 = ($11|0)>(0); + L1: do { + if ($12) { + $13 = HEAP32[((43688 + 64|0))>>2]|0; + $14 = HEAP32[$3>>2]|0; + $15 = (($14) + 12|0); + $16 = HEAP32[$15>>2]|0; + $17 = (FUNCTION_TABLE_iii[$13 & 127]($16,$buf)|0); + $18 = ($17|0)!=(0); + if ($18) { + HEAP32[$2>>2] = 1802; + $147 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($147|0); + } + $19 = $4; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (($19) + 4)|0; + $23 = $22; + $24 = HEAP32[$23>>2]|0; + $25 = HEAP32[$3>>2]|0; + $26 = (($25) + 40|0); + $27 = HEAP32[$26>>2]|0; + $28 = ($27|0)<(0); + $29 = $28 << 31 >> 31; + $30 = (_i64Add(($21|0),($24|0),($27|0),($29|0))|0); + $31 = tempRet0; + $32 = (_i64Subtract(($30|0),($31|0),1,0)|0); + $33 = tempRet0; + $34 = HEAP32[$3>>2]|0; + $35 = (($34) + 40|0); + $36 = HEAP32[$35>>2]|0; + $37 = ($36|0)<(0); + $38 = $37 << 31 >> 31; + $39 = (___divdi3(($32|0),($33|0),($36|0),($38|0))|0); + $40 = tempRet0; + $41 = HEAP32[$3>>2]|0; + $42 = (($41) + 40|0); + $43 = HEAP32[$42>>2]|0; + $44 = ($43|0)<(0); + $45 = $44 << 31 >> 31; + $46 = (___muldi3(($39|0),($40|0),($43|0),($45|0))|0); + $47 = tempRet0; + $48 = $nSize; + $49 = $48; + HEAP32[$49>>2] = $46; + $50 = (($48) + 4)|0; + $51 = $50; + HEAP32[$51>>2] = $47; + $52 = $nSize; + $53 = $52; + $54 = HEAP32[$53>>2]|0; + $55 = (($52) + 4)|0; + $56 = $55; + $57 = HEAP32[$56>>2]|0; + $58 = (($buf) + 36|0); + $59 = HEAP32[$58>>2]|0; + $60 = ($59|0)<(0); + $61 = $60 << 31 >> 31; + $62 = ($57|0)>($61|0); + $63 = ($57|0)==($61|0); + $64 = ($54>>>0)>($59>>>0); + $65 = $63 & $64; + $66 = $62 | $65; + if ($66) { + $67 = (($buf) + 40|0); + $68 = HEAP32[$67>>2]|0; + HEAP32[$nBlk>>2] = $68; + $69 = HEAP32[$3>>2]|0; + $70 = (($69) + 12|0); + $71 = HEAP32[$70>>2]|0; + $72 = $nSize; + $73 = $72; + $74 = HEAP32[$73>>2]|0; + $75 = (($72) + 4)|0; + $76 = $75; + $77 = HEAP32[$76>>2]|0; + $78 = (_robust_ftruncate($71,$74,$77)|0); + $79 = ($78|0)!=(0); + if ($79) { + $80 = (___errno_location()|0); + $81 = HEAP32[$80>>2]|0; + $82 = HEAP32[$3>>2]|0; + $83 = (($82) + 20|0); + HEAP32[$83>>2] = $81; + $84 = HEAP32[$3>>2]|0; + $85 = (($84) + 32|0); + $86 = HEAP32[$85>>2]|0; + $87 = (_unixLogErrorAtLine(1546,44064,$86,27628)|0); + HEAP32[$2>>2] = $87; + $147 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($147|0); + } + $88 = (($buf) + 36|0); + $89 = HEAP32[$88>>2]|0; + $90 = HEAP32[$nBlk>>2]|0; + $91 = $90<<1; + $92 = (($89) + ($91))|0; + $93 = (($92) - 1)|0; + $94 = HEAP32[$nBlk>>2]|0; + $95 = (($93|0) / ($94|0))&-1; + $96 = HEAP32[$nBlk>>2]|0; + $97 = Math_imul($95, $96)|0; + $98 = (($97) - 1)|0; + $99 = ($98|0)<(0); + $100 = $99 << 31 >> 31; + $101 = $iWrite; + $102 = $101; + HEAP32[$102>>2] = $98; + $103 = (($101) + 4)|0; + $104 = $103; + HEAP32[$104>>2] = $100; + while(1) { + $105 = $iWrite; + $106 = $105; + $107 = HEAP32[$106>>2]|0; + $108 = (($105) + 4)|0; + $109 = $108; + $110 = HEAP32[$109>>2]|0; + $111 = $nSize; + $112 = $111; + $113 = HEAP32[$112>>2]|0; + $114 = (($111) + 4)|0; + $115 = $114; + $116 = HEAP32[$115>>2]|0; + $117 = ($110|0)<($116|0); + $118 = ($110|0)==($116|0); + $119 = ($107>>>0)<($113>>>0); + $120 = $118 & $119; + $121 = $117 | $120; + if (!($121)) { + break L1; + } + $122 = HEAP32[$3>>2]|0; + $123 = $iWrite; + $124 = $123; + $125 = HEAP32[$124>>2]|0; + $126 = (($123) + 4)|0; + $127 = $126; + $128 = HEAP32[$127>>2]|0; + $129 = (_seekAndWrite($122,$125,$128,1784,1)|0); + HEAP32[$nWrite>>2] = $129; + $130 = HEAP32[$nWrite>>2]|0; + $131 = ($130|0)!=(1); + if ($131) { + break; + } + $132 = HEAP32[$nBlk>>2]|0; + $133 = ($132|0)<(0); + $134 = $133 << 31 >> 31; + $135 = $iWrite; + $136 = $135; + $137 = HEAP32[$136>>2]|0; + $138 = (($135) + 4)|0; + $139 = $138; + $140 = HEAP32[$139>>2]|0; + $141 = (_i64Add(($137|0),($140|0),($132|0),($134|0))|0); + $142 = tempRet0; + $143 = $iWrite; + $144 = $143; + HEAP32[$144>>2] = $141; + $145 = (($143) + 4)|0; + $146 = $145; + HEAP32[$146>>2] = $142; + } + HEAP32[$2>>2] = 778; + $147 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($147|0); + } + } + } while(0); + HEAP32[$2>>2] = 0; + $147 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($147|0); +} +function _unixModeBit($pFile,$mask,$pArg) { + $pFile = $pFile|0; + $mask = $mask|0; + $pArg = $pArg|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp + 8|0; + $2 = sp; + HEAP32[$0>>2] = $pFile; + HEAP8[$1>>0] = $mask; + HEAP32[$2>>2] = $pArg; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)<(0); + if ($5) { + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 18|0); + $8 = HEAP16[$7>>1]|0; + $9 = $8&65535; + $10 = HEAP8[$1>>0]|0; + $11 = $10&255; + $12 = $9 & $11; + $13 = ($12|0)!=(0); + $14 = $13&1; + $15 = HEAP32[$2>>2]|0; + HEAP32[$15>>2] = $14; + STACKTOP = sp;return; + } + $16 = HEAP32[$2>>2]|0; + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)==(0); + $19 = HEAP8[$1>>0]|0; + $20 = $19&255; + if ($18) { + $21 = $20 ^ -1; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 18|0); + $24 = HEAP16[$23>>1]|0; + $25 = $24&65535; + $26 = $25 & $21; + $27 = $26&65535; + HEAP16[$23>>1] = $27; + STACKTOP = sp;return; + } else { + $28 = HEAP32[$0>>2]|0; + $29 = (($28) + 18|0); + $30 = HEAP16[$29>>1]|0; + $31 = $30&65535; + $32 = $31 | $20; + $33 = $32&65535; + HEAP16[$29>>1] = $33; + STACKTOP = sp;return; + } +} +function _unixGetTempname($nBuf,$zBuf) { + $nBuf = $nBuf|0; + $zBuf = $zBuf|0; + var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; + var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; + var $44 = 0, $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $i = 0, $j = 0, $vararg_buffer = 0, $zDir = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $vararg_buffer = sp; + $0 = sp + 24|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $i = sp + 12|0; + $j = sp + 16|0; + $zDir = sp + 20|0; + HEAP32[$1>>2] = $nBuf; + HEAP32[$2>>2] = $zBuf; + $3 = (_unixTempFileDir()|0); + HEAP32[$zDir>>2] = $3; + $4 = HEAP32[$zDir>>2]|0; + $5 = ($4|0)==(0|0); + $$ = $5 ? 25632 : $3; + HEAP32[$zDir>>2] = $$; + $6 = HEAP32[$zDir>>2]|0; + $7 = (_strlen(($6|0))|0); + $8 = (($7) + 7)|0; + $9 = (($8) + 18)|0; + $10 = HEAP32[$1>>2]|0; + $11 = ($9>>>0)>=($10>>>0); + if ($11) { + HEAP32[$0>>2] = 1; + $46 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($46|0); + } + while(1) { + $12 = HEAP32[$1>>2]|0; + $13 = (($12) - 18)|0; + $14 = HEAP32[$2>>2]|0; + $15 = HEAP32[$zDir>>2]|0; + HEAP32[$vararg_buffer>>2] = $15; + (_sqlite3_snprintf($13,$14,44408,$vararg_buffer)|0); + $16 = HEAP32[$2>>2]|0; + $17 = (_strlen(($16|0))|0); + HEAP32[$j>>2] = $17; + $18 = HEAP32[$j>>2]|0; + $19 = HEAP32[$2>>2]|0; + $20 = (($19) + ($18)|0); + _sqlite3_randomness(15,$20); + HEAP32[$i>>2] = 0; + while(1) { + $21 = HEAP32[$i>>2]|0; + $22 = ($21>>>0)<(15); + $23 = HEAP32[$j>>2]|0; + $24 = HEAP32[$2>>2]|0; + $25 = (($24) + ($23)|0); + if (!($22)) { + break; + } + $26 = HEAP8[$25>>0]|0; + $27 = $26&255; + $28 = (($27>>>0) % 62)&-1; + $29 = (44344 + ($28)|0); + $30 = HEAP8[$29>>0]|0; + $31 = HEAP32[$j>>2]|0; + $32 = HEAP32[$2>>2]|0; + $33 = (($32) + ($31)|0); + HEAP8[$33>>0] = $30; + $34 = HEAP32[$i>>2]|0; + $35 = (($34) + 1)|0; + HEAP32[$i>>2] = $35; + $36 = HEAP32[$j>>2]|0; + $37 = (($36) + 1)|0; + HEAP32[$j>>2] = $37; + } + HEAP8[$25>>0] = 0; + $38 = HEAP32[$j>>2]|0; + $39 = (($38) + 1)|0; + $40 = HEAP32[$2>>2]|0; + $41 = (($40) + ($39)|0); + HEAP8[$41>>0] = 0; + $42 = HEAP32[((43688 + 28|0))>>2]|0; + $43 = HEAP32[$2>>2]|0; + $44 = (FUNCTION_TABLE_iii[$42 & 127]($43,0)|0); + $45 = ($44|0)==(0); + if (!($45)) { + break; + } + } + HEAP32[$0>>2] = 0; + $46 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($46|0); +} +function _fileHasMoved($pFile) { + $pFile = $pFile|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; + var $9 = 0, $buf = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 80|0; + $0 = sp + 76|0; + $buf = sp; + HEAP32[$0>>2] = $pFile; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + $4 = ($3|0)!=(0|0); + if (!($4)) { + $20 = 0; + $19 = $20&1; + STACKTOP = sp;return ($19|0); + } + $5 = HEAP32[((43688 + 52|0))>>2]|0; + $6 = HEAP32[$0>>2]|0; + $7 = (($6) + 32|0); + $8 = HEAP32[$7>>2]|0; + $9 = (FUNCTION_TABLE_iii[$5 & 127]($8,$buf)|0); + $10 = ($9|0)!=(0); + if ($10) { + $20 = 1; + $19 = $20&1; + STACKTOP = sp;return ($19|0); + } + $11 = (($buf) + 72|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$0>>2]|0; + $14 = (($13) + 8|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($15) + 4|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($12|0)!=($17|0); + $20 = $18; + $19 = $20&1; + STACKTOP = sp;return ($19|0); +} +function _unixTempFileDir() { + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $buf = 0, $i = 0, $zDir = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $i = sp + 80|0; + $buf = sp; + $zDir = sp + 76|0; + HEAP32[$zDir>>2] = 0; + $0 = HEAP32[1888>>2]|0; + HEAP32[44424>>2] = $0; + $1 = HEAP32[((44424 + 4|0))>>2]|0; + $2 = ($1|0)!=(0|0); + if (!($2)) { + $3 = (_getenv((44496|0))|0); + HEAP32[((44424 + 4|0))>>2] = $3; + } + $4 = HEAP32[((44424 + 8|0))>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + $6 = (_getenv((44512|0))|0); + HEAP32[((44424 + 8|0))>>2] = $6; + } + HEAP32[$i>>2] = 0; + while(1) { + $7 = HEAP32[$i>>2]|0; + $8 = ($7>>>0)<(7); + if (!($8)) { + label = 12; + break; + } + $9 = HEAP32[$zDir>>2]|0; + $10 = ($9|0)==(0|0); + if (!($10)) { + $11 = HEAP32[((43688 + 52|0))>>2]|0; + $12 = HEAP32[$zDir>>2]|0; + $13 = (FUNCTION_TABLE_iii[$11 & 127]($12,$buf)|0); + $14 = ($13|0)!=(0); + if (!($14)) { + $15 = (($buf) + 12|0); + $16 = HEAP32[$15>>2]|0; + $17 = $16 & 61440; + $18 = ($17|0)==(16384); + if ($18) { + $19 = HEAP32[((43688 + 28|0))>>2]|0; + $20 = HEAP32[$zDir>>2]|0; + $21 = (FUNCTION_TABLE_iii[$19 & 127]($20,7)|0); + $22 = ($21|0)!=(0); + if (!($22)) { + label = 12; + break; + } + } + } + } + $23 = HEAP32[$i>>2]|0; + $24 = (($23) + 1)|0; + HEAP32[$i>>2] = $24; + $25 = (44424 + ($23<<2)|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$zDir>>2] = $26; + } + if ((label|0) == 12) { + $27 = HEAP32[$zDir>>2]|0; + STACKTOP = sp;return ($27|0); + } + return 0|0; +} +function _seekAndWrite($id,$0,$1,$pBuf,$cnt) { + $id = $id|0; + $0 = $0|0; + $1 = $1|0; + $pBuf = $pBuf|0; + $cnt = $cnt|0; + var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; + var $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $2 = sp + 16|0; + $3 = sp; + $4 = sp + 8|0; + $5 = sp + 12|0; + HEAP32[$2>>2] = $id; + $6 = $3; + $7 = $6; + HEAP32[$7>>2] = $0; + $8 = (($6) + 4)|0; + $9 = $8; + HEAP32[$9>>2] = $1; + HEAP32[$4>>2] = $pBuf; + HEAP32[$5>>2] = $cnt; + $10 = HEAP32[$2>>2]|0; + $11 = (($10) + 12|0); + $12 = HEAP32[$11>>2]|0; + $13 = $3; + $14 = $13; + $15 = HEAP32[$14>>2]|0; + $16 = (($13) + 4)|0; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = HEAP32[$4>>2]|0; + $20 = HEAP32[$5>>2]|0; + $21 = HEAP32[$2>>2]|0; + $22 = (($21) + 20|0); + $23 = (_seekAndWriteFd($12,$15,$18,$19,$20,$22)|0); + STACKTOP = sp;return ($23|0); +} +function _sqliteErrorFromPosixError($posixError,$sqliteIOErr) { + $posixError = $posixError|0; + $sqliteIOErr = $sqliteIOErr|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $or$cond3 = 0, $or$cond5 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $1 = sp; + $2 = sp + 4|0; + HEAP32[$1>>2] = $posixError; + HEAP32[$2>>2] = $sqliteIOErr; + $3 = HEAP32[$1>>2]|0; + switch ($3|0) { + case 1: { + label = 5; + break; + } + case 37: case 4: case 16: case 110: case 11: { + HEAP32[$0>>2] = 5; + break; + } + case 13: { + $4 = HEAP32[$2>>2]|0; + $5 = ($4|0)==(3850); + $6 = HEAP32[$2>>2]|0; + $7 = ($6|0)==(2058); + $or$cond = $5 | $7; + $8 = HEAP32[$2>>2]|0; + $9 = ($8|0)==(2314); + $or$cond3 = $or$cond | $9; + $10 = HEAP32[$2>>2]|0; + $11 = ($10|0)==(3594); + $or$cond5 = $or$cond3 | $11; + if ($or$cond5) { + HEAP32[$0>>2] = 5; + } else { + label = 5; + } + break; + } + default: { + $12 = HEAP32[$2>>2]|0; + HEAP32[$0>>2] = $12; + } + } + if ((label|0) == 5) { + HEAP32[$0>>2] = 3; + } + $13 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($13|0); +} +function _full_fsync($fd,$fullSync,$dataOnly) { + $fd = $fd|0; + $fullSync = $fullSync|0; + $dataOnly = $dataOnly|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + HEAP32[$0>>2] = $fd; + HEAP32[$1>>2] = $fullSync; + HEAP32[$2>>2] = $dataOnly; + $3 = HEAP32[$0>>2]|0; + $4 = (_fsync(($3|0))|0); + HEAP32[$rc>>2] = $4; + $5 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($5|0); +} +function _seekAndRead($id,$0,$1,$pBuf,$cnt) { + $id = $id|0; + $0 = $0|0; + $1 = $1|0; + $pBuf = $pBuf|0; + $cnt = $cnt|0; + var $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; + var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; + var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; + var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; + var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; + var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $got = 0, $newOffset = 0, $prior = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $2 = sp + 36|0; + $3 = sp + 32|0; + $4 = sp; + $5 = sp + 16|0; + $6 = sp + 20|0; + $got = sp + 24|0; + $prior = sp + 28|0; + $newOffset = sp + 8|0; + HEAP32[$3>>2] = $id; + $7 = $4; + $8 = $7; + HEAP32[$8>>2] = $0; + $9 = (($7) + 4)|0; + $10 = $9; + HEAP32[$10>>2] = $1; + HEAP32[$5>>2] = $pBuf; + HEAP32[$6>>2] = $cnt; + HEAP32[$prior>>2] = 0; + $11 = HEAP32[$6>>2]|0; + $12 = $11 & 131071; + HEAP32[$6>>2] = $12; + while(1) { + $13 = HEAP32[$3>>2]|0; + $14 = (($13) + 12|0); + $15 = HEAP32[$14>>2]|0; + $16 = $4; + $17 = $16; + $18 = HEAP32[$17>>2]|0; + $19 = (($16) + 4)|0; + $20 = $19; + $21 = HEAP32[$20>>2]|0; + $22 = (_lseek(($15|0),($18|0),0)|0); + $23 = ($22|0)<(0); + $24 = $23 << 31 >> 31; + $25 = $newOffset; + $26 = $25; + HEAP32[$26>>2] = $22; + $27 = (($25) + 4)|0; + $28 = $27; + HEAP32[$28>>2] = $24; + $29 = $newOffset; + $30 = $29; + $31 = HEAP32[$30>>2]|0; + $32 = (($29) + 4)|0; + $33 = $32; + $34 = HEAP32[$33>>2]|0; + $35 = $4; + $36 = $35; + $37 = HEAP32[$36>>2]|0; + $38 = (($35) + 4)|0; + $39 = $38; + $40 = HEAP32[$39>>2]|0; + $41 = ($31|0)!=($37|0); + $42 = ($34|0)!=($40|0); + $43 = $41 | $42; + if ($43) { + label = 3; + break; + } + $59 = HEAP32[((43688 + 100|0))>>2]|0; + $60 = HEAP32[$3>>2]|0; + $61 = (($60) + 12|0); + $62 = HEAP32[$61>>2]|0; + $63 = HEAP32[$5>>2]|0; + $64 = HEAP32[$6>>2]|0; + $65 = (FUNCTION_TABLE_iiii[$59 & 31]($62,$63,$64)|0); + HEAP32[$got>>2] = $65; + $66 = HEAP32[$got>>2]|0; + $67 = HEAP32[$6>>2]|0; + $68 = ($66|0)==($67|0); + if ($68) { + break; + } + $69 = HEAP32[$got>>2]|0; + $70 = ($69|0)<(0); + if ($70) { + $71 = (___errno_location()|0); + $72 = HEAP32[$71>>2]|0; + $73 = ($72|0)==(4); + if (!($73)) { + label = 11; + break; + } + HEAP32[$got>>2] = 1; + } else { + $78 = HEAP32[$got>>2]|0; + $79 = ($78|0)>(0); + if ($79) { + $80 = HEAP32[$got>>2]|0; + $81 = HEAP32[$6>>2]|0; + $82 = (($81) - ($80))|0; + HEAP32[$6>>2] = $82; + $83 = HEAP32[$got>>2]|0; + $84 = ($83|0)<(0); + $85 = $84 << 31 >> 31; + $86 = $4; + $87 = $86; + $88 = HEAP32[$87>>2]|0; + $89 = (($86) + 4)|0; + $90 = $89; + $91 = HEAP32[$90>>2]|0; + $92 = (_i64Add(($88|0),($91|0),($83|0),($85|0))|0); + $93 = tempRet0; + $94 = $4; + $95 = $94; + HEAP32[$95>>2] = $92; + $96 = (($94) + 4)|0; + $97 = $96; + HEAP32[$97>>2] = $93; + $98 = HEAP32[$got>>2]|0; + $99 = HEAP32[$prior>>2]|0; + $100 = (($99) + ($98))|0; + HEAP32[$prior>>2] = $100; + $101 = HEAP32[$got>>2]|0; + $102 = HEAP32[$5>>2]|0; + $103 = (($102) + ($101)|0); + HEAP32[$5>>2] = $103; + } + } + $104 = HEAP32[$got>>2]|0; + $105 = ($104|0)>(0); + if (!($105)) { + break; + } + } + if ((label|0) == 3) { + $44 = $newOffset; + $45 = $44; + $46 = HEAP32[$45>>2]|0; + $47 = (($44) + 4)|0; + $48 = $47; + $49 = HEAP32[$48>>2]|0; + $50 = ($46|0)==(-1); + $51 = ($49|0)==(-1); + $52 = $50 & $51; + if ($52) { + $53 = (___errno_location()|0); + $54 = HEAP32[$53>>2]|0; + $55 = HEAP32[$3>>2]|0; + $56 = (($55) + 20|0); + HEAP32[$56>>2] = $54; + } else { + $57 = HEAP32[$3>>2]|0; + $58 = (($57) + 20|0); + HEAP32[$58>>2] = 0; + } + HEAP32[$2>>2] = -1; + $109 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($109|0); + } + else if ((label|0) == 11) { + HEAP32[$prior>>2] = 0; + $74 = (___errno_location()|0); + $75 = HEAP32[$74>>2]|0; + $76 = HEAP32[$3>>2]|0; + $77 = (($76) + 20|0); + HEAP32[$77>>2] = $75; + } + $106 = HEAP32[$got>>2]|0; + $107 = HEAP32[$prior>>2]|0; + $108 = (($106) + ($107))|0; + HEAP32[$2>>2] = $108; + $109 = HEAP32[$2>>2]|0; + STACKTOP = sp;return ($109|0); +} +function _closeUnixFile($id) { + $id = $id|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pFile = 0, dest = 0, label = 0, sp = 0; + var stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pFile = sp; + HEAP32[$0>>2] = $id; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pFile>>2] = $1; + $2 = HEAP32[$pFile>>2]|0; + $3 = (($2) + 12|0); + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)>=(0); + if ($5) { + $6 = HEAP32[$pFile>>2]|0; + $7 = HEAP32[$pFile>>2]|0; + $8 = (($7) + 12|0); + $9 = HEAP32[$8>>2]|0; + _robust_close($6,$9,25838); + $10 = HEAP32[$pFile>>2]|0; + $11 = (($10) + 12|0); + HEAP32[$11>>2] = -1; + } + $12 = HEAP32[$pFile>>2]|0; + $13 = (($12) + 28|0); + $14 = HEAP32[$13>>2]|0; + _sqlite3_free($14); + $15 = HEAP32[$pFile>>2]|0; + dest=$15+0|0; stop=dest+44|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + STACKTOP = sp;return 0; +} +function _nolockIoFinderImpl($z,$p) { + $z = $z|0; + $p = $p|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $z; + HEAP32[$1>>2] = $p; + STACKTOP = sp;return (44536|0); +} +function _nolockClose($id) { + $id = $id|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + HEAP32[$0>>2] = $id; + $1 = HEAP32[$0>>2]|0; + $2 = (_closeUnixFile($1)|0); + STACKTOP = sp;return ($2|0); +} +function _nolockLock($NotUsed,$NotUsed2) { + $NotUsed = $NotUsed|0; + $NotUsed2 = $NotUsed2|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $NotUsed; + HEAP32[$1>>2] = $NotUsed2; + STACKTOP = sp;return 0; +} +function _nolockUnlock($NotUsed,$NotUsed2) { + $NotUsed = $NotUsed|0; + $NotUsed2 = $NotUsed2|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $NotUsed; + HEAP32[$1>>2] = $NotUsed2; + STACKTOP = sp;return 0; +} +function _nolockCheckReservedLock($NotUsed,$pResOut) { + $NotUsed = $NotUsed|0; + $pResOut = $pResOut|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $NotUsed; + HEAP32[$1>>2] = $pResOut; + $2 = HEAP32[$1>>2]|0; + HEAP32[$2>>2] = 0; + STACKTOP = sp;return 0; +} +function _findReusableFd($zPath,$flags) { + $zPath = $zPath|0; + $flags = $flags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pInode = 0, $pUnused = 0, $pp = 0, $sStat = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $0 = sp + 92|0; + $1 = sp; + $pUnused = sp + 4|0; + $sStat = sp + 8|0; + $pInode = sp + 84|0; + $pp = sp + 88|0; + HEAP32[$0>>2] = $zPath; + HEAP32[$1>>2] = $flags; + HEAP32[$pUnused>>2] = 0; + $2 = HEAP32[((43688 + 52|0))>>2]|0; + $3 = HEAP32[$0>>2]|0; + $4 = (FUNCTION_TABLE_iii[$2 & 127]($3,$sStat)|0); + $5 = (0)==($4|0); + if (!($5)) { + $45 = HEAP32[$pUnused>>2]|0; + STACKTOP = sp;return ($45|0); + } + _unixEnterMutex(); + $6 = HEAP32[44872>>2]|0; + HEAP32[$pInode>>2] = $6; + while(1) { + $7 = HEAP32[$pInode>>2]|0; + $8 = ($7|0)!=(0|0); + if ($8) { + $9 = HEAP32[$pInode>>2]|0; + $10 = HEAP32[$9>>2]|0; + $11 = HEAP32[$sStat>>2]|0; + $12 = ($10|0)!=($11|0); + if ($12) { + $46 = 1; + } else { + $13 = HEAP32[$pInode>>2]|0; + $14 = (($13) + 4|0); + $15 = HEAP32[$14>>2]|0; + $16 = (($sStat) + 72|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($15|0)!=($17|0); + $46 = $18; + } + } else { + $46 = 0; + } + $19 = HEAP32[$pInode>>2]|0; + if (!($46)) { + break; + } + $20 = (($19) + 32|0); + $21 = HEAP32[$20>>2]|0; + HEAP32[$pInode>>2] = $21; + } + $22 = ($19|0)!=(0|0); + if ($22) { + $23 = HEAP32[$pInode>>2]|0; + $24 = (($23) + 28|0); + HEAP32[$pp>>2] = $24; + while(1) { + $25 = HEAP32[$pp>>2]|0; + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)!=(0|0); + if (!($27)) { + break; + } + $28 = HEAP32[$pp>>2]|0; + $29 = HEAP32[$28>>2]|0; + $30 = (($29) + 4|0); + $31 = HEAP32[$30>>2]|0; + $32 = HEAP32[$1>>2]|0; + $33 = ($31|0)!=($32|0); + if (!($33)) { + break; + } + $34 = HEAP32[$pp>>2]|0; + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + 8|0); + HEAP32[$pp>>2] = $36; + } + $37 = HEAP32[$pp>>2]|0; + $38 = HEAP32[$37>>2]|0; + HEAP32[$pUnused>>2] = $38; + $39 = HEAP32[$pUnused>>2]|0; + $40 = ($39|0)!=(0|0); + if ($40) { + $41 = HEAP32[$pUnused>>2]|0; + $42 = (($41) + 8|0); + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$pp>>2]|0; + HEAP32[$44>>2] = $43; + } + } + _unixLeaveMutex(); + $45 = HEAP32[$pUnused>>2]|0; + STACKTOP = sp;return ($45|0); +} +function _findCreateFileMode($zPath,$flags,$pMode,$pUid,$pGid) { + $zPath = $zPath|0; + $flags = $flags|0; + $pMode = $pMode|0; + $pUid = $pUid|0; + $pGid = $pGid|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; + var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $nDb = 0, $rc = 0, $sStat = 0, $zDb = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 624|0; + $0 = sp + 100|0; + $1 = sp + 96|0; + $2 = sp + 92|0; + $3 = sp + 88|0; + $4 = sp + 84|0; + $rc = sp + 4|0; + $zDb = sp + 104|0; + $nDb = sp; + $sStat = sp + 8|0; + HEAP32[$0>>2] = $zPath; + HEAP32[$1>>2] = $flags; + HEAP32[$2>>2] = $pMode; + HEAP32[$3>>2] = $pUid; + HEAP32[$4>>2] = $pGid; + HEAP32[$rc>>2] = 0; + $5 = HEAP32[$2>>2]|0; + HEAP32[$5>>2] = 0; + $6 = HEAP32[$3>>2]|0; + HEAP32[$6>>2] = 0; + $7 = HEAP32[$4>>2]|0; + HEAP32[$7>>2] = 0; + $8 = HEAP32[$1>>2]|0; + $9 = $8 & 526336; + $10 = ($9|0)!=(0); + if (!($10)) { + $39 = HEAP32[$1>>2]|0; + $40 = $39 & 8; + $41 = ($40|0)!=(0); + if (!($41)) { + $43 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($43|0); + } + $42 = HEAP32[$2>>2]|0; + HEAP32[$42>>2] = 384; + $43 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($43|0); + } + $11 = HEAP32[$0>>2]|0; + $12 = (_sqlite3Strlen30($11)|0); + $13 = (($12) - 1)|0; + HEAP32[$nDb>>2] = $13; + while(1) { + $14 = HEAP32[$nDb>>2]|0; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + ($14)|0); + $17 = HEAP8[$16>>0]|0; + $18 = $17 << 24 >> 24; + $19 = ($18|0)!=(45); + if (!($19)) { + break; + } + $20 = HEAP32[$nDb>>2]|0; + $21 = (($20) + -1)|0; + HEAP32[$nDb>>2] = $21; + } + $22 = HEAP32[$0>>2]|0; + $23 = HEAP32[$nDb>>2]|0; + _memcpy(($zDb|0),($22|0),($23|0))|0; + $24 = HEAP32[$nDb>>2]|0; + $25 = (($zDb) + ($24)|0); + HEAP8[$25>>0] = 0; + $26 = HEAP32[((43688 + 52|0))>>2]|0; + $27 = (FUNCTION_TABLE_iii[$26 & 127]($zDb,$sStat)|0); + $28 = (0)==($27|0); + if ($28) { + $29 = (($sStat) + 12|0); + $30 = HEAP32[$29>>2]|0; + $31 = $30 & 511; + $32 = HEAP32[$2>>2]|0; + HEAP32[$32>>2] = $31; + $33 = (($sStat) + 20|0); + $34 = HEAP32[$33>>2]|0; + $35 = HEAP32[$3>>2]|0; + HEAP32[$35>>2] = $34; + $36 = (($sStat) + 24|0); + $37 = HEAP32[$36>>2]|0; + $38 = HEAP32[$4>>2]|0; + HEAP32[$38>>2] = $37; + $43 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($43|0); + } else { + HEAP32[$rc>>2] = 1802; + $43 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($43|0); + } + return 0|0; +} +function _fillInUnixFile($pVfs,$h,$pId,$zFilename,$ctrlFlags) { + $pVfs = $pVfs|0; + $h = $h|0; + $pId = $pId|0; + $zFilename = $zFilename|0; + $ctrlFlags = $ctrlFlags|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $nFilename = 0, $pLockingStyle = 0, $pNew = 0, $rc = 0, $vararg_buffer = 0, $zLockFile = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 36|0; + $1 = sp + 32|0; + $2 = sp + 28|0; + $3 = sp + 24|0; + $4 = sp + 40|0; + $pLockingStyle = sp + 12|0; + $pNew = sp + 8|0; + $rc = sp + 4|0; + $zLockFile = sp + 16|0; + $nFilename = sp + 20|0; + HEAP32[$0>>2] = $pVfs; + HEAP32[$1>>2] = $h; + HEAP32[$2>>2] = $pId; + HEAP32[$3>>2] = $zFilename; + HEAP32[$4>>2] = $ctrlFlags; + $5 = HEAP32[$2>>2]|0; + HEAP32[$pNew>>2] = $5; + HEAP32[$rc>>2] = 0; + $6 = HEAP32[$1>>2]|0; + $7 = HEAP32[$pNew>>2]|0; + $8 = (($7) + 12|0); + HEAP32[$8>>2] = $6; + $9 = HEAP32[$0>>2]|0; + $10 = HEAP32[$pNew>>2]|0; + $11 = (($10) + 4|0); + HEAP32[$11>>2] = $9; + $12 = HEAP32[$3>>2]|0; + $13 = HEAP32[$pNew>>2]|0; + $14 = (($13) + 32|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$4>>2]|0; + $16 = $15&255; + $17 = $16&255; + $18 = HEAP32[$pNew>>2]|0; + $19 = (($18) + 18|0); + HEAP16[$19>>1] = $17; + $20 = HEAP32[$4>>2]|0; + $21 = $20 & 64; + $22 = ($21|0)!=(0); + $23 = HEAP32[$3>>2]|0; + $24 = $22 ? $23 : 0; + $25 = (_sqlite3_uri_boolean($24,44656,1)|0); + $26 = ($25|0)!=(0); + if ($26) { + $27 = HEAP32[$pNew>>2]|0; + $28 = (($27) + 18|0); + $29 = HEAP16[$28>>1]|0; + $30 = $29&65535; + $31 = $30 | 16; + $32 = $31&65535; + HEAP16[$28>>1] = $32; + } + $33 = HEAP32[$0>>2]|0; + $34 = (($33) + 16|0); + $35 = HEAP32[$34>>2]|0; + $36 = (_strcmp($35,1456)|0); + $37 = ($36|0)==(0); + if ($37) { + $38 = HEAP32[$pNew>>2]|0; + $39 = (($38) + 18|0); + $40 = HEAP16[$39>>1]|0; + $41 = $40&65535; + $42 = $41 | 1; + $43 = $42&65535; + HEAP16[$39>>1] = $43; + } + $44 = HEAP32[$4>>2]|0; + $45 = $44 & 128; + $46 = ($45|0)!=(0); + if ($46) { + HEAP32[$pLockingStyle>>2] = 44536; + } else { + $47 = HEAP32[$0>>2]|0; + $48 = (($47) + 20|0); + $49 = HEAP32[$48>>2]|0; + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$3>>2]|0; + $52 = HEAP32[$pNew>>2]|0; + $53 = (FUNCTION_TABLE_iii[$50 & 127]($51,$52)|0); + HEAP32[$pLockingStyle>>2] = $53; + } + $54 = HEAP32[$pLockingStyle>>2]|0; + $55 = ($54|0)==(44664|0); + if ($55) { + _unixEnterMutex(); + $56 = HEAP32[$pNew>>2]|0; + $57 = HEAP32[$pNew>>2]|0; + $58 = (($57) + 8|0); + $59 = (_findInodeInfo($56,$58)|0); + HEAP32[$rc>>2] = $59; + $60 = HEAP32[$rc>>2]|0; + $61 = ($60|0)!=(0); + if ($61) { + $62 = HEAP32[$pNew>>2]|0; + $63 = HEAP32[$1>>2]|0; + _robust_close($62,$63,29201); + HEAP32[$1>>2] = -1; + } + _unixLeaveMutex(); + } else { + $64 = HEAP32[$pLockingStyle>>2]|0; + $65 = ($64|0)==(43608|0); + if ($65) { + $66 = HEAP32[$3>>2]|0; + $67 = (_strlen(($66|0))|0); + $68 = (($67) + 6)|0; + HEAP32[$nFilename>>2] = $68; + $69 = HEAP32[$nFilename>>2]|0; + $70 = (_sqlite3_malloc($69)|0); + HEAP32[$zLockFile>>2] = $70; + $71 = HEAP32[$zLockFile>>2]|0; + $72 = ($71|0)==(0|0); + if ($72) { + HEAP32[$rc>>2] = 7; + } else { + $73 = HEAP32[$nFilename>>2]|0; + $74 = HEAP32[$zLockFile>>2]|0; + $75 = HEAP32[$3>>2]|0; + HEAP32[$vararg_buffer>>2] = $75; + (_sqlite3_snprintf($73,$74,44744,$vararg_buffer)|0); + } + $76 = HEAP32[$zLockFile>>2]|0; + $77 = HEAP32[$pNew>>2]|0; + $78 = (($77) + 24|0); + HEAP32[$78>>2] = $76; + } + } + $79 = HEAP32[$pNew>>2]|0; + $80 = (($79) + 20|0); + HEAP32[$80>>2] = 0; + $81 = HEAP32[$rc>>2]|0; + $82 = ($81|0)!=(0); + if (!($82)) { + $87 = HEAP32[$pLockingStyle>>2]|0; + $88 = HEAP32[$pNew>>2]|0; + HEAP32[$88>>2] = $87; + $89 = HEAP32[$pNew>>2]|0; + _verifyDbFile($89); + $90 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($90|0); + } + $83 = HEAP32[$1>>2]|0; + $84 = ($83|0)>=(0); + if (!($84)) { + $90 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($90|0); + } + $85 = HEAP32[$pNew>>2]|0; + $86 = HEAP32[$1>>2]|0; + _robust_close($85,$86,29286); + $90 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($90|0); +} +function _findInodeInfo($pFile,$ppInode) { + $pFile = $pFile|0; + $ppInode = $ppInode|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $fd = 0; + var $fileId = 0, $pInode = 0, $rc = 0, $statbuf = 0, dest = 0, label = 0, sp = 0, stop = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 112|0; + $0 = sp + 104|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $fd = sp + 12|0; + $fileId = sp + 16|0; + $statbuf = sp + 24|0; + $pInode = sp + 100|0; + HEAP32[$1>>2] = $pFile; + HEAP32[$2>>2] = $ppInode; + HEAP32[$pInode>>2] = 0; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 12|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$fd>>2] = $5; + $6 = HEAP32[((43688 + 64|0))>>2]|0; + $7 = HEAP32[$fd>>2]|0; + $8 = (FUNCTION_TABLE_iii[$6 & 127]($7,$statbuf)|0); + HEAP32[$rc>>2] = $8; + $9 = HEAP32[$rc>>2]|0; + $10 = ($9|0)!=(0); + if ($10) { + $11 = (___errno_location()|0); + $12 = HEAP32[$11>>2]|0; + $13 = HEAP32[$1>>2]|0; + $14 = (($13) + 20|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + 20|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)==(75); + if ($18) { + HEAP32[$0>>2] = 22; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); + } else { + HEAP32[$0>>2] = 10; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); + } + } + ;HEAP32[$fileId+0>>2]=0|0;HEAP32[$fileId+4>>2]=0|0; + $19 = HEAP32[$statbuf>>2]|0; + HEAP32[$fileId>>2] = $19; + $20 = (($statbuf) + 72|0); + $21 = HEAP32[$20>>2]|0; + $22 = (($fileId) + 4|0); + HEAP32[$22>>2] = $21; + $23 = HEAP32[44872>>2]|0; + HEAP32[$pInode>>2] = $23; + while(1) { + $24 = HEAP32[$pInode>>2]|0; + $25 = ($24|0)!=(0|0); + if ($25) { + $26 = HEAP32[$pInode>>2]|0; + $27 = (_memcmp($fileId,$26,8)|0); + $28 = ($27|0)!=(0); + $58 = $28; + } else { + $58 = 0; + } + $29 = HEAP32[$pInode>>2]|0; + if (!($58)) { + break; + } + $30 = (($29) + 32|0); + $31 = HEAP32[$30>>2]|0; + HEAP32[$pInode>>2] = $31; + } + $32 = ($29|0)==(0|0); + if ($32) { + $33 = (_sqlite3_malloc(40)|0); + HEAP32[$pInode>>2] = $33; + $34 = HEAP32[$pInode>>2]|0; + $35 = ($34|0)==(0|0); + if ($35) { + HEAP32[$0>>2] = 7; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); + } + $36 = HEAP32[$pInode>>2]|0; + dest=$36+0|0; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); + $37 = HEAP32[$pInode>>2]|0; + ;HEAP32[$37+0>>2]=HEAP32[$fileId+0>>2]|0;HEAP32[$37+4>>2]=HEAP32[$fileId+4>>2]|0; + $38 = HEAP32[$pInode>>2]|0; + $39 = (($38) + 16|0); + HEAP32[$39>>2] = 1; + $40 = HEAP32[44872>>2]|0; + $41 = HEAP32[$pInode>>2]|0; + $42 = (($41) + 32|0); + HEAP32[$42>>2] = $40; + $43 = HEAP32[$pInode>>2]|0; + $44 = (($43) + 36|0); + HEAP32[$44>>2] = 0; + $45 = HEAP32[44872>>2]|0; + $46 = ($45|0)!=(0|0); + if ($46) { + $47 = HEAP32[$pInode>>2]|0; + $48 = HEAP32[44872>>2]|0; + $49 = (($48) + 36|0); + HEAP32[$49>>2] = $47; + } + $50 = HEAP32[$pInode>>2]|0; + HEAP32[44872>>2] = $50; + } else { + $51 = HEAP32[$pInode>>2]|0; + $52 = (($51) + 16|0); + $53 = HEAP32[$52>>2]|0; + $54 = (($53) + 1)|0; + HEAP32[$52>>2] = $54; + } + $55 = HEAP32[$pInode>>2]|0; + $56 = HEAP32[$2>>2]|0; + HEAP32[$56>>2] = $55; + HEAP32[$0>>2] = 0; + $57 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($57|0); +} +function _verifyDbFile($pFile) { + $pFile = $pFile|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $buf = 0, $rc = 0, $vararg_buffer7 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 96|0; + $vararg_buffer7 = sp; + $0 = sp + 84|0; + $buf = sp + 4|0; + $rc = sp + 80|0; + HEAP32[$0>>2] = $pFile; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 18|0); + $3 = HEAP16[$2>>1]|0; + $4 = $3&65535; + $5 = $4 & 256; + $6 = ($5|0)!=(0); + if ($6) { + STACKTOP = sp;return; + } + $7 = HEAP32[((43688 + 64|0))>>2]|0; + $8 = HEAP32[$0>>2]|0; + $9 = (($8) + 12|0); + $10 = HEAP32[$9>>2]|0; + $11 = (FUNCTION_TABLE_iii[$7 & 127]($10,$buf)|0); + HEAP32[$rc>>2] = $11; + $12 = HEAP32[$rc>>2]|0; + $13 = ($12|0)!=(0); + if ($13) { + $14 = HEAP32[$0>>2]|0; + $15 = (($14) + 32|0); + $16 = HEAP32[$15>>2]|0; + HEAP32[$vararg_buffer7>>2] = $16; + _sqlite3_log(28,44752,$vararg_buffer7); + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 18|0); + $19 = HEAP16[$18>>1]|0; + $20 = $19&65535; + $21 = $20 | 256; + $22 = $21&65535; + HEAP16[$18>>1] = $22; + STACKTOP = sp;return; + } + $23 = (($buf) + 16|0); + $24 = HEAP32[$23>>2]|0; + $25 = ($24|0)==(0); + if ($25) { + $26 = HEAP32[$0>>2]|0; + $27 = (($26) + 18|0); + $28 = HEAP16[$27>>1]|0; + $29 = $28&65535; + $30 = $29 & 32; + $31 = ($30|0)==(0); + if ($31) { + $32 = HEAP32[$0>>2]|0; + $33 = (($32) + 32|0); + $34 = HEAP32[$33>>2]|0; + HEAP32[$vararg_buffer7>>2] = $34; + _sqlite3_log(28,44776,$vararg_buffer7); + $35 = HEAP32[$0>>2]|0; + $36 = (($35) + 18|0); + $37 = HEAP16[$36>>1]|0; + $38 = $37&65535; + $39 = $38 | 256; + $40 = $39&65535; + HEAP16[$36>>1] = $40; + STACKTOP = sp;return; + } + } + $41 = (($buf) + 16|0); + $42 = HEAP32[$41>>2]|0; + $43 = ($42>>>0)>(1); + $44 = HEAP32[$0>>2]|0; + if ($43) { + $45 = (($44) + 32|0); + $46 = HEAP32[$45>>2]|0; + HEAP32[$vararg_buffer7>>2] = $46; + _sqlite3_log(28,44808,$vararg_buffer7); + $47 = HEAP32[$0>>2]|0; + $48 = (($47) + 18|0); + $49 = HEAP16[$48>>1]|0; + $50 = $49&65535; + $51 = $50 | 256; + $52 = $51&65535; + HEAP16[$48>>1] = $52; + STACKTOP = sp;return; + } + $53 = (_fileHasMoved($44)|0); + $54 = ($53|0)!=(0); + if (!($54)) { + STACKTOP = sp;return; + } + $55 = HEAP32[$0>>2]|0; + $56 = (($55) + 32|0); + $57 = HEAP32[$56>>2]|0; + HEAP32[$vararg_buffer7>>2] = $57; + _sqlite3_log(28,44840,$vararg_buffer7); + $58 = HEAP32[$0>>2]|0; + $59 = (($58) + 18|0); + $60 = HEAP16[$59>>1]|0; + $61 = $60&65535; + $62 = $61 | 256; + $63 = $62&65535; + HEAP16[$59>>1] = $63; + STACKTOP = sp;return; +} +function _unixClose($id) { + $id = $id|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pFile = 0; + var $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $rc = sp; + $pFile = sp + 4|0; + HEAP32[$0>>2] = $id; + HEAP32[$rc>>2] = 0; + $1 = HEAP32[$0>>2]|0; + HEAP32[$pFile>>2] = $1; + $2 = HEAP32[$pFile>>2]|0; + _verifyDbFile($2); + $3 = HEAP32[$0>>2]|0; + (_unixUnlock($3,0)|0); + _unixEnterMutex(); + $4 = HEAP32[$pFile>>2]|0; + $5 = (($4) + 8|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($6|0)!=(0|0); + if ($7) { + $8 = HEAP32[$pFile>>2]|0; + $9 = (($8) + 8|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + 24|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)!=(0); + if ($13) { + $14 = HEAP32[$pFile>>2]|0; + _setPendingFd($14); + } + } + $15 = HEAP32[$pFile>>2]|0; + _releaseInodeInfo($15); + $16 = HEAP32[$0>>2]|0; + $17 = (_closeUnixFile($16)|0); + HEAP32[$rc>>2] = $17; + _unixLeaveMutex(); + $18 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($18|0); +} +function _unixLock($id,$eFileLock) { + $id = $id|0; + $eFileLock = $eFileLock|0; + var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; + var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; + var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; + var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; + var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; + var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; + var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; + var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; + var $98 = 0, $99 = 0, $lock = 0, $pFile = 0, $pInode = 0, $rc = 0, $tErrno = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp; + $2 = sp + 4|0; + $rc = sp + 8|0; + $pFile = sp + 12|0; + $pInode = sp + 16|0; + $lock = sp + 24|0; + $tErrno = sp + 40|0; + HEAP32[$1>>2] = $id; + HEAP32[$2>>2] = $eFileLock; + HEAP32[$rc>>2] = 0; + $3 = HEAP32[$1>>2]|0; + HEAP32[$pFile>>2] = $3; + HEAP32[$tErrno>>2] = 0; + $4 = HEAP32[$pFile>>2]|0; + $5 = (($4) + 16|0); + $6 = HEAP8[$5>>0]|0; + $7 = $6&255; + $8 = HEAP32[$2>>2]|0; + $9 = ($7|0)>=($8|0); + if ($9) { + HEAP32[$0>>2] = 0; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); + } + _unixEnterMutex(); + $10 = HEAP32[$pFile>>2]|0; + $11 = (($10) + 8|0); + $12 = HEAP32[$11>>2]|0; + HEAP32[$pInode>>2] = $12; + $13 = HEAP32[$pFile>>2]|0; + $14 = (($13) + 16|0); + $15 = HEAP8[$14>>0]|0; + $16 = $15&255; + $17 = HEAP32[$pInode>>2]|0; + $18 = (($17) + 12|0); + $19 = HEAP8[$18>>0]|0; + $20 = $19&255; + $21 = ($16|0)!=($20|0); + do { + if ($21) { + $22 = HEAP32[$pInode>>2]|0; + $23 = (($22) + 12|0); + $24 = HEAP8[$23>>0]|0; + $25 = $24&255; + $26 = ($25|0)>=(3); + if (!($26)) { + $27 = HEAP32[$2>>2]|0; + $28 = ($27|0)>(1); + if (!($28)) { + label = 7; + break; + } + } + HEAP32[$rc>>2] = 5; + } else { + label = 7; + } + } while(0); + L10: do { + if ((label|0) == 7) { + $29 = HEAP32[$2>>2]|0; + $30 = ($29|0)==(1); + do { + if ($30) { + $31 = HEAP32[$pInode>>2]|0; + $32 = (($31) + 12|0); + $33 = HEAP8[$32>>0]|0; + $34 = $33&255; + $35 = ($34|0)==(1); + if (!($35)) { + $36 = HEAP32[$pInode>>2]|0; + $37 = (($36) + 12|0); + $38 = HEAP8[$37>>0]|0; + $39 = $38&255; + $40 = ($39|0)==(2); + if (!($40)) { + break; + } + } + $41 = HEAP32[$pFile>>2]|0; + $42 = (($41) + 16|0); + HEAP8[$42>>0] = 1; + $43 = HEAP32[$pInode>>2]|0; + $44 = (($43) + 8|0); + $45 = HEAP32[$44>>2]|0; + $46 = (($45) + 1)|0; + HEAP32[$44>>2] = $46; + $47 = HEAP32[$pInode>>2]|0; + $48 = (($47) + 24|0); + $49 = HEAP32[$48>>2]|0; + $50 = (($49) + 1)|0; + HEAP32[$48>>2] = $50; + break L10; + } + } while(0); + $51 = (($lock) + 8|0); + HEAP32[$51>>2] = 1; + $52 = (($lock) + 2|0); + HEAP16[$52>>1] = 0; + $53 = HEAP32[$2>>2]|0; + $54 = ($53|0)==(1); + if ($54) { + label = 14; + } else { + $55 = HEAP32[$2>>2]|0; + $56 = ($55|0)==(4); + if ($56) { + $57 = HEAP32[$pFile>>2]|0; + $58 = (($57) + 16|0); + $59 = HEAP8[$58>>0]|0; + $60 = $59&255; + $61 = ($60|0)<(3); + if ($61) { + label = 14; + } + } + } + if ((label|0) == 14) { + $62 = HEAP32[$2>>2]|0; + $63 = ($62|0)==(1); + $64 = $63 ? 0 : 1; + $65 = $64&65535; + HEAP16[$lock>>1] = $65; + $66 = HEAP32[1472>>2]|0; + $67 = (($lock) + 4|0); + HEAP32[$67>>2] = $66; + $68 = HEAP32[$pFile>>2]|0; + $69 = (_unixFileLock($68,$lock)|0); + $70 = ($69|0)!=(0); + if ($70) { + $71 = (___errno_location()|0); + $72 = HEAP32[$71>>2]|0; + HEAP32[$tErrno>>2] = $72; + $73 = HEAP32[$tErrno>>2]|0; + $74 = (_sqliteErrorFromPosixError($73,3850)|0); + HEAP32[$rc>>2] = $74; + $75 = HEAP32[$rc>>2]|0; + $76 = ($75|0)!=(5); + if (!($76)) { + break; + } + $77 = HEAP32[$tErrno>>2]|0; + $78 = HEAP32[$pFile>>2]|0; + $79 = (($78) + 20|0); + HEAP32[$79>>2] = $77; + break; + } + } + $80 = HEAP32[$2>>2]|0; + $81 = ($80|0)==(1); + do { + if ($81) { + $82 = HEAP32[1472>>2]|0; + $83 = (($82) + 2)|0; + $84 = (($lock) + 4|0); + HEAP32[$84>>2] = $83; + $85 = (($lock) + 8|0); + HEAP32[$85>>2] = 510; + $86 = HEAP32[$pFile>>2]|0; + $87 = (_unixFileLock($86,$lock)|0); + $88 = ($87|0)!=(0); + if ($88) { + $89 = (___errno_location()|0); + $90 = HEAP32[$89>>2]|0; + HEAP32[$tErrno>>2] = $90; + $91 = HEAP32[$tErrno>>2]|0; + $92 = (_sqliteErrorFromPosixError($91,3850)|0); + HEAP32[$rc>>2] = $92; + } + $93 = HEAP32[1472>>2]|0; + $94 = (($lock) + 4|0); + HEAP32[$94>>2] = $93; + $95 = (($lock) + 8|0); + HEAP32[$95>>2] = 1; + HEAP16[$lock>>1] = 2; + $96 = HEAP32[$pFile>>2]|0; + $97 = (_unixFileLock($96,$lock)|0); + $98 = ($97|0)!=(0); + if ($98) { + $99 = HEAP32[$rc>>2]|0; + $100 = ($99|0)==(0); + if ($100) { + $101 = (___errno_location()|0); + $102 = HEAP32[$101>>2]|0; + HEAP32[$tErrno>>2] = $102; + HEAP32[$rc>>2] = 2058; + } + } + $103 = HEAP32[$rc>>2]|0; + $104 = ($103|0)!=(0); + if (!($104)) { + $110 = HEAP32[$pFile>>2]|0; + $111 = (($110) + 16|0); + HEAP8[$111>>0] = 1; + $112 = HEAP32[$pInode>>2]|0; + $113 = (($112) + 24|0); + $114 = HEAP32[$113>>2]|0; + $115 = (($114) + 1)|0; + HEAP32[$113>>2] = $115; + $116 = HEAP32[$pInode>>2]|0; + $117 = (($116) + 8|0); + HEAP32[$117>>2] = 1; + break; + } + $105 = HEAP32[$rc>>2]|0; + $106 = ($105|0)!=(5); + if (!($106)) { + break L10; + } + $107 = HEAP32[$tErrno>>2]|0; + $108 = HEAP32[$pFile>>2]|0; + $109 = (($108) + 20|0); + HEAP32[$109>>2] = $107; + break L10; + } else { + $118 = HEAP32[$2>>2]|0; + $119 = ($118|0)==(4); + if ($119) { + $120 = HEAP32[$pInode>>2]|0; + $121 = (($120) + 8|0); + $122 = HEAP32[$121>>2]|0; + $123 = ($122|0)>(1); + if ($123) { + HEAP32[$rc>>2] = 5; + break; + } + } + HEAP16[$lock>>1] = 1; + $124 = HEAP32[$2>>2]|0; + $125 = ($124|0)==(2); + $126 = HEAP32[1472>>2]|0; + if ($125) { + $127 = (($126) + 1)|0; + $128 = (($lock) + 4|0); + HEAP32[$128>>2] = $127; + $129 = (($lock) + 8|0); + HEAP32[$129>>2] = 1; + } else { + $130 = (($126) + 2)|0; + $131 = (($lock) + 4|0); + HEAP32[$131>>2] = $130; + $132 = (($lock) + 8|0); + HEAP32[$132>>2] = 510; + } + $133 = HEAP32[$pFile>>2]|0; + $134 = (_unixFileLock($133,$lock)|0); + $135 = ($134|0)!=(0); + if ($135) { + $136 = (___errno_location()|0); + $137 = HEAP32[$136>>2]|0; + HEAP32[$tErrno>>2] = $137; + $138 = HEAP32[$tErrno>>2]|0; + $139 = (_sqliteErrorFromPosixError($138,3850)|0); + HEAP32[$rc>>2] = $139; + $140 = HEAP32[$rc>>2]|0; + $141 = ($140|0)!=(5); + if ($141) { + $142 = HEAP32[$tErrno>>2]|0; + $143 = HEAP32[$pFile>>2]|0; + $144 = (($143) + 20|0); + HEAP32[$144>>2] = $142; + } + } + } + } while(0); + $145 = HEAP32[$rc>>2]|0; + $146 = ($145|0)==(0); + $147 = HEAP32[$2>>2]|0; + if ($146) { + $148 = $147&255; + $149 = HEAP32[$pFile>>2]|0; + $150 = (($149) + 16|0); + HEAP8[$150>>0] = $148; + $151 = HEAP32[$2>>2]|0; + $152 = $151&255; + $153 = HEAP32[$pInode>>2]|0; + $154 = (($153) + 12|0); + HEAP8[$154>>0] = $152; + break; + } + $155 = ($147|0)==(4); + if ($155) { + $156 = HEAP32[$pFile>>2]|0; + $157 = (($156) + 16|0); + HEAP8[$157>>0] = 3; + $158 = HEAP32[$pInode>>2]|0; + $159 = (($158) + 12|0); + HEAP8[$159>>0] = 3; + } + } + } while(0); + _unixLeaveMutex(); + $160 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $160; + $161 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($161|0); +} +function _unixUnlock($id,$eFileLock) { + $id = $id|0; + $eFileLock = $eFileLock|0; + var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $id; + HEAP32[$1>>2] = $eFileLock; + $2 = HEAP32[$0>>2]|0; + $3 = HEAP32[$1>>2]|0; + $4 = (_posixUnlock($2,$3,0)|0); + STACKTOP = sp;return ($4|0); +} +function _unixCheckReservedLock($id,$pResOut) { + $id = $id|0; + $pResOut = $pResOut|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $lock = 0; + var $pFile = 0, $rc = 0, $reserved = 0, $vararg_buffer = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer = sp; + $0 = sp + 40|0; + $1 = sp + 4|0; + $rc = sp + 8|0; + $reserved = sp + 12|0; + $pFile = sp + 16|0; + $lock = sp + 24|0; + HEAP32[$0>>2] = $id; + HEAP32[$1>>2] = $pResOut; + HEAP32[$rc>>2] = 0; + HEAP32[$reserved>>2] = 0; + $2 = HEAP32[$0>>2]|0; + HEAP32[$pFile>>2] = $2; + _unixEnterMutex(); + $3 = HEAP32[$pFile>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP32[$4>>2]|0; + $6 = (($5) + 12|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = ($8|0)>(1); + if ($9) { + HEAP32[$reserved>>2] = 1; + } + $10 = HEAP32[$reserved>>2]|0; + $11 = ($10|0)!=(0); + do { + if (!($11)) { + $12 = HEAP32[$pFile>>2]|0; + $13 = (($12) + 8|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + 13|0); + $16 = HEAP8[$15>>0]|0; + $17 = ($16<<24>>24)!=(0); + if (!($17)) { + $18 = (($lock) + 2|0); + HEAP16[$18>>1] = 0; + $19 = HEAP32[1472>>2]|0; + $20 = (($19) + 1)|0; + $21 = (($lock) + 4|0); + HEAP32[$21>>2] = $20; + $22 = (($lock) + 8|0); + HEAP32[$22>>2] = 1; + HEAP16[$lock>>1] = 1; + $23 = HEAP32[((43688 + 88|0))>>2]|0; + $24 = HEAP32[$pFile>>2]|0; + $25 = (($24) + 12|0); + $26 = HEAP32[$25>>2]|0; + HEAP32[$vararg_buffer>>2] = $lock; + $27 = (FUNCTION_TABLE_iiii[$23 & 31]($26,12,$vararg_buffer)|0); + $28 = ($27|0)!=(0); + if ($28) { + HEAP32[$rc>>2] = 3594; + $29 = (___errno_location()|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$pFile>>2]|0; + $32 = (($31) + 20|0); + HEAP32[$32>>2] = $30; + break; + } + $33 = HEAP16[$lock>>1]|0; + $34 = $33 << 16 >> 16; + $35 = ($34|0)!=(2); + if ($35) { + HEAP32[$reserved>>2] = 1; + } + } + } + } while(0); + _unixLeaveMutex(); + $36 = HEAP32[$reserved>>2]|0; + $37 = HEAP32[$1>>2]|0; + HEAP32[$37>>2] = $36; + $38 = HEAP32[$rc>>2]|0; + STACKTOP = sp;return ($38|0); +} +function _posixUnlock($id,$eFileLock,$handleNFSUnlock) { + $id = $id|0; + $eFileLock = $eFileLock|0; + $handleNFSUnlock = $handleNFSUnlock|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; + var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; + var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $9 = 0, $lock = 0, $pFile = 0, $pInode = 0, $rc = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $0 = sp + 44|0; + $1 = sp; + $2 = sp + 4|0; + $3 = sp + 8|0; + $pFile = sp + 12|0; + $pInode = sp + 16|0; + $lock = sp + 24|0; + $rc = sp + 40|0; + HEAP32[$1>>2] = $id; + HEAP32[$2>>2] = $eFileLock; + HEAP32[$3>>2] = $handleNFSUnlock; + $4 = HEAP32[$1>>2]|0; + HEAP32[$pFile>>2] = $4; + HEAP32[$rc>>2] = 0; + $5 = HEAP32[$pFile>>2]|0; + $6 = (($5) + 16|0); + $7 = HEAP8[$6>>0]|0; + $8 = $7&255; + $9 = HEAP32[$2>>2]|0; + $10 = ($8|0)<=($9|0); + if ($10) { + HEAP32[$0>>2] = 0; + $88 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($88|0); + } + _unixEnterMutex(); + $11 = HEAP32[$pFile>>2]|0; + $12 = (($11) + 8|0); + $13 = HEAP32[$12>>2]|0; + HEAP32[$pInode>>2] = $13; + $14 = HEAP32[$pFile>>2]|0; + $15 = (($14) + 16|0); + $16 = HEAP8[$15>>0]|0; + $17 = $16&255; + $18 = ($17|0)>(1); + do { + if ($18) { + $19 = HEAP32[$2>>2]|0; + $20 = ($19|0)==(1); + if ($20) { + HEAP16[$lock>>1] = 0; + $21 = (($lock) + 2|0); + HEAP16[$21>>1] = 0; + $22 = HEAP32[1472>>2]|0; + $23 = (($22) + 2)|0; + $24 = (($lock) + 4|0); + HEAP32[$24>>2] = $23; + $25 = (($lock) + 8|0); + HEAP32[$25>>2] = 510; + $26 = HEAP32[$pFile>>2]|0; + $27 = (_unixFileLock($26,$lock)|0); + $28 = ($27|0)!=(0); + if ($28) { + HEAP32[$rc>>2] = 2314; + $29 = (___errno_location()|0); + $30 = HEAP32[$29>>2]|0; + $31 = HEAP32[$pFile>>2]|0; + $32 = (($31) + 20|0); + HEAP32[$32>>2] = $30; + break; + } + } + HEAP16[$lock>>1] = 2; + $33 = (($lock) + 2|0); + HEAP16[$33>>1] = 0; + $34 = HEAP32[1472>>2]|0; + $35 = (($lock) + 4|0); + HEAP32[$35>>2] = $34; + $36 = (($lock) + 8|0); + HEAP32[$36>>2] = 2; + $37 = HEAP32[$pFile>>2]|0; + $38 = (_unixFileLock($37,$lock)|0); + $39 = ($38|0)==(0); + if ($39) { + $40 = HEAP32[$pInode>>2]|0; + $41 = (($40) + 12|0); + HEAP8[$41>>0] = 1; + label = 10; + break; + } else { + HEAP32[$rc>>2] = 2058; + $42 = (___errno_location()|0); + $43 = HEAP32[$42>>2]|0; + $44 = HEAP32[$pFile>>2]|0; + $45 = (($44) + 20|0); + HEAP32[$45>>2] = $43; + break; + } + } else { + label = 10; + } + } while(0); + if ((label|0) == 10) { + $46 = HEAP32[$2>>2]|0; + $47 = ($46|0)==(0); + if ($47) { + $48 = HEAP32[$pInode>>2]|0; + $49 = (($48) + 8|0); + $50 = HEAP32[$49>>2]|0; + $51 = (($50) + -1)|0; + HEAP32[$49>>2] = $51; + $52 = HEAP32[$pInode>>2]|0; + $53 = (($52) + 8|0); + $54 = HEAP32[$53>>2]|0; + $55 = ($54|0)==(0); + do { + if ($55) { + HEAP16[$lock>>1] = 2; + $56 = (($lock) + 2|0); + HEAP16[$56>>1] = 0; + $57 = (($lock) + 8|0); + HEAP32[$57>>2] = 0; + $58 = (($lock) + 4|0); + HEAP32[$58>>2] = 0; + $59 = HEAP32[$pFile>>2]|0; + $60 = (_unixFileLock($59,$lock)|0); + $61 = ($60|0)==(0); + if ($61) { + $62 = HEAP32[$pInode>>2]|0; + $63 = (($62) + 12|0); + HEAP8[$63>>0] = 0; + break; + } else { + HEAP32[$rc>>2] = 2058; + $64 = (___errno_location()|0); + $65 = HEAP32[$64>>2]|0; + $66 = HEAP32[$pFile>>2]|0; + $67 = (($66) + 20|0); + HEAP32[$67>>2] = $65; + $68 = HEAP32[$pInode>>2]|0; + $69 = (($68) + 12|0); + HEAP8[$69>>0] = 0; + $70 = HEAP32[$pFile>>2]|0; + $71 = (($70) + 16|0); + HEAP8[$71>>0] = 0; + break; + } + } + } while(0); + $72 = HEAP32[$pInode>>2]|0; + $73 = (($72) + 24|0); + $74 = HEAP32[$73>>2]|0; + $75 = (($74) + -1)|0; + HEAP32[$73>>2] = $75; + $76 = HEAP32[$pInode>>2]|0; + $77 = (($76) + 24|0); + $78 = HEAP32[$77>>2]|0; + $79 = ($78|0)==(0); + if ($79) { + $80 = HEAP32[$pFile>>2]|0; + _closePendingFds($80); + } + } + } + _unixLeaveMutex(); + $81 = HEAP32[$rc>>2]|0; + $82 = ($81|0)==(0); + if ($82) { + $83 = HEAP32[$2>>2]|0; + $84 = $83&255; + $85 = HEAP32[$pFile>>2]|0; + $86 = (($85) + 16|0); + HEAP8[$86>>0] = $84; + } + $87 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $87; + $88 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($88|0); +} +function _unixFileLock($pFile,$pLock) { + $pFile = $pFile|0; + $pLock = $pLock|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; + var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $lock = 0, $pInode = 0, $rc = 0, $vararg_buffer1 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 48|0; + $vararg_buffer1 = sp; + $0 = sp + 40|0; + $1 = sp + 4|0; + $2 = sp + 8|0; + $rc = sp + 12|0; + $pInode = sp + 16|0; + $lock = sp + 24|0; + HEAP32[$1>>2] = $pFile; + HEAP32[$2>>2] = $pLock; + $3 = HEAP32[$1>>2]|0; + $4 = (($3) + 8|0); + $5 = HEAP32[$4>>2]|0; + HEAP32[$pInode>>2] = $5; + $6 = HEAP32[$1>>2]|0; + $7 = (($6) + 18|0); + $8 = HEAP16[$7>>1]|0; + $9 = $8&65535; + $10 = $9 & 1; + $11 = ($10|0)!=(0); + if ($11) { + label = 3; + } else { + $12 = HEAP32[$pInode>>2]|0; + $13 = (($12) + 13|0); + $14 = HEAP8[$13>>0]|0; + $15 = $14&255; + $16 = ($15|0)!=(0); + if ($16) { + label = 3; + } else { + label = 9; + } + } + do { + if ((label|0) == 3) { + $17 = HEAP32[$1>>2]|0; + $18 = (($17) + 18|0); + $19 = HEAP16[$18>>1]|0; + $20 = $19&65535; + $21 = $20 & 2; + $22 = ($21|0)==(0); + if ($22) { + $23 = HEAP32[$pInode>>2]|0; + $24 = (($23) + 13|0); + $25 = HEAP8[$24>>0]|0; + $26 = $25&255; + $27 = ($26|0)==(0); + if (!($27)) { + HEAP32[$rc>>2] = 0; + break; + } + $28 = (($lock) + 2|0); + HEAP16[$28>>1] = 0; + $29 = HEAP32[1472>>2]|0; + $30 = (($29) + 2)|0; + $31 = (($lock) + 4|0); + HEAP32[$31>>2] = $30; + $32 = (($lock) + 8|0); + HEAP32[$32>>2] = 510; + HEAP16[$lock>>1] = 1; + $33 = HEAP32[((43688 + 88|0))>>2]|0; + $34 = HEAP32[$1>>2]|0; + $35 = (($34) + 12|0); + $36 = HEAP32[$35>>2]|0; + HEAP32[$vararg_buffer1>>2] = $lock; + $37 = (FUNCTION_TABLE_iiii[$33 & 31]($36,13,$vararg_buffer1)|0); + HEAP32[$rc>>2] = $37; + $38 = HEAP32[$rc>>2]|0; + $39 = ($38|0)<(0); + if (!($39)) { + $41 = HEAP32[$pInode>>2]|0; + $42 = (($41) + 13|0); + HEAP8[$42>>0] = 1; + $43 = HEAP32[$pInode>>2]|0; + $44 = (($43) + 24|0); + $45 = HEAP32[$44>>2]|0; + $46 = (($45) + 1)|0; + HEAP32[$44>>2] = $46; + break; + } + $40 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $40; + $54 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($54|0); + } else { + label = 9; + } + } + } while(0); + if ((label|0) == 9) { + $47 = HEAP32[((43688 + 88|0))>>2]|0; + $48 = HEAP32[$1>>2]|0; + $49 = (($48) + 12|0); + $50 = HEAP32[$49>>2]|0; + $51 = HEAP32[$2>>2]|0; + HEAP32[$vararg_buffer1>>2] = $51; + $52 = (FUNCTION_TABLE_iiii[$47 & 31]($50,13,$vararg_buffer1)|0); + HEAP32[$rc>>2] = $52; + } + $53 = HEAP32[$rc>>2]|0; + HEAP32[$0>>2] = $53; + $54 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($54|0); +} +function _closePendingFds($pFile) { + $pFile = $pFile|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0; + var $pInode = 0, $pNext = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 12|0; + $pInode = sp; + $p = sp + 4|0; + $pNext = sp + 8|0; + HEAP32[$0>>2] = $pFile; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pInode>>2] = $3; + $4 = HEAP32[$pInode>>2]|0; + $5 = (($4) + 28|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$p>>2] = $6; + while(1) { + $7 = HEAP32[$p>>2]|0; + $8 = ($7|0)!=(0|0); + if (!($8)) { + break; + } + $9 = HEAP32[$p>>2]|0; + $10 = (($9) + 8|0); + $11 = HEAP32[$10>>2]|0; + HEAP32[$pNext>>2] = $11; + $12 = HEAP32[$0>>2]|0; + $13 = HEAP32[$p>>2]|0; + $14 = HEAP32[$13>>2]|0; + _robust_close($12,$14,25104); + $15 = HEAP32[$p>>2]|0; + _sqlite3_free($15); + $16 = HEAP32[$pNext>>2]|0; + HEAP32[$p>>2] = $16; + } + $17 = HEAP32[$pInode>>2]|0; + $18 = (($17) + 28|0); + HEAP32[$18>>2] = 0; + STACKTOP = sp;return; +} +function _setPendingFd($pFile) { + $pFile = $pFile|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $p = 0; + var $pInode = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 8|0; + $pInode = sp; + $p = sp + 4|0; + HEAP32[$0>>2] = $pFile; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pInode>>2] = $3; + $4 = HEAP32[$0>>2]|0; + $5 = (($4) + 28|0); + $6 = HEAP32[$5>>2]|0; + HEAP32[$p>>2] = $6; + $7 = HEAP32[$pInode>>2]|0; + $8 = (($7) + 28|0); + $9 = HEAP32[$8>>2]|0; + $10 = HEAP32[$p>>2]|0; + $11 = (($10) + 8|0); + HEAP32[$11>>2] = $9; + $12 = HEAP32[$p>>2]|0; + $13 = HEAP32[$pInode>>2]|0; + $14 = (($13) + 28|0); + HEAP32[$14>>2] = $12; + $15 = HEAP32[$0>>2]|0; + $16 = (($15) + 12|0); + HEAP32[$16>>2] = -1; + $17 = HEAP32[$0>>2]|0; + $18 = (($17) + 28|0); + HEAP32[$18>>2] = 0; + STACKTOP = sp;return; +} +function _releaseInodeInfo($pFile) { + $pFile = $pFile|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $pInode = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $pInode = sp; + HEAP32[$0>>2] = $pFile; + $1 = HEAP32[$0>>2]|0; + $2 = (($1) + 8|0); + $3 = HEAP32[$2>>2]|0; + HEAP32[$pInode>>2] = $3; + $4 = HEAP32[$pInode>>2]|0; + $5 = ($4|0)!=(0|0); + if (!($5)) { + STACKTOP = sp;return; + } + $6 = HEAP32[$pInode>>2]|0; + $7 = (($6) + 16|0); + $8 = HEAP32[$7>>2]|0; + $9 = (($8) + -1)|0; + HEAP32[$7>>2] = $9; + $10 = HEAP32[$pInode>>2]|0; + $11 = (($10) + 16|0); + $12 = HEAP32[$11>>2]|0; + $13 = ($12|0)==(0); + if (!($13)) { + STACKTOP = sp;return; + } + $14 = HEAP32[$0>>2]|0; + _closePendingFds($14); + $15 = HEAP32[$pInode>>2]|0; + $16 = (($15) + 36|0); + $17 = HEAP32[$16>>2]|0; + $18 = ($17|0)!=(0|0); + $19 = HEAP32[$pInode>>2]|0; + $20 = (($19) + 32|0); + $21 = HEAP32[$20>>2]|0; + if ($18) { + $22 = HEAP32[$pInode>>2]|0; + $23 = (($22) + 36|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + 32|0); + HEAP32[$25>>2] = $21; + } else { + HEAP32[44872>>2] = $21; + } + $26 = HEAP32[$pInode>>2]|0; + $27 = (($26) + 32|0); + $28 = HEAP32[$27>>2]|0; + $29 = ($28|0)!=(0|0); + if ($29) { + $30 = HEAP32[$pInode>>2]|0; + $31 = (($30) + 36|0); + $32 = HEAP32[$31>>2]|0; + $33 = HEAP32[$pInode>>2]|0; + $34 = (($33) + 32|0); + $35 = HEAP32[$34>>2]|0; + $36 = (($35) + 36|0); + HEAP32[$36>>2] = $32; + } + $37 = HEAP32[$pInode>>2]|0; + _sqlite3_free($37); + STACKTOP = sp;return; +} +function _posixIoFinderImpl($z,$p) { + $z = $z|0; + $p = $p|0; + var $0 = 0, $1 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $z; + HEAP32[$1>>2] = $p; + STACKTOP = sp;return (44664|0); +} +function _getIntArg($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; + var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + $1 = sp + 8|0; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($3|0)<=($6|0); + if ($7) { + $8 = $0; + $9 = $8; + HEAP32[$9>>2] = 0; + $10 = (($8) + 4)|0; + $11 = $10; + HEAP32[$11>>2] = 0; + $27 = $0; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (($27) + 4)|0; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + tempRet0 = $32; + STACKTOP = sp;return ($29|0); + } else { + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 4|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + 1)|0; + HEAP32[$13>>2] = $15; + $16 = HEAP32[$1>>2]|0; + $17 = (($16) + 8|0); + $18 = HEAP32[$17>>2]|0; + $19 = (($18) + ($14<<2)|0); + $20 = HEAP32[$19>>2]|0; + $21 = (_sqlite3_value_int64($20)|0); + $22 = tempRet0; + $23 = $0; + $24 = $23; + HEAP32[$24>>2] = $21; + $25 = (($23) + 4)|0; + $26 = $25; + HEAP32[$26>>2] = $22; + $27 = $0; + $28 = $27; + $29 = HEAP32[$28>>2]|0; + $30 = (($27) + 4)|0; + $31 = $30; + $32 = HEAP32[$31>>2]|0; + tempRet0 = $32; + STACKTOP = sp;return ($29|0); + } + return 0|0; +} +function _getDoubleArg($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0.0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp; + $1 = sp + 8|0; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($3|0)<=($6|0); + if ($7) { + HEAPF64[$0>>3] = 0.0; + $18 = +HEAPF64[$0>>3]; + STACKTOP = sp;return (+$18); + } else { + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + 1)|0; + HEAP32[$9>>2] = $11; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 8|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + ($10<<2)|0); + $16 = HEAP32[$15>>2]|0; + $17 = (+_sqlite3_value_double($16)); + HEAPF64[$0>>3] = $17; + $18 = +HEAPF64[$0>>3]; + STACKTOP = sp;return (+$18); + } + return +0; +} +function _et_getdigit($val,$cnt) { + $val = $val|0; + $cnt = $cnt|0; + var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; + var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $d = 0, $digit = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 32|0; + $0 = sp + 20|0; + $1 = sp + 16|0; + $2 = sp + 8|0; + $digit = sp + 12|0; + $d = sp; + HEAP32[$1>>2] = $val; + HEAP32[$2>>2] = $cnt; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$3>>2]|0; + $5 = ($4|0)<=(0); + if ($5) { + HEAP8[$0>>0] = 48; + $24 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($24|0); + } else { + $6 = HEAP32[$2>>2]|0; + $7 = HEAP32[$6>>2]|0; + $8 = (($7) + -1)|0; + HEAP32[$6>>2] = $8; + $9 = HEAP32[$1>>2]|0; + $10 = +HEAPF64[$9>>3]; + $11 = (~~(($10))); + HEAP32[$digit>>2] = $11; + $12 = HEAP32[$digit>>2]|0; + $13 = (+($12|0)); + HEAPF64[$d>>3] = $13; + $14 = HEAP32[$digit>>2]|0; + $15 = (($14) + 48)|0; + HEAP32[$digit>>2] = $15; + $16 = HEAP32[$1>>2]|0; + $17 = +HEAPF64[$16>>3]; + $18 = +HEAPF64[$d>>3]; + $19 = $17 - $18; + $20 = $19 * 10.0; + $21 = HEAP32[$1>>2]|0; + HEAPF64[$21>>3] = $20; + $22 = HEAP32[$digit>>2]|0; + $23 = $22&255; + HEAP8[$0>>0] = $23; + $24 = HEAP8[$0>>0]|0; + STACKTOP = sp;return ($24|0); + } + return 0|0; +} +function _getTextArg($p) { + $p = $p|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$1>>2] = $p; + $2 = HEAP32[$1>>2]|0; + $3 = HEAP32[$2>>2]|0; + $4 = HEAP32[$1>>2]|0; + $5 = (($4) + 4|0); + $6 = HEAP32[$5>>2]|0; + $7 = ($3|0)<=($6|0); + if ($7) { + HEAP32[$0>>2] = 0; + $18 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($18|0); + } else { + $8 = HEAP32[$1>>2]|0; + $9 = (($8) + 4|0); + $10 = HEAP32[$9>>2]|0; + $11 = (($10) + 1)|0; + HEAP32[$9>>2] = $11; + $12 = HEAP32[$1>>2]|0; + $13 = (($12) + 8|0); + $14 = HEAP32[$13>>2]|0; + $15 = (($14) + ($10<<2)|0); + $16 = HEAP32[$15>>2]|0; + $17 = (_sqlite3_value_text($16)|0); + HEAP32[$0>>2] = $17; + $18 = HEAP32[$0>>2]|0; + STACKTOP = sp;return ($18|0); + } + return 0|0; +} +function _sqlite3AppendSpace($p,$N) { + $p = $p|0; + $N = $N|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; + var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 16|0; + $0 = sp + 4|0; + $1 = sp; + HEAP32[$0>>2] = $p; + HEAP32[$1>>2] = $N; + $2 = HEAP32[$0>>2]|0; + $3 = (($2) + 12|0); + $4 = HEAP32[$3>>2]|0; + $5 = HEAP32[$1>>2]|0; + $6 = (($4) + ($5))|0; + $7 = HEAP32[$0>>2]|0; + $8 = (($7) + 16|0); + $9 = HEAP32[$8>>2]|0; + $10 = ($6|0)>=($9|0); + if ($10) { + $11 = HEAP32[$0>>2]|0; + $12 = HEAP32[$1>>2]|0; + $13 = (_sqlite3StrAccumEnlarge($11,$12)|0); + HEAP32[$1>>2] = $13; + $14 = ($13|0)<=(0); + if ($14) { + STACKTOP = sp;return; + } + } + while(1) { + $15 = HEAP32[$1>>2]|0; + $16 = (($15) + -1)|0; + HEAP32[$1>>2] = $16; + $17 = ($15|0)>(0); + if (!($17)) { + break; + } + $18 = HEAP32[$0>>2]|0; + $19 = (($18) + 12|0); + $20 = HEAP32[$19>>2]|0; + $21 = (($20) + 1)|0; + HEAP32[$19>>2] = $21; + $22 = HEAP32[$0>>2]|0; + $23 = (($22) + 8|0); + $24 = HEAP32[$23>>2]|0; + $25 = (($24) + ($20)|0); + HEAP8[$25>>0] = 32; + } + STACKTOP = sp;return; +} +function _qsort($base,$nel,$width,$cmp) { + $base = $base|0; + $nel = $nel|0; + $width = $width|0; + $cmp = $cmp|0; + var $$ = 0, $$$i = 0, $$0$be$i = 0, $$0$be$i20 = 0, $$0$i50 = 0, $$01$be$i = 0, $$01$be$i19 = 0, $$01$i5$i = 0, $$012$i = 0, $$012$i16 = 0, $$02$i$i = 0, $$02$i3$i = 0, $$02$i3469 = 0, $$02$i72 = 0, $$02$us$i = 0, $$02$us$i32 = 0, $$03$i = 0, $$03$i15 = 0, $$66 = 0, $$67 = 0; + var $$lcssa75 = 0, $$lcssa76 = 0, $$pre = 0, $$pre$i = 0, $$pre$i22 = 0, $$pre$i28 = 0, $$pre$i9 = 0, $$sum = 0, $$sum$i = 0, $$sum$i18 = 0, $$sum2 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0; + var $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0; + var $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0; + var $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0; + var $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0; + var $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $4$phi = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0; + var $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0; + var $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0; + var $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $ar$i = 0, $exitcond$i = 0, $exitcond$i31 = 0, $head$0$lcssa = 0, $head$077 = 0; + var $head$1 = 0, $i$0 = 0, $i$0$lcssa$i = 0, $i$0$lcssa$i24 = 0, $i$01$us$i = 0, $i$01$us$i30 = 0, $i$04$i = 0, $i$04$i14 = 0, $lp = 0, $nTrailingZeros$03$i$i = 0, $nTrailingZeros$03$i2$i = 0, $pshift$0$lcssa = 0, $pshift$078 = 0, $pshift$1 = 0, $pshift$2 = 0, $sum = 0, $sum$i = 0, $sum$i17 = 0, $tmp$i = 0, $tmp$i26 = 0; + var label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 944|0; + $tmp$i26 = sp + 680|0; + $tmp$i = sp + 424|0; + $ar$i = sp; + $lp = sp + 232|0; + $0 = Math_imul($width, $nel)|0; + $1 = ($0|0)==(0); + if ($1) { + STACKTOP = sp;return; + } + $$sum = (($0) - ($width))|0; + $2 = (($lp) + 4|0); + HEAP32[$2>>2] = $width; + HEAP32[$lp>>2] = $width; + $4 = $width;$6 = $width;$i$0 = 2; + while(1) { + $3 = (($4) + ($width))|0; + $5 = (($3) + ($6))|0; + $7 = (($lp) + ($i$0<<2)|0); + HEAP32[$7>>2] = $5; + $8 = ($5>>>0)<($0>>>0); + $9 = (($i$0) + 1)|0; + if ($8) { + $4$phi = $6;$6 = $5;$i$0 = $9;$4 = $4$phi; + } else { + break; + } + } + $10 = (0 - ($width))|0; + $11 = (($base) + ($$sum)|0); + $12 = ($$sum|0)>(0); + if ($12) { + $13 = ($width|0)==(0); + $14 = ($width>>>0)>(256); + $15 = $14 ? 256 : $width; + $16 = ($15|0)==($width|0); + $17 = $11; + $19 = 1;$61 = 0;$head$077 = $base;$pshift$078 = 1; + while(1) { + $18 = $19 & 3; + $20 = ($18|0)==(3); + do { + if ($20) { + HEAP32[$ar$i>>2] = $head$077; + $21 = ($pshift$078|0)>(1); + L13: do { + if ($21) { + $$012$i = $pshift$078;$$03$i = $head$077;$27 = $head$077;$i$04$i = 1; + while(1) { + $22 = (($$03$i) + ($10)|0); + $23 = (($$012$i) + -2)|0; + $24 = (($lp) + ($23<<2)|0); + $25 = HEAP32[$24>>2]|0; + $sum$i = (($25) + ($width))|0; + $$sum$i = (0 - ($sum$i))|0; + $26 = (($$03$i) + ($$sum$i)|0); + $28 = (FUNCTION_TABLE_iii[$cmp & 127]($27,$26)|0); + $29 = ($28|0)>(-1); + if ($29) { + $30 = (FUNCTION_TABLE_iii[$cmp & 127]($27,$22)|0); + $31 = ($30|0)>(-1); + if ($31) { + $i$0$lcssa$i = $i$04$i; + break; + } + } + $32 = (FUNCTION_TABLE_iii[$cmp & 127]($26,$22)|0); + $33 = ($32|0)>(-1); + $34 = (($i$04$i) + 1)|0; + $35 = (($ar$i) + ($i$04$i<<2)|0); + if ($33) { + HEAP32[$35>>2] = $26; + $36 = (($$012$i) + -1)|0; + $$0$be$i = $26;$$01$be$i = $36; + } else { + HEAP32[$35>>2] = $22; + $$0$be$i = $22;$$01$be$i = $23; + } + $37 = ($$01$be$i|0)>(1); + if (!($37)) { + $i$0$lcssa$i = $34; + break; + } + $$pre$i = HEAP32[$ar$i>>2]|0; + $$012$i = $$01$be$i;$$03$i = $$0$be$i;$27 = $$pre$i;$i$04$i = $34; + } + $38 = ($i$0$lcssa$i|0)<(2); + if (!($38)) { + $39 = (($ar$i) + ($i$0$lcssa$i<<2)|0); + HEAP32[$39>>2] = $tmp$i; + if (!($13)) { + $40 = ($i$0$lcssa$i|0)>(0); + if ($40) { + $$02$us$i = $width;$53 = $tmp$i; + } else { + $41 = HEAP32[$ar$i>>2]|0; + _memcpy(($tmp$i|0),($41|0),($15|0))|0; + if ($16) { + break; + } else { + $$02$i72 = $width;$55 = $15; + } + while(1) { + $54 = (($$02$i72) - ($55))|0; + $56 = ($54>>>0)>(256); + $57 = $56 ? 256 : $54; + _memcpy(($tmp$i|0),($41|0),($57|0))|0; + $58 = ($54|0)==($57|0); + if ($58) { + break L13; + } else { + $$02$i72 = $54;$55 = $57; + } + } + } + while(1) { + $51 = ($$02$us$i>>>0)>(256); + $43 = $51 ? 256 : $$02$us$i; + $52 = HEAP32[$ar$i>>2]|0; + _memcpy(($53|0),($52|0),($43|0))|0; + $49 = $52;$i$01$us$i = 0; + while(1) { + $45 = (($ar$i) + ($i$01$us$i<<2)|0); + $46 = (($i$01$us$i) + 1)|0; + $47 = (($ar$i) + ($46<<2)|0); + $48 = HEAP32[$47>>2]|0; + _memcpy(($49|0),($48|0),($43|0))|0; + $50 = (($49) + ($43)|0); + HEAP32[$45>>2] = $50; + $exitcond$i = ($46|0)==($i$0$lcssa$i|0); + if ($exitcond$i) { + break; + } else { + $49 = $48;$i$01$us$i = $46; + } + } + $42 = ($$02$us$i|0)==($43|0); + if ($42) { + break L13; + } + $44 = (($$02$us$i) - ($43))|0; + $$pre$i9 = HEAP32[$39>>2]|0; + $$02$us$i = $44;$53 = $$pre$i9; + } + } + } + } + } while(0); + $59 = $19 >>> 2; + $60 = $61 << 30; + $62 = $59 | $60; + $63 = $61 >>> 2; + $64 = (($pshift$078) + 2)|0; + $122 = $62;$182 = $63;$pshift$1 = $64; + } else { + $65 = (($pshift$078) + -1)|0; + $66 = (($lp) + ($65<<2)|0); + $67 = HEAP32[$66>>2]|0; + $68 = $head$077; + $69 = (($17) - ($68))|0; + $70 = ($67>>>0)<($69>>>0); + L39: do { + if ($70) { + HEAP32[$ar$i>>2] = $head$077; + $71 = ($pshift$078|0)>(1); + if ($71) { + $$012$i16 = $pshift$078;$$03$i15 = $head$077;$77 = $head$077;$i$04$i14 = 1; + while(1) { + $72 = (($$03$i15) + ($10)|0); + $73 = (($$012$i16) + -2)|0; + $74 = (($lp) + ($73<<2)|0); + $75 = HEAP32[$74>>2]|0; + $sum$i17 = (($75) + ($width))|0; + $$sum$i18 = (0 - ($sum$i17))|0; + $76 = (($$03$i15) + ($$sum$i18)|0); + $78 = (FUNCTION_TABLE_iii[$cmp & 127]($77,$76)|0); + $79 = ($78|0)>(-1); + if ($79) { + $80 = (FUNCTION_TABLE_iii[$cmp & 127]($77,$72)|0); + $81 = ($80|0)>(-1); + if ($81) { + $i$0$lcssa$i24 = $i$04$i14; + break; + } + } + $82 = (FUNCTION_TABLE_iii[$cmp & 127]($76,$72)|0); + $83 = ($82|0)>(-1); + $84 = (($i$04$i14) + 1)|0; + $85 = (($ar$i) + ($i$04$i14<<2)|0); + if ($83) { + HEAP32[$85>>2] = $76; + $86 = (($$012$i16) + -1)|0; + $$0$be$i20 = $76;$$01$be$i19 = $86; + } else { + HEAP32[$85>>2] = $72; + $$0$be$i20 = $72;$$01$be$i19 = $73; + } + $87 = ($$01$be$i19|0)>(1); + if (!($87)) { + $i$0$lcssa$i24 = $84; + break; + } + $$pre$i22 = HEAP32[$ar$i>>2]|0; + $$012$i16 = $$01$be$i19;$$03$i15 = $$0$be$i20;$77 = $$pre$i22;$i$04$i14 = $84; + } + $88 = ($i$0$lcssa$i24|0)<(2); + if (!($88)) { + $89 = (($ar$i) + ($i$0$lcssa$i24<<2)|0); + HEAP32[$89>>2] = $tmp$i26; + if (!($13)) { + $90 = ($i$0$lcssa$i24|0)>(0); + if ($90) { + $$02$us$i32 = $width;$103 = $tmp$i26; + } else { + $91 = HEAP32[$ar$i>>2]|0; + _memcpy(($tmp$i26|0),($91|0),($15|0))|0; + if ($16) { + break; + } else { + $$02$i3469 = $width;$105 = $15; + } + while(1) { + $104 = (($$02$i3469) - ($105))|0; + $106 = ($104>>>0)>(256); + $107 = $106 ? 256 : $104; + _memcpy(($tmp$i26|0),($91|0),($107|0))|0; + $108 = ($104|0)==($107|0); + if ($108) { + break L39; + } else { + $$02$i3469 = $104;$105 = $107; + } + } + } + while(1) { + $101 = ($$02$us$i32>>>0)>(256); + $93 = $101 ? 256 : $$02$us$i32; + $102 = HEAP32[$ar$i>>2]|0; + _memcpy(($103|0),($102|0),($93|0))|0; + $99 = $102;$i$01$us$i30 = 0; + while(1) { + $95 = (($ar$i) + ($i$01$us$i30<<2)|0); + $96 = (($i$01$us$i30) + 1)|0; + $97 = (($ar$i) + ($96<<2)|0); + $98 = HEAP32[$97>>2]|0; + _memcpy(($99|0),($98|0),($93|0))|0; + $100 = (($99) + ($93)|0); + HEAP32[$95>>2] = $100; + $exitcond$i31 = ($96|0)==($i$0$lcssa$i24|0); + if ($exitcond$i31) { + break; + } else { + $99 = $98;$i$01$us$i30 = $96; + } + } + $92 = ($$02$us$i32|0)==($93|0); + if ($92) { + break L39; + } + $94 = (($$02$us$i32) - ($93))|0; + $$pre$i28 = HEAP32[$89>>2]|0; + $$02$us$i32 = $94;$103 = $$pre$i28; + } + } + } + } + } else { + _trinkle($head$077,$width,$cmp,$19,$61,$pshift$078,0,$lp); + } + } while(0); + $109 = ($pshift$078|0)==(1); + if ($109) { + $110 = $61 << 1; + $111 = $19 >>> 31; + $112 = $111 | $110; + $113 = $19 << 1; + $122 = $113;$182 = $112;$pshift$1 = 0; + break; + } else { + $114 = ($65>>>0)>(31); + $115 = (($pshift$078) + -33)|0; + $$ = $114 ? 0 : $19; + $$66 = $114 ? $19 : $61; + $$67 = $114 ? $115 : $65; + $116 = $$66 << $$67; + $117 = (32 - ($$67))|0; + $118 = $$ >>> $117; + $119 = $118 | $116; + $120 = $$ << $$67; + $122 = $120;$182 = $119;$pshift$1 = 1; + break; + } + } + } while(0); + $121 = $122 | 1; + $123 = (($head$077) + ($width)|0); + $124 = ($123>>>0)<($11>>>0); + if ($124) { + $19 = $121;$61 = $182;$head$077 = $123;$pshift$078 = $pshift$1; + } else { + $$lcssa75 = $182;$$lcssa76 = $121;$head$0$lcssa = $123;$pshift$0$lcssa = $pshift$1; + break; + } + } + } else { + $$lcssa75 = 0;$$lcssa76 = 1;$head$0$lcssa = $base;$pshift$0$lcssa = 1; + } + _trinkle($head$0$lcssa,$width,$cmp,$$lcssa76,$$lcssa75,$pshift$0$lcssa,0,$lp); + $127 = $$lcssa76;$129 = $$lcssa75;$head$1 = $head$0$lcssa;$pshift$2 = $pshift$0$lcssa; + while(1) { + $125 = ($pshift$2|0)==(1); + if ($125) { + $126 = ($127|0)==(1); + if ($126) { + $128 = ($129|0)==(0); + if ($128) { + break; + } else { + label = 52; + } + } + } else { + label = 52; + } + if ((label|0) == 52) { + label = 0; + $130 = ($pshift$2|0)<(2); + if (!($130)) { + $162 = $129 << 2; + $163 = $127 >>> 30; + $164 = $163 | $162; + $165 = (($pshift$2) + -2)|0; + $166 = $127 << 1; + $167 = $166 & 2147483646; + $168 = $163 << 31; + $169 = $167 | $168; + $170 = $169 ^ 3; + $171 = $164 >>> 1; + $172 = (($lp) + ($165<<2)|0); + $173 = HEAP32[$172>>2]|0; + $sum = (($173) + ($width))|0; + $$sum2 = (0 - ($sum))|0; + $174 = (($head$1) + ($$sum2)|0); + $175 = (($pshift$2) + -1)|0; + _trinkle($174,$width,$cmp,$170,$171,$175,1,$lp); + $176 = $171 << 1; + $177 = $163 & 1; + $178 = $176 | $177; + $179 = $170 << 1; + $180 = $179 | 1; + $181 = (($head$1) + ($10)|0); + _trinkle($181,$width,$cmp,$180,$178,$165,1,$lp); + $127 = $180;$129 = $178;$head$1 = $181;$pshift$2 = $165; + continue; + } + } + $131 = (($127) + -1)|0; + $132 = ($131|0)==(0); + if ($132) { + $152 = 32; + label = 62; + } else { + $133 = $131 & 1; + $134 = ($133|0)==(0); + if ($134) { + $$02$i$i = $131;$nTrailingZeros$03$i$i = 0; + while(1) { + $135 = (($nTrailingZeros$03$i$i) + 1)|0; + $136 = $$02$i$i >>> 1; + $137 = $136 & 1; + $138 = ($137|0)==(0); + if ($138) { + $$02$i$i = $136;$nTrailingZeros$03$i$i = $135; + } else { + break; + } + } + $139 = ($135|0)==(0); + if ($139) { + label = 57; + } else { + $150 = $135; + } + } else { + label = 57; + } + if ((label|0) == 57) { + label = 0; + $140 = ($129|0)==(0); + if ($140) { + $$01$i5$i = 32; + } else { + $141 = $129 & 1; + $142 = ($141|0)==(0); + if ($142) { + $$02$i3$i = $129;$nTrailingZeros$03$i2$i = 0; + while(1) { + $143 = (($nTrailingZeros$03$i2$i) + 1)|0; + $144 = $$02$i3$i >>> 1; + $145 = $144 & 1; + $146 = ($145|0)==(0); + if ($146) { + $$02$i3$i = $144;$nTrailingZeros$03$i2$i = $143; + } else { + $$01$i5$i = $143; + break; + } + } + } else { + $$01$i5$i = 0; + } + } + $147 = (($$01$i5$i) + 32)|0; + $148 = ($$01$i5$i|0)==(0); + $$$i = $148 ? 0 : $147; + $150 = $$$i; + } + $149 = ($150>>>0)>(31); + if ($149) { + $152 = $150; + label = 62; + } else { + $$0$i50 = $150;$154 = $127;$157 = $129;$161 = $150; + } + } + if ((label|0) == 62) { + label = 0; + $151 = (($152) + -32)|0; + $$0$i50 = $151;$154 = $129;$157 = 0;$161 = $152; + } + $153 = $154 >>> $$0$i50; + $155 = (32 - ($$0$i50))|0; + $156 = $157 << $155; + $158 = $156 | $153; + $159 = $157 >>> $$0$i50; + $160 = (($161) + ($pshift$2))|0; + $$pre = (($head$1) + ($10)|0); + $127 = $158;$129 = $159;$head$1 = $$pre;$pshift$2 = $160; + } + STACKTOP = sp;return; +} +function _trinkle($head,$width,$cmp,$pp$val,$pp$1$val,$pshift,$trusty,$lp) { + $head = $head|0; + $width = $width|0; + $cmp = $cmp|0; + $pp$val = $pp$val|0; + $pp$1$val = $pp$1$val|0; + $pshift = $pshift|0; + $trusty = $trusty|0; + $lp = $lp|0; + var $$$i = 0, $$0$be$i = 0, $$0$i = 0, $$0$lcssa = 0, $$0$lcssa26 = 0, $$01$be$i = 0, $$01$i5$i = 0, $$01$lcssa = 0, $$01$lcssa28 = 0, $$0110 = 0, $$012 = 0, $$012$i = 0, $$02$i$i = 0, $$02$i146 = 0, $$02$i3 = 0, $$02$i3$i = 0, $$02$lcssa = 0, $$02$us$i = 0, $$02$us$i12 = 0, $$029 = 0; + var $$03$i = 0, $$pre = 0, $$pre$i = 0, $$pre$i3 = 0, $$pre$i8 = 0, $$sum = 0, $$sum$i = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0; + var $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $13 = 0; + var $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; + var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; + var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; + var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; + var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $ar = 0, $ar$i = 0, $exitcond$i = 0, $exitcond$i11 = 0, $i$0$lcssa = 0, $i$0$lcssa$i = 0; + var $i$0$lcssa27 = 0, $i$01$us$i = 0, $i$01$us$i10 = 0, $i$011 = 0, $i$04$i = 0, $nTrailingZeros$03$i$i = 0, $nTrailingZeros$03$i2$i = 0, $or$cond = 0, $or$cond1 = 0, $or$cond18 = 0, $sum = 0, $sum$i = 0, $tmp$i6 = 0, label = 0, sp = 0; + sp = STACKTOP; + STACKTOP = STACKTOP + 720|0; + $tmp$i6 = sp + 456|0; + $ar$i = sp; + $ar = sp + 228|0; + HEAP32[$ar>>2] = $head; + $0 = (0 - ($width))|0; + $1 = ($pp$val|0)==(1); + $2 = ($pp$1$val|0)==(0); + $or$cond18 = $1 & $2; + L1: do { + if ($or$cond18) { + $$0$lcssa = $head;$$01$lcssa = $pshift;$$02$lcssa = $trusty;$i$0$lcssa = 1; + label = 18; + } else { + $$0110 = $pshift;$$012 = $head;$$029 = $trusty;$24 = $pp$val;$34 = $pp$1$val;$7 = $head;$i$011 = 1; + while(1) { + $3 = (($lp) + ($$0110<<2)|0); + $4 = HEAP32[$3>>2]|0; + $5 = (0 - ($4))|0; + $6 = (($$012) + ($5)|0); + $8 = (FUNCTION_TABLE_iii[$cmp & 127]($6,$7)|0); + $9 = ($8|0)<(1); + if ($9) { + $$0$lcssa = $$012;$$01$lcssa = $$0110;$$02$lcssa = $$029;$i$0$lcssa = $i$011; + label = 18; + break L1; + } + $10 = ($$029|0)==(0); + $11 = ($$0110|0)>(1); + $or$cond = $10 & $11; + if ($or$cond) { + $12 = (($$012) + ($0)|0); + $13 = (($$0110) + -2)|0; + $14 = (($lp) + ($13<<2)|0); + $15 = HEAP32[$14>>2]|0; + $16 = (FUNCTION_TABLE_iii[$cmp & 127]($12,$6)|0); + $17 = ($16|0)>(-1); + if ($17) { + $$0$lcssa26 = $$012;$$01$lcssa28 = $$0110;$i$0$lcssa27 = $i$011; + break L1; + } + $sum = (($15) + ($width))|0; + $$sum = (0 - ($sum))|0; + $18 = (($$012) + ($$sum)|0); + $19 = (FUNCTION_TABLE_iii[$cmp & 127]($18,$6)|0); + $20 = ($19|0)>(-1); + if ($20) { + $$0$lcssa26 = $$012;$$01$lcssa28 = $$0110;$i$0$lcssa27 = $i$011; + break L1; + } + } + $21 = (($i$011) + 1)|0; + $22 = (($ar) + ($i$011<<2)|0); + HEAP32[$22>>2] = $6; + $23 = (($24) + -1)|0; + $25 = ($23|0)==(0); + if ($25) { + $46 = 32; + label = 15; + } else { + $26 = $23 & 1; + $27 = ($26|0)==(0); + if ($27) { + $$02$i$i = $23;$nTrailingZeros$03$i$i = 0; + while(1) { + $28 = (($nTrailingZeros$03$i$i) + 1)|0; + $29 = $$02$i$i >>> 1; + $30 = $29 & 1; + $31 = ($30|0)==(0); + if ($31) { + $$02$i$i = $29;$nTrailingZeros$03$i$i = $28; + } else { + break; + } + } + $32 = ($28|0)==(0); + if ($32) { + label = 10; + } else { + $44 = $28; + } + } else { + label = 10; + } + if ((label|0) == 10) { + label = 0; + $33 = ($34|0)==(0); + if ($33) { + $$01$i5$i = 32; + } else { + $35 = $34 & 1; + $36 = ($35|0)==(0); + if ($36) { + $$02$i3$i = $34;$nTrailingZeros$03$i2$i = 0; + while(1) { + $37 = (($nTrailingZeros$03$i2$i) + 1)|0; + $38 = $$02$i3$i >>> 1; + $39 = $38 & 1; + $40 = ($39|0)==(0); + if ($40) { + $$02$i3$i = $38;$nTrailingZeros$03$i2$i = $37; + } else { + $$01$i5$i = $37; + break; + } + } + } else { + $$01$i5$i = 0; + } + } + $41 = (($$01$i5$i) + 32)|0; + $42 = ($$01$i5$i|0)==(0); + $$$i = $42 ? 0 : $41; + $44 = $$$i; + } + $43 = ($44>>>0)>(31); + if ($43) { + $46 = $44; + label = 15; + } else { + $$0$i = $44;$48 = $24;$51 = $34;$55 = $44; + } + } + if ((label|0) == 15) { + label = 0; + $45 = (($46) + -32)|0; + $$0$i = $45;$48 = $34;$51 = 0;$55 = $46; + } + $47 = $48 >>> $$0$i; + $49 = (32 - ($$0$i))|0; + $50 = $51 << $49; + $52 = $50 | $47; + $53 = $51 >>> $$0$i; + $54 = (($55) + ($$0110))|0; + $56 = ($52|0)==(1); + $57 = ($53|0)==(0); + $or$cond1 = $56 & $57; + if ($or$cond1) { + $$0$lcssa26 = $6;$$01$lcssa28 = $54;$i$0$lcssa27 = $21; + break L1; + } + $$pre = HEAP32[$ar>>2]|0; + $$0110 = $54;$$012 = $6;$$029 = 0;$24 = $52;$34 = $53;$7 = $$pre;$i$011 = $21; + } + } + } while(0); + if ((label|0) == 18) { + $58 = ($$02$lcssa|0)==(0); + if ($58) { + $$0$lcssa26 = $$0$lcssa;$$01$lcssa28 = $$01$lcssa;$i$0$lcssa27 = $i$0$lcssa; + } else { + STACKTOP = sp;return; + } + } + $59 = ($i$0$lcssa27|0)<(2); + L31: do { + if (!($59)) { + $60 = (($ar) + ($i$0$lcssa27<<2)|0); + HEAP32[$60>>2] = $tmp$i6; + $61 = ($width|0)==(0); + if (!($61)) { + $62 = ($i$0$lcssa27|0)>(0); + if ($62) { + $$02$us$i12 = $width;$78 = $tmp$i6; + } else { + $63 = ($width>>>0)>(256); + $64 = $63 ? 256 : $width; + $65 = HEAP32[$ar>>2]|0; + _memcpy(($tmp$i6|0),($65|0),($64|0))|0; + $66 = ($64|0)==($width|0); + if ($66) { + break; + } else { + $$02$i146 = $width;$80 = $64; + } + while(1) { + $79 = (($$02$i146) - ($80))|0; + $81 = ($79>>>0)>(256); + $82 = $81 ? 256 : $79; + _memcpy(($tmp$i6|0),($65|0),($82|0))|0; + $83 = ($79|0)==($82|0); + if ($83) { + break L31; + } else { + $$02$i146 = $79;$80 = $82; + } + } + } + while(1) { + $76 = ($$02$us$i12>>>0)>(256); + $68 = $76 ? 256 : $$02$us$i12; + $77 = HEAP32[$ar>>2]|0; + _memcpy(($78|0),($77|0),($68|0))|0; + $74 = $77;$i$01$us$i10 = 0; + while(1) { + $70 = (($ar) + ($i$01$us$i10<<2)|0); + $71 = (($i$01$us$i10) + 1)|0; + $72 = (($ar) + ($71<<2)|0); + $73 = HEAP32[$72>>2]|0; + _memcpy(($74|0),($73|0),($68|0))|0; + $75 = (($74) + ($68)|0); + HEAP32[$70>>2] = $75; + $exitcond$i11 = ($71|0)==($i$0$lcssa27|0); + if ($exitcond$i11) { + break; + } else { + $74 = $73;$i$01$us$i10 = $71; + } + } + $67 = ($$02$us$i12|0)==($68|0); + if ($67) { + break L31; + } + $69 = (($$02$us$i12) - ($68))|0; + $$pre$i8 = HEAP32[$60>>2]|0; + $$02$us$i12 = $69;$78 = $$pre$i8; + } + } + } + } while(0); + HEAP32[$ar$i>>2] = $$0$lcssa26; + $84 = ($$01$lcssa28|0)>(1); + L45: do { + if ($84) { + $$012$i = $$01$lcssa28;$$03$i = $$0$lcssa26;$90 = $$0$lcssa26;$i$04$i = 1; + while(1) { + $85 = (($$03$i) + ($0)|0); + $86 = (($$012$i) + -2)|0; + $87 = (($lp) + ($86<<2)|0); + $88 = HEAP32[$87>>2]|0; + $sum$i = (($88) + ($width))|0; + $$sum$i = (0 - ($sum$i))|0; + $89 = (($$03$i) + ($$sum$i)|0); + $91 = (FUNCTION_TABLE_iii[$cmp & 127]($90,$89)|0); + $92 = ($91|0)>(-1); + if ($92) { + $93 = (FUNCTION_TABLE_iii[$cmp & 127]($90,$85)|0); + $94 = ($93|0)>(-1); + if ($94) { + $i$0$lcssa$i = $i$04$i; + break; + } + } + $95 = (FUNCTION_TABLE_iii[$cmp & 127]($89,$85)|0); + $96 = ($95|0)>(-1); + $97 = (($i$04$i) + 1)|0; + $98 = (($ar$i) + ($i$04$i<<2)|0); + if ($96) { + HEAP32[$98>>2] = $89; + $99 = (($$012$i) + -1)|0; + $$0$be$i = $89;$$01$be$i = $99; + } else { + HEAP32[$98>>2] = $85; + $$0$be$i = $85;$$01$be$i = $86; + } + $100 = ($$01$be$i|0)>(1); + if (!($100)) { + $i$0$lcssa$i = $97; + break; + } + $$pre$i = HEAP32[$ar$i>>2]|0; + $$012$i = $$01$be$i;$$03$i = $$0$be$i;$90 = $$pre$i;$i$04$i = $97; + } + $101 = ($i$0$lcssa$i|0)<(2); + if ($101) { + $126 = $tmp$i6; + } else { + $102 = (($ar$i) + ($i$0$lcssa$i<<2)|0); + HEAP32[$102>>2] = $tmp$i6; + $103 = ($width|0)==(0); + if ($103) { + $126 = $tmp$i6; + } else { + $104 = ($i$0$lcssa$i|0)>(0); + if ($104) { + $$02$us$i = $width;$120 = $tmp$i6; + } else { + $105 = ($width>>>0)>(256); + $106 = $105 ? 256 : $width; + $107 = HEAP32[$ar$i>>2]|0; + _memcpy(($tmp$i6|0),($107|0),($106|0))|0; + $108 = ($106|0)==($width|0); + if ($108) { + $126 = $tmp$i6; + break; + } else { + $$02$i3 = $width;$122 = $106; + } + while(1) { + $121 = (($$02$i3) - ($122))|0; + $123 = ($121>>>0)>(256); + $124 = $123 ? 256 : $121; + _memcpy(($tmp$i6|0),($107|0),($124|0))|0; + $125 = ($121|0)==($124|0); + if ($125) { + $126 = $tmp$i6; + break L45; + } else { + $$02$i3 = $121;$122 = $124; + } + } + } + while(1) { + $118 = ($$02$us$i>>>0)>(256); + $110 = $118 ? 256 : $$02$us$i; + $119 = HEAP32[$ar$i>>2]|0; + _memcpy(($120|0),($119|0),($110|0))|0; + $116 = $119;$i$01$us$i = 0; + while(1) { + $112 = (($ar$i) + ($i$01$us$i<<2)|0); + $113 = (($i$01$us$i) + 1)|0; + $114 = (($ar$i) + ($113<<2)|0); + $115 = HEAP32[$114>>2]|0; + _memcpy(($116|0),($115|0),($110|0))|0; + $117 = (($116) + ($110)|0); + HEAP32[$112>>2] = $117; + $exitcond$i = ($113|0)==($i$0$lcssa$i|0); + if ($exitcond$i) { + break; + } else { + $116 = $115;$i$01$us$i = $113; + } + } + $109 = ($$02$us$i|0)==($110|0); + if ($109) { + $126 = $tmp$i6; + break L45; + } + $111 = (($$02$us$i) - ($110))|0; + $$pre$i3 = HEAP32[$102>>2]|0; + $$02$us$i = $111;$120 = $$pre$i3; + } + } + } + } else { + $126 = $tmp$i6; + } + } while(0); + STACKTOP = sp;return; +} +function _malloc($bytes) { + $bytes = $bytes|0; + var $$$i = 0, $$3$i = 0, $$4$i = 0, $$pre = 0, $$pre$i = 0, $$pre$i$i = 0, $$pre$i25 = 0, $$pre$i25$i = 0, $$pre$phi$i$iZ2D = 0, $$pre$phi$i26$iZ2D = 0, $$pre$phi$i26Z2D = 0, $$pre$phi$iZ2D = 0, $$pre$phi58$i$iZ2D = 0, $$pre$phiZ2D = 0, $$pre57$i$i = 0, $$rsize$0$i = 0, $$rsize$3$i = 0, $$sum = 0, $$sum$i$i = 0, $$sum$i$i$i = 0; + var $$sum$i14$i = 0, $$sum$i15$i = 0, $$sum$i18$i = 0, $$sum$i21$i = 0, $$sum$i2334 = 0, $$sum$i32 = 0, $$sum$i35 = 0, $$sum1 = 0, $$sum1$i = 0, $$sum1$i$i = 0, $$sum1$i16$i = 0, $$sum1$i22$i = 0, $$sum1$i24 = 0, $$sum10 = 0, $$sum10$i = 0, $$sum10$i$i = 0, $$sum10$pre$i$i = 0, $$sum107$i = 0, $$sum108$i = 0, $$sum109$i = 0; + var $$sum11$i = 0, $$sum11$i$i = 0, $$sum11$i24$i = 0, $$sum110$i = 0, $$sum111$i = 0, $$sum1112 = 0, $$sum112$i = 0, $$sum113$i = 0, $$sum114$i = 0, $$sum115$i = 0, $$sum116$i = 0, $$sum117$i = 0, $$sum118$i = 0, $$sum119$i = 0, $$sum12$i = 0, $$sum12$i$i = 0, $$sum120$i = 0, $$sum13$i = 0, $$sum13$i$i = 0, $$sum14$i$i = 0; + var $$sum14$pre$i = 0, $$sum15$i = 0, $$sum15$i$i = 0, $$sum16$i = 0, $$sum16$i$i = 0, $$sum17$i = 0, $$sum17$i$i = 0, $$sum18$i = 0, $$sum1819$i$i = 0, $$sum2 = 0, $$sum2$i = 0, $$sum2$i$i = 0, $$sum2$i$i$i = 0, $$sum2$i17$i = 0, $$sum2$i19$i = 0, $$sum2$i23$i = 0, $$sum2$pre$i = 0, $$sum20$i$i = 0, $$sum21$i$i = 0, $$sum22$i$i = 0; + var $$sum23$i$i = 0, $$sum24$i$i = 0, $$sum25$i$i = 0, $$sum26$pre$i$i = 0, $$sum27$i$i = 0, $$sum28$i$i = 0, $$sum29$i$i = 0, $$sum3$i = 0, $$sum3$i$i = 0, $$sum3$i27 = 0, $$sum30$i$i = 0, $$sum3132$i$i = 0, $$sum34$i$i = 0, $$sum3536$i$i = 0, $$sum3738$i$i = 0, $$sum39$i$i = 0, $$sum4 = 0, $$sum4$i = 0, $$sum4$i28 = 0, $$sum40$i$i = 0; + var $$sum41$i$i = 0, $$sum42$i$i = 0, $$sum5$i = 0, $$sum5$i$i = 0, $$sum56 = 0, $$sum6$i = 0, $$sum67$i$i = 0, $$sum7$i = 0, $$sum8$i = 0, $$sum8$pre = 0, $$sum9 = 0, $$sum9$i = 0, $$sum9$i$i = 0, $$tsize$1$i = 0, $$v$0$i = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $1000 = 0; + var $1001 = 0, $1002 = 0, $1003 = 0, $1004 = 0, $1005 = 0, $1006 = 0, $1007 = 0, $1008 = 0, $1009 = 0, $101 = 0, $1010 = 0, $1011 = 0, $1012 = 0, $1013 = 0, $1014 = 0, $1015 = 0, $1016 = 0, $1017 = 0, $1018 = 0, $1019 = 0; + var $102 = 0, $1020 = 0, $1021 = 0, $1022 = 0, $1023 = 0, $1024 = 0, $1025 = 0, $1026 = 0, $1027 = 0, $1028 = 0, $1029 = 0, $103 = 0, $1030 = 0, $1031 = 0, $1032 = 0, $1033 = 0, $1034 = 0, $1035 = 0, $1036 = 0, $1037 = 0; + var $1038 = 0, $1039 = 0, $104 = 0, $1040 = 0, $1041 = 0, $1042 = 0, $1043 = 0, $1044 = 0, $1045 = 0, $1046 = 0, $1047 = 0, $1048 = 0, $1049 = 0, $105 = 0, $1050 = 0, $1051 = 0, $1052 = 0, $1053 = 0, $1054 = 0, $1055 = 0; + var $1056 = 0, $1057 = 0, $1058 = 0, $1059 = 0, $106 = 0, $1060 = 0, $1061 = 0, $1062 = 0, $1063 = 0, $1064 = 0, $1065 = 0, $1066 = 0, $1067 = 0, $1068 = 0, $1069 = 0, $107 = 0, $1070 = 0, $1071 = 0, $1072 = 0, $1073 = 0; + var $1074 = 0, $1075 = 0, $1076 = 0, $1077 = 0, $1078 = 0, $1079 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0; + var $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0; + var $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0; + var $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0; + var $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0; + var $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0; + var $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0; + var $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0; + var $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0; + var $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0; + var $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0; + var $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0; + var $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0; + var $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0; + var $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0; + var $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0; + var $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0; + var $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0; + var $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0; + var $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0, $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0; + var $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0, $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0; + var $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0, $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0; + var $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0, $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0; + var $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0, $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0; + var $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0, $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0; + var $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0, $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0; + var $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0, $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0; + var $59 = 0, $590 = 0, $591 = 0, $592 = 0, $593 = 0, $594 = 0, $595 = 0, $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 0, $601 = 0, $602 = 0, $603 = 0, $604 = 0, $605 = 0, $606 = 0; + var $607 = 0, $608 = 0, $609 = 0, $61 = 0, $610 = 0, $611 = 0, $612 = 0, $613 = 0, $614 = 0, $615 = 0, $616 = 0, $617 = 0, $618 = 0, $619 = 0, $62 = 0, $620 = 0, $621 = 0, $622 = 0, $623 = 0, $624 = 0; + var $625 = 0, $626 = 0, $627 = 0, $628 = 0, $629 = 0, $63 = 0, $630 = 0, $631 = 0, $632 = 0, $633 = 0, $634 = 0, $635 = 0, $636 = 0, $637 = 0, $638 = 0, $639 = 0, $64 = 0, $640 = 0, $641 = 0, $642 = 0; + var $643 = 0, $644 = 0, $645 = 0, $646 = 0, $647 = 0, $648 = 0, $649 = 0, $65 = 0, $650 = 0, $651 = 0, $652 = 0, $653 = 0, $654 = 0, $655 = 0, $656 = 0, $657 = 0, $658 = 0, $659 = 0, $66 = 0, $660 = 0; + var $661 = 0, $662 = 0, $663 = 0, $664 = 0, $665 = 0, $666 = 0, $667 = 0, $668 = 0, $669 = 0, $67 = 0, $670 = 0, $671 = 0, $672 = 0, $673 = 0, $674 = 0, $675 = 0, $676 = 0, $677 = 0, $678 = 0, $679 = 0; + var $68 = 0, $680 = 0, $681 = 0, $682 = 0, $683 = 0, $684 = 0, $685 = 0, $686 = 0, $687 = 0, $688 = 0, $689 = 0, $69 = 0, $690 = 0, $691 = 0, $692 = 0, $693 = 0, $694 = 0, $695 = 0, $696 = 0, $697 = 0; + var $698 = 0, $699 = 0, $7 = 0, $70 = 0, $700 = 0, $701 = 0, $702 = 0, $703 = 0, $704 = 0, $705 = 0, $706 = 0, $707 = 0, $708 = 0, $709 = 0, $71 = 0, $710 = 0, $711 = 0, $712 = 0, $713 = 0, $714 = 0; + var $715 = 0, $716 = 0, $717 = 0, $718 = 0, $719 = 0, $72 = 0, $720 = 0, $721 = 0, $722 = 0, $723 = 0, $724 = 0, $725 = 0, $726 = 0, $727 = 0, $728 = 0, $729 = 0, $73 = 0, $730 = 0, $731 = 0, $732 = 0; + var $733 = 0, $734 = 0, $735 = 0, $736 = 0, $737 = 0, $738 = 0, $739 = 0, $74 = 0, $740 = 0, $741 = 0, $742 = 0, $743 = 0, $744 = 0, $745 = 0, $746 = 0, $747 = 0, $748 = 0, $749 = 0, $75 = 0, $750 = 0; + var $751 = 0, $752 = 0, $753 = 0, $754 = 0, $755 = 0, $756 = 0, $757 = 0, $758 = 0, $759 = 0, $76 = 0, $760 = 0, $761 = 0, $762 = 0, $763 = 0, $764 = 0, $765 = 0, $766 = 0, $767 = 0, $768 = 0, $769 = 0; + var $77 = 0, $770 = 0, $771 = 0, $772 = 0, $773 = 0, $774 = 0, $775 = 0, $776 = 0, $777 = 0, $778 = 0, $779 = 0, $78 = 0, $780 = 0, $781 = 0, $782 = 0, $783 = 0, $784 = 0, $785 = 0, $786 = 0, $787 = 0; + var $788 = 0, $789 = 0, $79 = 0, $790 = 0, $791 = 0, $792 = 0, $793 = 0, $794 = 0, $795 = 0, $796 = 0, $797 = 0, $798 = 0, $799 = 0, $8 = 0, $80 = 0, $800 = 0, $801 = 0, $802 = 0, $803 = 0, $804 = 0; + var $805 = 0, $806 = 0, $807 = 0, $808 = 0, $809 = 0, $81 = 0, $810 = 0, $811 = 0, $812 = 0, $813 = 0, $814 = 0, $815 = 0, $816 = 0, $817 = 0, $818 = 0, $819 = 0, $82 = 0, $820 = 0, $821 = 0, $822 = 0; + var $823 = 0, $824 = 0, $825 = 0, $826 = 0, $827 = 0, $828 = 0, $829 = 0, $83 = 0, $830 = 0, $831 = 0, $832 = 0, $833 = 0, $834 = 0, $835 = 0, $836 = 0, $837 = 0, $838 = 0, $839 = 0, $84 = 0, $840 = 0; + var $841 = 0, $842 = 0, $843 = 0, $844 = 0, $845 = 0, $846 = 0, $847 = 0, $848 = 0, $849 = 0, $85 = 0, $850 = 0, $851 = 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0, $856 = 0, $857 = 0, $858 = 0, $859 = 0; + var $86 = 0, $860 = 0, $861 = 0, $862 = 0, $863 = 0, $864 = 0, $865 = 0, $866 = 0, $867 = 0, $868 = 0, $869 = 0, $87 = 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0, $874 = 0, $875 = 0, $876 = 0, $877 = 0; + var $878 = 0, $879 = 0, $88 = 0, $880 = 0, $881 = 0, $882 = 0, $883 = 0, $884 = 0, $885 = 0, $886 = 0, $887 = 0, $888 = 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0, $892 = 0, $893 = 0, $894 = 0, $895 = 0; + var $896 = 0, $897 = 0, $898 = 0, $899 = 0, $9 = 0, $90 = 0, $900 = 0, $901 = 0, $902 = 0, $903 = 0, $904 = 0, $905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0, $91 = 0, $910 = 0, $911 = 0, $912 = 0; + var $913 = 0, $914 = 0, $915 = 0, $916 = 0, $917 = 0, $918 = 0, $919 = 0, $92 = 0, $920 = 0, $921 = 0, $922 = 0, $923 = 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0, $928 = 0, $929 = 0, $93 = 0, $930 = 0; + var $931 = 0, $932 = 0, $933 = 0, $934 = 0, $935 = 0, $936 = 0, $937 = 0, $938 = 0, $939 = 0, $94 = 0, $940 = 0, $941 = 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0, $946 = 0, $947 = 0, $948 = 0, $949 = 0; + var $95 = 0, $950 = 0, $951 = 0, $952 = 0, $953 = 0, $954 = 0, $955 = 0, $956 = 0, $957 = 0, $958 = 0, $959 = 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0, $964 = 0, $965 = 0, $966 = 0, $967 = 0; + var $968 = 0, $969 = 0, $97 = 0, $970 = 0, $971 = 0, $972 = 0, $973 = 0, $974 = 0, $975 = 0, $976 = 0, $977 = 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0, $982 = 0, $983 = 0, $984 = 0, $985 = 0; + var $986 = 0, $987 = 0, $988 = 0, $989 = 0, $99 = 0, $990 = 0, $991 = 0, $992 = 0, $993 = 0, $994 = 0, $995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0, $F$0$i$i = 0, $F1$0$i = 0, $F4$0 = 0, $F4$0$i$i = 0, $F5$0$i = 0; + var $I1$0$c$i$i = 0, $I1$0$i$i = 0, $I7$0$i = 0, $I7$0$i$i = 0, $K12$025$i = 0, $K2$014$i$i = 0, $K8$052$i$i = 0, $R$0$i = 0, $R$0$i$i = 0, $R$0$i18 = 0, $R$1$i = 0, $R$1$i$i = 0, $R$1$i20 = 0, $RP$0$i = 0, $RP$0$i$i = 0, $RP$0$i17 = 0, $T$0$lcssa$i = 0, $T$0$lcssa$i$i = 0, $T$0$lcssa$i28$i = 0, $T$013$i$i = 0; + var $T$024$i = 0, $T$051$i$i = 0, $br$0$i = 0, $cond$i = 0, $cond$i$i = 0, $cond$i21 = 0, $exitcond$i$i = 0, $i$02$i$i = 0, $idx$0$i = 0, $mem$0 = 0, $nb$0 = 0, $notlhs$i = 0, $notrhs$i = 0, $oldfirst$0$i$i = 0, $or$cond$i = 0, $or$cond$i29 = 0, $or$cond1$i = 0, $or$cond10$i = 0, $or$cond19$i = 0, $or$cond2$i = 0; + var $or$cond49$i = 0, $or$cond5$i = 0, $or$cond6$i = 0, $or$cond8$not$i = 0, $or$cond9$i = 0, $qsize$0$i$i = 0, $rsize$0$i = 0, $rsize$0$i15 = 0, $rsize$1$i = 0, $rsize$2$i = 0, $rsize$3$lcssa$i = 0, $rsize$329$i = 0, $rst$0$i = 0, $rst$1$i = 0, $sizebits$0$i = 0, $sp$0$i$i = 0, $sp$0$i$i$i = 0, $sp$075$i = 0, $sp$168$i = 0, $ssize$0$$i = 0; + var $ssize$0$i = 0, $ssize$1$i = 0, $ssize$2$i = 0, $t$0$i = 0, $t$0$i14 = 0, $t$1$i = 0, $t$2$ph$i = 0, $t$2$v$3$i = 0, $t$228$i = 0, $tbase$0$i = 0, $tbase$247$i = 0, $tsize$0$i = 0, $tsize$0323841$i = 0, $tsize$1$i = 0, $tsize$246$i = 0, $v$0$i = 0, $v$0$i16 = 0, $v$1$i = 0, $v$2$i = 0, $v$3$lcssa$i = 0; + var $v$330$i = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($bytes>>>0)<(245); + do { + if ($0) { + $1 = ($bytes>>>0)<(11); + if ($1) { + $5 = 16; + } else { + $2 = (($bytes) + 11)|0; + $3 = $2 & -8; + $5 = $3; + } + $4 = $5 >>> 3; + $6 = HEAP32[45528>>2]|0; + $7 = $6 >>> $4; + $8 = $7 & 3; + $9 = ($8|0)==(0); + if (!($9)) { + $10 = $7 & 1; + $11 = $10 ^ 1; + $12 = (($11) + ($4))|0; + $13 = $12 << 1; + $14 = ((45528 + ($13<<2)|0) + 40|0); + $$sum10 = (($13) + 2)|0; + $15 = ((45528 + ($$sum10<<2)|0) + 40|0); + $16 = HEAP32[$15>>2]|0; + $17 = (($16) + 8|0); + $18 = HEAP32[$17>>2]|0; + $19 = ($14|0)==($18|0); + do { + if ($19) { + $20 = 1 << $12; + $21 = $20 ^ -1; + $22 = $6 & $21; + HEAP32[45528>>2] = $22; + } else { + $23 = HEAP32[((45528 + 16|0))>>2]|0; + $24 = ($18>>>0)<($23>>>0); + if ($24) { + _abort(); + // unreachable; + } + $25 = (($18) + 12|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)==($16|0); + if ($27) { + HEAP32[$25>>2] = $14; + HEAP32[$15>>2] = $18; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $28 = $12 << 3; + $29 = $28 | 3; + $30 = (($16) + 4|0); + HEAP32[$30>>2] = $29; + $$sum1112 = $28 | 4; + $31 = (($16) + ($$sum1112)|0); + $32 = HEAP32[$31>>2]|0; + $33 = $32 | 1; + HEAP32[$31>>2] = $33; + $mem$0 = $17; + STACKTOP = sp;return ($mem$0|0); + } + $34 = HEAP32[((45528 + 8|0))>>2]|0; + $35 = ($5>>>0)>($34>>>0); + if ($35) { + $36 = ($7|0)==(0); + if (!($36)) { + $37 = $7 << $4; + $38 = 2 << $4; + $39 = (0 - ($38))|0; + $40 = $38 | $39; + $41 = $37 & $40; + $42 = (0 - ($41))|0; + $43 = $41 & $42; + $44 = (($43) + -1)|0; + $45 = $44 >>> 12; + $46 = $45 & 16; + $47 = $44 >>> $46; + $48 = $47 >>> 5; + $49 = $48 & 8; + $50 = $49 | $46; + $51 = $47 >>> $49; + $52 = $51 >>> 2; + $53 = $52 & 4; + $54 = $50 | $53; + $55 = $51 >>> $53; + $56 = $55 >>> 1; + $57 = $56 & 2; + $58 = $54 | $57; + $59 = $55 >>> $57; + $60 = $59 >>> 1; + $61 = $60 & 1; + $62 = $58 | $61; + $63 = $59 >>> $61; + $64 = (($62) + ($63))|0; + $65 = $64 << 1; + $66 = ((45528 + ($65<<2)|0) + 40|0); + $$sum4 = (($65) + 2)|0; + $67 = ((45528 + ($$sum4<<2)|0) + 40|0); + $68 = HEAP32[$67>>2]|0; + $69 = (($68) + 8|0); + $70 = HEAP32[$69>>2]|0; + $71 = ($66|0)==($70|0); + do { + if ($71) { + $72 = 1 << $64; + $73 = $72 ^ -1; + $74 = $6 & $73; + HEAP32[45528>>2] = $74; + } else { + $75 = HEAP32[((45528 + 16|0))>>2]|0; + $76 = ($70>>>0)<($75>>>0); + if ($76) { + _abort(); + // unreachable; + } + $77 = (($70) + 12|0); + $78 = HEAP32[$77>>2]|0; + $79 = ($78|0)==($68|0); + if ($79) { + HEAP32[$77>>2] = $66; + HEAP32[$67>>2] = $70; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $80 = $64 << 3; + $81 = (($80) - ($5))|0; + $82 = $5 | 3; + $83 = (($68) + 4|0); + HEAP32[$83>>2] = $82; + $84 = (($68) + ($5)|0); + $85 = $81 | 1; + $$sum56 = $5 | 4; + $86 = (($68) + ($$sum56)|0); + HEAP32[$86>>2] = $85; + $87 = (($68) + ($80)|0); + HEAP32[$87>>2] = $81; + $88 = HEAP32[((45528 + 8|0))>>2]|0; + $89 = ($88|0)==(0); + if (!($89)) { + $90 = HEAP32[((45528 + 20|0))>>2]|0; + $91 = $88 >>> 3; + $92 = $91 << 1; + $93 = ((45528 + ($92<<2)|0) + 40|0); + $94 = HEAP32[45528>>2]|0; + $95 = 1 << $91; + $96 = $94 & $95; + $97 = ($96|0)==(0); + if ($97) { + $98 = $94 | $95; + HEAP32[45528>>2] = $98; + $$sum8$pre = (($92) + 2)|0; + $$pre = ((45528 + ($$sum8$pre<<2)|0) + 40|0); + $$pre$phiZ2D = $$pre;$F4$0 = $93; + } else { + $$sum9 = (($92) + 2)|0; + $99 = ((45528 + ($$sum9<<2)|0) + 40|0); + $100 = HEAP32[$99>>2]|0; + $101 = HEAP32[((45528 + 16|0))>>2]|0; + $102 = ($100>>>0)<($101>>>0); + if ($102) { + _abort(); + // unreachable; + } else { + $$pre$phiZ2D = $99;$F4$0 = $100; + } + } + HEAP32[$$pre$phiZ2D>>2] = $90; + $103 = (($F4$0) + 12|0); + HEAP32[$103>>2] = $90; + $104 = (($90) + 8|0); + HEAP32[$104>>2] = $F4$0; + $105 = (($90) + 12|0); + HEAP32[$105>>2] = $93; + } + HEAP32[((45528 + 8|0))>>2] = $81; + HEAP32[((45528 + 20|0))>>2] = $84; + $mem$0 = $69; + STACKTOP = sp;return ($mem$0|0); + } + $106 = HEAP32[((45528 + 4|0))>>2]|0; + $107 = ($106|0)==(0); + if ($107) { + $nb$0 = $5; + } else { + $108 = (0 - ($106))|0; + $109 = $106 & $108; + $110 = (($109) + -1)|0; + $111 = $110 >>> 12; + $112 = $111 & 16; + $113 = $110 >>> $112; + $114 = $113 >>> 5; + $115 = $114 & 8; + $116 = $115 | $112; + $117 = $113 >>> $115; + $118 = $117 >>> 2; + $119 = $118 & 4; + $120 = $116 | $119; + $121 = $117 >>> $119; + $122 = $121 >>> 1; + $123 = $122 & 2; + $124 = $120 | $123; + $125 = $121 >>> $123; + $126 = $125 >>> 1; + $127 = $126 & 1; + $128 = $124 | $127; + $129 = $125 >>> $127; + $130 = (($128) + ($129))|0; + $131 = ((45528 + ($130<<2)|0) + 304|0); + $132 = HEAP32[$131>>2]|0; + $133 = (($132) + 4|0); + $134 = HEAP32[$133>>2]|0; + $135 = $134 & -8; + $136 = (($135) - ($5))|0; + $rsize$0$i = $136;$t$0$i = $132;$v$0$i = $132; + while(1) { + $137 = (($t$0$i) + 16|0); + $138 = HEAP32[$137>>2]|0; + $139 = ($138|0)==(0|0); + if ($139) { + $140 = (($t$0$i) + 20|0); + $141 = HEAP32[$140>>2]|0; + $142 = ($141|0)==(0|0); + if ($142) { + break; + } else { + $144 = $141; + } + } else { + $144 = $138; + } + $143 = (($144) + 4|0); + $145 = HEAP32[$143>>2]|0; + $146 = $145 & -8; + $147 = (($146) - ($5))|0; + $148 = ($147>>>0)<($rsize$0$i>>>0); + $$rsize$0$i = $148 ? $147 : $rsize$0$i; + $$v$0$i = $148 ? $144 : $v$0$i; + $rsize$0$i = $$rsize$0$i;$t$0$i = $144;$v$0$i = $$v$0$i; + } + $149 = HEAP32[((45528 + 16|0))>>2]|0; + $150 = ($v$0$i>>>0)<($149>>>0); + if ($150) { + _abort(); + // unreachable; + } + $151 = (($v$0$i) + ($5)|0); + $152 = ($v$0$i>>>0)<($151>>>0); + if (!($152)) { + _abort(); + // unreachable; + } + $153 = (($v$0$i) + 24|0); + $154 = HEAP32[$153>>2]|0; + $155 = (($v$0$i) + 12|0); + $156 = HEAP32[$155>>2]|0; + $157 = ($156|0)==($v$0$i|0); + do { + if ($157) { + $167 = (($v$0$i) + 20|0); + $168 = HEAP32[$167>>2]|0; + $169 = ($168|0)==(0|0); + if ($169) { + $170 = (($v$0$i) + 16|0); + $171 = HEAP32[$170>>2]|0; + $172 = ($171|0)==(0|0); + if ($172) { + $R$1$i = 0; + break; + } else { + $R$0$i = $171;$RP$0$i = $170; + } + } else { + $R$0$i = $168;$RP$0$i = $167; + } + while(1) { + $173 = (($R$0$i) + 20|0); + $174 = HEAP32[$173>>2]|0; + $175 = ($174|0)==(0|0); + if (!($175)) { + $R$0$i = $174;$RP$0$i = $173; + continue; + } + $176 = (($R$0$i) + 16|0); + $177 = HEAP32[$176>>2]|0; + $178 = ($177|0)==(0|0); + if ($178) { + break; + } else { + $R$0$i = $177;$RP$0$i = $176; + } + } + $179 = ($RP$0$i>>>0)<($149>>>0); + if ($179) { + _abort(); + // unreachable; + } else { + HEAP32[$RP$0$i>>2] = 0; + $R$1$i = $R$0$i; + break; + } + } else { + $158 = (($v$0$i) + 8|0); + $159 = HEAP32[$158>>2]|0; + $160 = ($159>>>0)<($149>>>0); + if ($160) { + _abort(); + // unreachable; + } + $161 = (($159) + 12|0); + $162 = HEAP32[$161>>2]|0; + $163 = ($162|0)==($v$0$i|0); + if (!($163)) { + _abort(); + // unreachable; + } + $164 = (($156) + 8|0); + $165 = HEAP32[$164>>2]|0; + $166 = ($165|0)==($v$0$i|0); + if ($166) { + HEAP32[$161>>2] = $156; + HEAP32[$164>>2] = $159; + $R$1$i = $156; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $180 = ($154|0)==(0|0); + do { + if (!($180)) { + $181 = (($v$0$i) + 28|0); + $182 = HEAP32[$181>>2]|0; + $183 = ((45528 + ($182<<2)|0) + 304|0); + $184 = HEAP32[$183>>2]|0; + $185 = ($v$0$i|0)==($184|0); + if ($185) { + HEAP32[$183>>2] = $R$1$i; + $cond$i = ($R$1$i|0)==(0|0); + if ($cond$i) { + $186 = 1 << $182; + $187 = $186 ^ -1; + $188 = HEAP32[((45528 + 4|0))>>2]|0; + $189 = $188 & $187; + HEAP32[((45528 + 4|0))>>2] = $189; + break; + } + } else { + $190 = HEAP32[((45528 + 16|0))>>2]|0; + $191 = ($154>>>0)<($190>>>0); + if ($191) { + _abort(); + // unreachable; + } + $192 = (($154) + 16|0); + $193 = HEAP32[$192>>2]|0; + $194 = ($193|0)==($v$0$i|0); + if ($194) { + HEAP32[$192>>2] = $R$1$i; + } else { + $195 = (($154) + 20|0); + HEAP32[$195>>2] = $R$1$i; + } + $196 = ($R$1$i|0)==(0|0); + if ($196) { + break; + } + } + $197 = HEAP32[((45528 + 16|0))>>2]|0; + $198 = ($R$1$i>>>0)<($197>>>0); + if ($198) { + _abort(); + // unreachable; + } + $199 = (($R$1$i) + 24|0); + HEAP32[$199>>2] = $154; + $200 = (($v$0$i) + 16|0); + $201 = HEAP32[$200>>2]|0; + $202 = ($201|0)==(0|0); + do { + if (!($202)) { + $203 = HEAP32[((45528 + 16|0))>>2]|0; + $204 = ($201>>>0)<($203>>>0); + if ($204) { + _abort(); + // unreachable; + } else { + $205 = (($R$1$i) + 16|0); + HEAP32[$205>>2] = $201; + $206 = (($201) + 24|0); + HEAP32[$206>>2] = $R$1$i; + break; + } + } + } while(0); + $207 = (($v$0$i) + 20|0); + $208 = HEAP32[$207>>2]|0; + $209 = ($208|0)==(0|0); + if (!($209)) { + $210 = HEAP32[((45528 + 16|0))>>2]|0; + $211 = ($208>>>0)<($210>>>0); + if ($211) { + _abort(); + // unreachable; + } else { + $212 = (($R$1$i) + 20|0); + HEAP32[$212>>2] = $208; + $213 = (($208) + 24|0); + HEAP32[$213>>2] = $R$1$i; + break; + } + } + } + } while(0); + $214 = ($rsize$0$i>>>0)<(16); + if ($214) { + $215 = (($rsize$0$i) + ($5))|0; + $216 = $215 | 3; + $217 = (($v$0$i) + 4|0); + HEAP32[$217>>2] = $216; + $$sum4$i = (($215) + 4)|0; + $218 = (($v$0$i) + ($$sum4$i)|0); + $219 = HEAP32[$218>>2]|0; + $220 = $219 | 1; + HEAP32[$218>>2] = $220; + } else { + $221 = $5 | 3; + $222 = (($v$0$i) + 4|0); + HEAP32[$222>>2] = $221; + $223 = $rsize$0$i | 1; + $$sum$i35 = $5 | 4; + $224 = (($v$0$i) + ($$sum$i35)|0); + HEAP32[$224>>2] = $223; + $$sum1$i = (($rsize$0$i) + ($5))|0; + $225 = (($v$0$i) + ($$sum1$i)|0); + HEAP32[$225>>2] = $rsize$0$i; + $226 = HEAP32[((45528 + 8|0))>>2]|0; + $227 = ($226|0)==(0); + if (!($227)) { + $228 = HEAP32[((45528 + 20|0))>>2]|0; + $229 = $226 >>> 3; + $230 = $229 << 1; + $231 = ((45528 + ($230<<2)|0) + 40|0); + $232 = HEAP32[45528>>2]|0; + $233 = 1 << $229; + $234 = $232 & $233; + $235 = ($234|0)==(0); + if ($235) { + $236 = $232 | $233; + HEAP32[45528>>2] = $236; + $$sum2$pre$i = (($230) + 2)|0; + $$pre$i = ((45528 + ($$sum2$pre$i<<2)|0) + 40|0); + $$pre$phi$iZ2D = $$pre$i;$F1$0$i = $231; + } else { + $$sum3$i = (($230) + 2)|0; + $237 = ((45528 + ($$sum3$i<<2)|0) + 40|0); + $238 = HEAP32[$237>>2]|0; + $239 = HEAP32[((45528 + 16|0))>>2]|0; + $240 = ($238>>>0)<($239>>>0); + if ($240) { + _abort(); + // unreachable; + } else { + $$pre$phi$iZ2D = $237;$F1$0$i = $238; + } + } + HEAP32[$$pre$phi$iZ2D>>2] = $228; + $241 = (($F1$0$i) + 12|0); + HEAP32[$241>>2] = $228; + $242 = (($228) + 8|0); + HEAP32[$242>>2] = $F1$0$i; + $243 = (($228) + 12|0); + HEAP32[$243>>2] = $231; + } + HEAP32[((45528 + 8|0))>>2] = $rsize$0$i; + HEAP32[((45528 + 20|0))>>2] = $151; + } + $244 = (($v$0$i) + 8|0); + $mem$0 = $244; + STACKTOP = sp;return ($mem$0|0); + } + } else { + $nb$0 = $5; + } + } else { + $245 = ($bytes>>>0)>(4294967231); + if ($245) { + $nb$0 = -1; + } else { + $246 = (($bytes) + 11)|0; + $247 = $246 & -8; + $248 = HEAP32[((45528 + 4|0))>>2]|0; + $249 = ($248|0)==(0); + if ($249) { + $nb$0 = $247; + } else { + $250 = (0 - ($247))|0; + $251 = $246 >>> 8; + $252 = ($251|0)==(0); + if ($252) { + $idx$0$i = 0; + } else { + $253 = ($247>>>0)>(16777215); + if ($253) { + $idx$0$i = 31; + } else { + $254 = (($251) + 1048320)|0; + $255 = $254 >>> 16; + $256 = $255 & 8; + $257 = $251 << $256; + $258 = (($257) + 520192)|0; + $259 = $258 >>> 16; + $260 = $259 & 4; + $261 = $260 | $256; + $262 = $257 << $260; + $263 = (($262) + 245760)|0; + $264 = $263 >>> 16; + $265 = $264 & 2; + $266 = $261 | $265; + $267 = (14 - ($266))|0; + $268 = $262 << $265; + $269 = $268 >>> 15; + $270 = (($267) + ($269))|0; + $271 = $270 << 1; + $272 = (($270) + 7)|0; + $273 = $247 >>> $272; + $274 = $273 & 1; + $275 = $274 | $271; + $idx$0$i = $275; + } + } + $276 = ((45528 + ($idx$0$i<<2)|0) + 304|0); + $277 = HEAP32[$276>>2]|0; + $278 = ($277|0)==(0|0); + L126: do { + if ($278) { + $rsize$2$i = $250;$t$1$i = 0;$v$2$i = 0; + } else { + $279 = ($idx$0$i|0)==(31); + if ($279) { + $283 = 0; + } else { + $280 = $idx$0$i >>> 1; + $281 = (25 - ($280))|0; + $283 = $281; + } + $282 = $247 << $283; + $rsize$0$i15 = $250;$rst$0$i = 0;$sizebits$0$i = $282;$t$0$i14 = $277;$v$0$i16 = 0; + while(1) { + $284 = (($t$0$i14) + 4|0); + $285 = HEAP32[$284>>2]|0; + $286 = $285 & -8; + $287 = (($286) - ($247))|0; + $288 = ($287>>>0)<($rsize$0$i15>>>0); + if ($288) { + $289 = ($286|0)==($247|0); + if ($289) { + $rsize$2$i = $287;$t$1$i = $t$0$i14;$v$2$i = $t$0$i14; + break L126; + } else { + $rsize$1$i = $287;$v$1$i = $t$0$i14; + } + } else { + $rsize$1$i = $rsize$0$i15;$v$1$i = $v$0$i16; + } + $290 = (($t$0$i14) + 20|0); + $291 = HEAP32[$290>>2]|0; + $292 = $sizebits$0$i >>> 31; + $293 = ((($t$0$i14) + ($292<<2)|0) + 16|0); + $294 = HEAP32[$293>>2]|0; + $295 = ($291|0)==(0|0); + $296 = ($291|0)==($294|0); + $or$cond$i = $295 | $296; + $rst$1$i = $or$cond$i ? $rst$0$i : $291; + $297 = ($294|0)==(0|0); + $298 = $sizebits$0$i << 1; + if ($297) { + $rsize$2$i = $rsize$1$i;$t$1$i = $rst$1$i;$v$2$i = $v$1$i; + break; + } else { + $rsize$0$i15 = $rsize$1$i;$rst$0$i = $rst$1$i;$sizebits$0$i = $298;$t$0$i14 = $294;$v$0$i16 = $v$1$i; + } + } + } + } while(0); + $299 = ($t$1$i|0)==(0|0); + $300 = ($v$2$i|0)==(0|0); + $or$cond19$i = $299 & $300; + if ($or$cond19$i) { + $301 = 2 << $idx$0$i; + $302 = (0 - ($301))|0; + $303 = $301 | $302; + $304 = $248 & $303; + $305 = ($304|0)==(0); + if ($305) { + $nb$0 = $247; + break; + } + $306 = (0 - ($304))|0; + $307 = $304 & $306; + $308 = (($307) + -1)|0; + $309 = $308 >>> 12; + $310 = $309 & 16; + $311 = $308 >>> $310; + $312 = $311 >>> 5; + $313 = $312 & 8; + $314 = $313 | $310; + $315 = $311 >>> $313; + $316 = $315 >>> 2; + $317 = $316 & 4; + $318 = $314 | $317; + $319 = $315 >>> $317; + $320 = $319 >>> 1; + $321 = $320 & 2; + $322 = $318 | $321; + $323 = $319 >>> $321; + $324 = $323 >>> 1; + $325 = $324 & 1; + $326 = $322 | $325; + $327 = $323 >>> $325; + $328 = (($326) + ($327))|0; + $329 = ((45528 + ($328<<2)|0) + 304|0); + $330 = HEAP32[$329>>2]|0; + $t$2$ph$i = $330; + } else { + $t$2$ph$i = $t$1$i; + } + $331 = ($t$2$ph$i|0)==(0|0); + if ($331) { + $rsize$3$lcssa$i = $rsize$2$i;$v$3$lcssa$i = $v$2$i; + } else { + $rsize$329$i = $rsize$2$i;$t$228$i = $t$2$ph$i;$v$330$i = $v$2$i; + while(1) { + $332 = (($t$228$i) + 4|0); + $333 = HEAP32[$332>>2]|0; + $334 = $333 & -8; + $335 = (($334) - ($247))|0; + $336 = ($335>>>0)<($rsize$329$i>>>0); + $$rsize$3$i = $336 ? $335 : $rsize$329$i; + $t$2$v$3$i = $336 ? $t$228$i : $v$330$i; + $337 = (($t$228$i) + 16|0); + $338 = HEAP32[$337>>2]|0; + $339 = ($338|0)==(0|0); + if (!($339)) { + $rsize$329$i = $$rsize$3$i;$t$228$i = $338;$v$330$i = $t$2$v$3$i; + continue; + } + $340 = (($t$228$i) + 20|0); + $341 = HEAP32[$340>>2]|0; + $342 = ($341|0)==(0|0); + if ($342) { + $rsize$3$lcssa$i = $$rsize$3$i;$v$3$lcssa$i = $t$2$v$3$i; + break; + } else { + $rsize$329$i = $$rsize$3$i;$t$228$i = $341;$v$330$i = $t$2$v$3$i; + } + } + } + $343 = ($v$3$lcssa$i|0)==(0|0); + if ($343) { + $nb$0 = $247; + } else { + $344 = HEAP32[((45528 + 8|0))>>2]|0; + $345 = (($344) - ($247))|0; + $346 = ($rsize$3$lcssa$i>>>0)<($345>>>0); + if ($346) { + $347 = HEAP32[((45528 + 16|0))>>2]|0; + $348 = ($v$3$lcssa$i>>>0)<($347>>>0); + if ($348) { + _abort(); + // unreachable; + } + $349 = (($v$3$lcssa$i) + ($247)|0); + $350 = ($v$3$lcssa$i>>>0)<($349>>>0); + if (!($350)) { + _abort(); + // unreachable; + } + $351 = (($v$3$lcssa$i) + 24|0); + $352 = HEAP32[$351>>2]|0; + $353 = (($v$3$lcssa$i) + 12|0); + $354 = HEAP32[$353>>2]|0; + $355 = ($354|0)==($v$3$lcssa$i|0); + do { + if ($355) { + $365 = (($v$3$lcssa$i) + 20|0); + $366 = HEAP32[$365>>2]|0; + $367 = ($366|0)==(0|0); + if ($367) { + $368 = (($v$3$lcssa$i) + 16|0); + $369 = HEAP32[$368>>2]|0; + $370 = ($369|0)==(0|0); + if ($370) { + $R$1$i20 = 0; + break; + } else { + $R$0$i18 = $369;$RP$0$i17 = $368; + } + } else { + $R$0$i18 = $366;$RP$0$i17 = $365; + } + while(1) { + $371 = (($R$0$i18) + 20|0); + $372 = HEAP32[$371>>2]|0; + $373 = ($372|0)==(0|0); + if (!($373)) { + $R$0$i18 = $372;$RP$0$i17 = $371; + continue; + } + $374 = (($R$0$i18) + 16|0); + $375 = HEAP32[$374>>2]|0; + $376 = ($375|0)==(0|0); + if ($376) { + break; + } else { + $R$0$i18 = $375;$RP$0$i17 = $374; + } + } + $377 = ($RP$0$i17>>>0)<($347>>>0); + if ($377) { + _abort(); + // unreachable; + } else { + HEAP32[$RP$0$i17>>2] = 0; + $R$1$i20 = $R$0$i18; + break; + } + } else { + $356 = (($v$3$lcssa$i) + 8|0); + $357 = HEAP32[$356>>2]|0; + $358 = ($357>>>0)<($347>>>0); + if ($358) { + _abort(); + // unreachable; + } + $359 = (($357) + 12|0); + $360 = HEAP32[$359>>2]|0; + $361 = ($360|0)==($v$3$lcssa$i|0); + if (!($361)) { + _abort(); + // unreachable; + } + $362 = (($354) + 8|0); + $363 = HEAP32[$362>>2]|0; + $364 = ($363|0)==($v$3$lcssa$i|0); + if ($364) { + HEAP32[$359>>2] = $354; + HEAP32[$362>>2] = $357; + $R$1$i20 = $354; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $378 = ($352|0)==(0|0); + do { + if (!($378)) { + $379 = (($v$3$lcssa$i) + 28|0); + $380 = HEAP32[$379>>2]|0; + $381 = ((45528 + ($380<<2)|0) + 304|0); + $382 = HEAP32[$381>>2]|0; + $383 = ($v$3$lcssa$i|0)==($382|0); + if ($383) { + HEAP32[$381>>2] = $R$1$i20; + $cond$i21 = ($R$1$i20|0)==(0|0); + if ($cond$i21) { + $384 = 1 << $380; + $385 = $384 ^ -1; + $386 = HEAP32[((45528 + 4|0))>>2]|0; + $387 = $386 & $385; + HEAP32[((45528 + 4|0))>>2] = $387; + break; + } + } else { + $388 = HEAP32[((45528 + 16|0))>>2]|0; + $389 = ($352>>>0)<($388>>>0); + if ($389) { + _abort(); + // unreachable; + } + $390 = (($352) + 16|0); + $391 = HEAP32[$390>>2]|0; + $392 = ($391|0)==($v$3$lcssa$i|0); + if ($392) { + HEAP32[$390>>2] = $R$1$i20; + } else { + $393 = (($352) + 20|0); + HEAP32[$393>>2] = $R$1$i20; + } + $394 = ($R$1$i20|0)==(0|0); + if ($394) { + break; + } + } + $395 = HEAP32[((45528 + 16|0))>>2]|0; + $396 = ($R$1$i20>>>0)<($395>>>0); + if ($396) { + _abort(); + // unreachable; + } + $397 = (($R$1$i20) + 24|0); + HEAP32[$397>>2] = $352; + $398 = (($v$3$lcssa$i) + 16|0); + $399 = HEAP32[$398>>2]|0; + $400 = ($399|0)==(0|0); + do { + if (!($400)) { + $401 = HEAP32[((45528 + 16|0))>>2]|0; + $402 = ($399>>>0)<($401>>>0); + if ($402) { + _abort(); + // unreachable; + } else { + $403 = (($R$1$i20) + 16|0); + HEAP32[$403>>2] = $399; + $404 = (($399) + 24|0); + HEAP32[$404>>2] = $R$1$i20; + break; + } + } + } while(0); + $405 = (($v$3$lcssa$i) + 20|0); + $406 = HEAP32[$405>>2]|0; + $407 = ($406|0)==(0|0); + if (!($407)) { + $408 = HEAP32[((45528 + 16|0))>>2]|0; + $409 = ($406>>>0)<($408>>>0); + if ($409) { + _abort(); + // unreachable; + } else { + $410 = (($R$1$i20) + 20|0); + HEAP32[$410>>2] = $406; + $411 = (($406) + 24|0); + HEAP32[$411>>2] = $R$1$i20; + break; + } + } + } + } while(0); + $412 = ($rsize$3$lcssa$i>>>0)<(16); + L204: do { + if ($412) { + $413 = (($rsize$3$lcssa$i) + ($247))|0; + $414 = $413 | 3; + $415 = (($v$3$lcssa$i) + 4|0); + HEAP32[$415>>2] = $414; + $$sum18$i = (($413) + 4)|0; + $416 = (($v$3$lcssa$i) + ($$sum18$i)|0); + $417 = HEAP32[$416>>2]|0; + $418 = $417 | 1; + HEAP32[$416>>2] = $418; + } else { + $419 = $247 | 3; + $420 = (($v$3$lcssa$i) + 4|0); + HEAP32[$420>>2] = $419; + $421 = $rsize$3$lcssa$i | 1; + $$sum$i2334 = $247 | 4; + $422 = (($v$3$lcssa$i) + ($$sum$i2334)|0); + HEAP32[$422>>2] = $421; + $$sum1$i24 = (($rsize$3$lcssa$i) + ($247))|0; + $423 = (($v$3$lcssa$i) + ($$sum1$i24)|0); + HEAP32[$423>>2] = $rsize$3$lcssa$i; + $424 = $rsize$3$lcssa$i >>> 3; + $425 = ($rsize$3$lcssa$i>>>0)<(256); + if ($425) { + $426 = $424 << 1; + $427 = ((45528 + ($426<<2)|0) + 40|0); + $428 = HEAP32[45528>>2]|0; + $429 = 1 << $424; + $430 = $428 & $429; + $431 = ($430|0)==(0); + do { + if ($431) { + $432 = $428 | $429; + HEAP32[45528>>2] = $432; + $$sum14$pre$i = (($426) + 2)|0; + $$pre$i25 = ((45528 + ($$sum14$pre$i<<2)|0) + 40|0); + $$pre$phi$i26Z2D = $$pre$i25;$F5$0$i = $427; + } else { + $$sum17$i = (($426) + 2)|0; + $433 = ((45528 + ($$sum17$i<<2)|0) + 40|0); + $434 = HEAP32[$433>>2]|0; + $435 = HEAP32[((45528 + 16|0))>>2]|0; + $436 = ($434>>>0)<($435>>>0); + if (!($436)) { + $$pre$phi$i26Z2D = $433;$F5$0$i = $434; + break; + } + _abort(); + // unreachable; + } + } while(0); + HEAP32[$$pre$phi$i26Z2D>>2] = $349; + $437 = (($F5$0$i) + 12|0); + HEAP32[$437>>2] = $349; + $$sum15$i = (($247) + 8)|0; + $438 = (($v$3$lcssa$i) + ($$sum15$i)|0); + HEAP32[$438>>2] = $F5$0$i; + $$sum16$i = (($247) + 12)|0; + $439 = (($v$3$lcssa$i) + ($$sum16$i)|0); + HEAP32[$439>>2] = $427; + break; + } + $440 = $rsize$3$lcssa$i >>> 8; + $441 = ($440|0)==(0); + if ($441) { + $I7$0$i = 0; + } else { + $442 = ($rsize$3$lcssa$i>>>0)>(16777215); + if ($442) { + $I7$0$i = 31; + } else { + $443 = (($440) + 1048320)|0; + $444 = $443 >>> 16; + $445 = $444 & 8; + $446 = $440 << $445; + $447 = (($446) + 520192)|0; + $448 = $447 >>> 16; + $449 = $448 & 4; + $450 = $449 | $445; + $451 = $446 << $449; + $452 = (($451) + 245760)|0; + $453 = $452 >>> 16; + $454 = $453 & 2; + $455 = $450 | $454; + $456 = (14 - ($455))|0; + $457 = $451 << $454; + $458 = $457 >>> 15; + $459 = (($456) + ($458))|0; + $460 = $459 << 1; + $461 = (($459) + 7)|0; + $462 = $rsize$3$lcssa$i >>> $461; + $463 = $462 & 1; + $464 = $463 | $460; + $I7$0$i = $464; + } + } + $465 = ((45528 + ($I7$0$i<<2)|0) + 304|0); + $$sum2$i = (($247) + 28)|0; + $466 = (($v$3$lcssa$i) + ($$sum2$i)|0); + HEAP32[$466>>2] = $I7$0$i; + $$sum3$i27 = (($247) + 16)|0; + $467 = (($v$3$lcssa$i) + ($$sum3$i27)|0); + $$sum4$i28 = (($247) + 20)|0; + $468 = (($v$3$lcssa$i) + ($$sum4$i28)|0); + HEAP32[$468>>2] = 0; + HEAP32[$467>>2] = 0; + $469 = HEAP32[((45528 + 4|0))>>2]|0; + $470 = 1 << $I7$0$i; + $471 = $469 & $470; + $472 = ($471|0)==(0); + if ($472) { + $473 = $469 | $470; + HEAP32[((45528 + 4|0))>>2] = $473; + HEAP32[$465>>2] = $349; + $$sum5$i = (($247) + 24)|0; + $474 = (($v$3$lcssa$i) + ($$sum5$i)|0); + HEAP32[$474>>2] = $465; + $$sum6$i = (($247) + 12)|0; + $475 = (($v$3$lcssa$i) + ($$sum6$i)|0); + HEAP32[$475>>2] = $349; + $$sum7$i = (($247) + 8)|0; + $476 = (($v$3$lcssa$i) + ($$sum7$i)|0); + HEAP32[$476>>2] = $349; + break; + } + $477 = HEAP32[$465>>2]|0; + $478 = ($I7$0$i|0)==(31); + if ($478) { + $486 = 0; + } else { + $479 = $I7$0$i >>> 1; + $480 = (25 - ($479))|0; + $486 = $480; + } + $481 = (($477) + 4|0); + $482 = HEAP32[$481>>2]|0; + $483 = $482 & -8; + $484 = ($483|0)==($rsize$3$lcssa$i|0); + L224: do { + if ($484) { + $T$0$lcssa$i = $477; + } else { + $485 = $rsize$3$lcssa$i << $486; + $K12$025$i = $485;$T$024$i = $477; + while(1) { + $493 = $K12$025$i >>> 31; + $494 = ((($T$024$i) + ($493<<2)|0) + 16|0); + $489 = HEAP32[$494>>2]|0; + $495 = ($489|0)==(0|0); + if ($495) { + break; + } + $487 = $K12$025$i << 1; + $488 = (($489) + 4|0); + $490 = HEAP32[$488>>2]|0; + $491 = $490 & -8; + $492 = ($491|0)==($rsize$3$lcssa$i|0); + if ($492) { + $T$0$lcssa$i = $489; + break L224; + } else { + $K12$025$i = $487;$T$024$i = $489; + } + } + $496 = HEAP32[((45528 + 16|0))>>2]|0; + $497 = ($494>>>0)<($496>>>0); + if ($497) { + _abort(); + // unreachable; + } else { + HEAP32[$494>>2] = $349; + $$sum11$i = (($247) + 24)|0; + $498 = (($v$3$lcssa$i) + ($$sum11$i)|0); + HEAP32[$498>>2] = $T$024$i; + $$sum12$i = (($247) + 12)|0; + $499 = (($v$3$lcssa$i) + ($$sum12$i)|0); + HEAP32[$499>>2] = $349; + $$sum13$i = (($247) + 8)|0; + $500 = (($v$3$lcssa$i) + ($$sum13$i)|0); + HEAP32[$500>>2] = $349; + break L204; + } + } + } while(0); + $501 = (($T$0$lcssa$i) + 8|0); + $502 = HEAP32[$501>>2]|0; + $503 = HEAP32[((45528 + 16|0))>>2]|0; + $504 = ($T$0$lcssa$i>>>0)<($503>>>0); + if ($504) { + _abort(); + // unreachable; + } + $505 = ($502>>>0)<($503>>>0); + if ($505) { + _abort(); + // unreachable; + } else { + $506 = (($502) + 12|0); + HEAP32[$506>>2] = $349; + HEAP32[$501>>2] = $349; + $$sum8$i = (($247) + 8)|0; + $507 = (($v$3$lcssa$i) + ($$sum8$i)|0); + HEAP32[$507>>2] = $502; + $$sum9$i = (($247) + 12)|0; + $508 = (($v$3$lcssa$i) + ($$sum9$i)|0); + HEAP32[$508>>2] = $T$0$lcssa$i; + $$sum10$i = (($247) + 24)|0; + $509 = (($v$3$lcssa$i) + ($$sum10$i)|0); + HEAP32[$509>>2] = 0; + break; + } + } + } while(0); + $510 = (($v$3$lcssa$i) + 8|0); + $mem$0 = $510; + STACKTOP = sp;return ($mem$0|0); + } else { + $nb$0 = $247; + } + } + } + } + } + } while(0); + $511 = HEAP32[((45528 + 8|0))>>2]|0; + $512 = ($nb$0>>>0)>($511>>>0); + if (!($512)) { + $513 = (($511) - ($nb$0))|0; + $514 = HEAP32[((45528 + 20|0))>>2]|0; + $515 = ($513>>>0)>(15); + if ($515) { + $516 = (($514) + ($nb$0)|0); + HEAP32[((45528 + 20|0))>>2] = $516; + HEAP32[((45528 + 8|0))>>2] = $513; + $517 = $513 | 1; + $$sum2 = (($nb$0) + 4)|0; + $518 = (($514) + ($$sum2)|0); + HEAP32[$518>>2] = $517; + $519 = (($514) + ($511)|0); + HEAP32[$519>>2] = $513; + $520 = $nb$0 | 3; + $521 = (($514) + 4|0); + HEAP32[$521>>2] = $520; + } else { + HEAP32[((45528 + 8|0))>>2] = 0; + HEAP32[((45528 + 20|0))>>2] = 0; + $522 = $511 | 3; + $523 = (($514) + 4|0); + HEAP32[$523>>2] = $522; + $$sum1 = (($511) + 4)|0; + $524 = (($514) + ($$sum1)|0); + $525 = HEAP32[$524>>2]|0; + $526 = $525 | 1; + HEAP32[$524>>2] = $526; + } + $527 = (($514) + 8|0); + $mem$0 = $527; + STACKTOP = sp;return ($mem$0|0); + } + $528 = HEAP32[((45528 + 12|0))>>2]|0; + $529 = ($nb$0>>>0)<($528>>>0); + if ($529) { + $530 = (($528) - ($nb$0))|0; + HEAP32[((45528 + 12|0))>>2] = $530; + $531 = HEAP32[((45528 + 24|0))>>2]|0; + $532 = (($531) + ($nb$0)|0); + HEAP32[((45528 + 24|0))>>2] = $532; + $533 = $530 | 1; + $$sum = (($nb$0) + 4)|0; + $534 = (($531) + ($$sum)|0); + HEAP32[$534>>2] = $533; + $535 = $nb$0 | 3; + $536 = (($531) + 4|0); + HEAP32[$536>>2] = $535; + $537 = (($531) + 8|0); + $mem$0 = $537; + STACKTOP = sp;return ($mem$0|0); + } + $538 = HEAP32[46000>>2]|0; + $539 = ($538|0)==(0); + do { + if ($539) { + $540 = (_sysconf(30)|0); + $541 = (($540) + -1)|0; + $542 = $541 & $540; + $543 = ($542|0)==(0); + if ($543) { + HEAP32[((46000 + 8|0))>>2] = $540; + HEAP32[((46000 + 4|0))>>2] = $540; + HEAP32[((46000 + 12|0))>>2] = -1; + HEAP32[((46000 + 16|0))>>2] = -1; + HEAP32[((46000 + 20|0))>>2] = 0; + HEAP32[((45528 + 444|0))>>2] = 0; + $544 = (_time((0|0))|0); + $545 = $544 & -16; + $546 = $545 ^ 1431655768; + HEAP32[46000>>2] = $546; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $547 = (($nb$0) + 48)|0; + $548 = HEAP32[((46000 + 8|0))>>2]|0; + $549 = (($nb$0) + 47)|0; + $550 = (($548) + ($549))|0; + $551 = (0 - ($548))|0; + $552 = $550 & $551; + $553 = ($552>>>0)>($nb$0>>>0); + if (!($553)) { + $mem$0 = 0; + STACKTOP = sp;return ($mem$0|0); + } + $554 = HEAP32[((45528 + 440|0))>>2]|0; + $555 = ($554|0)==(0); + if (!($555)) { + $556 = HEAP32[((45528 + 432|0))>>2]|0; + $557 = (($556) + ($552))|0; + $558 = ($557>>>0)<=($556>>>0); + $559 = ($557>>>0)>($554>>>0); + $or$cond1$i = $558 | $559; + if ($or$cond1$i) { + $mem$0 = 0; + STACKTOP = sp;return ($mem$0|0); + } + } + $560 = HEAP32[((45528 + 444|0))>>2]|0; + $561 = $560 & 4; + $562 = ($561|0)==(0); + L269: do { + if ($562) { + $563 = HEAP32[((45528 + 24|0))>>2]|0; + $564 = ($563|0)==(0|0); + L271: do { + if ($564) { + label = 182; + } else { + $sp$0$i$i = ((45528 + 448|0)); + while(1) { + $565 = HEAP32[$sp$0$i$i>>2]|0; + $566 = ($565>>>0)>($563>>>0); + if (!($566)) { + $567 = (($sp$0$i$i) + 4|0); + $568 = HEAP32[$567>>2]|0; + $569 = (($565) + ($568)|0); + $570 = ($569>>>0)>($563>>>0); + if ($570) { + break; + } + } + $571 = (($sp$0$i$i) + 8|0); + $572 = HEAP32[$571>>2]|0; + $573 = ($572|0)==(0|0); + if ($573) { + label = 182; + break L271; + } else { + $sp$0$i$i = $572; + } + } + $574 = ($sp$0$i$i|0)==(0|0); + if ($574) { + label = 182; + } else { + $597 = HEAP32[((45528 + 12|0))>>2]|0; + $598 = (($550) - ($597))|0; + $599 = $598 & $551; + $600 = ($599>>>0)<(2147483647); + if ($600) { + $601 = (_sbrk(($599|0))|0); + $602 = HEAP32[$sp$0$i$i>>2]|0; + $603 = HEAP32[$567>>2]|0; + $604 = (($602) + ($603)|0); + $605 = ($601|0)==($604|0); + $$3$i = $605 ? $599 : 0; + $$4$i = $605 ? $601 : (-1); + $br$0$i = $601;$ssize$1$i = $599;$tbase$0$i = $$4$i;$tsize$0$i = $$3$i; + label = 191; + } else { + $tsize$0323841$i = 0; + } + } + } + } while(0); + do { + if ((label|0) == 182) { + $575 = (_sbrk(0)|0); + $576 = ($575|0)==((-1)|0); + if ($576) { + $tsize$0323841$i = 0; + } else { + $577 = $575; + $578 = HEAP32[((46000 + 4|0))>>2]|0; + $579 = (($578) + -1)|0; + $580 = $579 & $577; + $581 = ($580|0)==(0); + if ($581) { + $ssize$0$i = $552; + } else { + $582 = (($579) + ($577))|0; + $583 = (0 - ($578))|0; + $584 = $582 & $583; + $585 = (($552) - ($577))|0; + $586 = (($585) + ($584))|0; + $ssize$0$i = $586; + } + $587 = HEAP32[((45528 + 432|0))>>2]|0; + $588 = (($587) + ($ssize$0$i))|0; + $589 = ($ssize$0$i>>>0)>($nb$0>>>0); + $590 = ($ssize$0$i>>>0)<(2147483647); + $or$cond$i29 = $589 & $590; + if ($or$cond$i29) { + $591 = HEAP32[((45528 + 440|0))>>2]|0; + $592 = ($591|0)==(0); + if (!($592)) { + $593 = ($588>>>0)<=($587>>>0); + $594 = ($588>>>0)>($591>>>0); + $or$cond2$i = $593 | $594; + if ($or$cond2$i) { + $tsize$0323841$i = 0; + break; + } + } + $595 = (_sbrk(($ssize$0$i|0))|0); + $596 = ($595|0)==($575|0); + $ssize$0$$i = $596 ? $ssize$0$i : 0; + $$$i = $596 ? $575 : (-1); + $br$0$i = $595;$ssize$1$i = $ssize$0$i;$tbase$0$i = $$$i;$tsize$0$i = $ssize$0$$i; + label = 191; + } else { + $tsize$0323841$i = 0; + } + } + } + } while(0); + L291: do { + if ((label|0) == 191) { + $606 = (0 - ($ssize$1$i))|0; + $607 = ($tbase$0$i|0)==((-1)|0); + if (!($607)) { + $tbase$247$i = $tbase$0$i;$tsize$246$i = $tsize$0$i; + label = 202; + break L269; + } + $608 = ($br$0$i|0)!=((-1)|0); + $609 = ($ssize$1$i>>>0)<(2147483647); + $or$cond5$i = $608 & $609; + $610 = ($ssize$1$i>>>0)<($547>>>0); + $or$cond6$i = $or$cond5$i & $610; + do { + if ($or$cond6$i) { + $611 = HEAP32[((46000 + 8|0))>>2]|0; + $612 = (($549) - ($ssize$1$i))|0; + $613 = (($612) + ($611))|0; + $614 = (0 - ($611))|0; + $615 = $613 & $614; + $616 = ($615>>>0)<(2147483647); + if ($616) { + $617 = (_sbrk(($615|0))|0); + $618 = ($617|0)==((-1)|0); + if ($618) { + (_sbrk(($606|0))|0); + $tsize$0323841$i = $tsize$0$i; + break L291; + } else { + $619 = (($615) + ($ssize$1$i))|0; + $ssize$2$i = $619; + break; + } + } else { + $ssize$2$i = $ssize$1$i; + } + } else { + $ssize$2$i = $ssize$1$i; + } + } while(0); + $620 = ($br$0$i|0)==((-1)|0); + if ($620) { + $tsize$0323841$i = $tsize$0$i; + } else { + $tbase$247$i = $br$0$i;$tsize$246$i = $ssize$2$i; + label = 202; + break L269; + } + } + } while(0); + $621 = HEAP32[((45528 + 444|0))>>2]|0; + $622 = $621 | 4; + HEAP32[((45528 + 444|0))>>2] = $622; + $tsize$1$i = $tsize$0323841$i; + label = 199; + } else { + $tsize$1$i = 0; + label = 199; + } + } while(0); + if ((label|0) == 199) { + $623 = ($552>>>0)<(2147483647); + if ($623) { + $624 = (_sbrk(($552|0))|0); + $625 = (_sbrk(0)|0); + $notlhs$i = ($624|0)!=((-1)|0); + $notrhs$i = ($625|0)!=((-1)|0); + $or$cond8$not$i = $notrhs$i & $notlhs$i; + $626 = ($624>>>0)<($625>>>0); + $or$cond9$i = $or$cond8$not$i & $626; + if ($or$cond9$i) { + $627 = $625; + $628 = $624; + $629 = (($627) - ($628))|0; + $630 = (($nb$0) + 40)|0; + $631 = ($629>>>0)>($630>>>0); + $$tsize$1$i = $631 ? $629 : $tsize$1$i; + if ($631) { + $tbase$247$i = $624;$tsize$246$i = $$tsize$1$i; + label = 202; + } + } + } + } + if ((label|0) == 202) { + $632 = HEAP32[((45528 + 432|0))>>2]|0; + $633 = (($632) + ($tsize$246$i))|0; + HEAP32[((45528 + 432|0))>>2] = $633; + $634 = HEAP32[((45528 + 436|0))>>2]|0; + $635 = ($633>>>0)>($634>>>0); + if ($635) { + HEAP32[((45528 + 436|0))>>2] = $633; + } + $636 = HEAP32[((45528 + 24|0))>>2]|0; + $637 = ($636|0)==(0|0); + L311: do { + if ($637) { + $638 = HEAP32[((45528 + 16|0))>>2]|0; + $639 = ($638|0)==(0|0); + $640 = ($tbase$247$i>>>0)<($638>>>0); + $or$cond10$i = $639 | $640; + if ($or$cond10$i) { + HEAP32[((45528 + 16|0))>>2] = $tbase$247$i; + } + HEAP32[((45528 + 448|0))>>2] = $tbase$247$i; + HEAP32[((45528 + 452|0))>>2] = $tsize$246$i; + HEAP32[((45528 + 460|0))>>2] = 0; + $641 = HEAP32[46000>>2]|0; + HEAP32[((45528 + 36|0))>>2] = $641; + HEAP32[((45528 + 32|0))>>2] = -1; + $i$02$i$i = 0; + while(1) { + $642 = $i$02$i$i << 1; + $643 = ((45528 + ($642<<2)|0) + 40|0); + $$sum$i$i = (($642) + 3)|0; + $644 = ((45528 + ($$sum$i$i<<2)|0) + 40|0); + HEAP32[$644>>2] = $643; + $$sum1$i$i = (($642) + 2)|0; + $645 = ((45528 + ($$sum1$i$i<<2)|0) + 40|0); + HEAP32[$645>>2] = $643; + $646 = (($i$02$i$i) + 1)|0; + $exitcond$i$i = ($646|0)==(32); + if ($exitcond$i$i) { + break; + } else { + $i$02$i$i = $646; + } + } + $647 = (($tsize$246$i) + -40)|0; + $648 = (($tbase$247$i) + 8|0); + $649 = $648; + $650 = $649 & 7; + $651 = ($650|0)==(0); + if ($651) { + $655 = 0; + } else { + $652 = (0 - ($649))|0; + $653 = $652 & 7; + $655 = $653; + } + $654 = (($tbase$247$i) + ($655)|0); + $656 = (($647) - ($655))|0; + HEAP32[((45528 + 24|0))>>2] = $654; + HEAP32[((45528 + 12|0))>>2] = $656; + $657 = $656 | 1; + $$sum$i14$i = (($655) + 4)|0; + $658 = (($tbase$247$i) + ($$sum$i14$i)|0); + HEAP32[$658>>2] = $657; + $$sum2$i$i = (($tsize$246$i) + -36)|0; + $659 = (($tbase$247$i) + ($$sum2$i$i)|0); + HEAP32[$659>>2] = 40; + $660 = HEAP32[((46000 + 16|0))>>2]|0; + HEAP32[((45528 + 28|0))>>2] = $660; + } else { + $sp$075$i = ((45528 + 448|0)); + while(1) { + $661 = HEAP32[$sp$075$i>>2]|0; + $662 = (($sp$075$i) + 4|0); + $663 = HEAP32[$662>>2]|0; + $664 = (($661) + ($663)|0); + $665 = ($tbase$247$i|0)==($664|0); + if ($665) { + label = 214; + break; + } + $666 = (($sp$075$i) + 8|0); + $667 = HEAP32[$666>>2]|0; + $668 = ($667|0)==(0|0); + if ($668) { + break; + } else { + $sp$075$i = $667; + } + } + if ((label|0) == 214) { + $669 = (($sp$075$i) + 12|0); + $670 = HEAP32[$669>>2]|0; + $671 = $670 & 8; + $672 = ($671|0)==(0); + if ($672) { + $673 = ($636>>>0)>=($661>>>0); + $674 = ($636>>>0)<($tbase$247$i>>>0); + $or$cond49$i = $673 & $674; + if ($or$cond49$i) { + $675 = (($663) + ($tsize$246$i))|0; + HEAP32[$662>>2] = $675; + $676 = HEAP32[((45528 + 12|0))>>2]|0; + $677 = (($676) + ($tsize$246$i))|0; + $678 = (($636) + 8|0); + $679 = $678; + $680 = $679 & 7; + $681 = ($680|0)==(0); + if ($681) { + $685 = 0; + } else { + $682 = (0 - ($679))|0; + $683 = $682 & 7; + $685 = $683; + } + $684 = (($636) + ($685)|0); + $686 = (($677) - ($685))|0; + HEAP32[((45528 + 24|0))>>2] = $684; + HEAP32[((45528 + 12|0))>>2] = $686; + $687 = $686 | 1; + $$sum$i18$i = (($685) + 4)|0; + $688 = (($636) + ($$sum$i18$i)|0); + HEAP32[$688>>2] = $687; + $$sum2$i19$i = (($677) + 4)|0; + $689 = (($636) + ($$sum2$i19$i)|0); + HEAP32[$689>>2] = 40; + $690 = HEAP32[((46000 + 16|0))>>2]|0; + HEAP32[((45528 + 28|0))>>2] = $690; + break; + } + } + } + $691 = HEAP32[((45528 + 16|0))>>2]|0; + $692 = ($tbase$247$i>>>0)<($691>>>0); + if ($692) { + HEAP32[((45528 + 16|0))>>2] = $tbase$247$i; + } + $693 = (($tbase$247$i) + ($tsize$246$i)|0); + $sp$168$i = ((45528 + 448|0)); + while(1) { + $694 = HEAP32[$sp$168$i>>2]|0; + $695 = ($694|0)==($693|0); + if ($695) { + label = 224; + break; + } + $696 = (($sp$168$i) + 8|0); + $697 = HEAP32[$696>>2]|0; + $698 = ($697|0)==(0|0); + if ($698) { + break; + } else { + $sp$168$i = $697; + } + } + if ((label|0) == 224) { + $699 = (($sp$168$i) + 12|0); + $700 = HEAP32[$699>>2]|0; + $701 = $700 & 8; + $702 = ($701|0)==(0); + if ($702) { + HEAP32[$sp$168$i>>2] = $tbase$247$i; + $703 = (($sp$168$i) + 4|0); + $704 = HEAP32[$703>>2]|0; + $705 = (($704) + ($tsize$246$i))|0; + HEAP32[$703>>2] = $705; + $706 = (($tbase$247$i) + 8|0); + $707 = $706; + $708 = $707 & 7; + $709 = ($708|0)==(0); + if ($709) { + $713 = 0; + } else { + $710 = (0 - ($707))|0; + $711 = $710 & 7; + $713 = $711; + } + $712 = (($tbase$247$i) + ($713)|0); + $$sum107$i = (($tsize$246$i) + 8)|0; + $714 = (($tbase$247$i) + ($$sum107$i)|0); + $715 = $714; + $716 = $715 & 7; + $717 = ($716|0)==(0); + if ($717) { + $720 = 0; + } else { + $718 = (0 - ($715))|0; + $719 = $718 & 7; + $720 = $719; + } + $$sum108$i = (($720) + ($tsize$246$i))|0; + $721 = (($tbase$247$i) + ($$sum108$i)|0); + $722 = $721; + $723 = $712; + $724 = (($722) - ($723))|0; + $$sum$i21$i = (($713) + ($nb$0))|0; + $725 = (($tbase$247$i) + ($$sum$i21$i)|0); + $726 = (($724) - ($nb$0))|0; + $727 = $nb$0 | 3; + $$sum1$i22$i = (($713) + 4)|0; + $728 = (($tbase$247$i) + ($$sum1$i22$i)|0); + HEAP32[$728>>2] = $727; + $729 = HEAP32[((45528 + 24|0))>>2]|0; + $730 = ($721|0)==($729|0); + L348: do { + if ($730) { + $731 = HEAP32[((45528 + 12|0))>>2]|0; + $732 = (($731) + ($726))|0; + HEAP32[((45528 + 12|0))>>2] = $732; + HEAP32[((45528 + 24|0))>>2] = $725; + $733 = $732 | 1; + $$sum42$i$i = (($$sum$i21$i) + 4)|0; + $734 = (($tbase$247$i) + ($$sum42$i$i)|0); + HEAP32[$734>>2] = $733; + } else { + $735 = HEAP32[((45528 + 20|0))>>2]|0; + $736 = ($721|0)==($735|0); + if ($736) { + $737 = HEAP32[((45528 + 8|0))>>2]|0; + $738 = (($737) + ($726))|0; + HEAP32[((45528 + 8|0))>>2] = $738; + HEAP32[((45528 + 20|0))>>2] = $725; + $739 = $738 | 1; + $$sum40$i$i = (($$sum$i21$i) + 4)|0; + $740 = (($tbase$247$i) + ($$sum40$i$i)|0); + HEAP32[$740>>2] = $739; + $$sum41$i$i = (($738) + ($$sum$i21$i))|0; + $741 = (($tbase$247$i) + ($$sum41$i$i)|0); + HEAP32[$741>>2] = $738; + break; + } + $$sum2$i23$i = (($tsize$246$i) + 4)|0; + $$sum109$i = (($$sum2$i23$i) + ($720))|0; + $742 = (($tbase$247$i) + ($$sum109$i)|0); + $743 = HEAP32[$742>>2]|0; + $744 = $743 & 3; + $745 = ($744|0)==(1); + if ($745) { + $746 = $743 & -8; + $747 = $743 >>> 3; + $748 = ($743>>>0)<(256); + L355: do { + if ($748) { + $$sum3738$i$i = $720 | 8; + $$sum119$i = (($$sum3738$i$i) + ($tsize$246$i))|0; + $749 = (($tbase$247$i) + ($$sum119$i)|0); + $750 = HEAP32[$749>>2]|0; + $$sum39$i$i = (($tsize$246$i) + 12)|0; + $$sum120$i = (($$sum39$i$i) + ($720))|0; + $751 = (($tbase$247$i) + ($$sum120$i)|0); + $752 = HEAP32[$751>>2]|0; + $753 = $747 << 1; + $754 = ((45528 + ($753<<2)|0) + 40|0); + $755 = ($750|0)==($754|0); + do { + if (!($755)) { + $756 = HEAP32[((45528 + 16|0))>>2]|0; + $757 = ($750>>>0)<($756>>>0); + if ($757) { + _abort(); + // unreachable; + } + $758 = (($750) + 12|0); + $759 = HEAP32[$758>>2]|0; + $760 = ($759|0)==($721|0); + if ($760) { + break; + } + _abort(); + // unreachable; + } + } while(0); + $761 = ($752|0)==($750|0); + if ($761) { + $762 = 1 << $747; + $763 = $762 ^ -1; + $764 = HEAP32[45528>>2]|0; + $765 = $764 & $763; + HEAP32[45528>>2] = $765; + break; + } + $766 = ($752|0)==($754|0); + do { + if ($766) { + $$pre57$i$i = (($752) + 8|0); + $$pre$phi58$i$iZ2D = $$pre57$i$i; + } else { + $767 = HEAP32[((45528 + 16|0))>>2]|0; + $768 = ($752>>>0)<($767>>>0); + if ($768) { + _abort(); + // unreachable; + } + $769 = (($752) + 8|0); + $770 = HEAP32[$769>>2]|0; + $771 = ($770|0)==($721|0); + if ($771) { + $$pre$phi58$i$iZ2D = $769; + break; + } + _abort(); + // unreachable; + } + } while(0); + $772 = (($750) + 12|0); + HEAP32[$772>>2] = $752; + HEAP32[$$pre$phi58$i$iZ2D>>2] = $750; + } else { + $$sum34$i$i = $720 | 24; + $$sum110$i = (($$sum34$i$i) + ($tsize$246$i))|0; + $773 = (($tbase$247$i) + ($$sum110$i)|0); + $774 = HEAP32[$773>>2]|0; + $$sum5$i$i = (($tsize$246$i) + 12)|0; + $$sum111$i = (($$sum5$i$i) + ($720))|0; + $775 = (($tbase$247$i) + ($$sum111$i)|0); + $776 = HEAP32[$775>>2]|0; + $777 = ($776|0)==($721|0); + do { + if ($777) { + $$sum67$i$i = $720 | 16; + $$sum117$i = (($$sum2$i23$i) + ($$sum67$i$i))|0; + $788 = (($tbase$247$i) + ($$sum117$i)|0); + $789 = HEAP32[$788>>2]|0; + $790 = ($789|0)==(0|0); + if ($790) { + $$sum118$i = (($$sum67$i$i) + ($tsize$246$i))|0; + $791 = (($tbase$247$i) + ($$sum118$i)|0); + $792 = HEAP32[$791>>2]|0; + $793 = ($792|0)==(0|0); + if ($793) { + $R$1$i$i = 0; + break; + } else { + $R$0$i$i = $792;$RP$0$i$i = $791; + } + } else { + $R$0$i$i = $789;$RP$0$i$i = $788; + } + while(1) { + $794 = (($R$0$i$i) + 20|0); + $795 = HEAP32[$794>>2]|0; + $796 = ($795|0)==(0|0); + if (!($796)) { + $R$0$i$i = $795;$RP$0$i$i = $794; + continue; + } + $797 = (($R$0$i$i) + 16|0); + $798 = HEAP32[$797>>2]|0; + $799 = ($798|0)==(0|0); + if ($799) { + break; + } else { + $R$0$i$i = $798;$RP$0$i$i = $797; + } + } + $800 = HEAP32[((45528 + 16|0))>>2]|0; + $801 = ($RP$0$i$i>>>0)<($800>>>0); + if ($801) { + _abort(); + // unreachable; + } else { + HEAP32[$RP$0$i$i>>2] = 0; + $R$1$i$i = $R$0$i$i; + break; + } + } else { + $$sum3536$i$i = $720 | 8; + $$sum112$i = (($$sum3536$i$i) + ($tsize$246$i))|0; + $778 = (($tbase$247$i) + ($$sum112$i)|0); + $779 = HEAP32[$778>>2]|0; + $780 = HEAP32[((45528 + 16|0))>>2]|0; + $781 = ($779>>>0)<($780>>>0); + if ($781) { + _abort(); + // unreachable; + } + $782 = (($779) + 12|0); + $783 = HEAP32[$782>>2]|0; + $784 = ($783|0)==($721|0); + if (!($784)) { + _abort(); + // unreachable; + } + $785 = (($776) + 8|0); + $786 = HEAP32[$785>>2]|0; + $787 = ($786|0)==($721|0); + if ($787) { + HEAP32[$782>>2] = $776; + HEAP32[$785>>2] = $779; + $R$1$i$i = $776; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $802 = ($774|0)==(0|0); + if ($802) { + break; + } + $$sum30$i$i = (($tsize$246$i) + 28)|0; + $$sum113$i = (($$sum30$i$i) + ($720))|0; + $803 = (($tbase$247$i) + ($$sum113$i)|0); + $804 = HEAP32[$803>>2]|0; + $805 = ((45528 + ($804<<2)|0) + 304|0); + $806 = HEAP32[$805>>2]|0; + $807 = ($721|0)==($806|0); + do { + if ($807) { + HEAP32[$805>>2] = $R$1$i$i; + $cond$i$i = ($R$1$i$i|0)==(0|0); + if (!($cond$i$i)) { + break; + } + $808 = 1 << $804; + $809 = $808 ^ -1; + $810 = HEAP32[((45528 + 4|0))>>2]|0; + $811 = $810 & $809; + HEAP32[((45528 + 4|0))>>2] = $811; + break L355; + } else { + $812 = HEAP32[((45528 + 16|0))>>2]|0; + $813 = ($774>>>0)<($812>>>0); + if ($813) { + _abort(); + // unreachable; + } + $814 = (($774) + 16|0); + $815 = HEAP32[$814>>2]|0; + $816 = ($815|0)==($721|0); + if ($816) { + HEAP32[$814>>2] = $R$1$i$i; + } else { + $817 = (($774) + 20|0); + HEAP32[$817>>2] = $R$1$i$i; + } + $818 = ($R$1$i$i|0)==(0|0); + if ($818) { + break L355; + } + } + } while(0); + $819 = HEAP32[((45528 + 16|0))>>2]|0; + $820 = ($R$1$i$i>>>0)<($819>>>0); + if ($820) { + _abort(); + // unreachable; + } + $821 = (($R$1$i$i) + 24|0); + HEAP32[$821>>2] = $774; + $$sum3132$i$i = $720 | 16; + $$sum114$i = (($$sum3132$i$i) + ($tsize$246$i))|0; + $822 = (($tbase$247$i) + ($$sum114$i)|0); + $823 = HEAP32[$822>>2]|0; + $824 = ($823|0)==(0|0); + do { + if (!($824)) { + $825 = HEAP32[((45528 + 16|0))>>2]|0; + $826 = ($823>>>0)<($825>>>0); + if ($826) { + _abort(); + // unreachable; + } else { + $827 = (($R$1$i$i) + 16|0); + HEAP32[$827>>2] = $823; + $828 = (($823) + 24|0); + HEAP32[$828>>2] = $R$1$i$i; + break; + } + } + } while(0); + $$sum115$i = (($$sum2$i23$i) + ($$sum3132$i$i))|0; + $829 = (($tbase$247$i) + ($$sum115$i)|0); + $830 = HEAP32[$829>>2]|0; + $831 = ($830|0)==(0|0); + if ($831) { + break; + } + $832 = HEAP32[((45528 + 16|0))>>2]|0; + $833 = ($830>>>0)<($832>>>0); + if ($833) { + _abort(); + // unreachable; + } else { + $834 = (($R$1$i$i) + 20|0); + HEAP32[$834>>2] = $830; + $835 = (($830) + 24|0); + HEAP32[$835>>2] = $R$1$i$i; + break; + } + } + } while(0); + $$sum9$i$i = $746 | $720; + $$sum116$i = (($$sum9$i$i) + ($tsize$246$i))|0; + $836 = (($tbase$247$i) + ($$sum116$i)|0); + $837 = (($746) + ($726))|0; + $oldfirst$0$i$i = $836;$qsize$0$i$i = $837; + } else { + $oldfirst$0$i$i = $721;$qsize$0$i$i = $726; + } + $838 = (($oldfirst$0$i$i) + 4|0); + $839 = HEAP32[$838>>2]|0; + $840 = $839 & -2; + HEAP32[$838>>2] = $840; + $841 = $qsize$0$i$i | 1; + $$sum10$i$i = (($$sum$i21$i) + 4)|0; + $842 = (($tbase$247$i) + ($$sum10$i$i)|0); + HEAP32[$842>>2] = $841; + $$sum11$i24$i = (($qsize$0$i$i) + ($$sum$i21$i))|0; + $843 = (($tbase$247$i) + ($$sum11$i24$i)|0); + HEAP32[$843>>2] = $qsize$0$i$i; + $844 = $qsize$0$i$i >>> 3; + $845 = ($qsize$0$i$i>>>0)<(256); + if ($845) { + $846 = $844 << 1; + $847 = ((45528 + ($846<<2)|0) + 40|0); + $848 = HEAP32[45528>>2]|0; + $849 = 1 << $844; + $850 = $848 & $849; + $851 = ($850|0)==(0); + do { + if ($851) { + $852 = $848 | $849; + HEAP32[45528>>2] = $852; + $$sum26$pre$i$i = (($846) + 2)|0; + $$pre$i25$i = ((45528 + ($$sum26$pre$i$i<<2)|0) + 40|0); + $$pre$phi$i26$iZ2D = $$pre$i25$i;$F4$0$i$i = $847; + } else { + $$sum29$i$i = (($846) + 2)|0; + $853 = ((45528 + ($$sum29$i$i<<2)|0) + 40|0); + $854 = HEAP32[$853>>2]|0; + $855 = HEAP32[((45528 + 16|0))>>2]|0; + $856 = ($854>>>0)<($855>>>0); + if (!($856)) { + $$pre$phi$i26$iZ2D = $853;$F4$0$i$i = $854; + break; + } + _abort(); + // unreachable; + } + } while(0); + HEAP32[$$pre$phi$i26$iZ2D>>2] = $725; + $857 = (($F4$0$i$i) + 12|0); + HEAP32[$857>>2] = $725; + $$sum27$i$i = (($$sum$i21$i) + 8)|0; + $858 = (($tbase$247$i) + ($$sum27$i$i)|0); + HEAP32[$858>>2] = $F4$0$i$i; + $$sum28$i$i = (($$sum$i21$i) + 12)|0; + $859 = (($tbase$247$i) + ($$sum28$i$i)|0); + HEAP32[$859>>2] = $847; + break; + } + $860 = $qsize$0$i$i >>> 8; + $861 = ($860|0)==(0); + do { + if ($861) { + $I7$0$i$i = 0; + } else { + $862 = ($qsize$0$i$i>>>0)>(16777215); + if ($862) { + $I7$0$i$i = 31; + break; + } + $863 = (($860) + 1048320)|0; + $864 = $863 >>> 16; + $865 = $864 & 8; + $866 = $860 << $865; + $867 = (($866) + 520192)|0; + $868 = $867 >>> 16; + $869 = $868 & 4; + $870 = $869 | $865; + $871 = $866 << $869; + $872 = (($871) + 245760)|0; + $873 = $872 >>> 16; + $874 = $873 & 2; + $875 = $870 | $874; + $876 = (14 - ($875))|0; + $877 = $871 << $874; + $878 = $877 >>> 15; + $879 = (($876) + ($878))|0; + $880 = $879 << 1; + $881 = (($879) + 7)|0; + $882 = $qsize$0$i$i >>> $881; + $883 = $882 & 1; + $884 = $883 | $880; + $I7$0$i$i = $884; + } + } while(0); + $885 = ((45528 + ($I7$0$i$i<<2)|0) + 304|0); + $$sum12$i$i = (($$sum$i21$i) + 28)|0; + $886 = (($tbase$247$i) + ($$sum12$i$i)|0); + HEAP32[$886>>2] = $I7$0$i$i; + $$sum13$i$i = (($$sum$i21$i) + 16)|0; + $887 = (($tbase$247$i) + ($$sum13$i$i)|0); + $$sum14$i$i = (($$sum$i21$i) + 20)|0; + $888 = (($tbase$247$i) + ($$sum14$i$i)|0); + HEAP32[$888>>2] = 0; + HEAP32[$887>>2] = 0; + $889 = HEAP32[((45528 + 4|0))>>2]|0; + $890 = 1 << $I7$0$i$i; + $891 = $889 & $890; + $892 = ($891|0)==(0); + if ($892) { + $893 = $889 | $890; + HEAP32[((45528 + 4|0))>>2] = $893; + HEAP32[$885>>2] = $725; + $$sum15$i$i = (($$sum$i21$i) + 24)|0; + $894 = (($tbase$247$i) + ($$sum15$i$i)|0); + HEAP32[$894>>2] = $885; + $$sum16$i$i = (($$sum$i21$i) + 12)|0; + $895 = (($tbase$247$i) + ($$sum16$i$i)|0); + HEAP32[$895>>2] = $725; + $$sum17$i$i = (($$sum$i21$i) + 8)|0; + $896 = (($tbase$247$i) + ($$sum17$i$i)|0); + HEAP32[$896>>2] = $725; + break; + } + $897 = HEAP32[$885>>2]|0; + $898 = ($I7$0$i$i|0)==(31); + if ($898) { + $906 = 0; + } else { + $899 = $I7$0$i$i >>> 1; + $900 = (25 - ($899))|0; + $906 = $900; + } + $901 = (($897) + 4|0); + $902 = HEAP32[$901>>2]|0; + $903 = $902 & -8; + $904 = ($903|0)==($qsize$0$i$i|0); + L444: do { + if ($904) { + $T$0$lcssa$i28$i = $897; + } else { + $905 = $qsize$0$i$i << $906; + $K8$052$i$i = $905;$T$051$i$i = $897; + while(1) { + $913 = $K8$052$i$i >>> 31; + $914 = ((($T$051$i$i) + ($913<<2)|0) + 16|0); + $909 = HEAP32[$914>>2]|0; + $915 = ($909|0)==(0|0); + if ($915) { + break; + } + $907 = $K8$052$i$i << 1; + $908 = (($909) + 4|0); + $910 = HEAP32[$908>>2]|0; + $911 = $910 & -8; + $912 = ($911|0)==($qsize$0$i$i|0); + if ($912) { + $T$0$lcssa$i28$i = $909; + break L444; + } else { + $K8$052$i$i = $907;$T$051$i$i = $909; + } + } + $916 = HEAP32[((45528 + 16|0))>>2]|0; + $917 = ($914>>>0)<($916>>>0); + if ($917) { + _abort(); + // unreachable; + } else { + HEAP32[$914>>2] = $725; + $$sum23$i$i = (($$sum$i21$i) + 24)|0; + $918 = (($tbase$247$i) + ($$sum23$i$i)|0); + HEAP32[$918>>2] = $T$051$i$i; + $$sum24$i$i = (($$sum$i21$i) + 12)|0; + $919 = (($tbase$247$i) + ($$sum24$i$i)|0); + HEAP32[$919>>2] = $725; + $$sum25$i$i = (($$sum$i21$i) + 8)|0; + $920 = (($tbase$247$i) + ($$sum25$i$i)|0); + HEAP32[$920>>2] = $725; + break L348; + } + } + } while(0); + $921 = (($T$0$lcssa$i28$i) + 8|0); + $922 = HEAP32[$921>>2]|0; + $923 = HEAP32[((45528 + 16|0))>>2]|0; + $924 = ($T$0$lcssa$i28$i>>>0)<($923>>>0); + if ($924) { + _abort(); + // unreachable; + } + $925 = ($922>>>0)<($923>>>0); + if ($925) { + _abort(); + // unreachable; + } else { + $926 = (($922) + 12|0); + HEAP32[$926>>2] = $725; + HEAP32[$921>>2] = $725; + $$sum20$i$i = (($$sum$i21$i) + 8)|0; + $927 = (($tbase$247$i) + ($$sum20$i$i)|0); + HEAP32[$927>>2] = $922; + $$sum21$i$i = (($$sum$i21$i) + 12)|0; + $928 = (($tbase$247$i) + ($$sum21$i$i)|0); + HEAP32[$928>>2] = $T$0$lcssa$i28$i; + $$sum22$i$i = (($$sum$i21$i) + 24)|0; + $929 = (($tbase$247$i) + ($$sum22$i$i)|0); + HEAP32[$929>>2] = 0; + break; + } + } + } while(0); + $$sum1819$i$i = $713 | 8; + $930 = (($tbase$247$i) + ($$sum1819$i$i)|0); + $mem$0 = $930; + STACKTOP = sp;return ($mem$0|0); + } + } + $sp$0$i$i$i = ((45528 + 448|0)); + while(1) { + $931 = HEAP32[$sp$0$i$i$i>>2]|0; + $932 = ($931>>>0)>($636>>>0); + if (!($932)) { + $933 = (($sp$0$i$i$i) + 4|0); + $934 = HEAP32[$933>>2]|0; + $935 = (($931) + ($934)|0); + $936 = ($935>>>0)>($636>>>0); + if ($936) { + break; + } + } + $937 = (($sp$0$i$i$i) + 8|0); + $938 = HEAP32[$937>>2]|0; + $sp$0$i$i$i = $938; + } + $$sum$i15$i = (($934) + -47)|0; + $$sum1$i16$i = (($934) + -39)|0; + $939 = (($931) + ($$sum1$i16$i)|0); + $940 = $939; + $941 = $940 & 7; + $942 = ($941|0)==(0); + if ($942) { + $945 = 0; + } else { + $943 = (0 - ($940))|0; + $944 = $943 & 7; + $945 = $944; + } + $$sum2$i17$i = (($$sum$i15$i) + ($945))|0; + $946 = (($931) + ($$sum2$i17$i)|0); + $947 = (($636) + 16|0); + $948 = ($946>>>0)<($947>>>0); + $949 = $948 ? $636 : $946; + $950 = (($949) + 8|0); + $951 = (($tsize$246$i) + -40)|0; + $952 = (($tbase$247$i) + 8|0); + $953 = $952; + $954 = $953 & 7; + $955 = ($954|0)==(0); + if ($955) { + $959 = 0; + } else { + $956 = (0 - ($953))|0; + $957 = $956 & 7; + $959 = $957; + } + $958 = (($tbase$247$i) + ($959)|0); + $960 = (($951) - ($959))|0; + HEAP32[((45528 + 24|0))>>2] = $958; + HEAP32[((45528 + 12|0))>>2] = $960; + $961 = $960 | 1; + $$sum$i$i$i = (($959) + 4)|0; + $962 = (($tbase$247$i) + ($$sum$i$i$i)|0); + HEAP32[$962>>2] = $961; + $$sum2$i$i$i = (($tsize$246$i) + -36)|0; + $963 = (($tbase$247$i) + ($$sum2$i$i$i)|0); + HEAP32[$963>>2] = 40; + $964 = HEAP32[((46000 + 16|0))>>2]|0; + HEAP32[((45528 + 28|0))>>2] = $964; + $965 = (($949) + 4|0); + HEAP32[$965>>2] = 27; + ;HEAP32[$950+0>>2]=HEAP32[((45528 + 448|0))+0>>2]|0;HEAP32[$950+4>>2]=HEAP32[((45528 + 448|0))+4>>2]|0;HEAP32[$950+8>>2]=HEAP32[((45528 + 448|0))+8>>2]|0;HEAP32[$950+12>>2]=HEAP32[((45528 + 448|0))+12>>2]|0; + HEAP32[((45528 + 448|0))>>2] = $tbase$247$i; + HEAP32[((45528 + 452|0))>>2] = $tsize$246$i; + HEAP32[((45528 + 460|0))>>2] = 0; + HEAP32[((45528 + 456|0))>>2] = $950; + $966 = (($949) + 28|0); + HEAP32[$966>>2] = 7; + $967 = (($949) + 32|0); + $968 = ($967>>>0)<($935>>>0); + if ($968) { + $970 = $966; + while(1) { + $969 = (($970) + 4|0); + HEAP32[$969>>2] = 7; + $971 = (($970) + 8|0); + $972 = ($971>>>0)<($935>>>0); + if ($972) { + $970 = $969; + } else { + break; + } + } + } + $973 = ($949|0)==($636|0); + if (!($973)) { + $974 = $949; + $975 = $636; + $976 = (($974) - ($975))|0; + $977 = (($636) + ($976)|0); + $$sum3$i$i = (($976) + 4)|0; + $978 = (($636) + ($$sum3$i$i)|0); + $979 = HEAP32[$978>>2]|0; + $980 = $979 & -2; + HEAP32[$978>>2] = $980; + $981 = $976 | 1; + $982 = (($636) + 4|0); + HEAP32[$982>>2] = $981; + HEAP32[$977>>2] = $976; + $983 = $976 >>> 3; + $984 = ($976>>>0)<(256); + if ($984) { + $985 = $983 << 1; + $986 = ((45528 + ($985<<2)|0) + 40|0); + $987 = HEAP32[45528>>2]|0; + $988 = 1 << $983; + $989 = $987 & $988; + $990 = ($989|0)==(0); + do { + if ($990) { + $991 = $987 | $988; + HEAP32[45528>>2] = $991; + $$sum10$pre$i$i = (($985) + 2)|0; + $$pre$i$i = ((45528 + ($$sum10$pre$i$i<<2)|0) + 40|0); + $$pre$phi$i$iZ2D = $$pre$i$i;$F$0$i$i = $986; + } else { + $$sum11$i$i = (($985) + 2)|0; + $992 = ((45528 + ($$sum11$i$i<<2)|0) + 40|0); + $993 = HEAP32[$992>>2]|0; + $994 = HEAP32[((45528 + 16|0))>>2]|0; + $995 = ($993>>>0)<($994>>>0); + if (!($995)) { + $$pre$phi$i$iZ2D = $992;$F$0$i$i = $993; + break; + } + _abort(); + // unreachable; + } + } while(0); + HEAP32[$$pre$phi$i$iZ2D>>2] = $636; + $996 = (($F$0$i$i) + 12|0); + HEAP32[$996>>2] = $636; + $997 = (($636) + 8|0); + HEAP32[$997>>2] = $F$0$i$i; + $998 = (($636) + 12|0); + HEAP32[$998>>2] = $986; + break; + } + $999 = $976 >>> 8; + $1000 = ($999|0)==(0); + if ($1000) { + $I1$0$i$i = 0; + } else { + $1001 = ($976>>>0)>(16777215); + if ($1001) { + $I1$0$i$i = 31; + } else { + $1002 = (($999) + 1048320)|0; + $1003 = $1002 >>> 16; + $1004 = $1003 & 8; + $1005 = $999 << $1004; + $1006 = (($1005) + 520192)|0; + $1007 = $1006 >>> 16; + $1008 = $1007 & 4; + $1009 = $1008 | $1004; + $1010 = $1005 << $1008; + $1011 = (($1010) + 245760)|0; + $1012 = $1011 >>> 16; + $1013 = $1012 & 2; + $1014 = $1009 | $1013; + $1015 = (14 - ($1014))|0; + $1016 = $1010 << $1013; + $1017 = $1016 >>> 15; + $1018 = (($1015) + ($1017))|0; + $1019 = $1018 << 1; + $1020 = (($1018) + 7)|0; + $1021 = $976 >>> $1020; + $1022 = $1021 & 1; + $1023 = $1022 | $1019; + $I1$0$i$i = $1023; + } + } + $1024 = ((45528 + ($I1$0$i$i<<2)|0) + 304|0); + $1025 = (($636) + 28|0); + $I1$0$c$i$i = $I1$0$i$i; + HEAP32[$1025>>2] = $I1$0$c$i$i; + $1026 = (($636) + 20|0); + HEAP32[$1026>>2] = 0; + $1027 = (($636) + 16|0); + HEAP32[$1027>>2] = 0; + $1028 = HEAP32[((45528 + 4|0))>>2]|0; + $1029 = 1 << $I1$0$i$i; + $1030 = $1028 & $1029; + $1031 = ($1030|0)==(0); + if ($1031) { + $1032 = $1028 | $1029; + HEAP32[((45528 + 4|0))>>2] = $1032; + HEAP32[$1024>>2] = $636; + $1033 = (($636) + 24|0); + HEAP32[$1033>>2] = $1024; + $1034 = (($636) + 12|0); + HEAP32[$1034>>2] = $636; + $1035 = (($636) + 8|0); + HEAP32[$1035>>2] = $636; + break; + } + $1036 = HEAP32[$1024>>2]|0; + $1037 = ($I1$0$i$i|0)==(31); + if ($1037) { + $1045 = 0; + } else { + $1038 = $I1$0$i$i >>> 1; + $1039 = (25 - ($1038))|0; + $1045 = $1039; + } + $1040 = (($1036) + 4|0); + $1041 = HEAP32[$1040>>2]|0; + $1042 = $1041 & -8; + $1043 = ($1042|0)==($976|0); + L499: do { + if ($1043) { + $T$0$lcssa$i$i = $1036; + } else { + $1044 = $976 << $1045; + $K2$014$i$i = $1044;$T$013$i$i = $1036; + while(1) { + $1052 = $K2$014$i$i >>> 31; + $1053 = ((($T$013$i$i) + ($1052<<2)|0) + 16|0); + $1048 = HEAP32[$1053>>2]|0; + $1054 = ($1048|0)==(0|0); + if ($1054) { + break; + } + $1046 = $K2$014$i$i << 1; + $1047 = (($1048) + 4|0); + $1049 = HEAP32[$1047>>2]|0; + $1050 = $1049 & -8; + $1051 = ($1050|0)==($976|0); + if ($1051) { + $T$0$lcssa$i$i = $1048; + break L499; + } else { + $K2$014$i$i = $1046;$T$013$i$i = $1048; + } + } + $1055 = HEAP32[((45528 + 16|0))>>2]|0; + $1056 = ($1053>>>0)<($1055>>>0); + if ($1056) { + _abort(); + // unreachable; + } else { + HEAP32[$1053>>2] = $636; + $1057 = (($636) + 24|0); + HEAP32[$1057>>2] = $T$013$i$i; + $1058 = (($636) + 12|0); + HEAP32[$1058>>2] = $636; + $1059 = (($636) + 8|0); + HEAP32[$1059>>2] = $636; + break L311; + } + } + } while(0); + $1060 = (($T$0$lcssa$i$i) + 8|0); + $1061 = HEAP32[$1060>>2]|0; + $1062 = HEAP32[((45528 + 16|0))>>2]|0; + $1063 = ($T$0$lcssa$i$i>>>0)<($1062>>>0); + if ($1063) { + _abort(); + // unreachable; + } + $1064 = ($1061>>>0)<($1062>>>0); + if ($1064) { + _abort(); + // unreachable; + } else { + $1065 = (($1061) + 12|0); + HEAP32[$1065>>2] = $636; + HEAP32[$1060>>2] = $636; + $1066 = (($636) + 8|0); + HEAP32[$1066>>2] = $1061; + $1067 = (($636) + 12|0); + HEAP32[$1067>>2] = $T$0$lcssa$i$i; + $1068 = (($636) + 24|0); + HEAP32[$1068>>2] = 0; + break; + } + } + } + } while(0); + $1069 = HEAP32[((45528 + 12|0))>>2]|0; + $1070 = ($1069>>>0)>($nb$0>>>0); + if ($1070) { + $1071 = (($1069) - ($nb$0))|0; + HEAP32[((45528 + 12|0))>>2] = $1071; + $1072 = HEAP32[((45528 + 24|0))>>2]|0; + $1073 = (($1072) + ($nb$0)|0); + HEAP32[((45528 + 24|0))>>2] = $1073; + $1074 = $1071 | 1; + $$sum$i32 = (($nb$0) + 4)|0; + $1075 = (($1072) + ($$sum$i32)|0); + HEAP32[$1075>>2] = $1074; + $1076 = $nb$0 | 3; + $1077 = (($1072) + 4|0); + HEAP32[$1077>>2] = $1076; + $1078 = (($1072) + 8|0); + $mem$0 = $1078; + STACKTOP = sp;return ($mem$0|0); + } + } + $1079 = (___errno_location()|0); + HEAP32[$1079>>2] = 12; + $mem$0 = 0; + STACKTOP = sp;return ($mem$0|0); +} +function _free($mem) { + $mem = $mem|0; + var $$pre = 0, $$pre$phi68Z2D = 0, $$pre$phi70Z2D = 0, $$pre$phiZ2D = 0, $$pre67 = 0, $$pre69 = 0, $$sum = 0, $$sum16$pre = 0, $$sum17 = 0, $$sum18 = 0, $$sum19 = 0, $$sum2 = 0, $$sum20 = 0, $$sum2324 = 0, $$sum25 = 0, $$sum26 = 0, $$sum28 = 0, $$sum29 = 0, $$sum3 = 0, $$sum30 = 0; + var $$sum31 = 0, $$sum32 = 0, $$sum33 = 0, $$sum34 = 0, $$sum35 = 0, $$sum36 = 0, $$sum37 = 0, $$sum5 = 0, $$sum67 = 0, $$sum8 = 0, $$sum9 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0; + var $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0; + var $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0; + var $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0; + var $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0; + var $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0; + var $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0; + var $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0; + var $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0; + var $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0; + var $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0; + var $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0; + var $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0; + var $322 = 0, $323 = 0, $324 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; + var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; + var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; + var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $F16$0 = 0, $I18$0 = 0, $I18$0$c = 0, $K19$057 = 0; + var $R$0 = 0, $R$1 = 0, $R7$0 = 0, $R7$1 = 0, $RP$0 = 0, $RP9$0 = 0, $T$0$lcssa = 0, $T$056 = 0, $cond = 0, $cond54 = 0, $p$0 = 0, $psize$0 = 0, $psize$1 = 0, $sp$0$i = 0, $sp$0$in$i = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($mem|0)==(0|0); + if ($0) { + STACKTOP = sp;return; + } + $1 = (($mem) + -8|0); + $2 = HEAP32[((45528 + 16|0))>>2]|0; + $3 = ($1>>>0)<($2>>>0); + if ($3) { + _abort(); + // unreachable; + } + $4 = (($mem) + -4|0); + $5 = HEAP32[$4>>2]|0; + $6 = $5 & 3; + $7 = ($6|0)==(1); + if ($7) { + _abort(); + // unreachable; + } + $8 = $5 & -8; + $$sum = (($8) + -8)|0; + $9 = (($mem) + ($$sum)|0); + $10 = $5 & 1; + $11 = ($10|0)==(0); + do { + if ($11) { + $12 = HEAP32[$1>>2]|0; + $13 = ($6|0)==(0); + if ($13) { + STACKTOP = sp;return; + } + $$sum2 = (-8 - ($12))|0; + $14 = (($mem) + ($$sum2)|0); + $15 = (($12) + ($8))|0; + $16 = ($14>>>0)<($2>>>0); + if ($16) { + _abort(); + // unreachable; + } + $17 = HEAP32[((45528 + 20|0))>>2]|0; + $18 = ($14|0)==($17|0); + if ($18) { + $$sum3 = (($8) + -4)|0; + $104 = (($mem) + ($$sum3)|0); + $105 = HEAP32[$104>>2]|0; + $106 = $105 & 3; + $107 = ($106|0)==(3); + if (!($107)) { + $p$0 = $14;$psize$0 = $15; + break; + } + HEAP32[((45528 + 8|0))>>2] = $15; + $108 = HEAP32[$104>>2]|0; + $109 = $108 & -2; + HEAP32[$104>>2] = $109; + $110 = $15 | 1; + $$sum26 = (($$sum2) + 4)|0; + $111 = (($mem) + ($$sum26)|0); + HEAP32[$111>>2] = $110; + HEAP32[$9>>2] = $15; + STACKTOP = sp;return; + } + $19 = $12 >>> 3; + $20 = ($12>>>0)<(256); + if ($20) { + $$sum36 = (($$sum2) + 8)|0; + $21 = (($mem) + ($$sum36)|0); + $22 = HEAP32[$21>>2]|0; + $$sum37 = (($$sum2) + 12)|0; + $23 = (($mem) + ($$sum37)|0); + $24 = HEAP32[$23>>2]|0; + $25 = $19 << 1; + $26 = ((45528 + ($25<<2)|0) + 40|0); + $27 = ($22|0)==($26|0); + if (!($27)) { + $28 = ($22>>>0)<($2>>>0); + if ($28) { + _abort(); + // unreachable; + } + $29 = (($22) + 12|0); + $30 = HEAP32[$29>>2]|0; + $31 = ($30|0)==($14|0); + if (!($31)) { + _abort(); + // unreachable; + } + } + $32 = ($24|0)==($22|0); + if ($32) { + $33 = 1 << $19; + $34 = $33 ^ -1; + $35 = HEAP32[45528>>2]|0; + $36 = $35 & $34; + HEAP32[45528>>2] = $36; + $p$0 = $14;$psize$0 = $15; + break; + } + $37 = ($24|0)==($26|0); + if ($37) { + $$pre69 = (($24) + 8|0); + $$pre$phi70Z2D = $$pre69; + } else { + $38 = ($24>>>0)<($2>>>0); + if ($38) { + _abort(); + // unreachable; + } + $39 = (($24) + 8|0); + $40 = HEAP32[$39>>2]|0; + $41 = ($40|0)==($14|0); + if ($41) { + $$pre$phi70Z2D = $39; + } else { + _abort(); + // unreachable; + } + } + $42 = (($22) + 12|0); + HEAP32[$42>>2] = $24; + HEAP32[$$pre$phi70Z2D>>2] = $22; + $p$0 = $14;$psize$0 = $15; + break; + } + $$sum28 = (($$sum2) + 24)|0; + $43 = (($mem) + ($$sum28)|0); + $44 = HEAP32[$43>>2]|0; + $$sum29 = (($$sum2) + 12)|0; + $45 = (($mem) + ($$sum29)|0); + $46 = HEAP32[$45>>2]|0; + $47 = ($46|0)==($14|0); + do { + if ($47) { + $$sum31 = (($$sum2) + 20)|0; + $57 = (($mem) + ($$sum31)|0); + $58 = HEAP32[$57>>2]|0; + $59 = ($58|0)==(0|0); + if ($59) { + $$sum30 = (($$sum2) + 16)|0; + $60 = (($mem) + ($$sum30)|0); + $61 = HEAP32[$60>>2]|0; + $62 = ($61|0)==(0|0); + if ($62) { + $R$1 = 0; + break; + } else { + $R$0 = $61;$RP$0 = $60; + } + } else { + $R$0 = $58;$RP$0 = $57; + } + while(1) { + $63 = (($R$0) + 20|0); + $64 = HEAP32[$63>>2]|0; + $65 = ($64|0)==(0|0); + if (!($65)) { + $R$0 = $64;$RP$0 = $63; + continue; + } + $66 = (($R$0) + 16|0); + $67 = HEAP32[$66>>2]|0; + $68 = ($67|0)==(0|0); + if ($68) { + break; + } else { + $R$0 = $67;$RP$0 = $66; + } + } + $69 = ($RP$0>>>0)<($2>>>0); + if ($69) { + _abort(); + // unreachable; + } else { + HEAP32[$RP$0>>2] = 0; + $R$1 = $R$0; + break; + } + } else { + $$sum35 = (($$sum2) + 8)|0; + $48 = (($mem) + ($$sum35)|0); + $49 = HEAP32[$48>>2]|0; + $50 = ($49>>>0)<($2>>>0); + if ($50) { + _abort(); + // unreachable; + } + $51 = (($49) + 12|0); + $52 = HEAP32[$51>>2]|0; + $53 = ($52|0)==($14|0); + if (!($53)) { + _abort(); + // unreachable; + } + $54 = (($46) + 8|0); + $55 = HEAP32[$54>>2]|0; + $56 = ($55|0)==($14|0); + if ($56) { + HEAP32[$51>>2] = $46; + HEAP32[$54>>2] = $49; + $R$1 = $46; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $70 = ($44|0)==(0|0); + if ($70) { + $p$0 = $14;$psize$0 = $15; + } else { + $$sum32 = (($$sum2) + 28)|0; + $71 = (($mem) + ($$sum32)|0); + $72 = HEAP32[$71>>2]|0; + $73 = ((45528 + ($72<<2)|0) + 304|0); + $74 = HEAP32[$73>>2]|0; + $75 = ($14|0)==($74|0); + if ($75) { + HEAP32[$73>>2] = $R$1; + $cond = ($R$1|0)==(0|0); + if ($cond) { + $76 = 1 << $72; + $77 = $76 ^ -1; + $78 = HEAP32[((45528 + 4|0))>>2]|0; + $79 = $78 & $77; + HEAP32[((45528 + 4|0))>>2] = $79; + $p$0 = $14;$psize$0 = $15; + break; + } + } else { + $80 = HEAP32[((45528 + 16|0))>>2]|0; + $81 = ($44>>>0)<($80>>>0); + if ($81) { + _abort(); + // unreachable; + } + $82 = (($44) + 16|0); + $83 = HEAP32[$82>>2]|0; + $84 = ($83|0)==($14|0); + if ($84) { + HEAP32[$82>>2] = $R$1; + } else { + $85 = (($44) + 20|0); + HEAP32[$85>>2] = $R$1; + } + $86 = ($R$1|0)==(0|0); + if ($86) { + $p$0 = $14;$psize$0 = $15; + break; + } + } + $87 = HEAP32[((45528 + 16|0))>>2]|0; + $88 = ($R$1>>>0)<($87>>>0); + if ($88) { + _abort(); + // unreachable; + } + $89 = (($R$1) + 24|0); + HEAP32[$89>>2] = $44; + $$sum33 = (($$sum2) + 16)|0; + $90 = (($mem) + ($$sum33)|0); + $91 = HEAP32[$90>>2]|0; + $92 = ($91|0)==(0|0); + do { + if (!($92)) { + $93 = HEAP32[((45528 + 16|0))>>2]|0; + $94 = ($91>>>0)<($93>>>0); + if ($94) { + _abort(); + // unreachable; + } else { + $95 = (($R$1) + 16|0); + HEAP32[$95>>2] = $91; + $96 = (($91) + 24|0); + HEAP32[$96>>2] = $R$1; + break; + } + } + } while(0); + $$sum34 = (($$sum2) + 20)|0; + $97 = (($mem) + ($$sum34)|0); + $98 = HEAP32[$97>>2]|0; + $99 = ($98|0)==(0|0); + if ($99) { + $p$0 = $14;$psize$0 = $15; + } else { + $100 = HEAP32[((45528 + 16|0))>>2]|0; + $101 = ($98>>>0)<($100>>>0); + if ($101) { + _abort(); + // unreachable; + } else { + $102 = (($R$1) + 20|0); + HEAP32[$102>>2] = $98; + $103 = (($98) + 24|0); + HEAP32[$103>>2] = $R$1; + $p$0 = $14;$psize$0 = $15; + break; + } + } + } + } else { + $p$0 = $1;$psize$0 = $8; + } + } while(0); + $112 = ($p$0>>>0)<($9>>>0); + if (!($112)) { + _abort(); + // unreachable; + } + $$sum25 = (($8) + -4)|0; + $113 = (($mem) + ($$sum25)|0); + $114 = HEAP32[$113>>2]|0; + $115 = $114 & 1; + $116 = ($115|0)==(0); + if ($116) { + _abort(); + // unreachable; + } + $117 = $114 & 2; + $118 = ($117|0)==(0); + if ($118) { + $119 = HEAP32[((45528 + 24|0))>>2]|0; + $120 = ($9|0)==($119|0); + if ($120) { + $121 = HEAP32[((45528 + 12|0))>>2]|0; + $122 = (($121) + ($psize$0))|0; + HEAP32[((45528 + 12|0))>>2] = $122; + HEAP32[((45528 + 24|0))>>2] = $p$0; + $123 = $122 | 1; + $124 = (($p$0) + 4|0); + HEAP32[$124>>2] = $123; + $125 = HEAP32[((45528 + 20|0))>>2]|0; + $126 = ($p$0|0)==($125|0); + if (!($126)) { + STACKTOP = sp;return; + } + HEAP32[((45528 + 20|0))>>2] = 0; + HEAP32[((45528 + 8|0))>>2] = 0; + STACKTOP = sp;return; + } + $127 = HEAP32[((45528 + 20|0))>>2]|0; + $128 = ($9|0)==($127|0); + if ($128) { + $129 = HEAP32[((45528 + 8|0))>>2]|0; + $130 = (($129) + ($psize$0))|0; + HEAP32[((45528 + 8|0))>>2] = $130; + HEAP32[((45528 + 20|0))>>2] = $p$0; + $131 = $130 | 1; + $132 = (($p$0) + 4|0); + HEAP32[$132>>2] = $131; + $133 = (($p$0) + ($130)|0); + HEAP32[$133>>2] = $130; + STACKTOP = sp;return; + } + $134 = $114 & -8; + $135 = (($134) + ($psize$0))|0; + $136 = $114 >>> 3; + $137 = ($114>>>0)<(256); + do { + if ($137) { + $138 = (($mem) + ($8)|0); + $139 = HEAP32[$138>>2]|0; + $$sum2324 = $8 | 4; + $140 = (($mem) + ($$sum2324)|0); + $141 = HEAP32[$140>>2]|0; + $142 = $136 << 1; + $143 = ((45528 + ($142<<2)|0) + 40|0); + $144 = ($139|0)==($143|0); + if (!($144)) { + $145 = HEAP32[((45528 + 16|0))>>2]|0; + $146 = ($139>>>0)<($145>>>0); + if ($146) { + _abort(); + // unreachable; + } + $147 = (($139) + 12|0); + $148 = HEAP32[$147>>2]|0; + $149 = ($148|0)==($9|0); + if (!($149)) { + _abort(); + // unreachable; + } + } + $150 = ($141|0)==($139|0); + if ($150) { + $151 = 1 << $136; + $152 = $151 ^ -1; + $153 = HEAP32[45528>>2]|0; + $154 = $153 & $152; + HEAP32[45528>>2] = $154; + break; + } + $155 = ($141|0)==($143|0); + if ($155) { + $$pre67 = (($141) + 8|0); + $$pre$phi68Z2D = $$pre67; + } else { + $156 = HEAP32[((45528 + 16|0))>>2]|0; + $157 = ($141>>>0)<($156>>>0); + if ($157) { + _abort(); + // unreachable; + } + $158 = (($141) + 8|0); + $159 = HEAP32[$158>>2]|0; + $160 = ($159|0)==($9|0); + if ($160) { + $$pre$phi68Z2D = $158; + } else { + _abort(); + // unreachable; + } + } + $161 = (($139) + 12|0); + HEAP32[$161>>2] = $141; + HEAP32[$$pre$phi68Z2D>>2] = $139; + } else { + $$sum5 = (($8) + 16)|0; + $162 = (($mem) + ($$sum5)|0); + $163 = HEAP32[$162>>2]|0; + $$sum67 = $8 | 4; + $164 = (($mem) + ($$sum67)|0); + $165 = HEAP32[$164>>2]|0; + $166 = ($165|0)==($9|0); + do { + if ($166) { + $$sum9 = (($8) + 12)|0; + $177 = (($mem) + ($$sum9)|0); + $178 = HEAP32[$177>>2]|0; + $179 = ($178|0)==(0|0); + if ($179) { + $$sum8 = (($8) + 8)|0; + $180 = (($mem) + ($$sum8)|0); + $181 = HEAP32[$180>>2]|0; + $182 = ($181|0)==(0|0); + if ($182) { + $R7$1 = 0; + break; + } else { + $R7$0 = $181;$RP9$0 = $180; + } + } else { + $R7$0 = $178;$RP9$0 = $177; + } + while(1) { + $183 = (($R7$0) + 20|0); + $184 = HEAP32[$183>>2]|0; + $185 = ($184|0)==(0|0); + if (!($185)) { + $R7$0 = $184;$RP9$0 = $183; + continue; + } + $186 = (($R7$0) + 16|0); + $187 = HEAP32[$186>>2]|0; + $188 = ($187|0)==(0|0); + if ($188) { + break; + } else { + $R7$0 = $187;$RP9$0 = $186; + } + } + $189 = HEAP32[((45528 + 16|0))>>2]|0; + $190 = ($RP9$0>>>0)<($189>>>0); + if ($190) { + _abort(); + // unreachable; + } else { + HEAP32[$RP9$0>>2] = 0; + $R7$1 = $R7$0; + break; + } + } else { + $167 = (($mem) + ($8)|0); + $168 = HEAP32[$167>>2]|0; + $169 = HEAP32[((45528 + 16|0))>>2]|0; + $170 = ($168>>>0)<($169>>>0); + if ($170) { + _abort(); + // unreachable; + } + $171 = (($168) + 12|0); + $172 = HEAP32[$171>>2]|0; + $173 = ($172|0)==($9|0); + if (!($173)) { + _abort(); + // unreachable; + } + $174 = (($165) + 8|0); + $175 = HEAP32[$174>>2]|0; + $176 = ($175|0)==($9|0); + if ($176) { + HEAP32[$171>>2] = $165; + HEAP32[$174>>2] = $168; + $R7$1 = $165; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $191 = ($163|0)==(0|0); + if (!($191)) { + $$sum18 = (($8) + 20)|0; + $192 = (($mem) + ($$sum18)|0); + $193 = HEAP32[$192>>2]|0; + $194 = ((45528 + ($193<<2)|0) + 304|0); + $195 = HEAP32[$194>>2]|0; + $196 = ($9|0)==($195|0); + if ($196) { + HEAP32[$194>>2] = $R7$1; + $cond54 = ($R7$1|0)==(0|0); + if ($cond54) { + $197 = 1 << $193; + $198 = $197 ^ -1; + $199 = HEAP32[((45528 + 4|0))>>2]|0; + $200 = $199 & $198; + HEAP32[((45528 + 4|0))>>2] = $200; + break; + } + } else { + $201 = HEAP32[((45528 + 16|0))>>2]|0; + $202 = ($163>>>0)<($201>>>0); + if ($202) { + _abort(); + // unreachable; + } + $203 = (($163) + 16|0); + $204 = HEAP32[$203>>2]|0; + $205 = ($204|0)==($9|0); + if ($205) { + HEAP32[$203>>2] = $R7$1; + } else { + $206 = (($163) + 20|0); + HEAP32[$206>>2] = $R7$1; + } + $207 = ($R7$1|0)==(0|0); + if ($207) { + break; + } + } + $208 = HEAP32[((45528 + 16|0))>>2]|0; + $209 = ($R7$1>>>0)<($208>>>0); + if ($209) { + _abort(); + // unreachable; + } + $210 = (($R7$1) + 24|0); + HEAP32[$210>>2] = $163; + $$sum19 = (($8) + 8)|0; + $211 = (($mem) + ($$sum19)|0); + $212 = HEAP32[$211>>2]|0; + $213 = ($212|0)==(0|0); + do { + if (!($213)) { + $214 = HEAP32[((45528 + 16|0))>>2]|0; + $215 = ($212>>>0)<($214>>>0); + if ($215) { + _abort(); + // unreachable; + } else { + $216 = (($R7$1) + 16|0); + HEAP32[$216>>2] = $212; + $217 = (($212) + 24|0); + HEAP32[$217>>2] = $R7$1; + break; + } + } + } while(0); + $$sum20 = (($8) + 12)|0; + $218 = (($mem) + ($$sum20)|0); + $219 = HEAP32[$218>>2]|0; + $220 = ($219|0)==(0|0); + if (!($220)) { + $221 = HEAP32[((45528 + 16|0))>>2]|0; + $222 = ($219>>>0)<($221>>>0); + if ($222) { + _abort(); + // unreachable; + } else { + $223 = (($R7$1) + 20|0); + HEAP32[$223>>2] = $219; + $224 = (($219) + 24|0); + HEAP32[$224>>2] = $R7$1; + break; + } + } + } + } + } while(0); + $225 = $135 | 1; + $226 = (($p$0) + 4|0); + HEAP32[$226>>2] = $225; + $227 = (($p$0) + ($135)|0); + HEAP32[$227>>2] = $135; + $228 = HEAP32[((45528 + 20|0))>>2]|0; + $229 = ($p$0|0)==($228|0); + if ($229) { + HEAP32[((45528 + 8|0))>>2] = $135; + STACKTOP = sp;return; + } else { + $psize$1 = $135; + } + } else { + $230 = $114 & -2; + HEAP32[$113>>2] = $230; + $231 = $psize$0 | 1; + $232 = (($p$0) + 4|0); + HEAP32[$232>>2] = $231; + $233 = (($p$0) + ($psize$0)|0); + HEAP32[$233>>2] = $psize$0; + $psize$1 = $psize$0; + } + $234 = $psize$1 >>> 3; + $235 = ($psize$1>>>0)<(256); + if ($235) { + $236 = $234 << 1; + $237 = ((45528 + ($236<<2)|0) + 40|0); + $238 = HEAP32[45528>>2]|0; + $239 = 1 << $234; + $240 = $238 & $239; + $241 = ($240|0)==(0); + if ($241) { + $242 = $238 | $239; + HEAP32[45528>>2] = $242; + $$sum16$pre = (($236) + 2)|0; + $$pre = ((45528 + ($$sum16$pre<<2)|0) + 40|0); + $$pre$phiZ2D = $$pre;$F16$0 = $237; + } else { + $$sum17 = (($236) + 2)|0; + $243 = ((45528 + ($$sum17<<2)|0) + 40|0); + $244 = HEAP32[$243>>2]|0; + $245 = HEAP32[((45528 + 16|0))>>2]|0; + $246 = ($244>>>0)<($245>>>0); + if ($246) { + _abort(); + // unreachable; + } else { + $$pre$phiZ2D = $243;$F16$0 = $244; + } + } + HEAP32[$$pre$phiZ2D>>2] = $p$0; + $247 = (($F16$0) + 12|0); + HEAP32[$247>>2] = $p$0; + $248 = (($p$0) + 8|0); + HEAP32[$248>>2] = $F16$0; + $249 = (($p$0) + 12|0); + HEAP32[$249>>2] = $237; + STACKTOP = sp;return; + } + $250 = $psize$1 >>> 8; + $251 = ($250|0)==(0); + if ($251) { + $I18$0 = 0; + } else { + $252 = ($psize$1>>>0)>(16777215); + if ($252) { + $I18$0 = 31; + } else { + $253 = (($250) + 1048320)|0; + $254 = $253 >>> 16; + $255 = $254 & 8; + $256 = $250 << $255; + $257 = (($256) + 520192)|0; + $258 = $257 >>> 16; + $259 = $258 & 4; + $260 = $259 | $255; + $261 = $256 << $259; + $262 = (($261) + 245760)|0; + $263 = $262 >>> 16; + $264 = $263 & 2; + $265 = $260 | $264; + $266 = (14 - ($265))|0; + $267 = $261 << $264; + $268 = $267 >>> 15; + $269 = (($266) + ($268))|0; + $270 = $269 << 1; + $271 = (($269) + 7)|0; + $272 = $psize$1 >>> $271; + $273 = $272 & 1; + $274 = $273 | $270; + $I18$0 = $274; + } + } + $275 = ((45528 + ($I18$0<<2)|0) + 304|0); + $276 = (($p$0) + 28|0); + $I18$0$c = $I18$0; + HEAP32[$276>>2] = $I18$0$c; + $277 = (($p$0) + 20|0); + HEAP32[$277>>2] = 0; + $278 = (($p$0) + 16|0); + HEAP32[$278>>2] = 0; + $279 = HEAP32[((45528 + 4|0))>>2]|0; + $280 = 1 << $I18$0; + $281 = $279 & $280; + $282 = ($281|0)==(0); + L199: do { + if ($282) { + $283 = $279 | $280; + HEAP32[((45528 + 4|0))>>2] = $283; + HEAP32[$275>>2] = $p$0; + $284 = (($p$0) + 24|0); + HEAP32[$284>>2] = $275; + $285 = (($p$0) + 12|0); + HEAP32[$285>>2] = $p$0; + $286 = (($p$0) + 8|0); + HEAP32[$286>>2] = $p$0; + } else { + $287 = HEAP32[$275>>2]|0; + $288 = ($I18$0|0)==(31); + if ($288) { + $296 = 0; + } else { + $289 = $I18$0 >>> 1; + $290 = (25 - ($289))|0; + $296 = $290; + } + $291 = (($287) + 4|0); + $292 = HEAP32[$291>>2]|0; + $293 = $292 & -8; + $294 = ($293|0)==($psize$1|0); + L204: do { + if ($294) { + $T$0$lcssa = $287; + } else { + $295 = $psize$1 << $296; + $K19$057 = $295;$T$056 = $287; + while(1) { + $303 = $K19$057 >>> 31; + $304 = ((($T$056) + ($303<<2)|0) + 16|0); + $299 = HEAP32[$304>>2]|0; + $305 = ($299|0)==(0|0); + if ($305) { + break; + } + $297 = $K19$057 << 1; + $298 = (($299) + 4|0); + $300 = HEAP32[$298>>2]|0; + $301 = $300 & -8; + $302 = ($301|0)==($psize$1|0); + if ($302) { + $T$0$lcssa = $299; + break L204; + } else { + $K19$057 = $297;$T$056 = $299; + } + } + $306 = HEAP32[((45528 + 16|0))>>2]|0; + $307 = ($304>>>0)<($306>>>0); + if ($307) { + _abort(); + // unreachable; + } else { + HEAP32[$304>>2] = $p$0; + $308 = (($p$0) + 24|0); + HEAP32[$308>>2] = $T$056; + $309 = (($p$0) + 12|0); + HEAP32[$309>>2] = $p$0; + $310 = (($p$0) + 8|0); + HEAP32[$310>>2] = $p$0; + break L199; + } + } + } while(0); + $311 = (($T$0$lcssa) + 8|0); + $312 = HEAP32[$311>>2]|0; + $313 = HEAP32[((45528 + 16|0))>>2]|0; + $314 = ($T$0$lcssa>>>0)<($313>>>0); + if ($314) { + _abort(); + // unreachable; + } + $315 = ($312>>>0)<($313>>>0); + if ($315) { + _abort(); + // unreachable; + } else { + $316 = (($312) + 12|0); + HEAP32[$316>>2] = $p$0; + HEAP32[$311>>2] = $p$0; + $317 = (($p$0) + 8|0); + HEAP32[$317>>2] = $312; + $318 = (($p$0) + 12|0); + HEAP32[$318>>2] = $T$0$lcssa; + $319 = (($p$0) + 24|0); + HEAP32[$319>>2] = 0; + break; + } + } + } while(0); + $320 = HEAP32[((45528 + 32|0))>>2]|0; + $321 = (($320) + -1)|0; + HEAP32[((45528 + 32|0))>>2] = $321; + $322 = ($321|0)==(0); + if ($322) { + $sp$0$in$i = ((45528 + 456|0)); + } else { + STACKTOP = sp;return; + } + while(1) { + $sp$0$i = HEAP32[$sp$0$in$i>>2]|0; + $323 = ($sp$0$i|0)==(0|0); + $324 = (($sp$0$i) + 8|0); + if ($323) { + break; + } else { + $sp$0$in$i = $324; + } + } + HEAP32[((45528 + 32|0))>>2] = -1; + STACKTOP = sp;return; +} +function _realloc($oldmem,$bytes) { + $oldmem = $oldmem|0; + $bytes = $bytes|0; + var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; + var $7 = 0, $8 = 0, $9 = 0, $mem$0 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($oldmem|0)==(0|0); + do { + if ($0) { + $1 = (_malloc($bytes)|0); + $mem$0 = $1; + } else { + $2 = ($bytes>>>0)>(4294967231); + if ($2) { + $3 = (___errno_location()|0); + HEAP32[$3>>2] = 12; + $mem$0 = 0; + break; + } + $4 = ($bytes>>>0)<(11); + if ($4) { + $8 = 16; + } else { + $5 = (($bytes) + 11)|0; + $6 = $5 & -8; + $8 = $6; + } + $7 = (($oldmem) + -8|0); + $9 = (_try_realloc_chunk($7,$8)|0); + $10 = ($9|0)==(0|0); + if (!($10)) { + $11 = (($9) + 8|0); + $mem$0 = $11; + break; + } + $12 = (_malloc($bytes)|0); + $13 = ($12|0)==(0|0); + if ($13) { + $mem$0 = 0; + } else { + $14 = (($oldmem) + -4|0); + $15 = HEAP32[$14>>2]|0; + $16 = $15 & -8; + $17 = $15 & 3; + $18 = ($17|0)==(0); + $19 = $18 ? 8 : 4; + $20 = (($16) - ($19))|0; + $21 = ($20>>>0)<($bytes>>>0); + $22 = $21 ? $20 : $bytes; + _memcpy(($12|0),($oldmem|0),($22|0))|0; + _free($oldmem); + $mem$0 = $12; + } + } + } while(0); + STACKTOP = sp;return ($mem$0|0); +} +function _try_realloc_chunk($p,$nb) { + $p = $p|0; + $nb = $nb|0; + var $$pre = 0, $$pre$phiZ2D = 0, $$sum = 0, $$sum11 = 0, $$sum12 = 0, $$sum13 = 0, $$sum14 = 0, $$sum15 = 0, $$sum16 = 0, $$sum17 = 0, $$sum19 = 0, $$sum2 = 0, $$sum20 = 0, $$sum22 = 0, $$sum23 = 0, $$sum2728 = 0, $$sum3 = 0, $$sum4 = 0, $$sum5 = 0, $$sum78 = 0; + var $$sum910 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; + var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; + var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; + var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; + var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; + var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; + var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; + var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; + var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $R$0 = 0, $R$1 = 0, $RP$0 = 0; + var $cond = 0, $newp$0 = 0, $or$cond = 0, $storemerge = 0, $storemerge21 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (($p) + 4|0); + $1 = HEAP32[$0>>2]|0; + $2 = $1 & -8; + $3 = (($p) + ($2)|0); + $4 = HEAP32[((45528 + 16|0))>>2]|0; + $5 = ($p>>>0)<($4>>>0); + if ($5) { + _abort(); + // unreachable; + } + $6 = $1 & 3; + $7 = ($6|0)!=(1); + $8 = ($p>>>0)<($3>>>0); + $or$cond = $7 & $8; + if (!($or$cond)) { + _abort(); + // unreachable; + } + $$sum2728 = $2 | 4; + $9 = (($p) + ($$sum2728)|0); + $10 = HEAP32[$9>>2]|0; + $11 = $10 & 1; + $12 = ($11|0)==(0); + if ($12) { + _abort(); + // unreachable; + } + $13 = ($6|0)==(0); + if ($13) { + $14 = ($nb>>>0)<(256); + if ($14) { + $newp$0 = 0; + STACKTOP = sp;return ($newp$0|0); + } + $15 = (($nb) + 4)|0; + $16 = ($2>>>0)<($15>>>0); + if (!($16)) { + $17 = (($2) - ($nb))|0; + $18 = HEAP32[((46000 + 8|0))>>2]|0; + $19 = $18 << 1; + $20 = ($17>>>0)>($19>>>0); + if (!($20)) { + $newp$0 = $p; + STACKTOP = sp;return ($newp$0|0); + } + } + $newp$0 = 0; + STACKTOP = sp;return ($newp$0|0); + } + $21 = ($2>>>0)<($nb>>>0); + if (!($21)) { + $22 = (($2) - ($nb))|0; + $23 = ($22>>>0)>(15); + if (!($23)) { + $newp$0 = $p; + STACKTOP = sp;return ($newp$0|0); + } + $24 = (($p) + ($nb)|0); + $25 = $1 & 1; + $26 = $25 | $nb; + $27 = $26 | 2; + HEAP32[$0>>2] = $27; + $$sum23 = (($nb) + 4)|0; + $28 = (($p) + ($$sum23)|0); + $29 = $22 | 3; + HEAP32[$28>>2] = $29; + $30 = HEAP32[$9>>2]|0; + $31 = $30 | 1; + HEAP32[$9>>2] = $31; + _dispose_chunk($24,$22); + $newp$0 = $p; + STACKTOP = sp;return ($newp$0|0); + } + $32 = HEAP32[((45528 + 24|0))>>2]|0; + $33 = ($3|0)==($32|0); + if ($33) { + $34 = HEAP32[((45528 + 12|0))>>2]|0; + $35 = (($34) + ($2))|0; + $36 = ($35>>>0)>($nb>>>0); + if (!($36)) { + $newp$0 = 0; + STACKTOP = sp;return ($newp$0|0); + } + $37 = (($35) - ($nb))|0; + $38 = (($p) + ($nb)|0); + $39 = $1 & 1; + $40 = $39 | $nb; + $41 = $40 | 2; + HEAP32[$0>>2] = $41; + $$sum22 = (($nb) + 4)|0; + $42 = (($p) + ($$sum22)|0); + $43 = $37 | 1; + HEAP32[$42>>2] = $43; + HEAP32[((45528 + 24|0))>>2] = $38; + HEAP32[((45528 + 12|0))>>2] = $37; + $newp$0 = $p; + STACKTOP = sp;return ($newp$0|0); + } + $44 = HEAP32[((45528 + 20|0))>>2]|0; + $45 = ($3|0)==($44|0); + if ($45) { + $46 = HEAP32[((45528 + 8|0))>>2]|0; + $47 = (($46) + ($2))|0; + $48 = ($47>>>0)<($nb>>>0); + if ($48) { + $newp$0 = 0; + STACKTOP = sp;return ($newp$0|0); + } + $49 = (($47) - ($nb))|0; + $50 = ($49>>>0)>(15); + if ($50) { + $51 = (($p) + ($nb)|0); + $52 = (($p) + ($47)|0); + $53 = $1 & 1; + $54 = $53 | $nb; + $55 = $54 | 2; + HEAP32[$0>>2] = $55; + $$sum19 = (($nb) + 4)|0; + $56 = (($p) + ($$sum19)|0); + $57 = $49 | 1; + HEAP32[$56>>2] = $57; + HEAP32[$52>>2] = $49; + $$sum20 = (($47) + 4)|0; + $58 = (($p) + ($$sum20)|0); + $59 = HEAP32[$58>>2]|0; + $60 = $59 & -2; + HEAP32[$58>>2] = $60; + $storemerge = $51;$storemerge21 = $49; + } else { + $61 = $1 & 1; + $62 = $61 | $47; + $63 = $62 | 2; + HEAP32[$0>>2] = $63; + $$sum17 = (($47) + 4)|0; + $64 = (($p) + ($$sum17)|0); + $65 = HEAP32[$64>>2]|0; + $66 = $65 | 1; + HEAP32[$64>>2] = $66; + $storemerge = 0;$storemerge21 = 0; + } + HEAP32[((45528 + 8|0))>>2] = $storemerge21; + HEAP32[((45528 + 20|0))>>2] = $storemerge; + $newp$0 = $p; + STACKTOP = sp;return ($newp$0|0); + } + $67 = $10 & 2; + $68 = ($67|0)==(0); + if (!($68)) { + $newp$0 = 0; + STACKTOP = sp;return ($newp$0|0); + } + $69 = $10 & -8; + $70 = (($69) + ($2))|0; + $71 = ($70>>>0)<($nb>>>0); + if ($71) { + $newp$0 = 0; + STACKTOP = sp;return ($newp$0|0); + } + $72 = (($70) - ($nb))|0; + $73 = $10 >>> 3; + $74 = ($10>>>0)<(256); + do { + if ($74) { + $$sum15 = (($2) + 8)|0; + $75 = (($p) + ($$sum15)|0); + $76 = HEAP32[$75>>2]|0; + $$sum16 = (($2) + 12)|0; + $77 = (($p) + ($$sum16)|0); + $78 = HEAP32[$77>>2]|0; + $79 = $73 << 1; + $80 = ((45528 + ($79<<2)|0) + 40|0); + $81 = ($76|0)==($80|0); + if (!($81)) { + $82 = ($76>>>0)<($4>>>0); + if ($82) { + _abort(); + // unreachable; + } + $83 = (($76) + 12|0); + $84 = HEAP32[$83>>2]|0; + $85 = ($84|0)==($3|0); + if (!($85)) { + _abort(); + // unreachable; + } + } + $86 = ($78|0)==($76|0); + if ($86) { + $87 = 1 << $73; + $88 = $87 ^ -1; + $89 = HEAP32[45528>>2]|0; + $90 = $89 & $88; + HEAP32[45528>>2] = $90; + break; + } + $91 = ($78|0)==($80|0); + if ($91) { + $$pre = (($78) + 8|0); + $$pre$phiZ2D = $$pre; + } else { + $92 = ($78>>>0)<($4>>>0); + if ($92) { + _abort(); + // unreachable; + } + $93 = (($78) + 8|0); + $94 = HEAP32[$93>>2]|0; + $95 = ($94|0)==($3|0); + if ($95) { + $$pre$phiZ2D = $93; + } else { + _abort(); + // unreachable; + } + } + $96 = (($76) + 12|0); + HEAP32[$96>>2] = $78; + HEAP32[$$pre$phiZ2D>>2] = $76; + } else { + $$sum = (($2) + 24)|0; + $97 = (($p) + ($$sum)|0); + $98 = HEAP32[$97>>2]|0; + $$sum2 = (($2) + 12)|0; + $99 = (($p) + ($$sum2)|0); + $100 = HEAP32[$99>>2]|0; + $101 = ($100|0)==($3|0); + do { + if ($101) { + $$sum4 = (($2) + 20)|0; + $111 = (($p) + ($$sum4)|0); + $112 = HEAP32[$111>>2]|0; + $113 = ($112|0)==(0|0); + if ($113) { + $$sum3 = (($2) + 16)|0; + $114 = (($p) + ($$sum3)|0); + $115 = HEAP32[$114>>2]|0; + $116 = ($115|0)==(0|0); + if ($116) { + $R$1 = 0; + break; + } else { + $R$0 = $115;$RP$0 = $114; + } + } else { + $R$0 = $112;$RP$0 = $111; + } + while(1) { + $117 = (($R$0) + 20|0); + $118 = HEAP32[$117>>2]|0; + $119 = ($118|0)==(0|0); + if (!($119)) { + $R$0 = $118;$RP$0 = $117; + continue; + } + $120 = (($R$0) + 16|0); + $121 = HEAP32[$120>>2]|0; + $122 = ($121|0)==(0|0); + if ($122) { + break; + } else { + $R$0 = $121;$RP$0 = $120; + } + } + $123 = ($RP$0>>>0)<($4>>>0); + if ($123) { + _abort(); + // unreachable; + } else { + HEAP32[$RP$0>>2] = 0; + $R$1 = $R$0; + break; + } + } else { + $$sum14 = (($2) + 8)|0; + $102 = (($p) + ($$sum14)|0); + $103 = HEAP32[$102>>2]|0; + $104 = ($103>>>0)<($4>>>0); + if ($104) { + _abort(); + // unreachable; + } + $105 = (($103) + 12|0); + $106 = HEAP32[$105>>2]|0; + $107 = ($106|0)==($3|0); + if (!($107)) { + _abort(); + // unreachable; + } + $108 = (($100) + 8|0); + $109 = HEAP32[$108>>2]|0; + $110 = ($109|0)==($3|0); + if ($110) { + HEAP32[$105>>2] = $100; + HEAP32[$108>>2] = $103; + $R$1 = $100; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $124 = ($98|0)==(0|0); + if (!($124)) { + $$sum11 = (($2) + 28)|0; + $125 = (($p) + ($$sum11)|0); + $126 = HEAP32[$125>>2]|0; + $127 = ((45528 + ($126<<2)|0) + 304|0); + $128 = HEAP32[$127>>2]|0; + $129 = ($3|0)==($128|0); + if ($129) { + HEAP32[$127>>2] = $R$1; + $cond = ($R$1|0)==(0|0); + if ($cond) { + $130 = 1 << $126; + $131 = $130 ^ -1; + $132 = HEAP32[((45528 + 4|0))>>2]|0; + $133 = $132 & $131; + HEAP32[((45528 + 4|0))>>2] = $133; + break; + } + } else { + $134 = HEAP32[((45528 + 16|0))>>2]|0; + $135 = ($98>>>0)<($134>>>0); + if ($135) { + _abort(); + // unreachable; + } + $136 = (($98) + 16|0); + $137 = HEAP32[$136>>2]|0; + $138 = ($137|0)==($3|0); + if ($138) { + HEAP32[$136>>2] = $R$1; + } else { + $139 = (($98) + 20|0); + HEAP32[$139>>2] = $R$1; + } + $140 = ($R$1|0)==(0|0); + if ($140) { + break; + } + } + $141 = HEAP32[((45528 + 16|0))>>2]|0; + $142 = ($R$1>>>0)<($141>>>0); + if ($142) { + _abort(); + // unreachable; + } + $143 = (($R$1) + 24|0); + HEAP32[$143>>2] = $98; + $$sum12 = (($2) + 16)|0; + $144 = (($p) + ($$sum12)|0); + $145 = HEAP32[$144>>2]|0; + $146 = ($145|0)==(0|0); + do { + if (!($146)) { + $147 = HEAP32[((45528 + 16|0))>>2]|0; + $148 = ($145>>>0)<($147>>>0); + if ($148) { + _abort(); + // unreachable; + } else { + $149 = (($R$1) + 16|0); + HEAP32[$149>>2] = $145; + $150 = (($145) + 24|0); + HEAP32[$150>>2] = $R$1; + break; + } + } + } while(0); + $$sum13 = (($2) + 20)|0; + $151 = (($p) + ($$sum13)|0); + $152 = HEAP32[$151>>2]|0; + $153 = ($152|0)==(0|0); + if (!($153)) { + $154 = HEAP32[((45528 + 16|0))>>2]|0; + $155 = ($152>>>0)<($154>>>0); + if ($155) { + _abort(); + // unreachable; + } else { + $156 = (($R$1) + 20|0); + HEAP32[$156>>2] = $152; + $157 = (($152) + 24|0); + HEAP32[$157>>2] = $R$1; + break; + } + } + } + } + } while(0); + $158 = ($72>>>0)<(16); + if ($158) { + $159 = HEAP32[$0>>2]|0; + $160 = $159 & 1; + $161 = $70 | $160; + $162 = $161 | 2; + HEAP32[$0>>2] = $162; + $$sum910 = $70 | 4; + $163 = (($p) + ($$sum910)|0); + $164 = HEAP32[$163>>2]|0; + $165 = $164 | 1; + HEAP32[$163>>2] = $165; + $newp$0 = $p; + STACKTOP = sp;return ($newp$0|0); + } else { + $166 = (($p) + ($nb)|0); + $167 = HEAP32[$0>>2]|0; + $168 = $167 & 1; + $169 = $168 | $nb; + $170 = $169 | 2; + HEAP32[$0>>2] = $170; + $$sum5 = (($nb) + 4)|0; + $171 = (($p) + ($$sum5)|0); + $172 = $72 | 3; + HEAP32[$171>>2] = $172; + $$sum78 = $70 | 4; + $173 = (($p) + ($$sum78)|0); + $174 = HEAP32[$173>>2]|0; + $175 = $174 | 1; + HEAP32[$173>>2] = $175; + _dispose_chunk($166,$72); + $newp$0 = $p; + STACKTOP = sp;return ($newp$0|0); + } + return 0|0; +} +function _dispose_chunk($p,$psize) { + $p = $p|0; + $psize = $psize|0; + var $$0 = 0, $$02 = 0, $$1 = 0, $$pre = 0, $$pre$phi63Z2D = 0, $$pre$phi65Z2D = 0, $$pre$phiZ2D = 0, $$pre62 = 0, $$pre64 = 0, $$sum = 0, $$sum1 = 0, $$sum12$pre = 0, $$sum13 = 0, $$sum14 = 0, $$sum15 = 0, $$sum16 = 0, $$sum17 = 0, $$sum18 = 0, $$sum19 = 0, $$sum2 = 0; + var $$sum20 = 0, $$sum22 = 0, $$sum23 = 0, $$sum24 = 0, $$sum25 = 0, $$sum26 = 0, $$sum27 = 0, $$sum28 = 0, $$sum29 = 0, $$sum3 = 0, $$sum30 = 0, $$sum31 = 0, $$sum4 = 0, $$sum5 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0; + var $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0; + var $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0; + var $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0; + var $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0; + var $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0; + var $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0; + var $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0; + var $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0; + var $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0; + var $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0; + var $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0; + var $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; + var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; + var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; + var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; + var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $F16$0 = 0, $I19$0 = 0, $I19$0$c = 0, $K20$049 = 0, $R$0 = 0, $R$1 = 0, $R7$0 = 0, $R7$1 = 0, $RP$0 = 0, $RP9$0 = 0, $T$0$lcssa = 0, $T$048 = 0, $cond = 0, $cond46 = 0, label = 0; + var sp = 0; + sp = STACKTOP; + $0 = (($p) + ($psize)|0); + $1 = (($p) + 4|0); + $2 = HEAP32[$1>>2]|0; + $3 = $2 & 1; + $4 = ($3|0)==(0); + do { + if ($4) { + $5 = HEAP32[$p>>2]|0; + $6 = $2 & 3; + $7 = ($6|0)==(0); + if ($7) { + STACKTOP = sp;return; + } + $8 = (0 - ($5))|0; + $9 = (($p) + ($8)|0); + $10 = (($5) + ($psize))|0; + $11 = HEAP32[((45528 + 16|0))>>2]|0; + $12 = ($9>>>0)<($11>>>0); + if ($12) { + _abort(); + // unreachable; + } + $13 = HEAP32[((45528 + 20|0))>>2]|0; + $14 = ($9|0)==($13|0); + if ($14) { + $$sum = (($psize) + 4)|0; + $100 = (($p) + ($$sum)|0); + $101 = HEAP32[$100>>2]|0; + $102 = $101 & 3; + $103 = ($102|0)==(3); + if (!($103)) { + $$0 = $9;$$02 = $10; + break; + } + HEAP32[((45528 + 8|0))>>2] = $10; + $104 = HEAP32[$100>>2]|0; + $105 = $104 & -2; + HEAP32[$100>>2] = $105; + $106 = $10 | 1; + $$sum20 = (4 - ($5))|0; + $107 = (($p) + ($$sum20)|0); + HEAP32[$107>>2] = $106; + HEAP32[$0>>2] = $10; + STACKTOP = sp;return; + } + $15 = $5 >>> 3; + $16 = ($5>>>0)<(256); + if ($16) { + $$sum30 = (8 - ($5))|0; + $17 = (($p) + ($$sum30)|0); + $18 = HEAP32[$17>>2]|0; + $$sum31 = (12 - ($5))|0; + $19 = (($p) + ($$sum31)|0); + $20 = HEAP32[$19>>2]|0; + $21 = $15 << 1; + $22 = ((45528 + ($21<<2)|0) + 40|0); + $23 = ($18|0)==($22|0); + if (!($23)) { + $24 = ($18>>>0)<($11>>>0); + if ($24) { + _abort(); + // unreachable; + } + $25 = (($18) + 12|0); + $26 = HEAP32[$25>>2]|0; + $27 = ($26|0)==($9|0); + if (!($27)) { + _abort(); + // unreachable; + } + } + $28 = ($20|0)==($18|0); + if ($28) { + $29 = 1 << $15; + $30 = $29 ^ -1; + $31 = HEAP32[45528>>2]|0; + $32 = $31 & $30; + HEAP32[45528>>2] = $32; + $$0 = $9;$$02 = $10; + break; + } + $33 = ($20|0)==($22|0); + if ($33) { + $$pre64 = (($20) + 8|0); + $$pre$phi65Z2D = $$pre64; + } else { + $34 = ($20>>>0)<($11>>>0); + if ($34) { + _abort(); + // unreachable; + } + $35 = (($20) + 8|0); + $36 = HEAP32[$35>>2]|0; + $37 = ($36|0)==($9|0); + if ($37) { + $$pre$phi65Z2D = $35; + } else { + _abort(); + // unreachable; + } + } + $38 = (($18) + 12|0); + HEAP32[$38>>2] = $20; + HEAP32[$$pre$phi65Z2D>>2] = $18; + $$0 = $9;$$02 = $10; + break; + } + $$sum22 = (24 - ($5))|0; + $39 = (($p) + ($$sum22)|0); + $40 = HEAP32[$39>>2]|0; + $$sum23 = (12 - ($5))|0; + $41 = (($p) + ($$sum23)|0); + $42 = HEAP32[$41>>2]|0; + $43 = ($42|0)==($9|0); + do { + if ($43) { + $$sum24 = (16 - ($5))|0; + $$sum25 = (($$sum24) + 4)|0; + $53 = (($p) + ($$sum25)|0); + $54 = HEAP32[$53>>2]|0; + $55 = ($54|0)==(0|0); + if ($55) { + $56 = (($p) + ($$sum24)|0); + $57 = HEAP32[$56>>2]|0; + $58 = ($57|0)==(0|0); + if ($58) { + $R$1 = 0; + break; + } else { + $R$0 = $57;$RP$0 = $56; + } + } else { + $R$0 = $54;$RP$0 = $53; + } + while(1) { + $59 = (($R$0) + 20|0); + $60 = HEAP32[$59>>2]|0; + $61 = ($60|0)==(0|0); + if (!($61)) { + $R$0 = $60;$RP$0 = $59; + continue; + } + $62 = (($R$0) + 16|0); + $63 = HEAP32[$62>>2]|0; + $64 = ($63|0)==(0|0); + if ($64) { + break; + } else { + $R$0 = $63;$RP$0 = $62; + } + } + $65 = ($RP$0>>>0)<($11>>>0); + if ($65) { + _abort(); + // unreachable; + } else { + HEAP32[$RP$0>>2] = 0; + $R$1 = $R$0; + break; + } + } else { + $$sum29 = (8 - ($5))|0; + $44 = (($p) + ($$sum29)|0); + $45 = HEAP32[$44>>2]|0; + $46 = ($45>>>0)<($11>>>0); + if ($46) { + _abort(); + // unreachable; + } + $47 = (($45) + 12|0); + $48 = HEAP32[$47>>2]|0; + $49 = ($48|0)==($9|0); + if (!($49)) { + _abort(); + // unreachable; + } + $50 = (($42) + 8|0); + $51 = HEAP32[$50>>2]|0; + $52 = ($51|0)==($9|0); + if ($52) { + HEAP32[$47>>2] = $42; + HEAP32[$50>>2] = $45; + $R$1 = $42; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $66 = ($40|0)==(0|0); + if ($66) { + $$0 = $9;$$02 = $10; + } else { + $$sum26 = (28 - ($5))|0; + $67 = (($p) + ($$sum26)|0); + $68 = HEAP32[$67>>2]|0; + $69 = ((45528 + ($68<<2)|0) + 304|0); + $70 = HEAP32[$69>>2]|0; + $71 = ($9|0)==($70|0); + if ($71) { + HEAP32[$69>>2] = $R$1; + $cond = ($R$1|0)==(0|0); + if ($cond) { + $72 = 1 << $68; + $73 = $72 ^ -1; + $74 = HEAP32[((45528 + 4|0))>>2]|0; + $75 = $74 & $73; + HEAP32[((45528 + 4|0))>>2] = $75; + $$0 = $9;$$02 = $10; + break; + } + } else { + $76 = HEAP32[((45528 + 16|0))>>2]|0; + $77 = ($40>>>0)<($76>>>0); + if ($77) { + _abort(); + // unreachable; + } + $78 = (($40) + 16|0); + $79 = HEAP32[$78>>2]|0; + $80 = ($79|0)==($9|0); + if ($80) { + HEAP32[$78>>2] = $R$1; + } else { + $81 = (($40) + 20|0); + HEAP32[$81>>2] = $R$1; + } + $82 = ($R$1|0)==(0|0); + if ($82) { + $$0 = $9;$$02 = $10; + break; + } + } + $83 = HEAP32[((45528 + 16|0))>>2]|0; + $84 = ($R$1>>>0)<($83>>>0); + if ($84) { + _abort(); + // unreachable; + } + $85 = (($R$1) + 24|0); + HEAP32[$85>>2] = $40; + $$sum27 = (16 - ($5))|0; + $86 = (($p) + ($$sum27)|0); + $87 = HEAP32[$86>>2]|0; + $88 = ($87|0)==(0|0); + do { + if (!($88)) { + $89 = HEAP32[((45528 + 16|0))>>2]|0; + $90 = ($87>>>0)<($89>>>0); + if ($90) { + _abort(); + // unreachable; + } else { + $91 = (($R$1) + 16|0); + HEAP32[$91>>2] = $87; + $92 = (($87) + 24|0); + HEAP32[$92>>2] = $R$1; + break; + } + } + } while(0); + $$sum28 = (($$sum27) + 4)|0; + $93 = (($p) + ($$sum28)|0); + $94 = HEAP32[$93>>2]|0; + $95 = ($94|0)==(0|0); + if ($95) { + $$0 = $9;$$02 = $10; + } else { + $96 = HEAP32[((45528 + 16|0))>>2]|0; + $97 = ($94>>>0)<($96>>>0); + if ($97) { + _abort(); + // unreachable; + } else { + $98 = (($R$1) + 20|0); + HEAP32[$98>>2] = $94; + $99 = (($94) + 24|0); + HEAP32[$99>>2] = $R$1; + $$0 = $9;$$02 = $10; + break; + } + } + } + } else { + $$0 = $p;$$02 = $psize; + } + } while(0); + $108 = HEAP32[((45528 + 16|0))>>2]|0; + $109 = ($0>>>0)<($108>>>0); + if ($109) { + _abort(); + // unreachable; + } + $$sum1 = (($psize) + 4)|0; + $110 = (($p) + ($$sum1)|0); + $111 = HEAP32[$110>>2]|0; + $112 = $111 & 2; + $113 = ($112|0)==(0); + if ($113) { + $114 = HEAP32[((45528 + 24|0))>>2]|0; + $115 = ($0|0)==($114|0); + if ($115) { + $116 = HEAP32[((45528 + 12|0))>>2]|0; + $117 = (($116) + ($$02))|0; + HEAP32[((45528 + 12|0))>>2] = $117; + HEAP32[((45528 + 24|0))>>2] = $$0; + $118 = $117 | 1; + $119 = (($$0) + 4|0); + HEAP32[$119>>2] = $118; + $120 = HEAP32[((45528 + 20|0))>>2]|0; + $121 = ($$0|0)==($120|0); + if (!($121)) { + STACKTOP = sp;return; + } + HEAP32[((45528 + 20|0))>>2] = 0; + HEAP32[((45528 + 8|0))>>2] = 0; + STACKTOP = sp;return; + } + $122 = HEAP32[((45528 + 20|0))>>2]|0; + $123 = ($0|0)==($122|0); + if ($123) { + $124 = HEAP32[((45528 + 8|0))>>2]|0; + $125 = (($124) + ($$02))|0; + HEAP32[((45528 + 8|0))>>2] = $125; + HEAP32[((45528 + 20|0))>>2] = $$0; + $126 = $125 | 1; + $127 = (($$0) + 4|0); + HEAP32[$127>>2] = $126; + $128 = (($$0) + ($125)|0); + HEAP32[$128>>2] = $125; + STACKTOP = sp;return; + } + $129 = $111 & -8; + $130 = (($129) + ($$02))|0; + $131 = $111 >>> 3; + $132 = ($111>>>0)<(256); + do { + if ($132) { + $$sum18 = (($psize) + 8)|0; + $133 = (($p) + ($$sum18)|0); + $134 = HEAP32[$133>>2]|0; + $$sum19 = (($psize) + 12)|0; + $135 = (($p) + ($$sum19)|0); + $136 = HEAP32[$135>>2]|0; + $137 = $131 << 1; + $138 = ((45528 + ($137<<2)|0) + 40|0); + $139 = ($134|0)==($138|0); + if (!($139)) { + $140 = ($134>>>0)<($108>>>0); + if ($140) { + _abort(); + // unreachable; + } + $141 = (($134) + 12|0); + $142 = HEAP32[$141>>2]|0; + $143 = ($142|0)==($0|0); + if (!($143)) { + _abort(); + // unreachable; + } + } + $144 = ($136|0)==($134|0); + if ($144) { + $145 = 1 << $131; + $146 = $145 ^ -1; + $147 = HEAP32[45528>>2]|0; + $148 = $147 & $146; + HEAP32[45528>>2] = $148; + break; + } + $149 = ($136|0)==($138|0); + if ($149) { + $$pre62 = (($136) + 8|0); + $$pre$phi63Z2D = $$pre62; + } else { + $150 = ($136>>>0)<($108>>>0); + if ($150) { + _abort(); + // unreachable; + } + $151 = (($136) + 8|0); + $152 = HEAP32[$151>>2]|0; + $153 = ($152|0)==($0|0); + if ($153) { + $$pre$phi63Z2D = $151; + } else { + _abort(); + // unreachable; + } + } + $154 = (($134) + 12|0); + HEAP32[$154>>2] = $136; + HEAP32[$$pre$phi63Z2D>>2] = $134; + } else { + $$sum2 = (($psize) + 24)|0; + $155 = (($p) + ($$sum2)|0); + $156 = HEAP32[$155>>2]|0; + $$sum3 = (($psize) + 12)|0; + $157 = (($p) + ($$sum3)|0); + $158 = HEAP32[$157>>2]|0; + $159 = ($158|0)==($0|0); + do { + if ($159) { + $$sum5 = (($psize) + 20)|0; + $169 = (($p) + ($$sum5)|0); + $170 = HEAP32[$169>>2]|0; + $171 = ($170|0)==(0|0); + if ($171) { + $$sum4 = (($psize) + 16)|0; + $172 = (($p) + ($$sum4)|0); + $173 = HEAP32[$172>>2]|0; + $174 = ($173|0)==(0|0); + if ($174) { + $R7$1 = 0; + break; + } else { + $R7$0 = $173;$RP9$0 = $172; + } + } else { + $R7$0 = $170;$RP9$0 = $169; + } + while(1) { + $175 = (($R7$0) + 20|0); + $176 = HEAP32[$175>>2]|0; + $177 = ($176|0)==(0|0); + if (!($177)) { + $R7$0 = $176;$RP9$0 = $175; + continue; + } + $178 = (($R7$0) + 16|0); + $179 = HEAP32[$178>>2]|0; + $180 = ($179|0)==(0|0); + if ($180) { + break; + } else { + $R7$0 = $179;$RP9$0 = $178; + } + } + $181 = ($RP9$0>>>0)<($108>>>0); + if ($181) { + _abort(); + // unreachable; + } else { + HEAP32[$RP9$0>>2] = 0; + $R7$1 = $R7$0; + break; + } + } else { + $$sum17 = (($psize) + 8)|0; + $160 = (($p) + ($$sum17)|0); + $161 = HEAP32[$160>>2]|0; + $162 = ($161>>>0)<($108>>>0); + if ($162) { + _abort(); + // unreachable; + } + $163 = (($161) + 12|0); + $164 = HEAP32[$163>>2]|0; + $165 = ($164|0)==($0|0); + if (!($165)) { + _abort(); + // unreachable; + } + $166 = (($158) + 8|0); + $167 = HEAP32[$166>>2]|0; + $168 = ($167|0)==($0|0); + if ($168) { + HEAP32[$163>>2] = $158; + HEAP32[$166>>2] = $161; + $R7$1 = $158; + break; + } else { + _abort(); + // unreachable; + } + } + } while(0); + $182 = ($156|0)==(0|0); + if (!($182)) { + $$sum14 = (($psize) + 28)|0; + $183 = (($p) + ($$sum14)|0); + $184 = HEAP32[$183>>2]|0; + $185 = ((45528 + ($184<<2)|0) + 304|0); + $186 = HEAP32[$185>>2]|0; + $187 = ($0|0)==($186|0); + if ($187) { + HEAP32[$185>>2] = $R7$1; + $cond46 = ($R7$1|0)==(0|0); + if ($cond46) { + $188 = 1 << $184; + $189 = $188 ^ -1; + $190 = HEAP32[((45528 + 4|0))>>2]|0; + $191 = $190 & $189; + HEAP32[((45528 + 4|0))>>2] = $191; + break; + } + } else { + $192 = HEAP32[((45528 + 16|0))>>2]|0; + $193 = ($156>>>0)<($192>>>0); + if ($193) { + _abort(); + // unreachable; + } + $194 = (($156) + 16|0); + $195 = HEAP32[$194>>2]|0; + $196 = ($195|0)==($0|0); + if ($196) { + HEAP32[$194>>2] = $R7$1; + } else { + $197 = (($156) + 20|0); + HEAP32[$197>>2] = $R7$1; + } + $198 = ($R7$1|0)==(0|0); + if ($198) { + break; + } + } + $199 = HEAP32[((45528 + 16|0))>>2]|0; + $200 = ($R7$1>>>0)<($199>>>0); + if ($200) { + _abort(); + // unreachable; + } + $201 = (($R7$1) + 24|0); + HEAP32[$201>>2] = $156; + $$sum15 = (($psize) + 16)|0; + $202 = (($p) + ($$sum15)|0); + $203 = HEAP32[$202>>2]|0; + $204 = ($203|0)==(0|0); + do { + if (!($204)) { + $205 = HEAP32[((45528 + 16|0))>>2]|0; + $206 = ($203>>>0)<($205>>>0); + if ($206) { + _abort(); + // unreachable; + } else { + $207 = (($R7$1) + 16|0); + HEAP32[$207>>2] = $203; + $208 = (($203) + 24|0); + HEAP32[$208>>2] = $R7$1; + break; + } + } + } while(0); + $$sum16 = (($psize) + 20)|0; + $209 = (($p) + ($$sum16)|0); + $210 = HEAP32[$209>>2]|0; + $211 = ($210|0)==(0|0); + if (!($211)) { + $212 = HEAP32[((45528 + 16|0))>>2]|0; + $213 = ($210>>>0)<($212>>>0); + if ($213) { + _abort(); + // unreachable; + } else { + $214 = (($R7$1) + 20|0); + HEAP32[$214>>2] = $210; + $215 = (($210) + 24|0); + HEAP32[$215>>2] = $R7$1; + break; + } + } + } + } + } while(0); + $216 = $130 | 1; + $217 = (($$0) + 4|0); + HEAP32[$217>>2] = $216; + $218 = (($$0) + ($130)|0); + HEAP32[$218>>2] = $130; + $219 = HEAP32[((45528 + 20|0))>>2]|0; + $220 = ($$0|0)==($219|0); + if ($220) { + HEAP32[((45528 + 8|0))>>2] = $130; + STACKTOP = sp;return; + } else { + $$1 = $130; + } + } else { + $221 = $111 & -2; + HEAP32[$110>>2] = $221; + $222 = $$02 | 1; + $223 = (($$0) + 4|0); + HEAP32[$223>>2] = $222; + $224 = (($$0) + ($$02)|0); + HEAP32[$224>>2] = $$02; + $$1 = $$02; + } + $225 = $$1 >>> 3; + $226 = ($$1>>>0)<(256); + if ($226) { + $227 = $225 << 1; + $228 = ((45528 + ($227<<2)|0) + 40|0); + $229 = HEAP32[45528>>2]|0; + $230 = 1 << $225; + $231 = $229 & $230; + $232 = ($231|0)==(0); + if ($232) { + $233 = $229 | $230; + HEAP32[45528>>2] = $233; + $$sum12$pre = (($227) + 2)|0; + $$pre = ((45528 + ($$sum12$pre<<2)|0) + 40|0); + $$pre$phiZ2D = $$pre;$F16$0 = $228; + } else { + $$sum13 = (($227) + 2)|0; + $234 = ((45528 + ($$sum13<<2)|0) + 40|0); + $235 = HEAP32[$234>>2]|0; + $236 = HEAP32[((45528 + 16|0))>>2]|0; + $237 = ($235>>>0)<($236>>>0); + if ($237) { + _abort(); + // unreachable; + } else { + $$pre$phiZ2D = $234;$F16$0 = $235; + } + } + HEAP32[$$pre$phiZ2D>>2] = $$0; + $238 = (($F16$0) + 12|0); + HEAP32[$238>>2] = $$0; + $239 = (($$0) + 8|0); + HEAP32[$239>>2] = $F16$0; + $240 = (($$0) + 12|0); + HEAP32[$240>>2] = $228; + STACKTOP = sp;return; + } + $241 = $$1 >>> 8; + $242 = ($241|0)==(0); + if ($242) { + $I19$0 = 0; + } else { + $243 = ($$1>>>0)>(16777215); + if ($243) { + $I19$0 = 31; + } else { + $244 = (($241) + 1048320)|0; + $245 = $244 >>> 16; + $246 = $245 & 8; + $247 = $241 << $246; + $248 = (($247) + 520192)|0; + $249 = $248 >>> 16; + $250 = $249 & 4; + $251 = $250 | $246; + $252 = $247 << $250; + $253 = (($252) + 245760)|0; + $254 = $253 >>> 16; + $255 = $254 & 2; + $256 = $251 | $255; + $257 = (14 - ($256))|0; + $258 = $252 << $255; + $259 = $258 >>> 15; + $260 = (($257) + ($259))|0; + $261 = $260 << 1; + $262 = (($260) + 7)|0; + $263 = $$1 >>> $262; + $264 = $263 & 1; + $265 = $264 | $261; + $I19$0 = $265; + } + } + $266 = ((45528 + ($I19$0<<2)|0) + 304|0); + $267 = (($$0) + 28|0); + $I19$0$c = $I19$0; + HEAP32[$267>>2] = $I19$0$c; + $268 = (($$0) + 20|0); + HEAP32[$268>>2] = 0; + $269 = (($$0) + 16|0); + HEAP32[$269>>2] = 0; + $270 = HEAP32[((45528 + 4|0))>>2]|0; + $271 = 1 << $I19$0; + $272 = $270 & $271; + $273 = ($272|0)==(0); + if ($273) { + $274 = $270 | $271; + HEAP32[((45528 + 4|0))>>2] = $274; + HEAP32[$266>>2] = $$0; + $275 = (($$0) + 24|0); + HEAP32[$275>>2] = $266; + $276 = (($$0) + 12|0); + HEAP32[$276>>2] = $$0; + $277 = (($$0) + 8|0); + HEAP32[$277>>2] = $$0; + STACKTOP = sp;return; + } + $278 = HEAP32[$266>>2]|0; + $279 = ($I19$0|0)==(31); + if ($279) { + $287 = 0; + } else { + $280 = $I19$0 >>> 1; + $281 = (25 - ($280))|0; + $287 = $281; + } + $282 = (($278) + 4|0); + $283 = HEAP32[$282>>2]|0; + $284 = $283 & -8; + $285 = ($284|0)==($$1|0); + L194: do { + if ($285) { + $T$0$lcssa = $278; + } else { + $286 = $$1 << $287; + $K20$049 = $286;$T$048 = $278; + while(1) { + $294 = $K20$049 >>> 31; + $295 = ((($T$048) + ($294<<2)|0) + 16|0); + $290 = HEAP32[$295>>2]|0; + $296 = ($290|0)==(0|0); + if ($296) { + break; + } + $288 = $K20$049 << 1; + $289 = (($290) + 4|0); + $291 = HEAP32[$289>>2]|0; + $292 = $291 & -8; + $293 = ($292|0)==($$1|0); + if ($293) { + $T$0$lcssa = $290; + break L194; + } else { + $K20$049 = $288;$T$048 = $290; + } + } + $297 = HEAP32[((45528 + 16|0))>>2]|0; + $298 = ($295>>>0)<($297>>>0); + if ($298) { + _abort(); + // unreachable; + } + HEAP32[$295>>2] = $$0; + $299 = (($$0) + 24|0); + HEAP32[$299>>2] = $T$048; + $300 = (($$0) + 12|0); + HEAP32[$300>>2] = $$0; + $301 = (($$0) + 8|0); + HEAP32[$301>>2] = $$0; + STACKTOP = sp;return; + } + } while(0); + $302 = (($T$0$lcssa) + 8|0); + $303 = HEAP32[$302>>2]|0; + $304 = HEAP32[((45528 + 16|0))>>2]|0; + $305 = ($T$0$lcssa>>>0)<($304>>>0); + if ($305) { + _abort(); + // unreachable; + } + $306 = ($303>>>0)<($304>>>0); + if ($306) { + _abort(); + // unreachable; + } + $307 = (($303) + 12|0); + HEAP32[$307>>2] = $$0; + HEAP32[$302>>2] = $$0; + $308 = (($$0) + 8|0); + HEAP32[$308>>2] = $303; + $309 = (($$0) + 12|0); + HEAP32[$309>>2] = $T$0$lcssa; + $310 = (($$0) + 24|0); + HEAP32[$310>>2] = 0; + STACKTOP = sp;return; +} +function _isupper($c) { + $c = $c|0; + var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (($c) + -65)|0; + $1 = ($0>>>0)<(26); + $2 = $1&1; + STACKTOP = sp;return ($2|0); +} +function _tolower($c) { + $c = $c|0; + var $$0 = 0, $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = (_isupper($c)|0); + $1 = ($0|0)==(0); + $2 = $c | 32; + $$0 = $1 ? $c : $2; + STACKTOP = sp;return ($$0|0); +} +function _memcmp($vl,$vr,$n) { + $vl = $vl|0; + $vr = $vr|0; + $n = $n|0; + var $$03 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $l$04 = 0, $r$05 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($n|0)==(0); + L1: do { + if ($0) { + $11 = 0; + } else { + $$03 = $n;$l$04 = $vl;$r$05 = $vr; + while(1) { + $1 = HEAP8[$l$04>>0]|0; + $2 = HEAP8[$r$05>>0]|0; + $3 = ($1<<24>>24)==($2<<24>>24); + if (!($3)) { + break; + } + $4 = (($$03) + -1)|0; + $5 = (($l$04) + 1|0); + $6 = (($r$05) + 1|0); + $7 = ($4|0)==(0); + if ($7) { + $11 = 0; + break L1; + } else { + $$03 = $4;$l$04 = $5;$r$05 = $6; + } + } + $8 = $1&255; + $9 = $2&255; + $10 = (($8) - ($9))|0; + $11 = $10; + } + } while(0); + STACKTOP = sp;return ($11|0); +} +function _strcmp($l,$r) { + $l = $l|0; + $r = $r|0; + var $$027 = 0, $$08 = 0, $$lcssa = 0, $$lcssa4 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0; + var $or$cond3 = 0, $or$cond36 = 0, $or$cond5 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = HEAP8[$l>>0]|0; + $1 = HEAP8[$r>>0]|0; + $2 = ($0<<24>>24)!=($1<<24>>24); + $3 = ($0<<24>>24)==(0); + $or$cond5 = $2 | $3; + $4 = ($1<<24>>24)==(0); + $or$cond36 = $or$cond5 | $4; + if ($or$cond36) { + $$lcssa = $0;$$lcssa4 = $1; + $12 = $$lcssa&255; + $13 = $$lcssa4&255; + $14 = (($12) - ($13))|0; + STACKTOP = sp;return ($14|0); + } else { + $$027 = $l;$$08 = $r; + } + while(1) { + $5 = (($$027) + 1|0); + $6 = (($$08) + 1|0); + $7 = HEAP8[$5>>0]|0; + $8 = HEAP8[$6>>0]|0; + $9 = ($7<<24>>24)!=($8<<24>>24); + $10 = ($7<<24>>24)==(0); + $or$cond = $9 | $10; + $11 = ($8<<24>>24)==(0); + $or$cond3 = $or$cond | $11; + if ($or$cond3) { + $$lcssa = $7;$$lcssa4 = $8; + break; + } else { + $$027 = $5;$$08 = $6; + } + } + $12 = $$lcssa&255; + $13 = $$lcssa4&255; + $14 = (($12) - ($13))|0; + STACKTOP = sp;return ($14|0); +} +function _strncmp($_l,$_r,$n) { + $_l = $_l|0; + $_r = $_r|0; + $n = $n|0; + var $$03 = 0, $$08 = 0, $$08$in = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $l$06 = 0, $notlhs = 0; + var $notrhs = 0, $or$cond$not = 0, $or$cond4 = 0, $r$0$lcssa = 0, $r$07 = 0, label = 0, sp = 0; + sp = STACKTOP; + $0 = ($n|0)==(0); + if ($0) { + $$03 = 0; + STACKTOP = sp;return ($$03|0); + } + $1 = HEAP8[$_l>>0]|0; + $2 = ($1<<24>>24)==(0); + L4: do { + if ($2) { + $11 = 0;$r$0$lcssa = $_r; + } else { + $$08$in = $n;$5 = $1;$l$06 = $_l;$r$07 = $_r; + while(1) { + $$08 = (($$08$in) + -1)|0; + $3 = HEAP8[$r$07>>0]|0; + $notlhs = ($3<<24>>24)!=(0); + $notrhs = ($$08|0)!=(0); + $or$cond$not = $notrhs & $notlhs; + $4 = ($5<<24>>24)==($3<<24>>24); + $or$cond4 = $or$cond$not & $4; + if (!($or$cond4)) { + $11 = $5;$r$0$lcssa = $r$07; + break L4; + } + $6 = (($l$06) + 1|0); + $7 = (($r$07) + 1|0); + $8 = HEAP8[$6>>0]|0; + $9 = ($8<<24>>24)==(0); + if ($9) { + $11 = 0;$r$0$lcssa = $7; + break; + } else { + $$08$in = $$08;$5 = $8;$l$06 = $6;$r$07 = $7; + } + } + } + } while(0); + $10 = $11&255; + $12 = HEAP8[$r$0$lcssa>>0]|0; + $13 = $12&255; + $14 = (($10) - ($13))|0; + $$03 = $14; + STACKTOP = sp;return ($$03|0); +} +function runPostSets() { + +} +function _i64Subtract(a, b, c, d) { + a = a|0; b = b|0; c = c|0; d = d|0; + var l = 0, h = 0; + l = (a - c)>>>0; + h = (b - d)>>>0; + h = (b - d - (((c>>>0) > (a>>>0))|0))>>>0; // Borrow one from high word to low word on underflow. + return ((tempRet0 = h,l|0)|0); +} +function _memset(ptr, value, num) { + ptr = ptr|0; value = value|0; num = num|0; + var stop = 0, value4 = 0, stop4 = 0, unaligned = 0; + stop = (ptr + num)|0; + if ((num|0) >= 20) { + // This is unaligned, but quite large, so work hard to get to aligned settings + value = value & 0xff; + unaligned = ptr & 3; + value4 = value | (value << 8) | (value << 16) | (value << 24); + stop4 = stop & ~3; + if (unaligned) { + unaligned = (ptr + 4 - unaligned)|0; + while ((ptr|0) < (unaligned|0)) { // no need to check for stop, since we have large num + HEAP8[((ptr)>>0)]=value; + ptr = (ptr+1)|0; + } + } + while ((ptr|0) < (stop4|0)) { + HEAP32[((ptr)>>2)]=value4; + ptr = (ptr+4)|0; + } + } + while ((ptr|0) < (stop|0)) { + HEAP8[((ptr)>>0)]=value; + ptr = (ptr+1)|0; + } + return (ptr-num)|0; +} +function _bitshift64Shl(low, high, bits) { + low = low|0; high = high|0; bits = bits|0; + var ander = 0; + if ((bits|0) < 32) { + ander = ((1 << bits) - 1)|0; + tempRet0 = (high << bits) | ((low&(ander << (32 - bits))) >>> (32 - bits)); + return low << bits; + } + tempRet0 = low << (bits - 32); + return 0; +} +function _strlen(ptr) { + ptr = ptr|0; + var curr = 0; + curr = ptr; + while (((HEAP8[((curr)>>0)])|0)) { + curr = (curr + 1)|0; + } + return (curr - ptr)|0; +} +function _i64Add(a, b, c, d) { + /* + x = a + b*2^32 + y = c + d*2^32 + result = l + h*2^32 + */ + a = a|0; b = b|0; c = c|0; d = d|0; + var l = 0, h = 0; + l = (a + c)>>>0; + h = (b + d + (((l>>>0) < (a>>>0))|0))>>>0; // Add carry from low word to high word on overflow. + return ((tempRet0 = h,l|0)|0); +} +function _bitshift64Lshr(low, high, bits) { + low = low|0; high = high|0; bits = bits|0; + var ander = 0; + if ((bits|0) < 32) { + ander = ((1 << bits) - 1)|0; + tempRet0 = high >>> bits; + return (low >>> bits) | ((high&ander) << (32 - bits)); + } + tempRet0 = 0; + return (high >>> (bits - 32))|0; +} +function _memcpy(dest, src, num) { + + dest = dest|0; src = src|0; num = num|0; + var ret = 0; + if ((num|0) >= 4096) return _emscripten_memcpy_big(dest|0, src|0, num|0)|0; + ret = dest|0; + if ((dest&3) == (src&3)) { + while (dest & 3) { + if ((num|0) == 0) return ret|0; + HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); + dest = (dest+1)|0; + src = (src+1)|0; + num = (num-1)|0; + } + while ((num|0) >= 4) { + HEAP32[((dest)>>2)]=((HEAP32[((src)>>2)])|0); + dest = (dest+4)|0; + src = (src+4)|0; + num = (num-4)|0; + } + } + while ((num|0) > 0) { + HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); + dest = (dest+1)|0; + src = (src+1)|0; + num = (num-1)|0; + } + return ret|0; +} +function _memmove(dest, src, num) { + dest = dest|0; src = src|0; num = num|0; + var ret = 0; + if (((src|0) < (dest|0)) & ((dest|0) < ((src + num)|0))) { + // Unlikely case: Copy backwards in a safe manner + ret = dest; + src = (src + num)|0; + dest = (dest + num)|0; + while ((num|0) > 0) { + dest = (dest - 1)|0; + src = (src - 1)|0; + num = (num - 1)|0; + HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); + } + dest = ret; + } else { + _memcpy(dest, src, num) | 0; + } + return dest | 0; +} +function _bitshift64Ashr(low, high, bits) { + low = low|0; high = high|0; bits = bits|0; + var ander = 0; + if ((bits|0) < 32) { + ander = ((1 << bits) - 1)|0; + tempRet0 = high >> bits; + return (low >>> bits) | ((high&ander) << (32 - bits)); + } + tempRet0 = (high|0) < 0 ? -1 : 0; + return (high >> (bits - 32))|0; + } +function _llvm_ctlz_i32(x) { + x = x|0; + var ret = 0; + ret = ((HEAP8[(((ctlz_i8)+(x >>> 24))>>0)])|0); + if ((ret|0) < 8) return ret|0; + ret = ((HEAP8[(((ctlz_i8)+((x >> 16)&0xff))>>0)])|0); + if ((ret|0) < 8) return (ret + 8)|0; + ret = ((HEAP8[(((ctlz_i8)+((x >> 8)&0xff))>>0)])|0); + if ((ret|0) < 8) return (ret + 16)|0; + return (((HEAP8[(((ctlz_i8)+(x&0xff))>>0)])|0) + 24)|0; + } + +function _llvm_cttz_i32(x) { + x = x|0; + var ret = 0; + ret = ((HEAP8[(((cttz_i8)+(x & 0xff))>>0)])|0); + if ((ret|0) < 8) return ret|0; + ret = ((HEAP8[(((cttz_i8)+((x >> 8)&0xff))>>0)])|0); + if ((ret|0) < 8) return (ret + 8)|0; + ret = ((HEAP8[(((cttz_i8)+((x >> 16)&0xff))>>0)])|0); + if ((ret|0) < 8) return (ret + 16)|0; + return (((HEAP8[(((cttz_i8)+(x >>> 24))>>0)])|0) + 24)|0; + } + +// ======== compiled code from system/lib/compiler-rt , see readme therein +function ___muldsi3($a, $b) { + $a = $a | 0; + $b = $b | 0; + var $1 = 0, $2 = 0, $3 = 0, $6 = 0, $8 = 0, $11 = 0, $12 = 0; + $1 = $a & 65535; + $2 = $b & 65535; + $3 = Math_imul($2, $1) | 0; + $6 = $a >>> 16; + $8 = ($3 >>> 16) + (Math_imul($2, $6) | 0) | 0; + $11 = $b >>> 16; + $12 = Math_imul($11, $1) | 0; + return (tempRet0 = (($8 >>> 16) + (Math_imul($11, $6) | 0) | 0) + ((($8 & 65535) + $12 | 0) >>> 16) | 0, 0 | ($8 + $12 << 16 | $3 & 65535)) | 0; +} +function ___divdi3($a$0, $a$1, $b$0, $b$1) { + $a$0 = $a$0 | 0; + $a$1 = $a$1 | 0; + $b$0 = $b$0 | 0; + $b$1 = $b$1 | 0; + var $1$0 = 0, $1$1 = 0, $2$0 = 0, $2$1 = 0, $4$0 = 0, $4$1 = 0, $6$0 = 0, $7$0 = 0, $7$1 = 0, $8$0 = 0, $10$0 = 0; + $1$0 = $a$1 >> 31 | (($a$1 | 0) < 0 ? -1 : 0) << 1; + $1$1 = (($a$1 | 0) < 0 ? -1 : 0) >> 31 | (($a$1 | 0) < 0 ? -1 : 0) << 1; + $2$0 = $b$1 >> 31 | (($b$1 | 0) < 0 ? -1 : 0) << 1; + $2$1 = (($b$1 | 0) < 0 ? -1 : 0) >> 31 | (($b$1 | 0) < 0 ? -1 : 0) << 1; + $4$0 = _i64Subtract($1$0 ^ $a$0, $1$1 ^ $a$1, $1$0, $1$1) | 0; + $4$1 = tempRet0; + $6$0 = _i64Subtract($2$0 ^ $b$0, $2$1 ^ $b$1, $2$0, $2$1) | 0; + $7$0 = $2$0 ^ $1$0; + $7$1 = $2$1 ^ $1$1; + $8$0 = ___udivmoddi4($4$0, $4$1, $6$0, tempRet0, 0) | 0; + $10$0 = _i64Subtract($8$0 ^ $7$0, tempRet0 ^ $7$1, $7$0, $7$1) | 0; + return (tempRet0 = tempRet0, $10$0) | 0; +} +function ___remdi3($a$0, $a$1, $b$0, $b$1) { + $a$0 = $a$0 | 0; + $a$1 = $a$1 | 0; + $b$0 = $b$0 | 0; + $b$1 = $b$1 | 0; + var $rem = 0, $1$0 = 0, $1$1 = 0, $2$0 = 0, $2$1 = 0, $4$0 = 0, $4$1 = 0, $6$0 = 0, $10$0 = 0, $10$1 = 0, __stackBase__ = 0; + __stackBase__ = STACKTOP; + STACKTOP = STACKTOP + 8 | 0; + $rem = __stackBase__ | 0; + $1$0 = $a$1 >> 31 | (($a$1 | 0) < 0 ? -1 : 0) << 1; + $1$1 = (($a$1 | 0) < 0 ? -1 : 0) >> 31 | (($a$1 | 0) < 0 ? -1 : 0) << 1; + $2$0 = $b$1 >> 31 | (($b$1 | 0) < 0 ? -1 : 0) << 1; + $2$1 = (($b$1 | 0) < 0 ? -1 : 0) >> 31 | (($b$1 | 0) < 0 ? -1 : 0) << 1; + $4$0 = _i64Subtract($1$0 ^ $a$0, $1$1 ^ $a$1, $1$0, $1$1) | 0; + $4$1 = tempRet0; + $6$0 = _i64Subtract($2$0 ^ $b$0, $2$1 ^ $b$1, $2$0, $2$1) | 0; + ___udivmoddi4($4$0, $4$1, $6$0, tempRet0, $rem) | 0; + $10$0 = _i64Subtract(HEAP32[$rem >> 2] ^ $1$0, HEAP32[$rem + 4 >> 2] ^ $1$1, $1$0, $1$1) | 0; + $10$1 = tempRet0; + STACKTOP = __stackBase__; + return (tempRet0 = $10$1, $10$0) | 0; +} +function ___muldi3($a$0, $a$1, $b$0, $b$1) { + $a$0 = $a$0 | 0; + $a$1 = $a$1 | 0; + $b$0 = $b$0 | 0; + $b$1 = $b$1 | 0; + var $x_sroa_0_0_extract_trunc = 0, $y_sroa_0_0_extract_trunc = 0, $1$0 = 0, $1$1 = 0, $2 = 0; + $x_sroa_0_0_extract_trunc = $a$0; + $y_sroa_0_0_extract_trunc = $b$0; + $1$0 = ___muldsi3($x_sroa_0_0_extract_trunc, $y_sroa_0_0_extract_trunc) | 0; + $1$1 = tempRet0; + $2 = Math_imul($a$1, $y_sroa_0_0_extract_trunc) | 0; + return (tempRet0 = ((Math_imul($b$1, $x_sroa_0_0_extract_trunc) | 0) + $2 | 0) + $1$1 | $1$1 & 0, 0 | $1$0 & -1) | 0; +} +function ___udivdi3($a$0, $a$1, $b$0, $b$1) { + $a$0 = $a$0 | 0; + $a$1 = $a$1 | 0; + $b$0 = $b$0 | 0; + $b$1 = $b$1 | 0; + var $1$0 = 0; + $1$0 = ___udivmoddi4($a$0, $a$1, $b$0, $b$1, 0) | 0; + return (tempRet0 = tempRet0, $1$0) | 0; +} +function ___uremdi3($a$0, $a$1, $b$0, $b$1) { + $a$0 = $a$0 | 0; + $a$1 = $a$1 | 0; + $b$0 = $b$0 | 0; + $b$1 = $b$1 | 0; + var $rem = 0, __stackBase__ = 0; + __stackBase__ = STACKTOP; + STACKTOP = STACKTOP + 8 | 0; + $rem = __stackBase__ | 0; + ___udivmoddi4($a$0, $a$1, $b$0, $b$1, $rem) | 0; + STACKTOP = __stackBase__; + return (tempRet0 = HEAP32[$rem + 4 >> 2] | 0, HEAP32[$rem >> 2] | 0) | 0; +} +function ___udivmoddi4($a$0, $a$1, $b$0, $b$1, $rem) { + $a$0 = $a$0 | 0; + $a$1 = $a$1 | 0; + $b$0 = $b$0 | 0; + $b$1 = $b$1 | 0; + $rem = $rem | 0; + var $n_sroa_0_0_extract_trunc = 0, $n_sroa_1_4_extract_shift$0 = 0, $n_sroa_1_4_extract_trunc = 0, $d_sroa_0_0_extract_trunc = 0, $d_sroa_1_4_extract_shift$0 = 0, $d_sroa_1_4_extract_trunc = 0, $4 = 0, $17 = 0, $37 = 0, $49 = 0, $51 = 0, $57 = 0, $58 = 0, $66 = 0, $78 = 0, $86 = 0, $88 = 0, $89 = 0, $91 = 0, $92 = 0, $95 = 0, $105 = 0, $117 = 0, $119 = 0, $125 = 0, $126 = 0, $130 = 0, $q_sroa_1_1_ph = 0, $q_sroa_0_1_ph = 0, $r_sroa_1_1_ph = 0, $r_sroa_0_1_ph = 0, $sr_1_ph = 0, $d_sroa_0_0_insert_insert99$0 = 0, $d_sroa_0_0_insert_insert99$1 = 0, $137$0 = 0, $137$1 = 0, $carry_0203 = 0, $sr_1202 = 0, $r_sroa_0_1201 = 0, $r_sroa_1_1200 = 0, $q_sroa_0_1199 = 0, $q_sroa_1_1198 = 0, $147 = 0, $149 = 0, $r_sroa_0_0_insert_insert42$0 = 0, $r_sroa_0_0_insert_insert42$1 = 0, $150$1 = 0, $151$0 = 0, $152 = 0, $154$0 = 0, $r_sroa_0_0_extract_trunc = 0, $r_sroa_1_4_extract_trunc = 0, $155 = 0, $carry_0_lcssa$0 = 0, $carry_0_lcssa$1 = 0, $r_sroa_0_1_lcssa = 0, $r_sroa_1_1_lcssa = 0, $q_sroa_0_1_lcssa = 0, $q_sroa_1_1_lcssa = 0, $q_sroa_0_0_insert_ext75$0 = 0, $q_sroa_0_0_insert_ext75$1 = 0, $q_sroa_0_0_insert_insert77$1 = 0, $_0$0 = 0, $_0$1 = 0; + $n_sroa_0_0_extract_trunc = $a$0; + $n_sroa_1_4_extract_shift$0 = $a$1; + $n_sroa_1_4_extract_trunc = $n_sroa_1_4_extract_shift$0; + $d_sroa_0_0_extract_trunc = $b$0; + $d_sroa_1_4_extract_shift$0 = $b$1; + $d_sroa_1_4_extract_trunc = $d_sroa_1_4_extract_shift$0; + if (($n_sroa_1_4_extract_trunc | 0) == 0) { + $4 = ($rem | 0) != 0; + if (($d_sroa_1_4_extract_trunc | 0) == 0) { + if ($4) { + HEAP32[$rem >> 2] = ($n_sroa_0_0_extract_trunc >>> 0) % ($d_sroa_0_0_extract_trunc >>> 0); + HEAP32[$rem + 4 >> 2] = 0; + } + $_0$1 = 0; + $_0$0 = ($n_sroa_0_0_extract_trunc >>> 0) / ($d_sroa_0_0_extract_trunc >>> 0) >>> 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } else { + if (!$4) { + $_0$1 = 0; + $_0$0 = 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } + HEAP32[$rem >> 2] = $a$0 & -1; + HEAP32[$rem + 4 >> 2] = $a$1 & 0; + $_0$1 = 0; + $_0$0 = 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } + } + $17 = ($d_sroa_1_4_extract_trunc | 0) == 0; + do { + if (($d_sroa_0_0_extract_trunc | 0) == 0) { + if ($17) { + if (($rem | 0) != 0) { + HEAP32[$rem >> 2] = ($n_sroa_1_4_extract_trunc >>> 0) % ($d_sroa_0_0_extract_trunc >>> 0); + HEAP32[$rem + 4 >> 2] = 0; + } + $_0$1 = 0; + $_0$0 = ($n_sroa_1_4_extract_trunc >>> 0) / ($d_sroa_0_0_extract_trunc >>> 0) >>> 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } + if (($n_sroa_0_0_extract_trunc | 0) == 0) { + if (($rem | 0) != 0) { + HEAP32[$rem >> 2] = 0; + HEAP32[$rem + 4 >> 2] = ($n_sroa_1_4_extract_trunc >>> 0) % ($d_sroa_1_4_extract_trunc >>> 0); + } + $_0$1 = 0; + $_0$0 = ($n_sroa_1_4_extract_trunc >>> 0) / ($d_sroa_1_4_extract_trunc >>> 0) >>> 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } + $37 = $d_sroa_1_4_extract_trunc - 1 | 0; + if (($37 & $d_sroa_1_4_extract_trunc | 0) == 0) { + if (($rem | 0) != 0) { + HEAP32[$rem >> 2] = 0 | $a$0 & -1; + HEAP32[$rem + 4 >> 2] = $37 & $n_sroa_1_4_extract_trunc | $a$1 & 0; + } + $_0$1 = 0; + $_0$0 = $n_sroa_1_4_extract_trunc >>> ((_llvm_cttz_i32($d_sroa_1_4_extract_trunc | 0) | 0) >>> 0); + return (tempRet0 = $_0$1, $_0$0) | 0; + } + $49 = _llvm_ctlz_i32($d_sroa_1_4_extract_trunc | 0) | 0; + $51 = $49 - (_llvm_ctlz_i32($n_sroa_1_4_extract_trunc | 0) | 0) | 0; + if ($51 >>> 0 <= 30) { + $57 = $51 + 1 | 0; + $58 = 31 - $51 | 0; + $sr_1_ph = $57; + $r_sroa_0_1_ph = $n_sroa_1_4_extract_trunc << $58 | $n_sroa_0_0_extract_trunc >>> ($57 >>> 0); + $r_sroa_1_1_ph = $n_sroa_1_4_extract_trunc >>> ($57 >>> 0); + $q_sroa_0_1_ph = 0; + $q_sroa_1_1_ph = $n_sroa_0_0_extract_trunc << $58; + break; + } + if (($rem | 0) == 0) { + $_0$1 = 0; + $_0$0 = 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } + HEAP32[$rem >> 2] = 0 | $a$0 & -1; + HEAP32[$rem + 4 >> 2] = $n_sroa_1_4_extract_shift$0 | $a$1 & 0; + $_0$1 = 0; + $_0$0 = 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } else { + if (!$17) { + $117 = _llvm_ctlz_i32($d_sroa_1_4_extract_trunc | 0) | 0; + $119 = $117 - (_llvm_ctlz_i32($n_sroa_1_4_extract_trunc | 0) | 0) | 0; + if ($119 >>> 0 <= 31) { + $125 = $119 + 1 | 0; + $126 = 31 - $119 | 0; + $130 = $119 - 31 >> 31; + $sr_1_ph = $125; + $r_sroa_0_1_ph = $n_sroa_0_0_extract_trunc >>> ($125 >>> 0) & $130 | $n_sroa_1_4_extract_trunc << $126; + $r_sroa_1_1_ph = $n_sroa_1_4_extract_trunc >>> ($125 >>> 0) & $130; + $q_sroa_0_1_ph = 0; + $q_sroa_1_1_ph = $n_sroa_0_0_extract_trunc << $126; + break; + } + if (($rem | 0) == 0) { + $_0$1 = 0; + $_0$0 = 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } + HEAP32[$rem >> 2] = 0 | $a$0 & -1; + HEAP32[$rem + 4 >> 2] = $n_sroa_1_4_extract_shift$0 | $a$1 & 0; + $_0$1 = 0; + $_0$0 = 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } + $66 = $d_sroa_0_0_extract_trunc - 1 | 0; + if (($66 & $d_sroa_0_0_extract_trunc | 0) != 0) { + $86 = (_llvm_ctlz_i32($d_sroa_0_0_extract_trunc | 0) | 0) + 33 | 0; + $88 = $86 - (_llvm_ctlz_i32($n_sroa_1_4_extract_trunc | 0) | 0) | 0; + $89 = 64 - $88 | 0; + $91 = 32 - $88 | 0; + $92 = $91 >> 31; + $95 = $88 - 32 | 0; + $105 = $95 >> 31; + $sr_1_ph = $88; + $r_sroa_0_1_ph = $91 - 1 >> 31 & $n_sroa_1_4_extract_trunc >>> ($95 >>> 0) | ($n_sroa_1_4_extract_trunc << $91 | $n_sroa_0_0_extract_trunc >>> ($88 >>> 0)) & $105; + $r_sroa_1_1_ph = $105 & $n_sroa_1_4_extract_trunc >>> ($88 >>> 0); + $q_sroa_0_1_ph = $n_sroa_0_0_extract_trunc << $89 & $92; + $q_sroa_1_1_ph = ($n_sroa_1_4_extract_trunc << $89 | $n_sroa_0_0_extract_trunc >>> ($95 >>> 0)) & $92 | $n_sroa_0_0_extract_trunc << $91 & $88 - 33 >> 31; + break; + } + if (($rem | 0) != 0) { + HEAP32[$rem >> 2] = $66 & $n_sroa_0_0_extract_trunc; + HEAP32[$rem + 4 >> 2] = 0; + } + if (($d_sroa_0_0_extract_trunc | 0) == 1) { + $_0$1 = $n_sroa_1_4_extract_shift$0 | $a$1 & 0; + $_0$0 = 0 | $a$0 & -1; + return (tempRet0 = $_0$1, $_0$0) | 0; + } else { + $78 = _llvm_cttz_i32($d_sroa_0_0_extract_trunc | 0) | 0; + $_0$1 = 0 | $n_sroa_1_4_extract_trunc >>> ($78 >>> 0); + $_0$0 = $n_sroa_1_4_extract_trunc << 32 - $78 | $n_sroa_0_0_extract_trunc >>> ($78 >>> 0) | 0; + return (tempRet0 = $_0$1, $_0$0) | 0; + } + } + } while (0); + if (($sr_1_ph | 0) == 0) { + $q_sroa_1_1_lcssa = $q_sroa_1_1_ph; + $q_sroa_0_1_lcssa = $q_sroa_0_1_ph; + $r_sroa_1_1_lcssa = $r_sroa_1_1_ph; + $r_sroa_0_1_lcssa = $r_sroa_0_1_ph; + $carry_0_lcssa$1 = 0; + $carry_0_lcssa$0 = 0; + } else { + $d_sroa_0_0_insert_insert99$0 = 0 | $b$0 & -1; + $d_sroa_0_0_insert_insert99$1 = $d_sroa_1_4_extract_shift$0 | $b$1 & 0; + $137$0 = _i64Add($d_sroa_0_0_insert_insert99$0, $d_sroa_0_0_insert_insert99$1, -1, -1) | 0; + $137$1 = tempRet0; + $q_sroa_1_1198 = $q_sroa_1_1_ph; + $q_sroa_0_1199 = $q_sroa_0_1_ph; + $r_sroa_1_1200 = $r_sroa_1_1_ph; + $r_sroa_0_1201 = $r_sroa_0_1_ph; + $sr_1202 = $sr_1_ph; + $carry_0203 = 0; + while (1) { + $147 = $q_sroa_0_1199 >>> 31 | $q_sroa_1_1198 << 1; + $149 = $carry_0203 | $q_sroa_0_1199 << 1; + $r_sroa_0_0_insert_insert42$0 = 0 | ($r_sroa_0_1201 << 1 | $q_sroa_1_1198 >>> 31); + $r_sroa_0_0_insert_insert42$1 = $r_sroa_0_1201 >>> 31 | $r_sroa_1_1200 << 1 | 0; + _i64Subtract($137$0, $137$1, $r_sroa_0_0_insert_insert42$0, $r_sroa_0_0_insert_insert42$1) | 0; + $150$1 = tempRet0; + $151$0 = $150$1 >> 31 | (($150$1 | 0) < 0 ? -1 : 0) << 1; + $152 = $151$0 & 1; + $154$0 = _i64Subtract($r_sroa_0_0_insert_insert42$0, $r_sroa_0_0_insert_insert42$1, $151$0 & $d_sroa_0_0_insert_insert99$0, ((($150$1 | 0) < 0 ? -1 : 0) >> 31 | (($150$1 | 0) < 0 ? -1 : 0) << 1) & $d_sroa_0_0_insert_insert99$1) | 0; + $r_sroa_0_0_extract_trunc = $154$0; + $r_sroa_1_4_extract_trunc = tempRet0; + $155 = $sr_1202 - 1 | 0; + if (($155 | 0) == 0) { + break; + } else { + $q_sroa_1_1198 = $147; + $q_sroa_0_1199 = $149; + $r_sroa_1_1200 = $r_sroa_1_4_extract_trunc; + $r_sroa_0_1201 = $r_sroa_0_0_extract_trunc; + $sr_1202 = $155; + $carry_0203 = $152; + } + } + $q_sroa_1_1_lcssa = $147; + $q_sroa_0_1_lcssa = $149; + $r_sroa_1_1_lcssa = $r_sroa_1_4_extract_trunc; + $r_sroa_0_1_lcssa = $r_sroa_0_0_extract_trunc; + $carry_0_lcssa$1 = 0; + $carry_0_lcssa$0 = $152; + } + $q_sroa_0_0_insert_ext75$0 = $q_sroa_0_1_lcssa; + $q_sroa_0_0_insert_ext75$1 = 0; + $q_sroa_0_0_insert_insert77$1 = $q_sroa_1_1_lcssa | $q_sroa_0_0_insert_ext75$1; + if (($rem | 0) != 0) { + HEAP32[$rem >> 2] = 0 | $r_sroa_0_1_lcssa; + HEAP32[$rem + 4 >> 2] = $r_sroa_1_1_lcssa | 0; + } + $_0$1 = (0 | $q_sroa_0_0_insert_ext75$0) >>> 31 | $q_sroa_0_0_insert_insert77$1 << 1 | ($q_sroa_0_0_insert_ext75$1 << 1 | $q_sroa_0_0_insert_ext75$0 >>> 31) & 0 | $carry_0_lcssa$1; + $_0$0 = ($q_sroa_0_0_insert_ext75$0 << 1 | 0 >>> 31) & -2 | $carry_0_lcssa$0; + return (tempRet0 = $_0$1, $_0$0) | 0; +} +// ======================================================================= + + + +// EMSCRIPTEN_END_FUNCS + + + function dynCall_iiii(index,a1,a2,a3) { + index = index|0; + a1=a1|0; a2=a2|0; a3=a3|0; + return FUNCTION_TABLE_iiii[index&31](a1|0,a2|0,a3|0)|0; + } + + + function dynCall_i(index) { + index = index|0; + + return FUNCTION_TABLE_i[index&1]()|0; + } + + + function dynCall_vi(index,a1) { + index = index|0; + a1=a1|0; + FUNCTION_TABLE_vi[index&31](a1|0); + } + + + function dynCall_vii(index,a1,a2) { + index = index|0; + a1=a1|0; a2=a2|0; + FUNCTION_TABLE_vii[index&7](a1|0,a2|0); + } + + + function dynCall_iiiiiii(index,a1,a2,a3,a4,a5,a6) { + index = index|0; + a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=a5|0; a6=a6|0; + return FUNCTION_TABLE_iiiiiii[index&15](a1|0,a2|0,a3|0,a4|0,a5|0,a6|0)|0; + } + + + function dynCall_ii(index,a1) { + index = index|0; + a1=a1|0; + return FUNCTION_TABLE_ii[index&63](a1|0)|0; + } + + + function dynCall_viii(index,a1,a2,a3) { + index = index|0; + a1=a1|0; a2=a2|0; a3=a3|0; + FUNCTION_TABLE_viii[index&63](a1|0,a2|0,a3|0); + } + + + function dynCall_v(index) { + index = index|0; + + FUNCTION_TABLE_v[index&0](); + } + + + function dynCall_iiiii(index,a1,a2,a3,a4) { + index = index|0; + a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; + return FUNCTION_TABLE_iiiii[index&31](a1|0,a2|0,a3|0,a4|0)|0; + } + + + function dynCall_viiiiii(index,a1,a2,a3,a4,a5,a6) { + index = index|0; + a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=a5|0; a6=a6|0; + FUNCTION_TABLE_viiiiii[index&0](a1|0,a2|0,a3|0,a4|0,a5|0,a6|0); + } + + + function dynCall_iii(index,a1,a2) { + index = index|0; + a1=a1|0; a2=a2|0; + return FUNCTION_TABLE_iii[index&127](a1|0,a2|0)|0; + } + + + function dynCall_iiiiii(index,a1,a2,a3,a4,a5) { + index = index|0; + a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=a5|0; + return FUNCTION_TABLE_iiiiii[index&15](a1|0,a2|0,a3|0,a4|0,a5|0)|0; + } + + + function dynCall_viiii(index,a1,a2,a3,a4) { + index = index|0; + a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; + FUNCTION_TABLE_viiii[index&3](a1|0,a2|0,a3|0,a4|0); + } + +function b0(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(0);return 0; } + function _fcntl__wrapper(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; return _fcntl(p0|0,p1|0,p2|0)|0; } + function _read__wrapper(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; return _read(p0|0,p1|0,p2|0)|0; } + function _write__wrapper(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; return _write(p0|0,p1|0,p2|0)|0; } + function b1() { ; nullFunc_i(1);return 0; } + function b2(p0) { p0 = p0|0; nullFunc_vi(2); } + function b3(p0,p1) { p0 = p0|0;p1 = p1|0; nullFunc_vii(3); } + function b4(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_iiiiiii(4);return 0; } + function _mmap__wrapper(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; return _mmap(p0|0,p1|0,p2|0,p3|0,p4|0,p5|0)|0; } + function b5(p0) { p0 = p0|0; nullFunc_ii(5);return 0; } + function _close__wrapper(p0) { p0 = p0|0; return _close(p0|0)|0; } + function _unlink__wrapper(p0) { p0 = p0|0; return _unlink(p0|0)|0; } + function _rmdir__wrapper(p0) { p0 = p0|0; return _rmdir(p0|0)|0; } + function b6(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_viii(6); } + function b7() { ; nullFunc_v(7); } + function b8(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_iiiii(8);return 0; } + function b9(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(9); } + function b10(p0,p1) { p0 = p0|0;p1 = p1|0; nullFunc_iii(10);return 0; } + function _access__wrapper(p0,p1) { p0 = p0|0;p1 = p1|0; return _access(p0|0,p1|0)|0; } + function _getcwd__wrapper(p0,p1) { p0 = p0|0;p1 = p1|0; return _getcwd(p0|0,p1|0)|0; } + function _stat__wrapper(p0,p1) { p0 = p0|0;p1 = p1|0; return _stat(p0|0,p1|0)|0; } + function _fstat__wrapper(p0,p1) { p0 = p0|0;p1 = p1|0; return _fstat(p0|0,p1|0)|0; } + function _ftruncate__wrapper(p0,p1) { p0 = p0|0;p1 = p1|0; return _ftruncate(p0|0,p1|0)|0; } + function _fchmod__wrapper(p0,p1) { p0 = p0|0;p1 = p1|0; return _fchmod(p0|0,p1|0)|0; } + function _mkdir__wrapper(p0,p1) { p0 = p0|0;p1 = p1|0; return _mkdir(p0|0,p1|0)|0; } + function _munmap__wrapper(p0,p1) { p0 = p0|0;p1 = p1|0; return _munmap(p0|0,p1|0)|0; } + function b11(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_iiiiii(11);return 0; } + function b12(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(12); } + // EMSCRIPTEN_END_FUNCS + var FUNCTION_TABLE_iiii = [b0,_characterCreate,_unixDelete,_unixRandomness,_unixGetLastError,_unixSetSystemCall,_fts3ColumnMethod,_fts3tokColumnMethod,_porterCreate,_simpleCreate,_fts3auxColumnMethod,_memjrnlTruncate,_pcache1Create,_pcache1Fetch,_unixTruncate,_unixFileControl,_posixOpen,_fcntl__wrapper,_read__wrapper,_write__wrapper,_posixFchown,_fts3ExprPhraseCountCb,_fts3ExprGlobalHitsCb,_fts3ExprLocalHitsCb,_fts3ExprLoadDoclistsCb,_fts3MatchinfoLcsCb,_fts3ExprTermOffsetInit,_fts3SnippetFindPositions,b0 + ,b0,b0,b0]; + var FUNCTION_TABLE_i = [b1,_unixGetpagesize]; + var FUNCTION_TABLE_vi = [b2,_pcache1Shutdown,_pcache1Destroy,_pcache1Shrink,_sqlite3MemFree,_sqlite3MemShutdown,_minMaxFinalize,_sumFinalize,_totalFinalize,_avgFinalize,_countFinalize,_groupConcatFinalize,_unixShmBarrier,_sqlite3_free,_pageReinit,_sqlite3SchemaClear,_hashDestroy,_stat4Destructor,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2,b2 + ,b2,b2,b2]; + var FUNCTION_TABLE_vii = [b3,_pcache1Cachesize,_pcache1Truncate,_selectPopWith,_selectAddSubqueryTypeInfo,b3,b3,b3]; + var FUNCTION_TABLE_iiiiiii = [b4,_characterNext,_fts3CreateMethod,_fts3ConnectMethod,_fts3tokConnectMethod,_porterNext,_simpleNext,_fts3auxConnectMethod,_mmap__wrapper,b4,b4,b4,b4,b4,b4,b4]; + var FUNCTION_TABLE_ii = [b5,_characterDestroy,_characterClose,_fts3DisconnectMethod,_fts3DestroyMethod,_fts3CloseMethod,_fts3NextMethod,_fts3EofMethod,_fts3BeginMethod,_fts3SyncMethod,_fts3CommitMethod,_fts3RollbackMethod,_fts3tokDisconnectMethod,_fts3tokCloseMethod,_fts3tokNextMethod,_fts3tokEofMethod,_porterDestroy,_porterClose,_simpleDestroy,_simpleClose,_fts3auxDisconnectMethod,_fts3auxCloseMethod,_fts3auxNextMethod,_fts3auxEofMethod,_memjrnlClose,_pcache1Init,_pcache1Pagecount,_sqlite3MemMalloc,_sqlite3MemSize + ,_sqlite3MemRoundup,_sqlite3MemInit,_dotlockClose,_unixSectorSize,_unixDeviceCharacteristics,_close__wrapper,_unlink__wrapper,_rmdir__wrapper,_nolockClose,_unixClose,_sqlite3MallocSize,_sqlite3_value_text,_sqlite3Malloc,_btreeInvokeBusyHandler,_m_gt_0,_hasVowel,_m_gt_1,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5 + ,b5,b5,b5,b5,b5]; + var FUNCTION_TABLE_viii = [b6,_fts3SnippetFunc,_fts3OffsetsFunc,_fts3OptimizeFunc,_fts3MatchinfoFunc,_pcache1Unpin,_trimFunc,_minmaxFunc,_minmaxStep,_typeofFunc,_lengthFunc,_instrFunc,_substrFunc,_printfFunc,_unicodeFunc,_charFunc,_absFunc,_roundFunc,_upperFunc,_lowerFunc,_versionFunc,_hexFunc,_randomFunc,_randomBlob,_nullifFunc,_sourceidFunc,_errlogFunc,_compileoptionusedFunc,_compileoptiongetFunc + ,_quoteFunc,_last_insert_rowid,_changes,_total_changes,_replaceFunc,_zeroblobFunc,_sumStep,_countStep,_groupConcatStep,_likeFunc,_renameTableFunc,_renameTriggerFunc,_renameParentFunc,_juliandayFunc,_dateFunc,_timeFunc,_datetimeFunc,_strftimeFunc,_ctimeFunc,_ctimestampFunc,_cdateFunc,_statInit,_statPush,_statGet,_detachFunc,_attachFunc,_sqlite3InvalidFunction,_scalarFunc,b6,b6 + ,b6,b6,b6,b6,b6]; + var FUNCTION_TABLE_v = [b7]; + var FUNCTION_TABLE_iiiii = [b8,_characterOpen,_unixAccess,_unixFullPathname,_fts3UpdateMethod,_porterOpen,_simpleOpen,_unixShmLock,_unixUnfetch,_sqlite3BtreeData,_sqlite3WalDefaultHook,_fts3StrCompare,_fts3BinCompare,_sqlite3InitCallback,_analysisLoader,_vdbeRecordCompareInt,_vdbeRecordCompareString,_sqlite3VdbeRecordCompare,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8 + ,b8,b8,b8]; + var FUNCTION_TABLE_viiiiii = [b9]; + var FUNCTION_TABLE_iii = [b10,_unixSleep,_unixCurrentTime,_unixCurrentTimeInt64,_unixGetSystemCall,_unixNextSystemCall,_posixIoFinderImpl,_nolockIoFinderImpl,_dotlockIoFinderImpl,_fts3BestIndexMethod,_fts3OpenMethod,_fts3RowidMethod,_fts3RenameMethod,_fts3SavepointMethod,_fts3ReleaseMethod,_fts3RollbackToMethod,_fts3tokBestIndexMethod,_fts3tokOpenMethod,_fts3tokRowidMethod,_fts3auxBestIndexMethod,_fts3auxOpenMethod,_fts3auxRowidMethod,_memjrnlSync,_memjrnlFileSize,_sqlite3MemRealloc,_unixSync,_unixFileSize,_dotlockLock,_dotlockUnlock + ,_dotlockCheckReservedLock,_unixShmUnmap,_access__wrapper,_getcwd__wrapper,_stat__wrapper,_fstat__wrapper,_ftruncate__wrapper,_fchmod__wrapper,_openDirectory,_mkdir__wrapper,_munmap__wrapper,_nolockLock,_nolockUnlock,_nolockCheckReservedLock,_unixLock,_unixUnlock,_unixCheckReservedLock,_sqliteDefaultBusyCallback,_fts3StrHash,_fts3BinHash,_fts3SegReaderDoclistCmpRev,_fts3SegReaderDoclistCmp,_fts3SegReaderCmp,_fts3CompareElemByTerm,_pagerStress,_pagerUndoCallback,_exprWalkNoop,_convertCompoundSelectToSubquery,_selectExpander,_resolveExprStep + ,_resolveSelectStep,_incrAggDepth,_exprSrcCount,_exprNodeIsConstant,_selectNodeIsConstant,_sqlite3BtreeNext,_sqlite3BtreePrevious,_analyzeAggregate,_analyzeAggregatesInSelect,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10 + ,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10,b10 + ,b10,b10,b10,b10,b10,b10,b10,b10,b10]; + var FUNCTION_TABLE_iiiiii = [b11,_unixOpen,_fts3FilterMethod,_fts3FindFunctionMethod,_fts3tokFilterMethod,_fts3auxFilterMethod,_memjrnlRead,_memjrnlWrite,_unixRead,_unixWrite,_unixShmMap,_unixFetch,_binCollFunc,_nocaseCollatingFunc,b11,b11]; + var FUNCTION_TABLE_viiii = [b12,_pcache1Rekey,_softHeapLimitEnforcer,b12]; + + return { _strlen: _strlen, _sqlite3_column_name: _sqlite3_column_name, _sqlite3_reset: _sqlite3_reset, _sqlite3_column_type: _sqlite3_column_type, _sqlite3_exec: _sqlite3_exec, _sqlite3_step: _sqlite3_step, _bitshift64Lshr: _bitshift64Lshr, _sqlite3_prepare_v2: _sqlite3_prepare_v2, _sqlite3_close_v2: _sqlite3_close_v2, _sqlite3_open: _sqlite3_open, _bitshift64Shl: _bitshift64Shl, _sqlite3_column_bytes: _sqlite3_column_bytes, _sqlite3_bind_int: _sqlite3_bind_int, _sqlite3_bind_blob: _sqlite3_bind_blob, _memset: _memset, _memcpy: _memcpy, _sqlite3_column_blob: _sqlite3_column_blob, _sqlite3_bind_parameter_index: _sqlite3_bind_parameter_index, _i64Subtract: _i64Subtract, _sqlite3_column_text: _sqlite3_column_text, _realloc: _realloc, _i64Add: _i64Add, _sqlite3_data_count: _sqlite3_data_count, _sqlite3_column_double: _sqlite3_column_double, _sqlite3_errmsg: _sqlite3_errmsg, _sqlite3_finalize: _sqlite3_finalize, _sqlite3_bind_text: _sqlite3_bind_text, _sqlite3_bind_double: _sqlite3_bind_double, _free: _free, _memmove: _memmove, _register_character_tokenizer: _register_character_tokenizer, _sqlite3_free: _sqlite3_free, _sqlite3_clear_bindings: _sqlite3_clear_bindings, _malloc: _malloc, runPostSets: runPostSets, stackAlloc: stackAlloc, stackSave: stackSave, stackRestore: stackRestore, setThrew: setThrew, setTempRet0: setTempRet0, getTempRet0: getTempRet0, dynCall_iiii: dynCall_iiii, dynCall_i: dynCall_i, dynCall_vi: dynCall_vi, dynCall_vii: dynCall_vii, dynCall_iiiiiii: dynCall_iiiiiii, dynCall_ii: dynCall_ii, dynCall_viii: dynCall_viii, dynCall_v: dynCall_v, dynCall_iiiii: dynCall_iiiii, dynCall_viiiiii: dynCall_viiiiii, dynCall_iii: dynCall_iii, dynCall_iiiiii: dynCall_iiiiii, dynCall_viiii: dynCall_viiii }; + }) + // EMSCRIPTEN_END_ASM + ({ "Math": Math, "Int8Array": Int8Array, "Int16Array": Int16Array, "Int32Array": Int32Array, "Uint8Array": Uint8Array, "Uint16Array": Uint16Array, "Uint32Array": Uint32Array, "Float32Array": Float32Array, "Float64Array": Float64Array }, { "abort": abort, "assert": assert, "asmPrintInt": asmPrintInt, "asmPrintFloat": asmPrintFloat, "min": Math_min, "nullFunc_iiii": nullFunc_iiii, "nullFunc_i": nullFunc_i, "nullFunc_vi": nullFunc_vi, "nullFunc_vii": nullFunc_vii, "nullFunc_iiiiiii": nullFunc_iiiiiii, "nullFunc_ii": nullFunc_ii, "nullFunc_viii": nullFunc_viii, "nullFunc_v": nullFunc_v, "nullFunc_iiiii": nullFunc_iiiii, "nullFunc_viiiiii": nullFunc_viiiiii, "nullFunc_iii": nullFunc_iii, "nullFunc_iiiiii": nullFunc_iiiiii, "nullFunc_viiii": nullFunc_viiii, "invoke_iiii": invoke_iiii, "invoke_i": invoke_i, "invoke_vi": invoke_vi, "invoke_vii": invoke_vii, "invoke_iiiiiii": invoke_iiiiiii, "invoke_ii": invoke_ii, "invoke_viii": invoke_viii, "invoke_v": invoke_v, "invoke_iiiii": invoke_iiiii, "invoke_viiiiii": invoke_viiiiii, "invoke_iii": invoke_iii, "invoke_iiiiii": invoke_iiiiii, "invoke_viiii": invoke_viiii, "_getgid": _getgid, "_sleep": _sleep, "_send": _send, "_getcwd": _getcwd, "_chown": _chown, "_lseek": _lseek, "___setErrNo": ___setErrNo, "_access": _access, "_fstat": _fstat, "_chmod": _chmod, "_rmdir": _rmdir, "_truncate": _truncate, "_usleep": _usleep, "_utimes": _utimes, "___buildEnvironment": ___buildEnvironment, "_fflush": _fflush, "_pwrite": _pwrite, "_strerror_r": _strerror_r, "_localtime_r": _localtime_r, "_tzset": _tzset, "_open": _open, "_getpid": _getpid, "_sbrk": _sbrk, "_fcntl": _fcntl, "_emscripten_memcpy_big": _emscripten_memcpy_big, "_unlink": _unlink, "_sysconf": _sysconf, "_fchmod": _fchmod, "_close": _close, "_ftruncate": _ftruncate, "_gettimeofday": _gettimeofday, "_munmap": _munmap, "_pread": _pread, "_getenv": _getenv, "_write": _write, "_fsync": _fsync, "___errno_location": ___errno_location, "_stat": _stat, "_recv": _recv, "_geteuid": _geteuid, "_fchown": _fchown, "_read": _read, "_abort": _abort, "_time": _time, "_mkport": _mkport, "_strerror": _strerror, "_mknod": _mknod, "_mkdir": _mkdir, "_mmap": _mmap, "_localtime": _localtime, "STACKTOP": STACKTOP, "STACK_MAX": STACK_MAX, "tempDoublePtr": tempDoublePtr, "ABORT": ABORT, "cttz_i8": cttz_i8, "ctlz_i8": ctlz_i8, "NaN": NaN, "Infinity": Infinity }, buffer); + var _strlen = Module["_strlen"] = asm["_strlen"]; +var _sqlite3_column_name = Module["_sqlite3_column_name"] = asm["_sqlite3_column_name"]; +var _sqlite3_reset = Module["_sqlite3_reset"] = asm["_sqlite3_reset"]; +var _sqlite3_column_type = Module["_sqlite3_column_type"] = asm["_sqlite3_column_type"]; +var _sqlite3_exec = Module["_sqlite3_exec"] = asm["_sqlite3_exec"]; +var _sqlite3_step = Module["_sqlite3_step"] = asm["_sqlite3_step"]; +var _bitshift64Lshr = Module["_bitshift64Lshr"] = asm["_bitshift64Lshr"]; +var _sqlite3_prepare_v2 = Module["_sqlite3_prepare_v2"] = asm["_sqlite3_prepare_v2"]; +var _sqlite3_close_v2 = Module["_sqlite3_close_v2"] = asm["_sqlite3_close_v2"]; +var _sqlite3_open = Module["_sqlite3_open"] = asm["_sqlite3_open"]; +var _bitshift64Shl = Module["_bitshift64Shl"] = asm["_bitshift64Shl"]; +var _sqlite3_column_bytes = Module["_sqlite3_column_bytes"] = asm["_sqlite3_column_bytes"]; +var _sqlite3_bind_int = Module["_sqlite3_bind_int"] = asm["_sqlite3_bind_int"]; +var _sqlite3_bind_blob = Module["_sqlite3_bind_blob"] = asm["_sqlite3_bind_blob"]; +var _memset = Module["_memset"] = asm["_memset"]; +var _memcpy = Module["_memcpy"] = asm["_memcpy"]; +var _sqlite3_column_blob = Module["_sqlite3_column_blob"] = asm["_sqlite3_column_blob"]; +var _sqlite3_bind_parameter_index = Module["_sqlite3_bind_parameter_index"] = asm["_sqlite3_bind_parameter_index"]; +var _i64Subtract = Module["_i64Subtract"] = asm["_i64Subtract"]; +var _sqlite3_column_text = Module["_sqlite3_column_text"] = asm["_sqlite3_column_text"]; +var _realloc = Module["_realloc"] = asm["_realloc"]; +var _i64Add = Module["_i64Add"] = asm["_i64Add"]; +var _sqlite3_data_count = Module["_sqlite3_data_count"] = asm["_sqlite3_data_count"]; +var _sqlite3_column_double = Module["_sqlite3_column_double"] = asm["_sqlite3_column_double"]; +var _sqlite3_errmsg = Module["_sqlite3_errmsg"] = asm["_sqlite3_errmsg"]; +var _sqlite3_finalize = Module["_sqlite3_finalize"] = asm["_sqlite3_finalize"]; +var _sqlite3_bind_text = Module["_sqlite3_bind_text"] = asm["_sqlite3_bind_text"]; +var _sqlite3_bind_double = Module["_sqlite3_bind_double"] = asm["_sqlite3_bind_double"]; +var _free = Module["_free"] = asm["_free"]; +var _memmove = Module["_memmove"] = asm["_memmove"]; +var _register_character_tokenizer = Module["_register_character_tokenizer"] = asm["_register_character_tokenizer"]; +var _sqlite3_free = Module["_sqlite3_free"] = asm["_sqlite3_free"]; +var _sqlite3_clear_bindings = Module["_sqlite3_clear_bindings"] = asm["_sqlite3_clear_bindings"]; +var _malloc = Module["_malloc"] = asm["_malloc"]; +var runPostSets = Module["runPostSets"] = asm["runPostSets"]; +var dynCall_iiii = Module["dynCall_iiii"] = asm["dynCall_iiii"]; +var dynCall_i = Module["dynCall_i"] = asm["dynCall_i"]; +var dynCall_vi = Module["dynCall_vi"] = asm["dynCall_vi"]; +var dynCall_vii = Module["dynCall_vii"] = asm["dynCall_vii"]; +var dynCall_iiiiiii = Module["dynCall_iiiiiii"] = asm["dynCall_iiiiiii"]; +var dynCall_ii = Module["dynCall_ii"] = asm["dynCall_ii"]; +var dynCall_viii = Module["dynCall_viii"] = asm["dynCall_viii"]; +var dynCall_v = Module["dynCall_v"] = asm["dynCall_v"]; +var dynCall_iiiii = Module["dynCall_iiiii"] = asm["dynCall_iiiii"]; +var dynCall_viiiiii = Module["dynCall_viiiiii"] = asm["dynCall_viiiiii"]; +var dynCall_iii = Module["dynCall_iii"] = asm["dynCall_iii"]; +var dynCall_iiiiii = Module["dynCall_iiiiii"] = asm["dynCall_iiiiii"]; +var dynCall_viiii = Module["dynCall_viiii"] = asm["dynCall_viiii"]; + + Runtime.stackAlloc = asm['stackAlloc']; + Runtime.stackSave = asm['stackSave']; + Runtime.stackRestore = asm['stackRestore']; + Runtime.setTempRet0 = asm['setTempRet0']; + Runtime.getTempRet0 = asm['getTempRet0']; + + +// TODO: strip out parts of this we do not need + +//======= begin closure i64 code ======= + +// Copyright 2009 The Closure Library Authors. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS-IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/** + * @fileoverview Defines a Long class for representing a 64-bit two's-complement + * integer value, which faithfully simulates the behavior of a Java "long". This + * implementation is derived from LongLib in GWT. + * + */ + +var i64Math = (function() { // Emscripten wrapper + var goog = { math: {} }; + + + /** + * Constructs a 64-bit two's-complement integer, given its low and high 32-bit + * values as *signed* integers. See the from* functions below for more + * convenient ways of constructing Longs. + * + * The internal representation of a long is the two given signed, 32-bit values. + * We use 32-bit pieces because these are the size of integers on which + * Javascript performs bit-operations. For operations like addition and + * multiplication, we split each number into 16-bit pieces, which can easily be + * multiplied within Javascript's floating-point representation without overflow + * or change in sign. + * + * In the algorithms below, we frequently reduce the negative case to the + * positive case by negating the input(s) and then post-processing the result. + * Note that we must ALWAYS check specially whether those values are MIN_VALUE + * (-2^63) because -MIN_VALUE == MIN_VALUE (since 2^63 cannot be represented as + * a positive number, it overflows back into a negative). Not handling this + * case would often result in infinite recursion. + * + * @param {number} low The low (signed) 32 bits of the long. + * @param {number} high The high (signed) 32 bits of the long. + * @constructor + */ + goog.math.Long = function(low, high) { + /** + * @type {number} + * @private + */ + this.low_ = low | 0; // force into 32 signed bits. + + /** + * @type {number} + * @private + */ + this.high_ = high | 0; // force into 32 signed bits. + }; + + + // NOTE: Common constant values ZERO, ONE, NEG_ONE, etc. are defined below the + // from* methods on which they depend. + + + /** + * A cache of the Long representations of small integer values. + * @type {!Object} + * @private + */ + goog.math.Long.IntCache_ = {}; + + + /** + * Returns a Long representing the given (32-bit) integer value. + * @param {number} value The 32-bit integer in question. + * @return {!goog.math.Long} The corresponding Long value. + */ + goog.math.Long.fromInt = function(value) { + if (-128 <= value && value < 128) { + var cachedObj = goog.math.Long.IntCache_[value]; + if (cachedObj) { + return cachedObj; + } + } + + var obj = new goog.math.Long(value | 0, value < 0 ? -1 : 0); + if (-128 <= value && value < 128) { + goog.math.Long.IntCache_[value] = obj; + } + return obj; + }; + + + /** + * Returns a Long representing the given value, provided that it is a finite + * number. Otherwise, zero is returned. + * @param {number} value The number in question. + * @return {!goog.math.Long} The corresponding Long value. + */ + goog.math.Long.fromNumber = function(value) { + if (isNaN(value) || !isFinite(value)) { + return goog.math.Long.ZERO; + } else if (value <= -goog.math.Long.TWO_PWR_63_DBL_) { + return goog.math.Long.MIN_VALUE; + } else if (value + 1 >= goog.math.Long.TWO_PWR_63_DBL_) { + return goog.math.Long.MAX_VALUE; + } else if (value < 0) { + return goog.math.Long.fromNumber(-value).negate(); + } else { + return new goog.math.Long( + (value % goog.math.Long.TWO_PWR_32_DBL_) | 0, + (value / goog.math.Long.TWO_PWR_32_DBL_) | 0); + } + }; + + + /** + * Returns a Long representing the 64-bit integer that comes by concatenating + * the given high and low bits. Each is assumed to use 32 bits. + * @param {number} lowBits The low 32-bits. + * @param {number} highBits The high 32-bits. + * @return {!goog.math.Long} The corresponding Long value. + */ + goog.math.Long.fromBits = function(lowBits, highBits) { + return new goog.math.Long(lowBits, highBits); + }; + + + /** + * Returns a Long representation of the given string, written using the given + * radix. + * @param {string} str The textual representation of the Long. + * @param {number=} opt_radix The radix in which the text is written. + * @return {!goog.math.Long} The corresponding Long value. + */ + goog.math.Long.fromString = function(str, opt_radix) { + if (str.length == 0) { + throw Error('number format error: empty string'); + } + + var radix = opt_radix || 10; + if (radix < 2 || 36 < radix) { + throw Error('radix out of range: ' + radix); + } + + if (str.charAt(0) == '-') { + return goog.math.Long.fromString(str.substring(1), radix).negate(); + } else if (str.indexOf('-') >= 0) { + throw Error('number format error: interior "-" character: ' + str); + } + + // Do several (8) digits each time through the loop, so as to + // minimize the calls to the very expensive emulated div. + var radixToPower = goog.math.Long.fromNumber(Math.pow(radix, 8)); + + var result = goog.math.Long.ZERO; + for (var i = 0; i < str.length; i += 8) { + var size = Math.min(8, str.length - i); + var value = parseInt(str.substring(i, i + size), radix); + if (size < 8) { + var power = goog.math.Long.fromNumber(Math.pow(radix, size)); + result = result.multiply(power).add(goog.math.Long.fromNumber(value)); + } else { + result = result.multiply(radixToPower); + result = result.add(goog.math.Long.fromNumber(value)); + } + } + return result; + }; + + + // NOTE: the compiler should inline these constant values below and then remove + // these variables, so there should be no runtime penalty for these. + + + /** + * Number used repeated below in calculations. This must appear before the + * first call to any from* function below. + * @type {number} + * @private + */ + goog.math.Long.TWO_PWR_16_DBL_ = 1 << 16; + + + /** + * @type {number} + * @private + */ + goog.math.Long.TWO_PWR_24_DBL_ = 1 << 24; + + + /** + * @type {number} + * @private + */ + goog.math.Long.TWO_PWR_32_DBL_ = + goog.math.Long.TWO_PWR_16_DBL_ * goog.math.Long.TWO_PWR_16_DBL_; + + + /** + * @type {number} + * @private + */ + goog.math.Long.TWO_PWR_31_DBL_ = + goog.math.Long.TWO_PWR_32_DBL_ / 2; + + + /** + * @type {number} + * @private + */ + goog.math.Long.TWO_PWR_48_DBL_ = + goog.math.Long.TWO_PWR_32_DBL_ * goog.math.Long.TWO_PWR_16_DBL_; + + + /** + * @type {number} + * @private + */ + goog.math.Long.TWO_PWR_64_DBL_ = + goog.math.Long.TWO_PWR_32_DBL_ * goog.math.Long.TWO_PWR_32_DBL_; + + + /** + * @type {number} + * @private + */ + goog.math.Long.TWO_PWR_63_DBL_ = + goog.math.Long.TWO_PWR_64_DBL_ / 2; + + + /** @type {!goog.math.Long} */ + goog.math.Long.ZERO = goog.math.Long.fromInt(0); + + + /** @type {!goog.math.Long} */ + goog.math.Long.ONE = goog.math.Long.fromInt(1); + + + /** @type {!goog.math.Long} */ + goog.math.Long.NEG_ONE = goog.math.Long.fromInt(-1); + + + /** @type {!goog.math.Long} */ + goog.math.Long.MAX_VALUE = + goog.math.Long.fromBits(0xFFFFFFFF | 0, 0x7FFFFFFF | 0); + + + /** @type {!goog.math.Long} */ + goog.math.Long.MIN_VALUE = goog.math.Long.fromBits(0, 0x80000000 | 0); + + + /** + * @type {!goog.math.Long} + * @private + */ + goog.math.Long.TWO_PWR_24_ = goog.math.Long.fromInt(1 << 24); + + + /** @return {number} The value, assuming it is a 32-bit integer. */ + goog.math.Long.prototype.toInt = function() { + return this.low_; + }; + + + /** @return {number} The closest floating-point representation to this value. */ + goog.math.Long.prototype.toNumber = function() { + return this.high_ * goog.math.Long.TWO_PWR_32_DBL_ + + this.getLowBitsUnsigned(); + }; + + + /** + * @param {number=} opt_radix The radix in which the text should be written. + * @return {string} The textual representation of this value. + */ + goog.math.Long.prototype.toString = function(opt_radix) { + var radix = opt_radix || 10; + if (radix < 2 || 36 < radix) { + throw Error('radix out of range: ' + radix); + } + + if (this.isZero()) { + return '0'; + } + + if (this.isNegative()) { + if (this.equals(goog.math.Long.MIN_VALUE)) { + // We need to change the Long value before it can be negated, so we remove + // the bottom-most digit in this base and then recurse to do the rest. + var radixLong = goog.math.Long.fromNumber(radix); + var div = this.div(radixLong); + var rem = div.multiply(radixLong).subtract(this); + return div.toString(radix) + rem.toInt().toString(radix); + } else { + return '-' + this.negate().toString(radix); + } + } + + // Do several (6) digits each time through the loop, so as to + // minimize the calls to the very expensive emulated div. + var radixToPower = goog.math.Long.fromNumber(Math.pow(radix, 6)); + + var rem = this; + var result = ''; + while (true) { + var remDiv = rem.div(radixToPower); + var intval = rem.subtract(remDiv.multiply(radixToPower)).toInt(); + var digits = intval.toString(radix); + + rem = remDiv; + if (rem.isZero()) { + return digits + result; + } else { + while (digits.length < 6) { + digits = '0' + digits; + } + result = '' + digits + result; + } + } + }; + + + /** @return {number} The high 32-bits as a signed value. */ + goog.math.Long.prototype.getHighBits = function() { + return this.high_; + }; + + + /** @return {number} The low 32-bits as a signed value. */ + goog.math.Long.prototype.getLowBits = function() { + return this.low_; + }; + + + /** @return {number} The low 32-bits as an unsigned value. */ + goog.math.Long.prototype.getLowBitsUnsigned = function() { + return (this.low_ >= 0) ? + this.low_ : goog.math.Long.TWO_PWR_32_DBL_ + this.low_; + }; + + + /** + * @return {number} Returns the number of bits needed to represent the absolute + * value of this Long. + */ + goog.math.Long.prototype.getNumBitsAbs = function() { + if (this.isNegative()) { + if (this.equals(goog.math.Long.MIN_VALUE)) { + return 64; + } else { + return this.negate().getNumBitsAbs(); + } + } else { + var val = this.high_ != 0 ? this.high_ : this.low_; + for (var bit = 31; bit > 0; bit--) { + if ((val & (1 << bit)) != 0) { + break; + } + } + return this.high_ != 0 ? bit + 33 : bit + 1; + } + }; + + + /** @return {boolean} Whether this value is zero. */ + goog.math.Long.prototype.isZero = function() { + return this.high_ == 0 && this.low_ == 0; + }; + + + /** @return {boolean} Whether this value is negative. */ + goog.math.Long.prototype.isNegative = function() { + return this.high_ < 0; + }; + + + /** @return {boolean} Whether this value is odd. */ + goog.math.Long.prototype.isOdd = function() { + return (this.low_ & 1) == 1; + }; + + + /** + * @param {goog.math.Long} other Long to compare against. + * @return {boolean} Whether this Long equals the other. + */ + goog.math.Long.prototype.equals = function(other) { + return (this.high_ == other.high_) && (this.low_ == other.low_); + }; + + + /** + * @param {goog.math.Long} other Long to compare against. + * @return {boolean} Whether this Long does not equal the other. + */ + goog.math.Long.prototype.notEquals = function(other) { + return (this.high_ != other.high_) || (this.low_ != other.low_); + }; + + + /** + * @param {goog.math.Long} other Long to compare against. + * @return {boolean} Whether this Long is less than the other. + */ + goog.math.Long.prototype.lessThan = function(other) { + return this.compare(other) < 0; + }; + + + /** + * @param {goog.math.Long} other Long to compare against. + * @return {boolean} Whether this Long is less than or equal to the other. + */ + goog.math.Long.prototype.lessThanOrEqual = function(other) { + return this.compare(other) <= 0; + }; + + + /** + * @param {goog.math.Long} other Long to compare against. + * @return {boolean} Whether this Long is greater than the other. + */ + goog.math.Long.prototype.greaterThan = function(other) { + return this.compare(other) > 0; + }; + + + /** + * @param {goog.math.Long} other Long to compare against. + * @return {boolean} Whether this Long is greater than or equal to the other. + */ + goog.math.Long.prototype.greaterThanOrEqual = function(other) { + return this.compare(other) >= 0; + }; + + + /** + * Compares this Long with the given one. + * @param {goog.math.Long} other Long to compare against. + * @return {number} 0 if they are the same, 1 if the this is greater, and -1 + * if the given one is greater. + */ + goog.math.Long.prototype.compare = function(other) { + if (this.equals(other)) { + return 0; + } + + var thisNeg = this.isNegative(); + var otherNeg = other.isNegative(); + if (thisNeg && !otherNeg) { + return -1; + } + if (!thisNeg && otherNeg) { + return 1; + } + + // at this point, the signs are the same, so subtraction will not overflow + if (this.subtract(other).isNegative()) { + return -1; + } else { + return 1; + } + }; + + + /** @return {!goog.math.Long} The negation of this value. */ + goog.math.Long.prototype.negate = function() { + if (this.equals(goog.math.Long.MIN_VALUE)) { + return goog.math.Long.MIN_VALUE; + } else { + return this.not().add(goog.math.Long.ONE); + } + }; + + + /** + * Returns the sum of this and the given Long. + * @param {goog.math.Long} other Long to add to this one. + * @return {!goog.math.Long} The sum of this and the given Long. + */ + goog.math.Long.prototype.add = function(other) { + // Divide each number into 4 chunks of 16 bits, and then sum the chunks. + + var a48 = this.high_ >>> 16; + var a32 = this.high_ & 0xFFFF; + var a16 = this.low_ >>> 16; + var a00 = this.low_ & 0xFFFF; + + var b48 = other.high_ >>> 16; + var b32 = other.high_ & 0xFFFF; + var b16 = other.low_ >>> 16; + var b00 = other.low_ & 0xFFFF; + + var c48 = 0, c32 = 0, c16 = 0, c00 = 0; + c00 += a00 + b00; + c16 += c00 >>> 16; + c00 &= 0xFFFF; + c16 += a16 + b16; + c32 += c16 >>> 16; + c16 &= 0xFFFF; + c32 += a32 + b32; + c48 += c32 >>> 16; + c32 &= 0xFFFF; + c48 += a48 + b48; + c48 &= 0xFFFF; + return goog.math.Long.fromBits((c16 << 16) | c00, (c48 << 16) | c32); + }; + + + /** + * Returns the difference of this and the given Long. + * @param {goog.math.Long} other Long to subtract from this. + * @return {!goog.math.Long} The difference of this and the given Long. + */ + goog.math.Long.prototype.subtract = function(other) { + return this.add(other.negate()); + }; + + + /** + * Returns the product of this and the given long. + * @param {goog.math.Long} other Long to multiply with this. + * @return {!goog.math.Long} The product of this and the other. + */ + goog.math.Long.prototype.multiply = function(other) { + if (this.isZero()) { + return goog.math.Long.ZERO; + } else if (other.isZero()) { + return goog.math.Long.ZERO; + } + + if (this.equals(goog.math.Long.MIN_VALUE)) { + return other.isOdd() ? goog.math.Long.MIN_VALUE : goog.math.Long.ZERO; + } else if (other.equals(goog.math.Long.MIN_VALUE)) { + return this.isOdd() ? goog.math.Long.MIN_VALUE : goog.math.Long.ZERO; + } + + if (this.isNegative()) { + if (other.isNegative()) { + return this.negate().multiply(other.negate()); + } else { + return this.negate().multiply(other).negate(); + } + } else if (other.isNegative()) { + return this.multiply(other.negate()).negate(); + } + + // If both longs are small, use float multiplication + if (this.lessThan(goog.math.Long.TWO_PWR_24_) && + other.lessThan(goog.math.Long.TWO_PWR_24_)) { + return goog.math.Long.fromNumber(this.toNumber() * other.toNumber()); + } + + // Divide each long into 4 chunks of 16 bits, and then add up 4x4 products. + // We can skip products that would overflow. + + var a48 = this.high_ >>> 16; + var a32 = this.high_ & 0xFFFF; + var a16 = this.low_ >>> 16; + var a00 = this.low_ & 0xFFFF; + + var b48 = other.high_ >>> 16; + var b32 = other.high_ & 0xFFFF; + var b16 = other.low_ >>> 16; + var b00 = other.low_ & 0xFFFF; + + var c48 = 0, c32 = 0, c16 = 0, c00 = 0; + c00 += a00 * b00; + c16 += c00 >>> 16; + c00 &= 0xFFFF; + c16 += a16 * b00; + c32 += c16 >>> 16; + c16 &= 0xFFFF; + c16 += a00 * b16; + c32 += c16 >>> 16; + c16 &= 0xFFFF; + c32 += a32 * b00; + c48 += c32 >>> 16; + c32 &= 0xFFFF; + c32 += a16 * b16; + c48 += c32 >>> 16; + c32 &= 0xFFFF; + c32 += a00 * b32; + c48 += c32 >>> 16; + c32 &= 0xFFFF; + c48 += a48 * b00 + a32 * b16 + a16 * b32 + a00 * b48; + c48 &= 0xFFFF; + return goog.math.Long.fromBits((c16 << 16) | c00, (c48 << 16) | c32); + }; + + + /** + * Returns this Long divided by the given one. + * @param {goog.math.Long} other Long by which to divide. + * @return {!goog.math.Long} This Long divided by the given one. + */ + goog.math.Long.prototype.div = function(other) { + if (other.isZero()) { + throw Error('division by zero'); + } else if (this.isZero()) { + return goog.math.Long.ZERO; + } + + if (this.equals(goog.math.Long.MIN_VALUE)) { + if (other.equals(goog.math.Long.ONE) || + other.equals(goog.math.Long.NEG_ONE)) { + return goog.math.Long.MIN_VALUE; // recall that -MIN_VALUE == MIN_VALUE + } else if (other.equals(goog.math.Long.MIN_VALUE)) { + return goog.math.Long.ONE; + } else { + // At this point, we have |other| >= 2, so |this/other| < |MIN_VALUE|. + var halfThis = this.shiftRight(1); + var approx = halfThis.div(other).shiftLeft(1); + if (approx.equals(goog.math.Long.ZERO)) { + return other.isNegative() ? goog.math.Long.ONE : goog.math.Long.NEG_ONE; + } else { + var rem = this.subtract(other.multiply(approx)); + var result = approx.add(rem.div(other)); + return result; + } + } + } else if (other.equals(goog.math.Long.MIN_VALUE)) { + return goog.math.Long.ZERO; + } + + if (this.isNegative()) { + if (other.isNegative()) { + return this.negate().div(other.negate()); + } else { + return this.negate().div(other).negate(); + } + } else if (other.isNegative()) { + return this.div(other.negate()).negate(); + } + + // Repeat the following until the remainder is less than other: find a + // floating-point that approximates remainder / other *from below*, add this + // into the result, and subtract it from the remainder. It is critical that + // the approximate value is less than or equal to the real value so that the + // remainder never becomes negative. + var res = goog.math.Long.ZERO; + var rem = this; + while (rem.greaterThanOrEqual(other)) { + // Approximate the result of division. This may be a little greater or + // smaller than the actual value. + var approx = Math.max(1, Math.floor(rem.toNumber() / other.toNumber())); + + // We will tweak the approximate result by changing it in the 48-th digit or + // the smallest non-fractional digit, whichever is larger. + var log2 = Math.ceil(Math.log(approx) / Math.LN2); + var delta = (log2 <= 48) ? 1 : Math.pow(2, log2 - 48); + + // Decrease the approximation until it is smaller than the remainder. Note + // that if it is too large, the product overflows and is negative. + var approxRes = goog.math.Long.fromNumber(approx); + var approxRem = approxRes.multiply(other); + while (approxRem.isNegative() || approxRem.greaterThan(rem)) { + approx -= delta; + approxRes = goog.math.Long.fromNumber(approx); + approxRem = approxRes.multiply(other); + } + + // We know the answer can't be zero... and actually, zero would cause + // infinite recursion since we would make no progress. + if (approxRes.isZero()) { + approxRes = goog.math.Long.ONE; + } + + res = res.add(approxRes); + rem = rem.subtract(approxRem); + } + return res; + }; + + + /** + * Returns this Long modulo the given one. + * @param {goog.math.Long} other Long by which to mod. + * @return {!goog.math.Long} This Long modulo the given one. + */ + goog.math.Long.prototype.modulo = function(other) { + return this.subtract(this.div(other).multiply(other)); + }; + + + /** @return {!goog.math.Long} The bitwise-NOT of this value. */ + goog.math.Long.prototype.not = function() { + return goog.math.Long.fromBits(~this.low_, ~this.high_); + }; + + + /** + * Returns the bitwise-AND of this Long and the given one. + * @param {goog.math.Long} other The Long with which to AND. + * @return {!goog.math.Long} The bitwise-AND of this and the other. + */ + goog.math.Long.prototype.and = function(other) { + return goog.math.Long.fromBits(this.low_ & other.low_, + this.high_ & other.high_); + }; + + + /** + * Returns the bitwise-OR of this Long and the given one. + * @param {goog.math.Long} other The Long with which to OR. + * @return {!goog.math.Long} The bitwise-OR of this and the other. + */ + goog.math.Long.prototype.or = function(other) { + return goog.math.Long.fromBits(this.low_ | other.low_, + this.high_ | other.high_); + }; + + + /** + * Returns the bitwise-XOR of this Long and the given one. + * @param {goog.math.Long} other The Long with which to XOR. + * @return {!goog.math.Long} The bitwise-XOR of this and the other. + */ + goog.math.Long.prototype.xor = function(other) { + return goog.math.Long.fromBits(this.low_ ^ other.low_, + this.high_ ^ other.high_); + }; + + + /** + * Returns this Long with bits shifted to the left by the given amount. + * @param {number} numBits The number of bits by which to shift. + * @return {!goog.math.Long} This shifted to the left by the given amount. + */ + goog.math.Long.prototype.shiftLeft = function(numBits) { + numBits &= 63; + if (numBits == 0) { + return this; + } else { + var low = this.low_; + if (numBits < 32) { + var high = this.high_; + return goog.math.Long.fromBits( + low << numBits, + (high << numBits) | (low >>> (32 - numBits))); + } else { + return goog.math.Long.fromBits(0, low << (numBits - 32)); + } + } + }; + + + /** + * Returns this Long with bits shifted to the right by the given amount. + * @param {number} numBits The number of bits by which to shift. + * @return {!goog.math.Long} This shifted to the right by the given amount. + */ + goog.math.Long.prototype.shiftRight = function(numBits) { + numBits &= 63; + if (numBits == 0) { + return this; + } else { + var high = this.high_; + if (numBits < 32) { + var low = this.low_; + return goog.math.Long.fromBits( + (low >>> numBits) | (high << (32 - numBits)), + high >> numBits); + } else { + return goog.math.Long.fromBits( + high >> (numBits - 32), + high >= 0 ? 0 : -1); + } + } + }; + + + /** + * Returns this Long with bits shifted to the right by the given amount, with + * the new top bits matching the current sign bit. + * @param {number} numBits The number of bits by which to shift. + * @return {!goog.math.Long} This shifted to the right by the given amount, with + * zeros placed into the new leading bits. + */ + goog.math.Long.prototype.shiftRightUnsigned = function(numBits) { + numBits &= 63; + if (numBits == 0) { + return this; + } else { + var high = this.high_; + if (numBits < 32) { + var low = this.low_; + return goog.math.Long.fromBits( + (low >>> numBits) | (high << (32 - numBits)), + high >>> numBits); + } else if (numBits == 32) { + return goog.math.Long.fromBits(high, 0); + } else { + return goog.math.Long.fromBits(high >>> (numBits - 32), 0); + } + } + }; + + //======= begin jsbn ======= + + var navigator = { appName: 'Modern Browser' }; // polyfill a little + + // Copyright (c) 2005 Tom Wu + // All Rights Reserved. + // http://www-cs-students.stanford.edu/~tjw/jsbn/ + + /* + * Copyright (c) 2003-2005 Tom Wu + * All Rights Reserved. + * + * 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" AND WITHOUT WARRANTY OF ANY KIND, + * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY + * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + * + * IN NO EVENT SHALL TOM WU BE LIABLE FOR ANY SPECIAL, INCIDENTAL, + * INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER + * RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF + * THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT + * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + * In addition, the following condition applies: + * + * All redistributions must retain an intact copy of this copyright notice + * and disclaimer. + */ + + // Basic JavaScript BN library - subset useful for RSA encryption. + + // Bits per digit + var dbits; + + // JavaScript engine analysis + var canary = 0xdeadbeefcafe; + var j_lm = ((canary&0xffffff)==0xefcafe); + + // (public) Constructor + function BigInteger(a,b,c) { + if(a != null) + if("number" == typeof a) this.fromNumber(a,b,c); + else if(b == null && "string" != typeof a) this.fromString(a,256); + else this.fromString(a,b); + } + + // return new, unset BigInteger + function nbi() { return new BigInteger(null); } + + // am: Compute w_j += (x*this_i), propagate carries, + // c is initial carry, returns final carry. + // c < 3*dvalue, x < 2*dvalue, this_i < dvalue + // We need to select the fastest one that works in this environment. + + // am1: use a single mult and divide to get the high bits, + // max digit bits should be 26 because + // max internal value = 2*dvalue^2-2*dvalue (< 2^53) + function am1(i,x,w,j,c,n) { + while(--n >= 0) { + var v = x*this[i++]+w[j]+c; + c = Math.floor(v/0x4000000); + w[j++] = v&0x3ffffff; + } + return c; + } + // am2 avoids a big mult-and-extract completely. + // Max digit bits should be <= 30 because we do bitwise ops + // on values up to 2*hdvalue^2-hdvalue-1 (< 2^31) + function am2(i,x,w,j,c,n) { + var xl = x&0x7fff, xh = x>>15; + while(--n >= 0) { + var l = this[i]&0x7fff; + var h = this[i++]>>15; + var m = xh*l+h*xl; + l = xl*l+((m&0x7fff)<<15)+w[j]+(c&0x3fffffff); + c = (l>>>30)+(m>>>15)+xh*h+(c>>>30); + w[j++] = l&0x3fffffff; + } + return c; + } + // Alternately, set max digit bits to 28 since some + // browsers slow down when dealing with 32-bit numbers. + function am3(i,x,w,j,c,n) { + var xl = x&0x3fff, xh = x>>14; + while(--n >= 0) { + var l = this[i]&0x3fff; + var h = this[i++]>>14; + var m = xh*l+h*xl; + l = xl*l+((m&0x3fff)<<14)+w[j]+c; + c = (l>>28)+(m>>14)+xh*h; + w[j++] = l&0xfffffff; + } + return c; + } + if(j_lm && (navigator.appName == "Microsoft Internet Explorer")) { + BigInteger.prototype.am = am2; + dbits = 30; + } + else if(j_lm && (navigator.appName != "Netscape")) { + BigInteger.prototype.am = am1; + dbits = 26; + } + else { // Mozilla/Netscape seems to prefer am3 + BigInteger.prototype.am = am3; + dbits = 28; + } + + BigInteger.prototype.DB = dbits; + BigInteger.prototype.DM = ((1<= 0; --i) r[i] = this[i]; + r.t = this.t; + r.s = this.s; + } + + // (protected) set from integer value x, -DV <= x < DV + function bnpFromInt(x) { + this.t = 1; + this.s = (x<0)?-1:0; + if(x > 0) this[0] = x; + else if(x < -1) this[0] = x+DV; + else this.t = 0; + } + + // return bigint initialized to value + function nbv(i) { var r = nbi(); r.fromInt(i); return r; } + + // (protected) set from string and radix + function bnpFromString(s,b) { + var k; + if(b == 16) k = 4; + else if(b == 8) k = 3; + else if(b == 256) k = 8; // byte array + else if(b == 2) k = 1; + else if(b == 32) k = 5; + else if(b == 4) k = 2; + else { this.fromRadix(s,b); return; } + this.t = 0; + this.s = 0; + var i = s.length, mi = false, sh = 0; + while(--i >= 0) { + var x = (k==8)?s[i]&0xff:intAt(s,i); + if(x < 0) { + if(s.charAt(i) == "-") mi = true; + continue; + } + mi = false; + if(sh == 0) + this[this.t++] = x; + else if(sh+k > this.DB) { + this[this.t-1] |= (x&((1<<(this.DB-sh))-1))<>(this.DB-sh)); + } + else + this[this.t-1] |= x<= this.DB) sh -= this.DB; + } + if(k == 8 && (s[0]&0x80) != 0) { + this.s = -1; + if(sh > 0) this[this.t-1] |= ((1<<(this.DB-sh))-1)< 0 && this[this.t-1] == c) --this.t; + } + + // (public) return string representation in given radix + function bnToString(b) { + if(this.s < 0) return "-"+this.negate().toString(b); + var k; + if(b == 16) k = 4; + else if(b == 8) k = 3; + else if(b == 2) k = 1; + else if(b == 32) k = 5; + else if(b == 4) k = 2; + else return this.toRadix(b); + var km = (1< 0) { + if(p < this.DB && (d = this[i]>>p) > 0) { m = true; r = int2char(d); } + while(i >= 0) { + if(p < k) { + d = (this[i]&((1<>(p+=this.DB-k); + } + else { + d = (this[i]>>(p-=k))&km; + if(p <= 0) { p += this.DB; --i; } + } + if(d > 0) m = true; + if(m) r += int2char(d); + } + } + return m?r:"0"; + } + + // (public) -this + function bnNegate() { var r = nbi(); BigInteger.ZERO.subTo(this,r); return r; } + + // (public) |this| + function bnAbs() { return (this.s<0)?this.negate():this; } + + // (public) return + if this > a, - if this < a, 0 if equal + function bnCompareTo(a) { + var r = this.s-a.s; + if(r != 0) return r; + var i = this.t; + r = i-a.t; + if(r != 0) return (this.s<0)?-r:r; + while(--i >= 0) if((r=this[i]-a[i]) != 0) return r; + return 0; + } + + // returns bit length of the integer x + function nbits(x) { + var r = 1, t; + if((t=x>>>16) != 0) { x = t; r += 16; } + if((t=x>>8) != 0) { x = t; r += 8; } + if((t=x>>4) != 0) { x = t; r += 4; } + if((t=x>>2) != 0) { x = t; r += 2; } + if((t=x>>1) != 0) { x = t; r += 1; } + return r; + } + + // (public) return the number of bits in "this" + function bnBitLength() { + if(this.t <= 0) return 0; + return this.DB*(this.t-1)+nbits(this[this.t-1]^(this.s&this.DM)); + } + + // (protected) r = this << n*DB + function bnpDLShiftTo(n,r) { + var i; + for(i = this.t-1; i >= 0; --i) r[i+n] = this[i]; + for(i = n-1; i >= 0; --i) r[i] = 0; + r.t = this.t+n; + r.s = this.s; + } + + // (protected) r = this >> n*DB + function bnpDRShiftTo(n,r) { + for(var i = n; i < this.t; ++i) r[i-n] = this[i]; + r.t = Math.max(this.t-n,0); + r.s = this.s; + } + + // (protected) r = this << n + function bnpLShiftTo(n,r) { + var bs = n%this.DB; + var cbs = this.DB-bs; + var bm = (1<= 0; --i) { + r[i+ds+1] = (this[i]>>cbs)|c; + c = (this[i]&bm)<= 0; --i) r[i] = 0; + r[ds] = c; + r.t = this.t+ds+1; + r.s = this.s; + r.clamp(); + } + + // (protected) r = this >> n + function bnpRShiftTo(n,r) { + r.s = this.s; + var ds = Math.floor(n/this.DB); + if(ds >= this.t) { r.t = 0; return; } + var bs = n%this.DB; + var cbs = this.DB-bs; + var bm = (1<>bs; + for(var i = ds+1; i < this.t; ++i) { + r[i-ds-1] |= (this[i]&bm)<>bs; + } + if(bs > 0) r[this.t-ds-1] |= (this.s&bm)<>= this.DB; + } + if(a.t < this.t) { + c -= a.s; + while(i < this.t) { + c += this[i]; + r[i++] = c&this.DM; + c >>= this.DB; + } + c += this.s; + } + else { + c += this.s; + while(i < a.t) { + c -= a[i]; + r[i++] = c&this.DM; + c >>= this.DB; + } + c -= a.s; + } + r.s = (c<0)?-1:0; + if(c < -1) r[i++] = this.DV+c; + else if(c > 0) r[i++] = c; + r.t = i; + r.clamp(); + } + + // (protected) r = this * a, r != this,a (HAC 14.12) + // "this" should be the larger one if appropriate. + function bnpMultiplyTo(a,r) { + var x = this.abs(), y = a.abs(); + var i = x.t; + r.t = i+y.t; + while(--i >= 0) r[i] = 0; + for(i = 0; i < y.t; ++i) r[i+x.t] = x.am(0,y[i],r,i,0,x.t); + r.s = 0; + r.clamp(); + if(this.s != a.s) BigInteger.ZERO.subTo(r,r); + } + + // (protected) r = this^2, r != this (HAC 14.16) + function bnpSquareTo(r) { + var x = this.abs(); + var i = r.t = 2*x.t; + while(--i >= 0) r[i] = 0; + for(i = 0; i < x.t-1; ++i) { + var c = x.am(i,x[i],r,2*i,0,1); + if((r[i+x.t]+=x.am(i+1,2*x[i],r,2*i+1,c,x.t-i-1)) >= x.DV) { + r[i+x.t] -= x.DV; + r[i+x.t+1] = 1; + } + } + if(r.t > 0) r[r.t-1] += x.am(i,x[i],r,2*i,0,1); + r.s = 0; + r.clamp(); + } + + // (protected) divide this by m, quotient and remainder to q, r (HAC 14.20) + // r != q, this != m. q or r may be null. + function bnpDivRemTo(m,q,r) { + var pm = m.abs(); + if(pm.t <= 0) return; + var pt = this.abs(); + if(pt.t < pm.t) { + if(q != null) q.fromInt(0); + if(r != null) this.copyTo(r); + return; + } + if(r == null) r = nbi(); + var y = nbi(), ts = this.s, ms = m.s; + var nsh = this.DB-nbits(pm[pm.t-1]); // normalize modulus + if(nsh > 0) { pm.lShiftTo(nsh,y); pt.lShiftTo(nsh,r); } + else { pm.copyTo(y); pt.copyTo(r); } + var ys = y.t; + var y0 = y[ys-1]; + if(y0 == 0) return; + var yt = y0*(1<1)?y[ys-2]>>this.F2:0); + var d1 = this.FV/yt, d2 = (1<= 0) { + r[r.t++] = 1; + r.subTo(t,r); + } + BigInteger.ONE.dlShiftTo(ys,t); + t.subTo(y,y); // "negative" y so we can replace sub with am later + while(y.t < ys) y[y.t++] = 0; + while(--j >= 0) { + // Estimate quotient digit + var qd = (r[--i]==y0)?this.DM:Math.floor(r[i]*d1+(r[i-1]+e)*d2); + if((r[i]+=y.am(0,qd,r,j,0,ys)) < qd) { // Try it out + y.dlShiftTo(j,t); + r.subTo(t,r); + while(r[i] < --qd) r.subTo(t,r); + } + } + if(q != null) { + r.drShiftTo(ys,q); + if(ts != ms) BigInteger.ZERO.subTo(q,q); + } + r.t = ys; + r.clamp(); + if(nsh > 0) r.rShiftTo(nsh,r); // Denormalize remainder + if(ts < 0) BigInteger.ZERO.subTo(r,r); + } + + // (public) this mod a + function bnMod(a) { + var r = nbi(); + this.abs().divRemTo(a,null,r); + if(this.s < 0 && r.compareTo(BigInteger.ZERO) > 0) a.subTo(r,r); + return r; + } + + // Modular reduction using "classic" algorithm + function Classic(m) { this.m = m; } + function cConvert(x) { + if(x.s < 0 || x.compareTo(this.m) >= 0) return x.mod(this.m); + else return x; + } + function cRevert(x) { return x; } + function cReduce(x) { x.divRemTo(this.m,null,x); } + function cMulTo(x,y,r) { x.multiplyTo(y,r); this.reduce(r); } + function cSqrTo(x,r) { x.squareTo(r); this.reduce(r); } + + Classic.prototype.convert = cConvert; + Classic.prototype.revert = cRevert; + Classic.prototype.reduce = cReduce; + Classic.prototype.mulTo = cMulTo; + Classic.prototype.sqrTo = cSqrTo; + + // (protected) return "-1/this % 2^DB"; useful for Mont. reduction + // justification: + // xy == 1 (mod m) + // xy = 1+km + // xy(2-xy) = (1+km)(1-km) + // x[y(2-xy)] = 1-k^2m^2 + // x[y(2-xy)] == 1 (mod m^2) + // if y is 1/x mod m, then y(2-xy) is 1/x mod m^2 + // should reduce x and y(2-xy) by m^2 at each step to keep size bounded. + // JS multiply "overflows" differently from C/C++, so care is needed here. + function bnpInvDigit() { + if(this.t < 1) return 0; + var x = this[0]; + if((x&1) == 0) return 0; + var y = x&3; // y == 1/x mod 2^2 + y = (y*(2-(x&0xf)*y))&0xf; // y == 1/x mod 2^4 + y = (y*(2-(x&0xff)*y))&0xff; // y == 1/x mod 2^8 + y = (y*(2-(((x&0xffff)*y)&0xffff)))&0xffff; // y == 1/x mod 2^16 + // last step - calculate inverse mod DV directly; + // assumes 16 < DB <= 32 and assumes ability to handle 48-bit ints + y = (y*(2-x*y%this.DV))%this.DV; // y == 1/x mod 2^dbits + // we really want the negative inverse, and -DV < y < DV + return (y>0)?this.DV-y:-y; + } + + // Montgomery reduction + function Montgomery(m) { + this.m = m; + this.mp = m.invDigit(); + this.mpl = this.mp&0x7fff; + this.mph = this.mp>>15; + this.um = (1<<(m.DB-15))-1; + this.mt2 = 2*m.t; + } + + // xR mod m + function montConvert(x) { + var r = nbi(); + x.abs().dlShiftTo(this.m.t,r); + r.divRemTo(this.m,null,r); + if(x.s < 0 && r.compareTo(BigInteger.ZERO) > 0) this.m.subTo(r,r); + return r; + } + + // x/R mod m + function montRevert(x) { + var r = nbi(); + x.copyTo(r); + this.reduce(r); + return r; + } + + // x = x/R mod m (HAC 14.32) + function montReduce(x) { + while(x.t <= this.mt2) // pad x so am has enough room later + x[x.t++] = 0; + for(var i = 0; i < this.m.t; ++i) { + // faster way of calculating u0 = x[i]*mp mod DV + var j = x[i]&0x7fff; + var u0 = (j*this.mpl+(((j*this.mph+(x[i]>>15)*this.mpl)&this.um)<<15))&x.DM; + // use am to combine the multiply-shift-add into one call + j = i+this.m.t; + x[j] += this.m.am(0,u0,x,i,0,this.m.t); + // propagate carry + while(x[j] >= x.DV) { x[j] -= x.DV; x[++j]++; } + } + x.clamp(); + x.drShiftTo(this.m.t,x); + if(x.compareTo(this.m) >= 0) x.subTo(this.m,x); + } + + // r = "x^2/R mod m"; x != r + function montSqrTo(x,r) { x.squareTo(r); this.reduce(r); } + + // r = "xy/R mod m"; x,y != r + function montMulTo(x,y,r) { x.multiplyTo(y,r); this.reduce(r); } + + Montgomery.prototype.convert = montConvert; + Montgomery.prototype.revert = montRevert; + Montgomery.prototype.reduce = montReduce; + Montgomery.prototype.mulTo = montMulTo; + Montgomery.prototype.sqrTo = montSqrTo; + + // (protected) true iff this is even + function bnpIsEven() { return ((this.t>0)?(this[0]&1):this.s) == 0; } + + // (protected) this^e, e < 2^32, doing sqr and mul with "r" (HAC 14.79) + function bnpExp(e,z) { + if(e > 0xffffffff || e < 1) return BigInteger.ONE; + var r = nbi(), r2 = nbi(), g = z.convert(this), i = nbits(e)-1; + g.copyTo(r); + while(--i >= 0) { + z.sqrTo(r,r2); + if((e&(1< 0) z.mulTo(r2,g,r); + else { var t = r; r = r2; r2 = t; } + } + return z.revert(r); + } + + // (public) this^e % m, 0 <= e < 2^32 + function bnModPowInt(e,m) { + var z; + if(e < 256 || m.isEven()) z = new Classic(m); else z = new Montgomery(m); + return this.exp(e,z); + } + + // protected + BigInteger.prototype.copyTo = bnpCopyTo; + BigInteger.prototype.fromInt = bnpFromInt; + BigInteger.prototype.fromString = bnpFromString; + BigInteger.prototype.clamp = bnpClamp; + BigInteger.prototype.dlShiftTo = bnpDLShiftTo; + BigInteger.prototype.drShiftTo = bnpDRShiftTo; + BigInteger.prototype.lShiftTo = bnpLShiftTo; + BigInteger.prototype.rShiftTo = bnpRShiftTo; + BigInteger.prototype.subTo = bnpSubTo; + BigInteger.prototype.multiplyTo = bnpMultiplyTo; + BigInteger.prototype.squareTo = bnpSquareTo; + BigInteger.prototype.divRemTo = bnpDivRemTo; + BigInteger.prototype.invDigit = bnpInvDigit; + BigInteger.prototype.isEven = bnpIsEven; + BigInteger.prototype.exp = bnpExp; + + // public + BigInteger.prototype.toString = bnToString; + BigInteger.prototype.negate = bnNegate; + BigInteger.prototype.abs = bnAbs; + BigInteger.prototype.compareTo = bnCompareTo; + BigInteger.prototype.bitLength = bnBitLength; + BigInteger.prototype.mod = bnMod; + BigInteger.prototype.modPowInt = bnModPowInt; + + // "constants" + BigInteger.ZERO = nbv(0); + BigInteger.ONE = nbv(1); + + // jsbn2 stuff + + // (protected) convert from radix string + function bnpFromRadix(s,b) { + this.fromInt(0); + if(b == null) b = 10; + var cs = this.chunkSize(b); + var d = Math.pow(b,cs), mi = false, j = 0, w = 0; + for(var i = 0; i < s.length; ++i) { + var x = intAt(s,i); + if(x < 0) { + if(s.charAt(i) == "-" && this.signum() == 0) mi = true; + continue; + } + w = b*w+x; + if(++j >= cs) { + this.dMultiply(d); + this.dAddOffset(w,0); + j = 0; + w = 0; + } + } + if(j > 0) { + this.dMultiply(Math.pow(b,j)); + this.dAddOffset(w,0); + } + if(mi) BigInteger.ZERO.subTo(this,this); + } + + // (protected) return x s.t. r^x < DV + function bnpChunkSize(r) { return Math.floor(Math.LN2*this.DB/Math.log(r)); } + + // (public) 0 if this == 0, 1 if this > 0 + function bnSigNum() { + if(this.s < 0) return -1; + else if(this.t <= 0 || (this.t == 1 && this[0] <= 0)) return 0; + else return 1; + } + + // (protected) this *= n, this >= 0, 1 < n < DV + function bnpDMultiply(n) { + this[this.t] = this.am(0,n-1,this,0,0,this.t); + ++this.t; + this.clamp(); + } + + // (protected) this += n << w words, this >= 0 + function bnpDAddOffset(n,w) { + if(n == 0) return; + while(this.t <= w) this[this.t++] = 0; + this[w] += n; + while(this[w] >= this.DV) { + this[w] -= this.DV; + if(++w >= this.t) this[this.t++] = 0; + ++this[w]; + } + } + + // (protected) convert to radix string + function bnpToRadix(b) { + if(b == null) b = 10; + if(this.signum() == 0 || b < 2 || b > 36) return "0"; + var cs = this.chunkSize(b); + var a = Math.pow(b,cs); + var d = nbv(a), y = nbi(), z = nbi(), r = ""; + this.divRemTo(d,y,z); + while(y.signum() > 0) { + r = (a+z.intValue()).toString(b).substr(1) + r; + y.divRemTo(d,y,z); + } + return z.intValue().toString(b) + r; + } + + // (public) return value as integer + function bnIntValue() { + if(this.s < 0) { + if(this.t == 1) return this[0]-this.DV; + else if(this.t == 0) return -1; + } + else if(this.t == 1) return this[0]; + else if(this.t == 0) return 0; + // assumes 16 < DB < 32 + return ((this[1]&((1<<(32-this.DB))-1))<>= this.DB; + } + if(a.t < this.t) { + c += a.s; + while(i < this.t) { + c += this[i]; + r[i++] = c&this.DM; + c >>= this.DB; + } + c += this.s; + } + else { + c += this.s; + while(i < a.t) { + c += a[i]; + r[i++] = c&this.DM; + c >>= this.DB; + } + c += a.s; + } + r.s = (c<0)?-1:0; + if(c > 0) r[i++] = c; + else if(c < -1) r[i++] = this.DV+c; + r.t = i; + r.clamp(); + } + + BigInteger.prototype.fromRadix = bnpFromRadix; + BigInteger.prototype.chunkSize = bnpChunkSize; + BigInteger.prototype.signum = bnSigNum; + BigInteger.prototype.dMultiply = bnpDMultiply; + BigInteger.prototype.dAddOffset = bnpDAddOffset; + BigInteger.prototype.toRadix = bnpToRadix; + BigInteger.prototype.intValue = bnIntValue; + BigInteger.prototype.addTo = bnpAddTo; + + //======= end jsbn ======= + + // Emscripten wrapper + var Wrapper = { + abs: function(l, h) { + var x = new goog.math.Long(l, h); + var ret; + if (x.isNegative()) { + ret = x.negate(); + } else { + ret = x; + } + HEAP32[tempDoublePtr>>2] = ret.low_; + HEAP32[tempDoublePtr+4>>2] = ret.high_; + }, + ensureTemps: function() { + if (Wrapper.ensuredTemps) return; + Wrapper.ensuredTemps = true; + Wrapper.two32 = new BigInteger(); + Wrapper.two32.fromString('4294967296', 10); + Wrapper.two64 = new BigInteger(); + Wrapper.two64.fromString('18446744073709551616', 10); + Wrapper.temp1 = new BigInteger(); + Wrapper.temp2 = new BigInteger(); + }, + lh2bignum: function(l, h) { + var a = new BigInteger(); + a.fromString(h.toString(), 10); + var b = new BigInteger(); + a.multiplyTo(Wrapper.two32, b); + var c = new BigInteger(); + c.fromString(l.toString(), 10); + var d = new BigInteger(); + c.addTo(b, d); + return d; + }, + stringify: function(l, h, unsigned) { + var ret = new goog.math.Long(l, h).toString(); + if (unsigned && ret[0] == '-') { + // unsign slowly using jsbn bignums + Wrapper.ensureTemps(); + var bignum = new BigInteger(); + bignum.fromString(ret, 10); + ret = new BigInteger(); + Wrapper.two64.addTo(bignum, ret); + ret = ret.toString(10); + } + return ret; + }, + fromString: function(str, base, min, max, unsigned) { + Wrapper.ensureTemps(); + var bignum = new BigInteger(); + bignum.fromString(str, base); + var bigmin = new BigInteger(); + bigmin.fromString(min, 10); + var bigmax = new BigInteger(); + bigmax.fromString(max, 10); + if (unsigned && bignum.compareTo(BigInteger.ZERO) < 0) { + var temp = new BigInteger(); + bignum.addTo(Wrapper.two64, temp); + bignum = temp; + } + var error = false; + if (bignum.compareTo(bigmin) < 0) { + bignum = bigmin; + error = true; + } else if (bignum.compareTo(bigmax) > 0) { + bignum = bigmax; + error = true; + } + var ret = goog.math.Long.fromString(bignum.toString()); // min-max checks should have clamped this to a range goog.math.Long can handle well + HEAP32[tempDoublePtr>>2] = ret.low_; + HEAP32[tempDoublePtr+4>>2] = ret.high_; + if (error) throw 'range error'; + } + }; + return Wrapper; +})(); + +//======= end closure i64 code ======= + + + +// === Auto-generated postamble setup entry stuff === + +if (memoryInitializer) { + if (ENVIRONMENT_IS_NODE || ENVIRONMENT_IS_SHELL) { + var data = Module['readBinary'](memoryInitializer); + HEAPU8.set(data, STATIC_BASE); + } else { + addRunDependency('memory initializer'); + Browser.asyncLoad(memoryInitializer, function(data) { + for (var i = 0; i < data.length; i++) { + assert(HEAPU8[STATIC_BASE + i] === 0, "area for memory initializer should not have been touched before it's loaded"); + } + HEAPU8.set(data, STATIC_BASE); + removeRunDependency('memory initializer'); + }, function(data) { + throw 'could not load memory initializer ' + memoryInitializer; + }); + } +} + +function ExitStatus(status) { + this.name = "ExitStatus"; + this.message = "Program terminated with exit(" + status + ")"; + this.status = status; +}; +ExitStatus.prototype = new Error(); +ExitStatus.prototype.constructor = ExitStatus; + +var initialStackTop; +var preloadStartTime = null; +var calledMain = false; + +dependenciesFulfilled = function runCaller() { + // If run has never been called, and we should call run (INVOKE_RUN is true, and Module.noInitialRun is not false) + if (!Module['calledRun'] && shouldRunNow) run(); + if (!Module['calledRun']) dependenciesFulfilled = runCaller; // try this again later, after new deps are fulfilled +} + +Module['callMain'] = Module.callMain = function callMain(args) { + assert(runDependencies == 0, 'cannot call main when async dependencies remain! (listen on __ATMAIN__)'); + assert(__ATPRERUN__.length == 0, 'cannot call main when preRun functions remain to be called'); + + args = args || []; + + ensureInitRuntime(); + + var argc = args.length+1; + function pad() { + for (var i = 0; i < 4-1; i++) { + argv.push(0); + } + } + var argv = [allocate(intArrayFromString(Module['thisProgram'] || '/bin/this.program'), 'i8', ALLOC_NORMAL) ]; + pad(); + for (var i = 0; i < argc-1; i = i + 1) { + argv.push(allocate(intArrayFromString(args[i]), 'i8', ALLOC_NORMAL)); + pad(); + } + argv.push(0); + argv = allocate(argv, 'i32', ALLOC_NORMAL); + + initialStackTop = STACKTOP; + + try { + + var ret = Module['_main'](argc, argv, 0); + + + // if we're not running an evented main loop, it's time to exit + if (!Module['noExitRuntime']) { + exit(ret); + } + } + catch(e) { + if (e instanceof ExitStatus) { + // exit() throws this once it's done to make sure execution + // has been stopped completely + return; + } else if (e == 'SimulateInfiniteLoop') { + // running an evented main loop, don't immediately exit + Module['noExitRuntime'] = true; + return; + } else { + if (e && typeof e === 'object' && e.stack) Module.printErr('exception thrown: ' + [e, e.stack]); + throw e; + } + } finally { + calledMain = true; + } +} + + + + +function run(args) { + args = args || Module['arguments']; + + if (preloadStartTime === null) preloadStartTime = Date.now(); + + if (runDependencies > 0) { + Module.printErr('run() called, but dependencies remain, so not running'); + return; + } + + preRun(); + + if (runDependencies > 0) return; // a preRun added a dependency, run will be called later + if (Module['calledRun']) return; // run may have just been called through dependencies being fulfilled just in this very frame + + function doRun() { + if (Module['calledRun']) return; // run may have just been called while the async setStatus time below was happening + Module['calledRun'] = true; + + ensureInitRuntime(); + + preMain(); + + if (ENVIRONMENT_IS_WEB && preloadStartTime !== null) { + Module.printErr('pre-main prep time: ' + (Date.now() - preloadStartTime) + ' ms'); + } + + if (Module['_main'] && shouldRunNow) { + Module['callMain'](args); + } + + postRun(); + } + + if (Module['setStatus']) { + Module['setStatus']('Running...'); + setTimeout(function() { + setTimeout(function() { + Module['setStatus'](''); + }, 1); + if (!ABORT) doRun(); + }, 1); + } else { + doRun(); + } +} +Module['run'] = Module.run = run; + +function exit(status) { + ABORT = true; + EXITSTATUS = status; + STACKTOP = initialStackTop; + + // exit the runtime + exitRuntime(); + + // TODO We should handle this differently based on environment. + // In the browser, the best we can do is throw an exception + // to halt execution, but in node we could process.exit and + // I'd imagine SM shell would have something equivalent. + // This would let us set a proper exit status (which + // would be great for checking test exit statuses). + // https://github.com/kripken/emscripten/issues/1371 + + // throw an exception to halt the current execution + throw new ExitStatus(status); +} +Module['exit'] = Module.exit = exit; + +function abort(text) { + if (text) { + Module.print(text); + Module.printErr(text); + } + + ABORT = true; + EXITSTATUS = 1; + + var extra = ''; + + throw 'abort() at ' + stackTrace() + extra; +} +Module['abort'] = Module.abort = abort; + +// {{PRE_RUN_ADDITIONS}} + +if (Module['preInit']) { + if (typeof Module['preInit'] == 'function') Module['preInit'] = [Module['preInit']]; + while (Module['preInit'].length > 0) { + Module['preInit'].pop()(); + } +} + +// shouldRunNow refers to calling main(), not run(). +var shouldRunNow = true; +if (Module['noInitialRun']) { + shouldRunNow = false; +} + + +run(); + +// {{POST_RUN_ADDITIONS}} + + + + + + +// {{MODULE_ADDITIONS}} + + + +// Generated by CoffeeScript 1.6.4 +var Database, NULL, SQLite, Statement, apiTemp, i, register_character_tokenizer, sqlite3_bind_blob, sqlite3_bind_double, sqlite3_bind_int, sqlite3_bind_parameter_index, sqlite3_bind_text, sqlite3_clear_bindings, sqlite3_close_v2, sqlite3_column_blob, sqlite3_column_bytes, sqlite3_column_double, sqlite3_column_name, sqlite3_column_text, sqlite3_column_type, sqlite3_data_count, sqlite3_errmsg, sqlite3_exec, sqlite3_finalize, sqlite3_free, sqlite3_open, sqlite3_prepare_v2, sqlite3_reset, sqlite3_step; + +apiTemp = Runtime.stackAlloc(4); + +SQLite = {}; + + +/* Represents an prepared statement. + +Prepared statements allow you to have a template sql string, +that you can execute multiple times with different parameters. + +You can't instantiate this class directly, you have to use a [Database](Database.html) +object in order to create a statement. + +**Warning**: When you close a database (using db.close()), all its statements are +closed too and become unusable. + +@see Database.html#prepare-dynamic +@see https://en.wikipedia.org/wiki/Prepared_statement + */ + +Statement = (function() { + function Statement(stmt, db) { + this.stmt = stmt; + this.db = db; + this.pos = 1; + this.allocatedmem = []; + } + + + /* Bind values to the parameters, after having reseted the statement + + SQL statements can have parameters, named *'?', '?NNN', ':VVV', '@VVV', '$VVV'*, + where NNN is a number and VVV a string. + This function binds these parameters to the given values. + + *Warning*: ':', '@', and '$' are included in the parameters names + + *# Binding values to named parameters + @example Bind values to named parameters + var stmt = db.prepare("UPDATE test SET a=@newval WHERE id BETWEEN $mini AND $maxi"); + stmt.bind({$mini:10, $maxi:20, '@newval':5}); + - Create a statement that contains parameters like '$VVV', ':VVV', '@VVV' + - Call Statement.bind with an object as parameter + + *# Binding values to parameters + @example Bind values to anonymous parameters + var stmt = db.prepare("UPDATE test SET a=? WHERE id BETWEEN ? AND ?"); + stmt.bind([5, 10, 20]); + - Create a statement that contains parameters like '?', '?NNN' + - Call Statement.bind with an array as parameter + + *# Value types + Javascript type | SQLite type + --- | --- + number | REAL, INTEGER + boolean | INTEGER + string | TEXT + Array, Uint8Array | BLOB + null | NULL + @see http://www.sqlite.org/datatype3.html + + @see http://www.sqlite.org/lang_expr.html#varparam + @param values [Array,Object] The values to bind + @return [Boolean] true if it worked + @throw [String] SQLite Error + */ + + Statement.prototype['bind'] = function(values) { + this['reset'](); + if (Array.isArray(values)) { + return this.bindFromArray(values); + } else { + return this.bindFromObject(values); + } + }; + + + /* Execute the statement, fetching the the next line of result, + that can be retrieved with [Statement.get()](#get-dynamic) . + + @return [Boolean] true if a row of result available + @throw [String] SQLite Error + */ + + Statement.prototype['step'] = function() { + var ret; + if (!this.stmt) { + throw "Statement closed"; + } + this.pos = 1; + switch (ret = sqlite3_step(this.stmt)) { + case SQLite.ROW: + return true; + case SQLite.DONE: + return false; + default: + return this.db.handleError(ret); + } + }; + + Statement.prototype.getNumber = function(pos) { + if (pos == null) { + pos = this.pos++; + } + return sqlite3_column_double(this.stmt, pos); + }; + + Statement.prototype.getString = function(pos) { + if (pos == null) { + pos = this.pos++; + } + return sqlite3_column_text(this.stmt, pos); + }; + + Statement.prototype.getBlob = function(pos) { + var i, ptr, result, size, _i; + if (pos == null) { + pos = this.pos++; + } + size = sqlite3_column_bytes(this.stmt, pos); + ptr = sqlite3_column_blob(this.stmt, pos); + result = new Uint8Array(size); + for (i = _i = 0; 0 <= size ? _i < size : _i > size; i = 0 <= size ? ++_i : --_i) { + result[i] = HEAP8[ptr + i]; + } + return result; + }; + + + /* Get one row of results of a statement. + If the first parameter is not provided, step must have been called before get. + @param [Array,Object] Optional: If set, the values will be bound to the statement, and it will be executed + @return [Array] One row of result + + @example Print all the rows of the table test to the console + + var stmt = db.prepare("SELECT * FROM test"); + while (stmt.step()) console.log(stmt.get()); + */ + + Statement.prototype['get'] = function(params) { + var field, _i, _ref, _results; + if (params != null) { + this['bind'](params) && this['step'](); + } + _results = []; + for (field = _i = 0, _ref = sqlite3_data_count(this.stmt); 0 <= _ref ? _i < _ref : _i > _ref; field = 0 <= _ref ? ++_i : --_i) { + switch (sqlite3_column_type(this.stmt, field)) { + case SQLite.INTEGER: + case SQLite.FLOAT: + _results.push(this.getNumber(field)); + break; + case SQLite.TEXT: + _results.push(this.getString(field)); + break; + case SQLite.BLOB: + _results.push(this.getBlob(field)); + break; + default: + _results.push(null); + } + } + return _results; + }; + + + /* Get the list of column names of a row of result of a statement. + @return [Array] The names of the columns + @example + + var stmt = db.prepare("SELECT 5 AS nbr, x'616200' AS data, NULL AS nothing;"); + stmt.step(); // Execute the statement + console.log(stmt.getColumnNames()); // Will print ['nbr','data','nothing'] + */ + + Statement.prototype['getColumnNames'] = function() { + var i, _i, _ref, _results; + _results = []; + for (i = _i = 0, _ref = sqlite3_data_count(this.stmt); 0 <= _ref ? _i < _ref : _i > _ref; i = 0 <= _ref ? ++_i : --_i) { + _results.push(sqlite3_column_name(this.stmt, i)); + } + return _results; + }; + + + /* Get one row of result as a javascript object, associating column names with + their value in the current row. + @param [Array,Object] Optional: If set, the values will be bound to the statement, and it will be executed + @return [Object] The row of result + @see [Statement.get](#get-dynamic) + + @example + + var stmt = db.prepare("SELECT 5 AS nbr, x'616200' AS data, NULL AS nothing;"); + stmt.step(); // Execute the statement + console.log(stmt.getAsObject()); // Will print {nbr:5, data: Uint8Array([1,2,3]), nothing:null} + */ + + Statement.prototype['getAsObject'] = function(params) { + var i, name, names, rowObject, values, _i, _len; + values = this['get'](params); + names = this['getColumnNames'](); + rowObject = {}; + for (i = _i = 0, _len = names.length; _i < _len; i = ++_i) { + name = names[i]; + rowObject[name] = values[i]; + } + return rowObject; + }; + + + /* Shorthand for bind + step + reset + Bind the values, execute the statement, ignoring the rows it returns, and resets it + @param [Array,Object] Value to bind to the statement + */ + + Statement.prototype['run'] = function(values) { + if (values != null) { + this['bind'](values); + } + this['step'](); + return this['reset'](); + }; + + Statement.prototype.bindString = function(string, pos) { + var bytes, strptr; + if (pos == null) { + pos = this.pos++; + } + bytes = intArrayFromString(string); + this.allocatedmem.push(strptr = allocate(bytes, 'i8', ALLOC_NORMAL)); + this.db.handleError(sqlite3_bind_text(this.stmt, pos, strptr, bytes.length - 1, 0)); + return true; + }; + + Statement.prototype.bindBlob = function(array, pos) { + var blobptr; + if (pos == null) { + pos = this.pos++; + } + this.allocatedmem.push(blobptr = allocate(array, 'i8', ALLOC_NORMAL)); + this.db.handleError(sqlite3_bind_blob(this.stmt, pos, blobptr, array.length, 0)); + return true; + }; + + Statement.prototype.bindNumber = function(num, pos) { + var bindfunc; + if (pos == null) { + pos = this.pos++; + } + bindfunc = num === (num | 0) ? sqlite3_bind_int : sqlite3_bind_double; + this.db.handleError(bindfunc(this.stmt, pos, num)); + return true; + }; + + Statement.prototype.bindNull = function(pos) { + if (pos == null) { + pos = this.pos++; + } + return sqlite3_bind_blob(this.stmt, pos, 0, 0, 0) === SQLite.OK; + }; + + Statement.prototype.bindValue = function(val, pos) { + if (pos == null) { + pos = this.pos++; + } + switch (typeof val) { + case "string": + return this.bindString(val, pos); + case "number": + case "boolean": + return this.bindNumber(val + 0, pos); + case "object": + if (val === null) { + this.bindNull(pos); + } + if (val.length != null) { + return this.bindBlob(val, pos); + } else { + throw "Wrong API use : tried to bind a value of an unknown type (" + val + ")."; + } + } + }; + + + /* Bind names and values of an object to the named parameters of the statement + @param [Object] + @private + @nodoc + */ + + Statement.prototype.bindFromObject = function(valuesObj) { + var name, num, value; + for (name in valuesObj) { + value = valuesObj[name]; + num = sqlite3_bind_parameter_index(this.stmt, name); + if (num !== 0) { + this.bindValue(value, num); + } + } + return true; + }; + + + /* Bind values to numbered parameters + @param [Array] + @private + @nodoc + */ + + Statement.prototype.bindFromArray = function(values) { + var num, value, _i, _len; + for (num = _i = 0, _len = values.length; _i < _len; num = ++_i) { + value = values[num]; + this.bindValue(value, num + 1); + } + return true; + }; + + + /* Reset a statement, so that it's parameters can be bound to new values + It also clears all previous bindings, freeing the memory used by bound parameters. + */ + + Statement.prototype['reset'] = function() { + this.freemem(); + return sqlite3_clear_bindings(this.stmt) === SQLite.OK && sqlite3_reset(this.stmt) === SQLite.OK; + }; + + + /* Free the memory allocated during parameter binding + */ + + Statement.prototype.freemem = function() { + var mem; + while (mem = this.allocatedmem.pop()) { + _free(mem); + } + return null; + }; + + + /* Free the memory used by the statement + @return [Boolean] true in case of success + */ + + Statement.prototype['free'] = function() { + var res; + this.freemem(); + res = sqlite3_finalize(this.stmt) === SQLite.OK; + delete this.db.statements[this.stmt]; + this.stmt = NULL; + return res; + }; + + return Statement; + +})(); + +Database = (function() { + function Database(data) { + this.filename = 'dbfile_' + (0xffffffff * Math.random() >>> 0); + if (data != null) { + FS.createDataFile('/', this.filename, data, true, true); + } + this.handleError(sqlite3_open(this.filename, apiTemp)); + this.db = getValue(apiTemp, 'i32'); + this.statements = {}; + } + + + /* Execute an SQL query, ignoring the rows it returns. + + @param sql [String] a string containing some SQL text to execute + @param params [Array] (*optional*) When the SQL statement contains placeholders, you can pass them in here. They will be bound to the statement before it is executed. + + If you use the params argument, you **cannot** provide an sql string that contains several + queries (separated by ';') + + @example Insert values in a table + db.run("INSERT INTO test VALUES (:age, :name)", {':age':18, ':name':'John'}); + + @return [Database] The database object (usefull for method chaining) + */ + + Database.prototype['run'] = function(sql, params) { + var stmt; + if (!this.db) { + throw "Database closed"; + } + if (params) { + stmt = this['prepare'](sql, params); + stmt['step'](); + stmt['free'](); + } else { + this.handleError(sqlite3_exec(this.db, sql, 0, 0, apiTemp)); + } + return this; + }; + + Database.prototype['register_character_tokenizer'] = function() { + if (!this.db) { + throw "Database closed"; + } + return register_character_tokenizer(this.db); + }; + + + /* Execute an SQL query, and returns the result. + + This is a wrapper against Database.prepare, Statement.step, Statement.get, + and Statement.free. + + The result is an array of result elements. There are as many result elements + as the number of statements in your sql string (statements are separated by a semicolon) + + Each result element is an object with two properties: + 'columns' : the name of the columns of the result (as returned by Statement.getColumnNames()) + 'values' : an array of rows. Each row is itself an array of values + + *# Example use + We have the following table, named *test* : + + | id | age | name | + |:--:|:---:|:------:| + | 1 | 1 | Ling | + | 2 | 18 | Paul | + | 3 | 3 | Markus | + + + We query it like that: + ```javascript + var db = new SQL.Database(); + var res = db.exec("SELECT id FROM test; SELECT age,name FROM test;"); + ``` + + `res` is now : + ```javascript + [ + {columns: ['id'], values:[[1],[2],[3]]}, + {columns: ['age','name'], values:[[1,'Ling'],[18,'Paul'],[3,'Markus']]} + ] + ``` + + @param sql [String] a string containing some SQL text to execute + @return [Array] An array of results. + */ + + Database.prototype['exec'] = function(sql) { + var curresult, err, results, sqlstr, stmt, _i, _len, _ref; + if (!this.db) { + throw "Database closed"; + } + results = []; + _ref = sql.split(';'); + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + sqlstr = _ref[_i]; + try { + stmt = this['prepare'](sqlstr); + } catch (_error) { + err = _error; + if (err === 'Nothing to prepare') { + continue; + } else { + throw err; + } + } + curresult = null; + while (stmt['step']()) { + if (curresult === null) { + curresult = { + 'columns': stmt['getColumnNames'](), + 'values': [] + }; + results.push(curresult); + } + curresult['values'].push(stmt['get']()); + } + stmt['free'](); + } + return results; + }; + + + /* Execute an sql statement, and call a callback for each row of result. + + **Currently** this method is synchronous, it will not return until the callback has + been called on every row of the result. But this might change. + + @param sql [String] A string of SQL text. Can contain placeholders that will be + bound to the parameters given as the second argument + @param params [Array] (*optional*) Parameters to bind + to the query + @param callback [Function(Object)] A function that will be called on each row of result + @param done [Function] A function that will be called when all rows have been retrieved + + @return [Database] The database object. Usefull for method chaining + + @example Read values from a table + db.each("SELECT name,age FROM users WHERE age >= $majority", + {$majority:18}, + function(row){console.log(row.name + " is a grown-up.")} + ); + */ + + Database.prototype['each'] = function(sql, params, callback, done) { + var stmt; + if (typeof params === 'function') { + done = callback; + callback = params; + params = void 0; + } + stmt = this['prepare'](sql, params); + while (stmt['step']()) { + callback(stmt['getAsObject']()); + } + stmt['free'](); + if (typeof done === 'function') { + return done(); + } + }; + + + /* Prepare an SQL statement + @param sql [String] a string of SQL, that can contain placeholders ('?', ':VVV', ':AAA', '@AAA') + @param params [Array] (*optional*) values to bind to placeholders + @return [Statement] the resulting statement + @throw [String] SQLite error + */ + + Database.prototype['prepare'] = function(sql, params) { + var pStmt, stmt; + setValue(apiTemp, 0, 'i32'); + this.handleError(sqlite3_prepare_v2(this.db, sql, -1, apiTemp, NULL)); + pStmt = getValue(apiTemp, 'i32'); + if (pStmt === NULL) { + throw 'Nothing to prepare'; + } + stmt = new Statement(pStmt, this); + if (params != null) { + stmt.bind(params); + } + this.statements[pStmt] = stmt; + return stmt; + }; + + + /* Exports the contents of the database to a binary array + @return [Uint8Array] An array of bytes of the SQLite3 database file + */ + + Database.prototype['export'] = function() { + return new Uint8Array(FS.root.contents[this.filename].contents); + }; + + + /* Close the database, and all associated prepared statements. + + The memory associated to the database and all associated statements + will be freed. + + **Warning**: A statement belonging to a database that has been closed cannot + be used anymore. + + Databases **must** be closed, when you're finished with them, or the + memory consumption will grow forever + */ + + Database.prototype['close'] = function() { + var stmt, _, _ref; + _ref = this.statements; + for (_ in _ref) { + stmt = _ref[_]; + stmt['free'](); + } + this.handleError(sqlite3_close_v2(this.db)); + FS.unlink('/' + this.filename); + return this.db = null; + }; + + + /* Analyze a result code, return null if no error occured, and throw + an error with a descriptive message otherwise + @nodoc + */ + + Database.prototype.handleError = function(returnCode) { + var errmsg; + if (returnCode === SQLite.OK) { + return null; + } else { + errmsg = sqlite3_errmsg(this.db); + throw new Error(errmsg); + } + }; + + return Database; + +})(); + +sqlite3_open = Module['cwrap']('sqlite3_open', 'number', ['string', 'number']); + +sqlite3_close_v2 = Module['cwrap']('sqlite3_close_v2', 'number', ['number']); + +register_character_tokenizer = Module['cwrap']('register_character_tokenizer', 'number', ['number']); + +sqlite3_exec = Module['cwrap']('sqlite3_exec', 'number', ['number', 'string', 'number', 'number', 'number']); + +sqlite3_free = Module['cwrap']('sqlite3_free', '', ['number']); + +sqlite3_prepare_v2 = Module['cwrap']('sqlite3_prepare_v2', 'number', ['number', 'string', 'number', 'number', 'number']); + +sqlite3_bind_text = Module['cwrap']('sqlite3_bind_text', 'number', ['number', 'number', 'number', 'number', 'number']); + +sqlite3_bind_blob = Module['cwrap']('sqlite3_bind_blob', 'number', ['number', 'number', 'number', 'number', 'number']); + +sqlite3_bind_double = Module['cwrap']('sqlite3_bind_double', 'number', ['number', 'number', 'number']); + +sqlite3_bind_int = Module['cwrap']('sqlite3_bind_int', 'number', ['number', 'number', 'number']); + +sqlite3_bind_parameter_index = Module['cwrap']('sqlite3_bind_parameter_index', 'number', ['number', 'string']); + +sqlite3_step = Module['cwrap']('sqlite3_step', 'number', ['number']); + +sqlite3_errmsg = Module['cwrap']('sqlite3_errmsg', 'string', ['number']); + +sqlite3_data_count = Module['cwrap']('sqlite3_data_count', 'number', ['number']); + +sqlite3_column_double = Module['cwrap']('sqlite3_column_double', 'number', ['number', 'number']); + +sqlite3_column_text = Module['cwrap']('sqlite3_column_text', 'string', ['number', 'number']); + +sqlite3_column_blob = Module['cwrap']('sqlite3_column_blob', 'number', ['number', 'number']); + +sqlite3_column_bytes = Module['cwrap']('sqlite3_column_bytes', 'number', ['number', 'number']); + +sqlite3_column_type = Module['cwrap']('sqlite3_column_type', 'number', ['number', 'number']); + +sqlite3_column_name = Module['cwrap']('sqlite3_column_name', 'string', ['number', 'number']); + +sqlite3_reset = Module['cwrap']('sqlite3_reset', 'number', ['number']); + +sqlite3_clear_bindings = Module['cwrap']('sqlite3_clear_bindings', 'number', ['number']); + +sqlite3_finalize = Module['cwrap']('sqlite3_finalize', 'number', ['number']); + +this['SQL'] = { + 'Database': Database +}; + +for (i in this['SQL']) { + Module[i] = this['SQL'][i]; +} + +NULL = 0; + +SQLite.OK = 0; + +SQLite.ERROR = 1; + +SQLite.INTERNAL = 2; + +SQLite.PERM = 3; + +SQLite.ABORT = 4; + +SQLite.BUSY = 5; + +SQLite.LOCKED = 6; + +SQLite.NOMEM = 7; + +SQLite.READONLY = 8; + +SQLite.INTERRUPT = 9; + +SQLite.IOERR = 10; + +SQLite.CORRUPT = 11; + +SQLite.NOTFOUND = 12; + +SQLite.FULL = 13; + +SQLite.CANTOPEN = 14; + +SQLite.PROTOCOL = 15; + +SQLite.EMPTY = 16; + +SQLite.SCHEMA = 17; + +SQLite.TOOBIG = 18; + +SQLite.CONSTRAINT = 19; + +SQLite.MISMATCH = 20; + +SQLite.MISUSE = 21; + +SQLite.NOLFS = 22; + +SQLite.AUTH = 23; + +SQLite.FORMAT = 24; + +SQLite.RANGE = 25; + +SQLite.NOTADB = 26; + +SQLite.NOTICE = 27; + +SQLite.WARNING = 28; + +SQLite.ROW = 100; + +SQLite.DONE = 101; + +SQLite.INTEGER = 1; + +SQLite.FLOAT = 2; + +SQLite.TEXT = 3; + +SQLite.BLOB = 4; + +SQLite.NULL = 5; + return this['SQL']; })(); if (typeof module !== 'undefined') module.exports = SQL; diff --git a/js/sql-optimized.js b/js/sql-optimized.js new file mode 100644 index 00000000..3e6045fd --- /dev/null +++ b/js/sql-optimized.js @@ -0,0 +1,519 @@ +// This prevents pollution of the global namespace +var SQL = (function () { +function f(a){throw a;}var i=void 0,j=!0,k=null,l=!1;function n(){return function(){}}var q,r;r||(r=eval("(function() { try { return Module || {} } catch(e) { return {} } })()"));var aa={},ba;for(ba in r)r.hasOwnProperty(ba)&&(aa[ba]=r[ba]);var ca="object"===typeof process&&"function"===typeof require,da="object"===typeof window,ea="function"===typeof importScripts,fa=!da&&!ca&&!ea; +if(ca){r.print||(r.print=function(a){process.stdout.write(a+"\n")});r.printErr||(r.printErr=function(a){process.stderr.write(a+"\n")});var ga=require("fs"),ha=require("path");r.read=function(a,b){var a=ha.normalize(a),c=ga.readFileSync(a);!c&&a!=ha.resolve(a)&&(a=path.join(__dirname,"..","src",a),c=ga.readFileSync(a));c&&!b&&(c=c.toString());return c};r.readBinary=function(a){return r.read(a,j)};r.load=function(a){ia(read(a))};r.thisProgram=process.argv[1];r.arguments=process.argv.slice(2);module.exports= +r}else fa?(r.print||(r.print=print),"undefined"!=typeof printErr&&(r.printErr=printErr),r.read="undefined"!=typeof read?read:function(){f("no read() available (jsc?)")},r.readBinary=function(a){return read(a,"binary")},"undefined"!=typeof scriptArgs?r.arguments=scriptArgs:"undefined"!=typeof arguments&&(r.arguments=arguments),this.Module=r,eval("if (typeof gc === 'function' && gc.toString().indexOf('[native code]') > 0) var gc = undefined")):da||ea?(r.read=function(a){var b=new XMLHttpRequest;b.open("GET", +a,l);b.send(k);return b.responseText},"undefined"!=typeof arguments&&(r.arguments=arguments),"undefined"!==typeof console?(r.print||(r.print=function(a){console.log(a)}),r.printErr||(r.printErr=function(a){console.log(a)})):r.print||(r.print=n()),da?window.Module=r:r.load=importScripts):f("Unknown runtime environment. Where are we?");function ia(a){eval.call(k,a)}"undefined"==!r.load&&r.read&&(r.load=function(a){ia(r.read(a))});r.print||(r.print=n());r.printErr||(r.printErr=r.print); +r.arguments||(r.arguments=[]);r.print=r.print;r.oa=r.printErr;r.preRun=[];r.postRun=[];for(ba in aa)aa.hasOwnProperty(ba)&&(r[ba]=aa[ba]); +var u={de:function(a){ka=a},Ad:function(){return ka},Nb:function(){return s},Fc:function(a){s=a},Pg:function(a,b){b=b||4;return 1==b?a:isNumber(a)&&isNumber(b)?Math.ceil(a/b)*b:isNumber(b)&&isPowerOfTwo(b)?"((("+a+")+"+(b-1)+")&"+-b+")":"Math.ceil(("+a+")/"+b+")*"+b},Jd:function(a){return a in u.Tc||a in u.Qc},Kd:function(a){return"*"==a[a.length-1]},Ld:function(a){return isPointerType(a)?l:isArrayType(a)||/?/.test(a)?j:"%"==a[0]},Tc:{i1:0,i8:0,i16:0,i32:0,i64:0},Qc:{"float":0,"double":0}, +fh:function(a,b){return(a|0|b|0)+4294967296*(Math.round(a/4294967296)|Math.round(b/4294967296))},Lg:function(a,b){return((a|0)&(b|0))+4294967296*(Math.round(a/4294967296)&Math.round(b/4294967296))},lh:function(a,b){return((a|0)^(b|0))+4294967296*(Math.round(a/4294967296)^Math.round(b/4294967296))},Cb:function(a){switch(a){case "i1":case "i8":return 1;case "i16":return 2;case "i32":return 4;case "i64":return 8;case "float":return 4;case "double":return 8;default:return"*"===a[a.length-1]?u.ja:"i"=== +a[0]?(a=parseInt(a.substr(1)),v(0===a%8),a/8):0}},xd:function(a){return Math.max(u.Cb(a),u.ja)},od:function(a,b){var c={};return b?a.filter(function(a){return c[a[b]]?l:c[a[b]]=j}):a.filter(function(a){return c[a]?l:c[a]=j})},set:function(){for(var a="object"===typeof arguments[0]?arguments[0]:arguments,b={},c=0;c=na&&la("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+na+", (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.");return b},qa:function(a,b){return Math.ceil(a/(b?b:8))*(b?b:8)},ah:function(a, +b,c){return c?+(a>>>0)+4294967296*+(b>>>0):+(a>>>0)+4294967296*+(b|0)},Ga:8,ja:4,Eg:0};r.Runtime=u;u.addFunction=u.$c;u.removeFunction=u.Zd;var oa=l,pa,qa,ka;function v(a,b){a||la("Assertion failed: "+b)}function ra(a){var b=r["_"+a];if(!b)try{b=eval("_"+a)}catch(c){}v(b,"Cannot call unknown function "+a+" (perhaps LLVM optimizations or closure removed it?)");return b}var sa,ta; +(function(){function a(a){a=a.toString().match(e).slice(1);return{arguments:a[0],body:a[1],returnValue:a[2]}}var b=0,c={stackSave:function(){b=u.Nb()},stackRestore:function(){u.Fc(b)},arrayToC:function(a){var b=u.Ma(a.length);ua(a,b);return b},stringToC:function(a){var b=0;a!==k&&(a!==i&&0!==a)&&(b=u.Ma(a.length+1),va(a,b));return b}},d={string:c.stringToC,array:c.arrayToC};ta=function(a,e,g,h){var a=ra(a),B=[];if(h)for(var x=0;x>0]=b;break;case "i8":z[a>>0]=b;break;case "i16":xa[a>>1]=b;break;case "i32":C[a>>2]=b;break;case "i64":qa=[b>>>0,(pa=b,1<=+ya(pa)?0>>0:~~+Ba((pa-+(~~pa>>>0))/4294967296)>>>0:0)];C[a>>2]=qa[0];C[a+4>>2]=qa[1];break;case "float":Ca[a>>2]=b;break;case "double":Da[a>>3]=b;break;default:la("invalid type for setValue: "+c)}}r.setValue=wa; +function Ea(a,b){b=b||"i8";"*"===b.charAt(b.length-1)&&(b="i32");switch(b){case "i1":return z[a>>0];case "i8":return z[a>>0];case "i16":return xa[a>>1];case "i32":return C[a>>2];case "i64":return C[a>>2];case "float":return Ca[a>>2];case "double":return Da[a>>3];default:la("invalid type for setValue: "+b)}return k}r.getValue=Ea;var Fa=0,E=2,Ga=4;r.ALLOC_NORMAL=Fa;r.ALLOC_STACK=1;r.ALLOC_STATIC=E;r.ALLOC_DYNAMIC=3;r.ALLOC_NONE=Ga; +function F(a,b,c,d){var e,g;"number"===typeof a?(e=j,g=a):(e=l,g=a.length);var h="string"===typeof b?b:k,c=c==Ga?d:[Ha,u.Ma,u.Gc,u.Ia][c===i?E:c](Math.max(g,h?1:b.length));if(e){d=c;v(0==(c&3));for(a=c+(g&-4);d>2]=0;for(a=c+g;d>0]=0;return c}if("i8"===h)return a.subarray||a.slice?G.set(a,c):G.set(new Uint8Array(a),c),c;for(var d=0,m,t;d>0];if(128<=d)c=j;else if(0==d&&!b)break;e++;if(b&&e==b)break}b||(b=e);var g="";if(!c){for(;0>0],g+=c.Gb(d);return g}r.Pointer_stringify=w;r.UTF16ToString=function(a){for(var b=0,c="";;){var d=xa[a+2*b>>1];if(0==d)return c;++b;c+=String.fromCharCode(d)}}; +r.stringToUTF16=function(a,b){for(var c=0;c>1]=a.charCodeAt(c);xa[b+2*a.length>>1]=0};r.UTF32ToString=function(a){for(var b=0,c="";;){var d=C[a+4*b>>2];if(0==d)return c;++b;65536<=d?(d-=65536,c+=String.fromCharCode(55296|d>>10,56320|d&1023)):c+=String.fromCharCode(d)}};r.stringToUTF32=function(a,b){for(var c=0,d=0;d=e)var g=a.charCodeAt(++d),e=65536+((e&1023)<<10)|g&1023;C[b+4*c>>2]=e;++c}C[b+4*c>>2]=0}; +function Ia(a){function b(h,t,p){var t=t||Infinity,D="",B=[],x;if("N"===a[c]){c++;"K"===a[c]&&c++;for(x=[];"E"!==a[c];)if("S"===a[c]){c++;var A=a.indexOf("_",c);x.push(e[a.substring(c,A)||0]||"?");c=A+1}else if("C"===a[c])x.push(x[x.length-1]),c+=2;else{var A=parseInt(a.substr(c)),K=A.toString().length;if(!A||!K){c--;break}var ja=a.substr(c+K,A);x.push(ja);e.push(ja);c+=K+A}c++;x=x.join("::");t--;if(0===t)return h?[x]:x}else if(("K"===a[c]||g&&"L"===a[c])&&c++,A=parseInt(a.substr(c)))K=A.toString().length, +x=a.substr(c+K,A),c+=K+A;g=l;"I"===a[c]?(c++,A=b(j),K=b(j,1,j),D+=K[0]+" "+x+"<"+A.join(", ")+">"):D=x;a:for(;cRa?2*Ra:Ra+16777216;Ra!==na&&(r.oa("increasing TOTAL_MEMORY to "+Ra+" to be more reasonable"),na=Ra); +v("undefined"!==typeof Int32Array&&"undefined"!==typeof Float64Array&&!!(new Int32Array(1)).subarray&&!!(new Int32Array(1)).set,"JS engine does not provide full typed array support");var H=new ArrayBuffer(na);z=new Int8Array(H);xa=new Int16Array(H);C=new Int32Array(H);G=new Uint8Array(H);Ka=new Uint16Array(H);La=new Uint32Array(H);Ca=new Float32Array(H);Da=new Float64Array(H);C[0]=255;v(255===G[0]&&0===G[3],"Typed arrays 2 must be run on a little-endian system");r.HEAP=i;r.HEAP8=z;r.HEAP16=xa; +r.HEAP32=C;r.HEAPU8=G;r.HEAPU16=Ka;r.HEAPU32=La;r.HEAPF32=Ca;r.HEAPF64=Da;function Sa(a){for(;0>0]=a[c],c+=1}r.writeStringToMemory=va;function ua(a,b){for(var c=0;c>0]=a[c]}r.writeArrayToMemory=ua; +function ab(a,b,c){for(var d=0;d>0]=a.charCodeAt(d);c||(z[b+a.length>>0]=0)}r.writeAsciiToMemory=ab;if(!Math.imul||-5!==Math.imul(4294967295,5))Math.imul=function(a,b){var c=a&65535,d=b&65535;return c*d+((a>>>16)*d+c*(b>>>16)<<16)|0};Math.Wg=Math.imul;var ya=Math.abs,Ba=Math.ceil,Aa=Math.floor,za=Math.min,bb=0,cb=k,db=k;function eb(){bb++;r.monitorRunDependencies&&r.monitorRunDependencies(bb)}r.addRunDependency=eb; +function fb(){bb--;r.monitorRunDependencies&&r.monitorRunDependencies(bb);if(0==bb&&(cb!==k&&(clearInterval(cb),cb=k),db)){var a=db;db=k;a()}}r.removeRunDependency=fb;r.preloadedImages={};r.preloadedAudios={};Ma=8;ma=Ma+u.qa(46019);Ua.push(); +F([0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,99,104,97,114,97,99,116,101,114,0,0,0,0,0,0,0,83,69,76,69,67,84,32,102,116,115,51,95,116,111,107,101,110,105,122,101,114,40,63,44,32,63,41,0,0,0,0,0,51,46,56,46,53,0,0,0,83,81,76,73,84,69,95,0,96,177,0,0,112,177,0,0,128,177,0,0,144,177,0,0,160,177,0,0,184,177,0,0,200,177,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,10,10,10, +10,10,10,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,64,0,42,42,42,42,42,42,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,0,0,0,0,0,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64, +64,64,64,64,64,64,64,64,64,64,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64, +97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193, +194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,112,5,0,0,120,5,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,128,5,0,0,144,5,0,0,1,0,0,0,2,0,0,0,2,0, +0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,152,5,0,0,168,5,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,176,5,0,0,120,5,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,5,0,0,0,117,110,105,120,0,0,0,0,6,0,0,0, +0,0,0,0,117,110,105,120,45,110,111,110,101,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,117,110,105,120,45,100,111,116,102,105,108,101,0,0,0,0,8,0,0,0,0,0,0,0,117,110,105,120,45,101,120,99,108,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,1,0,0,0,0,0,0,0,4,5,3,5,1,5,1,5,2,5,2,5,1,5,1,5,4,5,3,5,1,5,1,5,2,5,2,5,1,5,1,5,115,116,114,105,110,103,32,111,114,32,98,108,111,98,32,116,111,111,32,98,105,103,0,0,140,0,0,0,52,0,0,0,53,0,0,0,31,1,1,1,67,0,10,1,46,0,0,1,35,1,0,0,16,0,4,0,58,0,0,0,24,0,0,0,99,97,110,110,111,116,32,111,112,101, +110,32,118,105,114,116,117,97,108,32,116,97,98,108,101,58,32,37,115,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,116,97,98,108,101,32,119,105,116,104,111,117,116,32,114,111,119,105,100,58,32,37,115,0,0,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,118,105,101,119,58,32,37,115,0,0,0,0,110,111,32,115,117,99,104,32,99,111,108,117,109,110,58,32,34,37,115,34,0,0,0,0,102,111,114,101,105,103,110,32,107,101,121,0,0,0,0,0,105,110,100,101,120,101,100,0,99,97,110,110,111,116,32,111,112,101,110,32,37, +115,32,99,111,108,117,109,110,32,102,111,114,32,119,114,105,116,105,110,103,0,0,0,0,0,0,0,37,115,0,0,0,0,0,0,42,63,91,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,4,3,2,5,0,0,0,116,114,105,103,103,101,114,0,116,101,109,112,0,0,0,0,50,48,49,52,45,48,54,45,48,52,32,49,52,58,48,54,58,51,52,32,98,49,101,100,52,102,50,97,51,52,98,97,54,54,99,50,57,98,49,51,48,102,56,100,49,51,101,57,48,57,50,55,53,56,48,49,57,50,49,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,100,97,116,97,98,97,115,101,58,32,37,115,0,0,0,0,0,202,154,59,0,202,154,59,208,7,0,0,232,3,0,0,244,1,0,0,168,97,0,0,127,0,0,0,10,0,0,0,80,195,0,0,231,3,0,0,232,3,0,0,0,0,0,0,57,50,50,51,51,55,50,48,51,54,56,53,52,55,55,53,56,48,0,0,0,0,0,0,111,110,111,102,102,97,108,115,101,121,101,115,116,114,117,101,102,117,108,108,0,0,0,0,0,1,2,4,9,12, +16,0,2,2,3,5,3,4,4,0,1,0,0,0,1,1,2,0,82,69,73,78,68,69,88,69,68,69,83,67,65,80,69,65,67,72,69,67,75,69,89,66,69,70,79,82,69,73,71,78,79,82,69,71,69,88,80,76,65,73,78,83,84,69,65,68,68,65,84,65,66,65,83,69,76,69,67,84,65,66,76,69,70,84,72,69,78,68,69,70,69,82,82,65,66,76,69,76,83,69,88,67,69,80,84,82,65,78,83,65,67,84,73,79,78,65,84,85,82,65,76,84,69,82,65,73,83,69,88,67,76,85,83,73,86,69,88,73,83,84,83,65,86,69,80,79,73,78,84,69,82,83,69,67,84,82,73,71,71,69,82,69,70,69,82,69,78,67,69,83,67,79,78, +83,84,82,65,73,78,84,79,70,70,83,69,84,69,77,80,79,82,65,82,89,85,78,73,81,85,69,82,89,87,73,84,72,79,85,84,69,82,69,76,69,65,83,69,65,84,84,65,67,72,65,86,73,78,71,82,79,85,80,68,65,84,69,66,69,71,73,78,78,69,82,69,67,85,82,83,73,86,69,66,69,84,87,69,69,78,79,84,78,85,76,76,73,75,69,67,65,83,67,65,68,69,76,69,84,69,67,65,83,69,67,79,76,76,65,84,69,67,82,69,65,84,69,67,85,82,82,69,78,84,95,68,65,84,69,68,69,84,65,67,72,73,77,77,69,68,73,65,84,69,74,79,73,78,83,69,82,84,77,65,84,67,72,80,76,65,78, +65,76,89,90,69,80,82,65,71,77,65,66,79,82,84,86,65,76,85,69,83,86,73,82,84,85,65,76,73,77,73,84,87,72,69,78,87,72,69,82,69,78,65,77,69,65,70,84,69,82,69,80,76,65,67,69,65,78,68,69,70,65,85,76,84,65,85,84,79,73,78,67,82,69,77,69,78,84,67,65,83,84,67,79,76,85,77,78,67,79,77,77,73,84,67,79,78,70,76,73,67,84,67,82,79,83,83,67,85,82,82,69,78,84,95,84,73,77,69,83,84,65,77,80,82,73,77,65,82,89,68,69,70,69,82,82,69,68,73,83,84,73,78,67,84,68,82,79,80,70,65,73,76,70,82,79,77,70,85,76,76,71,76,79,66,89,73, +70,73,83,78,85,76,76,79,82,68,69,82,69,83,84,82,73,67,84,82,73,71,72,84,82,79,76,76,66,65,67,75,82,79,87,85,78,73,79,78,85,83,73,78,71,86,65,67,85,85,77,86,73,69,87,73,78,73,84,73,65,76,76,89,0,0,0,0,0,0,0,76,105,117,74,0,45,0,0,82,0,77,0,0,42,12,78,15,0,116,85,54,112,0,19,0,0,121,0,119,115,0,22,93,0,9,0,0,70,71,0,69,6,0,48,90,102,0,118,101,0,0,44,0,103,24,0,17,0,122,53,23,0,5,110,25,96,0,0,124,106,60,123,57,28,55,0,91,0,100,26,0,99,0,0,0,95,92,97,88,109,14,39,108,0,81,0,18,89,111,32,0,120,80,113, +62,46,84,0,0,94,40,59,114,0,36,0,0,29,0,86,63,64,0,20,61,0,56,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,13,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,33,0,21,0,0,0,0,0,50,0,43,3,47,0,0,0,0,30,0,58,0,38,0,0,0,1,66,0,0,67,0,41,0,0,0,0,0,0,49,65,0,0,0,0,31,52,16,34,10,0,0,0,0,0,0,0,11,72,79,0,8,0,104,98,0,107,0,87,0,75,51,0,27,37,73,83,0,35,68,0,0,0,0,0,0,7,7,5,4,6,4,5,3,6,7,3,6,6,7,7,3,8,2,6,5,4,4,3,10,4,6,11,6,2,7,5,5,9,6,9,9,7,10,10,4,6,2,3,9,4,2,6,5,7,4,5,7,6,6,5,6,5,5,9,7,7,3,2,4,4,7,3,6,4,7,6, +12,6,9,4,6,5,4,7,6,5,6,7,5,4,5,6,5,7,3,7,13,2,2,4,6,6,8,5,17,12,7,8,8,2,4,4,4,4,4,2,2,6,5,8,5,8,3,5,5,6,4,9,3,0,0,0,0,0,0,2,0,2,0,8,0,9,0,14,0,16,0,20,0,23,0,25,0,25,0,29,0,33,0,36,0,41,0,46,0,48,0,53,0,54,0,59,0,62,0,65,0,67,0,69,0,78,0,81,0,86,0,91,0,95,0,96,0,101,0,105,0,109,0,117,0,122,0,128,0,136,0,142,0,152,0,159,0,162,0,162,0,165,0,167,0,167,0,171,0,176,0,179,0,184,0,184,0,188,0,192,0,199,0,204,0,209,0,212,0,218,0,221,0,225,0,234,0,240,0,240,0,240,0,243,0,246,0,250,0,251,0,255,0,5,1,9,1,16, +1,22,1,34,1,40,1,49,1,51,1,57,1,62,1,64,1,71,1,76,1,81,1,87,1,93,1,98,1,102,1,105,1,111,1,115,1,122,1,124,1,131,1,133,1,135,1,144,1,148,1,154,1,160,1,168,1,173,1,173,1,189,1,196,1,203,1,204,1,211,1,215,1,219,1,223,1,227,1,230,1,232,1,234,1,240,1,244,1,252,1,1,2,9,2,12,2,17,2,22,2,28,2,32,2,37,2,67,28,140,42,84,44,104,53,35,113,46,47,50,2,49,142,41,24,119,16,98,138,11,112,139,117,6,30,107,98,141,57,9,20,13,118,62,105,99,131,55,54,111,21,21,71,103,3,25,66,98,14,34,128,127,110,5,98,58,74,77,19,52,101, +50,37,33,109,136,95,17,69,43,8,124,108,51,4,32,56,29,120,65,129,137,130,68,31,59,72,100,106,15,75,38,39,10,40,98,69,69,102,7,121,73,114,45,123,98,50,36,18,76,126,60,98,12,61,115,125,63,64,48,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,109,105,115,117,115,101,32,97,116,32,108,105,110,101,32,37,100,32,111,102,32,91,37,46,49,48,115,93,0,0,0,0,117,110,97,98,108,101,32,116,111, +32,100,101,108,101,116,101,47,109,111,100,105,102,121,32,99,111,108,108,97,116,105,111,110,32,115,101,113,117,101,110,99,101,32,100,117,101,32,116,111,32,97,99,116,105,118,101,32,115,116,97,116,101,109,101,110,116,115,0,0,0,0,0,66,73,78,65,82,89,0,0,82,84,82,73,77,0,0,0,78,79,67,65,83,69,0,0,109,97,105,110,0,0,0,0,115,105,109,112,108,101,0,0,112,111,114,116,101,114,0,0,102,116,115,51,95,116,111,107,101,110,105,122,101,114,0,0,115,110,105,112,112,101,116,0,111,102,102,115,101,116,115,0,109,97,116, +99,104,105,110,102,111,0,0,0,0,0,0,0,111,112,116,105,109,105,122,101,0,0,0,0,0,0,0,0,102,116,115,51,0,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,9,0,0,0,3,0,0,0,4,0,0,0,10,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,7,0,0,0,6,0,0,0,11,0,0,0,4,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,3,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,102,116,115,52,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,16,0,0,0,12,0,0,0,12,0,0,0,17,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,15,0,0,0,7,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102,116,115,51,116,111,107,101,110,105,122,101,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,120,40,105,110,112,117,116,44,32,116,111,107,101,110,44,32,115,116,97,114,116,44,32,101,110,100,44,32,112,111,115,105,116,105,111,110,41,0,0,0,0,0,0,117,110,107,110,111,119,110,32,116,111,107,101,110,105,122,101,114,58,32,37,115,0,0,0,65,76,84,69,82,32,84,65,66,76,69,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,32,32,82,69,78,65,77,69,32,84,79,32,39,37,113,95,99,111, +110,116,101,110,116,39,59,0,0,0,0,65,76,84,69,82,32,84,65,66,76,69,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,32,32,82,69,78,65,77,69,32,84,79,32,39,37,113,95,100,111,99,115,105,122,101,39,59,0,0,0,0,65,76,84,69,82,32,84,65,66,76,69,32,37,81,46,39,37,113,95,115,116,97,116,39,32,32,82,69,78,65,77,69,32,84,79,32,39,37,113,95,115,116,97,116,39,59,0,0,65,76,84,69,82,32,84,65,66,76,69,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,32,82,69,78,65,77,69,32,84,79,32,39,37,113,95, +115,101,103,109,101,110,116,115,39,59,0,0,0,65,76,84,69,82,32,84,65,66,76,69,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,32,32,82,69,78,65,77,69,32,84,79,32,39,37,113,95,115,101,103,100,105,114,39,59,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,32,87,72,69,82,69,32,114,111,119,105,100,32,61,32,63,0,0,0,0,0,83,69,76,69,67,84,32,78,79,84,32,69,88,73,83,84,83,40,83,69,76,69,67,84,32,100,111,99,105,100,32,70,82,79,77,32,37,81,46,39,37,113, +95,99,111,110,116,101,110,116,39,32,87,72,69,82,69,32,114,111,119,105,100,33,61,63,41,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,0,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,0,0,0,0,0,68,69,76,69, +84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,116,97,116,39,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,37,115,32,87,72,69,82,69,32,114,111,119,105,100,61,63,0,83,69,76,69,67,84,32,40,83,69,76,69,67,84,32,109,97,120,40,105,100,120,41,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,41,32,43,32,49,0,0,0,0,0,0,0,0,82,69,80,76,65,67,69,32,73,78,84,79,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,40,98,108,111,99,107,105, +100,44,32,98,108,111,99,107,41,32,86,65,76,85,69,83,40,63,44,32,63,41,0,0,0,0,0,0,83,69,76,69,67,84,32,99,111,97,108,101,115,99,101,40,40,83,69,76,69,67,84,32,109,97,120,40,98,108,111,99,107,105,100,41,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,41,32,43,32,49,44,32,49,41,0,0,0,0,0,82,69,80,76,65,67,69,32,73,78,84,79,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,86,65,76,85,69,83,40,63,44,63,44,63,44,63,44,63,44,63,41,0,83,69,76,69,67,84,32,105,100,120,44,32, +115,116,97,114,116,95,98,108,111,99,107,44,32,108,101,97,118,101,115,95,101,110,100,95,98,108,111,99,107,44,32,101,110,100,95,98,108,111,99,107,44,32,114,111,111,116,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,32,79,82,68,69,82,32,66,89,32,105,100,120,32,65,83,67,0,83,69,76,69,67,84,32,105,100,120,44,32,115,116,97,114,116,95,98,108,111,99,107,44,32,108,101,97,118,101,115,95,101,110,100,95,98,108,111,99,107,44,32,101,110,100, +95,98,108,111,99,107,44,32,114,111,111,116,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,66,69,84,87,69,69,78,32,63,32,65,78,68,32,63,79,82,68,69,82,32,66,89,32,108,101,118,101,108,32,68,69,83,67,44,32,105,100,120,32,65,83,67,0,0,83,69,76,69,67,84,32,99,111,117,110,116,40,42,41,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,0,0,0,0,0,83,69,76,69,67,84,32,109,97, +120,40,108,101,118,101,108,41,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,66,69,84,87,69,69,78,32,63,32,65,78,68,32,63,0,0,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,0,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,32,87,72,69,82,69,32,98,108,111,99,107,105,100,32,66,69,84, +87,69,69,78,32,63,32,65,78,68,32,63,0,0,0,0,0,0,73,78,83,69,82,84,32,73,78,84,79,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,32,86,65,76,85,69,83,40,37,115,41,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,32,87,72,69,82,69,32,100,111,99,105,100,32,61,32,63,0,0,0,0,0,82,69,80,76,65,67,69,32,73,78,84,79,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,32,86,65,76,85,69,83,40,63,44,63,41,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,115,105,122,101, +32,70,82,79,77,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,32,87,72,69,82,69,32,100,111,99,105,100,61,63,0,0,83,69,76,69,67,84,32,118,97,108,117,101,32,70,82,79,77,32,37,81,46,39,37,113,95,115,116,97,116,39,32,87,72,69,82,69,32,105,100,61,63,0,0,0,0,0,0,0,82,69,80,76,65,67,69,32,73,78,84,79,32,37,81,46,39,37,113,95,115,116,97,116,39,32,86,65,76,85,69,83,40,63,44,63,41,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101, +118,101,108,32,66,69,84,87,69,69,78,32,63,32,65,78,68,32,63,0,0,83,69,76,69,67,84,32,68,73,83,84,73,78,67,84,32,108,101,118,101,108,32,47,32,40,49,48,50,52,32,42,32,63,41,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,0,0,83,69,76,69,67,84,32,108,101,118,101,108,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,71,82,79,85,80,32,66,89,32,108,101,118,101,108,32,72,65,86,73,78,71,32,99,111,117,110,116,40,42,41,62,61,63,32,32,79,82,68,69,82,32,66,89,32,40,108, +101,118,101,108,32,37,37,32,49,48,50,52,41,32,65,83,67,32,76,73,77,73,84,32,49,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,50,32,42,32,116,111,116,97,108,40,49,32,43,32,108,101,97,118,101,115,95,101,110,100,95,98,108,111,99,107,32,45,32,115,116,97,114,116,95,98,108,111,99,107,41,32,32,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,32,65,78,68,32,105,100,120,32,60,32,63,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115, +101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,32,65,78,68,32,105,100,120,32,61,32,63,0,0,85,80,68,65,84,69,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,83,69,84,32,105,100,120,32,61,32,63,32,87,72,69,82,69,32,108,101,118,101,108,61,63,32,65,78,68,32,105,100,120,61,63,0,0,0,0,0,0,0,83,69,76,69,67,84,32,105,100,120,44,32,115,116,97,114,116,95,98,108,111,99,107,44,32,108,101,97,118,101,115,95,101,110,100,95,98,108,111,99,107,44,32,101,110,100,95,98,108,111,99, +107,44,32,114,111,111,116,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,32,65,78,68,32,105,100,120,32,61,32,63,0,0,0,0,0,0,85,80,68,65,84,69,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,83,69,84,32,115,116,97,114,116,95,98,108,111,99,107,32,61,32,63,44,32,114,111,111,116,32,61,32,63,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,32,65,78,68,32,105,100,120,32,61,32,63,0,0,83,69,76,69,67,84,32,49,32,70,82,79,77,32, +37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,32,87,72,69,82,69,32,98,108,111,99,107,105,100,61,63,32,65,78,68,32,98,108,111,99,107,32,73,83,32,78,85,76,76,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,105,100,120,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,61,63,32,79,82,68,69,82,32,66,89,32,49,32,65,83,67,0,0,0,0,0,83,69,76,69,67,84,32,109,97,120,40,32,108,101,118,101,108,32,37,37,32,49,48,50,52,32,41,32,70,82,79,77,32,37,81,46,39, +37,113,95,115,101,103,100,105,114,39,0,83,69,76,69,67,84,32,108,101,118,101,108,44,32,105,100,120,44,32,101,110,100,95,98,108,111,99,107,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,66,69,84,87,69,69,78,32,63,32,65,78,68,32,63,32,79,82,68,69,82,32,66,89,32,108,101,118,101,108,32,68,69,83,67,44,32,105,100,120,32,65,83,67,0,0,0,0,0,0,0,85,80,68,65,84,69,32,79,82,32,70,65,73,76,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,83, +69,84,32,108,101,118,101,108,61,45,49,44,105,100,120,61,63,32,87,72,69,82,69,32,108,101,118,101,108,61,63,32,65,78,68,32,105,100,120,61,63,0,0,0,0,0,0,0,0,85,80,68,65,84,69,32,79,82,32,70,65,73,76,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,83,69,84,32,108,101,118,101,108,61,63,32,87,72,69,82,69,32,108,101,118,101,108,61,45,49,0,0,0,0,0,0,0,0,232,16,0,0,24,17,0,0,96,17,0,0,128,17,0,0,160,17,0,0,192,17,0,0,224,17,0,0,0,18,0,0,24,18,0,0,96,18,0,0,160,18,0,0,232,18,0,0,24,19,0,0,136,19,0, +0,16,20,0,0,72,20,0,0,144,20,0,0,192,20,0,0,0,21,0,0,40,21,0,0,88,21,0,0,136,21,0,0,184,21,0,0,232,21,0,0,248,6,0,0,248,6,0,0,16,22,0,0,72,22,0,0,128,22,0,0,240,22,0,0,88,23,0,0,144,23,0,0,208,23,0,0,64,24,0,0,144,24,0,0,216,24,0,0,24,25,0,0,72,25,0,0,184,25,0,0,8,26,0,0,37,108,108,100,32,37,108,108,100,0,0,0,0,0,0,0,37,115,95,115,101,103,109,101,110,116,115,0,0,0,0,0,98,108,111,99,107,0,0,0,83,69,76,69,67,84,32,49,32,70,82,79,77,32,37,81,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87, +72,69,82,69,32,116,98,108,95,110,97,109,101,61,39,37,113,95,115,116,97,116,39,0,120,14,0,0,1,0,0,0,128,14,0,0,2,0,0,0,152,14,0,0,3,0,0,0,136,14,0,0,4,0,0,0,112,99,120,0,0,0,0,0,83,69,76,69,67,84,32,37,115,32,87,72,69,82,69,32,114,111,119,105,100,32,61,32,63,0,0,0,0,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,109,97,116,99,104,105,110,102,111,32,114,101,113,117,101,115,116,58,32,37,99,0,0,0,0,0,0,105,108,108,101,103,97,108,32,102,105,114,115,116,32,97,114,103,117,109,101,110,116,32,116, +111,32,37,115,0,0,0,0,73,110,100,101,120,32,111,112,116,105,109,105,122,101,100,0,73,110,100,101,120,32,97,108,114,101,97,100,121,32,111,112,116,105,109,97,108,0,0,0,83,65,86,69,80,79,73,78,84,32,102,116,115,51,0,0,82,69,76,69,65,83,69,32,102,116,115,51,0,0,0,0,82,79,76,76,66,65,67,75,32,84,79,32,102,116,115,51,0,0,0,0,0,0,0,0,37,100,32,37,100,32,37,100,32,37,100,32,0,0,0,0,60,98,62,0,0,0,0,0,60,47,98,62,0,0,0,0,60,98,62,46,46,46,60,47,98,62,0,0,0,0,0,0,119,114,111,110,103,32,110,117,109,98,101,114, +32,111,102,32,97,114,103,117,109,101,110,116,115,32,116,111,32,102,117,110,99,116,105,111,110,32,115,110,105,112,112,101,116,40,41,0,114,101,98,117,105,108,100,0,105,110,116,101,103,114,105,116,121,45,99,104,101,99,107,0,109,101,114,103,101,61,0,0,97,117,116,111,109,101,114,103,101,61,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,73,70,32,78,79,84,32,69,88,73,83,84,83,32,37,81,46,39,37,113,95,115,116,97,116,39,40,105,100,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,44,32,118,97, +108,117,101,32,66,76,79,66,41,59,0,0,0,0,83,69,76,69,67,84,32,37,115,0,0,0,0,0,0,0,83,69,76,69,67,84,32,37,115,32,79,82,68,69,82,32,66,89,32,114,111,119,105,100,32,37,115,0,0,0,0,0,68,69,83,67,0,0,0,0,65,83,67,0,0,0,0,0,70,84,83,32,101,120,112,114,101,115,115,105,111,110,32,116,114,101,101,32,105,115,32,116,111,111,32,108,97,114,103,101,32,40,109,97,120,105,109,117,109,32,100,101,112,116,104,32,37,100,41,0,0,0,0,0,109,97,108,102,111,114,109,101,100,32,77,65,84,67,72,32,101,120,112,114,101,115,115, +105,111,110,58,32,91,37,115,93,0,0,0,0,0,0,0,0,216,29,0,0,2,0,4,0,224,29,0,0,3,1,3,0,232,29,0,0,3,1,2,0,240,29,0,0,4,0,1,0,79,82,0,0,0,0,0,0,65,78,68,0,0,0,0,0,78,79,84,0,0,0,0,0,78,69,65,82,0,0,0,0,68,82,79,80,32,84,65,66,76,69,32,73,70,32,69,88,73,83,84,83,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,0,0,0,0,68,82,79,80,32,84,65,66,76,69,32,73,70,32,69,88,73,83,84,83,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,0,0,0,68,82,79,80,32,84,65,66,76,69,32,73,70,32,69,88,73,83, +84,83,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,0,0,0,0,0,68,82,79,80,32,84,65,66,76,69,32,73,70,32,69,88,73,83,84,83,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,0,0,0,0,68,82,79,80,32,84,65,66,76,69,32,73,70,32,69,88,73,83,84,83,32,37,81,46,39,37,113,95,115,116,97,116,39,0,0,0,0,0,0,0,116,111,107,101,110,105,122,101,0,0,0,0,0,0,0,0,112,114,101,102,105,120,0,0,99,111,109,112,114,101,115,115,0,0,0,0,0,0,0,0,117,110,99,111,109,112,114,101,115,115,0,0,0,0,0,0,111,114,100,101,114, +0,0,0,99,111,110,116,101,110,116,0,108,97,110,103,117,97,103,101,105,100,0,0,0,0,0,0,110,111,116,105,110,100,101,120,101,100,0,0,0,0,0,0,136,14,0,0,9,0,0,0,208,30,0,0,6,0,0,0,216,30,0,0,8,0,0,0,232,30,0,0,10,0,0,0,248,30,0,0,5,0,0,0,0,31,0,0,7,0,0,0,8,31,0,0,10,0,0,0,24,31,0,0,10,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,112,97,114,97,109,101,116,101,114,58,32,37,115,0,0,0,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,109,97,116,99,104,105,110,102,111,58,32,37,115,0,0,0,0, +0,0,97,115,99,0,0,0,0,0,100,101,115,99,0,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,111,114,100,101,114,58,32,37,115,0,0,101,114,114,111,114,32,112,97,114,115,105,110,103,32,112,114,101,102,105,120,32,112,97,114,97,109,101,116,101,114,58,32,37,115,0,0,0,0,0,0,110,111,32,115,117,99,104,32,99,111,108,117,109,110,58,32,37,115,0,0,0,0,0,0,109,105,115,115,105,110,103,32,37,115,32,112,97,114,97,109,101,116,101,114,32,105,110,32,102,116,115,52,32,99,111,110,115,116,114,117,99,116,111,114,0, +0,0,0,0,0,0,0,95,95,108,97,110,103,105,100,0,0,0,0,0,0,0,0,37,81,44,32,0,0,0,0,37,122,37,81,44,32,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,120,40,37,115,32,37,81,32,72,73,68,68,69,78,44,32,100,111,99,105,100,32,72,73,68,68,69,78,44,32,37,81,32,72,73,68,68,69,78,41,0,0,0,80,82,65,71,77,65,32,37,81,46,112,97,103,101,95,115,105,122,101,0,0,0,0,0,100,111,99,105,100,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,0,0,0,0,0,0,0,37,122,44,32,39,99,37,100,37,113,39,0,0,0,0,0,37,122,44,32,108, +97,110,103,105,100,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,40,37,115,41,0,0,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,40,98,108,111,99,107,105,100,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,44,32,98,108,111,99,107,32,66,76,79,66,41,59,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,40,108,101,118,101,108,32,73,78, +84,69,71,69,82,44,105,100,120,32,73,78,84,69,71,69,82,44,115,116,97,114,116,95,98,108,111,99,107,32,73,78,84,69,71,69,82,44,108,101,97,118,101,115,95,101,110,100,95,98,108,111,99,107,32,73,78,84,69,71,69,82,44,101,110,100,95,98,108,111,99,107,32,73,78,84,69,71,69,82,44,114,111,111,116,32,66,76,79,66,44,80,82,73,77,65,82,89,32,75,69,89,40,108,101,118,101,108,44,32,105,100,120,41,41,59,0,0,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,40,100, +111,99,105,100,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,44,32,115,105,122,101,32,66,76,79,66,41,59,0,0,0,0,0,63,0,0,0,0,0,0,0,44,37,115,40,63,41,0,0,44,32,63,0,0,0,0,0,37,115,37,115,0,0,0,0,100,111,99,105,100,0,0,0,44,37,115,40,120,46,39,99,37,100,37,113,39,41,0,0,44,32,120,46,37,81,0,0,108,97,110,103,105,100,0,0,114,111,119,105,100,0,0,0,44,32,120,46,39,37,113,39,0,0,0,0,0,0,0,0,32,70,82,79,77,32,39,37,113,39,46,39,37,113,37,115,39,32,65,83,32,120,0,0,95,99,111,110,116,101,110, +116,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,42,32,70,82,79,77,32,37,81,46,37,81,0,0,0,0,0,117,110,107,110,111,119,110,32,116,111,107,101,110,105,122,101,114,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,97,114,103,117,109,101,110,116,32,116,121,112,101,32,109,105,115,109,97,116,99, +104,0,0,111,117,116,32,111,102,32,109,101,109,111,114,121,0,0,0,0,0,0,0,8,0,0,0,16,0,0,0,5,0,0,0,17,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,115,101,115,115,0,0,0,0,115,115,0,0,0,0,0,0,115,101,105,0,0,0,0,0,105,0,0,0,0,0,0,0,100,101,101,0,0,0,0,0,101,101,0,0,0,0,0,0,103,110,105,0,0,0,0,0,100,101,0,0,0,0,0,0,116,97,0,0,0,0,0,0,97,116,101,0,0,0,0,0,108, +98,0,0,0,0,0,0,98,108,101,0,0,0,0,0,122,105,0,0,0,0,0,0,105,122,101,0,0,0,0,0,108,97,110,111,105,116,97,0,108,97,110,111,105,116,0,0,116,105,111,110,0,0,0,0,105,99,110,101,0,0,0,0,101,110,99,101,0,0,0,0,105,99,110,97,0,0,0,0,97,110,99,101,0,0,0,0,114,101,122,105,0,0,0,0,105,103,111,108,0,0,0,0,108,111,103,0,0,0,0,0,105,108,98,0,0,0,0,0,105,108,108,97,0,0,0,0,97,108,0,0,0,0,0,0,105,108,116,110,101,0,0,0,101,110,116,0,0,0,0,0,105,108,101,0,0,0,0,0,101,0,0,0,0,0,0,0,105,108,115,117,111,0,0,0,111,117, +115,0,0,0,0,0,110,111,105,116,97,122,105,0,110,111,105,116,97,0,0,0,114,111,116,97,0,0,0,0,109,115,105,108,97,0,0,0,115,115,101,110,101,118,105,0,105,118,101,0,0,0,0,0,115,115,101,110,108,117,102,0,102,117,108,0,0,0,0,0,115,115,101,110,115,117,111,0,105,116,105,108,97,0,0,0,105,116,105,118,105,0,0,0,105,116,105,108,105,98,0,0,101,116,97,99,105,0,0,0,105,99,0,0,0,0,0,0,101,118,105,116,97,0,0,0,101,122,105,108,97,0,0,0,105,116,105,99,105,0,0,0,108,97,99,105,0,0,0,0,108,117,102,0,0,0,0,0,115,115,101, +110,0,0,0,0,116,110,101,109,101,0,0,0,116,110,101,109,0,0,0,0,116,110,101,0,0,0,0,0,110,111,105,0,0,0,0,0,101,116,97,0,0,0,0,0,105,116,105,0,0,0,0,0,0,1,1,1,0,1,1,1,0,1,1,1,1,1,0,1,1,1,1,1,0,1,1,1,2,1,0,0,0,0,0,0,0,0,0,0,9,0,0,0,18,0,0,0,6,0,0,0,19,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,7,0,0,0,19,0,0,0,20,0,0,0,20,0,0,0,20,0,0,0,21,0,0,0,5,0,0,0,22,0,0,0,23,0,0,0,10,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102,116,115,52,97,117, +120,0,42,0,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,120,40,116,101,114,109,44,32,99,111,108,44,32,100,111,99,117,109,101,110,116,115,44,32,111,99,99,117,114,114,101,110,99,101,115,44,32,108,97,110,103,117,97,103,101,105,100,32,72,73,68,68,69,78,41,0,0,0,0,105,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,115,32,116,111,32,102,116,115,52,97,117,120,32,99,111,110,115,116,114,117,99,116,111,114],"i8",Ga,u.Ga); +F([97,117,116,111,109,97,116,105,99,32,101,120,116,101,110,115,105,111,110,32,108,111,97,100,105,110,103,32,102,97,105,108,101,100,58,32,37,115,0,0,77,65,84,67,72,0,0,0,58,109,101,109,111,114,121,58,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,24,0,0,0,6,0,0,0,7,0,0,0,11,0,0,0,22,0,0,0,23,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,101,99,111,118,101,114,101,100,32,37,100, +32,112,97,103,101,115,32,102,114,111,109,32,37,115,0,0,0,0,0,0,217,213,5,249,32,161,99,215,100,97,116,97,98,97,115,101,32,99,111,114,114,117,112,116,105,111,110,32,97,116,32,108,105,110,101,32,37,100,32,111,102,32,91,37,46,49,48,115,93,0,0,0,0,0,0,0,99,97,110,110,111,116,32,108,105,109,105,116,32,87,65,76,32,115,105,122,101,58,32,37,115,0,0,0,0,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,102,105,108,101,32,97,116,32,108,105,110,101,32,37,100,32,111,102,32,91,37,46,49,48,115,93,0,0,114,101,99, +111,118,101,114,101,100,32,37,100,32,102,114,97,109,101,115,32,102,114,111,109,32,87,65,76,32,102,105,108,101,32,37,115,0,0,0,0,45,106,111,117,114,110,97,108,0,0,0,0,0,0,0,0,45,119,97,108,0,0,0,0,110,111,108,111,99,107,0,0,105,109,109,117,116,97,98,108,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102,105,108,101,58,0,0,0,108,111,99,97,108,104,111,115,116,0,0,0,0,0,0,0,105,110,118,97,108,105,100,32,117,114,105,32,97,117,116,104,111,114,105,116,121,58,32,37,46,42,115,0,0,0,0,0,118,102,115,0,0,0,0,0,99,97,99,104, +101,0,0,0,48,44,0,0,0,0,2,0,56,44,0,0,0,0,4,0,0,0,0,0,0,0,0,0,115,104,97,114,101,100,0,0,112,114,105,118,97,116,101,0,109,111,100,101,0,0,0,0,112,44,0,0,1,0,0,0,120,44,0,0,2,0,0,0,128,44,0,0,6,0,0,0,136,44,0,0,128,0,0,0,0,0,0,0,0,0,0,0,114,111,0,0,0,0,0,0,114,119,0,0,0,0,0,0,114,119,99,0,0,0,0,0,109,101,109,111,114,121,0,0,97,99,99,101,115,115,0,0,110,111,32,115,117,99,104,32,37,115,32,109,111,100,101,58,32,37,115,0,0,0,0,0,37,115,32,109,111,100,101,32,110,111,116,32,97,108,108,111,119,101,100,58, +32,37,115,0,110,111,32,115,117,99,104,32,118,102,115,58,32,37,115,0,105,110,118,97,108,105,100,0,65,80,73,32,99,97,108,108,32,119,105,116,104,32,37,115,32,100,97,116,97,98,97,115,101,32,99,111,110,110,101,99,116,105,111,110,32,112,111,105,110,116,101,114,0,0,0,0,117,110,97,98,108,101,32,116,111,32,117,115,101,32,102,117,110,99,116,105,111,110,32,37,115,32,105,110,32,116,104,101,32,114,101,113,117,101,115,116,101,100,32,99,111,110,116,101,120,116,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16, +17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,0,1,2,3,4,5,6,7,0,1,2,3,0,1,0,0,117,110,97,98,108,101,32,116,111,32,100,101,108,101,116,101,47,109,111,100,105,102,121,32,117,115,101,114,45,102,117,110,99,116,105,111,110,32,100,117,101,32,116,111,32,97,99,116,105,118,101,32,115,116,97,116,101,109,101,110,116,115,0,0,56,46,0,0,72,46,0,0,0,0,0,0,112,46,0,0,144,46,0,0,176,46,0,0,200,46,0,0,152,35,0,0,232,46,0,0,16,47,0,0,32,47,0,0,48,47,0,0,88,47,0,0,112,47,0,0,144, +47,0,0,176,47,0,0,200,47,0,0,224,47,0,0,240,5,0,0,0,48,0,0,24,48,0,0,48,48,0,0,88,48,0,0,120,48,0,0,144,48,0,0,176,48,0,0,216,48,0,0,0,0,0,0,110,111,116,32,97,110,32,101,114,114,111,114,0,0,0,0,83,81,76,32,108,111,103,105,99,32,101,114,114,111,114,32,111,114,32,109,105,115,115,105,110,103,32,100,97,116,97,98,97,115,101,0,0,0,0,0,97,99,99,101,115,115,32,112,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,0,0,0,0,0,0,0,99,97,108,108,98,97,99,107,32,114,101,113,117,101,115,116,101,100, +32,113,117,101,114,121,32,97,98,111,114,116,0,0,100,97,116,97,98,97,115,101,32,105,115,32,108,111,99,107,101,100,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,116,97,98,108,101,32,105,115,32,108,111,99,107,101,100,0,0,0,0,0,0,0,0,97,116,116,101,109,112,116,32,116,111,32,119,114,105,116,101,32,97,32,114,101,97,100,111,110,108,121,32,100,97,116,97,98,97,115,101,0,0,0,0,105,110,116,101,114,114,117,112,116,101,100,0,0,0,0,0,100,105,115,107,32,73,47,79,32,101,114,114,111,114,0,0,100,97,116,97,98,97,115,101, +32,100,105,115,107,32,105,109,97,103,101,32,105,115,32,109,97,108,102,111,114,109,101,100,0,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,111,112,101,114,97,116,105,111,110,0,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,111,114,32,100,105,115,107,32,105,115,32,102,117,108,108,0,0,0,0,0,0,0,0,117,110,97,98,108,101,32,116,111,32,111,112,101,110,32,100,97,116,97,98,97,115,101,32,102,105,108,101,0,0,0,0,108,111,99,107,105,110,103,32,112,114,111,116,111,99,111,108,0,0,0,0,0,0,0,0,116,97,98,108,101,32,99, +111,110,116,97,105,110,115,32,110,111,32,100,97,116,97,0,0,100,97,116,97,98,97,115,101,32,115,99,104,101,109,97,32,104,97,115,32,99,104,97,110,103,101,100,0,0,0,0,0,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,0,0,0,0,0,0,0,100,97,116,97,116,121,112,101,32,109,105,115,109,97,116,99,104,0,0,0,0,0,0,0,108,105,98,114,97,114,121,32,114,111,117,116,105,110,101,32,99,97,108,108,101,100,32,111,117,116,32,111,102,32,115,101,113,117,101,110,99,101,0,0,108,97,114,103,101,32,102,105,108,101, +32,115,117,112,112,111,114,116,32,105,115,32,100,105,115,97,98,108,101,100,0,0,97,117,116,104,111,114,105,122,97,116,105,111,110,32,100,101,110,105,101,100,0,0,0,0,97,117,120,105,108,105,97,114,121,32,100,97,116,97,98,97,115,101,32,102,111,114,109,97,116,32,101,114,114,111,114,0,98,105,110,100,32,111,114,32,99,111,108,117,109,110,32,105,110,100,101,120,32,111,117,116,32,111,102,32,114,97,110,103,101,0,0,0,0,0,0,0,102,105,108,101,32,105,115,32,101,110,99,114,121,112,116,101,100,32,111,114,32,105,115, +32,110,111,116,32,97,32,100,97,116,97,98,97,115,101,0,0,117,110,107,110,111,119,110,32,101,114,114,111,114,0,0,0,97,98,111,114,116,32,100,117,101,32,116,111,32,82,79,76,76,66,65,67,75,0,0,0,117,110,97,98,108,101,32,116,111,32,99,108,111,115,101,32,100,117,101,32,116,111,32,117,110,102,105,110,97,108,105,122,101,100,32,115,116,97,116,101,109,101,110,116,115,32,111,114,32,117,110,102,105,110,105,115,104,101,100,32,98,97,99,107,117,112,115,0,0,0,0,0,1,0,0,0,0,0,0,0,25,0,0,0,1,0,0,0,12,0,0,0,1,0,0,0, +26,0,0,0,13,0,0,0,5,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,27,0,0,0,4,0,0,0,24,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,5,0,0,0,0,0,0,0,102,97,105,108,101,100,32,109,101,109,111,114,121,32,114,101,115,105,122,101,32,37,117,32,116,111,32,37,117,32,98,121,116,101,115,0,0,0,0,0,102,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,37,117,32,98,121,116,101,115,32,111,102,32,109,101,109,111,114,121,0,0,0,1,0,1,8,1,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,248,57,0,0,0,0,0,0,0,0,0,0,2,0,1,8,1, +0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,248,57,0,0,0,0,0,0,0,0,0,0,1,0,1,8,2,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,2,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,3,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,8,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,3,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,8,58,0,0,0,0,0,0,0,0,0,0,255,255,33,8,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,16,58,0,0,0,0,0,0,0,0,0,0,0,0,33,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,58,0,0,0,0,0, +0,0,0,0,0,1,0,33,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,6,0,0,0,16,58,0,0,0,0,0,0,0,0,0,0,255,255,33,8,1,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,24,58,0,0,0,0,0,0,0,0,0,0,0,0,33,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,58,0,0,0,0,0,0,0,0,0,0,1,0,33,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,6,0,0,0,24,58,0,0,0,0,0,0,0,0,0,0,1,0,129,8,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,32,58,0,0,0,0,0,0,0,0,0,0,1,0,65,8,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,40,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,11,0,0,0,0, +0,0,0,0,0,0,0,48,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,56,58,0,0,0,0,0,0,0,0,0,0,3,0,1,8,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,56,58,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,64,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,72,58,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,80,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,88,58,0,0,0,0,0,0,0,0,0,0,1,0, +1,8,0,0,0,0,0,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,96,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,96,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,104,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,112,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,120,58,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,120,58,0,0,0,0,0,0,0,0,0,0,255,255,1,10,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0, +120,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,136,58,0,0,0,0,0,0,0,0,0,0,2,0,1,10,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,144,58,0,0,0,0,0,0,0,0,0,0,1,0,1,12,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,152,58,0,0,0,0,0,0,0,0,0,0,2,0,1,12,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,168,58,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,184,58,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,23,0,0,0,0,0,0,0,0,0,0,0,192,58,0,0,0,0,0,0,0,0,0,0,2,0,33,8,0,0,0, +0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,208,58,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,216,58,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,25,0,0,0,0,0,0,0,0,0,0,0,232,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,26,0,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,16,59,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,0,0,0,0,48,59,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,80,59,0,0,0,0, +0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,88,59,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,112,59,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,120,59,0,0,0,0,0,0,0,0,0,0,3,0,1,8,0,0,0,0,0,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,136,59,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,34,0,0,0,0,0,0,0,0,0,0,0,144,59,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,35,0,0,0,7,0,0,0,160,59,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,35, +0,0,0,8,0,0,0,168,59,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,35,0,0,0,9,0,0,0,176,59,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,10,0,0,0,184,59,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,10,0,0,0,184,59,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,11,0,0,0,192,59,0,0,0,0,0,0,0,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,11,0,0,0,192,59,0,0,0,0,0,0,0,0,0,0,2,0,13,8,240,6,0,0,0,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,208,59,0,0,0,0,0,0,0,0,0, +0,2,0,5,8,216,59,0,0,0,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,224,59,0,0,0,0,0,0,0,0,0,0,3,0,5,8,216,59,0,0,0,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,224,59,0,0,0,0,0,0,0,0,0,0,108,116,114,105,109,0,0,0,114,116,114,105,109,0,0,0,116,114,105,109,0,0,0,0,109,105,110,0,0,0,0,0,109,97,120,0,0,0,0,0,116,121,112,101,111,102,0,0,108,101,110,103,116,104,0,0,105,110,115,116,114,0,0,0,115,117,98,115,116,114,0,0,112,114,105,110,116,102,0,0,117,110,105,99,111,100,101,0,99,104,97,114,0,0,0,0,97,98,115,0,0,0,0,0,114,111,117,110, +100,0,0,0,117,112,112,101,114,0,0,0,108,111,119,101,114,0,0,0,99,111,97,108,101,115,99,101,0,0,0,0,0,0,0,0,104,101,120,0,0,0,0,0,105,102,110,117,108,108,0,0,117,110,108,105,107,101,108,121,0,0,0,0,0,0,0,0,108,105,107,101,108,105,104,111,111,100,0,0,0,0,0,0,114,97,110,100,111,109,0,0,114,97,110,100,111,109,98,108,111,98,0,0,0,0,0,0,110,117,108,108,105,102,0,0,115,113,108,105,116,101,95,118,101,114,115,105,111,110,0,0,115,113,108,105,116,101,95,115,111,117,114,99,101,95,105,100,0,0,0,0,0,0,0,0,115, +113,108,105,116,101,95,108,111,103,0,0,0,0,0,0,115,113,108,105,116,101,95,99,111,109,112,105,108,101,111,112,116,105,111,110,95,117,115,101,100,0,0,0,0,0,0,0,115,113,108,105,116,101,95,99,111,109,112,105,108,101,111,112,116,105,111,110,95,103,101,116,0,0,0,0,0,0,0,0,113,117,111,116,101,0,0,0,108,97,115,116,95,105,110,115,101,114,116,95,114,111,119,105,100,0,0,0,0,0,0,0,99,104,97,110,103,101,115,0,116,111,116,97,108,95,99,104,97,110,103,101,115,0,0,0,114,101,112,108,97,99,101,0,122,101,114,111,98, +108,111,98,0,0,0,0,0,0,0,0,115,117,109,0,0,0,0,0,116,111,116,97,108,0,0,0,97,118,103,0,0,0,0,0,99,111,117,110,116,0,0,0,103,114,111,117,112,95,99,111,110,99,97,116,0,0,0,0,103,108,111,98,0,0,0,0,37,95,0,1,0,0,0,0,108,105,107,101,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,88,60,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0,112,60,0,0,0,0,0,0,0,0,0,0,3,0,1,8,0,0,0,0,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,136,60,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,114, +101,110,97,109,101,95,116,97,98,108,101,0,0,0,0,0,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,114,105,103,103,101,114,0,0,0,115,113,108,105,116,101,95,114,101,110,97,109,101,95,112,97,114,101,110,116,0,0,0,0,37,115,37,46,42,115,34,37,119,34,0,0,0,0,0,0,37,46,42,115,34,37,119,34,37,115,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,42,0,0,0,0,0,0,0,0,0,0,0,224,61,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,43,0,0,0,0,0,0,0,0,0,0,0,240,61,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,44, +0,0,0,0,0,0,0,0,0,0,0,248,61,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,0,62,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,46,0,0,0,0,0,0,0,0,0,0,0,16,62,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,47,0,0,0,0,0,0,0,0,0,0,0,32,62,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,48,62,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,72,62,0,0,0,0,0,0,0,0,0,0,106,117,108,105,97,110,100,97,121,0,0,0,0,0,0,0,100,97,116,101,0,0,0,0, +116,105,109,101,0,0,0,0,100,97,116,101,116,105,109,101,0,0,0,0,0,0,0,0,115,116,114,102,116,105,109,101,0,0,0,0,0,0,0,0,99,117,114,114,101,110,116,95,116,105,109,101,0,0,0,0,99,117,114,114,101,110,116,95,116,105,109,101,115,116,97,109,112,0,0,0,0,0,0,0,99,117,114,114,101,110,116,95,100,97,116,101,0,0,0,0,37,48,50,100,0,0,0,0,37,48,54,46,51,102,0,0,37,48,51,100,0,0,0,0,37,46,49,54,103,0,0,0,37,108,108,100,0,0,0,0,37,48,52,100,0,0,0,0,108,111,99,97,108,116,105,109,101,0,0,0,0,0,0,0,117,110,105,120,101, +112,111,99,104,0,0,0,0,0,0,0,117,116,99,0,0,0,0,0,119,101,101,107,100,97,121,32,0,0,0,0,0,0,0,0,115,116,97,114,116,32,111,102,32,0,0,0,0,0,0,0,109,111,110,116,104,0,0,0,121,101,97,114,0,0,0,0,100,97,121,0,0,0,0,0,104,111,117,114,0,0,0,0,109,105,110,117,116,101,0,0,115,101,99,111,110,100,0,0,108,111,99,97,108,32,116,105,109,101,32,117,110,97,118,97,105,108,97,98,108,101,0,0,110,111,119,0,0,0,0,0,37,48,52,100,45,37,48,50,100,45,37,48,50,100,32,37,48,50,100,58,37,48,50,100,58,37,48,50,100,0,0,0,37,48, +50,100,58,37,48,50,100,58,37,48,50,100,0,0,37,48,52,100,45,37,48,50,100,45,37,48,50,100,0,0,76,73,75,69,32,111,114,32,71,76,79,66,32,112,97,116,116,101,114,110,32,116,111,111,32,99,111,109,112,108,101,120,0,0,0,0,0,0,0,0,69,83,67,65,80,69,32,101,120,112,114,101,115,115,105,111,110,32,109,117,115,116,32,98,101,32,97,32,115,105,110,103,108,101,32,99,104,97,114,97,99,116,101,114,0,0,0,0,44,0,0,0,0,0,0,0,105,110,116,101,103,101,114,32,111,118,101,114,102,108,111,119,0,0,0,0,0,0,0,0,37,33,46,49,53,103, +0,0,37,33,46,50,48,101,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,78,85,76,76,0,0,0,0,37,46,42,102,0,0,0,0,105,110,116,101,103,101,114,0,116,101,120,116,0,0,0,0,114,101,97,108,0,0,0,0,98,108,111,98,0,0,0,0,110,117,108,108,0,0,0,0,1,0,0,0,0,0,0,0,64,64,0,0,0,0,0,0,32,0,0,0,0,0,0,0,105,110,116,101,114,114,117,112,116,0,0,0,0,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,116,111,107,101,110,58,32,34,37,84,34,0,0,0,0,0,0,0,0,110,101,97,114,32,34,37,84,34,58,32,115,121,110,116,97,120, +32,101,114,114,111,114,0,117,110,107,110,111,119,110,32,116,97,98,108,101,32,111,112,116,105,111,110,58,32,37,46,42,115,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,116,101,114,109,115,32,105,110,32,99,111,109,112,111,117,110,100,32,83,69,76,69,67,84,0,0,0,0,0,0,0,115,101,116,32,108,105,115,116,0,0,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,97,114,103,117,109,101,110,116,115,32,111,110,32,102,117,110,99,116,105,111,110,32,37,84,0,0,0,0,0,0,0,48,116, +0,0,1,0,0,0,168,98,0,0,1,0,0,0,105,110,100,101,120,0,0,0,113,117,97,108,105,102,105,101,100,32,116,97,98,108,101,32,110,97,109,101,115,32,97,114,101,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,73,78,83,69,82,84,44,32,85,80,68,65,84,69,44,32,97,110,100,32,68,69,76,69,84,69,32,115,116,97,116,101,109,101,110,116,115,32,119,105,116,104,105,110,32,116,114,105,103,103,101,114,115,0,0,116,104,101,32,73,78,68,69,88,69,68,32,66,89,32,99,108,97,117,115,101,32,105,115,32,110,111,116,32,97,108, +108,111,119,101,100,32,111,110,32,85,80,68,65,84,69,32,111,114,32,68,69,76,69,84,69,32,115,116,97,116,101,109,101,110,116,115,32,119,105,116,104,105,110,32,116,114,105,103,103,101,114,115,0,0,0,0,0,116,104,101,32,78,79,84,32,73,78,68,69,88,69,68,32,99,108,97,117,115,101,32,105,115,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,85,80,68,65,84,69,32,111,114,32,68,69,76,69,84,69,32,115,116,97,116,101,109,101,110,116,115,32,119,105,116,104,105,110,32,116,114,105,103,103,101,114,115,0,0,0, +0,144,1,145,2,145,1,146,1,146,3,147,0,147,1,147,3,148,1,149,3,151,0,151,1,151,2,150,0,150,1,150,1,150,1,149,2,149,2,149,2,153,1,153,0,149,2,149,3,149,5,149,2,154,6,156,1,158,0,158,3,157,1,157,0,155,5,155,2,162,0,162,2,160,3,160,1,164,3,165,1,152,1,152,1,152,1,166,0,166,1,168,1,168,4,168,6,169,1,169,2,170,1,170,1,167,2,167,0,173,2,173,2,173,4,173,3,173,3,173,2,173,2,173,3,173,5,173,2,173,4,173,4,173,1,173,2,178,0,178,1,180,0,180,2,182,2,182,3,182,3,182,3,183,2,183,2,183,1,183,1,183,2,181,3,181,2,184, +0,184,2,184,2,161,0,161,2,185,3,185,1,186,1,186,0,187,2,187,7,187,5,187,5,187,10,189,0,189,1,176,0,176,3,190,0,190,2,191,1,191,1,191,1,149,4,193,2,193,0,149,8,149,4,149,1,163,2,195,1,195,3,198,1,198,2,198,1,196,9,196,1,207,4,207,5,199,1,199,1,199,0,210,2,210,0,200,3,200,2,200,4,211,2,211,1,211,0,201,0,201,2,213,2,213,0,212,7,212,7,212,7,159,0,159,2,194,2,214,1,214,2,214,3,214,4,216,2,216,0,215,0,215,3,215,2,217,4,217,0,205,0,205,3,220,4,220,2,177,1,177,1,177,0,203,0,203,3,204,0,204,2,206,0,206,2, +206,4,206,4,149,6,202,0,202,2,149,8,221,5,221,3,149,6,149,7,222,2,222,1,223,0,223,3,219,3,219,1,175,1,175,3,174,1,175,1,175,1,175,3,175,5,174,1,174,1,175,1,175,3,175,6,175,5,175,4,174,1,175,3,175,3,175,3,175,3,175,3,175,3,175,3,175,3,224,1,224,2,175,3,175,5,175,2,175,3,175,3,175,4,175,2,175,2,175,2,175,2,225,1,225,2,175,5,226,1,226,2,175,5,175,3,175,5,175,4,175,4,175,5,228,5,228,4,229,2,229,0,227,1,227,0,209,1,209,0,208,3,208,1,149,12,230,1,230,0,179,0,179,3,188,5,188,3,231,0,231,2,149,4,149,1,149, +2,149,3,149,5,149,6,149,5,149,6,232,1,232,1,232,1,232,1,232,1,171,2,171,1,172,2,149,5,233,11,235,1,235,1,235,2,235,0,236,1,236,1,236,3,237,0,237,3,238,0,238,2,234,3,234,2,240,1,240,3,241,0,241,3,241,2,239,7,239,5,239,5,239,1,175,4,175,6,192,1,192,1,192,1,149,4,149,6,149,3,243,0,243,2,242,1,242,0,149,1,149,3,149,1,149,3,149,6,149,6,244,1,245,0,245,1,149,1,149,4,246,8,247,1,247,3,248,0,248,2,249,1,249,3,250,1,251,0,251,4,251,2,197,0,197,2,197,3,252,6,252,8,0,0,238,0,186,3,213,0,33,1,54,1,234,0,144, +0,61,1,147,255,126,1,121,1,47,1,205,1,133,1,122,1,112,1,46,1,38,1,253,0,139,1,37,1,68,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,254,3,244,3,237,3,230,3,195,3,193,3,191,3,189,3,182,3,179,3,162,3,144,3,105,3,93,3,55,3,42,3,3,3,247,2,208,2,196,2,158,2,145,2,107,2,102,2,100,2,98,2,96,2,94,2,92,2,86,2,83,2,81,2,68,2,30,2,28,2,25,2,23,2,21,2,19,2,17,2,15,2,247,1,130,1,147, +1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,95,0,191,1,82,0,78,1,248,1,211,1,147,1,221,1,208,1,147,1,147,1,147,1,147,1,92,3,235,2,232,2,17,3,126,2,126,2,158,3,123,3,132,3,131,3,119,3,76,3,72,3,67,3,80,3,62,3,75,3,61,3,24,3,71,3,58,3,225,2,70,3,27,3,21,3,47,0,222,2,18,2,184,2,9,3,199,2,165,2,221,2,218,2,217,2,216,2,215,2,115,2,192,1,64,0,187,0,25,5,22,5,228,4,10,5,249,4,43,5,42,5,41,5,39,5,38,5,36,5,35,5,34,5,33,5,32,5,31,5,30,5,28,5,27,5,24,5,23,5,21,5,18,5,14,5,12,5,9,5,242,4,240,4,235,4,8, +5,7,5,214,4,5,5,1,5,0,5,255,4,254,4,227,4,253,4,252,4,251,4,249,4,244,4,243,4,241,4,239,4,237,4,233,4,224,4,213,4,223,4,222,4,219,4,214,4,216,4,211,4,225,4,210,4,209,4,206,4,196,4,190,4,186,4,201,4,195,4,208,4,207,4,173,4,171,4,203,4,200,4,177,4,184,4,218,4,113,4,212,4,205,4,169,4,157,4,197,4,153,4,172,4,155,4,167,4,166,4,162,4,158,4,194,4,192,4,152,4,138,4,159,4,156,4,136,4,175,4,179,4,109,4,71,4,174,4,170,4,164,4,168,4,147,4,145,4,144,4,149,4,150,4,142,4,135,4,117,4,146,4,134,4,143,4,133,4,108, +4,121,4,119,4,100,4,104,4,79,4,78,4,76,4,72,4,126,4,125,4,61,4,101,4,56,4,40,4,96,4,73,4,58,4,54,4,49,4,43,4,85,4,83,4,95,4,93,4,92,4,89,4,87,4,84,4,239,3,232,3,234,3,52,4,51,4,57,4,0,0,0,0,50,1,212,0,176,1,187,3,127,2,191,0,187,3,39,1,47,2,88,0,88,0,88,0,88,0,81,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,185,0,184,0,183,0,123,2,123,2,36,1,94,2,94,2,88,0,88,0,88,0,88,0,171,2,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,16,0,180,1,85,2,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87, +0,87,0,88,0,88,0,88,0,88,0,172,2,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,47,2,84,0,84,0,84,0,83,0,74,1,65,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,123,2,123,2,122,2,121,2,182,0,170,2,38,2,123,1,120,1,119,1,17,0,66,1,94,2,94,2,115,1,198,0,223,1,91,0,118,1,82,0,79,0,165,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,86,2,123,2,123,2,107,0,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,186,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,82,2, +82,2,142,0,72,1,71,1,228,1,249,0,88,1,238,0,123,2,123,2,122,2,121,2,73,2,192,1,14,2,13,2,229,0,132,1,1,0,138,1,194,1,72,2,193,1,123,2,123,2,123,2,123,2,63,1,139,1,94,2,94,2,199,0,157,0,17,1,126,1,12,1,125,1,187,0,123,2,123,2,122,2,121,2,55,1,43,2,10,1,81,2,81,2,10,1,91,1,76,2,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,222,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,16,1,24,2,122,2,121,2,146,0,98,2,197,0,54,1,63,2,182,0,226,1,15,1,123,1,120,1,119,1,250,1,21, +0,122,2,121,2,122,2,121,2,123,2,123,2,118,1,99,2,62,2,36,2,184,1,111,0,51,2,94,2,94,2,122,2,121,2,68,1,223,1,96,2,96,2,96,2,44,1,179,1,61,2,119,0,151,1,210,0,162,0,50,2,115,3,80,2,80,2,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,250,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,108,2,111,0,123,2,123,2,105,1,94,2,94,2,102,1,249,0,93,1,248,0,177,1,243,0,223,1,74,2,122,2,121,2,195,0,99,2,93,0,119,0,221,0,63,2,241,1,22,2,22,2,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87, +0,87,0,88,0,88,0,88,0,88,0,62,2,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,77,0,173,1,126,2,61,2,77,2,18,2,240,0,230,0,242,0,105,0,249,0,93,1,248,0,3,2,76,2,208,0,204,1,17,2,52,2,173,0,122,2,121,2,202,3,144,0,174,1,2,0,168,1,228,0,124,1,45,2,94,2,94,2,190,0,153,0,159,0,158,0,2,2,51,0,120,2,119,2,118,2,71,0,24,2,176,1,186,3,196,0,98,2,186,3,102,2,45,0,18,0,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,5,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50, +1,96,2,96,2,96,2,30,2,168,1,146,1,129,1,241,0,250,1,195,1,64,1,211,0,31,2,164,0,180,1,130,1,37,1,195,1,75,2,108,0,240,1,111,0,78,1,135,1,79,2,168,1,102,2,27,0,196,1,197,1,94,2,94,2,72,0,1,1,70,0,3,1,196,1,83,1,86,1,52,2,70,2,68,0,159,1,213,1,72,1,71,1,62,0,102,2,45,0,110,0,137,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,152,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,110,0,243,1,8,2,26,2,146,1,133,1,168,1,110,0,54,2,244,1,81,2,81,2,198,1,82,0,79,0,165,0,168, +1,79,2,128,1,52,2,84,1,103,2,188,0,162,0,168,1,94,1,104,2,168,1,102,2,44,0,94,2,94,2,189,1,70,2,44,1,178,1,151,0,19,0,102,2,9,0,56,2,68,2,92,1,103,2,213,1,55,2,102,2,26,0,104,2,102,2,45,0,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,155,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,67,2,110,0,66,2,9,2,26,1,177,1,142,1,144,1,255,0,230,1,82,0,79,0,165,0,231,1,164,0,82,0,79,0,165,0,232,1,232,1,108,1,131,1,168,1,32,2,32,2,253,1,94,1,106,1,155,0,191,0,94,2,94,2,47,2, +130,2,128,2,77,1,82,0,79,0,165,0,49,1,52,2,251,1,56,1,101,1,102,2,45,0,73,1,84,2,83,2,194,0,81,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,20,0,67,1,150,0,7,1,211,0,31,2,165,1,84,2,83,2,102,2,22,0,168,1,193,0,168,1,28,1,168,1,135,1,168,1,253,1,168,1,65,2,168,1,186,0,79,1,168,1,47,2,168,1,57,1,120,0,34,2,94,2,94,2,67,0,102,2,47,0,102,2,50,0,102,2,48,0,102,2,100,0,102,2,99,0,102,2,101,0,64,2,102,2,102,0,102,2,109, +0,70,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,168,1,55,1,168,1,73,2,54,0,168,1,4,2,5,2,78,2,102,2,112,0,168,1,72,2,168,1,60,2,168,1,195,0,168,1,59,2,168,1,67,0,168,1,102,2,94,0,102,2,98,0,168,1,102,2,97,0,8,1,94,2,94,2,195,0,102,2,46,0,102,2,96,0,102,2,30,0,102,2,49,0,102,2,115,0,102,2,114,0,162,1,229,0,132,1,102,2,113,0,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0, +86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,119,0,168,1,78,2,110,0,116,1,94,2,94,2,195,0,53,0,250,0,102,2,29,0,195,0,216,1,182,1,217,2,190,0,46,1,242,1,14,0,11,2,129,2,2,0,102,2,43,0,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,168,1,101,2,196,3,196,3,98,1,94,2,94,2,164,1,56,1,64,0,102,2,42,0,135,1,99,1,27,1,181,1,45,1,255,0,158,1,154,1,239,1,236,1,102,2,28,0,215,1,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87, +0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,168,1,110,0,110,0,110,0,110,0,94,2,94,2,110,0,254,0,13,0,102,2,41,0,20,2,19,2,27,1,225,1,19,2,201,1,28,1,119,0,49,2,100,1,102,2,40,0,28,1,50,1,89,0,78,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,110,0,168,1,85,1,220,0,43,2,94,2,94,2,95,1,43,2,62,1,102,2,95,0,157,1,255,0,83,0,74,1,28,1,28,1,255,0,128,2,77,1,100,1,255,0,102,2,39,0,50,1,100,1,90, +0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,168,1,61,1,60,1,141,0,209,1,94,2,94,2,219,0,107,2,207,1,102,2,10,0,161,1,206,1,255,0,189,0,254,1,41,2,95,1,207,0,107,1,161,0,102,2,38,0,59,1,218,0,255,0,255,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,76,0,163,1,255,0,3,0,110,3,205,1,168,1,247,0,75,1,75,1,102,2,37,0,217,0,76,0,163,1,134,1,3,0,216,0,215,0,166, +1,4,0,75,1,75,1,168,1,35,2,12,0,168,1,33,2,102,2,36,0,168,1,29,2,166,1,168,1,28,2,168,1,214,0,168,1,152,1,168,1,27,2,147,1,93,2,93,2,237,0,102,2,25,0,119,0,102,2,24,0,76,2,152,1,102,2,45,0,118,0,102,2,35,0,102,2,34,0,102,2,33,0,102,2,23,0,76,2,60,0,223,0,91,2,90,2,1,2,122,1,73,0,74,0,140,0,139,0,168,1,110,0,9,1,75,0,170,1,169,1,59,0,168,1,98,2,73,0,74,0,37,2,146,1,148,1,168,1,117,1,75,0,170,1,169,1,92,2,138,0,98,2,102,2,11,0,136,1,76,0,163,1,181,0,3,0,102,2,32,0,15,1,113,1,75,1,75,1,237,1,102,2,31, +0,149,0,96,2,96,2,96,2,95,2,15,0,166,1,109,1,102,2,8,0,137,0,233,1,136,0,190,0,96,2,96,2,96,2,95,2,15,0,229,1,176,0,135,0,7,0,252,0,221,1,152,1,174,0,133,0,175,0,218,1,57,0,56,0,132,0,130,0,119,0,76,0,163,1,76,2,3,0,212,1,245,0,208,1,171,0,75,1,75,1,125,0,123,0,200,1,191,1,122,0,190,1,104,0,80,1,231,0,166,1,166,0,154,0,73,0,74,0,76,1,116,0,175,1,121,0,53,1,75,0,170,1,169,1,222,0,106,0,98,2,52,1,125,2,204,0,152,1,117,2,115,2,116,2,6,0,200,0,172,1,171,1,34,1,203,0,110,2,201,0,76,2,62,0,63,0,33,1,66, +0,163,1,143,1,3,0,145,1,32,1,92,0,143,0,75,1,75,1,31,1,96,2,96,2,96,2,95,2,15,0,73,0,74,0,227,0,166,1,69,1,69,0,160,1,75,0,170,1,169,1,100,2,156,1,98,2,192,0,61,0,57,2,209,0,140,1,226,0,22,1,225,0,127,1,152,1,15,2,46,2,20,1,21,2,40,2,16,2,65,1,11,2,114,1,252,1,180,0,76,2,238,1,179,0,110,1,117,0,253,0,13,1,10,2,247,1,96,2,96,2,96,2,95,2,15,0,39,2,246,1,58,0,18,1,12,2,178,0,73,0,74,0,48,1,245,1,112,1,47,1,206,0,75,0,170,1,169,1,235,1,104,1,98,2,213,0,177,0,227,1,131,0,89,1,42,1,41,1,40,1,202,0,38,1, +224,1,234,1,210,1,134,0,172,0,129,0,188,1,90,1,214,1,128,0,58,1,203,1,103,0,127],"i8",Ga,u.Ga+10768); +F([126,0,148,0,124,0,167,0,187,1,235,0,96,2,96,2,96,2,95,2,15,0,186,1,183,1,111,2,234,0,43,1,145,0,71,2,35,1,121,1,69,2,160,0,119,0,156,0,14,1,124,2,203,3,169,0,23,1,114,2,8,2,113,2,217,1,112,2,170,0,109,2,106,2,119,0,168,0,55,0,153,1,167,1,25,2,97,2,30,1,29,1,149,1,58,2,48,2,44,2,5,0,52,0,202,1,42,2,147,0,11,1,7,2,248,1,6,2,150,1,6,1,239,0,4,1,0,2,87,1,255,1,2,1,97,1,53,2,0,1,224,0,251,0,103,1,21,1,19,1,220,1,219,1,246,0,96,1,244,0,211,1,199,1,236,0,233,0,232,0,51,1,185,1,25,1,205,0,163,0,141,1, +24,1,23,2,249,1,74,1,105,2,203,3,203,3,203,3,203,3,111,1,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,82,1,0,0,0,0,0,0,100,117,112,108,105,99,97,116,101,32,87,73,84,72,32,116,97,98,108,101,32,110,97,109,101,58,32,37,115,0,0,0,110,111,116,32,97,117,116,104,111,114,105,122,101,100,0,0,97,117,116,104,111,114,105,122,101,114,32,109,97,108,102,117,110,99,116,105,111,110,0,0,67,82,69,65,84,69,32,86,73,82,84,85,65,76,32,84,65,66,76,69,32,37,84,0,85,80,68,65,84,69,32,37,81,46,37,115, +32,83,69,84,32,116,121,112,101,61,39,116,97,98,108,101,39,44,32,110,97,109,101,61,37,81,44,32,116,98,108,95,110,97,109,101,61,37,81,44,32,114,111,111,116,112,97,103,101,61,48,44,32,115,113,108,61,37,81,32,87,72,69,82,69,32,114,111,119,105,100,61,35,37,100,0,115,113,108,105,116,101,95,116,101,109,112,95,109,97,115,116,101,114,0,0,0,0,0,0,115,113,108,105,116,101,95,109,97,115,116,101,114,0,0,0,110,97,109,101,61,39,37,113,39,32,65,78,68,32,116,121,112,101,61,39,116,97,98,108,101,39,0,0,0,0,0,0,118,105, +114,116,117,97,108,32,116,97,98,108,101,115,32,109,97,121,32,110,111,116,32,98,101,32,97,108,116,101,114,101,100,0,0,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,99,111,108,117,109,110,32,116,111,32,97,32,118,105,101,119,0,0,0,115,113,108,105,116,101,95,97,108,116,101,114,116,97,98,95,37,115,0,0,0,0,0,0,117,110,97,98,108,101,32,116,111,32,111,112,101,110,32,97,32,116,101,109,112,111,114,97,114,121,32,100,97,116,97,98,97,115,101,32,102,105,108,101,32,102,111,114,32,115,116,111,114,105,110, +103,32,116,101,109,112,111,114,97,114,121,32,116,97,98,108,101,115,0,0,0,115,113,108,105,116,101,95,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,97,108,116,101,114,101,100,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,80,82,73,77,65,82,89,32,75,69,89,32,99,111,108,117,109,110,0,67,97,110,110,111,116,32,97,100,100,32,97,32,85,78,73,81,85,69,32,99,111,108,117,109,110,0,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,82,69,70,69,82,69,78,67,69,83,32,99,111, +108,117,109,110,32,119,105,116,104,32,110,111,110,45,78,85,76,76,32,100,101,102,97,117,108,116,32,118,97,108,117,101,0,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,78,79,84,32,78,85,76,76,32,99,111,108,117,109,110,32,119,105,116,104,32,100,101,102,97,117,108,116,32,118,97,108,117,101,32,78,85,76,76,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,99,111,108,117,109,110,32,119,105,116,104,32,110,111,110,45,99,111,110,115,116,97,110,116,32,100,101,102,97,117,108,116,0,0,0,85,80,68,65, +84,69,32,34,37,119,34,46,37,115,32,83,69,84,32,115,113,108,32,61,32,115,117,98,115,116,114,40,115,113,108,44,49,44,37,100,41,32,124,124,32,39,44,32,39,32,124,124,32,37,81,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,37,100,41,32,87,72,69,82,69,32,116,121,112,101,32,61,32,39,116,97,98,108,101,39,32,65,78,68,32,110,97,109,101,32,61,32,37,81,0,0,0,0,116,98,108,95,110,97,109,101,61,37,81,0,0,0,0,0,116,121,112,101,61,39,116,114,105,103,103,101,114,39,32,65,78,68,32,40,37,115,41,0,110,97,109, +101,61,37,81,0,37,115,32,79,82,32,110,97,109,101,61,37,81,0,0,0,45,0,0,0,0,0,0,0,116,104,101,114,101,32,105,115,32,97,108,114,101,97,100,121,32,97,110,111,116,104,101,114,32,116,97,98,108,101,32,111,114,32,105,110,100,101,120,32,119,105,116,104,32,116,104,105,115,32,110,97,109,101,58,32,37,115,0,0,0,0,0,0,118,105,101,119,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,97,108,116,101,114,101,100,0,0,0,0,0,0,85,80,68,65,84,69,32,34,37,119,34,46,37,115,32,83,69,84,32,115,113,108,32,61,32,115,113, +108,105,116,101,95,114,101,110,97,109,101,95,112,97,114,101,110,116,40,115,113,108,44,32,37,81,44,32,37,81,41,32,87,72,69,82,69,32,37,115,59,0,0,0,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,115,113,108,32,61,32,67,65,83,69,32,87,72,69,78,32,116,121,112,101,32,61,32,39,116,114,105,103,103,101,114,39,32,84,72,69,78,32,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,114,105,103,103,101,114,40,115,113,108,44,32,37,81,41,69,76,83,69,32,115,113,108,105,116,101,95,114,101,110,97,109, +101,95,116,97,98,108,101,40,115,113,108,44,32,37,81,41,32,69,78,68,44,32,116,98,108,95,110,97,109,101,32,61,32,37,81,44,32,110,97,109,101,32,61,32,67,65,83,69,32,87,72,69,78,32,116,121,112,101,61,39,116,97,98,108,101,39,32,84,72,69,78,32,37,81,32,87,72,69,78,32,110,97,109,101,32,76,73,75,69,32,39,115,113,108,105,116,101,95,97,117,116,111,105,110,100,101,120,37,37,39,32,65,78,68,32,116,121,112,101,61,39,105,110,100,101,120,39,32,84,72,69,78,32,39,115,113,108,105,116,101,95,97,117,116,111,105,110,100, +101,120,95,39,32,124,124,32,37,81,32,124,124,32,115,117,98,115,116,114,40,110,97,109,101,44,37,100,43,49,56,41,32,69,76,83,69,32,110,97,109,101,32,69,78,68,32,87,72,69,82,69,32,116,98,108,95,110,97,109,101,61,37,81,32,67,79,76,76,65,84,69,32,110,111,99,97,115,101,32,65,78,68,32,40,116,121,112,101,61,39,116,97,98,108,101,39,32,79,82,32,116,121,112,101,61,39,105,110,100,101,120,39,32,79,82,32,116,121,112,101,61,39,116,114,105,103,103,101,114,39,41,59,0,115,113,108,105,116,101,95,115,101,113,117,101, +110,99,101,0,85,80,68,65,84,69,32,34,37,119,34,46,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,32,115,101,116,32,110,97,109,101,32,61,32,37,81,32,87,72,69,82,69,32,110,97,109,101,32,61,32,37,81,0,0,0,0,0,0,0,85,80,68,65,84,69,32,115,113,108,105,116,101,95,116,101,109,112,95,109,97,115,116,101,114,32,83,69,84,32,115,113,108,32,61,32,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,114,105,103,103,101,114,40,115,113,108,44,32,37,81,41,44,32,116,98,108,95,110,97,109,101,32,61,32, +37,81,32,87,72,69,82,69,32,37,115,59,0,0,0,0,0,118,105,101,119,32,37,115,32,105,115,32,99,105,114,99,117,108,97,114,108,121,32,100,101,102,105,110,101,100,0,0,0,0,0,2,0,3,0,5,0,6,0,7,0,8,0,9,0,110,111,32,115,117,99,104,32,99,111,108,108,97,116,105,111,110,32,115,101,113,117,101,110,99,101,58,32,37,115,0,0,3,2,1,0,0,0,0,0,73,78,84,69,71,69,82,0,37,115,58,37,100,0,0,0,97,32,71,82,79,85,80,32,66,89,32,99,108,97,117,115,101,32,105,115,32,114,101,113,117,105,114,101,100,32,98,101,102,111,114,101,32,72, +65,86,73,78,71,0,0,0,0,0,79,82,68,69,82,0,0,0,71,82,79,85,80,0,0,0,97,103,103,114,101,103,97,116,101,32,102,117,110,99,116,105,111,110,115,32,97,114,101,32,110,111,116,32,97,108,108,111,119,101,100,32,105,110,32,116,104,101,32,71,82,79,85,80,32,66,89,32,99,108,97,117,115,101,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,116,101,114,109,115,32,105,110,32,79,82,68,69,82,32,66,89,32,99,108,97,117,115,101,0,0,0,0,0,0,0,37,114,32,79,82,68,69,82,32,66,89,32,116,101,114,109,32,100,111,101,115,32,110,111, +116,32,109,97,116,99,104,32,97,110,121,32,99,111,108,117,109,110,32,105,110,32,116,104,101,32,114,101,115,117,108,116,32,115,101,116,0,0,0,0,37,114,32,37,115,32,66,89,32,116,101,114,109,32,111,117,116,32,111,102,32,114,97,110,103,101,32,45,32,115,104,111,117,108,100,32,98,101,32,98,101,116,119,101,101,110,32,49,32,97,110,100,32,37,100,0,116,111,111,32,109,97,110,121,32,116,101,114,109,115,32,105,110,32,37,115,32,66,89,32,99,108,97,117,115,101,0,0,69,120,112,114,101,115,115,105,111,110,32,116,114, +101,101,32,105,115,32,116,111,111,32,108,97,114,103,101,32,40,109,97,120,105,109,117,109,32,100,101,112,116,104,32,37,100,41,0,102,117,110,99,116,105,111,110,115,0,0,0,0,0,0,0,115,101,99,111,110,100,32,97,114,103,117,109,101,110,116,32,116,111,32,108,105,107,101,108,105,104,111,111,100,40,41,32,109,117,115,116,32,98,101,32,97,32,99,111,110,115,116,97,110,116,32,98,101,116,119,101,101,110,32,48,46,48,32,97,110,100,32,49,46,48,0,0,110,111,116,32,97,117,116,104,111,114,105,122,101,100,32,116,111,32, +117,115,101,32,102,117,110,99,116,105,111,110,58,32,37,115,0,0,0,0,0,0,109,105,115,117,115,101,32,111,102,32,97,103,103,114,101,103,97,116,101,32,102,117,110,99,116,105,111,110,32,37,46,42,115,40,41,0,0,0,0,0,110,111,32,115,117,99,104,32,102,117,110,99,116,105,111,110,58,32,37,46,42,115,0,0,119,114,111,110,103,32,110,117,109,98,101,114,32,111,102,32,97,114,103,117,109,101,110,116,115,32,116,111,32,102,117,110,99,116,105,111,110,32,37,46,42,115,40,41,0,0,0,0,115,117,98,113,117,101,114,105,101,115, +0,0,0,0,0,0,112,97,114,97,109,101,116,101,114,115,0,0,0,0,0,0,37,115,32,112,114,111,104,105,98,105,116,101,100,32,105,110,32,67,72,69,67,75,32,99,111,110,115,116,114,97,105,110,116,115,0,0,0,0,0,0,37,115,32,112,114,111,104,105,98,105,116,101,100,32,105,110,32,112,97,114,116,105,97,108,32,105,110,100,101,120,32,87,72,69,82,69,32,99,108,97,117,115,101,115,0,0,0,0,110,101,119,0,0,0,0,0,111,108,100,0,0,0,0,0,109,105,115,117,115,101,32,111,102,32,97,108,105,97,115,101,100,32,97,103,103,114,101,103,97, +116,101,32,37,115,0,0,110,111,32,115,117,99,104,32,99,111,108,117,109,110,0,0,97,109,98,105,103,117,111,117,115,32,99,111,108,117,109,110,32,110,97,109,101,0,0,0,37,115,58,32,37,115,46,37,115,46,37,115,0,0,0,0,37,115,58,32,37,115,46,37,115,0,0,0,0,0,0,0,37,115,58,32,37,115,0,0,82,79,87,73,68,0,0,0,97,99,99,101,115,115,32,116,111,32,37,115,46,37,115,46,37,115,32,105,115,32,112,114,111,104,105,98,105,116,101,100,0,0,0,0,0,0,0,0,97,99,99,101,115,115,32,116,111,32,37,115,46,37,115,32,105,115,32,112,114, +111,104,105,98,105,116,101,100,0,0,0,95,82,79,87,73,68,95,0,79,73,68,0,0,0,0,0,115,113,108,105,116,101,95,115,113,95,37,112,0,0,0,0,116,111,111,32,109,97,110,121,32,114,101,102,101,114,101,110,99,101,115,32,116,111,32,34,37,115,34,58,32,109,97,120,32,54,53,53,51,53,0,0,37,115,46,37,115,0,0,0,37,115,46,37,115,46,37,115,0,0,0,0,0,0,0,0,110,111,32,115,117,99,104,32,116,97,98,108,101,58,32,37,115,0,0,0,0,0,0,0,110,111,32,116,97,98,108,101,115,32,115,112,101,99,105,102,105,101,100,0,0,0,0,0,116,111,111, +32,109,97,110,121,32,99,111,108,117,109,110,115,32,105,110,32,114,101,115,117,108,116,32,115,101,116,0,0,97,32,78,65,84,85,82,65,76,32,106,111,105,110,32,109,97,121,32,110,111,116,32,104,97,118,101,32,97,110,32,79,78,32,111,114,32,85,83,73,78,71,32,99,108,97,117,115,101,0,0,0,0,0,0,0,99,97,110,110,111,116,32,104,97,118,101,32,98,111,116,104,32,79,78,32,97,110,100,32,85,83,73,78,71,32,99,108,97,117,115,101,115,32,105,110,32,116,104,101,32,115,97,109,101,32,106,111,105,110,0,0,99,97,110,110,111,116, +32,106,111,105,110,32,117,115,105,110,103,32,99,111,108,117,109,110,32,37,115,32,45,32,99,111,108,117,109,110,32,110,111,116,32,112,114,101,115,101,110,116,32,105,110,32,98,111,116,104,32,116,97,98,108,101,115,0,110,111,32,115,117,99,104,32,105,110,100,101,120,58,32,37,115,0,0,0,0,0,0,0,109,117,108,116,105,112,108,101,32,114,101,102,101,114,101,110,99,101,115,32,116,111,32,114,101,99,117,114,115,105,118,101,32,116,97,98,108,101,58,32,37,115,0,0,0,0,0,0,99,105,114,99,117,108,97,114,32,114,101,102, +101,114,101,110,99,101,58,32,37,115,0,0,116,97,98,108,101,32,37,115,32,104,97,115,32,37,100,32,118,97,108,117,101,115,32,102,111,114,32,37,100,32,99,111,108,117,109,110,115,0,0,0,109,117,108,116,105,112,108,101,32,114,101,99,117,114,115,105,118,101,32,114,101,102,101,114,101,110,99,101,115,58,32,37,115,0,0,0,0,0,0,0,114,101,99,117,114,115,105,118,101,32,114,101,102,101,114,101,110,99,101,32,105,110,32,97,32,115,117,98,113,117,101,114,121,58,32,37,115,0,0,0,110,111,32,115,117,99,104,32,109,111,100, +117,108,101,58,32,37,115,0,0,0,0,0,0,118,116,97,98,108,101,32,99,111,110,115,116,114,117,99,116,111,114,32,102,97,105,108,101,100,58,32,37,115,0,0,0,118,116,97,98,108,101,32,99,111,110,115,116,114,117,99,116,111,114,32,100,105,100,32,110,111,116,32,100,101,99,108,97,114,101,32,115,99,104,101,109,97,58,32,37,115,0,0,0,104,105,100,100,101,110,0,0,32,104,105,100,100,101,110,0,111,98,106,101,99,116,32,110,97,109,101,32,114,101,115,101,114,118,101,100,32,102,111,114,32,105,110,116,101,114,110,97,108,32, +117,115,101,58,32,37,115,0,0,0,0,0,0,0,99,111,114,114,117,112,116,32,100,97,116,97,98,97,115,101,0,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,100,97,116,97,98,97,115,101,32,37,84,0,0,0,0,0,105,100,120,0,0,0,0,0,116,98,108,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,40,97,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,51,0,0,0,0,0,0,0,0,0,0,0,24,97,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,97,97,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,52,0,0,0,0,0,0,0,0,0,0,0,248,96,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,115,116,97,116,95,103,101,116,0,0,0,0,0,0,0,0,37,108,108,117,0,0,0,0,32,37,108,108,117,0,0,0,115,116,97,116,95,112,117,115,104,0,0,0,0,0,0,0,115,116,97,116,95,105,110,105,116,0,0,0,0,0,0,0,80,97,0,0,96,97,0,0,112,97,0,0,0,0,0,0,128,97,0,0,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,49,0,0,0,0,116,98,108,44,105,100,120,44,115,116,97,116,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,51,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,52,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37, +81,46,37,115,40,37,115,41,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,37,115,32,87,72,69,82,69,32,37,115,61,37,81,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,115,113,108,105,116,101,95,109,97,115,116,101,114,40,10,32,32,116,121,112,101,32,116,101,120,116,44,10,32,32,110,97,109,101,32,116,101,120,116,44,10,32,32,116,98,108,95,110,97,109,101,32,116,101,120,116,44,10,32,32,114,111,111,116,112,97,103,101,32,105,110,116,101,103,101,114,44,10,32,32,115,113,108,32,116,101,120,116,10,41,0,67,82,69, +65,84,69,32,84,69,77,80,32,84,65,66,76,69,32,115,113,108,105,116,101,95,116,101,109,112,95,109,97,115,116,101,114,40,10,32,32,116,121,112,101,32,116,101,120,116,44,10,32,32,110,97,109,101,32,116,101,120,116,44,10,32,32,116,98,108,95,110,97,109,101,32,116,101,120,116,44,10,32,32,114,111,111,116,112,97,103,101,32,105,110,116,101,103,101,114,44,10,32,32,115,113,108,32,116,101,120,116,10,41,0,0,0,0,0,0,0,49,0,0,0,0,0,0,0,97,116,116,97,99,104,101,100,32,100,97,116,97,98,97,115,101,115,32,109,117,115,116, +32,117,115,101,32,116,104,101,32,115,97,109,101,32,116,101,120,116,32,101,110,99,111,100,105,110,103,32,97,115,32,109,97,105,110,32,100,97,116,97,98,97,115,101,0,0,0,0,0,117,110,115,117,112,112,111,114,116,101,100,32,102,105,108,101,32,102,111,114,109,97,116,0,83,69,76,69,67,84,32,110,97,109,101,44,32,114,111,111,116,112,97,103,101,44,32,115,113,108,32,70,82,79,77,32,39,37,113,39,46,37,115,32,79,82,68,69,82,32,66,89,32,114,111,119,105,100,0,0,83,69,76,69,67,84,32,116,98,108,44,105,100,120,44,115, +116,97,116,32,70,82,79,77,32,37,81,46,115,113,108,105,116,101,95,115,116,97,116,49,0,0,0,0,0,0,0,0,117,110,111,114,100,101,114,101,100,0,0,0,0,0,0,0,115,122,61,91,48,45,57,93,42,0,0,0,0,0,0,0,33,0,32,0,30,0,28,0,26,0,0,0,0,0,0,0,105,110,118,97,108,105,100,32,114,111,111,116,112,97,103,101,0,0,0,0,0,0,0,0,109,97,108,102,111,114,109,101,100,32,100,97,116,97,98,97,115,101,32,115,99,104,101,109,97,32,40,37,115,41,0,0,37,115,32,45,32,37,115,0,117,110,97,98,108,101,32,116,111,32,105,100,101,110,116,105, +102,121,32,116,104,101,32,111,98,106,101,99,116,32,116,111,32,98,101,32,114,101,105,110,100,101,120,101,100,0,0,0,44,32,0,0,0,0,0,0,46,0,0,0,0,0,0,0,109,105,115,117,115,101,32,111,102,32,97,103,103,114,101,103,97,116,101,58,32,37,115,40,41,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,102,117,110,99,116,105,111,110,58,32,37,46,42,115,40,41,0,0,0,0,0,0,0,0,82,65,73,83,69,40,41,32,109,97,121,32,111,110,108,121,32,98,101,32,117,115,101,100,32,119,105,116,104,105,110,32,97,32,116,114,105,103,103,101,114, +45,112,114,111,103,114,97,109,0,0,0,0,0,0,0,69,88,69,67,85,84,69,32,37,115,37,115,32,83,85,66,81,85,69,82,89,32,37,100,0,0,0,0,0,0,0,0,67,79,82,82,69,76,65,84,69,68,32,0,0,0,0,0,76,73,83,84,0,0,0,0,83,67,65,76,65,82,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,53,0,0,0,0,0,0,0,0,0,0,0,32,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,100,101,116,97,99,104,0,0,0,110,111,32,115,117,99,104,32,100,97,116,97,98,97,115,101,58,32,37,115,0,0,0,0,99,97,110,110,111, +116,32,100,101,116,97,99,104,32,100,97,116,97,98,97,115,101,32,37,115,0,0,0,0,0,0,0,99,97,110,110,111,116,32,68,69,84,65,67,72,32,100,97,116,97,98,97,115,101,32,119,105,116,104,105,110,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,37,115,32,105,115,32,108,111,99,107,101,100,0,0,0,3,0,1,0,0,0,0,0,0,0,0,0,54,0,0,0,0,0,0,0,0,0,0,0,216,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,97,116,116,97,99,104,0,0,0,116,111,111,32,109,97,110,121,32,97,116, +116,97,99,104,101,100,32,100,97,116,97,98,97,115,101,115,32,45,32,109,97,120,32,37,100,0,0,0,0,99,97,110,110,111,116,32,65,84,84,65,67,72,32,100,97,116,97,98,97,115,101,32,119,105,116,104,105,110,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,37,115,32,105,115,32,97,108,114,101,97,100,121,32,105,110,32,117,115,101,0,0,0,100,97,116,97,98,97,115,101,32,105,115,32,97,108,114,101,97,100,121,32,97,116,116,97,99,104,101,100,0,0,0,0,117,110,97,98,108,101,32,116, +111,32,111,112,101,110,32,100,97,116,97,98,97,115,101,58,32,37,115,0,0,0,0,0,110,111,32,115,117,99,104,32,116,114,105,103,103,101,114,58,32,37,83,0,0,0,0,0,105,0,246,0,97,0,1,0,46,0,1,2,78,2,247,1,97,0,1,0,46,0,0,2,78,2,247,1,74,0,0,0,9,0,254,0,0,0,0,0,116,101,109,112,111,114,97,114,121,32,116,114,105,103,103,101,114,32,109,97,121,32,110,111,116,32,104,97,118,101,32,113,117,97,108,105,102,105,101,100,32,110,97,109,101,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,116,114,105,103,103,101, +114,115,32,111,110,32,118,105,114,116,117,97,108,32,116,97,98,108,101,115,0,0,0,0,0,0,0,0,116,114,105,103,103,101,114,32,37,84,32,97,108,114,101,97,100,121,32,101,120,105,115,116,115,0,0,0,0,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,116,114,105,103,103,101,114,32,111,110,32,115,121,115,116,101,109,32,116,97,98,108,101,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,37,115,32,116,114,105,103,103,101,114,32,111,110,32,118,105,101,119,58,32,37,83,0,0,0,0,66,69,70,79,82,69,0,0,65, +70,84,69,82,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,73,78,83,84,69,65,68,32,79,70,32,116,114,105,103,103,101,114,32,111,110,32,116,97,98,108,101,58,32,37,83,0,0,0,37,115,32,37,84,32,99,97,110,110,111,116,32,114,101,102,101,114,101,110,99,101,32,111,98,106,101,99,116,115,32,105,110,32,100,97,116,97,98,97,115,101,32,37,115,0,0,0,37,115,32,99,97,110,110,111,116,32,117,115,101,32,118,97,114,105,97,98,108,101,115,0,73,78,83,69,82,84,32,73,78,84,79,32,37,81,46,37,115,32,86,65,76,85,69,83, +40,39,116,114,105,103,103,101,114,39,44,37,81,44,37,81,44,48,44,39,67,82,69,65,84,69,32,84,82,73,71,71,69,82,32,37,113,39,41,0,116,121,112,101,61,39,116,114,105,103,103,101,114,39,32,65,78,68,32,110,97,109,101,61,39,37,113,39,0,0,0,0,45,37,84,0,0,0,0,0,114,101,115,117,108,116,0,0,88,112,0,0,0,0,0,0,0,0,0,0,216,107,0,0,1,1,0,0,0,0,0,0,104,112,0,0,2,0,0,0,0,0,16,0,120,112,0,0,3,0,0,0,0,0,0,0,88,107,0,0,4,1,0,0,0,0,0,0,136,112,0,0,2,0,0,0,16,0,0,0,152,112,0,0,5,0,0,0,0,0,0,0,176,112,0,0,2,0,0,0,8,0, +0,0,200,112,0,0,6,0,0,0,0,0,0,0,216,112,0,0,7,0,0,0,0,0,0,0,232,112,0,0,2,0,0,0,128,0,0,0,248,112,0,0,9,1,0,0,0,0,0,0,8,113,0,0,10,1,0,0,0,0,0,0,32,113,0,0,2,0,0,0,0,0,0,1,56,113,0,0,2,0,0,0,0,1,0,0,128,110,0,0,11,0,0,0,0,0,0,0,80,113,0,0,12,1,0,0,0,0,0,0,104,113,0,0,13,1,0,0,0,0,0,0,128,113,0,0,2,0,0,0,0,0,8,0,144,113,0,0,0,0,0,0,0,0,0,0,160,113,0,0,2,0,0,0,32,0,0,0,184,113,0,0,2,0,0,0,4,0,0,0,200,113,0,0,2,0,0,0,0,32,0,0,232,113,0,0,14,1,0,0,0,0,0,0,0,114,0,0,15,1,0,0,0,0,0,0,16,114,0,0,16,1,0, +0,0,0,0,0,120,109,0,0,17,1,0,0,0,0,0,0,176,107,0,0,18,1,0,0,0,0,0,0,192,107,0,0,19,0,0,0,0,0,0,0,32,114,0,0,2,0,0,0,0,128,0,0,160,107,0,0,21,0,0,0,0,0,0,0,56,114,0,0,22,1,0,0,0,0,0,0,0,108,0,0,23,0,0,0,0,0,0,0,72,114,0,0,22,1,0,0,0,0,0,0,104,107,0,0,24,0,0,0,0,0,0,0,88,114,0,0,2,0,0,0,0,0,0,2,104,114,0,0,17,1,0,0,0,0,0,0,120,114,0,0,2,0,0,0,0,64,0,0,144,114,0,0,2,0,0,0,0,0,4,0,168,114,0,0,2,0,0,0,0,0,2,0,200,114,0,0,0,0,0,0,0,0,0,0,120,107,0,0,25,0,0,0,0,0,0,0,216,114,0,0,2,0,0,0,64,0,0,0,240,114, +0,0,26,0,0,0,0,0,0,0,40,111,0,0,27,0,0,0,0,0,0,0,0,115,0,0,28,1,0,0,0,0,0,0,88,108,0,0,29,1,0,0,0,0,0,0,8,115,0,0,30,1,0,0,0,0,0,0,16,108,0,0,31,0,0,0,0,0,0,0,32,108,0,0,32,0,0,0,0,0,0,0,24,115,0,0,0,0,0,0,0,0,0,0,8,111,0,0,33,0,0,0,0,0,0,0,40,115,0,0,34,1,0,0,0,0,0,0,56,115,0,0,2,0,0,0,0,8,1,0,4,0,0,0,50,0,1,3,134,1,8,0,25,0,2,0,90,1,2,1,134,1,8,0,25,0,1,0,156,0,0,0,35,1,1,0,0,0,0,0,99,97,99,104,101,95,115,105,122,101,0,0,0,0,0,0,112,97,103,101,95,115,105,122,101,0,0,0,0,0,0,0,115,101,99,117,114, +101,95,100,101,108,101,116,101,0,0,0,110,111,114,109,97,108,0,0,101,120,99,108,117,115,105,118,101,0,0,0,0,0,0,0,108,111,99,107,105,110,103,95,109,111,100,101,0,0,0,0,106,111,117,114,110,97,108,95,109,111,100,101,0,0,0,0,106,111,117,114,110,97,108,95,115,105,122,101,95,108,105,109,105,116,0,0,0,0,0,0,97,117,116,111,95,118,97,99,117,117,109,0,0,0,0,0,4,0,1,0,50,0,1,4,44,1,0,0,24,0,2,0,25,0,1,0,51,0,7,1,109,109,97,112,95,115,105,122,101,0,0,0,0,0,0,0,116,101,109,112,95,115,116,111,114,101,0,0,0,0,0, +0,116,101,109,112,95,115,116,111,114,101,95,100,105,114,101,99,116,111,114,121,0,0,0,0,110,111,116,32,97,32,119,114,105,116,97,98,108,101,32,100,105,114,101,99,116,111,114,121,0,0,0,0,0,0,0,0,115,121,110,99,104,114,111,110,111,117,115,0,0,0,0,0,83,97,102,101,116,121,32,108,101,118,101,108,32,109,97,121,32,110,111,116,32,98,101,32,99,104,97,110,103,101,100,32,105,110,115,105,100,101,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,99,105,100,0,0,0,0,0,110,97,109,101,0,0,0,0,116,121,112,101, +0,0,0,0,110,111,116,110,117,108,108,0,100,102,108,116,95,118,97,108,117,101,0,0,0,0,0,0,112,107,0,0,0,0,0,0,116,97,98,108,101,0,0,0,119,105,100,116,104,0,0,0,104,101,105,103,104,116,0,0,115,101,113,110,111,0,0,0,115,101,113,0,0,0,0,0,117,110,105,113,117,101,0,0,102,105,108,101,0,0,0,0,105,100,0,0,0,0,0,0,102,114,111,109,0,0,0,0,116,111,0,0,0,0,0,0,111,110,95,117,112,100,97,116,101,0,0,0,0,0,0,0,111,110,95,100,101,108,101,116,101,0,0,0,0,0,0,0,109,97,116,99,104,0,0,0,78,79,78,69,0,0,0,0,112,97,114, +101,110,116,0,0,102,107,105,100,0,0,0,0,37,1,0,0,135,1,0,0,97,0,3,0,35,3,1,0,105,110,116,101,103,114,105,116,121,95,99,104,101,99,107,0,42,42,42,32,105,110,32,100,97,116,97,98,97,115,101,32,37,115,32,42,42,42,10,0,114,111,119,32,0,0,0,0,32,109,105,115,115,105,110,103,32,102,114,111,109,32,105,110,100,101,120,32,0,0,0,0,119,114,111,110,103,32,35,32,111,102,32,101,110,116,114,105,101,115,32,105,110,32,105,110,100,101,120,32,0,0,0,0,111,107,0,0,0,0,0,0,48,110,0,0,1,0,0,0,56,110,0,0,1,0,0,0,64,110,0, +0,2,0,0,0,80,110,0,0,3,0,0,0,96,110,0,0,2,0,0,0,104,110,0,0,3,0,0,0,112,110,0,0,0,0,0,0,120,110,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,84,70,56,0,0,0,0,85,84,70,45,56,0,0,0,85,84,70,45,49,54,108,101,0,0,0,0,0,0,0,0,85,84,70,45,49,54,98,101,0,0,0,0,0,0,0,0,85,84,70,49,54,108,101,0,85,84,70,49,54,98,101,0,85,84,70,45,49,54,0,0,85,84,70,49,54,0,0,0,101,110,99,111,100,105,110,103,0,0,0,0,0,0,0,0,117,110,115,117,112,112,111,114,116,101,100,32,101,110,99,111,100,105,110,103,58,32,37,115,0,0,0,0,0,0,0,0,4,0,1,0, +25,0,1,0,51,0,0,1,0,0,0,0,4,0,0,0,50,0,1,0,35,1,1,0,0,0,0,0,99,111,109,112,105,108,101,95,111,112,116,105,111,110,0,0,102,117,108,108,0,0,0,0,114,101,115,116,97,114,116,0,98,117,115,121,0,0,0,0,99,104,101,99,107,112,111,105,110,116,101,100,0,0,0,0,119,97,108,95,97,117,116,111,99,104,101,99,107,112,111,105,110,116,0,0,0,0,0,0,116,105,109,101,111,117,116,0,115,111,102,116,95,104,101,97,112,95,108,105,109,105,116,0,37,95,0,0,0,0,0,0,102,111,114,101,105,103,110,32,107,101,121,32,109,105,115,109,97,116, +99,104,32,45,32,34,37,119,34,32,114,101,102,101,114,101,110,99,105,110,103,32,34,37,119,34,0,0,0,0,83,69,84,32,78,85,76,76,0,0,0,0,0,0,0,0,83,69,84,32,68,69,70,65,85,76,84,0,0,0,0,0,67,65,83,67,65,68,69,0,82,69,83,84,82,73,67,84,0,0,0,0,0,0,0,0,78,79,32,65,67,84,73,79,78,0,0,0,0,0,0,0,116,101,109,112,111,114,97,114,121,32,115,116,111,114,97,103,101,32,99,97,110,110,111,116,32,98,101,32,99,104,97,110,103,101,100,32,102,114,111,109,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116,105, +111,110,0,0,0,110,111,110,101,0,0,0,0,105,110,99,114,101,109,101,110,116,97,108,0,0,0,0,0,40,112,0,0,48,112,0,0,56,112,0,0,64,112,0,0,136,44,0,0,80,112,0,0,100,101,108,101,116,101,0,0,112,101,114,115,105,115,116,0,111,102,102,0,0,0,0,0,116,114,117,110,99,97,116,101,0,0,0,0,0,0,0,0,119,97,108,0,0,0,0,0,97,112,112,108,105,99,97,116,105,111,110,95,105,100,0,0,97,117,116,111,109,97,116,105,99,95,105,110,100,101,120,0,98,117,115,121,95,116,105,109,101,111,117,116,0,0,0,0,99,97,99,104,101,95,115,112,105, +108,108,0,0,0,0,0,99,97,115,101,95,115,101,110,115,105,116,105,118,101,95,108,105,107,101,0,0,0,0,0,99,104,101,99,107,112,111,105,110,116,95,102,117,108,108,102,115,121,110,99,0,0,0,0,99,111,108,108,97,116,105,111,110,95,108,105,115,116,0,0,99,111,109,112,105,108,101,95,111,112,116,105,111,110,115,0,99,111,117,110,116,95,99,104,97,110,103,101,115,0,0,0,100,97,116,97,98,97,115,101,95,108,105,115,116,0,0,0,100,101,102,97,117,108,116,95,99,97,99,104,101,95,115,105,122,101,0,0,0,0,0,0,100,101,102,101, +114,95,102,111,114,101,105,103,110,95,107,101,121,115,0,0,0,0,0,0,101,109,112,116,121,95,114,101,115,117,108,116,95,99,97,108,108,98,97,99,107,115,0,0,102,111,114,101,105,103,110,95,107,101,121,95,99,104,101,99,107,0,0,0,0,0,0,0,102,111,114,101,105,103,110,95,107,101,121,95,108,105,115,116,0,0,0,0,0,0,0,0,102,111,114,101,105,103,110,95,107,101,121,115,0,0,0,0,102,114,101,101,108,105,115,116,95,99,111,117,110,116,0,0,102,117,108,108,95,99,111,108,117,109,110,95,110,97,109,101,115,0,0,0,0,0,0,0,102, +117,108,108,102,115,121,110,99,0,0,0,0,0,0,0,105,103,110,111,114,101,95,99,104,101,99,107,95,99,111,110,115,116,114,97,105,110,116,115,0,0,0,0,0,0,0,0,105,110,99,114,101,109,101,110,116,97,108,95,118,97,99,117,117,109,0,0,0,0,0,0,105,110,100,101,120,95,105,110,102,111,0,0,0,0,0,0,105,110,100,101,120,95,108,105,115,116,0,0,0,0,0,0,108,101,103,97,99,121,95,102,105,108,101,95,102,111,114,109,97,116,0,0,0,0,0,0,109,97,120,95,112,97,103,101,95,99,111,117,110,116,0,0,112,97,103,101,95,99,111,117,110,116, +0,0,0,0,0,0,113,117,101,114,121,95,111,110,108,121,0,0,0,0,0,0,113,117,105,99,107,95,99,104,101,99,107,0,0,0,0,0,114,101,97,100,95,117,110,99,111,109,109,105,116,116,101,100,0,0,0,0,0,0,0,0,114,101,99,117,114,115,105,118,101,95,116,114,105,103,103,101,114,115,0,0,0,0,0,0,114,101,118,101,114,115,101,95,117,110,111,114,100,101,114,101,100,95,115,101,108,101,99,116,115,0,0,0,0,0,0,0,115,99,104,101,109,97,95,118,101,114,115,105,111,110,0,0,115,104,111,114,116,95,99,111,108,117,109,110,95,110,97,109,101, +115,0,0,0,0,0,0,115,104,114,105,110,107,95,109,101,109,111,114,121,0,0,0,115,116,97,116,115,0,0,0,116,97,98,108,101,95,105,110,102,111,0,0,0,0,0,0,117,115,101,114,95,118,101,114,115,105,111,110,0,0,0,0,119,97,108,95,99,104,101,99,107,112,111,105,110,116,0,0,119,114,105,116,97,98,108,101,95,115,99,104,101,109,97,0,110,111,32,115,117,99,104,32,105,110,100,101,120,58,32,37,83,0,0,0,0,0,0,0,105,110,100,101,120,32,97,115,115,111,99,105,97,116,101,100,32,119,105,116,104,32,85,78,73,81,85,69,32,111,114, +32,80,82,73,77,65,82,89,32,75,69,89,32,99,111,110,115,116,114,97,105,110,116,32,99,97,110,110,111,116,32,98,101,32,100,114,111,112,112,101,100,0,0,0,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,37,115,32,87,72,69,82,69,32,110,97,109,101,61,37,81,32,65,78,68,32,116,121,112,101,61,39,105,110,100,101,120,39,0,0,0,0,0,0,0,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,114,111,111,116,112,97,103,101,61,37,100,32,87,72,69,82,69,32,35,37,100,32,65,78,68,32,114,111,111,116,112,97,103,101, +61,35,37,100,0,115,113,108,105,116,101,95,115,116,97,116,37,100,0,0,0,48,0,0,0,0,0,0,0,118,97,114,105,97,98,108,101,32,110,117,109,98,101,114,32,109,117,115,116,32,98,101,32,98,101,116,119,101,101,110,32,63,49,32,97,110,100,32,63,37,100,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,83,81,76,32,118,97,114,105,97,98,108,101,115,0,0,116,97,98,108,101,32,37,83,32,104,97,115,32,110,111,32,99,111,108,117,109,110,32,110,97,109,101,100,32,37,115,0,116,97,98,108,101,32,37,83,32,104,97,115,32,37,100,32,99,111, +108,117,109,110,115,32,98,117,116,32,37,100,32,118,97,108,117,101,115,32,119,101,114,101,32,115,117,112,112,108,105,101,100,0,0,0,0,0,37,100,32,118,97,108,117,101,115,32,102,111,114,32,37,100,32,99,111,108,117,109,110,115,0,0,0,0,0,0,0,0,114,111,119,115,32,105,110,115,101,114,116,101,100,0,0,0,97,116,32,109,111,115,116,32,37,100,32,116,97,98,108,101,115,32,105,110,32,97,32,106,111,105,110,0,0,0,0,0,62,60,59,61,0,0,0,0,0,0,105,102,62,59,61,60,113,111,110,112,0,0,0,0,9,8,0,0,0,0,0,0,105,102,0,0,0,0, +0,0,83,69,65,82,67,72,0,0,83,67,65,78,0,0,0,0,37,115,32,83,85,66,81,85,69,82,89,32,37,100,0,0,37,115,32,84,65,66,76,69,32,37,115,0,0,0,0,0,37,115,32,65,83,32,37,115,0,0,0,0,0,0,0,0,37,115,32,85,83,73,78,71,32,80,82,73,77,65,82,89,32,75,69,89,37,46,48,115,37,115,0,0,0,0,0,0,37,115,37,46,48,115,37,115,0,0,0,0,0,0,0,0,37,115,32,85,83,73,78,71,32,65,85,84,79,77,65,84,73,67,32,67,79,86,69,82,73,78,71,32,73,78,68,69,88,37,46,48,115,37,115,0,37,115,32,85,83,73,78,71,32,67,79,86,69,82,73,78,71,32,73,78,68, +69,88,32,37,115,37,115,0,0,0,0,37,115,32,85,83,73,78,71,32,73,78,68,69,88,32,37,115,37,115,0,0,0,0,0,37,115,32,85,83,73,78,71,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,0,0,0,0,37,115,32,40,114,111,119,105,100,61,63,41,0,0,0,0,37,115,32,40,114,111,119,105,100,62,63,32,65,78,68,32,114,111,119,105,100,60,63,41,0,0,0,0,0,0,0,0,37,115,32,40,114,111,119,105,100,62,63,41,0,0,0,0,37,115,32,40,114,111,119,105,100,60,63,41,0,0,0,0,37,115,32,86,73,82,84,85,65,76,32,84,65,66,76,69,32,73,78, +68,69,88,32,37,100,58,37,115,0,0,0,0,32,40,0,0,0,0,0,0,61,0,0,0,0,0,0,0,32,65,78,68,32,0,0,0,65,78,89,40,0,0,0,0,41,0,0,0,0,0,0,0,62,0,0,0,0,0,0,0,60,0,0,0,0,0,0,0,97,117,116,111,109,97,116,105,99,32,105,110,100,101,120,32,111,110,32,37,115,40,37,115,41,0,0,0,0,0,0,0,97,117,116,111,45,105,110,100,101,120,0,0,0,0,0,0,110,111,32,113,117,101,114,121,32,115,111,108,117,116,105,111,110,0,0,0,0,0,0,0,10,10,9,9,8,8,7,7,7,6,6,6,5,5,5,4,4,4,4,3,3,3,3,3,3,2,2,2,2,2,2,2,37,115,46,120,66,101,115,116,73,110,100, +101,120,40,41,32,109,97,108,102,117,110,99,116,105,111,110,0,0,0,0,0,116,97,98,108,101,32,37,115,58,32,120,66,101,115,116,73,110,100,101,120,32,114,101,116,117,114,110,101,100,32,97,110,32,105,110,118,97,108,105,100,32,112,108,97,110,0,0,0,83,81,0,0,0,0,0,0,45,45,32,84,82,73,71,71,69,82,32,37,115,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,2,0,1,0,1,1,4,36,1,4,5,16,0,2,2,2,2,0,2,2,0,0,32,0,0,4,5,4,0,0,1,1,5,5,0,0,0,2,2,16,0,0,0,0,0,0,0,17,17,17,17,8,17,17,17,17,2,2,0,76,76,0,0,0,5,5,21,21,21,21,21,21,0,76,76,76, +76,76,76,76,76,76,76,0,36,2,0,0,2,0,1,1,1,1,8,8,0,2,1,1,1,1,2,0,0,2,2,0,0,0,0,0,0,12,69,21,1,2,0,1,8,2,5,5,5,0,1,0,0,0,0,4,4,4,4,4,0,0,0,1,0,2,2,1,0,0,0,0,16,16,2,16,0,0,0,0,0,1,2,3,4,6,8,8,0,0,0,0,0,0,0,0,144,92,0,0,3,0,0,0,136,92,0,0,3,0,0,0,111,105,100,0,0,0,0,0,70,79,82,69,73,71,78,32,75,69,89,32,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,0,0,0,37,115,46,114,111,119,105,100,0,0,0,0,0,0,0,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,109,111,100,105, +102,105,101,100,0,0,0,0,99,97,110,110,111,116,32,109,111,100,105,102,121,32,37,115,32,98,101,99,97,117,115,101,32,105,116,32,105,115,32,97,32,118,105,101,119,0,0,0,114,111,119,115,32,117,112,100,97,116,101,100,0,0,0,0,95,114,111,119,105,100,95,0,116,111,111,32,109,97,110,121,32,99,111,108,117,109,110,115,32,105,110,32,37,115,0,0,114,111,119,115,32,100,101,108,101,116,101,100,0,0,0,0,110,97,116,117,114,97,108,101,102,116,111,117,116,101,114,105,103,104,116,102,117,108,108,105,110,110,101,114,99,114, +111,115,115,0,0,0,0,0,0,0,0,7,4,6,4,40,10,5,32,14,5,48,19,4,56,23,5,1,28,5,3,0,0,0,117,110,107,110,111,119,110,32,111,114,32,117,110,115,117,112,112,111,114,116,101,100,32,106,111,105,110,32,116,121,112,101,58,32,37,84,32,37,84,37,115,37,84,0,0,0,0,0,82,73,71,72,84,32,97,110,100,32,70,85,76,76,32,79,85,84,69,82,32,74,79,73,78,115,32,97,114,101,32,110,111,116,32,99,117,114,114,101,110,116,108,121,32,115,117,112,112,111,114,116,101,100,0,0,97,32,74,79,73,78,32,99,108,97,117,115,101,32,105,115,32,114, +101,113,117,105,114,101,100,32,98,101,102,111,114,101,32,37,115,0,0,0,0,0,79,78],"i8",Ga,u.Ga+21008); +F([85,83,73,78,71,0,0,0,68,73,83,84,73,78,67,84,0,0,0,0,0,0,0,0,71,82,79,85,80,32,66,89,0,0,0,0,0,0,0,0,82,73,71,72,84,32,80,65,82,84,32,79,70,32,79,82,68,69,82,32,66,89,0,0,79,82,68,69,82,32,66,89,0,0,0,0,0,0,0,0,99,111,108,117,109,110,37,100,0,0,0,0,0,0,0,0,83,67,65,78,32,84,65,66,76,69,32,37,115,37,115,37,115,0,0,0,0,0,0,0,32,85,83,73,78,71,32,67,79,86,69,82,73,78,71,32,73,78,68,69,88,32,0,0,68,73,83,84,73,78,67,84,32,97,103,103,114,101,103,97,116,101,115,32,109,117,115,116,32,104,97,118,101,32, +101,120,97,99,116,108,121,32,111,110,101,32,97,114,103,117,109,101,110,116,0,0,0,0,0,0,85,83,69,32,84,69,77,80,32,66,45,84,82,69,69,32,70,79,82,32,37,115,0,0,79,82,68,69,82,32,66,89,32,99,108,97,117,115,101,32,115,104,111,117,108,100,32,99,111,109,101,32,97,102,116,101,114,32,37,115,32,110,111,116,32,98,101,102,111,114,101,0,76,73,77,73,84,32,99,108,97,117,115,101,32,115,104,111,117,108,100,32,99,111,109,101,32,97,102,116,101,114,32,37,115,32,110,111,116,32,98,101,102,111,114,101,0,0,0,0,97,108,108, +32,86,65,76,85,69,83,32,109,117,115,116,32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,116,101,114,109,115,0,0,0,83,69,76,69,67,84,115,32,116,111,32,116,104,101,32,108,101,102,116,32,97,110,100,32,114,105,103,104,116,32,111,102,32,37,115,32,100,111,32,110,111,116,32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,117,108,116,32,99,111,108,117,109,110,115,0,0,0,0,0,0,0,67,79,77,80,79,85,78,68,32,83,85,66, +81,85,69,82,73,69,83,32,37,100,32,65,78,68,32,37,100,32,37,115,40,37,115,41,0,0,0,0,85,83,73,78,71,32,84,69,77,80,32,66,45,84,82,69,69,32,0,0,0,0,0,0,85,78,73,79,78,32,65,76,76,0,0,0,0,0,0,0,73,78,84,69,82,83,69,67,84,0,0,0,0,0,0,0,69,88,67,69,80,84,0,0,85,78,73,79,78,0,0,0,111,110,108,121,32,97,32,115,105,110,103,108,101,32,114,101,115,117,108,116,32,97,108,108,111,119,101,100,32,102,111,114,32,97,32,83,69,76,69,67,84,32,116,104,97,116,32,105,115,32,112,97,114,116,32,111,102,32,97,110,32,101,120, +112,114,101,115,115,105,111,110,0,112,97,114,97,109,101,116,101,114,115,32,97,114,101,32,110,111,116,32,97,108,108,111,119,101,100,32,105,110,32,118,105,101,119,115,0,0,0,0,0,118,105,101,119,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,0,0,0,0,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,100,114,111,112,112,101,100,0,0,0,0,0,117,115,101,32,68,82,79,80,32,84,65,66,76,69,32,116,111,32,100,101,108,101,116,101,32,116,97,98,108,101,32,37,115,0,0,0,0,0,0,0,117,115,101,32, +68,82,79,80,32,86,73,69,87,32,116,111,32,100,101,108,101,116,101,32,118,105,101,119,32,37,115,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,32,87,72,69,82,69,32,110,97,109,101,61,37,81,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,37,115,32,87,72,69,82,69,32,116,98,108,95,110,97,109,101,61,37,81,32,97,110,100,32,116,121,112,101,33,61,39,116,114,105,103,103,101,114,39,0,102,111,114,101,105,103,110,32,107,101,121,32,111,110,32,37,115, +32,115,104,111,117,108,100,32,114,101,102,101,114,101,110,99,101,32,111,110,108,121,32,111,110,101,32,99,111,108,117,109,110,32,111,102,32,116,97,98,108,101,32,37,84,0,0,110,117,109,98,101,114,32,111,102,32,99,111,108,117,109,110,115,32,105,110,32,102,111,114,101,105,103,110,32,107,101,121,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,99,111,108,117,109,110,115,32,105,110,32,116,104,101,32,114,101,102,101,114,101,110,99,101,100,32,116, +97,98,108,101,0,0,0,117,110,107,110,111,119,110,32,99,111,108,117,109,110,32,34,37,115,34,32,105,110,32,102,111,114,101,105,103,110,32,107,101,121,32,100,101,102,105,110,105,116,105,111,110,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,97,32,84,69,77,80,32,105,110,100,101,120,32,111,110,32,110,111,110,45,84,69,77,80,32,116,97,98,108,101,32,34,37,115,34,0,0,0,0,0,0,0,97,108,116,101,114,116,97,98,95,0,0,0,0,0,0,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,105,110, +100,101,120,101,100,0,0,0,0,0,118,105,101,119,115,32,109,97,121,32,110,111,116,32,98,101,32,105,110,100,101,120,101,100,0,0,0,0,0,0,0,0,118,105,114,116,117,97,108,32,116,97,98,108,101,115,32,109,97,121,32,110,111,116,32,98,101,32,105,110,100,101,120,101,100,0,0,0,0,0,0,0,116,104,101,114,101,32,105,115,32,97,108,114,101,97,100,121,32,97,32,116,97,98,108,101,32,110,97,109,101,100,32,37,115,0,0,0,0,0,0,0,105,110,100,101,120,32,37,115,32,97,108,114,101,97,100,121,32,101,120,105,115,116,115,0,115,113, +108,105,116,101,95,97,117,116,111,105,110,100,101,120,95,37,115,95,37,100,0,0,116,97,98,108,101,32,37,115,32,104,97,115,32,110,111,32,99,111,108,117,109,110,32,110,97,109,101,100,32,37,115,0,99,111,110,102,108,105,99,116,105,110,103,32,79,78,32,67,79,78,70,76,73,67,84,32,99,108,97,117,115,101,115,32,115,112,101,99,105,102,105,101,100,0,0,0,0,0,0,0,67,82,69,65,84,69,37,115,32,73,78,68,69,88,32,37,46,42,115,0,0,0,0,0,32,85,78,73,81,85,69,0,73,78,83,69,82,84,32,73,78,84,79,32,37,81,46,37,115,32,86,65, +76,85,69,83,40,39,105,110,100,101,120,39,44,37,81,44,37,81,44,35,37,100,44,37,81,41,59,0,110,97,109,101,61,39,37,113,39,32,65,78,68,32,116,121,112,101,61,39,105,110,100,101,120,39,0,0,0,0,0,0,116,97,98,108,101,32,34,37,115,34,32,104,97,115,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,112,114,105,109,97,114,121,32,107,101,121,0,0,0,0,0,0,0,0,65,85,84,79,73,78,67,82,69,77,69,78,84,32,105,115,32,111,110,108,121,32,97,108,108,111,119,101,100,32,111,110,32,97,110,32,73,78,84,69,71,69,82,32,80, +82,73,77,65,82,89,32,75,69,89,0,100,101,102,97,117,108,116,32,118,97,108,117,101,32,111,102,32,99,111,108,117,109,110,32,91,37,115,93,32,105,115,32,110,111,116,32,99,111,110,115,116,97,110,116,0,0,0,0,116,111,111,32,109,97,110,121,32,99,111,108,117,109,110,115,32,111,110,32,37,115,0,0,100,117,112,108,105,99,97,116,101,32,99,111,108,117,109,110,32,110,97,109,101,58,32,37,115,0,0,0,0,0,0,0,65,85,84,79,73,78,67,82,69,77,69,78,84,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,87,73,84,72, +79,85,84,32,82,79,87,73,68,32,116,97,98,108,101,115,0,0,0,0,0,0,0,80,82,73,77,65,82,89,32,75,69,89,32,109,105,115,115,105,110,103,32,111,110,32,116,97,98,108,101,32,37,115,0,84,65,66,76,69,0,0,0,86,73,69,87,0,0,0,0,67,82,69,65,84,69,32,37,115,32,37,46,42,115,0,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,116,121,112,101,61,39,37,115,39,44,32,110,97,109,101,61,37,81,44,32,116,98,108,95,110,97,109,101,61,37,81,44,32,114,111,111,116,112,97,103,101,61,35,37,100,44,32,115,113,108,61,37,81,32, +87,72,69,82,69,32,114,111,119,105,100,61,35,37,100,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,40,110,97,109,101,44,115,101,113,41,0,0,0,0,0,0,0,116,98,108,95,110,97,109,101,61,39,37,113,39,32,65,78,68,32,116,121,112,101,33,61,39,116,114,105,103,103,101,114,39,0,0,0,0,0,0,0,10,32,32,0,0,0,0,0,44,10,32,32,0,0,0,0,10,41,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,0,0,0,120,130,0,0,248,6,0,0,128,130,0,0,136,130,0,0,144,130,0,0, +0,0,0,0,32,84,69,88,84,0,0,0,32,78,85,77,0,0,0,0,32,73,78,84,0,0,0,0,32,82,69,65,76,0,0,0,116,101,109,112,111,114,97,114,121,32,116,97,98,108,101,32,110,97,109,101,32,109,117,115,116,32,98,101,32,117,110,113,117,97,108,105,102,105,101,100,0,0,0,0,0,0,0,0,116,97,98,108,101,32,37,84,32,97,108,114,101,97,100,121,32,101,120,105,115,116,115,0,116,104,101,114,101,32,105,115,32,97,108,114,101,97,100,121,32,97,110,32,105,110,100,101,120,32,110,97,109,101,100,32,37,115,0,0,0,0,0,0,24,131,0,0,32,131,0,0,40, +131,0,0,0,0,0,0,66,69,71,73,78,0,0,0,82,69,76,69,65,83,69,0,82,79,76,76,66,65,67,75,0,0,0,0,0,0,0,0,67,79,77,77,73,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,97,114,115,101,114,32,115,116,97,99,107,32,111,118,101,114,102,108,111,119,0,0,0,224,3,33,4,75,5,132,4,180,4,180,4,1,0,6,1,237,255,135,0,135,0,8,3,180,4,180,4,180,4,180,4,69,0,69,0,53,0,208,0,27,1,243,2,58,0,213,2,136,2,59,2,238,1,161,1,84,1,7,1,212,0,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,110,3,59,3,161,3, +212,3,212,3,46,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,234,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,185,255,209,255,209,255,209,255,209,255,209,255,0,0,29,0,244,255,27,1,27,1,139,0,91,0,136,1,136,1,126,3,160,2,214,2,103,5,170,255,170,255,170,255,88,0,62,1,62,1,99,0,125,1,236,255,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27, +1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,112,2,108,3,214,2,160,2,60,5,60,5,60,5,60,5,60,5,60,5,170,255,170,255,170,255,49,1,136,0,136,0,142,0,167,0,226,0,154,0,137,0,152,0,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,80,1,80,1,80,1,27,1,27,1,96,1,27,1,27,1,27,1,27,1,27,1,228,0,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,245,1,57,2,84,2,84,2,84,2,251,1,241,1,185,1,135,1,97,1,156,0,156,0,89,3,97,1,89,3,223,2,45,3,127,2,203,2,156,0,76,1,203, +2,203,2,240,1,163,1,134,2,77,5,160,4,160,4,55,5,55,5,160,4,61,5,236,4,120,4,66,5,66,5,66,5,66,5,160,4,26,5,120,4,61,5,236,4,236,4,120,4,160,4,26,5,182,4,4,5,160,4,160,4,26,5,160,4,26,5,160,4,26,5,238,4,183,4,183,4,183,4,250,4,238,4,183,4,193,4,183,4,250,4,183,4,183,4,161,4,176,4,161,4,176,4,161,4,176,4,160,4,160,4,137,4,238,4,178,4,178,4,238,4,130,4,131,4,123,4,128,4,120,4,217,4,215,4,226,4,226,4,230,4,230,4,230,4,230,4,170,255,170,255,170,255,170,255,170,255,170,255,44,4,48,1,14,2,249,0,152,1,173, +255,178,1,44,3,27,0,43,3,39,3,34,3,239,2,77,2,139,2,163,0,131,0,162,2,110,1,194,1,43,1,148,0,23,0,102,0,229,0,235,255,221,4,220,4,198,4,75,4,204,4,148,4,199,4,191,4,189,4,91,4,82,4,99,4,86,4,185,4,81,4,188,4,202,4,74,4,65,4,116,4,115,4,80,4,165,4,154,4,70,4,187,4,181,4,163,4,77,4,47,4,129,4,151,4,122,4,114,4,127,4,67,4,140,4,141,4,139,4,45,4,48,4,124,4,88,4,110,4,103,4,105,4,102,4,68,4,90,4,94,4,64,4,66,4,69,4,63,4,60,4,219,3,55,4,53,4,50,4,41,4,156,3,253,3,246,3,236,3,238,3,51,3,227,2,128,3,87,3, +36,3,227,2,228,2,224,2,178,2,142,2,153,2,106,2,70,2,56,2,16,2,42,2,123,1,20,2,223,1,199,1,123,1,176,1,115,1,85,1,28,0,82,1,116,0,245,255,199,255,171,255,7,0,248,255,3,0,0,0,0,0,135,2,196,3,196,3,196,3,110,3,110,3,201,3,196,3,6,3,34,3,34,3,170,3,201,3,201,3,201,3,108,3,201,3,201,3,201,3,196,3,201,3,10,3,40,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,169,3,171,3,48,3,47,3,150,3,21,3,45,3,38,3,42,3,111,3,104,3,105,3,103,3,107,3,112,3,201,3,41,3,73,3,88,3,72,3,201,3,201,3,201,3,201,3,201,3,201, +3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,82,3,87,3,94,3,86,3,83,3,75,3,74,3,76,3,77,3,201,3,201,3,161,2,227,2,201,3,201,3,78,3,201,3,173,2,79,3,91,3,90,3,89,3,168,2,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201, +3,201,3,135,2,196,3,201,3,201,3,196,3,196,3,196,3,196,3,196,3,196,3,188,3,10,3,0,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,176,3,174,3,201,3,123,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,141,2,201,3,143,3,6,3,6,3,6,3,8,3,242,2,254,2,143,2,44,3,23,3,23,3,155,3,44,3,155,3,198,2,221,2,195,2,34,3,23,3,106,3,34,3,34,3,7,3,254, +2,201,3,181,3,14,3,14,3,173,3,173,3,14,3,53,3,231,2,44,3,238,2,238,2,238,2,238,2,14,3,158,2,44,3,53,3,231,2,231,2,44,3,14,3,158,2,149,3,147,3,14,3,14,3,158,2,14,3,158,2,14,3,158,2,116,3,229,2,229,2,229,2,213,2,116,3,229,2,198,2,229,2,213,2,229,2,229,2,27,3,22,3,27,3,22,3,27,3,22,3,14,3,14,3,201,3,116,3,120,3,120,3,116,3,39,3,28,3,37,3,35,3,44,3,164,2,216,2,151,2,151,2,140,2,140,2,140,2,140,2,193,3,193,3,188,3,200,2,200,2,183,2,201,3,201,3,201,3,201,3,201,3,201,3,175,2,201,3,125,3,201,3,201,3,201, +3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,60,3,201,3,136,2,183,3,201,3,201,3,180,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,153,3,201,3,201,3,201,3,201,3,201,3,201,3,146,3,145,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,245,2,201,3,201,3,201,3,249,2,201,3,201,3,201,3,201,3,201,3,201,3,36,3,201,3,29,3,201, +3,109,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,198,3,201,3,201,3,201,3,197,3,201,3,201,3,201,3,201,3,201,3,62,3,201,3,61,3,65,3,201,3,149,2,201,3,132,2,137,2,192,3,195,3,194,3,191,3,190,3,189,3,184,3,182,3,179,3,178,3,177,3,175,3,172,3,168,3,129,3,127,3,134,3,133,3,132,3,131,3,130,3,128,3,126,3,124,3,50,3,49,3,46,3,43,3,241,2,167,3,122,3,240,2,237,2,236,2,157,2,185,3,152,3,161,3,160,3,159,3,54,3,158,3,157,3,156,3,154,3,151,3,138,3,52,3,51,3,232,2,114,3,113,3,160,2,142,3,141,3, +140,3,144,3,148,3,139,3,16,3,239,2,159,2,156,2,163,2,167,2,219,2,220,2,228,2,226,2,225,2,224,2,223,2,222,2,218,2,169,2,174,2,212,2,197,2,196,2,205,2,204,2,210,2,209,2,208,2,207,2,206,2,203,2,202,2,201,2,194,2,193,2,199,2,192,2,215,2,214,2,211,2,191,2,235,2,234,2,233,2,230,2,190,2,189,2,188,2,65,3,187,2,186,2,70,3,69,3,98,3,58,3,243,2,247,2,246,2,250,2,251,2,3,3,2,3,1,3,12,3,13,3,25,3,24,3,56,3,55,3,26,3,11,3,5,3,4,3,20,3,19,3,18,3,17,3,9,3,255,2,31,3,30,3,100,3,15,3,99,3,97,3,166,3,165,3,164,3,163, +3,162,3,102,3,199,3,200,3,119,3,121,3,118,3,33,3,32,3,117,3,101,3,71,3,68,3,178,2,179,2,137,3,136,3,135,3,181,2,180,2,177,2,176,2,95,3,92,3,84,3,96,3,93,3,85,3,81,3,80,3,66,3,64,3,63,3,59,3,67,3,248,2,244,2,57,3,253,2,252,2,185,2,184,2,182,2,166,2,165,2,162,2,155,2,153,2,152,2,154,2,150,2,148,2,147,2,146,2,145,2,144,2,172,2,171,2,170,2,142,2,139,2,138,2,134,2,133,2,131,2,0,0,0,0,19,22,22,23,1,24,26,15,27,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,108,109,110,27,28,23,50,51,80,81,82,83,122,85, +86,87,88,89,90,91,92,93,94,95,22,70,23,71,72,73,74,75,76,77,78,79,80,81,82,83,122,85,86,87,88,89,90,91,92,93,94,95,19,97,91,92,93,94,95,26,85,86,87,88,89,90,91,92,93,94,95,27,28,97,98,99,122,211,102,103,104,79,19,50,51,19,122,59,55,113,224,225,226,89,90,91,92,93,94,95,23,27,28,26,71,72,73,74,75,76,77,78,79,80,81,82,83,51,85,86,87,88,89,90,91,92,93,94,95,19,132,133,58,89,90,21,108,109,110,27,28,97,98,33,100,7,8,119,120,22,19,107,42,109,27,28,27,28,95,28,50,51,99,100,101,102,103,104,105,27,28,97,98, +107,152,112,132,133,112,65,69,71,72,73,74,75,76,77,78,79,80,81,82,83,11,85,86,87,88,89,90,91,92,93,94,95,19,101,97,97,98,24,101,122,157,12,99,103,112,102,103,104,152,22,97,98,97,98,27,28,113,27,29,91,164,165,124,50,51,97,98,219,59,132,133,134,22,23,45,66,47,212,213,124,140,132,133,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,164,165,27,28,230,50,51,233,108,109,110,70,16,59,23,97,98,26,97,22,66,185,12,187,27,28,71,72,73,74,75,76,77,78,79,80,81,82,83,29,85,86,87,88, +89,90,91,92,93,94,95,19,22,148,149,45,23,47,62,154,64,156,108,109,110,37,69,23,163,59,26,26,97,98,144,145,146,147,152,200,52,23,50,51,26,22,89,90,60,210,7,8,9,138,97,22,23,26,101,26,174,175,197,71,72,73,74,75,76,77,78,79,80,81,82,83,16,85,86,87,88,89,90,91,92,93,94,95,19,132,133,134,23,152,208,209,140,152,152,111,195,196,98,70,163,160,152,23,22,164,165,246,207,27,152,174,175,171,172,50,51,137,62,139,64,171,172,222,124,27,138,24,163,89,90,130,174,175,197,163,71,72,73,74,75,76,77,78,79,80,81,82,83, +22,85,86,87,88,89,90,91,92,93,94,95,19,197,181,182,23,208,209,152,197,26,189,132,133,232,224,225,226,152,97,91,26,232,116,212,213,152,222,121,152,174,175,50,51,243,97,22,23,22,234,174,175,177,23,239,116,163,177,174,175,121,174,175,71,72,73,74,75,76,77,78,79,80,81,82,83,24,85,86,87,88,89,90,91,92,93,94,95,19,23,197,11,23,227,70,208,220,152,31,224,225,226,35,98,224,225,226,108,109,110,115,152,117,118,27,222,49,123,24,50,51,27,0,1,2,224,225,226,166,124,168,169,239,174,175,170,171,172,22,194,71,72,73, +74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,19,22,208,24,23,195,196,170,171,172,174,175,152,26,152,152,152,207,152,97,152,23,152,51,244,152,97,152,247,248,23,50,51,26,174,175,174,175,174,175,174,175,174,175,174,175,23,174,175,174,175,188,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,19,152,107,152,33,24,152,100,101,27,174,175,152,42,152,23,152,26,152,23,152,26,152,174,175,174,175,152,174,175,23,50,51,26,174,175,174,175,174,175,174,175,174,175,174, +175,163,119,120,174,175,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,66,152,97,197,23,50,51,26,53,23,174,175,26,23,23,23,26,26,26,36,106,146,147,174,175,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,152,196,119,120,19,50,51,168,169,26,174,175,207,28,152,249,250,152,163,163,163,163,174,175,163,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,152,197,197,197,197,50,51,197,194,36,174,175,191,192,152,191, +192,163,152,66,124,152,174,175,152,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,197,152,100,188,152,50,51,152,152,188,174,175,252,152,94,95,152,152,152,1,2,152,152,174,175,19,152,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,152,188,188,22,194,50,51,240,173,194,174,175,252,194,152,36,181,28,152,23,219,122,174,175,219,221,152,152,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,19,20,152,22,23,194,152,240,27,28,174,175, +240,19,20,26,22,194,194,38,22,27,28,152,23,22,152,116,174,175,152,23,38,152,23,152,221,152,57,152,23,163,50,51,194,174,175,66,174,175,69,57,174,175,40,174,175,174,175,174,175,174,175,69,22,53,74,75,30,53,89,90,22,22,152,197,23,96,97,98,22,152,101,89,90,91,208,209,152,53,96,97,98,101,22,101,174,175,152,19,20,105,22,174,175,112,19,27,28,20,174,175,24,132,133,134,135,136,38,44,174,175,107,61,54,26,132,133,134,135,136,54,107,22,5,140,1,57,36,111,122,28,79,79,131,123,66,19,20,69,22,1,16,20,125,27,28,123, +111,120,23,131,23,16,68,142,38,15,22,89,90,3,167,4,248,251,96,97,98,180,180,101,251,151,6,57,151,13,151,26,25,151,161,202,153,162,153,69,130,128,203,19,20,127,22,126,204,129,22,27,28,205,132,133,134,135,136,89,90,231,38,95,137,179,96,97,98,206,179,101,122,107,159,159,125,231,216,228,107,57,184,217,216,176,217,176,48,106,18,184,158,69,159,158,46,71,237,176,176,176,132,133,134,135,136,217,176,137,216,178,158,89,90,179,176,159,179,159,96,97,98,159,159,101,5,158,202,22,18,10,11,12,13,14,190,238,17,190, +158,193,41,159,202,193,159,202,245,193,193,223,190,32,159,34,132,133,134,135,136,159,39,155,43,150,223,177,201,178,177,186,66,199,177,152,253,56,215,152,182,152,202,152,63,152,152,66,67,242,229,152,174,152,152,152,152,152,152,152,199,242,202,152,198,152,152,152,183,192,152,215,152,183,215,183,152,241,214,152,211,152,152,211,211,152,152,241,152,152,152,152,152,152,152,114,152,152,235,152,152,152,174,187,95,174,253,253,253,253,236,253,253,253,253,253,253,253,253,253,253,253,141,0,0,0,0,0,0,0,0,0,27, +27,27,27,0,27,27,27,0,27,27,27,27,0,0,0,27,0,0,27,0,0,0,27,0,0,0,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,0,0,100,97,116,97,98,97,115,101,32,115,99,104,101,109,97,32,105,115,32,108,111,99,107,101,100,58,32,37,115,0,0,0,115,116,97,116,101,109,101,110,116,32,116,111,111,32,108,111,110,103,0,0,0,0,0,0,96,146,0,0,104,146,0,0,112,146,0,0,120,146,0,0,128,146,0,0,136,146,0,0,144,146,0,0,152,146,0,0,160,146,0,0,248,30,0,0,24, +109,0,0,176,146,0,0,97,100,100,114,0,0,0,0,111,112,99,111,100,101,0,0,112,49,0,0,0,0,0,0,112,50,0,0,0,0,0,0,112,51,0,0,0,0,0,0,112,52,0,0,0,0,0,0,112,53,0,0,0,0,0,0,99,111,109,109,101,110,116,0,115,101,108,101,99,116,105,100,0,0,0,0,0,0,0,0,100,101,116,97,105,108,0,0,117,110,111,112,101,110,101,100,0,0,0,0,0,0,0,0,110,111,32,115,117,99,104,32,118,105,101,119,0,0,0,0,110,111,32,115,117,99,104,32,116,97,98,108,101,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,118,97,108,117,101,32,111,102,32,116, +121,112,101,32,37,115,0,0,0,0,110,111,32,115,117,99,104,32,114,111,119,105,100,58,32,37,108,108,100,0,0,0,0,0,98,105,110,100,32,111,110,32,97,32,98,117,115,121,32,112,114,101,112,97,114,101,100,32,115,116,97,116,101,109,101,110,116,58,32,91,37,115,93,0,0,0,0,0,248,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,128,147,0,0,144,147,0,0,152,147,0,0,160,147,0,0,78,79,84,32,78,85,76,76,0,0,0,0,0,0,0,0,85,78,73,81,85,69,0,0,67,72,69,67,75,0,0,0,70,79,82,69,73,71,78,32,75,69,89,0, +0,0,0,0,97,98,111,114,116,32,97,116,32,37,100,32,105,110,32,91,37,115,93,58,32,37,115,0,37,115,32,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,58,32,37,115,0,0,0,0,0,0,0,0,37,115,32,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,0,0,0,0,0,0,0,0,1,2,0,2,2,0,0,0,0,0,0,0,0,1,2,1,1,1,2,1,2,0,0,0,0,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,115,97,118,101,112,111,105,110,116,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111, +103,114,101,115,115,0,0,0,0,0,0,110,111,32,115,117,99,104,32,115,97,118,101,112,111,105,110,116,58,32,37,115,0,0,0,99,97,110,110,111,116,32,114,101,108,101,97,115,101,32,115,97,118,101,112,111,105,110,116,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114,101,115,115,0,0,0,99,97,110,110,111,116,32,99,111,109,109,105,116,32,116,114,97,110,115,97,99,116,105,111,110,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114, +101,115,115,0,0,99,97,110,110,111,116,32,115,116,97,114,116,32,97,32,116,114,97,110,115,97,99,116,105,111,110,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,99,97,110,110,111,116,32,114,111,108,108,98,97,99,107,32,45,32,110,111,32,116,114,97,110,115,97,99,116,105,111,110,32,105,115,32,97,99,116,105,118,101,0,0,0,0,0,0,99,97,110,110,111,116,32,99,111,109,109,105,116,32,45,32,110,111,32,116,114,97,110,115,97,99,116,105,111,110,32,105,115,32,97,99,116,105,118,101,0,0, +0,0,0,0,0,0,83,69,76,69,67,84,32,110,97,109,101,44,32,114,111,111,116,112,97,103,101,44,32,115,113,108,32,70,82,79,77,32,39,37,113,39,46,37,115,32,87,72,69,82,69,32,37,115,32,79,82,68,69,82,32,66,89,32,114,111,119,105,100,0,116,111,111,32,109,97,110,121,32,108,101,118,101,108,115,32,111,102,32,116,114,105,103,103,101,114,32,114,101,99,117,114,115,105,111,110,0,0,0,0,99,97,110,110,111,116,32,99,104,97,110,103,101,32,37,115,32,119,97,108,32,109,111,100,101,32,102,114,111,109,32,119,105,116,104,105, +110,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,105,110,116,111,0,0,0,0,111,117,116,32,111,102,0,0,100,97,116,97,98,97,115,101,32,116,97,98,108,101,32,105,115,32,108,111,99,107,101,100,58,32,37,115,0,0,0,0,115,116,97,116,101,109,101,110,116,32,97,98,111,114,116,115,32,97,116,32,37,100,58,32,91,37,115,93,32,37,115,0,45,45,32,0,0,0,0,0,39,37,46,42,113,39,0,0,122,101,114,111,98,108,111,98,40,37,100,41,0,0,0,0,120,39,0,0,0,0,0,0,37,48,50,120,0,0,0,0,39,0,0,0,0,0,0,0,99,97,110,110,111, +116,32,86,65,67,85,85,77,32,102,114,111,109,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,99,97,110,110,111,116,32,86,65,67,85,85,77,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114,101,115,115,0,0,0,0,0,0,65,84,84,65,67,72,32,39,58,109,101,109,111,114,121,58,39,32,65,83,32,118,97,99,117,117,109,95,100,98,59,0,65,84,84,65,67,72,32,39,39,32,65,83,32,118,97,99,117,117,109,95,100,98,59,0,80,82,65,71,77,65,32,118,97,99,117, +117,109,95,100,98,46,115,121,110,99,104,114,111,110,111,117,115,61,79,70,70,0,0,0,0,0,0,0,0,66,69,71,73,78,59,0,0,83,69,76,69,67,84,32,39,67,82,69,65,84,69,32,84,65,66,76,69,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,49,52,41,32,32,32,70,82,79,77,32,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,116,121,112,101,61,39,116,97,98,108,101,39,32,65,78,68,32,110,97,109,101,33,61,39,115,113,108,105,116,101,95,115,101,113,117,101, +110,99,101,39,32,32,32,65,78,68,32,99,111,97,108,101,115,99,101,40,114,111,111,116,112,97,103,101,44,49,41,62,48,0,0,0,0,0,83,69,76,69,67,84,32,39,67,82,69,65,84,69,32,73,78,68,69,88,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,49,52,41,32,32,70,82,79,77,32,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,115,113,108,32,76,73,75,69,32,39,67,82,69,65,84,69,32,73,78,68,69,88,32,37,39,32,0,83,69,76,69,67,84,32,39,67,82,69,65,84, +69,32,85,78,73,81,85,69,32,73,78,68,69,88,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,50,49,41,32,32,32,70,82,79,77,32,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,115,113,108,32,76,73,75,69,32,39,67,82,69,65,84,69,32,85,78,73,81,85,69,32,73,78,68,69,88,32,37,39,0,0,0,83,69,76,69,67,84,32,39,73,78,83,69,82,84,32,73,78,84,79,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32, +124,124,32,39,32,83,69,76,69,67,84,32,42,32,70,82,79,77,32,109,97,105,110,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,59,39,70,82,79,77,32,109,97,105,110,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,116,121,112,101,32,61,32,39,116,97,98,108,101,39,32,65,78,68,32,110,97,109,101,33,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,32,32,32,65,78,68,32,99,111,97,108,101,115,99,101,40,114,111,111,116,112,97,103,101,44,49, +41,62,48,0,0,0,0,0,83,69,76,69,67,84,32,39,68,69,76,69,84,69,32,70,82,79,77,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,59,39,32,70,82,79,77,32,118,97,99,117,117,109,95,100,98,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,110,97,109,101,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,32,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,39,73,78,83,69,82,84,32,73,78,84,79,32,118,97,99,117,117,109, +95,100,98,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,32,83,69,76,69,67,84,32,42,32,70,82,79,77,32,109,97,105,110,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,59,39,32,70,82,79,77,32,118,97,99,117,117,109,95,100,98,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,110,97,109,101,61,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,59,0,0,0,0,0,0,73,78,83,69,82,84,32,73,78,84,79,32,118,97,99, +117,117,109,95,100,98,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,32,32,83,69,76,69,67,84,32,116,121,112,101,44,32,110,97,109,101,44,32,116,98,108,95,110,97,109,101,44,32,114,111,111,116,112,97,103,101,44,32,115,113,108,32,32,32,32,70,82,79,77,32,109,97,105,110,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,32,32,87,72,69,82,69,32,116,121,112,101,61,39,118,105,101,119,39,32,79,82,32,116,121,112,101,61,39,116,114,105,103,103,101,114,39,32,32,32,32,32,32,79,82,32,40,116,121,112, +101,61,39,116,97,98,108,101,39,32,65,78,68,32,114,111,111,116,112,97,103,101,61,48,41,0,1,1,3,0,5,0,6,0,8,0,0,0,0,0,0,0,77,97,105,110,32,102,114,101,101,108,105,115,116,58,32,0,76,105,115,116,32,111,102,32,116,114,101,101,32,114,111,111,116,115,58,32,0,0,0,0,80,97,103,101,32,37,100,32,105,115,32,110,101,118,101,114,32,117,115,101,100,0,0,0,80,111,105,110,116,101,114,32,109,97,112,32,112,97,103,101,32,37,100,32,105,115,32,114,101,102,101,114,101,110,99,101,100,0,0,0,0,0,0,0,79,117,116,115,116,97,110, +100,105,110,103,32,112,97,103,101,32,99,111,117,110,116,32,103,111,101,115,32,102,114,111,109,32,37,100,32,116,111,32,37,100,32,100,117,114,105,110,103,32,116,104,105,115,32,97,110,97,108,121,115,105,115,0,0,10,0,0,0,0,0,0,0,80,97,103,101,32,37,100,58,32,0,0,0,0,0,0,0,117,110,97,98,108,101,32,116,111,32,103,101,116,32,116,104,101,32,112,97,103,101,46,32,101,114,114,111,114,32,99,111,100,101,61,37,100,0,0,0,98,116,114,101,101,73,110,105,116,80,97,103,101,40,41,32,114,101,116,117,114,110,115,32,101, +114,114,111,114,32,99,111,100,101,32,37,100,0,0,0,79,110,32,116,114,101,101,32,112,97,103,101,32,37,100,32,99,101,108,108,32,37,100,58,32,0,0,0,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,112,114,101,118,105,111,117,115,32,119,97,115,32,37,108,108,100,41,0,0,0,0,0,67,104,105,108,100,32,112,97,103,101,32,100,101,112,116,104,32,100,105,102,102,101,114,115,0,0,0,0,0,0,0,0,79,110,32,112,97,103,101,32,37,100,32,97,116,32,114,105,103,104,116,32,99, +104,105,108,100,58,32,0,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,97,120,32,108,97,114,103,101,114,32,116,104,97,110,32,112,97,114,101,110,116,32,109,105,110,32,111,102,32,37,108,108,100,41,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,105,110,32,108,101,115,115,32,116,104,97,110,32,112,97,114,101,110,116,32,109,105,110,32,111,102,32,37,108,108,100,41,0,0,0,0,0,0,82,111,119,105, +100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,97,120,32,108,97,114,103,101,114,32,116,104,97,110,32,112,97,114,101,110,116,32,109,97,120,32,111,102,32,37,108,108,100,41,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,105,110,32,108,101,115,115,32,116,104,97,110,32,112,97,114,101,110,116,32,109,97,120,32,111,102,32,37,108,108,100,41,0,0,0,0,0,0,67,111,114,114,117,112,116,105,111,110,32,100,101,116,101,99,116, +101,100,32,105,110,32,99,101,108,108,32,37,100,32,111,110,32,112,97,103,101,32,37,100,0,0,0,0,0,0,0,77,117,108,116,105,112,108,101,32,117,115,101,115,32,102,111,114,32,98,121,116,101,32,37,100,32,111,102,32,112,97,103,101,32,37,100,0,0,0,0,70,114,97,103,109,101,110,116,97,116,105,111,110,32,111,102,32,37,100,32,98,121,116,101,115,32,114,101,112,111,114,116,101,100,32,97,115,32,37,100,32,111,110,32,112,97,103,101,32,37,100,0,0,0,0,0,105,110,118,97,108,105,100,32,112,97,103,101,32,110,117,109,98,101, +114,32,37,100,0,0,50,110,100,32,114,101,102,101,114,101,110,99,101,32,116,111,32,112,97,103,101,32,37,100,0,0,0,0,0,0,0,0,70,97,105,108,101,100,32,116,111,32,114,101,97,100,32,112,116,114,109,97,112,32,107,101,121,61,37,100,0,0,0,0,66,97,100,32,112,116,114,32,109,97,112,32,101,110,116,114,121,32,107,101,121,61,37,100,32,101,120,112,101,99,116,101,100,61,40,37,100,44,37,100,41,32,103,111,116,61,40,37,100,44,37,100,41,0,0,0,37,100,32,111,102,32,37,100,32,112,97,103,101,115,32,109,105,115,115,105,110, +103,32,102,114,111,109,32,111,118,101,114,102,108,111,119,32,108,105,115,116,32,115,116,97,114,116,105,110,103,32,97,116,32,37,100,0,0,0,0,0,0,0,0,102,97,105,108,101,100,32,116,111,32,103,101,116,32,112,97,103,101,32,37,100,0,0,0,102,114,101,101,108,105,115,116,32,108,101,97,102,32,99,111,117,110,116,32,116,111,111,32,98,105,103,32,111,110,32,112,97,103,101,32,37,100,0,0,83,81,76,105,116,101,32,102,111,114,109,97,116,32,51,0,37,115,45,109,106,88,88,88,88,88,88,57,88,88,122,0,77,74,32,100,101,108, +101,116,101,58,32,37,115,0,0,0,77,74,32,99,111,108,108,105,100,101,58,32,37,115,0,0,45,109,106,37,48,54,88,57,37,48,50,88,0,0,0,0,37,46,50,120,0,0,0,0,107,40,37,100,0,0,0,0,110,105,108,0,0,0,0,0,66,0,0,0,0,0,0,0,44,46,46,46,0,0,0,0,40,37,46,50,48,115,41,0,37,115,40,37,100,41,0,0,37,100,0,0,0,0,0,0,40,98,108,111,98,41,0,0,118,116,97,98,58,37,112,58,37,112,0,0,0,0,0,0,105,110,116,97,114,114,97,121,0,0,0,0,0,0,0,0,112,114,111,103,114,97,109,0,72,34,0,0,240,162,0,0,0,163,0,0,16,163,0,0,32,163,0,0,48, +163,0,0,64,163,0,0,80,163,0,0,96,163,0,0,104,163,0,0,112,163,0,0,120,163,0,0,136,163,0,0,152,163,0,0,160,163,0,0,168,163,0,0,176,163,0,0,184,163,0,0,192,163,0,0,200,163,0,0,208,163,0,0,224,163,0,0,240,163,0,0,248,163,0,0,8,164,0,0,16,164,0,0,24,164,0,0,32,164,0,0,40,164,0,0,48,164,0,0,64,164,0,0,72,164,0,0,88,164,0,0,96,164,0,0,104,164,0,0,112,164,0,0,128,164,0,0,136,164,0,0,144,164,0,0,160,164,0,0,176,164,0,0,192,164,0,0,200,164,0,0,208,164,0,0,216,164,0,0,224,164,0,0,232,164,0,0,240,164,0,0,0,165, +0,0,16,165,0,0,24,165,0,0,40,165,0,0,56,165,0,0,72,165,0,0,88,165,0,0,104,165,0,0,120,165,0,0,136,165,0,0,152,165,0,0,160,165,0,0,168,165,0,0,176,165,0,0,184,165,0,0,192,165,0,0,200,165,0,0,216,165,0,0,232,165,0,0,240,165,0,0,0,166,0,0,16,166,0,0,32,166,0,0,40,166,0,0,48,166,0,0,56,166,0,0,72,166,0,0,80,166,0,0,96,166,0,0,104,166,0,0,112,166,0,0,120,166,0,0,128,166,0,0,136,166,0,0,144,166,0,0,152,166,0,0,160,166,0,0,176,166,0,0,184,166,0,0,192,166,0,0,208,166,0,0,224,166,0,0,232,166,0,0,248,166,0, +0,8,167,0,0,16,167,0,0,32,167,0,0,40,167,0,0,56,167,0,0,64,167,0,0,72,167,0,0,80,167,0,0,88,167,0,0,96,167,0,0,104,167,0,0,112,167],"i8",Ga,u.Ga+31248); +F([128,167,0,0,136,167,0,0,144,167,0,0,160,167,0,0,176,167,0,0,192,167,0,0,208,167,0,0,216,167,0,0,224,167,0,0,232,167,0,0,240,167,0,0,248,167,0,0,0,168,0,0,16,168,0,0,32,168,0,0,48,168,0,0,64,168,0,0,80,168,0,0,96,168,0,0,112,168,0,0,128,168,0,0,144,168,0,0,160,168,0,0,176,168,0,0,192,168,0,0,200,168,0,0,208,168,0,0,224,168,0,0,240,168,0,0,248,168,0,0,0,169,0,0,8,169,0,0,16,169,0,0,24,169,0,0,40,169,0,0,56,169,0,0,64,169,0,0,80,169,0,0,88,169,0,0,96,169,0,0,104,169,0,0,112,169,0,0,128,169,0,0,136, +169,0,0,144,169,0,0,160,169,0,0,168,169,0,0,176,169,0,0,184,169,0,0,192,169,0,0,208,169,0,0,224,169,0,0,232,169,0,0,240,169,0,0,70,117,110,99,116,105,111,110,0,0,0,0,0,0,0,0,83,97,118,101,112,111,105,110,116,0,0,0,0,0,0,0,65,117,116,111,67,111,109,109,105,116,0,0,0,0,0,0,84,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,83,111,114,116,101,114,78,101,120,116,0,0,0,0,0,0,80,114,101,118,73,102,79,112,101,110,0,0,0,0,0,0,78,101,120,116,73,102,79,112,101,110,0,0,0,0,0,0,80,114,101,118,0,0,0,0,78,101,120, +116,0,0,0,0,65,103,103,83,116,101,112,0,67,104,101,99,107,112,111,105,110,116,0,0,0,0,0,0,74,111,117,114,110,97,108,77,111,100,101,0,0,0,0,0,86,97,99,117,117,109,0,0,86,70,105,108,116,101,114,0,86,85,112,100,97,116,101,0,71,111,116,111,0,0,0,0,71,111,115,117,98,0,0,0,82,101,116,117,114,110,0,0,78,111,116,0,0,0,0,0,73,110,105,116,67,111,114,111,117,116,105,110,101,0,0,0,69,110,100,67,111,114,111,117,116,105,110,101,0,0,0,0,89,105,101,108,100,0,0,0,72,97,108,116,73,102,78,117,108,108,0,0,0,0,0,0,72, +97,108,116,0,0,0,0,73,110,116,101,103,101,114,0,73,110,116,54,52,0,0,0,83,116,114,105,110,103,0,0,78,117,108,108,0,0,0,0,83,111,102,116,78,117,108,108,0,0,0,0,0,0,0,0,66,108,111,98,0,0,0,0,86,97,114,105,97,98,108,101,0,0,0,0,0,0,0,0,77,111,118,101,0,0,0,0,67,111,112,121,0,0,0,0,83,67,111,112,121,0,0,0,82,101,115,117,108,116,82,111,119,0,0,0,0,0,0,0,67,111,108,108,83,101,113,0,65,100,100,73,109,109,0,0,77,117,115,116,66,101,73,110,116,0,0,0,0,0,0,0,82,101,97,108,65,102,102,105,110,105,116,121,0,0, +0,0,80,101,114,109,117,116,97,116,105,111,110,0,0,0,0,0,67,111,109,112,97,114,101,0,74,117,109,112,0,0,0,0,79,110,99,101,0,0,0,0,73,102,0,0,0,0,0,0,73,102,78,111,116,0,0,0,67,111,108,117,109,110,0,0,65,102,102,105,110,105,116,121,0,0,0,0,0,0,0,0,77,97,107,101,82,101,99,111,114,100,0,0,0,0,0,0,67,111,117,110,116,0,0,0,82,101,97,100,67,111,111,107,105,101,0,0,0,0,0,0,83,101,116,67,111,111,107,105,101,0,0,0,0,0,0,0,79,112,101,110,82,101,97,100,0,0,0,0,0,0,0,0,79,112,101,110,87,114,105,116,101,0,0,0, +0,0,0,0,79,112,101,110,65,117,116,111,105,110,100,101,120,0,0,0,79,112,101,110,69,112,104,101,109,101,114,97,108,0,0,0,83,111,114,116,101,114,79,112,101,110,0,0,0,0,0,0,79,112,101,110,80,115,101,117,100,111,0,0,0,0,0,0,67,108,111,115,101,0,0,0,83,101,101,107,76,84,0,0,83,101,101,107,76,69,0,0,83,101,101,107,71,69,0,0,83,101,101,107,71,84,0,0,83,101,101,107,0,0,0,0,78,111,67,111,110,102,108,105,99,116,0,0,0,0,0,0,78,111,116,70,111,117,110,100,0,0,0,0,0,0,0,0,70,111,117,110,100,0,0,0,78,111,116,69, +120,105,115,116,115,0,0,0,0,0,0,0,83,101,113,117,101,110,99,101,0,0,0,0,0,0,0,0,78,101,119,82,111,119,105,100,0,0,0,0,0,0,0,0,73,110,115,101,114,116,0,0,79,114,0,0,0,0,0,0,65,110,100,0,0,0,0,0,73,110,115,101,114,116,73,110,116,0,0,0,0,0,0,0,68,101,108,101,116,101,0,0,82,101,115,101,116,67,111,117,110,116,0,0,0,0,0,0,73,115,78,117,108,108,0,0,78,111,116,78,117,108,108,0,78,101,0,0,0,0,0,0,69,113,0,0,0,0,0,0,71,116,0,0,0,0,0,0,76,101,0,0,0,0,0,0,76,116,0,0,0,0,0,0,71,101,0,0,0,0,0,0,83,111,114,116, +101,114,67,111,109,112,97,114,101,0,0,0,66,105,116,65,110,100,0,0,66,105,116,79,114,0,0,0,83,104,105,102,116,76,101,102,116,0,0,0,0,0,0,0,83,104,105,102,116,82,105,103,104,116,0,0,0,0,0,0,65,100,100,0,0,0,0,0,83,117,98,116,114,97,99,116,0,0,0,0,0,0,0,0,77,117,108,116,105,112,108,121,0,0,0,0,0,0,0,0,68,105,118,105,100,101,0,0,82,101,109,97,105,110,100,101,114,0,0,0,0,0,0,0,67,111,110,99,97,116,0,0,83,111,114,116,101,114,68,97,116,97,0,0,0,0,0,0,66,105,116,78,111,116,0,0,83,116,114,105,110,103,56,0, +82,111,119,75,101,121,0,0,82,111,119,68,97,116,97,0,82,111,119,105,100,0,0,0,78,117,108,108,82,111,119,0,76,97,115,116,0,0,0,0,83,111,114,116,101,114,83,111,114,116,0,0,0,0,0,0,83,111,114,116,0,0,0,0,82,101,119,105,110,100,0,0,83,111,114,116,101,114,73,110,115,101,114,116,0,0,0,0,73,100,120,73,110,115,101,114,116,0,0,0,0,0,0,0,73,100,120,68,101,108,101,116,101,0,0,0,0,0,0,0,73,100,120,82,111,119,105,100,0,0,0,0,0,0,0,0,73,100,120,76,69,0,0,0,73,100,120,71,84,0,0,0,73,100,120,76,84,0,0,0,73,100,120, +71,69,0,0,0,68,101,115,116,114,111,121,0,67,108,101,97,114,0,0,0,82,101,115,101,116,83,111,114,116,101,114,0,0,0,0,0,67,114,101,97,116,101,73,110,100,101,120,0,0,0,0,0,67,114,101,97,116,101,84,97,98,108,101,0,0,0,0,0,80,97,114,115,101,83,99,104,101,109,97,0,0,0,0,0,76,111,97,100,65,110,97,108,121,115,105,115,0,0,0,0,68,114,111,112,84,97,98,108,101,0,0,0,0,0,0,0,68,114,111,112,73,110,100,101,120,0,0,0,0,0,0,0,68,114,111,112,84,114,105,103,103,101,114,0,0,0,0,0,73,110,116,101,103,114,105,116,121,67, +107,0,0,0,0,0,82,111,119,83,101,116,65,100,100,0,0,0,0,0,0,0,82,111,119,83,101,116,82,101,97,100,0,0,0,0,0,0,82,111,119,83,101,116,84,101,115,116,0,0,0,0,0,0,80,114,111,103,114,97,109,0,80,97,114,97,109,0,0,0,70,107,67,111,117,110,116,101,114,0,0,0,0,0,0,0,70,107,73,102,90,101,114,111,0,0,0,0,0,0,0,0,77,101,109,77,97,120,0,0,82,101,97,108,0,0,0,0,73,102,80,111,115,0,0,0,73,102,78,101,103,0,0,0,73,102,90,101,114,111,0,0,65,103,103,70,105,110,97,108,0,0,0,0,0,0,0,0,73,110,99,114,86,97,99,117,117,109, +0,0,0,0,0,0,69,120,112,105,114,101,0,0,84,97,98,108,101,76,111,99,107,0,0,0,0,0,0,0,86,66,101,103,105,110,0,0,86,67,114,101,97,116,101,0,84,111,84,101,120,116,0,0,84,111,66,108,111,98,0,0,84,111,78,117,109,101,114,105,99,0,0,0,0,0,0,0,84,111,73,110,116,0,0,0,84,111,82,101,97,108,0,0,86,68,101,115,116,114,111,121,0,0,0,0,0,0,0,0,86,79,112,101,110,0,0,0,86,67,111,108,117,109,110,0,86,78,101,120,116,0,0,0,86,82,101,110,97,109,101,0,80,97,103,101,99,111,117,110,116,0,0,0,0,0,0,0,77,97,120,80,103,99,110, +116,0,0,0,0,0,0,0,0,73,110,105,116,0,0,0,0,78,111,111,112,0,0,0,0,69,120,112,108,97,105,110,0,65,80,73,32,99,97,108,108,101,100,32,119,105,116,104,32,78,85,76,76,32,112,114,101,112,97,114,101,100,32,115,116,97,116,101,109,101,110,116,0,65,80,73,32,99,97,108,108,101,100,32,119,105,116,104,32,102,105,110,97,108,105,122,101,100,32,112,114,101,112,97,114,101,100,32,115,116,97,116,101,109,101,110,116,0,0,0,0,64,32,32,0,0,0,0,0,1,0,0,0,31,0,0,0,8,0,0,0,9,0,0,0,14,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0, +0,29,0,0,0,15,0,0,0,32,0,0,0,33,0,0,0,10,0,0,0,7,0,0,0,12,0,0,0,30,0,0,0,11,0,0,0,8,0,0,0,0,0,0,0,0,172,0,0,16,0,0,0,0,0,0,0,216,171,0,0,34,0,0,0,0,0,0,0,144,44,0,0,31,0,0,0,0,0,0,0,8,172,0,0,32,0,0,0,0,0,0,0,16,172,0,0,33,0,0,0,0,0,0,0,24,172,0,0,34,0,0,0,0,0,0,0,32,172,0,0,35,0,0,0,0,0,0,0,48,172,0,0,17,0,0,0,0,0,0,0,56,172,0,0,18,0,0,0,0,0,0,0,64,172,0,0,0,0,0,0,0,0,0,0,72,172,0,0,0,0,0,0,0,0,0,0,80,172,0,0,19,0,0,0,0,0,0,0,88,172,0,0,0,0,0,0,0,0,0,0,96,172,0,0,0,0,0,0,0,0,0,0,112,172,0,0,36,0, +0,0,0,0,0,0,120,172,0,0,0,0,0,0,0,0,0,0,136,172,0,0,35,0,0,0,0,0,0,0,144,172,0,0,37,0,0,0,0,0,0,0,160,172,0,0,38,0,0,0,0,0,0,0,168,172,0,0,36,0,0,0,0,0,0,0,176,172,0,0,20,0,0,0,0,0,0,0,184,172,0,0,8,0,0,0,0,0,0,0,192,172,0,0,39,0,0,0,0,0,0,0,200,172,0,0,0,0,0,0,0,0,0,0,208,172,0,0,1,0,0,0,0,0,0,0,0,0,0,0,99,108,111,115,101,0,0,0,111,115,95,117,110,105,120,46,99,58,37,100,58,32,40,37,100,41,32,37,115,40,37,115,41,32,45,32,37,115,0,0,111,112,101,110,0,0,0,0,103,101,116,99,119,100,0,0,115,116,97,116, +0,0,0,0,102,115,116,97,116,0,0,0,102,116,114,117,110,99,97,116,101,0,0,0,0,0,0,0,102,99,110,116,108,0,0,0,114,101,97,100,0,0,0,0,112,114,101,97,100,0,0,0,112,114,101,97,100,54,52,0,119,114,105,116,101,0,0,0,112,119,114,105,116,101,0,0,112,119,114,105,116,101,54,52,0,0,0,0,0,0,0,0,102,99,104,109,111,100,0,0,102,97,108,108,111,99,97,116,101,0,0,0,0,0,0,0,117,110,108,105,110,107,0,0,111,112,101,110,68,105,114,101,99,116,111,114,121,0,0,0,109,107,100,105,114,0,0,0,114,109,100,105,114,0,0,0,102,99,104, +111,119,110,0,0,109,109,97,112,0,0,0,0,109,117,110,109,97,112,0,0,109,114,101,109,97,112,0,0,103,101,116,112,97,103,101,115,105,122,101,0,0,0,0,0,97,116,116,101,109,112,116,32,116,111,32,111,112,101,110,32,34,37,115,34,32,97,115,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,37,100,0,0,0,0,0,0,47,100,101,118,47,110,117,108,108,0,0,0,0,0,0,0,37,115,45,115,104,109,0,0,114,101,97,100,111,110,108,121,95,115,104,109,0,0,0,0,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112, +113,114,115,116,117,118,119,120,121,122,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,48,49,50,51,52,53,54,55,56,57,0,0,37,115,47,101,116,105,108,113,115,95,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,168,173,0,0,184,173,0,0,200,173,0,0,0,0,0,0,0,0,0,0,47,118,97,114,47,116,109,112,0,0,0,0,0,0,0,0,47,117,115,114,47,116,109,112,0,0,0,0,0,0,0,0,47,116,109,112,0,0,0,0,83,81,76,73,84,69,95,84,77,80,68,73,82,0,0,0,84,77,80,68,73,82,0,0,102,117,108,108,95,102,115,121,110,99,0,0,0, +0,0,0,1,0,0,0,37,0,0,0,8,0,0,0,9,0,0,0,14,0,0,0,25,0,0,0,26,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,15,0,0,0,32,0,0,0,33,0,0,0,10,0,0,0,7,0,0,0,12,0,0,0,30,0,0,0,11,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,100,101,118,47,117,114,97,110,100,111,109,0,0,0,0,47,37,115,0,0,0,0,0,102,115,121,110,99,0,0,0,112,115,111,119,0,0,0,0,3,0,0,0,38,0,0,0,8,0,0,0,9,0,0,0,14,0,0,0,25,0,0,0,26,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,15,0,0,0,32,0,0,0,33,0,0,0,10,0,0,0,7,0,0,0,12,0,0,0,30,0,0,0,11,0,0,0,8,0,0,0,0,0,0,0,37,115,46, +108,111,99,107,0,99,97,110,110,111,116,32,102,115,116,97,116,32,100,98,32,102,105,108,101,32,37,115,0,102,105,108,101,32,117,110,108,105,110,107,101,100,32,119,104,105,108,101,32,111,112,101,110,58,32,37,115,0,0,0,0,109,117,108,116,105,112,108,101,32,108,105,110,107,115,32,116,111,32,102,105,108,101,58,32,37,115,0,0,0,0,0,0,102,105,108,101,32,114,101,110,97,109,101,100,32,119,104,105,108,101,32,111,112,101,110,58,32,37,115,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,0,0,0,0,100,10,1,1,0,0,115,0,4,6,0,0,103, +0,1,4,30,0,122,0,4,7,0,0,113,0,4,10,0,0,81,0,4,11,0,0,119,0,4,15,0,0,99,0,0,9,0,0,111,8,0,1,0,2,117,10,0,1,0,0,120,16,0,1,16,1,88,16,0,1,0,4,102,0,1,2,0,0,101,0,1,3,30,0,69,0,1,3,14,0,71,0,1,4,14,0,105,10,1,1,0,0,110,0,0,5,0,0,37,0,0,8,0,0,112,16,0,14,0,1,84,0,2,12,0,0,83,0,2,13,0,0,114,10,3,16,0,0,0,0,0,0,0,0,116,104,115,116,110,100,114,100,0,0,0,0,0,0,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0,0,0,0,0,0,0,0,45,120,48,0,88,48,0,0,78,97, +78,0,0,0,0,0,45,73,110,102,0,0,0,0,43,73,110,102,0,0,0,0,73,110,102,0,0,0,0,0,40,78,85,76,76,41,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,254,255,255,127,0,0,0,0,128,0,0,0,244,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,73,83,65,66,76,69,95,76,70,83,0,0,0,0,0,69,78,65,66,76,69,95,70,84,83,51,0,0,0,0,0,69,78,65,66,76,69,95,70,84,83,52,0,0,0,0,0,73,78,84,54,52,95,84,89,80,69,0,0,0,0,0,0,79,77,73,84,95,76,79,65,68,95,69,88,84,69,78,83,73,79,78,0,0,0,0,0,83,89,83,84,69,77,95,77,65,76,76,79,67,0,0,0,84,72,82,69,65,68,83,65,70,69,61,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"i8",Ga,u.Ga+41488); +var gb=u.qa(F(12,"i8",E),8);v(0==gb%8); +var J={S:1,Fa:2,Tf:3,Re:4,ia:5,Tb:6,oe:7,of:8,H:9,Be:10,Da:11,cg:11,Pc:12,jb:13,Me:14,Af:15,Ea:16,Qb:17,dg:18,lb:19,Rb:20,pa:21,A:22,jf:23,Oc:24,Ef:25,$f:26,Ne:27,wf:28,Ra:29,Pf:30,bf:31,Jf:32,Je:33,Ub:34,sf:42,Pe:43,Ce:44,Te:45,Ue:46,Ve:47,af:48,ag:49,mf:50,Se:51,He:35,pf:37,te:52,we:53,eg:54,kf:55,xe:56,ye:57,Ie:35,ze:59,yf:60,nf:61,Xf:62,xf:63,tf:64,uf:65,Of:66,qf:67,re:68,Uf:69,De:70,Kf:71,df:72,Ke:73,ve:74,Ff:76,ue:77,Nf:78,We:79,Xe:80,$e:81,Ze:82,Ye:83,zf:38,Sb:39,ef:36,kb:40,mb:95,If:96,Ge:104, +lf:105,se:97,Mf:91,Cf:88,vf:92,Rf:108,Fe:111,pe:98,Ee:103,hf:101,ff:100,Yf:110,Oe:112,Lc:113,Mc:115,Jc:114,Kc:89,cf:90,Lf:93,Sf:94,qe:99,gf:102,Nc:106,Qa:107,Zf:109,bg:87,Le:122,Vf:116,Df:95,rf:123,Qe:84,Gf:75,Ae:125,Bf:131,Hf:130,Wf:86},hb={"0":"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes", +12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func", +34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange", +53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)", +74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required", +90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected", +107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"},ib=0;function L(a){return C[ib>>2]=a} +function jb(a,b){for(var c=0,d=a.length-1;0<=d;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function kb(a){var b="/"===a.charAt(0),c="/"===a.substr(-1),a=jb(a.split("/").filter(function(a){return!!a}),!b).join("/");!a&&!b&&(a=".");a&&c&&(a+="/");return(b?"/":"")+a}function lb(a){if("/"===a)return"/";var b=a.lastIndexOf("/");return-1===b?a:a.substr(b+1)} +function mb(){for(var a="",b=l,c=arguments.length-1;-1<=c&&!b;c--){var d=0<=c?arguments[c]:"/";"string"!==typeof d&&f(new TypeError("Arguments to path.resolve must be strings"));d&&(a=d+"/"+a,b="/"===d.charAt(0))}a=jb(a.split("/").filter(function(a){return!!a}),!b).join("/");return(b?"/":"")+a||"."}var nb=[];function ob(a,b){nb[a]={input:[],na:[],Ja:b};pb[a]={o:qb}} +var qb={open:function(a){var b=nb[a.k.La];b||f(new M(J.lb));a.R=b;a.seekable=l},close:function(a){a.R.na.length&&a.R.Ja.cb(a.R,10)},W:function(a,b,c,d){(!a.R||!a.R.Ja.sc)&&f(new M(J.Tb));for(var e=0,g=0;ga.g.length)&&(a.g=O.vd(a),a.B=a.g.length); +if(!a.g||a.g.subarray){var c=a.g?a.g.buffer.byteLength:0;c>=b||(b=Math.max(b,c*(1048576>c?2:1.125)|0),0!=c&&(b=Math.max(b,256)),c=a.g,a.g=new Uint8Array(b),0b)a.g.length=b;else for(;a.g.length=a.k.B)return 0;a=Math.min(a.k.B-e,d);v(0<=a);if(8b&&f(new M(J.A));a.ge=[];return a.position=b},ac:function(a,b,c){O.lc(a.k,b+c);a.k.B=Math.max(a.k.B,b+c)},ab:function(a,b,c,d,e,g,h){32768!==(a.k.mode&61440)&&f(new M(J.lb));c=a.k.g;if(!(h&2)&&(c.buffer===b||c.buffer===b.buffer))a=l,d=c.byteOffset;else{if(0>>0)%Ab.length}function Eb(a){var b=Db(a.parent.id,a.name);if(Ab[b]===a)Ab[b]=a.wa;else for(b=Ab[b];b;){if(b.wa===a){b.wa=a.wa;break}b=b.wa}} +function ub(a,b){var c=Fb(a,"x");c&&f(new M(c));for(c=Ab[Db(a.id,b)];c;c=c.wa){var d=c.name;if(c.parent.id===a.id&&d===b)return c}return a.n.Eb(a,b)} +function sb(a,b,c,d){Gb||(Gb=function(a,b,c,d){a||(a=this);this.parent=a;this.ha=a.ha;this.va=k;this.id=zb++;this.name=b;this.mode=c;this.n={};this.o={};this.La=d},Gb.prototype={},Object.defineProperties(Gb.prototype,{W:{get:function(){return 365===(this.mode&365)},set:function(a){a?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146===(this.mode&146)},set:function(a){a?this.mode|=146:this.mode&=-147}},Id:{get:function(){return 16384===(this.mode&61440)}},Hd:{get:function(){return 8192=== +(this.mode&61440)}}}));a=new Gb(a,b,c,d);b=Db(a.parent.id,a.name);a.wa=Ab[b];return Ab[b]=a}var Hb={r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218};function Ib(a){var b=Hb[a];"undefined"===typeof b&&f(Error("Unknown file open mode: "+a));return b}function Fb(a,b){return Bb?0:-1!==b.indexOf("r")&&!(a.mode&292)||-1!==b.indexOf("w")&&!(a.mode&146)||-1!==b.indexOf("x")&&!(a.mode&73)?J.jb:0} +function Jb(a,b){try{return ub(a,b),J.Qb}catch(c){}return Fb(a,"wx")}function Kb(a,b,c){var d;try{d=ub(a,b)}catch(e){return e.yb}if(a=Fb(a,"wx"))return a;if(c){if(16384!==(d.mode&61440))return J.Rb;if(d===d.parent||"/"===Cb(d))return J.Ea}else if(16384===(d.mode&61440))return J.pa;return 0} +function Lb(a,b,c){Mb||(Mb=n(),Mb.prototype={},Object.defineProperties(Mb.prototype,{object:{get:function(){return this.k},set:function(a){this.k=a}},Yg:{get:function(){return 1!==(this.J&2097155)}},Zg:{get:function(){return 0!==(this.J&2097155)}},Xg:{get:function(){return this.J&1024}}}));var d=new Mb,e;for(e in a)d[e]=a[e];var a=d,g;a:{b=b||0;for(c=c||4096;b<=c;b++)if(!P[b]){g=b;break a}f(new M(J.Oc))}a.O=g;return P[g]=a}var rb={open:function(a){a.o=pb[a.k.La].o;a.o.open&&a.o.open(a)},ma:function(){f(new M(J.Ra))}}; +function Nb(a,b){var c="/"===b,d=!b,e;c&&yb&&f(new M(J.Ea));!c&&!d&&(e=S(b,{oc:l}),b=e.path,e=e.k,e.va&&f(new M(J.Ea)),16384!==(e.mode&61440)&&f(new M(J.Rb)));var d={type:a,eh:{},Od:b,Pd:[]},g=a.ha(d);g.ha=d;d.root=g;c?yb=g:e&&(e.va=d,e.ha&&e.ha.Pd.push(d));return g}function Ob(a,b,c){var d=S(a,{parent:j}).k,a=lb(a),e=Jb(d,a);e&&f(new M(e));d.n.$a||f(new M(J.S));return d.n.$a(d,a,b,c)}function Pb(a,b){b=(b!==i?b:438)&4095;b|=32768;return Ob(a,b,0)} +function Qb(a,b){b=(b!==i?b:511)&1023;b|=16384;return Ob(a,b,0)}function Rb(a,b,c){"undefined"===typeof c&&(c=b,b=438);return Ob(a,b|8192,c)}function Sb(a,b){var c=S(b,{parent:j}).k,d=lb(b),e=Jb(c,d);e&&f(new M(e));c.n.gb||f(new M(J.S));return c.n.gb(c,d,a)} +function Tb(a){var b=S(a,{parent:j}).k,c=lb(a),d=ub(b,c),e=Kb(b,c,l);e&&(e===J.pa&&(e=J.S),f(new M(e)));b.n.ib||f(new M(J.S));d.va&&f(new M(J.Ea));try{Q.willDeletePath&&Q.willDeletePath(a)}catch(g){console.log("FS.trackingDelegate['willDeletePath']('"+a+"') threw an exception: "+g.message)}b.n.ib(b,c);Eb(d);try{if(Q.onDeletePath)Q.onDeletePath(a)}catch(h){console.log("FS.trackingDelegate['onDeletePath']('"+a+"') threw an exception: "+h.message)}} +function Ub(a,b){var c=S(a,{sa:!b}).k;c.n.U||f(new M(J.S));return c.n.U(c)}function Vb(a,b){var c;c="string"===typeof a?S(a,{sa:j}).k:a;c.n.L||f(new M(J.S));c.n.L(c,{mode:b&4095|c.mode&-4096,timestamp:Date.now()})}function Wb(a){a="string"===typeof a?S(a,{sa:j}).k:a;a.n.L||f(new M(J.S));a.n.L(a,{timestamp:Date.now()})} +function Xb(a,b){0>b&&f(new M(J.A));var c;c="string"===typeof a?S(a,{sa:j}).k:a;c.n.L||f(new M(J.S));16384===(c.mode&61440)&&f(new M(J.pa));32768!==(c.mode&61440)&&f(new M(J.A));var d=Fb(c,"w");d&&f(new M(d));c.n.L(c,{size:b,timestamp:Date.now()})} +function Yb(a,b,c,d){""===a&&f(new M(J.Fa));var b="string"===typeof b?Ib(b):b,c=b&64?("undefined"===typeof c?438:c)&4095|32768:0,e;if("object"===typeof a)e=a;else{a=kb(a);try{e=S(a,{sa:!(b&131072)}).k}catch(g){}}b&64&&(e?b&128&&f(new M(J.Qb)):e=Ob(a,c,0));e||f(new M(J.Fa));8192===(e.mode&61440)&&(b&=-513);e?40960===(e.mode&61440)?c=J.kb:16384===(e.mode&61440)&&(0!==(b&2097155)||b&512)?c=J.pa:(c=["r","w","rw"][b&2097155],b&512&&(c+="w"),c=Fb(e,c)):c=J.Fa;c&&f(new M(c));b&512&&Xb(e,0);b&=-641;d=Lb({k:e, +path:Cb(e),J:b,seekable:j,position:0,o:e.o,ge:[],error:l},d,i);d.o.open&&d.o.open(d);r.logReadFiles&&!(b&1)&&(Zb||(Zb={}),a in Zb||(Zb[a]=1,r.printErr("read file: "+a)));try{Q.onOpenFile&&(e=0,1!==(b&2097155)&&(e|=1),0!==(b&2097155)&&(e|=2),Q.onOpenFile(a,e))}catch(h){console.log("FS.trackingDelegate['onOpenFile']('"+a+"', flags) threw an exception: "+h.message)}return d}function $b(a){try{a.o.close&&a.o.close(a)}catch(b){f(b)}finally{P[a.O]=k}} +function ac(a,b,c){(!a.seekable||!a.o.ma)&&f(new M(J.Ra));return a.o.ma(a,b,c)}function bc(a,b,c,d){var e=z;(0>c||0>d)&&f(new M(J.A));1===(a.J&2097155)&&f(new M(J.H));16384===(a.k.mode&61440)&&f(new M(J.pa));a.o.W||f(new M(J.A));var g=j;"undefined"===typeof d?(d=a.position,g=l):a.seekable||f(new M(J.Ra));b=a.o.W(a,e,b,c,d);g||(a.position+=b);return b} +function cc(a,b,c,d,e,g){(0>d||0>e)&&f(new M(J.A));0===(a.J&2097155)&&f(new M(J.H));16384===(a.k.mode&61440)&&f(new M(J.pa));a.o.write||f(new M(J.A));a.J&1024&&ac(a,0,2);var h=j;"undefined"===typeof e?(e=a.position,h=l):a.seekable||f(new M(J.Ra));b=a.o.write(a,b,c,d,e,g);h||(a.position+=b);try{if(a.path&&Q.onWriteToFile)Q.onWriteToFile(a.path)}catch(m){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+m.message)}return b} +function dc(){M||(M=function(a){this.yb=a;for(var b in J)if(J[b]===a){this.code=b;break}this.message=hb[a]},M.prototype=Error(),[J.Fa].forEach(function(a){tb[a]=new M(a);tb[a].stack=""}))}var ec;function fc(a,b){var c=0;a&&(c|=365);b&&(c|=146);return c} +function gc(a,b,c,d,e,g){a=b?kb(("string"===typeof a?a:Cb(a))+"/"+b):a;d=fc(d,e);e=Pb(a,d);if(c){if("string"===typeof c){for(var a=Array(c.length),b=0,h=c.length;b>2]=d.pd;C[b+4>>2]=0;C[b+8>>2]=d.tc;C[b+12>>2]=d.mode;C[b+16>>2]=d.Sd;C[b+20>>2]=d.uid;C[b+24>>2]=d.Cd;C[b+28>>2]=d.La;C[b+32>>2]=0;C[b+36>>2]=d.size;C[b+40>>2]=4096;C[b+44>>2]=d.kd;C[b+48>>2]=Math.floor(d.bd.getTime()/1E3);C[b+52>>2]=0;C[b+56>>2]=Math.floor(d.Qd.getTime()/1E3);C[b+60>>2]=0;C[b+64>>2]=Math.floor(d.nd.getTime()/1E3);C[b+68>>2]=0;C[b+72>>2]=d.tc;return 0}catch(e){return R(e),-1}}r._bitshift64Shl=mc; +function nc(a){a/=1E3;if(da&&window.performance&&window.performance.now)for(var b=window.performance.now();window.performance.now()-b>8,a.Ba&255]));return b},Za:function(a,b,c){return a.Ka[b+":"+c]},$b:function(a,b){a.Ka[b.$+":"+b.port]=b},Ec:function(a,b){delete a.Ka[b.$+":"+b.port]},Fd:function(a,b){function c(){try{for(var a=b.Xa.shift();a;)b.q.send(a),a=b.Xa.shift()}catch(c){b.q.close()}}function d(c){v("string"!==typeof c&&c.byteLength!==i);var c=new Uint8Array(c),d=e;e=l;d&&10===c.length&&255===c[0]&&255===c[1]&&255===c[2]&&255===c[3]&&112===c[4]&&111===c[5]&&114===c[6]&&116===c[7]?(c=c[8]<<8|c[9], +T.M.Ec(a,b),b.port=c,T.M.$b(a,b)):a.ya.push({$:b.$,port:b.port,data:c})}var e=j;ca?(b.q.on("open",c),b.q.on("message",function(a,b){b.binary&&d((new Uint8Array(a)).buffer)}),b.q.on("error",n())):(b.q.onopen=c,b.q.onmessage=function(a){d(a.data)})},Cc:function(a){if(1===a.type&&a.I)return a.Fb.length?65:0;var b=0,c=1===a.type?T.M.Za(a,a.aa,a.ba):k;if(a.ya.length||!c||c&&c.q.readyState===c.q.Pa||c&&c.q.readyState===c.q.CLOSED)b|=65;if(!c||c&&c.q.readyState===c.q.OPEN)b|=4;if(c&&c.q.readyState===c.q.Pa|| +c&&c.q.readyState===c.q.CLOSED)b|=16;return b},vc:function(a,b,c){switch(b){case 21531:return b=0,a.ya.length&&(b=a.ya[0].data.length),C[c>>2]=b,0;default:return J.A}},close:function(a){if(a.I){try{a.I.close()}catch(b){}a.I=k}for(var c=Object.keys(a.Ka),d=0;d=Ac;)Ac+=1E3/60;b=Math.max(Ac-b,0);setTimeout(a,b)}function Cc(a){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[a.substr(a.lastIndexOf(".")+1)]}var Dc=[];function Ec(){var a=r.canvas;Dc.forEach(function(b){b(a.width,a.height)})} +function Fc(a,b,c){b&&c?(a.he=b,a.Gd=c):(b=a.he,c=a.Gd);var d=b,e=c;r.forcedAspectRatio&&0>2]=60*-(new Date).getTimezoneOffset();C[Nc>>2]=Number((new Date(2E3,0,1)).getTimezoneOffset()!=(new Date(2E3,6,1)).getTimezoneOffset());var a=F(I("GMT"),"i8",Fa),b=F(I("GMT"),"i8",Fa);C[Mc>>2]=a;C[Mc+4>>2]=b}} +function Qc(a,b){Pc();var c=new Date(1E3*C[a>>2]);C[b>>2]=c.getSeconds();C[b+4>>2]=c.getMinutes();C[b+8>>2]=c.getHours();C[b+12>>2]=c.getDate();C[b+16>>2]=c.getMonth();C[b+20>>2]=c.getFullYear()-1900;C[b+24>>2]=c.getDay();var d=new Date(c.getFullYear(),0,1);C[b+28>>2]=Math.floor((c.getTime()-d.getTime())/864E5);C[b+36>>2]=60*d.getTimezoneOffset();C[b+32>>2]=Number(d.getTimezoneOffset()!=c.getTimezoneOffset());C[b+40>>2]=Lc;return b}r._bitshift64Lshr=Rc; +function Sc(a,b,c){a=P[a];if(!a)return L(J.H),-1;try{return bc(a,b,c)}catch(d){return R(d),-1}}var Tc=F(1,"i32*",E); +function Uc(a){var b,c;Uc.Ha?(c=C[Tc>>2],b=C[c>>2]):(Uc.Ha=j,Vc.USER="root",Vc.PATH="/",Vc.PWD="/",Vc.HOME="/home/emscripten",Vc.LANG="en_US.UTF-8",Vc._="./this.program",b=F(1024,"i8",E),c=F(256,"i8*",E),C[c>>2]=b,C[Tc>>2]=c);var d=[],e=0,g;for(g in a)if("string"===typeof a[g]){var h=g+"="+a[g];d.push(h);e+=h.length}1024>2]=b,b+=h.length+1;C[c+4*d.length>>2]=0}var Vc={}; +function Wc(a){if(0===a)return 0;a=w(a);if(!Vc.hasOwnProperty(a))return 0;Wc.Jb&&Xc(Wc.Jb);Wc.Jb=F(I(Vc[a]),"i8",Fa);return Wc.Jb}r._memcpy=Yc;function Zc(a){Zc.Ha||(y=y+4095&-4096,Zc.Ha=j,v(u.Ia),Zc.ad=u.Ia,u.Ia=function(){la("cannot dynamically allocate, sbrk now has control")});var b=y;0!=a&&Zc.ad(a);return b}r._memmove=$c;function ad(a,b,c){if(a in hb){if(hb[a].length>c-1)return L(J.Ub);ab(hb[a],b);return 0}return L(J.A)} +function bd(a){bd.buffer||(bd.buffer=Ha(256));ad(a,bd.buffer,256);return bd.buffer}function cd(a,b,c,d,e,g){var h,m=l;cd.ua||(cd.ua={});if(-1==e){h=Ha(b);if(!h)return-1;kc(h,0,b);m=j}else{e=P[e];if(!e)return-1;try{var t,p=G;1===(e.J&2097155)&&f(new M(J.jb));e.o.ab||f(new M(J.lb));t=e.o.ab(e,p,a,b,g,c,d);h=t.Wd;m=t.qb}catch(D){return R(D),-1}}cd.ua[h]={Nd:h,Ud:b,qb:m};return h}dc();Ab=Array(4096);Nb(O,"/");Qb("/tmp");Qb("/dev");pb[259]={o:{W:function(){return 0},write:function(){return 0}}}; +Rb("/dev/null",259);ob(1280,{sc:function(a){if(!a.input.length){var b=k;if(ca){if(b=process.stdin.read(),!b){if(process.stdin._readableState&&process.stdin._readableState.ended)return k;return}}else"undefined"!=typeof window&&"function"==typeof window.prompt?(b=window.prompt("Input: "),b!==k&&(b+="\n")):"function"==typeof readline&&(b=readline(),b!==k&&(b+="\n"));if(!b)return k;a.input=I(b,j)}return a.input.shift()},cb:function(a,b){b===k||10===b?(r.print(a.na.join("")),a.na=[]):a.na.push(dd.Gb(b))}}); +ob(1536,{cb:function(a,b){b===k||10===b?(r.printErr(a.na.join("")),a.na=[]):a.na.push(dd.Gb(b))}});Rb("/dev/tty",1280);Rb("/dev/tty1",1536);var ed;if("undefined"!==typeof crypto){var fd=new Uint8Array(1);ed=function(){crypto.getRandomValues(fd);return fd[0]}}else ed=ca?function(){return require("crypto").randomBytes(1)[0]}:function(){return Math.floor(256*Math.random())};hc("/dev","random",ed);hc("/dev","urandom",ed);Qb("/dev/shm");Qb("/dev/shm/tmp"); +Ua.unshift({ta:function(){if(!r.noFSInit&&!ec){v(!ec,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");ec=j;dc();r.stdin=r.stdin;r.stdout=r.stdout;r.stderr=r.stderr;r.stdin?hc("/dev","stdin",r.stdin):Sb("/dev/tty","/dev/stdin");r.stdout?hc("/dev","stdout",k,r.stdout):Sb("/dev/tty","/dev/stdout");r.stderr?hc("/dev","stderr",k,r.stderr):Sb("/dev/tty1","/dev/stderr");var a=Yb("/dev/stdin", +"r");C[vb>>2]=a?a.O+1:0;v(0===a.O,"invalid handle for stdin ("+a.O+")");a=Yb("/dev/stdout","w");C[wb>>2]=a?a.O+1:0;v(1===a.O,"invalid handle for stdout ("+a.O+")");a=Yb("/dev/stderr","w");C[xb>>2]=a?a.O+1:0;v(2===a.O,"invalid handle for stderr ("+a.O+")")}}});Va.push({ta:function(){Bb=l}});Wa.push({ta:function(){ec=l;for(var a=0;a>g-6&63,g=g-6,c=c+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[t]}2==g?(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(d&3)<<4],c+="=="):4==g&&(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(d&15)<<2],c+="="); +p.src="data:audio/x-"+b.substr(-3)+";base64,"+c;e(p)}};p.src=m;r.noExitRuntime=j;setTimeout(function(){oa||e(p)},1E4)}else return g()}});var x=r.canvas;x&&(x.Ib=x.requestPointerLock||x.mozRequestPointerLock||x.webkitRequestPointerLock||x.msRequestPointerLock||n(),x.kc=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||n(),x.kc=x.kc.bind(document),document.addEventListener("pointerlockchange",p,l),document.addEventListener("mozpointerlockchange", +p,l),document.addEventListener("webkitpointerlockchange",p,l),document.addEventListener("mspointerlockchange",p,l),r.elementPointerLock&&x.addEventListener("click",function(a){!wc&&x.Ib&&(x.Ib(),a.preventDefault())},l))}var A=b?mb(kb(a+"/"+b)):a;eb();if("string"==typeof c){var K=h,ja=function(){K?K():f('Loading data file "'+c+'" failed.')},N=new XMLHttpRequest;N.open("GET",c,j);N.responseType="arraybuffer";N.onload=function(){if(200==N.status||0==N.status&&N.response){var a=N.response;v(a,'Loading data file "'+ +c+'" failed (no arrayBuffer).');a=new Uint8Array(a);D(a);fb()}else ja()};N.onerror=ja;N.send(k);eb()}else D(c)}; +r.FS_createLazyFile=function(a,b,c,d,e){var g,h;function m(){this.Db=l;this.Ua=[]}m.prototype.get=function(a){if(!(a>this.length-1||0>a)){var b=a%this.Ta;return this.Bd(Math.floor(a/this.Ta))[b]}};m.prototype.ce=function(a){this.Bd=a};m.prototype.cc=function(){var a=new XMLHttpRequest;a.open("HEAD",c,l);a.send(k);200<=a.status&&300>a.status||304===a.status||f(Error("Couldn't load "+c+". Status: "+a.status));var b=Number(a.getResponseHeader("Content-length")),d,e=1048576;if(!((d=a.getResponseHeader("Accept-Ranges"))&& +"bytes"===d))e=b;var g=this;g.ce(function(a){var d=a*e,h=(a+1)*e-1,h=Math.min(h,b-1);if("undefined"===typeof g.Ua[a]){var m=g.Ua;d>h&&f(Error("invalid range ("+d+", "+h+") or no bytes requested!"));h>b-1&&f(Error("only "+b+" bytes available! programmer error!"));var p=new XMLHttpRequest;p.open("GET",c,l);b!==e&&p.setRequestHeader("Range","bytes="+d+"-"+h);"undefined"!=typeof Uint8Array&&(p.responseType="arraybuffer");p.overrideMimeType&&p.overrideMimeType("text/plain; charset=x-user-defined");p.send(k); +200<=p.status&&300>p.status||304===p.status||f(Error("Couldn't load "+c+". Status: "+p.status));d=p.response!==i?new Uint8Array(p.response||[]):I(p.responseText||"",j);m[a]=d}"undefined"===typeof g.Ua[a]&&f(Error("doXHR failed!"));return g.Ua[a]});this.Zc=b;this.Yc=e;this.Db=j};"undefined"!==typeof XMLHttpRequest?(ea||f("Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"),g=new m,Object.defineProperty(g,"length",{get:function(){this.Db|| +this.cc();return this.Zc}}),Object.defineProperty(g,"chunkSize",{get:function(){this.Db||this.cc();return this.Yc}}),h=i):(h=c,g=i);var t,a=kb(("string"===typeof a?a:Cb(a))+"/"+b);t=Pb(a,fc(d,e));g?t.g=g:h&&(t.g=k,t.url=h);Object.defineProperty(t,"usedBytes",{get:function(){return this.g.length}});var p={};Object.keys(t.o).forEach(function(a){var b=t.o[a];p[a]=function(){ic(t)||f(new M(J.ia));return b.apply(k,arguments)}});p.W=function(a,b,c,d,e){ic(t)||f(new M(J.ia));a=a.k.g;if(e>=a.length)return 0; +d=Math.min(a.length-e,d);v(0<=d);if(a.slice)for(var g=0;g>2]=0;Ua.unshift({ta:n()});Wa.push({ta:n()});var dd=new u.ob;ca&&(require("fs"),process.platform.match(/^win/));Ua.push({ta:function(){T.root=Nb(T,k)}}); +r.requestFullScreen=function(a,b){function c(){vc=l;var a=d.parentNode;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===a?(d.dc=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen||document.msExitFullscreen||document.exitFullscreen|| +n(),d.dc=d.dc.bind(document),yc&&d.Ib(),vc=j,zc&&("undefined"!=typeof SDL&&(a=La[SDL.screen+0*u.ja>>2],C[SDL.screen+0*u.ja>>2]=a|8388608),Ec())):(a.parentNode.insertBefore(d,a),a.parentNode.removeChild(a),zc&&("undefined"!=typeof SDL&&(a=La[SDL.screen+0*u.ja>>2],C[SDL.screen+0*u.ja>>2]=a&-8388609),Ec()));if(r.onFullScreen)r.onFullScreen(vc);Fc(d)}yc=a;zc=b;"undefined"===typeof yc&&(yc=j);"undefined"===typeof zc&&(zc=l);var d=r.canvas;xc||(xc=j,document.addEventListener("fullscreenchange",c,l),document.addEventListener("mozfullscreenchange", +c,l),document.addEventListener("webkitfullscreenchange",c,l),document.addEventListener("MSFullscreenChange",c,l));var e=document.createElement("div");d.parentNode.insertBefore(e,d);e.appendChild(d);e.$d=e.requestFullScreen||e.mozRequestFullScreen||e.msRequestFullscreen||(e.webkitRequestFullScreen?function(){e.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:k);e.$d()}; +r.requestAnimationFrame=function(a){"undefined"===typeof window?Bc(a):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Bc),window.requestAnimationFrame(a))};r.setCanvasSize=function(a,b,c){Fc(r.canvas,a,b);c||Ec()};r.pauseMainLoop=n();r.resumeMainLoop=function(){uc&&(uc=l,k())}; +r.getUserMedia=function(){window.rc||(window.rc=navigator.getUserMedia||navigator.mozGetUserMedia);window.rc(i)};Uc(Vc);Na=s=u.qa(ma);Oa=Na+5242880;Pa=y=u.qa(Oa);v(Pa>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0]}function Hb(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0];a[k+4>>0]=a[b+4>>0];a[k+5>>0]=a[b+5>>0];a[k+6>>0]=a[b+6>>0];a[k+7>>0]=a[b+7>>0]}function Ib(a){a=a|0;D=a}function Jb(){return D|0}function Kb(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[c[d>>2]>>2]=8;i=b;return}function Lb(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;g=i;i=i+32|0;e=g+4|0;d=g;f=g+8|0;c[e>>2]=b;j=f+0|0;h=40|0;b=j+10|0;do{a[j>>0]=a[h>>0]|0;j=j+1|0;h=h+1|0}while((j|0)<(b|0));Kb(d);j=Mb(c[e>>2]|0,f,c[d>>2]|0)|0;i=g;return j|0}function Mb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+24|0;m=e;k=e+4|0;j=e+8|0;g=e+12|0;h=e+16|0;l=e+20|0;c[m>>2]=a;c[k>>2]=b;c[j>>2]=d;c[l>>2]=56;c[g>>2]=Df(c[m>>2]|0,c[l>>2]|0,-1,h,0)|0;if((c[g>>2]|0)!=0){c[f>>2]=c[g>>2];m=c[f>>2]|0;i=e;return m|0}else{Re(c[h>>2]|0,1,c[k>>2]|0,-1,0)|0;Ke(c[h>>2]|0,2,j,4,0)|0;le(c[h>>2]|0)|0;c[f>>2]=yd(c[h>>2]|0)|0;m=c[f>>2]|0;i=e;return m|0}return 0}function Nb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+32|0;f=e+16|0;g=e+8|0;h=e+12|0;c[e>>2]=a;c[e+4>>2]=b;c[g>>2]=d;c[h>>2]=mc(4)|0;if((c[h>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=e;return a|0}else{a=c[h>>2]|0;c[a+0>>2]=0;c[c[g>>2]>>2]=c[h>>2];c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}return 0}function Ob(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;oc(c[d>>2]|0);i=b;return 0}function Pb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;f=g+20|0;k=g+4|0;j=g+8|0;l=g+12|0;h=g+16|0;c[g>>2]=a;c[k>>2]=b;c[j>>2]=d;c[l>>2]=e;if((c[k>>2]|0)==0){c[j>>2]=0}else{if((c[j>>2]|0)<0){c[j>>2]=cL(c[k>>2]|0)|0}}c[h>>2]=mc(24)|0;if((c[h>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=g;return a|0}else{c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+20>>2]=0;c[(c[h>>2]|0)+8>>2]=c[j>>2];c[(c[h>>2]|0)+4>>2]=c[k>>2];c[c[l>>2]>>2]=c[h>>2];c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}return 0}function Qb(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];if((c[(c[d>>2]|0)+20>>2]|0)==0){e=c[d>>2]|0;oc(e);i=b;return 0}oc(c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;e=c[d>>2]|0;oc(e);i=b;return 0}function Rb(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;l=i;i=i+48|0;s=l+20|0;x=l+40|0;n=l+36|0;p=l+32|0;q=l+28|0;r=l+24|0;k=l+16|0;m=l+12|0;o=l+8|0;v=l+4|0;w=l+45|0;t=l;u=l+44|0;c[x>>2]=b;c[n>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[k>>2]=j;c[m>>2]=c[x>>2];if((c[(c[m>>2]|0)+20>>2]|0)!=0){oc(c[(c[m>>2]|0)+20>>2]|0);c[(c[m>>2]|0)+20>>2]=0}if((c[(c[m>>2]|0)+12>>2]|0)>=(c[(c[m>>2]|0)+8>>2]|0)){c[s>>2]=101;x=c[s>>2]|0;i=l;return x|0}c[o>>2]=1;c[v>>2]=(c[(c[m>>2]|0)+4>>2]|0)+(c[(c[m>>2]|0)+12>>2]|0);c[c[q>>2]>>2]=c[(c[m>>2]|0)+12>>2];x=(c[m>>2]|0)+12|0;c[x>>2]=(c[x>>2]|0)+1;while(1){if((c[(c[m>>2]|0)+12>>2]|0)>=(c[(c[m>>2]|0)+8>>2]|0)){break}a[w>>0]=a[(c[(c[m>>2]|0)+4>>2]|0)+(c[(c[m>>2]|0)+12>>2]|0)>>0]|0;if((a[w>>0]&128|0)==0){break}if((a[w>>0]&192|0)==192){break}c[o>>2]=(c[o>>2]|0)+1;x=(c[m>>2]|0)+12|0;c[x>>2]=(c[x>>2]|0)+1}x=mc((c[o>>2]|0)+1|0)|0;c[(c[m>>2]|0)+20>>2]=x;if((c[(c[m>>2]|0)+20>>2]|0)==0){c[s>>2]=7;x=c[s>>2]|0;i=l;return x|0}a[(c[(c[m>>2]|0)+20>>2]|0)+(c[o>>2]|0)>>0]=0;fL(c[(c[m>>2]|0)+20>>2]|0,c[v>>2]|0,c[o>>2]|0)|0;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[o>>2]|0)){break}a[u>>0]=a[(c[(c[m>>2]|0)+20>>2]|0)+(c[t>>2]|0)>>0]|0;if((d[u>>0]|0)<128){x=(WK(d[u>>0]|0)|0)&255;a[(c[(c[m>>2]|0)+20>>2]|0)+(c[t>>2]|0)>>0]=x}c[t>>2]=(c[t>>2]|0)+1}c[c[n>>2]>>2]=c[(c[m>>2]|0)+20>>2];c[c[p>>2]>>2]=c[o>>2];c[c[r>>2]>>2]=(c[c[q>>2]>>2]|0)+(c[o>>2]|0);b=(c[m>>2]|0)+16|0;x=c[b>>2]|0;c[b>>2]=x+1;c[c[k>>2]>>2]=x;c[s>>2]=0;x=c[s>>2]|0;i=l;return x|0}function Sb(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;b=e+12|0;f=e;g=e+4|0;h=e+8|0;c[f>>2]=a;if((Tb(c[f>>2]|0,96,7)|0)==0){c[f>>2]=(c[f>>2]|0)+7}c[h>>2]=Ub(c[f>>2]|0)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=7){a=9;break}if((Tb(c[f>>2]|0,c[104+(c[g>>2]<<2)>>2]|0,c[h>>2]|0)|0)==0){if((d[136+(d[(c[104+(c[g>>2]<<2)>>2]|0)+(c[h>>2]|0)>>0]|0)>>0]|0|0)==0){a=7;break}}c[g>>2]=(c[g>>2]|0)+1}if((a|0)==7){c[b>>2]=1;h=c[b>>2]|0;i=e;return h|0}else if((a|0)==9){c[b>>2]=0;h=c[b>>2]|0;i=e;return h|0}return 0}function Tb(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+16|0;k=f;j=f+4|0;g=f+8|0;h=f+12|0;c[l>>2]=a;c[k>>2]=b;c[j>>2]=e;c[g>>2]=c[l>>2];c[h>>2]=c[k>>2];while(1){l=c[j>>2]|0;c[j>>2]=l+ -1;if((l|0)<=0){break}if((d[c[g>>2]>>0]|0|0)==0){break}if((d[784+(d[c[g>>2]>>0]|0)>>0]|0|0)!=(d[784+(d[c[h>>2]>>0]|0)>>0]|0|0)){break}c[g>>2]=(c[g>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+1}if((c[j>>2]|0)<0){l=0;i=f;return l|0}l=(d[784+(d[c[g>>2]>>0]|0)>>0]|0)-(d[784+(d[c[h>>2]>>0]|0)>>0]|0)|0;i=f;return l|0}function Ub(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d;g=d+4|0;c[f>>2]=b;c[g>>2]=c[f>>2];if((c[f>>2]|0)==0){c[e>>2]=0;b=c[e>>2]|0;i=d;return b|0}while(1){b=c[g>>2]|0;if((a[c[g>>2]>>0]|0)==0){break}c[g>>2]=b+1}c[e>>2]=1073741823&b-(c[f>>2]|0);b=c[e>>2]|0;i=d;return b|0}function Vb(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;if((c[e>>2]|0)>=0&(c[e>>2]|0)<7){c[d>>2]=c[104+(c[e>>2]<<2)>>2];e=c[d>>2]|0;i=b;return e|0}else{c[d>>2]=0;e=c[d>>2]|0;i=b;return e|0}return 0}function Wb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f;j=f+4|0;k=f+8|0;l=f+12|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;if((c[h>>2]|0)<0|(c[h>>2]|0)>=10){c[g>>2]=Xb(14363)|0;a=c[g>>2]|0;i=f;return a|0}c[c[j>>2]>>2]=c[392+(c[h>>2]<<2)>>2];c[c[k>>2]>>2]=c[432+(c[h>>2]<<2)>>2];if((c[l>>2]|0)!=0){c[432+(c[h>>2]<<2)>>2]=c[392+(c[h>>2]<<2)>>2]}c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}function Xb(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+8|0;c[e>>2]=a;e=c[e>>2]|0;a=(Tf()|0)+20|0;c[d>>2]=e;c[d+4>>2]=a;zc(21,3536,d);i=b;return 21}function Yb(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b;f=b+4|0;c[d>>2]=a;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[d>>2]|0)+20>>2]|0)){break}c[f>>2]=c[(c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]<<4)+4>>2];if((c[f>>2]|0)!=0){c[(c[(c[f>>2]|0)+4>>2]|0)+4>>2]=c[c[f>>2]>>2]}c[e>>2]=(c[e>>2]|0)+1}i=b;return}function Zb(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[c[(c[b>>2]|0)+4>>2]>>2]|0}function _b(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=ub[c[45184>>2]&63](c[d>>2]|0)|0;i=b;return a|0}function $b(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}lu(c[e>>2]|0,c[(c[f>>2]|0)+28>>2]|0);cc(c[e>>2]|0,c[c[f>>2]>>2]|0);cc(c[e>>2]|0,c[(c[f>>2]|0)+4>>2]|0);gu(c[e>>2]|0,c[(c[f>>2]|0)+12>>2]|0);hu(c[e>>2]|0,c[(c[f>>2]|0)+16>>2]|0);cc(c[e>>2]|0,c[f>>2]|0);i=d;return}function ac(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f;j=f+4|0;k=f+8|0;l=f+12|0;c[g>>2]=a;c[h>>2]=d;if((c[h>>2]|0)==0){i=f;return}if((c[g>>2]|0)!=0){if((c[(c[g>>2]|0)+512>>2]|0)==0){e=4}}else{e=4}if((e|0)==4){d=(c[h>>2]|0)+40|0;a=(b[d>>1]|0)+ -1<<16>>16;b[d>>1]=a;if((a&65535|0)>0){i=f;return}}c[j>>2]=c[(c[h>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break}c[k>>2]=c[(c[j>>2]|0)+20>>2];if((c[g>>2]|0)!=0){if((c[(c[g>>2]|0)+512>>2]|0)==0){e=9}}else{e=9}if((e|0)==9){e=0;c[l>>2]=c[c[j>>2]>>2];d=(c[(c[j>>2]|0)+24>>2]|0)+24|0;a=c[l>>2]|0;Eh(d,a,Ub(c[l>>2]|0)|0,0)|0}NE(c[g>>2]|0,c[j>>2]|0);c[j>>2]=c[k>>2]}eF(c[g>>2]|0,c[h>>2]|0);JE(c[g>>2]|0,c[h>>2]|0);cc(c[g>>2]|0,c[c[h>>2]>>2]|0);cc(c[g>>2]|0,c[(c[h>>2]|0)+20>>2]|0);du(c[g>>2]|0,c[(c[h>>2]|0)+12>>2]|0);cu(c[g>>2]|0,c[(c[h>>2]|0)+24>>2]|0);fF(c[g>>2]|0,c[h>>2]|0);cc(c[g>>2]|0,c[h>>2]|0);i=f;return}function bc(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;g=h+16|0;f=h;k=h+4|0;l=h+8|0;j=h+12|0;c[g>>2]=a;c[f>>2]=d;NA(c[(c[f>>2]|0)+60>>2]|0,b[(c[f>>2]|0)+68>>1]|0);NA(c[(c[f>>2]|0)+16>>2]|0,e[(c[f>>2]|0)+84>>1]<<1);c[k>>2]=c[(c[f>>2]|0)+192>>2];while(1){if((c[k>>2]|0)==0){break}c[l>>2]=c[(c[k>>2]|0)+24>>2];gJ(c[g>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0);cc(c[g>>2]|0,c[k>>2]|0);c[k>>2]=c[l>>2]}c[j>>2]=(b[(c[f>>2]|0)+70>>1]|0)-1;while(1){d=c[g>>2]|0;if((c[j>>2]|0)<0){break}cc(d,c[(c[(c[f>>2]|0)+64>>2]|0)+(c[j>>2]<<2)>>2]|0);c[j>>2]=(c[j>>2]|0)+ -1}gJ(d,c[(c[f>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+32>>2]|0);cc(c[g>>2]|0,c[(c[f>>2]|0)+16>>2]|0);cc(c[g>>2]|0,c[(c[f>>2]|0)+168>>2]|0);cc(c[g>>2]|0,c[(c[f>>2]|0)+172>>2]|0);i=h;return}function cc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d;g=d+4|0;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}if((c[e>>2]|0)!=0){a=c[e>>2]|0;b=c[f>>2]|0;if((c[(c[e>>2]|0)+512>>2]|0)!=0){b=Vv(a,b)|0;a=c[(c[e>>2]|0)+512>>2]|0;c[a>>2]=(c[a>>2]|0)+b;i=d;return}if((Pt(a,b)|0)!=0){c[g>>2]=c[f>>2];c[c[g>>2]>>2]=c[(c[e>>2]|0)+264>>2];c[(c[e>>2]|0)+264>>2]=c[g>>2];a=(c[e>>2]|0)+244|0;c[a>>2]=(c[a>>2]|0)+ -1;i=d;return}}oc(c[f>>2]|0);i=d;return}function dc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;f=b;e=b+4|0;g=b+8|0;c[f>>2]=a;c[e>>2]=0;c[g>>2]=ec()|0;if((c[g>>2]|0)!=0){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}c[e>>2]=c[118];while(1){if((c[e>>2]|0)==0){break}if((c[f>>2]|0)==0){break}if((YK(c[f>>2]|0,c[(c[e>>2]|0)+16>>2]|0)|0)==0){break}c[e>>2]=c[(c[e>>2]|0)+12>>2]}c[d>>2]=c[e>>2];g=c[d>>2]|0;i=b;return g|0}function ec(){var a=0,b=0,d=0,e=0,f=0;a=i;i=i+16|0;b=a+8|0;d=a;e=a+4|0;if((c[45360>>2]|0)!=0){c[b>>2]=0;f=c[b>>2]|0;i=a;return f|0}c[d>>2]=0;if((c[d>>2]|0)!=0){c[b>>2]=c[d>>2];f=c[b>>2]|0;i=a;return f|0}c[45368>>2]=1;if((c[45372>>2]|0)==0){c[d>>2]=Vf()|0}if((c[d>>2]|0)==0){c[45372>>2]=1;if((c[45384>>2]|0)==0){c[45384>>2]=8;if((c[45140>>2]|0)!=0){if((c[45384>>2]|0)==0){c[d>>2]=7}}}}if((c[d>>2]|0)==0){c[45380>>2]=(c[45380>>2]|0)+1}if((c[d>>2]|0)!=0){c[b>>2]=c[d>>2];f=c[b>>2]|0;i=a;return f|0}if((c[45360>>2]|0)==0){if((c[45364>>2]|0)==0){c[e>>2]=1896;c[45364>>2]=1;f=(c[e>>2]|0)+0|0;e=f+92|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));Wf();if((c[45376>>2]|0)==0){c[d>>2]=Xf()|0}if((c[d>>2]|0)==0){c[45376>>2]=1;c[d>>2]=Yf()|0}if((c[d>>2]|0)==0){Zf(c[45340>>2]|0,c[45344>>2]|0,c[45348>>2]|0);c[45360>>2]=1}c[45364>>2]=0}}c[45380>>2]=(c[45380>>2]|0)+ -1;if((c[45380>>2]|0)<=0){c[45384>>2]=0}c[b>>2]=c[d>>2];f=c[b>>2]|0;i=a;return f|0}function fc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d;g=d+4|0;h=d+8|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=ec()|0;if((c[h>>2]|0)!=0){c[e>>2]=c[h>>2];a=c[e>>2]|0;i=d;return a|0}gc(c[f>>2]|0);b=c[118]|0;if((c[g>>2]|0)!=0|(c[118]|0)==0){c[(c[f>>2]|0)+12>>2]=b;c[118]=c[f>>2]}else{c[(c[f>>2]|0)+12>>2]=c[b+12>>2];c[(c[118]|0)+12>>2]=c[f>>2]}c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}function gc(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}if((c[118]|0)==(c[d>>2]|0)){c[118]=c[(c[d>>2]|0)+12>>2];i=b;return}if((c[118]|0)==0){i=b;return}c[e>>2]=c[118];while(1){if((c[(c[e>>2]|0)+12>>2]|0)!=0){f=(c[(c[e>>2]|0)+12>>2]|0)!=(c[d>>2]|0)}else{f=0}a=c[(c[e>>2]|0)+12>>2]|0;if(!f){break}c[e>>2]=a}if((a|0)!=(c[d>>2]|0)){i=b;return}c[(c[e>>2]|0)+12>>2]=c[(c[d>>2]|0)+12>>2];i=b;return}function hc(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function ic(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;k=f+16|0;j=f+8|0;g=f;h=f+12|0;c[k>>2]=a;c[j>>2]=b;b=g;c[b>>2]=d;c[b+4>>2]=e;c[496>>2]=c[k>>2];c[500>>2]=c[j>>2];d=g;b=c[d+4>>2]|0;a=488|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;c[h>>2]=Zg(0)|0;a=g;b=c[a+4>>2]|0;if(!((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>0)){k=0;k=k&1;c[516>>2]=k;i=f;return 0}j=g;b=c[j+4>>2]|0;k=c[h>>2]|0;a=((k|0)<0)<<31>>31;k=(b|0)<(a|0)|((b|0)==(a|0)?(c[j>>2]|0)>>>0<=k>>>0:0);k=k&1;c[516>>2]=k;i=f;return 0}function jc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+48|0;e=d+24|0;g=d;f=d+8|0;h=d+16|0;j=d+32|0;k=g;c[k>>2]=a;c[k+4>>2]=b;c[j>>2]=ec()|0;if((c[j>>2]|0)!=0){j=e;c[j>>2]=-1;c[j+4>>2]=-1;j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}a=488|0;j=c[a+4>>2]|0;k=f;c[k>>2]=c[a>>2];c[k+4>>2]=j;if((c[g+4>>2]|0)<0){a=f;k=c[a+4>>2]|0;j=e;c[j>>2]=c[a>>2];c[j+4>>2]=k;j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}k=g;j=c[k+4>>2]|0;if((j|0)>0|(j|0)==0&(c[k>>2]|0)>>>0>0){k=g;ic(2,0,c[k>>2]|0,c[k+4>>2]|0)|0}else{ic(0,0,0,0)|0}k=lc()|0;j=g;j=$K(k|0,D|0,c[j>>2]|0,c[j+4>>2]|0)|0;k=h;c[k>>2]=j;c[k+4>>2]=D;k=h;j=c[k+4>>2]|0;if((j|0)>0|(j|0)==0&(c[k>>2]|0)>>>0>0){hc(c[h>>2]&2147483647)|0}a=f;k=c[a+4>>2]|0;j=e;c[j>>2]=c[a>>2];c[j+4>>2]=k;j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}function kc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f+8|0;c[f+12>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;c[g>>2]=e;hc(c[g>>2]|0)|0;i=f;return}function lc(){var a=0,b=0,d=0,e=0;b=i;i=i+16|0;e=b+12|0;a=b;Wb(0,e,b+8|0,0)|0;e=c[e>>2]|0;d=a;c[d>>2]=e;c[d+4>>2]=((e|0)<0)<<31>>31;D=c[a+4>>2]|0;i=b;return c[a>>2]|0}function mc(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;if((ec()|0)!=0){c[b>>2]=0}else{c[b>>2]=nc(c[e>>2]|0)|0}i=d;return c[b>>2]|0}function nc(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;do{if((c[e>>2]|0)<=0|(c[e>>2]|0)>=2147483392){c[d>>2]=0}else{if((c[11284]|0)!=0){Yg(c[e>>2]|0,d)|0;break}else{c[d>>2]=ub[c[45172>>2]&63](c[e>>2]|0)|0;break}}}while(0);i=b;return c[d>>2]|0}function oc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}if((c[11284]|0)!=0){pc(0,0-(_b(c[d>>2]|0)|0)|0);pc(9,-1);rb[c[45176>>2]&31](c[d>>2]|0);i=b;return}else{rb[c[45176>>2]&31](c[d>>2]|0);i=b;return}}function pc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;a=392+(c[e>>2]<<2)|0;c[a>>2]=(c[a>>2]|0)+(c[f>>2]|0);if((c[392+(c[e>>2]<<2)>>2]|0)<=(c[432+(c[e>>2]<<2)>>2]|0)){i=d;return}c[432+(c[e>>2]<<2)>>2]=c[392+(c[e>>2]<<2)>>2];i=d;return}function qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;c[g>>2]=a;c[f>>2]=b;if((ec()|0)!=0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}else{c[e>>2]=rc(c[g>>2]|0,c[f>>2]|0)|0;a=c[e>>2]|0;i=d;return a|0}return 0}function rc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;e=h+24|0;f=h;j=h+4|0;k=h+8|0;d=h+12|0;l=h+16|0;g=h+20|0;c[f>>2]=a;c[j>>2]=b;b=c[j>>2]|0;if((c[f>>2]|0)==0){c[e>>2]=nc(b)|0;a=c[e>>2]|0;i=h;return a|0}if((b|0)<=0){oc(c[f>>2]|0);c[e>>2]=0;a=c[e>>2]|0;i=h;return a|0}if((c[j>>2]|0)>=2147483392){c[e>>2]=0;a=c[e>>2]|0;i=h;return a|0}c[k>>2]=_b(c[f>>2]|0)|0;c[d>>2]=ub[c[45188>>2]&63](c[j>>2]|0)|0;do{if((c[k>>2]|0)==(c[d>>2]|0)){c[g>>2]=c[f>>2]}else{if((c[11284]|0)==0){c[g>>2]=zb[c[45180>>2]&127](c[f>>2]|0,c[d>>2]|0)|0;break}Xg(5,c[j>>2]|0);c[l>>2]=(c[d>>2]|0)-(c[k>>2]|0);b=Zg(0)|0;n=((b|0)<0)<<31>>31;m=488|0;a=c[l>>2]|0;a=$K(c[m>>2]|0,c[m+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;m=D;if((n|0)>(m|0)|(n|0)==(m|0)&b>>>0>=a>>>0){_g(c[l>>2]|0)}c[g>>2]=zb[c[45180>>2]&127](c[f>>2]|0,c[d>>2]|0)|0;if((c[g>>2]|0)==0&(c[496>>2]|0)!=0){_g(c[j>>2]|0);c[g>>2]=zb[c[45180>>2]&127](c[f>>2]|0,c[d>>2]|0)|0}if((c[g>>2]|0)!=0){c[d>>2]=_b(c[g>>2]|0)|0;pc(0,(c[d>>2]|0)-(c[k>>2]|0)|0)}}}while(0);c[e>>2]=c[g>>2];n=c[e>>2]|0;i=h;return n|0}function sc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+128|0;f=e+40|0;k=e;j=e+4|0;g=e+8|0;h=e+12|0;c[k>>2]=b;c[j>>2]=d;if((ec()|0)!=0){c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}else{tc(h,e+44|0,70,1e9);a[h+24>>0]=2;uc(h,0,c[k>>2]|0,c[j>>2]|0);c[g>>2]=vc(h)|0;c[f>>2]=c[g>>2];b=c[f>>2]|0;i=e;return b|0}return 0}function tc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;h=g+12|0;l=g;k=g+4|0;j=g+8|0;c[h>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;b=c[l>>2]|0;c[(c[h>>2]|0)+4>>2]=b;c[(c[h>>2]|0)+8>>2]=b;c[c[h>>2]>>2]=0;c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+16>>2]=c[k>>2];c[(c[h>>2]|0)+20>>2]=c[j>>2];a[(c[h>>2]|0)+24>>0]=1;a[(c[h>>2]|0)+25>>0]=0;i=g;return}function uc(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0.0;m=i;i=i+272|0;Y=m+156|0;ra=m+172|0;q=m+160|0;z=m+168|0;p=m+164|0;J=m+152|0;A=m+148|0;K=m+144|0;G=m+140|0;o=m+136|0;r=m+177|0;w=m+178|0;s=m+180|0;t=m+181|0;v=m+183|0;u=m+185|0;B=m+186|0;C=m+187|0;n=m+258|0;F=m+261|0;x=m+262|0;ia=m+263|0;R=m+264|0;ma=m+8|0;Q=m+16|0;E=m+68|0;X=m+72|0;ja=m+76|0;H=m+80|0;T=m+64|0;W=m+60|0;j=m+48|0;S=m+24|0;Z=m+260|0;V=m+259|0;y=m+44|0;I=m+188|0;qa=m;pa=m+56|0;oa=m+52|0;na=m+184|0;ka=m+40|0;la=m+182|0;U=m+32|0;$=m+84|0;_=m+88|0;ea=m+92|0;ha=m+96|0;ca=m+100|0;da=m+104|0;ba=m+108|0;ga=m+112|0;fa=m+179|0;L=m+176|0;aa=m+116|0;P=m+120|0;M=m+124|0;N=m+128|0;O=m+132|0;c[Y>>2]=b;c[ra>>2]=e;c[q>>2]=f;c[z>>2]=g;a[F>>0]=0;c[y>>2]=0;c[J>>2]=0;if((c[ra>>2]|0)!=0){g=c[ra>>2]&2;a[x>>0]=g;if((g&255|0)!=0){b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[y>>2]=g}a[ia>>0]=c[ra>>2]&1}else{a[ia>>0]=0;a[x>>0]=0}a:while(1){g=a[c[q>>2]>>0]|0;c[p>>2]=g;if((g|0)==0){l=283;break}if((c[p>>2]|0)!=37){c[J>>2]=c[q>>2];do{g=(c[q>>2]|0)+1|0;c[q>>2]=g;g=a[g>>0]|0;c[p>>2]=g;if((g|0)==37){break}}while((c[p>>2]|0)!=0);Jt(c[Y>>2]|0,c[J>>2]|0,(c[q>>2]|0)-(c[J>>2]|0)|0);if((c[p>>2]|0)==0){l=283;break}}g=(c[q>>2]|0)+1|0;c[q>>2]=g;g=a[g>>0]|0;c[p>>2]=g;if((g|0)==0){l=13;break}a[u>>0]=0;a[v>>0]=0;a[t>>0]=0;a[s>>0]=0;a[w>>0]=0;a[r>>0]=0;a[n>>0]=0;do{switch(c[p>>2]|0){case 45:{a[r>>0]=1;break};case 32:{a[s>>0]=1;break};case 35:{a[t>>0]=1;break};case 48:{a[u>>0]=1;break};case 33:{a[v>>0]=1;break};case 43:{a[w>>0]=1;break};default:{a[n>>0]=1}}if((a[n>>0]|0)!=0){break}g=(c[q>>2]|0)+1|0;c[q>>2]=g;g=a[g>>0]|0;c[p>>2]=g}while((g|0)!=0);c[o>>2]=0;b:do{if((c[p>>2]|0)==42){if((a[x>>0]|0)!=0){g=JK(c[y>>2]|0)|0;c[o>>2]=g}else{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[o>>2]=g}if((c[o>>2]|0)<0){a[r>>0]=1;c[o>>2]=0-(c[o>>2]|0)}g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0}else{while(1){if(!((c[p>>2]|0)>=48&(c[p>>2]|0)<=57)){break b}c[o>>2]=((c[o>>2]|0)*10|0)+(c[p>>2]|0)-48;g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0}}}while(0);c:do{if((c[p>>2]|0)==46){c[A>>2]=0;g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0;if((c[p>>2]|0)!=42){while(1){if(!((c[p>>2]|0)>=48&(c[p>>2]|0)<=57)){break c}c[A>>2]=((c[A>>2]|0)*10|0)+(c[p>>2]|0)-48;g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0}}if((a[x>>0]|0)!=0){g=JK(c[y>>2]|0)|0;c[A>>2]=g}else{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[A>>2]=g}if((c[A>>2]|0)<0){c[A>>2]=0-(c[A>>2]|0)}g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0}else{c[A>>2]=-1}}while(0);do{if((c[p>>2]|0)==108){a[B>>0]=1;g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0;if((c[p>>2]|0)==108){a[C>>0]=1;g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0;break}else{a[C>>0]=0;break}}else{a[C>>0]=0;a[B>>0]=0}}while(0);c[E>>2]=44888;a[F>>0]=0;c[G>>2]=0;while(1){if((c[G>>2]|0)>=23){break}ra=c[G>>2]|0;if((c[p>>2]|0)==(a[44888+((c[G>>2]|0)*6|0)>>0]|0)){l=53;break}c[G>>2]=ra+1}if((l|0)==53){l=0;c[E>>2]=44888+(ra*6|0);if((d[ia>>0]|0)==0){if((a[(c[E>>2]|0)+2>>0]&2|0)!=0){l=283;break}}a[F>>0]=a[(c[E>>2]|0)+3>>0]|0}c[H>>2]=0;d:do{switch(d[F>>0]|0){case 14:{a[C>>0]=0;a[B>>0]=1;l=59;break};case 1:case 16:{l=59;break};case 4:case 3:case 2:{if((a[x>>0]|0)!=0){h[Q>>3]=+KK(c[y>>2]|0)}else{g=c[z>>2]|0;b=c[g>>2]|0;c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];sa=+h[k>>3];c[g>>2]=b+8;h[Q>>3]=sa}if((c[A>>2]|0)<0){c[A>>2]=6}do{if(+h[Q>>3]<0.0){h[Q>>3]=-+h[Q>>3];a[R>>0]=45}else{if((a[w>>0]|0)!=0){a[R>>0]=43;break}if((a[s>>0]|0)!=0){a[R>>0]=32;break}else{a[R>>0]=0;break}}}while(0);if((d[F>>0]|0)==4){if((c[A>>2]|0)>0){c[A>>2]=(c[A>>2]|0)+ -1}}c[G>>2]=c[A>>2];h[S>>3]=.5;while(1){if((c[G>>2]|0)<=0){break}c[G>>2]=(c[G>>2]|0)+ -1;h[S>>3]=+h[S>>3]*.1}if((d[F>>0]|0)==2){h[Q>>3]=+h[Q>>3]+ +h[S>>3]}c[T>>2]=0;if((CD(+h[Q>>3])|0)!=0){c[J>>2]=45096;c[K>>2]=3;break d}if(+h[Q>>3]>0.0){h[U>>3]=1.0;while(1){if(!(+h[Q>>3]>=+h[U>>3]*1.0e+100)){break}if((c[T>>2]|0)>350){break}h[U>>3]=+h[U>>3]*1.0e+100;c[T>>2]=(c[T>>2]|0)+100}while(1){if(!(+h[Q>>3]>=+h[U>>3]*1.0e+64)){break}if((c[T>>2]|0)>350){break}h[U>>3]=+h[U>>3]*1.0e+64;c[T>>2]=(c[T>>2]|0)+64}while(1){if(!(+h[Q>>3]>=+h[U>>3]*1.0e8)){break}if((c[T>>2]|0)>350){break}h[U>>3]=+h[U>>3]*1.0e8;c[T>>2]=(c[T>>2]|0)+8}while(1){if(+h[Q>>3]>=+h[U>>3]*10.0){ra=(c[T>>2]|0)<=350}else{ra=0}sa=+h[U>>3];if(!ra){break}h[U>>3]=sa*10.0;c[T>>2]=(c[T>>2]|0)+1}h[Q>>3]=+h[Q>>3]/sa;while(1){if(!(+h[Q>>3]<1.0e-8)){break}h[Q>>3]=+h[Q>>3]*1.0e8;c[T>>2]=(c[T>>2]|0)-8}while(1){if(!(+h[Q>>3]<1.0)){break}h[Q>>3]=+h[Q>>3]*10.0;c[T>>2]=(c[T>>2]|0)+ -1}if((c[T>>2]|0)>350){do{if((a[R>>0]|0)==45){c[J>>2]=45104}else{if((a[R>>0]|0)==43){c[J>>2]=45112;break}else{c[J>>2]=45120;break}}}while(0);c[K>>2]=Ub(c[J>>2]|0)|0;break d}}c[J>>2]=I;if((d[F>>0]|0)!=2){h[Q>>3]=+h[Q>>3]+ +h[S>>3];if(+h[Q>>3]>=10.0){h[Q>>3]=+h[Q>>3]*.1;c[T>>2]=(c[T>>2]|0)+1}}e:do{if((d[F>>0]|0)==4){a[V>>0]=((a[t>>0]|0)!=0^1)&1;do{if(!((c[T>>2]|0)<-4)){if((c[T>>2]|0)>(c[A>>2]|0)){break}c[A>>2]=(c[A>>2]|0)-(c[T>>2]|0);a[F>>0]=2;break e}}while(0);a[F>>0]=3}else{a[V>>0]=a[v>>0]|0}}while(0);if((d[F>>0]|0)==3){c[W>>2]=0}else{c[W>>2]=c[T>>2]}if((((c[W>>2]|0)>0?c[W>>2]|0:0)+(c[A>>2]|0)+(c[o>>2]|0)|0)>55){g=nc(((c[W>>2]|0)>0?c[W>>2]|0:0)+(c[A>>2]|0)+(c[o>>2]|0)+15|0)|0;c[H>>2]=g;c[J>>2]=g;if((c[J>>2]|0)==0){l=171;break a}}c[X>>2]=c[J>>2];c[j>>2]=16+((d[v>>0]|0)*10|0);a[Z>>0]=((c[A>>2]|0)>0?1:0)|d[t>>0]|d[v>>0];if((a[R>>0]|0)!=0){b=a[R>>0]|0;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=b}f:do{if((c[W>>2]|0)<0){g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=48}else{while(1){if((c[W>>2]|0)<0){break f}b=LK(Q,j)|0;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=b;c[W>>2]=(c[W>>2]|0)+ -1}}}while(0);if((a[Z>>0]|0)!=0){g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=46}c[W>>2]=(c[W>>2]|0)+1;while(1){if((c[W>>2]|0)>=0){break}g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=48;c[A>>2]=(c[A>>2]|0)+ -1;c[W>>2]=(c[W>>2]|0)+1}while(1){g=c[A>>2]|0;c[A>>2]=g+ -1;if((g|0)<=0){break}b=LK(Q,j)|0;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=b}do{if((d[V>>0]|0)!=0){if((d[Z>>0]|0)==0){break}while(1){ra=(c[J>>2]|0)+ -1|0;if((a[(c[J>>2]|0)+ -1>>0]|0)!=48){break}c[J>>2]=ra;a[ra>>0]=0}if((a[ra>>0]|0)!=46){break}ra=c[J>>2]|0;if((a[v>>0]|0)!=0){c[J>>2]=ra+1;a[ra>>0]=48;break}else{g=ra+ -1|0;c[J>>2]=g;a[g>>0]=0;break}}}while(0);if((d[F>>0]|0)==3){ra=a[45048+(d[(c[E>>2]|0)+4>>0]|0)>>0]|0;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=ra;g=(c[T>>2]|0)<0;ra=c[J>>2]|0;c[J>>2]=ra+1;if(g){a[ra>>0]=45;c[T>>2]=0-(c[T>>2]|0)}else{a[ra>>0]=43}if((c[T>>2]|0)>=100){b=((c[T>>2]|0)/100|0)+48&255;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=b;c[T>>2]=(c[T>>2]|0)%100|0}g=((c[T>>2]|0)/10|0)+48&255;b=c[J>>2]|0;c[J>>2]=b+1;a[b>>0]=g;b=((c[T>>2]|0)%10|0)+48&255;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=b}a[c[J>>2]>>0]=0;c[K>>2]=(c[J>>2]|0)-(c[X>>2]|0);c[J>>2]=c[X>>2];if((d[u>>0]|0)==0){break d}if((a[r>>0]|0)!=0){break d}if((c[K>>2]|0)>=(c[o>>2]|0)){break d}c[_>>2]=(c[o>>2]|0)-(c[K>>2]|0);c[$>>2]=c[o>>2];while(1){if((c[$>>2]|0)<(c[_>>2]|0)){break}a[(c[J>>2]|0)+(c[$>>2]|0)>>0]=a[(c[J>>2]|0)+((c[$>>2]|0)-(c[_>>2]|0))>>0]|0;c[$>>2]=(c[$>>2]|0)+ -1}c[$>>2]=(a[R>>0]|0)!=0&1;while(1){g=c[_>>2]|0;c[_>>2]=g+ -1;if((g|0)==0){break}g=c[$>>2]|0;c[$>>2]=g+1;a[(c[J>>2]|0)+g>>0]=48}c[K>>2]=c[o>>2];break};case 5:{if((a[x>>0]|0)==0){b=c[(c[Y>>2]|0)+12>>2]|0;e=c[z>>2]|0;f=c[e>>2]|0;g=c[f>>2]|0;c[e>>2]=f+4;c[g>>2]=b}c[o>>2]=0;c[K>>2]=0;break};case 7:case 6:{if((a[x>>0]|0)!=0){c[J>>2]=MK(c[y>>2]|0)|0}else{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[J>>2]=g}if((c[J>>2]|0)==0){c[J>>2]=1784}else{if((d[F>>0]|0)==7){if((a[x>>0]|0)==0){c[H>>2]=c[J>>2]}}}if((c[A>>2]|0)<0){c[K>>2]=Ub(c[J>>2]|0)|0;break d}c[K>>2]=0;while(1){if((c[K>>2]|0)>=(c[A>>2]|0)){break d}if((a[(c[J>>2]|0)+(c[K>>2]|0)>>0]|0)==0){break d}c[K>>2]=(c[K>>2]|0)+1}};case 8:{a[I>>0]=37;c[J>>2]=I;c[K>>2]=1;break};case 9:{if((a[x>>0]|0)!=0){c[J>>2]=MK(c[y>>2]|0)|0;if((c[J>>2]|0)!=0){ra=a[c[J>>2]>>0]|0}else{ra=0}c[p>>2]=ra}else{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[p>>2]=g}a[I>>0]=c[p>>2];if((c[A>>2]|0)>=0){c[G>>2]=1;while(1){if((c[G>>2]|0)>=(c[A>>2]|0)){break}a[I+(c[G>>2]|0)>>0]=c[p>>2];c[G>>2]=(c[G>>2]|0)+1}c[K>>2]=c[A>>2]}else{c[K>>2]=1}c[J>>2]=I;break};case 15:case 11:case 10:{a[L>>0]=(d[F>>0]|0)==15?34:39;if((a[x>>0]|0)!=0){c[aa>>2]=MK(c[y>>2]|0)|0}else{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[aa>>2]=g}c[ba>>2]=(c[aa>>2]|0)==0&1;if((c[ba>>2]|0)!=0){c[aa>>2]=(d[F>>0]|0)==11?16376:45128}c[ca>>2]=c[A>>2];c[da>>2]=0;c[ea>>2]=0;while(1){if((c[ca>>2]|0)==0){break}g=a[(c[aa>>2]|0)+(c[ea>>2]|0)>>0]|0;a[fa>>0]=g;if((g<<24>>24|0)==0){break}if((a[fa>>0]|0)==(a[L>>0]|0)){c[da>>2]=(c[da>>2]|0)+1}c[ea>>2]=(c[ea>>2]|0)+1;c[ca>>2]=(c[ca>>2]|0)+ -1}if((c[ba>>2]|0)!=0){ra=0}else{ra=(d[F>>0]|0)==11}c[ga>>2]=ra&1;c[da>>2]=(c[da>>2]|0)+((c[ea>>2]|0)+1+(c[ga>>2]<<1));if((c[da>>2]|0)>70){g=nc(c[da>>2]|0)|0;c[H>>2]=g;c[J>>2]=g;if((c[J>>2]|0)==0){l=255;break a}}else{c[J>>2]=I}c[ha>>2]=0;if((c[ga>>2]|0)!=0){b=a[L>>0]|0;g=c[ha>>2]|0;c[ha>>2]=g+1;a[(c[J>>2]|0)+g>>0]=b}c[ca>>2]=c[ea>>2];c[ea>>2]=0;while(1){if((c[ea>>2]|0)>=(c[ca>>2]|0)){break}b=a[(c[aa>>2]|0)+(c[ea>>2]|0)>>0]|0;a[fa>>0]=b;g=c[ha>>2]|0;c[ha>>2]=g+1;a[(c[J>>2]|0)+g>>0]=b;if((a[fa>>0]|0)==(a[L>>0]|0)){b=a[fa>>0]|0;g=c[ha>>2]|0;c[ha>>2]=g+1;a[(c[J>>2]|0)+g>>0]=b}c[ea>>2]=(c[ea>>2]|0)+1}if((c[ga>>2]|0)!=0){b=a[L>>0]|0;g=c[ha>>2]|0;c[ha>>2]=g+1;a[(c[J>>2]|0)+g>>0]=b}a[(c[J>>2]|0)+(c[ha>>2]|0)>>0]=0;c[K>>2]=c[ha>>2];break};case 13:{e=c[z>>2]|0;g=c[e>>2]|0;b=c[g>>2]|0;c[e>>2]=g+4;c[M>>2]=b;b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[N>>2]=g;c[O>>2]=(c[M>>2]|0)+8+((c[N>>2]|0)*72|0);if((c[(c[O>>2]|0)+4>>2]|0)!=0){Zy(c[Y>>2]|0,c[(c[O>>2]|0)+4>>2]|0);Jt(c[Y>>2]|0,25632,1)}Zy(c[Y>>2]|0,c[(c[O>>2]|0)+8>>2]|0);c[o>>2]=0;c[K>>2]=0;break};case 12:{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[P>>2]=g;if((c[P>>2]|0)!=0){if((c[(c[P>>2]|0)+4>>2]|0)!=0){Jt(c[Y>>2]|0,c[c[P>>2]>>2]|0,c[(c[P>>2]|0)+4>>2]|0)}}c[o>>2]=0;c[K>>2]=0;break};default:{l=283;break a}}}while(0);if((l|0)==59){l=0;ra=(a[x>>0]|0)!=0;do{if((a[(c[E>>2]|0)+2>>0]&1|0)!=0){do{if(ra){b=JK(c[y>>2]|0)|0;g=qa;c[g>>2]=b;c[g+4>>2]=D}else{ra=c[z>>2]|0;if((a[C>>0]|0)!=0){g=c[ra>>2]|0;b=g;e=c[b>>2]|0;b=c[b+4>>2]|0;c[ra>>2]=g+8;g=qa;c[g>>2]=e;c[g+4>>2]=b;break}else{g=c[ra>>2]|0;b=c[g>>2]|0;c[ra>>2]=g+4;g=qa;c[g>>2]=b;c[g+4>>2]=((b|0)<0)<<31>>31;break}}}while(0);ra=qa;f=c[ra>>2]|0;ra=c[ra+4>>2]|0;if((c[qa+4>>2]|0)<0){if((f|0)==0&(ra|0)==-2147483648){g=ma;c[g>>2]=0;c[g+4>>2]=-2147483648}else{b=qa;b=$K(0,0,c[b>>2]|0,c[b+4>>2]|0)|0;g=ma;c[g>>2]=b;c[g+4>>2]=D}a[R>>0]=45;break}g=ma;c[g>>2]=f;c[g+4>>2]=ra;if((a[w>>0]|0)!=0){a[R>>0]=43;break}if((a[s>>0]|0)!=0){a[R>>0]=32;break}else{a[R>>0]=0;break}}else{do{if(ra){b=JK(c[y>>2]|0)|0;g=ma;c[g>>2]=b;c[g+4>>2]=D}else{ra=c[z>>2]|0;if((a[C>>0]|0)!=0){g=c[ra>>2]|0;b=g;e=c[b>>2]|0;b=c[b+4>>2]|0;c[ra>>2]=g+8;g=ma;c[g>>2]=e;c[g+4>>2]=b;break}else{g=c[ra>>2]|0;b=c[g>>2]|0;c[ra>>2]=g+4;g=ma;c[g>>2]=b;c[g+4>>2]=0;break}}}while(0);a[R>>0]=0}}while(0);g=ma;if((c[g>>2]|0)==0&(c[g+4>>2]|0)==0){a[t>>0]=0}if((d[u>>0]|0)!=0){if((c[A>>2]|0)<((c[o>>2]|0)-((a[R>>0]|0)!=0&1)|0)){c[A>>2]=(c[o>>2]|0)-((a[R>>0]|0)!=0&1)}}if((c[A>>2]|0)<60){c[ja>>2]=70;c[X>>2]=I}else{c[ja>>2]=(c[A>>2]|0)+10;g=nc(c[ja>>2]|0)|0;c[H>>2]=g;c[X>>2]=g;if((c[X>>2]|0)==0){l=89;break}}c[J>>2]=(c[X>>2]|0)+((c[ja>>2]|0)-1);if((d[F>>0]|0)==16){g=ma;g=pL(c[g>>2]|0,c[g+4>>2]|0,10,0)|0;c[pa>>2]=g;if((c[pa>>2]|0)>=4){l=93}else{g=ma;g=oL(c[g>>2]|0,c[g+4>>2]|0,10,0)|0;g=pL(g|0,D|0,10,0)|0;if((g|0)==1&(D|0)==0){l=93}}if((l|0)==93){l=0;c[pa>>2]=0}g=a[(c[pa>>2]<<1)+45033>>0]|0;b=(c[J>>2]|0)+ -1|0;c[J>>2]=b;a[b>>0]=g;b=a[45032+(c[pa>>2]<<1)>>0]|0;g=(c[J>>2]|0)+ -1|0;c[J>>2]=g;a[g>>0]=b}c[oa>>2]=45048+(d[(c[E>>2]|0)+4>>0]|0);a[na>>0]=a[(c[E>>2]|0)+1>>0]|0;do{g=ma;g=pL(c[g>>2]|0,c[g+4>>2]|0,d[na>>0]|0,0)|0;g=a[(c[oa>>2]|0)+g>>0]|0;b=(c[J>>2]|0)+ -1|0;c[J>>2]=b;a[b>>0]=g;b=ma;b=oL(c[b>>2]|0,c[b+4>>2]|0,d[na>>0]|0,0)|0;g=ma;c[g>>2]=b;c[g+4>>2]=D;g=ma;b=c[g+4>>2]|0}while(b>>>0>0|(b|0)==0&(c[g>>2]|0)>>>0>0);c[K>>2]=(c[X>>2]|0)+((c[ja>>2]|0)-1)-(c[J>>2]|0);c[G>>2]=(c[A>>2]|0)-(c[K>>2]|0);while(1){if((c[G>>2]|0)<=0){break}g=(c[J>>2]|0)+ -1|0;c[J>>2]=g;a[g>>0]=48;c[G>>2]=(c[G>>2]|0)+ -1}if((a[R>>0]|0)!=0){b=a[R>>0]|0;g=(c[J>>2]|0)+ -1|0;c[J>>2]=g;a[g>>0]=b}g:do{if((d[t>>0]|0)!=0){if((d[(c[E>>2]|0)+5>>0]|0)!=0){c[ka>>2]=45088+(d[(c[E>>2]|0)+5>>0]|0);while(1){g=a[c[ka>>2]>>0]|0;a[la>>0]=g;if((g<<24>>24|0)==0){break g}b=a[la>>0]|0;g=(c[J>>2]|0)+ -1|0;c[J>>2]=g;a[g>>0]=b;c[ka>>2]=(c[ka>>2]|0)+1}}}}while(0);c[K>>2]=(c[X>>2]|0)+((c[ja>>2]|0)-1)-(c[J>>2]|0)}c[o>>2]=(c[o>>2]|0)-(c[K>>2]|0);if((c[o>>2]|0)>0){if((a[r>>0]|0)==0){NK(c[Y>>2]|0,c[o>>2]|0)}}Jt(c[Y>>2]|0,c[J>>2]|0,c[K>>2]|0);if((c[o>>2]|0)>0){if((d[r>>0]|0)!=0){NK(c[Y>>2]|0,c[o>>2]|0)}}if((c[H>>2]|0)!=0){oc(c[H>>2]|0)}c[q>>2]=(c[q>>2]|0)+1}if((l|0)==13){Jt(c[Y>>2]|0,44880,1);i=m;return}else if((l|0)==89){Mt(c[Y>>2]|0,1);i=m;return}else if((l|0)==171){Mt(c[Y>>2]|0,1);i=m;return}else if((l|0)==255){Mt(c[Y>>2]|0,1);i=m;return}else if((l|0)==283){i=m;return}}function vc(b){b=b|0;var e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=b;do{if((c[(c[e>>2]|0)+8>>2]|0)!=0){a[(c[(c[e>>2]|0)+8>>2]|0)+(c[(c[e>>2]|0)+12>>2]|0)>>0]=0;if((d[(c[e>>2]|0)+24>>0]|0|0)!=0){if((c[(c[e>>2]|0)+8>>2]|0)==(c[(c[e>>2]|0)+4>>2]|0)){b=c[e>>2]|0;if((d[(c[e>>2]|0)+24>>0]|0|0)==1){b=$e(c[b>>2]|0,(c[(c[e>>2]|0)+12>>2]|0)+1|0)|0;c[(c[e>>2]|0)+8>>2]=b}else{b=mc((c[b+12>>2]|0)+1|0)|0;c[(c[e>>2]|0)+8>>2]=b}b=c[e>>2]|0;if((c[(c[e>>2]|0)+8>>2]|0)!=0){fL(c[b+8>>2]|0,c[(c[e>>2]|0)+4>>2]|0,(c[(c[e>>2]|0)+12>>2]|0)+1|0)|0;break}else{Mt(b,1);break}}}}}while(0);i=f;return c[(c[e>>2]|0)+8>>2]|0}function wc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;e=d+28|0;h=d;g=d+8|0;f=d+24|0;c[h>>2]=a;if((ec()|0)!=0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}else{c[g>>2]=b;c[f>>2]=sc(c[h>>2]|0,g)|0;c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}return 0}function xc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+48|0;h=l+44|0;m=l;n=l+4|0;g=l+8|0;k=l+12|0;j=l+16|0;c[m>>2]=b;c[n>>2]=d;c[g>>2]=e;c[k>>2]=f;f=c[n>>2]|0;if((c[m>>2]|0)<=0){c[h>>2]=f;n=c[h>>2]|0;i=l;return n|0}else{tc(j,f,c[m>>2]|0,0);a[j+24>>0]=0;uc(j,0,c[g>>2]|0,c[k>>2]|0);c[h>>2]=vc(j)|0;n=c[h>>2]|0;i=l;return n|0}return 0}function yc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+48|0;l=g+32|0;k=g;j=g+4|0;f=g+8|0;h=g+16|0;c[l>>2]=a;c[k>>2]=b;c[j>>2]=d;c[h>>2]=e;c[f>>2]=xc(c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,h)|0;i=g;return c[f>>2]|0}function zc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+32|0;g=e+24|0;h=e;f=e+8|0;c[g>>2]=a;c[h>>2]=b;if((c[45388>>2]|0)==0){i=e;return}c[f>>2]=d;Ac(c[g>>2]|0,c[h>>2]|0,f);i=e;return}function Ac(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+256|0;j=f+36|0;k=f;g=f+4|0;h=f+8|0;c[j>>2]=b;c[k>>2]=d;c[g>>2]=e;tc(h,f+40|0,210,0);a[h+24>>0]=0;uc(h,0,c[k>>2]|0,c[g>>2]|0);g=c[45388>>2]|0;e=c[45392>>2]|0;d=c[j>>2]|0;b=vc(h)|0;vb[g&63](e,d,b);i=f;return}function Bc(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+288|0;j=f+12|0;m=f;g=f+272|0;h=f+8|0;k=f+4|0;l=f+16|0;c[j>>2]=b;c[m>>2]=e;c[h>>2]=c[m>>2];if((c[j>>2]|0)<=0){a[520]=0;i=f;return}if((a[520]|0)==0){a[522>>0]=0;a[521>>0]=0;Cc(dc(0)|0,256,l)|0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=256){break}a[(c[k>>2]|0)+523>>0]=c[k>>2];c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=256){break}a[522>>0]=(d[522>>0]|0)+((d[(c[k>>2]|0)+523>>0]|0)+(a[l+(c[k>>2]|0)>>0]|0));a[g>>0]=a[(d[522>>0]|0)+523>>0]|0;a[(d[522>>0]|0)+523>>0]=a[(c[k>>2]|0)+523>>0]|0;a[(c[k>>2]|0)+523>>0]=a[g>>0]|0;c[k>>2]=(c[k>>2]|0)+1}a[520]=1}do{a[521>>0]=(a[521>>0]|0)+1<<24>>24;a[g>>0]=a[(d[521>>0]|0)+523>>0]|0;a[522>>0]=(d[522>>0]|0)+(d[g>>0]|0);a[(d[521>>0]|0)+523>>0]=a[(d[522>>0]|0)+523>>0]|0;a[(d[522>>0]|0)+523>>0]=a[g>>0]|0;a[g>>0]=(d[g>>0]|0)+(d[(d[521>>0]|0)+523>>0]|0);b=a[(d[g>>0]|0)+523>>0]|0;m=c[h>>2]|0;c[h>>2]=m+1;a[m>>0]=b;m=(c[j>>2]|0)+ -1|0;c[j>>2]=m}while((m|0)!=0);i=f;return}function Cc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=pb[c[(c[h>>2]|0)+56>>2]&31](c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Dc(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;h=e;g=e+4|0;f=e+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=c[j>>2];c[f>>2]=c[h>>2];while(1){if((d[c[g>>2]>>0]|0|0)!=0){a=(d[784+(d[c[g>>2]>>0]|0)>>0]|0|0)==(d[784+(d[c[f>>2]>>0]|0)>>0]|0|0)}else{a=0}b=c[g>>2]|0;if(!a){break}c[g>>2]=b+1;c[f>>2]=(c[f>>2]|0)+1}i=e;return(d[784+(d[b>>0]|0)>>0]|0)-(d[784+(d[c[f>>2]>>0]|0)>>0]|0)|0}function Ec(){var a=0,b=0;a=i;i=i+16|0;b=a;c[b>>2]=0;while(1){if(!((c[b>>2]|0)>>>0<4)){break}fc(1040+((c[b>>2]|0)*88|0)|0,(c[b>>2]|0)==0&1)|0;c[b>>2]=(c[b>>2]|0)+1}i=a;return 0}function Fc(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;q=i;i=i+624|0;p=q+92|0;A=q+88|0;C=q+84|0;B=q+80|0;k=q+76|0;H=q+72|0;o=q+68|0;m=q+64|0;t=q+60|0;j=q+56|0;F=q+52|0;s=q+48|0;D=q+44|0;w=q+16|0;G=q;v=q+4|0;n=q+8|0;u=q+12|0;E=q+20|0;r=q+96|0;z=q+24|0;l=q+28|0;x=q+32|0;y=q+36|0;g=q+40|0;c[A>>2]=a;c[C>>2]=b;c[B>>2]=d;c[k>>2]=e;c[H>>2]=f;c[o>>2]=c[B>>2];c[m>>2]=-1;c[t>>2]=0;c[j>>2]=c[k>>2]&-256;c[s>>2]=0;c[D>>2]=0;c[w>>2]=c[k>>2]&16;c[G>>2]=c[k>>2]&8;c[v>>2]=c[k>>2]&4;c[n>>2]=c[k>>2]&1;c[u>>2]=c[k>>2]&2;if((c[v>>2]|0)!=0){if((c[j>>2]|0)==16384|(c[j>>2]|0)==2048){f=1}else{f=(c[j>>2]|0)==524288}}else{f=0}c[E>>2]=f&1;c[z>>2]=c[C>>2];a=c[11154]|0;if((a|0)!=(Na()|0)){c[11154]=Na()|0;Bc(0,0)}e=(c[o>>2]|0)+0|0;f=e+44|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));f=c[z>>2]|0;do{if((c[j>>2]|0)==256){c[l>>2]=uK(f,c[k>>2]|0)|0;if((c[l>>2]|0)!=0){c[m>>2]=c[c[l>>2]>>2]}else{c[l>>2]=mc(12)|0;if((c[l>>2]|0)==0){c[p>>2]=7;a=c[p>>2]|0;i=q;return a|0}}c[(c[o>>2]|0)+28>>2]=c[l>>2]}else{if((f|0)==0){c[s>>2]=hK(514,r)|0;if((c[s>>2]|0)==0){c[z>>2]=r;break}c[p>>2]=c[s>>2];a=c[p>>2]|0;i=q;return a|0}}}while(0);if((c[n>>2]|0)!=0){c[t>>2]=c[t>>2]}if((c[u>>2]|0)!=0){c[t>>2]=c[t>>2]|2}if((c[v>>2]|0)!=0){c[t>>2]=c[t>>2]|64}if((c[w>>2]|0)!=0){c[t>>2]=c[t>>2]|131200}c[t>>2]=c[t>>2];do{if((c[m>>2]|0)<0){c[s>>2]=vK(c[z>>2]|0,c[k>>2]|0,x,y,g)|0;if((c[s>>2]|0)!=0){c[p>>2]=c[s>>2];a=c[p>>2]|0;i=q;return a|0}c[m>>2]=aK(c[z>>2]|0,c[t>>2]|0,c[x>>2]|0)|0;if((c[m>>2]|0)<0){if((c[(ab()|0)>>2]|0)!=21){if((c[u>>2]|0)!=0){if((c[w>>2]|0)==0){c[k>>2]=c[k>>2]&-7;c[t>>2]=c[t>>2]&-67;c[k>>2]=c[k>>2]|1;c[t>>2]=c[t>>2];c[n>>2]=1;c[m>>2]=aK(c[z>>2]|0,c[t>>2]|0,c[x>>2]|0)|0}}}}if((c[m>>2]|0)<0){a=Bq(29678)|0;c[s>>2]=XJ(a,44032,c[z>>2]|0,29678)|0;break}if((c[k>>2]&526336|0)!=0){pb[c[43932>>2]&31](c[m>>2]|0,c[y>>2]|0,c[g>>2]|0)|0;h=36}else{h=36}}else{h=36}}while(0);if((h|0)==36){if((c[H>>2]|0)!=0){c[c[H>>2]>>2]=c[k>>2]}if((c[(c[o>>2]|0)+28>>2]|0)!=0){c[c[(c[o>>2]|0)+28>>2]>>2]=c[m>>2];c[(c[(c[o>>2]|0)+28>>2]|0)+4>>2]=c[k>>2]}if((c[G>>2]|0)!=0){ub[c[43884>>2]&63](c[z>>2]|0)|0}c[F>>2]=(c[j>>2]|0)!=256&1;if((c[G>>2]|0)!=0){c[D>>2]=c[D>>2]|32}if((c[n>>2]|0)!=0){c[D>>2]=c[D>>2]|2}if((c[F>>2]|0)!=0){c[D>>2]=c[D>>2]|128}if((c[E>>2]|0)!=0){c[D>>2]=c[D>>2]|8}if((c[k>>2]&64|0)!=0){c[D>>2]=c[D>>2]|64}c[s>>2]=wK(c[A>>2]|0,c[m>>2]|0,c[B>>2]|0,c[C>>2]|0,c[D>>2]|0)|0}if((c[s>>2]|0)!=0){oc(c[(c[o>>2]|0)+28>>2]|0)}c[p>>2]=c[s>>2];a=c[p>>2]|0;i=q;return a|0}function Gc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;f=g+20|0;h=g+4|0;k=g+8|0;e=g+12|0;j=g+16|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[e>>2]=0;if((ub[c[43884>>2]&63](c[h>>2]|0)|0)==-1){if((c[(ab()|0)>>2]|0)==2){c[e>>2]=5898}else{c[e>>2]=XJ(2570,44168,c[h>>2]|0,29806)|0}c[f>>2]=c[e>>2];a=c[f>>2]|0;i=g;return a|0}do{if((c[k>>2]&1|0)!=0){c[e>>2]=zb[c[43896>>2]&127](c[h>>2]|0,j)|0;if((c[e>>2]|0)!=0){if((c[e>>2]|0)!=14){break}c[e>>2]=0;break}if(($a(c[j>>2]|0)|0)!=0){c[e>>2]=XJ(1290,44648,c[h>>2]|0,29821)|0}WJ(0,c[j>>2]|0,29823)}}while(0);c[f>>2]=c[e>>2];a=c[f>>2]|0;i=g;return a|0}function Hc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+96|0;g=k;l=k+4|0;j=k+8|0;f=k+12|0;h=k+16|0;c[k+92>>2]=a;c[g>>2]=b;c[l>>2]=d;c[j>>2]=e;c[f>>2]=0;e=c[l>>2]|0;if((e|0)==1){c[f>>2]=6}else if((e|0)==2){c[f>>2]=4}else if((e|0)==0){c[f>>2]=0}a=(zb[c[43716>>2]&127](c[g>>2]|0,c[f>>2]|0)|0)==0&1;c[c[j>>2]>>2]=a;if((c[l>>2]|0)!=0){i=k;return 0}if((c[c[j>>2]>>2]|0)==0){i=k;return 0}if(0!=(zb[c[43740>>2]&127](c[g>>2]|0,h)|0)){i=k;return 0}if((c[h+36>>2]|0)!=0){i=k;return 0}c[c[j>>2]>>2]=0;i=k;return 0}function Ic(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h;l=h+24|0;k=h+8|0;m=h+12|0;g=h+16|0;n=h+20|0;c[h+4>>2]=b;c[k>>2]=d;c[m>>2]=e;c[g>>2]=f;a[(c[g>>2]|0)+((c[m>>2]|0)-1)>>0]=0;do{if((a[c[k>>2]>>0]|0)==47){d=c[m>>2]|0;b=c[g>>2]|0;c[j>>2]=c[k>>2];yc(d,b,1768,j)|0}else{if((zb[c[43728>>2]&127](c[g>>2]|0,(c[m>>2]|0)-1|0)|0)!=0){c[n>>2]=cL(c[g>>2]|0)|0;d=(c[m>>2]|0)-(c[n>>2]|0)|0;b=(c[g>>2]|0)+(c[n>>2]|0)|0;c[j>>2]=c[k>>2];yc(d,b,44640,j)|0;break}b=Bq(29908)|0;c[l>>2]=XJ(b,44040,c[k>>2]|0,29908)|0;b=c[l>>2]|0;i=h;return b|0}}while(0);c[l>>2]=0;b=c[l>>2]|0;i=h;return b|0}function Jc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f;h=f+4|0;k=f+8|0;l=f+12|0;j=f+16|0;c[f+20>>2]=b;c[g>>2]=d;c[h>>2]=e;aL(c[h>>2]|0,0,c[g>>2]|0)|0;c[11154]=Na()|0;c[k>>2]=aK(44624,0,0)|0;if((c[k>>2]|0)<0){hb(j|0)|0;b=c[h>>2]|0;a[b+0>>0]=a[j+0>>0]|0;a[b+1>>0]=a[j+1>>0]|0;a[b+2>>0]=a[j+2>>0]|0;a[b+3>>0]=a[j+3>>0]|0;b=(c[h>>2]|0)+4|0;a[b+0>>0]=a[44616>>0]|0;a[b+1>>0]=a[44617>>0]|0;a[b+2>>0]=a[44618>>0]|0;a[b+3>>0]=a[44619>>0]|0;c[g>>2]=8;b=c[g>>2]|0;i=f;return b|0}do{c[l>>2]=pb[c[43788>>2]&31](c[k>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;if((c[l>>2]|0)>=0){break}}while((c[(ab()|0)>>2]|0)==4);WJ(0,c[k>>2]|0,30013);b=c[g>>2]|0;i=f;return b|0}function Kc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;f=e;d=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[d>>2]=((c[f>>2]|0)+999999|0)/1e6|0;ta(c[d>>2]|0)|0;i=e;return(c[d>>2]|0)*1e6|0}function Lc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+32|0;f=e+8|0;g=e;d=e+12|0;c[e+16>>2]=a;c[f>>2]=b;a=g;c[a>>2]=0;c[a+4>>2]=0;c[d>>2]=Nc(0,g)|0;a=g;h[c[f>>2]>>3]=(+((c[a>>2]|0)>>>0)+4294967296.0*+(c[a+4>>2]|0))/864.0e5;i=e;return c[d>>2]|0}function Mc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;i=i+16|0;c[e+8>>2]=a;c[e>>2]=b;c[e+4>>2]=d;i=e;return 0}function Nc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;f=d;e=d+4|0;g=d+8|0;c[d+16>>2]=a;c[f>>2]=b;c[e>>2]=0;if((Wa(g|0,0)|0)==0){a=c[g>>2]|0;a=nL(1e3,0,a|0,((a|0)<0)<<31>>31|0)|0;a=dL(1045635584,49096,a|0,D|0)|0;g=(c[g+4>>2]|0)/1e3|0;g=dL(a|0,D|0,g|0,((g|0)<0)<<31>>31|0)|0;a=c[f>>2]|0;c[a>>2]=g;c[a+4>>2]=D;a=c[e>>2]|0;i=d;return a|0}else{c[e>>2]=1;a=c[e>>2]|0;i=d;return a|0}return 0}function Oc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;k=g;j=g+4|0;h=g+8|0;f=g+12|0;c[g+16>>2]=a;c[k>>2]=b;c[j>>2]=d;c[f>>2]=12;if((c[k>>2]|0)==0){c[f>>2]=0;c[h>>2]=0;while(1){if(!((c[h>>2]|0)>>>0<25)){break}if((c[43696+((c[h>>2]|0)*12|0)>>2]|0)!=0){c[43692+((c[h>>2]|0)*12|0)>>2]=c[43696+((c[h>>2]|0)*12|0)>>2]}c[h>>2]=(c[h>>2]|0)+1}a=c[f>>2]|0;i=g;return a|0}c[h>>2]=0;while(1){if(!((c[h>>2]|0)>>>0<25)){e=16;break}a=(YK(c[k>>2]|0,c[43688+((c[h>>2]|0)*12|0)>>2]|0)|0)==0;d=c[h>>2]|0;if(a){break}c[h>>2]=d+1}if((e|0)==16){a=c[f>>2]|0;i=g;return a|0}if((c[43696+(d*12|0)>>2]|0)==0){c[43696+((c[h>>2]|0)*12|0)>>2]=c[43692+((c[h>>2]|0)*12|0)>>2]}c[f>>2]=0;if((c[j>>2]|0)==0){c[j>>2]=c[43696+((c[h>>2]|0)*12|0)>>2]}c[43692+((c[h>>2]|0)*12|0)>>2]=c[j>>2];a=c[f>>2]|0;i=g;return a|0}function Pc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+12|0;f=e+4|0;g=e+8|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;while(1){if(!((c[g>>2]|0)>>>0<25)){f=6;break}a=(YK(c[f>>2]|0,c[43688+((c[g>>2]|0)*12|0)>>2]|0)|0)==0;b=c[g>>2]|0;if(a){f=4;break}c[g>>2]=b+1}if((f|0)==4){c[d>>2]=c[43692+(b*12|0)>>2];a=c[d>>2]|0;i=e;return a|0}else if((f|0)==6){c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}return 0}function Qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+12|0;g=e+4|0;f=e+8|0;c[e>>2]=a;c[g>>2]=b;c[f>>2]=-1;a:do{if((c[g>>2]|0)!=0){c[f>>2]=0;while(1){if((c[f>>2]|0)>=24){break a}if((YK(c[g>>2]|0,c[43688+((c[f>>2]|0)*12|0)>>2]|0)|0)==0){break a}c[f>>2]=(c[f>>2]|0)+1}}}while(0);c[f>>2]=(c[f>>2]|0)+1;while(1){if((c[f>>2]|0)>=25){f=11;break}b=c[f>>2]|0;if((c[43692+((c[f>>2]|0)*12|0)>>2]|0)!=0){f=9;break}c[f>>2]=b+1}if((f|0)==9){c[d>>2]=c[43688+(b*12|0)>>2];a=c[d>>2]|0;i=e;return a|0}else if((f|0)==11){c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}return 0}function Rc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+48|0;f=k+32|0;l=k;h=k+4|0;j=k+8|0;g=k+16|0;c[f>>2]=a;c[l>>2]=b;c[h>>2]=d;c[(c[f>>2]|0)+52>>2]=c[l>>2];do{if((c[h>>2]|0)!=0){if((c[(c[f>>2]|0)+224>>2]|0)==0){l=Pf(c[f>>2]|0)|0;c[(c[f>>2]|0)+224>>2]=l;if((l|0)==0){break}}c[g>>2]=e;c[j>>2]=iu(c[f>>2]|0,c[h>>2]|0,g)|0;Qf(c[(c[f>>2]|0)+224>>2]|0,-1,c[j>>2]|0,1,39);i=k;return}}while(0);if((c[(c[f>>2]|0)+224>>2]|0)==0){i=k;return}yJ(c[(c[f>>2]|0)+224>>2]|0);i=k;return}function Sc(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=nc(c[e>>2]|0)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}aL(c[d>>2]|0,0,c[e>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}function Tc(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=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,E=0,F=0,G=0;n=i;i=i+112|0;h=n+108|0;A=n+104|0;m=n+100|0;B=n+96|0;g=n+92|0;u=n+88|0;o=n+84|0;l=n+80|0;z=n+76|0;E=n+72|0;j=n+68|0;x=n+64|0;y=n+60|0;F=n+40|0;C=n+28|0;k=n+8|0;e=n+24|0;t=n+36|0;G=n+32|0;q=n+16|0;p=n;v=n+44|0;r=n+48|0;s=n+52|0;f=n+56|0;c[h>>2]=a;c[A>>2]=b;c[g>>2]=0;c[u>>2]=0;Uc(c[(c[h>>2]|0)+24>>2]|0);c[m>>2]=c[(c[h>>2]|0)+28>>2];if((Vc(c[m>>2]|0)|0)!=0){a=c[m>>2]|0;i=n;return a|0}c[o>>2]=Zb(c[(c[h>>2]|0)+24>>2]|0)|0;c[l>>2]=Zb(c[(c[h>>2]|0)+4>>2]|0)|0;c[E>>2]=-1;c[j>>2]=0;if((c[c[h>>2]>>2]|0)!=0){if((d[(c[(c[(c[h>>2]|0)+24>>2]|0)+4>>2]|0)+20>>0]|0|0)==2){c[m>>2]=5}else{w=5}}else{w=5}if((w|0)==5){c[m>>2]=0}if(0==(c[m>>2]|0)){if((c[(c[h>>2]|0)+12>>2]|0)==0){a=Wc(c[(c[h>>2]|0)+4>>2]|0,2)|0;c[m>>2]=a;if(0==(a|0)){c[(c[h>>2]|0)+12>>2]=1;Xc(c[(c[h>>2]|0)+4>>2]|0,1,(c[h>>2]|0)+8|0)}}}if((c[m>>2]|0)==0){if(0==(Yc(c[(c[h>>2]|0)+24>>2]|0)|0)){c[m>>2]=Wc(c[(c[h>>2]|0)+24>>2]|0,0)|0;c[j>>2]=1}}c[g>>2]=Zc(c[(c[h>>2]|0)+24>>2]|0)|0;c[u>>2]=Zc(c[(c[h>>2]|0)+4>>2]|0)|0;c[B>>2]=_c(Zb(c[(c[h>>2]|0)+4>>2]|0)|0)|0;if(0==(c[m>>2]|0)){if((c[B>>2]|0)==5){if((c[g>>2]|0)!=(c[u>>2]|0)){c[m>>2]=8}}}c[E>>2]=$c(c[(c[h>>2]|0)+24>>2]|0)|0;c[z>>2]=0;while(1){if((c[A>>2]|0)>=0){if((c[z>>2]|0)>=(c[A>>2]|0)){break}}if(!((c[(c[h>>2]|0)+16>>2]|0)>>>0<=(c[E>>2]|0)>>>0)){break}if(!((c[m>>2]|0)!=0^1)){break}c[x>>2]=c[(c[h>>2]|0)+16>>2];if((c[x>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[(c[(c[h>>2]|0)+24>>2]|0)+4>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){c[m>>2]=ad(c[o>>2]|0,c[x>>2]|0,y,2)|0;if((c[m>>2]|0)==0){b=c[h>>2]|0;a=c[x>>2]|0;c[m>>2]=bd(b,a,cd(c[y>>2]|0)|0,0)|0;dd(c[y>>2]|0)}}a=(c[h>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+1;c[z>>2]=(c[z>>2]|0)+1}do{if((c[m>>2]|0)==0){c[(c[h>>2]|0)+36>>2]=c[E>>2];c[(c[h>>2]|0)+32>>2]=(c[E>>2]|0)+1-(c[(c[h>>2]|0)+16>>2]|0);if((c[(c[h>>2]|0)+16>>2]|0)>>>0>(c[E>>2]|0)>>>0){c[m>>2]=101;break}if((c[(c[h>>2]|0)+40>>2]|0)==0){ed(c[h>>2]|0)}}}while(0);if((c[m>>2]|0)==101){if((c[E>>2]|0)==0){c[m>>2]=fd(c[(c[h>>2]|0)+4>>2]|0)|0;c[E>>2]=1}if((c[m>>2]|0)==0|(c[m>>2]|0)==101){c[m>>2]=gd(c[(c[h>>2]|0)+4>>2]|0,1,(c[(c[h>>2]|0)+8>>2]|0)+1|0)|0}if((c[m>>2]|0)==0){if((c[c[h>>2]>>2]|0)!=0){hd(c[c[h>>2]>>2]|0)}if((c[B>>2]|0)==5){c[m>>2]=id(c[(c[h>>2]|0)+4>>2]|0,2)|0}}if((c[m>>2]|0)==0){if((c[g>>2]|0)<(c[u>>2]|0)){c[C>>2]=(c[u>>2]|0)/(c[g>>2]|0)|0;c[F>>2]=((c[E>>2]|0)+(c[C>>2]|0)-1|0)/(c[C>>2]|0)|0;if((c[F>>2]|0)==((((c[368]|0)>>>0)/((c[(c[(c[(c[h>>2]|0)+4>>2]|0)+4>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){c[F>>2]=(c[F>>2]|0)+ -1}}else{c[F>>2]=$(c[E>>2]|0,(c[g>>2]|0)/(c[u>>2]|0)|0)|0}if((c[g>>2]|0)<(c[u>>2]|0)){a=c[g>>2]|0;b=c[E>>2]|0;b=nL(a|0,((a|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0;a=k;c[a>>2]=b;c[a+4>>2]=D;c[e>>2]=jd(c[l>>2]|0)|0;kd(c[l>>2]|0,G);c[t>>2]=c[F>>2];while(1){if((c[m>>2]|0)!=0){break}if(!((c[t>>2]|0)>>>0<=(c[G>>2]|0)>>>0)){break}do{if((c[t>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[(c[(c[h>>2]|0)+4>>2]|0)+4>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){c[m>>2]=ad(c[l>>2]|0,c[t>>2]|0,v,0)|0;if((c[m>>2]|0)!=0){break}c[m>>2]=ld(c[v>>2]|0)|0;dd(c[v>>2]|0)}}while(0);c[t>>2]=(c[t>>2]|0)+1}if((c[m>>2]|0)==0){c[m>>2]=md(c[l>>2]|0,0,1)|0}b=(c[368]|0)+(c[u>>2]|0)|0;F=((b|0)<0)<<31>>31;a=k;G=c[a+4>>2]|0;if((F|0)<(G|0)|((F|0)==(G|0)?b>>>0<(c[a>>2]|0)>>>0:0)){t=(c[368]|0)+(c[u>>2]|0)|0;u=t;t=((t|0)<0)<<31>>31}else{t=k;u=c[t>>2]|0;t=c[t+4>>2]|0}b=p;c[b>>2]=u;c[b+4>>2]=t;b=(c[368]|0)+(c[g>>2]|0)|0;a=q;c[a>>2]=b;c[a+4>>2]=((b|0)<0)<<31>>31;while(1){if((c[m>>2]|0)!=0){break}b=q;F=c[b+4>>2]|0;a=p;G=c[a+4>>2]|0;if(!((F|0)<(G|0)|((F|0)==(G|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0))){break}c[r>>2]=0;b=q;a=c[g>>2]|0;a=lL(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;a=dL(a|0,D|0,1,0)|0;c[s>>2]=a;c[m>>2]=ad(c[o>>2]|0,c[s>>2]|0,r,0)|0;if((c[m>>2]|0)==0){c[f>>2]=cd(c[r>>2]|0)|0;a=q;c[m>>2]=nd(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0}dd(c[r>>2]|0);b=c[g>>2]|0;a=q;b=dL(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=q;c[a>>2]=b;c[a+4>>2]=D}if((c[m>>2]|0)==0){a=k;c[m>>2]=od(c[e>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0}if((c[m>>2]|0)==0){c[m>>2]=pd(c[l>>2]|0,0)|0}}else{qd(c[l>>2]|0,c[F>>2]|0);c[m>>2]=md(c[l>>2]|0,0,0)|0}if(0==(c[m>>2]|0)){a=rd(c[(c[h>>2]|0)+4>>2]|0,0)|0;c[m>>2]=a;c[m>>2]=0==(a|0)?101:a}}}if((c[j>>2]|0)!=0){sd(c[(c[h>>2]|0)+24>>2]|0,0)|0;rd(c[(c[h>>2]|0)+24>>2]|0,0)|0}if((c[m>>2]|0)==3082){c[m>>2]=7}c[(c[h>>2]|0)+28>>2]=c[m>>2];a=c[m>>2]|0;i=n;return a|0}function Uc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[(c[(c[d>>2]|0)+4>>2]|0)+4>>2]=c[c[d>>2]>>2];i=b;return}function Vc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!((c[d>>2]|0)!=0&(c[d>>2]|0)!=5)){d=0;d=d&1;i=b;return d|0}d=(c[d>>2]|0)!=6;d=d&1;i=b;return d|0}function Wc(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;l=j+24|0;m=j;o=j+4|0;k=j+8|0;n=j+12|0;p=j+16|0;h=j+20|0;c[l>>2]=f;c[m>>2]=g;c[o>>2]=0;c[k>>2]=c[(c[l>>2]|0)+4>>2];c[n>>2]=0;Uc(c[l>>2]|0);do{if((d[(c[l>>2]|0)+8>>0]|0)!=2){if((d[(c[l>>2]|0)+8>>0]|0)==1){if((c[m>>2]|0)==0){break}}if((b[(c[k>>2]|0)+22>>1]&1|0)!=0){if((c[m>>2]|0)!=0){c[n>>2]=8;break}}if((c[m>>2]|0)!=0){if((d[(c[k>>2]|0)+20>>0]|0)==2){g=10}else{g=9}}else{g=9}a:do{if((g|0)==9){if((b[(c[k>>2]|0)+22>>1]&64|0)!=0){g=10}else{if((c[m>>2]|0)>1){c[p>>2]=c[(c[k>>2]|0)+72>>2];while(1){if((c[p>>2]|0)==0){break a}f=c[p>>2]|0;if((c[c[p>>2]>>2]|0)!=(c[l>>2]|0)){break}c[p>>2]=c[f+12>>2]}c[o>>2]=c[c[f>>2]>>2]}}}}while(0);if((g|0)==10){c[o>>2]=c[c[(c[k>>2]|0)+76>>2]>>2]}if((c[o>>2]|0)!=0){c[n>>2]=262;break}c[n>>2]=bF(c[l>>2]|0,1,1)|0;if(0==(c[n>>2]|0)){f=(c[k>>2]|0)+22|0;b[f>>1]=e[f>>1]&-9;if((c[(c[k>>2]|0)+44>>2]|0)==0){f=(c[k>>2]|0)+22|0;b[f>>1]=e[f>>1]|8}while(1){if((c[(c[k>>2]|0)+12>>2]|0)==0){f=vJ(c[k>>2]|0)|0;c[n>>2]=f;if(0==(f|0)){continue}}do{if((c[n>>2]|0)==0){if((c[m>>2]|0)!=0){if((b[(c[k>>2]|0)+22>>1]&1|0)!=0){c[n>>2]=8;break}g=c[c[k>>2]>>2]|0;f=(c[m>>2]|0)>1&1;c[n>>2]=wJ(g,f,po(c[c[l>>2]>>2]|0)|0)|0;if((c[n>>2]|0)==0){c[n>>2]=SI(c[k>>2]|0)|0}}}}while(0);if((c[n>>2]|0)!=0){Hr(c[k>>2]|0)}if((c[n>>2]&255|0)!=5){break}if((d[(c[k>>2]|0)+20>>0]|0)!=0){break}if((xo(c[k>>2]|0)|0)==0){break}}if((c[n>>2]|0)==0){if((d[(c[l>>2]|0)+8>>0]|0)==0){f=(c[k>>2]|0)+40|0;c[f>>2]=(c[f>>2]|0)+1;if((a[(c[l>>2]|0)+9>>0]|0)!=0){a[(c[l>>2]|0)+36>>0]=1;c[(c[l>>2]|0)+40>>2]=c[(c[k>>2]|0)+72>>2];c[(c[k>>2]|0)+72>>2]=(c[l>>2]|0)+28}}a[(c[l>>2]|0)+8>>0]=(c[m>>2]|0)!=0?2:1;if((d[(c[l>>2]|0)+8>>0]|0)>(d[(c[k>>2]|0)+20>>0]|0)){a[(c[k>>2]|0)+20>>0]=a[(c[l>>2]|0)+8>>0]|0}if((c[m>>2]|0)!=0){c[h>>2]=c[(c[k>>2]|0)+12>>2];c[(c[k>>2]|0)+76>>2]=c[l>>2];f=(c[k>>2]|0)+22|0;b[f>>1]=e[f>>1]&-33;if((c[m>>2]|0)>1){f=(c[k>>2]|0)+22|0;b[f>>1]=e[f>>1]|32}f=c[(c[k>>2]|0)+44>>2]|0;if((f|0)!=(zo((c[(c[h>>2]|0)+56>>2]|0)+28|0)|0)){c[n>>2]=ld(c[(c[h>>2]|0)+68>>2]|0)|0;if((c[n>>2]|0)==0){Xq((c[(c[h>>2]|0)+56>>2]|0)+28|0,c[(c[k>>2]|0)+44>>2]|0)}}}}}}}while(0);if((c[n>>2]|0)!=0){f=c[n>>2]|0;i=j;return f|0}if((c[m>>2]|0)==0){f=c[n>>2]|0;i=j;return f|0}c[n>>2]=QI(c[c[k>>2]>>2]|0,c[(c[c[l>>2]>>2]|0)+488>>2]|0)|0;f=c[n>>2]|0;i=j;return f|0}function Xc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;g=e;f=e+4|0;h=e+8|0;c[j>>2]=a;c[g>>2]=b;c[f>>2]=d;c[h>>2]=c[(c[j>>2]|0)+4>>2];Uc(c[j>>2]|0);a=zo((c[(c[(c[h>>2]|0)+12>>2]|0)+56>>2]|0)+(36+(c[g>>2]<<2))|0)|0;c[c[f>>2]>>2]=a;i=e;return}function Yc(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return(d[(c[b>>2]|0)+8>>0]|0|0)!=0|0}function Zc(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[(c[b>>2]|0)+4>>2]|0)+32>>2]|0}function _c(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+5>>0]|0|0}function $c(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=dD(c[(c[d>>2]|0)+4>>2]|0)|0;i=b;return a|0}function ad(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=i;i=i+48|0;j=p+40|0;k=p+36|0;r=p+32|0;l=p+28|0;t=p+24|0;m=p+20|0;n=p+12|0;g=p+8|0;q=p+4|0;o=p;s=p+16|0;c[k>>2]=a;c[r>>2]=b;c[l>>2]=e;c[t>>2]=f;c[m>>2]=0;c[n>>2]=0;c[g>>2]=0;c[q>>2]=c[t>>2]&1;c[o>>2]=0;if((c[r>>2]|0)==0){c[j>>2]=dq(45156)|0;t=c[j>>2]|0;i=p;return t|0}do{if((c[(c[k>>2]|0)+40>>2]|0)!=0){c[m>>2]=c[(c[k>>2]|0)+40>>2];h=21}else{if((c[o>>2]|0)!=0){if((Uo(c[k>>2]|0)|0)!=0){c[m>>2]=Xp(c[(c[k>>2]|0)+208>>2]|0,c[r>>2]|0,g)|0;if((c[m>>2]|0)!=0){break}}}if((c[o>>2]|0)!=0){if((c[g>>2]|0)==0){c[s>>2]=0;a=c[(c[k>>2]|0)+60>>2]|0;t=c[(c[k>>2]|0)+152>>2]|0;t=nL((c[r>>2]|0)-1|0,0,t|0,((t|0)<0)<<31>>31|0)|0;c[m>>2]=tJ(a,t,D,c[(c[k>>2]|0)+152>>2]|0,s)|0;if((c[m>>2]|0)==0){if((c[s>>2]|0)!=0){if((d[(c[k>>2]|0)+16>>0]|0|0)>1){Fp(c[(c[k>>2]|0)+204>>2]|0,c[r>>2]|0,0,n)|0}f=c[k>>2]|0;if((c[n>>2]|0)==0){c[m>>2]=uJ(f,c[r>>2]|0,c[s>>2]|0,n)|0}else{a=c[f+60>>2]|0;t=c[(c[k>>2]|0)+152>>2]|0;t=nL((c[r>>2]|0)-1|0,0,t|0,((t|0)<0)<<31>>31|0)|0;aq(a,t,D,c[s>>2]|0)|0}if((c[n>>2]|0)!=0){c[c[l>>2]>>2]=c[n>>2];c[j>>2]=0;t=c[j>>2]|0;i=p;return t|0}}}if((c[m>>2]|0)!=0){break}}}c[m>>2]=Fp(c[(c[k>>2]|0)+204>>2]|0,c[r>>2]|0,1,c[l>>2]|0)|0;h=21}}while(0);do{if((h|0)==21){if((c[m>>2]|0)!=0){c[n>>2]=0;break}if((c[(c[c[l>>2]>>2]|0)+16>>2]|0)!=0){if((c[q>>2]|0)==0){t=(c[k>>2]|0)+184|0;c[t>>2]=(c[t>>2]|0)+1;c[j>>2]=0;t=c[j>>2]|0;i=p;return t|0}}c[n>>2]=c[c[l>>2]>>2];c[(c[n>>2]|0)+16>>2]=c[k>>2];if(!((c[r>>2]|0)>>>0>2147483647)){if((c[r>>2]|0)!=(((c[368]|0)/(c[(c[k>>2]|0)+152>>2]|0)|0)+1|0)){if((d[(c[k>>2]|0)+15>>0]|0|0)!=0){h=33}else{if((c[(c[k>>2]|0)+24>>2]|0)>>>0<(c[r>>2]|0)>>>0){h=33}else{if((c[q>>2]|0)!=0){h=33}else{if((c[c[(c[k>>2]|0)+60>>2]>>2]|0)!=0){if((Uo(c[k>>2]|0)|0)!=0){if((c[o>>2]|0)==0){c[m>>2]=Xp(c[(c[k>>2]|0)+208>>2]|0,c[r>>2]|0,g)|0;if((c[m>>2]|0)!=0){break}}}t=(c[k>>2]|0)+188|0;c[t>>2]=(c[t>>2]|0)+1;c[m>>2]=Yp(c[n>>2]|0,c[g>>2]|0)|0;if((c[m>>2]|0)!=0){break}}else{h=33}}}}if((h|0)==33){if((c[r>>2]|0)>>>0>(c[(c[k>>2]|0)+156>>2]|0)>>>0){c[m>>2]=13;break}if((c[q>>2]|0)!=0){Ih();if((c[r>>2]|0)>>>0<=(c[(c[k>>2]|0)+28>>2]|0)>>>0){sh(c[(c[k>>2]|0)+56>>2]|0,c[r>>2]|0)|0}jr(c[k>>2]|0,c[r>>2]|0)|0;Jh()}aL(c[(c[n>>2]|0)+4>>2]|0,0,c[(c[k>>2]|0)+152>>2]|0)|0}c[j>>2]=0;t=c[j>>2]|0;i=p;return t|0}}c[m>>2]=dq(45227)|0}}while(0);if((c[n>>2]|0)!=0){Wp(c[n>>2]|0)}$p(c[k>>2]|0);c[c[l>>2]>>2]=0;c[j>>2]=c[m>>2];t=c[j>>2]|0;i=p;return t|0}function bd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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=i;i=i+80|0;v=h+68|0;x=h+64|0;n=h+60|0;k=h+56|0;t=h+52|0;m=h+48|0;j=h+44|0;s=h+40|0;w=h+8|0;g=h+28|0;l=h;p=h+20|0;u=h+16|0;o=h+24|0;q=h+32|0;r=h+36|0;c[v>>2]=b;c[x>>2]=d;c[n>>2]=e;c[k>>2]=f;c[t>>2]=Zb(c[(c[v>>2]|0)+4>>2]|0)|0;c[m>>2]=Zc(c[(c[v>>2]|0)+24>>2]|0)|0;c[j>>2]=Zc(c[(c[v>>2]|0)+4>>2]|0)|0;c[s>>2]=(c[m>>2]|0)<(c[j>>2]|0)?c[m>>2]|0:c[j>>2]|0;d=c[m>>2]|0;d=nL(c[x>>2]|0,0,d|0,((d|0)<0)<<31>>31|0)|0;b=w;c[b>>2]=d;c[b+4>>2]=D;c[g>>2]=0;if((c[m>>2]|0)!=(c[j>>2]|0)){if((gH(c[t>>2]|0)|0)!=0){c[g>>2]=8}}x=w;b=c[m>>2]|0;b=$K(c[x>>2]|0,c[x+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;x=l;c[x>>2]=b;c[x+4>>2]=D;while(1){if((c[g>>2]|0)!=0){j=15;break}b=l;e=c[b+4>>2]|0;x=w;d=c[x+4>>2]|0;if(!((e|0)<(d|0)|((e|0)==(d|0)?(c[b>>2]|0)>>>0<(c[x>>2]|0)>>>0:0))){j=15;break}c[p>>2]=0;b=l;x=c[j>>2]|0;x=lL(c[b>>2]|0,c[b+4>>2]|0,x|0,((x|0)<0)<<31>>31|0)|0;c[u>>2]=x+1;if((c[u>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[(c[(c[v>>2]|0)+4>>2]|0)+4>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){x=ad(c[t>>2]|0,c[u>>2]|0,p,0)|0;c[g>>2]=x;if(0==(x|0)){x=ld(c[p>>2]|0)|0;c[g>>2]=x;if(0==(x|0)){x=l;b=c[m>>2]|0;b=mL(c[x>>2]|0,c[x+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[o>>2]=(c[n>>2]|0)+b;c[q>>2]=cd(c[p>>2]|0)|0;b=l;x=c[j>>2]|0;x=mL(c[b>>2]|0,c[b+4>>2]|0,x|0,((x|0)<0)<<31>>31|0)|0;c[r>>2]=(c[q>>2]|0)+x;fL(c[r>>2]|0,c[o>>2]|0,c[s>>2]|0)|0;a[(Jq(c[p>>2]|0)|0)>>0]=0;x=l;if((c[x>>2]|0)==0&(c[x+4>>2]|0)==0){if((c[k>>2]|0)==0){x=(c[r>>2]|0)+28|0;Xq(x,$c(c[(c[v>>2]|0)+24>>2]|0)|0)}}}}dd(c[p>>2]|0)}b=c[j>>2]|0;x=l;b=dL(c[x>>2]|0,c[x+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;x=l;c[x>>2]=b;c[x+4>>2]=D}if((j|0)==15){i=h;return c[g>>2]|0}return 0}function cd(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+4>>2]|0}function dd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}Zp(c[d>>2]|0);i=b;return}function ed(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=ud(Zb(c[(c[d>>2]|0)+24>>2]|0)|0)|0;c[(c[d>>2]|0)+44>>2]=c[c[e>>2]>>2];c[c[e>>2]>>2]=c[d>>2];c[(c[d>>2]|0)+40>>2]=1;i=b;return}function fd(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;Uc(c[e>>2]|0);c[(c[(c[e>>2]|0)+4>>2]|0)+44>>2]=0;c[b>>2]=SI(c[(c[e>>2]|0)+4>>2]|0)|0;i=d;return c[b>>2]|0}function gd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;m=f+20|0;l=f;h=f+4|0;j=f+8|0;k=f+12|0;g=f+16|0;c[m>>2]=b;c[l>>2]=d;c[h>>2]=e;c[j>>2]=c[(c[m>>2]|0)+4>>2];Uc(c[m>>2]|0);c[k>>2]=c[(c[(c[j>>2]|0)+12>>2]|0)+56>>2];c[g>>2]=ld(c[(c[(c[j>>2]|0)+12>>2]|0)+68>>2]|0)|0;if((c[g>>2]|0)!=0){m=c[g>>2]|0;i=f;return m|0}Xq((c[k>>2]|0)+(36+(c[l>>2]<<2))|0,c[h>>2]|0);if((c[l>>2]|0)!=7){m=c[g>>2]|0;i=f;return m|0}a[(c[j>>2]|0)+18>>0]=c[h>>2];m=c[g>>2]|0;i=f;return m|0}function hd(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;b=d+8|0;e=d;f=d+4|0;c[b>>2]=a;Yb(c[b>>2]|0);c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[b>>2]|0)+20>>2]|0)){break}c[f>>2]=(c[(c[b>>2]|0)+16>>2]|0)+(c[e>>2]<<4);if((c[(c[f>>2]|0)+12>>2]|0)!=0){oo(c[(c[f>>2]|0)+12>>2]|0)}c[e>>2]=(c[e>>2]|0)+1}f=(c[b>>2]|0)+24|0;c[f>>2]=c[f>>2]&-3;Ar(c[b>>2]|0);Br(c[b>>2]|0);i=d;return}function id(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;k=n+16|0;j=n;m=n+4|0;l=n+8|0;h=n+12|0;c[k>>2]=f;c[j>>2]=g;c[m>>2]=c[(c[k>>2]|0)+4>>2];f=(c[m>>2]|0)+22|0;b[f>>1]=(e[f>>1]|0)&-17;if((c[j>>2]|0)==1){f=(c[m>>2]|0)+22|0;b[f>>1]=e[f>>1]|0|16}c[l>>2]=Wc(c[k>>2]|0,0)|0;do{if((c[l>>2]|0)==0){c[h>>2]=c[(c[(c[m>>2]|0)+12>>2]|0)+56>>2];if((d[(c[h>>2]|0)+18>>0]|0|0)==(c[j>>2]&255|0)){if((d[(c[h>>2]|0)+19>>0]|0|0)==(c[j>>2]&255|0)){break}}c[l>>2]=Wc(c[k>>2]|0,2)|0;if((c[l>>2]|0)==0){c[l>>2]=ld(c[(c[(c[m>>2]|0)+12>>2]|0)+68>>2]|0)|0;if((c[l>>2]|0)==0){a[(c[h>>2]|0)+18>>0]=c[j>>2];a[(c[h>>2]|0)+19>>0]=c[j>>2]}}}}while(0);f=(c[m>>2]|0)+22|0;b[f>>1]=(e[f>>1]|0)&-17;i=n;return c[l>>2]|0}function jd(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+60>>2]|0}function kd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;c[c[e>>2]>>2]=c[(c[f>>2]|0)+24>>2];i=d;return}function ld(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;p=i;i=i+64|0;k=p+48|0;j=p+44|0;t=p+40|0;l=p+36|0;u=p+32|0;m=p+28|0;g=p+24|0;n=p+16|0;q=p+12|0;v=p+8|0;s=p+4|0;r=p;o=p+20|0;c[k>>2]=f;c[j>>2]=0;c[t>>2]=c[k>>2];c[l>>2]=c[(c[t>>2]|0)+16>>2];if(!((c[(c[l>>2]|0)+148>>2]|0)>>>0>(c[(c[l>>2]|0)+152>>2]|0)>>>0)){c[j>>2]=pJ(c[k>>2]|0)|0;f=c[j>>2]|0;i=p;return f|0}c[g>>2]=0;c[q>>2]=0;c[v>>2]=((c[(c[l>>2]|0)+148>>2]|0)>>>0)/((c[(c[l>>2]|0)+152>>2]|0)>>>0)|0;f=(c[l>>2]|0)+20|0;a[f>>0]=d[f>>0]|0|4;c[m>>2]=((c[(c[t>>2]|0)+20>>2]|0)-1&~((c[v>>2]|0)-1))+1;c[u>>2]=c[(c[l>>2]|0)+24>>2];do{if((c[(c[t>>2]|0)+20>>2]|0)>>>0>(c[u>>2]|0)>>>0){c[g>>2]=(c[(c[t>>2]|0)+20>>2]|0)-(c[m>>2]|0)+1}else{if(((c[m>>2]|0)+(c[v>>2]|0)-1|0)>>>0>(c[u>>2]|0)>>>0){c[g>>2]=(c[u>>2]|0)+1-(c[m>>2]|0);break}else{c[g>>2]=c[v>>2];break}}}while(0);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[g>>2]|0)){break}if((c[j>>2]|0)!=0){break}c[s>>2]=(c[m>>2]|0)+(c[n>>2]|0);if((c[s>>2]|0)==(c[(c[t>>2]|0)+20>>2]|0)){h=12}else{if((uh(c[(c[l>>2]|0)+56>>2]|0,c[s>>2]|0)|0)!=0){f=Ap(c[l>>2]|0,c[s>>2]|0)|0;c[r>>2]=f;if((f|0)!=0){if((b[(c[r>>2]|0)+24>>1]&4|0)!=0){c[q>>2]=1}Zp(c[r>>2]|0)}}else{h=12}}if((h|0)==12){h=0;if((c[s>>2]|0)!=(((c[368]|0)/(c[(c[l>>2]|0)+152>>2]|0)|0)+1|0)){c[j>>2]=ad(c[l>>2]|0,c[s>>2]|0,r,0)|0;if((c[j>>2]|0)==0){c[j>>2]=pJ(c[r>>2]|0)|0;if((b[(c[r>>2]|0)+24>>1]&4|0)!=0){c[q>>2]=1}Zp(c[r>>2]|0)}}}c[n>>2]=(c[n>>2]|0)+1}a:do{if((c[j>>2]|0)==0){if((c[q>>2]|0)!=0){c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[g>>2]|0)){break a}c[o>>2]=Ap(c[l>>2]|0,(c[m>>2]|0)+(c[n>>2]|0)|0)|0;if((c[o>>2]|0)!=0){f=(c[o>>2]|0)+24|0;b[f>>1]=e[f>>1]|0|4;Zp(c[o>>2]|0)}c[n>>2]=(c[n>>2]|0)+1}}}}while(0);f=(c[l>>2]|0)+20|0;a[f>>0]=(d[f>>0]|0)&-5;f=c[j>>2]|0;i=p;return f|0}function md(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+32|0;h=n+28|0;l=n;p=n+4|0;o=n+8|0;j=n+12|0;m=n+16|0;k=n+20|0;g=n+24|0;c[l>>2]=b;c[p>>2]=e;c[o>>2]=f;c[j>>2]=0;f=c[l>>2]|0;if((c[(c[l>>2]|0)+40>>2]|0)!=0){c[h>>2]=c[f+40>>2];b=c[h>>2]|0;i=n;return b|0}if((d[f+16>>0]|0)<3){c[h>>2]=0;b=c[h>>2]|0;i=n;return b|0}f=c[l>>2]|0;do{if((a[(c[l>>2]|0)+15>>0]|0)!=0){kh(c[f+88>>2]|0)}else{b=(Uo(f)|0)!=0;f=c[l>>2]|0;if(b){c[m>>2]=Rp(c[f+204>>2]|0)|0;c[k>>2]=0;if((c[m>>2]|0)==0){c[j>>2]=ad(c[l>>2]|0,1,k,0)|0;c[m>>2]=c[k>>2];c[(c[m>>2]|0)+12>>2]=0}if((c[m>>2]|0)!=0){c[j>>2]=Sq(c[l>>2]|0,c[m>>2]|0,c[(c[l>>2]|0)+24>>2]|0,1)|0}dd(c[k>>2]|0);if((c[j>>2]|0)!=0){break}To(c[(c[l>>2]|0)+204>>2]|0);break}c[j>>2]=nJ(f,0)|0;if((c[j>>2]|0)==0){c[j>>2]=oJ(c[l>>2]|0,c[p>>2]|0)|0;if((c[j>>2]|0)==0){c[j>>2]=Tq(c[l>>2]|0,0)|0;if((c[j>>2]|0)==0){b=c[l>>2]|0;c[j>>2]=Uq(b,Rp(c[(c[l>>2]|0)+204>>2]|0)|0)|0;if((c[j>>2]|0)==0){To(c[(c[l>>2]|0)+204>>2]|0);if((c[(c[l>>2]|0)+24>>2]|0)>>>0>(c[(c[l>>2]|0)+32>>2]|0)>>>0){c[g>>2]=(c[(c[l>>2]|0)+24>>2]|0)-((c[(c[l>>2]|0)+24>>2]|0)==(((c[368]|0)/(c[(c[l>>2]|0)+152>>2]|0)|0)+1|0)&1);c[j>>2]=Wo(c[l>>2]|0,c[g>>2]|0)|0;if((c[j>>2]|0)!=0){break}}if((c[o>>2]|0)==0){c[j>>2]=pd(c[l>>2]|0,c[p>>2]|0)|0}}}}}}}while(0);if((c[j>>2]|0)==0){if((Uo(c[l>>2]|0)|0)==0){a[(c[l>>2]|0)+16>>0]=5}}c[h>>2]=c[j>>2];b=c[h>>2]|0;i=n;return b|0}function nd(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;k=g+16|0;j=g+12|0;h=g+8|0;l=g;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;a=l;c[a>>2]=e;c[a+4>>2]=f;a=l;a=Ab[c[(c[c[k>>2]>>2]|0)+12>>2]&15](c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;i=g;return a|0}function od(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+20|0;g=e;j=e+8|0;f=e+16|0;c[h>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;c[f>>2]=dh(c[h>>2]|0,j)|0;if((c[f>>2]|0)!=0){a=c[f>>2]|0;i=e;return a|0}b=j;d=c[b+4>>2]|0;a=g;j=c[a+4>>2]|0;if(!((d|0)>(j|0)|((d|0)==(j|0)?(c[b>>2]|0)>>>0>(c[a>>2]|0)>>>0:0))){a=c[f>>2]|0;i=e;return a|0}a=g;c[f>>2]=Qo(c[h>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}function pd(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;h=g+12|0;k=g;f=g+4|0;j=g+8|0;c[h>>2]=b;c[k>>2]=e;c[f>>2]=0;if((c[c[(c[h>>2]|0)+60>>2]>>2]|0)!=0){c[j>>2]=c[k>>2];b=Hg(c[(c[h>>2]|0)+60>>2]|0,21,c[j>>2]|0)|0;c[f>>2]=b;c[f>>2]=(c[f>>2]|0)==12?0:b}if((c[f>>2]|0)!=0){b=c[f>>2]|0;i=g;return b|0}if((a[(c[h>>2]|0)+7>>0]|0)!=0){b=c[f>>2]|0;i=g;return b|0}c[f>>2]=cp(c[(c[h>>2]|0)+60>>2]|0,d[(c[h>>2]|0)+11>>0]|0)|0;b=c[f>>2]|0;i=g;return b|0}function qd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+24>>2]=c[f>>2];i=d;return}function rd(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;j=f;h=f+4|0;l=f+8|0;k=f+12|0;c[j>>2]=b;c[h>>2]=e;if((d[(c[j>>2]|0)+8>>0]|0|0)==0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}Uc(c[j>>2]|0);if((d[(c[j>>2]|0)+8>>0]|0|0)==2){c[k>>2]=c[(c[j>>2]|0)+4>>2];c[l>>2]=mJ(c[c[k>>2]>>2]|0)|0;if((c[l>>2]|0)!=0){if((c[h>>2]|0)==0){c[g>>2]=c[l>>2];b=c[g>>2]|0;i=f;return b|0}}a[(c[k>>2]|0)+20>>0]=1;hJ(c[k>>2]|0)}iJ(c[j>>2]|0);c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}function sd(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;g=h+16|0;l=h;k=h+4|0;f=h+8|0;j=h+12|0;c[l>>2]=b;c[k>>2]=e;c[f>>2]=0;if((d[(c[l>>2]|0)+8>>0]|0)==2){c[j>>2]=c[(c[l>>2]|0)+4>>2];Uc(c[l>>2]|0);if((a[(c[j>>2]|0)+17>>0]|0)!=0){c[f>>2]=lJ(c[j>>2]|0)|0;if((c[f>>2]|0)!=0){c[g>>2]=c[f>>2];b=c[g>>2]|0;i=h;return b|0}}if((a[(c[j>>2]|0)+19>>0]|0)!=0){qd(c[c[j>>2]>>2]|0,c[(c[j>>2]|0)+44>>2]|0)}c[f>>2]=md(c[c[j>>2]>>2]|0,c[k>>2]|0,0)|0}c[g>>2]=c[f>>2];b=c[g>>2]|0;i=h;return b|0}function td(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;g=b;d=b+20|0;e=b+4|0;j=b+8|0;h=b+12|0;f=b+16|0;c[e>>2]=a;if((c[e>>2]|0)==0){c[d>>2]=0;j=c[d>>2]|0;i=b;return j|0}c[h>>2]=c[(c[e>>2]|0)+20>>2];Uc(c[(c[e>>2]|0)+24>>2]|0);if((c[c[e>>2]>>2]|0)!=0){a=(c[(c[e>>2]|0)+24>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+ -1}if((c[(c[e>>2]|0)+40>>2]|0)!=0){c[j>>2]=ud(Zb(c[(c[e>>2]|0)+24>>2]|0)|0)|0;while(1){if((c[c[j>>2]>>2]|0)==(c[e>>2]|0)){break}c[j>>2]=(c[c[j>>2]>>2]|0)+44}c[c[j>>2]>>2]=c[(c[e>>2]|0)+44>>2]}vd(c[(c[e>>2]|0)+4>>2]|0,0)|0;if((c[(c[e>>2]|0)+28>>2]|0)==101){a=0}else{a=c[(c[e>>2]|0)+28>>2]|0}c[f>>2]=a;if((c[c[e>>2]>>2]|0)!=0){Rc(c[c[e>>2]>>2]|0,c[f>>2]|0,0,g);wd(c[c[e>>2]>>2]|0)}if((c[c[e>>2]>>2]|0)!=0){oc(c[e>>2]|0)}wd(c[h>>2]|0);c[d>>2]=c[f>>2];j=c[d>>2]|0;i=b;return j|0}function ud(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[b>>2]|0)+88|0}function vd(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;f=h+24|0;n=h;g=h+4|0;l=h+8|0;j=h+12|0;m=h+16|0;k=h+20|0;c[f>>2]=b;c[n>>2]=e;c[l>>2]=c[(c[f>>2]|0)+4>>2];Uc(c[f>>2]|0);if((c[n>>2]|0)==0){b=hF(c[l>>2]|0,0,0)|0;c[n>>2]=b;c[g>>2]=b}else{c[g>>2]=0}if((c[n>>2]|0)!=0){YF(c[f>>2]|0,c[n>>2]|0)}if((d[(c[f>>2]|0)+8>>0]|0|0)!=2){b=c[f>>2]|0;iJ(b);b=c[g>>2]|0;i=h;return b|0}c[m>>2]=Mo(c[c[l>>2]>>2]|0)|0;if((c[m>>2]|0)!=0){c[g>>2]=c[m>>2]}if((eD(c[l>>2]|0,1,j,0)|0)==0){c[k>>2]=zo((c[(c[j>>2]|0)+56>>2]|0)+28|0)|0;if((c[k>>2]|0)==0){kd(c[c[l>>2]>>2]|0,k)}c[(c[l>>2]|0)+44>>2]=c[k>>2];Gr(c[j>>2]|0)}a[(c[l>>2]|0)+20>>0]=1;hJ(c[l>>2]|0);b=c[f>>2]|0;iJ(b);b=c[g>>2]|0;i=h;return b|0}function wd(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+48|0;f=j;e=j+32|0;g=j+28|0;k=j+24|0;o=j+20|0;n=j+36|0;m=j+8|0;l=j+4|0;d=j+12|0;h=j+16|0;c[e>>2]=b;if((c[(c[e>>2]|0)+76>>2]|0)!=1691352191){i=j;return}if((wr(c[e>>2]|0)|0)!=0){i=j;return}xr(c[e>>2]|0,0);yr(c[e>>2]|0);c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[e>>2]|0)+20>>2]|0)){break}c[o>>2]=(c[(c[e>>2]|0)+16>>2]|0)+(c[k>>2]<<4);if((c[(c[o>>2]|0)+4>>2]|0)!=0){zr(c[(c[o>>2]|0)+4>>2]|0)|0;c[(c[o>>2]|0)+4>>2]=0;if((c[k>>2]|0)!=1){c[(c[o>>2]|0)+12>>2]=0}}c[k>>2]=(c[k>>2]|0)+1}if((c[(c[(c[e>>2]|0)+16>>2]|0)+28>>2]|0)!=0){oo(c[(c[(c[e>>2]|0)+16>>2]|0)+28>>2]|0)}Ar(c[e>>2]|0);Br(c[e>>2]|0);c[k>>2]=0;while(1){if((c[k>>2]|0)>=23){break}c[l>>2]=c[(c[e>>2]|0)+328+(c[k>>2]<<2)>>2];while(1){if((c[l>>2]|0)==0){break}c[m>>2]=c[(c[l>>2]|0)+28>>2];while(1){if((c[l>>2]|0)==0){break}vr(c[e>>2]|0,c[l>>2]|0);c[n>>2]=c[(c[l>>2]|0)+8>>2];cc(c[e>>2]|0,c[l>>2]|0);c[l>>2]=c[n>>2]}c[l>>2]=c[m>>2]}c[k>>2]=(c[k>>2]|0)+1}c[g>>2]=c[(c[e>>2]|0)+428>>2];while(1){if((c[g>>2]|0)==0){break}c[d>>2]=c[(c[g>>2]|0)+8>>2];c[k>>2]=0;while(1){if((c[k>>2]|0)>=3){break}if((c[(c[d>>2]|0)+((c[k>>2]|0)*20|0)+16>>2]|0)!=0){rb[c[(c[d>>2]|0)+((c[k>>2]|0)*20|0)+16>>2]&31](c[(c[d>>2]|0)+((c[k>>2]|0)*20|0)+8>>2]|0)}c[k>>2]=(c[k>>2]|0)+1}cc(c[e>>2]|0,c[d>>2]|0);c[g>>2]=c[c[g>>2]>>2]}Kh((c[e>>2]|0)+420|0);c[g>>2]=c[(c[e>>2]|0)+308>>2];while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[(c[g>>2]|0)+8>>2];if((c[(c[h>>2]|0)+12>>2]|0)!=0){rb[c[(c[h>>2]|0)+12>>2]&31](c[(c[h>>2]|0)+8>>2]|0)}cc(c[e>>2]|0,c[h>>2]|0);c[g>>2]=c[c[g>>2]>>2]}Kh((c[e>>2]|0)+300|0);Rc(c[e>>2]|0,0,0,f);Rf(c[(c[e>>2]|0)+224>>2]|0);c[(c[e>>2]|0)+76>>2]=-1254786768;cc(c[e>>2]|0,c[(c[(c[e>>2]|0)+16>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+76>>2]=-1623446221;if((a[(c[e>>2]|0)+243>>0]|0)!=0){oc(c[(c[e>>2]|0)+268>>2]|0)}oc(c[e>>2]|0);i=j;return}function xd(a){a=a|0;var b=0,d=0,f=0;b=i;i=i+16|0;f=b+4|0;d=b;c[f>>2]=a;c[d>>2]=c[f>>2];if((c[d>>2]|0)==0){f=0;i=b;return f|0}if(((e[(c[d>>2]|0)+88>>1]|0)>>>10&1|0)==0){f=0;i=b;return f|0}f=c[(c[d>>2]|0)+168>>2]|0;i=b;return f|0}function yd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=i;i=i+32|0;d=e+16|0;h=e;b=e+4|0;g=e+8|0;f=e+12|0;c[h>>2]=a;do{if((c[h>>2]|0)==0){c[b>>2]=0}else{c[g>>2]=c[h>>2];c[f>>2]=c[c[g>>2]>>2];if((zd(c[g>>2]|0)|0)==0){c[b>>2]=Ad(c[g>>2]|0)|0;c[b>>2]=Bd(c[f>>2]|0,c[b>>2]|0)|0;wd(c[f>>2]|0);break}c[d>>2]=Xb(65817)|0;h=c[d>>2]|0;i=e;return h|0}}while(0);c[d>>2]=c[b>>2];h=c[d>>2]|0;i=e;return h|0}function zd(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;c[e>>2]=a;if((c[c[e>>2]>>2]|0)==0){zc(21,43552,b);c[d>>2]=1;e=c[d>>2]|0;i=b;return e|0}else{c[d>>2]=0;e=c[d>>2]|0;i=b;return e|0}return 0}function Ad(a){a=a|0;var b=0,d=0,e=0,f=0;e=i;i=i+16|0;d=e+4|0;f=e;c[d>>2]=a;c[f>>2]=0;if((c[(c[d>>2]|0)+40>>2]|0)==-1108210269){b=3}else{if((c[(c[d>>2]|0)+40>>2]|0)==1369188723){b=3}}if((b|0)==3){c[f>>2]=Dd(c[d>>2]|0)|0}au(c[d>>2]|0);i=e;return c[f>>2]|0}function Bd(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f;g=f+8|0;h=f+4|0;c[g>>2]=b;c[h>>2]=e;do{if((c[g>>2]|0)!=0){if((d[(c[g>>2]|0)+64>>0]|0|0)==0){if((c[h>>2]|0)!=3082){break}}Rc(c[g>>2]|0,7,0,j);a[(c[g>>2]|0)+64>>0]=0;c[h>>2]=7}}while(0);e=c[h>>2]|0;if((c[g>>2]|0)==0){b=255;b=e&b;i=f;return b|0}b=c[(c[g>>2]|0)+56>>2]|0;b=e&b;i=f;return b|0}function Cd(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b;e=b+4|0;c[f>>2]=a;if((c[f>>2]|0)==0){c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}else{c[e>>2]=c[f>>2];c[d>>2]=Dd(c[e>>2]|0)|0;Ed(c[e>>2]|0);c[d>>2]=Bd(c[c[e>>2]>>2]|0,c[d>>2]|0)|0;f=c[d>>2]|0;i=b;return f|0}return 0}function Dd(a){a=a|0;var d=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;h=f;d=f+8|0;g=f+4|0;c[d>>2]=a;c[g>>2]=c[c[d>>2]>>2];DF(c[d>>2]|0)|0;a=c[d>>2]|0;if((c[(c[d>>2]|0)+76>>2]|0)>=0){yF(a)|0;cc(c[g>>2]|0,c[(c[d>>2]|0)+44>>2]|0);c[(c[d>>2]|0)+44>>2]=0;if(((e[(c[d>>2]|0)+88>>1]|0)>>>6&1|0)!=0){a=(c[d>>2]|0)+88|0;b[a>>1]=b[a>>1]&-33|32}}else{if((c[a+80>>2]|0)!=0){if(((e[(c[d>>2]|0)+88>>1]|0)>>>5&1|0)!=0){k=c[g>>2]|0;j=c[(c[d>>2]|0)+80>>2]|0;a=(c[(c[d>>2]|0)+44>>2]|0)!=0?1768:0;c[h>>2]=c[(c[d>>2]|0)+44>>2];Rc(k,j,a,h);cc(c[g>>2]|0,c[(c[d>>2]|0)+44>>2]|0);c[(c[d>>2]|0)+44>>2]=0}}}fJ(c[d>>2]|0);k=(c[d>>2]|0)+136|0;c[k>>2]=0;c[k+4>>2]=0;c[(c[d>>2]|0)+40>>2]=649915045;i=f;return c[(c[d>>2]|0)+80>>2]&c[(c[g>>2]|0)+56>>2]|0}function Ed(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;c[(c[e>>2]|0)+40>>2]=-1108210269;c[(c[e>>2]|0)+76>>2]=-1;c[(c[e>>2]|0)+80>>2]=0;a[(c[e>>2]|0)+86>>0]=2;c[(c[e>>2]|0)+40>>2]=-1108210269;c[(c[e>>2]|0)+92>>2]=0;c[(c[e>>2]|0)+72>>2]=1;a[(c[e>>2]|0)+87>>0]=-1;c[(c[e>>2]|0)+104>>2]=0;b=(c[e>>2]|0)+144|0;c[b>>2]=0;c[b+4>>2]=0;i=d;return}function Fd(a){a=a|0;var d=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+12|0;h=f;d=f+4|0;g=f+8|0;c[j>>2]=a;c[d>>2]=0;c[g>>2]=c[j>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(b[(c[g>>2]|0)+68>>1]|0)){break}Gd((c[(c[g>>2]|0)+60>>2]|0)+((c[h>>2]|0)*40|0)|0);b[(c[(c[g>>2]|0)+60>>2]|0)+((c[h>>2]|0)*40|0)+28>>1]=1;c[h>>2]=(c[h>>2]|0)+1}if(((e[(c[g>>2]|0)+88>>1]|0)>>>10&1|0)==0){j=c[d>>2]|0;i=f;return j|0}if((c[(c[g>>2]|0)+188>>2]|0)==0){j=c[d>>2]|0;i=f;return j|0}j=(c[g>>2]|0)+88|0;b[j>>1]=b[j>>1]&-33|32;j=c[d>>2]|0;i=f;return j|0}function Gd(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;if((b[(c[d>>2]|0)+28>>1]&9312|0)!=0){te(c[d>>2]|0)}if((c[(c[d>>2]|0)+36>>2]|0)==0){d=c[d>>2]|0;d=d+4|0;c[d>>2]=0;i=e;return}cc(c[c[d>>2]>>2]|0,c[(c[d>>2]|0)+36>>2]|0);c[(c[d>>2]|0)+36>>2]=0;d=c[d>>2]|0;d=d+4|0;c[d>>2]=0;i=e;return}function Hd(a){a=a|0;var d=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+8|0;g=d;h=d+4|0;c[g>>2]=a;c[h>>2]=c[g>>2];if((b[(c[h>>2]|0)+28>>1]&18|0)==0){c[f>>2]=Jd(c[g>>2]|0)|0;h=c[f>>2]|0;i=d;return h|0}Id(c[h>>2]|0)|0;g=(c[h>>2]|0)+28|0;b[g>>1]=e[g>>1]|0|16;if((c[(c[h>>2]|0)+24>>2]|0)!=0){a=c[(c[h>>2]|0)+4>>2]|0}else{a=0}c[f>>2]=a;h=c[f>>2]|0;i=d;return h|0}function Id(a){a=a|0;var d=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+8|0;g=d;h=d+4|0;c[g>>2]=a;do{if((b[(c[g>>2]|0)+28>>1]&16384|0)!=0){a=(c[(c[g>>2]|0)+24>>2]|0)+(c[(c[g>>2]|0)+16>>2]|0)|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)<=0?1:a;if((ue(c[g>>2]|0,c[h>>2]|0,1)|0)==0){aL((c[(c[g>>2]|0)+4>>2]|0)+(c[(c[g>>2]|0)+24>>2]|0)|0,0,c[(c[g>>2]|0)+16>>2]|0)|0;h=(c[g>>2]|0)+24|0;c[h>>2]=(c[h>>2]|0)+(c[(c[g>>2]|0)+16>>2]|0);h=(c[g>>2]|0)+28|0;b[h>>1]=(e[h>>1]|0)&-16897;break}c[f>>2]=7;h=c[f>>2]|0;i=d;return h|0}}while(0);c[f>>2]=0;h=c[f>>2]|0;i=d;return h|0}function Jd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Rd(c[d>>2]|0,1)|0;i=b;return a|0}function Kd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Ld(c[d>>2]|0,1)|0;i=b;return a|0}function Ld(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+8|0;k=f;j=f+12|0;h=f+4|0;c[k>>2]=d;a[j>>0]=e;c[h>>2]=c[k>>2];if((b[(c[h>>2]|0)+28>>1]&16|0)==0){if((Rd(c[k>>2]|0,a[j>>0]|0)|0)==0){c[g>>2]=0;d=c[g>>2]|0;i=f;return d|0}}e=c[(c[h>>2]|0)+24>>2]|0;if((b[(c[h>>2]|0)+28>>1]&16384|0)!=0){c[g>>2]=e+(c[(c[h>>2]|0)+16>>2]|0);d=c[g>>2]|0;i=f;return d|0}else{c[g>>2]=e;d=c[g>>2]|0;i=f;return d|0}return 0}function Md(a){a=a|0;var b=0.0,d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;b=+Nd(c[e>>2]|0);i=d;return+b}function Nd(d){d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0.0;e=i;i=i+32|0;f=e+8|0;j=e+16|0;g=e;c[j>>2]=d;d=c[j>>2]|0;if((b[(c[j>>2]|0)+28>>1]&8|0)!=0){h[f>>3]=+h[d+8>>3];l=+h[f>>3];i=e;return+l}k=c[j>>2]|0;if((b[d+28>>1]&4|0)!=0){k=k+16|0;h[f>>3]=+((c[k>>2]|0)>>>0)+4294967296.0*+(c[k+4>>2]|0);l=+h[f>>3];i=e;return+l}if((b[k+28>>1]&18|0)!=0){h[g>>3]=0.0;zt(c[(c[j>>2]|0)+4>>2]|0,g,c[(c[j>>2]|0)+24>>2]|0,a[(c[j>>2]|0)+30>>0]|0)|0;h[f>>3]=+h[g>>3];l=+h[f>>3];i=e;return+l}else{h[f>>3]=0.0;l=+h[f>>3];i=e;return+l}return 0.0}function Od(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Pd(c[d>>2]|0)|0;i=b;return a|0}function Pd(b){b=b|0;var d=0,f=0,g=0,j=0,k=0;f=i;i=i+32|0;d=f+8|0;g=f+20|0;k=f+16|0;j=f;c[g>>2]=b;c[k>>2]=e[(c[g>>2]|0)+28>>1]|0;do{if((c[k>>2]&4|0)!=0){g=(c[g>>2]|0)+16|0;j=c[g+4>>2]|0;k=d;c[k>>2]=c[g>>2];c[k+4>>2]=j}else{if((c[k>>2]&8|0)!=0){j=qw(+h[(c[g>>2]|0)+8>>3])|0;k=d;c[k>>2]=j;c[k+4>>2]=D;break}if((c[k>>2]&18|0)!=0){k=j;c[k>>2]=0;c[k+4>>2]=0;Pg(c[(c[g>>2]|0)+4>>2]|0,j,c[(c[g>>2]|0)+24>>2]|0,a[(c[g>>2]|0)+30>>0]|0)|0;g=j;j=c[g+4>>2]|0;k=d;c[k>>2]=c[g>>2];c[k+4>>2]=j;break}else{k=d;c[k>>2]=0;c[k+4>>2]=0;break}}}while(0);k=d;D=c[k+4>>2]|0;i=f;return c[k>>2]|0}function Qd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Pd(c[d>>2]|0)|0;i=b;return a|0}function Rd(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;h=i;i=i+16|0;j=h+4|0;k=h;l=h+8|0;c[k>>2]=f;a[l>>0]=g;if((c[k>>2]|0)==0){c[j>>2]=0;f=c[j>>2]|0;i=h;return f|0}if((b[(c[k>>2]|0)+28>>1]&1|0)!=0){c[j>>2]=0;f=c[j>>2]|0;i=h;return f|0}f=(c[k>>2]|0)+28|0;b[f>>1]=e[f>>1]|0|(b[(c[k>>2]|0)+28>>1]&16)>>3;if((b[(c[k>>2]|0)+28>>1]&16384|0)!=0){Id(c[k>>2]|0)|0}f=c[k>>2]|0;g=d[l>>0]|0;if((b[(c[k>>2]|0)+28>>1]&2|0)!=0){sr(f,g&-9)|0;if((a[l>>0]&8|0)!=0){if(1==(1&c[(c[k>>2]|0)+4>>2]|0)){if((ur(c[k>>2]|0)|0)!=0){c[j>>2]=0;f=c[j>>2]|0;i=h;return f|0}}}HF(c[k>>2]|0)|0}else{sw(f,g)|0}if((d[(c[k>>2]|0)+30>>0]|0|0)==((d[l>>0]|0)&-9|0)){c[j>>2]=c[(c[k>>2]|0)+4>>2];f=c[j>>2]|0;i=h;return f|0}else{c[j>>2]=0;f=c[j>>2]|0;i=h;return f|0}return 0}function Sd(a){a=a|0;var e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=a;i=f;return d[1488+(b[(c[e>>2]|0)+28>>1]&31)>>0]|0|0}function Td(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;Ud(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,0,c[g>>2]|0);i=f;return}function Ud(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h+12|0;n=h;m=h+4|0;l=h+16|0;k=h+8|0;c[j>>2]=b;c[n>>2]=d;c[m>>2]=e;a[l>>0]=f;c[k>>2]=g;if((Yd((c[j>>2]|0)+8|0,c[n>>2]|0,c[m>>2]|0,a[l>>0]|0,c[k>>2]|0)|0)!=18){i=h;return}je(c[j>>2]|0);i=h;return}function Vd(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;e=d;c[f>>2]=a;h[e>>3]=b;Wd((c[f>>2]|0)+8|0,+h[e>>3]);i=d;return}function Wd(a,d){a=a|0;d=+d;var e=0,f=0,g=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;h[g>>3]=d;j=(CD(+h[g>>3])|0)!=0;a=c[f>>2]|0;if(j){be(a);i=e;return}else{Gd(a);h[(c[f>>2]|0)+8>>3]=+h[g>>3];b[(c[f>>2]|0)+28>>1]=8;i=e;return}}function Xd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+8|0;h=f;g=f+4|0;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;c[(c[j>>2]|0)+64>>2]=1;a[(c[j>>2]|0)+69>>0]=1;Yd((c[j>>2]|0)+8|0,c[h>>2]|0,c[g>>2]|0,1,-1)|0;i=f;return}function Yd(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;o=i;i=i+48|0;l=o+28|0;n=o+24|0;t=o+20|0;v=o+16|0;q=o+34|0;s=o+12|0;m=o+4|0;p=o;r=o+32|0;u=o+8|0;c[n>>2]=f;c[t>>2]=g;c[v>>2]=h;a[q>>0]=j;c[s>>2]=k;c[m>>2]=c[v>>2];b[r>>1]=0;k=c[n>>2]|0;if((c[t>>2]|0)==0){be(k);c[l>>2]=0;v=c[l>>2]|0;i=o;return v|0}if((c[k>>2]|0)!=0){c[p>>2]=c[(c[c[n>>2]>>2]|0)+88>>2]}else{c[p>>2]=1e9}b[r>>1]=(d[q>>0]|0)==0?16:2;if((c[m>>2]|0)<0){v=(d[q>>0]|0)==1;c[m>>2]=0;a:do{if(v){while(1){if((c[m>>2]|0)>(c[p>>2]|0)){break a}if((a[(c[t>>2]|0)+(c[m>>2]|0)>>0]|0)==0){break a}c[m>>2]=(c[m>>2]|0)+1}}else{while(1){if((c[m>>2]|0)>(c[p>>2]|0)){break a}if((a[(c[t>>2]|0)+(c[m>>2]|0)>>0]|a[(c[t>>2]|0)+((c[m>>2]|0)+1)>>0]|0)==0){break a}c[m>>2]=(c[m>>2]|0)+2}}}while(0);b[r>>1]=e[r>>1]|512}do{if((c[s>>2]|0)==(-1|0)){c[u>>2]=c[m>>2];if((b[r>>1]&512|0)!=0){c[u>>2]=(c[u>>2]|0)+((d[q>>0]|0)==1?1:2)}if((c[m>>2]|0)>(c[p>>2]|0)){c[l>>2]=18;v=c[l>>2]|0;i=o;return v|0}if((ue(c[n>>2]|0,c[u>>2]|0,0)|0)==0){fL(c[(c[n>>2]|0)+4>>2]|0,c[t>>2]|0,c[u>>2]|0)|0;break}c[l>>2]=7;v=c[l>>2]|0;i=o;return v|0}else{v=(c[s>>2]|0)==39;Gd(c[n>>2]|0);t=c[t>>2]|0;c[(c[n>>2]|0)+4>>2]=t;if(v){c[(c[n>>2]|0)+36>>2]=t;c[(c[n>>2]|0)+32>>2]=0;break}else{c[(c[n>>2]|0)+32>>2]=c[s>>2];b[r>>1]=e[r>>1]|((c[s>>2]|0)==0?2048:1024);break}}}while(0);c[(c[n>>2]|0)+24>>2]=c[m>>2];b[(c[n>>2]|0)+28>>1]=b[r>>1]|0;if((d[q>>0]|0)==0){q=1}else{q=d[q>>0]|0}a[(c[n>>2]|0)+30>>0]=q;if((d[(c[n>>2]|0)+30>>0]|0)!=1){if((eJ(c[n>>2]|0)|0)!=0){c[l>>2]=7;v=c[l>>2]|0;i=o;return v|0}}if((c[m>>2]|0)>(c[p>>2]|0)){c[l>>2]=18;v=c[l>>2]|0;i=o;return v|0}else{c[l>>2]=0;v=c[l>>2]|0;i=o;return v|0}return 0}function Zd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;a=c[f>>2]|0;_d((c[e>>2]|0)+8|0,a,((a|0)<0)<<31>>31);i=d;return}function _d(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+8|0;h=f;c[g>>2]=a;a=h;c[a>>2]=d;c[a+4>>2]=e;Gd(c[g>>2]|0);e=h;d=c[e+4>>2]|0;a=(c[g>>2]|0)+16|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;b[(c[g>>2]|0)+28>>1]=4;i=f;return}function $d(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;a=g;_d((c[f>>2]|0)+8|0,c[a>>2]|0,c[a+4>>2]|0);i=e;return}function ae(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;be((c[d>>2]|0)+8|0);i=b;return}function be(a){a=a|0;var d=0,f=0,g=0;f=i;i=i+16|0;d=f+4|0;g=f;c[d>>2]=a;if((b[(c[d>>2]|0)+28>>1]&64|0)!=0){c[g>>2]=c[(c[d>>2]|0)+16>>2];c[(c[g>>2]|0)+4>>2]=c[(c[c[g>>2]>>2]|0)+180>>2];c[(c[c[g>>2]>>2]|0)+180>>2]=c[g>>2]}if((b[(c[d>>2]|0)+28>>1]&32|0)!=0){uF(c[(c[d>>2]|0)+16>>2]|0)}b[(c[d>>2]|0)+28>>1]=(e[(c[d>>2]|0)+28>>1]|0)&-16896|1;i=f;return}function ce(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;Ud(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,1,c[g>>2]|0);i=f;return}function de(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;ee((c[f>>2]|0)+8|0,c[e>>2]|0)|0;i=d;return}function ee(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;f=h+8|0;j=h;g=h+4|0;c[f>>2]=a;c[j>>2]=d;c[g>>2]=0;if((b[(c[f>>2]|0)+28>>1]&9312|0)!=0){te(c[f>>2]|0)}k=(c[f>>2]|0)+0|0;a=(c[j>>2]|0)+0|0;d=k+36|0;do{c[k>>2]=c[a>>2];k=k+4|0;a=a+4|0}while((k|0)<(d|0));k=(c[f>>2]|0)+28|0;b[k>>1]=(e[k>>1]|0)&-1025;c[(c[f>>2]|0)+32>>2]=0;if((b[(c[f>>2]|0)+28>>1]&18|0)==0){k=c[g>>2]|0;i=h;return k|0}if(0!=(b[(c[j>>2]|0)+28>>1]&2048|0)){k=c[g>>2]|0;i=h;return k|0}k=(c[f>>2]|0)+28|0;b[k>>1]=e[k>>1]|0|4096;c[g>>2]=ur(c[f>>2]|0)|0;k=c[g>>2]|0;i=h;return k|0}function fe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;ge((c[f>>2]|0)+8|0,c[e>>2]|0);i=d;return}function ge(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=d;c[h>>2]=e;Gd(c[g>>2]|0);b[(c[g>>2]|0)+28>>1]=16400;c[(c[g>>2]|0)+24>>2]=0;if((c[h>>2]|0)<0){c[h>>2]=0}c[(c[g>>2]|0)+16>>2]=c[h>>2];a[(c[g>>2]|0)+30>>0]=1;i=f;return}function he(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=d;c[h>>2]=e;c[(c[g>>2]|0)+64>>2]=c[h>>2];a[(c[g>>2]|0)+69>>0]=1;if((b[(c[g>>2]|0)+36>>1]&1|0)==0){i=f;return}d=(c[g>>2]|0)+8|0;Yd(d,ie(c[h>>2]|0)|0,-1,1,0)|0;i=f;return}function ie(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=12544;if((c[e>>2]|0)==516){c[b>>2]=12560}else{c[e>>2]=c[e>>2]&255;if((c[e>>2]|0)>=0&(c[e>>2]|0)<27){if((c[11720+(c[e>>2]<<2)>>2]|0)!=0){c[b>>2]=c[11720+(c[e>>2]<<2)>>2]}}}i=d;return c[b>>2]|0}function je(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;c[(c[e>>2]|0)+64>>2]=18;a[(c[e>>2]|0)+69>>0]=1;Yd((c[e>>2]|0)+8|0,1520,-1,1,0)|0;i=d;return}function ke(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;be((c[e>>2]|0)+8|0);c[(c[e>>2]|0)+64>>2]=7;a[(c[e>>2]|0)+69>>0]=1;a[(c[(c[e>>2]|0)+8>>2]|0)+64>>0]=1;i=d;return}function le(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e+28|0;n=e;k=e+4|0;l=e+8|0;j=e+12|0;m=e+16|0;g=e+20|0;h=e+24|0;c[n>>2]=d;c[k>>2]=0;c[l>>2]=0;c[j>>2]=c[n>>2];c[m>>2]=0;if((me(c[j>>2]|0)|0)!=0){c[f>>2]=Xb(66253)|0;n=c[f>>2]|0;i=e;return n|0}c[g>>2]=c[c[j>>2]>>2];d=(c[j>>2]|0)+88|0;b[d>>1]=b[d>>1]&-2049;while(1){d=ne(c[j>>2]|0)|0;c[k>>2]=d;if((d|0)!=17){break}d=c[m>>2]|0;c[m>>2]=d+1;if((d|0)>=50){break}d=oe(c[j>>2]|0)|0;c[k>>2]=d;c[l>>2]=d;if((d|0)!=0){break}Cd(c[n>>2]|0)|0;d=(c[j>>2]|0)+88|0;b[d>>1]=b[d>>1]&-2049|2048}do{if((c[l>>2]|0)!=0){c[h>>2]=Jd(c[(c[g>>2]|0)+224>>2]|0)|0;cc(c[g>>2]|0,c[(c[j>>2]|0)+44>>2]|0);if((a[(c[g>>2]|0)+64>>0]|0)!=0){c[(c[j>>2]|0)+44>>2]=0;c[k>>2]=7;c[(c[j>>2]|0)+80>>2]=7;break}else{n=pe(c[g>>2]|0,c[h>>2]|0)|0;c[(c[j>>2]|0)+44>>2]=n;c[(c[j>>2]|0)+80>>2]=c[l>>2];break}}}while(0);c[k>>2]=Bd(c[g>>2]|0,c[k>>2]|0)|0;c[f>>2]=c[k>>2];n=c[f>>2]|0;i=e;return n|0}function me(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;c[e>>2]=a;if((c[e>>2]|0)==0){zc(21,43512,b);c[d>>2]=1;e=c[d>>2]|0;i=b;return e|0}else{c[d>>2]=zd(c[e>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}return 0}function ne(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;g=h+20|0;l=h+16|0;k=h+8|0;j=h+12|0;m=h;c[l>>2]=d;if((c[(c[l>>2]|0)+40>>2]|0)!=-1108210269){Cd(c[l>>2]|0)|0}c[k>>2]=c[c[l>>2]>>2];d=c[l>>2]|0;if((a[(c[k>>2]|0)+64>>0]|0)!=0){c[d+80>>2]=7;c[g>>2]=7;d=c[g>>2]|0;i=h;return d|0}if((c[d+76>>2]|0)<=0){if(((e[(c[l>>2]|0)+88>>1]|0)>>>5&1|0)!=0){c[(c[l>>2]|0)+80>>2]=17;c[j>>2]=1}else{f=8}}else{f=8}if((f|0)==8){if((c[(c[l>>2]|0)+76>>2]|0)<0){if((c[(c[k>>2]|0)+140>>2]|0)==0){c[(c[k>>2]|0)+232>>2]=0}if((c[(c[k>>2]|0)+172>>2]|0)!=0){if((a[(c[k>>2]|0)+137>>0]|0)==0){Gt(c[c[k>>2]>>2]|0,(c[l>>2]|0)+128|0)|0}}d=(c[k>>2]|0)+140|0;c[d>>2]=(c[d>>2]|0)+1;if(((e[(c[l>>2]|0)+88>>1]|0)>>>8&1|0)==0){d=(c[k>>2]|0)+148|0;c[d>>2]=(c[d>>2]|0)+1}if(((e[(c[l>>2]|0)+88>>1]|0)>>>9&1|0)!=0){d=(c[k>>2]|0)+144|0;c[d>>2]=(c[d>>2]|0)+1}c[(c[l>>2]|0)+76>>2]=0}if((b[(c[l>>2]|0)+88>>1]&3|0)!=0){c[j>>2]=vF(c[l>>2]|0)|0}else{d=(c[k>>2]|0)+152|0;c[d>>2]=(c[d>>2]|0)+1;c[j>>2]=wF(c[l>>2]|0)|0;d=(c[k>>2]|0)+152|0;c[d>>2]=(c[d>>2]|0)+ -1}if((c[j>>2]|0)!=100){if((c[(c[k>>2]|0)+172>>2]|0)!=0){if((a[(c[k>>2]|0)+137>>0]|0)==0){if((c[(c[l>>2]|0)+168>>2]|0)!=0){Gt(c[c[k>>2]>>2]|0,m)|0;o=c[(c[k>>2]|0)+172>>2]|0;n=c[(c[k>>2]|0)+176>>2]|0;f=c[(c[l>>2]|0)+168>>2]|0;d=(c[l>>2]|0)+128|0;d=$K(c[m>>2]|0,c[m+4>>2]|0,c[d>>2]|0,c[d+4>>2]|0)|0;d=nL(d|0,D|0,1e6,0)|0;Bb[o&3](n,f,d,D)}}}}if((c[j>>2]|0)==101){o=xF(c[k>>2]|0)|0;c[(c[l>>2]|0)+80>>2]=o;if((c[(c[l>>2]|0)+80>>2]|0)!=0){c[j>>2]=1}}c[(c[k>>2]|0)+52>>2]=c[j>>2];if(7==(Bd(c[c[l>>2]>>2]|0,c[(c[l>>2]|0)+80>>2]|0)|0)){c[(c[l>>2]|0)+80>>2]=7}}if(((e[(c[l>>2]|0)+88>>1]|0)>>>10&1|0)!=0){if((c[j>>2]|0)!=100&(c[j>>2]|0)!=101){c[j>>2]=yF(c[l>>2]|0)|0}}c[g>>2]=c[j>>2]&c[(c[k>>2]|0)+56>>2];o=c[g>>2]|0;i=h;return o|0}function oe(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;g=d;h=d+4|0;f=d+8|0;k=d+12|0;j=d+16|0;c[g>>2]=b;c[k>>2]=xd(c[g>>2]|0)|0;c[j>>2]=mz(c[g>>2]|0)|0;c[h>>2]=Hf(c[j>>2]|0,c[k>>2]|0,-1,0,c[g>>2]|0,f,0)|0;if((c[h>>2]|0)==0){cF(c[f>>2]|0,c[g>>2]|0);Xe(c[f>>2]|0,c[g>>2]|0)|0;dF(c[f>>2]|0);Ad(c[f>>2]|0)|0;c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}if((c[h>>2]|0)==7){a[(c[j>>2]|0)+64>>0]=1}c[e>>2]=c[h>>2];k=c[e>>2]|0;i=d;return k|0}function pe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;j=d;g=d+4|0;f=d+8|0;h=d+12|0;c[j>>2]=a;c[g>>2]=b;if((c[g>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[h>>2]=(Ub(c[g>>2]|0)|0)+1;c[f>>2]=$e(c[j>>2]|0,c[h>>2]|0)|0;if((c[f>>2]|0)!=0){fL(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0}c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}function qe(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[c[b>>2]>>2]|0)+4>>2]|0}function re(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+8>>2]|0}function se(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=f+8|0;g=f;e=f+4|0;c[h>>2]=a;c[g>>2]=d;c[e>>2]=c[(c[h>>2]|0)+48>>2];do{if((b[(c[e>>2]|0)+28>>1]&8192|0)==0){d=c[e>>2]|0;if((c[g>>2]|0)<=0){te(d);b[(c[e>>2]|0)+28>>1]=1;c[(c[e>>2]|0)+4>>2]=0;break}ue(d,c[g>>2]|0,0)|0;b[(c[e>>2]|0)+28>>1]=8192;c[(c[e>>2]|0)+16>>2]=c[c[h>>2]>>2];if((c[(c[e>>2]|0)+4>>2]|0)!=0){aL(c[(c[e>>2]|0)+4>>2]|0,0,c[g>>2]|0)|0}}}while(0);i=f;return c[(c[e>>2]|0)+4>>2]|0}function te(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;c[e>>2]=a;f=c[e>>2]|0;if((b[(c[e>>2]|0)+28>>1]&8192|0)!=0){tF(f,c[(c[e>>2]|0)+16>>2]|0)|0;Gd(c[e>>2]|0);i=d;return}a=c[e>>2]|0;if((b[f+28>>1]&1024|0)!=0){rb[c[a+32>>2]&31](c[(c[e>>2]|0)+4>>2]|0);c[(c[e>>2]|0)+32>>2]=0;i=d;return}f=c[e>>2]|0;if((b[a+28>>1]&32|0)!=0){uF(c[f+16>>2]|0);i=d;return}if((b[f+28>>1]&64|0)==0){i=d;return}be(c[e>>2]|0);i=d;return}function ue(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+16|0;j=k+12|0;h=k;l=k+4|0;m=k+8|0;c[h>>2]=a;c[l>>2]=d;c[m>>2]=f;if((c[(c[h>>2]|0)+36>>2]|0)==0){g=3}else{a=Vv(c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+36>>2]|0)|0;if((a|0)<(c[l>>2]|0)){g=3}}if((g|0)==3){if((c[l>>2]|0)<32){c[l>>2]=32}if((c[m>>2]|0)!=0){if((c[(c[h>>2]|0)+4>>2]|0)==(c[(c[h>>2]|0)+36>>2]|0)){a=Ey(c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0,c[l>>2]|0)|0;c[(c[h>>2]|0)+36>>2]=a;c[(c[h>>2]|0)+4>>2]=a;c[m>>2]=0}else{g=8}}else{g=8}if((g|0)==8){cc(c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+36>>2]|0);a=$e(c[c[h>>2]>>2]|0,c[l>>2]|0)|0;c[(c[h>>2]|0)+36>>2]=a}if((c[(c[h>>2]|0)+36>>2]|0)==0){if((b[(c[h>>2]|0)+28>>1]&9312|0)!=0){te(c[h>>2]|0)}c[(c[h>>2]|0)+4>>2]=0;b[(c[h>>2]|0)+28>>1]=1;c[j>>2]=7;a=c[j>>2]|0;i=k;return a|0}}if((c[(c[h>>2]|0)+4>>2]|0)!=0){if((c[m>>2]|0)!=0){if((c[(c[h>>2]|0)+4>>2]|0)!=(c[(c[h>>2]|0)+36>>2]|0)){fL(c[(c[h>>2]|0)+36>>2]|0,c[(c[h>>2]|0)+4>>2]|0,c[(c[h>>2]|0)+24>>2]|0)|0}}}if((b[(c[h>>2]|0)+28>>1]&1024|0)!=0){rb[c[(c[h>>2]|0)+32>>2]&31](c[(c[h>>2]|0)+4>>2]|0)}c[(c[h>>2]|0)+4>>2]=c[(c[h>>2]|0)+36>>2];a=(c[h>>2]|0)+28|0;b[a>>1]=(e[a>>1]|0)&-7169;c[(c[h>>2]|0)+32>>2]=0;c[j>>2]=0;a=c[j>>2]|0;i=k;return a|0}function ve(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=$e(c[g>>2]|0,c[f>>2]|0)|0;if((c[e>>2]|0)==0){g=c[e>>2]|0;i=d;return g|0}aL(c[e>>2]|0,0,c[f>>2]|0)|0;g=c[e>>2]|0;i=d;return g|0}function we(a){a=a|0;var b=0,d=0,f=0;b=i;i=i+16|0;f=b+4|0;d=b;c[f>>2]=a;c[d>>2]=c[f>>2];if((c[d>>2]|0)==0){f=0;i=b;return f|0}f=e[(c[d>>2]|0)+84>>1]|0;i=b;return f|0}function xe(a){a=a|0;var b=0,d=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;g=b;f=b+4|0;c[g>>2]=a;c[f>>2]=c[g>>2];if((c[f>>2]|0)!=0){if((c[(c[f>>2]|0)+20>>2]|0)!=0){c[d>>2]=e[(c[f>>2]|0)+84>>1]|0;g=c[d>>2]|0;i=b;return g|0}}c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}function ye(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;d=e+4|0;c[f>>2]=a;c[g>>2]=b;c[d>>2]=Hd(ze(c[f>>2]|0,c[g>>2]|0)|0)|0;Ae(c[f>>2]|0);i=e;return c[d>>2]|0}function ze(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;h=i;i=i+32|0;j=h;k=h+16|0;f=h+4|0;d=h+8|0;g=h+12|0;c[k>>2]=a;c[f>>2]=b;c[d>>2]=c[k>>2];if((c[d>>2]|0)!=0){if((c[(c[d>>2]|0)+20>>2]|0)!=0){if((c[f>>2]|0)>=0?(c[f>>2]|0)<(e[(c[d>>2]|0)+84>>1]|0|0):0){c[g>>2]=(c[(c[d>>2]|0)+20>>2]|0)+((c[f>>2]|0)*40|0);k=c[g>>2]|0;i=h;return k|0}}}if((c[d>>2]|0)!=0){if((c[c[d>>2]>>2]|0)!=0){Rc(c[c[d>>2]>>2]|0,25,0,j)}}c[g>>2]=sF()|0;k=c[g>>2]|0;i=h;return k|0}function Ae(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];if((c[d>>2]|0)==0){i=b;return}e=Bd(c[c[d>>2]>>2]|0,c[(c[d>>2]|0)+80>>2]|0)|0;c[(c[d>>2]|0)+80>>2]=e;i=b;return}function Be(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;d=e+4|0;c[f>>2]=a;c[g>>2]=b;c[d>>2]=Kd(ze(c[f>>2]|0,c[g>>2]|0)|0)|0;Ae(c[f>>2]|0);i=e;return c[d>>2]|0}function Ce(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;d=e;c[f>>2]=a;c[g>>2]=b;h[d>>3]=+Md(ze(c[f>>2]|0,c[g>>2]|0)|0);Ae(c[f>>2]|0);i=e;return+(+h[d>>3])}function De(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;d=e+4|0;c[f>>2]=a;c[g>>2]=b;c[d>>2]=Od(ze(c[f>>2]|0,c[g>>2]|0)|0)|0;Ae(c[f>>2]|0);i=e;return c[d>>2]|0}function Ee(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+12|0;g=d+8|0;e=d;c[f>>2]=a;c[g>>2]=b;b=Qd(ze(c[f>>2]|0,c[g>>2]|0)|0)|0;a=e;c[a>>2]=b;c[a+4>>2]=D;Ae(c[f>>2]|0);a=e;D=c[a+4>>2]|0;i=d;return c[a>>2]|0}function Fe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;d=e+4|0;c[f>>2]=a;c[g>>2]=b;c[d>>2]=Jd(ze(c[f>>2]|0,c[g>>2]|0)|0)|0;Ae(c[f>>2]|0);i=e;return c[d>>2]|0}function Ge(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;h=f+8|0;j=f;g=f+4|0;c[h>>2]=a;c[j>>2]=d;c[g>>2]=ze(c[h>>2]|0,c[j>>2]|0)|0;if((b[(c[g>>2]|0)+28>>1]&2048|0)==0){j=c[h>>2]|0;Ae(j);j=c[g>>2]|0;i=f;return j|0}j=(c[g>>2]|0)+28|0;b[j>>1]=(e[j>>1]|0)&-2049;j=(c[g>>2]|0)+28|0;b[j>>1]=e[j>>1]|0|4096;j=c[h>>2]|0;Ae(j);j=c[g>>2]|0;i=f;return j|0}function He(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;d=e+4|0;c[f>>2]=a;c[g>>2]=b;c[d>>2]=Sd(ze(c[f>>2]|0,c[g>>2]|0)|0)|0;Ae(c[f>>2]|0);i=e;return c[d>>2]|0}function Ie(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=Je(c[f>>2]|0,c[e>>2]|0,40,0)|0;i=d;return a|0}function Je(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+32|0;p=m+28|0;g=m;n=m+4|0;k=m+8|0;h=m+12|0;o=m+16|0;l=m+20|0;j=m+24|0;c[p>>2]=b;c[g>>2]=d;c[n>>2]=e;c[k>>2]=f;c[h>>2]=0;c[o>>2]=c[p>>2];c[j>>2]=c[c[o>>2]>>2];c[l>>2]=we(c[p>>2]|0)|0;if(!((c[g>>2]|0)>=0?(c[g>>2]|0)<(c[l>>2]|0):0)){p=c[h>>2]|0;i=m;return p|0}p=$(c[k>>2]|0,c[l>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+p;c[h>>2]=ub[c[n>>2]&63]((c[(c[o>>2]|0)+16>>2]|0)+((c[g>>2]|0)*40|0)|0)|0;if((a[(c[j>>2]|0)+64>>0]|0)==0){p=c[h>>2]|0;i=m;return p|0}a[(c[j>>2]|0)+64>>0]=0;c[h>>2]=0;p=c[h>>2]|0;i=m;return p|0}function Ke(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+16|0;l=g;k=g+4|0;j=g+8|0;h=g+12|0;c[m>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;a=Le(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,0)|0;i=g;return a|0}function Le(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;r=i;i=i+48|0;q=r;u=r+28|0;k=r+24|0;n=r+20|0;t=r+12|0;m=r+32|0;o=r+36|0;p=r+4|0;s=r+16|0;l=r+8|0;c[u>>2]=b;c[k>>2]=e;c[n>>2]=f;c[t>>2]=g;c[m>>2]=h;a[o>>0]=j;c[p>>2]=c[u>>2];c[l>>2]=Ne(c[p>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)!=0){if(!((c[m>>2]|0)!=0&(c[m>>2]|0)!=(-1|0))){u=c[l>>2]|0;i=r;return u|0}rb[c[m>>2]&31](c[n>>2]|0);u=c[l>>2]|0;i=r;return u|0}if((c[n>>2]|0)==0){u=c[l>>2]|0;i=r;return u|0}c[s>>2]=(c[(c[p>>2]|0)+60>>2]|0)+(((c[k>>2]|0)-1|0)*40|0);c[l>>2]=Yd(c[s>>2]|0,c[n>>2]|0,c[t>>2]|0,a[o>>0]|0,c[m>>2]|0)|0;if((c[l>>2]|0)==0){if((d[o>>0]|0|0)!=0){c[l>>2]=sr(c[s>>2]|0,d[(c[(c[(c[c[p>>2]>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0)|0}}Rc(c[c[p>>2]>>2]|0,c[l>>2]|0,0,q);c[l>>2]=Bd(c[c[p>>2]>>2]|0,c[l>>2]|0)|0;u=c[l>>2]|0;i=r;return u|0}function Me(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+32|0;l=e+20|0;j=e+8|0;k=e;f=e+12|0;g=e+16|0;c[l>>2]=a;c[j>>2]=b;h[k>>3]=d;c[g>>2]=c[l>>2];c[f>>2]=Ne(c[g>>2]|0,c[j>>2]|0)|0;if((c[f>>2]|0)!=0){l=c[f>>2]|0;i=e;return l|0}Wd((c[(c[g>>2]|0)+60>>2]|0)+(((c[j>>2]|0)-1|0)*40|0)|0,+h[k>>3]);l=c[f>>2]|0;i=e;return l|0}function Ne(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g;h=g+16|0;j=g+4|0;k=g+8|0;l=g+12|0;c[j>>2]=a;c[k>>2]=d;if((me(c[j>>2]|0)|0)!=0){c[h>>2]=Xb(66775)|0;a=c[h>>2]|0;i=g;return a|0}if(!((c[(c[j>>2]|0)+40>>2]|0)!=-1108210269)){if((c[(c[j>>2]|0)+76>>2]|0)<0){if((c[k>>2]|0)>=1){if((c[k>>2]|0)<=(b[(c[j>>2]|0)+68>>1]|0)){c[k>>2]=(c[k>>2]|0)+ -1;c[l>>2]=(c[(c[j>>2]|0)+60>>2]|0)+((c[k>>2]|0)*40|0);Gd(c[l>>2]|0);b[(c[l>>2]|0)+28>>1]=1;Rc(c[c[j>>2]>>2]|0,0,0,m);do{if(((e[(c[j>>2]|0)+88>>1]|0)>>>10&1|0)!=0){if((c[k>>2]|0)<32){if((c[(c[j>>2]|0)+188>>2]&1<>2]|0)==0){f=12}}else{f=12}if((f|0)==12){if(!((c[(c[j>>2]|0)+188>>2]|0)==-1)){break}}a=(c[j>>2]|0)+88|0;b[a>>1]=b[a>>1]&-33|32}}while(0);c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}}Rc(c[c[j>>2]>>2]|0,25,0,m);c[h>>2]=25;a=c[h>>2]|0;i=g;return a|0}}Rc(c[c[j>>2]>>2]|0,21,0,m);c[m>>2]=c[(c[j>>2]|0)+168>>2];zc(21,37664,m);c[h>>2]=Xb(66783)|0;a=c[h>>2]|0;i=g;return a|0}function Oe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;f=e;h=e+4|0;c[g>>2]=a;c[f>>2]=b;c[h>>2]=d;a=c[h>>2]|0;a=Pe(c[g>>2]|0,c[f>>2]|0,a,((a|0)<0)<<31>>31)|0;i=e;return a|0}function Pe(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+20|0;k=f+8|0;h=f;g=f+12|0;j=f+16|0;c[l>>2]=a;c[k>>2]=b;a=h;c[a>>2]=d;c[a+4>>2]=e;c[j>>2]=c[l>>2];c[g>>2]=Ne(c[j>>2]|0,c[k>>2]|0)|0;if((c[g>>2]|0)!=0){l=c[g>>2]|0;i=f;return l|0}l=h;_d((c[(c[j>>2]|0)+60>>2]|0)+(((c[k>>2]|0)-1|0)*40|0)|0,c[l>>2]|0,c[l+4>>2]|0);l=c[g>>2]|0;i=f;return l|0}function Qe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+12|0;f=e;d=e+4|0;g=e+8|0;c[h>>2]=a;c[f>>2]=b;c[g>>2]=c[h>>2];c[d>>2]=Ne(c[g>>2]|0,c[f>>2]|0)|0;i=e;return c[d>>2]|0}function Re(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+16|0;l=g;k=g+4|0;j=g+8|0;h=g+12|0;c[m>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;a=Le(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,1)|0;i=g;return a|0}function Se(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0;k=i;i=i+16|0;m=k+12|0;l=k;j=k+4|0;g=k+8|0;c[m>>2]=d;c[l>>2]=e;c[j>>2]=f;e=Sd(c[j>>2]|0)|0;if((e|0)==3){c[g>>2]=Le(c[m>>2]|0,c[l>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+24>>2]|0,-1,a[(c[j>>2]|0)+30>>0]|0)|0;d=c[g>>2]|0;i=k;return d|0}else if((e|0)==1){d=(c[j>>2]|0)+16|0;c[g>>2]=Pe(c[m>>2]|0,c[l>>2]|0,c[d>>2]|0,c[d+4>>2]|0)|0;d=c[g>>2]|0;i=k;return d|0}else if((e|0)==4){m=c[m>>2]|0;e=c[l>>2]|0;l=c[j>>2]|0;if((b[(c[j>>2]|0)+28>>1]&16384|0)!=0){c[g>>2]=Te(m,e,c[l+16>>2]|0)|0;d=c[g>>2]|0;i=k;return d|0}else{c[g>>2]=Ke(m,e,c[l+4>>2]|0,c[(c[j>>2]|0)+24>>2]|0,-1)|0;d=c[g>>2]|0;i=k;return d|0}}else if((e|0)==2){c[g>>2]=Me(c[m>>2]|0,c[l>>2]|0,+h[(c[j>>2]|0)+8>>3])|0;d=c[g>>2]|0;i=k;return d|0}else{c[g>>2]=Qe(c[m>>2]|0,c[l>>2]|0)|0;d=c[g>>2]|0;i=k;return d|0}return 0}function Te(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;h=e;j=e+4|0;f=e+8|0;g=e+12|0;c[k>>2]=a;c[h>>2]=b;c[j>>2]=d;c[g>>2]=c[k>>2];c[f>>2]=Ne(c[g>>2]|0,c[h>>2]|0)|0;if((c[f>>2]|0)!=0){k=c[f>>2]|0;i=e;return k|0}ge((c[(c[g>>2]|0)+60>>2]|0)+(((c[h>>2]|0)-1|0)*40|0)|0,c[j>>2]|0);k=c[f>>2]|0;i=e;return k|0}function Ue(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=c[f>>2];if((c[e>>2]|0)==0){f=0;i=d;return f|0}f=b[(c[e>>2]|0)+68>>1]|0;i=d;return f|0}function Ve(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;b=c[f>>2]|0;a=c[e>>2]|0;a=We(b,a,Ub(c[e>>2]|0)|0)|0;i=d;return a|0}function We(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;m=g;k=g+4|0;l=g+8|0;n=g+12|0;j=g+16|0;c[m>>2]=d;c[k>>2]=e;c[l>>2]=f;if((c[m>>2]|0)==0){c[h>>2]=0;d=c[h>>2]|0;i=g;return d|0}a:do{if((c[k>>2]|0)!=0){c[n>>2]=0;while(1){if((c[n>>2]|0)>=(b[(c[m>>2]|0)+70>>1]|0)){break a}c[j>>2]=c[(c[(c[m>>2]|0)+64>>2]|0)+(c[n>>2]<<2)>>2];if((c[j>>2]|0)!=0){if((ZK(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)==0){if((a[(c[j>>2]|0)+(c[l>>2]|0)>>0]|0)==0){break}}}c[n>>2]=(c[n>>2]|0)+1}c[h>>2]=(c[n>>2]|0)+1;d=c[h>>2]|0;i=g;return d|0}}while(0);c[h>>2]=0;d=c[h>>2]|0;i=g;return d|0}function Xe(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;j=e;g=e+4|0;h=e+8|0;f=e+12|0;c[k>>2]=a;c[j>>2]=d;c[g>>2]=c[k>>2];c[h>>2]=c[j>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(b[(c[g>>2]|0)+68>>1]|0)){break}rF((c[(c[h>>2]|0)+60>>2]|0)+((c[f>>2]|0)*40|0)|0,(c[(c[g>>2]|0)+60>>2]|0)+((c[f>>2]|0)*40|0)|0);c[f>>2]=(c[f>>2]|0)+1}i=e;return 0}function Ye(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+8|0;d=b;f=b+4|0;c[e>>2]=a;c[d>>2]=Sd(c[e>>2]|0)|0;if((c[d>>2]|0)!=3){f=c[d>>2]|0;i=b;return f|0}c[f>>2]=c[e>>2];Ze(c[f>>2]|0);c[d>>2]=Sd(c[e>>2]|0)|0;f=c[d>>2]|0;i=b;return f|0}function Ze(d){d=d|0;var f=0,g=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;l=f;j=f+8|0;k=f+20|0;c[g>>2]=d;if((b[(c[g>>2]|0)+28>>1]&12|0)!=0){i=f;return}a[k>>0]=a[(c[g>>2]|0)+30>>0]|0;if((b[(c[g>>2]|0)+28>>1]&2|0)==0){i=f;return}if((zt(c[(c[g>>2]|0)+4>>2]|0,l,c[(c[g>>2]|0)+24>>2]|0,a[k>>0]|0)|0)==0){i=f;return}if(0==(Pg(c[(c[g>>2]|0)+4>>2]|0,j,c[(c[g>>2]|0)+24>>2]|0,a[k>>0]|0)|0)){k=c[j+4>>2]|0;l=(c[g>>2]|0)+16|0;c[l>>2]=c[j>>2];c[l+4>>2]=k;l=(c[g>>2]|0)+28|0;b[l>>1]=e[l>>1]|0|4;i=f;return}else{h[(c[g>>2]|0)+8>>3]=+h[l>>3];l=(c[g>>2]|0)+28|0;b[l>>1]=e[l>>1]|0|8;i=f;return}}function _e(f,g,h,j,k,l,m,n){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;p=i;i=i+96|0;v=p+8|0;t=p+84|0;I=p+80|0;y=p+76|0;o=p+72|0;G=p;E=p+68|0;x=p+64|0;H=p+60|0;z=p+56|0;s=p+52|0;w=p+88|0;C=p+24|0;q=p+12|0;u=p+16|0;r=p+20|0;K=p+28|0;B=p+36|0;A=p+40|0;J=p+44|0;F=p+32|0;D=p+48|0;c[t>>2]=f;c[I>>2]=g;c[y>>2]=h;c[o>>2]=j;f=G;c[f>>2]=k;c[f+4>>2]=l;c[E>>2]=m;c[x>>2]=n;c[H>>2]=0;c[s>>2]=0;c[w>>2]=0;c[q>>2]=0;c[u>>2]=0;c[E>>2]=((c[E>>2]|0)!=0^1^1)&1;c[c[x>>2]>>2]=0;c[u>>2]=ve(c[t>>2]|0,28)|0;a:do{if((c[u>>2]|0)!=0){c[q>>2]=$e(c[t>>2]|0,536)|0;if((c[q>>2]|0)!=0){while(1){aL(c[q>>2]|0,0,536)|0;c[c[q>>2]>>2]=c[t>>2];cc(c[t>>2]|0,c[w>>2]|0);c[w>>2]=0;Yb(c[t>>2]|0);c[C>>2]=af(c[q>>2]|0,0,c[y>>2]|0,c[I>>2]|0)|0;if((c[C>>2]|0)!=0){if((a[(c[C>>2]|0)+44>>0]&16|0)!=0){c[C>>2]=0;f=c[q>>2]|0;c[v>>2]=c[y>>2];bf(f,1584,v)}}if((c[C>>2]|0)!=0){if((a[(c[C>>2]|0)+44>>0]&32|0)!=0){c[C>>2]=0;f=c[q>>2]|0;c[v>>2]=c[y>>2];bf(f,1616,v)}}if((c[C>>2]|0)!=0){if((c[(c[C>>2]|0)+12>>2]|0)!=0){c[C>>2]=0;f=c[q>>2]|0;c[v>>2]=c[y>>2];bf(f,1656,v)}}if((c[C>>2]|0)==0){y=13;break}c[z>>2]=0;while(1){if((c[z>>2]|0)>=(b[(c[C>>2]|0)+38>>1]|0)){break}if((Dc(c[(c[(c[C>>2]|0)+4>>2]|0)+((c[z>>2]|0)*24|0)>>2]|0,c[o>>2]|0)|0)==0){break}c[z>>2]=(c[z>>2]|0)+1}if((c[z>>2]|0)==(b[(c[C>>2]|0)+38>>1]|0)){y=21;break}if((c[E>>2]|0)!=0){c[r>>2]=0;b:do{if((c[(c[t>>2]|0)+24>>2]&524288|0)!=0){c[B>>2]=c[(c[C>>2]|0)+16>>2];while(1){if((c[B>>2]|0)==0){break b}c[A>>2]=0;while(1){if((c[A>>2]|0)>=(c[(c[B>>2]|0)+20>>2]|0)){break}if((c[(c[B>>2]|0)+36+(c[A>>2]<<3)>>2]|0)==(c[z>>2]|0)){c[r>>2]=1704}c[A>>2]=(c[A>>2]|0)+1}c[B>>2]=c[(c[B>>2]|0)+4>>2]}}}while(0);c[K>>2]=c[(c[C>>2]|0)+8>>2];while(1){if((c[K>>2]|0)==0){break}c[J>>2]=0;while(1){if((c[J>>2]|0)>=(e[(c[K>>2]|0)+50>>1]|0)){break}if((b[(c[(c[K>>2]|0)+4>>2]|0)+(c[J>>2]<<1)>>1]|0)==(c[z>>2]|0)){c[r>>2]=1720}c[J>>2]=(c[J>>2]|0)+1}c[K>>2]=c[(c[K>>2]|0)+20>>2]}if((c[r>>2]|0)!=0){y=41;break}}f=df(c[q>>2]|0)|0;c[(c[u>>2]|0)+20>>2]=f;if((c[(c[u>>2]|0)+20>>2]|0)!=0){c[F>>2]=c[(c[u>>2]|0)+20>>2];c[D>>2]=ef(c[t>>2]|0,c[(c[C>>2]|0)+68>>2]|0)|0;ff(c[F>>2]|0,4,c[D>>2]|0,c[E>>2]|0,c[c[(c[C>>2]|0)+68>>2]>>2]|0,c[(c[(c[C>>2]|0)+68>>2]|0)+4>>2]|0)|0;gf(c[F>>2]|0,1);hf(c[F>>2]|0,10,1544,0)|0;jf(c[F>>2]|0,c[D>>2]|0);kf(c[F>>2]|0,1,c[D>>2]|0);lf(c[F>>2]|0,1,c[(c[C>>2]|0)+32>>2]|0);mf(c[F>>2]|0,1,c[E>>2]|0);nf(c[F>>2]|0,1,c[c[C>>2]>>2]|0,0);of(c[F>>2]|0,3-(c[E>>2]|0)|0);lf(c[F>>2]|0,2+(c[E>>2]|0)|0,c[(c[C>>2]|0)+32>>2]|0);mf(c[F>>2]|0,2+(c[E>>2]|0)|0,c[D>>2]|0);nf(c[F>>2]|0,2+(c[E>>2]|0)|0,(b[(c[C>>2]|0)+38>>1]|0)+1|0,-14);lf(c[F>>2]|0,6,b[(c[C>>2]|0)+38>>1]|0);if((a[(c[t>>2]|0)+64>>0]|0)==0){c[(c[q>>2]|0)+440>>2]=1;c[(c[q>>2]|0)+72>>2]=1;c[(c[q>>2]|0)+68>>2]=1;pf(c[F>>2]|0,c[q>>2]|0)}}c[c[u>>2]>>2]=c[E>>2];c[(c[u>>2]|0)+12>>2]=c[z>>2];c[(c[u>>2]|0)+24>>2]=c[t>>2];if((a[(c[t>>2]|0)+64>>0]|0)!=0){break a}f=G;Pe(c[(c[u>>2]|0)+20>>2]|0,1,c[f>>2]|0,c[f+4>>2]|0)|0;f=G;c[s>>2]=qf(c[u>>2]|0,c[f>>2]|0,c[f+4>>2]|0,w)|0;f=(c[H>>2]|0)+1|0;c[H>>2]=f;if((f|0)>=50){break a}if((c[s>>2]|0)!=17){break a}}if((y|0)==13){if((c[(c[q>>2]|0)+4>>2]|0)!=0){cc(c[t>>2]|0,c[w>>2]|0);c[w>>2]=c[(c[q>>2]|0)+4>>2];c[(c[q>>2]|0)+4>>2]=0}c[s>>2]=1;break}else if((y|0)==21){cc(c[t>>2]|0,c[w>>2]|0);f=c[t>>2]|0;c[v>>2]=c[o>>2];c[w>>2]=cf(f,1680,v)|0;c[s>>2]=1;break}else if((y|0)==41){cc(c[t>>2]|0,c[w>>2]|0);f=c[t>>2]|0;c[v>>2]=c[r>>2];c[w>>2]=cf(f,1728,v)|0;c[s>>2]=1;break}}}}while(0);if((c[s>>2]|0)==0){if((d[(c[t>>2]|0)+64>>0]|0)==0){c[c[x>>2]>>2]=c[u>>2];h=c[t>>2]|0;f=c[s>>2]|0;g=c[w>>2]|0;g=(g|0)!=0;g=g?1768:0;j=c[w>>2]|0;c[v>>2]=j;Rc(h,f,g,v);g=c[t>>2]|0;f=c[w>>2]|0;cc(g,f);f=c[q>>2]|0;rf(f);f=c[t>>2]|0;g=c[q>>2]|0;cc(f,g);g=c[t>>2]|0;f=c[s>>2]|0;f=Bd(g,f)|0;c[s>>2]=f;f=c[s>>2]|0;i=p;return f|0}}if((c[u>>2]|0)!=0){if((c[(c[u>>2]|0)+20>>2]|0)!=0){Ad(c[(c[u>>2]|0)+20>>2]|0)|0}}cc(c[t>>2]|0,c[u>>2]|0);h=c[t>>2]|0;f=c[s>>2]|0;g=c[w>>2]|0;g=(g|0)!=0;g=g?1768:0;j=c[w>>2]|0;c[v>>2]=j;Rc(h,f,g,v);g=c[t>>2]|0;f=c[w>>2]|0;cc(g,f);f=c[q>>2]|0;rf(f);f=c[t>>2]|0;g=c[q>>2]|0;cc(f,g);g=c[t>>2]|0;f=c[s>>2]|0;f=Bd(g,f)|0;c[s>>2]=f;f=c[s>>2]|0;i=p;return f|0}function $e(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;k=f;h=f+4|0;j=f+8|0;l=f+12|0;c[k>>2]=b;c[h>>2]=d;do{if((c[k>>2]|0)!=0){if((a[(c[k>>2]|0)+64>>0]|0)!=0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}if((a[(c[k>>2]|0)+242>>0]|0)!=0){d=(c[k>>2]|0)+240|0;if((c[h>>2]|0)>(e[(c[k>>2]|0)+240>>1]|0)){b=d+16|0;c[b>>2]=(c[b>>2]|0)+1;break}b=c[d+24>>2]|0;c[l>>2]=b;if((b|0)==0){b=(c[k>>2]|0)+260|0;c[b>>2]=(c[b>>2]|0)+1;break}c[(c[k>>2]|0)+264>>2]=c[c[l>>2]>>2];b=(c[k>>2]|0)+244|0;c[b>>2]=(c[b>>2]|0)+1;b=(c[k>>2]|0)+252|0;c[b>>2]=(c[b>>2]|0)+1;if((c[(c[k>>2]|0)+244>>2]|0)>(c[(c[k>>2]|0)+248>>2]|0)){c[(c[k>>2]|0)+248>>2]=c[(c[k>>2]|0)+244>>2]}c[g>>2]=c[l>>2];b=c[g>>2]|0;i=f;return b|0}}}while(0);c[j>>2]=nc(c[h>>2]|0)|0;if((c[j>>2]|0)==0){if((c[k>>2]|0)!=0){a[(c[k>>2]|0)+64>>0]=1}}c[g>>2]=c[j>>2];b=c[g>>2]|0;i=f;return b|0}function af(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+48|0;k=l;g=l+36|0;m=l+12|0;p=l+16|0;j=l+20|0;h=l+24|0;n=l+28|0;o=l+32|0;c[m>>2]=b;c[p>>2]=d;c[j>>2]=e;c[h>>2]=f;if(0!=(gy(c[m>>2]|0)|0)){c[g>>2]=0;b=c[g>>2]|0;i=l;return b|0}c[n>>2]=cw(c[c[m>>2]>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;if((c[n>>2]|0)==0){c[o>>2]=(c[p>>2]|0)!=0?37576:37592;p=c[m>>2]|0;o=c[o>>2]|0;if((c[h>>2]|0)!=0){d=c[h>>2]|0;b=c[j>>2]|0;c[k>>2]=o;c[k+4>>2]=d;c[k+8>>2]=b;bf(p,23792,k)}else{b=c[j>>2]|0;c[k>>2]=o;c[k+4>>2]=b;bf(p,23808,k)}a[(c[m>>2]|0)+17>>0]=1}c[g>>2]=c[n>>2];b=c[g>>2]|0;i=l;return b|0}function bf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;j=f+28|0;l=f;g=f+4|0;k=f+8|0;h=f+24|0;c[j>>2]=b;c[l>>2]=d;c[h>>2]=c[c[j>>2]>>2];c[k>>2]=e;c[g>>2]=iu(c[h>>2]|0,c[l>>2]|0,k)|0;if((a[(c[h>>2]|0)+67>>0]|0)!=0){cc(c[h>>2]|0,c[g>>2]|0);i=f;return}else{l=(c[j>>2]|0)+64|0;c[l>>2]=(c[l>>2]|0)+1;cc(c[h>>2]|0,c[(c[j>>2]|0)+4>>2]|0);c[(c[j>>2]|0)+4>>2]=c[g>>2];c[(c[j>>2]|0)+12>>2]=1;i=f;return}}function cf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+32|0;j=f+28|0;h=f;g=f+8|0;e=f+24|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[e>>2]=iu(c[j>>2]|0,c[h>>2]|0,g)|0;i=f;return c[e>>2]|0}function df(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;g=b;e=b+4|0;f=b+8|0;c[g>>2]=a;c[e>>2]=c[c[g>>2]>>2];c[f>>2]=ve(c[e>>2]|0,208)|0;if((c[f>>2]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}c[c[f>>2]>>2]=c[e>>2];if((c[(c[e>>2]|0)+4>>2]|0)!=0){c[(c[(c[e>>2]|0)+4>>2]|0)+48>>2]=c[f>>2]}c[(c[f>>2]|0)+52>>2]=c[(c[e>>2]|0)+4>>2];c[(c[f>>2]|0)+48>>2]=0;c[(c[e>>2]|0)+4>>2]=c[f>>2];c[(c[f>>2]|0)+40>>2]=649915045;c[(c[f>>2]|0)+24>>2]=c[g>>2];c[d>>2]=c[f>>2];g=c[d>>2]|0;i=b;return g|0}function ef(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=-1e6;if((c[g>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){b=6;break}if((c[(c[(c[f>>2]|0)+16>>2]|0)+(c[e>>2]<<4)+12>>2]|0)==(c[g>>2]|0)){b=6;break}c[e>>2]=(c[e>>2]|0)+1}if((b|0)==6){a=c[e>>2]|0;i=d;return a|0}return 0}function ff(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;l=j+24|0;p=j;o=j+4|0;n=j+8|0;m=j+12|0;k=j+16|0;h=j+20|0;c[l>>2]=a;c[p>>2]=b;c[o>>2]=d;c[n>>2]=e;c[m>>2]=f;c[k>>2]=g;c[h>>2]=Tv(c[l>>2]|0,c[p>>2]|0,c[o>>2]|0,c[n>>2]|0,c[m>>2]|0)|0;nf(c[l>>2]|0,c[h>>2]|0,c[k>>2]|0,-14);i=j;return c[h>>2]|0}function gf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e;f=e+4|0;c[g>>2]=b;a[f>>0]=d;if((c[(c[g>>2]|0)+4>>2]|0)==0){i=e;return}a[(c[(c[g>>2]|0)+4>>2]|0)+(((c[(c[g>>2]|0)+32>>2]|0)-1|0)*20|0)+3>>0]=a[f>>0]|0;i=e;return}function hf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+48|0;h=n+36|0;k=n+32|0;l=n+28|0;q=n+24|0;j=n+16|0;o=n+8|0;m=n+4|0;g=n;p=n+12|0;c[k>>2]=b;c[l>>2]=d;c[q>>2]=e;c[n+20>>2]=f;if(((c[(c[k>>2]|0)+32>>2]|0)+(c[l>>2]|0)|0)>(c[(c[(c[k>>2]|0)+24>>2]|0)+84>>2]|0)){if((Uv(c[k>>2]|0)|0)!=0){c[h>>2]=0;b=c[h>>2]|0;i=n;return b|0}}c[j>>2]=c[(c[k>>2]|0)+32>>2];if((c[l>>2]|0)>0){c[m>>2]=c[q>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[l>>2]|0)){break}c[g>>2]=a[(c[m>>2]|0)+2>>0]|0;c[p>>2]=(c[(c[k>>2]|0)+4>>2]|0)+(((c[o>>2]|0)+(c[j>>2]|0)|0)*20|0);a[c[p>>2]>>0]=a[c[m>>2]>>0]|0;c[(c[p>>2]|0)+4>>2]=a[(c[m>>2]|0)+1>>0]|0;if((c[g>>2]|0)<0){c[(c[p>>2]|0)+8>>2]=(c[j>>2]|0)+(-1-(c[g>>2]|0))}else{c[(c[p>>2]|0)+8>>2]=c[g>>2]}c[(c[p>>2]|0)+12>>2]=a[(c[m>>2]|0)+3>>0]|0;a[(c[p>>2]|0)+1>>0]=0;c[(c[p>>2]|0)+16>>2]=0;a[(c[p>>2]|0)+3>>0]=0;c[o>>2]=(c[o>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+4}b=(c[k>>2]|0)+32|0;c[b>>2]=(c[b>>2]|0)+(c[l>>2]|0)}c[h>>2]=c[j>>2];b=c[h>>2]|0;i=n;return b|0}function jf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=(c[f>>2]|0)+96|0;c[a>>2]=c[a>>2]|1<>2];i=d;return}function kf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;h=e;f=e+4|0;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;if(!((c[(c[g>>2]|0)+32>>2]|0)>>>0>(c[h>>2]|0)>>>0)){i=e;return}c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*20|0)+4>>2]=c[f>>2];i=e;return}function lf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;h=e;f=e+4|0;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;if(!((c[(c[g>>2]|0)+32>>2]|0)>>>0>(c[h>>2]|0)>>>0)){i=e;return}c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*20|0)+8>>2]=c[f>>2];i=e;return}function mf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;h=e;f=e+4|0;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;if(!((c[(c[g>>2]|0)+32>>2]|0)>>>0>(c[h>>2]|0)>>>0)){i=e;return}c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*20|0)+12>>2]=c[f>>2];i=e;return}function nf(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;k=j+20|0;o=j;h=j+4|0;m=j+8|0;l=j+12|0;n=j+16|0;c[k>>2]=b;c[o>>2]=e;c[h>>2]=f;c[m>>2]=g;c[n>>2]=c[c[k>>2]>>2];if((c[(c[k>>2]|0)+4>>2]|0)!=0){if((d[(c[n>>2]|0)+64>>0]|0)==0){if((c[o>>2]|0)<0){c[o>>2]=(c[(c[k>>2]|0)+32>>2]|0)-1}c[l>>2]=(c[(c[k>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0);oF(c[n>>2]|0,a[(c[l>>2]|0)+1>>0]|0,c[(c[l>>2]|0)+16>>2]|0);c[(c[l>>2]|0)+16>>2]=0;n=c[h>>2]|0;if((c[m>>2]|0)==-14){c[(c[l>>2]|0)+16>>2]=n;a[(c[l>>2]|0)+1>>0]=-14;i=j;return}if((n|0)==0){c[(c[l>>2]|0)+16>>2]=0;a[(c[l>>2]|0)+1>>0]=0;i=j;return}if((c[m>>2]|0)==-6){c[(c[l>>2]|0)+16>>2]=c[h>>2];a[(c[l>>2]|0)+1>>0]=-6;i=j;return}if((c[m>>2]|0)==-10){c[(c[l>>2]|0)+16>>2]=c[h>>2];a[(c[l>>2]|0)+1>>0]=-10;qF(c[h>>2]|0);i=j;return}if((c[m>>2]|0)<0){c[(c[l>>2]|0)+16>>2]=c[h>>2];a[(c[l>>2]|0)+1>>0]=c[m>>2];i=j;return}if((c[m>>2]|0)==0){c[m>>2]=Ub(c[h>>2]|0)|0}b=ft(c[c[k>>2]>>2]|0,c[h>>2]|0,c[m>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=b;a[(c[l>>2]|0)+1>>0]=-1;i=j;return}}if(!((c[m>>2]|0)!=-10)){i=j;return}oF(c[n>>2]|0,c[m>>2]|0,c[h>>2]|0);i=j;return}function of(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e;h=e+4|0;j=e+8|0;c[f>>2]=b;c[g>>2]=d;if((c[(c[f>>2]|0)+4>>2]|0)==0){i=e;return}c[h>>2]=(c[(c[f>>2]|0)+4>>2]|0)+((c[g>>2]|0)*20|0);c[j>>2]=c[c[f>>2]>>2];oF(c[j>>2]|0,a[(c[h>>2]|0)+1>>0]|0,c[(c[h>>2]|0)+16>>2]|0);b=c[h>>2]|0;c[b+0>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;a[c[h>>2]>>0]=-100;if((c[g>>2]|0)!=((c[(c[f>>2]|0)+32>>2]|0)-1|0)){i=e;return}b=(c[f>>2]|0)+32|0;c[b>>2]=(c[b>>2]|0)+ -1;i=e;return}function pf(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=i;i=i+48|0;o=t+44|0;l=t+40|0;k=t+36|0;j=t+32|0;r=t+28|0;m=t+24|0;s=t+20|0;g=t+12|0;n=t+8|0;h=t+4|0;q=t;p=t+16|0;c[o>>2]=e;c[l>>2]=f;c[k>>2]=c[c[o>>2]>>2];c[j>>2]=c[(c[l>>2]|0)+440>>2];c[r>>2]=c[(c[l>>2]|0)+72>>2];c[m>>2]=c[(c[l>>2]|0)+68>>2];c[s>>2]=c[(c[l>>2]|0)+392>>2];e=c[(c[l>>2]|0)+80>>2]|0;c[g>>2]=e;c[g>>2]=(c[g>>2]|0)==0?1:e;c[r>>2]=(c[r>>2]|0)+(c[m>>2]|0);c[h>>2]=(c[(c[o>>2]|0)+4>>2]|0)+((c[(c[o>>2]|0)+32>>2]|0)*20|0);c[q>>2]=(c[(c[o>>2]|0)+4>>2]|0)+((c[(c[l>>2]|0)+84>>2]|0)*20|0);XC(c[o>>2]|0,s);if((d[(c[l>>2]|0)+20>>0]|0)!=0){f=(d[(c[l>>2]|0)+21>>0]|0)!=0}else{f=0}e=(c[o>>2]|0)+88|0;b[e>>1]=b[e>>1]&-129|(f&1&255&1)<<7&65535;if((d[(c[l>>2]|0)+450>>0]|0)!=0){if((c[r>>2]|0)<10){c[r>>2]=10}}aL(c[h>>2]|0,0,(c[q>>2]|0)-(c[h>>2]|0)|0)|0;c[h>>2]=(c[h>>2]|0)+((c[h>>2]|0)-0&7);e=(c[o>>2]|0)+88|0;b[e>>1]=b[e>>1]&-33;do{c[p>>2]=0;e=nF(c[(c[o>>2]|0)+8>>2]|0,(c[r>>2]|0)*40|0,h,c[q>>2]|0,p)|0;c[(c[o>>2]|0)+8>>2]=e;e=nF(c[(c[o>>2]|0)+60>>2]|0,(c[j>>2]|0)*40|0,h,c[q>>2]|0,p)|0;c[(c[o>>2]|0)+60>>2]=e;e=nF(c[(c[o>>2]|0)+12>>2]|0,c[s>>2]<<2,h,c[q>>2]|0,p)|0;c[(c[o>>2]|0)+12>>2]=e;e=nF(c[(c[o>>2]|0)+64>>2]|0,c[j>>2]<<2,h,c[q>>2]|0,p)|0;c[(c[o>>2]|0)+64>>2]=e;e=nF(c[(c[o>>2]|0)+56>>2]|0,c[m>>2]<<2,h,c[q>>2]|0,p)|0;c[(c[o>>2]|0)+56>>2]=e;e=nF(c[(c[o>>2]|0)+200>>2]|0,c[g>>2]|0,h,c[q>>2]|0,p)|0;c[(c[o>>2]|0)+200>>2]=e;if((c[p>>2]|0)!=0){e=ve(c[k>>2]|0,c[p>>2]|0)|0;c[(c[o>>2]|0)+172>>2]=e}c[h>>2]=c[(c[o>>2]|0)+172>>2];c[q>>2]=(c[h>>2]|0)+(c[p>>2]|0);if((c[p>>2]|0)==0){break}}while((a[(c[k>>2]|0)+64>>0]|0)!=0^1);c[(c[o>>2]|0)+36>>2]=c[m>>2];c[(c[o>>2]|0)+196>>2]=c[g>>2];a:do{if((c[(c[o>>2]|0)+60>>2]|0)!=0){b[(c[o>>2]|0)+68>>1]=c[j>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[j>>2]|0)){break a}b[(c[(c[o>>2]|0)+60>>2]|0)+((c[n>>2]|0)*40|0)+28>>1]=1;c[(c[(c[o>>2]|0)+60>>2]|0)+((c[n>>2]|0)*40|0)>>2]=c[k>>2];c[n>>2]=(c[n>>2]|0)+1}}}while(0);if((c[(c[o>>2]|0)+64>>2]|0)!=0){b[(c[o>>2]|0)+70>>1]=c[(c[l>>2]|0)+444>>2];fL(c[(c[o>>2]|0)+64>>2]|0,c[(c[l>>2]|0)+472>>2]|0,b[(c[o>>2]|0)+70>>1]<<2|0)|0;aL(c[(c[l>>2]|0)+472>>2]|0,0,c[(c[l>>2]|0)+444>>2]<<2|0)|0}if((c[(c[o>>2]|0)+8>>2]|0)==0){f=c[l>>2]|0;f=f+450|0;f=a[f>>0]|0;f=f&255;e=c[o>>2]|0;e=e+88|0;f=f&65535;s=b[e>>1]|0;f=f&3;s=s&-4;f=s|f;b[e>>1]=f;e=c[o>>2]|0;Ed(e);i=t;return}e=(c[o>>2]|0)+8|0;c[e>>2]=(c[e>>2]|0)+ -40;c[(c[o>>2]|0)+28>>2]=c[r>>2];c[n>>2]=1;while(1){if((c[n>>2]|0)>(c[r>>2]|0)){break}b[(c[(c[o>>2]|0)+8>>2]|0)+((c[n>>2]|0)*40|0)+28>>1]=128;c[(c[(c[o>>2]|0)+8>>2]|0)+((c[n>>2]|0)*40|0)>>2]=c[k>>2];c[n>>2]=(c[n>>2]|0)+1}f=c[l>>2]|0;f=f+450|0;f=a[f>>0]|0;f=f&255;e=c[o>>2]|0;e=e+88|0;f=f&65535;s=b[e>>1]|0;f=f&3;s=s&-4;f=s|f;b[e>>1]=f;e=c[o>>2]|0;Ed(e);i=t;return}function qf(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+48|0;l=j+8|0;m=j+36|0;k=j;h=j+32|0;n=j+40|0;g=j+24|0;q=j+16|0;p=j+28|0;o=j+20|0;c[m>>2]=a;a=k;c[a>>2]=d;c[a+4>>2]=e;c[h>>2]=f;c[g>>2]=0;c[q>>2]=c[(c[m>>2]|0)+20>>2];e=k;d=c[e+4>>2]|0;a=(c[(c[q>>2]|0)+60>>2]|0)+16|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[n>>2]=le(c[(c[m>>2]|0)+20>>2]|0)|0;do{if((c[n>>2]|0)==100){c[p>>2]=c[c[(c[q>>2]|0)+56>>2]>>2];c[o>>2]=c[(c[p>>2]|0)+88+(c[(c[m>>2]|0)+12>>2]<<2)>>2];f=c[m>>2]|0;if(!((c[o>>2]|0)>>>0<12)){c[(c[m>>2]|0)+8>>2]=c[(c[p>>2]|0)+88+((c[f+12>>2]|0)+(b[(c[p>>2]|0)+20>>1]|0)<<2)>>2];a=yD(c[o>>2]|0)|0;c[(c[m>>2]|0)+4>>2]=a;c[(c[m>>2]|0)+16>>2]=c[c[p>>2]>>2];mF(c[(c[m>>2]|0)+16>>2]|0);break}p=c[f+24>>2]|0;if((c[o>>2]|0)==0){o=16424}else{o=(c[o>>2]|0)==7?16408:16392}c[l>>2]=o;c[g>>2]=cf(p,37608,l)|0;c[n>>2]=1;yd(c[(c[m>>2]|0)+20>>2]|0)|0;c[(c[m>>2]|0)+20>>2]=0}}while(0);if((c[n>>2]|0)==100){c[n>>2]=0;d=c[g>>2]|0;a=c[h>>2]|0;c[a>>2]=d;a=c[n>>2]|0;i=j;return a|0}if((c[(c[m>>2]|0)+20>>2]|0)==0){d=c[g>>2]|0;a=c[h>>2]|0;c[a>>2]=d;a=c[n>>2]|0;i=j;return a|0}c[n>>2]=yd(c[(c[m>>2]|0)+20>>2]|0)|0;c[(c[m>>2]|0)+20>>2]=0;o=c[(c[m>>2]|0)+24>>2]|0;if((c[n>>2]|0)==0){e=k;a=c[e+4>>2]|0;d=l;c[d>>2]=c[e>>2];c[d+4>>2]=a;c[g>>2]=cf(o,37640,l)|0;c[n>>2]=1;d=c[g>>2]|0;a=c[h>>2]|0;c[a>>2]=d;a=c[n>>2]|0;i=j;return a|0}else{c[l>>2]=Ff(c[(c[m>>2]|0)+24>>2]|0)|0;c[g>>2]=cf(o,1768,l)|0;d=c[g>>2]|0;a=c[h>>2]|0;c[a>>2]=d;a=c[n>>2]|0;i=j;return a|0}return 0}function rf(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}c[e>>2]=c[c[d>>2]>>2];cc(c[e>>2]|0,c[(c[d>>2]|0)+112>>2]|0);cu(c[e>>2]|0,c[(c[d>>2]|0)+316>>2]|0);i=b;return}function sf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;g=b+12|0;e=b;d=b+4|0;f=b+8|0;c[g>>2]=a;c[e>>2]=c[g>>2];if((c[e>>2]|0)!=0){c[f>>2]=c[(c[e>>2]|0)+24>>2];c[d>>2]=yd(c[(c[e>>2]|0)+20>>2]|0)|0;cc(c[f>>2]|0,c[e>>2]|0);g=c[d>>2]|0;i=b;return g|0}else{c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}return 0}function tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=uf(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0,9)|0;i=f;return a|0}function uf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=i;i=i+48|0;m=p;j=p+36|0;t=p+32|0;s=p+28|0;r=p+24|0;q=p+40|0;g=p+12|0;l=p+8|0;o=p+4|0;n=p+16|0;k=p+20|0;c[t>>2]=a;c[s>>2]=b;c[r>>2]=d;c[q>>2]=e;c[g>>2]=f;c[o>>2]=c[t>>2];if((c[o>>2]|0)==0){c[j>>2]=Xb(74274)|0;t=c[j>>2]|0;i=p;return t|0}c[k>>2]=c[(c[o>>2]|0)+24>>2];c[n>>2]=c[(c[o>>2]|0)+20>>2];do{if((c[r>>2]|0)<0){h=6}else{if((c[q>>2]|0)<0){h=6}else{if(((c[q>>2]|0)+(c[r>>2]|0)|0)>(c[(c[o>>2]|0)+4>>2]|0)){h=6}else{if((c[n>>2]|0)==0){c[l>>2]=4;break}c[l>>2]=xb[c[g>>2]&31](c[(c[o>>2]|0)+16>>2]|0,(c[q>>2]|0)+(c[(c[o>>2]|0)+8>>2]|0)|0,c[r>>2]|0,c[s>>2]|0)|0;if((c[l>>2]|0)==4){Ad(c[n>>2]|0)|0;c[(c[o>>2]|0)+20>>2]=0;break}else{c[(c[k>>2]|0)+52>>2]=c[l>>2];c[(c[n>>2]|0)+80>>2]=c[l>>2];break}}}}}while(0);if((h|0)==6){c[l>>2]=1;Rc(c[k>>2]|0,1,0,m)}c[l>>2]=Bd(c[k>>2]|0,c[l>>2]|0)|0;c[j>>2]=c[l>>2];t=c[j>>2]|0;i=p;return t|0}function vf(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;h=m+20|0;k=m;l=m+4|0;g=m+8|0;n=m+12|0;j=m+16|0;c[k>>2]=a;c[l>>2]=b;c[g>>2]=e;c[n>>2]=f;if((d[(c[k>>2]|0)+81>>0]|0|0)==0){c[h>>2]=4;a=c[h>>2]|0;i=m;return a|0}if((d[(c[k>>2]|0)+81>>0]|0|0)>=3){f=_C(c[k>>2]|0)|0}else{f=0}c[j>>2]=f;if((c[j>>2]|0)==0){c[j>>2]=oD(c[k>>2]|0,c[l>>2]|0,c[g>>2]|0,c[n>>2]|0,0)|0}c[h>>2]=c[j>>2];a=c[h>>2]|0;i=m;return a|0}function wf(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];if((c[d>>2]|0)==0){e=0;i=b;return e|0}if((c[(c[d>>2]|0)+20>>2]|0)==0){e=0;i=b;return e|0}e=c[(c[d>>2]|0)+4>>2]|0;i=b;return e|0}function xf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+48|0;k=j+8|0;f=j+32|0;n=j+12|0;l=j;h=j+16|0;m=j+20|0;g=j+24|0;e=j+28|0;c[n>>2]=a;a=l;c[a>>2]=b;c[a+4>>2]=d;c[m>>2]=c[n>>2];if((c[m>>2]|0)==0){c[f>>2]=Xb(74349)|0;n=c[f>>2]|0;i=j;return n|0}c[g>>2]=c[(c[m>>2]|0)+24>>2];if((c[(c[m>>2]|0)+20>>2]|0)==0){c[h>>2]=4}else{n=l;c[h>>2]=qf(c[m>>2]|0,c[n>>2]|0,c[n+4>>2]|0,e)|0;if((c[h>>2]|0)!=0){b=c[g>>2]|0;a=c[h>>2]|0;n=(c[e>>2]|0)!=0?1768:0;c[k>>2]=c[e>>2];Rc(b,a,n,k);cc(c[g>>2]|0,c[e>>2]|0)}}c[h>>2]=Bd(c[g>>2]|0,c[h>>2]|0)|0;c[f>>2]=c[h>>2];n=c[f>>2]|0;i=j;return n|0}function yf(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+4>>2];while(1){if((c[e>>2]|0)==0){break}f=(c[e>>2]|0)+88|0;b[f>>1]=b[f>>1]&-33|32;c[e>>2]=c[(c[e>>2]|0)+52>>2]}i=d;return}function zf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=(Af(c[f>>2]|0,c[e>>2]|0,1776,0)|0)==0&1;i=d;return a|0}function Af(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;k=i;i=i+48|0;n=k+40|0;m=k+36|0;j=k+32|0;h=k+28|0;l=k+12|0;o=k+16|0;p=k+20|0;y=k+8|0;x=k+4|0;s=k+47|0;t=k+46|0;r=k+45|0;q=k+44|0;v=k;w=k+24|0;c[m>>2]=b;c[j>>2]=e;c[h>>2]=f;c[l>>2]=g;a[s>>0]=a[(c[h>>2]|0)+1>>0]|0;a[t>>0]=a[c[h>>2]>>0]|0;a[r>>0]=a[(c[h>>2]|0)+2>>0]|0;a[q>>0]=a[(c[h>>2]|0)+3>>0]|0;c[v>>2]=0;while(1){b=It(m)|0;c[o>>2]=b;if((b|0)==0){u=84;break}if((c[o>>2]|0)==(d[t>>0]|0)){if((c[v>>2]|0)==0){u=5;break}}if((c[o>>2]|0)==(d[s>>0]|0)){if((c[v>>2]|0)==0){if((It(j)|0)==0){u=45;break}else{continue}}}if((c[o>>2]|0)!=(d[r>>0]|0)){if((c[l>>2]|0)==(c[o>>2]|0)){if((c[v>>2]|0)==0){c[v>>2]=1;continue}}c[p>>2]=It(j)|0;if((a[q>>0]|0)!=0){if((c[o>>2]&-128|0)==0){c[o>>2]=d[784+(c[o>>2]|0)>>0]|0}if((c[p>>2]&-128|0)==0){c[p>>2]=d[784+(c[p>>2]|0)>>0]|0}}if((c[o>>2]|0)!=(c[p>>2]|0)){u=82;break}c[v>>2]=0;continue}c[w>>2]=0;c[x>>2]=0;c[y>>2]=0;c[o>>2]=It(j)|0;if((c[o>>2]|0)==0){u=48;break}c[p>>2]=It(m)|0;if((c[p>>2]|0)==94){c[y>>2]=1;c[p>>2]=It(m)|0}if((c[p>>2]|0)==93){if((c[o>>2]|0)==93){c[x>>2]=1}c[p>>2]=It(m)|0}while(1){if((c[p>>2]|0)!=0){f=(c[p>>2]|0)!=93}else{f=0}g=c[p>>2]|0;if(!f){break}if((g|0)==45){if((d[c[m>>2]>>0]|0)!=93){if((d[c[m>>2]>>0]|0)!=0){if((c[w>>2]|0)>>>0>0){c[p>>2]=It(m)|0;if((c[o>>2]|0)>>>0>=(c[w>>2]|0)>>>0){if((c[o>>2]|0)>>>0<=(c[p>>2]|0)>>>0){c[x>>2]=1}}c[w>>2]=0}else{u=66}}else{u=66}}else{u=66}}else{u=66}if((u|0)==66){u=0;if((c[o>>2]|0)==(c[p>>2]|0)){c[x>>2]=1}c[w>>2]=c[p>>2]}c[p>>2]=It(m)|0}if((g|0)==0){u=72;break}if((c[x>>2]^c[y>>2]|0)==0){u=72;break}}if((u|0)==5){while(1){u=0;b=It(m)|0;c[o>>2]=b;if((b|0)==(d[t>>0]|0)){w=1}else{w=(c[o>>2]|0)==(d[s>>0]|0)}v=c[o>>2]|0;if(!w){break}if((v|0)!=(d[s>>0]|0)){u=5;continue}if((It(j)|0)==0){u=10;break}else{u=5}}if((u|0)==10){c[n>>2]=0;b=c[n>>2]|0;i=k;return b|0}if((v|0)==0){c[n>>2]=1;b=c[n>>2]|0;i=k;return b|0}if((c[o>>2]|0)==(c[l>>2]|0)){c[o>>2]=It(m)|0;if((c[o>>2]|0)==0){c[n>>2]=0;b=c[n>>2]|0;i=k;return b|0}}else{if((c[o>>2]|0)==(d[r>>0]|0)){a:while(1){if((d[c[j>>2]>>0]|0)!=0){p=(Af((c[m>>2]|0)+ -1|0,c[j>>2]|0,c[h>>2]|0,c[l>>2]|0)|0)==0}else{p=0}o=c[j>>2]|0;if(!p){break}c[j>>2]=o+1;if((d[o>>0]|0)<192){continue}while(1){if((a[c[j>>2]>>0]&192|0)!=128){continue a}c[j>>2]=(c[j>>2]|0)+1}}c[n>>2]=(d[o>>0]|0)!=0&1;b=c[n>>2]|0;i=k;return b|0}}while(1){b=It(j)|0;c[p>>2]=b;if((b|0)==0){u=41;break}b:do{if((a[q>>0]|0)!=0){if((c[p>>2]&-128|0)==0){c[p>>2]=d[784+(c[p>>2]|0)>>0]|0}if((c[o>>2]&-128|0)==0){c[o>>2]=d[784+(c[o>>2]|0)>>0]|0}while(1){if((c[p>>2]|0)==0){break b}if((c[p>>2]|0)==(c[o>>2]|0)){break b}c[p>>2]=It(j)|0;if((c[p>>2]&-128|0)!=0){continue}c[p>>2]=d[784+(c[p>>2]|0)>>0]|0}}else{while(1){if((c[p>>2]|0)==0){break b}if((c[p>>2]|0)==(c[o>>2]|0)){break b}c[p>>2]=It(j)|0}}}while(0);if((c[p>>2]|0)==0){u=38;break}if((Af(c[m>>2]|0,c[j>>2]|0,c[h>>2]|0,c[l>>2]|0)|0)!=0){u=40;break}}if((u|0)==38){c[n>>2]=0;b=c[n>>2]|0;i=k;return b|0}else if((u|0)==40){c[n>>2]=1;b=c[n>>2]|0;i=k;return b|0}else if((u|0)==41){c[n>>2]=0;b=c[n>>2]|0;i=k;return b|0}}else if((u|0)==45){c[n>>2]=0;b=c[n>>2]|0;i=k;return b|0}else if((u|0)==48){c[n>>2]=0;b=c[n>>2]|0;i=k;return b|0}else if((u|0)==72){c[n>>2]=0;b=c[n>>2]|0;i=k;return b|0}else if((u|0)==82){c[n>>2]=0;b=c[n>>2]|0;i=k;return b|0}else if((u|0)==84){c[n>>2]=(d[c[j>>2]>>0]|0)==0&1;b=c[n>>2]|0;i=k;return b|0}return 0}function Bf(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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;u=i;i=i+64|0;q=u;l=u+56|0;o=u+52|0;j=u+48|0;y=u+44|0;A=u+40|0;n=u+36|0;m=u+32|0;v=u+60|0;s=u+20|0;r=u+16|0;w=u+12|0;x=u+8|0;t=u+4|0;z=u+24|0;p=u+28|0;c[o>>2]=b;c[j>>2]=e;c[y>>2]=f;c[A>>2]=g;c[n>>2]=h;c[m>>2]=0;c[s>>2]=0;c[r>>2]=0;if((Cf(c[o>>2]|0)|0)==0){c[l>>2]=Xb(96044)|0;b=c[l>>2]|0;i=u;return b|0}if((c[j>>2]|0)==0){c[j>>2]=1784}Rc(c[o>>2]|0,0,0,q);a:while(1){if((c[m>>2]|0)!=0){break}if((a[c[j>>2]>>0]|0)==0){break}c[t>>2]=0;c[s>>2]=0;c[m>>2]=Df(c[o>>2]|0,c[j>>2]|0,-1,s,v)|0;if((c[m>>2]|0)!=0){continue}if((c[s>>2]|0)==0){c[j>>2]=c[v>>2];continue}c[w>>2]=0;c[x>>2]=we(c[s>>2]|0)|0;do{c[m>>2]=le(c[s>>2]|0)|0;do{if((c[y>>2]|0)!=0){if(100!=(c[m>>2]|0)){if(101!=(c[m>>2]|0)){break}if((c[w>>2]|0)!=0){break}if((c[(c[o>>2]|0)+24>>2]&256|0)==0){break}}if((c[w>>2]|0)==0){c[r>>2]=ve(c[o>>2]|0,(c[x>>2]<<1<<2)+1|0)|0;if((c[r>>2]|0)==0){break a}c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[x>>2]|0)){break}b=Ie(c[s>>2]|0,c[z>>2]|0)|0;c[(c[r>>2]|0)+(c[z>>2]<<2)>>2]=b;c[z>>2]=(c[z>>2]|0)+1}c[w>>2]=1}b:do{if((c[m>>2]|0)==100){c[t>>2]=(c[r>>2]|0)+(c[x>>2]<<2);c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[x>>2]|0)){break b}b=Fe(c[s>>2]|0,c[z>>2]|0)|0;c[(c[t>>2]|0)+(c[z>>2]<<2)>>2]=b;if((c[(c[t>>2]|0)+(c[z>>2]<<2)>>2]|0)==0){if((He(c[s>>2]|0,c[z>>2]|0)|0)!=5){k=28;break a}}c[z>>2]=(c[z>>2]|0)+1}}}while(0);if((xb[c[y>>2]&31](c[A>>2]|0,c[x>>2]|0,c[t>>2]|0,c[r>>2]|0)|0)!=0){k=31;break a}}}while(0)}while((c[m>>2]|0)==100);c[m>>2]=Ad(c[s>>2]|0)|0;c[s>>2]=0;c[j>>2]=c[v>>2];while(1){if((a[136+(d[c[j>>2]>>0]|0)>>0]&1|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}cc(c[o>>2]|0,c[r>>2]|0);c[r>>2]=0}if((k|0)==28){a[(c[o>>2]|0)+64>>0]=1}else if((k|0)==31){c[m>>2]=4;Ad(c[s>>2]|0)|0;c[s>>2]=0;Rc(c[o>>2]|0,4,0,q)}if((c[s>>2]|0)!=0){Ad(c[s>>2]|0)|0}cc(c[o>>2]|0,c[r>>2]|0);c[m>>2]=Bd(c[o>>2]|0,c[m>>2]|0)|0;do{if((c[m>>2]|0)!=0){b=c[m>>2]|0;if((b|0)==(Ef(c[o>>2]|0)|0)){if((c[n>>2]|0)!=0){c[p>>2]=1+(Ub(Ff(c[o>>2]|0)|0)|0);b=nc(c[p>>2]|0)|0;c[c[n>>2]>>2]=b;if((c[c[n>>2]>>2]|0)!=0){e=c[c[n>>2]>>2]|0;b=Ff(c[o>>2]|0)|0;fL(e|0,b|0,c[p>>2]|0)|0;break}else{c[m>>2]=7;Rc(c[o>>2]|0,7,0,q);break}}else{k=45}}else{k=45}}else{k=45}}while(0);if((k|0)==45){if((c[n>>2]|0)!=0){c[c[n>>2]>>2]=0}}c[l>>2]=c[m>>2];b=c[l>>2]|0;i=u;return b|0}function Cf(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b;f=b+4|0;c[e>>2]=a;do{if((c[e>>2]|0)==0){mr(16376);c[d>>2]=0}else{c[f>>2]=c[(c[e>>2]|0)+76>>2];if(!((c[f>>2]|0)!=-1607883113)){c[d>>2]=1;break}if((Ag(c[e>>2]|0)|0)!=0){mr(37560)}c[d>>2]=0}}while(0);i=b;return c[d>>2]|0}function Df(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;n=h+20|0;m=h;l=h+4|0;k=h+8|0;j=h+12|0;g=h+16|0;c[n>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;c[g>>2]=Hf(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,1,0,c[k>>2]|0,c[j>>2]|0)|0;i=h;return c[g>>2]|0}function Ef(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;e=b+4|0;f=b;c[f>>2]=a;if((c[f>>2]|0)!=0){if((Ag(c[f>>2]|0)|0)==0){c[e>>2]=Xb(123013)|0;f=c[e>>2]|0;i=b;return f|0}}if((c[f>>2]|0)!=0){if((d[(c[f>>2]|0)+64>>0]|0|0)==0){c[e>>2]=c[(c[f>>2]|0)+52>>2]&c[(c[f>>2]|0)+56>>2];f=c[e>>2]|0;i=b;return f|0}}c[e>>2]=7;f=c[e>>2]|0;i=b;return f|0}function Ff(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;c[g>>2]=b;if((c[g>>2]|0)==0){c[e>>2]=ie(7)|0;g=c[e>>2]|0;i=d;return g|0}if((Ag(c[g>>2]|0)|0)==0){c[e>>2]=ie(Xb(122944)|0)|0;g=c[e>>2]|0;i=d;return g|0}if((a[(c[g>>2]|0)+64>>0]|0)!=0){c[f>>2]=ie(7)|0}else{c[f>>2]=Jd(c[(c[g>>2]|0)+224>>2]|0)|0;if((c[f>>2]|0)==0){c[f>>2]=ie(c[(c[g>>2]|0)+52>>2]|0)|0}}c[e>>2]=c[f>>2];g=c[e>>2]|0;i=d;return g|0}function Gf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;n=h+20|0;m=h;l=h+4|0;k=h+8|0;j=h+12|0;g=h+16|0;c[n>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;c[g>>2]=Hf(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,0,0,c[k>>2]|0,c[j>>2]|0)|0;i=h;return c[g>>2]|0}function Hf(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=i;i=i+48|0;k=q+32|0;n=q+28|0;o=q+24|0;p=q+20|0;j=q+16|0;r=q+8|0;m=q+4|0;s=q;l=q+12|0;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[j>>2]=e;c[r>>2]=f;c[m>>2]=g;c[s>>2]=h;c[c[m>>2]>>2]=0;if((Cf(c[n>>2]|0)|0)==0){c[k>>2]=Xb(100422)|0;a=c[k>>2]|0;i=q;return a|0}Yb(c[n>>2]|0);c[l>>2]=ZE(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[j>>2]|0,c[r>>2]|0,c[m>>2]|0,c[s>>2]|0)|0;if((c[l>>2]|0)==17){yd(c[c[m>>2]>>2]|0)|0;c[l>>2]=ZE(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[j>>2]|0,c[r>>2]|0,c[m>>2]|0,c[s>>2]|0)|0}c[k>>2]=c[l>>2];a=c[k>>2]|0;i=q;return a|0}function If(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=Jf(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0,0)|0;i=f;return a|0}function Jf(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+48|0;m=j+36|0;q=j+32|0;s=j+28|0;l=j+24|0;k=j+20|0;p=j+16|0;r=j+8|0;o=j+4|0;n=j;h=j+12|0;c[m>>2]=b;c[q>>2]=d;c[s>>2]=e;c[l>>2]=f;c[k>>2]=g;c[p>>2]=0;c[r>>2]=Ub(c[q>>2]|0)|0;if((zh((c[m>>2]|0)+300|0,c[q>>2]|0,c[r>>2]|0)|0)!=0){c[p>>2]=Xb(108523)|0}else{c[o>>2]=$e(c[m>>2]|0,17+(c[r>>2]|0)|0)|0;if((c[o>>2]|0)!=0){c[h>>2]=(c[o>>2]|0)+16;fL(c[h>>2]|0,c[q>>2]|0,(c[r>>2]|0)+1|0)|0;c[(c[o>>2]|0)+4>>2]=c[h>>2];c[c[o>>2]>>2]=c[s>>2];c[(c[o>>2]|0)+8>>2]=c[l>>2];c[(c[o>>2]|0)+12>>2]=c[k>>2];c[n>>2]=Eh((c[m>>2]|0)+300|0,c[h>>2]|0,c[r>>2]|0,c[o>>2]|0)|0;if((c[n>>2]|0)!=0){a[(c[m>>2]|0)+64>>0]=1;cc(c[m>>2]|0,c[n>>2]|0)}}}c[p>>2]=Bd(c[m>>2]|0,c[p>>2]|0)|0;if((c[p>>2]|0)==0){b=c[p>>2]|0;i=j;return b|0}if((c[k>>2]|0)==0){b=c[p>>2]|0;i=j;return b|0}rb[c[k>>2]&31](c[l>>2]|0);b=c[p>>2]|0;i=j;return b|0}function Kf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+16|0;l=g;k=g+4|0;j=g+8|0;h=g+12|0;c[m>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;a=Jf(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return a|0}function Lf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=i;i=i+32|0;o=k;j=k+28|0;m=k+4|0;p=k+8|0;l=k+12|0;h=k+16|0;f=k+20|0;n=k+24|0;c[m>>2]=d;c[p>>2]=e;c[h>>2]=0;c[n>>2]=0;if((c[(c[m>>2]|0)+316>>2]|0)!=0){d=c[(c[(c[m>>2]|0)+316>>2]|0)+4>>2]|0;c[f>>2]=d;if((d|0)!=0){c[l>>2]=ve(c[m>>2]|0,536)|0;if((c[l>>2]|0)==0){c[h>>2]=7}else{a[(c[l>>2]|0)+451>>0]=1;c[c[l>>2]>>2]=c[m>>2];c[(c[l>>2]|0)+424>>2]=1;if(0==(Mf(c[l>>2]|0,c[p>>2]|0,n)|0)){if((c[(c[l>>2]|0)+484>>2]|0)!=0){if((a[(c[m>>2]|0)+64>>0]|0)!=0){g=14}else{if((c[(c[(c[l>>2]|0)+484>>2]|0)+12>>2]|0)!=0){g=14}else{if((a[(c[(c[l>>2]|0)+484>>2]|0)+44>>0]&16|0)==0){if((c[(c[f>>2]|0)+4>>2]|0)==0){c[(c[f>>2]|0)+4>>2]=c[(c[(c[l>>2]|0)+484>>2]|0)+4>>2];b[(c[f>>2]|0)+38>>1]=b[(c[(c[l>>2]|0)+484>>2]|0)+38>>1]|0;b[(c[(c[l>>2]|0)+484>>2]|0)+38>>1]=0;c[(c[(c[l>>2]|0)+484>>2]|0)+4>>2]=0}c[(c[(c[m>>2]|0)+316>>2]|0)+4>>2]=0}else{g=14}}}}else{g=14}}else{g=14}if((g|0)==14){e=c[m>>2]|0;d=(c[n>>2]|0)!=0?1768:0;c[o>>2]=c[n>>2];Rc(e,1,d,o);cc(c[m>>2]|0,c[n>>2]|0);c[h>>2]=1}a[(c[l>>2]|0)+451>>0]=0;if((c[(c[l>>2]|0)+8>>2]|0)!=0){Ad(c[(c[l>>2]|0)+8>>2]|0)|0}ac(c[m>>2]|0,c[(c[l>>2]|0)+484>>2]|0);rf(c[l>>2]|0);cc(c[m>>2]|0,c[l>>2]|0)}c[h>>2]=Bd(c[m>>2]|0,c[h>>2]|0)|0;c[j>>2]=c[h>>2];d=c[j>>2]|0;i=k;return d|0}}Rc(c[m>>2]|0,21,0,o);c[j>>2]=Xb(109181)|0;d=c[j>>2]|0;i=k;return d|0}function Mf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;g=i;i=i+64|0;v=g;m=g+52|0;h=g+48|0;p=g+44|0;u=g+40|0;j=g+36|0;l=g+32|0;q=g+56|0;w=g+20|0;t=g+16|0;r=g+60|0;k=g+12|0;x=g+8|0;n=g+24|0;o=g+28|0;c[h>>2]=b;c[p>>2]=e;c[u>>2]=f;c[j>>2]=0;c[t>>2]=-1;c[k>>2]=c[c[h>>2]>>2];c[x>>2]=c[(c[k>>2]|0)+92>>2];if((c[(c[k>>2]|0)+140>>2]|0)==0){c[(c[k>>2]|0)+232>>2]=0}c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+480>>2]=c[p>>2];c[l>>2]=0;c[q>>2]=Yt(41)|0;f=c[k>>2]|0;if((c[q>>2]|0)==0){a[f+64>>0]=1;c[m>>2]=7;b=c[m>>2]|0;i=g;return b|0}a[r>>0]=a[f+242>>0]|0;if((c[(c[k>>2]|0)+268>>2]|0)!=0){a[(c[k>>2]|0)+242>>0]=1}while(1){if((a[(c[k>>2]|0)+64>>0]|0)!=0){break}if((a[(c[p>>2]|0)+(c[l>>2]|0)>>0]|0)==0){break}c[(c[h>>2]|0)+504>>2]=(c[p>>2]|0)+(c[l>>2]|0);b=et((c[p>>2]|0)+(c[l>>2]|0)|0,w)|0;c[(c[h>>2]|0)+508>>2]=b;c[l>>2]=(c[l>>2]|0)+(c[(c[h>>2]|0)+508>>2]|0);if((c[l>>2]|0)>(c[x>>2]|0)){s=10;break}f=c[w>>2]|0;if((f|0)==1){c[(c[h>>2]|0)+480>>2]=(c[p>>2]|0)+(c[l>>2]|0)}else if((f|0)==150){s=14;break}else if((f|0)==151){if((c[(c[k>>2]|0)+232>>2]|0)!=0){s=13;break}else{continue}}f=c[q>>2]|0;e=c[w>>2]|0;y=(c[h>>2]|0)+504|0;b=c[h>>2]|0;c[v+0>>2]=c[y+0>>2];c[v+4>>2]=c[y+4>>2];Zt(f,e,v,b);c[t>>2]=c[w>>2];if((c[(c[h>>2]|0)+12>>2]|0)!=0){break}}if((s|0)==10){c[(c[h>>2]|0)+12>>2]=18}else if((s|0)==13){bf(c[h>>2]|0,16456,v);c[(c[h>>2]|0)+12>>2]=9}else if((s|0)==14){cc(c[k>>2]|0,c[c[u>>2]>>2]|0);y=c[k>>2]|0;c[v>>2]=(c[h>>2]|0)+504;y=cf(y,16472,v)|0;c[c[u>>2]>>2]=y;c[j>>2]=(c[j>>2]|0)+1}if((a[(c[p>>2]|0)+(c[l>>2]|0)>>0]|0)==0){if((c[j>>2]|0)==0){if((c[(c[h>>2]|0)+12>>2]|0)==0){if((c[t>>2]|0)!=1){b=c[q>>2]|0;e=(c[h>>2]|0)+504|0;y=c[h>>2]|0;c[v+0>>2]=c[e+0>>2];c[v+4>>2]=c[e+4>>2];Zt(b,1,v,y);c[(c[h>>2]|0)+480>>2]=(c[p>>2]|0)+(c[l>>2]|0)}b=c[q>>2]|0;e=(c[h>>2]|0)+504|0;y=c[h>>2]|0;c[v+0>>2]=c[e+0>>2];c[v+4>>2]=c[e+4>>2];Zt(b,0,v,y)}}}_t(c[q>>2]|0,13);a[(c[k>>2]|0)+242>>0]=a[r>>0]|0;if((a[(c[k>>2]|0)+64>>0]|0)!=0){c[(c[h>>2]|0)+12>>2]=7}if((c[(c[h>>2]|0)+12>>2]|0)!=0){if((c[(c[h>>2]|0)+12>>2]|0)!=101){if((c[(c[h>>2]|0)+4>>2]|0)==0){b=(c[h>>2]|0)+4|0;y=c[k>>2]|0;c[v>>2]=ie(c[(c[h>>2]|0)+12>>2]|0)|0;$t(b,y,1768,v)}}}if((c[(c[h>>2]|0)+4>>2]|0)!=0){c[c[u>>2]>>2]=c[(c[h>>2]|0)+4>>2];y=c[(c[h>>2]|0)+12>>2]|0;c[v>>2]=c[c[u>>2]>>2];zc(y,1768,v);c[(c[h>>2]|0)+4>>2]=0;c[j>>2]=(c[j>>2]|0)+1}if((c[(c[h>>2]|0)+8>>2]|0)!=0){if((c[(c[h>>2]|0)+64>>2]|0)>0){if((d[(c[h>>2]|0)+18>>0]|0)==0){au(c[(c[h>>2]|0)+8>>2]|0);c[(c[h>>2]|0)+8>>2]=0}}}if((d[(c[h>>2]|0)+18>>0]|0)==0){cc(c[k>>2]|0,c[(c[h>>2]|0)+400>>2]|0);c[(c[h>>2]|0)+400>>2]=0;c[(c[h>>2]|0)+396>>2]=0}oc(c[(c[h>>2]|0)+520>>2]|0);if((a[(c[h>>2]|0)+451>>0]|0)==0){ac(c[k>>2]|0,c[(c[h>>2]|0)+484>>2]|0)}if((a[(c[h>>2]|0)+449>>0]|0)!=0){bu(c[k>>2]|0,c[(c[h>>2]|0)+532>>2]|0)}$b(c[k>>2]|0,c[(c[h>>2]|0)+488>>2]|0);c[l>>2]=(c[(c[h>>2]|0)+444>>2]|0)-1;while(1){p=c[k>>2]|0;if((c[l>>2]|0)<0){break}cc(p,c[(c[(c[h>>2]|0)+472>>2]|0)+(c[l>>2]<<2)>>2]|0);c[l>>2]=(c[l>>2]|0)+ -1}cc(p,c[(c[h>>2]|0)+472>>2]|0);while(1){if((c[(c[h>>2]|0)+404>>2]|0)==0){break}c[n>>2]=c[(c[h>>2]|0)+404>>2];c[(c[h>>2]|0)+404>>2]=c[c[n>>2]>>2];cc(c[k>>2]|0,c[n>>2]|0)}while(1){if((c[(c[h>>2]|0)+524>>2]|0)==0){break}c[o>>2]=c[(c[h>>2]|0)+524>>2];c[(c[h>>2]|0)+524>>2]=c[(c[o>>2]|0)+72>>2];ac(c[k>>2]|0,c[o>>2]|0)}if((c[j>>2]|0)>0){if((c[(c[h>>2]|0)+12>>2]|0)==0){c[(c[h>>2]|0)+12>>2]=1}}c[m>>2]=c[j>>2];y=c[m>>2]|0;i=g;return y|0}function Nf(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[1800+((d[(c[b>>2]|0)+68>>0]|0)-1)>>0]|0|0}function Of(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+48|0;j=g;h=g+32|0;m=g+4|0;l=g+8|0;f=g+24|0;k=g+28|0;c[h>>2]=b;c[m>>2]=d;c[f>>2]=0;c[l>>2]=e;do{if((c[m>>2]|0)==1){c[k>>2]=c[(c[h>>2]|0)+316>>2];if((c[k>>2]|0)!=0){b=c[l>>2]|0;m=c[b>>2]|0;c[l>>2]=b+4;a[(c[c[k>>2]>>2]|0)+16>>0]=m;break}else{c[f>>2]=Xb(109555)|0;break}}else{c[f>>2]=Xb(109563)|0}}while(0);if((c[f>>2]|0)==0){m=c[f>>2]|0;i=g;return m|0}Rc(c[h>>2]|0,c[f>>2]|0,0,j);m=c[f>>2]|0;i=g;return m|0}function Pf(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=ve(c[f>>2]|0,40)|0;if((c[e>>2]|0)==0){f=c[e>>2]|0;i=d;return f|0}b[(c[e>>2]|0)+28>>1]=1;c[c[e>>2]>>2]=c[f>>2];f=c[e>>2]|0;i=d;return f|0}function Qf(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;j=m+12|0;l=m;k=m+4|0;h=m+16|0;n=m+8|0;c[j>>2]=b;c[l>>2]=d;c[k>>2]=e;a[h>>0]=f;c[n>>2]=g;if((c[j>>2]|0)==0){i=m;return}Yd(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,a[h>>0]|0,c[n>>2]|0)|0;i=m;return}function Rf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}Gd(c[d>>2]|0);cc(c[c[d>>2]>>2]|0,c[d>>2]|0);i=b;return}function Sf(){return 88}function Tf(){return 1824}function Uf(){return 3008005}function Vf(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;f=g+12|0;e=g;b=g+4|0;d=g+8|0;if((c[45172>>2]|0)==0){$f()}j=480|0;h=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(h|0));if((c[45140>>2]|0)!=0){c[120]=8}if((c[45328>>2]|0)!=0){if((c[45332>>2]|0)>=100){if((c[45336>>2]|0)>0){c[b>>2]=c[45332>>2]&-8;c[45332>>2]=c[b>>2];c[d>>2]=c[45328>>2];c[e>>2]=c[45336>>2];c[508>>2]=c[d>>2];c[512>>2]=c[e>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=((c[e>>2]|0)-1|0)){break}c[c[d>>2]>>2]=(c[d>>2]|0)+(c[b>>2]|0);c[d>>2]=c[c[d>>2]>>2];c[f>>2]=(c[f>>2]|0)+1}c[c[d>>2]>>2]=0;c[504>>2]=(c[d>>2]|0)+4}else{a=12}}else{a=12}}else{a=12}if((a|0)==12){c[504>>2]=0;c[45328>>2]=0;c[45332>>2]=0;c[45336>>2]=0}if((c[45340>>2]|0)!=0){if((c[45344>>2]|0)>=512){if((c[45348>>2]|0)>=1){h=c[45192>>2]|0;j=c[45200>>2]|0;j=ub[h&63](j)|0;i=g;return j|0}}}c[45340>>2]=0;c[45344>>2]=0;c[45348>>2]=0;h=c[45192>>2]|0;j=c[45200>>2]|0;j=ub[h&63](j)|0;i=g;return j|0}function Wf(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;b=a+8|0;d=a;e=a+4|0;c[d>>2]=1896;c[e>>2]=12824;c[b>>2]=0;while(1){if((c[b>>2]|0)>=56){break}rr(c[d>>2]|0,(c[e>>2]|0)+((c[b>>2]|0)*36|0)|0);c[b>>2]=(c[b>>2]|0)+1}$s();at();i=a;return}function Xf(){var a=0,b=0;a=i;if((c[45248>>2]|0)==0){ag()}b=ub[c[45248>>2]&63](c[45244>>2]|0)|0;i=a;return b|0}function Yf(){var a=0,b=0,d=0;a=i;i=i+16|0;b=a+4|0;d=a;c[d>>2]=mc(10)|0;if((c[d>>2]|0)==0){c[b>>2]=7;d=c[b>>2]|0;i=a;return d|0}else{oc(c[d>>2]|0);c[b>>2]=Ec()|0;d=c[b>>2]|0;i=a;return d|0}return 0}function Zf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;j=e;f=e+4|0;h=e+8|0;c[g>>2]=a;c[j>>2]=b;c[f>>2]=d;if((c[3484>>2]|0)==0){i=e;return}c[j>>2]=c[j>>2]&-8;c[3488>>2]=c[j>>2];a=c[f>>2]|0;c[3516>>2]=a;c[3492>>2]=a;if((c[f>>2]|0)>90){d=10}else{d=((c[f>>2]|0)/10|0)+1|0}c[3496>>2]=d;c[3500>>2]=c[g>>2];c[3512>>2]=0;c[3520>>2]=0;while(1){a=c[f>>2]|0;c[f>>2]=a+ -1;d=c[g>>2]|0;if((a|0)==0){break}c[h>>2]=d;c[c[h>>2]>>2]=c[3512>>2];c[3512>>2]=c[h>>2];c[g>>2]=(c[g>>2]|0)+(c[j>>2]|0)}c[3504>>2]=d;i=e;return}function _f(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+48|0;e=f+44|0;k=f+40|0;g=f+24|0;d=f+16|0;h=f;j=f+8|0;c[k>>2]=a;c[d>>2]=0;if((c[45360>>2]|0)!=0){c[e>>2]=Xb(121405)|0;a=c[e>>2]|0;i=f;return a|0}c[g>>2]=b;do{switch(c[k>>2]|0){case 22:{a=c[g>>2]|0;k=a;l=c[k>>2]|0;k=c[k+4>>2]|0;c[g>>2]=a+8;a=h;c[a>>2]=l;c[a+4>>2]=k;a=c[g>>2]|0;k=a;l=c[k>>2]|0;k=c[k+4>>2]|0;c[g>>2]=a+8;a=j;c[a>>2]=l;c[a+4>>2]=k;a=j;b=c[a+4>>2]|0;a=(c[j+4>>2]|0)<0|((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>0);b=j;c[b>>2]=a?0:l;c[b+4>>2]=a?0:k;b=j;k=c[b+4>>2]|0;a=45320|0;c[a>>2]=c[b>>2];c[a+4>>2]=k;if((c[h+4>>2]|0)<0){l=h;c[l>>2]=0;c[l+4>>2]=0}a=h;b=c[a+4>>2]|0;l=j;k=c[l+4>>2]|0;if((b|0)>(k|0)|((b|0)==(k|0)?(c[a>>2]|0)>>>0>(c[l>>2]|0)>>>0:0)){k=j;a=c[k+4>>2]|0;l=h;c[l>>2]=c[k>>2];c[l+4>>2]=a}k=h;a=c[k+4>>2]|0;l=45312|0;c[l>>2]=c[k>>2];c[l+4>>2]=a;break};case 4:{a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45172>>2]=c[l+0>>2];c[45176>>2]=c[l+4>>2];c[45180>>2]=c[l+8>>2];c[45184>>2]=c[l+12>>2];c[45188>>2]=c[l+16>>2];c[45192>>2]=c[l+20>>2];c[45196>>2]=c[l+24>>2];c[45200>>2]=c[l+28>>2];break};case 9:{a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[11284]=l;break};case 16:{l=c[g>>2]|0;a=c[l>>2]|0;c[g>>2]=l+4;c[45388>>2]=a;a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45392>>2]=l;break};case 18:{j=c[g>>2]|0;h=c[j>>2]|0;c[g>>2]=j+4;j=45240|0;h=h+0|0;g=j+52|0;do{c[j>>2]=c[h>>2];j=j+4|0;h=h+4|0}while((j|0)<(g|0));break};case 17:{a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45148>>2]=l;break};case 13:{l=c[g>>2]|0;a=c[l>>2]|0;c[g>>2]=l+4;c[45164>>2]=a;a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45168>>2]=l;break};case 6:{a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45328>>2]=l;l=c[g>>2]|0;a=c[l>>2]|0;c[g>>2]=l+4;c[45332>>2]=a;a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45336>>2]=l;break};case 15:{c[d>>2]=1;break};case 20:{a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45152>>2]=l;break};case 5:{if((c[45172>>2]|0)==0){$f()}a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[l+0>>2]=c[45172>>2];c[l+4>>2]=c[45176>>2];c[l+8>>2]=c[45180>>2];c[l+12>>2]=c[45184>>2];c[l+16>>2]=c[45188>>2];c[l+20>>2]=c[45192>>2];c[l+24>>2]=c[45196>>2];c[l+28>>2]=c[45200>>2];break};case 19:{if((c[45248>>2]|0)==0){ag()}h=c[g>>2]|0;j=c[h>>2]|0;c[g>>2]=h+4;j=j+0|0;h=45240|0;g=j+52|0;do{c[j>>2]=c[h>>2];j=j+4|0;h=h+4|0}while((j|0)<(g|0));break};case 7:{a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45340>>2]=l;l=c[g>>2]|0;a=c[l>>2]|0;c[g>>2]=l+4;c[45344>>2]=a;a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45348>>2]=l;break};case 14:{break};default:{c[d>>2]=1}}}while(0);c[e>>2]=c[d>>2];l=c[e>>2]|0;i=f;return l|0}function $f(){var a=0,b=0;a=i;i=i+16|0;b=a;c[b>>2]=12712;_f(4,b)|0;i=a;return}function ag(){var a=0,b=0;a=i;i=i+16|0;b=a;c[b>>2]=12656;_f(18,b)|0;i=a;return}function bg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;f=b+12|0;g=b;d=b+4|0;e=b+8|0;c[f>>2]=a;Yb(c[f>>2]|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){break}c[d>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]<<4)+4>>2];if((c[d>>2]|0)!=0){c[e>>2]=Zb(c[d>>2]|0)|0;cg(c[e>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}i=b;return 0}function cg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Or(c[(c[d>>2]|0)+204>>2]|0);i=b;return}function dg(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=i;i=i+32|0;k=p+28|0;h=p;r=p+4|0;q=p+8|0;n=p+12|0;l=p+16|0;o=p+20|0;m=p+24|0;c[h>>2]=d;c[r>>2]=e;c[q>>2]=f;c[n>>2]=g;if((c[(c[h>>2]|0)+244>>2]|0)!=0){c[k>>2]=5;d=c[k>>2]|0;i=p;return d|0}if((a[(c[h>>2]|0)+243>>0]|0)!=0){oc(c[(c[h>>2]|0)+268>>2]|0)}d=c[q>>2]&-8;c[q>>2]=d;c[q>>2]=(c[q>>2]|0)<=4?0:d;if((c[n>>2]|0)<0){c[n>>2]=0}do{if((c[q>>2]|0)==0){j=9}else{if((c[n>>2]|0)==0){j=9}else{if((c[r>>2]|0)!=0){c[l>>2]=c[r>>2];break}Ih();c[l>>2]=nc($(c[q>>2]|0,c[n>>2]|0)|0)|0;Jh();if((c[l>>2]|0)!=0){d=_b(c[l>>2]|0)|0;c[n>>2]=(d|0)/(c[q>>2]|0)|0}}}}while(0);if((j|0)==9){c[q>>2]=0;c[l>>2]=0}c[(c[h>>2]|0)+268>>2]=c[l>>2];c[(c[h>>2]|0)+264>>2]=0;b[(c[h>>2]|0)+240>>1]=c[q>>2];if((c[l>>2]|0)!=0){c[m>>2]=c[l>>2];c[o>>2]=(c[n>>2]|0)-1;while(1){if((c[o>>2]|0)<0){break}c[c[m>>2]>>2]=c[(c[h>>2]|0)+264>>2];c[(c[h>>2]|0)+264>>2]=c[m>>2];c[m>>2]=(c[m>>2]|0)+(c[q>>2]|0);c[o>>2]=(c[o>>2]|0)+ -1}c[(c[h>>2]|0)+272>>2]=c[m>>2];a[(c[h>>2]|0)+242>>0]=1;a[(c[h>>2]|0)+243>>0]=(c[r>>2]|0)==0?1:0}else{c[(c[h>>2]|0)+268>>2]=c[h>>2];c[(c[h>>2]|0)+272>>2]=c[h>>2];a[(c[h>>2]|0)+242>>0]=0;a[(c[h>>2]|0)+243>>0]=0}c[k>>2]=0;d=c[k>>2]|0;i=p;return d|0}function eg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(c[d>>2]|0)+32|0;D=c[a+4>>2]|0;i=b;return c[a>>2]|0}function fg(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+80>>2]|0}function gg(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+84>>2]|0}function hg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=ig(c[d>>2]|0,0)|0;i=b;return a|0}function ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d;e=d+12|0;f=d+4|0;h=d+8|0;c[f>>2]=a;c[h>>2]=b;if((c[f>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}if((Ag(c[f>>2]|0)|0)==0){c[e>>2]=Xb(121912)|0;a=c[e>>2]|0;i=d;return a|0}Mr(c[f>>2]|0);Jr(c[f>>2]|0)|0;if((c[h>>2]|0)==0){if((wr(c[f>>2]|0)|0)!=0){Rc(c[f>>2]|0,5,12584,g);c[e>>2]=5;a=c[e>>2]|0;i=d;return a|0}}c[(c[f>>2]|0)+76>>2]=1691352191;wd(c[f>>2]|0);c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}function jg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=ig(c[d>>2]|0,1)|0;i=b;return a|0}function kg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e;g=e+4|0;c[f>>2]=a;c[h>>2]=b;c[g>>2]=d;c[(c[f>>2]|0)+436>>2]=c[h>>2];c[(c[f>>2]|0)+440>>2]=c[g>>2];c[(c[f>>2]|0)+444>>2]=0;c[(c[f>>2]|0)+484>>2]=0;i=e;return 0}function lg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=c[e>>2]|0;if((c[f>>2]|0)>0){kg(b,46,c[e>>2]|0)|0;c[(c[e>>2]|0)+484>>2]=c[f>>2];i=d;return 0}else{kg(b,0,0)|0;i=d;return 0}return 0}function mg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;j=d;h=d+4|0;f=d+8|0;g=d+12|0;c[j>>2]=a;c[h>>2]=b;c[f>>2]=c[j>>2];c[g>>2]=c[(c[j>>2]|0)+484>>2];if((((c[h>>2]|0)+1|0)*1e3|0)>(c[g>>2]|0)){c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}else{Eg(c[c[f>>2]>>2]|0,1e6)|0;c[e>>2]=1;j=c[e>>2]|0;i=d;return j|0}return 0}function ng(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+32|0;s=k+28|0;r=k;q=k+4|0;p=k+8|0;o=k+12|0;n=k+16|0;m=k+20|0;l=k+24|0;c[s>>2]=a;c[r>>2]=b;c[q>>2]=d;c[p>>2]=e;c[o>>2]=f;c[n>>2]=g;c[m>>2]=h;c[l>>2]=j;a=og(c[s>>2]|0,c[r>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,0)|0;i=k;return a|0}function og(a,b,d,e,f,g,h,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;o=i;i=i+48|0;w=o+40|0;s=o+36|0;t=o+32|0;u=o+28|0;q=o+24|0;v=o+20|0;l=o+12|0;x=o+8|0;p=o+4|0;n=o;r=o+16|0;c[w>>2]=a;c[s>>2]=b;c[t>>2]=d;c[u>>2]=e;c[q>>2]=f;c[v>>2]=g;c[l>>2]=h;c[x>>2]=j;c[p>>2]=k;c[n>>2]=1;c[r>>2]=0;do{if((c[p>>2]|0)!=0){c[r>>2]=ve(c[w>>2]|0,12)|0;k=c[p>>2]|0;if((c[r>>2]|0)!=0){c[(c[r>>2]|0)+4>>2]=k;c[(c[r>>2]|0)+8>>2]=c[q>>2];m=5;break}else{rb[k&31](c[q>>2]|0);break}}else{m=5}}while(0);if((m|0)==5){c[n>>2]=pg(c[w>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[q>>2]|0,c[v>>2]|0,c[l>>2]|0,c[x>>2]|0,c[r>>2]|0)|0;if((c[r>>2]|0)!=0){if((c[c[r>>2]>>2]|0)==0){rb[c[p>>2]&31](c[q>>2]|0);cc(c[w>>2]|0,c[r>>2]|0)}}}c[n>>2]=Bd(c[w>>2]|0,c[n>>2]|0)|0;i=o;return c[n>>2]|0}function pg(d,e,f,g,h,j,k,l,m){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;u=i;i=i+64|0;B=u;z=u+52|0;p=u+48|0;q=u+44|0;s=u+40|0;t=u+36|0;y=u+32|0;o=u+56|0;w=u+20|0;x=u+16|0;A=u+12|0;n=u+8|0;r=u+4|0;v=u+24|0;C=u+28|0;c[p>>2]=d;c[q>>2]=e;c[s>>2]=f;c[t>>2]=g;c[y>>2]=h;c[o>>2]=j;c[w>>2]=k;c[x>>2]=l;c[A>>2]=m;do{if((c[q>>2]|0)!=0){if((c[o>>2]|0)!=0){if((c[x>>2]|0)!=0){break}if((c[w>>2]|0)!=0){break}}if((c[o>>2]|0)==0){if((c[x>>2]|0)!=0){if((c[w>>2]|0)==0){break}}}if((c[o>>2]|0)==0){if((c[x>>2]|0)==0){if((c[w>>2]|0)!=0){break}}}if(!((c[s>>2]|0)<-1|(c[s>>2]|0)>127)){d=Ub(c[q>>2]|0)|0;c[r>>2]=d;if(255>=(d|0)){c[v>>2]=c[t>>2]&2048;c[t>>2]=c[t>>2]&7;do{if((c[t>>2]|0)==4){c[t>>2]=(a[1480]|0)==0?3:2}else{if((c[t>>2]|0)==5){c[C>>2]=pg(c[p>>2]|0,c[q>>2]|0,c[s>>2]|0,1|c[v>>2],c[y>>2]|0,c[o>>2]|0,c[w>>2]|0,c[x>>2]|0,c[A>>2]|0)|0;if((c[C>>2]|0)==0){c[C>>2]=pg(c[p>>2]|0,c[q>>2]|0,c[s>>2]|0,2|c[v>>2],c[y>>2]|0,c[o>>2]|0,c[w>>2]|0,c[x>>2]|0,c[A>>2]|0)|0}if((c[C>>2]|0)==0){c[t>>2]=3;break}c[z>>2]=c[C>>2];d=c[z>>2]|0;i=u;return d|0}}}while(0);c[n>>2]=rg(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]&255,0)|0;do{if((c[n>>2]|0)!=0){if((b[(c[n>>2]|0)+2>>1]&3|0)==(c[t>>2]|0)){if((b[c[n>>2]>>1]|0)==(c[s>>2]|0)){C=c[p>>2]|0;if((c[(c[p>>2]|0)+140>>2]|0)==0){yf(C);break}Rc(C,5,11656,B);c[z>>2]=5;d=c[z>>2]|0;i=u;return d|0}}}}while(0);c[n>>2]=rg(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]&255,1)|0;if((c[n>>2]|0)==0){c[z>>2]=7;d=c[z>>2]|0;i=u;return d|0}vr(c[p>>2]|0,c[n>>2]|0);if((c[A>>2]|0)!=0){d=c[A>>2]|0;c[d>>2]=(c[d>>2]|0)+1}c[(c[n>>2]|0)+32>>2]=c[A>>2];b[(c[n>>2]|0)+2>>1]=b[(c[n>>2]|0)+2>>1]&3|c[v>>2];c[(c[n>>2]|0)+12>>2]=c[o>>2];c[(c[n>>2]|0)+16>>2]=c[w>>2];c[(c[n>>2]|0)+20>>2]=c[x>>2];c[(c[n>>2]|0)+4>>2]=c[y>>2];b[c[n>>2]>>1]=c[s>>2];c[z>>2]=0;d=c[z>>2]|0;i=u;return d|0}}}}while(0);c[z>>2]=Xb(122454)|0;d=c[z>>2]|0;i=u;return d|0}function qg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;g=f+16|0;j=f;h=f+4|0;k=f+8|0;e=f+12|0;c[g>>2]=a;c[j>>2]=b;c[h>>2]=d;c[k>>2]=Ub(c[j>>2]|0)|0;c[e>>2]=0;if((rg(c[g>>2]|0,c[j>>2]|0,c[k>>2]|0,c[h>>2]|0,1,0)|0)==0){c[e>>2]=pg(c[g>>2]|0,c[j>>2]|0,c[h>>2]|0,1,0,55,0,0,0)|0}c[e>>2]=Bd(c[g>>2]|0,c[e>>2]|0)|0;i=f;return c[e>>2]|0}function rg(e,f,g,h,j,k){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;y=i;i=i+64|0;x=y+44|0;u=y+28|0;w=y+40|0;m=y+36|0;s=y+32|0;t=y+48|0;p=y+49|0;q=y+24|0;n=y+16|0;o=y+12|0;v=y+8|0;z=y+4|0;l=y;r=y+20|0;c[u>>2]=e;c[w>>2]=f;c[m>>2]=g;c[s>>2]=h;a[t>>0]=j;a[p>>0]=k;c[n>>2]=0;c[o>>2]=0;c[v>>2]=((d[784+(d[c[w>>2]>>0]|0)>>0]|0)+(c[m>>2]|0)|0)%23|0;c[q>>2]=pr((c[u>>2]|0)+328|0,c[v>>2]|0,c[w>>2]|0,c[m>>2]|0)|0;while(1){if((c[q>>2]|0)==0){break}c[z>>2]=qr(c[q>>2]|0,c[s>>2]|0,a[t>>0]|0)|0;if((c[z>>2]|0)>(c[o>>2]|0)){c[n>>2]=c[q>>2];c[o>>2]=c[z>>2]}c[q>>2]=c[(c[q>>2]|0)+8>>2]}a:do{if((a[p>>0]|0)==0){if((c[n>>2]|0)!=0){if((c[(c[u>>2]|0)+24>>2]&2097152|0)==0){break}}c[l>>2]=1896;c[o>>2]=0;c[q>>2]=pr(c[l>>2]|0,c[v>>2]|0,c[w>>2]|0,c[m>>2]|0)|0;while(1){if((c[q>>2]|0)==0){break a}c[r>>2]=qr(c[q>>2]|0,c[s>>2]|0,a[t>>0]|0)|0;if((c[r>>2]|0)>(c[o>>2]|0)){c[n>>2]=c[q>>2];c[o>>2]=c[r>>2]}c[q>>2]=c[(c[q>>2]|0)+8>>2]}}}while(0);if((d[p>>0]|0)!=0){if((c[o>>2]|0)<6){e=ve(c[u>>2]|0,37+(c[m>>2]|0)|0)|0;c[n>>2]=e;if((e|0)!=0){c[(c[n>>2]|0)+24>>2]=(c[n>>2]|0)+36;b[c[n>>2]>>1]=c[s>>2];b[(c[n>>2]|0)+2>>1]=d[t>>0]|0;fL(c[(c[n>>2]|0)+24>>2]|0,c[w>>2]|0,c[m>>2]|0)|0;a[(c[(c[n>>2]|0)+24>>2]|0)+(c[m>>2]|0)>>0]=0;rr((c[u>>2]|0)+328|0,c[n>>2]|0)}}}do{if((c[n>>2]|0)!=0){if((c[(c[n>>2]|0)+16>>2]|0)==0){if((c[(c[n>>2]|0)+12>>2]|0)==0){if((d[p>>0]|0)==0){break}}}c[x>>2]=c[n>>2];e=c[x>>2]|0;i=y;return e|0}}while(0);c[x>>2]=0;e=c[x>>2]|0;i=y;return e|0}function sg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e;g=e+20|0;j=e+12|0;f=e+16|0;c[g>>2]=a;c[e+4>>2]=b;c[e+8>>2]=d;c[j>>2]=c[(c[c[g>>2]>>2]|0)+24>>2];c[h>>2]=c[j>>2];c[f>>2]=wc(11536,h)|0;Xd(c[g>>2]|0,c[f>>2]|0,-1);oc(c[f>>2]|0);i=e;return}function tg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;b=c[f>>2]|0;if((c[e>>2]|0)>0){ug(b,10,c[e>>2]|0)|0;i=d;return 0}else{ug(b,0,0)|0;i=d;return 0}return 0}function ug(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;j=f;h=f+4|0;e=f+8|0;c[g>>2]=a;c[j>>2]=b;c[h>>2]=d;c[e>>2]=c[(c[g>>2]|0)+208>>2];c[(c[g>>2]|0)+204>>2]=c[j>>2];c[(c[g>>2]|0)+208>>2]=c[h>>2];i=f;return c[e>>2]|0}function vg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f+12|0;g=f;h=f+4|0;k=f+8|0;c[j>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;if((c[k>>2]|0)<(c[j>>2]|0)){i=f;return 0}Ih();zg(c[g>>2]|0,c[h>>2]|0)|0;Jh();i=f;return 0}function wg(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+48|0;h=j;o=j+28|0;l=j+24|0;m=j+20|0;p=j+32|0;q=j+8|0;r=j+4|0;n=j+12|0;k=j+16|0;c[l>>2]=b;c[m>>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[k>>2]=10;if((c[q>>2]|0)!=0){c[c[q>>2]>>2]=-1}if((c[r>>2]|0)!=0){c[c[r>>2]>>2]=-1}if((c[p>>2]|0)<0|(c[p>>2]|0)>2){c[o>>2]=21;b=c[o>>2]|0;i=j;return b|0}if((c[m>>2]|0)!=0){if((a[c[m>>2]>>0]|0)!=0){c[k>>2]=xg(c[l>>2]|0,c[m>>2]|0)|0}}if((c[k>>2]|0)<0){c[n>>2]=1;b=c[l>>2]|0;c[h>>2]=c[m>>2];Rc(b,1,1992,h)}else{c[n>>2]=yg(c[l>>2]|0,c[k>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;Rc(c[l>>2]|0,c[n>>2]|0,0,h)}c[n>>2]=Bd(c[l>>2]|0,c[n>>2]|0)|0;c[o>>2]=c[n>>2];b=c[o>>2]|0;i=j;return b|0}function xg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;j=d+16|0;g=d;e=d+4|0;f=d+8|0;h=d+12|0;c[j>>2]=a;c[g>>2]=b;c[e>>2]=-1;if((c[g>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[h>>2]=Ub(c[g>>2]|0)|0;c[e>>2]=(c[(c[j>>2]|0)+20>>2]|0)-1;c[f>>2]=(c[(c[j>>2]|0)+16>>2]|0)+(c[e>>2]<<4);while(1){if((c[e>>2]|0)<0){b=7;break}a=c[h>>2]|0;if((a|0)==(Ub(c[c[f>>2]>>2]|0)|0)){if(0==(Dc(c[c[f>>2]>>2]|0,c[g>>2]|0)|0)){b=7;break}}c[e>>2]=(c[e>>2]|0)+ -1;c[f>>2]=(c[f>>2]|0)+ -16}if((b|0)==7){a=c[e>>2]|0;i=d;return a|0}return 0}function yg(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;k=j+28|0;p=j;m=j+4|0;g=j+8|0;o=j+12|0;h=j+16|0;l=j+20|0;n=j+24|0;c[k>>2]=a;c[p>>2]=b;c[m>>2]=d;c[g>>2]=e;c[o>>2]=f;c[h>>2]=0;c[n>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[k>>2]|0)+20>>2]|0)){break}if((c[h>>2]|0)!=0){break}if((c[p>>2]|0)==10?1:(c[l>>2]|0)==(c[p>>2]|0)){c[h>>2]=nr(c[(c[(c[k>>2]|0)+16>>2]|0)+(c[l>>2]<<4)+4>>2]|0,c[m>>2]|0,c[g>>2]|0,c[o>>2]|0)|0;c[g>>2]=0;c[o>>2]=0;if((c[h>>2]|0)==5){c[n>>2]=1;c[h>>2]=0}}c[l>>2]=(c[l>>2]|0)+1}if((c[h>>2]|0)==0){if((c[n>>2]|0)!=0){a=5;i=j;return a|0}}a=c[h>>2]|0;i=j;return a|0}function zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=wg(c[f>>2]|0,c[e>>2]|0,0,0,0)|0;i=d;return a|0}function Ag(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;f=b;e=b+4|0;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+76>>2];if((c[e>>2]|0)!=1266094736&(c[e>>2]|0)!=-1607883113&(c[e>>2]|0)!=-264537850){mr(11480);c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}else{c[d>>2]=1;f=c[d>>2]|0;i=b;return f|0}return 0}function Bg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=Cg(c[f>>2]|0,c[e>>2]|0,6,0)|0;i=d;return a|0}function Cg(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=i;i=i+48|0;q=p;m=p+36|0;o=p+32|0;r=p+28|0;g=p+24|0;n=p+40|0;l=p+12|0;j=p+8|0;s=p+4|0;k=p+16|0;h=p+20|0;c[o>>2]=b;c[r>>2]=d;c[g>>2]=e;c[n>>2]=f;c[k>>2]=0;c[h>>2]=0;c[c[r>>2]>>2]=0;c[j>>2]=ec()|0;if((c[j>>2]|0)!=0){c[m>>2]=c[j>>2];b=c[m>>2]|0;i=p;return b|0}if((1<<(c[g>>2]&7)&70|0)==0){c[m>>2]=Xb(123516)|0;b=c[m>>2]|0;i=p;return b|0}do{if((c[45140>>2]|0)==0){c[s>>2]=0}else{if((c[g>>2]&32768|0)!=0){c[s>>2]=0;break}if((c[g>>2]&65536|0)!=0){c[s>>2]=1;break}else{c[s>>2]=c[45144>>2];break}}}while(0);if((c[g>>2]&262144|0)!=0){c[g>>2]=c[g>>2]&-131073}else{if((c[45356>>2]|0)!=0){c[g>>2]=c[g>>2]|131072}}c[g>>2]=c[g>>2]&-655129;c[l>>2]=Sc(520)|0;do{if((c[l>>2]|0)!=0){if((c[s>>2]|0)!=0){c[(c[l>>2]|0)+12>>2]=8;if((c[(c[l>>2]|0)+12>>2]|0)==0){oc(c[l>>2]|0);c[l>>2]=0;break}}c[(c[l>>2]|0)+56>>2]=255;c[(c[l>>2]|0)+20>>2]=2;c[(c[l>>2]|0)+76>>2]=-264537850;c[(c[l>>2]|0)+16>>2]=(c[l>>2]|0)+448;e=(c[l>>2]|0)+88|0;f=2016|0;s=e+44|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(s|0));a[(c[l>>2]|0)+62>>0]=1;a[(c[l>>2]|0)+66>>0]=-1;e=45312|0;d=c[e+4>>2]|0;b=(c[l>>2]|0)+40|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;c[(c[l>>2]|0)+72>>2]=0;b=(c[l>>2]|0)+24|0;c[b>>2]=c[b>>2]|9437264;Lh((c[l>>2]|0)+420|0);Lh((c[l>>2]|0)+300|0);Dg(c[l>>2]|0,3640,1,0,12,0)|0;Dg(c[l>>2]|0,3640,3,0,12,0)|0;Dg(c[l>>2]|0,3640,2,0,12,0)|0;Dg(c[l>>2]|0,3648,1,1,12,0)|0;if((a[(c[l>>2]|0)+64>>0]|0)==0){b=xh(c[l>>2]|0,1,3640,0)|0;c[(c[l>>2]|0)+8>>2]=b;Dg(c[l>>2]|0,3656,1,0,13,0)|0;c[(c[l>>2]|0)+48>>2]=c[g>>2];c[j>>2]=Oh(c[n>>2]|0,c[o>>2]|0,g,c[l>>2]|0,k,h)|0;if((c[j>>2]|0)!=0){if((c[j>>2]|0)==7){a[(c[l>>2]|0)+64>>0]=1}e=c[l>>2]|0;d=c[j>>2]|0;b=(c[h>>2]|0)!=0?1768:0;c[q>>2]=c[h>>2];Rc(e,d,b,q);oc(c[h>>2]|0);break}c[j>>2]=Ph(c[c[l>>2]>>2]|0,c[k>>2]|0,c[l>>2]|0,(c[(c[l>>2]|0)+16>>2]|0)+4|0,0,c[g>>2]|256)|0;if((c[j>>2]|0)!=0){if((c[j>>2]|0)==3082){c[j>>2]=7}Rc(c[l>>2]|0,c[j>>2]|0,0,q);break}b=Qh(c[l>>2]|0,c[(c[(c[l>>2]|0)+16>>2]|0)+4>>2]|0)|0;c[(c[(c[l>>2]|0)+16>>2]|0)+12>>2]=b;b=Qh(c[l>>2]|0,0)|0;c[(c[(c[l>>2]|0)+16>>2]|0)+28>>2]=b;c[c[(c[l>>2]|0)+16>>2]>>2]=3664;a[(c[(c[l>>2]|0)+16>>2]|0)+8>>0]=3;c[(c[(c[l>>2]|0)+16>>2]|0)+16>>2]=1816;a[(c[(c[l>>2]|0)+16>>2]|0)+24>>0]=1;c[(c[l>>2]|0)+76>>2]=-1607883113;if((a[(c[l>>2]|0)+64>>0]|0)==0){Rc(c[l>>2]|0,0,0,q);Rh(c[l>>2]|0);c[j>>2]=Ef(c[l>>2]|0)|0;if((c[j>>2]|0)==0){Sh(c[l>>2]|0);c[j>>2]=Ef(c[l>>2]|0)|0;if((c[j>>2]|0)!=0){break}}if((a[(c[l>>2]|0)+64>>0]|0)==0){if((c[j>>2]|0)==0){c[j>>2]=Th(c[l>>2]|0)|0}}if((c[j>>2]|0)!=0){Rc(c[l>>2]|0,c[j>>2]|0,0,q)}dg(c[l>>2]|0,0,c[45164>>2]|0,c[45168>>2]|0)|0;tg(c[l>>2]|0,1e3)|0}}}}while(0);oc(c[k>>2]|0);c[j>>2]=Ef(c[l>>2]|0)|0;if((c[j>>2]|0)==7){hg(c[l>>2]|0)|0;c[l>>2]=0}else{if((c[j>>2]|0)!=0){c[(c[l>>2]|0)+76>>2]=1266094736}}c[c[r>>2]>>2]=c[l>>2];c[m>>2]=Bd(0,c[j>>2]|0)|0;b=c[m>>2]|0;i=p;return b|0}function Dg(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;r=i;i=i+64|0;m=r;u=r+44|0;n=r+40|0;p=r+36|0;y=r+52|0;w=r+32|0;v=r+28|0;x=r+48|0;q=r+16|0;o=r+12|0;l=r+8|0;k=r+4|0;s=r+20|0;t=r+24|0;c[n>>2]=b;c[p>>2]=e;a[y>>0]=f;c[w>>2]=g;c[v>>2]=h;c[x>>2]=j;c[l>>2]=Ub(c[p>>2]|0)|0;c[o>>2]=d[y>>0]|0;if((c[o>>2]|0)==4|(c[o>>2]|0)==8){c[o>>2]=(a[1480]|0)==0?3:2}if((c[o>>2]|0)<1|(c[o>>2]|0)>3){c[u>>2]=Xb(123094)|0;b=c[u>>2]|0;i=r;return b|0}c[q>>2]=xh(c[n>>2]|0,c[o>>2]&255,c[p>>2]|0,0)|0;a:do{if((c[q>>2]|0)!=0){if((c[(c[q>>2]|0)+12>>2]|0)!=0){j=c[n>>2]|0;if((c[(c[n>>2]|0)+140>>2]|0)!=0){Rc(j,5,3568,m);c[u>>2]=5;b=c[u>>2]|0;i=r;return b|0}yf(j);yh(c[n>>2]|0);if((d[(c[q>>2]|0)+4>>0]&-9|0)==(c[o>>2]|0)){c[k>>2]=zh((c[n>>2]|0)+420|0,c[p>>2]|0,c[l>>2]|0)|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=3){break a}c[t>>2]=(c[k>>2]|0)+((c[s>>2]|0)*20|0);if((d[(c[t>>2]|0)+4>>0]|0)==(d[(c[q>>2]|0)+4>>0]|0)){if((c[(c[t>>2]|0)+16>>2]|0)!=0){rb[c[(c[t>>2]|0)+16>>2]&31](c[(c[t>>2]|0)+8>>2]|0)}c[(c[t>>2]|0)+12>>2]=0}c[s>>2]=(c[s>>2]|0)+1}}}}}while(0);c[q>>2]=xh(c[n>>2]|0,c[o>>2]&255,c[p>>2]|0,1)|0;if((c[q>>2]|0)==0){c[u>>2]=7;b=c[u>>2]|0;i=r;return b|0}else{c[(c[q>>2]|0)+12>>2]=c[v>>2];c[(c[q>>2]|0)+8>>2]=c[w>>2];c[(c[q>>2]|0)+16>>2]=c[x>>2];a[(c[q>>2]|0)+4>>0]=c[o>>2]|a[y>>0]&8;Rc(c[n>>2]|0,0,0,m);c[u>>2]=0;b=c[u>>2]|0;i=r;return b|0}return 0}function Eg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[f>>2]|0)+60>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Fg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;o=k+28|0;n=k;j=k+4|0;g=k+8|0;f=k+12|0;l=k+16|0;m=k+20|0;h=k+24|0;c[o>>2]=a;c[n>>2]=b;c[j>>2]=d;c[g>>2]=e;c[f>>2]=1;c[l>>2]=Gg(c[o>>2]|0,c[n>>2]|0)|0;if((c[l>>2]|0)==0){o=c[f>>2]|0;i=k;return o|0}Uc(c[l>>2]|0);c[m>>2]=Zb(c[l>>2]|0)|0;c[h>>2]=jd(c[m>>2]|0)|0;l=c[h>>2]|0;if((c[j>>2]|0)==7){c[c[g>>2]>>2]=l;c[f>>2]=0;o=c[f>>2]|0;i=k;return o|0}if((c[l>>2]|0)!=0){c[f>>2]=Hg(c[h>>2]|0,c[j>>2]|0,c[g>>2]|0)|0;o=c[f>>2]|0;i=k;return o|0}else{c[f>>2]=12;o=c[f>>2]|0;i=k;return o|0}return 0}function Gg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;d=e+12|0;f=e;h=e+4|0;g=e+8|0;c[f>>2]=a;c[h>>2]=b;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){b=8;break}if((c[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]<<4)+4>>2]|0)!=0){if((c[h>>2]|0)==0){b=6;break}if((Dc(c[h>>2]|0,c[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]<<4)>>2]|0)|0)==0){b=6;break}}c[g>>2]=(c[g>>2]|0)+1}if((b|0)==6){c[d>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]<<4)+4>>2];a=c[d>>2]|0;i=e;return a|0}else if((b|0)==8){c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}return 0}function Hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=pb[c[(c[c[h>>2]>>2]|0)+40>>2]&31](c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Ig(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+32|0;j=m+24|0;p=m;o=m+4|0;l=m+8|0;n=m+12|0;h=m+16|0;k=m+20|0;c[p>>2]=a;c[o>>2]=d;c[l>>2]=f;c[n>>2]=g;c[h>>2]=0;c[k>>2]=c[(c[p>>2]|0)+4>>2];Uc(c[p>>2]|0);if((b[(c[k>>2]|0)+22>>1]&2|0)!=0){c[j>>2]=8;p=c[j>>2]|0;i=m;return p|0}if((c[l>>2]|0)<0){c[l>>2]=(c[(c[k>>2]|0)+32>>2]|0)-(c[(c[k>>2]|0)+36>>2]|0)}if((c[o>>2]|0)>=512&(c[o>>2]|0)<=65536){if(((c[o>>2]|0)-1&c[o>>2]|0)==0){c[(c[k>>2]|0)+32>>2]=c[o>>2];ah(c[k>>2]|0)}}c[h>>2]=bh(c[c[k>>2]>>2]|0,(c[k>>2]|0)+32|0,c[l>>2]|0)|0;c[(c[k>>2]|0)+36>>2]=(c[(c[k>>2]|0)+32>>2]|0)-(c[l>>2]&65535);if((c[n>>2]|0)!=0){p=(c[k>>2]|0)+22|0;b[p>>1]=e[p>>1]|0|2}c[j>>2]=c[h>>2];p=c[j>>2]|0;i=m;return p|0}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=$g(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Kg(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((c[512>>2]|0)!=0){if((c[45332>>2]|0)>=(c[e>>2]|0)){c[d>>2]=c[508>>2];c[508>>2]=c[c[508>>2]>>2];c[512>>2]=(c[512>>2]|0)+ -1;pc(3,1);Xg(8,c[e>>2]|0);e=c[d>>2]|0;i=b;return e|0}}if((c[11284]|0)==0){c[d>>2]=ub[c[45172>>2]&63](c[e>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}Xg(8,c[e>>2]|0);c[e>>2]=Yg(c[e>>2]|0,d)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}pc(4,c[e>>2]|0);e=c[d>>2]|0;i=b;return e|0}function Lg(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b;f=b+4|0;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}if((c[d>>2]|0)>>>0>=(c[45328>>2]|0)>>>0){if((c[d>>2]|0)>>>0<(c[504>>2]|0)>>>0){c[e>>2]=c[d>>2];c[c[e>>2]>>2]=c[508>>2];c[508>>2]=c[e>>2];c[512>>2]=(c[512>>2]|0)+1;pc(3,-1);i=b;return}}if((c[11284]|0)!=0){c[f>>2]=_b(c[d>>2]|0)|0;pc(4,0-(c[f>>2]|0)|0);pc(0,0-(c[f>>2]|0)|0);pc(9,-1);rb[c[45176>>2]&31](c[d>>2]|0);i=b;return}else{rb[c[45176>>2]&31](c[d>>2]|0);i=b;return}}function Mg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e;h=e+4|0;j=e+8|0;c[g>>2]=b;c[h>>2]=d;if((c[g>>2]|0)==0){c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}b=(Ub(c[g>>2]|0)|0)+1|0;c[g>>2]=(c[g>>2]|0)+b;while(1){if((a[c[g>>2]>>0]|0)==0){g=8;break}c[j>>2]=YK(c[g>>2]|0,c[h>>2]|0)|0;d=(Ub(c[g>>2]|0)|0)+1|0;c[g>>2]=(c[g>>2]|0)+d;d=c[g>>2]|0;if((c[j>>2]|0)==0){g=6;break}b=(Ub(d)|0)+1|0;c[g>>2]=(c[g>>2]|0)+b}if((g|0)==6){c[f>>2]=d;b=c[f>>2]|0;i=e;return b|0}else if((g|0)==8){c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}return 0}function Ng(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;h=e;f=e+4|0;g=e+8|0;c[j>>2]=a;c[h>>2]=b;c[f>>2]=d;c[g>>2]=Mg(c[j>>2]|0,c[h>>2]|0)|0;c[f>>2]=(c[f>>2]|0)!=0&1;if((c[g>>2]|0)!=0){j=(Og(c[g>>2]|0,c[f>>2]|0)|0)&255;i=e;return j|0}else{j=c[f>>2]|0;i=e;return j|0}return 0}function Og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=((Ug(c[f>>2]|0,1,c[e>>2]|0)|0)&255|0)!=0&255;i=d;return a|0}function Pg(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;s=i;i=i+64|0;r=s+48|0;o=s+44|0;n=s+40|0;w=s+36|0;v=s+52|0;q=s+32|0;u=s;p=s+20|0;k=s+16|0;m=s+12|0;h=s+8|0;t=s+24|0;l=s+28|0;c[o>>2]=b;c[n>>2]=e;c[w>>2]=f;a[v>>0]=g;e=u;c[e>>2]=0;c[e+4>>2]=0;c[p>>2]=0;c[m>>2]=0;c[h>>2]=0;c[l>>2]=(c[o>>2]|0)+(c[w>>2]|0);if((d[v>>0]|0)==1){c[q>>2]=1}else{c[q>>2]=2;c[k>>2]=3-(d[v>>0]|0);while(1){if((c[k>>2]|0)>=(c[w>>2]|0)){break}if((a[(c[o>>2]|0)+(c[k>>2]|0)>>0]|0)!=0){break}c[k>>2]=(c[k>>2]|0)+2}c[h>>2]=(c[k>>2]|0)<(c[w>>2]|0)&1;c[l>>2]=(c[o>>2]|0)+(c[k>>2]|0)+(d[v>>0]|0)+ -3;c[o>>2]=(c[o>>2]|0)+(a[v>>0]&1)}while(1){if(!((c[o>>2]|0)>>>0<(c[l>>2]|0)>>>0)){break}if((a[136+(d[c[o>>2]>>0]|0)>>0]&1|0)==0){break}c[o>>2]=(c[o>>2]|0)+(c[q>>2]|0)}do{if((c[o>>2]|0)>>>0<(c[l>>2]|0)>>>0){if((a[c[o>>2]>>0]|0)==45){c[p>>2]=1;c[o>>2]=(c[o>>2]|0)+(c[q>>2]|0);break}if((a[c[o>>2]>>0]|0)==43){c[o>>2]=(c[o>>2]|0)+(c[q>>2]|0)}}}while(0);c[t>>2]=c[o>>2];while(1){if(!((c[o>>2]|0)>>>0<(c[l>>2]|0)>>>0)){break}if((a[c[o>>2]>>0]|0)!=48){break}c[o>>2]=(c[o>>2]|0)+(c[q>>2]|0)}c[k>>2]=0;while(1){if(((c[o>>2]|0)+(c[k>>2]|0)|0)>>>0<(c[l>>2]|0)>>>0){w=a[(c[o>>2]|0)+(c[k>>2]|0)>>0]|0;c[m>>2]=w;if((w|0)>=48){b=(c[m>>2]|0)<=57}else{b=0}}else{b=0}g=u;v=c[g>>2]|0;g=c[g+4>>2]|0;if(!b){break}w=nL(v|0,g|0,10,0)|0;e=c[m>>2]|0;e=dL(w|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;e=$K(e|0,D|0,48,0)|0;w=u;c[w>>2]=e;c[w+4>>2]=D;c[k>>2]=(c[k>>2]|0)+(c[q>>2]|0)}b=(c[p>>2]|0)!=0;do{if(g>>>0>2147483647|(g|0)==2147483647&v>>>0>4294967295){w=c[n>>2]|0;c[w>>2]=b?0:-1;c[w+4>>2]=b?-2147483648:2147483647}else{v=c[u>>2]|0;u=c[u+4>>2]|0;if(b){e=$K(0,0,v|0,u|0)|0;w=c[n>>2]|0;c[w>>2]=e;c[w+4>>2]=D;break}else{w=c[n>>2]|0;c[w>>2]=v;c[w+4>>2]=u;break}}}while(0);if((c[m>>2]|0)!=0){if(!(((c[o>>2]|0)+(c[k>>2]|0)|0)>>>0<(c[l>>2]|0)>>>0)){j=33}}else{j=33}do{if((j|0)==33){if((c[k>>2]|0)==0){if((c[t>>2]|0)==(c[o>>2]|0)){break}}if((c[k>>2]|0)<=((c[q>>2]|0)*19|0)){if((c[h>>2]|0)==0){if((c[k>>2]|0)<((c[q>>2]|0)*19|0)){c[r>>2]=0;w=c[r>>2]|0;i=s;return w|0}c[m>>2]=Tg(c[o>>2]|0,c[q>>2]|0)|0;if((c[m>>2]|0)<0){c[r>>2]=0;w=c[r>>2]|0;i=s;return w|0}if((c[m>>2]|0)>0){c[r>>2]=1;w=c[r>>2]|0;i=s;return w|0}else{c[r>>2]=(c[p>>2]|0)!=0?0:2;w=c[r>>2]|0;i=s;return w|0}}}}}while(0);c[r>>2]=1;w=c[r>>2]|0;i=s;return w|0}function Qg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Sg(c[c[(c[d>>2]|0)+4>>2]>>2]|0,1)|0;i=b;return a|0}function Rg(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;i=e;return(b[(c[(c[d>>2]|0)+4>>2]|0)+22>>1]&1|0)!=0|0}function Sg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=b;if((c[g>>2]|0)!=0){if((d[(c[f>>2]|0)+15>>0]|0|0)!=0){g=1784;i=e;return g|0}}g=c[(c[f>>2]|0)+168>>2]|0;i=e;return g|0}function Tg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;g=f+16|0;h=f;e=f+4|0;j=f+8|0;k=f+12|0;c[g>>2]=b;c[h>>2]=d;c[e>>2]=0;c[k>>2]=2064;c[j>>2]=0;while(1){if((c[e>>2]|0)!=0){break}if((c[j>>2]|0)>=18){break}b=$(c[j>>2]|0,c[h>>2]|0)|0;c[e>>2]=((a[(c[g>>2]|0)+b>>0]|0)-(a[(c[k>>2]|0)+(c[j>>2]|0)>>0]|0)|0)*10;c[j>>2]=(c[j>>2]|0)+1}if((c[e>>2]|0)!=0){b=c[e>>2]|0;i=f;return b|0}c[e>>2]=(a[(c[g>>2]|0)+((c[h>>2]|0)*18|0)>>0]|0)-56;b=c[e>>2]|0;i=f;return b|0}function Ug(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;g=k+20|0;m=k;n=k+4|0;h=k+8|0;j=k+12|0;l=k+16|0;c[m>>2]=b;c[n>>2]=e;c[h>>2]=f;f=c[m>>2]|0;if((a[136+(d[c[m>>2]>>0]|0)>>0]&4|0)!=0){a[g>>0]=Vg(f)|0;b=a[g>>0]|0;i=k;return b|0}c[l>>2]=Ub(f)|0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(7-(c[n>>2]|0)|0)){l=9;break}if((d[2120+(c[j>>2]|0)>>0]|0|0)==(c[l>>2]|0)){if((Tb(2088+(d[2112+(c[j>>2]|0)>>0]|0)|0,c[m>>2]|0,c[l>>2]|0)|0)==0){l=7;break}}c[j>>2]=(c[j>>2]|0)+1}if((l|0)==7){a[g>>0]=a[2128+(c[j>>2]|0)>>0]|0;b=a[g>>0]|0;i=k;return b|0}else if((l|0)==9){a[g>>0]=c[h>>2];b=a[g>>0]|0;i=k;return b|0}return 0}function Vg(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=0;if((c[e>>2]|0)!=0){Wg(c[e>>2]|0,b)|0}i=d;return c[b>>2]|0}function Wg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;e=f+28|0;l=f+12|0;h=f+8|0;g=f;k=f+16|0;m=f+20|0;j=f+24|0;c[l>>2]=b;c[h>>2]=d;b=g;c[b>>2]=0;c[b+4>>2]=0;c[j>>2]=0;if((a[c[l>>2]>>0]|0)==45){c[j>>2]=1;c[l>>2]=(c[l>>2]|0)+1}else{if((a[c[l>>2]>>0]|0)==43){c[l>>2]=(c[l>>2]|0)+1}}while(1){if((a[c[l>>2]>>0]|0)!=48){break}c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=11){break}b=(a[(c[l>>2]|0)+(c[k>>2]|0)>>0]|0)-48|0;c[m>>2]=b;if((b|0)<0){break}if((c[m>>2]|0)>9){break}b=g;b=nL(c[b>>2]|0,c[b+4>>2]|0,10,0)|0;d=c[m>>2]|0;d=dL(b|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;b=g;c[b>>2]=d;c[b+4>>2]=D;c[k>>2]=(c[k>>2]|0)+1}if((c[k>>2]|0)>10){c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}m=g;b=c[j>>2]|0;b=$K(c[m>>2]|0,c[m+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;m=D;if((m|0)>0|(m|0)==0&b>>>0>2147483647){c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}if((c[j>>2]|0)!=0){m=g;m=$K(0,0,c[m>>2]|0,c[m+4>>2]|0)|0;b=g;c[b>>2]=m;c[b+4>>2]=D}c[c[h>>2]>>2]=c[g>>2];c[e>>2]=1;b=c[e>>2]|0;i=f;return b|0}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[392+(c[e>>2]<<2)>>2]=c[f>>2];if((c[392+(c[e>>2]<<2)>>2]|0)<=(c[432+(c[e>>2]<<2)>>2]|0)){i=d;return}c[432+(c[e>>2]<<2)>>2]=c[392+(c[e>>2]<<2)>>2];i=d;return}function Yg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;g=i;i=i+32|0;j=g+16|0;e=g;f=g+4|0;d=g+8|0;h=g+12|0;c[j>>2]=a;c[e>>2]=b;c[f>>2]=ub[c[45188>>2]&63](c[j>>2]|0)|0;Xg(5,c[j>>2]|0);do{if((c[496>>2]|0)!=0){c[h>>2]=Zg(0)|0;a=c[h>>2]|0;b=((a|0)<0)<<31>>31;h=488|0;j=c[f>>2]|0;j=$K(c[h>>2]|0,c[h+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0;h=D;if((b|0)>(h|0)|(b|0)==(h|0)&a>>>0>=j>>>0){c[516>>2]=1;_g(c[f>>2]|0);break}else{c[516>>2]=0;break}}}while(0);c[d>>2]=ub[c[45172>>2]&63](c[f>>2]|0)|0;if((c[d>>2]|0)==0){a=c[d>>2]|0;j=c[e>>2]|0;c[j>>2]=a;j=c[f>>2]|0;i=g;return j|0}c[f>>2]=_b(c[d>>2]|0)|0;pc(0,c[f>>2]|0);pc(9,1);a=c[d>>2]|0;j=c[e>>2]|0;c[j>>2]=a;j=c[f>>2]|0;i=g;return j|0}function Zg(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[392+(c[b>>2]<<2)>>2]|0} + + + +function un(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;m=g;h=g+28|0;n=g+4|0;e=g+8|0;f=g+12|0;k=g+16|0;l=g+20|0;j=g+24|0;c[h>>2]=a;c[n>>2]=b;c[e>>2]=d;c[f>>2]=0;c[k>>2]=0;if((c[n>>2]|0)!=0){a=yn(c[n>>2]|0)|0;c[l>>2]=a;c[k>>2]=a}else{c[l>>2]=1784}zn(c[e>>2]|0,f,8776,m);c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[h>>2]|0)+24>>2]|0)){break}a=c[e>>2]|0;c[m>>2]=c[l>>2];zn(a,f,8784,m);c[j>>2]=(c[j>>2]|0)+1}if((c[(c[h>>2]|0)+44>>2]|0)==0){a=c[k>>2]|0;oc(a);a=c[f>>2]|0;i=g;return a|0}zn(c[e>>2]|0,f,8792,m);a=c[k>>2]|0;oc(a);a=c[f>>2]|0;i=g;return a|0}function vn(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+48|0;f=k;e=k+36|0;g=k+12|0;l=k+16|0;d=k+20|0;j=k+24|0;h=k+28|0;m=k+32|0;c[e>>2]=b;c[g>>2]=0;c[d>>2]=c[(c[e>>2]|0)+12>>2];if((c[(c[e>>2]|0)+40>>2]|0)==0){c[j>>2]=c[(c[e>>2]|0)+44>>2];c[h>>2]=wc(8368,f)|0;c[l>>2]=0;while(1){if((c[h>>2]|0)==0){break}if((c[l>>2]|0)>=(c[(c[e>>2]|0)+24>>2]|0)){break}c[m>>2]=c[(c[(c[e>>2]|0)+28>>2]|0)+(c[l>>2]<<2)>>2];n=c[l>>2]|0;b=c[m>>2]|0;c[f>>2]=c[h>>2];c[f+4>>2]=n;c[f+8>>2]=b;c[h>>2]=wc(8400,f)|0;c[l>>2]=(c[l>>2]|0)+1}if((c[j>>2]|0)!=0){if((c[h>>2]|0)!=0){n=c[j>>2]|0;c[f>>2]=c[h>>2];c[f+4>>2]=n;c[h>>2]=wc(8416,f)|0}}if((c[h>>2]|0)==0){c[g>>2]=7}n=c[d>>2]|0;l=c[(c[e>>2]|0)+20>>2]|0;m=c[h>>2]|0;c[f>>2]=c[(c[e>>2]|0)+16>>2];c[f+4>>2]=l;c[f+8>>2]=m;Zi(g,n,8432,f);oc(c[h>>2]|0)}n=c[d>>2]|0;m=c[(c[e>>2]|0)+20>>2]|0;c[f>>2]=c[(c[e>>2]|0)+16>>2];c[f+4>>2]=m;Zi(g,n,8472,f);n=c[d>>2]|0;m=c[(c[e>>2]|0)+20>>2]|0;c[f>>2]=c[(c[e>>2]|0)+16>>2];c[f+4>>2]=m;Zi(g,n,8544,f);if((a[(c[e>>2]|0)+230>>0]|0)!=0){n=c[d>>2]|0;m=c[(c[e>>2]|0)+20>>2]|0;c[f>>2]=c[(c[e>>2]|0)+16>>2];c[f+4>>2]=m;Zi(g,n,8704,f)}if((a[(c[e>>2]|0)+229>>0]|0)==0){n=c[g>>2]|0;i=k;return n|0}Em(g,c[e>>2]|0);n=c[g>>2]|0;i=k;return n|0}function wn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;k=d;j=d+20|0;e=d+4|0;h=d+8|0;f=d+12|0;g=d+16|0;c[j>>2]=a;c[e>>2]=b;if((c[c[j>>2]>>2]|0)!=0){i=d;return}c[k>>2]=c[(c[e>>2]|0)+16>>2];c[f>>2]=wc(8344,k)|0;do{if((c[f>>2]|0)!=0){c[h>>2]=Gf(c[(c[e>>2]|0)+12>>2]|0,c[f>>2]|0,-1,g,0)|0;if((c[h>>2]|0)==0){le(c[g>>2]|0)|0;a=De(c[g>>2]|0,0)|0;c[(c[e>>2]|0)+236>>2]=a;c[h>>2]=yd(c[g>>2]|0)|0;break}if((c[h>>2]|0)==23){c[(c[e>>2]|0)+236>>2]=1024;c[h>>2]=0}}else{c[h>>2]=7}}while(0);oc(c[f>>2]|0);c[c[j>>2]>>2]=c[h>>2];i=d;return}function xn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+48|0;m=l;j=l+36|0;k=l+12|0;n=l+16|0;h=l+20|0;f=l+24|0;g=l+28|0;d=l+32|0;c[j>>2]=a;c[k>>2]=b;if((c[c[j>>2]>>2]|0)!=0){i=l;return}if((c[(c[k>>2]|0)+44>>2]|0)!=0){b=c[(c[k>>2]|0)+44>>2]|0}else{b=8256}c[d>>2]=b;a=c[(c[k>>2]|0)+12>>2]|0;c[m>>2]=1;Of(a,1,m)|0;c[m>>2]=c[c[(c[k>>2]|0)+28>>2]>>2];c[g>>2]=wc(8272,m)|0;c[n>>2]=1;while(1){if((c[g>>2]|0)!=0){a=(c[n>>2]|0)<(c[(c[k>>2]|0)+24>>2]|0)}else{a=0}b=c[g>>2]|0;if(!a){break}a=c[(c[(c[k>>2]|0)+28>>2]|0)+(c[n>>2]<<2)>>2]|0;c[m>>2]=b;c[m+4>>2]=a;c[g>>2]=wc(8280,m)|0;c[n>>2]=(c[n>>2]|0)+1}n=c[(c[k>>2]|0)+20>>2]|0;a=c[d>>2]|0;c[m>>2]=b;c[m+4>>2]=n;c[m+8>>2]=a;c[f>>2]=wc(8288,m)|0;if((c[g>>2]|0)!=0){if((c[f>>2]|0)!=0){c[h>>2]=Lf(c[(c[k>>2]|0)+12>>2]|0,c[f>>2]|0)|0}else{e=11}}else{e=11}if((e|0)==11){c[h>>2]=7}oc(c[f>>2]|0);oc(c[g>>2]|0);c[c[j>>2]>>2]=c[h>>2];i=l;return}function yn(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;g=d+16|0;j=d;e=d+4|0;h=d+8|0;f=d+12|0;c[g>>2]=b;c[j>>2]=3+((cL(c[g>>2]|0)|0)<<1);c[e>>2]=mc(c[j>>2]|0)|0;if((c[e>>2]|0)==0){j=c[e>>2]|0;i=d;return j|0}c[f>>2]=c[e>>2];j=c[f>>2]|0;c[f>>2]=j+1;a[j>>0]=34;c[h>>2]=0;while(1){if((a[(c[g>>2]|0)+(c[h>>2]|0)>>0]|0)==0){break}if((a[(c[g>>2]|0)+(c[h>>2]|0)>>0]|0)==34){j=c[f>>2]|0;c[f>>2]=j+1;a[j>>0]=34}b=a[(c[g>>2]|0)+(c[h>>2]|0)>>0]|0;j=c[f>>2]|0;c[f>>2]=j+1;a[j>>0]=b;c[h>>2]=(c[h>>2]|0)+1}j=c[f>>2]|0;c[f>>2]=j+1;a[j>>0]=34;j=c[f>>2]|0;c[f>>2]=j+1;a[j>>0]=0;j=c[e>>2]|0;i=d;return j|0}function zn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+48|0;k=l;g=l+40|0;j=l+8|0;n=l+12|0;m=l+16|0;h=l+32|0;f=l+36|0;c[g>>2]=a;c[j>>2]=b;c[n>>2]=d;if((c[c[g>>2]>>2]|0)!=0){i=l;return}c[m>>2]=e;c[h>>2]=sc(c[n>>2]|0,m)|0;if((c[h>>2]|0)!=0){if((c[c[j>>2]>>2]|0)!=0){a=c[h>>2]|0;c[k>>2]=c[c[j>>2]>>2];c[k+4>>2]=a;c[f>>2]=wc(8800,k)|0;oc(c[h>>2]|0);c[h>>2]=c[f>>2]}}if((c[h>>2]|0)==0){c[c[g>>2]>>2]=7}oc(c[c[j>>2]>>2]|0);c[c[j>>2]>>2]=c[h>>2];i=l;return}function An(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;e=f+16|0;k=f;h=f+4|0;j=f+8|0;g=f+12|0;c[k>>2]=b;c[h>>2]=d;c[g>>2]=0;c[j>>2]=c[c[k>>2]>>2];while(1){if((a[c[j>>2]>>0]|0)<48){break}if((a[c[j>>2]>>0]|0)>57){break}c[g>>2]=((c[g>>2]|0)*10|0)+((a[c[j>>2]>>0]|0)-48);c[j>>2]=(c[j>>2]|0)+1}if((c[j>>2]|0)==(c[c[k>>2]>>2]|0)){c[e>>2]=1;b=c[e>>2]|0;i=f;return b|0}else{c[c[h>>2]>>2]=c[g>>2];c[c[k>>2]>>2]=c[j>>2];c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}return 0}function Bn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=i;i=i+48|0;p=l;f=l+36|0;q=l+32|0;h=l+28|0;j=l+24|0;g=l+40|0;k=l+12|0;e=l+8|0;m=l+4|0;n=l+16|0;o=l+20|0;c[f>>2]=a;c[q>>2]=b;c[h>>2]=d;c[g>>2]=0;c[j>>2]=qe(c[f>>2]|0)|0;c[k>>2]=Jd(c[c[h>>2]>>2]|0)|0;c[e>>2]=(Kd(c[c[h>>2]>>2]|0)|0)+1;if((c[q>>2]|0)==2){c[n>>2]=Kd(c[(c[h>>2]|0)+4>>2]|0)|0;if((c[n>>2]|0)!=4){Xd(c[f>>2]|0,9088,-1);i=l;return}c[g>>2]=c[(Hd(c[(c[h>>2]|0)+4>>2]|0)|0)>>2];c[m>>2]=Yh(c[j>>2]|0,c[k>>2]|0,c[e>>2]|0,c[g>>2]|0)|0;if((c[m>>2]|0)==(c[g>>2]|0)){Xd(c[f>>2]|0,9112,-1);i=l;return}}else{c[g>>2]=pi(c[j>>2]|0,c[k>>2]|0,c[e>>2]|0)|0;if((c[g>>2]|0)==0){c[p>>2]=c[k>>2];c[o>>2]=wc(4032,p)|0;Xd(c[f>>2]|0,c[o>>2]|0,-1);oc(c[o>>2]|0);i=l;return}}Td(c[f>>2]|0,g,4,-1);i=l;return}function Cn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;g=h+12|0;f=h;k=h+4|0;j=h+8|0;c[g>>2]=b;c[f>>2]=d;c[k>>2]=e;e=c[c[f>>2]>>2]|0;if((c[(c[f>>2]|0)+4>>2]|0)!=0){c[c[(c[f>>2]|0)+4>>2]>>2]=e}else{c[(c[g>>2]|0)+8>>2]=e}if((c[c[f>>2]>>2]|0)!=0){c[(c[c[f>>2]>>2]|0)+4>>2]=c[(c[f>>2]|0)+4>>2]}c[j>>2]=(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<3);if((c[(c[j>>2]|0)+4>>2]|0)==(c[f>>2]|0)){c[(c[j>>2]|0)+4>>2]=c[c[f>>2]>>2]}b=c[j>>2]|0;c[b>>2]=(c[b>>2]|0)+ -1;if((c[c[j>>2]>>2]|0)<=0){c[(c[j>>2]|0)+4>>2]=0}if((a[(c[g>>2]|0)+1>>0]|0)!=0){if((c[(c[f>>2]|0)+12>>2]|0)!=0){bi(c[(c[f>>2]|0)+12>>2]|0)}}bi(c[f>>2]|0);b=(c[g>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+ -1;if((c[(c[g>>2]|0)+4>>2]|0)>0){i=h;return}ai(c[g>>2]|0);i=h;return}function Dn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+32|0;f=j+28|0;m=j;e=j+4|0;n=j+8|0;g=j+12|0;l=j+16|0;h=j+20|0;k=j+24|0;c[m>>2]=b;c[e>>2]=d;c[n>>2]=En(c[e>>2]<<3)|0;if((c[n>>2]|0)==0){c[f>>2]=1;b=c[f>>2]|0;i=j;return b|0}bi(c[(c[m>>2]|0)+16>>2]|0);c[(c[m>>2]|0)+16>>2]=c[n>>2];c[(c[m>>2]|0)+12>>2]=c[e>>2];c[h>>2]=ri(a[c[m>>2]>>0]|0)|0;c[g>>2]=c[(c[m>>2]|0)+8>>2];c[(c[m>>2]|0)+8>>2]=0;while(1){if((c[g>>2]|0)==0){break}b=zb[c[h>>2]&127](c[(c[g>>2]|0)+12>>2]|0,c[(c[g>>2]|0)+16>>2]|0)|0;c[k>>2]=b&(c[e>>2]|0)-1;c[l>>2]=c[c[g>>2]>>2];Fn(c[m>>2]|0,(c[n>>2]|0)+(c[k>>2]<<3)|0,c[g>>2]|0);c[g>>2]=c[l>>2]}c[f>>2]=0;b=c[f>>2]|0;i=j;return b|0}function En(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=mc(c[e>>2]|0)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}aL(c[d>>2]|0,0,c[e>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}function Fn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;f=h+12|0;g=h;e=h+4|0;j=h+8|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=d;c[j>>2]=c[(c[g>>2]|0)+4>>2];if((c[j>>2]|0)==0){c[c[e>>2]>>2]=c[(c[f>>2]|0)+8>>2];if((c[(c[f>>2]|0)+8>>2]|0)!=0){c[(c[(c[f>>2]|0)+8>>2]|0)+4>>2]=c[e>>2]}c[(c[e>>2]|0)+4>>2]=0;c[(c[f>>2]|0)+8>>2]=c[e>>2];b=c[g>>2]|0;a=c[b>>2]|0;a=a+1|0;c[b>>2]=a;b=c[e>>2]|0;a=c[g>>2]|0;a=a+4|0;c[a>>2]=b;i=h;return}c[c[e>>2]>>2]=c[j>>2];c[(c[e>>2]|0)+4>>2]=c[(c[j>>2]|0)+4>>2];d=c[e>>2]|0;if((c[(c[j>>2]|0)+4>>2]|0)!=0){c[c[(c[j>>2]|0)+4>>2]>>2]=d}else{c[(c[f>>2]|0)+8>>2]=d}c[(c[j>>2]|0)+4>>2]=c[e>>2];b=c[g>>2]|0;a=c[b>>2]|0;a=a+1|0;c[b>>2]=a;b=c[e>>2]|0;a=c[g>>2]|0;a=a+4|0;c[a>>2]=b;i=h;return}function Gn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+32|0;f=e+16|0;g=e+8|0;h=e+12|0;c[e>>2]=a;c[e+4>>2]=b;c[g>>2]=d;c[h>>2]=mc(4)|0;if((c[h>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=e;return a|0}else{a=c[h>>2]|0;c[a+0>>2]=0;c[c[g>>2]>>2]=c[h>>2];c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}return 0}function Hn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;oc(c[d>>2]|0);i=b;return 0}function In(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+20|0;k=f+4|0;l=f+8|0;j=f+12|0;h=f+16|0;c[f>>2]=a;c[k>>2]=b;c[l>>2]=d;c[j>>2]=e;c[h>>2]=mc(28)|0;if((c[h>>2]|0)==0){c[g>>2]=7;a=c[g>>2]|0;i=f;return a|0}c[(c[h>>2]|0)+4>>2]=c[k>>2];do{if((c[k>>2]|0)==0){c[(c[h>>2]|0)+8>>2]=0}else{if((c[l>>2]|0)<0){a=cL(c[k>>2]|0)|0;c[(c[h>>2]|0)+8>>2]=a;break}else{c[(c[h>>2]|0)+8>>2]=c[l>>2];break}}}while(0);c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+20>>2]=0;c[(c[h>>2]|0)+24>>2]=0;c[c[j>>2]>>2]=c[h>>2];c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}function Jn(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];oc(c[(c[d>>2]|0)+20>>2]|0);oc(c[d>>2]|0);i=b;return 0}function Kn(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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;l=i;i=i+64|0;w=l+48|0;x=l+44|0;t=l+40|0;s=l+36|0;u=l+32|0;v=l+28|0;j=l+24|0;m=l+16|0;q=l+12|0;n=l+8|0;p=l+4|0;o=l;r=l+20|0;c[x>>2]=b;c[t>>2]=d;c[s>>2]=e;c[u>>2]=f;c[v>>2]=g;c[j>>2]=h;c[m>>2]=c[x>>2];c[q>>2]=c[(c[m>>2]|0)+4>>2];do{if((c[(c[m>>2]|0)+12>>2]|0)>=(c[(c[m>>2]|0)+8>>2]|0)){k=23;break}while(1){if((c[(c[m>>2]|0)+12>>2]|0)<(c[(c[m>>2]|0)+8>>2]|0)){x=a[(c[q>>2]|0)+(c[(c[m>>2]|0)+12>>2]|0)>>0]|0;c[p>>2]=x;if((x&128|0)==0){if((c[p>>2]|0)<48){f=1}else{f=(a[9160+((c[p>>2]|0)-48)>>0]|0)!=0^1}}else{f=0}}else{f=0}e=(c[m>>2]|0)+12|0;h=c[e>>2]|0;if(!f){break}c[e>>2]=h+1}c[n>>2]=h;while(1){if((c[(c[m>>2]|0)+12>>2]|0)<(c[(c[m>>2]|0)+8>>2]|0)){x=a[(c[q>>2]|0)+(c[(c[m>>2]|0)+12>>2]|0)>>0]|0;c[p>>2]=x;if((x&128|0)==0){if((c[p>>2]|0)<48){h=1}else{h=(a[9160+((c[p>>2]|0)-48)>>0]|0)!=0^1}}else{h=0}f=h^1}else{f=0}e=(c[m>>2]|0)+12|0;h=c[e>>2]|0;if(!f){break}c[e>>2]=h+1}}while((h|0)<=(c[n>>2]|0));if((k|0)==23){c[w>>2]=101;x=c[w>>2]|0;i=l;return x|0}c[o>>2]=(c[(c[m>>2]|0)+12>>2]|0)-(c[n>>2]|0);do{if((c[o>>2]|0)>(c[(c[m>>2]|0)+24>>2]|0)){c[(c[m>>2]|0)+24>>2]=(c[o>>2]|0)+20;c[r>>2]=qc(c[(c[m>>2]|0)+20>>2]|0,c[(c[m>>2]|0)+24>>2]|0)|0;if((c[r>>2]|0)!=0){c[(c[m>>2]|0)+20>>2]=c[r>>2];break}c[w>>2]=7;x=c[w>>2]|0;i=l;return x|0}}while(0);Ln((c[q>>2]|0)+(c[n>>2]|0)|0,c[o>>2]|0,c[(c[m>>2]|0)+20>>2]|0,c[s>>2]|0);c[c[t>>2]>>2]=c[(c[m>>2]|0)+20>>2];c[c[u>>2]>>2]=c[n>>2];c[c[v>>2]>>2]=c[(c[m>>2]|0)+12>>2];g=(c[m>>2]|0)+16|0;x=c[g>>2]|0;c[g>>2]=x+1;c[c[j>>2]>>2]=x;c[w>>2]=0;x=c[w>>2]|0;i=l;return x|0}function Ln(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=i;i=i+64|0;r=l+8|0;p=l+28|0;h=l+24|0;g=l+20|0;k=l+12|0;m=l+16|0;q=l+36|0;j=l+4|0;o=l;s=l+32|0;c[r>>2]=b;c[p>>2]=d;c[h>>2]=e;c[g>>2]=f;if((c[p>>2]|0)<3|(c[p>>2]|0)>=21){Mn(c[r>>2]|0,c[p>>2]|0,c[h>>2]|0,c[g>>2]|0);i=l;return}c[k>>2]=0;c[m>>2]=22;while(1){if((c[k>>2]|0)>=(c[p>>2]|0)){break}a[s>>0]=a[(c[r>>2]|0)+(c[k>>2]|0)>>0]|0;if((a[s>>0]|0)>=65){if((a[s>>0]|0)<=90){a[q+(c[m>>2]|0)>>0]=(a[s>>0]|0)+97-65}else{n=8}}else{n=8}if((n|0)==8){n=0;if((a[s>>0]|0)<97){n=11;break}if((a[s>>0]|0)>122){n=11;break}a[q+(c[m>>2]|0)>>0]=a[s>>0]|0}c[k>>2]=(c[k>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+ -1}if((n|0)==11){Mn(c[r>>2]|0,c[p>>2]|0,c[h>>2]|0,c[g>>2]|0);i=l;return}b=q+23|0;a[b+0>>0]=0;a[b+1>>0]=0;a[b+2>>0]=0;a[b+3>>0]=0;a[b+4>>0]=0;c[j>>2]=q+((c[m>>2]|0)+1);if((a[c[j>>2]>>0]|0)==115){if((Nn(j,9240,9248,0)|0)==0){if((Nn(j,9256,9264,0)|0)==0){if((Nn(j,9248,9248,0)|0)==0){c[j>>2]=(c[j>>2]|0)+1}}}}c[o>>2]=c[j>>2];do{if((Nn(j,9272,9280,43)|0)==0){if((Nn(j,9288,1784,44)|0)==0){if((Nn(j,9296,1784,44)|0)==0){break}}if((c[j>>2]|0)!=(c[o>>2]|0)){if((Nn(j,9304,9312,0)|0)==0){if((Nn(j,9320,9328,0)|0)==0){if((Nn(j,9336,9344,0)|0)==0){if((Qn(c[j>>2]|0)|0)!=0){if((a[c[j>>2]>>0]|0)!=108){if((a[c[j>>2]>>0]|0)!=115){if((a[c[j>>2]>>0]|0)!=122){c[j>>2]=(c[j>>2]|0)+1;break}}}}if((Rn(c[j>>2]|0)|0)!=0){if((Sn(c[j>>2]|0)|0)!=0){b=(c[j>>2]|0)+ -1|0;c[j>>2]=b;a[b>>0]=101}}}}}}}}while(0);if((a[c[j>>2]>>0]|0)==121){if((Pn((c[j>>2]|0)+1|0)|0)!=0){a[c[j>>2]>>0]=105}}switch(a[(c[j>>2]|0)+1>>0]|0){case 101:{Nn(j,9408,9344,43)|0;break};case 111:{if((Nn(j,9504,9344,43)|0)==0){if((Nn(j,9512,9312,43)|0)==0){Nn(j,9520,9312,43)|0}}break};case 99:{if((Nn(j,9376,9384,43)|0)==0){Nn(j,9392,9400,43)|0}break};case 108:{if((Nn(j,9432,9328,43)|0)==0){if((Nn(j,9440,9448,43)|0)==0){if((Nn(j,9456,9464,43)|0)==0){if((Nn(j,9472,9480,43)|0)==0){Nn(j,9488,9496,43)|0}}}}break};case 116:{if((Nn(j,9576,9448,43)|0)==0){if((Nn(j,9584,9544,43)|0)==0){Nn(j,9592,9328,43)|0}}break};case 103:{Nn(j,9416,9424,43)|0;break};case 97:{if((Nn(j,9352,9312,43)|0)==0){Nn(j,9360,9368,43)|0}break};case 115:{if((Nn(j,9528,9448,43)|0)==0){if((Nn(j,9536,9544,43)|0)==0){if((Nn(j,9552,9560,43)|0)==0){Nn(j,9568,9496,43)|0}}}break};default:{}}m=a[c[j>>2]>>0]|0;if((m|0)==108){if((Nn(j,9640,9608,43)|0)==0){Nn(j,9648,1784,43)|0}}else if((m|0)==101){if((Nn(j,9600,9608,43)|0)==0){if((Nn(j,9616,1784,43)|0)==0){Nn(j,9624,9448,43)|0}}}else if((m|0)==105){Nn(j,9632,9608,43)|0}else if((m|0)==115){Nn(j,9656,1784,43)|0}a:do{switch(a[(c[j>>2]|0)+1>>0]|0){case 108:{if((a[c[j>>2]>>0]|0)==101){if((a[(c[j>>2]|0)+2>>0]|0)==98){if((a[(c[j>>2]|0)+3>>0]|0)!=97){if((a[(c[j>>2]|0)+3>>0]|0)!=105){break a}}if((Tn((c[j>>2]|0)+4|0)|0)!=0){c[j>>2]=(c[j>>2]|0)+4}}}break};case 105:{if((a[c[j>>2]>>0]|0)==99){if((Tn((c[j>>2]|0)+2|0)|0)!=0){c[j>>2]=(c[j>>2]|0)+2}}break};case 116:{if((Nn(j,9696,1784,45)|0)==0){Nn(j,9704,1784,45)|0}break};case 99:{if((a[c[j>>2]>>0]|0)==101){if((a[(c[j>>2]|0)+2>>0]|0)==110){if((a[(c[j>>2]|0)+3>>0]|0)!=97){if((a[(c[j>>2]|0)+3>>0]|0)!=101){break a}}if((Tn((c[j>>2]|0)+4|0)|0)!=0){c[j>>2]=(c[j>>2]|0)+4}}}break};case 110:{if((a[c[j>>2]>>0]|0)==116){m=c[j>>2]|0;if((a[(c[j>>2]|0)+2>>0]|0)==97){if((Tn(m+3|0)|0)==0){break a}c[j>>2]=(c[j>>2]|0)+3;break a}if((a[m+2>>0]|0)==101){if((Nn(j,9664,1784,45)|0)==0){if((Nn(j,9672,1784,45)|0)==0){Nn(j,9680,1784,45)|0}}}}break};case 115:{if((a[c[j>>2]>>0]|0)==109){if((a[(c[j>>2]|0)+2>>0]|0)==105){if((Tn((c[j>>2]|0)+3|0)|0)!=0){c[j>>2]=(c[j>>2]|0)+3}}}break};case 101:{if((a[c[j>>2]>>0]|0)==114){if((Tn((c[j>>2]|0)+2|0)|0)!=0){c[j>>2]=(c[j>>2]|0)+2}}break};case 117:{if((a[c[j>>2]>>0]|0)==115){if((a[(c[j>>2]|0)+2>>0]|0)==111){if((Tn((c[j>>2]|0)+3|0)|0)!=0){c[j>>2]=(c[j>>2]|0)+3}}}break};case 111:{m=c[j>>2]|0;if((a[c[j>>2]>>0]|0)==117){if((Tn(m+2|0)|0)==0){break a}c[j>>2]=(c[j>>2]|0)+2;break a}if((a[m+3>>0]|0)!=115){if((a[(c[j>>2]|0)+3>>0]|0)!=116){break a}}Nn(j,9688,1784,45)|0;break};case 122:case 118:{if((a[c[j>>2]>>0]|0)==101){if((a[(c[j>>2]|0)+2>>0]|0)==105){if((Tn((c[j>>2]|0)+3|0)|0)!=0){c[j>>2]=(c[j>>2]|0)+3}}}break};case 97:{if((a[c[j>>2]>>0]|0)==108){if((Tn((c[j>>2]|0)+2|0)|0)!=0){c[j>>2]=(c[j>>2]|0)+2}}break};default:{}}}while(0);do{if((a[c[j>>2]>>0]|0)==101){b=(Tn((c[j>>2]|0)+1|0)|0)!=0;m=(c[j>>2]|0)+1|0;if(b){c[j>>2]=m;break}if((Rn(m)|0)!=0){if((Sn((c[j>>2]|0)+1|0)|0)==0){c[j>>2]=(c[j>>2]|0)+1}}}}while(0);if((Tn(c[j>>2]|0)|0)!=0){if((a[c[j>>2]>>0]|0)==108){if((a[(c[j>>2]|0)+1>>0]|0)==108){c[j>>2]=(c[j>>2]|0)+1}}}b=cL(c[j>>2]|0)|0;c[k>>2]=b;c[c[g>>2]>>2]=b;a[(c[h>>2]|0)+(c[k>>2]|0)>>0]=0;while(1){if((a[c[j>>2]>>0]|0)==0){break}d=c[j>>2]|0;c[j>>2]=d+1;d=a[d>>0]|0;b=(c[k>>2]|0)+ -1|0;c[k>>2]=b;a[(c[h>>2]|0)+b>>0]=d}i=l;return}function Mn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=i;i=i+48|0;r=l+16|0;g=l+28|0;j=l+24|0;k=l+20|0;o=l+12|0;m=l+8|0;n=l+4|0;p=l;q=l+32|0;c[r>>2]=b;c[g>>2]=d;c[j>>2]=e;c[k>>2]=f;c[p>>2]=0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[g>>2]|0)){break}a[q>>0]=a[(c[r>>2]|0)+(c[o>>2]|0)>>0]|0;if((a[q>>0]|0)>=65){if((a[q>>0]|0)<=90){a[(c[j>>2]|0)+(c[o>>2]|0)>>0]=(a[q>>0]|0)-65+97}else{h=6}}else{h=6}if((h|0)==6){h=0;if((a[q>>0]|0)>=48){if((a[q>>0]|0)<=57){c[p>>2]=1}}a[(c[j>>2]|0)+(c[o>>2]|0)>>0]=a[q>>0]|0}c[o>>2]=(c[o>>2]|0)+1}c[m>>2]=(c[p>>2]|0)!=0?3:10;if((c[g>>2]|0)<=(c[m>>2]<<1|0)){d=c[o>>2]|0;b=c[j>>2]|0;d=b+d|0;a[d>>0]=0;d=c[o>>2]|0;b=c[k>>2]|0;c[b>>2]=d;i=l;return}c[n>>2]=c[m>>2];c[o>>2]=(c[g>>2]|0)-(c[m>>2]|0);while(1){if((c[o>>2]|0)>=(c[g>>2]|0)){break}a[(c[j>>2]|0)+(c[n>>2]|0)>>0]=a[(c[j>>2]|0)+(c[o>>2]|0)>>0]|0;c[o>>2]=(c[o>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+1}c[o>>2]=c[n>>2];d=c[o>>2]|0;b=c[j>>2]|0;d=b+d|0;a[d>>0]=0;d=c[o>>2]|0;b=c[k>>2]|0;c[b>>2]=d;i=l;return}function Nn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;l=h+20|0;m=h;n=h+4|0;j=h+8|0;k=h+12|0;g=h+16|0;c[m>>2]=b;c[n>>2]=d;c[j>>2]=e;c[k>>2]=f;c[g>>2]=c[c[m>>2]>>2];while(1){if((a[c[n>>2]>>0]|0)==0){break}if((a[c[n>>2]>>0]|0)!=(a[c[g>>2]>>0]|0)){break}c[g>>2]=(c[g>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+1}if((a[c[n>>2]>>0]|0)!=0){c[l>>2]=0;b=c[l>>2]|0;i=h;return b|0}if((c[k>>2]|0)!=0){if((ub[c[k>>2]&63](c[g>>2]|0)|0)==0){c[l>>2]=1;b=c[l>>2]|0;i=h;return b|0}}while(1){if((a[c[j>>2]>>0]|0)==0){break}d=c[j>>2]|0;c[j>>2]=d+1;d=a[d>>0]|0;b=(c[g>>2]|0)+ -1|0;c[g>>2]=b;a[b>>0]=d}c[c[m>>2]>>2]=c[g>>2];c[l>>2]=1;b=c[l>>2]|0;i=h;return b|0}function On(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+4|0;f=e;c[f>>2]=b;while(1){g=(Un(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}if((a[b>>0]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=e;return g|0}while(1){g=(Vn(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}c[d>>2]=(a[b>>0]|0)!=0&1;g=c[d>>2]|0;i=e;return g|0}function Pn(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;c[e>>2]=b;while(1){f=(Vn(c[e>>2]|0)|0)!=0;b=c[e>>2]|0;if(!f){break}c[e>>2]=b+1}i=d;return(a[b>>0]|0)!=0|0}function Qn(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if((Vn(c[e>>2]|0)|0)==0){e=0;e=e&1;i=d;return e|0}e=(a[c[e>>2]>>0]|0)==(a[(c[e>>2]|0)+1>>0]|0);e=e&1;i=d;return e|0}function Rn(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+4|0;f=e;c[f>>2]=b;while(1){g=(Un(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}if((a[b>>0]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=e;return g|0}while(1){g=(Vn(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}if((a[b>>0]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=e;return g|0}while(1){g=(Un(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}if((a[b>>0]|0)==0){c[d>>2]=1;g=c[d>>2]|0;i=e;return g|0}while(1){g=(Vn(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}c[d>>2]=(a[b>>0]|0)==0&1;g=c[d>>2]|0;i=e;return g|0}function Sn(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if((Vn(c[e>>2]|0)|0)!=0){if((a[c[e>>2]>>0]|0)!=119){if((a[c[e>>2]>>0]|0)!=120){if((a[c[e>>2]>>0]|0)!=121){if((Un((c[e>>2]|0)+1|0)|0)!=0){b=(Vn((c[e>>2]|0)+2|0)|0)!=0}else{b=0}}else{b=0}}else{b=0}}else{b=0}}else{b=0}i=d;return b&1|0}function Tn(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+4|0;f=e;c[f>>2]=b;while(1){g=(Un(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}if((a[b>>0]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=e;return g|0}while(1){g=(Vn(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}if((a[b>>0]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=e;return g|0}while(1){g=(Un(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}if((a[b>>0]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=e;return g|0}while(1){g=(Vn(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}c[d>>2]=(a[b>>0]|0)!=0&1;g=c[d>>2]|0;i=e;return g|0}function Un(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;h=d+12|0;c[g>>2]=b;a[h>>0]=a[c[g>>2]>>0]|0;if((a[h>>0]|0)==0){c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}c[f>>2]=a[9712+((a[h>>0]|0)-97)>>0]|0;if((c[f>>2]|0)<2){c[e>>2]=1-(c[f>>2]|0);h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=Vn((c[g>>2]|0)+1|0)|0;h=c[e>>2]|0;i=d;return h|0}return 0}function Vn(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;h=d+12|0;c[g>>2]=b;a[h>>0]=a[c[g>>2]>>0]|0;if((a[h>>0]|0)==0){c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}c[f>>2]=a[9712+((a[h>>0]|0)-97)>>0]|0;if((c[f>>2]|0)<2){c[e>>2]=c[f>>2];h=c[e>>2]|0;i=d;return h|0}if((a[(c[g>>2]|0)+1>>0]|0)==0){b=1}else{b=(Un((c[g>>2]|0)+1|0)|0)!=0}c[e>>2]=b&1;h=c[e>>2]|0;i=d;return h|0}function Wn(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+48|0;h=m+28|0;q=m+24|0;l=m+20|0;k=m+16|0;j=m+12|0;g=m+4|0;o=m;n=m+32|0;p=m+8|0;c[q>>2]=b;c[l>>2]=e;c[k>>2]=f;c[j>>2]=mc(132)|0;if((c[j>>2]|0)==0){c[h>>2]=7;b=c[h>>2]|0;i=m;return b|0}aL(c[j>>2]|0,0,132)|0;a:do{if((c[q>>2]|0)>1){c[o>>2]=cL(c[(c[l>>2]|0)+4>>2]|0)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[o>>2]|0)){break a}a[n>>0]=a[(c[(c[l>>2]|0)+4>>2]|0)+(c[g>>2]|0)>>0]|0;if((d[n>>0]|0|0)>=128){break}a[(c[j>>2]|0)+4+(d[n>>0]|0)>>0]=1;c[g>>2]=(c[g>>2]|0)+1}oc(c[j>>2]|0);c[h>>2]=1;b=c[h>>2]|0;i=m;return b|0}else{c[p>>2]=1;while(1){if((c[p>>2]|0)>=128){break a}b=(ao(c[p>>2]|0)|0)!=0^1;a[(c[j>>2]|0)+4+(c[p>>2]|0)>>0]=b?-1:0;c[p>>2]=(c[p>>2]|0)+1}}}while(0);c[c[k>>2]>>2]=c[j>>2];c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}function Xn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;oc(c[d>>2]|0);i=b;return 0}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+20|0;k=f+4|0;l=f+8|0;j=f+12|0;h=f+16|0;c[f>>2]=a;c[k>>2]=b;c[l>>2]=d;c[j>>2]=e;c[h>>2]=mc(28)|0;if((c[h>>2]|0)==0){c[g>>2]=7;a=c[g>>2]|0;i=f;return a|0}c[(c[h>>2]|0)+4>>2]=c[k>>2];do{if((c[k>>2]|0)==0){c[(c[h>>2]|0)+8>>2]=0}else{if((c[l>>2]|0)<0){a=cL(c[k>>2]|0)|0;c[(c[h>>2]|0)+8>>2]=a;break}else{c[(c[h>>2]|0)+8>>2]=c[l>>2];break}}}while(0);c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+20>>2]=0;c[(c[h>>2]|0)+24>>2]=0;c[c[j>>2]>>2]=c[h>>2];c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}function Zn(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];oc(c[(c[d>>2]|0)+20>>2]|0);oc(c[d>>2]|0);i=b;return 0}function _n(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;m=i;i=i+64|0;w=m+28|0;A=m+52|0;o=m+48|0;q=m+44|0;s=m+40|0;t=m+36|0;u=m+32|0;n=m+24|0;z=m+20|0;x=m+16|0;r=m+12|0;v=m+8|0;p=m+4|0;y=m;k=m+56|0;c[A>>2]=b;c[o>>2]=e;c[q>>2]=f;c[s>>2]=g;c[t>>2]=h;c[u>>2]=j;c[n>>2]=c[A>>2];c[z>>2]=c[c[A>>2]>>2];c[x>>2]=c[(c[n>>2]|0)+4>>2];do{if((c[(c[n>>2]|0)+12>>2]|0)>=(c[(c[n>>2]|0)+8>>2]|0)){l=25;break}while(1){if((c[(c[n>>2]|0)+12>>2]|0)<(c[(c[n>>2]|0)+8>>2]|0)){h=($n(c[z>>2]|0,a[(c[x>>2]|0)+(c[(c[n>>2]|0)+12>>2]|0)>>0]|0)|0)!=0}else{h=0}g=(c[n>>2]|0)+12|0;j=c[g>>2]|0;if(!h){break}c[g>>2]=j+1}c[r>>2]=j;while(1){if((c[(c[n>>2]|0)+12>>2]|0)<(c[(c[n>>2]|0)+8>>2]|0)){h=($n(c[z>>2]|0,a[(c[x>>2]|0)+(c[(c[n>>2]|0)+12>>2]|0)>>0]|0)|0)!=0^1}else{h=0}g=(c[n>>2]|0)+12|0;j=c[g>>2]|0;if(!h){break}c[g>>2]=j+1}}while((j|0)<=(c[r>>2]|0));if((l|0)==25){c[w>>2]=101;A=c[w>>2]|0;i=m;return A|0}c[p>>2]=(c[(c[n>>2]|0)+12>>2]|0)-(c[r>>2]|0);do{if((c[p>>2]|0)>(c[(c[n>>2]|0)+24>>2]|0)){c[(c[n>>2]|0)+24>>2]=(c[p>>2]|0)+20;c[y>>2]=qc(c[(c[n>>2]|0)+20>>2]|0,c[(c[n>>2]|0)+24>>2]|0)|0;if((c[y>>2]|0)!=0){c[(c[n>>2]|0)+20>>2]=c[y>>2];break}c[w>>2]=7;A=c[w>>2]|0;i=m;return A|0}}while(0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[p>>2]|0)){break}a[k>>0]=a[(c[x>>2]|0)+((c[r>>2]|0)+(c[v>>2]|0))>>0]|0;if((d[k>>0]|0|0)>=65){if((d[k>>0]|0|0)<=90){y=(d[k>>0]|0)-65+97|0}else{l=22}}else{l=22}if((l|0)==22){l=0;y=d[k>>0]|0}a[(c[(c[n>>2]|0)+20>>2]|0)+(c[v>>2]|0)>>0]=y;c[v>>2]=(c[v>>2]|0)+1}c[c[o>>2]>>2]=c[(c[n>>2]|0)+20>>2];c[c[q>>2]>>2]=c[p>>2];c[c[s>>2]>>2]=c[r>>2];c[c[t>>2]>>2]=c[(c[n>>2]|0)+12>>2];b=(c[n>>2]|0)+16|0;A=c[b>>2]|0;c[b>>2]=A+1;c[c[u>>2]>>2]=A;c[w>>2]=0;A=c[w>>2]|0;i=m;return A|0}function $n(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f;h=f+4|0;c[g>>2]=b;a[h>>0]=e;if((d[h>>0]|0)>=128){b=0;b=b&1;i=f;return b|0}b=(a[(c[g>>2]|0)+4+(d[h>>0]|0)>>0]|0)!=0;b=b&1;i=f;return b|0}function ao(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)>=48&(c[d>>2]|0)<=57){a=1}else{if((c[d>>2]|0)>=65&(c[d>>2]|0)<=90){a=1}else{if((c[d>>2]|0)>=97){a=(c[d>>2]|0)<=122}else{a=0}}}i=b;return a&1|0}function bo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=i;i=i+64|0;r=l;k=l+52|0;q=l+48|0;w=l+40|0;v=l+36|0;u=l+32|0;j=l+56|0;h=l+20|0;s=l+16|0;p=l+12|0;t=l+8|0;o=l+4|0;m=l+24|0;n=l+28|0;c[q>>2]=a;c[l+44>>2]=b;c[w>>2]=d;c[v>>2]=e;c[u>>2]=f;c[j>>2]=g;do{if(!((c[w>>2]|0)!=4&(c[w>>2]|0)!=5)){c[h>>2]=c[(c[v>>2]|0)+4>>2];c[p>>2]=cL(c[h>>2]|0)|0;if((c[w>>2]|0)==5){if((c[p>>2]|0)!=4){break}if(0!=(Tb(1816,c[h>>2]|0,4)|0)){break}c[h>>2]=c[(c[v>>2]|0)+12>>2];c[p>>2]=cL(c[h>>2]|0)|0;c[s>>2]=c[(c[v>>2]|0)+16>>2]}else{c[s>>2]=c[(c[v>>2]|0)+12>>2]}c[t>>2]=cL(c[s>>2]|0)|0;c[m>>2]=Lf(c[q>>2]|0,9888)|0;if((c[m>>2]|0)!=0){c[k>>2]=c[m>>2];a=c[k>>2]|0;i=l;return a|0}c[o>>2]=296+(c[p>>2]|0)+(c[t>>2]|0)+2;c[n>>2]=mc(c[o>>2]|0)|0;if((c[n>>2]|0)!=0){aL(c[n>>2]|0,0,c[o>>2]|0)|0;c[(c[n>>2]|0)+12>>2]=(c[n>>2]|0)+16;c[(c[(c[n>>2]|0)+12>>2]|0)+16>>2]=(c[(c[n>>2]|0)+12>>2]|0)+280;c[(c[(c[n>>2]|0)+12>>2]|0)+20>>2]=(c[(c[(c[n>>2]|0)+12>>2]|0)+16>>2]|0)+((c[p>>2]|0)+1);c[(c[(c[n>>2]|0)+12>>2]|0)+12>>2]=c[q>>2];c[(c[(c[n>>2]|0)+12>>2]|0)+248>>2]=1;fL(c[(c[(c[n>>2]|0)+12>>2]|0)+16>>2]|0,c[h>>2]|0,c[p>>2]|0)|0;fL(c[(c[(c[n>>2]|0)+12>>2]|0)+20>>2]|0,c[s>>2]|0,c[t>>2]|0)|0;yi(c[(c[(c[n>>2]|0)+12>>2]|0)+20>>2]|0);c[c[u>>2]>>2]=c[n>>2];c[k>>2]=0;a=c[k>>2]|0;i=l;return a|0}else{c[k>>2]=7;a=c[k>>2]|0;i=l;return a|0}}}while(0);a=wc(9960,r)|0;c[c[j>>2]>>2]=a;c[k>>2]=1;a=c[k>>2]|0;i=l;return a|0}function co(b,e){b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+48|0;k=m+32|0;o=m+28|0;l=m+24|0;n=m+20|0;f=m+16|0;g=m+8|0;j=m+4|0;p=m;q=m+12|0;c[m+36>>2]=b;c[k>>2]=e;c[l>>2]=-1;c[n>>2]=-1;c[f>>2]=-1;c[g>>2]=-1;c[j>>2]=1;if((c[(c[k>>2]|0)+8>>2]|0)==1){if((c[c[(c[k>>2]|0)+12>>2]>>2]|0)==0){if((d[(c[(c[k>>2]|0)+12>>2]|0)+4>>0]|0)==0){c[(c[k>>2]|0)+32>>2]=1}}}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[c[k>>2]>>2]|0)){break}if((a[(c[(c[k>>2]|0)+4>>2]|0)+((c[o>>2]|0)*12|0)+5>>0]|0)!=0){c[p>>2]=d[(c[(c[k>>2]|0)+4>>2]|0)+((c[o>>2]|0)*12|0)+4>>0]|0;c[q>>2]=c[(c[(c[k>>2]|0)+4>>2]|0)+((c[o>>2]|0)*12|0)>>2];if((c[q>>2]|0)==0){if((c[p>>2]|0)==2){c[l>>2]=c[o>>2]}if((c[p>>2]|0)==16){c[f>>2]=c[o>>2]}if((c[p>>2]|0)==8){c[f>>2]=c[o>>2]}if((c[p>>2]|0)==4){c[n>>2]=c[o>>2]}if((c[p>>2]|0)==32){c[n>>2]=c[o>>2]}}if((c[q>>2]|0)==4){if((c[p>>2]|0)==2){c[g>>2]=c[o>>2]}}}c[o>>2]=(c[o>>2]|0)+1}e=(c[k>>2]|0)+20|0;if((c[l>>2]|0)>=0){c[e>>2]=1;b=c[j>>2]|0;c[j>>2]=b+1;c[(c[(c[k>>2]|0)+16>>2]|0)+(c[l>>2]<<3)>>2]=b;h[(c[k>>2]|0)+40>>3]=5.0}else{c[e>>2]=0;h[(c[k>>2]|0)+40>>3]=2.0e4;if((c[n>>2]|0)>=0){b=(c[k>>2]|0)+20|0;c[b>>2]=(c[b>>2]|0)+2;b=c[j>>2]|0;c[j>>2]=b+1;c[(c[(c[k>>2]|0)+16>>2]|0)+(c[n>>2]<<3)>>2]=b;b=(c[k>>2]|0)+40|0;h[b>>3]=+h[b>>3]/2.0}if((c[f>>2]|0)>=0){b=(c[k>>2]|0)+20|0;c[b>>2]=(c[b>>2]|0)+4;b=c[j>>2]|0;c[j>>2]=b+1;c[(c[(c[k>>2]|0)+16>>2]|0)+(c[f>>2]<<3)>>2]=b;b=(c[k>>2]|0)+40|0;h[b>>3]=+h[b>>3]/2.0}}if((c[g>>2]|0)<0){i=m;return 0}b=c[j>>2]|0;c[j>>2]=b+1;c[(c[(c[k>>2]|0)+16>>2]|0)+(c[g>>2]<<3)>>2]=b;b=(c[k>>2]|0)+40|0;h[b>>3]=+h[b>>3]+-1.0;i=m;return 0}function eo(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+12|0;d=e;b=e+4|0;f=e+8|0;c[g>>2]=a;c[d>>2]=c[g>>2];c[b>>2]=c[(c[d>>2]|0)+12>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=40){break}yd(c[(c[b>>2]|0)+56+(c[f>>2]<<2)>>2]|0)|0;c[f>>2]=(c[f>>2]|0)+1}oc(c[(c[b>>2]|0)+240>>2]|0);oc(c[d>>2]|0);i=e;return 0}function fo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;f=g+12|0;e=g+4|0;d=g+8|0;c[g>>2]=a;c[e>>2]=b;c[d>>2]=mc(120)|0;if((c[d>>2]|0)!=0){a=(c[d>>2]|0)+0|0;b=a+120|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[c[e>>2]>>2]=c[d>>2];c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}else{c[f>>2]=7;a=c[f>>2]|0;i=g;return a|0}return 0}function go(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;e=b;d=b+4|0;c[f>>2]=a;c[e>>2]=c[(c[c[f>>2]>>2]|0)+12>>2];c[d>>2]=c[f>>2];jk(c[e>>2]|0);lj((c[d>>2]|0)+4|0);oc(c[(c[d>>2]|0)+60>>2]|0);oc(c[(c[d>>2]|0)+76>>2]|0);oc(c[(c[d>>2]|0)+112>>2]|0);oc(c[d>>2]|0);i=b;return 0}function ho(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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;j=i;i=i+80|0;s=j;t=j+64|0;g=j+60|0;z=j+56|0;y=j+48|0;p=j+44|0;l=j+40|0;m=j+36|0;o=j+68|0;n=j+24|0;k=j+20|0;w=j+16|0;v=j+12|0;r=j+8|0;q=j+4|0;x=j+28|0;u=j+32|0;c[g>>2]=a;c[z>>2]=b;c[j+52>>2]=d;c[y>>2]=e;c[p>>2]=f;c[l>>2]=c[g>>2];c[m>>2]=c[(c[c[g>>2]>>2]|0)+12>>2];c[n>>2]=0;c[k>>2]=0;c[w>>2]=-1;c[v>>2]=-1;c[r>>2]=-1;c[q>>2]=-1;c[x>>2]=0;if((c[z>>2]|0)==1){a=c[x>>2]|0;c[x>>2]=a+1;c[w>>2]=a}else{c[n>>2]=1;if((c[z>>2]&2|0)!=0){a=c[x>>2]|0;c[x>>2]=a+1;c[v>>2]=a}if((c[z>>2]&4|0)!=0){a=c[x>>2]|0;c[x>>2]=a+1;c[r>>2]=a}}if((c[x>>2]|0)<(c[y>>2]|0)){a=c[x>>2]|0;c[x>>2]=a+1;c[q>>2]=a}lj((c[l>>2]|0)+4|0);oc(c[(c[l>>2]|0)+60>>2]|0);oc(c[(c[l>>2]|0)+112>>2]|0);aL((c[l>>2]|0)+4|0,0,(c[l>>2]|0)+120-((c[l>>2]|0)+4)|0)|0;c[(c[l>>2]|0)+72>>2]=3;if((c[n>>2]|0)!=0){a=(c[l>>2]|0)+72|0;c[a>>2]=c[a>>2]|16}if((c[w>>2]|0)>=0){h=13}else{if((c[v>>2]|0)>=0){h=13}}if((h|0)==13){c[u>>2]=Jd(c[c[p>>2]>>2]|0)|0;if((c[u>>2]|0)!=0){c[s>>2]=c[u>>2];a=wc(1768,s)|0;c[(c[l>>2]|0)+60>>2]=a;a=Kd(c[c[p>>2]>>2]|0)|0;c[(c[l>>2]|0)+64>>2]=a;if((c[(c[l>>2]|0)+60>>2]|0)==0){c[t>>2]=7;a=c[t>>2]|0;i=j;return a|0}}}if((c[r>>2]|0)>=0){c[s>>2]=Jd(c[(c[p>>2]|0)+(c[r>>2]<<2)>>2]|0)|0;a=wc(1768,s)|0;c[(c[l>>2]|0)+76>>2]=a;a=Kd(c[(c[p>>2]|0)+(c[r>>2]<<2)>>2]|0)|0;c[(c[l>>2]|0)+80>>2]=a;if((c[(c[l>>2]|0)+76>>2]|0)==0){c[t>>2]=7;a=c[t>>2]|0;i=j;return a|0}}if((c[q>>2]|0)>=0){a=Od(c[(c[p>>2]|0)+(c[q>>2]<<2)>>2]|0)|0;c[k>>2]=a;c[k>>2]=(c[k>>2]|0)<0?0:a}c[(c[l>>2]|0)+84>>2]=c[k>>2];c[o>>2]=aj(c[m>>2]|0,c[k>>2]|0,0,-2,c[(c[l>>2]|0)+60>>2]|0,c[(c[l>>2]|0)+64>>2]|0,0,c[n>>2]|0,(c[l>>2]|0)+4|0)|0;if((c[o>>2]|0)==0){c[o>>2]=ej(c[m>>2]|0,(c[l>>2]|0)+4|0,(c[l>>2]|0)+60|0)|0}if((c[o>>2]|0)==0){c[o>>2]=io(c[g>>2]|0)|0}c[t>>2]=c[o>>2];a=c[t>>2]|0;i=j;return a|0}function io(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=i;i=i+64|0;m=e+52|0;r=e+48|0;h=e+44|0;q=e+40|0;k=e+36|0;f=e+32|0;g=e+28|0;n=e+20|0;j=e+16|0;l=e+12|0;o=e+8|0;p=e+24|0;b=e;c[r>>2]=a;c[h>>2]=c[r>>2];c[q>>2]=c[(c[c[r>>2]>>2]|0)+12>>2];a=(c[h>>2]|0)+96|0;r=a;r=dL(c[r>>2]|0,c[r+4>>2]|0,1,0)|0;c[a>>2]=r;c[a+4>>2]=D;a=(c[h>>2]|0)+104|0;c[a>>2]=(c[a>>2]|0)+1;while(1){if((c[(c[h>>2]|0)+104>>2]|0)>=(c[(c[h>>2]|0)+108>>2]|0)){break}r=(c[(c[h>>2]|0)+112>>2]|0)+(c[(c[h>>2]|0)+104>>2]<<4)|0;a=c[r+4>>2]|0;if((a|0)>0|(a|0)==0&(c[r>>2]|0)>>>0>0){d=4;break}r=(c[h>>2]|0)+104|0;c[r>>2]=(c[r>>2]|0)+1}if((d|0)==4){c[m>>2]=0;r=c[m>>2]|0;i=e;return r|0}c[k>>2]=fj(c[q>>2]|0,(c[h>>2]|0)+4|0)|0;do{if((c[k>>2]|0)==100){c[f>>2]=0;c[g>>2]=c[(c[h>>2]|0)+56>>2];c[n>>2]=c[(c[h>>2]|0)+52>>2];c[l>>2]=0;do{if((c[(c[h>>2]|0)+76>>2]|0)!=0){q=c[h>>2]|0;if((c[(c[h>>2]|0)+80>>2]|0)<(c[(c[h>>2]|0)+48>>2]|0)){q=c[q+80>>2]|0}else{q=c[q+48>>2]|0}c[o>>2]=q;c[p>>2]=XK(c[(c[h>>2]|0)+76>>2]|0,c[(c[h>>2]|0)+44>>2]|0,c[o>>2]|0)|0;if((c[p>>2]|0)>=0){if((c[p>>2]|0)!=0){break}if((c[(c[h>>2]|0)+48>>2]|0)<=(c[(c[h>>2]|0)+80>>2]|0)){break}}c[(c[h>>2]|0)+88>>2]=1;c[m>>2]=0;r=c[m>>2]|0;i=e;return r|0}}while(0);if((mo(c[h>>2]|0,2)|0)!=0){c[m>>2]=7;r=c[m>>2]|0;i=e;return r|0}aL(c[(c[h>>2]|0)+112>>2]|0,0,c[(c[h>>2]|0)+108>>2]<<4|0)|0;c[j>>2]=0;while(1){if((c[f>>2]|0)>=(c[g>>2]|0)){d=32;break}o=b;c[o>>2]=0;c[o+4>>2]=0;o=Kj((c[n>>2]|0)+(c[f>>2]|0)|0,b)|0;c[f>>2]=(c[f>>2]|0)+o;o=c[l>>2]|0;if((o|0)==0){r=c[(c[h>>2]|0)+112>>2]|0;a=r;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;c[r>>2]=a;c[r+4>>2]=D;c[l>>2]=1;c[j>>2]=0;continue}else if((o|0)==1){r=b;a=c[r+4>>2]|0;if((a|0)>0|(a|0)==0&(c[r>>2]|0)>>>0>1){r=(c[(c[h>>2]|0)+112>>2]|0)+16|0;a=r;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;c[r>>2]=a;c[r+4>>2]=D}c[l>>2]=2}else if((o|0)!=2){c[j>>2]=c[b>>2];if((mo(c[h>>2]|0,(c[j>>2]|0)+2|0)|0)!=0){break}r=(c[(c[h>>2]|0)+112>>2]|0)+((c[j>>2]|0)+1<<4)|0;a=r;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;c[r>>2]=a;c[r+4>>2]=D;c[l>>2]=2;continue}r=b;if((c[r>>2]|0)==0&(c[r+4>>2]|0)==0){c[l>>2]=0;continue}r=b;if((c[r>>2]|0)==1&(c[r+4>>2]|0)==0){c[l>>2]=3;continue}else{r=(c[(c[h>>2]|0)+112>>2]|0)+((c[j>>2]|0)+1<<4)+8|0;a=r;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;c[r>>2]=a;c[r+4>>2]=D;r=(c[(c[h>>2]|0)+112>>2]|0)+8|0;a=r;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;c[r>>2]=a;c[r+4>>2]=D;continue}}if((d|0)==32){c[(c[h>>2]|0)+104>>2]=0;c[k>>2]=0;break}c[m>>2]=7;r=c[m>>2]|0;i=e;return r|0}else{c[(c[h>>2]|0)+88>>2]=1}}while(0);c[m>>2]=c[k>>2];r=c[m>>2]|0;i=e;return r|0}function jo(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=c[e>>2];i=d;return c[(c[b>>2]|0)+88>>2]|0}function ko(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;g=e;h=e+4|0;f=e+8|0;c[j>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f>>2]=c[j>>2];d=c[h>>2]|0;if((d|0)==0){ce(c[g>>2]|0,c[(c[f>>2]|0)+44>>2]|0,c[(c[f>>2]|0)+48>>2]|0,-1);i=e;return 0}else if((d|0)==3){j=(c[(c[f>>2]|0)+112>>2]|0)+(c[(c[f>>2]|0)+104>>2]<<4)+8|0;$d(c[g>>2]|0,c[j>>2]|0,c[j+4>>2]|0);i=e;return 0}else if((d|0)==2){j=(c[(c[f>>2]|0)+112>>2]|0)+(c[(c[f>>2]|0)+104>>2]<<4)|0;$d(c[g>>2]|0,c[j>>2]|0,c[j+4>>2]|0);i=e;return 0}else if((d|0)==1){g=c[g>>2]|0;if((c[(c[f>>2]|0)+104>>2]|0)!=0){Zd(g,(c[(c[f>>2]|0)+104>>2]|0)-1|0);i=e;return 0}else{ce(g,9880,-1,0);i=e;return 0}}else{Zd(c[g>>2]|0,c[(c[f>>2]|0)+84>>2]|0);i=e;return 0}return 0}function lo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=c[g>>2];e=(c[e>>2]|0)+96|0;b=c[e+4>>2]|0;a=c[f>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=b;i=d;return 0}function mo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d;g=d+4|0;h=d+8|0;c[f>>2]=a;c[g>>2]=b;do{if((c[g>>2]|0)>(c[(c[f>>2]|0)+108>>2]|0)){c[h>>2]=qc(c[(c[f>>2]|0)+112>>2]|0,c[g>>2]<<4)|0;if((c[h>>2]|0)!=0){aL((c[h>>2]|0)+(c[(c[f>>2]|0)+108>>2]<<4)|0,0,(c[g>>2]|0)-(c[(c[f>>2]|0)+108>>2]|0)<<4|0)|0;c[(c[f>>2]|0)+112>>2]=c[h>>2];c[(c[f>>2]|0)+108>>2]=c[g>>2];break}c[e>>2]=7;a=c[e>>2]|0;i=d;return a|0}}while(0);c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}function no(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;g=e;h=e+4|0;f=e+8|0;c[j>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f>>2]=c[(c[j>>2]|0)+4>>2];Uc(c[j>>2]|0);if((c[(c[f>>2]|0)+48>>2]|0)==0){if((c[g>>2]|0)!=0){j=ve(0,c[g>>2]|0)|0;c[(c[f>>2]|0)+48>>2]=j;c[(c[f>>2]|0)+52>>2]=c[h>>2]}}i=e;return c[(c[f>>2]|0)+48>>2]|0}function oo(a){a=a|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+48|0;l=d+44|0;f=d;k=d+16|0;h=d+32|0;g=d+36|0;j=d+40|0;c[l>>2]=a;c[g>>2]=c[l>>2];a=(c[g>>2]|0)+8|0;c[f+0>>2]=c[a+0>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];a=(c[g>>2]|0)+40|0;c[k+0>>2]=c[a+0>>2];c[k+4>>2]=c[a+4>>2];c[k+8>>2]=c[a+8>>2];c[k+12>>2]=c[a+12>>2];Lh((c[g>>2]|0)+40|0);Kh((c[g>>2]|0)+24|0);c[h>>2]=c[k+8>>2];while(1){if((c[h>>2]|0)==0){break}$b(0,c[(c[h>>2]|0)+8>>2]|0);c[h>>2]=c[c[h>>2]>>2]}Kh(k);Lh((c[g>>2]|0)+8|0);c[h>>2]=c[f+8>>2];while(1){if((c[h>>2]|0)==0){break}c[j>>2]=c[(c[h>>2]|0)+8>>2];ac(0,c[j>>2]|0);c[h>>2]=c[c[h>>2]>>2]}Kh(f);Kh((c[g>>2]|0)+56|0);c[(c[g>>2]|0)+72>>2]=0;if((b[(c[g>>2]|0)+78>>1]&1|0)==0){i=d;return}l=(c[g>>2]|0)+4|0;c[l>>2]=(c[l>>2]|0)+1;l=(c[g>>2]|0)+78|0;b[l>>1]=(e[l>>1]|0)&-2;i=d;return}function po(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return(d[(c[b>>2]|0)+63>>0]|0|0)==2|0}function qo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;l=g+12|0;k=g;j=g+4|0;h=g+8|0;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;a[c[h>>2]>>0]=0;b=xb[c[(c[l>>2]|0)+36>>2]&31](c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return b|0}function ro(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[c[b>>2]>>2]|0}function so(d,e,f,g,h,j,k){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;n=i;i=i+112|0;E=n+96|0;q=n+92|0;x=n+88|0;t=n+84|0;D=n+80|0;L=n+76|0;s=n+72|0;y=n+68|0;H=n+64|0;r=n+60|0;p=n+56|0;z=n+52|0;C=n+48|0;w=n+16|0;K=n;o=n+4|0;u=n+8|0;B=n+12|0;G=n+20|0;l=n+24|0;J=n+28|0;I=n+32|0;F=n+36|0;v=n+40|0;A=n+44|0;c[q>>2]=d;c[x>>2]=e;c[t>>2]=f;c[D>>2]=g;c[L>>2]=h;c[s>>2]=j;c[y>>2]=k;c[r>>2]=0;c[p>>2]=0;c[z>>2]=0;c[C>>2]=0;c[w>>2]=0;c[o>>2]=0;c[u>>2]=0;c[B>>2]=(c[L>>2]&1|0)==0&1;c[G>>2]=Nq()|0;c[l>>2]=1024;c[J>>2]=0;c[I>>2]=0;d=c[(c[q>>2]|0)+4>>2]|0;if((d|0)>(kp()|0)){c[K>>2]=(c[(c[q>>2]|0)+4>>2]|0)+7&-8}else{c[K>>2]=(kp()|0)+7&-8}c[c[x>>2]>>2]=0;do{if((c[L>>2]&2|0)!=0){c[C>>2]=1;if((c[t>>2]|0)!=0){if((a[c[t>>2]>>0]|0)!=0){c[o>>2]=pe(0,c[t>>2]|0)|0;if((c[o>>2]|0)!=0){c[u>>2]=Ub(c[o>>2]|0)|0;c[t>>2]=0;break}c[E>>2]=7;d=c[E>>2]|0;i=n;return d|0}}}}while(0);if((c[t>>2]|0)!=0){if((a[c[t>>2]>>0]|0)!=0){c[u>>2]=(c[(c[q>>2]|0)+8>>2]|0)+1;c[o>>2]=$e(0,c[u>>2]<<1)|0;if((c[o>>2]|0)==0){c[E>>2]=7;d=c[E>>2]|0;i=n;return d|0}a[c[o>>2]>>0]=0;c[p>>2]=qo(c[q>>2]|0,c[t>>2]|0,c[u>>2]|0,c[o>>2]|0)|0;c[u>>2]=Ub(c[o>>2]|0)|0;d=(Ub(c[t>>2]|0)|0)+1|0;d=(c[t>>2]|0)+d|0;c[J>>2]=d;c[F>>2]=d;while(1){L=c[F>>2]|0;if((a[c[F>>2]>>0]|0)==0){break}d=(Ub(L)|0)+1|0;c[F>>2]=(c[F>>2]|0)+d;d=(Ub(c[F>>2]|0)|0)+1|0;c[F>>2]=(c[F>>2]|0)+d}c[I>>2]=L+1-(c[J>>2]|0);if((c[p>>2]|0)==0){if(((c[u>>2]|0)+8|0)>(c[(c[q>>2]|0)+8>>2]|0)){c[p>>2]=Bq(44459)|0}}if((c[p>>2]|0)!=0){cc(0,c[o>>2]|0);c[E>>2]=c[p>>2];d=c[E>>2]|0;i=n;return d|0}}}c[H>>2]=Sc(216+((c[G>>2]|0)+7&-8)+((c[(c[q>>2]|0)+4>>2]|0)+7&-8)+(c[K>>2]<<1)+(c[u>>2]|0)+1+(c[I>>2]|0)+(c[u>>2]|0)+10+(c[u>>2]|0)+6|0)|0;if((c[H>>2]|0)==0){cc(0,c[o>>2]|0);c[E>>2]=7;d=c[E>>2]|0;i=n;return d|0}c[r>>2]=c[H>>2];d=(c[H>>2]|0)+216|0;c[H>>2]=d;c[(c[r>>2]|0)+204>>2]=d;d=(c[H>>2]|0)+((c[G>>2]|0)+7&-8)|0;c[H>>2]=d;c[(c[r>>2]|0)+60>>2]=d;d=(c[H>>2]|0)+((c[(c[q>>2]|0)+4>>2]|0)+7&-8)|0;c[H>>2]=d;c[(c[r>>2]|0)+68>>2]=d;d=(c[H>>2]|0)+(c[K>>2]|0)|0;c[H>>2]=d;c[(c[r>>2]|0)+64>>2]=d;d=(c[H>>2]|0)+(c[K>>2]|0)|0;c[H>>2]=d;c[(c[r>>2]|0)+168>>2]=d;if((c[o>>2]|0)!=0){d=(c[H>>2]|0)+((c[u>>2]|0)+1+(c[I>>2]|0))|0;c[H>>2]=d;c[(c[r>>2]|0)+172>>2]=d;fL(c[(c[r>>2]|0)+168>>2]|0,c[o>>2]|0,c[u>>2]|0)|0;if((c[I>>2]|0)!=0){fL((c[(c[r>>2]|0)+168>>2]|0)+((c[u>>2]|0)+1)|0,c[J>>2]|0,c[I>>2]|0)|0}fL(c[(c[r>>2]|0)+172>>2]|0,c[o>>2]|0,c[u>>2]|0)|0;H=(c[(c[r>>2]|0)+172>>2]|0)+(c[u>>2]|0)+0|0;G=11160|0;F=H+10|0;do{a[H>>0]=a[G>>0]|0;H=H+1|0;G=G+1|0}while((H|0)<(F|0));c[(c[r>>2]|0)+212>>2]=(c[(c[r>>2]|0)+172>>2]|0)+((c[u>>2]|0)+9);fL(c[(c[r>>2]|0)+212>>2]|0,c[o>>2]|0,c[u>>2]|0)|0;d=(c[(c[r>>2]|0)+212>>2]|0)+(c[u>>2]|0)|0;a[d+0>>0]=a[11176>>0]|0;a[d+1>>0]=a[11177>>0]|0;a[d+2>>0]=a[11178>>0]|0;a[d+3>>0]=a[11179>>0]|0;a[d+4>>0]=a[11180>>0]|0;cc(0,c[o>>2]|0)}c[c[r>>2]>>2]=c[q>>2];c[(c[r>>2]|0)+144>>2]=c[s>>2];do{if((c[t>>2]|0)!=0){if((a[c[t>>2]>>0]|0)!=0){c[v>>2]=0;c[p>>2]=wp(c[q>>2]|0,c[(c[r>>2]|0)+168>>2]|0,c[(c[r>>2]|0)+60>>2]|0,c[s>>2]|0,v)|0;c[w>>2]=c[v>>2]&1;if((c[p>>2]|0)==0){c[A>>2]=tp(c[(c[r>>2]|0)+60>>2]|0)|0;do{if((c[w>>2]|0)==0){sp(c[r>>2]|0);if((c[l>>2]|0)>>>0<(c[(c[r>>2]|0)+148>>2]|0)>>>0){if((c[(c[r>>2]|0)+148>>2]|0)>>>0>8192){c[l>>2]=8192;break}else{c[l>>2]=c[(c[r>>2]|0)+148>>2];break}}}}while(0);d=(Ng(c[t>>2]|0,11184,0)|0)&255;a[(c[r>>2]|0)+13>>0]=d;if((c[A>>2]&8192|0)==0){if((Ng(c[t>>2]|0,11192,0)|0)==0){break}}c[s>>2]=c[s>>2]|1;m=39}}else{m=39}}else{m=39}}while(0);if((m|0)==39){c[z>>2]=1;a[(c[r>>2]|0)+16>>0]=1;a[(c[r>>2]|0)+17>>0]=4;a[(c[r>>2]|0)+13>>0]=1;c[w>>2]=c[s>>2]&1}if((c[p>>2]|0)==0){c[p>>2]=bh(c[r>>2]|0,l,-1)|0}if((c[p>>2]|0)!=0){Ko(c[(c[r>>2]|0)+60>>2]|0)|0;oc(c[r>>2]|0);c[E>>2]=c[p>>2];d=c[E>>2]|0;i=n;return d|0}c[D>>2]=(c[D>>2]|0)+7&-8;Oq(c[l>>2]|0,c[D>>2]|0,((c[C>>2]|0)!=0^1)&1,(c[C>>2]|0)!=0^1?53:0,c[r>>2]|0,c[(c[r>>2]|0)+204>>2]|0);a[(c[r>>2]|0)+6>>0]=c[B>>2];c[(c[r>>2]|0)+156>>2]=1073741823;a[(c[r>>2]|0)+12>>0]=c[z>>2];a[(c[r>>2]|0)+4>>0]=c[z>>2];a[(c[r>>2]|0)+18>>0]=a[(c[r>>2]|0)+12>>0]|0;a[(c[r>>2]|0)+15>>0]=c[C>>2];a[(c[r>>2]|0)+14>>0]=c[w>>2];a[(c[r>>2]|0)+7>>0]=a[(c[r>>2]|0)+12>>0]|0;if((a[(c[r>>2]|0)+7>>0]|0)==0){a[(c[r>>2]|0)+8>>0]=1;a[(c[r>>2]|0)+11>>0]=2;a[(c[r>>2]|0)+10>>0]=34;a[(c[r>>2]|0)+9>>0]=2}b[(c[r>>2]|0)+140>>1]=c[D>>2];d=(c[r>>2]|0)+160|0;c[d>>2]=-1;c[d+4>>2]=-1;sp(c[r>>2]|0);if((c[B>>2]|0)!=0){if((c[C>>2]|0)!=0){a[(c[r>>2]|0)+5>>0]=4}}else{a[(c[r>>2]|0)+5>>0]=2}c[(c[r>>2]|0)+196>>2]=c[y>>2];c[c[x>>2]>>2]=c[r>>2];c[E>>2]=0;d=c[E>>2]|0;i=n;return d|0}function to(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;c[e>>2]=Jq(c[f>>2]|0)|0;if((a[c[e>>2]>>0]|0)==0){i=d;return}a[c[e>>2]>>0]=0;if((Kq(c[f>>2]|0)|0)<=1){i=d;return}Lq(c[e>>2]|0)|0;i=d;return}function uo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;d=g;b=c[d+4>>2]|0;a=(c[f>>2]|0)+128|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;ih(c[f>>2]|0);i=e;return}function vo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;j=e;h=e+4|0;f=e+8|0;c[g>>2]=a;c[j>>2]=b;c[h>>2]=d;c[f>>2]=0;aL(c[h>>2]|0,0,c[j>>2]|0)|0;if((c[c[(c[g>>2]|0)+60>>2]>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}a=xp(c[(c[g>>2]|0)+60>>2]|0,c[h>>2]|0,c[j>>2]|0,0,0)|0;c[f>>2]=a;c[f>>2]=(c[f>>2]|0)==522?0:a;a=c[f>>2]|0;i=e;return a|0}function wo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;j=e;h=e+4|0;g=e+8|0;c[f>>2]=a;c[j>>2]=b;c[h>>2]=d;c[(c[f>>2]|0)+176>>2]=c[j>>2];c[(c[f>>2]|0)+180>>2]=c[h>>2];if((c[c[(c[f>>2]|0)+60>>2]>>2]|0)==0){i=e;return}c[g>>2]=(c[f>>2]|0)+176;kq(c[(c[f>>2]|0)+60>>2]|0,15,c[g>>2]|0);i=e;return}function xo(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];a=Iq((c[(c[d>>2]|0)+4>>2]|0)+436|0)|0;i=b;return a|0}function yo(b){b=b|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=b;i=e;return a[(c[d>>2]|0)+14>>0]|0}function zo(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return(d[c[b>>2]>>0]|0)<<24|(d[(c[b>>2]|0)+1>>0]|0)<<16|(d[(c[b>>2]|0)+2>>0]|0)<<8|(d[(c[b>>2]|0)+3>>0]|0)|0}function Ao(b){b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+200>>2];Ih();Eo(c[f>>2]|0);a[(c[f>>2]|0)+4>>0]=0;Fo(c[(c[f>>2]|0)+208>>2]|0,d[(c[f>>2]|0)+9>>0]|0,c[(c[f>>2]|0)+152>>2]|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+208>>2]=0;fh(c[f>>2]|0);b=c[f>>2]|0;if((a[(c[f>>2]|0)+15>>0]|0)!=0){Go(b)}else{if((c[c[b+64>>2]>>2]|0)!=0){b=c[f>>2]|0;Ho(b,Io(c[f>>2]|0)|0)|0}Jo(c[f>>2]|0)}Jh();Ko(c[(c[f>>2]|0)+64>>2]|0)|0;Ko(c[(c[f>>2]|0)+60>>2]|0)|0;gh(c[g>>2]|0);Lo(c[(c[f>>2]|0)+204>>2]|0);oc(c[f>>2]|0);i=e;return 0}function Bo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;Co(c[(c[f>>2]|0)+204>>2]|0,c[e>>2]|0);i=d;return}function Co(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+16>>2]=c[f>>2];if((c[(c[e>>2]|0)+40>>2]|0)==0){i=d;return}b=c[45260>>2]|0;a=c[(c[e>>2]|0)+40>>2]|0;f=Do(c[e>>2]|0)|0;sb[b&7](a,f);i=d;return}function Do(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;a=c[(c[e>>2]|0)+16>>2]|0;if((c[(c[e>>2]|0)+16>>2]|0)>=0){c[d>>2]=a;a=c[d>>2]|0;i=b;return a|0}else{f=nL(-1024,-1,a|0,((a|0)<0)<<31>>31|0)|0;a=(c[(c[e>>2]|0)+20>>2]|0)+(c[(c[e>>2]|0)+24>>2]|0)|0;a=lL(f|0,D|0,a|0,((a|0)<0)<<31>>31|0)|0;c[d>>2]=a;a=c[d>>2]|0;i=b;return a|0}return 0}function Eo(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b;e=b+4|0;c[f>>2]=a;c[d>>2]=c[(c[f>>2]|0)+136>>2];while(1){if((c[d>>2]|0)==0){break}c[e>>2]=c[(c[d>>2]|0)+12>>2];oc(c[d>>2]|0);c[d>>2]=c[e>>2]}i=b;return}function Fo(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+32|0;l=n+24|0;h=n;o=n+4|0;p=n+8|0;j=n+12|0;m=n+16|0;k=n+20|0;c[l>>2]=b;c[h>>2]=e;c[o>>2]=f;c[p>>2]=g;c[j>>2]=0;if((c[l>>2]|0)==0){b=c[j>>2]|0;i=n;return b|0}c[m>>2]=0;c[j>>2]=iq(c[(c[l>>2]|0)+4>>2]|0,4)|0;do{if((c[j>>2]|0)==0){if((d[(c[l>>2]|0)+43>>0]|0|0)==0){a[(c[l>>2]|0)+43>>0]=1}c[j>>2]=jq(c[l>>2]|0,0,0,0,c[h>>2]|0,c[o>>2]|0,c[p>>2]|0,0,0)|0;if((c[j>>2]|0)==0){c[k>>2]=-1;kq(c[(c[l>>2]|0)+4>>2]|0,10,k);if((c[k>>2]|0)!=1){c[m>>2]=1;break}b=(c[l>>2]|0)+16|0;e=c[b+4>>2]|0;if((e|0)>0|(e|0)==0&(c[b>>2]|0)>>>0>=0){lq(c[l>>2]|0,0,0)}}}}while(0);mq(c[l>>2]|0,c[m>>2]|0);Ko(c[(c[l>>2]|0)+8>>2]|0)|0;if((c[m>>2]|0)!=0){Ih();So(c[c[l>>2]>>2]|0,c[(c[l>>2]|0)+100>>2]|0,0)|0;Jh()}oc(c[(c[l>>2]|0)+32>>2]|0);oc(c[l>>2]|0);b=c[j>>2]|0;i=n;return b|0}function Go(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;f=g+8|0;h=g;j=g+4|0;c[f>>2]=b;wh(c[(c[f>>2]|0)+56>>2]|0);c[(c[f>>2]|0)+56>>2]=0;Oo(c[f>>2]|0);k=(Uo(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(k){hq(c[b+208>>2]|0);a[(c[f>>2]|0)+16>>0]=0}else{if((a[b+4>>0]|0)==0){if((c[c[(c[f>>2]|0)+60>>2]>>2]|0)!=0){b=tp(c[(c[f>>2]|0)+60>>2]|0)|0}else{b=0}c[j>>2]=b;if(0==(c[j>>2]&2048|0)){e=8}else{if(1!=(a[(c[f>>2]|0)+5>>0]&5|0)){e=8}}if((e|0)==8){Ko(c[(c[f>>2]|0)+64>>2]|0)|0}c[h>>2]=Yo(c[f>>2]|0,0)|0;if((c[h>>2]|0)!=0){if((d[(c[f>>2]|0)+16>>0]|0)==6){a[(c[f>>2]|0)+17>>0]=5}}a[(c[f>>2]|0)+18>>0]=0;a[(c[f>>2]|0)+16>>0]=0}}if((c[(c[f>>2]|0)+40>>2]|0)==0){k=c[f>>2]|0;k=k+72|0;b=k;c[b>>2]=0;k=k+4|0;c[k>>2]=0;k=c[f>>2]|0;k=k+80|0;b=k;c[b>>2]=0;k=k+4|0;c[k>>2]=0;k=c[f>>2]|0;k=k+19|0;a[k>>0]=0;i=g;return}fh(c[f>>2]|0);a[(c[f>>2]|0)+18>>0]=a[(c[f>>2]|0)+12>>0]|0;a[(c[f>>2]|0)+16>>0]=0;c[(c[f>>2]|0)+40>>2]=0;k=c[f>>2]|0;k=k+72|0;b=k;c[b>>2]=0;k=k+4|0;c[k>>2]=0;k=c[f>>2]|0;k=k+80|0;b=k;c[b>>2]=0;k=k+4|0;c[k>>2]=0;k=c[f>>2]|0;k=k+19|0;a[k>>0]=0;i=g;return}function Ho(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;f=e;h=e+4|0;c[g>>2]=b;c[f>>2]=d;c[h>>2]=c[f>>2]&255;if(!((c[h>>2]|0)==13|(c[h>>2]|0)==10)){h=c[f>>2]|0;i=e;return h|0}c[(c[g>>2]|0)+40>>2]=c[f>>2];a[(c[g>>2]|0)+16>>0]=6;h=c[f>>2]|0;i=e;return h|0}function Io(b){b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;f=e+4|0;d=e;c[f>>2]=b;c[d>>2]=0;if((a[(c[f>>2]|0)+7>>0]|0)==0){c[d>>2]=cp(c[(c[f>>2]|0)+64>>2]|0,2)|0}if((c[d>>2]|0)!=0){f=c[d>>2]|0;i=e;return f|0}c[d>>2]=dh(c[(c[f>>2]|0)+64>>2]|0,(c[f>>2]|0)+80|0)|0;f=c[d>>2]|0;i=e;return f|0}function Jo(b){b=b|0;var e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=b;do{if((d[(c[e>>2]|0)+16>>0]|0)!=6){if((d[(c[e>>2]|0)+16>>0]|0)!=0){if((d[(c[e>>2]|0)+16>>0]|0)>=2){Ih();Mo(c[e>>2]|0)|0;Jh();break}if((a[(c[e>>2]|0)+4>>0]|0)==0){No(c[e>>2]|0,0,0)|0}}}}while(0);Go(c[e>>2]|0);i=f;return}function Ko(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=0;if((c[c[e>>2]>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}c[d>>2]=ub[c[(c[c[e>>2]>>2]|0)+4>>2]&63](c[e>>2]|0)|0;c[c[e>>2]>>2]=0;e=c[d>>2]|0;i=b;return e|0}function Lo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[d>>2]|0)+40>>2]|0)==0){i=b;return}rb[c[45284>>2]&31](c[(c[d>>2]|0)+40>>2]|0);i=b;return}function Mo(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e;h=e+4|0;j=e+8|0;k=e+12|0;c[g>>2]=b;c[h>>2]=0;b=c[g>>2]|0;if((d[(c[g>>2]|0)+16>>0]|0)==6){c[f>>2]=c[b+40>>2];b=c[f>>2]|0;i=e;return b|0}if((d[b+16>>0]|0)<=1){c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}l=(Uo(c[g>>2]|0)|0)!=0;b=c[g>>2]|0;do{if(l){c[h>>2]=lp(b,2,-1)|0;c[j>>2]=No(c[g>>2]|0,d[(c[g>>2]|0)+19>>0]|0,0)|0;if((c[h>>2]|0)==0){c[h>>2]=c[j>>2]}}else{if((c[c[b+64>>2]>>2]|0)!=0){if((d[(c[g>>2]|0)+16>>0]|0)!=2){c[h>>2]=mp(c[g>>2]|0,0)|0;break}}c[k>>2]=d[(c[g>>2]|0)+16>>0]|0;c[h>>2]=No(c[g>>2]|0,0,0)|0;if((a[(c[g>>2]|0)+15>>0]|0)==0){if((c[k>>2]|0)>2){c[(c[g>>2]|0)+40>>2]=4;a[(c[g>>2]|0)+16>>0]=6;c[f>>2]=c[h>>2];l=c[f>>2]|0;i=e;return l|0}}}}while(0);c[f>>2]=Ho(c[g>>2]|0,c[h>>2]|0)|0;l=c[f>>2]|0;i=e;return l|0}function No(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;h=m+24|0;k=m;n=m+4|0;g=m+8|0;j=m+12|0;l=m+16|0;o=m+20|0;c[k>>2]=b;c[n>>2]=e;c[g>>2]=f;c[j>>2]=0;c[l>>2]=0;if((d[(c[k>>2]|0)+16>>0]|0)<2){if((d[(c[k>>2]|0)+17>>0]|0)<2){c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}}Oo(c[k>>2]|0);a:do{if((c[c[(c[k>>2]|0)+64>>2]>>2]|0)!=0){b=(Po(c[(c[k>>2]|0)+64>>2]|0)|0)!=0;f=c[k>>2]|0;if(b){Ko(c[f+64>>2]|0)|0;break}e=c[k>>2]|0;if((d[f+5>>0]|0)==3){b=e+72|0;if((c[b>>2]|0)==0&(c[b+4>>2]|0)==0){c[j>>2]=0}else{c[j>>2]=Qo(c[(c[k>>2]|0)+64>>2]|0,0,0)|0}b=(c[k>>2]|0)+72|0;c[b>>2]=0;c[b+4>>2]=0;break}do{if((d[e+5>>0]|0)!=1){if((d[(c[k>>2]|0)+4>>0]|0)!=0){if((d[(c[k>>2]|0)+5>>0]|0)!=5){break}}c[o>>2]=((a[(c[k>>2]|0)+12>>0]|0)!=0?0:1)&1;Ko(c[(c[k>>2]|0)+64>>2]|0)|0;if((c[o>>2]|0)==0){break a}c[j>>2]=So(c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+172>>2]|0,0)|0;break a}}while(0);c[j>>2]=Ro(c[k>>2]|0,c[n>>2]|0)|0;b=(c[k>>2]|0)+72|0;c[b>>2]=0;c[b+4>>2]=0}}while(0);wh(c[(c[k>>2]|0)+56>>2]|0);c[(c[k>>2]|0)+56>>2]=0;c[(c[k>>2]|0)+44>>2]=0;To(c[(c[k>>2]|0)+204>>2]|0);mh(c[(c[k>>2]|0)+204>>2]|0,c[(c[k>>2]|0)+24>>2]|0);if((Uo(c[k>>2]|0)|0)!=0){c[l>>2]=Vo(c[(c[k>>2]|0)+208>>2]|0)|0}else{if((c[j>>2]|0)==0){if((c[g>>2]|0)!=0){if((c[(c[k>>2]|0)+32>>2]|0)>>>0>(c[(c[k>>2]|0)+24>>2]|0)>>>0){c[j>>2]=Wo(c[k>>2]|0,c[(c[k>>2]|0)+24>>2]|0)|0}}}}if((c[j>>2]|0)==0){if((c[g>>2]|0)!=0){if((c[c[(c[k>>2]|0)+60>>2]>>2]|0)!=0){b=Hg(c[(c[k>>2]|0)+60>>2]|0,22,0)|0;c[j>>2]=b;c[j>>2]=(c[j>>2]|0)==12?0:b}}}do{if((a[(c[k>>2]|0)+4>>0]|0)==0){if((Uo(c[k>>2]|0)|0)!=0){if((Xo(c[(c[k>>2]|0)+208>>2]|0,0)|0)==0){break}}c[l>>2]=Yo(c[k>>2]|0,1)|0;a[(c[k>>2]|0)+18>>0]=0}}while(0);a[(c[k>>2]|0)+16>>0]=1;a[(c[k>>2]|0)+19>>0]=0;c[h>>2]=(c[j>>2]|0)==0?c[l>>2]|0:c[j>>2]|0;b=c[h>>2]|0;i=m;return b|0}function Oo(b){b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;e=f+4|0;g=f;c[e>>2]=b;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[e>>2]|0)+96>>2]|0)){break}wh(c[(c[(c[e>>2]|0)+92>>2]|0)+((c[g>>2]|0)*48|0)+16>>2]|0);c[g>>2]=(c[g>>2]|0)+1}if((a[(c[e>>2]|0)+4>>0]|0)!=0){if((Po(c[(c[e>>2]|0)+68>>2]|0)|0)!=0){d=6}}else{d=6}if((d|0)==6){Ko(c[(c[e>>2]|0)+68>>2]|0)|0}oc(c[(c[e>>2]|0)+92>>2]|0);c[(c[e>>2]|0)+92>>2]=0;c[(c[e>>2]|0)+96>>2]=0;c[(c[e>>2]|0)+52>>2]=0;i=f;return}function Po(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[c[b>>2]>>2]|0)==10880|0}function Qo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;a=g;a=pb[c[(c[c[f>>2]>>2]|0)+16>>2]&31](c[f>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;i=e;return a|0}function Ro(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;k=g+24|0;m=g+20|0;h=g+16|0;j=g;l=g+8|0;c[k>>2]=b;c[m>>2]=e;c[h>>2]=0;b=(c[k>>2]|0)+72|0;if(!((c[b>>2]|0)!=0|(c[b+4>>2]|0)!=0)){b=c[h>>2]|0;i=g;return b|0}n=(c[k>>2]|0)+160|0;e=c[n+4>>2]|0;b=j;c[b>>2]=c[n>>2];c[b+4>>2]=e;if((c[m>>2]|0)!=0){f=4}else{n=j;if((c[n>>2]|0)==0&(c[n+4>>2]|0)==0){f=4}else{c[h>>2]=nd(c[(c[k>>2]|0)+64>>2]|0,10848,28,0,0)|0}}if((f|0)==4){c[h>>2]=Qo(c[(c[k>>2]|0)+64>>2]|0,0,0)|0}if((c[h>>2]|0)==0){if((a[(c[k>>2]|0)+7>>0]|0)==0){c[h>>2]=cp(c[(c[k>>2]|0)+64>>2]|0,16|d[(c[k>>2]|0)+11>>0])|0}}if((c[h>>2]|0)!=0){n=c[h>>2]|0;i=g;return n|0}n=j;b=c[n+4>>2]|0;if(!((b|0)>0|(b|0)==0&(c[n>>2]|0)>>>0>0)){n=c[h>>2]|0;i=g;return n|0}c[h>>2]=dh(c[(c[k>>2]|0)+64>>2]|0,l)|0;if((c[h>>2]|0)!=0){n=c[h>>2]|0;i=g;return n|0}b=l;m=c[b+4>>2]|0;n=j;e=c[n+4>>2]|0;if(!((m|0)>(e|0)|((m|0)==(e|0)?(c[b>>2]|0)>>>0>(c[n>>2]|0)>>>0:0))){n=c[h>>2]|0;i=g;return n|0}n=j;c[h>>2]=Qo(c[(c[k>>2]|0)+64>>2]|0,c[n>>2]|0,c[n+4>>2]|0)|0;n=c[h>>2]|0;i=g;return n|0}function So(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=pb[c[(c[h>>2]|0)+28>>2]&31](c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function To(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;while(1){a=c[c[d>>2]>>2]|0;c[e>>2]=a;if((a|0)==0){break}nh(c[e>>2]|0)}i=b;return}function Uo(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[(c[b>>2]|0)+208>>2]|0)!=0|0}function Vo(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if((a[(c[e>>2]|0)+44>>0]|0)==0){i=d;return 0}bp(c[e>>2]|0,0,1);a[(c[e>>2]|0)+44>>0]=0;a[(c[e>>2]|0)+47>>0]=0;i=d;return 0}function Wo(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+48|0;g=e+32|0;k=e+20|0;f=e+16|0;j=e;l=e+8|0;h=e+24|0;m=e+28|0;c[g>>2]=a;c[k>>2]=b;c[f>>2]=0;if((c[c[(c[g>>2]|0)+60>>2]>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}if((d[(c[g>>2]|0)+16>>0]|0|0)<4){if((d[(c[g>>2]|0)+16>>0]|0|0)!=0){a=c[f>>2]|0;i=e;return a|0}}c[h>>2]=c[(c[g>>2]|0)+152>>2];c[f>>2]=dh(c[(c[g>>2]|0)+60>>2]|0,j)|0;b=c[h>>2]|0;b=nL(b|0,((b|0)<0)<<31>>31|0,c[k>>2]|0,0)|0;a=l;c[a>>2]=b;c[a+4>>2]=D;if((c[f>>2]|0)!=0){a=c[f>>2]|0;i=e;return a|0}b=j;a=l;if(!((c[b>>2]|0)!=(c[a>>2]|0)?1:(c[b+4>>2]|0)!=(c[a+4>>2]|0))){a=c[f>>2]|0;i=e;return a|0}b=j;o=c[b+4>>2]|0;a=l;n=c[a+4>>2]|0;if((o|0)>(n|0)|((o|0)==(n|0)?(c[b>>2]|0)>>>0>(c[a>>2]|0)>>>0:0)){o=l;c[f>>2]=Qo(c[(c[g>>2]|0)+60>>2]|0,c[o>>2]|0,c[o+4>>2]|0)|0}else{n=c[h>>2]|0;n=dL(c[j>>2]|0,c[j+4>>2]|0,n|0,((n|0)<0)<<31>>31|0)|0;j=D;o=l;a=c[o+4>>2]|0;if((j|0)<(a|0)|((j|0)==(a|0)?n>>>0<=(c[o>>2]|0)>>>0:0)){c[m>>2]=c[(c[g>>2]|0)+200>>2];aL(c[m>>2]|0,0,c[h>>2]|0)|0;j=c[(c[g>>2]|0)+60>>2]|0;a=c[m>>2]|0;n=c[h>>2]|0;m=l;o=c[h>>2]|0;o=$K(c[m>>2]|0,c[m+4>>2]|0,o|0,((o|0)<0)<<31>>31|0)|0;c[f>>2]=nd(j,a,n,o,D)|0}}if((c[f>>2]|0)!=0){o=c[f>>2]|0;i=e;return o|0}c[(c[g>>2]|0)+32>>2]=c[k>>2];o=c[f>>2]|0;i=e;return o|0}function Xo(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g+8|0;k=g;h=g+4|0;c[j>>2]=e;c[k>>2]=f;if((c[k>>2]|0)!=0){f=c[j>>2]|0;if((c[k>>2]|0)>0){$o(f,3+(b[(c[j>>2]|0)+40>>1]|0)|0);a[(c[j>>2]|0)+43>>0]=1;c[h>>2]=1;e=c[h>>2]|0;i=g;return e|0}else{c[h>>2]=(d[f+43>>0]|0)==0&1;e=c[h>>2]|0;i=g;return e|0}}if((a[(c[j>>2]|0)+43>>0]|0)==0){c[h>>2]=0;e=c[h>>2]|0;i=g;return e|0}a[(c[j>>2]|0)+43>>0]=0;if((_o(c[j>>2]|0,3+(b[(c[j>>2]|0)+40>>1]|0)|0)|0)!=0){a[(c[j>>2]|0)+43>>0]=1}c[h>>2]=(d[(c[j>>2]|0)+43>>0]|0)==0&1;e=c[h>>2]|0;i=g;return e|0}function Yo(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;h=f+8|0;j=f;g=f+4|0;c[h>>2]=b;c[j>>2]=e;c[g>>2]=0;if((c[c[(c[h>>2]|0)+60>>2]>>2]|0)==0){b=c[g>>2]|0;i=f;return b|0}if((d[(c[h>>2]|0)+13>>0]|0|0)!=0){e=0}else{e=Zo(c[(c[h>>2]|0)+60>>2]|0,c[j>>2]|0)|0}c[g>>2]=e;if((d[(c[h>>2]|0)+17>>0]|0|0)==5){b=c[g>>2]|0;i=f;return b|0}a[(c[h>>2]|0)+17>>0]=c[j>>2];b=c[g>>2]|0;i=f;return b|0}function Zo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+32>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function _o(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;j=e;h=e+4|0;g=e+8|0;c[j>>2]=b;c[h>>2]=d;if((a[(c[j>>2]|0)+43>>0]|0)!=0){c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}else{c[g>>2]=ap(c[(c[j>>2]|0)+4>>2]|0,c[h>>2]|0,1,6)|0;c[f>>2]=c[g>>2];b=c[f>>2]|0;i=e;return b|0}return 0}function $o(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;if((a[(c[f>>2]|0)+43>>0]|0)!=0){i=e;return}ap(c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0,1,5)|0;i=e;return}function ap(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=xb[c[(c[c[k>>2]>>2]|0)+56>>2]&31](c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return a|0}function bp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;h=f;j=f+4|0;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;if((a[(c[g>>2]|0)+43>>0]|0)!=0){i=f;return}ap(c[(c[g>>2]|0)+4>>2]|0,c[h>>2]|0,c[j>>2]|0,9)|0;i=f;return}function cp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+20>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function dp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;gp(c[d>>2]|0,0,0)|0;i=b;return 0}function ep(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=i;i=i+64|0;t=l+52|0;s=l+48|0;h=l+44|0;o=l+8|0;j=l+40|0;n=l+36|0;p=l+32|0;g=l+24|0;k=l+20|0;r=l;q=l+16|0;m=l+28|0;c[t>>2]=a;c[s>>2]=b;c[h>>2]=d;d=o;c[d>>2]=e;c[d+4>>2]=f;c[j>>2]=c[t>>2];c[n>>2]=c[s>>2];c[p>>2]=c[h>>2];d=(c[j>>2]|0)+24|0;b=o;a=o;a:do{if(((c[d>>2]|0)!=(c[b>>2]|0)?1:(c[d+4>>2]|0)!=(c[b+4>>2]|0))|(c[a>>2]|0)==0&(c[a+4>>2]|0)==0){t=r;c[t>>2]=0;c[t+4>>2]=0;c[k>>2]=c[(c[j>>2]|0)+4>>2];while(1){if((c[k>>2]|0)==0){break a}s=r;s=dL(c[s>>2]|0,c[s+4>>2]|0,1020,0)|0;b=D;t=o;a=c[t+4>>2]|0;if(!((b|0)<(a|0)|((b|0)==(a|0)?s>>>0<=(c[t>>2]|0)>>>0:0))){break a}s=r;s=dL(c[s>>2]|0,c[s+4>>2]|0,1020,0)|0;t=r;c[t>>2]=s;c[t+4>>2]=D;c[k>>2]=c[c[k>>2]>>2]}}else{c[k>>2]=c[(c[j>>2]|0)+32>>2]}}while(0);t=o;t=mL(c[t>>2]|0,c[t+4>>2]|0,1020,0)|0;c[g>>2]=t;do{c[q>>2]=1020-(c[g>>2]|0);if((c[p>>2]|0)<(1020-(c[g>>2]|0)|0)){f=c[p>>2]|0}else{f=1020-(c[g>>2]|0)|0}c[m>>2]=f;fL(c[n>>2]|0,(c[k>>2]|0)+4+(c[g>>2]|0)|0,c[m>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+(c[m>>2]|0);c[p>>2]=(c[p>>2]|0)-(c[q>>2]|0);c[g>>2]=0;if((c[p>>2]|0)<0){break}t=c[c[k>>2]>>2]|0;c[k>>2]=t;if((t|0)==0){break}}while((c[p>>2]|0)>0);t=o;s=c[h>>2]|0;s=dL(c[t>>2]|0,c[t+4>>2]|0,s|0,((s|0)<0)<<31>>31|0)|0;t=(c[j>>2]|0)+24|0;c[t>>2]=s;c[t+4>>2]=D;c[(c[j>>2]|0)+32>>2]=c[k>>2];i=l;return 0}function fp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+64|0;h=g+48|0;s=g+44|0;q=g+40|0;r=g+36|0;o=g+32|0;n=g+28|0;p=g+20|0;j=g+12|0;m=g+8|0;l=g+16|0;k=g+24|0;c[s>>2]=a;c[q>>2]=b;c[r>>2]=d;a=g;c[a>>2]=e;c[a+4>>2]=f;c[o>>2]=c[s>>2];c[n>>2]=c[r>>2];c[p>>2]=c[q>>2];while(1){if((c[n>>2]|0)<=0){j=14;break}c[j>>2]=c[(c[o>>2]|0)+16>>2];s=(c[o>>2]|0)+8|0;s=mL(c[s>>2]|0,c[s+4>>2]|0,1020,0)|0;c[m>>2]=s;if((c[n>>2]|0)<(1020-(c[m>>2]|0)|0)){f=c[n>>2]|0}else{f=1020-(c[m>>2]|0)|0}c[l>>2]=f;if((c[m>>2]|0)==0){c[k>>2]=mc(1024)|0;if((c[k>>2]|0)==0){j=8;break}c[c[k>>2]>>2]=0;f=c[k>>2]|0;if((c[j>>2]|0)!=0){c[c[j>>2]>>2]=f}else{c[(c[o>>2]|0)+4>>2]=f}c[(c[o>>2]|0)+16>>2]=c[k>>2]}fL((c[(c[o>>2]|0)+16>>2]|0)+4+(c[m>>2]|0)|0,c[p>>2]|0,c[l>>2]|0)|0;c[p>>2]=(c[p>>2]|0)+(c[l>>2]|0);c[n>>2]=(c[n>>2]|0)-(c[l>>2]|0);r=c[l>>2]|0;s=(c[o>>2]|0)+8|0;q=s;r=dL(c[q>>2]|0,c[q+4>>2]|0,r|0,((r|0)<0)<<31>>31|0)|0;c[s>>2]=r;c[s+4>>2]=D}if((j|0)==8){c[h>>2]=3082;s=c[h>>2]|0;i=g;return s|0}else if((j|0)==14){c[h>>2]=0;s=c[h>>2]|0;i=g;return s|0}return 0}function gp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+32|0;e=f+20|0;j=f+8|0;g=f+12|0;h=f+16|0;c[e>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;c[j>>2]=c[e>>2];c[g>>2]=c[(c[j>>2]|0)+4>>2];while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[g>>2];c[g>>2]=c[c[g>>2]>>2];oc(c[h>>2]|0)}jp(c[e>>2]|0);i=f;return 0}function hp(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function ip(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=c[g>>2];e=(c[e>>2]|0)+8|0;b=c[e+4>>2]|0;a=c[f>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=b;i=d;return 0}function jp(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];a=c[d>>2]|0;aL(a|0,0,kp()|0)|0;c[c[d>>2]>>2]=10880;i=b;return}function kp(){return 40}function lp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;f=h+24|0;j=h;m=h+4|0;e=h+8|0;l=h+12|0;k=h+16|0;g=h+20|0;c[f>>2]=a;c[j>>2]=b;c[m>>2]=d;c[e>>2]=c[(c[f>>2]|0)+40>>2];if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=h;return a|0}if((c[m>>2]|0)>=(c[(c[f>>2]|0)+96>>2]|0)){a=c[e>>2]|0;i=h;return a|0}c[k>>2]=(c[m>>2]|0)+((c[j>>2]|0)==1?0:1);c[l>>2]=c[k>>2];while(1){if((c[l>>2]|0)>=(c[(c[f>>2]|0)+96>>2]|0)){break}wh(c[(c[(c[f>>2]|0)+92>>2]|0)+((c[l>>2]|0)*48|0)+16>>2]|0);c[l>>2]=(c[l>>2]|0)+1}c[(c[f>>2]|0)+96>>2]=c[k>>2];if((c[j>>2]|0)!=1){if((Uo(c[f>>2]|0)|0)==0){if((c[c[(c[f>>2]|0)+64>>2]>>2]|0)==0){a=c[e>>2]|0;i=h;return a|0}}if((c[k>>2]|0)==0){j=0}else{j=(c[(c[f>>2]|0)+92>>2]|0)+(((c[k>>2]|0)-1|0)*48|0)|0}c[g>>2]=j;c[e>>2]=Hp(c[f>>2]|0,c[g>>2]|0)|0;a=c[e>>2]|0;i=h;return a|0}if((c[k>>2]|0)!=0){a=c[e>>2]|0;i=h;return a|0}if((c[c[(c[f>>2]|0)+68>>2]>>2]|0)==0){a=c[e>>2]|0;i=h;return a|0}if((Po(c[(c[f>>2]|0)+68>>2]|0)|0)!=0){c[e>>2]=Qo(c[(c[f>>2]|0)+68>>2]|0,0,0)|0}c[(c[f>>2]|0)+52>>2]=0;a=c[e>>2]|0;i=h;return a|0}function mp(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=i;i=i+64|0;n=m+8|0;h=m+52|0;f=m+48|0;t=m+44|0;s=m;o=m+40|0;p=m+56|0;r=m+32|0;g=m+24|0;j=m+16|0;k=m+20|0;q=m+36|0;l=m+28|0;c[h>>2]=b;c[f>>2]=e;c[t>>2]=c[c[h>>2]>>2];c[r>>2]=0;c[j>>2]=1;c[k>>2]=0;c[l>>2]=0;c[g>>2]=dh(c[(c[h>>2]|0)+64>>2]|0,s)|0;a:do{if((c[g>>2]|0)==0){c[k>>2]=c[(c[h>>2]|0)+200>>2];c[g>>2]=np(c[(c[h>>2]|0)+64>>2]|0,c[k>>2]|0,(c[(c[c[h>>2]>>2]|0)+8>>2]|0)+1|0)|0;if((c[g>>2]|0)==0){if((a[c[k>>2]>>0]|0)!=0){c[g>>2]=op(c[t>>2]|0,c[k>>2]|0,0,j)|0}}c[k>>2]=0;if((c[g>>2]|0)==0){if((c[j>>2]|0)!=0){b=(c[h>>2]|0)+72|0;c[b>>2]=0;c[b+4>>2]=0;c[q>>2]=c[f>>2];b:while(1){b=s;c[g>>2]=pp(c[h>>2]|0,c[f>>2]|0,c[b>>2]|0,c[b+4>>2]|0,o,r)|0;if((c[g>>2]|0)!=0){o=9;break}if((c[o>>2]|0)==-1){t=s;t=$K(c[t>>2]|0,c[t+4>>2]|0,c[(c[h>>2]|0)+148>>2]|0,0)|0;b=(c[(c[h>>2]|0)+152>>2]|0)+8|0;b=lL(t|0,D|0,b|0,((b|0)<0)<<31>>31|0)|0;c[o>>2]=b}if((c[o>>2]|0)==0){if((c[f>>2]|0)==0){t=(c[h>>2]|0)+80|0;t=dL(c[t>>2]|0,c[t+4>>2]|0,c[(c[h>>2]|0)+148>>2]|0,0)|0;b=(c[h>>2]|0)+72|0;if((t|0)==(c[b>>2]|0)?(D|0)==(c[b+4>>2]|0):0){b=s;t=(c[h>>2]|0)+72|0;t=$K(c[b>>2]|0,c[b+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0)|0;b=(c[(c[h>>2]|0)+152>>2]|0)+8|0;b=lL(t|0,D|0,b|0,((b|0)<0)<<31>>31|0)|0;c[o>>2]=b}}}b=(c[h>>2]|0)+72|0;if((c[b+4>>2]|0)==0?(c[b>>2]|0)==(c[(c[h>>2]|0)+148>>2]|0):0){c[g>>2]=Wo(c[h>>2]|0,c[r>>2]|0)|0;if((c[g>>2]|0)!=0){break a}c[(c[h>>2]|0)+24>>2]=c[r>>2]}c[p>>2]=0;while(1){if(!((c[p>>2]|0)>>>0<(c[o>>2]|0)>>>0)){continue b}if((c[q>>2]|0)!=0){fh(c[h>>2]|0);c[q>>2]=0}c[g>>2]=qp(c[h>>2]|0,(c[h>>2]|0)+72|0,0,1,0)|0;if((c[g>>2]|0)!=0){break}c[l>>2]=(c[l>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+1}if((c[g>>2]|0)!=101){o=28;break}e=s;t=c[e+4>>2]|0;b=(c[h>>2]|0)+72|0;c[b>>2]=c[e>>2];c[b+4>>2]=t}if((o|0)==9){if((c[g>>2]|0)!=101){break}c[g>>2]=0;break}else if((o|0)==28){if((c[g>>2]|0)!=522){break}c[g>>2]=0;break}}}}}while(0);a[(c[h>>2]|0)+18>>0]=a[(c[h>>2]|0)+12>>0]|0;if((c[g>>2]|0)==0){c[k>>2]=c[(c[h>>2]|0)+200>>2];c[g>>2]=np(c[(c[h>>2]|0)+64>>2]|0,c[k>>2]|0,(c[(c[c[h>>2]>>2]|0)+8>>2]|0)+1|0)|0}do{if((c[g>>2]|0)==0){if((d[(c[h>>2]|0)+16>>0]|0)<4){if((d[(c[h>>2]|0)+16>>0]|0)!=0){break}}c[g>>2]=pd(c[h>>2]|0,0)|0}}while(0);if((c[g>>2]|0)==0){c[g>>2]=No(c[h>>2]|0,(a[c[k>>2]>>0]|0)!=0&1,0)|0}if((c[g>>2]|0)==0){if((a[c[k>>2]>>0]|0)!=0){if((c[j>>2]|0)!=0){c[g>>2]=rp(c[h>>2]|0,c[k>>2]|0)|0}}}if((c[f>>2]|0)==0){b=c[h>>2]|0;sp(b);b=c[g>>2]|0;i=m;return b|0}if((c[l>>2]|0)==0){b=c[h>>2]|0;sp(b);b=c[g>>2]|0;i=m;return b|0}b=c[(c[h>>2]|0)+172>>2]|0;c[n>>2]=c[l>>2];c[n+4>>2]=b;zc(539,10960,n);b=c[h>>2]|0;sp(b);b=c[g>>2]|0;i=m;return b|0}function np(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+48|0;f=n+20|0;g=n+36|0;h=n+32|0;q=n+28|0;l=n+24|0;j=n+16|0;k=n;p=n+8|0;m=n+12|0;o=n+40|0;c[g>>2]=b;c[h>>2]=d;c[q>>2]=e;a[c[h>>2]>>0]=0;e=dh(c[g>>2]|0,k)|0;c[l>>2]=e;b=k;d=c[b+4>>2]|0;if(!(0!=(e|0)|((d|0)<0|(d|0)==0&(c[b>>2]|0)>>>0<16))){d=c[g>>2]|0;b=k;b=$K(c[b>>2]|0,c[b+4>>2]|0,16,0)|0;b=yp(d,b,D,j)|0;c[l>>2]=b;if(0==(b|0)){if(!((c[j>>2]|0)==0?1:(c[j>>2]|0)>>>0>=(c[q>>2]|0)>>>0)){d=c[g>>2]|0;b=k;b=$K(c[b>>2]|0,c[b+4>>2]|0,12,0)|0;b=yp(d,b,D,p)|0;c[l>>2]=b;if(0==(b|0)){d=c[g>>2]|0;b=k;b=$K(c[b>>2]|0,c[b+4>>2]|0,8,0)|0;b=xp(d,o,8,b,D)|0;c[l>>2]=b;if(0==(b|0)){if((XK(o,10992,8)|0)==0){o=c[g>>2]|0;q=c[h>>2]|0;d=c[j>>2]|0;b=k;b=$K(c[b>>2]|0,c[b+4>>2]|0,16,0)|0;b=$K(b|0,D|0,c[j>>2]|0,0)|0;b=xp(o,q,d,b,D)|0;c[l>>2]=b;if(0==(b|0)){c[m>>2]=0;while(1){if(!((c[m>>2]|0)>>>0<(c[j>>2]|0)>>>0)){break}c[p>>2]=(c[p>>2]|0)-(a[(c[h>>2]|0)+(c[m>>2]|0)>>0]|0);c[m>>2]=(c[m>>2]|0)+1}if((c[p>>2]|0)!=0){c[j>>2]=0}a[(c[h>>2]|0)+(c[j>>2]|0)>>0]=0;c[f>>2]=0;b=c[f>>2]|0;i=n;return b|0}}}}}}}c[f>>2]=c[l>>2];b=c[f>>2]|0;i=n;return b|0}function op(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=xb[c[(c[k>>2]|0)+32>>2]&31](c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return a|0}function pp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;r=i;i=i+64|0;k=r+44|0;m=r+40|0;t=r+36|0;u=r+8|0;h=r+32|0;q=r+28|0;l=r+20|0;s=r+48|0;n=r;o=r+16|0;p=r+24|0;c[m>>2]=a;c[t>>2]=b;b=u;c[b>>2]=d;c[b+4>>2]=e;c[h>>2]=f;c[q>>2]=g;e=Gp(c[m>>2]|0)|0;b=(c[m>>2]|0)+72|0;c[b>>2]=e;c[b+4>>2]=D;b=(c[m>>2]|0)+72|0;b=dL(c[b>>2]|0,c[b+4>>2]|0,c[(c[m>>2]|0)+148>>2]|0,0)|0;e=D;a=u;d=c[a+4>>2]|0;if((e|0)>(d|0)|((e|0)==(d|0)?b>>>0>(c[a>>2]|0)>>>0:0)){c[k>>2]=101;u=c[k>>2]|0;i=r;return u|0}b=(c[m>>2]|0)+72|0;a=c[b+4>>2]|0;u=n;c[u>>2]=c[b>>2];c[u+4>>2]=a;if((c[t>>2]|0)!=0){j=5}else{a=n;u=(c[m>>2]|0)+80|0;if((c[a>>2]|0)!=(c[u>>2]|0)?1:(c[a+4>>2]|0)!=(c[u+4>>2]|0)){j=5}}if((j|0)==5){u=n;c[l>>2]=xp(c[(c[m>>2]|0)+64>>2]|0,s,8,c[u>>2]|0,c[u+4>>2]|0)|0;if((c[l>>2]|0)!=0){c[k>>2]=c[l>>2];u=c[k>>2]|0;i=r;return u|0}if((XK(s,10992,8)|0)!=0){c[k>>2]=101;u=c[k>>2]|0;i=r;return u|0}}a=c[(c[m>>2]|0)+64>>2]|0;u=n;u=dL(c[u>>2]|0,c[u+4>>2]|0,8,0)|0;u=yp(a,u,D,c[h>>2]|0)|0;c[l>>2]=u;if(0==(u|0)){a=c[(c[m>>2]|0)+64>>2]|0;u=n;u=dL(c[u>>2]|0,c[u+4>>2]|0,12,0)|0;u=yp(a,u,D,(c[m>>2]|0)+48|0)|0;c[l>>2]=u;if(0==(u|0)){a=c[(c[m>>2]|0)+64>>2]|0;u=n;u=dL(c[u>>2]|0,c[u+4>>2]|0,16,0)|0;u=yp(a,u,D,c[q>>2]|0)|0;c[l>>2]=u;if(0==(u|0)){u=(c[m>>2]|0)+72|0;do{if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){a=c[(c[m>>2]|0)+64>>2]|0;u=n;u=dL(c[u>>2]|0,c[u+4>>2]|0,20,0)|0;u=yp(a,u,D,p)|0;c[l>>2]=u;if(0==(u|0)){a=c[(c[m>>2]|0)+64>>2]|0;u=n;u=dL(c[u>>2]|0,c[u+4>>2]|0,24,0)|0;u=yp(a,u,D,o)|0;c[l>>2]=u;if(0==(u|0)){if((c[o>>2]|0)==0){c[o>>2]=c[(c[m>>2]|0)+152>>2]}if(!((c[o>>2]|0)>>>0<512)){if(!((c[p>>2]|0)>>>0<32)){if(!((c[o>>2]|0)>>>0>65536)){if(!((c[p>>2]|0)>>>0>65536)){if(((c[o>>2]|0)-1&c[o>>2]|0)==0){if(((c[p>>2]|0)-1&c[p>>2]|0)==0){c[l>>2]=bh(c[m>>2]|0,o,-1)|0;c[(c[m>>2]|0)+148>>2]=c[p>>2];break}}}}}}c[k>>2]=101;u=c[k>>2]|0;i=r;return u|0}}c[k>>2]=c[l>>2];u=c[k>>2]|0;i=r;return u|0}}while(0);u=(c[m>>2]|0)+72|0;a=u;a=dL(c[a>>2]|0,c[a+4>>2]|0,c[(c[m>>2]|0)+148>>2]|0,0)|0;c[u>>2]=a;c[u+4>>2]=D;c[k>>2]=c[l>>2];u=c[k>>2]|0;i=r;return u|0}}}c[k>>2]=c[l>>2];u=c[k>>2]|0;i=r;return u|0}function qp(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;m=i;i=i+64|0;l=m+60|0;y=m+56|0;w=m+52|0;A=m+48|0;s=m+44|0;q=m+40|0;o=m+36|0;n=m+32|0;t=m+24|0;z=m+20|0;u=m+16|0;B=m+12|0;v=m+8|0;x=m;p=m+28|0;c[y>>2]=f;c[w>>2]=g;c[A>>2]=h;c[s>>2]=j;c[q>>2]=k;c[u>>2]=c[(c[y>>2]|0)+200>>2];f=c[y>>2]|0;if((c[s>>2]|0)!=0){f=c[f+64>>2]|0}else{f=c[f+68>>2]|0}c[B>>2]=f;g=c[w>>2]|0;c[o>>2]=yp(c[B>>2]|0,c[g>>2]|0,c[g+4>>2]|0,t)|0;if((c[o>>2]|0)!=0){c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}k=c[B>>2]|0;j=c[u>>2]|0;h=c[(c[y>>2]|0)+152>>2]|0;g=c[w>>2]|0;g=dL(c[g>>2]|0,c[g+4>>2]|0,4,0)|0;c[o>>2]=xp(k,j,h,g,D)|0;if((c[o>>2]|0)!=0){c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}h=(c[(c[y>>2]|0)+152>>2]|0)+4+(c[s>>2]<<2)|0;g=c[w>>2]|0;j=g;h=dL(c[j>>2]|0,c[j+4>>2]|0,h|0,((h|0)<0)<<31>>31|0)|0;c[g>>2]=h;c[g+4>>2]=D;if((c[t>>2]|0)!=0){if((c[t>>2]|0)!=(((c[368]|0)/(c[(c[y>>2]|0)+152>>2]|0)|0)+1|0)){if(!((c[t>>2]|0)>>>0>(c[(c[y>>2]|0)+24>>2]|0)>>>0)){if((uh(c[A>>2]|0,c[t>>2]|0)|0)==0){if((c[s>>2]|0)!=0){h=c[B>>2]|0;g=c[w>>2]|0;g=$K(c[g>>2]|0,c[g+4>>2]|0,4,0)|0;c[o>>2]=yp(h,g,D,z)|0;if((c[o>>2]|0)!=0){c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}if((c[q>>2]|0)==0){g=zp(c[y>>2]|0,c[u>>2]|0)|0;if((g|0)!=(c[z>>2]|0)){c[l>>2]=101;g=c[l>>2]|0;i=m;return g|0}}}if((c[A>>2]|0)!=0){g=sh(c[A>>2]|0,c[t>>2]|0)|0;c[o>>2]=g;if((g|0)!=0){c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}}if((c[t>>2]|0)==1){if((b[(c[y>>2]|0)+142>>1]|0)!=(d[(c[u>>2]|0)+20>>0]|0)){b[(c[y>>2]|0)+142>>1]=d[(c[u>>2]|0)+20>>0]|0}}if((Uo(c[y>>2]|0)|0)!=0){c[n>>2]=0}else{c[n>>2]=Ap(c[y>>2]|0,c[t>>2]|0)|0}if((c[s>>2]|0)!=0){if((d[(c[y>>2]|0)+7>>0]|0)!=0){z=1}else{g=c[w>>2]|0;j=c[g+4>>2]|0;z=(c[y>>2]|0)+80|0;h=c[z+4>>2]|0;z=(j|0)<(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0<=(c[z>>2]|0)>>>0:0)}c[v>>2]=z&1}else{if((c[n>>2]|0)==0){z=1}else{z=0==(b[(c[n>>2]|0)+24>>1]&4|0)}c[v>>2]=z&1}do{if((c[c[(c[y>>2]|0)+60>>2]>>2]|0)!=0){if((d[(c[y>>2]|0)+16>>0]|0)<4){if((d[(c[y>>2]|0)+16>>0]|0)!=0){r=44;break}}if((c[v>>2]|0)!=0){h=c[(c[y>>2]|0)+152>>2]|0;h=nL((c[t>>2]|0)-1|0,0,h|0,((h|0)<0)<<31>>31|0)|0;g=x;c[g>>2]=h;c[g+4>>2]=D;g=x;c[o>>2]=nd(c[(c[y>>2]|0)+60>>2]|0,c[u>>2]|0,c[(c[y>>2]|0)+152>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;if((c[t>>2]|0)>>>0>(c[(c[y>>2]|0)+32>>2]|0)>>>0){c[(c[y>>2]|0)+32>>2]=c[t>>2]}if((c[(c[y>>2]|0)+88>>2]|0)!=0){Bp(c[(c[y>>2]|0)+88>>2]|0,c[t>>2]|0,c[u>>2]|0);c[u>>2]=c[u>>2]}}else{r=44}}else{r=44}}while(0);do{if((r|0)==44){if((c[s>>2]|0)==0){if((c[n>>2]|0)==0){g=(c[y>>2]|0)+20|0;a[g>>0]=d[g>>0]|2;c[o>>2]=ad(c[y>>2]|0,c[t>>2]|0,n,1)|0;g=(c[y>>2]|0)+20|0;a[g>>0]=d[g>>0]&-3;if((c[o>>2]|0)==0){g=(c[n>>2]|0)+24|0;b[g>>1]=e[g>>1]&-9;Cp(c[n>>2]|0);break}c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}}}}while(0);if((c[n>>2]|0)!=0){c[p>>2]=c[(c[n>>2]|0)+4>>2];fL(c[p>>2]|0,c[u>>2]|0,c[(c[y>>2]|0)+152>>2]|0)|0;rb[c[(c[y>>2]|0)+196>>2]&31](c[n>>2]|0);do{if((c[s>>2]|0)!=0){if((c[q>>2]|0)!=0){h=c[w>>2]|0;k=c[h+4>>2]|0;g=(c[y>>2]|0)+80|0;j=c[g+4>>2]|0;if(!((k|0)<(j|0)|((k|0)==(j|0)?(c[h>>2]|0)>>>0<=(c[g>>2]|0)>>>0:0))){break}}nh(c[n>>2]|0)}}while(0);if((c[t>>2]|0)==1){q=(c[y>>2]|0)+100|0;r=(c[p>>2]|0)+24|0;p=q+16|0;do{a[q>>0]=a[r>>0]|0;q=q+1|0;r=r+1|0}while((q|0)<(p|0))}Dp(c[n>>2]|0)}c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}}c[l>>2]=0;g=c[l>>2]|0;i=m;return g|0}}c[l>>2]=101;g=c[l>>2]|0;i=m;return g|0}function rp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=i;i=i+64|0;t=s+60|0;j=s+56|0;h=s+52|0;g=s+48|0;m=s+44|0;f=s+40|0;e=s+36|0;r=s;p=s+24|0;l=s+20|0;n=s+16|0;q=s+8|0;k=s+28|0;o=s+32|0;c[t>>2]=b;c[j>>2]=d;c[h>>2]=c[c[t>>2]>>2];c[e>>2]=0;c[m>>2]=Sc(c[(c[h>>2]|0)+4>>2]<<1)|0;c[f>>2]=(c[m>>2]|0)+(c[(c[h>>2]|0)+4>>2]|0);if((c[m>>2]|0)!=0){c[s+12>>2]=16385;c[g>>2]=wp(c[h>>2]|0,c[j>>2]|0,c[m>>2]|0,16385,0)|0}else{c[g>>2]=7}a:do{if((c[g>>2]|0)==0){c[g>>2]=dh(c[m>>2]|0,r)|0;if((c[g>>2]|0)==0){c[n>>2]=(c[(c[h>>2]|0)+8>>2]|0)+1;c[e>>2]=nc((c[r>>2]|0)+(c[n>>2]|0)+1|0)|0;if((c[e>>2]|0)==0){c[g>>2]=7;break}t=r;t=dL(c[t>>2]|0,c[t+4>>2]|0,1,0)|0;c[l>>2]=(c[e>>2]|0)+t;c[g>>2]=xp(c[m>>2]|0,c[e>>2]|0,c[r>>2]|0,0,0)|0;if((c[g>>2]|0)==0){a[(c[e>>2]|0)+(c[r>>2]|0)>>0]=0;c[p>>2]=c[e>>2];while(1){b=(c[p>>2]|0)-(c[e>>2]|0)|0;u=((b|0)<0)<<31>>31;t=r;d=c[t+4>>2]|0;if(!((u|0)<(d|0)|((u|0)==(d|0)?b>>>0<(c[t>>2]|0)>>>0:0))){break}c[g>>2]=op(c[h>>2]|0,c[p>>2]|0,0,q)|0;if((c[g>>2]|0)!=0){break a}if((c[q>>2]|0)!=0){c[o>>2]=2049;c[g>>2]=wp(c[h>>2]|0,c[p>>2]|0,c[f>>2]|0,c[o>>2]|0,0)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=np(c[f>>2]|0,c[l>>2]|0,c[n>>2]|0)|0;Ko(c[f>>2]|0)|0;if((c[g>>2]|0)!=0){break a}if((a[c[l>>2]>>0]|0)!=0){d=(YK(c[l>>2]|0,c[j>>2]|0)|0)==0}else{d=0}c[k>>2]=d&1;if((c[k>>2]|0)!=0){break a}}u=(Ub(c[p>>2]|0)|0)+1|0;c[p>>2]=(c[p>>2]|0)+u}Ko(c[m>>2]|0)|0;c[g>>2]=So(c[h>>2]|0,c[j>>2]|0,0)|0}}}}while(0);oc(c[e>>2]|0);if((c[m>>2]|0)==0){u=c[g>>2]|0;i=s;return u|0}Ko(c[m>>2]|0)|0;oc(c[m>>2]|0);u=c[g>>2]|0;i=s;return u|0}function sp(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;if((d[(c[e>>2]|0)+12>>0]|0|0)==0){if(((tp(c[(c[e>>2]|0)+60>>2]|0)|0)&4096|0)==0){a=up(c[(c[e>>2]|0)+60>>2]|0)|0;c[(c[e>>2]|0)+148>>2]=a;i=b;return}}c[(c[e>>2]|0)+148>>2]=512;i=b;return}function tp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=ub[c[(c[c[d>>2]>>2]|0)+48>>2]&63](c[d>>2]|0)|0;i=b;return a|0}function up(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=vp(c[e>>2]|0)|0;if((c[b>>2]|0)<32){c[b>>2]=512}else{if((c[b>>2]|0)>65536){c[b>>2]=65536}}i=d;return c[b>>2]|0}function vp(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[(c[c[e>>2]>>2]|0)+44>>2];if((c[d>>2]|0)==0){e=4096;i=b;return e|0}e=ub[c[d>>2]&63](c[e>>2]|0)|0;i=b;return e|0}function wp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;n=h+20|0;m=h;l=h+4|0;k=h+8|0;j=h+12|0;g=h+16|0;c[n>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;c[g>>2]=Ab[c[(c[n>>2]|0)+24>>2]&15](c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,c[k>>2]&556927,c[j>>2]|0)|0;i=h;return c[g>>2]|0}function xp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;k=g+16|0;j=g+12|0;h=g+8|0;l=g;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;a=l;c[a>>2]=e;c[a+4>>2]=f;a=l;a=Ab[c[(c[c[k>>2]>>2]|0)+8>>2]&15](c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;i=g;return a|0}function yp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;k=f+16|0;l=f;j=f+8|0;h=f+20|0;g=f+12|0;c[k>>2]=a;a=l;c[a>>2]=b;c[a+4>>2]=d;c[j>>2]=e;a=l;c[g>>2]=xp(c[k>>2]|0,h,4,c[a>>2]|0,c[a+4>>2]|0)|0;if((c[g>>2]|0)!=0){l=c[g>>2]|0;i=f;return l|0}l=zo(h)|0;c[c[j>>2]>>2]=l;l=c[g>>2]|0;i=f;return l|0}function zp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;h=e;f=e+4|0;g=e+8|0;c[j>>2]=a;c[h>>2]=b;c[f>>2]=c[(c[j>>2]|0)+48>>2];c[g>>2]=(c[(c[j>>2]|0)+152>>2]|0)-200;while(1){if((c[g>>2]|0)<=0){break}c[f>>2]=(c[f>>2]|0)+(d[(c[h>>2]|0)+(c[g>>2]|0)>>0]|0);c[g>>2]=(c[g>>2]|0)-200}i=e;return c[f>>2]|0}function Ap(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;d=e+4|0;c[g>>2]=a;c[f>>2]=b;c[d>>2]=0;Fp(c[(c[g>>2]|0)+204>>2]|0,c[f>>2]|0,0,d)|0;i=e;return c[d>>2]|0}function Bp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;g=e;h=e+4|0;f=e+8|0;j=e+12|0;c[k>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f>>2]=c[k>>2];while(1){if((c[f>>2]|0)==0){break}if((Vc(c[(c[f>>2]|0)+28>>2]|0)|0)==0){if((c[g>>2]|0)>>>0<(c[(c[f>>2]|0)+16>>2]|0)>>>0){c[j>>2]=bd(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,1)|0;if((c[j>>2]|0)!=0){c[(c[f>>2]|0)+28>>2]=c[j>>2]}}}c[f>>2]=c[(c[f>>2]|0)+44>>2]}i=e;return}function Cp(a){a=a|0;var d=0,f=0;d=i;i=i+16|0;f=d;c[f>>2]=a;a=(c[f>>2]|0)+24|0;b[a>>1]=(e[a>>1]|0)&-33;if(0!=(b[(c[f>>2]|0)+24>>1]&2|0)){i=d;return}a=(c[f>>2]|0)+24|0;b[a>>1]=e[a>>1]|0|2;Ep(c[f>>2]|0);i=d;return}function Dp(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;a=(c[e>>2]|0)+26|0;b[a>>1]=(b[a>>1]|0)+ -1<<16>>16;if((b[(c[e>>2]|0)+26>>1]|0)!=0){i=d;return}c[f>>2]=c[(c[e>>2]|0)+28>>2];a=(c[f>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+ -1;a=c[e>>2]|0;if((b[(c[e>>2]|0)+24>>1]&2|0)==0){ph(a);i=d;return}else{oh(a);Ep(c[e>>2]|0);i=d;return}}function Ep(d){d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=d;c[f>>2]=c[(c[g>>2]|0)+28>>2];c[(c[g>>2]|0)+32>>2]=c[c[f>>2]>>2];if((c[(c[g>>2]|0)+32>>2]|0)!=0){c[(c[(c[g>>2]|0)+32>>2]|0)+36>>2]=c[g>>2]}else{if((a[(c[f>>2]|0)+28>>0]|0)!=0){a[(c[f>>2]|0)+29>>0]=1}}c[c[f>>2]>>2]=c[g>>2];if((c[(c[f>>2]|0)+4>>2]|0)==0){c[(c[f>>2]|0)+4>>2]=c[g>>2]}if((c[(c[f>>2]|0)+8>>2]|0)!=0){i=e;return}if(0!=(b[(c[g>>2]|0)+24>>1]&4|0)){i=e;return}c[(c[f>>2]|0)+8>>2]=c[g>>2];i=e;return}function Fp(a,e,f,g){a=a|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+48|0;h=j+40|0;m=j+36|0;o=j+32|0;s=j+28|0;l=j+24|0;n=j+20|0;p=j+12|0;k=j+8|0;t=j+4|0;r=j;q=j+16|0;c[m>>2]=a;c[o>>2]=e;c[s>>2]=f;c[l>>2]=g;c[p>>2]=0;do{if((c[(c[m>>2]|0)+40>>2]|0)==0){if((c[s>>2]|0)==0){c[c[l>>2]>>2]=0;c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}c[t>>2]=pb[c[45256>>2]&31](c[(c[m>>2]|0)+20>>2]|0,(c[(c[m>>2]|0)+24>>2]|0)+40|0,d[(c[m>>2]|0)+28>>0]|0)|0;if((c[t>>2]|0)!=0){f=c[45260>>2]|0;e=c[t>>2]|0;a=Do(c[m>>2]|0)|0;sb[f&7](e,a);c[(c[m>>2]|0)+40>>2]=c[t>>2];break}c[h>>2]=7;a=c[h>>2]|0;i=j;return a|0}}while(0);if((c[s>>2]|0)==0){g=0}else{g=d[(c[m>>2]|0)+29>>0]|0}c[k>>2]=g;c[n>>2]=pb[c[45268>>2]&31](c[(c[m>>2]|0)+40>>2]|0,c[o>>2]|0,c[k>>2]|0)|0;if((c[n>>2]|0)==0){if((c[k>>2]|0)==1){c[r>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[r>>2]|0)==0){break}if((b[(c[r>>2]|0)+26>>1]|0)==0){if((b[(c[r>>2]|0)+24>>1]&4|0)==0){break}}c[r>>2]=c[(c[r>>2]|0)+36>>2]}c[(c[m>>2]|0)+8>>2]=c[r>>2];a:do{if((c[r>>2]|0)==0){c[r>>2]=c[(c[m>>2]|0)+4>>2];while(1){if((c[r>>2]|0)==0){break a}if((b[(c[r>>2]|0)+26>>1]|0)==0){break a}c[r>>2]=c[(c[r>>2]|0)+36>>2]}}}while(0);if((c[r>>2]|0)!=0){c[q>>2]=zb[c[(c[m>>2]|0)+32>>2]&127](c[(c[m>>2]|0)+36>>2]|0,c[r>>2]|0)|0;if((c[q>>2]|0)!=0&(c[q>>2]|0)!=5){c[h>>2]=c[q>>2];a=c[h>>2]|0;i=j;return a|0}}c[n>>2]=pb[c[45268>>2]&31](c[(c[m>>2]|0)+40>>2]|0,c[o>>2]|0,2)|0}}if((c[n>>2]|0)!=0){c[p>>2]=c[(c[n>>2]|0)+4>>2];if((c[c[p>>2]>>2]|0)==0){r=(c[p>>2]|0)+0|0;q=r+40|0;do{c[r>>2]=0;r=r+4|0}while((r|0)<(q|0));c[c[p>>2]>>2]=c[n>>2];c[(c[p>>2]|0)+4>>2]=c[c[n>>2]>>2];c[(c[p>>2]|0)+8>>2]=(c[p>>2]|0)+40;aL(c[(c[p>>2]|0)+8>>2]|0,0,c[(c[m>>2]|0)+24>>2]|0)|0;c[(c[p>>2]|0)+28>>2]=c[m>>2];c[(c[p>>2]|0)+20>>2]=c[o>>2]}if(0==(b[(c[p>>2]|0)+26>>1]|0)){a=(c[m>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+1}a=(c[p>>2]|0)+26|0;b[a>>1]=(b[a>>1]|0)+1<<16>>16;if((c[o>>2]|0)==1){c[(c[m>>2]|0)+44>>2]=c[p>>2]}}c[c[l>>2]>>2]=c[p>>2];if((c[p>>2]|0)==0){k=(c[k>>2]|0)!=0}else{k=0}c[h>>2]=k?7:0;a=c[h>>2]|0;i=j;return a|0}function Gp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;f=b+16|0;d=b;e=b+8|0;c[f>>2]=a;h=d;c[h>>2]=0;c[h+4>>2]=0;h=(c[f>>2]|0)+72|0;g=c[h+4>>2]|0;a=e;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=e;if(!((c[a>>2]|0)!=0|(c[a+4>>2]|0)!=0)){g=d;h=g;h=c[h>>2]|0;g=g+4|0;g=c[g>>2]|0;D=g;i=b;return h|0}h=e;h=$K(c[h>>2]|0,c[h+4>>2]|0,1,0)|0;h=lL(h|0,D|0,c[(c[f>>2]|0)+148>>2]|0,0)|0;h=dL(h|0,D|0,1,0)|0;h=nL(h|0,D|0,c[(c[f>>2]|0)+148>>2]|0,0)|0;g=d;c[g>>2]=h;c[g+4>>2]=D;g=d;h=g;h=c[h>>2]|0;g=g+4|0;g=c[g>>2]|0;D=g;i=b;return h|0}function Hp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=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;o=i;i=i+64|0;g=o+56|0;h=o+52|0;j=o+48|0;n=o+8|0;r=o;p=o+44|0;q=o+32|0;l=o+36|0;m=o+28|0;e=o+24|0;s=o+40|0;k=o+16|0;c[h>>2]=b;c[j>>2]=d;c[p>>2]=0;c[q>>2]=0;if((c[j>>2]|0)!=0){c[q>>2]=rh(c[(c[j>>2]|0)+20>>2]|0)|0;if((c[q>>2]|0)==0){c[g>>2]=7;b=c[g>>2]|0;i=o;return b|0}}if((c[j>>2]|0)!=0){d=c[(c[j>>2]|0)+20>>2]|0}else{d=c[(c[h>>2]|0)+28>>2]|0}c[(c[h>>2]|0)+24>>2]=d;a[(c[h>>2]|0)+18>>0]=a[(c[h>>2]|0)+12>>0]|0;if((c[j>>2]|0)==0){if((Uo(c[h>>2]|0)|0)!=0){c[g>>2]=Ip(c[h>>2]|0)|0;b=c[g>>2]|0;i=o;return b|0}}t=(c[h>>2]|0)+72|0;d=c[t+4>>2]|0;b=n;c[b>>2]=c[t>>2];c[b+4>>2]=d;a:do{if((c[j>>2]|0)!=0){if((Uo(c[h>>2]|0)|0)!=0){f=19}else{t=(c[j>>2]|0)+8|0;if((c[t>>2]|0)!=0|(c[t+4>>2]|0)!=0){d=(c[j>>2]|0)+8|0;b=c[d>>2]|0;d=c[d+4>>2]|0}else{d=n;b=c[d>>2]|0;d=c[d+4>>2]|0}t=r;c[t>>2]=b;c[t+4>>2]=d;d=c[j>>2]|0;b=c[d+4>>2]|0;t=(c[h>>2]|0)+72|0;c[t>>2]=c[d>>2];c[t+4>>2]=b;while(1){if((c[p>>2]|0)!=0){break a}b=(c[h>>2]|0)+72|0;u=c[b+4>>2]|0;t=r;d=c[t+4>>2]|0;if(!((u|0)<(d|0)|((u|0)==(d|0)?(c[b>>2]|0)>>>0<(c[t>>2]|0)>>>0:0))){break a}c[p>>2]=qp(c[h>>2]|0,(c[h>>2]|0)+72|0,c[q>>2]|0,1,1)|0}}}else{f=19}}while(0);if((f|0)==19){u=(c[h>>2]|0)+72|0;c[u>>2]=0;c[u+4>>2]=0}b:while(1){if((c[p>>2]|0)!=0){break}t=(c[h>>2]|0)+72|0;d=c[t+4>>2]|0;u=n;b=c[u+4>>2]|0;if(!((d|0)<(b|0)|((d|0)==(b|0)?(c[t>>2]|0)>>>0<(c[u>>2]|0)>>>0:0))){break}c[m>>2]=0;u=n;c[p>>2]=pp(c[h>>2]|0,0,c[u>>2]|0,c[u+4>>2]|0,m,e)|0;if((c[m>>2]|0)==0){t=(c[h>>2]|0)+80|0;t=dL(c[t>>2]|0,c[t+4>>2]|0,c[(c[h>>2]|0)+148>>2]|0,0)|0;u=(c[h>>2]|0)+72|0;if((t|0)==(c[u>>2]|0)?(D|0)==(c[u+4>>2]|0):0){u=n;t=(c[h>>2]|0)+72|0;t=$K(c[u>>2]|0,c[u+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0)|0;u=(c[(c[h>>2]|0)+152>>2]|0)+8|0;u=lL(t|0,D|0,u|0,((u|0)<0)<<31>>31|0)|0;c[m>>2]=u}}c[l>>2]=0;while(1){if((c[p>>2]|0)!=0){continue b}if(!((c[l>>2]|0)>>>0<(c[m>>2]|0)>>>0)){continue b}t=(c[h>>2]|0)+72|0;d=c[t+4>>2]|0;u=n;b=c[u+4>>2]|0;if(!((d|0)<(b|0)|((d|0)==(b|0)?(c[t>>2]|0)>>>0<(c[u>>2]|0)>>>0:0))){continue b}c[p>>2]=qp(c[h>>2]|0,(c[h>>2]|0)+72|0,c[q>>2]|0,1,1)|0;c[l>>2]=(c[l>>2]|0)+1}}c:do{if((c[j>>2]|0)!=0){t=4+(c[(c[h>>2]|0)+152>>2]|0)|0;t=nL(c[(c[j>>2]|0)+24>>2]|0,0,t|0,((t|0)<0)<<31>>31|0)|0;u=k;c[u>>2]=t;c[u+4>>2]=D;if((Uo(c[h>>2]|0)|0)!=0){c[p>>2]=Jp(c[(c[h>>2]|0)+208>>2]|0,(c[j>>2]|0)+28|0)|0}c[s>>2]=c[(c[j>>2]|0)+24>>2];while(1){if((c[p>>2]|0)!=0){break c}if(!((c[s>>2]|0)>>>0<(c[(c[h>>2]|0)+52>>2]|0)>>>0)){break c}c[p>>2]=qp(c[h>>2]|0,k,c[q>>2]|0,0,1)|0;c[s>>2]=(c[s>>2]|0)+1}}}while(0);wh(c[q>>2]|0);if((c[p>>2]|0)==0){b=n;t=c[b+4>>2]|0;u=(c[h>>2]|0)+72|0;c[u>>2]=c[b>>2];c[u+4>>2]=t}c[g>>2]=c[p>>2];u=c[g>>2]|0;i=o;return u|0}function Ip(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;g=b+12|0;d=b;e=b+4|0;f=b+8|0;c[g>>2]=a;c[(c[g>>2]|0)+24>>2]=c[(c[g>>2]|0)+28>>2];c[d>>2]=Pp(c[(c[g>>2]|0)+208>>2]|0,54,c[g>>2]|0)|0;c[e>>2]=Rp(c[(c[g>>2]|0)+204>>2]|0)|0;while(1){if((c[e>>2]|0)==0){a=5;break}if((c[d>>2]|0)!=0){a=5;break}c[f>>2]=c[(c[e>>2]|0)+12>>2];c[d>>2]=Qp(c[g>>2]|0,c[(c[e>>2]|0)+20>>2]|0)|0;c[e>>2]=c[f>>2]}if((a|0)==5){i=b;return c[d>>2]|0}return 0}function Jp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;d=e+4|0;c[g>>2]=a;c[f>>2]=b;c[d>>2]=0;if((c[(c[f>>2]|0)+12>>2]|0)!=(c[(c[g>>2]|0)+104>>2]|0)){c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+12>>2]=c[(c[g>>2]|0)+104>>2]}if(!((c[c[f>>2]>>2]|0)>>>0<(c[(c[g>>2]|0)+68>>2]|0)>>>0)){a=c[d>>2]|0;i=e;return a|0}c[(c[g>>2]|0)+68>>2]=c[c[f>>2]>>2];c[(c[g>>2]|0)+76>>2]=c[(c[f>>2]|0)+4>>2];c[(c[g>>2]|0)+80>>2]=c[(c[f>>2]|0)+8>>2];Kp(c[g>>2]|0);a=c[d>>2]|0;i=e;return a|0}function Kp(a){a=a|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;l=d+24|0;f=d;g=d+4|0;m=d+8|0;h=d+12|0;j=d+16|0;k=d+20|0;c[l>>2]=a;c[f>>2]=0;c[g>>2]=0;c[m>>2]=0;c[h>>2]=0;if((c[(c[l>>2]|0)+68>>2]|0)==0){i=d;return}a=c[l>>2]|0;Lp(a,Mp(c[(c[l>>2]|0)+68>>2]|0)|0,f,g,m)|0;c[h>>2]=(c[(c[l>>2]|0)+68>>2]|0)-(c[m>>2]|0);c[k>>2]=0;while(1){if((c[k>>2]|0)>=8192){break}if((e[(c[f>>2]|0)+(c[k>>2]<<1)>>1]|0|0)>(c[h>>2]|0)){b[(c[f>>2]|0)+(c[k>>2]<<1)>>1]=0}c[k>>2]=(c[k>>2]|0)+1}c[j>>2]=(c[f>>2]|0)-((c[g>>2]|0)+((c[h>>2]|0)+1<<2));aL((c[g>>2]|0)+((c[h>>2]|0)+1<<2)|0,0,c[j>>2]|0)|0;i=d;return}function Lp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+48|0;q=n+32|0;p=n+28|0;m=n+24|0;k=n+20|0;o=n+16|0;h=n+8|0;j=n+4|0;g=n;l=n+12|0;c[q>>2]=a;c[p>>2]=b;c[m>>2]=d;c[k>>2]=e;c[o>>2]=f;c[h>>2]=Np(c[q>>2]|0,c[p>>2]|0,j)|0;if((c[h>>2]|0)!=0){q=c[h>>2]|0;i=n;return q|0}c[l>>2]=(c[j>>2]|0)+16384;if((c[p>>2]|0)==0){c[j>>2]=(c[j>>2]|0)+136;c[g>>2]=0}else{c[g>>2]=4062+((c[p>>2]|0)-1<<12)}c[c[k>>2]>>2]=(c[j>>2]|0)+ -4;c[c[m>>2]>>2]=c[l>>2];c[c[o>>2]>>2]=c[g>>2];q=c[h>>2]|0;i=n;return q|0}function Mp(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=(((c[e>>2]|0)+4096-4062-1|0)>>>0)/4096|0;i=d;return c[b>>2]|0}function Np(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;g=m+24|0;l=m;h=m+4|0;j=m+8|0;k=m+12|0;o=m+16|0;n=m+20|0;c[l>>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;do{if((c[(c[l>>2]|0)+24>>2]|0)<=(c[h>>2]|0)){c[o>>2]=(c[h>>2]|0)+1<<2;c[n>>2]=qc(c[(c[l>>2]|0)+32>>2]|0,c[o>>2]|0)|0;if((c[n>>2]|0)!=0){aL((c[n>>2]|0)+(c[(c[l>>2]|0)+24>>2]<<2)|0,0,(c[h>>2]|0)+1-(c[(c[l>>2]|0)+24>>2]|0)<<2|0)|0;c[(c[l>>2]|0)+32>>2]=c[n>>2];c[(c[l>>2]|0)+24>>2]=(c[h>>2]|0)+1;break}c[c[j>>2]>>2]=0;c[g>>2]=7;b=c[g>>2]|0;i=m;return b|0}}while(0);do{if((c[(c[(c[l>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2]|0)==0){if((d[(c[l>>2]|0)+43>>0]|0|0)==2){b=Sc(32768)|0;c[(c[(c[l>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2]=b;if((c[(c[(c[l>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2]|0)!=0){break}c[k>>2]=7;break}else{c[k>>2]=Op(c[(c[l>>2]|0)+4>>2]|0,c[h>>2]|0,32768,d[(c[l>>2]|0)+44>>0]|0,(c[(c[l>>2]|0)+32>>2]|0)+(c[h>>2]<<2)|0)|0;if((c[k>>2]|0)!=8){break}b=(c[l>>2]|0)+46|0;a[b>>0]=d[b>>0]|0|2;c[k>>2]=0;break}}}while(0);c[c[j>>2]>>2]=c[(c[(c[l>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2];c[g>>2]=c[k>>2];b=c[g>>2]|0;i=m;return b|0}function Op(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+16|0;l=g;k=g+4|0;j=g+8|0;h=g+12|0;c[m>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;a=Ab[c[(c[c[m>>2]>>2]|0)+52>>2]&15](c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return a|0}function Pp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;h=l+20|0;f=l;m=l+4|0;g=l+8|0;k=l+12|0;j=l+16|0;c[h>>2]=b;c[f>>2]=d;c[m>>2]=e;c[g>>2]=0;if((a[(c[h>>2]|0)+44>>0]|0)==0){b=c[g>>2]|0;i=l;return b|0}c[k>>2]=c[(c[h>>2]|0)+68>>2];b=(c[h>>2]|0)+52|0;b=b+0|0;d=(fq(c[h>>2]|0)|0)+0|0;e=b+48|0;do{a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}while((b|0)<(e|0));c[j>>2]=(c[(c[h>>2]|0)+68>>2]|0)+1;while(1){if((c[g>>2]|0)!=0){break}if(!((c[j>>2]|0)>>>0<=(c[k>>2]|0)>>>0)){break}e=c[f>>2]|0;d=c[m>>2]|0;b=gq(c[h>>2]|0,c[j>>2]|0)|0;c[g>>2]=zb[e&127](d,b)|0;c[j>>2]=(c[j>>2]|0)+1}if((c[k>>2]|0)==(c[(c[h>>2]|0)+68>>2]|0)){b=c[g>>2]|0;i=l;return b|0}Kp(c[h>>2]|0);b=c[g>>2]|0;i=l;return b|0}function Qp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+20|0;j=e;d=e+4|0;f=e+8|0;g=e+12|0;h=e+16|0;c[k>>2]=a;c[j>>2]=b;c[d>>2]=0;c[f>>2]=c[k>>2];c[g>>2]=Up(c[f>>2]|0,c[j>>2]|0)|0;do{if((c[g>>2]|0)!=0){if((Vp(c[g>>2]|0)|0)==1){Wp(c[g>>2]|0);break}c[h>>2]=0;c[d>>2]=Xp(c[(c[f>>2]|0)+208>>2]|0,c[(c[g>>2]|0)+20>>2]|0,h)|0;if((c[d>>2]|0)==0){c[d>>2]=Yp(c[g>>2]|0,c[h>>2]|0)|0}if((c[d>>2]|0)==0){rb[c[(c[f>>2]|0)+196>>2]&31](c[g>>2]|0)}Zp(c[g>>2]|0)}}while(0);kh(c[(c[f>>2]|0)+88>>2]|0);i=e;return c[d>>2]|0}function Rp(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[b>>2]=a;c[e>>2]=c[c[b>>2]>>2];while(1){if((c[e>>2]|0)==0){break}c[(c[e>>2]|0)+12>>2]=c[(c[e>>2]|0)+32>>2];c[e>>2]=c[(c[e>>2]|0)+32>>2]}e=Sp(c[c[b>>2]>>2]|0)|0;i=d;return e|0}function Sp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;f=i;i=i+144|0;h=f+136|0;b=f;d=f+128|0;e=f+132|0;c[h>>2]=a;j=b+0|0;a=j+128|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(a|0));while(1){if((c[h>>2]|0)==0){break}c[d>>2]=c[h>>2];c[h>>2]=c[(c[d>>2]|0)+12>>2];c[(c[d>>2]|0)+12>>2]=0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=31){break}if((c[b+(c[e>>2]<<2)>>2]|0)==0){g=6;break}c[d>>2]=Tp(c[b+(c[e>>2]<<2)>>2]|0,c[d>>2]|0)|0;c[b+(c[e>>2]<<2)>>2]=0;c[e>>2]=(c[e>>2]|0)+1}if((g|0)==6){g=0;c[b+(c[e>>2]<<2)>>2]=c[d>>2]}if((c[e>>2]|0)!=31){continue}j=Tp(c[b+(c[e>>2]<<2)>>2]|0,c[d>>2]|0)|0;c[b+(c[e>>2]<<2)>>2]=j}c[d>>2]=c[b>>2];c[e>>2]=1;while(1){g=c[d>>2]|0;if((c[e>>2]|0)>=32){break}c[d>>2]=Tp(g,c[b+(c[e>>2]<<2)>>2]|0)|0;c[e>>2]=(c[e>>2]|0)+1}i=f;return g|0}function Tp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+64|0;d=g+52|0;h=g;f=g+8|0;e=g+48|0;c[d>>2]=a;c[h>>2]=b;c[e>>2]=f;while(1){if((c[d>>2]|0)!=0){a=(c[h>>2]|0)!=0}else{a=0}b=c[d>>2]|0;if(!a){break}if((c[b+20>>2]|0)>>>0<(c[(c[h>>2]|0)+20>>2]|0)>>>0){c[(c[e>>2]|0)+12>>2]=c[d>>2];c[e>>2]=c[d>>2];c[d>>2]=c[(c[d>>2]|0)+12>>2];continue}else{c[(c[e>>2]|0)+12>>2]=c[h>>2];c[e>>2]=c[h>>2];c[h>>2]=c[(c[h>>2]|0)+12>>2];continue}}if((b|0)!=0){c[(c[e>>2]|0)+12>>2]=c[d>>2];a=f+12|0;a=c[a>>2]|0;i=g;return a|0}if((c[h>>2]|0)!=0){c[(c[e>>2]|0)+12>>2]=c[h>>2];a=f+12|0;a=c[a>>2]|0;i=g;return a|0}else{c[(c[e>>2]|0)+12>>2]=0;a=f+12|0;a=c[a>>2]|0;i=g;return a|0}return 0}function Up(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;d=e+4|0;c[g>>2]=a;c[f>>2]=b;c[d>>2]=0;Fp(c[(c[g>>2]|0)+204>>2]|0,c[f>>2]|0,0,d)|0;i=e;return c[d>>2]|0}function Vp(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;i=e;return b[(c[d>>2]|0)+26>>1]|0}function Wp(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f+4|0;d=f;c[e>>2]=a;if((b[(c[e>>2]|0)+24>>1]&2|0)!=0){oh(c[e>>2]|0)}c[d>>2]=c[(c[e>>2]|0)+28>>2];a=(c[d>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+ -1;if((c[(c[e>>2]|0)+20>>2]|0)==1){c[(c[d>>2]|0)+44>>2]=0}vb[c[45272>>2]&63](c[(c[d>>2]|0)+40>>2]|0,c[c[e>>2]>>2]|0,1);i=f;return}function Xp(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=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;j=i;i=i+64|0;h=j+52|0;m=j+48|0;o=j+44|0;g=j+40|0;l=j+36|0;v=j+32|0;q=j+28|0;r=j+24|0;s=j+16|0;t=j+12|0;p=j+8|0;n=j+4|0;k=j;u=j+20|0;c[m>>2]=a;c[o>>2]=d;c[g>>2]=f;c[l>>2]=0;c[v>>2]=c[(c[m>>2]|0)+68>>2];if((c[v>>2]|0)!=0){if((b[(c[m>>2]|0)+40>>1]|0)!=0){c[q>>2]=Mp(c[v>>2]|0)|0;a:while(1){if((c[q>>2]|0)<0){m=18;break}if((c[l>>2]|0)!=0){m=18;break}c[k>>2]=Lp(c[m>>2]|0,c[q>>2]|0,r,s,t)|0;if((c[k>>2]|0)!=0){m=8;break}c[n>>2]=8192;c[p>>2]=cq(c[o>>2]|0)|0;while(1){if((b[(c[r>>2]|0)+(c[p>>2]<<1)>>1]|0)==0){break}c[u>>2]=(e[(c[r>>2]|0)+(c[p>>2]<<1)>>1]|0)+(c[t>>2]|0);if((c[u>>2]|0)>>>0<=(c[v>>2]|0)>>>0){if((c[(c[s>>2]|0)+(e[(c[r>>2]|0)+(c[p>>2]<<1)>>1]<<2)>>2]|0)==(c[o>>2]|0)){c[l>>2]=c[u>>2]}}a=c[n>>2]|0;c[n>>2]=a+ -1;if((a|0)==0){m=15;break a}c[p>>2]=eq(c[p>>2]|0)|0}c[q>>2]=(c[q>>2]|0)+ -1}if((m|0)==8){c[h>>2]=c[k>>2];a=c[h>>2]|0;i=j;return a|0}else if((m|0)==15){c[h>>2]=dq(49462)|0;a=c[h>>2]|0;i=j;return a|0}else if((m|0)==18){c[c[g>>2]>>2]=c[l>>2];c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}}}c[c[g>>2]>>2]=0;c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}function Yp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+48|0;j=e+32|0;m=e+24|0;l=e+8|0;k=e+12|0;f=e+16|0;h=e+20|0;n=e;g=e+28|0;c[j>>2]=b;c[m>>2]=d;c[l>>2]=c[(c[j>>2]|0)+16>>2];c[k>>2]=c[(c[j>>2]|0)+20>>2];c[f>>2]=0;c[h>>2]=c[(c[l>>2]|0)+152>>2];if((c[m>>2]|0)!=0){c[f>>2]=bq(c[(c[l>>2]|0)+208>>2]|0,c[m>>2]|0,c[h>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0}else{m=c[(c[l>>2]|0)+152>>2]|0;m=nL((c[k>>2]|0)-1|0,0,m|0,((m|0)<0)<<31>>31|0)|0;b=n;c[b>>2]=m;c[b+4>>2]=D;b=n;b=xp(c[(c[l>>2]|0)+60>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[h>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[f>>2]=b;c[f>>2]=(c[f>>2]|0)==522?0:b}if((c[k>>2]|0)!=1){b=c[f>>2]|0;i=e;return b|0}if((c[f>>2]|0)!=0){h=(c[l>>2]|0)+100|0;g=h+16|0;do{a[h>>0]=255;h=h+1|0}while((h|0)<(g|0));b=c[f>>2]|0;i=e;return b|0}else{c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+24;h=(c[l>>2]|0)+100|0;j=(c[g>>2]|0)+0|0;g=h+16|0;do{a[h>>0]=a[j>>0]|0;h=h+1|0;j=j+1|0}while((h|0)<(g|0));b=c[f>>2]|0;i=e;return b|0}return 0}function Zp(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+16>>2];a=c[f>>2]|0;if((b[(c[f>>2]|0)+24>>1]&64|0)!=0){_p(a);f=c[e>>2]|0;$p(f);i=d;return}else{Dp(a);f=c[e>>2]|0;$p(f);i=d;return}}function _p(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;f=b;c[d>>2]=a;c[f>>2]=c[(c[d>>2]|0)+16>>2];e=(c[f>>2]|0)+120|0;c[e>>2]=(c[e>>2]|0)+ -1;c[(c[d>>2]|0)+12>>2]=c[(c[f>>2]|0)+136>>2];c[(c[f>>2]|0)+136>>2]=c[d>>2];e=c[(c[f>>2]|0)+60>>2]|0;a=c[(c[f>>2]|0)+152>>2]|0;a=nL((c[(c[d>>2]|0)+20>>2]|0)-1|0,0,a|0,((a|0)<0)<<31>>31|0)|0;aq(e,a,D,c[(c[d>>2]|0)+4>>2]|0)|0;i=b;return}function $p(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[d>>2]|0)+120>>2]|0)!=0){i=b;return}if((ch(c[(c[d>>2]|0)+204>>2]|0)|0)!=0){i=b;return}Jo(c[d>>2]|0);i=b;return}function aq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=i;i=i+16|0;c[f+12>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;c[f+8>>2]=e;i=f;return 0}function bq(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;l=g+24|0;n=g+20|0;h=g+8|0;k=g+12|0;j=g+16|0;m=g;c[l>>2]=a;c[n>>2]=b;c[h>>2]=d;c[k>>2]=f;c[j>>2]=e[(c[l>>2]|0)+66>>1]|0;c[j>>2]=(c[j>>2]&65024)+((c[j>>2]&1)<<16);b=(c[j>>2]|0)+24|0;b=nL((c[n>>2]|0)-1|0,0,b|0,((b|0)<0)<<31>>31|0)|0;b=dL(32,0,b|0,D|0)|0;b=dL(b|0,D|0,24,0)|0;a=m;c[a>>2]=b;c[a+4>>2]=D;a=m;a=xp(c[(c[l>>2]|0)+8>>2]|0,c[k>>2]|0,(c[h>>2]|0)>(c[j>>2]|0)?c[j>>2]|0:c[h>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;i=g;return a|0}function cq(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[b>>2]|0)*383&8191|0}function dq(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+8|0;c[e>>2]=a;e=c[e>>2]|0;a=(Tf()|0)+20|0;c[d>>2]=e;c[d+4>>2]=a;zc(11,11e3,d);i=b;return 11}function eq(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[b>>2]|0)+1&8191|0}function fq(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[c[(c[b>>2]|0)+32>>2]>>2]|0}function gq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d;h=d+4|0;g=d+8|0;c[f>>2]=a;c[h>>2]=b;c[g>>2]=Mp(c[h>>2]|0)|0;b=c[h>>2]|0;if((c[g>>2]|0)==0){c[e>>2]=c[(c[c[(c[f>>2]|0)+32>>2]>>2]|0)+(34+b-1<<2)>>2];h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=c[(c[(c[(c[f>>2]|0)+32>>2]|0)+(c[g>>2]<<2)>>2]|0)+((((b-1-4062|0)>>>0)%4096|0)<<2)>>2];h=c[e>>2]|0;i=d;return h|0}return 0}function hq(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;Vo(c[e>>2]|0)|0;if((b[(c[e>>2]|0)+40>>1]|0)<0){i=d;return}$o(c[e>>2]|0,3+(b[(c[e>>2]|0)+40>>1]|0)|0);b[(c[e>>2]|0)+40>>1]=-1;i=d;return}function iq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+28>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function jq(b,d,e,f,g,h,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;o=i;i=i+64|0;n=o+48|0;q=o+44|0;r=o+40|0;x=o+36|0;y=o+32|0;w=o+28|0;u=o+24|0;A=o+16|0;z=o+12|0;v=o+8|0;p=o+4|0;t=o;s=o+20|0;c[q>>2]=b;c[r>>2]=d;c[x>>2]=e;c[y>>2]=f;c[w>>2]=g;c[u>>2]=h;c[A>>2]=j;c[z>>2]=k;c[v>>2]=l;c[t>>2]=0;c[s>>2]=c[r>>2];if((a[(c[q>>2]|0)+46>>0]|0)!=0){c[n>>2]=8;b=c[n>>2]|0;i=o;return b|0}c[p>>2]=oq(c[q>>2]|0,1,1)|0;if((c[p>>2]|0)!=0){c[n>>2]=c[p>>2];b=c[n>>2]|0;i=o;return b|0}a[(c[q>>2]|0)+45>>0]=1;do{if((c[r>>2]|0)!=0){c[p>>2]=pq(c[q>>2]|0,c[x>>2]|0,c[y>>2]|0,0,1)|0;if((c[p>>2]|0)==0){a[(c[q>>2]|0)+44>>0]=1;break}if((c[p>>2]|0)==5){c[s>>2]=0;c[p>>2]=0}}}while(0);if((c[p>>2]|0)==0){c[p>>2]=qq(c[q>>2]|0,t)|0;if((c[t>>2]|0)!=0){if((c[c[c[(c[q>>2]|0)+4>>2]>>2]>>2]|0)>=3){aq(c[(c[q>>2]|0)+4>>2]|0,0,0,0)|0}}}if((c[p>>2]|0)==0){if((c[(c[q>>2]|0)+68>>2]|0)!=0){b=rq(c[q>>2]|0)|0;if((b|0)!=(c[u>>2]|0)){c[p>>2]=dq(50063)|0}else{m=18}}else{m=18}if((m|0)==18){c[p>>2]=sq(c[q>>2]|0,c[s>>2]|0,c[x>>2]|0,c[y>>2]|0,c[w>>2]|0,c[A>>2]|0)|0}if((c[p>>2]|0)==0|(c[p>>2]|0)==5){if((c[z>>2]|0)!=0){c[c[z>>2]>>2]=c[(c[q>>2]|0)+68>>2]}if((c[v>>2]|0)!=0){b=c[(tq(c[q>>2]|0)|0)>>2]|0;c[c[v>>2]>>2]=b}}}if((c[t>>2]|0)!=0){u=(c[q>>2]|0)+52|0;t=u+48|0;do{c[u>>2]=0;u=u+4|0}while((u|0)<(t|0))}Vo(c[q>>2]|0)|0;bp(c[q>>2]|0,1,1);a[(c[q>>2]|0)+45>>0]=0;if((c[p>>2]|0)==0){if((c[r>>2]|0)!=(c[s>>2]|0)){p=5}else{m=28}}else{m=28}if((m|0)==28){p=c[p>>2]|0}c[n>>2]=p;b=c[n>>2]|0;i=o;return b|0}function kq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;pb[c[(c[c[h>>2]>>2]|0)+40>>2]&31](c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return}function lq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;h=e+16|0;g=e+24|0;j=e+8|0;k=e;f=e+20|0;c[g>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;Ih();c[f>>2]=dh(c[(c[g>>2]|0)+8>>2]|0,k)|0;if((c[f>>2]|0)==0){b=k;d=c[b+4>>2]|0;a=j;k=c[a+4>>2]|0;if((d|0)>(k|0)|((d|0)==(k|0)?(c[b>>2]|0)>>>0>(c[a>>2]|0)>>>0:0)){a=j;c[f>>2]=Qo(c[(c[g>>2]|0)+8>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0}}Jh();if((c[f>>2]|0)==0){i=e;return}a=c[f>>2]|0;c[h>>2]=c[(c[g>>2]|0)+100>>2];zc(a,11048,h);i=e;return}function mq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;f=e;h=e+4|0;c[g>>2]=a;c[f>>2]=b;if((d[(c[g>>2]|0)+43>>0]|0|0)!=2){nq(c[(c[g>>2]|0)+4>>2]|0,c[f>>2]|0)|0;i=e;return}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[g>>2]|0)+24>>2]|0)){break}oc(c[(c[(c[g>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2]|0);c[(c[(c[g>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2]=0;c[h>>2]=(c[h>>2]|0)+1}i=e;return}function nq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+64>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function oq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;l=f;k=f+4|0;j=f+8|0;h=f+12|0;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;if((a[(c[l>>2]|0)+43>>0]|0)!=0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}else{c[h>>2]=ap(c[(c[l>>2]|0)+4>>2]|0,c[k>>2]|0,c[j>>2]|0,10)|0;c[g>>2]=c[h>>2];b=c[g>>2]|0;i=f;return b|0}return 0}function pq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;m=h+20|0;k=h;l=h+4|0;j=h+8|0;n=h+12|0;g=h+16|0;c[m>>2]=a;c[k>>2]=b;c[l>>2]=d;c[j>>2]=e;c[n>>2]=f;while(1){c[g>>2]=oq(c[m>>2]|0,c[j>>2]|0,c[n>>2]|0)|0;if((c[k>>2]|0)==0){j=5;break}if((c[g>>2]|0)!=5){j=5;break}if((ub[c[k>>2]&63](c[l>>2]|0)|0)==0){j=5;break}}if((j|0)==5){i=h;return c[g>>2]|0}return 0}function qq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;f=j+20|0;e=j;k=j+4|0;g=j+8|0;h=j+12|0;l=j+16|0;c[e>>2]=b;c[k>>2]=d;c[g>>2]=Np(c[e>>2]|0,0,l)|0;if((c[g>>2]|0)!=0){c[f>>2]=c[g>>2];b=c[f>>2]|0;i=j;return b|0}if((c[l>>2]|0)!=0){d=zq(c[e>>2]|0,c[k>>2]|0)|0}else{d=1}c[h>>2]=d;do{if((c[h>>2]|0)!=0){d=c[e>>2]|0;if((a[(c[e>>2]|0)+46>>0]&2|0)!=0){b=_o(d,0)|0;c[g>>2]=b;if(0!=(b|0)){break}$o(c[e>>2]|0,0);c[g>>2]=264;break}b=oq(d,0,1)|0;c[g>>2]=b;if(0==(b|0)){a[(c[e>>2]|0)+44>>0]=1;b=Np(c[e>>2]|0,0,l)|0;c[g>>2]=b;if(0==(b|0)){c[h>>2]=zq(c[e>>2]|0,c[k>>2]|0)|0;if((c[h>>2]|0)!=0){c[g>>2]=Aq(c[e>>2]|0)|0;c[c[k>>2]>>2]=1}}a[(c[e>>2]|0)+44>>0]=0;bp(c[e>>2]|0,0,1)}}}while(0);if((c[h>>2]|0)==0){if((c[(c[e>>2]|0)+52>>2]|0)!=3007e3){c[g>>2]=Bq(49109)|0}}c[f>>2]=c[g>>2];b=c[f>>2]|0;i=j;return b|0}function rq(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;i=e;return(b[(c[d>>2]|0)+66>>1]&65024)+((b[(c[d>>2]|0)+66>>1]&1)<<16)|0}function sq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,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,E=0,F=0,G=0,H=0;x=i;i=i+112|0;k=x+104|0;o=x+100|0;s=x+96|0;H=x+92|0;E=x+88|0;p=x+84|0;z=x+80|0;l=x+76|0;q=x+72|0;v=x+68|0;w=x+64|0;t=x+60|0;m=x+32|0;h=x+48|0;F=x+44|0;n=x+40|0;C=x+36|0;G=x+56|0;B=x+16|0;u=x+52|0;A=x+8|0;y=x+24|0;r=x;c[o>>2]=a;c[s>>2]=b;c[H>>2]=d;c[E>>2]=e;c[p>>2]=f;c[z>>2]=g;c[v>>2]=0;c[w>>2]=0;c[t>>2]=0;c[C>>2]=0;c[q>>2]=rq(c[o>>2]|0)|0;c[n>>2]=tq(c[o>>2]|0)|0;if((c[c[n>>2]>>2]|0)>>>0>=(c[(c[o>>2]|0)+68>>2]|0)>>>0){c[k>>2]=0;a=c[k>>2]|0;i=x;return a|0}c[l>>2]=uq(c[o>>2]|0,v)|0;if((c[l>>2]|0)!=0){c[k>>2]=c[l>>2];a=c[k>>2]|0;i=x;return a|0}if((c[s>>2]|0)!=0){c[C>>2]=c[H>>2]}c[m>>2]=c[(c[o>>2]|0)+68>>2];c[h>>2]=c[(c[o>>2]|0)+72>>2];c[F>>2]=1;a:while(1){if((c[F>>2]|0)>=5){j=15;break}c[G>>2]=c[(c[n>>2]|0)+4+(c[F>>2]<<2)>>2];do{if((c[m>>2]|0)>>>0>(c[G>>2]|0)>>>0){c[l>>2]=pq(c[o>>2]|0,c[C>>2]|0,c[E>>2]|0,3+(c[F>>2]|0)|0,1)|0;if((c[l>>2]|0)==0){c[(c[n>>2]|0)+4+(c[F>>2]<<2)>>2]=(c[F>>2]|0)==1?c[m>>2]|0:-1;bp(c[o>>2]|0,3+(c[F>>2]|0)|0,1);break}if((c[l>>2]|0)!=5){break a}c[m>>2]=c[G>>2];c[C>>2]=0}}while(0);c[F>>2]=(c[F>>2]|0)+1}do{if((j|0)==15){if((c[c[n>>2]>>2]|0)>>>0<(c[m>>2]|0)>>>0){a=pq(c[o>>2]|0,c[C>>2]|0,c[E>>2]|0,3,1)|0;c[l>>2]=a;if((a|0)==0){c[u>>2]=c[c[n>>2]>>2];if((c[p>>2]|0)!=0){c[l>>2]=cp(c[(c[o>>2]|0)+8>>2]|0,c[p>>2]|0)|0}if((c[l>>2]|0)==0){b=c[q>>2]|0;b=nL(c[h>>2]|0,0,b|0,((b|0)<0)<<31>>31|0)|0;a=A;c[a>>2]=b;c[a+4>>2]=D;c[l>>2]=dh(c[(c[o>>2]|0)+4>>2]|0,B)|0;if((c[l>>2]|0)==0){b=B;e=c[b+4>>2]|0;a=A;d=c[a+4>>2]|0;if((e|0)<(d|0)|((e|0)==(d|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)){kq(c[(c[o>>2]|0)+4>>2]|0,5,A)}}}b:while(1){if((c[l>>2]|0)!=0){break}while(1){if(0!=(vq(c[v>>2]|0,w,t)|0)){break b}if((c[t>>2]|0)>>>0<=(c[u>>2]|0)>>>0){continue b}if((c[t>>2]|0)>>>0>(c[m>>2]|0)>>>0){continue b}if((c[w>>2]|0)>>>0>(c[h>>2]|0)>>>0){continue b}b=(c[q>>2]|0)+24|0;b=nL((c[t>>2]|0)-1|0,0,b|0,((b|0)<0)<<31>>31|0)|0;b=dL(32,0,b|0,D|0)|0;b=dL(b|0,D|0,24,0)|0;a=y;c[a>>2]=b;c[a+4>>2]=D;a=y;c[l>>2]=xp(c[(c[o>>2]|0)+8>>2]|0,c[z>>2]|0,c[q>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;if((c[l>>2]|0)!=0){break b}b=c[q>>2]|0;b=nL((c[w>>2]|0)-1|0,0,b|0,((b|0)<0)<<31>>31|0)|0;a=y;c[a>>2]=b;c[a+4>>2]=D;a=y;c[l>>2]=nd(c[(c[o>>2]|0)+4>>2]|0,c[z>>2]|0,c[q>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;if(!((c[l>>2]|0)==0&(c[l>>2]|0)==0)){break b}}}if((c[l>>2]|0)==0){a=c[m>>2]|0;if((a|0)==(c[(fq(c[o>>2]|0)|0)+16>>2]|0)){b=c[q>>2]|0;b=nL(c[(c[o>>2]|0)+72>>2]|0,0,b|0,((b|0)<0)<<31>>31|0)|0;a=r;c[a>>2]=b;c[a+4>>2]=D;a=r;c[l>>2]=Qo(c[(c[o>>2]|0)+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;if((c[l>>2]|0)==0){if((c[p>>2]|0)!=0){c[l>>2]=cp(c[(c[o>>2]|0)+4>>2]|0,c[p>>2]|0)|0}}}if((c[l>>2]|0)==0){c[c[n>>2]>>2]=c[m>>2]}}bp(c[o>>2]|0,3,1)}}if((c[l>>2]|0)==5){c[l>>2]=0}if((c[l>>2]|0)==0){if((c[s>>2]|0)!=0){if((c[c[n>>2]>>2]|0)>>>0<(c[(c[o>>2]|0)+68>>2]|0)>>>0){c[l>>2]=5;break}if((c[s>>2]|0)==2){c[l>>2]=pq(c[o>>2]|0,c[C>>2]|0,c[E>>2]|0,4,4)|0;if((c[l>>2]|0)==0){bp(c[o>>2]|0,4,4)}}}}}}while(0);wq(c[v>>2]|0);c[k>>2]=c[l>>2];a=c[k>>2]|0;i=x;return a|0}function tq(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[c[(c[b>>2]|0)+32>>2]>>2]|0)+96|0}function uq(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=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;n=i;i=i+64|0;f=n+60|0;u=n+56|0;h=n+52|0;g=n+48|0;t=n+44|0;o=n+40|0;v=n+36|0;s=n+32|0;k=n+28|0;j=n+20|0;q=n+16|0;l=n+12|0;r=n+8|0;e=n+4|0;p=n;m=n+24|0;c[u>>2]=a;c[h>>2]=d;c[j>>2]=0;c[o>>2]=c[(c[u>>2]|0)+68>>2];c[t>>2]=(Mp(c[o>>2]|0)|0)+1;c[v>>2]=28+(((c[t>>2]|0)-1|0)*20|0)+(c[o>>2]<<1);c[g>>2]=Kg(c[v>>2]|0)|0;if((c[g>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=n;return a|0}aL(c[g>>2]|0,0,c[v>>2]|0)|0;c[(c[g>>2]|0)+4>>2]=c[t>>2];c[k>>2]=Kg(((c[o>>2]|0)>>>0>4096?4096:c[o>>2]|0)<<1)|0;if((c[k>>2]|0)==0){c[j>>2]=7}c[s>>2]=0;while(1){if((c[j>>2]|0)!=0){break}if((c[s>>2]|0)>=(c[t>>2]|0)){break}c[j>>2]=Lp(c[u>>2]|0,c[s>>2]|0,q,r,l)|0;if((c[j>>2]|0)==0){c[r>>2]=(c[r>>2]|0)+4;if(((c[s>>2]|0)+1|0)==(c[t>>2]|0)){c[p>>2]=(c[o>>2]|0)-(c[l>>2]|0)}else{c[p>>2]=((c[q>>2]|0)-(c[r>>2]|0)|0)/4|0}c[m>>2]=(c[g>>2]|0)+8+((c[(c[g>>2]|0)+4>>2]|0)*20|0)+(c[l>>2]<<1);c[l>>2]=(c[l>>2]|0)+1;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[p>>2]|0)){break}b[(c[m>>2]|0)+(c[e>>2]<<1)>>1]=c[e>>2];c[e>>2]=(c[e>>2]|0)+1}xq(c[r>>2]|0,c[k>>2]|0,c[m>>2]|0,p);c[(c[g>>2]|0)+8+((c[s>>2]|0)*20|0)+16>>2]=c[l>>2];c[(c[g>>2]|0)+8+((c[s>>2]|0)*20|0)+12>>2]=c[p>>2];c[(c[g>>2]|0)+8+((c[s>>2]|0)*20|0)+4>>2]=c[m>>2];c[(c[g>>2]|0)+8+((c[s>>2]|0)*20|0)+8>>2]=c[r>>2]}c[s>>2]=(c[s>>2]|0)+1}Lg(c[k>>2]|0);if((c[j>>2]|0)!=0){wq(c[g>>2]|0)}c[c[h>>2]>>2]=c[g>>2];c[f>>2]=c[j>>2];a=c[f>>2]|0;i=n;return a|0}function vq(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=i;i=i+32|0;h=k+28|0;j=k;p=k+4|0;n=k+8|0;m=k+12|0;o=k+16|0;l=k+20|0;f=k+24|0;c[h>>2]=a;c[j>>2]=b;c[p>>2]=d;c[m>>2]=-1;c[n>>2]=c[c[h>>2]>>2];c[o>>2]=(c[(c[h>>2]|0)+4>>2]|0)-1;while(1){if((c[o>>2]|0)<0){break}c[l>>2]=(c[h>>2]|0)+8+((c[o>>2]|0)*20|0);while(1){if((c[c[l>>2]>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0)){break}c[f>>2]=c[(c[(c[l>>2]|0)+8>>2]|0)+((e[(c[(c[l>>2]|0)+4>>2]|0)+(c[c[l>>2]>>2]<<1)>>1]|0)<<2)>>2];if((c[f>>2]|0)>>>0>(c[n>>2]|0)>>>0){g=6;break}a=c[l>>2]|0;c[a>>2]=(c[a>>2]|0)+1}if((g|0)==6){g=0;if((c[f>>2]|0)>>>0<(c[m>>2]|0)>>>0){c[m>>2]=c[f>>2];c[c[p>>2]>>2]=(c[(c[l>>2]|0)+16>>2]|0)+(e[(c[(c[l>>2]|0)+4>>2]|0)+(c[c[l>>2]>>2]<<1)>>1]|0)}}c[o>>2]=(c[o>>2]|0)+ -1}a=c[m>>2]|0;c[c[h>>2]>>2]=a;c[c[j>>2]>>2]=a;i=k;return(c[m>>2]|0)==-1|0}function wq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Lg(c[d>>2]|0);i=b;return}function xq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=i;i=i+160|0;g=r+148|0;p=r+144|0;k=r+140|0;q=r+136|0;m=r+132|0;j=r+128|0;l=r+124|0;o=r+116|0;h=r+112|0;f=r+8|0;n=r;s=r+120|0;c[g>>2]=a;c[p>>2]=b;c[k>>2]=d;c[q>>2]=e;c[m>>2]=c[c[q>>2]>>2];c[j>>2]=0;c[l>>2]=0;c[h>>2]=0;d=f+0|0;e=d+104|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[m>>2]|0)){break}c[j>>2]=1;c[l>>2]=(c[k>>2]|0)+(c[o>>2]<<1);c[h>>2]=0;while(1){if((c[o>>2]&1<>2]|0)==0){break}c[n>>2]=f+(c[h>>2]<<3);yq(c[g>>2]|0,c[(c[n>>2]|0)+4>>2]|0,c[c[n>>2]>>2]|0,l,j,c[p>>2]|0);c[h>>2]=(c[h>>2]|0)+1}c[f+(c[h>>2]<<3)+4>>2]=c[l>>2];c[f+(c[h>>2]<<3)>>2]=c[j>>2];c[o>>2]=(c[o>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+1;while(1){if((c[h>>2]|0)>=13){break}if((c[m>>2]&1<>2]|0)!=0){c[s>>2]=f+(c[h>>2]<<3);yq(c[g>>2]|0,c[(c[s>>2]|0)+4>>2]|0,c[c[s>>2]>>2]|0,l,j,c[p>>2]|0)}c[h>>2]=(c[h>>2]|0)+1}c[c[q>>2]>>2]=c[j>>2];i=r;return}function yq(a,d,f,g,h,j){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;q=i;i=i+64|0;t=q+44|0;u=q+40|0;x=q+36|0;m=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;v=q+12|0;n=q+8|0;y=q+4|0;k=q;s=q+48|0;w=q+16|0;c[t>>2]=a;c[u>>2]=d;c[x>>2]=f;c[m>>2]=g;c[o>>2]=h;c[p>>2]=j;c[r>>2]=0;c[v>>2]=0;c[n>>2]=0;c[y>>2]=c[c[o>>2]>>2];c[k>>2]=c[c[m>>2]>>2];while(1){if((c[v>>2]|0)>=(c[y>>2]|0)){if((c[r>>2]|0)>=(c[x>>2]|0)){break}}do{if((c[r>>2]|0)<(c[x>>2]|0)){if((c[v>>2]|0)<(c[y>>2]|0)){if(!((c[(c[t>>2]|0)+((e[(c[u>>2]|0)+(c[r>>2]<<1)>>1]|0)<<2)>>2]|0)>>>0<(c[(c[t>>2]|0)+((e[(c[k>>2]|0)+(c[v>>2]<<1)>>1]|0)<<2)>>2]|0)>>>0)){l=8;break}}a=c[r>>2]|0;c[r>>2]=a+1;b[s>>1]=b[(c[u>>2]|0)+(a<<1)>>1]|0}else{l=8}}while(0);if((l|0)==8){l=0;a=c[v>>2]|0;c[v>>2]=a+1;b[s>>1]=b[(c[k>>2]|0)+(a<<1)>>1]|0}c[w>>2]=c[(c[t>>2]|0)+((e[s>>1]|0)<<2)>>2];d=b[s>>1]|0;a=c[n>>2]|0;c[n>>2]=a+1;b[(c[p>>2]|0)+(a<<1)>>1]=d;if((c[r>>2]|0)>=(c[x>>2]|0)){continue}if((c[(c[t>>2]|0)+((e[(c[u>>2]|0)+(c[r>>2]<<1)>>1]|0)<<2)>>2]|0)!=(c[w>>2]|0)){continue}c[r>>2]=(c[r>>2]|0)+1}c[c[m>>2]>>2]=c[u>>2];c[c[o>>2]>>2]=c[n>>2];fL(c[u>>2]|0,c[p>>2]|0,c[n>>2]<<1|0)|0;i=q;return}function zq(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+128|0;l=g+116|0;m=g;o=g+4|0;n=g+8|0;k=g+16|0;h=g+64|0;j=g+112|0;c[m>>2]=e;c[o>>2]=f;c[j>>2]=fq(c[m>>2]|0)|0;e=k+0|0;f=(c[j>>2]|0)+0|0;p=e+48|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(p|0));Gq(c[m>>2]|0);e=h+0|0;f=(c[j>>2]|0)+48|0;p=e+48|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(p|0));if((XK(k,h,48)|0)!=0){c[l>>2]=1;p=c[l>>2]|0;i=g;return p|0}if((d[k+12>>0]|0|0)==0){c[l>>2]=1;p=c[l>>2]|0;i=g;return p|0}Cq(1,k,40,0,n);if((c[n>>2]|0)==(c[k+40>>2]|0)){if((c[n+4>>2]|0)==(c[k+44>>2]|0)){if((XK((c[m>>2]|0)+52|0,k,48)|0)!=0){c[c[o>>2]>>2]=1;e=(c[m>>2]|0)+52|0;f=k+0|0;p=e+48|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(p|0));c[(c[m>>2]|0)+36>>2]=(b[(c[m>>2]|0)+66>>1]&65024)+((b[(c[m>>2]|0)+66>>1]&1)<<16)}c[l>>2]=0;p=c[l>>2]|0;i=g;return p|0}}c[l>>2]=1;p=c[l>>2]|0;i=g;return p|0}function Aq(e){e=e|0;var f=0,g=0,h=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,E=0;s=i;i=i+144|0;C=s+16|0;r=s+96|0;j=s+92|0;h=s+88|0;k=s+8|0;z=s+80|0;l=s+72|0;m=s+68|0;o=s+104|0;n=s+64|0;g=s+60|0;t=s+100|0;u=s+28|0;v=s;q=s+36|0;p=s+24|0;f=s+32|0;y=s+52|0;w=s+40|0;x=s+44|0;A=s+48|0;B=s+56|0;c[j>>2]=e;c[z+0>>2]=0;c[z+4>>2]=0;c[l>>2]=1+(d[(c[j>>2]|0)+45>>0]|0);c[m>>2]=8-(c[l>>2]|0);c[h>>2]=oq(c[j>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if((c[h>>2]|0)!=0){c[r>>2]=c[h>>2];E=c[r>>2]|0;i=s;return E|0}e=(c[j>>2]|0)+52|0;E=e+48|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(E|0));c[h>>2]=dh(c[(c[j>>2]|0)+8>>2]|0,k)|0;a:do{if((c[h>>2]|0)==0){E=k;e=c[E+4>>2]|0;do{if((e|0)>0|(e|0)==0&(c[E>>2]|0)>>>0>32){c[n>>2]=0;c[h>>2]=xp(c[(c[j>>2]|0)+8>>2]|0,o,32,0,0)|0;if((c[h>>2]|0)!=0){break a}c[p>>2]=zo(o)|0;c[q>>2]=zo(o+8|0)|0;if((c[p>>2]&-2|0)==931071618){if(!(((c[q>>2]|0)>65536?1:(c[q>>2]&(c[q>>2]|0)-1|0)!=0)|(c[q>>2]|0)<512)){a[(c[j>>2]|0)+65>>0]=c[p>>2]&1;c[(c[j>>2]|0)+36>>2]=c[q>>2];E=zo(o+12|0)|0;c[(c[j>>2]|0)+104>>2]=E;E=(c[j>>2]|0)+84|0;e=o+16|0;a[E+0>>0]=a[e+0>>0]|0;a[E+1>>0]=a[e+1>>0]|0;a[E+2>>0]=a[e+2>>0]|0;a[E+3>>0]=a[e+3>>0]|0;a[E+4>>0]=a[e+4>>0]|0;a[E+5>>0]=a[e+5>>0]|0;a[E+6>>0]=a[e+6>>0]|0;a[E+7>>0]=a[e+7>>0]|0;Cq((d[(c[j>>2]|0)+65>>0]|0)==((a[1480]|0)==0|0)&1,o,24,0,(c[j>>2]|0)+76|0);E=c[(c[j>>2]|0)+76>>2]|0;if((E|0)==(zo(o+24|0)|0)){E=c[(c[j>>2]|0)+80>>2]|0;if((E|0)==(zo(o+28|0)|0)){c[f>>2]=zo(o+4|0)|0;if((c[f>>2]|0)!=3007e3){c[h>>2]=Bq(48238)|0;break}c[g>>2]=(c[q>>2]|0)+24;c[n>>2]=mc(c[g>>2]|0)|0;if((c[n>>2]|0)==0){c[h>>2]=7;break a}c[t>>2]=(c[n>>2]|0)+24;c[u>>2]=0;E=v;c[E>>2]=32;c[E+4>>2]=0;while(1){o=v;e=c[g>>2]|0;e=dL(c[o>>2]|0,c[o+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;o=D;E=k;p=c[E+4>>2]|0;if(!((o|0)<(p|0)|((o|0)==(p|0)?e>>>0<=(c[E>>2]|0)>>>0:0))){break}c[u>>2]=(c[u>>2]|0)+1;E=v;c[h>>2]=xp(c[(c[j>>2]|0)+8>>2]|0,c[n>>2]|0,c[g>>2]|0,c[E>>2]|0,c[E+4>>2]|0)|0;if((c[h>>2]|0)!=0){break}c[y>>2]=Dq(c[j>>2]|0,w,x,c[t>>2]|0,c[n>>2]|0)|0;if((c[y>>2]|0)==0){break}c[h>>2]=Eq(c[j>>2]|0,c[u>>2]|0,c[w>>2]|0)|0;if((c[h>>2]|0)!=0){break}if((c[x>>2]|0)!=0){c[(c[j>>2]|0)+68>>2]=c[u>>2];c[(c[j>>2]|0)+72>>2]=c[x>>2];b[(c[j>>2]|0)+66>>1]=c[q>>2]&65280|c[q>>2]>>16;c[z>>2]=c[(c[j>>2]|0)+76>>2];c[z+4>>2]=c[(c[j>>2]|0)+80>>2]}e=c[g>>2]|0;E=v;e=dL(c[E>>2]|0,c[E+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;E=v;c[E>>2]=e;c[E+4>>2]=D}oc(c[n>>2]|0)}}}}}}while(0);if((c[h>>2]|0)==0){c[(c[j>>2]|0)+76>>2]=c[z>>2];c[(c[j>>2]|0)+80>>2]=c[z+4>>2];Fq(c[j>>2]|0);c[A>>2]=tq(c[j>>2]|0)|0;c[c[A>>2]>>2]=0;c[(c[A>>2]|0)+4>>2]=0;c[B>>2]=1;while(1){if((c[B>>2]|0)>=5){break}c[(c[A>>2]|0)+4+(c[B>>2]<<2)>>2]=-1;c[B>>2]=(c[B>>2]|0)+1}if((c[(c[j>>2]|0)+68>>2]|0)!=0){c[(c[A>>2]|0)+8>>2]=c[(c[j>>2]|0)+68>>2]}if((c[(c[j>>2]|0)+72>>2]|0)!=0){E=c[(c[j>>2]|0)+100>>2]|0;c[C>>2]=c[(c[j>>2]|0)+68>>2];c[C+4>>2]=E;zc(283,11120,C)}}}}while(0);bp(c[j>>2]|0,c[l>>2]|0,c[m>>2]|0);c[r>>2]=c[h>>2];E=c[r>>2]|0;i=s;return E|0}function Bq(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+8|0;c[e>>2]=a;e=c[e>>2]|0;a=(Tf()|0)+20|0;c[d>>2]=e;c[d+4>>2]=a;zc(14,11080,d);i=b;return 14}function Cq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+48|0;n=k+32|0;q=k+28|0;p=k+24|0;o=k+20|0;h=k+16|0;m=k+8|0;j=k+4|0;l=k;g=k+12|0;c[n>>2]=a;c[q>>2]=b;c[p>>2]=d;c[o>>2]=e;c[h>>2]=f;c[l>>2]=c[q>>2];c[g>>2]=(c[q>>2]|0)+(c[p>>2]|0);if((c[o>>2]|0)!=0){c[m>>2]=c[c[o>>2]>>2];c[j>>2]=c[(c[o>>2]|0)+4>>2]}else{c[j>>2]=0;c[m>>2]=0}if((c[n>>2]|0)!=0){do{q=c[l>>2]|0;c[l>>2]=q+4;c[m>>2]=(c[m>>2]|0)+((c[q>>2]|0)+(c[j>>2]|0));q=c[l>>2]|0;c[l>>2]=q+4;c[j>>2]=(c[j>>2]|0)+((c[q>>2]|0)+(c[m>>2]|0))}while((c[l>>2]|0)>>>0<(c[g>>2]|0)>>>0);q=c[m>>2]|0;p=c[h>>2]|0;c[p>>2]=q;p=c[j>>2]|0;q=c[h>>2]|0;q=q+4|0;c[q>>2]=p;i=k;return}else{do{c[m>>2]=(c[m>>2]|0)+(((c[c[l>>2]>>2]&255)<<24)+((c[c[l>>2]>>2]&65280)<<8)+((c[c[l>>2]>>2]&16711680)>>>8)+((c[c[l>>2]>>2]&-16777216)>>>24)+(c[j>>2]|0));c[j>>2]=(c[j>>2]|0)+(((c[(c[l>>2]|0)+4>>2]&255)<<24)+((c[(c[l>>2]|0)+4>>2]&65280)<<8)+((c[(c[l>>2]|0)+4>>2]&16711680)>>>8)+((c[(c[l>>2]|0)+4>>2]&-16777216)>>>24)+(c[m>>2]|0));c[l>>2]=(c[l>>2]|0)+8}while((c[l>>2]|0)>>>0<(c[g>>2]|0)>>>0);q=c[m>>2]|0;p=c[h>>2]|0;c[p>>2]=q;p=c[j>>2]|0;q=c[h>>2]|0;q=q+4|0;c[q>>2]=p;i=k;return}}function Dq(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=i;i=i+48|0;k=p+32|0;q=p+28|0;m=p+24|0;o=p+20|0;s=p+16|0;n=p+8|0;r=p+4|0;j=p;l=p+12|0;c[q>>2]=b;c[m>>2]=e;c[o>>2]=f;c[s>>2]=g;c[n>>2]=h;c[j>>2]=(c[q>>2]|0)+76;if((XK((c[q>>2]|0)+84|0,(c[n>>2]|0)+8|0,8)|0)!=0){c[k>>2]=0;b=c[k>>2]|0;i=p;return b|0}c[l>>2]=zo(c[n>>2]|0)|0;if((c[l>>2]|0)==0){c[k>>2]=0;b=c[k>>2]|0;i=p;return b|0}c[r>>2]=(d[(c[q>>2]|0)+65>>0]|0)==((a[1480]|0)==0|0)&1;Cq(c[r>>2]|0,c[n>>2]|0,8,c[j>>2]|0,c[j>>2]|0);Cq(c[r>>2]|0,c[s>>2]|0,c[(c[q>>2]|0)+36>>2]|0,c[j>>2]|0,c[j>>2]|0);b=c[c[j>>2]>>2]|0;if((b|0)==(zo((c[n>>2]|0)+16|0)|0)){b=c[(c[j>>2]|0)+4>>2]|0;if((b|0)==(zo((c[n>>2]|0)+20|0)|0)){c[c[m>>2]>>2]=c[l>>2];b=zo((c[n>>2]|0)+4|0)|0;c[c[o>>2]>>2]=b;c[k>>2]=1;b=c[k>>2]|0;i=p;return b|0}}c[k>>2]=0;b=c[k>>2]|0;i=p;return b|0}function Eq(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+48|0;h=j+44|0;q=j+40|0;t=j+36|0;k=j+32|0;o=j+28|0;s=j+24|0;l=j+20|0;n=j+12|0;f=j+8|0;m=j+4|0;p=j;r=j+16|0;c[q>>2]=a;c[t>>2]=d;c[k>>2]=e;c[s>>2]=0;c[l>>2]=0;c[n>>2]=0;a=c[q>>2]|0;c[o>>2]=Lp(a,Mp(c[t>>2]|0)|0,n,l,s)|0;do{if((c[o>>2]|0)==0){c[m>>2]=(c[t>>2]|0)-(c[s>>2]|0);if((c[m>>2]|0)==1){c[r>>2]=(c[n>>2]|0)+16384-((c[l>>2]|0)+4);aL((c[l>>2]|0)+4|0,0,c[r>>2]|0)|0}if((c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)!=0){Kp(c[q>>2]|0)}c[p>>2]=c[m>>2];c[f>>2]=cq(c[k>>2]|0)|0;while(1){if((b[(c[n>>2]|0)+(c[f>>2]<<1)>>1]|0)==0){g=11;break}a=c[p>>2]|0;c[p>>2]=a+ -1;if((a|0)==0){break}c[f>>2]=eq(c[f>>2]|0)|0}if((g|0)==11){c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]=c[k>>2];b[(c[n>>2]|0)+(c[f>>2]<<1)>>1]=c[m>>2];break}c[h>>2]=dq(48107)|0;a=c[h>>2]|0;i=j;return a|0}}while(0);c[h>>2]=c[o>>2];a=c[h>>2]|0;i=j;return a|0}function Fq(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;f=i;i=i+16|0;d=f+8|0;e=f;c[d>>2]=b;c[e>>2]=fq(c[d>>2]|0)|0;c[f+4>>2]=40;a[(c[d>>2]|0)+64>>0]=1;c[(c[d>>2]|0)+52>>2]=3007e3;Cq(1,(c[d>>2]|0)+52|0,40,0,(c[d>>2]|0)+92|0);h=(c[e>>2]|0)+48|0;g=(c[d>>2]|0)+52|0;b=h+48|0;do{a[h>>0]=a[g>>0]|0;h=h+1|0;g=g+1|0}while((h|0)<(b|0));Gq(c[d>>2]|0);h=(c[e>>2]|0)+0|0;g=(c[d>>2]|0)+52|0;b=h+48|0;do{a[h>>0]=a[g>>0]|0;h=h+1|0;g=g+1|0}while((h|0)<(b|0));i=f;return}function Gq(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;if((d[(c[e>>2]|0)+43>>0]|0|0)==2){i=b;return}Hq(c[(c[e>>2]|0)+4>>2]|0);i=b;return}function Hq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;rb[c[(c[c[d>>2]>>2]|0)+60>>2]&31](c[d>>2]|0);i=b;return}function Iq(a){a=a|0;var b=0,d=0,e=0,f=0;e=i;i=i+16|0;d=e+8|0;f=e;b=e+4|0;c[f>>2]=a;if((c[f>>2]|0)!=0){if((c[c[f>>2]>>2]|0)!=0){if((c[(c[f>>2]|0)+8>>2]|0)>=0){c[b>>2]=zb[c[c[f>>2]>>2]&127](c[(c[f>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;a=(c[f>>2]|0)+8|0;if((c[b>>2]|0)==0){c[a>>2]=-1}else{c[a>>2]=(c[a>>2]|0)+1}c[d>>2]=c[b>>2];f=c[d>>2]|0;i=e;return f|0}}}c[d>>2]=0;f=c[d>>2]|0;i=e;return f|0}function Jq(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+8>>2]|0}function Kq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Vp(c[d>>2]|0)|0;i=b;return a|0}function Lq(f){f=f|0;var g=0,h=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;j=i;i=i+48|0;h=j+32|0;k=j+28|0;r=j+40|0;s=j+44|0;q=j+20|0;v=j+16|0;l=j+8|0;p=j+42|0;m=j+4|0;t=j;g=j+12|0;o=j+24|0;u=j+36|0;n=j+38|0;c[k>>2]=f;do{if((a[c[k>>2]>>0]|0)==0){c[v>>2]=c[(c[k>>2]|0)+52>>2];a[s>>0]=a[(c[k>>2]|0)+5>>0]|0;c[q>>2]=c[(c[k>>2]|0)+56>>2];if((Mq(c[k>>2]|0,d[(c[q>>2]|0)+(d[s>>0]|0)>>0]|0)|0)!=0){c[h>>2]=dq(52602)|0;v=c[h>>2]|0;i=j;return v|0}b[(c[k>>2]|0)+18>>1]=(c[(c[v>>2]|0)+32>>2]|0)-1;a[(c[k>>2]|0)+1>>0]=0;c[l>>2]=c[(c[v>>2]|0)+36>>2];f=(d[s>>0]|0)+12-(d[(c[k>>2]|0)+3>>0]<<2)&65535;b[p>>1]=f;b[(c[k>>2]|0)+12>>1]=f;c[(c[k>>2]|0)+60>>2]=(c[q>>2]|0)+(c[l>>2]|0);c[(c[k>>2]|0)+64>>2]=(c[q>>2]|0)+(e[p>>1]|0);c[t>>2]=((d[(c[q>>2]|0)+((d[s>>0]|0)+5)>>0]<<8|d[(c[q>>2]|0)+((d[s>>0]|0)+5)+1>>0])-1&65535)+1;b[(c[k>>2]|0)+16>>1]=d[(c[q>>2]|0)+((d[s>>0]|0)+3)>>0]<<8|d[(c[q>>2]|0)+((d[s>>0]|0)+3)+1>>0];if((e[(c[k>>2]|0)+16>>1]|0)>>>0>((((c[(c[v>>2]|0)+32>>2]|0)-8|0)>>>0)/6|0)>>>0){c[h>>2]=dq(52614)|0;v=c[h>>2]|0;i=j;return v|0}c[g>>2]=(e[p>>1]|0)+(e[(c[k>>2]|0)+16>>1]<<1);c[o>>2]=(c[l>>2]|0)-4;b[r>>1]=d[(c[q>>2]|0)+((d[s>>0]|0)+1)>>0]<<8|d[(c[q>>2]|0)+((d[s>>0]|0)+1)+1>>0];c[m>>2]=(d[(c[q>>2]|0)+((d[s>>0]|0)+7)>>0]|0)+(c[t>>2]|0);while(1){if((e[r>>1]|0)<=0){n=16;break}if((e[r>>1]|0)<(c[g>>2]|0)){n=10;break}if((e[r>>1]|0)>(c[o>>2]|0)){n=10;break}b[u>>1]=d[(c[q>>2]|0)+(e[r>>1]|0)>>0]<<8|d[(c[q>>2]|0)+(e[r>>1]|0)+1>>0];b[n>>1]=d[(c[q>>2]|0)+((e[r>>1]|0)+2)>>0]<<8|d[(c[q>>2]|0)+((e[r>>1]|0)+2)+1>>0];if((e[u>>1]|0)>0){if((e[u>>1]|0)<=((e[r>>1]|0)+(e[n>>1]|0)+3|0)){n=14;break}}if(((e[r>>1]|0)+(e[n>>1]|0)|0)>(c[l>>2]|0)){n=14;break}c[m>>2]=(c[m>>2]|0)+(e[n>>1]|0);b[r>>1]=b[u>>1]|0}if((n|0)==10){c[h>>2]=dq(52657)|0;v=c[h>>2]|0;i=j;return v|0}else if((n|0)==14){c[h>>2]=dq(52664)|0;v=c[h>>2]|0;i=j;return v|0}else if((n|0)==16){if((c[m>>2]|0)<=(c[l>>2]|0)){b[(c[k>>2]|0)+14>>1]=(c[m>>2]|0)-(c[g>>2]|0);a[c[k>>2]>>0]=1;break}c[h>>2]=dq(52678)|0;v=c[h>>2]|0;i=j;return v|0}}}while(0);c[h>>2]=0;v=c[h>>2]|0;i=j;return v|0}function Mq(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;k=i;i=i+16|0;j=k+12|0;h=k;l=k+4|0;g=k+8|0;c[h>>2]=e;c[l>>2]=f;a[(c[h>>2]|0)+3>>0]=c[l>>2]>>3;c[l>>2]=c[l>>2]&-9;a[(c[h>>2]|0)+6>>0]=4-((d[(c[h>>2]|0)+3>>0]|0)<<2);c[g>>2]=c[(c[h>>2]|0)+52>>2];do{if((c[l>>2]|0)==5){a[(c[h>>2]|0)+2>>0]=1;a[(c[h>>2]|0)+4>>0]=a[(c[h>>2]|0)+3>>0]|0;b[(c[h>>2]|0)+8>>1]=b[(c[g>>2]|0)+28>>1]|0;b[(c[h>>2]|0)+10>>1]=b[(c[g>>2]|0)+30>>1]|0}else{if((c[l>>2]|0)==2){a[(c[h>>2]|0)+2>>0]=0;a[(c[h>>2]|0)+4>>0]=0;b[(c[h>>2]|0)+8>>1]=b[(c[g>>2]|0)+24>>1]|0;b[(c[h>>2]|0)+10>>1]=b[(c[g>>2]|0)+26>>1]|0;break}c[j>>2]=dq(52563)|0;e=c[j>>2]|0;i=k;return e|0}}while(0);a[(c[h>>2]|0)+7>>0]=a[(c[g>>2]|0)+21>>0]|0;c[j>>2]=0;e=c[j>>2]|0;i=k;return e|0}function Nq(){return 48}function Oq(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;p=j+20|0;l=j;m=j+4|0;n=j+8|0;o=j+12|0;k=j+16|0;c[p>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[k>>2]=h;g=(c[k>>2]|0)+0|0;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[(c[k>>2]|0)+20>>2]=c[p>>2];c[(c[k>>2]|0)+24>>2]=c[l>>2];a[(c[k>>2]|0)+28>>0]=c[m>>2];a[(c[k>>2]|0)+29>>0]=2;c[(c[k>>2]|0)+32>>2]=c[n>>2];c[(c[k>>2]|0)+36>>2]=c[o>>2];c[(c[k>>2]|0)+16>>2]=100;i=j;return}function Pq(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h+16|0;n=h;k=h+4|0;m=h+8|0;l=h+12|0;c[n>>2]=e;c[k>>2]=f;c[m>>2]=c[n>>2];c[l>>2]=0;if((c[(c[m>>2]|0)+40>>2]|0)!=0){c[j>>2]=0;n=c[j>>2]|0;i=h;return n|0}do{if((d[(c[m>>2]|0)+20>>0]|0|0)!=0){if((a[(c[m>>2]|0)+20>>0]&3|0)==0){if((b[(c[k>>2]|0)+24>>1]&4|0)==0){break}}c[j>>2]=0;n=c[j>>2]|0;i=h;return n|0}}while(0);c[(c[k>>2]|0)+12>>2]=0;n=(Uo(c[m>>2]|0)|0)!=0;f=c[k>>2]|0;if(n){if((Qq(f)|0)!=0){c[l>>2]=Rq(c[k>>2]|0)|0}if((c[l>>2]|0)==0){c[l>>2]=Sq(c[m>>2]|0,c[k>>2]|0,0,0)|0}}else{if((b[f+24>>1]&4|0)!=0){g=14}else{if((d[(c[m>>2]|0)+16>>0]|0|0)==3){g=14}}if((g|0)==14){c[l>>2]=Tq(c[m>>2]|0,1)|0}if((c[l>>2]|0)==0){if((c[(c[k>>2]|0)+20>>2]|0)>>>0>(c[(c[m>>2]|0)+24>>2]|0)>>>0){if((Qq(c[k>>2]|0)|0)!=0){c[l>>2]=Rq(c[k>>2]|0)|0}}}if((c[l>>2]|0)==0){c[l>>2]=Uq(c[m>>2]|0,c[k>>2]|0)|0}}if((c[l>>2]|0)==0){nh(c[k>>2]|0)}c[j>>2]=Ho(c[m>>2]|0,c[l>>2]|0)|0;n=c[j>>2]|0;i=h;return n|0}function Qq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;b=d+20|0;j=d;e=d+4|0;g=d+8|0;h=d+12|0;f=d+16|0;c[j>>2]=a;c[e>>2]=c[(c[j>>2]|0)+16>>2];c[h>>2]=c[(c[j>>2]|0)+20>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[e>>2]|0)+96>>2]|0)){a=7;break}c[g>>2]=(c[(c[e>>2]|0)+92>>2]|0)+((c[f>>2]|0)*48|0);if((c[(c[g>>2]|0)+20>>2]|0)>>>0>=(c[h>>2]|0)>>>0){if(0==(uh(c[(c[g>>2]|0)+16>>2]|0,c[h>>2]|0)|0)){a=5;break}}c[f>>2]=(c[f>>2]|0)+1}if((a|0)==5){c[b>>2]=1;j=c[b>>2]|0;i=d;return j|0}else if((a|0)==7){c[b>>2]=0;j=c[b>>2]|0;i=d;return j|0}return 0}function Rq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;g=e+24|0;b=e+16|0;f=e+8|0;k=e+12|0;j=e;h=e+20|0;c[g>>2]=a;c[b>>2]=0;c[f>>2]=c[(c[g>>2]|0)+16>>2];if((d[(c[f>>2]|0)+5>>0]|0|0)!=2){c[b>>2]=hr(c[f>>2]|0)|0;if((c[b>>2]|0)==0){c[k>>2]=c[(c[g>>2]|0)+4>>2];l=4+(c[(c[f>>2]|0)+152>>2]|0)|0;l=nL(c[(c[f>>2]|0)+52>>2]|0,0,l|0,((l|0)<0)<<31>>31|0)|0;a=j;c[a>>2]=l;c[a+4>>2]=D;c[h>>2]=c[k>>2];k=j;c[b>>2]=ir(c[(c[f>>2]|0)+68>>2]|0,c[k>>2]|0,c[k+4>>2]|0,c[(c[g>>2]|0)+20>>2]|0)|0;if((c[b>>2]|0)==0){a=c[(c[f>>2]|0)+68>>2]|0;h=c[h>>2]|0;k=c[(c[f>>2]|0)+152>>2]|0;l=j;l=dL(c[l>>2]|0,c[l+4>>2]|0,4,0)|0;c[b>>2]=nd(a,h,k,l,D)|0}}}if((c[b>>2]|0)!=0){l=c[b>>2]|0;i=e;return l|0}l=(c[f>>2]|0)+52|0;c[l>>2]=(c[l>>2]|0)+1;c[b>>2]=jr(c[f>>2]|0,c[(c[g>>2]|0)+20>>2]|0)|0;l=c[b>>2]|0;i=e;return l|0}function Sq(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+48|0;l=h+32|0;j=h+28|0;m=h+24|0;g=h+20|0;n=h+16|0;o=h+8|0;p=h+4|0;q=h;k=h+12|0;c[l>>2]=a;c[j>>2]=b;c[m>>2]=e;c[g>>2]=f;a:do{if((c[g>>2]|0)!=0){c[q>>2]=j;c[o>>2]=0;c[p>>2]=c[j>>2];while(1){a=c[p>>2]|0;c[c[q>>2]>>2]=a;if((a|0)==0){break a}if((c[(c[p>>2]|0)+20>>2]|0)>>>0<=(c[m>>2]|0)>>>0){c[q>>2]=(c[p>>2]|0)+12;c[o>>2]=(c[o>>2]|0)+1}c[p>>2]=c[(c[p>>2]|0)+12>>2]}}else{c[o>>2]=1}}while(0);a=(c[l>>2]|0)+192|0;c[a>>2]=(c[a>>2]|0)+(c[o>>2]|0);if((c[(c[j>>2]|0)+20>>2]|0)==1){Wq(c[j>>2]|0)}c[n>>2]=br(c[(c[l>>2]|0)+208>>2]|0,c[(c[l>>2]|0)+152>>2]|0,c[j>>2]|0,c[m>>2]|0,c[g>>2]|0,d[(c[l>>2]|0)+10>>0]|0)|0;if((c[n>>2]|0)!=0){a=c[n>>2]|0;i=h;return a|0}if((c[(c[l>>2]|0)+88>>2]|0)==0){a=c[n>>2]|0;i=h;return a|0}c[k>>2]=c[j>>2];while(1){if((c[k>>2]|0)==0){break}Bp(c[(c[l>>2]|0)+88>>2]|0,c[(c[k>>2]|0)+20>>2]|0,c[(c[k>>2]|0)+4>>2]|0);c[k>>2]=c[(c[k>>2]|0)+12>>2]}a=c[n>>2]|0;i=h;return a|0}function Tq(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+48|0;g=k+24|0;f=k+20|0;o=k+8|0;h=k+12|0;j=k+16|0;m=k;n=k+40|0;l=k+28|0;c[f>>2]=b;c[o>>2]=e;c[h>>2]=Yq(c[f>>2]|0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}do{if((a[(c[f>>2]|0)+7>>0]|0)==0){if((c[c[(c[f>>2]|0)+64>>2]>>2]|0)!=0){if((d[(c[f>>2]|0)+5>>0]|0)!=4){c[j>>2]=tp(c[(c[f>>2]|0)+60>>2]|0)|0;if(0==(c[j>>2]&512|0)){a[l+0>>0]=a[10992>>0]|0;a[l+1>>0]=a[10993>>0]|0;a[l+2>>0]=a[10994>>0]|0;a[l+3>>0]=a[10995>>0]|0;a[l+4>>0]=a[10996>>0]|0;a[l+5>>0]=a[10997>>0]|0;a[l+6>>0]=a[10998>>0]|0;a[l+7>>0]=a[10999>>0]|0;Xq(l+8|0,c[(c[f>>2]|0)+44>>2]|0);e=Gp(c[f>>2]|0)|0;b=m;c[b>>2]=e;c[b+4>>2]=D;b=m;c[h>>2]=xp(c[(c[f>>2]|0)+64>>2]|0,n,8,c[b>>2]|0,c[b+4>>2]|0)|0;if((c[h>>2]|0)==0){if(0==(XK(n,10992,8)|0)){b=m;c[h>>2]=nd(c[(c[f>>2]|0)+64>>2]|0,11208,1,c[b>>2]|0,c[b+4>>2]|0)|0}}if((c[h>>2]|0)!=0&(c[h>>2]|0)!=522){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}if((d[(c[f>>2]|0)+8>>0]|0)!=0){if(0==(c[j>>2]&1024|0)){c[h>>2]=cp(c[(c[f>>2]|0)+64>>2]|0,d[(c[f>>2]|0)+11>>0]|0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}}}b=(c[f>>2]|0)+80|0;c[h>>2]=nd(c[(c[f>>2]|0)+64>>2]|0,l,12,c[b>>2]|0,c[b+4>>2]|0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}}if(0==(c[j>>2]&1024|0)){c[h>>2]=cp(c[(c[f>>2]|0)+64>>2]|0,d[(c[f>>2]|0)+11>>0]|((d[(c[f>>2]|0)+11>>0]|0)==3?16:0))|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}}m=(c[f>>2]|0)+72|0;n=c[m+4>>2]|0;b=(c[f>>2]|0)+80|0;c[b>>2]=c[m>>2];c[b+4>>2]=n;if((c[o>>2]|0)==0){break}if(0!=(c[j>>2]&512|0)){break}c[(c[f>>2]|0)+44>>2]=0;c[h>>2]=Zq(c[f>>2]|0)|0;if((c[h>>2]|0)==0){break}c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}}n=(c[f>>2]|0)+72|0;o=c[n+4>>2]|0;b=(c[f>>2]|0)+80|0;c[b>>2]=c[n>>2];c[b+4>>2]=o}}while(0);_q(c[(c[f>>2]|0)+204>>2]|0);a[(c[f>>2]|0)+16>>0]=4;c[g>>2]=0;b=c[g>>2]|0;i=k;return b|0}function Uq(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;m=g+32|0;l=g+24|0;f=g+16|0;n=g;j=g+20|0;k=g+8|0;h=g+28|0;c[m>>2]=d;c[l>>2]=e;c[f>>2]=0;if((c[c[(c[m>>2]|0)+60>>2]>>2]|0)==0){c[f>>2]=Vq(c[m>>2]|0,c[(c[m>>2]|0)+60>>2]|0,c[(c[m>>2]|0)+144>>2]|0)|0}do{if((c[f>>2]|0)==0){if((c[(c[m>>2]|0)+36>>2]|0)>>>0<(c[(c[m>>2]|0)+24>>2]|0)>>>0){if((c[(c[l>>2]|0)+12>>2]|0)==0){if(!((c[(c[l>>2]|0)+20>>2]|0)>>>0>(c[(c[m>>2]|0)+36>>2]|0)>>>0)){break}}e=c[(c[m>>2]|0)+152>>2]|0;e=nL(e|0,((e|0)<0)<<31>>31|0,c[(c[m>>2]|0)+24>>2]|0,0)|0;d=n;c[d>>2]=e;c[d+4>>2]=D;kq(c[(c[m>>2]|0)+60>>2]|0,5,n);c[(c[m>>2]|0)+36>>2]=c[(c[m>>2]|0)+24>>2]}}}while(0);while(1){if((c[f>>2]|0)!=0){h=20;break}if((c[l>>2]|0)==0){h=20;break}c[j>>2]=c[(c[l>>2]|0)+20>>2];if((c[j>>2]|0)>>>0<=(c[(c[m>>2]|0)+24>>2]|0)>>>0){if(0==(b[(c[l>>2]|0)+24>>1]&32|0)){n=c[(c[m>>2]|0)+152>>2]|0;n=nL((c[j>>2]|0)-1|0,0,n|0,((n|0)<0)<<31>>31|0)|0;d=k;c[d>>2]=n;c[d+4>>2]=D;if((c[(c[l>>2]|0)+20>>2]|0)==1){Wq(c[l>>2]|0)}c[h>>2]=c[(c[l>>2]|0)+4>>2];d=k;c[f>>2]=nd(c[(c[m>>2]|0)+60>>2]|0,c[h>>2]|0,c[(c[m>>2]|0)+152>>2]|0,c[d>>2]|0,c[d+4>>2]|0)|0;if((c[j>>2]|0)==1){d=(c[m>>2]|0)+100|0;e=(c[h>>2]|0)+24|0;n=d+16|0;do{a[d>>0]=a[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(n|0))}if((c[j>>2]|0)>>>0>(c[(c[m>>2]|0)+32>>2]|0)>>>0){c[(c[m>>2]|0)+32>>2]=c[j>>2]}d=(c[m>>2]|0)+192|0;c[d>>2]=(c[d>>2]|0)+1;Bp(c[(c[m>>2]|0)+88>>2]|0,c[j>>2]|0,c[(c[l>>2]|0)+4>>2]|0)}}c[l>>2]=c[(c[l>>2]|0)+12>>2]}if((h|0)==20){i=g;return c[f>>2]|0}return 0}function Vq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+12|0;h=f;g=f+4|0;e=f+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[g>>2]=c[g>>2]|30;c[e>>2]=wp(c[c[j>>2]>>2]|0,0,c[h>>2]|0,c[g>>2]|0,0)|0;i=f;return c[e>>2]|0}function Wq(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=(zo((c[(c[d>>2]|0)+16>>2]|0)+100|0)|0)+1;Xq((c[(c[d>>2]|0)+4>>2]|0)+24|0,c[e>>2]|0);Xq((c[(c[d>>2]|0)+4>>2]|0)+92|0,c[e>>2]|0);Xq((c[(c[d>>2]|0)+4>>2]|0)+96|0,3008005);i=b;return}function Xq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[c[f>>2]>>0]=(c[g>>2]|0)>>>24;a[(c[f>>2]|0)+1>>0]=(c[g>>2]|0)>>>16;a[(c[f>>2]|0)+2>>0]=(c[g>>2]|0)>>>8;a[(c[f>>2]|0)+3>>0]=c[g>>2];i=e;return}function Yq(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=0;if(0!=(Uo(c[e>>2]|0)|0)){e=c[d>>2]|0;i=b;return e|0}c[d>>2]=$q(c[e>>2]|0,4)|0;e=c[d>>2]|0;i=b;return e|0}function Zq(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;g=l+20|0;h=l;j=l+4|0;e=l+8|0;k=l+12|0;m=l+16|0;c[g>>2]=b;c[h>>2]=0;c[j>>2]=c[(c[g>>2]|0)+200>>2];c[e>>2]=c[(c[g>>2]|0)+152>>2];if((c[e>>2]|0)>>>0>(c[(c[g>>2]|0)+148>>2]|0)>>>0){c[e>>2]=c[(c[g>>2]|0)+148>>2]}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[g>>2]|0)+96>>2]|0)){break}b=(c[(c[g>>2]|0)+92>>2]|0)+((c[m>>2]|0)*48|0)+8|0;if((c[b>>2]|0)==0&(c[b+4>>2]|0)==0){o=(c[g>>2]|0)+72|0;n=c[o+4>>2]|0;b=(c[(c[g>>2]|0)+92>>2]|0)+((c[m>>2]|0)*48|0)+8|0;c[b>>2]=c[o>>2];c[b+4>>2]=n}c[m>>2]=(c[m>>2]|0)+1}b=Gp(c[g>>2]|0)|0;n=D;o=(c[g>>2]|0)+72|0;c[o>>2]=b;c[o+4>>2]=n;o=(c[g>>2]|0)+80|0;c[o>>2]=b;c[o+4>>2]=n;if((d[(c[g>>2]|0)+7>>0]|0|0)!=0){f=11}else{if((d[(c[g>>2]|0)+5>>0]|0|0)==4){f=11}else{if(((tp(c[(c[g>>2]|0)+60>>2]|0)|0)&512|0)!=0){f=11}else{b=(c[j>>2]|0)+0|0;m=b+12|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(m|0))}}}if((f|0)==11){o=c[j>>2]|0;a[o+0>>0]=a[10992>>0]|0;a[o+1>>0]=a[10993>>0]|0;a[o+2>>0]=a[10994>>0]|0;a[o+3>>0]=a[10995>>0]|0;a[o+4>>0]=a[10996>>0]|0;a[o+5>>0]=a[10997>>0]|0;a[o+6>>0]=a[10998>>0]|0;a[o+7>>0]=a[10999>>0]|0;Xq((c[j>>2]|0)+8|0,-1)}Bc(4,(c[g>>2]|0)+48|0);Xq((c[j>>2]|0)+12|0,c[(c[g>>2]|0)+48>>2]|0);Xq((c[j>>2]|0)+16|0,c[(c[g>>2]|0)+28>>2]|0);Xq((c[j>>2]|0)+20|0,c[(c[g>>2]|0)+148>>2]|0);Xq((c[j>>2]|0)+24|0,c[(c[g>>2]|0)+152>>2]|0);aL((c[j>>2]|0)+28|0,0,(c[e>>2]|0)-28|0)|0;c[k>>2]=0;while(1){if((c[h>>2]|0)!=0){f=17;break}if(!((c[k>>2]|0)>>>0<(c[(c[g>>2]|0)+148>>2]|0)>>>0)){f=17;break}o=(c[g>>2]|0)+72|0;c[h>>2]=nd(c[(c[g>>2]|0)+64>>2]|0,c[j>>2]|0,c[e>>2]|0,c[o>>2]|0,c[o+4>>2]|0)|0;o=(c[g>>2]|0)+72|0;n=o;n=dL(c[n>>2]|0,c[n+4>>2]|0,c[e>>2]|0,0)|0;c[o>>2]=n;c[o+4>>2]=D;c[k>>2]=(c[k>>2]|0)+(c[e>>2]|0)}if((f|0)==17){i=l;return c[h>>2]|0}return 0}function _q(a){a=a|0;var d=0,f=0,g=0;f=i;i=i+16|0;d=f+4|0;g=f;c[d>>2]=a;c[g>>2]=c[c[d>>2]>>2];while(1){if((c[g>>2]|0)==0){break}a=(c[g>>2]|0)+24|0;b[a>>1]=(e[a>>1]|0)&-5;c[g>>2]=c[(c[g>>2]|0)+32>>2]}c[(c[d>>2]|0)+8>>2]=c[(c[d>>2]|0)+4>>2];i=f;return}function $q(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;while(1){c[e>>2]=ar(c[f>>2]|0,c[g>>2]|0)|0;if((c[e>>2]|0)!=5){b=4;break}if((ub[c[(c[f>>2]|0)+176>>2]&63](c[(c[f>>2]|0)+180>>2]|0)|0)==0){b=4;break}}if((b|0)==4){i=d;return c[e>>2]|0}return 0}function ar(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;h=f+8|0;j=f;g=f+4|0;c[h>>2]=b;c[j>>2]=e;c[g>>2]=0;if((d[(c[h>>2]|0)+17>>0]|0|0)>=(c[j>>2]|0)){if((d[(c[h>>2]|0)+17>>0]|0|0)!=5){b=c[g>>2]|0;i=f;return b|0}}if((d[(c[h>>2]|0)+13>>0]|0|0)!=0){e=0}else{e=iq(c[(c[h>>2]|0)+60>>2]|0,c[j>>2]|0)|0}c[g>>2]=e;if((c[g>>2]|0)!=0){b=c[g>>2]|0;i=f;return b|0}if((d[(c[h>>2]|0)+17>>0]|0|0)==5){if((c[j>>2]|0)!=4){b=c[g>>2]|0;i=f;return b|0}}a[(c[h>>2]|0)+17>>0]=c[j>>2];b=c[g>>2]|0;i=f;return b|0}function br(e,f,g,h,j,k){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0;z=i;i=i+144|0;n=z+104|0;s=z+100|0;B=z+96|0;C=z+92|0;x=z+88|0;p=z+84|0;r=z+80|0;o=z+76|0;y=z+72|0;w=z+60|0;l=z+56|0;E=z+52|0;A=z+48|0;u=z+32|0;q=z+8|0;H=z+112|0;G=z+64|0;v=z+40|0;t=z+44|0;F=z;c[s>>2]=e;c[B>>2]=f;c[C>>2]=g;c[x>>2]=h;c[p>>2]=j;c[r>>2]=k;c[l>>2]=0;c[E>>2]=0;e=cr(c[s>>2]|0)|0;c[o>>2]=e;if(0!=(e|0)){c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}c[y>>2]=c[(c[s>>2]|0)+68>>2];if((c[y>>2]|0)==0){Xq(H,931071618|(a[1480]|0)==0);Xq(H+4|0,3007e3);Xq(H+8|0,c[B>>2]|0);Xq(H+12|0,c[(c[s>>2]|0)+104>>2]|0);if((c[(c[s>>2]|0)+104>>2]|0)==0){Bc(8,(c[s>>2]|0)+84|0)}e=H+16|0;f=(c[s>>2]|0)+84|0;a[e+0>>0]=a[f+0>>0]|0;a[e+1>>0]=a[f+1>>0]|0;a[e+2>>0]=a[f+2>>0]|0;a[e+3>>0]=a[f+3>>0]|0;a[e+4>>0]=a[f+4>>0]|0;a[e+5>>0]=a[f+5>>0]|0;a[e+6>>0]=a[f+6>>0]|0;a[e+7>>0]=a[f+7>>0]|0;Cq(1,H,24,0,G);Xq(H+24|0,c[G>>2]|0);Xq(H+28|0,c[G+4>>2]|0);c[(c[s>>2]|0)+36>>2]=c[B>>2];a[(c[s>>2]|0)+65>>0]=(a[1480]|0)==0;c[(c[s>>2]|0)+76>>2]=c[G>>2];c[(c[s>>2]|0)+80>>2]=c[G+4>>2];a[(c[s>>2]|0)+47>>0]=1;c[o>>2]=nd(c[(c[s>>2]|0)+8>>2]|0,H,32,0,0)|0;if((c[o>>2]|0)!=0){c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}if((d[(c[s>>2]|0)+48>>0]|0)!=0){if((c[r>>2]|0)!=0){c[o>>2]=cp(c[(c[s>>2]|0)+8>>2]|0,c[r>>2]&19)|0;if((c[o>>2]|0)!=0){c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}}}}c[q>>2]=c[s>>2];c[q+4>>2]=c[(c[s>>2]|0)+8>>2];f=q+8|0;c[f>>2]=0;c[f+4>>2]=0;c[q+16>>2]=c[r>>2];c[q+20>>2]=c[B>>2];f=(c[B>>2]|0)+24|0;f=nL((c[y>>2]|0)+1-1|0,0,f|0,((f|0)<0)<<31>>31|0)|0;f=dL(32,0,f|0,D|0)|0;e=u;c[e>>2]=f;c[e+4>>2]=D;c[A>>2]=(c[B>>2]|0)+24;c[w>>2]=c[C>>2];while(1){if((c[w>>2]|0)==0){break}c[y>>2]=(c[y>>2]|0)+1;if((c[p>>2]|0)!=0){G=(c[(c[w>>2]|0)+12>>2]|0)==0?c[x>>2]|0:0}else{G=0}c[v>>2]=G;e=u;c[o>>2]=dr(q,c[w>>2]|0,c[v>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;if((c[o>>2]|0)!=0){m=17;break}c[l>>2]=c[w>>2];f=c[A>>2]|0;e=u;f=dL(c[e>>2]|0,c[e+4>>2]|0,f|0,((f|0)<0)<<31>>31|0)|0;e=u;c[e>>2]=f;c[e+4>>2]=D;c[w>>2]=c[(c[w>>2]|0)+12>>2]}if((m|0)==17){c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}a:do{if((c[p>>2]|0)!=0){if((c[r>>2]&32|0)!=0){if((a[(c[s>>2]|0)+49>>0]|0)==0){c[o>>2]=cp(c[q+4>>2]|0,c[r>>2]&19)|0;break}c[t>>2]=up(c[(c[s>>2]|0)+8>>2]|0)|0;e=u;f=c[t>>2]|0;f=dL(c[e>>2]|0,c[e+4>>2]|0,f|0,((f|0)<0)<<31>>31|0)|0;f=$K(f|0,D|0,1,0)|0;e=c[t>>2]|0;e=lL(f|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;f=c[t>>2]|0;f=nL(e|0,D|0,f|0,((f|0)<0)<<31>>31|0)|0;e=q+8|0;c[e>>2]=f;c[e+4>>2]=D;while(1){f=u;h=c[f+4>>2]|0;e=q+8|0;g=c[e+4>>2]|0;if(!((h|0)<(g|0)|((h|0)==(g|0)?(c[f>>2]|0)>>>0<(c[e>>2]|0)>>>0:0))){break a}e=u;c[o>>2]=dr(q,c[l>>2]|0,c[x>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;if((c[o>>2]|0)!=0){break}f=c[A>>2]|0;e=u;f=dL(c[e>>2]|0,c[e+4>>2]|0,f|0,((f|0)<0)<<31>>31|0)|0;e=u;c[e>>2]=f;c[e+4>>2]=D;c[E>>2]=(c[E>>2]|0)+1}c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}}}while(0);if((c[p>>2]|0)!=0){if((d[(c[s>>2]|0)+47>>0]|0)!=0){e=(c[s>>2]|0)+16|0;f=c[e+4>>2]|0;if((f|0)>0|(f|0)==0&(c[e>>2]|0)>>>0>=0){e=(c[s>>2]|0)+16|0;h=c[e+4>>2]|0;f=F;c[f>>2]=c[e>>2];c[f+4>>2]=h;f=(c[B>>2]|0)+24|0;f=nL((c[y>>2]|0)+(c[E>>2]|0)+1-1|0,0,f|0,((f|0)<0)<<31>>31|0)|0;f=dL(32,0,f|0,D|0)|0;h=D;e=(c[s>>2]|0)+16|0;g=c[e+4>>2]|0;if((h|0)>(g|0)|((h|0)==(g|0)?f>>>0>(c[e>>2]|0)>>>0:0)){f=(c[B>>2]|0)+24|0;f=nL((c[y>>2]|0)+(c[E>>2]|0)+1-1|0,0,f|0,((f|0)<0)<<31>>31|0)|0;f=dL(32,0,f|0,D|0)|0;e=F;c[e>>2]=f;c[e+4>>2]=D}e=F;lq(c[s>>2]|0,c[e>>2]|0,c[e+4>>2]|0);a[(c[s>>2]|0)+47>>0]=0}}}c[y>>2]=c[(c[s>>2]|0)+68>>2];c[w>>2]=c[C>>2];while(1){if((c[w>>2]|0)==0){break}if((c[o>>2]|0)!=0){break}c[y>>2]=(c[y>>2]|0)+1;c[o>>2]=Eq(c[s>>2]|0,c[y>>2]|0,c[(c[w>>2]|0)+20>>2]|0)|0;c[w>>2]=c[(c[w>>2]|0)+12>>2]}while(1){if((c[o>>2]|0)!=0){break}if((c[E>>2]|0)<=0){break}c[y>>2]=(c[y>>2]|0)+1;c[E>>2]=(c[E>>2]|0)+ -1;c[o>>2]=Eq(c[s>>2]|0,c[y>>2]|0,c[(c[l>>2]|0)+20>>2]|0)|0}if((c[o>>2]|0)==0){b[(c[s>>2]|0)+66>>1]=c[B>>2]&65280|c[B>>2]>>16;c[(c[s>>2]|0)+68>>2]=c[y>>2];if((c[p>>2]|0)!=0){e=(c[s>>2]|0)+60|0;c[e>>2]=(c[e>>2]|0)+1;c[(c[s>>2]|0)+72>>2]=c[x>>2]}if((c[p>>2]|0)!=0){Fq(c[s>>2]|0);c[(c[s>>2]|0)+12>>2]=c[y>>2]}}c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}function cr(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+48|0;d=j+32|0;h=j+28|0;g=j+24|0;e=j+20|0;l=j+16|0;n=j+8|0;k=j+4|0;m=j;f=j+12|0;c[h>>2]=a;c[g>>2]=0;if((b[(c[h>>2]|0)+40>>1]|0)==0){c[l>>2]=tq(c[h>>2]|0)|0;do{if((c[c[l>>2]>>2]|0)>>>0>0){Bc(4,n);c[g>>2]=oq(c[h>>2]|0,4,4)|0;if((c[g>>2]|0)!=0){if((c[g>>2]|0)==5){break}c[d>>2]=c[g>>2];n=c[d>>2]|0;i=j;return n|0}c[m>>2]=(c[h>>2]|0)+84;a=(c[h>>2]|0)+104|0;c[a>>2]=(c[a>>2]|0)+1;c[(c[h>>2]|0)+68>>2]=0;a=c[m>>2]|0;Xq(a,1+(zo(c[m>>2]|0)|0)|0);c[(c[m>>2]|0)+4>>2]=c[n>>2];Fq(c[h>>2]|0);c[c[l>>2]>>2]=0;c[(c[l>>2]|0)+8>>2]=0;c[k>>2]=2;while(1){if((c[k>>2]|0)>=5){break}c[(c[l>>2]|0)+4+(c[k>>2]<<2)>>2]=-1;c[k>>2]=(c[k>>2]|0)+1}bp(c[h>>2]|0,4,4)}}while(0);$o(c[h>>2]|0,3);b[(c[h>>2]|0)+40>>1]=-1;c[e>>2]=0;do{m=c[h>>2]|0;n=(c[e>>2]|0)+1|0;c[e>>2]=n;c[g>>2]=gr(m,f,1,n)|0}while((c[g>>2]|0)==-1)}c[d>>2]=c[g>>2];n=c[d>>2]|0;i=j;return n|0}function dr(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+64|0;h=l+28|0;g=l+16|0;p=l+8|0;o=l+12|0;k=l;j=l+20|0;m=l+24|0;n=l+32|0;c[g>>2]=a;c[p>>2]=b;c[o>>2]=d;a=k;c[a>>2]=e;c[a+4>>2]=f;c[m>>2]=c[(c[p>>2]|0)+4>>2];er(c[c[g>>2]>>2]|0,c[(c[p>>2]|0)+20>>2]|0,c[o>>2]|0,c[m>>2]|0,n);a=k;c[j>>2]=fr(c[g>>2]|0,n,24,c[a>>2]|0,c[a+4>>2]|0)|0;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];p=c[h>>2]|0;i=l;return p|0}else{a=c[g>>2]|0;n=c[m>>2]|0;o=c[(c[g>>2]|0)+20>>2]|0;p=k;p=dL(c[p>>2]|0,c[p+4>>2]|0,24,0)|0;c[j>>2]=fr(a,n,o,p,D)|0;c[h>>2]=c[j>>2];p=c[h>>2]|0;i=l;return p|0}return 0}function er(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;m=j+24|0;q=j;p=j+4|0;n=j+8|0;l=j+12|0;o=j+16|0;k=j+20|0;c[m>>2]=b;c[q>>2]=e;c[p>>2]=f;c[n>>2]=g;c[l>>2]=h;c[k>>2]=(c[m>>2]|0)+76;Xq(c[l>>2]|0,c[q>>2]|0);Xq((c[l>>2]|0)+4|0,c[p>>2]|0);b=(c[l>>2]|0)+8|0;e=(c[m>>2]|0)+84|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0;a[b+4>>0]=a[e+4>>0]|0;a[b+5>>0]=a[e+5>>0]|0;a[b+6>>0]=a[e+6>>0]|0;a[b+7>>0]=a[e+7>>0]|0;c[o>>2]=(d[(c[m>>2]|0)+65>>0]|0)==((a[1480]|0)==0|0)&1;Cq(c[o>>2]|0,c[l>>2]|0,8,c[k>>2]|0,c[k>>2]|0);Cq(c[o>>2]|0,c[n>>2]|0,c[(c[m>>2]|0)+36>>2]|0,c[k>>2]|0,c[k>>2]|0);Xq((c[l>>2]|0)+16|0,c[c[k>>2]>>2]|0);Xq((c[l>>2]|0)+20|0,c[(c[k>>2]|0)+4>>2]|0);i=j;return}function fr(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;h=j+28|0;o=j+16|0;n=j+8|0;g=j+12|0;l=j;m=j+20|0;k=j+24|0;c[o>>2]=a;c[n>>2]=b;c[g>>2]=d;b=l;c[b>>2]=e;c[b+4>>2]=f;b=l;e=c[b+4>>2]|0;a=(c[o>>2]|0)+8|0;d=c[a+4>>2]|0;do{if((e|0)<(d|0)|((e|0)==(d|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)){e=l;b=c[g>>2]|0;b=dL(c[e>>2]|0,c[e+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;e=D;a=(c[o>>2]|0)+8|0;d=c[a+4>>2]|0;if((e|0)>(d|0)|((e|0)==(d|0)?b>>>0>=(c[a>>2]|0)>>>0:0)){b=(c[o>>2]|0)+8|0;a=l;a=$K(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[k>>2]=a;a=l;c[m>>2]=nd(c[(c[o>>2]|0)+4>>2]|0,c[n>>2]|0,c[k>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;if((c[m>>2]|0)!=0){c[h>>2]=c[m>>2];a=c[h>>2]|0;i=j;return a|0}b=c[k>>2]|0;a=l;b=dL(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=l;c[a>>2]=b;c[a+4>>2]=D;c[g>>2]=(c[g>>2]|0)-(c[k>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);c[m>>2]=cp(c[(c[o>>2]|0)+4>>2]|0,c[(c[o>>2]|0)+16>>2]&19)|0;if((c[g>>2]|0)!=0){if((c[m>>2]|0)==0){break}}c[h>>2]=c[m>>2];a=c[h>>2]|0;i=j;return a|0}}}while(0);a=l;c[m>>2]=nd(c[(c[o>>2]|0)+4>>2]|0,c[n>>2]|0,c[g>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[h>>2]=c[m>>2];a=c[h>>2]|0;i=j;return a|0}function gr(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=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;j=i;i=i+48|0;h=j+44|0;p=j+40|0;t=j+36|0;s=j+32|0;v=j+28|0;q=j+24|0;m=j+20|0;n=j+12|0;o=j+8|0;l=j+4|0;u=j;k=j+16|0;c[p>>2]=d;c[t>>2]=e;c[s>>2]=f;c[v>>2]=g;c[l>>2]=0;if((c[v>>2]|0)>5){c[u>>2]=1;if((c[v>>2]|0)>100){c[h>>2]=15;d=c[h>>2]|0;i=j;return d|0}if((c[v>>2]|0)>=10){c[u>>2]=((c[v>>2]|0)-9|0)*238}Eg(c[c[p>>2]>>2]|0,c[u>>2]|0)|0}if((c[s>>2]|0)==0){c[l>>2]=qq(c[p>>2]|0,c[t>>2]|0)|0;do{if((c[l>>2]|0)==5){if((c[c[(c[p>>2]|0)+32>>2]>>2]|0)==0){c[l>>2]=-1;break}d=_o(c[p>>2]|0,2)|0;c[l>>2]=d;if(0==(d|0)){$o(c[p>>2]|0,2);c[l>>2]=-1;break}if((c[l>>2]|0)==5){c[l>>2]=261}}}while(0);if((c[l>>2]|0)!=0){c[h>>2]=c[l>>2];d=c[h>>2]|0;i=j;return d|0}}c[q>>2]=tq(c[p>>2]|0)|0;do{if((c[s>>2]|0)==0){if((c[c[q>>2]>>2]|0)==(c[(c[p>>2]|0)+68>>2]|0)){c[l>>2]=_o(c[p>>2]|0,3)|0;Gq(c[p>>2]|0);if((c[l>>2]|0)!=0){if((c[l>>2]|0)==5){break}c[h>>2]=c[l>>2];d=c[h>>2]|0;i=j;return d|0}d=fq(c[p>>2]|0)|0;d=(XK(d,(c[p>>2]|0)+52|0,48)|0)!=0;k=c[p>>2]|0;if(d){$o(k,3);c[h>>2]=-1;d=c[h>>2]|0;i=j;return d|0}else{b[k+40>>1]=0;c[h>>2]=0;d=c[h>>2]|0;i=j;return d|0}}}}while(0);c[m>>2]=0;c[n>>2]=0;c[o>>2]=1;while(1){if((c[o>>2]|0)>=5){break}c[k>>2]=c[(c[q>>2]|0)+4+(c[o>>2]<<2)>>2];if((c[m>>2]|0)>>>0<=(c[k>>2]|0)>>>0){if((c[k>>2]|0)>>>0<=(c[(c[p>>2]|0)+68>>2]|0)>>>0){c[m>>2]=c[k>>2];c[n>>2]=c[o>>2]}}c[o>>2]=(c[o>>2]|0)+1}a:do{if((a[(c[p>>2]|0)+46>>0]&2|0)==0){if(!((c[m>>2]|0)>>>0<(c[(c[p>>2]|0)+68>>2]|0)>>>0)){if((c[n>>2]|0)!=0){break}}c[o>>2]=1;while(1){if((c[o>>2]|0)>=5){break a}c[l>>2]=oq(c[p>>2]|0,3+(c[o>>2]|0)|0,1)|0;if((c[l>>2]|0)==0){r=37;break}if((c[l>>2]|0)!=5){break}c[o>>2]=(c[o>>2]|0)+1}if((r|0)==37){d=c[(c[p>>2]|0)+68>>2]|0;c[(c[q>>2]|0)+4+(c[o>>2]<<2)>>2]=d;c[m>>2]=d;c[n>>2]=c[o>>2];bp(c[p>>2]|0,3+(c[o>>2]|0)|0,1);break}c[h>>2]=c[l>>2];d=c[h>>2]|0;i=j;return d|0}}while(0);if((c[n>>2]|0)==0){c[h>>2]=(c[l>>2]|0)==5?-1:520;d=c[h>>2]|0;i=j;return d|0}c[l>>2]=_o(c[p>>2]|0,3+(c[n>>2]|0)|0)|0;if((c[l>>2]|0)!=0){c[h>>2]=(c[l>>2]|0)==5?-1:c[l>>2]|0;d=c[h>>2]|0;i=j;return d|0}Gq(c[p>>2]|0);if((c[(c[q>>2]|0)+4+(c[n>>2]<<2)>>2]|0)==(c[m>>2]|0)){d=fq(c[p>>2]|0)|0;if((XK(d,(c[p>>2]|0)+52|0,48)|0)==0){b[(c[p>>2]|0)+40>>1]=c[n>>2];c[h>>2]=c[l>>2];d=c[h>>2]|0;i=j;return d|0}}$o(c[p>>2]|0,3+(c[n>>2]|0)|0);c[h>>2]=-1;d=c[h>>2]|0;i=j;return d|0}function hr(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;f=b+4|0;e=b;c[f>>2]=a;c[e>>2]=0;if((c[c[(c[f>>2]|0)+68>>2]>>2]|0)!=0){f=c[e>>2]|0;i=b;return f|0}if((d[(c[f>>2]|0)+5>>0]|0|0)!=4){if((d[(c[f>>2]|0)+21>>0]|0|0)==0){c[e>>2]=Vq(c[f>>2]|0,c[(c[f>>2]|0)+68>>2]|0,8192)|0;f=c[e>>2]|0;i=b;return f|0}}jp(c[(c[f>>2]|0)+68>>2]|0);f=c[e>>2]|0;i=b;return f|0}function ir(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;h=f+12|0;j=f;k=f+8|0;g=f+16|0;c[h>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;c[k>>2]=e;Xq(g,c[k>>2]|0);a=j;a=nd(c[h>>2]|0,g,4,c[a>>2]|0,c[a+4>>2]|0)|0;i=f;return a|0}function jr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;f=d+16|0;j=d;g=d+4|0;e=d+8|0;h=d+12|0;c[f>>2]=a;c[j>>2]=b;c[e>>2]=0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+96>>2]|0)){break}c[h>>2]=(c[(c[f>>2]|0)+92>>2]|0)+((c[g>>2]|0)*48|0);if((c[j>>2]|0)>>>0<=(c[(c[h>>2]|0)+20>>2]|0)>>>0){a=sh(c[(c[h>>2]|0)+16>>2]|0,c[j>>2]|0)|0;c[e>>2]=c[e>>2]|a}c[g>>2]=(c[g>>2]|0)+1}i=d;return c[e>>2]|0}function kr(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;c[b>>2]=(c[b>>2]|0)+((1&c[b>>2]>>6)*9|0);i=d;return c[b>>2]&15|0}function lr(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=b;c[f>>2]=d;while(1){if((c[f>>2]|0)>0){b=(a[(c[g>>2]|0)+((c[f>>2]|0)-1)>>0]|0)==32}else{b=0}d=c[f>>2]|0;if(!b){break}c[f>>2]=d+ -1}i=e;return(d|0)==0|0}function mr(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+4|0;c[e>>2]=a;c[d>>2]=c[e>>2];zc(21,11488,d);i=b;return}function nr(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;n=l+20|0;k=l;g=l+4|0;m=l+8|0;h=l+12|0;j=l+16|0;c[n>>2]=a;c[k>>2]=b;c[g>>2]=e;c[m>>2]=f;c[h>>2]=0;if((c[n>>2]|0)==0){a=c[h>>2]|0;i=l;return a|0}c[j>>2]=c[(c[n>>2]|0)+4>>2];Uc(c[n>>2]|0);if((d[(c[j>>2]|0)+20>>0]|0|0)!=0){c[h>>2]=6;a=c[h>>2]|0;i=l;return a|0}else{c[h>>2]=or(c[c[j>>2]>>2]|0,c[k>>2]|0,c[g>>2]|0,c[m>>2]|0)|0;a=c[h>>2]|0;i=l;return a|0}return 0}function or(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;j=g+16|0;k=g;l=g+4|0;m=g+8|0;h=g+12|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[h>>2]=0;if((c[(c[j>>2]|0)+208>>2]|0)==0){a=c[h>>2]|0;i=g;return a|0}c[h>>2]=jq(c[(c[j>>2]|0)+208>>2]|0,c[k>>2]|0,c[(c[j>>2]|0)+176>>2]|0,c[(c[j>>2]|0)+180>>2]|0,d[(c[j>>2]|0)+9>>0]|0,c[(c[j>>2]|0)+152>>2]|0,c[(c[j>>2]|0)+200>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;a=c[h>>2]|0;i=g;return a|0}function pr(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;g=h+20|0;n=h;m=h+4|0;k=h+8|0;l=h+12|0;j=h+16|0;c[n>>2]=b;c[m>>2]=d;c[k>>2]=e;c[l>>2]=f;c[j>>2]=c[(c[n>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[j>>2]|0)==0){f=7;break}if((Tb(c[(c[j>>2]|0)+24>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)==0){if((a[(c[(c[j>>2]|0)+24>>2]|0)+(c[l>>2]|0)>>0]|0)==0){f=5;break}}c[j>>2]=c[(c[j>>2]|0)+28>>2]}if((f|0)==5){c[g>>2]=c[j>>2];n=c[g>>2]|0;i=h;return n|0}else if((f|0)==7){c[g>>2]=0;n=c[g>>2]|0;i=h;return n|0}return 0}function qr(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;k=j+12|0;m=j;l=j+4|0;o=j+16|0;n=j+8|0;c[m>>2]=f;c[l>>2]=g;a[o>>0]=h;h=c[m>>2]|0;if((c[l>>2]|0)==-2){if((c[h+12>>2]|0)==0){l=(c[(c[m>>2]|0)+16>>2]|0)==0}else{l=0}c[k>>2]=l?0:6;f=c[k>>2]|0;i=j;return f|0}if((b[h>>1]|0)!=(c[l>>2]|0)){if((b[c[m>>2]>>1]|0)>=0){c[k>>2]=0;f=c[k>>2]|0;i=j;return f|0}}if((b[c[m>>2]>>1]|0)==(c[l>>2]|0)){c[n>>2]=4}else{c[n>>2]=1}if((d[o>>0]|0)==(b[(c[m>>2]|0)+2>>1]&3|0)){c[n>>2]=(c[n>>2]|0)+2}else{if((d[o>>0]&e[(c[m>>2]|0)+2>>1]&2|0)!=0){c[n>>2]=(c[n>>2]|0)+1}}c[k>>2]=c[n>>2];f=c[k>>2]|0;i=j;return f|0}function rr(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;k=f+16|0;h=f;g=f+4|0;l=f+8|0;m=f+20|0;j=f+12|0;c[k>>2]=b;c[h>>2]=e;c[l>>2]=Ub(c[(c[h>>2]|0)+24>>2]|0)|0;a[m>>0]=a[c[(c[h>>2]|0)+24>>2]>>0]|0;c[j>>2]=((d[784+(d[m>>0]|0)>>0]|0)+(c[l>>2]|0)|0)%23|0;c[g>>2]=pr(c[k>>2]|0,c[j>>2]|0,c[(c[h>>2]|0)+24>>2]|0,c[l>>2]|0)|0;if((c[g>>2]|0)!=0){c[(c[h>>2]|0)+8>>2]=c[(c[g>>2]|0)+8>>2];c[(c[g>>2]|0)+8>>2]=c[h>>2];i=f;return}else{c[(c[h>>2]|0)+8>>2]=0;c[(c[h>>2]|0)+28>>2]=c[(c[k>>2]|0)+(c[j>>2]<<2)>>2];c[(c[k>>2]|0)+(c[j>>2]<<2)>>2]=c[h>>2];i=f;return}}function sr(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;k=f;j=f+4|0;h=f+8|0;c[k>>2]=a;c[j>>2]=e;if((b[(c[k>>2]|0)+28>>1]&2|0)!=0){if((d[(c[k>>2]|0)+30>>0]|0|0)!=(c[j>>2]|0)){c[h>>2]=tr(c[k>>2]|0,c[j>>2]&255)|0;c[g>>2]=c[h>>2];a=c[g>>2]|0;i=f;return a|0}}c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}function tr(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;o=i;i=i+48|0;j=o+40|0;l=o+36|0;k=o+44|0;t=o+32|0;p=o+28|0;m=o+24|0;n=o+20|0;h=o+12|0;q=o+8|0;u=o+45|0;v=o+4|0;r=o;s=o+16|0;c[l>>2]=f;a[k>>0]=g;if((d[(c[l>>2]|0)+30>>0]|0|0)!=1){if((d[k>>0]|0|0)!=1){c[v>>2]=ur(c[l>>2]|0)|0;if((c[v>>2]|0)!=0){c[j>>2]=7;f=c[j>>2]|0;i=o;return f|0}c[m>>2]=c[(c[l>>2]|0)+4>>2];c[n>>2]=(c[m>>2]|0)+(c[(c[l>>2]|0)+24>>2]&-2);while(1){if(!((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)){break}a[u>>0]=a[c[m>>2]>>0]|0;a[c[m>>2]>>0]=a[(c[m>>2]|0)+1>>0]|0;c[m>>2]=(c[m>>2]|0)+1;v=a[u>>0]|0;f=c[m>>2]|0;c[m>>2]=f+1;a[f>>0]=v}a[(c[l>>2]|0)+30>>0]=a[k>>0]|0}else{w=9}}else{w=9}if((w|0)==9){g=(c[l>>2]|0)+24|0;u=c[g>>2]|0;if((d[k>>0]|0|0)==1){c[g>>2]=u&-2;c[t>>2]=(c[(c[l>>2]|0)+24>>2]<<1)+1}else{c[t>>2]=(u<<1)+2}c[m>>2]=c[(c[l>>2]|0)+4>>2];c[n>>2]=(c[m>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);c[p>>2]=$e(c[c[l>>2]>>2]|0,c[t>>2]|0)|0;if((c[p>>2]|0)==0){c[j>>2]=7;f=c[j>>2]|0;i=o;return f|0}c[h>>2]=c[p>>2];if((d[(c[l>>2]|0)+30>>0]|0|0)==1){a:do{if((d[k>>0]|0|0)==2){while(1){if(!((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)){break a}f=c[m>>2]|0;c[m>>2]=f+1;c[q>>2]=d[f>>0]|0;do{if((c[q>>2]|0)>>>0>=192){c[q>>2]=d[11592+((c[q>>2]|0)-192)>>0]|0;while(1){if((c[m>>2]|0)!=(c[n>>2]|0)){r=(a[c[m>>2]>>0]&192|0)==128}else{r=0}s=c[q>>2]|0;if(!r){break}f=c[m>>2]|0;c[m>>2]=f+1;c[q>>2]=(s<<6)+(63&(d[f>>0]|0))}if(!(s>>>0<128)){if((c[q>>2]&-2048|0)!=55296){if((c[q>>2]&-2|0)!=65534){break}}}c[q>>2]=65533}}while(0);r=c[q>>2]|0;if((c[q>>2]|0)>>>0<=65535){w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=r&255;w=(c[q>>2]|0)>>>8&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}else{f=(r>>>10&63)+(((c[q>>2]|0)-65536|0)>>>10&192)&255;w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=f;w=216+(((c[q>>2]|0)-65536|0)>>>18&3)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;f=c[q>>2]&255;w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=f;w=220+((c[q>>2]|0)>>>8&3)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}}}else{while(1){if(!((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)){break a}f=c[m>>2]|0;c[m>>2]=f+1;c[q>>2]=d[f>>0]|0;do{if((c[q>>2]|0)>>>0>=192){c[q>>2]=d[11592+((c[q>>2]|0)-192)>>0]|0;while(1){if((c[m>>2]|0)!=(c[n>>2]|0)){s=(a[c[m>>2]>>0]&192|0)==128}else{s=0}r=c[q>>2]|0;if(!s){break}f=c[m>>2]|0;c[m>>2]=f+1;c[q>>2]=(r<<6)+(63&(d[f>>0]|0))}if(!(r>>>0<128)){if((c[q>>2]&-2048|0)!=55296){if((c[q>>2]&-2|0)!=65534){break}}}c[q>>2]=65533}}while(0);r=c[q>>2]|0;if((c[q>>2]|0)>>>0<=65535){w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=r>>>8&255;w=c[q>>2]&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}else{w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=216+((r-65536|0)>>>18&3);w=((c[q>>2]|0)>>>10&63)+(((c[q>>2]|0)-65536|0)>>>10&192)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;f=220+((c[q>>2]|0)>>>8&3)&255;w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=f;w=c[q>>2]&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}}}}while(0);c[(c[l>>2]|0)+24>>2]=(c[h>>2]|0)-(c[p>>2]|0);f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=0}else{b:do{if((d[(c[l>>2]|0)+30>>0]|0|0)==2){while(1){if(!((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)){break b}f=c[m>>2]|0;c[m>>2]=f+1;c[q>>2]=d[f>>0]|0;f=c[m>>2]|0;c[m>>2]=f+1;c[q>>2]=(c[q>>2]|0)+((d[f>>0]|0)<<8);if((c[q>>2]|0)>>>0>=55296&(c[q>>2]|0)>>>0<57344){if((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0){f=c[m>>2]|0;c[m>>2]=f+1;c[r>>2]=d[f>>0]|0;f=c[m>>2]|0;c[m>>2]=f+1;c[r>>2]=(c[r>>2]|0)+((d[f>>0]|0)<<8);c[q>>2]=(c[r>>2]&1023)+((c[q>>2]&63)<<10)+((c[q>>2]&960)+64<<10)}}t=c[q>>2]|0;if((c[q>>2]|0)>>>0<128){f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=t&255;continue}s=c[q>>2]|0;if(t>>>0<2048){w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=192+(s>>>6&31&255);w=128+(c[q>>2]&63&255)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}t=c[q>>2]|0;if(s>>>0<65536){f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=224+(t>>>12&15&255);f=128+((c[q>>2]|0)>>>6&63&255)&255;w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=f;w=128+(c[q>>2]&63&255)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}else{w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=240+(t>>>18&7&255);w=128+((c[q>>2]|0)>>>12&63&255)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;f=128+((c[q>>2]|0)>>>6&63&255)&255;w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=f;w=128+(c[q>>2]&63&255)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}}}else{while(1){if(!((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)){break b}f=c[m>>2]|0;c[m>>2]=f+1;c[q>>2]=(d[f>>0]|0)<<8;f=c[m>>2]|0;c[m>>2]=f+1;c[q>>2]=(c[q>>2]|0)+(d[f>>0]|0);if((c[q>>2]|0)>>>0>=55296&(c[q>>2]|0)>>>0<57344){if((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0){f=c[m>>2]|0;c[m>>2]=f+1;c[s>>2]=(d[f>>0]|0)<<8;f=c[m>>2]|0;c[m>>2]=f+1;c[s>>2]=(c[s>>2]|0)+(d[f>>0]|0);c[q>>2]=(c[s>>2]&1023)+((c[q>>2]&63)<<10)+((c[q>>2]&960)+64<<10)}}t=c[q>>2]|0;if((c[q>>2]|0)>>>0<128){f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=t&255;continue}r=c[q>>2]|0;if(t>>>0<2048){w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=192+(r>>>6&31&255);w=128+(c[q>>2]&63&255)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}t=c[q>>2]|0;if(r>>>0<65536){f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=224+(t>>>12&15&255);f=128+((c[q>>2]|0)>>>6&63&255)&255;w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=f;w=128+(c[q>>2]&63&255)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}else{w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=240+(t>>>18&7&255);w=128+((c[q>>2]|0)>>>12&63&255)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;f=128+((c[q>>2]|0)>>>6&63&255)&255;w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=f;w=128+(c[q>>2]&63&255)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}}}}while(0);c[(c[l>>2]|0)+24>>2]=(c[h>>2]|0)-(c[p>>2]|0)}a[c[h>>2]>>0]=0;Gd(c[l>>2]|0);f=(c[l>>2]|0)+28|0;b[f>>1]=(e[f>>1]|0)&-7169;a[(c[l>>2]|0)+30>>0]=a[k>>0]|0;f=(c[l>>2]|0)+28|0;b[f>>1]=e[f>>1]|0|512;c[(c[l>>2]|0)+4>>2]=c[p>>2];c[(c[l>>2]|0)+36>>2]=c[(c[l>>2]|0)+4>>2]}c[j>>2]=0;f=c[j>>2]|0;i=o;return f|0}function ur(d){d=d|0;var f=0,g=0,h=0,j=0;h=i;i=i+16|0;g=h+8|0;f=h;j=h+4|0;c[f>>2]=d;if((b[(c[f>>2]|0)+28>>1]&16384|0)!=0){Id(c[f>>2]|0)|0}c[j>>2]=e[(c[f>>2]|0)+28>>1]|0;do{if((c[j>>2]&18|0)!=0){if((c[(c[f>>2]|0)+4>>2]|0)!=(c[(c[f>>2]|0)+36>>2]|0)){if((ue(c[f>>2]|0,(c[(c[f>>2]|0)+24>>2]|0)+2|0,1)|0)==0){a[(c[(c[f>>2]|0)+4>>2]|0)+(c[(c[f>>2]|0)+24>>2]|0)>>0]=0;a[(c[(c[f>>2]|0)+4>>2]|0)+((c[(c[f>>2]|0)+24>>2]|0)+1)>>0]=0;j=(c[f>>2]|0)+28|0;b[j>>1]=e[j>>1]|0|512;break}c[g>>2]=7;j=c[g>>2]|0;i=h;return j|0}}}while(0);c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}function vr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=c[(c[g>>2]|0)+32>>2];if((c[e>>2]|0)==0){i=d;return}g=c[e>>2]|0;c[g>>2]=(c[g>>2]|0)+ -1;if((c[c[e>>2]>>2]|0)!=0){i=d;return}rb[c[(c[e>>2]|0)+4>>2]&31](c[(c[e>>2]|0)+8>>2]|0);cc(c[f>>2]|0,c[e>>2]|0);i=d;return}function wr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b;f=b+4|0;g=b+8|0;c[e>>2]=a;if((c[(c[e>>2]|0)+4>>2]|0)!=0){c[d>>2]=1;g=c[d>>2]|0;i=b;return g|0}c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[e>>2]|0)+20>>2]|0)){a=9;break}c[g>>2]=c[(c[(c[e>>2]|0)+16>>2]|0)+(c[f>>2]<<4)+4>>2];if((c[g>>2]|0)!=0){if((Lr(c[g>>2]|0)|0)!=0){a=7;break}}c[f>>2]=(c[f>>2]|0)+1}if((a|0)==7){c[d>>2]=1;g=c[d>>2]|0;i=b;return g|0}else if((a|0)==9){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}return 0}function xr(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;l=f;k=f+4|0;h=f+8|0;j=f+12|0;c[g>>2]=b;c[l>>2]=e;c[h>>2]=0;Ih();Yb(c[g>>2]|0);c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[g>>2]|0)+20>>2]|0)){break}c[j>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<4)+4>>2];if((c[j>>2]|0)!=0){if((Ir(c[j>>2]|0)|0)!=0){c[h>>2]=1}vd(c[j>>2]|0,c[l>>2]|0)|0}c[k>>2]=(c[k>>2]|0)+1}Jr(c[g>>2]|0)|0;Jh();if((c[(c[g>>2]|0)+24>>2]&2|0)!=0){if((d[(c[g>>2]|0)+137>>0]|0)==0){yf(c[g>>2]|0);hd(c[g>>2]|0)}}b=(c[g>>2]|0)+496|0;c[b>>2]=0;c[b+4>>2]=0;b=(c[g>>2]|0)+504|0;c[b>>2]=0;c[b+4>>2]=0;b=(c[g>>2]|0)+24|0;c[b>>2]=c[b>>2]&-16777217;if((c[(c[g>>2]|0)+192>>2]|0)==0){i=f;return}if((c[h>>2]|0)==0){if((a[(c[g>>2]|0)+62>>0]|0)!=0){i=f;return}}rb[c[(c[g>>2]|0)+192>>2]&31](c[(c[g>>2]|0)+188>>2]|0);i=f;return}function yr(b){b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+4|0;f=e;c[d>>2]=b;while(1){b=c[d>>2]|0;if((c[(c[d>>2]|0)+480>>2]|0)==0){break}c[f>>2]=c[b+480>>2];c[(c[d>>2]|0)+480>>2]=c[(c[f>>2]|0)+24>>2];cc(c[d>>2]|0,c[f>>2]|0)}c[b+488>>2]=0;c[(c[d>>2]|0)+492>>2]=0;a[(c[d>>2]|0)+69>>0]=0;i=e;return}function zr(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+12|0;g=f;h=f+4|0;j=f+8|0;c[e>>2]=b;c[g>>2]=c[(c[e>>2]|0)+4>>2];Uc(c[e>>2]|0);c[h>>2]=c[(c[g>>2]|0)+8>>2];while(1){if((c[h>>2]|0)==0){break}c[j>>2]=c[h>>2];c[h>>2]=c[(c[h>>2]|0)+8>>2];if((c[c[j>>2]>>2]|0)!=(c[e>>2]|0)){continue}Dr(c[j>>2]|0)|0}vd(c[e>>2]|0,0)|0;if((a[(c[e>>2]|0)+9>>0]|0)!=0){if((Er(c[g>>2]|0)|0)!=0){d=7}}else{d=7}if((d|0)==7){Ao(c[c[g>>2]>>2]|0)|0;if((c[(c[g>>2]|0)+52>>2]|0)!=0){if((c[(c[g>>2]|0)+48>>2]|0)!=0){rb[c[(c[g>>2]|0)+52>>2]&31](c[(c[g>>2]|0)+48>>2]|0)}}cc(0,c[(c[g>>2]|0)+48>>2]|0);ah(c[g>>2]|0);oc(c[g>>2]|0)}if((c[(c[e>>2]|0)+24>>2]|0)!=0){c[(c[(c[e>>2]|0)+24>>2]|0)+20>>2]=c[(c[e>>2]|0)+20>>2]}if((c[(c[e>>2]|0)+20>>2]|0)==0){b=c[e>>2]|0;oc(b);i=f;return 0}c[(c[(c[e>>2]|0)+20>>2]|0)+24>>2]=c[(c[e>>2]|0)+24>>2];b=c[e>>2]|0;oc(b);i=f;return 0}function Ar(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b;e=b+4|0;c[f>>2]=a;c[d>>2]=c[(c[f>>2]|0)+324>>2];c[(c[f>>2]|0)+324>>2]=0;if((c[d>>2]|0)==0){i=b;return}yf(c[f>>2]|0);do{c[e>>2]=c[(c[d>>2]|0)+24>>2];Cr(c[d>>2]|0);c[d>>2]=c[e>>2]}while((c[d>>2]|0)!=0);i=b;return}function Br(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;g=b;e=b+4|0;f=b+8|0;c[d>>2]=a;c[e>>2]=2;c[g>>2]=2;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+20>>2]|0)){break}c[f>>2]=(c[(c[d>>2]|0)+16>>2]|0)+(c[g>>2]<<4);if((c[(c[f>>2]|0)+4>>2]|0)==0){cc(c[d>>2]|0,c[c[f>>2]>>2]|0);c[c[f>>2]>>2]=0}else{if((c[e>>2]|0)<(c[g>>2]|0)){a=(c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]<<4)|0;h=(c[(c[d>>2]|0)+16>>2]|0)+(c[g>>2]<<4)|0;c[a+0>>2]=c[h+0>>2];c[a+4>>2]=c[h+4>>2];c[a+8>>2]=c[h+8>>2];c[a+12>>2]=c[h+12>>2]}c[e>>2]=(c[e>>2]|0)+1}c[g>>2]=(c[g>>2]|0)+1}aL((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]<<4)|0,0,(c[(c[d>>2]|0)+20>>2]|0)-(c[e>>2]|0)<<4|0)|0;c[(c[d>>2]|0)+20>>2]=c[e>>2];if((c[(c[d>>2]|0)+20>>2]|0)>2){i=b;return}if((c[(c[d>>2]|0)+16>>2]|0)==((c[d>>2]|0)+448|0)){i=b;return}h=(c[d>>2]|0)+448|0;g=c[(c[d>>2]|0)+16>>2]|0;c[h+0>>2]=c[g+0>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];c[h+16>>2]=c[g+16>>2];c[h+20>>2]=c[g+20>>2];c[h+24>>2]=c[g+24>>2];c[h+28>>2]=c[g+28>>2];cc(c[d>>2]|0,c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+16>>2]=(c[d>>2]|0)+448;i=b;return}function Cr(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+8|0;d=b;f=b+4|0;c[e>>2]=a;c[d>>2]=c[c[e>>2]>>2];a=(c[e>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+ -1;if((c[(c[e>>2]|0)+12>>2]|0)!=0){i=b;return}c[f>>2]=c[(c[e>>2]|0)+8>>2];if((c[f>>2]|0)!=0){ub[c[(c[c[f>>2]>>2]|0)+16>>2]&63](c[f>>2]|0)|0}cc(c[d>>2]|0,c[e>>2]|0);i=b;return}function Dr(a){a=a|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d+12|0;f=d;h=d+4|0;e=d+8|0;c[g>>2]=a;c[f>>2]=c[c[g>>2]>>2];if((c[f>>2]|0)==0){i=d;return 0}c[e>>2]=c[(c[g>>2]|0)+4>>2];Uc(c[f>>2]|0);Fr(c[g>>2]|0);a=c[(c[g>>2]|0)+8>>2]|0;if((c[(c[g>>2]|0)+12>>2]|0)!=0){c[(c[(c[g>>2]|0)+12>>2]|0)+8>>2]=a}else{c[(c[e>>2]|0)+8>>2]=a}if((c[(c[g>>2]|0)+8>>2]|0)!=0){c[(c[(c[g>>2]|0)+8>>2]|0)+12>>2]=c[(c[g>>2]|0)+12>>2]}c[h>>2]=0;while(1){if((c[h>>2]|0)>(b[(c[g>>2]|0)+84>>1]|0)){break}Gr(c[(c[g>>2]|0)+128+(c[h>>2]<<2)>>2]|0);c[h>>2]=(c[h>>2]|0)+1}Hr(c[e>>2]|0);cc(c[c[f>>2]>>2]|0,c[(c[g>>2]|0)+20>>2]|0);i=d;return 0}function Er(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;e=b+8|0;f=b;d=b+4|0;c[e>>2]=a;c[d>>2]=0;g=(c[e>>2]|0)+64|0;c[g>>2]=(c[g>>2]|0)+ -1;if((c[(c[e>>2]|0)+64>>2]|0)>0){g=c[d>>2]|0;i=b;return g|0}if((c[2710]|0)==(c[e>>2]|0)){c[2710]=c[(c[e>>2]|0)+68>>2]}else{c[f>>2]=c[2710];while(1){if((c[f>>2]|0)!=0){g=(c[(c[f>>2]|0)+68>>2]|0)!=(c[e>>2]|0)}else{g=0}a=c[f>>2]|0;if(!g){break}c[f>>2]=c[a+68>>2]}if((a|0)!=0){c[(c[f>>2]|0)+68>>2]=c[(c[e>>2]|0)+68>>2]}}c[d>>2]=1;g=c[d>>2]|0;i=b;return g|0}function Fr(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;oc(c[(c[e>>2]|0)+64>>2]|0);c[(c[e>>2]|0)+64>>2]=0;a[(c[e>>2]|0)+81>>0]=0;i=d;return}function Gr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}Zp(c[(c[d>>2]|0)+68>>2]|0);i=b;return}function Hr(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;if((d[(c[e>>2]|0)+20>>0]|0|0)!=0){i=b;return}if((c[(c[e>>2]|0)+12>>2]|0)==0){i=b;return}Gr(c[(c[e>>2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;i=b;return}function Ir(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;if((c[e>>2]|0)==0){e=0;e=e&1;i=b;return e|0}e=(d[(c[e>>2]|0)+8>>0]|0|0)==2;e=e&1;i=b;return e|0}function Jr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Kr(c[d>>2]|0,68);i=b;return 0}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;g=d;j=d+4|0;k=d+8|0;f=d+12|0;h=d+16|0;c[e>>2]=a;c[g>>2]=b;if((c[(c[e>>2]|0)+320>>2]|0)==0){i=d;return}c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[e>>2]|0)+296>>2]|0)){break}c[k>>2]=c[(c[(c[e>>2]|0)+320>>2]|0)+(c[j>>2]<<2)>>2];c[f>>2]=c[(c[k>>2]|0)+8>>2];if((c[f>>2]|0)!=0){c[h>>2]=c[(c[c[f>>2]>>2]|0)+(c[g>>2]|0)>>2];if((c[h>>2]|0)!=0){ub[c[h>>2]&63](c[f>>2]|0)|0}}c[(c[k>>2]|0)+20>>2]=0;Cr(c[k>>2]|0);c[j>>2]=(c[j>>2]|0)+1}cc(c[e>>2]|0,c[(c[e>>2]|0)+320>>2]|0);c[(c[e>>2]|0)+296>>2]=0;c[(c[e>>2]|0)+320>>2]=0;i=d;return}function Lr(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[(c[b>>2]|0)+16>>2]|0)!=0|0} + + + +function _g(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;g=b+16|0;d=b+8|0;e=b;f=b+12|0;c[g>>2]=a;if((c[496>>2]|0)==0){i=b;return}c[d>>2]=c[496>>2];h=Zg(0)|0;a=e;c[a>>2]=h;c[a+4>>2]=((h|0)<0)<<31>>31;c[f>>2]=c[500>>2];c[496>>2]=0;Bb[c[d>>2]&3](c[f>>2]|0,c[e>>2]|0,c[e+4>>2]|0,c[g>>2]|0);c[496>>2]=c[d>>2];c[500>>2]=c[f>>2];i=b;return}function $g(a,b){a=a|0;b=b|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;j=f;k=f+4|0;l=f+8|0;h=f+12|0;c[j>>2]=a;c[k>>2]=b;if((c[k>>2]|0)<2){c[g>>2]=27;a=c[g>>2]|0;i=f;return a|0}c[l>>2]=((d[784+(d[c[j>>2]>>0]|0)>>0]|0)<<2^(d[784+(d[(c[j>>2]|0)+((c[k>>2]|0)-1)>>0]|0)>>0]|0)*3^c[k>>2]|0)%127|0;c[h>>2]=(d[2696+(c[l>>2]|0)>>0]|0)-1;while(1){if((c[h>>2]|0)<0){b=9;break}if((d[2952+(c[h>>2]|0)>>0]|0|0)==(c[k>>2]|0)){if((Tb(2136+(e[3080+(c[h>>2]<<1)>>1]|0)|0,c[j>>2]|0,c[k>>2]|0)|0)==0){b=7;break}}c[h>>2]=(d[2824+(c[h>>2]|0)>>0]|0)-1}if((b|0)==7){c[g>>2]=d[3328+(c[h>>2]|0)>>0]|0;a=c[g>>2]|0;i=f;return a|0}else if((b|0)==9){c[g>>2]=27;a=c[g>>2]|0;i=f;return a|0}return 0}function ah(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;gh(c[(c[d>>2]|0)+80>>2]|0);c[(c[d>>2]|0)+80>>2]=0;i=b;return}function bh(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;n=o+28|0;g=o+24|0;p=o+8|0;m=o+12|0;k=o+16|0;l=o+20|0;j=o;c[n>>2]=a;c[g>>2]=e;c[p>>2]=f;c[m>>2]=0;c[k>>2]=c[c[g>>2]>>2];if((d[(c[n>>2]|0)+15>>0]|0)==0){h=3}else{if((c[(c[n>>2]|0)+24>>2]|0)==0){h=3}}if((h|0)==3){if((ch(c[(c[n>>2]|0)+204>>2]|0)|0)==0){if((c[k>>2]|0)!=0){if((c[k>>2]|0)!=(c[(c[n>>2]|0)+152>>2]|0)){c[l>>2]=0;a=j;c[a>>2]=0;c[a+4>>2]=0;if((d[(c[n>>2]|0)+16>>0]|0)>0){if((c[c[(c[n>>2]|0)+60>>2]>>2]|0)!=0){c[m>>2]=dh(c[(c[n>>2]|0)+60>>2]|0,j)|0}}if((c[m>>2]|0)==0){c[l>>2]=eh(c[k>>2]|0)|0;if((c[l>>2]|0)==0){c[m>>2]=7}}if((c[m>>2]|0)==0){fh(c[n>>2]|0);a=j;a=dL(c[a>>2]|0,c[a+4>>2]|0,c[k>>2]|0,0)|0;a=$K(a|0,D|0,1,0)|0;a=lL(a|0,D|0,c[k>>2]|0,0)|0;c[(c[n>>2]|0)+24>>2]=a;c[(c[n>>2]|0)+152>>2]=c[k>>2];gh(c[(c[n>>2]|0)+200>>2]|0);c[(c[n>>2]|0)+200>>2]=c[l>>2];hh(c[(c[n>>2]|0)+204>>2]|0,c[k>>2]|0)}}}}}c[c[g>>2]>>2]=c[(c[n>>2]|0)+152>>2];if((c[m>>2]|0)!=0){a=c[m>>2]|0;i=o;return a|0}if((c[p>>2]|0)<0){c[p>>2]=b[(c[n>>2]|0)+142>>1]|0}b[(c[n>>2]|0)+142>>1]=c[p>>2];ih(c[n>>2]|0);a=c[m>>2]|0;i=o;return a|0}function ch(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+12>>2]|0}function dh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+24>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function eh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=qh(c[d>>2]|0)|0;i=b;return a|0}function fh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;kh(c[(c[d>>2]|0)+88>>2]|0);lh(c[(c[d>>2]|0)+204>>2]|0);i=b;return}function gh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jh(c[d>>2]|0)|0;i=b;return}function hh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[(c[e>>2]|0)+40>>2]|0)!=0){rb[c[45284>>2]&31](c[(c[e>>2]|0)+40>>2]|0);c[(c[e>>2]|0)+40>>2]=0;c[(c[e>>2]|0)+44>>2]=0}c[(c[e>>2]|0)+20>>2]=c[f>>2];i=d;return}function ih(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return}function jh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;g=d;f=d+4|0;h=d+8|0;c[g>>2]=a;c[f>>2]=0;if((c[g>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}if((c[g>>2]|0)>>>0>=(c[3500>>2]|0)>>>0){if((c[g>>2]|0)>>>0<(c[3504>>2]|0)>>>0){pc(1,-1);c[h>>2]=c[g>>2];c[c[h>>2]>>2]=c[3512>>2];c[3512>>2]=c[h>>2];c[3516>>2]=(c[3516>>2]|0)+1;c[3520>>2]=(c[3516>>2]|0)<(c[3496>>2]|0)&1}else{b=6}}else{b=6}if((b|0)==6){c[f>>2]=_b(c[g>>2]|0)|0;pc(2,0-(c[f>>2]|0)|0);oc(c[g>>2]|0)}c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}function kh(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];while(1){if((c[d>>2]|0)==0){break}c[(c[d>>2]|0)+16>>2]=1;c[d>>2]=c[(c[d>>2]|0)+44>>2]}i=b;return}function lh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;mh(c[d>>2]|0,0);i=b;return}function mh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d;g=d+4|0;h=d+8|0;c[e>>2]=a;c[f>>2]=b;if((c[(c[e>>2]|0)+40>>2]|0)==0){i=d;return}c[g>>2]=c[c[e>>2]>>2];while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[(c[g>>2]|0)+32>>2];if((c[(c[g>>2]|0)+20>>2]|0)>>>0>(c[f>>2]|0)>>>0){nh(c[g>>2]|0)}c[g>>2]=c[h>>2]}if((c[f>>2]|0)==0){if((c[(c[e>>2]|0)+44>>2]|0)!=0){aL(c[(c[(c[e>>2]|0)+44>>2]|0)+4>>2]|0,0,c[(c[e>>2]|0)+20>>2]|0)|0;c[f>>2]=1}}sb[c[45280>>2]&7](c[(c[e>>2]|0)+40>>2]|0,(c[f>>2]|0)+1|0);i=d;return}function nh(a){a=a|0;var d=0,f=0;d=i;i=i+16|0;f=d;c[f>>2]=a;if((b[(c[f>>2]|0)+24>>1]&2|0)==0){i=d;return}oh(c[f>>2]|0);a=(c[f>>2]|0)+24|0;b[a>>1]=e[a>>1]&-7;if((b[(c[f>>2]|0)+26>>1]|0)!=0){i=d;return}ph(c[f>>2]|0);i=d;return}function oh(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;f=g+8|0;h=g;j=g+4|0;c[f>>2]=e;c[h>>2]=c[(c[f>>2]|0)+28>>2];if((c[(c[h>>2]|0)+8>>2]|0)==(c[f>>2]|0)){c[j>>2]=c[(c[f>>2]|0)+36>>2];while(1){if((c[j>>2]|0)!=0){k=(b[(c[j>>2]|0)+24>>1]&4|0)!=0}else{k=0}e=c[j>>2]|0;if(!k){break}c[j>>2]=c[e+36>>2]}c[(c[h>>2]|0)+8>>2]=e}j=c[(c[f>>2]|0)+36>>2]|0;if((c[(c[f>>2]|0)+32>>2]|0)!=0){c[(c[(c[f>>2]|0)+32>>2]|0)+36>>2]=j}else{c[(c[h>>2]|0)+4>>2]=j}j=c[(c[f>>2]|0)+32>>2]|0;if((c[(c[f>>2]|0)+36>>2]|0)!=0){c[(c[(c[f>>2]|0)+36>>2]|0)+32>>2]=j}else{c[c[h>>2]>>2]=j;if((c[c[h>>2]>>2]|0)==0){if((d[(c[h>>2]|0)+28>>0]|0|0)!=0){a[(c[h>>2]|0)+29>>0]=2}}}c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+36>>2]=0;i=g;return}function ph(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;c[e>>2]=c[(c[f>>2]|0)+28>>2];if((a[(c[e>>2]|0)+28>>0]|0)==0){i=d;return}if((c[(c[f>>2]|0)+20>>2]|0)==1){c[(c[e>>2]|0)+44>>2]=0}vb[c[45272>>2]&63](c[(c[e>>2]|0)+40>>2]|0,c[c[f>>2]>>2]|0,0);i=d;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;b=d;e=d+4|0;c[f>>2]=a;c[b>>2]=0;Xg(7,c[f>>2]|0);if((c[f>>2]|0)<=(c[3488>>2]|0)){c[b>>2]=c[3512>>2];if((c[b>>2]|0)!=0){c[3512>>2]=c[c[3512>>2]>>2];c[3516>>2]=(c[3516>>2]|0)+ -1;c[3520>>2]=(c[3516>>2]|0)<(c[3496>>2]|0)&1;pc(1,1)}}if((c[b>>2]|0)!=0){f=c[b>>2]|0;i=d;return f|0}c[b>>2]=nc(c[f>>2]|0)|0;if((c[b>>2]|0)==0){f=c[b>>2]|0;i=d;return f|0}c[e>>2]=_b(c[b>>2]|0)|0;pc(2,c[e>>2]|0);f=c[b>>2]|0;i=d;return f|0}function rh(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=Sc(512)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}c[c[d>>2]>>2]=c[e>>2];e=c[d>>2]|0;i=b;return e|0}function sh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+32|0;h=m+28|0;j=m;k=m+4|0;l=m+8|0;p=m+12|0;o=m+16|0;n=m+20|0;f=m+24|0;c[j>>2]=b;c[k>>2]=e;if((c[j>>2]|0)==0){c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}c[k>>2]=(c[k>>2]|0)+ -1;while(1){if(!((c[c[j>>2]>>2]|0)>>>0>4e3)){break}if((c[(c[j>>2]|0)+8>>2]|0)==0){break}c[p>>2]=((c[k>>2]|0)>>>0)/((c[(c[j>>2]|0)+8>>2]|0)>>>0)|0;c[k>>2]=((c[k>>2]|0)>>>0)%((c[(c[j>>2]|0)+8>>2]|0)>>>0)|0;if((c[(c[j>>2]|0)+12+(c[p>>2]<<2)>>2]|0)==0){b=rh(c[(c[j>>2]|0)+8>>2]|0)|0;c[(c[j>>2]|0)+12+(c[p>>2]<<2)>>2]=b;if((c[(c[j>>2]|0)+12+(c[p>>2]<<2)>>2]|0)==0){g=8;break}}c[j>>2]=c[(c[j>>2]|0)+12+(c[p>>2]<<2)>>2]}if((g|0)==8){c[h>>2]=7;b=c[h>>2]|0;i=m;return b|0}p=c[k>>2]|0;if((c[c[j>>2]>>2]|0)>>>0<=4e3){b=(c[j>>2]|0)+12+(((c[k>>2]|0)>>>0)/8|0)|0;a[b>>0]=d[b>>0]|0|1<<(p&7);c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}c[k>>2]=p+1;c[l>>2]=(p>>>0)%125|0;a:do{if((c[(c[j>>2]|0)+12+(c[l>>2]<<2)>>2]|0)!=0){while(1){if((c[(c[j>>2]|0)+12+(c[l>>2]<<2)>>2]|0)==(c[k>>2]|0)){break}b=(c[l>>2]|0)+1|0;c[l>>2]=b;c[l>>2]=(c[l>>2]|0)>>>0>=125?0:b;if((c[(c[j>>2]|0)+12+(c[l>>2]<<2)>>2]|0)==0){g=17;break a}}c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}else{if(!((c[(c[j>>2]|0)+4>>2]|0)>>>0<124)){g=17}}}while(0);if((g|0)==17){if((c[(c[j>>2]|0)+4>>2]|0)>>>0>=62){c[f>>2]=$e(0,500)|0;if((c[f>>2]|0)==0){c[h>>2]=7;b=c[h>>2]|0;i=m;return b|0}fL(c[f>>2]|0,(c[j>>2]|0)+12|0,500)|0;aL((c[j>>2]|0)+12|0,0,500)|0;c[(c[j>>2]|0)+8>>2]=(((c[c[j>>2]>>2]|0)+125-1|0)>>>0)/125|0;c[n>>2]=sh(c[j>>2]|0,c[k>>2]|0)|0;c[o>>2]=0;while(1){if(!((c[o>>2]|0)>>>0<125)){break}if((c[(c[f>>2]|0)+(c[o>>2]<<2)>>2]|0)!=0){b=sh(c[j>>2]|0,c[(c[f>>2]|0)+(c[o>>2]<<2)>>2]|0)|0;c[n>>2]=c[n>>2]|b}c[o>>2]=(c[o>>2]|0)+1}cc(0,c[f>>2]|0);c[h>>2]=c[n>>2];b=c[h>>2]|0;i=m;return b|0}}b=(c[j>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+1;c[(c[j>>2]|0)+12+(c[l>>2]<<2)>>2]=c[k>>2];c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}function th(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+32|0;j=n+24|0;k=n;o=n+4|0;p=n+8|0;m=n+12|0;l=n+16|0;g=n+20|0;c[j>>2]=b;c[k>>2]=e;c[o>>2]=f;if((c[j>>2]|0)==0){i=n;return}c[k>>2]=(c[k>>2]|0)+ -1;while(1){if((c[(c[j>>2]|0)+8>>2]|0)==0){break}c[p>>2]=((c[k>>2]|0)>>>0)/((c[(c[j>>2]|0)+8>>2]|0)>>>0)|0;c[k>>2]=((c[k>>2]|0)>>>0)%((c[(c[j>>2]|0)+8>>2]|0)>>>0)|0;c[j>>2]=c[(c[j>>2]|0)+12+(c[p>>2]<<2)>>2];if((c[j>>2]|0)==0){h=16;break}}if((h|0)==16){i=n;return}if((c[c[j>>2]>>2]|0)>>>0<=4e3){b=(c[j>>2]|0)+12+(((c[k>>2]|0)>>>0)/8|0)|0;a[b>>0]=(d[b>>0]|0)&~(1<<(c[k>>2]&7));i=n;return}c[l>>2]=c[o>>2];fL(c[l>>2]|0,(c[j>>2]|0)+12|0,500)|0;aL((c[j>>2]|0)+12|0,0,500)|0;c[(c[j>>2]|0)+4>>2]=0;c[m>>2]=0;while(1){if(!((c[m>>2]|0)>>>0<125)){break}if((c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)!=0){if((c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)!=((c[k>>2]|0)+1|0)){c[g>>2]=(((c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)-1|0)>>>0)%125|0;b=(c[j>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+1;while(1){if((c[(c[j>>2]|0)+12+(c[g>>2]<<2)>>2]|0)==0){break}b=(c[g>>2]|0)+1|0;c[g>>2]=b;c[g>>2]=(c[g>>2]|0)>>>0>=125?0:b}c[(c[j>>2]|0)+12+(c[g>>2]<<2)>>2]=c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]}}c[m>>2]=(c[m>>2]|0)+1}i=n;return}function uh(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e;h=e+4|0;l=e+8|0;j=e+12|0;c[g>>2]=a;c[h>>2]=b;if((c[g>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}if((c[h>>2]|0)==0?1:(c[h>>2]|0)>>>0>(c[c[g>>2]>>2]|0)>>>0){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}c[h>>2]=(c[h>>2]|0)+ -1;while(1){if((c[(c[g>>2]|0)+8>>2]|0)==0){break}c[l>>2]=((c[h>>2]|0)>>>0)/((c[(c[g>>2]|0)+8>>2]|0)>>>0)|0;c[h>>2]=((c[h>>2]|0)>>>0)%((c[(c[g>>2]|0)+8>>2]|0)>>>0)|0;c[g>>2]=c[(c[g>>2]|0)+12+(c[l>>2]<<2)>>2];if((c[g>>2]|0)==0){k=8;break}}if((k|0)==8){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}k=c[h>>2]|0;if((c[c[g>>2]>>2]|0)>>>0<=4e3){c[f>>2]=((d[(c[g>>2]|0)+12+((k>>>0)/8|0)>>0]|0)&1<<(c[h>>2]&7)|0)!=0&1;a=c[f>>2]|0;i=e;return a|0}c[h>>2]=k+1;c[j>>2]=(k>>>0)%125|0;while(1){if((c[(c[g>>2]|0)+12+(c[j>>2]<<2)>>2]|0)==0){k=16;break}if((c[(c[g>>2]|0)+12+(c[j>>2]<<2)>>2]|0)==(c[h>>2]|0)){k=14;break}c[j>>2]=(((c[j>>2]|0)+1|0)>>>0)%125|0}if((k|0)==14){c[f>>2]=1;a=c[f>>2]|0;i=e;return a|0}else if((k|0)==16){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}return 0}function vh(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[c[b>>2]>>2]|0}function wh(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((c[e>>2]|0)==0){i=b;return}a:do{if((c[(c[e>>2]|0)+8>>2]|0)!=0){c[d>>2]=0;while(1){if(!((c[d>>2]|0)>>>0<125)){break a}wh(c[(c[e>>2]|0)+12+(c[d>>2]<<2)>>2]|0);c[d>>2]=(c[d>>2]|0)+1}}}while(0);oc(c[e>>2]|0);i=b;return}function xh(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+32|0;n=j+12|0;k=j+16|0;m=j+4|0;l=j+8|0;h=j;c[n>>2]=b;a[k>>0]=e;c[m>>2]=f;c[l>>2]=g;g=c[n>>2]|0;if((c[m>>2]|0)!=0){c[h>>2]=Dh(g,c[m>>2]|0,c[l>>2]|0)|0}else{c[h>>2]=c[g+8>>2]}if((c[h>>2]|0)==0){n=c[h>>2]|0;i=j;return n|0}c[h>>2]=(c[h>>2]|0)+(((d[k>>0]|0)-1|0)*20|0);n=c[h>>2]|0;i=j;return n|0}function yh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;g=b+20|0;d=b;f=b+4|0;e=b+8|0;h=b+12|0;j=b+16|0;c[g>>2]=a;c[f>>2]=0;c[d>>2]=c[(c[g>>2]|0)+16>>2];while(1){if((c[f>>2]|0)>=(c[(c[g>>2]|0)+20>>2]|0)){break}a:do{if((c[(c[d>>2]|0)+4>>2]|0)!=0){Uc(c[(c[d>>2]|0)+4>>2]|0);c[e>>2]=c[(c[(c[d>>2]|0)+12>>2]|0)+16>>2];while(1){if((c[e>>2]|0)==0){break a}c[h>>2]=c[(c[e>>2]|0)+8>>2];c[j>>2]=c[(c[h>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break}if((c[(c[j>>2]|0)+40>>2]|0)!=0){if((c[(c[(c[j>>2]|0)+40>>2]|0)+12>>2]|0)==(c[g>>2]|0)){Ch(c[(c[j>>2]|0)+40>>2]|0);c[(c[j>>2]|0)+40>>2]=0}}c[j>>2]=c[(c[j>>2]|0)+20>>2]}c[e>>2]=c[c[e>>2]>>2]}}}while(0);c[f>>2]=(c[f>>2]|0)+1;c[d>>2]=(c[d>>2]|0)+16}i=b;return}function zh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;g=e+16|0;h=e;j=e+4|0;f=e+8|0;k=e+12|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if((c[(c[g>>2]|0)+12>>2]|0)!=0){a=Ah(c[h>>2]|0,c[j>>2]|0)|0;c[k>>2]=(a>>>0)%((c[c[g>>2]>>2]|0)>>>0)|0}else{c[k>>2]=0}c[f>>2]=Bh(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if((c[f>>2]|0)==0){a=0;i=e;return a|0}a=c[(c[f>>2]|0)+8>>2]|0;i=e;return a|0}function Ah(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=0;while(1){b=c[f>>2]|0;if((c[g>>2]|0)<=0){break}b=b<<3^c[f>>2];a=c[h>>2]|0;c[h>>2]=a+1;c[f>>2]=b^(d[784+(d[a>>0]|0)>>0]|0);c[g>>2]=(c[g>>2]|0)+ -1}i=e;return b|0}function Bh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;f=g+28|0;o=g;k=g+4|0;l=g+8|0;n=g+12|0;h=g+16|0;m=g+20|0;j=g+24|0;c[o>>2]=a;c[k>>2]=b;c[l>>2]=d;c[n>>2]=e;if((c[(c[o>>2]|0)+12>>2]|0)!=0){c[j>>2]=(c[(c[o>>2]|0)+12>>2]|0)+(c[n>>2]<<3);c[h>>2]=c[(c[j>>2]|0)+4>>2];c[m>>2]=c[c[j>>2]>>2]}else{c[h>>2]=c[(c[o>>2]|0)+8>>2];c[m>>2]=c[(c[o>>2]|0)+4>>2]}while(1){a=c[m>>2]|0;c[m>>2]=a+ -1;if((a|0)==0){j=10;break}if((c[h>>2]|0)==0){j=10;break}if((c[(c[h>>2]|0)+16>>2]|0)==(c[l>>2]|0)){if((Tb(c[(c[h>>2]|0)+12>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)==0){j=8;break}}c[h>>2]=c[c[h>>2]>>2]}if((j|0)==8){c[f>>2]=c[h>>2];a=c[f>>2]|0;i=g;return a|0}else if((j|0)==10){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}return 0}function Ch(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}a=c[d>>2]|0;c[a>>2]=(c[a>>2]|0)+ -1;if((c[c[d>>2]>>2]|0)!=0){i=b;return}cc(0,c[d>>2]|0);i=b;return}function Dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;l=f+20|0;j=f;m=f+4|0;g=f+8|0;k=f+12|0;h=f+16|0;c[l>>2]=b;c[j>>2]=d;c[m>>2]=e;c[k>>2]=Ub(c[j>>2]|0)|0;c[g>>2]=zh((c[l>>2]|0)+420|0,c[j>>2]|0,c[k>>2]|0)|0;if(0!=(c[g>>2]|0)){b=c[g>>2]|0;i=f;return b|0}if((c[m>>2]|0)==0){b=c[g>>2]|0;i=f;return b|0}c[g>>2]=ve(c[l>>2]|0,61+(c[k>>2]|0)|0)|0;if((c[g>>2]|0)==0){b=c[g>>2]|0;i=f;return b|0}c[h>>2]=0;c[c[g>>2]>>2]=(c[g>>2]|0)+60;a[(c[g>>2]|0)+4>>0]=1;c[(c[g>>2]|0)+20>>2]=(c[g>>2]|0)+60;a[(c[g>>2]|0)+24>>0]=2;c[(c[g>>2]|0)+40>>2]=(c[g>>2]|0)+60;a[(c[g>>2]|0)+44>>0]=3;fL(c[c[g>>2]>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;a[(c[c[g>>2]>>2]|0)+(c[k>>2]|0)>>0]=0;c[h>>2]=Eh((c[l>>2]|0)+420|0,c[c[g>>2]>>2]|0,c[k>>2]|0,c[g>>2]|0)|0;if((c[h>>2]|0)==0){b=c[g>>2]|0;i=f;return b|0}a[(c[l>>2]|0)+64>>0]=1;cc(c[l>>2]|0,c[h>>2]|0);c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}function Eh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+48|0;f=g+32|0;h=g+28|0;n=g+24|0;p=g+20|0;l=g+16|0;j=g+8|0;o=g+4|0;k=g;m=g+12|0;c[h>>2]=a;c[n>>2]=b;c[p>>2]=d;c[l>>2]=e;if((c[c[h>>2]>>2]|0)!=0){a=Ah(c[n>>2]|0,c[p>>2]|0)|0;c[j>>2]=(a>>>0)%((c[c[h>>2]>>2]|0)>>>0)|0}else{c[j>>2]=0}c[o>>2]=Bh(c[h>>2]|0,c[n>>2]|0,c[p>>2]|0,c[j>>2]|0)|0;if((c[o>>2]|0)!=0){c[m>>2]=c[(c[o>>2]|0)+8>>2];if((c[l>>2]|0)==0){Fh(c[h>>2]|0,c[o>>2]|0,c[j>>2]|0)}else{c[(c[o>>2]|0)+8>>2]=c[l>>2];c[(c[o>>2]|0)+12>>2]=c[n>>2]}c[f>>2]=c[m>>2];a=c[f>>2]|0;i=g;return a|0}if((c[l>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}c[k>>2]=nc(20)|0;if((c[k>>2]|0)==0){c[f>>2]=c[l>>2];a=c[f>>2]|0;i=g;return a|0}c[(c[k>>2]|0)+12>>2]=c[n>>2];c[(c[k>>2]|0)+16>>2]=c[p>>2];c[(c[k>>2]|0)+8>>2]=c[l>>2];a=(c[h>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+1;if((c[(c[h>>2]|0)+4>>2]|0)>>>0>=10){if((c[(c[h>>2]|0)+4>>2]|0)>>>0>c[c[h>>2]>>2]<<1>>>0){if((Gh(c[h>>2]|0,c[(c[h>>2]|0)+4>>2]<<1)|0)!=0){a=Ah(c[n>>2]|0,c[p>>2]|0)|0;c[j>>2]=(a>>>0)%((c[c[h>>2]>>2]|0)>>>0)|0}}}l=c[h>>2]|0;if((c[(c[h>>2]|0)+12>>2]|0)!=0){Hh(l,(c[(c[h>>2]|0)+12>>2]|0)+(c[j>>2]<<3)|0,c[k>>2]|0)}else{Hh(l,0,c[k>>2]|0)}c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}function Fh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;f=j+12|0;e=j;h=j+4|0;g=j+8|0;c[f>>2]=a;c[e>>2]=b;c[h>>2]=d;d=c[c[e>>2]>>2]|0;if((c[(c[e>>2]|0)+4>>2]|0)!=0){c[c[(c[e>>2]|0)+4>>2]>>2]=d}else{c[(c[f>>2]|0)+8>>2]=d}if((c[c[e>>2]>>2]|0)!=0){c[(c[c[e>>2]>>2]|0)+4>>2]=c[(c[e>>2]|0)+4>>2]}if((c[(c[f>>2]|0)+12>>2]|0)!=0){c[g>>2]=(c[(c[f>>2]|0)+12>>2]|0)+(c[h>>2]<<3);if((c[(c[g>>2]|0)+4>>2]|0)==(c[e>>2]|0)){c[(c[g>>2]|0)+4>>2]=c[c[e>>2]>>2]}a=c[g>>2]|0;c[a>>2]=(c[a>>2]|0)+ -1}oc(c[e>>2]|0);a=(c[f>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+ -1;if((c[(c[f>>2]|0)+4>>2]|0)!=0){i=j;return}Kh(c[f>>2]|0);i=j;return}function Gh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+24|0;k=d;g=d+4|0;l=d+8|0;f=d+12|0;j=d+16|0;h=d+20|0;c[k>>2]=a;c[g>>2]=b;c[g>>2]=c[g>>2]<<3>>>0>1024?128:b;if((c[g>>2]|0)==(c[c[k>>2]>>2]|0)){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}Ih();c[l>>2]=nc(c[g>>2]<<3)|0;Jh();if((c[l>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}oc(c[(c[k>>2]|0)+12>>2]|0);c[(c[k>>2]|0)+12>>2]=c[l>>2];a=((_b(c[l>>2]|0)|0)>>>0)/8|0;c[g>>2]=a;c[c[k>>2]>>2]=a;aL(c[l>>2]|0,0,c[g>>2]<<3|0)|0;c[f>>2]=c[(c[k>>2]|0)+8>>2];c[(c[k>>2]|0)+8>>2]=0;while(1){if((c[f>>2]|0)==0){break}a=Ah(c[(c[f>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+16>>2]|0)|0;c[h>>2]=(a>>>0)%((c[g>>2]|0)>>>0)|0;c[j>>2]=c[c[f>>2]>>2];Hh(c[k>>2]|0,(c[l>>2]|0)+(c[h>>2]<<3)|0,c[f>>2]|0);c[f>>2]=c[j>>2]}c[e>>2]=1;a=c[e>>2]|0;i=d;return a|0}function Hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;f=g+12|0;j=g;e=g+4|0;h=g+8|0;c[f>>2]=a;c[j>>2]=b;c[e>>2]=d;if((c[j>>2]|0)!=0){if((c[c[j>>2]>>2]|0)!=0){d=c[(c[j>>2]|0)+4>>2]|0}else{d=0}c[h>>2]=d;a=c[j>>2]|0;c[a>>2]=(c[a>>2]|0)+1;c[(c[j>>2]|0)+4>>2]=c[e>>2]}else{c[h>>2]=0}if((c[h>>2]|0)==0){c[c[e>>2]>>2]=c[(c[f>>2]|0)+8>>2];if((c[(c[f>>2]|0)+8>>2]|0)!=0){c[(c[(c[f>>2]|0)+8>>2]|0)+4>>2]=c[e>>2]}c[(c[e>>2]|0)+4>>2]=0;c[(c[f>>2]|0)+8>>2]=c[e>>2];i=g;return}c[c[e>>2]>>2]=c[h>>2];c[(c[e>>2]|0)+4>>2]=c[(c[h>>2]|0)+4>>2];j=c[e>>2]|0;if((c[(c[h>>2]|0)+4>>2]|0)!=0){c[c[(c[h>>2]|0)+4>>2]>>2]=j}else{c[(c[f>>2]|0)+8>>2]=j}c[(c[h>>2]|0)+4>>2]=c[e>>2];i=g;return}function Ih(){var a=0;a=i;if((c[882]|0)==0){i=a;return}wb[c[882]&0]();i=a;return}function Jh(){var a=0;a=i;if((c[3532>>2]|0)==0){i=a;return}wb[c[3532>>2]&0]();i=a;return}function Kh(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;b=d+8|0;e=d;f=d+4|0;c[b>>2]=a;c[e>>2]=c[(c[b>>2]|0)+8>>2];c[(c[b>>2]|0)+8>>2]=0;oc(c[(c[b>>2]|0)+12>>2]|0);c[(c[b>>2]|0)+12>>2]=0;c[c[b>>2]>>2]=0;while(1){if((c[e>>2]|0)==0){break}c[f>>2]=c[c[e>>2]>>2];oc(c[e>>2]|0);c[e>>2]=c[f>>2]}c[(c[b>>2]|0)+4>>2]=0;i=d;return}function Lh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+12>>2]=0;i=b;return}function Mh(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;o=m+24|0;n=m;g=m+4|0;l=m+8|0;j=m+12|0;h=m+16|0;k=m+20|0;c[o>>2]=a;c[n>>2]=b;c[g>>2]=d;c[l>>2]=e;c[j>>2]=f;c[k>>2]=(c[n>>2]|0)<(c[l>>2]|0)?c[n>>2]|0:c[l>>2]|0;c[h>>2]=XK(c[g>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if((c[h>>2]|0)!=0){a=c[h>>2]|0;i=m;return a|0}if((c[o>>2]|0)!=0){if((lr((c[g>>2]|0)+(c[k>>2]|0)|0,(c[n>>2]|0)-(c[k>>2]|0)|0)|0)!=0){if((lr((c[j>>2]|0)+(c[k>>2]|0)|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0)!=0){a=c[h>>2]|0;i=m;return a|0}}}c[h>>2]=(c[n>>2]|0)-(c[l>>2]|0);a=c[h>>2]|0;i=m;return a|0}function Nh(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;j=g;m=g+4|0;k=g+8|0;l=g+12|0;h=g+16|0;c[g+20>>2]=a;c[j>>2]=b;c[m>>2]=d;c[k>>2]=e;c[l>>2]=f;c[h>>2]=Tb(c[m>>2]|0,c[l>>2]|0,(c[j>>2]|0)<(c[k>>2]|0)?c[j>>2]|0:c[k>>2]|0)|0;if(0!=(c[h>>2]|0)){m=c[h>>2]|0;i=g;return m|0}c[h>>2]=(c[j>>2]|0)-(c[k>>2]|0);m=c[h>>2]|0;i=g;return m|0}function Oh(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;z=i;i=i+128|0;k=z;C=z+72|0;O=z+76|0;x=z+80|0;l=z+84|0;L=z+88|0;D=z+96|0;A=z+100|0;y=z+104|0;B=z+108|0;n=z+112|0;s=z+116|0;v=z+120|0;N=z+68|0;o=z+64|0;t=z+92|0;w=z+28|0;r=z+24|0;M=z+8|0;u=z+12|0;p=z+16|0;m=z+20|0;q=z+56|0;G=z+32|0;J=z+36|0;H=z+40|0;I=z+44|0;F=z+48|0;E=z+52|0;K=z+60|0;c[O>>2]=b;c[x>>2]=e;c[l>>2]=f;c[L>>2]=g;c[D>>2]=h;c[A>>2]=j;c[y>>2]=0;c[B>>2]=c[c[l>>2]>>2];c[n>>2]=c[O>>2];c[N>>2]=Ub(c[x>>2]|0)|0;if((c[B>>2]&64|0)!=0){j=3}else{if((c[45148>>2]|0)!=0){j=3}else{j=83}}a:do{if((j|0)==3){if((c[N>>2]|0)>=5){if((XK(c[x>>2]|0,11216,5)|0)==0){c[r>>2]=0;c[M>>2]=(c[N>>2]|0)+2;c[B>>2]=c[B>>2]|64;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[N>>2]|0)){break}c[M>>2]=(c[M>>2]|0)+((a[(c[x>>2]|0)+(c[w>>2]|0)>>0]|0)==38&1);c[w>>2]=(c[w>>2]|0)+1}c[s>>2]=mc(c[M>>2]|0)|0;if((c[s>>2]|0)==0){c[C>>2]=7;O=c[C>>2]|0;i=z;return O|0}c[w>>2]=5;do{if((a[(c[x>>2]|0)+5>>0]|0)==47){if((a[(c[x>>2]|0)+6>>0]|0)==47){c[w>>2]=7;while(1){if((a[(c[x>>2]|0)+(c[w>>2]|0)>>0]|0)!=0){N=(a[(c[x>>2]|0)+(c[w>>2]|0)>>0]|0)!=47}else{N=0}M=c[w>>2]|0;if(!N){break}c[w>>2]=M+1}if((M|0)!=7){if((c[w>>2]|0)==16){if((XK(11224,(c[x>>2]|0)+7|0,9)|0)==0){break}}O=(c[x>>2]|0)+7|0;c[k>>2]=(c[w>>2]|0)-7;c[k+4>>2]=O;O=wc(11240,k)|0;c[c[A>>2]>>2]=O;c[y>>2]=1;break a}}}}while(0);c[t>>2]=0;b:while(1){O=a[(c[x>>2]|0)+(c[w>>2]|0)>>0]|0;a[v>>0]=O;if((O<<24>>24|0)==0){break}if((a[v>>0]|0)==35){break}c[w>>2]=(c[w>>2]|0)+1;do{if((a[v>>0]|0)==37){if((a[136+(d[(c[x>>2]|0)+(c[w>>2]|0)>>0]|0)>>0]&8|0)!=0){if((a[136+(d[(c[x>>2]|0)+((c[w>>2]|0)+1)>>0]|0)>>0]&8|0)!=0){O=c[w>>2]|0;c[w>>2]=O+1;c[u>>2]=((kr(a[(c[x>>2]|0)+O>>0]|0)|0)&255)<<4;O=c[w>>2]|0;c[w>>2]=O+1;O=(kr(a[(c[x>>2]|0)+O>>0]|0)|0)&255;c[u>>2]=(c[u>>2]|0)+O;if((c[u>>2]|0)!=0){a[v>>0]=c[u>>2];break}while(1){O=a[(c[x>>2]|0)+(c[w>>2]|0)>>0]|0;a[v>>0]=O;if((O<<24>>24|0)==0){continue b}if((a[v>>0]|0)==35){continue b}if((c[t>>2]|0)==0){if((a[v>>0]|0)==63){continue b}}if((c[t>>2]|0)==1){if((a[v>>0]|0)==61){continue b}if((a[v>>0]|0)==38){continue b}}if((c[t>>2]|0)==2){if((a[v>>0]|0)==38){continue b}}c[w>>2]=(c[w>>2]|0)+1}}else{j=39}}else{j=39}}else{j=39}}while(0);c:do{if((j|0)==39){j=0;do{if((c[t>>2]|0)==1){if((a[v>>0]|0)!=38){if((a[v>>0]|0)!=61){break}}if((a[(c[s>>2]|0)+((c[r>>2]|0)-1)>>0]|0)==0){while(1){if((a[(c[x>>2]|0)+(c[w>>2]|0)>>0]|0)==0){continue b}if((a[(c[x>>2]|0)+(c[w>>2]|0)>>0]|0)==35){continue b}if((a[(c[x>>2]|0)+((c[w>>2]|0)-1)>>0]|0)==38){continue b}c[w>>2]=(c[w>>2]|0)+1}}else{if((a[v>>0]|0)==38){O=c[r>>2]|0;c[r>>2]=O+1;a[(c[s>>2]|0)+O>>0]=0}else{c[t>>2]=2}a[v>>0]=0;break c}}}while(0);if((c[t>>2]|0)==0){if((a[v>>0]|0)!=63){j=53}}else{j=53}if((j|0)==53){j=0;if((c[t>>2]|0)!=2){break}if((a[v>>0]|0)!=38){break}}a[v>>0]=0;c[t>>2]=1}}while(0);b=a[v>>0]|0;O=c[r>>2]|0;c[r>>2]=O+1;a[(c[s>>2]|0)+O>>0]=b}if((c[t>>2]|0)==1){O=c[r>>2]|0;c[r>>2]=O+1;a[(c[s>>2]|0)+O>>0]=0}O=c[r>>2]|0;c[r>>2]=O+1;a[(c[s>>2]|0)+O>>0]=0;O=c[r>>2]|0;c[r>>2]=O+1;a[(c[s>>2]|0)+O>>0]=0;O=(Ub(c[s>>2]|0)|0)+1|0;c[o>>2]=(c[s>>2]|0)+O;while(1){if((a[c[o>>2]>>0]|0)==0){j=86;break a}c[p>>2]=Ub(c[o>>2]|0)|0;c[m>>2]=(c[o>>2]|0)+((c[p>>2]|0)+1);c[q>>2]=Ub(c[m>>2]|0)|0;if((c[p>>2]|0)==3){if((XK(11272,c[o>>2]|0,3)|0)==0){c[n>>2]=c[m>>2]}else{j=64}}else{j=64}if((j|0)==64){j=0;c[G>>2]=0;c[J>>2]=0;c[H>>2]=0;c[I>>2]=0;if((c[p>>2]|0)==5){if((XK(11280,c[o>>2]|0,5)|0)==0){c[H>>2]=393216;c[G>>2]=11288;c[I>>2]=c[H>>2];c[J>>2]=11280}}if((c[p>>2]|0)==4){if((XK(11328,c[o>>2]|0,4)|0)==0){c[H>>2]=135;c[G>>2]=11336;c[I>>2]=c[H>>2]&c[B>>2];c[J>>2]=11408}}if((c[G>>2]|0)!=0){c[E>>2]=0;c[F>>2]=0;while(1){if((c[(c[G>>2]|0)+(c[F>>2]<<3)>>2]|0)==0){break}c[K>>2]=c[(c[G>>2]|0)+(c[F>>2]<<3)>>2];O=c[q>>2]|0;if((O|0)==(Ub(c[K>>2]|0)|0)){if(0==(XK(c[m>>2]|0,c[K>>2]|0,c[q>>2]|0)|0)){j=75;break}}c[F>>2]=(c[F>>2]|0)+1}if((j|0)==75){j=0;c[E>>2]=c[(c[G>>2]|0)+(c[F>>2]<<3)+4>>2]}if((c[E>>2]|0)==0){j=78;break}if((c[E>>2]&-129|0)>(c[I>>2]|0)){j=80;break}c[B>>2]=c[B>>2]&~c[H>>2]|c[E>>2]}}c[o>>2]=(c[m>>2]|0)+((c[q>>2]|0)+1)}if((j|0)==78){O=c[m>>2]|0;c[k>>2]=c[J>>2];c[k+4>>2]=O;O=wc(11416,k)|0;c[c[A>>2]>>2]=O;c[y>>2]=1;break}else if((j|0)==80){O=c[m>>2]|0;c[k>>2]=c[J>>2];c[k+4>>2]=O;O=wc(11440,k)|0;c[c[A>>2]>>2]=O;c[y>>2]=3;break}}else{j=83}}else{j=83}}}while(0);do{if((j|0)==83){c[s>>2]=mc((c[N>>2]|0)+2|0)|0;if((c[s>>2]|0)!=0){fL(c[s>>2]|0,c[x>>2]|0,c[N>>2]|0)|0;a[(c[s>>2]|0)+(c[N>>2]|0)>>0]=0;a[(c[s>>2]|0)+((c[N>>2]|0)+1)>>0]=0;c[B>>2]=c[B>>2]&-65;j=86;break}c[C>>2]=7;O=c[C>>2]|0;i=z;return O|0}}while(0);if((j|0)==86){O=dc(c[n>>2]|0)|0;c[c[L>>2]>>2]=O;if((c[c[L>>2]>>2]|0)==0){c[k>>2]=c[n>>2];O=wc(11464,k)|0;c[c[A>>2]>>2]=O;c[y>>2]=1}}if((c[y>>2]|0)!=0){oc(c[s>>2]|0);c[s>>2]=0}c[c[l>>2]>>2]=c[B>>2];c[c[D>>2]>>2]=c[s>>2];c[C>>2]=c[y>>2];O=c[C>>2]|0;i=z;return O|0}function Ph(f,g,h,j,k,l){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;m=i;i=i+192|0;r=m+56|0;x=m+44|0;y=m+48|0;w=m+52|0;q=m+60|0;v=m+64|0;z=m+68|0;n=m+72|0;p=m+40|0;o=m;G=m+76|0;u=m+80|0;F=m+4|0;t=m+8|0;B=m+16|0;A=m+20|0;E=m+24|0;D=m+28|0;H=m+32|0;s=m+36|0;c[x>>2]=f;c[y>>2]=g;c[w>>2]=h;c[q>>2]=j;c[v>>2]=k;c[z>>2]=l;c[n>>2]=0;c[m+12>>2]=0;c[o>>2]=0;if((c[y>>2]|0)==0){l=1}else{l=(a[c[y>>2]>>0]|0)==0}c[F>>2]=l&1;if((c[y>>2]|0)!=0){if((YK(c[y>>2]|0,10824)|0)==0){l=1}else{C=5}}else{C=5}do{if((C|0)==5){if((c[F>>2]|0)!=0){if((po(c[w>>2]|0)|0)!=0){l=1;break}}l=(c[z>>2]&128|0)!=0}}while(0);c[t>>2]=l&1;if((c[t>>2]|0)!=0){c[v>>2]=c[v>>2]|2}do{if((c[z>>2]&256|0)!=0){if((c[t>>2]|0)==0){if((c[F>>2]|0)==0){break}}c[z>>2]=c[z>>2]&-257|512}}while(0);c[p>>2]=Sc(44)|0;if((c[p>>2]|0)==0){c[r>>2]=7;f=c[r>>2]|0;i=m;return f|0}a[(c[p>>2]|0)+8>>0]=0;c[c[p>>2]>>2]=c[w>>2];c[(c[p>>2]|0)+28>>2]=c[p>>2];c[(c[p>>2]|0)+32>>2]=1;do{if((c[F>>2]|0)==0){if((c[t>>2]|0)!=0){if((c[z>>2]&64|0)==0){break}}if((c[z>>2]&131072|0)!=0){c[B>>2]=(c[(c[x>>2]|0)+8>>2]|0)+1;c[A>>2]=nc(c[B>>2]|0)|0;a[(c[p>>2]|0)+9>>0]=1;if((c[A>>2]|0)==0){oc(c[p>>2]|0);c[r>>2]=7;f=c[r>>2]|0;i=m;return f|0}if((c[t>>2]|0)!=0){g=c[A>>2]|0;f=c[y>>2]|0;fL(g|0,f|0,(Ub(c[y>>2]|0)|0)+1|0)|0}else{c[o>>2]=qo(c[x>>2]|0,c[y>>2]|0,c[B>>2]|0,c[A>>2]|0)|0;if((c[o>>2]|0)!=0){oc(c[A>>2]|0);oc(c[p>>2]|0);c[r>>2]=c[o>>2];f=c[r>>2]|0;i=m;return f|0}}c[n>>2]=c[2710];while(1){if((c[n>>2]|0)==0){break}f=c[A>>2]|0;if(0==(YK(f,Sg(c[c[n>>2]>>2]|0,0)|0)|0)){f=ro(c[c[n>>2]>>2]|0)|0;if((f|0)==(c[x>>2]|0)){C=30;break}}c[n>>2]=c[(c[n>>2]|0)+68>>2]}do{if((C|0)==30){c[E>>2]=(c[(c[w>>2]|0)+20>>2]|0)-1;while(1){if((c[E>>2]|0)<0){C=36;break}c[D>>2]=c[(c[(c[w>>2]|0)+16>>2]|0)+(c[E>>2]<<4)+4>>2];if((c[D>>2]|0)!=0){if((c[(c[D>>2]|0)+4>>2]|0)==(c[n>>2]|0)){break}}c[E>>2]=(c[E>>2]|0)+ -1}if((C|0)==36){c[(c[p>>2]|0)+4>>2]=c[n>>2];f=(c[n>>2]|0)+64|0;c[f>>2]=(c[f>>2]|0)+1;break}oc(c[A>>2]|0);oc(c[p>>2]|0);c[r>>2]=19;f=c[r>>2]|0;i=m;return f|0}}while(0);oc(c[A>>2]|0)}}}while(0);do{if((c[n>>2]|0)==0){c[n>>2]=Sc(84)|0;if((c[n>>2]|0)==0){c[o>>2]=7;break}c[o>>2]=so(c[x>>2]|0,c[n>>2]|0,c[y>>2]|0,76,c[v>>2]|0,c[z>>2]|0,14)|0;if((c[o>>2]|0)==0){f=(c[w>>2]|0)+40|0;uo(c[c[n>>2]>>2]|0,c[f>>2]|0,c[f+4>>2]|0);c[o>>2]=vo(c[c[n>>2]>>2]|0,100,u)|0}if((c[o>>2]|0)==0){a[(c[n>>2]|0)+16>>0]=c[v>>2];c[(c[n>>2]|0)+4>>2]=c[w>>2];wo(c[c[n>>2]>>2]|0,42,c[n>>2]|0);c[(c[p>>2]|0)+4>>2]=c[n>>2];c[(c[n>>2]|0)+8>>2]=0;c[(c[n>>2]|0)+12>>2]=0;if((yo(c[c[n>>2]>>2]|0)|0)<<24>>24!=0){f=(c[n>>2]|0)+22|0;b[f>>1]=e[f>>1]|1}c[(c[n>>2]|0)+32>>2]=d[u+16>>0]<<8|d[u+17>>0]<<16;if((c[(c[n>>2]|0)+32>>2]|0)>>>0<512){C=50}else{if((c[(c[n>>2]|0)+32>>2]|0)>>>0>65536){C=50}else{if(((c[(c[n>>2]|0)+32>>2]|0)-1&c[(c[n>>2]|0)+32>>2]|0)!=0){C=50}else{a[G>>0]=a[u+20>>0]|0;f=(c[n>>2]|0)+22|0;b[f>>1]=e[f>>1]|2;f=(zo(u+52|0)|0)!=0;a[(c[n>>2]|0)+17>>0]=f?1:0;f=(zo(u+64|0)|0)!=0;a[(c[n>>2]|0)+18>>0]=f?1:0}}}if((C|0)==50){c[(c[n>>2]|0)+32>>2]=0;if((c[y>>2]|0)!=0){if((c[t>>2]|0)==0){a[(c[n>>2]|0)+17>>0]=0;a[(c[n>>2]|0)+18>>0]=0}}a[G>>0]=0}c[o>>2]=bh(c[c[n>>2]>>2]|0,(c[n>>2]|0)+32|0,d[G>>0]|0)|0;if((c[o>>2]|0)==0){c[(c[n>>2]|0)+36>>2]=(c[(c[n>>2]|0)+32>>2]|0)-(d[G>>0]|0);if((a[(c[p>>2]|0)+9>>0]|0)!=0){c[(c[n>>2]|0)+64>>2]=1;c[(c[n>>2]|0)+68>>2]=c[2710];c[2710]=c[n>>2];C=58}else{C=58}}}}else{C=58}}while(0);if((C|0)==58){a:do{if((a[(c[p>>2]|0)+9>>0]|0)!=0){c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[(c[w>>2]|0)+20>>2]|0)){break a}f=c[(c[(c[w>>2]|0)+16>>2]|0)+(c[H>>2]<<4)+4>>2]|0;c[s>>2]=f;if((f|0)!=0){if((d[(c[s>>2]|0)+9>>0]|0)!=0){break}}c[H>>2]=(c[H>>2]|0)+1}while(1){if((c[(c[s>>2]|0)+24>>2]|0)==0){break}c[s>>2]=c[(c[s>>2]|0)+24>>2]}if((c[(c[p>>2]|0)+4>>2]|0)>>>0<(c[(c[s>>2]|0)+4>>2]|0)>>>0){c[(c[p>>2]|0)+20>>2]=c[s>>2];c[(c[p>>2]|0)+24>>2]=0;c[(c[s>>2]|0)+24>>2]=c[p>>2];break}while(1){if((c[(c[s>>2]|0)+20>>2]|0)!=0){u=(c[(c[(c[s>>2]|0)+20>>2]|0)+4>>2]|0)>>>0<(c[(c[p>>2]|0)+4>>2]|0)>>>0}else{u=0}t=c[(c[s>>2]|0)+20>>2]|0;if(!u){break}c[s>>2]=t}c[(c[p>>2]|0)+20>>2]=t;c[(c[p>>2]|0)+24>>2]=c[s>>2];if((c[(c[p>>2]|0)+20>>2]|0)!=0){c[(c[(c[p>>2]|0)+20>>2]|0)+24>>2]=c[p>>2]}c[(c[s>>2]|0)+20>>2]=c[p>>2]}}while(0);c[c[q>>2]>>2]=c[p>>2]}if((c[o>>2]|0)!=0){if((c[n>>2]|0)!=0){if((c[c[n>>2]>>2]|0)!=0){Ao(c[c[n>>2]>>2]|0)|0}}oc(c[n>>2]|0);oc(c[p>>2]|0);c[c[q>>2]>>2]=0}else{if((no(c[p>>2]|0,0,0)|0)==0){Bo(c[c[(c[p>>2]|0)+4>>2]>>2]|0,2e3)}}c[r>>2]=c[o>>2];f=c[r>>2]|0;i=m;return f|0}function Qh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;h=i;i=i+16|0;f=h+8|0;j=h;g=h+4|0;c[f>>2]=b;c[j>>2]=e;if((c[j>>2]|0)!=0){c[g>>2]=no(c[j>>2]|0,84,15)|0}else{c[g>>2]=ve(0,84)|0}if((c[g>>2]|0)==0){a[(c[f>>2]|0)+64>>0]=1;b=c[g>>2]|0;i=h;return b|0}if(0!=(d[(c[g>>2]|0)+76>>0]|0|0)){b=c[g>>2]|0;i=h;return b|0}Lh((c[g>>2]|0)+8|0);Lh((c[g>>2]|0)+24|0);Lh((c[g>>2]|0)+40|0);Lh((c[g>>2]|0)+56|0);a[(c[g>>2]|0)+77>>0]=1;b=c[g>>2]|0;i=h;return b|0}function Rh(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;c[f>>2]=qg(c[e>>2]|0,10816,2)|0;if((c[f>>2]|0)!=7){i=d;return}a[(c[e>>2]|0)+64>>0]=1;i=d;return}function Sh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+32|0;g=b;d=b+24|0;k=b+4|0;h=b+8|0;e=b+12|0;j=b+16|0;f=b+20|0;c[d>>2]=a;c[h>>2]=1;if((c[448]|0)==0){i=b;return}c[k>>2]=0;while(1){if((c[h>>2]|0)==0){break}if((c[k>>2]|0)>=(c[448]|0)){c[j>>2]=0;c[h>>2]=0}else{c[j>>2]=c[(c[1796>>2]|0)+(c[k>>2]<<2)>>2]}c[f>>2]=0;if((c[j>>2]|0)!=0){a=pb[c[j>>2]&31](c[d>>2]|0,f,10008)|0;c[e>>2]=a;if((a|0)!=0){l=c[d>>2]|0;a=c[e>>2]|0;c[g>>2]=c[f>>2];Rc(l,a,10776,g);c[h>>2]=0}}oc(c[f>>2]|0);c[k>>2]=(c[k>>2]|0)+1}i=b;return}function Th(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;d=b+20|0;f=b;e=b+4|0;g=b+8|0;j=b+12|0;h=b+16|0;c[f>>2]=a;c[e>>2]=0;c[g>>2]=0;c[j>>2]=0;c[h>>2]=0;c[e>>2]=Uh(c[f>>2]|0)|0;if((c[e>>2]|0)!=0){c[d>>2]=c[e>>2];j=c[d>>2]|0;i=b;return j|0}Vh(j);Wh(h);c[g>>2]=mc(20)|0;if((c[g>>2]|0)!=0){Xh(c[g>>2]|0,1,1)}else{c[e>>2]=7}do{if((c[e>>2]|0)==0){if((Yh(c[g>>2]|0,3672,7,c[j>>2]|0)|0)==0){if((Yh(c[g>>2]|0,3680,7,c[h>>2]|0)|0)==0){break}}c[e>>2]=7}}while(0);if(0==(c[e>>2]|0)){j=Zh(c[f>>2]|0,c[g>>2]|0,3688)|0;c[e>>2]=j;if(0==(j|0)){j=qg(c[f>>2]|0,3704,-1)|0;c[e>>2]=j;if(0==(j|0)){j=qg(c[f>>2]|0,3712,1)|0;c[e>>2]=j;if(0==(j|0)){j=qg(c[f>>2]|0,3720,1)|0;c[e>>2]=j;if(0==(j|0)){j=qg(c[f>>2]|0,3720,2)|0;c[e>>2]=j;if(0==(j|0)){j=qg(c[f>>2]|0,3736,1)|0;c[e>>2]=j;if(0==(j|0)){c[e>>2]=Kf(c[f>>2]|0,3752,3760,c[g>>2]|0,16)|0;if((c[e>>2]|0)==0){c[e>>2]=Kf(c[f>>2]|0,3856,3760,c[g>>2]|0,0)|0}if((c[e>>2]|0)==0){c[e>>2]=$h(c[f>>2]|0,c[g>>2]|0)|0}c[d>>2]=c[e>>2];j=c[d>>2]|0;i=b;return j|0}}}}}}}if((c[g>>2]|0)!=0){ai(c[g>>2]|0);oc(c[g>>2]|0)}c[d>>2]=c[e>>2];j=c[d>>2]|0;i=b;return j|0}function Uh(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=If(c[e>>2]|0,9872,9776,0)|0;i=d;return c[b>>2]|0}function Vh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[c[d>>2]>>2]=9744;i=b;return}function Wh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[c[d>>2]>>2]=9128;i=b;return}function Xh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f;j=f+5|0;h=f+4|0;c[g>>2]=b;a[j>>0]=d;a[h>>0]=e;a[c[g>>2]>>0]=a[j>>0]|0;a[(c[g>>2]|0)+1>>0]=a[h>>0]|0;c[(c[g>>2]|0)+8>>2]=0;c[(c[g>>2]|0)+4>>2]=0;c[(c[g>>2]|0)+12>>2]=0;c[(c[g>>2]|0)+16>>2]=0;i=f;return}function Yh(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+48|0;j=k+40|0;l=k+36|0;m=k+32|0;g=k+28|0;o=k+24|0;p=k+20|0;n=k+12|0;s=k+8|0;q=k+4|0;t=k;r=k+16|0;c[l>>2]=b;c[m>>2]=d;c[g>>2]=e;c[o>>2]=f;c[t>>2]=ri(a[c[l>>2]>>0]|0)|0;c[p>>2]=zb[c[t>>2]&127](c[m>>2]|0,c[g>>2]|0)|0;c[n>>2]=c[p>>2]&(c[(c[l>>2]|0)+12>>2]|0)-1;c[s>>2]=si(c[l>>2]|0,c[m>>2]|0,c[g>>2]|0,c[n>>2]|0)|0;if((c[s>>2]|0)!=0){c[r>>2]=c[(c[s>>2]|0)+8>>2];if((c[o>>2]|0)==0){Cn(c[l>>2]|0,c[s>>2]|0,c[n>>2]|0)}else{c[(c[s>>2]|0)+8>>2]=c[o>>2]}c[j>>2]=c[r>>2];t=c[j>>2]|0;i=k;return t|0}if((c[o>>2]|0)==0){c[j>>2]=0;t=c[j>>2]|0;i=k;return t|0}if((c[(c[l>>2]|0)+12>>2]|0)==0){if((Dn(c[l>>2]|0,8)|0)==0){h=10}}else{h=10}do{if((h|0)==10){if((c[(c[l>>2]|0)+4>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0)){if((Dn(c[l>>2]|0,c[(c[l>>2]|0)+12>>2]<<1)|0)!=0){break}}c[q>>2]=En(20)|0;if((c[q>>2]|0)==0){c[j>>2]=c[o>>2];t=c[j>>2]|0;i=k;return t|0}do{if((a[(c[l>>2]|0)+1>>0]|0)!=0){if((c[m>>2]|0)!=0){r=En(c[g>>2]|0)|0;c[(c[q>>2]|0)+12>>2]=r;r=c[q>>2]|0;if((c[(c[q>>2]|0)+12>>2]|0)!=0){fL(c[r+12>>2]|0,c[m>>2]|0,c[g>>2]|0)|0;break}bi(r);c[j>>2]=c[o>>2];t=c[j>>2]|0;i=k;return t|0}else{h=20}}else{h=20}}while(0);if((h|0)==20){c[(c[q>>2]|0)+12>>2]=c[m>>2]}c[(c[q>>2]|0)+16>>2]=c[g>>2];t=(c[l>>2]|0)+4|0;c[t>>2]=(c[t>>2]|0)+1;c[n>>2]=c[p>>2]&(c[(c[l>>2]|0)+12>>2]|0)-1;Fn(c[l>>2]|0,(c[(c[l>>2]|0)+16>>2]|0)+(c[n>>2]<<3)|0,c[q>>2]|0);c[(c[q>>2]|0)+8>>2]=c[o>>2];c[j>>2]=0;t=c[j>>2]|0;i=k;return t|0}}while(0);c[(c[l>>2]|0)+4>>2]=0;c[j>>2]=c[o>>2];t=c[j>>2]|0;i=k;return t|0}function Zh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;g=f+20|0;k=f;h=f+4|0;e=f+8|0;j=f+12|0;c[g>>2]=a;c[k>>2]=b;c[h>>2]=d;c[e>>2]=0;c[j>>2]=c[k>>2];c[f+16>>2]=5;if(0==(c[e>>2]|0)){c[e>>2]=ng(c[g>>2]|0,c[h>>2]|0,1,5,c[j>>2]|0,56,0,0)|0}if(0!=(c[e>>2]|0)){k=c[e>>2]|0;i=f;return k|0}c[e>>2]=ng(c[g>>2]|0,c[h>>2]|0,2,5,c[j>>2]|0,56,0,0)|0;k=c[e>>2]|0;i=f;return k|0}function _h(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];ai(c[d>>2]|0);oc(c[d>>2]|0);i=b;return}function $h(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;d=e+4|0;c[g>>2]=a;c[f>>2]=b;c[d>>2]=If(c[g>>2]|0,3960,3864,c[f>>2]|0)|0;i=e;return c[d>>2]|0}function ai(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+8|0;f=e;g=e+4|0;c[d>>2]=b;c[f>>2]=c[(c[d>>2]|0)+8>>2];c[(c[d>>2]|0)+8>>2]=0;bi(c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+16>>2]=0;c[(c[d>>2]|0)+12>>2]=0;while(1){if((c[f>>2]|0)==0){break}c[g>>2]=c[c[f>>2]>>2];if((a[(c[d>>2]|0)+1>>0]|0)!=0){if((c[(c[f>>2]|0)+12>>2]|0)!=0){bi(c[(c[f>>2]|0)+12>>2]|0)}}bi(c[f>>2]|0);c[f>>2]=c[g>>2]}c[(c[d>>2]|0)+4>>2]=0;i=e;return}function bi(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;oc(c[d>>2]|0);i=b;return}function ci(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,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;q=i;i=i+64|0;h=q+56|0;x=q+52|0;r=q+48|0;v=q+44|0;w=q+40|0;p=q+36|0;u=q+32|0;k=q+28|0;l=q+20|0;n=q+16|0;j=q+12|0;o=q+8|0;s=q+4|0;t=q;m=q+24|0;c[x>>2]=a;c[r>>2]=b;c[v>>2]=d;c[w>>2]=e;c[p>>2]=f;c[u>>2]=g;c[l>>2]=0;c[n>>2]=0;c[o>>2]=0;c[j>>2]=Lf(c[x>>2]|0,3976)|0;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];x=c[h>>2]|0;i=q;return x|0}c[s>>2]=(c[v>>2]|0)-3;c[j>>2]=ni(c[s>>2]|0,(c[w>>2]|0)+12|0,o)|0;if((c[j>>2]|0)==0){if((c[s>>2]|0)<1){c[t>>2]=3672}else{c[t>>2]=c[c[o>>2]>>2]}c[j>>2]=oi(c[r>>2]|0,c[t>>2]|0,l,c[u>>2]|0)|0}if((c[j>>2]|0)==0){c[m>>2]=(c[o>>2]|0)+4;if((c[s>>2]|0)>1){r=(c[s>>2]|0)-1|0}else{r=0}c[j>>2]=pb[c[(c[l>>2]|0)+4>>2]&31](r,c[m>>2]|0,n)|0}if((c[j>>2]|0)==0){c[k>>2]=mc(20)|0;if((c[k>>2]|0)==0){c[j>>2]=7}}if((c[j>>2]|0)==0){x=c[k>>2]|0;c[x+0>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;c[x+12>>2]=0;c[x+16>>2]=0;c[(c[k>>2]|0)+12>>2]=c[l>>2];c[(c[k>>2]|0)+16>>2]=c[n>>2];c[c[p>>2]>>2]=c[k>>2]}else{if((c[n>>2]|0)!=0){ub[c[(c[l>>2]|0)+8>>2]&63](c[n>>2]|0)|0}}oc(c[o>>2]|0);c[h>>2]=c[j>>2];x=c[h>>2]|0;i=q;return x|0}function di(b,e){b=b|0;e=e|0;var f=0,g=0,j=0,k=0;j=i;i=i+16|0;g=j+12|0;f=j+4|0;k=j+8|0;c[j>>2]=b;c[f>>2]=e;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[c[f>>2]>>2]|0)){e=8;break}if((d[(c[(c[f>>2]|0)+4>>2]|0)+((c[k>>2]|0)*12|0)+5>>0]|0|0)!=0){if((c[(c[(c[f>>2]|0)+4>>2]|0)+((c[k>>2]|0)*12|0)>>2]|0)==0){if((d[(c[(c[f>>2]|0)+4>>2]|0)+((c[k>>2]|0)*12|0)+4>>0]|0|0)==2){e=6;break}}}c[k>>2]=(c[k>>2]|0)+1}if((e|0)==6){c[(c[f>>2]|0)+20>>2]=1;c[(c[(c[f>>2]|0)+16>>2]|0)+(c[k>>2]<<3)>>2]=1;a[(c[(c[f>>2]|0)+16>>2]|0)+(c[k>>2]<<3)+4>>0]=1;h[(c[f>>2]|0)+40>>3]=1.0;c[g>>2]=0;b=c[g>>2]|0;i=j;return b|0}else if((e|0)==8){c[(c[f>>2]|0)+20>>2]=0;c[g>>2]=0;b=c[g>>2]|0;i=j;return b|0}return 0}function ei(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];ub[c[(c[(c[d>>2]|0)+12>>2]|0)+8>>2]&63](c[(c[d>>2]|0)+16>>2]|0)|0;oc(c[d>>2]|0);i=b;return 0}function fi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+12|0;g=d+4|0;f=d+8|0;c[d>>2]=a;c[g>>2]=b;c[f>>2]=mc(36)|0;if((c[f>>2]|0)==0){c[e>>2]=7;a=c[e>>2]|0;i=d;return a|0}else{a=(c[f>>2]|0)+0|0;b=a+36|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[c[g>>2]>>2]=c[f>>2];c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}return 0}function gi(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];mi(c[d>>2]|0);oc(c[d>>2]|0);i=b;return 0}function hi(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+48|0;j=k+40|0;l=k+36|0;r=k+32|0;q=k+20|0;o=k+12|0;n=k+8|0;m=k+4|0;h=k;p=k+16|0;c[l>>2]=b;c[r>>2]=d;c[k+28>>2]=e;c[k+24>>2]=f;c[q>>2]=g;c[o>>2]=1;c[n>>2]=c[l>>2];c[m>>2]=c[c[l>>2]>>2];mi(c[n>>2]|0);do{if((c[r>>2]|0)==1){c[h>>2]=Jd(c[c[q>>2]>>2]|0)|0;c[p>>2]=Kd(c[c[q>>2]>>2]|0)|0;r=mc((c[p>>2]|0)+1|0)|0;c[(c[n>>2]|0)+4>>2]=r;if((c[(c[n>>2]|0)+4>>2]|0)==0){c[o>>2]=7;break}fL(c[(c[n>>2]|0)+4>>2]|0,c[h>>2]|0,c[p>>2]|0)|0;a[(c[(c[n>>2]|0)+4>>2]|0)+(c[p>>2]|0)>>0]=0;c[o>>2]=xb[c[(c[(c[m>>2]|0)+12>>2]|0)+12>>2]&31](c[(c[m>>2]|0)+16>>2]|0,c[(c[n>>2]|0)+4>>2]|0,c[p>>2]|0,(c[n>>2]|0)+8|0)|0;if((c[o>>2]|0)==0){c[c[(c[n>>2]|0)+8>>2]>>2]=c[(c[m>>2]|0)+16>>2]}}}while(0);if((c[o>>2]|0)!=0){c[j>>2]=c[o>>2];r=c[j>>2]|0;i=k;return r|0}else{c[j>>2]=ii(c[l>>2]|0)|0;r=c[j>>2]|0;i=k;return r|0}return 0}function ii(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;g=b+12|0;e=b;f=b+4|0;d=b+8|0;c[g>>2]=a;c[e>>2]=c[g>>2];c[f>>2]=c[c[g>>2]>>2];a=(c[e>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+1;c[d>>2]=tb[c[(c[(c[f>>2]|0)+12>>2]|0)+20>>2]&15](c[(c[e>>2]|0)+8>>2]|0,(c[e>>2]|0)+16|0,(c[e>>2]|0)+20|0,(c[e>>2]|0)+24|0,(c[e>>2]|0)+28|0,(c[e>>2]|0)+32|0)|0;if((c[d>>2]|0)==0){g=c[d>>2]|0;i=b;return g|0}mi(c[e>>2]|0);if((c[d>>2]|0)!=101){g=c[d>>2]|0;i=b;return g|0}c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}function ji(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=c[e>>2];i=d;return(c[(c[b>>2]|0)+16>>2]|0)==0|0}function ki(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;g=e;h=e+4|0;f=e+8|0;c[j>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f>>2]=c[j>>2];d=c[h>>2]|0;if((d|0)==1){ce(c[g>>2]|0,c[(c[f>>2]|0)+16>>2]|0,c[(c[f>>2]|0)+20>>2]|0,-1);i=e;return 0}else if((d|0)==2){Zd(c[g>>2]|0,c[(c[f>>2]|0)+24>>2]|0);i=e;return 0}else if((d|0)==0){ce(c[g>>2]|0,c[(c[f>>2]|0)+4>>2]|0,-1,-1);i=e;return 0}else if((d|0)==3){Zd(c[g>>2]|0,c[(c[f>>2]|0)+28>>2]|0);i=e;return 0}else{Zd(c[g>>2]|0,c[(c[f>>2]|0)+32>>2]|0);i=e;return 0}return 0}function li(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d;f=d+4|0;c[g>>2]=a;c[e>>2]=b;c[f>>2]=c[g>>2];b=c[(c[f>>2]|0)+12>>2]|0;a=c[e>>2]|0;c[a>>2]=b;c[a+4>>2]=((b|0)<0)<<31>>31;i=d;return 0}function mi(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[(c[d>>2]|0)+8>>2]|0)!=0){c[e>>2]=c[c[d>>2]>>2];ub[c[(c[(c[e>>2]|0)+12>>2]|0)+16>>2]&63](c[(c[d>>2]|0)+8>>2]|0)|0;c[(c[d>>2]|0)+8>>2]=0}oc(c[(c[d>>2]|0)+4>>2]|0);c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+16>>2]=0;c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+24>>2]=0;c[(c[d>>2]|0)+28>>2]=0;c[(c[d>>2]|0)+32>>2]=0;c[(c[d>>2]|0)+12>>2]=0;i=b;return}function ni(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+48|0;j=k+32|0;e=k+28|0;g=k+24|0;f=k+20|0;h=k+16|0;o=k+8|0;n=k+4|0;m=k;l=k+12|0;c[j>>2]=a;c[e>>2]=b;c[g>>2]=d;c[f>>2]=0;if((c[j>>2]|0)==0){c[c[g>>2]>>2]=0;a=c[f>>2]|0;i=k;return a|0}c[o>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[j>>2]|0)){break}a=(cL(c[(c[e>>2]|0)+(c[h>>2]<<2)>>2]|0)|0)+1|0;c[o>>2]=(c[o>>2]|0)+a;c[h>>2]=(c[h>>2]|0)+1}a=mc((c[j>>2]<<2)+(c[o>>2]|0)|0)|0;c[n>>2]=a;c[c[g>>2]>>2]=a;if((c[n>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=k;return a|0}c[m>>2]=(c[n>>2]|0)+(c[j>>2]<<2);c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[j>>2]|0)){break}c[l>>2]=cL(c[(c[e>>2]|0)+(c[h>>2]<<2)>>2]|0)|0;c[(c[n>>2]|0)+(c[h>>2]<<2)>>2]=c[m>>2];fL(c[m>>2]|0,c[(c[e>>2]|0)+(c[h>>2]<<2)>>2]|0,(c[l>>2]|0)+1|0)|0;yi(c[m>>2]|0);c[m>>2]=(c[m>>2]|0)+((c[l>>2]|0)+1);c[h>>2]=(c[h>>2]|0)+1}a=c[f>>2]|0;i=k;return a|0}function oi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;l=k;g=k+28|0;o=k+4|0;m=k+8|0;h=k+12|0;f=k+16|0;j=k+20|0;n=k+24|0;c[o>>2]=a;c[m>>2]=b;c[h>>2]=d;c[f>>2]=e;c[n>>2]=cL(c[m>>2]|0)|0;c[j>>2]=pi(c[o>>2]|0,c[m>>2]|0,(c[n>>2]|0)+1|0)|0;if((c[j>>2]|0)!=0){c[c[h>>2]>>2]=c[j>>2];c[g>>2]=0;o=c[g>>2]|0;i=k;return o|0}else{c[l>>2]=c[m>>2];o=wc(4032,l)|0;c[c[f>>2]>>2]=o;c[g>>2]=1;o=c[g>>2]|0;i=k;return o|0}return 0}function pi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;h=e;g=e+4|0;f=e+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[f>>2]=qi(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;if((c[f>>2]|0)==0){j=0;i=e;return j|0}j=c[(c[f>>2]|0)+8>>2]|0;i=e;return j|0}function qi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;h=f;l=f+4|0;k=f+8|0;j=f+12|0;m=f+16|0;c[h>>2]=b;c[l>>2]=d;c[k>>2]=e;if((c[h>>2]|0)!=0){if((c[(c[h>>2]|0)+16>>2]|0)!=0){c[m>>2]=ri(a[c[h>>2]>>0]|0)|0;c[j>>2]=zb[c[m>>2]&127](c[l>>2]|0,c[k>>2]|0)|0;c[g>>2]=si(c[h>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]&(c[(c[h>>2]|0)+12>>2]|0)-1)|0;b=c[g>>2]|0;i=f;return b|0}}c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}function ri(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;if((c[e>>2]|0)==1){c[b>>2]=47}else{c[b>>2]=48}i=d;return c[b>>2]|0}function si(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+48|0;n=h+32|0;o=h+28|0;l=h+24|0;m=h+20|0;q=h+16|0;k=h+8|0;g=h+4|0;j=h;p=h+12|0;c[o>>2]=b;c[l>>2]=d;c[m>>2]=e;c[q>>2]=f;a:do{if((c[(c[o>>2]|0)+16>>2]|0)!=0){c[p>>2]=(c[(c[o>>2]|0)+16>>2]|0)+(c[q>>2]<<3);c[k>>2]=c[(c[p>>2]|0)+4>>2];c[g>>2]=c[c[p>>2]>>2];c[j>>2]=ti(a[c[o>>2]>>0]|0)|0;while(1){b=c[g>>2]|0;c[g>>2]=b+ -1;if((b|0)==0){break a}if((c[k>>2]|0)==0){break a}b=(xb[c[j>>2]&31](c[(c[k>>2]|0)+12>>2]|0,c[(c[k>>2]|0)+16>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)==0;f=c[k>>2]|0;if(b){break}c[k>>2]=c[f>>2]}c[n>>2]=f;b=c[n>>2]|0;i=h;return b|0}}while(0);c[n>>2]=0;b=c[n>>2]|0;i=h;return b|0}function ti(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;if((c[e>>2]|0)==1){c[b>>2]=11}else{c[b>>2]=12}i=d;return c[b>>2]|0}function ui(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;k=f;h=f+4|0;j=f+8|0;l=f+12|0;c[k>>2]=a;c[h>>2]=b;c[j>>2]=d;c[l>>2]=e;if((c[h>>2]|0)!=(c[l>>2]|0)){c[g>>2]=1;l=c[g>>2]|0;i=f;return l|0}else{c[g>>2]=ZK(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;l=c[g>>2]|0;i=f;return l|0}return 0}function vi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;k=f;h=f+4|0;j=f+8|0;l=f+12|0;c[k>>2]=a;c[h>>2]=b;c[j>>2]=d;c[l>>2]=e;if((c[h>>2]|0)!=(c[l>>2]|0)){c[g>>2]=1;l=c[g>>2]|0;i=f;return l|0}else{c[g>>2]=XK(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;l=c[g>>2]|0;i=f;return l|0}return 0}function wi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;g=e;h=e+4|0;f=e+8|0;c[j>>2]=b;c[g>>2]=d;c[h>>2]=c[j>>2];c[f>>2]=0;if((c[g>>2]|0)<=0){c[g>>2]=cL(c[h>>2]|0)|0}while(1){d=c[f>>2]|0;if((c[g>>2]|0)<=0){break}b=d<<3^c[f>>2];j=c[h>>2]|0;c[h>>2]=j+1;c[f>>2]=b^a[j>>0];c[g>>2]=(c[g>>2]|0)+ -1}i=e;return d&2147483647|0}function xi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;f=e;g=e+4|0;h=e+8|0;c[j>>2]=b;c[f>>2]=d;c[g>>2]=0;c[h>>2]=c[j>>2];while(1){j=c[f>>2]|0;c[f>>2]=j+ -1;d=c[g>>2]|0;if((j|0)<=0){break}b=d<<3^c[g>>2];j=c[h>>2]|0;c[h>>2]=j+1;c[g>>2]=b^a[j>>0]}i=e;return d&2147483647|0}function yi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+8|0;g=d+12|0;f=d+4|0;h=d;c[e>>2]=b;a[g>>0]=a[c[e>>2]>>0]|0;if((a[g>>0]|0)!=91){if((a[g>>0]|0)!=39){if((a[g>>0]|0)!=34){if((a[g>>0]|0)!=96){i=d;return}}}}c[f>>2]=1;c[h>>2]=0;if((a[g>>0]|0)==91){a[g>>0]=93}while(1){if((a[(c[e>>2]|0)+(c[f>>2]|0)>>0]|0)==0){break}b=c[f>>2]|0;j=b+1|0;if((a[(c[e>>2]|0)+(c[f>>2]|0)>>0]|0)!=(a[g>>0]|0)){c[f>>2]=j;b=a[(c[e>>2]|0)+b>>0]|0;j=c[h>>2]|0;c[h>>2]=j+1;a[(c[e>>2]|0)+j>>0]=b;continue}if((a[(c[e>>2]|0)+j>>0]|0)!=(a[g>>0]|0)){break}b=a[g>>0]|0;j=c[h>>2]|0;c[h>>2]=j+1;a[(c[e>>2]|0)+j>>0]=b;c[f>>2]=(c[f>>2]|0)+2}a[(c[e>>2]|0)+(c[h>>2]|0)>>0]=0;i=d;return}function zi(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;o=h+20|0;n=h;m=h+4|0;l=h+8|0;k=h+12|0;j=h+16|0;c[o>>2]=a;c[n>>2]=b;c[m>>2]=d;c[l>>2]=e;c[k>>2]=f;c[j>>2]=g;a=mn(1,c[o>>2]|0,c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;i=h;return a|0}function Ai(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;o=h+20|0;n=h;m=h+4|0;l=h+8|0;k=h+12|0;j=h+16|0;c[o>>2]=a;c[n>>2]=b;c[m>>2]=d;c[l>>2]=e;c[k>>2]=f;c[j>>2]=g;a=mn(0,c[o>>2]|0,c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;i=h;return a|0}function Bi(b,e){b=b|0;e=e|0;var f=0,g=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;j=i;i=i+64|0;g=j+48|0;v=j+44|0;f=j+40|0;r=j+36|0;s=j+32|0;l=j+28|0;q=j+24|0;p=j+16|0;o=j+12|0;n=j+8|0;u=j+4|0;t=j;k=j+20|0;c[v>>2]=b;c[f>>2]=e;c[r>>2]=c[v>>2];c[l>>2]=-1;c[q>>2]=-1;c[p>>2]=-1;c[o>>2]=-1;c[(c[f>>2]|0)+20>>2]=0;h[(c[f>>2]|0)+40>>3]=5.0e6;c[s>>2]=0;a:while(1){if((c[s>>2]|0)>=(c[c[f>>2]>>2]|0)){break}c[t>>2]=(c[(c[f>>2]|0)+4>>2]|0)+((c[s>>2]|0)*12|0);e=c[t>>2]|0;do{if((d[(c[t>>2]|0)+5>>0]|0)==0){if((d[e+4>>0]|0)==64){m=5;break a}}else{if((c[e>>2]|0)<0){e=1}else{e=(c[c[t>>2]>>2]|0)==((c[(c[r>>2]|0)+24>>2]|0)+1|0)}c[u>>2]=e&1;if((c[l>>2]|0)<0){if((d[(c[t>>2]|0)+4>>0]|0)==2){if((c[u>>2]|0)!=0){c[(c[f>>2]|0)+20>>2]=1;h[(c[f>>2]|0)+40>>3]=1.0;c[l>>2]=c[s>>2]}}}if((d[(c[t>>2]|0)+4>>0]|0)==64){if((c[c[t>>2]>>2]|0)>=0){if((c[c[t>>2]>>2]|0)<=(c[(c[r>>2]|0)+24>>2]|0)){c[(c[f>>2]|0)+20>>2]=2+(c[c[t>>2]>>2]|0);h[(c[f>>2]|0)+40>>3]=2.0;c[l>>2]=c[s>>2]}}}if((d[(c[t>>2]|0)+4>>0]|0)==2){if((c[c[t>>2]>>2]|0)==((c[(c[r>>2]|0)+24>>2]|0)+2|0)){c[q>>2]=c[s>>2]}}if((c[u>>2]|0)!=0){e=d[(c[t>>2]|0)+4>>0]|0;if((e|0)==16|(e|0)==8){c[o>>2]=c[s>>2];break}else if((e|0)==4|(e|0)==32){c[p>>2]=c[s>>2];break}else{break}}}}while(0);c[s>>2]=(c[s>>2]|0)+1}if((m|0)==5){c[(c[f>>2]|0)+20>>2]=0;h[(c[f>>2]|0)+40>>3]=1.0e+50;ln(c[f>>2]|0,0,262144);c[g>>2]=0;v=c[g>>2]|0;i=j;return v|0}c[n>>2]=1;if((c[l>>2]|0)>=0){v=c[n>>2]|0;c[n>>2]=v+1;c[(c[(c[f>>2]|0)+16>>2]|0)+(c[l>>2]<<3)>>2]=v;a[(c[(c[f>>2]|0)+16>>2]|0)+(c[l>>2]<<3)+4>>0]=1}if((c[q>>2]|0)>=0){v=(c[f>>2]|0)+20|0;c[v>>2]=c[v>>2]|65536;v=c[n>>2]|0;c[n>>2]=v+1;c[(c[(c[f>>2]|0)+16>>2]|0)+(c[q>>2]<<3)>>2]=v}if((c[p>>2]|0)>=0){v=(c[f>>2]|0)+20|0;c[v>>2]=c[v>>2]|131072;v=c[n>>2]|0;c[n>>2]=v+1;c[(c[(c[f>>2]|0)+16>>2]|0)+(c[p>>2]<<3)>>2]=v}if((c[o>>2]|0)>=0){v=(c[f>>2]|0)+20|0;c[v>>2]=c[v>>2]|262144;v=c[n>>2]|0;c[n>>2]=v+1;c[(c[(c[f>>2]|0)+16>>2]|0)+(c[o>>2]<<3)>>2]=v}do{if((c[(c[f>>2]|0)+8>>2]|0)==1){c[k>>2]=c[(c[f>>2]|0)+12>>2];if((c[c[k>>2]>>2]|0)>=0){if((c[c[k>>2]>>2]|0)!=((c[(c[r>>2]|0)+24>>2]|0)+1|0)){break}}l=(c[f>>2]|0)+24|0;if((a[(c[k>>2]|0)+4>>0]|0)!=0){c[l>>2]=7496}else{c[l>>2]=7504}c[(c[f>>2]|0)+32>>2]=1}}while(0);c[g>>2]=0;v=c[g>>2]|0;i=j;return v|0}function Ci(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;b=d;e=d+4|0;c[f>>2]=a;c[b>>2]=c[f>>2];c[e>>2]=0;while(1){if((c[e>>2]|0)>=40){break}yd(c[(c[b>>2]|0)+56+(c[e>>2]<<2)>>2]|0)|0;c[e>>2]=(c[e>>2]|0)+1}oc(c[(c[b>>2]|0)+240>>2]|0);oc(c[(c[b>>2]|0)+216>>2]|0);oc(c[(c[b>>2]|0)+220>>2]|0);oc(c[(c[b>>2]|0)+40>>2]|0);oc(c[(c[b>>2]|0)+44>>2]|0);ub[c[(c[c[(c[b>>2]|0)+36>>2]>>2]|0)+8>>2]&63](c[(c[b>>2]|0)+36>>2]|0)|0;oc(c[b>>2]|0);i=d;return 0}function Di(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;j=d;b=d+24|0;g=d+8|0;e=d+12|0;h=d+16|0;f=d+20|0;c[b>>2]=a;c[g>>2]=c[b>>2];c[e>>2]=0;c[h>>2]=c[(c[g>>2]|0)+16>>2];c[f>>2]=c[(c[g>>2]|0)+12>>2];if((c[(c[g>>2]|0)+40>>2]|0)==0){a=c[f>>2]|0;k=c[(c[g>>2]|0)+20>>2]|0;c[j>>2]=c[h>>2];c[j+4>>2]=k;Zi(e,a,7672,j)}k=c[f>>2]|0;a=c[(c[g>>2]|0)+20>>2]|0;c[j>>2]=c[h>>2];c[j+4>>2]=a;Zi(e,k,7712,j);k=c[f>>2]|0;a=c[(c[g>>2]|0)+20>>2]|0;c[j>>2]=c[h>>2];c[j+4>>2]=a;Zi(e,k,7752,j);k=c[f>>2]|0;a=c[(c[g>>2]|0)+20>>2]|0;c[j>>2]=c[h>>2];c[j+4>>2]=a;Zi(e,k,7792,j);k=c[f>>2]|0;g=c[(c[g>>2]|0)+20>>2]|0;c[j>>2]=c[h>>2];c[j+4>>2]=g;Zi(e,k,7832,j);if((c[e>>2]|0)==0){k=Ci(c[b>>2]|0)|0;i=d;return k|0}else{k=c[e>>2]|0;i=d;return k|0}return 0}function Ei(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+12|0;g=e+4|0;f=e+8|0;c[e>>2]=a;c[g>>2]=b;a=mc(104)|0;c[f>>2]=a;c[c[g>>2]>>2]=a;if((c[f>>2]|0)!=0){f=(c[f>>2]|0)+0|0;b=f+104|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(b|0));c[d>>2]=0;g=c[d>>2]|0;i=e;return g|0}else{c[d>>2]=7;g=c[d>>2]|0;i=e;return g|0}return 0}function Fi(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];yd(c[(c[d>>2]|0)+8>>2]|0)|0;Jm(c[(c[d>>2]|0)+12>>2]|0);kn(c[d>>2]|0);oc(c[(c[d>>2]|0)+44>>2]|0);oc(c[(c[d>>2]|0)+92>>2]|0);oc(c[d>>2]|0);i=b;return 0}function Gi(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;v=i;i=i+80|0;x=v;u=v+72|0;z=v+68|0;C=v+64|0;n=v+60|0;B=v+52|0;l=v+48|0;y=v+44|0;p=v+76|0;o=v+20|0;s=v+16|0;r=v+8|0;t=v+12|0;w=v+36|0;m=v+24|0;A=v+28|0;q=v+32|0;k=v+40|0;c[z>>2]=e;c[C>>2]=f;c[n>>2]=g;c[v+56>>2]=h;c[B>>2]=j;c[o>>2]=c[c[z>>2]>>2];c[s>>2]=c[z>>2];c[r>>2]=0;c[t>>2]=0;c[w>>2]=0;c[m>>2]=0;c[p>>2]=c[C>>2]&65535;c[A>>2]=0;if((c[p>>2]|0)!=0){e=c[A>>2]|0;c[A>>2]=e+1;c[r>>2]=c[(c[B>>2]|0)+(e<<2)>>2]}if((c[C>>2]&65536|0)!=0){e=c[A>>2]|0;c[A>>2]=e+1;c[t>>2]=c[(c[B>>2]|0)+(e<<2)>>2]}if((c[C>>2]&131072|0)!=0){e=c[A>>2]|0;c[A>>2]=e+1;c[w>>2]=c[(c[B>>2]|0)+(e<<2)>>2]}if((c[C>>2]&262144|0)!=0){e=c[A>>2]|0;c[A>>2]=e+1;c[m>>2]=c[(c[B>>2]|0)+(e<<2)>>2]}yd(c[(c[s>>2]|0)+8>>2]|0)|0;oc(c[(c[s>>2]|0)+44>>2]|0);Jm(c[(c[s>>2]|0)+12>>2]|0);A=(c[z>>2]|0)+4|0;j=A+100|0;do{c[A>>2]=0;A=A+4|0}while((A|0)<(j|0));e=Km(c[w>>2]|0,0,-2147483648)|0;f=(c[s>>2]|0)+72|0;c[f>>2]=e;c[f+4>>2]=D;f=Km(c[m>>2]|0,-1,2147483647)|0;e=(c[s>>2]|0)+80|0;c[e>>2]=f;c[e+4>>2]=D;if((c[n>>2]|0)!=0){a[(c[s>>2]|0)+52>>0]=(a[c[n>>2]>>0]|0)==68}else{a[(c[s>>2]|0)+52>>0]=a[(c[o>>2]|0)+231>>0]|0}b[(c[s>>2]|0)+4>>1]=c[p>>2];do{if((c[p>>2]|0)!=1&(c[p>>2]|0)!=0){c[q>>2]=(c[p>>2]|0)-2;c[k>>2]=Jd(c[r>>2]|0)|0;if((c[k>>2]|0)==0){if((Sd(c[r>>2]|0)|0)!=5){c[u>>2]=7;e=c[u>>2]|0;i=v;return e|0}}c[(c[s>>2]|0)+16>>2]=0;if((c[t>>2]|0)!=0){e=Od(c[t>>2]|0)|0;c[(c[s>>2]|0)+16>>2]=e}c[l>>2]=Lm(c[(c[o>>2]|0)+36>>2]|0,c[(c[s>>2]|0)+16>>2]|0,c[(c[o>>2]|0)+28>>2]|0,d[(c[o>>2]|0)+228>>0]|0,c[(c[o>>2]|0)+24>>2]|0,c[q>>2]|0,c[k>>2]|0,-1,(c[s>>2]|0)+12|0,(c[o>>2]|0)+8|0)|0;if((c[l>>2]|0)!=0){c[u>>2]=c[l>>2];e=c[u>>2]|0;i=v;return e|0}c[l>>2]=Mm(c[s>>2]|0)|0;jk(c[o>>2]|0);if((c[l>>2]|0)==0){c[(c[s>>2]|0)+40>>2]=c[(c[s>>2]|0)+44>>2];e=(c[s>>2]|0)+32|0;c[e>>2]=0;c[e+4>>2]=0;break}c[u>>2]=c[l>>2];e=c[u>>2]|0;i=v;return e|0}}while(0);do{if((c[p>>2]|0)==0){e=(d[(c[s>>2]|0)+52>>0]|0)!=0?7496:7504;c[x>>2]=c[(c[o>>2]|0)+216>>2];c[x+4>>2]=e;c[y>>2]=wc(7464,x)|0;if((c[y>>2]|0)!=0){c[l>>2]=Df(c[(c[o>>2]|0)+12>>2]|0,c[y>>2]|0,-1,(c[s>>2]|0)+8|0,0)|0;oc(c[y>>2]|0);break}else{c[l>>2]=7;break}}else{if((c[p>>2]|0)==1){c[l>>2]=ml(c[s>>2]|0,(c[s>>2]|0)+8|0)|0;if((c[l>>2]|0)==0){c[l>>2]=Se(c[(c[s>>2]|0)+8>>2]|0,1,c[r>>2]|0)|0}}}}while(0);if((c[l>>2]|0)!=0){c[u>>2]=c[l>>2];e=c[u>>2]|0;i=v;return e|0}else{c[u>>2]=Hi(c[z>>2]|0)|0;e=c[u>>2]|0;i=v;return e|0}return 0}function Hi(d){d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;f=e;g=e+4|0;c[h>>2]=d;c[g>>2]=c[h>>2];if((b[(c[g>>2]|0)+4>>1]|0)!=1){if((b[(c[g>>2]|0)+4>>1]|0)!=0){c[f>>2]=Im(c[h>>2]|0)|0;h=c[f>>2]|0;i=e;return h|0}}h=100!=(le(c[(c[g>>2]|0)+8>>2]|0)|0);d=c[g>>2]|0;if(h){a[d+6>>0]=1;c[f>>2]=Cd(c[(c[g>>2]|0)+8>>2]|0)|0;h=c[f>>2]|0;i=e;return h|0}else{d=Ee(c[d+8>>2]|0,0)|0;h=(c[g>>2]|0)+32|0;c[h>>2]=d;c[h+4>>2]=D;c[f>>2]=0;h=c[f>>2]|0;i=e;return h|0}return 0}function Ii(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+6>>0]|0|0}function Ji(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;m=e+24|0;g=e;j=e+4|0;f=e+8|0;h=e+12|0;k=e+16|0;l=e+20|0;c[m>>2]=a;c[g>>2]=b;c[j>>2]=d;c[f>>2]=0;c[h>>2]=c[m>>2];c[k>>2]=c[c[m>>2]>>2];if((c[j>>2]|0)==((c[(c[k>>2]|0)+24>>2]|0)+1|0)){m=(c[h>>2]|0)+32|0;$d(c[g>>2]|0,c[m>>2]|0,c[m+4>>2]|0);m=c[f>>2]|0;i=e;return m|0}if((c[j>>2]|0)==(c[(c[k>>2]|0)+24>>2]|0)){Td(c[g>>2]|0,h,4,-1);m=c[f>>2]|0;i=e;return m|0}if((c[j>>2]|0)==((c[(c[k>>2]|0)+24>>2]|0)+2|0)){if((c[(c[h>>2]|0)+12>>2]|0)!=0){m=c[(c[h>>2]|0)+16>>2]|0;$d(c[g>>2]|0,m,((m|0)<0)<<31>>31);m=c[f>>2]|0;i=e;return m|0}}c[f>>2]=al(0,c[h>>2]|0)|0;if((c[f>>2]|0)!=0){m=c[f>>2]|0;i=e;return m|0}if((c[j>>2]|0)==((c[(c[k>>2]|0)+24>>2]|0)+2|0)){c[l>>2]=0;if((c[(c[k>>2]|0)+44>>2]|0)!=0){c[l>>2]=De(c[(c[h>>2]|0)+8>>2]|0,(c[(c[k>>2]|0)+24>>2]|0)+1|0)|0}Zd(c[g>>2]|0,c[l>>2]|0);m=c[f>>2]|0;i=e;return m|0}else{m=xe(c[(c[h>>2]|0)+8>>2]|0)|0;if((m|0)<=((c[j>>2]|0)+1|0)){m=c[f>>2]|0;i=e;return m|0}m=c[g>>2]|0;de(m,Ge(c[(c[h>>2]|0)+8>>2]|0,(c[j>>2]|0)+1|0)|0);m=c[f>>2]|0;i=e;return m|0}return 0}function Ki(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=c[g>>2];e=(c[e>>2]|0)+32|0;b=c[e+4>>2]|0;a=c[f>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=b;i=d;return 0}function Li(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=hm(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return a|0}function Mi(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];c[(c[d>>2]|0)+52>>2]=0;a=Xi(c[d>>2]|0)|0;i=b;return a|0}function Ni(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=i;i=i+32|0;h=g+20|0;d=g+4|0;e=g+8|0;b=g+12|0;f=g+16|0;c[h>>2]=a;c[g>>2]=64;c[d>>2]=c[h>>2];c[e>>2]=Yi(c[d>>2]|0)|0;if((c[e>>2]|0)==0){if((c[(c[d>>2]|0)+52>>2]|0)>>>0>4){if((c[(c[d>>2]|0)+48>>2]|0)!=0){if((c[(c[d>>2]|0)+48>>2]|0)!=255){c[b>>2]=0;c[e>>2]=Il(c[d>>2]|0,b)|0;c[f>>2]=$(c[(c[d>>2]|0)+52>>2]|0,c[b>>2]|0)|0;c[f>>2]=(c[f>>2]|0)+((c[f>>2]|0)/2|0);if((c[f>>2]|0)>64){c[e>>2]=Jl(c[d>>2]|0,c[f>>2]|0,c[(c[d>>2]|0)+48>>2]|0)|0}}}}}jk(c[d>>2]|0);i=g;return c[e>>2]|0}function Oi(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function Pi(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];Vi(c[d>>2]|0);i=b;return 0}function Qi(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+64|0;k=g+60|0;m=g+48|0;n=g+44|0;j=g+36|0;h=g;l=g+40|0;c[g+56>>2]=a;c[g+52>>2]=b;c[m>>2]=d;c[n>>2]=e;c[j>>2]=c[n>>2];c[g+32>>2]=f;c[h+0>>2]=c[6984>>2];c[h+4>>2]=c[6988>>2];c[h+8>>2]=c[6992>>2];c[h+12>>2]=c[6996>>2];c[h+16>>2]=c[7e3>>2];c[h+20>>2]=c[7004>>2];c[h+24>>2]=c[7008>>2];c[h+28>>2]=c[7012>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=4){l=6;break}n=(YK(c[m>>2]|0,c[h+(c[l>>2]<<3)>>2]|0)|0)==0;f=c[l>>2]|0;if(n){l=4;break}c[l>>2]=f+1}if((l|0)==4){c[c[j>>2]>>2]=c[h+(f<<3)+4>>2];c[k>>2]=1;n=c[k>>2]|0;i=g;return n|0}else if((l|0)==6){c[k>>2]=0;n=c[k>>2]|0;i=g;return n|0}return 0}function Ri(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;h=k;l=k+28|0;g=k+12|0;f=k+16|0;e=k+20|0;j=k+24|0;c[l>>2]=b;c[g>>2]=d;c[f>>2]=c[l>>2];c[e>>2]=c[(c[f>>2]|0)+12>>2];c[j>>2]=Xi(c[f>>2]|0)|0;if((c[j>>2]|0)==0){c[j>>2]=Yi(c[f>>2]|0)|0}if((c[(c[f>>2]|0)+40>>2]|0)==0){l=c[e>>2]|0;d=c[(c[f>>2]|0)+20>>2]|0;b=c[g>>2]|0;c[h>>2]=c[(c[f>>2]|0)+16>>2];c[h+4>>2]=d;c[h+8>>2]=b;Zi(j,l,4056,h)}if((a[(c[f>>2]|0)+230>>0]|0)!=0){l=c[e>>2]|0;d=c[(c[f>>2]|0)+20>>2]|0;b=c[g>>2]|0;c[h>>2]=c[(c[f>>2]|0)+16>>2];c[h+4>>2]=d;c[h+8>>2]=b;Zi(j,l,4112,h)}if((a[(c[f>>2]|0)+229>>0]|0)!=0){l=c[e>>2]|0;d=c[(c[f>>2]|0)+20>>2]|0;b=c[g>>2]|0;c[h>>2]=c[(c[f>>2]|0)+16>>2];c[h+4>>2]=d;c[h+8>>2]=b;Zi(j,l,4168,h)}l=c[e>>2]|0;d=c[(c[f>>2]|0)+20>>2]|0;b=c[g>>2]|0;c[h>>2]=c[(c[f>>2]|0)+16>>2];c[h+4>>2]=d;c[h+8>>2]=b;Zi(j,l,4216,h);l=c[e>>2]|0;e=c[(c[f>>2]|0)+20>>2]|0;b=c[g>>2]|0;c[h>>2]=c[(c[f>>2]|0)+16>>2];c[h+4>>2]=e;c[h+8>>2]=b;Zi(j,l,4272,h);i=k;return c[j>>2]|0}function Si(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e+4|0;c[g>>2]=a;c[e>>2]=b;c[f>>2]=0;if((d[(c[g>>2]|0)+232>>0]|0|0)!=0){a=c[f>>2]|0;i=e;return a|0}c[f>>2]=Ni(c[g>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}function Ti(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function Ui(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;e=d+4|0;c[f>>2]=a;c[d>>2]=b;c[e>>2]=c[f>>2];Vi(c[e>>2]|0);i=d;return 0}function Vi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;b=d+16|0;e=d;g=d+4|0;f=d+8|0;h=d+12|0;c[b>>2]=a;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[b>>2]|0)+248>>2]|0)){break}c[f>>2]=(c[(c[b>>2]|0)+252>>2]|0)+((c[e>>2]|0)*24|0)+4;c[g>>2]=c[(c[f>>2]|0)+8>>2];while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[(c[g>>2]|0)+8>>2];Wi(c[h>>2]|0);c[g>>2]=c[c[g>>2]>>2]}ai(c[f>>2]|0);c[e>>2]=(c[e>>2]|0)+1}c[(c[b>>2]|0)+260>>2]=0;i=d;return}function Wi(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;oc(c[d>>2]|0);i=b;return}function Xi(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;m=e;j=e+28|0;f=e+8|0;l=e+12|0;k=e+16|0;g=e+20|0;h=e+24|0;c[j>>2]=b;c[f>>2]=0;if((d[(c[j>>2]|0)+229>>0]|0|0)!=2){m=c[f>>2]|0;i=e;return m|0}c[l>>2]=6928;l=c[l>>2]|0;b=c[(c[j>>2]|0)+20>>2]|0;c[m>>2]=c[(c[j>>2]|0)+16>>2];c[m+4>>2]=b;c[k>>2]=wc(l,m)|0;if((c[k>>2]|0)==0){c[f>>2]=7;m=c[f>>2]|0;i=e;return m|0}c[g>>2]=0;c[f>>2]=Df(c[(c[j>>2]|0)+12>>2]|0,c[k>>2]|0,-1,g,0)|0;if((c[f>>2]|0)==0){c[h>>2]=(le(c[g>>2]|0)|0)==100&1;c[f>>2]=yd(c[g>>2]|0)|0;if((c[f>>2]|0)==0){a[(c[j>>2]|0)+229>>0]=c[h>>2]}}oc(c[k>>2]|0);m=c[f>>2]|0;i=e;return m|0}function Yi(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;b=e;h=e+4|0;f=e+8|0;c[g>>2]=a;c[b>>2]=0;c[h>>2]=0;while(1){if((c[b>>2]|0)==0){j=(c[h>>2]|0)<(c[(c[g>>2]|0)+248>>2]|0)}else{j=0}a=c[g>>2]|0;if(!j){break}j=_i(a,c[(c[g>>2]|0)+272>>2]|0,c[h>>2]|0,-1)|0;c[b>>2]=j;c[b>>2]=(c[b>>2]|0)==101?0:j;c[h>>2]=(c[h>>2]|0)+1}Vi(a);if((c[b>>2]|0)!=0){j=c[b>>2]|0;i=e;return j|0}if((d[(c[g>>2]|0)+229>>0]|0|0)==0){j=c[b>>2]|0;i=e;return j|0}if((c[(c[g>>2]|0)+48>>2]|0)!=255){j=c[b>>2]|0;i=e;return j|0}if(!((c[(c[g>>2]|0)+52>>2]|0)>>>0>0)){j=c[b>>2]|0;i=e;return j|0}c[f>>2]=0;c[b>>2]=$i(c[g>>2]|0,22,f,0)|0;if((c[b>>2]|0)!=0){j=c[b>>2]|0;i=e;return j|0}Oe(c[f>>2]|0,1,2)|0;c[b>>2]=le(c[f>>2]|0)|0;if((c[b>>2]|0)==100){j=De(c[f>>2]|0,0)|0;c[(c[g>>2]|0)+48>>2]=j;if((c[(c[g>>2]|0)+48>>2]|0)==1){c[(c[g>>2]|0)+48>>2]=8}}else{if((c[b>>2]|0)==101){c[(c[g>>2]|0)+48>>2]=0}}c[b>>2]=Cd(c[f>>2]|0)|0;j=c[b>>2]|0;i=e;return j|0}function Zi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+28|0;h=f;l=f+4|0;k=f+8|0;j=f+24|0;c[g>>2]=a;c[h>>2]=b;c[l>>2]=d;if((c[c[g>>2]>>2]|0)!=0){i=f;return}c[k>>2]=e;c[j>>2]=sc(c[l>>2]|0,k)|0;if((c[j>>2]|0)==0){c[c[g>>2]>>2]=7;i=f;return}else{a=Bf(c[h>>2]|0,c[j>>2]|0,0,0,0)|0;c[c[g>>2]>>2]=a;oc(c[j>>2]|0);i=f;return}}function _i(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+128|0;n=h+96|0;g=h+104|0;p=h+120|0;q=h+116|0;j=h+112|0;r=h+108|0;l=h+8|0;o=h+100|0;s=h+80|0;m=h+24|0;f=h+16|0;k=h;c[n>>2]=a;c[g>>2]=b;c[p>>2]=d;c[q>>2]=e;c[r>>2]=0;a=l;c[a>>2]=0;c[a+4>>2]=0;c[o>>2]=0;c[f>>2]=0;a=k;c[a>>2]=0;c[a+4>>2]=0;c[j>>2]=aj(c[n>>2]|0,c[g>>2]|0,c[p>>2]|0,c[q>>2]|0,0,0,1,0,m)|0;a:do{if((c[j>>2]|0)==0){if((c[m+4>>2]|0)!=0){if((c[q>>2]|0)!=-1){c[j>>2]=bj(c[n>>2]|0,c[g>>2]|0,c[p>>2]|0,k)|0;if((c[j>>2]|0)!=0){break}}do{if((c[q>>2]|0)==-2){if((c[m+4>>2]|0)==1){c[j>>2]=101;break a}else{d=k;b=c[d+4>>2]|0;a=l;c[a>>2]=c[d>>2];c[a+4>>2]=b;c[f>>2]=1;break}}else{b=cj(c[n>>2]|0,c[g>>2]|0,c[p>>2]|0,(c[q>>2]|0)+1|0)|0;a=l;c[a>>2]=b;c[a+4>>2]=D;c[j>>2]=dj(c[n>>2]|0,c[g>>2]|0,c[p>>2]|0,(c[q>>2]|0)+1|0,r)|0;if((c[q>>2]|0)!=-1){a=l;d=c[a+4>>2]|0;e=k;b=c[e+4>>2]|0;e=(d|0)>(b|0)|((d|0)==(b|0)?(c[a>>2]|0)>>>0>(c[e>>2]|0)>>>0:0)}else{e=0}c[f>>2]=e&1}}while(0);if((c[j>>2]|0)==0){c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+12>>2]=1;a=s+12|0;c[a>>2]=c[a>>2]|((c[f>>2]|0)!=0?2:0);c[j>>2]=ej(c[n>>2]|0,m,s)|0;while(1){if(0!=(c[j>>2]|0)){break}c[j>>2]=fj(c[n>>2]|0,m)|0;if((c[j>>2]|0)!=100){break}c[j>>2]=gj(c[n>>2]|0,o,1,c[m+40>>2]|0,c[m+44>>2]|0,c[m+48>>2]|0,c[m+52>>2]|0)|0}if((c[j>>2]|0)==0){if((c[q>>2]|0)!=-1){c[j>>2]=hj(c[n>>2]|0,c[g>>2]|0,c[p>>2]|0,c[q>>2]|0,c[m>>2]|0,c[m+4>>2]|0)|0;if((c[j>>2]|0)!=0){break}}if((c[o>>2]|0)!=0){a=l;c[j>>2]=ij(c[n>>2]|0,c[o>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[r>>2]|0)|0;if((c[j>>2]|0)==0){if(!((c[q>>2]|0)==-1)){b=l;e=c[b+4>>2]|0;a=k;d=c[a+4>>2]|0;if(!((e|0)<(d|0)|((e|0)==(d|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0))){break}}b=l;a=(c[o>>2]|0)+56|0;c[j>>2]=jj(c[n>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0}}}}}}}while(0);kj(c[o>>2]|0);lj(m);i=h;return c[j>>2]|0}function $i(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=i;i=i+208|0;q=g;n=g+44|0;m=g+40|0;h=g+36|0;k=g+32|0;r=g+48|0;f=g+20|0;j=g+16|0;o=g+12|0;l=g+24|0;p=g+28|0;c[n>>2]=a;c[m>>2]=b;c[h>>2]=d;c[k>>2]=e;fL(r|0,6728,160)|0;c[f>>2]=0;c[j>>2]=c[(c[n>>2]|0)+56+(c[m>>2]<<2)>>2];do{if((c[j>>2]|0)==0){e=c[m>>2]|0;do{if((c[m>>2]|0)==18){a=c[r+(e<<2)>>2]|0;d=c[(c[n>>2]|0)+20>>2]|0;b=c[(c[n>>2]|0)+220>>2]|0;c[q>>2]=c[(c[n>>2]|0)+16>>2];c[q+4>>2]=d;c[q+8>>2]=b;c[o>>2]=wc(a,q)|0}else{r=c[r+(c[m>>2]<<2)>>2]|0;d=c[n>>2]|0;if((e|0)==7){c[q>>2]=c[d+216>>2];c[o>>2]=wc(r,q)|0;break}else{a=c[(c[n>>2]|0)+20>>2]|0;c[q>>2]=c[d+16>>2];c[q+4>>2]=a;c[o>>2]=wc(r,q)|0;break}}}while(0);if((c[o>>2]|0)!=0){c[f>>2]=Df(c[(c[n>>2]|0)+12>>2]|0,c[o>>2]|0,-1,j,0)|0;oc(c[o>>2]|0);c[(c[n>>2]|0)+56+(c[m>>2]<<2)>>2]=c[j>>2];break}else{c[f>>2]=7;break}}}while(0);if((c[k>>2]|0)==0){b=c[j>>2]|0;a=c[h>>2]|0;c[a>>2]=b;a=c[f>>2]|0;i=g;return a|0}c[p>>2]=Ue(c[j>>2]|0)|0;c[l>>2]=0;while(1){if((c[f>>2]|0)!=0){k=15;break}if((c[l>>2]|0)>=(c[p>>2]|0)){k=15;break}c[f>>2]=Se(c[j>>2]|0,(c[l>>2]|0)+1|0,c[(c[k>>2]|0)+(c[l>>2]<<2)>>2]|0)|0;c[l>>2]=(c[l>>2]|0)+1}if((k|0)==15){b=c[j>>2]|0;a=c[h>>2]|0;c[a>>2]=b;a=c[f>>2]|0;i=g;return a|0}return 0}function aj(a,b,d,e,f,g,h,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;l=i;i=i+48|0;u=l+32|0;m=l+28|0;n=l+24|0;o=l+20|0;p=l+16|0;q=l+8|0;r=l+4|0;s=l;t=l+12|0;c[u>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[s>>2]=j;c[t>>2]=k;j=(c[t>>2]|0)+0|0;k=j+56|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0));a=Vj(c[u>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0)|0;i=l;return a|0}function bj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;g=l+24|0;f=l;m=l+4|0;n=l+8|0;k=l+12|0;j=l+16|0;h=l+20|0;c[f>>2]=a;c[m>>2]=b;c[n>>2]=d;c[k>>2]=e;c[h>>2]=$i(c[f>>2]|0,15,j,0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];a=c[g>>2]|0;i=l;return a|0}a=c[j>>2]|0;b=cj(c[f>>2]|0,c[m>>2]|0,c[n>>2]|0,0)|0;Pe(a,1,b,D)|0;b=c[j>>2]|0;a=cj(c[f>>2]|0,c[m>>2]|0,c[n>>2]|0,1023)|0;Pe(b,2,a,D)|0;if(100==(le(c[j>>2]|0)|0)){b=Ee(c[j>>2]|0,0)|0;a=c[k>>2]|0;c[a>>2]=b;c[a+4>>2]=D}c[g>>2]=Cd(c[j>>2]|0)|0;a=c[g>>2]|0;i=l;return a|0}function cj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;k=f+20|0;l=f+16|0;j=f+8|0;g=f+12|0;h=f;c[k>>2]=a;c[l>>2]=b;c[j>>2]=d;c[g>>2]=e;a=c[l>>2]|0;b=c[(c[k>>2]|0)+248>>2]|0;b=nL(a|0,((a|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0;a=c[j>>2]|0;a=dL(b|0,D|0,a|0,((a|0)<0)<<31>>31|0)|0;a=nL(a|0,D|0,1024,0)|0;b=h;c[b>>2]=a;c[b+4>>2]=D;b=h;a=c[g>>2]|0;a=dL(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;i=f;return a|0}function dj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;j=h+28|0;k=h;l=h+4|0;m=h+8|0;g=h+12|0;n=h+16|0;p=h+20|0;o=h+24|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[g>>2]=f;c[o>>2]=0;c[n>>2]=$i(c[j>>2]|0,8,p,0)|0;if((c[n>>2]|0)==0){b=c[p>>2]|0;a=cj(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;Pe(b,1,a,D)|0;if(100==(le(c[p>>2]|0)|0)){c[o>>2]=De(c[p>>2]|0,0)|0}c[n>>2]=Cd(c[p>>2]|0)|0}if((c[n>>2]|0)!=0){a=c[n>>2]|0;i=h;return a|0}if((c[o>>2]|0)>=16){c[n>>2]=_i(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;c[c[g>>2]>>2]=0;a=c[n>>2]|0;i=h;return a|0}else{c[c[g>>2]>>2]=c[o>>2];a=c[n>>2]|0;i=h;return a|0}return 0}function ej(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;c[(c[g>>2]|0)+12>>2]=c[f>>2];a=Tj(c[h>>2]|0,c[g>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;i=e;return a|0}function fj(b,e){b=b|0;e=e|0;var f=0,g=0,h=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;y=i;i=i+128|0;h=y+120|0;q=y+116|0;k=y+112|0;l=y+108|0;o=y+104|0;I=y+100|0;z=y+96|0;s=y+92|0;t=y+88|0;n=y+84|0;m=y+80|0;p=y+76|0;r=y+72|0;C=y+68|0;j=y+64|0;v=y+44|0;u=y+40|0;w=y+36|0;E=y;A=y+24|0;f=y+32|0;x=y+28|0;K=y+48|0;B=y+16|0;H=y+8|0;J=y+52|0;G=y+56|0;F=y+60|0;c[q>>2]=b;c[k>>2]=e;c[l>>2]=0;c[o>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+12>>2]&2;c[I>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+12>>2]&1;c[z>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+12>>2]&4;c[s>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+12>>2]&8;c[t>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+12>>2]&16;c[n>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+12>>2]&32;c[m>>2]=c[c[k>>2]>>2];c[p>>2]=c[(c[k>>2]|0)+4>>2];c[r>>2]=c[(c[k>>2]|0)+12>>2];c[C>>2]=(d[(c[q>>2]|0)+231>>0]|0)!=0?49:50;if((c[(c[k>>2]|0)+4>>2]|0)==0){c[h>>2]=0;b=c[h>>2]|0;i=y;return b|0}a:while(1){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[(c[k>>2]|0)+8>>2]|0)){break}c[u>>2]=c[(c[m>>2]|0)+(c[v>>2]<<2)>>2];if((a[(c[u>>2]|0)+4>>0]|0)!=0){Aj(c[u>>2]|0)}else{c[l>>2]=Bj(c[q>>2]|0,c[u>>2]|0,0)|0}if((c[l>>2]|0)!=0){g=9;break a}c[v>>2]=(c[v>>2]|0)+1}Cj(c[m>>2]|0,c[p>>2]|0,c[(c[k>>2]|0)+8>>2]|0,51);c[(c[k>>2]|0)+8>>2]=0;if((c[(c[c[m>>2]>>2]|0)+40>>2]|0)==0){g=68;break}c[(c[k>>2]|0)+44>>2]=c[(c[c[m>>2]>>2]|0)+60>>2];c[(c[k>>2]|0)+40>>2]=c[(c[c[m>>2]>>2]|0)+64>>2];if((c[c[r>>2]>>2]|0)!=0){if((c[t>>2]|0)==0){if((c[(c[k>>2]|0)+44>>2]|0)<(c[(c[r>>2]|0)+4>>2]|0)){g=68;break}if((c[s>>2]|0)==0){if((c[(c[k>>2]|0)+44>>2]|0)>(c[(c[r>>2]|0)+4>>2]|0)){g=68;break}}if((XK(c[(c[k>>2]|0)+40>>2]|0,c[c[r>>2]>>2]|0,c[(c[r>>2]|0)+4>>2]|0)|0)!=0){g=68;break}}}c[j>>2]=1;while(1){if((c[j>>2]|0)<(c[p>>2]|0)){if((c[(c[(c[m>>2]|0)+(c[j>>2]<<2)>>2]|0)+40>>2]|0)!=0){if((c[(c[(c[m>>2]|0)+(c[j>>2]<<2)>>2]|0)+60>>2]|0)==(c[(c[k>>2]|0)+44>>2]|0)){b=0==(XK(c[(c[k>>2]|0)+40>>2]|0,c[(c[(c[m>>2]|0)+(c[j>>2]<<2)>>2]|0)+64>>2]|0,c[(c[k>>2]|0)+44>>2]|0)|0)}else{b=0}}else{b=0}}else{b=0}e=c[j>>2]|0;if(!b){break}c[j>>2]=e+1}do{if((e|0)==1){if((c[o>>2]|0)!=0){g=35}else{if((c[n>>2]|0)!=0){g=35}else{if((d[(c[q>>2]|0)+231>>0]|0)!=0){if(((c[(c[c[m>>2]>>2]|0)+56>>2]|0)!=0|0)!=0){g=35;break}}c[(c[k>>2]|0)+52>>2]=c[(c[c[m>>2]>>2]|0)+76>>2];if((c[(c[c[m>>2]>>2]|0)+56>>2]|0)!=0){c[l>>2]=Ej(c[k>>2]|0,c[(c[c[m>>2]>>2]|0)+72>>2]|0,c[(c[k>>2]|0)+52>>2]|0)|0;c[(c[k>>2]|0)+48>>2]=c[(c[k>>2]|0)+16>>2]}else{c[(c[k>>2]|0)+48>>2]=c[(c[c[m>>2]>>2]|0)+72>>2]}if((c[l>>2]|0)==0){c[l>>2]=100}}}}else{g=35}}while(0);if((g|0)==35){g=0;c[w>>2]=0;b=E;c[b>>2]=0;c[b+4>>2]=0;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[j>>2]|0)){break}Fj(c[q>>2]|0,c[(c[m>>2]|0)+(c[v>>2]<<2)>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+1}Cj(c[m>>2]|0,c[j>>2]|0,c[j>>2]|0,c[C>>2]|0);while(1){if((c[(c[c[m>>2]>>2]|0)+80>>2]|0)==0){break}c[f>>2]=0;c[x>>2]=0;L=(c[c[m>>2]>>2]|0)+88|0;e=c[L+4>>2]|0;b=B;c[b>>2]=c[L>>2];c[b+4>>2]=e;Gj(c[q>>2]|0,c[c[m>>2]>>2]|0,f,x)|0;c[A>>2]=1;while(1){if((c[A>>2]|0)>=(c[j>>2]|0)){break}if((c[(c[(c[m>>2]|0)+(c[A>>2]<<2)>>2]|0)+80>>2]|0)==0){break}b=(c[(c[m>>2]|0)+(c[A>>2]<<2)>>2]|0)+88|0;L=B;if(!((c[b>>2]|0)==(c[L>>2]|0)?(c[b+4>>2]|0)==(c[L+4>>2]|0):0)){break}Gj(c[q>>2]|0,c[(c[m>>2]|0)+(c[A>>2]<<2)>>2]|0,0,0)|0;c[A>>2]=(c[A>>2]|0)+1}if((c[z>>2]|0)!=0){Hj(c[(c[r>>2]|0)+8>>2]|0,0,f,x)}if((c[o>>2]|0)!=0){if((c[x>>2]|0)>0){g=49}}else{g=49}do{if((g|0)==49){g=0;if((d[(c[q>>2]|0)+231>>0]|0)!=0){if((c[w>>2]|0)>0){L=E;b=B;b=$K(c[L>>2]|0,c[L+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;L=H;c[L>>2]=b;c[L+4>>2]=D}else{g=52}}else{g=52}if((g|0)==52){g=0;L=B;b=E;b=$K(c[L>>2]|0,c[L+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;L=H;c[L>>2]=b;c[L+4>>2]=D}e=H;e=tj(c[e>>2]|0,c[e+4>>2]|0)|0;if((c[I>>2]|0)!=0){b=(c[x>>2]|0)+1|0}else{b=0}c[K>>2]=e+b;if(((c[w>>2]|0)+(c[K>>2]|0)|0)>(c[(c[k>>2]|0)+20>>2]|0)){c[(c[k>>2]|0)+20>>2]=(c[w>>2]|0)+(c[K>>2]|0)<<1;c[J>>2]=qc(c[(c[k>>2]|0)+16>>2]|0,c[(c[k>>2]|0)+20>>2]|0)|0;if((c[J>>2]|0)==0){g=57;break a}c[(c[k>>2]|0)+16>>2]=c[J>>2]}e=(c[(c[k>>2]|0)+16>>2]|0)+(c[w>>2]|0)|0;if((c[n>>2]|0)!=0){c[G>>2]=e;L=H;c[F>>2]=Ij(c[L>>2]|0,c[L+4>>2]|0,c[f>>2]|0,c[x>>2]|0,c[G>>2]|0)|0;if((c[F>>2]|0)==0){break}e=B;b=c[e+4>>2]|0;L=E;c[L>>2]=c[e>>2];c[L+4>>2]=b;c[w>>2]=(c[w>>2]|0)+(c[F>>2]|0);break}else{b=H;e=uj(e,c[b>>2]|0,c[b+4>>2]|0)|0;c[w>>2]=(c[w>>2]|0)+e;e=B;b=c[e+4>>2]|0;L=E;c[L>>2]=c[e>>2];c[L+4>>2]=b;if((c[I>>2]|0)==0){break}fL((c[(c[k>>2]|0)+16>>2]|0)+(c[w>>2]|0)|0,c[f>>2]|0,c[x>>2]|0)|0;c[w>>2]=(c[w>>2]|0)+(c[x>>2]|0);L=c[w>>2]|0;c[w>>2]=L+1;a[(c[(c[k>>2]|0)+16>>2]|0)+L>>0]=0;break}}}while(0);Cj(c[m>>2]|0,c[j>>2]|0,c[A>>2]|0,c[C>>2]|0)}if((c[w>>2]|0)>0){c[(c[k>>2]|0)+48>>2]=c[(c[k>>2]|0)+16>>2];c[(c[k>>2]|0)+52>>2]=c[w>>2];c[l>>2]=100}}c[(c[k>>2]|0)+8>>2]=c[j>>2];if((c[l>>2]|0)!=0){g=68;break}}if((g|0)==9){c[h>>2]=c[l>>2];L=c[h>>2]|0;i=y;return L|0}else if((g|0)==57){c[h>>2]=7;L=c[h>>2]|0;i=y;return L|0}else if((g|0)==68){c[h>>2]=c[l>>2];L=c[h>>2]|0;i=y;return L|0}return 0}function gj(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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;w=i;i=i+80|0;s=w+68|0;n=w+64|0;m=w+60|0;y=w+56|0;r=w+52|0;j=w+48|0;A=w+44|0;v=w+40|0;t=w+36|0;u=w+32|0;k=w+24|0;q=w+20|0;l=w+16|0;p=w+12|0;o=w+8|0;x=w+4|0;z=w;B=w+28|0;c[n>>2]=a;c[m>>2]=b;c[y>>2]=d;c[r>>2]=e;c[j>>2]=f;c[A>>2]=g;c[v>>2]=h;c[l>>2]=c[c[m>>2]>>2];if((c[l>>2]|0)==0){c[l>>2]=mc(64)|0;if((c[l>>2]|0)==0){c[s>>2]=7;a=c[s>>2]|0;i=w;return a|0}g=(c[l>>2]|0)+0|0;h=g+64|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[c[m>>2]>>2]=c[l>>2];a=mc(c[(c[n>>2]|0)+224>>2]|0)|0;c[(c[l>>2]|0)+48>>2]=a;if((c[(c[l>>2]|0)+48>>2]|0)==0){c[s>>2]=7;a=c[s>>2]|0;i=w;return a|0}c[(c[l>>2]|0)+40>>2]=c[(c[n>>2]|0)+224>>2];c[p>>2]=$i(c[n>>2]|0,10,o,0)|0;if((c[p>>2]|0)!=0){c[s>>2]=c[p>>2];a=c[s>>2]|0;i=w;return a|0}if(100==(le(c[o>>2]|0)|0)){b=Ee(c[o>>2]|0,0)|0;d=(c[l>>2]|0)+16|0;c[d>>2]=b;c[d+4>>2]=D;d=(c[l>>2]|0)+16|0;b=c[d+4>>2]|0;a=(c[l>>2]|0)+8|0;c[a>>2]=c[d>>2];c[a+4>>2]=b}c[p>>2]=Cd(c[o>>2]|0)|0;if((c[p>>2]|0)!=0){c[s>>2]=c[p>>2];a=c[s>>2]|0;i=w;return a|0}}c[q>>2]=c[(c[l>>2]|0)+44>>2];c[t>>2]=wj(c[(c[l>>2]|0)+24>>2]|0,c[(c[l>>2]|0)+28>>2]|0,c[r>>2]|0,c[j>>2]|0)|0;c[u>>2]=(c[j>>2]|0)-(c[t>>2]|0);a=c[t>>2]|0;a=tj(a,((a|0)<0)<<31>>31)|0;b=c[u>>2]|0;b=a+(tj(b,((b|0)<0)<<31>>31)|0)|0;b=b+(c[u>>2]|0)|0;a=c[v>>2]|0;a=b+(tj(a,((a|0)<0)<<31>>31)|0)|0;c[k>>2]=a+(c[v>>2]|0);do{if((c[q>>2]|0)>0){if(((c[q>>2]|0)+(c[k>>2]|0)|0)>(c[(c[n>>2]|0)+224>>2]|0)){d=c[n>>2]|0;e=(c[l>>2]|0)+16|0;a=e;b=c[a>>2]|0;a=c[a+4>>2]|0;f=dL(b|0,a|0,1,0)|0;c[e>>2]=f;c[e+4>>2]=D;c[x>>2]=pj(d,b,a,c[(c[l>>2]|0)+48>>2]|0,c[q>>2]|0)|0;if((c[x>>2]|0)!=0){c[s>>2]=c[x>>2];a=c[s>>2]|0;i=w;return a|0}a=(c[n>>2]|0)+52|0;c[a>>2]=(c[a>>2]|0)+1;c[x>>2]=xj(c[n>>2]|0,c[l>>2]|0,c[y>>2]|0,c[r>>2]|0,(c[t>>2]|0)+1|0)|0;if((c[x>>2]|0)==0){c[q>>2]=0;c[(c[l>>2]|0)+28>>2]=0;c[t>>2]=0;c[u>>2]=c[j>>2];b=c[j>>2]|0;b=1+(tj(b,((b|0)<0)<<31>>31)|0)|0;b=b+(c[j>>2]|0)|0;a=c[v>>2]|0;a=b+(tj(a,((a|0)<0)<<31>>31)|0)|0;c[k>>2]=a+(c[v>>2]|0);break}c[s>>2]=c[x>>2];a=c[s>>2]|0;i=w;return a|0}}}while(0);b=c[k>>2]|0;a=(c[l>>2]|0)+56|0;d=a;b=dL(c[d>>2]|0,c[d+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[a>>2]=b;c[a+4>>2]=D;do{if((c[k>>2]|0)>(c[(c[l>>2]|0)+40>>2]|0)){c[z>>2]=qc(c[(c[l>>2]|0)+48>>2]|0,c[k>>2]|0)|0;if((c[z>>2]|0)!=0){c[(c[l>>2]|0)+48>>2]=c[z>>2];c[(c[l>>2]|0)+40>>2]=c[k>>2];break}c[s>>2]=7;a=c[s>>2]|0;i=w;return a|0}}while(0);a=c[t>>2]|0;a=uj((c[(c[l>>2]|0)+48>>2]|0)+(c[q>>2]|0)|0,a,((a|0)<0)<<31>>31)|0;c[q>>2]=(c[q>>2]|0)+a;a=c[u>>2]|0;a=uj((c[(c[l>>2]|0)+48>>2]|0)+(c[q>>2]|0)|0,a,((a|0)<0)<<31>>31)|0;c[q>>2]=(c[q>>2]|0)+a;fL((c[(c[l>>2]|0)+48>>2]|0)+(c[q>>2]|0)|0,(c[r>>2]|0)+(c[t>>2]|0)|0,c[u>>2]|0)|0;c[q>>2]=(c[q>>2]|0)+(c[u>>2]|0);a=c[v>>2]|0;a=uj((c[(c[l>>2]|0)+48>>2]|0)+(c[q>>2]|0)|0,a,((a|0)<0)<<31>>31)|0;c[q>>2]=(c[q>>2]|0)+a;fL((c[(c[l>>2]|0)+48>>2]|0)+(c[q>>2]|0)|0,c[A>>2]|0,c[v>>2]|0)|0;c[(c[l>>2]|0)+44>>2]=(c[q>>2]|0)+(c[v>>2]|0);if((c[y>>2]|0)!=0){do{if((c[j>>2]|0)>(c[(c[l>>2]|0)+32>>2]|0)){c[B>>2]=qc(c[(c[l>>2]|0)+36>>2]|0,c[j>>2]<<1)|0;if((c[B>>2]|0)!=0){c[(c[l>>2]|0)+32>>2]=c[j>>2]<<1;c[(c[l>>2]|0)+36>>2]=c[B>>2];c[(c[l>>2]|0)+24>>2]=c[B>>2];break}c[s>>2]=7;a=c[s>>2]|0;i=w;return a|0}}while(0);fL(c[(c[l>>2]|0)+24>>2]|0,c[r>>2]|0,c[j>>2]|0)|0}else{c[(c[l>>2]|0)+24>>2]=c[r>>2]}c[(c[l>>2]|0)+28>>2]=c[j>>2];c[s>>2]=0;a=c[s>>2]|0;i=w;return a|0}function hj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+48|0;h=j+36|0;l=j+32|0;m=j+28|0;n=j+24|0;o=j+20|0;s=j+16|0;r=j+8|0;p=j+4|0;q=j;k=j+12|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[s>>2]=f;c[r>>2]=g;c[p>>2]=0;c[k>>2]=0;c[q>>2]=0;while(1){if((c[p>>2]|0)!=0){break}if((c[q>>2]|0)>=(c[r>>2]|0)){break}c[p>>2]=vj(c[l>>2]|0,c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]|0)|0;c[q>>2]=(c[q>>2]|0)+1}if((c[p>>2]|0)!=0){c[h>>2]=c[p>>2];a=c[h>>2]|0;i=j;return a|0}q=c[l>>2]|0;if((c[o>>2]|0)==-2){c[p>>2]=$i(q,26,k,0)|0;if((c[p>>2]|0)==0){a=c[k>>2]|0;b=cj(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,0)|0;Pe(a,1,b,D)|0;b=c[k>>2]|0;a=cj(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,1023)|0;Pe(b,2,a,D)|0}}else{c[p>>2]=$i(q,16,k,0)|0;if((c[p>>2]|0)==0){b=c[k>>2]|0;a=cj(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;Pe(b,1,a,D)|0}}if((c[p>>2]|0)==0){le(c[k>>2]|0)|0;c[p>>2]=Cd(c[k>>2]|0)|0}c[h>>2]=c[p>>2];a=c[h>>2]|0;i=j;return a|0}function ij(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+48|0;j=n+44|0;k=n+40|0;m=n+8|0;l=n+36|0;h=n+24|0;o=n+16|0;g=n;p=n+28|0;q=n+32|0;c[j>>2]=a;c[k>>2]=b;a=m;c[a>>2]=d;c[a+4>>2]=e;c[l>>2]=f;if((c[c[k>>2]>>2]|0)==0){b=m;a=(c[k>>2]|0)+56|0;c[h>>2]=rj(c[j>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[l>>2]|0,0,0,0,0,0,0,c[a>>2]|0,c[a+4>>2]|0,c[(c[k>>2]|0)+48>>2]|0,c[(c[k>>2]|0)+44>>2]|0)|0;a=c[j>>2]|0;a=a+52|0;b=c[a>>2]|0;b=b+1|0;c[a>>2]=b;a=c[h>>2]|0;i=n;return a|0}a=o;c[a>>2]=0;c[a+4>>2]=0;c[p>>2]=0;c[q>>2]=0;a=(c[k>>2]|0)+16|0;e=c[a+4>>2]|0;d=g;c[d>>2]=c[a>>2];c[d+4>>2]=e;d=c[j>>2]|0;e=(c[k>>2]|0)+16|0;a=e;b=c[a>>2]|0;a=c[a+4>>2]|0;f=dL(b|0,a|0,1,0)|0;c[e>>2]=f;c[e+4>>2]=D;c[h>>2]=pj(d,b,a,c[(c[k>>2]|0)+48>>2]|0,c[(c[k>>2]|0)+44>>2]|0)|0;if((c[h>>2]|0)==0){b=(c[k>>2]|0)+8|0;a=(c[k>>2]|0)+16|0;c[h>>2]=qj(c[j>>2]|0,c[c[k>>2]>>2]|0,1,c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0,o,p,q)|0}if((c[h>>2]|0)!=0){a=c[j>>2]|0;a=a+52|0;b=c[a>>2]|0;b=b+1|0;c[a>>2]=b;a=c[h>>2]|0;i=n;return a|0}e=(c[k>>2]|0)+8|0;d=g;b=o;a=(c[k>>2]|0)+56|0;c[h>>2]=rj(c[j>>2]|0,c[m>>2]|0,c[m+4>>2]|0,c[l>>2]|0,c[e>>2]|0,c[e+4>>2]|0,c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;a=c[j>>2]|0;a=a+52|0;b=c[a>>2]|0;b=b+1|0;c[a>>2]=b;a=c[h>>2]|0;i=n;return a|0}function jj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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;r=i;i=i+80|0;m=r+72|0;k=r+40|0;v=r+32|0;j=r+68|0;l=r+64|0;q=r+60|0;u=r+24|0;s=r;g=r+16|0;t=r+8|0;p=r+52|0;o=r+56|0;n=r+48|0;c[m>>2]=a;a=k;c[a>>2]=b;c[a+4>>2]=d;a=v;c[a>>2]=e;c[a+4>>2]=f;c[j>>2]=0;c[j>>2]=$i(c[m>>2]|0,37,l,0)|0;if((c[j>>2]|0)!=0){a=c[j>>2]|0;i=r;return a|0}c[q>>2]=0;b=k;b=lL(c[b>>2]|0,c[b+4>>2]|0,1024,0)|0;b=dL(b|0,D|0,1,0)|0;b=nL(b|0,D|0,1024,0)|0;b=$K(b|0,D|0,1,0)|0;a=u;c[a>>2]=b;c[a+4>>2]=D;a=v;a=nL(c[a>>2]|0,c[a+4>>2]|0,3,0)|0;a=lL(a|0,D|0,2,0)|0;b=s;c[b>>2]=a;c[b+4>>2]=D;b=c[l>>2]|0;a=k;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;Pe(b,1,a,D)|0;a=u;Pe(c[l>>2]|0,2,c[a>>2]|0,c[a+4>>2]|0)|0;while(1){if(100!=(le(c[l>>2]|0)|0)){break}a=g;c[a>>2]=0;c[a+4>>2]=0;oj(c[l>>2]|0,2,t,g);a=g;b=c[a+4>>2]|0;if((b|0)<0|(b|0)==0&(c[a>>2]|0)>>>0<=0){h=6;break}b=g;e=c[b+4>>2]|0;a=s;d=c[a+4>>2]|0;if((e|0)>(d|0)|((e|0)==(d|0)?(c[b>>2]|0)>>>0>(c[a>>2]|0)>>>0:0)){h=6;break}c[q>>2]=1}if((h|0)==6){c[q>>2]=0}c[j>>2]=Cd(c[l>>2]|0)|0;if((c[q>>2]|0)==0){a=c[j>>2]|0;i=r;return a|0}c[p>>2]=0;if((c[j>>2]|0)==0){c[j>>2]=$i(c[m>>2]|0,38,o,0)|0}if((c[j>>2]|0)==0){c[j>>2]=$i(c[m>>2]|0,39,n,0)|0}a:do{if((c[j>>2]|0)==0){a=k;Pe(c[l>>2]|0,1,c[a>>2]|0,c[a+4>>2]|0)|0;do{if(100!=(le(c[l>>2]|0)|0)){break a}b=c[o>>2]|0;a=c[p>>2]|0;c[p>>2]=a+1;Oe(b,1,a)|0;a=c[o>>2]|0;Oe(a,2,De(c[l>>2]|0,0)|0)|0;a=c[o>>2]|0;Oe(a,3,De(c[l>>2]|0,1)|0)|0;le(c[o>>2]|0)|0;c[j>>2]=Cd(c[o>>2]|0)|0}while((c[j>>2]|0)==0);Cd(c[l>>2]|0)|0}}while(0);if((c[j>>2]|0)==0){c[j>>2]=Cd(c[l>>2]|0)|0}if((c[j>>2]|0)!=0){a=c[j>>2]|0;i=r;return a|0}a=k;Pe(c[n>>2]|0,1,c[a>>2]|0,c[a+4>>2]|0)|0;le(c[n>>2]|0)|0;c[j>>2]=Cd(c[n>>2]|0)|0;a=c[j>>2]|0;i=r;return a|0}function kj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}oc(c[(c[d>>2]|0)+48>>2]|0);oc(c[(c[d>>2]|0)+36>>2]|0);nj(c[c[d>>2]>>2]|0);oc(c[d>>2]|0);i=b;return}function lj(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[d>>2]|0)+4>>2]|0)){break}mj(c[(c[c[d>>2]>>2]|0)+(c[e>>2]<<2)>>2]|0);c[e>>2]=(c[e>>2]|0)+1}oc(c[c[d>>2]>>2]|0);oc(c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+16>>2]=0;i=b;return}function mj(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;if((c[b>>2]|0)!=0){if((c[(c[b>>2]|0)+56>>2]|0)==0){oc(c[(c[b>>2]|0)+64>>2]|0);if((d[(c[b>>2]|0)+5>>0]|0|0)==0){oc(c[(c[b>>2]|0)+40>>2]|0);sf(c[(c[b>>2]|0)+52>>2]|0)|0}}}oc(c[b>>2]|0);i=e;return}function nj(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b;e=b+4|0;c[f>>2]=a;if((c[f>>2]|0)==0){i=b;return}c[d>>2]=c[(c[f>>2]|0)+8>>2];nj(c[c[d>>2]>>2]|0);while(1){if((c[d>>2]|0)==0){break}c[e>>2]=c[(c[d>>2]|0)+4>>2];if((c[(c[d>>2]|0)+36>>2]|0)!=((c[d>>2]|0)+40|0)){oc(c[(c[d>>2]|0)+36>>2]|0)}oc(c[(c[d>>2]|0)+28>>2]|0);oc(c[d>>2]|0);c[d>>2]=c[e>>2]}i=b;return}function oj(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;p=m+32|0;o=m+28|0;n=m+8|0;h=m+12|0;k=m+16|0;l=m+20|0;g=m+24|0;j=m;c[p>>2]=a;c[o>>2]=b;c[n>>2]=e;c[h>>2]=f;c[k>>2]=Fe(c[p>>2]|0,c[o>>2]|0)|0;if((c[k>>2]|0)==0){i=m;return}c[g>>2]=1;p=j;c[p>>2]=0;c[p+4>>2]=0;c[l>>2]=0;while(1){if((d[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0|0)>=48){b=(d[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0|0)<=57}else{b=0}e=j;f=c[e>>2]|0;e=c[e+4>>2]|0;if(!b){break}p=nL(f|0,e|0,10,0)|0;o=(d[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0)-48|0;o=dL(p|0,D|0,o|0,((o|0)<0)<<31>>31|0)|0;p=j;c[p>>2]=o;c[p+4>>2]=D;c[l>>2]=(c[l>>2]|0)+1}p=c[n>>2]|0;c[p>>2]=f;c[p+4>>2]=e;while(1){if((d[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0|0)!=32){break}c[l>>2]=(c[l>>2]|0)+1}p=j;c[p>>2]=0;c[p+4>>2]=0;if((d[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0|0)==45){c[l>>2]=(c[l>>2]|0)+1;c[g>>2]=-1}while(1){if((d[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0|0)>=48){f=(d[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0|0)<=57}else{f=0}n=j;e=c[n>>2]|0;n=c[n+4>>2]|0;if(!f){break}p=nL(e|0,n|0,10,0)|0;o=(d[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0)-48|0;o=dL(p|0,D|0,o|0,((o|0)<0)<<31>>31|0)|0;p=j;c[p>>2]=o;c[p+4>>2]=D;c[l>>2]=(c[l>>2]|0)+1}o=c[g>>2]|0;o=nL(e|0,n|0,o|0,((o|0)<0)<<31>>31|0)|0;p=c[h>>2]|0;c[p>>2]=o;c[p+4>>2]=D;i=m;return}function pj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;n=l+24|0;j=l;g=l+8|0;m=l+12|0;k=l+16|0;h=l+20|0;c[n>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;c[g>>2]=e;c[m>>2]=f;c[h>>2]=$i(c[n>>2]|0,9,k,0)|0;if((c[h>>2]|0)!=0){n=c[h>>2]|0;i=l;return n|0}n=j;Pe(c[k>>2]|0,1,c[n>>2]|0,c[n+4>>2]|0)|0;Ke(c[k>>2]|0,2,c[g>>2]|0,c[m>>2]|0,0)|0;le(c[k>>2]|0)|0;c[h>>2]=Cd(c[k>>2]|0)|0;n=c[h>>2]|0;i=l;return n|0}function qj(a,b,d,e,f,g,h,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;y=i;i=i+80|0;x=y+72|0;q=y+68|0;u=y+64|0;v=y+16|0;t=y;s=y+60|0;o=y+56|0;r=y+40|0;n=y+44|0;p=y+32|0;m=y+36|0;w=y+24|0;z=y+8|0;A=y+48|0;B=y+52|0;c[x>>2]=a;c[q>>2]=b;c[u>>2]=d;a=v;c[a>>2]=e;c[a+4>>2]=f;a=t;c[a>>2]=g;c[a+4>>2]=h;c[s>>2]=j;c[o>>2]=k;c[r>>2]=l;c[n>>2]=0;if((c[c[q>>2]>>2]|0)==0){b=v;c[p>>2]=sj(c[q>>2]|0,c[u>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=t;b=$K(c[b>>2]|0,c[b+4>>2]|0,1,0)|0;a=c[s>>2]|0;c[a>>2]=b;c[a+4>>2]=D;c[c[r>>2]>>2]=(c[(c[q>>2]|0)+32>>2]|0)-(c[p>>2]|0);c[c[o>>2]>>2]=(c[(c[q>>2]|0)+36>>2]|0)+(c[p>>2]|0);a=c[n>>2]|0;i=y;return a|0}a=t;b=c[a+4>>2]|0;d=w;c[d>>2]=c[a>>2];c[d+4>>2]=b;d=v;b=c[d+4>>2]|0;a=z;c[a>>2]=c[d>>2];c[a+4>>2]=b;c[m>>2]=c[(c[q>>2]|0)+8>>2];while(1){if((c[m>>2]|0)==0){break}if((c[n>>2]|0)!=0){break}a=z;c[A>>2]=sj(c[m>>2]|0,c[u>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[B>>2]=(c[(c[m>>2]|0)+32>>2]|0)-(c[A>>2]|0);a=w;c[n>>2]=pj(c[x>>2]|0,c[a>>2]|0,c[a+4>>2]|0,(c[(c[m>>2]|0)+36>>2]|0)+(c[A>>2]|0)|0,c[B>>2]|0)|0;a=w;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;b=w;c[b>>2]=a;c[b+4>>2]=D;b=(c[(c[m>>2]|0)+12>>2]|0)+1|0;a=z;b=dL(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=z;c[a>>2]=b;c[a+4>>2]=D;c[m>>2]=c[(c[m>>2]|0)+4>>2]}if((c[n>>2]|0)!=0){a=c[n>>2]|0;i=y;return a|0}b=t;a=w;c[n>>2]=qj(c[x>>2]|0,c[c[q>>2]>>2]|0,(c[u>>2]|0)+1|0,c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[s>>2]|0,c[o>>2]|0,c[r>>2]|0)|0;a=c[n>>2]|0;i=y;return a|0}function rj(a,b,d,e,f,g,h,j,k,l,m,n,o,p){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;var 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;s=i;i=i+96|0;z=s+8|0;r=s+60|0;E=s+56|0;q=s+24|0;C=s+84|0;B=s+40|0;A=s+32|0;w=s+48|0;y=s;u=s+64|0;v=s+68|0;t=s+72|0;D=s+76|0;x=s+80|0;c[E>>2]=a;a=q;c[a>>2]=b;c[a+4>>2]=d;c[C>>2]=e;a=B;c[a>>2]=f;c[a+4>>2]=g;a=A;c[a>>2]=h;c[a+4>>2]=j;a=w;c[a>>2]=k;c[a+4>>2]=l;a=y;c[a>>2]=m;c[a+4>>2]=n;c[u>>2]=o;c[v>>2]=p;c[D>>2]=$i(c[E>>2]|0,11,t,0)|0;if((c[D>>2]|0)==0){E=q;Pe(c[t>>2]|0,1,c[E>>2]|0,c[E+4>>2]|0)|0;Oe(c[t>>2]|0,2,c[C>>2]|0)|0;E=B;Pe(c[t>>2]|0,3,c[E>>2]|0,c[E+4>>2]|0)|0;E=A;Pe(c[t>>2]|0,4,c[E>>2]|0,c[E+4>>2]|0)|0;E=y;do{if((c[E>>2]|0)==0&(c[E+4>>2]|0)==0){E=w;Pe(c[t>>2]|0,5,c[E>>2]|0,c[E+4>>2]|0)|0}else{e=w;d=c[e+4>>2]|0;a=y;b=c[a>>2]|0;a=c[a+4>>2]|0;E=z;c[E>>2]=c[e>>2];c[E+4>>2]=d;E=z+8|0;c[E>>2]=b;c[E+4>>2]=a;c[x>>2]=wc(6888,z)|0;if((c[x>>2]|0)!=0){Re(c[t>>2]|0,5,c[x>>2]|0,-1,13)|0;break}c[r>>2]=7;E=c[r>>2]|0;i=s;return E|0}}while(0);Ke(c[t>>2]|0,6,c[u>>2]|0,c[v>>2]|0,0)|0;le(c[t>>2]|0)|0;c[D>>2]=Cd(c[t>>2]|0)|0}c[r>>2]=c[D>>2];E=c[r>>2]|0;i=s;return E|0}function sj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;j=h+16|0;l=h+8|0;k=h;g=h+12|0;c[j>>2]=b;c[l>>2]=d;b=k;c[b>>2]=e;c[b+4>>2]=f;b=k;c[g>>2]=10-(tj(c[b>>2]|0,c[b+4>>2]|0)|0);a[(c[(c[j>>2]|0)+36>>2]|0)+(c[g>>2]|0)>>0]=c[l>>2];b=k;uj((c[(c[j>>2]|0)+36>>2]|0)+((c[g>>2]|0)+1)|0,c[b>>2]|0,c[b+4>>2]|0)|0;i=h;return c[g>>2]|0}function tj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d;e=d+8|0;g=f;c[g>>2]=a;c[g+4>>2]=b;c[e>>2]=0;do{c[e>>2]=(c[e>>2]|0)+1;a=f;a=eL(c[a>>2]|0,c[a+4>>2]|0,7)|0;g=f;c[g>>2]=a;c[g+4>>2]=D;g=f}while((c[g>>2]|0)!=0|(c[g+4>>2]|0)!=0);i=d;return c[e>>2]|0}function uj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;k=g;f=g+16|0;j=g+8|0;c[h>>2]=b;b=k;c[b>>2]=d;c[b+4>>2]=e;c[f>>2]=c[h>>2];e=k;d=c[e+4>>2]|0;b=j;c[b>>2]=c[e>>2];c[b+4>>2]=d;do{k=(c[j>>2]&127|128)&255;b=c[f>>2]|0;c[f>>2]=b+1;a[b>>0]=k;b=j;b=eL(c[b>>2]|0,c[b+4>>2]|0,7)|0;k=j;c[k>>2]=b;c[k+4>>2]=D;k=j}while((c[k>>2]|0)!=0|(c[k+4>>2]|0)!=0);k=(c[f>>2]|0)+ -1|0;a[k>>0]=a[k>>0]&127;i=g;return(c[f>>2]|0)-(c[h>>2]|0)|0}function vj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;h=d+12|0;f=d;e=d+4|0;g=d+8|0;c[h>>2]=a;c[f>>2]=b;c[e>>2]=0;a=(c[f>>2]|0)+8|0;if(!((c[a>>2]|0)!=0|(c[a+4>>2]|0)!=0)){a=c[e>>2]|0;i=d;return a|0}c[e>>2]=$i(c[h>>2]|0,17,g,0)|0;if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=d;return a|0}a=(c[f>>2]|0)+8|0;Pe(c[g>>2]|0,1,c[a>>2]|0,c[a+4>>2]|0)|0;a=(c[f>>2]|0)+24|0;Pe(c[g>>2]|0,2,c[a>>2]|0,c[a+4>>2]|0)|0;le(c[g>>2]|0)|0;c[e>>2]=Cd(c[g>>2]|0)|0;a=c[e>>2]|0;i=d;return a|0}function wj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;j=g+16|0;l=g;k=g+4|0;h=g+12|0;c[j>>2]=b;c[l>>2]=d;c[k>>2]=e;c[g+8>>2]=f;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[l>>2]|0)){f=5;break}if((a[(c[j>>2]|0)+(c[h>>2]|0)>>0]|0)!=(a[(c[k>>2]|0)+(c[h>>2]|0)>>0]|0)){f=5;break}c[h>>2]=(c[h>>2]|0)+1}if((f|0)==5){i=g;return c[h>>2]|0}return 0}function xj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;m=i;i=i+64|0;r=m+56|0;g=m+52|0;h=m+48|0;n=m+44|0;o=m+40|0;p=m+36|0;k=m+32|0;q=m+28|0;j=m+20|0;t=m+16|0;v=m+12|0;u=m+8|0;s=m+4|0;w=m;l=m+24|0;c[g>>2]=a;c[h>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[k>>2]=c[c[h>>2]>>2];do{if((c[k>>2]|0)!=0){c[t>>2]=c[(c[k>>2]|0)+32>>2];c[v>>2]=c[t>>2];c[u>>2]=wj(c[(c[k>>2]|0)+16>>2]|0,c[(c[k>>2]|0)+20>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;c[s>>2]=(c[p>>2]|0)-(c[u>>2]|0);b=c[u>>2]|0;b=tj(b,((b|0)<0)<<31>>31)|0;a=c[s>>2]|0;a=b+(tj(a,((a|0)<0)<<31>>31)|0)|0;c[v>>2]=(c[v>>2]|0)+(a+(c[s>>2]|0));if((c[v>>2]|0)>(c[(c[g>>2]|0)+224>>2]|0)){if((c[(c[k>>2]|0)+16>>2]|0)!=0){break}}if((c[v>>2]|0)>(c[(c[g>>2]|0)+224>>2]|0)){a=mc(c[v>>2]|0)|0;c[(c[k>>2]|0)+36>>2]=a;if((c[(c[k>>2]|0)+36>>2]|0)==0){c[r>>2]=7;a=c[r>>2]|0;i=m;return a|0}}if((c[(c[k>>2]|0)+16>>2]|0)!=0){a=c[u>>2]|0;a=uj((c[(c[k>>2]|0)+36>>2]|0)+(c[t>>2]|0)|0,a,((a|0)<0)<<31>>31)|0;c[t>>2]=(c[t>>2]|0)+a}a=c[s>>2]|0;a=uj((c[(c[k>>2]|0)+36>>2]|0)+(c[t>>2]|0)|0,a,((a|0)<0)<<31>>31)|0;c[t>>2]=(c[t>>2]|0)+a;fL((c[(c[k>>2]|0)+36>>2]|0)+(c[t>>2]|0)|0,(c[o>>2]|0)+(c[u>>2]|0)|0,c[s>>2]|0)|0;c[(c[k>>2]|0)+32>>2]=(c[t>>2]|0)+(c[s>>2]|0);a=(c[k>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+1;if((c[n>>2]|0)!=0){do{if((c[(c[k>>2]|0)+24>>2]|0)<(c[p>>2]|0)){c[w>>2]=qc(c[(c[k>>2]|0)+28>>2]|0,c[p>>2]<<1)|0;if((c[w>>2]|0)!=0){c[(c[k>>2]|0)+24>>2]=c[p>>2]<<1;c[(c[k>>2]|0)+28>>2]=c[w>>2];break}c[r>>2]=7;a=c[r>>2]|0;i=m;return a|0}}while(0);c[(c[k>>2]|0)+16>>2]=c[(c[k>>2]|0)+28>>2];fL(c[(c[k>>2]|0)+16>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;c[(c[k>>2]|0)+20>>2]=c[p>>2]}else{c[(c[k>>2]|0)+16>>2]=c[o>>2];c[(c[k>>2]|0)+20>>2]=c[p>>2]}c[r>>2]=0;a=c[r>>2]|0;i=m;return a|0}}while(0);c[j>>2]=mc(40+(c[(c[g>>2]|0)+224>>2]|0)|0)|0;if((c[j>>2]|0)==0){c[r>>2]=7;a=c[r>>2]|0;i=m;return a|0}s=(c[j>>2]|0)+0|0;f=s+40|0;do{c[s>>2]=0;s=s+4|0}while((s|0)<(f|0));c[(c[j>>2]|0)+32>>2]=11;c[(c[j>>2]|0)+36>>2]=(c[j>>2]|0)+40;if((c[k>>2]|0)!=0){c[l>>2]=c[c[k>>2]>>2];c[q>>2]=xj(c[g>>2]|0,l,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if((c[c[k>>2]>>2]|0)==0){c[c[k>>2]>>2]=c[l>>2]}c[(c[k>>2]|0)+4>>2]=c[j>>2];c[(c[j>>2]|0)+8>>2]=c[(c[k>>2]|0)+8>>2];c[c[j>>2]>>2]=c[l>>2];c[(c[j>>2]|0)+28>>2]=c[(c[k>>2]|0)+28>>2];c[(c[j>>2]|0)+24>>2]=c[(c[k>>2]|0)+24>>2];c[(c[k>>2]|0)+28>>2]=0}else{c[(c[j>>2]|0)+8>>2]=c[j>>2];c[q>>2]=xj(c[g>>2]|0,j,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0)|0}c[c[h>>2]>>2]=c[j>>2];c[r>>2]=c[q>>2];a=c[r>>2]|0;i=m;return a|0}function yj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=((c[(c[g>>2]|0)+80>>2]|0)==0&1)-((c[(c[f>>2]|0)+80>>2]|0)==0&1);if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=d;return a|0}b=(c[g>>2]|0)+88|0;a=(c[f>>2]|0)+88|0;if((c[b>>2]|0)==(c[a>>2]|0)?(c[b+4>>2]|0)==(c[a+4>>2]|0):0){c[e>>2]=(c[c[f>>2]>>2]|0)-(c[c[g>>2]>>2]|0);a=c[e>>2]|0;i=d;return a|0}else{g=(c[g>>2]|0)+88|0;b=c[g+4>>2]|0;a=(c[f>>2]|0)+88|0;f=c[a+4>>2]|0;c[e>>2]=(b|0)<(f|0)|((b|0)==(f|0)?(c[g>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)?1:-1;a=c[e>>2]|0;i=d;return a|0}return 0}function zj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=((c[(c[g>>2]|0)+80>>2]|0)==0&1)-((c[(c[f>>2]|0)+80>>2]|0)==0&1);if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=d;return a|0}b=(c[g>>2]|0)+88|0;a=(c[f>>2]|0)+88|0;if((c[b>>2]|0)==(c[a>>2]|0)?(c[b+4>>2]|0)==(c[a+4>>2]|0):0){c[e>>2]=(c[c[f>>2]>>2]|0)-(c[c[g>>2]>>2]|0);a=c[e>>2]|0;i=d;return a|0}else{g=(c[g>>2]|0)+88|0;b=c[g+4>>2]|0;a=(c[f>>2]|0)+88|0;f=c[a+4>>2]|0;c[e>>2]=(b|0)>(f|0)|((b|0)==(f|0)?(c[g>>2]|0)>>>0>(c[a>>2]|0)>>>0:0)?1:-1;a=c[e>>2]|0;i=d;return a|0}return 0}function Aj(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;if((d[(c[e>>2]|0)+5>>0]|0|0)!=0){e=c[e>>2]|0;e=e+40|0;c[e>>2]=0;i=b;return}oc(c[(c[e>>2]|0)+40>>2]|0);sf(c[(c[e>>2]|0)+52>>2]|0)|0;c[(c[e>>2]|0)+52>>2]=0;e=c[e>>2]|0;e=e+40|0;c[e>>2]=0;i=b;return}function Bj(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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;j=i;i=i+48|0;k=j+44|0;q=j+40|0;h=j+36|0;r=j+32|0;m=j+28|0;g=j+24|0;n=j+20|0;o=j+12|0;s=j+8|0;t=j+4|0;l=j;p=j+16|0;c[q>>2]=b;c[h>>2]=e;c[r>>2]=f;f=c[h>>2]|0;if((c[(c[h>>2]|0)+72>>2]|0)!=0){c[g>>2]=(c[(c[h>>2]|0)+72>>2]|0)+(c[f+76>>2]|0)}else{c[g>>2]=c[f+40>>2]}if((c[g>>2]|0)!=0){if((c[g>>2]|0)>>>0>=((c[(c[h>>2]|0)+40>>2]|0)+(c[(c[h>>2]|0)+44>>2]|0)|0)>>>0){u=6}}else{u=6}if((u|0)==6){u=c[h>>2]|0;if((c[(c[h>>2]|0)+56>>2]|0)!=0){c[s>>2]=c[c[u+56>>2]>>2];if((c[s>>2]|0)==0){c[(c[h>>2]|0)+40>>2]=0}else{c[t>>2]=c[(c[s>>2]|0)+8>>2];c[(c[h>>2]|0)+64>>2]=c[(c[s>>2]|0)+12>>2];c[(c[h>>2]|0)+60>>2]=c[(c[s>>2]|0)+16>>2];b=(c[c[t>>2]>>2]|0)+1|0;c[(c[h>>2]|0)+76>>2]=b;c[(c[h>>2]|0)+44>>2]=b;b=c[(c[t>>2]|0)+4>>2]|0;c[(c[h>>2]|0)+72>>2]=b;c[(c[h>>2]|0)+40>>2]=b;b=(c[h>>2]|0)+56|0;c[b>>2]=(c[b>>2]|0)+4}c[k>>2]=0;b=c[k>>2]|0;i=j;return b|0}Aj(u);e=(c[h>>2]|0)+32|0;u=c[e+4>>2]|0;b=(c[h>>2]|0)+16|0;f=c[b+4>>2]|0;if((u|0)>(f|0)|((u|0)==(f|0)?(c[e>>2]|0)>>>0>=(c[b>>2]|0)>>>0:0)){c[k>>2]=0;b=c[k>>2]|0;i=j;return b|0}t=c[q>>2]|0;b=(c[h>>2]|0)+32|0;u=b;u=dL(c[u>>2]|0,c[u+4>>2]|0,1,0)|0;f=D;c[b>>2]=u;c[b+4>>2]=f;if((c[r>>2]|0)!=0){s=(c[h>>2]|0)+48|0}else{s=0}c[m>>2]=Sj(t,u,f,(c[h>>2]|0)+40|0,(c[h>>2]|0)+44|0,s)|0;if((c[m>>2]|0)!=0){c[k>>2]=c[m>>2];b=c[k>>2]|0;i=j;return b|0}if((c[r>>2]|0)!=0){if((c[(c[h>>2]|0)+48>>2]|0)<(c[(c[h>>2]|0)+44>>2]|0)){c[(c[h>>2]|0)+52>>2]=c[(c[q>>2]|0)+244>>2];c[(c[q>>2]|0)+244>>2]=0}}c[g>>2]=c[(c[h>>2]|0)+40>>2]}c[m>>2]=Oj(c[h>>2]|0,c[g>>2]|0,20)|0;if((c[m>>2]|0)!=0){c[k>>2]=c[m>>2];b=c[k>>2]|0;i=j;return b|0}q=c[g>>2]|0;if((a[c[g>>2]>>0]&128|0)!=0){q=Lj(q,n)|0}else{c[n>>2]=d[q>>0]|0;q=1}c[g>>2]=(c[g>>2]|0)+q;q=c[g>>2]|0;if((a[c[g>>2]>>0]&128|0)!=0){q=Lj(q,o)|0}else{c[o>>2]=d[q>>0]|0;q=1}c[g>>2]=(c[g>>2]|0)+q;if((c[n>>2]|0)>=0){if((c[o>>2]|0)>0){if(!(((c[g>>2]|0)+(c[o>>2]|0)|0)>>>0>((c[(c[h>>2]|0)+40>>2]|0)+(c[(c[h>>2]|0)+44>>2]|0)|0)>>>0)){do{if(((c[n>>2]|0)+(c[o>>2]|0)|0)>(c[(c[h>>2]|0)+68>>2]|0)){c[l>>2]=(c[n>>2]|0)+(c[o>>2]|0)<<1;c[p>>2]=qc(c[(c[h>>2]|0)+64>>2]|0,c[l>>2]|0)|0;if((c[p>>2]|0)!=0){c[(c[h>>2]|0)+64>>2]=c[p>>2];c[(c[h>>2]|0)+68>>2]=c[l>>2];break}c[k>>2]=7;b=c[k>>2]|0;i=j;return b|0}}while(0);c[m>>2]=Oj(c[h>>2]|0,c[g>>2]|0,(c[o>>2]|0)+10|0)|0;if((c[m>>2]|0)!=0){c[k>>2]=c[m>>2];b=c[k>>2]|0;i=j;return b|0}fL((c[(c[h>>2]|0)+64>>2]|0)+(c[n>>2]|0)|0,c[g>>2]|0,c[o>>2]|0)|0;c[(c[h>>2]|0)+60>>2]=(c[n>>2]|0)+(c[o>>2]|0);c[g>>2]=(c[g>>2]|0)+(c[o>>2]|0);l=c[g>>2]|0;if((a[c[g>>2]>>0]&128|0)!=0){l=Lj(l,(c[h>>2]|0)+76|0)|0}else{c[(c[h>>2]|0)+76>>2]=d[l>>0]|0;l=1}c[g>>2]=(c[g>>2]|0)+l;c[(c[h>>2]|0)+72>>2]=c[g>>2];c[(c[h>>2]|0)+80>>2]=0;do{if(!(((c[(c[h>>2]|0)+72>>2]|0)+(c[(c[h>>2]|0)+76>>2]|0)|0)>>>0>((c[(c[h>>2]|0)+40>>2]|0)+(c[(c[h>>2]|0)+44>>2]|0)|0)>>>0)){if((c[(c[h>>2]|0)+48>>2]|0)==0){if((a[(c[(c[h>>2]|0)+72>>2]|0)+((c[(c[h>>2]|0)+76>>2]|0)-1)>>0]|0)!=0){break}}c[k>>2]=0;b=c[k>>2]|0;i=j;return b|0}}while(0);c[k>>2]=267;b=c[k>>2]|0;i=j;return b|0}}}c[k>>2]=267;b=c[k>>2]|0;i=j;return b|0}function Cj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;f=l+24|0;h=l;n=l+4|0;k=l+8|0;j=l+12|0;g=l+16|0;m=l+20|0;c[f>>2]=a;c[h>>2]=b;c[n>>2]=d;c[k>>2]=e;if((c[n>>2]|0)==(c[h>>2]|0)){c[n>>2]=(c[n>>2]|0)+ -1}c[j>>2]=(c[n>>2]|0)-1;while(1){if((c[j>>2]|0)<0){break}c[g>>2]=c[j>>2];while(1){if((c[g>>2]|0)>=((c[h>>2]|0)-1|0)){break}if((zb[c[k>>2]&127](c[(c[f>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[f>>2]|0)+((c[g>>2]|0)+1<<2)>>2]|0)|0)<0){break}c[m>>2]=c[(c[f>>2]|0)+((c[g>>2]|0)+1<<2)>>2];c[(c[f>>2]|0)+((c[g>>2]|0)+1<<2)>>2]=c[(c[f>>2]|0)+(c[g>>2]<<2)>>2];c[(c[f>>2]|0)+(c[g>>2]<<2)>>2]=c[m>>2];c[g>>2]=(c[g>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+ -1}i=l;return}function Dj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;h=f+12|0;g=f;e=f+4|0;j=f+8|0;c[h>>2]=a;c[g>>2]=b;if((c[(c[h>>2]|0)+40>>2]|0)!=0){if((c[(c[g>>2]|0)+40>>2]|0)!=0){c[j>>2]=(c[(c[h>>2]|0)+60>>2]|0)-(c[(c[g>>2]|0)+60>>2]|0);a=c[(c[h>>2]|0)+64>>2]|0;b=c[(c[g>>2]|0)+64>>2]|0;if((c[j>>2]|0)<0){c[e>>2]=XK(a,b,c[(c[h>>2]|0)+60>>2]|0)|0}else{c[e>>2]=XK(a,b,c[(c[g>>2]|0)+60>>2]|0)|0}if((c[e>>2]|0)==0){c[e>>2]=c[j>>2]}}else{d=8}}else{d=8}if((d|0)==8){c[e>>2]=((c[(c[h>>2]|0)+40>>2]|0)==0&1)-((c[(c[g>>2]|0)+40>>2]|0)==0&1)}if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=f;return a|0}c[e>>2]=(c[c[g>>2]>>2]|0)-(c[c[h>>2]>>2]|0);a=c[e>>2]|0;i=f;return a|0}function Ej(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;j=e;h=e+4|0;g=e+8|0;k=e+12|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;do{if((c[g>>2]|0)>(c[(c[j>>2]|0)+20>>2]|0)){c[(c[j>>2]|0)+20>>2]=c[g>>2]<<1;c[k>>2]=qc(c[(c[j>>2]|0)+16>>2]|0,c[(c[j>>2]|0)+20>>2]|0)|0;if((c[k>>2]|0)!=0){c[(c[j>>2]|0)+16>>2]=c[k>>2];break}c[f>>2]=7;a=c[f>>2]|0;i=e;return a|0}}while(0);fL(c[(c[j>>2]|0)+16>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}function Fj(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+12|0;j=f;g=f+4|0;h=f+16|0;k=f+8|0;c[l>>2]=b;c[j>>2]=e;c[g>>2]=0;if((d[(c[l>>2]|0)+231>>0]|0|0)!=0){if((c[(c[j>>2]|0)+56>>2]|0)!=0){a[h>>0]=0;l=(c[j>>2]|0)+88|0;c[l>>2]=0;c[l+4>>2]=0;c[(c[j>>2]|0)+84>>2]=0;Mj(0,c[(c[j>>2]|0)+72>>2]|0,c[(c[j>>2]|0)+76>>2]|0,(c[j>>2]|0)+80|0,(c[j>>2]|0)+88|0,(c[j>>2]|0)+84|0,h);l=c[g>>2]|0;i=f;return l|0}}c[g>>2]=Oj(c[j>>2]|0,c[(c[j>>2]|0)+72>>2]|0,10)|0;if((c[g>>2]|0)!=0){l=c[g>>2]|0;i=f;return l|0}c[k>>2]=Kj(c[(c[j>>2]|0)+72>>2]|0,(c[j>>2]|0)+88|0)|0;c[(c[j>>2]|0)+80>>2]=(c[(c[j>>2]|0)+72>>2]|0)+(c[k>>2]|0);l=c[g>>2]|0;i=f;return l|0}function Gj(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;j=i;i=i+48|0;k=j+36|0;h=j+32|0;l=j+28|0;t=j+24|0;u=j+16|0;n=j+12|0;m=j+8|0;q=j+41|0;s=j+40|0;o=j+20|0;p=j;c[h>>2]=b;c[l>>2]=e;c[t>>2]=f;c[u>>2]=g;c[n>>2]=0;c[m>>2]=c[(c[l>>2]|0)+80>>2];a[q>>0]=0;do{if((d[(c[h>>2]|0)+231>>0]|0)!=0){if((c[(c[l>>2]|0)+56>>2]|0)!=0){a[s>>0]=0;if((c[t>>2]|0)!=0){c[c[t>>2]>>2]=c[(c[l>>2]|0)+80>>2];c[c[u>>2]>>2]=(c[(c[l>>2]|0)+84>>2]|0)-1}Mj(0,c[(c[l>>2]|0)+72>>2]|0,c[(c[l>>2]|0)+76>>2]|0,m,(c[l>>2]|0)+88|0,(c[l>>2]|0)+84|0,s);if((a[s>>0]|0)!=0){c[(c[l>>2]|0)+80>>2]=0;break}else{c[(c[l>>2]|0)+80>>2]=c[m>>2];break}}else{r=8}}else{r=8}}while(0);do{if((r|0)==8){c[o>>2]=(c[(c[l>>2]|0)+72>>2]|0)+(c[(c[l>>2]|0)+76>>2]|0);while(1){if((a[c[m>>2]>>0]|a[q>>0]|0)!=0){b=c[m>>2]|0;c[m>>2]=b+1;a[q>>0]=a[b>>0]&128;continue}if((c[(c[l>>2]|0)+52>>2]|0)==0){break}if((c[m>>2]|0)>>>0<((c[(c[l>>2]|0)+40>>2]|0)+(c[(c[l>>2]|0)+48>>2]|0)|0)>>>0){break}c[n>>2]=Nj(c[l>>2]|0)|0;if((c[n>>2]|0)!=0){r=14;break}}if((r|0)==14){c[k>>2]=c[n>>2];b=c[k>>2]|0;i=j;return b|0}c[m>>2]=(c[m>>2]|0)+1;if((c[t>>2]|0)!=0){c[c[t>>2]>>2]=c[(c[l>>2]|0)+80>>2];c[c[u>>2]>>2]=(c[m>>2]|0)-(c[(c[l>>2]|0)+80>>2]|0)-1}while(1){if((c[m>>2]|0)>>>0<(c[o>>2]|0)>>>0){r=(a[c[m>>2]>>0]|0)==0}else{r=0}q=c[m>>2]|0;if(!r){break}c[m>>2]=q+1}r=c[l>>2]|0;if(q>>>0>=(c[o>>2]|0)>>>0){c[r+80>>2]=0;break}c[n>>2]=Oj(r,c[m>>2]|0,10)|0;if((c[n>>2]|0)==0){n=c[m>>2]|0;m=n+(Kj(c[m>>2]|0,p)|0)|0;c[(c[l>>2]|0)+80>>2]=m;m=p;n=c[m>>2]|0;m=c[m+4>>2]|0;l=(c[l>>2]|0)+88|0;o=l;p=c[o>>2]|0;o=c[o+4>>2]|0;if((a[(c[h>>2]|0)+231>>0]|0)!=0){e=$K(p|0,o|0,n|0,m|0)|0;b=l;c[b>>2]=e;c[b+4>>2]=D;break}else{e=dL(p|0,o|0,n|0,m|0)|0;b=l;c[b>>2]=e;c[b+4>>2]=D;break}}}}while(0);c[k>>2]=0;b=c[k>>2]|0;i=j;return b|0}function Hj(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=i;i=i+48|0;q=n+16|0;o=n+32|0;k=n+28|0;m=n+24|0;r=n+20|0;l=n+12|0;t=n+8|0;h=n+4|0;p=n;s=n+36|0;c[q>>2]=b;c[o>>2]=e;c[k>>2]=f;c[m>>2]=g;c[r>>2]=c[c[k>>2]>>2];c[l>>2]=c[c[m>>2]>>2];c[t>>2]=(c[r>>2]|0)+(c[l>>2]|0);c[h>>2]=0;c[p>>2]=c[r>>2];while(1){a[s>>0]=0;while(1){if(!((c[p>>2]|0)>>>0<(c[t>>2]|0)>>>0)){break}if(((a[s>>0]|a[c[p>>2]>>0])&254|0)==0){break}b=c[p>>2]|0;c[p>>2]=b+1;a[s>>0]=a[b>>0]&128}g=(c[p>>2]|0)-(c[r>>2]|0)|0;if((c[q>>2]|0)==(c[h>>2]|0)){j=7;break}c[l>>2]=(c[l>>2]|0)-g;c[r>>2]=c[p>>2];if((c[l>>2]|0)==0){break}c[p>>2]=(c[r>>2]|0)+1;g=c[p>>2]|0;if((a[c[p>>2]>>0]&128|0)!=0){g=Lj(g,h)|0}else{c[h>>2]=d[g>>0]|0;g=1}c[p>>2]=(c[p>>2]|0)+g}if((j|0)==7){c[l>>2]=g}if((c[o>>2]|0)==0){b=c[r>>2]|0;e=c[k>>2]|0;c[e>>2]=b;e=c[l>>2]|0;b=c[m>>2]|0;c[b>>2]=e;i=n;return}if(((c[r>>2]|0)+(c[l>>2]|0)|0)==(c[t>>2]|0)){b=c[r>>2]|0;e=c[k>>2]|0;c[e>>2]=b;e=c[l>>2]|0;b=c[m>>2]|0;c[b>>2]=e;i=n;return}aL((c[r>>2]|0)+(c[l>>2]|0)|0,0,(c[t>>2]|0)-((c[r>>2]|0)+(c[l>>2]|0))|0)|0;b=c[r>>2]|0;e=c[k>>2]|0;c[e>>2]=b;e=c[l>>2]|0;b=c[m>>2]|0;c[b>>2]=e;i=n;return}function Ij(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+48|0;l=j+8|0;r=j+20|0;q=j+40|0;m=j+16|0;n=j+36|0;k=j+24|0;h=j+28|0;p=j+32|0;o=j;s=l;c[s>>2]=b;c[s+4>>2]=d;c[r>>2]=e;c[q>>2]=f;c[m>>2]=g;c[n>>2]=0;c[k>>2]=0;c[h>>2]=c[r>>2];c[p>>2]=(c[r>>2]|0)+(c[q>>2]|0);if((a[c[h>>2]>>0]|0)!=1){if((a[c[h>>2]>>0]|0)==2){s=l;s=uj((c[m>>2]|0)+(c[n>>2]|0)|0,c[s>>2]|0,c[s+4>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+s;s=c[n>>2]|0;c[n>>2]=s+1;a[(c[m>>2]|0)+s>>0]=2;c[k>>2]=1}Jj(0,h)}while(1){if(!((c[h>>2]|0)>>>0<(c[p>>2]|0)>>>0)){break}if((a[c[h>>2]>>0]|0)!=1){break}c[h>>2]=(c[h>>2]|0)+1;s=Kj(c[h>>2]|0,o)|0;c[h>>2]=(c[h>>2]|0)+s;if((a[c[h>>2]>>0]|0)==2){if((c[k>>2]|0)==0){s=l;s=uj((c[m>>2]|0)+(c[n>>2]|0)|0,c[s>>2]|0,c[s+4>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+s;c[k>>2]=1}s=c[n>>2]|0;c[n>>2]=s+1;a[(c[m>>2]|0)+s>>0]=1;s=o;s=uj((c[m>>2]|0)+(c[n>>2]|0)|0,c[s>>2]|0,c[s+4>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+s;s=c[n>>2]|0;c[n>>2]=s+1;a[(c[m>>2]|0)+s>>0]=2}Jj(0,h)}if((c[k>>2]|0)==0){s=c[n>>2]|0;i=j;return s|0}s=c[n>>2]|0;c[n>>2]=s+1;a[(c[m>>2]|0)+s>>0]=0;s=c[n>>2]|0;i=j;return s|0}function Jj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;j=g+16|0;f=g;e=g+4|0;l=g+20|0;h=g+12|0;k=g+8|0;c[j>>2]=b;c[f>>2]=d;c[e>>2]=c[c[f>>2]>>2];a[l>>0]=0;while(1){if((254&(a[c[e>>2]>>0]|a[l>>0])|0)==0){break}b=c[e>>2]|0;c[e>>2]=b+1;a[l>>0]=a[b>>0]&128}if((c[j>>2]|0)==0){l=c[e>>2]|0;b=c[f>>2]|0;c[b>>2]=l;i=g;return}c[h>>2]=(c[e>>2]|0)-(c[c[f>>2]>>2]|0);c[k>>2]=c[c[j>>2]>>2];fL(c[k>>2]|0,c[c[f>>2]>>2]|0,c[h>>2]|0)|0;c[k>>2]=(c[k>>2]|0)+(c[h>>2]|0);c[c[j>>2]>>2]=c[k>>2];l=c[e>>2]|0;b=c[f>>2]|0;c[b>>2]=l;i=g;return}function Kj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+48|0;f=l+36|0;j=l+32|0;g=l+24|0;k=l+16|0;n=l+20|0;h=l;m=l+28|0;e=l+8|0;c[j>>2]=b;c[g>>2]=d;c[k>>2]=c[j>>2];d=c[j>>2]|0;c[j>>2]=d+1;c[n>>2]=a[d>>0]|0;d=c[n>>2]|0;if((c[n>>2]&128|0)==0){b=c[g>>2]|0;c[b>>2]=d;c[b+4>>2]=0;c[f>>2]=1;b=c[f>>2]|0;i=l;return b|0}b=c[j>>2]|0;c[j>>2]=b+1;c[n>>2]=d&127|a[b>>0]<<7;d=c[n>>2]|0;if((c[n>>2]&16384|0)==0){b=c[g>>2]|0;c[b>>2]=d;c[b+4>>2]=0;c[f>>2]=2;b=c[f>>2]|0;i=l;return b|0}b=c[j>>2]|0;c[j>>2]=b+1;c[n>>2]=d&16383|a[b>>0]<<14;d=c[n>>2]|0;if((c[n>>2]&2097152|0)==0){b=c[g>>2]|0;c[b>>2]=d;c[b+4>>2]=0;c[f>>2]=3;b=c[f>>2]|0;i=l;return b|0}b=c[j>>2]|0;c[j>>2]=b+1;c[n>>2]=d&2097151|a[b>>0]<<21;d=c[n>>2]|0;if((c[n>>2]&268435456|0)==0){b=c[g>>2]|0;c[b>>2]=d;c[b+4>>2]=0;c[f>>2]=4;b=c[f>>2]|0;i=l;return b|0}b=h;c[b>>2]=d&268435455;c[b+4>>2]=0;c[m>>2]=28;while(1){if((c[m>>2]|0)>63){break}b=c[j>>2]|0;c[j>>2]=b+1;b=a[b>>0]|0;d=e;c[d>>2]=b;c[d+4>>2]=((b|0)<0)<<31>>31;d=bL(c[e>>2]&127|0,0,c[m>>2]|0)|0;b=h;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,D|0)|0;b=h;c[b>>2]=d;c[b+4>>2]=D;if((c[e>>2]&128|0)==0&0==0){break}c[m>>2]=(c[m>>2]|0)+7}n=h;d=c[n+4>>2]|0;b=c[g>>2]|0;c[b>>2]=c[n>>2];c[b+4>>2]=d;c[f>>2]=(c[j>>2]|0)-(c[k>>2]|0);b=c[f>>2]|0;i=l;return b|0}function Lj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;h=e;g=e+4|0;j=e+8|0;c[h>>2]=b;c[g>>2]=d;b=c[h>>2]|0;c[h>>2]=b+1;c[j>>2]=a[b>>0]|0;b=c[j>>2]&127;d=c[h>>2]|0;c[h>>2]=d+1;c[j>>2]=b|a[d>>0]<<7;d=c[j>>2]|0;if((c[j>>2]&16384|0)==0){c[c[g>>2]>>2]=d;c[f>>2]=2;b=c[f>>2]|0;i=e;return b|0}b=c[h>>2]|0;c[h>>2]=b+1;c[j>>2]=d&16383|a[b>>0]<<14;d=c[j>>2]|0;if((c[j>>2]&2097152|0)==0){c[c[g>>2]>>2]=d;c[f>>2]=3;b=c[f>>2]|0;i=e;return b|0}b=c[h>>2]|0;c[h>>2]=b+1;c[j>>2]=d&2097151|a[b>>0]<<21;d=c[j>>2]|0;if((c[j>>2]&268435456|0)==0){c[c[g>>2]>>2]=d;c[f>>2]=4;b=c[f>>2]|0;i=e;return b|0}else{c[j>>2]=d&268435455;c[c[g>>2]>>2]=c[j>>2]|(a[c[h>>2]>>0]&15)<<28;c[f>>2]=5;b=c[f>>2]|0;i=e;return b|0}return 0}function Mj(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;m=i;i=i+80|0;u=m+76|0;p=m+72|0;B=m+68|0;l=m+64|0;r=m+60|0;q=m+56|0;n=m+52|0;v=m+48|0;x=m+16|0;w=m+36|0;y=m+32|0;k=m+28|0;A=m+24|0;z=m+8|0;t=m+40|0;s=m;o=m+44|0;c[u>>2]=b;c[p>>2]=d;c[B>>2]=e;c[l>>2]=f;c[r>>2]=g;c[q>>2]=h;c[n>>2]=j;c[v>>2]=c[c[l>>2]>>2];if((c[v>>2]|0)!=0){c[t>>2]=(c[u>>2]|0)!=0?-1:1;Qj(v,c[p>>2]|0,s);b=c[t>>2]|0;d=s;d=nL(b|0,((b|0)<0)<<31>>31|0,c[d>>2]|0,c[d+4>>2]|0)|0;b=c[r>>2]|0;e=b;d=$K(c[e>>2]|0,c[e+4>>2]|0,d|0,D|0)|0;c[b>>2]=d;c[b+4>>2]=D;if((c[v>>2]|0)==(c[p>>2]|0)){a[c[n>>2]>>0]=1}else{c[o>>2]=c[v>>2];Rj(c[p>>2]|0,v);c[c[q>>2]>>2]=(c[o>>2]|0)-(c[v>>2]|0)}c[c[l>>2]>>2]=c[v>>2];i=m;return}b=x;c[b>>2]=0;c[b+4>>2]=0;c[w>>2]=0;c[y>>2]=c[p>>2];c[k>>2]=(c[p>>2]|0)+(c[B>>2]|0);c[A>>2]=1;while(1){if(!((c[y>>2]|0)>>>0<(c[k>>2]|0)>>>0)){break}b=Kj(c[y>>2]|0,z)|0;c[y>>2]=(c[y>>2]|0)+b;b=c[A>>2]|0;d=z;d=nL(b|0,((b|0)<0)<<31>>31|0,c[d>>2]|0,c[d+4>>2]|0)|0;b=x;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,D|0)|0;b=x;c[b>>2]=d;c[b+4>>2]=D;c[w>>2]=c[y>>2];Pj(0,y);while(1){if(!((c[y>>2]|0)>>>0<(c[k>>2]|0)>>>0)){break}if((a[c[y>>2]>>0]|0)!=0){break}c[y>>2]=(c[y>>2]|0)+1}c[A>>2]=(c[u>>2]|0)!=0?-1:1}c[c[q>>2]>>2]=(c[k>>2]|0)-(c[w>>2]|0);c[c[l>>2]>>2]=c[w>>2];e=x;d=c[e+4>>2]|0;b=c[r>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;i=m;return}function Nj(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;d=e+4|0;c[f>>2]=b;if(((c[(c[f>>2]|0)+44>>2]|0)-(c[(c[f>>2]|0)+48>>2]|0)|0)<4096){b=(c[(c[f>>2]|0)+44>>2]|0)-(c[(c[f>>2]|0)+48>>2]|0)|0}else{b=4096}c[g>>2]=b;c[d>>2]=tf(c[(c[f>>2]|0)+52>>2]|0,(c[(c[f>>2]|0)+40>>2]|0)+(c[(c[f>>2]|0)+48>>2]|0)|0,c[g>>2]|0,c[(c[f>>2]|0)+48>>2]|0)|0;if((c[d>>2]|0)!=0){b=c[d>>2]|0;i=e;return b|0}b=(c[f>>2]|0)+48|0;c[b>>2]=(c[b>>2]|0)+(c[g>>2]|0);b=(c[(c[f>>2]|0)+40>>2]|0)+(c[(c[f>>2]|0)+48>>2]|0)+0|0;g=b+20|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(g|0));if((c[(c[f>>2]|0)+48>>2]|0)!=(c[(c[f>>2]|0)+44>>2]|0)){b=c[d>>2]|0;i=e;return b|0}sf(c[(c[f>>2]|0)+52>>2]|0)|0;c[(c[f>>2]|0)+52>>2]=0;c[(c[f>>2]|0)+48>>2]=0;b=c[d>>2]|0;i=e;return b|0}function Oj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e+12|0;g=e;j=e+4|0;f=e+8|0;c[h>>2]=a;c[g>>2]=b;c[j>>2]=d;c[f>>2]=0;while(1){if((c[(c[h>>2]|0)+52>>2]|0)==0){d=6;break}if((c[f>>2]|0)!=0){d=6;break}if(((c[g>>2]|0)-(c[(c[h>>2]|0)+40>>2]|0)+(c[j>>2]|0)|0)<=(c[(c[h>>2]|0)+48>>2]|0)){d=6;break}c[f>>2]=Nj(c[h>>2]|0)|0}if((d|0)==6){i=e;return c[f>>2]|0}return 0}function Pj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;j=g+16|0;f=g;e=g+4|0;l=g+20|0;h=g+12|0;k=g+8|0;c[j>>2]=b;c[f>>2]=d;c[e>>2]=c[c[f>>2]>>2];a[l>>0]=0;while(1){b=(a[c[e>>2]>>0]|a[l>>0]|0)!=0;d=c[e>>2]|0;c[e>>2]=d+1;if(!b){break}a[l>>0]=a[d>>0]&128}if((c[j>>2]|0)==0){d=c[e>>2]|0;b=c[f>>2]|0;c[b>>2]=d;i=g;return}c[h>>2]=(c[e>>2]|0)-(c[c[f>>2]>>2]|0);c[k>>2]=c[c[j>>2]>>2];fL(c[k>>2]|0,c[c[f>>2]>>2]|0,c[h>>2]|0)|0;c[k>>2]=(c[k>>2]|0)+(c[h>>2]|0);c[c[j>>2]>>2]=c[k>>2];d=c[e>>2]|0;b=c[f>>2]|0;c[b>>2]=d;i=g;return}function Qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;g=k+20|0;l=k+12|0;j=k+8|0;h=k;f=k+16|0;c[g>>2]=b;c[l>>2]=d;c[j>>2]=e;c[f>>2]=(c[c[g>>2]>>2]|0)+ -2;while(1){if(!((c[f>>2]|0)>>>0>=(c[l>>2]|0)>>>0)){break}if((a[c[f>>2]>>0]&128|0)==0){break}c[f>>2]=(c[f>>2]|0)+ -1}c[f>>2]=(c[f>>2]|0)+1;c[c[g>>2]>>2]=c[f>>2];Kj(c[f>>2]|0,h)|0;l=h;d=c[l+4>>2]|0;b=c[j>>2]|0;c[b>>2]=c[l>>2];c[b+4>>2]=d;i=k;return}function Rj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;h=g+8|0;f=g;e=g+4|0;j=g+12|0;c[h>>2]=b;c[f>>2]=d;c[e>>2]=(c[c[f>>2]>>2]|0)+ -2;a[j>>0]=0;do{if(!((c[e>>2]|0)>>>0>(c[h>>2]|0)>>>0)){break}b=c[e>>2]|0;c[e>>2]=b+ -1;b=a[b>>0]|0;a[j>>0]=b}while((b<<24>>24|0)==0);while(1){if((c[e>>2]|0)>>>0>(c[h>>2]|0)>>>0){b=(a[c[e>>2]>>0]&128|a[j>>0]|0)!=0}else{b=0}d=c[e>>2]|0;if(!b){break}c[e>>2]=d+ -1;a[j>>0]=a[d>>0]|0}if(d>>>0>(c[h>>2]|0)>>>0){c[e>>2]=(c[e>>2]|0)+2}do{b=c[e>>2]|0;c[e>>2]=b+1}while((a[b>>0]&128|0)!=0);c[c[f>>2]>>2]=c[e>>2];i=g;return}function Sj(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+48|0;t=j+8|0;l=j+36|0;p=j+32|0;o=j;n=j+28|0;q=j+40|0;s=j+16|0;m=j+12|0;r=j+20|0;k=j+24|0;c[p>>2]=b;b=o;c[b>>2]=d;c[b+4>>2]=e;c[n>>2]=f;c[q>>2]=g;c[s>>2]=h;h=c[p>>2]|0;if((c[(c[p>>2]|0)+244>>2]|0)!=0){b=o;c[m>>2]=xf(c[h+244>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0}else{if(0==(c[h+240>>2]|0)){c[t>>2]=c[(c[p>>2]|0)+20>>2];b=wc(6904,t)|0;c[(c[p>>2]|0)+240>>2]=b;if(0==(c[(c[p>>2]|0)+240>>2]|0)){c[l>>2]=7;b=c[l>>2]|0;i=j;return b|0}}b=o;c[m>>2]=_e(c[(c[p>>2]|0)+12>>2]|0,c[(c[p>>2]|0)+16>>2]|0,c[(c[p>>2]|0)+240>>2]|0,6920,c[b>>2]|0,c[b+4>>2]|0,0,(c[p>>2]|0)+244|0)|0}if((c[m>>2]|0)==0){c[r>>2]=wf(c[(c[p>>2]|0)+244>>2]|0)|0;c[c[q>>2]>>2]=c[r>>2];if((c[n>>2]|0)!=0){c[k>>2]=mc((c[r>>2]|0)+20|0)|0;if((c[k>>2]|0)!=0){if((c[s>>2]|0)!=0){if((c[r>>2]|0)>16384){c[r>>2]=4096;c[c[s>>2]>>2]=c[r>>2]}}c[m>>2]=tf(c[(c[p>>2]|0)+244>>2]|0,c[k>>2]|0,c[r>>2]|0,0)|0;p=(c[k>>2]|0)+(c[r>>2]|0)+0|0;o=p+20|0;do{a[p>>0]=0;p=p+1|0}while((p|0)<(o|0));if((c[m>>2]|0)!=0){oc(c[k>>2]|0);c[k>>2]=0}}else{c[m>>2]=7}c[c[n>>2]>>2]=c[k>>2]}}c[l>>2]=c[m>>2];b=c[l>>2]|0;i=j;return b|0}function Tj(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+48|0;h=j+36|0;q=j+32|0;l=j+28|0;m=j+24|0;p=j+20|0;r=j+16|0;g=j+8|0;n=j+4|0;o=j;k=j+12|0;c[q>>2]=a;c[l>>2]=b;c[m>>2]=e;c[p>>2]=f;c[g>>2]=c[(c[l>>2]|0)+4>>2];c[r>>2]=0;a:while(1){if((c[(c[l>>2]|0)+28>>2]|0)!=0){m=13;break}if((c[r>>2]|0)>=(c[(c[l>>2]|0)+4>>2]|0)){m=13;break}c[n>>2]=0;c[o>>2]=c[(c[c[l>>2]>>2]|0)+(c[r>>2]<<2)>>2];do{c[k>>2]=Bj(c[q>>2]|0,c[o>>2]|0,0)|0;if((c[k>>2]|0)!=0){m=6;break a}if((c[m>>2]|0)==0){break}a=Uj(c[o>>2]|0,c[m>>2]|0,c[p>>2]|0)|0;c[n>>2]=a}while((a|0)<0);if((d[(c[o>>2]|0)+4>>0]|0|0)!=0){if((c[n>>2]|0)!=0){Aj(c[o>>2]|0)}}c[r>>2]=(c[r>>2]|0)+1}if((m|0)==6){c[h>>2]=c[k>>2];a=c[h>>2]|0;i=j;return a|0}else if((m|0)==13){Cj(c[c[l>>2]>>2]|0,c[g>>2]|0,c[g>>2]|0,51);c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}return 0}function Uj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e+12|0;j=e;g=e+4|0;f=e+8|0;c[h>>2]=a;c[j>>2]=b;c[g>>2]=d;c[f>>2]=0;if((c[(c[h>>2]|0)+40>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}d=c[(c[h>>2]|0)+64>>2]|0;j=c[j>>2]|0;if((c[(c[h>>2]|0)+60>>2]|0)>(c[g>>2]|0)){c[f>>2]=XK(d,j,c[g>>2]|0)|0}else{c[f>>2]=XK(d,j,c[(c[h>>2]|0)+60>>2]|0)|0}if((c[f>>2]|0)!=0){a=c[f>>2]|0;i=e;return a|0}c[f>>2]=(c[(c[h>>2]|0)+60>>2]|0)-(c[g>>2]|0);a=c[f>>2]|0;i=e;return a|0}function Vj(a,b,d,e,f,g,h,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0;B=i;i=i+96|0;l=B+88|0;C=B+84|0;E=B+80|0;F=B+76|0;u=B+72|0;v=B+68|0;r=B+64|0;q=B+60|0;m=B+56|0;n=B+52|0;z=B+48|0;t=B+24|0;G=B+32|0;A=B+28|0;o=B;p=B+16|0;y=B+8|0;x=B+36|0;w=B+40|0;s=B+44|0;c[l>>2]=a;c[C>>2]=b;c[E>>2]=d;c[F>>2]=e;c[u>>2]=f;c[v>>2]=g;c[r>>2]=h;c[q>>2]=j;c[m>>2]=k;c[n>>2]=0;c[z>>2]=0;if((c[F>>2]|0)<0){if((c[(c[l>>2]|0)+252>>2]|0)!=0){c[G>>2]=0;c[n>>2]=Wj(c[l>>2]|0,c[E>>2]|0,c[u>>2]|0,c[v>>2]|0,c[r>>2]|0,G)|0;if((c[n>>2]|0)==0){if((c[G>>2]|0)!=0){c[n>>2]=Xj(c[m>>2]|0,c[G>>2]|0)|0}}}}a:do{if((c[F>>2]|0)!=-1){if((c[n>>2]|0)==0){c[n>>2]=Yj(c[l>>2]|0,c[C>>2]|0,c[E>>2]|0,c[F>>2]|0,z)|0}while(1){if((c[n>>2]|0)!=0){break a}a=le(c[z>>2]|0)|0;c[n>>2]=a;if(100!=(a|0)){break a}c[A>>2]=0;b=Ee(c[z>>2]|0,1)|0;a=o;c[a>>2]=b;c[a+4>>2]=D;a=Ee(c[z>>2]|0,2)|0;b=p;c[b>>2]=a;c[b+4>>2]=D;b=Ee(c[z>>2]|0,3)|0;a=y;c[a>>2]=b;c[a+4>>2]=D;c[x>>2]=Be(c[z>>2]|0,4)|0;c[w>>2]=ye(c[z>>2]|0,4)|0;a=o;if((c[a>>2]|0)!=0|(c[a+4>>2]|0)!=0){if((c[u>>2]|0)!=0){c[s>>2]=(c[r>>2]|0)!=0?p:0;c[n>>2]=Zj(c[l>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,c[x>>2]|0,o,c[s>>2]|0)|0;if((c[n>>2]|0)!=0){break a}if((c[r>>2]|0)==0){if((c[q>>2]|0)==0){d=o;b=c[d+4>>2]|0;a=p;c[a>>2]=c[d>>2];c[a+4>>2]=b}}}}if((c[r>>2]|0)==0){C=(c[q>>2]|0)==0}else{C=0}d=o;b=p;a=y;c[n>>2]=_j((c[(c[m>>2]|0)+4>>2]|0)+1|0,C&1,c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[w>>2]|0,c[x>>2]|0,A)|0;if((c[n>>2]|0)!=0){break a}c[n>>2]=Xj(c[m>>2]|0,c[A>>2]|0)|0}}}while(0);c[t>>2]=Cd(c[z>>2]|0)|0;if((c[n>>2]|0)!=101){a=c[n>>2]|0;i=B;return a|0}c[n>>2]=c[t>>2];a=c[n>>2]|0;i=B;return a|0}function Wj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,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;q=i;i=i+80|0;A=q+64|0;z=q+60|0;s=q+56|0;h=q+52|0;t=q+48|0;p=q+44|0;k=q+40|0;v=q+36|0;m=q+32|0;n=q+24|0;o=q+20|0;y=q+16|0;x=q+12|0;r=q+8|0;u=q+4|0;w=q;l=q+28|0;c[A>>2]=a;c[z>>2]=b;c[s>>2]=d;c[h>>2]=e;c[t>>2]=f;c[p>>2]=g;c[k>>2]=0;c[m>>2]=0;c[n>>2]=0;c[o>>2]=0;c[y>>2]=(c[(c[A>>2]|0)+252>>2]|0)+((c[z>>2]|0)*24|0)+4;if((c[t>>2]|0)!=0){c[x>>2]=0;c[v>>2]=c[(c[y>>2]|0)+8>>2];while(1){if((c[v>>2]|0)==0){break}c[r>>2]=c[(c[v>>2]|0)+12>>2];c[u>>2]=c[(c[v>>2]|0)+16>>2];if((c[h>>2]|0)==0){j=7}else{if((c[u>>2]|0)>=(c[h>>2]|0)){if(0==(XK(c[r>>2]|0,c[s>>2]|0,c[h>>2]|0)|0)){j=7}}}if((j|0)==7){j=0;if((c[n>>2]|0)==(c[x>>2]|0)){c[x>>2]=(c[x>>2]|0)+16;c[w>>2]=qc(c[m>>2]|0,c[x>>2]<<2)|0;if((c[w>>2]|0)==0){j=9;break}c[m>>2]=c[w>>2]}z=c[v>>2]|0;A=c[n>>2]|0;c[n>>2]=A+1;c[(c[m>>2]|0)+(A<<2)>>2]=z}c[v>>2]=c[c[v>>2]>>2]}if((j|0)==9){c[o>>2]=7;c[n>>2]=0}if((c[n>>2]|0)>1){OK(c[m>>2]|0,c[n>>2]|0,4,52)}}else{c[v>>2]=qi(c[y>>2]|0,c[s>>2]|0,c[h>>2]|0)|0;if((c[v>>2]|0)!=0){c[m>>2]=v;c[n>>2]=1}}do{if((c[n>>2]|0)>0){c[l>>2]=96+((c[n>>2]|0)+1<<2);c[k>>2]=mc(c[l>>2]|0)|0;if((c[k>>2]|0)!=0){aL(c[k>>2]|0,0,c[l>>2]|0)|0;c[c[k>>2]>>2]=2147483647;c[(c[k>>2]|0)+56>>2]=(c[k>>2]|0)+96;fL(c[(c[k>>2]|0)+56>>2]|0,c[m>>2]|0,c[n>>2]<<2|0)|0;break}else{c[o>>2]=7;break}}}while(0);if((c[t>>2]|0)==0){z=c[k>>2]|0;A=c[p>>2]|0;c[A>>2]=z;A=c[o>>2]|0;i=q;return A|0}oc(c[m>>2]|0);z=c[k>>2]|0;A=c[p>>2]|0;c[A>>2]=z;A=c[o>>2]|0;i=q;return A|0}function Xj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d;g=d+4|0;h=d+8|0;j=d+12|0;c[f>>2]=a;c[g>>2]=b;do{if(((c[(c[f>>2]|0)+4>>2]|0)%16|0|0)==0){c[j>>2]=(c[(c[f>>2]|0)+4>>2]|0)+16<<2;c[h>>2]=qc(c[c[f>>2]>>2]|0,c[j>>2]|0)|0;if((c[h>>2]|0)!=0){c[c[f>>2]>>2]=c[h>>2];break}mj(c[g>>2]|0);c[e>>2]=7;a=c[e>>2]|0;i=d;return a|0}}while(0);j=c[g>>2]|0;h=(c[f>>2]|0)+4|0;a=c[h>>2]|0;c[h>>2]=a+1;c[(c[c[f>>2]>>2]|0)+(a<<2)>>2]=j;c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}function Yj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;g=j+24|0;m=j;l=j+4|0;o=j+8|0;h=j+12|0;k=j+16|0;n=j+20|0;c[g>>2]=a;c[m>>2]=b;c[l>>2]=d;c[o>>2]=e;c[h>>2]=f;c[n>>2]=0;f=c[g>>2]|0;if((c[o>>2]|0)<0){c[k>>2]=$i(f,13,n,0)|0;if((c[k>>2]|0)==0){a=c[n>>2]|0;b=cj(c[g>>2]|0,c[m>>2]|0,c[l>>2]|0,0)|0;Pe(a,1,b,D)|0;b=c[n>>2]|0;a=cj(c[g>>2]|0,c[m>>2]|0,c[l>>2]|0,1023)|0;Pe(b,2,a,D)|0}}else{c[k>>2]=$i(f,12,n,0)|0;if((c[k>>2]|0)==0){b=c[n>>2]|0;a=cj(c[g>>2]|0,c[m>>2]|0,c[l>>2]|0,c[o>>2]|0)|0;Pe(b,1,a,D)|0}}c[c[h>>2]>>2]=c[n>>2];i=j;return c[k>>2]|0}function Zj(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;q=i;i=i+48|0;m=q+40|0;n=q+36|0;o=q+32|0;v=q+28|0;w=q+24|0;r=q+20|0;s=q+12|0;t=q+8|0;u=q+4|0;p=q;l=q+16|0;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[v>>2]=g;c[w>>2]=h;c[r>>2]=j;c[s>>2]=k;k=c[v>>2]|0;if((a[c[v>>2]>>0]&128|0)!=0){Lj(k,u)|0}else{c[u>>2]=d[k>>0]|0}c[t>>2]=$j(c[n>>2]|0,c[o>>2]|0,c[v>>2]|0,c[w>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;if((c[t>>2]|0)!=0){b=c[t>>2]|0;i=q;return b|0}if((c[u>>2]|0)<=1){b=c[t>>2]|0;i=q;return b|0}c[p>>2]=0;if((c[r>>2]|0)!=0){if((c[s>>2]|0)!=0){e=c[r>>2]|0;b=c[s>>2]|0;if((c[e>>2]|0)!=(c[b>>2]|0)?1:(c[e+4>>2]|0)!=(c[b+4>>2]|0)){b=c[r>>2]|0;c[t>>2]=Sj(c[m>>2]|0,c[b>>2]|0,c[b+4>>2]|0,p,l,0)|0;if((c[t>>2]|0)==0){c[t>>2]=Zj(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[l>>2]|0,c[r>>2]|0,0)|0}oc(c[p>>2]|0);c[r>>2]=0;c[p>>2]=0}}}if((c[t>>2]|0)==0){if((c[r>>2]|0)!=0){u=c[r>>2]|0;v=c[u>>2]|0;u=c[u+4>>2]|0}else{u=c[s>>2]|0;v=c[u>>2]|0;u=c[u+4>>2]|0}c[t>>2]=Sj(c[m>>2]|0,v,u,p,l,0)|0}if((c[t>>2]|0)==0){c[t>>2]=Zj(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[l>>2]|0,c[r>>2]|0,c[s>>2]|0)|0}oc(c[p>>2]|0);b=c[t>>2]|0;i=q;return b|0}function _j(b,d,e,f,g,h,j,k,l,m,n){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;u=i;i=i+64|0;z=u+52|0;q=u+48|0;s=u+44|0;t=u+8|0;o=u;v=u+16|0;y=u+32|0;x=u+36|0;p=u+24|0;r=u+40|0;w=u+28|0;c[q>>2]=b;c[s>>2]=d;b=t;c[b>>2]=e;c[b+4>>2]=f;b=o;c[b>>2]=g;c[b+4>>2]=h;b=v;c[b>>2]=j;c[b+4>>2]=k;c[y>>2]=l;c[x>>2]=m;c[p>>2]=n;c[w>>2]=0;b=t;if((c[b>>2]|0)==0&(c[b+4>>2]|0)==0){c[w>>2]=(c[x>>2]|0)+20}c[r>>2]=mc(96+(c[w>>2]|0)|0)|0;if((c[r>>2]|0)==0){c[z>>2]=7;b=c[z>>2]|0;i=u;return b|0}m=(c[r>>2]|0)+0|0;n=m+96|0;do{c[m>>2]=0;m=m+4|0}while((m|0)<(n|0));c[c[r>>2]>>2]=c[q>>2];a[(c[r>>2]|0)+4>>0]=(c[s>>2]|0)!=0;e=t;d=c[e+4>>2]|0;b=(c[r>>2]|0)+8|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;b=o;d=c[b+4>>2]|0;e=(c[r>>2]|0)+16|0;c[e>>2]=c[b>>2];c[e+4>>2]=d;e=v;d=c[e+4>>2]|0;b=(c[r>>2]|0)+24|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;if((c[w>>2]|0)!=0){c[(c[r>>2]|0)+40>>2]=(c[r>>2]|0)+96;a[(c[r>>2]|0)+5>>0]=1;c[(c[r>>2]|0)+44>>2]=c[x>>2];fL(c[(c[r>>2]|0)+40>>2]|0,c[y>>2]|0,c[x>>2]|0)|0;m=(c[(c[r>>2]|0)+40>>2]|0)+(c[x>>2]|0)+0|0;n=m+20|0;do{a[m>>0]=0;m=m+1|0}while((m|0)<(n|0))}else{d=t;d=$K(c[d>>2]|0,c[d+4>>2]|0,1,0)|0;b=(c[r>>2]|0)+32|0;c[b>>2]=d;c[b+4>>2]=D}c[c[p>>2]>>2]=c[r>>2];c[z>>2]=0;b=c[z>>2]|0;i=u;return b|0}function $j(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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,E=0;o=i;i=i+80|0;q=o+76|0;s=o+72|0;w=o+68|0;E=o+64|0;C=o+60|0;p=o+56|0;k=o+52|0;l=o+48|0;x=o+44|0;y=o+40|0;m=o+16|0;r=o+12|0;z=o+8|0;n=o;B=o+20|0;u=o+24|0;A=o+28|0;t=o+32|0;v=o+36|0;c[s>>2]=b;c[w>>2]=e;c[E>>2]=f;c[C>>2]=g;c[p>>2]=h;c[k>>2]=j;c[l>>2]=0;c[x>>2]=c[E>>2];c[y>>2]=(c[x>>2]|0)+(c[C>>2]|0);c[m>>2]=0;c[r>>2]=0;c[z>>2]=1;b=Kj(c[x>>2]|0,n)|0;c[x>>2]=(c[x>>2]|0)+b;b=Kj(c[x>>2]|0,n)|0;c[x>>2]=(c[x>>2]|0)+b;if((c[x>>2]|0)>>>0>(c[y>>2]|0)>>>0){c[q>>2]=267;E=c[q>>2]|0;i=o;return E|0}while(1){if(!((c[x>>2]|0)>>>0<(c[y>>2]|0)>>>0)){r=31;break}if((c[p>>2]|0)==0){if((c[k>>2]|0)==0){r=31;break}}c[A>>2]=0;if((c[z>>2]|0)==0){j=c[x>>2]|0;if((a[c[x>>2]>>0]&128|0)!=0){j=Lj(j,A)|0}else{c[A>>2]=d[j>>0]|0;j=1}c[x>>2]=(c[x>>2]|0)+j}c[z>>2]=0;j=c[x>>2]|0;if((a[c[x>>2]>>0]&128|0)!=0){j=Lj(j,u)|0}else{c[u>>2]=d[j>>0]|0;j=1}c[x>>2]=(c[x>>2]|0)+j;if((c[A>>2]|0)<0){r=17;break}if((c[u>>2]|0)<0){r=17;break}if(((c[x>>2]|0)+(c[u>>2]|0)|0)>>>0>(c[y>>2]|0)>>>0){r=17;break}if(((c[A>>2]|0)+(c[u>>2]|0)|0)>(c[r>>2]|0)){c[r>>2]=(c[A>>2]|0)+(c[u>>2]|0)<<1;c[v>>2]=qc(c[m>>2]|0,c[r>>2]|0)|0;if((c[v>>2]|0)==0){r=20;break}c[m>>2]=c[v>>2]}fL((c[m>>2]|0)+(c[A>>2]|0)|0,c[x>>2]|0,c[u>>2]|0)|0;c[t>>2]=(c[A>>2]|0)+(c[u>>2]|0);c[x>>2]=(c[x>>2]|0)+(c[u>>2]|0);c[B>>2]=XK(c[s>>2]|0,c[m>>2]|0,(c[t>>2]|0)>(c[w>>2]|0)?c[w>>2]|0:c[t>>2]|0)|0;do{if((c[p>>2]|0)!=0){if((c[B>>2]|0)>=0){if((c[B>>2]|0)!=0){break}if((c[t>>2]|0)<=(c[w>>2]|0)){break}}b=n;C=c[b+4>>2]|0;E=c[p>>2]|0;c[E>>2]=c[b>>2];c[E+4>>2]=C;c[p>>2]=0}}while(0);if((c[k>>2]|0)!=0){if((c[B>>2]|0)<0){b=n;C=c[b+4>>2]|0;E=c[k>>2]|0;c[E>>2]=c[b>>2];c[E+4>>2]=C;c[k>>2]=0}}C=n;C=dL(c[C>>2]|0,c[C+4>>2]|0,1,0)|0;E=n;c[E>>2]=C;c[E+4>>2]=D}if((r|0)==17){c[l>>2]=267}else if((r|0)==20){c[l>>2]=7}else if((r|0)==31){if((c[p>>2]|0)!=0){b=n;C=c[b+4>>2]|0;E=c[p>>2]|0;c[E>>2]=c[b>>2];c[E+4>>2]=C}if((c[k>>2]|0)!=0){b=n;C=c[b+4>>2]|0;E=c[k>>2]|0;c[E>>2]=c[b>>2];c[E+4>>2]=C}}oc(c[m>>2]|0);c[q>>2]=c[l>>2];E=c[q>>2]|0;i=o;return E|0}function ak(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;m=d+28|0;l=d;k=d+4|0;j=d+8|0;f=d+12|0;g=d+16|0;h=d+20|0;e=d+24|0;c[m>>2]=a;c[l>>2]=b;c[k>>2]=c[(c[c[m>>2]>>2]|0)+12>>2];c[j>>2]=c[(c[c[l>>2]>>2]|0)+12>>2];c[f>>2]=c[(c[c[m>>2]>>2]|0)+16>>2];c[g>>2]=c[(c[c[l>>2]>>2]|0)+16>>2];c[h>>2]=(c[f>>2]|0)<(c[g>>2]|0)?c[f>>2]|0:c[g>>2]|0;c[e>>2]=XK(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;if((c[e>>2]|0)!=0){m=c[e>>2]|0;i=d;return m|0}c[e>>2]=(c[f>>2]|0)-(c[g>>2]|0);m=c[e>>2]|0;i=d;return m|0}function bk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;k=m+32|0;g=m+28|0;h=m+24|0;l=m+20|0;e=m+16|0;n=m+8|0;o=m+4|0;p=m;j=m+12|0;c[k>>2]=a;c[g>>2]=b;c[h>>2]=d;c[e>>2]=7240;c[n>>2]=7248;c[o>>2]=7256;c[p>>2]=-1;c[j>>2]=15;d=c[k>>2]|0;if((c[g>>2]|0)>6){Xd(d,7272,-1);i=m;return}if((fk(d,3704,c[c[h>>2]>>2]|0,l)|0)!=0){i=m;return}switch(c[g>>2]|0){case 6:{c[j>>2]=Od(c[(c[h>>2]|0)+20>>2]|0)|0;f=6;break};case 3:{f=8;break};case 5:{f=6;break};case 2:{f=9;break};case 4:{f=7;break};default:{}}if((f|0)==6){c[p>>2]=Od(c[(c[h>>2]|0)+16>>2]|0)|0;f=7}if((f|0)==7){c[o>>2]=Jd(c[(c[h>>2]|0)+12>>2]|0)|0;f=8}if((f|0)==8){c[n>>2]=Jd(c[(c[h>>2]|0)+8>>2]|0)|0;f=9}if((f|0)==9){c[e>>2]=Jd(c[(c[h>>2]|0)+4>>2]|0)|0}if((c[o>>2]|0)!=0){if((c[n>>2]|0)!=0){if((c[e>>2]|0)!=0){if(0!=(al(c[k>>2]|0,c[l>>2]|0)|0)){i=m;return}Al(c[k>>2]|0,c[l>>2]|0,c[e>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[j>>2]|0);i=m;return}}}ke(c[k>>2]|0);i=m;return}function ck(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+12|0;h=e+4|0;g=e+8|0;c[f>>2]=a;c[e>>2]=b;c[h>>2]=d;if((fk(c[f>>2]|0,3712,c[c[h>>2]>>2]|0,g)|0)!=0){i=e;return}if(0!=(al(c[f>>2]|0,c[g>>2]|0)|0)){i=e;return}wl(c[f>>2]|0,c[g>>2]|0);i=e;return}function dk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+20|0;k=e+4|0;g=e+8|0;j=e+12|0;h=e+16|0;c[f>>2]=a;c[e>>2]=b;c[k>>2]=d;if((fk(c[f>>2]|0,3736,c[c[k>>2]>>2]|0,h)|0)!=0){i=e;return}c[j>>2]=c[c[h>>2]>>2];c[g>>2]=ul(c[j>>2]|0)|0;d=c[g>>2]|0;if((d|0)==0){ce(c[f>>2]|0,7128,-1,0);i=e;return}else if((d|0)==101){ce(c[f>>2]|0,7144,-1,0);i=e;return}else{he(c[f>>2]|0,c[g>>2]|0);i=e;return}}function ek(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;k=e;j=e+4|0;g=e+8|0;h=e+12|0;c[f>>2]=a;c[k>>2]=b;c[j>>2]=d;if(0!=(fk(c[f>>2]|0,3720,c[c[j>>2]>>2]|0,g)|0)){i=e;return}c[h>>2]=0;if((c[k>>2]|0)>1){c[h>>2]=Jd(c[(c[j>>2]|0)+4>>2]|0)|0}gk(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function fk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+32|0;n=m;h=m+28|0;p=m+4|0;g=m+8|0;l=m+12|0;j=m+16|0;k=m+20|0;o=m+24|0;c[p>>2]=b;c[g>>2]=d;c[l>>2]=e;c[j>>2]=f;if((Sd(c[l>>2]|0)|0)==4){if((Kd(c[l>>2]|0)|0)==4){b=Hd(c[l>>2]|0)|0;a[k+0>>0]=a[b+0>>0]|0;a[k+1>>0]=a[b+1>>0]|0;a[k+2>>0]=a[b+2>>0]|0;a[k+3>>0]=a[b+3>>0]|0;c[c[j>>2]>>2]=c[k>>2];c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}}c[n>>2]=c[g>>2];c[o>>2]=wc(7096,n)|0;Xd(c[p>>2]|0,c[o>>2]|0,-1);oc(c[o>>2]|0);c[h>>2]=1;b=c[h>>2]|0;i=m;return b|0}function gk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+48|0;n=h+32|0;k=h+28|0;o=h+24|0;f=h+20|0;j=h+16|0;q=h+8|0;m=h+4|0;p=h;l=h+12|0;c[n>>2]=b;c[k>>2]=d;c[o>>2]=e;c[f>>2]=c[c[k>>2]>>2];do{if((c[o>>2]|0)!=0){c[q>>2]=0;while(1){if((a[(c[o>>2]|0)+(c[q>>2]|0)>>0]|0)==0){g=7;break}c[p>>2]=0;if((hk(c[f>>2]|0,a[(c[o>>2]|0)+(c[q>>2]|0)>>0]|0,p)|0)!=0){break}c[q>>2]=(c[q>>2]|0)+1}if((g|0)==7){c[m>>2]=c[o>>2];break}Xd(c[n>>2]|0,c[p>>2]|0,-1);oc(c[p>>2]|0);i=h;return}else{c[m>>2]=7016}}while(0);if((c[(c[k>>2]|0)+12>>2]|0)==0){Td(c[n>>2]|0,1784,0,0);i=h;return}c[j>>2]=ik(c[k>>2]|0,c[m>>2]|0)|0;jk(c[f>>2]|0);if((c[j>>2]|0)!=0){he(c[n>>2]|0,c[j>>2]|0);i=h;return}else{c[l>>2]=c[(c[k>>2]|0)+96>>2]<<2;Td(c[n>>2]|0,c[(c[k>>2]|0)+92>>2]|0,c[l>>2]|0,-1);i=h;return}}function hk(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;l=h;g=h+12|0;j=h+4|0;k=h+16|0;m=h+8|0;c[j>>2]=b;a[k>>0]=e;c[m>>2]=f;do{if((a[k>>0]|0)!=112){if((a[k>>0]|0)!=99){if((a[k>>0]|0)==110){if((d[(c[j>>2]|0)+228>>0]|0)!=0){break}}if((a[k>>0]|0)==97){if((d[(c[j>>2]|0)+228>>0]|0)!=0){break}}if((a[k>>0]|0)==108){if((d[(c[j>>2]|0)+230>>0]|0)!=0){break}}if((a[k>>0]|0)!=115){if((a[k>>0]|0)!=120){c[l>>2]=a[k>>0]|0;b=wc(7056,l)|0;c[c[m>>2]>>2]=b;c[g>>2]=1;b=c[g>>2]|0;i=h;return b|0}}}}}while(0);c[g>>2]=0;b=c[g>>2]|0;i=h;return b|0}function ik(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+80|0;l=m+64|0;k=m+60|0;h=m+56|0;f=m;p=m+52|0;o=m+48|0;e=m+40|0;g=m+32|0;j=m+36|0;n=m+44|0;c[k>>2]=b;c[h>>2]=d;c[p>>2]=c[c[k>>2]>>2];c[o>>2]=0;c[e>>2]=0;c[f+0>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;c[f>>2]=c[k>>2];c[f+4>>2]=c[(c[p>>2]|0)+24>>2];if((c[(c[k>>2]|0)+100>>2]|0)!=0){if((YK(c[(c[k>>2]|0)+100>>2]|0,c[h>>2]|0)|0)!=0){oc(c[(c[k>>2]|0)+92>>2]|0);c[(c[k>>2]|0)+100>>2]=0;c[(c[k>>2]|0)+92>>2]=0}}do{if((c[(c[k>>2]|0)+92>>2]|0)==0){c[g>>2]=0;p=kk(c[(c[k>>2]|0)+12>>2]|0)|0;c[(c[k>>2]|0)+20>>2]=p;c[f+8>>2]=c[(c[k>>2]|0)+20>>2];c[n>>2]=0;while(1){if((a[(c[h>>2]|0)+(c[n>>2]|0)>>0]|0)==0){break}p=lk(f,a[(c[h>>2]|0)+(c[n>>2]|0)>>0]|0)|0;c[g>>2]=(c[g>>2]|0)+p;c[n>>2]=(c[n>>2]|0)+1}c[j>>2]=cL(c[h>>2]|0)|0;p=mc((c[g>>2]<<2)+(c[j>>2]|0)+1|0)|0;c[(c[k>>2]|0)+92>>2]=p;if((c[(c[k>>2]|0)+92>>2]|0)!=0){c[(c[k>>2]|0)+100>>2]=(c[(c[k>>2]|0)+92>>2]|0)+(c[g>>2]<<2);c[(c[k>>2]|0)+96>>2]=c[g>>2];fL(c[(c[k>>2]|0)+100>>2]|0,c[h>>2]|0,(c[j>>2]|0)+1|0)|0;aL(c[(c[k>>2]|0)+92>>2]|0,0,c[g>>2]<<2|0)|0;c[(c[k>>2]|0)+88>>2]=1;c[e>>2]=1;break}c[l>>2]=7;p=c[l>>2]|0;i=m;return p|0}}while(0);c[f+24>>2]=c[(c[k>>2]|0)+92>>2];c[f+8>>2]=c[(c[k>>2]|0)+20>>2];if((c[(c[k>>2]|0)+88>>2]|0)!=0){c[o>>2]=mk(c[k>>2]|0,c[e>>2]|0,f,c[h>>2]|0)|0;c[(c[k>>2]|0)+88>>2]=0}c[l>>2]=c[o>>2];p=c[l>>2]|0;i=m;return p|0}function jk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;sf(c[(c[d>>2]|0)+244>>2]|0)|0;c[(c[d>>2]|0)+244>>2]=0;i=b;return}function kk(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=0;rk(c[e>>2]|0,21,b)|0;i=d;return c[b>>2]|0}function lk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+4|0;h=e+8|0;f=e;c[g>>2]=b;a[h>>0]=d;switch(a[h>>0]|0){case 99:case 112:case 110:{c[f>>2]=1;break};case 115:case 108:case 97:{c[f>>2]=c[(c[g>>2]|0)+4>>2];break};default:{c[f>>2]=($(c[(c[g>>2]|0)+4>>2]|0,c[(c[g>>2]|0)+8>>2]|0)|0)*3}}i=e;return c[f>>2]|0}function mk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;g=i;i=i+96|0;p=g+88|0;o=g+84|0;n=g+80|0;s=g+76|0;h=g+72|0;k=g+68|0;m=g+64|0;j=g+60|0;l=g;t=g+16|0;u=g+52|0;v=g+40|0;x=g+36|0;w=g+8|0;q=g+44|0;z=g+56|0;y=g+32|0;A=g+24|0;r=g+48|0;c[p>>2]=b;c[o>>2]=d;c[n>>2]=e;c[s>>2]=f;c[h>>2]=0;c[m>>2]=c[c[p>>2]>>2];c[j>>2]=0;c[k>>2]=0;while(1){if((c[h>>2]|0)!=0){k=30;break}if((a[(c[s>>2]|0)+(c[k>>2]|0)>>0]|0)==0){k=30;break}a:do{switch(a[(c[s>>2]|0)+(c[k>>2]|0)>>0]|0){case 110:{if((c[o>>2]|0)!=0){b=l;c[b>>2]=0;c[b+4>>2]=0;c[h>>2]=nk(c[m>>2]|0,j,l,0)|0;c[c[(c[n>>2]|0)+24>>2]>>2]=c[l>>2]}break};case 112:{if((c[o>>2]|0)!=0){c[c[(c[n>>2]|0)+24>>2]>>2]=c[(c[n>>2]|0)+8>>2]}break};case 97:{if((c[o>>2]|0)!=0){c[h>>2]=nk(c[m>>2]|0,j,t,u)|0;if((c[h>>2]|0)==0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[(c[n>>2]|0)+4>>2]|0)){break a}b=Kj(c[u>>2]|0,w)|0;c[u>>2]=(c[u>>2]|0)+b;b=c[w>>2]|0;d=t;d=lL(c[d>>2]|0,c[d+4>>2]|0,2,0)|0;d=dL(b|0,0,d|0,D|0)|0;b=t;b=lL(d|0,D|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[x>>2]=b;c[(c[(c[n>>2]|0)+24>>2]|0)+(c[v>>2]<<2)>>2]=c[x>>2];c[v>>2]=(c[v>>2]|0)+1}}}break};case 99:{if((c[o>>2]|0)!=0){c[c[(c[n>>2]|0)+24>>2]>>2]=c[(c[n>>2]|0)+4>>2]}break};case 115:{c[h>>2]=pk(c[p>>2]|0,0,0)|0;if((c[h>>2]|0)==0){c[h>>2]=qk(c[p>>2]|0,c[n>>2]|0)|0}break};case 108:{c[q>>2]=0;b=(c[p>>2]|0)+32|0;c[h>>2]=ok(c[m>>2]|0,c[b>>2]|0,c[b+4>>2]|0,q)|0;b:do{if((c[h>>2]|0)==0){c[y>>2]=ye(c[q>>2]|0,0)|0;c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[(c[n>>2]|0)+4>>2]|0)){break b}b=Kj(c[y>>2]|0,A)|0;c[y>>2]=(c[y>>2]|0)+b;c[(c[(c[n>>2]|0)+24>>2]|0)+(c[z>>2]<<2)>>2]=c[A>>2];c[z>>2]=(c[z>>2]|0)+1}}}while(0);Cd(c[q>>2]|0)|0;break};default:{c[r>>2]=c[(c[p>>2]|0)+12>>2];c[h>>2]=pk(c[p>>2]|0,0,0)|0;if((c[h>>2]|0)==0){if((c[o>>2]|0)!=0){if((c[(c[p>>2]|0)+24>>2]|0)!=0){c[h>>2]=nk(c[m>>2]|0,j,(c[n>>2]|0)+16|0,0)|0;if((c[h>>2]|0)!=0){break a}}c[h>>2]=rk(c[r>>2]|0,22,c[n>>2]|0)|0;if((c[h>>2]|0)!=0){break a}}rk(c[r>>2]|0,23,c[n>>2]|0)|0}}}}while(0);d=lk(c[n>>2]|0,a[(c[s>>2]|0)+(c[k>>2]|0)>>0]|0)|0;b=(c[n>>2]|0)+24|0;c[b>>2]=(c[b>>2]|0)+(d<<2);c[k>>2]=(c[k>>2]|0)+1}if((k|0)==30){Cd(c[j>>2]|0)|0;i=g;return c[h>>2]|0}return 0}function nk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;g=m+36|0;p=m+32|0;f=m+28|0;j=m+24|0;l=m+20|0;n=m+12|0;o=m+8|0;k=m;h=m+16|0;c[p>>2]=a;c[f>>2]=b;c[j>>2]=d;c[l>>2]=e;if((c[c[f>>2]>>2]|0)==0){c[h>>2]=sl(c[p>>2]|0,c[f>>2]|0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];a=c[g>>2]|0;i=m;return a|0}}c[n>>2]=c[c[f>>2]>>2];c[o>>2]=ye(c[n>>2]|0,0)|0;a=Kj(c[o>>2]|0,k)|0;c[o>>2]=(c[o>>2]|0)+a;a=k;if((c[a>>2]|0)==0&(c[a+4>>2]|0)==0){c[g>>2]=267;a=c[g>>2]|0;i=m;return a|0}a=c[j>>2]|0;c[a>>2]=c[k>>2];c[a+4>>2]=0;if((c[l>>2]|0)!=0){c[c[l>>2]>>2]=c[o>>2]}c[g>>2]=0;a=c[g>>2]|0;i=m;return a|0}function ok(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;h=f+12|0;j=f;g=f+8|0;c[h>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;c[g>>2]=e;a=j;a=rl(c[h>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[g>>2]|0)|0;i=f;return a|0}function pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;k=f+24|0;j=f;h=f+4|0;e=f+8|0;g=f+12|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g>>2]=c[k>>2];c[e>>2]=rk(c[(c[k>>2]|0)+12>>2]|0,24,g)|0;if((c[j>>2]|0)!=0){c[c[j>>2]>>2]=c[g+4>>2]}if((c[h>>2]|0)==0){k=c[e>>2]|0;i=f;return k|0}c[c[h>>2]>>2]=c[g+8>>2];k=c[e>>2]|0;i=f;return k|0}function qk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;n=i;i=i+64|0;f=n+56|0;k=n+52|0;d=n+48|0;g=n+44|0;h=n+40|0;l=n+36|0;u=n+32|0;t=n+28|0;o=n+20|0;p=n+16|0;m=n+12|0;j=n+8|0;q=n+4|0;r=n;s=n+24|0;c[k>>2]=a;c[d>>2]=b;c[u>>2]=0;c[g>>2]=mc(c[(c[k>>2]|0)+20>>2]<<4)|0;if((c[g>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=n;return a|0}aL(c[g>>2]|0,0,c[(c[k>>2]|0)+20>>2]<<4|0)|0;rk(c[(c[k>>2]|0)+12>>2]|0,25,c[g>>2]|0)|0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[d>>2]|0)+8>>2]|0)){break}c[t>>2]=(c[g>>2]|0)+(c[h>>2]<<4);c[u>>2]=(c[u>>2]|0)-(c[(c[(c[c[t>>2]>>2]|0)+20>>2]|0)+48>>2]|0);c[(c[t>>2]|0)+4>>2]=c[u>>2];c[h>>2]=(c[h>>2]|0)+1}c[l>>2]=0;a:while(1){if((c[l>>2]|0)>=(c[(c[d>>2]|0)+4>>2]|0)){e=33;break}c[o>>2]=0;c[p>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[d>>2]|0)+8>>2]|0)){break}c[j>>2]=(c[g>>2]|0)+(c[h>>2]<<4);c[m>>2]=uk(c[k>>2]|0,c[c[j>>2]>>2]|0,c[l>>2]|0,(c[j>>2]|0)+8|0)|0;if((c[m>>2]|0)!=0){e=11;break a}if((c[(c[j>>2]|0)+8>>2]|0)!=0){c[(c[j>>2]|0)+12>>2]=c[(c[j>>2]|0)+4>>2];pl((c[g>>2]|0)+(c[h>>2]<<4)|0)|0;c[p>>2]=(c[p>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+1}while(1){if((c[p>>2]|0)<=0){break}c[q>>2]=0;c[r>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[d>>2]|0)+8>>2]|0)){break}c[s>>2]=(c[g>>2]|0)+(c[h>>2]<<4);if((c[(c[s>>2]|0)+8>>2]|0)==0){c[r>>2]=0}else{if((c[q>>2]|0)==0){e=22}else{if((c[(c[s>>2]|0)+12>>2]|0)<(c[(c[q>>2]|0)+12>>2]|0)){e=22}}if((e|0)==22){e=0;c[q>>2]=c[s>>2]}if((c[r>>2]|0)==0){e=25}else{if((c[(c[s>>2]|0)+12>>2]|0)==(c[(c[s>>2]|0)+ -16+12>>2]|0)){e=25}else{c[r>>2]=1}}if((e|0)==25){e=0;c[r>>2]=(c[r>>2]|0)+1}if((c[r>>2]|0)>(c[o>>2]|0)){c[o>>2]=c[r>>2]}}c[h>>2]=(c[h>>2]|0)+1}if((pl(c[q>>2]|0)|0)==0){continue}c[p>>2]=(c[p>>2]|0)+ -1}c[(c[(c[d>>2]|0)+24>>2]|0)+(c[l>>2]<<2)>>2]=c[o>>2];c[l>>2]=(c[l>>2]|0)+1}if((e|0)==11){c[f>>2]=c[m>>2];a=c[f>>2]|0;i=n;return a|0}else if((e|0)==33){oc(c[g>>2]|0);c[f>>2]=0;a=c[f>>2]|0;i=n;return a|0}return 0}function rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;g=e;f=e+4|0;h=e+8|0;c[j>>2]=a;c[g>>2]=b;c[f>>2]=d;c[h>>2]=0;a=nl(c[j>>2]|0,h,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function sk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;h=e;j=e+4|0;f=e+8|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[f>>2]=c[j>>2];a=$((c[h>>2]|0)*3|0,c[(c[f>>2]|0)+4>>2]|0)|0;a=Yk(c[c[f>>2]>>2]|0,c[g>>2]|0,(c[(c[f>>2]|0)+24>>2]|0)+(a<<2)|0)|0;i=e;return a|0}function tk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;l=f+28|0;m=f;n=f+4|0;e=f+8|0;j=f+12|0;g=f+16|0;k=f+20|0;h=f+24|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[e>>2]=0;c[j>>2]=c[n>>2];c[g>>2]=($(c[m>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0)*3;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[j>>2]|0)+4>>2]|0)){g=8;break}if((c[e>>2]|0)!=0){g=8;break}c[e>>2]=uk(c[c[j>>2]>>2]|0,c[l>>2]|0,c[k>>2]|0,h)|0;if((c[h>>2]|0)!=0){n=vk(h)|0;c[(c[(c[j>>2]|0)+24>>2]|0)+((c[g>>2]|0)+((c[k>>2]|0)*3|0)<<2)>>2]=n}else{c[(c[(c[j>>2]|0)+24>>2]|0)+((c[g>>2]|0)+((c[k>>2]|0)*3|0)<<2)>>2]=0}c[k>>2]=(c[k>>2]|0)+1}if((g|0)==8){i=f;return c[e>>2]|0}return 0}function uk(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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,E=0,F=0;m=i;i=i+96|0;k=m+76|0;r=m+56|0;w=m+72|0;n=m+68|0;h=m+64|0;p=m+60|0;E=m+52|0;j=m+48|0;l=m+44|0;o=m;s=m+16|0;x=m+8|0;B=m+12|0;t=m+81|0;u=m+80|0;C=m+20|0;A=m+24|0;F=m+28|0;z=m+32|0;v=m+36|0;q=m+40|0;c[r>>2]=b;c[w>>2]=e;c[n>>2]=f;c[h>>2]=g;c[p>>2]=c[(c[w>>2]|0)+20>>2];c[E>>2]=c[c[r>>2]>>2];c[c[h>>2]>>2]=0;if((c[(c[p>>2]|0)+52>>2]|0)<(c[(c[E>>2]|0)+24>>2]|0)){if((c[(c[p>>2]|0)+52>>2]|0)!=(c[n>>2]|0)){c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}}f=(c[w>>2]|0)+24|0;b=c[f+4>>2]|0;e=o;c[e>>2]=c[f>>2];c[e+4>>2]=b;c[j>>2]=c[(c[p>>2]|0)+28>>2];e=o;b=(c[r>>2]|0)+32|0;if((c[e>>2]|0)!=(c[b>>2]|0)?1:(c[e+4>>2]|0)!=(c[b+4>>2]|0)){y=6}else{if((d[(c[w>>2]|0)+32>>0]|0)!=0){y=6}}do{if((y|0)==6){c[s>>2]=d[(c[E>>2]|0)+231>>0]|0;c[B>>2]=0;a[t>>0]=0;a[u>>0]=0;c[A>>2]=c[w>>2];c[C>>2]=c[(c[w>>2]|0)+8>>2];while(1){if((c[C>>2]|0)==0){break}if((c[c[C>>2]>>2]|0)==4){c[B>>2]=1}if((c[c[C>>2]>>2]|0)==1){c[A>>2]=c[C>>2]}if((a[(c[C>>2]|0)+32>>0]|0)!=0){a[u>>0]=1}c[C>>2]=c[(c[C>>2]|0)+8>>2]}if((c[B>>2]|0)==0){c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}if((c[(c[p>>2]|0)+40>>2]|0)!=0){c[F>>2]=0;c[z>>2]=d[(c[w>>2]|0)+32>>0]|0;wk(c[r>>2]|0,c[w>>2]|0,F);while(1){if((c[F>>2]|0)!=0){break}if(!((a[(c[w>>2]|0)+32>>0]|0)!=0^1)){break}xk(c[r>>2]|0,c[w>>2]|0,F);if((c[z>>2]|0)!=0){continue}e=(c[w>>2]|0)+24|0;b=o;if((c[e>>2]|0)==(c[b>>2]|0)?(c[e+4>>2]|0)==(c[b+4>>2]|0):0){break}}c[j>>2]=c[(c[p>>2]|0)+28>>2];if((c[F>>2]|0)!=0){c[k>>2]=c[F>>2];b=c[k>>2]|0;i=m;return b|0}}c[x>>2]=(d[(c[r>>2]|0)+52>>0]|0)==(c[s>>2]|0)?1:-1;while(1){if((d[u>>0]|0)!=1){break}if((d[(c[A>>2]|0)+32>>0]|0)!=0){break}b=(c[s>>2]|0)!=0?-1:1;f=(c[A>>2]|0)+24|0;e=(c[r>>2]|0)+32|0;e=$K(c[f>>2]|0,c[f+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;e=nL(b|0,((b|0)<0)<<31>>31|0,e|0,D|0)|0;b=c[x>>2]|0;nL(e|0,D|0,b|0,((b|0)<0)<<31>>31|0)|0;if((D|0)>=0){break}c[v>>2]=0;xk(c[r>>2]|0,c[w>>2]|0,v);if((c[v>>2]|0)!=0){y=30;break}f=(c[w>>2]|0)+24|0;e=c[f+4>>2]|0;b=o;c[b>>2]=c[f>>2];c[b+4>>2]=e;c[j>>2]=c[(c[p>>2]|0)+28>>2]}if((y|0)==30){c[k>>2]=c[v>>2];b=c[k>>2]|0;i=m;return b|0}a[t>>0]=(c[(c[p>>2]|0)+4>>2]|0)==0;a:do{if((d[t>>0]|0)==0){u=(a[(c[A>>2]|0)+32>>0]|0)!=0;if((d[(c[r>>2]|0)+52>>0]|0)==(c[s>>2]|0)){if(u){c[j>>2]=(c[c[p>>2]>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)-1);Rj(c[c[p>>2]>>2]|0,j)}while(1){if((c[j>>2]|0)!=0){e=(c[s>>2]|0)!=0?-1:1;f=o;b=(c[r>>2]|0)+32|0;b=$K(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=nL(e|0,((e|0)<0)<<31>>31|0,b|0,D|0)|0;e=D;if(!((e|0)>0|(e|0)==0&b>>>0>0)){break a}}if((d[t>>0]|0)!=0){break a}Mj(c[s>>2]|0,c[c[p>>2]>>2]|0,c[(c[p>>2]|0)+4>>2]|0,j,o,q,t)}}else{if(u){c[j>>2]=0;b=o;c[b>>2]=0;c[b+4>>2]=0}while(1){if((c[j>>2]|0)!=0){e=(c[s>>2]|0)!=0?-1:1;f=o;b=(c[r>>2]|0)+32|0;b=$K(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;nL(e|0,((e|0)<0)<<31>>31|0,b|0,D|0)|0;if((D|0)>=0){break a}}if((d[t>>0]|0)!=0){break a}yk(c[s>>2]|0,c[c[p>>2]>>2]|0,c[(c[p>>2]|0)+4>>2]|0,j,o,t)}}}}while(0);if((d[t>>0]|0)==0){e=o;b=(c[r>>2]|0)+32|0;if(!((c[e>>2]|0)!=(c[b>>2]|0)?1:(c[e+4>>2]|0)!=(c[b+4>>2]|0))){break}}c[j>>2]=0}}while(0);if((c[j>>2]|0)==0){c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}if((a[c[j>>2]>>0]|0)==1){c[j>>2]=(c[j>>2]|0)+1;o=c[j>>2]|0;if((a[c[j>>2]>>0]&128|0)!=0){o=Lj(o,l)|0}else{c[l>>2]=d[o>>0]|0;o=1}c[j>>2]=(c[j>>2]|0)+o}else{c[l>>2]=0}while(1){if((c[l>>2]|0)>=(c[n>>2]|0)){y=64;break}Jj(0,j);if((a[c[j>>2]>>0]|0)==0){y=59;break}c[j>>2]=(c[j>>2]|0)+1;o=c[j>>2]|0;if((a[c[j>>2]>>0]&128|0)!=0){o=Lj(o,l)|0}else{c[l>>2]=d[o>>0]|0;o=1}c[j>>2]=(c[j>>2]|0)+o}if((y|0)==59){c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}else if((y|0)==64){c[c[h>>2]>>2]=(c[n>>2]|0)==(c[l>>2]|0)?c[j>>2]|0:0;c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}return 0}function vk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;d=e+8|0;g=e;h=e+12|0;f=e+4|0;c[d>>2]=b;c[g>>2]=c[c[d>>2]>>2];a[h>>0]=0;c[f>>2]=0;while(1){b=c[g>>2]|0;if((254&(a[c[g>>2]>>0]|a[h>>0])|0)==0){break}c[g>>2]=b+1;a[h>>0]=a[b>>0]&128;if((a[h>>0]|0)!=0){continue}c[f>>2]=(c[f>>2]|0)+1}c[c[d>>2]>>2]=b;i=e;return c[f>>2]|0}function wk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;h=f+20|0;g=f;j=f+4|0;k=f+8|0;l=f+12|0;m=f+16|0;c[h>>2]=b;c[g>>2]=d;c[j>>2]=e;if((c[g>>2]|0)==0){i=f;return}if((c[c[j>>2]>>2]|0)!=0){i=f;return}c[k>>2]=c[(c[g>>2]|0)+20>>2];if((c[k>>2]|0)!=0){zk(c[k>>2]|0);if((c[(c[k>>2]|0)+40>>2]|0)!=0){c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[k>>2]|0)+48>>2]|0)){break}c[m>>2]=(c[k>>2]|0)+56+((c[l>>2]|0)*24|0);if((c[(c[m>>2]|0)+20>>2]|0)!=0){Ik(c[(c[m>>2]|0)+20>>2]|0)|0}c[l>>2]=(c[l>>2]|0)+1}b=Jk(c[h>>2]|0,0,c[k>>2]|0)|0;c[c[j>>2]>>2]=b}c[(c[k>>2]|0)+8>>2]=0;b=(c[k>>2]|0)+16|0;c[b>>2]=0;c[b+4>>2]=0}b=(c[g>>2]|0)+24|0;c[b>>2]=0;c[b+4>>2]=0;a[(c[g>>2]|0)+32>>0]=0;a[(c[g>>2]|0)+33>>0]=0;wk(c[h>>2]|0,c[(c[g>>2]|0)+12>>2]|0,c[j>>2]|0);wk(c[h>>2]|0,c[(c[g>>2]|0)+16>>2]|0,c[j>>2]|0);i=f;return}function xk(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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;g=i;i=i+64|0;m=g+56|0;h=g+52|0;k=g+48|0;j=g+44|0;q=g+40|0;p=g+36|0;n=g+8|0;l=g+24|0;o=g+20|0;r=g;t=g+16|0;u=g+28|0;v=g+32|0;c[m>>2]=b;c[h>>2]=e;c[k>>2]=f;if((c[c[k>>2]>>2]|0)!=0){i=g;return}c[j>>2]=d[(c[m>>2]|0)+52>>0]|0;a[(c[h>>2]|0)+33>>0]=1;f=c[c[h>>2]>>2]|0;if((f|0)==4){c[l>>2]=c[(c[h>>2]|0)+12>>2];c[o>>2]=c[(c[h>>2]|0)+16>>2];b=(c[j>>2]|0)!=0?-1:1;f=(c[l>>2]|0)+24|0;e=(c[o>>2]|0)+24|0;e=$K(c[f>>2]|0,c[f+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;e=nL(b|0,((b|0)<0)<<31>>31|0,e|0,D|0)|0;b=r;c[b>>2]=e;c[b+4>>2]=D;a:do{if((d[(c[o>>2]|0)+32>>0]|0)!=0){s=21}else{if((d[(c[l>>2]|0)+32>>0]|0)==0){if((c[r+4>>2]|0)<0){s=21;break}}do{if((d[(c[l>>2]|0)+32>>0]|0)==0){if((d[(c[o>>2]|0)+32>>0]|0)==0){b=r;e=c[b+4>>2]|0;if((e|0)>0|(e|0)==0&(c[b>>2]|0)>>>0>0){break}}xk(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0);xk(c[m>>2]|0,c[o>>2]|0,c[k>>2]|0);break a}}while(0);xk(c[m>>2]|0,c[o>>2]|0,c[k>>2]|0)}}while(0);if((s|0)==21){xk(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0)}if((d[(c[l>>2]|0)+32>>0]|0)!=0){k=(d[(c[o>>2]|0)+32>>0]|0)!=0}else{k=0}a[(c[h>>2]|0)+32>>0]=k&1;b=(c[j>>2]|0)!=0?-1:1;f=(c[l>>2]|0)+24|0;e=(c[o>>2]|0)+24|0;e=$K(c[f>>2]|0,c[f+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;e=nL(b|0,((b|0)<0)<<31>>31|0,e|0,D|0)|0;b=r;c[b>>2]=e;c[b+4>>2]=D;do{if((d[(c[o>>2]|0)+32>>0]|0)==0){if((d[(c[l>>2]|0)+32>>0]|0)==0){if((c[r+4>>2]|0)<0){break}}f=(c[o>>2]|0)+24|0;e=c[f+4>>2]|0;b=(c[h>>2]|0)+24|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;i=g;return}}while(0);f=(c[l>>2]|0)+24|0;e=c[f+4>>2]|0;b=(c[h>>2]|0)+24|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;i=g;return}else if((f|0)==3|(f|0)==1){c[q>>2]=c[(c[h>>2]|0)+12>>2];c[p>>2]=c[(c[h>>2]|0)+16>>2];if((a[(c[q>>2]|0)+34>>0]|0)!=0){xk(c[m>>2]|0,c[p>>2]|0,c[k>>2]|0);f=(c[p>>2]|0)+24|0;e=c[f+4>>2]|0;b=(c[h>>2]|0)+24|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;a[(c[h>>2]|0)+32>>0]=a[(c[p>>2]|0)+32>>0]|0;i=g;return}b=(a[(c[p>>2]|0)+34>>0]|0)!=0;xk(c[m>>2]|0,c[q>>2]|0,c[k>>2]|0);if(b){f=(c[q>>2]|0)+24|0;e=c[f+4>>2]|0;b=(c[h>>2]|0)+24|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;a[(c[h>>2]|0)+32>>0]=a[(c[q>>2]|0)+32>>0]|0;i=g;return}xk(c[m>>2]|0,c[p>>2]|0,c[k>>2]|0);while(1){if((a[(c[q>>2]|0)+32>>0]|0)!=0){break}if((a[(c[p>>2]|0)+32>>0]|0)!=0){break}if((c[c[k>>2]>>2]|0)!=0){break}b=(c[j>>2]|0)!=0?-1:1;f=(c[q>>2]|0)+24|0;e=(c[p>>2]|0)+24|0;e=$K(c[f>>2]|0,c[f+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;e=nL(b|0,((b|0)<0)<<31>>31|0,e|0,D|0)|0;b=n;c[b>>2]=e;c[b+4>>2]=D;b=n;if((c[b>>2]|0)==0&(c[b+4>>2]|0)==0){break}l=c[m>>2]|0;if((c[n+4>>2]|0)<0){xk(l,c[q>>2]|0,c[k>>2]|0);continue}else{xk(l,c[p>>2]|0,c[k>>2]|0);continue}}f=(c[q>>2]|0)+24|0;e=c[f+4>>2]|0;b=(c[h>>2]|0)+24|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;if((d[(c[q>>2]|0)+32>>0]|0)!=0){j=1}else{j=(d[(c[p>>2]|0)+32>>0]|0)!=0}a[(c[h>>2]|0)+32>>0]=j&1;i=g;return}else if((f|0)==2){c[t>>2]=c[(c[h>>2]|0)+12>>2];c[u>>2]=c[(c[h>>2]|0)+16>>2];if((d[(c[u>>2]|0)+33>>0]|0)==0){xk(c[m>>2]|0,c[u>>2]|0,c[k>>2]|0)}xk(c[m>>2]|0,c[t>>2]|0,c[k>>2]|0);b:do{if((d[(c[t>>2]|0)+32>>0]|0)==0){while(1){if((c[c[k>>2]>>2]|0)!=0){break b}if((a[(c[u>>2]|0)+32>>0]|0)!=0){break b}e=(c[j>>2]|0)!=0?-1:1;f=(c[t>>2]|0)+24|0;b=(c[u>>2]|0)+24|0;b=$K(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=nL(e|0,((e|0)<0)<<31>>31|0,b|0,D|0)|0;e=D;if(!((e|0)>0|(e|0)==0&b>>>0>0)){break b}xk(c[m>>2]|0,c[u>>2]|0,c[k>>2]|0)}}}while(0);f=(c[t>>2]|0)+24|0;e=c[f+4>>2]|0;b=(c[h>>2]|0)+24|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;a[(c[h>>2]|0)+32>>0]=a[(c[t>>2]|0)+32>>0]|0;i=g;return}else{c[v>>2]=c[(c[h>>2]|0)+20>>2];zk(c[v>>2]|0);f=Ak(c[m>>2]|0,c[v>>2]|0,(c[h>>2]|0)+32|0)|0;c[c[k>>2]>>2]=f;f=(c[v>>2]|0)+16|0;e=c[f+4>>2]|0;b=(c[h>>2]|0)+24|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;i=g;return}}function yk(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=i;i=i+48|0;q=p+32|0;n=p+28|0;r=p+8|0;k=p+12|0;m=p+16|0;o=p+20|0;l=p+24|0;j=p;c[q>>2]=b;c[n>>2]=d;c[r>>2]=e;c[k>>2]=f;c[m>>2]=g;c[o>>2]=h;c[l>>2]=c[c[k>>2]>>2];if((c[l>>2]|0)==0){c[l>>2]=c[n>>2];d=Kj(c[l>>2]|0,c[m>>2]|0)|0;c[l>>2]=(c[l>>2]|0)+d;d=c[l>>2]|0;b=c[k>>2]|0;c[b>>2]=d;i=p;return}Pj(0,l);if((c[l>>2]|0)>>>0>=((c[n>>2]|0)+(c[r>>2]|0)|0)>>>0){a[c[o>>2]>>0]=1;d=c[l>>2]|0;b=c[k>>2]|0;c[b>>2]=d;i=p;return}else{d=Kj(c[l>>2]|0,j)|0;c[l>>2]=(c[l>>2]|0)+d;d=(c[q>>2]|0)!=0?-1:1;b=j;b=nL(d|0,((d|0)<0)<<31>>31|0,c[b>>2]|0,c[b+4>>2]|0)|0;d=c[m>>2]|0;e=d;b=dL(c[e>>2]|0,c[e+4>>2]|0,b|0,D|0)|0;c[d>>2]=b;c[d+4>>2]=D;d=c[l>>2]|0;b=c[k>>2]|0;c[b>>2]=d;i=p;return}}function zk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[d>>2]|0)+24>>2]|0)!=0){oc(c[(c[d>>2]|0)+28>>2]|0)}c[(c[d>>2]|0)+28>>2]=0;c[(c[d>>2]|0)+32>>2]=0;c[(c[d>>2]|0)+24>>2]=0;i=b;return}function Ak(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;m=f+20|0;j=f;h=f+4|0;g=f+8|0;k=f+12|0;l=f+16|0;c[m>>2]=a;c[j>>2]=b;c[h>>2]=e;c[g>>2]=0;c[k>>2]=c[j>>2];c[l>>2]=c[c[m>>2]>>2];e=c[m>>2]|0;if((c[(c[j>>2]|0)+40>>2]|0)!=0){c[g>>2]=Bk(e,c[j>>2]|0,c[h>>2]|0)|0;m=c[g>>2]|0;i=f;return m|0}if((d[e+52>>0]|0|0)!=(d[(c[l>>2]|0)+231>>0]|0|0)){if((c[(c[k>>2]|0)+4>>2]|0)!=0){Mj(d[(c[l>>2]|0)+231>>0]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0,(c[k>>2]|0)+8|0,(c[k>>2]|0)+16|0,(c[k>>2]|0)+32|0,c[h>>2]|0);c[(c[k>>2]|0)+28>>2]=c[(c[k>>2]|0)+8>>2];m=c[g>>2]|0;i=f;return m|0}}Ck(c[l>>2]|0,c[k>>2]|0,c[h>>2]|0);m=c[g>>2]|0;i=f;return m|0}function Bk(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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,E=0;m=i;i=i+192|0;l=m+172|0;E=m+168|0;o=m+164|0;j=m+160|0;k=m+156|0;p=m+152|0;n=m+148|0;v=m+176|0;u=m+144|0;t=m;q=m+112|0;r=m+96|0;s=m+104|0;g=m+108|0;w=m+116|0;x=m+120|0;y=m+124|0;z=m+128|0;A=m+132|0;B=m+136|0;C=m+140|0;c[E>>2]=b;c[o>>2]=e;c[j>>2]=f;c[k>>2]=0;c[p>>2]=c[o>>2];c[n>>2]=c[c[E>>2]>>2];a[v>>0]=0;if((c[(c[o>>2]|0)+48>>2]|0)==1){if((c[(c[o>>2]|0)+40>>2]|0)!=0){c[k>>2]=Dk(c[n>>2]|0,c[(c[o>>2]|0)+76>>2]|0,(c[p>>2]|0)+16|0,(c[p>>2]|0)+28|0,(c[p>>2]|0)+32|0)|0;if((c[(c[p>>2]|0)+28>>2]|0)==0){a[v>>0]=1}}else{h=5}}else{h=5}a:do{if((h|0)==5){c[u>>2]=d[(c[E>>2]|0)+52>>0]|0;f=t+0|0;E=f+96|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(E|0));while(1){if((d[v>>0]|0|0)!=0){break a}c[q>>2]=0;b=r;c[b>>2]=0;c[b+4>>2]=0;c[s>>2]=0;while(1){if((c[k>>2]|0)!=0){break}if((c[s>>2]|0)>=(c[(c[o>>2]|0)+48>>2]|0)){break}if((d[v>>0]|0|0)!=0){break}c[k>>2]=Ek(c[n>>2]|0,c[o>>2]|0,c[s>>2]|0,t+((c[s>>2]|0)*24|0)|0,v)|0;do{if((c[t+((c[s>>2]|0)*24|0)>>2]|0)==0){if((c[q>>2]|0)!=0){e=(c[u>>2]|0)!=0?-1:1;f=r;b=t+((c[s>>2]|0)*24|0)+8|0;b=$K(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;nL(e|0,((e|0)<0)<<31>>31|0,b|0,D|0)|0;if((D|0)>=0){break}}f=t+((c[s>>2]|0)*24|0)+8|0;e=c[f+4>>2]|0;b=r;c[b>>2]=c[f>>2];c[b+4>>2]=e;c[q>>2]=1}}while(0);c[s>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[(c[o>>2]|0)+48>>2]|0)){break}while(1){if((c[k>>2]|0)!=0){break}if((d[v>>0]|0|0)!=0){break}if((c[t+((c[s>>2]|0)*24|0)>>2]|0)!=0){break}e=(c[u>>2]|0)!=0?-1:1;f=t+((c[s>>2]|0)*24|0)+8|0;b=r;b=$K(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;nL(e|0,((e|0)<0)<<31>>31|0,b|0,D|0)|0;if((D|0)>=0){break}c[k>>2]=Ek(c[n>>2]|0,c[o>>2]|0,c[s>>2]|0,t+((c[s>>2]|0)*24|0)|0,v)|0;e=(c[u>>2]|0)!=0?-1:1;f=t+((c[s>>2]|0)*24|0)+8|0;b=r;b=$K(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=nL(e|0,((e|0)<0)<<31>>31|0,b|0,D|0)|0;e=D;if(!((e|0)>0|(e|0)==0&b>>>0>0)){continue}f=t+((c[s>>2]|0)*24|0)+8|0;e=c[f+4>>2]|0;b=r;c[b>>2]=c[f>>2];c[b+4>>2]=e;c[s>>2]=0}c[s>>2]=(c[s>>2]|0)+1}if((d[v>>0]|0|0)!=0){continue}c[g>>2]=0;c[w>>2]=c[t+(((c[(c[o>>2]|0)+48>>2]|0)-1|0)*24|0)+20>>2];c[x>>2]=mc((c[w>>2]|0)+1|0)|0;if((c[x>>2]|0)==0){break}fL(c[x>>2]|0,c[t+(((c[(c[o>>2]|0)+48>>2]|0)-1|0)*24|0)+16>>2]|0,(c[w>>2]|0)+1|0)|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=((c[(c[o>>2]|0)+48>>2]|0)-1|0)){break}if((c[t+((c[s>>2]|0)*24|0)>>2]|0)==0){c[y>>2]=c[t+((c[s>>2]|0)*24|0)+16>>2];c[z>>2]=c[x>>2];c[A>>2]=c[x>>2];c[B>>2]=(c[(c[o>>2]|0)+48>>2]|0)-1-(c[s>>2]|0);c[C>>2]=Fk(A,c[B>>2]|0,0,1,y,z)|0;if((c[C>>2]|0)==0){break}c[g>>2]=(c[A>>2]|0)-(c[x>>2]|0)}c[s>>2]=(c[s>>2]|0)+1}if((c[s>>2]|0)==((c[(c[o>>2]|0)+48>>2]|0)-1|0)){h=35;break}oc(c[x>>2]|0)}if((h|0)==35){f=r;e=c[f+4>>2]|0;b=(c[p>>2]|0)+16|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;c[(c[p>>2]|0)+28>>2]=c[x>>2];c[(c[p>>2]|0)+32>>2]=c[g>>2];c[(c[p>>2]|0)+24>>2]=1;break}c[l>>2]=7;b=c[l>>2]|0;i=m;return b|0}}while(0);a[c[j>>2]>>0]=a[v>>0]|0;c[l>>2]=c[k>>2];b=c[l>>2]|0;i=m;return b|0}function Ck(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;m=g+24|0;k=g+20|0;l=g+8|0;h=g+12|0;j=g+16|0;n=g;c[m>>2]=b;c[k>>2]=e;c[l>>2]=f;c[j>>2]=(c[c[k>>2]>>2]|0)+(c[(c[k>>2]|0)+4>>2]|0);f=c[k>>2]|0;if((c[(c[k>>2]|0)+8>>2]|0)!=0){c[h>>2]=c[f+8>>2]}else{c[h>>2]=c[f>>2]}if((c[h>>2]|0)>>>0>=(c[j>>2]|0)>>>0){a[c[l>>2]>>0]=1;i=g;return}b=Kj(c[h>>2]|0,n)|0;c[h>>2]=(c[h>>2]|0)+b;if((d[(c[m>>2]|0)+231>>0]|0)==0){o=8}else{if((c[(c[k>>2]|0)+8>>2]|0)==0){o=8}else{e=n;b=(c[k>>2]|0)+16|0;f=b;e=$K(c[f>>2]|0,c[f+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;c[b>>2]=e;c[b+4>>2]=D}}if((o|0)==8){e=n;b=(c[k>>2]|0)+16|0;f=b;e=dL(c[f>>2]|0,c[f+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;c[b>>2]=e;c[b+4>>2]=D}c[(c[k>>2]|0)+28>>2]=c[h>>2];Pj(0,h);c[(c[k>>2]|0)+32>>2]=(c[h>>2]|0)-(c[(c[k>>2]|0)+28>>2]|0);while(1){if((c[h>>2]|0)>>>0<(c[j>>2]|0)>>>0){n=(a[c[h>>2]>>0]|0)==0}else{n=0}m=c[h>>2]|0;if(!n){break}c[h>>2]=m+1}c[(c[k>>2]|0)+8>>2]=m;a[c[l>>2]>>0]=0;i=g;return}function Dk(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=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;n=i;i=i+64|0;h=n+60|0;u=n+56|0;t=n+52|0;p=n+48|0;j=n+44|0;q=n+40|0;x=n+36|0;w=n+32|0;r=n+24|0;v=n+20|0;k=n+16|0;l=n+12|0;m=n+8|0;s=n+28|0;o=n;c[u>>2]=a;c[t>>2]=b;c[p>>2]=e;c[j>>2]=f;c[q>>2]=g;c[x>>2]=c[(c[t>>2]|0)+8>>2];c[w>>2]=c[c[t>>2]>>2];c[r>>2]=(d[(c[u>>2]|0)+231>>0]|0|0)!=0?49:50;if((c[x>>2]|0)==0){c[c[j>>2]>>2]=0;c[h>>2]=0;a=c[h>>2]|0;i=n;return a|0}while(1){c[v>>2]=c[c[c[t>>2]>>2]>>2];if((c[(c[v>>2]|0)+80>>2]|0)==0){r=4;break}e=(c[c[w>>2]>>2]|0)+88|0;b=c[e+4>>2]|0;a=o;c[a>>2]=c[e>>2];c[a+4>>2]=b;c[k>>2]=Gj(c[u>>2]|0,c[c[w>>2]>>2]|0,l,m)|0;c[s>>2]=1;while(1){if((c[k>>2]|0)!=0){break}if((c[s>>2]|0)>=(c[x>>2]|0)){break}if((c[(c[(c[w>>2]|0)+(c[s>>2]<<2)>>2]|0)+80>>2]|0)==0){break}b=(c[(c[w>>2]|0)+(c[s>>2]<<2)>>2]|0)+88|0;a=o;if(!((c[b>>2]|0)==(c[a>>2]|0)?(c[b+4>>2]|0)==(c[a+4>>2]|0):0)){break}c[k>>2]=Gj(c[u>>2]|0,c[(c[w>>2]|0)+(c[s>>2]<<2)>>2]|0,0,0)|0;c[s>>2]=(c[s>>2]|0)+1}if((c[k>>2]|0)!=0){r=12;break}Cj(c[c[t>>2]>>2]|0,c[x>>2]|0,c[s>>2]|0,c[r>>2]|0);if((c[m>>2]|0)>0){if((c[(c[c[w>>2]>>2]|0)+56>>2]|0)!=0){c[k>>2]=Ej(c[t>>2]|0,c[l>>2]|0,(c[m>>2]|0)+1|0)|0;if((c[k>>2]|0)!=0){r=16;break}c[l>>2]=c[(c[t>>2]|0)+16>>2]}}if((c[(c[t>>2]|0)+24>>2]|0)>=0){Hj(c[(c[t>>2]|0)+24>>2]|0,1,l,m)}if((c[m>>2]|0)>0){r=21;break}}if((r|0)==4){c[c[j>>2]>>2]=0}else if((r|0)==12){c[h>>2]=c[k>>2];a=c[h>>2]|0;i=n;return a|0}else if((r|0)==16){c[h>>2]=c[k>>2];a=c[h>>2]|0;i=n;return a|0}else if((r|0)==21){c[c[j>>2]>>2]=c[l>>2];e=o;b=c[e+4>>2]|0;a=c[p>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=b;c[c[q>>2]>>2]=c[m>>2]}c[h>>2]=0;a=c[h>>2]|0;i=n;return a|0}function Ek(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+32|0;h=n+24|0;l=n;p=n+4|0;k=n+8|0;m=n+12|0;j=n+16|0;o=n+20|0;c[h>>2]=b;c[l>>2]=d;c[p>>2]=e;c[k>>2]=f;c[m>>2]=g;c[j>>2]=0;if((c[(c[l>>2]|0)+44>>2]|0)==(c[p>>2]|0)){Ck(c[h>>2]|0,c[l>>2]|0,c[m>>2]|0);c[(c[k>>2]|0)+16>>2]=c[(c[l>>2]|0)+28>>2];c[(c[k>>2]|0)+20>>2]=c[(c[l>>2]|0)+32>>2];e=(c[l>>2]|0)+16|0;d=c[e+4>>2]|0;b=(c[k>>2]|0)+8|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;b=c[j>>2]|0;i=n;return b|0}c[o>>2]=(c[l>>2]|0)+56+((c[p>>2]|0)*24|0);if((c[(c[o>>2]|0)+20>>2]|0)==0){c[c[k>>2]>>2]=1;b=c[j>>2]|0;i=n;return b|0}c[j>>2]=Dk(c[h>>2]|0,c[(c[o>>2]|0)+20>>2]|0,(c[k>>2]|0)+8|0,(c[k>>2]|0)+16|0,(c[k>>2]|0)+20|0)|0;if((c[(c[k>>2]|0)+16>>2]|0)!=0){b=c[j>>2]|0;i=n;return b|0}a[c[m>>2]>>0]=1;b=c[j>>2]|0;i=n;return b|0}function Fk(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;B=i;i=i+96|0;A=B+80|0;p=B+76|0;x=B+72|0;z=B+68|0;y=B+64|0;n=B+60|0;o=B+56|0;q=B+52|0;m=B+48|0;C=B+40|0;r=B+36|0;s=B+32|0;t=B+44|0;u=B+16|0;v=B+8|0;w=B;k=B+24|0;c[p>>2]=b;c[x>>2]=e;c[z>>2]=f;c[y>>2]=g;c[n>>2]=h;c[o>>2]=j;c[q>>2]=c[c[p>>2]>>2];c[m>>2]=c[c[n>>2]>>2];c[C>>2]=c[c[o>>2]>>2];c[r>>2]=0;c[s>>2]=0;if((a[c[m>>2]>>0]|0)==1){c[m>>2]=(c[m>>2]|0)+1;j=c[m>>2]|0;if((a[c[m>>2]>>0]&128|0)!=0){j=Lj(j,r)|0}else{c[r>>2]=d[j>>0]|0;j=1}c[m>>2]=(c[m>>2]|0)+j}if((a[c[C>>2]>>0]|0)==1){c[C>>2]=(c[C>>2]|0)+1;j=c[C>>2]|0;if((a[c[C>>2]>>0]&128|0)!=0){j=Lj(j,s)|0}else{c[s>>2]=d[j>>0]|0;j=1}c[C>>2]=(c[C>>2]|0)+j}while(1){if((c[r>>2]|0)!=(c[s>>2]|0)){if((c[r>>2]|0)<(c[s>>2]|0)){Jj(0,m);if(0==(a[c[m>>2]>>0]|0)){break}c[m>>2]=(c[m>>2]|0)+1;j=c[m>>2]|0;if((a[c[m>>2]>>0]&128|0)!=0){j=Lj(j,r)|0}else{c[r>>2]=d[j>>0]|0;j=1}c[m>>2]=(c[m>>2]|0)+j;continue}else{Jj(0,C);if(0==(a[c[C>>2]>>0]|0)){break}c[C>>2]=(c[C>>2]|0)+1;j=c[C>>2]|0;if((a[c[C>>2]>>0]&128|0)!=0){j=Lj(j,s)|0}else{c[s>>2]=d[j>>0]|0;j=1}c[C>>2]=(c[C>>2]|0)+j;continue}}c[t>>2]=c[q>>2];h=u;c[h>>2]=0;c[h+4>>2]=0;h=v;c[h>>2]=0;c[h+4>>2]=0;h=w;c[h>>2]=0;c[h+4>>2]=0;if((c[r>>2]|0)!=0){h=c[q>>2]|0;c[q>>2]=h+1;a[h>>0]=1;h=c[r>>2]|0;h=uj(c[q>>2]|0,h,((h|0)<0)<<31>>31)|0;c[q>>2]=(c[q>>2]|0)+h}Gk(m,v);h=v;h=$K(c[h>>2]|0,c[h+4>>2]|0,2,0)|0;b=v;c[b>>2]=h;c[b+4>>2]=D;Gk(C,w);b=w;b=$K(c[b>>2]|0,c[b+4>>2]|0,2,0)|0;h=w;c[h>>2]=b;c[h+4>>2]=D;while(1){h=w;e=c[h>>2]|0;h=c[h+4>>2]|0;f=v;b=c[x>>2]|0;b=dL(c[f>>2]|0,c[f+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;if((e|0)==(b|0)&(h|0)==(D|0)){l=19}else{if((c[y>>2]|0)==0){b=w;f=c[b+4>>2]|0;h=v;e=c[h+4>>2]|0;if((f|0)>(e|0)|((f|0)==(e|0)?(c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0:0)){f=w;b=c[f>>2]|0;f=c[f+4>>2]|0;e=v;h=c[x>>2]|0;h=dL(c[e>>2]|0,c[e+4>>2]|0,h|0,((h|0)<0)<<31>>31|0)|0;e=D;if((f|0)<(e|0)|(f|0)==(e|0)&b>>>0<=h>>>0){l=19}}}}if((l|0)==19){l=0;g=(c[z>>2]|0)!=0;f=v;e=w;h=g?c[f+4>>2]|0:c[e+4>>2]|0;b=k;c[b>>2]=g?c[f>>2]|0:c[e>>2]|0;c[b+4>>2]=h;b=k;b=dL(c[b>>2]|0,c[b+4>>2]|0,2,0)|0;Hk(q,u,b,D);b=u;b=$K(c[b>>2]|0,c[b+4>>2]|0,2,0)|0;h=u;c[h>>2]=b;c[h+4>>2]=D;c[t>>2]=0}if((c[z>>2]|0)!=0){l=22}else{f=w;b=c[f>>2]|0;f=c[f+4>>2]|0;e=v;h=c[x>>2]|0;h=dL(c[e>>2]|0,c[e+4>>2]|0,h|0,((h|0)<0)<<31>>31|0)|0;e=D;if(!((f|0)<(e|0)|(f|0)==(e|0)&b>>>0<=h>>>0)){l=22}}if((l|0)==22){l=0;b=w;f=c[b+4>>2]|0;h=v;e=c[h+4>>2]|0;if(!((f|0)<(e|0)|((f|0)==(e|0)?(c[b>>2]|0)>>>0<=(c[h>>2]|0)>>>0:0))){if((a[c[m>>2]>>0]&254|0)==0){break}Gk(m,v);b=v;b=$K(c[b>>2]|0,c[b+4>>2]|0,2,0)|0;h=v;c[h>>2]=b;c[h+4>>2]=D;continue}}if((a[c[C>>2]>>0]&254|0)==0){break}Gk(C,w);b=w;b=$K(c[b>>2]|0,c[b+4>>2]|0,2,0)|0;h=w;c[h>>2]=b;c[h+4>>2]=D}if((c[t>>2]|0)!=0){c[q>>2]=c[t>>2]}Jj(0,m);Jj(0,C);if(0==(a[c[m>>2]>>0]|0)){break}if(0==(a[c[C>>2]>>0]|0)){break}c[m>>2]=(c[m>>2]|0)+1;j=c[m>>2]|0;if((a[c[m>>2]>>0]&128|0)!=0){j=Lj(j,r)|0}else{c[r>>2]=d[j>>0]|0;j=1}c[m>>2]=(c[m>>2]|0)+j;c[C>>2]=(c[C>>2]|0)+1;j=c[C>>2]|0;if((a[c[C>>2]>>0]&128|0)!=0){j=Lj(j,s)|0}else{c[s>>2]=d[j>>0]|0;j=1}c[C>>2]=(c[C>>2]|0)+j}Pj(0,C);Pj(0,m);c[c[n>>2]>>2]=c[m>>2];c[c[o>>2]>>2]=c[C>>2];if((c[c[p>>2]>>2]|0)==(c[q>>2]|0)){c[A>>2]=0;h=c[A>>2]|0;i=B;return h|0}else{h=c[q>>2]|0;c[q>>2]=h+1;a[h>>0]=0;c[c[p>>2]>>2]=c[q>>2];c[A>>2]=1;h=c[A>>2]|0;i=B;return h|0}return 0}function Gk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+12|0;e=d+8|0;f=d;c[g>>2]=a;c[e>>2]=b;a=Kj(c[c[g>>2]>>2]|0,f)|0;b=c[g>>2]|0;c[b>>2]=(c[b>>2]|0)+a;b=f;a=c[e>>2]|0;e=a;b=dL(c[e>>2]|0,c[e+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[a>>2]=b;c[a+4>>2]=D;i=d;return}function Hk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+12|0;g=f+8|0;h=f;c[j>>2]=a;c[g>>2]=b;a=h;c[a>>2]=d;c[a+4>>2]=e;d=c[c[j>>2]>>2]|0;a=h;b=c[g>>2]|0;b=$K(c[a>>2]|0,c[a+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=uj(d,b,D)|0;d=c[j>>2]|0;c[d>>2]=(c[d>>2]|0)+b;d=h;b=c[d+4>>2]|0;a=c[g>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;i=f;return}function Ik(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+28>>2]=1;c[d>>2]=0;while(1){if((c[d>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){break}c[(c[(c[c[e>>2]>>2]|0)+(c[d>>2]<<2)>>2]|0)+80>>2]=0;c[(c[(c[c[e>>2]>>2]|0)+(c[d>>2]<<2)>>2]|0)+84>>2]=0;a=(c[(c[c[e>>2]>>2]|0)+(c[d>>2]<<2)>>2]|0)+88|0;c[a>>2]=0;c[a+4>>2]=0;c[d>>2]=(c[d>>2]|0)+1}i=b;return 0}function Jk(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+48|0;r=k+44|0;t=k+40|0;g=k+36|0;h=k+32|0;j=k+28|0;f=k+24|0;s=k+20|0;o=k+12|0;q=k+8|0;l=k+4|0;m=k;n=k+16|0;c[r>>2]=a;c[t>>2]=b;c[g>>2]=e;c[h>>2]=c[c[r>>2]>>2];c[j>>2]=0;c[s>>2]=0;if((c[t>>2]|0)!=0){if((d[(c[r>>2]|0)+52>>0]|0|0)==(d[(c[h>>2]|0)+231>>0]|0|0)){if((c[(c[g>>2]|0)+48>>2]|0)<=4){if((c[(c[g>>2]|0)+48>>2]|0)>0){if((c[(c[g>>2]|0)+48>>2]|0)<=4){e=(c[(c[g>>2]|0)+48>>2]|0)>0}else{e=0}}else{e=0}}else{e=0}}else{e=0}}else{e=0}c[o>>2]=e&1;c[f>>2]=0;while(1){if((c[o>>2]|0)!=1){break}if((c[f>>2]|0)>=(c[(c[g>>2]|0)+48>>2]|0)){break}c[q>>2]=(c[g>>2]|0)+56+((c[f>>2]|0)*24|0);if((c[(c[q>>2]|0)+12>>2]|0)!=0){p=13}else{if((c[(c[q>>2]|0)+20>>2]|0)!=0){if((c[(c[(c[q>>2]|0)+20>>2]|0)+36>>2]|0)==0){p=13}}}if((p|0)==13){p=0;c[o>>2]=0}if((c[(c[q>>2]|0)+20>>2]|0)!=0){c[s>>2]=1}c[f>>2]=(c[f>>2]|0)+1}if((c[o>>2]|0)!=0){if((c[s>>2]|0)!=0){if((c[(c[g>>2]|0)+52>>2]|0)>=(c[(c[h>>2]|0)+24>>2]|0)){o=-1}else{o=c[(c[g>>2]|0)+52>>2]|0}c[l>>2]=o;c[f>>2]=0;while(1){if((c[j>>2]|0)!=0){break}if((c[f>>2]|0)>=(c[(c[g>>2]|0)+48>>2]|0)){break}c[m>>2]=(c[g>>2]|0)+56+((c[f>>2]|0)*24|0);c[n>>2]=c[(c[m>>2]|0)+20>>2];if((c[n>>2]|0)!=0){c[j>>2]=Kk(c[h>>2]|0,c[n>>2]|0,c[l>>2]|0,c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+4>>2]|0)|0}c[f>>2]=(c[f>>2]|0)+1}c[(c[g>>2]|0)+40>>2]=1;t=c[j>>2]|0;i=k;return t|0}}c[j>>2]=Lk(c[r>>2]|0,c[g>>2]|0)|0;c[(c[g>>2]|0)+40>>2]=0;t=c[j>>2]|0;i=k;return t|0} + + + +function Zv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;j=e+16|0;h=e;g=e+4|0;f=e+8|0;k=e+12|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;if((c[c[g>>2]>>2]|0)!=0){c[k>>2]=ef(c[c[j>>2]>>2]|0,c[c[g>>2]>>2]|0)|0;c[f>>2]=c[(c[(c[c[j>>2]>>2]|0)+16>>2]|0)+(c[k>>2]<<4)>>2]}else{c[f>>2]=c[(c[g>>2]|0)+4>>2]}a=af(c[j>>2]|0,c[h>>2]|0,c[(c[g>>2]|0)+8>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function _v(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d;e=d+12|0;h=d+4|0;g=d+8|0;c[h>>2]=a;c[g>>2]=b;if((Ub(c[g>>2]|0)|0)>6){if(0==(Tb(c[g>>2]|0,21672,7)|0)){a=c[h>>2]|0;c[f>>2]=c[g>>2];bf(a,21680,f);c[e>>2]=1;a=c[e>>2]|0;i=d;return a|0}}c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}function $v(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;l=g+12|0;h=g;k=g+4|0;j=g+8|0;c[l>>2]=b;c[h>>2]=e;c[k>>2]=f;f=c[l>>2]|0;if((c[(c[l>>2]|0)+408>>2]|0)!=0){f=c[f+408>>2]|0}c[j>>2]=f;aw(c[l>>2]|0,c[k>>2]|0);b=(c[j>>2]|0)+328|0;c[b>>2]=c[b>>2]|1<>2];b=(c[j>>2]|0)+20|0;a[b>>0]=d[b>>0]|0|c[h>>2];i=g;return}function aw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;j=d+16|0;h=d;e=d+4|0;g=d+8|0;f=d+12|0;c[j>>2]=a;c[h>>2]=b;b=c[j>>2]|0;if((c[(c[j>>2]|0)+408>>2]|0)!=0){b=c[b+408>>2]|0}c[e>>2]=b;c[g>>2]=c[c[e>>2]>>2];c[f>>2]=1<>2];if((c[(c[e>>2]|0)+332>>2]&c[f>>2]|0)!=0){i=d;return}j=(c[e>>2]|0)+332|0;c[j>>2]=c[j>>2]|c[f>>2];c[(c[e>>2]|0)+336+(c[h>>2]<<2)>>2]=c[c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]>>2];if((c[h>>2]|0)!=1){i=d;return}bw(c[e>>2]|0)|0;i=d;return}function bw(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;h=i;i=i+32|0;e=h;g=h+20|0;d=h+4|0;k=h+8|0;f=h+12|0;j=h+16|0;c[d>>2]=b;c[k>>2]=c[c[d>>2]>>2];if((c[(c[(c[k>>2]|0)+16>>2]|0)+20>>2]|0)==0){if((a[(c[d>>2]|0)+450>>0]|0)==0){c[f>>2]=Ph(c[c[k>>2]>>2]|0,0,c[k>>2]|0,j,0,542)|0;if((c[f>>2]|0)!=0){bf(c[d>>2]|0,21600,e);c[(c[d>>2]|0)+12>>2]=c[f>>2];c[g>>2]=1;k=c[g>>2]|0;i=h;return k|0}c[(c[(c[k>>2]|0)+16>>2]|0)+20>>2]=c[j>>2];if(7==(Ig(c[j>>2]|0,c[(c[k>>2]|0)+72>>2]|0,-1,0)|0)){a[(c[k>>2]|0)+64>>0]=1;c[g>>2]=1;k=c[g>>2]|0;i=h;return k|0}}}c[g>>2]=0;k=c[g>>2]|0;i=h;return k|0}function cw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;j=l+24|0;m=l;h=l+4|0;g=l+8|0;e=l+12|0;n=l+16|0;k=l+20|0;c[j>>2]=a;c[m>>2]=b;c[h>>2]=d;c[g>>2]=0;c[n>>2]=Ub(c[m>>2]|0)|0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[j>>2]|0)+20>>2]|0)){f=7;break}a=c[e>>2]|0;c[k>>2]=(c[e>>2]|0)<2?a^1:a;if((c[h>>2]|0)!=0){if((Dc(c[h>>2]|0,c[(c[(c[j>>2]|0)+16>>2]|0)+(c[k>>2]<<4)>>2]|0)|0)==0){f=5}}else{f=5}if((f|0)==5){f=0;c[g>>2]=zh((c[(c[(c[j>>2]|0)+16>>2]|0)+(c[k>>2]<<4)+12>>2]|0)+8|0,c[m>>2]|0,c[n>>2]|0)|0;if((c[g>>2]|0)!=0){f=7;break}}c[e>>2]=(c[e>>2]|0)+1}if((f|0)==7){i=l;return c[g>>2]|0}return 0}function dw(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+16|0;n=h+8|0;m=h;l=h+13|0;k=h+12|0;j=h+4|0;c[n>>2]=b;c[m>>2]=d;a[l>>0]=e;a[k>>0]=f;c[j>>2]=g;b=kw(c[n>>2]|0,c[m>>2]|0,a[l>>0]|0,a[k>>0]|0,c[j>>2]|0,0)|0;i=h;return b|0}function ew(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;f=j+24|0;k=j;l=j+4|0;e=j+8|0;g=j+12|0;h=j+16|0;m=j+20|0;c[f>>2]=a;c[k>>2]=b;c[l>>2]=d;c[e>>2]=Ov(c[f>>2]|0)|0;if((c[e>>2]|0)==0){i=j;return}c[g>>2]=Wv(c[f>>2]|0)|0;c[h>>2]=Wv(c[f>>2]|0)|0;Tv(c[e>>2]|0,50,c[k>>2]|0,c[g>>2]|0,2)|0;jf(c[e>>2]|0,c[k>>2]|0);Qv(c[e>>2]|0,25,c[l>>2]|0,c[h>>2]|0)|0;c[m>>2]=Tv(c[e>>2]|0,83,c[h>>2]|0,0,c[g>>2]|0)|0;gf(c[e>>2]|0,-120);Tv(c[e>>2]|0,51,c[k>>2]|0,2,c[h>>2]|0)|0;jw(c[e>>2]|0,c[m>>2]|0);Xv(c[f>>2]|0,c[g>>2]|0);Xv(c[f>>2]|0,c[h>>2]|0);i=j;return}function fw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+48|0;l=k;j=k+28|0;h=k+24|0;e=k+20|0;f=k+32|0;m=k+8|0;g=k+4|0;n=k+12|0;o=k+16|0;c[j>>2]=a;c[h>>2]=b;c[e>>2]=d;c[f>>2]=Ov(c[j>>2]|0)|0;if((c[f>>2]|0)==0){i=k;return}c[g>>2]=ef(c[c[j>>2]>>2]|0,c[(c[h>>2]|0)+68>>2]|0)|0;c[n>>2]=gw(c[j>>2]|0,c[h>>2]|0)|0;while(1){if((c[n>>2]|0)==0){break}c[o>>2]=ef(c[c[j>>2]>>2]|0,c[(c[n>>2]|0)+20>>2]|0)|0;Sv(c[f>>2]|0,123,c[o>>2]|0,0,0,c[c[n>>2]>>2]|0,0)|0;c[n>>2]=c[(c[n>>2]|0)+32>>2]}Sv(c[f>>2]|0,121,c[g>>2]|0,0,0,c[c[h>>2]>>2]|0,0)|0;a=c[c[j>>2]>>2]|0;c[l>>2]=c[e>>2];c[m>>2]=cf(a,22056,l)|0;if((c[m>>2]|0)==0){i=k;return}Rv(c[f>>2]|0,c[g>>2]|0,c[m>>2]|0);a=hw(c[j>>2]|0,c[h>>2]|0)|0;c[m>>2]=a;if((a|0)==0){i=k;return}Rv(c[f>>2]|0,1,c[m>>2]|0);i=k;return}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;e=f+24|0;m=f;k=f+4|0;l=f+8|0;h=f+12|0;j=f+16|0;g=f+20|0;c[m>>2]=b;c[k>>2]=d;c[l>>2]=c[(c[(c[c[m>>2]>>2]|0)+16>>2]|0)+28>>2];c[h>>2]=0;if((a[(c[m>>2]|0)+438>>0]|0)!=0){c[e>>2]=0;m=c[e>>2]|0;i=f;return m|0}a:do{if((c[l>>2]|0)!=(c[(c[k>>2]|0)+68>>2]|0)){c[j>>2]=c[(c[l>>2]|0)+48>>2];while(1){if((c[j>>2]|0)==0){break a}c[g>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[g>>2]|0)+24>>2]|0)==(c[(c[k>>2]|0)+68>>2]|0)){if(0==(Dc(c[(c[g>>2]|0)+4>>2]|0,c[c[k>>2]>>2]|0)|0)){if((c[h>>2]|0)!=0){d=c[h>>2]|0}else{d=c[(c[k>>2]|0)+64>>2]|0}c[(c[g>>2]|0)+32>>2]=d;c[h>>2]=c[g>>2]}}c[j>>2]=c[c[j>>2]>>2]}}}while(0);if((c[h>>2]|0)!=0){g=c[h>>2]|0}else{g=c[(c[k>>2]|0)+64>>2]|0}c[e>>2]=g;m=c[e>>2]|0;i=f;return m|0}function hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;g=e;f=e+28|0;m=e+4|0;k=e+8|0;h=e+12|0;l=e+16|0;j=e+20|0;d=e+24|0;c[f>>2]=a;c[m>>2]=b;c[h>>2]=0;c[l>>2]=c[(c[(c[c[f>>2]>>2]|0)+16>>2]|0)+28>>2];a:do{if((c[(c[m>>2]|0)+68>>2]|0)!=(c[l>>2]|0)){c[j>>2]=c[c[f>>2]>>2];c[k>>2]=gw(c[f>>2]|0,c[m>>2]|0)|0;while(1){if((c[k>>2]|0)==0){break a}if((c[(c[k>>2]|0)+20>>2]|0)==(c[l>>2]|0)){c[h>>2]=iw(c[j>>2]|0,c[h>>2]|0,c[c[k>>2]>>2]|0)|0}c[k>>2]=c[(c[k>>2]|0)+32>>2]}}}while(0);if((c[h>>2]|0)==0){a=c[h>>2]|0;i=e;return a|0}a=c[c[f>>2]>>2]|0;c[g>>2]=c[h>>2];c[d>>2]=cf(a,22072,g)|0;cc(c[c[f>>2]>>2]|0,c[h>>2]|0);c[h>>2]=c[d>>2];a=c[h>>2]|0;i=e;return a|0}function iw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;j=e;h=e+20|0;g=e+8|0;k=e+12|0;f=e+16|0;c[h>>2]=a;c[g>>2]=b;c[k>>2]=d;d=c[h>>2]|0;if((c[g>>2]|0)!=0){a=c[k>>2]|0;c[j>>2]=c[g>>2];c[j+4>>2]=a;c[f>>2]=cf(d,22104,j)|0;cc(c[h>>2]|0,c[g>>2]|0);a=c[f>>2]|0;i=e;return a|0}else{c[j>>2]=c[k>>2];c[f>>2]=cf(d,22096,j)|0;a=c[f>>2]|0;i=e;return a|0}return 0}function jw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;lf(c[e>>2]|0,c[f>>2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[(c[e>>2]|0)+24>>2]|0)+88>>2]=(c[(c[e>>2]|0)+32>>2]|0)-1;i=d;return}function kw(f,g,j,k,l,m){f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0;t=i;i=i+64|0;B=t;n=t+40|0;u=t+48|0;w=t+44|0;q=t+56|0;s=t+57|0;o=t+36|0;C=t+52|0;v=t+24|0;y=t+20|0;p=t+16|0;x=t+12|0;A=t+8|0;r=t+28|0;E=t+32|0;c[u>>2]=f;c[w>>2]=g;a[q>>0]=j;a[s>>0]=k;c[o>>2]=l;c[C>>2]=m;c[y>>2]=0;c[p>>2]=0;c[x>>2]=1;c[A>>2]=1784;c[r>>2]=0;if((c[w>>2]|0)==0){c[c[o>>2]>>2]=0;c[n>>2]=0;f=c[n>>2]|0;i=t;return f|0}c[v>>2]=d[c[w>>2]>>0]|0;if((c[v>>2]|0)==159){c[v>>2]=d[(c[w>>2]|0)+38>>0]|0}do{if((c[v>>2]|0)==157){if((d[c[(c[w>>2]|0)+12>>2]>>0]|0|0)!=132){if((d[c[(c[w>>2]|0)+12>>2]>>0]|0|0)!=133){break}}c[w>>2]=c[(c[w>>2]|0)+12>>2];c[v>>2]=d[c[w>>2]>>0]|0;c[x>>2]=-1;c[A>>2]=22120}}while(0);do{if((c[v>>2]|0)==97|(c[v>>2]|0)==133|(c[v>>2]|0)==132){c[p>>2]=lw(c[u>>2]|0,c[C>>2]|0)|0;if((c[p>>2]|0)==0){z=35}else{if((c[(c[w>>2]|0)+4>>2]&1024|0)!=0){g=c[p>>2]|0;j=c[(c[w>>2]|0)+8>>2]|0;f=c[x>>2]|0;f=nL(j|0,((j|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;_d(g,f,D)}else{f=c[u>>2]|0;g=c[(c[w>>2]|0)+8>>2]|0;c[B>>2]=c[A>>2];c[B+4>>2]=g;c[y>>2]=cf(f,8800,B)|0;if((c[y>>2]|0)==0){z=35;break}Qf(c[p>>2]|0,-1,c[y>>2]|0,1,39)}if((c[v>>2]|0)==132|(c[v>>2]|0)==133){if((d[s>>0]|0|0)==98){mw(c[p>>2]|0,99,1)}else{z=18}}else{z=18}if((z|0)==18){mw(c[p>>2]|0,a[s>>0]|0,1)}if((b[(c[p>>2]|0)+28>>1]&12|0)!=0){f=(c[p>>2]|0)+28|0;b[f>>1]=(e[f>>1]|0)&-3}if((d[q>>0]|0|0)!=1){c[r>>2]=sr(c[p>>2]|0,d[q>>0]|0)|0;z=34}else{z=34}}}else{if((c[v>>2]|0)==157){f=0==(dw(c[u>>2]|0,c[(c[w>>2]|0)+12>>2]|0,a[q>>0]|0,a[s>>0]|0,p)|0);if(!(f&(c[p>>2]|0)!=0)){z=34;break}nw(c[p>>2]|0)|0;f=(c[p>>2]|0)+16|0;u=c[p>>2]|0;if((c[f>>2]|0)==0?(c[f+4>>2]|0)==-2147483648:0){f=u+28|0;b[f>>1]=(e[f>>1]|0)&-5;f=(c[p>>2]|0)+28|0;b[f>>1]=e[f>>1]|0|8;h[(c[p>>2]|0)+8>>3]=-9223372036854776000.0}else{g=u+16|0;g=$K(0,0,c[g>>2]|0,c[g+4>>2]|0)|0;f=(c[p>>2]|0)+16|0;c[f>>2]=g;c[f+4>>2]=D}h[(c[p>>2]|0)+8>>3]=-+h[(c[p>>2]|0)+8>>3];mw(c[p>>2]|0,a[s>>0]|0,a[q>>0]|0);z=34;break}else{if((c[v>>2]|0)==101){c[p>>2]=lw(c[u>>2]|0,c[C>>2]|0)|0;if((c[p>>2]|0)==0){z=35;break}else{z=34;break}}if((c[v>>2]|0)!=134){z=34;break}c[p>>2]=lw(c[u>>2]|0,c[C>>2]|0)|0;if((c[p>>2]|0)==0){z=35;break}c[y>>2]=(c[(c[w>>2]|0)+8>>2]|0)+2;c[E>>2]=(Ub(c[y>>2]|0)|0)-1;f=c[p>>2]|0;z=ow(c[u>>2]|0,c[y>>2]|0,c[E>>2]|0)|0;Yd(f,z,(c[E>>2]|0)/2|0,0,39)|0;z=34;break}}}while(0);if((z|0)==34){c[c[o>>2]>>2]=c[p>>2];c[n>>2]=c[r>>2];f=c[n>>2]|0;i=t;return f|0}else if((z|0)==35){a[(c[u>>2]|0)+64>>0]=1;cc(c[u>>2]|0,c[y>>2]|0);Rf(c[p>>2]|0);c[n>>2]=7;f=c[n>>2]|0;i=t;return f|0}return 0}function lw(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d+4|0;c[e>>2]=a;c[d>>2]=b;a=Pf(c[e>>2]|0)|0;i=d;return a|0}function mw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f;h=f+5|0;g=f+4|0;c[j>>2]=b;a[h>>0]=d;a[g>>0]=e;rw(c[j>>2]|0,a[h>>0]|0,a[g>>0]|0);i=f;return}function nw(d){d=d|0;var f=0,g=0,j=0,k=0.0;f=i;i=i+16|0;g=f;c[g>>2]=d;do{if((b[(c[g>>2]|0)+28>>1]&13|0)==0){j=0==(Pg(c[(c[g>>2]|0)+4>>2]|0,(c[g>>2]|0)+16|0,c[(c[g>>2]|0)+24>>2]|0,a[(c[g>>2]|0)+30>>0]|0)|0);d=c[g>>2]|0;if(j){b[(c[g>>2]|0)+28>>1]=(e[d+28>>1]|0)&-16896|4;break}else{k=+Nd(d);h[(c[g>>2]|0)+8>>3]=k;b[(c[g>>2]|0)+28>>1]=(e[(c[g>>2]|0)+28>>1]|0)&-16896|8;pw(c[g>>2]|0);break}}}while(0);j=(c[g>>2]|0)+28|0;b[j>>1]=(e[j>>1]|0)&-19;i=f;return 0}function ow(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+16|0;k=f;j=f+4|0;g=f+8|0;h=f+12|0;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[g>>2]=$e(c[l>>2]|0,((c[j>>2]|0)/2|0)+1|0)|0;c[j>>2]=(c[j>>2]|0)+ -1;if((c[g>>2]|0)==0){l=c[g>>2]|0;i=f;return l|0}c[h>>2]=0;while(1){e=c[h>>2]|0;if((c[h>>2]|0)>=(c[j>>2]|0)){break}l=((kr(a[(c[k>>2]|0)+e>>0]|0)|0)&255)<<4;l=(l|(kr(a[(c[k>>2]|0)+((c[h>>2]|0)+1)>>0]|0)|0)&255)&255;a[(c[g>>2]|0)+((c[h>>2]|0)/2|0)>>0]=l;c[h>>2]=(c[h>>2]|0)+2}a[(c[g>>2]|0)+((e|0)/2|0)>>0]=0;l=c[g>>2]|0;i=f;return l|0}function pw(a){a=a|0;var d=0,f=0,g=0;d=i;i=i+16|0;f=d;c[f>>2]=a;g=qw(+h[(c[f>>2]|0)+8>>3])|0;a=(c[f>>2]|0)+16|0;c[a>>2]=g;c[a+4>>2]=D;a=(c[f>>2]|0)+16|0;if(!(+h[(c[f>>2]|0)+8>>3]==+((c[a>>2]|0)>>>0)+4294967296.0*+(c[a+4>>2]|0))){i=d;return}g=(c[f>>2]|0)+16|0;a=c[g+4>>2]|0;if(!((a|0)>-2147483648|(a|0)==-2147483648&(c[g>>2]|0)>>>0>0)){i=d;return}g=(c[f>>2]|0)+16|0;a=c[g+4>>2]|0;if(!((a|0)<2147483647|(a|0)==2147483647&(c[g>>2]|0)>>>0<4294967295)){i=d;return}g=(c[f>>2]|0)+28|0;b[g>>1]=e[g>>1]|0|4;i=d;return}function qw(a){a=+a;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;b=d+8|0;e=d;h[e>>3]=a;do{if(+h[e>>3]<=-9223372036854776000.0){e=b;c[e>>2]=0;c[e+4>>2]=-2147483648}else{if(+h[e>>3]>=9223372036854776000.0){e=b;c[e>>2]=-1;c[e+4>>2]=2147483647;break}else{a=+h[e>>3];f=+O(a)>=1.0?a>0.0?(ea(+N(a/4294967296.0),4294967295.0)|0)>>>0:~~+_((a- +(~~a>>>0))/4294967296.0)>>>0:0;e=b;c[e>>2]=~~a>>>0;c[e+4>>2]=f;break}}}while(0);f=b;D=c[f+4>>2]|0;i=d;return c[f>>2]|0}function rw(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;k=i;i=i+16|0;j=k;m=k+5|0;l=k+4|0;c[j>>2]=f;a[m>>0]=g;a[l>>0]=h;if((a[m>>0]|0)==97){if(0==(b[(c[j>>2]|0)+28>>1]&2|0)){if((b[(c[j>>2]|0)+28>>1]&12|0)!=0){sw(c[j>>2]|0,d[l>>0]|0)|0}}f=(c[j>>2]|0)+28|0;b[f>>1]=e[f>>1]&-13;i=k;return}if((a[m>>0]|0)==98){i=k;return}Ze(c[j>>2]|0);if((b[(c[j>>2]|0)+28>>1]&8|0)==0){i=k;return}pw(c[j>>2]|0);i=k;return}function sw(d,f){d=d|0;f=f|0;var g=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+32|0;o=n;j=n+28|0;l=n+8|0;m=n+12|0;g=n+16|0;p=n+20|0;c[l>>2]=d;c[m>>2]=f;c[g>>2]=0;c[p>>2]=e[(c[l>>2]|0)+28>>1]|0;c[n+24>>2]=32;if((ue(c[l>>2]|0,32,0)|0)!=0){c[j>>2]=7;d=c[j>>2]|0;i=n;return d|0}f=c[(c[l>>2]|0)+4>>2]|0;d=c[l>>2]|0;if((c[p>>2]&4|0)!=0){q=d+16|0;p=c[q+4>>2]|0;d=o;c[d>>2]=c[q>>2];c[d+4>>2]=p;yc(32,f,15992,o)|0}else{h[k>>3]=+h[d+8>>3];c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];yc(32,f,16344,o)|0}q=Ub(c[(c[l>>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+24>>2]=q;a[(c[l>>2]|0)+30>>0]=1;q=(c[l>>2]|0)+28|0;b[q>>1]=e[q>>1]|0|514;sr(c[l>>2]|0,c[m>>2]|0)|0;c[j>>2]=c[g>>2];q=c[j>>2]|0;i=n;return q|0}function tw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;j=l+28|0;n=l;h=l+4|0;g=l+8|0;e=l+12|0;o=l+16|0;k=l+20|0;m=l+24|0;c[j>>2]=a;c[n>>2]=b;c[h>>2]=d;c[g>>2]=0;c[o>>2]=Ub(c[n>>2]|0)|0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[j>>2]|0)+20>>2]|0)){f=7;break}a=c[e>>2]|0;c[k>>2]=(c[e>>2]|0)<2?a^1:a;c[m>>2]=c[(c[(c[j>>2]|0)+16>>2]|0)+(c[k>>2]<<4)+12>>2];if((c[h>>2]|0)!=0){if((Dc(c[h>>2]|0,c[(c[(c[j>>2]|0)+16>>2]|0)+(c[k>>2]<<4)>>2]|0)|0)==0){f=5}}else{f=5}if((f|0)==5){f=0;c[g>>2]=zh((c[m>>2]|0)+24|0,c[n>>2]|0,c[o>>2]|0)|0;if((c[g>>2]|0)!=0){f=7;break}}c[e>>2]=(c[e>>2]|0)+1}if((f|0)==7){i=l;return c[g>>2]|0}return 0}function uw(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;h=k;j=k+12|0;f=k+4|0;g=k+8|0;c[f>>2]=b;c[g>>2]=e;if((a[(c[c[f>>2]>>2]|0)+137>>0]|0)==0){if((d[(c[f>>2]|0)+18>>0]|0)==0){if((c[(c[c[f>>2]>>2]|0)+24>>2]&2048|0)==0){if(0==(Tb(c[g>>2]|0,21672,7)|0)){b=c[f>>2]|0;c[h>>2]=c[g>>2];bf(b,24584,h);c[j>>2]=1;b=c[j>>2]|0;i=k;return b|0}}}}c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}function vw(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+48|0;l=n;h=n+36|0;j=n+32|0;k=n+28|0;r=n+24|0;p=n+20|0;s=n+12|0;o=n+8|0;m=n+4|0;q=n+16|0;g=n+40|0;c[j>>2]=d;c[k>>2]=f;c[s>>2]=0;c[m>>2]=c[c[j>>2]>>2];if((Aw(c[j>>2]|0,c[k>>2]|0)|0)!=0){c[h>>2]=1;d=c[h>>2]|0;i=n;return d|0}if((a[(c[k>>2]|0)+44>>0]&16|0)!=0){c[h>>2]=0;d=c[h>>2]|0;i=n;return d|0}if((b[(c[k>>2]|0)+38>>1]|0)>0){c[h>>2]=0;d=c[h>>2]|0;i=n;return d|0}if((b[(c[k>>2]|0)+38>>1]|0)<0){d=c[j>>2]|0;c[l>>2]=c[c[k>>2]>>2];bf(d,22856,l);c[h>>2]=1;d=c[h>>2]|0;i=n;return d|0}c[p>>2]=Bw(c[m>>2]|0,c[(c[k>>2]|0)+12>>2]|0,0)|0;if((c[p>>2]|0)!=0){a[g>>0]=a[(c[m>>2]|0)+242>>0]|0;c[o>>2]=c[(c[j>>2]|0)+68>>2];Cw(c[j>>2]|0,c[(c[p>>2]|0)+32>>2]|0);b[(c[k>>2]|0)+38>>1]=-1;a[(c[m>>2]|0)+242>>0]=0;c[q>>2]=c[(c[m>>2]|0)+276>>2];c[(c[m>>2]|0)+276>>2]=0;c[r>>2]=Dw(c[j>>2]|0,c[p>>2]|0)|0;c[(c[m>>2]|0)+276>>2]=c[q>>2];a[(c[m>>2]|0)+242>>0]=a[g>>0]|0;c[(c[j>>2]|0)+68>>2]=c[o>>2];if((c[r>>2]|0)!=0){b[(c[k>>2]|0)+38>>1]=b[(c[r>>2]|0)+38>>1]|0;c[(c[k>>2]|0)+4>>2]=c[(c[r>>2]|0)+4>>2];b[(c[r>>2]|0)+38>>1]=0;c[(c[r>>2]|0)+4>>2]=0;ac(c[m>>2]|0,c[r>>2]|0);d=(c[(c[k>>2]|0)+68>>2]|0)+78|0;b[d>>1]=e[d>>1]|2}else{b[(c[k>>2]|0)+38>>1]=0;c[s>>2]=(c[s>>2]|0)+1}du(c[m>>2]|0,c[p>>2]|0)}else{c[s>>2]=(c[s>>2]|0)+1}c[h>>2]=c[s>>2];d=c[h>>2]|0;i=n;return d|0}function ww(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=c[(c[g>>2]|0)+60>>2];while(1){if((c[e>>2]|0)==0){b=5;break}if((c[c[e>>2]>>2]|0)==(c[f>>2]|0)){b=5;break}c[e>>2]=c[(c[e>>2]|0)+24>>2]}if((b|0)==5){i=d;return c[e>>2]|0}return 0}function xw(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;b=c[f>>2]|0;if((c[(c[f>>2]|0)+408>>2]|0)!=0){b=c[b+408>>2]|0}c[e>>2]=b;a[(c[e>>2]|0)+21>>0]=1;i=d;return}function yw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d+12|0;h=d;f=d+4|0;e=d+8|0;c[g>>2]=a;c[h>>2]=b;c[e>>2]=0;c[f>>2]=zw(c[h>>2]|0)|0;while(1){if((c[f>>2]|0)==0){break}c[e>>2]=iw(c[c[g>>2]>>2]|0,c[e>>2]|0,c[c[c[f>>2]>>2]>>2]|0)|0;c[f>>2]=c[(c[f>>2]|0)+12>>2]}i=d;return c[e>>2]|0}function zw(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=Ub(c[c[e>>2]>>2]|0)|0;a=zh((c[(c[e>>2]|0)+68>>2]|0)+56|0,c[c[e>>2]>>2]|0,c[d>>2]|0)|0;i=b;return a|0}function Aw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+48|0;o=l;e=l+32|0;n=l+28|0;g=l+24|0;f=l+20|0;p=l+36|0;h=l+8|0;j=l+4|0;m=l+12|0;k=l+16|0;c[n>>2]=b;c[g>>2]=d;c[f>>2]=c[c[n>>2]>>2];if((a[(c[g>>2]|0)+44>>0]&16|0)!=0){if((ww(c[f>>2]|0,c[g>>2]|0)|0)==0){c[p>>2]=c[c[(c[g>>2]|0)+56>>2]>>2];d=(c[f>>2]|0)+300|0;b=c[p>>2]|0;c[h>>2]=zh(d,b,Ub(c[p>>2]|0)|0)|0;if((c[h>>2]|0)!=0){c[k>>2]=0;c[j>>2]=fy(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[(c[c[h>>2]>>2]|0)+8>>2]|0,k)|0;if((c[j>>2]|0)!=0){b=c[n>>2]|0;c[o>>2]=c[k>>2];bf(b,1768,o)}cc(c[f>>2]|0,c[k>>2]|0)}else{c[m>>2]=c[c[(c[g>>2]|0)+56>>2]>>2];b=c[n>>2]|0;c[o>>2]=c[m>>2];bf(b,24464,o);c[j>>2]=1}c[e>>2]=c[j>>2];b=c[e>>2]|0;i=l;return b|0}}c[e>>2]=0;b=c[e>>2]|0;i=l;return b|0}function Bw(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+20|0;k=h;l=h+4|0;m=h+8|0;n=h+12|0;o=h+16|0;c[k>>2]=d;c[l>>2]=f;c[m>>2]=g;if((c[l>>2]|0)==0){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}c[n>>2]=$e(c[k>>2]|0,72)|0;if((c[n>>2]|0)==0){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}d=px(c[k>>2]|0,c[c[l>>2]>>2]|0,c[m>>2]|0)|0;c[c[n>>2]>>2]=d;d=cy(c[k>>2]|0,c[(c[l>>2]|0)+32>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+32>>2]=d;d=hx(c[k>>2]|0,c[(c[l>>2]|0)+36>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+36>>2]=d;d=px(c[k>>2]|0,c[(c[l>>2]|0)+40>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+40>>2]=d;d=hx(c[k>>2]|0,c[(c[l>>2]|0)+44>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+44>>2]=d;d=px(c[k>>2]|0,c[(c[l>>2]|0)+48>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+48>>2]=d;a[(c[n>>2]|0)+4>>0]=a[(c[l>>2]|0)+4>>0]|0;d=Bw(c[k>>2]|0,c[(c[l>>2]|0)+52>>2]|0,c[m>>2]|0)|0;c[o>>2]=d;c[(c[n>>2]|0)+52>>2]=d;if((c[o>>2]|0)!=0){c[(c[o>>2]|0)+56>>2]=c[n>>2]}c[(c[n>>2]|0)+56>>2]=0;o=hx(c[k>>2]|0,c[(c[l>>2]|0)+60>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+60>>2]=o;o=hx(c[k>>2]|0,c[(c[l>>2]|0)+64>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+64>>2]=o;c[(c[n>>2]|0)+8>>2]=0;c[(c[n>>2]|0)+12>>2]=0;b[(c[n>>2]|0)+6>>1]=(e[(c[l>>2]|0)+6>>1]|0)&-9;c[(c[n>>2]|0)+16>>2]=-1;c[(c[n>>2]|0)+20>>2]=-1;o=(c[l>>2]|0)+24|0;f=c[o+4>>2]|0;d=(c[n>>2]|0)+24|0;c[d>>2]=c[o>>2];c[d+4>>2]=f;d=dy(c[k>>2]|0,c[(c[l>>2]|0)+68>>2]|0)|0;c[(c[n>>2]|0)+68>>2]=d;c[j>>2]=c[n>>2];d=c[j>>2]|0;i=h;return d|0}function Cw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;h=d;g=d+4|0;f=d+8|0;c[e>>2]=a;c[h>>2]=b;if((c[h>>2]|0)==0){i=d;return}c[g>>2]=0;c[f>>2]=(c[h>>2]|0)+8;while(1){if((c[g>>2]|0)>=(c[c[h>>2]>>2]|0)){b=8;break}if((c[(c[f>>2]|0)+40>>2]|0)>=0){b=8;break}b=(c[e>>2]|0)+68|0;a=c[b>>2]|0;c[b>>2]=a+1;c[(c[f>>2]|0)+40>>2]=a;if((c[(c[f>>2]|0)+20>>2]|0)!=0){Cw(c[e>>2]|0,c[(c[(c[f>>2]|0)+20>>2]|0)+32>>2]|0)}c[g>>2]=(c[g>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+72}if((b|0)==8){i=d;return}}function Dw(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;j=f;k=f+4|0;h=f+8|0;l=f+12|0;m=f+16|0;c[j>>2]=d;c[k>>2]=e;c[l>>2]=c[c[j>>2]>>2];c[m>>2]=c[(c[l>>2]|0)+24>>2];d=(c[l>>2]|0)+24|0;c[d>>2]=c[d>>2]&-33;d=(c[l>>2]|0)+24|0;c[d>>2]=c[d>>2]|64;Ew(c[j>>2]|0,c[k>>2]|0,0);if((c[(c[j>>2]|0)+64>>2]|0)!=0){c[g>>2]=0;d=c[g>>2]|0;i=f;return d|0}while(1){if((c[(c[k>>2]|0)+52>>2]|0)==0){break}c[k>>2]=c[(c[k>>2]|0)+52>>2]}c[(c[l>>2]|0)+24>>2]=c[m>>2];c[h>>2]=ve(c[l>>2]|0,76)|0;if((c[h>>2]|0)==0){c[g>>2]=0;d=c[g>>2]|0;i=f;return d|0}b[(c[h>>2]|0)+40>>1]=1;c[c[h>>2]>>2]=0;b[(c[h>>2]|0)+28>>1]=200;Fw(c[j>>2]|0,c[c[k>>2]>>2]|0,(c[h>>2]|0)+38|0,(c[h>>2]|0)+4|0)|0;Gw(c[j>>2]|0,c[h>>2]|0,c[k>>2]|0);b[(c[h>>2]|0)+36>>1]=-1;if((a[(c[l>>2]|0)+64>>0]|0)!=0){ac(c[l>>2]|0,c[h>>2]|0);c[g>>2]=0;d=c[g>>2]|0;i=f;return d|0}else{c[g>>2]=c[h>>2];d=c[g>>2]|0;i=f;return d|0}return 0}function Ew(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h;l=h+4|0;m=h+8|0;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;if((c[k>>2]|0)==0){i=h;return}c[m>>2]=c[c[j>>2]>>2];if((a[(c[m>>2]|0)+64>>0]|0)!=0){i=h;return}if((b[(c[k>>2]|0)+6>>1]&32|0)!=0){i=h;return}Rw(c[j>>2]|0,c[k>>2]|0);if((c[(c[j>>2]|0)+64>>2]|0)!=0){i=h;return}if((d[(c[m>>2]|0)+64>>0]|0)!=0){i=h;return}Sw(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0);if((c[(c[j>>2]|0)+64>>2]|0)!=0){i=h;return}if((d[(c[m>>2]|0)+64>>0]|0)!=0){i=h;return}Tw(c[j>>2]|0,c[k>>2]|0);i=h;return}function Fw(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;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;j=i;i=i+96|0;v=j;q=j+80|0;F=j+76|0;z=j+72|0;m=j+68|0;l=j+64|0;n=j+60|0;p=j+56|0;o=j+52|0;u=j+48|0;k=j+84|0;C=j+20|0;B=j+16|0;A=j+8|0;s=j+12|0;t=j+40|0;r=j+24|0;w=j+28|0;x=j+32|0;E=j+36|0;D=j+44|0;c[F>>2]=e;c[z>>2]=f;c[m>>2]=g;c[l>>2]=h;c[n>>2]=c[c[F>>2]>>2];if((c[z>>2]|0)!=0){c[B>>2]=c[c[z>>2]>>2];c[k>>2]=ve(c[n>>2]|0,(c[B>>2]|0)*24|0)|0}else{c[B>>2]=0;c[k>>2]=0}b[c[m>>2]>>1]=c[B>>2];c[c[l>>2]>>2]=c[k>>2];c[p>>2]=0;c[C>>2]=c[k>>2];while(1){if((c[p>>2]|0)>=(c[B>>2]|0)){break}c[A>>2]=Pw(c[(c[(c[z>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;F=c[(c[(c[z>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)+4>>2]|0;c[s>>2]=F;do{if((F|0)!=0){c[s>>2]=pe(c[n>>2]|0,c[s>>2]|0)|0}else{c[r>>2]=c[A>>2];while(1){h=c[r>>2]|0;if((d[c[r>>2]>>0]|0)!=122){break}c[r>>2]=c[h+16>>2]}if((d[h>>0]|0)==154){if((c[(c[r>>2]|0)+44>>2]|0)!=0){c[x>>2]=b[(c[r>>2]|0)+32>>1]|0;c[w>>2]=c[(c[r>>2]|0)+44>>2];if((c[x>>2]|0)<0){c[x>>2]=b[(c[w>>2]|0)+36>>1]|0}h=c[n>>2]|0;if((c[x>>2]|0)>=0){g=c[(c[(c[w>>2]|0)+4>>2]|0)+((c[x>>2]|0)*24|0)>>2]|0}else{g=8848}c[v>>2]=g;c[s>>2]=cf(h,1768,v)|0;break}}h=c[n>>2]|0;if((d[c[r>>2]>>0]|0)==27){c[v>>2]=c[(c[r>>2]|0)+8>>2];c[s>>2]=cf(h,1768,v)|0;break}else{c[v>>2]=c[(c[(c[z>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)+8>>2];c[s>>2]=cf(h,1768,v)|0;break}}}while(0);if((a[(c[n>>2]|0)+64>>0]|0)!=0){y=22;break}c[t>>2]=Ub(c[s>>2]|0)|0;c[u>>2]=0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[p>>2]|0)){break}if((Dc(c[(c[k>>2]|0)+((c[o>>2]|0)*24|0)>>2]|0,c[s>>2]|0)|0)==0){c[D>>2]=(c[t>>2]|0)-1;while(1){if((c[D>>2]|0)<=1){break}if((a[136+(d[(c[s>>2]|0)+(c[D>>2]|0)>>0]|0)>>0]&4|0)==0){break}c[D>>2]=(c[D>>2]|0)+ -1}if((c[D>>2]|0)>=0){if((a[(c[s>>2]|0)+(c[D>>2]|0)>>0]|0)==58){c[t>>2]=c[D>>2]}}a[(c[s>>2]|0)+(c[t>>2]|0)>>0]=0;F=c[n>>2]|0;f=c[s>>2]|0;e=(c[u>>2]|0)+1|0;c[u>>2]=e;c[v>>2]=f;c[v+4>>2]=e;c[E>>2]=cf(F,22952,v)|0;cc(c[n>>2]|0,c[s>>2]|0);c[s>>2]=c[E>>2];c[o>>2]=-1;if((c[s>>2]|0)==0){break}}c[o>>2]=(c[o>>2]|0)+1}c[c[C>>2]>>2]=c[s>>2];c[p>>2]=(c[p>>2]|0)+1;c[C>>2]=(c[C>>2]|0)+24}if((y|0)==22){cc(c[n>>2]|0,c[s>>2]|0)}if((a[(c[n>>2]|0)+64>>0]|0)==0){c[q>>2]=0;F=c[q>>2]|0;i=j;return F|0}c[o>>2]=0;while(1){r=c[n>>2]|0;if((c[o>>2]|0)>=(c[p>>2]|0)){break}cc(r,c[(c[k>>2]|0)+((c[o>>2]|0)*24|0)>>2]|0);c[o>>2]=(c[o>>2]|0)+1}cc(r,c[k>>2]|0);c[c[l>>2]>>2]=0;b[c[m>>2]>>1]=0;c[q>>2]=7;F=c[q>>2]|0;i=j;return F|0}function Gw(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;o=i;i=i+80|0;l=o+76|0;k=o+72|0;t=o+68|0;r=o+64|0;s=o+32|0;h=o+24|0;n=o+16|0;q=o+12|0;m=o+8|0;p=o+20|0;j=o;c[l>>2]=e;c[k>>2]=f;c[t>>2]=g;c[r>>2]=c[c[l>>2]>>2];e=j;c[e>>2]=0;c[e+4>>2]=0;if((a[(c[r>>2]|0)+64>>0]|0)!=0){i=o;return}c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;c[s+24>>2]=0;c[s+28>>2]=0;c[s+4>>2]=c[(c[t>>2]|0)+32>>2];c[p>>2]=c[(c[c[t>>2]>>2]|0)+4>>2];c[q>>2]=0;c[h>>2]=c[(c[k>>2]|0)+4>>2];while(1){if((c[q>>2]|0)>=(b[(c[k>>2]|0)+38>>1]|0)){break}c[m>>2]=c[(c[p>>2]|0)+((c[q>>2]|0)*20|0)>>2];f=c[r>>2]|0;f=pe(f,Hw(s,c[m>>2]|0,(c[h>>2]|0)+22|0)|0)|0;c[(c[h>>2]|0)+12>>2]=f;f=j;f=dL(c[f>>2]|0,c[f+4>>2]|0,d[(c[h>>2]|0)+22>>0]|0,0)|0;e=j;c[e>>2]=f;c[e+4>>2]=D;e=Iw(c[m>>2]|0)|0;a[(c[h>>2]|0)+21>>0]=e;if((a[(c[h>>2]|0)+21>>0]|0)==0){a[(c[h>>2]|0)+21>>0]=98}c[n>>2]=Jw(c[l>>2]|0,c[m>>2]|0)|0;if((c[n>>2]|0)!=0){e=pe(c[r>>2]|0,c[c[n>>2]>>2]|0)|0;c[(c[h>>2]|0)+16>>2]=e}c[q>>2]=(c[q>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+24}e=j;e=nL(c[e>>2]|0,c[e+4>>2]|0,4,0)|0;e=Kw(e,D)|0;b[(c[k>>2]|0)+42>>1]=e;i=o;return}function Hw(e,f,g){e=e|0;f=f|0;g=g|0;var h=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;v=i;i=i+128|0;u=v+120|0;n=v+116|0;t=v+112|0;r=v+108|0;p=v+104|0;j=v+100|0;o=v+124|0;h=v+96|0;q=v+92|0;k=v+84|0;s=v+80|0;m=v+48|0;l=v+40|0;y=v+8|0;w=v;x=v+88|0;c[n>>2]=e;c[t>>2]=f;c[r>>2]=g;c[p>>2]=0;a[o>>0]=1;if((c[t>>2]|0)!=0){if((c[(c[n>>2]|0)+4>>2]|0)!=0){g=d[c[t>>2]>>0]|0;do{if((g|0)==154|(g|0)==156){c[h>>2]=0;c[q>>2]=0;c[k>>2]=b[(c[t>>2]|0)+32>>1]|0;while(1){if((c[n>>2]|0)==0){break}if(!((c[h>>2]|0)!=0^1)){break}c[s>>2]=c[(c[n>>2]|0)+4>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[c[s>>2]>>2]|0)){break}if((c[(c[s>>2]|0)+8+((c[j>>2]|0)*72|0)+40>>2]|0)==(c[(c[t>>2]|0)+28>>2]|0)){break}c[j>>2]=(c[j>>2]|0)+1}if((c[j>>2]|0)<(c[c[s>>2]>>2]|0)){c[h>>2]=c[(c[s>>2]|0)+8+((c[j>>2]|0)*72|0)+16>>2];c[q>>2]=c[(c[s>>2]|0)+8+((c[j>>2]|0)*72|0)+20>>2];continue}else{c[n>>2]=c[(c[n>>2]|0)+16>>2];continue}}if((c[h>>2]|0)!=0){if((c[q>>2]|0)!=0){if((c[k>>2]|0)<0){break}if((c[k>>2]|0)>=(c[c[c[q>>2]>>2]>>2]|0)){break}c[l>>2]=c[(c[(c[c[q>>2]>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)>>2];c[m+4>>2]=c[(c[q>>2]|0)+32>>2];c[m+16>>2]=c[n>>2];c[m>>2]=c[c[n>>2]>>2];c[p>>2]=Hw(m,c[l>>2]|0,o)|0;break}if((c[(c[h>>2]|0)+68>>2]|0)!=0){if((c[k>>2]|0)<0){c[k>>2]=b[(c[h>>2]|0)+36>>1]|0}if((c[k>>2]|0)<0){c[p>>2]=22944;break}else{c[p>>2]=c[(c[(c[h>>2]|0)+4>>2]|0)+((c[k>>2]|0)*24|0)+12>>2];a[o>>0]=a[(c[(c[h>>2]|0)+4>>2]|0)+((c[k>>2]|0)*24|0)+22>>0]|0;break}}}}else if((g|0)==119){c[w>>2]=c[(c[t>>2]|0)+20>>2];c[x>>2]=c[c[(c[c[w>>2]>>2]|0)+4>>2]>>2];c[y+4>>2]=c[(c[w>>2]|0)+32>>2];c[y+16>>2]=c[n>>2];c[y>>2]=c[c[n>>2]>>2];c[p>>2]=Hw(y,c[x>>2]|0,o)|0}}while(0);if((c[r>>2]|0)!=0){a[c[r>>2]>>0]=a[o>>0]|0}c[u>>2]=c[p>>2];e=c[u>>2]|0;i=v;return e|0}}c[u>>2]=0;e=c[u>>2]|0;i=v;return e|0}function Iw(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f;k=f+4|0;j=f+8|0;c[h>>2]=e;c[h>>2]=Pw(c[h>>2]|0)|0;if((c[(c[h>>2]|0)+4>>2]&512|0)!=0){a[g>>0]=98;k=a[g>>0]|0;i=f;return k|0}c[k>>2]=d[c[h>>2]>>0]|0;if((c[k>>2]|0)==119){a[g>>0]=Iw(c[c[(c[c[(c[h>>2]|0)+20>>2]>>2]|0)+4>>2]>>2]|0)|0;k=a[g>>0]|0;i=f;return k|0}if((c[k>>2]|0)==38){a[g>>0]=Qw(c[(c[h>>2]|0)+8>>2]|0,0)|0;k=a[g>>0]|0;i=f;return k|0}if((c[k>>2]|0)==156|(c[k>>2]|0)==154|(c[k>>2]|0)==159){if((c[(c[h>>2]|0)+44>>2]|0)!=0){c[j>>2]=b[(c[h>>2]|0)+32>>1]|0;if((c[j>>2]|0)<0){a[g>>0]=100;k=a[g>>0]|0;i=f;return k|0}else{a[g>>0]=a[(c[(c[(c[h>>2]|0)+44>>2]|0)+4>>2]|0)+((c[j>>2]|0)*24|0)+21>>0]|0;k=a[g>>0]|0;i=f;return k|0}}}a[g>>0]=a[(c[h>>2]|0)+1>>0]|0;k=a[g>>0]|0;i=f;return k|0}function Jw(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;k=j+28|0;q=j;n=j+4|0;m=j+8|0;l=j+12|0;g=j+16|0;o=j+20|0;p=j+24|0;c[k>>2]=e;c[q>>2]=f;c[n>>2]=c[c[k>>2]>>2];c[m>>2]=0;c[l>>2]=c[q>>2];while(1){if((c[l>>2]|0)==0){break}c[g>>2]=d[c[l>>2]>>0]|0;if((c[(c[l>>2]|0)+4>>2]&512|0)!=0){break}if((c[g>>2]|0)==38|(c[g>>2]|0)==158){c[l>>2]=c[(c[l>>2]|0)+12>>2];continue}if((c[g>>2]|0)==95){h=9;break}if((c[g>>2]|0)==159){if((d[(c[l>>2]|0)+38>>0]|0)==95){h=9;break}}if((c[(c[l>>2]|0)+44>>2]|0)!=0){if((c[g>>2]|0)==156|(c[g>>2]|0)==154|(c[g>>2]|0)==159|(c[g>>2]|0)==62){h=12;break}}if((c[(c[l>>2]|0)+4>>2]&256|0)==0){break}if((c[(c[l>>2]|0)+12>>2]|0)!=0){if((c[(c[(c[l>>2]|0)+12>>2]|0)+4>>2]&256|0)!=0){c[l>>2]=c[(c[l>>2]|0)+12>>2];continue}}c[l>>2]=c[(c[l>>2]|0)+16>>2]}if((h|0)==9){c[m>>2]=Lw(c[k>>2]|0,a[(c[(c[(c[n>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,0,c[(c[l>>2]|0)+8>>2]|0)|0}else if((h|0)==12){c[o>>2]=b[(c[l>>2]|0)+32>>1]|0;if((c[o>>2]|0)>=0){c[p>>2]=c[(c[(c[(c[l>>2]|0)+44>>2]|0)+4>>2]|0)+((c[o>>2]|0)*24|0)+16>>2];c[m>>2]=xh(c[n>>2]|0,a[(c[(c[(c[n>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[p>>2]|0,0)|0}}if((Mw(c[k>>2]|0,c[m>>2]|0)|0)==0){q=c[m>>2]|0;i=j;return q|0}c[m>>2]=0;q=c[m>>2]|0;i=j;return q|0}function Kw(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+10|0;g=e;h=e+8|0;j=g;c[j>>2]=a;c[j+4>>2]=d;b[h>>1]=40;a=g;d=c[a+4>>2]|0;a:do{if(d>>>0<0|(d|0)==0&(c[a>>2]|0)>>>0<8){j=g;a=c[j+4>>2]|0;if(a>>>0<0|(a|0)==0&(c[j>>2]|0)>>>0<2){b[f>>1]=0;j=b[f>>1]|0;i=e;return j|0}else{while(1){j=g;a=c[j+4>>2]|0;if(!(a>>>0<0|(a|0)==0&(c[j>>2]|0)>>>0<8)){break a}b[h>>1]=(b[h>>1]|0)-10;a=g;a=bL(c[a>>2]|0,c[a+4>>2]|0,1)|0;j=g;c[j>>2]=a;c[j+4>>2]=D}}}else{while(1){j=g;a=c[j+4>>2]|0;if(!(a>>>0>0|(a|0)==0&(c[j>>2]|0)>>>0>255)){break}b[h>>1]=(b[h>>1]|0)+40;a=g;a=eL(c[a>>2]|0,c[a+4>>2]|0,4)|0;j=g;c[j>>2]=a;c[j+4>>2]=D}while(1){j=g;a=c[j+4>>2]|0;if(!(a>>>0>0|(a|0)==0&(c[j>>2]|0)>>>0>15)){break a}b[h>>1]=(b[h>>1]|0)+10;a=g;a=eL(c[a>>2]|0,c[a+4>>2]|0,1)|0;j=g;c[j>>2]=a;c[j+4>>2]=D}}}while(0);b[f>>1]=(b[22888+((c[g>>2]&7)<<1)>>1]|0)+(b[h>>1]|0)-10;j=b[f>>1]|0;i=e;return j|0}function Lw(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+32|0;h=k;m=k+20|0;p=k+24|0;q=k+8|0;n=k+12|0;o=k+16|0;l=k+4|0;c[m>>2]=b;a[p>>0]=e;c[q>>2]=f;c[n>>2]=g;c[l>>2]=c[c[m>>2]>>2];c[o>>2]=c[q>>2];if((c[o>>2]|0)==0){c[o>>2]=xh(c[l>>2]|0,a[p>>0]|0,c[n>>2]|0,0)|0}if((c[o>>2]|0)!=0){if((c[(c[o>>2]|0)+12>>2]|0)==0){j=5}}else{j=5}if((j|0)==5){Nw(c[l>>2]|0,d[p>>0]|0,c[n>>2]|0);c[o>>2]=xh(c[l>>2]|0,a[p>>0]|0,c[n>>2]|0,0)|0}if((c[o>>2]|0)!=0){if((c[(c[o>>2]|0)+12>>2]|0)==0){if((Ow(c[l>>2]|0,c[o>>2]|0)|0)!=0){c[o>>2]=0}}}if((c[o>>2]|0)!=0){q=c[o>>2]|0;i=k;return q|0}q=c[m>>2]|0;c[h>>2]=c[n>>2];bf(q,22904,h);q=c[o>>2]|0;i=k;return q|0}function Mw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;l=e;j=e+4|0;h=e+8|0;k=e+12|0;g=e+16|0;c[l>>2]=b;c[j>>2]=d;if((c[j>>2]|0)!=0){c[h>>2]=c[c[j>>2]>>2];c[k>>2]=c[c[l>>2]>>2];c[g>>2]=Lw(c[l>>2]|0,a[(c[(c[(c[k>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[j>>2]|0,c[h>>2]|0)|0;if((c[g>>2]|0)==0){c[f>>2]=1;b=c[f>>2]|0;i=e;return b|0}}c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}function Nw(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;n=g;k=g+4|0;m=g+8|0;l=g+12|0;j=g+16|0;c[h>>2]=b;c[n>>2]=e;c[k>>2]=f;do{if((c[(c[h>>2]|0)+212>>2]|0)!=0){c[m>>2]=pe(c[h>>2]|0,c[k>>2]|0)|0;if((c[m>>2]|0)!=0){Bb[c[(c[h>>2]|0)+212>>2]&3](c[(c[h>>2]|0)+220>>2]|0,c[h>>2]|0,c[n>>2]|0,c[m>>2]|0);cc(c[h>>2]|0,c[m>>2]|0);break}else{i=g;return}}}while(0);if((c[(c[h>>2]|0)+216>>2]|0)==0){i=g;return}c[j>>2]=Pf(c[h>>2]|0)|0;Qf(c[j>>2]|0,-1,c[k>>2]|0,1,0);c[l>>2]=Rd(c[j>>2]|0,((a[1480]|0)==0?3:2)&255)|0;if((c[l>>2]|0)!=0){Bb[c[(c[h>>2]|0)+216>>2]&3](c[(c[h>>2]|0)+220>>2]|0,c[h>>2]|0,d[(c[(c[(c[h>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[l>>2]|0)}Rf(c[j>>2]|0);i=g;return}function Ow(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;e=f+20|0;j=f;g=f+4|0;h=f+8|0;l=f+12|0;k=f+16|0;c[j>>2]=b;c[g>>2]=d;c[l>>2]=c[c[g>>2]>>2];c[k>>2]=0;while(1){if((c[k>>2]|0)>=3){d=6;break}c[h>>2]=xh(c[j>>2]|0,a[22936+(c[k>>2]|0)>>0]|0,c[l>>2]|0,0)|0;if((c[(c[h>>2]|0)+12>>2]|0)!=0){d=4;break}c[k>>2]=(c[k>>2]|0)+1}if((d|0)==4){b=c[g>>2]|0;l=c[h>>2]|0;c[b+0>>2]=c[l+0>>2];c[b+4>>2]=c[l+4>>2];c[b+8>>2]=c[l+8>>2];c[b+12>>2]=c[l+12>>2];c[b+16>>2]=c[l+16>>2];c[(c[g>>2]|0)+16>>2]=0;c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}else if((d|0)==6){c[e>>2]=1;b=c[e>>2]|0;i=f;return b|0}return 0}function Pw(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;c[d>>2]=a;while(1){if((c[d>>2]|0)!=0){e=(c[(c[d>>2]|0)+4>>2]&4096|0)!=0}else{e=0}a=c[d>>2]|0;if(!e){break}e=c[d>>2]|0;if((c[a+4>>2]&262144|0)!=0){c[d>>2]=c[c[(c[e+20>>2]|0)+4>>2]>>2];continue}else{c[d>>2]=c[e+12>>2];continue}}i=b;return a|0}function Qw(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;h=l+21|0;o=l;k=l+4|0;n=l+8|0;j=l+20|0;m=l+12|0;f=l+16|0;c[o>>2]=b;c[k>>2]=e;c[n>>2]=0;a[j>>0]=99;c[m>>2]=0;if((c[o>>2]|0)==0){a[h>>0]=a[j>>0]|0;b=a[h>>0]|0;i=l;return b|0}a:while(1){if((a[c[o>>2]>>0]|0)==0){break}c[n>>2]=(c[n>>2]<<8)+(d[784+(a[c[o>>2]>>0]&255)>>0]|0);c[o>>2]=(c[o>>2]|0)+1;if((c[n>>2]|0)==1667785074){a[j>>0]=97;c[m>>2]=c[o>>2];continue}if((c[n>>2]|0)==1668050786){a[j>>0]=97;continue}if((c[n>>2]|0)==1952807028){a[j>>0]=97;continue}do{if((c[n>>2]|0)==1651273570){if((a[j>>0]|0)!=99){if((a[j>>0]|0)!=101){break}}a[j>>0]=98;if((a[c[o>>2]>>0]|0)!=40){continue a}c[m>>2]=c[o>>2];continue a}}while(0);if((c[n>>2]|0)==1919246700){if((a[j>>0]|0)==99){a[j>>0]=101;continue}}if((c[n>>2]|0)==1718382433){if((a[j>>0]|0)==99){a[j>>0]=101;continue}}if((c[n>>2]|0)==1685026146){if((a[j>>0]|0)==99){a[j>>0]=101;continue}}if((c[n>>2]&16777215|0)==6909556){g=25;break}}if((g|0)==25){a[j>>0]=100}b:do{if((c[k>>2]|0)!=0){a[c[k>>2]>>0]=1;if((a[j>>0]|0)<=98){if((c[m>>2]|0)==0){a[c[k>>2]>>0]=5;break}while(1){if((a[c[m>>2]>>0]|0)==0){break b}if((a[136+(d[c[m>>2]>>0]|0)>>0]&4|0)!=0){break}c[m>>2]=(c[m>>2]|0)+1}c[f>>2]=0;Wg(c[m>>2]|0,f)|0;b=((c[f>>2]|0)/4|0)+1|0;c[f>>2]=b;c[f>>2]=(c[f>>2]|0)>255?255:b;a[c[k>>2]>>0]=c[f>>2]}}}while(0);a[h>>0]=a[j>>0]|0;b=a[h>>0]|0;i=l;return b|0}function Rw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+48|0;h=e+32|0;f=e;g=e+8|0;c[h>>2]=b;c[f>>2]=d;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[g>>2]=55;c[g+12>>2]=c[h>>2];if((a[(c[h>>2]|0)+22>>0]|0)!=0){c[g+4>>2]=56;Ww(g,c[f>>2]|0)|0}c[g+4>>2]=57;c[g+8>>2]=3;Ww(g,c[f>>2]|0)|0;i=e;return}function Sw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+48|0;j=e+32|0;f=e;h=e+4|0;g=e+8|0;c[j>>2]=a;c[f>>2]=b;c[h>>2]=d;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[g>>2]=58;c[g+4>>2]=59;c[g+12>>2]=c[j>>2];c[g+20>>2]=c[h>>2];Ww(g,c[f>>2]|0)|0;i=e;return}function Tw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+48|0;g=d+32|0;e=d;f=d+8|0;c[g>>2]=a;c[e>>2]=b;c[f+0>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+8>>2]=4;c[f>>2]=55;c[f+12>>2]=c[g>>2];Ww(f,c[e>>2]|0)|0;i=d;return}function Uw(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+32|0;p=l+28|0;o=l;n=l+4|0;g=l+8|0;m=l+12|0;h=l+16|0;k=l+20|0;j=l+24|0;c[p>>2]=d;c[o>>2]=f;if((b[(c[o>>2]|0)+6>>1]&32|0)!=0){i=l;return}d=(c[o>>2]|0)+6|0;b[d>>1]=e[d>>1]|0|32;c[n>>2]=c[(c[p>>2]|0)+12>>2];c[m>>2]=c[(c[o>>2]|0)+32>>2];c[g>>2]=0;c[h>>2]=(c[m>>2]|0)+8;while(1){if((c[g>>2]|0)>=(c[c[m>>2]>>2]|0)){break}c[k>>2]=c[(c[h>>2]|0)+16>>2];if((c[k>>2]|0)!=0){if((a[(c[k>>2]|0)+44>>0]&2|0)!=0){c[j>>2]=c[(c[h>>2]|0)+20>>2];if((c[j>>2]|0)!=0){while(1){if((c[(c[j>>2]|0)+52>>2]|0)==0){break}c[j>>2]=c[(c[j>>2]|0)+52>>2]}Gw(c[n>>2]|0,c[k>>2]|0,c[j>>2]|0)}}}c[g>>2]=(c[g>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+72}i=l;return}function Vw(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function Ww(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;d=e+12|0;g=e;h=e+4|0;f=e+8|0;c[g>>2]=a;c[h>>2]=b;do{if((c[h>>2]|0)!=0){if((c[(c[g>>2]|0)+4>>2]|0)==0){if((c[(c[g>>2]|0)+8>>2]|0)==0){break}}c[f>>2]=0;a=(c[g>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+1;while(1){if((c[h>>2]|0)==0){b=15;break}if((c[(c[g>>2]|0)+4>>2]|0)!=0){c[f>>2]=zb[c[(c[g>>2]|0)+4>>2]&127](c[g>>2]|0,c[h>>2]|0)|0;if((c[f>>2]|0)!=0){b=15;break}}if((Xw(c[g>>2]|0,c[h>>2]|0)|0)!=0){b=11;break}if((Yw(c[g>>2]|0,c[h>>2]|0)|0)!=0){b=11;break}if((c[(c[g>>2]|0)+8>>2]|0)!=0){sb[c[(c[g>>2]|0)+8>>2]&7](c[g>>2]|0,c[h>>2]|0)}c[h>>2]=c[(c[h>>2]|0)+52>>2]}if((b|0)==11){a=(c[g>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+ -1;c[d>>2]=2;a=c[d>>2]|0;i=e;return a|0}else if((b|0)==15){a=(c[g>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+ -1;c[d>>2]=c[f>>2]&2;a=c[d>>2]|0;i=e;return a|0}}}while(0);c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}function Xw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d;g=d+4|0;c[f>>2]=a;c[g>>2]=b;do{if((Zw(c[f>>2]|0,c[c[g>>2]>>2]|0)|0)!=0){c[e>>2]=2}else{if((_w(c[f>>2]|0,c[(c[g>>2]|0)+36>>2]|0)|0)!=0){c[e>>2]=2;break}if((Zw(c[f>>2]|0,c[(c[g>>2]|0)+40>>2]|0)|0)!=0){c[e>>2]=2;break}if((_w(c[f>>2]|0,c[(c[g>>2]|0)+44>>2]|0)|0)!=0){c[e>>2]=2;break}if((Zw(c[f>>2]|0,c[(c[g>>2]|0)+48>>2]|0)|0)!=0){c[e>>2]=2;break}if((_w(c[f>>2]|0,c[(c[g>>2]|0)+60>>2]|0)|0)!=0){c[e>>2]=2;break}if((_w(c[f>>2]|0,c[(c[g>>2]|0)+64>>2]|0)|0)!=0){c[e>>2]=2;break}else{c[e>>2]=0;break}}}while(0);i=d;return c[e>>2]|0}function Yw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;d=e+20|0;f=e;k=e+4|0;j=e+8|0;h=e+12|0;g=e+16|0;c[f>>2]=a;c[k>>2]=b;c[j>>2]=c[(c[k>>2]|0)+32>>2];a:do{if((c[j>>2]|0)!=0){c[h>>2]=c[c[j>>2]>>2];c[g>>2]=(c[j>>2]|0)+8;while(1){if((c[h>>2]|0)<=0){break a}if((Ww(c[f>>2]|0,c[(c[g>>2]|0)+20>>2]|0)|0)!=0){break}c[h>>2]=(c[h>>2]|0)+ -1;c[g>>2]=(c[g>>2]|0)+72}c[d>>2]=2;k=c[d>>2]|0;i=e;return k|0}}while(0);c[d>>2]=0;k=c[d>>2]|0;i=e;return k|0}function Zw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;d=e+16|0;f=e;j=e+4|0;h=e+8|0;g=e+12|0;c[f>>2]=a;c[j>>2]=b;a:do{if((c[j>>2]|0)!=0){c[h>>2]=c[c[j>>2]>>2];c[g>>2]=c[(c[j>>2]|0)+4>>2];while(1){if((c[h>>2]|0)<=0){break a}if((_w(c[f>>2]|0,c[c[g>>2]>>2]|0)|0)!=0){break}c[h>>2]=(c[h>>2]|0)+ -1;c[g>>2]=(c[g>>2]|0)+20}c[d>>2]=2;a=c[d>>2]|0;i=e;return a|0}}while(0);c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}function _w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;h=d;f=d+4|0;g=d+8|0;c[h>>2]=a;c[f>>2]=b;a:do{if((c[f>>2]|0)==0){c[e>>2]=0}else{c[g>>2]=zb[c[c[h>>2]>>2]&127](c[h>>2]|0,c[f>>2]|0)|0;do{if((c[g>>2]|0)==0){if((c[(c[f>>2]|0)+4>>2]&16384|0)==0){if((_w(c[h>>2]|0,c[(c[f>>2]|0)+12>>2]|0)|0)!=0){c[e>>2]=2;break a}if((_w(c[h>>2]|0,c[(c[f>>2]|0)+16>>2]|0)|0)!=0){c[e>>2]=2;break a}h=c[h>>2]|0;b=(c[f>>2]|0)+20|0;if((c[(c[f>>2]|0)+4>>2]&2048|0)!=0){if((Ww(h,c[b>>2]|0)|0)==0){break}c[e>>2]=2;break a}else{if((Zw(h,c[b>>2]|0)|0)==0){break}c[e>>2]=2;break a}}}}while(0);c[e>>2]=c[g>>2]&2}}while(0);i=d;return c[e>>2]|0}function $w(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;h=i;i=i+96|0;p=h;g=h+80|0;t=h+76|0;l=h+72|0;m=h+68|0;k=h+64|0;E=h+60|0;C=h+56|0;B=h+52|0;D=h+48|0;u=h+24|0;y=h+84|0;j=h+8|0;w=h+12|0;q=h+16|0;s=h+44|0;o=h+28|0;n=h+32|0;r=h+36|0;x=h+88|0;z=h+40|0;A=h+20|0;c[t>>2]=e;c[l>>2]=f;c[m>>2]=c[(c[t>>2]|0)+20>>2];c[k>>2]=c[c[m>>2]>>2];if((c[(c[l>>2]|0)+4>>2]&4|0)!=0){c[g>>2]=1;e=c[g>>2]|0;i=h;return e|0}e=(c[l>>2]|0)+4|0;c[e>>2]=c[e>>2]|4;switch(d[c[l>>2]>>0]|0|0){case 27:{c[g>>2]=xx(c[k>>2]|0,0,0,c[(c[l>>2]|0)+8>>2]|0,c[m>>2]|0,c[l>>2]|0)|0;e=c[g>>2]|0;i=h;return e|0};case 153:{c[u>>2]=c[(c[l>>2]|0)+20>>2];if((c[u>>2]|0)!=0){A=c[c[u>>2]>>2]|0}else{A=0}c[y>>2]=A;c[j>>2]=0;c[w>>2]=0;c[q>>2]=0;a[x>>0]=a[(c[(c[(c[c[k>>2]>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;yx(c[k>>2]|0,c[m>>2]|0,23328);c[n>>2]=c[(c[l>>2]|0)+8>>2];c[o>>2]=Ub(c[n>>2]|0)|0;c[r>>2]=rg(c[c[k>>2]>>2]|0,c[n>>2]|0,c[o>>2]|0,c[y>>2]|0,a[x>>0]|0,0)|0;do{if((c[r>>2]|0)==0){c[r>>2]=rg(c[c[k>>2]>>2]|0,c[n>>2]|0,c[o>>2]|0,-2,a[x>>0]|0,0)|0;if((c[r>>2]|0)==0){c[j>>2]=1;break}else{c[w>>2]=1;break}}else{c[q>>2]=(c[(c[r>>2]|0)+12>>2]|0)==0&1;if((b[(c[r>>2]|0)+2>>1]&1024|0)!=0){e=(c[l>>2]|0)+4|0;c[e>>2]=c[e>>2]|266240;if((c[y>>2]|0)!=2){c[(c[l>>2]|0)+28>>2]=62;break}e=zx(c[(c[(c[u>>2]|0)+4>>2]|0)+20>>2]|0)|0;c[(c[l>>2]|0)+28>>2]=e;if((c[(c[l>>2]|0)+28>>2]|0)<0){bf(c[k>>2]|0,23344,p);e=(c[m>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1}}}}while(0);do{if((c[r>>2]|0)!=0){c[s>>2]=Lv(c[k>>2]|0,31,0,c[(c[r>>2]|0)+24>>2]|0,0)|0;if((c[s>>2]|0)==0){if((b[(c[r>>2]|0)+2>>1]&2048|0)==0){break}e=(c[l>>2]|0)+4|0;c[e>>2]=c[e>>2]|524288;break}if((c[s>>2]|0)==1){e=c[k>>2]|0;c[p>>2]=c[(c[r>>2]|0)+24>>2];bf(e,23416,p);e=(c[m>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1}a[c[l>>2]>>0]=101;c[g>>2]=1;e=c[g>>2]|0;i=h;return e|0}}while(0);if((c[q>>2]|0)!=0){if((a[(c[m>>2]|0)+28>>0]&1|0)==0){e=c[k>>2]|0;f=c[n>>2]|0;c[p>>2]=c[o>>2];c[p+4>>2]=f;bf(e,23456,p);e=(c[m>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1;c[q>>2]=0}else{v=30}}else{v=30}do{if((v|0)==30){if((c[j>>2]|0)!=0){if((d[(c[c[k>>2]>>2]|0)+137>>0]|0|0)==0){e=c[k>>2]|0;f=c[n>>2]|0;c[p>>2]=c[o>>2];c[p+4>>2]=f;bf(e,23496,p);e=(c[m>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1;break}}if((c[w>>2]|0)!=0){e=c[k>>2]|0;f=c[n>>2]|0;c[p>>2]=c[o>>2];c[p+4>>2]=f;bf(e,23520,p);e=(c[m>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1}}}while(0);if((c[q>>2]|0)!=0){e=(c[m>>2]|0)+28|0;a[e>>0]=(d[e>>0]|0)&-2}Zw(c[t>>2]|0,c[u>>2]|0)|0;if((c[q>>2]|0)!=0){c[z>>2]=c[m>>2];a[c[l>>2]>>0]=-101;a[(c[l>>2]|0)+38>>0]=0;while(1){if((c[z>>2]|0)==0){break}if(!((Ax(c[l>>2]|0,c[(c[z>>2]|0)+4>>2]|0)|0)!=0^1)){break}e=(c[l>>2]|0)+38|0;a[e>>0]=(a[e>>0]|0)+1<<24>>24;c[z>>2]=c[(c[z>>2]|0)+16>>2]}if((c[z>>2]|0)!=0){e=(c[z>>2]|0)+28|0;a[e>>0]=d[e>>0]|0|2}e=(c[m>>2]|0)+28|0;a[e>>0]=d[e>>0]|0|1}c[g>>2]=1;e=c[g>>2]|0;i=h;return e|0};case 75:case 20:case 119:{if((c[(c[l>>2]|0)+4>>2]&2048|0)!=0){c[A>>2]=c[(c[m>>2]|0)+20>>2];Bx(c[k>>2]|0,c[m>>2]|0,23568);yx(c[k>>2]|0,c[m>>2]|0,23568);Ww(c[t>>2]|0,c[(c[l>>2]|0)+20>>2]|0)|0;if((c[A>>2]|0)!=(c[(c[m>>2]|0)+20>>2]|0)){e=(c[l>>2]|0)+4|0;c[e>>2]=c[e>>2]|32}}break};case 135:{Bx(c[k>>2]|0,c[m>>2]|0,23584);yx(c[k>>2]|0,c[m>>2]|0,23584);break};case 122:{c[D>>2]=c[(c[l>>2]|0)+16>>2];if((d[c[D>>2]>>0]|0|0)==27){c[B>>2]=0;c[C>>2]=c[(c[(c[l>>2]|0)+12>>2]|0)+8>>2];c[E>>2]=c[(c[D>>2]|0)+8>>2]}else{c[B>>2]=c[(c[(c[l>>2]|0)+12>>2]|0)+8>>2];c[C>>2]=c[(c[(c[D>>2]|0)+12>>2]|0)+8>>2];c[E>>2]=c[(c[(c[D>>2]|0)+16>>2]|0)+8>>2]}c[g>>2]=xx(c[k>>2]|0,c[B>>2]|0,c[C>>2]|0,c[E>>2]|0,c[m>>2]|0,c[l>>2]|0)|0;e=c[g>>2]|0;i=h;return e|0};default:{}}if((c[(c[k>>2]|0)+64>>2]|0)!=0){j=1}else{j=(d[(c[c[k>>2]>>2]|0)+64>>0]|0|0)!=0}c[g>>2]=j?2:0;e=c[g>>2]|0;i=h;return e|0}function ax(f,g){f=f|0;g=g|0;var h=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;j=i;i=i+112|0;B=j;h=j+100|0;D=j+96|0;n=j+92|0;o=j+88|0;p=j+56|0;r=j+52|0;z=j+48|0;m=j+44|0;s=j+40|0;t=j+104|0;q=j+16|0;C=j+12|0;l=j+4|0;v=j+8|0;x=j+32|0;y=j+20|0;w=j+24|0;k=j+28|0;A=j+36|0;c[D>>2]=f;c[n>>2]=g;if((b[(c[n>>2]|0)+6>>1]&2|0)!=0){c[h>>2]=1;f=c[h>>2]|0;i=j;return f|0}c[o>>2]=c[(c[D>>2]|0)+20>>2];c[m>>2]=c[(c[D>>2]|0)+12>>2];c[l>>2]=c[c[m>>2]>>2];if((b[(c[n>>2]|0)+6>>1]&16|0)==0){Ew(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0);if((c[(c[m>>2]|0)+64>>2]|0)!=0){k=1}else{k=(d[(c[l>>2]|0)+64>>0]|0)!=0}c[h>>2]=k?2:1;f=c[h>>2]|0;i=j;return f|0}c[r>>2]=(c[(c[n>>2]|0)+52>>2]|0)!=0&1;c[z>>2]=0;c[C>>2]=c[n>>2];a:while(1){if((c[n>>2]|0)==0){u=59;break}f=(c[n>>2]|0)+6|0;b[f>>1]=e[f>>1]|2;c[p+0>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16>>2]=0;c[p+20>>2]=0;c[p+24>>2]=0;c[p+28>>2]=0;c[p>>2]=c[m>>2];if((bx(p,c[(c[n>>2]|0)+60>>2]|0)|0)!=0){u=11;break}if((bx(p,c[(c[n>>2]|0)+64>>2]|0)|0)!=0){u=11;break}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[c[(c[n>>2]|0)+32>>2]>>2]|0)){break}c[v>>2]=(c[(c[n>>2]|0)+32>>2]|0)+8+((c[t>>2]|0)*72|0);if((c[(c[v>>2]|0)+20>>2]|0)!=0){c[y>>2]=0;c[w>>2]=c[(c[m>>2]|0)+492>>2];c[x>>2]=c[o>>2];while(1){if((c[x>>2]|0)==0){break}c[y>>2]=(c[y>>2]|0)+(c[(c[x>>2]|0)+20>>2]|0);c[x>>2]=c[(c[x>>2]|0)+16>>2]}if((c[(c[v>>2]|0)+8>>2]|0)!=0){c[(c[m>>2]|0)+492>>2]=c[(c[v>>2]|0)+8>>2]}Sw(c[m>>2]|0,c[(c[v>>2]|0)+20>>2]|0,c[o>>2]|0);c[(c[m>>2]|0)+492>>2]=c[w>>2];if((c[(c[m>>2]|0)+64>>2]|0)!=0){u=22;break a}if((d[(c[l>>2]|0)+64>>0]|0)!=0){u=22;break a}c[x>>2]=c[o>>2];while(1){if((c[x>>2]|0)==0){break}c[y>>2]=(c[y>>2]|0)-(c[(c[x>>2]|0)+20>>2]|0);c[x>>2]=c[(c[x>>2]|0)+16>>2]}f=(c[v>>2]|0)+37|0;a[f>>0]=a[f>>0]&-3|((c[y>>2]|0)!=0&1)<<1&255}c[t>>2]=(c[t>>2]|0)+1}a[p+28>>0]=1;c[p+4>>2]=c[(c[n>>2]|0)+32>>2];c[p+16>>2]=c[o>>2];c[s>>2]=c[c[n>>2]>>2];c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[c[s>>2]>>2]|0)){break}c[k>>2]=c[(c[(c[s>>2]|0)+4>>2]|0)+((c[t>>2]|0)*20|0)>>2];if((bx(p,c[k>>2]|0)|0)!=0){u=31;break a}c[t>>2]=(c[t>>2]|0)+1}c[q>>2]=c[(c[n>>2]|0)+40>>2];if((c[q>>2]|0)!=0){u=35}else{if((a[p+28>>0]&2|0)!=0){u=35}else{f=p+28|0;a[f>>0]=d[f>>0]&-2}}if((u|0)==35){u=0;f=(c[n>>2]|0)+6|0;b[f>>1]=e[f>>1]|4}if((c[(c[n>>2]|0)+44>>2]|0)!=0){if((c[q>>2]|0)==0){u=39;break}}c[p+8>>2]=c[c[n>>2]>>2];if((bx(p,c[(c[n>>2]|0)+44>>2]|0)|0)!=0){u=41;break}if((bx(p,c[(c[n>>2]|0)+36>>2]|0)|0)!=0){u=43;break}c[p+16>>2]=0;f=p+28|0;a[f>>0]=d[f>>0]|1;if((c[r>>2]|0)==0){if((cx(p,c[n>>2]|0,c[(c[n>>2]|0)+48>>2]|0,23008)|0)!=0){u=46;break}}if((a[(c[l>>2]|0)+64>>0]|0)!=0){u=48;break}b:do{if((c[q>>2]|0)!=0){if((cx(p,c[n>>2]|0,c[q>>2]|0,23016)|0)!=0){u=52;break a}if((d[(c[l>>2]|0)+64>>0]|0)!=0){u=52;break a}c[t>>2]=0;c[A>>2]=c[(c[q>>2]|0)+4>>2];while(1){if((c[t>>2]|0)>=(c[c[q>>2]>>2]|0)){break b}if((c[(c[c[A>>2]>>2]|0)+4>>2]&2|0)!=0){u=56;break a}c[t>>2]=(c[t>>2]|0)+1;c[A>>2]=(c[A>>2]|0)+20}}}while(0);c[n>>2]=c[(c[n>>2]|0)+52>>2];c[z>>2]=(c[z>>2]|0)+1}switch(u|0){case 11:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 22:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 31:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 39:{bf(c[m>>2]|0,22960,B);c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 41:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 43:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 46:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 48:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 52:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 56:{bf(c[m>>2]|0,23024,B);c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 59:{if((c[r>>2]|0)!=0){if((dx(c[m>>2]|0,c[C>>2]|0)|0)!=0){c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0}}c[h>>2]=1;f=c[h>>2]|0;i=j;return f|0}}return 0}function bx(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;h=g+40|0;m=g;l=g+4|0;n=g+44|0;j=g+16|0;k=g+8|0;c[m>>2]=b;c[l>>2]=e;if((c[l>>2]|0)==0){c[h>>2]=0;b=c[h>>2]|0;i=g;return b|0}c[k>>2]=c[c[m>>2]>>2];if((wx(c[k>>2]|0,(c[(c[l>>2]|0)+24>>2]|0)+(c[(c[c[m>>2]>>2]|0)+460>>2]|0)|0)|0)!=0){c[h>>2]=1;b=c[h>>2]|0;i=g;return b|0}b=(c[k>>2]|0)+460|0;c[b>>2]=(c[b>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);a[n>>0]=a[(c[m>>2]|0)+28>>0]&2;b=(c[m>>2]|0)+28|0;a[b>>0]=d[b>>0]&-3;c[j+0>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0;c[j+20>>2]=0;c[j>>2]=58;c[j+4>>2]=59;c[j+12>>2]=c[c[m>>2]>>2];c[j+20>>2]=c[m>>2];_w(j,c[l>>2]|0)|0;b=(c[c[m>>2]>>2]|0)+460|0;c[b>>2]=(c[b>>2]|0)-(c[(c[l>>2]|0)+24>>2]|0);if((c[(c[m>>2]|0)+24>>2]|0)>0){f=7}else{if((c[(c[j+12>>2]|0)+64>>2]|0)>0){f=7}}if((f|0)==7){b=(c[l>>2]|0)+4|0;c[b>>2]=c[b>>2]|8}if((a[(c[m>>2]|0)+28>>0]&2|0)!=0){b=(c[l>>2]|0)+4|0;c[b>>2]=c[b>>2]|2}else{if((a[n>>0]|0)!=0){b=(c[m>>2]|0)+28|0;a[b>>0]=d[b>>0]|2}}c[h>>2]=(c[(c[l>>2]|0)+4>>2]&8|0)!=0&1;b=c[h>>2]|0;i=g;return b|0}function cx(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=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;r=i;i=i+64|0;k=r+48|0;v=r+44|0;o=r+40|0;t=r+36|0;h=r+32|0;s=r+28|0;u=r+24|0;l=r+16|0;m=r+12|0;n=r+8|0;w=r+4|0;q=r;p=r+20|0;c[v>>2]=d;c[o>>2]=e;c[t>>2]=f;c[h>>2]=g;if((c[t>>2]|0)==0){c[k>>2]=0;d=c[k>>2]|0;i=r;return d|0}c[w>>2]=c[c[c[o>>2]>>2]>>2];c[n>>2]=c[c[v>>2]>>2];c[s>>2]=0;c[m>>2]=c[(c[t>>2]|0)+4>>2];a:while(1){if((c[s>>2]|0)>=(c[c[t>>2]>>2]|0)){j=20;break}c[q>>2]=c[c[m>>2]>>2];c[p>>2]=Pw(c[q>>2]|0)|0;if((a[c[h>>2]>>0]|0)!=71){c[l>>2]=gx(c[n>>2]|0,c[c[o>>2]>>2]|0,c[p>>2]|0)|0;if((c[l>>2]|0)>0){b[(c[m>>2]|0)+16>>1]=c[l>>2]}else{j=8}}else{j=8}b:do{if((j|0)==8){j=0;if((ex(c[p>>2]|0,l)|0)!=0){if((c[l>>2]|0)<1|(c[l>>2]|0)>65535){j=10;break a}b[(c[m>>2]|0)+16>>1]=c[l>>2];break}b[(c[m>>2]|0)+16>>1]=0;if((bx(c[v>>2]|0,c[q>>2]|0)|0)!=0){j=13;break a}c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[c[c[o>>2]>>2]>>2]|0)){break b}if((jx(c[q>>2]|0,c[(c[(c[c[o>>2]>>2]|0)+4>>2]|0)+((c[u>>2]|0)*20|0)>>2]|0,-1)|0)==0){b[(c[m>>2]|0)+16>>1]=(c[u>>2]|0)+1}c[u>>2]=(c[u>>2]|0)+1}}}while(0);c[s>>2]=(c[s>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+20}if((j|0)==10){fx(c[n>>2]|0,c[h>>2]|0,(c[s>>2]|0)+1|0,c[w>>2]|0);c[k>>2]=1;d=c[k>>2]|0;i=r;return d|0}else if((j|0)==13){c[k>>2]=1;d=c[k>>2]|0;i=r;return d|0}else if((j|0)==20){c[k>>2]=rx(c[n>>2]|0,c[o>>2]|0,c[t>>2]|0,c[h>>2]|0)|0;d=c[k>>2]|0;i=r;return d|0}return 0}function dx(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=i;i=i+64|0;h=m;k=m+48|0;g=m+44|0;o=m+40|0;f=m+36|0;l=m+32|0;j=m+28|0;s=m+52|0;n=m+16|0;p=m+12|0;q=m+8|0;r=m+4|0;t=m+20|0;u=m+24|0;c[g>>2]=d;c[o>>2]=e;c[n>>2]=1;c[l>>2]=c[(c[o>>2]|0)+48>>2];if((c[l>>2]|0)==0){c[k>>2]=0;d=c[k>>2]|0;i=m;return d|0}c[s>>2]=c[c[g>>2]>>2];if((c[c[l>>2]>>2]|0)>(c[(c[s>>2]|0)+96>>2]|0)){bf(c[g>>2]|0,23088,h);c[k>>2]=1;d=c[k>>2]|0;i=m;return d|0}c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[l>>2]>>2]|0)){break}d=(c[(c[l>>2]|0)+4>>2]|0)+((c[f>>2]|0)*20|0)+13|0;a[d>>0]=a[d>>0]&-2;c[f>>2]=(c[f>>2]|0)+1}c[(c[o>>2]|0)+56>>2]=0;while(1){if((c[(c[o>>2]|0)+52>>2]|0)==0){break}c[(c[(c[o>>2]|0)+52>>2]|0)+56>>2]=c[o>>2];c[o>>2]=c[(c[o>>2]|0)+52>>2]}a:while(1){if((c[o>>2]|0)==0){n=34;break}if((c[n>>2]|0)==0){n=34;break}c[n>>2]=0;c[j>>2]=c[c[o>>2]>>2];c[f>>2]=0;c[p>>2]=c[(c[l>>2]|0)+4>>2];while(1){if((c[f>>2]|0)>=(c[c[l>>2]>>2]|0)){break}c[q>>2]=-1;do{if((a[(c[p>>2]|0)+13>>0]&1|0)==0){c[r>>2]=Pw(c[c[p>>2]>>2]|0)|0;if((ex(c[r>>2]|0,q)|0)!=0){if((c[q>>2]|0)<=0){n=19;break a}if((c[q>>2]|0)>(c[c[j>>2]>>2]|0)){n=19;break a}}else{c[q>>2]=gx(c[g>>2]|0,c[j>>2]|0,c[r>>2]|0)|0;if((c[q>>2]|0)==0){c[t>>2]=hx(c[s>>2]|0,c[r>>2]|0,0)|0;if((a[(c[s>>2]|0)+64>>0]|0)==0){c[q>>2]=ix(c[g>>2]|0,c[o>>2]|0,c[t>>2]|0)|0}gu(c[s>>2]|0,c[t>>2]|0)}}if((c[q>>2]|0)<=0){c[n>>2]=1;break}c[u>>2]=Su(c[s>>2]|0,132,0)|0;if((c[u>>2]|0)==0){n=26;break a}d=(c[u>>2]|0)+4|0;c[d>>2]=c[d>>2]|1024;c[(c[u>>2]|0)+8>>2]=c[q>>2];d=c[u>>2]|0;e=c[p>>2]|0;if((c[c[p>>2]>>2]|0)==(c[r>>2]|0)){c[e>>2]=d}else{c[(c[e>>2]|0)+12>>2]=d}gu(c[s>>2]|0,c[r>>2]|0);b[(c[p>>2]|0)+16>>1]=c[q>>2];d=(c[p>>2]|0)+13|0;a[d>>0]=a[d>>0]&-2|1}}while(0);c[f>>2]=(c[f>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+20}c[o>>2]=c[(c[o>>2]|0)+56>>2]}if((n|0)==19){fx(c[g>>2]|0,23008,(c[f>>2]|0)+1|0,c[c[j>>2]>>2]|0);c[k>>2]=1;d=c[k>>2]|0;i=m;return d|0}else if((n|0)==26){c[k>>2]=1;d=c[k>>2]|0;i=m;return d|0}else if((n|0)==34){c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[l>>2]>>2]|0)){n=39;break}if((a[(c[(c[l>>2]|0)+4>>2]|0)+((c[f>>2]|0)*20|0)+13>>0]&1|0)==0){n=37;break}c[f>>2]=(c[f>>2]|0)+1}if((n|0)==37){d=c[g>>2]|0;c[h>>2]=(c[f>>2]|0)+1;bf(d,23128,h);c[k>>2]=1;d=c[k>>2]|0;i=m;return d|0}else if((n|0)==39){c[k>>2]=0;d=c[k>>2]|0;i=m;return d|0}}return 0}function ex(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;k=e;g=e+4|0;h=e+8|0;j=e+12|0;c[k>>2]=a;c[g>>2]=b;c[h>>2]=0;b=c[k>>2]|0;if((c[(c[k>>2]|0)+4>>2]&1024|0)!=0){c[c[g>>2]>>2]=c[b+8>>2];c[f>>2]=1;a=c[f>>2]|0;i=e;return a|0}b=d[b>>0]|0;if((b|0)==157){if((ex(c[(c[k>>2]|0)+12>>2]|0,j)|0)!=0){c[c[g>>2]>>2]=0-(c[j>>2]|0);c[h>>2]=1}}else if((b|0)==158){c[h>>2]=ex(c[(c[k>>2]|0)+12>>2]|0,c[g>>2]|0)|0}c[f>>2]=c[h>>2];a=c[f>>2]|0;i=e;return a|0}function fx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f;l=f+24|0;k=f+12|0;h=f+16|0;j=f+20|0;c[l>>2]=a;c[k>>2]=b;c[h>>2]=d;c[j>>2]=e;a=c[l>>2]|0;d=c[k>>2]|0;b=c[j>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=d;c[g+8>>2]=b;bf(a,23192,g);i=f;return}function gx(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;f=g+24|0;k=g+4|0;m=g+8|0;l=g+12|0;j=g+16|0;h=g+20|0;c[g>>2]=a;c[k>>2]=b;c[m>>2]=e;a:do{if((d[c[m>>2]>>0]|0|0)==27){c[j>>2]=c[(c[m>>2]|0)+8>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[c[k>>2]>>2]|0)){break a}c[h>>2]=c[(c[(c[k>>2]|0)+4>>2]|0)+((c[l>>2]|0)*20|0)+4>>2];if((c[h>>2]|0)!=0){if((Dc(c[h>>2]|0,c[j>>2]|0)|0)==0){break}}c[l>>2]=(c[l>>2]|0)+1}c[f>>2]=(c[l>>2]|0)+1;a=c[f>>2]|0;i=g;return a|0}}while(0);c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}function hx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=lx(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0,0)|0;i=e;return a|0}function ix(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+80|0;g=f+44|0;p=f+60|0;q=f+56|0;k=f+52|0;j=f+48|0;h=f+40|0;o=f+8|0;m=f+4|0;l=f;n=f+64|0;c[p>>2]=b;c[q>>2]=d;c[k>>2]=e;c[h>>2]=c[c[q>>2]>>2];c[o+0>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[o+20>>2]=0;c[o+24>>2]=0;c[o+28>>2]=0;c[o>>2]=c[p>>2];c[o+4>>2]=c[(c[q>>2]|0)+32>>2];c[o+8>>2]=c[h>>2];a[o+28>>0]=1;c[o+24>>2]=0;c[m>>2]=c[c[p>>2]>>2];a[n>>0]=a[(c[m>>2]|0)+67>>0]|0;a[(c[m>>2]|0)+67>>0]=1;c[l>>2]=bx(o,c[k>>2]|0)|0;a[(c[m>>2]|0)+67>>0]=a[n>>0]|0;if((c[l>>2]|0)!=0){c[g>>2]=0;q=c[g>>2]|0;i=f;return q|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[c[h>>2]>>2]|0)){h=8;break}q=(jx(c[(c[(c[h>>2]|0)+4>>2]|0)+((c[j>>2]|0)*20|0)>>2]|0,c[k>>2]|0,-1)|0)<2;e=(c[j>>2]|0)+1|0;if(q){h=6;break}c[j>>2]=e}if((h|0)==6){c[g>>2]=e;q=c[g>>2]|0;i=f;return q|0}else if((h|0)==8){c[g>>2]=0;q=c[g>>2]|0;i=f;return q|0}return 0}function jx(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;l=h+16|0;j=h;k=h+4|0;g=h+8|0;m=h+12|0;c[j>>2]=a;c[k>>2]=e;c[g>>2]=f;if((c[j>>2]|0)!=0){if((c[k>>2]|0)!=0){c[m>>2]=c[(c[j>>2]|0)+4>>2]|c[(c[k>>2]|0)+4>>2];f=c[j>>2]|0;if((c[m>>2]&1024|0)!=0){if((c[f+4>>2]&c[(c[k>>2]|0)+4>>2]&1024|0)!=0){if((c[(c[j>>2]|0)+8>>2]|0)==(c[(c[k>>2]|0)+8>>2]|0)){c[l>>2]=0;a=c[l>>2]|0;i=h;return a|0}}c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}e=d[c[j>>2]>>0]|0;if((d[f>>0]|0)!=(d[c[k>>2]>>0]|0)){if((e|0)==95){if((jx(c[(c[j>>2]|0)+12>>2]|0,c[k>>2]|0,c[g>>2]|0)|0)<2){c[l>>2]=1;a=c[l>>2]|0;i=h;return a|0}}if((d[c[k>>2]>>0]|0)==95){if((jx(c[j>>2]|0,c[(c[k>>2]|0)+12>>2]|0,c[g>>2]|0)|0)<2){c[l>>2]=1;a=c[l>>2]|0;i=h;return a|0}}c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((e|0)!=154){if((d[c[j>>2]>>0]|0)!=156){if((c[(c[j>>2]|0)+8>>2]|0)!=0){if((YK(c[(c[j>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0)!=0){c[l>>2]=(d[c[j>>2]>>0]|0)==95?1:2;a=c[l>>2]|0;i=h;return a|0}}}}if((c[(c[j>>2]|0)+4>>2]&16|0)!=(c[(c[k>>2]|0)+4>>2]&16|0)){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}do{if((c[m>>2]&16384|0)==0){if((c[m>>2]&2048|0)!=0){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((jx(c[(c[j>>2]|0)+12>>2]|0,c[(c[k>>2]|0)+12>>2]|0,c[g>>2]|0)|0)!=0){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((jx(c[(c[j>>2]|0)+16>>2]|0,c[(c[k>>2]|0)+16>>2]|0,c[g>>2]|0)|0)!=0){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((kx(c[(c[j>>2]|0)+20>>2]|0,c[(c[k>>2]|0)+20>>2]|0,c[g>>2]|0)|0)!=0){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((c[m>>2]&8192|0)==0){if((b[(c[j>>2]|0)+32>>1]|0)!=(b[(c[k>>2]|0)+32>>1]|0)){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((c[(c[j>>2]|0)+28>>2]|0)!=(c[(c[k>>2]|0)+28>>2]|0)){if((c[(c[j>>2]|0)+28>>2]|0)==(c[g>>2]|0)){if((c[(c[k>>2]|0)+28>>2]|0)<0){break}}c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}}}}while(0);c[l>>2]=0;a=c[l>>2]|0;i=h;return a|0}}c[l>>2]=(c[k>>2]|0)==(c[j>>2]|0)?0:2;a=c[l>>2]|0;i=h;return a|0}function kx(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;f=g+24|0;h=g;n=g+4|0;l=g+8|0;m=g+12|0;j=g+16|0;k=g+20|0;c[h>>2]=a;c[n>>2]=b;c[l>>2]=e;if((c[h>>2]|0)==0){if((c[n>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}}if((c[h>>2]|0)!=0){if((c[n>>2]|0)!=0){if((c[c[h>>2]>>2]|0)!=(c[c[n>>2]>>2]|0)){c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[c[h>>2]>>2]|0)){h=16;break}c[j>>2]=c[(c[(c[h>>2]|0)+4>>2]|0)+((c[m>>2]|0)*20|0)>>2];c[k>>2]=c[(c[(c[n>>2]|0)+4>>2]|0)+((c[m>>2]|0)*20|0)>>2];if((d[(c[(c[h>>2]|0)+4>>2]|0)+((c[m>>2]|0)*20|0)+12>>0]|0|0)!=(d[(c[(c[n>>2]|0)+4>>2]|0)+((c[m>>2]|0)*20|0)+12>>0]|0|0)){h=12;break}if((jx(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)!=0){h=14;break}c[m>>2]=(c[m>>2]|0)+1}if((h|0)==12){c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}else if((h|0)==14){c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}else if((h|0)==16){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}}}c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}function lx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;j=i;i=i+64|0;m=j+48|0;h=j+44|0;k=j+40|0;l=j+36|0;f=j+32|0;n=j+28|0;g=j+24|0;p=j+16|0;o=j+12|0;r=j+8|0;u=j+4|0;q=j;s=j+20|0;c[m>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[f>>2]=0;if((c[h>>2]|0)==0){a=c[f>>2]|0;i=j;return a|0}c[n>>2]=c[k>>2]&1;c[p>>2]=0;if((c[l>>2]|0)!=0){c[g>>2]=c[c[l>>2]>>2];c[p>>2]=32768}else{a=c[m>>2]|0;c[g>>2]=$e(a,mx(c[h>>2]|0,c[k>>2]|0)|0)|0}c[f>>2]=c[g>>2];if((c[f>>2]|0)==0){a=c[f>>2]|0;i=j;return a|0}c[o>>2]=nx(c[h>>2]|0,c[k>>2]|0)|0;c[r>>2]=c[o>>2]&4095;if((c[(c[h>>2]|0)+4>>2]&1024|0)!=0){t=9}else{if((c[(c[h>>2]|0)+8>>2]|0)!=0){c[u>>2]=(Ub(c[(c[h>>2]|0)+8>>2]|0)|0)+1}else{t=9}}if((t|0)==9){c[u>>2]=0}if((c[n>>2]|0)!=0){fL(c[g>>2]|0,c[h>>2]|0,c[r>>2]|0)|0}else{c[q>>2]=ox(c[h>>2]|0)|0;fL(c[g>>2]|0,c[h>>2]|0,c[q>>2]|0)|0;aL((c[g>>2]|0)+(c[q>>2]|0)|0,0,48-(c[q>>2]|0)|0)|0}a=(c[f>>2]|0)+4|0;c[a>>2]=c[a>>2]&-122881;a=(c[f>>2]|0)+4|0;c[a>>2]=c[a>>2]|c[o>>2]&24576;a=(c[f>>2]|0)+4|0;c[a>>2]=c[a>>2]|c[p>>2];if((c[u>>2]|0)!=0){a=(c[g>>2]|0)+(c[r>>2]|0)|0;c[(c[f>>2]|0)+8>>2]=a;c[s>>2]=a;fL(c[s>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[u>>2]|0)|0}do{if(0==((c[(c[h>>2]|0)+4>>2]|c[(c[f>>2]|0)+4>>2])&16384|0)){p=c[m>>2]|0;o=(c[h>>2]|0)+20|0;if((c[(c[h>>2]|0)+4>>2]&2048|0)!=0){a=Bw(p,c[o>>2]|0,c[n>>2]|0)|0;c[(c[f>>2]|0)+20>>2]=a;break}else{a=px(p,c[o>>2]|0,c[n>>2]|0)|0;c[(c[f>>2]|0)+20>>2]=a;break}}}while(0);n=c[h>>2]|0;if((c[(c[f>>2]|0)+4>>2]&24576|0)==0){if((c[n+4>>2]&16384|0)!=0){a=c[f>>2]|0;i=j;return a|0}a=hx(c[m>>2]|0,c[(c[h>>2]|0)+12>>2]|0,0)|0;c[(c[f>>2]|0)+12>>2]=a;a=hx(c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0,0)|0;c[(c[f>>2]|0)+16>>2]=a;a=c[f>>2]|0;i=j;return a|0}a=qx(n,c[k>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+a;if((c[(c[f>>2]|0)+4>>2]&8192|0)!=0){a=lx(c[m>>2]|0,c[(c[h>>2]|0)+12>>2]|0,1,g)|0;c[(c[f>>2]|0)+12>>2]=a;a=lx(c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0,1,g)|0;c[(c[f>>2]|0)+16>>2]=a}if((c[l>>2]|0)==0){a=c[f>>2]|0;i=j;return a|0}c[c[l>>2]>>2]=c[g>>2];a=c[f>>2]|0;i=j;return a|0}function mx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=0;if((c[f>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[e>>2]=qx(c[f>>2]|0,c[g>>2]|0)|0;if((c[g>>2]&1|0)==0){a=c[e>>2]|0;i=d;return a|0}a=mx(c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0;a=a+(mx(c[(c[f>>2]|0)+16>>2]|0,c[g>>2]|0)|0)|0;c[e>>2]=(c[e>>2]|0)+a;a=c[e>>2]|0;i=d;return a|0}function nx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;do{if(0==(c[g>>2]&1|0)){c[e>>2]=48}else{if((c[(c[f>>2]|0)+12>>2]|0)==0){if((c[(c[f>>2]|0)+20>>2]|0)==0){c[e>>2]=16396;break}}c[e>>2]=8220}}while(0);i=d;return c[e>>2]|0}function ox(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;do{if((c[(c[e>>2]|0)+4>>2]&16384|0)!=0){c[d>>2]=12}else{if((c[(c[e>>2]|0)+4>>2]&8192|0)!=0){c[d>>2]=28;break}else{c[d>>2]=48;break}}}while(0);i=b;return c[d>>2]|0}function px(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+48|0;h=m+32|0;j=m+28|0;l=m+24|0;q=m+20|0;k=m+16|0;o=m+8|0;g=m+4|0;n=m;p=m+12|0;c[j>>2]=b;c[l>>2]=e;c[q>>2]=f;if((c[l>>2]|0)==0){c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}c[k>>2]=$e(c[j>>2]|0,8)|0;if((c[k>>2]|0)==0){c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}b=c[c[l>>2]>>2]|0;c[n>>2]=b;c[c[k>>2]>>2]=b;a:do{if((c[q>>2]&1|0)==0){c[n>>2]=1;while(1){if((c[n>>2]|0)>=(c[c[l>>2]>>2]|0)){break a}c[n>>2]=(c[n>>2]|0)+(c[n>>2]|0)}}}while(0);b=$e(c[j>>2]|0,(c[n>>2]|0)*20|0)|0;c[o>>2]=b;c[(c[k>>2]|0)+4>>2]=b;if((c[o>>2]|0)==0){cc(c[j>>2]|0,c[k>>2]|0);c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}c[g>>2]=c[(c[l>>2]|0)+4>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[c[l>>2]>>2]|0)){break}c[p>>2]=c[c[g>>2]>>2];b=hx(c[j>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;c[c[o>>2]>>2]=b;b=pe(c[j>>2]|0,c[(c[g>>2]|0)+4>>2]|0)|0;c[(c[o>>2]|0)+4>>2]=b;b=pe(c[j>>2]|0,c[(c[g>>2]|0)+8>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=b;a[(c[o>>2]|0)+12>>0]=a[(c[g>>2]|0)+12>>0]|0;b=(c[o>>2]|0)+13|0;a[b>>0]=a[b>>0]&-2;b=(c[o>>2]|0)+13|0;a[b>>0]=a[b>>0]&-3|((d[(c[g>>2]|0)+13>>0]|0)>>>1&1&1)<<1&255;b=(c[o>>2]|0)+16|0;e=(c[g>>2]|0)+16|0;c[b+0>>2]=c[e+0>>2];c[n>>2]=(c[n>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+20;c[g>>2]=(c[g>>2]|0)+20}c[h>>2]=c[k>>2];b=c[h>>2]|0;i=m;return b|0}function qx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=(nx(c[f>>2]|0,c[g>>2]|0)|0)&4095;if((c[(c[f>>2]|0)+4>>2]&1024|0)==0){if((c[(c[f>>2]|0)+8>>2]|0)!=0){g=(Ub(c[(c[f>>2]|0)+8>>2]|0)|0)+1|0;c[e>>2]=(c[e>>2]|0)+g}}i=d;return(c[e>>2]|0)+7&-8|0}function rx(a,f,g,h){a=a|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=i;i=i+48|0;r=m;l=m+32|0;o=m+28|0;s=m+24|0;p=m+20|0;k=m+36|0;j=m+8|0;t=m+4|0;n=m+12|0;q=m+16|0;c[o>>2]=a;c[s>>2]=f;c[p>>2]=g;c[k>>2]=h;c[t>>2]=c[c[o>>2]>>2];if((c[p>>2]|0)!=0){if((d[(c[c[o>>2]>>2]|0)+64>>0]|0)==0){if((c[c[p>>2]>>2]|0)>(c[(c[t>>2]|0)+96>>2]|0)){a=c[o>>2]|0;c[r>>2]=c[k>>2];bf(a,23248,r);c[l>>2]=1;a=c[l>>2]|0;i=m;return a|0}c[n>>2]=c[c[s>>2]>>2];c[j>>2]=0;c[q>>2]=c[(c[p>>2]|0)+4>>2];while(1){if((c[j>>2]|0)>=(c[c[p>>2]>>2]|0)){o=13;break}if((b[(c[q>>2]|0)+16>>1]|0)!=0){r=c[o>>2]|0;if((e[(c[q>>2]|0)+16>>1]|0)>(c[c[n>>2]>>2]|0)){o=10;break}sx(r,c[n>>2]|0,(e[(c[q>>2]|0)+16>>1]|0)-1|0,c[c[q>>2]>>2]|0,c[k>>2]|0,0)}c[j>>2]=(c[j>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+20}if((o|0)==10){fx(r,c[k>>2]|0,(c[j>>2]|0)+1|0,c[c[n>>2]>>2]|0);c[l>>2]=1;a=c[l>>2]|0;i=m;return a|0}else if((o|0)==13){c[l>>2]=0;a=c[l>>2]|0;i=m;return a|0}}}c[l>>2]=0;a=c[l>>2]|0;i=m;return a|0}function sx(f,g,h,j,k,l){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;p=i;i=i+48|0;r=p+32|0;u=p+28|0;q=p+24|0;n=p+20|0;t=p+16|0;s=p+8|0;v=p+4|0;o=p;m=p+12|0;c[r>>2]=f;c[u>>2]=g;c[q>>2]=h;c[n>>2]=j;c[t>>2]=k;c[s>>2]=l;c[v>>2]=c[(c[(c[u>>2]|0)+4>>2]|0)+((c[q>>2]|0)*20|0)>>2];c[m>>2]=c[c[r>>2]>>2];c[o>>2]=hx(c[m>>2]|0,c[v>>2]|0,0)|0;if((c[o>>2]|0)==0){i=p;return}if((d[c[v>>2]>>0]|0)!=154){if((a[c[t>>2]>>0]|0)!=71){tx(c[o>>2]|0,c[s>>2]|0);c[o>>2]=Bu(c[r>>2]|0,24,c[o>>2]|0,0,0)|0;if((c[o>>2]|0)==0){i=p;return}f=(c[o>>2]|0)+4|0;c[f>>2]=c[f>>2]|4096;if((e[(c[(c[u>>2]|0)+4>>2]|0)+((c[q>>2]|0)*20|0)+18>>1]|0)==0){g=(c[r>>2]|0)+456|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;b[(c[(c[u>>2]|0)+4>>2]|0)+((c[q>>2]|0)*20|0)+18>>1]=f}c[(c[o>>2]|0)+28>>2]=e[(c[(c[u>>2]|0)+4>>2]|0)+((c[q>>2]|0)*20|0)+18>>1]|0}}if((d[c[n>>2]>>0]|0)==95){c[o>>2]=ux(c[r>>2]|0,c[o>>2]|0,c[(c[n>>2]|0)+8>>2]|0)|0}r=(c[n>>2]|0)+4|0;c[r>>2]=c[r>>2]|32768;gu(c[m>>2]|0,c[n>>2]|0);r=(c[n>>2]|0)+0|0;l=(c[o>>2]|0)+0|0;q=r+48|0;do{c[r>>2]=c[l>>2];r=r+4|0;l=l+4|0}while((r|0)<(q|0));if((c[(c[n>>2]|0)+4>>2]&1024|0)==0){if((c[(c[n>>2]|0)+8>>2]|0)!=0){f=pe(c[m>>2]|0,c[(c[n>>2]|0)+8>>2]|0)|0;c[(c[n>>2]|0)+8>>2]=f;f=(c[n>>2]|0)+4|0;c[f>>2]=c[f>>2]|65536}}cc(c[m>>2]|0,c[o>>2]|0);i=p;return}function tx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+48|0;g=d+32|0;f=d;e=d+8|0;c[g>>2]=a;c[f>>2]=b;if((c[f>>2]|0)<=0){i=d;return}c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e>>2]=60;c[e+20>>2]=c[f>>2];_w(e,c[g>>2]|0)|0;i=d;return}function ux(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+16|0;g=e;j=e+4|0;f=e+8|0;c[h>>2]=a;c[g>>2]=b;c[j>>2]=d;c[f>>2]=c[j>>2];c[f+4>>2]=Ub(c[f>>2]|0)|0;a=dv(c[h>>2]|0,c[g>>2]|0,f)|0;i=e;return a|0}function vx(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;h=f+4|0;g=f;c[h>>2]=b;c[g>>2]=e;if((d[c[g>>2]>>0]|0|0)!=155){i=f;return 0}b=(c[g>>2]|0)+38|0;a[b>>0]=(d[b>>0]|0)+(c[(c[h>>2]|0)+20>>2]|0);i=f;return 0}function wx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;h=d;f=d+16|0;j=d+4|0;e=d+8|0;g=d+12|0;c[f>>2]=a;c[j>>2]=b;c[e>>2]=0;c[g>>2]=c[(c[c[f>>2]>>2]|0)+100>>2];if((c[j>>2]|0)<=(c[g>>2]|0)){j=c[e>>2]|0;i=d;return j|0}j=c[f>>2]|0;c[h>>2]=c[g>>2];bf(j,23280,h);c[e>>2]=1;j=c[e>>2]|0;i=d;return j|0}function xx(e,f,g,h,j,k){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;n=i;i=i+144|0;y=n;t=n+128|0;l=n+124|0;C=n+120|0;v=n+116|0;w=n+112|0;x=n+108|0;m=n+104|0;O=n+100|0;I=n+96|0;q=n+92|0;F=n+88|0;Q=n+84|0;r=n+80|0;N=n+76|0;p=n+132|0;u=n+40|0;z=n+36|0;s=n+16|0;H=n+20|0;J=n+24|0;E=n+28|0;P=n+32|0;M=n+68|0;R=n+44|0;L=n+48|0;G=n+52|0;B=n+56|0;S=n+60|0;A=n+64|0;o=n+72|0;c[l>>2]=e;c[C>>2]=f;c[v>>2]=g;c[w>>2]=h;c[x>>2]=j;c[m>>2]=k;c[q>>2]=0;c[F>>2]=0;c[Q>>2]=0;c[r>>2]=c[c[l>>2]>>2];c[p>>2]=0;c[u>>2]=c[x>>2];c[z>>2]=0;c[s>>2]=0;c[H>>2]=0;c[(c[m>>2]|0)+28>>2]=-1;c[(c[m>>2]|0)+44>>2]=0;a:do{if((c[C>>2]|0)!=0){if((a[(c[x>>2]|0)+28>>0]&20|0)!=0){c[C>>2]=0;break}c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[(c[r>>2]|0)+20>>2]|0)){break a}j=(Dc(c[(c[(c[r>>2]|0)+16>>2]|0)+(c[O>>2]<<4)>>2]|0,c[C>>2]|0)|0)==0;k=c[O>>2]|0;if(j){break}c[O>>2]=k+1}c[z>>2]=c[(c[(c[r>>2]|0)+16>>2]|0)+(k<<4)+12>>2]}}while(0);b:while(1){if((c[x>>2]|0)==0){K=98;break}if((c[q>>2]|0)!=0){K=98;break}c[P>>2]=c[(c[x>>2]|0)+4>>2];if((c[P>>2]|0)!=0){c[O>>2]=0;c[N>>2]=(c[P>>2]|0)+8;while(1){if((c[O>>2]|0)>=(c[c[P>>2]>>2]|0)){break}c[H>>2]=c[(c[N>>2]|0)+16>>2];if((c[(c[N>>2]|0)+20>>2]|0)!=0){if((b[(c[(c[N>>2]|0)+20>>2]|0)+6>>1]&512|0)!=0){c[M>>2]=0;c[E>>2]=c[c[(c[N>>2]|0)+20>>2]>>2];c[I>>2]=0;while(1){if((c[I>>2]|0)>=(c[c[E>>2]>>2]|0)){break}if((Dx(c[(c[(c[E>>2]|0)+4>>2]|0)+((c[I>>2]|0)*20|0)+8>>2]|0,c[w>>2]|0,c[v>>2]|0,c[C>>2]|0)|0)!=0){c[q>>2]=(c[q>>2]|0)+1;c[F>>2]=2;c[p>>2]=c[N>>2];b[(c[m>>2]|0)+32>>1]=c[I>>2];c[M>>2]=1}c[I>>2]=(c[I>>2]|0)+1}if((c[M>>2]|0)==0){if((c[v>>2]|0)!=0){K=23}}}else{K=23}}else{K=23}c:do{if((K|0)==23){K=0;if((c[C>>2]|0)!=0){if((c[(c[H>>2]|0)+68>>2]|0)!=(c[z>>2]|0)){break}}if((c[v>>2]|0)!=0){if((c[(c[N>>2]|0)+12>>2]|0)!=0){k=c[(c[N>>2]|0)+12>>2]|0}else{k=c[c[H>>2]>>2]|0}c[R>>2]=k;if((Dc(c[R>>2]|0,c[v>>2]|0)|0)!=0){break}}j=c[F>>2]|0;c[F>>2]=j+1;if(0==(j|0)){c[p>>2]=c[N>>2]}c[I>>2]=0;c[J>>2]=c[(c[H>>2]|0)+4>>2];while(1){if((c[I>>2]|0)>=(b[(c[H>>2]|0)+38>>1]|0)){break c}if((Dc(c[c[J>>2]>>2]|0,c[w>>2]|0)|0)==0){if((c[q>>2]|0)!=1){break}if((a[(c[N>>2]|0)+36>>0]&4|0)==0){if((Ex(c[(c[N>>2]|0)+48>>2]|0,c[w>>2]|0)|0)==0){break}}}c[I>>2]=(c[I>>2]|0)+1;c[J>>2]=(c[J>>2]|0)+24}c[q>>2]=(c[q>>2]|0)+1;c[p>>2]=c[N>>2];if((c[I>>2]|0)==(b[(c[H>>2]|0)+36>>1]|0)){k=-1}else{k=(c[I>>2]&65535)<<16>>16}b[(c[m>>2]|0)+32>>1]=k}}while(0);c[O>>2]=(c[O>>2]|0)+1;c[N>>2]=(c[N>>2]|0)+72}if((c[p>>2]|0)!=0){c[(c[m>>2]|0)+28>>2]=c[(c[p>>2]|0)+40>>2];c[(c[m>>2]|0)+44>>2]=c[(c[p>>2]|0)+16>>2];c[z>>2]=c[(c[(c[m>>2]|0)+44>>2]|0)+68>>2]}}if((c[C>>2]|0)==0){if((c[v>>2]|0)!=0){if((c[F>>2]|0)==0){if((c[(c[l>>2]|0)+412>>2]|0)!=0){c[L>>2]=d[(c[l>>2]|0)+436>>0]|0;if((c[L>>2]|0)!=109){if((Dc(23688,c[v>>2]|0)|0)==0){c[(c[m>>2]|0)+28>>2]=1;c[H>>2]=c[(c[l>>2]|0)+412>>2]}else{K=52}}else{K=52}do{if((K|0)==52){K=0;if((c[L>>2]|0)!=108){if((Dc(23696,c[v>>2]|0)|0)==0){c[(c[m>>2]|0)+28>>2]=0;c[H>>2]=c[(c[l>>2]|0)+412>>2];break}}c[H>>2]=0}}while(0);if((c[H>>2]|0)!=0){c[z>>2]=c[(c[H>>2]|0)+68>>2];c[F>>2]=(c[F>>2]|0)+1;c[G>>2]=0;c[J>>2]=c[(c[H>>2]|0)+4>>2];while(1){if((c[G>>2]|0)>=(b[(c[H>>2]|0)+38>>1]|0)){break}j=(Dc(c[c[J>>2]>>2]|0,c[w>>2]|0)|0)==0;k=c[G>>2]|0;if(j){K=60;break}c[G>>2]=k+1;c[J>>2]=(c[J>>2]|0)+24}if((K|0)==60){K=0;if((k|0)==(b[(c[H>>2]|0)+36>>1]|0)){c[G>>2]=-1}}if((c[G>>2]|0)>=(b[(c[H>>2]|0)+38>>1]|0)){if((Fx(c[w>>2]|0)|0)!=0){if((a[(c[H>>2]|0)+44>>0]&32|0)==0){c[G>>2]=-1}}}if((c[G>>2]|0)<(b[(c[H>>2]|0)+38>>1]|0)){c[q>>2]=(c[q>>2]|0)+1;k=c[m>>2]|0;do{if((c[G>>2]|0)<0){a[k+1>>0]=100}else{h=(c[G>>2]|0)>=32;if((c[k+28>>2]|0)==0){if(h){k=-1}else{k=1<>2]}j=(c[l>>2]|0)+428|0;c[j>>2]=c[j>>2]|k;break}else{if(h){k=-1}else{k=1<>2]}j=(c[l>>2]|0)+432|0;c[j>>2]=c[j>>2]|k;break}}}while(0);b[(c[m>>2]|0)+32>>1]=c[G>>2];c[(c[m>>2]|0)+44>>2]=c[H>>2];c[s>>2]=1}}}}}}if((c[q>>2]|0)==0){if((c[F>>2]|0)==1){if((c[p>>2]|0)!=0){if((Fx(c[w>>2]|0)|0)!=0){if((a[(c[(c[p>>2]|0)+16>>2]|0)+44>>0]&32|0)==0){c[q>>2]=1;b[(c[m>>2]|0)+32>>1]=-1;a[(c[m>>2]|0)+1>>0]=100}}}}}j=c[(c[x>>2]|0)+8>>2]|0;c[E>>2]=j;d:do{if((j|0)!=0){if((c[v>>2]|0)==0){if((c[q>>2]|0)==0){c[I>>2]=0;while(1){if((c[I>>2]|0)>=(c[c[E>>2]>>2]|0)){break d}c[B>>2]=c[(c[(c[E>>2]|0)+4>>2]|0)+((c[I>>2]|0)*20|0)+4>>2];if((c[B>>2]|0)!=0){if((Dc(c[B>>2]|0,c[w>>2]|0)|0)==0){K=91;break b}}c[I>>2]=(c[I>>2]|0)+1}}}}}while(0);if((c[q>>2]|0)!=0){continue}c[x>>2]=c[(c[x>>2]|0)+16>>2];c[Q>>2]=(c[Q>>2]|0)+1}if((K|0)==91){c[S>>2]=c[(c[(c[E>>2]|0)+4>>2]|0)+((c[I>>2]|0)*20|0)>>2];if((a[(c[x>>2]|0)+28>>0]&1|0)==0){if((c[(c[S>>2]|0)+4>>2]&2|0)!=0){j=c[l>>2]|0;c[y>>2]=c[B>>2];bf(j,23704,y);c[t>>2]=2;j=c[t>>2]|0;i=n;return j|0}}sx(c[l>>2]|0,c[E>>2]|0,c[I>>2]|0,c[m>>2]|0,1784,c[Q>>2]|0);c[q>>2]=1;c[p>>2]=0}else if((K|0)==98){if((c[q>>2]|0)==0){if((c[v>>2]|0)==0){if((c[(c[m>>2]|0)+4>>2]&64|0)!=0){a[c[m>>2]>>0]=97;c[(c[m>>2]|0)+44>>2]=0;c[t>>2]=1;j=c[t>>2]|0;i=n;return j|0}}}if((c[q>>2]|0)!=1){c[A>>2]=(c[q>>2]|0)==0?23736:23752;do{if((c[C>>2]|0)!=0){j=c[l>>2]|0;g=c[C>>2]|0;f=c[v>>2]|0;e=c[w>>2]|0;c[y>>2]=c[A>>2];c[y+4>>2]=g;c[y+8>>2]=f;c[y+12>>2]=e;bf(j,23776,y)}else{B=c[l>>2]|0;A=c[A>>2]|0;if((c[v>>2]|0)!=0){e=c[v>>2]|0;j=c[w>>2]|0;c[y>>2]=A;c[y+4>>2]=e;c[y+8>>2]=j;bf(B,23792,y);break}else{j=c[w>>2]|0;c[y>>2]=A;c[y+4>>2]=j;bf(B,23808,y);break}}}while(0);a[(c[l>>2]|0)+17>>0]=1;j=(c[u>>2]|0)+24|0;c[j>>2]=(c[j>>2]|0)+1}if((b[(c[m>>2]|0)+32>>1]|0)>=0){if((c[p>>2]|0)!=0){f=b[(c[m>>2]|0)+32>>1]|0;c[o>>2]=f;c[o>>2]=(c[o>>2]|0)>=64?63:f;f=bL(1,0,c[o>>2]|0)|0;j=(c[p>>2]|0)+56|0;g=j;e=c[g+4>>2]|D;c[j>>2]=c[g>>2]|f;c[j+4>>2]=e}}gu(c[r>>2]|0,c[(c[m>>2]|0)+12>>2]|0);c[(c[m>>2]|0)+12>>2]=0;gu(c[r>>2]|0,c[(c[m>>2]|0)+16>>2]|0);c[(c[m>>2]|0)+16>>2]=0;a[c[m>>2]>>0]=(c[s>>2]|0)!=0?62:154}if((c[q>>2]|0)!=1){c[t>>2]=2;j=c[t>>2]|0;i=n;return j|0}if((d[c[m>>2]>>0]|0)!=24){Gx(c[l>>2]|0,c[m>>2]|0,c[z>>2]|0,c[(c[x>>2]|0)+4>>2]|0)}while(1){j=(c[u>>2]|0)+20|0;c[j>>2]=(c[j>>2]|0)+1;if((c[u>>2]|0)==(c[x>>2]|0)){break}c[u>>2]=c[(c[u>>2]|0)+16>>2]}c[t>>2]=1;j=c[t>>2]|0;i=n;return j|0}function yx(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f;g=f+12|0;k=f+4|0;h=f+8|0;c[g>>2]=b;c[k>>2]=d;c[h>>2]=e;if((a[(c[k>>2]|0)+28>>0]&16|0)==0){i=f;return}k=c[g>>2]|0;c[j>>2]=c[h>>2];bf(k,23640,j);i=f;return}function zx(a){a=a|0;var b=0,e=0,f=0,g=0;b=i;i=i+16|0;e=b+12|0;g=b+8|0;f=b;c[g>>2]=a;h[f>>3]=-1.0;if((d[c[g>>2]>>0]|0|0)!=133){c[e>>2]=-1;g=c[e>>2]|0;i=b;return g|0}a=c[(c[g>>2]|0)+8>>2]|0;zt(a,f,Ub(c[(c[g>>2]|0)+8>>2]|0)|0,1)|0;if(+h[f>>3]>1.0){c[e>>2]=-1;g=c[e>>2]|0;i=b;return g|0}else{c[e>>2]=~~(+h[f>>3]*1.0e3);g=c[e>>2]|0;i=b;return g|0}return 0}function Ax(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+48|0;f=d+44|0;h=d;g=d+8|0;e=d+32|0;c[f>>2]=a;c[h>>2]=b;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[g>>2]=61;c[g+20>>2]=e;c[e>>2]=c[h>>2];c[e+4>>2]=0;c[e+8>>2]=0;Zw(g,c[(c[f>>2]|0)+20>>2]|0)|0;if((c[e+4>>2]|0)>0){h=1;h=h&1;i=d;return h|0}h=(c[e+8>>2]|0)==0;h=h&1;i=d;return h|0}function Bx(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f;g=f+12|0;k=f+4|0;h=f+8|0;c[g>>2]=b;c[k>>2]=d;c[h>>2]=e;if((a[(c[k>>2]|0)+28>>0]&4|0)==0){i=f;return}k=c[g>>2]|0;c[j>>2]=c[h>>2];bf(k,23600,j);i=f;return}function Cx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;j=e;f=e+4|0;h=e+8|0;g=e+12|0;c[k>>2]=a;c[j>>2]=b;if((d[c[j>>2]>>0]|0|0)!=154){if((d[c[j>>2]>>0]|0|0)!=156){i=e;return 0}}c[h>>2]=c[(c[k>>2]|0)+20>>2];c[g>>2]=c[c[h>>2]>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[g>>2]>>2]|0)){break}if((c[(c[j>>2]|0)+28>>2]|0)==(c[(c[g>>2]|0)+8+((c[f>>2]|0)*72|0)+40>>2]|0)){break}c[f>>2]=(c[f>>2]|0)+1}b=c[h>>2]|0;if((c[f>>2]|0)<(c[c[g>>2]>>2]|0)){a=b+4|0;c[a>>2]=(c[a>>2]|0)+1;i=e;return 0}else{a=b+8|0;c[a>>2]=(c[a>>2]|0)+1;i=e;return 0}return 0}function Dx(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;k=g+20|0;h=g;n=g+4|0;l=g+8|0;m=g+12|0;j=g+16|0;c[h>>2]=b;c[n>>2]=d;c[l>>2]=e;c[m>>2]=f;c[j>>2]=0;while(1){if((a[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==0){break}if((a[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==46){break}c[j>>2]=(c[j>>2]|0)+1}do{if((c[m>>2]|0)!=0){if((Tb(c[h>>2]|0,c[m>>2]|0,c[j>>2]|0)|0)==0){if((a[(c[m>>2]|0)+(c[j>>2]|0)>>0]|0)==0){break}}c[k>>2]=0;b=c[k>>2]|0;i=g;return b|0}}while(0);c[h>>2]=(c[h>>2]|0)+((c[j>>2]|0)+1);c[j>>2]=0;while(1){if((a[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==0){break}if((a[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==46){break}c[j>>2]=(c[j>>2]|0)+1}do{if((c[l>>2]|0)!=0){if((Tb(c[h>>2]|0,c[l>>2]|0,c[j>>2]|0)|0)==0){if((a[(c[l>>2]|0)+(c[j>>2]|0)>>0]|0)==0){break}}c[k>>2]=0;b=c[k>>2]|0;i=g;return b|0}}while(0);c[h>>2]=(c[h>>2]|0)+((c[j>>2]|0)+1);if((c[n>>2]|0)!=0){if((Dc(c[h>>2]|0,c[n>>2]|0)|0)!=0){c[k>>2]=0;b=c[k>>2]|0;i=g;return b|0}}c[k>>2]=1;b=c[k>>2]|0;i=g;return b|0}function Ex(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;d=e+12|0;f=e;h=e+4|0;g=e+8|0;c[f>>2]=a;c[h>>2]=b;a:do{if((c[f>>2]|0)!=0){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0)){break a}if((Dc(c[(c[c[f>>2]>>2]|0)+(c[g>>2]<<3)>>2]|0,c[h>>2]|0)|0)==0){break}c[g>>2]=(c[g>>2]|0)+1}c[d>>2]=1;a=c[d>>2]|0;i=e;return a|0}}while(0);c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}function Fx(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;do{if((Dc(c[e>>2]|0,23896)|0)==0){c[d>>2]=1}else{if((Dc(c[e>>2]|0,23816)|0)==0){c[d>>2]=1;break}if((Dc(c[e>>2]|0,23904)|0)==0){c[d>>2]=1;break}else{c[d>>2]=0;break}}}while(0);i=b;return c[d>>2]|0}function Gx(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=i;i=i+48|0;k=p+36|0;j=p+32|0;s=p+28|0;q=p+24|0;t=p+20|0;l=p+16|0;m=p+8|0;r=p+4|0;n=p;o=p+12|0;c[k>>2]=e;c[j>>2]=f;c[s>>2]=g;c[q>>2]=h;c[t>>2]=c[c[k>>2]>>2];c[l>>2]=0;if((c[(c[t>>2]|0)+276>>2]|0)==0){i=p;return}c[n>>2]=ef(c[c[k>>2]>>2]|0,c[s>>2]|0)|0;if((c[n>>2]|0)<0){i=p;return}a:do{if((d[c[j>>2]>>0]|0)==62){c[l>>2]=c[(c[k>>2]|0)+412>>2]}else{c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[c[q>>2]>>2]|0)){break a}h=c[r>>2]|0;if((c[(c[j>>2]|0)+28>>2]|0)==(c[(c[q>>2]|0)+8+((c[r>>2]|0)*72|0)+40>>2]|0)){break}c[r>>2]=h+1}c[l>>2]=c[(c[q>>2]|0)+8+(h*72|0)+16>>2]}}while(0);c[o>>2]=b[(c[j>>2]|0)+32>>1]|0;if((c[l>>2]|0)==0){i=p;return}do{if((c[o>>2]|0)>=0){c[m>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+((c[o>>2]|0)*24|0)>>2]}else{if((b[(c[l>>2]|0)+36>>1]|0)>=0){c[m>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+((b[(c[l>>2]|0)+36>>1]|0)*24|0)>>2];break}else{c[m>>2]=23816;break}}}while(0);if(2!=(Hx(c[k>>2]|0,c[c[l>>2]>>2]|0,c[m>>2]|0,c[n>>2]|0)|0)){i=p;return}a[c[j>>2]>>0]=101;i=p;return}function Hx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+48|0;f=n;j=n+36|0;k=n+12|0;l=n+16|0;o=n+20|0;p=n+24|0;m=n+28|0;h=n+32|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[o>>2]=e;c[p>>2]=c[c[j>>2]>>2];c[m>>2]=c[(c[(c[p>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2];c[h>>2]=tb[c[(c[p>>2]|0)+276>>2]&15](c[(c[p>>2]|0)+280>>2]|0,20,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[(c[j>>2]|0)+492>>2]|0)|0;if((c[h>>2]|0)!=1){if(!((c[h>>2]|0)!=2&(c[h>>2]|0)!=0)){a=c[h>>2]|0;i=n;return a|0}Mv(c[j>>2]|0);a=c[h>>2]|0;i=n;return a|0}if((c[(c[p>>2]|0)+20>>2]|0)>2){g=4}else{if((c[o>>2]|0)!=0){g=4}else{a=c[j>>2]|0;b=c[l>>2]|0;c[f>>2]=c[k>>2];c[f+4>>2]=b;bf(a,23864,f)}}if((g|0)==4){a=c[j>>2]|0;d=c[k>>2]|0;b=c[l>>2]|0;c[f>>2]=c[m>>2];c[f+4>>2]=d;c[f+8>>2]=b;bf(a,23824,f)}c[(c[j>>2]|0)+12>>2]=23;a=c[h>>2]|0;i=n;return a|0}function Ix(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=i;i=i+48|0;j=n+44|0;p=n+40|0;o=n+36|0;r=n+32|0;l=n+28|0;t=n+24|0;h=n+12|0;s=n+8|0;m=n+4|0;k=n;q=n+16|0;c[p>>2]=f;c[o>>2]=g;if((c[(c[o>>2]|0)+52>>2]|0)==0){c[j>>2]=0;f=c[j>>2]|0;i=n;return f|0}if((c[(c[o>>2]|0)+48>>2]|0)==0){c[j>>2]=0;f=c[j>>2]|0;i=n;return f|0}c[t>>2]=c[o>>2];while(1){if((c[t>>2]|0)==0){break}if((d[(c[t>>2]|0)+4>>0]|0|0)!=116){if((d[(c[t>>2]|0)+4>>0]|0|0)!=119){break}}c[t>>2]=c[(c[t>>2]|0)+52>>2]}if((c[t>>2]|0)==0){c[j>>2]=0;f=c[j>>2]|0;i=n;return f|0}c[s>>2]=c[(c[(c[o>>2]|0)+48>>2]|0)+4>>2];c[r>>2]=(c[c[(c[o>>2]|0)+48>>2]>>2]|0)-1;while(1){if((c[r>>2]|0)<0){break}if((c[(c[(c[s>>2]|0)+((c[r>>2]|0)*20|0)>>2]|0)+4>>2]&256|0)!=0){break}c[r>>2]=(c[r>>2]|0)+ -1}if((c[r>>2]|0)<0){c[j>>2]=0;f=c[j>>2]|0;i=n;return f|0}c[k>>2]=c[(c[p>>2]|0)+12>>2];c[h>>2]=c[c[k>>2]>>2];c[l>>2]=ve(c[h>>2]|0,72)|0;if((c[l>>2]|0)==0){c[j>>2]=2;f=c[j>>2]|0;i=n;return f|0}c[q+0>>2]=0;c[q+4>>2]=0;c[m>>2]=Nu(c[k>>2]|0,0,0,0,q,c[l>>2]|0,0,0)|0;if((c[m>>2]|0)==0){c[j>>2]=2;f=c[j>>2]|0;i=n;return f|0}else{r=(c[l>>2]|0)+0|0;q=(c[o>>2]|0)+0|0;p=r+72|0;do{c[r>>2]=c[q>>2];r=r+4|0;q=q+4|0}while((r|0)<(p|0));c[(c[o>>2]|0)+32>>2]=c[m>>2];f=c[k>>2]|0;f=Pu(f,0,Su(c[h>>2]|0,116,0)|0)|0;c[c[o>>2]>>2]=f;a[(c[o>>2]|0)+4>>0]=119;c[(c[o>>2]|0)+36>>2]=0;c[(c[l>>2]|0)+40>>2]=0;c[(c[l>>2]|0)+44>>2]=0;c[(c[l>>2]|0)+48>>2]=0;c[(c[o>>2]|0)+52>>2]=0;c[(c[o>>2]|0)+56>>2]=0;f=(c[o>>2]|0)+6|0;b[f>>1]=(e[f>>1]|0)&-4097;c[(c[(c[l>>2]|0)+52>>2]|0)+56>>2]=c[l>>2];c[(c[l>>2]|0)+60>>2]=0;c[(c[l>>2]|0)+64>>2]=0;c[j>>2]=0;f=c[j>>2]|0;i=n;return f|0}return 0}function Jx(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;D=i;i=i+160|0;l=D;z=D+88|0;Q=D+92|0;m=D+96|0;k=D+100|0;B=D+104|0;E=D+108|0;r=D+116|0;C=D+120|0;o=D+124|0;h=D+128|0;n=D+132|0;t=D+136|0;s=D+140|0;J=D+144|0;R=D+148|0;O=D+84|0;P=D+112|0;q=D+40|0;p=D+36|0;N=D+12|0;L=D+16|0;v=D+20|0;u=D+24|0;x=D+28|0;w=D+32|0;y=D+76|0;A=D+44|0;j=D+48|0;F=D+52|0;I=D+56|0;G=D+60|0;K=D+64|0;M=D+72|0;H=D+80|0;c[Q>>2]=f;c[m>>2]=g;c[k>>2]=c[(c[Q>>2]|0)+12>>2];c[n>>2]=c[c[k>>2]>>2];b[R>>1]=b[(c[m>>2]|0)+6>>1]|0;f=(c[m>>2]|0)+6|0;b[f>>1]=e[f>>1]|16;if((a[(c[n>>2]|0)+64>>0]|0)!=0){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}if((c[(c[m>>2]|0)+32>>2]|0)!=0){if((b[R>>1]&16|0)==0){c[C>>2]=c[(c[m>>2]|0)+32>>2];c[o>>2]=c[c[m>>2]>>2];f=c[k>>2]|0;Xu(f,c[(Lx(c[m>>2]|0)|0)+68>>2]|0,0);Cw(c[k>>2]|0,c[C>>2]|0);c[B>>2]=0;c[h>>2]=(c[C>>2]|0)+8;a:while(1){if((c[B>>2]|0)>=(c[c[C>>2]>>2]|0)){P=33;break}if(((d[(c[h>>2]|0)+37>>0]|0)>>>3&1|0)==0){g=c[Q>>2]|0;if((c[(c[h>>2]|0)+16>>2]|0)!=0){P=10;break}if((Mx(g,c[h>>2]|0)|0)!=0){P=12;break}do{if((c[(c[h>>2]|0)+16>>2]|0)==0){if((c[(c[h>>2]|0)+8>>2]|0)==0){c[P>>2]=c[(c[h>>2]|0)+20>>2];Ww(c[Q>>2]|0,c[P>>2]|0)|0;f=ve(c[n>>2]|0,76)|0;c[O>>2]=f;c[(c[h>>2]|0)+16>>2]=f;if((c[O>>2]|0)==0){P=16;break a}b[(c[O>>2]|0)+40>>1]=1;f=c[n>>2]|0;c[l>>2]=c[O>>2];f=cf(f,23912,l)|0;c[c[O>>2]>>2]=f;while(1){if((c[(c[P>>2]|0)+52>>2]|0)==0){break}c[P>>2]=c[(c[P>>2]|0)+52>>2]}Fw(c[k>>2]|0,c[c[P>>2]>>2]|0,(c[O>>2]|0)+38|0,(c[O>>2]|0)+4|0)|0;b[(c[O>>2]|0)+36>>1]=-1;b[(c[O>>2]|0)+28>>1]=200;f=(c[O>>2]|0)+44|0;a[f>>0]=d[f>>0]|2;break}f=Zv(c[k>>2]|0,0,c[h>>2]|0)|0;c[O>>2]=f;c[(c[h>>2]|0)+16>>2]=f;if((c[O>>2]|0)==0){P=22;break a}if((e[(c[O>>2]|0)+40>>1]|0)==65535){P=24;break a}f=(c[O>>2]|0)+40|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;if((c[(c[O>>2]|0)+12>>2]|0)==0){if((a[(c[O>>2]|0)+44>>0]&16|0)==0){break}}if((vw(c[k>>2]|0,c[O>>2]|0)|0)!=0){P=28;break a}f=Bw(c[n>>2]|0,c[(c[O>>2]|0)+12>>2]|0,0)|0;c[(c[h>>2]|0)+20>>2]=f;Ww(c[Q>>2]|0,c[(c[h>>2]|0)+20>>2]|0)|0}}while(0);if((Nx(c[k>>2]|0,c[h>>2]|0)|0)!=0){P=31;break}}c[B>>2]=(c[B>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+72}if((P|0)==10){Kx(g,c[m>>2]|0);c[z>>2]=1;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==12){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==16){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==22){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==24){f=c[k>>2]|0;c[l>>2]=c[c[O>>2]>>2];bf(f,23928,l);c[(c[h>>2]|0)+16>>2]=0;c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==28){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==31){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==33){if((d[(c[n>>2]|0)+64>>0]|0)==0){if((Ox(c[k>>2]|0,c[m>>2]|0)|0)==0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[c[o>>2]>>2]|0)){break}c[t>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+((c[r>>2]|0)*20|0)>>2];if((d[c[t>>2]>>0]|0)==116){break}if((d[c[t>>2]>>0]|0)==122){if((d[c[(c[t>>2]|0)+16>>2]>>0]|0)==116){break}}c[r>>2]=(c[r>>2]|0)+1}if((c[r>>2]|0)<(c[c[o>>2]>>2]|0)){c[q>>2]=c[(c[o>>2]|0)+4>>2];c[p>>2]=0;c[N>>2]=c[(c[c[k>>2]>>2]|0)+24>>2];if((c[N>>2]&32|0)!=0){N=(c[N>>2]&64|0)==0}else{N=0}c[L>>2]=N&1;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[c[o>>2]>>2]|0)){break}c[t>>2]=c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)>>2];c[s>>2]=c[(c[t>>2]|0)+16>>2];do{if((d[c[t>>2]>>0]|0)!=116){if((d[c[t>>2]>>0]|0)==122){if((d[c[s>>2]>>0]|0)==116){P=53;break}}c[p>>2]=Pu(c[k>>2]|0,c[p>>2]|0,c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)>>2]|0)|0;if((c[p>>2]|0)!=0){c[(c[(c[p>>2]|0)+4>>2]|0)+(((c[c[p>>2]>>2]|0)-1|0)*20|0)+4>>2]=c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)+4>>2];c[(c[(c[p>>2]|0)+4>>2]|0)+(((c[c[p>>2]>>2]|0)-1|0)*20|0)+8>>2]=c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)+8>>2];c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)+4>>2]=0;c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)+8>>2]=0}c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)>>2]=0}else{P=53}}while(0);do{if((P|0)==53){P=0;c[v>>2]=0;c[u>>2]=0;if((d[c[t>>2]>>0]|0)==122){c[u>>2]=c[(c[(c[t>>2]|0)+12>>2]|0)+8>>2]}c[B>>2]=0;c[h>>2]=(c[C>>2]|0)+8;while(1){if((c[B>>2]|0)>=(c[c[C>>2]>>2]|0)){break}c[x>>2]=c[(c[h>>2]|0)+16>>2];c[w>>2]=c[(c[h>>2]|0)+20>>2];c[y>>2]=c[(c[h>>2]|0)+12>>2];c[A>>2]=0;if((c[y>>2]|0)==0){c[y>>2]=c[c[x>>2]>>2]}if((a[(c[n>>2]|0)+64>>0]|0)!=0){break}if((c[w>>2]|0)==0){P=62}else{if((b[(c[w>>2]|0)+6>>1]&512|0)==0){P=62}else{P=67}}do{if((P|0)==62){P=0;c[w>>2]=0;if((c[u>>2]|0)!=0){if((Dc(c[u>>2]|0,c[y>>2]|0)|0)!=0){break}}c[j>>2]=ef(c[n>>2]|0,c[(c[x>>2]|0)+68>>2]|0)|0;if((c[j>>2]|0)>=0){N=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[j>>2]<<4)>>2]|0}else{N=9880}c[A>>2]=N;P=67}}while(0);b:do{if((P|0)==67){P=0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(b[(c[x>>2]|0)+38>>1]|0)){break b}c[F>>2]=c[(c[(c[x>>2]|0)+4>>2]|0)+((c[E>>2]|0)*24|0)>>2];do{if((c[u>>2]|0)!=0){if((c[w>>2]|0)==0){P=72;break}if((Dx(c[(c[(c[c[w>>2]>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)+8>>2]|0,0,c[u>>2]|0,0)|0)!=0){P=72}}else{P=72}}while(0);c:do{if((P|0)==72){P=0;if((a[(c[(c[x>>2]|0)+4>>2]|0)+((c[E>>2]|0)*24|0)+23>>0]&2|0)!=0){break}c[v>>2]=1;do{if((c[B>>2]|0)>0){if((c[u>>2]|0)!=0){break}if((a[(c[h>>2]|0)+36>>0]&4|0)!=0){if((Px(c[C>>2]|0,c[B>>2]|0,c[F>>2]|0,0,0)|0)!=0){break c}}if((Qx(c[(c[h>>2]|0)+48>>2]|0,c[F>>2]|0)|0)>=0){break c}}}while(0);c[s>>2]=Su(c[n>>2]|0,27,c[F>>2]|0)|0;c[I>>2]=c[F>>2];c[G>>2]=0;do{if((c[L>>2]|0)!=0){P=80}else{if((c[c[C>>2]>>2]|0)>1){P=80;break}c[J>>2]=c[s>>2]}}while(0);do{if((P|0)==80){P=0;c[M>>2]=Su(c[n>>2]|0,27,c[y>>2]|0)|0;c[J>>2]=Bu(c[k>>2]|0,122,c[M>>2]|0,c[s>>2]|0,0)|0;if((c[A>>2]|0)!=0){c[M>>2]=Su(c[n>>2]|0,27,c[A>>2]|0)|0;c[J>>2]=Bu(c[k>>2]|0,122,c[M>>2]|0,c[J>>2]|0,0)|0}if((c[L>>2]|0)==0){break}f=c[n>>2]|0;R=c[F>>2]|0;c[l>>2]=c[y>>2];c[l+4>>2]=R;c[I>>2]=cf(f,23968,l)|0;c[G>>2]=c[I>>2]}}while(0);c[p>>2]=Pu(c[k>>2]|0,c[p>>2]|0,c[J>>2]|0)|0;c[K>>2]=c[I>>2];c[K+4>>2]=Ub(c[I>>2]|0)|0;Qu(c[k>>2]|0,c[p>>2]|0,K,0);do{if((c[p>>2]|0)!=0){if((b[(c[m>>2]|0)+6>>1]&512|0)==0){break}c[H>>2]=(c[(c[p>>2]|0)+4>>2]|0)+(((c[c[p>>2]>>2]|0)-1|0)*20|0);N=c[n>>2]|0;if((c[w>>2]|0)!=0){f=pe(N,c[(c[(c[c[w>>2]>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)+8>>2]|0)|0;c[(c[H>>2]|0)+8>>2]=f}else{R=c[y>>2]|0;f=c[I>>2]|0;c[l>>2]=c[A>>2];c[l+4>>2]=R;c[l+8>>2]=f;f=cf(N,23976,l)|0;c[(c[H>>2]|0)+8>>2]=f}f=(c[H>>2]|0)+13|0;a[f>>0]=a[f>>0]&-3|2}}while(0);cc(c[n>>2]|0,c[G>>2]|0)}}while(0);c[E>>2]=(c[E>>2]|0)+1}}}while(0);c[B>>2]=(c[B>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+72}if((c[v>>2]|0)==0){N=c[k>>2]|0;if((c[u>>2]|0)!=0){c[l>>2]=c[u>>2];bf(N,23992,l);break}else{bf(N,24016,l);break}}}}while(0);c[r>>2]=(c[r>>2]|0)+1}cu(c[n>>2]|0,c[o>>2]|0);c[c[m>>2]>>2]=c[p>>2]}if((c[c[m>>2]>>2]|0)!=0){if((c[c[c[m>>2]>>2]>>2]|0)>(c[(c[n>>2]|0)+96>>2]|0)){bf(c[k>>2]|0,24040,l)}}c[z>>2]=0;f=c[z>>2]|0;i=D;return f|0}}c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}}}c[z>>2]=1;f=c[z>>2]|0;i=D;return f|0}function Kx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;h=d+12|0;g=d;f=d+4|0;e=d+8|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=c[(c[h>>2]|0)+12>>2];c[e>>2]=c[(Lx(c[g>>2]|0)|0)+68>>2];if((c[e>>2]|0)==0){i=d;return}c[(c[f>>2]|0)+532>>2]=c[(c[e>>2]|0)+4>>2];i=d;return}function Lx(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;while(1){a=c[d>>2]|0;if((c[(c[d>>2]|0)+56>>2]|0)==0){break}c[d>>2]=c[a+56>>2]}i=b;return a|0}function Mx(f,g){f=f|0;g=g|0;var h=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;o=i;i=i+80|0;r=o;n=o+68|0;l=o+64|0;y=o+60|0;k=o+56|0;z=o+52|0;j=o+48|0;u=o+44|0;q=o+72|0;t=o+32|0;m=o+28|0;p=o+24|0;s=o+20|0;h=o+16|0;x=o+12|0;w=o+36|0;v=o+40|0;c[l>>2]=f;c[y>>2]=g;c[k>>2]=c[(c[l>>2]|0)+12>>2];c[z>>2]=c[c[k>>2]>>2];c[j>>2]=by(c[(c[k>>2]|0)+532>>2]|0,c[y>>2]|0,u)|0;if((c[j>>2]|0)!=0){if((c[(c[j>>2]|0)+12>>2]|0)!=0){z=c[k>>2]|0;f=c[(c[j>>2]|0)+12>>2]|0;c[r>>2]=c[c[j>>2]>>2];bf(z,f,r);c[n>>2]=1;f=c[n>>2]|0;i=o;return f|0}f=ve(c[z>>2]|0,76)|0;c[q>>2]=f;c[(c[y>>2]|0)+16>>2]=f;if((c[q>>2]|0)==0){c[n>>2]=2;f=c[n>>2]|0;i=o;return f|0}b[(c[q>>2]|0)+40>>1]=1;f=pe(c[z>>2]|0,c[c[j>>2]>>2]|0)|0;c[c[q>>2]>>2]=f;b[(c[q>>2]|0)+36>>1]=-1;b[(c[q>>2]|0)+28>>1]=200;f=(c[q>>2]|0)+44|0;a[f>>0]=d[f>>0]|2;f=Bw(c[z>>2]|0,c[(c[j>>2]|0)+8>>2]|0,0)|0;c[(c[y>>2]|0)+20>>2]=f;if((a[(c[z>>2]|0)+64>>0]|0)!=0){c[n>>2]=7;f=c[n>>2]|0;i=o;return f|0}c[m>>2]=c[(c[y>>2]|0)+20>>2];if((d[(c[m>>2]|0)+4>>0]|0)==116){g=1}else{g=(d[(c[m>>2]|0)+4>>0]|0)==115}c[s>>2]=g&1;a:do{if((c[s>>2]|0)!=0){c[w>>2]=c[(c[(c[y>>2]|0)+20>>2]|0)+32>>2];c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[c[w>>2]>>2]|0)){break a}c[v>>2]=(c[w>>2]|0)+8+((c[x>>2]|0)*72|0);if((c[(c[v>>2]|0)+4>>2]|0)==0){if((c[(c[v>>2]|0)+8>>2]|0)!=0){if(0==(Dc(c[(c[v>>2]|0)+8>>2]|0,c[c[j>>2]>>2]|0)|0)){c[(c[v>>2]|0)+16>>2]=c[q>>2];f=(c[v>>2]|0)+37|0;a[f>>0]=a[f>>0]&-9|8;f=(c[q>>2]|0)+40|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;f=(c[m>>2]|0)+6|0;b[f>>1]=e[f>>1]|2048}}}c[x>>2]=(c[x>>2]|0)+1}}}while(0);if((e[(c[q>>2]|0)+40>>1]|0)>2){f=c[k>>2]|0;c[r>>2]=c[c[j>>2]>>2];bf(f,24272,r);c[n>>2]=1;f=c[n>>2]|0;i=o;return f|0}c[(c[j>>2]|0)+12>>2]=24320;c[h>>2]=c[(c[k>>2]|0)+532>>2];c[(c[k>>2]|0)+532>>2]=c[u>>2];u=c[m>>2]|0;if((c[s>>2]|0)!=0){u=c[u+52>>2]|0}Ww(c[l>>2]|0,u)|0;c[p>>2]=c[m>>2];while(1){u=c[p>>2]|0;if((c[(c[p>>2]|0)+52>>2]|0)==0){break}c[p>>2]=c[u+52>>2]}c[t>>2]=c[u>>2];do{if((c[(c[j>>2]|0)+4>>2]|0)!=0){if((c[c[t>>2]>>2]|0)==(c[c[(c[j>>2]|0)+4>>2]>>2]|0)){c[t>>2]=c[(c[j>>2]|0)+4>>2];break}f=c[k>>2]|0;g=c[c[t>>2]>>2]|0;z=c[c[(c[j>>2]|0)+4>>2]>>2]|0;c[r>>2]=c[c[j>>2]>>2];c[r+4>>2]=g;c[r+8>>2]=z;bf(f,24344,r);c[(c[k>>2]|0)+532>>2]=c[h>>2];c[n>>2]=1;f=c[n>>2]|0;i=o;return f|0}}while(0);Fw(c[k>>2]|0,c[t>>2]|0,(c[q>>2]|0)+38|0,(c[q>>2]|0)+4|0)|0;if((c[s>>2]|0)!=0){p=(c[j>>2]|0)+12|0;if((b[(c[m>>2]|0)+6>>1]&2048|0)!=0){c[p>>2]=24384}else{c[p>>2]=24424}Ww(c[l>>2]|0,c[m>>2]|0)|0}c[(c[j>>2]|0)+12>>2]=0;c[(c[k>>2]|0)+532>>2]=c[h>>2]}c[n>>2]=0;f=c[n>>2]|0;i=o;return f|0}function Nx(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;l=f;e=f+28|0;j=f+8|0;h=f+12|0;m=f+16|0;k=f+20|0;g=f+24|0;c[j>>2]=b;c[h>>2]=d;do{if((c[(c[h>>2]|0)+16>>2]|0)!=0){if((c[(c[h>>2]|0)+64>>2]|0)!=0){c[m>>2]=c[(c[h>>2]|0)+16>>2];c[k>>2]=c[(c[h>>2]|0)+64>>2];c[g>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[g>>2]|0)==0){break}if((Dc(c[c[g>>2]>>2]|0,c[k>>2]|0)|0)==0){break}c[g>>2]=c[(c[g>>2]|0)+20>>2]}if((c[g>>2]|0)!=0){c[(c[h>>2]|0)+68>>2]=c[g>>2];break}b=c[j>>2]|0;c[l>>2]=c[k>>2];c[l+4>>2]=0;bf(b,24248,l);a[(c[j>>2]|0)+17>>0]=1;c[e>>2]=1;b=c[e>>2]|0;i=f;return b|0}}}while(0);c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}function Ox(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;f=i;i=i+80|0;h=f;j=f+72|0;g=f+68|0;s=f+64|0;o=f+60|0;r=f+56|0;n=f+52|0;v=f+48|0;x=f+44|0;w=f+40|0;t=f+76|0;l=f+16|0;u=f+12|0;p=f+4|0;q=f+8|0;m=f+32|0;k=f+20|0;z=f+24|0;A=f+28|0;y=f+36|0;c[g>>2]=d;c[s>>2]=e;c[o>>2]=c[(c[s>>2]|0)+32>>2];c[v>>2]=(c[o>>2]|0)+8;c[x>>2]=(c[v>>2]|0)+72;c[r>>2]=0;a:while(1){if((c[r>>2]|0)>=((c[c[o>>2]>>2]|0)-1|0)){l=29;break}c[w>>2]=c[(c[v>>2]|0)+16>>2];c[t>>2]=c[(c[x>>2]|0)+16>>2];b:do{if((c[w>>2]|0)!=0){if((c[t>>2]|0)!=0){c[l>>2]=(a[(c[x>>2]|0)+36>>0]&32|0)!=0&1;c:do{if((a[(c[x>>2]|0)+36>>0]&4|0)!=0){if((c[(c[x>>2]|0)+44>>2]|0)!=0){l=8;break a}if((c[(c[x>>2]|0)+48>>2]|0)!=0){l=8;break a}c[n>>2]=0;while(1){if((c[n>>2]|0)>=(b[(c[t>>2]|0)+38>>1]|0)){break c}c[u>>2]=c[(c[(c[t>>2]|0)+4>>2]|0)+((c[n>>2]|0)*24|0)>>2];if((Px(c[o>>2]|0,(c[r>>2]|0)+1|0,c[u>>2]|0,p,q)|0)!=0){Sx(c[g>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,(c[r>>2]|0)+1|0,c[n>>2]|0,c[l>>2]|0,(c[s>>2]|0)+36|0)}c[n>>2]=(c[n>>2]|0)+1}}}while(0);if((c[(c[x>>2]|0)+44>>2]|0)!=0){if((c[(c[x>>2]|0)+48>>2]|0)!=0){l=16;break a}}if((c[(c[x>>2]|0)+44>>2]|0)!=0){if((c[l>>2]|0)!=0){Tx(c[(c[x>>2]|0)+44>>2]|0,c[(c[x>>2]|0)+40>>2]|0)}d=Ux(c[c[g>>2]>>2]|0,c[(c[s>>2]|0)+36>>2]|0,c[(c[x>>2]|0)+44>>2]|0)|0;c[(c[s>>2]|0)+36>>2]=d;c[(c[x>>2]|0)+44>>2]=0}if((c[(c[x>>2]|0)+48>>2]|0)!=0){c[m>>2]=c[(c[x>>2]|0)+48>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[(c[m>>2]|0)+4>>2]|0)){break b}c[k>>2]=c[(c[c[m>>2]>>2]|0)+(c[n>>2]<<3)>>2];c[y>>2]=Rx(c[t>>2]|0,c[k>>2]|0)|0;if((c[y>>2]|0)<0){l=26;break a}if((Px(c[o>>2]|0,(c[r>>2]|0)+1|0,c[k>>2]|0,z,A)|0)==0){l=26;break a}Sx(c[g>>2]|0,c[o>>2]|0,c[z>>2]|0,c[A>>2]|0,(c[r>>2]|0)+1|0,c[y>>2]|0,c[l>>2]|0,(c[s>>2]|0)+36|0);c[n>>2]=(c[n>>2]|0)+1}}}}}while(0);c[r>>2]=(c[r>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+72;c[v>>2]=(c[v>>2]|0)+72}if((l|0)==8){d=c[g>>2]|0;c[h>>2]=0;bf(d,24072,h);c[j>>2]=1;d=c[j>>2]|0;i=f;return d|0}else if((l|0)==16){bf(c[g>>2]|0,24128,h);c[j>>2]=1;d=c[j>>2]|0;i=f;return d|0}else if((l|0)==26){d=c[g>>2]|0;c[h>>2]=c[k>>2];bf(d,24184,h);c[j>>2]=1;d=c[j>>2]|0;i=f;return d|0}else if((l|0)==29){c[j>>2]=0;d=c[j>>2]|0;i=f;return d|0}return 0}function Px(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;o=j+28|0;g=j;q=j+4|0;p=j+8|0;l=j+12|0;n=j+16|0;k=j+20|0;m=j+24|0;c[g>>2]=a;c[q>>2]=b;c[p>>2]=d;c[l>>2]=e;c[n>>2]=f;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[q>>2]|0)){h=8;break}c[m>>2]=Rx(c[(c[g>>2]|0)+8+((c[k>>2]|0)*72|0)+16>>2]|0,c[p>>2]|0)|0;if((c[m>>2]|0)>=0){break}c[k>>2]=(c[k>>2]|0)+1}if((h|0)==8){c[o>>2]=0;a=c[o>>2]|0;i=j;return a|0}if((c[l>>2]|0)!=0){c[c[l>>2]>>2]=c[k>>2];c[c[n>>2]>>2]=c[m>>2]}c[o>>2]=1;a=c[o>>2]|0;i=j;return a|0}function Qx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d;h=d+4|0;g=d+8|0;c[f>>2]=a;c[h>>2]=b;if((c[f>>2]|0)==0){c[e>>2]=-1;a=c[e>>2]|0;i=d;return a|0}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0)){f=8;break}a=(Dc(c[(c[c[f>>2]>>2]|0)+(c[g>>2]<<3)>>2]|0,c[h>>2]|0)|0)==0;b=c[g>>2]|0;if(a){f=6;break}c[g>>2]=b+1}if((f|0)==6){c[e>>2]=b;a=c[e>>2]|0;i=d;return a|0}else if((f|0)==8){c[e>>2]=-1;a=c[e>>2]|0;i=d;return a|0}return 0}function Rx(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+12|0;g=f;j=f+4|0;h=f+8|0;c[g>>2]=a;c[j>>2]=d;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(b[(c[g>>2]|0)+38>>1]|0)){g=6;break}a=(Dc(c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*24|0)>>2]|0,c[j>>2]|0)|0)==0;d=c[h>>2]|0;if(a){g=4;break}c[h>>2]=d+1}if((g|0)==4){c[e>>2]=d;a=c[e>>2]|0;i=f;return a|0}else if((g|0)==6){c[e>>2]=-1;a=c[e>>2]|0;i=f;return a|0}return 0}function Sx(a,d,e,f,g,h,j,k){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;n=i;i=i+48|0;s=n+44|0;v=n+40|0;x=n+36|0;w=n+32|0;u=n+28|0;t=n+24|0;p=n+20|0;l=n+12|0;q=n+8|0;r=n+4|0;o=n;m=n+16|0;c[s>>2]=a;c[v>>2]=d;c[x>>2]=e;c[w>>2]=f;c[u>>2]=g;c[t>>2]=h;c[p>>2]=j;c[l>>2]=k;c[q>>2]=c[c[s>>2]>>2];c[r>>2]=ay(c[q>>2]|0,c[v>>2]|0,c[x>>2]|0,c[w>>2]|0)|0;c[o>>2]=ay(c[q>>2]|0,c[v>>2]|0,c[u>>2]|0,c[t>>2]|0)|0;c[m>>2]=Bu(c[s>>2]|0,79,c[r>>2]|0,c[o>>2]|0,0)|0;if((c[m>>2]|0)!=0){if((c[p>>2]|0)!=0){x=(c[m>>2]|0)+4|0;c[x>>2]=c[x>>2]|1;b[(c[m>>2]|0)+36>>1]=c[(c[o>>2]|0)+28>>2]}}x=Ux(c[q>>2]|0,c[c[l>>2]>>2]|0,c[m>>2]|0)|0;c[c[l>>2]>>2]=x;i=n;return}function Tx(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=d;while(1){if((c[f>>2]|0)==0){break}a=(c[f>>2]|0)+4|0;c[a>>2]=c[a>>2]|1;b[(c[f>>2]|0)+36>>1]=c[g>>2];Tx(c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0);c[f>>2]=c[(c[f>>2]|0)+16>>2]}i=e;return}function Ux(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;f=j+16|0;g=j;e=j+4|0;k=j+8|0;h=j+12|0;c[g>>2]=a;c[e>>2]=b;c[k>>2]=d;d=c[k>>2]|0;if((c[e>>2]|0)==0){c[f>>2]=d;a=c[f>>2]|0;i=j;return a|0}b=c[e>>2]|0;if((d|0)==0){c[f>>2]=b;a=c[f>>2]|0;i=j;return a|0}if((Vx(b)|0)==0){if((Vx(c[k>>2]|0)|0)==0){c[h>>2]=Wx(c[g>>2]|0,72,0,0)|0;Xx(c[g>>2]|0,c[h>>2]|0,c[e>>2]|0,c[k>>2]|0);c[f>>2]=c[h>>2];a=c[f>>2]|0;i=j;return a|0}}gu(c[g>>2]|0,c[e>>2]|0);gu(c[g>>2]|0,c[k>>2]|0);c[f>>2]=Wx(c[g>>2]|0,132,16680,0)|0;a=c[f>>2]|0;i=j;return a|0}function Vx(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;f=b;e=b+4|0;c[f>>2]=a;c[e>>2]=0;do{if((c[(c[f>>2]|0)+4>>2]&1|0)!=0){c[d>>2]=0}else{if((ex(c[f>>2]|0,e)|0)!=0){c[d>>2]=(c[e>>2]|0)==0&1;break}else{c[d>>2]=0;break}}}while(0);i=b;return c[d>>2]|0}function Wx(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;q=h+28|0;p=h;k=h+4|0;l=h+8|0;n=h+12|0;m=h+16|0;j=h+20|0;o=h+24|0;c[q>>2]=d;c[p>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=0;c[j>>2]=0;do{if((c[k>>2]|0)!=0){if((c[p>>2]|0)==132){if((c[c[k>>2]>>2]|0)!=0){if((Wg(c[c[k>>2]>>2]|0,j)|0)!=0){break}}}c[m>>2]=(c[(c[k>>2]|0)+4>>2]|0)+1}}while(0);c[n>>2]=ve(c[q>>2]|0,48+(c[m>>2]|0)|0)|0;if((c[n>>2]|0)==0){d=c[n>>2]|0;i=h;return d|0}a[c[n>>2]>>0]=c[p>>2];b[(c[n>>2]|0)+34>>1]=-1;do{if((c[k>>2]|0)!=0){p=c[n>>2]|0;if((c[m>>2]|0)==0){d=p+4|0;c[d>>2]=c[d>>2]|1024;c[(c[n>>2]|0)+8>>2]=c[j>>2];break}c[(c[n>>2]|0)+8>>2]=p+48;if((c[(c[k>>2]|0)+4>>2]|0)!=0){fL(c[(c[n>>2]|0)+8>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0}a[(c[(c[n>>2]|0)+8>>2]|0)+(c[(c[k>>2]|0)+4>>2]|0)>>0]=0;if((c[l>>2]|0)!=0){if((c[m>>2]|0)>=3){d=a[c[c[k>>2]>>2]>>0]|0;c[o>>2]=d;if((d|0)!=39){if(!((c[o>>2]|0)==34|(c[o>>2]|0)==91|(c[o>>2]|0)==96)){break}}gt(c[(c[n>>2]|0)+8>>2]|0)|0;if((c[o>>2]|0)==34){d=(c[n>>2]|0)+4|0;c[d>>2]=c[d>>2]|64}}}}}while(0);c[(c[n>>2]|0)+24>>2]=1;d=c[n>>2]|0;i=h;return d|0}function Xx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;h=f+12|0;k=f;j=f+4|0;g=f+8|0;c[h>>2]=a;c[k>>2]=b;c[j>>2]=d;c[g>>2]=e;if((c[k>>2]|0)==0){gu(c[h>>2]|0,c[j>>2]|0);gu(c[h>>2]|0,c[g>>2]|0);i=f;return}if((c[g>>2]|0)!=0){c[(c[k>>2]|0)+16>>2]=c[g>>2];a=(c[k>>2]|0)+4|0;c[a>>2]=c[a>>2]|256&c[(c[g>>2]|0)+4>>2]}if((c[j>>2]|0)!=0){c[(c[k>>2]|0)+12>>2]=c[j>>2];a=(c[k>>2]|0)+4|0;c[a>>2]=c[a>>2]|256&c[(c[j>>2]|0)+4>>2]}Yx(c[k>>2]|0);i=f;return}function Yx(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=0;Zx(c[(c[d>>2]|0)+12>>2]|0,e);Zx(c[(c[d>>2]|0)+16>>2]|0,e);a=(c[d>>2]|0)+20|0;if((c[(c[d>>2]|0)+4>>2]&2048|0)!=0){_x(c[a>>2]|0,e)}else{$x(c[a>>2]|0,e)}c[(c[d>>2]|0)+24>>2]=(c[e>>2]|0)+1;i=b;return}function Zx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[e>>2]|0)==0){i=d;return}if((c[(c[e>>2]|0)+24>>2]|0)<=(c[c[f>>2]>>2]|0)){i=d;return}c[c[f>>2]>>2]=c[(c[e>>2]|0)+24>>2];i=d;return}function _x(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[e>>2]|0)==0){i=d;return}Zx(c[(c[e>>2]|0)+36>>2]|0,c[f>>2]|0);Zx(c[(c[e>>2]|0)+44>>2]|0,c[f>>2]|0);Zx(c[(c[e>>2]|0)+60>>2]|0,c[f>>2]|0);Zx(c[(c[e>>2]|0)+64>>2]|0,c[f>>2]|0);$x(c[c[e>>2]>>2]|0,c[f>>2]|0);$x(c[(c[e>>2]|0)+40>>2]|0,c[f>>2]|0);$x(c[(c[e>>2]|0)+48>>2]|0,c[f>>2]|0);_x(c[(c[e>>2]|0)+52>>2]|0,c[f>>2]|0);i=d;return}function $x(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;if((c[f>>2]|0)==0){i=d;return}c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[c[f>>2]>>2]|0)){break}Zx(c[(c[(c[f>>2]|0)+4>>2]|0)+((c[e>>2]|0)*20|0)>>2]|0,c[g>>2]|0);c[e>>2]=(c[e>>2]|0)+1}i=d;return}function ay(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;n=g+20|0;l=g;m=g+4|0;j=g+8|0;h=g+12|0;k=g+16|0;c[n>>2]=a;c[l>>2]=d;c[m>>2]=e;c[j>>2]=f;c[h>>2]=Wx(c[n>>2]|0,154,0,0)|0;if((c[h>>2]|0)==0){n=c[h>>2]|0;i=g;return n|0}c[k>>2]=(c[l>>2]|0)+8+((c[m>>2]|0)*72|0);c[(c[h>>2]|0)+44>>2]=c[(c[k>>2]|0)+16>>2];c[(c[h>>2]|0)+28>>2]=c[(c[k>>2]|0)+40>>2];if((b[(c[(c[h>>2]|0)+44>>2]|0)+36>>1]|0)==(c[j>>2]|0)){b[(c[h>>2]|0)+32>>1]=-1}else{b[(c[h>>2]|0)+32>>1]=c[j>>2];d=bL(1,0,((c[j>>2]|0)>=64?63:c[j>>2]|0)|0)|0;n=(c[k>>2]|0)+56|0;e=n;a=c[e+4>>2]|D;c[n>>2]=c[e>>2]|d;c[n+4>>2]=a}n=(c[h>>2]|0)+4|0;c[n>>2]=c[n>>2]|4;n=c[h>>2]|0;i=g;return n|0}function by(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;j=f+24|0;l=f;m=f+4|0;k=f+8|0;e=f+12|0;h=f+16|0;g=f+20|0;c[l>>2]=a;c[m>>2]=b;c[k>>2]=d;a:do{if((c[(c[m>>2]|0)+4>>2]|0)==0){a=c[(c[m>>2]|0)+8>>2]|0;c[e>>2]=a;if((a|0)!=0){c[h>>2]=c[l>>2];b:while(1){if((c[h>>2]|0)==0){break a}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[c[h>>2]>>2]|0)){break}if((Dc(c[e>>2]|0,c[(c[h>>2]|0)+8+(c[g>>2]<<4)>>2]|0)|0)==0){break b}c[g>>2]=(c[g>>2]|0)+1}c[h>>2]=c[(c[h>>2]|0)+4>>2]}c[c[k>>2]>>2]=c[h>>2];c[j>>2]=(c[h>>2]|0)+8+(c[g>>2]<<4);a=c[j>>2]|0;i=f;return a|0}}}while(0);c[j>>2]=0;a=c[j>>2]|0;i=f;return a|0}function cy(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=i;i=i+48|0;n=o+36|0;p=o+32|0;h=o+28|0;r=o+24|0;k=o+20|0;l=o+16|0;s=o+8|0;m=o+4|0;j=o;q=o+12|0;c[p>>2]=e;c[h>>2]=f;c[r>>2]=g;if((c[h>>2]|0)==0){c[n>>2]=0;e=c[n>>2]|0;i=o;return e|0}if((c[c[h>>2]>>2]|0)>0){g=((c[c[h>>2]>>2]|0)-1|0)*72|0}else{g=0}c[s>>2]=80+g;c[k>>2]=$e(c[p>>2]|0,c[s>>2]|0)|0;if((c[k>>2]|0)==0){c[n>>2]=0;e=c[n>>2]|0;i=o;return e|0}e=c[c[h>>2]>>2]|0;c[(c[k>>2]|0)+4>>2]=e;c[c[k>>2]>>2]=e;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[c[h>>2]>>2]|0)){break}c[m>>2]=(c[k>>2]|0)+8+((c[l>>2]|0)*72|0);c[j>>2]=(c[h>>2]|0)+8+((c[l>>2]|0)*72|0);c[c[m>>2]>>2]=c[c[j>>2]>>2];e=pe(c[p>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;c[(c[m>>2]|0)+4>>2]=e;e=pe(c[p>>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0;c[(c[m>>2]|0)+8>>2]=e;e=pe(c[p>>2]|0,c[(c[j>>2]|0)+12>>2]|0)|0;c[(c[m>>2]|0)+12>>2]=e;a[(c[m>>2]|0)+36>>0]=a[(c[j>>2]|0)+36>>0]|0;c[(c[m>>2]|0)+40>>2]=c[(c[j>>2]|0)+40>>2];c[(c[m>>2]|0)+24>>2]=c[(c[j>>2]|0)+24>>2];c[(c[m>>2]|0)+28>>2]=c[(c[j>>2]|0)+28>>2];e=(c[m>>2]|0)+37|0;a[e>>0]=a[e>>0]&-3|((d[(c[j>>2]|0)+37>>0]|0)>>>1&1&1)<<1&255;e=(c[m>>2]|0)+37|0;a[e>>0]=a[e>>0]&-5|((d[(c[j>>2]|0)+37>>0]|0)>>>2&1&1)<<2&255;e=(c[m>>2]|0)+37|0;a[e>>0]=a[e>>0]&-9|((d[(c[j>>2]|0)+37>>0]|0)>>>3&1&1)<<3&255;e=pe(c[p>>2]|0,c[(c[j>>2]|0)+64>>2]|0)|0;c[(c[m>>2]|0)+64>>2]=e;e=(c[m>>2]|0)+37|0;a[e>>0]=a[e>>0]&-2|a[(c[j>>2]|0)+37>>0]&1&1;c[(c[m>>2]|0)+68>>2]=c[(c[j>>2]|0)+68>>2];e=c[(c[j>>2]|0)+16>>2]|0;c[(c[m>>2]|0)+16>>2]=e;c[q>>2]=e;if((c[q>>2]|0)!=0){e=(c[q>>2]|0)+40|0;b[e>>1]=(b[e>>1]|0)+1<<16>>16}g=Bw(c[p>>2]|0,c[(c[j>>2]|0)+20>>2]|0,c[r>>2]|0)|0;c[(c[m>>2]|0)+20>>2]=g;g=hx(c[p>>2]|0,c[(c[j>>2]|0)+44>>2]|0,c[r>>2]|0)|0;c[(c[m>>2]|0)+44>>2]=g;g=ey(c[p>>2]|0,c[(c[j>>2]|0)+48>>2]|0)|0;c[(c[m>>2]|0)+48>>2]=g;g=(c[j>>2]|0)+56|0;f=c[g+4>>2]|0;e=(c[m>>2]|0)+56|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[l>>2]=(c[l>>2]|0)+1}c[n>>2]=c[k>>2];e=c[n>>2]|0;i=o;return e|0}function dy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;h=d+16|0;g=d;e=d+4|0;j=d+8|0;f=d+12|0;c[h>>2]=a;c[g>>2]=b;c[e>>2]=0;if((c[g>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[j>>2]=24+((c[c[g>>2]>>2]|0)-1<<4);c[e>>2]=ve(c[h>>2]|0,c[j>>2]|0)|0;if((c[e>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[c[e>>2]>>2]=c[c[g>>2]>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[g>>2]>>2]|0)){break}a=Bw(c[h>>2]|0,c[(c[g>>2]|0)+8+(c[f>>2]<<4)+8>>2]|0,0)|0;c[(c[e>>2]|0)+8+(c[f>>2]<<4)+8>>2]=a;a=px(c[h>>2]|0,c[(c[g>>2]|0)+8+(c[f>>2]<<4)+4>>2]|0,0)|0;c[(c[e>>2]|0)+8+(c[f>>2]<<4)+4>>2]=a;a=pe(c[h>>2]|0,c[(c[g>>2]|0)+8+(c[f>>2]<<4)>>2]|0)|0;c[(c[e>>2]|0)+8+(c[f>>2]<<4)>>2]=a;c[f>>2]=(c[f>>2]|0)+1}a=c[e>>2]|0;i=d;return a|0}function ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+24|0;f=d;j=d+4|0;g=d+8|0;h=d+12|0;k=d+16|0;l=d+20|0;c[f>>2]=a;c[j>>2]=b;if((c[j>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[g>>2]=$e(c[f>>2]|0,8)|0;if((c[g>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[(c[g>>2]|0)+4>>2]=c[(c[j>>2]|0)+4>>2];a=$e(c[f>>2]|0,c[(c[j>>2]|0)+4>>2]<<3)|0;c[c[g>>2]>>2]=a;if((c[c[g>>2]>>2]|0)==0){cc(c[f>>2]|0,c[g>>2]|0);c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[j>>2]|0)+4>>2]|0)){break}c[k>>2]=(c[c[g>>2]>>2]|0)+(c[h>>2]<<3);c[l>>2]=(c[c[j>>2]>>2]|0)+(c[h>>2]<<3);a=pe(c[f>>2]|0,c[c[l>>2]>>2]|0)|0;c[c[k>>2]>>2]=a;c[(c[k>>2]|0)+4>>2]=c[(c[l>>2]|0)+4>>2];c[h>>2]=(c[h>>2]|0)+1}c[e>>2]=c[g>>2];a=c[e>>2]|0;i=d;return a|0}function fy(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;s=i;i=i+112|0;p=s;k=s+92|0;m=s+88|0;v=s+84|0;C=s+80|0;G=s+76|0;q=s+72|0;D=s+64|0;F=s+56|0;o=s+52|0;n=s+48|0;I=s+96|0;H=s+20|0;r=s+16|0;l=s+4|0;E=s+8|0;u=s+12|0;B=s+40|0;y=s+24|0;x=s+28|0;w=s+32|0;t=s+36|0;z=s+44|0;c[m>>2]=e;c[v>>2]=f;c[C>>2]=g;c[G>>2]=h;c[q>>2]=j;c[I>>2]=c[(c[v>>2]|0)+56>>2];c[H>>2]=c[(c[v>>2]|0)+52>>2];c[r>>2]=0;e=c[m>>2]|0;c[p>>2]=c[c[v>>2]>>2];c[l>>2]=cf(e,1768,p)|0;if((c[l>>2]|0)==0){c[k>>2]=7;e=c[k>>2]|0;i=s;return e|0}c[o>>2]=ve(c[m>>2]|0,28)|0;j=c[m>>2]|0;if((c[o>>2]|0)==0){cc(j,c[l>>2]|0);c[k>>2]=7;e=c[k>>2]|0;i=s;return e|0}c[c[o>>2]>>2]=j;c[(c[o>>2]|0)+4>>2]=c[C>>2];c[E>>2]=ef(c[m>>2]|0,c[(c[v>>2]|0)+68>>2]|0)|0;c[(c[(c[v>>2]|0)+56>>2]|0)+4>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[E>>2]<<4)>>2];c[D+4>>2]=c[v>>2];c[D>>2]=c[o>>2];c[F>>2]=c[(c[m>>2]|0)+316>>2];c[(c[m>>2]|0)+316>>2]=D;c[n>>2]=tb[c[G>>2]&15](c[m>>2]|0,c[(c[C>>2]|0)+8>>2]|0,c[H>>2]|0,c[I>>2]|0,(c[o>>2]|0)+8|0,r)|0;c[(c[m>>2]|0)+316>>2]=c[F>>2];if((c[n>>2]|0)==7){a[(c[m>>2]|0)+64>>0]=1}a:do{if(0!=(c[n>>2]|0)){t=c[m>>2]|0;if((c[r>>2]|0)==0){c[p>>2]=c[l>>2];e=cf(t,24488,p)|0;c[c[q>>2]>>2]=e}else{c[p>>2]=c[r>>2];e=cf(t,1768,p)|0;c[c[q>>2]>>2]=e;oc(c[r>>2]|0)}cc(c[m>>2]|0,c[o>>2]|0)}else{if((c[(c[o>>2]|0)+8>>2]|0)!=0){c[c[(c[o>>2]|0)+8>>2]>>2]=c[c[C>>2]>>2];c[(c[o>>2]|0)+12>>2]=1;if((c[D+4>>2]|0)!=0){c[u>>2]=24520;f=c[m>>2]|0;e=c[u>>2]|0;c[p>>2]=c[c[v>>2]>>2];e=cf(f,e,p)|0;c[c[q>>2]>>2]=e;Cr(c[o>>2]|0);c[n>>2]=1;break}c[(c[o>>2]|0)+24>>2]=c[(c[v>>2]|0)+60>>2];c[(c[v>>2]|0)+60>>2]=c[o>>2];c[B>>2]=0;while(1){if((c[B>>2]|0)>=(b[(c[v>>2]|0)+38>>1]|0)){break a}c[y>>2]=c[(c[(c[v>>2]|0)+4>>2]|0)+((c[B>>2]|0)*24|0)+12>>2];c[w>>2]=0;if((c[y>>2]|0)!=0){c[x>>2]=Ub(c[y>>2]|0)|0;if((Tb(24568,c[y>>2]|0,6)|0)!=0){A=21}else{if((a[(c[y>>2]|0)+6>>0]|0)!=0){if((a[(c[y>>2]|0)+6>>0]|0)!=32){A=21}}}b:do{if((A|0)==21){A=0;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[x>>2]|0)){break b}if(0==(Tb(24576,(c[y>>2]|0)+(c[w>>2]|0)|0,7)|0)){if((a[(c[y>>2]|0)+((c[w>>2]|0)+7)>>0]|0)==0){break}if((a[(c[y>>2]|0)+((c[w>>2]|0)+7)>>0]|0)==32){break}}c[w>>2]=(c[w>>2]|0)+1}c[w>>2]=(c[w>>2]|0)+1}}while(0);if((c[w>>2]|0)<(c[x>>2]|0)){c[z>>2]=6+((a[(c[y>>2]|0)+((c[w>>2]|0)+6)>>0]|0)!=0?1:0);c[t>>2]=c[w>>2];while(1){if(((c[t>>2]|0)+(c[z>>2]|0)|0)>(c[x>>2]|0)){break}a[(c[y>>2]|0)+(c[t>>2]|0)>>0]=a[(c[y>>2]|0)+((c[t>>2]|0)+(c[z>>2]|0))>>0]|0;c[t>>2]=(c[t>>2]|0)+1}if((a[(c[y>>2]|0)+(c[w>>2]|0)>>0]|0)==0){if((c[w>>2]|0)>0){a[(c[y>>2]|0)+((c[w>>2]|0)-1)>>0]=0}}e=(c[(c[v>>2]|0)+4>>2]|0)+((c[B>>2]|0)*24|0)+23|0;a[e>>0]=d[e>>0]|2}}c[B>>2]=(c[B>>2]|0)+1}}}}while(0);cc(c[m>>2]|0,c[l>>2]|0);c[k>>2]=c[n>>2];e=c[k>>2]|0;i=s;return e|0}function gy(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;d=e;g=e+4|0;c[f>>2]=b;c[d>>2]=0;c[g>>2]=c[c[f>>2]>>2];if((a[(c[g>>2]|0)+137>>0]|0)==0){c[d>>2]=Fy(c[g>>2]|0,(c[f>>2]|0)+4|0)|0}if((c[d>>2]|0)==0){g=c[d>>2]|0;i=e;return g|0}c[(c[f>>2]|0)+12>>2]=c[d>>2];g=(c[f>>2]|0)+64|0;c[g>>2]=(c[g>>2]|0)+1;g=c[d>>2]|0;i=e;return g|0}function hy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+48|0;d=f+32|0;e=f+28|0;n=f+24|0;m=f+20|0;g=f+16|0;j=f+8|0;k=f+4|0;l=f;h=f+12|0;c[d>>2]=a;c[e>>2]=b;c[n>>2]=c[c[d>>2]>>2];c[m>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[e>>2]<<4)+12>>2];$v(c[d>>2]|0,0,c[e>>2]|0);c[j>>2]=c[(c[d>>2]|0)+68>>2];a=(c[d>>2]|0)+68|0;c[a>>2]=(c[a>>2]|0)+3;ly(c[d>>2]|0,c[e>>2]|0,c[j>>2]|0,0,0);c[k>>2]=(c[(c[d>>2]|0)+72>>2]|0)+1;c[l>>2]=c[(c[d>>2]|0)+68>>2];c[g>>2]=c[(c[m>>2]|0)+16>>2];while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[(c[g>>2]|0)+8>>2];my(c[d>>2]|0,c[h>>2]|0,0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0);c[g>>2]=c[c[g>>2]>>2]}ny(c[d>>2]|0,c[e>>2]|0);i=f;return}function iy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+12|0;h=e;d=e+4|0;f=e+8|0;c[g>>2]=a;c[h>>2]=b;c[f>>2]=Iv(c[g>>2]|0,c[h>>2]|0)|0;c[d>>2]=xg(c[g>>2]|0,c[f>>2]|0)|0;cc(c[g>>2]|0,c[f>>2]|0);i=e;return c[d>>2]|0}function jy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;g=k+16|0;e=k;j=k+4|0;f=k+8|0;h=k+12|0;c[g>>2]=a;c[e>>2]=b;c[j>>2]=d;c[f>>2]=ef(c[c[g>>2]>>2]|0,c[(c[e>>2]|0)+68>>2]|0)|0;$v(c[g>>2]|0,0,c[f>>2]|0);c[h>>2]=c[(c[g>>2]|0)+68>>2];a=(c[g>>2]|0)+68|0;c[a>>2]=(c[a>>2]|0)+3;a=c[g>>2]|0;b=c[f>>2]|0;d=c[h>>2]|0;if((c[j>>2]|0)!=0){ly(a,b,d,c[c[j>>2]>>2]|0,24680)}else{ly(a,b,d,c[c[e>>2]>>2]|0,24688)}my(c[g>>2]|0,c[e>>2]|0,c[j>>2]|0,c[h>>2]|0,(c[(c[g>>2]|0)+72>>2]|0)+1|0,c[(c[g>>2]|0)+68>>2]|0);ny(c[g>>2]|0,c[f>>2]|0);i=k;return}function ky(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=i;i=i+32|0;k=m;l=m+28|0;p=m+4|0;n=m+8|0;o=m+12|0;h=m+16|0;r=m+20|0;q=m+24|0;c[p>>2]=b;c[n>>2]=e;c[o>>2]=f;c[h>>2]=g;c[q>>2]=c[c[p>>2]>>2];if((c[o>>2]|0)!=0){if((c[(c[o>>2]|0)+4>>2]|0)>>>0>0){if((a[(c[q>>2]|0)+137>>0]|0)!=0){bf(c[p>>2]|0,24632,k);b=(c[p>>2]|0)+64|0;c[b>>2]=(c[b>>2]|0)+1;c[l>>2]=-1;b=c[l>>2]|0;i=m;return b|0}c[c[h>>2]>>2]=c[o>>2];c[r>>2]=iy(c[q>>2]|0,c[n>>2]|0)|0;if((c[r>>2]|0)<0){b=c[p>>2]|0;c[k>>2]=c[n>>2];bf(b,24656,k);b=(c[p>>2]|0)+64|0;c[b>>2]=(c[b>>2]|0)+1;c[l>>2]=-1;b=c[l>>2]|0;i=m;return b|0}}else{j=7}}else{j=7}if((j|0)==7){c[r>>2]=d[(c[q>>2]|0)+136>>0]|0;c[c[h>>2]>>2]=c[n>>2]}c[l>>2]=c[r>>2];b=c[l>>2]|0;i=m;return b|0}function ly(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=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;r=i;i=i+80|0;s=r;p=r+64|0;n=r+60|0;l=r+56|0;u=r+52|0;w=r+48|0;j=r+40|0;v=r+68|0;h=r+32|0;k=r+28|0;m=r+16|0;o=r+72|0;q=r+44|0;t=r+36|0;c[p>>2]=b;c[n>>2]=d;c[l>>2]=e;c[u>>2]=f;c[w>>2]=g;c[v>>2]=c[c[p>>2]>>2];c[k>>2]=Ov(c[p>>2]|0)|0;if((c[k>>2]|0)==0){i=r;return}c[h>>2]=(c[(c[v>>2]|0)+16>>2]|0)+(c[n>>2]<<4);c[j>>2]=0;while(1){if((c[j>>2]|0)>=3){break}c[q>>2]=c[24888+(c[j>>2]<<3)>>2];b=cw(c[v>>2]|0,c[q>>2]|0,c[c[h>>2]>>2]|0)|0;c[t>>2]=b;do{if((b|0)==0){if((c[24892+(c[j>>2]<<3)>>2]|0)!=0){b=c[p>>2]|0;e=c[q>>2]|0;d=c[24892+(c[j>>2]<<3)>>2]|0;c[s>>2]=c[c[h>>2]>>2];c[s+4>>2]=e;c[s+8>>2]=d;Nv(b,24976,s);c[m+(c[j>>2]<<2)>>2]=c[(c[p>>2]|0)+388>>2];a[o+(c[j>>2]|0)>>0]=2}}else{c[m+(c[j>>2]<<2)>>2]=c[(c[t>>2]|0)+32>>2];a[o+(c[j>>2]|0)>>0]=0;py(c[p>>2]|0,c[n>>2]|0,c[m+(c[j>>2]<<2)>>2]|0,1,c[q>>2]|0);if((c[u>>2]|0)!=0){b=c[p>>2]|0;f=c[q>>2]|0;e=c[w>>2]|0;d=c[u>>2]|0;c[s>>2]=c[c[h>>2]>>2];c[s+4>>2]=f;c[s+8>>2]=e;c[s+12>>2]=d;Nv(b,25e3,s);break}else{Qv(c[k>>2]|0,115,c[m+(c[j>>2]<<2)>>2]|0,c[n>>2]|0)|0;break}}}while(0);c[j>>2]=(c[j>>2]|0)+1}c[j>>2]=0;while(1){if((c[24892+(c[j>>2]<<3)>>2]|0)==0){break}ff(c[k>>2]|0,53,(c[l>>2]|0)+(c[j>>2]|0)|0,c[m+(c[j>>2]<<2)>>2]|0,c[n>>2]|0,3)|0;gf(c[k>>2]|0,a[o+(c[j>>2]|0)>>0]|0);c[j>>2]=(c[j>>2]|0)+1}i=r;return}function my(b,f,g,h,j,k){b=b|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;G=i;i=i+128|0;K=G+84|0;O=G+60|0;x=G+64|0;u=G+68|0;Q=G+72|0;P=G+76|0;F=G+80|0;y=G+88|0;C=G+92|0;o=G+96|0;n=G+100|0;l=G+104|0;q=G+108|0;M=G+112|0;w=G+116|0;v=G+56|0;B=G+20|0;I=G;t=G+4|0;s=G+8|0;r=G+12|0;p=G+16|0;H=G+24|0;A=G+28|0;z=G+32|0;E=G+36|0;J=G+40|0;D=G+44|0;N=G+48|0;L=G+52|0;c[K>>2]=b;c[O>>2]=f;c[x>>2]=g;c[u>>2]=h;c[Q>>2]=j;c[P>>2]=k;c[F>>2]=c[c[K>>2]>>2];c[q>>2]=-1;a[w>>0]=1;b=c[Q>>2]|0;c[Q>>2]=b+1;c[v>>2]=b;b=c[Q>>2]|0;c[Q>>2]=b+1;c[B>>2]=b;b=c[Q>>2]|0;c[Q>>2]=b+1;c[I>>2]=b;b=c[Q>>2]|0;c[Q>>2]=b+1;c[t>>2]=b;b=c[Q>>2]|0;c[Q>>2]=b+1;c[s>>2]=b;b=c[Q>>2]|0;c[Q>>2]=b+1;c[r>>2]=b;b=c[Q>>2]|0;c[Q>>2]=b+1;c[p>>2]=b;c[H>>2]=c[Q>>2];if((c[(c[K>>2]|0)+72>>2]|0)>(c[Q>>2]|0)){f=c[(c[K>>2]|0)+72>>2]|0}else{f=c[Q>>2]|0}c[(c[K>>2]|0)+72>>2]=f;c[n>>2]=Ov(c[K>>2]|0)|0;if((c[n>>2]|0)==0){i=G;return}if((c[O>>2]|0)==0){i=G;return}if((c[(c[O>>2]|0)+32>>2]|0)==0){i=G;return}if((Tb(c[c[O>>2]>>2]|0,21672,7)|0)==0){i=G;return}c[M>>2]=ef(c[F>>2]|0,c[(c[O>>2]|0)+68>>2]|0)|0;if((Lv(c[K>>2]|0,28,c[c[O>>2]>>2]|0,0,c[(c[(c[F>>2]|0)+16>>2]|0)+(c[M>>2]<<4)>>2]|0)|0)!=0){i=G;return}py(c[K>>2]|0,c[M>>2]|0,c[(c[O>>2]|0)+32>>2]|0,0,c[c[O>>2]>>2]|0);b=c[P>>2]|0;c[P>>2]=b+1;c[o>>2]=b;b=c[P>>2]|0;c[P>>2]=b+1;c[C>>2]=b;if((c[(c[K>>2]|0)+68>>2]|0)>(c[P>>2]|0)){P=c[(c[K>>2]|0)+68>>2]|0}else{P=c[P>>2]|0}c[(c[K>>2]|0)+68>>2]=P;qy(c[K>>2]|0,c[o>>2]|0,c[M>>2]|0,c[O>>2]|0,52);Sv(c[n>>2]|0,97,0,c[s>>2]|0,0,c[c[O>>2]>>2]|0,0)|0;c[y>>2]=c[(c[O>>2]|0)+8>>2];while(1){P=c[x>>2]|0;if((c[y>>2]|0)==0){break}if((P|0)!=0){if((c[x>>2]|0)==(c[y>>2]|0)){m=16}}else{m=16}if((m|0)==16){m=0;if((c[(c[y>>2]|0)+36>>2]|0)==0){a[w>>0]=0}c[A>>2]=e[(c[y>>2]|0)+50>>1]|0;c[z>>2]=$e(c[F>>2]|0,(c[A>>2]|0)+1<<2)|0;if((c[z>>2]|0)!=0){if((a[(c[y>>2]|0)+55>>0]&3|0)==2){if((a[(c[O>>2]|0)+44>>0]&32|0)==0){m=22}else{c[N>>2]=c[c[O>>2]>>2]}}else{m=22}if((m|0)==22){m=0;c[N>>2]=c[c[y>>2]>>2]}Sv(c[n>>2]|0,97,0,c[r>>2]|0,0,c[N>>2]|0,0)|0;if((c[(c[K>>2]|0)+72>>2]|0)>((c[H>>2]|0)+(c[A>>2]|0)|0)){P=c[(c[K>>2]|0)+72>>2]|0}else{P=(c[H>>2]|0)+(c[A>>2]|0)|0}c[(c[K>>2]|0)+72>>2]=P;Tv(c[n>>2]|0,52,c[C>>2]|0,c[(c[y>>2]|0)+44>>2]|0,c[M>>2]|0)|0;ry(c[K>>2]|0,c[y>>2]|0);Qv(c[n>>2]|0,25,(c[A>>2]|0)+1|0,(c[B>>2]|0)+1|0)|0;Tv(c[n>>2]|0,1,0,(c[B>>2]|0)+1|0,c[B>>2]|0)|0;nf(c[n>>2]|0,-1,24696,-5);gf(c[n>>2]|0,1);c[E>>2]=oy(c[n>>2]|0,105,c[C>>2]|0)|0;Qv(c[n>>2]|0,25,0,c[I>>2]|0)|0;c[J>>2]=Yv(c[n>>2]|0,16)|0;c[D>>2]=sy(c[n>>2]|0)|0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[A>>2]|0)){break}c[L>>2]=ty(c[K>>2]|0,c[(c[(c[y>>2]|0)+32>>2]|0)+(c[l>>2]<<2)>>2]|0)|0;Qv(c[n>>2]|0,25,c[l>>2]|0,c[I>>2]|0)|0;Tv(c[n>>2]|0,46,c[C>>2]|0,c[l>>2]|0,c[t>>2]|0)|0;b=Sv(c[n>>2]|0,78,c[t>>2]|0,0,(c[H>>2]|0)+(c[l>>2]|0)|0,c[L>>2]|0,-4)|0;c[(c[z>>2]|0)+(c[l>>2]<<2)>>2]=b;gf(c[n>>2]|0,-128);c[l>>2]=(c[l>>2]|0)+1}Qv(c[n>>2]|0,25,c[A>>2]|0,c[I>>2]|0)|0;b=Yv(c[n>>2]|0,16)|0;c[(c[z>>2]|0)+(c[A>>2]<<2)>>2]=b;jw(c[n>>2]|0,c[J>>2]|0);c[l>>2]=0;while(1){P=c[n>>2]|0;if((c[l>>2]|0)>=(c[A>>2]|0)){break}jw(P,c[(c[z>>2]|0)+(c[l>>2]<<2)>>2]|0);Tv(c[n>>2]|0,46,c[C>>2]|0,c[l>>2]|0,(c[H>>2]|0)+(c[l>>2]|0)|0)|0;c[l>>2]=(c[l>>2]|0)+1}jw(P,c[(c[z>>2]|0)+(c[A>>2]<<2)>>2]|0);Tv(c[n>>2]|0,1,1,c[B>>2]|0,c[t>>2]|0)|0;nf(c[n>>2]|0,-1,24736,-5);gf(c[n>>2]|0,2);Qv(c[n>>2]|0,9,c[C>>2]|0,c[D>>2]|0)|0;uy(c[n>>2]|0,c[B>>2]|0,0,c[p>>2]|0);Sv(c[n>>2]|0,48,c[s>>2]|0,3,c[t>>2]|0,24776,0)|0;Qv(c[n>>2]|0,69,c[u>>2]|0,c[v>>2]|0)|0;Tv(c[n>>2]|0,70,c[u>>2]|0,c[t>>2]|0,c[v>>2]|0)|0;gf(c[n>>2]|0,8);jw(c[n>>2]|0,c[E>>2]|0);cc(c[F>>2]|0,c[z>>2]|0)}}c[y>>2]=c[(c[y>>2]|0)+20>>2]}if((P|0)!=0){i=G;return}if((d[w>>0]|0|0)==0){i=G;return}Qv(c[n>>2]|0,49,c[o>>2]|0,c[p>>2]|0)|0;c[q>>2]=oy(c[n>>2]|0,45,c[p>>2]|0)|0;Qv(c[n>>2]|0,28,0,c[r>>2]|0)|0;Sv(c[n>>2]|0,48,c[s>>2]|0,3,c[t>>2]|0,24776,0)|0;Qv(c[n>>2]|0,69,c[u>>2]|0,c[v>>2]|0)|0;Tv(c[n>>2]|0,70,c[u>>2]|0,c[t>>2]|0,c[v>>2]|0)|0;gf(c[n>>2]|0,8);jw(c[n>>2]|0,c[q>>2]|0);i=G;return}function ny(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=Ov(c[g>>2]|0)|0;if((c[e>>2]|0)==0){i=d;return}oy(c[e>>2]|0,120,c[f>>2]|0)|0;i=d;return}function oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=Tv(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0,0,0)|0;i=e;return a|0}function py(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+48|0;t=k+28|0;l=k+24|0;m=k+20|0;n=k+32|0;o=k+16|0;p=k+8|0;q=k+4|0;r=k;j=k+12|0;c[t>>2]=b;c[l>>2]=e;c[m>>2]=f;a[n>>0]=g;c[o>>2]=h;h=c[t>>2]|0;if((c[(c[t>>2]|0)+408>>2]|0)!=0){h=c[h+408>>2]|0}c[p>>2]=h;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[(c[p>>2]|0)+396>>2]|0)){break}c[j>>2]=(c[(c[p>>2]|0)+400>>2]|0)+(c[q>>2]<<4);if((c[c[j>>2]>>2]|0)==(c[l>>2]|0)){if((c[(c[j>>2]|0)+4>>2]|0)==(c[m>>2]|0)){s=7;break}}c[q>>2]=(c[q>>2]|0)+1}if((s|0)==7){if((d[(c[j>>2]|0)+8>>0]|0|0)!=0){l=1}else{l=(d[n>>0]|0|0)!=0}a[(c[j>>2]|0)+8>>0]=l&1;i=k;return}c[r>>2]=(c[(c[p>>2]|0)+396>>2]|0)+1<<4;q=Ey(c[c[p>>2]>>2]|0,c[(c[p>>2]|0)+400>>2]|0,c[r>>2]|0)|0;c[(c[p>>2]|0)+400>>2]=q;q=(c[p>>2]|0)+396|0;if((c[(c[p>>2]|0)+400>>2]|0)!=0){t=c[q>>2]|0;c[q>>2]=t+1;c[j>>2]=(c[(c[p>>2]|0)+400>>2]|0)+(t<<4);c[c[j>>2]>>2]=c[l>>2];c[(c[j>>2]|0)+4>>2]=c[m>>2];a[(c[j>>2]|0)+8>>0]=a[n>>0]|0;c[(c[j>>2]|0)+12>>2]=c[o>>2];i=k;return}else{c[q>>2]=0;a[(c[c[p>>2]>>2]|0)+64>>0]=1;i=k;return}}function qy(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+32|0;q=o+24|0;m=o;l=o+4|0;k=o+8|0;n=o+12|0;j=o+16|0;p=o+20|0;c[q>>2]=d;c[m>>2]=e;c[l>>2]=f;c[k>>2]=g;c[n>>2]=h;c[j>>2]=Ov(c[q>>2]|0)|0;py(c[q>>2]|0,c[l>>2]|0,c[(c[k>>2]|0)+32>>2]|0,((c[n>>2]|0)==53?1:0)&255,c[c[k>>2]>>2]|0);if((a[(c[k>>2]|0)+44>>0]&32|0)==0){ff(c[j>>2]|0,c[n>>2]|0,c[m>>2]|0,c[(c[k>>2]|0)+32>>2]|0,c[l>>2]|0,b[(c[k>>2]|0)+38>>1]|0)|0;i=o;return}else{c[p>>2]=Dy(c[k>>2]|0)|0;Tv(c[j>>2]|0,c[n>>2]|0,c[m>>2]|0,c[(c[p>>2]|0)+44>>2]|0,c[l>>2]|0)|0;ry(c[q>>2]|0,c[p>>2]|0);i=o;return}}function ry(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;e=d;g=d+4|0;c[f>>2]=a;c[e>>2]=b;c[g>>2]=c[(c[f>>2]|0)+8>>2];a=c[g>>2]|0;nf(a,-1,Ay(c[f>>2]|0,c[e>>2]|0)|0,-6);i=d;return}function sy(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+32>>2]|0}function ty(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;h=f+12|0;k=f;m=f+4|0;j=f+17|0;l=f+16|0;g=f+8|0;c[h>>2]=b;c[k>>2]=e;c[m>>2]=c[c[h>>2]>>2];a[j>>0]=a[(c[(c[(c[m>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;a[l>>0]=a[(c[m>>2]|0)+137>>0]|0;c[g>>2]=xh(c[m>>2]|0,a[j>>0]|0,c[k>>2]|0,d[l>>0]|0)|0;if((a[l>>0]|0)!=0){m=c[g>>2]|0;i=f;return m|0}if((c[g>>2]|0)!=0){if((c[(c[g>>2]|0)+12>>2]|0)!=0){m=c[g>>2]|0;i=f;return m|0}}c[g>>2]=Lw(c[h>>2]|0,a[j>>0]|0,c[g>>2]|0,c[k>>2]|0)|0;m=c[g>>2]|0;i=f;return m|0}function uy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;j=f;h=f+8|0;c[g>>2]=a;c[j>>2]=b;c[f+4>>2]=d;c[h>>2]=e;Tv(c[g>>2]|0,1,0,c[j>>2]|0,c[h>>2]|0)|0;nf(c[g>>2]|0,-1,24784,-5);gf(c[g>>2]|0,1);i=f;return}function vy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+64|0;n=k+16|0;f=k+40|0;o=k+48|0;j=k+24|0;m=k+44|0;h=k+32|0;g=k+36|0;e=k;l=k+8|0;c[f>>2]=a;c[k+28>>2]=b;c[o>>2]=d;c[j>>2]=Hd(c[c[o>>2]>>2]|0)|0;c[g>>2]=Sc((c[(c[j>>2]|0)+8>>2]|0)*25|0)|0;if((c[g>>2]|0)==0){ke(c[f>>2]|0);i=k;return}o=c[g>>2]|0;a=n;c[a>>2]=c[c[j>>2]>>2];c[a+4>>2]=0;yc(24,o,24840,n)|0;o=c[g>>2]|0;c[m>>2]=o+(Ub(c[g>>2]|0)|0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=((c[(c[j>>2]|0)+8>>2]|0)-1|0)){break}o=e;c[o>>2]=(c[(c[(c[j>>2]|0)+20>>2]|0)+(c[h>>2]<<2)>>2]|0)+1;c[o+4>>2]=0;o=e;o=dL(c[c[j>>2]>>2]|0,0,c[o>>2]|0,c[o+4>>2]|0)|0;o=$K(o|0,D|0,1,0)|0;d=e;d=oL(o|0,D|0,c[d>>2]|0,c[d+4>>2]|0)|0;o=l;c[o>>2]=d;c[o+4>>2]=D;o=c[m>>2]|0;d=l;b=c[d+4>>2]|0;a=n;c[a>>2]=c[d>>2];c[a+4>>2]=b;yc(24,o,24848,n)|0;o=Ub(c[m>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+o;c[h>>2]=(c[h>>2]|0)+1}ce(c[f>>2]|0,c[g>>2]|0,-1,13);i=k;return}function wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+32|0;j=f+4|0;g=f+8|0;e=f+12|0;h=f+16|0;c[f+20>>2]=a;c[f>>2]=b;c[j>>2]=d;c[e>>2]=Hd(c[c[j>>2]>>2]|0)|0;c[h>>2]=Od(c[(c[j>>2]|0)+4>>2]|0)|0;if((c[c[e>>2]>>2]|0)==0){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[e>>2]|0)+8>>2]|0)){break}c[(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<2)>>2]=1;c[g>>2]=(c[g>>2]|0)+1}j=c[e>>2]|0;a=c[j>>2]|0;a=a+1|0;c[j>>2]=a;i=f;return}xy(c[e>>2]|0,c[h>>2]|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[h>>2]|0)){break}j=(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<2)|0;c[j>>2]=(c[j>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=c[h>>2];while(1){if((c[g>>2]|0)>=(c[(c[e>>2]|0)+8>>2]|0)){break}j=(c[(c[e>>2]|0)+20>>2]|0)+(c[g>>2]<<2)|0;c[j>>2]=(c[j>>2]|0)+1;c[(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<2)>>2]=1;c[g>>2]=(c[g>>2]|0)+1}j=c[e>>2]|0;a=c[j>>2]|0;a=a+1|0;c[j>>2]=a;i=f;return}function xy(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return}function yy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+28|0;m=e+4|0;g=e+8|0;j=e+12|0;h=e+16|0;l=e+20|0;k=e+24|0;c[f>>2]=a;c[e>>2]=b;c[m>>2]=d;c[j>>2]=Od(c[c[m>>2]>>2]|0)|0;c[h>>2]=(c[j>>2]|0)+1&-2;c[l>>2]=52+(c[h>>2]<<2)+(c[h>>2]<<2);c[k>>2]=re(c[f>>2]|0)|0;c[g>>2]=ve(c[k>>2]|0,c[l>>2]|0)|0;if((c[g>>2]|0)==0){ke(c[f>>2]|0);i=e;return}else{c[(c[g>>2]|0)+48>>2]=c[k>>2];c[c[g>>2]>>2]=0;c[(c[g>>2]|0)+8>>2]=c[j>>2];c[(c[g>>2]|0)+20>>2]=(c[g>>2]|0)+52;c[(c[g>>2]|0)+16>>2]=(c[(c[g>>2]|0)+20>>2]|0)+(c[h>>2]<<2);Td(c[f>>2]|0,c[g>>2]|0,4,17);i=e;return}}function zy(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];cc(c[(c[d>>2]|0)+48>>2]|0,c[d>>2]|0);i=b;return}function Ay(b,f){b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;h=j+28|0;k=j;g=j+4|0;l=j+8|0;n=j+12|0;p=j+16|0;m=j+20|0;o=j+24|0;c[k>>2]=b;c[g>>2]=f;if((c[(c[k>>2]|0)+64>>2]|0)!=0){c[h>>2]=0;b=c[h>>2]|0;i=j;return b|0}if((c[(c[g>>2]|0)+40>>2]|0)!=0){if((c[(c[(c[g>>2]|0)+40>>2]|0)+12>>2]|0)!=(c[c[k>>2]>>2]|0)){Ch(c[(c[g>>2]|0)+40>>2]|0);c[(c[g>>2]|0)+40>>2]=0}}do{if((c[(c[g>>2]|0)+40>>2]|0)==0){c[n>>2]=e[(c[g>>2]|0)+52>>1]|0;c[p>>2]=e[(c[g>>2]|0)+50>>1]|0;f=c[c[k>>2]>>2]|0;if(((d[(c[g>>2]|0)+55>>0]|0)>>>3&1|0)!=0){c[m>>2]=By(f,c[p>>2]|0,(c[n>>2]|0)-(c[p>>2]|0)|0)|0}else{c[m>>2]=By(f,c[n>>2]|0,0)|0}if((c[m>>2]|0)!=0){c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[n>>2]|0)){break}c[o>>2]=c[(c[(c[g>>2]|0)+32>>2]|0)+(c[l>>2]<<2)>>2];if((YK(c[o>>2]|0,3640)|0)==0){p=0}else{p=ty(c[k>>2]|0,c[o>>2]|0)|0}c[(c[m>>2]|0)+20+(c[l>>2]<<2)>>2]=p;a[(c[(c[m>>2]|0)+16>>2]|0)+(c[l>>2]|0)>>0]=a[(c[(c[g>>2]|0)+28>>2]|0)+(c[l>>2]|0)>>0]|0;c[l>>2]=(c[l>>2]|0)+1}l=c[m>>2]|0;if((c[(c[k>>2]|0)+64>>2]|0)!=0){Ch(l);break}else{c[(c[g>>2]|0)+40>>2]=l;break}}}}while(0);c[h>>2]=Cy(c[(c[g>>2]|0)+40>>2]|0)|0;b=c[h>>2]|0;i=j;return b|0}function By(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;j=g+12|0;l=g;k=g+4|0;h=g+8|0;c[j>>2]=d;c[l>>2]=e;c[k>>2]=f;c[h>>2]=ve(0,24+(((c[l>>2]|0)+(c[k>>2]|0)|0)*5|0)|0)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+16>>2]=(c[h>>2]|0)+20+((c[l>>2]|0)+(c[k>>2]|0)<<2);b[(c[h>>2]|0)+6>>1]=c[l>>2];b[(c[h>>2]|0)+8>>1]=c[k>>2];a[(c[h>>2]|0)+4>>0]=a[(c[(c[(c[j>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;c[(c[h>>2]|0)+12>>2]=c[j>>2];c[c[h>>2]>>2]=1;d=c[h>>2]|0;i=g;return d|0}else{a[(c[j>>2]|0)+64>>0]=1;d=c[h>>2]|0;i=g;return d|0}return 0}function Cy(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;if((c[b>>2]|0)!=0){a=c[b>>2]|0;c[a>>2]=(c[a>>2]|0)+1}i=d;return c[b>>2]|0}function Dy(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;c[e>>2]=c[(c[f>>2]|0)+8>>2];while(1){if((c[e>>2]|0)==0){b=5;break}if(!((a[(c[e>>2]|0)+55>>0]&3|0)==2^1)){b=5;break}c[e>>2]=c[(c[e>>2]|0)+20>>2]}if((b|0)==5){i=d;return c[e>>2]|0}return 0}function Ey(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;h=e;j=e+4|0;f=e+8|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[f>>2]=Ot(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;if((c[f>>2]|0)!=0){j=c[f>>2]|0;i=e;return j|0}cc(c[g>>2]|0,c[h>>2]|0);j=c[f>>2]|0;i=e;return j|0}function Fy(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;f=j+16|0;h=j;l=j+4|0;g=j+8|0;k=j+12|0;c[f>>2]=d;c[h>>2]=e;c[k>>2]=((c[(c[f>>2]|0)+24>>2]&2|0)!=0^1)&1;c[g>>2]=0;a[(c[f>>2]|0)+137>>0]=1;c[l>>2]=0;while(1){if((c[g>>2]|0)!=0){break}if((c[l>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){break}if((b[(c[(c[(c[f>>2]|0)+16>>2]|0)+(c[l>>2]<<4)+12>>2]|0)+78>>1]&1|0)!=1){if((c[l>>2]|0)!=1){c[g>>2]=Gy(c[f>>2]|0,c[l>>2]|0,c[h>>2]|0)|0;if((c[g>>2]|0)!=0){Hy(c[f>>2]|0,c[l>>2]|0)}}}c[l>>2]=(c[l>>2]|0)+1}if((c[g>>2]|0)==0){if((c[(c[f>>2]|0)+20>>2]|0)>1){if((b[(c[(c[(c[f>>2]|0)+16>>2]|0)+28>>2]|0)+78>>1]&1|0)!=1){c[g>>2]=Gy(c[f>>2]|0,1,c[h>>2]|0)|0;if((c[g>>2]|0)!=0){Hy(c[f>>2]|0,1)}}}}a[(c[f>>2]|0)+137>>0]=0;if((c[g>>2]|0)!=0){d=c[g>>2]|0;i=j;return d|0}if((c[k>>2]|0)==0){d=c[g>>2]|0;i=j;return d|0}Iy(c[f>>2]|0);d=c[g>>2]|0;i=j;return d|0}function Gy(f,g,h){f=f|0;g=g|0;h=h|0;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;l=i;i=i+128|0;j=l;r=l+116|0;m=l+112|0;o=l+108|0;q=l+104|0;v=l+100|0;A=l+96|0;x=l+92|0;B=l+88|0;w=l+120|0;C=l+64|0;s=l+40|0;n=l+24|0;D=l+16|0;t=l+12|0;p=l+8|0;y=l+124|0;u=l+80|0;k=l+84|0;c[m>>2]=f;c[o>>2]=g;c[q>>2]=h;c[p>>2]=0;if((c[o>>2]|0)==1){c[D>>2]=25136}else{c[D>>2]=25032}c[t>>2]=(c[o>>2]|0)==1?21432:21456;c[C>>2]=c[t>>2];c[C+4>>2]=25256;c[C+8>>2]=c[D>>2];c[C+12>>2]=0;c[n>>2]=c[m>>2];c[n+8>>2]=c[o>>2];c[n+12>>2]=0;c[n+4>>2]=c[q>>2];Jy(n,3,C,0)|0;if((c[n+12>>2]|0)!=0){c[v>>2]=c[n+12>>2]}else{c[B>>2]=cw(c[m>>2]|0,c[t>>2]|0,c[(c[(c[m>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2]|0)|0;if((c[B>>2]|0)!=0){f=(c[B>>2]|0)+44|0;a[f>>0]=d[f>>0]|1}c[w>>2]=(c[(c[m>>2]|0)+16>>2]|0)+(c[o>>2]<<4);if((c[(c[w>>2]|0)+4>>2]|0)==0){if((c[o>>2]|0)==1){f=(c[(c[(c[m>>2]|0)+16>>2]|0)+28>>2]|0)+78|0;b[f>>1]=e[f>>1]|1}c[r>>2]=0;f=c[r>>2]|0;i=l;return f|0}Uc(c[(c[w>>2]|0)+4>>2]|0);do{if((Yc(c[(c[w>>2]|0)+4>>2]|0)|0)!=0){z=16}else{c[v>>2]=Wc(c[(c[w>>2]|0)+4>>2]|0,0)|0;if((c[v>>2]|0)!=0){g=c[q>>2]|0;f=c[m>>2]|0;c[j>>2]=ie(c[v>>2]|0)|0;$t(g,f,1768,j);break}else{c[p>>2]=1;z=16;break}}}while(0);a:do{if((z|0)==16){c[A>>2]=0;while(1){if((c[A>>2]|0)>=5){break}Xc(c[(c[w>>2]|0)+4>>2]|0,(c[A>>2]|0)+1|0,s+(c[A>>2]<<2)|0);c[A>>2]=(c[A>>2]|0)+1}c[c[(c[w>>2]|0)+12>>2]>>2]=c[s>>2];z=c[o>>2]|0;do{if((c[s+16>>2]|0)!=0){A=c[s+16>>2]|0;if((z|0)==0){f=A&255&3;a[y>>0]=f;a[y>>0]=(d[y>>0]|0)==0?1:f;a[(c[(c[(c[m>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]=a[y>>0]|0;break}if((A|0)!=(d[(c[(c[(c[m>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0)){$t(c[q>>2]|0,c[m>>2]|0,25264,j);c[v>>2]=1;break a}}else{f=(c[(c[(c[m>>2]|0)+16>>2]|0)+(z<<4)+12>>2]|0)+78|0;b[f>>1]=e[f>>1]|4}}while(0);a[(c[(c[w>>2]|0)+12>>2]|0)+77>>0]=a[(c[(c[(c[m>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;if((c[(c[(c[w>>2]|0)+12>>2]|0)+80>>2]|0)==0){f=Ky(c[s+8>>2]|0)|0;c[x>>2]=f;c[x>>2]=(c[x>>2]|0)==0?2e3:f;c[(c[(c[w>>2]|0)+12>>2]|0)+80>>2]=c[x>>2];Ly(c[(c[w>>2]|0)+4>>2]|0,c[(c[(c[w>>2]|0)+12>>2]|0)+80>>2]|0)|0}a[(c[(c[w>>2]|0)+12>>2]|0)+76>>0]=c[s+4>>2];if((d[(c[(c[w>>2]|0)+12>>2]|0)+76>>0]|0)==0){a[(c[(c[w>>2]|0)+12>>2]|0)+76>>0]=1}if((d[(c[(c[w>>2]|0)+12>>2]|0)+76>>0]|0)>4){$t(c[q>>2]|0,c[m>>2]|0,25336,j);c[v>>2]=1;break}if((c[o>>2]|0)==0){if((c[s+4>>2]|0)>=4){f=(c[m>>2]|0)+24|0;c[f>>2]=c[f>>2]&-32769}}f=c[m>>2]|0;g=c[t>>2]|0;c[j>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2];c[j+4>>2]=g;c[u>>2]=cf(f,25360,j)|0;c[k>>2]=c[(c[m>>2]|0)+276>>2];c[(c[m>>2]|0)+276>>2]=0;c[v>>2]=Bf(c[m>>2]|0,c[u>>2]|0,13,n,0)|0;c[(c[m>>2]|0)+276>>2]=c[k>>2];if((c[v>>2]|0)==0){c[v>>2]=c[n+12>>2]}cc(c[m>>2]|0,c[u>>2]|0);if((c[v>>2]|0)==0){My(c[m>>2]|0,c[o>>2]|0)|0}if((a[(c[m>>2]|0)+64>>0]|0)!=0){c[v>>2]=7;hd(c[m>>2]|0)}if((c[v>>2]|0)!=0){if((c[(c[m>>2]|0)+24>>2]&65536|0)==0){break}}f=(c[(c[(c[m>>2]|0)+16>>2]|0)+(c[o>>2]<<4)+12>>2]|0)+78|0;b[f>>1]=e[f>>1]|1;c[v>>2]=0}}while(0);if((c[p>>2]|0)!=0){Ny(c[(c[w>>2]|0)+4>>2]|0)|0}}if((c[v>>2]|0)==7|(c[v>>2]|0)==3082){a[(c[m>>2]|0)+64>>0]=1}c[r>>2]=c[v>>2];f=c[r>>2]|0;i=l;return f|0}function Hy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;c[e>>2]=a;c[g>>2]=b;c[f>>2]=(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<4);oo(c[(c[f>>2]|0)+12>>2]|0);if((c[g>>2]|0)==1){i=d;return}c[f>>2]=(c[(c[e>>2]|0)+16>>2]|0)+16;oo(c[(c[f>>2]|0)+12>>2]|0);i=d;return}function Iy(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(c[d>>2]|0)+24|0;c[a>>2]=c[a>>2]&-3;i=b;return}function Jy(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=i;i=i+48|0;k=o+40|0;s=o+36|0;l=o+28|0;m=o+20|0;j=o+12|0;q=o+8|0;p=o+4|0;n=o;r=o+16|0;c[s>>2]=d;c[o+32>>2]=f;c[l>>2]=g;c[o+24>>2]=h;c[m>>2]=c[s>>2];c[j>>2]=c[c[m>>2]>>2];c[q>>2]=c[(c[m>>2]|0)+8>>2];d=(c[(c[(c[j>>2]|0)+16>>2]|0)+(c[q>>2]<<4)+12>>2]|0)+78|0;b[d>>1]=e[d>>1]&-5;if((a[(c[j>>2]|0)+64>>0]|0)!=0){Ry(c[m>>2]|0,c[c[l>>2]>>2]|0,0);c[k>>2]=1;s=c[k>>2]|0;i=o;return s|0}if((c[l>>2]|0)==0){c[k>>2]=0;s=c[k>>2]|0;i=o;return s|0}do{if((c[(c[l>>2]|0)+4>>2]|0)==0){Ry(c[m>>2]|0,c[c[l>>2]>>2]|0,0)}else{if((c[(c[l>>2]|0)+8>>2]|0)!=0){if((a[c[(c[l>>2]|0)+8>>2]>>0]|0)!=0){a[(c[j>>2]|0)+136>>0]=c[q>>2];s=Vg(c[(c[l>>2]|0)+4>>2]|0)|0;c[(c[j>>2]|0)+132>>2]=s;a[(c[j>>2]|0)+138>>0]=0;Gf(c[j>>2]|0,c[(c[l>>2]|0)+8>>2]|0,-1,n,0)|0;c[p>>2]=c[(c[j>>2]|0)+52>>2];a[(c[j>>2]|0)+136>>0]=0;do{if(0!=(c[p>>2]|0)){if((a[(c[j>>2]|0)+138>>0]|0)==0){c[(c[m>>2]|0)+12>>2]=c[p>>2];if((c[p>>2]|0)==7){a[(c[j>>2]|0)+64>>0]=1;break}if((c[p>>2]|0)!=9){if((c[p>>2]&255|0)!=6){d=c[m>>2]|0;s=c[c[l>>2]>>2]|0;Ry(d,s,Ff(c[j>>2]|0)|0)}}}}}while(0);yd(c[n>>2]|0)|0;break}}if((c[c[l>>2]>>2]|0)==0){Ry(c[m>>2]|0,0,0);break}c[r>>2]=tw(c[j>>2]|0,c[c[l>>2]>>2]|0,c[(c[(c[j>>2]|0)+16>>2]|0)+(c[q>>2]<<4)>>2]|0)|0;if((c[r>>2]|0)!=0){if((Wg(c[(c[l>>2]|0)+4>>2]|0,(c[r>>2]|0)+44|0)|0)==0){Ry(c[m>>2]|0,c[c[l>>2]>>2]|0,25512)}}}}while(0);c[k>>2]=0;s=c[k>>2]|0;i=o;return s|0}function Ky(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;a=c[e>>2]|0;do{if((c[e>>2]|0)>=0){c[d>>2]=a}else{if((a|0)==-2147483648){c[d>>2]=2147483647;break}else{c[d>>2]=0-(c[e>>2]|0);break}}}while(0);i=b;return c[d>>2]|0}function Ly(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d;f=d+4|0;c[g>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[g>>2]|0)+4>>2];Uc(c[g>>2]|0);Bo(c[c[f>>2]>>2]|0,c[e>>2]|0);i=d;return 0}function My(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+48|0;l=f;k=f+28|0;h=f+24|0;m=f+20|0;e=f+32|0;n=f+8|0;j=f+4|0;g=f+12|0;o=f+16|0;c[h>>2]=b;c[m>>2]=d;c[n>>2]=c[(c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+12>>2]|0)+32>>2];while(1){if((c[n>>2]|0)==0){break}c[o>>2]=c[(c[n>>2]|0)+8>>2];Oy(c[o>>2]|0);c[n>>2]=c[c[n>>2]>>2]}c[e>>2]=c[h>>2];c[e+4>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)>>2];if((cw(c[h>>2]|0,24912,c[e+4>>2]|0)|0)==0){c[k>>2]=1;b=c[k>>2]|0;i=f;return b|0}b=c[h>>2]|0;c[l>>2]=c[e+4>>2];c[j>>2]=cf(b,25416,l)|0;if((c[j>>2]|0)==0){c[g>>2]=7}else{c[g>>2]=Bf(c[h>>2]|0,c[j>>2]|0,14,e,0)|0;cc(c[h>>2]|0,c[j>>2]|0)}if((c[g>>2]|0)==7){a[(c[h>>2]|0)+64>>0]=1}c[k>>2]=c[g>>2];b=c[k>>2]|0;i=f;return b|0}function Ny(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;Uc(c[e>>2]|0);c[d>>2]=sd(c[e>>2]|0,0)|0;if((c[d>>2]|0)!=0){e=c[d>>2]|0;i=b;return e|0}c[d>>2]=rd(c[e>>2]|0,0)|0;e=c[d>>2]|0;i=b;return e|0}function Oy(a){a=a|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+12|0;k=f+16|0;j=f+4|0;l=f+8|0;h=f;c[g>>2]=a;b[k+0>>1]=b[25496>>1]|0;b[k+2>>1]=b[25498>>1]|0;b[k+4>>1]=b[25500>>1]|0;b[k+6>>1]=b[25502>>1]|0;b[k+8>>1]=b[25504>>1]|0;c[j>>2]=c[(c[g>>2]|0)+8>>2];if(5<(e[(c[g>>2]|0)+50>>1]|0)){a=5}else{a=e[(c[g>>2]|0)+50>>1]|0}c[l>>2]=a;b[c[j>>2]>>1]=b[(c[(c[g>>2]|0)+12>>2]|0)+28>>1]|0;if((b[c[j>>2]>>1]|0)<33){b[c[j>>2]>>1]=33}fL((c[j>>2]|0)+2|0,k|0,c[l>>2]<<1|0)|0;c[h>>2]=(c[l>>2]|0)+1;while(1){if((c[h>>2]|0)>(e[(c[g>>2]|0)+50>>1]|0)){break}b[(c[j>>2]|0)+(c[h>>2]<<1)>>1]=23;c[h>>2]=(c[h>>2]|0)+1}if((d[(c[g>>2]|0)+54>>0]|0)==0){i=f;return}b[(c[j>>2]|0)+(e[(c[g>>2]|0)+50>>1]<<1)>>1]=0;i=f;return}function Py(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+96|0;n=j+92|0;q=j+88|0;o=j+80|0;p=j+72|0;l=j+8|0;m=j+4|0;k=j;h=j+16|0;c[q>>2]=a;c[j+84>>2]=d;c[o>>2]=f;c[j+76>>2]=g;c[p>>2]=c[q>>2];if((c[o>>2]|0)!=0){if((c[c[o>>2]>>2]|0)!=0){if((c[(c[o>>2]|0)+8>>2]|0)!=0){c[m>>2]=cw(c[c[p>>2]>>2]|0,c[c[o>>2]>>2]|0,c[(c[p>>2]|0)+4>>2]|0)|0;if((c[m>>2]|0)==0){c[n>>2]=0;q=c[n>>2]|0;i=j;return q|0}do{if((c[(c[o>>2]|0)+4>>2]|0)==0){c[l>>2]=0}else{if((Dc(c[c[o>>2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0)|0)==0){c[l>>2]=Dy(c[m>>2]|0)|0;break}else{c[l>>2]=tw(c[c[p>>2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0,c[(c[p>>2]|0)+4>>2]|0)|0;break}}}while(0);c[k>>2]=c[(c[o>>2]|0)+8>>2];if((c[l>>2]|0)!=0){Qy(c[k>>2]|0,(e[(c[l>>2]|0)+50>>1]|0)+1|0,0,c[(c[l>>2]|0)+8>>2]|0,c[l>>2]|0);if((c[(c[l>>2]|0)+36>>2]|0)==0){b[(c[m>>2]|0)+28>>1]=b[c[(c[l>>2]|0)+8>>2]>>1]|0}}else{b[h+48>>1]=b[(c[m>>2]|0)+42>>1]|0;Qy(c[k>>2]|0,1,0,(c[m>>2]|0)+28|0,h);b[(c[m>>2]|0)+42>>1]=b[h+48>>1]|0}c[n>>2]=0;q=c[n>>2]|0;i=j;return q|0}}}c[n>>2]=0;q=c[n>>2]|0;i=j;return q|0}function Qy(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+48|0;s=k+36|0;r=k+32|0;o=k+24|0;p=k+20|0;m=k+16|0;q=k+8|0;j=k+4|0;n=k;l=k+12|0;c[s>>2]=d;c[r>>2]=e;c[k+28>>2]=f;c[o>>2]=g;c[p>>2]=h;d=c[s>>2]|0;c[m>>2]=d;c[m>>2]=(c[m>>2]|0)==0?1784:d;c[j>>2]=0;while(1){if((a[c[m>>2]>>0]|0)==0){break}if((c[j>>2]|0)>=(c[r>>2]|0)){break}c[n>>2]=0;while(1){s=a[c[m>>2]>>0]|0;c[q>>2]=s;if((s|0)<48){break}if((c[q>>2]|0)>57){break}c[n>>2]=((c[n>>2]|0)*10|0)+(c[q>>2]|0)-48;c[m>>2]=(c[m>>2]|0)+1}s=Kw(c[n>>2]|0,0)|0;b[(c[o>>2]|0)+(c[j>>2]<<1)>>1]=s;if((a[c[m>>2]>>0]|0)==32){c[m>>2]=(c[m>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}if((YK(c[m>>2]|0,25464)|0)==0){s=(c[p>>2]|0)+55|0;a[s>>0]=a[s>>0]&-5|4;i=k;return}if((zf(25480,c[m>>2]|0)|0)!=0){i=k;return}c[l>>2]=0;Wg((c[m>>2]|0)+3|0,l)|0;s=c[l>>2]|0;s=Kw(s,((s|0)<0)<<31>>31)|0;b[(c[p>>2]|0)+48>>1]=s;i=k;return}function Ry(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;l=h;g=h+20|0;m=h+8|0;k=h+12|0;j=h+16|0;c[g>>2]=b;c[m>>2]=e;c[k>>2]=f;c[j>>2]=c[c[g>>2]>>2];if((a[(c[j>>2]|0)+64>>0]|0)==0){if((c[(c[j>>2]|0)+24>>2]&65536|0)==0){if((c[m>>2]|0)==0){c[m>>2]=8776}e=c[(c[g>>2]|0)+4>>2]|0;b=c[j>>2]|0;c[l>>2]=c[m>>2];$t(e,b,25536,l);if((c[k>>2]|0)!=0){e=c[j>>2]|0;b=c[c[(c[g>>2]|0)+4>>2]>>2]|0;m=c[k>>2]|0;c[l>>2]=c[c[(c[g>>2]|0)+4>>2]>>2];c[l+4>>2]=m;b=Sy(e,b,25568,l)|0;c[c[(c[g>>2]|0)+4>>2]>>2]=b}}}if((d[(c[j>>2]|0)+64>>0]|0)!=0){e=7;b=c[g>>2]|0;b=b+12|0;c[b>>2]=e;i=h;return}e=dq(99745)|0;b=c[g>>2]|0;b=b+12|0;c[b>>2]=e;i=h;return}function Sy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;j=g+28|0;h=g;l=g+4|0;k=g+8|0;f=g+24|0;c[j>>2]=a;c[h>>2]=b;c[l>>2]=d;c[k>>2]=e;c[f>>2]=iu(c[j>>2]|0,c[l>>2]|0,k)|0;cc(c[j>>2]|0,c[h>>2]|0);i=g;return c[f>>2]|0}function Ty(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;k=d+24|0;l=d;e=d+4|0;g=d+8|0;h=d+12|0;f=d+16|0;j=d+20|0;c[k>>2]=a;c[l>>2]=b;c[h>>2]=c[c[k>>2]>>2];c[g>>2]=0;c[e>>2]=c[(c[h>>2]|0)+16>>2];while(1){if((c[g>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[f>>2]=c[(c[(c[e>>2]|0)+12>>2]|0)+16>>2];while(1){if((c[f>>2]|0)==0){break}c[j>>2]=c[(c[f>>2]|0)+8>>2];Uy(c[k>>2]|0,c[j>>2]|0,c[l>>2]|0);c[f>>2]=c[c[f>>2]>>2]}c[g>>2]=(c[g>>2]|0)+1;c[e>>2]=(c[e>>2]|0)+16}i=d;return}function Uy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;j=f+16|0;k=f;g=f+4|0;h=f+8|0;l=f+12|0;c[j>>2]=a;c[k>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[k>>2]|0)+8>>2];while(1){if((c[h>>2]|0)==0){break}if((c[g>>2]|0)==0){e=5}else{if((Wz(c[g>>2]|0,c[h>>2]|0)|0)!=0){e=5}}if((e|0)==5){e=0;c[l>>2]=ef(c[c[j>>2]>>2]|0,c[(c[k>>2]|0)+68>>2]|0)|0;$v(c[j>>2]|0,0,c[l>>2]|0);Vy(c[j>>2]|0,c[h>>2]|0,-1)}c[h>>2]=c[(c[h>>2]|0)+20>>2]}i=f;return}function Vy(a,b,f){a=a|0;b=b|0;f=f|0;var g=0,h=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;r=i;i=i+80|0;q=r+64|0;p=r+60|0;u=r+56|0;x=r+52|0;w=r+48|0;g=r+44|0;m=r+40|0;v=r+36|0;l=r+32|0;s=r+24|0;y=r+20|0;j=r+16|0;o=r+12|0;n=r+8|0;z=r+4|0;t=r;k=r+28|0;c[q>>2]=a;c[p>>2]=b;c[u>>2]=f;c[x>>2]=c[(c[p>>2]|0)+12>>2];a=(c[q>>2]|0)+68|0;b=c[a>>2]|0;c[a>>2]=b+1;c[w>>2]=b;b=(c[q>>2]|0)+68|0;a=c[b>>2]|0;c[b>>2]=a+1;c[g>>2]=a;c[z>>2]=c[c[q>>2]>>2];c[t>>2]=ef(c[z>>2]|0,c[(c[p>>2]|0)+24>>2]|0)|0;if((Lv(c[q>>2]|0,27,c[c[p>>2]>>2]|0,0,c[(c[(c[z>>2]|0)+16>>2]|0)+(c[t>>2]<<4)>>2]|0)|0)!=0){i=r;return}py(c[q>>2]|0,c[t>>2]|0,c[(c[x>>2]|0)+32>>2]|0,1,c[c[x>>2]>>2]|0);c[j>>2]=Ov(c[q>>2]|0)|0;if((c[j>>2]|0)==0){i=r;return}if((c[u>>2]|0)>=0){c[s>>2]=c[u>>2]}else{c[s>>2]=c[(c[p>>2]|0)+44>>2]}c[o>>2]=Ay(c[q>>2]|0,c[p>>2]|0)|0;z=(c[q>>2]|0)+68|0;a=c[z>>2]|0;c[z>>2]=a+1;c[m>>2]=a;a=c[j>>2]|0;z=c[m>>2]|0;Sv(a,56,z,0,0,Cy(c[o>>2]|0)|0,-6)|0;qy(c[q>>2]|0,c[w>>2]|0,c[t>>2]|0,c[x>>2]|0,52);c[v>>2]=Qv(c[j>>2]|0,105,c[w>>2]|0,0)|0;c[n>>2]=Wv(c[q>>2]|0)|0;Wy(c[q>>2]|0,c[p>>2]|0,c[w>>2]|0,c[n>>2]|0,0,y,0,0)|0;Qv(c[j>>2]|0,106,c[m>>2]|0,c[n>>2]|0)|0;Xy(c[q>>2]|0,c[y>>2]|0);Qv(c[j>>2]|0,9,c[w>>2]|0,(c[v>>2]|0)+1|0)|0;jw(c[j>>2]|0,c[v>>2]|0);if((c[u>>2]|0)<0){Qv(c[j>>2]|0,115,c[s>>2]|0,c[t>>2]|0)|0}Sv(c[j>>2]|0,53,c[g>>2]|0,c[s>>2]|0,c[t>>2]|0,c[o>>2]|0,-6)|0;gf(c[j>>2]|0,(1|((c[u>>2]|0)>=0?2:0))&255);c[v>>2]=Qv(c[j>>2]|0,103,c[m>>2]|0,0)|0;if((d[(c[p>>2]|0)+54>>0]|0|0)!=0){if((c[o>>2]|0)!=0){c[k>>2]=(sy(c[j>>2]|0)|0)+3;Qv(c[j>>2]|0,16,0,c[k>>2]|0)|0;c[l>>2]=sy(c[j>>2]|0)|0;ff(c[j>>2]|0,84,c[m>>2]|0,c[k>>2]|0,c[n>>2]|0,(e[(c[o>>2]|0)+6>>1]|0)-(e[(c[p>>2]|0)+50>>1]|0)|0)|0;Yy(c[q>>2]|0,2,c[p>>2]|0)}else{h=11}}else{h=11}if((h|0)==11){c[l>>2]=sy(c[j>>2]|0)|0}Qv(c[j>>2]|0,95,c[m>>2]|0,c[n>>2]|0)|0;Tv(c[j>>2]|0,107,c[g>>2]|0,c[n>>2]|0,1)|0;gf(c[j>>2]|0,16);Xv(c[q>>2]|0,c[n>>2]|0);Qv(c[j>>2]|0,5,c[m>>2]|0,c[l>>2]|0)|0;jw(c[j>>2]|0,c[v>>2]|0);oy(c[j>>2]|0,58,c[w>>2]|0)|0;oy(c[j>>2]|0,58,c[g>>2]|0)|0;oy(c[j>>2]|0,58,c[m>>2]|0)|0;i=r;return}function Wy(a,e,f,g,h,j,k,l){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;q=i;i=i+64|0;y=q+48|0;v=q+44|0;m=q+40|0;s=q+36|0;z=q+32|0;A=q+28|0;t=q+24|0;w=q+16|0;r=q+12|0;u=q+8|0;x=q+4|0;o=q;p=q+20|0;c[y>>2]=a;c[v>>2]=e;c[m>>2]=f;c[s>>2]=g;c[z>>2]=h;c[A>>2]=j;c[t>>2]=k;c[w>>2]=l;c[r>>2]=c[(c[y>>2]|0)+8>>2];c[x>>2]=c[(c[v>>2]|0)+12>>2];do{if((c[A>>2]|0)!=0){if((c[(c[v>>2]|0)+36>>2]|0)!=0){a=cz(c[r>>2]|0)|0;c[c[A>>2]>>2]=a;c[(c[y>>2]|0)+96>>2]=c[m>>2];dz(c[y>>2]|0);ez(c[y>>2]|0,c[(c[v>>2]|0)+36>>2]|0,c[c[A>>2]>>2]|0,8);break}else{c[c[A>>2]>>2]=0;break}}}while(0);if((c[z>>2]|0)!=0){if(((d[(c[v>>2]|0)+55>>0]|0)>>>3&1|0)!=0){h=b[(c[v>>2]|0)+50>>1]|0}else{n=8}}else{n=8}if((n|0)==8){h=b[(c[v>>2]|0)+52>>1]|0}c[p>>2]=h&65535;c[o>>2]=fz(c[y>>2]|0,c[p>>2]|0)|0;do{if((c[t>>2]|0)!=0){if((c[o>>2]|0)==(c[w>>2]|0)){if((c[(c[t>>2]|0)+36>>2]|0)==0){break}}c[t>>2]=0}}while(0);c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[p>>2]|0)){break}if((c[t>>2]|0)!=0){if((b[(c[(c[t>>2]|0)+4>>2]|0)+(c[u>>2]<<1)>>1]|0)!=(b[(c[(c[v>>2]|0)+4>>2]|0)+(c[u>>2]<<1)>>1]|0)){n=17}}else{n=17}if((n|0)==17){n=0;gz(c[r>>2]|0,c[x>>2]|0,c[m>>2]|0,b[(c[(c[v>>2]|0)+4>>2]|0)+(c[u>>2]<<1)>>1]|0,(c[o>>2]|0)+(c[u>>2]|0)|0);hz(c[r>>2]|0,39)|0}c[u>>2]=(c[u>>2]|0)+1}if((c[s>>2]|0)==0){f=c[y>>2]|0;e=c[o>>2]|0;a=c[p>>2]|0;iz(f,e,a);a=c[o>>2]|0;i=q;return a|0}Tv(c[r>>2]|0,48,c[o>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;f=c[y>>2]|0;e=c[o>>2]|0;a=c[p>>2]|0;iz(f,e,a);a=c[o>>2]|0;i=q;return a|0}function Xy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}$y(c[(c[e>>2]|0)+8>>2]|0,c[f>>2]|0);az(c[e>>2]|0);i=d;return}function Yy(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+64|0;k=h+52|0;m=h;l=h+4|0;j=h+8|0;p=h+12|0;n=h+16|0;o=h+44|0;q=h+48|0;c[k>>2]=d;c[m>>2]=f;c[l>>2]=g;c[o>>2]=c[(c[l>>2]|0)+12>>2];tc(n,0,0,200);c[n>>2]=c[c[k>>2]>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>=(e[(c[l>>2]|0)+50>>1]|0)){break}c[q>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+((b[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>>2]<<1)>>1]|0)*24|0)>>2];if((c[p>>2]|0)!=0){Jt(n,25624,2)}Zy(n,c[c[o>>2]>>2]|0);Jt(n,25632,1);Zy(n,c[q>>2]|0);c[p>>2]=(c[p>>2]|0)+1}c[j>>2]=vc(n)|0;_y(c[k>>2]|0,(a[(c[l>>2]|0)+55>>0]&3|0)==2?1555:2067,c[m>>2]|0,c[j>>2]|0,-1,2);i=h;return}function Zy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;b=c[f>>2]|0;a=c[e>>2]|0;Jt(b,a,Ub(c[e>>2]|0)|0);i=d;return}function _y(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+32|0;q=p+16|0;m=p;n=p+4|0;o=p+8|0;j=p+21|0;l=p+20|0;k=p+12|0;c[q>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;a[j>>0]=g;a[l>>0]=h;c[k>>2]=Ov(c[q>>2]|0)|0;if((c[n>>2]|0)==2){xw(c[q>>2]|0)}Sv(c[k>>2]|0,24,c[m>>2]|0,c[n>>2]|0,0,c[o>>2]|0,a[j>>0]|0)|0;if((a[l>>0]|0)==0){i=p;return}gf(c[k>>2]|0,a[l>>0]|0);i=p;return}function $y(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=i;i=i+16|0;d=f+12|0;h=f;e=f+4|0;g=f+8|0;c[d>>2]=a;c[h>>2]=b;c[e>>2]=c[(c[d>>2]|0)+24>>2];c[g>>2]=-1-(c[h>>2]|0);if((c[g>>2]|0)>=0){if((c[(c[e>>2]|0)+112>>2]|0)!=0){c[(c[(c[e>>2]|0)+112>>2]|0)+(c[g>>2]<<2)>>2]=c[(c[d>>2]|0)+32>>2]}}c[(c[e>>2]|0)+88>>2]=(c[(c[d>>2]|0)+32>>2]|0)-1;i=f;return}function az(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+8|0;f=b;d=b+4|0;c[e>>2]=a;a=(c[e>>2]|0)+100|0;c[a>>2]=(c[a>>2]|0)+ -1;c[f>>2]=0;c[d>>2]=(c[e>>2]|0)+116;while(1){if((c[f>>2]|0)>=10){break}if((c[(c[d>>2]|0)+12>>2]|0)!=0){if((c[(c[d>>2]|0)+8>>2]|0)>(c[(c[e>>2]|0)+100>>2]|0)){bz(c[e>>2]|0,c[d>>2]|0);c[(c[d>>2]|0)+12>>2]=0}}c[f>>2]=(c[f>>2]|0)+1;c[d>>2]=(c[d>>2]|0)+20}i=b;return}function bz(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;h=f+4|0;g=f;c[h>>2]=b;c[g>>2]=e;if((a[(c[g>>2]|0)+6>>0]|0)==0){i=f;return}if((d[(c[h>>2]|0)+19>>0]|0)<8){e=c[(c[g>>2]|0)+12>>2]|0;j=(c[h>>2]|0)+19|0;b=a[j>>0]|0;a[j>>0]=b+1<<24>>24;c[(c[h>>2]|0)+24+((b&255)<<2)>>2]=e}a[(c[g>>2]|0)+6>>0]=0;i=f;return}function cz(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;e=d;b=d+4|0;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+24>>2];f=(c[e>>2]|0)+108|0;a=c[f>>2]|0;c[f>>2]=a+1;c[b>>2]=a;if((c[b>>2]&(c[b>>2]|0)-1|0)==0){f=Ey(c[c[e>>2]>>2]|0,c[(c[e>>2]|0)+112>>2]|0,(c[b>>2]<<1)+1<<2)|0;c[(c[e>>2]|0)+112>>2]=f}if((c[(c[e>>2]|0)+112>>2]|0)==0){f=c[b>>2]|0;f=-1-f|0;i=d;return f|0}c[(c[(c[e>>2]|0)+112>>2]|0)+(c[b>>2]<<2)>>2]=-1;f=c[b>>2]|0;f=-1-f|0;i=d;return f|0}function dz(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(c[d>>2]|0)+100|0;c[a>>2]=(c[a>>2]|0)+1;i=b;return}function ez(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;o=i;i=i+48|0;h=o+44|0;l=o+40|0;p=o+36|0;q=o+32|0;r=o+28|0;g=o+24|0;j=o+20|0;k=o+12|0;m=o+8|0;n=o+4|0;s=o;t=o+16|0;c[h>>2]=a;c[l>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=c[(c[h>>2]|0)+8>>2];c[g>>2]=0;c[j>>2]=0;c[k>>2]=0;if((c[r>>2]|0)==0){i=o;return}if((c[l>>2]|0)==0){i=o;return}c[g>>2]=((d[c[l>>2]>>0]|0)+0^1)-0;a:do{switch(d[c[l>>2]>>0]|0|0){case 79:case 78:case 83:case 80:case 81:case 82:{c[m>>2]=oz(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,j)|0;c[n>>2]=oz(c[h>>2]|0,c[(c[l>>2]|0)+16>>2]|0,k)|0;pz(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[g>>2]|0,c[m>>2]|0,c[n>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;break};case 72:{ez(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[p>>2]|0,c[q>>2]|0);dz(c[h>>2]|0);ez(c[h>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[p>>2]|0,c[q>>2]|0);az(c[h>>2]|0);break};case 71:{c[s>>2]=cz(c[r>>2]|0)|0;nz(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[s>>2]|0,c[q>>2]^8);dz(c[h>>2]|0);ez(c[h>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[p>>2]|0,c[q>>2]|0);$y(c[r>>2]|0,c[s>>2]|0);az(c[h>>2]|0);break};case 19:{nz(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[p>>2]|0,c[q>>2]|0);break};case 75:{if((c[q>>2]|0)!=0){rz(c[h>>2]|0,c[l>>2]|0,c[p>>2]|0,c[p>>2]|0);break a}else{c[t>>2]=cz(c[r>>2]|0)|0;rz(c[h>>2]|0,c[l>>2]|0,c[p>>2]|0,c[t>>2]|0);$y(c[r>>2]|0,c[t>>2]|0);break a}};case 148:case 73:{c[m>>2]=oz(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,j)|0;c[n>>2]=oz(c[h>>2]|0,c[(c[l>>2]|0)+16>>2]|0,k)|0;c[g>>2]=(d[c[l>>2]>>0]|0|0)==73?78:79;pz(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[g>>2]|0,c[m>>2]|0,c[n>>2]|0,c[p>>2]|0,128)|0;break};case 74:{qz(c[h>>2]|0,c[l>>2]|0,c[p>>2]|0,0,c[q>>2]|0);break};case 77:case 76:{c[m>>2]=oz(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,j)|0;Qv(c[r>>2]|0,c[g>>2]|0,c[m>>2]|0,c[p>>2]|0)|0;break};default:{if((Vx(c[l>>2]|0)|0)!=0){Qv(c[r>>2]|0,16,0,c[p>>2]|0)|0;break a}if((sz(c[l>>2]|0)|0)==0){c[m>>2]=oz(c[h>>2]|0,c[l>>2]|0,j)|0;Tv(c[r>>2]|0,45,c[m>>2]|0,c[p>>2]|0,(c[q>>2]|0)!=0&1)|0}}}}while(0);Xv(c[h>>2]|0,c[j>>2]|0);Xv(c[h>>2]|0,c[k>>2]|0);i=o;return}function fz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d+12|0;f=d;e=d+4|0;h=d+8|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=c[(c[g>>2]|0)+60>>2];c[h>>2]=c[(c[g>>2]|0)+56>>2];if((c[f>>2]|0)<=(c[h>>2]|0)){h=(c[g>>2]|0)+60|0;c[h>>2]=(c[h>>2]|0)+(c[f>>2]|0);h=(c[g>>2]|0)+56|0;c[h>>2]=(c[h>>2]|0)-(c[f>>2]|0);h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=(c[(c[g>>2]|0)+72>>2]|0)+1;h=(c[g>>2]|0)+72|0;c[h>>2]=(c[h>>2]|0)+(c[f>>2]|0);h=c[e>>2]|0;i=d;return h|0}return 0}function gz(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+32|0;l=q+24|0;m=q;p=q+4|0;n=q+8|0;o=q+12|0;j=q+16|0;r=q+20|0;c[l>>2]=d;c[m>>2]=e;c[p>>2]=f;c[n>>2]=g;c[o>>2]=h;if((c[n>>2]|0)<0){k=3}else{if((c[n>>2]|0)==(b[(c[m>>2]|0)+36>>1]|0)){k=3}else{c[j>>2]=(a[(c[m>>2]|0)+44>>0]&16|0)!=0?150:46;c[r>>2]=c[n>>2];if((a[(c[m>>2]|0)+44>>0]&32|0)!=0){d=Dy(c[m>>2]|0)|0;c[r>>2]=(kz(d,c[n>>2]&65535)|0)<<16>>16}Tv(c[l>>2]|0,c[j>>2]|0,c[p>>2]|0,c[r>>2]|0,c[o>>2]|0)|0}}if((k|0)==3){Qv(c[l>>2]|0,100,c[p>>2]|0,c[o>>2]|0)|0}if((c[n>>2]|0)<0){i=q;return}lz(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0);i=q;return}function hz(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+4|0;h=f;j=f+8|0;c[h>>2]=b;a[j>>0]=e;if(((c[(c[h>>2]|0)+32>>2]|0)-1|0)>(c[(c[(c[h>>2]|0)+24>>2]|0)+88>>2]|0)){if((d[(c[(c[h>>2]|0)+4>>2]|0)+(((c[(c[h>>2]|0)+32>>2]|0)-1|0)*20|0)>>0]|0|0)==(d[j>>0]|0|0)){of(c[h>>2]|0,(c[(c[h>>2]|0)+32>>2]|0)-1|0);c[g>>2]=1;b=c[g>>2]|0;i=f;return b|0}}c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}function iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;h=e;f=e+4|0;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;jz(c[g>>2]|0,c[h>>2]|0,c[f>>2]|0);if((c[f>>2]|0)<=(c[(c[g>>2]|0)+56>>2]|0)){i=e;return}c[(c[g>>2]|0)+56>>2]=c[f>>2];c[(c[g>>2]|0)+60>>2]=c[h>>2];i=e;return}function jz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+24|0;k=e;m=e+4|0;l=e+8|0;j=e+12|0;g=e+16|0;h=e+20|0;c[f>>2]=a;c[k>>2]=b;c[m>>2]=d;c[j>>2]=(c[k>>2]|0)+(c[m>>2]|0)-1;c[l>>2]=0;c[g>>2]=(c[f>>2]|0)+116;while(1){if((c[l>>2]|0)>=10){break}c[h>>2]=c[(c[g>>2]|0)+12>>2];if((c[h>>2]|0)>=(c[k>>2]|0)){if((c[h>>2]|0)<=(c[j>>2]|0)){bz(c[f>>2]|0,c[g>>2]|0);c[(c[g>>2]|0)+12>>2]=0}}c[l>>2]=(c[l>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+20}i=e;return}function kz(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;f=g+10|0;k=g;j=g+8|0;h=g+4|0;c[k>>2]=a;b[j>>1]=d;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(e[(c[k>>2]|0)+52>>1]|0)){h=6;break}d=c[h>>2]|0;if((b[j>>1]|0)==(b[(c[(c[k>>2]|0)+4>>2]|0)+(c[h>>2]<<1)>>1]|0)){h=4;break}c[h>>2]=d+1}if((h|0)==4){b[f>>1]=d;a=b[f>>1]|0;i=g;return a|0}else if((h|0)==6){b[f>>1]=-1;a=b[f>>1]|0;i=g;return a|0}return 0}function lz(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;h=m+20|0;k=m;l=m+4|0;j=m+8|0;g=m+12|0;n=m+24|0;o=m+16|0;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[j>>2]=f;if((c[(c[k>>2]|0)+12>>2]|0)!=0){i=m;return}c[g>>2]=0;a[n>>0]=a[(c[(c[(mz(c[h>>2]|0)|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;c[o>>2]=(c[(c[k>>2]|0)+4>>2]|0)+((c[l>>2]|0)*24|0);b=mz(c[h>>2]|0)|0;dw(b,c[(c[o>>2]|0)+4>>2]|0,a[n>>0]|0,a[(c[o>>2]|0)+21>>0]|0,g)|0;if((c[g>>2]|0)!=0){nf(c[h>>2]|0,-1,c[g>>2]|0,-8)}if((a[(c[(c[k>>2]|0)+4>>2]|0)+((c[l>>2]|0)*24|0)+21>>0]|0)!=101){i=m;return}oy(c[h>>2]|0,39,c[j>>2]|0)|0;i=m;return}function mz(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[c[b>>2]>>2]|0}function nz(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=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;p=i;i=i+64|0;h=p+48|0;j=p+44|0;k=p+40|0;l=p+36|0;o=p+32|0;g=p+28|0;m=p+24|0;s=p+16|0;n=p+12|0;t=p+8|0;u=p+4|0;q=p;r=p+20|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[o>>2]=c[(c[h>>2]|0)+8>>2];c[g>>2]=0;c[m>>2]=0;c[s>>2]=0;if((c[o>>2]|0)==0){i=p;return}if((c[j>>2]|0)==0){i=p;return}c[g>>2]=d[c[j>>2]>>0]|0;a:do{switch(c[g>>2]|0){case 19:{ez(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[k>>2]|0,c[l>>2]|0);break};case 77:case 76:{c[n>>2]=oz(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,m)|0;Qv(c[o>>2]|0,c[g>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;break};case 75:{c[q>>2]=cz(c[o>>2]|0)|0;c[r>>2]=(c[l>>2]|0)!=0?c[k>>2]|0:c[q>>2]|0;rz(c[h>>2]|0,c[j>>2]|0,c[q>>2]|0,c[r>>2]|0);Qv(c[o>>2]|0,16,0,c[k>>2]|0)|0;$y(c[o>>2]|0,c[q>>2]|0);break};case 79:case 78:case 83:case 80:case 81:case 82:{c[n>>2]=oz(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,m)|0;c[t>>2]=oz(c[h>>2]|0,c[(c[j>>2]|0)+16>>2]|0,s)|0;pz(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[(c[j>>2]|0)+16>>2]|0,c[g>>2]|0,c[n>>2]|0,c[t>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;break};case 148:case 73:{c[n>>2]=oz(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,m)|0;c[t>>2]=oz(c[h>>2]|0,c[(c[j>>2]|0)+16>>2]|0,s)|0;c[g>>2]=(c[g>>2]|0)==73?79:78;pz(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[(c[j>>2]|0)+16>>2]|0,c[g>>2]|0,c[n>>2]|0,c[t>>2]|0,c[k>>2]|0,128)|0;break};case 74:{qz(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,1,c[l>>2]|0);break};case 71:{nz(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[k>>2]|0,c[l>>2]|0);dz(c[h>>2]|0);nz(c[h>>2]|0,c[(c[j>>2]|0)+16>>2]|0,c[k>>2]|0,c[l>>2]|0);az(c[h>>2]|0);break};case 72:{c[u>>2]=cz(c[o>>2]|0)|0;ez(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[u>>2]|0,c[l>>2]^8);dz(c[h>>2]|0);nz(c[h>>2]|0,c[(c[j>>2]|0)+16>>2]|0,c[k>>2]|0,c[l>>2]|0);$y(c[o>>2]|0,c[u>>2]|0);az(c[h>>2]|0);break};default:{if((sz(c[j>>2]|0)|0)!=0){Qv(c[o>>2]|0,16,0,c[k>>2]|0)|0;break a}if((Vx(c[j>>2]|0)|0)==0){c[n>>2]=oz(c[h>>2]|0,c[j>>2]|0,m)|0;Tv(c[o>>2]|0,44,c[n>>2]|0,c[k>>2]|0,(c[l>>2]|0)!=0&1)|0}}}}while(0);Xv(c[h>>2]|0,c[m>>2]|0);Xv(c[h>>2]|0,c[s>>2]|0);i=p;return}function oz(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+48|0;l=m+32|0;n=m+28|0;j=m+24|0;p=m+20|0;h=m+16|0;o=m+8|0;f=m+4|0;k=m;q=m+12|0;c[n>>2]=a;c[j>>2]=b;c[p>>2]=e;c[j>>2]=Pw(c[j>>2]|0)|0;if((d[(c[n>>2]|0)+23>>0]|0|0)!=0){if((d[c[j>>2]>>0]|0|0)!=159){if((Vz(c[j>>2]|0)|0)!=0){c[o>>2]=c[(c[n>>2]|0)+316>>2];c[c[p>>2]>>2]=0;a:do{if((c[o>>2]|0)!=0){c[k>>2]=c[(c[o>>2]|0)+4>>2];c[f>>2]=c[c[o>>2]>>2];while(1){if((c[f>>2]|0)<=0){break a}if(((d[(c[k>>2]|0)+13>>0]|0)>>>2&1|0)!=0){if((jx(c[c[k>>2]>>2]|0,c[j>>2]|0,-1)|0)==0){break}}c[k>>2]=(c[k>>2]|0)+20;c[f>>2]=(c[f>>2]|0)+ -1}c[l>>2]=c[(c[k>>2]|0)+16>>2];a=c[l>>2]|0;i=m;return a|0}}while(0);b=(c[n>>2]|0)+72|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[h>>2]=a;Jz(c[n>>2]|0,c[j>>2]|0,c[h>>2]|0,1)}else{g=12}}else{g=12}}else{g=12}do{if((g|0)==12){c[q>>2]=Wv(c[n>>2]|0)|0;c[h>>2]=wz(c[n>>2]|0,c[j>>2]|0,c[q>>2]|0)|0;if((c[h>>2]|0)==(c[q>>2]|0)){c[c[p>>2]>>2]=c[q>>2];break}else{Xv(c[n>>2]|0,c[q>>2]|0);c[c[p>>2]>>2]=0;break}}}while(0);c[l>>2]=c[h>>2];a=c[l>>2]|0;i=m;return a|0}function pz(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;l=i;i=i+48|0;n=l+40|0;v=l+36|0;u=l+32|0;s=l+28|0;p=l+24|0;r=l+20|0;q=l+12|0;t=l+8|0;m=l+4|0;k=l;o=l+16|0;c[n>>2]=a;c[v>>2]=b;c[u>>2]=d;c[s>>2]=e;c[p>>2]=f;c[r>>2]=g;c[q>>2]=h;c[t>>2]=j;c[o>>2]=Iz(c[n>>2]|0,c[v>>2]|0,c[u>>2]|0)|0;c[m>>2]=(Uz(c[v>>2]|0,c[u>>2]|0,c[t>>2]|0)|0)&255;c[k>>2]=Sv(c[(c[n>>2]|0)+8>>2]|0,c[s>>2]|0,c[r>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,-4)|0;gf(c[(c[n>>2]|0)+8>>2]|0,c[m>>2]&255);i=l;return c[k>>2]|0}function qz(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+224|0;h=j+216|0;p=j+212|0;o=j+208|0;k=j+204|0;n=j+200|0;m=j+152|0;q=j+96|0;s=j+48|0;r=j;l=j+144|0;c[h>>2]=b;c[p>>2]=d;c[o>>2]=e;c[k>>2]=f;c[n>>2]=g;c[l>>2]=0;e=r+0|0;f=(c[(c[p>>2]|0)+12>>2]|0)+0|0;g=e+48|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));a[m>>0]=72;c[m+12>>2]=q;c[m+16>>2]=s;a[q>>0]=83;c[q+12>>2]=r;c[q+16>>2]=c[c[(c[(c[p>>2]|0)+20>>2]|0)+4>>2]>>2];a[s>>0]=81;c[s+12>>2]=r;c[s+16>>2]=c[(c[(c[(c[p>>2]|0)+20>>2]|0)+4>>2]|0)+20>>2];Fz(r,oz(c[h>>2]|0,r,l)|0);p=c[h>>2]|0;o=c[o>>2]|0;n=c[n>>2]|0;if((c[k>>2]|0)!=0){nz(p,m,o,n);d=c[h>>2]|0;b=c[l>>2]|0;Xv(d,b);i=j;return}else{ez(p,m,o,n);d=c[h>>2]|0;b=c[l>>2]|0;Xv(d,b);i=j;return}}function rz(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=i;i=i+48|0;l=m+40|0;j=m+36|0;q=m+32|0;p=m+28|0;o=m+24|0;r=m+44|0;s=m+20|0;k=m+12|0;n=m+8|0;t=m+4|0;g=m;h=m+16|0;c[l>>2]=b;c[j>>2]=d;c[q>>2]=e;c[p>>2]=f;c[o>>2]=0;c[n>>2]=c[(c[l>>2]|0)+8>>2];c[s>>2]=tz(c[l>>2]|0,c[j>>2]|0,o)|0;a[r>>0]=uz(c[j>>2]|0)|0;dz(c[l>>2]|0);c[k>>2]=Wv(c[l>>2]|0)|0;vz(c[l>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[k>>2]|0);e=c[n>>2]|0;f=c[k>>2]|0;if((c[p>>2]|0)==(c[q>>2]|0)){Qv(e,76,f,c[p>>2]|0)|0}else{c[t>>2]=oy(e,77,f)|0;Qv(c[n>>2]|0,105,c[(c[j>>2]|0)+28>>2]|0,c[q>>2]|0)|0;Qv(c[n>>2]|0,16,0,c[p>>2]|0)|0;jw(c[n>>2]|0,c[t>>2]|0)}f=c[n>>2]|0;t=c[k>>2]|0;if((c[s>>2]|0)==1){Qv(f,38,t,c[q>>2]|0)|0;Tv(c[n>>2]|0,67,c[(c[j>>2]|0)+28>>2]|0,c[q>>2]|0,c[k>>2]|0)|0;d=c[l>>2]|0;b=c[k>>2]|0;Xv(d,b);b=c[l>>2]|0;az(b);i=m;return}Sv(f,47,t,1,0,r,1)|0;if((c[o>>2]|0)!=0){if((c[q>>2]|0)!=(c[p>>2]|0)){c[g>>2]=ff(c[n>>2]|0,66,c[(c[j>>2]|0)+28>>2]|0,0,c[k>>2]|0,1)|0;Qv(c[n>>2]|0,44,c[o>>2]|0,c[p>>2]|0)|0;Qv(c[n>>2]|0,45,c[o>>2]|0,c[q>>2]|0)|0;c[h>>2]=ff(c[n>>2]|0,66,c[(c[j>>2]|0)+28>>2]|0,0,c[o>>2]|0,1)|0;Qv(c[n>>2]|0,25,0,c[o>>2]|0)|0;Qv(c[n>>2]|0,16,0,c[q>>2]|0)|0;jw(c[n>>2]|0,c[h>>2]|0);Qv(c[n>>2]|0,25,1,c[o>>2]|0)|0;Qv(c[n>>2]|0,16,0,c[p>>2]|0)|0;jw(c[n>>2]|0,c[g>>2]|0);d=c[l>>2]|0;b=c[k>>2]|0;Xv(d,b);b=c[l>>2]|0;az(b);i=m;return}}ff(c[n>>2]|0,65,c[(c[j>>2]|0)+28>>2]|0,c[q>>2]|0,c[k>>2]|0,1)|0;d=c[l>>2]|0;b=c[k>>2]|0;Xv(d,b);b=c[l>>2]|0;az(b);i=m;return}function sz(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;f=b;e=b+4|0;c[f>>2]=a;c[e>>2]=0;do{if((c[(c[f>>2]|0)+4>>2]&1|0)!=0){c[d>>2]=0}else{if((ex(c[f>>2]|0,e)|0)!=0){c[d>>2]=(c[e>>2]|0)!=0&1;break}else{c[d>>2]=0;break}}}while(0);i=b;return c[d>>2]|0}function tz(f,g,h){f=f|0;g=g|0;h=h|0;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;l=i;i=i+80|0;m=l+56|0;o=l+44|0;p=l+48|0;D=l+52|0;k=l+60|0;v=l+64|0;t=l+68|0;n=l+40|0;w=l;B=l+12|0;A=l+4|0;y=l+72|0;u=l+74|0;r=l+8|0;s=l+16|0;x=l+20|0;z=l+24|0;C=l+28|0;q=l+32|0;j=l+36|0;c[m>>2]=f;c[o>>2]=g;c[p>>2]=h;c[k>>2]=0;g=(c[m>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[v>>2]=f;c[t>>2]=(c[p>>2]|0)==0&1;c[n>>2]=Ov(c[m>>2]|0)|0;if((c[(c[o>>2]|0)+4>>2]&2048|0)!=0){h=c[(c[o>>2]|0)+20>>2]|0}else{h=0}c[D>>2]=h;a:do{if((c[(c[m>>2]|0)+64>>2]|0)==0){if((Sz(c[D>>2]|0)|0)!=0){c[w>>2]=c[c[m>>2]>>2];c[B>>2]=c[(c[(c[D>>2]|0)+32>>2]|0)+24>>2];c[A>>2]=c[c[(c[c[D>>2]>>2]|0)+4>>2]>>2];b[y>>1]=b[(c[A>>2]|0)+32>>1]|0;b[u>>1]=ef(c[w>>2]|0,c[(c[B>>2]|0)+68>>2]|0)|0;aw(c[m>>2]|0,b[u>>1]|0);py(c[m>>2]|0,b[u>>1]|0,c[(c[B>>2]|0)+32>>2]|0,0,c[c[B>>2]>>2]|0);D=c[m>>2]|0;if((b[y>>1]|0)<0){c[r>>2]=Gz(D)|0;qy(c[m>>2]|0,c[v>>2]|0,b[u>>1]|0,c[B>>2]|0,52);c[k>>2]=1;jw(c[n>>2]|0,c[r>>2]|0);break}c[x>>2]=Iz(D,c[(c[o>>2]|0)+12>>2]|0,c[A>>2]|0)|0;c[z>>2]=Tz(c[o>>2]|0,a[(c[(c[B>>2]|0)+4>>2]|0)+((b[y>>1]|0)*24|0)+21>>0]|0)|0;c[s>>2]=c[(c[B>>2]|0)+8>>2];while(1){if((c[s>>2]|0)==0){break a}if((c[k>>2]|0)!=0){break a}if((c[z>>2]|0)==0){break a}do{if((b[c[(c[s>>2]|0)+4>>2]>>1]|0)==(b[y>>1]|0)){f=xh(c[w>>2]|0,a[(c[(c[(c[w>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[c[(c[s>>2]|0)+32>>2]>>2]|0,0)|0;if((f|0)==(c[x>>2]|0)){if((c[t>>2]|0)!=0){if((e[(c[s>>2]|0)+50>>1]|0)!=1){break}if((d[(c[s>>2]|0)+54>>0]|0)==0){break}}c[C>>2]=Gz(c[m>>2]|0)|0;Tv(c[n>>2]|0,52,c[v>>2]|0,c[(c[s>>2]|0)+44>>2]|0,b[u>>1]|0)|0;ry(c[m>>2]|0,c[s>>2]|0);c[k>>2]=3+(d[c[(c[s>>2]|0)+28>>2]>>0]|0);if((c[p>>2]|0)!=0){if((a[(c[(c[B>>2]|0)+4>>2]|0)+((b[y>>1]|0)*24|0)+20>>0]|0)==0){g=(c[m>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[c[p>>2]>>2]=f;Qv(c[n>>2]|0,28,0,c[c[p>>2]>>2]|0)|0}}jw(c[n>>2]|0,c[C>>2]|0)}}}while(0);c[s>>2]=c[(c[s>>2]|0)+20>>2]}}}}while(0);if((c[k>>2]|0)!=0){c[(c[o>>2]|0)+28>>2]=c[v>>2];f=c[k>>2]|0;i=l;return f|0}c[q>>2]=c[(c[m>>2]|0)+424>>2];c[j>>2]=0;c[k>>2]=2;r=c[m>>2]|0;if((c[p>>2]|0)!=0){g=r+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[j>>2]=f;c[c[p>>2]>>2]=f;Qv(c[n>>2]|0,28,0,c[c[p>>2]>>2]|0)|0}else{c[r+424>>2]=0;if((b[(c[(c[o>>2]|0)+12>>2]|0)+32>>1]|0)<0){if((c[(c[o>>2]|0)+4>>2]&2048|0)==0){c[k>>2]=1}}}Ez(c[m>>2]|0,c[o>>2]|0,c[j>>2]|0,(c[k>>2]|0)==1&1)|0;c[(c[m>>2]|0)+424>>2]=c[q>>2];f=c[k>>2]|0;i=l;return f|0}function uz(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d;e=d+4|0;c[f>>2]=b;a[e>>0]=Iw(c[(c[f>>2]|0)+12>>2]|0)|0;b=c[f>>2]|0;if((c[(c[f>>2]|0)+16>>2]|0)!=0){a[e>>0]=Rz(c[b+16>>2]|0,a[e>>0]|0)|0;b=a[e>>0]|0;i=d;return b|0}if((c[b+4>>2]&2048|0)!=0){a[e>>0]=Rz(c[c[(c[c[(c[f>>2]|0)+20>>2]>>2]|0)+4>>2]>>2]|0,a[e>>0]|0)|0;b=a[e>>0]|0;i=d;return b|0}if((a[e>>0]|0)!=0){b=a[e>>0]|0;i=d;return b|0}a[e>>0]=98;b=a[e>>0]|0;i=d;return b|0}function vz(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f+12|0;h=f;g=f+4|0;k=f+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=e;if((c[h>>2]|0)!=0){if((d[c[h>>2]>>0]|0|0)==159){Qv(c[(c[j>>2]|0)+8>>2]|0,33,c[(c[h>>2]|0)+28>>2]|0,c[g>>2]|0)|0;i=f;return}}c[k>>2]=wz(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;if((c[k>>2]|0)==(c[g>>2]|0)){i=f;return}if((c[(c[j>>2]|0)+8>>2]|0)==0){i=f;return}Qv(c[(c[j>>2]|0)+8>>2]|0,34,c[k>>2]|0,c[g>>2]|0)|0;i=f;return} + + + +function Kk(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;o=i;i=i+48|0;h=o+40|0;q=o+36|0;k=o+32|0;n=o+28|0;r=o+24|0;s=o+20|0;l=o+12|0;j=o+8|0;t=o+4|0;m=o;p=o+16|0;c[q>>2]=a;c[k>>2]=b;c[n>>2]=e;c[r>>2]=f;c[s>>2]=g;c[t>>2]=c[(c[k>>2]|0)+4>>2];c[m>>2]=(d[(c[q>>2]|0)+231>>0]|0|0)!=0?49:50;c[j>>2]=Tj(c[q>>2]|0,c[k>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];a=c[h>>2]|0;i=o;return a|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[t>>2]|0)){break}c[p>>2]=c[(c[c[k>>2]>>2]|0)+(c[l>>2]<<2)>>2];if((c[(c[p>>2]|0)+40>>2]|0)==0){break}if((Uj(c[p>>2]|0,c[r>>2]|0,c[s>>2]|0)|0)!=0){break}c[l>>2]=(c[l>>2]|0)+1}c[(c[k>>2]|0)+8>>2]=c[l>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[k>>2]|0)+8>>2]|0)){p=13;break}c[j>>2]=Fj(c[q>>2]|0,c[(c[c[k>>2]>>2]|0)+(c[l>>2]<<2)>>2]|0)|0;if((c[j>>2]|0)!=0){p=11;break}c[l>>2]=(c[l>>2]|0)+1}if((p|0)==11){c[h>>2]=c[j>>2];a=c[h>>2]|0;i=o;return a|0}else if((p|0)==13){Cj(c[c[k>>2]>>2]|0,c[l>>2]|0,c[l>>2]|0,c[m>>2]|0);c[(c[k>>2]|0)+24>>2]=c[n>>2];c[h>>2]=0;a=c[h>>2]|0;i=o;return a|0}return 0}function Lk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;m=e+28|0;k=e;f=e+4|0;l=e+8|0;d=e+12|0;j=e+16|0;g=e+20|0;h=e+24|0;c[m>>2]=a;c[k>>2]=b;c[f>>2]=c[c[m>>2]>>2];c[d>>2]=0;c[l>>2]=0;while(1){if((c[d>>2]|0)!=0){f=8;break}if((c[l>>2]|0)>=(c[(c[k>>2]|0)+48>>2]|0)){f=8;break}c[j>>2]=(c[k>>2]|0)+56+((c[l>>2]|0)*24|0);if((c[(c[j>>2]|0)+20>>2]|0)!=0){c[g>>2]=0;c[h>>2]=0;c[d>>2]=Mk(c[f>>2]|0,c[j>>2]|0,c[(c[k>>2]|0)+52>>2]|0,g,h)|0;if((c[d>>2]|0)==0){Nk(c[f>>2]|0,c[k>>2]|0,c[l>>2]|0,c[h>>2]|0,c[g>>2]|0)}}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==8){i=e;return c[d>>2]|0}return 0}function Mk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+176|0;j=q+172|0;p=q+168|0;m=q+164|0;h=q+160|0;o=q+156|0;g=q+152|0;l=q+144|0;n=q+16|0;k=q;r=q+148|0;c[j>>2]=a;c[p>>2]=b;c[m>>2]=d;c[h>>2]=e;c[o>>2]=f;c[l>>2]=c[(c[p>>2]|0)+20>>2];e=n+0|0;f=e+128|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));c[k+12>>2]=3|((c[(c[p>>2]|0)+8>>2]|0)!=0?8:0)|((c[(c[p>>2]|0)+12>>2]|0)!=0?32:0)|((c[m>>2]|0)<(c[(c[j>>2]|0)+24>>2]|0)?4:0);c[k+8>>2]=c[m>>2];c[k>>2]=c[c[p>>2]>>2];c[k+4>>2]=c[(c[p>>2]|0)+4>>2];c[g>>2]=ej(c[j>>2]|0,c[l>>2]|0,k)|0;while(1){if(0!=(c[g>>2]|0)){break}a=fj(c[j>>2]|0,c[l>>2]|0)|0;c[g>>2]=a;if(100!=(a|0)){break}c[g>>2]=Rk(c[j>>2]|0,n,c[(c[l>>2]|0)+48>>2]|0,c[(c[l>>2]|0)+52>>2]|0)|0}if((c[g>>2]|0)==0){c[g>>2]=Sk(c[j>>2]|0,n)|0}if((c[g>>2]|0)==0){c[c[o>>2]>>2]=c[n>>2];c[c[h>>2]>>2]=c[n+64>>2];a=c[l>>2]|0;Tk(a);a=c[p>>2]|0;a=a+20|0;c[a>>2]=0;a=c[g>>2]|0;i=q;return a|0}c[r>>2]=0;while(1){if((c[r>>2]|0)>=16){break}oc(c[n+(c[r>>2]<<2)>>2]|0);c[r>>2]=(c[r>>2]|0)+1}a=c[l>>2]|0;Tk(a);a=c[p>>2]|0;a=a+20|0;c[a>>2]=0;a=c[g>>2]|0;i=q;return a|0}function Nk(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=i;i=i+48|0;h=q+36|0;k=q+32|0;n=q+28|0;m=q+24|0;l=q+20|0;p=q+16|0;r=q+8|0;j=q+4|0;s=q;o=q+12|0;c[h>>2]=a;c[k>>2]=b;c[n>>2]=e;c[m>>2]=f;c[l>>2]=g;g=c[k>>2]|0;do{if((c[m>>2]|0)==0){oc(c[g>>2]|0);c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+4>>2]=0}else{if((c[g+44>>2]|0)<0){c[c[k>>2]>>2]=c[m>>2];c[(c[k>>2]|0)+4>>2]=c[l>>2];break}if((c[c[k>>2]>>2]|0)==0){oc(c[m>>2]|0);break}g=c[c[k>>2]>>2]|0;if((c[(c[k>>2]|0)+44>>2]|0)<(c[n>>2]|0)){c[p>>2]=g;c[j>>2]=c[(c[k>>2]|0)+4>>2];c[r>>2]=c[m>>2];c[s>>2]=c[l>>2];c[o>>2]=(c[n>>2]|0)-(c[(c[k>>2]|0)+44>>2]|0)}else{c[r>>2]=g;c[s>>2]=c[(c[k>>2]|0)+4>>2];c[p>>2]=c[m>>2];c[j>>2]=c[l>>2];c[o>>2]=(c[(c[k>>2]|0)+44>>2]|0)-(c[n>>2]|0)}Ok(d[(c[h>>2]|0)+231>>0]|0,c[o>>2]|0,c[p>>2]|0,c[j>>2]|0,c[r>>2]|0,s);oc(c[p>>2]|0);c[c[k>>2]>>2]=c[r>>2];c[(c[k>>2]|0)+4>>2]=c[s>>2]}}while(0);if((c[n>>2]|0)<=(c[(c[k>>2]|0)+44>>2]|0)){i=q;return}c[(c[k>>2]|0)+44>>2]=c[n>>2];i=q;return}function Ok(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,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;k=i;i=i+112|0;t=k+96|0;m=k+92|0;B=k+88|0;C=k+84|0;A=k+80|0;j=k+76|0;s=k+8|0;x=k;o=k+24|0;y=k+72|0;z=k+48|0;u=k+52|0;v=k+40|0;l=k+44|0;q=k+56|0;h=k+60|0;w=k+16|0;n=k+64|0;p=k+32|0;r=k+68|0;c[t>>2]=a;c[m>>2]=b;c[B>>2]=d;c[C>>2]=e;c[A>>2]=f;c[j>>2]=g;a=s;c[a>>2]=0;c[a+4>>2]=0;a=x;c[a>>2]=0;c[a+4>>2]=0;a=o;c[a>>2]=0;c[a+4>>2]=0;c[y>>2]=(c[B>>2]|0)+(c[C>>2]|0);c[z>>2]=(c[A>>2]|0)+(c[c[j>>2]>>2]|0);c[u>>2]=c[B>>2];c[v>>2]=c[A>>2];c[q>>2]=0;c[h>>2]=c[A>>2];c[l>>2]=c[h>>2];Pk(u,c[y>>2]|0,0,s);Pk(v,c[z>>2]|0,0,x);while(1){if((c[u>>2]|0)==0){m=11;break}if((c[v>>2]|0)==0){m=11;break}C=(c[t>>2]|0)!=0?-1:1;A=s;B=x;B=$K(c[A>>2]|0,c[A+4>>2]|0,c[B>>2]|0,c[B+4>>2]|0)|0;B=nL(C|0,((C|0)<0)<<31>>31|0,B|0,D|0)|0;C=w;c[C>>2]=B;c[C+4>>2]=D;C=w;if((c[C>>2]|0)==0&(c[C+4>>2]|0)==0){c[n>>2]=c[l>>2];A=o;B=c[A+4>>2]|0;C=p;c[C>>2]=c[A>>2];c[C+4>>2]=B;c[r>>2]=c[q>>2];C=s;Qk(l,c[t>>2]|0,o,q,c[C>>2]|0,c[C+4>>2]|0);if(0==(Fk(l,c[m>>2]|0,0,1,u,v)|0)){c[l>>2]=c[n>>2];A=p;B=c[A+4>>2]|0;C=o;c[C>>2]=c[A>>2];c[C+4>>2]=B;c[q>>2]=c[r>>2]}Pk(u,c[y>>2]|0,c[t>>2]|0,s);Pk(v,c[z>>2]|0,c[t>>2]|0,x);continue}else{if((c[w+4>>2]|0)<0){Pj(0,u);Pk(u,c[y>>2]|0,c[t>>2]|0,s);continue}else{Pj(0,v);Pk(v,c[z>>2]|0,c[t>>2]|0,x);continue}}}if((m|0)==11){c[c[j>>2]>>2]=(c[l>>2]|0)-(c[h>>2]|0);i=k;return}}function Pk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;k=g+20|0;l=g+16|0;f=g+8|0;h=g+12|0;j=g;c[k>>2]=a;c[l>>2]=b;c[f>>2]=d;c[h>>2]=e;b=c[k>>2]|0;if((c[c[k>>2]>>2]|0)>>>0>=(c[l>>2]|0)>>>0){c[b>>2]=0;i=g;return}b=Kj(c[b>>2]|0,j)|0;k=c[k>>2]|0;c[k>>2]=(c[k>>2]|0)+b;k=c[j>>2]|0;j=c[j+4>>2]|0;h=c[h>>2]|0;b=h;d=c[b>>2]|0;b=c[b+4>>2]|0;if((c[f>>2]|0)!=0){a=$K(d|0,b|0,k|0,j|0)|0;l=h;c[l>>2]=a;c[l+4>>2]=D;i=g;return}else{a=dL(d|0,b|0,k|0,j|0)|0;l=h;c[l>>2]=a;c[l+4>>2]=D;i=g;return}}function Qk(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;k=h+28|0;p=h+24|0;m=h+20|0;n=h+16|0;l=h;o=h+8|0;c[k>>2]=a;c[p>>2]=b;c[m>>2]=d;c[n>>2]=e;a=l;c[a>>2]=f;c[a+4>>2]=g;if((c[p>>2]|0)==0){j=3}else{if((c[c[n>>2]>>2]|0)==0){j=3}else{p=c[m>>2]|0;a=l;a=$K(c[p>>2]|0,c[p+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;p=o;c[p>>2]=a;c[p+4>>2]=D}}if((j|0)==3){p=l;a=c[m>>2]|0;a=$K(c[p>>2]|0,c[p+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;p=o;c[p>>2]=a;c[p+4>>2]=D}a=o;a=uj(c[c[k>>2]>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;b=c[k>>2]|0;c[b>>2]=(c[b>>2]|0)+a;b=l;a=c[b+4>>2]|0;p=c[m>>2]|0;c[p>>2]=c[b>>2];c[p+4>>2]=a;c[c[n>>2]>>2]=1;i=h;return}function Rk(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+48|0;j=q+40|0;n=q+36|0;m=q+32|0;l=q+28|0;t=q+24|0;o=q+20|0;p=q+12|0;g=q+8|0;r=q+4|0;s=q;k=q+16|0;c[n>>2]=a;c[m>>2]=b;c[l>>2]=e;c[t>>2]=f;a:do{if((c[c[m>>2]>>2]|0)==0){a=mc(c[t>>2]|0)|0;c[c[m>>2]>>2]=a;c[(c[m>>2]|0)+64>>2]=c[t>>2];if((c[c[m>>2]>>2]|0)!=0){fL(c[c[m>>2]>>2]|0,c[l>>2]|0,c[t>>2]|0)|0;break}c[j>>2]=7;a=c[j>>2]|0;i=q;return a|0}else{c[o>>2]=c[l>>2];c[p>>2]=c[t>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>=16){break a}if((c[(c[m>>2]|0)+(c[g>>2]<<2)>>2]|0)==0){h=8;break}c[k>>2]=Uk(d[(c[n>>2]|0)+231>>0]|0,c[o>>2]|0,c[p>>2]|0,c[(c[m>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[m>>2]|0)+64+(c[g>>2]<<2)>>2]|0,r,s)|0;t=(c[o>>2]|0)!=(c[l>>2]|0);if((c[k>>2]|0)!=0){break}if(t){oc(c[o>>2]|0)}oc(c[(c[m>>2]|0)+(c[g>>2]<<2)>>2]|0);c[(c[m>>2]|0)+(c[g>>2]<<2)>>2]=0;c[o>>2]=c[r>>2];c[p>>2]=c[s>>2];if(((c[g>>2]|0)+1|0)==16){c[(c[m>>2]|0)+(c[g>>2]<<2)>>2]=c[o>>2];c[(c[m>>2]|0)+64+(c[g>>2]<<2)>>2]=c[p>>2]}c[g>>2]=(c[g>>2]|0)+1}if((h|0)==8){c[(c[m>>2]|0)+(c[g>>2]<<2)>>2]=c[o>>2];c[(c[m>>2]|0)+64+(c[g>>2]<<2)>>2]=c[p>>2];break}if(t){oc(c[o>>2]|0)}c[j>>2]=c[k>>2];a=c[j>>2]|0;i=q;return a|0}}while(0);c[j>>2]=0;a=c[j>>2]|0;i=q;return a|0}function Sk(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+48|0;g=h+32|0;m=h+28|0;e=h+24|0;j=h+20|0;f=h+16|0;l=h+8|0;o=h+4|0;n=h;k=h+12|0;c[m>>2]=a;c[e>>2]=b;c[j>>2]=0;c[f>>2]=0;c[l>>2]=0;a:while(1){if((c[l>>2]|0)>=16){l=10;break}do{if((c[(c[e>>2]|0)+(c[l>>2]<<2)>>2]|0)!=0){if((c[j>>2]|0)==0){c[j>>2]=c[(c[e>>2]|0)+(c[l>>2]<<2)>>2];c[f>>2]=c[(c[e>>2]|0)+64+(c[l>>2]<<2)>>2];c[(c[e>>2]|0)+(c[l>>2]<<2)>>2]=0;break}c[k>>2]=Uk(d[(c[m>>2]|0)+231>>0]|0,c[(c[e>>2]|0)+(c[l>>2]<<2)>>2]|0,c[(c[e>>2]|0)+64+(c[l>>2]<<2)>>2]|0,c[j>>2]|0,c[f>>2]|0,n,o)|0;if((c[k>>2]|0)!=0){l=7;break a}oc(c[(c[e>>2]|0)+(c[l>>2]<<2)>>2]|0);oc(c[j>>2]|0);c[(c[e>>2]|0)+(c[l>>2]<<2)>>2]=0;c[j>>2]=c[n>>2];c[f>>2]=c[o>>2]}}while(0);c[l>>2]=(c[l>>2]|0)+1}if((l|0)==7){oc(c[j>>2]|0);c[g>>2]=c[k>>2];a=c[g>>2]|0;i=h;return a|0}else if((l|0)==10){c[c[e>>2]>>2]=c[j>>2];c[(c[e>>2]|0)+64>>2]=c[f>>2];c[g>>2]=0;a=c[g>>2]|0;i=h;return a|0}return 0}function Tk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;lj(c[d>>2]|0);oc(c[d>>2]|0);i=b;return}function Uk(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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;t=i;i=i+96|0;k=t+56|0;q=t+64|0;C=t+68|0;A=t+72|0;B=t+88|0;z=t+84|0;m=t+80|0;o=t+76|0;r=t+16|0;s=t+8|0;v=t;x=t+60|0;y=t+52|0;p=t+48|0;u=t+44|0;n=t+40|0;l=t+36|0;w=t+32|0;j=t+24|0;c[q>>2]=a;c[C>>2]=b;c[A>>2]=d;c[B>>2]=e;c[z>>2]=f;c[m>>2]=g;c[o>>2]=h;a=r;c[a>>2]=0;c[a+4>>2]=0;a=s;c[a>>2]=0;c[a+4>>2]=0;a=v;c[a>>2]=0;c[a+4>>2]=0;c[x>>2]=(c[C>>2]|0)+(c[A>>2]|0);c[y>>2]=(c[B>>2]|0)+(c[z>>2]|0);c[p>>2]=c[C>>2];c[u>>2]=c[B>>2];c[w>>2]=0;c[c[m>>2]>>2]=0;c[c[o>>2]>>2]=0;c[l>>2]=mc((c[A>>2]|0)+(c[z>>2]|0)+10-1|0)|0;if((c[l>>2]|0)==0){c[k>>2]=7;C=c[k>>2]|0;i=t;return C|0}c[n>>2]=c[l>>2];Pk(p,c[x>>2]|0,0,r);Pk(u,c[y>>2]|0,0,s);a:while(1){if((c[p>>2]|0)==0){if((c[u>>2]|0)==0){break}}C=(c[q>>2]|0)!=0?-1:1;A=r;B=s;B=$K(c[A>>2]|0,c[A+4>>2]|0,c[B>>2]|0,c[B+4>>2]|0)|0;B=nL(C|0,((C|0)<0)<<31>>31|0,B|0,D|0)|0;C=j;c[C>>2]=B;c[C+4>>2]=D;if((c[u>>2]|0)!=0){if((c[p>>2]|0)!=0){C=j;if((c[C>>2]|0)==0&(c[C+4>>2]|0)==0){C=r;Qk(n,c[q>>2]|0,v,w,c[C>>2]|0,c[C+4>>2]|0);Vk(n,p,u);Pk(p,c[x>>2]|0,c[q>>2]|0,r);Pk(u,c[y>>2]|0,c[q>>2]|0,s);continue}}}do{if((c[u>>2]|0)!=0){if((c[p>>2]|0)!=0){if((c[j+4>>2]|0)<0){break}}C=s;Qk(n,c[q>>2]|0,v,w,c[C>>2]|0,c[C+4>>2]|0);Pj(n,u);Pk(u,c[y>>2]|0,c[q>>2]|0,s);continue a}}while(0);C=r;Qk(n,c[q>>2]|0,v,w,c[C>>2]|0,c[C+4>>2]|0);Pj(n,p);Pk(p,c[x>>2]|0,c[q>>2]|0,r)}c[c[m>>2]>>2]=c[l>>2];c[c[o>>2]>>2]=(c[n>>2]|0)-(c[l>>2]|0);c[k>>2]=0;C=c[k>>2]|0;i=t;return C|0}function Vk(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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;g=i;i=i+64|0;n=g+56|0;k=g+52|0;m=g+48|0;q=g+44|0;j=g+40|0;l=g+36|0;o=g+32|0;p=g+24|0;h=g+16|0;r=g+8|0;s=g;t=g+28|0;c[n>>2]=b;c[k>>2]=e;c[m>>2]=f;c[q>>2]=c[c[n>>2]>>2];c[j>>2]=c[c[k>>2]>>2];c[l>>2]=c[c[m>>2]>>2];a:while(1){if((a[c[j>>2]>>0]|0)==0){if((a[c[l>>2]>>0]|0)==0){break}}f=c[j>>2]|0;do{if((a[c[j>>2]>>0]|0)==1){e=(c[j>>2]|0)+1|0;if((a[f+1>>0]&128|0)!=0){Lj(e,o)|0;break}else{c[o>>2]=d[e>>0]|0;break}}else{if((a[f>>0]|0)==0){c[o>>2]=2147483647;break}else{c[o>>2]=0;break}}}while(0);f=c[l>>2]|0;do{if((a[c[l>>2]>>0]|0)==1){e=(c[l>>2]|0)+1|0;if((a[f+1>>0]&128|0)!=0){Lj(e,p)|0;break}else{c[p>>2]=d[e>>0]|0;break}}else{if((a[f>>0]|0)==0){c[p>>2]=2147483647;break}else{c[p>>2]=0;break}}}while(0);if((c[o>>2]|0)!=(c[p>>2]|0)){if((c[o>>2]|0)<(c[p>>2]|0)){b=Wk(q,c[o>>2]|0)|0;c[j>>2]=(c[j>>2]|0)+b;Jj(q,j);continue}else{b=Wk(q,c[p>>2]|0)|0;c[l>>2]=(c[l>>2]|0)+b;Jj(q,l);continue}}b=h;c[b>>2]=0;c[b+4>>2]=0;b=r;c[b>>2]=0;c[b+4>>2]=0;b=s;c[b>>2]=0;c[b+4>>2]=0;c[t>>2]=Wk(q,c[o>>2]|0)|0;c[j>>2]=(c[j>>2]|0)+(c[t>>2]|0);c[l>>2]=(c[l>>2]|0)+(c[t>>2]|0);Gk(j,h);Gk(l,r);while(1){e=h;u=c[e+4>>2]|0;f=r;b=c[f+4>>2]|0;f=(u|0)<(b|0)|((u|0)==(b|0)?(c[e>>2]|0)>>>0<(c[f>>2]|0)>>>0:0);e=h;b=r;Hk(q,s,f?c[e>>2]|0:c[b>>2]|0,f?c[e+4>>2]|0:c[b+4>>2]|0);b=s;b=$K(c[b>>2]|0,c[b+4>>2]|0,2,0)|0;e=s;c[e>>2]=b;c[e+4>>2]=D;e=h;b=r;do{if((c[e>>2]|0)==(c[b>>2]|0)?(c[e+4>>2]|0)==(c[b+4>>2]|0):0){Xk(j,h);Xk(l,r)}else{b=h;f=c[b+4>>2]|0;u=r;e=c[u+4>>2]|0;if((f|0)<(e|0)|((f|0)==(e|0)?(c[b>>2]|0)>>>0<(c[u>>2]|0)>>>0:0)){Xk(j,h);break}else{Xk(l,r);break}}}while(0);u=h;if((c[u>>2]|0)!=2147483647|(c[u+4>>2]|0)!=0){continue}u=r;if(!((c[u>>2]|0)!=2147483647|(c[u+4>>2]|0)!=0)){continue a}}}u=c[q>>2]|0;c[q>>2]=u+1;a[u>>0]=0;c[c[n>>2]>>2]=c[q>>2];c[c[k>>2]>>2]=(c[j>>2]|0)+1;c[c[m>>2]>>2]=(c[l>>2]|0)+1;i=g;return}function Wk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;j=e;f=e+4|0;h=e+8|0;c[g>>2]=b;c[j>>2]=d;c[f>>2]=0;if((c[j>>2]|0)==0){b=c[f>>2]|0;i=e;return b|0}c[h>>2]=c[c[g>>2]>>2];b=c[j>>2]|0;c[f>>2]=1+(uj((c[h>>2]|0)+1|0,b,((b|0)<0)<<31>>31)|0);a[c[h>>2]>>0]=1;c[c[g>>2]>>2]=(c[h>>2]|0)+(c[f>>2]|0);b=c[f>>2]|0;i=e;return b|0}function Xk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=b;c[f>>2]=d;if((a[c[c[g>>2]>>2]>>0]&254|0)!=0){Gk(c[g>>2]|0,c[f>>2]|0);b=c[f>>2]|0;g=b;g=$K(c[g>>2]|0,c[g+4>>2]|0,2,0)|0;c[b>>2]=g;c[b+4>>2]=D;i=e;return}else{b=c[f>>2]|0;c[b>>2]=2147483647;c[b+4>>2]=0;i=e;return}}function Yk(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;k=g+20|0;m=g;l=g+4|0;j=g+8|0;f=g+12|0;h=g+16|0;c[k>>2]=a;c[m>>2]=b;c[l>>2]=e;c[j>>2]=c[c[k>>2]>>2];c[f>>2]=0;if((d[(c[m>>2]|0)+34>>0]|0|0)!=0){if((c[c[(c[m>>2]|0)+8>>2]>>2]|0)!=1){c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[j>>2]|0)+24>>2]|0)){break}c[(c[l>>2]|0)+(((c[h>>2]|0)*3|0)+1<<2)>>2]=c[(c[k>>2]|0)+64>>2];c[(c[l>>2]|0)+(((c[h>>2]|0)*3|0)+2<<2)>>2]=c[(c[k>>2]|0)+64>>2];c[h>>2]=(c[h>>2]|0)+1}a=c[f>>2]|0;i=g;return a|0}}c[f>>2]=Zk(c[k>>2]|0,c[m>>2]|0)|0;if((c[f>>2]|0)!=0){a=c[f>>2]|0;i=g;return a|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[j>>2]|0)+24>>2]|0)){break}c[(c[l>>2]|0)+(((c[h>>2]|0)*3|0)+1<<2)>>2]=c[(c[(c[m>>2]|0)+36>>2]|0)+(((c[h>>2]|0)*3|0)+1<<2)>>2];c[(c[l>>2]|0)+(((c[h>>2]|0)*3|0)+2<<2)>>2]=c[(c[(c[m>>2]|0)+36>>2]|0)+(((c[h>>2]|0)*3|0)+2<<2)>>2];c[h>>2]=(c[h>>2]|0)+1}a=c[f>>2]|0;i=g;return a|0}function Zk(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+64|0;h=j+44|0;m=j+40|0;s=j+36|0;p=j+32|0;f=j+28|0;l=j+24|0;q=j+16|0;n=j+8|0;r=j;k=j+48|0;o=j+20|0;c[m>>2]=b;c[s>>2]=e;c[p>>2]=0;do{if((c[(c[s>>2]|0)+36>>2]|0)==0){c[f>>2]=c[c[m>>2]>>2];t=(c[m>>2]|0)+32|0;e=c[t+4>>2]|0;b=n;c[b>>2]=c[t>>2];c[b+4>>2]=e;c[l>>2]=c[s>>2];while(1){if((c[(c[l>>2]|0)+8>>2]|0)!=0){e=(c[c[(c[l>>2]|0)+8>>2]>>2]|0)==1}else{e=0}s=c[l>>2]|0;if(!e){break}c[l>>2]=c[s+8>>2]}e=s+24|0;b=c[e+4>>2]|0;t=r;c[t>>2]=c[e>>2];c[t+4>>2]=b;a[k>>0]=a[(c[l>>2]|0)+32>>0]|0;c[q>>2]=c[l>>2];while(1){if((c[q>>2]|0)==0){break}s=c[q>>2]|0;if((c[c[q>>2]>>2]|0)!=5){s=c[s+16>>2]|0}c[o>>2]=s;t=mc((c[(c[f>>2]|0)+24>>2]|0)*3<<2)|0;c[(c[o>>2]|0)+36>>2]=t;if((c[(c[o>>2]|0)+36>>2]|0)==0){g=12;break}aL(c[(c[o>>2]|0)+36>>2]|0,0,(c[(c[f>>2]|0)+24>>2]|0)*3<<2|0)|0;c[q>>2]=c[(c[q>>2]|0)+12>>2]}if((g|0)==12){c[h>>2]=7;t=c[h>>2]|0;i=j;return t|0}wk(c[m>>2]|0,c[l>>2]|0,p);while(1){if((d[(c[m>>2]|0)+6>>0]|0)!=0){break}if((c[p>>2]|0)!=0){break}do{if((d[(c[m>>2]|0)+7>>0]|0)==0){Cd(c[(c[m>>2]|0)+8>>2]|0)|0}xk(c[m>>2]|0,c[l>>2]|0,p);a[(c[m>>2]|0)+6>>0]=a[(c[l>>2]|0)+32>>0]|0;a[(c[m>>2]|0)+7>>0]=1;c[(c[m>>2]|0)+88>>2]=1;e=(c[l>>2]|0)+24|0;b=c[e+4>>2]|0;t=(c[m>>2]|0)+32|0;c[t>>2]=c[e>>2];c[t+4>>2]=b;if((d[(c[m>>2]|0)+6>>0]|0)!=0){break}if((c[c[l>>2]>>2]|0)!=1){break}}while((_k(c[m>>2]|0,p)|0)!=0);if((c[p>>2]|0)!=0){continue}if((d[(c[m>>2]|0)+6>>0]|0)!=0){continue}$k(c[l>>2]|0)}a[(c[m>>2]|0)+6>>0]=0;e=n;b=c[e+4>>2]|0;t=(c[m>>2]|0)+32|0;c[t>>2]=c[e>>2];c[t+4>>2]=b;if((a[k>>0]|0)!=0){a[(c[l>>2]|0)+32>>0]=a[k>>0]|0;break}wk(c[m>>2]|0,c[l>>2]|0,p);do{xk(c[m>>2]|0,c[l>>2]|0,p);b=(c[l>>2]|0)+24|0;t=r;if(!((c[b>>2]|0)!=(c[t>>2]|0)?1:(c[b+4>>2]|0)!=(c[t+4>>2]|0))){break}}while((c[p>>2]|0)==0);_k(c[m>>2]|0,p)|0}}while(0);c[h>>2]=c[p>>2];t=c[h>>2]|0;i=j;return t|0}function _k(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+12|0;h=d;e=d+4|0;g=d+8|0;c[f>>2]=a;c[h>>2]=b;c[e>>2]=c[c[h>>2]>>2];c[g>>2]=0;if((c[e>>2]|0)==0){if((c[(c[f>>2]|0)+24>>2]|0)!=0){c[e>>2]=al(0,c[f>>2]|0)|0;if((c[e>>2]|0)==0){c[e>>2]=bl(c[f>>2]|0)|0}}c[g>>2]=0==(cl(c[f>>2]|0,c[(c[f>>2]|0)+12>>2]|0,e)|0)&1;dl(c[f>>2]|0);c[c[h>>2]>>2]=c[e>>2]}if((c[e>>2]|0)!=0){a=0;a=a&1;i=d;return a|0}a=(c[g>>2]|0)!=0;a=a&1;i=d;return a|0}function $k(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;k=e+16|0;l=e;h=e+4|0;j=e+8|0;f=e+20|0;g=e+12|0;c[k>>2]=b;if((c[k>>2]|0)==0){i=e;return}c[l>>2]=c[(c[k>>2]|0)+20>>2];a:do{if((c[l>>2]|0)!=0){if((c[(c[l>>2]|0)+28>>2]|0)!=0){c[h>>2]=0;c[j>>2]=c[(c[l>>2]|0)+28>>2];while(1){a[f>>0]=0;c[g>>2]=0;while(1){if((254&(a[c[j>>2]>>0]|d[f>>0])|0)==0){break}if((a[f>>0]&128|0)==0){c[g>>2]=(c[g>>2]|0)+1}l=c[j>>2]|0;c[j>>2]=l+1;a[f>>0]=a[l>>0]&128}l=(c[(c[k>>2]|0)+36>>2]|0)+(((c[h>>2]|0)*3|0)+1<<2)|0;c[l>>2]=(c[l>>2]|0)+(c[g>>2]|0);l=(c[(c[k>>2]|0)+36>>2]|0)+(((c[h>>2]|0)*3|0)+2<<2)|0;c[l>>2]=(c[l>>2]|0)+((c[g>>2]|0)>0&1);if((a[c[j>>2]>>0]|0)==0){break a}c[j>>2]=(c[j>>2]|0)+1;b=c[j>>2]|0;if((a[c[j>>2]>>0]&128|0)!=0){b=Lj(b,h)|0}else{c[h>>2]=d[b>>0]|0;b=1}c[j>>2]=(c[j>>2]|0)+b}}}}while(0);$k(c[(c[k>>2]|0)+12>>2]|0);$k(c[(c[k>>2]|0)+16>>2]|0);i=e;return}function al(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;e=f+16|0;j=f;h=f+4|0;g=f+8|0;k=f+12|0;c[j>>2]=b;c[h>>2]=d;c[g>>2]=0;if((a[(c[h>>2]|0)+7>>0]|0)!=0){c[k>>2]=0;c[g>>2]=ml(c[h>>2]|0,k)|0;if((c[g>>2]|0)==0){b=(c[h>>2]|0)+32|0;Pe(c[(c[h>>2]|0)+8>>2]|0,1,c[b>>2]|0,c[b+4>>2]|0)|0;a[(c[h>>2]|0)+7>>0]=0;if(100==(le(c[(c[h>>2]|0)+8>>2]|0)|0)){c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}c[g>>2]=Cd(c[(c[h>>2]|0)+8>>2]|0)|0;if((c[g>>2]|0)==0){if((c[(c[c[h>>2]>>2]|0)+40>>2]|0)==0){c[g>>2]=267;a[(c[h>>2]|0)+6>>0]=1}}}}if((c[g>>2]|0)!=0){if((c[j>>2]|0)!=0){he(c[j>>2]|0,c[g>>2]|0)}}c[e>>2]=c[g>>2];b=c[e>>2]|0;i=f;return b|0}function bl(a){a=a|0;var b=0,e=0,f=0,g=0,h=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;n=i;i=i+80|0;h=n+64|0;f=n+60|0;s=n+56|0;v=n;g=n+52|0;r=n+48|0;u=n+44|0;o=n+40|0;t=n+36|0;j=n+28|0;p=n+24|0;k=n+20|0;l=n+16|0;m=n+8|0;b=n+12|0;q=n+32|0;c[h>>2]=a;c[f>>2]=0;if((c[(c[h>>2]|0)+24>>2]|0)==0){a=c[f>>2]|0;i=n;return a|0}c[r>>2]=c[c[h>>2]>>2];c[u>>2]=c[(c[r>>2]|0)+36>>2];c[o>>2]=c[c[u>>2]>>2];w=Ee(c[(c[h>>2]|0)+8>>2]|0,0)|0;a=v;c[a>>2]=w;c[a+4>>2]=D;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[(c[r>>2]|0)+24>>2]|0)){break}if((c[f>>2]|0)!=0){break}if((d[(c[(c[r>>2]|0)+32>>2]|0)+(c[s>>2]|0)>>0]|0|0)==0){c[t>>2]=Fe(c[(c[h>>2]|0)+8>>2]|0,(c[s>>2]|0)+1|0)|0;c[j>>2]=0;c[f>>2]=jl(c[u>>2]|0,c[(c[h>>2]|0)+16>>2]|0,c[t>>2]|0,-1,j)|0;a:while(1){if((c[f>>2]|0)!=0){break}c[k>>2]=0;c[l>>2]=0;c[m>>2]=0;c[b>>2]=0;c[f>>2]=tb[c[(c[o>>2]|0)+20>>2]&15](c[j>>2]|0,p,k,l,m,b)|0;c[g>>2]=c[(c[h>>2]|0)+24>>2];while(1){if((c[g>>2]|0)==0){continue a}if((c[f>>2]|0)!=0){continue a}c[q>>2]=c[c[g>>2]>>2];if((c[(c[g>>2]|0)+4>>2]|0)>=(c[(c[r>>2]|0)+24>>2]|0)){e=13}else{if((c[(c[g>>2]|0)+4>>2]|0)==(c[s>>2]|0)){e=13}}do{if((e|0)==13){e=0;if((c[(c[q>>2]|0)+12>>2]|0)!=0){if((c[b>>2]|0)!=0){break}}if((c[(c[q>>2]|0)+4>>2]|0)!=(c[k>>2]|0)){if((c[(c[q>>2]|0)+8>>2]|0)==0){break}if((c[(c[q>>2]|0)+4>>2]|0)>=(c[k>>2]|0)){break}}if(0==(XK(c[p>>2]|0,c[c[q>>2]>>2]|0,c[(c[q>>2]|0)+4>>2]|0)|0)){x=v;a=c[s>>2]|0;w=c[b>>2]|0;kl((c[g>>2]|0)+12|0,c[x>>2]|0,c[x+4>>2]|0,a,((a|0)<0)<<31>>31,w,((w|0)<0)<<31>>31,f)|0}}}while(0);c[g>>2]=c[(c[g>>2]|0)+8>>2]}}if((c[j>>2]|0)!=0){ub[c[(c[o>>2]|0)+16>>2]&63](c[j>>2]|0)|0}if((c[f>>2]|0)==101){c[f>>2]=0}}c[s>>2]=(c[s>>2]|0)+1}c[g>>2]=c[(c[h>>2]|0)+24>>2];while(1){if((c[g>>2]|0)==0){e=32;break}if((c[f>>2]|0)!=0){e=32;break}if((c[(c[g>>2]|0)+12>>2]|0)!=0){c[f>>2]=ll((c[g>>2]|0)+12|0,0,0)|0}c[g>>2]=c[(c[g>>2]|0)+8>>2]}if((e|0)==32){x=c[f>>2]|0;i=n;return x|0}return 0}function cl(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;j=h+28|0;l=h;o=h+4|0;g=h+8|0;k=h+12|0;p=h+16|0;n=h+20|0;m=h+24|0;c[j>>2]=b;c[l>>2]=e;c[o>>2]=f;c[g>>2]=1;if((c[c[o>>2]>>2]|0)!=0){b=c[g>>2]|0;i=h;return b|0}f=c[c[l>>2]>>2]|0;if((f|0)==4){c[p>>2]=cl(c[j>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[o>>2]|0)|0;c[n>>2]=cl(c[j>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[o>>2]|0)|0;if((c[p>>2]|0)!=0){j=1}else{j=(c[n>>2]|0)!=0}c[g>>2]=j&1;b=c[g>>2]|0;i=h;return b|0}else if((f|0)==2){if((cl(c[j>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[o>>2]|0)|0)!=0){j=(cl(c[j>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[o>>2]|0)|0)!=0^1}else{j=0}c[g>>2]=j&1;b=c[g>>2]|0;i=h;return b|0}else if((f|0)==3|(f|0)==1){if((cl(c[j>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[o>>2]|0)|0)!=0){if((cl(c[j>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[o>>2]|0)|0)!=0){m=(el(c[l>>2]|0,c[o>>2]|0)|0)!=0}else{m=0}}else{m=0}c[g>>2]=m&1;if((c[g>>2]|0)!=0){b=c[g>>2]|0;i=h;return b|0}if((c[c[l>>2]>>2]|0)!=1){b=c[g>>2]|0;i=h;return b|0}if((c[(c[l>>2]|0)+8>>2]|0)!=0){if((c[c[(c[l>>2]|0)+8>>2]>>2]|0)==1){b=c[g>>2]|0;i=h;return b|0}}c[k>>2]=c[l>>2];while(1){l=c[k>>2]|0;if((c[(c[k>>2]|0)+20>>2]|0)!=0){break}e=(c[l+16>>2]|0)+24|0;b=(c[j>>2]|0)+32|0;if((c[e>>2]|0)==(c[b>>2]|0)?(c[e+4>>2]|0)==(c[b+4>>2]|0):0){zk(c[(c[(c[k>>2]|0)+16>>2]|0)+20>>2]|0)}c[k>>2]=c[(c[k>>2]|0)+12>>2]}e=l+24|0;b=(c[j>>2]|0)+32|0;if(!((c[e>>2]|0)==(c[b>>2]|0)?(c[e+4>>2]|0)==(c[b+4>>2]|0):0)){b=c[g>>2]|0;i=h;return b|0}zk(c[(c[k>>2]|0)+20>>2]|0);b=c[g>>2]|0;i=h;return b|0}else{do{if((c[(c[j>>2]|0)+24>>2]|0)!=0){e=(c[l>>2]|0)+24|0;b=(c[j>>2]|0)+32|0;if(!((c[e>>2]|0)==(c[b>>2]|0)?(c[e+4>>2]|0)==(c[b+4>>2]|0):0)){if((d[(c[l>>2]|0)+34>>0]|0)==0){break}}c[m>>2]=c[(c[l>>2]|0)+20>>2];if((a[(c[l>>2]|0)+34>>0]|0)!=0){zk(c[m>>2]|0)}f=fl(c[j>>2]|0,c[m>>2]|0)|0;c[c[o>>2]>>2]=f;c[g>>2]=(c[(c[m>>2]|0)+28>>2]|0)!=0&1;f=(c[j>>2]|0)+32|0;e=c[f+4>>2]|0;b=(c[l>>2]|0)+24|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;b=c[g>>2]|0;i=h;return b|0}}while(0);if((d[(c[l>>2]|0)+32>>0]|0)==0){b=(c[l>>2]|0)+24|0;j=(c[j>>2]|0)+32|0;j=(c[b>>2]|0)==(c[j>>2]|0)?(c[b+4>>2]|0)==(c[j+4>>2]|0):0}else{j=0}c[g>>2]=j&1;b=c[g>>2]|0;i=h;return b|0}return 0}function dl(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[(c[e>>2]|0)+24>>2];while(1){if((c[d>>2]|0)==0){break}Wi(c[(c[d>>2]|0)+12>>2]|0);c[(c[d>>2]|0)+12>>2]=0;c[d>>2]=c[(c[d>>2]|0)+8>>2]}i=b;return}function el(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+48|0;n=k+44|0;p=k+40|0;l=k+36|0;h=k+32|0;q=k+28|0;g=k+24|0;e=k+20|0;m=k+12|0;r=k+8|0;o=k+4|0;j=k;f=k+16|0;c[n>>2]=a;c[p>>2]=b;c[l>>2]=1;if((c[c[p>>2]>>2]|0)!=0){a=c[l>>2]|0;i=k;return a|0}if((c[c[n>>2]>>2]|0)!=1){a=c[l>>2]|0;i=k;return a|0}if((d[(c[n>>2]|0)+32>>0]|0|0)!=0){a=c[l>>2]|0;i=k;return a|0}if((c[(c[n>>2]|0)+8>>2]|0)!=0){if((c[c[(c[n>>2]|0)+8>>2]>>2]|0)==1){a=c[l>>2]|0;i=k;return a|0}}c[q>>2]=0;c[h>>2]=c[n>>2];while(1){b=c[h>>2]|0;if((c[(c[h>>2]|0)+12>>2]|0)==0){break}c[q>>2]=(c[q>>2]|0)+(c[(c[(c[b+16>>2]|0)+20>>2]|0)+32>>2]|0);c[h>>2]=c[(c[h>>2]|0)+12>>2]}c[q>>2]=(c[q>>2]|0)+(c[(c[b+20>>2]|0)+32>>2]|0);if((c[q>>2]|0)==0){c[l>>2]=0;a=c[l>>2]|0;i=k;return a|0}c[g>>2]=mc(c[q>>2]<<1)|0;a:do{if((c[g>>2]|0)!=0){c[e>>2]=c[(c[(c[h>>2]|0)+20>>2]|0)+28>>2];c[m>>2]=c[(c[(c[h>>2]|0)+20>>2]|0)+48>>2];c[h>>2]=c[(c[h>>2]|0)+8>>2];while(1){if((c[l>>2]|0)==0){break}if((c[h>>2]|0)==0){break}if((c[c[h>>2]>>2]|0)!=1){break}c[r>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+20>>2];c[o>>2]=c[(c[h>>2]|0)+4>>2];c[l>>2]=hl(c[o>>2]|0,c[g>>2]|0,e,m,c[r>>2]|0)|0;c[h>>2]=c[(c[h>>2]|0)+8>>2]}c[e>>2]=c[(c[(c[(c[n>>2]|0)+16>>2]|0)+20>>2]|0)+28>>2];c[m>>2]=c[(c[(c[(c[n>>2]|0)+16>>2]|0)+20>>2]|0)+48>>2];c[h>>2]=c[(c[n>>2]|0)+12>>2];while(1){if((c[h>>2]|0)==0){break a}if((c[l>>2]|0)==0){break a}c[j>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+4>>2];n=c[h>>2]|0;if((c[c[h>>2]>>2]|0)==1){n=c[(c[n+16>>2]|0)+20>>2]|0}else{n=c[n+20>>2]|0}c[f>>2]=n;c[l>>2]=hl(c[j>>2]|0,c[g>>2]|0,e,m,c[f>>2]|0)|0;c[h>>2]=c[(c[h>>2]|0)+12>>2]}}else{c[c[p>>2]>>2]=7;c[l>>2]=0}}while(0);oc(c[g>>2]|0);a=c[l>>2]|0;i=k;return a|0}function fl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=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;p=i;i=i+80|0;q=p+76|0;j=p+72|0;g=p+68|0;v=p+64|0;f=p+60|0;h=p+56|0;o=p+52|0;y=p+48|0;x=p+44|0;w=p+40|0;r=p+36|0;e=p+12|0;s=p;t=p+4|0;u=p+8|0;n=p+16|0;d=p+20|0;l=p+24|0;m=p+28|0;k=p+32|0;c[j>>2]=a;c[g>>2]=b;c[f>>2]=0;c[h>>2]=0;c[o>>2]=-1;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[(c[g>>2]|0)+48>>2]|0)){r=14;break}c[y>>2]=(c[g>>2]|0)+56+((c[v>>2]|0)*24|0);c[x>>2]=c[(c[y>>2]|0)+16>>2];if((c[x>>2]|0)!=0){c[e>>2]=gl(c[x>>2]|0,w,r)|0;if((c[e>>2]|0)!=0){r=5;break}a=c[f>>2]|0;if((c[w>>2]|0)==0){r=7;break}b=c[w>>2]|0;if((a|0)==0){c[f>>2]=b;c[h>>2]=c[r>>2]}else{c[s>>2]=b;c[t>>2]=c[f>>2];c[u>>2]=c[s>>2];Fk(s,(c[v>>2]|0)-(c[o>>2]|0)|0,0,1,t,u)|0;oc(c[f>>2]|0);c[f>>2]=c[w>>2];c[h>>2]=(c[s>>2]|0)-(c[f>>2]|0);if((c[h>>2]|0)==0){r=11;break}}c[o>>2]=c[v>>2]}c[v>>2]=(c[v>>2]|0)+1}if((r|0)==5){c[q>>2]=c[e>>2];b=c[q>>2]|0;i=p;return b|0}else if((r|0)==7){oc(a);c[(c[g>>2]|0)+28>>2]=0;c[(c[g>>2]|0)+32>>2]=0;c[q>>2]=0;b=c[q>>2]|0;i=p;return b|0}else if((r|0)==11){oc(c[f>>2]|0);c[(c[g>>2]|0)+28>>2]=0;c[(c[g>>2]|0)+32>>2]=0;c[q>>2]=0;b=c[q>>2]|0;i=p;return b|0}else if((r|0)==14){do{if((c[o>>2]|0)>=0){c[n>>2]=c[(c[g>>2]|0)+44>>2];if((c[n>>2]|0)<0){c[(c[g>>2]|0)+28>>2]=c[f>>2];c[(c[g>>2]|0)+32>>2]=c[h>>2];y=(c[j>>2]|0)+32|0;a=c[y+4>>2]|0;b=(c[g>>2]|0)+16|0;c[b>>2]=c[y>>2];c[b+4>>2]=a;c[(c[g>>2]|0)+24>>2]=1;break}if((c[n>>2]|0)>(c[o>>2]|0)){c[l>>2]=c[f>>2];c[m>>2]=c[(c[g>>2]|0)+28>>2];c[d>>2]=(c[n>>2]|0)-(c[o>>2]|0)}else{c[l>>2]=c[(c[g>>2]|0)+28>>2];c[m>>2]=c[f>>2];c[d>>2]=(c[o>>2]|0)-(c[n>>2]|0)}c[k>>2]=mc((c[h>>2]|0)+8|0)|0;if((c[k>>2]|0)==0){oc(c[f>>2]|0);c[q>>2]=7;b=c[q>>2]|0;i=p;return b|0}c[(c[g>>2]|0)+28>>2]=c[k>>2];if((Fk(k,c[d>>2]|0,0,1,l,m)|0)!=0){c[(c[g>>2]|0)+24>>2]=1;c[(c[g>>2]|0)+32>>2]=(c[k>>2]|0)-(c[(c[g>>2]|0)+28>>2]|0)}else{oc(c[k>>2]|0);c[(c[g>>2]|0)+28>>2]=0;c[(c[g>>2]|0)+32>>2]=0}oc(c[f>>2]|0)}}while(0);c[q>>2]=0;b=c[q>>2]|0;i=p;return b|0}return 0}function gl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;l=e+8|0;j=e+12|0;k=e+16|0;h=e+20|0;c[g>>2]=a;c[l>>2]=b;c[j>>2]=d;c[c[l>>2]>>2]=0;c[c[j>>2]>>2]=0;if((c[(c[g>>2]|0)+12>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}c[k>>2]=mc(c[c[(c[g>>2]|0)+12>>2]>>2]|0)|0;if((c[k>>2]|0)!=0){c[h>>2]=Kj(c[(c[(c[g>>2]|0)+12>>2]|0)+4>>2]|0,e)|0;c[c[j>>2]>>2]=(c[c[(c[g>>2]|0)+12>>2]>>2]|0)-(c[h>>2]|0);c[c[l>>2]>>2]=c[k>>2];fL(c[k>>2]|0,(c[(c[(c[g>>2]|0)+12>>2]|0)+4>>2]|0)+(c[h>>2]|0)|0,c[c[j>>2]>>2]|0)|0;c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}else{c[f>>2]=7;a=c[f>>2]|0;i=e;return a|0}return 0}function hl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;m=i;i=i+48|0;s=m+40|0;r=m+36|0;g=m+32|0;n=m+28|0;k=m+24|0;q=m+20|0;p=m+12|0;l=m+8|0;o=m+4|0;j=m;h=m+16|0;c[s>>2]=a;c[r>>2]=b;c[g>>2]=d;c[n>>2]=e;c[k>>2]=f;c[q>>2]=(c[s>>2]|0)+(c[(c[k>>2]|0)+48>>2]|0);c[p>>2]=(c[s>>2]|0)+(c[c[n>>2]>>2]|0);a=c[(c[k>>2]|0)+28>>2]|0;c[j>>2]=a;c[o>>2]=a;c[h>>2]=il(j,c[r>>2]|0,c[q>>2]|0,c[p>>2]|0,c[g>>2]|0,o)|0;if((c[h>>2]|0)==0){s=c[h>>2]|0;i=m;return s|0}c[l>>2]=(c[j>>2]|0)-(c[(c[k>>2]|0)+28>>2]|0)-1;aL((c[(c[k>>2]|0)+28>>2]|0)+(c[l>>2]|0)|0,0,(c[(c[k>>2]|0)+32>>2]|0)-(c[l>>2]|0)|0)|0;c[(c[k>>2]|0)+32>>2]=c[l>>2];c[c[g>>2]>>2]=c[(c[k>>2]|0)+28>>2];c[c[n>>2]>>2]=c[(c[k>>2]|0)+48>>2];s=c[h>>2]|0;i=m;return s|0}function il(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;n=i;i=i+48|0;m=n+44|0;l=n+40|0;u=n+36|0;r=n+32|0;p=n+28|0;q=n+24|0;t=n+20|0;s=n+12|0;o=n+8|0;h=n+4|0;k=n;j=n+16|0;c[m>>2]=a;c[l>>2]=b;c[u>>2]=d;c[r>>2]=e;c[p>>2]=f;c[q>>2]=g;c[t>>2]=c[c[p>>2]>>2];c[s>>2]=c[c[q>>2]>>2];c[o>>2]=c[l>>2];c[j>>2]=1;Fk(o,c[u>>2]|0,0,0,c[p>>2]|0,c[q>>2]|0)|0;a=c[o>>2]|0;c[h>>2]=a;c[k>>2]=a;c[c[p>>2]>>2]=c[t>>2];c[c[q>>2]>>2]=c[s>>2];Fk(h,c[r>>2]|0,1,0,c[q>>2]|0,c[p>>2]|0)|0;if((c[o>>2]|0)!=(c[l>>2]|0)){if((c[h>>2]|0)!=(c[k>>2]|0)){Vk(c[m>>2]|0,l,k);u=c[j>>2]|0;i=n;return u|0}}if((c[o>>2]|0)!=(c[l>>2]|0)){Pj(c[m>>2]|0,l);u=c[j>>2]|0;i=n;return u|0}if((c[h>>2]|0)!=(c[k>>2]|0)){Pj(c[m>>2]|0,k);u=c[j>>2]|0;i=n;return u|0}else{c[j>>2]=0;u=c[j>>2]|0;i=n;return u|0}return 0}function jl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;n=j+28|0;g=j;p=j+4|0;o=j+8|0;h=j+12|0;l=j+16|0;m=j+20|0;k=j+24|0;c[n>>2]=a;c[g>>2]=b;c[p>>2]=d;c[o>>2]=e;c[h>>2]=f;c[l>>2]=c[c[n>>2]>>2];c[m>>2]=0;c[k>>2]=xb[c[(c[l>>2]|0)+12>>2]&31](c[n>>2]|0,c[p>>2]|0,c[o>>2]|0,m)|0;if((c[k>>2]|0)==0){c[c[m>>2]>>2]=c[n>>2];if((c[c[l>>2]>>2]|0)>=1){c[k>>2]=zb[c[(c[l>>2]|0)+24>>2]&127](c[m>>2]|0,c[g>>2]|0)|0;if((c[k>>2]|0)!=0){ub[c[(c[l>>2]|0)+16>>2]&63](c[m>>2]|0)|0;c[m>>2]=0}}}c[c[h>>2]>>2]=c[m>>2];i=j;return c[k>>2]|0}function kl(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=i;i=i+64|0;q=r+44|0;n=r+48|0;s=r+8|0;k=r+16|0;o=r;p=r+32|0;m=r+36|0;l=r+40|0;t=r+24|0;c[n>>2]=a;a=s;c[a>>2]=b;c[a+4>>2]=d;a=k;c[a>>2]=e;c[a+4>>2]=f;a=o;c[a>>2]=g;c[a+4>>2]=h;c[p>>2]=j;c[m>>2]=c[c[n>>2]>>2];c[l>>2]=0;if((c[m>>2]|0)!=0){b=(c[m>>2]|0)+16|0;a=s;if((c[b>>2]|0)!=(c[a>>2]|0)?1:(c[b+4>>2]|0)!=(c[a+4>>2]|0)){h=3}else{h=9}}else{h=3}if((h|0)==3){f=s;if((c[m>>2]|0)!=0){j=(c[m>>2]|0)+16|0;g=c[j>>2]|0;j=c[j+4>>2]|0}else{g=0;j=0}b=$K(c[f>>2]|0,c[f+4>>2]|0,g|0,j|0)|0;a=t;c[a>>2]=b;c[a+4>>2]=D;if((c[m>>2]|0)!=0){a=c[m>>2]|0;c[a>>2]=(c[a>>2]|0)+1}a=t;a=ll(m,c[a>>2]|0,c[a+4>>2]|0)|0;c[l>>2]=a;if(0==(a|0)){b=(c[m>>2]|0)+24|0;c[b>>2]=-1;c[b+4>>2]=-1;b=(c[m>>2]|0)+32|0;c[b>>2]=0;c[b+4>>2]=0;b=s;a=c[b+4>>2]|0;h=(c[m>>2]|0)+16|0;c[h>>2]=c[b>>2];c[h+4>>2]=a;h=9}}do{if((h|0)==9){a=k;b=c[a+4>>2]|0;if((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>0){b=(c[m>>2]|0)+24|0;a=k;if((c[b>>2]|0)!=(c[a>>2]|0)?1:(c[b+4>>2]|0)!=(c[a+4>>2]|0)){a=ll(m,1,0)|0;c[l>>2]=a;if(0!=(a|0)){break}a=k;a=ll(m,c[a>>2]|0,c[a+4>>2]|0)|0;c[l>>2]=a;if(0!=(a|0)){break}d=k;b=c[d+4>>2]|0;a=(c[m>>2]|0)+24|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;a=(c[m>>2]|0)+32|0;c[a>>2]=0;c[a+4>>2]=0}}a=k;b=c[a+4>>2]|0;if((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>=0){b=o;b=dL(2,0,c[b>>2]|0,c[b+4>>2]|0)|0;a=(c[m>>2]|0)+32|0;a=$K(b|0,D|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[l>>2]=ll(m,a,D)|0;if((c[l>>2]|0)==0){d=o;b=c[d+4>>2]|0;a=(c[m>>2]|0)+32|0;c[a>>2]=c[d>>2];c[a+4>>2]=b}}}}while(0);c[c[p>>2]>>2]=c[l>>2];if((c[m>>2]|0)!=(c[c[n>>2]>>2]|0)){c[c[n>>2]>>2]=c[m>>2];c[q>>2]=1;a=c[q>>2]|0;i=r;return a|0}else{c[q>>2]=0;a=c[q>>2]|0;i=r;return a|0}return 0}function ll(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+20|0;h=f+8|0;k=f;j=f+12|0;l=f+16|0;c[h>>2]=b;b=k;c[b>>2]=d;c[b+4>>2]=e;c[j>>2]=c[c[h>>2]>>2];do{if((c[j>>2]|0)!=0){if(((c[c[j>>2]>>2]|0)+11|0)>(c[(c[j>>2]|0)+8>>2]|0)){c[l>>2]=c[(c[j>>2]|0)+8>>2]<<1;c[j>>2]=qc(c[j>>2]|0,40+(c[l>>2]|0)|0)|0;if((c[j>>2]|0)!=0){c[(c[j>>2]|0)+8>>2]=c[l>>2];c[(c[j>>2]|0)+4>>2]=(c[j>>2]|0)+40;break}oc(c[c[h>>2]>>2]|0);c[c[h>>2]>>2]=0;c[g>>2]=7;b=c[g>>2]|0;i=f;return b|0}}else{c[j>>2]=mc(140)|0;if((c[j>>2]|0)!=0){c[(c[j>>2]|0)+8>>2]=100;c[(c[j>>2]|0)+4>>2]=(c[j>>2]|0)+40;c[c[j>>2]>>2]=0;break}c[g>>2]=7;b=c[g>>2]|0;i=f;return b|0}}while(0);d=k;d=uj((c[(c[j>>2]|0)+4>>2]|0)+(c[c[j>>2]>>2]|0)|0,c[d>>2]|0,c[d+4>>2]|0)|0;b=c[j>>2]|0;c[b>>2]=(c[b>>2]|0)+d;a[(c[(c[j>>2]|0)+4>>2]|0)+(c[c[j>>2]>>2]|0)>>0]=0;c[c[h>>2]>>2]=c[j>>2];c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}function ml(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;l=d;e=d+24|0;h=d+4|0;g=d+8|0;f=d+12|0;k=d+16|0;j=d+20|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=0;do{if((c[(c[h>>2]|0)+8>>2]|0)==0){c[k>>2]=c[c[h>>2]>>2];c[l>>2]=c[(c[k>>2]|0)+216>>2];c[j>>2]=wc(7024,l)|0;if((c[j>>2]|0)!=0){c[f>>2]=Df(c[(c[k>>2]|0)+12>>2]|0,c[j>>2]|0,-1,(c[h>>2]|0)+8|0,0)|0;oc(c[j>>2]|0);break}c[e>>2]=7;a=c[e>>2]|0;i=d;return a|0}}while(0);c[c[g>>2]>>2]=c[(c[h>>2]|0)+8>>2];c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}function nl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;f=k+20|0;h=k;l=k+4|0;j=k+8|0;g=k+12|0;m=k+16|0;c[f>>2]=a;c[h>>2]=b;c[l>>2]=d;c[j>>2]=e;c[m>>2]=c[c[f>>2]>>2];if((c[m>>2]|0)==5){c[g>>2]=pb[c[l>>2]&31](c[f>>2]|0,c[c[h>>2]>>2]|0,c[j>>2]|0)|0;a=c[h>>2]|0;c[a>>2]=(c[a>>2]|0)+1;a=c[g>>2]|0;i=k;return a|0}c[g>>2]=nl(c[(c[f>>2]|0)+12>>2]|0,c[h>>2]|0,c[l>>2]|0,c[j>>2]|0)|0;if((c[g>>2]|0)!=0){a=c[g>>2]|0;i=k;return a|0}if((c[m>>2]|0)==2){a=c[g>>2]|0;i=k;return a|0}c[g>>2]=nl(c[(c[f>>2]|0)+16>>2]|0,c[h>>2]|0,c[l>>2]|0,c[j>>2]|0)|0;a=c[g>>2]|0;i=k;return a|0}function ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e+12|0;f=e;j=e+4|0;g=e+8|0;c[h>>2]=a;c[f>>2]=b;c[j>>2]=d;c[g>>2]=c[j>>2];c[(c[g>>2]|0)+(c[f>>2]<<4)>>2]=c[h>>2];i=e;return 0}function pl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;e=b+16|0;f=b+8|0;g=b;d=b+12|0;c[e>>2]=a;c[f>>2]=c[(c[e>>2]|0)+8>>2];c[d>>2]=0;h=Kj(c[f>>2]|0,g)|0;c[f>>2]=(c[f>>2]|0)+h;h=g;a=g;if((c[h>>2]|0)==0&(c[h+4>>2]|0)==0|(c[a>>2]|0)==1&(c[a+4>>2]|0)==0){c[f>>2]=0;c[d>>2]=1;g=c[f>>2]|0;h=c[e>>2]|0;h=h+8|0;c[h>>2]=g;h=c[d>>2]|0;i=b;return h|0}else{h=g;h=$K(c[h>>2]|0,c[h+4>>2]|0,2,0)|0;g=(c[e>>2]|0)+12|0;c[g>>2]=(c[g>>2]|0)+h;g=c[f>>2]|0;h=c[e>>2]|0;h=h+8|0;c[h>>2]=g;h=c[d>>2]|0;i=b;return h|0}return 0}function ql(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;k=f+20|0;j=f+4|0;e=f+8|0;g=f+12|0;h=f+16|0;c[k>>2]=a;c[f>>2]=b;c[j>>2]=d;c[e>>2]=0;c[g>>2]=c[(c[k>>2]|0)+20>>2];c[h>>2]=c[j>>2];a=(c[h>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+1;a=(c[h>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+(c[(c[g>>2]|0)+48>>2]|0);i=f;return c[e>>2]|0}function rl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h+20|0;k=h;g=h+8|0;f=h+12|0;j=h+16|0;c[l>>2]=a;a=k;c[a>>2]=b;c[a+4>>2]=d;c[g>>2]=e;c[f>>2]=0;c[j>>2]=$i(c[l>>2]|0,21,f,0)|0;do{if((c[j>>2]|0)==0){l=k;Pe(c[f>>2]|0,1,c[l>>2]|0,c[l+4>>2]|0)|0;c[j>>2]=le(c[f>>2]|0)|0;if((c[j>>2]|0)==100){if((He(c[f>>2]|0,0)|0)==4){c[j>>2]=0;break}}l=Cd(c[f>>2]|0)|0;c[j>>2]=l;c[j>>2]=(c[j>>2]|0)==0?267:l;c[f>>2]=0}}while(0);c[c[g>>2]>>2]=c[f>>2];i=h;return c[j>>2]|0}function sl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=f+12|0;e=f;d=f+4|0;g=f+8|0;c[h>>2]=a;c[e>>2]=b;c[d>>2]=0;c[g>>2]=$i(c[h>>2]|0,22,d,0)|0;do{if((c[g>>2]|0)==0){Oe(c[d>>2]|0,1,0)|0;if((le(c[d>>2]|0)|0)==100){if((He(c[d>>2]|0,0)|0)==4){break}}h=Cd(c[d>>2]|0)|0;c[g>>2]=h;c[g>>2]=(c[g>>2]|0)==0?267:h;c[d>>2]=0}}while(0);c[c[e>>2]>>2]=c[d>>2];i=f;return c[g>>2]|0}function tl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[e>>2]=b;c[f>>2]=d;a=c[f>>2]|0;c[a>>2]=(c[a>>2]|0)+1;i=e;return 0}function ul(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;e=d+8|0;b=d;f=d+4|0;c[e>>2]=a;c[b>>2]=Bf(c[(c[e>>2]|0)+12>>2]|0,7168,0,0,0)|0;do{if((c[b>>2]|0)==0){c[b>>2]=vl(c[e>>2]|0,1)|0;a=c[(c[e>>2]|0)+12>>2]|0;if(!((c[b>>2]|0)==0|(c[b>>2]|0)==101)){Bf(a,7200,0,0,0)|0;Bf(c[(c[e>>2]|0)+12>>2]|0,7184,0,0,0)|0;break}c[f>>2]=Bf(a,7184,0,0,0)|0;if((c[f>>2]|0)!=0){c[b>>2]=c[f>>2]}}}while(0);jk(c[e>>2]|0);i=d;return c[b>>2]|0}function vl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+28|0;j=f;m=f+4|0;e=f+8|0;l=f+12|0;h=f+16|0;k=f+20|0;d=f+24|0;c[g>>2]=a;c[j>>2]=b;c[m>>2]=0;c[l>>2]=0;c[e>>2]=$i(c[g>>2]|0,27,l,0)|0;if((c[e>>2]|0)==0){Oe(c[l>>2]|0,1,c[(c[g>>2]|0)+248>>2]|0)|0;a:while(1){a=(le(c[l>>2]|0)|0)==100;b=c[l>>2]|0;if(!a){break}c[d>>2]=De(b,0)|0;c[k>>2]=0;while(1){if((c[e>>2]|0)!=0){continue a}if((c[k>>2]|0)>=(c[(c[g>>2]|0)+248>>2]|0)){continue a}c[e>>2]=_i(c[g>>2]|0,c[d>>2]|0,c[k>>2]|0,-2)|0;if((c[e>>2]|0)==101){c[m>>2]=1;c[e>>2]=0}c[k>>2]=(c[k>>2]|0)+1}}c[h>>2]=Cd(b)|0;if((c[e>>2]|0)==0){c[e>>2]=c[h>>2]}}jk(c[g>>2]|0);Vi(c[g>>2]|0);if((c[e>>2]|0)==0){if((c[j>>2]|0)!=0){if((c[m>>2]|0)!=0){a=101;i=f;return a|0}}}a=c[e>>2]|0;i=f;return a|0}function wl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=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;g=i;i=i+208|0;A=g+32|0;r=g+132|0;k=g+128|0;h=g+124|0;t=g+120|0;f=g+116|0;y=g+112|0;l=g+108|0;e=g+96|0;s=g;o=g+92|0;u=g+60|0;p=g+64|0;q=g+48|0;C=g+52|0;j=g+56|0;m=g+88|0;n=g+68|0;x=g+72|0;v=g+76|0;w=g+80|0;z=g+84|0;B=g+136|0;c[r>>2]=b;c[k>>2]=d;c[h>>2]=c[c[k>>2]>>2];c[t>>2]=c[c[(c[h>>2]|0)+36>>2]>>2];c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;if((c[(c[k>>2]|0)+12>>2]|0)==0){ce(c[r>>2]|0,1784,0,0);i=g;return}c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;c[s+24>>2]=0;c[s+28>>2]=0;c[f>>2]=pk(c[k>>2]|0,0,y)|0;a:do{if((c[f>>2]|0)==0){c[s+24>>2]=mc((c[y>>2]|0)*12|0)|0;if(0==(c[s+24>>2]|0)){c[f>>2]=7;break}D=(c[k>>2]|0)+32|0;d=c[D+4>>2]|0;b=s+16|0;c[b>>2]=c[D>>2];c[b+4>>2]=d;c[s>>2]=c[k>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[h>>2]|0)+24>>2]|0)){break a}c[p>>2]=0;c[q>>2]=0;c[C>>2]=0;c[j>>2]=0;c[s+4>>2]=c[l>>2];c[s+8>>2]=0;rk(c[(c[k>>2]|0)+12>>2]|0,26,s)|0;c[m>>2]=Fe(c[(c[k>>2]|0)+8>>2]|0,(c[l>>2]|0)+1|0)|0;c[n>>2]=Be(c[(c[k>>2]|0)+8>>2]|0,(c[l>>2]|0)+1|0)|0;if((c[m>>2]|0)==0){if((He(c[(c[k>>2]|0)+8>>2]|0,(c[l>>2]|0)+1|0)|0)!=5){break}}else{c[f>>2]=jl(c[(c[h>>2]|0)+36>>2]|0,c[(c[k>>2]|0)+16>>2]|0,c[m>>2]|0,c[n>>2]|0,o)|0;if((c[f>>2]|0)!=0){break a}c[f>>2]=tb[c[(c[t>>2]|0)+20>>2]&15](c[o>>2]|0,u,p,q,C,j)|0;while(1){if((c[f>>2]|0)!=0){break}c[v>>2]=2147483647;c[w>>2]=0;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[y>>2]|0)){break}c[z>>2]=(c[s+24>>2]|0)+((c[x>>2]|0)*12|0);if((c[c[z>>2]>>2]|0)!=0){if(((c[(c[z>>2]|0)+4>>2]|0)-(c[(c[z>>2]|0)+8>>2]|0)|0)<(c[v>>2]|0)){c[v>>2]=(c[(c[z>>2]|0)+4>>2]|0)-(c[(c[z>>2]|0)+8>>2]|0);c[w>>2]=c[z>>2]}}c[x>>2]=(c[x>>2]|0)+1}if((c[w>>2]|0)==0){c[f>>2]=101;continue}d=c[w>>2]|0;if(0==(254&a[c[c[w>>2]>>2]>>0]|0)){c[d>>2]=0}else{yl(d,(c[w>>2]|0)+4|0)}while(1){if((c[f>>2]|0)!=0){break}if((c[j>>2]|0)>=(c[v>>2]|0)){break}c[f>>2]=tb[c[(c[t>>2]|0)+20>>2]&15](c[o>>2]|0,u,p,q,C,j)|0}if((c[f>>2]|0)==0){d=((c[w>>2]|0)-(c[s+24>>2]|0)|0)/12|0;b=c[q>>2]|0;D=(c[C>>2]|0)-(c[q>>2]|0)|0;c[A>>2]=c[l>>2];c[A+4>>2]=d;c[A+8>>2]=b;c[A+12>>2]=D;yc(64,B,7224,A)|0;c[f>>2]=zl(e,B,-1)|0;continue}if((c[f>>2]|0)!=101){continue}if((c[(c[h>>2]|0)+40>>2]|0)!=0){continue}c[f>>2]=267}if((c[f>>2]|0)==101){c[f>>2]=0}ub[c[(c[t>>2]|0)+16>>2]&63](c[o>>2]|0)|0;if((c[f>>2]|0)!=0){break a}}c[l>>2]=(c[l>>2]|0)+1}c[f>>2]=7}}while(0);oc(c[s+24>>2]|0);jk(c[h>>2]|0);h=c[r>>2]|0;if((c[f>>2]|0)!=0){he(h,c[f>>2]|0);oc(c[e>>2]|0);i=g;return}else{ce(h,c[e>>2]|0,(c[e+4>>2]|0)-1|0,13);i=g;return}}function xl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+48|0;n=j+36|0;o=j+28|0;e=j+24|0;h=j+20|0;g=j+16|0;l=j+8|0;m=j+4|0;f=j;k=j+12|0;c[n>>2]=a;c[j+32>>2]=b;c[o>>2]=d;c[e>>2]=c[o>>2];c[m>>2]=0;c[f>>2]=uk(c[c[e>>2]>>2]|0,c[n>>2]|0,c[(c[e>>2]|0)+4>>2]|0,l)|0;c[h>>2]=c[(c[(c[n>>2]|0)+20>>2]|0)+48>>2];if((c[l>>2]|0)!=0){yl(l,m)}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[h>>2]|0)){break}n=(c[e>>2]|0)+8|0;o=c[n>>2]|0;c[n>>2]=o+1;c[k>>2]=(c[(c[e>>2]|0)+24>>2]|0)+(o*12|0);c[(c[k>>2]|0)+8>>2]=(c[h>>2]|0)-(c[g>>2]|0)-1;c[c[k>>2]>>2]=c[l>>2];c[(c[k>>2]|0)+4>>2]=c[m>>2];c[g>>2]=(c[g>>2]|0)+1}i=j;return c[f>>2]|0}function yl(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+8|0;h=f;g=f+4|0;c[j>>2]=b;c[h>>2]=e;e=c[c[j>>2]>>2]|0;if((a[c[c[j>>2]>>2]>>0]&128|0)!=0){e=Lj(e,g)|0}else{c[g>>2]=d[e>>0]|0;e=1}b=c[j>>2]|0;c[b>>2]=(c[b>>2]|0)+e;b=c[h>>2]|0;c[b>>2]=(c[b>>2]|0)+((c[g>>2]|0)-2);i=f;return}function zl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m+20|0;f=m;k=m+4|0;g=m+8|0;h=m+12|0;j=m+16|0;c[f>>2]=b;c[k>>2]=d;c[g>>2]=e;if((c[g>>2]|0)<0){c[g>>2]=cL(c[k>>2]|0)|0}do{if(((c[(c[f>>2]|0)+4>>2]|0)+(c[g>>2]|0)+1|0)>=(c[(c[f>>2]|0)+8>>2]|0)){c[h>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[g>>2]|0)+100;c[j>>2]=qc(c[c[f>>2]>>2]|0,c[h>>2]|0)|0;if((c[j>>2]|0)!=0){c[c[f>>2]>>2]=c[j>>2];c[(c[f>>2]|0)+8>>2]=c[h>>2];break}c[l>>2]=7;b=c[l>>2]|0;i=m;return b|0}}while(0);fL((c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)|0,c[k>>2]|0,c[g>>2]|0)|0;b=(c[f>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+(c[g>>2]|0);a[(c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)>>0]=0;c[l>>2]=0;b=c[l>>2]|0;i=m;return b|0}function Al(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;l=i;i=i+224|0;n=l+212|0;r=l+208|0;u=l+204|0;v=l+200|0;w=l+196|0;E=l+192|0;F=l+188|0;o=l+184|0;j=l+180|0;p=l+176|0;k=l+164|0;q=l+160|0;s=l+8|0;t=l+148|0;B=l+144|0;y=l;x=l+104|0;A=l+140|0;m=l+156|0;C=l+136|0;D=l+112|0;G=l+152|0;c[n>>2]=a;c[r>>2]=b;c[u>>2]=d;c[v>>2]=e;c[w>>2]=f;c[E>>2]=g;c[F>>2]=h;c[o>>2]=c[c[r>>2]>>2];c[j>>2]=0;c[k+0>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[q>>2]=0;c[t>>2]=-1;if((c[(c[r>>2]|0)+12>>2]|0)==0){ce(c[n>>2]|0,1784,0,0);i=l;return}c[q>>2]=1;a:while(1){h=y;c[h>>2]=0;c[h+4>>2]=0;h=x;c[h>>2]=0;c[h+4>>2]=0;h=c[F>>2]|0;if((c[F>>2]|0)>=0){c[t>>2]=(h+(c[q>>2]|0)-1|0)/(c[q>>2]|0)|0}else{c[t>>2]=$(-1,h)|0}c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[q>>2]|0)){break}c[A>>2]=-1;c[C>>2]=s+((c[B>>2]|0)*24|0);a=c[C>>2]|0;c[a+0>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[o>>2]|0)+24>>2]|0)){break}c[D+0>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;c[D+12>>2]=0;c[D+16>>2]=0;c[D+20>>2]=0;if((c[E>>2]|0)>=0){if((c[m>>2]|0)==(c[E>>2]|0)){z=13}}else{z=13}if((z|0)==13){z=0;a=y;c[j>>2]=Bl(c[t>>2]|0,c[r>>2]|0,c[m>>2]|0,c[a>>2]|0,c[a+4>>2]|0,x,D,G)|0;if((c[j>>2]|0)!=0){break a}if((c[G>>2]|0)>(c[A>>2]|0)){a=c[C>>2]|0;c[a+0>>2]=c[D+0>>2];c[a+4>>2]=c[D+4>>2];c[a+8>>2]=c[D+8>>2];c[a+12>>2]=c[D+12>>2];c[a+16>>2]=c[D+16>>2];c[a+20>>2]=c[D+20>>2];c[A>>2]=c[G>>2]}}c[m>>2]=(c[m>>2]|0)+1}d=(c[C>>2]|0)+8|0;e=y;b=c[e+4>>2]|c[d+4>>2];a=y;c[a>>2]=c[e>>2]|c[d>>2];c[a+4>>2]=b;c[B>>2]=(c[B>>2]|0)+1}b=x;a=y;if((c[b>>2]|0)==(c[a>>2]|0)?(c[b+4>>2]|0)==(c[a+4>>2]|0):0){z=21;break}if((c[q>>2]|0)==4){z=21;break}c[q>>2]=(c[q>>2]|0)+1}b:do{if((z|0)==21){c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[q>>2]|0)){break b}if((c[j>>2]|0)!=0){break b}c[j>>2]=Cl(c[r>>2]|0,s+((c[p>>2]|0)*24|0)|0,c[p>>2]|0,(c[p>>2]|0)==((c[q>>2]|0)-1|0)&1,c[t>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,k)|0;c[p>>2]=(c[p>>2]|0)+1}}}while(0);jk(c[o>>2]|0);m=c[n>>2]|0;if((c[j>>2]|0)!=0){he(m,c[j>>2]|0);oc(c[k>>2]|0);i=l;return}else{ce(m,c[k>>2]|0,-1,13);i=l;return}}function Bl(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;w=i;i=i+112|0;l=w+100|0;C=w+96|0;B=w+92|0;v=w+88|0;q=w;y=w+84|0;k=w+80|0;p=w+76|0;m=w+72|0;z=w+68|0;n=w+40|0;A=w+36|0;o=w+32|0;x=w+28|0;r=w+24|0;s=w+64|0;t=w+16|0;u=w+8|0;c[C>>2]=a;c[B>>2]=b;c[v>>2]=d;a=q;c[a>>2]=e;c[a+4>>2]=f;c[y>>2]=g;c[k>>2]=h;c[p>>2]=j;c[o>>2]=-1;c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[n+16>>2]=0;c[n+20>>2]=0;c[m>>2]=pk(c[B>>2]|0,z,0)|0;if((c[m>>2]|0)!=0){c[l>>2]=c[m>>2];a=c[l>>2]|0;i=w;return a|0}c[A>>2]=(c[z>>2]|0)*24;c[n+16>>2]=mc(c[A>>2]|0)|0;if((c[n+16>>2]|0)==0){c[l>>2]=7;a=c[l>>2]|0;i=w;return a|0}aL(c[n+16>>2]|0,0,c[A>>2]|0)|0;c[n>>2]=c[B>>2];c[n+4>>2]=c[v>>2];c[n+8>>2]=c[C>>2];c[n+12>>2]=c[z>>2];c[n+20>>2]=-1;rk(c[(c[B>>2]|0)+12>>2]|0,27,n)|0;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[z>>2]|0)){break}if((c[(c[n+16>>2]|0)+((c[x>>2]|0)*24|0)+12>>2]|0)!=0){d=bL(1,0,c[x>>2]|0)|0;a=c[y>>2]|0;e=a;b=c[e+4>>2]|D;c[a>>2]=c[e>>2]|d;c[a+4>>2]=b}c[x>>2]=(c[x>>2]|0)+1}c[c[k>>2]>>2]=c[v>>2];while(1){if(!((Fl(n)|0)!=0^1)){break}a=q;Gl(n,c[a>>2]|0,c[a+4>>2]|0,r,s,t,u);if((c[s>>2]|0)<=(c[o>>2]|0)){continue}c[(c[k>>2]|0)+4>>2]=c[r>>2];a=u;b=c[a+4>>2]|0;d=(c[k>>2]|0)+16|0;c[d>>2]=c[a>>2];c[d+4>>2]=b;d=t;b=c[d+4>>2]|0;a=(c[k>>2]|0)+8|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;c[o>>2]=c[s>>2]}oc(c[n+16>>2]|0);c[c[p>>2]>>2]=c[o>>2];c[l>>2]=0;a=c[l>>2]|0;i=w;return a|0}function Cl(a,b,d,e,f,g,h,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;F=i;i=i+128|0;n=F+112|0;I=F+108|0;P=F+104|0;L=F+100|0;o=F+96|0;J=F+92|0;N=F+88|0;p=F+84|0;M=F+80|0;t=F+76|0;H=F+72|0;q=F+68|0;u=F+64|0;l=F+60|0;w=F+56|0;v=F+24|0;E=F+12|0;x=F+8|0;K=F;O=F+16|0;r=F+20|0;s=F+28|0;C=F+32|0;y=F+36|0;z=F+40|0;A=F+44|0;B=F+48|0;G=F+52|0;c[I>>2]=a;c[P>>2]=b;c[L>>2]=d;c[o>>2]=e;c[J>>2]=f;c[N>>2]=g;c[p>>2]=h;c[M>>2]=j;c[t>>2]=k;c[H>>2]=c[c[I>>2]>>2];c[w>>2]=0;c[v>>2]=0;c[E>>2]=0;c[x>>2]=c[(c[P>>2]|0)+4>>2];d=(c[P>>2]|0)+16|0;g=c[d+4>>2]|0;a=K;c[a>>2]=c[d>>2];c[a+4>>2]=g;c[O>>2]=(c[c[P>>2]>>2]|0)+1;c[u>>2]=Fe(c[(c[I>>2]|0)+8>>2]|0,c[O>>2]|0)|0;a=c[(c[I>>2]|0)+8>>2]|0;g=c[O>>2]|0;if((c[u>>2]|0)==0){if((He(a,g)|0)!=5){c[n>>2]=7;P=c[n>>2]|0;i=F;return P|0}else{c[n>>2]=0;P=c[n>>2]|0;i=F;return P|0}}c[l>>2]=Be(a,g)|0;c[r>>2]=c[c[(c[H>>2]|0)+36>>2]>>2];c[q>>2]=jl(c[(c[H>>2]|0)+36>>2]|0,c[(c[I>>2]|0)+16>>2]|0,c[u>>2]|0,c[l>>2]|0,s)|0;if((c[q>>2]|0)!=0){c[n>>2]=c[q>>2];P=c[n>>2]|0;i=F;return P|0}while(1){if((c[q>>2]|0)!=0){break}c[y>>2]=-1;c[z>>2]=0;c[A>>2]=0;c[B>>2]=0;c[q>>2]=tb[c[(c[r>>2]|0)+20>>2]&15](c[s>>2]|0,C,y,z,A,w)|0;if((c[q>>2]|0)!=0){m=9;break}if((c[w>>2]|0)<(c[x>>2]|0)){continue}if((c[E>>2]|0)==0){c[G>>2]=(c[l>>2]|0)-(c[z>>2]|0);c[q>>2]=Dl(c[H>>2]|0,c[(c[I>>2]|0)+16>>2]|0,c[J>>2]|0,(c[u>>2]|0)+(c[z>>2]|0)|0,c[G>>2]|0,x,K)|0;c[E>>2]=1;do{if((c[q>>2]|0)==0){if((c[x>>2]|0)<=0){if((c[L>>2]|0)<=0){break}}c[q>>2]=zl(c[t>>2]|0,c[M>>2]|0,-1)|0}}while(0);if((c[q>>2]|0)!=0){continue}if((c[w>>2]|0)<(c[x>>2]|0)){continue}}if((c[w>>2]|0)>=((c[x>>2]|0)+(c[J>>2]|0)|0)){m=20;break}P=K;d=c[P>>2]|0;P=c[P+4>>2]|0;O=bL(1,0,(c[w>>2]|0)-(c[x>>2]|0)|0)|0;c[B>>2]=((d&O|0)!=0|(P&D|0)!=0)&1;if((c[w>>2]|0)>(c[x>>2]|0)){c[q>>2]=zl(c[t>>2]|0,(c[u>>2]|0)+(c[v>>2]|0)|0,(c[z>>2]|0)-(c[v>>2]|0)|0)|0}if((c[q>>2]|0)==0){if((c[B>>2]|0)!=0){c[q>>2]=zl(c[t>>2]|0,c[N>>2]|0,-1)|0}}if((c[q>>2]|0)==0){c[q>>2]=zl(c[t>>2]|0,(c[u>>2]|0)+(c[z>>2]|0)|0,(c[A>>2]|0)-(c[z>>2]|0)|0)|0}if((c[q>>2]|0)==0){if((c[B>>2]|0)!=0){c[q>>2]=zl(c[t>>2]|0,c[p>>2]|0,-1)|0}}c[v>>2]=c[A>>2]}if((m|0)==9){if((c[q>>2]|0)==101){c[q>>2]=zl(c[t>>2]|0,(c[u>>2]|0)+(c[v>>2]|0)|0,-1)|0}}else if((m|0)==20){if((c[o>>2]|0)!=0){c[q>>2]=zl(c[t>>2]|0,c[M>>2]|0,-1)|0}}ub[c[(c[r>>2]|0)+16>>2]&63](c[s>>2]|0)|0;c[n>>2]=c[q>>2];P=c[n>>2]|0;i=F;return P|0}function Dl(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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,E=0,F=0;k=i;i=i+96|0;j=k+84|0;z=k+80|0;A=k+76|0;q=k+72|0;B=k+68|0;C=k+64|0;l=k+60|0;o=k+56|0;n=k;E=k+52|0;F=k+12|0;v=k+20|0;m=k+8|0;p=k+16|0;r=k+24|0;t=k+28|0;u=k+32|0;y=k+36|0;w=k+40|0;x=k+44|0;s=k+48|0;c[z>>2]=a;c[A>>2]=b;c[q>>2]=d;c[B>>2]=e;c[C>>2]=f;c[l>>2]=g;c[o>>2]=h;d=c[o>>2]|0;b=c[d+4>>2]|0;a=n;c[a>>2]=c[d>>2];c[a+4>>2]=b;a=n;do{if((c[a>>2]|0)!=0|(c[a+4>>2]|0)!=0){c[E>>2]=0;while(1){a=n;d=c[a>>2]|0;a=c[a+4>>2]|0;b=bL(1,0,c[E>>2]|0)|0;if(!(((d&b|0)!=0|(a&D|0)!=0)^1)){break}c[E>>2]=(c[E>>2]|0)+1}c[F>>2]=0;while(1){a=n;d=c[a>>2]|0;a=c[a+4>>2]|0;b=bL(1,0,(c[q>>2]|0)-1-(c[F>>2]|0)|0)|0;if(!(((d&b|0)!=0|(a&D|0)!=0)^1)){break}c[F>>2]=(c[F>>2]|0)+1}c[v>>2]=((c[E>>2]|0)-(c[F>>2]|0)|0)/2|0;if((c[v>>2]|0)>0){c[p>>2]=0;c[t>>2]=c[c[(c[z>>2]|0)+36>>2]>>2];c[r>>2]=jl(c[(c[z>>2]|0)+36>>2]|0,c[A>>2]|0,c[B>>2]|0,c[C>>2]|0,u)|0;if((c[r>>2]|0)!=0){c[j>>2]=c[r>>2];a=c[j>>2]|0;i=k;return a|0}while(1){if((c[r>>2]|0)!=0){break}if((c[p>>2]|0)>=((c[q>>2]|0)+(c[v>>2]|0)|0)){break}c[w>>2]=0;c[x>>2]=0;c[s>>2]=0;c[r>>2]=tb[c[(c[t>>2]|0)+20>>2]&15](c[u>>2]|0,y,w,x,s,p)|0}ub[c[(c[t>>2]|0)+16>>2]&63](c[u>>2]|0)|0;s=c[r>>2]|0;if((c[r>>2]|0)!=0&(c[r>>2]|0)!=101){c[j>>2]=s;a=c[j>>2]|0;i=k;return a|0}else{c[m>>2]=((s|0)==101&1)+(c[p>>2]|0)-(c[q>>2]|0);if((c[m>>2]|0)<=0){break}b=c[l>>2]|0;c[b>>2]=(c[b>>2]|0)+(c[m>>2]|0);b=n;b=eL(c[b>>2]|0,c[b+4>>2]|0,c[m>>2]|0)|0;a=c[o>>2]|0;c[a>>2]=b;c[a+4>>2]=D;break}}}}while(0);c[j>>2]=0;a=c[j>>2]|0;i=k;return a|0}function El(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;l=e+28|0;m=e;n=e+4|0;k=e+8|0;j=e+12|0;h=e+16|0;f=e+20|0;g=e+24|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[k>>2]=c[n>>2];c[j>>2]=(c[(c[k>>2]|0)+16>>2]|0)+((c[m>>2]|0)*24|0);c[c[j>>2]>>2]=c[(c[(c[l>>2]|0)+20>>2]|0)+48>>2];c[f>>2]=uk(c[c[k>>2]>>2]|0,c[l>>2]|0,c[(c[k>>2]|0)+4>>2]|0,h)|0;if((c[h>>2]|0)==0){n=c[f>>2]|0;i=e;return n|0}c[g>>2]=0;c[(c[j>>2]|0)+4>>2]=c[h>>2];yl(h,g);c[(c[j>>2]|0)+12>>2]=c[h>>2];c[(c[j>>2]|0)+20>>2]=c[h>>2];c[(c[j>>2]|0)+8>>2]=c[g>>2];c[(c[j>>2]|0)+16>>2]=c[g>>2];n=c[f>>2]|0;i=e;return n|0}function Fl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;b=d+28|0;f=d;e=d+4|0;g=d+8|0;k=d+12|0;j=d+16|0;l=d+20|0;h=d+24|0;c[f>>2]=a;a:do{if((c[(c[f>>2]|0)+20>>2]|0)<0){c[(c[f>>2]|0)+20>>2]=0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+12>>2]|0)){break a}c[g>>2]=(c[(c[f>>2]|0)+16>>2]|0)+((c[e>>2]|0)*24|0);Hl((c[g>>2]|0)+12|0,(c[g>>2]|0)+8|0,c[(c[f>>2]|0)+8>>2]|0);c[e>>2]=(c[e>>2]|0)+1}}else{c[j>>2]=2147483647;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+12>>2]|0)){break}c[l>>2]=(c[(c[f>>2]|0)+16>>2]|0)+((c[e>>2]|0)*24|0);if((c[(c[l>>2]|0)+12>>2]|0)!=0){if((c[(c[l>>2]|0)+8>>2]|0)<(c[j>>2]|0)){c[j>>2]=c[(c[l>>2]|0)+8>>2]}}c[e>>2]=(c[e>>2]|0)+1}if((c[j>>2]|0)==2147483647){c[b>>2]=1;l=c[b>>2]|0;i=d;return l|0}l=(c[j>>2]|0)-(c[(c[f>>2]|0)+8>>2]|0)+1|0;c[k>>2]=l;c[(c[f>>2]|0)+20>>2]=l;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+12>>2]|0)){break a}c[h>>2]=(c[(c[f>>2]|0)+16>>2]|0)+((c[e>>2]|0)*24|0);Hl((c[h>>2]|0)+12|0,(c[h>>2]|0)+8|0,(c[j>>2]|0)+1|0);Hl((c[h>>2]|0)+20|0,(c[h>>2]|0)+16|0,c[k>>2]|0);c[e>>2]=(c[e>>2]|0)+1}}}while(0);c[b>>2]=0;l=c[b>>2]|0;i=d;return l|0}function Gl(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;s=i;i=i+96|0;l=s+84|0;A=s+32|0;t=s+80|0;n=s+76|0;p=s+72|0;r=s+68|0;w=s+64|0;m=s+60|0;x=s+48|0;o=s+8|0;q=s;k=s+40|0;u=s+52|0;v=s+44|0;B=s+56|0;y=s+24|0;z=s+16|0;c[l>>2]=b;b=A;c[b>>2]=d;c[b+4>>2]=e;c[t>>2]=f;c[n>>2]=g;c[p>>2]=h;c[r>>2]=j;c[w>>2]=c[(c[l>>2]|0)+20>>2];c[m>>2]=0;b=o;c[b>>2]=0;c[b+4>>2]=0;b=q;c[b>>2]=0;c[b+4>>2]=0;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0)){break}c[k>>2]=(c[(c[l>>2]|0)+16>>2]|0)+((c[x>>2]|0)*24|0);a:do{if((c[(c[k>>2]|0)+20>>2]|0)!=0){c[u>>2]=c[(c[k>>2]|0)+20>>2];c[v>>2]=c[(c[k>>2]|0)+16>>2];while(1){if((c[v>>2]|0)>=((c[w>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0)|0)){break a}e=bL(1,0,c[x>>2]|0)|0;d=y;c[d>>2]=e;c[d+4>>2]=D;d=bL(1,0,(c[v>>2]|0)-(c[w>>2]|0)|0)|0;e=z;c[e>>2]=d;c[e+4>>2]=D;e=o;d=A;b=y;j=c[m>>2]|0;if(((c[e>>2]|c[d>>2])&c[b>>2]|0)!=0?1:((c[e+4>>2]|c[d+4>>2])&c[b+4>>2]|0)!=0){c[m>>2]=j+1}else{c[m>>2]=j+1e3}e=y;f=o;d=c[f+4>>2]|c[e+4>>2];b=o;c[b>>2]=c[f>>2]|c[e>>2];c[b+4>>2]=d;c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[c[k>>2]>>2]|0)){break}e=z;e=eL(c[e>>2]|0,c[e+4>>2]|0,c[B>>2]|0)|0;f=q;d=c[f+4>>2]|D;b=q;c[b>>2]=c[f>>2]|e;c[b+4>>2]=d;c[B>>2]=(c[B>>2]|0)+1}if(0==(a[c[u>>2]>>0]&254|0)){break a}yl(u,v)}}}while(0);c[x>>2]=(c[x>>2]|0)+1}c[c[t>>2]>>2]=c[w>>2];c[c[n>>2]>>2]=c[m>>2];b=o;d=c[b+4>>2]|0;e=c[p>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=d;e=q;d=c[e+4>>2]|0;b=c[r>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;i=s;return}function Hl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;l=g+16|0;j=g;m=g+4|0;k=g+8|0;h=g+12|0;c[l>>2]=b;c[j>>2]=d;c[m>>2]=e;c[k>>2]=c[c[l>>2]>>2];if((c[k>>2]|0)==0){i=g;return}c[h>>2]=c[c[j>>2]>>2];while(1){if((c[h>>2]|0)>=(c[m>>2]|0)){break}if(0==(a[c[k>>2]>>0]&254|0)){f=5;break}yl(k,h)}if((f|0)==5){c[h>>2]=-1;c[k>>2]=0}c[c[j>>2]>>2]=c[h>>2];c[c[l>>2]>>2]=c[k>>2];i=g;return}function Il(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;j=d+16|0;f=d;e=d+4|0;g=d+8|0;h=d+12|0;c[j>>2]=a;c[f>>2]=b;c[g>>2]=0;c[h>>2]=0;c[e>>2]=$i(c[j>>2]|0,36,h,0)|0;if((c[e>>2]|0)!=0){a=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=a;j=c[e>>2]|0;i=d;return j|0}if(100==(le(c[h>>2]|0)|0)){c[g>>2]=De(c[h>>2]|0,0)|0}c[e>>2]=Cd(c[h>>2]|0)|0;a=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=a;j=c[e>>2]|0;i=d;return j|0}function Jl(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=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,E=0,F=0,G=0;t=i;i=i+128|0;h=t+112|0;r=t+108|0;G=t+104|0;A=t+100|0;j=t+96|0;B=t+92|0;n=t+88|0;f=t+84|0;k=t+80|0;o=t+76|0;q=t;l=t+64|0;m=t+60|0;F=t+32|0;x=t+8|0;z=t+24|0;p=t+28|0;s=t+36|0;u=t+40|0;v=t+16|0;w=t+44|0;y=t+48|0;C=t+52|0;E=t+56|0;c[r>>2]=a;c[G>>2]=b;c[A>>2]=e;c[B>>2]=c[G>>2];c[o>>2]=0;a=q;c[a>>2]=0;c[a+4>>2]=0;c[l+0>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[m>>2]=0;c[F>>2]=640;c[k>>2]=mc(640)|0;if((c[k>>2]|0)==0){c[h>>2]=7;G=c[h>>2]|0;i=t;return G|0}c[f>>2]=(c[k>>2]|0)+568;c[n>>2]=(c[f>>2]|0)+16;c[j>>2]=Kl(c[r>>2]|0,l)|0;while(1){if((c[j>>2]|0)!=0){break}if((c[B>>2]|0)<=0){break}F=c[(c[r>>2]|0)+248>>2]<<10;G=x;c[G>>2]=F;c[G+4>>2]=((F|0)<0)<<31>>31;c[z>>2]=0;c[p>>2]=0;c[s>>2]=0;c[j>>2]=$i(c[r>>2]|0,28,z,0)|0;Oe(c[z>>2]|0,1,c[A>>2]|0)|0;if((le(c[z>>2]|0)|0)==100){F=Ee(c[z>>2]|0,0)|0;G=q;c[G>>2]=F;c[G+4>>2]=D;c[o>>2]=c[A>>2]}else{c[o>>2]=-1}c[j>>2]=Cd(c[z>>2]|0)|0;do{if((c[j>>2]|0)==0){if((c[l+4>>2]|0)!=0){c[u>>2]=c[l+4>>2];G=v;c[G>>2]=0;c[G+4>>2]=0;c[w>>2]=0;c[j>>2]=Ll(l,v,w)|0;if((c[o>>2]|0)>=0){b=q;F=x;F=mL(c[b>>2]|0,c[b+4>>2]|0,c[F>>2]|0,c[F+4>>2]|0)|0;b=D;a=v;G=x;G=mL(c[a>>2]|0,c[a+4>>2]|0,c[G>>2]|0,c[G+4>>2]|0)|0;a=D;if(!((b|0)>(a|0)|(b|0)==(a|0)&F>>>0>=G>>>0)){c[l+4>>2]=c[u>>2];break}}a=v;F=c[a+4>>2]|0;G=q;c[G>>2]=c[a>>2];c[G+4>>2]=F;c[o>>2]=c[w>>2];c[p>>2]=1;c[m>>2]=1}}}while(0);if((c[o>>2]|0)<0){break}aL(c[k>>2]|0,0,640)|0;c[(c[f>>2]|0)+12>>2]=1;do{if((c[j>>2]|0)==0){G=q;c[j>>2]=Ml(c[r>>2]|0,c[G>>2]|0,c[G+4>>2]|0,s)|0;if((c[s>>2]|0)!=0){if((c[p>>2]|0)==0){break}if((c[s>>2]|0)!=1){break}}c[y>>2]=0;F=c[r>>2]|0;G=q;G=dL(c[G>>2]|0,c[G+4>>2]|0,1,0)|0;c[j>>2]=Nl(F,G,D,y)|0;if((c[y>>2]|0)!=0){G=(c[f>>2]|0)+12|0;c[G>>2]=c[G>>2]|2}}}while(0);if((c[j>>2]|0)==0){G=q;c[j>>2]=Ol(c[r>>2]|0,c[G>>2]|0,c[G+4>>2]|0,c[o>>2]|0,c[n>>2]|0)|0}if(0==(c[j>>2]|0)){if((c[(c[n>>2]|0)+4>>2]|0)==(c[o>>2]|0)){G=ej(c[r>>2]|0,c[n>>2]|0,c[f>>2]|0)|0;c[j>>2]=G;if(0==(G|0)){G=fj(c[r>>2]|0,c[n>>2]|0)|0;c[j>>2]=G;if(100==(G|0)){if((c[p>>2]|0)!=0){if((c[s>>2]|0)>0){c[C>>2]=c[(c[n>>2]|0)+40>>2];c[E>>2]=c[(c[n>>2]|0)+44>>2];G=q;c[j>>2]=Pl(c[r>>2]|0,c[G>>2]|0,c[G+4>>2]|0,(c[s>>2]|0)-1|0,c[C>>2]|0,c[E>>2]|0,c[k>>2]|0)|0}else{g=31}}else{g=31}if((g|0)==31){g=0;G=q;c[j>>2]=Ql(c[r>>2]|0,c[G>>2]|0,c[G+4>>2]|0,c[s>>2]|0,c[n>>2]|0,c[k>>2]|0)|0}if((c[j>>2]|0)==0){if((c[c[k>>2]>>2]|0)!=0){do{c[j>>2]=Rl(c[r>>2]|0,c[k>>2]|0,c[n>>2]|0)|0;if((c[j>>2]|0)==0){c[j>>2]=fj(c[r>>2]|0,c[n>>2]|0)|0}do{if((c[(c[k>>2]|0)+4>>2]|0)>=(c[B>>2]|0)){if((c[j>>2]|0)!=100){break}c[j>>2]=0}}while(0)}while((c[j>>2]|0)==100);if((c[j>>2]|0)==0){c[B>>2]=(c[B>>2]|0)-(1+(c[(c[k>>2]|0)+4>>2]|0));G=q;c[j>>2]=Sl(c[r>>2]|0,c[G>>2]|0,c[G+4>>2]|0,c[n>>2]|0,o)|0;if((c[o>>2]|0)!=0){c[m>>2]=1;G=q;Tl(l,c[G>>2]|0,c[G+4>>2]|0,c[o>>2]|0,j)}}}}if((c[o>>2]|0)!=0){F=(c[k>>2]|0)+40|0;F=nL(c[F>>2]|0,c[F+4>>2]|0,-1,-1)|0;G=(c[k>>2]|0)+40|0;c[G>>2]=F;c[G+4>>2]=D}Ul(c[r>>2]|0,c[k>>2]|0,j);if((c[o>>2]|0)==0){if((d[(c[k>>2]|0)+48>>0]|0|0)==0){a=c[r>>2]|0;F=q;F=dL(c[F>>2]|0,c[F+4>>2]|0,1,0)|0;G=(c[k>>2]|0)+40|0;jj(a,F,D,c[G>>2]|0,c[G+4>>2]|0)|0}}}}}}lj(c[n>>2]|0)}if((c[m>>2]|0)!=0){if((c[j>>2]|0)==0){c[j>>2]=Vl(c[r>>2]|0,l)|0}}oc(c[k>>2]|0);oc(c[l>>2]|0);c[h>>2]=c[j>>2];G=c[h>>2]|0;i=t;return G|0}function Kl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;l=d+24|0;h=d;f=d+4|0;e=d+8|0;g=d+12|0;j=d+16|0;k=d+20|0;c[l>>2]=a;c[h>>2]=b;c[f>>2]=0;c[(c[h>>2]|0)+4>>2]=0;c[e>>2]=$i(c[l>>2]|0,22,f,0)|0;if((c[e>>2]|0)!=0){l=c[e>>2]|0;i=d;return l|0}Oe(c[f>>2]|0,1,1)|0;if(100==(le(c[f>>2]|0)|0)){c[j>>2]=ye(c[f>>2]|0,0)|0;c[k>>2]=Be(c[f>>2]|0,0)|0;if((c[j>>2]|0)!=0){Wl(c[h>>2]|0,c[k>>2]|0,e);if((c[e>>2]|0)==0){fL(c[c[h>>2]>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;c[(c[h>>2]|0)+4>>2]=c[k>>2]}}}c[g>>2]=Cd(c[f>>2]|0)|0;if((c[e>>2]|0)!=0){l=c[e>>2]|0;i=d;return l|0}c[e>>2]=c[g>>2];l=c[e>>2]|0;i=d;return l|0}function Ll(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;k=g+20|0;m=g;n=g+4|0;l=g+8|0;j=g+12|0;h=g+16|0;c[m>>2]=b;c[n>>2]=e;c[l>>2]=f;c[j>>2]=c[(c[m>>2]|0)+4>>2];c[h>>2]=(c[(c[m>>2]|0)+4>>2]|0)-2;while(1){if((c[h>>2]|0)<=0){break}if((a[(c[c[m>>2]>>2]|0)+((c[h>>2]|0)-1)>>0]&128|0)==0){break}c[h>>2]=(c[h>>2]|0)+ -1}while(1){if((c[h>>2]|0)>0){e=(a[(c[c[m>>2]>>2]|0)+((c[h>>2]|0)-1)>>0]&128|0)!=0}else{e=0}f=c[h>>2]|0;if(!e){break}c[h>>2]=f+ -1}c[(c[m>>2]|0)+4>>2]=f;n=Kj((c[c[m>>2]>>2]|0)+(c[h>>2]|0)|0,c[n>>2]|0)|0;c[h>>2]=(c[h>>2]|0)+n;n=(c[c[m>>2]>>2]|0)+(c[h>>2]|0)|0;if((a[(c[c[m>>2]>>2]|0)+(c[h>>2]|0)>>0]&128|0)!=0){l=Lj(n,c[l>>2]|0)|0}else{c[c[l>>2]>>2]=d[n>>0]|0;l=1}c[h>>2]=(c[h>>2]|0)+l;if((c[h>>2]|0)!=(c[j>>2]|0)){c[k>>2]=267;b=c[k>>2]|0;i=g;return b|0}else{c[k>>2]=0;b=c[k>>2]|0;i=g;return b|0}return 0}function Ml(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+20|0;j=f;k=f+8|0;g=f+12|0;h=f+16|0;c[l>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;c[k>>2]=e;c[h>>2]=0;c[g>>2]=$i(c[l>>2]|0,8,h,0)|0;if((c[g>>2]|0)!=0){l=c[g>>2]|0;i=f;return l|0}a=c[h>>2]|0;l=j;l=dL(c[l>>2]|0,c[l+4>>2]|0,1,0)|0;Pe(a,1,l,D)|0;le(c[h>>2]|0)|0;l=De(c[h>>2]|0,0)|0;c[c[k>>2]>>2]=l;c[g>>2]=Cd(c[h>>2]|0)|0;l=c[g>>2]|0;i=f;return l|0}function Nl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+24|0;m=f+8|0;l=f;k=f+12|0;j=f+16|0;h=f+20|0;c[m>>2]=a;a=l;c[a>>2]=b;c[a+4>>2]=d;c[k>>2]=e;c[h>>2]=$i(c[m>>2]|0,15,j,0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];m=c[g>>2]|0;i=f;return m|0}m=c[j>>2]|0;a=l;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;Pe(m,1,a,D)|0;a=c[j>>2]|0;m=l;m=lL(c[m>>2]|0,c[m+4>>2]|0,1024,0)|0;m=dL(m|0,D|0,1,0)|0;m=nL(m|0,D|0,1024,0)|0;Pe(a,2,m,D)|0;c[c[k>>2]>>2]=0;if(100==(le(c[j>>2]|0)|0)){m=(He(c[j>>2]|0,0)|0)==5&1;c[c[k>>2]>>2]=m}c[g>>2]=Cd(c[j>>2]|0)|0;m=c[g>>2]|0;i=f;return m|0}function Ol(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;l=n+36|0;g=n;o=n+32|0;j=n+28|0;k=n+16|0;m=n+20|0;h=n+12|0;p=n+8|0;q=n+24|0;c[l>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;c[o>>2]=e;c[j>>2]=f;c[m>>2]=0;e=(c[j>>2]|0)+0|0;f=e+56|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));c[h>>2]=c[o>>2]<<2;a=mc(c[h>>2]|0)|0;c[c[j>>2]>>2]=a;if((c[c[j>>2]>>2]|0)==0){c[k>>2]=7}else{aL(c[c[j>>2]>>2]|0,0,c[h>>2]|0)|0;c[k>>2]=$i(c[l>>2]|0,12,m,0)|0}if((c[k>>2]|0)!=0){a=c[k>>2]|0;i=n;return a|0}a=g;Pe(c[m>>2]|0,1,c[a>>2]|0,c[a+4>>2]|0)|0;c[p>>2]=0;while(1){if((c[k>>2]|0)!=0){break}if((le(c[m>>2]|0)|0)!=100){break}if((c[p>>2]|0)>=(c[o>>2]|0)){break}r=c[p>>2]|0;g=Ee(c[m>>2]|0,1)|0;h=D;l=Ee(c[m>>2]|0,2)|0;f=D;e=Ee(c[m>>2]|0,3)|0;d=D;b=ye(c[m>>2]|0,4)|0;a=Be(c[m>>2]|0,4)|0;c[k>>2]=_j(r,0,g,h,l,f,e,d,b,a,(c[c[j>>2]>>2]|0)+(c[p>>2]<<2)|0)|0;a=(c[j>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+1}c[q>>2]=Cd(c[m>>2]|0)|0;if((c[k>>2]|0)!=0){r=c[k>>2]|0;i=n;return r|0}c[k>>2]=c[q>>2];r=c[k>>2]|0;i=n;return r|0}function Pl(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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,E=0,F=0,G=0,H=0,I=0,J=0,K=0;u=i;i=i+208|0;t=u+200|0;s=u+196|0;J=u+8|0;A=u+192|0;F=u+188|0;G=u+184|0;n=u+180|0;m=u+176|0;r=u+172|0;I=u+64|0;K=u;z=u+120|0;w=u+128|0;x=u+136|0;q=u+140|0;B=u+144|0;C=u+148|0;H=u+132|0;E=u+72|0;o=u+152|0;y=u+156|0;p=u+160|0;k=u+16|0;v=u+164|0;l=u+168|0;c[s>>2]=b;b=J;c[b>>2]=d;c[b+4>>2]=e;c[A>>2]=f;c[F>>2]=g;c[G>>2]=h;c[n>>2]=j;c[r>>2]=0;c[m>>2]=$i(c[s>>2]|0,32,r,0)|0;if((c[m>>2]|0)==0){j=I;c[j>>2]=0;c[j+4>>2]=0;j=K;c[j>>2]=0;c[j+4>>2]=0;j=z;c[j>>2]=0;c[j+4>>2]=0;c[w>>2]=0;c[x>>2]=0;c[B>>2]=0;j=c[r>>2]|0;b=J;b=dL(c[b>>2]|0,c[b+4>>2]|0,1,0)|0;Pe(j,1,b,D)|0;Oe(c[r>>2]|0,2,c[A>>2]|0)|0;b=(le(c[r>>2]|0)|0)==100;j=c[r>>2]|0;if(!b){c[t>>2]=Cd(j)|0;b=c[t>>2]|0;i=u;return b|0}b=Ee(j,1)|0;d=I;c[d>>2]=b;c[d+4>>2]=D;d=Ee(c[r>>2]|0,2)|0;b=K;c[b>>2]=d;c[b+4>>2]=D;oj(c[r>>2]|0,3,z,(c[n>>2]|0)+40|0);if((c[(c[n>>2]|0)+44>>2]|0)<0){d=(c[n>>2]|0)+40|0;d=nL(c[d>>2]|0,c[d+4>>2]|0,-1,-1)|0;b=(c[n>>2]|0)+40|0;c[b>>2]=d;c[b+4>>2]=D}b=(c[n>>2]|0)+40|0;a[(c[n>>2]|0)+48>>0]=(c[b>>2]|0)==0&(c[b+4>>2]|0)==0&1;c[x>>2]=Be(c[r>>2]|0,4)|0;c[w>>2]=ye(c[r>>2]|0,4)|0;b=z;c[m>>2]=gm(c[s>>2]|0,c[b>>2]|0,c[b+4>>2]|0,B)|0;if((c[m>>2]|0)==0){if((c[B>>2]|0)!=0){c[C>>2]=0;c[H>>2]=0;b=K;c[m>>2]=Sj(c[s>>2]|0,c[b>>2]|0,c[b+4>>2]|0,C,H,0)|0;if((c[m>>2]|0)==0){c[m>>2]=$l(E,c[C>>2]|0,c[H>>2]|0)|0;while(1){if((c[m>>2]|0)!=0){break}if((c[E>>2]|0)==0){break}c[m>>2]=dm(E)|0}if((am(c[F>>2]|0,c[G>>2]|0,c[E+24>>2]|0,c[E+28>>2]|0)|0)<=0){c[B>>2]=0}em(E)}oc(c[C>>2]|0)}}a:do{if((c[m>>2]|0)==0){if((c[B>>2]|0)!=0){c[y>>2]=a[c[w>>2]>>0]|0;d=z;e=I;e=$K(c[d>>2]|0,c[d+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;e=dL(e|0,D|0,1,0)|0;c[c[n>>2]>>2]=(e|0)/16|0;e=I;d=c[e+4>>2]|0;b=(c[n>>2]|0)+24|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;b=z;d=c[b+4>>2]|0;e=(c[n>>2]|0)+32|0;c[e>>2]=c[b>>2];c[e+4>>2]=d;e=J;d=c[e+4>>2]|0;b=(c[n>>2]|0)+8|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;c[(c[n>>2]|0)+16>>2]=c[A>>2];c[o>>2]=(c[y>>2]|0)+1;while(1){if((c[o>>2]|0)>=16){break}b=(c[n>>2]|0)+24|0;d=$(c[o>>2]|0,c[c[n>>2]>>2]|0)|0;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,((d|0)<0)<<31>>31|0)|0;b=(c[n>>2]|0)+56+(c[o>>2]<<5)|0;c[b>>2]=d;c[b+4>>2]=D;c[o>>2]=(c[o>>2]|0)+1}c[p>>2]=(c[n>>2]|0)+56+(c[y>>2]<<5);b=(c[n>>2]|0)+24|0;d=$(c[c[n>>2]>>2]|0,c[y>>2]|0)|0;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,((d|0)<0)<<31>>31|0)|0;b=c[p>>2]|0;c[b>>2]=d;c[b+4>>2]=D;if((c[x>>2]|0)>(c[(c[s>>2]|0)+224>>2]|0)){z=c[x>>2]|0}else{z=c[(c[s>>2]|0)+224>>2]|0}Wl((c[p>>2]|0)+20|0,z,m);if((c[m>>2]|0)==0){fL(c[(c[p>>2]|0)+20>>2]|0,c[w>>2]|0,c[x>>2]|0)|0;c[(c[p>>2]|0)+24>>2]=c[x>>2]}c[o>>2]=c[y>>2];while(1){if((c[o>>2]|0)<0){break a}if((c[m>>2]|0)!=0){break a}c[p>>2]=(c[n>>2]|0)+56+(c[o>>2]<<5);c[m>>2]=$l(k,c[(c[p>>2]|0)+20>>2]|0,c[(c[p>>2]|0)+24>>2]|0)|0;while(1){if((c[k>>2]|0)==0){break}if((c[m>>2]|0)!=0){break}c[m>>2]=dm(k)|0}Wl((c[p>>2]|0)+8|0,c[k+28>>2]|0,m);if((c[m>>2]|0)==0){fL(c[(c[p>>2]|0)+8>>2]|0,c[k+24>>2]|0,c[k+28>>2]|0)|0;c[(c[p>>2]|0)+12>>2]=c[k+28>>2];if((c[o>>2]|0)>0){c[v>>2]=0;c[l>>2]=0;c[p>>2]=(c[n>>2]|0)+56+((c[o>>2]|0)-1<<5);e=k+16|0;d=c[e+4>>2]|0;b=c[p>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;b=k+16|0;c[m>>2]=Sj(c[s>>2]|0,c[b>>2]|0,c[b+4>>2]|0,v,l,0)|0;if((c[l>>2]|0)>(c[(c[s>>2]|0)+224>>2]|0)){w=c[l>>2]|0}else{w=c[(c[s>>2]|0)+224>>2]|0}Wl((c[p>>2]|0)+20|0,w,m);if((c[m>>2]|0)==0){fL(c[(c[p>>2]|0)+20>>2]|0,c[v>>2]|0,c[l>>2]|0)|0;c[(c[p>>2]|0)+24>>2]=c[l>>2]}oc(c[v>>2]|0)}}em(k);c[o>>2]=(c[o>>2]|0)+ -1}}}}while(0);c[q>>2]=Cd(c[r>>2]|0)|0;if((c[m>>2]|0)==0){c[m>>2]=c[q>>2]}}c[t>>2]=c[m>>2];b=c[t>>2]|0;i=u;return b|0}function Ql(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+48|0;j=k+44|0;m=k+40|0;p=k;h=k+36|0;t=k+32|0;l=k+20|0;q=k+24|0;r=k+16|0;o=k+12|0;s=k+8|0;n=k+28|0;c[m>>2]=a;a=p;c[a>>2]=b;c[a+4>>2]=d;c[h>>2]=e;c[t>>2]=f;c[l>>2]=g;c[o>>2]=0;c[s>>2]=0;c[n>>2]=0;c[q>>2]=$i(c[m>>2]|0,29,s,0)|0;if((c[q>>2]|0)==0){a=p;Pe(c[s>>2]|0,1,c[a>>2]|0,c[a+4>>2]|0)|0;a=c[(c[t>>2]|0)+4>>2]|0;Pe(c[s>>2]|0,2,a,((a|0)<0)<<31>>31)|0;if(100==(le(c[s>>2]|0)|0)){c[o>>2]=De(c[s>>2]|0,0)|0}c[q>>2]=Cd(c[s>>2]|0)|0}if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];a=c[j>>2]|0;i=k;return a|0}c[q>>2]=$i(c[m>>2]|0,10,n,0)|0;if((c[q>>2]|0)==0){if(100==(le(c[n>>2]|0)|0)){b=Ee(c[n>>2]|0,0)|0;a=(c[l>>2]|0)+24|0;c[a>>2]=b;c[a+4>>2]=D;a=(c[l>>2]|0)+24|0;a=$K(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;b=(c[l>>2]|0)+32|0;c[b>>2]=a;c[b+4>>2]=D;b=c[o>>2]<<4;a=(c[l>>2]|0)+32|0;d=a;b=dL(c[d>>2]|0,c[d+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[a>>2]=b;c[a+4>>2]=D}c[q>>2]=Cd(c[n>>2]|0)|0}if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];a=c[j>>2]|0;i=k;return a|0}a=(c[l>>2]|0)+32|0;c[q>>2]=pj(c[m>>2]|0,c[a>>2]|0,c[a+4>>2]|0,0,0)|0;if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];a=c[j>>2]|0;i=k;return a|0}d=p;b=c[d+4>>2]|0;a=(c[l>>2]|0)+8|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;c[c[l>>2]>>2]=c[o>>2];c[(c[l>>2]|0)+16>>2]=c[h>>2];c[r>>2]=0;while(1){if((c[r>>2]|0)>=16){break}a=(c[l>>2]|0)+24|0;b=$(c[r>>2]|0,c[c[l>>2]>>2]|0)|0;b=dL(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=(c[l>>2]|0)+56+(c[r>>2]<<5)|0;c[a>>2]=b;c[a+4>>2]=D;c[r>>2]=(c[r>>2]|0)+1}c[j>>2]=0;a=c[j>>2]|0;i=k;return a|0}function Rl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+48|0;q=g+44|0;o=g+40|0;s=g+36|0;j=g+32|0;k=g+28|0;l=g+24|0;f=g+20|0;m=g+12|0;n=g+8|0;r=g+4|0;p=g;h=g+16|0;c[q>>2]=b;c[o>>2]=d;c[s>>2]=e;c[j>>2]=c[(c[s>>2]|0)+40>>2];c[k>>2]=c[(c[s>>2]|0)+44>>2];c[l>>2]=c[(c[s>>2]|0)+48>>2];c[f>>2]=c[(c[s>>2]|0)+52>>2];c[m>>2]=0;c[h>>2]=(c[o>>2]|0)+56;c[r>>2]=wj(c[(c[h>>2]|0)+8>>2]|0,c[(c[h>>2]|0)+12>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;c[p>>2]=(c[k>>2]|0)-(c[r>>2]|0);b=c[r>>2]|0;c[n>>2]=tj(b,((b|0)<0)<<31>>31)|0;b=c[p>>2]|0;b=tj(b,((b|0)<0)<<31>>31)|0;c[n>>2]=(c[n>>2]|0)+(b+(c[p>>2]|0));b=c[f>>2]|0;b=tj(b,((b|0)<0)<<31>>31)|0;c[n>>2]=(c[n>>2]|0)+(b+(c[f>>2]|0));if((c[(c[h>>2]|0)+24>>2]|0)>0){if(((c[(c[h>>2]|0)+24>>2]|0)+(c[n>>2]|0)|0)>(c[(c[q>>2]|0)+224>>2]|0)){s=c[h>>2]|0;c[m>>2]=pj(c[q>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[(c[h>>2]|0)+20>>2]|0,c[(c[h>>2]|0)+24>>2]|0)|0;s=(c[o>>2]|0)+4|0;c[s>>2]=(c[s>>2]|0)+1;if((c[m>>2]|0)==0){c[m>>2]=fm(c[q>>2]|0,c[o>>2]|0,c[j>>2]|0,(c[r>>2]|0)+1|0)|0}s=c[h>>2]|0;b=s;b=dL(c[b>>2]|0,c[b+4>>2]|0,1,0)|0;c[s>>2]=b;c[s+4>>2]=D;c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+24>>2]=0;c[p>>2]=c[k>>2];c[n>>2]=1;s=c[p>>2]|0;s=tj(s,((s|0)<0)<<31>>31)|0;c[n>>2]=(c[n>>2]|0)+(s+(c[p>>2]|0));s=c[f>>2]|0;s=tj(s,((s|0)<0)<<31>>31)|0;c[n>>2]=(c[n>>2]|0)+(s+(c[f>>2]|0))}}b=c[n>>2]|0;s=(c[o>>2]|0)+40|0;d=s;b=dL(c[d>>2]|0,c[d+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[s>>2]=b;c[s+4>>2]=D;Wl((c[h>>2]|0)+20|0,(c[(c[h>>2]|0)+24>>2]|0)+(c[n>>2]|0)|0,m);if((c[m>>2]|0)!=0){s=c[m>>2]|0;i=g;return s|0}if((c[(c[h>>2]|0)+24>>2]|0)==0){c[(c[h>>2]|0)+24>>2]=1;a[c[(c[h>>2]|0)+20>>2]>>0]=0}c[m>>2]=cm((c[h>>2]|0)+20|0,(c[h>>2]|0)+8|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[f>>2]|0)|0;s=c[m>>2]|0;i=g;return s|0}function Sl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+48|0;m=k+44|0;l=k;n=k+40|0;h=k+36|0;s=k+32|0;o=k+20|0;j=k+24|0;g=k+16|0;r=k+12|0;p=k+8|0;q=k+28|0;c[m>>2]=a;a=l;c[a>>2]=b;c[a+4>>2]=d;c[n>>2]=e;c[h>>2]=f;c[o>>2]=0;c[j>>2]=0;c[s>>2]=(c[(c[n>>2]|0)+4>>2]|0)-1;while(1){if((c[s>>2]|0)<0){break}if((c[j>>2]|0)!=0){break}c[g>>2]=0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[n>>2]|0)+4>>2]|0)){break}c[g>>2]=c[(c[c[n>>2]>>2]|0)+(c[r>>2]<<2)>>2];if((c[c[g>>2]>>2]|0)==(c[s>>2]|0)){break}c[r>>2]=(c[r>>2]|0)+1}if((c[(c[g>>2]|0)+40>>2]|0)==0){c[j>>2]=vj(c[m>>2]|0,c[g>>2]|0)|0;if((c[j>>2]|0)==0){a=l;c[j>>2]=Xl(c[m>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[c[g>>2]>>2]|0)|0}c[c[h>>2]>>2]=0}else{c[p>>2]=c[(c[g>>2]|0)+64>>2];c[q>>2]=c[(c[g>>2]|0)+60>>2];a=l;c[j>>2]=Yl(c[m>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[c[g>>2]>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+1}c[s>>2]=(c[s>>2]|0)+ -1}if((c[j>>2]|0)!=0){b=c[o>>2]|0;a=c[h>>2]|0;c[a>>2]=b;a=c[j>>2]|0;i=k;return a|0}if((c[o>>2]|0)==(c[(c[n>>2]|0)+4>>2]|0)){b=c[o>>2]|0;a=c[h>>2]|0;c[a>>2]=b;a=c[j>>2]|0;i=k;return a|0}b=l;c[j>>2]=Zl(c[m>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=c[o>>2]|0;a=c[h>>2]|0;c[a>>2]=b;a=c[j>>2]|0;i=k;return a|0}function Tl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;j=g+16|0;h=g;k=g+8|0;l=g+12|0;c[j>>2]=a;a=h;c[a>>2]=b;c[a+4>>2]=d;c[k>>2]=e;c[l>>2]=f;Wl(c[j>>2]|0,(c[(c[j>>2]|0)+4>>2]|0)+20|0,c[l>>2]|0);if((c[c[l>>2]>>2]|0)!=0){i=g;return}l=h;l=uj((c[c[j>>2]>>2]|0)+(c[(c[j>>2]|0)+4>>2]|0)|0,c[l>>2]|0,c[l+4>>2]|0)|0;a=(c[j>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+l;a=c[k>>2]|0;a=uj((c[c[j>>2]>>2]|0)+(c[(c[j>>2]|0)+4>>2]|0)|0,a,((a|0)<0)<<31>>31)|0;l=(c[j>>2]|0)+4|0;c[l>>2]=(c[l>>2]|0)+a;i=g;return}function Ul(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=i;i=i+48|0;q=l+36|0;j=l+32|0;g=l+28|0;m=l+24|0;n=l+20|0;k=l+16|0;h=l+8|0;r=l+4|0;p=l;o=l+12|0;c[q>>2]=b;c[j>>2]=e;c[g>>2]=f;c[h>>2]=c[c[g>>2]>>2];c[n>>2]=15;while(1){if((c[n>>2]|0)<0){break}c[r>>2]=(c[j>>2]|0)+56+(c[n>>2]<<5);if((c[(c[r>>2]|0)+24>>2]|0)>0){break}oc(c[(c[r>>2]|0)+20>>2]|0);oc(c[(c[r>>2]|0)+8>>2]|0);c[n>>2]=(c[n>>2]|0)+ -1}if((c[n>>2]|0)<0){i=l;return}if((c[n>>2]|0)==0){c[p>>2]=(c[j>>2]|0)+108;Wl(c[p>>2]|0,11,h);if((c[h>>2]|0)==0){a[c[c[p>>2]>>2]>>0]=1;b=(c[j>>2]|0)+56|0;b=1+(uj((c[c[p>>2]>>2]|0)+1|0,c[b>>2]|0,c[b+4>>2]|0)|0)|0;c[(c[p>>2]|0)+4>>2]=b}c[n>>2]=1}c[k>>2]=(c[j>>2]|0)+56+(c[n>>2]<<5);c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[n>>2]|0)){break}c[o>>2]=(c[j>>2]|0)+56+(c[m>>2]<<5);if((c[(c[o>>2]|0)+24>>2]|0)>0){if((c[h>>2]|0)==0){b=c[o>>2]|0;c[h>>2]=pj(c[q>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[(c[o>>2]|0)+20>>2]|0,c[(c[o>>2]|0)+24>>2]|0)|0}}oc(c[(c[o>>2]|0)+20>>2]|0);oc(c[(c[o>>2]|0)+8>>2]|0);c[m>>2]=(c[m>>2]|0)+1}if((c[h>>2]|0)==0){p=c[q>>2]|0;o=(c[j>>2]|0)+8|0;o=dL(c[o>>2]|0,c[o+4>>2]|0,1,0)|0;n=(c[j>>2]|0)+24|0;m=(c[j>>2]|0)+56|0;f=(c[j>>2]|0)+32|0;if((d[(c[j>>2]|0)+48>>0]|0|0)==0){q=(c[j>>2]|0)+40|0;r=c[q>>2]|0;q=c[q+4>>2]|0}else{r=0;q=0}c[h>>2]=rj(p,o,D,c[(c[j>>2]|0)+16>>2]|0,c[n>>2]|0,c[n+4>>2]|0,c[m>>2]|0,c[m+4>>2]|0,c[f>>2]|0,c[f+4>>2]|0,r,q,c[(c[k>>2]|0)+20>>2]|0,c[(c[k>>2]|0)+24>>2]|0)|0}oc(c[(c[k>>2]|0)+20>>2]|0);oc(c[(c[k>>2]|0)+8>>2]|0);c[c[g>>2]>>2]=c[h>>2];i=l;return}function Vl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;h=d+12|0;g=d;f=d+4|0;e=d+8|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=0;c[e>>2]=$i(c[h>>2]|0,23,f,0)|0;if((c[e>>2]|0)!=0){h=c[e>>2]|0;i=d;return h|0}Oe(c[f>>2]|0,1,1)|0;Ke(c[f>>2]|0,2,c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+4>>2]|0,0)|0;le(c[f>>2]|0)|0;c[e>>2]=Cd(c[f>>2]|0)|0;h=c[e>>2]|0;i=d;return h|0}function Wl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;g=e+16|0;k=e;j=e+4|0;f=e+8|0;h=e+12|0;c[g>>2]=a;c[k>>2]=b;c[j>>2]=d;if((c[c[j>>2]>>2]|0)!=0){i=e;return}if((c[k>>2]|0)<=(c[(c[g>>2]|0)+8>>2]|0)){i=e;return}c[f>>2]=c[k>>2];c[h>>2]=qc(c[c[g>>2]>>2]|0,c[f>>2]|0)|0;if((c[h>>2]|0)!=0){c[(c[g>>2]|0)+8>>2]=c[f>>2];c[c[g>>2]>>2]=c[h>>2];i=e;return}else{c[c[j>>2]>>2]=7;i=e;return}}function Xl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+20|0;h=f;k=f+8|0;g=f+12|0;j=f+16|0;c[l>>2]=a;a=h;c[a>>2]=b;c[a+4>>2]=d;c[k>>2]=e;c[j>>2]=0;c[g>>2]=$i(c[l>>2]|0,30,j,0)|0;if((c[g>>2]|0)!=0){l=c[g>>2]|0;i=f;return l|0}l=h;Pe(c[j>>2]|0,1,c[l>>2]|0,c[l+4>>2]|0)|0;Oe(c[j>>2]|0,2,c[k>>2]|0)|0;le(c[j>>2]|0)|0;c[g>>2]=Cd(c[j>>2]|0)|0;l=c[g>>2]|0;i=f;return l|0}function Yl(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,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;l=i;i=i+112|0;n=l+104|0;r=l;s=l+100|0;v=l+96|0;w=l+92|0;k=l+88|0;u=l+76|0;j=l+64|0;x=l+16|0;q=l+24|0;o=l+8|0;z=l+40|0;y=l+32|0;A=l+60|0;B=l+44|0;t=l+48|0;h=l+52|0;p=l+56|0;m=l+36|0;c[n>>2]=a;a=r;c[a>>2]=b;c[a+4>>2]=d;c[s>>2]=e;c[v>>2]=f;c[w>>2]=g;c[k>>2]=0;c[u+0>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[j+0>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;a=x;c[a>>2]=0;c[a+4>>2]=0;a=q;c[a>>2]=0;c[a+4>>2]=0;a=o;c[a>>2]=0;c[a+4>>2]=0;c[z>>2]=0;c[k>>2]=$i(c[n>>2]|0,32,z,0)|0;if((c[k>>2]|0)==0){a=r;Pe(c[z>>2]|0,1,c[a>>2]|0,c[a+4>>2]|0)|0;Oe(c[z>>2]|0,2,c[s>>2]|0)|0;if(100==(le(c[z>>2]|0)|0)){c[A>>2]=ye(c[z>>2]|0,4)|0;c[B>>2]=Be(c[z>>2]|0,4)|0;b=Ee(c[z>>2]|0,1)|0;a=o;c[a>>2]=b;c[a+4>>2]=D;c[k>>2]=_l(c[A>>2]|0,c[B>>2]|0,u,c[v>>2]|0,c[w>>2]|0,x)|0}c[y>>2]=Cd(c[z>>2]|0)|0;if((c[k>>2]|0)==0){c[k>>2]=c[y>>2]}}while(1){if((c[k>>2]|0)!=0){break}a=x;if(!((c[a>>2]|0)!=0|(c[a+4>>2]|0)!=0)){break}c[t>>2]=0;c[h>>2]=0;d=x;b=c[d+4>>2]|0;a=q;c[a>>2]=c[d>>2];c[a+4>>2]=b;a=x;c[k>>2]=Sj(c[n>>2]|0,c[a>>2]|0,c[a+4>>2]|0,t,h,0)|0;if((c[k>>2]|0)==0){c[k>>2]=_l(c[t>>2]|0,c[h>>2]|0,j,c[v>>2]|0,c[w>>2]|0,x)|0}if((c[k>>2]|0)==0){a=q;c[k>>2]=pj(c[n>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[j>>2]|0,c[j+4>>2]|0)|0}oc(c[t>>2]|0)}if((c[k>>2]|0)==0){a=q;if((c[a>>2]|0)!=0|(c[a+4>>2]|0)!=0){c[p>>2]=0;c[k>>2]=$i(c[n>>2]|0,17,p,0)|0;if((c[k>>2]|0)==0){b=o;Pe(c[p>>2]|0,1,c[b>>2]|0,c[b+4>>2]|0)|0;b=c[p>>2]|0;a=q;a=$K(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;Pe(b,2,a,D)|0;le(c[p>>2]|0)|0;c[k>>2]=Cd(c[p>>2]|0)|0}}}if((c[k>>2]|0)!=0){a=c[u>>2]|0;oc(a);a=c[j>>2]|0;oc(a);a=c[k>>2]|0;i=l;return a|0}c[m>>2]=0;c[k>>2]=$i(c[n>>2]|0,33,m,0)|0;if((c[k>>2]|0)!=0){a=c[u>>2]|0;oc(a);a=c[j>>2]|0;oc(a);a=c[k>>2]|0;i=l;return a|0}a=q;Pe(c[m>>2]|0,1,c[a>>2]|0,c[a+4>>2]|0)|0;Ke(c[m>>2]|0,2,c[u>>2]|0,c[u+4>>2]|0,0)|0;a=r;Pe(c[m>>2]|0,3,c[a>>2]|0,c[a+4>>2]|0)|0;Oe(c[m>>2]|0,4,c[s>>2]|0)|0;le(c[m>>2]|0)|0;c[k>>2]=Cd(c[m>>2]|0)|0;a=c[u>>2]|0;oc(a);a=c[j>>2]|0;oc(a);a=c[k>>2]|0;i=l;return a|0}function Zl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+48|0;o=j+44|0;f=j;k=j+40|0;h=j+36|0;n=j+32|0;r=j+20|0;m=j+24|0;q=j+16|0;l=j+12|0;p=j+8|0;s=j+28|0;c[o>>2]=b;b=f;c[b>>2]=d;c[b+4>>2]=e;c[h>>2]=0;c[n>>2]=0;c[r>>2]=0;c[q>>2]=0;c[l>>2]=0;c[k>>2]=$i(c[o>>2]|0,35,q,0)|0;if((c[k>>2]|0)==0){b=f;Pe(c[q>>2]|0,1,c[b>>2]|0,c[b+4>>2]|0)|0;while(1){if(100!=(le(c[q>>2]|0)|0)){break}if((c[n>>2]|0)>=(c[r>>2]|0)){c[r>>2]=(c[r>>2]|0)+16;c[s>>2]=qc(c[h>>2]|0,c[r>>2]<<2)|0;if((c[s>>2]|0)==0){g=6;break}c[h>>2]=c[s>>2]}d=De(c[q>>2]|0,0)|0;b=c[n>>2]|0;c[n>>2]=b+1;c[(c[h>>2]|0)+(b<<2)>>2]=d}if((g|0)==6){c[k>>2]=7}c[p>>2]=Cd(c[q>>2]|0)|0;if((c[k>>2]|0)==0){c[k>>2]=c[p>>2]}}if((c[k>>2]|0)==0){c[k>>2]=$i(c[o>>2]|0,31,l,0)|0}if((c[k>>2]|0)==0){b=f;Pe(c[l>>2]|0,2,c[b>>2]|0,c[b+4>>2]|0)|0}a[(c[o>>2]|0)+232>>0]=1;c[m>>2]=0;while(1){if((c[k>>2]|0)!=0){g=21;break}if((c[m>>2]|0)>=(c[n>>2]|0)){g=21;break}if((c[(c[h>>2]|0)+(c[m>>2]<<2)>>2]|0)!=(c[m>>2]|0)){Oe(c[l>>2]|0,3,c[(c[h>>2]|0)+(c[m>>2]<<2)>>2]|0)|0;Oe(c[l>>2]|0,1,c[m>>2]|0)|0;le(c[l>>2]|0)|0;c[k>>2]=Cd(c[l>>2]|0)|0}c[m>>2]=(c[m>>2]|0)+1}if((g|0)==21){a[(c[o>>2]|0)+232>>0]=0;oc(c[h>>2]|0);i=j;return c[k>>2]|0}return 0}function _l(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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;t=i;i=i+112|0;l=t+96|0;q=t+92|0;w=t+88|0;p=t+84|0;u=t+80|0;v=t+76|0;r=t+72|0;n=t;o=t+52|0;m=t+48|0;j=t+64|0;s=t+68|0;c[q>>2]=b;c[w>>2]=d;c[p>>2]=e;c[u>>2]=f;c[v>>2]=g;c[r>>2]=h;c[o+0>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[m>>2]=0;c[j>>2]=(a[c[q>>2]>>0]|0)==0&1;Wl(c[p>>2]|0,c[w>>2]|0,m);if((c[m>>2]|0)!=0){c[l>>2]=c[m>>2];b=c[l>>2]|0;i=t;return b|0}c[(c[p>>2]|0)+4>>2]=0;c[m>>2]=$l(n,c[q>>2]|0,c[w>>2]|0)|0;while(1){if((c[m>>2]|0)!=0){break}if((c[n>>2]|0)==0){break}do{if((c[(c[p>>2]|0)+4>>2]|0)==0){c[s>>2]=am(c[n+24>>2]|0,c[n+28>>2]|0,c[u>>2]|0,c[v>>2]|0)|0;if((c[s>>2]|0)>=0){if((c[j>>2]|0)==0){if((c[s>>2]|0)==0){break}}d=n+16|0;bm(c[p>>2]|0,a[c[q>>2]>>0]|0,c[d>>2]|0,c[d+4>>2]|0);d=n+16|0;b=c[d+4>>2]|0;k=c[r>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=b;k=11}}else{k=11}}while(0);if((k|0)==11){k=0;c[m>>2]=cm(c[p>>2]|0,o,c[n+24>>2]|0,c[n+28>>2]|0,c[n+36>>2]|0,c[n+40>>2]|0)|0;if((c[m>>2]|0)!=0){break}}c[m>>2]=dm(n)|0}if((c[(c[p>>2]|0)+4>>2]|0)==0){e=n+16|0;bm(c[p>>2]|0,a[c[q>>2]>>0]|0,c[e>>2]|0,c[e+4>>2]|0);e=n+16|0;d=c[e+4>>2]|0;b=c[r>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=d}em(n);oc(c[o>>2]|0);c[l>>2]=c[m>>2];b=c[l>>2]|0;i=t;return b|0}function $l(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;g=i;i=i+16|0;f=g+8|0;h=g;j=g+4|0;c[f>>2]=b;c[h>>2]=d;c[j>>2]=e;d=(c[f>>2]|0)+0|0;e=d+48|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));c[c[f>>2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[j>>2];h=c[f>>2]|0;if((a[c[c[f>>2]>>2]>>0]|0)!=0){b=1+(Kj((c[h>>2]|0)+1|0,(c[f>>2]|0)+16|0)|0)|0;c[(c[f>>2]|0)+8>>2]=b;b=c[f>>2]|0;b=dm(b)|0;i=g;return b|0}else{c[h+8>>2]=1;b=c[f>>2]|0;b=dm(b)|0;i=g;return b|0}return 0}function am(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;m=f+20|0;h=f;l=f+4|0;j=f+8|0;k=f+12|0;g=f+16|0;c[m>>2]=a;c[h>>2]=b;c[l>>2]=d;c[j>>2]=e;c[k>>2]=(c[h>>2]|0)<(c[j>>2]|0)?c[h>>2]|0:c[j>>2]|0;c[g>>2]=XK(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0)|0;if((c[g>>2]|0)!=0){m=c[g>>2]|0;i=f;return m|0}c[g>>2]=(c[h>>2]|0)-(c[j>>2]|0);m=c[g>>2]|0;i=f;return m|0}function bm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+16|0;h=g+12|0;k=g+8|0;j=g;c[h>>2]=b;c[k>>2]=d;b=j;c[b>>2]=e;c[b+4>>2]=f;a[c[c[h>>2]>>2]>>0]=c[k>>2];b=j;f=c[h>>2]|0;if((c[b>>2]|0)!=0|(c[b+4>>2]|0)!=0){k=j;k=1+(uj((c[f>>2]|0)+1|0,c[k>>2]|0,c[k+4>>2]|0)|0)|0;c[(c[h>>2]|0)+4>>2]=k;i=g;return}else{c[f+4>>2]=1;i=g;return}}function cm(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+48|0;j=q+40|0;m=q+36|0;r=q+32|0;p=q+28|0;s=q+24|0;n=q+20|0;l=q+12|0;k=q+8|0;t=q+4|0;h=q;o=q+16|0;c[m>>2]=a;c[r>>2]=b;c[p>>2]=d;c[s>>2]=e;c[n>>2]=f;c[l>>2]=g;c[k>>2]=0;c[t>>2]=(c[(c[r>>2]|0)+4>>2]|0)==0&1;Wl(c[r>>2]|0,c[s>>2]|0,k);if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];a=c[j>>2]|0;i=q;return a|0}c[h>>2]=wj(c[c[r>>2]>>2]|0,c[(c[r>>2]|0)+4>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;c[o>>2]=(c[s>>2]|0)-(c[h>>2]|0);fL(c[c[r>>2]>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;c[(c[r>>2]|0)+4>>2]=c[s>>2];if((c[t>>2]|0)==0){b=c[h>>2]|0;b=uj((c[c[m>>2]>>2]|0)+(c[(c[m>>2]|0)+4>>2]|0)|0,b,((b|0)<0)<<31>>31)|0;a=(c[m>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+b}b=c[o>>2]|0;b=uj((c[c[m>>2]>>2]|0)+(c[(c[m>>2]|0)+4>>2]|0)|0,b,((b|0)<0)<<31>>31)|0;a=(c[m>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+b;fL((c[c[m>>2]>>2]|0)+(c[(c[m>>2]|0)+4>>2]|0)|0,(c[p>>2]|0)+(c[h>>2]|0)|0,c[o>>2]|0)|0;a=(c[m>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+(c[o>>2]|0);if((c[n>>2]|0)!=0){b=c[l>>2]|0;b=uj((c[c[m>>2]>>2]|0)+(c[(c[m>>2]|0)+4>>2]|0)|0,b,((b|0)<0)<<31>>31)|0;a=(c[m>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+b;fL((c[c[m>>2]>>2]|0)+(c[(c[m>>2]|0)+4>>2]|0)|0,c[n>>2]|0,c[l>>2]|0)|0;a=(c[m>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+(c[l>>2]|0)}c[j>>2]=0;a=c[j>>2]|0;i=q;return a|0}function dm(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;k=f;h=f+4|0;j=f+8|0;e=f+12|0;c[g>>2]=b;c[k>>2]=(c[(c[g>>2]|0)+28>>2]|0)==0&1;c[h>>2]=0;c[j>>2]=0;c[e>>2]=0;b=(c[g>>2]|0)+16|0;if((c[b>>2]|0)!=0|(c[b+4>>2]|0)!=0){if((c[k>>2]|0)==0){b=(c[g>>2]|0)+16|0;l=b;l=dL(c[l>>2]|0,c[l+4>>2]|0,1,0)|0;c[b>>2]=l;c[b+4>>2]=D}}if((c[(c[g>>2]|0)+8>>2]|0)>=(c[(c[g>>2]|0)+4>>2]|0)){c[c[g>>2]>>2]=0;l=c[e>>2]|0;i=f;return l|0}if((c[k>>2]|0)==0){k=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0)|0;if((a[(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0)>>0]&128|0)!=0){k=Lj(k,h)|0}else{c[h>>2]=d[k>>0]|0;k=1}l=(c[g>>2]|0)+8|0;c[l>>2]=(c[l>>2]|0)+k}k=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0)|0;if((a[(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0)>>0]&128|0)!=0){k=Lj(k,j)|0}else{c[j>>2]=d[k>>0]|0;k=1}l=(c[g>>2]|0)+8|0;c[l>>2]=(c[l>>2]|0)+k;Wl((c[g>>2]|0)+24|0,(c[h>>2]|0)+(c[j>>2]|0)|0,e);if((c[e>>2]|0)!=0){l=c[e>>2]|0;i=f;return l|0}fL((c[(c[g>>2]|0)+24>>2]|0)+(c[h>>2]|0)|0,(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0)|0,c[j>>2]|0)|0;c[(c[g>>2]|0)+28>>2]=(c[h>>2]|0)+(c[j>>2]|0);l=(c[g>>2]|0)+8|0;c[l>>2]=(c[l>>2]|0)+(c[j>>2]|0);l=(c[g>>2]|0)+16|0;if(!((c[l>>2]|0)==0&(c[l+4>>2]|0)==0)){l=c[e>>2]|0;i=f;return l|0}h=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0)|0;if((a[(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0)>>0]&128|0)!=0){h=Lj(h,(c[g>>2]|0)+40|0)|0}else{c[(c[g>>2]|0)+40>>2]=d[h>>0]|0;h=1}l=(c[g>>2]|0)+8|0;c[l>>2]=(c[l>>2]|0)+h;c[(c[g>>2]|0)+36>>2]=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0);l=(c[g>>2]|0)+8|0;c[l>>2]=(c[l>>2]|0)+(c[(c[g>>2]|0)+40>>2]|0);l=c[e>>2]|0;i=f;return l|0}function em(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;oc(c[(c[d>>2]|0)+24>>2]|0);i=b;return}function fm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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;j=i;i=i+64|0;r=j+60|0;s=j+56|0;w=j+52|0;o=j+48|0;g=j+44|0;u=j;t=j+40|0;k=j+8|0;q=j+28|0;l=j+20|0;p=j+16|0;m=j+24|0;v=j+32|0;n=j+36|0;c[s>>2]=b;c[w>>2]=d;c[o>>2]=e;c[g>>2]=f;e=(c[w>>2]|0)+56|0;d=c[e+4>>2]|0;b=u;c[b>>2]=c[e>>2];c[b+4>>2]=d;c[t>>2]=1;while(1){if((c[t>>2]|0)>=16){h=17;break}b=k;c[b>>2]=0;c[b+4>>2]=0;c[q>>2]=(c[w>>2]|0)+56+(c[t>>2]<<5);c[l>>2]=0;c[p>>2]=wj(c[(c[q>>2]|0)+8>>2]|0,c[(c[q>>2]|0)+12>>2]|0,c[o>>2]|0,c[g>>2]|0)|0;c[m>>2]=(c[g>>2]|0)-(c[p>>2]|0);b=c[p>>2]|0;c[v>>2]=tj(b,((b|0)<0)<<31>>31)|0;b=c[m>>2]|0;b=tj(b,((b|0)<0)<<31>>31)|0;c[v>>2]=(c[v>>2]|0)+(b+(c[m>>2]|0));if((c[(c[q>>2]|0)+12>>2]|0)==0){h=5}else{if(((c[(c[q>>2]|0)+24>>2]|0)+(c[v>>2]|0)|0)<=(c[(c[s>>2]|0)+224>>2]|0)){h=5}else{d=c[q>>2]|0;c[l>>2]=pj(c[s>>2]|0,c[d>>2]|0,c[d+4>>2]|0,c[(c[q>>2]|0)+20>>2]|0,c[(c[q>>2]|0)+24>>2]|0)|0;a[c[(c[q>>2]|0)+20>>2]>>0]=c[t>>2];d=(c[(c[q>>2]|0)+20>>2]|0)+1|0;e=u;e=dL(c[e>>2]|0,c[e+4>>2]|0,1,0)|0;e=1+(uj(d,e,D)|0)|0;c[(c[q>>2]|0)+24>>2]=e;e=c[q>>2]|0;d=c[e+4>>2]|0;b=k;c[b>>2]=c[e>>2];c[b+4>>2]=d;b=c[q>>2]|0;d=b;d=dL(c[d>>2]|0,c[d+4>>2]|0,1,0)|0;c[b>>2]=d;c[b+4>>2]=D;c[(c[q>>2]|0)+12>>2]=0}}if((h|0)==5){h=0;c[n>>2]=(c[q>>2]|0)+20;if((c[(c[n>>2]|0)+4>>2]|0)==0){Wl(c[n>>2]|0,c[(c[s>>2]|0)+224>>2]|0,l);if((c[l>>2]|0)==0){a[c[c[n>>2]>>2]>>0]=c[t>>2];b=u;b=1+(uj((c[c[n>>2]>>2]|0)+1|0,c[b>>2]|0,c[b+4>>2]|0)|0)|0;c[(c[n>>2]|0)+4>>2]=b}}Wl(c[n>>2]|0,(c[(c[n>>2]|0)+4>>2]|0)+(c[v>>2]|0)|0,l);Wl((c[q>>2]|0)+8|0,c[g>>2]|0,l);if((c[l>>2]|0)==0){if((c[(c[q>>2]|0)+12>>2]|0)!=0){d=c[p>>2]|0;d=uj((c[c[n>>2]>>2]|0)+(c[(c[n>>2]|0)+4>>2]|0)|0,d,((d|0)<0)<<31>>31)|0;b=(c[n>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+d}d=c[m>>2]|0;d=uj((c[c[n>>2]>>2]|0)+(c[(c[n>>2]|0)+4>>2]|0)|0,d,((d|0)<0)<<31>>31)|0;b=(c[n>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+d;fL((c[c[n>>2]>>2]|0)+(c[(c[n>>2]|0)+4>>2]|0)|0,(c[o>>2]|0)+(c[p>>2]|0)|0,c[m>>2]|0)|0;b=(c[n>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+(c[m>>2]|0);fL(c[(c[q>>2]|0)+8>>2]|0,c[o>>2]|0,c[g>>2]|0)|0;c[(c[q>>2]|0)+12>>2]=c[g>>2]}}if((c[l>>2]|0)!=0){h=15;break}b=k;if((c[b>>2]|0)==0&(c[b+4>>2]|0)==0){h=15;break}e=k;d=c[e+4>>2]|0;b=u;c[b>>2]=c[e>>2];c[b+4>>2]=d;c[t>>2]=(c[t>>2]|0)+1}if((h|0)==15){c[r>>2]=c[l>>2];b=c[r>>2]|0;i=j;return b|0}else if((h|0)==17){c[r>>2]=0;b=c[r>>2]|0;i=j;return b|0}return 0}function gm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;m=f+24|0;l=f;h=f+8|0;j=f+12|0;k=f+16|0;g=f+20|0;c[m>>2]=a;a=l;c[a>>2]=b;c[a+4>>2]=d;c[h>>2]=e;c[j>>2]=0;c[k>>2]=0;c[g>>2]=$i(c[m>>2]|0,34,k,0)|0;if((c[g>>2]|0)!=0){a=c[j>>2]|0;m=c[h>>2]|0;c[m>>2]=a;m=c[g>>2]|0;i=f;return m|0}m=l;Pe(c[k>>2]|0,1,c[m>>2]|0,c[m+4>>2]|0)|0;if(100==(le(c[k>>2]|0)|0)){c[j>>2]=1}c[g>>2]=Cd(c[k>>2]|0)|0;a=c[j>>2]|0;m=c[h>>2]|0;c[m>>2]=a;m=c[g>>2]|0;i=f;return m|0}function hm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;l=i;i=i+64|0;u=l+48|0;r=l+44|0;n=l+40|0;o=l+36|0;p=l+32|0;j=l+28|0;q=l+24|0;s=l+16|0;k=l+12|0;g=l+8|0;h=l+4|0;m=l;t=l+20|0;c[u>>2]=b;c[r>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=c[u>>2];c[j>>2]=0;c[q>>2]=0;c[s>>2]=0;c[k>>2]=0;c[g>>2]=0;c[h>>2]=0;if((c[r>>2]|0)>1){if((Sd(c[c[n>>2]>>2]|0)|0)==5){if((Sd(c[(c[n>>2]|0)+((c[(c[p>>2]|0)+24>>2]|0)+2<<2)>>2]|0)|0)!=5){c[j>>2]=im(c[p>>2]|0,c[(c[n>>2]|0)+((c[(c[p>>2]|0)+24>>2]|0)+2<<2)>>2]|0)|0;u=c[k>>2]|0;oc(u);u=c[p>>2]|0;jk(u);u=c[j>>2]|0;i=l;return u|0}}}if((c[r>>2]|0)>1){if((Od(c[(c[n>>2]|0)+(4+(c[(c[p>>2]|0)+24>>2]|0)<<2)>>2]|0)|0)<0){c[j>>2]=19;u=c[k>>2]|0;oc(u);u=c[p>>2]|0;jk(u);u=c[j>>2]|0;i=l;return u|0}}c[k>>2]=mc((c[(c[p>>2]|0)+24>>2]|0)+1<<2<<1)|0;if((c[k>>2]|0)==0){c[j>>2]=7;u=c[k>>2]|0;oc(u);u=c[p>>2]|0;jk(u);u=c[j>>2]|0;i=l;return u|0}c[s>>2]=(c[k>>2]|0)+((c[(c[p>>2]|0)+24>>2]|0)+1<<2);aL(c[k>>2]|0,0,(c[(c[p>>2]|0)+24>>2]|0)+1<<2<<1|0)|0;c[j>>2]=jm(c[p>>2]|0)|0;if((c[j>>2]|0)!=0){u=c[k>>2]|0;oc(u);u=c[p>>2]|0;jk(u);u=c[j>>2]|0;i=l;return u|0}do{if((c[r>>2]|0)>1){if((c[(c[p>>2]|0)+40>>2]|0)==0){c[m>>2]=c[(c[n>>2]|0)+(3+(c[(c[p>>2]|0)+24>>2]|0)<<2)>>2];if((Sd(c[m>>2]|0)|0)==5){c[m>>2]=c[(c[n>>2]|0)+4>>2]}if((Sd(c[m>>2]|0)|0)!=5){if((Sd(c[c[n>>2]>>2]|0)|0)!=5){d=Qd(c[c[n>>2]>>2]|0)|0;u=D;b=Qd(c[m>>2]|0)|0;if(!((d|0)!=(b|0)|(u|0)!=(D|0))){break}}u=(Nf(c[(c[p>>2]|0)+12>>2]|0)|0)==5;f=c[p>>2]|0;if(u){c[j>>2]=km(f,c[m>>2]|0,g,c[k>>2]|0)|0;break}else{c[j>>2]=lm(f,c[n>>2]|0,c[o>>2]|0)|0;c[h>>2]=1;break}}}}}while(0);if((c[j>>2]|0)!=0){u=c[k>>2]|0;oc(u);u=c[p>>2]|0;jk(u);u=c[j>>2]|0;i=l;return u|0}if((Sd(c[c[n>>2]>>2]|0)|0)!=5){c[j>>2]=km(c[p>>2]|0,c[c[n>>2]>>2]|0,g,c[k>>2]|0)|0;c[q>>2]=1}if((c[r>>2]|0)>1){if((c[j>>2]|0)==0){c[t>>2]=Od(c[(c[n>>2]|0)+(4+(c[(c[p>>2]|0)+24>>2]|0)<<2)>>2]|0)|0;if((c[h>>2]|0)==0){c[j>>2]=lm(c[p>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;if((c[j>>2]|0)==19){if((c[(c[p>>2]|0)+40>>2]|0)==0){c[j>>2]=267}}}do{if((c[j>>2]|0)==0){if((c[q>>2]|0)!=0){b=c[o>>2]|0;u=(c[p>>2]|0)+264|0;if(!((c[b>>2]|0)!=(c[u>>2]|0)?1:(c[b+4>>2]|0)!=(c[u+4>>2]|0))){break}}u=c[o>>2]|0;c[j>>2]=mm(c[p>>2]|0,c[t>>2]|0,c[u>>2]|0,c[u+4>>2]|0)|0}}while(0);if((c[j>>2]|0)==0){c[j>>2]=nm(c[p>>2]|0,c[t>>2]|0,c[n>>2]|0,c[s>>2]|0)|0}if((a[(c[p>>2]|0)+230>>0]|0)!=0){om(j,c[p>>2]|0,c[s>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}}if((a[(c[p>>2]|0)+228>>0]|0)==0){u=c[k>>2]|0;oc(u);u=c[p>>2]|0;jk(u);u=c[j>>2]|0;i=l;return u|0}pm(j,c[p>>2]|0,c[s>>2]|0,c[k>>2]|0,c[g>>2]|0);u=c[k>>2]|0;oc(u);u=c[p>>2]|0;jk(u);u=c[j>>2]|0;i=l;return u|0}function im(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;h=e;l=e+4|0;g=e+8|0;j=e+12|0;k=e+16|0;c[h>>2]=a;c[l>>2]=b;c[j>>2]=Jd(c[l>>2]|0)|0;c[k>>2]=Kd(c[l>>2]|0)|0;if((c[j>>2]|0)==0){c[f>>2]=7;l=c[f>>2]|0;i=e;return l|0}if((c[k>>2]|0)==8){if(0==(Tb(c[j>>2]|0,3736,8)|0)){c[g>>2]=vl(c[h>>2]|0,0)|0}else{d=6}}else{d=6}do{if((d|0)==6){if((c[k>>2]|0)==7){if(0==(Tb(c[j>>2]|0,7320,7)|0)){c[g>>2]=zm(c[h>>2]|0)|0;break}}if((c[k>>2]|0)==15){if(0==(Tb(c[j>>2]|0,7328,15)|0)){c[g>>2]=Am(c[h>>2]|0)|0;break}}if((c[k>>2]|0)>6){if(0==(Tb(c[j>>2]|0,7344,6)|0)){c[g>>2]=Bm(c[h>>2]|0,(c[j>>2]|0)+6|0)|0;break}}if((c[k>>2]|0)>10){if(0==(Tb(c[j>>2]|0,7352,10)|0)){c[g>>2]=Cm(c[h>>2]|0,(c[j>>2]|0)+10|0)|0;break}}c[g>>2]=1}}while(0);c[f>>2]=c[g>>2];l=c[f>>2]|0;i=e;return l|0}function jm(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b;e=b+4|0;c[f>>2]=a;c[d>>2]=0;if((c[(c[f>>2]|0)+260>>2]|0)==0){c[d>>2]=$i(c[f>>2]|0,16,e,0)|0;if((c[d>>2]|0)==0){Qe(c[e>>2]|0,1)|0;le(c[e>>2]|0)|0;c[d>>2]=Cd(c[e>>2]|0)|0}}i=b;return c[d>>2]|0}function km(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;j=l+24|0;n=l;k=l+4|0;g=l+8|0;h=l+12|0;o=l+16|0;m=l+20|0;c[j>>2]=b;c[n>>2]=d;c[k>>2]=e;c[g>>2]=f;c[h>>2]=0;c[o>>2]=0;um(h,c[j>>2]|0,c[n>>2]|0,c[g>>2]|0,o);if((c[o>>2]|0)==0){o=c[h>>2]|0;i=l;return o|0}if((c[h>>2]|0)!=0){o=c[h>>2]|0;i=l;return o|0}c[m>>2]=0;c[h>>2]=vm(c[j>>2]|0,c[n>>2]|0,m)|0;if((c[h>>2]|0)!=0){o=c[h>>2]|0;i=l;return o|0}if((c[m>>2]|0)!=0){c[h>>2]=wm(c[j>>2]|0,1)|0;c[c[k>>2]>>2]=0;aL(c[g>>2]|0,0,(c[(c[j>>2]|0)+24>>2]|0)+1<<2<<1|0)|0;o=c[h>>2]|0;i=l;return o|0}c[c[k>>2]>>2]=(c[c[k>>2]>>2]|0)-1;if((c[(c[j>>2]|0)+40>>2]|0)==0){xm(h,c[j>>2]|0,0,n)}if((a[(c[j>>2]|0)+230>>0]|0)==0){o=c[h>>2]|0;i=l;return o|0}xm(h,c[j>>2]|0,19,n);o=c[h>>2]|0;i=l;return o|0}function lm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;k=f+24|0;l=f;j=f+4|0;h=f+8|0;e=f+12|0;m=f+16|0;g=f+20|0;c[l>>2]=a;c[j>>2]=b;c[h>>2]=d;d=c[l>>2]|0;if((c[(c[l>>2]|0)+40>>2]|0)!=0){c[g>>2]=c[(c[j>>2]|0)+((c[d+24>>2]|0)+3<<2)>>2];if((Sd(c[g>>2]|0)|0)==5){c[g>>2]=c[(c[j>>2]|0)+4>>2]}if((Sd(c[g>>2]|0)|0)!=1){c[k>>2]=19;a=c[k>>2]|0;i=f;return a|0}else{b=Qd(c[g>>2]|0)|0;a=c[h>>2]|0;c[a>>2]=b;c[a+4>>2]=D;c[k>>2]=0;a=c[k>>2]|0;i=f;return a|0}}c[e>>2]=$i(d,18,m,(c[j>>2]|0)+4|0)|0;if((c[e>>2]|0)==0){if((c[(c[l>>2]|0)+44>>2]|0)!=0){b=c[m>>2]|0;a=(c[(c[l>>2]|0)+24>>2]|0)+2|0;c[e>>2]=Oe(b,a,Od(c[(c[j>>2]|0)+((c[(c[l>>2]|0)+24>>2]|0)+4<<2)>>2]|0)|0)|0}}if((c[e>>2]|0)!=0){c[k>>2]=c[e>>2];a=c[k>>2]|0;i=f;return a|0}if(5!=(Sd(c[(c[j>>2]|0)+(3+(c[(c[l>>2]|0)+24>>2]|0)<<2)>>2]|0)|0)){if(5==(Sd(c[c[j>>2]>>2]|0)|0)){if(5!=(Sd(c[(c[j>>2]|0)+4>>2]|0)|0)){c[k>>2]=1;a=c[k>>2]|0;i=f;return a|0}}c[e>>2]=Se(c[m>>2]|0,1,c[(c[j>>2]|0)+(3+(c[(c[l>>2]|0)+24>>2]|0)<<2)>>2]|0)|0;if((c[e>>2]|0)!=0){c[k>>2]=c[e>>2];a=c[k>>2]|0;i=f;return a|0}}le(c[m>>2]|0)|0;c[e>>2]=Cd(c[m>>2]|0)|0;b=eg(c[(c[l>>2]|0)+12>>2]|0)|0;a=c[h>>2]|0;c[a>>2]=b;c[a+4>>2]=D;c[k>>2]=c[e>>2];a=c[k>>2]|0;i=f;return a|0}function mm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;h=j+20|0;f=j+12|0;m=j+8|0;k=j;l=j+16|0;c[f>>2]=a;c[m>>2]=b;b=k;c[b>>2]=d;c[b+4>>2]=e;b=k;e=c[b+4>>2]|0;a=(c[f>>2]|0)+264|0;d=c[a+4>>2]|0;if((e|0)<(d|0)|((e|0)==(d|0)?(c[b>>2]|0)>>>0<=(c[a>>2]|0)>>>0:0)){g=4}else{if((c[(c[f>>2]|0)+272>>2]|0)!=(c[m>>2]|0)){g=4}else{if((c[(c[f>>2]|0)+260>>2]|0)>(c[(c[f>>2]|0)+256>>2]|0)){g=4}}}if((g|0)==4){c[l>>2]=Yi(c[f>>2]|0)|0;if((c[l>>2]|0)!=0){c[h>>2]=c[l>>2];a=c[h>>2]|0;i=j;return a|0}}d=k;b=c[d+4>>2]|0;a=(c[f>>2]|0)+264|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;c[(c[f>>2]|0)+272>>2]=c[m>>2];c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}function nm(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+48|0;j=g+32|0;k=g+28|0;o=g+24|0;l=g+20|0;q=g+16|0;m=g+8|0;p=g+4|0;n=g;h=g+12|0;c[k>>2]=a;c[o>>2]=b;c[l>>2]=e;c[q>>2]=f;c[m>>2]=2;while(1){if((c[m>>2]|0)>=((c[(c[k>>2]|0)+24>>2]|0)+2|0)){k=8;break}c[p>>2]=(c[m>>2]|0)-2;if((d[(c[(c[k>>2]|0)+32>>2]|0)+(c[p>>2]|0)>>0]|0|0)==0){c[n>>2]=Jd(c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)|0;c[h>>2]=sm(c[k>>2]|0,c[o>>2]|0,c[n>>2]|0,c[p>>2]|0,(c[q>>2]|0)+(c[p>>2]<<2)|0)|0;if((c[h>>2]|0)!=0){k=5;break}b=Kd(c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)|0;a=(c[q>>2]|0)+(c[(c[k>>2]|0)+24>>2]<<2)|0;c[a>>2]=(c[a>>2]|0)+b}c[m>>2]=(c[m>>2]|0)+1}if((k|0)==5){c[j>>2]=c[h>>2];a=c[j>>2]|0;i=g;return a|0}else if((k|0)==8){c[j>>2]=0;a=c[j>>2]|0;i=g;return a|0}return 0}function om(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;f=j+24|0;g=j;h=j+4|0;e=j+8|0;k=j+12|0;l=j+16|0;m=j+20|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[c[f>>2]>>2]|0)!=0){i=j;return}c[e>>2]=mc((c[(c[g>>2]|0)+24>>2]|0)*10|0)|0;if((c[e>>2]|0)==0){c[c[f>>2]>>2]=7;i=j;return}rm(c[(c[g>>2]|0)+24>>2]|0,c[h>>2]|0,c[e>>2]|0,k);c[m>>2]=$i(c[g>>2]|0,20,l,0)|0;if((c[m>>2]|0)!=0){oc(c[e>>2]|0);c[c[f>>2]>>2]=c[m>>2];i=j;return}else{a=(c[g>>2]|0)+264|0;Pe(c[l>>2]|0,1,c[a>>2]|0,c[a+4>>2]|0)|0;Ke(c[l>>2]|0,2,c[e>>2]|0,c[k>>2]|0,13)|0;le(c[l>>2]|0)|0;a=Cd(c[l>>2]|0)|0;c[c[f>>2]>>2]=a;i=j;return}}function pm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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;r=i;i=i+64|0;j=r+48|0;p=r+44|0;t=r+40|0;u=r+36|0;v=r+32|0;n=r+28|0;o=r+24|0;k=r+16|0;q=r+12|0;g=r+8|0;l=r+4|0;m=r;s=r+20|0;c[j>>2]=a;c[p>>2]=b;c[t>>2]=d;c[u>>2]=e;c[v>>2]=f;c[m>>2]=(c[(c[p>>2]|0)+24>>2]|0)+2;if((c[c[j>>2]>>2]|0)!=0){i=r;return}c[k>>2]=mc((c[m>>2]|0)*14|0)|0;if((c[k>>2]|0)==0){c[c[j>>2]>>2]=7;i=r;return}c[n>>2]=(c[k>>2]|0)+(c[m>>2]<<2);c[l>>2]=$i(c[p>>2]|0,22,q,0)|0;if((c[l>>2]|0)!=0){oc(c[k>>2]|0);c[c[j>>2]>>2]=c[l>>2];i=r;return}Oe(c[q>>2]|0,1,0)|0;if((le(c[q>>2]|0)|0)==100){d=c[m>>2]|0;b=c[k>>2]|0;a=ye(c[q>>2]|0,0)|0;qm(d,b,a,Be(c[q>>2]|0,0)|0)}else{aL(c[k>>2]|0,0,c[m>>2]<<2|0)|0}c[l>>2]=Cd(c[q>>2]|0)|0;if((c[l>>2]|0)!=0){oc(c[k>>2]|0);c[c[j>>2]>>2]=c[l>>2];i=r;return}if((c[v>>2]|0)<0){if((c[c[k>>2]>>2]|0)>>>0<(0-(c[v>>2]|0)|0)>>>0){c[c[k>>2]>>2]=0}else{h=14}}else{h=14}if((h|0)==14){a=c[k>>2]|0;c[a>>2]=(c[a>>2]|0)+(c[v>>2]|0)}c[g>>2]=0;while(1){if((c[g>>2]|0)>=((c[(c[p>>2]|0)+24>>2]|0)+1|0)){break}c[s>>2]=c[(c[k>>2]|0)+((c[g>>2]|0)+1<<2)>>2];if(((c[s>>2]|0)+(c[(c[t>>2]|0)+(c[g>>2]<<2)>>2]|0)|0)>>>0<(c[(c[u>>2]|0)+(c[g>>2]<<2)>>2]|0)>>>0){c[s>>2]=0}else{c[s>>2]=(c[s>>2]|0)+(c[(c[t>>2]|0)+(c[g>>2]<<2)>>2]|0)-(c[(c[u>>2]|0)+(c[g>>2]<<2)>>2]|0)}c[(c[k>>2]|0)+((c[g>>2]|0)+1<<2)>>2]=c[s>>2];c[g>>2]=(c[g>>2]|0)+1}rm(c[m>>2]|0,c[k>>2]|0,c[n>>2]|0,o);c[l>>2]=$i(c[p>>2]|0,23,q,0)|0;if((c[l>>2]|0)!=0){oc(c[k>>2]|0);c[c[j>>2]>>2]=c[l>>2];i=r;return}else{Oe(c[q>>2]|0,1,0)|0;Ke(c[q>>2]|0,2,c[n>>2]|0,c[o>>2]|0,0)|0;le(c[q>>2]|0)|0;a=Cd(c[q>>2]|0)|0;c[c[j>>2]>>2]=a;oc(c[k>>2]|0);i=r;return}}function qm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;h=k+28|0;m=k+24|0;j=k+8|0;g=k+16|0;f=k+20|0;l=k;c[h>>2]=a;c[m>>2]=b;c[j>>2]=d;c[k+12>>2]=e;c[f>>2]=0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[h>>2]|0)){break}a=Kj((c[j>>2]|0)+(c[f>>2]|0)|0,l)|0;c[f>>2]=(c[f>>2]|0)+a;c[(c[m>>2]|0)+(c[g>>2]<<2)>>2]=c[l>>2];c[g>>2]=(c[g>>2]|0)+1}i=k;return}function rm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;k=g+20|0;m=g;f=g+4|0;l=g+8|0;j=g+12|0;h=g+16|0;c[k>>2]=a;c[m>>2]=b;c[f>>2]=d;c[l>>2]=e;c[h>>2]=0;c[j>>2]=0;while(1){e=c[h>>2]|0;if((c[j>>2]|0)>=(c[k>>2]|0)){break}a=uj((c[f>>2]|0)+e|0,c[(c[m>>2]|0)+(c[j>>2]<<2)>>2]|0,0)|0;c[h>>2]=(c[h>>2]|0)+a;c[j>>2]=(c[j>>2]|0)+1}c[c[l>>2]>>2]=e;i=g;return}function sm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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;u=i;i=i+80|0;j=u+72|0;p=u+68|0;A=u+64|0;B=u+60|0;q=u+56|0;k=u+52|0;l=u+48|0;w=u+44|0;x=u+40|0;r=u+36|0;o=u+12|0;s=u;t=u+4|0;z=u+8|0;m=u+16|0;n=u+20|0;v=u+24|0;g=u+28|0;y=u+32|0;c[p>>2]=a;c[A>>2]=b;c[B>>2]=d;c[q>>2]=e;c[k>>2]=f;c[w>>2]=0;c[x>>2]=0;c[r>>2]=0;c[o>>2]=0;c[t>>2]=0;c[z>>2]=c[(c[p>>2]|0)+36>>2];c[m>>2]=c[c[z>>2]>>2];if((c[B>>2]|0)==0){c[c[k>>2]>>2]=0;c[j>>2]=0;a=c[j>>2]|0;i=u;return a|0}c[l>>2]=jl(c[z>>2]|0,c[A>>2]|0,c[B>>2]|0,-1,n)|0;if((c[l>>2]|0)!=0){c[j>>2]=c[l>>2];a=c[j>>2]|0;i=u;return a|0}c[v>>2]=c[(c[m>>2]|0)+20>>2];a:while(1){if(0!=(c[l>>2]|0)){break}a=tb[c[v>>2]&15](c[n>>2]|0,s,t,w,x,r)|0;c[l>>2]=a;if(0!=(a|0)){break}if((c[r>>2]|0)>=(c[o>>2]|0)){c[o>>2]=(c[r>>2]|0)+1}if((c[r>>2]|0)<0){h=13;break}if((c[s>>2]|0)==0){h=13;break}if((c[t>>2]|0)<=0){h=13;break}c[l>>2]=tm(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,(c[(c[p>>2]|0)+252>>2]|0)+4|0,c[s>>2]|0,c[t>>2]|0)|0;c[g>>2]=1;while(1){if((c[l>>2]|0)!=0){continue a}if((c[g>>2]|0)>=(c[(c[p>>2]|0)+248>>2]|0)){continue a}c[y>>2]=(c[(c[p>>2]|0)+252>>2]|0)+((c[g>>2]|0)*24|0);if((c[t>>2]|0)>=(c[c[y>>2]>>2]|0)){c[l>>2]=tm(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,(c[y>>2]|0)+4|0,c[s>>2]|0,c[c[y>>2]>>2]|0)|0}c[g>>2]=(c[g>>2]|0)+1}}if((h|0)==13){c[l>>2]=1}ub[c[(c[m>>2]|0)+16>>2]&63](c[n>>2]|0)|0;a=c[k>>2]|0;c[a>>2]=(c[a>>2]|0)+(c[o>>2]|0);c[j>>2]=(c[l>>2]|0)==101?0:c[l>>2]|0;a=c[j>>2]|0;i=u;return a|0}function tm(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;h=j+28|0;p=j;q=j+4|0;l=j+8|0;m=j+12|0;n=j+16|0;k=j+20|0;o=j+24|0;c[h>>2]=a;c[p>>2]=b;c[q>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;c[k>>2]=pi(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if((c[k>>2]|0)!=0){a=(c[h>>2]|0)+260|0;c[a>>2]=(c[a>>2]|0)-((c[c[k>>2]>>2]|0)+(c[n>>2]|0)+20)}d=(c[h>>2]|0)+264|0;b=c[p>>2]|0;a=c[q>>2]|0;if((kl(k,c[d>>2]|0,c[d+4>>2]|0,b,((b|0)<0)<<31>>31,a,((a|0)<0)<<31>>31,o)|0)!=0){a=c[k>>2]|0;if((a|0)==(Yh(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[k>>2]|0)|0)){oc(c[k>>2]|0);c[o>>2]=7}}if((c[o>>2]|0)!=0){a=c[o>>2]|0;i=j;return a|0}a=(c[h>>2]|0)+260|0;c[a>>2]=(c[a>>2]|0)+((c[c[k>>2]>>2]|0)+(c[n>>2]|0)+20);a=c[o>>2]|0;i=j;return a|0}function um(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+48|0;k=q+40|0;p=q+36|0;t=q+32|0;r=q+28|0;m=q+24|0;n=q+20|0;l=q+12|0;h=q+8|0;j=q+4|0;s=q;o=q+16|0;c[k>>2]=a;c[p>>2]=b;c[t>>2]=e;c[r>>2]=f;c[m>>2]=g;if((c[c[k>>2]>>2]|0)!=0){i=q;return}c[n>>2]=$i(c[p>>2]|0,7,l,t)|0;g=c[l>>2]|0;if((c[n>>2]|0)==0){do{if(100==(le(g)|0)){c[j>>2]=ym(c[p>>2]|0,c[l>>2]|0)|0;e=c[p>>2]|0;b=c[j>>2]|0;a=Ee(c[l>>2]|0,0)|0;c[n>>2]=mm(e,b,a,D)|0;c[h>>2]=1;while(1){if((c[n>>2]|0)!=0){break}if((c[h>>2]|0)>(c[(c[p>>2]|0)+24>>2]|0)){break}c[s>>2]=(c[h>>2]|0)-1;if((d[(c[(c[p>>2]|0)+32>>2]|0)+(c[s>>2]|0)>>0]|0|0)==0){c[o>>2]=Fe(c[l>>2]|0,c[h>>2]|0)|0;c[n>>2]=sm(c[p>>2]|0,c[j>>2]|0,c[o>>2]|0,-1,(c[r>>2]|0)+(c[s>>2]<<2)|0)|0;b=Be(c[l>>2]|0,c[h>>2]|0)|0;a=(c[r>>2]|0)+(c[(c[p>>2]|0)+24>>2]<<2)|0;c[a>>2]=(c[a>>2]|0)+b}c[h>>2]=(c[h>>2]|0)+1}if((c[n>>2]|0)==0){c[c[m>>2]>>2]=1;break}Cd(c[l>>2]|0)|0;c[c[k>>2]>>2]=c[n>>2];i=q;return}}while(0);c[n>>2]=Cd(c[l>>2]|0)|0}else{Cd(g)|0}c[c[k>>2]>>2]=c[n>>2];i=q;return}function vm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;j=e+16|0;k=e;g=e+4|0;h=e+8|0;f=e+12|0;c[j>>2]=a;c[k>>2]=b;c[g>>2]=d;if((c[(c[j>>2]|0)+40>>2]|0)!=0){c[c[g>>2]>>2]=0;c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}c[f>>2]=$i(c[j>>2]|0,1,h,k)|0;if((c[f>>2]|0)!=0){a=c[f>>2]|0;i=e;return a|0}if(100==(le(c[h>>2]|0)|0)){a=De(c[h>>2]|0,0)|0;c[c[g>>2]>>2]=a}c[f>>2]=Cd(c[h>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}function wm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;g=f+8|0;h=f;e=f+4|0;c[g>>2]=b;c[h>>2]=d;c[e>>2]=0;Vi(c[g>>2]|0);if((c[h>>2]|0)!=0){xm(e,c[g>>2]|0,2,0)}xm(e,c[g>>2]|0,3,0);xm(e,c[g>>2]|0,4,0);if((a[(c[g>>2]|0)+230>>0]|0)!=0){xm(e,c[g>>2]|0,5,0)}if((a[(c[g>>2]|0)+229>>0]|0)==0){h=c[e>>2]|0;i=f;return h|0}xm(e,c[g>>2]|0,6,0);h=c[e>>2]|0;i=f;return h|0}function xm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;h=k+20|0;f=k;l=k+4|0;m=k+8|0;j=k+12|0;g=k+16|0;c[h>>2]=a;c[f>>2]=b;c[l>>2]=d;c[m>>2]=e;if((c[c[h>>2]>>2]|0)!=0){i=k;return}c[g>>2]=$i(c[f>>2]|0,c[l>>2]|0,j,c[m>>2]|0)|0;if((c[g>>2]|0)==0){le(c[j>>2]|0)|0;c[g>>2]=Cd(c[j>>2]|0)|0}c[c[h>>2]>>2]=c[g>>2];i=k;return}function ym(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=0;if((c[(c[g>>2]|0)+44>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[e>>2]=De(c[f>>2]|0,(c[(c[g>>2]|0)+24>>2]|0)+1|0)|0;a=c[e>>2]|0;i=d;return a|0}function zm(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=i;i=i+64|0;t=n;j=n+48|0;l=n+44|0;g=n+40|0;k=n+36|0;e=n+32|0;h=n+28|0;m=n+52|0;s=n+16|0;r=n+12|0;f=n+8|0;p=n+4|0;o=n+20|0;q=n+24|0;c[j>>2]=b;c[l>>2]=wm(c[j>>2]|0,0)|0;if((c[l>>2]|0)!=0){t=c[l>>2]|0;i=n;return t|0}c[g>>2]=0;c[k>>2]=0;c[e>>2]=0;c[h>>2]=0;c[m>>2]=0;c[t>>2]=c[(c[j>>2]|0)+216>>2];c[s>>2]=wc(7448,t)|0;if((c[s>>2]|0)!=0){c[l>>2]=Df(c[(c[j>>2]|0)+12>>2]|0,c[s>>2]|0,-1,h,0)|0;oc(c[s>>2]|0)}else{c[l>>2]=7}do{if((c[l>>2]|0)==0){c[r>>2]=((c[(c[j>>2]|0)+24>>2]|0)+1<<2)*3;c[g>>2]=mc(c[r>>2]|0)|0;if((c[g>>2]|0)==0){c[l>>2]=7;break}else{aL(c[g>>2]|0,0,c[r>>2]|0)|0;c[k>>2]=(c[g>>2]|0)+((c[(c[j>>2]|0)+24>>2]|0)+1<<2);c[e>>2]=(c[k>>2]|0)+((c[(c[j>>2]|0)+24>>2]|0)+1<<2);break}}}while(0);a:while(1){if((c[l>>2]|0)==0){b=100==(le(c[h>>2]|0)|0)}else{b=0}r=c[j>>2]|0;if(!b){break}c[p>>2]=ym(r,c[h>>2]|0)|0;b=c[j>>2]|0;s=c[p>>2]|0;t=Ee(c[h>>2]|0,0)|0;c[l>>2]=mm(b,s,t,D)|0;aL(c[g>>2]|0,0,(c[(c[j>>2]|0)+24>>2]|0)+1<<2|0)|0;c[f>>2]=0;while(1){if((c[l>>2]|0)!=0){break}if((c[f>>2]|0)>=(c[(c[j>>2]|0)+24>>2]|0)){break}if((d[(c[(c[j>>2]|0)+32>>2]|0)+(c[f>>2]|0)>>0]|0)==0){c[o>>2]=Fe(c[h>>2]|0,(c[f>>2]|0)+1|0)|0;c[l>>2]=sm(c[j>>2]|0,c[p>>2]|0,c[o>>2]|0,c[f>>2]|0,(c[g>>2]|0)+(c[f>>2]<<2)|0)|0;s=Be(c[h>>2]|0,(c[f>>2]|0)+1|0)|0;t=(c[g>>2]|0)+(c[(c[j>>2]|0)+24>>2]<<2)|0;c[t>>2]=(c[t>>2]|0)+s}c[f>>2]=(c[f>>2]|0)+1}if((a[(c[j>>2]|0)+230>>0]|0)!=0){om(l,c[j>>2]|0,c[g>>2]|0)}if((c[l>>2]|0)!=0){yd(c[h>>2]|0)|0;c[h>>2]=0;continue}c[m>>2]=(c[m>>2]|0)+1;c[f>>2]=0;while(1){if((c[f>>2]|0)>(c[(c[j>>2]|0)+24>>2]|0)){continue a}t=(c[k>>2]|0)+(c[f>>2]<<2)|0;c[t>>2]=(c[t>>2]|0)+(c[(c[g>>2]|0)+(c[f>>2]<<2)>>2]|0);c[f>>2]=(c[f>>2]|0)+1}}if((a[r+228>>0]|0)!=0){pm(l,c[j>>2]|0,c[k>>2]|0,c[e>>2]|0,c[m>>2]|0)}oc(c[g>>2]|0);if((c[h>>2]|0)==0){t=c[l>>2]|0;i=n;return t|0}c[q>>2]=yd(c[h>>2]|0)|0;if((c[l>>2]|0)!=0){t=c[l>>2]|0;i=n;return t|0}c[l>>2]=c[q>>2];t=c[l>>2]|0;i=n;return t|0}function Am(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b;e=b+4|0;c[f>>2]=a;c[e>>2]=0;c[d>>2]=Fm(c[f>>2]|0,e)|0;if((c[d>>2]|0)==0){if((c[e>>2]|0)==0){c[d>>2]=267}}i=b;return c[d>>2]|0}function Bm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;e=j+20|0;l=j;h=j+4|0;g=j+8|0;f=j+12|0;k=j+16|0;c[e>>2]=b;c[l>>2]=d;c[g>>2]=8;c[f>>2]=0;c[k>>2]=c[l>>2];c[f>>2]=Dm(k)|0;if((a[c[k>>2]>>0]|0)==44){if((a[(c[k>>2]|0)+1>>0]|0)!=0){c[k>>2]=(c[k>>2]|0)+1;c[g>>2]=Dm(k)|0}}if((a[c[k>>2]>>0]|0)==0){if((c[g>>2]|0)>=2){c[h>>2]=0;if((a[(c[e>>2]|0)+229>>0]|0)==0){Em(h,c[e>>2]|0)}if((c[h>>2]|0)==0){c[h>>2]=Jl(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0)|0}jk(c[e>>2]|0);l=c[h>>2]|0;i=j;return l|0}}c[h>>2]=1;l=c[h>>2]|0;i=j;return l|0}function Cm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;g=h+16|0;j=h;l=h+4|0;f=h+8|0;k=h+12|0;c[j>>2]=b;c[l>>2]=d;c[f>>2]=0;c[k>>2]=0;b=Dm(l)|0;c[(c[j>>2]|0)+48>>2]=b;if((c[(c[j>>2]|0)+48>>2]|0)==1){e=3}else{if((c[(c[j>>2]|0)+48>>2]|0)>16){e=3}}if((e|0)==3){c[(c[j>>2]|0)+48>>2]=8}if((a[(c[j>>2]|0)+229>>0]|0)==0){Em(f,c[j>>2]|0);if((c[f>>2]|0)!=0){c[g>>2]=c[f>>2];l=c[g>>2]|0;i=h;return l|0}}c[f>>2]=$i(c[j>>2]|0,23,k,0)|0;if((c[f>>2]|0)!=0){c[g>>2]=c[f>>2];l=c[g>>2]|0;i=h;return l|0}else{Oe(c[k>>2]|0,1,2)|0;Oe(c[k>>2]|0,2,c[(c[j>>2]|0)+48>>2]|0)|0;le(c[k>>2]|0)|0;c[f>>2]=Cd(c[k>>2]|0)|0;c[g>>2]=c[f>>2];l=c[g>>2]|0;i=h;return l|0}return 0}function Dm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;f=i;i=i+16|0;e=f+8|0;d=f;g=f+4|0;c[e>>2]=b;c[d>>2]=c[c[e>>2]>>2];c[g>>2]=0;while(1){if((a[c[d>>2]>>0]|0)<48){b=5;break}if((a[c[d>>2]>>0]|0)>57){b=5;break}h=(c[g>>2]|0)*10|0;b=c[d>>2]|0;c[d>>2]=b+1;c[g>>2]=h+(a[b>>0]|0)-48}if((b|0)==5){c[c[e>>2]>>2]=c[d>>2];i=f;return c[g>>2]|0}return 0}function Em(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e;g=e+12|0;f=e+8|0;c[g>>2]=b;c[f>>2]=d;d=c[g>>2]|0;b=c[(c[f>>2]|0)+12>>2]|0;j=c[(c[f>>2]|0)+20>>2]|0;c[h>>2]=c[(c[f>>2]|0)+16>>2];c[h+4>>2]=j;Zi(d,b,7368,h);if((c[c[g>>2]>>2]|0)!=0){i=e;return}a[(c[f>>2]|0)+229>>0]=1;i=e;return}function Fm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=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,E=0,F=0,G=0;h=i;i=i+128|0;z=h;k=h+108|0;f=h+104|0;g=h+100|0;t=h+8|0;r=h+16|0;A=h+96|0;B=h+92|0;E=h+88|0;C=h+84|0;v=h+80|0;l=h+76|0;y=h+112|0;j=h+24|0;m=h+40|0;n=h+52|0;o=h+36|0;p=h+48|0;q=h+44|0;w=h+72|0;d=h+56|0;s=h+60|0;e=h+64|0;u=h+68|0;x=h+32|0;c[k>>2]=a;c[f>>2]=b;c[g>>2]=0;a=t;c[a>>2]=0;c[a+4>>2]=0;a=r;c[a>>2]=0;c[a+4>>2]=0;c[A>>2]=0;c[g>>2]=$i(c[k>>2]|0,27,A,0)|0;if((c[g>>2]|0)==0){Oe(c[A>>2]|0,1,c[(c[k>>2]|0)+248>>2]|0)|0;a:while(1){if((c[g>>2]|0)==0){a=(le(c[A>>2]|0)|0)==100}else{a=0}b=c[A>>2]|0;if(!a){break}c[E>>2]=De(b,0)|0;c[C>>2]=0;while(1){if((c[C>>2]|0)>=(c[(c[k>>2]|0)+248>>2]|0)){continue a}b=t;G=c[b>>2]|0;b=c[b+4>>2]|0;F=Gm(c[k>>2]|0,c[E>>2]|0,c[C>>2]|0,g)|0;a=t;c[a>>2]=G^F;c[a+4>>2]=b^D;c[C>>2]=(c[C>>2]|0)+1}}c[B>>2]=Cd(b)|0;if((c[g>>2]|0)==0){c[g>>2]=c[B>>2]}}c[g>>2]=$i(c[k>>2]|0,27,A,0)|0;if((c[g>>2]|0)!=0){a=t;b=a;b=c[b>>2]|0;a=a+4|0;a=c[a>>2]|0;F=r;G=F;G=c[G>>2]|0;F=F+4|0;F=c[F>>2]|0;G=(b|0)==(G|0);F=(a|0)==(F|0);F=G&F;F=F&1;G=c[f>>2]|0;c[G>>2]=F;G=c[g>>2]|0;i=h;return G|0}c[v>>2]=c[c[(c[k>>2]|0)+36>>2]>>2];c[l>>2]=0;c[z>>2]=c[(c[k>>2]|0)+216>>2];c[y>>2]=wc(7448,z)|0;if((c[y>>2]|0)!=0){c[g>>2]=Df(c[(c[k>>2]|0)+12>>2]|0,c[y>>2]|0,-1,l,0)|0;oc(c[y>>2]|0)}else{c[g>>2]=7}b:while(1){if((c[g>>2]|0)==0){z=100==(le(c[l>>2]|0)|0)}else{z=0}y=c[l>>2]|0;if(!z){break}F=Ee(y,0)|0;G=j;c[G>>2]=F;c[G+4>>2]=D;c[m>>2]=ym(c[k>>2]|0,c[l>>2]|0)|0;c[n>>2]=0;while(1){if((c[g>>2]|0)!=0){continue b}if((c[n>>2]|0)>=(c[(c[k>>2]|0)+24>>2]|0)){continue b}c[o>>2]=Fe(c[l>>2]|0,(c[n>>2]|0)+1|0)|0;c[p>>2]=Be(c[l>>2]|0,(c[n>>2]|0)+1|0)|0;c[q>>2]=0;c[g>>2]=jl(c[(c[k>>2]|0)+36>>2]|0,c[m>>2]|0,c[o>>2]|0,c[p>>2]|0,q)|0;c:while(1){if((c[g>>2]|0)!=0){break}c[d>>2]=0;c[s>>2]=0;c[e>>2]=0;c[u>>2]=0;c[g>>2]=tb[c[(c[v>>2]|0)+20>>2]&15](c[q>>2]|0,w,d,s,e,u)|0;if((c[g>>2]|0)!=0){continue}F=r;b=c[F>>2]|0;F=c[F+4>>2]|0;a=j;a=Hm(c[w>>2]|0,c[d>>2]|0,c[m>>2]|0,0,c[a>>2]|0,c[a+4>>2]|0,c[n>>2]|0,c[u>>2]|0)|0;G=r;c[G>>2]=b^a;c[G+4>>2]=F^D;c[x>>2]=1;while(1){if((c[x>>2]|0)>=(c[(c[k>>2]|0)+248>>2]|0)){continue c}if((c[(c[(c[k>>2]|0)+252>>2]|0)+((c[x>>2]|0)*24|0)>>2]|0)<=(c[d>>2]|0)){F=r;b=c[F>>2]|0;F=c[F+4>>2]|0;a=j;a=Hm(c[w>>2]|0,c[(c[(c[k>>2]|0)+252>>2]|0)+((c[x>>2]|0)*24|0)>>2]|0,c[m>>2]|0,c[x>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[n>>2]|0,c[u>>2]|0)|0;G=r;c[G>>2]=b^a;c[G+4>>2]=F^D}c[x>>2]=(c[x>>2]|0)+1}}if((c[q>>2]|0)!=0){ub[c[(c[v>>2]|0)+16>>2]&63](c[q>>2]|0)|0}if((c[g>>2]|0)==101){c[g>>2]=0}c[n>>2]=(c[n>>2]|0)+1}}yd(y)|0;a=t;b=a;b=c[b>>2]|0;a=a+4|0;a=c[a>>2]|0;F=r;G=F;G=c[G>>2]|0;F=F+4|0;F=c[F>>2]|0;G=(b|0)==(G|0);F=(a|0)==(F|0);F=G&F;F=F&1;G=c[f>>2]|0;c[G>>2]=F;G=c[g>>2]|0;i=h;return G|0}function Gm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;o=i;i=i+144|0;n=o+52|0;h=o+40|0;j=o+44|0;m=o+48|0;u=o+64|0;k=o+88|0;l=o+80|0;f=o+32|0;p=o+60|0;g=o+56|0;r=o+16|0;s=o+8|0;q=o;t=o+24|0;c[n>>2]=a;c[h>>2]=b;c[j>>2]=d;c[m>>2]=e;d=f;c[d>>2]=0;c[d+4>>2]=0;c[u+0>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;d=k+0|0;e=d+56|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));c[u+12>>2]=3;a=u+12|0;c[a>>2]=c[a>>2]|16;c[l>>2]=aj(c[n>>2]|0,c[h>>2]|0,c[j>>2]|0,-2,0,0,0,1,k)|0;if((c[l>>2]|0)==0){c[l>>2]=ej(c[n>>2]|0,k,u)|0}if((c[l>>2]|0)!=0){lj(k);a=c[l>>2]|0;b=c[m>>2]|0;c[b>>2]=a;b=f;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=o;return a|0}a:while(1){a=fj(c[n>>2]|0,k)|0;c[l>>2]=a;if(100!=(a|0)){break}c[p>>2]=c[k+48>>2];c[g>>2]=(c[p>>2]|0)+(c[k+52>>2]|0);a=r;c[a>>2]=0;c[a+4>>2]=0;a=s;c[a>>2]=0;c[a+4>>2]=0;a=q;c[a>>2]=0;c[a+4>>2]=0;a=Kj(c[p>>2]|0,r)|0;c[p>>2]=(c[p>>2]|0)+a;while(1){if(!((c[p>>2]|0)>>>0<(c[g>>2]|0)>>>0)){continue a}a=t;c[a>>2]=0;c[a+4>>2]=0;a=Kj(c[p>>2]|0,t)|0;c[p>>2]=(c[p>>2]|0)+a;if(!((c[p>>2]|0)>>>0<(c[g>>2]|0)>>>0)){continue}b=t;a=t;if(!((c[b>>2]|0)==0&(c[b+4>>2]|0)==0|(c[a>>2]|0)==1&(c[a+4>>2]|0)==0)){e=t;e=$K(c[e>>2]|0,c[e+4>>2]|0,2,0)|0;b=q;e=dL(c[b>>2]|0,c[b+4>>2]|0,e|0,D|0)|0;b=q;c[b>>2]=e;c[b+4>>2]=D;b=f;e=c[b>>2]|0;b=c[b+4>>2]|0;d=r;d=Hm(c[k+40>>2]|0,c[k+44>>2]|0,c[h>>2]|0,c[j>>2]|0,c[d>>2]|0,c[d+4>>2]|0,c[s>>2]|0,c[q>>2]|0)|0;a=f;c[a>>2]=e^d;c[a+4>>2]=b^D;continue}a=s;c[a>>2]=0;c[a+4>>2]=0;a=q;c[a>>2]=0;c[a+4>>2]=0;a=t;u=c[p>>2]|0;if((c[a>>2]|0)!=0|(c[a+4>>2]|0)!=0){a=Kj(u,s)|0;c[p>>2]=(c[p>>2]|0)+a;continue}else{b=Kj(u,t)|0;c[p>>2]=(c[p>>2]|0)+b;b=t;a=r;b=dL(c[a>>2]|0,c[a+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;a=r;c[a>>2]=b;c[a+4>>2]=D;continue}}}lj(k);a=c[l>>2]|0;b=c[m>>2]|0;c[b>>2]=a;b=f;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=o;return a|0}function Hm(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=i;i=i+48|0;o=p+36|0;n=p+20|0;t=p+40|0;s=p+16|0;u=p+8|0;r=p+24|0;q=p+28|0;m=p+32|0;l=p;c[o>>2]=b;c[n>>2]=d;c[t>>2]=e;c[s>>2]=f;e=u;c[e>>2]=g;c[e+4>>2]=h;c[r>>2]=j;c[q>>2]=k;e=u;d=c[e+4>>2]|0;b=l;c[b>>2]=c[e>>2];c[b+4>>2]=d;b=l;b=bL(c[b>>2]|0,c[b+4>>2]|0,3)|0;d=c[t>>2]|0;d=dL(b|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;b=l;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,D|0)|0;b=l;c[b>>2]=d;c[b+4>>2]=D;b=l;b=bL(c[b>>2]|0,c[b+4>>2]|0,3)|0;d=c[s>>2]|0;d=dL(b|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;b=l;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,D|0)|0;b=l;c[b>>2]=d;c[b+4>>2]=D;b=l;b=bL(c[b>>2]|0,c[b+4>>2]|0,3)|0;d=c[r>>2]|0;d=dL(b|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;b=l;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,D|0)|0;b=l;c[b>>2]=d;c[b+4>>2]=D;b=l;b=bL(c[b>>2]|0,c[b+4>>2]|0,3)|0;d=c[q>>2]|0;d=dL(b|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;b=l;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,D|0)|0;b=l;c[b>>2]=d;c[b+4>>2]=D;c[m>>2]=0;while(1){h=l;j=c[h>>2]|0;h=c[h+4>>2]|0;if((c[m>>2]|0)>=(c[n>>2]|0)){break}u=bL(j|0,h|0,3)|0;t=a[(c[o>>2]|0)+(c[m>>2]|0)>>0]|0;t=dL(u|0,D|0,t|0,((t|0)<0)<<31>>31|0)|0;u=l;t=dL(c[u>>2]|0,c[u+4>>2]|0,t|0,D|0)|0;u=l;c[u>>2]=t;c[u+4>>2]=D;c[m>>2]=(c[m>>2]|0)+1}D=h;i=p;return j|0}function Im(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;h=g+8|0;f=g;j=g+4|0;c[h>>2]=b;c[f>>2]=0;c[j>>2]=c[(c[h>>2]|0)+12>>2];a:do{if((c[j>>2]|0)==0){a[(c[h>>2]|0)+6>>0]=1}else{do{if((d[(c[h>>2]|0)+7>>0]|0|0)==0){Cd(c[(c[h>>2]|0)+8>>2]|0)|0}xk(c[h>>2]|0,c[j>>2]|0,f);a[(c[h>>2]|0)+6>>0]=a[(c[j>>2]|0)+32>>0]|0;a[(c[h>>2]|0)+7>>0]=1;c[(c[h>>2]|0)+88>>2]=1;l=(c[j>>2]|0)+24|0;k=c[l+4>>2]|0;b=(c[h>>2]|0)+32|0;c[b>>2]=c[l>>2];c[b+4>>2]=k;if((d[(c[h>>2]|0)+6>>0]|0|0)!=0){break a}}while((_k(c[h>>2]|0,f)|0)!=0)}}while(0);if((c[f>>2]|0)!=0){l=c[f>>2]|0;i=g;return l|0}if((d[(c[h>>2]|0)+52>>0]|0|0)==0){k=(c[h>>2]|0)+32|0;j=c[k+4>>2]|0;l=(c[h>>2]|0)+80|0;b=c[l+4>>2]|0;if(!((j|0)>(b|0)|((j|0)==(b|0)?(c[k>>2]|0)>>>0>(c[l>>2]|0)>>>0:0))){e=10}}else{e=10}if((e|0)==10){if((d[(c[h>>2]|0)+52>>0]|0|0)==0){l=c[f>>2]|0;i=g;return l|0}k=(c[h>>2]|0)+32|0;j=c[k+4>>2]|0;l=(c[h>>2]|0)+72|0;b=c[l+4>>2]|0;if(!((j|0)<(b|0)|((j|0)==(b|0)?(c[k>>2]|0)>>>0<(c[l>>2]|0)>>>0:0))){l=c[f>>2]|0;i=g;return l|0}}a[(c[h>>2]|0)+6>>0]=1;l=c[f>>2]|0;i=g;return l|0}function Jm(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b;e=b+4|0;c[f>>2]=a;c[d>>2]=c[f>>2];while(1){if((c[d>>2]|0)==0){break}if((c[(c[d>>2]|0)+12>>2]|0)==0){if((c[(c[d>>2]|0)+16>>2]|0)==0){break}}a=c[d>>2]|0;if((c[(c[d>>2]|0)+12>>2]|0)!=0){a=c[a+12>>2]|0}else{a=c[a+16>>2]|0}c[d>>2]=a}a:while(1){if((c[d>>2]|0)==0){break}c[e>>2]=c[(c[d>>2]|0)+8>>2];hn(c[d>>2]|0);if((c[e>>2]|0)!=0){if((c[d>>2]|0)==(c[(c[e>>2]|0)+12>>2]|0)){if((c[(c[e>>2]|0)+16>>2]|0)!=0){c[d>>2]=c[(c[e>>2]|0)+16>>2];while(1){if((c[d>>2]|0)==0){continue a}if((c[(c[d>>2]|0)+12>>2]|0)==0){if((c[(c[d>>2]|0)+16>>2]|0)==0){continue a}}a=c[d>>2]|0;if((c[(c[d>>2]|0)+12>>2]|0)!=0){a=c[a+12>>2]|0}else{a=c[a+16>>2]|0}c[d>>2]=a}}}}c[d>>2]=c[e>>2]}i=b;return}function Km(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;f=e+8|0;g=e+20|0;h=e;j=e+16|0;c[g>>2]=a;a=h;c[a>>2]=b;c[a+4>>2]=d;if((c[g>>2]|0)!=0){c[j>>2]=Ye(c[g>>2]|0)|0;if((c[j>>2]|0)==1){a=Qd(c[g>>2]|0)|0;b=f;c[b>>2]=a;c[b+4>>2]=D;b=f;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=e;return a|0}}j=h;a=c[j+4>>2]|0;b=f;c[b>>2]=c[j>>2];c[b+4>>2]=a;b=f;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=e;return a|0}function Lm(a,b,d,e,f,g,h,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;m=i;i=i+48|0;n=m;y=m+40|0;x=m+36|0;w=m+32|0;v=m+28|0;u=m+24|0;t=m+44|0;p=m+12|0;s=m+8|0;q=m+4|0;o=m+16|0;r=m+20|0;c[y>>2]=a;c[x>>2]=b;c[w>>2]=d;c[v>>2]=e;c[u>>2]=f;c[t>>2]=g;c[p>>2]=h;c[s>>2]=j;c[q>>2]=k;c[o>>2]=l;c[r>>2]=Xm(c[y>>2]|0,c[x>>2]|0,c[w>>2]|0,c[v>>2]|0,c[u>>2]|0,c[t>>2]|0,c[p>>2]|0,c[s>>2]|0,c[q>>2]|0)|0;if((c[r>>2]|0)==0){if((c[c[q>>2]>>2]|0)!=0){c[r>>2]=Ym(c[q>>2]|0,12)|0;if((c[r>>2]|0)==0){c[r>>2]=Zm(c[c[q>>2]>>2]|0,12)|0}}}if((c[r>>2]|0)==0){y=c[r>>2]|0;i=m;return y|0}Jm(c[c[q>>2]>>2]|0);c[c[q>>2]>>2]=0;if((c[r>>2]|0)==18){c[n>>2]=12;y=wc(7512,n)|0;c[c[o>>2]>>2]=y;c[r>>2]=1;y=c[r>>2]|0;i=m;return y|0}if((c[r>>2]|0)!=1){y=c[r>>2]|0;i=m;return y|0}c[n>>2]=c[p>>2];y=wc(7568,n)|0;c[c[o>>2]>>2]=y;y=c[r>>2]|0;i=m;return y|0}function Mm(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+48|0;j=f+36|0;o=f+32|0;e=f+28|0;h=f+24|0;n=f+20|0;g=f+16|0;l=f+8|0;b=f+4|0;k=f;m=f+12|0;c[j>>2]=a;c[o>>2]=c[c[j>>2]>>2];c[e>>2]=0;c[h>>2]=0;c[n>>2]=0;Nm(c[j>>2]|0,c[(c[j>>2]|0)+12>>2]|0,h,n,e);do{if((c[e>>2]|0)==0){if((c[h>>2]|0)>1){if((d[(c[o>>2]|0)+228>>0]|0|0)!=0){c[g>>2]=mc(((c[h>>2]|0)*24|0)+(c[n>>2]<<2<<1)|0)|0;c[l>>2]=(c[g>>2]|0)+((c[h>>2]|0)*24|0);if((c[g>>2]|0)==0){c[e>>2]=7;break}c[k>>2]=c[g>>2];c[m>>2]=c[l>>2];Om(c[j>>2]|0,0,c[(c[j>>2]|0)+12>>2]|0,k,m,e);c[h>>2]=((c[k>>2]|0)-(c[g>>2]|0)|0)/24|0;c[n>>2]=((c[m>>2]|0)-(c[l>>2]|0)|0)/4|0;a:do{if((c[e>>2]|0)==0){c[e>>2]=Pm(c[j>>2]|0,0,c[g>>2]|0,c[h>>2]|0)|0;c[b>>2]=0;while(1){if((c[e>>2]|0)!=0){break a}if((c[b>>2]|0)>=(c[n>>2]|0)){break a}c[e>>2]=Pm(c[j>>2]|0,c[(c[l>>2]|0)+(c[b>>2]<<2)>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;c[b>>2]=(c[b>>2]|0)+1}}}while(0);oc(c[g>>2]|0)}}}}while(0);Qm(c[j>>2]|0,c[(c[j>>2]|0)+12>>2]|0,e);i=f;return c[e>>2]|0}function Nm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+48|0;n=j+32|0;g=j+28|0;o=j+24|0;m=j+20|0;h=j+16|0;p=j+8|0;q=j+4|0;l=j;k=j+12|0;c[n>>2]=a;c[g>>2]=b;c[o>>2]=d;c[m>>2]=e;c[h>>2]=f;if((c[g>>2]|0)==0){i=j;return}if(0!=(c[c[h>>2]>>2]|0)){i=j;return}f=c[g>>2]|0;if((c[c[g>>2]>>2]|0)!=5){a=c[m>>2]|0;c[a>>2]=(c[a>>2]|0)+((c[f>>2]|0)==4&1);Nm(c[n>>2]|0,c[(c[g>>2]|0)+12>>2]|0,c[o>>2]|0,c[m>>2]|0,c[h>>2]|0);Nm(c[n>>2]|0,c[(c[g>>2]|0)+16>>2]|0,c[o>>2]|0,c[m>>2]|0,c[h>>2]|0);i=j;return}c[q>>2]=c[(c[f+20>>2]|0)+48>>2];a=c[o>>2]|0;c[a>>2]=(c[a>>2]|0)+(c[q>>2]|0);c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[q>>2]|0)){l=9;break}c[l>>2]=(c[(c[g>>2]|0)+20>>2]|0)+56+((c[p>>2]|0)*24|0);c[k>>2]=Vm(c[n>>2]|0,c[c[l>>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0,c[(c[l>>2]|0)+8>>2]|0,(c[l>>2]|0)+20|0)|0;if((c[k>>2]|0)!=0){l=7;break}c[p>>2]=(c[p>>2]|0)+1}if((l|0)==7){c[c[h>>2]>>2]=c[k>>2];i=j;return}else if((l|0)==9){c[(c[(c[g>>2]|0)+20>>2]|0)+44>>2]=-1;i=j;return}}function Om(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;m=n+32|0;l=n+28|0;h=n+24|0;k=n+20|0;o=n+16|0;j=n+8|0;q=n+4|0;p=n;r=n+12|0;c[m>>2]=a;c[l>>2]=b;c[h>>2]=d;c[k>>2]=e;c[o>>2]=f;c[j>>2]=g;if((c[c[j>>2]>>2]|0)!=0){i=n;return}g=c[h>>2]|0;if((c[c[h>>2]>>2]|0)==5){c[q>>2]=c[g+20>>2];c[p>>2]=0;while(1){if((c[c[j>>2]>>2]|0)!=0){p=13;break}if((c[p>>2]|0)>=(c[(c[q>>2]|0)+48>>2]|0)){p=13;break}b=c[k>>2]|0;a=c[b>>2]|0;c[b>>2]=a+24;c[r>>2]=a;c[c[r>>2]>>2]=c[q>>2];c[(c[r>>2]|0)+4>>2]=c[p>>2];c[(c[r>>2]|0)+12>>2]=c[l>>2];c[(c[r>>2]|0)+8>>2]=(c[q>>2]|0)+56+((c[p>>2]|0)*24|0);c[(c[r>>2]|0)+20>>2]=c[(c[q>>2]|0)+52>>2];a=Um(c[m>>2]|0,c[(c[(c[r>>2]|0)+8>>2]|0)+20>>2]|0,(c[r>>2]|0)+16|0)|0;c[c[j>>2]>>2]=a;c[p>>2]=(c[p>>2]|0)+1}if((p|0)==13){i=n;return}}if((c[g>>2]|0)==2){i=n;return}if((c[c[h>>2]>>2]|0)==4){c[l>>2]=c[(c[h>>2]|0)+12>>2];c[c[c[o>>2]>>2]>>2]=c[l>>2];a=c[o>>2]|0;c[a>>2]=(c[a>>2]|0)+4}Om(c[m>>2]|0,c[l>>2]|0,c[(c[h>>2]|0)+12>>2]|0,c[k>>2]|0,c[o>>2]|0,c[j>>2]|0);if((c[c[h>>2]>>2]|0)==4){c[l>>2]=c[(c[h>>2]|0)+16>>2];c[c[c[o>>2]>>2]>>2]=c[l>>2];a=c[o>>2]|0;c[a>>2]=(c[a>>2]|0)+4}Om(c[m>>2]|0,c[l>>2]|0,c[(c[h>>2]|0)+16>>2]|0,c[k>>2]|0,c[o>>2]|0,c[j>>2]|0);i=n;return}function Pm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;t=i;i=i+80|0;h=t+76|0;m=t+72|0;f=t+68|0;r=t+64|0;u=t+60|0;z=t+56|0;p=t+52|0;j=t+48|0;q=t+44|0;B=t+40|0;v=t+36|0;n=t+12|0;o=t;s=t+4|0;k=t+8|0;l=t+16|0;w=t+20|0;x=t+24|0;y=t+28|0;A=t+32|0;c[m>>2]=a;c[f>>2]=b;c[r>>2]=d;c[u>>2]=e;c[z>>2]=c[c[m>>2]>>2];c[p>>2]=0;c[j>>2]=0;c[B>>2]=0;c[v>>2]=0;c[n>>2]=0;c[o>>2]=1;if((c[(c[z>>2]|0)+40>>2]|0)!=0){c[h>>2]=0;a=c[h>>2]|0;i=t;return a|0}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[u>>2]|0)){break}if((c[(c[r>>2]|0)+((c[q>>2]|0)*24|0)+12>>2]|0)==(c[f>>2]|0)){c[B>>2]=(c[B>>2]|0)+(c[(c[r>>2]|0)+((c[q>>2]|0)*24|0)+16>>2]|0);c[v>>2]=(c[v>>2]|0)+1}c[q>>2]=(c[q>>2]|0)+1}if((c[B>>2]|0)!=0){if((c[v>>2]|0)>=2){c[j>>2]=Rm(c[m>>2]|0,p)|0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[v>>2]|0)){break}if((c[j>>2]|0)!=0){break}c[k>>2]=0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[u>>2]|0)){break}do{if((c[(c[r>>2]|0)+((c[s>>2]|0)*24|0)+8>>2]|0)!=0){if((c[(c[r>>2]|0)+((c[s>>2]|0)*24|0)+12>>2]|0)==(c[f>>2]|0)){if((c[k>>2]|0)!=0){if((c[(c[r>>2]|0)+((c[s>>2]|0)*24|0)+16>>2]|0)>=(c[(c[k>>2]|0)+16>>2]|0)){break}}c[k>>2]=(c[r>>2]|0)+((c[s>>2]|0)*24|0)}}}while(0);c[s>>2]=(c[s>>2]|0)+1}if((c[q>>2]|0)!=0){if((c[(c[k>>2]|0)+16>>2]|0)>=($(((c[n>>2]|0)+((c[o>>2]|0)/4|0)-1|0)/((c[o>>2]|0)/4|0|0)|0,c[p>>2]|0)|0)){c[l>>2]=c[(c[k>>2]|0)+8>>2];c[j>>2]=Sm(c[m>>2]|0,c[l>>2]|0,c[(c[k>>2]|0)+20>>2]|0)|0;Tk(c[(c[l>>2]|0)+20>>2]|0);c[(c[l>>2]|0)+20>>2]=0}else{g=25}}else{g=25}do{if((g|0)==25){g=0;if((c[q>>2]|0)<12){c[o>>2]=c[o>>2]<<2}if((c[q>>2]|0)!=0){if((c[(c[c[k>>2]>>2]|0)+48>>2]|0)<=1){break}if((c[q>>2]|0)==((c[v>>2]|0)-1|0)){break}}c[w>>2]=c[(c[k>>2]|0)+8>>2];c[x>>2]=0;c[y>>2]=0;c[j>>2]=Mk(c[z>>2]|0,c[w>>2]|0,c[(c[k>>2]|0)+20>>2]|0,x,y)|0;if((c[j>>2]|0)==0){Nk(c[z>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0,c[y>>2]|0,c[x>>2]|0);c[A>>2]=Tm(c[c[c[k>>2]>>2]>>2]|0,c[(c[c[k>>2]>>2]|0)+4>>2]|0)|0;if((c[q>>2]|0)!=0){if((c[A>>2]|0)>=(c[n>>2]|0)){break}}c[n>>2]=c[A>>2]}}}while(0);c[(c[k>>2]|0)+8>>2]=0;c[q>>2]=(c[q>>2]|0)+1}c[h>>2]=c[j>>2];a=c[h>>2]|0;i=t;return a|0}}c[h>>2]=0;a=c[h>>2]|0;i=t;return a|0}function Qm(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;j=g+16|0;h=g;k=g+4|0;m=g+8|0;l=g+12|0;c[j>>2]=b;c[h>>2]=e;c[k>>2]=f;if((c[h>>2]|0)==0){i=g;return}if(0!=(c[c[k>>2]>>2]|0)){i=g;return}if((c[c[h>>2]>>2]|0)!=5){Qm(c[j>>2]|0,c[(c[h>>2]|0)+12>>2]|0,c[k>>2]|0);Qm(c[j>>2]|0,c[(c[h>>2]|0)+16>>2]|0,c[k>>2]|0);if((d[(c[(c[h>>2]|0)+12>>2]|0)+34>>0]|0|0)!=0){f=(d[(c[(c[h>>2]|0)+16>>2]|0)+34>>0]|0|0)!=0}else{f=0}a[(c[h>>2]|0)+34>>0]=f&1;i=g;return}c[l>>2]=c[(c[(c[h>>2]|0)+20>>2]|0)+48>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[l>>2]|0)){break}if((c[(c[(c[h>>2]|0)+20>>2]|0)+56+((c[m>>2]|0)*24|0)+16>>2]|0)==0){break}c[m>>2]=(c[m>>2]|0)+1}a[(c[h>>2]|0)+34>>0]=(c[m>>2]|0)==(c[l>>2]|0);b=Jk(c[j>>2]|0,1,c[(c[h>>2]|0)+20>>2]|0)|0;c[c[k>>2]>>2]=b;i=g;return}function Rm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+48|0;e=j+44|0;g=j+40|0;h=j+36|0;f=j+32|0;l=j+28|0;m=j+24|0;d=j+8|0;k=j;o=j+16|0;n=j+20|0;c[g>>2]=a;c[h>>2]=b;do{if((c[(c[g>>2]|0)+60>>2]|0)==0){c[l>>2]=c[c[g>>2]>>2];a=d;c[a>>2]=0;c[a+4>>2]=0;a=k;c[a>>2]=0;c[a+4>>2]=0;c[f>>2]=sl(c[l>>2]|0,m)|0;if((c[f>>2]|0)!=0){c[e>>2]=c[f>>2];a=c[e>>2]|0;i=j;return a|0}c[n>>2]=ye(c[m>>2]|0,0)|0;a=Be(c[m>>2]|0,0)|0;c[o>>2]=(c[n>>2]|0)+a;a=Kj(c[n>>2]|0,d)|0;c[n>>2]=(c[n>>2]|0)+a;while(1){if(!((c[n>>2]|0)>>>0<(c[o>>2]|0)>>>0)){break}a=Kj(c[n>>2]|0,k)|0;c[n>>2]=(c[n>>2]|0)+a}a=d;if(!((c[a>>2]|0)==0&(c[a+4>>2]|0)==0)){a=k;if(!((c[a>>2]|0)==0&(c[a+4>>2]|0)==0)){n=d;a=c[n+4>>2]|0;o=(c[g>>2]|0)+64|0;c[o>>2]=c[n>>2];c[o+4>>2]=a;o=k;a=d;a=lL(c[o>>2]|0,c[o+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;o=c[(c[l>>2]|0)+236>>2]|0;o=dL(a|0,D|0,o|0,((o|0)<0)<<31>>31|0)|0;a=c[(c[l>>2]|0)+236>>2]|0;a=lL(o|0,D|0,a|0,((a|0)<0)<<31>>31|0)|0;c[(c[g>>2]|0)+60>>2]=a;c[f>>2]=Cd(c[m>>2]|0)|0;if((c[f>>2]|0)==0){break}c[e>>2]=c[f>>2];a=c[e>>2]|0;i=j;return a|0}}Cd(c[m>>2]|0)|0;c[e>>2]=267;a=c[e>>2]|0;i=j;return a|0}}while(0);c[c[h>>2]>>2]=c[(c[g>>2]|0)+60>>2];c[e>>2]=0;a=c[e>>2]|0;i=j;return a|0}function Sm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;j=e;g=e+4|0;k=e+8|0;h=e+12|0;c[j>>2]=a;c[g>>2]=b;c[k>>2]=d;c[h>>2]=mc(16)|0;if((c[h>>2]|0)!=0){a=c[h>>2]|0;c[a+0>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[c[h>>2]>>2]=c[g>>2];c[(c[h>>2]|0)+8>>2]=c[(c[j>>2]|0)+24>>2];c[(c[h>>2]|0)+4>>2]=c[k>>2];c[(c[j>>2]|0)+24>>2]=c[h>>2];c[(c[g>>2]|0)+16>>2]=c[h>>2];c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}else{c[f>>2]=7;a=c[f>>2]|0;i=e;return a|0}return 0}function Tm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;j=e+16|0;k=e;f=e+4|0;h=e+8|0;g=e+12|0;c[j>>2]=b;c[k>>2]=d;c[f>>2]=0;if((c[j>>2]|0)==0){b=c[f>>2]|0;i=e;return b|0}c[h>>2]=(c[j>>2]|0)+(c[k>>2]|0);c[g>>2]=c[j>>2];while(1){if(!((c[g>>2]|0)>>>0<(c[h>>2]|0)>>>0)){break}c[f>>2]=(c[f>>2]|0)+1;do{b=c[g>>2]|0;c[g>>2]=b+1}while((a[b>>0]&128|0)!=0);Pj(0,g)}b=c[f>>2]|0;i=e;return b|0}function Um(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=i;i=i+48|0;r=g+44|0;k=g+40|0;f=g+36|0;o=g+32|0;j=g+28|0;n=g+24|0;h=g+16|0;q=g+12|0;l=g+8|0;m=g;p=g+20|0;c[r>>2]=a;c[k>>2]=b;c[f>>2]=e;c[o>>2]=c[c[r>>2]>>2];c[j>>2]=0;c[h>>2]=0;c[q>>2]=c[(c[o>>2]|0)+236>>2];c[n>>2]=0;while(1){if((c[h>>2]|0)!=0){k=13;break}if((c[n>>2]|0)>=(c[(c[k>>2]|0)+4>>2]|0)){k=13;break}c[l>>2]=c[(c[c[k>>2]>>2]|0)+(c[n>>2]<<2)>>2];a:do{if((c[(c[l>>2]|0)+56>>2]|0)==0){if((d[(c[l>>2]|0)+5>>0]|0|0)==0){b=(c[l>>2]|0)+8|0;a=c[b+4>>2]|0;r=m;c[r>>2]=c[b>>2];c[r+4>>2]=a;while(1){a=m;e=c[a+4>>2]|0;r=(c[l>>2]|0)+16|0;b=c[r+4>>2]|0;if(!((e|0)<(b|0)|((e|0)==(b|0)?(c[a>>2]|0)>>>0<=(c[r>>2]|0)>>>0:0))){break a}r=m;c[h>>2]=Sj(c[o>>2]|0,c[r>>2]|0,c[r+4>>2]|0,0,p,0)|0;if((c[h>>2]|0)!=0){break a}if(((c[p>>2]|0)+35|0)>(c[q>>2]|0)){c[j>>2]=(c[j>>2]|0)+(((c[p>>2]|0)+34|0)/(c[q>>2]|0)|0)}a=m;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;r=m;c[r>>2]=a;c[r+4>>2]=D}}}}while(0);c[n>>2]=(c[n>>2]|0)+1}if((k|0)==13){c[c[f>>2]>>2]=c[j>>2];i=g;return c[h>>2]|0}return 0}function Vm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=i;i=i+48|0;n=o+36|0;p=o+32|0;q=o+28|0;r=o+24|0;j=o+20|0;k=o+16|0;h=o+8|0;g=o+4|0;l=o;m=o+12|0;c[n>>2]=a;c[p>>2]=b;c[q>>2]=d;c[r>>2]=e;c[j>>2]=f;c[h>>2]=7;c[k>>2]=mc(56)|0;if((c[k>>2]|0)==0){b=c[k>>2]|0;a=c[j>>2]|0;c[a>>2]=b;a=c[h>>2]|0;i=o;return a|0}c[l>>2]=0;c[m>>2]=c[c[n>>2]>>2];a:do{if((c[r>>2]|0)!=0){c[g>>2]=1;while(1){if((c[l>>2]|0)!=0){break}if((c[g>>2]|0)>=(c[(c[m>>2]|0)+248>>2]|0)){break}if((c[(c[(c[m>>2]|0)+252>>2]|0)+((c[g>>2]|0)*24|0)>>2]|0)==(c[q>>2]|0)){c[l>>2]=1;c[h>>2]=aj(c[m>>2]|0,c[(c[n>>2]|0)+16>>2]|0,c[g>>2]|0,-2,c[p>>2]|0,c[q>>2]|0,0,0,c[k>>2]|0)|0;c[(c[k>>2]|0)+36>>2]=1}c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=1;while(1){if((c[l>>2]|0)!=0){break a}if((c[g>>2]|0)>=(c[(c[m>>2]|0)+248>>2]|0)){break a}if((c[(c[(c[m>>2]|0)+252>>2]|0)+((c[g>>2]|0)*24|0)>>2]|0)==((c[q>>2]|0)+1|0)){c[l>>2]=1;c[h>>2]=aj(c[m>>2]|0,c[(c[n>>2]|0)+16>>2]|0,c[g>>2]|0,-2,c[p>>2]|0,c[q>>2]|0,1,0,c[k>>2]|0)|0;if((c[h>>2]|0)==0){c[h>>2]=Wm(c[m>>2]|0,c[(c[n>>2]|0)+16>>2]|0,c[p>>2]|0,c[q>>2]|0,c[k>>2]|0)|0}}c[g>>2]=(c[g>>2]|0)+1}}}while(0);if((c[l>>2]|0)!=0){b=c[k>>2]|0;a=c[j>>2]|0;c[a>>2]=b;a=c[h>>2]|0;i=o;return a|0}c[h>>2]=aj(c[m>>2]|0,c[(c[n>>2]|0)+16>>2]|0,0,-2,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,0,c[k>>2]|0)|0;c[(c[k>>2]|0)+36>>2]=((c[r>>2]|0)!=0^1)&1;b=c[k>>2]|0;a=c[j>>2]|0;c[a>>2]=b;a=c[h>>2]|0;i=o;return a|0}function Wm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+16|0;l=g;k=g+4|0;j=g+8|0;h=g+12|0;c[m>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;a=Vj(c[m>>2]|0,c[l>>2]|0,0,-2,c[k>>2]|0,c[j>>2]|0,0,0,c[h>>2]|0)|0;i=g;return a|0}function Xm(a,b,d,e,f,g,h,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;v=i;i=i+96|0;u=v+80|0;w=v+76|0;n=v+72|0;o=v+68|0;r=v+64|0;p=v+60|0;q=v+56|0;l=v+16|0;m=v+12|0;t=v+8|0;x=v+4|0;y=v;s=v+20|0;c[w>>2]=a;c[n>>2]=b;c[o>>2]=d;c[r>>2]=e;c[p>>2]=f;c[q>>2]=g;c[l>>2]=h;c[m>>2]=j;c[t>>2]=k;j=s+0|0;k=j+36|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0));c[s>>2]=c[w>>2];c[s+4>>2]=c[n>>2];c[s+8>>2]=c[o>>2];c[s+16>>2]=c[p>>2];c[s+20>>2]=c[q>>2];c[s+12>>2]=c[r>>2];if((c[l>>2]|0)==0){c[c[t>>2]>>2]=0;c[u>>2]=0;a=c[u>>2]|0;i=v;return a|0}if((c[m>>2]|0)<0){c[m>>2]=cL(c[l>>2]|0)|0}c[y>>2]=_m(s,c[l>>2]|0,c[m>>2]|0,c[t>>2]|0,x)|0;if((c[y>>2]|0)==0){if((c[s+32>>2]|0)!=0){c[y>>2]=1}}c[u>>2]=c[y>>2];a=c[u>>2]|0;i=v;return a|0}function Ym(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+48|0;q=r+44|0;k=r+40|0;m=r+36|0;h=r+32|0;l=r+28|0;n=r+24|0;f=r+20|0;j=r+12|0;g=r+8|0;p=r+4|0;o=r;d=r+16|0;c[q>>2]=a;c[k>>2]=b;c[m>>2]=0;c[h>>2]=c[c[q>>2]>>2];c[l>>2]=0;c[n>>2]=c[c[h>>2]>>2];if((c[k>>2]|0)==0){c[m>>2]=1}if((c[m>>2]|0)==0){if((c[n>>2]|0)==3|(c[n>>2]|0)==4){c[f>>2]=mc(c[k>>2]<<2)|0;if(0==(c[f>>2]|0)){c[m>>2]=7}else{aL(c[f>>2]|0,0,c[k>>2]<<2|0)|0}if((c[m>>2]|0)==0){c[g>>2]=c[h>>2];while(1){if((c[c[g>>2]>>2]|0)!=(c[n>>2]|0)){break}c[g>>2]=c[(c[g>>2]|0)+12>>2]}while(1){c[o>>2]=c[(c[g>>2]|0)+8>>2];c[(c[g>>2]|0)+8>>2]=0;if((c[o>>2]|0)!=0){c[(c[o>>2]|0)+12>>2]=0}else{c[h>>2]=0}c[m>>2]=Ym(g,(c[k>>2]|0)-1|0)|0;if((c[m>>2]|0)!=0){break}c[p>>2]=0;while(1){if((c[g>>2]|0)==0){break}if((c[p>>2]|0)>=(c[k>>2]|0)){break}if((c[(c[f>>2]|0)+(c[p>>2]<<2)>>2]|0)==0){c[(c[f>>2]|0)+(c[p>>2]<<2)>>2]=c[g>>2];c[g>>2]=0}else{c[(c[l>>2]|0)+12>>2]=c[(c[f>>2]|0)+(c[p>>2]<<2)>>2];c[(c[l>>2]|0)+16>>2]=c[g>>2];c[(c[(c[l>>2]|0)+12>>2]|0)+8>>2]=c[l>>2];c[(c[(c[l>>2]|0)+16>>2]|0)+8>>2]=c[l>>2];c[g>>2]=c[l>>2];c[l>>2]=c[(c[l>>2]|0)+8>>2];c[(c[g>>2]|0)+8>>2]=0;c[(c[f>>2]|0)+(c[p>>2]<<2)>>2]=0}c[p>>2]=(c[p>>2]|0)+1}if((c[g>>2]|0)!=0){e=24;break}if((c[o>>2]|0)==0){break}c[g>>2]=c[(c[o>>2]|0)+16>>2];while(1){if((c[c[g>>2]>>2]|0)!=(c[n>>2]|0)){break}c[g>>2]=c[(c[g>>2]|0)+12>>2]}c[(c[(c[o>>2]|0)+16>>2]|0)+8>>2]=c[(c[o>>2]|0)+8>>2];b=c[(c[o>>2]|0)+16>>2]|0;if((c[(c[o>>2]|0)+8>>2]|0)!=0){c[(c[(c[o>>2]|0)+8>>2]|0)+12>>2]=b}else{c[h>>2]=b}c[(c[o>>2]|0)+8>>2]=c[l>>2];c[l>>2]=c[o>>2]}if((e|0)==24){Jm(c[g>>2]|0);c[m>>2]=18}a:do{if((c[m>>2]|0)==0){c[g>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[k>>2]|0)){break}do{if((c[(c[f>>2]|0)+(c[j>>2]<<2)>>2]|0)!=0){if((c[g>>2]|0)==0){c[g>>2]=c[(c[f>>2]|0)+(c[j>>2]<<2)>>2];c[(c[g>>2]|0)+8>>2]=0;break}else{c[(c[l>>2]|0)+16>>2]=c[g>>2];c[(c[l>>2]|0)+12>>2]=c[(c[f>>2]|0)+(c[j>>2]<<2)>>2];c[(c[(c[l>>2]|0)+12>>2]|0)+8>>2]=c[l>>2];c[(c[(c[l>>2]|0)+16>>2]|0)+8>>2]=c[l>>2];c[g>>2]=c[l>>2];c[l>>2]=c[(c[l>>2]|0)+8>>2];c[(c[g>>2]|0)+8>>2]=0;break}}}while(0);c[j>>2]=(c[j>>2]|0)+1}c[h>>2]=c[g>>2]}else{c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[k>>2]|0)){break}Jm(c[(c[f>>2]|0)+(c[j>>2]<<2)>>2]|0);c[j>>2]=(c[j>>2]|0)+1}while(1){a=c[l>>2]|0;c[d>>2]=a;if((a|0)==0){break a}c[l>>2]=c[(c[d>>2]|0)+8>>2];oc(c[d>>2]|0)}}}while(0);oc(c[f>>2]|0)}}}if((c[m>>2]|0)==0){b=c[h>>2]|0;a=c[q>>2]|0;c[a>>2]=b;a=c[m>>2]|0;i=r;return a|0}Jm(c[h>>2]|0);c[h>>2]=0;b=c[h>>2]|0;a=c[q>>2]|0;c[a>>2]=b;a=c[m>>2]|0;i=r;return a|0}function Zm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;d=e+4|0;c[f>>2]=a;c[g>>2]=b;c[d>>2]=0;do{if((c[f>>2]|0)!=0){if((c[g>>2]|0)<0){c[d>>2]=18;break}c[d>>2]=Zm(c[(c[f>>2]|0)+12>>2]|0,(c[g>>2]|0)-1|0)|0;if((c[d>>2]|0)==0){c[d>>2]=Zm(c[(c[f>>2]|0)+16>>2]|0,(c[g>>2]|0)-1|0)|0}}}while(0);i=e;return c[d>>2]|0}function _m(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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;r=i;i=i+80|0;v=r+72|0;B=r+68|0;j=r+64|0;q=r+60|0;l=r+56|0;o=r+52|0;g=r+48|0;m=r+44|0;k=r+40|0;x=r+36|0;u=r+12|0;p=r;s=r+4|0;w=r+8|0;y=r+16|0;t=r+20|0;z=r+24|0;A=r+28|0;n=r+32|0;c[v>>2]=a;c[B>>2]=b;c[j>>2]=d;c[q>>2]=e;c[l>>2]=f;c[o>>2]=0;c[g>>2]=0;c[m>>2]=0;c[k>>2]=c[j>>2];c[x>>2]=c[B>>2];c[u>>2]=0;c[p>>2]=1;while(1){if((c[u>>2]|0)!=0){h=38;break}c[s>>2]=0;c[w>>2]=0;c[u>>2]=$m(c[v>>2]|0,c[x>>2]|0,c[k>>2]|0,s,w)|0;if((c[u>>2]|0)==0){if((c[s>>2]|0)!=0){if((c[c[s>>2]>>2]|0)==5){if((c[(c[v>>2]|0)+24>>2]|0)!=0){c[t>>2]=an(40)|0;if((c[t>>2]|0)==0){h=8;break}c[c[t>>2]>>2]=2;c[(c[t>>2]|0)+16>>2]=c[s>>2];c[(c[s>>2]|0)+8>>2]=c[t>>2];if((c[m>>2]|0)!=0){c[(c[t>>2]|0)+12>>2]=c[m>>2];c[(c[m>>2]|0)+8>>2]=c[t>>2]}c[m>>2]=c[t>>2];c[s>>2]=c[g>>2]}else{h=12}}else{h=12}if((h|0)==12){h=0;c[z>>2]=c[c[s>>2]>>2];if((c[z>>2]|0)==5){f=1}else{f=(c[(c[s>>2]|0)+12>>2]|0)!=0}c[y>>2]=f&1;if((c[y>>2]|0)==0){if((c[p>>2]|0)!=0){h=16;break}}if((c[y>>2]|0)!=0){if((c[p>>2]|0)==0){c[A>>2]=an(40)|0;if((c[A>>2]|0)==0){h=20;break}c[c[A>>2]>>2]=3;bn(o,c[g>>2]|0,c[A>>2]|0);c[g>>2]=c[A>>2]}}if((c[g>>2]|0)!=0){if((c[z>>2]|0)==1){if((c[y>>2]|0)==0){if((c[c[g>>2]>>2]|0)!=5){h=29;break}}}if((c[z>>2]|0)!=5){if((c[y>>2]|0)!=0){if((c[c[g>>2]>>2]|0)==1){h=29;break}}}}do{if((c[y>>2]|0)!=0){f=c[s>>2]|0;if((c[o>>2]|0)!=0){c[(c[g>>2]|0)+16>>2]=f;c[(c[s>>2]|0)+8>>2]=c[g>>2];break}else{c[o>>2]=f;break}}else{bn(o,c[g>>2]|0,c[s>>2]|0)}}while(0);c[p>>2]=((c[y>>2]|0)!=0^1)&1}c[g>>2]=c[s>>2]}}c[k>>2]=(c[k>>2]|0)-(c[w>>2]|0);c[x>>2]=(c[x>>2]|0)+(c[w>>2]|0)}if((h|0)==8){Jm(c[s>>2]|0);c[u>>2]=7}else if((h|0)==16){Jm(c[s>>2]|0);c[u>>2]=1}else if((h|0)==20){Jm(c[s>>2]|0);c[u>>2]=7}else if((h|0)==29){Jm(c[s>>2]|0);c[u>>2]=1}else if((h|0)==38){if((c[u>>2]|0)==101){if((c[o>>2]|0)!=0){if((c[p>>2]|0)!=0){c[u>>2]=1}}}do{if((c[u>>2]|0)==101){c[u>>2]=0;if((c[m>>2]|0)!=0){if((c[o>>2]|0)==0){c[u>>2]=1;break}c[n>>2]=c[m>>2];while(1){if((c[(c[n>>2]|0)+12>>2]|0)==0){break}c[n>>2]=c[(c[n>>2]|0)+12>>2]}c[(c[n>>2]|0)+12>>2]=c[o>>2];c[(c[o>>2]|0)+8>>2]=c[n>>2];c[o>>2]=c[m>>2]}}}while(0);c[c[l>>2]>>2]=(c[j>>2]|0)-(c[k>>2]|0)}if((c[u>>2]|0)==0){a=c[o>>2]|0;B=c[q>>2]|0;c[B>>2]=a;B=c[u>>2]|0;i=r;return B|0}Jm(c[o>>2]|0);Jm(c[m>>2]|0);c[o>>2]=0;a=c[o>>2]|0;B=c[q>>2]|0;c[B>>2]=a;B=c[u>>2]|0;i=r;return B|0}function $m(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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;l=i;i=i+80|0;x=l+68|0;m=l+64|0;q=l+60|0;v=l+56|0;p=l+52|0;r=l+48|0;o=l+44|0;t=l+40|0;u=l+36|0;w=l+32|0;D=l+24|0;n=l+20|0;s=l+16|0;C=l+12|0;B=l+8|0;z=l+4|0;A=l+72|0;y=l;j=l+28|0;c[m>>2]=b;c[q>>2]=e;c[v>>2]=f;c[p>>2]=g;c[r>>2]=h;c[D>>2]=0;c[n>>2]=c[q>>2];c[s>>2]=c[v>>2];c[(c[m>>2]|0)+24>>2]=0;while(1){if((c[s>>2]|0)>0){g=(dn(a[c[n>>2]>>0]|0)|0)!=0}else{g=0}h=c[s>>2]|0;if(!g){break}c[s>>2]=h+ -1;c[n>>2]=(c[n>>2]|0)+1}if((h|0)==0){c[x>>2]=101;b=c[x>>2]|0;i=l;return b|0}c[o>>2]=0;while(1){if((c[o>>2]|0)>=4){break}c[C>>2]=7608+(c[o>>2]<<3);if((d[(c[C>>2]|0)+5>>0]|0)==0){if((c[s>>2]|0)>=(d[(c[C>>2]|0)+4>>0]|0)){if(0==(XK(c[n>>2]|0,c[c[C>>2]>>2]|0,d[(c[C>>2]|0)+4>>0]|0)|0)){c[B>>2]=10;c[z>>2]=d[(c[C>>2]|0)+4>>0]|0;a:do{if((d[(c[C>>2]|0)+6>>0]|0)==1){if((a[(c[n>>2]|0)+4>>0]|0)==47){if((a[(c[n>>2]|0)+5>>0]|0)>=48){if((a[(c[n>>2]|0)+5>>0]|0)<=57){c[B>>2]=0;c[z>>2]=5;while(1){if((a[(c[n>>2]|0)+(c[z>>2]|0)>>0]|0)<48){break a}if((a[(c[n>>2]|0)+(c[z>>2]|0)>>0]|0)>57){break a}c[B>>2]=((c[B>>2]|0)*10|0)+((a[(c[n>>2]|0)+(c[z>>2]|0)>>0]|0)-48);c[z>>2]=(c[z>>2]|0)+1}}}}}}while(0);a[A>>0]=a[(c[n>>2]|0)+(c[z>>2]|0)>>0]|0;if((dn(a[A>>0]|0)|0)!=0){k=26;break}if((a[A>>0]|0)==34){k=26;break}if((a[A>>0]|0)==40){k=26;break}if((a[A>>0]|0)==41){k=26;break}if((a[A>>0]|0)==0){k=26;break}}}}c[o>>2]=(c[o>>2]|0)+1}if((k|0)==26){c[D>>2]=an(40)|0;if((c[D>>2]|0)!=0){c[c[D>>2]>>2]=d[(c[C>>2]|0)+6>>0]|0;c[(c[D>>2]|0)+4>>2]=c[B>>2];c[c[p>>2]>>2]=c[D>>2];c[c[r>>2]>>2]=(c[n>>2]|0)-(c[q>>2]|0)+(c[z>>2]|0);c[x>>2]=0;b=c[x>>2]|0;i=l;return b|0}else{c[x>>2]=7;b=c[x>>2]|0;i=l;return b|0}}if((a[c[n>>2]>>0]|0)==34){c[o>>2]=1;while(1){if((c[o>>2]|0)>=(c[s>>2]|0)){break}if((a[(c[n>>2]|0)+(c[o>>2]|0)>>0]|0)==34){break}c[o>>2]=(c[o>>2]|0)+1}c[c[r>>2]>>2]=(c[n>>2]|0)-(c[q>>2]|0)+(c[o>>2]|0)+1;if((c[o>>2]|0)==(c[s>>2]|0)){c[x>>2]=1;b=c[x>>2]|0;i=l;return b|0}else{c[x>>2]=en(c[m>>2]|0,(c[n>>2]|0)+1|0,(c[o>>2]|0)-1|0,c[p>>2]|0)|0;b=c[x>>2]|0;i=l;return b|0}}else{c[t>>2]=c[(c[m>>2]|0)+20>>2];c[u>>2]=0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[m>>2]|0)+16>>2]|0)){break}c[y>>2]=c[(c[(c[m>>2]|0)+8>>2]|0)+(c[o>>2]<<2)>>2];c[j>>2]=cL(c[y>>2]|0)|0;if((c[s>>2]|0)>(c[j>>2]|0)){if((a[(c[n>>2]|0)+(c[j>>2]|0)>>0]|0)==58){if((Tb(c[y>>2]|0,c[n>>2]|0,c[j>>2]|0)|0)==0){k=43;break}}}c[o>>2]=(c[o>>2]|0)+1}if((k|0)==43){c[t>>2]=c[o>>2];c[u>>2]=(c[n>>2]|0)-(c[q>>2]|0)+(c[j>>2]|0)+1}c[w>>2]=fn(c[m>>2]|0,c[t>>2]|0,(c[q>>2]|0)+(c[u>>2]|0)|0,(c[v>>2]|0)-(c[u>>2]|0)|0,c[p>>2]|0,c[r>>2]|0)|0;b=c[r>>2]|0;c[b>>2]=(c[b>>2]|0)+(c[u>>2]|0);c[x>>2]=c[w>>2];b=c[x>>2]|0;i=l;return b|0}return 0}function an(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=mc(c[e>>2]|0)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}aL(c[d>>2]|0,0,c[e>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}function bn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;h=g+12|0;j=g;f=g+4|0;e=g+8|0;c[h>>2]=a;c[j>>2]=b;c[f>>2]=d;c[e>>2]=c[j>>2];while(1){if((c[(c[e>>2]|0)+8>>2]|0)!=0){b=cn(c[(c[e>>2]|0)+8>>2]|0)|0;b=(b|0)<=(cn(c[f>>2]|0)|0)}else{b=0}d=c[(c[e>>2]|0)+8>>2]|0;if(!b){break}c[e>>2]=d}b=c[f>>2]|0;if((d|0)!=0){c[(c[(c[e>>2]|0)+8>>2]|0)+16>>2]=b;c[(c[f>>2]|0)+8>>2]=c[(c[e>>2]|0)+8>>2];j=c[e>>2]|0;a=c[f>>2]|0;a=a+12|0;c[a>>2]=j;a=c[f>>2]|0;j=c[e>>2]|0;j=j+8|0;c[j>>2]=a;i=g;return}else{c[c[h>>2]>>2]=b;j=c[e>>2]|0;a=c[f>>2]|0;a=a+12|0;c[a>>2]=j;a=c[f>>2]|0;j=c[e>>2]|0;j=j+8|0;c[j>>2]=a;i=g;return}}function cn(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;do{if((c[c[e>>2]>>2]|0)==1){c[d>>2]=1}else{if((c[c[e>>2]>>2]|0)==4){c[d>>2]=2;break}else{c[d>>2]=3;break}}}while(0);i=b;return c[d>>2]|0}function dn(b){b=b|0;var c=0,d=0;c=i;i=i+16|0;d=c;a[d>>0]=b;if((a[d>>0]|0)==32){b=1}else{if((a[d>>0]|0)==9){b=1}else{if((a[d>>0]|0)==10){b=1}else{if((a[d>>0]|0)==13){b=1}else{if((a[d>>0]|0)==11){b=1}else{b=(a[d>>0]|0)==12}}}}}i=c;return b&1|0}function en(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;o=i;i=i+96|0;n=o+88|0;t=o+84|0;g=o+80|0;B=o+76|0;l=o+72|0;E=o+68|0;v=o+64|0;m=o+60|0;k=o+56|0;j=o+52|0;r=o+48|0;s=o+44|0;u=o;x=o+4|0;z=o+8|0;A=o+12|0;C=o+20|0;w=o+24|0;D=o+28|0;y=o+32|0;p=o+36|0;q=o+40|0;c[t>>2]=b;c[g>>2]=d;c[B>>2]=e;c[l>>2]=f;c[E>>2]=c[c[t>>2]>>2];c[v>>2]=c[c[E>>2]>>2];c[k>>2]=0;c[j>>2]=0;c[r>>2]=0;c[s>>2]=0;c[o+16>>2]=120;c[u>>2]=0;c[m>>2]=jl(c[E>>2]|0,c[(c[t>>2]|0)+4>>2]|0,c[g>>2]|0,c[B>>2]|0,j)|0;a:do{if((c[m>>2]|0)==0){c[x>>2]=0;while(1){if((c[m>>2]|0)!=0){break}c[A>>2]=0;c[C>>2]=0;c[w>>2]=0;c[D>>2]=0;c[m>>2]=tb[c[(c[v>>2]|0)+20>>2]&15](c[j>>2]|0,z,A,C,w,D)|0;if((c[m>>2]|0)==0){c[k>>2]=gn(c[k>>2]|0,120+((c[x>>2]|0)*24|0)|0)|0;if((c[k>>2]|0)==0){break a}c[r>>2]=gn(c[r>>2]|0,(c[s>>2]|0)+(c[A>>2]|0)|0)|0;if((c[r>>2]|0)==0){break a}c[y>>2]=(c[k>>2]|0)+96+((c[x>>2]|0)*24|0);E=c[y>>2]|0;c[E+0>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;c[E+12>>2]=0;c[E+16>>2]=0;c[E+20>>2]=0;fL((c[r>>2]|0)+(c[s>>2]|0)|0,c[z>>2]|0,c[A>>2]|0)|0;c[s>>2]=(c[s>>2]|0)+(c[A>>2]|0);c[(c[y>>2]|0)+4>>2]=c[A>>2];if((c[w>>2]|0)<(c[B>>2]|0)){f=(a[(c[g>>2]|0)+(c[w>>2]|0)>>0]|0)==42}else{f=0}c[(c[y>>2]|0)+8>>2]=f&1;if((c[C>>2]|0)>0){f=(a[(c[g>>2]|0)+((c[C>>2]|0)-1)>>0]|0)==94}else{f=0}c[(c[y>>2]|0)+12>>2]=f&1;c[u>>2]=(c[x>>2]|0)+1}c[x>>2]=(c[x>>2]|0)+1}ub[c[(c[v>>2]|0)+16>>2]&63](c[j>>2]|0)|0;c[j>>2]=0;h=14}else{h=14}}while(0);do{if((h|0)==14){if((c[m>>2]|0)==101){c[q>>2]=0;c[k>>2]=gn(c[k>>2]|0,120+((c[u>>2]|0)*24|0)+(c[s>>2]|0)|0)|0;if((c[k>>2]|0)==0){break}aL(c[k>>2]|0,0,(c[k>>2]|0)+96-(c[k>>2]|0)|0)|0;c[c[k>>2]>>2]=5;c[(c[k>>2]|0)+20>>2]=(c[k>>2]|0)+40;c[(c[(c[k>>2]|0)+20>>2]|0)+52>>2]=c[(c[t>>2]|0)+20>>2];c[(c[(c[k>>2]|0)+20>>2]|0)+48>>2]=c[u>>2];c[q>>2]=(c[(c[k>>2]|0)+20>>2]|0)+56+((c[u>>2]|0)*24|0);if((c[r>>2]|0)!=0){fL(c[q>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;oc(c[r>>2]|0)}c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[(c[(c[k>>2]|0)+20>>2]|0)+48>>2]|0)){break}c[(c[(c[k>>2]|0)+20>>2]|0)+56+((c[p>>2]|0)*24|0)>>2]=c[q>>2];c[q>>2]=(c[q>>2]|0)+(c[(c[(c[k>>2]|0)+20>>2]|0)+56+((c[p>>2]|0)*24|0)+4>>2]|0);c[p>>2]=(c[p>>2]|0)+1}c[m>>2]=0}c[c[l>>2]>>2]=c[k>>2];c[n>>2]=c[m>>2];E=c[n>>2]|0;i=o;return E|0}}while(0);if((c[j>>2]|0)!=0){ub[c[(c[v>>2]|0)+16>>2]&63](c[j>>2]|0)|0}oc(c[r>>2]|0);oc(c[k>>2]|0);c[c[l>>2]>>2]=0;c[n>>2]=7;E=c[n>>2]|0;i=o;return E|0}function fn(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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;m=i;i=i+80|0;A=m+68|0;n=m+64|0;B=m+60|0;r=m+56|0;k=m+52|0;y=m+48|0;z=m+44|0;w=m+40|0;l=m+36|0;x=m+32|0;u=m+24|0;t=m+20|0;p=m+16|0;o=m+12|0;j=m+8|0;q=m+4|0;v=m;s=m+28|0;c[A>>2]=b;c[n>>2]=d;c[B>>2]=e;c[r>>2]=f;c[k>>2]=g;c[y>>2]=h;c[z>>2]=c[c[A>>2]>>2];c[w>>2]=c[c[z>>2]>>2];c[u>>2]=0;c[t>>2]=0;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[r>>2]|0)){break}if((a[(c[B>>2]|0)+(c[t>>2]|0)>>0]|0)==42){break}if((a[(c[B>>2]|0)+(c[t>>2]|0)>>0]|0)==34){break}c[t>>2]=(c[t>>2]|0)+1}c[c[y>>2]>>2]=c[t>>2];c[l>>2]=jl(c[z>>2]|0,c[(c[A>>2]|0)+4>>2]|0,c[B>>2]|0,c[t>>2]|0,x)|0;if((c[l>>2]|0)!=0){d=c[u>>2]|0;b=c[k>>2]|0;c[b>>2]=d;b=c[l>>2]|0;i=m;return b|0}c[o>>2]=0;c[j>>2]=0;c[q>>2]=0;c[v>>2]=0;c[l>>2]=tb[c[(c[w>>2]|0)+20>>2]&15](c[x>>2]|0,p,o,j,q,v)|0;if((c[l>>2]|0)==0){c[s>>2]=120+(c[o>>2]|0);c[u>>2]=an(c[s>>2]|0)|0;a:do{if((c[u>>2]|0)!=0){c[c[u>>2]>>2]=5;c[(c[u>>2]|0)+20>>2]=(c[u>>2]|0)+40;c[(c[(c[u>>2]|0)+20>>2]|0)+48>>2]=1;c[(c[(c[u>>2]|0)+20>>2]|0)+52>>2]=c[n>>2];c[(c[(c[u>>2]|0)+20>>2]|0)+60>>2]=c[o>>2];c[(c[(c[u>>2]|0)+20>>2]|0)+56>>2]=(c[(c[u>>2]|0)+20>>2]|0)+80;fL(c[(c[(c[u>>2]|0)+20>>2]|0)+56>>2]|0,c[p>>2]|0,c[o>>2]|0)|0;if((c[q>>2]|0)<(c[r>>2]|0)){if((a[(c[B>>2]|0)+(c[q>>2]|0)>>0]|0)==42){c[(c[(c[u>>2]|0)+20>>2]|0)+64>>2]=1;c[q>>2]=(c[q>>2]|0)+1}}while(1){if((c[j>>2]|0)>0){if((a[(c[B>>2]|0)+((c[j>>2]|0)-1)>>0]|0)==45){c[(c[A>>2]|0)+24>>2]=1;c[j>>2]=(c[j>>2]|0)+ -1;continue}}if((c[(c[A>>2]|0)+12>>2]|0)==0){break a}if((c[j>>2]|0)<=0){break a}if((a[(c[B>>2]|0)+((c[j>>2]|0)-1)>>0]|0)!=94){break a}c[(c[(c[u>>2]|0)+20>>2]|0)+68>>2]=1;c[j>>2]=(c[j>>2]|0)+ -1}}else{c[l>>2]=7}}while(0);c[c[y>>2]>>2]=c[q>>2]}else{if((c[t>>2]|0)!=0){if((c[l>>2]|0)==101){c[l>>2]=0}}}ub[c[(c[w>>2]|0)+16>>2]&63](c[x>>2]|0)|0;d=c[u>>2]|0;b=c[k>>2]|0;c[b>>2]=d;b=c[l>>2]|0;i=m;return b|0}function gn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=qc(c[f>>2]|0,c[g>>2]|0)|0;if((c[e>>2]|0)!=0){g=c[e>>2]|0;i=d;return g|0}oc(c[f>>2]|0);g=c[e>>2]|0;i=d;return g|0}function hn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jn(c[(c[d>>2]|0)+20>>2]|0);oc(c[(c[d>>2]|0)+36>>2]|0);oc(c[d>>2]|0);i=b;return}function jn(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((c[e>>2]|0)==0){i=b;return}oc(c[c[e>>2]>>2]|0);zk(c[e>>2]|0);f=(c[e>>2]|0)+0|0;a=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(a|0));c[d>>2]=0;while(1){if((c[d>>2]|0)>=(c[(c[e>>2]|0)+48>>2]|0)){break}Tk(c[(c[e>>2]|0)+56+((c[d>>2]|0)*24|0)+20>>2]|0);c[(c[e>>2]|0)+56+((c[d>>2]|0)*24|0)+20>>2]=0;c[d>>2]=(c[d>>2]|0)+1}i=b;return}function kn(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;b=d+8|0;e=d;f=d+4|0;c[b>>2]=a;c[e>>2]=c[(c[b>>2]|0)+24>>2];while(1){if((c[e>>2]|0)==0){break}c[f>>2]=c[(c[e>>2]|0)+8>>2];Wi(c[(c[e>>2]|0)+12>>2]|0);oc(c[e>>2]|0);c[e>>2]=c[f>>2]}c[(c[b>>2]|0)+24>>2]=0;i=d;return}function ln(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;c[g>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;if((Uf()|0)<3008002){i=e;return}b=c[f+4>>2]|0;a=(c[g>>2]|0)+48|0;c[a>>2]=c[f>>2];c[a+4>>2]=b;i=e;return}function mn(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0;l=i;i=i+256|0;N=l;J=l+236|0;U=l+232|0;da=l+228|0;Z=l+224|0;z=l+220|0;m=l+216|0;p=l+212|0;R=l+208|0;k=l+204|0;o=l+200|0;H=l+196|0;V=l+192|0;O=l+188|0;T=l+184|0;r=l+180|0;x=l+176|0;B=l+172|0;A=l+168|0;C=l+164|0;v=l+160|0;n=l+156|0;y=l+152|0;G=l+240|0;W=l+40|0;D=l+32|0;M=l+28|0;Q=l+24|0;P=l+20|0;E=l+36|0;F=l+8|0;s=l+4|0;I=l+12|0;ca=l+16|0;ba=l+144|0;Y=l+44|0;$=l+48|0;_=l+112|0;aa=l+116|0;X=l+120|0;S=l+124|0;w=l+128|0;u=l+132|0;q=l+136|0;t=l+140|0;L=l+148|0;c[J>>2]=b;c[U>>2]=d;c[da>>2]=e;c[Z>>2]=f;c[z>>2]=g;c[m>>2]=h;c[p>>2]=j;c[R>>2]=c[da>>2];c[k>>2]=0;c[o>>2]=0;c[T>>2]=0;c[r>>2]=0;c[C>>2]=(a[(c[c[z>>2]>>2]|0)+3>>0]|0)==52&1;c[n>>2]=0;c[G>>2]=0;c[W>>2]=0;c[D>>2]=0;c[M>>2]=0;c[Q>>2]=0;c[P>>2]=0;c[E>>2]=0;c[F>>2]=0;c[s>>2]=0;c[I>>2]=0;c[B>>2]=(cL(c[(c[z>>2]|0)+4>>2]|0)|0)+1;c[A>>2]=(cL(c[(c[z>>2]|0)+8>>2]|0)|0)+1;c[V>>2]=(c[Z>>2]|0)-2<<2;c[v>>2]=mc(c[V>>2]|0)|0;if((c[v>>2]|0)!=0){aL(c[v>>2]|0,0,c[V>>2]|0)|0;c[s>>2]=mc(c[V>>2]|0)|0}if((c[s>>2]|0)!=0){aL(c[s>>2]|0,0,c[V>>2]|0)|0}do{if((c[v>>2]|0)!=0){if((c[s>>2]|0)!=0){c[H>>2]=3;while(1){if((c[o>>2]|0)!=0){break}if((c[H>>2]|0)>=(c[Z>>2]|0)){break}c[ca>>2]=c[(c[z>>2]|0)+(c[H>>2]<<2)>>2];if((c[n>>2]|0)!=0){K=16}else{if((cL(c[ca>>2]|0)|0)>>>0>8){if(0==(Tb(c[ca>>2]|0,7872,8)|0)){if(0==(nn(a[(c[ca>>2]|0)+8>>0]|0)|0)){c[o>>2]=on(c[R>>2]|0,(c[ca>>2]|0)+9|0,n,c[p>>2]|0)|0}else{K=16}}else{K=16}}else{K=16}}do{if((K|0)==16){K=0;if((c[C>>2]|0)!=0){if((pn(c[ca>>2]|0,ba,Y)|0)!=0){g=$+0|0;h=7976|0;j=g+64|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(j|0));if((c[Y>>2]|0)==0){c[o>>2]=7;break}c[_>>2]=0;while(1){if((c[_>>2]|0)>=8){break}c[aa>>2]=$+(c[_>>2]<<3);if((c[ba>>2]|0)==(c[(c[aa>>2]|0)+4>>2]|0)){if((Tb(c[ca>>2]|0,c[c[aa>>2]>>2]|0,c[(c[aa>>2]|0)+4>>2]|0)|0)==0){break}}c[_>>2]=(c[_>>2]|0)+1}a:do{if((c[_>>2]|0)==8){c[N>>2]=c[ca>>2];da=wc(8040,N)|0;c[c[p>>2]>>2]=da;c[o>>2]=1}else{switch(c[_>>2]|0){case 7:{b=c[Y>>2]|0;da=c[I>>2]|0;c[I>>2]=da+1;c[(c[s>>2]|0)+(da<<2)>>2]=b;c[Y>>2]=0;break a};case 3:{oc(c[P>>2]|0);c[P>>2]=c[Y>>2];c[Y>>2]=0;break a};case 1:{oc(c[M>>2]|0);c[M>>2]=c[Y>>2];c[Y>>2]=0;break a};case 0:{if((cL(c[Y>>2]|0)|0)!=4){K=30}else{if((Tb(c[Y>>2]|0,3752,4)|0)!=0){K=30}}if((K|0)==30){K=0;c[N>>2]=c[Y>>2];da=wc(8072,N)|0;c[c[p>>2]>>2]=da;c[o>>2]=1}c[W>>2]=1;break a};case 2:{oc(c[Q>>2]|0);c[Q>>2]=c[Y>>2];c[Y>>2]=0;break a};case 6:{oc(c[F>>2]|0);c[F>>2]=c[Y>>2];c[Y>>2]=0;break a};case 4:{if((cL(c[Y>>2]|0)|0)!=3){K=37}else{if((Tb(c[Y>>2]|0,8104,3)|0)!=0){K=37}}do{if((K|0)==37){K=0;if((cL(c[Y>>2]|0)|0)==4){if((Tb(c[Y>>2]|0,8112,4)|0)==0){break}}c[N>>2]=c[Y>>2];da=wc(8120,N)|0;c[c[p>>2]>>2]=da;c[o>>2]=1}}while(0);if((a[c[Y>>2]>>0]|0)==100){j=1}else{j=(a[c[Y>>2]>>0]|0)==68}c[D>>2]=j&1;break a};case 5:{oc(c[E>>2]|0);c[E>>2]=c[Y>>2];c[Y>>2]=0;break a};default:{break a}}}}while(0);oc(c[Y>>2]|0);break}}b=(cL(c[ca>>2]|0)|0)+1|0;c[T>>2]=(c[T>>2]|0)+b;b=c[ca>>2]|0;da=c[r>>2]|0;c[r>>2]=da+1;c[(c[v>>2]|0)+(da<<2)>>2]=b}}while(0);c[H>>2]=(c[H>>2]|0)+1}b:do{if((c[o>>2]|0)==0){if((c[E>>2]|0)!=0){oc(c[Q>>2]|0);oc(c[P>>2]|0);c[Q>>2]=0;c[P>>2]=0;if((c[r>>2]|0)==0){oc(c[v>>2]|0);c[v>>2]=0;c[o>>2]=qn(c[U>>2]|0,c[(c[z>>2]|0)+4>>2]|0,c[E>>2]|0,v,r,T)|0;if((c[o>>2]|0)==0){if((c[F>>2]|0)!=0){c[X>>2]=0;while(1){if((c[X>>2]|0)>=(c[r>>2]|0)){break b}da=(Dc(c[F>>2]|0,c[(c[v>>2]|0)+(c[X>>2]<<2)>>2]|0)|0)==0;Y=c[X>>2]|0;if(da){break}c[X>>2]=Y+1}c[S>>2]=Y;while(1){if((c[S>>2]|0)>=(c[r>>2]|0)){break}c[(c[v>>2]|0)+(c[S>>2]<<2)>>2]=c[(c[v>>2]|0)+((c[S>>2]|0)+1<<2)>>2];c[S>>2]=(c[S>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+ -1}}}}}}while(0);if((c[o>>2]|0)==0){if((c[r>>2]|0)==0){c[c[v>>2]>>2]=7936;c[T>>2]=8;c[r>>2]=1}if((c[n>>2]|0)==0){c[o>>2]=on(c[R>>2]|0,3672,n,c[p>>2]|0)|0;if((c[o>>2]|0)!=0){break}}c[o>>2]=rn(c[M>>2]|0,y,G)|0;if((c[o>>2]|0)==1){c[N>>2]=c[M>>2];da=wc(8144,N)|0;c[c[p>>2]>>2]=da}if((c[o>>2]|0)==0){c[V>>2]=280+(c[r>>2]<<2)+((c[y>>2]|0)*24|0)+(c[r>>2]|0)+(c[A>>2]|0)+(c[B>>2]|0)+(c[T>>2]|0);c[k>>2]=mc(c[V>>2]|0)|0;if((c[k>>2]|0)==0){c[o>>2]=7;break}aL(c[k>>2]|0,0,c[V>>2]|0)|0;c[(c[k>>2]|0)+12>>2]=c[U>>2];c[(c[k>>2]|0)+24>>2]=c[r>>2];c[(c[k>>2]|0)+260>>2]=0;c[(c[k>>2]|0)+28>>2]=(c[k>>2]|0)+280;c[(c[k>>2]|0)+36>>2]=c[n>>2];c[(c[k>>2]|0)+256>>2]=1048576;if((c[C>>2]|0)!=0){R=(c[W>>2]|0)==0}else{R=0}a[(c[k>>2]|0)+230>>0]=R&1;a[(c[k>>2]|0)+229>>0]=c[C>>2];a[(c[k>>2]|0)+228>>0]=c[C>>2];a[(c[k>>2]|0)+231>>0]=c[D>>2];c[(c[k>>2]|0)+48>>2]=255;c[(c[k>>2]|0)+40>>2]=c[E>>2];c[(c[k>>2]|0)+44>>2]=c[F>>2];c[E>>2]=0;c[F>>2]=0;c[(c[k>>2]|0)+252>>2]=(c[(c[k>>2]|0)+28>>2]|0)+(c[r>>2]<<2);fL(c[(c[k>>2]|0)+252>>2]|0,c[G>>2]|0,(c[y>>2]|0)*24|0)|0;c[(c[k>>2]|0)+248>>2]=c[y>>2];c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[y>>2]|0)){break}Xh((c[(c[k>>2]|0)+252>>2]|0)+((c[H>>2]|0)*24|0)+4|0,1,1);c[H>>2]=(c[H>>2]|0)+1}c[(c[k>>2]|0)+32>>2]=(c[(c[k>>2]|0)+252>>2]|0)+((c[y>>2]|0)*24|0);c[x>>2]=(c[(c[k>>2]|0)+32>>2]|0)+(c[r>>2]|0);c[(c[k>>2]|0)+20>>2]=c[x>>2];fL(c[x>>2]|0,c[(c[z>>2]|0)+8>>2]|0,c[A>>2]|0)|0;c[x>>2]=(c[x>>2]|0)+(c[A>>2]|0);c[(c[k>>2]|0)+16>>2]=c[x>>2];fL(c[x>>2]|0,c[(c[z>>2]|0)+4>>2]|0,c[B>>2]|0)|0;c[x>>2]=(c[x>>2]|0)+(c[B>>2]|0);c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[r>>2]|0)){break}c[u>>2]=0;c[w>>2]=sn(c[(c[v>>2]|0)+(c[O>>2]<<2)>>2]|0,u)|0;fL(c[x>>2]|0,c[w>>2]|0,c[u>>2]|0)|0;a[(c[x>>2]|0)+(c[u>>2]|0)>>0]=0;yi(c[x>>2]|0);c[(c[(c[k>>2]|0)+28>>2]|0)+(c[O>>2]<<2)>>2]=c[x>>2];c[x>>2]=(c[x>>2]|0)+((c[u>>2]|0)+1);c[O>>2]=(c[O>>2]|0)+1}c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[r>>2]|0)){break}c[q>>2]=cL(c[(c[(c[k>>2]|0)+28>>2]|0)+(c[O>>2]<<2)>>2]|0)|0;c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[I>>2]|0)){break}c[t>>2]=c[(c[s>>2]|0)+(c[H>>2]<<2)>>2];do{if((c[t>>2]|0)!=0){da=c[q>>2]|0;if((da|0)==(cL(c[t>>2]|0)|0)){if(0!=(Tb(c[(c[(c[k>>2]|0)+28>>2]|0)+(c[O>>2]<<2)>>2]|0,c[t>>2]|0,c[q>>2]|0)|0)){break}a[(c[(c[k>>2]|0)+32>>2]|0)+(c[O>>2]|0)>>0]=1;oc(c[t>>2]|0);c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]=0}}}while(0);c[H>>2]=(c[H>>2]|0)+1}c[O>>2]=(c[O>>2]|0)+1}c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[I>>2]|0)){break}if((c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]|0)!=0){c[N>>2]=c[(c[s>>2]|0)+(c[H>>2]<<2)>>2];da=wc(8184,N)|0;c[c[p>>2]>>2]=da;c[o>>2]=1}c[H>>2]=(c[H>>2]|0)+1}if((c[o>>2]|0)==0){if(((c[Q>>2]|0)==0|0)!=((c[P>>2]|0)==0|0)){c[L>>2]=(c[Q>>2]|0)==0?7896:7912;c[o>>2]=1;c[N>>2]=c[L>>2];da=wc(8208,N)|0;c[c[p>>2]>>2]=da}}da=tn(c[k>>2]|0,c[P>>2]|0,o)|0;c[(c[k>>2]|0)+216>>2]=da;da=un(c[k>>2]|0,c[Q>>2]|0,o)|0;c[(c[k>>2]|0)+220>>2]=da;if((c[o>>2]|0)==0){if((c[J>>2]|0)!=0){c[o>>2]=vn(c[k>>2]|0)|0}if((c[C>>2]|0)==0){if((c[J>>2]|0)==0){a[(c[k>>2]|0)+229>>0]=2}}wn(o,c[k>>2]|0);c[(c[k>>2]|0)+224>>2]=(c[(c[k>>2]|0)+236>>2]|0)-35;xn(o,c[k>>2]|0)}}}}else{K=7}}else{K=7}}while(0);if((K|0)==7){c[o>>2]=7}oc(c[M>>2]|0);oc(c[G>>2]|0);oc(c[Q>>2]|0);oc(c[P>>2]|0);oc(c[E>>2]|0);oc(c[F>>2]|0);c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[I>>2]|0)){break}oc(c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]|0);c[H>>2]=(c[H>>2]|0)+1}oc(c[v>>2]|0);oc(c[s>>2]|0);p=c[k>>2]|0;if((c[o>>2]|0)==0){c[c[m>>2]>>2]=p;da=c[o>>2]|0;i=l;return da|0}if((p|0)!=0){Ci(c[k>>2]|0)|0;da=c[o>>2]|0;i=l;return da|0}if((c[n>>2]|0)==0){da=c[o>>2]|0;i=l;return da|0}ub[c[(c[c[n>>2]>>2]|0)+8>>2]&63](c[n>>2]|0)|0;da=c[o>>2]|0;i=l;return da|0}function nn(b){b=b|0;var c=0,d=0;c=i;i=i+16|0;d=c;a[d>>0]=b;if((a[d>>0]&128|0)!=0){d=1;d=d&1;i=c;return d|0}d=(a[8960+(a[d>>0]|0)>>0]|0)!=0;d=d&1;i=c;return d|0}function on(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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;r=i;i=i+64|0;v=r;j=r+56|0;x=r+52|0;y=r+48|0;n=r+44|0;w=r+40|0;o=r+36|0;g=r+32|0;s=r+60|0;u=r+20|0;t=r+16|0;k=r+12|0;m=r+8|0;l=r+4|0;p=r+24|0;q=r+28|0;c[x>>2]=b;c[y>>2]=d;c[n>>2]=e;c[w>>2]=f;c[g>>2]=c[y>>2];c[s>>2]=0;c[v>>2]=c[y>>2];c[u>>2]=wc(1768,v)|0;if((c[u>>2]|0)==0){c[j>>2]=7;y=c[j>>2]|0;i=r;return y|0}b=cL(c[u>>2]|0)|0;c[t>>2]=(c[u>>2]|0)+b;c[g>>2]=sn(c[u>>2]|0,s)|0;a[(c[g>>2]|0)+(c[s>>2]|0)>>0]=0;yi(c[g>>2]|0);b=c[x>>2]|0;y=c[g>>2]|0;c[k>>2]=pi(b,y,(cL(c[g>>2]|0)|0)+1|0)|0;if((c[k>>2]|0)!=0){c[m>>2]=0;c[l>>2]=0;c[g>>2]=(c[g>>2]|0)+((c[s>>2]|0)+1);while(1){if(!((c[g>>2]|0)>>>0<(c[t>>2]|0)>>>0)){break}y=sn(c[g>>2]|0,s)|0;c[g>>2]=y;if(0==(y|0)){break}c[p>>2]=(c[l>>2]|0)+1<<2;c[q>>2]=qc(c[m>>2]|0,c[p>>2]|0)|0;if((c[q>>2]|0)==0){h=9;break}c[m>>2]=c[q>>2];b=c[g>>2]|0;y=c[l>>2]|0;c[l>>2]=y+1;c[(c[m>>2]|0)+(y<<2)>>2]=b;a[(c[g>>2]|0)+(c[s>>2]|0)>>0]=0;yi(c[g>>2]|0);c[g>>2]=(c[g>>2]|0)+((c[s>>2]|0)+1)}if((h|0)==9){oc(c[u>>2]|0);oc(c[m>>2]|0);c[j>>2]=7;y=c[j>>2]|0;i=r;return y|0}c[o>>2]=pb[c[(c[k>>2]|0)+4>>2]&31](c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if((c[o>>2]|0)!=0){y=wc(8936,v)|0;c[c[w>>2]>>2]=y}else{c[c[c[n>>2]>>2]>>2]=c[k>>2]}oc(c[m>>2]|0)}else{c[v>>2]=c[g>>2];y=wc(4032,v)|0;c[c[w>>2]>>2]=y;c[o>>2]=1}oc(c[u>>2]|0);c[j>>2]=c[o>>2];y=c[j>>2]|0;i=r;return y|0}function pn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;o=k;j=k+24|0;l=k+4|0;f=k+8|0;h=k+12|0;m=k+16|0;n=k+20|0;c[l>>2]=b;c[f>>2]=d;c[h>>2]=e;c[n>>2]=c[l>>2];while(1){e=c[n>>2]|0;if((a[c[n>>2]>>0]|0)==61){break}if((a[e>>0]|0)==0){g=4;break}c[n>>2]=(c[n>>2]|0)+1}if((g|0)==4){c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}c[c[f>>2]>>2]=e-(c[l>>2]|0);c[o>>2]=(c[n>>2]|0)+1;c[m>>2]=wc(1768,o)|0;if((c[m>>2]|0)!=0){yi(c[m>>2]|0)}c[c[h>>2]>>2]=c[m>>2];c[j>>2]=1;b=c[j>>2]|0;i=k;return b|0}function qn(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,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;j=i;i=i+80|0;y=j;x=j+68|0;z=j+64|0;A=j+60|0;q=j+56|0;m=j+52|0;o=j+48|0;s=j+44|0;w=j+40|0;k=j+72|0;p=j+28|0;n=j+24|0;l=j+20|0;r=j+16|0;v=j+12|0;u=j+8|0;h=j+32|0;t=j+36|0;c[x>>2]=a;c[z>>2]=b;c[A>>2]=d;c[q>>2]=e;c[m>>2]=f;c[o>>2]=g;c[s>>2]=0;c[k>>2]=0;a=c[A>>2]|0;c[y>>2]=c[z>>2];c[y+4>>2]=a;c[w>>2]=wc(8912,y)|0;if((c[w>>2]|0)!=0){c[s>>2]=Gf(c[x>>2]|0,c[w>>2]|0,-1,k,0)|0}else{c[s>>2]=7}oc(c[w>>2]|0);if((c[s>>2]|0)!=0){A=c[s>>2]|0;i=j;return A|0}c[n>>2]=0;c[l>>2]=we(c[k>>2]|0)|0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[l>>2]|0)){break}c[v>>2]=Ie(c[k>>2]|0,c[r>>2]|0)|0;A=(cL(c[v>>2]|0)|0)+1|0;c[n>>2]=(c[n>>2]|0)+A;c[r>>2]=(c[r>>2]|0)+1}c[p>>2]=mc((c[l>>2]<<2)+(c[n>>2]|0)|0)|0;a:do{if((c[p>>2]|0)==0){c[s>>2]=7}else{c[u>>2]=(c[p>>2]|0)+(c[l>>2]<<2);c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[l>>2]|0)){break a}c[h>>2]=Ie(c[k>>2]|0,c[r>>2]|0)|0;c[t>>2]=(cL(c[h>>2]|0)|0)+1;fL(c[u>>2]|0,c[h>>2]|0,c[t>>2]|0)|0;c[(c[p>>2]|0)+(c[r>>2]<<2)>>2]=c[u>>2];c[u>>2]=(c[u>>2]|0)+(c[t>>2]|0);c[r>>2]=(c[r>>2]|0)+1}}}while(0);yd(c[k>>2]|0)|0;c[c[m>>2]>>2]=c[l>>2];c[c[o>>2]>>2]=c[n>>2];c[c[q>>2]>>2]=c[p>>2];A=c[s>>2]|0;i=j;return A|0}function rn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+48|0;m=g+36|0;f=g+32|0;p=g+28|0;o=g+24|0;n=g+20|0;l=g+16|0;q=g+8|0;h=g+4|0;k=g;j=g+12|0;c[f>>2]=b;c[p>>2]=d;c[o>>2]=e;c[l>>2]=1;a:do{if((c[f>>2]|0)!=0){if((a[c[f>>2]>>0]|0)!=0){c[l>>2]=(c[l>>2]|0)+1;c[q>>2]=c[f>>2];while(1){if((a[c[q>>2]>>0]|0)==0){break a}if((a[c[q>>2]>>0]|0)==44){c[l>>2]=(c[l>>2]|0)+1}c[q>>2]=(c[q>>2]|0)+1}}}}while(0);c[n>>2]=mc((c[l>>2]|0)*24|0)|0;c[c[o>>2]>>2]=c[n>>2];c[c[p>>2]>>2]=c[l>>2];if((c[n>>2]|0)==0){c[m>>2]=7;b=c[m>>2]|0;i=g;return b|0}aL(c[n>>2]|0,0,(c[l>>2]|0)*24|0)|0;b:do{if((c[f>>2]|0)!=0){c[h>>2]=c[f>>2];c[k>>2]=1;while(1){if((c[k>>2]|0)>=(c[l>>2]|0)){break b}if((An(h,j)|0)!=0){break}c[(c[n>>2]|0)+((c[k>>2]|0)*24|0)>>2]=c[j>>2];c[h>>2]=(c[h>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+1}c[m>>2]=1;b=c[m>>2]|0;i=g;return b|0}}while(0);c[m>>2]=0;b=c[m>>2]|0;i=g;return b|0}function sn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;g=h+16|0;l=h;f=h+4|0;e=h+8|0;j=h+12|0;k=h+20|0;c[l>>2]=b;c[f>>2]=d;c[j>>2]=0;c[e>>2]=c[l>>2];a:while(1){if((c[j>>2]|0)!=0){k=21;break}a[k>>0]=a[c[e>>2]>>0]|0;switch(a[k>>0]|0){case 0:{k=4;break a};case 91:{c[j>>2]=(c[e>>2]|0)+1;while(1){if((a[c[j>>2]>>0]|0)!=0){b=(a[c[j>>2]>>0]|0)!=93}else{b=0}d=c[j>>2]|0;if(!b){break}c[j>>2]=d+1}if((a[d>>0]|0)==0){continue a}c[j>>2]=(c[j>>2]|0)+1;continue a};case 96:case 34:case 39:{c[j>>2]=c[e>>2];while(1){l=(c[j>>2]|0)+1|0;c[j>>2]=l;if((a[l>>0]|0)==0){continue a}if((a[c[j>>2]>>0]|0)!=(a[k>>0]|0)){continue}l=(c[j>>2]|0)+1|0;c[j>>2]=l;if((a[l>>0]|0)!=(a[k>>0]|0)){continue a}}};default:{l=(nn(a[c[e>>2]>>0]|0)|0)!=0;d=(c[e>>2]|0)+1|0;if(!l){c[e>>2]=d;continue a}c[j>>2]=d;while(1){if((nn(a[c[j>>2]>>0]|0)|0)==0){continue a}c[j>>2]=(c[j>>2]|0)+1}}}}if((k|0)==4){c[g>>2]=0;l=c[g>>2]|0;i=h;return l|0}else if((k|0)==21){c[c[f>>2]>>2]=(c[j>>2]|0)-(c[e>>2]|0);c[g>>2]=c[e>>2];l=c[g>>2]|0;i=h;return l|0}return 0}function tn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;e=g;h=g+36|0;n=g+12|0;k=g+16|0;f=g+20|0;l=g+24|0;m=g+28|0;j=g+32|0;c[h>>2]=a;c[n>>2]=b;c[k>>2]=d;c[f>>2]=0;c[l>>2]=0;if((c[(c[h>>2]|0)+40>>2]|0)==0){if((c[n>>2]|0)!=0){a=yn(c[n>>2]|0)|0;c[m>>2]=a;c[l>>2]=a}else{c[m>>2]=1784}zn(c[k>>2]|0,f,8808,e);c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[h>>2]|0)+24>>2]|0)){break}a=c[k>>2]|0;n=c[j>>2]|0;b=c[(c[(c[h>>2]|0)+28>>2]|0)+(c[j>>2]<<2)>>2]|0;c[e>>2]=c[m>>2];c[e+4>>2]=n;c[e+8>>2]=b;zn(a,f,8816,e);c[j>>2]=(c[j>>2]|0)+1}if((c[(c[h>>2]|0)+44>>2]|0)!=0){a=c[k>>2]|0;c[e>>2]=8840;zn(a,f,8832,e)}oc(c[l>>2]|0)}else{zn(c[k>>2]|0,f,8848,e);c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[h>>2]|0)+24>>2]|0)){break}a=c[k>>2]|0;c[e>>2]=c[(c[(c[h>>2]|0)+28>>2]|0)+(c[j>>2]<<2)>>2];zn(a,f,8856,e);c[j>>2]=(c[j>>2]|0)+1}if((c[(c[h>>2]|0)+44>>2]|0)!=0){a=c[k>>2]|0;c[e>>2]=c[(c[h>>2]|0)+44>>2];zn(a,f,8832,e)}}j=c[k>>2]|0;k=c[(c[h>>2]|0)+16>>2]|0;l=c[h>>2]|0;if((c[(c[h>>2]|0)+40>>2]|0)!=0){n=c[l+40>>2]|0;b=c[h>>2]|0;b=b+40|0;b=c[b>>2]|0;b=(b|0)!=0;b=b?1784:8896;c[e>>2]=k;a=e+4|0;c[a>>2]=n;a=e+8|0;c[a>>2]=b;zn(j,f,8872,e);a=c[f>>2]|0;i=g;return a|0}else{n=c[l+20>>2]|0;b=c[h>>2]|0;b=b+40|0;b=c[b>>2]|0;b=(b|0)!=0;b=b?1784:8896;c[e>>2]=k;a=e+4|0;c[a>>2]=n;a=e+8|0;c[a>>2]=b;zn(j,f,8872,e);a=c[f>>2]|0;i=g;return a|0}return 0} + + + +function BG(d){d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=d;c[g>>2]=c[c[f>>2]>>2];Gd(c[f>>2]|0);d=$e(c[g>>2]|0,64)|0;c[(c[f>>2]|0)+36>>2]=d;if((a[(c[g>>2]|0)+64>>0]|0)!=0){b[(c[f>>2]|0)+28>>1]=1;i=e;return}else{h=c[g>>2]|0;d=c[(c[f>>2]|0)+36>>2]|0;g=HH(h,d,Vv(c[g>>2]|0,c[(c[f>>2]|0)+36>>2]|0)|0)|0;c[(c[f>>2]|0)+16>>2]=g;b[(c[f>>2]|0)+28>>1]=32;i=e;return}}function CG(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;k=g+16|0;h=g;l=g+8|0;j=g+12|0;c[k>>2]=a;a=h;c[a>>2]=d;c[a+4>>2]=f;c[l>>2]=EH(c[k>>2]|0)|0;if((c[l>>2]|0)==0){i=g;return}f=h;d=c[f+4>>2]|0;a=c[l>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=d;c[(c[l>>2]|0)+8>>2]=0;c[j>>2]=c[(c[k>>2]|0)+12>>2];if((c[j>>2]|0)!=0){if((b[(c[k>>2]|0)+26>>1]&1|0)!=0){d=h;f=c[d+4>>2]|0;a=c[j>>2]|0;h=c[a+4>>2]|0;if((f|0)<(h|0)|((f|0)==(h|0)?(c[d>>2]|0)>>>0<=(c[a>>2]|0)>>>0:0)){a=(c[k>>2]|0)+26|0;b[a>>1]=(e[a>>1]|0)&-2}}c[(c[j>>2]|0)+8>>2]=c[l>>2]}else{c[(c[k>>2]|0)+8>>2]=c[l>>2]}c[(c[k>>2]|0)+12>>2]=c[l>>2];i=g;return}function DG(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+8|0;g=f;h=f+4|0;c[g>>2]=a;c[h>>2]=d;if((b[(c[g>>2]|0)+26>>1]&2|0)==0){GH(c[g>>2]|0)}if((c[(c[g>>2]|0)+8>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=f;return a|0}j=c[(c[g>>2]|0)+8>>2]|0;d=c[j+4>>2]|0;a=c[h>>2]|0;c[a>>2]=c[j>>2];c[a+4>>2]=d;c[(c[g>>2]|0)+8>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2];if((c[(c[g>>2]|0)+8>>2]|0)==0){uF(c[g>>2]|0)}c[e>>2]=1;j=c[e>>2]|0;i=f;return j|0}function EG(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+48|0;l=h+36|0;q=h+32|0;n=h+28|0;k=h;j=h+16|0;m=h+20|0;o=h+8|0;r=h+12|0;s=h+24|0;c[q>>2]=a;c[n>>2]=d;a=k;c[a>>2]=f;c[a+4>>2]=g;if((c[n>>2]|0)!=(c[(c[q>>2]|0)+28>>2]|0)){c[j>>2]=c[(c[q>>2]|0)+8>>2];if((c[j>>2]|0)!=0){c[o>>2]=(c[q>>2]|0)+20;if((b[(c[q>>2]|0)+26>>1]&1|0)==0){c[j>>2]=AH(c[j>>2]|0)|0}c[m>>2]=c[(c[q>>2]|0)+20>>2];while(1){if((c[m>>2]|0)==0){break}c[o>>2]=(c[m>>2]|0)+8;if((c[(c[m>>2]|0)+12>>2]|0)==0){p=8;break}CH(c[(c[m>>2]|0)+12>>2]|0,r,s);c[(c[m>>2]|0)+12>>2]=0;c[j>>2]=DH(c[r>>2]|0,c[j>>2]|0)|0;c[m>>2]=c[(c[m>>2]|0)+8>>2]}if((p|0)==8){a=BH(c[j>>2]|0)|0;c[(c[m>>2]|0)+12>>2]=a}if((c[m>>2]|0)==0){a=EH(c[q>>2]|0)|0;c[m>>2]=a;c[c[o>>2]>>2]=a;if((c[m>>2]|0)!=0){a=c[m>>2]|0;c[a>>2]=0;c[a+4>>2]=0;c[(c[m>>2]|0)+8>>2]=0;a=BH(c[j>>2]|0)|0;c[(c[m>>2]|0)+12>>2]=a}}c[(c[q>>2]|0)+8>>2]=0;c[(c[q>>2]|0)+12>>2]=0;a=(c[q>>2]|0)+26|0;b[a>>1]=e[a>>1]|0|1}c[(c[q>>2]|0)+28>>2]=c[n>>2]}c[m>>2]=c[(c[q>>2]|0)+20>>2];a:while(1){if((c[m>>2]|0)==0){p=25;break}c[j>>2]=c[(c[m>>2]|0)+12>>2];while(1){if((c[j>>2]|0)==0){break}d=c[j>>2]|0;g=c[d+4>>2]|0;a=k;f=c[a+4>>2]|0;n=c[j>>2]|0;if((g|0)<(f|0)|((g|0)==(f|0)?(c[d>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)){c[j>>2]=c[n+8>>2];continue}d=n;g=c[d+4>>2]|0;a=k;f=c[a+4>>2]|0;if(!((g|0)>(f|0)|((g|0)==(f|0)?(c[d>>2]|0)>>>0>(c[a>>2]|0)>>>0:0))){p=23;break a}c[j>>2]=c[(c[j>>2]|0)+12>>2]}c[m>>2]=c[(c[m>>2]|0)+8>>2]}if((p|0)==23){c[l>>2]=1;a=c[l>>2]|0;i=h;return a|0}else if((p|0)==25){c[l>>2]=0;a=c[l>>2]|0;i=h;return a|0}return 0}function FG(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;e=b+4|0;f=b;c[f>>2]=a;if((d[(c[f>>2]|0)+16>>0]|0|0)>=3){c[e>>2]=0;f=c[e>>2]|0;i=b;return f|0}if((c[c[(c[f>>2]|0)+64>>2]>>2]|0)!=0){f=(c[f>>2]|0)+72|0;a=c[f+4>>2]|0;if((a|0)>0|(a|0)==0&(c[f>>2]|0)>>>0>0){c[e>>2]=0;f=c[e>>2]|0;i=b;return f|0}}c[e>>2]=1;f=c[e>>2]|0;i=b;return f|0}function GG(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;f=b+4|0;e=b;c[f>>2]=a;c[e>>2]=c[c[(c[f>>2]|0)+60>>2]>>2];if((d[(c[f>>2]|0)+4>>0]|0|0)!=0){f=1;f=f&1;i=b;return f|0}if((c[c[e>>2]>>2]|0)<2){f=0;f=f&1;i=b;return f|0}f=(c[(c[e>>2]|0)+52>>2]|0)!=0;f=f&1;i=b;return f|0}function HG(a){a=a|0;var b=0,e=0,f=0,g=0;g=i;i=i+16|0;e=g+8|0;b=g;f=g+4|0;c[e>>2]=a;c[b>>2]=0;if((c[(c[e>>2]|0)+208>>2]|0)==0){c[f>>2]=0;c[b>>2]=ar(c[e>>2]|0,1)|0;if((c[b>>2]|0)==0){c[b>>2]=op(c[c[e>>2]>>2]|0,c[(c[e>>2]|0)+212>>2]|0,0,f)|0}if((c[b>>2]|0)==0){if((c[f>>2]|0)!=0){c[b>>2]=vH(c[e>>2]|0)|0}}}if((c[b>>2]|0)!=0){f=c[b>>2]|0;i=g;return f|0}if((c[(c[e>>2]|0)+208>>2]|0)==0){f=c[b>>2]|0;i=g;return f|0}c[b>>2]=wH(c[e>>2]|0)|0;if((c[b>>2]|0)!=0){f=c[b>>2]|0;i=g;return f|0}c[b>>2]=Fo(c[(c[e>>2]|0)+208>>2]|0,d[(c[e>>2]|0)+9>>0]|0,c[(c[e>>2]|0)+152>>2]|0,c[(c[e>>2]|0)+200>>2]|0)|0;c[(c[e>>2]|0)+208>>2]=0;ih(c[e>>2]|0);f=c[b>>2]|0;i=g;return f|0}function IG(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+12|0;k=f;l=f+16|0;h=f+8|0;j=f+4|0;c[g>>2]=b;c[k>>2]=e;a[l>>0]=a[(c[g>>2]|0)+5>>0]|0;if((a[(c[g>>2]|0)+15>>0]|0)!=0){if((c[k>>2]|0)!=4&(c[k>>2]|0)!=2){c[k>>2]=d[l>>0]|0}}do{if((c[k>>2]|0)!=(d[l>>0]|0)){a[(c[g>>2]|0)+5>>0]=c[k>>2];if((a[(c[g>>2]|0)+4>>0]|0)==0){if((a[l>>0]&5|0)==1){if((c[k>>2]&1|0)==0){Ko(c[(c[g>>2]|0)+64>>2]|0)|0;if((d[(c[g>>2]|0)+17>>0]|0)>=2){So(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+172>>2]|0,0)|0;break}c[h>>2]=0;c[j>>2]=d[(c[g>>2]|0)+16>>0]|0;if((c[j>>2]|0)==0){c[h>>2]=nH(c[g>>2]|0)|0}if((d[(c[g>>2]|0)+16>>0]|0)==1){c[h>>2]=ar(c[g>>2]|0,2)|0}if((c[h>>2]|0)==0){So(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+172>>2]|0,0)|0}if((c[h>>2]|0)==0){if((c[j>>2]|0)==1){Yo(c[g>>2]|0,1)|0;break}}if((c[j>>2]|0)==0){Go(c[g>>2]|0)}}}}}}while(0);i=f;return d[(c[g>>2]|0)+5>>0]|0}function JG(b,e){b=b|0;e=e|0;var f=0,g=0,h=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;q=i;i=i+80|0;v=q;n=q+64|0;u=q+60|0;h=q+56|0;g=q+52|0;o=q+48|0;s=q+44|0;x=q+40|0;k=q+36|0;l=q+68|0;m=q+24|0;f=q+20|0;p=q+16|0;w=q+12|0;j=q+8|0;y=q+4|0;t=q+28|0;r=q+32|0;c[u>>2]=b;c[h>>2]=e;c[g>>2]=0;c[x>>2]=0;c[p>>2]=0;if((a[(c[h>>2]|0)+62>>0]|0)==0){$t(c[u>>2]|0,c[h>>2]|0,38552,v);c[n>>2]=1;b=c[n>>2]|0;i=q;return b|0}if((c[(c[h>>2]|0)+140>>2]|0)>1){$t(c[u>>2]|0,c[h>>2]|0,38592,v);c[n>>2]=1;b=c[n>>2]|0;i=q;return b|0}c[k>>2]=c[(c[h>>2]|0)+24>>2];c[l>>2]=c[(c[h>>2]|0)+80>>2];c[m>>2]=c[(c[h>>2]|0)+84>>2];c[f>>2]=c[(c[h>>2]|0)+164>>2];b=(c[h>>2]|0)+24|0;c[b>>2]=c[b>>2]|2107392;b=(c[h>>2]|0)+24|0;c[b>>2]=c[b>>2]&-655361;c[(c[h>>2]|0)+164>>2]=0;c[o>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+4>>2];c[w>>2]=gH(Zb(c[o>>2]|0)|0)|0;c[y>>2]=c[(c[h>>2]|0)+20>>2];if((po(c[h>>2]|0)|0)!=0){c[x>>2]=38640}else{c[x>>2]=38672}c[g>>2]=hH(c[h>>2]|0,c[u>>2]|0,c[x>>2]|0)|0;if((c[(c[h>>2]|0)+20>>2]|0)>(c[y>>2]|0)){c[p>>2]=(c[(c[h>>2]|0)+16>>2]|0)+((c[(c[h>>2]|0)+20>>2]|0)-1<<4)}a:do{if((c[g>>2]|0)==0){c[s>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+((c[(c[h>>2]|0)+20>>2]|0)-1<<4)+4>>2];Ny(c[s>>2]|0)|0;c[j>>2]=iH(c[o>>2]|0)|0;c[g>>2]=hH(c[h>>2]|0,c[u>>2]|0,38696)|0;if((c[g>>2]|0)==0){c[g>>2]=hH(c[h>>2]|0,c[u>>2]|0,38736)|0;if((c[g>>2]|0)==0){c[g>>2]=Wc(c[o>>2]|0,2)|0;if((c[g>>2]|0)==0){if((_c(Zb(c[o>>2]|0)|0)|0)==5){c[(c[h>>2]|0)+72>>2]=0}y=c[s>>2]|0;b=Zc(c[o>>2]|0)|0;do{if((Ig(y,b,c[j>>2]|0,0)|0)==0){if((c[w>>2]|0)==0){if((Ig(c[s>>2]|0,c[(c[h>>2]|0)+72>>2]|0,c[j>>2]|0,0)|0)!=0){break}}if((d[(c[h>>2]|0)+64>>0]|0)==0){v=c[s>>2]|0;if((a[(c[h>>2]|0)+66>>0]|0)>=0){e=a[(c[h>>2]|0)+66>>0]|0}else{e=xA(c[o>>2]|0)|0}zA(v,e)|0;c[g>>2]=jH(c[h>>2]|0,c[u>>2]|0,38744)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=jH(c[h>>2]|0,c[u>>2]|0,38896)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=jH(c[h>>2]|0,c[u>>2]|0,39e3)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=jH(c[h>>2]|0,c[u>>2]|0,39120)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=jH(c[h>>2]|0,c[u>>2]|0,39320)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=jH(c[h>>2]|0,c[u>>2]|0,39440)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=hH(c[h>>2]|0,c[u>>2]|0,39600)|0;if((c[g>>2]|0)!=0){break a}c[r>>2]=0;while(1){u=c[o>>2]|0;if((c[r>>2]|0)>=10){break}Xc(u,d[39784+(c[r>>2]|0)>>0]|0,t);c[g>>2]=gd(c[s>>2]|0,d[39784+(c[r>>2]|0)>>0]|0,(c[t>>2]|0)+(d[(c[r>>2]|0)+39785>>0]|0)|0)|0;if((c[g>>2]|0)!=0){break a}c[r>>2]=(c[r>>2]|0)+2}c[g>>2]=kH(u,c[s>>2]|0)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=Ny(c[s>>2]|0)|0;if((c[g>>2]|0)!=0){break a}y=c[o>>2]|0;zA(y,xA(c[s>>2]|0)|0)|0;y=c[o>>2]|0;b=Zc(c[s>>2]|0)|0;c[g>>2]=Ig(y,b,c[j>>2]|0,1)|0;break a}}}while(0);c[g>>2]=7}}}}}while(0);c[(c[h>>2]|0)+24>>2]=c[k>>2];c[(c[h>>2]|0)+80>>2]=c[l>>2];c[(c[h>>2]|0)+84>>2]=c[m>>2];c[(c[h>>2]|0)+164>>2]=c[f>>2];Ig(c[o>>2]|0,-1,-1,1)|0;a[(c[h>>2]|0)+62>>0]=1;if((c[p>>2]|0)!=0){zr(c[(c[p>>2]|0)+4>>2]|0)|0;c[(c[p>>2]|0)+4>>2]=0;c[(c[p>>2]|0)+12>>2]=0}hd(c[h>>2]|0);c[n>>2]=c[g>>2];b=c[n>>2]|0;i=q;return b|0}function KG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;k=d+20|0;e=d;f=d+4|0;h=d+8|0;j=d+12|0;g=d+16|0;c[k>>2]=b;c[f>>2]=c[(c[k>>2]|0)+4>>2];Uc(c[k>>2]|0);if((a[(c[f>>2]|0)+17>>0]|0)==0){c[e>>2]=101;k=c[e>>2]|0;i=d;return k|0}c[h>>2]=dD(c[f>>2]|0)|0;c[j>>2]=zo((c[(c[(c[f>>2]|0)+12>>2]|0)+56>>2]|0)+36|0)|0;c[g>>2]=WG(c[f>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;if((c[h>>2]|0)>>>0<(c[g>>2]|0)>>>0){c[e>>2]=dq(54318)|0;k=c[e>>2]|0;i=d;return k|0}if(!((c[j>>2]|0)>>>0>0)){c[e>>2]=101;k=c[e>>2]|0;i=d;return k|0}c[e>>2]=hF(c[f>>2]|0,0,0)|0;if((c[e>>2]|0)==0){XG(c[f>>2]|0);c[e>>2]=YG(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,0)|0}if((c[e>>2]|0)!=0){k=c[e>>2]|0;i=d;return k|0}c[e>>2]=ld(c[(c[(c[f>>2]|0)+12>>2]|0)+68>>2]|0)|0;Xq((c[(c[(c[f>>2]|0)+12>>2]|0)+56>>2]|0)+28|0,c[(c[f>>2]|0)+44>>2]|0);k=c[e>>2]|0;i=d;return k|0}function LG(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+16|0;j=g+8|0;k=g;m=g+13|0;h=g+4|0;l=g+12|0;c[j>>2]=b;c[k>>2]=e;a[m>>0]=f;c[h>>2]=0;if((a[(c[j>>2]|0)+9>>0]|0)==0){b=c[h>>2]|0;i=g;return b|0}a[l>>0]=1+(d[m>>0]|0);Uc(c[j>>2]|0);c[h>>2]=bF(c[j>>2]|0,c[k>>2]|0,a[l>>0]|0)|0;if((c[h>>2]|0)!=0){b=c[h>>2]|0;i=g;return b|0}c[h>>2]=VG(c[j>>2]|0,c[k>>2]|0,a[l>>0]|0)|0;b=c[h>>2]|0;i=g;return b|0}function MG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;h=e;k=e+4|0;j=e+8|0;l=e+12|0;g=e+16|0;c[h>>2]=a;c[k>>2]=b;c[j>>2]=0;if((c[(c[h>>2]|0)+296>>2]|0)>0){if((c[(c[h>>2]|0)+320>>2]|0)==0){c[f>>2]=6;a=c[f>>2]|0;i=e;return a|0}}if((c[k>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}c[l>>2]=c[c[(c[k>>2]|0)+8>>2]>>2];if((c[(c[l>>2]|0)+56>>2]|0)!=0){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[h>>2]|0)+296>>2]|0)){break}if((c[(c[(c[h>>2]|0)+320>>2]|0)+(c[g>>2]<<2)>>2]|0)==(c[k>>2]|0)){d=10;break}c[g>>2]=(c[g>>2]|0)+1}if((d|0)==10){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}c[j>>2]=TG(c[h>>2]|0)|0;if((c[j>>2]|0)==0){c[j>>2]=ub[c[(c[l>>2]|0)+56>>2]&63](c[(c[k>>2]|0)+8>>2]|0)|0;if((c[j>>2]|0)==0){UG(c[h>>2]|0,c[k>>2]|0)}}}c[f>>2]=c[j>>2];a=c[f>>2]|0;i=e;return a|0}function NG(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+48|0;m=g;h=g+28|0;o=g+24|0;p=g+20|0;k=g+32|0;l=g+8|0;j=g+4|0;f=g+12|0;n=g+16|0;c[h>>2]=a;c[o>>2]=b;c[p>>2]=d;c[k>>2]=e;c[l>>2]=0;c[j>>2]=cw(c[h>>2]|0,c[p>>2]|0,c[(c[(c[h>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2]|0)|0;c[n>>2]=c[c[(c[j>>2]|0)+56>>2]>>2];a=(c[h>>2]|0)+300|0;e=c[n>>2]|0;c[f>>2]=zh(a,e,Ub(c[n>>2]|0)|0)|0;e=c[h>>2]|0;if((c[f>>2]|0)!=0){c[l>>2]=fy(e,c[j>>2]|0,c[f>>2]|0,c[(c[c[f>>2]>>2]|0)+4>>2]|0,c[k>>2]|0)|0}else{c[m>>2]=c[n>>2];p=cf(e,24464,m)|0;c[c[k>>2]>>2]=p;c[l>>2]=1}if((c[l>>2]|0)!=0){p=c[l>>2]|0;i=g;return p|0}if((ww(c[h>>2]|0,c[j>>2]|0)|0)==0){p=c[l>>2]|0;i=g;return p|0}c[l>>2]=TG(c[h>>2]|0)|0;if((c[l>>2]|0)!=0){p=c[l>>2]|0;i=g;return p|0}p=c[h>>2]|0;UG(p,ww(c[h>>2]|0,c[j>>2]|0)|0);p=c[l>>2]|0;i=g;return p|0}function OG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;g=e+20|0;k=e;l=e+4|0;f=e+8|0;h=e+12|0;j=e+16|0;c[g>>2]=a;c[k>>2]=b;c[l>>2]=d;c[f>>2]=0;c[h>>2]=cw(c[g>>2]|0,c[l>>2]|0,c[(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<4)>>2]|0)|0;if((c[h>>2]|0)==0){l=c[f>>2]|0;i=e;return l|0}if((c[(c[h>>2]|0)+60>>2]|0)==0){l=c[f>>2]|0;i=e;return l|0}c[j>>2]=gF(c[g>>2]|0,c[h>>2]|0)|0;c[f>>2]=ub[c[(c[c[(c[j>>2]|0)+4>>2]>>2]|0)+20>>2]&63](c[(c[j>>2]|0)+8>>2]|0)|0;if((c[f>>2]|0)!=0){l=c[f>>2]|0;i=e;return l|0}c[(c[j>>2]|0)+8>>2]=0;c[(c[h>>2]|0)+60>>2]=0;Cr(c[j>>2]|0);l=c[f>>2]|0;i=e;return l|0}function PG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;d=e+4|0;c[g>>2]=a;c[f>>2]=b;Uc(c[g>>2]|0);c[d>>2]=SG(c[c[(c[g>>2]|0)+4>>2]>>2]|0,c[f>>2]|0)|0;i=e;return c[d>>2]|0}function QG(e,f){e=e|0;f=f|0;var g=0,j=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;g=i;i=i+240|0;s=g+40|0;p=g+116|0;t=g+112|0;r=g+108|0;n=g+104|0;o=g+100|0;l=g+96|0;m=g+88|0;y=g+120|0;q=g+80|0;j=g+52|0;z=g+48|0;w=g+92|0;u=g+124|0;v=g;x=g+84|0;c[p>>2]=e;c[t>>2]=f;c[n>>2]=0;c[o>>2]=1;c[r>>2]=c[c[p>>2]>>2];tc(j,g+128|0,100,c[(c[r>>2]|0)+88>>2]|0);c[j>>2]=c[r>>2];if((c[(c[r>>2]|0)+152>>2]|0)>1){while(1){if((a[c[t>>2]>>0]|0)==0){break}c[z>>2]=c[t>>2];do{e=c[t>>2]|0;c[t>>2]=e+1;if((a[e>>0]|0)==10){break}}while((a[c[t>>2]>>0]|0)!=0);Jt(j,38496,3);Jt(j,c[z>>2]|0,(c[t>>2]|0)-(c[z>>2]|0)|0)}e=vc(j)|0;i=g;return e|0}while(1){if((a[c[t>>2]>>0]|0)==0){l=31;break}c[l>>2]=RG(c[t>>2]|0,m)|0;Jt(j,c[t>>2]|0,c[l>>2]|0);c[t>>2]=(c[t>>2]|0)+(c[l>>2]|0);if((c[m>>2]|0)==0){l=31;break}do{if((a[c[t>>2]>>0]|0)==63){if((c[m>>2]|0)>1){Wg((c[t>>2]|0)+1|0,n)|0;break}else{c[n>>2]=c[o>>2];break}}else{c[n>>2]=We(c[p>>2]|0,c[t>>2]|0,c[m>>2]|0)|0}}while(0);c[t>>2]=(c[t>>2]|0)+(c[m>>2]|0);c[o>>2]=(c[n>>2]|0)+1;c[q>>2]=(c[(c[p>>2]|0)+60>>2]|0)+(((c[n>>2]|0)-1|0)*40|0);if((b[(c[q>>2]|0)+28>>1]&1|0)!=0){Jt(j,16376,4);continue}z=c[q>>2]|0;if((b[(c[q>>2]|0)+28>>1]&4|0)!=0){z=z+16|0;f=c[z+4>>2]|0;e=s;c[e>>2]=c[z>>2];c[e+4>>2]=f;Wt(j,0,15992,s);continue}f=c[q>>2]|0;if((b[z+28>>1]&8|0)!=0){h[k>>3]=+h[f+8>>3];c[s>>2]=c[k>>2];c[s+4>>2]=c[k+4>>2];Wt(j,0,16344,s);continue}if((b[f+28>>1]&2|0)!=0){a[u>>0]=a[(c[(c[(c[r>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;if((d[u>>0]|0)!=1){f=v+0|0;z=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(z|0));c[v>>2]=c[r>>2];Yd(v,c[(c[q>>2]|0)+4>>2]|0,c[(c[q>>2]|0)+24>>2]|0,a[u>>0]|0,0)|0;sr(v,1)|0;c[q>>2]=v}c[w>>2]=c[(c[q>>2]|0)+24>>2];e=c[(c[q>>2]|0)+4>>2]|0;c[s>>2]=c[w>>2];c[s+4>>2]=e;Wt(j,0,38504,s);if((d[u>>0]|0)==1){continue}Gd(v);continue}if((b[(c[q>>2]|0)+28>>1]&16384|0)!=0){c[s>>2]=c[(c[q>>2]|0)+16>>2];Wt(j,0,38512,s);continue}Jt(j,38528,2);c[x>>2]=c[(c[q>>2]|0)+24>>2];c[y>>2]=0;while(1){if((c[y>>2]|0)>=(c[x>>2]|0)){break}c[s>>2]=a[(c[(c[q>>2]|0)+4>>2]|0)+(c[y>>2]|0)>>0]&255;Wt(j,0,38536,s);c[y>>2]=(c[y>>2]|0)+1}Jt(j,38544,1)}if((l|0)==31){e=vc(j)|0;i=g;return e|0}return 0}function RG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;j=g+16|0;h=g;k=g+4|0;f=g+8|0;l=g+12|0;c[j>>2]=b;c[h>>2]=d;c[f>>2]=0;c[c[h>>2]>>2]=0;while(1){if((a[c[j>>2]>>0]|0)==0){e=6;break}c[l>>2]=et(c[j>>2]|0,k)|0;d=c[l>>2]|0;if((c[k>>2]|0)==135){break}c[f>>2]=(c[f>>2]|0)+d;c[j>>2]=(c[j>>2]|0)+(c[l>>2]|0)}if((e|0)==6){b=c[f>>2]|0;i=g;return b|0}c[c[h>>2]>>2]=d;b=c[f>>2]|0;i=g;return b|0}function SG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+4|0;f=e;c[d>>2]=a;c[f>>2]=b;if((c[f>>2]|0)>0){c[(c[d>>2]|0)+156>>2]=c[f>>2]}i=e;return c[(c[d>>2]|0)+156>>2]|0}function TG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+32|0;d=b+16|0;e=b;f=b+8|0;g=b+12|0;c[e>>2]=a;c[b+4>>2]=5;do{if(((c[(c[e>>2]|0)+296>>2]|0)%5|0|0)==0){c[g>>2]=(c[(c[e>>2]|0)+296>>2]|0)+5<<2;c[f>>2]=Ot(c[e>>2]|0,c[(c[e>>2]|0)+320>>2]|0,c[g>>2]|0)|0;if((c[f>>2]|0)!=0){g=(c[f>>2]|0)+(c[(c[e>>2]|0)+296>>2]<<2)|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[(c[e>>2]|0)+320>>2]=c[f>>2];break}c[d>>2]=7;g=c[d>>2]|0;i=b;return g|0}}while(0);c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}function UG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;b=c[e>>2]|0;g=(c[f>>2]|0)+296|0;a=c[g>>2]|0;c[g>>2]=a+1;c[(c[(c[f>>2]|0)+320>>2]|0)+(a<<2)>>2]=b;qF(c[e>>2]|0);i=d;return}function VG(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;g=o+20|0;l=o;k=o+4|0;n=o+24|0;m=o+12|0;j=o+16|0;p=o+8|0;c[l>>2]=b;c[k>>2]=e;a[n>>0]=f;c[m>>2]=c[(c[l>>2]|0)+4>>2];c[j>>2]=0;c[p>>2]=c[(c[m>>2]|0)+72>>2];while(1){if((c[p>>2]|0)==0){break}if((c[(c[p>>2]|0)+4>>2]|0)==(c[k>>2]|0)){if((c[c[p>>2]>>2]|0)==(c[l>>2]|0)){h=5;break}}c[p>>2]=c[(c[p>>2]|0)+12>>2]}if((h|0)==5){c[j>>2]=c[p>>2]}do{if((c[j>>2]|0)==0){c[j>>2]=Sc(16)|0;if((c[j>>2]|0)!=0){c[(c[j>>2]|0)+4>>2]=c[k>>2];c[c[j>>2]>>2]=c[l>>2];c[(c[j>>2]|0)+12>>2]=c[(c[m>>2]|0)+72>>2];c[(c[m>>2]|0)+72>>2]=c[j>>2];break}c[g>>2]=7;b=c[g>>2]|0;i=o;return b|0}}while(0);if((d[n>>0]|0|0)>(d[(c[j>>2]|0)+8>>0]|0|0)){a[(c[j>>2]|0)+8>>0]=a[n>>0]|0}c[g>>2]=0;b=c[g>>2]|0;i=o;return b|0}function WG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;g=e+20|0;h=e;k=e+4|0;l=e+8|0;j=e+12|0;f=e+16|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=((c[(c[g>>2]|0)+36>>2]|0)>>>0)/5|0;a=(c[k>>2]|0)-(c[h>>2]|0)|0;a=a+(sD(c[g>>2]|0,c[h>>2]|0)|0)|0;c[j>>2]=((a+(c[l>>2]|0)|0)>>>0)/((c[l>>2]|0)>>>0)|0;c[f>>2]=(c[h>>2]|0)-(c[k>>2]|0)-(c[j>>2]|0);if((c[h>>2]|0)>>>0>((((c[368]|0)>>>0)/((c[(c[g>>2]|0)+32>>2]|0)>>>0)|0)+1|0)>>>0){if((c[f>>2]|0)>>>0<((((c[368]|0)>>>0)/((c[(c[g>>2]|0)+32>>2]|0)>>>0)|0)+1|0)>>>0){c[f>>2]=(c[f>>2]|0)+ -1}}while(1){l=sD(c[g>>2]|0,c[f>>2]|0)|0;if((l|0)==(c[f>>2]|0)){b=1}else{b=(c[f>>2]|0)==((((c[368]|0)>>>0)/((c[(c[g>>2]|0)+32>>2]|0)>>>0)|0)+1|0)}d=c[f>>2]|0;if(!b){break}c[f>>2]=d+ -1}i=e;return d|0}function XG(b){b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=b;c[f>>2]=c[(c[g>>2]|0)+8>>2];while(1){if((c[f>>2]|0)==0){break}g=(c[f>>2]|0)+80|0;a[g>>0]=(d[g>>0]|0)&-5;c[f>>2]=c[(c[f>>2]|0)+8>>2]}i=e;return}function YG(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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=i;i=i+64|0;t=k+36|0;o=k+28|0;v=k+32|0;q=k+40|0;m=k+44|0;z=k+48|0;l=k+52|0;x=k+56|0;y=k+24|0;p=k+16|0;n=k+12|0;s=k+8|0;w=k+4|0;u=k+57|0;h=k;r=k+20|0;c[o>>2]=b;c[v>>2]=e;c[q>>2]=f;c[m>>2]=g;b=sD(c[o>>2]|0,c[q>>2]|0)|0;do{if((b|0)!=(c[q>>2]|0)){if((c[q>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[o>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){c[z>>2]=zo((c[(c[(c[o>>2]|0)+12>>2]|0)+56>>2]|0)+36|0)|0;if((c[z>>2]|0)==0){c[t>>2]=101;b=c[t>>2]|0;i=k;return b|0}c[l>>2]=tD(c[o>>2]|0,c[q>>2]|0,x,y)|0;if((c[l>>2]|0)!=0){c[t>>2]=c[l>>2];b=c[t>>2]|0;i=k;return b|0}if((d[x>>0]|0|0)==1){c[t>>2]=dq(54203)|0;b=c[t>>2]|0;i=k;return b|0}if((d[x>>0]|0|0)==2){if((c[m>>2]|0)!=0){break}c[l>>2]=ZG(c[o>>2]|0,n,p,c[q>>2]|0,1)|0;if((c[l>>2]|0)==0){Gr(c[n>>2]|0);break}c[t>>2]=c[l>>2];b=c[t>>2]|0;i=k;return b|0}a[u>>0]=0;c[h>>2]=0;c[l>>2]=eD(c[o>>2]|0,c[q>>2]|0,w,0)|0;if((c[l>>2]|0)!=0){c[t>>2]=c[l>>2];b=c[t>>2]|0;i=k;return b|0}if((c[m>>2]|0)==0){a[u>>0]=2;c[h>>2]=c[v>>2]}do{c[l>>2]=ZG(c[o>>2]|0,r,s,c[h>>2]|0,a[u>>0]|0)|0;if((c[l>>2]|0)!=0){j=19;break}Gr(c[r>>2]|0);if((c[m>>2]|0)==0){break}}while((c[s>>2]|0)>>>0>(c[v>>2]|0)>>>0);if((j|0)==19){Gr(c[w>>2]|0);c[t>>2]=c[l>>2];b=c[t>>2]|0;i=k;return b|0}c[l>>2]=_G(c[o>>2]|0,c[w>>2]|0,a[x>>0]|0,c[y>>2]|0,c[s>>2]|0,c[m>>2]|0)|0;Gr(c[w>>2]|0);if((c[l>>2]|0)!=0){c[t>>2]=c[l>>2];b=c[t>>2]|0;i=k;return b|0}}}}while(0);if((c[m>>2]|0)==0){while(1){c[q>>2]=(c[q>>2]|0)+ -1;if((c[q>>2]|0)==((((c[368]|0)>>>0)/((c[(c[o>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){continue}b=sD(c[o>>2]|0,c[q>>2]|0)|0;if((b|0)!=(c[q>>2]|0)){break}}a[(c[o>>2]|0)+19>>0]=1;c[(c[o>>2]|0)+44>>2]=c[q>>2]}c[t>>2]=0;b=c[t>>2]|0;i=k;return b|0}function ZG(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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,G=0,H=0,I=0,J=0,K=0,L=0;m=i;i=i+112|0;j=m+72|0;v=m+56|0;l=m+60|0;r=m+64|0;z=m+68|0;B=m+98|0;s=m+76|0;k=m+80|0;L=m+84|0;u=m+88|0;C=m+92|0;o=m+52|0;w=m+20|0;q=m;t=m+97|0;I=m+96|0;x=m+4|0;y=m+8|0;D=m+12|0;A=m+16|0;n=m+24|0;E=m+28|0;H=m+32|0;G=m+36|0;F=m+40|0;J=m+44|0;K=m+48|0;c[v>>2]=b;c[l>>2]=e;c[r>>2]=f;c[z>>2]=g;a[B>>0]=h;c[C>>2]=0;c[o>>2]=0;c[s>>2]=c[(c[v>>2]|0)+12>>2];c[w>>2]=dD(c[v>>2]|0)|0;c[L>>2]=zo((c[(c[s>>2]|0)+56>>2]|0)+36|0)|0;if((c[L>>2]|0)>>>0>=(c[w>>2]|0)>>>0){c[j>>2]=dq(56167)|0;b=c[j>>2]|0;i=m;return b|0}a:do{if((c[L>>2]|0)>>>0>0){a[t>>0]=0;do{if((d[B>>0]|0)==1){if((c[z>>2]|0)>>>0<=(c[w>>2]|0)>>>0){c[k>>2]=tD(c[v>>2]|0,c[z>>2]|0,I,0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}else{if((d[I>>0]|0)!=2){break}a[t>>0]=1;break}}}else{if((d[B>>0]|0)==2){a[t>>0]=1}}}while(0);c[k>>2]=ld(c[(c[s>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}Xq((c[(c[s>>2]|0)+56>>2]|0)+36|0,(c[L>>2]|0)-1|0);b:while(1){c[o>>2]=c[C>>2];if((c[o>>2]|0)!=0){c[q>>2]=zo(c[(c[o>>2]|0)+56>>2]|0)|0}else{c[q>>2]=zo((c[(c[s>>2]|0)+56>>2]|0)+32|0)|0}if((c[q>>2]|0)>>>0>(c[w>>2]|0)>>>0){c[k>>2]=dq(56216)|0}else{c[k>>2]=eD(c[v>>2]|0,c[q>>2]|0,C,0)|0}if((c[k>>2]|0)!=0){p=22;break}c[u>>2]=zo((c[(c[C>>2]|0)+56>>2]|0)+4|0)|0;if((c[u>>2]|0)==0){if((a[t>>0]|0)!=0){p=27}else{c[k>>2]=ld(c[(c[C>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){break a}c[c[r>>2]>>2]=c[q>>2];b=(c[(c[s>>2]|0)+56>>2]|0)+32|0;e=c[(c[C>>2]|0)+56>>2]|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0;c[c[l>>2]>>2]=c[C>>2];c[C>>2]=0}}else{p=27}c:do{if((p|0)==27){p=0;if((c[u>>2]|0)>>>0>((((c[(c[v>>2]|0)+36>>2]|0)>>>0)/4|0)-2|0)>>>0){p=28;break b}do{if((d[t>>0]|0)!=0){if((c[z>>2]|0)!=(c[q>>2]|0)){if(!((c[q>>2]|0)>>>0<(c[z>>2]|0)>>>0)){break}if((d[B>>0]|0)!=2){break}}c[c[r>>2]>>2]=c[q>>2];c[c[l>>2]>>2]=c[C>>2];a[t>>0]=0;c[k>>2]=ld(c[(c[C>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){break a}do{if((c[u>>2]|0)==0){if((c[o>>2]|0)==0){b=(c[(c[s>>2]|0)+56>>2]|0)+32|0;e=c[(c[C>>2]|0)+56>>2]|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0;break}c[k>>2]=ld(c[(c[o>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){break a}b=c[(c[o>>2]|0)+56>>2]|0;e=c[(c[C>>2]|0)+56>>2]|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0}else{c[y>>2]=zo((c[(c[C>>2]|0)+56>>2]|0)+8|0)|0;if((c[y>>2]|0)>>>0>(c[w>>2]|0)>>>0){p=40;break b}c[k>>2]=eD(c[v>>2]|0,c[y>>2]|0,x,0)|0;if((c[k>>2]|0)!=0){break a}c[k>>2]=ld(c[(c[x>>2]|0)+68>>2]|0)|0;f=c[x>>2]|0;if((c[k>>2]|0)!=0){p=43;break b}b=c[f+56>>2]|0;e=c[(c[C>>2]|0)+56>>2]|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0;Xq((c[(c[x>>2]|0)+56>>2]|0)+4|0,(c[u>>2]|0)-1|0);fL((c[(c[x>>2]|0)+56>>2]|0)+8|0,(c[(c[C>>2]|0)+56>>2]|0)+12|0,(c[u>>2]|0)-1<<2|0)|0;Gr(c[x>>2]|0);if((c[o>>2]|0)==0){Xq((c[(c[s>>2]|0)+56>>2]|0)+32|0,c[y>>2]|0);break}c[k>>2]=ld(c[(c[o>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){break a}Xq(c[(c[o>>2]|0)+56>>2]|0,c[y>>2]|0)}}while(0);c[C>>2]=0;break c}}while(0);if((c[u>>2]|0)>>>0>0){c[n>>2]=c[(c[C>>2]|0)+56>>2];b=(c[z>>2]|0)>>>0>0;c[D>>2]=0;d:do{if(b){if((d[B>>0]|0)==2){c[E>>2]=0;while(1){if(!((c[E>>2]|0)>>>0<(c[u>>2]|0)>>>0)){break d}c[A>>2]=zo((c[n>>2]|0)+(8+(c[E>>2]<<2))|0)|0;f=c[E>>2]|0;if((c[A>>2]|0)>>>0<=(c[z>>2]|0)>>>0){break}c[E>>2]=f+1}c[D>>2]=f;break}else{b=zo((c[n>>2]|0)+8|0)|0;c[H>>2]=Ky(b-(c[z>>2]|0)|0)|0;c[E>>2]=1;while(1){if(!((c[E>>2]|0)>>>0<(c[u>>2]|0)>>>0)){break d}b=zo((c[n>>2]|0)+(8+(c[E>>2]<<2))|0)|0;c[G>>2]=Ky(b-(c[z>>2]|0)|0)|0;if((c[G>>2]|0)<(c[H>>2]|0)){c[D>>2]=c[E>>2];c[H>>2]=c[G>>2]}c[E>>2]=(c[E>>2]|0)+1}}}}while(0);c[A>>2]=zo((c[n>>2]|0)+(8+(c[D>>2]<<2))|0)|0;if((c[A>>2]|0)>>>0>(c[w>>2]|0)>>>0){p=63;break b}if((a[t>>0]|0)!=0){if((c[A>>2]|0)!=(c[z>>2]|0)){if(!((c[A>>2]|0)>>>0<(c[z>>2]|0)>>>0)){break}if((d[B>>0]|0)!=2){break}}}c[c[r>>2]>>2]=c[A>>2];c[k>>2]=ld(c[(c[C>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){break a}if((c[D>>2]|0)>>>0<((c[u>>2]|0)-1|0)>>>0){b=(c[n>>2]|0)+(8+(c[D>>2]<<2))|0;e=(c[n>>2]|0)+(4+(c[u>>2]<<2))|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0}Xq((c[n>>2]|0)+4|0,(c[u>>2]|0)-1|0);b=(fH(c[v>>2]|0,c[c[r>>2]>>2]|0)|0)!=0^1;c[F>>2]=b?1:0;c[k>>2]=eD(c[v>>2]|0,c[c[r>>2]>>2]|0,c[l>>2]|0,c[F>>2]|0)|0;do{if((c[k>>2]|0)==0){c[k>>2]=ld(c[(c[c[l>>2]>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)==0){break}Gr(c[c[l>>2]>>2]|0)}}while(0);a[t>>0]=0}}}while(0);Gr(c[o>>2]|0);c[o>>2]=0;if((a[t>>0]|0)==0){break a}}if((p|0)==22){c[C>>2]=0;break}else if((p|0)==28){c[k>>2]=dq(56244)|0;break}else if((p|0)==40){c[k>>2]=dq(56278)|0;break}else if((p|0)==43){Gr(f);break}else if((p|0)==63){c[k>>2]=dq(56343)|0;break}}else{c[J>>2]=0==(d[(c[v>>2]|0)+19>>0]|0)?1:0;c[k>>2]=ld(c[(c[(c[v>>2]|0)+12>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}b=(c[v>>2]|0)+44|0;c[b>>2]=(c[b>>2]|0)+1;if((c[(c[v>>2]|0)+44>>2]|0)==((((c[368]|0)>>>0)/((c[(c[v>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){b=(c[v>>2]|0)+44|0;c[b>>2]=(c[b>>2]|0)+1}do{if((d[(c[v>>2]|0)+17>>0]|0)!=0){b=sD(c[v>>2]|0,c[(c[v>>2]|0)+44>>2]|0)|0;if((b|0)==(c[(c[v>>2]|0)+44>>2]|0)){c[K>>2]=0;c[k>>2]=eD(c[v>>2]|0,c[(c[v>>2]|0)+44>>2]|0,K,c[J>>2]|0)|0;if((c[k>>2]|0)==0){c[k>>2]=ld(c[(c[K>>2]|0)+68>>2]|0)|0;Gr(c[K>>2]|0)}if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}else{b=(c[v>>2]|0)+44|0;c[b>>2]=(c[b>>2]|0)+1;if((c[(c[v>>2]|0)+44>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[v>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){break}b=(c[v>>2]|0)+44|0;c[b>>2]=(c[b>>2]|0)+1;break}}}}while(0);Xq((c[(c[(c[v>>2]|0)+12>>2]|0)+56>>2]|0)+28|0,c[(c[v>>2]|0)+44>>2]|0);c[c[r>>2]>>2]=c[(c[v>>2]|0)+44>>2];c[k>>2]=eD(c[v>>2]|0,c[c[r>>2]>>2]|0,c[l>>2]|0,c[J>>2]|0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}else{c[k>>2]=ld(c[(c[c[l>>2]>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)==0){break}Gr(c[c[l>>2]>>2]|0);break}}}while(0);Gr(c[C>>2]|0);Gr(c[o>>2]|0);n=c[l>>2]|0;do{if((c[k>>2]|0)==0){b=(Kq(c[(c[n>>2]|0)+68>>2]|0)|0)>1;n=c[c[l>>2]>>2]|0;if(!b){a[n>>0]=0;break}Gr(n);c[c[l>>2]>>2]=0;c[j>>2]=dq(56442)|0;b=c[j>>2]|0;i=m;return b|0}else{c[n>>2]=0}}while(0);c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}function _G(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;r=i;i=i+48|0;l=r+40|0;n=r+36|0;v=r+32|0;q=r+44|0;o=r+28|0;k=r+24|0;w=r+20|0;p=r+12|0;s=r+8|0;x=r+4|0;m=r;u=r+16|0;c[n>>2]=b;c[v>>2]=e;a[q>>0]=f;c[o>>2]=g;c[k>>2]=h;c[w>>2]=j;c[s>>2]=c[(c[v>>2]|0)+72>>2];c[x>>2]=c[c[n>>2]>>2];c[m>>2]=$G(c[x>>2]|0,c[(c[v>>2]|0)+68>>2]|0,c[k>>2]|0,c[w>>2]|0)|0;if((c[m>>2]|0)!=0){c[l>>2]=c[m>>2];x=c[l>>2]|0;i=r;return x|0}c[(c[v>>2]|0)+72>>2]=c[k>>2];if((d[q>>0]|0|0)==5){t=5}else{if((d[q>>0]|0|0)==1){t=5}else{c[u>>2]=zo(c[(c[v>>2]|0)+56>>2]|0)|0;if((c[u>>2]|0)!=0){bH(c[n>>2]|0,c[u>>2]|0,4,c[k>>2]|0,m);if((c[m>>2]|0)!=0){c[l>>2]=c[m>>2];x=c[l>>2]|0;i=r;return x|0}}}}if((t|0)==5){c[m>>2]=aH(c[v>>2]|0)|0;if((c[m>>2]|0)!=0){c[l>>2]=c[m>>2];x=c[l>>2]|0;i=r;return x|0}}do{if((d[q>>0]|0|0)!=1){c[m>>2]=eD(c[n>>2]|0,c[o>>2]|0,p,0)|0;if((c[m>>2]|0)!=0){c[l>>2]=c[m>>2];x=c[l>>2]|0;i=r;return x|0}c[m>>2]=ld(c[(c[p>>2]|0)+68>>2]|0)|0;t=c[p>>2]|0;if((c[m>>2]|0)!=0){Gr(t);c[l>>2]=c[m>>2];x=c[l>>2]|0;i=r;return x|0}else{c[m>>2]=cH(t,c[s>>2]|0,c[k>>2]|0,a[q>>0]|0)|0;Gr(c[p>>2]|0);if((c[m>>2]|0)!=0){break}bH(c[n>>2]|0,c[k>>2]|0,a[q>>0]|0,c[o>>2]|0,m);break}}}while(0);c[l>>2]=c[m>>2];x=c[l>>2]|0;i=r;return x|0}function $G(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+48|0;k=q+36|0;n=q+32|0;m=q+28|0;o=q+24|0;t=q+20|0;p=q+16|0;j=q+8|0;l=q+4|0;r=q;s=q+12|0;c[n>>2]=d;c[m>>2]=f;c[o>>2]=g;c[t>>2]=h;c[j>>2]=0;if((a[(c[n>>2]|0)+15>>0]|0)!=0){c[l>>2]=ld(c[m>>2]|0)|0;if((c[l>>2]|0)!=0){c[k>>2]=c[l>>2];d=c[k>>2]|0;i=q;return d|0}}if((b[(c[m>>2]|0)+24>>1]&2|0)!=0){if((Qq(c[m>>2]|0)|0)!=0){d=Rq(c[m>>2]|0)|0;c[l>>2]=d;if(0!=(d|0)){c[k>>2]=c[l>>2];d=c[k>>2]|0;i=q;return d|0}}}if((b[(c[m>>2]|0)+24>>1]&4|0)!=0){if((c[t>>2]|0)==0){c[j>>2]=c[(c[m>>2]|0)+20>>2]}}d=(c[m>>2]|0)+24|0;b[d>>1]=e[d>>1]&-5;c[p>>2]=Ap(c[n>>2]|0,c[o>>2]|0)|0;do{if((c[p>>2]|0)!=0){h=(c[m>>2]|0)+24|0;b[h>>1]=e[h>>1]|b[(c[p>>2]|0)+24>>1]&4;h=c[p>>2]|0;if((a[(c[n>>2]|0)+15>>0]|0)!=0){eH(h,(c[(c[n>>2]|0)+24>>2]|0)+1|0);break}else{Wp(h);break}}}while(0);c[r>>2]=c[(c[m>>2]|0)+20>>2];eH(c[m>>2]|0,c[o>>2]|0);Cp(c[m>>2]|0);if((a[(c[n>>2]|0)+15>>0]|0)!=0){eH(c[p>>2]|0,c[r>>2]|0);Zp(c[p>>2]|0)}do{if((c[j>>2]|0)!=0){c[l>>2]=ad(c[n>>2]|0,c[j>>2]|0,s,0)|0;if((c[l>>2]|0)==0){d=(c[s>>2]|0)+24|0;b[d>>1]=e[d>>1]|4;Cp(c[s>>2]|0);Zp(c[s>>2]|0);break}if((c[j>>2]|0)>>>0<=(c[(c[n>>2]|0)+28>>2]|0)>>>0){th(c[(c[n>>2]|0)+56>>2]|0,c[j>>2]|0,c[(c[n>>2]|0)+200>>2]|0)}c[k>>2]=c[l>>2];d=c[k>>2]|0;i=q;return d|0}}while(0);c[k>>2]=0;d=c[k>>2]|0;i=q;return d|0}function aH(b){b=b|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+48|0;h=f+16|0;p=f+32|0;q=f+28|0;l=f+24|0;g=f+20|0;j=f+36|0;m=f+8|0;n=f+4|0;o=f;k=f+12|0;c[h>>2]=b;c[g>>2]=c[(c[h>>2]|0)+52>>2];a[j>>0]=a[c[h>>2]>>0]|0;c[m>>2]=c[(c[h>>2]|0)+72>>2];c[l>>2]=Lq(c[h>>2]|0)|0;if((c[l>>2]|0)!=0){q=a[j>>0]|0;b=c[h>>2]|0;a[b>>0]=q;b=c[l>>2]|0;i=f;return b|0}c[q>>2]=e[(c[h>>2]|0)+16>>1]|0;c[p>>2]=0;while(1){b=c[h>>2]|0;if((c[p>>2]|0)>=(c[q>>2]|0)){break}c[n>>2]=(c[b+56>>2]|0)+(e[(c[h>>2]|0)+18>>1]&(d[(c[(c[h>>2]|0)+64>>2]|0)+(c[p>>2]<<1)>>0]<<8|d[(c[(c[h>>2]|0)+64>>2]|0)+(c[p>>2]<<1)+1>>0]));dH(c[h>>2]|0,c[n>>2]|0,l);if((a[(c[h>>2]|0)+3>>0]|0)==0){c[o>>2]=zo(c[n>>2]|0)|0;bH(c[g>>2]|0,c[o>>2]|0,5,c[m>>2]|0,l)}c[p>>2]=(c[p>>2]|0)+1}if((a[b+3>>0]|0)!=0){q=a[j>>0]|0;b=c[h>>2]|0;a[b>>0]=q;b=c[l>>2]|0;i=f;return b|0}c[k>>2]=zo((c[(c[h>>2]|0)+56>>2]|0)+((d[(c[h>>2]|0)+5>>0]|0)+8)|0)|0;bH(c[g>>2]|0,c[k>>2]|0,5,c[m>>2]|0,l);q=a[j>>0]|0;b=c[h>>2]|0;a[b>>0]=q;b=c[l>>2]|0;i=f;return b|0}function bH(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+48|0;t=q+32|0;r=q+28|0;j=q+36|0;p=q+24|0;k=q+20|0;m=q+16|0;n=q+8|0;s=q+4|0;o=q;l=q+12|0;c[t>>2]=b;c[r>>2]=e;a[j>>0]=f;c[p>>2]=g;c[k>>2]=h;if((c[c[k>>2]>>2]|0)!=0){i=q;return}if((c[r>>2]|0)==0){b=dq(51976)|0;c[c[k>>2]>>2]=b;i=q;return}c[s>>2]=sD(c[t>>2]|0,c[r>>2]|0)|0;c[l>>2]=ad(c[c[t>>2]>>2]|0,c[s>>2]|0,m,0)|0;if((c[l>>2]|0)!=0){c[c[k>>2]>>2]=c[l>>2];i=q;return}c[o>>2]=((c[r>>2]|0)-(c[s>>2]|0)-1|0)*5;do{if((c[o>>2]|0)<0){b=dq(51987)|0;c[c[k>>2]>>2]=b}else{c[n>>2]=cd(c[m>>2]|0)|0;if((d[j>>0]|0|0)==(d[(c[n>>2]|0)+(c[o>>2]|0)>>0]|0|0)){b=zo((c[n>>2]|0)+((c[o>>2]|0)+1)|0)|0;if((b|0)==(c[p>>2]|0)){break}}b=ld(c[m>>2]|0)|0;c[l>>2]=b;c[c[k>>2]>>2]=b;if((c[l>>2]|0)==0){a[(c[n>>2]|0)+(c[o>>2]|0)>>0]=a[j>>0]|0;Xq((c[n>>2]|0)+((c[o>>2]|0)+1)|0,c[p>>2]|0)}}}while(0);dd(c[m>>2]|0);i=q;return}function cH(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;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;r=i;i=i+64|0;l=r+44|0;n=r+56|0;o=r+52|0;m=r+48|0;j=r+61|0;q=r+60|0;s=r+36|0;t=r+32|0;u=r+40|0;p=r;c[n>>2]=b;c[o>>2]=f;c[m>>2]=g;a[j>>0]=h;h=c[n>>2]|0;do{if((d[j>>0]|0|0)==4){b=zo(c[h+56>>2]|0)|0;if((b|0)==(c[o>>2]|0)){Xq(c[(c[n>>2]|0)+56>>2]|0,c[m>>2]|0);break}c[l>>2]=dq(54035)|0;b=c[l>>2]|0;i=r;return b|0}else{a[q>>0]=a[h>>0]|0;Lq(c[n>>2]|0)|0;c[t>>2]=e[(c[n>>2]|0)+16>>1]|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[t>>2]|0)){break}c[u>>2]=(c[(c[n>>2]|0)+56>>2]|0)+((e[(c[n>>2]|0)+18>>1]|0)&((d[(c[(c[n>>2]|0)+64>>2]|0)+(c[s>>2]<<1)>>0]|0)<<8|(d[(c[(c[n>>2]|0)+64>>2]|0)+(c[s>>2]<<1)+1>>0]|0)));if((d[j>>0]|0|0)==3){nD(c[n>>2]|0,c[u>>2]|0,p);if((e[p+24>>1]|0|0)!=0){if(((c[u>>2]|0)+(e[p+24>>1]|0)+3|0)>>>0<=((c[(c[n>>2]|0)+56>>2]|0)+(e[(c[n>>2]|0)+18>>1]|0)|0)>>>0){b=c[o>>2]|0;if((b|0)==(zo((c[u>>2]|0)+(e[p+24>>1]|0)|0)|0)){k=11;break}}}}else{b=zo(c[u>>2]|0)|0;if((b|0)==(c[o>>2]|0)){k=13;break}}c[s>>2]=(c[s>>2]|0)+1}if((k|0)==11){Xq((c[u>>2]|0)+(e[p+24>>1]|0)|0,c[m>>2]|0)}else if((k|0)==13){Xq(c[u>>2]|0,c[m>>2]|0)}do{if((c[s>>2]|0)==(c[t>>2]|0)){if((d[j>>0]|0|0)==5){b=zo((c[(c[n>>2]|0)+56>>2]|0)+((d[(c[n>>2]|0)+5>>0]|0)+8)|0)|0;if((b|0)==(c[o>>2]|0)){Xq((c[(c[n>>2]|0)+56>>2]|0)+((d[(c[n>>2]|0)+5>>0]|0)+8)|0,c[m>>2]|0);break}}c[l>>2]=dq(54069)|0;b=c[l>>2]|0;i=r;return b|0}}while(0);a[c[n>>2]>>0]=a[q>>0]|0}}while(0);c[l>>2]=0;b=c[l>>2]|0;i=r;return b|0}function dH(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+48|0;l=g+44|0;h=g+36|0;m=g+32|0;j=g;k=g+40|0;c[l>>2]=a;c[h>>2]=d;c[m>>2]=f;if((c[c[m>>2]>>2]|0)!=0){i=g;return}nD(c[l>>2]|0,c[h>>2]|0,j);if((b[j+24>>1]|0)==0){i=g;return}c[k>>2]=zo((c[h>>2]|0)+(e[j+24>>1]|0)|0)|0;bH(c[(c[l>>2]|0)+52>>2]|0,c[k>>2]|0,3,c[(c[l>>2]|0)+72>>2]|0,c[m>>2]|0);i=g;return}function eH(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[f>>2]=a;c[g>>2]=d;c[h>>2]=c[(c[f>>2]|0)+28>>2];Bb[c[45276>>2]&3](c[(c[h>>2]|0)+40>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+20>>2]|0,c[g>>2]|0);c[(c[f>>2]|0)+20>>2]=c[g>>2];if((b[(c[f>>2]|0)+24>>1]&2|0)==0){i=e;return}if((b[(c[f>>2]|0)+24>>1]&4|0)==0){i=e;return}oh(c[f>>2]|0);Ep(c[f>>2]|0);i=e;return}function fH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=c[(c[g>>2]|0)+60>>2];if((c[e>>2]|0)==0){g=0;g=g&1;i=d;return g|0}g=c[f>>2]|0;if(g>>>0>(vh(c[e>>2]|0)|0)>>>0){g=1;g=g&1;i=d;return g|0}g=(uh(c[e>>2]|0,c[f>>2]|0)|0)!=0;g=g&1;i=d;return g|0}function gH(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+15>>0]|0|0}function hH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+20|0;h=e+4|0;g=e+8|0;k=e+12|0;j=e+16|0;c[h>>2]=a;c[g>>2]=b;c[k>>2]=d;if((c[k>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=e;return a|0}if(0!=(Gf(c[h>>2]|0,c[k>>2]|0,-1,j,0)|0)){b=c[g>>2]|0;a=c[h>>2]|0;$t(b,a,Ff(c[h>>2]|0)|0,e);c[f>>2]=Ef(c[h>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}else{le(c[j>>2]|0)|0;c[f>>2]=mH(c[h>>2]|0,c[j>>2]|0,c[g>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}return 0}function iH(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;Uc(c[e>>2]|0);c[b>>2]=(c[(c[(c[e>>2]|0)+4>>2]|0)+32>>2]|0)-(c[(c[(c[e>>2]|0)+4>>2]|0)+36>>2]|0);i=d;return c[b>>2]|0}function jH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;f=j+20|0;h=j;k=j+4|0;l=j+8|0;e=j+12|0;g=j+16|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[g>>2]=Gf(c[h>>2]|0,c[l>>2]|0,-1,e,0)|0;if((c[g>>2]|0)!=0){c[f>>2]=c[g>>2];l=c[f>>2]|0;i=j;return l|0}while(1){l=100==(le(c[e>>2]|0)|0);d=c[h>>2]|0;if(!l){b=6;break}l=c[k>>2]|0;c[g>>2]=hH(d,l,Fe(c[e>>2]|0,0)|0)|0;if((c[g>>2]|0)!=0){b=5;break}}if((b|0)==5){mH(c[h>>2]|0,c[e>>2]|0,c[k>>2]|0)|0;c[f>>2]=c[g>>2];l=c[f>>2]|0;i=j;return l|0}else if((b|0)==6){c[f>>2]=mH(d,c[e>>2]|0,c[k>>2]|0)|0;l=c[f>>2]|0;i=j;return l|0}return 0}function kH(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+80|0;f=k+68|0;h=k+64|0;g=k+8|0;m=k+12|0;j=k+16|0;l=k;c[f>>2]=a;c[h>>2]=d;Uc(c[f>>2]|0);Uc(c[h>>2]|0);c[m>>2]=jd(Zb(c[f>>2]|0)|0)|0;if((c[c[m>>2]>>2]|0)!=0){d=Zc(c[h>>2]|0)|0;d=nL(d|0,((d|0)<0)<<31>>31|0,$c(c[h>>2]|0)|0,0)|0;a=l;c[a>>2]=d;c[a+4>>2]=D;a=Hg(c[m>>2]|0,11,l)|0;c[g>>2]=a;c[g>>2]=(c[g>>2]|0)==12?0:a;if((c[g>>2]|0)!=0){a=c[g>>2]|0;i=k;return a|0}}l=j+0|0;d=l+48|0;do{c[l>>2]=0;l=l+4|0}while((l|0)<(d|0));c[j+20>>2]=c[c[h>>2]>>2];c[j+24>>2]=c[h>>2];c[j+4>>2]=c[f>>2];c[j+16>>2]=1;Tc(j,2147483647)|0;c[g>>2]=td(j)|0;if((c[g>>2]|0)==0){a=(c[(c[f>>2]|0)+4>>2]|0)+22|0;b[a>>1]=(e[a>>1]|0)&-3;a=c[g>>2]|0;i=k;return a|0}else{lH(Zb(c[j+4>>2]|0)|0);a=c[g>>2]|0;i=k;return a|0}return 0}function lH(b){b=b|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=b;if((a[(c[f>>2]|0)+15>>0]|0)!=0){i=e;return}if((d[(c[f>>2]|0)+12>>0]|0)!=0){i=e;return}fh(c[f>>2]|0);i=e;return}function mH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+16|0;j=e+4|0;g=e+8|0;f=e+12|0;c[h>>2]=a;c[j>>2]=b;c[g>>2]=d;c[f>>2]=Ad(c[j>>2]|0)|0;if((c[f>>2]|0)==0){j=c[f>>2]|0;i=e;return j|0}a=c[g>>2]|0;j=c[h>>2]|0;$t(a,j,Ff(c[h>>2]|0)|0,e);j=c[f>>2]|0;i=e;return j|0}function nH(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+64|0;e=g+16|0;h=g+32|0;f=g+28|0;q=g+24|0;m=g+20|0;n=g+12|0;o=g+8|0;p=g+4|0;l=g;j=g+40|0;c[h>>2]=b;c[f>>2]=0;if((d[(c[h>>2]|0)+15>>0]|0)!=0){if((c[(c[h>>2]|0)+40>>2]|0)!=0){c[e>>2]=c[(c[h>>2]|0)+40>>2];b=c[e>>2]|0;i=g;return b|0}}a:do{if((Uo(c[h>>2]|0)|0)!=0){k=37}else{if((d[(c[h>>2]|0)+16>>0]|0)==0){c[q>>2]=1;c[f>>2]=$q(c[h>>2]|0,1)|0;if((c[f>>2]|0)==0){if((d[(c[h>>2]|0)+17>>0]|0)<=1){c[f>>2]=oH(c[h>>2]|0,q)|0}if((c[f>>2]|0)==0){if((c[q>>2]|0)!=0){if((a[(c[h>>2]|0)+14>>0]|0)!=0){c[f>>2]=776;break}c[f>>2]=ar(c[h>>2]|0,4)|0;if((c[f>>2]|0)!=0){break}if((c[c[(c[h>>2]|0)+64>>2]>>2]|0)==0){c[m>>2]=c[c[h>>2]>>2];c[f>>2]=op(c[m>>2]|0,c[(c[h>>2]|0)+172>>2]|0,0,n)|0;if((c[f>>2]|0)==0){if((c[n>>2]|0)!=0){c[o>>2]=0;c[p>>2]=2050;c[f>>2]=wp(c[m>>2]|0,c[(c[h>>2]|0)+172>>2]|0,c[(c[h>>2]|0)+64>>2]|0,c[p>>2]|0,o)|0;if((c[f>>2]|0)==0){if((c[o>>2]&1|0)!=0){c[f>>2]=Bq(44932)|0;Ko(c[(c[h>>2]|0)+64>>2]|0)|0}}}}}m=c[h>>2]|0;if((c[c[(c[h>>2]|0)+64>>2]>>2]|0)!=0){c[f>>2]=Io(m)|0;if((c[f>>2]|0)==0){c[f>>2]=mp(c[h>>2]|0,1)|0;a[(c[h>>2]|0)+16>>0]=0}}else{if((a[m+4>>0]|0)==0){Yo(c[h>>2]|0,1)|0}}if((c[f>>2]|0)!=0){Ho(c[h>>2]|0,c[f>>2]|0)|0;break}}do{if((a[(c[h>>2]|0)+12>>0]|0)==0){if((c[(c[h>>2]|0)+88>>2]|0)==0){if((pH(c[(c[h>>2]|0)+204>>2]|0)|0)<=0){break}}c[l>>2]=0;c[f>>2]=qH(c[h>>2]|0,l)|0;if((c[f>>2]|0)!=0){break a}if((c[l>>2]|0)>>>0>0){c[f>>2]=xp(c[(c[h>>2]|0)+60>>2]|0,j,16,24,0)|0;if((c[f>>2]|0)!=0&(c[f>>2]|0)!=522){break a}}else{l=j+0|0;k=l+16|0;do{a[l>>0]=0;l=l+1|0}while((l|0)<(k|0))}if((XK((c[h>>2]|0)+100|0,j,16)|0)!=0){fh(c[h>>2]|0)}}}while(0);c[f>>2]=rH(c[h>>2]|0)|0;k=37}}}else{k=37}}}while(0);if((k|0)==37){if((Uo(c[h>>2]|0)|0)!=0){c[f>>2]=sH(c[h>>2]|0)|0}if((d[(c[h>>2]|0)+16>>0]|0)==0){if((c[f>>2]|0)==0){c[f>>2]=qH(c[h>>2]|0,(c[h>>2]|0)+24|0)|0}}}h=c[h>>2]|0;if((c[f>>2]|0)!=0){Go(h)}else{a[h+16>>0]=1}c[e>>2]=c[f>>2];b=c[e>>2]|0;i=g;return b|0}function oH(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+48|0;h=g+16|0;n=g+32|0;j=g+28|0;l=g+24|0;q=g+20|0;f=g+12|0;p=g+8|0;o=g+4|0;m=g;k=g+36|0;c[h>>2]=b;c[n>>2]=e;c[j>>2]=c[c[h>>2]>>2];c[l>>2]=0;c[q>>2]=1;c[f>>2]=((c[c[(c[h>>2]|0)+64>>2]>>2]|0)!=0^1^1)&1;c[c[n>>2]>>2]=0;if((c[f>>2]|0)==0){c[l>>2]=op(c[j>>2]|0,c[(c[h>>2]|0)+172>>2]|0,0,q)|0}if((c[l>>2]|0)!=0){b=c[l>>2]|0;i=g;return b|0}if((c[q>>2]|0)==0){b=c[l>>2]|0;i=g;return b|0}c[p>>2]=0;c[l>>2]=zH(c[(c[h>>2]|0)+60>>2]|0,p)|0;if((c[l>>2]|0)!=0){b=c[l>>2]|0;i=g;return b|0}if((c[p>>2]|0)!=0){b=c[l>>2]|0;i=g;return b|0}c[l>>2]=qH(c[h>>2]|0,o)|0;if((c[l>>2]|0)!=0){b=c[l>>2]|0;i=g;return b|0}if((c[o>>2]|0)==0){if((c[f>>2]|0)==0){Ih();if((ar(c[h>>2]|0,2)|0)==0){So(c[j>>2]|0,c[(c[h>>2]|0)+172>>2]|0,0)|0;if((a[(c[h>>2]|0)+4>>0]|0)==0){Yo(c[h>>2]|0,1)|0}}Jh();b=c[l>>2]|0;i=g;return b|0}}if((c[f>>2]|0)==0){c[m>>2]=2049;c[l>>2]=wp(c[j>>2]|0,c[(c[h>>2]|0)+172>>2]|0,c[(c[h>>2]|0)+64>>2]|0,c[m>>2]|0,m)|0}if((c[l>>2]|0)==0){a[k>>0]=0;b=xp(c[(c[h>>2]|0)+64>>2]|0,k,1,0,0)|0;c[l>>2]=b;c[l>>2]=(c[l>>2]|0)==522?0:b;if((c[f>>2]|0)==0){Ko(c[(c[h>>2]|0)+64>>2]|0)|0}c[c[n>>2]>>2]=(d[k>>0]|0)!=0&1;b=c[l>>2]|0;i=g;return b|0}else{if((c[l>>2]|0)!=14){b=c[l>>2]|0;i=g;return b|0}c[c[n>>2]>>2]=1;c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}return 0}function pH(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=0;if((c[(c[e>>2]|0)+40>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}c[d>>2]=ub[c[45264>>2]&63](c[(c[e>>2]|0)+40>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}function qH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;e=f+24|0;j=f+16|0;h=f+8|0;g=f+12|0;k=f;d=f+20|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=yH(c[(c[j>>2]|0)+208>>2]|0)|0;if((c[g>>2]|0)==0){a=k;c[a>>2]=0;c[a+4>>2]=0;if((c[c[(c[j>>2]|0)+60>>2]>>2]|0)!=0){c[d>>2]=dh(c[(c[j>>2]|0)+60>>2]|0,k)|0;if((c[d>>2]|0)!=0){c[e>>2]=c[d>>2];a=c[e>>2]|0;i=f;return a|0}}a=k;k=c[(c[j>>2]|0)+152>>2]|0;k=dL(c[a>>2]|0,c[a+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0;k=$K(k|0,D|0,1,0)|0;a=c[(c[j>>2]|0)+152>>2]|0;a=lL(k|0,D|0,a|0,((a|0)<0)<<31>>31|0)|0;c[g>>2]=a}if((c[g>>2]|0)>>>0>(c[(c[j>>2]|0)+156>>2]|0)>>>0){c[(c[j>>2]|0)+156>>2]=c[g>>2]}c[c[h>>2]>>2]=c[g>>2];c[e>>2]=0;a=c[e>>2]|0;i=f;return a|0}function rH(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;h=e;g=e+4|0;j=e+8|0;k=e+12|0;c[h>>2]=b;c[g>>2]=0;do{if((a[(c[h>>2]|0)+12>>0]|0)==0){c[g>>2]=qH(c[h>>2]|0,k)|0;if((c[g>>2]|0)!=0){c[f>>2]=c[g>>2];l=c[f>>2]|0;i=e;return l|0}l=c[c[h>>2]>>2]|0;b=c[(c[h>>2]|0)+212>>2]|0;if((c[k>>2]|0)==0){l=So(l,b,0)|0;c[g>>2]=l;c[g>>2]=(c[g>>2]|0)==5898?0:l;c[j>>2]=0}else{c[g>>2]=op(l,b,0,j)|0}if((c[g>>2]|0)==0){k=c[h>>2]|0;if((c[j>>2]|0)!=0){c[g>>2]=uH(k,0)|0;break}if((d[k+5>>0]|0)==5){a[(c[h>>2]|0)+5>>0]=0}}}}while(0);c[f>>2]=c[g>>2];l=c[f>>2]|0;i=e;return l|0}function sH(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+8|0;d=b;f=b+4|0;c[e>>2]=a;c[f>>2]=0;hq(c[(c[e>>2]|0)+208>>2]|0);c[d>>2]=tH(c[(c[e>>2]|0)+208>>2]|0,f)|0;if((c[d>>2]|0)==0){if((c[f>>2]|0)==0){f=c[d>>2]|0;i=b;return f|0}}fh(c[e>>2]|0);f=c[d>>2]|0;i=b;return f|0}function tH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;f=d+12|0;g=d;e=d+4|0;h=d+8|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=0;do{j=c[f>>2]|0;b=c[g>>2]|0;a=(c[h>>2]|0)+1|0;c[h>>2]=a;c[e>>2]=gr(j,b,0,a)|0}while((c[e>>2]|0)==-1);i=d;return c[e>>2]|0}function uH(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;g=h+12|0;k=h;j=h+4|0;f=h+8|0;c[k>>2]=b;c[j>>2]=d;c[f>>2]=0;do{if((a[(c[k>>2]|0)+12>>0]|0)!=0){e=7}else{if((c[(c[k>>2]|0)+208>>2]|0)!=0){e=7}else{if((GG(c[k>>2]|0)|0)!=0){Ko(c[(c[k>>2]|0)+64>>2]|0)|0;c[f>>2]=vH(c[k>>2]|0)|0;if((c[f>>2]|0)!=0){break}a[(c[k>>2]|0)+5>>0]=5;a[(c[k>>2]|0)+16>>0]=0;break}else{c[g>>2]=14;b=c[g>>2]|0;i=h;return b|0}}}}while(0);if((e|0)==7){c[c[j>>2]>>2]=1}c[g>>2]=c[f>>2];b=c[g>>2]|0;i=h;return b|0}function vH(b){b=b|0;var e=0,f=0,g=0;g=i;i=i+16|0;e=g+4|0;f=g;c[e>>2]=b;c[f>>2]=0;if((a[(c[e>>2]|0)+4>>0]|0)!=0){c[f>>2]=wH(c[e>>2]|0)|0}if((c[f>>2]|0)!=0){e=c[e>>2]|0;ih(e);f=c[f>>2]|0;i=g;return f|0}b=(c[e>>2]|0)+160|0;c[f>>2]=xH(c[c[e>>2]>>2]|0,c[(c[e>>2]|0)+60>>2]|0,c[(c[e>>2]|0)+212>>2]|0,d[(c[e>>2]|0)+4>>0]|0,c[b>>2]|0,c[b+4>>2]|0,(c[e>>2]|0)+208|0)|0;e=c[e>>2]|0;ih(e);f=c[f>>2]|0;i=g;return f|0}function wH(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=ar(c[e>>2]|0,4)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}Yo(c[e>>2]|0,1)|0;e=c[d>>2]|0;i=b;return e|0}function xH(d,e,f,g,h,j,k){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;t=i;i=i+48|0;m=t+44|0;l=t+40|0;p=t+36|0;v=t+32|0;w=t+28|0;u=t;s=t+16|0;n=t+12|0;o=t+8|0;r=t+20|0;q=t+24|0;c[l>>2]=d;c[p>>2]=e;c[v>>2]=f;c[w>>2]=g;d=u;c[d>>2]=h;c[d+4>>2]=j;c[s>>2]=k;c[c[s>>2]>>2]=0;c[o>>2]=Sc(112+(c[(c[l>>2]|0)+4>>2]|0)|0)|0;if((c[o>>2]|0)==0){c[m>>2]=7;d=c[m>>2]|0;i=t;return d|0}c[c[o>>2]>>2]=c[l>>2];c[(c[o>>2]|0)+8>>2]=(c[o>>2]|0)+112;c[(c[o>>2]|0)+4>>2]=c[p>>2];b[(c[o>>2]|0)+40>>1]=-1;f=u;e=c[f+4>>2]|0;d=(c[o>>2]|0)+16|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[(c[o>>2]|0)+100>>2]=c[v>>2];a[(c[o>>2]|0)+48>>0]=1;a[(c[o>>2]|0)+49>>0]=1;a[(c[o>>2]|0)+43>>0]=(c[w>>2]|0)!=0?2:0;c[r>>2]=524294;c[n>>2]=wp(c[l>>2]|0,c[v>>2]|0,c[(c[o>>2]|0)+8>>2]|0,c[r>>2]|0,r)|0;if((c[n>>2]|0)==0){if((c[r>>2]&1|0)!=0){a[(c[o>>2]|0)+46>>0]=1}}if((c[n>>2]|0)!=0){mq(c[o>>2]|0,0);Ko(c[(c[o>>2]|0)+8>>2]|0)|0;oc(c[o>>2]|0)}else{c[q>>2]=tp(c[p>>2]|0)|0;if((c[q>>2]&1024|0)!=0){a[(c[o>>2]|0)+48>>0]=0}if((c[q>>2]&4096|0)!=0){a[(c[o>>2]|0)+49>>0]=0}c[c[s>>2]>>2]=c[o>>2]}c[m>>2]=c[n>>2];d=c[m>>2]|0;i=t;return d|0}function yH(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=a;if((c[f>>2]|0)!=0){if((b[(c[f>>2]|0)+40>>1]|0)>=0){c[e>>2]=c[(c[f>>2]|0)+72>>2];f=c[e>>2]|0;i=d;return f|0}}c[e>>2]=0;f=c[e>>2]|0;i=d;return f|0}function zH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+36>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function AH(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+176|0;d=b+168|0;e=b;g=b+4|0;f=b+8|0;c[d>>2]=a;aL(f|0,0,160)|0;while(1){if((c[d>>2]|0)==0){break}c[g>>2]=c[(c[d>>2]|0)+8>>2];c[(c[d>>2]|0)+8>>2]=0;c[e>>2]=0;while(1){if((c[f+(c[e>>2]<<2)>>2]|0)==0){break}c[d>>2]=DH(c[f+(c[e>>2]<<2)>>2]|0,c[d>>2]|0)|0;c[f+(c[e>>2]<<2)>>2]=0;c[e>>2]=(c[e>>2]|0)+1}c[f+(c[e>>2]<<2)>>2]=c[d>>2];c[d>>2]=c[g>>2]}c[d>>2]=0;c[e>>2]=0;while(1){a=c[d>>2]|0;if(!((c[e>>2]|0)>>>0<40)){break}c[d>>2]=DH(a,c[f+(c[e>>2]<<2)>>2]|0)|0;c[e>>2]=(c[e>>2]|0)+1}i=b;return a|0}function BH(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;e=b+12|0;g=b;d=b+4|0;f=b+8|0;c[e>>2]=a;c[d>>2]=c[e>>2];c[e>>2]=c[(c[d>>2]|0)+8>>2];c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+12>>2]=0;c[g>>2]=1;while(1){a=c[d>>2]|0;if((c[e>>2]|0)==0){break}c[f>>2]=a;c[d>>2]=c[e>>2];c[e>>2]=c[(c[d>>2]|0)+8>>2];c[(c[d>>2]|0)+12>>2]=c[f>>2];a=FH(e,c[g>>2]|0)|0;c[(c[d>>2]|0)+8>>2]=a;c[g>>2]=(c[g>>2]|0)+1}i=b;return a|0}function CH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;e=g+12|0;j=g;f=g+4|0;h=g+8|0;c[e>>2]=a;c[j>>2]=b;c[f>>2]=d;d=c[e>>2]|0;if((c[(c[e>>2]|0)+12>>2]|0)!=0){CH(c[d+12>>2]|0,c[j>>2]|0,h);c[(c[h>>2]|0)+8>>2]=c[e>>2]}else{c[c[j>>2]>>2]=d}h=c[e>>2]|0;if((c[(c[e>>2]|0)+8>>2]|0)!=0){CH(c[h+8>>2]|0,(c[e>>2]|0)+8|0,c[f>>2]|0);i=g;return}else{c[c[f>>2]>>2]=h;i=g;return}}function DH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;d=g+24|0;h=g+16|0;f=g;e=g+20|0;c[d>>2]=a;c[h>>2]=b;c[e>>2]=f;while(1){if((c[d>>2]|0)!=0){a=(c[h>>2]|0)!=0}else{a=0}b=c[d>>2]|0;if(!a){break}k=c[b+4>>2]|0;a=c[h>>2]|0;j=c[a+4>>2]|0;if((k|0)<(j|0)|((k|0)==(j|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)){c[(c[e>>2]|0)+8>>2]=c[d>>2];c[d>>2]=c[(c[d>>2]|0)+8>>2];c[e>>2]=c[(c[e>>2]|0)+8>>2];continue}j=c[h>>2]|0;b=c[j+4>>2]|0;k=c[d>>2]|0;a=c[k+4>>2]|0;if((b|0)<(a|0)|((b|0)==(a|0)?(c[j>>2]|0)>>>0<(c[k>>2]|0)>>>0:0)){c[(c[e>>2]|0)+8>>2]=c[h>>2];c[h>>2]=c[(c[h>>2]|0)+8>>2];c[e>>2]=c[(c[e>>2]|0)+8>>2];continue}else{c[d>>2]=c[(c[d>>2]|0)+8>>2];continue}}if((b|0)!=0){c[(c[e>>2]|0)+8>>2]=c[d>>2];k=f+8|0;k=c[k>>2]|0;i=g;return k|0}else{c[(c[e>>2]|0)+8>>2]=c[h>>2];k=f+8|0;k=c[k>>2]|0;i=g;return k|0}return 0}function EH(a){a=a|0;var d=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+8|0;g=d;h=d+4|0;c[g>>2]=a;do{if((e[(c[g>>2]|0)+24>>1]|0|0)==0){c[h>>2]=$e(c[(c[g>>2]|0)+4>>2]|0,1016)|0;if((c[h>>2]|0)!=0){c[c[h>>2]>>2]=c[c[g>>2]>>2];c[c[g>>2]>>2]=c[h>>2];c[(c[g>>2]|0)+16>>2]=(c[h>>2]|0)+8;b[(c[g>>2]|0)+24>>1]=63;break}c[f>>2]=0;h=c[f>>2]|0;i=d;return h|0}}while(0);h=(c[g>>2]|0)+24|0;b[h>>1]=(b[h>>1]|0)+ -1<<16>>16;g=(c[g>>2]|0)+16|0;h=c[g>>2]|0;c[g>>2]=h+16;c[f>>2]=h;h=c[f>>2]|0;i=d;return h|0}function FH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;g=d;h=d+4|0;f=d+8|0;j=d+12|0;c[g>>2]=a;c[h>>2]=b;if((c[c[g>>2]>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}b=c[g>>2]|0;if((c[h>>2]|0)==1){c[f>>2]=c[b>>2];c[c[g>>2]>>2]=c[(c[f>>2]|0)+8>>2];c[(c[f>>2]|0)+8>>2]=0;c[(c[f>>2]|0)+12>>2]=0;c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}c[j>>2]=FH(b,(c[h>>2]|0)-1|0)|0;c[f>>2]=c[c[g>>2]>>2];j=c[j>>2]|0;if((c[f>>2]|0)==0){c[e>>2]=j;a=c[e>>2]|0;i=d;return a|0}else{c[(c[f>>2]|0)+12>>2]=j;c[c[g>>2]>>2]=c[(c[f>>2]|0)+8>>2];a=FH(c[g>>2]|0,(c[h>>2]|0)-1|0)|0;c[(c[f>>2]|0)+8>>2]=a;c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}return 0}function GH(a){a=a|0;var d=0,f=0;d=i;i=i+16|0;f=d;c[f>>2]=a;if((b[(c[f>>2]|0)+26>>1]&1|0)==0){a=AH(c[(c[f>>2]|0)+8>>2]|0)|0;c[(c[f>>2]|0)+8>>2]=a}f=(c[f>>2]|0)+26|0;b[f>>1]=e[f>>1]|0|2;i=d;return}function HH(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g+12|0;k=g;h=g+4|0;f=g+8|0;c[j>>2]=a;c[k>>2]=d;c[h>>2]=e;c[f>>2]=c[k>>2];c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+4>>2]=c[j>>2];c[(c[f>>2]|0)+8>>2]=0;c[(c[f>>2]|0)+12>>2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+16>>2]=(c[f>>2]|0)+32;b[(c[f>>2]|0)+24>>1]=(((c[h>>2]|0)-32|0)>>>0)/16|0;b[(c[f>>2]|0)+26>>1]=1;c[(c[f>>2]|0)+28>>2]=0;i=g;return c[f>>2]|0}function IH(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=ch(c[(c[d>>2]|0)+204>>2]|0)|0;i=b;return a|0}function JH(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;h=f+4|0;g=f;c[h>>2]=b;c[g>>2]=e;b=(c[(c[h>>2]|0)+8>>2]|0)+(((c[g>>2]|0)>>>0)/8|0)|0;a[b>>0]=d[b>>0]|0|1<<(c[g>>2]&7);i=f;return}function KH(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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;p=i;i=i+64|0;m=p;o=p+52|0;t=p+48|0;q=p+44|0;l=p+40|0;n=p+36|0;v=p+56|0;j=p+24|0;k=p+20|0;s=p+16|0;u=p+12|0;r=p+28|0;w=p+32|0;c[o>>2]=b;c[t>>2]=e;c[q>>2]=f;c[l>>2]=g;c[n>>2]=h;c[j>>2]=c[l>>2];c[k>>2]=c[q>>2];while(1){b=c[l>>2]|0;c[l>>2]=b+ -1;if((b|0)<=0){r=24;break}if((c[(c[o>>2]|0)+16>>2]|0)==0){r=24;break}h=c[o>>2]|0;if((c[q>>2]|0)<1){r=5;break}if((PH(h,c[q>>2]|0,c[n>>2]|0)|0)!=0){r=24;break}if((ad(c[(c[o>>2]|0)+4>>2]|0,c[q>>2]|0,s,0)|0)!=0){r=8;break}c[u>>2]=cd(c[s>>2]|0)|0;do{if((c[t>>2]|0)!=0){c[r>>2]=zo((c[u>>2]|0)+4|0)|0;if((a[(c[c[o>>2]>>2]|0)+17>>0]|0)!=0){LH(c[o>>2]|0,c[q>>2]|0,2,0,c[n>>2]|0)}if((c[r>>2]|0)>(((c[(c[c[o>>2]>>2]|0)+36>>2]|0)/4|0)-2|0)){e=c[o>>2]|0;b=c[n>>2]|0;c[m>>2]=c[q>>2];OH(e,b,40848,m);c[l>>2]=(c[l>>2]|0)+ -1;break}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[r>>2]|0)){break}c[w>>2]=zo((c[u>>2]|0)+(8+(c[v>>2]<<2))|0)|0;if((a[(c[c[o>>2]>>2]|0)+17>>0]|0)!=0){LH(c[o>>2]|0,c[w>>2]|0,2,0,c[n>>2]|0)}PH(c[o>>2]|0,c[w>>2]|0,c[n>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+1}c[l>>2]=(c[l>>2]|0)-(c[r>>2]|0)}else{if((d[(c[c[o>>2]>>2]|0)+17>>0]|0)!=0){if((c[l>>2]|0)>0){c[v>>2]=zo(c[u>>2]|0)|0;LH(c[o>>2]|0,c[v>>2]|0,4,c[q>>2]|0,c[n>>2]|0)}}}}while(0);c[q>>2]=zo(c[u>>2]|0)|0;dd(c[s>>2]|0)}if((r|0)==5){b=c[n>>2]|0;f=c[j>>2]|0;e=c[k>>2]|0;c[m>>2]=(c[l>>2]|0)+1;c[m+4>>2]=f;c[m+8>>2]=e;OH(h,b,40760,m);i=p;return}else if((r|0)==8){e=c[o>>2]|0;b=c[n>>2]|0;c[m>>2]=c[q>>2];OH(e,b,40824,m);i=p;return}else if((r|0)==24){i=p;return}}function LH(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+48|0;m=n;p=n+36|0;l=n+32|0;r=n+45|0;q=n+40|0;k=n+20|0;o=n+24|0;s=n+44|0;j=n+28|0;c[p>>2]=b;c[l>>2]=e;a[r>>0]=f;c[q>>2]=g;c[k>>2]=h;c[o>>2]=tD(c[c[p>>2]>>2]|0,c[l>>2]|0,s,j)|0;if((c[o>>2]|0)!=0){if((c[o>>2]|0)==7|(c[o>>2]|0)==3082){c[(c[p>>2]|0)+24>>2]=1}e=c[p>>2]|0;b=c[k>>2]|0;c[m>>2]=c[l>>2];OH(e,b,40672,m);i=n;return}if((d[s>>0]|0|0)==(d[r>>0]|0|0)){if((c[j>>2]|0)==(c[q>>2]|0)){i=n;return}}e=c[p>>2]|0;b=c[k>>2]|0;p=d[r>>0]|0;r=c[q>>2]|0;g=d[s>>0]|0;f=c[j>>2]|0;c[m>>2]=c[l>>2];c[m+4>>2]=p;c[m+8>>2]=r;c[m+12>>2]=g;c[m+16>>2]=f;OH(e,b,40704,m);i=n;return}function MH(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;H=i;i=i+288|0;q=H+48|0;n=H+128|0;o=H+132|0;y=H+136|0;U=H+140|0;K=H+144|0;I=H+148|0;s=H+156|0;x=H+160|0;V=H+164|0;u=H+168|0;N=H+172|0;T=H+176|0;L=H+180|0;w=H+124|0;D=H+120|0;E=H+116|0;v=H+152|0;G=H+80|0;C=H+64|0;r=H+184|0;t=H+68|0;l=H;J=H+8|0;O=H+84|0;Q=H+88|0;R=H+16|0;S=H+96|0;P=H+100|0;F=H+104|0;z=H+108|0;A=H+92|0;B=H+76|0;M=H+72|0;p=H+112|0;c[o>>2]=f;c[y>>2]=g;c[U>>2]=h;c[K>>2]=j;c[I>>2]=k;c[t>>2]=0;f=l;c[f>>2]=0;c[f+4>>2]=0;f=J;c[f>>2]=0;c[f+4>>2]=0;c[q>>2]=c[y>>2];yc(100,r,39976,q)|0;c[G>>2]=c[c[o>>2]>>2];c[C>>2]=c[(c[G>>2]|0)+36>>2];if((c[y>>2]|0)==0){c[n>>2]=0;f=c[n>>2]|0;i=H;return f|0}if((PH(c[o>>2]|0,c[y>>2]|0,c[U>>2]|0)|0)!=0){c[n>>2]=0;f=c[n>>2]|0;i=H;return f|0}f=eD(c[G>>2]|0,c[y>>2]|0,s,0)|0;c[V>>2]=f;if((f|0)!=0){f=c[o>>2]|0;c[q>>2]=c[V>>2];OH(f,r,39992,q);c[n>>2]=0;f=c[n>>2]|0;i=H;return f|0}a[c[s>>2]>>0]=0;f=Lq(c[s>>2]|0)|0;c[V>>2]=f;if((f|0)!=0){f=c[o>>2]|0;c[q>>2]=c[V>>2];OH(f,r,40032,q);Gr(c[s>>2]|0);c[n>>2]=0;f=c[n>>2]|0;i=H;return f|0}c[u>>2]=0;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(e[(c[s>>2]|0)+16>>1]|0)){break}if((c[(c[o>>2]|0)+16>>2]|0)==0){break}f=c[x>>2]|0;c[q>>2]=c[y>>2];c[q+4>>2]=f;yc(100,r,40072,q)|0;c[O>>2]=(c[(c[s>>2]|0)+56>>2]|0)+(e[(c[s>>2]|0)+18>>1]&(d[(c[(c[s>>2]|0)+64>>2]|0)+(c[x>>2]<<1)>>0]<<8|d[(c[(c[s>>2]|0)+64>>2]|0)+(c[x>>2]<<1)+1>>0]));nD(c[s>>2]|0,c[O>>2]|0,R);c[Q>>2]=c[R+12>>2];do{if((a[(c[s>>2]|0)+2>>0]|0)!=0){U=R;V=c[U>>2]|0;U=c[U+4>>2]|0;if((c[x>>2]|0)==0){f=J;c[f>>2]=V;c[f+4>>2]=U;f=l;c[f>>2]=V;c[f+4>>2]=U;break}f=J;g=c[f+4>>2]|0;if((U|0)<(g|0)|((U|0)==(g|0)?V>>>0<=(c[f>>2]|0)>>>0:0)){f=c[o>>2]|0;V=R;k=c[V+4>>2]|0;h=J;j=c[h>>2]|0;h=c[h+4>>2]|0;g=q;c[g>>2]=c[V>>2];c[g+4>>2]=k;g=q+8|0;c[g>>2]=j;c[g+4>>2]=h;OH(f,r,40104,q)}h=R;g=c[h+4>>2]|0;f=J;c[f>>2]=c[h>>2];c[f+4>>2]=g}else{c[Q>>2]=(c[Q>>2]|0)+(c[R>>2]|0)}}while(0);if((c[Q>>2]|0)>>>0>(e[R+22>>1]|0)>>>0){if(((c[O>>2]|0)+(e[R+24>>1]|0)|0)>>>0<=((c[(c[s>>2]|0)+56>>2]|0)+(c[(c[G>>2]|0)+36>>2]|0)|0)>>>0){c[S>>2]=(((c[Q>>2]|0)-(e[R+22>>1]|0)+(c[C>>2]|0)-5|0)>>>0)/(((c[C>>2]|0)-4|0)>>>0)|0;c[P>>2]=zo((c[O>>2]|0)+(e[R+24>>1]|0)|0)|0;if((a[(c[G>>2]|0)+17>>0]|0)!=0){LH(c[o>>2]|0,c[P>>2]|0,3,c[y>>2]|0,r)}KH(c[o>>2]|0,0,c[P>>2]|0,c[S>>2]|0,r)}}if((a[(c[s>>2]|0)+3>>0]|0)==0){c[T>>2]=zo(c[O>>2]|0)|0;if((a[(c[G>>2]|0)+17>>0]|0)!=0){LH(c[o>>2]|0,c[T>>2]|0,5,c[y>>2]|0,r)}c[N>>2]=MH(c[o>>2]|0,c[T>>2]|0,r,l,(c[x>>2]|0)==0?0:J)|0;if((c[x>>2]|0)>0){if((c[N>>2]|0)!=(c[u>>2]|0)){OH(c[o>>2]|0,r,40152,q)}}c[u>>2]=c[N>>2]}c[x>>2]=(c[x>>2]|0)+1}if((a[(c[s>>2]|0)+3>>0]|0)==0){c[T>>2]=zo((c[(c[s>>2]|0)+56>>2]|0)+((d[(c[s>>2]|0)+5>>0]|0)+8)|0)|0;c[q>>2]=c[y>>2];yc(100,r,40184,q)|0;if((a[(c[G>>2]|0)+17>>0]|0)!=0){LH(c[o>>2]|0,c[T>>2]|0,5,c[y>>2]|0,r)}MH(c[o>>2]|0,c[T>>2]|0,r,0,(b[(c[s>>2]|0)+16>>1]|0)!=0?J:0)|0}do{if((d[(c[s>>2]|0)+3>>0]|0)!=0){if((d[(c[s>>2]|0)+2>>0]|0)!=0){N=(c[I>>2]|0)!=0;if((c[K>>2]|0)==0){if(!N){break}g=l;j=c[g+4>>2]|0;f=c[I>>2]|0;h=c[f+4>>2]|0;if(!((j|0)<(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0<=(c[f>>2]|0)>>>0:0))){break}f=c[o>>2]|0;V=l;k=c[V+4>>2]|0;h=c[I>>2]|0;j=c[h>>2]|0;h=c[h+4>>2]|0;g=q;c[g>>2]=c[V>>2];c[g+4>>2]=k;g=q+8|0;c[g>>2]=j;c[g+4>>2]=h;OH(f,r,40408,q);break}if(!N){g=J;j=c[g+4>>2]|0;f=c[K>>2]|0;h=c[f+4>>2]|0;if(!((j|0)>(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0>(c[f>>2]|0)>>>0:0))){break}f=c[o>>2]|0;V=J;k=c[V+4>>2]|0;h=c[K>>2]|0;j=c[h>>2]|0;h=c[h+4>>2]|0;g=q;c[g>>2]=c[V>>2];c[g+4>>2]=k;g=q+8|0;c[g>>2]=j;c[g+4>>2]=h;OH(f,r,40216,q);break}g=l;j=c[g+4>>2]|0;f=c[K>>2]|0;h=c[f+4>>2]|0;if((j|0)<(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0<=(c[f>>2]|0)>>>0:0)){f=c[o>>2]|0;V=l;k=c[V+4>>2]|0;h=c[K>>2]|0;j=c[h>>2]|0;h=c[h+4>>2]|0;g=q;c[g>>2]=c[V>>2];c[g+4>>2]=k;g=q+8|0;c[g>>2]=j;c[g+4>>2]=h;OH(f,r,40280,q)}g=J;j=c[g+4>>2]|0;f=c[I>>2]|0;h=c[f+4>>2]|0;if((j|0)>(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0>(c[f>>2]|0)>>>0:0)){f=c[o>>2]|0;V=J;k=c[V+4>>2]|0;h=c[I>>2]|0;j=c[h>>2]|0;h=c[h+4>>2]|0;g=q;c[g>>2]=c[V>>2];c[g+4>>2]=k;g=q+8|0;c[g>>2]=j;c[g+4>>2]=h;OH(f,r,40344,q)}h=J;g=c[h+4>>2]|0;f=c[K>>2]|0;c[f>>2]=c[h>>2];c[f+4>>2]=g}}}while(0);c[v>>2]=c[(c[s>>2]|0)+56>>2];c[w>>2]=d[(c[s>>2]|0)+5>>0]|0;c[t>>2]=eh(c[(c[G>>2]|0)+32>>2]|0)|0;if((c[t>>2]|0)==0){c[(c[o>>2]|0)+24>>2]=1}else{c[F>>2]=((d[(c[v>>2]|0)+((c[w>>2]|0)+5)>>0]<<8|d[(c[v>>2]|0)+((c[w>>2]|0)+5)+1>>0])-1&65535)+1;aL((c[t>>2]|0)+(c[F>>2]|0)|0,0,(c[C>>2]|0)-(c[F>>2]|0)|0)|0;aL(c[t>>2]|0,1,c[F>>2]|0)|0;c[E>>2]=d[(c[v>>2]|0)+((c[w>>2]|0)+3)>>0]<<8|d[(c[v>>2]|0)+((c[w>>2]|0)+3)+1>>0];c[D>>2]=(c[w>>2]|0)+12-(d[(c[s>>2]|0)+3>>0]<<2);c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[E>>2]|0)){break}c[z>>2]=d[(c[v>>2]|0)+((c[D>>2]|0)+(c[x>>2]<<1))>>0]<<8|d[(c[v>>2]|0)+((c[D>>2]|0)+(c[x>>2]<<1))+1>>0];c[A>>2]=65536;if((c[z>>2]|0)<=((c[C>>2]|0)-4|0)){c[A>>2]=(QH(c[s>>2]|0,(c[v>>2]|0)+(c[z>>2]|0)|0)|0)&65535}a:do{if(((c[z>>2]|0)+(c[A>>2]|0)-1|0)>=(c[C>>2]|0)){f=c[o>>2]|0;g=c[y>>2]|0;c[q>>2]=c[x>>2];c[q+4>>2]=g;OH(f,0,40472,q)}else{c[B>>2]=(c[z>>2]|0)+(c[A>>2]|0)-1;while(1){if((c[B>>2]|0)<(c[z>>2]|0)){break a}f=(c[t>>2]|0)+(c[B>>2]|0)|0;a[f>>0]=(a[f>>0]|0)+1<<24>>24;c[B>>2]=(c[B>>2]|0)+ -1}}}while(0);c[x>>2]=(c[x>>2]|0)+1}c[x>>2]=d[(c[v>>2]|0)+((c[w>>2]|0)+1)>>0]<<8|d[(c[v>>2]|0)+((c[w>>2]|0)+1)+1>>0];while(1){if((c[x>>2]|0)<=0){break}c[M>>2]=d[(c[v>>2]|0)+((c[x>>2]|0)+2)>>0]<<8|d[(c[v>>2]|0)+((c[x>>2]|0)+2)+1>>0];c[p>>2]=(c[x>>2]|0)+(c[M>>2]|0)-1;while(1){if((c[p>>2]|0)<(c[x>>2]|0)){break}f=(c[t>>2]|0)+(c[p>>2]|0)|0;a[f>>0]=(a[f>>0]|0)+1<<24>>24;c[p>>2]=(c[p>>2]|0)+ -1}c[p>>2]=d[(c[v>>2]|0)+(c[x>>2]|0)>>0]<<8|d[(c[v>>2]|0)+(c[x>>2]|0)+1>>0];c[x>>2]=c[p>>2]}c[L>>2]=0;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[C>>2]|0)){break}if((a[(c[t>>2]|0)+(c[x>>2]|0)>>0]|0)==0){c[L>>2]=(c[L>>2]|0)+1}else{if((a[(c[t>>2]|0)+(c[x>>2]|0)>>0]|0)>1){m=73;break}}c[x>>2]=(c[x>>2]|0)+1}if((m|0)==73){f=c[o>>2]|0;g=c[y>>2]|0;c[q>>2]=c[x>>2];c[q+4>>2]=g;OH(f,0,40520,q)}if((c[L>>2]|0)!=(d[(c[v>>2]|0)+((c[w>>2]|0)+7)>>0]|0)){f=c[o>>2]|0;h=d[(c[v>>2]|0)+((c[w>>2]|0)+7)>>0]|0;g=c[y>>2]|0;c[q>>2]=c[L>>2];c[q+4>>2]=h;c[q+8>>2]=g;OH(f,0,40560,q)}}gh(c[t>>2]|0);Gr(c[s>>2]|0);c[n>>2]=(c[u>>2]|0)+1;f=c[n>>2]|0;i=H;return f|0}function NH(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;g=i;i=i+16|0;f=g+4|0;e=g;c[f>>2]=a;c[e>>2]=b;i=g;return(d[(c[(c[f>>2]|0)+8>>2]|0)+(((c[e>>2]|0)>>>0)/8|0)>>0]|0)&1<<(c[e>>2]&7)|0}function OH(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;h=g+24|0;l=g;j=g+4|0;k=g+8|0;c[h>>2]=a;c[l>>2]=b;c[j>>2]=e;if((c[(c[h>>2]|0)+16>>2]|0)==0){i=g;return}a=(c[h>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+ -1;a=(c[h>>2]|0)+20|0;c[a>>2]=(c[a>>2]|0)+1;c[k>>2]=f;if((c[(c[h>>2]|0)+40>>2]|0)!=0){Jt((c[h>>2]|0)+28|0,39968,1)}if((c[l>>2]|0)!=0){Zy((c[h>>2]|0)+28|0,c[l>>2]|0)}uc((c[h>>2]|0)+28|0,1,c[j>>2]|0,k);if((d[(c[h>>2]|0)+53>>0]|0|0)!=1){i=g;return}c[(c[h>>2]|0)+24>>2]=1;i=g;return}function PH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;e=j;f=j+16|0;k=j+4|0;h=j+8|0;g=j+12|0;c[k>>2]=a;c[h>>2]=b;c[g>>2]=d;if((c[h>>2]|0)==0){c[f>>2]=1;a=c[f>>2]|0;i=j;return a|0}d=c[k>>2]|0;if((c[h>>2]|0)>>>0>(c[(c[k>>2]|0)+12>>2]|0)>>>0){a=c[g>>2]|0;c[e>>2]=c[h>>2];OH(d,a,40616,e);c[f>>2]=1;a=c[f>>2]|0;i=j;return a|0}a=(NH(d,c[h>>2]|0)|0)!=0;k=c[k>>2]|0;if(a){a=c[g>>2]|0;c[e>>2]=c[h>>2];OH(k,a,40640,e);c[f>>2]=1;a=c[f>>2]|0;i=j;return a|0}else{JH(k,c[h>>2]|0);c[f>>2]=0;a=c[f>>2]|0;i=j;return a|0}return 0}function QH(b,f){b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;l=k+20|0;h=k;m=k+4|0;j=k+8|0;n=k+12|0;g=k+16|0;c[l>>2]=b;c[h>>2]=f;c[m>>2]=(c[h>>2]|0)+(d[(c[l>>2]|0)+6>>0]|0);a:do{if((a[(c[l>>2]|0)+2>>0]|0)!=0){if((a[(c[l>>2]|0)+4>>0]|0)!=0){f=c[m>>2]|0;if((d[c[m>>2]>>0]|0)<128){c[j>>2]=d[f>>0]|0;f=1}else{f=(uD(f,j)|0)&255}c[m>>2]=(c[m>>2]|0)+(f&255)}else{c[j>>2]=0}c[n>>2]=(c[m>>2]|0)+9;do{b=c[m>>2]|0;c[m>>2]=b+1;if((a[b>>0]&128|0)==0){break a}}while((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)}else{n=c[m>>2]|0;if((d[c[m>>2]>>0]|0)<128){c[j>>2]=d[n>>0]|0;n=1}else{n=(uD(n,j)|0)&255}c[m>>2]=(c[m>>2]|0)+(n&255)}}while(0);if(!((c[j>>2]|0)>>>0>(e[(c[l>>2]|0)+8>>1]|0)>>>0)){f=c[m>>2]|0;b=c[h>>2]|0;b=f-b|0;f=c[j>>2]|0;b=f+b|0;c[j>>2]=b;f=c[j>>2]|0;f=f>>>0<4;b=f?4:b;c[j>>2]=b;b=c[j>>2]|0;b=b&65535;i=k;return b|0}c[g>>2]=e[(c[l>>2]|0)+10>>1]|0;c[j>>2]=(c[g>>2]|0)+((((c[j>>2]|0)-(c[g>>2]|0)|0)>>>0)%(((c[(c[(c[l>>2]|0)+52>>2]|0)+36>>2]|0)-4|0)>>>0)|0);if((c[j>>2]|0)>>>0>(e[(c[l>>2]|0)+8>>1]|0)>>>0){c[j>>2]=c[g>>2]}c[j>>2]=(c[j>>2]|0)+4;f=c[m>>2]|0;b=c[h>>2]|0;b=f-b|0;f=c[j>>2]|0;b=f+b|0;c[j>>2]=b;f=c[j>>2]|0;f=f>>>0<4;b=f?4:b;c[j>>2]=b;b=c[j>>2]|0;b=b&65535;i=k;return b|0}function RH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;cc(c[f>>2]|0,c[(c[e>>2]|0)+28>>2]|0);cc(c[f>>2]|0,c[(c[e>>2]|0)+36>>2]|0);a=(c[e>>2]|0)+0|0;b=a+48|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));i=d;return}function SH(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=0;c[b>>2]=Ko(c[e>>2]|0)|0;oc(c[e>>2]|0);i=d;return c[b>>2]|0}function TH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d+12|0;h=d;e=d+4|0;f=d+8|0;c[g>>2]=a;c[h>>2]=b;c[e>>2]=c[h>>2];while(1){if((c[e>>2]|0)==0){break}c[f>>2]=c[(c[e>>2]|0)+8>>2];cc(c[g>>2]|0,c[e>>2]|0);c[e>>2]=c[f>>2]}i=d;return}function UH(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+20|0;j=g;k=g+8|0;h=g+12|0;l=g+16|0;c[m>>2]=b;b=j;c[b>>2]=d;c[b+4>>2]=e;c[k>>2]=f;c[l>>2]=c[(c[m>>2]|0)+4>>2];c[h>>2]=c[(c[l>>2]|0)+8>>2];while(1){if((c[h>>2]|0)==0){break}do{if((a[(c[h>>2]|0)+80>>0]&16|0)!=0){if((c[k>>2]|0)==0){l=(c[h>>2]|0)+24|0;m=j;if(!((c[l>>2]|0)==(c[m>>2]|0)?(c[l+4>>2]|0)==(c[m+4>>2]|0):0)){break}}a[(c[h>>2]|0)+81>>0]=0}}while(0);c[h>>2]=c[(c[h>>2]|0)+8>>2]}i=g;return}function VH(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;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;o=i;i=i+48|0;j=o+36|0;r=o+32|0;u=o+28|0;n=o+24|0;q=o+20|0;l=o+16|0;k=o+8|0;p=o+4|0;t=o;m=o+12|0;c[r>>2]=b;c[u>>2]=f;c[n>>2]=g;c[q>>2]=h;b=c[u>>2]|0;if(b>>>0>(dD(c[r>>2]|0)|0)>>>0){c[j>>2]=dq(58551)|0;b=c[j>>2]|0;i=o;return b|0}c[k>>2]=cD(c[r>>2]|0,c[u>>2]|0,l,0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=o;return b|0}c[m>>2]=d[(c[l>>2]|0)+5>>0]|0;c[t>>2]=0;while(1){u=c[l>>2]|0;if((c[t>>2]|0)>=(e[(c[l>>2]|0)+16>>1]|0)){s=11;break}c[p>>2]=(c[u+56>>2]|0)+(e[(c[l>>2]|0)+18>>1]&(d[(c[(c[l>>2]|0)+64>>2]|0)+(c[t>>2]<<1)>>0]<<8|d[(c[(c[l>>2]|0)+64>>2]|0)+(c[t>>2]<<1)+1>>0]));if((a[(c[l>>2]|0)+3>>0]|0)==0){f=c[r>>2]|0;b=zo(c[p>>2]|0)|0;c[k>>2]=VH(f,b,1,c[q>>2]|0)|0;if((c[k>>2]|0)!=0){break}}c[k>>2]=WH(c[l>>2]|0,c[p>>2]|0)|0;if((c[k>>2]|0)!=0){break}c[t>>2]=(c[t>>2]|0)+1}do{if((s|0)==11){if((a[u+3>>0]|0)!=0){if((c[q>>2]|0)!=0){b=c[q>>2]|0;c[b>>2]=(c[b>>2]|0)+(e[(c[l>>2]|0)+16>>1]|0)}}else{f=c[r>>2]|0;b=zo((c[(c[l>>2]|0)+56>>2]|0)+((c[m>>2]|0)+8)|0)|0;c[k>>2]=VH(f,b,1,c[q>>2]|0)|0;if((c[k>>2]|0)!=0){break}}p=c[l>>2]|0;if((c[n>>2]|0)!=0){XH(p,k);break}b=ld(c[p+68>>2]|0)|0;c[k>>2]=b;if((b|0)==0){YH(c[l>>2]|0,d[(c[(c[l>>2]|0)+56>>2]|0)+(c[m>>2]|0)>>0]|8)}}}while(0);Gr(c[l>>2]|0);c[j>>2]=c[k>>2];b=c[j>>2]|0;i=o;return b|0}function WH(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=i;i=i+80|0;f=l+68|0;q=l+64|0;n=l+60|0;g=l+56|0;o=l;h=l+44|0;d=l+48|0;m=l+36|0;p=l+32|0;k=l+40|0;j=l+52|0;c[q>>2]=a;c[n>>2]=b;c[g>>2]=c[(c[q>>2]|0)+52>>2];nD(c[q>>2]|0,c[n>>2]|0,o);if((e[o+24>>1]|0|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=l;return a|0}if(((c[n>>2]|0)+(e[o+24>>1]|0)+3|0)>>>0>((c[(c[q>>2]|0)+56>>2]|0)+(e[(c[q>>2]|0)+18>>1]|0)|0)>>>0){c[f>>2]=dq(56609)|0;a=c[f>>2]|0;i=l;return a|0}c[h>>2]=zo((c[n>>2]|0)+(e[o+24>>1]|0)|0)|0;c[p>>2]=(c[(c[g>>2]|0)+36>>2]|0)-4;c[m>>2]=(((c[o+16>>2]|0)-(e[o+22>>1]|0)+(c[p>>2]|0)-1|0)>>>0)/((c[p>>2]|0)>>>0)|0;while(1){a=c[m>>2]|0;c[m>>2]=a+ -1;if((a|0)==0){b=23;break}c[k>>2]=0;c[j>>2]=0;if((c[h>>2]|0)>>>0<2){b=9;break}a=c[h>>2]|0;if(a>>>0>(dD(c[g>>2]|0)|0)>>>0){b=9;break}if((c[m>>2]|0)!=0){c[d>>2]=rD(c[g>>2]|0,c[h>>2]|0,j,k)|0;if((c[d>>2]|0)!=0){b=12;break}}if((c[j>>2]|0)!=0){b=15}else{a=$H(c[g>>2]|0,c[h>>2]|0)|0;c[j>>2]=a;if((a|0)!=0){b=15}else{b=17}}if((b|0)==15){b=0;if((Kq(c[(c[j>>2]|0)+68>>2]|0)|0)!=1){c[d>>2]=dq(56643)|0}else{b=17}}if((b|0)==17){c[d>>2]=ZH(c[g>>2]|0,c[j>>2]|0,c[h>>2]|0)|0}if((c[j>>2]|0)!=0){dd(c[(c[j>>2]|0)+68>>2]|0)}if((c[d>>2]|0)!=0){b=21;break}c[h>>2]=c[k>>2]}if((b|0)==9){c[f>>2]=dq(56623)|0;a=c[f>>2]|0;i=l;return a|0}else if((b|0)==12){c[f>>2]=c[d>>2];a=c[f>>2]|0;i=l;return a|0}else if((b|0)==21){c[f>>2]=c[d>>2];a=c[f>>2]|0;i=l;return a|0}else if((b|0)==23){c[f>>2]=0;a=c[f>>2]|0;i=l;return a|0}return 0}function XH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[c[f>>2]>>2]|0)!=0){i=d;return}a=ZH(c[(c[e>>2]|0)+52>>2]|0,c[e>>2]|0,c[(c[e>>2]|0)+72>>2]|0)|0;c[c[f>>2]>>2]=a;i=d;return}function YH(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+12|0;n=h;m=h+4|0;k=h+8|0;o=h+18|0;l=h+16|0;c[j>>2]=f;c[n>>2]=g;c[m>>2]=c[(c[j>>2]|0)+56>>2];c[k>>2]=c[(c[j>>2]|0)+52>>2];a[o>>0]=a[(c[j>>2]|0)+5>>0]|0;if((b[(c[k>>2]|0)+22>>1]&4|0)!=0){aL((c[m>>2]|0)+(d[o>>0]|0)|0,0,(c[(c[k>>2]|0)+36>>2]|0)-(d[o>>0]|0)|0)|0}a[(c[m>>2]|0)+(d[o>>0]|0)>>0]=c[n>>2];b[l>>1]=(d[o>>0]|0)+((c[n>>2]&8|0)==0?12:8);f=(c[m>>2]|0)+((d[o>>0]|0)+1)|0;a[f+0>>0]=0;a[f+1>>0]=0;a[f+2>>0]=0;a[f+3>>0]=0;a[(c[m>>2]|0)+((d[o>>0]|0)+7)>>0]=0;a[(c[m>>2]|0)+((d[o>>0]|0)+5)>>0]=(c[(c[k>>2]|0)+36>>2]|0)>>>8;a[(c[m>>2]|0)+((d[o>>0]|0)+5)+1>>0]=c[(c[k>>2]|0)+36>>2];b[(c[j>>2]|0)+14>>1]=(c[(c[k>>2]|0)+36>>2]|0)-(e[l>>1]|0);Mq(c[j>>2]|0,c[n>>2]|0)|0;b[(c[j>>2]|0)+12>>1]=b[l>>1]|0;c[(c[j>>2]|0)+60>>2]=(c[m>>2]|0)+(c[(c[k>>2]|0)+36>>2]|0);c[(c[j>>2]|0)+64>>2]=(c[m>>2]|0)+(e[l>>1]|0);a[(c[j>>2]|0)+1>>0]=0;b[(c[j>>2]|0)+18>>1]=(c[(c[k>>2]|0)+32>>2]|0)-1;b[(c[j>>2]|0)+16>>1]=0;a[c[j>>2]>>0]=1;i=h;return}function ZH(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+48|0;j=q+36|0;r=q+32|0;k=q+28|0;o=q+24|0;g=q+20|0;m=q+16|0;n=q+8|0;l=q+4|0;h=q;p=q+12|0;c[j>>2]=d;c[r>>2]=e;c[k>>2]=f;c[o>>2]=0;c[g>>2]=0;c[m>>2]=c[(c[j>>2]|0)+12>>2];if((c[r>>2]|0)!=0){c[n>>2]=c[r>>2];_H(c[(c[n>>2]|0)+68>>2]|0)}else{c[n>>2]=$H(c[j>>2]|0,c[k>>2]|0)|0}c[l>>2]=ld(c[(c[m>>2]|0)+68>>2]|0)|0;do{if((c[l>>2]|0)==0){c[h>>2]=zo((c[(c[m>>2]|0)+56>>2]|0)+36|0)|0;Xq((c[(c[m>>2]|0)+56>>2]|0)+36|0,(c[h>>2]|0)+1|0);if((b[(c[j>>2]|0)+22>>1]&4|0)!=0){if((c[n>>2]|0)==0){d=eD(c[j>>2]|0,c[k>>2]|0,n,0)|0;c[l>>2]=d;if((d|0)!=0){break}}d=ld(c[(c[n>>2]|0)+68>>2]|0)|0;c[l>>2]=d;if((d|0)!=0){break}aL(c[(c[n>>2]|0)+56>>2]|0,0,c[(c[(c[n>>2]|0)+52>>2]|0)+32>>2]|0)|0}if((a[(c[j>>2]|0)+17>>0]|0)!=0){bH(c[j>>2]|0,c[k>>2]|0,2,0,l);if((c[l>>2]|0)!=0){break}}if((c[h>>2]|0)!=0){c[g>>2]=zo((c[(c[m>>2]|0)+56>>2]|0)+32|0)|0;c[l>>2]=eD(c[j>>2]|0,c[g>>2]|0,o,0)|0;if((c[l>>2]|0)!=0){break}c[p>>2]=zo((c[(c[o>>2]|0)+56>>2]|0)+4|0)|0;if((c[p>>2]|0)>>>0>((((c[(c[j>>2]|0)+36>>2]|0)>>>0)/4|0)-2|0)>>>0){c[l>>2]=dq(56528)|0;break}if((c[p>>2]|0)>>>0<((((c[(c[j>>2]|0)+36>>2]|0)>>>0)/4|0)-8|0)>>>0){c[l>>2]=ld(c[(c[o>>2]|0)+68>>2]|0)|0;if((c[l>>2]|0)!=0){break}Xq((c[(c[o>>2]|0)+56>>2]|0)+4|0,(c[p>>2]|0)+1|0);Xq((c[(c[o>>2]|0)+56>>2]|0)+(8+(c[p>>2]<<2))|0,c[k>>2]|0);if((c[n>>2]|0)!=0){if((b[(c[j>>2]|0)+22>>1]&4|0)==0){aI(c[(c[n>>2]|0)+68>>2]|0)}}c[l>>2]=bI(c[j>>2]|0,c[k>>2]|0)|0;break}}if((c[n>>2]|0)==0){d=eD(c[j>>2]|0,c[k>>2]|0,n,0)|0;c[l>>2]=d;if(0!=(d|0)){break}}c[l>>2]=ld(c[(c[n>>2]|0)+68>>2]|0)|0;if((c[l>>2]|0)==0){Xq(c[(c[n>>2]|0)+56>>2]|0,c[g>>2]|0);Xq((c[(c[n>>2]|0)+56>>2]|0)+4|0,0);Xq((c[(c[m>>2]|0)+56>>2]|0)+32|0,c[k>>2]|0)}}}while(0);if((c[n>>2]|0)==0){d=c[n>>2]|0;Gr(d);d=c[o>>2]|0;Gr(d);d=c[l>>2]|0;i=q;return d|0}a[c[n>>2]>>0]=0;d=c[n>>2]|0;Gr(d);d=c[o>>2]|0;Gr(d);d=c[l>>2]|0;i=q;return d|0}function _H(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;cI(c[d>>2]|0);i=b;return}function $H(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d;g=d+4|0;h=d+8|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=Up(c[c[f>>2]>>2]|0,c[g>>2]|0)|0;if((c[h>>2]|0)!=0){c[e>>2]=fD(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;a=c[e>>2]|0;i=d;return a|0}else{c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}return 0}function aI(a){a=a|0;var d=0,f=0,g=0;d=i;i=i+16|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=c[(c[f>>2]|0)+16>>2];if((b[(c[f>>2]|0)+24>>1]&2|0)==0){i=d;return}if((c[(c[g>>2]|0)+96>>2]|0)!=0){i=d;return}g=(c[f>>2]|0)+24|0;b[g>>1]=e[g>>1]|0|32;i=d;return}function bI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;d=e+4|0;c[g>>2]=a;c[f>>2]=b;c[d>>2]=0;if((c[(c[g>>2]|0)+60>>2]|0)==0){a=rh(c[(c[g>>2]|0)+44>>2]|0)|0;c[(c[g>>2]|0)+60>>2]=a;if((c[(c[g>>2]|0)+60>>2]|0)==0){c[d>>2]=7}}if((c[d>>2]|0)!=0){a=c[d>>2]|0;i=e;return a|0}a=c[f>>2]|0;if(!(a>>>0<=(vh(c[(c[g>>2]|0)+60>>2]|0)|0)>>>0)){a=c[d>>2]|0;i=e;return a|0}c[d>>2]=sh(c[(c[g>>2]|0)+60>>2]|0,c[f>>2]|0)|0;a=c[d>>2]|0;i=e;return a|0}function cI(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;a=(c[e>>2]|0)+26|0;b[a>>1]=(b[a>>1]|0)+1<<16>>16;i=d;return}function dI(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;g=m+32|0;n=m+28|0;o=m+24|0;p=m+20|0;h=m+16|0;j=m+8|0;k=m+4|0;l=m;f=m+12|0;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[j>>2]=0;c[k>>2]=c[(c[n>>2]|0)+4>>2];if((c[(c[k>>2]|0)+8>>2]|0)!=0){c[g>>2]=262;b=c[g>>2]|0;i=m;return b|0}c[h>>2]=eD(c[k>>2]|0,c[o>>2]|0,j,0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}c[h>>2]=uG(c[n>>2]|0,c[o>>2]|0,0)|0;if((c[h>>2]|0)!=0){Gr(c[j>>2]|0);c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}c[c[p>>2]>>2]=0;do{if((c[o>>2]|0)>>>0>1){if((a[(c[k>>2]|0)+17>>0]|0)==0){XH(c[j>>2]|0,h);Gr(c[j>>2]|0);break}Xc(c[n>>2]|0,4,l);e=c[j>>2]|0;do{if((c[o>>2]|0)==(c[l>>2]|0)){XH(e,h);Gr(c[j>>2]|0);if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}}else{Gr(e);c[h>>2]=eD(c[k>>2]|0,c[l>>2]|0,f,0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}c[h>>2]=_G(c[k>>2]|0,c[f>>2]|0,1,0,c[o>>2]|0,0)|0;Gr(c[f>>2]|0);if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}c[f>>2]=0;c[h>>2]=eD(c[k>>2]|0,c[l>>2]|0,f,0)|0;XH(c[f>>2]|0,h);Gr(c[f>>2]|0);if((c[h>>2]|0)==0){c[c[p>>2]>>2]=c[l>>2];break}c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}}while(0);c[l>>2]=(c[l>>2]|0)+ -1;while(1){if((c[l>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[k>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){b=sD(c[k>>2]|0,c[l>>2]|0)|0;if((b|0)!=(c[l>>2]|0)){break}}c[l>>2]=(c[l>>2]|0)+ -1}c[h>>2]=gd(c[n>>2]|0,4,c[l>>2]|0)|0}else{YH(c[j>>2]|0,9);Gr(c[j>>2]|0)}}while(0);c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}function eI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+80|0;f=g+64|0;h=g+52|0;m=g+40|0;e=g+44|0;j=g+48|0;k=g;l=g+56|0;d=g+60|0;c[h>>2]=a;c[m>>2]=b;c[e>>2]=0;c[j>>2]=c[(c[m>>2]|0)+64>>2];a=k+0|0;b=a+40|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));if((c[(c[j>>2]|0)+16>>2]|0)==0){c[f>>2]=c[e>>2];a=c[f>>2]|0;i=g;return a|0}c[e>>2]=fI(c[m>>2]|0)|0;if((c[e>>2]|0)==0){if((c[(c[j>>2]|0)+44>>2]|0)==0){c[e>>2]=gI(c[h>>2]|0,(c[j>>2]|0)+44|0)|0}}if((c[e>>2]|0)==0){c[d>>2]=0;a=c[j>>2]|0;hI(c[h>>2]|0,c[(c[j>>2]|0)+44>>2]|0,k,c[a>>2]|0,c[a+4>>2]|0);a=(c[j>>2]|0)+24|0;c[a>>2]=(c[a>>2]|0)+1;a=c[(c[j>>2]|0)+16>>2]|0;iI(k,a,((a|0)<0)<<31>>31);c[l>>2]=c[(c[j>>2]|0)+48>>2];while(1){m=c[l>>2]|0;if((c[l>>2]|0)==0){break}c[d>>2]=c[m+8>>2];a=c[(c[l>>2]|0)+4>>2]|0;iI(k,a,((a|0)<0)<<31>>31);jI(k,c[c[l>>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0);cc(c[h>>2]|0,c[l>>2]|0);c[l>>2]=c[d>>2]}c[(c[j>>2]|0)+48>>2]=m;c[e>>2]=kI(c[h>>2]|0,k,c[j>>2]|0)|0}c[f>>2]=c[e>>2];a=c[f>>2]|0;i=g;return a|0}function fI(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+32|0;d=b+24|0;k=b;h=b+4|0;g=b+8|0;e=b+12|0;f=b+16|0;j=b+20|0;c[k>>2]=a;c[f>>2]=c[(c[k>>2]|0)+64>>2];c[g>>2]=Sc(256)|0;if((c[g>>2]|0)==0){c[d>>2]=7;k=c[d>>2]|0;i=b;return k|0}c[e>>2]=c[(c[f>>2]|0)+48>>2];while(1){if((c[e>>2]|0)==0){break}c[j>>2]=c[(c[e>>2]|0)+8>>2];c[(c[e>>2]|0)+8>>2]=0;c[h>>2]=0;while(1){if((c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]|0)==0){break}nI(c[k>>2]|0,c[e>>2]|0,c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]|0,e);c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]=0;c[h>>2]=(c[h>>2]|0)+1}c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]=c[e>>2];c[e>>2]=c[j>>2]}c[e>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=64){break}nI(c[k>>2]|0,c[e>>2]|0,c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]|0,e);c[h>>2]=(c[h>>2]|0)+1}c[(c[f>>2]|0)+48>>2]=c[e>>2];oc(c[g>>2]|0);c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}function gI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;e=d;c[f>>2]=a;c[e>>2]=b;a=mI(c[c[f>>2]>>2]|0,0,c[e>>2]|0,4126,d+4|0)|0;i=d;return a|0}function hI(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+20|0;l=g+12|0;j=g+8|0;k=g;h=g+16|0;c[m>>2]=a;c[l>>2]=b;c[j>>2]=d;a=k;c[a>>2]=e;c[a+4>>2]=f;c[h>>2]=Zc(c[(c[(c[m>>2]|0)+16>>2]|0)+4>>2]|0)|0;e=(c[j>>2]|0)+0|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));a=$e(c[m>>2]|0,c[h>>2]|0)|0;c[(c[j>>2]|0)+4>>2]=a;if((c[(c[j>>2]|0)+4>>2]|0)!=0){b=k;a=c[h>>2]|0;a=mL(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;c[(c[j>>2]|0)+12>>2]=a;c[(c[j>>2]|0)+16>>2]=a;a=k;b=c[(c[j>>2]|0)+12>>2]|0;b=$K(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=(c[j>>2]|0)+24|0;c[a>>2]=b;c[a+4>>2]=D;c[(c[j>>2]|0)+8>>2]=c[h>>2];c[(c[j>>2]|0)+32>>2]=c[l>>2];i=g;return}else{c[c[j>>2]>>2]=7;i=g;return}}function iI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+12|0;j=e;f=e+8|0;g=e+16|0;c[h>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;a=j;c[f>>2]=lI(g,c[a>>2]|0,c[a+4>>2]|0)|0;jI(c[h>>2]|0,g,c[f>>2]|0);i=e;return}function jI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+16|0;g=e;h=e+4|0;j=e+8|0;k=e+12|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[h>>2];while(1){if((c[j>>2]|0)<=0){d=9;break}if((c[c[f>>2]>>2]|0)!=0){d=9;break}c[k>>2]=c[j>>2];if((c[k>>2]|0)>((c[(c[f>>2]|0)+8>>2]|0)-(c[(c[f>>2]|0)+16>>2]|0)|0)){c[k>>2]=(c[(c[f>>2]|0)+8>>2]|0)-(c[(c[f>>2]|0)+16>>2]|0)}fL((c[(c[f>>2]|0)+4>>2]|0)+(c[(c[f>>2]|0)+16>>2]|0)|0,(c[g>>2]|0)+((c[h>>2]|0)-(c[j>>2]|0))|0,c[k>>2]|0)|0;a=(c[f>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+(c[k>>2]|0);if((c[(c[f>>2]|0)+16>>2]|0)==(c[(c[f>>2]|0)+8>>2]|0)){l=c[(c[f>>2]|0)+32>>2]|0;d=(c[(c[f>>2]|0)+4>>2]|0)+(c[(c[f>>2]|0)+12>>2]|0)|0;a=(c[(c[f>>2]|0)+16>>2]|0)-(c[(c[f>>2]|0)+12>>2]|0)|0;m=(c[f>>2]|0)+24|0;b=c[(c[f>>2]|0)+12>>2]|0;b=dL(c[m>>2]|0,c[m+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;b=nd(l,d,a,b,D)|0;c[c[f>>2]>>2]=b;c[(c[f>>2]|0)+16>>2]=0;c[(c[f>>2]|0)+12>>2]=0;b=c[(c[f>>2]|0)+8>>2]|0;a=(c[f>>2]|0)+24|0;d=a;b=dL(c[d>>2]|0,c[d+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[a>>2]=b;c[a+4>>2]=D}c[j>>2]=(c[j>>2]|0)-(c[k>>2]|0)}if((d|0)==9){i=e;return}}function kI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+16|0;j=e+12|0;g=e;h=e+4|0;f=e+8|0;c[j>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[c[g>>2]>>2]|0)==0){if((c[(c[g>>2]|0)+4>>2]|0)!=0){if((c[(c[g>>2]|0)+16>>2]|0)>(c[(c[g>>2]|0)+12>>2]|0)){k=c[(c[g>>2]|0)+32>>2]|0;d=(c[(c[g>>2]|0)+4>>2]|0)+(c[(c[g>>2]|0)+12>>2]|0)|0;b=(c[(c[g>>2]|0)+16>>2]|0)-(c[(c[g>>2]|0)+12>>2]|0)|0;l=(c[g>>2]|0)+24|0;a=c[(c[g>>2]|0)+12>>2]|0;a=dL(c[l>>2]|0,c[l+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;a=nd(k,d,b,a,D)|0;c[c[g>>2]>>2]=a}}}d=(c[g>>2]|0)+24|0;l=c[(c[g>>2]|0)+16>>2]|0;l=dL(c[d>>2]|0,c[d+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;d=c[h>>2]|0;c[d>>2]=l;c[d+4>>2]=D;cc(c[j>>2]|0,c[(c[g>>2]|0)+4>>2]|0);c[f>>2]=c[c[g>>2]>>2];g=(c[g>>2]|0)+0|0;d=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(d|0));i=e;return c[f>>2]|0}function lI(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;k=g+24|0;f=g+8|0;j=g;h=g+12|0;m=g+16|0;l=g+20|0;n=g+28|0;c[f>>2]=b;b=j;c[b>>2]=d;c[b+4>>2]=e;if(0!=0?1:(c[j+4>>2]&-16777216|0)!=0){a[(c[f>>2]|0)+8>>0]=c[j>>2];d=j;d=eL(c[d>>2]|0,c[d+4>>2]|0,8)|0;b=j;c[b>>2]=d;c[b+4>>2]=D;c[h>>2]=7;while(1){if((c[h>>2]|0)<0){break}a[(c[f>>2]|0)+(c[h>>2]|0)>>0]=c[j>>2]&127|128;d=j;d=eL(c[d>>2]|0,c[d+4>>2]|0,7)|0;b=j;c[b>>2]=d;c[b+4>>2]=D;c[h>>2]=(c[h>>2]|0)+ -1}c[k>>2]=9;b=c[k>>2]|0;i=g;return b|0}c[l>>2]=0;do{b=(c[j>>2]&127|128)&255;d=c[l>>2]|0;c[l>>2]=d+1;a[n+d>>0]=b;d=j;d=eL(c[d>>2]|0,c[d+4>>2]|0,7)|0;b=j;c[b>>2]=d;c[b+4>>2]=D;b=j}while((c[b>>2]|0)!=0|(c[b+4>>2]|0)!=0);a[n>>0]=a[n>>0]&127;c[h>>2]=0;c[m>>2]=(c[l>>2]|0)-1;while(1){if((c[m>>2]|0)<0){break}a[(c[f>>2]|0)+(c[h>>2]|0)>>0]=a[n+(c[m>>2]|0)>>0]|0;c[m>>2]=(c[m>>2]|0)+ -1;c[h>>2]=(c[h>>2]|0)+1}c[k>>2]=c[l>>2];b=c[k>>2]|0;i=g;return b|0}function mI(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;l=j+24|0;m=j;h=j+4|0;k=j+8|0;o=j+12|0;g=j+16|0;n=j+20|0;c[l>>2]=a;c[m>>2]=b;c[h>>2]=d;c[k>>2]=e;c[o>>2]=f;c[g>>2]=7;c[n>>2]=Sc(c[(c[l>>2]|0)+4>>2]|0)|0;if((c[n>>2]|0)==0){a=c[g>>2]|0;i=j;return a|0}c[g>>2]=wp(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[k>>2]|0,c[o>>2]|0)|0;k=c[n>>2]|0;if((c[g>>2]|0)!=0){oc(k);a=c[g>>2]|0;i=j;return a|0}else{c[c[h>>2]>>2]=k;a=c[g>>2]|0;i=j;return a|0}return 0}function nI(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;f=l+28|0;m=l;g=l+4|0;k=l+8|0;j=l+12|0;h=l+16|0;n=l+20|0;o=l+24|0;c[f>>2]=a;c[m>>2]=b;c[g>>2]=d;c[k>>2]=e;c[j>>2]=0;c[h>>2]=j;if((c[g>>2]|0)!=0){e=c[c[g>>2]>>2]|0}else{e=0}c[n>>2]=e;while(1){if((c[m>>2]|0)==0){break}if((c[g>>2]|0)==0){break}oI(c[f>>2]|0,0,c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+4>>2]|0,c[n>>2]|0,c[(c[g>>2]|0)+4>>2]|0,o);if((c[o>>2]|0)<=0){c[c[h>>2]>>2]=c[m>>2];c[h>>2]=(c[m>>2]|0)+8;c[m>>2]=c[(c[m>>2]|0)+8>>2];c[n>>2]=0;continue}c[c[h>>2]>>2]=c[g>>2];c[h>>2]=(c[g>>2]|0)+8;c[g>>2]=c[(c[g>>2]|0)+8>>2];if((c[g>>2]|0)==0){break}c[n>>2]=c[c[g>>2]>>2]}c[c[h>>2]>>2]=(c[m>>2]|0)!=0?c[m>>2]|0:c[g>>2]|0;c[c[k>>2]>>2]=c[j>>2];i=l;return}function oI(a,d,f,g,h,j,k){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=i;i=i+48|0;w=l+40|0;m=l+36|0;q=l+32|0;p=l+28|0;t=l+24|0;u=l+20|0;r=l+12|0;s=l+8|0;v=l+4|0;n=l;o=l+16|0;c[w>>2]=a;c[m>>2]=d;c[q>>2]=f;c[p>>2]=g;c[t>>2]=h;c[u>>2]=j;c[r>>2]=k;c[s>>2]=c[(c[w>>2]|0)+8>>2];c[v>>2]=c[(c[w>>2]|0)+64>>2];c[n>>2]=c[(c[v>>2]|0)+52>>2];if((c[t>>2]|0)!=0){iD(c[s>>2]|0,c[u>>2]|0,c[t>>2]|0,c[n>>2]|0)}a:do{if((c[m>>2]|0)!=0){b[(c[n>>2]|0)+4>>1]=(e[(c[s>>2]|0)+6>>1]|0)-(c[m>>2]|0);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(e[(c[n>>2]|0)+4>>1]|0|0)){break a}if((b[(c[(c[n>>2]|0)+8>>2]|0)+((c[o>>2]|0)*40|0)+28>>1]&1|0)!=0){break}c[o>>2]=(c[o>>2]|0)+1}c[c[r>>2]>>2]=-1;i=l;return}}while(0);w=xD(c[p>>2]|0,c[q>>2]|0,c[n>>2]|0,0)|0;c[c[r>>2]>>2]=w;i=l;return}function pI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;e=d+20|0;j=d+16|0;h=d+8|0;f=d+12|0;g=d;c[j>>2]=a;c[h>>2]=b;l=g;c[l>>2]=0;c[l+4>>2]=0;l=c[h>>2]|0;n=c[l+4>>2]|0;k=(c[h>>2]|0)+8|0;m=c[k+4>>2]|0;a=c[j>>2]|0;b=c[h>>2]|0;if((n|0)>(m|0)|((n|0)==(m|0)?(c[l>>2]|0)>>>0>=(c[k>>2]|0)>>>0:0)){RH(a,b);c[e>>2]=0;n=c[e>>2]|0;i=d;return n|0}c[f>>2]=qI(a,b,g)|0;if((c[f>>2]|0)==0){c[(c[h>>2]|0)+20>>2]=c[g>>2];c[f>>2]=rI(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0,(c[h>>2]|0)+32|0)|0}c[e>>2]=c[f>>2];n=c[e>>2]|0;i=d;return n|0}function qI(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+48|0;n=h+28|0;q=h+24|0;j=h+20|0;l=h+16|0;k=h+12|0;f=h+32|0;o=h+4|0;p=h;m=h+8|0;c[q>>2]=b;c[j>>2]=d;c[l>>2]=e;d=c[j>>2]|0;b=c[(c[j>>2]|0)+40>>2]|0;b=mL(c[d>>2]|0,c[d+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[k>>2]=b;if((c[k>>2]|0)!=0){if(((c[(c[j>>2]|0)+40>>2]|0)-(c[k>>2]|0)|0)>=9){d=(mD((c[(c[j>>2]|0)+36>>2]|0)+(c[k>>2]|0)|0,c[l>>2]|0)|0)&255;b=c[j>>2]|0;e=b;d=dL(c[e>>2]|0,c[e+4>>2]|0,d|0,0)|0;c[b>>2]=d;c[b+4>>2]=D}else{g=4}}else{g=4}do{if((g|0)==4){c[p>>2]=0;while(1){c[m>>2]=rI(c[q>>2]|0,c[j>>2]|0,1,o)|0;if((c[m>>2]|0)!=0){break}d=a[c[o>>2]>>0]|0;b=c[p>>2]|0;c[p>>2]=b+1;a[f+(b&15)>>0]=d;if((a[c[o>>2]>>0]&128|0)==0){g=8;break}}if((g|0)==8){mD(f,c[l>>2]|0)|0;break}c[n>>2]=c[m>>2];b=c[n>>2]|0;i=h;return b|0}}while(0);c[n>>2]=0;b=c[n>>2]|0;i=h;return b|0}function rI(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;j=i;i=i+64|0;h=j+52|0;o=j+48|0;k=j+44|0;n=j+40|0;m=j+36|0;l=j+32|0;t=j+28|0;v=j+24|0;q=j+16|0;s=j+12|0;u=j+8|0;r=j+4|0;p=j;f=j+20|0;c[o>>2]=a;c[k>>2]=b;c[n>>2]=d;c[m>>2]=e;b=c[k>>2]|0;a=c[(c[k>>2]|0)+40>>2]|0;a=mL(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;c[l>>2]=a;if((c[l>>2]|0)==0){w=(c[k>>2]|0)+8|0;b=c[k>>2]|0;b=$K(c[w>>2]|0,c[w+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;w=D;a=c[(c[k>>2]|0)+40>>2]|0;d=((a|0)<0)<<31>>31;e=c[k>>2]|0;if((w|0)>(d|0)|(w|0)==(d|0)&b>>>0>a>>>0){c[v>>2]=c[e+40>>2]}else{a=e+8|0;w=c[k>>2]|0;w=$K(c[a>>2]|0,c[a+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;c[v>>2]=w}w=c[k>>2]|0;c[q>>2]=xp(c[(c[k>>2]|0)+24>>2]|0,c[(c[k>>2]|0)+36>>2]|0,c[v>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;if((c[q>>2]|0)!=0){c[h>>2]=c[q>>2];w=c[h>>2]|0;i=j;return w|0}}c[t>>2]=(c[(c[k>>2]|0)+40>>2]|0)-(c[l>>2]|0);do{if((c[n>>2]|0)<=(c[t>>2]|0)){c[c[m>>2]>>2]=(c[(c[k>>2]|0)+36>>2]|0)+(c[l>>2]|0);a=c[n>>2]|0;w=c[k>>2]|0;b=w;a=dL(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;c[w>>2]=a;c[w+4>>2]=D}else{do{if((c[(c[k>>2]|0)+16>>2]|0)<(c[n>>2]|0)){c[u>>2]=c[(c[k>>2]|0)+16>>2]<<1;while(1){if((c[n>>2]|0)<=(c[u>>2]|0)){break}c[u>>2]=c[u>>2]<<1}w=Ey(c[o>>2]|0,c[(c[k>>2]|0)+28>>2]|0,c[u>>2]|0)|0;c[(c[k>>2]|0)+28>>2]=w;if((c[(c[k>>2]|0)+28>>2]|0)!=0){c[(c[k>>2]|0)+16>>2]=c[u>>2];break}c[h>>2]=7;w=c[h>>2]|0;i=j;return w|0}}while(0);fL(c[(c[k>>2]|0)+28>>2]|0,(c[(c[k>>2]|0)+36>>2]|0)+(c[l>>2]|0)|0,c[t>>2]|0)|0;a=c[t>>2]|0;w=c[k>>2]|0;b=w;a=dL(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;c[w>>2]=a;c[w+4>>2]=D;c[s>>2]=(c[n>>2]|0)-(c[t>>2]|0);while(1){if((c[s>>2]|0)<=0){g=23;break}c[p>>2]=c[s>>2];if((c[s>>2]|0)>(c[(c[k>>2]|0)+40>>2]|0)){c[p>>2]=c[(c[k>>2]|0)+40>>2]}c[r>>2]=rI(c[o>>2]|0,c[k>>2]|0,c[p>>2]|0,f)|0;if((c[r>>2]|0)!=0){break}fL((c[(c[k>>2]|0)+28>>2]|0)+((c[n>>2]|0)-(c[s>>2]|0))|0,c[f>>2]|0,c[p>>2]|0)|0;c[s>>2]=(c[s>>2]|0)-(c[p>>2]|0)}if((g|0)==23){c[c[m>>2]>>2]=c[(c[k>>2]|0)+28>>2];break}c[h>>2]=c[r>>2];w=c[h>>2]|0;i=j;return w|0}}while(0);c[h>>2]=0;w=c[h>>2]|0;i=j;return w|0}function sI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+48|0;n=f+32|0;j=f+24|0;e=f+8|0;l=f+12|0;g=f+16|0;k=f+20|0;h=f;m=f+28|0;c[n>>2]=a;c[j>>2]=b;c[e>>2]=d;c[l>>2]=c[(c[j>>2]|0)+64>>2];c[g>>2]=0;a=h;c[a>>2]=0;c[a+4>>2]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=16){break}c[m>>2]=(c[(c[l>>2]|0)+36>>2]|0)+((c[k>>2]|0)*48|0);d=(c[l>>2]|0)+8|0;c[g>>2]=tI(c[n>>2]|0,c[l>>2]|0,c[d>>2]|0,c[d+4>>2]|0,c[m>>2]|0,h)|0;d=(c[m>>2]|0)+8|0;b=c[d+4>>2]|0;a=(c[l>>2]|0)+8|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;if((c[g>>2]|0)!=0){break}b=(c[l>>2]|0)+8|0;o=c[b+4>>2]|0;a=c[l>>2]|0;d=c[a+4>>2]|0;if((o|0)>(d|0)|((o|0)==(d|0)?(c[b>>2]|0)>>>0>=(c[a>>2]|0)>>>0:0)){break}c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=(c[(c[l>>2]|0)+20>>2]|0)-1;while(1){if((c[g>>2]|0)!=0){j=10;break}if((c[k>>2]|0)<=0){j=10;break}c[g>>2]=uI(c[j>>2]|0,c[k>>2]|0)|0;c[k>>2]=(c[k>>2]|0)+ -1}if((j|0)==10){b=h;a=c[b+4>>2]|0;o=c[e>>2]|0;c[o>>2]=c[b>>2];c[o+4>>2]=a;i=f;return c[g>>2]|0}return 0}function tI(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+48|0;m=j+44|0;k=j+40|0;h=j;l=j+36|0;o=j+32|0;p=j+28|0;s=j+20|0;q=j+16|0;r=j+24|0;n=j+8|0;c[m>>2]=a;c[k>>2]=b;b=h;c[b>>2]=d;c[b+4>>2]=e;c[l>>2]=f;c[o>>2]=g;c[p>>2]=0;c[s>>2]=Zc(c[(c[(c[m>>2]|0)+16>>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+24>>2]=c[(c[k>>2]|0)+44>>2];d=h;b=c[d+4>>2]|0;a=c[l>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;c[(c[l>>2]|0)+16>>2]=128;a=$e(c[m>>2]|0,c[(c[l>>2]|0)+16>>2]|0)|0;c[(c[l>>2]|0)+28>>2]=a;c[(c[l>>2]|0)+40>>2]=c[s>>2];a=$e(c[m>>2]|0,c[s>>2]|0)|0;c[(c[l>>2]|0)+36>>2]=a;if((c[(c[l>>2]|0)+36>>2]|0)!=0){b=h;a=c[s>>2]|0;a=mL(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;c[q>>2]=a;if((c[q>>2]|0)!=0){c[r>>2]=(c[s>>2]|0)-(c[q>>2]|0);e=h;b=c[r>>2]|0;b=dL(c[e>>2]|0,c[e+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;e=D;a=c[k>>2]|0;d=c[a+4>>2]|0;if((e|0)>(d|0)|((e|0)==(d|0)?b>>>0>(c[a>>2]|0)>>>0:0)){b=c[k>>2]|0;a=h;a=$K(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[r>>2]=a}a=h;c[p>>2]=xp(c[(c[k>>2]|0)+44>>2]|0,(c[(c[l>>2]|0)+36>>2]|0)+(c[q>>2]|0)|0,c[r>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0}if((c[p>>2]|0)==0){d=c[k>>2]|0;a=c[d+4>>2]|0;b=(c[l>>2]|0)+8|0;c[b>>2]=c[d>>2];c[b+4>>2]=a;c[p>>2]=qI(c[m>>2]|0,c[l>>2]|0,n)|0;b=c[l>>2]|0;a=n;a=dL(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;b=(c[l>>2]|0)+8|0;c[b>>2]=a;c[b+4>>2]=D;b=n;a=c[o>>2]|0;d=a;b=dL(c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[a>>2]=b;c[a+4>>2]=D}}else{c[p>>2]=7}if((c[p>>2]|0)!=0){a=c[p>>2]|0;i=j;return a|0}c[p>>2]=pI(c[m>>2]|0,c[l>>2]|0)|0;a=c[p>>2]|0;i=j;return a|0}function uI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;k=g+32|0;f=g+28|0;e=g+24|0;d=g+20|0;h=g+16|0;j=g+8|0;l=g+4|0;m=g;n=g+12|0;c[k>>2]=a;c[f>>2]=b;c[e>>2]=c[(c[k>>2]|0)+64>>2];b=c[f>>2]|0;if((c[f>>2]|0)>=((c[(c[e>>2]|0)+20>>2]|0)/2|0|0)){c[d>>2]=b-((c[(c[e>>2]|0)+20>>2]|0)/2|0)<<1;c[h>>2]=(c[d>>2]|0)+1}else{c[d>>2]=c[(c[(c[e>>2]|0)+40>>2]|0)+(b<<1<<2)>>2];c[h>>2]=c[(c[(c[e>>2]|0)+40>>2]|0)+((c[f>>2]<<1)+1<<2)>>2]}c[l>>2]=(c[(c[e>>2]|0)+36>>2]|0)+((c[d>>2]|0)*48|0);c[m>>2]=(c[(c[e>>2]|0)+36>>2]|0)+((c[h>>2]|0)*48|0);do{if((c[(c[l>>2]|0)+24>>2]|0)==0){c[j>>2]=c[h>>2]}else{if((c[(c[m>>2]|0)+24>>2]|0)==0){c[j>>2]=c[d>>2];break}oI(c[k>>2]|0,0,c[(c[l>>2]|0)+32>>2]|0,c[(c[l>>2]|0)+20>>2]|0,c[(c[m>>2]|0)+32>>2]|0,c[(c[m>>2]|0)+20>>2]|0,n);if((c[n>>2]|0)<=0){c[j>>2]=c[d>>2];break}else{c[j>>2]=c[h>>2];break}}}while(0);c[(c[(c[e>>2]|0)+40>>2]|0)+(c[f>>2]<<2)>>2]=c[j>>2];i=g;return 0}function vI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;h=d+12|0;g=d;e=d+4|0;f=d+8|0;c[h>>2]=a;c[g>>2]=b;b=c[h>>2]|0;if((c[(c[h>>2]|0)+40>>2]|0)!=0){c[f>>2]=(c[(c[h>>2]|0)+36>>2]|0)+((c[(c[b+40>>2]|0)+4>>2]|0)*48|0);c[c[g>>2]>>2]=c[(c[f>>2]|0)+20>>2];c[e>>2]=c[(c[f>>2]|0)+32>>2];a=c[e>>2]|0;i=d;return a|0}else{c[c[g>>2]>>2]=c[(c[b+48>>2]|0)+4>>2];c[e>>2]=c[c[(c[h>>2]|0)+48>>2]>>2];a=c[e>>2]|0;i=d;return a|0}return 0}function wI(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+48|0;n=q+32|0;p=q+28|0;t=q+24|0;m=q+20|0;s=q+16|0;k=q+8|0;o=q+4|0;l=q;r=q+12|0;c[n>>2]=f;c[p>>2]=g;c[t>>2]=h;c[m>>2]=j;if((c[c[m>>2]>>2]|0)!=0){i=q;return}c[k>>2]=c[(c[n>>2]|0)+56>>2];c[o>>2]=(c[(c[n>>2]|0)+64>>2]|0)+(c[p>>2]<<1);c[s>>2]=(d[c[o>>2]>>0]|0)<<8|(d[(c[o>>2]|0)+1>>0]|0);c[r>>2]=d[(c[n>>2]|0)+5>>0]|0;if(!((c[s>>2]|0)>>>0<((d[(c[k>>2]|0)+((c[r>>2]|0)+5)>>0]|0)<<8|(d[(c[k>>2]|0)+((c[r>>2]|0)+5)+1>>0]|0))>>>0)){if(!(((c[s>>2]|0)+(c[t>>2]|0)|0)>>>0>(c[(c[(c[n>>2]|0)+52>>2]|0)+36>>2]|0)>>>0)){c[l>>2]=JI(c[n>>2]|0,c[s>>2]|0,c[t>>2]|0)|0;if((c[l>>2]|0)!=0){c[c[m>>2]>>2]=c[l>>2];i=q;return}else{f=(c[n>>2]|0)+16|0;b[f>>1]=(b[f>>1]|0)+ -1<<16>>16;gL(c[o>>2]|0,(c[o>>2]|0)+2|0,(e[(c[n>>2]|0)+16>>1]|0)-(c[p>>2]|0)<<1|0)|0;a[(c[k>>2]|0)+((c[r>>2]|0)+3)>>0]=(e[(c[n>>2]|0)+16>>1]|0)>>8;a[(c[k>>2]|0)+((c[r>>2]|0)+3)+1>>0]=b[(c[n>>2]|0)+16>>1];f=(c[n>>2]|0)+14|0;b[f>>1]=(e[f>>1]|0)+2;i=q;return}}}f=dq(56847)|0;c[c[m>>2]>>2]=f;i=q;return}function xI(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if((c[(c[e>>2]|0)+80>>2]|0)!=0){i=d;return}b=eh(c[(c[e>>2]|0)+32>>2]|0)|0;c[(c[e>>2]|0)+80>>2]=b;if((c[(c[e>>2]|0)+80>>2]|0)==0){i=d;return}e=c[(c[e>>2]|0)+80>>2]|0;a[e+0>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;a[e+3>>0]=0;i=d;return}function yI(f,g,h,j,k,l,m){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;x=i;i=i+64|0;q=x+56|0;z=x+52|0;v=x+48|0;r=x+44|0;B=x+40|0;w=x+36|0;p=x+32|0;t=x+28|0;C=x+20|0;y=x+16|0;A=x+12|0;n=x+8|0;s=x+4|0;u=x;o=x+24|0;c[q>>2]=f;c[z>>2]=g;c[v>>2]=h;c[r>>2]=j;c[B>>2]=k;c[w>>2]=l;c[p>>2]=m;c[t>>2]=0;c[u>>2]=(c[w>>2]|0)!=0?4:0;if((c[c[p>>2]>>2]|0)!=0){i=x;return}if((d[(c[q>>2]|0)+1>>0]|0)==0){if(((c[r>>2]|0)+2|0)<=(e[(c[q>>2]|0)+14>>1]|0)){c[o>>2]=ld(c[(c[q>>2]|0)+68>>2]|0)|0;if((c[o>>2]|0)!=0){c[c[p>>2]>>2]=c[o>>2];i=x;return}c[s>>2]=c[(c[q>>2]|0)+56>>2];c[n>>2]=e[(c[q>>2]|0)+12>>1]|0;c[y>>2]=(c[n>>2]|0)+(e[(c[q>>2]|0)+16>>1]<<1);c[A>>2]=(c[n>>2]|0)+(c[z>>2]<<1);c[o>>2]=GI(c[q>>2]|0,c[r>>2]|0,t)|0;if((c[o>>2]|0)!=0){c[c[p>>2]>>2]=c[o>>2];i=x;return}f=(c[q>>2]|0)+16|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;f=(c[q>>2]|0)+14|0;b[f>>1]=(e[f>>1]|0)-(2+(c[r>>2]|0)&65535);fL((c[s>>2]|0)+((c[t>>2]|0)+(c[u>>2]|0))|0,(c[v>>2]|0)+(c[u>>2]|0)|0,(c[r>>2]|0)-(c[u>>2]|0)|0)|0;if((c[w>>2]|0)!=0){Xq((c[s>>2]|0)+(c[t>>2]|0)|0,c[w>>2]|0)}gL((c[s>>2]|0)+((c[A>>2]|0)+2)|0,(c[s>>2]|0)+(c[A>>2]|0)|0,(c[y>>2]|0)-(c[A>>2]|0)|0)|0;a[(c[s>>2]|0)+(c[A>>2]|0)>>0]=c[t>>2]>>8;a[(c[s>>2]|0)+(c[A>>2]|0)+1>>0]=c[t>>2];a[(c[s>>2]|0)+((d[(c[q>>2]|0)+5>>0]|0)+3)>>0]=e[(c[q>>2]|0)+16>>1]>>8;a[(c[s>>2]|0)+((d[(c[q>>2]|0)+5>>0]|0)+3)+1>>0]=b[(c[q>>2]|0)+16>>1];if((a[(c[(c[q>>2]|0)+52>>2]|0)+17>>0]|0)==0){i=x;return}dH(c[q>>2]|0,c[v>>2]|0,c[p>>2]|0);i=x;return}}if((c[B>>2]|0)!=0){fL((c[B>>2]|0)+(c[u>>2]|0)|0,(c[v>>2]|0)+(c[u>>2]|0)|0,(c[r>>2]|0)-(c[u>>2]|0)|0)|0;c[v>>2]=c[B>>2]}if((c[w>>2]|0)!=0){Xq(c[v>>2]|0,c[w>>2]|0)}g=(c[q>>2]|0)+1|0;f=a[g>>0]|0;a[g>>0]=f+1<<24>>24;c[C>>2]=f&255;c[(c[q>>2]|0)+32+(c[C>>2]<<2)>>2]=c[v>>2];b[(c[q>>2]|0)+20+(c[C>>2]<<1)>>1]=c[z>>2];i=x;return}function zI(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=i;i=i+64|0;l=m+32|0;g=m+28|0;q=m+24|0;r=m+36|0;j=m+20|0;p=m+16|0;k=m+8|0;n=m+4|0;o=m;h=m+12|0;c[l>>2]=f;c[g>>2]=0;c[q>>2]=(c[(c[(c[l>>2]|0)+4>>2]|0)+36>>2]<<1>>>0)/3|0;c[j>>2]=0;do{c[p>>2]=b[(c[l>>2]|0)+84>>1]|0;c[k>>2]=c[(c[l>>2]|0)+128+(c[p>>2]<<2)>>2];f=a[(c[k>>2]|0)+1>>0]|0;if((c[p>>2]|0)==0){if(!(f<<24>>24!=0)){break}c[g>>2]=AI(c[k>>2]|0,(c[l>>2]|0)+132|0)|0;if((c[g>>2]|0)==0){b[(c[l>>2]|0)+84>>1]=1;b[(c[l>>2]|0)+86>>1]=0;b[(c[l>>2]|0)+88>>1]=0}}else{if((f&255|0)==0){if((e[(c[k>>2]|0)+14>>1]|0)<=(c[q>>2]|0)){break}}c[n>>2]=c[(c[l>>2]|0)+128+((c[p>>2]|0)-1<<2)>>2];c[o>>2]=e[(c[l>>2]|0)+86+((c[p>>2]|0)-1<<1)>>1]|0;c[g>>2]=ld(c[(c[n>>2]|0)+68>>2]|0)|0;do{if((c[g>>2]|0)==0){if((d[(c[k>>2]|0)+4>>0]|0)!=0){if((d[(c[k>>2]|0)+1>>0]|0)==1){if((e[(c[k>>2]|0)+20>>1]|0)==(e[(c[k>>2]|0)+16>>1]|0)){if((c[(c[n>>2]|0)+72>>2]|0)!=1){if((e[(c[n>>2]|0)+16>>1]|0)==(c[o>>2]|0)){c[g>>2]=BI(c[n>>2]|0,c[k>>2]|0,r)|0;break}}}}}c[h>>2]=eh(c[(c[(c[l>>2]|0)+4>>2]|0)+32>>2]|0)|0;c[g>>2]=CI(c[n>>2]|0,c[o>>2]|0,c[h>>2]|0,(c[p>>2]|0)==1&1,d[(c[l>>2]|0)+82>>0]|0)|0;if((c[j>>2]|0)!=0){gh(c[j>>2]|0)}c[j>>2]=c[h>>2]}}while(0);a[(c[k>>2]|0)+1>>0]=0;Gr(c[k>>2]|0);f=(c[l>>2]|0)+84|0;b[f>>1]=(b[f>>1]|0)+ -1<<16>>16}}while((c[g>>2]|0)==0);if((c[j>>2]|0)==0){f=c[g>>2]|0;i=m;return f|0}gh(c[j>>2]|0);f=c[g>>2]|0;i=m;return f|0}function AI(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;j=k+24|0;l=k;f=k+4|0;h=k+8|0;g=k+12|0;m=k+16|0;n=k+20|0;c[l>>2]=b;c[f>>2]=e;c[g>>2]=0;c[m>>2]=0;c[n>>2]=c[(c[l>>2]|0)+52>>2];c[h>>2]=ld(c[(c[l>>2]|0)+68>>2]|0)|0;if((c[h>>2]|0)==0){c[h>>2]=ZG(c[n>>2]|0,g,m,c[(c[l>>2]|0)+72>>2]|0,0)|0;FI(c[l>>2]|0,c[g>>2]|0,h);if((a[(c[n>>2]|0)+17>>0]|0)!=0){bH(c[n>>2]|0,c[m>>2]|0,5,c[(c[l>>2]|0)+72>>2]|0,h)}}if((c[h>>2]|0)!=0){c[c[f>>2]>>2]=0;Gr(c[g>>2]|0);c[j>>2]=c[h>>2];b=c[j>>2]|0;i=k;return b|0}else{fL((c[g>>2]|0)+20|0,(c[l>>2]|0)+20|0,d[(c[l>>2]|0)+1>>0]<<1|0)|0;fL((c[g>>2]|0)+32|0,(c[l>>2]|0)+32|0,d[(c[l>>2]|0)+1>>0]<<2|0)|0;a[(c[g>>2]|0)+1>>0]=a[(c[l>>2]|0)+1>>0]|0;YH(c[l>>2]|0,d[c[(c[g>>2]|0)+56>>2]>>0]&-9);Xq((c[(c[l>>2]|0)+56>>2]|0)+((d[(c[l>>2]|0)+5>>0]|0)+8)|0,c[m>>2]|0);c[c[f>>2]>>2]=c[g>>2];c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}return 0}function BI(f,g,h){f=f|0;g=g|0;h=h|0;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;q=i;i=i+48|0;k=q+40|0;n=q+36|0;r=q+32|0;u=q+28|0;l=q+24|0;j=q+16|0;o=q+12|0;m=q+8|0;v=q+4|0;s=q;p=q+44|0;t=q+20|0;c[n>>2]=f;c[r>>2]=g;c[u>>2]=h;c[l>>2]=c[(c[r>>2]|0)+52>>2];if((e[(c[r>>2]|0)+16>>1]|0)==0){c[k>>2]=dq(57050)|0;f=c[k>>2]|0;i=q;return f|0}c[o>>2]=ZG(c[l>>2]|0,j,m,0,0)|0;if((c[o>>2]|0)==0){c[v>>2]=(c[u>>2]|0)+4;c[s>>2]=c[(c[r>>2]|0)+32>>2];b[p>>1]=QH(c[r>>2]|0,c[s>>2]|0)|0;YH(c[j>>2]|0,13);EI(c[j>>2]|0,1,s,p);if((a[(c[l>>2]|0)+17>>0]|0)!=0){bH(c[l>>2]|0,c[m>>2]|0,5,c[(c[n>>2]|0)+72>>2]|0,o);if((e[p>>1]|0)>(e[(c[j>>2]|0)+10>>1]|0)){dH(c[j>>2]|0,c[s>>2]|0,o)}}c[s>>2]=(c[(c[r>>2]|0)+56>>2]|0)+(e[(c[r>>2]|0)+18>>1]&(d[(c[(c[r>>2]|0)+64>>2]|0)+((e[(c[r>>2]|0)+16>>1]|0)-1<<1)>>0]<<8|d[(c[(c[r>>2]|0)+64>>2]|0)+((e[(c[r>>2]|0)+16>>1]|0)-1<<1)+1>>0]));c[t>>2]=(c[s>>2]|0)+9;do{f=c[s>>2]|0;c[s>>2]=f+1;if((a[f>>0]&128|0)==0){break}}while((c[s>>2]|0)>>>0<(c[t>>2]|0)>>>0);c[t>>2]=(c[s>>2]|0)+9;do{f=c[s>>2]|0;c[s>>2]=f+1;f=a[f>>0]|0;g=c[v>>2]|0;c[v>>2]=g+1;a[g>>0]=f;if((f&128|0)==0){break}}while((c[s>>2]|0)>>>0<(c[t>>2]|0)>>>0);yI(c[n>>2]|0,e[(c[n>>2]|0)+16>>1]|0,c[u>>2]|0,(c[v>>2]|0)-(c[u>>2]|0)|0,0,c[(c[r>>2]|0)+72>>2]|0,o);Xq((c[(c[n>>2]|0)+56>>2]|0)+((d[(c[n>>2]|0)+5>>0]|0)+8)|0,c[m>>2]|0);Gr(c[j>>2]|0)}c[k>>2]=c[o>>2];f=c[k>>2]|0;i=q;return f|0}function CI(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0;m=i;i=i+352|0;I=m+300|0;R=m+296|0;wa=m+292|0;V=m+288|0;X=m+284|0;ba=m+280|0;u=m+276|0;H=m+268|0;ta=m+264|0;o=m+260|0;q=m+256|0;n=m+272|0;E=m+304|0;w=m+308|0;P=m+312|0;y=m+316|0;v=m+346|0;l=m+320|0;ia=m+324|0;M=m+328|0;ha=m+336|0;qa=m+332|0;N=m+252|0;ua=m+248|0;r=m+236|0;F=m+224|0;p=m+204|0;W=m+200|0;sa=m+192|0;z=m+80|0;ga=m+100|0;s=m+120|0;J=m+76|0;oa=m+72|0;aa=m+68|0;va=m+64|0;ka=m+60|0;ja=m+48|0;la=m+44|0;ma=m+344|0;na=m+342|0;pa=m+340|0;ra=m+40|0;ca=m+36|0;ea=m+32|0;fa=m+52|0;da=m+56|0;_=m+124|0;Z=m+128|0;Y=m+132|0;U=m+136|0;S=m+140|0;Q=m+144|0;K=m+148|0;O=m+152|0;T=m;L=m+156|0;x=m+160|0;D=m+164|0;C=m+168|0;G=m+172|0;A=m+176|0;B=m+180|0;t=m+184|0;c[R>>2]=f;c[wa>>2]=g;c[V>>2]=h;c[X>>2]=j;c[ba>>2]=k;c[H>>2]=0;c[ta>>2]=0;c[o>>2]=0;c[y>>2]=0;c[qa>>2]=0;c[N>>2]=0;c[s>>2]=0;c[u>>2]=c[(c[R>>2]|0)+52>>2];if((c[V>>2]|0)==0){c[I>>2]=7;f=c[I>>2]|0;i=m;return f|0}c[n>>2]=(d[(c[R>>2]|0)+1>>0]|0)+(e[(c[R>>2]|0)+16>>1]|0);if((c[n>>2]|0)<2){c[P>>2]=0}else{do{if((c[wa>>2]|0)==0){c[P>>2]=0}else{if((c[wa>>2]|0)==(c[n>>2]|0)){c[P>>2]=(c[n>>2]|0)-2+(c[ba>>2]|0);break}else{c[P>>2]=(c[wa>>2]|0)-1;break}}}while(0);c[n>>2]=2-(c[ba>>2]|0)}c[q>>2]=(c[n>>2]|0)+1;k=c[R>>2]|0;if(((c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)|0)==(e[(c[R>>2]|0)+16>>1]|0)){c[W>>2]=(c[(c[R>>2]|0)+56>>2]|0)+((d[k+5>>0]|0)+8)}else{c[W>>2]=(c[k+56>>2]|0)+(e[(c[R>>2]|0)+18>>1]&(d[(c[(c[R>>2]|0)+64>>2]|0)+((c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)<<1)>>0]<<8|d[(c[(c[R>>2]|0)+64>>2]|0)+((c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)<<1)+1>>0]))}c[aa>>2]=zo(c[W>>2]|0)|0;while(1){c[y>>2]=cD(c[u>>2]|0,c[aa>>2]|0,r+(c[n>>2]<<2)|0,0)|0;if((c[y>>2]|0)!=0){va=16;break}c[ta>>2]=(c[ta>>2]|0)+(1+(e[(c[r+(c[n>>2]<<2)>>2]|0)+16>>1]|0)+(d[(c[r+(c[n>>2]<<2)>>2]|0)+1>>0]|0));f=c[n>>2]|0;c[n>>2]=f+ -1;if((f|0)==0){va=26;break}if(((c[n>>2]|0)+(c[P>>2]|0)|0)==(e[(c[R>>2]|0)+20>>1]|0)){if((d[(c[R>>2]|0)+1>>0]|0)!=0){c[sa+(c[n>>2]<<2)>>2]=c[(c[R>>2]|0)+32>>2];c[aa>>2]=zo(c[sa+(c[n>>2]<<2)>>2]|0)|0;f=(QH(c[R>>2]|0,c[sa+(c[n>>2]<<2)>>2]|0)|0)&65535;c[ga+(c[n>>2]<<2)>>2]=f;a[(c[R>>2]|0)+1>>0]=0;continue}}c[sa+(c[n>>2]<<2)>>2]=(c[(c[R>>2]|0)+56>>2]|0)+(e[(c[R>>2]|0)+18>>1]&(d[(c[(c[R>>2]|0)+64>>2]|0)+((c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)<<1)>>0]<<8|d[(c[(c[R>>2]|0)+64>>2]|0)+((c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)<<1)+1>>0]));c[aa>>2]=zo(c[sa+(c[n>>2]<<2)>>2]|0)|0;f=(QH(c[R>>2]|0,c[sa+(c[n>>2]<<2)>>2]|0)|0)&65535;c[ga+(c[n>>2]<<2)>>2]=f;if((b[(c[u>>2]|0)+22>>1]&4|0)!=0){c[va>>2]=(c[sa+(c[n>>2]<<2)>>2]|0)-(c[(c[R>>2]|0)+56>>2]|0);if(((c[va>>2]|0)+(c[ga+(c[n>>2]<<2)>>2]|0)|0)>(c[(c[u>>2]|0)+36>>2]|0)){va=23;break}fL((c[V>>2]|0)+(c[va>>2]|0)|0,c[sa+(c[n>>2]<<2)>>2]|0,c[ga+(c[n>>2]<<2)>>2]|0)|0;c[sa+(c[n>>2]<<2)>>2]=(c[V>>2]|0)+((c[sa+(c[n>>2]<<2)>>2]|0)-(c[(c[R>>2]|0)+56>>2]|0))}wI(c[R>>2]|0,(c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)|0,c[ga+(c[n>>2]<<2)>>2]|0,y)}a:do{if((va|0)==16){aL(r|0,0,(c[n>>2]|0)+1<<2|0)|0}else if((va|0)==23){c[y>>2]=dq(57387)|0;aL(r|0,0,(c[n>>2]|0)+1<<2|0)|0}else if((va|0)==26){c[ta>>2]=(c[ta>>2]|0)+3&-4;c[w>>2]=(c[(c[u>>2]|0)+32>>2]|0)+80;c[ua>>2]=(c[ta>>2]<<2)+(c[ta>>2]<<1)+(c[(c[u>>2]|0)+32>>2]|0)+($(c[w>>2]|0,c[q>>2]|0)|0);c[s>>2]=Kg(c[ua>>2]|0)|0;if((c[s>>2]|0)==0){c[y>>2]=7;break}c[J>>2]=(c[s>>2]|0)+(c[ta>>2]<<2);c[oa>>2]=(c[J>>2]|0)+(c[ta>>2]<<1);b[v>>1]=d[(c[r>>2]|0)+3>>0]<<2;c[l>>2]=d[(c[r>>2]|0)+4>>0]|0;c[n>>2]=0;while(1){ta=c[u>>2]|0;if((c[n>>2]|0)>=(c[q>>2]|0)){break}k=(c[ta+32>>2]|0)+($(c[w>>2]|0,c[n>>2]|0)|0)|0;k=(c[oa>>2]|0)+k|0;c[F+(c[n>>2]<<2)>>2]=k;c[ja>>2]=k;k=(c[ja>>2]|0)+0|0;ua=(c[r+(c[n>>2]<<2)>>2]|0)+0|0;ta=k+76|0;do{c[k>>2]=c[ua>>2];k=k+4|0;ua=ua+4|0}while((k|0)<(ta|0));c[(c[ja>>2]|0)+56>>2]=(c[ja>>2]|0)+76;fL(c[(c[ja>>2]|0)+56>>2]|0,c[(c[r+(c[n>>2]<<2)>>2]|0)+56>>2]|0,c[(c[u>>2]|0)+32>>2]|0)|0;c[ka>>2]=(e[(c[ja>>2]|0)+16>>1]|0)+(d[(c[ja>>2]|0)+1>>0]|0);b:do{if((d[(c[ja>>2]|0)+1>>0]|0)>0){c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[ka>>2]|0)){break b}f=DI(c[ja>>2]|0,c[E>>2]|0)|0;c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]=f;f=QH(c[ja>>2]|0,c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]|0)|0;b[(c[J>>2]|0)+(c[H>>2]<<1)>>1]=f;c[H>>2]=(c[H>>2]|0)+1;c[E>>2]=(c[E>>2]|0)+1}}else{c[la>>2]=c[(c[ja>>2]|0)+56>>2];b[ma>>1]=b[(c[ja>>2]|0)+18>>1]|0;b[na>>1]=b[(c[ja>>2]|0)+12>>1]|0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[ka>>2]|0)){break b}c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]=(c[la>>2]|0)+(e[ma>>1]&(d[(c[la>>2]|0)+((e[na>>1]|0)+(c[E>>2]<<1))>>0]<<8|d[(c[la>>2]|0)+((e[na>>1]|0)+(c[E>>2]<<1))+1>>0]));f=QH(c[ja>>2]|0,c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]|0)|0;b[(c[J>>2]|0)+(c[H>>2]<<1)>>1]=f;c[H>>2]=(c[H>>2]|0)+1;c[E>>2]=(c[E>>2]|0)+1}}}while(0);if((c[n>>2]|0)<((c[q>>2]|0)-1|0)){if((c[l>>2]|0)==0){b[pa>>1]=c[ga+(c[n>>2]<<2)>>2];b[(c[J>>2]|0)+(c[H>>2]<<1)>>1]=b[pa>>1]|0;c[ra>>2]=(c[oa>>2]|0)+(c[qa>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(e[pa>>1]|0);fL(c[ra>>2]|0,c[sa+(c[n>>2]<<2)>>2]|0,e[pa>>1]|0)|0;c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]=(c[ra>>2]|0)+(e[v>>1]|0);b[(c[J>>2]|0)+(c[H>>2]<<1)>>1]=(e[(c[J>>2]|0)+(c[H>>2]<<1)>>1]|0)-(e[v>>1]|0);ta=c[H>>2]|0;if((a[(c[ja>>2]|0)+3>>0]|0)!=0){if((e[(c[J>>2]|0)+(ta<<1)>>1]|0)<4){b[(c[J>>2]|0)+(c[H>>2]<<1)>>1]=4}}else{f=c[(c[s>>2]|0)+(ta<<2)>>2]|0;g=(c[(c[ja>>2]|0)+56>>2]|0)+8|0;a[f+0>>0]=a[g+0>>0]|0;a[f+1>>0]=a[g+1>>0]|0;a[f+2>>0]=a[g+2>>0]|0;a[f+3>>0]=a[g+3>>0]|0}c[H>>2]=(c[H>>2]|0)+1}}c[n>>2]=(c[n>>2]|0)+1}c[ia>>2]=(c[ta+36>>2]|0)-12+(e[v>>1]|0);c[n>>2]=0;c[w>>2]=0;c[ha>>2]=0;while(1){if((c[n>>2]|0)>=(c[H>>2]|0)){break}c[ha>>2]=(c[ha>>2]|0)+((e[(c[J>>2]|0)+(c[n>>2]<<1)>>1]|0)+2);if((c[ha>>2]|0)>(c[ia>>2]|0)){c[ga+(c[w>>2]<<2)>>2]=(c[ha>>2]|0)-(e[(c[J>>2]|0)+(c[n>>2]<<1)>>1]|0);c[z+(c[w>>2]<<2)>>2]=c[n>>2];if((c[l>>2]|0)!=0){c[n>>2]=(c[n>>2]|0)+ -1}c[ha>>2]=0;c[w>>2]=(c[w>>2]|0)+1;if((c[w>>2]|0)>4){va=51;break}}c[n>>2]=(c[n>>2]|0)+1}if((va|0)==51){c[y>>2]=dq(57526)|0;break}c[ga+(c[w>>2]<<2)>>2]=c[ha>>2];c[z+(c[w>>2]<<2)>>2]=c[H>>2];c[w>>2]=(c[w>>2]|0)+1;c[n>>2]=(c[w>>2]|0)-1;while(1){if((c[n>>2]|0)<=0){break}c[ca>>2]=c[ga+(c[n>>2]<<2)>>2];c[ea>>2]=c[ga+((c[n>>2]|0)-1<<2)>>2];c[fa>>2]=(c[z+((c[n>>2]|0)-1<<2)>>2]|0)-1;c[da>>2]=(c[fa>>2]|0)+1-(c[l>>2]|0);while(1){if((c[ca>>2]|0)!=0){if((c[ba>>2]|0)!=0){break}if(((c[ca>>2]|0)+(e[(c[J>>2]|0)+(c[da>>2]<<1)>>1]|0)+2|0)>((c[ea>>2]|0)-((e[(c[J>>2]|0)+(c[fa>>2]<<1)>>1]|0)+2)|0)){break}}c[ca>>2]=(c[ca>>2]|0)+((e[(c[J>>2]|0)+(c[da>>2]<<1)>>1]|0)+2);c[ea>>2]=(c[ea>>2]|0)-((e[(c[J>>2]|0)+(c[fa>>2]<<1)>>1]|0)+2);f=z+((c[n>>2]|0)-1<<2)|0;c[f>>2]=(c[f>>2]|0)+ -1;c[fa>>2]=(c[z+((c[n>>2]|0)-1<<2)>>2]|0)-1;c[da>>2]=(c[fa>>2]|0)+1-(c[l>>2]|0)}c[ga+(c[n>>2]<<2)>>2]=c[ca>>2];c[ga+((c[n>>2]|0)-1<<2)>>2]=c[ea>>2];c[n>>2]=(c[n>>2]|0)+ -1}if((c[(c[r>>2]|0)+72>>2]|0)>>>0<=1){c[y>>2]=dq(57588)|0;break}c[M>>2]=d[c[(c[r>>2]|0)+56>>2]>>0]|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[w>>2]|0)){break}if((c[n>>2]|0)<(c[q>>2]|0)){f=c[r+(c[n>>2]<<2)>>2]|0;c[p+(c[n>>2]<<2)>>2]=f;c[_>>2]=f;c[r+(c[n>>2]<<2)>>2]=0;c[y>>2]=ld(c[(c[_>>2]|0)+68>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+1;if((c[y>>2]|0)!=0){break a}}else{c[y>>2]=ZG(c[u>>2]|0,_,aa,(c[ba>>2]|0)!=0?1:c[aa>>2]|0,0)|0;if((c[y>>2]|0)!=0){break a}c[p+(c[n>>2]<<2)>>2]=c[_>>2];c[o>>2]=(c[o>>2]|0)+1;if((a[(c[u>>2]|0)+17>>0]|0)!=0){bH(c[u>>2]|0,c[(c[_>>2]|0)+72>>2]|0,5,c[(c[R>>2]|0)+72>>2]|0,y);if((c[y>>2]|0)!=0){break a}}}c[n>>2]=(c[n>>2]|0)+1}while(1){if((c[n>>2]|0)>=(c[q>>2]|0)){break}XH(c[r+(c[n>>2]<<2)>>2]|0,y);if((c[y>>2]|0)!=0){break a}Gr(c[r+(c[n>>2]<<2)>>2]|0);c[r+(c[n>>2]<<2)>>2]=0;c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=0;while(1){if((c[n>>2]|0)>=((c[w>>2]|0)-1|0)){break}c[Z>>2]=c[(c[p+(c[n>>2]<<2)>>2]|0)+72>>2];c[Y>>2]=c[n>>2];c[E>>2]=(c[n>>2]|0)+1;while(1){if((c[E>>2]|0)>=(c[w>>2]|0)){break}if((c[(c[p+(c[E>>2]<<2)>>2]|0)+72>>2]|0)>>>0<(c[Z>>2]|0)>>>0){c[Y>>2]=c[E>>2];c[Z>>2]=c[(c[p+(c[E>>2]<<2)>>2]|0)+72>>2]}c[E>>2]=(c[E>>2]|0)+1}if((c[Y>>2]|0)>(c[n>>2]|0)){c[U>>2]=c[p+(c[n>>2]<<2)>>2];c[p+(c[n>>2]<<2)>>2]=c[p+(c[Y>>2]<<2)>>2];c[p+(c[Y>>2]<<2)>>2]=c[U>>2]}c[n>>2]=(c[n>>2]|0)+1}Xq(c[W>>2]|0,c[(c[p+((c[o>>2]|0)-1<<2)>>2]|0)+72>>2]|0);c[E>>2]=0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break}c[S>>2]=c[p+(c[n>>2]<<2)>>2];YH(c[S>>2]|0,c[M>>2]|0);EI(c[S>>2]|0,(c[z+(c[n>>2]<<2)>>2]|0)-(c[E>>2]|0)|0,(c[s>>2]|0)+(c[E>>2]<<2)|0,(c[J>>2]|0)+(c[E>>2]<<1)|0);c[E>>2]=c[z+(c[n>>2]<<2)>>2];if((c[E>>2]|0)<(c[H>>2]|0)){c[Q>>2]=c[(c[s>>2]|0)+(c[E>>2]<<2)>>2];c[O>>2]=(e[(c[J>>2]|0)+(c[E>>2]<<1)>>1]|0)+(e[v>>1]|0);c[K>>2]=(c[V>>2]|0)+(c[N>>2]|0);do{if((a[(c[S>>2]|0)+3>>0]|0)!=0){if((c[l>>2]|0)!=0){c[E>>2]=(c[E>>2]|0)+ -1;nD(c[S>>2]|0,c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0,T);c[Q>>2]=c[K>>2];f=T;c[O>>2]=4+(lI((c[Q>>2]|0)+4|0,c[f>>2]|0,c[f+4>>2]|0)|0);c[K>>2]=0;break}c[Q>>2]=(c[Q>>2]|0)+ -4;if((e[(c[J>>2]|0)+(c[E>>2]<<1)>>1]|0)==4){c[O>>2]=(QH(c[R>>2]|0,c[Q>>2]|0)|0)&65535}}else{f=(c[(c[S>>2]|0)+56>>2]|0)+8|0;g=c[Q>>2]|0;a[f+0>>0]=a[g+0>>0]|0;a[f+1>>0]=a[g+1>>0]|0;a[f+2>>0]=a[g+2>>0]|0;a[f+3>>0]=a[g+3>>0]|0}}while(0);c[N>>2]=(c[N>>2]|0)+(c[O>>2]|0);yI(c[R>>2]|0,c[P>>2]|0,c[Q>>2]|0,c[O>>2]|0,c[K>>2]|0,c[(c[S>>2]|0)+72>>2]|0,y);if((c[y>>2]|0)!=0){break a}c[E>>2]=(c[E>>2]|0)+1;c[P>>2]=(c[P>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}if((c[M>>2]&8|0)==0){c[L>>2]=(c[(c[F+((c[q>>2]|0)-1<<2)>>2]|0)+56>>2]|0)+8;f=(c[(c[p+((c[o>>2]|0)-1<<2)>>2]|0)+56>>2]|0)+8|0;g=c[L>>2]|0;a[f+0>>0]=a[g+0>>0]|0;a[f+1>>0]=a[g+1>>0]|0;a[f+2>>0]=a[g+2>>0]|0;a[f+3>>0]=a[g+3>>0]|0}if((c[X>>2]|0)!=0){if((e[(c[R>>2]|0)+16>>1]|0)==0){if((d[(c[R>>2]|0)+5>>0]|0)<=(e[(c[p>>2]|0)+14>>1]|0)){FI(c[p>>2]|0,c[R>>2]|0,y);XH(c[p>>2]|0,y);break}}}if((a[(c[u>>2]|0)+17>>0]|0)!=0){c[x>>2]=c[p>>2];c[D>>2]=c[F>>2];c[C>>2]=d[(c[D>>2]|0)+1>>0]|0;c[G>>2]=(e[(c[D>>2]|0)+16>>1]|0)+(c[C>>2]|0);if((c[C>>2]|0)!=0){K=e[(c[D>>2]|0)+20>>1]|0}else{K=-1}c[A>>2]=K;c[E>>2]=0;c[w>>2]=0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[H>>2]|0)){break}c[B>>2]=0;while(1){if((c[n>>2]|0)!=(c[G>>2]|0)){break}f=(c[E>>2]|0)+1|0;c[E>>2]=f;c[D>>2]=c[F+(f<<2)>>2];c[G>>2]=(c[n>>2]|0)+(((c[l>>2]|0)!=0^1)&1)+(e[(c[D>>2]|0)+16>>1]|0)+(d[(c[D>>2]|0)+1>>0]|0);if((a[(c[D>>2]|0)+1>>0]|0)!=0){c[C>>2]=d[(c[D>>2]|0)+1>>0]|0;c[A>>2]=(c[n>>2]|0)+(((c[l>>2]|0)!=0^1)&1)+(e[(c[D>>2]|0)+20>>1]|0)}c[B>>2]=((c[l>>2]|0)!=0^1)&1}if((c[n>>2]|0)==(c[A>>2]|0)){c[B>>2]=1;f=(c[C>>2]|0)+ -1|0;c[C>>2]=f;if((f|0)>0){c[A>>2]=(c[A>>2]|0)+1}}if((c[n>>2]|0)==(c[z+(c[w>>2]<<2)>>2]|0)){f=(c[w>>2]|0)+1|0;c[w>>2]=f;c[x>>2]=c[p+(f<<2)>>2];if((c[l>>2]|0)!=0){va=117}}else{va=117}do{if((va|0)==117){va=0;if((c[B>>2]|0)==0){if((c[(c[D>>2]|0)+72>>2]|0)==(c[(c[x>>2]|0)+72>>2]|0)){break}}if((b[v>>1]|0)==0){g=c[u>>2]|0;f=zo(c[(c[s>>2]|0)+(c[n>>2]<<2)>>2]|0)|0;bH(g,f,5,c[(c[x>>2]|0)+72>>2]|0,y)}if((e[(c[J>>2]|0)+(c[n>>2]<<1)>>1]|0)>(e[(c[x>>2]|0)+10>>1]|0)){dH(c[x>>2]|0,c[(c[s>>2]|0)+(c[n>>2]<<2)>>2]|0,y)}}}while(0);c[n>>2]=(c[n>>2]|0)+1}if((b[v>>1]|0)==0){c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break a}c[t>>2]=zo((c[(c[p+(c[n>>2]<<2)>>2]|0)+56>>2]|0)+8|0)|0;bH(c[u>>2]|0,c[t>>2]|0,5,c[(c[p+(c[n>>2]<<2)>>2]|0)+72>>2]|0,y);c[n>>2]=(c[n>>2]|0)+1}}}}}while(0);Lg(c[s>>2]|0);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[q>>2]|0)){break}Gr(c[r+(c[n>>2]<<2)>>2]|0);c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break}Gr(c[p+(c[n>>2]<<2)>>2]|0);c[n>>2]=(c[n>>2]|0)+1}c[I>>2]=c[y>>2];f=c[I>>2]|0;i=m;return f|0}function DI(a,b){a=a|0;b=b|0;var f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;h=j+16|0;f=j;g=j+4|0;k=j+8|0;l=j+12|0;c[f>>2]=a;c[g>>2]=b;c[k>>2]=(d[(c[f>>2]|0)+1>>0]|0)-1;while(1){if((c[k>>2]|0)<0){b=8;break}c[l>>2]=e[(c[f>>2]|0)+20+(c[k>>2]<<1)>>1]|0;if((c[l>>2]|0)<=(c[g>>2]|0)){if((c[l>>2]|0)==(c[g>>2]|0)){b=5;break}c[g>>2]=(c[g>>2]|0)+ -1}c[k>>2]=(c[k>>2]|0)+ -1}if((b|0)==5){c[h>>2]=c[(c[f>>2]|0)+32+(c[k>>2]<<2)>>2];a=c[h>>2]|0;i=j;return a|0}else if((b|0)==8){c[h>>2]=(c[(c[f>>2]|0)+56>>2]|0)+((e[(c[f>>2]|0)+18>>1]|0)&((d[(c[(c[f>>2]|0)+64>>2]|0)+(c[g>>2]<<1)>>0]|0)<<8|(d[(c[(c[f>>2]|0)+64>>2]|0)+(c[g>>2]<<1)+1>>0]|0)));a=c[h>>2]|0;i=j;return a|0}return 0}function EI(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;q=i;i=i+48|0;o=q+20|0;r=q+36|0;v=q+32|0;s=q+28|0;k=q+24|0;u=q+16|0;n=q+12|0;l=q+8|0;m=q+4|0;p=q;t=q+40|0;c[o>>2]=f;c[r>>2]=g;c[v>>2]=h;c[s>>2]=j;c[l>>2]=c[(c[o>>2]|0)+56>>2];c[m>>2]=d[(c[o>>2]|0)+5>>0]|0;c[p>>2]=c[(c[(c[o>>2]|0)+52>>2]|0)+36>>2];c[u>>2]=(c[(c[o>>2]|0)+64>>2]|0)+(c[r>>2]<<1);c[n>>2]=c[p>>2];c[k>>2]=(c[r>>2]|0)-1;while(1){if((c[k>>2]|0)<0){break}b[t>>1]=b[(c[s>>2]|0)+(c[k>>2]<<1)>>1]|0;c[u>>2]=(c[u>>2]|0)+ -2;c[n>>2]=(c[n>>2]|0)-(e[t>>1]|0);a[c[u>>2]>>0]=c[n>>2]>>8;a[(c[u>>2]|0)+1>>0]=c[n>>2];fL((c[l>>2]|0)+(c[n>>2]|0)|0,c[(c[v>>2]|0)+(c[k>>2]<<2)>>2]|0,e[t>>1]|0|0)|0;c[k>>2]=(c[k>>2]|0)+ -1}a[(c[l>>2]|0)+((c[m>>2]|0)+3)>>0]=c[r>>2]>>8;a[(c[l>>2]|0)+((c[m>>2]|0)+3)+1>>0]=c[r>>2];a[(c[l>>2]|0)+((c[m>>2]|0)+5)>>0]=c[n>>2]>>8;a[(c[l>>2]|0)+((c[m>>2]|0)+5)+1>>0]=c[n>>2];f=(c[o>>2]|0)+14|0;b[f>>1]=(e[f>>1]|0)-((c[r>>2]<<1)+(c[p>>2]|0)-(c[n>>2]|0));b[(c[o>>2]|0)+16>>1]=c[r>>2];i=q;return}function FI(b,f,g){b=b|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=i;i=i+48|0;n=o+36|0;l=o+32|0;k=o+28|0;m=o+24|0;h=o+20|0;p=o+16|0;q=o+8|0;r=o+4|0;j=o;s=o+12|0;c[n>>2]=b;c[l>>2]=f;c[k>>2]=g;if((c[c[k>>2]>>2]|0)!=0){i=o;return}c[m>>2]=c[(c[n>>2]|0)+52>>2];c[h>>2]=c[(c[n>>2]|0)+56>>2];c[p>>2]=c[(c[l>>2]|0)+56>>2];c[q>>2]=d[(c[n>>2]|0)+5>>0]|0;c[r>>2]=(c[(c[l>>2]|0)+72>>2]|0)==1?100:0;c[s>>2]=d[(c[h>>2]|0)+((c[q>>2]|0)+5)>>0]<<8|d[(c[h>>2]|0)+((c[q>>2]|0)+5)+1>>0];fL((c[p>>2]|0)+(c[s>>2]|0)|0,(c[h>>2]|0)+(c[s>>2]|0)|0,(c[(c[m>>2]|0)+36>>2]|0)-(c[s>>2]|0)|0)|0;fL((c[p>>2]|0)+(c[r>>2]|0)|0,(c[h>>2]|0)+(c[q>>2]|0)|0,(e[(c[n>>2]|0)+12>>1]|0)+(e[(c[n>>2]|0)+16>>1]<<1)|0)|0;a[c[l>>2]>>0]=0;c[j>>2]=Lq(c[l>>2]|0)|0;if((c[j>>2]|0)!=0){c[c[k>>2]>>2]=c[j>>2];i=o;return}if((a[(c[m>>2]|0)+17>>0]|0)==0){i=o;return}b=aH(c[l>>2]|0)|0;c[c[k>>2]>>2]=b;i=o;return}function GI(b,f,g){b=b|0;f=f|0;g=g|0;var h=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;s=i;i=i+64|0;k=s+56|0;r=s+52|0;m=s+48|0;u=s+44|0;p=s+40|0;o=s+36|0;w=s+32|0;n=s+28|0;l=s+20|0;q=s+16|0;y=s+12|0;h=s+8|0;v=s+4|0;x=s;t=s+24|0;c[r>>2]=b;c[m>>2]=f;c[u>>2]=g;c[p>>2]=d[(c[r>>2]|0)+5>>0]|0;c[o>>2]=c[(c[r>>2]|0)+56>>2];c[y>>2]=c[(c[(c[r>>2]|0)+52>>2]|0)+36>>2];c[w>>2]=d[(c[o>>2]|0)+((c[p>>2]|0)+7)>>0]|0;c[l>>2]=(e[(c[r>>2]|0)+12>>1]|0)+((e[(c[r>>2]|0)+16>>1]|0)<<1);c[n>>2]=(((d[(c[o>>2]|0)+((c[p>>2]|0)+5)>>0]|0)<<8|(d[(c[o>>2]|0)+((c[p>>2]|0)+5)+1>>0]|0))-1&65535)+1;if((c[l>>2]|0)>(c[n>>2]|0)){c[k>>2]=dq(52373)|0;b=c[k>>2]|0;i=s;return b|0}a:do{if((c[w>>2]|0)>=60){c[q>>2]=HI(c[r>>2]|0)|0;if((c[q>>2]|0)==0){c[n>>2]=(((d[(c[o>>2]|0)+((c[p>>2]|0)+5)>>0]|0)<<8|(d[(c[o>>2]|0)+((c[p>>2]|0)+5)+1>>0]|0))-1&65535)+1;break}c[k>>2]=c[q>>2];b=c[k>>2]|0;i=s;return b|0}else{if(((c[l>>2]|0)+2|0)<=(c[n>>2]|0)){c[v>>2]=(c[p>>2]|0)+1;while(1){b=(d[(c[o>>2]|0)+(c[v>>2]|0)>>0]|0)<<8|(d[(c[o>>2]|0)+(c[v>>2]|0)+1>>0]|0);c[h>>2]=b;if((b|0)<=0){break a}if((c[h>>2]|0)>((c[y>>2]|0)-4|0)){j=12;break}if((c[h>>2]|0)<((c[v>>2]|0)+4|0)){j=12;break}c[x>>2]=(d[(c[o>>2]|0)+((c[h>>2]|0)+2)>>0]|0)<<8|(d[(c[o>>2]|0)+((c[h>>2]|0)+2)+1>>0]|0);if((c[x>>2]|0)>=(c[m>>2]|0)){break}c[v>>2]=c[h>>2]}if((j|0)==12){c[k>>2]=dq(52392)|0;b=c[k>>2]|0;i=s;return b|0}c[t>>2]=(c[x>>2]|0)-(c[m>>2]|0);do{if((c[t>>2]|0)<4){b=(c[o>>2]|0)+(c[v>>2]|0)|0;f=(c[o>>2]|0)+(c[h>>2]|0)|0;a[b+0>>0]=a[f+0>>0]|0;a[b+1>>0]=a[f+1>>0]|0;a[(c[o>>2]|0)+((c[p>>2]|0)+7)>>0]=(c[w>>2]|0)+(c[t>>2]|0)}else{if(((c[x>>2]|0)+(c[h>>2]|0)|0)<=(c[y>>2]|0)){a[(c[o>>2]|0)+((c[h>>2]|0)+2)>>0]=c[t>>2]>>8;a[(c[o>>2]|0)+((c[h>>2]|0)+2)+1>>0]=c[t>>2];break}c[k>>2]=dq(52405)|0;b=c[k>>2]|0;i=s;return b|0}}while(0);c[c[u>>2]>>2]=(c[h>>2]|0)+(c[t>>2]|0);c[k>>2]=0;b=c[k>>2]|0;i=s;return b|0}}}while(0);do{if(((c[l>>2]|0)+2+(c[m>>2]|0)|0)>(c[n>>2]|0)){c[q>>2]=HI(c[r>>2]|0)|0;if((c[q>>2]|0)==0){c[n>>2]=(((d[(c[o>>2]|0)+((c[p>>2]|0)+5)>>0]|0)<<8|(d[(c[o>>2]|0)+((c[p>>2]|0)+5)+1>>0]|0))-1&65535)+1;break}c[k>>2]=c[q>>2];b=c[k>>2]|0;i=s;return b|0}}while(0);c[n>>2]=(c[n>>2]|0)-(c[m>>2]|0);a[(c[o>>2]|0)+((c[p>>2]|0)+5)>>0]=c[n>>2]>>8;a[(c[o>>2]|0)+((c[p>>2]|0)+5)+1>>0]=c[n>>2];c[c[u>>2]>>2]=c[n>>2];c[k>>2]=0;b=c[k>>2]|0;i=s;return b|0}function HI(b){b=b|0;var f=0,g=0,h=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;f=i;i=i+64|0;m=f+56|0;l=f+52|0;t=f+48|0;o=f+44|0;j=f+40|0;n=f+36|0;p=f+32|0;s=f+28|0;g=f+20|0;v=f+16|0;h=f+12|0;q=f+8|0;k=f+4|0;r=f;u=f+24|0;c[l>>2]=b;c[q>>2]=II(c[c[(c[l>>2]|0)+52>>2]>>2]|0)|0;c[h>>2]=c[(c[l>>2]|0)+56>>2];c[j>>2]=d[(c[l>>2]|0)+5>>0]|0;c[s>>2]=e[(c[l>>2]|0)+12>>1]|0;c[v>>2]=e[(c[l>>2]|0)+16>>1]|0;c[p>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+36>>2];c[g>>2]=(d[(c[h>>2]|0)+((c[j>>2]|0)+5)>>0]|0)<<8|(d[(c[h>>2]|0)+((c[j>>2]|0)+5)+1>>0]|0);fL((c[q>>2]|0)+(c[g>>2]|0)|0,(c[h>>2]|0)+(c[g>>2]|0)|0,(c[p>>2]|0)-(c[g>>2]|0)|0)|0;c[g>>2]=c[p>>2];c[k>>2]=(c[s>>2]|0)+(c[v>>2]<<1);c[r>>2]=(c[p>>2]|0)-4;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[v>>2]|0)){n=10;break}c[u>>2]=(c[h>>2]|0)+((c[s>>2]|0)+(c[t>>2]<<1));c[o>>2]=(d[c[u>>2]>>0]|0)<<8|(d[(c[u>>2]|0)+1>>0]|0);if((c[o>>2]|0)<(c[k>>2]|0)){n=5;break}if((c[o>>2]|0)>(c[r>>2]|0)){n=5;break}c[n>>2]=(QH(c[l>>2]|0,(c[q>>2]|0)+(c[o>>2]|0)|0)|0)&65535;c[g>>2]=(c[g>>2]|0)-(c[n>>2]|0);if((c[g>>2]|0)<(c[k>>2]|0)){n=8;break}if(((c[o>>2]|0)+(c[n>>2]|0)|0)>(c[p>>2]|0)){n=8;break}fL((c[h>>2]|0)+(c[g>>2]|0)|0,(c[q>>2]|0)+(c[o>>2]|0)|0,c[n>>2]|0)|0;a[c[u>>2]>>0]=c[g>>2]>>8;a[(c[u>>2]|0)+1>>0]=c[g>>2];c[t>>2]=(c[t>>2]|0)+1}if((n|0)==5){c[m>>2]=dq(52304)|0;v=c[m>>2]|0;i=f;return v|0}else if((n|0)==8){c[m>>2]=dq(52316)|0;v=c[m>>2]|0;i=f;return v|0}else if((n|0)==10){a[(c[h>>2]|0)+((c[j>>2]|0)+5)>>0]=c[g>>2]>>8;a[(c[h>>2]|0)+((c[j>>2]|0)+5)+1>>0]=c[g>>2];a[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]=0;a[(c[h>>2]|0)+((c[j>>2]|0)+2)>>0]=0;a[(c[h>>2]|0)+((c[j>>2]|0)+7)>>0]=0;aL((c[h>>2]|0)+(c[k>>2]|0)|0,0,(c[g>>2]|0)-(c[k>>2]|0)|0)|0;if(((c[g>>2]|0)-(c[k>>2]|0)|0)!=(e[(c[l>>2]|0)+14>>1]|0|0)){c[m>>2]=dq(52333)|0;v=c[m>>2]|0;i=f;return v|0}else{c[m>>2]=0;v=c[m>>2]|0;i=f;return v|0}}return 0}function II(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+200>>2]|0}function JI(f,g,h){f=f|0;g=g|0;h=h|0;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;l=i;i=i+64|0;t=l+52|0;x=l+48|0;v=l+44|0;w=l+40|0;s=l+36|0;o=l+32|0;n=l+28|0;y=l+24|0;m=l+16|0;q=l+12|0;r=l+8|0;u=l+4|0;j=l;p=l+20|0;c[x>>2]=f;c[v>>2]=g;c[w>>2]=h;c[m>>2]=c[(c[x>>2]|0)+56>>2];if((b[(c[(c[x>>2]|0)+52>>2]|0)+22>>1]&4|0)!=0){aL((c[m>>2]|0)+(c[v>>2]|0)|0,0,c[w>>2]|0)|0}c[n>>2]=d[(c[x>>2]|0)+5>>0]|0;c[s>>2]=(c[n>>2]|0)+1;c[y>>2]=(c[(c[(c[x>>2]|0)+52>>2]|0)+36>>2]|0)-4;while(1){f=(d[(c[m>>2]|0)+(c[s>>2]|0)>>0]|0)<<8|(d[(c[m>>2]|0)+(c[s>>2]|0)+1>>0]|0);c[o>>2]=f;if((f|0)<(c[v>>2]|0)){g=(c[o>>2]|0)>0}else{g=0}h=c[o>>2]|0;if(!g){break}if((h|0)<((c[s>>2]|0)+4|0)){k=8;break}c[s>>2]=c[o>>2]}if((k|0)==8){c[t>>2]=dq(52483)|0;f=c[t>>2]|0;i=l;return f|0}if((h|0)>(c[y>>2]|0)){c[t>>2]=dq(52488)|0;f=c[t>>2]|0;i=l;return f|0}a[(c[m>>2]|0)+(c[s>>2]|0)>>0]=c[v>>2]>>8;a[(c[m>>2]|0)+(c[s>>2]|0)+1>>0]=c[v>>2];a[(c[m>>2]|0)+(c[v>>2]|0)>>0]=c[o>>2]>>8;a[(c[m>>2]|0)+(c[v>>2]|0)+1>>0]=c[o>>2];a[(c[m>>2]|0)+((c[v>>2]|0)+2)>>0]=c[w>>2]>>8;a[(c[m>>2]|0)+((c[v>>2]|0)+2)+1>>0]=c[w>>2];b[(c[x>>2]|0)+14>>1]=(e[(c[x>>2]|0)+14>>1]|0)+(c[w>>2]&65535);c[s>>2]=(c[n>>2]|0)+1;while(1){f=(d[(c[m>>2]|0)+(c[s>>2]|0)>>0]|0)<<8|(d[(c[m>>2]|0)+(c[s>>2]|0)+1>>0]|0);c[o>>2]=f;if((f|0)<=0){break}c[q>>2]=(d[(c[m>>2]|0)+(c[o>>2]|0)>>0]|0)<<8|(d[(c[m>>2]|0)+(c[o>>2]|0)+1>>0]|0);c[r>>2]=(d[(c[m>>2]|0)+((c[o>>2]|0)+2)>>0]|0)<<8|(d[(c[m>>2]|0)+((c[o>>2]|0)+2)+1>>0]|0);if(!((c[q>>2]|0)>0?((c[o>>2]|0)+(c[r>>2]|0)+3|0)>=(c[q>>2]|0):0)){c[s>>2]=c[o>>2];continue}c[j>>2]=(c[q>>2]|0)-((c[o>>2]|0)+(c[r>>2]|0));if((c[j>>2]|0)<0){k=17;break}if((c[j>>2]|0)>(d[(c[m>>2]|0)+((c[n>>2]|0)+7)>>0]|0|0)){k=17;break}f=(c[m>>2]|0)+((c[n>>2]|0)+7)|0;a[f>>0]=(d[f>>0]|0)-(c[j>>2]&255);c[u>>2]=(d[(c[m>>2]|0)+(c[q>>2]|0)>>0]|0)<<8|(d[(c[m>>2]|0)+(c[q>>2]|0)+1>>0]|0);a[(c[m>>2]|0)+(c[o>>2]|0)>>0]=c[u>>2]>>8;a[(c[m>>2]|0)+(c[o>>2]|0)+1>>0]=c[u>>2];c[u>>2]=(c[q>>2]|0)+((d[(c[m>>2]|0)+((c[q>>2]|0)+2)>>0]|0)<<8|(d[(c[m>>2]|0)+((c[q>>2]|0)+2)+1>>0]|0))-(c[o>>2]|0);a[(c[m>>2]|0)+((c[o>>2]|0)+2)>>0]=c[u>>2]>>8;a[(c[m>>2]|0)+((c[o>>2]|0)+2)+1>>0]=c[u>>2]}if((k|0)==17){c[t>>2]=dq(52507)|0;f=c[t>>2]|0;i=l;return f|0}if((d[(c[m>>2]|0)+((c[n>>2]|0)+1)>>0]|0|0)==(d[(c[m>>2]|0)+((c[n>>2]|0)+5)>>0]|0|0)){if((d[(c[m>>2]|0)+((c[n>>2]|0)+2)>>0]|0|0)==(d[(c[m>>2]|0)+((c[n>>2]|0)+6)>>0]|0|0)){c[o>>2]=(d[(c[m>>2]|0)+((c[n>>2]|0)+1)>>0]|0)<<8|(d[(c[m>>2]|0)+((c[n>>2]|0)+1)+1>>0]|0);f=(c[m>>2]|0)+((c[n>>2]|0)+1)|0;g=(c[m>>2]|0)+(c[o>>2]|0)|0;a[f+0>>0]=a[g+0>>0]|0;a[f+1>>0]=a[g+1>>0]|0;c[p>>2]=((d[(c[m>>2]|0)+((c[n>>2]|0)+5)>>0]|0)<<8|(d[(c[m>>2]|0)+((c[n>>2]|0)+5)+1>>0]|0))+((d[(c[m>>2]|0)+((c[o>>2]|0)+2)>>0]|0)<<8|(d[(c[m>>2]|0)+((c[o>>2]|0)+2)+1>>0]|0));a[(c[m>>2]|0)+((c[n>>2]|0)+5)>>0]=c[p>>2]>>8;a[(c[m>>2]|0)+((c[n>>2]|0)+5)+1>>0]=c[p>>2]}}c[t>>2]=0;f=c[t>>2]|0;i=l;return f|0}function KI(b,f,g,h,j,k,l,m,n){b=b|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;r=i;i=i+144|0;q=r+60|0;L=r+124|0;z=r+120|0;I=r+116|0;H=r+32|0;D=r+112|0;K=r+108|0;M=r+104|0;y=r+100|0;u=r+96|0;E=r+92|0;G=r+88|0;v=r+84|0;p=r+64|0;w=r+56|0;J=r+48|0;o=r+40|0;C=r+44|0;N=r+52|0;B=r+68|0;F=r+72|0;A=r+76|0;x=r;s=r+80|0;t=r+128|0;c[L>>2]=b;c[z>>2]=f;c[I>>2]=g;b=H;c[b>>2]=h;c[b+4>>2]=j;c[D>>2]=k;c[K>>2]=l;c[M>>2]=m;c[y>>2]=n;c[J>>2]=0;c[o>>2]=0;c[B>>2]=c[(c[L>>2]|0)+52>>2];c[F>>2]=0;c[A>>2]=0;if((a[(c[L>>2]|0)+3>>0]|0)==0){c[A>>2]=(c[A>>2]|0)+4}if((a[(c[L>>2]|0)+4>>0]|0)!=0){if(((c[K>>2]|0)+(c[M>>2]|0)|0)>>>0<128){a[(c[z>>2]|0)+(c[A>>2]|0)>>0]=(c[K>>2]|0)+(c[M>>2]|0);n=1}else{n=UF((c[z>>2]|0)+(c[A>>2]|0)|0,(c[K>>2]|0)+(c[M>>2]|0)|0)|0}c[A>>2]=(c[A>>2]|0)+(n&255)}else{c[M>>2]=0;c[K>>2]=0}b=H;b=lI((c[z>>2]|0)+(c[A>>2]|0)|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[A>>2]=(c[A>>2]|0)+b;nD(c[L>>2]|0,c[z>>2]|0,x);c[u>>2]=(c[K>>2]|0)+(c[M>>2]|0);do{if((a[(c[L>>2]|0)+2>>0]|0)!=0){c[E>>2]=c[D>>2];c[G>>2]=c[K>>2];c[K>>2]=0}else{b=H;f=c[b+4>>2]|0;if(!((f|0)>0|(f|0)==0&(c[b>>2]|0)>>>0>2147483647)){if((c[I>>2]|0)!=0){c[u>>2]=(c[u>>2]|0)+(c[H>>2]|0);c[E>>2]=c[I>>2];c[G>>2]=c[H>>2];break}}c[q>>2]=dq(56721)|0;b=c[q>>2]|0;i=r;return b|0}}while(0);c[c[y>>2]>>2]=e[x+26>>1]|0;c[w>>2]=e[x+22>>1]|0;c[N>>2]=(c[z>>2]|0)+(c[A>>2]|0);c[C>>2]=(c[z>>2]|0)+(e[x+24>>1]|0);while(1){if((c[u>>2]|0)<=0){s=37;break}if((c[w>>2]|0)==0){c[s>>2]=c[F>>2];if((a[(c[B>>2]|0)+17>>0]|0)!=0){while(1){c[F>>2]=(c[F>>2]|0)+1;b=sD(c[B>>2]|0,c[F>>2]|0)|0;if((b|0)==(c[F>>2]|0)){continue}if((c[F>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[B>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){break}}}c[p>>2]=ZG(c[B>>2]|0,J,F,c[F>>2]|0,0)|0;if((d[(c[B>>2]|0)+17>>0]|0)!=0){if((c[p>>2]|0)==0){a[t>>0]=(c[s>>2]|0)!=0?4:3;bH(c[B>>2]|0,c[F>>2]|0,a[t>>0]|0,c[s>>2]|0,p);if((c[p>>2]|0)!=0){Gr(c[J>>2]|0)}}}if((c[p>>2]|0)!=0){s=26;break}Xq(c[C>>2]|0,c[F>>2]|0);Gr(c[o>>2]|0);c[o>>2]=c[J>>2];c[C>>2]=c[(c[J>>2]|0)+56>>2];Xq(c[C>>2]|0,0);c[N>>2]=(c[(c[J>>2]|0)+56>>2]|0)+4;c[w>>2]=(c[(c[B>>2]|0)+36>>2]|0)-4}c[v>>2]=c[u>>2];if((c[v>>2]|0)>(c[w>>2]|0)){c[v>>2]=c[w>>2]}if((c[G>>2]|0)>0){if((c[v>>2]|0)>(c[G>>2]|0)){c[v>>2]=c[G>>2]}fL(c[N>>2]|0,c[E>>2]|0,c[v>>2]|0)|0}else{aL(c[N>>2]|0,0,c[v>>2]|0)|0}c[u>>2]=(c[u>>2]|0)-(c[v>>2]|0);c[N>>2]=(c[N>>2]|0)+(c[v>>2]|0);c[E>>2]=(c[E>>2]|0)+(c[v>>2]|0);c[G>>2]=(c[G>>2]|0)-(c[v>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[v>>2]|0);if((c[G>>2]|0)!=0){continue}c[G>>2]=c[K>>2];c[E>>2]=c[D>>2]}if((s|0)==26){Gr(c[o>>2]|0);c[q>>2]=c[p>>2];b=c[q>>2]|0;i=r;return b|0}else if((s|0)==37){Gr(c[o>>2]|0);c[q>>2]=0;b=c[q>>2]|0;i=r;return b|0}return 0}function LI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;c[e>>2]=a;c[g>>2]=b;c[f>>2]=c[(c[g>>2]|0)+64>>2];if((c[f>>2]|0)==0){i=d;return}vG(c[e>>2]|0,c[f>>2]|0);cc(c[e>>2]|0,c[(c[f>>2]|0)+52>>2]|0);cc(c[e>>2]|0,c[f>>2]|0);c[(c[g>>2]|0)+64>>2]=0;i=d;return}function MI(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=i;i=i+64|0;j=k+44|0;o=k+40|0;v=k+36|0;n=k+32|0;g=k+28|0;l=k+24|0;p=k+20|0;q=k+12|0;m=k+8|0;t=k+4|0;u=k;r=k+48|0;s=k+16|0;c[o>>2]=b;c[v>>2]=e;c[n>>2]=f;c[g>>2]=c[(c[o>>2]|0)+4>>2];f=c[g>>2]|0;if((a[(c[g>>2]|0)+17>>0]|0)!=0){XG(f);Xc(c[o>>2]|0,4,p);c[p>>2]=(c[p>>2]|0)+1;while(1){b=c[p>>2]|0;if((b|0)!=(sD(c[g>>2]|0,c[p>>2]|0)|0)){if((c[p>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[g>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){break}}c[p>>2]=(c[p>>2]|0)+1}c[q>>2]=ZG(c[g>>2]|0,u,t,c[p>>2]|0,1)|0;if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}if((c[t>>2]|0)!=(c[p>>2]|0)){a[r>>0]=0;c[s>>2]=0;c[q>>2]=hF(c[g>>2]|0,0,0)|0;Gr(c[u>>2]|0);if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}c[q>>2]=eD(c[g>>2]|0,c[p>>2]|0,l,0)|0;if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}c[q>>2]=tD(c[g>>2]|0,c[p>>2]|0,r,s)|0;if((d[r>>0]|0)==1){h=15}else{if((d[r>>0]|0)==2){h=15}}if((h|0)==15){c[q>>2]=dq(58462)|0}if((c[q>>2]|0)!=0){Gr(c[l>>2]|0);c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}c[q>>2]=_G(c[g>>2]|0,c[l>>2]|0,a[r>>0]|0,c[s>>2]|0,c[t>>2]|0,0)|0;Gr(c[l>>2]|0);if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}c[q>>2]=eD(c[g>>2]|0,c[p>>2]|0,l,0)|0;if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}c[q>>2]=ld(c[(c[l>>2]|0)+68>>2]|0)|0;if((c[q>>2]|0)!=0){Gr(c[l>>2]|0);c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}}else{c[l>>2]=c[u>>2]}bH(c[g>>2]|0,c[p>>2]|0,1,0,q);if((c[q>>2]|0)!=0){Gr(c[l>>2]|0);c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}c[q>>2]=gd(c[o>>2]|0,4,c[p>>2]|0)|0;if((c[q>>2]|0)!=0){Gr(c[l>>2]|0);c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}}else{c[q>>2]=ZG(f,l,p,1,0)|0;if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}}if((c[n>>2]&1|0)!=0){c[m>>2]=13}else{c[m>>2]=10}YH(c[l>>2]|0,c[m>>2]|0);dd(c[(c[l>>2]|0)+68>>2]|0);c[c[v>>2]>>2]=c[p>>2];c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}function NI(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+32|0;k=o+24|0;j=o;l=o+4|0;q=o+8|0;n=o+12|0;m=o+16|0;p=o+20|0;c[j>>2]=d;c[l>>2]=e;c[q>>2]=f;c[n>>2]=g;c[m>>2]=h;c[p>>2]=c[(c[j>>2]|0)+4>>2];if((c[q>>2]|0)!=0){if((b[(c[p>>2]|0)+22>>1]&1|0)!=0){c[k>>2]=8;d=c[k>>2]|0;i=o;return d|0}}if((c[l>>2]|0)==1){if((dD(c[p>>2]|0)|0)==0){c[l>>2]=0}}c[(c[m>>2]|0)+68>>2]=c[l>>2];b[(c[m>>2]|0)+84>>1]=-1;c[(c[m>>2]|0)+16>>2]=c[n>>2];c[c[m>>2]>>2]=c[j>>2];c[(c[m>>2]|0)+4>>2]=c[p>>2];a[(c[m>>2]|0)+80>>0]=c[q>>2];c[(c[m>>2]|0)+8>>2]=c[(c[p>>2]|0)+8>>2];if((c[(c[m>>2]|0)+8>>2]|0)!=0){c[(c[(c[m>>2]|0)+8>>2]|0)+12>>2]=c[m>>2]}c[(c[p>>2]|0)+8>>2]=c[m>>2];a[(c[m>>2]|0)+81>>0]=0;c[k>>2]=0;d=c[k>>2]|0;i=o;return d|0}function OI(){return 208}function PI(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;d=(c[d>>2]|0)+0|0;a=d+84|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));i=b;return}function QI(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;k=g+24|0;j=g;m=g+4|0;h=g+8|0;n=g+12|0;l=g+16|0;e=g+20|0;c[j>>2]=a;c[m>>2]=b;c[h>>2]=0;c[n>>2]=c[(c[j>>2]|0)+96>>2];a:do{if((c[m>>2]|0)>(c[n>>2]|0)){if((d[(c[j>>2]|0)+6>>0]|0|0)!=0){c[e>>2]=rc(c[(c[j>>2]|0)+92>>2]|0,(c[m>>2]|0)*48|0)|0;if((c[e>>2]|0)==0){c[k>>2]=7;a=c[k>>2]|0;i=g;return a|0}aL((c[e>>2]|0)+((c[n>>2]|0)*48|0)|0,0,((c[m>>2]|0)-(c[n>>2]|0)|0)*48|0)|0;c[(c[j>>2]|0)+92>>2]=c[e>>2];c[l>>2]=c[n>>2];while(1){if((c[l>>2]|0)>=(c[m>>2]|0)){break a}c[(c[e>>2]|0)+((c[l>>2]|0)*48|0)+20>>2]=c[(c[j>>2]|0)+24>>2];if((c[c[(c[j>>2]|0)+64>>2]>>2]|0)!=0){a=(c[j>>2]|0)+72|0;b=c[a+4>>2]|0;if((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>0){n=(c[j>>2]|0)+72|0;b=c[n+4>>2]|0;a=(c[e>>2]|0)+((c[l>>2]|0)*48|0)|0;c[a>>2]=c[n>>2];c[a+4>>2]=b}else{f=10}}else{f=10}if((f|0)==10){f=0;a=(c[e>>2]|0)+((c[l>>2]|0)*48|0)|0;c[a>>2]=c[(c[j>>2]|0)+148>>2];c[a+4>>2]=0}c[(c[e>>2]|0)+((c[l>>2]|0)*48|0)+24>>2]=c[(c[j>>2]|0)+52>>2];a=rh(c[(c[j>>2]|0)+24>>2]|0)|0;c[(c[e>>2]|0)+((c[l>>2]|0)*48|0)+16>>2]=a;if((c[(c[e>>2]|0)+((c[l>>2]|0)*48|0)+16>>2]|0)==0){break}if((Uo(c[j>>2]|0)|0)!=0){RI(c[(c[j>>2]|0)+208>>2]|0,(c[e>>2]|0)+((c[l>>2]|0)*48|0)+28|0)}c[(c[j>>2]|0)+96>>2]=(c[l>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=7;a=c[k>>2]|0;i=g;return a|0}}}while(0);c[k>>2]=c[h>>2];a=c[k>>2]|0;i=g;return a|0}function RI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;c[c[e>>2]>>2]=c[(c[f>>2]|0)+68>>2];c[(c[e>>2]|0)+4>>2]=c[(c[f>>2]|0)+76>>2];c[(c[e>>2]|0)+8>>2]=c[(c[f>>2]|0)+80>>2];c[(c[e>>2]|0)+12>>2]=c[(c[f>>2]|0)+104>>2];i=d;return}function SI(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+16|0;j=g;l=g+4|0;k=g+8|0;m=g+12|0;c[j>>2]=f;if((c[(c[j>>2]|0)+44>>2]|0)>>>0>0){c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}c[l>>2]=c[(c[j>>2]|0)+12>>2];c[k>>2]=c[(c[l>>2]|0)+56>>2];c[m>>2]=ld(c[(c[l>>2]|0)+68>>2]|0)|0;if((c[m>>2]|0)!=0){c[h>>2]=c[m>>2];n=c[h>>2]|0;i=g;return n|0}else{n=(c[k>>2]|0)+0|0;m=40888|0;f=n+16|0;do{a[n>>0]=a[m>>0]|0;n=n+1|0;m=m+1|0}while((n|0)<(f|0));a[(c[k>>2]|0)+16>>0]=(c[(c[j>>2]|0)+32>>2]|0)>>>8&255;a[(c[k>>2]|0)+17>>0]=(c[(c[j>>2]|0)+32>>2]|0)>>>16&255;a[(c[k>>2]|0)+18>>0]=1;a[(c[k>>2]|0)+19>>0]=1;a[(c[k>>2]|0)+20>>0]=(c[(c[j>>2]|0)+32>>2]|0)-(c[(c[j>>2]|0)+36>>2]|0);a[(c[k>>2]|0)+21>>0]=64;a[(c[k>>2]|0)+22>>0]=32;a[(c[k>>2]|0)+23>>0]=32;n=(c[k>>2]|0)+24|0;f=n+76|0;do{a[n>>0]=0;n=n+1|0}while((n|0)<(f|0));YH(c[l>>2]|0,13);n=(c[j>>2]|0)+22|0;b[n>>1]=e[n>>1]|0|2;Xq((c[k>>2]|0)+52|0,d[(c[j>>2]|0)+17>>0]|0);Xq((c[k>>2]|0)+64|0,d[(c[j>>2]|0)+18>>0]|0);c[(c[j>>2]|0)+44>>2]=1;a[(c[k>>2]|0)+31>>0]=1;c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}return 0}function TI(a,b){a=a|0;b=b|0;var d=0,f=0,g=0;f=i;i=i+16|0;d=f+4|0;g=f;c[d>>2]=a;c[g>>2]=b;c[c[g>>2]>>2]=e[(c[d>>2]|0)+46>>1]|0;i=f;return(c[(c[d>>2]|0)+32>>2]|0)+(e[(c[d>>2]|0)+44>>1]|0)|0}function UI(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;k=f;h=f+4|0;j=f+8|0;c[k>>2]=a;c[h>>2]=b;if((d[(c[k>>2]|0)+81>>0]|0|0)==1){c[c[h>>2]>>2]=0;c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}if((d[(c[k>>2]|0)+81>>0]|0|0)>=3){b=_C(c[k>>2]|0)|0}else{b=0}c[j>>2]=b;if((c[j>>2]|0)!=0){c[c[h>>2]>>2]=2;c[g>>2]=c[j>>2];a=c[g>>2]|0;i=f;return a|0}if((d[(c[k>>2]|0)+81>>0]|0|0)!=1){e=9}else{if((c[(c[k>>2]|0)+76>>2]|0)!=0){e=9}else{c[c[h>>2]>>2]=1}}if((e|0)==9){c[c[h>>2]>>2]=2}c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}function VI(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;d=b+16|0;h=b;g=b+4|0;f=b+8|0;e=b+12|0;c[d>>2]=a;if((c[(c[d>>2]|0)+176>>2]|0)!=0){c[h>>2]=c[(c[d>>2]|0)+176>>2];while(1){a=c[h>>2]|0;if((c[(c[h>>2]|0)+4>>2]|0)==0){break}c[h>>2]=c[a+4>>2]}CF(a)|0}c[(c[d>>2]|0)+176>>2]=0;c[(c[d>>2]|0)+184>>2]=0;a:do{if((c[(c[d>>2]|0)+56>>2]|0)!=0){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+36>>2]|0)){break a}c[f>>2]=c[(c[(c[d>>2]|0)+56>>2]|0)+(c[g>>2]<<2)>>2];if((c[f>>2]|0)!=0){eG(c[d>>2]|0,c[f>>2]|0);c[(c[(c[d>>2]|0)+56>>2]|0)+(c[g>>2]<<2)>>2]=0}c[g>>2]=(c[g>>2]|0)+1}}}while(0);if((c[(c[d>>2]|0)+8>>2]|0)!=0){NA((c[(c[d>>2]|0)+8>>2]|0)+40|0,c[(c[d>>2]|0)+28>>2]|0)}while(1){f=c[d>>2]|0;if((c[(c[d>>2]|0)+180>>2]|0)==0){break}c[e>>2]=c[f+180>>2];c[(c[d>>2]|0)+180>>2]=c[(c[e>>2]|0)+4>>2];bJ(c[e>>2]|0)}LF(f,-1,0);i=b;return}function WI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=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,E=0,F=0;g=i;i=i+112|0;v=g+8|0;f=g+100|0;h=g+96|0;F=g+92|0;m=g+88|0;z=g+84|0;s=g+80|0;C=g+76|0;E=g+72|0;B=g+68|0;A=g+64|0;l=g+60|0;o=g+104|0;j=g+28|0;y=g+24|0;k=g+16|0;q=g;w=g+20|0;d=g+52|0;u=g+32|0;t=g+36|0;r=g+40|0;p=g+44|0;n=g+48|0;x=g+56|0;c[h>>2]=a;c[F>>2]=b;c[z>>2]=0;c[s>>2]=0;c[C>>2]=0;c[s>>2]=XI(c[h>>2]|0,c[F>>2]|0)|0;c[m>>2]=0;while(1){if((c[s>>2]|0)!=0){break}if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[E>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((Ir(c[E>>2]|0)|0)!=0){c[C>>2]=1;if((c[m>>2]|0)!=1){c[z>>2]=(c[z>>2]|0)+1}Uc(c[E>>2]|0);c[s>>2]=Yq(Zb(c[E>>2]|0)|0)|0}c[m>>2]=(c[m>>2]|0)+1}if((c[s>>2]|0)!=0){c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}if((c[C>>2]|0)!=0){if((c[(c[h>>2]|0)+184>>2]|0)!=0){c[s>>2]=ub[c[(c[h>>2]|0)+184>>2]&63](c[(c[h>>2]|0)+180>>2]|0)|0;if((c[s>>2]|0)!=0){c[f>>2]=531;F=c[f>>2]|0;i=g;return F|0}}}if(0==(Ub(Qg(c[(c[(c[h>>2]|0)+16>>2]|0)+4>>2]|0)|0)|0)){e=17}else{if((c[z>>2]|0)<=1){e=17}else{c[l>>2]=c[c[h>>2]>>2];c[o>>2]=0;c[j>>2]=0;c[y>>2]=Qg(c[(c[(c[h>>2]|0)+16>>2]|0)+4>>2]|0)|0;c[k>>2]=0;F=q;c[F>>2]=0;c[F+4>>2]=0;c[d>>2]=0;c[u>>2]=Ub(c[y>>2]|0)|0;F=c[h>>2]|0;c[v>>2]=c[y>>2];c[j>>2]=cf(F,40904,v)|0;if((c[j>>2]|0)==0){c[f>>2]=7;F=c[f>>2]|0;i=g;return F|0}do{if((c[d>>2]|0)!=0){if((c[d>>2]|0)>100){e=35;break}if((c[d>>2]|0)==1){c[v>>2]=c[j>>2];zc(13,40936,v)}}c[d>>2]=(c[d>>2]|0)+1;Bc(4,t);F=(c[j>>2]|0)+(c[u>>2]|0)|0;a=c[t>>2]&255;c[v>>2]=(c[t>>2]|0)>>>8&16777215;c[v+4>>2]=a;yc(13,F,40952,v)|0;c[s>>2]=op(c[l>>2]|0,c[j>>2]|0,0,w)|0;if((c[s>>2]|0)!=0){break}}while((c[w>>2]|0)!=0);if((e|0)==35){c[v>>2]=c[j>>2];zc(13,40920,v);So(c[l>>2]|0,c[j>>2]|0,0)|0}if((c[s>>2]|0)==0){c[s>>2]=mI(c[l>>2]|0,c[j>>2]|0,k,16406,0)|0}if((c[s>>2]|0)!=0){cc(c[h>>2]|0,c[j>>2]|0);c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[r>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((Ir(c[r>>2]|0)|0)!=0){c[p>>2]=ZI(c[r>>2]|0)|0;if((c[p>>2]|0)!=0){if((c[o>>2]|0)==0){if((_I(c[r>>2]|0)|0)==0){c[o>>2]=1}}E=c[k>>2]|0;b=c[p>>2]|0;F=(Ub(c[p>>2]|0)|0)+1|0;a=q;c[s>>2]=nd(E,b,F,c[a>>2]|0,c[a+4>>2]|0)|0;a=(Ub(c[p>>2]|0)|0)+1|0;F=q;a=dL(c[F>>2]|0,c[F+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;F=q;c[F>>2]=a;c[F+4>>2]=D;if((c[s>>2]|0)!=0){e=52;break}}}c[m>>2]=(c[m>>2]|0)+1}if((e|0)==52){SH(c[k>>2]|0)|0;So(c[l>>2]|0,c[j>>2]|0,0)|0;cc(c[h>>2]|0,c[j>>2]|0);c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}if((c[o>>2]|0)!=0){if(0==((tp(c[k>>2]|0)|0)&1024|0)){F=cp(c[k>>2]|0,2)|0;c[s>>2]=F;if(0!=(F|0)){SH(c[k>>2]|0)|0;So(c[l>>2]|0,c[j>>2]|0,0)|0;cc(c[h>>2]|0,c[j>>2]|0);c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}}}c[m>>2]=0;while(1){if((c[s>>2]|0)!=0){break}if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[n>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((c[n>>2]|0)!=0){c[s>>2]=sd(c[n>>2]|0,c[j>>2]|0)|0}c[m>>2]=(c[m>>2]|0)+1}SH(c[k>>2]|0)|0;if((c[s>>2]|0)!=0){cc(c[h>>2]|0,c[j>>2]|0);c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}c[s>>2]=So(c[l>>2]|0,c[j>>2]|0,1)|0;cc(c[h>>2]|0,c[j>>2]|0);c[j>>2]=0;if((c[s>>2]|0)!=0){c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}Ih();c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[x>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((c[x>>2]|0)!=0){rd(c[x>>2]|0,1)|0}c[m>>2]=(c[m>>2]|0)+1}Jh();YI(c[h>>2]|0)|0}}if((e|0)==17){c[m>>2]=0;while(1){if((c[s>>2]|0)!=0){break}if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[B>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((c[B>>2]|0)!=0){c[s>>2]=sd(c[B>>2]|0,0)|0}c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[s>>2]|0)!=0){break}if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[A>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((c[A>>2]|0)!=0){c[s>>2]=rd(c[A>>2]|0,0)|0}c[m>>2]=(c[m>>2]|0)+1}if((c[s>>2]|0)==0){YI(c[h>>2]|0)|0}}c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}function XI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;d=e+24|0;k=e;l=e+4|0;f=e+8|0;g=e+12|0;h=e+16|0;j=e+20|0;c[d>>2]=a;c[k>>2]=b;c[f>>2]=0;c[g>>2]=c[(c[d>>2]|0)+320>>2];c[(c[d>>2]|0)+320>>2]=0;c[l>>2]=0;while(1){if((c[f>>2]|0)!=0){h=8;break}if((c[l>>2]|0)>=(c[(c[d>>2]|0)+296>>2]|0)){h=8;break}c[j>>2]=c[(c[(c[g>>2]|0)+(c[l>>2]<<2)>>2]|0)+8>>2];if((c[j>>2]|0)!=0){a=c[(c[c[j>>2]>>2]|0)+60>>2]|0;c[h>>2]=a;if((a|0)!=0){c[f>>2]=ub[c[h>>2]&63](c[j>>2]|0)|0;lG(c[k>>2]|0,c[j>>2]|0)}}c[l>>2]=(c[l>>2]|0)+1}if((h|0)==8){c[(c[d>>2]|0)+320>>2]=c[g>>2];i=e;return c[f>>2]|0}return 0}function YI(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Kr(c[d>>2]|0,64);i=b;return 0}function ZI(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=aJ(c[c[(c[d>>2]|0)+4>>2]>>2]|0)|0;i=b;return a|0}function _I(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;e=d;b=d+4|0;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+4>>2];Uc(c[f>>2]|0);c[b>>2]=$I(c[c[e>>2]>>2]|0)|0;i=d;return c[b>>2]|0}function $I(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+7>>0]|0|0}function aJ(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+172>>2]|0}function bJ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+12|0;f=e;b=e+4|0;g=e+8|0;c[d>>2]=a;c[b>>2]=(c[d>>2]|0)+72;c[g>>2]=(c[b>>2]|0)+((c[(c[d>>2]|0)+60>>2]|0)*40|0);c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[d>>2]|0)+64>>2]|0)){break}eG(c[c[d>>2]>>2]|0,c[(c[g>>2]|0)+(c[f>>2]<<2)>>2]|0);c[f>>2]=(c[f>>2]|0)+1}NA(c[b>>2]|0,c[(c[d>>2]|0)+60>>2]|0);cc(c[c[c[d>>2]>>2]>>2]|0,c[d>>2]|0);i=e;return}function cJ(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[41080+(c[b>>2]<<2)>>2]|0}function dJ(d,f,g){d=d|0;f=f|0;g=g|0;var j=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;n=i;i=i+64|0;v=n;y=n+56|0;l=n+52|0;m=n+48|0;j=n+44|0;s=n+40|0;r=n+36|0;o=n+60|0;q=n+24|0;u=n+20|0;t=n+16|0;z=n+12|0;A=n+8|0;w=n+28|0;x=n+32|0;c[y>>2]=d;c[l>>2]=f;c[m>>2]=g;c[j>>2]=c[l>>2];do{switch(a[(c[y>>2]|0)+1>>0]|0){case-5:{c[A>>2]=c[(c[y>>2]|0)+16>>2];f=c[m>>2]|0;d=c[l>>2]|0;z=b[c[A>>2]>>1]|0;c[v>>2]=c[(c[A>>2]|0)+24>>2];c[v+4>>2]=z;yc(f,d,41016,v)|0;d=c[j>>2]|0;i=n;return d|0};case-15:{yc(c[m>>2]|0,c[l>>2]|0,41056,v)|0;d=c[j>>2]|0;i=n;return d|0};case-12:{f=c[m>>2]|0;d=c[l>>2]|0;h[k>>3]=+h[c[(c[y>>2]|0)+16>>2]>>3];c[v>>2]=c[k>>2];c[v+4>>2]=c[k+4>>2];yc(f,d,15984,v)|0;d=c[j>>2]|0;i=n;return d|0};case-6:{c[o>>2]=c[(c[y>>2]|0)+16>>2];f=c[m>>2]|0;d=c[l>>2]|0;c[v>>2]=e[(c[o>>2]|0)+6>>1]|0;yc(f,d,40976,v)|0;c[s>>2]=Ub(c[l>>2]|0)|0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(e[(c[o>>2]|0)+6>>1]|0)){break}c[q>>2]=c[(c[o>>2]|0)+20+(c[r>>2]<<2)>>2];if((c[q>>2]|0)!=0){v=c[c[q>>2]>>2]|0}else{v=40984}c[u>>2]=v;c[t>>2]=Ub(c[u>>2]|0)|0;if((c[t>>2]|0)==6){if((XK(c[u>>2]|0,3640,6)|0)==0){c[u>>2]=40992;c[t>>2]=1}}v=c[s>>2]|0;if(((c[s>>2]|0)+(c[t>>2]|0)|0)>((c[m>>2]|0)-6|0)){p=10;break}c[s>>2]=v+1;a[(c[l>>2]|0)+v>>0]=44;if((a[(c[(c[o>>2]|0)+16>>2]|0)+(c[r>>2]|0)>>0]|0)!=0){d=c[s>>2]|0;c[s>>2]=d+1;a[(c[l>>2]|0)+d>>0]=45}fL((c[l>>2]|0)+(c[s>>2]|0)|0,c[u>>2]|0,(c[t>>2]|0)+1|0)|0;c[s>>2]=(c[s>>2]|0)+(c[t>>2]|0);c[r>>2]=(c[r>>2]|0)+1}if((p|0)==10){d=(c[l>>2]|0)+v|0;a[d+0>>0]=a[41e3>>0]|0;a[d+1>>0]=a[41001>>0]|0;a[d+2>>0]=a[41002>>0]|0;a[d+3>>0]=a[41003>>0]|0}d=c[s>>2]|0;c[s>>2]=d+1;a[(c[l>>2]|0)+d>>0]=41;a[(c[l>>2]|0)+(c[s>>2]|0)>>0]=0;d=c[j>>2]|0;i=n;return d|0};case-10:{c[x>>2]=c[(c[(c[y>>2]|0)+16>>2]|0)+8>>2];f=c[m>>2]|0;d=c[l>>2]|0;A=c[c[x>>2]>>2]|0;c[v>>2]=c[x>>2];c[v+4>>2]=A;yc(f,d,41040,v)|0;d=c[j>>2]|0;i=n;return d|0};case-18:{yc(c[m>>2]|0,c[l>>2]|0,41072,v)|0;d=c[j>>2]|0;i=n;return d|0};case-14:{f=c[m>>2]|0;d=c[l>>2]|0;c[v>>2]=c[(c[y>>2]|0)+16>>2];yc(f,d,41024,v)|0;d=c[j>>2]|0;i=n;return d|0};case-8:{c[w>>2]=c[(c[y>>2]|0)+16>>2];o=c[w>>2]|0;if((b[(c[w>>2]|0)+28>>1]&2|0)!=0){c[j>>2]=c[o+4>>2];d=c[j>>2]|0;i=n;return d|0}if((b[o+28>>1]&4|0)!=0){f=c[m>>2]|0;d=c[l>>2]|0;y=(c[w>>2]|0)+16|0;z=c[y+4>>2]|0;A=v;c[A>>2]=c[y>>2];c[A+4>>2]=z;yc(f,d,15992,v)|0;d=c[j>>2]|0;i=n;return d|0}if((b[(c[w>>2]|0)+28>>1]&8|0)!=0){f=c[m>>2]|0;d=c[l>>2]|0;h[k>>3]=+h[(c[w>>2]|0)+8>>3];c[v>>2]=c[k>>2];c[v+4>>2]=c[k+4>>2];yc(f,d,15984,v)|0;d=c[j>>2]|0;i=n;return d|0}if((b[(c[w>>2]|0)+28>>1]&1|0)!=0){yc(c[m>>2]|0,c[l>>2]|0,16376,v)|0;d=c[j>>2]|0;i=n;return d|0}else{c[j>>2]=41032;d=c[j>>2]|0;i=n;return d|0}};case-19:{a[c[l>>2]>>0]=0;d=c[j>>2]|0;i=n;return d|0};case-13:{f=c[m>>2]|0;d=c[l>>2]|0;y=c[(c[y>>2]|0)+16>>2]|0;z=c[y+4>>2]|0;A=v;c[A>>2]=c[y>>2];c[A+4>>2]=z;yc(f,d,15992,v)|0;d=c[j>>2]|0;i=n;return d|0};case-4:{c[z>>2]=c[(c[y>>2]|0)+16>>2];f=c[m>>2]|0;d=c[l>>2]|0;c[v>>2]=c[c[z>>2]>>2];yc(f,d,41008,v)|0;d=c[j>>2]|0;i=n;return d|0};default:{c[j>>2]=c[(c[y>>2]|0)+16>>2];if((c[j>>2]|0)!=0){d=c[j>>2]|0;i=n;return d|0}c[j>>2]=c[l>>2];a[c[l>>2]>>0]=0;d=c[j>>2]|0;i=n;return d|0}}}while(0);return 0}function eJ(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;l=h+4|0;g=h;j=h+10|0;m=h+8|0;k=h+9|0;c[l>>2]=f;c[g>>2]=0;a[j>>0]=0;if((c[(c[l>>2]|0)+24>>2]|0)>1){a[m>>0]=a[c[(c[l>>2]|0)+4>>2]>>0]|0;a[k>>0]=a[(c[(c[l>>2]|0)+4>>2]|0)+1>>0]|0;if((d[m>>0]|0)==254){if((d[k>>0]|0)==255){a[j>>0]=3}}if((d[m>>0]|0)==255){if((d[k>>0]|0)==254){a[j>>0]=2}}}if((a[j>>0]|0)==0){m=c[g>>2]|0;i=h;return m|0}c[g>>2]=ur(c[l>>2]|0)|0;if((c[g>>2]|0)!=0){m=c[g>>2]|0;i=h;return m|0}m=(c[l>>2]|0)+24|0;c[m>>2]=(c[m>>2]|0)-2;gL(c[(c[l>>2]|0)+4>>2]|0,(c[(c[l>>2]|0)+4>>2]|0)+2|0,c[(c[l>>2]|0)+24>>2]|0)|0;a[(c[(c[l>>2]|0)+4>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0)>>0]=0;a[(c[(c[l>>2]|0)+4>>2]|0)+((c[(c[l>>2]|0)+24>>2]|0)+1)>>0]=0;m=(c[l>>2]|0)+28|0;b[m>>1]=e[m>>1]|512;a[(c[l>>2]|0)+30>>0]=a[j>>0]|0;m=c[g>>2]|0;i=h;return m|0}function fJ(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[c[d>>2]>>2];cc(c[e>>2]|0,c[(c[d>>2]|0)+44>>2]|0);c[(c[d>>2]|0)+44>>2]=0;c[(c[d>>2]|0)+20>>2]=0;i=b;return}function gJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;h=f+12|0;g=f;k=f+4|0;j=f+8|0;c[h>>2]=b;c[g>>2]=d;c[k>>2]=e;if((c[g>>2]|0)==0){d=c[h>>2]|0;b=c[g>>2]|0;cc(d,b);i=f;return}c[j>>2]=c[g>>2];while(1){if(!((c[j>>2]|0)>>>0<((c[g>>2]|0)+((c[k>>2]|0)*20|0)|0)>>>0)){break}oF(c[h>>2]|0,a[(c[j>>2]|0)+1>>0]|0,c[(c[j>>2]|0)+16>>2]|0);c[j>>2]=(c[j>>2]|0)+20}d=c[h>>2]|0;b=c[g>>2]|0;cc(d,b);i=f;return}function hJ(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;wh(c[(c[d>>2]|0)+60>>2]|0);c[(c[d>>2]|0)+60>>2]=0;i=b;return}function iJ(b){b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+4>>2];c[h>>2]=c[c[f>>2]>>2];a[(c[g>>2]|0)+19>>0]=0;if((d[(c[f>>2]|0)+8>>0]|0|0)>0){if((c[(c[h>>2]|0)+144>>2]|0)>1){jJ(c[f>>2]|0);a[(c[f>>2]|0)+8>>0]=1;i=e;return}}if((d[(c[f>>2]|0)+8>>0]|0|0)!=0){kJ(c[f>>2]|0);h=(c[g>>2]|0)+40|0;c[h>>2]=(c[h>>2]|0)+ -1;if(0==(c[(c[g>>2]|0)+40>>2]|0)){a[(c[g>>2]|0)+20>>0]=0}}a[(c[f>>2]|0)+8>>0]=0;Hr(c[g>>2]|0);i=e;return}function jJ(d){d=d|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+8|0;h=f;g=f+4|0;c[j>>2]=d;c[h>>2]=c[(c[j>>2]|0)+4>>2];if((c[(c[h>>2]|0)+76>>2]|0)!=(c[j>>2]|0)){i=f;return}c[(c[h>>2]|0)+76>>2]=0;j=(c[h>>2]|0)+22|0;b[j>>1]=(e[j>>1]|0)&-97;c[g>>2]=c[(c[h>>2]|0)+72>>2];while(1){if((c[g>>2]|0)==0){break}a[(c[g>>2]|0)+8>>0]=1;c[g>>2]=c[(c[g>>2]|0)+12>>2]}i=f;return}function kJ(a){a=a|0;var d=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;d=f;h=f+4|0;j=f+8|0;c[g>>2]=a;c[d>>2]=c[(c[g>>2]|0)+4>>2];c[h>>2]=(c[d>>2]|0)+72;while(1){if((c[c[h>>2]>>2]|0)==0){break}c[j>>2]=c[c[h>>2]>>2];a=(c[j>>2]|0)+12|0;if((c[c[j>>2]>>2]|0)!=(c[g>>2]|0)){c[h>>2]=a;continue}c[c[h>>2]>>2]=c[a>>2];if((c[(c[j>>2]|0)+4>>2]|0)==1){continue}oc(c[j>>2]|0)}h=c[d>>2]|0;if((c[(c[d>>2]|0)+76>>2]|0)==(c[g>>2]|0)){c[h+76>>2]=0;a=(c[d>>2]|0)+22|0;b[a>>1]=(e[a>>1]|0)&-97;i=f;return}if((c[h+40>>2]|0)!=2){i=f;return}a=(c[d>>2]|0)+22|0;b[a>>1]=(e[a>>1]|0)&-65;i=f;return}function lJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;d=e+28|0;g=e;f=e+4|0;k=e+8|0;h=e+12|0;j=e+16|0;l=e+20|0;m=e+24|0;c[g>>2]=b;c[f>>2]=0;c[k>>2]=c[c[g>>2]>>2];XG(c[g>>2]|0);do{if((a[(c[g>>2]|0)+18>>0]|0)==0){c[m>>2]=dD(c[g>>2]|0)|0;b=sD(c[g>>2]|0,c[m>>2]|0)|0;if((b|0)!=(c[m>>2]|0)){if((c[m>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[g>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){c[j>>2]=zo((c[(c[(c[g>>2]|0)+12>>2]|0)+56>>2]|0)+36|0)|0;c[h>>2]=WG(c[g>>2]|0,c[m>>2]|0,c[j>>2]|0)|0;if((c[h>>2]|0)>>>0>(c[m>>2]|0)>>>0){c[d>>2]=dq(54371)|0;m=c[d>>2]|0;i=e;return m|0}if((c[h>>2]|0)>>>0<(c[m>>2]|0)>>>0){c[f>>2]=hF(c[g>>2]|0,0,0)|0}c[l>>2]=c[m>>2];while(1){if(!((c[l>>2]|0)>>>0>(c[h>>2]|0)>>>0)){break}if((c[f>>2]|0)!=0){break}c[f>>2]=YG(c[g>>2]|0,c[h>>2]|0,c[l>>2]|0,1)|0;c[l>>2]=(c[l>>2]|0)+ -1}if((c[f>>2]|0)==101|(c[f>>2]|0)==0){if((c[j>>2]|0)>>>0>0){c[f>>2]=ld(c[(c[(c[g>>2]|0)+12>>2]|0)+68>>2]|0)|0;Xq((c[(c[(c[g>>2]|0)+12>>2]|0)+56>>2]|0)+32|0,0);Xq((c[(c[(c[g>>2]|0)+12>>2]|0)+56>>2]|0)+36|0,0);Xq((c[(c[(c[g>>2]|0)+12>>2]|0)+56>>2]|0)+28|0,c[h>>2]|0);a[(c[g>>2]|0)+19>>0]=1;c[(c[g>>2]|0)+44>>2]=c[h>>2]}}if((c[f>>2]|0)==0){break}Mo(c[k>>2]|0)|0;break}}c[d>>2]=dq(54366)|0;m=c[d>>2]|0;i=e;return m|0}}while(0);c[d>>2]=c[f>>2];m=c[d>>2]|0;i=e;return m|0}function mJ(b){b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[g>>2]=b;c[h>>2]=0;b=c[g>>2]|0;if((c[(c[g>>2]|0)+40>>2]|0)!=0){c[f>>2]=c[b+40>>2];b=c[f>>2]|0;i=e;return b|0}if((d[b+16>>0]|0|0)==2){if((d[(c[g>>2]|0)+4>>0]|0|0)!=0){if((d[(c[g>>2]|0)+5>>0]|0|0)==1){a[(c[g>>2]|0)+16>>0]=1;c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}}}c[h>>2]=No(c[g>>2]|0,d[(c[g>>2]|0)+19>>0]|0,1)|0;c[f>>2]=Ho(c[g>>2]|0,c[h>>2]|0)|0;b=c[f>>2]|0;i=e;return b|0}function nJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+12|0;f=e+4|0;h=e+8|0;c[g>>2]=b;c[e>>2]=d;c[f>>2]=0;if((a[(c[g>>2]|0)+18>>0]|0)!=0){b=c[f>>2]|0;i=e;return b|0}if(!((c[(c[g>>2]|0)+24>>2]|0)>>>0>0)){b=c[f>>2]|0;i=e;return b|0}c[f>>2]=ad(c[g>>2]|0,1,h,0)|0;if((c[f>>2]|0)==0){c[f>>2]=ld(c[h>>2]|0)|0}if((c[f>>2]|0)==0){Wq(c[h>>2]|0);a[(c[g>>2]|0)+18>>0]=1}dd(c[h>>2]|0);b=c[f>>2]|0;i=e;return b|0}function oJ(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;l=m+36|0;g=m+28|0;o=m+24|0;j=m+16|0;k=m+20|0;f=m;h=m+8|0;n=m+32|0;c[g>>2]=b;c[o>>2]=e;c[n>>2]=0;if((c[o>>2]|0)!=0){if((d[(c[g>>2]|0)+5>>0]|0)!=4){if((c[c[(c[g>>2]|0)+64>>2]>>2]|0)!=0){a[(c[g>>2]|0)+19>>0]=1;c[k>>2]=0;while(1){if((a[(c[o>>2]|0)+(c[k>>2]|0)>>0]|0)==0){break}c[n>>2]=(c[n>>2]|0)+(a[(c[o>>2]|0)+(c[k>>2]|0)>>0]|0);c[k>>2]=(c[k>>2]|0)+1}if((a[(c[g>>2]|0)+8>>0]|0)!=0){e=Gp(c[g>>2]|0)|0;b=(c[g>>2]|0)+72|0;c[b>>2]=e;c[b+4>>2]=D}p=(c[g>>2]|0)+72|0;e=c[p+4>>2]|0;b=f;c[b>>2]=c[p>>2];c[b+4>>2]=e;b=f;b=ir(c[(c[g>>2]|0)+64>>2]|0,c[b>>2]|0,c[b+4>>2]|0,((c[368]|0)/(c[(c[g>>2]|0)+152>>2]|0)|0)+1|0)|0;c[j>>2]=b;if(0==(b|0)){e=c[(c[g>>2]|0)+64>>2]|0;o=c[o>>2]|0;b=c[k>>2]|0;p=f;p=dL(c[p>>2]|0,c[p+4>>2]|0,4,0)|0;p=nd(e,o,b,p,D)|0;c[j>>2]=p;if(0==(p|0)){b=c[(c[g>>2]|0)+64>>2]|0;o=f;o=dL(c[o>>2]|0,c[o+4>>2]|0,4,0)|0;p=c[k>>2]|0;p=dL(o|0,D|0,p|0,((p|0)<0)<<31>>31|0)|0;p=ir(b,p,D,c[k>>2]|0)|0;c[j>>2]=p;if(0==(p|0)){b=c[(c[g>>2]|0)+64>>2]|0;o=f;o=dL(c[o>>2]|0,c[o+4>>2]|0,4,0)|0;p=c[k>>2]|0;p=dL(o|0,D|0,p|0,((p|0)<0)<<31>>31|0)|0;p=dL(p|0,D|0,4,0)|0;p=ir(b,p,D,c[n>>2]|0)|0;c[j>>2]=p;if(0==(p|0)){b=c[(c[g>>2]|0)+64>>2]|0;o=f;o=dL(c[o>>2]|0,c[o+4>>2]|0,4,0)|0;p=c[k>>2]|0;p=dL(o|0,D|0,p|0,((p|0)<0)<<31>>31|0)|0;p=dL(p|0,D|0,8,0)|0;p=nd(b,10992,8,p,D)|0;c[j>>2]=p;if(0==(p|0)){b=(c[k>>2]|0)+20|0;p=(c[g>>2]|0)+72|0;o=p;b=dL(c[o>>2]|0,c[o+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[p>>2]=b;c[p+4>>2]=D;p=dh(c[(c[g>>2]|0)+64>>2]|0,h)|0;c[j>>2]=p;if(0==(p|0)){b=h;n=c[b+4>>2]|0;p=(c[g>>2]|0)+72|0;o=c[p+4>>2]|0;if((n|0)>(o|0)|((n|0)==(o|0)?(c[b>>2]|0)>>>0>(c[p>>2]|0)>>>0:0)){p=(c[g>>2]|0)+72|0;c[j>>2]=Qo(c[(c[g>>2]|0)+64>>2]|0,c[p>>2]|0,c[p+4>>2]|0)|0}}c[l>>2]=c[j>>2];p=c[l>>2]|0;i=m;return p|0}}}}}c[l>>2]=c[j>>2];p=c[l>>2]|0;i=m;return p|0}}}c[l>>2]=0;p=c[l>>2]|0;i=m;return p|0}function pJ(a){a=a|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+48|0;h=l+32|0;k=l+28|0;f=l+8|0;j=l+12|0;p=l+16|0;n=l+20|0;o=l+24|0;m=l;c[k>>2]=a;c[f>>2]=c[(c[k>>2]|0)+16>>2];c[j>>2]=0;if((d[(c[f>>2]|0)+16>>0]|0|0)==2){c[j>>2]=qJ(c[f>>2]|0)|0;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];a=c[h>>2]|0;i=l;return a|0}}Cp(c[k>>2]|0);c[p>>2]=rJ(c[f>>2]|0,c[k>>2]|0)|0;if((c[p>>2]|0)!=0){if((c[(c[f>>2]|0)+96>>2]|0)!=0){if((Qq(c[k>>2]|0)|0)!=0){g=7}}}else{g=7}if((g|0)==7){do{if((c[p>>2]|0)==0){if((Uo(c[f>>2]|0)|0)==0){if((c[(c[k>>2]|0)+20>>2]|0)>>>0<=(c[(c[f>>2]|0)+28>>2]|0)>>>0){if((c[c[(c[f>>2]|0)+64>>2]>>2]|0)!=0){g=(c[f>>2]|0)+72|0;p=c[g+4>>2]|0;a=m;c[a>>2]=c[g>>2];c[a+4>>2]=p;c[o>>2]=c[(c[k>>2]|0)+4>>2];c[n>>2]=zp(c[f>>2]|0,c[o>>2]|0)|0;a=(c[k>>2]|0)+24|0;b[a>>1]=e[a>>1]|0|4;a=m;c[j>>2]=ir(c[(c[f>>2]|0)+64>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[(c[k>>2]|0)+20>>2]|0)|0;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];a=c[h>>2]|0;i=l;return a|0}g=c[(c[f>>2]|0)+64>>2]|0;o=c[o>>2]|0;p=c[(c[f>>2]|0)+152>>2]|0;a=m;a=dL(c[a>>2]|0,c[a+4>>2]|0,4,0)|0;c[j>>2]=nd(g,o,p,a,D)|0;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];a=c[h>>2]|0;i=l;return a|0}p=c[(c[f>>2]|0)+64>>2]|0;o=m;a=c[(c[f>>2]|0)+152>>2]|0;a=dL(c[o>>2]|0,c[o+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;a=dL(a|0,D|0,4,0)|0;c[j>>2]=ir(p,a,D,c[n>>2]|0)|0;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];a=c[h>>2]|0;i=l;return a|0}p=8+(c[(c[f>>2]|0)+152>>2]|0)|0;a=(c[f>>2]|0)+72|0;o=a;p=dL(c[o>>2]|0,c[o+4>>2]|0,p|0,((p|0)<0)<<31>>31|0)|0;c[a>>2]=p;c[a+4>>2]=D;a=(c[f>>2]|0)+44|0;c[a>>2]=(c[a>>2]|0)+1;c[j>>2]=sh(c[(c[f>>2]|0)+56>>2]|0,c[(c[k>>2]|0)+20>>2]|0)|0;a=jr(c[f>>2]|0,c[(c[k>>2]|0)+20>>2]|0)|0;c[j>>2]=c[j>>2]|a;if((c[j>>2]|0)==0){break}c[h>>2]=c[j>>2];a=c[h>>2]|0;i=l;return a|0}}if((d[(c[f>>2]|0)+16>>0]|0|0)!=4){a=(c[k>>2]|0)+24|0;b[a>>1]=e[a>>1]|0|4}}}}while(0);if((c[(c[f>>2]|0)+96>>2]|0)>0){if((Qq(c[k>>2]|0)|0)!=0){c[j>>2]=Rq(c[k>>2]|0)|0}}}if((c[(c[f>>2]|0)+24>>2]|0)>>>0<(c[(c[k>>2]|0)+20>>2]|0)>>>0){c[(c[f>>2]|0)+24>>2]=c[(c[k>>2]|0)+20>>2]}c[h>>2]=c[j>>2];a=c[h>>2]|0;i=l;return a|0}function qJ(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;h=e;g=e+4|0;j=e+8|0;k=e+12|0;c[h>>2]=b;c[g>>2]=0;c[j>>2]=c[c[h>>2]>>2];b=c[h>>2]|0;if((c[(c[h>>2]|0)+40>>2]|0)!=0){c[f>>2]=c[b+40>>2];b=c[f>>2]|0;i=e;return b|0}if((Uo(b)|0)==0){if((d[(c[h>>2]|0)+5>>0]|0|0)!=2){b=rh(c[(c[h>>2]|0)+24>>2]|0)|0;c[(c[h>>2]|0)+56>>2]=b;if((c[(c[h>>2]|0)+56>>2]|0)==0){c[f>>2]=7;b=c[f>>2]|0;i=e;return b|0}do{if((c[c[(c[h>>2]|0)+64>>2]>>2]|0)==0){b=c[h>>2]|0;if((d[(c[h>>2]|0)+5>>0]|0|0)==4){jp(c[b+64>>2]|0);break}c[k>>2]=6|((d[b+12>>0]|0|0)!=0?4104:2048);c[g>>2]=sJ(c[h>>2]|0)|0;if((c[g>>2]|0)==0){c[g>>2]=wp(c[j>>2]|0,c[(c[h>>2]|0)+172>>2]|0,c[(c[h>>2]|0)+64>>2]|0,c[k>>2]|0,0)|0}}}while(0);if((c[g>>2]|0)==0){c[(c[h>>2]|0)+44>>2]=0;b=(c[h>>2]|0)+72|0;c[b>>2]=0;c[b+4>>2]=0;a[(c[h>>2]|0)+19>>0]=0;b=(c[h>>2]|0)+80|0;c[b>>2]=0;c[b+4>>2]=0;c[g>>2]=Zq(c[h>>2]|0)|0}}}j=c[h>>2]|0;if((c[g>>2]|0)!=0){wh(c[j+56>>2]|0);c[(c[h>>2]|0)+56>>2]=0}else{a[j+16>>0]=3}c[f>>2]=c[g>>2];b=c[f>>2]|0;i=e;return b|0}function rJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=uh(c[(c[f>>2]|0)+56>>2]|0,c[(c[e>>2]|0)+20>>2]|0)|0;i=d;return a|0}function sJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d;g=d+4|0;h=d+8|0;c[f>>2]=b;c[g>>2]=0;if((a[(c[f>>2]|0)+12>>0]|0)!=0){c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}if((c[(c[f>>2]|0)+24>>2]|0)==0){c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}c[h>>2]=Hg(c[(c[f>>2]|0)+60>>2]|0,20,g)|0;if((c[h>>2]|0)==12){c[h>>2]=0}else{if((c[h>>2]|0)==0){if((c[g>>2]|0)!=0){c[h>>2]=1032}}}c[e>>2]=c[h>>2];h=c[e>>2]|0;i=d;return h|0}function tJ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=i;i=i+32|0;h=g+12|0;c[g+16>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;c[g+8>>2]=e;c[h>>2]=f;c[c[h>>2]>>2]=0;i=g;return 0}function uJ(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;m=h+20|0;l=h;n=h+4|0;k=h+8|0;o=h+12|0;j=h+16|0;c[l>>2]=a;c[n>>2]=d;c[k>>2]=f;c[o>>2]=g;g=c[l>>2]|0;do{if((c[(c[l>>2]|0)+136>>2]|0)!=0){a=c[g+136>>2]|0;c[j>>2]=a;c[c[o>>2]>>2]=a;c[(c[l>>2]|0)+136>>2]=c[(c[j>>2]|0)+12>>2];c[(c[j>>2]|0)+12>>2]=0;aL(c[(c[j>>2]|0)+8>>2]|0,0,e[(c[l>>2]|0)+140>>1]|0|0)|0}else{a=Sc(40+(e[g+140>>1]|0)|0)|0;c[j>>2]=a;c[c[o>>2]>>2]=a;if((c[j>>2]|0)!=0){c[(c[j>>2]|0)+8>>2]=(c[j>>2]|0)+40;b[(c[j>>2]|0)+24>>1]=64;b[(c[j>>2]|0)+26>>1]=1;c[(c[j>>2]|0)+16>>2]=c[l>>2];break}d=c[(c[l>>2]|0)+60>>2]|0;a=c[(c[l>>2]|0)+152>>2]|0;a=nL((c[n>>2]|0)-1|0,0,a|0,((a|0)<0)<<31>>31|0)|0;aq(d,a,D,c[k>>2]|0)|0;c[m>>2]=7;a=c[m>>2]|0;i=h;return a|0}}while(0);c[(c[j>>2]|0)+20>>2]=c[n>>2];c[(c[j>>2]|0)+4>>2]=c[k>>2];a=(c[l>>2]|0)+120|0;c[a>>2]=(c[a>>2]|0)+1;c[m>>2]=0;a=c[m>>2]|0;i=h;return a|0}function vJ(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+48|0;g=k+40|0;j=k+36|0;r=k+32|0;h=k+28|0;l=k+24|0;s=k+20|0;m=k+8|0;q=k+4|0;n=k;p=k+16|0;c[j>>2]=f;c[s>>2]=0;c[r>>2]=nH(c[c[j>>2]>>2]|0)|0;if((c[r>>2]|0)!=0){c[g>>2]=c[r>>2];f=c[g>>2]|0;i=k;return f|0}c[r>>2]=eD(c[j>>2]|0,1,h,0)|0;if((c[r>>2]|0)!=0){c[g>>2]=c[r>>2];f=c[g>>2]|0;i=k;return f|0}f=zo((c[(c[h>>2]|0)+56>>2]|0)+28|0)|0;c[k+12>>2]=f;c[l>>2]=f;kd(c[c[j>>2]>>2]|0,s);if((c[l>>2]|0)==0){o=7}else{if((XK((c[(c[h>>2]|0)+56>>2]|0)+24|0,(c[(c[h>>2]|0)+56>>2]|0)+92|0,4)|0)!=0){o=7}}if((o|0)==7){c[l>>2]=c[s>>2]}a:do{if((c[l>>2]|0)>0){c[n>>2]=c[(c[h>>2]|0)+56>>2];c[r>>2]=26;b:do{if((XK(c[n>>2]|0,40888,16)|0)==0){if((d[(c[n>>2]|0)+18>>0]|0|0)>2){f=(c[j>>2]|0)+22|0;b[f>>1]=e[f>>1]|0|1}if((d[(c[n>>2]|0)+19>>0]|0|0)<=2){do{if((d[(c[n>>2]|0)+19>>0]|0|0)==2){if((b[(c[j>>2]|0)+22>>1]&16|0)==0){c[p>>2]=0;c[r>>2]=uH(c[c[j>>2]>>2]|0,p)|0;if((c[r>>2]|0)!=0){break b}if((c[p>>2]|0)!=0){c[r>>2]=26;break}Gr(c[h>>2]|0);c[g>>2]=0;f=c[g>>2]|0;i=k;return f|0}}}while(0);if((XK((c[n>>2]|0)+21|0,43600,3)|0)==0){c[m>>2]=(d[(c[n>>2]|0)+16>>0]|0)<<8|(d[(c[n>>2]|0)+17>>0]|0)<<16;if(!(((c[m>>2]|0)>>>0>65536?1:((c[m>>2]|0)-1&c[m>>2]|0)!=0)|(c[m>>2]|0)>>>0<=256)){c[q>>2]=(c[m>>2]|0)-(d[(c[n>>2]|0)+20>>0]|0);if((c[m>>2]|0)!=(c[(c[j>>2]|0)+32>>2]|0)){Gr(c[h>>2]|0);c[(c[j>>2]|0)+36>>2]=c[q>>2];c[(c[j>>2]|0)+32>>2]=c[m>>2];ah(c[j>>2]|0);c[r>>2]=bh(c[c[j>>2]>>2]|0,(c[j>>2]|0)+32|0,(c[m>>2]|0)-(c[q>>2]|0)|0)|0;c[g>>2]=c[r>>2];f=c[g>>2]|0;i=k;return f|0}if((c[(c[(c[j>>2]|0)+4>>2]|0)+24>>2]&65536|0)==0){if((c[l>>2]|0)>(c[s>>2]|0)){c[r>>2]=dq(53650)|0;break}}if(!((c[q>>2]|0)>>>0<480)){c[(c[j>>2]|0)+32>>2]=c[m>>2];c[(c[j>>2]|0)+36>>2]=c[q>>2];f=(zo((c[n>>2]|0)+52|0)|0)!=0;a[(c[j>>2]|0)+17>>0]=f?1:0;f=(zo((c[n>>2]|0)+64|0)|0)!=0;a[(c[j>>2]|0)+18>>0]=f?1:0;break a}}}}}}while(0);Gr(c[h>>2]|0);c[(c[j>>2]|0)+12>>2]=0;c[g>>2]=c[r>>2];f=c[g>>2]|0;i=k;return f|0}}while(0);b[(c[j>>2]|0)+24>>1]=(((c[(c[j>>2]|0)+36>>2]|0)-12<<6>>>0)/255|0)-23;b[(c[j>>2]|0)+26>>1]=(((c[(c[j>>2]|0)+36>>2]|0)-12<<5>>>0)/255|0)-23;b[(c[j>>2]|0)+28>>1]=(c[(c[j>>2]|0)+36>>2]|0)-35;b[(c[j>>2]|0)+30>>1]=(((c[(c[j>>2]|0)+36>>2]|0)-12<<5>>>0)/255|0)-23;m=c[j>>2]|0;if((e[(c[j>>2]|0)+24>>1]|0|0)>127){a[m+21>>0]=127}else{a[(c[j>>2]|0)+21>>0]=b[m+24>>1]}c[(c[j>>2]|0)+12>>2]=c[h>>2];c[(c[j>>2]|0)+44>>2]=c[l>>2];c[g>>2]=0;f=c[g>>2]|0;i=k;return f|0}function wJ(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;j=g;l=g+4|0;m=g+8|0;k=g+12|0;c[j>>2]=b;c[l>>2]=e;c[m>>2]=f;c[k>>2]=0;if((c[(c[j>>2]|0)+40>>2]|0)!=0){c[h>>2]=c[(c[j>>2]|0)+40>>2];b=c[h>>2]|0;i=g;return b|0}a[(c[j>>2]|0)+21>>0]=c[m>>2];if((d[(c[j>>2]|0)+16>>0]|0|0)==1){b=(Uo(c[j>>2]|0)|0)!=0;f=c[j>>2]|0;if(b){do{if((d[f+4>>0]|0|0)!=0){if((Xo(c[(c[j>>2]|0)+208>>2]|0,-1)|0)!=0){c[k>>2]=ar(c[j>>2]|0,4)|0;if((c[k>>2]|0)==0){Xo(c[(c[j>>2]|0)+208>>2]|0,1)|0;break}c[h>>2]=c[k>>2];b=c[h>>2]|0;i=g;return b|0}}}while(0);c[k>>2]=xJ(c[(c[j>>2]|0)+208>>2]|0)|0}else{c[k>>2]=ar(f,2)|0;if((c[k>>2]|0)==0){if((c[l>>2]|0)!=0){c[k>>2]=$q(c[j>>2]|0,4)|0}}}if((c[k>>2]|0)==0){a[(c[j>>2]|0)+16>>0]=2;c[(c[j>>2]|0)+36>>2]=c[(c[j>>2]|0)+24>>2];c[(c[j>>2]|0)+32>>2]=c[(c[j>>2]|0)+24>>2];c[(c[j>>2]|0)+28>>2]=c[(c[j>>2]|0)+24>>2];b=(c[j>>2]|0)+72|0;c[b>>2]=0;c[b+4>>2]=0}}c[h>>2]=c[k>>2];b=c[h>>2]|0;i=g;return b|0}function xJ(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;c[g>>2]=b;if((a[(c[g>>2]|0)+46>>0]|0)!=0){c[e>>2]=8;g=c[e>>2]|0;i=d;return g|0}c[f>>2]=oq(c[g>>2]|0,0,1)|0;if((c[f>>2]|0)!=0){c[e>>2]=c[f>>2];g=c[e>>2]|0;i=d;return g|0}a[(c[g>>2]|0)+44>>0]=1;b=(c[g>>2]|0)+52|0;if((XK(b,fq(c[g>>2]|0)|0,48)|0)!=0){bp(c[g>>2]|0,0,1);a[(c[g>>2]|0)+44>>0]=0;c[f>>2]=517}c[e>>2]=c[f>>2];g=c[e>>2]|0;i=d;return g|0}function yJ(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;be(c[d>>2]|0);i=b;return}function zJ(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 43608}function AJ(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+8|0;d=b;f=b+4|0;c[e>>2]=a;c[d>>2]=0;if((c[e>>2]|0)==0){f=c[d>>2]|0;i=b;return f|0}c[f>>2]=c[e>>2];HJ(c[e>>2]|0,0)|0;oc(c[(c[f>>2]|0)+24>>2]|0);c[d>>2]=oK(c[e>>2]|0)|0;f=c[d>>2]|0;i=b;return f|0}function BJ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;h=l+28|0;o=l+16|0;k=l+8|0;m=l+12|0;n=l;j=l+20|0;g=l+24|0;c[o>>2]=a;c[k>>2]=b;c[m>>2]=d;a=n;c[a>>2]=e;c[a+4>>2]=f;c[j>>2]=c[o>>2];a=n;c[g>>2]=nK(c[j>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;if((c[g>>2]|0)==(c[m>>2]|0)){c[h>>2]=0;o=c[h>>2]|0;i=l;return o|0}if((c[g>>2]|0)<0){c[h>>2]=266;o=c[h>>2]|0;i=l;return o|0}else{c[(c[j>>2]|0)+20>>2]=0;aL((c[k>>2]|0)+(c[g>>2]|0)|0,0,(c[m>>2]|0)-(c[g>>2]|0)|0)|0;c[h>>2]=522;o=c[h>>2]|0;i=l;return o|0}return 0}function CJ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;m=h+28|0;o=h+16|0;n=h+8|0;l=h+12|0;g=h;j=h+20|0;k=h+24|0;c[o>>2]=a;c[n>>2]=b;c[l>>2]=d;a=g;c[a>>2]=e;c[a+4>>2]=f;c[j>>2]=c[o>>2];c[k>>2]=0;while(1){if((c[l>>2]|0)<=0){break}o=g;o=kK(c[j>>2]|0,c[o>>2]|0,c[o+4>>2]|0,c[n>>2]|0,c[l>>2]|0)|0;c[k>>2]=o;if((o|0)<=0){break}c[l>>2]=(c[l>>2]|0)-(c[k>>2]|0);a=c[k>>2]|0;o=g;a=dL(c[o>>2]|0,c[o+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;o=g;c[o>>2]=a;c[o+4>>2]=D;c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0)}if((c[l>>2]|0)<=0){c[m>>2]=0;o=c[m>>2]|0;i=h;return o|0}if((c[k>>2]|0)<0){if((c[(c[j>>2]|0)+20>>2]|0)!=28){c[m>>2]=778;o=c[m>>2]|0;i=h;return o|0}}c[(c[j>>2]|0)+20>>2]=0;c[m>>2]=13;o=c[m>>2]|0;i=h;return o|0} + + + +function wF(f){f=f|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+5e3|0;c[(j+1328|0)>>2]=f;c[(j+1324|0)>>2]=0;c[(j+1320|0)>>2]=c[(c[(j+1328|0)>>2]|0)+4>>2];c[(j+1312|0)>>2]=0;c[(j+1308|0)>>2]=c[c[(j+1328|0)>>2]>>2];a[(j+1580|0)>>0]=0;a[(j+1581|0)>>0]=a[(c[(c[(c[(j+1308|0)>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;c[(j+1304|0)>>2]=0;c[(j+1300|0)>>2]=0;c[(j+1296|0)>>2]=0;c[(j+1292|0)>>2]=c[(c[(j+1328|0)>>2]|0)+8>>2];c[(j+1288|0)>>2]=0;c[(j+1284|0)>>2]=0;c[(j+1280|0)>>2]=0;c[(j+1276|0)>>2]=0;c[(j+1272|0)>>2]=0;p=(c[(j+1308|0)>>2]|0)+32|0;f=c[p+4>>2]|0;c[(j+88|0)>>2]=c[p>>2];c[(j+88|0)+4>>2]=f;a:do{f=1;if(f){f=0;if((c[(c[(j+1328|0)>>2]|0)+80>>2]|0)==7){m=900}else{f=1}}if(f){if(1){c[(c[(j+1328|0)>>2]|0)+80>>2]=0;p=(c[(j+1328|0)>>2]|0)+136|0;c[p>>2]=0;c[p+4>>2]=0;c[(c[(j+1328|0)>>2]|0)+20>>2]=0;c[(c[(j+1308|0)>>2]|0)+444>>2]=0;b:do{if((c[(c[(j+1308|0)>>2]|0)+232>>2]|0)==0){do{if((c[(c[(j+1308|0)>>2]|0)+284>>2]|0)!=0){c[(j+1296|0)>>2]=c[(c[(j+1328|0)>>2]|0)+124>>2];f=c[(c[(j+1308|0)>>2]|0)+292>>2]|0;if((c[(j+1296|0)>>2]|0)==0){c[(j+1296|0)>>2]=f;break}else{c[(j+1296|0)>>2]=((c[(j+1296|0)>>2]|0)>>>0)%(f>>>0)|0;break}}}while(0);c[(j+1324|0)>>2]=c[(c[(j+1328|0)>>2]|0)+76>>2];c:while(1){if((c[(j+1312|0)>>2]|0)!=0){break a}if((a[(c[(j+1308|0)>>2]|0)+64>>0]|0)!=0){m=900;break a}c[(j+1300|0)>>2]=(c[(j+1300|0)>>2]|0)+1;c[(j+1316|0)>>2]=(c[(j+1320|0)>>2]|0)+((c[(j+1324|0)>>2]|0)*20|0);if((a[(c[(j+1316|0)>>2]|0)+2>>0]&2|0)!=0){c[(j+1276|0)>>2]=(c[(j+1292|0)>>2]|0)+((c[(c[(j+1316|0)>>2]|0)+8>>2]|0)*40|0);if((b[(c[(j+1276|0)>>2]|0)+28>>1]&9312|0)!=0){te(c[(j+1276|0)>>2]|0)}b[(c[(j+1276|0)>>2]|0)+28>>1]=4}d:do{n=1;f=d[c[(j+1316|0)>>2]>>0]|0;if(n){n=0;switch(f|0){case 66:case 65:case 64:{c[(j+1400|0)>>2]=c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(j+1280|0)>>2]=(c[(j+1292|0)>>2]|0)+((c[(c[(j+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(j+1472|0)>>2]=0;o=c[(c[(j+1400|0)>>2]|0)+8>>2]|0;if((c[(c[(j+1316|0)>>2]|0)+16>>2]|0)>0){c[(j+700|0)>>2]=o;b[(j+700|0)+4>>1]=c[(c[(j+1316|0)>>2]|0)+16>>2];c[(j+700|0)+8>>2]=c[(j+1280|0)>>2];c[(j+1524|0)>>2]=0;while(1){if((c[(j+1524|0)>>2]|0)>=(e[(j+700|0)+4>>1]|0)){break}if((b[(c[(j+700|0)+8>>2]|0)+((c[(j+1524|0)>>2]|0)*40|0)+28>>1]&16384|0)!=0){Id((c[(j+700|0)+8>>2]|0)+((c[(j+1524|0)>>2]|0)*40|0)|0)|0}c[(j+1524|0)>>2]=(c[(j+1524|0)>>2]|0)+1}c[(j+1332|0)>>2]=j+700|0}else{c[(j+1332|0)>>2]=hD(o,j+1584|0,191,j+1472|0)|0;if((c[(j+1332|0)>>2]|0)==0){m=900;break a}iD(c[(c[(j+1400|0)>>2]|0)+8>>2]|0,c[(c[(j+1280|0)>>2]|0)+24>>2]|0,c[(c[(j+1280|0)>>2]|0)+4>>2]|0,c[(j+1332|0)>>2]|0)}a[(c[(j+1332|0)>>2]|0)+6>>0]=0;e:do{if((d[c[(j+1316|0)>>2]>>0]|0)==64){c[(j+1524|0)>>2]=0;while(1){if((c[(j+1524|0)>>2]|0)>=(e[(j+700|0)+4>>1]|0)){break e}if((b[(c[(j+700|0)+8>>2]|0)+((c[(j+1524|0)>>2]|0)*40|0)+28>>1]&1|0)!=0){break}c[(j+1524|0)>>2]=(c[(j+1524|0)>>2]|0)+1}c[(j+1324|0)>>2]=(c[(c[(j+1316|0)>>2]|0)+8>>2]|0)-1}}while(0);c[(j+1312|0)>>2]=jD(c[c[(j+1400|0)>>2]>>2]|0,c[(j+1332|0)>>2]|0,0,0,0,j+1464|0)|0;if((c[(c[(j+1316|0)>>2]|0)+16>>2]|0)==0){cc(c[(j+1308|0)>>2]|0,c[(j+1472|0)>>2]|0)}if((c[(j+1312|0)>>2]|0)==0){c[(c[(j+1400|0)>>2]|0)+12>>2]=c[(j+1464|0)>>2];c[(j+1532|0)>>2]=(c[(j+1464|0)>>2]|0)==0&1;a[(c[(j+1400|0)>>2]|0)+25>>0]=1-(c[(j+1532|0)>>2]|0);a[(c[(j+1400|0)>>2]|0)+27>>0]=0;c[(c[(j+1400|0)>>2]|0)+68>>2]=0;f=(c[(j+1532|0)>>2]|0)!=0;if((d[c[(j+1316|0)>>2]>>0]|0)==66){if(!f){break d}c[(j+1324|0)>>2]=(c[(c[(j+1316|0)>>2]|0)+8>>2]|0)-1;break d}else{if(f){break d}c[(j+1324|0)>>2]=(c[(c[(j+1316|0)>>2]|0)+8>>2]|0)-1;break d}}break};case 63:{c[(j+1476|0)>>2]=c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2];a[(c[(j+1476|0)>>2]|0)+25>>0]=0;c[(j+1284|0)>>2]=(c[(j+1292|0)>>2]|0)+((c[(c[(j+1316|0)>>2]|0)+8>>2]|0)*40|0);o=Pd(c[(j+1284|0)>>2]|0)|0;p=(c[(j+1476|0)>>2]|0)+48|0;c[p>>2]=o;c[p+4>>2]=D;a[(c[(j+1476|0)>>2]|0)+26>>0]=0;a[(c[(j+1476|0)>>2]|0)+27>>0]=1;break};case 58:{eG(c[(j+1328|0)>>2]|0,c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2]|0);c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2]=0;break};case 62:case 61:case 60:case 59:{c[(j+1460|0)>>2]=c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(j+1456|0)>>2]=d[c[(j+1316|0)>>2]>>0]|0;a[(c[(j+1460|0)>>2]|0)+25>>0]=0;o=c[(j+1316|0)>>2]|0;if(((d[(c[(j+1460|0)>>2]|0)+28>>0]|0)>>>2&1|0)!=0){c[(j+1280|0)>>2]=(c[(j+1292|0)>>2]|0)+((c[o+12>>2]|0)*40|0);Ze(c[(j+1280|0)>>2]|0);p=Pd(c[(j+1280|0)>>2]|0)|0;c[(j+408|0)>>2]=p;c[(j+408|0)+4>>2]=D;a[(c[(j+1460|0)>>2]|0)+26>>0]=0;do{if((b[(c[(j+1280|0)>>2]|0)+28>>1]&4|0)==0){if((b[(c[(j+1280|0)>>2]|0)+28>>1]&8|0)==0){c[(j+1324|0)>>2]=(c[(c[(j+1316|0)>>2]|0)+8>>2]|0)-1;break d}if(+h[(c[(j+1280|0)>>2]|0)+8>>3]<+((c[(j+408|0)>>2]|0)>>>0)+4294967296.0*+(c[(j+408|0)+4>>2]|0)){if((c[(j+1456|0)>>2]&1|0)!=0){break}c[(j+1456|0)>>2]=(c[(j+1456|0)>>2]|0)+ -1;break}if(+h[(c[(j+1280|0)>>2]|0)+8>>3]>+((c[(j+408|0)>>2]|0)>>>0)+4294967296.0*+(c[(j+408|0)+4>>2]|0)){if((c[(j+1456|0)>>2]&1|0)==1){c[(j+1456|0)>>2]=(c[(j+1456|0)>>2]|0)+1}}}}while(0);c[(j+1312|0)>>2]=jD(c[c[(j+1460|0)>>2]>>2]|0,0,c[(j+408|0)>>2]|0,c[(j+408|0)+4>>2]|0,0,j+1452|0)|0;if((c[(j+1312|0)>>2]|0)!=0){break c}if((c[(j+1452|0)>>2]|0)==0){a[(c[(j+1460|0)>>2]|0)+26>>0]=1;o=c[(j+408|0)+4>>2]|0;p=(c[(j+1460|0)>>2]|0)+56|0;c[p>>2]=c[(j+408|0)>>2];c[p+4>>2]=o}}else{c[(j+1380|0)>>2]=c[o+16>>2];c[(j+1360|0)>>2]=c[(c[(j+1460|0)>>2]|0)+8>>2];b[(j+1360|0)+4>>1]=c[(j+1380|0)>>2];a[(j+1360|0)+6>>0]=(1&(c[(j+1456|0)>>2]|0)-59|0)!=0?-1:1;c[(j+1360|0)+8>>2]=(c[(j+1292|0)>>2]|0)+((c[(c[(j+1316|0)>>2]|0)+12>>2]|0)*40|0);if((b[(c[(j+1360|0)+8>>2]|0)+28>>1]&16384|0)!=0){Id(c[(j+1360|0)+8>>2]|0)|0}c[(j+1312|0)>>2]=jD(c[c[(j+1460|0)>>2]>>2]|0,j+1360|0,0,0,0,j+1452|0)|0;if((c[(j+1312|0)>>2]|0)!=0){break c}a[(c[(j+1460|0)>>2]|0)+26>>0]=0}a[(c[(j+1460|0)>>2]|0)+27>>0]=0;c[(c[(j+1460|0)>>2]|0)+68>>2]=0;o=c[(j+1452|0)>>2]|0;f:do{if((c[(j+1456|0)>>2]|0)>=61){do{if((o|0)>=0){if((c[(j+1452|0)>>2]|0)==0){if((c[(j+1456|0)>>2]|0)==62){break}}c[(j+1452|0)>>2]=0;break f}}while(0);c[(j+1452|0)>>2]=0;c[(j+1312|0)>>2]=YC(c[c[(j+1460|0)>>2]>>2]|0,j+1452|0)|0;if((c[(j+1312|0)>>2]|0)!=0){break c}a[(c[(j+1460|0)>>2]|0)+26>>0]=0}else{do{if((o|0)<=0){if((c[(j+1452|0)>>2]|0)==0){if((c[(j+1456|0)>>2]|0)==59){break}}c[(j+1452|0)>>2]=fG(c[c[(j+1460|0)>>2]>>2]|0)|0;break f}}while(0);c[(j+1452|0)>>2]=0;c[(j+1312|0)>>2]=ZC(c[c[(j+1460|0)>>2]>>2]|0,j+1452|0)|0;if((c[(j+1312|0)>>2]|0)!=0){break c}a[(c[(j+1460|0)>>2]|0)+26>>0]=0}}while(0);if((c[(j+1452|0)>>2]|0)!=0){c[(j+1324|0)>>2]=(c[(c[(j+1316|0)>>2]|0)+8>>2]|0)-1}break};case 69:{c[(j+432|0)>>2]=0;c[(j+432|0)+4>>2]=0;c[(j+748|0)>>2]=0;c[(j+744|0)>>2]=c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2];if((c[c[(j+744|0)>>2]>>2]|0)!=0){do{if(((d[(c[(j+744|0)>>2]|0)+28>>0]|0)>>>1&1|0)==0){c[(j+1312|0)>>2]=gG(c[c[(j+744|0)>>2]>>2]|0,j+748|0)|0;if((c[(j+1312|0)>>2]|0)!=0){break c}if((c[(j+748|0)>>2]|0)!=0){c[(j+432|0)>>2]=1;c[(j+432|0)+4>>2]=0;break}c[(j+1312|0)>>2]=kF(c[c[(j+744|0)>>2]>>2]|0,j+432|0)|0;p=c[(j+432|0)+4>>2]|0;if((p|0)>2147483647|(p|0)==2147483647&(c[(j+432|0)>>2]|0)>>>0>=4294967295){p=(c[(j+744|0)>>2]|0)+28|0;a[p>>0]=a[p>>0]&-3|2;break}else{p=dL(c[(j+432|0)>>2]|0,c[(j+432|0)+4>>2]|0,1,0)|0;c[(j+432|0)>>2]=p;c[(j+432|0)+4>>2]=D;break}}}while(0);if((c[(c[(j+1316|0)>>2]|0)+12>>2]|0)!=0){if((c[(c[(j+1328|0)>>2]|0)+176>>2]|0)!=0){c[(j+760|0)>>2]=c[(c[(j+1328|0)>>2]|0)+176>>2];while(1){if((c[(c[(j+760|0)>>2]|0)+4>>2]|0)==0){break}c[(j+760|0)>>2]=c[(c[(j+760|0)>>2]|0)+4>>2]}c[(j+756|0)>>2]=(c[(c[(j+760|0)>>2]|0)+12>>2]|0)+((c[(c[(j+1316|0)>>2]|0)+12>>2]|0)*40|0)}else{c[(j+756|0)>>2]=(c[(j+1292|0)>>2]|0)+((c[(c[(j+1316|0)>>2]|0)+12>>2]|0)*40|0)}MF(c[(j+756|0)>>2]|0)|0;p=(c[(j+756|0)>>2]|0)+16|0;if((c[p>>2]|0)==-1?(c[p+4>>2]|0)==2147483647:0){m=572;break c}if(((d[(c[(j+744|0)>>2]|0)+28>>0]|0)>>>1&1|0)!=0){m=572;break c}o=c[(j+432|0)>>2]|0;r=c[(j+432|0)+4>>2]|0;p=(c[(j+756|0)>>2]|0)+16|0;p=dL(c[p>>2]|0,c[p+4>>2]|0,1,0)|0;q=D;if((r|0)<(q|0)|(r|0)==(q|0)&o>>>0

>>0){r=(c[(j+756|0)>>2]|0)+16|0;r=dL(c[r>>2]|0,c[r+4>>2]|0,1,0)|0;c[(j+432|0)>>2]=r;c[(j+432|0)+4>>2]=D}q=c[(j+432|0)+4>>2]|0;r=(c[(j+756|0)>>2]|0)+16|0;c[r>>2]=c[(j+432|0)>>2];c[r+4>>2]=q}if(((d[(c[(j+744|0)>>2]|0)+28>>0]|0)>>>1&1|0)!=0){r=c[(j+88|0)+4>>2]|0;c[(j+432|0)>>2]=c[(j+88|0)>>2];c[(j+432|0)+4>>2]=r;r=c[(j+432|0)+4>>2]&1073741823;c[(j+432|0)>>2]=c[(j+432|0)>>2];c[(j+432|0)+4>>2]=r;r=dL(c[(j+432|0)>>2]|0,c[(j+432|0)+4>>2]|0,1,0)|0;c[(j+432|0)>>2]=r;c[(j+432|0)+4>>2]=D;c[(j+752|0)>>2]=0;while(1){r=jD(c[c[(j+744|0)>>2]>>2]|0,0,c[(j+432|0)>>2]|0,c[(j+432|0)+4>>2]|0,0,j+748|0)|0;c[(j+1312|0)>>2]=r;if(!((r|0)==0&(c[(j+748|0)>>2]|0)==0)){break}r=(c[(j+752|0)>>2]|0)+1|0;c[(j+752|0)>>2]=r;if((r|0)>=100){break}Bc(8,j+432|0);p=c[(j+432|0)>>2]|0;o=c[(j+432|0)+4>>2]|0;if((c[(j+752|0)>>2]|0)<5){c[(j+432|0)>>2]=p&16777215;c[(j+432|0)+4>>2]=0}else{c[(j+432|0)>>2]=p;c[(j+432|0)+4>>2]=o&1073741823}r=dL(c[(j+432|0)>>2]|0,c[(j+432|0)+4>>2]|0,1,0)|0;c[(j+432|0)>>2]=r;c[(j+432|0)+4>>2]=D}if((c[(j+1312|0)>>2]|0)==0){if((c[(j+748|0)>>2]|0)==0){m=586;break c}}}a[(c[(j+744|0)>>2]|0)+26>>0]=0;a[(c[(j+744|0)>>2]|0)+27>>0]=0;c[(c[(j+744|0)>>2]|0)+68>>2]=0}q=c[(j+432|0)+4>>2]|0;r=(c[(j+1276|0)>>2]|0)+16|0;c[r>>2]=c[(j+432|0)>>2];c[r+4>>2]=q;break};case 73:case 70:{c[(j+764|0)>>2]=(c[(j+1292|0)>>2]|0)+((c[(c[(j+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(j+688|0)>>2]=c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2];o=c[(c[(j+1316|0)>>2]|0)+12>>2]|0;if((d[c[(j+1316|0)>>2]>>0]|0)==70){c[(j+720|0)>>2]=(c[(j+1292|0)>>2]|0)+(o*40|0);q=(c[(j+720|0)>>2]|0)+16|0;r=c[q+4>>2]|0;c[(j+416|0)>>2]=c[q>>2];c[(j+416|0)+4>>2]=r}else{c[(j+416|0)>>2]=o;c[(j+416|0)+4>>2]=((o|0)<0)<<31>>31}if((a[(c[(j+1316|0)>>2]|0)+3>>0]&1|0)!=0){r=(c[(j+1328|0)>>2]|0)+92|0;c[r>>2]=(c[r>>2]|0)+1}if((a[(c[(j+1316|0)>>2]|0)+3>>0]&2|0)!=0){p=c[(j+416|0)>>2]|0;q=c[(j+416|0)+4>>2]|0;c[(j+88|0)>>2]=p;c[(j+88|0)+4>>2]=q;r=(c[(j+1308|0)>>2]|0)+32|0;c[r>>2]=p;c[r+4>>2]=q}if((b[(c[(j+764|0)>>2]|0)+28>>1]&1|0)!=0){c[(c[(j+764|0)>>2]|0)+4>>2]=0;c[(c[(j+764|0)>>2]|0)+24>>2]=0}if((a[(c[(j+1316|0)>>2]|0)+3>>0]&16|0)!=0){o=c[(c[(j+688|0)>>2]|0)+12>>2]|0}else{o=0}c[(j+680|0)>>2]=o;if((b[(c[(j+764|0)>>2]|0)+28>>1]&16384|0)!=0){c[(j+684|0)>>2]=c[(c[(j+764|0)>>2]|0)+16>>2]}else{c[(j+684|0)>>2]=0}c[(j+1312|0)>>2]=hG(c[c[(j+688|0)>>2]>>2]|0,0,c[(j+416|0)>>2]|0,c[(j+416|0)+4>>2]|0,c[(c[(j+764|0)>>2]|0)+4>>2]|0,c[(c[(j+764|0)>>2]|0)+24>>2]|0,c[(j+684|0)>>2]|0,(a[(c[(j+1316|0)>>2]|0)+3>>0]&8|0)!=0&1,c[(j+680|0)>>2]|0)|0;a[(c[(j+688|0)>>2]|0)+26>>0]=0;a[(c[(j+688|0)>>2]|0)+27>>0]=0;c[(c[(j+688|0)>>2]|0)+68>>2]=0;if((c[(j+1312|0)>>2]|0)==0){if((c[(c[(j+1308|0)>>2]|0)+200>>2]|0)!=0){if((c[(c[(j+1316|0)>>2]|0)+16>>2]|0)!=0){c[(j+676|0)>>2]=c[(c[(c[(j+1308|0)>>2]|0)+16>>2]|0)+(a[(c[(j+688|0)>>2]|0)+24>>0]<<4)>>2];c[(j+672|0)>>2]=c[(c[(j+1316|0)>>2]|0)+16>>2];c[(j+664|0)>>2]=(a[(c[(j+1316|0)>>2]|0)+3>>0]&4|0)!=0?23:18;yb[c[(c[(j+1308|0)>>2]|0)+200>>2]&0](c[(c[(j+1308|0)>>2]|0)+196>>2]|0,c[(j+664|0)>>2]|0,c[(j+676|0)>>2]|0,c[(j+672|0)>>2]|0,c[(j+416|0)>>2]|0,c[(j+416|0)+4>>2]|0)}}}break};default:{n=1}}}c[j+4792>>2]=k;c[j+4800>>2]=m;c[j+4824>>2]=l;c[j+4840>>2]=n;c[j+4848>>2]=f;c[j+4864>>2]=0;c[j+4868>>2]=0;_sqlite3VdbeExec$1(j);k=c[j+4792>>2]|0;m=c[j+4800>>2]|0;l=c[j+4824>>2]|0;n=c[j+4840>>2]|0;B=c[j+4864>>2]|0;u=c[j+4868>>2]|0;C=+g[j+4868>>2];c[j+4864>>2]=0;c[j+4868>>2]=0;if((B|0)==1){break}if((B|0)==2){switch(u|0){case 54:{break d};case 50:{break c};case 49:{break a}}}c[j+4792>>2]=k;c[j+4800>>2]=m;c[j+4824>>2]=l;c[j+4840>>2]=n;c[j+4848>>2]=f;c[j+4856>>2]=0;c[j+4860>>2]=0;_sqlite3VdbeExec$0(j);k=c[j+4792>>2]|0;m=c[j+4800>>2]|0;l=c[j+4824>>2]|0;B=c[j+4856>>2]|0;u=c[j+4860>>2]|0;C=+g[j+4860>>2];c[j+4856>>2]=0;c[j+4860>>2]=0;if((B|0)==1){break}if((B|0)==2){switch(u|0){case 66:{break d};case 70:{break a};case 67:{break c}}}}while(0);if((m|0)==28){m=0;if((c[(c[(j+1316|0)>>2]|0)+4>>2]|0)!=0){m=33;break}if((c[(c[(j+1328|0)>>2]|0)+176>>2]|0)==0){m=33;break}c[(j+1252|0)>>2]=c[(c[(j+1328|0)>>2]|0)+176>>2];c[(c[(j+1328|0)>>2]|0)+176>>2]=c[(c[(j+1252|0)>>2]|0)+4>>2];q=(c[(j+1328|0)>>2]|0)+184|0;c[q>>2]=(c[q>>2]|0)+ -1;BF(c[(j+1308|0)>>2]|0,c[(c[(j+1328|0)>>2]|0)+92>>2]|0);c[(j+1324|0)>>2]=CF(c[(j+1252|0)>>2]|0)|0;q=(c[(j+1308|0)>>2]|0)+32|0;r=c[q+4>>2]|0;c[(j+88|0)>>2]=c[q>>2];c[(j+88|0)+4>>2]=r;if((c[(c[(j+1316|0)>>2]|0)+8>>2]|0)==4){c[(j+1324|0)>>2]=(c[(c[(c[(j+1328|0)>>2]|0)+4>>2]|0)+((c[(j+1324|0)>>2]|0)*20|0)+8>>2]|0)-1}c[(j+1320|0)>>2]=c[(c[(j+1328|0)>>2]|0)+4>>2];c[(j+1292|0)>>2]=c[(c[(j+1328|0)>>2]|0)+8>>2]}else if((m|0)==57){m=0;b[(c[(j+1276|0)>>2]|0)+28>>1]=2562;c[(c[(j+1276|0)>>2]|0)+4>>2]=c[(c[(j+1316|0)>>2]|0)+16>>2];c[(c[(j+1276|0)>>2]|0)+24>>2]=c[(c[(j+1316|0)>>2]|0)+4>>2];a[(c[(j+1276|0)>>2]|0)+30>>0]=a[(j+1581|0)>>0]|0}else if((m|0)==646){m=0;c[(j+460|0)>>2]=c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(j+456|0)>>2]=1;if((c[(c[(j+460|0)>>2]|0)+64>>2]|0)!=0){c[(j+1312|0)>>2]=mG(c[(j+1308|0)>>2]|0,c[(j+460|0)>>2]|0,j+456|0)|0}else{c[(j+468|0)>>2]=c[c[(j+460|0)>>2]>>2];c[(j+1312|0)>>2]=nG(c[(j+468|0)>>2]|0,j+456|0)|0;a[(c[(j+460|0)>>2]|0)+27>>0]=0;c[(c[(j+460|0)>>2]|0)+68>>2]=0;a[(c[(j+460|0)>>2]|0)+26>>0]=0}a[(c[(j+460|0)>>2]|0)+25>>0]=c[(j+456|0)>>2];if((c[(j+456|0)>>2]|0)!=0){c[(j+1324|0)>>2]=(c[(c[(j+1316|0)>>2]|0)+8>>2]|0)-1}}else if((m|0)==653){c[(j+464|0)>>2]=c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(j+472|0)>>2]=c[(c[(j+1316|0)>>2]|0)+12>>2];c[(j+1312|0)>>2]=zb[c[(c[(j+1316|0)>>2]|0)+16>>2]&127](c[c[(j+464|0)>>2]>>2]|0,j+472|0)|0;m=654}if((m|0)==654){c[(c[(j+464|0)>>2]|0)+68>>2]=0;m=(c[(j+464|0)>>2]|0)+25|0;if((c[(j+472|0)>>2]|0)==0){a[m>>0]=0;c[(j+1324|0)>>2]=(c[(c[(j+1316|0)>>2]|0)+8>>2]|0)-1;r=(c[(j+1328|0)>>2]|0)+108+(d[(c[(j+1316|0)>>2]|0)+3>>0]<<2)|0;c[r>>2]=(c[r>>2]|0)+1}else{a[m>>0]=1}a[(c[(j+464|0)>>2]|0)+26>>0]=0;m=16}if((m|0)==16){m=0;if((c[(c[(j+1308|0)>>2]|0)+232>>2]|0)!=0){break b}if((c[(c[(j+1308|0)>>2]|0)+284>>2]|0)!=0){if((c[(j+1300|0)>>2]|0)>>>0>=(c[(j+1296|0)>>2]|0)>>>0){c[(j+1296|0)>>2]=(c[(j+1300|0)>>2]|0)+(c[(c[(j+1308|0)>>2]|0)+292>>2]|0)-(((c[(j+1300|0)>>2]|0)>>>0)%((c[(c[(j+1308|0)>>2]|0)+292>>2]|0)>>>0)|0);if((ub[c[(c[(j+1308|0)>>2]|0)+284>>2]&63](c[(c[(j+1308|0)>>2]|0)+288>>2]|0)|0)!=0){m=20;break}}}}c[(j+1324|0)>>2]=(c[(j+1324|0)>>2]|0)+1}switch(m|0){case 20:{c[(j+1312|0)>>2]=9;break a};case 33:{c[(c[(j+1328|0)>>2]|0)+80>>2]=c[(c[(j+1316|0)>>2]|0)+4>>2];a[(c[(j+1328|0)>>2]|0)+86>>0]=c[(c[(j+1316|0)>>2]|0)+8>>2];c[(c[(j+1328|0)>>2]|0)+76>>2]=c[(j+1324|0)>>2];if((c[(c[(j+1328|0)>>2]|0)+80>>2]|0)!=0){if((a[(c[(j+1316|0)>>2]|0)+3>>0]|0)!=0){c[(j+1260|0)>>2]=c[37744+((d[(c[(j+1316|0)>>2]|0)+3>>0]|0)-1<<2)>>2]}else{c[(j+1260|0)>>2]=0}c[(j+1256|0)>>2]=37808;if((c[(j+1260|0)>>2]|0)!=0){if((c[(c[(j+1316|0)>>2]|0)+16>>2]|0)!=0){q=(c[(j+1328|0)>>2]|0)+44|0;r=c[(j+1308|0)>>2]|0;p=c[(c[(j+1316|0)>>2]|0)+16>>2]|0;c[(j+336|0)>>2]=c[(j+1260|0)>>2];c[(j+336|0)+4>>2]=p;$t(q,r,37832,j+336|0)}else{m=40}}else{m=40}do{if((m|0)==40){l=(c[(j+1328|0)>>2]|0)+44|0;k=c[(j+1308|0)>>2]|0;if((c[(c[(j+1316|0)>>2]|0)+16>>2]|0)!=0){c[(j+336|0)>>2]=c[(c[(j+1316|0)>>2]|0)+16>>2];$t(l,k,1768,j+336|0);break}else{c[(j+336|0)>>2]=c[(j+1260|0)>>2];$t(l,k,37864,j+336|0);break}}}while(0);q=c[(c[(j+1316|0)>>2]|0)+4>>2]|0;r=c[(j+1256|0)>>2]|0;o=c[(c[(j+1328|0)>>2]|0)+168>>2]|0;p=c[(c[(j+1328|0)>>2]|0)+44>>2]|0;c[(j+336|0)>>2]=c[(j+1324|0)>>2];c[(j+336|0)+4>>2]=o;c[(j+336|0)+8>>2]=p;zc(q,r,j+336|0)}c[(j+1312|0)>>2]=DF(c[(j+1328|0)>>2]|0)|0;if((c[(j+1312|0)>>2]|0)==5){c[(j+1312|0)>>2]=5;c[(c[(j+1328|0)>>2]|0)+80>>2]=5;r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0}else{c[(j+1312|0)>>2]=(c[(c[(j+1328|0)>>2]|0)+80>>2]|0)!=0?1:101;r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0}};case 80:{c[(j+1312|0)>>2]=9;break a};case 83:{c[(c[(j+1328|0)>>2]|0)+72>>2]=(c[(c[(j+1328|0)>>2]|0)+72>>2]|0)+2|1;r=(c[(j+1292|0)>>2]|0)+((c[(c[(j+1316|0)>>2]|0)+4>>2]|0)*40|0)|0;c[(c[(j+1328|0)>>2]|0)+20>>2]=r;c[(j+1220|0)>>2]=r;c[(j+1216|0)>>2]=0;while(1){if((c[(j+1216|0)>>2]|0)>=(c[(c[(j+1316|0)>>2]|0)+8>>2]|0)){break}if((b[(c[(j+1220|0)>>2]|0)+((c[(j+1216|0)>>2]|0)*40|0)+28>>1]&4096|0)!=0){if((ur((c[(j+1220|0)>>2]|0)+((c[(j+1216|0)>>2]|0)*40|0)|0)|0)!=0){m=900;break a}}HF((c[(j+1220|0)>>2]|0)+((c[(j+1216|0)>>2]|0)*40|0)|0)|0;c[(j+1216|0)>>2]=(c[(j+1216|0)>>2]|0)+1}if((a[(c[(j+1308|0)>>2]|0)+64>>0]|0)!=0){m=900;break a}c[(c[(j+1328|0)>>2]|0)+76>>2]=(c[(j+1324|0)>>2]|0)+1;c[(j+1312|0)>>2]=100;r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0};case 146:{Gd((j+184|0)+8|0);m=900;break a};case 177:{c[(j+1312|0)>>2]=20;break};case 395:{c[(c[(j+1328|0)>>2]|0)+76>>2]=c[(j+1324|0)>>2];a[(c[(j+1308|0)>>2]|0)+62>>0]=0;c[(j+1312|0)>>2]=5;c[(c[(j+1328|0)>>2]|0)+80>>2]=5;r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0};case 423:{if((c[(j+1396|0)>>2]|0)!=0){xr(c[(j+1308|0)>>2]|0,516);a[(c[(j+1308|0)>>2]|0)+62>>0]=1}else{r=FF(c[(j+1328|0)>>2]|0,1)|0;c[(j+1312|0)>>2]=r;if((r|0)!=0){r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0}a[(c[(j+1308|0)>>2]|0)+62>>0]=c[(j+1468|0)>>2];if((DF(c[(j+1328|0)>>2]|0)|0)==5){c[(c[(j+1328|0)>>2]|0)+76>>2]=c[(j+1324|0)>>2];a[(c[(j+1308|0)>>2]|0)+62>>0]=1-(c[(j+1468|0)>>2]|0);c[(j+1312|0)>>2]=5;c[(c[(j+1328|0)>>2]|0)+80>>2]=5;r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0}}yr(c[(j+1308|0)>>2]|0);if((c[(c[(j+1328|0)>>2]|0)+80>>2]|0)==0){c[(j+1312|0)>>2]=101;r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0}else{c[(j+1312|0)>>2]=1;r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0}};case 436:{c[(j+1312|0)>>2]=8;break};case 439:{c[(c[(j+1328|0)>>2]|0)+76>>2]=c[(j+1324|0)>>2];c[(j+1312|0)>>2]=5;c[(c[(j+1328|0)>>2]|0)+80>>2]=5;r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0};case 473:{c[(j+1312|0)>>2]=dq(70771)|0;break};case 572:{c[(j+1312|0)>>2]=13;break};case 586:{c[(j+1312|0)>>2]=13;break};case 898:{r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0};case 899:{$t((c[(j+1328|0)>>2]|0)+44|0,c[(j+1308|0)>>2]|0,1520,j+336|0);c[(j+1312|0)>>2]=18;break a}}if((a[(c[(j+1308|0)>>2]|0)+64>>0]|0)!=0){c[(j+1312|0)>>2]=7}if((c[(j+1312|0)>>2]|0)==3082){break a}q=(c[(j+1328|0)>>2]|0)+44|0;r=c[(j+1308|0)>>2]|0;c[(j+336|0)>>2]=ie(c[(j+1312|0)>>2]|0)|0;$t(q,r,1768,j+336|0);break a}}while(0);c[(j+1312|0)>>2]=9;c[(c[(j+1328|0)>>2]|0)+80>>2]=c[(j+1312|0)>>2];q=(c[(j+1328|0)>>2]|0)+44|0;r=c[(j+1308|0)>>2]|0;c[(j+336|0)>>2]=ie(c[(j+1312|0)>>2]|0)|0;$t(q,r,1768,j+336|0)}}}while(0);if((m|0)==900){a[(c[(j+1308|0)>>2]|0)+64>>0]=1;$t((c[(j+1328|0)>>2]|0)+44|0,c[(j+1308|0)>>2]|0,9112,j+336|0);c[(j+1312|0)>>2]=7}c[(c[(j+1328|0)>>2]|0)+80>>2]=c[(j+1312|0)>>2];r=c[(j+1312|0)>>2]|0;p=c[(c[(j+1328|0)>>2]|0)+168>>2]|0;q=c[(c[(j+1328|0)>>2]|0)+44>>2]|0;c[(j+336|0)>>2]=c[(j+1324|0)>>2];c[(j+336|0)+4>>2]=p;c[(j+336|0)+8>>2]=q;zc(r,38464,j+336|0);DF(c[(j+1328|0)>>2]|0)|0;if((c[(j+1312|0)>>2]|0)==3082){a[(c[(j+1308|0)>>2]|0)+64>>0]=1}c[(j+1312|0)>>2]=1;if((d[(j+1580|0)>>0]|0)<=0){r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0}Hy(c[(j+1308|0)>>2]|0,(d[(j+1580|0)>>0]|0)-1|0);r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0}function xF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;g=b+16|0;d=b;h=b+4|0;e=b+8|0;f=b+12|0;c[g>>2]=a;c[d>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[g>>2]|0)+20>>2]|0)){break}c[e>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+4>>2];if((c[e>>2]|0)!=0){c[f>>2]=zF(Zb(c[e>>2]|0)|0)|0;if((c[(c[g>>2]|0)+204>>2]|0)!=0){if((c[f>>2]|0)>0){if((c[d>>2]|0)==0){c[d>>2]=xb[c[(c[g>>2]|0)+204>>2]&31](c[(c[g>>2]|0)+208>>2]|0,c[g>>2]|0,c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)>>2]|0,c[f>>2]|0)|0}}}}c[h>>2]=(c[h>>2]|0)+1}i=b;return c[d>>2]|0}function yF(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;g=d+12|0;f=d+4|0;e=d+8|0;h=d+16|0;c[g>>2]=b;c[f>>2]=c[c[g>>2]>>2];c[e>>2]=c[(c[g>>2]|0)+80>>2];b=c[f>>2]|0;if((c[(c[g>>2]|0)+44>>2]|0)==0){Rc(b,c[e>>2]|0,0,d);b=c[e>>2]|0;i=d;return b|0}a[h>>0]=a[b+64>>0]|0;Ih();if((c[(c[f>>2]|0)+224>>2]|0)==0){b=Pf(c[f>>2]|0)|0;c[(c[f>>2]|0)+224>>2]=b}Qf(c[(c[f>>2]|0)+224>>2]|0,-1,c[(c[g>>2]|0)+44>>2]|0,1,-1);Jh();a[(c[f>>2]|0)+64>>0]=a[h>>0]|0;c[(c[f>>2]|0)+52>>2]=c[e>>2];b=c[e>>2]|0;i=d;return b|0}function zF(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=AF(c[(c[d>>2]|0)+208>>2]|0)|0;i=b;return a|0}function AF(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=0;if((c[e>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}c[d>>2]=c[(c[e>>2]|0)+12>>2];c[(c[e>>2]|0)+12>>2]=0;e=c[d>>2]|0;i=b;return e|0}function BF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;c[(c[f>>2]|0)+80>>2]=c[e>>2];a=(c[f>>2]|0)+84|0;c[a>>2]=(c[a>>2]|0)+(c[e>>2]|0);i=d;return}function CF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=i;i=i+16|0;b=d+4|0;e=d;c[b>>2]=a;c[e>>2]=c[c[b>>2]>>2];c[(c[e>>2]|0)+200>>2]=c[(c[b>>2]|0)+16>>2];c[(c[e>>2]|0)+196>>2]=c[(c[b>>2]|0)+56>>2];c[(c[e>>2]|0)+4>>2]=c[(c[b>>2]|0)+8>>2];c[(c[e>>2]|0)+32>>2]=c[(c[b>>2]|0)+48>>2];c[(c[e>>2]|0)+8>>2]=c[(c[b>>2]|0)+12>>2];c[(c[e>>2]|0)+28>>2]=c[(c[b>>2]|0)+52>>2];c[(c[e>>2]|0)+56>>2]=c[(c[b>>2]|0)+20>>2];c[(c[e>>2]|0)+36>>2]=c[(c[b>>2]|0)+40>>2];g=(c[b>>2]|0)+32|0;f=c[g+4>>2]|0;a=(c[c[e>>2]>>2]|0)+32|0;c[a>>2]=c[g>>2];c[a+4>>2]=f;c[(c[e>>2]|0)+92>>2]=c[(c[b>>2]|0)+68>>2];i=d;return c[(c[b>>2]|0)+44>>2]|0}function DF(b){b=b|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;k=f+24|0;g=f;l=f+4|0;j=f+8|0;n=f+12|0;h=f+16|0;m=f+20|0;c[g>>2]=b;c[j>>2]=c[c[g>>2]>>2];if((a[(c[c[g>>2]>>2]|0)+64>>0]|0)!=0){c[(c[g>>2]|0)+80>>2]=7}if((c[(c[g>>2]|0)+200>>2]|0)!=0){aL(c[(c[g>>2]|0)+200>>2]|0,0,c[(c[g>>2]|0)+196>>2]|0)|0}VI(c[g>>2]|0);if((c[(c[g>>2]|0)+40>>2]|0)!=-1108210269){c[k>>2]=0;b=c[k>>2]|0;i=f;return b|0}if((c[(c[g>>2]|0)+76>>2]|0)>=0){if(((e[(c[g>>2]|0)+88>>1]|0)>>>9&1|0)!=0){c[h>>2]=0;c[n>>2]=c[(c[g>>2]|0)+80>>2]&255;if((c[n>>2]|0)==7|(c[n>>2]|0)==10|(c[n>>2]|0)==9){b=1}else{b=(c[n>>2]|0)==13}c[m>>2]=b&1;do{if((c[m>>2]|0)!=0){if(((e[(c[g>>2]|0)+88>>1]|0)>>>8&1|0)!=0){if((c[n>>2]|0)==9){break}}if((c[n>>2]|0)==7|(c[n>>2]|0)==13){if(((e[(c[g>>2]|0)+88>>1]|0)>>>7&1|0)!=0){c[h>>2]=2;break}}xr(c[j>>2]|0,516);yr(c[j>>2]|0);a[(c[j>>2]|0)+62>>0]=1}}while(0);if((c[(c[g>>2]|0)+80>>2]|0)==0){FF(c[g>>2]|0,0)|0}if((c[(c[j>>2]|0)+296>>2]|0)>0){if((c[(c[j>>2]|0)+320>>2]|0)==0){n=40}else{n=22}}else{n=22}if((n|0)==22){if((d[(c[j>>2]|0)+62>>0]|0)!=0){if((c[(c[j>>2]|0)+148>>2]|0)==(((e[(c[g>>2]|0)+88>>1]|0)>>>8&1|0)==0|0)){do{if((c[(c[g>>2]|0)+80>>2]|0)==0){n=27}else{if((d[(c[g>>2]|0)+86>>0]|0)==3){if((c[m>>2]|0)==0){n=27;break}}xr(c[j>>2]|0,0)}}while(0);do{if((n|0)==27){c[l>>2]=FF(c[g>>2]|0,1)|0;do{if((c[l>>2]|0)!=0){if(((e[(c[g>>2]|0)+88>>1]|0)>>>8&1|0)==0){c[l>>2]=787;break}c[k>>2]=1;b=c[k>>2]|0;i=f;return b|0}else{c[l>>2]=WI(c[j>>2]|0,c[g>>2]|0)|0}}while(0);if((c[l>>2]|0)==5){if(((e[(c[g>>2]|0)+88>>1]|0)>>>8&1|0)!=0){c[k>>2]=5;b=c[k>>2]|0;i=f;return b|0}}if((c[l>>2]|0)!=0){c[(c[g>>2]|0)+80>>2]=c[l>>2];xr(c[j>>2]|0,0);break}else{b=(c[j>>2]|0)+496|0;c[b>>2]=0;c[b+4>>2]=0;b=(c[j>>2]|0)+504|0;c[b>>2]=0;c[b+4>>2]=0;b=(c[j>>2]|0)+24|0;c[b>>2]=c[b>>2]&-16777217;Iy(c[j>>2]|0);break}}}while(0);c[(c[j>>2]|0)+492>>2]=0}else{n=40}}else{n=40}}do{if((n|0)==40){if((c[h>>2]|0)==0){if((c[(c[g>>2]|0)+80>>2]|0)!=0){if((d[(c[g>>2]|0)+86>>0]|0)!=3){if((d[(c[g>>2]|0)+86>>0]|0)==2){c[h>>2]=2;break}else{xr(c[j>>2]|0,516);yr(c[j>>2]|0);a[(c[j>>2]|0)+62>>0]=1;break}}}c[h>>2]=1}}}while(0);if((c[h>>2]|0)!=0){c[l>>2]=GF(c[g>>2]|0,c[h>>2]|0)|0;if((c[l>>2]|0)!=0){if((c[(c[g>>2]|0)+80>>2]|0)==0){n=51}else{if((c[(c[g>>2]|0)+80>>2]&255|0)==19){n=51}}if((n|0)==51){c[(c[g>>2]|0)+80>>2]=c[l>>2];cc(c[j>>2]|0,c[(c[g>>2]|0)+44>>2]|0);c[(c[g>>2]|0)+44>>2]=0}xr(c[j>>2]|0,516);yr(c[j>>2]|0);a[(c[j>>2]|0)+62>>0]=1}}if(((e[(c[g>>2]|0)+88>>1]|0)>>>4&1|0)!=0){l=c[j>>2]|0;if((c[h>>2]|0)!=2){BF(l,c[(c[g>>2]|0)+92>>2]|0)}else{BF(l,0)}c[(c[g>>2]|0)+92>>2]=0}}}if((c[(c[g>>2]|0)+76>>2]|0)>=0){b=(c[j>>2]|0)+140|0;c[b>>2]=(c[b>>2]|0)+ -1;if(((e[(c[g>>2]|0)+88>>1]|0)>>>8&1|0)==0){b=(c[j>>2]|0)+148|0;c[b>>2]=(c[b>>2]|0)+ -1}if(((e[(c[g>>2]|0)+88>>1]|0)>>>9&1|0)!=0){b=(c[j>>2]|0)+144|0;c[b>>2]=(c[b>>2]|0)+ -1}}c[(c[g>>2]|0)+40>>2]=1369188723;if((a[(c[c[g>>2]>>2]|0)+64>>0]|0)!=0){c[(c[g>>2]|0)+80>>2]=7}c[k>>2]=(c[(c[g>>2]|0)+80>>2]|0)==5?5:0;b=c[k>>2]|0;i=f;return b|0}function EF(a){a=a|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;c[g>>2]=a;if((b[(c[g>>2]|0)+28>>1]&18|0)==0){c[e>>2]=0;g=c[e>>2]|0;i=d;return g|0}c[f>>2]=c[(c[g>>2]|0)+24>>2];if((b[(c[g>>2]|0)+28>>1]&16384|0)!=0){c[f>>2]=(c[f>>2]|0)+(c[(c[g>>2]|0)+16>>2]|0)}c[e>>2]=(c[f>>2]|0)>(c[(c[c[g>>2]>>2]|0)+88>>2]|0)&1;g=c[e>>2]|0;i=d;return g|0}function FF(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;h=k;j=k+16|0;f=k+4|0;l=k+8|0;g=k+12|0;c[f>>2]=b;c[l>>2]=d;c[g>>2]=c[c[f>>2]>>2];if((c[l>>2]|0)!=0){d=(c[g>>2]|0)+496|0;b=(c[g>>2]|0)+504|0;b=dL(c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;d=D;if(!((d|0)>0|(d|0)==0&b>>>0>0)){e=3}}else{e=3}do{if((e|0)==3){if((c[l>>2]|0)==0){b=(c[f>>2]|0)+144|0;d=c[b+4>>2]|0;if((d|0)>0|(d|0)==0&(c[b>>2]|0)>>>0>0){break}}c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}}while(0);c[(c[f>>2]|0)+80>>2]=787;a[(c[f>>2]|0)+86>>0]=2;$t((c[f>>2]|0)+44|0,c[g>>2]|0,30856,h);c[j>>2]=1;b=c[j>>2]|0;i=k;return b|0}function GF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;g=h+28|0;d=h;f=h+4|0;e=h+8|0;k=h+12|0;m=h+16|0;j=h+20|0;l=h+24|0;c[g>>2]=a;c[d>>2]=b;c[f>>2]=c[c[g>>2]>>2];c[e>>2]=0;if((c[(c[f>>2]|0)+492>>2]|0)==0){a=c[e>>2]|0;i=h;return a|0}if((c[(c[g>>2]|0)+104>>2]|0)==0){a=c[e>>2]|0;i=h;return a|0}c[m>>2]=(c[(c[g>>2]|0)+104>>2]|0)-1;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){break}c[j>>2]=0;c[l>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(c[k>>2]<<4)+4>>2];if((c[l>>2]|0)!=0){if((c[d>>2]|0)==2){c[j>>2]=ZF(c[l>>2]|0,2,c[m>>2]|0)|0}if((c[j>>2]|0)==0){c[j>>2]=ZF(c[l>>2]|0,1,c[m>>2]|0)|0}if((c[e>>2]|0)==0){c[e>>2]=c[j>>2]}}c[k>>2]=(c[k>>2]|0)+1}a=(c[f>>2]|0)+492|0;c[a>>2]=(c[a>>2]|0)+ -1;c[(c[g>>2]|0)+104>>2]=0;if((c[e>>2]|0)==0){if((c[d>>2]|0)==2){c[e>>2]=XF(c[f>>2]|0,2,c[m>>2]|0)|0}if((c[e>>2]|0)==0){c[e>>2]=XF(c[f>>2]|0,1,c[m>>2]|0)|0}}if((c[d>>2]|0)!=2){a=c[e>>2]|0;i=h;return a|0}a=(c[g>>2]|0)+152|0;m=c[a+4>>2]|0;l=(c[f>>2]|0)+496|0;c[l>>2]=c[a>>2];c[l+4>>2]=m;l=(c[g>>2]|0)+160|0;m=c[l+4>>2]|0;a=(c[f>>2]|0)+504|0;c[a>>2]=c[l>>2];c[a+4>>2]=m;a=c[e>>2]|0;i=h;return a|0}function HF(d){d=d|0;var f=0,g=0,h=0;g=i;i=i+16|0;f=g+4|0;h=g;c[h>>2]=d;if((b[(c[h>>2]|0)+28>>1]&512|0)==0){if((b[(c[h>>2]|0)+28>>1]&2|0)!=0){if((ue(c[h>>2]|0,(c[(c[h>>2]|0)+24>>2]|0)+2|0,1)|0)!=0){c[f>>2]=7;h=c[f>>2]|0;i=g;return h|0}else{a[(c[(c[h>>2]|0)+4>>2]|0)+(c[(c[h>>2]|0)+24>>2]|0)>>0]=0;a[(c[(c[h>>2]|0)+4>>2]|0)+((c[(c[h>>2]|0)+24>>2]|0)+1)>>0]=0;h=(c[h>>2]|0)+28|0;b[h>>1]=e[h>>1]|0|512;c[f>>2]=0;h=c[f>>2]|0;i=g;return h|0}}}c[f>>2]=0;h=c[f>>2]|0;i=g;return h|0}function IF(d){d=d|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[h>>2]=d;d=e[(c[h>>2]|0)+28>>1]|0;if((b[(c[h>>2]|0)+28>>1]&12|0)!=0){b[g>>1]=d&12;d=b[g>>1]|0;i=f;return d|0}if((d&18|0)==0){b[g>>1]=0;d=b[g>>1]|0;i=f;return d|0}if((zt(c[(c[h>>2]|0)+4>>2]|0,(c[h>>2]|0)+8|0,c[(c[h>>2]|0)+24>>2]|0,a[(c[h>>2]|0)+30>>0]|0)|0)==0){b[g>>1]=0;d=b[g>>1]|0;i=f;return d|0}if((Pg(c[(c[h>>2]|0)+4>>2]|0,(c[h>>2]|0)+16|0,c[(c[h>>2]|0)+24>>2]|0,a[(c[h>>2]|0)+30>>0]|0)|0)==0){b[g>>1]=4;d=b[g>>1]|0;i=f;return d|0}else{b[g>>1]=8;d=b[g>>1]|0;i=f;return d|0}return 0}function JF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+12|0;h=e+8|0;g=e;c[h>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;a=g;d=c[h>>2]|0;if(!((c[a>>2]|0)==0?(c[a+4>>2]|0)==-2147483648:0)){a=g;a=$K(0,0,c[a>>2]|0,c[a+4>>2]|0)|0;c[f>>2]=Qt(d,a,D)|0;a=c[f>>2]|0;i=e;return a|0}a=d;b=c[a+4>>2]|0;if((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>=0){c[f>>2]=1;a=c[f>>2]|0;i=e;return a|0}else{b=g;a=c[h>>2]|0;d=a;b=$K(c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[a>>2]=b;c[a+4>>2]=D;c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}return 0}function KF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+64|0;k=f+56|0;h=f+60|0;m=f+48|0;o=f+40|0;n=f+32|0;j=f+16|0;l=f+8|0;e=f;g=f+24|0;c[h>>2]=a;a=m;c[a>>2]=b;c[a+4>>2]=d;b=c[h>>2]|0;d=c[b+4>>2]|0;a=o;c[a>>2]=c[b>>2];c[a+4>>2]=d;a=o;a=lL(c[a>>2]|0,c[a+4>>2]|0,0,1)|0;d=n;c[d>>2]=a;c[d+4>>2]=D;d=o;d=mL(c[d>>2]|0,c[d+4>>2]|0,0,1)|0;a=j;c[a>>2]=d;c[a+4>>2]=D;a=m;a=lL(c[a>>2]|0,c[a+4>>2]|0,0,1)|0;d=l;c[d>>2]=a;c[d+4>>2]=D;d=m;d=mL(c[d>>2]|0,c[d+4>>2]|0,0,1)|0;a=e;c[a>>2]=d;c[a+4>>2]=D;a=n;d=l;d=(c[d>>2]|0)==0&(c[d+4>>2]|0)==0;do{if((c[a>>2]|0)==0&(c[a+4>>2]|0)==0){if(!d){o=j;a=l;a=nL(c[o>>2]|0,c[o+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;o=g;c[o>>2]=a;c[o+4>>2]=D;break}a=m;o=c[h>>2]|0;b=o;a=nL(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[o>>2]=a;c[o+4>>2]=D;c[k>>2]=0;o=c[k>>2]|0;i=f;return o|0}else{if(d){o=n;a=e;a=nL(c[o>>2]|0,c[o+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;o=g;c[o>>2]=a;c[o+4>>2]=D;break}c[k>>2]=1;o=c[k>>2]|0;i=f;return o|0}}while(0);b=g;d=c[b+4>>2]|0;o=g;a=c[o+4>>2]|0;if((d|0)<-1|(d|0)==-1&(c[b>>2]|0)>>>0<2147483648|((a|0)>0|(a|0)==0&(c[o>>2]|0)>>>0>=2147483648)){c[k>>2]=1;o=c[k>>2]|0;i=f;return o|0}o=g;o=nL(c[o>>2]|0,c[o+4>>2]|0,0,1)|0;a=g;c[a>>2]=o;c[a+4>>2]=D;a=j;o=e;o=nL(c[a>>2]|0,c[a+4>>2]|0,c[o>>2]|0,c[o+4>>2]|0)|0;if((Qt(g,o,D)|0)!=0){c[k>>2]=1;o=c[k>>2]|0;i=f;return o|0}else{b=g;a=c[b+4>>2]|0;o=c[h>>2]|0;c[o>>2]=c[b>>2];c[o+4>>2]=a;c[k>>2]=0;o=c[k>>2]|0;i=f;return o|0}return 0}function LF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;j=e;g=e+4|0;h=e+8|0;f=e+12|0;c[k>>2]=a;c[j>>2]=b;c[g>>2]=d;c[h>>2]=(c[k>>2]|0)+204;a:while(1){if((c[c[h>>2]>>2]|0)==0){break}c[f>>2]=c[c[h>>2]>>2];do{if((c[j>>2]|0)>=0){if((c[c[f>>2]>>2]|0)==(c[j>>2]|0)){if((c[(c[f>>2]|0)+4>>2]|0)>31){break}if((c[g>>2]&1<>2]|0)+4>>2]|0)==0){break}}c[h>>2]=(c[f>>2]|0)+16;continue a}}while(0);if((c[(c[f>>2]|0)+12>>2]|0)!=0){rb[c[(c[f>>2]|0)+12>>2]&31](c[(c[f>>2]|0)+8>>2]|0)}c[c[h>>2]>>2]=c[(c[f>>2]|0)+16>>2];cc(c[c[k>>2]>>2]|0,c[f>>2]|0)}i=e;return}function MF(a){a=a|0;var d=0,f=0,g=0;d=i;i=i+16|0;f=d;c[f>>2]=a;g=Pd(c[f>>2]|0)|0;a=(c[f>>2]|0)+16|0;c[a>>2]=g;c[a+4>>2]=D;b[(c[f>>2]|0)+28>>1]=(e[(c[f>>2]|0)+28>>1]|0)&-16896|4;i=d;return 0}function NF(a){a=a|0;var d=0,f=0,g=0.0;d=i;i=i+16|0;f=d;c[f>>2]=a;g=+Nd(c[f>>2]|0);h[(c[f>>2]|0)+8>>3]=g;b[(c[f>>2]|0)+28>>1]=(e[(c[f>>2]|0)+28>>1]|0)&-16896|8;i=d;return 0}function OF(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;g=d;h=d+4|0;f=d+8|0;k=d+12|0;j=d+16|0;c[g>>2]=b;b=c[c[g>>2]>>2]|0;do{if((a[(c[g>>2]|0)+27>>0]|0)!=0){k=(c[g>>2]|0)+48|0;c[f>>2]=jD(b,0,c[k>>2]|0,c[k+4>>2]|0,0,h)|0;if((c[f>>2]|0)!=0){c[e>>2]=c[f>>2];b=c[e>>2]|0;i=d;return b|0}j=(c[g>>2]|0)+48|0;k=c[j+4>>2]|0;b=(c[g>>2]|0)+56|0;c[b>>2]=c[j>>2];c[b+4>>2]=k;if((c[h>>2]|0)==0){a[(c[g>>2]|0)+26>>0]=1;a[(c[g>>2]|0)+27>>0]=0;c[(c[g>>2]|0)+68>>2]=0;break}c[e>>2]=dq(64453)|0;b=c[e>>2]|0;i=d;return b|0}else{if((b|0)!=0){c[j>>2]=UI(c[c[g>>2]>>2]|0,k)|0;if((c[j>>2]|0)!=0){c[e>>2]=c[j>>2];b=c[e>>2]|0;i=d;return b|0}if((c[k>>2]|0)!=0){c[(c[g>>2]|0)+68>>2]=0;if((c[k>>2]|0)==2){a[(c[g>>2]|0)+25>>0]=1}}}}}while(0);c[e>>2]=0;b=c[e>>2]|0;i=d;return b|0}function PF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=TI(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function QF(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;h=i;i=i+16|0;k=h+8|0;j=h;l=h+4|0;c[k>>2]=f;c[j>>2]=g;if((e[(c[k>>2]|0)+50>>1]|0)!=0){l=c[k>>2]|0;l=l+24|0;l=l+12|0;l=c[l>>2]|0;f=c[j>>2]|0;c[f>>2]=l;i=h;return 0}c[l>>2]=b[(c[k>>2]|0)+84>>1]|0;pD(c[(c[k>>2]|0)+128+(c[l>>2]<<2)>>2]|0,e[(c[k>>2]|0)+86+(c[l>>2]<<1)>>1]|0,(c[k>>2]|0)+24|0);l=(c[k>>2]|0)+80|0;a[l>>0]=d[l>>0]|2;l=c[k>>2]|0;l=l+24|0;l=l+12|0;l=c[l>>2]|0;f=c[j>>2]|0;c[f>>2]=l;i=h;return 0}function RF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=TI(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function SF(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=i;i=i+32|0;p=m+28|0;o=m;k=m+4|0;n=m+8|0;j=m+12|0;r=m+16|0;q=m+20|0;l=m+24|0;c[p>>2]=d;c[o>>2]=e;c[k>>2]=f;c[n>>2]=g;c[j>>2]=h;c[q>>2]=0;c[l>>2]=0;g=c[p>>2]|0;if((c[n>>2]|0)!=0){c[r>>2]=PF(g,q)|0}else{c[r>>2]=RF(g,q)|0}g=c[j>>2]|0;if(((c[o>>2]|0)+(c[k>>2]|0)|0)>>>0<=(c[q>>2]|0)>>>0){Gd(g);c[(c[j>>2]|0)+4>>2]=(c[r>>2]|0)+(c[o>>2]|0);b[(c[j>>2]|0)+28>>1]=4112;c[(c[j>>2]|0)+24>>2]=c[k>>2];d=c[l>>2]|0;i=m;return d|0}d=ue(g,(c[k>>2]|0)+2|0,0)|0;c[l>>2]=d;if(0!=(d|0)){d=c[l>>2]|0;i=m;return d|0}p=c[p>>2]|0;r=c[o>>2]|0;q=c[k>>2]|0;o=c[(c[j>>2]|0)+4>>2]|0;if((c[n>>2]|0)!=0){c[l>>2]=lF(p,r,q,o)|0}else{c[l>>2]=vf(p,r,q,o)|0}if((c[l>>2]|0)==0){a[(c[(c[j>>2]|0)+4>>2]|0)+(c[k>>2]|0)>>0]=0;a[(c[(c[j>>2]|0)+4>>2]|0)+((c[k>>2]|0)+1)>>0]=0;b[(c[j>>2]|0)+28>>1]=528;c[(c[j>>2]|0)+24>>2]=c[k>>2];d=c[l>>2]|0;i=m;return d|0}else{Gd(c[j>>2]|0);d=c[l>>2]|0;i=m;return d|0}return 0}function TF(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+48|0;d=f+32|0;k=f+28|0;j=f+24|0;m=f+16|0;l=f+20|0;g=f;h=f+8|0;c[k>>2]=a;c[j>>2]=b;c[m>>2]=e[(c[k>>2]|0)+28>>1]|0;if((c[m>>2]&1|0)!=0){c[d>>2]=0;a=c[d>>2]|0;i=f;return a|0}if((c[m>>2]&4|0)==0){if((c[m>>2]&8|0)!=0){c[d>>2]=7;a=c[d>>2]|0;i=f;return a|0}c[l>>2]=c[(c[k>>2]|0)+24>>2];if((c[m>>2]&16384|0)!=0){c[l>>2]=(c[l>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)}c[d>>2]=(c[l>>2]<<1)+12+((c[m>>2]&2|0)!=0&1);a=c[d>>2]|0;i=f;return a|0}a=(c[k>>2]|0)+16|0;k=c[a+4>>2]|0;b=g;c[b>>2]=c[a>>2];c[b+4>>2]=k;b=g;k=c[b>>2]|0;b=c[b+4>>2]|0;do{if((c[g+4>>2]|0)<0){if(!((b|0)<-32768|(b|0)==-32768&k>>>0<1)){m=g;m=$K(0,0,c[m>>2]|0,c[m+4>>2]|0)|0;a=h;c[a>>2]=m;c[a+4>>2]=D;break}c[d>>2]=6;a=c[d>>2]|0;i=f;return a|0}else{a=h;c[a>>2]=k;c[a+4>>2]=b}}while(0);a=h;m=c[a+4>>2]|0;if(m>>>0<0|(m|0)==0&(c[a>>2]|0)>>>0<=127){a=g;if(0==(c[a+4>>2]|0)?(c[g>>2]&1|0)==(c[a>>2]|0):0){if((c[j>>2]|0)>=4){g=8+(c[h>>2]|0)|0}else{g=1}}else{g=1}c[d>>2]=g;a=c[d>>2]|0;i=f;return a|0}a=h;m=c[a+4>>2]|0;if(m>>>0<0|(m|0)==0&(c[a>>2]|0)>>>0<=32767){c[d>>2]=2;a=c[d>>2]|0;i=f;return a|0}a=h;m=c[a+4>>2]|0;if(m>>>0<0|(m|0)==0&(c[a>>2]|0)>>>0<=8388607){c[d>>2]=3;a=c[d>>2]|0;i=f;return a|0}a=h;m=c[a+4>>2]|0;if(m>>>0<0|(m|0)==0&(c[a>>2]|0)>>>0<=2147483647){c[d>>2]=4;a=c[d>>2]|0;i=f;return a|0}a=h;m=c[a+4>>2]|0;if(m>>>0<32767|(m|0)==32767&(c[a>>2]|0)>>>0<=4294967295){c[d>>2]=5;a=c[d>>2]|0;i=f;return a|0}else{c[d>>2]=6;a=c[d>>2]|0;i=f;return a|0}return 0}function UF(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[g>>2]=b;c[h>>2]=d;if((c[h>>2]&-16384|0)==0){a[c[g>>2]>>0]=(c[h>>2]|0)>>>7|128;a[(c[g>>2]|0)+1>>0]=c[h>>2]&127;c[f>>2]=2;b=c[f>>2]|0;i=e;return b|0}else{c[f>>2]=lI(c[g>>2]|0,c[h>>2]|0,0)|0;b=c[f>>2]|0;i=e;return b|0}return 0}function VF(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;g=l+28|0;k=l+20|0;j=l+8|0;n=l+12|0;h=l+16|0;m=l;f=l+24|0;c[k>>2]=b;c[j>>2]=d;c[n>>2]=e;e=c[n>>2]|0;if(!((c[n>>2]|0)>>>0<=7&(c[n>>2]|0)>>>0>0)){if(e>>>0>=12){c[h>>2]=c[(c[j>>2]|0)+24>>2];fL(c[k>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[h>>2]|0)|0;c[g>>2]=c[h>>2];b=c[g>>2]|0;i=l;return b|0}else{c[g>>2]=0;b=c[g>>2]|0;i=l;return b|0}}if((e|0)==7){b=(c[j>>2]|0)+8|0;c[m+0>>2]=c[b+0>>2];c[m+4>>2]=c[b+4>>2]}else{e=(c[j>>2]|0)+16|0;d=c[e+4>>2]|0;b=m;c[b>>2]=c[e>>2];c[b+4>>2]=d}b=yD(c[n>>2]|0)|0;c[f>>2]=b;c[h>>2]=b;while(1){b=c[f>>2]|0;c[f>>2]=b+ -1;if((b|0)==0){break}a[(c[k>>2]|0)+(c[f>>2]|0)>>0]=c[m>>2]&255;d=m;d=eL(c[d>>2]|0,c[d+4>>2]|0,8)|0;b=m;c[b>>2]=d;c[b+4>>2]=D}c[g>>2]=c[h>>2];b=c[g>>2]|0;i=l;return b|0}function WF(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+32|0;k=o+28|0;m=o+12|0;l=o+8|0;q=o;p=o+16|0;n=o+20|0;h=o+24|0;c[m>>2]=f;c[l>>2]=g;f=q;c[f>>2]=0;c[f+4>>2]=0;if((c[(c[m>>2]|0)+68>>2]|0)==0){f=c[l>>2]|0;c[f>>2]=0;c[f+4>>2]=0;c[k>>2]=0;f=c[k>>2]|0;i=o;return f|0}c[p>>2]=lD(c[m>>2]|0)|0;a:while(1){if((c[p>>2]|0)!=0){j=16;break}c[h>>2]=c[(c[m>>2]|0)+128+(b[(c[m>>2]|0)+84>>1]<<2)>>2];if((d[(c[h>>2]|0)+3>>0]|0)!=0){j=7}else{if((a[(c[h>>2]|0)+2>>0]|0)==0){j=7}}if((j|0)==7){j=0;g=q;g=dL(c[g>>2]|0,c[g+4>>2]|0,e[(c[h>>2]|0)+16>>1]|0,0)|0;f=q;c[f>>2]=g;c[f+4>>2]=D}if((a[(c[h>>2]|0)+3>>0]|0)!=0){do{if((b[(c[m>>2]|0)+84>>1]|0)==0){j=10;break a}bD(c[m>>2]|0)}while((e[(c[m>>2]|0)+86+(b[(c[m>>2]|0)+84>>1]<<1)>>1]|0)>=(e[(c[(c[m>>2]|0)+128+(b[(c[m>>2]|0)+84>>1]<<2)>>2]|0)+16>>1]|0));f=(c[m>>2]|0)+86+(b[(c[m>>2]|0)+84>>1]<<1)|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;c[h>>2]=c[(c[m>>2]|0)+128+(b[(c[m>>2]|0)+84>>1]<<2)>>2]}c[n>>2]=e[(c[m>>2]|0)+86+(b[(c[m>>2]|0)+84>>1]<<1)>>1]|0;f=c[m>>2]|0;g=c[h>>2]|0;if((c[n>>2]|0)==(e[(c[h>>2]|0)+16>>1]|0)){c[p>>2]=$C(f,zo((c[(c[h>>2]|0)+56>>2]|0)+((d[g+5>>0]|0)+8)|0)|0)|0;continue}else{c[p>>2]=$C(f,zo((c[g+56>>2]|0)+(e[(c[h>>2]|0)+18>>1]&(d[(c[(c[h>>2]|0)+64>>2]|0)+(c[n>>2]<<1)>>0]<<8|d[(c[(c[h>>2]|0)+64>>2]|0)+(c[n>>2]<<1)+1>>0]))|0)|0)|0;continue}}if((j|0)==10){g=c[q+4>>2]|0;f=c[l>>2]|0;c[f>>2]=c[q>>2];c[f+4>>2]=g;c[k>>2]=0;f=c[k>>2]|0;i=o;return f|0}else if((j|0)==16){c[k>>2]=c[p>>2];f=c[k>>2]|0;i=o;return f|0}return 0}function XF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;m=f+28|0;g=f;k=f+4|0;e=f+8|0;n=f+12|0;l=f+16|0;j=f+20|0;h=f+24|0;c[m>>2]=a;c[g>>2]=b;c[k>>2]=d;c[e>>2]=0;if((c[(c[m>>2]|0)+320>>2]|0)==0){a=c[e>>2]|0;i=f;return a|0}c[n>>2]=0;while(1){if((c[e>>2]|0)!=0){g=15;break}if((c[n>>2]|0)>=(c[(c[m>>2]|0)+296>>2]|0)){g=15;break}c[l>>2]=c[(c[(c[m>>2]|0)+320>>2]|0)+(c[n>>2]<<2)>>2];c[j>>2]=c[c[(c[l>>2]|0)+4>>2]>>2];if((c[(c[l>>2]|0)+8>>2]|0)!=0){if((c[c[j>>2]>>2]|0)>=2){d=c[g>>2]|0;if((d|0)==2){c[h>>2]=c[(c[j>>2]|0)+88>>2]}else if((d|0)==0){c[h>>2]=c[(c[j>>2]|0)+80>>2];c[(c[l>>2]|0)+20>>2]=(c[k>>2]|0)+1}else{c[h>>2]=c[(c[j>>2]|0)+84>>2]}if((c[h>>2]|0)!=0){if((c[(c[l>>2]|0)+20>>2]|0)>(c[k>>2]|0)){c[e>>2]=zb[c[h>>2]&127](c[(c[l>>2]|0)+8>>2]|0,c[k>>2]|0)|0}}}}c[n>>2]=(c[n>>2]|0)+1}if((g|0)==15){a=c[e>>2]|0;i=f;return a|0}return 0}function YF(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;h=f;g=f+4|0;j=f+8|0;c[k>>2]=d;c[h>>2]=e;if((c[k>>2]|0)==0){i=f;return}Uc(c[k>>2]|0);c[g>>2]=c[(c[(c[k>>2]|0)+4>>2]|0)+8>>2];while(1){if((c[g>>2]|0)==0){break}Fr(c[g>>2]|0);a[(c[g>>2]|0)+81>>0]=4;c[(c[g>>2]|0)+76>>2]=c[h>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>(b[(c[g>>2]|0)+84>>1]|0)){break}Gr(c[(c[g>>2]|0)+128+(c[j>>2]<<2)>>2]|0);c[(c[g>>2]|0)+128+(c[j>>2]<<2)>>2]=0;c[j>>2]=(c[j>>2]|0)+1}c[g>>2]=c[(c[g>>2]|0)+8>>2]}i=f;return}function ZF(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;j=g+16|0;l=g;m=g+4|0;h=g+8|0;k=g+12|0;c[j>>2]=a;c[l>>2]=e;c[m>>2]=f;c[h>>2]=0;if((c[j>>2]|0)==0){a=c[h>>2]|0;i=g;return a|0}if((d[(c[j>>2]|0)+8>>0]|0|0)!=2){a=c[h>>2]|0;i=g;return a|0}c[k>>2]=c[(c[j>>2]|0)+4>>2];Uc(c[j>>2]|0);c[h>>2]=lp(c[c[k>>2]>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if((c[h>>2]|0)!=0){a=c[h>>2]|0;i=g;return a|0}if((c[m>>2]|0)<0){if((b[(c[k>>2]|0)+22>>1]&8|0)!=0){c[(c[k>>2]|0)+44>>2]=0}}c[h>>2]=SI(c[k>>2]|0)|0;a=zo((c[(c[(c[k>>2]|0)+12>>2]|0)+56>>2]|0)+28|0)|0;c[(c[k>>2]|0)+44>>2]=a;a=c[h>>2]|0;i=g;return a|0}function _F(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+12|0;f=e;d=e+4|0;g=e+8|0;c[h>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[h>>2]|0)+4>>2];Uc(c[h>>2]|0);c[d>>2]=QI(c[c[g>>2]>>2]|0,c[f>>2]|0)|0;i=e;return c[d>>2]|0}function $F(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+32|0;q=j+28|0;r=j;l=j+4|0;k=j+8|0;m=j+12|0;n=j+16|0;p=j+20|0;o=j+24|0;c[q>>2]=d;c[r>>2]=e;c[l>>2]=f;c[k>>2]=g;c[m>>2]=h;c[n>>2]=(c[(c[q>>2]|0)+8>>2]|0)+(((c[(c[q>>2]|0)+28>>2]|0)-(c[r>>2]|0)|0)*40|0);c[o>>2]=0;g=96+(c[l>>2]<<3)|0;if((c[m>>2]|0)!=0){h=OI()|0}else{h=0}c[p>>2]=g+h;if((c[(c[(c[q>>2]|0)+56>>2]|0)+(c[r>>2]<<2)>>2]|0)!=0){eG(c[q>>2]|0,c[(c[(c[q>>2]|0)+56>>2]|0)+(c[r>>2]<<2)>>2]|0);c[(c[(c[q>>2]|0)+56>>2]|0)+(c[r>>2]<<2)>>2]=0}if(0!=(ue(c[n>>2]|0,c[p>>2]|0,0)|0)){d=c[o>>2]|0;i=j;return d|0}p=c[(c[n>>2]|0)+4>>2]|0;c[o>>2]=p;c[(c[(c[q>>2]|0)+56>>2]|0)+(c[r>>2]<<2)>>2]=p;q=(c[o>>2]|0)+0|0;p=q+96|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(p|0));a[(c[o>>2]|0)+24>>0]=c[k>>2];b[(c[o>>2]|0)+20>>1]=c[l>>2];if((c[m>>2]|0)==0){d=c[o>>2]|0;i=j;return d|0}c[c[o>>2]>>2]=(c[(c[n>>2]|0)+4>>2]|0)+(96+(c[l>>2]<<3));PI(c[c[o>>2]>>2]|0);d=c[o>>2]|0;i=j;return d|0}function aG(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;n=h+20|0;m=h;l=h+4|0;k=h+8|0;j=h+12|0;g=h+16|0;c[n>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;Uc(c[n>>2]|0);c[g>>2]=NI(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;i=h;return c[g>>2]|0}function bG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[(c[f>>2]|0)+82>>0]=c[g>>2];i=e;return}function cG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+12|0;h=f;g=f+4|0;e=f+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;Uc(c[j>>2]|0);c[e>>2]=MI(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return c[e>>2]|0}function dG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+24|0;f=d;k=d+4|0;g=d+8|0;j=d+12|0;h=d+16|0;c[f>>2]=a;c[k>>2]=b;a=ve(c[f>>2]|0,56)|0;c[h>>2]=a;c[(c[k>>2]|0)+64>>2]=a;if((c[h>>2]|0)==0){c[e>>2]=7;a=c[e>>2]|0;i=d;return a|0}a=hD(c[(c[k>>2]|0)+8>>2]|0,0,0,d+20|0)|0;c[(c[h>>2]|0)+52>>2]=a;if((c[(c[h>>2]|0)+52>>2]|0)==0){c[e>>2]=7;a=c[e>>2]|0;i=d;return a|0}if((po(c[f>>2]|0)|0)==0){c[g>>2]=Zc(c[(c[(c[f>>2]|0)+16>>2]|0)+4>>2]|0)|0;c[(c[h>>2]|0)+28>>2]=(c[g>>2]|0)*10;a=c[(c[(c[(c[f>>2]|0)+16>>2]|0)+12>>2]|0)+80>>2]|0;c[j>>2]=a;c[j>>2]=(c[j>>2]|0)<10?10:a;a=$(c[j>>2]|0,c[g>>2]|0)|0;c[(c[h>>2]|0)+32>>2]=a}c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}function eG(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;f=e;g=e+4|0;h=e+8|0;c[j>>2]=a;c[f>>2]=d;if((c[f>>2]|0)==0){i=e;return}LI(c[c[j>>2]>>2]|0,c[f>>2]|0);d=c[f>>2]|0;if((c[(c[f>>2]|0)+4>>2]|0)!=0){zr(c[d+4>>2]|0)|0}else{if((c[d>>2]|0)!=0){Dr(c[c[f>>2]>>2]|0)|0}}if((c[(c[f>>2]|0)+32>>2]|0)==0){i=e;return}c[g>>2]=c[(c[f>>2]|0)+32>>2];c[h>>2]=c[c[c[g>>2]>>2]>>2];a=(c[j>>2]|0)+88|0;b[a>>1]=b[a>>1]&-13|4;ub[c[(c[h>>2]|0)+28>>2]&63](c[g>>2]|0)|0;a=(c[j>>2]|0)+88|0;b[a>>1]=b[a>>1]&-13;i=e;return}function fG(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return 1!=(d[(c[b>>2]|0)+81>>0]|0|0)|0}function gG(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;j=f;k=f+4|0;h=f+8|0;c[j>>2]=b;c[k>>2]=e;if(1==(d[(c[j>>2]|0)+81>>0]|0|0)){if((a[(c[j>>2]|0)+80>>0]&8|0)!=0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}}c[h>>2]=lD(c[j>>2]|0)|0;do{if((c[h>>2]|0)==0){e=c[k>>2]|0;if(0==(d[(c[j>>2]|0)+81>>0]|0|0)){c[e>>2]=1;break}c[e>>2]=0;c[h>>2]=aD(c[j>>2]|0)|0;j=(c[j>>2]|0)+80|0;e=d[j>>0]|0;if((c[h>>2]|0)==0){a[j>>0]=e|8;break}else{a[j>>0]=e&-9;break}}}while(0);c[g>>2]=c[h>>2];b=c[g>>2]|0;i=f;return b|0}function hG(f,g,h,j,k,l,m,n,o){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0;C=i;i=i+80|0;q=C+12|0;r=C+72|0;w=C+68|0;t=C;x=C+64|0;y=C+60|0;z=C+56|0;p=C+52|0;J=C+48|0;s=C+44|0;E=C+28|0;A=C+8|0;F=C+16|0;u=C+24|0;H=C+20|0;B=C+32|0;G=C+36|0;v=C+40|0;I=C+76|0;c[r>>2]=f;c[w>>2]=g;f=t;c[f>>2]=h;c[f+4>>2]=j;c[x>>2]=k;c[y>>2]=l;c[z>>2]=m;c[p>>2]=n;c[J>>2]=o;c[E>>2]=c[J>>2];c[A>>2]=0;c[H>>2]=c[c[r>>2]>>2];c[B>>2]=c[(c[H>>2]|0)+4>>2];c[v>>2]=0;if((d[(c[r>>2]|0)+81>>0]|0)==4){c[q>>2]=c[(c[r>>2]|0)+76>>2];J=c[q>>2]|0;i=C;return J|0}c[s>>2]=hF(c[B>>2]|0,c[(c[r>>2]|0)+68>>2]|0,c[r>>2]|0)|0;if((c[s>>2]|0)!=0){c[q>>2]=c[s>>2];J=c[q>>2]|0;i=C;return J|0}if((c[(c[r>>2]|0)+16>>2]|0)==0){J=t;UH(c[H>>2]|0,c[J>>2]|0,c[J+4>>2]|0,0);if((a[(c[r>>2]|0)+80>>0]&2|0)!=0){J=t;f=c[J+4>>2]|0;if((f|0)>0|(f|0)==0&(c[J>>2]|0)>>>0>0){J=(c[r>>2]|0)+24|0;g=c[J>>2]|0;J=c[J+4>>2]|0;f=t;f=$K(c[f>>2]|0,c[f+4>>2]|0,1,0)|0;if((g|0)==(f|0)&(J|0)==(D|0)){c[E>>2]=-1}}}}if((c[E>>2]|0)==0){J=t;c[s>>2]=gD(c[r>>2]|0,c[w>>2]|0,c[J>>2]|0,c[J+4>>2]|0,c[p>>2]|0,E)|0;if((c[s>>2]|0)!=0){c[q>>2]=c[s>>2];J=c[q>>2]|0;i=C;return J|0}}c[u>>2]=c[(c[r>>2]|0)+128+(b[(c[r>>2]|0)+84>>1]<<2)>>2];xI(c[B>>2]|0);c[v>>2]=c[(c[B>>2]|0)+80>>2];if((c[v>>2]|0)==0){c[q>>2]=7;J=c[q>>2]|0;i=C;return J|0}J=t;c[s>>2]=KI(c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,c[J>>2]|0,c[J+4>>2]|0,c[x>>2]|0,c[y>>2]|0,c[z>>2]|0,A)|0;do{if((c[s>>2]|0)==0){c[F>>2]=e[(c[r>>2]|0)+86+(b[(c[r>>2]|0)+84>>1]<<1)>>1]|0;if((c[E>>2]|0)==0){c[s>>2]=ld(c[(c[u>>2]|0)+68>>2]|0)|0;if((c[s>>2]|0)!=0){break}c[G>>2]=(c[(c[u>>2]|0)+56>>2]|0)+(e[(c[u>>2]|0)+18>>1]&(d[(c[(c[u>>2]|0)+64>>2]|0)+(c[F>>2]<<1)>>0]<<8|d[(c[(c[u>>2]|0)+64>>2]|0)+(c[F>>2]<<1)+1>>0]));if((a[(c[u>>2]|0)+3>>0]|0)==0){J=c[v>>2]|0;f=c[G>>2]|0;a[J+0>>0]=a[f+0>>0]|0;a[J+1>>0]=a[f+1>>0]|0;a[J+2>>0]=a[f+2>>0]|0;a[J+3>>0]=a[f+3>>0]|0}b[I>>1]=QH(c[u>>2]|0,c[G>>2]|0)|0;c[s>>2]=WH(c[u>>2]|0,c[G>>2]|0)|0;wI(c[u>>2]|0,c[F>>2]|0,e[I>>1]|0,s);if((c[s>>2]|0)!=0){break}}else{if((c[E>>2]|0)<0){if((e[(c[u>>2]|0)+16>>1]|0)>0){f=(c[r>>2]|0)+86+(b[(c[r>>2]|0)+84>>1]<<1)|0;J=(b[f>>1]|0)+1<<16>>16;b[f>>1]=J;c[F>>2]=J&65535}}}yI(c[u>>2]|0,c[F>>2]|0,c[v>>2]|0,c[A>>2]|0,0,0,s);b[(c[r>>2]|0)+50>>1]=0;if((c[s>>2]|0)==0){if((d[(c[u>>2]|0)+1>>0]|0)!=0){J=(c[r>>2]|0)+80|0;a[J>>0]=d[J>>0]&-3;c[s>>2]=zI(c[r>>2]|0)|0;a[(c[(c[r>>2]|0)+128+(b[(c[r>>2]|0)+84>>1]<<2)>>2]|0)+1>>0]=0;a[(c[r>>2]|0)+81>>0]=0}}}}while(0);c[q>>2]=c[s>>2];J=c[q>>2]|0;i=C;return J|0}function iG(f){f=f|0;var g=0,h=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;h=i;i=i+64|0;g=h+52|0;j=h+48|0;m=h+44|0;p=h+40|0;k=h+36|0;o=h+32|0;s=h+28|0;n=h+24|0;l=h+16|0;q=h+12|0;r=h+8|0;u=h+4|0;t=h;v=h+20|0;c[j>>2]=f;c[m>>2]=c[c[j>>2]>>2];c[p>>2]=c[(c[m>>2]|0)+4>>2];if((e[(c[j>>2]|0)+86+(b[(c[j>>2]|0)+84>>1]<<1)>>1]|0)<(e[(c[(c[j>>2]|0)+128+(b[(c[j>>2]|0)+84>>1]<<2)>>2]|0)+16>>1]|0)){if((d[(c[j>>2]|0)+81>>0]|0)==1){c[l>>2]=b[(c[j>>2]|0)+84>>1]|0;c[n>>2]=e[(c[j>>2]|0)+86+(c[l>>2]<<1)>>1]|0;c[o>>2]=c[(c[j>>2]|0)+128+(c[l>>2]<<2)>>2];c[s>>2]=(c[(c[o>>2]|0)+56>>2]|0)+(e[(c[o>>2]|0)+18>>1]&(d[(c[(c[o>>2]|0)+64>>2]|0)+(c[n>>2]<<1)>>0]<<8|d[(c[(c[o>>2]|0)+64>>2]|0)+(c[n>>2]<<1)+1>>0]));if((a[(c[o>>2]|0)+3>>0]|0)==0){c[q>>2]=0;c[k>>2]=ZC(c[j>>2]|0,q)|0;if((c[k>>2]|0)!=0){c[g>>2]=c[k>>2];v=c[g>>2]|0;i=h;return v|0}}c[k>>2]=hF(c[p>>2]|0,c[(c[j>>2]|0)+68>>2]|0,c[j>>2]|0)|0;if((c[k>>2]|0)!=0){c[g>>2]=c[k>>2];v=c[g>>2]|0;i=h;return v|0}if((c[(c[j>>2]|0)+16>>2]|0)==0){q=(c[j>>2]|0)+24|0;UH(c[m>>2]|0,c[q>>2]|0,c[q+4>>2]|0,0)}c[k>>2]=ld(c[(c[o>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){c[g>>2]=c[k>>2];v=c[g>>2]|0;i=h;return v|0}c[k>>2]=WH(c[o>>2]|0,c[s>>2]|0)|0;f=c[o>>2]|0;q=c[n>>2]|0;wI(f,q,(QH(c[o>>2]|0,c[s>>2]|0)|0)&65535,k);if((c[k>>2]|0)!=0){c[g>>2]=c[k>>2];v=c[g>>2]|0;i=h;return v|0}if((a[(c[o>>2]|0)+3>>0]|0)==0){c[r>>2]=c[(c[j>>2]|0)+128+(b[(c[j>>2]|0)+84>>1]<<2)>>2];c[t>>2]=c[(c[(c[j>>2]|0)+128+((c[l>>2]|0)+1<<2)>>2]|0)+72>>2];c[s>>2]=(c[(c[r>>2]|0)+56>>2]|0)+(e[(c[r>>2]|0)+18>>1]&(d[(c[(c[r>>2]|0)+64>>2]|0)+((e[(c[r>>2]|0)+16>>1]|0)-1<<1)>>0]<<8|d[(c[(c[r>>2]|0)+64>>2]|0)+((e[(c[r>>2]|0)+16>>1]|0)-1<<1)+1>>0]));c[u>>2]=(QH(c[r>>2]|0,c[s>>2]|0)|0)&65535;xI(c[p>>2]|0);c[v>>2]=c[(c[p>>2]|0)+80>>2];c[k>>2]=ld(c[(c[r>>2]|0)+68>>2]|0)|0;yI(c[o>>2]|0,c[n>>2]|0,(c[s>>2]|0)+ -4|0,(c[u>>2]|0)+4|0,c[v>>2]|0,c[t>>2]|0,k);wI(c[r>>2]|0,(e[(c[r>>2]|0)+16>>1]|0)-1|0,c[u>>2]|0,k);if((c[k>>2]|0)!=0){c[g>>2]=c[k>>2];v=c[g>>2]|0;i=h;return v|0}}c[k>>2]=zI(c[j>>2]|0)|0;if((c[k>>2]|0)==0){if((b[(c[j>>2]|0)+84>>1]|0)>(c[l>>2]|0)){while(1){m=c[j>>2]|0;if((b[(c[j>>2]|0)+84>>1]|0)<=(c[l>>2]|0)){break}u=m+84|0;v=b[u>>1]|0;b[u>>1]=v+ -1<<16>>16;Gr(c[(c[j>>2]|0)+128+(v<<16>>16<<2)>>2]|0)}c[k>>2]=zI(m)|0}}if((c[k>>2]|0)==0){lD(c[j>>2]|0)|0}c[g>>2]=c[k>>2];v=c[g>>2]|0;i=h;return v|0}}c[g>>2]=1;v=c[g>>2]|0;i=h;return v|0}function jG(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;m=f+24|0;k=f;l=f+4|0;g=f+8|0;n=f+12|0;j=f+16|0;h=f+20|0;c[m>>2]=a;c[k>>2]=b;c[l>>2]=d;c[g>>2]=e;c[n>>2]=c[(c[m>>2]|0)+64>>2];c[j>>2]=vI(c[n>>2]|0,h)|0;oI(c[m>>2]|0,c[l>>2]|0,c[(c[k>>2]|0)+4>>2]|0,c[(c[k>>2]|0)+24>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0);i=f;return 0}function kG(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;m=f;k=f+4|0;l=f+8|0;j=f+12|0;h=f+16|0;c[m>>2]=a;c[k>>2]=d;c[l>>2]=c[(c[m>>2]|0)+64>>2];c[j>>2]=vI(c[l>>2]|0,h)|0;if((ue(c[k>>2]|0,c[h>>2]|0,0)|0)!=0){c[g>>2]=7;m=c[g>>2]|0;i=f;return m|0}else{c[(c[k>>2]|0)+24>>2]=c[h>>2];b[(c[k>>2]|0)+28>>1]=(e[(c[k>>2]|0)+28>>1]|0)&-16896|16;fL(c[(c[k>>2]|0)+4>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;c[g>>2]=0;m=c[g>>2]|0;i=f;return m|0}return 0}function lG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;e=d;g=d+4|0;c[f>>2]=a;c[e>>2]=b;c[g>>2]=c[c[f>>2]>>2];cc(c[g>>2]|0,c[(c[f>>2]|0)+44>>2]|0);a=pe(c[g>>2]|0,c[(c[e>>2]|0)+8>>2]|0)|0;c[(c[f>>2]|0)+44>>2]=a;oc(c[(c[e>>2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>>2]=0;i=d;return}function mG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=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;q=i;i=i+128|0;o=q+112|0;p=q+108|0;g=q+104|0;h=q+100|0;j=q+96|0;k=q+92|0;l=q+88|0;e=q;x=q+84|0;w=q+80|0;v=q+56|0;n=q+64|0;t=q+60|0;s=q+16|0;f=q+8|0;r=q+68|0;u=q+72|0;m=q+76|0;c[p>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[(c[g>>2]|0)+64>>2];c[l>>2]=0;a=e;c[a>>2]=0;c[a+4>>2]=0;c[v>>2]=2;if((c[(c[j>>2]|0)+24>>2]|0)==0){c[c[h>>2]>>2]=((c[(c[j>>2]|0)+48>>2]|0)!=0^1)&1;c[o>>2]=fI(c[g>>2]|0)|0;a=c[o>>2]|0;i=q;return a|0}c[k>>2]=eI(c[p>>2]|0,c[g>>2]|0)|0;if((c[k>>2]|0)!=0){c[o>>2]=c[k>>2];a=c[o>>2]|0;i=q;return a|0}a=c[(c[j>>2]|0)+24>>2]|0;c[x>>2]=a;c[x>>2]=(c[x>>2]|0)>16?16:a;while(1){d=c[v>>2]|0;if((c[v>>2]|0)>=(c[x>>2]|0)){break}c[v>>2]=(c[v>>2]|0)+d}c[w>>2]=d*52;a=ve(c[p>>2]|0,c[w>>2]|0)|0;c[(c[j>>2]|0)+36>>2]=a;if((c[(c[j>>2]|0)+36>>2]|0)==0){c[o>>2]=7;a=c[o>>2]|0;i=q;return a|0}c[(c[j>>2]|0)+40>>2]=(c[(c[j>>2]|0)+36>>2]|0)+((c[v>>2]|0)*48|0);c[(c[j>>2]|0)+20>>2]=c[v>>2];do{c[n>>2]=0;while(1){if((c[k>>2]|0)!=0){break}if((c[n>>2]<<4|0)>=(c[(c[j>>2]|0)+24>>2]|0)){break}w=s+0|0;v=w+40|0;do{c[w>>2]=0;w=w+4|0}while((w|0)<(v|0));c[k>>2]=sI(c[p>>2]|0,c[g>>2]|0,f)|0;if((c[k>>2]|0)!=0){break}if((c[(c[j>>2]|0)+24>>2]|0)<=16){break}if((c[l>>2]|0)==0){c[k>>2]=gI(c[p>>2]|0,l)|0}if((c[k>>2]|0)==0){c[r>>2]=0;a=e;hI(c[p>>2]|0,c[l>>2]|0,s,c[a>>2]|0,c[a+4>>2]|0);a=f;iI(s,c[a>>2]|0,c[a+4>>2]|0);while(1){if((c[k>>2]|0)!=0){break}if((c[r>>2]|0)!=0){break}c[u>>2]=(c[(c[j>>2]|0)+36>>2]|0)+((c[(c[(c[j>>2]|0)+40>>2]|0)+4>>2]|0)*48|0);a=c[(c[u>>2]|0)+20>>2]|0;iI(s,a,((a|0)<0)<<31>>31);jI(s,c[(c[u>>2]|0)+32>>2]|0,c[(c[u>>2]|0)+20>>2]|0);c[k>>2]=oG(c[p>>2]|0,c[g>>2]|0,r)|0}c[t>>2]=kI(c[p>>2]|0,s,e)|0;if((c[k>>2]|0)==0){c[k>>2]=c[t>>2]}}c[n>>2]=(c[n>>2]|0)+1}if((c[(c[j>>2]|0)+24>>2]|0)<=16){break}c[m>>2]=c[(c[j>>2]|0)+44>>2];c[(c[j>>2]|0)+24>>2]=c[n>>2];c[(c[j>>2]|0)+44>>2]=c[l>>2];c[l>>2]=c[m>>2];d=e;b=c[d+4>>2]|0;a=c[j>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;a=(c[j>>2]|0)+8|0;c[a>>2]=0;c[a+4>>2]=0;a=e;c[a>>2]=0;c[a+4>>2]=0}while((c[k>>2]|0)==0);if((c[l>>2]|0)!=0){SH(c[l>>2]|0)|0}c[c[h>>2]>>2]=(c[(c[(c[j>>2]|0)+36>>2]|0)+((c[(c[(c[j>>2]|0)+40>>2]|0)+4>>2]|0)*48|0)+24>>2]|0)==0&1;c[o>>2]=c[k>>2];a=c[o>>2]|0;i=q;return a|0}function nG(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;g=f+8|0;h=f;e=f+4|0;c[g>>2]=a;c[h>>2]=b;c[e>>2]=lD(c[g>>2]|0)|0;do{if((c[e>>2]|0)==0){b=c[h>>2]|0;if((d[(c[g>>2]|0)+81>>0]|0|0)==0){c[b>>2]=1;break}else{c[b>>2]=0;c[e>>2]=DD(c[g>>2]|0)|0;break}}}while(0);i=f;return c[e>>2]|0}function oG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;p=n+44|0;f=n+40|0;g=n+36|0;h=n+32|0;l=n+28|0;r=n+24|0;j=n+20|0;e=n+12|0;k=n+8|0;o=n+4|0;m=n;q=n+16|0;c[p>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[f>>2]|0)+64>>2];d=c[h>>2]|0;if((c[(c[h>>2]|0)+40>>2]|0)==0){c[q>>2]=c[d+48>>2];c[(c[h>>2]|0)+48>>2]=c[(c[q>>2]|0)+8>>2];c[(c[q>>2]|0)+8>>2]=0;TH(c[p>>2]|0,c[q>>2]|0);c[c[g>>2]>>2]=((c[(c[h>>2]|0)+48>>2]|0)!=0^1)&1;c[l>>2]=0;a=c[l>>2]|0;i=n;return a|0}c[r>>2]=c[(c[d+40>>2]|0)+4>>2];c[l>>2]=pI(c[p>>2]|0,(c[(c[h>>2]|0)+36>>2]|0)+((c[r>>2]|0)*48|0)|0)|0;if((c[l>>2]|0)!=0){a=c[l>>2]|0;i=n;return a|0}c[e>>2]=(c[(c[h>>2]|0)+36>>2]|0)+((c[r>>2]&65534)*48|0);c[k>>2]=(c[(c[h>>2]|0)+36>>2]|0)+((c[r>>2]|1)*48|0);c[o>>2]=c[(c[k>>2]|0)+32>>2];c[j>>2]=((c[(c[h>>2]|0)+20>>2]|0)+(c[r>>2]|0)|0)/2|0;while(1){if((c[j>>2]|0)<=0){break}do{if((c[(c[e>>2]|0)+24>>2]|0)==0){c[m>>2]=1}else{if((c[(c[k>>2]|0)+24>>2]|0)==0){c[m>>2]=-1;break}else{oI(c[f>>2]|0,0,c[(c[e>>2]|0)+32>>2]|0,c[(c[e>>2]|0)+20>>2]|0,c[o>>2]|0,c[(c[k>>2]|0)+20>>2]|0,m);break}}}while(0);p=c[e>>2]|0;if((c[m>>2]|0)<=0){c[(c[(c[h>>2]|0)+40>>2]|0)+(c[j>>2]<<2)>>2]=(p-(c[(c[h>>2]|0)+36>>2]|0)|0)/48|0;c[k>>2]=(c[(c[h>>2]|0)+36>>2]|0)+((c[(c[(c[h>>2]|0)+40>>2]|0)+((c[j>>2]^1)<<2)>>2]|0)*48|0);c[o>>2]=c[(c[k>>2]|0)+32>>2]}else{if((c[p+24>>2]|0)!=0){c[o>>2]=0}c[(c[(c[h>>2]|0)+40>>2]|0)+(c[j>>2]<<2)>>2]=((c[k>>2]|0)-(c[(c[h>>2]|0)+36>>2]|0)|0)/48|0;c[e>>2]=(c[(c[h>>2]|0)+36>>2]|0)+((c[(c[(c[h>>2]|0)+40>>2]|0)+((c[j>>2]^1)<<2)>>2]|0)*48|0)}c[j>>2]=(c[j>>2]|0)/2|0}c[c[g>>2]>>2]=(c[(c[(c[h>>2]|0)+36>>2]|0)+((c[(c[(c[h>>2]|0)+40>>2]|0)+4>>2]|0)*48|0)+24>>2]|0)==0&1;a=c[l>>2]|0;i=n;return a|0}function pG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;h=f+20|0;j=f;l=f+4|0;g=f+8|0;e=f+12|0;k=f+16|0;c[h>>2]=a;c[j>>2]=b;c[l>>2]=d;c[g>>2]=c[(c[j>>2]|0)+64>>2];c[e>>2]=0;b=c[(c[l>>2]|0)+24>>2]|0;b=BD(b,((b|0)<0)<<31>>31)|0;a=(c[g>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+(b+(c[(c[l>>2]|0)+24>>2]|0));c[k>>2]=$e(c[h>>2]|0,(c[(c[l>>2]|0)+24>>2]|0)+12|0)|0;if((c[k>>2]|0)==0){c[e>>2]=7}else{c[c[k>>2]>>2]=(c[k>>2]|0)+12;fL(c[c[k>>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0,c[(c[l>>2]|0)+24>>2]|0)|0;c[(c[k>>2]|0)+4>>2]=c[(c[l>>2]|0)+24>>2];c[(c[k>>2]|0)+8>>2]=c[(c[g>>2]|0)+48>>2];c[(c[g>>2]|0)+48>>2]=c[k>>2]}if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=f;return a|0}if((c[(c[g>>2]|0)+32>>2]|0)<=0){a=c[e>>2]|0;i=f;return a|0}if((c[(c[g>>2]|0)+16>>2]|0)<=(c[(c[g>>2]|0)+32>>2]|0)){if((c[(c[g>>2]|0)+16>>2]|0)<=(c[(c[g>>2]|0)+28>>2]|0)){a=c[e>>2]|0;i=f;return a|0}if((gs()|0)==0){a=c[e>>2]|0;i=f;return a|0}}c[e>>2]=eI(c[h>>2]|0,c[j>>2]|0)|0;c[(c[g>>2]|0)+16>>2]=0;a=c[e>>2]|0;i=f;return a|0}function qG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+128|0;k=f+116|0;p=f+108|0;n=f+104|0;o=f+40|0;q=f+92|0;m=f+96|0;l=f+88|0;g=f+100|0;h=f;j=f+48|0;c[f+112>>2]=a;c[p>>2]=b;c[n>>2]=e;b=o;c[b>>2]=0;c[b+4>>2]=0;kF(c[p>>2]|0,o)|0;b=h+0|0;e=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[q>>2]=SF(c[p>>2]|0,0,c[o>>2]|0,1,h)|0;if((c[q>>2]|0)!=0){c[k>>2]=c[q>>2];a=c[k>>2]|0;i=f;return a|0}o=c[h+4>>2]|0;if((d[c[h+4>>2]>>0]|0|0)<128){c[m>>2]=d[o>>0]|0}else{uD(o,m)|0}if(!((c[m>>2]|0)>>>0<3)){if((c[m>>2]|0)<=(c[h+24>>2]|0)){o=(c[h+4>>2]|0)+((c[m>>2]|0)-1)|0;if((d[(c[h+4>>2]|0)+((c[m>>2]|0)-1)>>0]|0|0)<128){c[l>>2]=d[o>>0]|0}else{uD(o,l)|0}if(!((c[l>>2]|0)>>>0<1|(c[l>>2]|0)>>>0>9|(c[l>>2]|0)==7)){c[g>>2]=yD(c[l>>2]|0)|0;if(!((c[h+24>>2]|0)>>>0<((c[m>>2]|0)+(c[g>>2]|0)|0)>>>0)){zD((c[h+4>>2]|0)+((c[h+24>>2]|0)-(c[g>>2]|0))|0,c[l>>2]|0,j)|0;e=j+16|0;b=c[e+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=b;Gd(h);c[k>>2]=0;a=c[k>>2]|0;i=f;return a|0}}}}Gd(h);c[k>>2]=dq(65606)|0;a=c[k>>2]|0;i=f;return a|0}function rG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+80|0;f=k+68|0;h=k+64|0;m=k+52|0;g=k+48|0;j=k;l=k+56|0;n=k+60|0;e=k+8|0;c[h>>2]=a;c[m>>2]=b;c[g>>2]=d;d=j;c[d>>2]=0;c[d+4>>2]=0;c[n>>2]=c[c[h>>2]>>2];kF(c[n>>2]|0,j)|0;d=j;n=c[d+4>>2]|0;a=j;b=c[a+4>>2]|0;if((n|0)<0|(n|0)==0&(c[d>>2]|0)>>>0<=0|((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>2147483647)){c[c[g>>2]>>2]=0;c[f>>2]=dq(65637)|0;n=c[f>>2]|0;i=k;return n|0}b=e+0|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));c[l>>2]=SF(c[c[h>>2]>>2]|0,0,c[j>>2]|0,1,e)|0;if((c[l>>2]|0)!=0){c[f>>2]=c[l>>2];n=c[f>>2]|0;i=k;return n|0}else{n=xD(c[e+24>>2]|0,c[e+4>>2]|0,c[m>>2]|0,0)|0;c[c[g>>2]>>2]=n;Gd(e);c[f>>2]=0;n=c[f>>2]|0;i=k;return n|0}return 0}function sG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+12|0;h=f;g=f+4|0;e=f+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;Uc(c[j>>2]|0);c[e>>2]=dI(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return c[e>>2]|0}function tG(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+48|0;p=l+32|0;o=l+28|0;k=l+24|0;g=l+20|0;j=l+16|0;m=l+8|0;f=l+4|0;n=l;h=l+12|0;c[p>>2]=a;c[o>>2]=b;c[k>>2]=d;c[g>>2]=e;c[f>>2]=(c[(c[p>>2]|0)+16>>2]|0)+(c[o>>2]<<4);c[m>>2]=(c[(c[f>>2]|0)+12>>2]|0)+8;c[j>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break}c[n>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[n>>2]|0)+32>>2]|0)==(c[k>>2]|0)){c[(c[n>>2]|0)+32>>2]=c[g>>2]}c[j>>2]=c[c[j>>2]>>2]}c[m>>2]=(c[(c[f>>2]|0)+12>>2]|0)+24;c[j>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break}c[h>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[h>>2]|0)+44>>2]|0)==(c[k>>2]|0)){c[(c[h>>2]|0)+44>>2]=c[g>>2]}c[j>>2]=c[c[j>>2]>>2]}i=l;return}function uG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;g=e+16|0;j=e;k=e+4|0;f=e+8|0;h=e+12|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[h>>2]=c[(c[g>>2]|0)+4>>2];Uc(c[g>>2]|0);c[f>>2]=hF(c[h>>2]|0,c[j>>2]|0,0)|0;if(0!=(c[f>>2]|0)){a=c[f>>2]|0;i=e;return a|0}UH(c[g>>2]|0,0,0,1);c[f>>2]=VH(c[h>>2]|0,c[j>>2]|0,0,c[k>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}function vG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;e=f;g=f+4|0;c[d>>2]=a;c[e>>2]=b;if((c[(c[e>>2]|0)+36>>2]|0)!=0){c[g>>2]=0;while(1){b=c[d>>2]|0;if((c[g>>2]|0)>=(c[(c[e>>2]|0)+20>>2]|0)){break}RH(b,(c[(c[e>>2]|0)+36>>2]|0)+((c[g>>2]|0)*48|0)|0);c[g>>2]=(c[g>>2]|0)+1}cc(b,c[(c[e>>2]|0)+36>>2]|0);c[(c[e>>2]|0)+36>>2]=0}if((c[(c[e>>2]|0)+44>>2]|0)!=0){SH(c[(c[e>>2]|0)+44>>2]|0)|0;c[(c[e>>2]|0)+44>>2]=0}TH(c[d>>2]|0,c[(c[e>>2]|0)+48>>2]|0);c[(c[e>>2]|0)+48>>2]=0;a=c[e>>2]|0;c[a>>2]=0;c[a+4>>2]=0;a=(c[e>>2]|0)+8|0;c[a>>2]=0;c[a+4>>2]=0;c[(c[e>>2]|0)+16>>2]=0;c[(c[e>>2]|0)+20>>2]=0;c[(c[e>>2]|0)+24>>2]=0;c[(c[e>>2]|0)+40>>2]=0;i=f;return}function wG(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=uG(c[c[d>>2]>>2]|0,c[(c[d>>2]|0)+68>>2]|0,0)|0;i=b;return a|0}function xG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;k=e;h=e+4|0;g=e+8|0;j=e+12|0;c[f>>2]=a;c[k>>2]=b;c[h>>2]=d;c[j>>2]=(c[(c[f>>2]|0)+16>>2]|0)+(c[k>>2]<<4);b=(c[(c[j>>2]|0)+12>>2]|0)+8|0;a=c[h>>2]|0;c[g>>2]=Eh(b,a,Ub(c[h>>2]|0)|0,0)|0;ac(c[f>>2]|0,c[g>>2]|0);a=(c[f>>2]|0)+24|0;c[a>>2]=c[a>>2]|2;i=e;return}function yG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+24|0;m=e;k=e+4|0;g=e+8|0;j=e+12|0;l=e+16|0;h=e+20|0;c[f>>2]=a;c[m>>2]=b;c[k>>2]=d;c[l>>2]=(c[(c[(c[f>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+12>>2]|0)+24;c[j>>2]=Ub(c[k>>2]|0)|0;c[g>>2]=Eh(c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,0)|0;if((c[g>>2]|0)==0){m=c[f>>2]|0;m=m+24|0;l=c[m>>2]|0;l=l|2;c[m>>2]=l;i=e;return}d=c[g>>2]|0;if((c[(c[(c[g>>2]|0)+12>>2]|0)+8>>2]|0)==(c[g>>2]|0)){c[(c[(c[g>>2]|0)+12>>2]|0)+8>>2]=c[d+20>>2]}else{c[h>>2]=c[(c[d+12>>2]|0)+8>>2];while(1){if((c[h>>2]|0)!=0){b=(c[(c[h>>2]|0)+20>>2]|0)!=(c[g>>2]|0)}else{b=0}d=c[h>>2]|0;if(!b){break}c[h>>2]=c[d+20>>2]}if((d|0)!=0){if((c[(c[h>>2]|0)+20>>2]|0)==(c[g>>2]|0)){c[(c[h>>2]|0)+20>>2]=c[(c[g>>2]|0)+20>>2]}}}NE(c[f>>2]|0,c[g>>2]|0);m=c[f>>2]|0;m=m+24|0;l=c[m>>2]|0;l=l|2;c[m>>2]=l;i=e;return}function zG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;h=e+24|0;m=e;k=e+4|0;f=e+8|0;l=e+12|0;j=e+16|0;g=e+20|0;c[h>>2]=a;c[m>>2]=b;c[k>>2]=d;c[l>>2]=(c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+12>>2]|0)+40;b=c[l>>2]|0;a=c[k>>2]|0;c[f>>2]=Eh(b,a,Ub(c[k>>2]|0)|0,0)|0;if((c[f>>2]|0)==0){i=e;return}if((c[(c[f>>2]|0)+20>>2]|0)==(c[(c[f>>2]|0)+24>>2]|0)){c[j>>2]=gA(c[f>>2]|0)|0;c[g>>2]=(c[j>>2]|0)+64;while(1){d=(c[c[g>>2]>>2]|0)+32|0;if((c[c[g>>2]>>2]|0)==(c[f>>2]|0)){break}c[g>>2]=d}c[c[g>>2]>>2]=c[d>>2]}$b(c[h>>2]|0,c[f>>2]|0);m=(c[h>>2]|0)+24|0;c[m>>2]=c[m>>2]|2;i=e;return}function AG(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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;p=i;i=i+208|0;q=p;k=p+96|0;u=p+92|0;r=p+88|0;s=p+84|0;t=p+80|0;l=p+76|0;j=p+68|0;m=p+64|0;o=p+8|0;n=p+72|0;c[u>>2]=b;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[l>>2]=h;c[n>>2]=c[(c[u>>2]|0)+4>>2];Uc(c[u>>2]|0);c[m>>2]=IH(c[c[n>>2]>>2]|0)|0;c[o>>2]=c[n>>2];c[o+4>>2]=c[c[n>>2]>>2];c[o+12>>2]=dD(c[o>>2]|0)|0;c[o+16>>2]=c[t>>2];c[o+20>>2]=0;c[o+24>>2]=0;c[c[l>>2]>>2]=0;if((c[o+12>>2]|0)==0){c[k>>2]=0;u=c[k>>2]|0;i=p;return u|0}c[o+8>>2]=Sc((((c[o+12>>2]|0)>>>0)/8|0)+1|0)|0;if((c[o+8>>2]|0)==0){c[c[l>>2]>>2]=1;c[k>>2]=0;u=c[k>>2]|0;i=p;return u|0}c[j>>2]=(((c[368]|0)>>>0)/((c[(c[n>>2]|0)+32>>2]|0)>>>0)|0)+1;if((c[j>>2]|0)>>>0<=(c[o+12>>2]|0)>>>0){JH(o,c[j>>2]|0)}tc(o+28|0,p+100|0,100,1e9);a[o+52>>0]=2;u=zo((c[(c[(c[n>>2]|0)+12>>2]|0)+56>>2]|0)+32|0)|0;KH(o,1,u,zo((c[(c[(c[n>>2]|0)+12>>2]|0)+56>>2]|0)+36|0)|0,39800);c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[s>>2]|0)){break}if((c[o+16>>2]|0)==0){break}if((c[(c[r>>2]|0)+(c[j>>2]<<2)>>2]|0)!=0){if((d[(c[n>>2]|0)+17>>0]|0)!=0){if((c[(c[r>>2]|0)+(c[j>>2]<<2)>>2]|0)>1){LH(o,c[(c[r>>2]|0)+(c[j>>2]<<2)>>2]|0,1,0,0)}}MH(o,c[(c[r>>2]|0)+(c[j>>2]<<2)>>2]|0,39816,0,0)|0}c[j>>2]=(c[j>>2]|0)+1}c[j>>2]=1;while(1){if(!((c[j>>2]|0)>>>0<=(c[o+12>>2]|0)>>>0)){break}if((c[o+16>>2]|0)==0){break}do{if((NH(o,c[j>>2]|0)|0)==0){u=sD(c[n>>2]|0,c[j>>2]|0)|0;if((u|0)==(c[j>>2]|0)){if((a[(c[n>>2]|0)+17>>0]|0)!=0){break}}c[q>>2]=c[j>>2];OH(o,0,39840,q)}}while(0);if((NH(o,c[j>>2]|0)|0)!=0){u=sD(c[n>>2]|0,c[j>>2]|0)|0;if((u|0)==(c[j>>2]|0)){if((d[(c[n>>2]|0)+17>>0]|0)!=0){c[q>>2]=c[j>>2];OH(o,0,39864,q)}}}c[j>>2]=(c[j>>2]|0)+1}u=c[m>>2]|0;if((u|0)!=(IH(c[c[n>>2]>>2]|0)|0)){t=c[m>>2]|0;u=IH(c[c[n>>2]>>2]|0)|0;c[q>>2]=t;c[q+4>>2]=u;OH(o,0,39904,q)}oc(c[o+8>>2]|0);if((c[o+24>>2]|0)!=0){Nt(o+28|0);c[c[l>>2]>>2]=(c[o+20>>2]|0)+1;c[k>>2]=0;u=c[k>>2]|0;i=p;return u|0}c[c[l>>2]>>2]=c[o+20>>2];if((c[o+20>>2]|0)==0){Nt(o+28|0)}c[k>>2]=vc(o+28|0)|0;u=c[k>>2]|0;i=p;return u|0}function _sqlite3VdbeExec$0(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=c[f+4792>>2]|0;i=c[f+4800>>2]|0;h=c[f+4824>>2]|0;j=c[f+4840>>2]|0;k=c[f+4848>>2]|0;a:do{if(j){j=0;switch(k|0){case 94:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1284|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);if(((e[(c[(f+1288|0)>>2]|0)+28>>1]|e[(c[(f+1284|0)>>2]|0)+28>>1])&1|0)!=0){be(c[(f+1276|0)>>2]|0);c[f+4856>>2]=2;c[f+4860>>2]=66;break a}if((b[(c[(f+1288|0)>>2]|0)+28>>1]&16384|0)!=0){if((Id(c[(f+1288|0)>>2]|0)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}}if((b[(c[(f+1284|0)>>2]|0)+28>>1]&16384|0)!=0){if((Id(c[(f+1284|0)>>2]|0)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}}if((b[(c[(f+1288|0)>>2]|0)+28>>1]&18|0)==0){if((sw(c[(f+1288|0)>>2]|0,d[(f+1581|0)>>0]|0)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}}if((b[(c[(f+1284|0)>>2]|0)+28>>1]&18|0)==0){if((sw(c[(f+1284|0)>>2]|0,d[(f+1581|0)>>0]|0)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}}m=(c[(c[(f+1288|0)>>2]|0)+24>>2]|0)+(c[(c[(f+1284|0)>>2]|0)+24>>2]|0)|0;c[(f+288|0)>>2]=m;c[(f+288|0)+4>>2]=((m|0)<0)<<31>>31;m=c[(f+288|0)+4>>2]|0;n=c[(c[(f+1308|0)>>2]|0)+88>>2]|0;if((m|0)>(((n|0)<0)<<31>>31|0)|((m|0)==(((n|0)<0)<<31>>31|0)?(c[(f+288|0)>>2]|0)>>>0>n>>>0:0)){i=899;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}if((ue(c[(f+1276|0)>>2]|0,(c[(f+288|0)>>2]|0)+2|0,(c[(f+1276|0)>>2]|0)==(c[(f+1284|0)>>2]|0)&1)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|2;if((c[(f+1276|0)>>2]|0)!=(c[(f+1284|0)>>2]|0)){fL(c[(c[(f+1276|0)>>2]|0)+4>>2]|0,c[(c[(f+1284|0)>>2]|0)+4>>2]|0,c[(c[(f+1284|0)>>2]|0)+24>>2]|0)|0}fL((c[(c[(f+1276|0)>>2]|0)+4>>2]|0)+(c[(c[(f+1284|0)>>2]|0)+24>>2]|0)|0,c[(c[(f+1288|0)>>2]|0)+4>>2]|0,c[(c[(f+1288|0)>>2]|0)+24>>2]|0)|0;a[(c[(c[(f+1276|0)>>2]|0)+4>>2]|0)+(c[(f+288|0)>>2]|0)>>0]=0;n=dL(c[(f+288|0)>>2]|0,c[(f+288|0)+4>>2]|0,1,0)|0;a[(c[(c[(f+1276|0)>>2]|0)+4>>2]|0)+n>>0]=0;n=(c[(f+1276|0)>>2]|0)+28|0;b[n>>1]=e[n>>1]|512;c[(c[(f+1276|0)>>2]|0)+24>>2]=c[(f+288|0)>>2];a[(c[(f+1276|0)>>2]|0)+30>>0]=a[(f+1581|0)>>0]|0;break};case 31:{c[(f+1244|0)>>2]=(c[(c[(f+1328|0)>>2]|0)+60>>2]|0)+(((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)-1|0)*40|0);if((EF(c[(f+1244|0)>>2]|0)|0)!=0){i=899;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}Vt(c[(f+1276|0)>>2]|0,c[(f+1244|0)>>2]|0,2048);break};case 32:{c[(f+1236|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2];c[(f+1232|0)>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+1228|0)>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(f+1232|0)>>2]|0)*40|0);c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(f+1228|0)>>2]|0)*40|0);do{if((b[(c[(f+1276|0)>>2]|0)+28>>1]&9312|0)!=0){te(c[(f+1276|0)>>2]|0)}c[(f+1240|0)>>2]=c[(c[(f+1276|0)>>2]|0)+36>>2];g=(c[(f+1276|0)>>2]|0)+0|0;l=(c[(f+1288|0)>>2]|0)+0|0;h=g+40|0;do{c[g>>2]=c[l>>2];g=g+4|0;l=l+4|0}while((g|0)<(h|0));b[(c[(f+1288|0)>>2]|0)+28>>1]=128;c[(c[(f+1288|0)>>2]|0)+32>>2]=0;c[(c[(f+1288|0)>>2]|0)+36>>2]=c[(f+1240|0)>>2];c[(f+1288|0)>>2]=(c[(f+1288|0)>>2]|0)+40;c[(f+1276|0)>>2]=(c[(f+1276|0)>>2]|0)+40;n=(c[(f+1236|0)>>2]|0)+ -1|0;c[(f+1236|0)>>2]=n}while((n|0)!=0);break};case 35:{if((c[(c[(f+1308|0)>>2]|0)+284>>2]|0)!=0){if((c[(f+1300|0)>>2]|0)>>>0>=(c[(f+1296|0)>>2]|0)>>>0){if((ub[c[(c[(f+1308|0)>>2]|0)+284>>2]&63](c[(c[(f+1308|0)>>2]|0)+288>>2]|0)|0)!=0){i=80;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}}}n=FF(c[(f+1328|0)>>2]|0,0)|0;c[(f+1312|0)>>2]=n;if(0==(n|0)){c[(f+1312|0)>>2]=GF(c[(f+1328|0)>>2]|0,1)|0;if((c[(f+1312|0)>>2]|0)==0){i=83;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}}break};case 30:{Yd(c[(f+1276|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,0,0)|0;a[(c[(f+1276|0)>>2]|0)+30>>0]=a[(f+1581|0)>>0]|0;break};case 33:{c[(f+1224|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2];c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);while(1){Vt(c[(f+1276|0)>>2]|0,c[(f+1288|0)>>2]|0,4096);if((b[(c[(f+1276|0)>>2]|0)+28>>1]&4096|0)!=0){if((ur(c[(f+1276|0)>>2]|0)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}}n=c[(f+1224|0)>>2]|0;c[(f+1224|0)>>2]=n+ -1;if((n|0)==0){c[f+4856>>2]=2;c[f+4860>>2]=66;break a}c[(f+1276|0)>>2]=(c[(f+1276|0)>>2]|0)+40;c[(f+1288|0)>>2]=(c[(f+1288|0)>>2]|0)+40}};case 34:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);Vt(c[(f+1276|0)>>2]|0,c[(f+1288|0)>>2]|0,4096);break};case 37:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);MF(c[(f+1288|0)>>2]|0)|0;m=c[(c[(f+1316|0)>>2]|0)+8>>2]|0;n=(c[(f+1288|0)>>2]|0)+16|0;m=dL(c[n>>2]|0,c[n+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;c[n>>2]=m;c[n+4>>2]=D;break};case 1:{c[(f+1200|0)>>2]=d[(c[(f+1316|0)>>2]|0)+3>>0]|0;c[(f+1204|0)>>2]=c[(c[(f+1328|0)>>2]|0)+12>>2];c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+1208|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(f+1212|0)>>2]=0;while(1){if((c[(f+1212|0)>>2]|0)>=(c[(f+1200|0)>>2]|0)){break}c[(c[(f+1204|0)>>2]|0)+(c[(f+1212|0)>>2]<<2)>>2]=c[(f+1208|0)>>2];if((b[(c[(f+1208|0)>>2]|0)+28>>1]&4096|0)!=0){if((ur(c[(f+1208|0)>>2]|0)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}}c[(f+1212|0)>>2]=(c[(f+1212|0)>>2]|0)+1;c[(f+1208|0)>>2]=(c[(f+1208|0)>>2]|0)+40}c[(f+184|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];c[(f+184|0)+60>>2]=c[(f+1324|0)>>2];c[(f+184|0)+56>>2]=c[(f+1328|0)>>2];g=(f+184|0)+8|0;l=(c[(f+1276|0)>>2]|0)+0|0;h=g+40|0;do{c[g>>2]=c[l>>2];g=g+4|0;l=l+4|0}while((g|0)<(h|0));b[(c[(f+1276|0)>>2]|0)+28>>1]=1;c[(c[(f+1276|0)>>2]|0)+32>>2]=0;c[(c[(f+1276|0)>>2]|0)+36>>2]=0;b[(f+184|0)+36>>1]=e[(f+184|0)+36>>1]&-16896|1;a[(f+184|0)+69>>0]=0;if((b[(c[(f+184|0)>>2]|0)+2>>1]&32|0)!=0){c[(f+184|0)+52>>2]=c[(c[(f+1316|0)>>2]|0)+ -20+16>>2]}n=c[(f+88|0)+4>>2]|0;m=(c[(f+1308|0)>>2]|0)+32|0;c[m>>2]=c[(f+88|0)>>2];c[m+4>>2]=n;vb[c[(c[(f+184|0)>>2]|0)+12>>2]&63](f+184|0,c[(f+1200|0)>>2]|0,c[(f+1204|0)>>2]|0);m=(c[(f+1308|0)>>2]|0)+32|0;n=c[m+4>>2]|0;c[(f+88|0)>>2]=c[m>>2];c[(f+88|0)+4>>2]=n;if((a[(c[(f+1308|0)>>2]|0)+64>>0]|0)!=0){i=146;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}if((a[(f+184|0)+69>>0]|0)!=0){if((c[(f+184|0)+64>>2]|0)!=0){m=(c[(f+1328|0)>>2]|0)+44|0;n=c[(f+1308|0)>>2]|0;c[(f+336|0)>>2]=Jd((f+184|0)+8|0)|0;$t(m,n,1768,f+336|0);c[(f+1312|0)>>2]=c[(f+184|0)+64>>2]}LF(c[(f+1328|0)>>2]|0,c[(f+1324|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0)}sr((f+184|0)+8|0,d[(f+1581|0)>>0]|0)|0;g=(c[(f+1276|0)>>2]|0)+0|0;l=(f+184|0)+8|0;h=g+40|0;do{c[g>>2]=c[l>>2];g=g+4|0;l=l+4|0}while((g|0)<(h|0));if((EF(c[(f+1276|0)>>2]|0)|0)!=0){i=899;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}break};case 38:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&4|0)==0){rw(c[(f+1288|0)>>2]|0,99,a[(f+1581|0)>>0]|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&4|0)==0){if((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)==0){i=177;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}}b[(c[(f+1288|0)>>2]|0)+28>>1]=e[(c[(f+1288|0)>>2]|0)+28>>1]&-16896|4;break};case 143:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)==0){n=(c[(f+1288|0)>>2]|0)+28|0;b[n>>1]=e[n>>1]|(b[(c[(f+1288|0)>>2]|0)+28>>1]&16)>>3;rw(c[(f+1288|0)>>2]|0,97,a[(f+1581|0)>>0]|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&16384|0)!=0){l=Id(c[(f+1288|0)>>2]|0)|0}else{l=0}c[(f+1312|0)>>2]=l;n=(c[(f+1288|0)>>2]|0)+28|0;b[n>>1]=e[n>>1]&-16413}break};case 36:{if((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)!=0){_d((c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0)|0,0,0)}break};case 88:case 87:case 86:case 85:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1284|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);if(((e[(c[(f+1288|0)>>2]|0)+28>>1]|e[(c[(f+1284|0)>>2]|0)+28>>1])&1|0)!=0){be(c[(f+1276|0)>>2]|0);c[f+4856>>2]=2;c[f+4860>>2]=66;break a}n=Pd(c[(f+1284|0)>>2]|0)|0;c[(f+176|0)>>2]=n;c[(f+176|0)+4>>2]=D;n=Pd(c[(f+1288|0)>>2]|0)|0;c[(f+72|0)>>2]=n;c[(f+72|0)+4>>2]=D;a[(f+1776|0)>>0]=a[c[(f+1316|0)>>2]>>0]|0;do{if((d[(f+1776|0)>>0]|0)==85){n=c[(f+176|0)+4>>2]&c[(f+72|0)+4>>2];c[(f+176|0)>>2]=c[(f+176|0)>>2]&c[(f+72|0)>>2];c[(f+176|0)+4>>2]=n}else{l=c[(f+72|0)>>2]|0;m=c[(f+72|0)+4>>2]|0;if((d[(f+1776|0)>>0]|0)==86){n=c[(f+176|0)+4>>2]|m;c[(f+176|0)>>2]=c[(f+176|0)>>2]|l;c[(f+176|0)+4>>2]=n;break}if((l|0)!=0|(m|0)!=0){if((c[(f+72|0)+4>>2]|0)<0){a[(f+1776|0)>>0]=175-(d[(f+1776|0)>>0]|0);n=c[(f+72|0)+4>>2]|0;if((n|0)>-1|(n|0)==-1&(c[(f+72|0)>>2]|0)>>>0>4294967232){m=$K(0,0,c[(f+72|0)>>2]|0,c[(f+72|0)+4>>2]|0)|0;l=D}else{m=64;l=0}c[(f+72|0)>>2]=m;c[(f+72|0)+4>>2]=l}n=c[(f+72|0)+4>>2]|0;if((n|0)>0|(n|0)==0&(c[(f+72|0)>>2]|0)>>>0>=64){n=c[(f+176|0)+4>>2]|0;if((n|0)>0|(n|0)==0&(c[(f+176|0)>>2]|0)>>>0>=0){l=1}else{l=(d[(f+1776|0)>>0]|0)==87}n=l?0:-1;c[(f+176|0)>>2]=n;c[(f+176|0)+4>>2]=((n|0)<0)<<31>>31;break}c[(f+80|0)+0>>2]=c[(f+176|0)+0>>2];c[(f+80|0)+4>>2]=c[(f+176|0)+4>>2];l=c[(f+72|0)>>2]|0;n=c[(f+80|0)>>2]|0;m=c[(f+80|0)+4>>2]|0;if((d[(f+1776|0)>>0]|0)==87){n=bL(n|0,m|0,l|0)|0;c[(f+80|0)>>2]=n;c[(f+80|0)+4>>2]=D}else{n=eL(n|0,m|0,l|0)|0;c[(f+80|0)>>2]=n;c[(f+80|0)+4>>2]=D;if((c[(f+176|0)+4>>2]|0)<0){m=$K(64,0,c[(f+72|0)>>2]|0,c[(f+72|0)+4>>2]|0)|0;m=bL(-1,-1,m|0)|0;n=c[(f+80|0)+4>>2]|D;c[(f+80|0)>>2]=c[(f+80|0)>>2]|m;c[(f+80|0)+4>>2]=n}}c[(f+176|0)+0>>2]=c[(f+80|0)+0>>2];c[(f+176|0)+4>>2]=c[(f+80|0)+4>>2]}}}while(0);m=c[(f+176|0)+4>>2]|0;n=(c[(f+1276|0)>>2]|0)+16|0;c[n>>2]=c[(f+176|0)>>2];c[n+4>>2]=m;b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|4;break};default:{j=1}}}if(j){j=0;switch(k|0){case 39:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&4|0)!=0){NF(c[(f+1288|0)>>2]|0)|0}break};case 71:case 72:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)!=0){c[(f+1088|0)>>2]=2}else{n=Pd(c[(f+1288|0)>>2]|0)|0;c[(f+1088|0)>>2]=((n|0)!=0|(D|0)!=0)&1}c[(f+1284|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);if((b[(c[(f+1284|0)>>2]|0)+28>>1]&1|0)!=0){c[(f+1084|0)>>2]=2}else{n=Pd(c[(f+1284|0)>>2]|0)|0;c[(f+1084|0)>>2]=((n|0)!=0|(D|0)!=0)&1}k=((c[(f+1088|0)>>2]|0)*3|0)+(c[(f+1084|0)>>2]|0)|0;if((d[c[(f+1316|0)>>2]>>0]|0)==72){c[(f+1088|0)>>2]=d[37888+k>>0]|0}else{c[(f+1088|0)>>2]=d[37904+k>>0]|0}c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);if((c[(f+1088|0)>>2]|0)==2){b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}else{m=c[(f+1088|0)>>2]|0;n=(c[(f+1276|0)>>2]|0)+16|0;c[n>>2]=m;c[n+4>>2]=((m|0)<0)<<31>>31;b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|4;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}};case 145:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);nw(c[(f+1288|0)>>2]|0)|0;break};case 83:case 80:case 81:case 82:case 78:case 79:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1280|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);b[(f+1576|0)>>1]=b[(c[(f+1288|0)>>2]|0)+28>>1]|0;b[(f+1578|0)>>1]=b[(c[(f+1280|0)>>2]|0)+28>>1]|0;l=d[(c[(f+1316|0)>>2]|0)+3>>0]|0;do{if(((e[(f+1576|0)>>1]|e[(f+1578|0)>>1])&1|0)!=0){if((l&128|0)==0){k=c[(f+1316|0)>>2]|0;if((a[(c[(f+1316|0)>>2]|0)+3>>0]&16|0)!=0){c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[k+8>>2]|0)*40|0);b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}if((a[k+3>>0]&8|0)==0){c[f+4856>>2]=2;c[f+4860>>2]=66;break a}c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}if((b[(f+1576|0)>>1]&1|0)!=0){if((b[(f+1578|0)>>1]&1|0)!=0){if((b[(f+1578|0)>>1]&256|0)==0){c[(f+1128|0)>>2]=0;break}}}c[(f+1128|0)>>2]=1}else{a[(f+1777|0)>>0]=l&103;if((a[(f+1777|0)>>0]|0)!=0){rw(c[(f+1288|0)>>2]|0,a[(f+1777|0)>>0]|0,a[(f+1581|0)>>0]|0);rw(c[(f+1280|0)>>2]|0,a[(f+1777|0)>>0]|0,a[(f+1581|0)>>0]|0);if((a[(c[(f+1308|0)>>2]|0)+64>>0]|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}}if((b[(c[(f+1288|0)>>2]|0)+28>>1]&16384|0)!=0){Id(c[(f+1288|0)>>2]|0)|0}if((b[(c[(f+1280|0)>>2]|0)+28>>1]&16384|0)!=0){Id(c[(f+1280|0)>>2]|0)|0}c[(f+1128|0)>>2]=Tt(c[(f+1280|0)>>2]|0,c[(f+1288|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0)|0}}while(0);switch(d[c[(f+1316|0)>>2]>>0]|0){case 79:{c[(f+1128|0)>>2]=(c[(f+1128|0)>>2]|0)==0&1;break};case 81:{c[(f+1128|0)>>2]=(c[(f+1128|0)>>2]|0)<=0&1;break};case 78:{c[(f+1128|0)>>2]=(c[(f+1128|0)>>2]|0)!=0&1;break};case 80:{c[(f+1128|0)>>2]=(c[(f+1128|0)>>2]|0)>0&1;break};case 82:{c[(f+1128|0)>>2]=(c[(f+1128|0)>>2]|0)<0&1;break};default:{c[(f+1128|0)>>2]=(c[(f+1128|0)>>2]|0)>=0&1}}if((a[(c[(f+1316|0)>>2]|0)+3>>0]&16|0)!=0){c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|4;m=c[(f+1128|0)>>2]|0;n=(c[(f+1276|0)>>2]|0)+16|0;c[n>>2]=m;c[n+4>>2]=((m|0)<0)<<31>>31}else{if((c[(f+1128|0)>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}}b[(c[(f+1288|0)>>2]|0)+28>>1]=e[(c[(f+1288|0)>>2]|0)+28>>1]&-512|b[(f+1576|0)>>1]&511;b[(c[(f+1280|0)>>2]|0)+28>>1]=e[(c[(f+1280|0)>>2]|0)+28>>1]&-512|b[(f+1578|0)>>1]&511;break};case 40:{c[(f+1272|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];break};case 144:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)==0){k=c[(f+1288|0)>>2]|0;if((b[(c[(f+1288|0)>>2]|0)+28>>1]&16|0)==0){rw(k,97,a[(f+1581|0)>>0]|0);b[(c[(f+1288|0)>>2]|0)+28>>1]=e[(c[(f+1288|0)>>2]|0)+28>>1]&-16896|16;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}else{b[(k+28|0)>>1]=e[(k+28|0)>>1]&-496;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}}break};case 147:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)==0){NF(c[(f+1288|0)>>2]|0)|0}break};case 146:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)==0){MF(c[(f+1288|0)>>2]|0)|0}break};case 41:{if((a[(c[(f+1316|0)>>2]|0)+3>>0]&1|0)==0){c[(f+1272|0)>>2]=0}c[(f+1124|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2];c[(f+1108|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];c[(f+1116|0)>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+1112|0)>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];c[(f+1120|0)>>2]=0;while(1){if((c[(f+1120|0)>>2]|0)>=(c[(f+1124|0)>>2]|0)){break}l=c[(f+1120|0)>>2]|0;if((c[(f+1272|0)>>2]|0)!=0){l=c[(c[(f+1272|0)>>2]|0)+(l<<2)>>2]|0}c[(f+1104|0)>>2]=l;c[(f+1100|0)>>2]=c[(c[(f+1108|0)>>2]|0)+20+(c[(f+1120|0)>>2]<<2)>>2];c[(f+1096|0)>>2]=d[(c[(c[(f+1108|0)>>2]|0)+16>>2]|0)+(c[(f+1120|0)>>2]|0)>>0]|0;c[(f+1304|0)>>2]=Tt((c[(f+1292|0)>>2]|0)+(((c[(f+1116|0)>>2]|0)+(c[(f+1104|0)>>2]|0)|0)*40|0)|0,(c[(f+1292|0)>>2]|0)+(((c[(f+1112|0)>>2]|0)+(c[(f+1104|0)>>2]|0)|0)*40|0)|0,c[(f+1100|0)>>2]|0)|0;if((c[(f+1304|0)>>2]|0)!=0){i=233;break}c[(f+1120|0)>>2]=(c[(f+1120|0)>>2]|0)+1}if((i|0)==233){i=0;if((c[(f+1096|0)>>2]|0)!=0){c[(f+1304|0)>>2]=0-(c[(f+1304|0)>>2]|0)}}c[(f+1272|0)>>2]=0;break};case 42:{if((c[(f+1304|0)>>2]|0)<0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+4>>2]|0)-1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}k=c[(f+1316|0)>>2]|0;if((c[(f+1304|0)>>2]|0)==0){c[(f+1324|0)>>2]=(c[k+8>>2]|0)-1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}else{c[(f+1324|0)>>2]=(c[k+12>>2]|0)-1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}};case 45:case 44:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)!=0){c[(f+1080|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2]}else{c[(f+1080|0)>>2]=+Nd(c[(f+1288|0)>>2]|0)!=0.0&1;if((d[c[(f+1316|0)>>2]>>0]|0)==45){c[(f+1080|0)>>2]=((c[(f+1080|0)>>2]|0)!=0^1)&1}}if((c[(f+1080|0)>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 96:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);k=c[(f+1276|0)>>2]|0;if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)!=0){be(k);c[f+4856>>2]=2;c[f+4860>>2]=66;break a}else{n=Pd(c[(f+1288|0)>>2]|0)|0;_d(k,~n,~D);c[f+4856>>2]=2;c[f+4860>>2]=66;break a}};default:{j=1}}}if(j){j=0;switch(k|0){case 46:{c[(f+1076|0)>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];c[(f+1144|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+1072|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+1092|0)>>2]=(c[(f+1072|0)>>2]|0)+88;c[(f+1132|0)>>2]=(c[(f+1092|0)>>2]|0)+(b[(c[(f+1072|0)>>2]|0)+20>>1]<<2);c[(f+1068|0)>>2]=c[c[(f+1072|0)>>2]>>2];c[(f+1312|0)>>2]=OF(c[(f+1072|0)>>2]|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4856>>2]=2;c[f+4860>>2]=67;break a}if((c[(c[(f+1072|0)>>2]|0)+68>>2]|0)!=(c[(c[(f+1328|0)>>2]|0)+72>>2]|0)){i=276}else{if((a[(c[(f+1316|0)>>2]|0)+3>>0]&32|0)!=0){i=276}else{i=295}}b:do{if((i|0)==276){i=0;do{if((a[(c[(f+1072|0)>>2]|0)+25>>0]|0)!=0){if((c[(f+1068|0)>>2]|0)==0){c[(f+1176|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1072|0)>>2]|0)+16>>2]|0)*40|0);n=c[(c[(f+1176|0)>>2]|0)+24>>2]|0;c[(f+1184|0)>>2]=n;c[(c[(f+1072|0)>>2]|0)+76>>2]=n;c[(c[(f+1072|0)>>2]|0)+72>>2]=n;c[(c[(f+1072|0)>>2]|0)+84>>2]=c[(c[(f+1176|0)>>2]|0)+4>>2];break}else{b[(c[(f+1144|0)>>2]|0)+28>>1]=e[(c[(f+1144|0)>>2]|0)+28>>1]&-16896|1;break b}}else{l=c[(f+1068|0)>>2]|0;if(((d[(c[(f+1072|0)>>2]|0)+28>>0]|0)>>>2&1|0)==0){kF(l,f+168|0)|0;n=PF(c[(f+1068|0)>>2]|0,f+1184|0)|0;c[(c[(f+1072|0)>>2]|0)+84>>2]=n;c[(c[(f+1072|0)>>2]|0)+72>>2]=c[(f+168|0)>>2]}else{QF(l,(c[(f+1072|0)>>2]|0)+72|0)|0;n=RF(c[(f+1068|0)>>2]|0,f+1184|0)|0;c[(c[(f+1072|0)>>2]|0)+84>>2]=n}if((c[(c[(f+1072|0)>>2]|0)+72>>2]|0)>>>0<=(c[(f+1184|0)>>2]|0)>>>0){c[(c[(f+1072|0)>>2]|0)+76>>2]=c[(c[(f+1072|0)>>2]|0)+72>>2]}else{c[(c[(f+1072|0)>>2]|0)+76>>2]=c[(f+1184|0)>>2]}if((c[(c[(f+1072|0)>>2]|0)+72>>2]|0)>>>0>(c[(c[(f+1308|0)>>2]|0)+88>>2]|0)>>>0){i=899;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}}}while(0);c[(c[(f+1072|0)>>2]|0)+68>>2]=c[(c[(f+1328|0)>>2]|0)+72>>2];l=c[(c[(f+1072|0)>>2]|0)+84>>2]|0;if((d[c[(c[(f+1072|0)>>2]|0)+84>>2]>>0]|0)<128){c[(f+1192|0)>>2]=d[l>>0]|0;l=1}else{l=(uD(l,f+1192|0)|0)&255}c[(c[(f+1072|0)>>2]|0)+80>>2]=l&255;b[(c[(f+1072|0)>>2]|0)+22>>1]=0;c[c[(f+1132|0)>>2]>>2]=c[(f+1192|0)>>2];if((c[(f+1184|0)>>2]|0)>>>0<(c[(f+1192|0)>>2]|0)>>>0){c[(c[(f+1072|0)>>2]|0)+84>>2]=0;c[(c[(f+1072|0)>>2]|0)+76>>2]=0}if(!((c[(f+1192|0)>>2]|0)>>>0>98307)){if(!((c[(f+1192|0)>>2]|0)>>>0>(c[(c[(f+1072|0)>>2]|0)+72>>2]|0)>>>0)){i=295;break}}c[(f+1312|0)>>2]=dq(69894)|0;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}}while(0);do{if((i|0)==295){i=0;if((e[(c[(f+1072|0)>>2]|0)+22>>1]|0)<=(c[(f+1076|0)>>2]|0)){c:do{if((c[(c[(f+1072|0)>>2]|0)+80>>2]|0)>>>0<(c[c[(f+1132|0)>>2]>>2]|0)>>>0){if((c[(c[(f+1072|0)>>2]|0)+84>>2]|0)==0){g=(f+296|0)+0|0;h=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[(f+1312|0)>>2]=SF(c[(f+1068|0)>>2]|0,0,c[c[(f+1132|0)>>2]>>2]|0,(((d[(c[(f+1072|0)>>2]|0)+28>>0]|0)>>>2&1|0)!=0^1)&1,f+296|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4856>>2]=2;c[f+4860>>2]=66;break a}c[(f+1148|0)>>2]=c[(f+296|0)+4>>2]}else{c[(f+1148|0)>>2]=c[(c[(f+1072|0)>>2]|0)+84>>2]}c[(f+1140|0)>>2]=e[(c[(f+1072|0)>>2]|0)+22>>1]|0;c[(f+1192|0)>>2]=c[(c[(f+1132|0)>>2]|0)+(c[(f+1140|0)>>2]<<2)>>2];c[(f+1168|0)>>2]=(c[(f+1148|0)>>2]|0)+(c[(c[(f+1072|0)>>2]|0)+80>>2]|0);c[(f+1196|0)>>2]=(c[(f+1148|0)>>2]|0)+(c[c[(f+1132|0)>>2]>>2]|0);do{l=c[(f+1168|0)>>2]|0;if((d[c[(f+1168|0)>>2]>>0]|0)<128){c[(f+1180|0)>>2]=d[l>>0]|0;c[(f+1168|0)>>2]=(c[(f+1168|0)>>2]|0)+1}else{n=(uD(l,f+1180|0)|0)&255;c[(f+1168|0)>>2]=(c[(f+1168|0)>>2]|0)+n}c[(c[(f+1092|0)>>2]|0)+(c[(f+1140|0)>>2]<<2)>>2]=c[(f+1180|0)>>2];c[(f+1188|0)>>2]=yD(c[(f+1180|0)>>2]|0)|0;c[(f+1192|0)>>2]=(c[(f+1192|0)>>2]|0)+(c[(f+1188|0)>>2]|0);if((c[(f+1192|0)>>2]|0)>>>0<(c[(f+1188|0)>>2]|0)>>>0){i=306;break}c[(f+1140|0)>>2]=(c[(f+1140|0)>>2]|0)+1;c[(c[(f+1132|0)>>2]|0)+(c[(f+1140|0)>>2]<<2)>>2]=c[(f+1192|0)>>2];if((c[(f+1140|0)>>2]|0)>(c[(f+1076|0)>>2]|0)){break}}while((c[(f+1168|0)>>2]|0)>>>0<(c[(f+1196|0)>>2]|0)>>>0);if((i|0)==306){i=0;c[(f+1168|0)>>2]=(c[(f+1196|0)>>2]|0)+1}b[(c[(f+1072|0)>>2]|0)+22>>1]=c[(f+1140|0)>>2];c[(c[(f+1072|0)>>2]|0)+80>>2]=(c[(f+1168|0)>>2]|0)-(c[(f+1148|0)>>2]|0);if((c[(c[(f+1072|0)>>2]|0)+84>>2]|0)==0){Gd(f+296|0);b[(f+296|0)+28>>1]=1}do{if(!((c[(f+1168|0)>>2]|0)>>>0>(c[(f+1196|0)>>2]|0)>>>0)){if((c[(f+1192|0)>>2]|0)>>>0>(c[(c[(f+1072|0)>>2]|0)+72>>2]|0)>>>0){break}if((c[(f+1168|0)>>2]|0)!=(c[(f+1196|0)>>2]|0)){break c}if((c[(f+1192|0)>>2]|0)==(c[(c[(f+1072|0)>>2]|0)+72>>2]|0)){break c}}}while(0);c[(f+1312|0)>>2]=dq(69960)|0;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}}while(0);if((e[(c[(f+1072|0)>>2]|0)+22>>1]|0)<=(c[(f+1076|0)>>2]|0)){l=c[(f+1144|0)>>2]|0;if((a[(c[(f+1316|0)>>2]|0)+1>>0]|0)==-8){Vt(l,c[(c[(f+1316|0)>>2]|0)+16>>2]|0,2048);break}else{b[(c[(f+1144|0)>>2]|0)+28>>1]=e[l+28>>1]&-16896|1;break}}}if((c[(c[(f+1072|0)>>2]|0)+76>>2]|0)>>>0>=(c[(c[(f+1132|0)>>2]|0)+((c[(f+1076|0)>>2]|0)+1<<2)>>2]|0)>>>0){if((b[(c[(f+1144|0)>>2]|0)+28>>1]&9312|0)!=0){te(c[(f+1144|0)>>2]|0)}zD((c[(c[(f+1072|0)>>2]|0)+84>>2]|0)+(c[(c[(f+1132|0)>>2]|0)+(c[(f+1076|0)>>2]<<2)>>2]|0)|0,c[(c[(f+1092|0)>>2]|0)+(c[(f+1076|0)>>2]<<2)>>2]|0,c[(f+1144|0)>>2]|0)|0}else{c[(f+1180|0)>>2]=c[(c[(f+1092|0)>>2]|0)+(c[(f+1076|0)>>2]<<2)>>2];do{if((a[(c[(f+1316|0)>>2]|0)+3>>0]&192|0)!=0){if((c[(f+1180|0)>>2]|0)>>>0>=12){if((c[(f+1180|0)>>2]&1|0)==0){i=329;break}}if((a[(c[(f+1316|0)>>2]|0)+3>>0]&128|0)!=0){i=329}else{i=328}}else{i=328}}while(0);if((i|0)==328){i=0;n=yD(c[(f+1180|0)>>2]|0)|0;c[(f+1136|0)>>2]=n;if((n|0)==0){i=329}else{g=(f+296|0)+0|0;h=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));rF(f+296|0,c[(f+1144|0)>>2]|0);c[(f+1312|0)>>2]=SF(c[(f+1068|0)>>2]|0,c[(c[(f+1132|0)>>2]|0)+(c[(f+1076|0)>>2]<<2)>>2]|0,c[(f+1136|0)>>2]|0,(((d[(c[(f+1072|0)>>2]|0)+28>>0]|0)>>>2&1|0)!=0^1)&1,f+296|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4856>>2]=2;c[f+4860>>2]=66;break a}c[(f+1148|0)>>2]=c[(f+296|0)+4>>2]}}if((i|0)==329){i=0;if((c[(f+1180|0)>>2]|0)>>>0<=13){l=f+168|0}else{l=0}c[(f+1148|0)>>2]=l;c[(f+296|0)+36>>2]=0}zD(c[(f+1148|0)>>2]|0,c[(f+1180|0)>>2]|0,c[(f+1144|0)>>2]|0)|0;if((c[(f+296|0)+36>>2]|0)!=0){n=(c[(f+1144|0)>>2]|0)+28|0;b[n>>1]=e[n>>1]&-6145;n=(c[(f+1144|0)>>2]|0)+28|0;b[n>>1]=e[n>>1]|512;c[(c[(f+1144|0)>>2]|0)+4>>2]=c[(f+296|0)+4>>2];c[(c[(f+1144|0)>>2]|0)+36>>2]=c[(f+296|0)+36>>2]}}a[(c[(f+1144|0)>>2]|0)+30>>0]=a[(f+1581|0)>>0]|0}}while(0);if((b[(c[(f+1144|0)>>2]|0)+28>>1]&4096|0)!=0){if((ur(c[(f+1144|0)>>2]|0)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}}break};case 19:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);k=c[(f+1276|0)>>2]|0;if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)!=0){be(k);c[f+4856>>2]=2;c[f+4860>>2]=66;break a}else{n=Pd(c[(f+1288|0)>>2]|0)|0;n=(((n|0)!=0|(D|0)!=0)^1)&1;_d(k,n,((n|0)<0)<<31>>31);c[f+4856>>2]=2;c[f+4860>>2]=66;break a}};case 77:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)==0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 43:{k=c[(f+1316|0)>>2]|0;if((a[(c[(c[(f+1328|0)>>2]|0)+200>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]|0)>>0]|0)!=0){c[(f+1324|0)>>2]=(c[k+8>>2]|0)-1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}else{a[(c[(c[(f+1328|0)>>2]|0)+200>>2]|0)+(c[k+4>>2]|0)>>0]=1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}};case 76:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 49:{c[(f+1496|0)>>2]=c[c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2]>>2];c[(f+368|0)>>2]=0;c[(f+368|0)+4>>2]=0;c[(f+1312|0)>>2]=WF(c[(f+1496|0)>>2]|0,f+368|0)|0;m=c[(f+368|0)+4>>2]|0;n=(c[(f+1276|0)>>2]|0)+16|0;c[n>>2]=c[(f+368|0)>>2];c[n+4>>2]=m;break};default:{j=1}}}if(j){j=0;switch(k|0){case 2:{c[(f+1528|0)>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+1564|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];if((c[(f+1528|0)>>2]|0)==0){if((c[(c[(f+1308|0)>>2]|0)+148>>2]|0)>0){$t((c[(f+1328|0)>>2]|0)+44|0,c[(f+1308|0)>>2]|0,37920,f+336|0);c[(f+1312|0)>>2]=5;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}c[(f+1560|0)>>2]=Ub(c[(f+1564|0)>>2]|0)|0;c[(f+1312|0)>>2]=XF(c[(f+1308|0)>>2]|0,0,(c[(c[(f+1308|0)>>2]|0)+492>>2]|0)+(c[(c[(f+1308|0)>>2]|0)+488>>2]|0)|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4856>>2]=2;c[f+4860>>2]=67;break a}c[(f+1556|0)>>2]=$e(c[(f+1308|0)>>2]|0,33+(c[(f+1560|0)>>2]|0)|0)|0;if((c[(f+1556|0)>>2]|0)==0){c[f+4856>>2]=2;c[f+4860>>2]=66;break a}c[c[(f+1556|0)>>2]>>2]=(c[(f+1556|0)>>2]|0)+32;fL(c[c[(f+1556|0)>>2]>>2]|0,c[(f+1564|0)>>2]|0,(c[(f+1560|0)>>2]|0)+1|0)|0;k=c[(f+1308|0)>>2]|0;if((a[(c[(f+1308|0)>>2]|0)+62>>0]|0)!=0){a[k+62>>0]=0;a[(c[(f+1308|0)>>2]|0)+69>>0]=1}else{c[(k+488|0)>>2]=(c[(k+488|0)>>2]|0)+1}c[(c[(f+1556|0)>>2]|0)+24>>2]=c[(c[(f+1308|0)>>2]|0)+480>>2];c[(c[(f+1308|0)>>2]|0)+480>>2]=c[(f+1556|0)>>2];n=(c[(f+1308|0)>>2]|0)+496|0;m=c[n+4>>2]|0;l=(c[(f+1556|0)>>2]|0)+8|0;c[l>>2]=c[n>>2];c[l+4>>2]=m;l=(c[(f+1308|0)>>2]|0)+504|0;m=c[l+4>>2]|0;n=(c[(f+1556|0)>>2]|0)+16|0;c[n>>2]=c[l>>2];c[n+4>>2]=m;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}c[(f+1548|0)>>2]=0;c[(f+1552|0)>>2]=c[(c[(f+1308|0)>>2]|0)+480>>2];while(1){if((c[(f+1552|0)>>2]|0)==0){break}if((Dc(c[c[(f+1552|0)>>2]>>2]|0,c[(f+1564|0)>>2]|0)|0)==0){break}c[(f+1548|0)>>2]=(c[(f+1548|0)>>2]|0)+1;c[(f+1552|0)>>2]=c[(c[(f+1552|0)>>2]|0)+24>>2]}if((c[(f+1552|0)>>2]|0)==0){m=(c[(f+1328|0)>>2]|0)+44|0;n=c[(f+1308|0)>>2]|0;c[(f+336|0)>>2]=c[(f+1564|0)>>2];$t(m,n,37976,f+336|0);c[(f+1312|0)>>2]=1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}if((c[(c[(f+1308|0)>>2]|0)+148>>2]|0)>0){if((c[(f+1528|0)>>2]|0)==1){$t((c[(f+1328|0)>>2]|0)+44|0,c[(f+1308|0)>>2]|0,38e3,f+336|0);c[(f+1312|0)>>2]=5;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}}if((c[(c[(f+1552|0)>>2]|0)+24>>2]|0)==0){l=(d[(c[(f+1308|0)>>2]|0)+69>>0]|0)!=0}else{l=0}c[(f+1536|0)>>2]=l&1;if((c[(f+1536|0)>>2]|0)!=0){if((c[(f+1528|0)>>2]|0)==1){n=FF(c[(f+1328|0)>>2]|0,1)|0;c[(f+1312|0)>>2]=n;if((n|0)!=0){i=898;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}a[(c[(f+1308|0)>>2]|0)+62>>0]=1;if((DF(c[(f+1328|0)>>2]|0)|0)==5){i=395;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}a[(c[(f+1308|0)>>2]|0)+69>>0]=0;c[(f+1312|0)>>2]=c[(c[(f+1328|0)>>2]|0)+80>>2]}else{i=397}}else{i=397}if((i|0)==397){i=0;c[(f+1548|0)>>2]=(c[(c[(f+1308|0)>>2]|0)+488>>2]|0)-(c[(f+1548|0)>>2]|0)-1;d:do{if((c[(f+1528|0)>>2]|0)==2){c[(f+1540|0)>>2]=0;while(1){if((c[(f+1540|0)>>2]|0)>=(c[(c[(f+1308|0)>>2]|0)+20>>2]|0)){break d}YF(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(f+1540|0)>>2]<<4)+4>>2]|0,4);c[(f+1540|0)>>2]=(c[(f+1540|0)>>2]|0)+1}}}while(0);c[(f+1540|0)>>2]=0;while(1){if((c[(f+1540|0)>>2]|0)>=(c[(c[(f+1308|0)>>2]|0)+20>>2]|0)){break}c[(f+1312|0)>>2]=ZF(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(f+1540|0)>>2]<<4)+4>>2]|0,c[(f+1528|0)>>2]|0,c[(f+1548|0)>>2]|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4856>>2]=2;c[f+4860>>2]=67;break a}c[(f+1540|0)>>2]=(c[(f+1540|0)>>2]|0)+1}if((c[(f+1528|0)>>2]|0)==2){if((c[(c[(f+1308|0)>>2]|0)+24>>2]&2|0)!=0){yf(c[(f+1308|0)>>2]|0);hd(c[(f+1308|0)>>2]|0);c[(c[(f+1308|0)>>2]|0)+24>>2]=c[(c[(f+1308|0)>>2]|0)+24>>2]|2}}}while(1){if((c[(c[(f+1308|0)>>2]|0)+480>>2]|0)==(c[(f+1552|0)>>2]|0)){break}c[(f+1544|0)>>2]=c[(c[(f+1308|0)>>2]|0)+480>>2];c[(c[(f+1308|0)>>2]|0)+480>>2]=c[(c[(f+1544|0)>>2]|0)+24>>2];cc(c[(f+1308|0)>>2]|0,c[(f+1544|0)>>2]|0);n=(c[(f+1308|0)>>2]|0)+488|0;c[n>>2]=(c[n>>2]|0)+ -1}l=c[(f+1552|0)>>2]|0;if((c[(f+1528|0)>>2]|0)==1){c[(c[(f+1308|0)>>2]|0)+480>>2]=c[l+24>>2];cc(c[(f+1308|0)>>2]|0,c[(f+1552|0)>>2]|0);if((c[(f+1536|0)>>2]|0)==0){n=(c[(f+1308|0)>>2]|0)+488|0;c[n>>2]=(c[n>>2]|0)+ -1}}else{n=c[(l+8|0)+4>>2]|0;m=(c[(f+1308|0)>>2]|0)+496|0;c[m>>2]=c[(l+8|0)>>2];c[m+4>>2]=n;l=(c[(f+1552|0)>>2]|0)+16|0;m=c[l+4>>2]|0;n=(c[(f+1308|0)>>2]|0)+504|0;c[n>>2]=c[l>>2];c[n+4>>2]=m}if((c[(f+1536|0)>>2]|0)==0){c[(f+1312|0)>>2]=XF(c[(f+1308|0)>>2]|0,c[(f+1528|0)>>2]|0,c[(f+1548|0)>>2]|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4856>>2]=2;c[f+4860>>2]=67;break a}}break};case 47:{c[(f+1172|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);while(1){n=c[(f+1172|0)>>2]|0;c[(f+1172|0)>>2]=n+1;n=a[n>>0]|0;a[(f+1778|0)>>0]=n;if((n<<24>>24|0)==0){c[f+4856>>2]=2;c[f+4860>>2]=66;break a}rw(c[(f+1288|0)>>2]|0,a[(f+1778|0)>>0]|0,a[(f+1581|0)>>0]|0);c[(f+1288|0)>>2]=(c[(f+1288|0)>>2]|0)+40}};case 48:{c[(f+352|0)>>2]=0;c[(f+352|0)+4>>2]=0;c[(f+1156|0)>>2]=0;c[(f+1152|0)>>2]=0;c[(f+1504|0)>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+1500|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];c[(f+1512|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(f+1504|0)>>2]|0)*40|0);c[(f+1504|0)>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];c[(f+1508|0)>>2]=(c[(f+1512|0)>>2]|0)+(((c[(f+1504|0)>>2]|0)-1|0)*40|0);c[(f+1492|0)>>2]=d[(c[(f+1328|0)>>2]|0)+87>>0]|0;c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);if((c[(f+1500|0)>>2]|0)!=0){c[(f+1160|0)>>2]=c[(f+1512|0)>>2];do{m=c[(f+1160|0)>>2]|0;c[(f+1160|0)>>2]=m+40;n=c[(f+1500|0)>>2]|0;c[(f+1500|0)>>2]=n+1;rw(m,a[n>>0]|0,a[(f+1581|0)>>0]|0)}while((a[c[(f+1500|0)>>2]>>0]|0)!=0)}c[(f+1160|0)>>2]=c[(f+1508|0)>>2];do{c[(f+1516|0)>>2]=TF(c[(f+1160|0)>>2]|0,c[(f+1492|0)>>2]|0)|0;c[(f+1480|0)>>2]=yD(c[(f+1516|0)>>2]|0)|0;do{if((b[(c[(f+1160|0)>>2]|0)+28>>1]&16384|0)!=0){l=c[(f+1160|0)>>2]|0;if((c[(f+352|0)>>2]|0)!=0|(c[(f+352|0)+4>>2]|0)!=0){Id(l)|0;break}else{c[(f+1152|0)>>2]=(c[(f+1152|0)>>2]|0)+(c[l+16>>2]|0);c[(f+1480|0)>>2]=(c[(f+1480|0)>>2]|0)-(c[(c[(f+1160|0)>>2]|0)+16>>2]|0);break}}}while(0);n=c[(f+1480|0)>>2]|0;n=dL(c[(f+352|0)>>2]|0,c[(f+352|0)+4>>2]|0,n|0,((n|0)<0)<<31>>31|0)|0;c[(f+352|0)>>2]=n;c[(f+352|0)+4>>2]=D;if((c[(f+1516|0)>>2]|0)>>>0<=127){l=1}else{l=BD(c[(f+1516|0)>>2]|0,0)|0}c[(f+1156|0)>>2]=(c[(f+1156|0)>>2]|0)+l;n=(c[(f+1160|0)>>2]|0)+ -40|0;c[(f+1160|0)>>2]=n}while(n>>>0>=(c[(f+1512|0)>>2]|0)>>>0);l=c[(f+1156|0)>>2]|0;if((c[(f+1156|0)>>2]|0)<=126){c[(f+1156|0)>>2]=l+1}else{c[(f+1520|0)>>2]=BD(l,((l|0)<0)<<31>>31)|0;c[(f+1156|0)>>2]=(c[(f+1156|0)>>2]|0)+(c[(f+1520|0)>>2]|0);m=c[(f+1520|0)>>2]|0;n=c[(f+1156|0)>>2]|0;if((m|0)<(BD(n,((n|0)<0)<<31>>31)|0)){c[(f+1156|0)>>2]=(c[(f+1156|0)>>2]|0)+1}}m=c[(f+1156|0)>>2]|0;m=dL(m|0,((m|0)<0)<<31>>31|0,c[(f+352|0)>>2]|0,c[(f+352|0)+4>>2]|0)|0;c[(f+360|0)>>2]=m;c[(f+360|0)+4>>2]=D;m=c[(f+360|0)+4>>2]|0;n=c[(c[(f+1308|0)>>2]|0)+88>>2]|0;if((m|0)>(((n|0)<0)<<31>>31|0)|((m|0)==(((n|0)<0)<<31>>31|0)?(c[(f+360|0)>>2]|0)>>>0>n>>>0:0)){i=899;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}if((ue(c[(f+1276|0)>>2]|0,c[(f+360|0)>>2]|0,0)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}c[(f+1164|0)>>2]=c[(c[(f+1276|0)>>2]|0)+4>>2];if((c[(f+1156|0)>>2]|0)>>>0<128){a[c[(f+1164|0)>>2]>>0]=c[(f+1156|0)>>2];l=1}else{l=UF(c[(f+1164|0)>>2]|0,c[(f+1156|0)>>2]|0)|0}c[(f+1488|0)>>2]=l&255;c[(f+1484|0)>>2]=c[(f+1156|0)>>2];c[(f+1160|0)>>2]=c[(f+1512|0)>>2];do{c[(f+1516|0)>>2]=TF(c[(f+1160|0)>>2]|0,c[(f+1492|0)>>2]|0)|0;if((c[(f+1516|0)>>2]|0)>>>0<128){a[(c[(f+1164|0)>>2]|0)+(c[(f+1488|0)>>2]|0)>>0]=c[(f+1516|0)>>2];l=1}else{l=UF((c[(f+1164|0)>>2]|0)+(c[(f+1488|0)>>2]|0)|0,c[(f+1516|0)>>2]|0)|0}c[(f+1488|0)>>2]=(c[(f+1488|0)>>2]|0)+(l&255);n=VF((c[(f+1164|0)>>2]|0)+(c[(f+1484|0)>>2]|0)|0,c[(f+1160|0)>>2]|0,c[(f+1516|0)>>2]|0)|0;c[(f+1484|0)>>2]=(c[(f+1484|0)>>2]|0)+n;n=(c[(f+1160|0)>>2]|0)+40|0;c[(f+1160|0)>>2]=n}while(n>>>0<=(c[(f+1508|0)>>2]|0)>>>0);c[(c[(f+1276|0)>>2]|0)+24>>2]=c[(f+360|0)>>2];b[(c[(f+1276|0)>>2]|0)+28>>1]=16;c[(c[(f+1276|0)>>2]|0)+32>>2]=0;if((c[(f+1152|0)>>2]|0)!=0){c[(c[(f+1276|0)>>2]|0)+16>>2]=c[(f+1152|0)>>2];n=(c[(f+1276|0)>>2]|0)+28|0;b[n>>1]=e[n>>1]|16384}a[(c[(f+1276|0)>>2]|0)+30>>0]=1;break};case 3:{c[(f+1468|0)>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+1396|0)>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];if((c[(f+1468|0)>>2]|0)!=0){l=(a[(c[(f+1308|0)>>2]|0)+62>>0]|0)!=0^1}else{l=0}c[(f+1392|0)>>2]=l&1;if((c[(f+1392|0)>>2]|0)!=0){if((c[(f+1396|0)>>2]|0)==0){if((c[(c[(f+1308|0)>>2]|0)+148>>2]|0)>0){$t((c[(f+1328|0)>>2]|0)+44|0,c[(f+1308|0)>>2]|0,38056,f+336|0);c[(f+1312|0)>>2]=5;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}}}if((c[(f+1468|0)>>2]|0)!=(d[(c[(f+1308|0)>>2]|0)+62>>0]|0)){i=423;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}if((c[(f+1468|0)>>2]|0)!=0){l=(c[(f+1396|0)>>2]|0)!=0?38160:38208}else{l=38112}$t((c[(f+1328|0)>>2]|0)+44|0,c[(f+1308|0)>>2]|0,l,f+336|0);c[(f+1312|0)>>2]=1;break};case 57:{c[(f+1448|0)>>2]=$F(c[(f+1328|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+12>>2]|0,-1,0)|0;if((c[(f+1448|0)>>2]|0)==0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}a[(c[(f+1448|0)>>2]|0)+25>>0]=1;c[(c[(f+1448|0)>>2]|0)+16>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];n=(c[(f+1448|0)>>2]|0)+28|0;a[n>>0]=a[n>>0]&-5|4;break};default:{j=1}}}if(j){j=0;switch(k|0){case 4:{if((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)!=0){if((c[(c[(f+1308|0)>>2]|0)+24>>2]&33554432|0)!=0){i=436;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}}c[(f+1388|0)>>2]=c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4)+4>>2];if((c[(f+1388|0)>>2]|0)!=0){c[(f+1312|0)>>2]=Wc(c[(f+1388|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+8>>2]|0)|0;if((c[(f+1312|0)>>2]|0)==5){i=439;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}if((c[(f+1312|0)>>2]|0)!=0){c[f+4856>>2]=2;c[f+4860>>2]=67;break a}do{if((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)!=0){if(((e[(c[(f+1328|0)>>2]|0)+88>>1]|0)>>>7&1|0)!=0){if((d[(c[(f+1308|0)>>2]|0)+62>>0]|0)!=0){if((c[(c[(f+1308|0)>>2]|0)+144>>2]|0)<=1){break}}if((c[(c[(f+1328|0)>>2]|0)+104>>2]|0)==0){n=(c[(f+1308|0)>>2]|0)+492|0;c[n>>2]=(c[n>>2]|0)+1;c[(c[(f+1328|0)>>2]|0)+104>>2]=(c[(c[(f+1308|0)>>2]|0)+488>>2]|0)+(c[(c[(f+1308|0)>>2]|0)+492>>2]|0)}c[(f+1312|0)>>2]=XF(c[(f+1308|0)>>2]|0,0,(c[(c[(f+1328|0)>>2]|0)+104>>2]|0)-1|0)|0;if((c[(f+1312|0)>>2]|0)==0){c[(f+1312|0)>>2]=_F(c[(f+1388|0)>>2]|0,c[(c[(f+1328|0)>>2]|0)+104>>2]|0)|0}n=(c[(f+1308|0)>>2]|0)+496|0;m=c[n+4>>2]|0;l=(c[(f+1328|0)>>2]|0)+152|0;c[l>>2]=c[n>>2];c[l+4>>2]=m;l=(c[(f+1308|0)>>2]|0)+504|0;m=c[l+4>>2]|0;n=(c[(f+1328|0)>>2]|0)+160|0;c[n>>2]=c[l>>2];c[n+4>>2]=m}}}while(0);Xc(c[(f+1388|0)>>2]|0,1,f+1384|0);c[(f+1352|0)>>2]=c[(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4)+12>>2]|0)+4>>2]}else{c[(f+1384|0)>>2]=0;c[(f+1352|0)>>2]=0}if((d[(c[(f+1316|0)>>2]|0)+3>>0]|0)!=0){if((c[(f+1384|0)>>2]|0)==(c[(c[(f+1316|0)>>2]|0)+12>>2]|0)){if((c[(f+1352|0)>>2]|0)==(c[(c[(f+1316|0)>>2]|0)+16>>2]|0)){c[f+4856>>2]=2;c[f+4860>>2]=66;break a}}cc(c[(f+1308|0)>>2]|0,c[(c[(f+1328|0)>>2]|0)+44>>2]|0);n=pe(c[(f+1308|0)>>2]|0,12256)|0;c[(c[(f+1328|0)>>2]|0)+44>>2]=n;if((c[c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4)+12>>2]>>2]|0)!=(c[(f+1384|0)>>2]|0)){Hy(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0)}n=(c[(f+1328|0)>>2]|0)+88|0;b[n>>1]=b[n>>1]&-33|32;c[(f+1312|0)>>2]=17}break};case 53:case 52:{if(((e[(c[(f+1328|0)>>2]|0)+88>>1]|0)>>>5&1|0)!=0){c[(f+1312|0)>>2]=4;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}c[(f+1356|0)>>2]=0;c[(f+1404|0)>>2]=0;c[(f+1408|0)>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];c[(f+1412|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2];c[(f+1428|0)>>2]=(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(f+1412|0)>>2]<<4);c[(f+1420|0)>>2]=c[(c[(f+1428|0)>>2]|0)+4>>2];if((d[c[(f+1316|0)>>2]>>0]|0)==53){c[(f+1416|0)>>2]=1;if((d[(c[(c[(f+1428|0)>>2]|0)+12>>2]|0)+76>>0]|0)<(d[(c[(f+1328|0)>>2]|0)+87>>0]|0)){a[(c[(f+1328|0)>>2]|0)+87>>0]=a[(c[(c[(f+1428|0)>>2]|0)+12>>2]|0)+76>>0]|0}}else{c[(f+1416|0)>>2]=0}if((a[(c[(f+1316|0)>>2]|0)+3>>0]&2|0)!=0){c[(f+1284|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(f+1408|0)>>2]|0)*40|0);MF(c[(f+1284|0)>>2]|0)|0;c[(f+1408|0)>>2]=c[(c[(f+1284|0)>>2]|0)+16>>2];if((c[(f+1408|0)>>2]|0)<2){i=473;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}}k=c[(f+1316|0)>>2]|0;if((a[(c[(f+1316|0)>>2]|0)+1>>0]|0)==-6){c[(f+1404|0)>>2]=c[k+16>>2];c[(f+1356|0)>>2]=(e[(c[(f+1404|0)>>2]|0)+6>>1]|0)+(e[(c[(f+1404|0)>>2]|0)+8>>1]|0)}else{if((a[k+1>>0]|0)==-14){c[(f+1356|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2]}}c[(f+1424|0)>>2]=$F(c[(f+1328|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(f+1356|0)>>2]|0,c[(f+1412|0)>>2]|0,1)|0;if((c[(f+1424|0)>>2]|0)==0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}a[(c[(f+1424|0)>>2]|0)+25>>0]=1;n=(c[(f+1424|0)>>2]|0)+28|0;a[n>>0]=a[n>>0]&-9|8;c[(f+1312|0)>>2]=aG(c[(f+1420|0)>>2]|0,c[(f+1408|0)>>2]|0,c[(f+1416|0)>>2]|0,c[(f+1404|0)>>2]|0,c[c[(f+1424|0)>>2]>>2]|0)|0;c[(c[(f+1424|0)>>2]|0)+8>>2]=c[(f+1404|0)>>2];bG(c[c[(f+1424|0)>>2]>>2]|0,a[(c[(f+1316|0)>>2]|0)+3>>0]&1);n=(c[(f+1424|0)>>2]|0)+28|0;a[n>>0]=a[n>>0]&-5|((a[(c[(f+1316|0)>>2]|0)+1>>0]|0)!=-6&1)<<2&255;break};case 50:{c[(f+1344|0)>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+1340|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2];Xc(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(f+1344|0)>>2]<<4)+4>>2]|0,c[(f+1340|0)>>2]|0,f+1348|0);m=c[(f+1348|0)>>2]|0;n=(c[(f+1276|0)>>2]|0)+16|0;c[n>>2]=m;c[n+4>>2]=((m|0)<0)<<31>>31;break};case 55:case 54:{c[(f+1432|0)>>2]=$F(c[(f+1328|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+8>>2]|0,-1,1)|0;if((c[(f+1432|0)>>2]|0)==0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}a[(c[(f+1432|0)>>2]|0)+25>>0]=1;n=(c[(f+1432|0)>>2]|0)+28|0;a[n>>0]=a[n>>0]&-2|1;c[(f+1312|0)>>2]=Ph(c[c[(f+1308|0)>>2]>>2]|0,0,c[(f+1308|0)>>2]|0,(c[(f+1432|0)>>2]|0)+4|0,5|d[(c[(f+1316|0)>>2]|0)+3>>0],1054)|0;if((c[(f+1312|0)>>2]|0)==0){c[(f+1312|0)>>2]=Wc(c[(c[(f+1432|0)>>2]|0)+4>>2]|0,1)|0}do{if((c[(f+1312|0)>>2]|0)==0){n=c[(c[(f+1316|0)>>2]|0)+16>>2]|0;c[(f+1436|0)>>2]=n;k=c[(c[(f+1432|0)>>2]|0)+4>>2]|0;if((n|0)==0){c[(f+1312|0)>>2]=aG(k,1,1,0,c[c[(f+1432|0)>>2]>>2]|0)|0;n=(c[(f+1432|0)>>2]|0)+28|0;a[n>>0]=a[n>>0]&-5|4;break}c[(f+1312|0)>>2]=cG(k,f+1440|0,2|d[(c[(f+1316|0)>>2]|0)+3>>0])|0;if((c[(f+1312|0)>>2]|0)==0){c[(c[(f+1432|0)>>2]|0)+8>>2]=c[(f+1436|0)>>2];c[(f+1312|0)>>2]=aG(c[(c[(f+1432|0)>>2]|0)+4>>2]|0,c[(f+1440|0)>>2]|0,1,c[(f+1436|0)>>2]|0,c[c[(f+1432|0)>>2]>>2]|0)|0}n=(c[(f+1432|0)>>2]|0)+28|0;a[n>>0]=a[n>>0]&-5}}while(0);n=(c[(f+1432|0)>>2]|0)+28|0;a[n>>0]=a[n>>0]&-9|((d[(c[(f+1316|0)>>2]|0)+3>>0]|0)!=8&1)<<3&255;break};case 51:{c[(f+1336|0)>>2]=(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4);c[(f+1280|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);MF(c[(f+1280|0)>>2]|0)|0;c[(f+1312|0)>>2]=gd(c[(c[(f+1336|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+8>>2]|0,c[(c[(f+1280|0)>>2]|0)+16>>2]|0)|0;if((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)==1){c[c[(c[(f+1336|0)>>2]|0)+12>>2]>>2]=c[(c[(f+1280|0)>>2]|0)+16>>2];n=(c[(f+1308|0)>>2]|0)+24|0;c[n>>2]=c[n>>2]|2}else{if((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)==2){a[(c[(c[(f+1336|0)>>2]|0)+12>>2]|0)+76>>0]=c[(c[(f+1280|0)>>2]|0)+16>>2]}}if((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)==1){yf(c[(f+1308|0)>>2]|0);n=(c[(f+1328|0)>>2]|0)+88|0;b[n>>1]=b[n>>1]&-33}break};case 56:{c[(f+1444|0)>>2]=$F(c[(f+1328|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+8>>2]|0,-1,1)|0;if((c[(f+1444|0)>>2]|0)==0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}c[(c[(f+1444|0)>>2]|0)+8>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];c[(f+1312|0)>>2]=dG(c[(f+1308|0)>>2]|0,c[(f+1444|0)>>2]|0)|0;break};default:{}}}}while(0);c[f+4792>>2]=g;c[f+4800>>2]=i;c[f+4824>>2]=h;c[f+4840>>2]=j}function _sqlite3VdbeExec$1(f){f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;g=c[f+4792>>2]|0;j=c[f+4800>>2]|0;i=c[f+4824>>2]|0;k=c[f+4840>>2]|0;l=c[f+4848>>2]|0;a:do{if(k){k=0;switch(l|0){case 67:{c[(f+1280|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+724|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+728|0)>>2]=c[c[(f+724|0)>>2]>>2];c[(f+732|0)>>2]=0;n=(c[(f+1280|0)>>2]|0)+16|0;m=c[n+4>>2]|0;c[(f+424|0)>>2]=c[n>>2];c[(f+424|0)+4>>2]=m;c[(f+1312|0)>>2]=jD(c[(f+728|0)>>2]|0,0,c[(f+424|0)>>2]|0,c[(f+424|0)+4>>2]|0,0,f+732|0)|0;m=(c[(f+1280|0)>>2]|0)+16|0;n=c[m+4>>2]|0;o=(c[(f+724|0)>>2]|0)+56|0;c[o>>2]=c[m>>2];c[o+4>>2]=n;a[(c[(f+724|0)>>2]|0)+26>>0]=(c[(f+732|0)>>2]|0)==0?1:0;a[(c[(f+724|0)>>2]|0)+25>>0]=0;c[(c[(f+724|0)>>2]|0)+68>>2]=0;a[(c[(f+724|0)>>2]|0)+27>>0]=0;if((c[(f+732|0)>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}c[(c[(f+724|0)>>2]|0)+12>>2]=c[(f+732|0)>>2];break};case 68:{o=(c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2]|0)+40|0;m=c[o>>2]|0;n=c[o+4>>2]|0;p=dL(m|0,n|0,1,0)|0;c[o>>2]=p;c[o+4>>2]=D;o=(c[(f+1276|0)>>2]|0)+16|0;c[o>>2]=m;c[o+4>>2]=n;break};case 107:case 106:{c[(f+476|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+1284|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(f+480|0)>>2]=c[c[(f+476|0)>>2]>>2];if((a[(c[(f+1316|0)>>2]|0)+3>>0]&1|0)!=0){p=(c[(f+1328|0)>>2]|0)+92|0;c[p>>2]=(c[p>>2]|0)+1}if((b[(c[(f+1284|0)>>2]|0)+28>>1]&16384|0)!=0){m=Id(c[(f+1284|0)>>2]|0)|0}else{m=0}c[(f+1312|0)>>2]=m;if((c[(f+1312|0)>>2]|0)==0){if((c[(c[(f+476|0)>>2]|0)+64>>2]|0)!=0){c[(f+1312|0)>>2]=pG(c[(f+1308|0)>>2]|0,c[(f+476|0)>>2]|0,c[(f+1284|0)>>2]|0)|0;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}c[(f+484|0)>>2]=c[(c[(f+1284|0)>>2]|0)+24>>2];c[(f+488|0)>>2]=c[(c[(f+1284|0)>>2]|0)+4>>2];m=c[(f+484|0)>>2]|0;if((a[(c[(f+1316|0)>>2]|0)+3>>0]&16|0)!=0){n=c[(c[(f+476|0)>>2]|0)+12>>2]|0}else{n=0}c[(f+1312|0)>>2]=hG(c[(f+480|0)>>2]|0,c[(f+488|0)>>2]|0,m,((m|0)<0)<<31>>31,1784,0,0,c[(c[(f+1316|0)>>2]|0)+12>>2]|0,n)|0;c[(c[(f+476|0)>>2]|0)+68>>2]=0}break};case 99:case 98:{c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(f+636|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+632|0)>>2]=c[c[(f+636|0)>>2]>>2];c[(f+1312|0)>>2]=OF(c[(f+636|0)>>2]|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4864>>2]=2;c[f+4868>>2]=50;break a}m=c[(f+632|0)>>2]|0;if(((d[(c[(f+636|0)>>2]|0)+28>>0]|0)>>>2&1|0)==0){kF(m,f+392|0)|0;o=c[(f+392|0)+4>>2]|0;p=c[(c[(f+1308|0)>>2]|0)+88>>2]|0;if((o|0)>(((p|0)<0)<<31>>31|0)|((o|0)==(((p|0)<0)<<31>>31|0)?(c[(f+392|0)>>2]|0)>>>0>p>>>0:0)){j=899;c[f+4864>>2]=2;c[f+4868>>2]=50;break a}c[(f+628|0)>>2]=c[(f+392|0)>>2]}else{QF(m,f+628|0)|0;if((c[(f+628|0)>>2]|0)>>>0>(c[(c[(f+1308|0)>>2]|0)+88>>2]|0)>>>0){j=899;c[f+4864>>2]=2;c[f+4868>>2]=50;break a}}if((ue(c[(f+1276|0)>>2]|0,c[(f+628|0)>>2]|0,0)|0)!=0){j=900;c[f+4864>>2]=2;c[f+4868>>2]=49;break a}c[(c[(f+1276|0)>>2]|0)+24>>2]=c[(f+628|0)>>2];b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|16;m=c[(f+632|0)>>2]|0;n=c[(f+628|0)>>2]|0;o=c[(c[(f+1276|0)>>2]|0)+4>>2]|0;if(((d[(c[(f+636|0)>>2]|0)+28>>0]|0)>>>2&1|0)==0){c[(f+1312|0)>>2]=lF(m,0,n,o)|0}else{c[(f+1312|0)>>2]=vf(m,0,n,o)|0}a[(c[(f+1276|0)>>2]|0)+30>>0]=1;break};case 84:{c[(f+652|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+1280|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+644|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];c[(f+1312|0)>>2]=jG(c[(f+652|0)>>2]|0,c[(f+1280|0)>>2]|0,c[(f+644|0)>>2]|0,f+648|0)|0;if((c[(f+648|0)>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 100:{c[(f+624|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];if((a[(c[(f+624|0)>>2]|0)+25>>0]|0)!=0){b[(c[(f+1276|0)>>2]|0)+28>>1]=1;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}m=c[(f+624|0)>>2]|0;do{if((a[(c[(f+624|0)>>2]|0)+27>>0]|0)!=0){p=c[(m+48|0)+4>>2]|0;c[(f+384|0)>>2]=c[(m+48|0)>>2];c[(f+384|0)+4>>2]=p}else{n=c[(f+624|0)>>2]|0;if((c[m+32>>2]|0)!=0){c[(f+516|0)>>2]=c[c[n+32>>2]>>2];c[(f+508|0)>>2]=c[c[(f+516|0)>>2]>>2];c[(f+1312|0)>>2]=zb[c[(c[(f+508|0)>>2]|0)+48>>2]&127](c[(c[(f+624|0)>>2]|0)+32>>2]|0,f+384|0)|0;lG(c[(f+1328|0)>>2]|0,c[(f+516|0)>>2]|0);break}c[(f+1312|0)>>2]=OF(n)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4864>>2]=2;c[f+4868>>2]=50;break a}m=c[(f+624|0)>>2]|0;if((a[(c[(f+624|0)>>2]|0)+26>>0]|0)!=0){p=c[(m+56|0)+4>>2]|0;c[(f+384|0)>>2]=c[(m+56|0)>>2];c[(f+384|0)+4>>2]=p;break}else{c[(f+1312|0)>>2]=kF(c[m>>2]|0,f+384|0)|0;break}}}while(0);o=c[(f+384|0)+4>>2]|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=c[(f+384|0)>>2];c[p+4>>2]=o;break};case 102:{c[(f+500|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+496|0)>>2]=c[c[(f+500|0)>>2]>>2];c[(f+492|0)>>2]=0;c[(f+1312|0)>>2]=gG(c[(f+496|0)>>2]|0,f+492|0)|0;a[(c[(f+500|0)>>2]|0)+25>>0]=c[(f+492|0)>>2];a[(c[(f+500|0)>>2]|0)+27>>0]=0;a[(c[(f+500|0)>>2]|0)+26>>0]=0;c[(c[(f+500|0)>>2]|0)+68>>2]=0;if((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)>0){if((c[(f+492|0)>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}}break};case 5:{c[(f+464|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+472|0)>>2]=0;c[(f+1312|0)>>2]=oG(c[(f+1308|0)>>2]|0,c[(f+464|0)>>2]|0,f+472|0)|0;j=654;break};case 104:case 103:{j=(c[(f+1328|0)>>2]|0)+116|0;c[j>>2]=(c[j>>2]|0)+1;j=646;break};case 74:{c[(f+656|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];o=(c[(f+656|0)>>2]|0)+56|0;p=c[o+4>>2]|0;c[(f+400|0)>>2]=c[o>>2];c[(f+400|0)+4>>2]=p;c[(f+1312|0)>>2]=OF(c[(f+656|0)>>2]|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4864>>2]=2;c[f+4868>>2]=50;break a}c[(f+1312|0)>>2]=iG(c[c[(f+656|0)>>2]>>2]|0)|0;c[(c[(f+656|0)>>2]|0)+68>>2]=0;if((c[(f+1312|0)>>2]|0)==0){if((c[(c[(f+1308|0)>>2]|0)+200>>2]|0)!=0){if((c[(c[(f+1316|0)>>2]|0)+16>>2]|0)!=0){if(((d[(c[(f+656|0)>>2]|0)+28>>0]|0)>>>2&1|0)!=0){yb[c[(c[(f+1308|0)>>2]|0)+200>>2]&0](c[(c[(f+1308|0)>>2]|0)+196>>2]|0,9,c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(a[(c[(f+656|0)>>2]|0)+24>>0]<<4)>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0,c[(f+400|0)>>2]|0,c[(f+400|0)+4>>2]|0)}}}}if((c[(c[(f+1316|0)>>2]|0)+8>>2]&1|0)!=0){p=(c[(f+1328|0)>>2]|0)+92|0;c[p>>2]=(c[p>>2]|0)+1}break};case 105:{j=646;break};case 95:{c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(f+640|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+1312|0)>>2]=kG(c[(f+640|0)>>2]|0,c[(f+1276|0)>>2]|0)|0;break};case 75:{BF(c[(f+1308|0)>>2]|0,c[(c[(f+1328|0)>>2]|0)+92>>2]|0);c[(c[(f+1328|0)>>2]|0)+92>>2]=0;break};case 101:{c[(f+504|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];a[(c[(f+504|0)>>2]|0)+25>>0]=1;a[(c[(f+504|0)>>2]|0)+26>>0]=0;c[(c[(f+504|0)>>2]|0)+68>>2]=0;if((c[c[(f+504|0)>>2]>>2]|0)!=0){Fr(c[c[(f+504|0)>>2]>>2]|0)}break};case 7:case 6:{if((c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2]|0)!=0){j=653}break};case 9:case 8:{j=653;break};case 119:{c[(f+776|0)>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+780|0)>>2]=(c[(f+776|0)>>2]|0)==1?21432:21456;c[(f+800|0)>>2]=c[(f+1308|0)>>2];c[(f+800|0)+8>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+800|0)+4>>2]=(c[(f+1328|0)>>2]|0)+44;p=c[(f+1308|0)>>2]|0;n=c[(f+780|0)>>2]|0;o=c[(c[(f+1316|0)>>2]|0)+16>>2]|0;c[(f+336|0)>>2]=c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(f+776|0)>>2]<<4)>>2];c[(f+336|0)+4>>2]=n;c[(f+336|0)+8>>2]=o;c[(f+788|0)>>2]=cf(p,38256,f+336|0)|0;if((c[(f+788|0)>>2]|0)==0){c[(f+1312|0)>>2]=7}else{a[(c[(f+1308|0)>>2]|0)+137>>0]=1;c[(f+800|0)+12>>2]=0;c[(f+1312|0)>>2]=Bf(c[(f+1308|0)>>2]|0,c[(f+788|0)>>2]|0,13,f+800|0,0)|0;if((c[(f+1312|0)>>2]|0)==0){c[(f+1312|0)>>2]=c[(f+800|0)+12>>2]}cc(c[(f+1308|0)>>2]|0,c[(f+788|0)>>2]|0);a[(c[(f+1308|0)>>2]|0)+137>>0]=0}if((c[(f+1312|0)>>2]|0)!=0){hd(c[(f+1308|0)>>2]|0)}if((c[(f+1312|0)>>2]|0)==7){j=900;c[f+4864>>2]=2;c[f+4868>>2]=49;break a}break};case 122:{yG(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0);break};case 109:{c[(f+556|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+552|0)>>2]=c[c[(f+556|0)>>2]>>2];b[(c[(f+1276|0)>>2]|0)+28>>1]=1;c[(f+1312|0)>>2]=OF(c[(f+556|0)>>2]|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4864>>2]=2;c[f+4868>>2]=50;break a}if((a[(c[(f+556|0)>>2]|0)+25>>0]|0)==0){c[(f+376|0)>>2]=0;c[(f+376|0)+4>>2]=0;c[(f+1312|0)>>2]=qG(c[(f+1308|0)>>2]|0,c[(f+552|0)>>2]|0,f+376|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4864>>2]=2;c[f+4868>>2]=50;break a}o=c[(f+376|0)+4>>2]|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=c[(f+376|0)>>2];c[p+4>>2]=o;b[(c[(f+1276|0)>>2]|0)+28>>1]=4}break};default:{k=1}}}if(k){k=0;switch(l|0){case 120:{c[(f+1312|0)>>2]=My(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0)|0;break};case 121:{xG(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0);break};case 123:{zG(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0);break};case 124:{c[(f+816|0)>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];c[(f+820|0)>>2]=$e(c[(f+1308|0)>>2]|0,(c[(f+816|0)>>2]|0)+1<<2)|0;if((c[(f+820|0)>>2]|0)==0){j=900;c[f+4864>>2]=2;c[f+4868>>2]=49;break a}c[(f+836|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+824|0)>>2]=0;while(1){m=c[(f+824|0)>>2]|0;if((c[(f+824|0)>>2]|0)>=(c[(f+816|0)>>2]|0)){break}p=Pd((c[(f+1288|0)>>2]|0)+(m*40|0)|0)|0;c[(c[(f+820|0)>>2]|0)+(c[(f+824|0)>>2]<<2)>>2]=p;c[(f+824|0)>>2]=(c[(f+824|0)>>2]|0)+1}c[(c[(f+820|0)>>2]|0)+(m<<2)>>2]=0;c[(f+832|0)>>2]=AG(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(d[(c[(f+1316|0)>>2]|0)+3>>0]<<4)+4>>2]|0,c[(f+820|0)>>2]|0,c[(f+816|0)>>2]|0,c[(c[(f+836|0)>>2]|0)+16>>2]|0,f+828|0)|0;cc(c[(f+1308|0)>>2]|0,c[(f+820|0)>>2]|0);o=c[(f+828|0)>>2]|0;p=(c[(f+836|0)>>2]|0)+16|0;o=$K(c[p>>2]|0,c[p+4>>2]|0,o|0,((o|0)<0)<<31>>31|0)|0;c[p>>2]=o;c[p+4>>2]=D;be(c[(f+1288|0)>>2]|0);if((c[(f+828|0)>>2]|0)!=0){if((c[(f+832|0)>>2]|0)==0){j=900;c[f+4864>>2]=2;c[f+4868>>2]=49;break a}Yd(c[(f+1288|0)>>2]|0,c[(f+832|0)>>2]|0,-1,1,13)|0}sr(c[(f+1288|0)>>2]|0,d[(f+1581|0)>>0]|0)|0;break};case 115:{c[(f+612|0)>>2]=0;c[(f+1312|0)>>2]=uG(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+8>>2]<<4)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,(c[(c[(f+1316|0)>>2]|0)+12>>2]|0)!=0?f+612|0:0)|0;if((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)!=0){p=(c[(f+1328|0)>>2]|0)+92|0;c[p>>2]=(c[p>>2]|0)+(c[(f+612|0)>>2]|0);if((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)>0){o=c[(f+612|0)>>2]|0;p=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0)+16|0;o=dL(c[p>>2]|0,c[p+4>>2]|0,o|0,((o|0)<0)<<31>>31|0)|0;c[p>>2]=o;c[p+4>>2]=D}}break};case 113:case 112:case 111:case 110:{c[(f+564|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+572|0)>>2]=c[(c[(f+564|0)>>2]|0)+8>>2];b[(f+572|0)+4>>1]=c[(c[(f+1316|0)>>2]|0)+16>>2];if((d[c[(f+1316|0)>>2]>>0]|0)<112){a[((f+572|0)+6|0)>>0]=-1}else{a[((f+572|0)+6|0)>>0]=0}c[(f+572|0)+8>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+568|0)>>2]=0;c[(f+1312|0)>>2]=rG(c[(f+564|0)>>2]|0,f+572|0,f+568|0)|0;m=c[(f+568|0)>>2]|0;if((a[c[(f+1316|0)>>2]>>0]&1|0)==0){c[(f+568|0)>>2]=0-m}else{c[(f+568|0)>>2]=m+1}if((c[(f+568|0)>>2]|0)>0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 118:case 117:{c[(f+620|0)>>2]=0;c[(f+772|0)>>2]=(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4);if((d[c[(f+1316|0)>>2]>>0]|0)==118){c[(f+768|0)>>2]=1}else{c[(f+768|0)>>2]=2}c[(f+1312|0)>>2]=cG(c[(c[(f+772|0)>>2]|0)+4>>2]|0,f+620|0,c[(f+768|0)>>2]|0)|0;o=c[(f+620|0)>>2]|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=o;c[p+4>>2]=((o|0)<0)<<31>>31;break};case 114:{c[(f+600|0)>>2]=0;c[(f+604|0)>>2]=c[(c[(f+1308|0)>>2]|0)+4>>2];while(1){if((c[(f+604|0)>>2]|0)==0){break}if((c[(c[(f+604|0)>>2]|0)+40>>2]|0)==-1108210269){if(((e[(c[(f+604|0)>>2]|0)+88>>1]|0)>>>9&1|0)!=0){if(((e[(c[(f+604|0)>>2]|0)+88>>1]|0)>>>2&3|0)<2){if((c[(c[(f+604|0)>>2]|0)+76>>2]|0)>=0){c[(f+600|0)>>2]=(c[(f+600|0)>>2]|0)+1}}}}c[(f+604|0)>>2]=c[(c[(f+604|0)>>2]|0)+52>>2]}b[(c[(f+1276|0)>>2]|0)+28>>1]=1;if((c[(f+600|0)>>2]|0)>1){c[(f+1312|0)>>2]=6;a[(c[(f+1328|0)>>2]|0)+86>>0]=2;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}c[(f+608|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2];c[(f+596|0)>>2]=0;c[(f+1312|0)>>2]=sG(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(f+608|0)>>2]<<4)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,f+596|0)|0;b[(c[(f+1276|0)>>2]|0)+28>>1]=4;o=c[(f+596|0)>>2]|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=o;c[p+4>>2]=((o|0)<0)<<31>>31;if((c[(f+1312|0)>>2]|0)==0){if((c[(f+596|0)>>2]|0)!=0){tG(c[(f+1308|0)>>2]|0,c[(f+608|0)>>2]|0,c[(f+596|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0);a[(f+1580|0)>>0]=(c[(f+608|0)>>2]|0)+1}}break};case 116:{c[(f+616|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];if((c[(c[(f+616|0)>>2]|0)+64>>2]|0)!=0){vG(c[(f+1308|0)>>2]|0,c[(c[(f+616|0)>>2]|0)+64>>2]|0);c[f+4864>>2]=2;c[f+4868>>2]=54;break a}else{c[(f+1312|0)>>2]=wG(c[c[(f+616|0)>>2]>>2]|0)|0;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}};case 108:{c[(f+520|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+524|0)>>2]=c[c[(f+520|0)>>2]>>2];c[(f+532|0)>>2]=c[(c[(f+520|0)>>2]|0)+8>>2];b[(f+532|0)+4>>1]=c[(c[(f+1316|0)>>2]|0)+12>>2];a[(f+532|0)+6>>0]=0;c[(f+532|0)+8>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(f+1312|0)>>2]=jD(c[(f+524|0)>>2]|0,f+532|0,0,0,0,f+528|0)|0;if((c[(f+1312|0)>>2]|0)==0){if((c[(f+528|0)>>2]|0)==0){c[(f+1312|0)>>2]=iG(c[(f+524|0)>>2]|0)|0}}c[(c[(f+520|0)>>2]|0)+68>>2]=0;break};case 134:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);p=(c[(f+1288|0)>>2]|0)+16|0;o=c[p+4>>2]|0;if((o|0)>0|(o|0)==0&(c[p>>2]|0)>>>0>0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 136:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);o=c[(c[(f+1316|0)>>2]|0)+12>>2]|0;p=(c[(f+1288|0)>>2]|0)+16|0;o=dL(c[p>>2]|0,c[p+4>>2]|0,o|0,((o|0)<0)<<31>>31|0)|0;c[p>>2]=o;c[p+4>>2]=D;p=(c[(f+1288|0)>>2]|0)+16|0;if((c[p>>2]|0)==0&(c[p+4>>2]|0)==0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 129:{c[(f+888|0)>>2]=c[(c[(f+1328|0)>>2]|0)+176>>2];c[(f+892|0)>>2]=(c[(c[(f+888|0)>>2]|0)+12>>2]|0)+(((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)+(c[(c[(c[(f+888|0)>>2]|0)+8>>2]|0)+((c[(c[(f+888|0)>>2]|0)+44>>2]|0)*20|0)+4>>2]|0)|0)*40|0);Vt(c[(f+1276|0)>>2]|0,c[(f+892|0)>>2]|0,4096);break};case 10:{c[(f+904|0)>>2]=d[(c[(f+1316|0)>>2]|0)+3>>0]|0;c[(f+916|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(f+924|0)>>2]=c[(c[(f+1328|0)>>2]|0)+12>>2];c[(f+908|0)>>2]=0;while(1){if((c[(f+908|0)>>2]|0)>=(c[(f+904|0)>>2]|0)){break}c[(c[(f+924|0)>>2]|0)+(c[(f+908|0)>>2]<<2)>>2]=c[(f+916|0)>>2];c[(f+908|0)>>2]=(c[(f+908|0)>>2]|0)+1;c[(f+916|0)>>2]=(c[(f+916|0)>>2]|0)+40}c[f>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];p=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0)|0;c[(f+912|0)>>2]=p;c[f+48>>2]=p;p=(c[(f+912|0)>>2]|0)+24|0;c[p>>2]=(c[p>>2]|0)+1;b[f+36>>1]=1;c[f+12>>2]=0;c[f+44>>2]=0;c[f+40>>2]=0;c[f+8>>2]=c[(f+1308|0)>>2];c[f+64>>2]=0;c[f+52>>2]=0;a[f+68>>0]=0;if((b[(c[f>>2]|0)+2>>1]&32|0)!=0){c[f+52>>2]=c[(c[(f+1316|0)>>2]|0)+ -20+16>>2]}vb[c[(c[f>>2]|0)+16>>2]&63](f,c[(f+904|0)>>2]|0,c[(f+924|0)>>2]|0);if((c[f+64>>2]|0)!=0){o=(c[(f+1328|0)>>2]|0)+44|0;p=c[(f+1308|0)>>2]|0;c[(f+336|0)>>2]=Jd(f+8|0)|0;$t(o,p,1768,f+336|0);c[(f+1312|0)>>2]=c[f+64>>2]}if((a[f+68>>0]|0)!=0){c[(f+908|0)>>2]=c[(c[(f+1316|0)>>2]|0)+ -20+4>>2];if((c[(f+908|0)>>2]|0)!=0){_d((c[(f+1292|0)>>2]|0)+((c[(f+908|0)>>2]|0)*40|0)|0,1,0)}}Gd(f+8|0);break};case 135:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((c[(c[(f+1288|0)>>2]|0)+20>>2]|0)<0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 130:{l=c[(f+1316|0)>>2]|0;if((c[(c[(f+1308|0)>>2]|0)+24>>2]&16777216|0)!=0){o=c[l+8>>2]|0;p=(c[(f+1308|0)>>2]|0)+504|0;o=dL(c[p>>2]|0,c[p+4>>2]|0,o|0,((o|0)<0)<<31>>31|0)|0;c[p>>2]=o;c[p+4>>2]=D;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}m=c[(c[(f+1316|0)>>2]|0)+8>>2]|0;if((c[l+4>>2]|0)!=0){p=(c[(f+1308|0)>>2]|0)+496|0;o=dL(c[p>>2]|0,c[p+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;c[p>>2]=o;c[p+4>>2]=D;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}else{p=(c[(f+1328|0)>>2]|0)+144|0;o=dL(c[p>>2]|0,c[p+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;c[p>>2]=o;c[p+4>>2]=D;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}};case 126:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&32|0)!=0){if((DG(c[(c[(f+1288|0)>>2]|0)+16>>2]|0,f+440|0)|0)!=0){_d((c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0)|0,c[(f+440|0)>>2]|0,c[(f+440|0)+4>>2]|0);j=16;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}}be(c[(f+1288|0)>>2]|0);c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;j=16;break};default:{k=1}}}if(k){k=0;switch(l|0){case 131:{if((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)!=0){p=(c[(f+1308|0)>>2]|0)+496|0;if(!((c[p>>2]|0)==0&(c[p+4>>2]|0)==0)){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}p=(c[(f+1308|0)>>2]|0)+504|0;if(!((c[p>>2]|0)==0&(c[p+4>>2]|0)==0)){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}else{p=(c[(f+1328|0)>>2]|0)+144|0;if(!((c[p>>2]|0)==0&(c[p+4>>2]|0)==0)){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}p=(c[(f+1308|0)>>2]|0)+504|0;if(!((c[p>>2]|0)==0&(c[p+4>>2]|0)==0)){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}};case 125:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1284|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&32|0)==0){BG(c[(f+1288|0)>>2]|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&32|0)==0){j=900;c[f+4864>>2]=2;c[f+4868>>2]=49;break a}}p=(c[(f+1284|0)>>2]|0)+16|0;CG(c[(c[(f+1288|0)>>2]|0)+16>>2]|0,c[p>>2]|0,c[p+4>>2]|0);break};case 128:{c[(f+880|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];c[(f+864|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);if((a[(c[(f+1316|0)>>2]|0)+3>>0]|0)!=0){c[(f+884|0)>>2]=c[(c[(f+880|0)>>2]|0)+20>>2];c[(f+876|0)>>2]=c[(c[(f+1328|0)>>2]|0)+176>>2];while(1){if((c[(f+876|0)>>2]|0)==0){break}if((c[(c[(f+876|0)>>2]|0)+24>>2]|0)==(c[(f+884|0)>>2]|0)){break}c[(f+876|0)>>2]=c[(c[(f+876|0)>>2]|0)+4>>2]}if((c[(f+876|0)>>2]|0)!=0){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}}if((c[(c[(f+1328|0)>>2]|0)+184>>2]|0)>=(c[(c[(f+1308|0)>>2]|0)+128>>2]|0)){c[(f+1312|0)>>2]=1;$t((c[(f+1328|0)>>2]|0)+44|0,c[(f+1308|0)>>2]|0,38320,f+336|0);c[f+4864>>2]=2;c[f+4868>>2]=54;break a}b:do{if((b[(c[(f+864|0)>>2]|0)+28>>1]&64|0)==0){c[(f+852|0)>>2]=(c[(c[(f+880|0)>>2]|0)+8>>2]|0)+(c[(c[(f+880|0)>>2]|0)+12>>2]|0);c[(f+856|0)>>2]=72+((c[(f+852|0)>>2]|0)*40|0)+(c[(c[(f+880|0)>>2]|0)+12>>2]<<2)+(c[(c[(f+880|0)>>2]|0)+16>>2]|0);c[(f+876|0)>>2]=ve(c[(f+1308|0)>>2]|0,c[(f+856|0)>>2]|0)|0;if((c[(f+876|0)>>2]|0)==0){j=900;c[f+4864>>2]=2;c[f+4868>>2]=49;break a}Gd(c[(f+864|0)>>2]|0);b[(c[(f+864|0)>>2]|0)+28>>1]=64;c[(c[(f+864|0)>>2]|0)+16>>2]=c[(f+876|0)>>2];c[c[(f+876|0)>>2]>>2]=c[(f+1328|0)>>2];c[(c[(f+876|0)>>2]|0)+60>>2]=c[(f+852|0)>>2];c[(c[(f+876|0)>>2]|0)+64>>2]=c[(c[(f+880|0)>>2]|0)+12>>2];c[(c[(f+876|0)>>2]|0)+44>>2]=c[(f+1324|0)>>2];c[(c[(f+876|0)>>2]|0)+12>>2]=c[(c[(f+1328|0)>>2]|0)+8>>2];c[(c[(f+876|0)>>2]|0)+52>>2]=c[(c[(f+1328|0)>>2]|0)+28>>2];c[(c[(f+876|0)>>2]|0)+20>>2]=c[(c[(f+1328|0)>>2]|0)+56>>2];c[(c[(f+876|0)>>2]|0)+40>>2]=c[(c[(f+1328|0)>>2]|0)+36>>2];c[(c[(f+876|0)>>2]|0)+8>>2]=c[(c[(f+1328|0)>>2]|0)+4>>2];c[(c[(f+876|0)>>2]|0)+48>>2]=c[(c[(f+1328|0)>>2]|0)+32>>2];c[(c[(f+876|0)>>2]|0)+24>>2]=c[(c[(f+880|0)>>2]|0)+20>>2];c[(c[(f+876|0)>>2]|0)+16>>2]=c[(c[(f+1328|0)>>2]|0)+200>>2];c[(c[(f+876|0)>>2]|0)+56>>2]=c[(c[(f+1328|0)>>2]|0)+196>>2];c[(f+872|0)>>2]=(c[(f+876|0)>>2]|0)+72+((c[(c[(f+876|0)>>2]|0)+60>>2]|0)*40|0);c[(f+868|0)>>2]=(c[(f+876|0)>>2]|0)+72;while(1){if((c[(f+868|0)>>2]|0)==(c[(f+872|0)>>2]|0)){break b}b[(c[(f+868|0)>>2]|0)+28>>1]=128;c[c[(f+868|0)>>2]>>2]=c[(f+1308|0)>>2];c[(f+868|0)>>2]=(c[(f+868|0)>>2]|0)+40}}else{c[(f+876|0)>>2]=c[(c[(f+864|0)>>2]|0)+16>>2]}}while(0);o=(c[(f+1328|0)>>2]|0)+184|0;c[o>>2]=(c[o>>2]|0)+1;c[(c[(f+876|0)>>2]|0)+4>>2]=c[(c[(f+1328|0)>>2]|0)+176>>2];o=c[(f+88|0)+4>>2]|0;p=(c[(f+876|0)>>2]|0)+32|0;c[p>>2]=c[(f+88|0)>>2];c[p+4>>2]=o;c[(c[(f+876|0)>>2]|0)+68>>2]=c[(c[(f+1328|0)>>2]|0)+92>>2];c[(c[(f+1328|0)>>2]|0)+92>>2]=0;c[(c[(f+1328|0)>>2]|0)+176>>2]=c[(f+876|0)>>2];p=(c[(f+876|0)>>2]|0)+72+ -40|0;c[(f+1292|0)>>2]=p;c[(c[(f+1328|0)>>2]|0)+8>>2]=p;c[(c[(f+1328|0)>>2]|0)+28>>2]=c[(c[(f+876|0)>>2]|0)+60>>2];c[(c[(f+1328|0)>>2]|0)+36>>2]=c[(c[(f+876|0)>>2]|0)+64>>2]&65535;c[(c[(f+1328|0)>>2]|0)+56>>2]=(c[(f+1292|0)>>2]|0)+(((c[(c[(f+1328|0)>>2]|0)+28>>2]|0)+1|0)*40|0);p=c[c[(f+880|0)>>2]>>2]|0;c[(f+1320|0)>>2]=p;c[(c[(f+1328|0)>>2]|0)+4>>2]=p;c[(c[(f+1328|0)>>2]|0)+32>>2]=c[(c[(f+880|0)>>2]|0)+4>>2];c[(c[(f+1328|0)>>2]|0)+200>>2]=(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1328|0)>>2]|0)+36>>2]<<2);c[(c[(f+1328|0)>>2]|0)+196>>2]=c[(c[(f+880|0)>>2]|0)+16>>2];c[(f+1324|0)>>2]=-1;aL(c[(c[(f+1328|0)>>2]|0)+200>>2]|0,0,c[(c[(f+1328|0)>>2]|0)+196>>2]|0)|0;break};case 127:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1280|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+844|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];if((b[(c[(f+1288|0)>>2]|0)+28>>1]&32|0)==0){BG(c[(f+1288|0)>>2]|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&32|0)==0){j=900;c[f+4864>>2]=2;c[f+4868>>2]=49;break a}}if((c[(f+844|0)>>2]|0)!=0){p=(c[(f+1280|0)>>2]|0)+16|0;c[(f+848|0)>>2]=EG(c[(c[(f+1288|0)>>2]|0)+16>>2]|0,c[(f+844|0)>>2]|0,c[p>>2]|0,c[p+4>>2]|0)|0;if((c[(f+848|0)>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}}if((c[(f+844|0)>>2]|0)>=0){p=(c[(f+1280|0)>>2]|0)+16|0;CG(c[(c[(f+1288|0)>>2]|0)+16>>2]|0,c[p>>2]|0,c[p+4>>2]|0)}break};case 132:{if((c[(c[(f+1328|0)>>2]|0)+176>>2]|0)!=0){c[(f+900|0)>>2]=c[(c[(f+1328|0)>>2]|0)+176>>2];while(1){if((c[(c[(f+900|0)>>2]|0)+4>>2]|0)==0){break}c[(f+900|0)>>2]=c[(c[(f+900|0)>>2]|0)+4>>2]}c[(f+1288|0)>>2]=(c[(c[(f+900|0)>>2]|0)+12>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0)}else{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0)}MF(c[(f+1288|0)>>2]|0)|0;c[(f+1284|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);MF(c[(f+1284|0)>>2]|0)|0;o=(c[(f+1288|0)>>2]|0)+16|0;m=c[o+4>>2]|0;p=(c[(f+1284|0)>>2]|0)+16|0;n=c[p+4>>2]|0;if((m|0)<(n|0)|((m|0)==(n|0)?(c[o>>2]|0)>>>0<(c[p>>2]|0)>>>0:0)){n=(c[(f+1284|0)>>2]|0)+16|0;o=c[n+4>>2]|0;p=(c[(f+1288|0)>>2]|0)+16|0;c[p>>2]=c[n>>2];c[p+4>>2]=o}break};case 137:{c[(f+928|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1312|0)>>2]=tF(c[(f+928|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0)|0;if((c[(f+1312|0)>>2]|0)!=0){o=(c[(f+1328|0)>>2]|0)+44|0;p=c[(f+1308|0)>>2]|0;c[(f+336|0)>>2]=Jd(c[(f+928|0)>>2]|0)|0;$t(o,p,1768,f+336|0)}sr(c[(f+928|0)>>2]|0,d[(f+1581|0)>>0]|0)|0;if((EF(c[(f+928|0)>>2]|0)|0)!=0){j=899;c[f+4864>>2]=2;c[f+4868>>2]=50;break a}break};case 11:{c[(f+936|0)>>2]=0;c[(f+936|0)+8>>2]=-1;c[(f+936|0)+4>>2]=-1;c[(f+1312|0)>>2]=yg(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+8>>2]|0,(f+936|0)+4|0,(f+936|0)+8|0)|0;if((c[(f+1312|0)>>2]|0)==5){c[(f+1312|0)>>2]=0;c[(f+936|0)>>2]=1}c[(f+932|0)>>2]=0;c[(f+948|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);while(1){if((c[(f+932|0)>>2]|0)>=3){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}p=c[(f+936|0)+(c[(f+932|0)>>2]<<2)>>2]|0;_d(c[(f+948|0)>>2]|0,p,((p|0)<0)<<31>>31);c[(f+932|0)>>2]=(c[(f+932|0)>>2]|0)+1;c[(f+948|0)>>2]=(c[(f+948|0)>>2]|0)+40}};case 138:{c[(f+984|0)>>2]=c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4)+4>>2];c[(f+1312|0)>>2]=KG(c[(f+984|0)>>2]|0)|0;if((c[(f+1312|0)>>2]|0)==101){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;c[(f+1312|0)>>2]=0}break};case 139:{if((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)!=0){p=(c[(f+1328|0)>>2]|0)+88|0;b[p>>1]=b[p>>1]&-33|32;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}else{yf(c[(f+1308|0)>>2]|0);c[f+4864>>2]=2;c[f+4868>>2]=54;break a}};case 141:{c[(f+1e3|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];c[(f+1312|0)>>2]=MG(c[(f+1308|0)>>2]|0,c[(f+1e3|0)>>2]|0)|0;if((c[(f+1e3|0)>>2]|0)!=0){lG(c[(f+1328|0)>>2]|0,c[(c[(f+1e3|0)>>2]|0)+8>>2]|0)}break};default:{k=1}}}if(k){k=0;switch(l|0){case 12:{c[(f+960|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2];c[(f+952|0)>>2]=c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4)+4>>2];c[(f+956|0)>>2]=Zb(c[(f+952|0)>>2]|0)|0;c[(f+964|0)>>2]=_c(c[(f+956|0)>>2]|0)|0;if((c[(f+960|0)>>2]|0)==-1){c[(f+960|0)>>2]=c[(f+964|0)>>2]}if((FG(c[(f+956|0)>>2]|0)|0)==0){c[(f+960|0)>>2]=c[(f+964|0)>>2]}c[(f+968|0)>>2]=Sg(c[(f+956|0)>>2]|0,1)|0;do{if((c[(f+960|0)>>2]|0)==5){if((Ub(c[(f+968|0)>>2]|0)|0)!=0){if((GG(c[(f+956|0)>>2]|0)|0)!=0){break}}c[(f+960|0)>>2]=c[(f+964|0)>>2]}}while(0);do{if((c[(f+960|0)>>2]|0)!=(c[(f+964|0)>>2]|0)){if((c[(f+964|0)>>2]|0)!=5){if((c[(f+960|0)>>2]|0)!=5){break}}if((a[(c[(f+1308|0)>>2]|0)+62>>0]|0)!=0){if((c[(c[(f+1308|0)>>2]|0)+144>>2]|0)<=1){do{if((c[(f+964|0)>>2]|0)==5){c[(f+1312|0)>>2]=HG(c[(f+956|0)>>2]|0)|0;if((c[(f+1312|0)>>2]|0)!=0){break}IG(c[(f+956|0)>>2]|0,c[(f+960|0)>>2]|0)|0}else{if((c[(f+964|0)>>2]|0)!=4){break}IG(c[(f+956|0)>>2]|0,2)|0}}while(0);if((c[(f+1312|0)>>2]|0)!=0){break}c[(f+1312|0)>>2]=id(c[(f+952|0)>>2]|0,(c[(f+960|0)>>2]|0)==5?2:1)|0;break}}c[(f+1312|0)>>2]=1;o=(c[(f+1328|0)>>2]|0)+44|0;p=c[(f+1308|0)>>2]|0;c[(f+336|0)>>2]=(c[(f+960|0)>>2]|0)==5?38416:38424;$t(o,p,38360,f+336|0);c[f+4864>>2]=2;c[f+4868>>2]=54;break a}}while(0);if((c[(f+1312|0)>>2]|0)!=0){c[(f+960|0)>>2]=c[(f+964|0)>>2]}c[(f+960|0)>>2]=IG(c[(f+956|0)>>2]|0,c[(f+960|0)>>2]|0)|0;c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);b[(c[(f+1276|0)>>2]|0)+28>>1]=2562;p=vA(c[(f+960|0)>>2]|0)|0;c[(c[(f+1276|0)>>2]|0)+4>>2]=p;p=Ub(c[(c[(f+1276|0)>>2]|0)+4>>2]|0)|0;c[(c[(f+1276|0)>>2]|0)+24>>2]=p;a[(c[(f+1276|0)>>2]|0)+30>>0]=1;sr(c[(f+1276|0)>>2]|0,d[(f+1581|0)>>0]|0)|0;break};case 148:{p=(c[(f+1328|0)>>2]|0)+88|0;b[p>>1]=b[p>>1]&-13|8;c[(f+1312|0)>>2]=OG(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0)|0;p=(c[(f+1328|0)>>2]|0)+88|0;b[p>>1]=b[p>>1]&-13;break};case 149:{c[(f+1020|0)>>2]=0;c[(f+1024|0)>>2]=0;c[(f+1028|0)>>2]=c[(c[(c[(f+1316|0)>>2]|0)+16>>2]|0)+8>>2];c[(f+1032|0)>>2]=c[c[(f+1028|0)>>2]>>2];c[(f+1312|0)>>2]=zb[c[(c[(f+1032|0)>>2]|0)+24>>2]&127](c[(f+1028|0)>>2]|0,f+1024|0)|0;lG(c[(f+1328|0)>>2]|0,c[(f+1028|0)>>2]|0);if(0==(c[(f+1312|0)>>2]|0)){c[c[(f+1024|0)>>2]>>2]=c[(f+1028|0)>>2];c[(f+1020|0)>>2]=$F(c[(f+1328|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,0,-1,0)|0;if((c[(f+1020|0)>>2]|0)!=0){c[(c[(f+1020|0)>>2]|0)+32>>2]=c[(f+1024|0)>>2];c[f+4864>>2]=2;c[f+4868>>2]=54;break a}else{a[(c[(f+1308|0)>>2]|0)+64>>0]=1;ub[c[(c[(f+1032|0)>>2]|0)+28>>2]&63](c[(f+1024|0)>>2]|0)|0;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}}break};case 140:{a[(f+1775|0)>>0]=c[(c[(f+1316|0)>>2]|0)+12>>2];if((d[(f+1775|0)>>0]|0)==0){if(0!=(c[(c[(f+1308|0)>>2]|0)+24>>2]&16384|0)){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}}c[(f+988|0)>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+1312|0)>>2]=LG(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(f+988|0)>>2]<<4)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+8>>2]|0,a[(f+1775|0)>>0]|0)|0;if((c[(f+1312|0)>>2]&255|0)==6){c[(f+996|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];o=(c[(f+1328|0)>>2]|0)+44|0;p=c[(f+1308|0)>>2]|0;c[(f+336|0)>>2]=c[(f+996|0)>>2];$t(o,p,38432,f+336|0)}break};case 142:{c[(f+1312|0)>>2]=NG(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0,(c[(f+1328|0)>>2]|0)+44|0)|0;break};case 13:{c[(f+1312|0)>>2]=JG((c[(f+1328|0)>>2]|0)+44|0,c[(f+1308|0)>>2]|0)|0;break};case 14:{c[(f+1052|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+1056|0)>>2]=(c[(f+1052|0)>>2]|0)+40;c[(f+1036|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+1060|0)>>2]=c[(c[(f+1036|0)>>2]|0)+32>>2];c[(f+1064|0)>>2]=c[c[(f+1060|0)>>2]>>2];c[(f+1048|0)>>2]=c[c[(f+1064|0)>>2]>>2];c[(f+1040|0)>>2]=c[(c[(f+1056|0)>>2]|0)+16>>2];c[(f+1044|0)>>2]=c[(c[(f+1052|0)>>2]|0)+16>>2];c[(f+1016|0)>>2]=0;c[(f+1008|0)>>2]=c[(c[(f+1328|0)>>2]|0)+12>>2];c[(f+1012|0)>>2]=0;while(1){if((c[(f+1012|0)>>2]|0)>=(c[(f+1040|0)>>2]|0)){break}c[(c[(f+1008|0)>>2]|0)+(c[(f+1012|0)>>2]<<2)>>2]=(c[(f+1056|0)>>2]|0)+(((c[(f+1012|0)>>2]|0)+1|0)*40|0);c[(f+1012|0)>>2]=(c[(f+1012|0)>>2]|0)+1}p=(c[(f+1328|0)>>2]|0)+88|0;b[p>>1]=b[p>>1]&-13|4;c[(f+1312|0)>>2]=Ab[c[(c[(f+1048|0)>>2]|0)+32>>2]&15](c[(f+1060|0)>>2]|0,c[(f+1044|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0,c[(f+1040|0)>>2]|0,c[(f+1008|0)>>2]|0)|0;p=(c[(f+1328|0)>>2]|0)+88|0;b[p>>1]=b[p>>1]&-13;lG(c[(f+1328|0)>>2]|0,c[(f+1064|0)>>2]|0);if((c[(f+1312|0)>>2]|0)==0){c[(f+1016|0)>>2]=ub[c[(c[(f+1048|0)>>2]|0)+40>>2]&63](c[(f+1060|0)>>2]|0)|0}if((c[(f+1016|0)>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}a[(c[(f+1036|0)>>2]|0)+25>>0]=0;break};case 151:{c[(f+896|0)>>2]=0;c[(f+860|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];if((a[(c[(f+860|0)>>2]|0)+25>>0]|0)==0){c[(f+972|0)>>2]=c[c[(c[(f+860|0)>>2]|0)+32>>2]>>2];c[(f+920|0)>>2]=c[c[(f+972|0)>>2]>>2];p=(c[(f+1328|0)>>2]|0)+88|0;b[p>>1]=b[p>>1]&-13|4;c[(f+1312|0)>>2]=ub[c[(c[(f+920|0)>>2]|0)+36>>2]&63](c[(c[(f+860|0)>>2]|0)+32>>2]|0)|0;p=(c[(f+1328|0)>>2]|0)+88|0;b[p>>1]=b[p>>1]&-13;lG(c[(f+1328|0)>>2]|0,c[(f+972|0)>>2]|0);if((c[(f+1312|0)>>2]|0)==0){c[(f+896|0)>>2]=ub[c[(c[(f+920|0)>>2]|0)+40>>2]&63](c[(c[(f+860|0)>>2]|0)+32>>2]|0)|0}if((c[(f+896|0)>>2]|0)!=0){j=16}else{c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;j=16}}break};case 153:{o=$c(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4)+4>>2]|0)|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=o;c[p+4>>2]=0;break};case 150:{c[(f+976|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+980|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);if((a[(c[(f+976|0)>>2]|0)+25>>0]|0)!=0){be(c[(f+980|0)>>2]|0);c[f+4864>>2]=2;c[f+4868>>2]=54;break a}c[(f+1004|0)>>2]=c[c[(c[(f+976|0)>>2]|0)+32>>2]>>2];c[(f+992|0)>>2]=c[c[(f+1004|0)>>2]>>2];g=(f+96|0)+0|0;i=g+72|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(i|0));rF((f+96|0)+8|0,c[(f+980|0)>>2]|0);b[(f+96|0)+36>>1]=e[(f+96|0)+36>>1]&-16896|1;c[(f+1312|0)>>2]=pb[c[(c[(f+992|0)>>2]|0)+44>>2]&31](c[(c[(f+976|0)>>2]|0)+32>>2]|0,f+96|0,c[(c[(f+1316|0)>>2]|0)+8>>2]|0)|0;lG(c[(f+1328|0)>>2]|0,c[(f+1004|0)>>2]|0);if((c[(f+96|0)+64>>2]|0)!=0){c[(f+1312|0)>>2]=c[(f+96|0)+64>>2]}sr((f+96|0)+8|0,d[(f+1581|0)>>0]|0)|0;rF(c[(f+980|0)>>2]|0,(f+96|0)+8|0);if((EF(c[(f+980|0)>>2]|0)|0)!=0){j=899;c[f+4864>>2]=2;c[f+4868>>2]=50;break a}break};case 15:{c[(f+784|0)>>2]=c[(c[(c[(f+1316|0)>>2]|0)+16>>2]|0)+8>>2];c[(f+592|0)>>2]=c[c[(f+784|0)>>2]>>2];c[(f+560|0)>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];if((c[(c[(f+592|0)>>2]|0)+52>>2]|0)!=0){a[(f+1582|0)>>0]=a[(c[(f+1308|0)>>2]|0)+68>>0]|0;c[(f+660|0)>>2]=c[(c[(f+1328|0)>>2]|0)+12>>2];c[(f+668|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+512|0)>>2]=0;while(1){if((c[(f+512|0)>>2]|0)>=(c[(f+560|0)>>2]|0)){break}c[(c[(f+660|0)>>2]|0)+(c[(f+512|0)>>2]<<2)>>2]=c[(f+668|0)>>2];c[(f+668|0)>>2]=(c[(f+668|0)>>2]|0)+40;c[(f+512|0)>>2]=(c[(f+512|0)>>2]|0)+1}a[(c[(f+1308|0)>>2]|0)+68>>0]=a[(c[(f+1316|0)>>2]|0)+3>>0]|0;c[(f+1312|0)>>2]=xb[c[(c[(f+592|0)>>2]|0)+52>>2]&31](c[(f+784|0)>>2]|0,c[(f+560|0)>>2]|0,c[(f+660|0)>>2]|0,f+448|0)|0;a[(c[(f+1308|0)>>2]|0)+68>>0]=a[(f+1582|0)>>0]|0;lG(c[(f+1328|0)>>2]|0,c[(f+784|0)>>2]|0);if((c[(f+1312|0)>>2]|0)==0){if((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)!=0){n=c[(f+448|0)>>2]|0;o=c[(f+448|0)+4>>2]|0;c[(f+88|0)>>2]=n;c[(f+88|0)+4>>2]=o;p=(c[(f+1308|0)>>2]|0)+32|0;c[p>>2]=n;c[p+4>>2]=o}}if((c[(f+1312|0)>>2]&255|0)==19){if((d[(c[(c[(f+1316|0)>>2]|0)+16>>2]|0)+16>>0]|0)!=0){if((d[(c[(f+1316|0)>>2]|0)+3>>0]|0)==4){c[(f+1312|0)>>2]=0;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}if((d[(c[(f+1316|0)>>2]|0)+3>>0]|0)==5){l=2}else{l=d[(c[(f+1316|0)>>2]|0)+3>>0]|0}a[(c[(f+1328|0)>>2]|0)+86>>0]=l;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}}p=(c[(f+1328|0)>>2]|0)+92|0;c[p>>2]=(c[p>>2]|0)+1}break};case 154:{c[(f+736|0)>>2]=c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4)+4>>2];c[(f+692|0)>>2]=0;if((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)!=0){c[(f+692|0)>>2]=$c(c[(f+736|0)>>2]|0)|0;if((c[(f+692|0)>>2]|0)>>>0<(c[(c[(f+1316|0)>>2]|0)+12>>2]|0)>>>0){c[(f+692|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2]}}o=PG(c[(f+736|0)>>2]|0,c[(f+692|0)>>2]|0)|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=o;c[p+4>>2]=((o|0)<0)<<31>>31;break};default:{k=1}}}if(k){k=0;switch(l|0){case 155:{if((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}if((c[(c[(f+1308|0)>>2]|0)+164>>2]|0)!=0){if(((e[(c[(f+1328|0)>>2]|0)+88>>1]|0)>>>11&1|0)==0){if((c[(c[(f+1316|0)>>2]|0)+16>>2]|0)!=0){l=c[(c[(f+1316|0)>>2]|0)+16>>2]|0}else{l=c[(c[(f+1328|0)>>2]|0)+168>>2]|0}c[(f+740|0)>>2]=l;if((l|0)!=0){c[(f+696|0)>>2]=QG(c[(f+1328|0)>>2]|0,c[(f+740|0)>>2]|0)|0;sb[c[(c[(f+1308|0)>>2]|0)+164>>2]&7](c[(c[(f+1308|0)>>2]|0)+168>>2]|0,c[(f+696|0)>>2]|0);cc(c[(f+1308|0)>>2]|0,c[(f+696|0)>>2]|0)}}}break};case 152:{c[(f+840|0)>>2]=c[(c[(c[(f+1316|0)>>2]|0)+16>>2]|0)+8>>2];c[(f+792|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1312|0)>>2]=sr(c[(f+792|0)>>2]|0,1)|0;if((c[(f+1312|0)>>2]|0)==0){c[(f+1312|0)>>2]=zb[c[(c[c[(f+840|0)>>2]>>2]|0)+76>>2]&127](c[(f+840|0)>>2]|0,c[(c[(f+792|0)>>2]|0)+4>>2]|0)|0;lG(c[(f+1328|0)>>2]|0,c[(f+840|0)>>2]|0);p=(c[(f+1328|0)>>2]|0)+88|0;b[p>>1]=b[p>>1]&-33}break};case 17:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);b[(c[(f+1288|0)>>2]|0)+28>>1]=4;o=c[(f+1324|0)>>2]|0;p=(c[(f+1288|0)>>2]|0)+16|0;c[p>>2]=o;c[p+4>>2]=((o|0)<0)<<31>>31;c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;break};case 21:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1268|0)>>2]=(c[(f+1320|0)>>2]|0)+((c[(c[(f+1288|0)>>2]|0)+16>>2]|0)*20|0);c[(f+1324|0)>>2]=(c[(c[(f+1268|0)>>2]|0)+8>>2]|0)-1;b[(c[(f+1288|0)>>2]|0)+28>>1]=128;break};case 133:{b[(c[(f+1276|0)>>2]|0)+28>>1]=8;h[(c[(f+1276|0)>>2]|0)+8>>3]=+h[c[(c[(f+1316|0)>>2]|0)+16>>2]>>3];break};case 23:{c[(f+1280|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);if((b[(c[(f+1280|0)>>2]|0)+28>>1]&1|0)!=0){j=28}break};case 24:{j=28;break};case 29:{c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);b[(c[(f+1276|0)>>2]|0)+28>>1]=(e[(c[(f+1276|0)>>2]|0)+28>>1]|1)&-129;break};case 27:{j=57;break};case 22:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);b[(c[(f+1288|0)>>2]|0)+28>>1]=4;c[(f+1264|0)>>2]=c[(c[(f+1288|0)>>2]|0)+16>>2];o=c[(f+1324|0)>>2]|0;p=(c[(f+1288|0)>>2]|0)+16|0;c[p>>2]=o;c[p+4>>2]=((o|0)<0)<<31>>31;c[(f+1324|0)>>2]=c[(f+1264|0)>>2];break};case 16:{c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;j=16;break};case 18:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1324|0)>>2]=c[(c[(f+1288|0)>>2]|0)+16>>2];b[(c[(f+1288|0)>>2]|0)+28>>1]=128;break};case 25:{o=c[(c[(f+1316|0)>>2]|0)+4>>2]|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=o;c[p+4>>2]=((o|0)<0)<<31>>31;break};case 26:{n=c[(c[(f+1316|0)>>2]|0)+16>>2]|0;o=c[n+4>>2]|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=c[n>>2];c[p+4>>2]=o;break};case 28:{c[(f+1248|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+12>>2]|0)-(c[(c[(f+1316|0)>>2]|0)+8>>2]|0);p=((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)!=0?257:1)&65535;b[(f+1572|0)>>1]=p;b[(c[(f+1276|0)>>2]|0)+28>>1]=p;while(1){if((c[(f+1248|0)>>2]|0)<=0){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}c[(f+1276|0)>>2]=(c[(f+1276|0)>>2]|0)+40;if((b[(c[(f+1276|0)>>2]|0)+28>>1]&9312|0)!=0){te(c[(f+1276|0)>>2]|0)}b[(c[(f+1276|0)>>2]|0)+28>>1]=b[(f+1572|0)>>1]|0;c[(f+1248|0)>>2]=(c[(f+1248|0)>>2]|0)+ -1}};case 20:{c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);o=(c[(c[(f+1316|0)>>2]|0)+12>>2]|0)-1|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=o;c[p+4>>2]=((o|0)<0)<<31>>31;b[(c[(f+1276|0)>>2]|0)+28>>1]=4;if((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 97:{a[c[(f+1316|0)>>2]>>0]=27;p=Ub(c[(c[(f+1316|0)>>2]|0)+16>>2]|0)|0;c[(c[(f+1316|0)>>2]|0)+4>>2]=p;if((d[(f+1581|0)>>0]|0)!=1){c[(f+1312|0)>>2]=Yd(c[(f+1276|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0,-1,1,0)|0;if((c[(f+1312|0)>>2]|0)==18){j=899;c[f+4864>>2]=2;c[f+4868>>2]=50;break a}if(0!=(sr(c[(f+1276|0)>>2]|0,d[(f+1581|0)>>0]|0)|0)){j=900;c[f+4864>>2]=2;c[f+4868>>2]=49;break a}c[(c[(f+1276|0)>>2]|0)+36>>2]=0;p=(c[(f+1276|0)>>2]|0)+28|0;b[p>>1]=e[p>>1]|2048;if((a[(c[(f+1316|0)>>2]|0)+1>>0]|0)==-1){cc(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0)}a[(c[(f+1316|0)>>2]|0)+1>>0]=-1;c[(c[(f+1316|0)>>2]|0)+16>>2]=c[(c[(f+1276|0)>>2]|0)+4>>2];c[(c[(f+1316|0)>>2]|0)+4>>2]=c[(c[(f+1276|0)>>2]|0)+24>>2]}if((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)>(c[(c[(f+1308|0)>>2]|0)+88>>2]|0)){j=899;c[f+4864>>2]=2;c[f+4868>>2]=50;break a}else{j=57}break};case 93:case 92:case 91:case 90:case 89:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);b[(f+1570|0)>>1]=IF(c[(f+1288|0)>>2]|0)|0;c[(f+1284|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);b[(f+1574|0)>>1]=IF(c[(f+1284|0)>>2]|0)|0;c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);b[(f+1568|0)>>1]=e[(c[(f+1288|0)>>2]|0)+28>>1]|e[(c[(f+1284|0)>>2]|0)+28>>1];c:do{if((b[(f+1568|0)>>1]&1|0)==0){do{if((e[(f+1570|0)>>1]&e[(f+1574|0)>>1]&4|0)!=0){l=(c[(f+1288|0)>>2]|0)+16|0;p=c[l+4>>2]|0;c[(f+280|0)>>2]=c[l>>2];c[(f+280|0)+4>>2]=p;p=(c[(f+1284|0)>>2]|0)+16|0;l=c[p+4>>2]|0;c[(f+272|0)>>2]=c[p>>2];c[(f+272|0)+4>>2]=l;a[(f+1583|0)>>0]=1;l=d[c[(f+1316|0)>>2]>>0]|0;if((l|0)==89){if((Qt(f+272|0,c[(f+280|0)>>2]|0,c[(f+280|0)+4>>2]|0)|0)!=0){break}}else if((l|0)==90){if((JF(f+272|0,c[(f+280|0)>>2]|0,c[(f+280|0)+4>>2]|0)|0)!=0){break}}else if((l|0)==91){if((KF(f+272|0,c[(f+280|0)>>2]|0,c[(f+280|0)+4>>2]|0)|0)!=0){break}}else if((l|0)==92){if((c[(f+280|0)>>2]|0)==0&(c[(f+280|0)+4>>2]|0)==0){break c}if((c[(f+280|0)>>2]|0)==-1?(c[(f+280|0)+4>>2]|0)==-1:0){if((c[(f+272|0)>>2]|0)==0?(c[(f+272|0)+4>>2]|0)==-2147483648:0){break}}p=lL(c[(f+272|0)>>2]|0,c[(f+272|0)+4>>2]|0,c[(f+280|0)>>2]|0,c[(f+280|0)+4>>2]|0)|0;c[(f+272|0)>>2]=p;c[(f+272|0)+4>>2]=D}else{if((c[(f+280|0)>>2]|0)==0&(c[(f+280|0)+4>>2]|0)==0){break c}if((c[(f+280|0)>>2]|0)==-1?(c[(f+280|0)+4>>2]|0)==-1:0){c[(f+280|0)>>2]=1;c[(f+280|0)+4>>2]=0}p=mL(c[(f+272|0)>>2]|0,c[(f+272|0)+4>>2]|0,c[(f+280|0)>>2]|0,c[(f+280|0)+4>>2]|0)|0;c[(f+272|0)>>2]=p;c[(f+272|0)+4>>2]=D}o=c[(f+272|0)+4>>2]|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=c[(f+272|0)>>2];c[p+4>>2]=o;b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|4;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}else{a[(f+1583|0)>>0]=0}}while(0);h[(f+264|0)>>3]=+Nd(c[(f+1288|0)>>2]|0);h[(f+256|0)>>3]=+Nd(c[(f+1284|0)>>2]|0);l=d[c[(f+1316|0)>>2]>>0]|0;if((l|0)==89){h[(f+256|0)>>3]=+h[(f+256|0)>>3]+ +h[(f+264|0)>>3]}else if((l|0)==90){h[(f+256|0)>>3]=+h[(f+256|0)>>3]- +h[(f+264|0)>>3]}else if((l|0)==92){if(+h[(f+264|0)>>3]==0.0){break}h[(f+256|0)>>3]=+h[(f+256|0)>>3]/+h[(f+264|0)>>3]}else if((l|0)==91){h[(f+256|0)>>3]=+h[(f+256|0)>>3]*+h[(f+264|0)>>3]}else{q=+h[(f+264|0)>>3];p=+O(q)>=1.0?q>0.0?(ea(+N(q/4294967296.0),4294967295.0)|0)>>>0:~~+_((q- +(~~q>>>0))/4294967296.0)>>>0:0;c[(f+280|0)>>2]=~~q>>>0;c[(f+280|0)+4>>2]=p;q=+h[(f+256|0)>>3];p=+O(q)>=1.0?q>0.0?(ea(+N(q/4294967296.0),4294967295.0)|0)>>>0:~~+_((q- +(~~q>>>0))/4294967296.0)>>>0:0;c[(f+272|0)>>2]=~~q>>>0;c[(f+272|0)+4>>2]=p;if((c[(f+280|0)>>2]|0)==0&(c[(f+280|0)+4>>2]|0)==0){break}if((c[(f+280|0)>>2]|0)==-1?(c[(f+280|0)+4>>2]|0)==-1:0){c[(f+280|0)>>2]=1;c[(f+280|0)+4>>2]=0}p=mL(c[(f+272|0)>>2]|0,c[(f+272|0)+4>>2]|0,c[(f+280|0)>>2]|0,c[(f+280|0)+4>>2]|0)|0;h[(f+256|0)>>3]=+(p>>>0)+4294967296.0*+(D|0)}if((CD(+h[(f+256|0)>>3])|0)==0){h[(c[(f+1276|0)>>2]|0)+8>>3]=+h[(f+256|0)>>3];b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|8;if(((e[(f+1570|0)>>1]|e[(f+1574|0)>>1])&8|0)!=0){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}if((a[(f+1583|0)>>0]|0)!=0){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}pw(c[(f+1276|0)>>2]|0);c[f+4864>>2]=2;c[f+4868>>2]=54;break a}}}while(0);be(c[(f+1276|0)>>2]|0);break};default:{k=1}}}}while(0);c[f+4792>>2]=g;c[f+4800>>2]=j;c[f+4824>>2]=i;c[f+4840>>2]=k} + + + +function wz(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;q=i;i=i+320|0;M=q;p=q+216|0;j=q+212|0;F=q+208|0;o=q+204|0;n=q+196|0;ja=q+192|0;m=q+188|0;k=q+200|0;l=q+224|0;I=q+228|0;ka=q+232|0;Z=q+236|0;_=q+240|0;L=q+244|0;A=q+248|0;fa=q+296|0;ga=q+300|0;ca=q+184|0;Q=q+180|0;R=q+176|0;da=q+172|0;S=q+168|0;ea=q+164|0;ia=q+160|0;ha=q+48|0;T=q+56|0;B=q+220|0;C=q+40|0;G=q+36|0;P=q+32|0;N=q+52|0;D=q+20|0;K=q+16|0;O=q+304|0;H=q+12|0;J=q+8|0;E=q+305|0;U=q+24|0;V=q+28|0;W=q+156|0;X=q+60|0;Y=q+64|0;aa=q+68|0;ba=q+72|0;r=q+76|0;s=q+80|0;v=q+84|0;z=q+88|0;t=q+92|0;u=q+96|0;x=q+104|0;y=q+152|0;w=q+44|0;c[j>>2]=e;c[F>>2]=f;c[o>>2]=g;c[n>>2]=c[(c[j>>2]|0)+8>>2];c[m>>2]=c[o>>2];c[k>>2]=0;c[l>>2]=0;c[L>>2]=c[c[j>>2]>>2];if((c[n>>2]|0)==0){c[p>>2]=0;e=c[p>>2]|0;i=q;return e|0}if((c[F>>2]|0)==0){c[ja>>2]=101}else{c[ja>>2]=d[c[F>>2]>>0]|0}a:do{switch(c[ja>>2]|0){case 101:{Qv(c[n>>2]|0,28,0,c[o>>2]|0)|0;break};case 159:{c[m>>2]=c[(c[F>>2]|0)+28>>2];break};case 97:{Sv(c[n>>2]|0,97,0,c[o>>2]|0,0,c[(c[F>>2]|0)+8>>2]|0,0)|0;break};case 94:case 88:case 87:case 92:case 86:case 85:case 93:case 90:case 91:case 89:case 71:case 72:{c[I>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,k)|0;c[ka>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+16>>2]|0,l)|0;Tv(c[n>>2]|0,c[ja>>2]|0,c[ka>>2]|0,c[I>>2]|0,c[o>>2]|0)|0;break};case 157:{c[ia>>2]=c[(c[F>>2]|0)+12>>2];do{if((d[c[ia>>2]>>0]|0)==132){yz(c[j>>2]|0,c[ia>>2]|0,1,c[o>>2]|0)}else{if((d[c[ia>>2]>>0]|0)==133){zz(c[n>>2]|0,c[(c[ia>>2]|0)+8>>2]|0,1,c[o>>2]|0);break}else{a[A>>0]=-124;c[A+4>>2]=17408;c[A+8>>2]=0;c[I>>2]=oz(c[j>>2]|0,A,k)|0;c[ka>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,l)|0;Tv(c[n>>2]|0,90,c[ka>>2]|0,c[I>>2]|0,c[o>>2]|0)|0;break}}}while(0);c[m>>2]=c[o>>2];break};case 77:case 76:{Qv(c[n>>2]|0,25,1,c[o>>2]|0)|0;c[I>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,k)|0;c[ha>>2]=oy(c[n>>2]|0,c[ja>>2]|0,c[I>>2]|0)|0;Qv(c[n>>2]|0,37,c[o>>2]|0,-1)|0;jw(c[n>>2]|0,c[ha>>2]|0);break};case 156:{c[fa>>2]=c[(c[F>>2]|0)+40>>2];c[ga>>2]=(c[(c[fa>>2]|0)+28>>2]|0)+((b[(c[F>>2]|0)+34>>1]|0)*24|0);if((a[c[fa>>2]>>0]|0)==0){c[m>>2]=c[(c[ga>>2]|0)+16>>2];break a}if((a[(c[fa>>2]|0)+1>>0]|0)!=0){Tv(c[n>>2]|0,46,c[(c[fa>>2]|0)+8>>2]|0,c[(c[ga>>2]|0)+12>>2]|0,c[o>>2]|0)|0}else{h=11}break};case 38:{c[m>>2]=wz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,c[o>>2]|0)|0;c[S>>2]=(Qw(c[(c[F>>2]|0)+8>>2]|0,0)|0)<<24>>24;c[ea>>2]=(c[S>>2]|0)-97+143;if((c[m>>2]|0)!=(c[o>>2]|0)){Qv(c[n>>2]|0,34,c[m>>2]|0,c[o>>2]|0)|0;c[m>>2]=c[o>>2]}oy(c[n>>2]|0,c[ea>>2]|0,c[m>>2]|0)|0;Az(c[j>>2]|0,c[m>>2]|0,1);break};case 154:{h=11;break};case 148:case 73:{c[I>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,k)|0;c[ka>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+16>>2]|0,l)|0;c[ja>>2]=(c[ja>>2]|0)==73?79:78;pz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,c[(c[F>>2]|0)+16>>2]|0,c[ja>>2]|0,c[I>>2]|0,c[ka>>2]|0,c[m>>2]|0,144)|0;break};case 132:{yz(c[j>>2]|0,c[F>>2]|0,0,c[o>>2]|0);break};case 134:{c[R>>2]=(c[(c[F>>2]|0)+8>>2]|0)+2;c[Q>>2]=(Ub(c[R>>2]|0)|0)-1;c[da>>2]=ow(mz(c[n>>2]|0)|0,c[R>>2]|0,c[Q>>2]|0)|0;Sv(c[n>>2]|0,30,(c[Q>>2]|0)/2|0,c[o>>2]|0,0,c[da>>2]|0,-1)|0;break};case 133:{zz(c[n>>2]|0,c[(c[F>>2]|0)+8>>2]|0,0,c[o>>2]|0);break};case 79:case 78:case 83:case 80:case 81:case 82:{c[I>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,k)|0;c[ka>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+16>>2]|0,l)|0;pz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,c[(c[F>>2]|0)+16>>2]|0,c[ja>>2]|0,c[I>>2]|0,c[ka>>2]|0,c[m>>2]|0,16)|0;break};case 19:case 96:{c[I>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,k)|0;c[m>>2]=c[o>>2];Qv(c[n>>2]|0,c[ja>>2]|0,c[I>>2]|0,c[m>>2]|0)|0;break};case 24:{c[m>>2]=wz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,c[o>>2]|0)|0;break};case 153:{c[D>>2]=0;a[O>>0]=a[(c[(c[(c[L>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;c[H>>2]=0;if((c[(c[F>>2]|0)+4>>2]&16384|0)!=0){c[B>>2]=0}else{c[B>>2]=c[(c[F>>2]|0)+20>>2]}if((c[B>>2]|0)!=0){r=c[c[B>>2]>>2]|0}else{r=0}c[C>>2]=r;c[N>>2]=c[(c[F>>2]|0)+8>>2];c[P>>2]=Ub(c[N>>2]|0)|0;c[G>>2]=rg(c[L>>2]|0,c[N>>2]|0,c[P>>2]|0,c[C>>2]|0,a[O>>0]|0,0)|0;if((c[G>>2]|0)==0){e=c[j>>2]|0;f=c[N>>2]|0;c[M>>2]=c[P>>2];c[M+4>>2]=f;bf(e,25672,M);break a}if((b[(c[G>>2]|0)+2>>1]&512|0)!=0){c[J>>2]=cz(c[n>>2]|0)|0;vz(c[j>>2]|0,c[c[(c[B>>2]|0)+4>>2]>>2]|0,c[o>>2]|0);c[K>>2]=1;while(1){r=c[n>>2]|0;if((c[K>>2]|0)>=(c[C>>2]|0)){break}Qv(r,77,c[o>>2]|0,c[J>>2]|0)|0;jz(c[j>>2]|0,c[o>>2]|0,1);dz(c[j>>2]|0);vz(c[j>>2]|0,c[(c[(c[B>>2]|0)+4>>2]|0)+((c[K>>2]|0)*20|0)>>2]|0,c[o>>2]|0);az(c[j>>2]|0);c[K>>2]=(c[K>>2]|0)+1}$y(r,c[J>>2]|0);break a}if((b[(c[G>>2]|0)+2>>1]&1024|0)!=0){vz(c[j>>2]|0,c[c[(c[B>>2]|0)+4>>2]>>2]|0,c[o>>2]|0);break a}c[K>>2]=0;while(1){if((c[K>>2]|0)>=(c[C>>2]|0)){break}if((c[K>>2]|0)<32){if((Bz(c[(c[(c[B>>2]|0)+4>>2]|0)+((c[K>>2]|0)*20|0)>>2]|0)|0)!=0){c[D>>2]=c[D>>2]|1<>2]}}if((b[(c[G>>2]|0)+2>>1]&32|0)!=0){if((c[H>>2]|0)==0){c[H>>2]=Jw(c[j>>2]|0,c[(c[(c[B>>2]|0)+4>>2]|0)+((c[K>>2]|0)*20|0)>>2]|0)|0}}c[K>>2]=(c[K>>2]|0)+1}if((c[B>>2]|0)!=0){r=c[j>>2]|0;if((c[D>>2]|0)!=0){c[I>>2]=(c[r+72>>2]|0)+1;e=(c[j>>2]|0)+72|0;c[e>>2]=(c[e>>2]|0)+(c[C>>2]|0)}else{c[I>>2]=fz(r,c[C>>2]|0)|0}do{if((b[(c[G>>2]|0)+2>>1]&192|0)!=0){a[E>>0]=a[c[c[(c[B>>2]|0)+4>>2]>>2]>>0]|0;if((d[E>>0]|0)!=154){if((d[E>>0]|0)!=156){break}}a[(c[c[(c[B>>2]|0)+4>>2]>>2]|0)+38>>0]=b[(c[G>>2]|0)+2>>1]&192}}while(0);dz(c[j>>2]|0);Cz(c[j>>2]|0,c[B>>2]|0,c[I>>2]|0,3)|0;az(c[j>>2]|0)}else{c[I>>2]=0}if((c[C>>2]|0)>=2){if((c[(c[F>>2]|0)+4>>2]&128|0)!=0){c[G>>2]=Dz(c[L>>2]|0,c[G>>2]|0,c[C>>2]|0,c[(c[(c[B>>2]|0)+4>>2]|0)+20>>2]|0)|0}else{h=78}}else{h=78}if((h|0)==78){if((c[C>>2]|0)>0){c[G>>2]=Dz(c[L>>2]|0,c[G>>2]|0,c[C>>2]|0,c[c[(c[B>>2]|0)+4>>2]>>2]|0)|0}}if((b[(c[G>>2]|0)+2>>1]&32|0)!=0){if((c[H>>2]|0)==0){c[H>>2]=c[(c[L>>2]|0)+8>>2]}Sv(c[n>>2]|0,36,0,0,0,c[H>>2]|0,-4)|0}Sv(c[n>>2]|0,1,c[D>>2]|0,c[I>>2]|0,c[o>>2]|0,c[G>>2]|0,-5)|0;gf(c[n>>2]|0,c[C>>2]&255);if((c[C>>2]|0)!=0){if((c[D>>2]|0)==0){iz(c[j>>2]|0,c[I>>2]|0,c[C>>2]|0)}}break};case 155:{c[T>>2]=c[(c[F>>2]|0)+40>>2];if((c[T>>2]|0)==0){e=c[j>>2]|0;c[M>>2]=c[(c[F>>2]|0)+8>>2];bf(e,25640,M);break a}else{c[m>>2]=c[(c[(c[T>>2]|0)+40>>2]|0)+(b[(c[F>>2]|0)+34>>1]<<4)+8>>2];break a}};case 135:{Qv(c[n>>2]|0,31,b[(c[F>>2]|0)+32>>1]|0,c[o>>2]|0)|0;if((a[(c[(c[F>>2]|0)+8>>2]|0)+1>>0]|0)!=0){nf(c[n>>2]|0,-1,c[(c[(c[j>>2]|0)+472>>2]|0)+((b[(c[F>>2]|0)+32>>1]|0)-1<<2)>>2]|0,-2)}break};case 75:{c[U>>2]=cz(c[n>>2]|0)|0;c[V>>2]=cz(c[n>>2]|0)|0;Qv(c[n>>2]|0,28,0,c[o>>2]|0)|0;rz(c[j>>2]|0,c[F>>2]|0,c[U>>2]|0,c[V>>2]|0);Qv(c[n>>2]|0,25,1,c[o>>2]|0)|0;$y(c[n>>2]|0,c[U>>2]|0);Qv(c[n>>2]|0,37,c[o>>2]|0,0)|0;$y(c[n>>2]|0,c[V>>2]|0);break};case 158:case 95:{c[m>>2]=wz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,c[o>>2]|0)|0;break};case 119:case 20:{c[m>>2]=Ez(c[j>>2]|0,c[F>>2]|0,0,0)|0;break};case 74:{c[W>>2]=c[(c[F>>2]|0)+12>>2];c[X>>2]=c[(c[(c[F>>2]|0)+20>>2]|0)+4>>2];c[Y>>2]=c[c[X>>2]>>2];c[I>>2]=oz(c[j>>2]|0,c[W>>2]|0,k)|0;c[ka>>2]=oz(c[j>>2]|0,c[Y>>2]|0,l)|0;c[Z>>2]=Wv(c[j>>2]|0)|0;c[_>>2]=Wv(c[j>>2]|0)|0;pz(c[j>>2]|0,c[W>>2]|0,c[Y>>2]|0,83,c[I>>2]|0,c[ka>>2]|0,c[Z>>2]|0,16)|0;c[X>>2]=(c[X>>2]|0)+20;c[Y>>2]=c[c[X>>2]>>2];Xv(c[j>>2]|0,c[l>>2]|0);c[ka>>2]=oz(c[j>>2]|0,c[Y>>2]|0,l)|0;pz(c[j>>2]|0,c[W>>2]|0,c[Y>>2]|0,81,c[I>>2]|0,c[ka>>2]|0,c[_>>2]|0,16)|0;Tv(c[n>>2]|0,72,c[Z>>2]|0,c[_>>2]|0,c[o>>2]|0)|0;Xv(c[j>>2]|0,c[Z>>2]|0);Xv(c[j>>2]|0,c[_>>2]|0);break};case 62:{c[aa>>2]=c[(c[F>>2]|0)+44>>2];e=($(c[(c[F>>2]|0)+28>>2]|0,(b[(c[aa>>2]|0)+38>>1]|0)+1|0)|0)+1|0;c[ba>>2]=e+(b[(c[F>>2]|0)+32>>1]|0);Qv(c[n>>2]|0,129,c[ba>>2]|0,c[o>>2]|0)|0;if((b[(c[F>>2]|0)+32>>1]|0)>=0){if((a[(c[(c[aa>>2]|0)+4>>2]|0)+((b[(c[F>>2]|0)+32>>1]|0)*24|0)+21>>0]|0)==101){oy(c[n>>2]|0,39,c[o>>2]|0)|0}}break};case 57:{if((c[(c[j>>2]|0)+412>>2]|0)==0){bf(c[j>>2]|0,25704,M);c[p>>2]=0;e=c[p>>2]|0;i=q;return e|0}if((a[(c[F>>2]|0)+1>>0]|0)==2){xw(c[j>>2]|0)}if((a[(c[F>>2]|0)+1>>0]|0)==4){Sv(c[n>>2]|0,24,0,4,0,c[(c[F>>2]|0)+8>>2]|0,0)|0;break a}else{_y(c[j>>2]|0,1811,a[(c[F>>2]|0)+1>>0]|0,c[(c[F>>2]|0)+8>>2]|0,0,0);break a}};default:{c[w>>2]=0;c[t>>2]=c[(c[F>>2]|0)+20>>2];c[u>>2]=c[(c[t>>2]|0)+4>>2];c[v>>2]=c[c[t>>2]>>2];c[r>>2]=cz(c[n>>2]|0)|0;e=c[(c[F>>2]|0)+12>>2]|0;c[y>>2]=e;if((e|0)!=0){D=A+0|0;C=(c[y>>2]|0)+0|0;B=D+48|0;do{c[D>>2]=c[C>>2];D=D+4|0;C=C+4|0}while((D|0)<(B|0));Fz(A,oz(c[j>>2]|0,c[y>>2]|0,k)|0);a[x>>0]=79;c[x+12>>2]=A;c[w>>2]=x;c[k>>2]=0}c[z>>2]=0;while(1){if((c[z>>2]|0)>=((c[v>>2]|0)-1|0)){break}dz(c[j>>2]|0);A=c[(c[u>>2]|0)+((c[z>>2]|0)*20|0)>>2]|0;if((c[y>>2]|0)!=0){c[x+16>>2]=A}else{c[w>>2]=A}c[s>>2]=cz(c[n>>2]|0)|0;ez(c[j>>2]|0,c[w>>2]|0,c[s>>2]|0,8);vz(c[j>>2]|0,c[(c[u>>2]|0)+(((c[z>>2]|0)+1|0)*20|0)>>2]|0,c[o>>2]|0);Qv(c[n>>2]|0,16,0,c[r>>2]|0)|0;az(c[j>>2]|0);$y(c[n>>2]|0,c[s>>2]|0);c[z>>2]=(c[z>>2]|0)+2}if((c[v>>2]&1|0)!=0){dz(c[j>>2]|0);vz(c[j>>2]|0,c[(c[(c[t>>2]|0)+4>>2]|0)+(((c[v>>2]|0)-1|0)*20|0)>>2]|0,c[o>>2]|0);az(c[j>>2]|0)}else{Qv(c[n>>2]|0,28,0,c[o>>2]|0)|0}$y(c[n>>2]|0,c[r>>2]|0)}}}while(0);b:do{if((h|0)==11){c[ca>>2]=c[(c[F>>2]|0)+28>>2];do{if((c[ca>>2]|0)<0){if((c[(c[j>>2]|0)+92>>2]|0)>0){c[m>>2]=(b[(c[F>>2]|0)+32>>1]|0)+(c[(c[j>>2]|0)+92>>2]|0);break b}else{c[ca>>2]=c[(c[j>>2]|0)+96>>2];break}}}while(0);c[m>>2]=xz(c[j>>2]|0,c[(c[F>>2]|0)+44>>2]|0,b[(c[F>>2]|0)+32>>1]|0,c[ca>>2]|0,c[o>>2]|0,a[(c[F>>2]|0)+38>>0]|0)|0}}while(0);Xv(c[j>>2]|0,c[k>>2]|0);Xv(c[j>>2]|0,c[l>>2]|0);c[p>>2]=c[m>>2];e=c[p>>2]|0;i=q;return e|0}function xz(d,e,f,g,h,j){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;n=i;i=i+48|0;m=n+32|0;q=n+28|0;k=n+24|0;s=n+20|0;r=n+12|0;t=n+8|0;p=n+36|0;o=n+4|0;v=n;u=n+16|0;c[q>>2]=d;c[k>>2]=e;c[s>>2]=f;c[r>>2]=g;c[t>>2]=h;a[p>>0]=j;c[o>>2]=c[(c[q>>2]|0)+8>>2];c[v>>2]=0;c[u>>2]=(c[q>>2]|0)+116;while(1){if((c[v>>2]|0)>=10){break}if((c[(c[u>>2]|0)+12>>2]|0)>0){if((c[c[u>>2]>>2]|0)==(c[r>>2]|0)){if((b[(c[u>>2]|0)+4>>1]|0)==(c[s>>2]|0)){l=6;break}}}c[v>>2]=(c[v>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+20}if((l|0)==6){e=(c[q>>2]|0)+104|0;d=c[e>>2]|0;c[e>>2]=d+1;c[(c[u>>2]|0)+16>>2]=d;Pz(c[q>>2]|0,c[(c[u>>2]|0)+12>>2]|0);c[m>>2]=c[(c[u>>2]|0)+12>>2];d=c[m>>2]|0;i=n;return d|0}gz(c[o>>2]|0,c[k>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0);if((a[p>>0]|0)!=0){gf(c[o>>2]|0,a[p>>0]|0)}else{Qz(c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0)}c[m>>2]=c[t>>2];d=c[m>>2]|0;i=n;return d|0}function yz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+48|0;q=h+40|0;p=h+36|0;m=h+32|0;g=h+28|0;j=h+24|0;l=h+20|0;n=h+12|0;f=h;o=h+8|0;k=h+16|0;c[q>>2]=a;c[p>>2]=b;c[m>>2]=d;c[g>>2]=e;c[j>>2]=c[(c[q>>2]|0)+8>>2];e=(c[p>>2]|0)+8|0;if((c[(c[p>>2]|0)+4>>2]&1024|0)!=0){c[l>>2]=c[e>>2];if((c[m>>2]|0)!=0){c[l>>2]=0-(c[l>>2]|0)}Qv(c[j>>2]|0,25,c[l>>2]|0,c[g>>2]|0)|0;i=h;return}c[o>>2]=c[e>>2];q=c[o>>2]|0;c[n>>2]=Pg(q,f,Ub(c[o>>2]|0)|0,1)|0;do{if((c[n>>2]|0)!=0){if((c[n>>2]|0)==2){if((c[m>>2]|0)!=0){break}}zz(c[j>>2]|0,c[o>>2]|0,c[m>>2]|0,c[g>>2]|0);i=h;return}}while(0);if((c[m>>2]|0)!=0){if((c[n>>2]|0)==2){m=0;l=-2147483648}else{m=f;m=$K(0,0,c[m>>2]|0,c[m+4>>2]|0)|0;l=D}q=f;c[q>>2]=m;c[q+4>>2]=l}c[k>>2]=Oz(c[j>>2]|0,f)|0;Sv(c[j>>2]|0,26,0,c[g>>2]|0,0,c[k>>2]|0,-13)|0;i=h;return}function zz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;g=l+24|0;m=l+16|0;n=l+8|0;f=l+12|0;j=l;k=l+20|0;c[g>>2]=a;c[m>>2]=b;c[n>>2]=d;c[f>>2]=e;if((c[m>>2]|0)==0){i=l;return}a=c[m>>2]|0;zt(a,j,Ub(c[m>>2]|0)|0,1)|0;if((c[n>>2]|0)!=0){h[j>>3]=-+h[j>>3]}c[k>>2]=Oz(c[g>>2]|0,j)|0;Sv(c[g>>2]|0,133,0,c[f>>2]|0,0,c[k>>2]|0,-12)|0;i=l;return}function Az(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;jz(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0);i=e;return}function Bz(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Lz(c[d>>2]|0,1)|0;i=b;return a|0}function Cz(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;r=i;i=i+48|0;l=r+36|0;v=r+28|0;n=r+32|0;q=r+40|0;p=r+24|0;o=r+16|0;k=r+12|0;t=r+41|0;m=r+8|0;u=r+4|0;s=r;h=r+20|0;c[l>>2]=b;c[v>>2]=e;c[n>>2]=f;a[q>>0]=g;a[t>>0]=(a[q>>0]&1|0)!=0?33:34;c[k>>2]=c[c[v>>2]>>2];if((a[(c[l>>2]|0)+23>>0]|0)==0){a[q>>0]=d[q>>0]&-3}c[p>>2]=c[(c[v>>2]|0)+4>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[k>>2]|0)){break}c[m>>2]=c[c[p>>2]>>2];if((a[q>>0]&2|0)!=0){if((Bz(c[m>>2]|0)|0)!=0){Jz(c[l>>2]|0,c[m>>2]|0,(c[n>>2]|0)+(c[o>>2]|0)|0,0)}else{j=8}}else{j=8}do{if((j|0)==8){j=0;c[u>>2]=wz(c[l>>2]|0,c[m>>2]|0,(c[n>>2]|0)+(c[o>>2]|0)|0)|0;if((c[u>>2]|0)!=((c[n>>2]|0)+(c[o>>2]|0)|0)){c[h>>2]=c[(c[l>>2]|0)+8>>2];if((d[t>>0]|0)==33){b=Kz(c[h>>2]|0,-1)|0;c[s>>2]=b;if((d[b>>0]|0)==33){if(((c[(c[s>>2]|0)+4>>2]|0)+(c[(c[s>>2]|0)+12>>2]|0)+1|0)==(c[u>>2]|0)){if(((c[(c[s>>2]|0)+8>>2]|0)+(c[(c[s>>2]|0)+12>>2]|0)+1|0)==((c[n>>2]|0)+(c[o>>2]|0)|0)){b=(c[s>>2]|0)+12|0;c[b>>2]=(c[b>>2]|0)+1;break}}}}Qv(c[h>>2]|0,d[t>>0]|0,c[u>>2]|0,(c[n>>2]|0)+(c[o>>2]|0)|0)|0}}}while(0);c[o>>2]=(c[o>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+20}i=r;return c[k>>2]|0}function Dz(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var 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;o=i;i=i+64|0;l=o+56|0;v=o+52|0;m=o+48|0;r=o+44|0;z=o+40|0;y=o+36|0;q=o+32|0;x=o+28|0;n=o+20|0;k=o+16|0;p=o+12|0;u=o+8|0;s=o+4|0;w=o;t=o+24|0;c[v>>2]=f;c[m>>2]=g;c[r>>2]=h;c[z>>2]=j;c[n>>2]=0;c[k>>2]=0;c[u>>2]=0;if((c[z>>2]|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}if((d[c[z>>2]>>0]|0)!=154){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}c[y>>2]=c[(c[z>>2]|0)+44>>2];if((c[y>>2]|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}if((a[(c[y>>2]|0)+44>>0]&16|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}c[q>>2]=c[(ww(c[v>>2]|0,c[y>>2]|0)|0)+8>>2];c[x>>2]=c[c[q>>2]>>2];if((c[(c[x>>2]|0)+72>>2]|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}c[s>>2]=pe(c[v>>2]|0,c[(c[m>>2]|0)+24>>2]|0)|0;if((c[s>>2]|0)!=0){c[w>>2]=c[s>>2];while(1){if((a[c[w>>2]>>0]|0)==0){break}a[c[w>>2]>>0]=a[784+(d[c[w>>2]>>0]|0)>>0]|0;c[w>>2]=(c[w>>2]|0)+1}z=c[(c[x>>2]|0)+72>>2]|0;h=c[q>>2]|0;g=c[r>>2]|0;f=c[s>>2]|0;c[t>>2]=n;c[u>>2]=Ab[z&15](h,g,f,c[t>>2]|0,k)|0;cc(c[v>>2]|0,c[s>>2]|0)}if((c[u>>2]|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}f=c[v>>2]|0;c[p>>2]=ve(f,37+(Ub(c[(c[m>>2]|0)+24>>2]|0)|0)|0)|0;if((c[p>>2]|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}else{s=(c[p>>2]|0)+0|0;r=(c[m>>2]|0)+0|0;q=s+36|0;do{c[s>>2]=c[r>>2];s=s+4|0;r=r+4|0}while((s|0)<(q|0));c[(c[p>>2]|0)+24>>2]=(c[p>>2]|0)+36;g=c[(c[p>>2]|0)+24>>2]|0;f=c[(c[m>>2]|0)+24>>2]|0;fL(g|0,f|0,(Ub(c[(c[m>>2]|0)+24>>2]|0)|0)+1|0)|0;c[(c[p>>2]|0)+12>>2]=c[n>>2];c[(c[p>>2]|0)+4>>2]=c[k>>2];f=(c[p>>2]|0)+2|0;b[f>>1]=e[f>>1]|16;c[l>>2]=c[p>>2];f=c[l>>2]|0;i=o;return f|0}return 0}function Ez(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;A=i;i=i+144|0;I=A;k=A+100|0;l=A+104|0;r=A+108|0;F=A+112|0;z=A+120|0;o=A+124|0;m=A+128|0;n=A+132|0;J=A+136|0;u=A+140|0;p=A+96|0;E=A+92|0;q=A+116|0;B=A+28|0;D=A+24|0;t=A+12|0;C=A+16|0;h=A+20|0;v=A+68|0;w=A+48|0;s=A+52|0;y=A+56|0;x=A+60|0;H=A+64|0;G=A+72|0;c[l>>2]=b;c[r>>2]=e;c[F>>2]=f;c[z>>2]=g;c[o>>2]=-1;c[m>>2]=0;c[n>>2]=Ov(c[l>>2]|0)|0;if((c[n>>2]|0)==0){c[k>>2]=0;b=c[k>>2]|0;i=A;return b|0}dz(c[l>>2]|0);if((c[(c[r>>2]|0)+4>>2]&32|0)==0){c[o>>2]=Gz(c[l>>2]|0)|0}if((d[(c[l>>2]|0)+450>>0]|0)==2){b=c[c[l>>2]>>2]|0;f=(d[c[r>>2]>>0]|0)==75?25808:25816;e=c[(c[l>>2]|0)+468>>2]|0;c[I>>2]=(c[o>>2]|0)>=0?1784:25792;c[I+4>>2]=f;c[I+8>>2]=e;c[J>>2]=cf(b,25760,I)|0;Sv(c[n>>2]|0,157,c[(c[l>>2]|0)+464>>2]|0,0,0,c[J>>2]|0,-1)|0}I=c[r>>2]|0;do{if((d[c[r>>2]>>0]|0)==75){c[E>>2]=c[I+12>>2];c[q>>2]=0;if((c[F>>2]|0)!=0){Qv(c[n>>2]|0,28,0,c[F>>2]|0)|0}a[u>>0]=Iw(c[E>>2]|0)|0;e=(c[l>>2]|0)+68|0;b=c[e>>2]|0;c[e>>2]=b+1;c[(c[r>>2]|0)+28>>2]=b;c[p>>2]=Qv(c[n>>2]|0,55,c[(c[r>>2]|0)+28>>2]|0,((c[z>>2]|0)!=0^1)&1)|0;if((c[z>>2]|0)!=0){E=0}else{E=By(c[c[l>>2]>>2]|0,1,1)|0}c[q>>2]=E;E=c[r>>2]|0;do{if((c[(c[r>>2]|0)+4>>2]&2048|0)!=0){Hz(B,11,c[E+28>>2]|0);a[B+1>>0]=a[u>>0]|0;c[(c[(c[r>>2]|0)+20>>2]|0)+8>>2]=0;if((Mu(c[l>>2]|0,c[(c[r>>2]|0)+20>>2]|0,B)|0)==0){c[D>>2]=c[c[(c[r>>2]|0)+20>>2]>>2];b=Iz(c[l>>2]|0,c[(c[r>>2]|0)+12>>2]|0,c[c[(c[D>>2]|0)+4>>2]>>2]|0)|0;c[(c[q>>2]|0)+20>>2]=b;break}Ch(c[q>>2]|0);c[k>>2]=0;b=c[k>>2]|0;i=A;return b|0}else{if((c[E+20>>2]|0)!=0){c[C>>2]=c[(c[r>>2]|0)+20>>2];if((a[u>>0]|0)==0){a[u>>0]=98}if((c[q>>2]|0)!=0){b=Jw(c[l>>2]|0,c[(c[r>>2]|0)+12>>2]|0)|0;c[(c[q>>2]|0)+20>>2]=b}c[v>>2]=Wv(c[l>>2]|0)|0;c[w>>2]=Wv(c[l>>2]|0)|0;Qv(c[n>>2]|0,28,0,c[w>>2]|0)|0;c[t>>2]=c[c[C>>2]>>2];c[h>>2]=c[(c[C>>2]|0)+4>>2];while(1){if((c[t>>2]|0)<=0){break}c[y>>2]=c[c[h>>2]>>2];if((c[o>>2]|0)>=0){if((Bz(c[y>>2]|0)|0)==0){of(c[n>>2]|0,c[o>>2]|0);c[o>>2]=-1}}if((c[z>>2]|0)!=0){if((ex(c[y>>2]|0,x)|0)!=0){Tv(c[n>>2]|0,73,c[(c[r>>2]|0)+28>>2]|0,c[w>>2]|0,c[x>>2]|0)|0}else{j=29}}else{j=29}do{if((j|0)==29){j=0;c[s>>2]=wz(c[l>>2]|0,c[y>>2]|0,c[v>>2]|0)|0;C=c[n>>2]|0;B=c[s>>2]|0;if((c[z>>2]|0)!=0){Qv(C,38,B,(sy(c[n>>2]|0)|0)+2|0)|0;Tv(c[n>>2]|0,70,c[(c[r>>2]|0)+28>>2]|0,c[w>>2]|0,c[s>>2]|0)|0;break}else{Sv(C,48,B,1,c[w>>2]|0,u,1)|0;Az(c[l>>2]|0,c[s>>2]|0,1);Qv(c[n>>2]|0,107,c[(c[r>>2]|0)+28>>2]|0,c[w>>2]|0)|0;break}}}while(0);c[t>>2]=(c[t>>2]|0)+ -1;c[h>>2]=(c[h>>2]|0)+20}Xv(c[l>>2]|0,c[v>>2]|0);Xv(c[l>>2]|0,c[w>>2]|0)}}}while(0);if((c[q>>2]|0)!=0){nf(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,-6)}}else{c[H>>2]=c[I+20>>2];e=(c[l>>2]|0)+72|0;b=(c[e>>2]|0)+1|0;c[e>>2]=b;Hz(G,0,b);if((d[c[r>>2]>>0]|0)==119){a[G>>0]=10;Qv(c[n>>2]|0,28,0,c[G+4>>2]|0)|0}else{a[G>>0]=3;Qv(c[n>>2]|0,25,0,c[G+4>>2]|0)|0}gu(c[c[l>>2]>>2]|0,c[(c[H>>2]|0)+60>>2]|0);b=Bu(c[l>>2]|0,132,0,0,16688|0)|0;c[(c[H>>2]|0)+60>>2]=b;c[(c[H>>2]|0)+8>>2]=0;if((Mu(c[l>>2]|0,c[H>>2]|0,G)|0)==0){c[m>>2]=c[G+4>>2];break}c[k>>2]=0;b=c[k>>2]|0;i=A;return b|0}}while(0);if((c[o>>2]|0)>=0){jw(c[n>>2]|0,c[o>>2]|0)}az(c[l>>2]|0);c[k>>2]=c[m>>2];b=c[k>>2]|0;i=A;return b|0}function Fz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[(c[f>>2]|0)+38>>0]=a[c[f>>2]>>0]|0;a[c[f>>2]>>0]=-97;c[(c[f>>2]|0)+28>>2]=c[g>>2];b=(c[f>>2]|0)+4|0;c[b>>2]=c[b>>2]&-4097;i=e;return}function Gz(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=Ov(c[e>>2]|0)|0;d=c[d>>2]|0;e=(c[e>>2]|0)+80|0;a=c[e>>2]|0;c[e>>2]=a+1;a=oy(d,43,a)|0;i=b;return a|0}function Hz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;j=f;h=f+4|0;c[g>>2]=b;c[j>>2]=d;c[h>>2]=e;a[c[g>>2]>>0]=c[j>>2];c[(c[g>>2]|0)+4>>2]=c[h>>2];a[(c[g>>2]|0)+1>>0]=0;c[(c[g>>2]|0)+8>>2]=0;c[(c[g>>2]|0)+12>>2]=0;i=f;return}function Iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e+12|0;g=e;j=e+4|0;f=e+8|0;c[h>>2]=a;c[g>>2]=b;c[j>>2]=d;if((c[(c[g>>2]|0)+4>>2]&256|0)!=0){c[f>>2]=Jw(c[h>>2]|0,c[g>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}if((c[j>>2]|0)!=0){if((c[(c[j>>2]|0)+4>>2]&256|0)!=0){c[f>>2]=Jw(c[h>>2]|0,c[j>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}}c[f>>2]=Jw(c[h>>2]|0,c[g>>2]|0)|0;if((c[f>>2]|0)!=0){a=c[f>>2]|0;i=e;return a|0}c[f>>2]=Jw(c[h>>2]|0,c[j>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}function Jz(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+16|0;o=h;m=h+4|0;n=h+20|0;k=h+12|0;l=h+8|0;c[j>>2]=b;c[o>>2]=e;c[m>>2]=f;a[n>>0]=g;c[k>>2]=c[(c[j>>2]|0)+316>>2];c[o>>2]=hx(c[c[j>>2]>>2]|0,c[o>>2]|0,0)|0;c[k>>2]=Pu(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0)|0;if((c[k>>2]|0)==0){b=c[k>>2]|0;o=c[j>>2]|0;o=o+316|0;c[o>>2]=b;i=h;return}c[l>>2]=(c[(c[k>>2]|0)+4>>2]|0)+(((c[c[k>>2]>>2]|0)-1|0)*20|0);c[(c[l>>2]|0)+16>>2]=c[m>>2];b=(c[l>>2]|0)+13|0;a[b>>0]=a[b>>0]&-5|((d[n>>0]|0)&1)<<2&255;b=c[k>>2]|0;o=c[j>>2]|0;o=o+316|0;c[o>>2]=b;i=h;return}function Kz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;e=f+8|0;g=f;h=f+4|0;c[g>>2]=b;c[h>>2]=d;if((c[h>>2]|0)<0){c[h>>2]=(c[(c[g>>2]|0)+32>>2]|0)-1}if((a[(c[c[g>>2]>>2]|0)+64>>0]|0)!=0){c[e>>2]=25824;b=c[e>>2]|0;i=f;return b|0}else{c[e>>2]=(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*20|0);b=c[e>>2]|0;i=f;return b|0}return 0}function Lz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+48|0;f=e+32|0;g=e;d=e+8|0;c[f>>2]=a;c[g>>2]=b;c[d+0>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+20>>2]=c[g>>2];c[d>>2]=62;c[d+4>>2]=63;_w(d,c[f>>2]|0)|0;i=e;return c[d+20>>2]|0}function Mz(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;h=f;j=f+4|0;c[h>>2]=a;c[j>>2]=b;if((c[(c[h>>2]|0)+20>>2]|0)==3){if((c[(c[j>>2]|0)+4>>2]&1|0)!=0){c[(c[h>>2]|0)+20>>2]=0;c[g>>2]=2}else{e=4}}else{e=4}a:do{if((e|0)==4){switch(d[c[j>>2]>>0]|0|0){case 153:{e=5;break};case 156:case 155:case 154:case 27:{break};default:{c[g>>2]=0;break a}}do{if((e|0)==5){if((c[(c[h>>2]|0)+20>>2]|0)!=2){if((c[(c[j>>2]|0)+4>>2]&524288|0)==0){break}}c[g>>2]=0;break a}}while(0);c[(c[h>>2]|0)+20>>2]=0;c[g>>2]=2}}while(0);i=f;return c[g>>2]|0}function Nz(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d+4|0;c[e>>2]=a;c[d>>2]=b;c[(c[e>>2]|0)+20>>2]=0;i=d;return 2}function Oz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=b;c[g>>2]=d;c[f>>2]=$e(mz(c[h>>2]|0)|0,8)|0;if((c[f>>2]|0)==0){h=c[f>>2]|0;i=e;return h|0}h=c[f>>2]|0;b=c[g>>2]|0;a[h+0>>0]=a[b+0>>0]|0;a[h+1>>0]=a[b+1>>0]|0;a[h+2>>0]=a[b+2>>0]|0;a[h+3>>0]=a[b+3>>0]|0;a[h+4>>0]=a[b+4>>0]|0;a[h+5>>0]=a[b+5>>0]|0;a[h+6>>0]=a[b+6>>0]|0;a[h+7>>0]=a[b+7>>0]|0;h=c[f>>2]|0;i=e;return h|0}function Pz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;g=e;h=e+4|0;f=e+8|0;c[j>>2]=b;c[g>>2]=d;c[h>>2]=0;c[f>>2]=(c[j>>2]|0)+116;while(1){if((c[h>>2]|0)>=10){break}if((c[(c[f>>2]|0)+12>>2]|0)==(c[g>>2]|0)){a[(c[f>>2]|0)+6>>0]=0}c[h>>2]=(c[h>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+20}i=e;return}function Qz(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=i;i=i+32|0;k=p+28|0;n=p;o=p+4|0;h=p+8|0;q=p+12|0;r=p+16|0;l=p+20|0;m=p+24|0;c[k>>2]=d;c[n>>2]=e;c[o>>2]=f;c[h>>2]=g;if((b[(c[c[k>>2]>>2]|0)+60>>1]&2|0)!=0){i=p;return}c[q>>2]=0;c[m>>2]=(c[k>>2]|0)+116;while(1){if((c[q>>2]|0)>=10){break}if((c[(c[m>>2]|0)+12>>2]|0)==0){j=5;break}c[q>>2]=(c[q>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+20}if((j|0)==5){c[(c[m>>2]|0)+8>>2]=c[(c[k>>2]|0)+100>>2];c[c[m>>2]>>2]=c[n>>2];b[(c[m>>2]|0)+4>>1]=c[o>>2];c[(c[m>>2]|0)+12>>2]=c[h>>2];a[(c[m>>2]|0)+6>>0]=0;e=(c[k>>2]|0)+104|0;d=c[e>>2]|0;c[e>>2]=d+1;c[(c[m>>2]|0)+16>>2]=d;i=p;return}c[r>>2]=2147483647;c[l>>2]=-1;c[q>>2]=0;c[m>>2]=(c[k>>2]|0)+116;while(1){if((c[q>>2]|0)>=10){break}if((c[(c[m>>2]|0)+16>>2]|0)<(c[r>>2]|0)){c[l>>2]=c[q>>2];c[r>>2]=c[(c[m>>2]|0)+16>>2]}c[q>>2]=(c[q>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+20}if((c[l>>2]|0)<0){i=p;return}c[m>>2]=(c[k>>2]|0)+116+((c[l>>2]|0)*20|0);c[(c[m>>2]|0)+8>>2]=c[(c[k>>2]|0)+100>>2];c[c[m>>2]>>2]=c[n>>2];b[(c[m>>2]|0)+4>>1]=c[o>>2];c[(c[m>>2]|0)+12>>2]=c[h>>2];a[(c[m>>2]|0)+6>>0]=0;e=(c[k>>2]|0)+104|0;d=c[e>>2]|0;c[e>>2]=d+1;c[(c[m>>2]|0)+16>>2]=d;i=p;return}function Rz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+6|0;j=f;g=f+4|0;h=f+5|0;c[j>>2]=b;a[g>>0]=d;a[h>>0]=Iw(c[j>>2]|0)|0;if((a[h>>0]|0)!=0){if((a[g>>0]|0)!=0){if((a[h>>0]|0)<99){if((a[g>>0]|0)<99){a[e>>0]=98;j=a[e>>0]|0;i=f;return j|0}}a[e>>0]=99;j=a[e>>0]|0;i=f;return j|0}}if((a[h>>0]|0)==0){if((a[g>>0]|0)==0){a[e>>0]=98;j=a[e>>0]|0;i=f;return j|0}}a[e>>0]=(a[h>>0]|0)+(a[g>>0]|0);j=a[e>>0]|0;i=f;return j|0}function Sz(e){e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f;l=f+4|0;j=f+8|0;k=f+12|0;c[h>>2]=e;do{if((c[h>>2]|0)==0){c[g>>2]=0}else{if((c[(c[h>>2]|0)+52>>2]|0)!=0){c[g>>2]=0;break}if((b[(c[h>>2]|0)+6>>1]&5|0)!=0){c[g>>2]=0;break}if((c[(c[h>>2]|0)+60>>2]|0)!=0){c[g>>2]=0;break}if((c[(c[h>>2]|0)+36>>2]|0)!=0){c[g>>2]=0;break}c[l>>2]=c[(c[h>>2]|0)+32>>2];if((c[c[l>>2]>>2]|0)!=1){c[g>>2]=0;break}if((c[(c[l>>2]|0)+28>>2]|0)!=0){c[g>>2]=0;break}c[k>>2]=c[(c[l>>2]|0)+24>>2];if((c[k>>2]|0)==0){c[g>>2]=0;break}if((a[(c[k>>2]|0)+44>>0]&16|0)!=0){c[g>>2]=0;break}c[j>>2]=c[c[h>>2]>>2];if((c[c[j>>2]>>2]|0)!=1){c[g>>2]=0;break}if((d[c[c[(c[j>>2]|0)+4>>2]>>2]>>0]|0|0)!=154){c[g>>2]=0;break}else{c[g>>2]=1;break}}}while(0);i=f;return c[g>>2]|0}function Tz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+4|0;j=f;g=f+9|0;h=f+8|0;c[j>>2]=b;a[g>>0]=d;a[h>>0]=uz(c[j>>2]|0)|0;d=a[h>>0]|0;if((d|0)==98){c[e>>2]=1}else if((d|0)==97){c[e>>2]=(a[g>>0]|0)==97&1}else{c[e>>2]=(a[g>>0]|0)>=99&1}i=f;return c[e>>2]|0}function Uz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g+8|0;k=g;h=g+4|0;f=g+12|0;c[j>>2]=b;c[k>>2]=d;c[h>>2]=e;a[f>>0]=Iw(c[k>>2]|0)|0;b=(Rz(c[j>>2]|0,a[f>>0]|0)|0)&255;a[f>>0]=b|c[h>>2]&255;i=g;return a[f>>0]|0}function Vz(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Lz(c[d>>2]|0,3)|0;i=b;return a|0}function Wz(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;f=g+16|0;j=g;k=g+4|0;l=g+8|0;h=g+12|0;c[j>>2]=a;c[k>>2]=d;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(e[(c[k>>2]|0)+52>>1]|0)){d=7;break}c[h>>2]=c[(c[(c[k>>2]|0)+32>>2]|0)+(c[l>>2]<<2)>>2];if((b[(c[(c[k>>2]|0)+4>>2]|0)+(c[l>>2]<<1)>>1]|0)>=0){if(0==(Dc(c[h>>2]|0,c[j>>2]|0)|0)){d=5;break}}c[l>>2]=(c[l>>2]|0)+1}if((d|0)==5){c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}else if((d|0)==7){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}return 0}function Xz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+160|0;f=h;k=h+28|0;o=h+20|0;j=h+16|0;m=h+8|0;l=h+4|0;n=h+12|0;g=h+32|0;c[k>>2]=b;c[h+24>>2]=d;c[o>>2]=e;c[j>>2]=Jd(c[c[o>>2]>>2]|0)|0;c[m>>2]=re(c[k>>2]|0)|0;c[n>>2]=0;if((c[j>>2]|0)==0){c[j>>2]=1784}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[m>>2]|0)+20>>2]|0)){break}c[n>>2]=(c[(c[m>>2]|0)+16>>2]|0)+(c[l>>2]<<4);if((c[(c[n>>2]|0)+4>>2]|0)!=0){if((Dc(c[c[n>>2]>>2]|0,c[j>>2]|0)|0)==0){break}}c[l>>2]=(c[l>>2]|0)+1}do{if((c[l>>2]|0)>=(c[(c[m>>2]|0)+20>>2]|0)){c[f>>2]=c[j>>2];yc(128,g,25904,f)|0}else{if((c[l>>2]|0)<2){c[f>>2]=c[j>>2];yc(128,g,25928,f)|0;break}if((a[(c[m>>2]|0)+62>>0]|0)==0){yc(128,g,25960,f)|0;break}if((Yc(c[(c[n>>2]|0)+4>>2]|0)|0)==0){if((Lr(c[(c[n>>2]|0)+4>>2]|0)|0)==0){zr(c[(c[n>>2]|0)+4>>2]|0)|0;c[(c[n>>2]|0)+4>>2]=0;c[(c[n>>2]|0)+12>>2]=0;hd(c[m>>2]|0);i=h;return}}c[f>>2]=c[j>>2];yc(128,g,26008,f)|0}}while(0);Xd(c[k>>2]|0,g,-1);i=h;return}function Yz(a,e,f,g,h,j,k){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;q=i;i=i+96|0;r=q+80|0;v=q+76|0;u=q+72|0;y=q+68|0;n=q+64|0;o=q+60|0;p=q+56|0;x=q+48|0;z=q+16|0;s=q+8|0;w=q+4|0;t=q;l=q+52|0;c[r>>2]=a;c[v>>2]=e;c[u>>2]=f;c[y>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>>2]=k;c[w>>2]=c[c[r>>2]>>2];c[z+0>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;c[z+20>>2]=0;c[z+24>>2]=0;c[z+28>>2]=0;c[z>>2]=c[r>>2];a=Zz(z,c[n>>2]|0)|0;c[x>>2]=a;do{if(0!=(a|0)){m=4}else{a=Zz(z,c[o>>2]|0)|0;c[x>>2]=a;if(0!=(a|0)){m=4}else{a=Zz(z,c[p>>2]|0)|0;c[x>>2]=a;if(0!=(a|0)){m=4}else{if((c[y>>2]|0)!=0){if((d[c[y>>2]>>0]|0)==97){c[l>>2]=c[(c[y>>2]|0)+8>>2]}else{c[l>>2]=0}c[x>>2]=Lv(c[r>>2]|0,c[v>>2]|0,c[l>>2]|0,0,0)|0;if((c[x>>2]|0)!=0){break}}c[s>>2]=Ov(c[r>>2]|0)|0;c[t>>2]=fz(c[r>>2]|0,4)|0;vz(c[r>>2]|0,c[n>>2]|0,c[t>>2]|0);vz(c[r>>2]|0,c[o>>2]|0,(c[t>>2]|0)+1|0);vz(c[r>>2]|0,c[p>>2]|0,(c[t>>2]|0)+2|0);if((c[s>>2]|0)!=0){Tv(c[s>>2]|0,1,0,(c[t>>2]|0)+3-(b[c[u>>2]>>1]|0)|0,(c[t>>2]|0)+3|0)|0;gf(c[s>>2]|0,b[c[u>>2]>>1]&255);nf(c[s>>2]|0,-1,c[u>>2]|0,-5);oy(c[s>>2]|0,139,(c[v>>2]|0)==24&1)|0}}}}}while(0);if((m|0)==4){a=(c[r>>2]|0)+64|0;c[a>>2]=(c[a>>2]|0)+1}gu(c[w>>2]|0,c[n>>2]|0);gu(c[w>>2]|0,c[o>>2]|0);gu(c[w>>2]|0,c[p>>2]|0);i=q;return}function Zz(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;g=i;i=i+16|0;j=g+8|0;h=g;f=g+4|0;c[j>>2]=b;c[h>>2]=e;c[f>>2]=0;do{if((c[h>>2]|0)!=0){if((d[c[h>>2]>>0]|0|0)!=27){c[f>>2]=bx(c[j>>2]|0,c[h>>2]|0)|0;break}else{a[c[h>>2]>>0]=97;break}}}while(0);i=g;return c[f>>2]|0}function _z(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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=i;i=i+80|0;j=k;l=k+64|0;z=k+56|0;x=k+52|0;n=k+48|0;o=k+44|0;p=k+40|0;u=k+36|0;t=k+68|0;m=k+24|0;h=k+20|0;g=k+16|0;r=k+12|0;s=k+8|0;y=k+4|0;q=k+28|0;v=k+32|0;c[l>>2]=b;c[k+60>>2]=e;c[z>>2]=f;c[n>>2]=0;c[o>>2]=re(c[l>>2]|0)|0;c[t>>2]=0;c[m>>2]=0;c[r>>2]=0;c[u>>2]=Jd(c[c[z>>2]>>2]|0)|0;c[p>>2]=Jd(c[(c[z>>2]|0)+4>>2]|0)|0;if((c[u>>2]|0)==0){c[u>>2]=1784}if((c[p>>2]|0)==0){c[p>>2]=1784}f=c[o>>2]|0;do{if((c[(c[o>>2]|0)+20>>2]|0)>=((c[(c[o>>2]|0)+116>>2]|0)+2|0)){c[j>>2]=c[(c[o>>2]|0)+116>>2];c[r>>2]=cf(f,26088,j)|0}else{if((a[f+62>>0]|0)==0){c[r>>2]=cf(c[o>>2]|0,26128,j)|0;break}c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[(c[o>>2]|0)+20>>2]|0)){break}c[y>>2]=c[(c[(c[o>>2]|0)+16>>2]|0)+(c[x>>2]<<4)>>2];if((Dc(c[y>>2]|0,c[p>>2]|0)|0)==0){w=12;break}c[x>>2]=(c[x>>2]|0)+1}if((w|0)==12){z=c[o>>2]|0;c[j>>2]=c[p>>2];c[r>>2]=cf(z,26176,j)|0;break}w=c[o>>2]|0;do{if((c[(c[o>>2]|0)+16>>2]|0)==((c[o>>2]|0)+448|0)){c[g>>2]=$e(w,48)|0;if((c[g>>2]|0)==0){i=k;return}else{z=c[g>>2]|0;b=c[(c[o>>2]|0)+16>>2]|0;c[z+0>>2]=c[b+0>>2];c[z+4>>2]=c[b+4>>2];c[z+8>>2]=c[b+8>>2];c[z+12>>2]=c[b+12>>2];c[z+16>>2]=c[b+16>>2];c[z+20>>2]=c[b+20>>2];c[z+24>>2]=c[b+24>>2];c[z+28>>2]=c[b+28>>2];break}}else{c[g>>2]=Ot(w,c[(c[o>>2]|0)+16>>2]|0,(c[(c[o>>2]|0)+20>>2]|0)+1<<4)|0;if((c[g>>2]|0)==0){i=k;return}}}while(0);c[(c[o>>2]|0)+16>>2]=c[g>>2];c[g>>2]=(c[(c[o>>2]|0)+16>>2]|0)+(c[(c[o>>2]|0)+20>>2]<<4);z=c[g>>2]|0;c[z+0>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[h>>2]=c[(c[o>>2]|0)+48>>2];c[n>>2]=Oh(c[(c[c[o>>2]>>2]|0)+16>>2]|0,c[u>>2]|0,h,s,t,m)|0;if((c[n>>2]|0)!=0){if((c[n>>2]|0)==7){a[(c[o>>2]|0)+64>>0]=1}Xd(c[l>>2]|0,c[m>>2]|0,-1);oc(c[m>>2]|0);i=k;return}c[h>>2]=c[h>>2]|256;c[n>>2]=Ph(c[s>>2]|0,c[t>>2]|0,c[o>>2]|0,(c[g>>2]|0)+4|0,0,c[h>>2]|0)|0;oc(c[t>>2]|0);z=(c[o>>2]|0)+20|0;c[z>>2]=(c[z>>2]|0)+1;if((c[n>>2]|0)==19){c[n>>2]=1;c[r>>2]=cf(c[o>>2]|0,26208,j)|0}else{if((c[n>>2]|0)==0){z=Qh(c[o>>2]|0,c[(c[g>>2]|0)+4>>2]|0)|0;c[(c[g>>2]|0)+12>>2]=z;if((c[(c[g>>2]|0)+12>>2]|0)!=0){if((d[(c[(c[g>>2]|0)+12>>2]|0)+76>>0]|0)!=0){if((d[(c[(c[g>>2]|0)+12>>2]|0)+77>>0]|0)!=(d[(c[(c[(c[o>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0)){c[r>>2]=cf(c[o>>2]|0,25264,j)|0;c[n>>2]=1}}}else{c[n>>2]=7}c[q>>2]=Zb(c[(c[g>>2]|0)+4>>2]|0)|0;$z(c[q>>2]|0,d[(c[o>>2]|0)+65>>0]|0)|0;z=c[(c[g>>2]|0)+4>>2]|0;aA(z,aA(c[(c[(c[o>>2]|0)+16>>2]|0)+4>>2]|0,-1)|0)|0;bA(c[(c[g>>2]|0)+4>>2]|0,3|c[(c[o>>2]|0)+24>>2]&28)|0}}a[(c[g>>2]|0)+8>>0]=3;z=pe(c[o>>2]|0,c[p>>2]|0)|0;c[c[g>>2]>>2]=z;if((c[n>>2]|0)==0){if((c[c[g>>2]>>2]|0)==0){c[n>>2]=7}}if((c[n>>2]|0)==0){Yb(c[o>>2]|0);c[n>>2]=Fy(c[o>>2]|0,r)|0}if((c[n>>2]|0)==0){i=k;return}c[v>>2]=(c[(c[o>>2]|0)+20>>2]|0)-1;if((c[(c[(c[o>>2]|0)+16>>2]|0)+(c[v>>2]<<4)+4>>2]|0)!=0){zr(c[(c[(c[o>>2]|0)+16>>2]|0)+(c[v>>2]<<4)+4>>2]|0)|0;c[(c[(c[o>>2]|0)+16>>2]|0)+(c[v>>2]<<4)+4>>2]=0;c[(c[(c[o>>2]|0)+16>>2]|0)+(c[v>>2]<<4)+12>>2]=0}hd(c[o>>2]|0);c[(c[o>>2]|0)+20>>2]=c[v>>2];if((c[n>>2]|0)==7|(c[n>>2]|0)==3082){a[(c[o>>2]|0)+64>>0]=1;cc(c[o>>2]|0,c[r>>2]|0);c[r>>2]=cf(c[o>>2]|0,9112,j)|0;break}if((c[r>>2]|0)==0){z=c[o>>2]|0;c[j>>2]=c[u>>2];c[r>>2]=cf(z,26240,j)|0}}}while(0);if((c[r>>2]|0)!=0){Xd(c[l>>2]|0,c[r>>2]|0,-1);cc(c[o>>2]|0,c[r>>2]|0)}if((c[n>>2]|0)==0){i=k;return}he(c[l>>2]|0,c[n>>2]|0);i=k;return}function $z(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=b;c[h>>2]=e;if((c[h>>2]|0)>=0){if((a[(c[g>>2]|0)+12>>0]|0)==0){if((dA(c[(c[g>>2]|0)+208>>2]|0)|0)==0){a[(c[g>>2]|0)+4>>0]=c[h>>2]}}}i=f;return d[(c[g>>2]|0)+4>>0]|0}function aA(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f;j=f+4|0;k=f+8|0;c[h>>2]=a;c[j>>2]=d;if((c[h>>2]|0)==0){c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}Uc(c[h>>2]|0);if((c[j>>2]|0)>=0){a=(c[(c[h>>2]|0)+4>>2]|0)+22|0;b[a>>1]=(e[a>>1]|0)&-5;if((c[j>>2]|0)!=0){a=(c[(c[h>>2]|0)+4>>2]|0)+22|0;b[a>>1]=e[a>>1]|0|4}}c[k>>2]=(b[(c[(c[h>>2]|0)+4>>2]|0)+22>>1]&4|0)!=0&1;c[g>>2]=c[k>>2];a=c[g>>2]|0;i=f;return a|0}function bA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d;f=d+4|0;c[g>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[g>>2]|0)+4>>2];Uc(c[g>>2]|0);cA(c[c[f>>2]>>2]|0,c[e>>2]|0);i=d;return 0}function cA(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;g=i;i=i+16|0;h=g+8|0;f=g;j=g+4|0;c[h>>2]=b;c[f>>2]=e;c[j>>2]=c[f>>2]&3;if((c[j>>2]|0)==1){b=1}else{b=(d[(c[h>>2]|0)+12>>0]|0)!=0}a[(c[h>>2]|0)+7>>0]=b?1:0;if((c[j>>2]|0)==3){j=(a[(c[h>>2]|0)+12>>0]|0)!=0^1}else{j=0}a[(c[h>>2]|0)+8>>0]=j?1:0;do{if((a[(c[h>>2]|0)+7>>0]|0)!=0){a[(c[h>>2]|0)+11>>0]=0;a[(c[h>>2]|0)+9>>0]=0}else{if((c[f>>2]&4|0)!=0){a[(c[h>>2]|0)+11>>0]=3;a[(c[h>>2]|0)+9>>0]=3;break}e=(c[f>>2]&8|0)!=0;a[(c[h>>2]|0)+11>>0]=2;j=(c[h>>2]|0)+9|0;if(e){a[j>>0]=3;break}else{a[j>>0]=2;break}}}while(0);a[(c[h>>2]|0)+10>>0]=a[(c[h>>2]|0)+11>>0]|0;if((a[(c[h>>2]|0)+8>>0]|0)!=0){e=(c[h>>2]|0)+10|0;a[e>>0]=d[e>>0]|32}h=(c[h>>2]|0)+20|0;j=d[h>>0]|0;if((c[f>>2]&16|0)!=0){a[h>>0]=j&-2;i=g;return}else{a[h>>0]=j|1;i=g;return}}function dA(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;if((c[e>>2]|0)==0){e=0;e=e&1;i=b;return e|0}e=(d[(c[e>>2]|0)+43>>0]|0|0)==2;e=e&1;i=b;return e|0}function eA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;j=d+16|0;e=d;g=d+4|0;h=d+8|0;f=d+12|0;c[j>>2]=a;c[e>>2]=b;c[g>>2]=c[c[j>>2]>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[g>>2]|0)+20>>2]|0)){break}c[f>>2]=(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4);do{if((c[(c[f>>2]|0)+4>>2]|0)!=0){if((c[e>>2]|0)!=0){if(0!=(Dc(c[e>>2]|0,c[c[f>>2]>>2]|0)|0)){break}}aw(c[j>>2]|0,c[h>>2]|0)}}while(0);c[h>>2]=(c[h>>2]|0)+1}i=d;return}function fA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+48|0;e=j+36|0;d=j+32|0;n=j+28|0;g=j+24|0;o=j+20|0;f=j+16|0;m=j+8|0;l=j+4|0;k=j;h=j+12|0;c[e>>2]=a;c[d>>2]=b;c[o>>2]=c[c[e>>2]>>2];c[f>>2]=ef(c[c[e>>2]>>2]|0,c[(c[d>>2]|0)+20>>2]|0)|0;c[n>>2]=gA(c[d>>2]|0)|0;c[m>>2]=16;c[l>>2]=c[(c[(c[o>>2]|0)+16>>2]|0)+(c[f>>2]<<4)>>2];c[k>>2]=(c[f>>2]|0)==1?21432:21456;if((c[f>>2]|0)==1){c[m>>2]=14}if((Lv(c[e>>2]|0,c[m>>2]|0,c[c[d>>2]>>2]|0,c[c[n>>2]>>2]|0,c[l>>2]|0)|0)!=0){i=j;return}if((Lv(c[e>>2]|0,9,c[k>>2]|0,0,c[l>>2]|0)|0)!=0){i=j;return}o=Ov(c[e>>2]|0)|0;c[g>>2]=o;if((o|0)==0){i=j;return}$v(c[e>>2]|0,0,c[f>>2]|0);hA(c[e>>2]|0,c[f>>2]|0);c[h>>2]=hf(c[g>>2]|0,9,26296,0)|0;nf(c[g>>2]|0,(c[h>>2]|0)+1|0,c[c[d>>2]>>2]|0,0);nf(c[g>>2]|0,(c[h>>2]|0)+4|0,1808,-2);Pv(c[e>>2]|0,c[f>>2]|0);Qv(c[g>>2]|0,58,0,0)|0;Sv(c[g>>2]|0,123,c[f>>2]|0,0,0,c[c[d>>2]>>2]|0,0)|0;if((c[(c[e>>2]|0)+72>>2]|0)>=3){i=j;return}c[(c[e>>2]|0)+72>>2]=3;i=j;return}function gA(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=Ub(c[(c[e>>2]|0)+4>>2]|0)|0;a=zh((c[(c[e>>2]|0)+24>>2]|0)+8|0,c[(c[e>>2]|0)+4>>2]|0,c[d>>2]|0)|0;i=b;return a|0}function hA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d;g=d+4|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=Ov(c[e>>2]|0)|0;py(c[e>>2]|0,c[f>>2]|0,1,1,(c[f>>2]|0)==1?21432:21456);ff(c[g>>2]|0,53,0,1,c[f>>2]|0,5)|0;if((c[(c[e>>2]|0)+68>>2]|0)!=0){i=d;return}c[(c[e>>2]|0)+68>>2]=1;i=d;return}function iA(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+12|0;k=f+16|0;j=f+4|0;g=f+8|0;h=f;c[l>>2]=b;a[k>>0]=d;c[j>>2]=e;c[g>>2]=ve(c[l>>2]|0,40+(c[(c[j>>2]|0)+4>>2]|0)|0)|0;if((c[g>>2]|0)==0){l=c[g>>2]|0;i=f;return l|0}c[h>>2]=(c[g>>2]|0)+40;fL(c[h>>2]|0,c[c[j>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;c[(c[g>>2]|0)+12>>2]=c[h>>2];c[(c[g>>2]|0)+16>>2]=c[(c[j>>2]|0)+4>>2];a[c[g>>2]>>0]=a[k>>0]|0;l=c[g>>2]|0;i=f;return l|0}function jA(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;j=f;h=f+4|0;e=f+8|0;c[g>>2]=a;c[j>>2]=d;c[h>>2]=(c[j>>2]|0)+8;c[e>>2]=Zv(c[g>>2]|0,0,c[h>>2]|0)|0;ac(c[c[g>>2]>>2]|0,c[(c[h>>2]|0)+16>>2]|0);c[(c[h>>2]|0)+16>>2]=c[e>>2];if((c[e>>2]|0)!=0){j=(c[e>>2]|0)+40|0;b[j>>1]=(b[j>>1]|0)+1<<16>>16}if((Nx(c[g>>2]|0,c[h>>2]|0)|0)==0){j=c[e>>2]|0;i=f;return j|0}c[e>>2]=0;j=c[e>>2]|0;i=f;return j|0}function kA(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;n=g;j=g+4|0;l=g+8|0;k=g+12|0;m=g+16|0;c[h>>2]=a;c[n>>2]=b;c[j>>2]=d;c[l>>2]=e;c[k>>2]=f;c[m>>2]=c[c[n>>2]>>2];c[c[h>>2]>>2]=c[n>>2];c[(c[h>>2]|0)+12>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[j>>2]<<4)>>2];c[(c[h>>2]|0)+4>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[j>>2]<<4)+12>>2];c[(c[h>>2]|0)+16>>2]=c[l>>2];c[(c[h>>2]|0)+20>>2]=c[k>>2];c[(c[h>>2]|0)+8>>2]=(c[j>>2]|0)==1&1;i=g;return}function lA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+48|0;d=h;e=h+32|0;f=h+12|0;l=h+16|0;k=h+20|0;j=h+24|0;g=h+28|0;c[f>>2]=a;c[l>>2]=b;if((c[l>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=h;return a|0}c[j>>2]=c[(c[f>>2]|0)+12>>2];c[k>>2]=0;c[g>>2]=(c[l>>2]|0)+8;while(1){if((c[k>>2]|0)>=(c[c[l>>2]>>2]|0)){b=15;break}if((c[(c[f>>2]|0)+8>>2]|0)==0){if((c[(c[g>>2]|0)+4>>2]|0)!=0){if((Dc(c[(c[g>>2]|0)+4>>2]|0,c[j>>2]|0)|0)!=0){b=8;break}}cc(c[c[c[f>>2]>>2]>>2]|0,c[(c[g>>2]|0)+4>>2]|0);c[(c[g>>2]|0)+4>>2]=0;c[c[g>>2]>>2]=c[(c[f>>2]|0)+4>>2]}if((mA(c[f>>2]|0,c[(c[g>>2]|0)+20>>2]|0)|0)!=0){b=11;break}if((nA(c[f>>2]|0,c[(c[g>>2]|0)+44>>2]|0)|0)!=0){b=13;break}c[k>>2]=(c[k>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+72}if((b|0)==8){a=c[c[f>>2]>>2]|0;k=c[(c[f>>2]|0)+20>>2]|0;l=c[(c[g>>2]|0)+4>>2]|0;c[d>>2]=c[(c[f>>2]|0)+16>>2];c[d+4>>2]=k;c[d+8>>2]=l;bf(a,26608,d);c[e>>2]=1;a=c[e>>2]|0;i=h;return a|0}else if((b|0)==11){c[e>>2]=1;a=c[e>>2]|0;i=h;return a|0}else if((b|0)==13){c[e>>2]=1;a=c[e>>2]|0;i=h;return a|0}else if((b|0)==15){c[e>>2]=0;a=c[e>>2]|0;i=h;return a|0}return 0}function mA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d;g=d+4|0;c[f>>2]=a;c[g>>2]=b;while(1){if((c[g>>2]|0)==0){b=20;break}if((oA(c[f>>2]|0,c[c[g>>2]>>2]|0)|0)!=0){b=4;break}if((lA(c[f>>2]|0,c[(c[g>>2]|0)+32>>2]|0)|0)!=0){b=6;break}if((nA(c[f>>2]|0,c[(c[g>>2]|0)+36>>2]|0)|0)!=0){b=8;break}if((oA(c[f>>2]|0,c[(c[g>>2]|0)+40>>2]|0)|0)!=0){b=10;break}if((nA(c[f>>2]|0,c[(c[g>>2]|0)+44>>2]|0)|0)!=0){b=12;break}if((oA(c[f>>2]|0,c[(c[g>>2]|0)+48>>2]|0)|0)!=0){b=14;break}if((nA(c[f>>2]|0,c[(c[g>>2]|0)+60>>2]|0)|0)!=0){b=16;break}if((nA(c[f>>2]|0,c[(c[g>>2]|0)+64>>2]|0)|0)!=0){b=18;break}c[g>>2]=c[(c[g>>2]|0)+52>>2]}if((b|0)==4){c[e>>2]=1}else if((b|0)==6){c[e>>2]=1}else if((b|0)==8){c[e>>2]=1}else if((b|0)==10){c[e>>2]=1}else if((b|0)==12){c[e>>2]=1}else if((b|0)==14){c[e>>2]=1}else if((b|0)==16){c[e>>2]=1}else if((b|0)==18){c[e>>2]=1}else if((b|0)==20){c[e>>2]=0}i=d;return c[e>>2]|0}function nA(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g;f=g+12|0;h=g+4|0;k=g+8|0;c[h>>2]=b;c[k>>2]=e;while(1){if((c[k>>2]|0)==0){k=16;break}if((d[c[k>>2]>>0]|0)==135){if((a[(c[c[c[h>>2]>>2]>>2]|0)+137>>0]|0)==0){k=6;break}a[c[k>>2]>>0]=101}if((c[(c[k>>2]|0)+4>>2]&16384|0)!=0){k=16;break}b=c[h>>2]|0;e=(c[k>>2]|0)+20|0;if((c[(c[k>>2]|0)+4>>2]&2048|0)!=0){if((mA(b,c[e>>2]|0)|0)!=0){k=10;break}}else{if((oA(b,c[e>>2]|0)|0)!=0){k=12;break}}if((nA(c[h>>2]|0,c[(c[k>>2]|0)+16>>2]|0)|0)!=0){k=14;break}c[k>>2]=c[(c[k>>2]|0)+12>>2]}if((k|0)==6){b=c[c[h>>2]>>2]|0;c[j>>2]=c[(c[h>>2]|0)+16>>2];bf(b,26656,j);c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}else if((k|0)==10){c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}else if((k|0)==12){c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}else if((k|0)==14){c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}else if((k|0)==16){c[f>>2]=0;b=c[f>>2]|0;i=g;return b|0}return 0}function oA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d;j=d+4|0;h=d+8|0;g=d+12|0;c[f>>2]=a;c[j>>2]=b;if((c[j>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[h>>2]=0;c[g>>2]=c[(c[j>>2]|0)+4>>2];while(1){if((c[h>>2]|0)>=(c[c[j>>2]>>2]|0)){b=8;break}if((nA(c[f>>2]|0,c[c[g>>2]>>2]|0)|0)!=0){b=6;break}c[h>>2]=(c[h>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+20}if((b|0)==6){c[e>>2]=1;a=c[e>>2]|0;i=d;return a|0}else if((b|0)==8){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}return 0}function pA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d;g=d+4|0;c[f>>2]=a;c[g>>2]=b;while(1){if((c[g>>2]|0)==0){b=10;break}if((mA(c[f>>2]|0,c[(c[g>>2]|0)+8>>2]|0)|0)!=0){b=4;break}if((nA(c[f>>2]|0,c[(c[g>>2]|0)+20>>2]|0)|0)!=0){b=6;break}if((oA(c[f>>2]|0,c[(c[g>>2]|0)+24>>2]|0)|0)!=0){b=8;break}c[g>>2]=c[(c[g>>2]|0)+32>>2]}if((b|0)==4){c[e>>2]=1}else if((b|0)==6){c[e>>2]=1}else if((b|0)==8){c[e>>2]=1}else if((b|0)==10){c[e>>2]=0}i=d;return c[e>>2]|0}function qA(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;a=(c[e>>2]|0)+88|0;b[a>>1]=b[a>>1]&-65|64;i=d;return}function rA(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;j=f+16|0;l=f;h=f+4|0;g=f+8|0;k=f+12|0;c[j>>2]=a;c[l>>2]=d;c[k>>2]=c[c[j>>2]>>2];NA(c[(c[j>>2]|0)+16>>2]|0,(e[(c[j>>2]|0)+84>>1]|0)<<1);cc(c[k>>2]|0,c[(c[j>>2]|0)+16>>2]|0);c[g>>2]=c[l>>2]<<1;b[(c[j>>2]|0)+84>>1]=c[l>>2];a=ve(c[k>>2]|0,(c[g>>2]|0)*40|0)|0;c[h>>2]=a;c[(c[j>>2]|0)+16>>2]=a;if((c[(c[j>>2]|0)+16>>2]|0)==0){i=f;return}while(1){l=c[g>>2]|0;c[g>>2]=l+ -1;if((l|0)<=0){break}b[(c[h>>2]|0)+28>>1]=1;c[c[h>>2]>>2]=c[c[j>>2]>>2];c[h>>2]=(c[h>>2]|0)+40}i=f;return}function sA(b,d,f,g,h){b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=i;i=i+32|0;k=p+28|0;j=p;r=p+4|0;q=p+8|0;n=p+12|0;m=p+16|0;l=p+20|0;o=p+24|0;c[j>>2]=b;c[r>>2]=d;c[q>>2]=f;c[n>>2]=g;c[m>>2]=h;if((a[(c[c[j>>2]>>2]|0)+64>>0]|0)!=0){c[k>>2]=7;b=c[k>>2]|0;i=p;return b|0}else{b=(c[r>>2]|0)+($(c[q>>2]|0,e[(c[j>>2]|0)+84>>1]|0)|0)|0;c[o>>2]=(c[(c[j>>2]|0)+16>>2]|0)+(b*40|0);c[l>>2]=Yd(c[o>>2]|0,c[n>>2]|0,-1,1,c[m>>2]|0)|0;c[k>>2]=c[l>>2];b=c[k>>2]|0;i=p;return b|0}return 0}function tA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;m=f+24|0;j=f+8|0;l=f;h=f+12|0;g=f+16|0;k=f+20|0;c[m>>2]=a;c[j>>2]=b;b=l;c[b>>2]=d;c[b+4>>2]=e;c[h>>2]=Ov(c[m>>2]|0)|0;b=(c[m>>2]|0)+72|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[g>>2]=a;c[k>>2]=$e(c[c[m>>2]>>2]|0,8)|0;if((c[k>>2]|0)!=0){m=c[k>>2]|0;c[m+0>>2]=c[l+0>>2];c[m+4>>2]=c[l+4>>2]}Sv(c[h>>2]|0,26,0,c[g>>2]|0,0,c[k>>2]|0,-13)|0;rA(c[h>>2]|0,1);sA(c[h>>2]|0,0,0,c[j>>2]|0,0)|0;Qv(c[h>>2]|0,35,c[g>>2]|0,1)|0;i=f;return}function uA(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=a;do{if((c[f>>2]|0)!=0){if(0==(Dc(c[f>>2]|0,27536)|0)){c[e>>2]=1;break}if(0==(Dc(c[f>>2]|0,27528)|0)){c[e>>2]=0}else{b=6}}else{b=6}}while(0);if((b|0)==6){c[e>>2]=-1}i=d;return c[e>>2]|0}function vA(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;if((c[e>>2]|0)==6){c[b>>2]=0}else{c[b>>2]=c[28688+(c[e>>2]<<2)>>2]}i=d;return c[b>>2]|0}function wA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;a=g;b=c[a+4>>2]|0;if(!((b|0)>-1|(b|0)==-1&(c[a>>2]|0)>>>0>=4294967295)){b=c[f>>2]|0;b=b+160|0;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=e;return a|0}d=g;a=c[d+4>>2]|0;b=(c[f>>2]|0)+160|0;c[b>>2]=c[d>>2];c[b+4>>2]=a;b=g;MA(c[(c[f>>2]|0)+208>>2]|0,c[b>>2]|0,c[b+4>>2]|0);b=c[f>>2]|0;b=b+160|0;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=e;return a|0}function xA(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;Uc(c[f>>2]|0);if((a[(c[(c[f>>2]|0)+4>>2]|0)+17>>0]|0)==0){f=0;c[e>>2]=f;f=c[e>>2]|0;i=d;return f|0}f=(a[(c[(c[f>>2]|0)+4>>2]|0)+18>>0]|0)!=0^1?1:2;c[e>>2]=f;f=c[e>>2]|0;i=d;return f|0}function yA(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b;f=b+4|0;c[e>>2]=a;do{if(0==(Dc(c[e>>2]|0,28664)|0)){c[d>>2]=0}else{if(0==(Dc(c[e>>2]|0,28384)|0)){c[d>>2]=1;break}if(0==(Dc(c[e>>2]|0,28672)|0)){c[d>>2]=2;break}else{c[f>>2]=Vg(c[e>>2]|0)|0;c[d>>2]=((c[f>>2]|0)>=0&(c[f>>2]|0)<=2?c[f>>2]|0:0)&255;break}}}while(0);i=b;return c[d>>2]|0}function zA(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;l=g+12|0;m=g;k=g+4|0;h=g+8|0;j=g+16|0;c[l>>2]=e;c[m>>2]=f;c[k>>2]=c[(c[l>>2]|0)+4>>2];c[h>>2]=0;a[j>>0]=c[m>>2];Uc(c[l>>2]|0);if((b[(c[k>>2]|0)+22>>1]&2|0)!=0){if((((d[j>>0]|0|0)!=0?1:0)|0)!=(d[(c[k>>2]|0)+17>>0]|0|0)){c[h>>2]=8;m=c[h>>2]|0;i=g;return m|0}}a[(c[k>>2]|0)+17>>0]=(d[j>>0]|0|0)!=0?1:0;a[(c[k>>2]|0)+18>>0]=(d[j>>0]|0|0)==2?1:0;m=c[h>>2]|0;i=g;return m|0}function AA(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;k=f;l=f+4|0;h=f+8|0;j=f+12|0;c[k>>2]=b;c[l>>2]=e;c[h>>2]=LA(c[l>>2]|0)|0;c[j>>2]=c[c[k>>2]>>2];if((d[(c[j>>2]|0)+63>>0]|0|0)==(c[h>>2]|0)){c[g>>2]=0;l=c[g>>2]|0;i=f;return l|0}if((BA(c[k>>2]|0)|0)!=0){c[g>>2]=1;l=c[g>>2]|0;i=f;return l|0}else{a[(c[j>>2]|0)+63>>0]=c[h>>2];c[g>>2]=0;l=c[g>>2]|0;i=f;return l|0}return 0}function BA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e;d=e+12|0;g=e+4|0;f=e+8|0;c[g>>2]=b;c[f>>2]=c[c[g>>2]>>2];do{if((c[(c[(c[f>>2]|0)+16>>2]|0)+20>>2]|0)!=0){if((a[(c[f>>2]|0)+62>>0]|0)!=0){if((Yc(c[(c[(c[f>>2]|0)+16>>2]|0)+20>>2]|0)|0)==0){zr(c[(c[(c[f>>2]|0)+16>>2]|0)+20>>2]|0)|0;c[(c[(c[f>>2]|0)+16>>2]|0)+20>>2]=0;hd(c[f>>2]|0);break}}bf(c[g>>2]|0,28600,h);c[d>>2]=1;h=c[d>>2]|0;i=e;return h|0}}while(0);c[d>>2]=0;h=c[d>>2]|0;i=e;return h|0}function CA(b){b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;f=e;h=e+4|0;c[g>>2]=b;if((a[(c[g>>2]|0)+62>>0]|0)==0){i=e;return}c[f>>2]=c[(c[g>>2]|0)+16>>2];c[h>>2]=c[(c[g>>2]|0)+20>>2];while(1){b=c[h>>2]|0;c[h>>2]=b+ -1;if((b|0)<=0){break}if((c[(c[f>>2]|0)+4>>2]|0)!=0){bA(c[(c[f>>2]|0)+4>>2]|0,d[(c[f>>2]|0)+8>>0]|c[(c[g>>2]|0)+24>>2]&28)|0}c[f>>2]=(c[f>>2]|0)+16}i=e;return}function DA(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+8|0;g=d+16|0;f=d;b[g>>1]=a;if((b[g>>1]|0)<10){a=e;c[a>>2]=1;c[a+4>>2]=0;a=e;h=a;h=c[h>>2]|0;a=a+4|0;a=c[a>>2]|0;D=a;i=d;return h|0}k=(b[g>>1]|0)%10|0;j=f;c[j>>2]=k;c[j+4>>2]=((k|0)<0)<<31>>31;b[g>>1]=(b[g>>1]|0)/10|0;j=f;k=c[j+4>>2]|0;a=f;h=c[a>>2]|0;a=c[a+4>>2]|0;if(k>>>0>0|(k|0)==0&(c[j>>2]|0)>>>0>=5){j=$K(h|0,a|0,2,0)|0;k=f;c[k>>2]=j;c[k+4>>2]=D}else{if(a>>>0>0|(a|0)==0&h>>>0>=1){j=f;j=$K(c[j>>2]|0,c[j+4>>2]|0,1,0)|0;k=f;c[k>>2]=j;c[k+4>>2]=D}}if((b[g>>1]|0)<3){k=f;k=dL(c[k>>2]|0,c[k+4>>2]|0,8,0)|0;k=eL(k|0,D|0,3-(b[g>>1]|0)|0)|0;j=e;c[j>>2]=k;c[j+4>>2]=D;j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}if((b[g>>1]|0)>60){g=-1;f=2147483647}else{f=dL(c[f>>2]|0,c[f+4>>2]|0,8,0)|0;g=bL(f|0,D|0,(b[g>>1]|0)-3|0)|0;f=D}j=e;c[j>>2]=g;c[j+4>>2]=f;j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}function EA(b){b=b|0;var e=0,f=0,g=0;f=i;i=i+16|0;g=f+4|0;e=f;a[g>>0]=b;b=d[g>>0]|0;if((b|0)==6){c[e>>2]=28568}else if((b|0)==7){c[e>>2]=28528}else if((b|0)==9){c[e>>2]=28560}else if((b|0)==8){c[e>>2]=28544}else{c[e>>2]=28584}i=f;return c[e>>2]|0}function FA(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;x=i;i=i+80|0;t=x;n=x+60|0;q=x+56|0;z=x+52|0;s=x+48|0;p=x+44|0;D=x+40|0;o=x+36|0;r=x+64|0;v=x+24|0;l=x+20|0;u=x+16|0;w=x+12|0;C=x+8|0;y=x+68|0;A=x+28|0;B=x+32|0;c[q>>2]=f;c[z>>2]=g;c[s>>2]=h;c[p>>2]=j;c[D>>2]=k;c[o>>2]=0;c[r>>2]=0;c[v>>2]=c[(c[s>>2]|0)+20>>2];c[l>>2]=c[(c[s>>2]|0)+40>>2];do{if((c[v>>2]|0)==1){if((b[(c[z>>2]|0)+36>>1]|0)>=0){if((c[l>>2]|0)==0){c[n>>2]=0;f=c[n>>2]|0;i=x;return f|0}if((Dc(c[(c[(c[z>>2]|0)+4>>2]|0)+((b[(c[z>>2]|0)+36>>1]|0)*24|0)>>2]|0,c[l>>2]|0)|0)==0){c[n>>2]=0;f=c[n>>2]|0;i=x;return f|0}}}else{if((c[D>>2]|0)!=0){c[r>>2]=$e(c[c[q>>2]>>2]|0,c[v>>2]<<2)|0;if((c[r>>2]|0)!=0){c[c[D>>2]>>2]=c[r>>2];break}c[n>>2]=1;f=c[n>>2]|0;i=x;return f|0}}}while(0);c[o>>2]=c[(c[z>>2]|0)+8>>2];a:while(1){if((c[o>>2]|0)==0){break}do{if((e[(c[o>>2]|0)+50>>1]|0)==(c[v>>2]|0)){if((d[(c[o>>2]|0)+54>>0]|0)!=0){if((c[l>>2]|0)==0){if((a[(c[o>>2]|0)+55>>0]&3|0)==2){m=17;break a}else{break}}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[v>>2]|0)){break}b[y>>1]=b[(c[(c[o>>2]|0)+4>>2]|0)+(c[w>>2]<<1)>>1]|0;f=c[(c[(c[z>>2]|0)+4>>2]|0)+((b[y>>1]|0)*24|0)+16>>2]|0;c[A>>2]=f;c[A>>2]=(c[A>>2]|0)!=0?f:3640;if((Dc(c[(c[(c[o>>2]|0)+32>>2]|0)+(c[w>>2]<<2)>>2]|0,c[A>>2]|0)|0)!=0){break}c[B>>2]=c[(c[(c[z>>2]|0)+4>>2]|0)+((b[y>>1]|0)*24|0)>>2];c[C>>2]=0;while(1){if((c[C>>2]|0)>=(c[v>>2]|0)){break}if((Dc(c[(c[s>>2]|0)+36+(c[C>>2]<<3)+4>>2]|0,c[B>>2]|0)|0)==0){m=27;break}c[C>>2]=(c[C>>2]|0)+1}if((m|0)==27){m=0;if((c[r>>2]|0)!=0){c[(c[r>>2]|0)+(c[w>>2]<<2)>>2]=c[(c[s>>2]|0)+36+(c[C>>2]<<3)>>2]}}if((c[C>>2]|0)==(c[v>>2]|0)){break}c[w>>2]=(c[w>>2]|0)+1}if((c[w>>2]|0)==(c[v>>2]|0)){break a}}}}while(0);c[o>>2]=c[(c[o>>2]|0)+20>>2]}b:do{if((m|0)==17){if((c[r>>2]|0)!=0){c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[v>>2]|0)){break b}c[(c[r>>2]|0)+(c[u>>2]<<2)>>2]=c[(c[s>>2]|0)+36+(c[u>>2]<<3)>>2];c[u>>2]=(c[u>>2]|0)+1}}}}while(0);if((c[o>>2]|0)!=0){c[c[p>>2]>>2]=c[o>>2];c[n>>2]=0;f=c[n>>2]|0;i=x;return f|0}if((a[(c[q>>2]|0)+438>>0]|0)==0){f=c[q>>2]|0;g=c[(c[s>>2]|0)+8>>2]|0;c[t>>2]=c[c[c[s>>2]>>2]>>2];c[t+4>>2]=g;bf(f,28480,t)}cc(c[c[q>>2]>>2]|0,c[r>>2]|0);c[n>>2]=1;f=c[n>>2]|0;i=x;return f|0}function GA(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;h=l+20|0;o=l;j=l+4|0;m=l+8|0;k=l+12|0;n=l+16|0;g=l+24|0;c[o>>2]=d;c[j>>2]=f;if((c[(c[j>>2]|0)+16>>2]|0)==0){c[k>>2]=c[(c[j>>2]|0)+12>>2];c[n>>2]=mz(c[o>>2]|0)|0;d=$e(0,(e[(c[j>>2]|0)+52>>1]|0)+1|0)|0;c[(c[j>>2]|0)+16>>2]=d;if((c[(c[j>>2]|0)+16>>2]|0)==0){a[(c[n>>2]|0)+64>>0]=1;c[h>>2]=0;d=c[h>>2]|0;i=l;return d|0}c[m>>2]=0;while(1){n=c[m>>2]|0;f=c[j>>2]|0;if((c[m>>2]|0)>=(e[(c[j>>2]|0)+52>>1]|0)){break}b[g>>1]=b[(c[f+4>>2]|0)+(n<<1)>>1]|0;if((b[g>>1]|0)<0){f=100}else{f=a[(c[(c[k>>2]|0)+4>>2]|0)+((b[g>>1]|0)*24|0)+21>>0]|0}a[(c[(c[j>>2]|0)+16>>2]|0)+(c[m>>2]|0)>>0]=f;c[m>>2]=(c[m>>2]|0)+1}a[(c[f+16>>2]|0)+n>>0]=0}c[h>>2]=c[(c[j>>2]|0)+16>>2];d=c[h>>2]|0;i=l;return d|0}function HA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;e=d;g=d+4|0;c[f>>2]=a;c[e>>2]=b;if((c[e>>2]|0)!=0){c[g>>2]=28472}else{c[g>>2]=15320}pg(c[f>>2]|0,15328,2,1,c[g>>2]|0,38,0,0,0)|0;pg(c[f>>2]|0,15328,3,1,c[g>>2]|0,38,0,0,0)|0;pg(c[f>>2]|0,15312,2,1,1776,38,0,0,0)|0;KA(c[f>>2]|0,15312,12);KA(c[f>>2]|0,15328,((c[e>>2]|0)!=0?12:4)&255);i=d;return}function IA(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;f=b;e=b+4|0;c[d>>2]=a;c[f>>2]=0;c[e>>2]=(c[d>>2]|0)+116;while(1){if((c[f>>2]|0)>=10){break}if((c[(c[e>>2]|0)+12>>2]|0)!=0){bz(c[d>>2]|0,c[e>>2]|0);c[(c[e>>2]|0)+12>>2]=0}c[f>>2]=(c[f>>2]|0)+1;c[e>>2]=(c[e>>2]|0)+20}i=b;return}function JA(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;x=i;i=i+64|0;n=x+52|0;s=x+48|0;v=x+44|0;y=x+40|0;r=x+36|0;t=x+32|0;p=x+28|0;A=x+24|0;q=x+16|0;l=x+12|0;z=x+8|0;w=x+4|0;o=x;u=x+20|0;c[s>>2]=b;c[v>>2]=e;c[y>>2]=f;c[r>>2]=g;c[t>>2]=h;c[p>>2]=j;c[A>>2]=k;if((a[(c[v>>2]|0)+44>>0]&16|0)!=0){c[c[p>>2]>>2]=0;c[c[A>>2]>>2]=1;c[n>>2]=0;b=c[n>>2]|0;i=x;return b|0}c[l>>2]=ef(c[c[s>>2]>>2]|0,c[(c[v>>2]|0)+68>>2]|0)|0;c[o>>2]=Ov(c[s>>2]|0)|0;if((c[r>>2]|0)<0){c[r>>2]=c[(c[s>>2]|0)+68>>2]}b=c[r>>2]|0;c[r>>2]=b+1;c[z>>2]=b;if((c[p>>2]|0)!=0){c[c[p>>2]>>2]=c[z>>2]}do{if((a[(c[v>>2]|0)+44>>0]&32|0)==0){if((c[t>>2]|0)!=0){if((d[c[t>>2]>>0]|0|0)==0){m=11;break}}qy(c[s>>2]|0,c[z>>2]|0,c[l>>2]|0,c[v>>2]|0,c[y>>2]|0)}else{m=11}}while(0);if((m|0)==11){py(c[s>>2]|0,c[l>>2]|0,c[(c[v>>2]|0)+32>>2]|0,(c[y>>2]|0)==53&255,c[c[v>>2]>>2]|0)}if((c[A>>2]|0)!=0){c[c[A>>2]>>2]=c[r>>2]}c[q>>2]=0;c[w>>2]=c[(c[v>>2]|0)+8>>2];while(1){z=c[r>>2]|0;if((c[w>>2]|0)==0){break}c[r>>2]=z+1;c[u>>2]=z;if((a[(c[w>>2]|0)+55>>0]&3|0)==2){if((a[(c[v>>2]|0)+44>>0]&32|0)!=0){if((c[p>>2]|0)!=0){c[c[p>>2]>>2]=c[u>>2]}}}if((c[t>>2]|0)==0){m=22}else{if((d[(c[t>>2]|0)+((c[q>>2]|0)+1)>>0]|0|0)!=0){m=22}}if((m|0)==22){m=0;Tv(c[o>>2]|0,c[y>>2]|0,c[u>>2]|0,c[(c[w>>2]|0)+44>>2]|0,c[l>>2]|0)|0;ry(c[s>>2]|0,c[w>>2]|0)}c[w>>2]=c[(c[w>>2]|0)+20>>2];c[q>>2]=(c[q>>2]|0)+1}if((z|0)>(c[(c[s>>2]|0)+68>>2]|0)){c[(c[s>>2]|0)+68>>2]=c[r>>2]}c[n>>2]=c[q>>2];b=c[n>>2]|0;i=x;return b|0}function KA(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;j=i;i=i+16|0;n=j+8|0;m=j;l=j+12|0;k=j+4|0;c[n>>2]=f;c[m>>2]=g;a[l>>0]=h;g=c[n>>2]|0;f=c[m>>2]|0;c[k>>2]=rg(g,f,Ub(c[m>>2]|0)|0,2,1,0)|0;if((c[k>>2]|0)==0){i=j;return}n=(c[k>>2]|0)+2|0;b[n>>1]=e[n>>1]|0|(d[l>>0]|0);i=j;return}function LA(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[g>>2]=b;if((a[c[g>>2]>>0]|0)>=48){if((a[c[g>>2]>>0]|0)<=50){c[f>>2]=(a[c[g>>2]>>0]|0)-48}else{d=4}}else{d=4}do{if((d|0)==4){if((Dc(c[g>>2]|0,27912)|0)==0){c[f>>2]=1;break}if((Dc(c[g>>2]|0,11400)|0)==0){c[f>>2]=2;break}else{c[f>>2]=0;break}}}while(0);i=e;return c[f>>2]|0}function MA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;c[g>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;if((c[g>>2]|0)==0){i=e;return}b=c[f+4>>2]|0;a=(c[g>>2]|0)+16|0;c[a>>2]=c[f>>2];c[a+4>>2]=b;i=e;return}function NA(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+12|0;l=f;k=f+4|0;h=f+8|0;j=f+16|0;c[g>>2]=d;c[l>>2]=e;if((c[g>>2]|0)==0){i=f;return}if((c[l>>2]|0)==0){i=f;return}c[h>>2]=c[c[g>>2]>>2];a[j>>0]=a[(c[h>>2]|0)+64>>0]|0;d=(c[(c[h>>2]|0)+512>>2]|0)!=0;c[k>>2]=(c[g>>2]|0)+((c[l>>2]|0)*40|0);if(d){while(1){if(!((c[g>>2]|0)>>>0<(c[k>>2]|0)>>>0)){break}cc(c[h>>2]|0,c[(c[g>>2]|0)+36>>2]|0);c[g>>2]=(c[g>>2]|0)+40}i=f;return}while(1){if(!((c[g>>2]|0)>>>0<(c[k>>2]|0)>>>0)){break}e=c[g>>2]|0;if((b[(c[g>>2]|0)+28>>1]&9312|0)!=0){Gd(e)}else{if((c[e+36>>2]|0)!=0){cc(c[h>>2]|0,c[(c[g>>2]|0)+36>>2]|0);c[(c[g>>2]|0)+36>>2]=0}}b[(c[g>>2]|0)+28>>1]=128;c[g>>2]=(c[g>>2]|0)+40}a[(c[h>>2]|0)+64>>0]=a[j>>0]|0;i=f;return}function OA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+64|0;f=l;g=l+36|0;o=l+16|0;h=l+20|0;j=l+24|0;n=l+28|0;k=l+32|0;m=l+40|0;c[g>>2]=a;c[o>>2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=c[(c[(c[c[g>>2]>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2];c[n>>2]=1;while(1){if((c[n>>2]|0)>4){break}c[f>>2]=c[n>>2];yc(24,m,29728,f)|0;if((cw(c[c[g>>2]>>2]|0,m,c[k>>2]|0)|0)!=0){o=c[g>>2]|0;b=c[h>>2]|0;a=c[j>>2]|0;c[f>>2]=c[k>>2];c[f+4>>2]=m;c[f+8>>2]=b;c[f+12>>2]=a;Nv(o,25e3,f)}c[n>>2]=(c[n>>2]|0)+1}i=l;return}function PA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+48|0;h=e;g=e+36|0;j=e+20|0;l=e+24|0;k=e+28|0;f=e+32|0;c[g>>2]=a;c[j>>2]=b;c[l>>2]=d;c[k>>2]=Ov(c[g>>2]|0)|0;c[f>>2]=Wv(c[g>>2]|0)|0;Tv(c[k>>2]|0,114,c[j>>2]|0,c[f>>2]|0,c[l>>2]|0)|0;xw(c[g>>2]|0);a=c[g>>2]|0;k=(c[l>>2]|0)==1?21432:21456;j=c[j>>2]|0;d=c[f>>2]|0;b=c[f>>2]|0;c[h>>2]=c[(c[(c[c[g>>2]>>2]|0)+16>>2]|0)+(c[l>>2]<<4)>>2];c[h+4>>2]=k;c[h+8>>2]=j;c[h+12>>2]=d;c[h+16>>2]=b;Nv(a,29672,h);Xv(c[g>>2]|0,c[f>>2]|0);i=e;return}function QA(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=i;i=i+48|0;n=h+36|0;r=h+32|0;o=h+28|0;k=h+24|0;g=h+20|0;l=h+16|0;m=h+8|0;j=h+4|0;q=h;p=h+12|0;c[r>>2]=a;c[o>>2]=b;c[k>>2]=d;c[g>>2]=e;c[l>>2]=f;c[j>>2]=c[c[g>>2]>>2];do{if((c[j>>2]&(c[j>>2]|0)-1|0)==0){if((c[j>>2]|0)==0){f=1}else{f=c[j>>2]<<1}c[q>>2]=f;c[p>>2]=Ot(c[r>>2]|0,c[o>>2]|0,$(c[q>>2]|0,c[k>>2]|0)|0)|0;if((c[p>>2]|0)!=0){c[o>>2]=c[p>>2];break}c[c[l>>2]>>2]=-1;c[n>>2]=c[o>>2];a=c[n>>2]|0;i=h;return a|0}}while(0);c[m>>2]=c[o>>2];a=$(c[j>>2]|0,c[k>>2]|0)|0;aL((c[m>>2]|0)+a|0,0,c[k>>2]|0)|0;c[c[l>>2]>>2]=c[j>>2];a=c[g>>2]|0;c[a>>2]=(c[a>>2]|0)+1;c[n>>2]=c[o>>2];a=c[n>>2]|0;i=h;return a|0}function RA(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+32|0;q=k+28|0;p=k;h=k+4|0;n=k+8|0;l=k+12|0;o=k+16|0;j=k+20|0;m=k+24|0;c[q>>2]=a;c[p>>2]=b;c[h>>2]=e;c[n>>2]=f;c[l>>2]=g;c[o>>2]=0;c[j>>2]=0;if((c[(c[c[q>>2]>>2]|0)+24>>2]&8388608|0)!=0){c[j>>2]=gw(c[q>>2]|0,c[p>>2]|0)|0}c[m>>2]=c[j>>2];while(1){if((c[m>>2]|0)==0){break}if((d[(c[m>>2]|0)+8>>0]|0|0)==(c[h>>2]|0)){if((GD(c[(c[m>>2]|0)+16>>2]|0,c[n>>2]|0)|0)!=0){c[o>>2]=c[o>>2]|(d[(c[m>>2]|0)+9>>0]|0)}}c[m>>2]=c[(c[m>>2]|0)+32>>2]}if((c[l>>2]|0)==0){b=c[o>>2]|0;b=(b|0)!=0;a=c[j>>2]|0;a=b?a:0;i=k;return a|0}c[c[l>>2]>>2]=c[o>>2];b=c[o>>2]|0;b=(b|0)!=0;a=c[j>>2]|0;a=b?a:0;i=k;return a|0}function SA(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;k=m;l=m+16|0;h=m+4|0;j=m+8|0;n=m+12|0;c[h>>2]=b;c[j>>2]=e;c[n>>2]=f;if((a[(c[j>>2]|0)+44>>0]&16|0)!=0){if((c[(c[c[(ww(c[c[h>>2]>>2]|0,c[j>>2]|0)|0)+4>>2]>>2]|0)+52>>2]|0)!=0){g=3}}else{g=3}do{if((g|0)==3){if((a[(c[j>>2]|0)+44>>0]&1|0)!=0){if((c[(c[c[h>>2]>>2]|0)+24>>2]&2048|0)==0){if((d[(c[h>>2]|0)+18>>0]|0|0)==0){break}}}if((c[n>>2]|0)==0){if((c[(c[j>>2]|0)+12>>2]|0)!=0){b=c[h>>2]|0;c[k>>2]=c[c[j>>2]>>2];bf(b,30936,k);c[l>>2]=1;b=c[l>>2]|0;i=m;return b|0}}c[l>>2]=0;b=c[l>>2]|0;i=m;return b|0}}while(0);b=c[h>>2]|0;c[k>>2]=c[c[j>>2]>>2];bf(b,30904,k);c[l>>2]=1;b=c[l>>2]|0;i=m;return b|0}function TA(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;a=(c[e>>2]|0)+88|0;b[a>>1]=b[a>>1]&-17|16;i=d;return}function UA(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;y=i;i=i+112|0;t=y+100|0;s=y+96|0;m=y+92|0;J=y+88|0;B=y+84|0;k=y+80|0;G=y+76|0;n=y+72|0;v=y+68|0;x=y+64|0;K=y+60|0;I=y+56|0;o=y+52|0;q=y+48|0;r=y+16|0;w=y;C=y+4|0;z=y+8|0;A=y+12|0;p=y+20|0;D=y+24|0;E=y+28|0;l=y+32|0;u=y+36|0;F=y+40|0;H=y+44|0;c[s>>2]=e;c[m>>2]=f;c[J>>2]=g;c[B>>2]=h;c[k>>2]=j;c[z>>2]=0;c[A>>2]=0;c[E>>2]=0;if((c[J>>2]|0)==0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[s>>2]|0)+532>>2]|0)==0){if((c[(c[J>>2]|0)+68>>2]|0)==0){if((gw(c[s>>2]|0,c[m>>2]|0)|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((a[(c[m>>2]|0)+44>>0]&16|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[B>>2]|0)==10){if((b[(c[m>>2]|0)+36>>1]|0)>=0){c[B>>2]=d[(c[m>>2]|0)+45>>0]|0}if((c[B>>2]|0)==10){c[B>>2]=2}}if((c[c[(c[J>>2]|0)+32>>2]>>2]|0)!=1){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[(c[J>>2]|0)+32>>2]|0)+28>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[J>>2]|0)+36>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[J>>2]|0)+48>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[J>>2]|0)+40>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[J>>2]|0)+60>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[J>>2]|0)+52>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((b[(c[J>>2]|0)+6>>1]&1|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}c[G>>2]=c[c[J>>2]>>2];if((c[c[G>>2]>>2]|0)!=1){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((d[c[c[(c[G>>2]|0)+4>>2]>>2]>>0]|0)!=116){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}c[K>>2]=(c[(c[J>>2]|0)+32>>2]|0)+8;c[n>>2]=Zv(c[s>>2]|0,0,c[K>>2]|0)|0;if((c[n>>2]|0)==0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[n>>2]|0)==(c[m>>2]|0)){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if(((a[(c[m>>2]|0)+44>>0]&32|0)==0|0)!=((a[(c[n>>2]|0)+44>>0]&32|0)==0|0)){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((a[(c[n>>2]|0)+44>>0]&16|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[n>>2]|0)+12>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((b[(c[m>>2]|0)+38>>1]|0)!=(b[(c[n>>2]|0)+38>>1]|0)){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((b[(c[m>>2]|0)+36>>1]|0)!=(b[(c[n>>2]|0)+36>>1]|0)){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}c[I>>2]=0;a:while(1){if((c[I>>2]|0)>=(b[(c[m>>2]|0)+38>>1]|0)){F=64;break}c[F>>2]=(c[(c[m>>2]|0)+4>>2]|0)+((c[I>>2]|0)*24|0);c[H>>2]=(c[(c[n>>2]|0)+4>>2]|0)+((c[I>>2]|0)*24|0);if((a[(c[F>>2]|0)+21>>0]|0)!=(a[(c[H>>2]|0)+21>>0]|0)){F=52;break}if((HD(c[(c[F>>2]|0)+16>>2]|0,c[(c[H>>2]|0)+16>>2]|0)|0)==0){F=54;break}if((d[(c[F>>2]|0)+20>>0]|0)!=0){if((a[(c[H>>2]|0)+20>>0]|0)==0){F=57;break}}do{if((c[I>>2]|0)>0){if(((c[(c[F>>2]|0)+8>>2]|0)==0|0)!=((c[(c[H>>2]|0)+8>>2]|0)==0|0)){F=62;break a}if((c[(c[F>>2]|0)+8>>2]|0)==0){break}if((YK(c[(c[F>>2]|0)+8>>2]|0,c[(c[H>>2]|0)+8>>2]|0)|0)!=0){F=62;break a}}}while(0);c[I>>2]=(c[I>>2]|0)+1}if((F|0)==52){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}else if((F|0)==54){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}else if((F|0)==57){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}else if((F|0)==62){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}else if((F|0)==64){c[x>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[x>>2]|0)==0){break}if((d[(c[x>>2]|0)+54>>0]|0)!=0){c[E>>2]=1}c[v>>2]=c[(c[n>>2]|0)+8>>2];while(1){if((c[v>>2]|0)==0){break}if((ID(c[x>>2]|0,c[v>>2]|0)|0)!=0){break}c[v>>2]=c[(c[v>>2]|0)+20>>2]}if((c[v>>2]|0)==0){F=73;break}c[x>>2]=c[(c[x>>2]|0)+20>>2]}if((F|0)==73){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}do{if((c[(c[m>>2]|0)+24>>2]|0)!=0){if((kx(c[(c[n>>2]|0)+24>>2]|0,c[(c[m>>2]|0)+24>>2]|0,-1)|0)==0){break}c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}}while(0);do{if((c[(c[c[s>>2]>>2]|0)+24>>2]&524288|0)!=0){if((c[(c[m>>2]|0)+16>>2]|0)==0){break}c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}}while(0);if((c[(c[c[s>>2]>>2]|0)+24>>2]&128|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}c[o>>2]=ef(c[c[s>>2]>>2]|0,c[(c[n>>2]|0)+68>>2]|0)|0;c[p>>2]=Ov(c[s>>2]|0)|0;aw(c[s>>2]|0,c[o>>2]|0);e=(c[s>>2]|0)+68|0;f=c[e>>2]|0;c[e>>2]=f+1;c[q>>2]=f;f=(c[s>>2]|0)+68|0;e=c[f>>2]|0;c[f>>2]=e+1;c[r>>2]=e;c[D>>2]=VA(c[s>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;c[l>>2]=Wv(c[s>>2]|0)|0;c[u>>2]=Wv(c[s>>2]|0)|0;qy(c[s>>2]|0,c[r>>2]|0,c[k>>2]|0,c[m>>2]|0,53);if((b[(c[m>>2]|0)+36>>1]|0)<0){if((c[(c[m>>2]|0)+8>>2]|0)!=0){F=87}else{F=85}}else{F=85}do{if((F|0)==85){if((c[E>>2]|0)!=0){F=87;break}if((c[B>>2]|0)!=2&(c[B>>2]|0)!=1){F=87}}}while(0);if((F|0)==87){c[w>>2]=Qv(c[p>>2]|0,105,c[r>>2]|0,0)|0;c[z>>2]=Qv(c[p>>2]|0,16,0,0)|0;jw(c[p>>2]|0,c[w>>2]|0)}E=c[s>>2]|0;if((a[(c[n>>2]|0)+44>>0]&32|0)==0){qy(E,c[q>>2]|0,c[o>>2]|0,c[n>>2]|0,52);c[A>>2]=Qv(c[p>>2]|0,105,c[q>>2]|0,0)|0;do{if((b[(c[m>>2]|0)+36>>1]|0)>=0){c[w>>2]=Qv(c[p>>2]|0,100,c[q>>2]|0,c[u>>2]|0)|0;c[C>>2]=Tv(c[p>>2]|0,67,c[r>>2]|0,0,c[u>>2]|0)|0;HC(c[s>>2]|0,c[B>>2]|0,c[m>>2]|0);jw(c[p>>2]|0,c[C>>2]|0);_A(c[s>>2]|0,c[D>>2]|0,c[u>>2]|0)}else{B=c[p>>2]|0;if((c[(c[m>>2]|0)+8>>2]|0)==0){c[w>>2]=Qv(B,69,c[r>>2]|0,c[u>>2]|0)|0;break}else{c[w>>2]=Qv(B,100,c[q>>2]|0,c[u>>2]|0)|0;break}}}while(0);Qv(c[p>>2]|0,99,c[q>>2]|0,c[l>>2]|0)|0;Tv(c[p>>2]|0,70,c[r>>2]|0,c[l>>2]|0,c[u>>2]|0)|0;gf(c[p>>2]|0,11);nf(c[p>>2]|0,-1,c[c[m>>2]>>2]|0,0);Qv(c[p>>2]|0,9,c[q>>2]|0,c[w>>2]|0)|0;Qv(c[p>>2]|0,58,c[q>>2]|0,0)|0;Qv(c[p>>2]|0,58,c[r>>2]|0,0)|0}else{py(E,c[k>>2]|0,c[(c[m>>2]|0)+32>>2]|0,1,c[c[m>>2]>>2]|0);py(c[s>>2]|0,c[o>>2]|0,c[(c[n>>2]|0)+32>>2]|0,0,c[c[n>>2]>>2]|0)}c[x>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[x>>2]|0)==0){break}c[v>>2]=c[(c[n>>2]|0)+8>>2];while(1){if((c[v>>2]|0)==0){break}if((ID(c[x>>2]|0,c[v>>2]|0)|0)!=0){break}c[v>>2]=c[(c[v>>2]|0)+20>>2]}Tv(c[p>>2]|0,52,c[q>>2]|0,c[(c[v>>2]|0)+44>>2]|0,c[o>>2]|0)|0;ry(c[s>>2]|0,c[v>>2]|0);Tv(c[p>>2]|0,53,c[r>>2]|0,c[(c[x>>2]|0)+44>>2]|0,c[k>>2]|0)|0;ry(c[s>>2]|0,c[x>>2]|0);gf(c[p>>2]|0,1);c[w>>2]=Qv(c[p>>2]|0,105,c[q>>2]|0,0)|0;Qv(c[p>>2]|0,98,c[q>>2]|0,c[l>>2]|0)|0;Tv(c[p>>2]|0,107,c[r>>2]|0,c[l>>2]|0,1)|0;Qv(c[p>>2]|0,9,c[q>>2]|0,(c[w>>2]|0)+1|0)|0;jw(c[p>>2]|0,c[w>>2]|0);Qv(c[p>>2]|0,58,c[q>>2]|0,0)|0;Qv(c[p>>2]|0,58,c[r>>2]|0,0)|0;c[x>>2]=c[(c[x>>2]|0)+20>>2]}if((c[A>>2]|0)!=0){jw(c[p>>2]|0,c[A>>2]|0)}Xv(c[s>>2]|0,c[u>>2]|0);Xv(c[s>>2]|0,c[l>>2]|0);if((c[z>>2]|0)!=0){Qv(c[p>>2]|0,24,0,0)|0;jw(c[p>>2]|0,c[z>>2]|0);Qv(c[p>>2]|0,58,c[r>>2]|0,0)|0;c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}else{c[t>>2]=1;e=c[t>>2]|0;i=y;return e|0}}}}c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}function VA(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;g=h+24|0;n=h;f=h+4|0;l=h+8|0;m=h+12|0;k=h+16|0;j=h+20|0;c[n>>2]=b;c[f>>2]=d;c[l>>2]=e;c[m>>2]=0;if((a[(c[l>>2]|0)+44>>0]&8|0)!=0){e=c[n>>2]|0;if((c[(c[n>>2]|0)+408>>2]|0)!=0){e=c[e+408>>2]|0}c[k>>2]=e;c[j>>2]=c[(c[k>>2]|0)+404>>2];while(1){if((c[j>>2]|0)!=0){d=(c[(c[j>>2]|0)+4>>2]|0)!=(c[l>>2]|0)}else{d=0}e=c[j>>2]|0;if(!d){break}c[j>>2]=c[e>>2]}do{if((e|0)==0){c[j>>2]=$e(c[c[n>>2]>>2]|0,16)|0;if((c[j>>2]|0)!=0){c[c[j>>2]>>2]=c[(c[k>>2]|0)+404>>2];c[(c[k>>2]|0)+404>>2]=c[j>>2];c[(c[j>>2]|0)+4>>2]=c[l>>2];c[(c[j>>2]|0)+8>>2]=c[f>>2];d=(c[k>>2]|0)+72|0;c[d>>2]=(c[d>>2]|0)+1;d=(c[k>>2]|0)+72|0;b=(c[d>>2]|0)+1|0;c[d>>2]=b;c[(c[j>>2]|0)+12>>2]=b;b=(c[k>>2]|0)+72|0;c[b>>2]=(c[b>>2]|0)+1;break}c[g>>2]=0;b=c[g>>2]|0;i=h;return b|0}}while(0);c[m>>2]=c[(c[j>>2]|0)+12>>2]}c[g>>2]=c[m>>2];b=c[g>>2]|0;i=h;return b|0}function WA(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+48|0;h=g+40|0;s=g+36|0;m=g+32|0;n=g+28|0;p=g+24|0;q=g+20|0;r=g+12|0;k=g+8|0;o=g+4|0;j=g;l=g+16|0;c[s>>2]=b;c[m>>2]=e;c[n>>2]=f;c[p>>2]=Ov(c[s>>2]|0)|0;c[r>>2]=sy(c[p>>2]|0)|0;if((a[(c[n>>2]|0)+44>>0]&16|0)!=0){f=ww(c[c[s>>2]>>2]|0,c[n>>2]|0)|0}else{f=0}c[k>>2]=f;c[q>>2]=1;a:while(1){if((c[q>>2]|0)>=(c[r>>2]|0)){j=18;break}c[o>>2]=Kz(c[p>>2]|0,c[q>>2]|0)|0;b:do{if((d[c[o>>2]>>0]|0|0)==52){if((c[(c[o>>2]|0)+12>>2]|0)==(c[m>>2]|0)){c[l>>2]=c[(c[o>>2]|0)+8>>2];if((c[l>>2]|0)==(c[(c[n>>2]|0)+32>>2]|0)){j=8;break a}c[j>>2]=c[(c[n>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break b}if((c[l>>2]|0)==(c[(c[j>>2]|0)+44>>2]|0)){j=12;break a}c[j>>2]=c[(c[j>>2]|0)+20>>2]}}}}while(0);if((d[c[o>>2]>>0]|0|0)==149){if((c[(c[o>>2]|0)+16>>2]|0)==(c[k>>2]|0)){j=16;break}}c[q>>2]=(c[q>>2]|0)+1}if((j|0)==8){c[h>>2]=1;b=c[h>>2]|0;i=g;return b|0}else if((j|0)==12){c[h>>2]=1;b=c[h>>2]|0;i=g;return b|0}else if((j|0)==16){c[h>>2]=1;b=c[h>>2]|0;i=g;return b|0}else if((j|0)==18){c[h>>2]=0;b=c[h>>2]|0;i=g;return b|0}return 0}function XA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;g=e;h=e+4|0;j=e+8|0;f=e+12|0;c[k>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[(c[k>>2]|0)+8>>2];vz(c[k>>2]|0,c[g>>2]|0,c[h>>2]|0);b=(c[k>>2]|0)+72|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[f>>2]=a;Qv(c[j>>2]|0,33,c[h>>2]|0,c[f>>2]|0)|0;Fz(c[g>>2]|0,c[f>>2]|0);i=e;return}function YA(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+32|0;m=j+20|0;n=j;h=j+4|0;k=j+8|0;g=j+12|0;l=j+16|0;c[m>>2]=d;c[n>>2]=e;c[h>>2]=f;c[g>>2]=c[(c[n>>2]|0)+20>>2];if((c[g>>2]|0)==0){c[l>>2]=mz(c[m>>2]|0)|0;c[g>>2]=$e(0,(b[(c[n>>2]|0)+38>>1]|0)+1|0)|0;if((c[g>>2]|0)==0){a[(c[l>>2]|0)+64>>0]=1;i=j;return}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(b[(c[n>>2]|0)+38>>1]|0)){break}a[(c[g>>2]|0)+(c[k>>2]|0)>>0]=a[(c[(c[n>>2]|0)+4>>2]|0)+((c[k>>2]|0)*24|0)+21>>0]|0;c[k>>2]=(c[k>>2]|0)+1}do{d=c[k>>2]|0;c[k>>2]=d+ -1;a[(c[g>>2]|0)+d>>0]=0;if((c[k>>2]|0)<0){break}}while((a[(c[g>>2]|0)+(c[k>>2]|0)>>0]|0)==98);c[(c[n>>2]|0)+20>>2]=c[g>>2]}c[k>>2]=Ub(c[g>>2]|0)|0;if((c[k>>2]|0)==0){i=j;return}f=c[m>>2]|0;if((c[h>>2]|0)!=0){Sv(f,47,c[h>>2]|0,c[k>>2]|0,0,c[g>>2]|0,c[k>>2]|0)|0;i=j;return}else{nf(f,-1,c[g>>2]|0,c[k>>2]|0);i=j;return}}function ZA(a,b,e,f,g,h,j,k,l){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=i;i=i+48|0;n=u+36|0;w=u+32|0;v=u+28|0;t=u+24|0;m=u+20|0;p=u+16|0;q=u+8|0;r=u+4|0;s=u;o=u+12|0;c[n>>2]=a;c[w>>2]=b;c[v>>2]=e;c[t>>2]=f;c[m>>2]=g;c[p>>2]=h;c[q>>2]=j;c[r>>2]=k;c[s>>2]=l;c[o>>2]=c[w>>2];while(1){if((c[o>>2]|0)==0){break}if((d[(c[o>>2]|0)+8>>0]|0|0)==(c[v>>2]|0)){if((d[(c[o>>2]|0)+9>>0]|0|0)==(c[m>>2]|0)){if((GD(c[(c[o>>2]|0)+16>>2]|0,c[t>>2]|0)|0)!=0){QC(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0)}}}c[o>>2]=c[(c[o>>2]|0)+32>>2]}i=u;return}function _A(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[g>>2]|0)<=0){i=e;return}Qv(c[(c[f>>2]|0)+8>>2]|0,132,c[g>>2]|0,c[h>>2]|0)|0;i=e;return}function $A(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+8|0;h=f;g=f+4|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=e;if((d[(c[j>>2]|0)+23>>0]|0|0)!=0){if((Bz(c[h>>2]|0)|0)!=0){Jz(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0,0);i=f;return}}vz(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0);i=f;return}function aB(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;m=j+20|0;h=j;g=j+4|0;l=j+8|0;e=j+12|0;k=j+16|0;c[m>>2]=b;c[h>>2]=d;d=c[m>>2]|0;if((c[(c[m>>2]|0)+408>>2]|0)!=0){d=c[d+408>>2]|0}c[g>>2]=d;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[g>>2]|0)+452>>2]|0)){break}if((c[h>>2]|0)==(c[(c[(c[g>>2]|0)+520>>2]|0)+(c[l>>2]<<2)>>2]|0)){f=10;break}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==10){i=j;return}c[e>>2]=(c[(c[g>>2]|0)+452>>2]|0)+1<<2;c[k>>2]=qc(c[(c[g>>2]|0)+520>>2]|0,c[e>>2]|0)|0;if((c[k>>2]|0)!=0){c[(c[g>>2]|0)+520>>2]=c[k>>2];b=c[h>>2]|0;d=(c[g>>2]|0)+452|0;m=c[d>>2]|0;c[d>>2]=m+1;c[(c[(c[g>>2]|0)+520>>2]|0)+(m<<2)>>2]=b;i=j;return}else{a[(c[c[g>>2]>>2]|0)+64>>0]=1;i=j;return}}function bB(f,g,h,j,k,l,m,n,o,p,q){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;X=i;i=i+176|0;ia=X;E=X+136|0;w=X+132|0;y=X+128|0;U=X+124|0;B=X+120|0;A=X+112|0;Y=X+108|0;M=X+174|0;N=X+175|0;Q=X+104|0;s=X+116|0;W=X+144|0;x=X+152|0;r=X+156|0;S=X+160|0;G=X+168|0;v=X+164|0;ha=X+148|0;L=X+100|0;ka=X+96|0;T=X+40|0;O=X+48|0;t=X+140|0;u=X+32|0;H=X+172|0;z=X+173|0;Z=X+28|0;ja=X+44|0;da=X+16|0;ca=X+12|0;ga=X+8|0;fa=X+20|0;ea=X+24|0;F=X+92|0;P=X+52|0;C=X+56|0;D=X+60|0;I=X+64|0;J=X+68|0;V=X+72|0;aa=X+76|0;$=X+80|0;K=X+84|0;_=X+88|0;R=X+36|0;c[E>>2]=f;c[w>>2]=g;c[y>>2]=h;c[U>>2]=j;c[B>>2]=k;c[A>>2]=l;c[Y>>2]=m;a[M>>0]=n;a[N>>0]=o;c[Q>>2]=p;c[s>>2]=q;c[r>>2]=0;c[T>>2]=0;c[t>>2]=0;c[u>>2]=0;a[z>>0]=0;c[Z>>2]=-1;a[H>>0]=(c[Y>>2]|0)!=0;c[S>>2]=c[c[E>>2]>>2];c[W>>2]=Ov(c[E>>2]|0)|0;c[ha>>2]=b[(c[w>>2]|0)+38>>1]|0;if((a[(c[w>>2]|0)+44>>0]&32|0)==0){c[r>>2]=0;c[O>>2]=1}else{c[r>>2]=Dy(c[w>>2]|0)|0;c[O>>2]=e[(c[r>>2]|0)+50>>1]|0}c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[ha>>2]|0)){break}do{if((c[G>>2]|0)!=(b[(c[w>>2]|0)+36>>1]|0)){c[L>>2]=d[(c[(c[w>>2]|0)+4>>2]|0)+((c[G>>2]|0)*24|0)+20>>0]|0;if((c[L>>2]|0)!=0){if((d[N>>0]|0)!=10){c[L>>2]=d[N>>0]|0}else{if((c[L>>2]|0)==10){c[L>>2]=2}}if((c[L>>2]|0)==5){if((c[(c[(c[w>>2]|0)+4>>2]|0)+((c[G>>2]|0)*24|0)+4>>2]|0)==0){c[L>>2]=2}}q=c[L>>2]|0;if((q|0)==4){Qv(c[W>>2]|0,76,(c[A>>2]|0)+1+(c[G>>2]|0)|0,c[Q>>2]|0)|0;break}else if((q|0)==2){xw(c[E>>2]|0)}else if(!((q|0)==3|(q|0)==1)){c[ka>>2]=oy(c[W>>2]|0,77,(c[A>>2]|0)+1+(c[G>>2]|0)|0)|0;vz(c[E>>2]|0,c[(c[(c[w>>2]|0)+4>>2]|0)+((c[G>>2]|0)*24|0)+4>>2]|0,(c[A>>2]|0)+1+(c[G>>2]|0)|0);jw(c[W>>2]|0,c[ka>>2]|0);break}f=c[S>>2]|0;g=c[(c[(c[w>>2]|0)+4>>2]|0)+((c[G>>2]|0)*24|0)>>2]|0;c[ia>>2]=c[c[w>>2]>>2];c[ia+4>>2]=g;c[ja>>2]=cf(f,23968,ia)|0;Sv(c[W>>2]|0,23,1299,c[L>>2]|0,(c[A>>2]|0)+1+(c[G>>2]|0)|0,c[ja>>2]|0,-1)|0;gf(c[W>>2]|0,1)}}}while(0);c[G>>2]=(c[G>>2]|0)+1}a:do{if((c[(c[w>>2]|0)+24>>2]|0)!=0){if((c[(c[S>>2]|0)+24>>2]&8192|0)==0){c[da>>2]=c[(c[w>>2]|0)+24>>2];c[(c[E>>2]|0)+92>>2]=(c[A>>2]|0)+1;if((d[N>>0]|0)!=10){ha=d[N>>0]|0}else{ha=2}c[L>>2]=ha;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[c[da>>2]>>2]|0)){break a}c[ca>>2]=cz(c[W>>2]|0)|0;nz(c[E>>2]|0,c[(c[(c[da>>2]|0)+4>>2]|0)+((c[G>>2]|0)*20|0)>>2]|0,c[ca>>2]|0,8);if((c[L>>2]|0)==4){Qv(c[W>>2]|0,16,0,c[Q>>2]|0)|0}else{c[ga>>2]=c[(c[(c[da>>2]|0)+4>>2]|0)+((c[G>>2]|0)*20|0)+4>>2];if((c[ga>>2]|0)==0){c[ga>>2]=c[c[w>>2]>>2]}if((c[L>>2]|0)==5){c[L>>2]=2}_y(c[E>>2]|0,275,c[L>>2]|0,c[ga>>2]|0,0,3)}$y(c[W>>2]|0,c[ca>>2]|0);c[G>>2]=(c[G>>2]|0)+1}}}}while(0);if((d[M>>0]|0)!=0){if((c[r>>2]|0)==0){c[fa>>2]=cz(c[W>>2]|0)|0;c[L>>2]=d[(c[w>>2]|0)+45>>0]|0;if((d[N>>0]|0)!=10){c[L>>2]=d[N>>0]|0}else{if((c[L>>2]|0)==10){c[L>>2]=2}}if((a[H>>0]|0)!=0){Tv(c[W>>2]|0,79,c[A>>2]|0,c[fa>>2]|0,c[Y>>2]|0)|0;gf(c[W>>2]|0,-120)}b:do{if((c[L>>2]|0)==5){if((d[N>>0]|0)!=5){c[x>>2]=c[(c[w>>2]|0)+8>>2];while(1){if((c[x>>2]|0)==0){break b}if((d[(c[x>>2]|0)+54>>0]|0)==4){break}if((d[(c[x>>2]|0)+54>>0]|0)==3){break}c[x>>2]=c[(c[x>>2]|0)+20>>2]}c[t>>2]=Yv(c[W>>2]|0,16)|0}}}while(0);Tv(c[W>>2]|0,67,c[U>>2]|0,c[fa>>2]|0,c[A>>2]|0)|0;switch(c[L>>2]|0){case 4:{Qv(c[W>>2]|0,16,0,c[Q>>2]|0)|0;break};case 3:case 2:case 1:{ba=53;break};case 5:{c[ea>>2]=0;if((c[(c[S>>2]|0)+24>>2]&262144|0)!=0){c[ea>>2]=RA(c[E>>2]|0,c[w>>2]|0,109,0,0)|0}if((c[ea>>2]|0)!=0){ba=58}else{if((IC(c[E>>2]|0,c[w>>2]|0,0,0)|0)!=0){ba=58}else{if((c[(c[w>>2]|0)+8>>2]|0)!=0){JC(c[E>>2]|0);LC(c[E>>2]|0,c[w>>2]|0,c[U>>2]|0,c[B>>2]|0,0)}}}if((ba|0)==58){JC(c[E>>2]|0);KC(c[E>>2]|0,c[w>>2]|0,c[ea>>2]|0,c[U>>2]|0,c[B>>2]|0,c[A>>2]|0,1,0,5,1)}c[T>>2]=1;break};default:{c[L>>2]=2;ba=53}}if((ba|0)==53){HC(c[E>>2]|0,c[L>>2]|0,c[w>>2]|0)}$y(c[W>>2]|0,c[fa>>2]|0);if((c[t>>2]|0)!=0){c[u>>2]=Yv(c[W>>2]|0,16)|0;jw(c[W>>2]|0,c[t>>2]|0)}}}c[v>>2]=0;c[x>>2]=c[(c[w>>2]|0)+8>>2];while(1){if((c[x>>2]|0)==0){break}do{if((c[(c[y>>2]|0)+(c[v>>2]<<2)>>2]|0)!=0){if((d[z>>0]|0)==0){YA(c[W>>2]|0,c[w>>2]|0,(c[A>>2]|0)+1|0);a[z>>0]=1}c[C>>2]=(c[B>>2]|0)+(c[v>>2]|0);c[D>>2]=cz(c[W>>2]|0)|0;if((c[(c[x>>2]|0)+36>>2]|0)!=0){Qv(c[W>>2]|0,28,0,c[(c[y>>2]|0)+(c[v>>2]<<2)>>2]|0)|0;c[(c[E>>2]|0)+92>>2]=(c[A>>2]|0)+1;ez(c[E>>2]|0,c[(c[x>>2]|0)+36>>2]|0,c[D>>2]|0,8);c[(c[E>>2]|0)+92>>2]=0}c[F>>2]=fz(c[E>>2]|0,e[(c[x>>2]|0)+52>>1]|0)|0;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(e[(c[x>>2]|0)+52>>1]|0)){break}c[I>>2]=b[(c[(c[x>>2]|0)+4>>2]|0)+(c[G>>2]<<1)>>1]|0;if((c[I>>2]|0)<0){ba=76}else{if((c[I>>2]|0)==(b[(c[w>>2]|0)+36>>1]|0)){ba=76}else{c[J>>2]=(c[I>>2]|0)+(c[A>>2]|0)+1;ba=81}}if((ba|0)==76){ba=0;if((c[Z>>2]|0)!=((c[F>>2]|0)+(c[G>>2]|0)|0)){c[J>>2]=c[A>>2];if((c[(c[x>>2]|0)+36>>2]|0)!=0){ba=-1}else{ba=(c[F>>2]|0)+(c[G>>2]|0)|0}c[Z>>2]=ba;ba=81}}if((ba|0)==81){ba=0;Qv(c[W>>2]|0,34,c[J>>2]|0,(c[F>>2]|0)+(c[G>>2]|0)|0)|0}c[G>>2]=(c[G>>2]|0)+1}Tv(c[W>>2]|0,48,c[F>>2]|0,e[(c[x>>2]|0)+52>>1]|0,c[(c[y>>2]|0)+(c[v>>2]<<2)>>2]|0)|0;Az(c[E>>2]|0,c[F>>2]|0,e[(c[x>>2]|0)+52>>1]|0);if((d[H>>0]|0)!=0){if((c[r>>2]|0)==(c[x>>2]|0)){if((d[M>>0]|0)==0){$y(c[W>>2]|0,c[D>>2]|0);break}}}c[L>>2]=d[(c[x>>2]|0)+54>>0]|0;if((c[L>>2]|0)==0){iz(c[E>>2]|0,c[F>>2]|0,e[(c[x>>2]|0)+52>>1]|0);$y(c[W>>2]|0,c[D>>2]|0);break}if((d[N>>0]|0)!=10){c[L>>2]=d[N>>0]|0}else{if((c[L>>2]|0)==10){c[L>>2]=2}}ff(c[W>>2]|0,64,c[C>>2]|0,c[D>>2]|0,c[F>>2]|0,e[(c[x>>2]|0)+50>>1]|0)|0;if((c[x>>2]|0)==(c[r>>2]|0)){ca=c[F>>2]|0}else{ca=fz(c[E>>2]|0,c[O>>2]|0)|0}c[P>>2]=ca;if((d[H>>0]|0)!=0){ba=98}else{if((c[L>>2]|0)==5){ba=98}}c:do{if((ba|0)==98){ba=0;if((a[(c[w>>2]|0)+44>>0]&32|0)==0){Qv(c[W>>2]|0,109,c[C>>2]|0,c[P>>2]|0)|0;if((a[H>>0]|0)==0){break}Tv(c[W>>2]|0,79,c[P>>2]|0,c[D>>2]|0,c[Y>>2]|0)|0;gf(c[W>>2]|0,-120);break}d:do{if((c[x>>2]|0)!=(c[r>>2]|0)){c[G>>2]=0;while(1){if((c[G>>2]|0)>=(e[(c[r>>2]|0)+50>>1]|0)){break d}c[V>>2]=(kz(c[x>>2]|0,b[(c[(c[r>>2]|0)+4>>2]|0)+(c[G>>2]<<1)>>1]|0)|0)<<16>>16;Tv(c[W>>2]|0,46,c[C>>2]|0,c[V>>2]|0,(c[P>>2]|0)+(c[G>>2]|0)|0)|0;c[G>>2]=(c[G>>2]|0)+1}}}while(0);if((a[H>>0]|0)!=0){f=sy(c[W>>2]|0)|0;c[aa>>2]=f+(e[(c[r>>2]|0)+50>>1]|0);c[$>>2]=78;c[K>>2]=(a[(c[x>>2]|0)+55>>0]&3|0)==2?c[F>>2]|0:c[P>>2]|0;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(e[(c[r>>2]|0)+50>>1]|0)){break c}c[_>>2]=ty(c[E>>2]|0,c[(c[(c[r>>2]|0)+32>>2]|0)+(c[G>>2]<<2)>>2]|0)|0;c[V>>2]=b[(c[(c[r>>2]|0)+4>>2]|0)+(c[G>>2]<<1)>>1]|0;if((c[G>>2]|0)==((e[(c[r>>2]|0)+50>>1]|0)-1|0)){c[aa>>2]=c[D>>2];c[$>>2]=79}Sv(c[W>>2]|0,c[$>>2]|0,(c[Y>>2]|0)+1+(c[V>>2]|0)|0,c[aa>>2]|0,(c[K>>2]|0)+(c[G>>2]|0)|0,c[_>>2]|0,-4)|0;gf(c[W>>2]|0,-120);c[G>>2]=(c[G>>2]|0)+1}}}}while(0);ca=c[L>>2]|0;if((ca|0)==4){Qv(c[W>>2]|0,16,0,c[Q>>2]|0)|0}else if((ca|0)==3|(ca|0)==2|(ca|0)==1){Yy(c[E>>2]|0,c[L>>2]|0,c[x>>2]|0)}else{c[R>>2]=0;JC(c[E>>2]|0);if((c[(c[S>>2]|0)+24>>2]&262144|0)!=0){c[R>>2]=RA(c[E>>2]|0,c[w>>2]|0,109,0,0)|0}KC(c[E>>2]|0,c[w>>2]|0,c[R>>2]|0,c[U>>2]|0,c[B>>2]|0,c[P>>2]|0,c[O>>2]&65535,0,5,(c[x>>2]|0)==(c[r>>2]|0)&255);c[T>>2]=1}$y(c[W>>2]|0,c[D>>2]|0);iz(c[E>>2]|0,c[F>>2]|0,e[(c[x>>2]|0)+52>>1]|0);if((c[P>>2]|0)!=(c[F>>2]|0)){iz(c[E>>2]|0,c[P>>2]|0,c[O>>2]|0)}}}while(0);c[x>>2]=c[(c[x>>2]|0)+20>>2];c[v>>2]=(c[v>>2]|0)+1}if((c[t>>2]|0)==0){g=c[T>>2]|0;f=c[s>>2]|0;c[f>>2]=g;i=X;return}Qv(c[W>>2]|0,16,0,(c[t>>2]|0)+1|0)|0;jw(c[W>>2]|0,c[u>>2]|0);g=c[T>>2]|0;f=c[s>>2]|0;c[f>>2]=g;i=X;return}function cB(e,f,g,h,j,k){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;D=i;i=i+112|0;o=D+104|0;p=D+100|0;z=D+96|0;y=D+92|0;t=D+88|0;u=D+84|0;n=D+80|0;q=D+76|0;A=D+72|0;K=D+68|0;v=D+64|0;B=D+60|0;C=D+56|0;I=D+52|0;l=D+20|0;J=D;E=D+4|0;H=D+8|0;L=D+12|0;M=D+16|0;N=D+24|0;G=D+28|0;F=D+32|0;r=D+36|0;w=D+40|0;s=D+44|0;x=D+48|0;c[o>>2]=e;c[p>>2]=f;c[z>>2]=g;c[y>>2]=h;c[t>>2]=j;c[u>>2]=k;c[n>>2]=c[c[o>>2]>>2];c[v>>2]=d[(c[o>>2]|0)+438>>0]|0;if((c[(c[n>>2]|0)+24>>2]&524288|0)==0){i=D;return}c[A>>2]=ef(c[n>>2]|0,c[(c[p>>2]|0)+68>>2]|0)|0;c[K>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[A>>2]<<4)>>2];c[q>>2]=c[(c[p>>2]|0)+16>>2];a:while(1){if((c[q>>2]|0)==0){m=38;break}c[C>>2]=0;c[I>>2]=0;c[H>>2]=0;if((c[t>>2]|0)!=0){if((Dc(c[c[p>>2]>>2]|0,c[(c[q>>2]|0)+8>>2]|0)|0)!=0){if((fB(c[p>>2]|0,c[q>>2]|0,c[t>>2]|0,c[u>>2]|0)|0)!=0){m=7}}else{m=7}}else{m=7}do{if((m|0)==7){m=0;if((a[(c[o>>2]|0)+438>>0]|0)!=0){c[B>>2]=cw(c[n>>2]|0,c[(c[q>>2]|0)+8>>2]|0,c[K>>2]|0)|0}else{c[B>>2]=af(c[o>>2]|0,0,c[(c[q>>2]|0)+8>>2]|0,c[K>>2]|0)|0}if((c[B>>2]|0)!=0){if((FA(c[o>>2]|0,c[B>>2]|0,c[q>>2]|0,C,I)|0)==0){if((c[I>>2]|0)!=0){c[l>>2]=c[I>>2]}else{c[J>>2]=c[(c[q>>2]|0)+36>>2];c[l>>2]=J}c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[(c[q>>2]|0)+20>>2]|0)){break}if((c[(c[l>>2]|0)+(c[E>>2]<<2)>>2]|0)==(b[(c[p>>2]|0)+36>>1]|0)){c[(c[l>>2]|0)+(c[E>>2]<<2)>>2]=-1}if((c[(c[n>>2]|0)+276>>2]|0)!=0){if((c[C>>2]|0)!=0){k=b[(c[(c[C>>2]|0)+4>>2]|0)+(c[E>>2]<<1)>>1]|0}else{k=b[(c[B>>2]|0)+36>>1]|0}c[F>>2]=c[(c[(c[B>>2]|0)+4>>2]|0)+((k<<16>>16)*24|0)>>2];c[G>>2]=Hx(c[o>>2]|0,c[c[B>>2]>>2]|0,c[F>>2]|0,c[A>>2]|0)|0;c[H>>2]=(c[G>>2]|0)==2&1}c[E>>2]=(c[E>>2]|0)+1}py(c[o>>2]|0,c[A>>2]|0,c[(c[B>>2]|0)+32>>2]|0,0,c[c[B>>2]>>2]|0);e=(c[o>>2]|0)+68|0;c[e>>2]=(c[e>>2]|0)+1;if((c[z>>2]|0)!=0){gB(c[o>>2]|0,c[A>>2]|0,c[B>>2]|0,c[C>>2]|0,c[q>>2]|0,c[l>>2]|0,c[z>>2]|0,-1,c[H>>2]|0)}if((c[y>>2]|0)!=0){gB(c[o>>2]|0,c[A>>2]|0,c[B>>2]|0,c[C>>2]|0,c[q>>2]|0,c[l>>2]|0,c[y>>2]|0,1,c[H>>2]|0)}cc(c[n>>2]|0,c[I>>2]|0);break}}if((c[v>>2]|0)==0){m=57;break a}if((d[(c[n>>2]|0)+64>>0]|0)!=0){m=57;break a}if((c[B>>2]|0)==0){c[L>>2]=Ov(c[o>>2]|0)|0;e=sy(c[L>>2]|0)|0;c[M>>2]=e+(c[(c[q>>2]|0)+20>>2]|0)+1;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[(c[q>>2]|0)+20>>2]|0)){break}c[N>>2]=(c[(c[q>>2]|0)+36+(c[E>>2]<<3)>>2]|0)+(c[z>>2]|0)+1;Qv(c[L>>2]|0,76,c[N>>2]|0,c[M>>2]|0)|0;c[E>>2]=(c[E>>2]|0)+1}Qv(c[L>>2]|0,130,d[(c[q>>2]|0)+24>>0]|0,-1)|0}}}while(0);c[q>>2]=c[(c[q>>2]|0)+4>>2]}if((m|0)==38){c[q>>2]=zw(c[p>>2]|0)|0;b:while(1){if((c[q>>2]|0)==0){m=57;break}c[r>>2]=0;c[s>>2]=0;if((c[t>>2]|0)!=0){if((hB(c[p>>2]|0,c[q>>2]|0,c[t>>2]|0,c[u>>2]|0)|0)!=0){m=42}}else{m=42}do{if((m|0)==42){m=0;if((a[(c[q>>2]|0)+24>>0]|0)==0){if((c[(c[n>>2]|0)+24>>2]&16777216|0)==0){if((c[(c[o>>2]|0)+408>>2]|0)==0){if((a[(c[o>>2]|0)+20>>0]|0)==0){break}}}}if((FA(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,r,s)|0)!=0){if((c[v>>2]|0)==0){m=57;break b}if((d[(c[n>>2]|0)+64>>0]|0)!=0){m=57;break b}else{break}}c[w>>2]=Vu(c[n>>2]|0,0,0,0)|0;if((c[w>>2]|0)!=0){c[x>>2]=(c[w>>2]|0)+8;c[(c[x>>2]|0)+16>>2]=c[c[q>>2]>>2];c[(c[x>>2]|0)+8>>2]=c[c[c[q>>2]>>2]>>2];f=(c[(c[x>>2]|0)+16>>2]|0)+40|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;f=(c[o>>2]|0)+68|0;e=c[f>>2]|0;c[f>>2]=e+1;c[(c[x>>2]|0)+40>>2]=e;if((c[y>>2]|0)!=0){iB(c[o>>2]|0,c[w>>2]|0,c[p>>2]|0,c[r>>2]|0,c[q>>2]|0,c[s>>2]|0,c[y>>2]|0,-1)}if((c[z>>2]|0)!=0){iB(c[o>>2]|0,c[w>>2]|0,c[p>>2]|0,c[r>>2]|0,c[q>>2]|0,c[s>>2]|0,c[z>>2]|0,1)}c[(c[x>>2]|0)+8>>2]=0;fu(c[n>>2]|0,c[w>>2]|0)}cc(c[n>>2]|0,c[s>>2]|0)}}while(0);c[q>>2]=c[(c[q>>2]|0)+12>>2]}if((m|0)==57){i=D;return}}else if((m|0)==57){i=D;return}}function dB(e,f,g,h,j,k,l,m,n){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var 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;A=i;i=i+64|0;t=A+20|0;z=A+52|0;q=A+48|0;B=A+44|0;s=A+40|0;D=A+36|0;x=A+32|0;w=A+24|0;v=A+28|0;p=A+16|0;E=A+12|0;u=A+57|0;y=A+8|0;r=A+4|0;C=A;o=A+56|0;c[t>>2]=e;c[z>>2]=f;c[q>>2]=g;c[B>>2]=h;c[s>>2]=j;c[D>>2]=k;c[x>>2]=l;c[w>>2]=m;c[v>>2]=n;a[o>>0]=0;c[p>>2]=Ov(c[t>>2]|0)|0;c[C>>2]=0;c[E>>2]=c[(c[z>>2]|0)+8>>2];while(1){if((c[E>>2]|0)==0){break}if((c[(c[D>>2]|0)+(c[C>>2]<<2)>>2]|0)!=0){a[o>>0]=1;if((c[(c[E>>2]|0)+36>>2]|0)!=0){f=c[p>>2]|0;e=c[(c[D>>2]|0)+(c[C>>2]<<2)>>2]|0;Qv(f,76,e,(sy(c[p>>2]|0)|0)+2|0)|0}Qv(c[p>>2]|0,107,(c[B>>2]|0)+(c[C>>2]|0)|0,c[(c[D>>2]|0)+(c[C>>2]<<2)>>2]|0)|0;a[u>>0]=0;a[u>>0]=(c[v>>2]|0)!=0?16:0;if((a[(c[E>>2]|0)+55>>0]&3|0)==2){if((a[(c[z>>2]|0)+44>>0]&32|0)!=0){a[u>>0]=d[u>>0]|1}}if((a[u>>0]|0)!=0){gf(c[p>>2]|0,a[u>>0]|0)}}c[E>>2]=c[(c[E>>2]|0)+20>>2];c[C>>2]=(c[C>>2]|0)+1}if((a[(c[z>>2]|0)+44>>0]&32|0)!=0){i=A;return}c[y>>2]=(c[s>>2]|0)+1;c[r>>2]=Wv(c[t>>2]|0)|0;Tv(c[p>>2]|0,48,c[y>>2]|0,b[(c[z>>2]|0)+38>>1]|0,c[r>>2]|0)|0;if((a[o>>0]|0)==0){YA(c[p>>2]|0,c[z>>2]|0,0)}Az(c[t>>2]|0,c[y>>2]|0,b[(c[z>>2]|0)+38>>1]|0);if((a[(c[t>>2]|0)+18>>0]|0)!=0){a[u>>0]=0}else{a[u>>0]=1;a[u>>0]=d[u>>0]|((c[x>>2]|0)!=0?4:2)}if((c[w>>2]|0)!=0){a[u>>0]=d[u>>0]|8}if((c[v>>2]|0)!=0){a[u>>0]=d[u>>0]|16}Tv(c[p>>2]|0,70,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;if((a[(c[t>>2]|0)+18>>0]|0)==0){nf(c[p>>2]|0,-1,c[c[z>>2]>>2]|0,0)}gf(c[p>>2]|0,a[u>>0]|0);i=A;return}function eB(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+32|0;h=b+28|0;d=b;k=b+4|0;e=b+8|0;f=b+12|0;l=b+16|0;j=b+20|0;g=b+24|0;c[h>>2]=a;c[k>>2]=c[(c[h>>2]|0)+8>>2];c[e>>2]=c[c[h>>2]>>2];c[d>>2]=c[(c[h>>2]|0)+404>>2];while(1){if((c[d>>2]|0)==0){break}c[f>>2]=(c[(c[e>>2]|0)+16>>2]|0)+(c[(c[d>>2]|0)+8>>2]<<4);c[g>>2]=c[(c[d>>2]|0)+12>>2];c[j>>2]=Wv(c[h>>2]|0)|0;qy(c[h>>2]|0,0,c[(c[d>>2]|0)+8>>2]|0,c[(c[(c[f>>2]|0)+12>>2]|0)+72>>2]|0,53);c[l>>2]=oy(c[k>>2]|0,77,(c[g>>2]|0)+1|0)|0;Qv(c[k>>2]|0,69,0,(c[g>>2]|0)+1|0)|0;jw(c[k>>2]|0,c[l>>2]|0);Tv(c[k>>2]|0,48,(c[g>>2]|0)-1|0,2,c[j>>2]|0)|0;Tv(c[k>>2]|0,70,0,c[j>>2]|0,(c[g>>2]|0)+1|0)|0;gf(c[k>>2]|0,8);Yv(c[k>>2]|0,58)|0;Xv(c[h>>2]|0,c[j>>2]|0);c[d>>2]=c[c[d>>2]>>2]}i=b;return}function fB(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+24|0;m=g;j=g+4|0;o=g+8|0;k=g+12|0;n=g+16|0;l=g+20|0;c[m>>2]=a;c[j>>2]=d;c[o>>2]=e;c[k>>2]=f;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[(c[j>>2]|0)+20>>2]|0)){j=9;break}c[l>>2]=c[(c[j>>2]|0)+36+(c[n>>2]<<3)>>2];if((c[(c[o>>2]|0)+(c[l>>2]<<2)>>2]|0)>=0){j=4;break}if((c[l>>2]|0)==(b[(c[m>>2]|0)+36>>1]|0)){if((c[k>>2]|0)!=0){j=7;break}}c[n>>2]=(c[n>>2]|0)+1}if((j|0)==4){c[h>>2]=1;a=c[h>>2]|0;i=g;return a|0}else if((j|0)==7){c[h>>2]=1;a=c[h>>2]|0;i=g;return a|0}else if((j|0)==9){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}return 0}function gB(e,f,g,h,j,k,l,m,n){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;t=i;i=i+96|0;u=t+84|0;w=t+80|0;z=t+76|0;E=t+72|0;s=t+68|0;A=t+64|0;y=t+60|0;r=t+56|0;J=t+52|0;v=t+48|0;p=t+44|0;o=t+40|0;q=t+12|0;K=t;x=t+4|0;I=t+8|0;C=t+16|0;B=t+20|0;D=t+24|0;H=t+28|0;F=t+32|0;G=t+36|0;c[u>>2]=e;c[w>>2]=f;c[z>>2]=g;c[E>>2]=h;c[s>>2]=j;c[A>>2]=k;c[y>>2]=l;c[r>>2]=m;c[J>>2]=n;c[p>>2]=Ov(c[u>>2]|0)|0;c[o>>2]=(c[(c[u>>2]|0)+68>>2]|0)-1;c[q>>2]=cz(c[p>>2]|0)|0;if((c[r>>2]|0)<0){Qv(c[p>>2]|0,131,d[(c[s>>2]|0)+24>>0]|0,c[q>>2]|0)|0}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[(c[s>>2]|0)+20>>2]|0)){break}c[K>>2]=(c[(c[A>>2]|0)+(c[v>>2]<<2)>>2]|0)+(c[y>>2]|0)+1;Qv(c[p>>2]|0,76,c[K>>2]|0,c[q>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+1}do{if((c[J>>2]|0)==0){if((c[E>>2]|0)==0){c[I>>2]=Wv(c[u>>2]|0)|0;Qv(c[p>>2]|0,34,(c[c[A>>2]>>2]|0)+1+(c[y>>2]|0)|0,c[I>>2]|0)|0;c[x>>2]=Qv(c[p>>2]|0,38,c[I>>2]|0,0)|0;if((c[z>>2]|0)==(c[c[s>>2]>>2]|0)){if((c[r>>2]|0)==1){Tv(c[p>>2]|0,79,c[y>>2]|0,c[q>>2]|0,c[I>>2]|0)|0;gf(c[p>>2]|0,-120)}}qy(c[u>>2]|0,c[o>>2]|0,c[w>>2]|0,c[z>>2]|0,52);Tv(c[p>>2]|0,67,c[o>>2]|0,0,c[I>>2]|0)|0;Qv(c[p>>2]|0,16,0,c[q>>2]|0)|0;e=c[p>>2]|0;jw(e,(sy(c[p>>2]|0)|0)-2|0);jw(c[p>>2]|0,c[x>>2]|0);Xv(c[u>>2]|0,c[I>>2]|0);break}c[C>>2]=c[(c[s>>2]|0)+20>>2];c[B>>2]=fz(c[u>>2]|0,c[C>>2]|0)|0;c[D>>2]=Wv(c[u>>2]|0)|0;Tv(c[p>>2]|0,52,c[o>>2]|0,c[(c[E>>2]|0)+44>>2]|0,c[w>>2]|0)|0;ry(c[u>>2]|0,c[E>>2]|0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[C>>2]|0)){break}Qv(c[p>>2]|0,33,(c[(c[A>>2]|0)+(c[v>>2]<<2)>>2]|0)+1+(c[y>>2]|0)|0,(c[B>>2]|0)+(c[v>>2]|0)|0)|0;c[v>>2]=(c[v>>2]|0)+1}if((c[z>>2]|0)==(c[c[s>>2]>>2]|0)){if((c[r>>2]|0)==1){e=sy(c[p>>2]|0)|0;c[H>>2]=e+(c[C>>2]|0)+1;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[C>>2]|0)){break}c[F>>2]=(c[(c[A>>2]|0)+(c[v>>2]<<2)>>2]|0)+1+(c[y>>2]|0);c[G>>2]=(b[(c[(c[E>>2]|0)+4>>2]|0)+(c[v>>2]<<1)>>1]|0)+1+(c[y>>2]|0);if((b[(c[(c[E>>2]|0)+4>>2]|0)+(c[v>>2]<<1)>>1]|0)==(b[(c[z>>2]|0)+36>>1]|0)){c[G>>2]=c[y>>2]}Tv(c[p>>2]|0,78,c[F>>2]|0,c[H>>2]|0,c[G>>2]|0)|0;gf(c[p>>2]|0,8);c[v>>2]=(c[v>>2]|0)+1}Qv(c[p>>2]|0,16,0,c[q>>2]|0)|0}}j=c[p>>2]|0;h=c[B>>2]|0;g=c[C>>2]|0;f=c[D>>2]|0;e=GA(c[p>>2]|0,c[E>>2]|0)|0;Sv(j,48,h,g,f,e,c[C>>2]|0)|0;ff(c[p>>2]|0,66,c[o>>2]|0,c[q>>2]|0,c[D>>2]|0,0)|0;Xv(c[u>>2]|0,c[D>>2]|0);iz(c[u>>2]|0,c[B>>2]|0,c[C>>2]|0)}}while(0);if((a[(c[s>>2]|0)+24>>0]|0)==0){if((c[(c[c[u>>2]>>2]|0)+24>>2]&16777216|0)==0){if((c[(c[u>>2]|0)+408>>2]|0)==0){if((a[(c[u>>2]|0)+20>>0]|0)==0){_y(c[u>>2]|0,787,2,0,-2,4);e=c[p>>2]|0;f=c[q>>2]|0;$y(e,f);f=c[p>>2]|0;e=c[o>>2]|0;oy(f,58,e)|0;i=t;return}}}}if((c[r>>2]|0)>0){if((d[(c[s>>2]|0)+24>>0]|0)==0){v=c[u>>2]|0;if((c[(c[u>>2]|0)+408>>2]|0)!=0){v=c[v+408>>2]|0}a[v+21>>0]=1}}Qv(c[p>>2]|0,130,d[(c[s>>2]|0)+24>>0]|0,c[r>>2]|0)|0;e=c[p>>2]|0;f=c[q>>2]|0;$y(e,f);f=c[p>>2]|0;e=c[o>>2]|0;oy(f,58,e)|0;i=t;return}function hB(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+48|0;q=k+32|0;m=k+28|0;n=k+24|0;h=k+20|0;r=k+16|0;o=k+8|0;p=k+4|0;l=k;s=k+12|0;c[m>>2]=d;c[n>>2]=e;c[h>>2]=f;c[r>>2]=g;c[o>>2]=0;a:while(1){if((c[o>>2]|0)>=(c[(c[n>>2]|0)+20>>2]|0)){j=15;break}c[p>>2]=c[(c[n>>2]|0)+36+(c[o>>2]<<3)+4>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=(b[(c[m>>2]|0)+38>>1]|0)){break}if((c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0)>=0){j=8}else{if((c[l>>2]|0)==(b[(c[m>>2]|0)+36>>1]|0)){if((c[r>>2]|0)!=0){j=8}}}do{if((j|0)==8){j=0;c[s>>2]=(c[(c[m>>2]|0)+4>>2]|0)+((c[l>>2]|0)*24|0);g=c[s>>2]|0;if((c[p>>2]|0)!=0){if(0==(Dc(c[g>>2]|0,c[p>>2]|0)|0)){j=10;break a}else{break}}else{if((a[g+23>>0]&1|0)!=0){j=12;break a}else{break}}}}while(0);c[l>>2]=(c[l>>2]|0)+1}c[o>>2]=(c[o>>2]|0)+1}if((j|0)==10){c[q>>2]=1;d=c[q>>2]|0;i=k;return d|0}else if((j|0)==12){c[q>>2]=1;d=c[q>>2]|0;i=k;return d|0}else if((j|0)==15){c[q>>2]=0;d=c[q>>2]|0;i=k;return d|0}return 0}function iB(f,g,h,j,k,l,m,n){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;v=i;i=i+144|0;w=v+48|0;J=v+112|0;z=v+120|0;G=v+116|0;t=v+124|0;M=v+108|0;A=v+104|0;o=v+100|0;q=v+96|0;E=v+92|0;r=v+88|0;H=v+56|0;p=v+52|0;s=v+44|0;u=v+16|0;L=v;O=v+4|0;P=v+8|0;K=v+130|0;N=v+12|0;y=v+20|0;B=v+24|0;x=v+28|0;I=v+32|0;D=v+36|0;F=v+40|0;C=v+128|0;c[w>>2]=f;c[J>>2]=g;c[z>>2]=h;c[G>>2]=j;c[t>>2]=k;c[M>>2]=l;c[A>>2]=m;c[o>>2]=n;c[q>>2]=c[c[w>>2]>>2];c[r>>2]=0;c[s>>2]=0;c[u>>2]=Ov(c[w>>2]|0)|0;if((c[o>>2]|0)<0){c[s>>2]=Qv(c[u>>2]|0,131,d[(c[t>>2]|0)+24>>0]|0,0)|0}c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[(c[t>>2]|0)+20>>2]|0)){break}if((c[G>>2]|0)!=0){n=b[(c[(c[G>>2]|0)+4>>2]|0)+(c[E>>2]<<1)>>1]|0}else{n=-1}b[K>>1]=n;c[L>>2]=jB(c[w>>2]|0,c[z>>2]|0,c[A>>2]|0,b[K>>1]|0)|0;if((c[M>>2]|0)!=0){n=c[(c[M>>2]|0)+(c[E>>2]<<2)>>2]|0}else{n=c[(c[t>>2]|0)+36>>2]|0}b[K>>1]=n;c[N>>2]=c[(c[(c[c[t>>2]>>2]|0)+4>>2]|0)+((b[K>>1]|0)*24|0)>>2];c[O>>2]=Su(c[q>>2]|0,27,c[N>>2]|0)|0;c[P>>2]=Bu(c[w>>2]|0,79,c[L>>2]|0,c[O>>2]|0,0)|0;c[r>>2]=Ux(c[q>>2]|0,c[r>>2]|0,c[P>>2]|0)|0;c[E>>2]=(c[E>>2]|0)+1}if((c[z>>2]|0)==(c[c[t>>2]>>2]|0)){if((c[o>>2]|0)>0){if((a[(c[z>>2]|0)+44>>0]&32|0)==0){c[B>>2]=jB(c[w>>2]|0,c[z>>2]|0,c[A>>2]|0,-1)|0;c[x>>2]=kB(c[q>>2]|0,c[z>>2]|0,c[(c[J>>2]|0)+48>>2]|0,-1)|0;c[y>>2]=Bu(c[w>>2]|0,78,c[B>>2]|0,c[x>>2]|0,0)|0}else{c[D>>2]=0;c[F>>2]=Dy(c[z>>2]|0)|0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(e[(c[F>>2]|0)+50>>1]|0)){break}b[C>>1]=b[(c[(c[G>>2]|0)+4>>2]|0)+(c[E>>2]<<1)>>1]|0;c[B>>2]=jB(c[w>>2]|0,c[z>>2]|0,c[A>>2]|0,b[C>>1]|0)|0;c[x>>2]=kB(c[q>>2]|0,c[z>>2]|0,c[(c[J>>2]|0)+48>>2]|0,b[C>>1]|0)|0;c[I>>2]=Bu(c[w>>2]|0,79,c[B>>2]|0,c[x>>2]|0,0)|0;c[D>>2]=Ux(c[q>>2]|0,c[D>>2]|0,c[I>>2]|0)|0;c[E>>2]=(c[E>>2]|0)+1}c[y>>2]=Bu(c[w>>2]|0,19,c[D>>2]|0,0,0)|0}c[r>>2]=Ux(c[q>>2]|0,c[r>>2]|0,c[y>>2]|0)|0}}c[H+0>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;c[H+12>>2]=0;c[H+16>>2]=0;c[H+20>>2]=0;c[H+24>>2]=0;c[H+28>>2]=0;c[H+4>>2]=c[J>>2];c[H>>2]=c[w>>2];bx(H,c[r>>2]|0)|0;c[p>>2]=lB(c[w>>2]|0,c[J>>2]|0,c[r>>2]|0,0,0,0,0)|0;if((c[o>>2]|0)>0){if((d[(c[t>>2]|0)+24>>0]|0)==0){x=c[w>>2]|0;if((c[(c[w>>2]|0)+408>>2]|0)!=0){x=c[x+408>>2]|0}a[x+21>>0]=1}}Qv(c[u>>2]|0,130,d[(c[t>>2]|0)+24>>0]|0,c[o>>2]|0)|0;if((c[p>>2]|0)!=0){mB(c[p>>2]|0)}gu(c[q>>2]|0,c[r>>2]|0);if((c[s>>2]|0)==0){i=v;return}jw(c[u>>2]|0,c[s>>2]|0);i=v;return}function jB(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+32|0;k=n+24|0;h=n;q=n+4|0;o=n+28|0;j=n+12|0;p=n+16|0;l=n+20|0;m=n+8|0;c[k>>2]=d;c[h>>2]=e;c[q>>2]=f;b[o>>1]=g;c[m>>2]=c[c[k>>2]>>2];c[j>>2]=Su(c[m>>2]|0,159,0)|0;if((c[j>>2]|0)==0){d=c[j>>2]|0;i=n;return d|0}if((b[o>>1]|0)>=0){if((b[o>>1]|0)!=(b[(c[h>>2]|0)+36>>1]|0)){c[p>>2]=(c[(c[h>>2]|0)+4>>2]|0)+((b[o>>1]|0)*24|0);c[(c[j>>2]|0)+28>>2]=(c[q>>2]|0)+(b[o>>1]|0)+1;a[(c[j>>2]|0)+1>>0]=a[(c[p>>2]|0)+21>>0]|0;c[l>>2]=c[(c[p>>2]|0)+16>>2];if((c[l>>2]|0)==0){c[l>>2]=c[c[(c[m>>2]|0)+8>>2]>>2]}c[j>>2]=ux(c[k>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;d=c[j>>2]|0;i=n;return d|0}}c[(c[j>>2]|0)+28>>2]=c[q>>2];a[(c[j>>2]|0)+1>>0]=100;d=c[j>>2]|0;i=n;return d|0}function kB(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+12|0;j=g;k=g+4|0;l=g+16|0;h=g+8|0;c[m>>2]=a;c[j>>2]=d;c[k>>2]=e;b[l>>1]=f;c[h>>2]=Su(c[m>>2]|0,154,0)|0;if((c[h>>2]|0)==0){m=c[h>>2]|0;i=g;return m|0}c[(c[h>>2]|0)+44>>2]=c[j>>2];c[(c[h>>2]|0)+28>>2]=c[k>>2];b[(c[h>>2]|0)+32>>1]=b[l>>1]|0;m=c[h>>2]|0;i=g;return m|0}function lB(f,g,h,j,k,l,m){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0;r=i;i=i+176|0;Z=r+16|0;q=r+164|0;L=r+160|0;E=r+156|0;X=r+152|0;U=r+148|0;Q=r+144|0;C=r+172|0;W=r+140|0;Y=r+136|0;H=r+132|0;s=r+128|0;u=r+124|0;I=r+8|0;n=r+104|0;P=r+100|0;F=r+96|0;v=r+92|0;G=r+168|0;t=r+52|0;V=r+32|0;O=r+24|0;N=r+48|0;M=r+36|0;w=r+40|0;A=r+44|0;y=r+84|0;x=r+56|0;z=r+60|0;B=r+64|0;J=r;K=r+68|0;R=r+72|0;T=r+76|0;S=r+80|0;p=r+88|0;c[L>>2]=f;c[E>>2]=g;c[X>>2]=h;c[U>>2]=j;c[Q>>2]=k;b[C>>1]=l;c[W>>2]=m;c[u>>2]=c[(c[L>>2]|0)+8>>2];c[t>>2]=c[c[L>>2]>>2];c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[n+16>>2]=0;if((c[U>>2]|0)!=0){if((c[c[U>>2]>>2]|0)>=64){c[U>>2]=0}}c[n+8>>2]=c[U>>2];if((b[(c[t>>2]|0)+60>>1]&32|0)!=0){b[C>>1]=e[C>>1]&-1025}if((c[c[E>>2]>>2]|0)>64){f=c[L>>2]|0;c[Z>>2]=64;bf(f,29960,Z);c[q>>2]=0;f=c[q>>2]|0;i=r;return f|0}if((b[C>>1]&64|0)!=0){j=1}else{j=c[c[E>>2]>>2]|0}c[H>>2]=j;c[Y>>2]=815+(((c[H>>2]|0)-1|0)*72|0)&-8;c[s>>2]=ve(c[t>>2]|0,(c[Y>>2]|0)+72|0)|0;a:do{if((a[(c[t>>2]|0)+64>>0]|0)!=0){cc(c[t>>2]|0,c[s>>2]|0);c[s>>2]=0}else{c[(c[s>>2]|0)+64>>2]=-1;c[(c[s>>2]|0)+60>>2]=-1;a[(c[s>>2]|0)+41>>0]=c[H>>2];c[c[s>>2]>>2]=c[L>>2];c[(c[s>>2]|0)+4>>2]=c[E>>2];c[(c[s>>2]|0)+8>>2]=c[U>>2];c[(c[s>>2]|0)+12>>2]=c[Q>>2];f=cz(c[u>>2]|0)|0;c[(c[s>>2]|0)+48>>2]=f;c[(c[s>>2]|0)+52>>2]=f;b[(c[s>>2]|0)+34>>1]=b[C>>1]|0;c[(c[s>>2]|0)+56>>2]=c[(c[L>>2]|0)+424>>2];c[P>>2]=(c[s>>2]|0)+68;c[n>>2]=c[s>>2];c[n+4>>2]=(c[s>>2]|0)+328;c[n+12>>2]=(c[s>>2]|0)+(c[Y>>2]|0);sB(c[n+12>>2]|0);c[c[P>>2]>>2]=0;vB((c[s>>2]|0)+328|0,c[s>>2]|0);wB((c[s>>2]|0)+328|0,c[X>>2]|0,72);c[G>>2]=0;while(1){X=(c[H>>2]|0)==0;if((c[G>>2]|0)>=(c[(c[n+4>>2]|0)+12>>2]|0)){break}if(X){o=16}else{if((Vz(c[(c[(c[n+4>>2]|0)+20>>2]|0)+((c[G>>2]|0)*48|0)>>2]|0)|0)!=0){o=16}}if((o|0)==16){o=0;ez(c[L>>2]|0,c[(c[(c[n+4>>2]|0)+20>>2]|0)+((c[G>>2]|0)*48|0)>>2]|0,c[(c[s>>2]|0)+52>>2]|0,8);f=(c[(c[n+4>>2]|0)+20>>2]|0)+((c[G>>2]|0)*48|0)+20|0;a[f>>0]=d[f>>0]|4}c[G>>2]=(c[G>>2]|0)+1}if(X){if((c[U>>2]|0)!=0){a[(c[s>>2]|0)+36>>0]=c[c[U>>2]>>2]}if((b[C>>1]&1024|0)!=0){a[(c[s>>2]|0)+40>>0]=1}}c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[c[E>>2]>>2]|0)){break}xB(c[P>>2]|0,c[(c[E>>2]|0)+8+((c[G>>2]|0)*72|0)+40>>2]|0);c[G>>2]=(c[G>>2]|0)+1}yB(c[E>>2]|0,(c[s>>2]|0)+328|0);if((a[(c[t>>2]|0)+64>>0]|0)==0){do{if((b[C>>1]&1024|0)!=0){if((zB(c[L>>2]|0,c[E>>2]|0,(c[s>>2]|0)+328|0,c[Q>>2]|0)|0)!=0){a[(c[s>>2]|0)+40>>0]=1;break}if((c[U>>2]|0)==0){f=(c[s>>2]|0)+34|0;b[f>>1]=e[f>>1]|512;c[(c[s>>2]|0)+8>>2]=c[Q>>2]}}}while(0);if((c[H>>2]|0)!=1){o=34}else{if((AB(n)|0)==0){o=34}}if((o|0)==34){c[V>>2]=BB(n)|0;if((c[V>>2]|0)!=0){break}CB(c[s>>2]|0,0)|0;if((a[(c[t>>2]|0)+64>>0]|0)!=0){break}if((c[(c[s>>2]|0)+8>>2]|0)!=0){CB(c[s>>2]|0,(b[(c[s>>2]|0)+32>>1]|0)+1&65535)|0;if((a[(c[t>>2]|0)+64>>0]|0)!=0){break}}}if((c[(c[s>>2]|0)+8>>2]|0)==0){if((c[(c[t>>2]|0)+24>>2]&131072|0)!=0){f=(c[s>>2]|0)+24|0;c[f>>2]=-1;c[f+4>>2]=-1}}if((c[(c[L>>2]|0)+64>>2]|0)==0){if((d[(c[t>>2]|0)+64>>0]|0)==0){b:do{if((d[(c[s>>2]|0)+41>>0]|0)>=2){if((c[Q>>2]|0)!=0){if((b[(c[t>>2]|0)+60>>1]&1024|0)==0){g=DB(c[P>>2]|0,c[Q>>2]|0)|0;f=O;c[f>>2]=g;c[f+4>>2]=D;if((c[n+8>>2]|0)!=0){h=DB(c[P>>2]|0,c[n+8>>2]|0)|0;Z=O;g=c[Z+4>>2]|D;f=O;c[f>>2]=c[Z>>2]|h;c[f+4>>2]=g}while(1){if((d[(c[s>>2]|0)+41>>0]|0)<2){break b}c[v>>2]=c[(c[s>>2]|0)+736+(((d[(c[s>>2]|0)+41>>0]|0)-1|0)*72|0)+56>>2];if((a[(c[(c[s>>2]|0)+4>>2]|0)+8+((d[(c[v>>2]|0)+16>>0]|0)*72|0)+36>>0]&8|0)==0){break b}if((b[C>>1]&1024|0)==0){if((c[(c[v>>2]|0)+36>>2]&4096|0)==0){break b}}g=O;f=(c[v>>2]|0)+8|0;if((c[g>>2]&c[f>>2]|0)!=0?1:(c[g+4>>2]&c[f+4>>2]|0)!=0){break b}c[M>>2]=(c[(c[n+4>>2]|0)+20>>2]|0)+((c[(c[n+4>>2]|0)+12>>2]|0)*48|0);c[N>>2]=c[(c[n+4>>2]|0)+20>>2];while(1){if(!((c[N>>2]|0)>>>0<(c[M>>2]|0)>>>0)){break}g=(c[N>>2]|0)+40|0;f=(c[v>>2]|0)+8|0;if((c[g>>2]&c[f>>2]|0)!=0?1:(c[g+4>>2]&c[f+4>>2]|0)!=0){if((c[(c[c[N>>2]>>2]|0)+4>>2]&1|0)==0){break}}c[N>>2]=(c[N>>2]|0)+48}if((c[N>>2]|0)>>>0<(c[M>>2]|0)>>>0){break b}f=(c[s>>2]|0)+41|0;a[f>>0]=(a[f>>0]|0)+ -1<<24>>24;c[H>>2]=(c[H>>2]|0)+ -1}}}}}while(0);f=(c[c[s>>2]>>2]|0)+424|0;c[f>>2]=(c[f>>2]|0)+(b[(c[s>>2]|0)+32>>1]|0);if((b[C>>1]&4|0)!=0){if((c[(c[(c[s>>2]|0)+792>>2]|0)+36>>2]&4096|0)!=0){a[(c[s>>2]|0)+38>>0]=1;if((a[(c[(c[E>>2]|0)+24>>2]|0)+44>>0]&32|0)==0){f=(c[(c[s>>2]|0)+792>>2]|0)+36|0;c[f>>2]=c[f>>2]&-65}}}f=I;c[f>>2]=-1;c[f+4>>2]=-1;c[G>>2]=0;c[F>>2]=(c[s>>2]|0)+736;while(1){if((c[G>>2]|0)>=(c[H>>2]|0)){break}c[y>>2]=(c[E>>2]|0)+8+((d[(c[F>>2]|0)+36>>0]|0)*72|0);c[w>>2]=c[(c[y>>2]|0)+16>>2];c[A>>2]=ef(c[t>>2]|0,c[(c[w>>2]|0)+68>>2]|0)|0;c[v>>2]=c[(c[F>>2]|0)+56>>2];c:do{if((a[(c[w>>2]|0)+44>>0]&2|0)==0){if((c[(c[w>>2]|0)+12>>2]|0)==0){if((c[(c[v>>2]|0)+36>>2]&1024|0)!=0){c[x>>2]=ww(c[t>>2]|0,c[w>>2]|0)|0;c[z>>2]=c[(c[y>>2]|0)+40>>2];Sv(c[u>>2]|0,149,c[z>>2]|0,0,0,c[x>>2]|0,-10)|0;break}if((a[(c[w>>2]|0)+44>>0]&16|0)!=0){break}do{if((c[(c[v>>2]|0)+36>>2]&64|0)==0){if((b[C>>1]&16|0)!=0){break}c[B>>2]=52;if((a[(c[s>>2]|0)+38>>0]|0)!=0){c[B>>2]=53;c[(c[s>>2]|0)+60>>2]=c[(c[y>>2]|0)+40>>2]}qy(c[L>>2]|0,c[(c[y>>2]|0)+40>>2]|0,c[A>>2]|0,c[w>>2]|0,c[B>>2]|0);if((a[(c[s>>2]|0)+38>>0]|0)!=0){break c}if((b[(c[w>>2]|0)+38>>1]|0)>=64){break c}if((a[(c[w>>2]|0)+44>>0]&32|0)!=0){break c}h=(c[y>>2]|0)+56|0;g=c[h+4>>2]|0;f=J;c[f>>2]=c[h>>2];c[f+4>>2]=g;c[K>>2]=0;while(1){f=J;if(!((c[f>>2]|0)!=0|(c[f+4>>2]|0)!=0)){break}g=J;g=eL(c[g>>2]|0,c[g+4>>2]|0,1)|0;f=J;c[f>>2]=g;c[f+4>>2]=D;c[K>>2]=(c[K>>2]|0)+1}g=c[u>>2]|0;f=(sy(c[u>>2]|0)|0)-1|0;nf(g,f,c[K>>2]|0,-14);break c}}while(0);py(c[L>>2]|0,c[A>>2]|0,c[(c[w>>2]|0)+32>>2]|0,0,c[c[w>>2]>>2]|0)}}}while(0);do{if((c[(c[v>>2]|0)+36>>2]&512|0)!=0){c[R>>2]=c[(c[v>>2]|0)+28>>2];c[S>>2]=52;do{if((a[(c[w>>2]|0)+44>>0]&32|0)==0){o=88}else{if((a[(c[R>>2]|0)+55>>0]&3|0)!=2){o=88;break}if((b[C>>1]&64|0)==0){o=88;break}c[T>>2]=c[(c[F>>2]|0)+4>>2];c[S>>2]=0}}while(0);d:do{if((o|0)==88){o=0;if((a[(c[s>>2]|0)+38>>0]|0)==0){do{if((c[W>>2]|0)!=0){if((b[C>>1]&64|0)==0){break}c[T>>2]=c[W>>2];break d}}while(0);g=(c[L>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[T>>2]=f;break}c[p>>2]=c[(c[(c[y>>2]|0)+16>>2]|0)+8>>2];c[T>>2]=c[W>>2];while(1){if((c[p>>2]|0)==0){break}if((c[p>>2]|0)==(c[R>>2]|0)){break}c[T>>2]=(c[T>>2]|0)+1;c[p>>2]=c[(c[p>>2]|0)+20>>2]}c[S>>2]=53;c[(c[s>>2]|0)+64>>2]=c[T>>2]}}while(0);c[(c[F>>2]|0)+8>>2]=c[T>>2];if((c[S>>2]|0)==0){break}Tv(c[u>>2]|0,c[S>>2]|0,c[T>>2]|0,c[(c[R>>2]|0)+44>>2]|0,c[A>>2]|0)|0;ry(c[L>>2]|0,c[R>>2]|0)}}while(0);if((c[A>>2]|0)>=0){aw(c[L>>2]|0,c[A>>2]|0)}h=EB((c[s>>2]|0)+68|0,c[(c[y>>2]|0)+40>>2]|0)|0;Z=I;g=c[Z+4>>2]&~D;f=I;c[f>>2]=c[Z>>2]&~h;c[f+4>>2]=g;c[G>>2]=(c[G>>2]|0)+1;c[F>>2]=(c[F>>2]|0)+72}f=sy(c[u>>2]|0)|0;c[(c[s>>2]|0)+44>>2]=f;if((a[(c[t>>2]|0)+64>>0]|0)==0){f=I;c[f>>2]=-1;c[f+4>>2]=-1;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[H>>2]|0)){break}c[F>>2]=(c[s>>2]|0)+736+((c[G>>2]|0)*72|0);if((c[(c[(c[F>>2]|0)+56>>2]|0)+36>>2]&16384|0)!=0){f=I;FB(c[L>>2]|0,(c[s>>2]|0)+328|0,(c[E>>2]|0)+8+((d[(c[F>>2]|0)+36>>0]|0)*72|0)|0,c[f>>2]|0,c[f+4>>2]|0,c[F>>2]|0);if((a[(c[t>>2]|0)+64>>0]|0)!=0){break a}}GB(c[L>>2]|0,c[E>>2]|0,c[F>>2]|0,c[G>>2]|0,d[(c[F>>2]|0)+36>>0]|0,b[C>>1]|0);g=sy(c[u>>2]|0)|0;c[(c[F>>2]|0)+32>>2]=g;g=I;g=HB(c[s>>2]|0,c[G>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;f=I;c[f>>2]=g;c[f+4>>2]=D;c[(c[s>>2]|0)+48>>2]=c[(c[F>>2]|0)+24>>2];c[G>>2]=(c[G>>2]|0)+1}c[q>>2]=c[s>>2];f=c[q>>2]|0;i=r;return f|0}}}}}}while(0);if((c[s>>2]|0)!=0){c[(c[L>>2]|0)+424>>2]=c[(c[s>>2]|0)+56>>2];nB(c[t>>2]|0,c[s>>2]|0)}c[q>>2]=0;f=c[q>>2]|0;i=r;return f|0}function mB(e){e=e|0;var f=0,g=0,h=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;k=i;i=i+80|0;u=k+76|0;h=k+72|0;n=k+68|0;v=k+64|0;o=k+60|0;f=k+56|0;r=k+52|0;j=k+48|0;z=k+44|0;B=k+40|0;A=k+36|0;l=k+12|0;m=k;p=k+4|0;q=k+8|0;s=k+16|0;t=k+20|0;w=k+24|0;x=k+28|0;y=k+32|0;c[u>>2]=e;c[h>>2]=c[c[u>>2]>>2];c[n>>2]=c[(c[h>>2]|0)+8>>2];c[r>>2]=c[(c[u>>2]|0)+4>>2];c[j>>2]=c[c[h>>2]>>2];IA(c[h>>2]|0);c[v>>2]=(d[(c[u>>2]|0)+41>>0]|0)-1;while(1){if((c[v>>2]|0)<0){break}c[o>>2]=(c[u>>2]|0)+736+((c[v>>2]|0)*72|0);c[f>>2]=c[(c[o>>2]|0)+56>>2];$y(c[n>>2]|0,c[(c[o>>2]|0)+24>>2]|0);if((d[(c[o>>2]|0)+37>>0]|0)!=156){Tv(c[n>>2]|0,d[(c[o>>2]|0)+37>>0]|0,c[(c[o>>2]|0)+40>>2]|0,c[(c[o>>2]|0)+44>>2]|0,d[(c[o>>2]|0)+38>>0]|0)|0;gf(c[n>>2]|0,a[(c[o>>2]|0)+39>>0]|0)}if((c[(c[f>>2]|0)+36>>2]&2048|0)!=0){if((c[(c[o>>2]|0)+48>>2]|0)>0){$y(c[n>>2]|0,c[(c[o>>2]|0)+16>>2]|0);c[A>>2]=c[(c[o>>2]|0)+48>>2];c[B>>2]=(c[(c[o>>2]|0)+52>>2]|0)+(((c[A>>2]|0)-1|0)*12|0);while(1){if((c[A>>2]|0)<=0){break}jw(c[n>>2]|0,(c[(c[B>>2]|0)+4>>2]|0)+1|0);Qv(c[n>>2]|0,d[(c[B>>2]|0)+8>>0]|0,c[c[B>>2]>>2]|0,c[(c[B>>2]|0)+4>>2]|0)|0;jw(c[n>>2]|0,(c[(c[B>>2]|0)+4>>2]|0)-1|0);c[A>>2]=(c[A>>2]|0)+ -1;c[B>>2]=(c[B>>2]|0)+ -12}cc(c[j>>2]|0,c[(c[o>>2]|0)+52>>2]|0)}}$y(c[n>>2]|0,c[(c[o>>2]|0)+12>>2]|0);if((c[(c[o>>2]|0)+20>>2]|0)!=0){Qv(c[n>>2]|0,16,0,c[(c[o>>2]|0)+20>>2]|0)|0;jw(c[n>>2]|0,c[(c[o>>2]|0)+20>>2]|0);jw(c[n>>2]|0,(c[(c[o>>2]|0)+20>>2]|0)-2|0)}if((c[c[o>>2]>>2]|0)!=0){c[z>>2]=oy(c[n>>2]|0,134,c[c[o>>2]>>2]|0)|0;if((c[(c[f>>2]|0)+36>>2]&64|0)==0){oy(c[n>>2]|0,101,c[(c[r>>2]|0)+8+((c[v>>2]|0)*72|0)+40>>2]|0)|0}if((c[(c[f>>2]|0)+36>>2]&512|0)!=0){oy(c[n>>2]|0,101,c[(c[o>>2]|0)+8>>2]|0)|0}C=c[n>>2]|0;e=c[o>>2]|0;if((d[(c[o>>2]|0)+37>>0]|0)==18){Qv(C,17,c[e+40>>2]|0,c[(c[o>>2]|0)+28>>2]|0)|0}else{Qv(C,16,0,c[e+28>>2]|0)|0}jw(c[n>>2]|0,c[z>>2]|0)}c[v>>2]=(c[v>>2]|0)+ -1}$y(c[n>>2]|0,c[(c[u>>2]|0)+52>>2]|0);c[v>>2]=0;c[o>>2]=(c[u>>2]|0)+736;while(1){if((c[v>>2]|0)>=(d[(c[u>>2]|0)+41>>0]|0)){break}c[q>>2]=0;c[s>>2]=(c[r>>2]|0)+8+((d[(c[o>>2]|0)+36>>0]|0)*72|0);c[t>>2]=c[(c[s>>2]|0)+16>>2];c[f>>2]=c[(c[o>>2]|0)+56>>2];a:do{if(((d[(c[s>>2]|0)+37>>0]|0)>>>2&1|0)!=0){if((a[(c[j>>2]|0)+64>>0]|0)!=0){g=35}else{c[m>>2]=sy(c[n>>2]|0)|0;c[l>>2]=c[(c[o>>2]|0)+32>>2];c[p>>2]=Kz(c[n>>2]|0,c[l>>2]|0)|0;while(1){if((c[l>>2]|0)>=(c[m>>2]|0)){break a}do{if((c[(c[p>>2]|0)+4>>2]|0)==(c[(c[o>>2]|0)+4>>2]|0)){z=c[p>>2]|0;if((d[c[p>>2]>>0]|0)==46){a[z>>0]=33;c[(c[p>>2]|0)+4>>2]=(c[(c[p>>2]|0)+8>>2]|0)+(c[(c[s>>2]|0)+32>>2]|0);c[(c[p>>2]|0)+8>>2]=c[(c[p>>2]|0)+12>>2];c[(c[p>>2]|0)+12>>2]=0;break}if((d[z>>0]|0)==100){a[c[p>>2]>>0]=28;c[(c[p>>2]|0)+4>>2]=0;c[(c[p>>2]|0)+12>>2]=0}}}while(0);c[l>>2]=(c[l>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+20}}}else{g=35}}while(0);b:do{if((g|0)==35){g=0;if((a[(c[t>>2]|0)+44>>0]&2|0)==0){if((c[(c[t>>2]|0)+12>>2]|0)==0){if((b[(c[u>>2]|0)+34>>1]&16|0)==0){c[w>>2]=c[(c[f>>2]|0)+36>>2];if((a[(c[u>>2]|0)+38>>0]|0)==0){if((c[w>>2]&64|0)==0){oy(c[n>>2]|0,58,c[(c[s>>2]|0)+40>>2]|0)|0}}if((c[w>>2]&512|0)!=0){if((c[w>>2]&16640|0)==0){if((c[(c[o>>2]|0)+8>>2]|0)!=(c[(c[u>>2]|0)+64>>2]|0)){oy(c[n>>2]|0,58,c[(c[o>>2]|0)+8>>2]|0)|0}}}}}}z=c[f>>2]|0;if((c[(c[f>>2]|0)+36>>2]&576|0)!=0){c[q>>2]=c[z+28>>2]}else{if((c[z+36>>2]&8192|0)!=0){c[q>>2]=c[(c[o>>2]|0)+48>>2]}}if((c[q>>2]|0)!=0){if((a[(c[j>>2]|0)+64>>0]|0)==0){c[m>>2]=sy(c[n>>2]|0)|0;c[l>>2]=c[(c[o>>2]|0)+32>>2];c[p>>2]=Kz(c[n>>2]|0,c[l>>2]|0)|0;while(1){if((c[l>>2]|0)>=(c[m>>2]|0)){break b}do{if((c[(c[p>>2]|0)+4>>2]|0)==(c[(c[o>>2]|0)+4>>2]|0)){z=c[p>>2]|0;if((d[c[p>>2]>>0]|0)!=46){if((d[z>>0]|0)!=100){break}c[(c[p>>2]|0)+4>>2]=c[(c[o>>2]|0)+8>>2];a[c[p>>2]>>0]=109;break}c[x>>2]=c[z+8>>2];if((a[(c[t>>2]|0)+44>>0]&32|0)!=0){c[y>>2]=Dy(c[t>>2]|0)|0;c[x>>2]=b[(c[(c[y>>2]|0)+4>>2]|0)+(c[x>>2]<<1)>>1]|0}c[x>>2]=(kz(c[q>>2]|0,c[x>>2]&65535)|0)<<16>>16;if((c[x>>2]|0)>=0){c[(c[p>>2]|0)+8>>2]=c[x>>2];c[(c[p>>2]|0)+4>>2]=c[(c[o>>2]|0)+8>>2]}}}while(0);c[l>>2]=(c[l>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+20}}}}}while(0);c[v>>2]=(c[v>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+72}c[(c[h>>2]|0)+424>>2]=c[(c[u>>2]|0)+56>>2];nB(c[j>>2]|0,c[u>>2]|0);i=k;return}function nB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d;g=d+4|0;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}oB((c[f>>2]|0)+328|0);while(1){if((c[(c[f>>2]|0)+16>>2]|0)==0){break}c[g>>2]=c[(c[f>>2]|0)+16>>2];c[(c[f>>2]|0)+16>>2]=c[(c[g>>2]|0)+48>>2];pB(c[e>>2]|0,c[g>>2]|0)}cc(c[e>>2]|0,c[f>>2]|0);i=d;return}function oB(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+12|0;h=d;g=d+4|0;e=d+8|0;c[f>>2]=b;c[e>>2]=c[c[c[c[f>>2]>>2]>>2]>>2];c[h>>2]=(c[(c[f>>2]|0)+12>>2]|0)-1;c[g>>2]=c[(c[f>>2]|0)+20>>2];while(1){if((c[h>>2]|0)<0){break}if((a[(c[g>>2]|0)+20>>0]&1|0)!=0){gu(c[e>>2]|0,c[c[g>>2]>>2]|0)}if((a[(c[g>>2]|0)+20>>0]&16|0)!=0){tB(c[e>>2]|0,c[(c[g>>2]|0)+12>>2]|0)}else{if((a[(c[g>>2]|0)+20>>0]&32|0)!=0){uB(c[e>>2]|0,c[(c[g>>2]|0)+12>>2]|0)}}c[h>>2]=(c[h>>2]|0)+ -1;c[g>>2]=(c[g>>2]|0)+48}if((c[(c[f>>2]|0)+20>>2]|0)==((c[f>>2]|0)+24|0)){i=d;return}cc(c[e>>2]|0,c[(c[f>>2]|0)+20>>2]|0);i=d;return}function pB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;qB(c[f>>2]|0,c[e>>2]|0);cc(c[f>>2]|0,c[e>>2]|0);i=d;return}function qB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;if((c[(c[e>>2]|0)+44>>2]|0)!=((c[e>>2]|0)+52|0)){cc(c[f>>2]|0,c[(c[e>>2]|0)+44>>2]|0)}rB(c[f>>2]|0,c[e>>2]|0);sB(c[e>>2]|0);i=d;return}function rB(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;h=f+4|0;g=f;c[h>>2]=b;c[g>>2]=e;if((c[(c[g>>2]|0)+36>>2]&17408|0)==0){i=f;return}if((c[(c[g>>2]|0)+36>>2]&1024|0)!=0){if((d[(c[g>>2]|0)+28>>0]|0|0)!=0){oc(c[(c[g>>2]|0)+32>>2]|0);a[(c[g>>2]|0)+28>>0]=0;c[(c[g>>2]|0)+32>>2]=0;i=f;return}}if((c[(c[g>>2]|0)+36>>2]&16384|0)==0){i=f;return}if((c[(c[g>>2]|0)+28>>2]|0)==0){i=f;return}cc(c[h>>2]|0,c[(c[(c[g>>2]|0)+28>>2]|0)+16>>2]|0);Ch(c[(c[(c[g>>2]|0)+28>>2]|0)+40>>2]|0);cc(c[h>>2]|0,c[(c[g>>2]|0)+28>>2]|0);c[(c[g>>2]|0)+28>>2]=0;i=f;return}function sB(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;c[(c[e>>2]|0)+44>>2]=(c[e>>2]|0)+52;b[(c[e>>2]|0)+40>>1]=0;b[(c[e>>2]|0)+42>>1]=4;c[(c[e>>2]|0)+36>>2]=0;i=d;return}function tB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;oB(c[e>>2]|0);cc(c[f>>2]|0,c[e>>2]|0);i=d;return}function uB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;oB(c[e>>2]|0);cc(c[f>>2]|0,c[e>>2]|0);i=d;return}function vB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[c[e>>2]>>2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=0;c[(c[e>>2]|0)+16>>2]=8;c[(c[e>>2]|0)+20>>2]=(c[e>>2]|0)+24;i=d;return}function wB(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g+4|0;k=g;h=g+8|0;c[j>>2]=b;c[k>>2]=e;a[h>>0]=f;a[(c[j>>2]|0)+8>>0]=a[h>>0]|0;if((c[k>>2]|0)==0){i=g;return}e=c[j>>2]|0;f=c[k>>2]|0;if((d[c[k>>2]>>0]|0|0)!=(d[h>>0]|0|0)){yC(e,f,0)|0;i=g;return}else{wB(e,c[f+12>>2]|0,a[h>>0]|0);wB(c[j>>2]|0,c[(c[k>>2]|0)+16>>2]|0,a[h>>0]|0);i=g;return}}function xB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=c[f>>2]|0;f=c[e>>2]|0;a=c[f>>2]|0;c[f>>2]=a+1;c[(c[e>>2]|0)+4+(a<<2)>>2]=b;i=d;return}function yB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=(c[(c[g>>2]|0)+12>>2]|0)-1;while(1){if((c[e>>2]|0)<0){break}vC(c[f>>2]|0,c[g>>2]|0,c[e>>2]|0);c[e>>2]=(c[e>>2]|0)+ -1}i=d;return}function zB(a,f,g,h){a=a|0;f=f|0;g=g|0;h=h|0;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;s=i;i=i+48|0;l=s+40|0;o=s+36|0;w=s+32|0;t=s+28|0;p=s+24|0;u=s+16|0;n=s+12|0;m=s+8|0;q=s+4|0;v=s;j=s+44|0;r=s+20|0;c[o>>2]=a;c[w>>2]=f;c[t>>2]=g;c[p>>2]=h;if((c[c[w>>2]>>2]|0)!=1){c[l>>2]=0;a=c[l>>2]|0;i=s;return a|0}c[q>>2]=c[(c[w>>2]|0)+48>>2];c[u>>2]=c[(c[w>>2]|0)+24>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[c[p>>2]>>2]|0)){break}c[v>>2]=Pw(c[(c[(c[p>>2]|0)+4>>2]|0)+((c[m>>2]|0)*20|0)>>2]|0)|0;if((d[c[v>>2]>>0]|0)==154){if((c[(c[v>>2]|0)+28>>2]|0)==(c[q>>2]|0)){if((b[(c[v>>2]|0)+32>>1]|0)<0){k=8;break}}}c[m>>2]=(c[m>>2]|0)+1}if((k|0)==8){c[l>>2]=1;a=c[l>>2]|0;i=s;return a|0}c[n>>2]=c[(c[u>>2]|0)+8>>2];while(1){if((c[n>>2]|0)==0){k=22;break}if((d[(c[n>>2]|0)+54>>0]|0)!=0){c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[(c[n>>2]|0)+50>>1]|0)){break}b[j>>1]=b[(c[(c[n>>2]|0)+4>>2]|0)+(c[m>>2]<<1)>>1]|0;if(0==(OB(c[t>>2]|0,c[q>>2]|0,b[j>>1]|0,-1,-1,2,c[n>>2]|0)|0)){c[r>>2]=uC(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[n>>2]|0,c[m>>2]|0)|0;if((c[r>>2]|0)<0){break}if((d[(c[(c[u>>2]|0)+4>>2]|0)+((b[j>>1]|0)*24|0)+20>>0]|0)==0){break}}c[m>>2]=(c[m>>2]|0)+1}if((c[m>>2]|0)==(e[(c[n>>2]|0)+50>>1]|0)){k=20;break}}c[n>>2]=c[(c[n>>2]|0)+20>>2]}if((k|0)==20){c[l>>2]=1;a=c[l>>2]|0;i=s;return a|0}else if((k|0)==22){c[l>>2]=0;a=c[l>>2]|0;i=s;return a|0}return 0}function AB(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;o=i;i=i+48|0;j=o+40|0;t=o+36|0;s=o+32|0;m=o+28|0;p=o+24|0;l=o+20|0;k=o+12|0;q=o+8|0;g=o+4|0;r=o;n=o+16|0;c[t>>2]=f;c[s>>2]=c[c[t>>2]>>2];if((b[(c[s>>2]|0)+34>>1]&32|0)!=0){c[j>>2]=0;f=c[j>>2]|0;i=o;return f|0}c[m>>2]=(c[(c[s>>2]|0)+4>>2]|0)+8;c[r>>2]=c[(c[m>>2]|0)+16>>2];if((a[(c[r>>2]|0)+44>>0]&16|0)!=0){c[j>>2]=0;f=c[j>>2]|0;i=o;return f|0}if((c[(c[m>>2]|0)+64>>2]|0)!=0){c[j>>2]=0;f=c[j>>2]|0;i=o;return f|0}c[q>>2]=c[(c[m>>2]|0)+40>>2];c[p>>2]=(c[s>>2]|0)+328;c[k>>2]=c[(c[t>>2]|0)+12>>2];c[(c[k>>2]|0)+36>>2]=0;b[(c[k>>2]|0)+26>>1]=0;c[l>>2]=OB(c[p>>2]|0,c[q>>2]|0,-1,0,0,2,0)|0;a:do{if((c[l>>2]|0)!=0){c[(c[k>>2]|0)+36>>2]=4353;c[c[(c[k>>2]|0)+44>>2]>>2]=c[l>>2];b[(c[k>>2]|0)+40>>1]=1;b[(c[k>>2]|0)+24>>1]=1;b[(c[k>>2]|0)+20>>1]=33}else{c[n>>2]=c[(c[r>>2]|0)+8>>2];while(1){if((c[n>>2]|0)==0){break a}if((d[(c[n>>2]|0)+54>>0]|0)!=0){if((c[(c[n>>2]|0)+36>>2]|0)==0){if((e[(c[n>>2]|0)+50>>1]|0)<=4){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(e[(c[n>>2]|0)+50>>1]|0)){break}c[l>>2]=OB(c[p>>2]|0,c[q>>2]|0,b[(c[(c[n>>2]|0)+4>>2]|0)+(c[g>>2]<<1)>>1]|0,0,0,2,c[n>>2]|0)|0;if((c[l>>2]|0)==0){break}c[(c[(c[k>>2]|0)+44>>2]|0)+(c[g>>2]<<2)>>2]=c[l>>2];c[g>>2]=(c[g>>2]|0)+1}if((c[g>>2]|0)==(e[(c[n>>2]|0)+50>>1]|0)){break}}}}c[n>>2]=c[(c[n>>2]|0)+20>>2]}c[(c[k>>2]|0)+36>>2]=4609;if(((d[(c[n>>2]|0)+55>>0]|0)>>>5&1|0)!=0){h=21}else{f=(c[m>>2]|0)+56|0;r=c[f>>2]|0;f=c[f+4>>2]|0;t=mC(c[n>>2]|0)|0;if((r&~t|0)==0&(f&~D|0)==0){h=21}}if((h|0)==21){f=(c[k>>2]|0)+36|0;c[f>>2]=c[f>>2]|64}b[(c[k>>2]|0)+40>>1]=c[g>>2];b[(c[k>>2]|0)+24>>1]=c[g>>2];c[(c[k>>2]|0)+28>>2]=c[n>>2];b[(c[k>>2]|0)+20>>1]=39}}while(0);if((c[(c[k>>2]|0)+36>>2]|0)==0){c[j>>2]=0;f=c[j>>2]|0;i=o;return f|0}b[(c[k>>2]|0)+22>>1]=1;c[(c[s>>2]|0)+792>>2]=c[k>>2];t=EB((c[s>>2]|0)+68|0,c[q>>2]|0)|0;f=(c[k>>2]|0)+8|0;c[f>>2]=t;c[f+4>>2]=D;c[(c[s>>2]|0)+740>>2]=c[q>>2];b[(c[s>>2]|0)+32>>1]=1;if((c[(c[s>>2]|0)+8>>2]|0)!=0){a[(c[s>>2]|0)+36>>0]=c[c[(c[s>>2]|0)+8>>2]>>2]}if((b[(c[s>>2]|0)+34>>1]&1024|0)!=0){a[(c[s>>2]|0)+40>>0]=1}c[j>>2]=1;f=c[j>>2]|0;i=o;return f|0}function BB(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+64|0;j=e+48|0;p=e+44|0;k=e;m=e+8|0;o=e+40|0;s=e+36|0;l=e+32|0;h=e+24|0;q=e+20|0;f=e+16|0;n=e+52|0;g=e+28|0;c[j>>2]=b;c[p>>2]=c[c[j>>2]>>2];r=k;c[r>>2]=0;c[r+4>>2]=0;r=m;c[r>>2]=0;c[r+4>>2]=0;c[s>>2]=c[(c[p>>2]|0)+4>>2];c[h>>2]=c[c[c[p>>2]>>2]>>2];c[q>>2]=d[(c[p>>2]|0)+41>>0]|0;c[f>>2]=0;a[n>>0]=0;c[g>>2]=c[(c[j>>2]|0)+12>>2];sB(c[g>>2]|0);c[o>>2]=0;c[l>>2]=(c[s>>2]|0)+8;while(1){if((c[o>>2]|0)>=(c[q>>2]|0)){j=13;break}a[(c[g>>2]|0)+16>>0]=c[o>>2];r=EB((c[p>>2]|0)+68|0,c[(c[l>>2]|0)+40>>2]|0)|0;s=(c[g>>2]|0)+8|0;c[s>>2]=r;c[s+4>>2]=D;if(((d[(c[l>>2]|0)+36>>0]|0|(d[n>>0]|0))&10|0)!=0){b=m;r=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=r}a[n>>0]=a[(c[l>>2]|0)+36>>0]|0;b=c[j>>2]|0;s=k;r=c[s>>2]|0;s=c[s+4>>2]|0;if((a[(c[(c[l>>2]|0)+16>>2]|0)+44>>0]&16|0)!=0){c[f>>2]=$B(b,r,s)|0}else{c[f>>2]=aC(b,r,s)|0}if((c[f>>2]|0)==0){s=k;c[f>>2]=bC(c[j>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0}b=(c[g>>2]|0)+8|0;t=m;r=c[t+4>>2]|c[b+4>>2];s=m;c[s>>2]=c[t>>2]|c[b>>2];c[s+4>>2]=r;if((c[f>>2]|0)!=0){j=13;break}if((d[(c[h>>2]|0)+64>>0]|0|0)!=0){j=13;break}c[o>>2]=(c[o>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+72}if((j|0)==13){qB(c[h>>2]|0,c[g>>2]|0);i=e;return c[f>>2]|0}return 0}function CB(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;n=i;i=i+160|0;x=n;g=n+116|0;l=n+112|0;q=n+138|0;O=n+108|0;m=n+104|0;D=n+100|0;h=n+96|0;t=n+84|0;A=n+88|0;J=n+92|0;Q=n+124|0;L=n+128|0;G=n+136|0;H=n+140|0;P=n+142|0;R=n+144|0;C=n+48|0;B=n+120|0;z=n+64|0;w=n+44|0;k=n+60|0;K=n+56|0;v=n+52|0;S=n+80|0;j=n+68|0;I=n+24|0;E=n+8|0;F=n+146|0;M=n+132|0;N=n+134|0;u=n+72|0;r=n+16|0;s=n+76|0;o=n+32|0;p=n+40|0;c[l>>2]=e;b[q>>1]=f;c[Q>>2]=0;b[P>>1]=0;b[R>>1]=0;c[D>>2]=c[c[l>>2]>>2];c[h>>2]=c[c[D>>2]>>2];c[m>>2]=d[(c[l>>2]|0)+41>>0]|0;if((c[m>>2]|0)<=1){f=1}else{f=(c[m>>2]|0)==2?5:10}c[O>>2]=f;c[A>>2]=($(32+(c[m>>2]<<2)|0,c[O>>2]|0)|0)<<1;c[j>>2]=$e(c[h>>2]|0,c[A>>2]|0)|0;if((c[j>>2]|0)==0){c[g>>2]=7;e=c[g>>2]|0;i=n;return e|0}c[w>>2]=c[j>>2];c[z>>2]=(c[w>>2]|0)+(c[O>>2]<<5);e=c[z>>2]|0;c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0;c[S>>2]=(c[z>>2]|0)+(c[O>>2]<<5);c[A>>2]=c[O>>2]<<1;c[k>>2]=c[w>>2];while(1){if((c[A>>2]|0)<=0){break}c[(c[k>>2]|0)+24>>2]=c[S>>2];c[A>>2]=(c[A>>2]|0)+ -1;c[k>>2]=(c[k>>2]|0)+32;c[S>>2]=(c[S>>2]|0)+(c[m>>2]<<2)}if((c[(c[D>>2]|0)+424>>2]|0)>>>0<46){S=c[(c[D>>2]|0)+424>>2]|0}else{S=46}b[(c[z>>2]|0)+16>>1]=S;c[B>>2]=1;if((c[(c[l>>2]|0)+8>>2]|0)==0){y=12}else{if((b[q>>1]|0)==0){y=12}else{a[(c[z>>2]|0)+20>>0]=(c[m>>2]|0)>0?-1:1;c[L>>2]=c[c[(c[l>>2]|0)+8>>2]>>2]}}if((y|0)==12){a[(c[z>>2]|0)+20>>0]=0;c[L>>2]=0}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[m>>2]|0)){break}c[C>>2]=0;c[A>>2]=0;c[k>>2]=c[z>>2];while(1){if((c[A>>2]|0)>=(c[B>>2]|0)){break}c[v>>2]=c[(c[l>>2]|0)+16>>2];while(1){if((c[v>>2]|0)==0){break}f=E;c[f>>2]=0;c[f+4>>2]=0;a[F>>0]=a[(c[k>>2]|0)+20>>0]|0;f=c[v>>2]|0;e=c[k>>2]|0;a:do{if(!((c[f>>2]&~c[e>>2]|0)!=0?1:(c[f+4>>2]&~c[e+4>>2]|0)!=0)){f=(c[v>>2]|0)+8|0;e=c[k>>2]|0;if(!((c[f>>2]&c[e>>2]|0)!=0?1:(c[f+4>>2]&c[e+4>>2]|0)!=0)){b[G>>1]=YB(b[(c[v>>2]|0)+18>>1]|0,(b[(c[v>>2]|0)+20>>1]|0)+(b[(c[k>>2]|0)+16>>1]|0)&65535)|0;b[G>>1]=YB(b[G>>1]|0,b[(c[k>>2]|0)+18>>1]|0)|0;b[H>>1]=(b[(c[k>>2]|0)+16>>1]|0)+(b[(c[v>>2]|0)+22>>1]|0);T=c[k>>2]|0;S=(c[v>>2]|0)+8|0;f=c[T+4>>2]|c[S+4>>2];e=I;c[e>>2]=c[T>>2]|c[S>>2];c[e+4>>2]=f;if((a[F>>0]|0)<0){a[F>>0]=ZB(c[l>>2]|0,c[(c[l>>2]|0)+8>>2]|0,c[k>>2]|0,b[(c[l>>2]|0)+34>>1]|0,c[t>>2]&65535,c[v>>2]|0,E)|0;if((a[F>>0]|0)>=0){if((a[F>>0]|0)<(c[L>>2]|0)){T=(((c[L>>2]|0)-(a[F>>0]|0)|0)*100|0)/(c[L>>2]|0)|0;b[M>>1]=((Kw(T,((T|0)<0)<<31>>31)|0)<<16>>16)-66;T=b[q>>1]|0;T=T+((_B(b[q>>1]|0)|0)<<16>>16)|0;b[N>>1]=T+(b[M>>1]|0)+16;if((b[(c[l>>2]|0)+34>>1]&1024|0)!=0){b[N>>1]=(b[N>>1]|0)+16}b[G>>1]=YB(b[G>>1]|0,b[N>>1]|0)|0}}}else{f=(c[k>>2]|0)+8|0;e=c[f+4>>2]|0;T=E;c[T>>2]=c[f>>2];c[T+4>>2]=e}c[J>>2]=0;c[K>>2]=c[w>>2];b:while(1){if((c[J>>2]|0)>=(c[C>>2]|0)){break}e=c[K>>2]|0;T=I;do{if((c[e>>2]|0)==(c[T>>2]|0)?(c[e+4>>2]|0)==(c[T+4>>2]|0):0){if(((a[(c[K>>2]|0)+20>>0]^a[F>>0])&80|0)==0){if((b[(c[K>>2]|0)+18>>1]|0)<=(b[G>>1]|0)){if((b[(c[K>>2]|0)+16>>1]|0)<=(b[H>>1]|0)){break b}}if((b[(c[K>>2]|0)+18>>1]|0)<(b[G>>1]|0)){break}if((b[(c[K>>2]|0)+16>>1]|0)>=(b[H>>1]|0)){break b}}}}while(0);c[J>>2]=(c[J>>2]|0)+1;c[K>>2]=(c[K>>2]|0)+32}if((c[J>>2]|0)>=(c[C>>2]|0)){if((c[C>>2]|0)>=(c[O>>2]|0)){if((b[G>>1]|0)>=(b[P>>1]|0)){break}}if((c[C>>2]|0)<(c[O>>2]|0)){T=c[C>>2]|0;c[C>>2]=T+1;c[J>>2]=T}else{c[J>>2]=c[Q>>2]}c[K>>2]=(c[w>>2]|0)+(c[J>>2]<<5)}else{if((b[(c[K>>2]|0)+18>>1]|0)<=(b[G>>1]|0)){if((b[(c[K>>2]|0)+16>>1]|0)<=(b[H>>1]|0)){break}}}S=c[k>>2]|0;T=(c[v>>2]|0)+8|0;e=c[S+4>>2]|c[T+4>>2];f=c[K>>2]|0;c[f>>2]=c[S>>2]|c[T>>2];c[f+4>>2]=e;f=E;e=c[f+4>>2]|0;T=(c[K>>2]|0)+8|0;c[T>>2]=c[f>>2];c[T+4>>2]=e;b[(c[K>>2]|0)+16>>1]=b[H>>1]|0;b[(c[K>>2]|0)+18>>1]=b[G>>1]|0;a[(c[K>>2]|0)+20>>0]=a[F>>0]|0;fL(c[(c[K>>2]|0)+24>>2]|0,c[(c[k>>2]|0)+24>>2]|0,c[t>>2]<<2|0)|0;c[(c[(c[K>>2]|0)+24>>2]|0)+(c[t>>2]<<2)>>2]=c[v>>2];if((c[C>>2]|0)>=(c[O>>2]|0)){c[Q>>2]=0;b[P>>1]=b[(c[w>>2]|0)+18>>1]|0;b[R>>1]=b[(c[w>>2]|0)+16>>1]|0;c[J>>2]=1;c[K>>2]=(c[w>>2]|0)+32;while(1){if((c[J>>2]|0)>=(c[O>>2]|0)){break a}do{if((b[(c[K>>2]|0)+18>>1]|0)>(b[P>>1]|0)){y=53}else{if((b[(c[K>>2]|0)+18>>1]|0)!=(b[P>>1]|0)){break}if((b[(c[K>>2]|0)+16>>1]|0)>(b[R>>1]|0)){y=53}}}while(0);if((y|0)==53){y=0;b[P>>1]=b[(c[K>>2]|0)+18>>1]|0;b[R>>1]=b[(c[K>>2]|0)+16>>1]|0;c[Q>>2]=c[J>>2]}c[J>>2]=(c[J>>2]|0)+1;c[K>>2]=(c[K>>2]|0)+32}}}}}while(0);c[v>>2]=c[(c[v>>2]|0)+48>>2]}c[A>>2]=(c[A>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+32}c[k>>2]=c[w>>2];c[w>>2]=c[z>>2];c[z>>2]=c[k>>2];c[B>>2]=c[C>>2];c[t>>2]=(c[t>>2]|0)+1}if((c[B>>2]|0)==0){bf(c[D>>2]|0,30488,x);cc(c[h>>2]|0,c[j>>2]|0);c[g>>2]=1;T=c[g>>2]|0;i=n;return T|0}c[k>>2]=c[z>>2];c[A>>2]=1;while(1){if((c[A>>2]|0)>=(c[B>>2]|0)){break}if((b[(c[k>>2]|0)+18>>1]|0)>(b[(c[z>>2]|0)+(c[A>>2]<<5)+18>>1]|0)){c[k>>2]=(c[z>>2]|0)+(c[A>>2]<<5)}c[A>>2]=(c[A>>2]|0)+1}c[t>>2]=0;while(1){w=c[l>>2]|0;if((c[t>>2]|0)>=(c[m>>2]|0)){break}c[u>>2]=w+736+((c[t>>2]|0)*72|0);T=c[(c[(c[k>>2]|0)+24>>2]|0)+(c[t>>2]<<2)>>2]|0;c[v>>2]=T;c[(c[u>>2]|0)+56>>2]=T;a[(c[u>>2]|0)+36>>0]=a[(c[v>>2]|0)+16>>0]|0;c[(c[u>>2]|0)+4>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+8+((d[(c[u>>2]|0)+36>>0]|0)*72|0)+40>>2];c[t>>2]=(c[t>>2]|0)+1}if((b[w+34>>1]&1024|0)!=0){if((b[(c[l>>2]|0)+34>>1]&512|0)==0){if((d[(c[l>>2]|0)+40>>0]|0)==0){if((b[q>>1]|0)!=0){c[s>>2]=(ZB(c[l>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[k>>2]|0,512,(c[m>>2]|0)-1&65535,c[(c[(c[k>>2]|0)+24>>2]|0)+((c[m>>2]|0)-1<<2)>>2]|0,r)|0)<<24>>24;if((c[s>>2]|0)==(c[c[(c[l>>2]|0)+12>>2]>>2]|0)){a[(c[l>>2]|0)+40>>0]=2}}}}}if((c[(c[l>>2]|0)+8>>2]|0)!=0){q=a[(c[k>>2]|0)+20>>0]|0;if((b[(c[l>>2]|0)+34>>1]&512|0)!=0){if((q<<24>>24|0)==(c[c[(c[l>>2]|0)+8>>2]>>2]|0)){a[(c[l>>2]|0)+40>>0]=2}}else{a[(c[l>>2]|0)+36>>0]=q;if((a[(c[l>>2]|0)+36>>0]|0)<0){a[(c[l>>2]|0)+36>>0]=0}f=(c[k>>2]|0)+8|0;e=c[f+4>>2]|0;T=(c[l>>2]|0)+24|0;c[T>>2]=c[f>>2];c[T+4>>2]=e}if((b[(c[l>>2]|0)+34>>1]&2048|0)!=0){if((a[(c[l>>2]|0)+36>>0]|0)==(c[c[(c[l>>2]|0)+8>>2]>>2]|0)){T=o;c[T>>2]=0;c[T+4>>2]=0;c[p>>2]=(ZB(c[l>>2]|0,c[(c[l>>2]|0)+8>>2]|0,c[k>>2]|0,0,(c[m>>2]|0)-1&65535,c[(c[(c[k>>2]|0)+24>>2]|0)+((c[m>>2]|0)-1<<2)>>2]|0,o)|0)<<24>>24;a[(c[l>>2]|0)+37>>0]=(c[p>>2]|0)==(c[c[(c[l>>2]|0)+8>>2]>>2]|0)}}}b[(c[l>>2]|0)+32>>1]=b[(c[k>>2]|0)+16>>1]|0;cc(c[h>>2]|0,c[j>>2]|0);c[g>>2]=0;T=c[g>>2]|0;i=n;return T|0}function DB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;h=d+16|0;g=d+12|0;f=d+8|0;e=d;c[h>>2]=a;c[g>>2]=b;a=e;c[a>>2]=0;c[a+4>>2]=0;if((c[g>>2]|0)==0){h=e;a=h;a=c[a>>2]|0;h=h+4|0;h=c[h>>2]|0;D=h;i=d;return a|0}c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[g>>2]>>2]|0)){break}j=WB(c[h>>2]|0,c[(c[(c[g>>2]|0)+4>>2]|0)+((c[f>>2]|0)*20|0)>>2]|0)|0;k=e;b=c[k+4>>2]|D;a=e;c[a>>2]=c[k>>2]|j;c[a+4>>2]=b;c[f>>2]=(c[f>>2]|0)+1}j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}function EB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+32|0;d=e;g=e+16|0;h=e+8|0;f=e+12|0;c[g>>2]=a;c[h>>2]=b;c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[g>>2]>>2]|0)){f=6;break}b=c[f>>2]|0;if((c[(c[g>>2]|0)+4+(c[f>>2]<<2)>>2]|0)==(c[h>>2]|0)){f=4;break}c[f>>2]=b+1}if((f|0)==4){a=bL(1,0,b|0)|0;b=d;c[b>>2]=a;c[b+4>>2]=D;b=d;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=e;return a|0}else if((f|0)==6){b=d;c[b>>2]=0;c[b+4>>2]=0;b=d;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=e;return a|0}return 0}function FB(d,e,f,g,h,j){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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,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=i;i=i+144|0;O=F;o=F+128|0;J=F+124|0;v=F+120|0;l=F+24|0;p=F+116|0;r=F+112|0;y=F+108|0;G=F+104|0;m=F+100|0;q=F+96|0;u=F+92|0;H=F+88|0;s=F+84|0;t=F+132|0;n=F+64|0;x=F+48|0;k=F+52|0;C=F+60|0;I=F+56|0;K=F+68|0;B=F+32|0;w=F+8|0;P=F+136|0;N=F+76|0;M=F+16|0;E=F+72|0;A=F+40|0;z=F+80|0;c[o>>2]=d;c[J>>2]=e;c[v>>2]=f;d=l;c[d>>2]=g;c[d+4>>2]=h;c[p>>2]=j;a[P>>0]=0;c[q>>2]=c[(c[o>>2]|0)+8>>2];c[u>>2]=Gz(c[o>>2]|0)|0;c[r>>2]=0;c[H>>2]=c[(c[v>>2]|0)+16>>2];c[G>>2]=(c[(c[J>>2]|0)+20>>2]|0)+((c[(c[J>>2]|0)+12>>2]|0)*48|0);c[I>>2]=c[(c[p>>2]|0)+56>>2];h=B;c[h>>2]=0;c[h+4>>2]=0;c[y>>2]=c[(c[J>>2]|0)+20>>2];while(1){if(!((c[y>>2]|0)>>>0<(c[G>>2]|0)>>>0)){break}h=l;if((TB(c[y>>2]|0,c[v>>2]|0,c[h>>2]|0,c[h+4>>2]|0)|0)!=0){c[N>>2]=c[(c[y>>2]|0)+12>>2];if((c[N>>2]|0)>=64){g=0;j=-2147483648}else{g=bL(1,0,c[N>>2]|0)|0;j=D}h=M;c[h>>2]=g;c[h+4>>2]=j;if((a[P>>0]|0)==0){h=c[(c[(c[H>>2]|0)+4>>2]|0)+((c[N>>2]|0)*24|0)>>2]|0;c[O>>2]=c[c[H>>2]>>2];c[O+4>>2]=h;zc(284,30440,O);a[P>>0]=1}d=B;h=M;if((c[d>>2]&c[h>>2]|0)==0?(c[d+4>>2]&c[h+4>>2]|0)==0:0){if((UB(c[c[o>>2]>>2]|0,c[I>>2]|0,(c[r>>2]|0)+1|0)|0)!=0){L=42;break}f=c[y>>2]|0;e=c[r>>2]|0;c[r>>2]=e+1;c[(c[(c[I>>2]|0)+44>>2]|0)+(e<<2)>>2]=f;e=M;f=B;d=c[f+4>>2]|c[e+4>>2];h=B;c[h>>2]=c[f>>2]|c[e>>2];c[h+4>>2]=d}}c[y>>2]=(c[y>>2]|0)+48}if((L|0)==42){i=F;return}f=c[r>>2]&65535;b[(c[I>>2]|0)+40>>1]=f;b[(c[I>>2]|0)+24>>1]=f;c[(c[I>>2]|0)+36>>2]=16961;f=(c[v>>2]|0)+56|0;e=B;d=c[f+4>>2]&(~c[e+4>>2]|-2147483648);h=w;c[h>>2]=c[f>>2]&~c[e>>2];c[h+4>>2]=d;if((b[(c[H>>2]|0)+38>>1]|0)>=63){L=63}else{L=b[(c[H>>2]|0)+38>>1]|0}c[k>>2]=L;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[k>>2]|0)){break}h=w;e=c[h>>2]|0;h=c[h+4>>2]|0;d=bL(1,0,c[x>>2]|0)|0;if((e&d|0)!=0|(h&D|0)!=0){c[r>>2]=(c[r>>2]|0)+1}c[x>>2]=(c[x>>2]|0)+1}if(0!=0?1:(c[(c[v>>2]|0)+60>>2]&-2147483648|0)!=0){c[r>>2]=(c[r>>2]|0)+((b[(c[H>>2]|0)+38>>1]|0)-64+1)}h=(c[I>>2]|0)+36|0;c[h>>2]=c[h>>2]|65;c[m>>2]=VB(c[c[o>>2]>>2]|0,(c[r>>2]|0)+1&65535,0,K)|0;if((c[m>>2]|0)==0){i=F;return}c[(c[I>>2]|0)+28>>2]=c[m>>2];c[c[m>>2]>>2]=30472;c[(c[m>>2]|0)+12>>2]=c[H>>2];c[n>>2]=0;h=B;c[h>>2]=0;c[h+4>>2]=0;c[y>>2]=c[(c[J>>2]|0)+20>>2];while(1){if(!((c[y>>2]|0)>>>0<(c[G>>2]|0)>>>0)){break}h=l;if((TB(c[y>>2]|0,c[v>>2]|0,c[h>>2]|0,c[h+4>>2]|0)|0)!=0){c[E>>2]=c[(c[y>>2]|0)+12>>2];if((c[E>>2]|0)>=64){J=0;I=-2147483648}else{J=bL(1,0,c[E>>2]|0)|0;I=D}d=A;c[d>>2]=J;c[d+4>>2]=I;d=B;h=A;if((c[d>>2]&c[h>>2]|0)==0?(c[d+4>>2]&c[h+4>>2]|0)==0:0){c[z>>2]=c[c[y>>2]>>2];e=A;f=B;d=c[f+4>>2]|c[e+4>>2];h=B;c[h>>2]=c[f>>2]|c[e>>2];c[h+4>>2]=d;b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]=c[(c[y>>2]|0)+12>>2];c[C>>2]=Iz(c[o>>2]|0,c[(c[z>>2]|0)+12>>2]|0,c[(c[z>>2]|0)+16>>2]|0)|0;if((c[C>>2]|0)!=0){I=c[c[C>>2]>>2]|0}else{I=3640}c[(c[(c[m>>2]|0)+32>>2]|0)+(c[n>>2]<<2)>>2]=I;c[n>>2]=(c[n>>2]|0)+1}}c[y>>2]=(c[y>>2]|0)+48}c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[k>>2]|0)){break}h=w;e=c[h>>2]|0;h=c[h+4>>2]|0;d=bL(1,0,c[x>>2]|0)|0;if((e&d|0)!=0|(h&D|0)!=0){b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]=c[x>>2];c[(c[(c[m>>2]|0)+32>>2]|0)+(c[n>>2]<<2)>>2]=3640;c[n>>2]=(c[n>>2]|0)+1}c[x>>2]=(c[x>>2]|0)+1}a:do{if(0!=0?1:(c[(c[v>>2]|0)+60>>2]&-2147483648|0)!=0){c[x>>2]=63;while(1){if((c[x>>2]|0)>=(b[(c[H>>2]|0)+38>>1]|0)){break a}b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]=c[x>>2];c[(c[(c[m>>2]|0)+32>>2]|0)+(c[n>>2]<<2)>>2]=3640;c[n>>2]=(c[n>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+1}}}while(0);b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]=-1;c[(c[(c[m>>2]|0)+32>>2]|0)+(c[n>>2]<<2)>>2]=3640;d=(c[o>>2]|0)+68|0;h=c[d>>2]|0;c[d>>2]=h+1;c[(c[p>>2]|0)+8>>2]=h;Qv(c[q>>2]|0,54,c[(c[p>>2]|0)+8>>2]|0,(c[r>>2]|0)+1|0)|0;ry(c[o>>2]|0,c[m>>2]|0);c[s>>2]=oy(c[q>>2]|0,105,c[(c[p>>2]|0)+4>>2]|0)|0;c[t>>2]=Wv(c[o>>2]|0)|0;Wy(c[o>>2]|0,c[m>>2]|0,c[(c[p>>2]|0)+4>>2]|0,c[t>>2]|0,0,0,0,0)|0;Qv(c[q>>2]|0,107,c[(c[p>>2]|0)+8>>2]|0,c[t>>2]|0)|0;gf(c[q>>2]|0,16);Qv(c[q>>2]|0,9,c[(c[p>>2]|0)+4>>2]|0,(c[s>>2]|0)+1|0)|0;gf(c[q>>2]|0,3);jw(c[q>>2]|0,c[s>>2]|0);Xv(c[o>>2]|0,c[t>>2]|0);jw(c[q>>2]|0,c[u>>2]|0);i=F;return}function GB(f,g,h,j,k,l){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;A=i;i=i+80|0;p=A;E=A+68|0;F=A+64|0;D=A+60|0;s=A+56|0;m=A+52|0;C=A+76|0;y=A+48|0;q=A+44|0;t=A+72|0;o=A+32|0;r=A+28|0;B=A+24|0;x=A+20|0;z=A+16|0;u=A+12|0;v=A+36|0;w=A+40|0;c[E>>2]=f;c[F>>2]=g;c[D>>2]=h;c[s>>2]=j;c[m>>2]=k;b[C>>1]=l;if((d[(c[E>>2]|0)+450>>0]|0|0)!=2){i=A;return}c[y>>2]=(c[F>>2]|0)+8+((d[(c[D>>2]|0)+36>>0]|0)*72|0);c[q>>2]=c[(c[E>>2]|0)+8>>2];c[t>>2]=c[c[E>>2]>>2];c[r>>2]=c[(c[E>>2]|0)+464>>2];c[x>>2]=c[(c[D>>2]|0)+56>>2];c[z>>2]=c[(c[x>>2]|0)+36>>2];if((c[z>>2]&8192|0)!=0){i=A;return}if((b[C>>1]&64|0)!=0){i=A;return}do{if((c[z>>2]&48|0)!=0){h=1}else{if((c[z>>2]&1024|0)==0){if((e[(c[x>>2]|0)+24>>1]|0|0)>0){h=1;break}}h=(b[C>>1]&3|0)!=0}}while(0);c[B>>2]=h&1;h=c[t>>2]|0;c[p>>2]=(c[B>>2]|0)!=0?30032:30040;c[o>>2]=cf(h,1768,p)|0;h=c[t>>2]|0;B=c[o>>2]|0;C=c[o>>2]|0;D=c[y>>2]|0;if((c[(c[y>>2]|0)+20>>2]|0)!=0){f=d[D+38>>0]|0;c[p>>2]=C;c[p+4>>2]=f;c[o>>2]=Sy(h,B,30048,p)|0}else{f=c[D+8>>2]|0;c[p>>2]=C;c[p+4>>2]=f;c[o>>2]=Sy(h,B,30064,p)|0}if((c[(c[y>>2]|0)+12>>2]|0)!=0){g=c[t>>2]|0;f=c[o>>2]|0;F=c[(c[y>>2]|0)+12>>2]|0;c[p>>2]=c[o>>2];c[p+4>>2]=F;c[o>>2]=Sy(g,f,30080,p)|0}if((c[z>>2]&1280|0)==0){if((c[(c[x>>2]|0)+28>>2]|0)!=0){c[v>>2]=c[(c[x>>2]|0)+28>>2];c[w>>2]=RB(c[t>>2]|0,c[x>>2]|0,c[(c[y>>2]|0)+16>>2]|0)|0;if((a[(c[(c[y>>2]|0)+16>>2]|0)+44>>0]&32|0)==0){n=18}else{if((a[(c[v>>2]|0)+55>>0]&3|0)==2){c[u>>2]=(c[w>>2]|0)!=0?30096:30128}else{n=18}}do{if((n|0)==18){if((c[z>>2]&16384|0)!=0){c[u>>2]=30144;break}if((c[z>>2]&64|0)!=0){c[u>>2]=30184;break}else{c[u>>2]=30216;break}}}while(0);F=c[t>>2]|0;g=c[o>>2]|0;f=c[u>>2]|0;k=c[c[v>>2]>>2]|0;j=c[w>>2]|0;c[p>>2]=c[o>>2];c[p+4>>2]=k;c[p+8>>2]=j;c[o>>2]=Sy(F,g,f,p)|0;cc(c[t>>2]|0,c[w>>2]|0)}else{n=24}}else{n=24}do{if((n|0)==24){if((c[z>>2]&256|0)!=0){if((c[z>>2]&15|0)!=0){g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Sy(g,f,30240,p)|0;if((c[z>>2]&5|0)!=0){g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Sy(g,f,30272,p)|0;break}if((c[z>>2]&48|0)==48){g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Sy(g,f,30288,p)|0;break}if((c[z>>2]&32|0)!=0){g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Sy(g,f,30320,p)|0;break}if((c[z>>2]&16|0)==0){break}g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Sy(g,f,30336,p)|0;break}}if((c[z>>2]&1024|0)!=0){g=c[t>>2]|0;f=c[o>>2]|0;j=c[(c[x>>2]|0)+24>>2]|0;F=c[(c[x>>2]|0)+32>>2]|0;c[p>>2]=c[o>>2];c[p+4>>2]=j;c[p+8>>2]=F;c[o>>2]=Sy(g,f,30352,p)|0}}}while(0);g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Sy(g,f,1768,p)|0;Sv(c[q>>2]|0,157,c[r>>2]|0,c[s>>2]|0,c[m>>2]|0,c[o>>2]|0,-1)|0;i=A;return}function HB(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var 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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0;q=i;i=i+368|0;p=q+8|0;y=q+276|0;P=q+272|0;v=q;o=q+268|0;B=q+264|0;w=q+260|0;wa=q+256|0;za=q+252|0;C=q+248|0;t=q+244|0;E=q+240|0;m=q+216|0;n=q+204|0;s=q+208|0;r=q+212|0;A=q+220|0;Da=q+224|0;Ia=q+228|0;x=q+232|0;xa=q+236|0;Va=q+284|0;Wa=q+288|0;Ga=q+292|0;Ea=q+296|0;Fa=q+300|0;Ha=q+304|0;Na=q+308|0;Oa=q+312|0;Ra=q+316|0;Ma=q+320|0;Pa=q+324|0;Sa=q+328|0;Ua=q+332|0;Ta=q+336|0;Qa=q+340|0;ma=q+348|0;na=q+344|0;va=q+200|0;la=q+196|0;sa=q+192|0;Aa=q+188|0;ta=q+92|0;Ca=q+96|0;pa=q+48|0;ga=q+280|0;Ka=q+84|0;Ba=q+80|0;oa=q+76|0;ka=q+352|0;qa=q+351|0;ja=q+350|0;La=q+72|0;Ja=q+353|0;ra=q+68|0;ua=q+64|0;ya=q+60|0;V=q+100|0;ea=q+32|0;U=q+28|0;S=q+16|0;ca=q+20|0;aa=q+24|0;_=q+52|0;R=q+36|0;ba=q+40|0;Q=q+44|0;Y=q+56|0;X=q+184|0;F=q+104|0;fa=q+108|0;ha=q+112|0;$=q+116|0;Z=q+120|0;W=q+124|0;T=q+128|0;O=q+132|0;L=q+136|0;M=q+140|0;N=q+144|0;K=q+148|0;J=q+152|0;ia=q+156|0;H=q+160|0;G=q+164|0;da=q+168|0;z=q+172|0;u=q+176|0;k=q+180|0;l=q+88|0;c[y>>2]=f;c[P>>2]=g;g=v;c[g>>2]=h;c[g+4>>2]=j;c[xa>>2]=0;c[Va>>2]=0;c[s>>2]=c[c[y>>2]>>2];c[A>>2]=c[(c[s>>2]|0)+8>>2];c[m>>2]=(c[y>>2]|0)+328;c[r>>2]=c[c[s>>2]>>2];c[t>>2]=(c[y>>2]|0)+736+((c[P>>2]|0)*72|0);c[E>>2]=c[(c[t>>2]|0)+56>>2];c[Da>>2]=(c[(c[y>>2]|0)+4>>2]|0)+8+((d[(c[t>>2]|0)+36>>0]|0)*72|0);c[w>>2]=c[(c[Da>>2]|0)+40>>2];g=v;j=c[g>>2]|0;g=c[g+4>>2]|0;h=EB((c[y>>2]|0)+68|0,c[w>>2]|0)|0;f=(c[t>>2]|0)+64|0;c[f>>2]=j&~h;c[f+4>>2]=g&~D;f=(c[y>>2]|0)+24|0;f=eL(c[f>>2]|0,c[f+4>>2]|0,c[P>>2]|0)|0;c[C>>2]=f&1;if((c[(c[E>>2]|0)+36>>2]&64|0)!=0){j=(b[(c[y>>2]|0)+34>>1]&32|0)==0}else{j=0}c[za>>2]=j&1;f=cz(c[A>>2]|0)|0;c[(c[t>>2]|0)+16>>2]=f;c[(c[t>>2]|0)+12>>2]=f;c[Ia>>2]=f;f=cz(c[A>>2]|0)|0;c[(c[t>>2]|0)+24>>2]=f;c[x>>2]=f;if((d[(c[t>>2]|0)+36>>0]|0)>0){if((a[(c[Da>>2]|0)+36>>0]&8|0)!=0){g=(c[s>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[c[t>>2]>>2]=f;Qv(c[A>>2]|0,25,0,c[c[t>>2]>>2]|0)|0}}do{if(((d[(c[Da>>2]|0)+37>>0]|0)>>>2&1|0)!=0){c[Wa>>2]=c[(c[Da>>2]|0)+28>>2];Tv(c[A>>2]|0,20,c[Wa>>2]|0,0,c[(c[Da>>2]|0)+24>>2]|0)|0;f=Qv(c[A>>2]|0,22,c[Wa>>2]|0,c[Ia>>2]|0)|0;c[(c[t>>2]|0)+44>>2]=f;a[(c[t>>2]|0)+37>>0]=16}else{Wa=c[E>>2]|0;if((c[(c[E>>2]|0)+36>>2]&1024|0)!=0){c[Fa>>2]=e[Wa+40>>1]|0;dz(c[s>>2]|0);c[Ga>>2]=fz(c[s>>2]|0,(c[Fa>>2]|0)+2|0)|0;c[Ea>>2]=c[(c[t>>2]|0)+12>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[Fa>>2]|0)){break}c[Ha>>2]=(c[Ga>>2]|0)+(c[o>>2]|0)+2;c[n>>2]=c[(c[(c[E>>2]|0)+44>>2]|0)+(c[o>>2]<<2)>>2];do{if((c[n>>2]|0)!=0){B=c[s>>2]|0;F=c[n>>2]|0;if((b[(c[n>>2]|0)+18>>1]&1|0)!=0){IB(B,F,c[t>>2]|0,c[o>>2]|0,c[C>>2]|0,c[Ha>>2]|0)|0;c[Ea>>2]=c[(c[t>>2]|0)+16>>2];break}else{vz(B,c[(c[F>>2]|0)+16>>2]|0,c[Ha>>2]|0);break}}}while(0);c[o>>2]=(c[o>>2]|0)+1}Qv(c[A>>2]|0,25,c[(c[E>>2]|0)+24>>2]|0,c[Ga>>2]|0)|0;Qv(c[A>>2]|0,25,c[Fa>>2]|0,(c[Ga>>2]|0)+1|0)|0;Sv(c[A>>2]|0,14,c[w>>2]|0,c[Ea>>2]|0,c[Ga>>2]|0,c[(c[E>>2]|0)+32>>2]|0,(d[(c[E>>2]|0)+28>>0]|0)!=0?-11:-2)|0;a[(c[E>>2]|0)+28>>0]=0;c[o>>2]=0;while(1){if(!((c[o>>2]|0)<16?(c[o>>2]|0)<(c[Fa>>2]|0):0)){break}if((e[(c[E>>2]|0)+30>>1]>>c[o>>2]&1|0)!=0){JB(c[t>>2]|0,c[(c[(c[E>>2]|0)+44>>2]|0)+(c[o>>2]<<2)>>2]|0)}c[o>>2]=(c[o>>2]|0)+1}a[(c[t>>2]|0)+37>>0]=-105;c[(c[t>>2]|0)+40>>2]=c[w>>2];f=sy(c[A>>2]|0)|0;c[(c[t>>2]|0)+44>>2]=f;iz(c[s>>2]|0,c[Ga>>2]|0,(c[Fa>>2]|0)+2|0);az(c[s>>2]|0);break}if((c[Wa+36>>2]&256|0)!=0){if((c[(c[E>>2]|0)+36>>2]&5|0)!=0){c[n>>2]=c[c[(c[E>>2]|0)+44>>2]>>2];g=(c[s>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[Va>>2]=f;c[xa>>2]=IB(c[s>>2]|0,c[n>>2]|0,c[t>>2]|0,0,c[C>>2]|0,c[Va>>2]|0)|0;if((c[xa>>2]|0)!=(c[Va>>2]|0)){Xv(c[s>>2]|0,c[Va>>2]|0)}c[wa>>2]=c[(c[t>>2]|0)+16>>2];Qv(c[A>>2]|0,38,c[xa>>2]|0,c[wa>>2]|0)|0;Tv(c[A>>2]|0,67,c[w>>2]|0,c[wa>>2]|0,c[xa>>2]|0)|0;Az(c[s>>2]|0,c[xa>>2]|0,1);Qz(c[s>>2]|0,c[w>>2]|0,-1,c[xa>>2]|0);a[(c[t>>2]|0)+37>>0]=-100;break}}if((c[(c[E>>2]|0)+36>>2]&256|0)!=0){if((c[(c[E>>2]|0)+36>>2]&2|0)!=0){c[Na>>2]=156;c[Ra>>2]=0;c[o>>2]=0;c[Pa>>2]=0;c[Ma>>2]=0;if((c[(c[E>>2]|0)+36>>2]&32|0)!=0){f=c[o>>2]|0;c[o>>2]=f+1;c[Ma>>2]=c[(c[(c[E>>2]|0)+44>>2]|0)+(f<<2)>>2]}if((c[(c[E>>2]|0)+36>>2]&16|0)!=0){f=c[o>>2]|0;c[o>>2]=f+1;c[Pa>>2]=c[(c[(c[E>>2]|0)+44>>2]|0)+(f<<2)>>2]}if((c[C>>2]|0)!=0){c[n>>2]=c[Ma>>2];c[Ma>>2]=c[Pa>>2];c[Pa>>2]=c[n>>2]}if((c[Ma>>2]|0)!=0){c[Sa>>2]=c[c[Ma>>2]>>2];c[Ua>>2]=oz(c[s>>2]|0,c[(c[Sa>>2]|0)+16>>2]|0,Ta)|0;Tv(c[A>>2]|0,d[29992+((d[c[Sa>>2]>>0]|0)-80)>>0]|0,c[w>>2]|0,c[Ia>>2]|0,c[Ua>>2]|0)|0;Az(c[s>>2]|0,c[Ua>>2]|0,1);Xv(c[s>>2]|0,c[Ta>>2]|0);JB(c[t>>2]|0,c[Ma>>2]|0)}else{Qv(c[A>>2]|0,(c[C>>2]|0)!=0?102:105,c[w>>2]|0,c[Ia>>2]|0)|0}if((c[Pa>>2]|0)!=0){c[Qa>>2]=c[c[Pa>>2]>>2];g=(c[s>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[Ra>>2]=f;vz(c[s>>2]|0,c[(c[Qa>>2]|0)+16>>2]|0,c[Ra>>2]|0);if((d[c[Qa>>2]>>0]|0)==82){I=41}else{if((d[c[Qa>>2]>>0]|0)==80){I=41}else{c[Na>>2]=(c[C>>2]|0)!=0?82:80}}if((I|0)==41){c[Na>>2]=(c[C>>2]|0)!=0?81:83}JB(c[t>>2]|0,c[Pa>>2]|0)}c[Oa>>2]=sy(c[A>>2]|0)|0;a[(c[t>>2]|0)+37>>0]=(c[C>>2]|0)!=0?8:9;c[(c[t>>2]|0)+40>>2]=c[w>>2];c[(c[t>>2]|0)+44>>2]=c[Oa>>2];if((c[Na>>2]|0)==156){break}g=(c[s>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[xa>>2]=f;Qv(c[A>>2]|0,100,c[w>>2]|0,c[xa>>2]|0)|0;Qz(c[s>>2]|0,c[w>>2]|0,-1,c[xa>>2]|0);Tv(c[A>>2]|0,c[Na>>2]|0,c[Ra>>2]|0,c[Ia>>2]|0,c[xa>>2]|0)|0;gf(c[A>>2]|0,107);break}}Ea=c[E>>2]|0;if((c[(c[E>>2]|0)+36>>2]&512|0)!=0){b[ma>>1]=b[Ea+24>>1]|0;c[va>>2]=0;c[la>>2]=0;c[Ka>>2]=0;a[ka>>0]=0;a[qa>>0]=0;a[ja>>0]=0;c[pa>>2]=c[(c[E>>2]|0)+28>>2];c[ga>>2]=c[(c[t>>2]|0)+8>>2];if((b[(c[y>>2]|0)+34>>1]&1|0)!=0){if((a[(c[y>>2]|0)+36>>0]|0)>0){if((e[(c[pa>>2]|0)+50>>1]|0)>(e[ma>>1]|0)){a[qa>>0]=1;c[Ka>>2]=1}}}c[o>>2]=e[ma>>1]|0;if((c[(c[E>>2]|0)+36>>2]&32|0)!=0){f=c[o>>2]|0;c[o>>2]=f+1;c[va>>2]=c[(c[(c[E>>2]|0)+44>>2]|0)+(f<<2)>>2];c[Ka>>2]=1}if((c[(c[E>>2]|0)+36>>2]&16|0)!=0){f=c[o>>2]|0;c[o>>2]=f+1;c[la>>2]=c[(c[(c[E>>2]|0)+44>>2]|0)+(f<<2)>>2];c[Ka>>2]=1;if((c[va>>2]|0)==0){f=b[(c[(c[pa>>2]|0)+4>>2]|0)+(e[ma>>1]<<1)>>1]|0;c[o>>2]=f;if((f|0)>=0){if((d[(c[(c[(c[pa>>2]|0)+12>>2]|0)+4>>2]|0)+((c[o>>2]|0)*24|0)+20>>0]|0)==0){a[qa>>0]=1}}}}c[na>>2]=KB(c[s>>2]|0,c[t>>2]|0,c[C>>2]|0,c[Ka>>2]|0,oa)|0;if((c[oa>>2]|0)!=0){a[ka>>0]=a[(c[oa>>2]|0)+(e[ma>>1]|0)>>0]|0}c[wa>>2]=c[(c[t>>2]|0)+16>>2];if((e[ma>>1]|0)<(e[(c[pa>>2]|0)+50>>1]|0)){if((c[C>>2]|0)==((d[(c[(c[pa>>2]|0)+28>>2]|0)+(e[ma>>1]|0)>>0]|0)==0|0)){I=64}else{I=62}}else{I=62}if((I|0)==62){if((c[C>>2]|0)!=0){if((e[(c[pa>>2]|0)+50>>1]|0)==(e[ma>>1]|0)){I=64}}}if((I|0)==64){c[La>>2]=c[la>>2];c[la>>2]=c[va>>2];c[va>>2]=c[La>>2];a[Ja>>0]=a[qa>>0]|0;a[qa>>0]=a[ja>>0]|0;a[ja>>0]=a[Ja>>0]|0}if((c[va>>2]|0)!=0){F=(b[(c[va>>2]|0)+18>>1]&40|0)!=0}else{F=1}c[sa>>2]=F&1;if((c[la>>2]|0)!=0){F=(b[(c[la>>2]|0)+18>>1]&40|0)!=0}else{F=1}c[Aa>>2]=F&1;if((c[va>>2]|0)!=0){F=1}else{F=(e[ma>>1]|0)>0}c[ta>>2]=F&1;c[Ca>>2]=e[ma>>1]|0;if((c[va>>2]|0)!=0){c[ra>>2]=c[(c[c[va>>2]>>2]|0)+16>>2];vz(c[s>>2]|0,c[ra>>2]|0,(c[na>>2]|0)+(e[ma>>1]|0)|0);do{if((a[(c[va>>2]|0)+20>>0]&0|0)==0){if((LB(c[ra>>2]|0)|0)==0){break}Qv(c[A>>2]|0,76,(c[na>>2]|0)+(e[ma>>1]|0)|0,c[wa>>2]|0)|0}}while(0);do{if((c[oa>>2]|0)!=0){if(((Rz(c[ra>>2]|0,a[(c[oa>>2]|0)+(e[ma>>1]|0)>>0]|0)|0)<<24>>24|0)==98){a[(c[oa>>2]|0)+(e[ma>>1]|0)>>0]=98}if((MB(c[ra>>2]|0,a[(c[oa>>2]|0)+(e[ma>>1]|0)>>0]|0)|0)==0){break}a[(c[oa>>2]|0)+(e[ma>>1]|0)>>0]=98}}while(0);c[Ca>>2]=(c[Ca>>2]|0)+1}else{if((a[qa>>0]|0)!=0){Qv(c[A>>2]|0,28,0,(c[na>>2]|0)+(e[ma>>1]|0)|0)|0;c[Ca>>2]=(c[Ca>>2]|0)+1;c[sa>>2]=0;c[ta>>2]=1}}NB(c[s>>2]|0,c[na>>2]|0,(c[Ca>>2]|0)-(d[qa>>0]|0)|0,c[oa>>2]|0);c[Ba>>2]=d[3e4+((c[ta>>2]<<2)+(c[sa>>2]<<1)+(c[C>>2]|0))>>0]|0;ff(c[A>>2]|0,c[Ba>>2]|0,c[ga>>2]|0,c[wa>>2]|0,c[na>>2]|0,c[Ca>>2]|0)|0;c[Ca>>2]=e[ma>>1]|0;do{if((c[la>>2]|0)!=0){c[ua>>2]=c[(c[c[la>>2]>>2]|0)+16>>2];jz(c[s>>2]|0,(c[na>>2]|0)+(e[ma>>1]|0)|0,1);vz(c[s>>2]|0,c[ua>>2]|0,(c[na>>2]|0)+(e[ma>>1]|0)|0);do{if((a[(c[la>>2]|0)+20>>0]&0|0)==0){if((LB(c[ua>>2]|0)|0)==0){break}Qv(c[A>>2]|0,76,(c[na>>2]|0)+(e[ma>>1]|0)|0,c[wa>>2]|0)|0}}while(0);do{if(((Rz(c[ua>>2]|0,a[ka>>0]|0)|0)<<24>>24|0)!=98){if((MB(c[ua>>2]|0,a[ka>>0]|0)|0)!=0){break}NB(c[s>>2]|0,(c[na>>2]|0)+(e[ma>>1]|0)|0,1,ka)}}while(0);c[Ca>>2]=(c[Ca>>2]|0)+1}else{if((a[ja>>0]|0)==0){break}Qv(c[A>>2]|0,28,0,(c[na>>2]|0)+(e[ma>>1]|0)|0)|0;c[Aa>>2]=0;c[Ca>>2]=(c[Ca>>2]|0)+1}}while(0);cc(c[r>>2]|0,c[oa>>2]|0);f=sy(c[A>>2]|0)|0;c[(c[t>>2]|0)+44>>2]=f;if((c[Ca>>2]|0)!=0){c[Ba>>2]=d[30008+((c[C>>2]<<1)+(c[Aa>>2]|0))>>0]|0;ff(c[A>>2]|0,c[Ba>>2]|0,c[ga>>2]|0,c[wa>>2]|0,c[na>>2]|0,c[Ca>>2]|0)|0}JB(c[t>>2]|0,c[va>>2]|0);JB(c[t>>2]|0,c[la>>2]|0);do{if((c[za>>2]|0)==0){if((a[(c[(c[pa>>2]|0)+12>>2]|0)+44>>0]&32|0)==0){g=(c[s>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[xa>>2]=f;Qv(c[A>>2]|0,109,c[ga>>2]|0,c[xa>>2]|0)|0;Qz(c[s>>2]|0,c[w>>2]|0,-1,c[xa>>2]|0);Qv(c[A>>2]|0,63,c[w>>2]|0,c[xa>>2]|0)|0;break}if((c[w>>2]|0)==(c[ga>>2]|0)){break}c[ya>>2]=Dy(c[(c[pa>>2]|0)+12>>2]|0)|0;c[xa>>2]=fz(c[s>>2]|0,e[(c[ya>>2]|0)+50>>1]|0)|0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(e[(c[ya>>2]|0)+50>>1]|0)){break}c[B>>2]=(kz(c[pa>>2]|0,b[(c[(c[ya>>2]|0)+4>>2]|0)+(c[o>>2]<<1)>>1]|0)|0)<<16>>16;Tv(c[A>>2]|0,46,c[ga>>2]|0,c[B>>2]|0,(c[xa>>2]|0)+(c[o>>2]|0)|0)|0;c[o>>2]=(c[o>>2]|0)+1}ff(c[A>>2]|0,65,c[w>>2]|0,c[x>>2]|0,c[xa>>2]|0,e[(c[ya>>2]|0)+50>>1]|0)|0}}while(0);do{if((c[(c[E>>2]|0)+36>>2]&4096|0)!=0){a[(c[t>>2]|0)+37>>0]=-100}else{B=(c[t>>2]|0)+37|0;if((c[C>>2]|0)!=0){a[B>>0]=8;break}else{a[B>>0]=9;break}}}while(0);c[(c[t>>2]|0)+40>>2]=c[ga>>2];a[(c[t>>2]|0)+38>>0]=(c[(c[E>>2]|0)+36>>2]&65536|0)!=0?1:0;if((c[(c[E>>2]|0)+36>>2]&15|0)!=0){break}a[(c[t>>2]|0)+39>>0]=1;break}if((c[Ea+36>>2]&8192|0)==0){if(((d[(c[Da>>2]|0)+37>>0]|0)>>>3&1|0)!=0){a[(c[t>>2]|0)+37>>0]=-100;break}else{a[(c[t>>2]|0)+37>>0]=a[30016+(c[C>>2]|0)>>0]|0;c[(c[t>>2]|0)+40>>2]=c[w>>2];f=1+(Qv(c[A>>2]|0,d[30024+(c[C>>2]|0)>>0]|0,c[w>>2]|0,c[Ia>>2]|0)|0)|0;c[(c[t>>2]|0)+44>>2]=f;a[(c[t>>2]|0)+39>>0]=1;break}}c[U>>2]=0;C=(c[s>>2]|0)+68|0;f=c[C>>2]|0;c[C>>2]=f+1;c[S>>2]=f;f=(c[s>>2]|0)+72|0;C=(c[f>>2]|0)+1|0;c[f>>2]=C;c[ca>>2]=C;c[aa>>2]=0;c[_>>2]=0;c[R>>2]=cz(c[A>>2]|0)|0;c[Q>>2]=0;c[X>>2]=0;c[F>>2]=c[(c[Da>>2]|0)+16>>2];c[n>>2]=c[c[(c[E>>2]|0)+44>>2]>>2];c[V>>2]=c[(c[n>>2]|0)+12>>2];a[(c[t>>2]|0)+37>>0]=18;c[(c[t>>2]|0)+40>>2]=c[ca>>2];C=c[y>>2]|0;a:do{if((d[(c[y>>2]|0)+41>>0]|0)>1){c[fa>>2]=(d[C+41>>0]|0)-(c[P>>2]|0)-1;c[ea>>2]=$e(c[r>>2]|0,80+((c[fa>>2]|0)*72|0)|0)|0;if((c[ea>>2]|0)==0){h=v;f=c[h+4>>2]|0;g=p;c[g>>2]=c[h>>2];c[g+4>>2]=f;g=p;f=g;f=c[f>>2]|0;g=g+4|0;g=c[g>>2]|0;D=g;i=q;return f|0}c[(c[ea>>2]|0)+4>>2]=(c[fa>>2]|0)+1&255;c[c[ea>>2]>>2]=c[(c[ea>>2]|0)+4>>2];C=(c[ea>>2]|0)+8|0;ga=(c[Da>>2]|0)+0|0;E=C+72|0;do{c[C>>2]=c[ga>>2];C=C+4|0;ga=ga+4|0}while((C|0)<(E|0));c[ha>>2]=(c[(c[y>>2]|0)+4>>2]|0)+8;c[B>>2]=1;while(1){if((c[B>>2]|0)>(c[fa>>2]|0)){break a}C=(c[ea>>2]|0)+8+((c[B>>2]|0)*72|0)+0|0;ga=(c[ha>>2]|0)+((d[(c[t>>2]|0)+((c[B>>2]|0)*72|0)+36>>0]|0)*72|0)+0|0;E=C+72|0;do{c[C>>2]=c[ga>>2];C=C+4|0;ga=ga+4|0}while((C|0)<(E|0));c[B>>2]=(c[B>>2]|0)+1}}else{c[ea>>2]=c[C+4>>2]}}while(0);if((b[(c[y>>2]|0)+34>>1]&8|0)==0){if((a[(c[F>>2]|0)+44>>0]&32|0)==0){g=(c[s>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[aa>>2]=f;Qv(c[A>>2]|0,28,0,c[aa>>2]|0)|0}else{c[$>>2]=Dy(c[F>>2]|0)|0;g=(c[s>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[aa>>2]=f;Qv(c[A>>2]|0,55,c[aa>>2]|0,e[(c[$>>2]|0)+50>>1]|0)|0;ry(c[s>>2]|0,c[$>>2]|0)}g=(c[s>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[_>>2]=f}c[ba>>2]=Qv(c[A>>2]|0,25,0,c[ca>>2]|0)|0;if((c[(c[m>>2]|0)+12>>2]|0)>1){c[Z>>2]=0;while(1){if((c[Z>>2]|0)>=(c[(c[m>>2]|0)+12>>2]|0)){break}c[W>>2]=c[(c[(c[m>>2]|0)+20>>2]|0)+((c[Z>>2]|0)*48|0)>>2];if(((c[(c[m>>2]|0)+20>>2]|0)+((c[Z>>2]|0)*48|0)|0)!=(c[n>>2]|0)){if((c[(c[W>>2]|0)+4>>2]&1|0)==0){if((a[(c[(c[m>>2]|0)+20>>2]|0)+((c[Z>>2]|0)*48|0)+20>>0]&18|0)==0){if((b[(c[(c[m>>2]|0)+20>>2]|0)+((c[Z>>2]|0)*48|0)+18>>1]&4095|0)!=0){c[W>>2]=hx(c[r>>2]|0,c[W>>2]|0,0)|0;c[X>>2]=Ux(c[r>>2]|0,c[X>>2]|0,c[W>>2]|0)|0}}}}c[Z>>2]=(c[Z>>2]|0)+1}if((c[X>>2]|0)!=0){c[X>>2]=Bu(c[s>>2]|0,72,0,c[X>>2]|0,0)|0}}c[Y>>2]=0;while(1){if((c[Y>>2]|0)>=(c[(c[V>>2]|0)+12>>2]|0)){break}c[T>>2]=(c[(c[V>>2]|0)+20>>2]|0)+((c[Y>>2]|0)*48|0);if((c[(c[T>>2]|0)+8>>2]|0)==(c[w>>2]|0)){I=138}else{if((b[(c[T>>2]|0)+18>>1]&512|0)!=0){I=138}}if((I|0)==138){I=0;c[L>>2]=c[c[T>>2]>>2];c[M>>2]=0;if((c[X>>2]|0)!=0){if((c[(c[L>>2]|0)+4>>2]&1|0)==0){c[(c[X>>2]|0)+12>>2]=c[L>>2];c[L>>2]=c[X>>2]}}c[O>>2]=lB(c[s>>2]|0,c[ea>>2]|0,c[L>>2]|0,0,0,240,c[S>>2]|0)|0;if((c[O>>2]|0)!=0){GB(c[s>>2]|0,c[ea>>2]|0,(c[O>>2]|0)+736|0,c[P>>2]|0,d[(c[t>>2]|0)+36>>0]|0,0);do{if((b[(c[y>>2]|0)+34>>1]&8|0)==0){c[J>>2]=(c[Y>>2]|0)==((c[(c[V>>2]|0)+12>>2]|0)-1|0)?-1:c[Y>>2]|0;if((a[(c[F>>2]|0)+44>>0]&32|0)==0){c[K>>2]=xz(c[s>>2]|0,c[F>>2]|0,-1,c[w>>2]|0,c[_>>2]|0,0)|0;c[M>>2]=ff(c[A>>2]|0,127,c[aa>>2]|0,0,c[K>>2]|0,c[J>>2]|0)|0;break}c[ia>>2]=Dy(c[F>>2]|0)|0;c[H>>2]=e[(c[ia>>2]|0)+50>>1]|0;c[K>>2]=fz(c[s>>2]|0,c[H>>2]|0)|0;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[H>>2]|0)){break}c[da>>2]=b[(c[(c[ia>>2]|0)+4>>2]|0)+(c[G>>2]<<1)>>1]|0;xz(c[s>>2]|0,c[F>>2]|0,c[da>>2]|0,c[w>>2]|0,(c[K>>2]|0)+(c[G>>2]|0)|0,0)|0;c[G>>2]=(c[G>>2]|0)+1}if((c[J>>2]|0)!=0){c[M>>2]=ff(c[A>>2]|0,66,c[aa>>2]|0,0,c[K>>2]|0,c[H>>2]|0)|0}do{if((c[J>>2]|0)>=0){Tv(c[A>>2]|0,48,c[K>>2]|0,c[H>>2]|0,c[_>>2]|0)|0;Tv(c[A>>2]|0,107,c[aa>>2]|0,c[_>>2]|0,0)|0;if((c[J>>2]|0)==0){break}gf(c[A>>2]|0,16)}}while(0);iz(c[s>>2]|0,c[K>>2]|0,c[H>>2]|0)}}while(0);Qv(c[A>>2]|0,17,c[ca>>2]|0,c[R>>2]|0)|0;if((c[M>>2]|0)!=0){jw(c[A>>2]|0,c[M>>2]|0)}if((a[(c[O>>2]|0)+39>>0]|0)!=0){c[Q>>2]=1}c[N>>2]=c[(c[O>>2]|0)+792>>2];do{if((c[(c[N>>2]|0)+36>>2]&512|0)!=0){if((c[Y>>2]|0)!=0){if((c[(c[N>>2]|0)+28>>2]|0)!=(c[U>>2]|0)){I=164;break}}if((a[(c[F>>2]|0)+44>>0]&32|0)!=0){if((a[(c[(c[N>>2]|0)+28>>2]|0)+55>>0]&3|0)==2){I=164;break}}c[U>>2]=c[(c[N>>2]|0)+28>>2]}else{I=164}}while(0);if((I|0)==164){I=0;c[U>>2]=0}mB(c[O>>2]|0)}}c[Y>>2]=(c[Y>>2]|0)+1}c[(c[t>>2]|0)+48>>2]=c[U>>2];if((c[U>>2]|0)!=0){c[(c[t>>2]|0)+8>>2]=c[S>>2]}if((c[X>>2]|0)!=0){c[(c[X>>2]|0)+12>>2]=0;gu(c[r>>2]|0,c[X>>2]|0)}g=c[A>>2]|0;f=c[ba>>2]|0;kf(g,f,sy(c[A>>2]|0)|0);Qv(c[A>>2]|0,16,0,c[(c[t>>2]|0)+12>>2]|0)|0;$y(c[A>>2]|0,c[R>>2]|0);if((d[(c[y>>2]|0)+41>>0]|0)>1){cc(c[r>>2]|0,c[ea>>2]|0)}if((c[Q>>2]|0)==0){JB(c[t>>2]|0,c[n>>2]|0)}}}while(0);c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>>2]=c[(c[m>>2]|0)+12>>2];while(1){if((c[o>>2]|0)<=0){break}do{if((a[(c[n>>2]|0)+20>>0]&6|0)==0){g=(c[n>>2]|0)+40|0;f=(c[t>>2]|0)+64|0;if((c[g>>2]&c[f>>2]|0)!=0?1:(c[g+4>>2]&c[f+4>>2]|0)!=0){a[(c[y>>2]|0)+39>>0]=1;break}c[z>>2]=c[c[n>>2]>>2];if((c[c[t>>2]>>2]|0)!=0){if((c[(c[z>>2]|0)+4>>2]&1|0)==0){break}}ez(c[s>>2]|0,c[z>>2]|0,c[x>>2]|0,8);f=(c[n>>2]|0)+20|0;a[f>>0]=d[f>>0]|4}}while(0);c[o>>2]=(c[o>>2]|0)+ -1;c[n>>2]=(c[n>>2]|0)+48}c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>>2]=c[(c[m>>2]|0)+12>>2];while(1){if((c[o>>2]|0)<=0){break}if((a[(c[n>>2]|0)+20>>0]&6|0)==0){if((e[(c[n>>2]|0)+18>>1]|0)==1026){if((c[(c[n>>2]|0)+8>>2]|0)==(c[w>>2]|0)){if((c[c[t>>2]>>2]|0)==0){c[u>>2]=c[c[n>>2]>>2];f=v;c[l>>2]=OB(c[m>>2]|0,c[w>>2]|0,c[(c[n>>2]|0)+12>>2]|0,c[f>>2]|0,c[f+4>>2]|0,3,0)|0;if((c[l>>2]|0)!=0){if((a[(c[l>>2]|0)+20>>0]&4|0)==0){c[k>>2]=$e(c[r>>2]|0,48)|0;if((c[k>>2]|0)!=0){C=(c[k>>2]|0)+0|0;ga=(c[c[l>>2]>>2]|0)+0|0;E=C+48|0;do{c[C>>2]=c[ga>>2];C=C+4|0;ga=ga+4|0}while((C|0)<(E|0));c[(c[k>>2]|0)+12>>2]=c[(c[u>>2]|0)+12>>2];ez(c[s>>2]|0,c[k>>2]|0,c[x>>2]|0,8);cc(c[r>>2]|0,c[k>>2]|0)}}}}}}}c[o>>2]=(c[o>>2]|0)+ -1;c[n>>2]=(c[n>>2]|0)+48}b:do{if((c[c[t>>2]>>2]|0)!=0){f=sy(c[A>>2]|0)|0;c[(c[t>>2]|0)+28>>2]=f;Qv(c[A>>2]|0,25,1,c[c[t>>2]>>2]|0)|0;IA(c[s>>2]|0);c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[m>>2]|0)+12>>2]|0)){break b}if((a[(c[n>>2]|0)+20>>0]&6|0)==0){g=(c[n>>2]|0)+40|0;f=(c[t>>2]|0)+64|0;if(!((c[g>>2]&c[f>>2]|0)!=0?1:(c[g+4>>2]&c[f+4>>2]|0)!=0)){ez(c[s>>2]|0,c[c[n>>2]>>2]|0,c[x>>2]|0,8);f=(c[n>>2]|0)+20|0;a[f>>0]=d[f>>0]|4}}c[o>>2]=(c[o>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+48}}}while(0);h=(c[t>>2]|0)+64|0;f=c[h+4>>2]|0;g=p;c[g>>2]=c[h>>2];c[g+4>>2]=f;g=p;f=g;f=c[f>>2]|0;g=g+4|0;g=c[g>>2]|0;D=g;i=q;return f|0}function IB(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;q=i;i=i+64|0;w=q+48|0;m=q+44|0;n=q+40|0;x=q+36|0;p=q+32|0;t=q+28|0;u=q+24|0;o=q+16|0;l=q+12|0;k=q+8|0;s=q+4|0;r=q;v=q+20|0;c[w>>2]=b;c[m>>2]=e;c[n>>2]=f;c[x>>2]=g;c[p>>2]=h;c[t>>2]=j;c[u>>2]=c[c[m>>2]>>2];c[o>>2]=c[(c[w>>2]|0)+8>>2];if((d[c[u>>2]>>0]|0|0)==79){c[l>>2]=wz(c[w>>2]|0,c[(c[u>>2]|0)+16>>2]|0,c[t>>2]|0)|0;e=c[n>>2]|0;b=c[m>>2]|0;JB(e,b);b=c[l>>2]|0;i=q;return b|0}if((d[c[u>>2]>>0]|0|0)==76){c[l>>2]=c[t>>2];Qv(c[o>>2]|0,28,0,c[l>>2]|0)|0;e=c[n>>2]|0;b=c[m>>2]|0;JB(e,b);b=c[l>>2]|0;i=q;return b|0}c[v>>2]=c[(c[n>>2]|0)+56>>2];if((c[(c[v>>2]|0)+36>>2]&1024|0)==0){if((c[(c[v>>2]|0)+28>>2]|0)!=0){if((d[(c[(c[(c[v>>2]|0)+28>>2]|0)+28>>2]|0)+(c[x>>2]|0)>>0]|0|0)!=0){c[p>>2]=((c[p>>2]|0)!=0^1)&1}}}c[l>>2]=c[t>>2];c[k>>2]=tz(c[w>>2]|0,c[u>>2]|0,0)|0;if((c[k>>2]|0)==4){c[p>>2]=((c[p>>2]|0)!=0^1)&1}c[s>>2]=c[(c[u>>2]|0)+28>>2];Qv(c[o>>2]|0,(c[p>>2]|0)!=0?102:105,c[s>>2]|0,0)|0;b=(c[v>>2]|0)+36|0;c[b>>2]=c[b>>2]|2048;if((c[(c[n>>2]|0)+48>>2]|0)==0){b=cz(c[o>>2]|0)|0;c[(c[n>>2]|0)+16>>2]=b}t=(c[n>>2]|0)+48|0;c[t>>2]=(c[t>>2]|0)+1;t=Ey(c[c[w>>2]>>2]|0,c[(c[n>>2]|0)+52>>2]|0,(c[(c[n>>2]|0)+48>>2]|0)*12|0)|0;c[(c[n>>2]|0)+52>>2]=t;c[r>>2]=c[(c[n>>2]|0)+52>>2];t=(c[n>>2]|0)+48|0;if((c[r>>2]|0)==0){c[t>>2]=0;e=c[n>>2]|0;b=c[m>>2]|0;JB(e,b);b=c[l>>2]|0;i=q;return b|0}c[r>>2]=(c[r>>2]|0)+(((c[t>>2]|0)-1|0)*12|0);c[c[r>>2]>>2]=c[s>>2];t=c[o>>2]|0;u=c[s>>2]|0;s=c[l>>2]|0;if((c[k>>2]|0)==1){b=Qv(t,100,u,s)|0;c[(c[r>>2]|0)+4>>2]=b}else{b=Tv(t,46,u,0,s)|0;c[(c[r>>2]|0)+4>>2]=b}a[(c[r>>2]|0)+8>>0]=(c[p>>2]|0)!=0?6:7;oy(c[o>>2]|0,76,c[l>>2]|0)|0;e=c[n>>2]|0;b=c[m>>2]|0;JB(e,b);b=c[l>>2]|0;i=q;return b|0}function JB(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;h=f;j=f+4|0;c[g>>2]=b;c[h>>2]=e;if((c[h>>2]|0)==0){i=f;return}if((a[(c[h>>2]|0)+20>>0]&4|0)!=0){i=f;return}if((c[c[g>>2]>>2]|0)!=0){if((c[(c[c[h>>2]>>2]|0)+4>>2]&1|0)==0){i=f;return}}e=(c[g>>2]|0)+64|0;b=(c[h>>2]|0)+40|0;if(!((c[e>>2]&c[b>>2]|0)==0?(c[e+4>>2]&c[b+4>>2]|0)==0:0)){i=f;return}b=(c[h>>2]|0)+20|0;a[b>>0]=d[b>>0]|0|4;if((c[(c[h>>2]|0)+4>>2]|0)<0){i=f;return}c[j>>2]=(c[(c[(c[h>>2]|0)+24>>2]|0)+20>>2]|0)+((c[(c[h>>2]|0)+4>>2]|0)*48|0);h=(c[j>>2]|0)+21|0;b=(a[h>>0]|0)+ -1<<24>>24;a[h>>0]=b;if((b&255|0)!=0){i=f;return}JB(c[g>>2]|0,c[j>>2]|0);i=f;return} + + + +function Mr(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;d=e+16|0;h=e;f=e+4|0;g=e+8|0;j=e+12|0;c[d>>2]=b;Yb(c[d>>2]|0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[d>>2]|0)+20>>2]|0)){break}c[f>>2]=c[(c[(c[d>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2];a:do{if((c[(c[(c[d>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]|0)!=0){c[g>>2]=c[(c[f>>2]|0)+16>>2];while(1){if((c[g>>2]|0)==0){break a}c[j>>2]=c[(c[g>>2]|0)+8>>2];if((a[(c[j>>2]|0)+44>>0]&16|0)!=0){Nr(c[d>>2]|0,c[j>>2]|0)}c[g>>2]=c[c[g>>2]>>2]}}}while(0);c[h>>2]=(c[h>>2]|0)+1}Ar(c[d>>2]|0);i=e;return}function Nr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e+12|0;j=e;g=e+4|0;f=e+8|0;c[h>>2]=a;c[j>>2]=b;c[g>>2]=(c[j>>2]|0)+60;while(1){if((c[c[g>>2]>>2]|0)==0){d=6;break}b=c[c[g>>2]>>2]|0;if((c[c[c[g>>2]>>2]>>2]|0)==(c[h>>2]|0)){break}c[g>>2]=b+24}if((d|0)==6){i=e;return}c[f>>2]=b;c[c[g>>2]>>2]=c[(c[f>>2]|0)+24>>2];Cr(c[f>>2]|0);i=e;return}function Or(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[d>>2]|0)+40>>2]|0)==0){i=b;return}rb[c[45288>>2]&31](c[(c[d>>2]|0)+40>>2]|0);i=b;return}function Pr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;c[b>>2]=a;d=3456|0;a=d+68|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));if((c[45140>>2]|0)!=0){c[864]=8;c[3508>>2]=8}c[3468>>2]=10;c[3484>>2]=1;i=b;return 0}function Qr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;c[b>>2]=a;d=3456|0;a=d+68|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));i=b;return}function Rr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;h=e+24|0;j=e;k=e+4|0;f=e+8|0;g=e+12|0;l=e+16|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[e+20>>2]=0;c[l>>2]=48;c[f>>2]=Sc(c[l>>2]|0)|0;if((c[f>>2]|0)==0){l=c[f>>2]|0;i=e;return l|0}c[g>>2]=3456;c[c[f>>2]>>2]=c[g>>2];c[(c[f>>2]|0)+4>>2]=c[h>>2];c[(c[f>>2]|0)+8>>2]=c[j>>2];c[(c[f>>2]|0)+12>>2]=(c[k>>2]|0)!=0?1:0;if((c[k>>2]|0)==0){l=c[f>>2]|0;i=e;return l|0}c[(c[f>>2]|0)+16>>2]=10;l=(c[g>>2]|0)+8|0;c[l>>2]=(c[l>>2]|0)+(c[(c[f>>2]|0)+16>>2]|0);c[(c[g>>2]|0)+12>>2]=(c[(c[g>>2]|0)+4>>2]|0)+10-(c[(c[g>>2]|0)+8>>2]|0);l=c[f>>2]|0;i=e;return l|0}function Sr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;h=d+12|0;g=d;e=d+4|0;f=d+8|0;c[h>>2]=a;c[g>>2]=b;c[e>>2]=c[h>>2];if((c[(c[e>>2]|0)+12>>2]|0)==0){i=d;return}c[f>>2]=c[c[e>>2]>>2];h=(c[f>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+((c[g>>2]|0)-(c[(c[e>>2]|0)+20>>2]|0));c[(c[f>>2]|0)+12>>2]=(c[(c[f>>2]|0)+4>>2]|0)+10-(c[(c[f>>2]|0)+8>>2]|0);c[(c[e>>2]|0)+20>>2]=c[g>>2];c[(c[e>>2]|0)+24>>2]=(((c[(c[e>>2]|0)+20>>2]|0)*9|0)>>>0)/10|0;_r(c[f>>2]|0);i=d;return}function Tr(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;b=d;e=d+4|0;c[f>>2]=a;c[e>>2]=c[f>>2];c[b>>2]=c[(c[e>>2]|0)+36>>2];i=d;return c[b>>2]|0}function Ur(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+48|0;q=o+36|0;f=o+32|0;k=o+28|0;n=o+24|0;j=o+20|0;g=o+16|0;l=o+8|0;p=o+4|0;h=o;m=o+12|0;c[q>>2]=b;c[f>>2]=d;c[k>>2]=e;c[j>>2]=c[q>>2];c[l>>2]=0;a:do{if((c[(c[j>>2]|0)+40>>2]|0)>>>0>0){c[p>>2]=((c[f>>2]|0)>>>0)%((c[(c[j>>2]|0)+40>>2]|0)>>>0)|0;c[l>>2]=c[(c[(c[j>>2]|0)+44>>2]|0)+(c[p>>2]<<2)>>2];while(1){if((c[l>>2]|0)==0){break a}if((c[(c[l>>2]|0)+8>>2]|0)==(c[f>>2]|0)){break a}c[l>>2]=c[(c[l>>2]|0)+16>>2]}}}while(0);do{if((c[l>>2]|0)!=0){if((a[(c[l>>2]|0)+12>>0]|0)==0){$r(c[l>>2]|0)}}else{if((c[k>>2]|0)!=0){c[g>>2]=c[c[j>>2]>>2];c[n>>2]=(c[(c[j>>2]|0)+36>>2]|0)-(c[(c[j>>2]|0)+32>>2]|0);if((c[k>>2]|0)==1){if((c[n>>2]|0)>>>0>=(c[(c[g>>2]|0)+12>>2]|0)>>>0){break}if((c[n>>2]|0)>>>0>=(c[(c[j>>2]|0)+24>>2]|0)>>>0){break}if((ds(c[j>>2]|0)|0)!=0){break}}if((c[(c[j>>2]|0)+36>>2]|0)>>>0>=(c[(c[j>>2]|0)+40>>2]|0)>>>0){if((es(c[j>>2]|0)|0)!=0){break}}do{if((c[(c[j>>2]|0)+12>>2]|0)!=0){if((c[(c[g>>2]|0)+24>>2]|0)!=0){if(!(((c[(c[j>>2]|0)+36>>2]|0)+1|0)>>>0>=(c[(c[j>>2]|0)+20>>2]|0)>>>0)){if(!((c[(c[g>>2]|0)+16>>2]|0)>>>0>=(c[(c[g>>2]|0)+4>>2]|0)>>>0)){if((ds(c[j>>2]|0)|0)==0){break}}}c[l>>2]=c[(c[g>>2]|0)+24>>2];as(c[l>>2]|0);$r(c[l>>2]|0);c[h>>2]=c[(c[l>>2]|0)+20>>2];if(((c[(c[h>>2]|0)+4>>2]|0)+(c[(c[h>>2]|0)+8>>2]|0)|0)!=((c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0)|0)){bs(c[l>>2]|0);c[l>>2]=0;break}else{q=(c[g>>2]|0)+16|0;c[q>>2]=(c[q>>2]|0)-((c[(c[h>>2]|0)+12>>2]|0)-(c[(c[j>>2]|0)+12>>2]|0));break}}}}while(0);if((c[l>>2]|0)==0){if((c[k>>2]|0)==1){Ih()}c[l>>2]=fs(c[j>>2]|0)|0;if((c[k>>2]|0)==1){Jh()}}if((c[l>>2]|0)!=0){c[m>>2]=((c[f>>2]|0)>>>0)%((c[(c[j>>2]|0)+40>>2]|0)>>>0)|0;q=(c[j>>2]|0)+36|0;c[q>>2]=(c[q>>2]|0)+1;c[(c[l>>2]|0)+8>>2]=c[f>>2];c[(c[l>>2]|0)+16>>2]=c[(c[(c[j>>2]|0)+44>>2]|0)+(c[m>>2]<<2)>>2];c[(c[l>>2]|0)+20>>2]=c[j>>2];c[(c[l>>2]|0)+28>>2]=0;c[(c[l>>2]|0)+24>>2]=0;a[(c[l>>2]|0)+12>>0]=1;c[c[(c[l>>2]|0)+4>>2]>>2]=0;c[(c[(c[j>>2]|0)+44>>2]|0)+(c[m>>2]<<2)>>2]=c[l>>2]}}}}while(0);if((c[l>>2]|0)==0){q=c[l>>2]|0;i=o;return q|0}if(!((c[f>>2]|0)>>>0>(c[(c[j>>2]|0)+28>>2]|0)>>>0)){q=c[l>>2]|0;i=o;return q|0}c[(c[j>>2]|0)+28>>2]=c[f>>2];q=c[l>>2]|0;i=o;return q|0}function Vr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;m=h+20|0;l=h;k=h+4|0;f=h+8|0;g=h+12|0;j=h+16|0;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[f>>2]=c[m>>2];c[g>>2]=c[l>>2];c[j>>2]=c[c[f>>2]>>2];if((c[k>>2]|0)==0){if(!((c[(c[j>>2]|0)+16>>2]|0)>>>0>(c[(c[j>>2]|0)+4>>2]|0)>>>0)){d=c[g>>2]|0;e=c[j>>2]|0;if((c[(c[j>>2]|0)+20>>2]|0)!=0){c[(c[e+20>>2]|0)+28>>2]=d;c[(c[g>>2]|0)+24>>2]=c[(c[j>>2]|0)+20>>2];c[(c[j>>2]|0)+20>>2]=c[g>>2]}else{c[e+24>>2]=d;c[(c[j>>2]|0)+20>>2]=c[g>>2]}m=(c[f>>2]|0)+32|0;c[m>>2]=(c[m>>2]|0)+1;a[(c[g>>2]|0)+12>>0]=0;i=h;return}}as(c[g>>2]|0);bs(c[g>>2]|0);i=h;return}function Wr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;o=f+28|0;n=f;m=f+4|0;j=f+8|0;k=f+12|0;g=f+16|0;h=f+20|0;l=f+24|0;c[o>>2]=a;c[n>>2]=b;c[m>>2]=d;c[j>>2]=e;c[k>>2]=c[o>>2];c[g>>2]=c[n>>2];c[l>>2]=((c[m>>2]|0)>>>0)%((c[(c[k>>2]|0)+40>>2]|0)>>>0)|0;c[h>>2]=(c[(c[k>>2]|0)+44>>2]|0)+(c[l>>2]<<2);while(1){if((c[c[h>>2]>>2]|0)==(c[g>>2]|0)){break}c[h>>2]=(c[c[h>>2]>>2]|0)+16}c[c[h>>2]>>2]=c[(c[g>>2]|0)+16>>2];c[l>>2]=((c[j>>2]|0)>>>0)%((c[(c[k>>2]|0)+40>>2]|0)>>>0)|0;c[(c[g>>2]|0)+8>>2]=c[j>>2];c[(c[g>>2]|0)+16>>2]=c[(c[(c[k>>2]|0)+44>>2]|0)+(c[l>>2]<<2)>>2];c[(c[(c[k>>2]|0)+44>>2]|0)+(c[l>>2]<<2)>>2]=c[g>>2];if(!((c[j>>2]|0)>>>0>(c[(c[k>>2]|0)+28>>2]|0)>>>0)){i=f;return}c[(c[k>>2]|0)+28>>2]=c[j>>2];i=f;return}function Xr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=c[g>>2];if(!((c[f>>2]|0)>>>0<=(c[(c[e>>2]|0)+28>>2]|0)>>>0)){i=d;return}cs(c[e>>2]|0,c[f>>2]|0);c[(c[e>>2]|0)+28>>2]=(c[f>>2]|0)-1;i=d;return}function Yr(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b;e=b+4|0;c[f>>2]=a;c[d>>2]=c[f>>2];c[e>>2]=c[c[d>>2]>>2];cs(c[d>>2]|0,0);a=(c[e>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)-(c[(c[d>>2]|0)+20>>2]|0);a=(c[e>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)-(c[(c[d>>2]|0)+16>>2]|0);c[(c[e>>2]|0)+12>>2]=(c[(c[e>>2]|0)+4>>2]|0)+10-(c[(c[e>>2]|0)+8>>2]|0);_r(c[e>>2]|0);oc(c[(c[d>>2]|0)+44>>2]|0);oc(c[d>>2]|0);i=b;return}function Zr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;g=b+12|0;d=b;e=b+4|0;f=b+8|0;c[g>>2]=a;c[d>>2]=c[g>>2];if((c[(c[d>>2]|0)+12>>2]|0)==0){i=b;return}c[e>>2]=c[c[d>>2]>>2];c[f>>2]=c[(c[e>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2]=0;_r(c[e>>2]|0);c[(c[e>>2]|0)+4>>2]=c[f>>2];i=b;return}function _r(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;while(1){if(!((c[(c[d>>2]|0)+16>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0)){a=5;break}if((c[(c[d>>2]|0)+24>>2]|0)==0){a=5;break}c[e>>2]=c[(c[d>>2]|0)+24>>2];$r(c[e>>2]|0);as(c[e>>2]|0);bs(c[e>>2]|0)}if((a|0)==5){i=b;return}}function $r(b){b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;e=f;g=f+4|0;c[d>>2]=b;c[e>>2]=c[(c[d>>2]|0)+20>>2];c[g>>2]=c[c[e>>2]>>2];b=c[(c[d>>2]|0)+24>>2]|0;if((c[(c[d>>2]|0)+28>>2]|0)!=0){c[(c[(c[d>>2]|0)+28>>2]|0)+24>>2]=b}else{c[(c[g>>2]|0)+20>>2]=b}b=c[(c[d>>2]|0)+28>>2]|0;if((c[(c[d>>2]|0)+24>>2]|0)!=0){c[(c[(c[d>>2]|0)+24>>2]|0)+28>>2]=b}else{c[(c[g>>2]|0)+24>>2]=b}c[(c[d>>2]|0)+24>>2]=0;c[(c[d>>2]|0)+28>>2]=0;a[(c[d>>2]|0)+12>>0]=1;b=(c[e>>2]|0)+32|0;c[b>>2]=(c[b>>2]|0)+ -1;i=f;return}function as(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+12|0;g=e;d=e+4|0;b=e+8|0;c[f>>2]=a;c[d>>2]=c[(c[f>>2]|0)+20>>2];c[g>>2]=((c[(c[f>>2]|0)+8>>2]|0)>>>0)%((c[(c[d>>2]|0)+40>>2]|0)>>>0)|0;c[b>>2]=(c[(c[d>>2]|0)+44>>2]|0)+(c[g>>2]<<2);while(1){a=(c[c[b>>2]>>2]|0)+16|0;if((c[c[b>>2]>>2]|0)==(c[f>>2]|0)){break}c[b>>2]=a}c[c[b>>2]>>2]=c[a>>2];g=(c[d>>2]|0)+36|0;c[g>>2]=(c[g>>2]|0)+ -1;i=e;return}function bs(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((c[e>>2]|0)==0){i=b;return}c[d>>2]=c[(c[e>>2]|0)+20>>2];jh(c[c[e>>2]>>2]|0)|0;if((c[(c[d>>2]|0)+12>>2]|0)==0){i=b;return}e=(c[c[d>>2]>>2]|0)+16|0;c[e>>2]=(c[e>>2]|0)+ -1;i=b;return}function cs(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;h=e+16|0;k=e;j=e+4|0;f=e+8|0;g=e+12|0;c[h>>2]=b;c[k>>2]=d;c[j>>2]=0;while(1){if(!((c[j>>2]|0)>>>0<(c[(c[h>>2]|0)+40>>2]|0)>>>0)){break}c[f>>2]=(c[(c[h>>2]|0)+44>>2]|0)+(c[j>>2]<<2);while(1){b=c[c[f>>2]>>2]|0;c[g>>2]=b;if((b|0)==0){break}if(!((c[(c[g>>2]|0)+8>>2]|0)>>>0>=(c[k>>2]|0)>>>0)){c[f>>2]=(c[g>>2]|0)+16;continue}b=(c[h>>2]|0)+36|0;c[b>>2]=(c[b>>2]|0)+ -1;c[c[f>>2]>>2]=c[(c[g>>2]|0)+16>>2];if((a[(c[g>>2]|0)+12>>0]|0)==0){$r(c[g>>2]|0)}bs(c[g>>2]|0)}c[j>>2]=(c[j>>2]|0)+1}i=e;return}function ds(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;if((c[3492>>2]|0)!=0){if(((c[(c[e>>2]|0)+4>>2]|0)+(c[(c[e>>2]|0)+8>>2]|0)|0)<=(c[3488>>2]|0)){c[d>>2]=c[3520>>2];e=c[d>>2]|0;i=b;return e|0}}c[d>>2]=gs()|0;e=c[d>>2]|0;i=b;return e|0}function es(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;b=d+24|0;e=d;f=d+4|0;j=d+8|0;h=d+12|0;g=d+16|0;k=d+20|0;c[b>>2]=a;a=c[(c[b>>2]|0)+40>>2]<<1;c[f>>2]=a;c[f>>2]=(c[f>>2]|0)>>>0<256?256:a;if((c[(c[b>>2]|0)+40>>2]|0)!=0){Ih()}c[e>>2]=Sc(c[f>>2]<<2)|0;if((c[(c[b>>2]|0)+40>>2]|0)!=0){Jh()}if((c[e>>2]|0)==0){k=c[b>>2]|0;k=k+44|0;k=c[k>>2]|0;k=(k|0)!=0;k=k?0:7;i=d;return k|0}c[j>>2]=0;while(1){if(!((c[j>>2]|0)>>>0<(c[(c[b>>2]|0)+40>>2]|0)>>>0)){break}c[g>>2]=c[(c[(c[b>>2]|0)+44>>2]|0)+(c[j>>2]<<2)>>2];while(1){a=c[g>>2]|0;c[h>>2]=a;if((a|0)==0){break}c[k>>2]=((c[(c[h>>2]|0)+8>>2]|0)>>>0)%((c[f>>2]|0)>>>0)|0;c[g>>2]=c[(c[h>>2]|0)+16>>2];c[(c[h>>2]|0)+16>>2]=c[(c[e>>2]|0)+(c[k>>2]<<2)>>2];c[(c[e>>2]|0)+(c[k>>2]<<2)>>2]=c[h>>2]}c[j>>2]=(c[j>>2]|0)+1}oc(c[(c[b>>2]|0)+44>>2]|0);c[(c[b>>2]|0)+44>>2]=c[e>>2];c[(c[b>>2]|0)+40>>2]=c[f>>2];k=c[b>>2]|0;k=k+44|0;k=c[k>>2]|0;k=(k|0)!=0;k=k?0:7;i=d;return k|0}function fs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;f=b;e=b+4|0;g=b+8|0;c[f>>2]=a;c[e>>2]=0;c[g>>2]=qh(32+(c[(c[f>>2]|0)+4>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)|0)|0;c[e>>2]=(c[g>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0);if((c[g>>2]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}c[c[e>>2]>>2]=c[g>>2];c[(c[e>>2]|0)+4>>2]=(c[e>>2]|0)+32;if((c[(c[f>>2]|0)+12>>2]|0)!=0){g=(c[c[f>>2]>>2]|0)+16|0;c[g>>2]=(c[g>>2]|0)+1}c[d>>2]=c[e>>2];g=c[d>>2]|0;i=b;return g|0}function gs(){return c[516>>2]|0}function hs(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b;f=b+8|0;d=b+4|0;c[f>>2]=a;c[f>>2]=(c[f>>2]|0)+7&-8;c[d>>2]=QK((c[f>>2]|0)+8|0)|0;a=c[f>>2]|0;if((c[d>>2]|0)!=0){f=c[d>>2]|0;c[f>>2]=a;c[f+4>>2]=((a|0)<0)<<31>>31;c[d>>2]=(c[d>>2]|0)+8;f=c[d>>2]|0;i=b;return f|0}else{c[e>>2]=a;zc(7,12784,e);f=c[d>>2]|0;i=b;return f|0}return 0}function is(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];c[d>>2]=(c[d>>2]|0)+ -8;RK(c[d>>2]|0);i=b;return}function js(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;g=d;h=d+16|0;f=d+8|0;e=d+12|0;c[h>>2]=a;c[f>>2]=b;c[e>>2]=c[h>>2];c[e>>2]=(c[e>>2]|0)+ -8;c[e>>2]=SK(c[e>>2]|0,(c[f>>2]|0)+8|0)|0;if((c[e>>2]|0)!=0){h=c[f>>2]|0;a=c[e>>2]|0;c[a>>2]=h;c[a+4>>2]=((h|0)<0)<<31>>31;c[e>>2]=(c[e>>2]|0)+8;a=c[e>>2]|0;i=d;return a|0}else{h=ks(c[h>>2]|0)|0;a=c[f>>2]|0;c[g>>2]=h;c[g+4>>2]=a;zc(7,12744,g);a=c[e>>2]|0;i=d;return a|0}return 0}function ks(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;f=b;e=b+4|0;c[f>>2]=a;if((c[f>>2]|0)==0){c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}else{c[e>>2]=c[f>>2];c[e>>2]=(c[e>>2]|0)+ -8;c[d>>2]=c[c[e>>2]>>2];f=c[d>>2]|0;i=b;return f|0}return 0}function ls(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[b>>2]|0)+7&-8|0}function ms(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function ns(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return}function os(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;p=i;i=i+64|0;s=p+52|0;v=p+48|0;u=p+44|0;m=p+40|0;h=p+36|0;q=p+32|0;j=p+28|0;k=p+24|0;g=p+16|0;n=p+12|0;l=p+8|0;t=p+4|0;o=p;r=p+20|0;c[s>>2]=b;c[v>>2]=e;c[u>>2]=f;c[g>>2]=0;c[n>>2]=0;if((Sd(c[c[u>>2]>>2]|0)|0)==5){i=p;return}c[m>>2]=Jd(c[c[u>>2]>>2]|0)|0;if((c[m>>2]|0)==0){i=p;return}c[q>>2]=Kd(c[c[u>>2]>>2]|0)|0;a:do{if((c[v>>2]|0)==1){c[l>>2]=1;c[g>>2]=16432;c[n>>2]=16440;c[h>>2]=0}else{b=Jd(c[(c[u>>2]|0)+4>>2]|0)|0;c[h>>2]=b;if((b|0)==0){i=p;return}c[t>>2]=c[h>>2];c[l>>2]=0;while(1){if((a[c[t>>2]>>0]|0)==0){break}b=c[t>>2]|0;c[t>>2]=b+1;b:do{if((d[b>>0]|0)>=192){while(1){if((a[c[t>>2]>>0]&192|0)!=128){break b}c[t>>2]=(c[t>>2]|0)+1}}}while(0);c[l>>2]=(c[l>>2]|0)+1}if((c[l>>2]|0)>0){e=c[s>>2]|0;b=c[l>>2]|0;b=nL(b|0,((b|0)<0)<<31>>31|0,5,0)|0;c[n>>2]=Rt(e,b,D)|0;if((c[n>>2]|0)==0){i=p;return}c[g>>2]=(c[n>>2]|0)+(c[l>>2]<<2);c[t>>2]=c[h>>2];c[l>>2]=0;while(1){if((a[c[t>>2]>>0]|0)==0){break a}c[(c[n>>2]|0)+(c[l>>2]<<2)>>2]=c[t>>2];b=c[t>>2]|0;c[t>>2]=b+1;c:do{if((d[b>>0]|0)>=192){while(1){if((a[c[t>>2]>>0]&192|0)!=128){break c}c[t>>2]=(c[t>>2]|0)+1}}}while(0);a[(c[g>>2]|0)+(c[l>>2]|0)>>0]=(c[t>>2]|0)-(c[(c[n>>2]|0)+(c[l>>2]<<2)>>2]|0);c[l>>2]=(c[l>>2]|0)+1}}}}while(0);if((c[l>>2]|0)>0){c[j>>2]=qe(c[s>>2]|0)|0;d:do{if((c[j>>2]&1|0)!=0){while(1){if((c[q>>2]|0)<=0){break d}c[o>>2]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[l>>2]|0)){break}c[o>>2]=d[(c[g>>2]|0)+(c[k>>2]|0)>>0]|0;if((c[o>>2]|0)<=(c[q>>2]|0)){if((XK(c[m>>2]|0,c[(c[n>>2]|0)+(c[k>>2]<<2)>>2]|0,c[o>>2]|0)|0)==0){break}}c[k>>2]=(c[k>>2]|0)+1}if((c[k>>2]|0)>=(c[l>>2]|0)){break d}c[m>>2]=(c[m>>2]|0)+(c[o>>2]|0);c[q>>2]=(c[q>>2]|0)-(c[o>>2]|0)}}}while(0);e:do{if((c[j>>2]&2|0)!=0){while(1){if((c[q>>2]|0)<=0){break e}c[r>>2]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[l>>2]|0)){break}c[r>>2]=d[(c[g>>2]|0)+(c[k>>2]|0)>>0]|0;if((c[r>>2]|0)<=(c[q>>2]|0)){if((XK((c[m>>2]|0)+((c[q>>2]|0)-(c[r>>2]|0))|0,c[(c[n>>2]|0)+(c[k>>2]<<2)>>2]|0,c[r>>2]|0)|0)==0){break}}c[k>>2]=(c[k>>2]|0)+1}if((c[k>>2]|0)>=(c[l>>2]|0)){break e}c[q>>2]=(c[q>>2]|0)-(c[r>>2]|0)}}}while(0);if((c[h>>2]|0)!=0){oc(c[n>>2]|0)}}ce(c[s>>2]|0,c[m>>2]|0,c[q>>2]|0,-1);i=p;return}function ps(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;g=l+24|0;n=l;h=l+4|0;k=l+8|0;m=l+12|0;j=l+16|0;e=l+20|0;c[g>>2]=a;c[n>>2]=b;c[h>>2]=d;a=(qe(c[g>>2]|0)|0)==0;c[m>>2]=a?0:-1;c[e>>2]=St(c[g>>2]|0)|0;c[j>>2]=0;if((Sd(c[c[h>>2]>>2]|0)|0)==5){i=l;return}c[k>>2]=1;while(1){if((c[k>>2]|0)>=(c[n>>2]|0)){break}if((Sd(c[(c[h>>2]|0)+(c[k>>2]<<2)>>2]|0)|0)==5){f=9;break}a=Tt(c[(c[h>>2]|0)+(c[j>>2]<<2)>>2]|0,c[(c[h>>2]|0)+(c[k>>2]<<2)>>2]|0,c[e>>2]|0)|0;if((a^c[m>>2]|0)>=0){c[j>>2]=c[k>>2]}c[k>>2]=(c[k>>2]|0)+1}if((f|0)==9){i=l;return}de(c[g>>2]|0,c[(c[h>>2]|0)+(c[j>>2]<<2)>>2]|0);i=l;return}function qs(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;h=m+28|0;o=m+4|0;k=m+8|0;j=m+12|0;n=m+16|0;l=m+20|0;f=m+24|0;c[h>>2]=a;c[m>>2]=d;c[o>>2]=e;c[k>>2]=c[c[o>>2]>>2];c[j>>2]=se(c[h>>2]|0,40)|0;if((c[j>>2]|0)==0){i=m;return}a=(Sd(c[c[o>>2]>>2]|0)|0)==5;o=(b[(c[j>>2]|0)+28>>1]|0)!=0;if(a){if(!o){i=m;return}Xt(c[h>>2]|0);i=m;return}if(!o){ee(c[j>>2]|0,c[k>>2]|0)|0;i=m;return}c[f>>2]=St(c[h>>2]|0)|0;c[n>>2]=(qe(c[h>>2]|0)|0)!=0&1;c[l>>2]=Tt(c[j>>2]|0,c[k>>2]|0,c[f>>2]|0)|0;if((c[n>>2]|0)!=0){if((c[l>>2]|0)>=0){g=8}}else{g=8}do{if((g|0)==8){if((c[n>>2]|0)==0){if((c[l>>2]|0)>0){break}}Xt(c[h>>2]|0);i=m;return}}while(0);ee(c[j>>2]|0,c[k>>2]|0)|0;i=m;return}function rs(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=se(c[f>>2]|0,0)|0;if((c[e>>2]|0)==0){i=d;return}if((b[(c[e>>2]|0)+28>>1]|0)!=0){de(c[f>>2]|0,c[e>>2]|0)}Gd(c[e>>2]|0);i=d;return}function ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+12|0;h=e+4|0;f=e+8|0;c[g>>2]=a;c[e>>2]=b;c[h>>2]=d;c[f>>2]=0;d=Sd(c[c[h>>2]>>2]|0)|0;if((d|0)==3){c[f>>2]=16400}else if((d|0)==4){c[f>>2]=16416}else if((d|0)==2){c[f>>2]=16408}else if((d|0)==1){c[f>>2]=16392}else{c[f>>2]=16424}ce(c[g>>2]|0,c[f>>2]|0,-1,0);i=e;return}function ts(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;h=g+16|0;l=g+4|0;j=g+8|0;k=g+12|0;c[h>>2]=b;c[g>>2]=e;c[l>>2]=f;f=Sd(c[c[l>>2]>>2]|0)|0;if((f|0)==3){c[k>>2]=Jd(c[c[l>>2]>>2]|0)|0;if((c[k>>2]|0)==0){i=g;return}c[j>>2]=0;a:while(1){if((a[c[k>>2]>>0]|0)==0){break}c[j>>2]=(c[j>>2]|0)+1;b=c[k>>2]|0;c[k>>2]=b+1;if((d[b>>0]|0)<192){continue}while(1){if((a[c[k>>2]>>0]&192|0)!=128){continue a}c[k>>2]=(c[k>>2]|0)+1}}Zd(c[h>>2]|0,c[j>>2]|0);i=g;return}else if((f|0)==2|(f|0)==1|(f|0)==4){b=c[h>>2]|0;Zd(b,Kd(c[c[l>>2]>>2]|0)|0);i=g;return}else{ae(c[h>>2]|0);i=g;return}}function us(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;h=n+40|0;p=n+32|0;m=n+28|0;o=n+24|0;l=n+20|0;k=n+12|0;r=n+8|0;q=n+4|0;j=n;f=n+16|0;c[h>>2]=b;c[n+36>>2]=d;c[p>>2]=e;c[j>>2]=1;c[r>>2]=Sd(c[c[p>>2]>>2]|0)|0;c[q>>2]=Sd(c[(c[p>>2]|0)+4>>2]|0)|0;if((c[r>>2]|0)==5){i=n;return}if((c[q>>2]|0)==5){i=n;return}c[l>>2]=Kd(c[c[p>>2]>>2]|0)|0;c[k>>2]=Kd(c[(c[p>>2]|0)+4>>2]|0)|0;if((c[r>>2]|0)==4){if((c[q>>2]|0)==4){c[m>>2]=Hd(c[c[p>>2]>>2]|0)|0;c[o>>2]=Hd(c[(c[p>>2]|0)+4>>2]|0)|0;c[f>>2]=0}else{g=6}}else{g=6}if((g|0)==6){c[m>>2]=Jd(c[c[p>>2]>>2]|0)|0;c[o>>2]=Jd(c[(c[p>>2]|0)+4>>2]|0)|0;c[f>>2]=1}a:while(1){if((c[k>>2]|0)>(c[l>>2]|0)){break}if((XK(c[m>>2]|0,c[o>>2]|0,c[k>>2]|0)|0)==0){break}c[j>>2]=(c[j>>2]|0)+1;while(1){c[l>>2]=(c[l>>2]|0)+ -1;c[m>>2]=(c[m>>2]|0)+1;if((c[f>>2]|0)==0){continue a}if((a[c[m>>2]>>0]&192|0)!=128){continue a}}}if((c[k>>2]|0)>(c[l>>2]|0)){c[j>>2]=0}Zd(c[h>>2]|0,c[j>>2]|0);i=n;return}function vs(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+48|0;h=k+44|0;n=k+40|0;o=k+36|0;l=k+32|0;g=k+28|0;p=k+24|0;q=k+16|0;j=k+8|0;m=k;r=k+20|0;c[h>>2]=b;c[n>>2]=e;c[o>>2]=f;c[r>>2]=0;if((Sd(c[(c[o>>2]|0)+4>>2]|0)|0)==5){i=k;return}if((c[n>>2]|0)==3){if((Sd(c[(c[o>>2]|0)+8>>2]|0)|0)==5){i=k;return}}c[q>>2]=Sd(c[c[o>>2]>>2]|0)|0;b=Od(c[(c[o>>2]|0)+4>>2]|0)|0;f=j;c[f>>2]=b;c[f+4>>2]=((b|0)<0)<<31>>31;f=c[c[o>>2]>>2]|0;a:do{if((c[q>>2]|0)==4){c[p>>2]=Kd(f)|0;c[l>>2]=Hd(c[c[o>>2]>>2]|0)|0;if((c[l>>2]|0)==0){i=k;return}}else{c[l>>2]=Jd(f)|0;if((c[l>>2]|0)==0){i=k;return}c[p>>2]=0;if((c[j+4>>2]|0)<0){c[g>>2]=c[l>>2];while(1){if((a[c[g>>2]>>0]|0)==0){break a}b=c[g>>2]|0;c[g>>2]=b+1;b:do{if((d[b>>0]|0)>=192){while(1){if((a[c[g>>2]>>0]&192|0)!=128){break b}c[g>>2]=(c[g>>2]|0)+1}}}while(0);c[p>>2]=(c[p>>2]|0)+1}}}}while(0);if((c[n>>2]|0)==3){e=Od(c[(c[o>>2]|0)+8>>2]|0)|0;b=m;c[b>>2]=e;c[b+4>>2]=((e|0)<0)<<31>>31;if((c[m+4>>2]|0)<0){e=m;e=$K(0,0,c[e>>2]|0,c[e+4>>2]|0)|0;b=m;c[b>>2]=e;c[b+4>>2]=D;c[r>>2]=1}}else{e=c[(re(c[h>>2]|0)|0)+88>>2]|0;b=m;c[b>>2]=e;c[b+4>>2]=((e|0)<0)<<31>>31}do{if((c[j+4>>2]|0)<0){e=c[p>>2]|0;b=j;e=dL(c[b>>2]|0,c[b+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;b=j;c[b>>2]=e;c[b+4>>2]=D;if((c[j+4>>2]|0)<0){o=j;e=m;o=dL(c[e>>2]|0,c[e+4>>2]|0,c[o>>2]|0,c[o+4>>2]|0)|0;e=D;f=m;c[f>>2]=o;c[f+4>>2]=e;f=(c[m+4>>2]|0)<0;b=m;c[b>>2]=f?0:o;c[b+4>>2]=f?0:e;b=j;c[b>>2]=0;c[b+4>>2]=0}}else{b=j;e=c[b+4>>2]|0;if((e|0)>0|(e|0)==0&(c[b>>2]|0)>>>0>0){e=j;e=dL(c[e>>2]|0,c[e+4>>2]|0,-1,-1)|0;b=j;c[b>>2]=e;c[b+4>>2]=D;break}b=m;e=c[b+4>>2]|0;if((e|0)>0|(e|0)==0&(c[b>>2]|0)>>>0>0){e=m;e=dL(c[e>>2]|0,c[e+4>>2]|0,-1,-1)|0;b=m;c[b>>2]=e;c[b+4>>2]=D}}}while(0);if((c[r>>2]|0)!=0){e=m;b=j;e=$K(c[b>>2]|0,c[b+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;b=j;c[b>>2]=e;c[b+4>>2]=D;if((c[j+4>>2]|0)<0){e=j;b=m;e=dL(c[b>>2]|0,c[b+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;b=m;c[b>>2]=e;c[b+4>>2]=D;b=j;c[b>>2]=0;c[b+4>>2]=0}}if((c[q>>2]|0)==4){r=j;e=m;e=dL(c[r>>2]|0,c[r+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;r=D;b=c[p>>2]|0;f=((b|0)<0)<<31>>31;if((r|0)>(f|0)|(r|0)==(f|0)&e>>>0>b>>>0){e=c[p>>2]|0;r=j;r=$K(e|0,((e|0)<0)<<31>>31|0,c[r>>2]|0,c[r+4>>2]|0)|0;e=D;f=m;c[f>>2]=r;c[f+4>>2]=e;f=(c[m+4>>2]|0)<0;b=m;c[b>>2]=f?0:r;c[b+4>>2]=f?0:e}Td(c[h>>2]|0,(c[l>>2]|0)+(c[j>>2]|0)|0,c[m>>2]|0,-1);i=k;return}while(1){if((d[c[l>>2]>>0]|0)!=0){o=j;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0}else{o=0}n=c[l>>2]|0;if(!o){break}c[l>>2]=n+1;c:do{if((d[n>>0]|0)>=192){while(1){if((a[c[l>>2]>>0]&192|0)!=128){break c}c[l>>2]=(c[l>>2]|0)+1}}}while(0);e=j;e=dL(c[e>>2]|0,c[e+4>>2]|0,-1,-1)|0;b=j;c[b>>2]=e;c[b+4>>2]=D}c[g>>2]=n;while(1){if((d[c[g>>2]>>0]|0)==0){break}b=m;if(!((c[b>>2]|0)!=0|(c[b+4>>2]|0)!=0)){break}b=c[g>>2]|0;c[g>>2]=b+1;d:do{if((d[b>>0]|0)>=192){while(1){if((a[c[g>>2]>>0]&192|0)!=128){break d}c[g>>2]=(c[g>>2]|0)+1}}}while(0);e=m;e=dL(c[e>>2]|0,c[e+4>>2]|0,-1,-1)|0;b=m;c[b>>2]=e;c[b+4>>2]=D}ce(c[h>>2]|0,c[l>>2]|0,(c[g>>2]|0)-(c[l>>2]|0)|0,-1);i=k;return}function ws(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+64|0;m=k;e=k+60|0;f=k+4|0;h=k+8|0;g=k+12|0;j=k+24|0;l=k+52|0;n=k+56|0;c[e>>2]=a;c[f>>2]=b;c[h>>2]=d;if((c[f>>2]|0)<1){i=k;return}a=Jd(c[c[h>>2]>>2]|0)|0;c[l>>2]=a;if((a|0)==0){i=k;return}c[g>>2]=(c[f>>2]|0)-1;c[g+4>>2]=0;c[g+8>>2]=(c[h>>2]|0)+4;tc(j,0,0,1e9);c[j>>2]=re(c[e>>2]|0)|0;b=c[l>>2]|0;c[m>>2]=g;Wt(j,2,b,m);c[n>>2]=c[j+12>>2];b=c[e>>2]|0;a=vc(j)|0;ce(b,a,c[n>>2]|0,39);i=k;return}function xs(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;j=f+4|0;h=f+8|0;c[g>>2]=a;c[f>>2]=b;c[j>>2]=e;c[h>>2]=Jd(c[c[j>>2]>>2]|0)|0;if((c[h>>2]|0)==0){i=f;return}if((d[c[h>>2]>>0]|0|0)==0){i=f;return}j=c[g>>2]|0;Zd(j,It(h)|0);i=f;return}function ys(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;g=m+32|0;o=m+24|0;k=m+8|0;h=m+12|0;j=m+16|0;l=m+20|0;f=m;n=m+28|0;c[g>>2]=b;c[o>>2]=d;c[k>>2]=e;b=mc((c[o>>2]<<2)+1|0)|0;c[h>>2]=b;c[j>>2]=b;if((c[h>>2]|0)==0){ke(c[g>>2]|0);i=m;return}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[o>>2]|0)){break}p=Qd(c[(c[k>>2]|0)+(c[l>>2]<<2)>>2]|0)|0;b=D;e=f;c[e>>2]=p;c[e+4>>2]=b;e=f;d=c[e+4>>2]|0;e=(c[f+4>>2]|0)<0|((d|0)>0|(d|0)==0&(c[e>>2]|0)>>>0>1114111);d=f;c[d>>2]=e?65533:p;c[d+4>>2]=e?0:b;c[n>>2]=c[f>>2]&2097151;d=c[n>>2]|0;do{if((c[n>>2]|0)>>>0<128){p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=d&255}else{e=c[n>>2]|0;if(d>>>0<2048){b=c[j>>2]|0;c[j>>2]=b+1;a[b>>0]=192+(e>>>6&31&255);b=128+(c[n>>2]&63&255)&255;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=b;break}d=c[n>>2]|0;if(e>>>0<65536){p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=224+(d>>>12&15&255);p=128+((c[n>>2]|0)>>>6&63&255)&255;b=c[j>>2]|0;c[j>>2]=b+1;a[b>>0]=p;b=128+(c[n>>2]&63&255)&255;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=b;break}else{b=c[j>>2]|0;c[j>>2]=b+1;a[b>>0]=240+(d>>>18&7&255);b=128+((c[n>>2]|0)>>>12&63&255)&255;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=b;p=128+((c[n>>2]|0)>>>6&63&255)&255;b=c[j>>2]|0;c[j>>2]=b+1;a[b>>0]=p;b=128+(c[n>>2]&63&255)&255;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=b;break}}}while(0);c[l>>2]=(c[l>>2]|0)+1}ce(c[g>>2]|0,c[h>>2]|0,(c[j>>2]|0)-(c[h>>2]|0)|0,13);i=m;return}function zs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+32|0;f=e+24|0;j=e+16|0;g=e;k=e+8|0;c[f>>2]=a;c[e+20>>2]=b;c[j>>2]=d;d=Sd(c[c[j>>2]>>2]|0)|0;if((d|0)==5){ae(c[f>>2]|0);i=e;return}else if((d|0)==1){b=Qd(c[c[j>>2]>>2]|0)|0;a=g;c[a>>2]=b;c[a+4>>2]=D;do{if((c[g+4>>2]|0)<0){a=g;if(!((c[a>>2]|0)==0?(c[a+4>>2]|0)==-2147483648:0)){b=g;b=$K(0,0,c[b>>2]|0,c[b+4>>2]|0)|0;a=g;c[a>>2]=b;c[a+4>>2]=D;break}Xd(c[f>>2]|0,16320,-1);i=e;return}}while(0);a=g;$d(c[f>>2]|0,c[a>>2]|0,c[a+4>>2]|0);i=e;return}else{h[k>>3]=+Md(c[c[j>>2]>>2]|0);if(+h[k>>3]<0.0){h[k>>3]=-+h[k>>3]}Vd(c[f>>2]|0,+h[k>>3]);i=e;return}}function As(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0.0;m=i;i=i+48|0;e=m+8|0;g=m+36|0;p=m+28|0;o=m+20|0;l=m+24|0;j=m;n=m+32|0;c[g>>2]=a;c[p>>2]=b;c[o>>2]=d;c[l>>2]=0;do{if((c[p>>2]|0)==2){if(5==(Sd(c[(c[o>>2]|0)+4>>2]|0)|0)){i=m;return}else{p=Od(c[(c[o>>2]|0)+4>>2]|0)|0;c[l>>2]=p;p=(c[l>>2]|0)>30?30:p;c[l>>2]=p;c[l>>2]=(c[l>>2]|0)<0?0:p;break}}}while(0);if((Sd(c[c[o>>2]>>2]|0)|0)==5){i=m;return}h[j>>3]=+Md(c[c[o>>2]>>2]|0);if((c[l>>2]|0)==0){if(+h[j>>3]>=0.0&+h[j>>3]<9223372036854776000.0){q=+h[j>>3]+.5;h[j>>3]=+(~~q>>>0>>>0)+4294967296.0*+((+O(q)>=1.0?q>0.0?(ea(+N(q/4294967296.0),4294967295.0)|0)>>>0:~~+_((q- +(~~q>>>0))/4294967296.0)>>>0:0)|0)}else{f=8}}else{f=8}do{if((f|0)==8){if((c[l>>2]|0)==0){if(+h[j>>3]<0.0){if(-+h[j>>3]<9223372036854776000.0){q=-+h[j>>3]+.5;h[j>>3]=-(+(~~q>>>0>>>0)+4294967296.0*+((+O(q)>=1.0?q>0.0?(ea(+N(q/4294967296.0),4294967295.0)|0)>>>0:~~+_((q- +(~~q>>>0))/4294967296.0)>>>0:0)|0));break}}}q=+h[j>>3];c[e>>2]=c[l>>2];p=e+4|0;h[k>>3]=q;c[p>>2]=c[k>>2];c[p+4>>2]=c[k+4>>2];c[n>>2]=wc(16384,e)|0;if((c[n>>2]|0)!=0){p=c[n>>2]|0;zt(p,j,Ub(c[n>>2]|0)|0,1)|0;oc(c[n>>2]|0);break}ke(c[g>>2]|0);i=m;return}}while(0);Vd(c[g>>2]|0,+h[j>>3]);i=m;return}function Bs(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+24|0;n=g+4|0;j=g+8|0;m=g+12|0;l=g+16|0;k=g+20|0;c[h>>2]=b;c[g>>2]=e;c[n>>2]=f;c[m>>2]=Jd(c[c[n>>2]>>2]|0)|0;c[k>>2]=Kd(c[c[n>>2]>>2]|0)|0;if((c[m>>2]|0)==0){i=g;return}b=c[h>>2]|0;n=c[k>>2]|0;n=dL(n|0,((n|0)<0)<<31>>31|0,1,0)|0;c[j>>2]=Rt(b,n,D)|0;if((c[j>>2]|0)==0){i=g;return}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[k>>2]|0)){break}a[(c[j>>2]|0)+(c[l>>2]|0)>>0]=a[(c[m>>2]|0)+(c[l>>2]|0)>>0]&~(a[136+(d[(c[m>>2]|0)+(c[l>>2]|0)>>0]|0)>>0]&32);c[l>>2]=(c[l>>2]|0)+1}ce(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,13);i=g;return}function Cs(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+24|0;n=g+4|0;j=g+8|0;m=g+12|0;l=g+16|0;k=g+20|0;c[h>>2]=b;c[g>>2]=e;c[n>>2]=f;c[m>>2]=Jd(c[c[n>>2]>>2]|0)|0;c[k>>2]=Kd(c[c[n>>2]>>2]|0)|0;if((c[m>>2]|0)==0){i=g;return}b=c[h>>2]|0;n=c[k>>2]|0;n=dL(n|0,((n|0)<0)<<31>>31|0,1,0)|0;c[j>>2]=Rt(b,n,D)|0;if((c[j>>2]|0)==0){i=g;return}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[k>>2]|0)){break}a[(c[j>>2]|0)+(c[l>>2]|0)>>0]=a[784+(d[(c[m>>2]|0)+(c[l>>2]|0)>>0]|0)>>0]|0;c[l>>2]=(c[l>>2]|0)+1}ce(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,13);i=g;return}function Ds(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e>>2]=b;c[e+4>>2]=d;a=c[f>>2]|0;ce(a,Sf()|0,-1,0);i=e;return}function Es(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+48|0;j=l+16|0;p=l+24|0;m=l+20|0;g=l+12|0;n=l+8|0;k=l+4|0;h=l;o=l+32|0;c[j>>2]=b;c[l+28>>2]=e;c[p>>2]=f;c[n>>2]=Hd(c[c[p>>2]>>2]|0)|0;c[g>>2]=Kd(c[c[p>>2]>>2]|0)|0;e=c[j>>2]|0;b=c[g>>2]|0;b=nL(b|0,((b|0)<0)<<31>>31|0,2,0)|0;b=dL(b|0,D|0,1,0)|0;b=Rt(e,b,D)|0;c[k>>2]=b;c[h>>2]=b;if((c[k>>2]|0)==0){i=l;return}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[g>>2]|0)){break}a[o>>0]=a[c[n>>2]>>0]|0;p=a[16360+((d[o>>0]|0)>>4&15)>>0]|0;b=c[h>>2]|0;c[h>>2]=b+1;a[b>>0]=p;b=a[16360+(a[o>>0]&15)>>0]|0;p=c[h>>2]|0;c[h>>2]=p+1;a[p>>0]=b;c[m>>2]=(c[m>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+1}a[c[h>>2]>>0]=0;ce(c[j>>2]|0,c[k>>2]|0,c[g>>2]<<1,13);i=l;return}function Fs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+32|0;f=e+16|0;g=e;c[f>>2]=a;c[e+12>>2]=b;c[e+8>>2]=d;Bc(8,g);if((c[g+4>>2]|0)<0){b=g;b=$K(0,0,c[b>>2]|0,c[b+4>>2]&2147483647|0)|0;a=g;c[a>>2]=b;c[a+4>>2]=D}a=g;$d(c[f>>2]|0,c[a>>2]|0,c[a+4>>2]|0);i=e;return}function Gs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+16|0;j=e+4|0;f=e+8|0;g=e+12|0;c[h>>2]=a;c[e>>2]=b;c[j>>2]=d;a=Od(c[c[j>>2]>>2]|0)|0;c[f>>2]=a;c[f>>2]=(c[f>>2]|0)<1?1:a;a=c[f>>2]|0;c[g>>2]=Rt(c[h>>2]|0,a,((a|0)<0)<<31>>31)|0;if((c[g>>2]|0)==0){i=e;return}Bc(c[f>>2]|0,c[g>>2]|0);Td(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0,13);i=e;return}function Hs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+12|0;g=e+4|0;h=e+8|0;c[f>>2]=a;c[e>>2]=b;c[g>>2]=d;c[h>>2]=St(c[f>>2]|0)|0;if((Tt(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+4>>2]|0,c[h>>2]|0)|0)==0){i=e;return}de(c[f>>2]|0,c[c[g>>2]>>2]|0);i=e;return}function Is(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e>>2]=b;c[e+4>>2]=d;a=c[f>>2]|0;ce(a,Tf()|0,-1,0);i=e;return}function Js(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e;g=e+8|0;c[e+12>>2]=a;c[e+4>>2]=b;c[g>>2]=d;a=Od(c[c[g>>2]>>2]|0)|0;c[f>>2]=Jd(c[(c[g>>2]|0)+4>>2]|0)|0;zc(a,1768,f);i=e;return}function Ks(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+12|0;h=e+4|0;g=e+8|0;c[f>>2]=a;c[e>>2]=b;c[h>>2]=d;a=Jd(c[c[h>>2]>>2]|0)|0;c[g>>2]=a;if((a|0)==0){i=e;return}h=c[f>>2]|0;Zd(h,Sb(c[g>>2]|0)|0);i=e;return}function Ls(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+12|0;h=e+4|0;f=e+8|0;c[g>>2]=a;c[e>>2]=b;c[h>>2]=d;c[f>>2]=Od(c[c[h>>2]>>2]|0)|0;a=c[g>>2]|0;ce(a,Vb(c[f>>2]|0)|0,-1,0);i=e;return}function Ms(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,j=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;s=i;i=i+128|0;j=s;m=s+68|0;p=s+60|0;g=s+16|0;t=s+24|0;q=s+76|0;r=s+56|0;o=s+72|0;l=s+48|0;n=s+40|0;v=s+36|0;w=s+52|0;x=s+8|0;y=s+32|0;u=s+44|0;c[m>>2]=b;c[s+64>>2]=e;c[p>>2]=f;f=Sd(c[c[p>>2]>>2]|0)|0;if((f|0)==4){c[r>>2]=0;c[o>>2]=Hd(c[c[p>>2]>>2]|0)|0;c[l>>2]=Kd(c[c[p>>2]>>2]|0)|0;e=c[m>>2]|0;b=c[l>>2]|0;b=nL(2,0,b|0,((b|0)<0)<<31>>31|0)|0;b=dL(b|0,D|0,4,0)|0;c[r>>2]=Rt(e,b,D)|0;if((c[r>>2]|0)==0){i=s;return}c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[l>>2]|0)){break}a[(c[r>>2]|0)+((c[n>>2]<<1)+2)>>0]=a[16360+(a[(c[o>>2]|0)+(c[n>>2]|0)>>0]>>4&15)>>0]|0;a[(c[r>>2]|0)+((c[n>>2]<<1)+3)>>0]=a[16360+(a[(c[o>>2]|0)+(c[n>>2]|0)>>0]&15)>>0]|0;c[n>>2]=(c[n>>2]|0)+1}a[(c[r>>2]|0)+((c[l>>2]<<1)+2)>>0]=39;a[(c[r>>2]|0)+((c[l>>2]<<1)+3)>>0]=0;a[c[r>>2]>>0]=88;a[(c[r>>2]|0)+1>>0]=39;ce(c[m>>2]|0,c[r>>2]|0,-1,-1);oc(c[r>>2]|0);i=s;return}else if((f|0)==2){h[g>>3]=+Md(c[c[p>>2]>>2]|0);h[k>>3]=+h[g>>3];c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];yc(50,q,16344,j)|0;zt(q,t,20,1)|0;if(+h[g>>3]!=+h[t>>3]){h[k>>3]=+h[g>>3];c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];yc(50,q,16352,j)|0}ce(c[m>>2]|0,q,-1,-1);i=s;return}else if((f|0)==3){c[y>>2]=Jd(c[c[p>>2]>>2]|0)|0;if((c[y>>2]|0)==0){i=s;return}c[v>>2]=0;b=x;c[b>>2]=0;c[b+4>>2]=0;while(1){if((a[(c[y>>2]|0)+(c[v>>2]|0)>>0]|0)==0){break}if((d[(c[y>>2]|0)+(c[v>>2]|0)>>0]|0)==39){e=x;e=dL(c[e>>2]|0,c[e+4>>2]|0,1,0)|0;b=x;c[b>>2]=e;c[b+4>>2]=D}c[v>>2]=(c[v>>2]|0)+1}e=c[m>>2]|0;f=c[v>>2]|0;b=x;b=dL(f|0,((f|0)<0)<<31>>31|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=dL(b|0,D|0,3,0)|0;c[u>>2]=Rt(e,b,D)|0;if((c[u>>2]|0)==0){i=s;return}a[c[u>>2]>>0]=39;c[v>>2]=0;c[w>>2]=1;while(1){if((a[(c[y>>2]|0)+(c[v>>2]|0)>>0]|0)==0){break}e=a[(c[y>>2]|0)+(c[v>>2]|0)>>0]|0;b=c[w>>2]|0;c[w>>2]=b+1;a[(c[u>>2]|0)+b>>0]=e;if((d[(c[y>>2]|0)+(c[v>>2]|0)>>0]|0)==39){b=c[w>>2]|0;c[w>>2]=b+1;a[(c[u>>2]|0)+b>>0]=39}c[v>>2]=(c[v>>2]|0)+1}b=c[w>>2]|0;c[w>>2]=b+1;a[(c[u>>2]|0)+b>>0]=39;a[(c[u>>2]|0)+(c[w>>2]|0)>>0]=0;ce(c[m>>2]|0,c[u>>2]|0,c[w>>2]|0,13);i=s;return}else if((f|0)==1){de(c[m>>2]|0,c[c[p>>2]>>2]|0);i=s;return}else{ce(c[m>>2]|0,16376,4,0);i=s;return}}function Ns(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+12|0;f=e+8|0;c[g>>2]=a;c[e>>2]=b;c[e+4>>2]=d;c[f>>2]=re(c[g>>2]|0)|0;b=c[g>>2]|0;a=eg(c[f>>2]|0)|0;$d(b,a,D);i=e;return}function Os(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+12|0;f=e+8|0;c[g>>2]=a;c[e>>2]=b;c[e+4>>2]=d;c[f>>2]=re(c[g>>2]|0)|0;a=c[g>>2]|0;Zd(a,fg(c[f>>2]|0)|0);i=e;return}function Ps(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+12|0;f=e+8|0;c[g>>2]=a;c[e>>2]=b;c[e+4>>2]=d;c[f>>2]=re(c[g>>2]|0)|0;a=c[g>>2]|0;Zd(a,gg(c[f>>2]|0)|0);i=e;return}function Qs(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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;r=i;i=i+80|0;j=r+64|0;k=r+56|0;u=r+52|0;v=r+48|0;n=r+44|0;l=r+40|0;x=r+36|0;q=r+32|0;o=r+24|0;s=r;w=r+16|0;p=r+12|0;m=r+8|0;g=r+20|0;t=r+28|0;c[j>>2]=b;c[r+60>>2]=e;c[k>>2]=f;c[u>>2]=Jd(c[c[k>>2]>>2]|0)|0;if((c[u>>2]|0)==0){i=r;return}c[x>>2]=Kd(c[c[k>>2]>>2]|0)|0;c[v>>2]=Jd(c[(c[k>>2]|0)+4>>2]|0)|0;if((c[v>>2]|0)==0){i=r;return}if((d[c[v>>2]>>0]|0|0)==0){de(c[j>>2]|0,c[c[k>>2]>>2]|0);i=r;return}c[q>>2]=Kd(c[(c[k>>2]|0)+4>>2]|0)|0;c[n>>2]=Jd(c[(c[k>>2]|0)+8>>2]|0)|0;if((c[n>>2]|0)==0){i=r;return}c[o>>2]=Kd(c[(c[k>>2]|0)+8>>2]|0)|0;e=(c[x>>2]|0)+1|0;b=s;c[b>>2]=e;c[b+4>>2]=((e|0)<0)<<31>>31;b=s;c[l>>2]=Rt(c[j>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;if((c[l>>2]|0)==0){i=r;return}c[w>>2]=(c[x>>2]|0)-(c[q>>2]|0);c[m>>2]=0;c[p>>2]=0;while(1){if((c[p>>2]|0)>(c[w>>2]|0)){h=18;break}if((d[(c[u>>2]|0)+(c[p>>2]|0)>>0]|0|0)!=(d[c[v>>2]>>0]|0|0)){h=11}else{if((XK((c[u>>2]|0)+(c[p>>2]|0)|0,c[v>>2]|0,c[q>>2]|0)|0)!=0){h=11}else{c[t>>2]=re(c[j>>2]|0)|0;k=(c[o>>2]|0)-(c[q>>2]|0)|0;e=s;k=dL(c[e>>2]|0,c[e+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0;e=s;c[e>>2]=k;c[e+4>>2]=D;e=s;e=$K(c[e>>2]|0,c[e+4>>2]|0,1,0)|0;k=D;b=c[(c[t>>2]|0)+88>>2]|0;f=((b|0)<0)<<31>>31;if((k|0)>(f|0)|(k|0)==(f|0)&e>>>0>b>>>0){h=13;break}c[g>>2]=c[l>>2];c[l>>2]=qc(c[l>>2]|0,c[s>>2]|0)|0;if((c[l>>2]|0)==0){h=15;break}fL((c[l>>2]|0)+(c[m>>2]|0)|0,c[n>>2]|0,c[o>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+(c[o>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[q>>2]|0)-1)}}if((h|0)==11){h=0;e=a[(c[u>>2]|0)+(c[p>>2]|0)>>0]|0;b=c[m>>2]|0;c[m>>2]=b+1;a[(c[l>>2]|0)+b>>0]=e}c[p>>2]=(c[p>>2]|0)+1}if((h|0)==13){je(c[j>>2]|0);oc(c[l>>2]|0);i=r;return}else if((h|0)==15){ke(c[j>>2]|0);oc(c[g>>2]|0);i=r;return}else if((h|0)==18){fL((c[l>>2]|0)+(c[m>>2]|0)|0,(c[u>>2]|0)+(c[p>>2]|0)|0,(c[x>>2]|0)-(c[p>>2]|0)|0)|0;c[m>>2]=(c[m>>2]|0)+((c[x>>2]|0)-(c[p>>2]|0));a[(c[l>>2]|0)+(c[m>>2]|0)>>0]=0;ce(c[j>>2]|0,c[l>>2]|0,c[m>>2]|0,13);i=r;return}}function Rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;j=e+20|0;h=e+8|0;f=e;g=e+16|0;c[j>>2]=a;c[e+12>>2]=b;c[h>>2]=d;c[g>>2]=re(c[j>>2]|0)|0;h=Qd(c[c[h>>2]>>2]|0)|0;b=f;c[b>>2]=h;c[b+4>>2]=D;b=f;h=c[b+4>>2]|0;a=c[(c[g>>2]|0)+88>>2]|0;g=((a|0)<0)<<31>>31;d=c[j>>2]|0;if((h|0)>(g|0)|((h|0)==(g|0)?(c[b>>2]|0)>>>0>a>>>0:0)){je(d);i=e;return}else{fe(d,c[f>>2]|0);i=e;return}}function Ss(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0.0;g=i;i=i+32|0;n=g+24|0;m=g+8|0;j=g+12|0;l=g+16|0;k=g;c[n>>2]=b;c[g+20>>2]=e;c[m>>2]=f;c[j>>2]=se(c[n>>2]|0,32)|0;c[l>>2]=Ye(c[c[m>>2]>>2]|0)|0;if((c[j>>2]|0)==0){i=g;return}if((c[l>>2]|0)==5){i=g;return}f=(c[j>>2]|0)+16|0;n=f;n=dL(c[n>>2]|0,c[n+4>>2]|0,1,0)|0;c[f>>2]=n;c[f+4>>2]=D;f=c[c[m>>2]>>2]|0;if((c[l>>2]|0)!=1){o=+Md(f);n=c[j>>2]|0;h[n>>3]=+h[n>>3]+o;a[(c[j>>2]|0)+25>>0]=1;i=g;return}n=Qd(f)|0;b=k;c[b>>2]=n;c[b+4>>2]=D;b=k;n=c[j>>2]|0;h[n>>3]=+h[n>>3]+(+((c[b>>2]|0)>>>0)+4294967296.0*+(c[b+4>>2]|0));if((d[(c[j>>2]|0)+25>>0]|0|(d[(c[j>>2]|0)+24>>0]|0)|0)!=0){i=g;return}n=k;if((Qt((c[j>>2]|0)+8|0,c[n>>2]|0,c[n+4>>2]|0)|0)==0){i=g;return}a[(c[j>>2]|0)+24>>0]=1;i=g;return}function Ts(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;c[e>>2]=se(c[f>>2]|0,0)|0;if((c[e>>2]|0)==0){i=d;return}b=(c[e>>2]|0)+16|0;g=c[b+4>>2]|0;if(!((g|0)>0|(g|0)==0&(c[b>>2]|0)>>>0>0)){i=d;return}if((a[(c[e>>2]|0)+24>>0]|0)!=0){Xd(c[f>>2]|0,16320,-1);i=d;return}f=c[f>>2]|0;b=c[e>>2]|0;if((a[(c[e>>2]|0)+25>>0]|0)!=0){Vd(f,+h[b>>3]);i=d;return}else{g=b+8|0;$d(f,c[g>>2]|0,c[g+4>>2]|0);i=d;return}}function Us(a){a=a|0;var b=0,d=0,e=0,f=0.0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=se(c[e>>2]|0,0)|0;a=c[e>>2]|0;if((c[d>>2]|0)==0){f=0.0;Vd(a,f);i=b;return}f=+h[c[d>>2]>>3];Vd(a,f);i=b;return}function Vs(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=se(c[e>>2]|0,0)|0;if((c[d>>2]|0)==0){i=b;return}a=(c[d>>2]|0)+16|0;f=c[a+4>>2]|0;if(!((f|0)>0|(f|0)==0&(c[a>>2]|0)>>>0>0)){i=b;return}f=(c[d>>2]|0)+16|0;Vd(c[e>>2]|0,+h[c[d>>2]>>3]/(+((c[f>>2]|0)>>>0)+4294967296.0*+(c[f+4>>2]|0)));i=b;return}function Ws(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;h=e;g=e+4|0;f=e+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[f>>2]=se(c[j>>2]|0,8)|0;if((c[h>>2]|0)!=0){if(5==(Sd(c[c[g>>2]>>2]|0)|0)){i=e;return}}if((c[f>>2]|0)==0){i=e;return}j=c[f>>2]|0;h=j;h=dL(c[h>>2]|0,c[h+4>>2]|0,1,0)|0;c[j>>2]=h;c[j+4>>2]=D;i=e;return}function Xs(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=se(c[e>>2]|0,0)|0;a=c[e>>2]|0;if((c[d>>2]|0)==0){d=0;e=0;$d(a,d,e);i=b;return}e=c[d>>2]|0;d=c[e>>2]|0;e=c[e+4>>2]|0;$d(a,d,e);i=b;return}function Ys(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;o=n+36|0;l=n+32|0;h=n+28|0;m=n+24|0;q=n+20|0;j=n+16|0;g=n+8|0;k=n+4|0;p=n;r=n+12|0;c[o>>2]=b;c[l>>2]=e;c[h>>2]=f;if((Sd(c[c[h>>2]>>2]|0)|0)==5){i=n;return}c[q>>2]=se(c[o>>2]|0,28)|0;if((c[q>>2]|0)==0){i=n;return}c[p>>2]=re(c[o>>2]|0)|0;c[r>>2]=(d[(c[q>>2]|0)+24>>0]|0|0)==0&1;a[(c[q>>2]|0)+24>>0]=2;c[(c[q>>2]|0)+20>>2]=c[(c[p>>2]|0)+88>>2];if((c[r>>2]|0)==0){if((c[l>>2]|0)==2){c[j>>2]=Jd(c[(c[h>>2]|0)+4>>2]|0)|0;c[k>>2]=Kd(c[(c[h>>2]|0)+4>>2]|0)|0}else{c[j>>2]=16312;c[k>>2]=1}if((c[k>>2]|0)!=0){Jt(c[q>>2]|0,c[j>>2]|0,c[k>>2]|0)}}c[m>>2]=Jd(c[c[h>>2]>>2]|0)|0;c[g>>2]=Kd(c[c[h>>2]>>2]|0)|0;if((c[m>>2]|0)==0){i=n;return}Jt(c[q>>2]|0,c[m>>2]|0,c[g>>2]|0);i=n;return}function Zs(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;f=b+4|0;e=b;c[f>>2]=a;c[e>>2]=se(c[f>>2]|0,0)|0;if((c[e>>2]|0)==0){i=b;return}if((d[(c[e>>2]|0)+25>>0]|0|0)==2){je(c[f>>2]|0);i=b;return}a=c[f>>2]|0;if((d[(c[e>>2]|0)+25>>0]|0|0)==1){ke(a);i=b;return}else{ce(a,vc(c[e>>2]|0)|0,-1,13);i=b;return}}function _s(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=i;i=i+48|0;f=k+36|0;n=k+32|0;l=k+28|0;h=k+24|0;g=k+20|0;e=k+16|0;p=k+8|0;o=k+4|0;j=k;m=k+12|0;c[f>>2]=a;c[n>>2]=b;c[l>>2]=d;c[e>>2]=0;c[o>>2]=re(c[f>>2]|0)|0;c[g>>2]=Jd(c[c[l>>2]>>2]|0)|0;c[h>>2]=Jd(c[(c[l>>2]|0)+4>>2]|0)|0;c[p>>2]=Kd(c[c[l>>2]>>2]|0)|0;if((c[p>>2]|0)>(c[(c[o>>2]|0)+120>>2]|0)){Xd(c[f>>2]|0,16224,-1);i=k;return}do{if((c[n>>2]|0)==3){c[j>>2]=Jd(c[(c[l>>2]|0)+8>>2]|0)|0;if((c[j>>2]|0)==0){i=k;return}if((Ht(c[j>>2]|0,-1)|0)==1){c[e>>2]=It(j)|0;break}Xd(c[f>>2]|0,16264,-1);i=k;return}}while(0);if((c[h>>2]|0)==0){i=k;return}if((c[g>>2]|0)==0){i=k;return}c[m>>2]=qe(c[f>>2]|0)|0;p=c[f>>2]|0;Zd(p,Af(c[g>>2]|0,c[h>>2]|0,c[m>>2]|0,c[e>>2]|0)|0);i=k;return}function $s(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;b=a+8|0;d=a;e=a+4|0;c[d>>2]=1896;c[e>>2]=15552;c[b>>2]=0;while(1){if((c[b>>2]|0)>=8){break}rr(c[d>>2]|0,(c[e>>2]|0)+((c[b>>2]|0)*36|0)|0);c[b>>2]=(c[b>>2]|0)+1}i=a;return}function at(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;b=a+8|0;d=a;e=a+4|0;c[d>>2]=1896;c[e>>2]=15336;c[b>>2]=0;while(1){if((c[b>>2]|0)>=3){break}rr(c[d>>2]|0,(c[e>>2]|0)+((c[b>>2]|0)*36|0)|0);c[b>>2]=(c[b>>2]|0)+1}i=a;return}function bt(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+64|0;m=n;o=n+56|0;s=n+48|0;j=n+44|0;k=n+40|0;p=n+60|0;l=n+24|0;q=n+20|0;r=n+16|0;f=n+32|0;h=n+36|0;c[o>>2]=b;c[n+52>>2]=d;c[s>>2]=e;c[j>>2]=Jd(c[c[s>>2]>>2]|0)|0;c[k>>2]=Jd(c[(c[s>>2]|0)+4>>2]|0)|0;c[q>>2]=c[j>>2];c[r>>2]=0;c[h>>2]=re(c[o>>2]|0)|0;if((c[j>>2]|0)==0){i=n;return}do{if((a[c[q>>2]>>0]|0)==0){g=7;break}c[l>>2]=c[q>>2];c[l+4>>2]=c[r>>2];do{c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0);c[r>>2]=et(c[q>>2]|0,p)|0}while((c[p>>2]|0)==151)}while((c[p>>2]|0)!=22&(c[p>>2]|0)!=125);if((g|0)==7){i=n;return}s=c[h>>2]|0;e=c[j>>2]|0;d=c[k>>2]|0;b=(c[l>>2]|0)+(c[l+4>>2]|0)|0;c[m>>2]=(c[l>>2]|0)-(c[j>>2]|0);c[m+4>>2]=e;c[m+8>>2]=d;c[m+12>>2]=b;c[f>>2]=cf(s,15536,m)|0;ce(c[o>>2]|0,c[f>>2]|0,-1,39);i=n;return}function ct(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;o=i;i=i+80|0;q=o;s=o+64|0;t=o+56|0;f=o+52|0;p=o+48|0;j=o+68|0;m=o+32|0;h=o+24|0;k=o+20|0;l=o+16|0;r=o+40|0;n=o+44|0;c[s>>2]=b;c[o+60>>2]=d;c[t>>2]=e;c[f>>2]=Jd(c[c[t>>2]>>2]|0)|0;c[p>>2]=Jd(c[(c[t>>2]|0)+4>>2]|0)|0;c[h>>2]=3;c[k>>2]=c[f>>2];c[l>>2]=0;c[n>>2]=re(c[s>>2]|0)|0;if((c[f>>2]|0)==0){i=o;return}while(1){if((a[c[k>>2]>>0]|0)==0){g=8;break}c[m>>2]=c[k>>2];c[m+4>>2]=c[l>>2];do{c[k>>2]=(c[k>>2]|0)+(c[l>>2]|0);c[l>>2]=et(c[k>>2]|0,j)|0}while((c[j>>2]|0)==151);t=(c[h>>2]|0)+1|0;c[h>>2]=t;c[h>>2]=(c[j>>2]|0)==122|(c[j>>2]|0)==107?0:t;if((c[h>>2]|0)!=2){continue}if(!((c[j>>2]|0)!=137&(c[j>>2]|0)!=46&(c[j>>2]|0)!=5)){break}}if((g|0)==8){i=o;return}t=c[n>>2]|0;e=c[f>>2]|0;d=c[p>>2]|0;b=(c[m>>2]|0)+(c[m+4>>2]|0)|0;c[q>>2]=(c[m>>2]|0)-(c[f>>2]|0);c[q+4>>2]=e;c[q+8>>2]=d;c[q+12>>2]=b;c[r>>2]=cf(t,15536,q)|0;ce(c[s>>2]|0,c[r>>2]|0,-1,39);i=o;return}function dt(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;n=i;i=i+80|0;k=n;m=n+64|0;u=n+56|0;g=n+52|0;j=n+48|0;l=n+44|0;h=n+68|0;s=n+32|0;o=n+28|0;f=n+24|0;q=n+20|0;t=n+16|0;r=n+36|0;p=n+40|0;c[m>>2]=b;c[n+60>>2]=d;c[u>>2]=e;c[g>>2]=re(c[m>>2]|0)|0;c[j>>2]=0;c[h>>2]=Jd(c[c[u>>2]>>2]|0)|0;c[s>>2]=Jd(c[(c[u>>2]|0)+4>>2]|0)|0;c[o>>2]=Jd(c[(c[u>>2]|0)+8>>2]|0)|0;if((c[h>>2]|0)==0){i=n;return}if((c[s>>2]|0)==0){i=n;return}c[f>>2]=c[h>>2];while(1){if((a[c[f>>2]>>0]|0)==0){break}c[q>>2]=et(c[f>>2]|0,t)|0;if((c[t>>2]|0)==105){do{c[f>>2]=(c[f>>2]|0)+(c[q>>2]|0);c[q>>2]=et(c[f>>2]|0,t)|0}while((c[t>>2]|0)==151);c[r>>2]=ft(c[g>>2]|0,c[f>>2]|0,c[q>>2]|0)|0;if((c[r>>2]|0)==0){break}gt(c[r>>2]|0)|0;if(0==(Dc(c[s>>2]|0,c[r>>2]|0)|0)){u=c[g>>2]|0;e=(c[f>>2]|0)-(c[h>>2]|0)|0;d=c[h>>2]|0;b=c[o>>2]|0;c[k>>2]=(c[j>>2]|0)!=0?c[j>>2]|0:1784;c[k+4>>2]=e;c[k+8>>2]=d;c[k+12>>2]=b;c[p>>2]=cf(u,15520,k)|0;cc(c[g>>2]|0,c[j>>2]|0);c[j>>2]=c[p>>2];c[h>>2]=(c[f>>2]|0)+(c[q>>2]|0)}cc(c[g>>2]|0,c[r>>2]|0)}c[f>>2]=(c[f>>2]|0)+(c[q>>2]|0)}u=c[g>>2]|0;b=c[h>>2]|0;c[k>>2]=(c[j>>2]|0)!=0?c[j>>2]|0:1784;c[k+4>>2]=b;c[l>>2]=cf(u,8800,k)|0;ce(c[m>>2]|0,c[l>>2]|0,-1,39);cc(c[g>>2]|0,c[j>>2]|0);i=n;return}function et(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;f=g+24|0;h=g;m=g+4|0;j=g+8|0;k=g+12|0;n=g+16|0;o=g+20|0;c[h>>2]=b;c[m>>2]=e;do{switch(d[c[h>>2]>>0]|0){case 61:{c[c[m>>2]>>2]=79;c[f>>2]=1+((d[(c[h>>2]|0)+1>>0]|0)==61&1);b=c[f>>2]|0;i=g;return b|0};case 41:{c[c[m>>2]>>2]=23;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 40:{c[c[m>>2]>>2]=22;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 43:{c[c[m>>2]>>2]=89;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 60:{b=d[(c[h>>2]|0)+1>>0]|0;c[k>>2]=b;if((b|0)==61){c[c[m>>2]>>2]=81;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}if((c[k>>2]|0)==62){c[c[m>>2]>>2]=78;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}h=c[m>>2]|0;if((c[k>>2]|0)==60){c[h>>2]=87;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}else{c[h>>2]=82;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}};case 38:{c[c[m>>2]>>2]=85;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 47:{if((d[(c[h>>2]|0)+1>>0]|0)==42){if((d[(c[h>>2]|0)+2>>0]|0)!=0){c[j>>2]=3;c[k>>2]=d[(c[h>>2]|0)+2>>0]|0;while(1){if((c[k>>2]|0)==42){if((d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==47){break}}b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}if((c[k>>2]|0)!=0){c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=151;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0}}c[c[m>>2]>>2]=92;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 13:case 12:case 10:case 9:case 32:{c[j>>2]=1;while(1){if((a[136+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&1|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=151;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0};case 126:{c[c[m>>2]>>2]=96;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 45:{if((d[(c[h>>2]|0)+1>>0]|0)!=45){c[c[m>>2]>>2]=90;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}c[j>>2]=2;while(1){b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}if((c[k>>2]|0)==10){break}c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=151;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0};case 44:{c[c[m>>2]>>2]=26;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 34:case 39:case 96:{c[n>>2]=d[c[h>>2]>>0]|0;c[j>>2]=1;while(1){b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}if((c[k>>2]|0)==(c[n>>2]|0)){if((d[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]|0)!=(c[n>>2]|0)){break}c[j>>2]=(c[j>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}if((c[k>>2]|0)==39){c[c[m>>2]>>2]=97;c[f>>2]=(c[j>>2]|0)+1;b=c[f>>2]|0;i=g;return b|0}h=c[m>>2]|0;if((c[k>>2]|0)!=0){c[h>>2]=27;c[f>>2]=(c[j>>2]|0)+1;b=c[f>>2]|0;i=g;return b|0}else{c[h>>2]=150;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0}};case 33:{j=c[m>>2]|0;if((d[(c[h>>2]|0)+1>>0]|0)!=61){c[j>>2]=150;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}else{c[j>>2]=78;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}};case 124:{j=c[m>>2]|0;if((d[(c[h>>2]|0)+1>>0]|0)!=124){c[j>>2]=86;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}else{c[j>>2]=94;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}};case 46:{if((a[136+(d[(c[h>>2]|0)+1>>0]|0)>>0]&4|0)==0){c[c[m>>2]>>2]=122;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}break};case 62:{b=d[(c[h>>2]|0)+1>>0]|0;c[k>>2]=b;if((b|0)==61){c[c[m>>2]>>2]=83;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}h=c[m>>2]|0;if((c[k>>2]|0)==62){c[h>>2]=88;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}else{c[h>>2]=80;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}};case 42:{c[c[m>>2]>>2]=91;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 37:{c[c[m>>2]>>2]=93;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 59:{c[c[m>>2]>>2]=1;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 88:case 120:{if((d[(c[h>>2]|0)+1>>0]|0)==39){c[c[m>>2]>>2]=134;c[j>>2]=2;while(1){k=c[j>>2]|0;if((a[136+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&8|0)==0){break}c[j>>2]=k+1}if((d[(c[h>>2]|0)+k>>0]|0)!=39){l=120}else{if(((c[j>>2]|0)%2|0|0)!=0){l=120}}a:do{if((l|0)==120){c[c[m>>2]>>2]=150;while(1){if((d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==0){break a}if((d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==39){break a}c[j>>2]=(c[j>>2]|0)+1}}}while(0);if((a[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)!=0){c[j>>2]=(c[j>>2]|0)+1}c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0}else{l=127}break};case 91:{c[j>>2]=1;c[k>>2]=d[c[h>>2]>>0]|0;while(1){if((c[k>>2]|0)==93){break}b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=(c[k>>2]|0)==93?27:150;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0};case 63:{c[c[m>>2]>>2]=135;c[j>>2]=1;while(1){k=c[j>>2]|0;if((a[136+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&4|0)==0){break}c[j>>2]=k+1}c[f>>2]=k;b=c[f>>2]|0;i=g;return b|0};case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{break};case 58:case 35:case 64:case 36:{c[o>>2]=0;c[c[m>>2]>>2]=135;c[j>>2]=1;while(1){b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}if((a[136+(c[k>>2]&255)>>0]&70|0)!=0){c[o>>2]=(c[o>>2]|0)+1}else{if((c[k>>2]|0)==40){if((c[o>>2]|0)>0){l=101;break}}if((c[k>>2]|0)!=58){break}if((d[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]|0)!=58){break}c[j>>2]=(c[j>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}do{if((l|0)==101){while(1){c[j>>2]=(c[j>>2]|0)+1;b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}if((a[136+(c[k>>2]&255)>>0]&1|0)!=0){break}if((c[k>>2]|0)!=41){l=101}else{break}}if((c[k>>2]|0)==41){c[j>>2]=(c[j>>2]|0)+1;break}else{c[c[m>>2]>>2]=150;break}}}while(0);if((c[o>>2]|0)==0){c[c[m>>2]>>2]=150}c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0};default:{l=127}}}while(0);if((l|0)==127){if((a[136+(d[c[h>>2]>>0]|0)>>0]&70|0)==0){c[c[m>>2]>>2]=150;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}c[j>>2]=1;while(1){if((a[136+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&70|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}b=$g(c[h>>2]|0,c[j>>2]|0)|0;c[c[m>>2]>>2]=b;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0}c[c[m>>2]>>2]=132;c[j>>2]=0;while(1){k=c[j>>2]|0;if((a[136+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&4|0)==0){break}c[j>>2]=k+1}if((d[(c[h>>2]|0)+k>>0]|0)==46){c[j>>2]=(c[j>>2]|0)+1;while(1){if((a[136+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&4|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=133}if((d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==101){l=75}else{if((d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==69){l=75}}do{if((l|0)==75){if((a[136+(d[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]|0)>>0]&4|0)==0){if((d[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]|0)!=43){if((d[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]|0)!=45){break}}if((a[136+(d[(c[h>>2]|0)+((c[j>>2]|0)+2)>>0]|0)>>0]&4|0)==0){break}}c[j>>2]=(c[j>>2]|0)+2;while(1){if((a[136+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&4|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=133}}while(0);while(1){if((a[136+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&70|0)==0){break}c[c[m>>2]>>2]=150;c[j>>2]=(c[j>>2]|0)+1}c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0}function ft(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;l=f;j=f+4|0;k=f+8|0;h=f+12|0;c[l>>2]=b;c[j>>2]=d;c[k>>2]=e;if((c[j>>2]|0)==0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}c[h>>2]=$e(c[l>>2]|0,(c[k>>2]|0)+1|0)|0;if((c[h>>2]|0)!=0){fL(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;a[(c[h>>2]|0)+(c[k>>2]|0)>>0]=0}c[g>>2]=c[h>>2];b=c[g>>2]|0;i=f;return b|0}function gt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+12|0;g=d;h=d+16|0;f=d+8|0;j=d+4|0;c[g>>2]=b;if((c[g>>2]|0)==0){c[e>>2]=-1;b=c[e>>2]|0;i=d;return b|0}a[h>>0]=a[c[g>>2]>>0]|0;b=a[h>>0]|0;if((b|0)==91){a[h>>0]=93}else if(!((b|0)==96|(b|0)==34|(b|0)==39)){c[e>>2]=-1;b=c[e>>2]|0;i=d;return b|0}c[f>>2]=1;c[j>>2]=0;while(1){b=c[f>>2]|0;if((a[(c[g>>2]|0)+(c[f>>2]|0)>>0]|0)==(a[h>>0]|0)){if((a[(c[g>>2]|0)+(b+1)>>0]|0)!=(a[h>>0]|0)){break}k=a[h>>0]|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[g>>2]|0)+b>>0]=k;c[f>>2]=(c[f>>2]|0)+1}else{b=a[(c[g>>2]|0)+b>>0]|0;k=c[j>>2]|0;c[j>>2]=k+1;a[(c[g>>2]|0)+k>>0]=b}c[f>>2]=(c[f>>2]|0)+1}a[(c[g>>2]|0)+(c[j>>2]|0)>>0]=0;c[e>>2]=c[j>>2];k=c[e>>2]|0;i=d;return k|0}function ht(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+64|0;g=e+56|0;j=e+52|0;h=e+48|0;f=e;c[g>>2]=a;c[j>>2]=b;c[h>>2]=d;if((pt(c[g>>2]|0,c[j>>2]|0,c[h>>2]|0,f)|0)!=0){i=e;return}qt(f);j=f;Vd(c[g>>2]|0,(+((c[j>>2]|0)>>>0)+4294967296.0*+(c[j+4>>2]|0))/864.0e5);i=e;return}function it(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+176|0;g=e+48|0;j=e+68|0;l=e+64|0;k=e+60|0;f=e;h=e+72|0;c[j>>2]=a;c[l>>2]=b;c[k>>2]=d;if((pt(c[j>>2]|0,c[l>>2]|0,c[k>>2]|0,f)|0)!=0){i=e;return}st(f);k=c[f+12>>2]|0;l=c[f+16>>2]|0;c[g>>2]=c[f+8>>2];c[g+4>>2]=k;c[g+8>>2]=l;yc(100,h,16208,g)|0;ce(c[j>>2]|0,h,-1,-1);i=e;return}function jt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0;e=i;i=i+176|0;g=e+48|0;k=e+68|0;m=e+64|0;l=e+60|0;f=e;j=e+72|0;c[k>>2]=a;c[m>>2]=b;c[l>>2]=d;if((pt(c[k>>2]|0,c[m>>2]|0,c[l>>2]|0,f)|0)!=0){i=e;return}tt(f);l=c[f+24>>2]|0;m=~~+h[f+32>>3];c[g>>2]=c[f+20>>2];c[g+4>>2]=l;c[g+8>>2]=m;yc(100,j,16192,g)|0;ce(c[k>>2]|0,j,-1,-1);i=e;return}function kt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0;e=i;i=i+192|0;g=e+48|0;k=e+80|0;m=e+76|0;l=e+72|0;f=e;j=e+84|0;c[k>>2]=a;c[m>>2]=b;c[l>>2]=d;if((pt(c[k>>2]|0,c[m>>2]|0,c[l>>2]|0,f)|0)!=0){i=e;return}rt(f);d=c[f+12>>2]|0;b=c[f+16>>2]|0;a=c[f+20>>2]|0;l=c[f+24>>2]|0;m=~~+h[f+32>>3];c[g>>2]=c[f+8>>2];c[g+4>>2]=d;c[g+8>>2]=b;c[g+12>>2]=a;c[g+16>>2]=l;c[g+20>>2]=m;yc(100,j,16160,g)|0;ce(c[k>>2]|0,j,-1,-1);i=e;return}function lt(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=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;t=i;i=i+272|0;q=t+112|0;l=t+152|0;y=t+148|0;z=t+144|0;p=t+64|0;x=t+48|0;n=t+140|0;j=t+136|0;o=t+156|0;w=t+124|0;f=t+120|0;m=t+160|0;r=t+56|0;g=t+128|0;s=t;u=t+132|0;c[l>>2]=b;c[y>>2]=d;c[z>>2]=e;c[f>>2]=Jd(c[c[z>>2]>>2]|0)|0;if((c[f>>2]|0)==0){i=t;return}if((pt(c[l>>2]|0,(c[y>>2]|0)-1|0,(c[z>>2]|0)+4|0,p)|0)!=0){i=t;return}c[w>>2]=re(c[l>>2]|0)|0;c[n>>2]=0;b=x;c[b>>2]=1;c[b+4>>2]=0;a:while(1){if((a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0)==0){break}if((a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0)==37){switch(a[(c[f>>2]|0)+((c[n>>2]|0)+1)>>0]|0){case 102:{d=x;b=x;c[b>>2]=dL(c[d>>2]|0,c[d+4>>2]|0,8,0)|0;c[b+4>>2]=D;break};case 87:case 83:case 77:case 109:case 72:case 100:{d=x;b=x;c[b>>2]=dL(c[d>>2]|0,c[d+4>>2]|0,1,0)|0;c[b+4>>2]=D;break};case 106:{d=x;b=x;c[b>>2]=dL(c[d>>2]|0,c[d+4>>2]|0,3,0)|0;c[b+4>>2]=D;break};case 74:case 115:{d=x;b=x;c[b>>2]=dL(c[d>>2]|0,c[d+4>>2]|0,50,0)|0;c[b+4>>2]=D;break};case 37:case 119:{break};case 89:{d=x;b=x;c[b>>2]=dL(c[d>>2]|0,c[d+4>>2]|0,8,0)|0;c[b+4>>2]=D;break};default:{v=43;break a}}c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1;d=x;d=dL(c[d>>2]|0,c[d+4>>2]|0,1,0)|0;b=x;c[b>>2]=d;c[b+4>>2]=D}if((v|0)==43){i=t;return}b=x;d=c[b+4>>2]|0;if(d>>>0<0|(d|0)==0&(c[b>>2]|0)>>>0<100){c[o>>2]=m}else{d=x;z=c[d+4>>2]|0;b=c[(c[w>>2]|0)+88>>2]|0;e=((b|0)<0)<<31>>31;if(z>>>0>e>>>0|((z|0)==(e|0)?(c[d>>2]|0)>>>0>b>>>0:0)){je(c[l>>2]|0);i=t;return}c[o>>2]=$e(c[w>>2]|0,c[x>>2]|0)|0;if((c[o>>2]|0)==0){ke(c[l>>2]|0);i=t;return}}qt(p);rt(p);c[j>>2]=0;c[n>>2]=0;while(1){if((a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0)==0){break}v=c[n>>2]|0;b:do{if((a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0)!=37){d=a[(c[f>>2]|0)+v>>0]|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[o>>2]|0)+b>>0]=d}else{c[n>>2]=v+1;do{switch(a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0){case 89:{b=(c[o>>2]|0)+(c[j>>2]|0)|0;c[q>>2]=c[p+8>>2];yc(5,b,16e3,q)|0;c[j>>2]=(Ub((c[o>>2]|0)+(c[j>>2]|0)|0)|0)+(c[j>>2]|0);break b};case 77:{b=(c[o>>2]|0)+(c[j>>2]|0)|0;c[q>>2]=c[p+24>>2];yc(3,b,15960,q)|0;c[j>>2]=(c[j>>2]|0)+2;break b};case 119:{d=p;d=mL(lL(dL(c[d>>2]|0,c[d+4>>2]|0,1296e5,0)|0,D|0,864e5,0)|0,D|0,7,0)|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[o>>2]|0)+b>>0]=((d&255)<<24>>24)+48;break b};case 115:{b=(c[o>>2]|0)+(c[j>>2]|0)|0;e=p;d=q;c[d>>2]=$K(lL(c[e>>2]|0,c[e+4>>2]|0,1e3,0)|0,D|0,413362496,49)|0;c[d+4>>2]=D;yc(30,b,15992,q)|0;c[j>>2]=(Ub((c[o>>2]|0)+(c[j>>2]|0)|0)|0)+(c[j>>2]|0);break b};case 100:{b=(c[o>>2]|0)+(c[j>>2]|0)|0;c[q>>2]=c[p+16>>2];yc(3,b,15960,q)|0;c[j>>2]=(c[j>>2]|0)+2;break b};case 102:{h[r>>3]=+h[p+32>>3];if(+h[r>>3]>59.999){h[r>>3]=59.999}b=(c[o>>2]|0)+(c[j>>2]|0)|0;h[k>>3]=+h[r>>3];c[q>>2]=c[k>>2];c[q+4>>2]=c[k+4>>2];yc(7,b,15968,q)|0;c[j>>2]=(Ub((c[o>>2]|0)+(c[j>>2]|0)|0)|0)+(c[j>>2]|0);break b};case 72:{b=(c[o>>2]|0)+(c[j>>2]|0)|0;c[q>>2]=c[p+20>>2];yc(3,b,15960,q)|0;c[j>>2]=(c[j>>2]|0)+2;break b};case 106:case 87:{x=s+0|0;w=p+0|0;v=x+48|0;do{c[x>>2]=c[w>>2];x=x+4|0;w=w+4|0}while((x|0)<(v|0));a[s+42>>0]=0;c[s+12>>2]=1;c[s+16>>2]=1;qt(s);d=p;b=s;c[g>>2]=lL(dL($K(c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0,D|0,432e5,0)|0,D|0,864e5,0)|0;if((a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0)==87){b=p;b=dL(c[b>>2]|0,c[b+4>>2]|0,432e5,0)|0;b=lL(b|0,D|0,864e5,0)|0;b=mL(b|0,D|0,7,0)|0;c[u>>2]=b;b=(c[o>>2]|0)+(c[j>>2]|0)|0;c[q>>2]=((c[g>>2]|0)+7-(c[u>>2]|0)|0)/7|0;yc(3,b,15960,q)|0;c[j>>2]=(c[j>>2]|0)+2;break b}else{b=(c[o>>2]|0)+(c[j>>2]|0)|0;c[q>>2]=(c[g>>2]|0)+1;yc(4,b,15976,q)|0;c[j>>2]=(c[j>>2]|0)+3;break b}};case 74:{b=(c[o>>2]|0)+(c[j>>2]|0)|0;d=p;h[k>>3]=(+((c[d>>2]|0)>>>0)+4294967296.0*+(c[d+4>>2]|0))/864.0e5;c[q>>2]=c[k>>2];c[q+4>>2]=c[k+4>>2];yc(20,b,15984,q)|0;c[j>>2]=(Ub((c[o>>2]|0)+(c[j>>2]|0)|0)|0)+(c[j>>2]|0);break b};case 109:{b=(c[o>>2]|0)+(c[j>>2]|0)|0;c[q>>2]=c[p+12>>2];yc(3,b,15960,q)|0;c[j>>2]=(c[j>>2]|0)+2;break b};case 83:{b=(c[o>>2]|0)+(c[j>>2]|0)|0;c[q>>2]=~~+h[p+32>>3];yc(3,b,15960,q)|0;c[j>>2]=(c[j>>2]|0)+2;break b};default:{b=c[j>>2]|0;c[j>>2]=b+1;a[(c[o>>2]|0)+b>>0]=37;break b}}}while(0)}}while(0);c[n>>2]=(c[n>>2]|0)+1}a[(c[o>>2]|0)+(c[j>>2]|0)>>0]=0;ce(c[l>>2]|0,c[o>>2]|0,-1,(c[o>>2]|0)==(m|0)?-1:39);i=t;return}function mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e>>2]=b;c[e+4>>2]=d;jt(c[f>>2]|0,0,0);i=e;return}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e>>2]=b;c[e+4>>2]=d;kt(c[f>>2]|0,0,0);i=e;return}function ot(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e>>2]=b;c[e+4>>2]=d;it(c[f>>2]|0,0,0);i=e;return}function pt(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;n=i;i=i+32|0;m=n+28|0;k=n;j=n+4|0;o=n+8|0;l=n+12|0;p=n+16|0;q=n+20|0;g=n+24|0;c[k>>2]=b;c[j>>2]=d;c[o>>2]=e;c[l>>2]=f;e=(c[l>>2]|0)+0|0;f=e+48|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));if((c[j>>2]|0)==0){c[m>>2]=ut(c[k>>2]|0,c[l>>2]|0)|0;b=c[m>>2]|0;i=n;return b|0}b=Sd(c[c[o>>2]>>2]|0)|0;c[g>>2]=b;do{if((b|0)==2){h=5}else{if((c[g>>2]|0)==1){h=5}else{c[q>>2]=Jd(c[c[o>>2]>>2]|0)|0;if((c[q>>2]|0)!=0){if((vt(c[k>>2]|0,c[q>>2]|0,c[l>>2]|0)|0)==0){break}}c[m>>2]=1;b=c[m>>2]|0;i=n;return b|0}}}while(0);if((h|0)==5){r=+Md(c[c[o>>2]>>2]|0)*864.0e5+.5;d=+O(r)>=1.0?r>0.0?(ea(+N(r/4294967296.0),4294967295.0)|0)>>>0:~~+_((r- +(~~r>>>0))/4294967296.0)>>>0:0;b=c[l>>2]|0;c[b>>2]=~~r>>>0;c[b+4>>2]=d;a[(c[l>>2]|0)+42>>0]=1}c[p>>2]=1;while(1){if((c[p>>2]|0)>=(c[j>>2]|0)){h=15;break}c[q>>2]=Jd(c[(c[o>>2]|0)+(c[p>>2]<<2)>>2]|0)|0;if((c[q>>2]|0)==0){h=13;break}if((wt(c[k>>2]|0,c[q>>2]|0,c[l>>2]|0)|0)!=0){h=13;break}c[p>>2]=(c[p>>2]|0)+1}if((h|0)==13){c[m>>2]=1;b=c[m>>2]|0;i=n;return b|0}else if((h|0)==15){c[m>>2]=0;b=c[m>>2]|0;i=n;return b|0}return 0}function qt(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0;d=i;i=i+32|0;n=d+28|0;e=d;k=d+4|0;m=d+8|0;f=d+12|0;g=d+16|0;j=d+20|0;l=d+24|0;c[n>>2]=b;if((a[(c[n>>2]|0)+42>>0]|0)!=0){i=d;return}if((a[(c[n>>2]|0)+40>>0]|0)!=0){c[e>>2]=c[(c[n>>2]|0)+8>>2];c[k>>2]=c[(c[n>>2]|0)+12>>2];c[m>>2]=c[(c[n>>2]|0)+16>>2]}else{c[e>>2]=2e3;c[k>>2]=1;c[m>>2]=1}if((c[k>>2]|0)<=2){c[e>>2]=(c[e>>2]|0)+ -1;c[k>>2]=(c[k>>2]|0)+12}c[f>>2]=(c[e>>2]|0)/100|0;c[g>>2]=2-(c[f>>2]|0)+((c[f>>2]|0)/4|0);c[j>>2]=(((c[e>>2]|0)+4716|0)*36525|0)/100|0;c[l>>2]=(((c[k>>2]|0)+1|0)*306001|0)/1e4|0;o=(+((c[j>>2]|0)+(c[l>>2]|0)+(c[m>>2]|0)+(c[g>>2]|0)|0)-1524.5)*864.0e5;l=+O(o)>=1.0?o>0.0?(ea(+N(o/4294967296.0),4294967295.0)|0)>>>0:~~+_((o- +(~~o>>>0))/4294967296.0)>>>0:0;m=c[n>>2]|0;c[m>>2]=~~o>>>0;c[m+4>>2]=l;a[(c[n>>2]|0)+42>>0]=1;if((a[(c[n>>2]|0)+41>>0]|0)==0){i=d;return}l=$(c[(c[n>>2]|0)+20>>2]|0,36e5)|0;l=l+((c[(c[n>>2]|0)+24>>2]|0)*6e4|0)|0;o=+h[(c[n>>2]|0)+32>>3]*1.0e3;l=dL(l|0,((l|0)<0)<<31>>31|0,~~o>>>0|0,(+O(o)>=1.0?o>0.0?(ea(+N(o/4294967296.0),4294967295.0)|0)>>>0:~~+_((o- +(~~o>>>0))/4294967296.0)>>>0:0)|0)|0;m=c[n>>2]|0;k=m;l=dL(c[k>>2]|0,c[k+4>>2]|0,l|0,D|0)|0;c[m>>2]=l;c[m+4>>2]=D;if((a[(c[n>>2]|0)+43>>0]|0)==0){i=d;return}l=(c[(c[n>>2]|0)+28>>2]|0)*6e4|0;m=c[n>>2]|0;k=m;l=$K(c[k>>2]|0,c[k+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;c[m>>2]=l;c[m+4>>2]=D;a[(c[n>>2]|0)+40>>0]=0;a[(c[n>>2]|0)+41>>0]=0;a[(c[n>>2]|0)+43>>0]=0;i=d;return}function rt(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;st(c[d>>2]|0);tt(c[d>>2]|0);i=b;return}function st(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;e=h+28|0;f=h;g=h+4|0;d=h+8|0;j=h+12|0;k=h+16|0;l=h+20|0;m=h+24|0;c[e>>2]=b;if((a[(c[e>>2]|0)+40>>0]|0)!=0){i=h;return}b=c[e>>2]|0;if((a[(c[e>>2]|0)+42>>0]|0)!=0){b=dL(c[b>>2]|0,c[b+4>>2]|0,432e5,0)|0;b=lL(b|0,D|0,864e5,0)|0;c[f>>2]=b;c[g>>2]=~~((+(c[f>>2]|0)-1867216.25)/36524.25);c[g>>2]=(c[f>>2]|0)+1+(c[g>>2]|0)-((c[g>>2]|0)/4|0);c[d>>2]=(c[g>>2]|0)+1524;c[j>>2]=~~((+(c[d>>2]|0)-122.1)/365.25);c[k>>2]=((c[j>>2]|0)*36525|0)/100|0;c[l>>2]=~~(+((c[d>>2]|0)-(c[k>>2]|0)|0)/30.6001);c[m>>2]=~~(+(c[l>>2]|0)*30.6001);c[(c[e>>2]|0)+16>>2]=(c[d>>2]|0)-(c[k>>2]|0)-(c[m>>2]|0);b=c[l>>2]|0;c[(c[e>>2]|0)+12>>2]=(c[l>>2]|0)<14?b-1|0:b-13|0;b=c[j>>2]|0;c[(c[e>>2]|0)+8>>2]=(c[(c[e>>2]|0)+12>>2]|0)>2?b-4716|0:b-4715|0}else{c[b+8>>2]=2e3;c[(c[e>>2]|0)+12>>2]=1;c[(c[e>>2]|0)+16>>2]=1}a[(c[e>>2]|0)+40>>0]=1;i=h;return}function tt(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;if((a[(c[e>>2]|0)+41>>0]|0)!=0){i=d;return}qt(c[e>>2]|0);b=c[e>>2]|0;b=dL(c[b>>2]|0,c[b+4>>2]|0,432e5,0)|0;b=mL(b|0,D|0,864e5,0)|0;c[f>>2]=b;h[(c[e>>2]|0)+32>>3]=+(c[f>>2]|0)/1.0e3;c[f>>2]=~~+h[(c[e>>2]|0)+32>>3];b=(c[e>>2]|0)+32|0;h[b>>3]=+h[b>>3]- +(c[f>>2]|0);c[(c[e>>2]|0)+20>>2]=(c[f>>2]|0)/3600|0;c[f>>2]=(c[f>>2]|0)-((c[(c[e>>2]|0)+20>>2]|0)*3600|0);c[(c[e>>2]|0)+24>>2]=(c[f>>2]|0)/60|0;b=(c[e>>2]|0)+32|0;h[b>>3]=+h[b>>3]+ +((c[f>>2]|0)-((c[(c[e>>2]|0)+24>>2]|0)*60|0)|0);a[(c[e>>2]|0)+41>>0]=1;i=d;return}function ut(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e;g=e+4|0;c[h>>2]=b;c[g>>2]=d;d=Ft(c[h>>2]|0)|0;b=c[g>>2]|0;c[b>>2]=d;c[b+4>>2]=D;b=c[g>>2]|0;d=c[b+4>>2]|0;if((d|0)>0|(d|0)==0&(c[b>>2]|0)>>>0>0){a[(c[g>>2]|0)+42>>0]=1;c[f>>2]=0;h=c[f>>2]|0;i=e;return h|0}else{c[f>>2]=1;h=c[f>>2]|0;i=e;return h|0}return 0}function vt(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0.0;f=i;i=i+32|0;g=f+20|0;j=f+16|0;l=f+8|0;k=f+12|0;m=f;c[j>>2]=b;c[l>>2]=d;c[k>>2]=e;if((Et(c[l>>2]|0,c[k>>2]|0)|0)==0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}if((At(c[l>>2]|0,c[k>>2]|0)|0)==0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}if((Dc(c[l>>2]|0,16152)|0)==0){c[g>>2]=ut(c[j>>2]|0,c[k>>2]|0)|0;b=c[g>>2]|0;i=f;return b|0}b=c[l>>2]|0;if((zt(b,m,Ub(c[l>>2]|0)|0,1)|0)!=0){n=+h[m>>3]*864.0e5+.5;d=+O(n)>=1.0?n>0.0?(ea(+N(n/4294967296.0),4294967295.0)|0)>>>0:~~+_((n- +(~~n>>>0))/4294967296.0)>>>0:0;b=c[k>>2]|0;c[b>>2]=~~n>>>0;c[b+4>>2]=d;a[(c[k>>2]|0)+42>>0]=1;c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}else{c[g>>2]=1;b=c[g>>2]|0;i=f;return b|0}return 0}function wt(b,e,f){b=b|0;e=e|0;f=f|0;var g=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.0;g=i;i=i+160|0;z=g+124|0;y=g+120|0;j=g+116|0;l=g+112|0;t=g+108|0;u=g+8|0;k=g+104|0;w=g+80|0;x=g+72|0;p=g;m=g+96|0;n=g+24|0;o=g+16|0;r=g+100|0;q=g+88|0;s=g+92|0;c[z>>2]=b;c[y>>2]=e;c[j>>2]=f;c[l>>2]=1;c[k>>2]=g+128;c[t>>2]=0;while(1){if((c[t>>2]|0)<29){e=(a[(c[y>>2]|0)+(c[t>>2]|0)>>0]|0)!=0}else{e=0}f=c[t>>2]|0;if(!e){break}a[(c[k>>2]|0)+(c[t>>2]|0)>>0]=a[784+(d[(c[y>>2]|0)+f>>0]|0)>>0]|0;c[t>>2]=(c[t>>2]|0)+1}a[(c[k>>2]|0)+f>>0]=0;switch(a[c[k>>2]>>0]|0){case 119:{if((ZK(c[k>>2]|0,16048,8)|0)!=0){b=c[l>>2]|0;i=g;return b|0}if((zt((c[k>>2]|0)+8|0,u,Ub((c[k>>2]|0)+8|0)|0,1)|0)==0){b=c[l>>2]|0;i=g;return b|0}b=~~+h[u>>3];c[t>>2]=b;if(!(+(b|0)==+h[u>>3])){b=c[l>>2]|0;i=g;return b|0}if((c[t>>2]|0)<0){b=c[l>>2]|0;i=g;return b|0}if(!(+h[u>>3]<7.0)){b=c[l>>2]|0;i=g;return b|0}rt(c[j>>2]|0);a[(c[j>>2]|0)+43>>0]=0;a[(c[j>>2]|0)+42>>0]=0;qt(c[j>>2]|0);z=c[j>>2]|0;e=x;c[e>>2]=mL(lL(dL(c[z>>2]|0,c[z+4>>2]|0,1296e5,0)|0,D|0,864e5,0)|0,D|0,7,0)|0;c[e+4>>2]=D;e=x;z=c[e+4>>2]|0;b=c[t>>2]|0;f=((b|0)<0)<<31>>31;if((z|0)>(f|0)|((z|0)==(f|0)?(c[e>>2]|0)>>>0>b>>>0:0)){e=x;e=$K(c[e>>2]|0,c[e+4>>2]|0,7,0)|0;b=x;c[b>>2]=e;c[b+4>>2]=D}b=c[t>>2]|0;e=x;e=nL($K(b|0,((b|0)<0)<<31>>31|0,c[e>>2]|0,c[e+4>>2]|0)|0,D|0,864e5,0)|0;b=c[j>>2]|0;f=b;c[b>>2]=dL(c[f>>2]|0,c[f+4>>2]|0,e|0,D|0)|0;c[b+4>>2]=D;yt(c[j>>2]|0);c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0};case 108:{if((YK(c[k>>2]|0,16008)|0)!=0){b=c[l>>2]|0;i=g;return b|0}qt(c[j>>2]|0);e=xt(c[j>>2]|0,c[z>>2]|0,l)|0;b=c[j>>2]|0;f=b;c[b>>2]=dL(c[f>>2]|0,c[f+4>>2]|0,e|0,D|0)|0;c[b+4>>2]=D;yt(c[j>>2]|0);b=c[l>>2]|0;i=g;return b|0};case 115:{if((ZK(c[k>>2]|0,16064,9)|0)!=0){b=c[l>>2]|0;i=g;return b|0}c[k>>2]=(c[k>>2]|0)+9;st(c[j>>2]|0);a[(c[j>>2]|0)+41>>0]=1;c[(c[j>>2]|0)+24>>2]=0;c[(c[j>>2]|0)+20>>2]=0;h[(c[j>>2]|0)+32>>3]=0.0;a[(c[j>>2]|0)+43>>0]=0;a[(c[j>>2]|0)+42>>0]=0;if((YK(c[k>>2]|0,16080)|0)==0){c[(c[j>>2]|0)+16>>2]=1;c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}if((YK(c[k>>2]|0,16088)|0)==0){st(c[j>>2]|0);c[(c[j>>2]|0)+12>>2]=1;c[(c[j>>2]|0)+16>>2]=1;c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}if((YK(c[k>>2]|0,16096)|0)!=0){b=c[l>>2]|0;i=g;return b|0}c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0};case 117:{if((YK(c[k>>2]|0,16024)|0)==0){if((a[(c[j>>2]|0)+42>>0]|0)!=0){e=c[j>>2]|0;e=dL(c[e>>2]|0,c[e+4>>2]|0,43200,0)|0;e=lL(e|0,D|0,86400,0)|0;e=dL(e|0,D|0,1045635584,49096)|0;b=c[j>>2]|0;c[b>>2]=e;c[b+4>>2]=D;yt(c[j>>2]|0);c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}}if((YK(c[k>>2]|0,16040)|0)!=0){b=c[l>>2]|0;i=g;return b|0}qt(c[j>>2]|0);b=w;c[b>>2]=xt(c[j>>2]|0,c[z>>2]|0,l)|0;c[b+4>>2]=D;if((c[l>>2]|0)!=0){b=c[l>>2]|0;i=g;return b|0}b=w;e=c[j>>2]|0;f=e;c[e>>2]=$K(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[e+4>>2]=D;yt(c[j>>2]|0);e=w;b=c[e>>2]|0;e=c[e+4>>2]|0;e=$K(b|0,e|0,xt(c[j>>2]|0,c[z>>2]|0,l)|0,D|0)|0;b=c[j>>2]|0;f=b;c[b>>2]=dL(c[f>>2]|0,c[f+4>>2]|0,e|0,D|0)|0;c[b+4>>2]=D;b=c[l>>2]|0;i=g;return b|0};case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:case 45:case 43:{c[t>>2]=1;while(1){if((a[(c[k>>2]|0)+(c[t>>2]|0)>>0]|0)==0){break}if((a[(c[k>>2]|0)+(c[t>>2]|0)>>0]|0)==58){break}if(!((a[136+(d[(c[k>>2]|0)+(c[t>>2]|0)>>0]|0)>>0]&1|0)!=0^1)){break}c[t>>2]=(c[t>>2]|0)+1}if((zt(c[k>>2]|0,u,c[t>>2]|0,1)|0)==0){c[l>>2]=1;b=c[l>>2]|0;i=g;return b|0}if((a[(c[k>>2]|0)+(c[t>>2]|0)>>0]|0)==58){c[m>>2]=c[k>>2];if((a[136+(d[c[m>>2]>>0]|0)>>0]&4|0)==0){c[m>>2]=(c[m>>2]|0)+1}q=n+0|0;p=q+48|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(p|0));if((At(c[m>>2]|0,n)|0)!=0){b=c[l>>2]|0;i=g;return b|0}qt(n);e=n;e=$K(c[e>>2]|0,c[e+4>>2]|0,432e5,0)|0;b=n;c[b>>2]=e;c[b+4>>2]=D;b=n;b=lL(c[b>>2]|0,c[b+4>>2]|0,864e5,0)|0;e=o;c[e>>2]=b;c[e+4>>2]=D;e=o;e=nL(c[e>>2]|0,c[e+4>>2]|0,864e5,0)|0;b=n;e=$K(c[b>>2]|0,c[b+4>>2]|0,e|0,D|0)|0;b=n;c[b>>2]=e;c[b+4>>2]=D;if((a[c[k>>2]>>0]|0)==45){e=n;e=$K(0,0,c[e>>2]|0,c[e+4>>2]|0)|0;b=n;c[b>>2]=e;c[b+4>>2]=D}qt(c[j>>2]|0);yt(c[j>>2]|0);e=n;b=c[j>>2]|0;f=b;e=dL(c[f>>2]|0,c[f+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;c[b>>2]=e;c[b+4>>2]=D;c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}c[k>>2]=(c[k>>2]|0)+(c[t>>2]|0);while(1){m=c[k>>2]|0;if((a[136+(d[c[k>>2]>>0]|0)>>0]&1|0)==0){break}c[k>>2]=m+1}c[t>>2]=Ub(m)|0;if((c[t>>2]|0)>10|(c[t>>2]|0)<3){b=c[l>>2]|0;i=g;return b|0}if((a[(c[k>>2]|0)+((c[t>>2]|0)-1)>>0]|0)==115){a[(c[k>>2]|0)+((c[t>>2]|0)-1)>>0]=0;c[t>>2]=(c[t>>2]|0)+ -1}qt(c[j>>2]|0);c[l>>2]=0;h[p>>3]=+h[u>>3]<0.0?-.5:.5;if((c[t>>2]|0)==3){if((YK(c[k>>2]|0,16096)|0)==0){A=+h[u>>3]*864.0e5+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=dL(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D}else{v=53}}else{v=53}do{if((v|0)==53){if((c[t>>2]|0)==4){if((YK(c[k>>2]|0,16104)|0)==0){A=+h[u>>3]*36.0e5+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=dL(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D;break}}if((c[t>>2]|0)==6){if((YK(c[k>>2]|0,16112)|0)==0){A=+h[u>>3]*6.0e4+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=dL(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D;break}}if((c[t>>2]|0)==6){if((YK(c[k>>2]|0,16120)|0)==0){A=+h[u>>3]*1.0e3+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=dL(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D;break}}if((c[t>>2]|0)==5){if((YK(c[k>>2]|0,16080)|0)==0){rt(c[j>>2]|0);b=(c[j>>2]|0)+12|0;c[b>>2]=(c[b>>2]|0)+~~+h[u>>3];b=c[(c[j>>2]|0)+12>>2]|0;c[r>>2]=(((c[(c[j>>2]|0)+12>>2]|0)>0?b-1|0:b-12|0)|0)/12|0;b=(c[j>>2]|0)+8|0;c[b>>2]=(c[b>>2]|0)+(c[r>>2]|0);b=(c[j>>2]|0)+12|0;c[b>>2]=(c[b>>2]|0)-((c[r>>2]|0)*12|0);a[(c[j>>2]|0)+42>>0]=0;qt(c[j>>2]|0);c[q>>2]=~~+h[u>>3];if(!(+(c[q>>2]|0)!=+h[u>>3])){break}A=(+h[u>>3]- +(c[q>>2]|0))*30.0*864.0e5+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=dL(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D;break}}if((c[t>>2]|0)==4){if((YK(c[k>>2]|0,16088)|0)==0){c[s>>2]=~~+h[u>>3];rt(c[j>>2]|0);b=(c[j>>2]|0)+8|0;c[b>>2]=(c[b>>2]|0)+(c[s>>2]|0);a[(c[j>>2]|0)+42>>0]=0;qt(c[j>>2]|0);if(!(+(c[s>>2]|0)!=+h[u>>3])){break}A=(+h[u>>3]- +(c[s>>2]|0))*365.0*864.0e5+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=dL(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D;break}}c[l>>2]=1}}while(0);yt(c[j>>2]|0);b=c[l>>2]|0;i=g;return b|0};default:{b=c[l>>2]|0;i=g;return b|0}}return 0}function xt(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=i;i=i+176|0;q=p+96|0;r=p+108|0;o=p+104|0;f=p+164|0;j=p+48|0;k=p;m=p+112|0;n=p+116|0;l=p+160|0;c[r>>2]=b;c[o>>2]=d;c[f>>2]=e;d=n+0|0;e=d+44|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));d=j+0|0;r=(c[r>>2]|0)+0|0;e=d+48|0;do{c[d>>2]=c[r>>2];d=d+4|0;r=r+4|0}while((d|0)<(e|0));rt(j);if((c[j+8>>2]|0)<1971){g=3}else{if((c[j+8>>2]|0)>=2038){g=3}else{c[l>>2]=~~(+h[j+32>>3]+.5);h[j+32>>3]=+(c[l>>2]|0)}}if((g|0)==3){c[j+8>>2]=2e3;c[j+12>>2]=1;c[j+16>>2]=1;c[j+20>>2]=0;c[j+24>>2]=0;h[j+32>>3]=0.0}c[j+28>>2]=0;a[j+42>>0]=0;qt(j);b=j;b=lL(c[b>>2]|0,c[b+4>>2]|0,1e3,0)|0;b=$K(b|0,D|0,413362496,49)|0;c[m>>2]=b;if((Dt(m,n)|0)!=0){Xd(c[o>>2]|0,16128,-1);c[c[f>>2]>>2]=1;d=q;c[d>>2]=0;c[d+4>>2]=0;d=q;b=d;b=c[b>>2]|0;d=d+4|0;d=c[d>>2]|0;D=d;i=p;return b|0}else{c[k+8>>2]=(c[n+20>>2]|0)+1900;c[k+12>>2]=(c[n+16>>2]|0)+1;c[k+16>>2]=c[n+12>>2];c[k+20>>2]=c[n+8>>2];c[k+24>>2]=c[n+4>>2];h[k+32>>3]=+(c[n>>2]|0);a[k+40>>0]=1;a[k+41>>0]=1;a[k+42>>0]=0;a[k+43>>0]=0;qt(k);c[c[f>>2]>>2]=0;d=k;b=j;b=$K(c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;d=q;c[d>>2]=b;c[d+4>>2]=D;d=q;b=d;b=c[b>>2]|0;d=d+4|0;d=c[d>>2]|0;D=d;i=p;return b|0}return 0}function yt(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;a[(c[e>>2]|0)+40>>0]=0;a[(c[e>>2]|0)+41>>0]=0;a[(c[e>>2]|0)+43>>0]=0;i=d;return}function zt(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0.0,G=0.0;k=i;i=i+96|0;j=k+76|0;q=k+72|0;p=k+68|0;C=k+64|0;E=k+80|0;x=k+60|0;r=k+56|0;z=k+52|0;y=k;w=k+48|0;s=k+36|0;v=k+32|0;m=k+28|0;o=k+8|0;l=k+40|0;n=k+44|0;B=k+24|0;u=k+16|0;c[q>>2]=b;c[p>>2]=e;c[C>>2]=f;a[E>>0]=g;c[r>>2]=(c[q>>2]|0)+(c[C>>2]|0);c[z>>2]=1;b=y;c[b>>2]=0;c[b+4>>2]=0;c[w>>2]=0;c[s>>2]=1;c[v>>2]=0;c[m>>2]=1;c[l>>2]=0;c[n>>2]=0;h[c[p>>2]>>3]=0.0;if((d[E>>0]|0)==1){c[x>>2]=1}else{c[x>>2]=2;c[B>>2]=3-(d[E>>0]|0);while(1){if((c[B>>2]|0)>=(c[C>>2]|0)){break}if((a[(c[q>>2]|0)+(c[B>>2]|0)>>0]|0)!=0){break}c[B>>2]=(c[B>>2]|0)+2}c[n>>2]=(c[B>>2]|0)<(c[C>>2]|0)&1;c[r>>2]=(c[q>>2]|0)+(c[B>>2]|0)+(d[E>>0]|0)+ -3;c[q>>2]=(c[q>>2]|0)+(a[E>>0]&1)}while(1){if(!((c[q>>2]|0)>>>0<(c[r>>2]|0)>>>0)){break}if((a[136+(d[c[q>>2]>>0]|0)>>0]&1|0)==0){break}c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0)}if((c[q>>2]|0)>>>0>=(c[r>>2]|0)>>>0){c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}if((a[c[q>>2]>>0]|0)==45){c[z>>2]=-1;c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0)}else{if((a[c[q>>2]>>0]|0)==43){c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0)}}while(1){if(!((c[q>>2]|0)>>>0<(c[r>>2]|0)>>>0)){break}if((a[c[q>>2]>>0]|0)!=48){break}c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0);c[l>>2]=(c[l>>2]|0)+1}while(1){if(!((c[q>>2]|0)>>>0<(c[r>>2]|0)>>>0)){break}if((a[136+(d[c[q>>2]>>0]|0)>>0]&4|0)==0){break}b=y;e=c[b+4>>2]|0;if(!((e|0)<214748364|(e|0)==214748364&(c[b>>2]|0)>>>0<3435973835)){break}b=y;b=nL(c[b>>2]|0,c[b+4>>2]|0,10,0)|0;e=(a[c[q>>2]>>0]|0)-48|0;e=dL(b|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;b=y;c[b>>2]=e;c[b+4>>2]=D;c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0);c[l>>2]=(c[l>>2]|0)+1}while(1){if(!((c[q>>2]|0)>>>0<(c[r>>2]|0)>>>0)){break}if((a[136+(d[c[q>>2]>>0]|0)>>0]&4|0)==0){break}c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0);c[l>>2]=(c[l>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1}a:do{if(!((c[q>>2]|0)>>>0>=(c[r>>2]|0)>>>0)){b:do{if((a[c[q>>2]>>0]|0)==46){c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0);while(1){if(!((c[q>>2]|0)>>>0<(c[r>>2]|0)>>>0)){break}if((a[136+(d[c[q>>2]>>0]|0)>>0]&4|0)==0){break}b=y;e=c[b+4>>2]|0;if(!((e|0)<214748364|(e|0)==214748364&(c[b>>2]|0)>>>0<3435973835)){break}b=y;b=nL(c[b>>2]|0,c[b+4>>2]|0,10,0)|0;e=(a[c[q>>2]>>0]|0)-48|0;e=dL(b|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;b=y;c[b>>2]=e;c[b+4>>2]=D;c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0);c[l>>2]=(c[l>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+ -1}while(1){if(!((c[q>>2]|0)>>>0<(c[r>>2]|0)>>>0)){break b}if((a[136+(d[c[q>>2]>>0]|0)>>0]&4|0)==0){break b}c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0);c[l>>2]=(c[l>>2]|0)+1}}}while(0);if(!((c[q>>2]|0)>>>0>=(c[r>>2]|0)>>>0)){if((a[c[q>>2]>>0]|0)==101){A=40}else{if((a[c[q>>2]>>0]|0)==69){A=40}}c:do{if((A|0)==40){c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0);c[m>>2]=0;if((c[q>>2]|0)>>>0>=(c[r>>2]|0)>>>0){break a}if((a[c[q>>2]>>0]|0)==45){c[s>>2]=-1;c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0)}else{if((a[c[q>>2]>>0]|0)==43){c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0)}}while(1){if(!((c[q>>2]|0)>>>0<(c[r>>2]|0)>>>0)){break c}if((a[136+(d[c[q>>2]>>0]|0)>>0]&4|0)==0){break c}if((c[v>>2]|0)<1e4){A=((c[v>>2]|0)*10|0)+((a[c[q>>2]>>0]|0)-48)|0}else{A=1e4}c[v>>2]=A;c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0);c[m>>2]=1}}}while(0);if((c[l>>2]|0)!=0){if((c[m>>2]|0)!=0){while(1){if(!((c[q>>2]|0)>>>0<(c[r>>2]|0)>>>0)){break a}if((a[136+(d[c[q>>2]>>0]|0)>>0]&1|0)==0){break a}c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0)}}}}}}while(0);b=$(c[v>>2]|0,c[s>>2]|0)|0;c[v>>2]=b+(c[w>>2]|0);if((c[v>>2]|0)<0){c[s>>2]=-1;c[v>>2]=$(c[v>>2]|0,-1)|0}else{c[s>>2]=1}b=y;do{if((c[b>>2]|0)!=0|(c[b+4>>2]|0)!=0){d:do{if((c[s>>2]|0)>0){while(1){b=y;e=c[b+4>>2]|0;if(!((e|0)<214748364|(e|0)==214748364&(c[b>>2]|0)>>>0<3435973836)){break d}if((c[v>>2]|0)<=0){break d}c[v>>2]=(c[v>>2]|0)+ -1;e=y;e=nL(c[e>>2]|0,c[e+4>>2]|0,10,0)|0;b=y;c[b>>2]=e;c[b+4>>2]=D}}else{while(1){b=y;b=mL(c[b>>2]|0,c[b+4>>2]|0,10,0)|0;if((b|0)!=0|(D|0)!=0){break d}if((c[v>>2]|0)<=0){break d}c[v>>2]=(c[v>>2]|0)+ -1;e=y;e=lL(c[e>>2]|0,c[e+4>>2]|0,10,0)|0;b=y;c[b>>2]=e;c[b+4>>2]=D}}}while(0);f=(c[z>>2]|0)<0;e=y;g=c[e>>2]|0;e=c[e+4>>2]|0;E=$K(0,0,g|0,e|0)|0;b=y;c[b>>2]=f?E:g;c[b+4>>2]=f?D:e;if((c[v>>2]|0)==0){b=y;h[o>>3]=+((c[b>>2]|0)>>>0)+4294967296.0*+(c[b+4>>2]|0);break}h[u>>3]=1.0;if((c[v>>2]|0)>307&(c[v>>2]|0)<342){while(1){if(((c[v>>2]|0)%308|0|0)==0){break}h[u>>3]=+h[u>>3]*10.0;c[v>>2]=(c[v>>2]|0)-1}b=y;F=+((c[b>>2]|0)>>>0)+4294967296.0*+(c[b+4>>2]|0);G=+h[u>>3];if((c[s>>2]|0)<0){h[o>>3]=F/G;h[o>>3]=+h[o>>3]/1.0e+308;break}else{h[o>>3]=F*G;h[o>>3]=+h[o>>3]*1.0e+308;break}}if((c[v>>2]|0)>=342){b=y;F=+((c[b>>2]|0)>>>0)+4294967296.0*+(c[b+4>>2]|0);if((c[s>>2]|0)<0){h[o>>3]=0.0*F;break}else{h[o>>3]=t*F;break}}while(1){if(((c[v>>2]|0)%22|0|0)==0){break}h[u>>3]=+h[u>>3]*10.0;c[v>>2]=(c[v>>2]|0)-1}while(1){if((c[v>>2]|0)<=0){break}h[u>>3]=+h[u>>3]*1.0e+22;c[v>>2]=(c[v>>2]|0)-22}b=y;F=+((c[b>>2]|0)>>>0)+4294967296.0*+(c[b+4>>2]|0);G=+h[u>>3];if((c[s>>2]|0)<0){h[o>>3]=F/G;break}else{h[o>>3]=F*G;break}}else{if((c[z>>2]|0)<0){s=(c[l>>2]|0)!=0}else{s=0}h[o>>3]=s?-0.0:0.0}}while(0);h[c[p>>2]>>3]=+h[o>>3];if((c[q>>2]|0)>>>0>=(c[r>>2]|0)>>>0){if((c[l>>2]|0)>0){if((c[m>>2]|0)!=0){l=(c[n>>2]|0)==0}else{l=0}}else{l=0}}else{l=0}c[j>>2]=l&1;b=c[j>>2]|0;i=k;return b|0}function At(b,e){b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+80|0;q=m+16|0;g=m+68|0;k=m+56|0;l=m+76|0;f=m+72|0;n=m+60|0;o=m+64|0;p=m;j=m+8|0;c[k>>2]=b;c[l>>2]=e;h[p>>3]=0.0;b=c[k>>2]|0;c[q>>2]=2;c[q+4>>2]=0;c[q+8>>2]=24;c[q+12>>2]=58;c[q+16>>2]=f;c[q+20>>2]=2;c[q+24>>2]=0;c[q+28>>2]=59;c[q+32>>2]=0;c[q+36>>2]=n;if((Bt(b,q)|0)!=2){c[g>>2]=1;b=c[g>>2]|0;i=m;return b|0}c[k>>2]=(c[k>>2]|0)+5;if((a[c[k>>2]>>0]|0)==58){c[k>>2]=(c[k>>2]|0)+1;b=c[k>>2]|0;c[q>>2]=2;c[q+4>>2]=0;c[q+8>>2]=59;c[q+12>>2]=0;c[q+16>>2]=o;if((Bt(b,q)|0)!=1){c[g>>2]=1;b=c[g>>2]|0;i=m;return b|0}c[k>>2]=(c[k>>2]|0)+2;if((a[c[k>>2]>>0]|0)==46){if((a[136+(d[(c[k>>2]|0)+1>>0]|0)>>0]&4|0)!=0){h[j>>3]=1.0;c[k>>2]=(c[k>>2]|0)+1;while(1){if((a[136+(d[c[k>>2]>>0]|0)>>0]&4|0)==0){break}h[p>>3]=+h[p>>3]*10.0+ +(a[c[k>>2]>>0]|0)-48.0;h[j>>3]=+h[j>>3]*10.0;c[k>>2]=(c[k>>2]|0)+1}h[p>>3]=+h[p>>3]/+h[j>>3]}}}else{c[o>>2]=0}a[(c[l>>2]|0)+42>>0]=0;a[(c[l>>2]|0)+41>>0]=1;c[(c[l>>2]|0)+20>>2]=c[f>>2];c[(c[l>>2]|0)+24>>2]=c[n>>2];h[(c[l>>2]|0)+32>>3]=+(c[o>>2]|0)+ +h[p>>3];if((Ct(c[k>>2]|0,c[l>>2]|0)|0)!=0){c[g>>2]=1;b=c[g>>2]|0;i=m;return b|0}else{a[(c[l>>2]|0)+43>>0]=(c[(c[l>>2]|0)+28>>2]|0)!=0?1:0;c[g>>2]=0;b=c[g>>2]|0;i=m;return b|0}return 0}function Bt(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+64|0;k=g+48|0;p=g+32|0;l=g+24|0;o=g+20|0;n=g+16|0;m=g+8|0;j=g+4|0;h=g;f=g+12|0;c[k>>2]=b;c[f>>2]=0;c[p>>2]=e;a:while(1){e=c[p>>2]|0;b=c[e>>2]|0;c[p>>2]=e+4;c[o>>2]=b;b=c[p>>2]|0;e=c[b>>2]|0;c[p>>2]=b+4;c[n>>2]=e;e=c[p>>2]|0;b=c[e>>2]|0;c[p>>2]=e+4;c[m>>2]=b;b=c[p>>2]|0;e=c[b>>2]|0;c[p>>2]=b+4;c[j>>2]=e;e=c[p>>2]|0;b=c[e>>2]|0;c[p>>2]=e+4;c[h>>2]=b;c[l>>2]=0;while(1){b=c[o>>2]|0;c[o>>2]=b+ -1;if((b|0)==0){break}if((a[136+(d[c[k>>2]>>0]|0)>>0]&4|0)==0){h=11;break a}c[l>>2]=((c[l>>2]|0)*10|0)+(a[c[k>>2]>>0]|0)-48;c[k>>2]=(c[k>>2]|0)+1}if((c[l>>2]|0)<(c[n>>2]|0)){h=11;break}if((c[l>>2]|0)>(c[m>>2]|0)){h=11;break}if((c[j>>2]|0)!=0){if((c[j>>2]|0)!=(a[c[k>>2]>>0]|0)){h=11;break}}c[c[h>>2]>>2]=c[l>>2];c[k>>2]=(c[k>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+1;if((c[j>>2]|0)==0){h=11;break}}if((h|0)==11){i=g;return c[f>>2]|0}return 0}function Ct(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+80|0;o=f;h=f+64|0;g=f+40|0;n=f+44|0;k=f+48|0;j=f+52|0;l=f+56|0;p=f+60|0;c[g>>2]=b;c[n>>2]=e;c[k>>2]=0;while(1){if((a[136+(d[c[g>>2]>>0]|0)>>0]&1|0)==0){break}c[g>>2]=(c[g>>2]|0)+1}c[(c[n>>2]|0)+28>>2]=0;c[p>>2]=a[c[g>>2]>>0]|0;do{if((c[p>>2]|0)==45){c[k>>2]=-1;m=11}else{if((c[p>>2]|0)==43){c[k>>2]=1;m=11;break}if((c[p>>2]|0)==90|(c[p>>2]|0)==122){c[g>>2]=(c[g>>2]|0)+1;break}c[h>>2]=(c[p>>2]|0)!=0&1;b=c[h>>2]|0;i=f;return b|0}}while(0);do{if((m|0)==11){c[g>>2]=(c[g>>2]|0)+1;b=c[g>>2]|0;c[o>>2]=2;c[o+4>>2]=0;c[o+8>>2]=14;c[o+12>>2]=58;c[o+16>>2]=j;c[o+20>>2]=2;c[o+24>>2]=0;c[o+28>>2]=59;c[o+32>>2]=0;c[o+36>>2]=l;if((Bt(b,o)|0)==2){c[g>>2]=(c[g>>2]|0)+5;b=$(c[k>>2]|0,(c[l>>2]|0)+((c[j>>2]|0)*60|0)|0)|0;c[(c[n>>2]|0)+28>>2]=b;break}c[h>>2]=1;b=c[h>>2]|0;i=f;return b|0}}while(0);while(1){j=c[g>>2]|0;if((a[136+(d[c[g>>2]>>0]|0)>>0]&1|0)==0){break}c[g>>2]=j+1}c[h>>2]=(a[j>>0]|0)!=0&1;b=c[h>>2]|0;i=f;return b|0}function Dt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=f+12|0;g=f;e=f+4|0;d=f+8|0;c[h>>2]=a;c[g>>2]=b;a=nb(c[h>>2]|0)|0;c[d>>2]=a;c[d>>2]=(c[45400>>2]|0)!=0?0:a;if((c[d>>2]|0)!=0){a=(c[g>>2]|0)+0|0;g=(c[d>>2]|0)+0|0;b=a+44|0;do{c[a>>2]=c[g>>2];a=a+4|0;g=g+4|0}while((a|0)<(b|0))}c[e>>2]=(c[d>>2]|0)==0&1;i=f;return c[e>>2]|0}function Et(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+96|0;o=g;l=g+84|0;h=g+60|0;j=g+64|0;k=g+68|0;m=g+72|0;n=g+76|0;f=g+80|0;c[h>>2]=b;c[j>>2]=e;if((a[c[h>>2]>>0]|0)==45){c[h>>2]=(c[h>>2]|0)+1;c[f>>2]=1}else{c[f>>2]=0}b=c[h>>2]|0;c[o>>2]=4;c[o+4>>2]=0;c[o+8>>2]=9999;c[o+12>>2]=45;c[o+16>>2]=k;c[o+20>>2]=2;c[o+24>>2]=1;c[o+28>>2]=12;c[o+32>>2]=45;c[o+36>>2]=m;c[o+40>>2]=2;c[o+44>>2]=1;c[o+48>>2]=31;c[o+52>>2]=0;c[o+56>>2]=n;if((Bt(b,o)|0)!=3){c[l>>2]=1;b=c[l>>2]|0;i=g;return b|0}c[h>>2]=(c[h>>2]|0)+10;while(1){if((a[136+(d[c[h>>2]>>0]|0)>>0]&1|0)!=0){o=1}else{o=84==(d[c[h>>2]>>0]|0)}e=c[h>>2]|0;if(!o){break}c[h>>2]=e+1}do{if((At(e,c[j>>2]|0)|0)!=0){if((a[c[h>>2]>>0]|0)==0){a[(c[j>>2]|0)+41>>0]=0;break}c[l>>2]=1;b=c[l>>2]|0;i=g;return b|0}}while(0);a[(c[j>>2]|0)+42>>0]=0;a[(c[j>>2]|0)+40>>0]=1;b=c[k>>2]|0;c[(c[j>>2]|0)+8>>2]=(c[f>>2]|0)!=0?0-b|0:b;c[(c[j>>2]|0)+12>>2]=c[m>>2];c[(c[j>>2]|0)+16>>2]=c[n>>2];if((a[(c[j>>2]|0)+43>>0]|0)!=0){qt(c[j>>2]|0)}c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}function Ft(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;b=d;e=d+4|0;c[f>>2]=a;c[b>>2]=c[(c[f>>2]|0)+56>>2];a=(c[b>>2]|0)+136|0;if((c[a>>2]|0)==0&(c[a+4>>2]|0)==0){c[e>>2]=Gt(c[c[(c[f>>2]|0)+8>>2]>>2]|0,(c[b>>2]|0)+136|0)|0;if((c[e>>2]|0)!=0){f=(c[b>>2]|0)+136|0;c[f>>2]=0;c[f+4>>2]=0}}f=(c[b>>2]|0)+136|0;D=c[f+4>>2]|0;i=d;return c[f>>2]|0}function Gt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0.0;d=i;i=i+32|0;g=d+16|0;f=d+12|0;e=d+8|0;j=d;c[g>>2]=a;c[f>>2]=b;if((c[c[g>>2]>>2]|0)>=2){if((c[(c[g>>2]|0)+72>>2]|0)!=0){c[e>>2]=zb[c[(c[g>>2]|0)+72>>2]&127](c[g>>2]|0,c[f>>2]|0)|0;a=c[e>>2]|0;i=d;return a|0}}c[e>>2]=zb[c[(c[g>>2]|0)+64>>2]&127](c[g>>2]|0,j)|0;k=+h[j>>3]*864.0e5;j=+O(k)>=1.0?k>0.0?(ea(+N(k/4294967296.0),4294967295.0)|0)>>>0:~~+_((k- +(~~k>>>0))/4294967296.0)>>>0:0;a=c[f>>2]|0;c[a>>2]=~~k>>>0;c[a+4>>2]=j;a=c[e>>2]|0;i=d;return a|0}function Ht(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+16|0;k=f;g=f+4|0;h=f+8|0;j=f+12|0;c[l>>2]=b;c[k>>2]=e;c[g>>2]=0;c[h>>2]=c[l>>2];if((c[k>>2]|0)>=0){c[j>>2]=(c[h>>2]|0)+(c[k>>2]|0)}else{c[j>>2]=-1}while(1){if((d[c[h>>2]>>0]|0|0)==0){e=10;break}if(!((c[h>>2]|0)>>>0<(c[j>>2]|0)>>>0)){e=10;break}l=c[h>>2]|0;c[h>>2]=l+1;a:do{if((d[l>>0]|0|0)>=192){while(1){if((a[c[h>>2]>>0]&192|0)!=128){break a}c[h>>2]=(c[h>>2]|0)+1}}}while(0);c[g>>2]=(c[g>>2]|0)+1}if((e|0)==10){i=f;return c[g>>2]|0}return 0}function It(b){b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=b;h=c[g>>2]|0;b=c[h>>2]|0;c[h>>2]=b+1;c[f>>2]=d[b>>0]|0;if(!((c[f>>2]|0)>>>0>=192)){h=c[f>>2]|0;i=e;return h|0}c[f>>2]=d[11592+((c[f>>2]|0)-192)>>0]|0;while(1){b=c[f>>2]|0;if((a[c[c[g>>2]>>2]>>0]&192|0)!=128){break}j=c[g>>2]|0;h=c[j>>2]|0;c[j>>2]=h+1;c[f>>2]=(b<<6)+(63&(d[h>>0]|0))}if(!(b>>>0<128)){if((c[f>>2]&-2048|0)!=55296){if((c[f>>2]&-2|0)!=65534){j=c[f>>2]|0;i=e;return j|0}}}c[f>>2]=65533;j=c[f>>2]|0;i=e;return j|0}function Jt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;d=c[h>>2]|0;if(((c[(c[h>>2]|0)+12>>2]|0)+(c[f>>2]|0)|0)>=(c[(c[h>>2]|0)+16>>2]|0)){Kt(d,c[g>>2]|0,c[f>>2]|0);i=e;return}else{fL((c[(c[h>>2]|0)+8>>2]|0)+(c[d+12>>2]|0)|0,c[g>>2]|0,c[f>>2]|0)|0;a=(c[h>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+(c[f>>2]|0);i=e;return}}function Kt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[h>>2]=Lt(c[f>>2]|0,c[h>>2]|0)|0;if((c[h>>2]|0)<=0){i=e;return}fL((c[(c[f>>2]|0)+8>>2]|0)+(c[(c[f>>2]|0)+12>>2]|0)|0,c[g>>2]|0,c[h>>2]|0)|0;a=(c[f>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+(c[h>>2]|0);i=e;return}function Lt(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;g=k+24|0;h=k+20|0;j=k+8|0;l=k+12|0;f=k+16|0;m=k;c[h>>2]=b;c[j>>2]=e;if((a[(c[h>>2]|0)+25>>0]|0)!=0){c[g>>2]=0;b=c[g>>2]|0;i=k;return b|0}e=c[h>>2]|0;if((a[(c[h>>2]|0)+24>>0]|0)==0){c[j>>2]=(c[e+16>>2]|0)-(c[(c[h>>2]|0)+12>>2]|0)-1;Mt(c[h>>2]|0,2);c[g>>2]=c[j>>2];b=c[g>>2]|0;i=k;return b|0}if((c[e+8>>2]|0)==(c[(c[h>>2]|0)+4>>2]|0)){e=0}else{e=c[(c[h>>2]|0)+8>>2]|0}c[f>>2]=e;e=c[(c[h>>2]|0)+12>>2]|0;o=m;c[o>>2]=e;c[o+4>>2]=((e|0)<0)<<31>>31;o=(c[j>>2]|0)+1|0;e=m;o=dL(c[e>>2]|0,c[e+4>>2]|0,o|0,((o|0)<0)<<31>>31|0)|0;e=m;c[e>>2]=o;c[e+4>>2]=D;e=m;o=c[e+4>>2]|0;b=c[(c[h>>2]|0)+20>>2]|0;n=((b|0)<0)<<31>>31;if((o|0)>(n|0)|((o|0)==(n|0)?(c[e>>2]|0)>>>0>b>>>0:0)){Nt(c[h>>2]|0);Mt(c[h>>2]|0,2);c[g>>2]=0;o=c[g>>2]|0;i=k;return o|0}c[(c[h>>2]|0)+16>>2]=c[m>>2];if((d[(c[h>>2]|0)+24>>0]|0)==1){c[l>>2]=Ot(c[c[h>>2]>>2]|0,c[f>>2]|0,c[(c[h>>2]|0)+16>>2]|0)|0}else{c[l>>2]=qc(c[f>>2]|0,c[(c[h>>2]|0)+16>>2]|0)|0}if((c[l>>2]|0)==0){Nt(c[h>>2]|0);Mt(c[h>>2]|0,1);c[g>>2]=0;o=c[g>>2]|0;i=k;return o|0}if((c[f>>2]|0)==0){if((c[(c[h>>2]|0)+12>>2]|0)>0){fL(c[l>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[(c[h>>2]|0)+12>>2]|0)|0}}c[(c[h>>2]|0)+8>>2]=c[l>>2];c[g>>2]=c[j>>2];o=c[g>>2]|0;i=k;return o|0}function Mt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e;g=e+4|0;c[f>>2]=b;a[g>>0]=d;a[(c[f>>2]|0)+25>>0]=a[g>>0]|0;c[(c[f>>2]|0)+16>>2]=0;i=e;return}function Nt(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;do{if((c[(c[e>>2]|0)+8>>2]|0)!=(c[(c[e>>2]|0)+4>>2]|0)){a=c[e>>2]|0;if((d[(c[e>>2]|0)+24>>0]|0|0)==1){cc(c[a>>2]|0,c[(c[e>>2]|0)+8>>2]|0);break}else{oc(c[a+8>>2]|0);break}}}while(0);c[(c[e>>2]|0)+8>>2]=0;i=b;return}function Ot(b,f,g){b=b|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h+16|0;n=h;m=h+4|0;k=h+8|0;l=h+12|0;c[n>>2]=b;c[m>>2]=f;c[k>>2]=g;c[l>>2]=0;do{if((d[(c[n>>2]|0)+64>>0]|0|0)==0){g=c[n>>2]|0;if((c[m>>2]|0)==0){c[j>>2]=$e(g,c[k>>2]|0)|0;b=c[j>>2]|0;i=h;return b|0}if((Pt(g,c[m>>2]|0)|0)==0){c[l>>2]=qc(c[m>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)!=0){break}a[(c[n>>2]|0)+64>>0]=1;break}if((c[k>>2]|0)<=(e[(c[n>>2]|0)+240>>1]|0|0)){c[j>>2]=c[m>>2];b=c[j>>2]|0;i=h;return b|0}else{c[l>>2]=$e(c[n>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)==0){break}fL(c[l>>2]|0,c[m>>2]|0,e[(c[n>>2]|0)+240>>1]|0|0)|0;cc(c[n>>2]|0,c[m>>2]|0);break}}}while(0);c[j>>2]=c[l>>2];b=c[j>>2]|0;i=h;return b|0}function Pt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;if(!((c[e>>2]|0)>>>0>=(c[(c[f>>2]|0)+268>>2]|0)>>>0)){a=0;a=a&1;i=d;return a|0}a=(c[e>>2]|0)>>>0<(c[(c[f>>2]|0)+272>>2]|0)>>>0;a=a&1;i=d;return a|0}function Qt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+20|0;h=e+16|0;g=e;j=e+8|0;c[h>>2]=a;k=g;c[k>>2]=b;c[k+4>>2]=d;d=c[h>>2]|0;k=c[d+4>>2]|0;a=j;c[a>>2]=c[d>>2];c[a+4>>2]=k;a=g;k=c[a+4>>2]|0;d=j;b=c[d+4>>2]|0;if((k|0)>0|(k|0)==0&(c[a>>2]|0)>>>0>=0){if((b|0)>0|(b|0)==0&(c[d>>2]|0)>>>0>0){a=j;a=$K(-1,2147483647,c[a>>2]|0,c[a+4>>2]|0)|0;d=D;k=g;b=c[k+4>>2]|0;if((d|0)<(b|0)|((d|0)==(b|0)?a>>>0<(c[k>>2]|0)>>>0:0)){c[f>>2]=1;k=c[f>>2]|0;i=e;return k|0}}}else{if((b|0)<0){a=j;a=dL(c[a>>2]|0,c[a+4>>2]|0,-1,2147483647)|0;a=$K(0,0,a|0,D|0)|0;d=D;k=g;k=dL(c[k>>2]|0,c[k+4>>2]|0,1,0)|0;b=D;if((d|0)>(b|0)|(d|0)==(b|0)&a>>>0>k>>>0){c[f>>2]=1;k=c[f>>2]|0;i=e;return k|0}}}a=g;k=c[h>>2]|0;b=k;a=dL(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[k>>2]=a;c[k+4>>2]=D;c[f>>2]=0;k=c[f>>2]|0;i=e;return k|0}function Rt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;g=e+16|0;h=e;f=e+8|0;k=e+12|0;c[g>>2]=a;j=h;c[j>>2]=b;c[j+4>>2]=d;c[k>>2]=re(c[g>>2]|0)|0;b=h;j=c[b+4>>2]|0;a=c[(c[k>>2]|0)+88>>2]|0;d=((a|0)<0)<<31>>31;if((j|0)>(d|0)|((j|0)==(d|0)?(c[b>>2]|0)>>>0>a>>>0:0)){je(c[g>>2]|0);c[f>>2]=0;k=c[f>>2]|0;i=e;return k|0}c[f>>2]=nc(c[h>>2]|0)|0;if((c[f>>2]|0)!=0){k=c[f>>2]|0;i=e;return k|0}ke(c[g>>2]|0);k=c[f>>2]|0;i=e;return k|0}function St(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+52>>2]|0}function Tt(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+48|0;f=k+44|0;g=k+40|0;j=k+36|0;m=k+32|0;l=k+28|0;n=k+24|0;o=k+16|0;p=k+20|0;r=k;q=k+8|0;c[g>>2]=a;c[j>>2]=b;c[m>>2]=d;c[n>>2]=e[(c[g>>2]|0)+28>>1]|0;c[o>>2]=e[(c[j>>2]|0)+28>>1]|0;c[p>>2]=c[n>>2]|c[o>>2];if((c[p>>2]&1|0)!=0){c[f>>2]=(c[o>>2]&1)-(c[n>>2]&1);a=c[f>>2]|0;i=k;return a|0}if((c[p>>2]&12|0)==0){if((c[p>>2]&2|0)!=0){if((c[n>>2]&2|0)==0){c[f>>2]=1;a=c[f>>2]|0;i=k;return a|0}if((c[o>>2]&2|0)==0){c[f>>2]=-1;a=c[f>>2]|0;i=k;return a|0}if((c[m>>2]|0)!=0){c[f>>2]=Ut(c[g>>2]|0,c[j>>2]|0,c[m>>2]|0)|0;a=c[f>>2]|0;i=k;return a|0}}if((c[(c[g>>2]|0)+24>>2]|0)>(c[(c[j>>2]|0)+24>>2]|0)){m=c[(c[j>>2]|0)+24>>2]|0}else{m=c[(c[g>>2]|0)+24>>2]|0}c[l>>2]=XK(c[(c[g>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,m)|0;if((c[l>>2]|0)==0){c[l>>2]=(c[(c[g>>2]|0)+24>>2]|0)-(c[(c[j>>2]|0)+24>>2]|0)}c[f>>2]=c[l>>2];a=c[f>>2]|0;i=k;return a|0}if((c[n>>2]&c[o>>2]&4|0)!=0){b=(c[g>>2]|0)+16|0;q=c[b+4>>2]|0;a=(c[j>>2]|0)+16|0;r=c[a+4>>2]|0;if((q|0)<(r|0)|((q|0)==(r|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)){c[f>>2]=-1;a=c[f>>2]|0;i=k;return a|0}b=(c[g>>2]|0)+16|0;q=c[b+4>>2]|0;a=(c[j>>2]|0)+16|0;r=c[a+4>>2]|0;if((q|0)>(r|0)|((q|0)==(r|0)?(c[b>>2]|0)>>>0>(c[a>>2]|0)>>>0:0)){c[f>>2]=1;a=c[f>>2]|0;i=k;return a|0}else{c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}}do{if((c[n>>2]&8|0)!=0){h[r>>3]=+h[(c[g>>2]|0)+8>>3]}else{if((c[n>>2]&4|0)!=0){a=(c[g>>2]|0)+16|0;h[r>>3]=+((c[a>>2]|0)>>>0)+4294967296.0*+(c[a+4>>2]|0);break}c[f>>2]=1;a=c[f>>2]|0;i=k;return a|0}}while(0);do{if((c[o>>2]&8|0)!=0){h[q>>3]=+h[(c[j>>2]|0)+8>>3]}else{if((c[o>>2]&4|0)!=0){a=(c[j>>2]|0)+16|0;h[q>>3]=+((c[a>>2]|0)>>>0)+4294967296.0*+(c[a+4>>2]|0);break}c[f>>2]=-1;a=c[f>>2]|0;i=k;return a|0}}while(0);if(+h[r>>3]<+h[q>>3]){c[f>>2]=-1;a=c[f>>2]|0;i=k;return a|0}if(+h[r>>3]>+h[q>>3]){c[f>>2]=1;a=c[f>>2]|0;i=k;return a|0}else{c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}return 0}function Ut(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=i;i=i+128|0;n=p+112|0;r=p+108|0;s=p+104|0;l=p+100|0;q=p+96|0;o=p+92|0;k=p+84|0;h=p+80|0;j=p+88|0;g=p;m=p+40|0;c[r>>2]=b;c[s>>2]=e;c[l>>2]=f;if((d[(c[r>>2]|0)+30>>0]|0|0)==(d[(c[l>>2]|0)+4>>0]|0|0)){c[n>>2]=Ab[c[(c[l>>2]|0)+12>>2]&15](c[(c[l>>2]|0)+8>>2]|0,c[(c[r>>2]|0)+24>>2]|0,c[(c[r>>2]|0)+4>>2]|0,c[(c[s>>2]|0)+24>>2]|0,c[(c[s>>2]|0)+4>>2]|0)|0;b=c[n>>2]|0;i=p;return b|0}e=g+0|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));e=m+0|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));Vt(g,c[r>>2]|0,4096);Vt(m,c[s>>2]|0,4096);c[o>>2]=Rd(g,a[(c[l>>2]|0)+4>>0]|0)|0;if((c[o>>2]|0)==0){r=0}else{r=c[g+24>>2]|0}c[h>>2]=r;c[k>>2]=Rd(m,a[(c[l>>2]|0)+4>>0]|0)|0;if((c[k>>2]|0)==0){r=0}else{r=c[m+24>>2]|0}c[j>>2]=r;c[q>>2]=Ab[c[(c[l>>2]|0)+12>>2]&15](c[(c[l>>2]|0)+8>>2]|0,c[h>>2]|0,c[o>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;Gd(g);Gd(m);c[n>>2]=c[q>>2];b=c[n>>2]|0;i=p;return b|0}function Vt(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0;j=i;i=i+16|0;g=j+8|0;h=j;k=j+4|0;c[g>>2]=a;c[h>>2]=d;c[k>>2]=f;if((b[(c[g>>2]|0)+28>>1]&9312|0)!=0){te(c[g>>2]|0)}a=(c[g>>2]|0)+0|0;d=(c[h>>2]|0)+0|0;f=a+36|0;do{c[a>>2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(f|0));c[(c[g>>2]|0)+32>>2]=0;if((b[(c[h>>2]|0)+28>>1]&2048|0)!=0){i=j;return}a=(c[g>>2]|0)+28|0;b[a>>1]=(e[a>>1]|0)&-7169;a=(c[g>>2]|0)+28|0;b[a>>1]=e[a>>1]|0|c[k>>2];i=j;return}function Wt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;k=f+24|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;uc(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,g);i=f;return}function Xt(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;a[(c[e>>2]|0)+68>>0]=1;i=d;return}function Yt(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=ub[c[e>>2]&63](1612)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}c[c[d>>2]>>2]=-1;e=c[d>>2]|0;i=b;return e|0}function Zt(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+48|0;j=h+32|0;p=h;k=h+4|0;o=h+8|0;n=h+12|0;m=h+24|0;l=h+28|0;c[p>>2]=d;c[k>>2]=e;c[o>>2]=g;c[l>>2]=c[p>>2];if((c[c[l>>2]>>2]|0)<0){c[c[l>>2]>>2]=0;c[(c[l>>2]|0)+4>>2]=-1;b[(c[l>>2]|0)+12>>1]=0;a[(c[l>>2]|0)+14>>0]=0}c[n+0>>2]=c[f+0>>2];c[n+4>>2]=c[f+4>>2];c[(c[l>>2]|0)+8>>2]=c[o>>2];while(1){c[m>>2]=mu(c[l>>2]|0,c[k>>2]&255)|0;do{if((c[m>>2]|0)<642){nu(c[l>>2]|0,c[m>>2]|0,c[k>>2]|0,n);p=(c[l>>2]|0)+4|0;c[p>>2]=(c[p>>2]|0)+ -1;c[k>>2]=254}else{f=c[l>>2]|0;if((c[m>>2]|0)<969){ou(f,(c[m>>2]|0)-642|0);break}else{p=c[k>>2]|0;c[j+0>>2]=c[n+0>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];pu(f,p,j);ku(c[l>>2]|0,c[k>>2]&255,n);c[k>>2]=254;break}}}while(0);if((c[k>>2]|0)==254){j=11;break}if((c[c[l>>2]>>2]|0)<0){j=11;break}}if((j|0)==11){i=h;return}}function _t(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d;f=d+4|0;c[g>>2]=a;c[e>>2]=b;c[f>>2]=c[g>>2];if((c[f>>2]|0)==0){i=d;return}while(1){if((c[c[f>>2]>>2]|0)<0){break}ju(c[f>>2]|0)|0}rb[c[e>>2]&31](c[f>>2]|0);i=d;return}function $t(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+28|0;j=f;l=f+4|0;k=f+8|0;h=f+24|0;c[g>>2]=a;c[j>>2]=b;c[l>>2]=d;c[k>>2]=e;c[h>>2]=iu(c[j>>2]|0,c[l>>2]|0,k)|0;cc(c[j>>2]|0,c[c[g>>2]>>2]|0);c[c[g>>2]>>2]=c[h>>2];i=f;return}function au(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}c[e>>2]=c[c[d>>2]>>2];bc(c[e>>2]|0,c[d>>2]|0);a=c[(c[d>>2]|0)+52>>2]|0;if((c[(c[d>>2]|0)+48>>2]|0)!=0){c[(c[(c[d>>2]|0)+48>>2]|0)+52>>2]=a}else{c[(c[e>>2]|0)+4>>2]=a}if((c[(c[d>>2]|0)+52>>2]|0)!=0){c[(c[(c[d>>2]|0)+52>>2]|0)+48>>2]=c[(c[d>>2]|0)+48>>2]}c[(c[d>>2]|0)+40>>2]=-1241070648;c[c[d>>2]>>2]=0;cc(c[e>>2]|0,c[d>>2]|0);i=b;return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d;g=d+4|0;h=d+8|0;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[c[f>>2]>>2]|0)){break}c[h>>2]=(c[f>>2]|0)+8+(c[g>>2]<<4);cu(c[e>>2]|0,c[(c[h>>2]|0)+4>>2]|0);du(c[e>>2]|0,c[(c[h>>2]|0)+8>>2]|0);cc(c[e>>2]|0,c[c[h>>2]>>2]|0);c[g>>2]=(c[g>>2]|0)+1}cc(c[e>>2]|0,c[f>>2]|0);i=d;return}function cu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+12|0;e=d;g=d+4|0;h=d+8|0;c[f>>2]=a;c[e>>2]=b;if((c[e>>2]|0)==0){i=d;return}c[h>>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=0;while(1){b=c[f>>2]|0;if((c[g>>2]|0)>=(c[c[e>>2]>>2]|0)){break}gu(b,c[c[h>>2]>>2]|0);cc(c[f>>2]|0,c[(c[h>>2]|0)+4>>2]|0);cc(c[f>>2]|0,c[(c[h>>2]|0)+8>>2]|0);c[g>>2]=(c[g>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+20}cc(b,c[(c[e>>2]|0)+4>>2]|0);cc(c[f>>2]|0,c[e>>2]|0);i=d;return}function du(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}eu(c[e>>2]|0,c[f>>2]|0);cc(c[e>>2]|0,c[f>>2]|0);i=d;return}function eu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;cu(c[f>>2]|0,c[c[e>>2]>>2]|0);fu(c[f>>2]|0,c[(c[e>>2]|0)+32>>2]|0);gu(c[f>>2]|0,c[(c[e>>2]|0)+36>>2]|0);cu(c[f>>2]|0,c[(c[e>>2]|0)+40>>2]|0);gu(c[f>>2]|0,c[(c[e>>2]|0)+44>>2]|0);cu(c[f>>2]|0,c[(c[e>>2]|0)+48>>2]|0);du(c[f>>2]|0,c[(c[e>>2]|0)+52>>2]|0);gu(c[f>>2]|0,c[(c[e>>2]|0)+60>>2]|0);gu(c[f>>2]|0,c[(c[e>>2]|0)+64>>2]|0);bu(c[f>>2]|0,c[(c[e>>2]|0)+68>>2]|0);i=d;return}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+12|0;e=d;g=d+4|0;h=d+8|0;c[f>>2]=a;c[e>>2]=b;if((c[e>>2]|0)==0){i=d;return}c[h>>2]=(c[e>>2]|0)+8;c[g>>2]=0;while(1){b=c[f>>2]|0;if((c[g>>2]|0)>=(c[c[e>>2]>>2]|0)){break}cc(b,c[(c[h>>2]|0)+4>>2]|0);cc(c[f>>2]|0,c[(c[h>>2]|0)+8>>2]|0);cc(c[f>>2]|0,c[(c[h>>2]|0)+12>>2]|0);cc(c[f>>2]|0,c[(c[h>>2]|0)+64>>2]|0);ac(c[f>>2]|0,c[(c[h>>2]|0)+16>>2]|0);du(c[f>>2]|0,c[(c[h>>2]|0)+20>>2]|0);gu(c[f>>2]|0,c[(c[h>>2]|0)+44>>2]|0);hu(c[f>>2]|0,c[(c[h>>2]|0)+48>>2]|0);c[g>>2]=(c[g>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+72}cc(b,c[e>>2]|0);i=d;return}function gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}do{if((c[(c[f>>2]|0)+4>>2]&16384|0)==0){gu(c[e>>2]|0,c[(c[f>>2]|0)+12>>2]|0);gu(c[e>>2]|0,c[(c[f>>2]|0)+16>>2]|0);if((c[(c[f>>2]|0)+4>>2]&65536|0)!=0){cc(c[e>>2]|0,c[(c[f>>2]|0)+8>>2]|0)}a=c[e>>2]|0;b=(c[f>>2]|0)+20|0;if((c[(c[f>>2]|0)+4>>2]&2048|0)!=0){du(a,c[b>>2]|0);break}else{cu(a,c[b>>2]|0);break}}}while(0);if((c[(c[f>>2]|0)+4>>2]&32768|0)!=0){i=d;return}cc(c[e>>2]|0,c[f>>2]|0);i=d;return}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;e=d;g=d+4|0;c[f>>2]=a;c[e>>2]=b;if((c[e>>2]|0)==0){i=d;return}c[g>>2]=0;while(1){b=c[f>>2]|0;if((c[g>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){break}cc(b,c[(c[c[e>>2]>>2]|0)+(c[g>>2]<<3)>>2]|0);c[g>>2]=(c[g>>2]|0)+1}cc(b,c[c[e>>2]>>2]|0);cc(c[f>>2]|0,c[e>>2]|0);i=d;return}function iu(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+128|0;j=g+40|0;m=g;l=g+4|0;h=g+8|0;k=g+12|0;c[j>>2]=b;c[m>>2]=e;c[l>>2]=f;tc(k,g+44|0,70,c[(c[j>>2]|0)+88>>2]|0);c[k>>2]=c[j>>2];uc(k,1,c[m>>2]|0,c[l>>2]|0);c[h>>2]=vc(k)|0;if((d[k+25>>0]|0|0)!=1){m=c[h>>2]|0;i=g;return m|0}a[(c[j>>2]|0)+64>>0]=1;m=c[h>>2]|0;i=g;return m|0}function ju(b){b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+8|0;h=e;g=e+12|0;j=e+4|0;c[h>>2]=b;c[j>>2]=(c[h>>2]|0)+12+(c[c[h>>2]>>2]<<4);if((c[c[h>>2]>>2]|0)<0){c[f>>2]=0;j=c[f>>2]|0;i=e;return j|0}else{a[g>>0]=a[(c[j>>2]|0)+2>>0]|0;ku(c[h>>2]|0,a[g>>0]|0,(c[j>>2]|0)+4|0);j=c[h>>2]|0;c[j>>2]=(c[j>>2]|0)+ -1;c[f>>2]=d[g>>0]|0;j=c[f>>2]|0;i=e;return j|0}return 0}function ku(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;l=g+8|0;k=g+12|0;h=g+4|0;j=g;c[l>>2]=b;a[k>>0]=e;c[h>>2]=f;c[j>>2]=c[(c[l>>2]|0)+8>>2];do{switch(d[k>>0]|0|0){case 175:case 174:{gu(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 243:case 238:case 229:case 227:case 216:case 204:case 202:{gu(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 236:{hu(c[c[j>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0);i=g;return};case 252:case 197:{bu(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 223:case 219:case 217:{hu(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 228:case 221:case 220:case 210:case 209:case 208:case 205:case 203:case 200:case 188:case 179:{cu(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 239:case 234:{lu(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 207:case 196:case 195:case 163:{du(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 213:case 212:case 201:case 194:{fu(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};default:{i=g;return}}}while(0)}function lu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d;f=d+4|0;c[g>>2]=a;c[e>>2]=b;while(1){if((c[e>>2]|0)==0){break}c[f>>2]=c[e>>2];c[e>>2]=c[(c[e>>2]|0)+32>>2];gu(c[g>>2]|0,c[(c[f>>2]|0)+20>>2]|0);cu(c[g>>2]|0,c[(c[f>>2]|0)+24>>2]|0);du(c[g>>2]|0,c[(c[f>>2]|0)+8>>2]|0);hu(c[g>>2]|0,c[(c[f>>2]|0)+28>>2]|0);cc(c[g>>2]|0,c[f>>2]|0)}i=d;return}function mu(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=i;i=i+32|0;j=k+16|0;p=k;l=k+21|0;h=k+8|0;o=k+12|0;m=k+20|0;n=k+4|0;c[p>>2]=f;a[l>>0]=g;c[o>>2]=e[(c[p>>2]|0)+12+(c[c[p>>2]>>2]<<4)>>1]|0;if((c[o>>2]|0)<=429){f=b[33640+(c[o>>2]<<1)>>1]|0;c[h>>2]=f;if(!((f|0)==-86)){c[h>>2]=(c[h>>2]|0)+(d[l>>0]|0);if(!((c[h>>2]|0)<0|(c[h>>2]|0)>=1497)){if((d[35792+(c[h>>2]|0)>>0]|0)==(d[l>>0]|0)){c[j>>2]=e[18248+(c[h>>2]<<1)>>1]|0;f=c[j>>2]|0;i=k;return f|0}}if((d[l>>0]|0)>0){if((d[l>>0]|0)>>>0<70){f=a[37296+(d[l>>0]|0)>>0]|0;a[m>>0]=f;if((f&255|0)!=0){c[j>>2]=mu(c[p>>2]|0,a[m>>0]|0)|0;f=c[j>>2]|0;i=k;return f|0}}c[n>>2]=(c[h>>2]|0)-(d[l>>0]|0)+70;if((c[n>>2]|0)>=0){if((d[35792+(c[n>>2]|0)>>0]|0)==70){c[j>>2]=e[18248+(c[n>>2]<<1)>>1]|0;f=c[j>>2]|0;i=k;return f|0}}}c[j>>2]=e[34504+(c[o>>2]<<1)>>1]|0;f=c[j>>2]|0;i=k;return f|0}}c[j>>2]=e[34504+(c[o>>2]<<1)>>1]|0;f=c[j>>2]|0;i=k;return f|0}function nu(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;n=m+16|0;h=m;l=m+4|0;j=m+8|0;k=m+12|0;c[n>>2]=d;c[h>>2]=e;c[l>>2]=f;c[j>>2]=g;g=c[n>>2]|0;c[g>>2]=(c[g>>2]|0)+1;g=c[n>>2]|0;if((c[c[n>>2]>>2]|0)>=100){YE(g,c[j>>2]|0);i=m;return}else{c[k>>2]=(c[n>>2]|0)+12+(c[g>>2]<<4);b[c[k>>2]>>1]=c[h>>2];a[(c[k>>2]|0)+2>>0]=c[l>>2];d=(c[k>>2]|0)+4|0;e=c[j>>2]|0;c[d+0>>2]=c[e+0>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];i=m;return}}function ou(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0;n=i;i=i+240|0;r=n;p=n+220|0;o=n+216|0;m=n+212|0;l=n+208|0;h=n+196|0;j=n+192|0;k=n+188|0;q=n+184|0;u=n+172|0;S=n+160|0;D=n+140|0;H=n+136|0;L=n+132|0;K=n+128|0;I=n+124|0;J=n+120|0;v=n+116|0;x=n+112|0;w=n+104|0;y=n+96|0;z=n+224|0;F=n+44|0;G=n+36|0;E=n+32|0;B=n+28|0;C=n+24|0;A=n+40|0;N=n+12|0;M=n+8|0;P=n+16|0;R=n+20|0;Q=n+84|0;O=n+48|0;U=n+52|0;T=n+56|0;V=n+60|0;X=n+64|0;t=n+68|0;W=n+72|0;Z=n+76|0;_=n+80|0;Y=n+88|0;c[p>>2]=f;c[o>>2]=g;c[q>>2]=c[(c[p>>2]|0)+8>>2];c[j>>2]=(c[p>>2]|0)+12+(c[c[p>>2]>>2]<<4);c[h+0>>2]=c[33600>>2];c[h+4>>2]=c[33604>>2];c[h+8>>2]=c[33608>>2];a:do{switch(c[o>>2]|0){case 18:case 17:{tu(c[q>>2]|0);break};case 62:{Eu(c[q>>2]|0,0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0);break};case 65:{Hu(c[q>>2]|0,0,(c[j>>2]|0)+ -32+4|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 66:{Iu(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 78:{c[h>>2]=9;break};case 79:{c[h>>2]=6;break};case 80:{c[h>>2]=0;break};case 103:case 100:case 98:case 82:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 86:{c[h+4>>2]=0;c[h>>2]=0;break};case 19:{uu(c[q>>2]|0);break};case 27:{a[(c[c[q>>2]>>2]|0)+242>>0]=0;f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];break};case 8:{ru(c[q>>2]|0);break};case 87:{f=(c[j>>2]|0)+ -16+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];break};case 90:{c[(c[q>>2]|0)+324>>2]=0;break};case 279:case 263:case 262:case 261:case 260:case 259:case 258:case 257:case 256:case 247:case 150:case 141:case 131:case 130:case 48:case 45:case 42:case 41:case 40:{f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];break};case 93:{Eu(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,0);break};case 7:{qu(c[q>>2]|0,2);break};case 33:{xu(c[q>>2]|0,0,0,0,c[(c[j>>2]|0)+4>>2]|0);du(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 94:{Fu(c[q>>2]|0,0,0,0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,0,0,0,0)|0;break};case 5:{qu(c[q>>2]|0,0);break};case 23:{vu(c[q>>2]|0,1,(c[j>>2]|0)+4|0);break};case 35:{if((c[(c[j>>2]|0)+8>>2]|0)==5){if((Tb(c[(c[j>>2]|0)+4>>2]|0,8848,5)|0)==0){a[h>>0]=32;break a}}a[h>>0]=0;f=c[q>>2]|0;g=c[(c[j>>2]|0)+4>>2]|0;c[r>>2]=c[(c[j>>2]|0)+8>>2];c[r+4>>2]=g;bf(f,16528,r);break};case 6:{qu(c[q>>2]|0,1);break};case 9:{su(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 32:{xu(c[q>>2]|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+ -16+4|0,a[(c[j>>2]|0)+4>>0]|0,0);break};case 22:{vu(c[q>>2]|0,0,(c[j>>2]|0)+4|0);break};case 38:{c[h>>2]=c[(c[j>>2]|0)+ -32+4>>2];c[h+4>>2]=(c[(c[q>>2]|0)+504>>2]|0)-(c[(c[j>>2]|0)+ -32+4>>2]|0)+(c[(c[q>>2]|0)+508>>2]|0);break};case 44:{zu(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 49:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];c[h+4>>2]=(c[(c[j>>2]|0)+8>>2]|0)+((c[(c[j>>2]|0)+4>>2]|0)-(c[(c[j>>2]|0)+ -16+4>>2]|0));break};case 92:case 54:{f=(c[q>>2]|0)+320|0;g=(c[j>>2]|0)+4|0;c[f+0>>2]=c[g+0>>2];c[f+4>>2]=c[g+4>>2];break};case 57:case 55:{Au(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 46:{c[h>>2]=c[(c[j>>2]|0)+ -48+4>>2];c[h+4>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+ -48+4>>2]|0);break};case 56:{Au(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0);break};case 39:{yu(c[q>>2]|0,(c[j>>2]|0)+4|0);f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];c[(c[q>>2]|0)+324>>2]=0;break};case 59:{Cu(S,c[q>>2]|0,97,(c[j>>2]|0)+4|0);Au(c[q>>2]|0,S);break};case 61:{Du(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 222:case 219:case 107:case 84:case 69:case 30:case 29:{c[h>>2]=1;break};case 67:{Ju(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 221:case 218:case 108:case 97:case 85:case 83:case 81:case 68:case 31:case 28:{c[h>>2]=0;break};case 58:{c[u>>2]=Bu(c[q>>2]|0,157,c[(c[j>>2]|0)+4>>2]|0,0,0)|0;c[u+4>>2]=c[(c[j>>2]|0)+ -16+4>>2];c[u+8>>2]=c[(c[j>>2]|0)+12>>2];Au(c[q>>2]|0,u);break};case 26:{wu(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0,c[(c[j>>2]|0)+ -64+4>>2]|0,0,0,c[(c[j>>2]|0)+ -32+4>>2]|0);break};case 70:{c[h>>2]=0;break};case 73:case 72:{c[h>>2]=0;c[h+4>>2]=0;break};case 74:{c[h>>2]=c[(c[j>>2]|0)+4>>2];c[h+4>>2]=255;break};case 47:{c[h>>2]=c[(c[j>>2]|0)+ -80+4>>2];c[h+4>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+ -80+4>>2]|0);break};case 75:{c[h>>2]=c[(c[j>>2]|0)+4>>2]<<8;c[h+4>>2]=65280;break};case 76:{c[h>>2]=7;break};case 13:{c[h>>2]=7;break};case 34:{a[h>>0]=0;break};case 63:{Fu(c[q>>2]|0,0,0,0,0,c[(c[j>>2]|0)+4>>2]|0,0,0,0,0)|0;break};case 71:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2]&~c[(c[j>>2]|0)+8>>2]|c[(c[j>>2]|0)+4>>2];break};case 77:{c[h>>2]=8;break};case 24:{vu(c[q>>2]|0,2,(c[j>>2]|0)+4|0);break};case 64:{Gu(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 117:case 115:case 16:case 15:case 14:{c[h>>2]=d[(c[j>>2]|0)+2>>0]|0;break};case 124:case 123:{b[h>>1]=0;break};case 132:{c[h+4>>2]=0;break};case 138:{c[h>>2]=Nu(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,0,0,(c[j>>2]|0)+ -32+4|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 101:{a[h>>0]=10;break};case 99:{c[h>>2]=10;break};case 114:{c[v>>2]=c[(c[j>>2]|0)+4>>2];if((c[v>>2]|0)!=0){if((c[(c[v>>2]|0)+52>>2]|0)!=0){c[w+4>>2]=0;c[x>>2]=Nu(c[q>>2]|0,0,0,0,w,c[v>>2]|0,0,0)|0;c[v>>2]=Ou(c[q>>2]|0,0,c[x>>2]|0,0,0,0,0,0,0,0)|0}}if((c[v>>2]|0)!=0){a[(c[v>>2]|0)+4>>0]=c[(c[j>>2]|0)+ -16+4>>2];c[(c[v>>2]|0)+52>>2]=c[(c[j>>2]|0)+ -32+4>>2];if((c[(c[j>>2]|0)+ -16+4>>2]|0)!=116){a[(c[q>>2]|0)+22>>0]=1}}else{du(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0)}c[h>>2]=c[v>>2];break};case 110:{Ku(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,1,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 96:{Hu(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,(c[j>>2]|0)+ -48+4|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);Iu(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 121:{c[y>>2]=Ou(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,0,0,0,0,0,128,0,0)|0;if((c[y>>2]|0)!=0){a[(c[y>>2]|0)+4>>0]=116;c[(c[y>>2]|0)+52>>2]=c[(c[j>>2]|0)+ -64+4>>2];c[h>>2]=c[y>>2];break a}else{c[h>>2]=c[(c[j>>2]|0)+ -64+4>>2];break a}};case 127:{c[h>>2]=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0;if((c[(c[j>>2]|0)+8>>2]|0)>>>0>0){Qu(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+4|0,1)}Ru(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -16+4|0);break};case 128:{c[z>>2]=Su(c[c[q>>2]>>2]|0,116,0)|0;c[h>>2]=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[z>>2]|0)|0;break};case 134:{c[h>>2]=c[(c[j>>2]|0)+4>>2];Tu(c[h>>2]|0);break};case 136:{c[h>>2]=0;break};case 106:{Ku(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,0,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 139:{if((c[(c[j>>2]|0)+ -96+4>>2]|0)==0){if((c[(c[j>>2]|0)+ -32+8>>2]|0)==0){if((c[(c[j>>2]|0)+ -16+4>>2]|0)==0){if((c[(c[j>>2]|0)+4>>2]|0)==0){c[h>>2]=c[(c[j>>2]|0)+ -64+4>>2];break a}}}}if((c[c[(c[j>>2]|0)+ -64+4>>2]>>2]|0)!=1){Tu(c[(c[j>>2]|0)+ -64+4>>2]|0);c[A>>2]=Ou(c[q>>2]|0,0,c[(c[j>>2]|0)+ -64+4>>2]|0,0,0,0,0,512,0,0)|0;c[h>>2]=Nu(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,0,0,(c[j>>2]|0)+ -32+4|0,c[A>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break a}c[h>>2]=Nu(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,0,0,(c[j>>2]|0)+ -32+4|0,0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;if((c[h>>2]|0)!=0){c[B>>2]=(c[h>>2]|0)+8+(((c[c[h>>2]>>2]|0)-1|0)*72|0);c[C>>2]=(c[(c[j>>2]|0)+ -64+4>>2]|0)+8;c[(c[B>>2]|0)+8>>2]=c[(c[C>>2]|0)+8>>2];c[(c[B>>2]|0)+4>>2]=c[(c[C>>2]|0)+4>>2];c[(c[B>>2]|0)+20>>2]=c[(c[C>>2]|0)+20>>2];c[(c[C>>2]|0)+4>>2]=0;c[(c[C>>2]|0)+8>>2]=0;c[(c[C>>2]|0)+20>>2]=0}fu(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0);break};case 242:case 236:case 161:case 154:case 126:{c[h>>2]=0;break};case 133:{c[h>>2]=ve(c[c[q>>2]>>2]|0,80)|0;break};case 111:{c[D+0>>2]=c[16560>>2];c[D+4>>2]=c[16564>>2];c[D+8>>2]=c[16568>>2];c[D+12>>2]=c[16572>>2];c[D+16>>2]=c[16576>>2];Mu(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,D)|0;du(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 116:{c[h>>2]=116;break};case 118:{c[h>>2]=Ou(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,c[(c[j>>2]|0)+ -80+4>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,b[(c[j>>2]|0)+ -112+4>>1]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0;break};case 243:case 125:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];break};case 120:{c[h>>2]=Ou(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,0,0,0,0,0,128,0,0)|0;break};case 95:{Gu(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0);break};case 102:{a[h>>0]=c[(c[j>>2]|0)+4>>2];break};case 104:{c[h>>2]=4;break};case 137:{c[h>>2]=Nu(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,(c[j>>2]|0)+ -80+4|0,(c[j>>2]|0)+ -64+4|0,(c[j>>2]|0)+ -48+4|0,0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;Uu(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -32+4|0);break};case 129:{c[F>>2]=Bu(c[q>>2]|0,116,0,0,(c[j>>2]|0)+4|0)|0;c[G>>2]=Bu(c[q>>2]|0,27,0,0,(c[j>>2]|0)+ -32+4|0)|0;c[E>>2]=Bu(c[q>>2]|0,122,c[G>>2]|0,c[F>>2]|0,0)|0;c[h>>2]=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,c[E>>2]|0)|0;break};case 135:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];if((c[h>>2]|0)!=0){if((c[c[h>>2]>>2]|0)>0){a[(c[h>>2]|0)+8+(((c[c[h>>2]>>2]|0)-1|0)*72|0)+36>>0]=c[(c[j>>2]|0)+4>>2]}}break};case 122:{b[h>>1]=1;break};case 119:case 113:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 109:{Lu(c[q>>2]|0,(c[j>>2]|0)+ -112+4|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -32+4|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0);break};case 105:{c[h>>2]=5;break};case 112:{c[H>>2]=c[(c[j>>2]|0)+4>>2];if((c[H>>2]|0)!=0){c[I>>2]=0;c[(c[H>>2]|0)+68>>2]=c[(c[j>>2]|0)+ -16+4>>2];if((c[(c[H>>2]|0)+52>>2]|0)!=0){c[L>>2]=0;c[K>>2]=c[H>>2];while(1){if((c[K>>2]|0)==0){break}c[(c[K>>2]|0)+56>>2]=c[L>>2];f=(c[K>>2]|0)+6|0;b[f>>1]=e[f>>1]|4096;c[L>>2]=c[K>>2];c[K>>2]=c[(c[K>>2]|0)+52>>2];c[I>>2]=(c[I>>2]|0)+1}c[J>>2]=c[(c[c[q>>2]>>2]|0)+104>>2];if((c[J>>2]|0)!=0){if((c[I>>2]|0)>(c[J>>2]|0)){bf(c[q>>2]|0,16584,r)}}}}else{bu(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}c[h>>2]=c[H>>2];break};case 159:{c[h>>2]=1;break};case 196:{c[h>>2]=ev(c[q>>2]|0,0,(c[j>>2]|0)+ -48+4|0)|0;bv(h,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+4|0);break};case 193:{c[h>>2]=dv(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,(c[j>>2]|0)+4|0)|0;c[h+4>>2]=c[(c[j>>2]|0)+ -32+8>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 197:{c[h>>2]=ev(c[q>>2]|0,0,(c[j>>2]|0)+4|0)|0;bv(h,(c[j>>2]|0)+4|0,(c[j>>2]|0)+4|0);break};case 184:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];bv(h,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0);break};case 183:{f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];break};case 205:case 204:case 203:case 202:case 201:case 200:case 199:case 198:{fv(h,c[q>>2]|0,d[(c[j>>2]|0)+ -16+2>>0]|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0);break};case 156:{c[h>>2]=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0;if((c[h>>2]|0)!=0){a[(c[(c[h>>2]|0)+4>>2]|0)+(((c[c[h>>2]>>2]|0)-1|0)*20|0)+12>>0]=c[(c[j>>2]|0)+4>>2]}break};case 174:{c[h>>2]=Pu(c[q>>2]|0,0,c[(c[j>>2]|0)+4>>2]|0)|0;Qu(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -32+4|0,1);break};case 206:{f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=0;break};case 168:{c[h+4>>2]=c[(c[j>>2]|0)+ -32+4>>2];c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 176:{Xu(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,1);$u(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,0,c[(c[j>>2]|0)+ -32+4>>2]|0,d[(c[j>>2]|0)+ -80+4>>0]|0);break};case 169:{Xu(c[q>>2]|0,c[(c[j>>2]|0)+ -80+4>>2]|0,1);Uu(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,(c[j>>2]|0)+ -16+4|0);Yu(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 178:{a[h>>0]=5;break};case 234:case 232:case 170:case 163:case 148:{c[h>>2]=0;break};case 188:{c[N>>2]=Bu(c[q>>2]|0,27,0,0,(c[j>>2]|0)+ -32+4|0)|0;c[M>>2]=Bu(c[q>>2]|0,27,0,0,(c[j>>2]|0)+4|0)|0;c[h>>2]=Bu(c[q>>2]|0,122,c[N>>2]|0,c[M>>2]|0,0)|0;bv(h,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0);break};case 189:{c[P>>2]=Bu(c[q>>2]|0,27,0,0,(c[j>>2]|0)+ -64+4|0)|0;c[R>>2]=Bu(c[q>>2]|0,27,0,0,(c[j>>2]|0)+ -32+4|0)|0;c[Q>>2]=Bu(c[q>>2]|0,27,0,0,(c[j>>2]|0)+4|0)|0;c[O>>2]=Bu(c[q>>2]|0,122,c[R>>2]|0,c[Q>>2]|0,0)|0;c[h>>2]=Bu(c[q>>2]|0,122,c[P>>2]|0,c[O>>2]|0,0)|0;bv(h,(c[j>>2]|0)+ -64+4|0,(c[j>>2]|0)+4|0);break};case 143:{c[h>>2]=1;break};case 181:{c[h>>2]=av(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,(c[j>>2]|0)+4|0)|0;break};case 173:{c[h>>2]=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;Qu(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -32+4|0,1);break};case 192:{do{if((c[(c[j>>2]|0)+8>>2]|0)>>>0>=2){if((a[c[(c[j>>2]|0)+4>>2]>>0]|0)==35){if((a[136+(d[(c[(c[j>>2]|0)+4>>2]|0)+1>>0]|0)>>0]&4|0)!=0){t=c[q>>2]|0;u=(c[j>>2]|0)+4|0;if((d[(c[q>>2]|0)+18>>0]|0)==0){c[r>>2]=u;bf(t,16504,r);c[h>>2]=0;break}c[h>>2]=Bu(t,159,0,0,u)|0;if((c[h>>2]|0)!=0){Wg((c[(c[j>>2]|0)+4>>2]|0)+1|0,(c[h>>2]|0)+28|0)|0}}else{s=170}}else{s=170}}else{s=170}}while(0);if((s|0)==170){Cu(h,c[q>>2]|0,135,(c[j>>2]|0)+4|0);cv(c[q>>2]|0,c[h>>2]|0)}bv(h,(c[j>>2]|0)+4|0,(c[j>>2]|0)+4|0);break};case 151:{c[h>>2]=0;c[h+4>>2]=1;break};case 177:{a[h>>0]=a[(c[j>>2]|0)+4>>0]|0;break};case 149:case 140:{c[h>>2]=0;c[h+4>>2]=0;break};case 146:{c[h>>2]=Wu(c[q>>2]|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+ -16+4|0)|0;break};case 180:case 152:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];break};case 167:{c[h>>2]=c[(c[j>>2]|0)+ -32+4>>2];c[h+4>>2]=c[(c[j>>2]|0)+4>>2];break};case 191:case 190:case 185:{Cu(h,c[q>>2]|0,d[(c[j>>2]|0)+2>>0]|0,(c[j>>2]|0)+4|0);break};case 179:case 153:{c[h>>2]=0;break};case 172:{Xu(c[q>>2]|0,c[(c[j>>2]|0)+ -112+4>>2]|0,1);Uu(c[q>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,(c[j>>2]|0)+ -48+4|0);Zu(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,16624);_u(c[q>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,d[(c[j>>2]|0)+ -80+4>>0]|0);break};case 175:{Xu(c[q>>2]|0,c[(c[j>>2]|0)+ -80+4>>2]|0,1);$u(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,d[(c[j>>2]|0)+ -64+4>>0]|0);break};case 195:{if((c[(c[j>>2]|0)+ -16+4>>2]|0)!=0){if((c[c[(c[j>>2]|0)+ -16+4>>2]>>2]|0)>(c[(c[c[q>>2]>>2]|0)+112>>2]|0)){f=c[q>>2]|0;c[r>>2]=(c[j>>2]|0)+ -64+4;bf(f,16640,r)}}c[h>>2]=ev(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,(c[j>>2]|0)+ -64+4|0)|0;bv(h,(c[j>>2]|0)+ -64+4|0,(c[j>>2]|0)+4|0);if((e[(c[j>>2]|0)+ -32+4>>1]|0)!=0){if((c[h>>2]|0)!=0){f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|16}}break};case 145:{c[h>>2]=Wu(c[q>>2]|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+ -16+4|0,0)|0;break};case 194:{c[h>>2]=Bu(c[q>>2]|0,38,c[(c[j>>2]|0)+ -48+4>>2]|0,0,(c[j>>2]|0)+ -16+4|0)|0;bv(h,(c[j>>2]|0)+ -80+4|0,(c[j>>2]|0)+4|0);break};case 160:case 158:{c[h>>2]=0;break};case 182:{c[h>>2]=av(c[c[q>>2]>>2]|0,0,(c[j>>2]|0)+4|0)|0;break};case 157:{c[h>>2]=Pu(c[q>>2]|0,0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0;if((c[h>>2]|0)!=0){if((c[(c[h>>2]|0)+4>>2]|0)!=0){a[(c[(c[h>>2]|0)+4>>2]|0)+12>>0]=c[(c[j>>2]|0)+4>>2]}}break};case 165:{c[h>>2]=0;c[h+4>>2]=0;break};case 166:{c[h>>2]=c[(c[j>>2]|0)+4>>2];c[h+4>>2]=0;break};case 142:{c[h>>2]=Vu(c[c[q>>2]>>2]|0,0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0)|0;break};case 144:{c[h>>2]=Wu(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0,0,0)|0;break};case 233:case 231:case 171:case 164:case 147:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 187:case 186:{Cu(h,c[q>>2]|0,27,(c[j>>2]|0)+4|0);break};case 235:case 162:case 155:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 210:{gv(h,c[q>>2]|0,d[(c[j>>2]|0)+2>>0]|0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0);break};case 224:{c[h>>2]=Bu(c[q>>2]|0,119,0,0,0)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+20>>2]=c[(c[j>>2]|0)+ -16+4>>2];f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|2048;jv(c[q>>2]|0,c[h>>2]|0)}else{du(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}c[h+4>>2]=c[(c[j>>2]|0)+ -32+4>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 207:{f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=1;break};case 226:{c[t>>2]=Vu(c[c[q>>2]>>2]|0,0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0)|0;c[h>>2]=Bu(c[q>>2]|0,75,c[(c[j>>2]|0)+ -48+4>>2]|0,0,0)|0;r=c[q>>2]|0;if((c[h>>2]|0)!=0){f=Ou(r,0,c[t>>2]|0,0,0,0,0,0,0,0)|0;c[(c[h>>2]|0)+20>>2]=f;f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|2048;jv(c[q>>2]|0,c[h>>2]|0)}else{fu(c[r>>2]|0,c[t>>2]|0)}if((c[(c[j>>2]|0)+ -32+4>>2]|0)!=0){c[h>>2]=Bu(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}c[h+4>>2]=c[(c[j>>2]|0)+ -48+8>>2];q=c[j>>2]|0;if((c[(c[j>>2]|0)+4>>2]|0)!=0){q=(c[(c[j>>2]|0)+4>>2]|0)+(c[q+8>>2]|0)|0}else{q=(c[(c[j>>2]|0)+ -16+4>>2]|0)+(c[q+ -16+8>>2]|0)|0}c[h+8>>2]=q;break};case 216:{iv(h,c[q>>2]|0,157,(c[j>>2]|0)+4|0,(c[j>>2]|0)+ -16+4|0);break};case 209:{c[T>>2]=Pu(c[q>>2]|0,0,c[(c[j>>2]|0)+ -32+4>>2]|0)|0;c[T>>2]=Pu(c[q>>2]|0,c[T>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0)|0;c[T>>2]=Pu(c[q>>2]|0,c[T>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;c[h>>2]=ev(c[q>>2]|0,c[T>>2]|0,(c[j>>2]|0)+ -48+4|0)|0;if((c[(c[j>>2]|0)+ -48+12>>2]|0)!=0){c[h>>2]=Bu(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}c[h+4>>2]=c[(c[j>>2]|0)+ -64+8>>2];c[h+8>>2]=c[(c[j>>2]|0)+12>>2];if((c[h>>2]|0)!=0){f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|128}break};case 208:{c[U>>2]=Pu(c[q>>2]|0,0,c[(c[j>>2]|0)+4>>2]|0)|0;c[U>>2]=Pu(c[q>>2]|0,c[U>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0)|0;c[h>>2]=ev(c[q>>2]|0,c[U>>2]|0,(c[j>>2]|0)+ -16+4|0)|0;if((c[(c[j>>2]|0)+ -16+12>>2]|0)!=0){c[h>>2]=Bu(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}c[h+4>>2]=c[(c[j>>2]|0)+ -32+8>>2];c[h+8>>2]=c[(c[j>>2]|0)+12>>2];if((c[h>>2]|0)!=0){f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|128}break};case 228:{c[h>>2]=Bu(c[q>>2]|0,136,c[(c[j>>2]|0)+ -48+4>>2]|0,0,0)|0;if((c[h>>2]|0)!=0){if((c[(c[j>>2]|0)+ -16+4>>2]|0)!=0){r=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0}else{r=c[(c[j>>2]|0)+ -32+4>>2]|0}c[(c[h>>2]|0)+20>>2]=r;jv(c[q>>2]|0,c[h>>2]|0)}else{cu(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0);gu(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}c[h+4>>2]=c[(c[j>>2]|0)+ -64+4>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 217:{iv(h,c[q>>2]|0,158,(c[j>>2]|0)+4|0,(c[j>>2]|0)+ -16+4|0);break};case 215:case 214:{iv(h,c[q>>2]|0,d[(c[j>>2]|0)+ -16+2>>0]|0,(c[j>>2]|0)+4|0,(c[j>>2]|0)+ -16+4|0);break};case 220:{c[V>>2]=Pu(c[q>>2]|0,0,c[(c[j>>2]|0)+ -32+4>>2]|0)|0;c[V>>2]=Pu(c[q>>2]|0,c[V>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;c[h>>2]=Bu(c[q>>2]|0,74,c[(c[j>>2]|0)+ -64+4>>2]|0,0,0)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+20>>2]=c[V>>2]}else{cu(c[c[q>>2]>>2]|0,c[V>>2]|0)}if((c[(c[j>>2]|0)+ -48+4>>2]|0)!=0){c[h>>2]=Bu(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}c[h+4>>2]=c[(c[j>>2]|0)+ -64+8>>2];c[h+8>>2]=c[(c[j>>2]|0)+12>>2];break};case 227:{f=Bu(c[q>>2]|0,20,0,0,0)|0;c[h>>2]=f;c[W>>2]=f;if((c[W>>2]|0)!=0){c[(c[W>>2]|0)+20>>2]=c[(c[j>>2]|0)+ -16+4>>2];f=(c[W>>2]|0)+4|0;c[f>>2]=c[f>>2]|2048;jv(c[q>>2]|0,c[W>>2]|0)}else{du(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}c[h+4>>2]=c[(c[j>>2]|0)+ -48+4>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 212:{fv(h,c[q>>2]|0,73,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0);hv(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[h>>2]|0,76);break};case 213:{fv(h,c[q>>2]|0,148,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+4|0);hv(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[h>>2]|0,77);break};case 211:{gv(h,c[q>>2]|0,77,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0);break};case 223:{do{if((c[(c[j>>2]|0)+ -16+4>>2]|0)==0){c[h>>2]=Bu(c[q>>2]|0,132,0,0,16680+(c[(c[j>>2]|0)+ -48+4>>2]<<3)|0)|0;gu(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0)}else{if((c[c[(c[j>>2]|0)+ -16+4>>2]>>2]|0)==1){c[X>>2]=c[c[(c[(c[j>>2]|0)+ -16+4>>2]|0)+4>>2]>>2];c[c[(c[(c[j>>2]|0)+ -16+4>>2]|0)+4>>2]>>2]=0;cu(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);if((c[X>>2]|0)!=0){f=(c[X>>2]|0)+4|0;c[f>>2]=c[f>>2]&-257;f=(c[X>>2]|0)+4|0;c[f>>2]=c[f>>2]|512}c[h>>2]=Bu(c[q>>2]|0,(c[(c[j>>2]|0)+ -48+4>>2]|0)!=0?78:79,c[(c[j>>2]|0)+ -64+4>>2]|0,c[X>>2]|0,0)|0;break}c[h>>2]=Bu(c[q>>2]|0,75,c[(c[j>>2]|0)+ -64+4>>2]|0,0,0)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+20>>2]=c[(c[j>>2]|0)+ -16+4>>2];jv(c[q>>2]|0,c[h>>2]|0)}else{cu(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}if((c[(c[j>>2]|0)+ -48+4>>2]|0)!=0){c[h>>2]=Bu(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}}}while(0);c[h+4>>2]=c[(c[j>>2]|0)+ -64+8>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 225:{c[h>>2]=Bu(c[q>>2]|0,75,c[(c[j>>2]|0)+ -64+4>>2]|0,0,0)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+20>>2]=c[(c[j>>2]|0)+ -16+4>>2];f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|2048;jv(c[q>>2]|0,c[h>>2]|0)}else{du(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}if((c[(c[j>>2]|0)+ -48+4>>2]|0)!=0){c[h>>2]=Bu(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}c[h+4>>2]=c[(c[j>>2]|0)+ -64+8>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 305:{zv(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 229:{c[h>>2]=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0)|0;c[h>>2]=Pu(c[q>>2]|0,c[h>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 237:{c[h>>2]=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 241:{c[h>>2]=0;break};case 239:{Fu(c[q>>2]|0,(c[j>>2]|0)+ -112+4|0,(c[j>>2]|0)+ -96+4|0,Vu(c[c[q>>2]>>2]|0,0,(c[j>>2]|0)+ -64+4|0,0)|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+ -160+4>>2]|0,(c[j>>2]|0)+ -176+4|0,c[(c[j>>2]|0)+4>>2]|0,0,c[(c[j>>2]|0)+ -128+4>>2]|0)|0;break};case 253:{mv(c[q>>2]|0,(c[j>>2]|0)+ -64+4|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -16+4|0,0);break};case 269:case 266:{c[h>>2]=35;break};case 246:{c[h>>2]=0;c[h+4>>2]=0;break};case 297:case 276:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 264:{c[Y>>2]=c[(c[j>>2]|0)+ -48+4>>2];c[Y+4>>2]=(c[(c[j>>2]|0)+4>>2]|0)-(c[(c[j>>2]|0)+ -48+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);nv(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,Y);break};case 295:{vv(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 280:{f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];bf(c[q>>2]|0,16704,r);break};case 309:{Bv(c[q>>2]|0,0);break};case 244:{c[Z>>2]=dv(c[q>>2]|0,0,(c[j>>2]|0)+ -16+4|0)|0;c[h>>2]=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[Z>>2]|0)|0;Qu(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -32+4|0,1);Zu(c[q>>2]|0,c[h>>2]|0,16696);if((c[h>>2]|0)!=0){a[(c[(c[h>>2]|0)+4>>2]|0)+(((c[c[h>>2]>>2]|0)-1|0)*20|0)+12>>0]=c[(c[j>>2]|0)+4>>2]}break};case 245:{c[_>>2]=dv(c[q>>2]|0,0,(c[j>>2]|0)+ -16+4|0)|0;c[h>>2]=Pu(c[q>>2]|0,0,c[_>>2]|0)|0;Qu(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -32+4|0,1);Zu(c[q>>2]|0,c[h>>2]|0,16696);if((c[h>>2]|0)!=0){a[(c[(c[h>>2]|0)+4>>2]|0)+(((c[c[h>>2]>>2]|0)-1|0)*20|0)+12>>0]=c[(c[j>>2]|0)+4>>2]}break};case 255:{mv(c[q>>2]|0,(c[j>>2]|0)+ -64+4|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -16+4|0,1);break};case 301:{wv(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0);break};case 310:{Bv(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 311:{Cv(c[q>>2]|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0,c[(c[j>>2]|0)+ -64+4>>2]|0);break};case 314:{Dv(c[q>>2]|0);break};case 286:{c[h>>2]=rv(c[c[q>>2]>>2]|0,(c[j>>2]|0)+ -32+4|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 272:{c[h>>2]=110;c[h+4>>2]=c[(c[j>>2]|0)+4>>2];break};case 287:{c[h>>2]=sv(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 230:{c[h>>2]=Pu(c[q>>2]|0,0,c[(c[j>>2]|0)+ -32+4>>2]|0)|0;c[h>>2]=Pu(c[q>>2]|0,c[h>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 254:{mv(c[q>>2]|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0,1);break};case 288:{c[h>>2]=Bu(c[q>>2]|0,57,0,0,0)|0;if((c[h>>2]|0)!=0){a[(c[h>>2]|0)+1>>0]=4}c[h+4>>2]=c[(c[j>>2]|0)+ -48+4>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 318:case 317:case 316:{Ev(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 292:{c[h>>2]=3;break};case 277:{c[(c[(c[(c[j>>2]|0)+ -32+4>>2]|0)+36>>2]|0)+32>>2]=c[(c[j>>2]|0)+ -16+4>>2];c[(c[(c[j>>2]|0)+ -32+4>>2]|0)+36>>2]=c[(c[j>>2]|0)+ -16+4>>2];c[h>>2]=c[(c[j>>2]|0)+ -32+4>>2];break};case 248:{kv(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 265:{ov(c[q>>2]|0,(c[j>>2]|0)+ -112+4|0,(c[j>>2]|0)+ -96+4|0,c[(c[j>>2]|0)+ -80+4>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -64+8>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -160+4>>2]|0,c[(c[j>>2]|0)+ -128+4>>2]|0);q=c[j>>2]|0;if((c[(c[j>>2]|0)+ -96+8>>2]|0)==0){f=q+ -112+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];break a}else{f=q+ -96+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];break a}};case 278:{c[(c[(c[j>>2]|0)+ -16+4>>2]|0)+36>>2]=c[(c[j>>2]|0)+ -16+4>>2];c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];break};case 294:{uv(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 268:{c[h>>2]=49;break};case 284:{c[h>>2]=pv(c[c[q>>2]>>2]|0,(c[j>>2]|0)+ -64+4|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,a[(c[j>>2]|0)+ -80+4>>0]|0)|0;break};case 289:{c[h>>2]=Bu(c[q>>2]|0,57,0,0,(c[j>>2]|0)+ -16+4|0)|0;if((c[h>>2]|0)!=0){a[(c[h>>2]|0)+1>>0]=c[(c[j>>2]|0)+ -48+4>>2]}c[h+4>>2]=c[(c[j>>2]|0)+ -80+4>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 250:case 249:{lv(c[q>>2]|0);break};case 252:{mv(c[q>>2]|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0,0);break};case 271:case 270:{c[h>>2]=d[(c[j>>2]|0)+2>>0]|0;c[h+4>>2]=0;break};case 290:{c[h>>2]=1;break};case 302:{xv(c[q>>2]|0,0,0);break};case 300:{wv(c[q>>2]|0,0,0);break};case 303:{xv(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0);break};case 251:{mv(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0,0,0);break};case 304:{yv(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,(c[j>>2]|0)+4|0);break};case 282:{bf(c[q>>2]|0,16800,r);break};case 296:case 275:{c[h>>2]=0;break};case 306:{a[(c[c[q>>2]>>2]|0)+242>>0]=0;Av(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 291:case 240:{c[h>>2]=2;break};case 267:{c[h>>2]=31;break};case 283:{bf(c[q>>2]|0,16888,r);break};case 285:{c[h>>2]=qv(c[c[q>>2]>>2]|0,(c[j>>2]|0)+ -32+4|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,a[(c[j>>2]|0)+ -64+4>>0]|0)|0;break};case 293:{tv(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 238:{c[h>>2]=Pu(c[q>>2]|0,0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 326:{c[h>>2]=Fv(c[q>>2]|0,c[(c[j>>2]|0)+ -112+4>>2]|0,(c[j>>2]|0)+ -80+4|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0;break};case 324:case 323:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 322:{c[h>>2]=0;break};case 325:{c[h>>2]=Fv(c[q>>2]|0,0,(c[j>>2]|0)+ -80+4|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0;break};default:{}}}while(0);c[m>>2]=d[16976+(c[o>>2]<<1)>>0]|0;c[k>>2]=d[16977+(c[o>>2]<<1)>>0]|0;f=c[p>>2]|0;c[f>>2]=(c[f>>2]|0)-(c[k>>2]|0);c[l>>2]=Gv(e[(c[j>>2]|0)+(0-(c[k>>2]|0)<<4)>>1]|0,c[m>>2]&255)|0;if((c[l>>2]|0)>=642){Hv(c[p>>2]|0);i=n;return}o=c[p>>2]|0;if((c[k>>2]|0)!=0){c[o>>2]=(c[o>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+(0-((c[k>>2]|0)-1)<<4);b[c[j>>2]>>1]=c[l>>2];a[(c[j>>2]|0)+2>>0]=c[m>>2];f=(c[j>>2]|0)+4|0;c[f+0>>2]=c[h+0>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];i=n;return}else{nu(o,c[l>>2]|0,c[m>>2]|0,h);i=n;return}}function pu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e;f=e+12|0;g=e+8|0;c[f>>2]=a;c[e+4>>2]=b;c[g>>2]=c[(c[f>>2]|0)+8>>2];a=c[g>>2]|0;c[h>>2]=d;bf(a,16504,h);c[(c[f>>2]|0)+8>>2]=c[g>>2];i=e;return}function qu(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[(c[f>>2]|0)+450>>0]=c[g>>2];c[(c[f>>2]|0)+440>>2]=0;i=e;return}function ru(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;h=k+28|0;e=k;g=k+4|0;n=k+8|0;m=k+12|0;j=k+16|0;l=k+20|0;o=k+24|0;c[h>>2]=b;c[e>>2]=c[c[h>>2]>>2];if((a[(c[e>>2]|0)+64>>0]|0)!=0){i=k;return}if((a[(c[h>>2]|0)+18>>0]|0)!=0){i=k;return}if((c[(c[h>>2]|0)+64>>2]|0)!=0){i=k;return}c[g>>2]=Ov(c[h>>2]|0)|0;do{if((c[g>>2]|0)!=0){do{}while((hz(c[g>>2]|0,58)|0)!=0);Yv(c[g>>2]|0,24)|0;if((d[(c[e>>2]|0)+64>>0]|0)==0){if((c[(c[h>>2]|0)+332>>2]|0)==0){if((c[(c[h>>2]|0)+316>>2]|0)==0){break}}jw(c[g>>2]|0,0);c[m>>2]=0;c[n>>2]=1;while(1){if((c[m>>2]|0)>=(c[(c[e>>2]|0)+20>>2]|0)){break}if((c[n>>2]&c[(c[h>>2]|0)+332>>2]|0)!=0){jf(c[g>>2]|0,c[m>>2]|0);ff(c[g>>2]|0,4,c[m>>2]|0,(c[n>>2]&c[(c[h>>2]|0)+328>>2]|0)!=0&1,c[(c[h>>2]|0)+336+(c[m>>2]<<2)>>2]|0,c[(c[(c[(c[e>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+12>>2]|0)+4>>2]|0)|0;if((d[(c[e>>2]|0)+137>>0]|0)==0){gf(c[g>>2]|0,1)}}c[n>>2]=c[n>>2]<<1;c[m>>2]=(c[m>>2]|0)+1}c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[h>>2]|0)+452>>2]|0)){break}c[l>>2]=ww(c[e>>2]|0,c[(c[(c[h>>2]|0)+520>>2]|0)+(c[j>>2]<<2)>>2]|0)|0;Sv(c[g>>2]|0,141,0,0,0,c[l>>2]|0,-10)|0;c[j>>2]=(c[j>>2]|0)+1}c[(c[h>>2]|0)+452>>2]=0;WE(c[h>>2]|0);XE(c[h>>2]|0);a:do{if((c[(c[h>>2]|0)+316>>2]|0)!=0){c[o>>2]=c[(c[h>>2]|0)+316>>2];a[(c[h>>2]|0)+23>>0]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[c[o>>2]>>2]|0)){break a}vz(c[h>>2]|0,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[j>>2]|0)*20|0)>>2]|0,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[j>>2]|0)*20|0)+16>>2]|0);c[j>>2]=(c[j>>2]|0)+1}}}while(0);Qv(c[g>>2]|0,16,0,1)|0}}}while(0);if((c[g>>2]|0)!=0){if((c[(c[h>>2]|0)+64>>2]|0)==0){if((a[(c[e>>2]|0)+64>>0]|0)!=0){f=30}else{if((c[(c[h>>2]|0)+404>>2]|0)!=0){if((c[(c[h>>2]|0)+68>>2]|0)==0){c[(c[h>>2]|0)+68>>2]=1}}pf(c[g>>2]|0,c[h>>2]|0);c[(c[h>>2]|0)+12>>2]=101;a[(c[h>>2]|0)+16>>0]=0}}else{f=30}}else{f=30}if((f|0)==30){c[(c[h>>2]|0)+12>>2]=1}c[(c[h>>2]|0)+68>>2]=0;c[(c[h>>2]|0)+72>>2]=0;c[(c[h>>2]|0)+76>>2]=0;c[(c[h>>2]|0)+440>>2]=0;c[(c[h>>2]|0)+332>>2]=0;i=k;return}function su(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;j=d+16|0;h=d;f=d+4|0;g=d+8|0;e=d+12|0;c[j>>2]=a;c[h>>2]=b;c[f>>2]=c[c[j>>2]>>2];if((Lv(c[j>>2]|0,22,33560,0,0)|0)!=0){i=d;return}c[g>>2]=Ov(c[j>>2]|0)|0;if((c[g>>2]|0)==0){i=d;return}a:do{if((c[h>>2]|0)!=7){c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){break a}Qv(c[g>>2]|0,4,c[e>>2]|0,((c[h>>2]|0)==9&1)+1|0)|0;jf(c[g>>2]|0,c[e>>2]|0);c[e>>2]=(c[e>>2]|0)+1}}}while(0);Qv(c[g>>2]|0,3,0,0)|0;i=d;return}function tu(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((Lv(c[e>>2]|0,22,33592,0,0)|0)!=0){i=b;return}c[d>>2]=Ov(c[e>>2]|0)|0;if((c[d>>2]|0)==0){i=b;return}Qv(c[d>>2]|0,3,1,0)|0;i=b;return}function uu(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((Lv(c[e>>2]|0,22,33576,0,0)|0)!=0){i=b;return}c[d>>2]=Ov(c[e>>2]|0)|0;if((c[d>>2]|0)==0){i=b;return}Qv(c[d>>2]|0,3,1,1)|0;i=b;return}function vu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;j=e+16|0;g=e;k=e+4|0;h=e+8|0;f=e+12|0;c[j>>2]=a;c[g>>2]=b;c[k>>2]=d;c[h>>2]=Iv(c[c[j>>2]>>2]|0,c[k>>2]|0)|0;if((c[h>>2]|0)==0){i=e;return}c[f>>2]=Ov(c[j>>2]|0)|0;if((c[f>>2]|0)!=0){if((Lv(c[j>>2]|0,32,c[33544+(c[g>>2]<<2)>>2]|0,c[h>>2]|0,0)|0)==0){Sv(c[f>>2]|0,2,c[g>>2]|0,0,0,c[h>>2]|0,-1)|0;i=e;return}}cc(c[c[j>>2]>>2]|0,c[h>>2]|0);i=e;return}function wu(e,f,g,h,j,k,l){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;s=i;i=i+96|0;m=s;u=s+80|0;J=s+76|0;I=s+72|0;H=s+68|0;G=s+64|0;A=s+60|0;r=s+56|0;w=s+52|0;o=s+48|0;n=s+44|0;z=s+84|0;p=s+16|0;q=s+12|0;x=s+4|0;y=s+8|0;C=s+36|0;E=s+20|0;F=s+24|0;B=s+28|0;t=s+32|0;D=s+40|0;c[u>>2]=e;c[J>>2]=f;c[I>>2]=g;c[H>>2]=h;c[G>>2]=j;c[A>>2]=k;c[r>>2]=l;c[o>>2]=0;c[n>>2]=c[c[u>>2]>>2];c[p>>2]=ky(c[u>>2]|0,c[J>>2]|0,c[I>>2]|0,q)|0;if((c[p>>2]|0)<0){i=s;return}if((c[H>>2]|0)!=0){if((c[(c[I>>2]|0)+4>>2]|0)>>>0>0){if((c[p>>2]|0)!=1){bf(c[u>>2]|0,33432,m);i=s;return}}}if((c[H>>2]|0)!=0){c[p>>2]=1}J=(c[u>>2]|0)+496|0;e=c[q>>2]|0;c[J+0>>2]=c[e+0>>2];c[J+4>>2]=c[e+4>>2];c[o>>2]=Iv(c[n>>2]|0,c[q>>2]|0)|0;if((c[o>>2]|0)==0){i=s;return}a:do{if(0==(uw(c[u>>2]|0,c[o>>2]|0)|0)){if((d[(c[n>>2]|0)+136>>0]|0)==1){c[H>>2]=1}c[y>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[p>>2]<<4)>>2];if((Lv(c[u>>2]|0,18,(c[H>>2]|0)==1?21432:21456,0,c[y>>2]|0)|0)==0){h=(c[H>>2]|0)!=0;do{if((c[G>>2]|0)!=0){if(h){c[x>>2]=6;break}else{c[x>>2]=8;break}}else{if(h){c[x>>2]=4;break}else{c[x>>2]=2;break}}}while(0);if((c[A>>2]|0)==0){if((Lv(c[u>>2]|0,c[x>>2]|0,c[o>>2]|0,0,c[y>>2]|0)|0)!=0){break}}do{if((a[(c[u>>2]|0)+451>>0]|0)==0){c[C>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[p>>2]<<4)>>2];if(0!=(gy(c[u>>2]|0)|0)){break a}c[w>>2]=cw(c[n>>2]|0,c[o>>2]|0,c[C>>2]|0)|0;if((c[w>>2]|0)==0){if((tw(c[n>>2]|0,c[o>>2]|0,c[C>>2]|0)|0)==0){break}J=c[u>>2]|0;c[m>>2]=c[o>>2];bf(J,33504,m);break a}t=c[u>>2]|0;if((c[r>>2]|0)!=0){aw(t,c[p>>2]|0);break a}else{c[m>>2]=c[q>>2];bf(t,33480,m);break a}}}while(0);c[w>>2]=ve(c[n>>2]|0,76)|0;if((c[w>>2]|0)==0){a[(c[n>>2]|0)+64>>0]=1;c[(c[u>>2]|0)+12>>2]=7;J=(c[u>>2]|0)+64|0;c[J>>2]=(c[J>>2]|0)+1;break}c[c[w>>2]>>2]=c[o>>2];b[(c[w>>2]|0)+36>>1]=-1;c[(c[w>>2]|0)+68>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[p>>2]<<4)+12>>2];b[(c[w>>2]|0)+40>>1]=1;b[(c[w>>2]|0)+28>>1]=200;c[(c[u>>2]|0)+484>>2]=c[w>>2];if((a[(c[u>>2]|0)+18>>0]|0)==0){if((YK(c[o>>2]|0,22680)|0)==0){c[(c[(c[w>>2]|0)+68>>2]|0)+72>>2]=c[w>>2]}}if((a[(c[n>>2]|0)+137>>0]|0)!=0){i=s;return}J=Ov(c[u>>2]|0)|0;c[z>>2]=J;if((J|0)==0){i=s;return}$v(c[u>>2]|0,0,c[p>>2]|0);if((c[A>>2]|0)!=0){Yv(c[z>>2]|0,141)|0}e=(c[u>>2]|0)+72|0;J=(c[e>>2]|0)+1|0;c[e>>2]=J;c[(c[u>>2]|0)+384>>2]=J;c[B>>2]=J;J=(c[u>>2]|0)+72|0;e=(c[J>>2]|0)+1|0;c[J>>2]=e;c[(c[u>>2]|0)+388>>2]=e;c[t>>2]=e;e=(c[u>>2]|0)+72|0;J=(c[e>>2]|0)+1|0;c[e>>2]=J;c[D>>2]=J;Tv(c[z>>2]|0,50,c[p>>2]|0,c[D>>2]|0,2)|0;jf(c[z>>2]|0,c[p>>2]|0);c[E>>2]=oy(c[z>>2]|0,44,c[D>>2]|0)|0;c[F>>2]=(c[(c[n>>2]|0)+24>>2]&32768|0)!=0?1:4;Qv(c[z>>2]|0,25,c[F>>2]|0,c[D>>2]|0)|0;Tv(c[z>>2]|0,51,c[p>>2]|0,2,c[D>>2]|0)|0;Qv(c[z>>2]|0,25,d[(c[(c[(c[n>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[D>>2]|0)|0;Tv(c[z>>2]|0,51,c[p>>2]|0,5,c[D>>2]|0)|0;jw(c[z>>2]|0,c[E>>2]|0);if((c[G>>2]|0)!=0){v=41}else{if((c[A>>2]|0)!=0){v=41}else{J=Qv(c[z>>2]|0,118,c[p>>2]|0,c[t>>2]|0)|0;c[(c[u>>2]|0)+416>>2]=J}}if((v|0)==41){Qv(c[z>>2]|0,25,0,c[t>>2]|0)|0}hA(c[u>>2]|0,c[p>>2]|0);Qv(c[z>>2]|0,69,0,c[B>>2]|0)|0;Qv(c[z>>2]|0,28,0,c[D>>2]|0)|0;Tv(c[z>>2]|0,70,0,c[D>>2]|0,c[B>>2]|0)|0;gf(c[z>>2]|0,8);Yv(c[z>>2]|0,58)|0;i=s;return}}}while(0);cc(c[n>>2]|0,c[o>>2]|0);i=s;return}function xu(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;y=i;i=i+144|0;m=y;u=y+124|0;C=y+120|0;x=y+116|0;D=y+132|0;E=y+112|0;r=y+108|0;n=y+104|0;o=y+100|0;H=y+96|0;k=y+92|0;q=y+128|0;s=y+64|0;v=y+60|0;t=y+32|0;G=y+36|0;F=y+56|0;w=y+84|0;p=y+68|0;A=y+72|0;z=y+76|0;B=y+80|0;l=y+88|0;c[u>>2]=e;c[C>>2]=f;c[x>>2]=g;a[D>>0]=h;c[E>>2]=j;c[n>>2]=c[c[u>>2]>>2];if((c[x>>2]|0)==0){if((c[E>>2]|0)==0){i=y;return}}if((d[(c[n>>2]|0)+64>>0]|0)!=0){i=y;return}c[r>>2]=c[(c[u>>2]|0)+484>>2];if((c[r>>2]|0)==0){i=y;return}if((a[(c[n>>2]|0)+137>>0]|0)!=0){c[(c[r>>2]|0)+32>>2]=c[(c[n>>2]|0)+132>>2]}do{if((a[D>>0]&32|0)!=0){if((a[(c[r>>2]|0)+44>>0]&8|0)!=0){bf(c[u>>2]|0,33040,m);i=y;return}if((a[(c[r>>2]|0)+44>>0]&4|0)==0){e=c[u>>2]|0;c[m>>2]=c[c[r>>2]>>2];bf(e,33096,m);break}else{e=(c[r>>2]|0)+44|0;a[e>>0]=d[e>>0]|32;QE(c[u>>2]|0,c[r>>2]|0);break}}}while(0);c[o>>2]=ef(c[n>>2]|0,c[(c[r>>2]|0)+68>>2]|0)|0;if((c[(c[r>>2]|0)+24>>2]|0)!=0){KE(c[u>>2]|0,c[r>>2]|0,4,0,c[(c[r>>2]|0)+24>>2]|0)}RE(c[r>>2]|0);c[H>>2]=c[(c[r>>2]|0)+8>>2];while(1){if((c[H>>2]|0)==0){break}ME(c[H>>2]|0);c[H>>2]=c[(c[H>>2]|0)+20>>2]}if((a[(c[n>>2]|0)+137>>0]|0)==0){c[q>>2]=Ov(c[u>>2]|0)|0;if((c[q>>2]|0)==0){i=y;return}oy(c[q>>2]|0,58,0)|0;if((c[(c[r>>2]|0)+12>>2]|0)==0){c[s>>2]=27864;c[v>>2]=33128}else{c[s>>2]=31936;c[v>>2]=33136}do{if((c[E>>2]|0)!=0){Tv(c[q>>2]|0,53,1,c[(c[u>>2]|0)+388>>2]|0,c[o>>2]|0)|0;gf(c[q>>2]|0,2);c[(c[u>>2]|0)+68>>2]=2;Hz(G,14,1);Mu(c[u>>2]|0,c[E>>2]|0,G)|0;oy(c[q>>2]|0,58,1)|0;if((c[(c[u>>2]|0)+64>>2]|0)==0){c[F>>2]=Dw(c[u>>2]|0,c[E>>2]|0)|0;if((c[F>>2]|0)==0){i=y;return}else{b[(c[r>>2]|0)+38>>1]=b[(c[F>>2]|0)+38>>1]|0;c[(c[r>>2]|0)+4>>2]=c[(c[F>>2]|0)+4>>2];b[(c[F>>2]|0)+38>>1]=0;c[(c[F>>2]|0)+4>>2]=0;ac(c[n>>2]|0,c[F>>2]|0);break}}}}while(0);if((c[E>>2]|0)!=0){c[t>>2]=SE(c[n>>2]|0,c[r>>2]|0)|0}else{if((d[D>>0]|0)!=0){D=(c[u>>2]|0)+504|0}else{D=c[x>>2]|0}c[w>>2]=D;c[k>>2]=(c[c[w>>2]>>2]|0)-(c[(c[u>>2]|0)+496>>2]|0);if((a[c[c[w>>2]>>2]>>0]|0)!=59){c[k>>2]=(c[k>>2]|0)+(c[(c[w>>2]|0)+4>>2]|0)}e=c[n>>2]|0;g=c[k>>2]|0;f=c[(c[u>>2]|0)+496>>2]|0;c[m>>2]=c[v>>2];c[m+4>>2]=g;c[m+8>>2]=f;c[t>>2]=cf(e,33144,m)|0}e=c[u>>2]|0;F=(c[o>>2]|0)==1?21432:21456;G=c[s>>2]|0;H=c[c[r>>2]>>2]|0;j=c[c[r>>2]>>2]|0;h=c[(c[u>>2]|0)+388>>2]|0;g=c[t>>2]|0;f=c[(c[u>>2]|0)+384>>2]|0;c[m>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2];c[m+4>>2]=F;c[m+8>>2]=G;c[m+12>>2]=H;c[m+16>>2]=j;c[m+20>>2]=h;c[m+24>>2]=g;c[m+28>>2]=f;Nv(e,33160,m);cc(c[n>>2]|0,c[t>>2]|0);Pv(c[u>>2]|0,c[o>>2]|0);if((a[(c[r>>2]|0)+44>>0]&8|0)!=0){c[p>>2]=(c[(c[n>>2]|0)+16>>2]|0)+(c[o>>2]<<4);if((c[(c[(c[p>>2]|0)+12>>2]|0)+72>>2]|0)==0){e=c[u>>2]|0;c[m>>2]=c[c[p>>2]>>2];Nv(e,33248,m)}}g=c[q>>2]|0;f=c[o>>2]|0;e=c[n>>2]|0;c[m>>2]=c[c[r>>2]>>2];Rv(g,f,cf(e,33296,m)|0)}if((a[(c[n>>2]|0)+137>>0]|0)==0){i=y;return}c[z>>2]=c[(c[r>>2]|0)+68>>2];g=(c[z>>2]|0)+8|0;f=c[c[r>>2]>>2]|0;e=Ub(c[c[r>>2]>>2]|0)|0;c[A>>2]=Eh(g,f,e,c[r>>2]|0)|0;if((c[A>>2]|0)!=0){a[(c[n>>2]|0)+64>>0]=1;i=y;return}c[(c[u>>2]|0)+484>>2]=0;e=(c[n>>2]|0)+24|0;c[e>>2]=c[e>>2]|2;if((c[(c[r>>2]|0)+12>>2]|0)!=0){i=y;return}c[B>>2]=c[(c[u>>2]|0)+496>>2];if((c[c[C>>2]>>2]|0)==0){c[C>>2]=c[x>>2]}c[l>>2]=(c[c[C>>2]>>2]|0)-(c[B>>2]|0);e=13+(Ht(c[B>>2]|0,c[l>>2]|0)|0)|0;c[(c[r>>2]|0)+48>>2]=e;i=y;return}function yu(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;l=n;j=n+28|0;r=n+24|0;k=n+20|0;q=n+32|0;p=n+8|0;o=n+4|0;m=n+12|0;g=n+16|0;c[j>>2]=e;c[r>>2]=f;c[m>>2]=c[c[j>>2]>>2];e=c[(c[j>>2]|0)+484>>2]|0;c[k>>2]=e;if((e|0)==0){i=n;return}if(((b[(c[k>>2]|0)+38>>1]|0)+1|0)>(c[(c[m>>2]|0)+96>>2]|0)){e=c[j>>2]|0;c[l>>2]=c[c[k>>2]>>2];bf(e,32984,l);i=n;return}c[p>>2]=Iv(c[m>>2]|0,c[r>>2]|0)|0;if((c[p>>2]|0)==0){i=n;return}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(b[(c[k>>2]|0)+38>>1]|0)){break}if((d[784+(d[c[p>>2]>>0]|0)>>0]|0)==(d[784+(d[c[(c[(c[k>>2]|0)+4>>2]|0)+((c[q>>2]|0)*24|0)>>2]>>0]|0)>>0]|0)){if((Dc((c[p>>2]|0)+1|0,(c[(c[(c[k>>2]|0)+4>>2]|0)+((c[q>>2]|0)*24|0)>>2]|0)+1|0)|0)==0){h=9;break}}c[q>>2]=(c[q>>2]|0)+1}if((h|0)==9){e=c[j>>2]|0;c[l>>2]=c[p>>2];bf(e,33008,l);cc(c[m>>2]|0,c[p>>2]|0);i=n;return}do{if((b[(c[k>>2]|0)+38>>1]&7|0)==0){c[g>>2]=Ot(c[m>>2]|0,c[(c[k>>2]|0)+4>>2]|0,((b[(c[k>>2]|0)+38>>1]|0)+8|0)*24|0)|0;if((c[g>>2]|0)!=0){c[(c[k>>2]|0)+4>>2]=c[g>>2];break}cc(c[m>>2]|0,c[p>>2]|0);i=n;return}}while(0);c[o>>2]=(c[(c[k>>2]|0)+4>>2]|0)+((b[(c[k>>2]|0)+38>>1]|0)*24|0);e=c[o>>2]|0;c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[c[o>>2]>>2]=c[p>>2];a[(c[o>>2]|0)+21>>0]=98;a[(c[o>>2]|0)+22>>0]=1;e=(c[k>>2]|0)+38|0;b[e>>1]=(b[e>>1]|0)+1<<16>>16;i=n;return}function zu(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f+12|0;k=f;g=f+4|0;h=f+8|0;c[j>>2]=d;c[k>>2]=e;c[g>>2]=c[(c[j>>2]|0)+484>>2];if((c[g>>2]|0)==0){i=f;return}if((b[(c[g>>2]|0)+38>>1]|0)<1){i=f;return}c[h>>2]=(c[(c[g>>2]|0)+4>>2]|0)+(((b[(c[g>>2]|0)+38>>1]|0)-1|0)*24|0);d=Iv(c[c[j>>2]>>2]|0,c[k>>2]|0)|0;c[(c[h>>2]|0)+12>>2]=d;d=Qw(c[(c[h>>2]|0)+12>>2]|0,(c[h>>2]|0)+22|0)|0;a[(c[h>>2]|0)+21>>0]=d;i=f;return}function Au(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;k=e;j=e+20|0;f=e+4|0;l=e+8|0;h=e+12|0;g=e+16|0;c[j>>2]=a;c[f>>2]=d;c[g>>2]=c[c[j>>2]>>2];c[l>>2]=c[(c[j>>2]|0)+484>>2];if((c[l>>2]|0)==0){l=c[g>>2]|0;a=c[f>>2]|0;a=c[a>>2]|0;gu(l,a);i=e;return}c[h>>2]=(c[(c[l>>2]|0)+4>>2]|0)+(((b[(c[l>>2]|0)+38>>1]|0)-1|0)*24|0);if((PE(c[c[f>>2]>>2]|0)|0)!=0){gu(c[g>>2]|0,c[(c[h>>2]|0)+4>>2]|0);l=hx(c[g>>2]|0,c[c[f>>2]>>2]|0,1)|0;c[(c[h>>2]|0)+4>>2]=l;cc(c[g>>2]|0,c[(c[h>>2]|0)+8>>2]|0);l=ft(c[g>>2]|0,c[(c[f>>2]|0)+4>>2]|0,(c[(c[f>>2]|0)+8>>2]|0)-(c[(c[f>>2]|0)+4>>2]|0)|0)|0;c[(c[h>>2]|0)+8>>2]=l;l=c[g>>2]|0;a=c[f>>2]|0;a=c[a>>2]|0;gu(l,a);i=e;return}else{l=c[j>>2]|0;c[k>>2]=c[c[h>>2]>>2];bf(l,32936,k);l=c[g>>2]|0;a=c[f>>2]|0;a=c[a>>2]|0;gu(l,a);i=e;return}}function Bu(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;k=j+20|0;g=j;l=j+4|0;m=j+8|0;o=j+12|0;n=j+16|0;c[k>>2]=a;c[g>>2]=b;c[l>>2]=d;c[m>>2]=e;c[o>>2]=f;if((c[g>>2]|0)==72){if((c[l>>2]|0)!=0){if((c[m>>2]|0)!=0){c[n>>2]=Ux(c[c[k>>2]>>2]|0,c[l>>2]|0,c[m>>2]|0)|0}else{h=5}}else{h=5}}else{h=5}if((h|0)==5){c[n>>2]=Wx(c[c[k>>2]>>2]|0,c[g>>2]|0,c[o>>2]|0,1)|0;Xx(c[c[k>>2]>>2]|0,c[n>>2]|0,c[l>>2]|0,c[m>>2]|0)}if((c[n>>2]|0)==0){a=c[n>>2]|0;i=j;return a|0}wx(c[k>>2]|0,c[(c[n>>2]|0)+24>>2]|0)|0;a=c[n>>2]|0;i=j;return a|0}function Cu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;k=f;j=f+4|0;h=f+8|0;c[g>>2]=a;c[k>>2]=b;c[j>>2]=d;c[h>>2]=e;a=Bu(c[k>>2]|0,c[j>>2]|0,0,0,c[h>>2]|0)|0;c[c[g>>2]>>2]=a;c[(c[g>>2]|0)+4>>2]=c[c[h>>2]>>2];c[(c[g>>2]|0)+8>>2]=(c[c[h>>2]>>2]|0)+(c[(c[h>>2]|0)+4>>2]|0);i=f;return}function Du(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+8|0;g=f;h=f+4|0;c[j>>2]=d;c[g>>2]=e;c[h>>2]=c[(c[j>>2]|0)+484>>2];if((c[h>>2]|0)==0){i=f;return}if((b[(c[h>>2]|0)+38>>1]|0)<1){i=f;return}a[(c[(c[h>>2]|0)+4>>2]|0)+(((b[(c[h>>2]|0)+38>>1]|0)-1|0)*24|0)+20>>0]=c[g>>2];i=f;return}function Eu(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;r=i;i=i+64|0;m=r;l=r+44|0;k=r+40|0;n=r+36|0;o=r+32|0;p=r+28|0;u=r+48|0;t=r+16|0;w=r+12|0;y=r+8|0;x=r+4|0;q=r+20|0;s=r+24|0;c[l>>2]=e;c[k>>2]=f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[u>>2]=c[(c[l>>2]|0)+484>>2];c[t>>2]=0;c[w>>2]=-1;if((c[u>>2]|0)==0){f=c[l>>2]|0;f=c[f>>2]|0;e=c[k>>2]|0;cu(f,e);i=r;return}if((d[(c[l>>2]|0)+451>>0]|0)!=0){f=c[l>>2]|0;f=c[f>>2]|0;e=c[k>>2]|0;cu(f,e);i=r;return}if((a[(c[u>>2]|0)+44>>0]&4|0)!=0){f=c[l>>2]|0;c[m>>2]=c[c[u>>2]>>2];bf(f,32832,m);f=c[l>>2]|0;f=c[f>>2]|0;e=c[k>>2]|0;cu(f,e);i=r;return}e=(c[u>>2]|0)+44|0;a[e>>0]=d[e>>0]|4;a:do{if((c[k>>2]|0)==0){c[w>>2]=(b[(c[u>>2]|0)+38>>1]|0)-1;e=(c[(c[u>>2]|0)+4>>2]|0)+((c[w>>2]|0)*24|0)+23|0;a[e>>0]=d[e>>0]|1;c[t>>2]=c[(c[(c[u>>2]|0)+4>>2]|0)+((c[w>>2]|0)*24|0)+12>>2];c[x>>2]=1}else{c[x>>2]=c[c[k>>2]>>2];c[y>>2]=0;while(1){if((c[y>>2]|0)>=(c[x>>2]|0)){break a}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(b[(c[u>>2]|0)+38>>1]|0)){break}e=(Dc(c[(c[(c[k>>2]|0)+4>>2]|0)+((c[y>>2]|0)*20|0)+4>>2]|0,c[(c[(c[u>>2]|0)+4>>2]|0)+((c[w>>2]|0)*24|0)>>2]|0)|0)==0;j=c[w>>2]|0;if(e){v=12;break}c[w>>2]=j+1}if((v|0)==12){v=0;e=(c[(c[u>>2]|0)+4>>2]|0)+(j*24|0)+23|0;a[e>>0]=d[e>>0]|1;c[t>>2]=c[(c[(c[u>>2]|0)+4>>2]|0)+((c[w>>2]|0)*24|0)+12>>2]}c[y>>2]=(c[y>>2]|0)+1}}}while(0);if((c[x>>2]|0)==1){if((c[t>>2]|0)!=0){if((Dc(c[t>>2]|0,22944)|0)==0){if((c[p>>2]|0)==0){b[(c[u>>2]|0)+36>>1]=c[w>>2];a[(c[u>>2]|0)+45>>0]=c[n>>2];e=(c[u>>2]|0)+44|0;a[e>>0]=d[e>>0]|c[o>>2]<<3;if((c[k>>2]|0)==0){f=c[l>>2]|0;f=c[f>>2]|0;e=c[k>>2]|0;cu(f,e);i=r;return}a[(c[l>>2]|0)+448>>0]=a[(c[(c[k>>2]|0)+4>>2]|0)+12>>0]|0;f=c[l>>2]|0;f=c[f>>2]|0;e=c[k>>2]|0;cu(f,e);i=r;return}}}}t=c[l>>2]|0;if((c[o>>2]|0)!=0){bf(t,32880,m);f=c[l>>2]|0;f=c[f>>2]|0;e=c[k>>2]|0;cu(f,e);i=r;return}c[q>>2]=c[t+8>>2];if((c[q>>2]|0)!=0){e=Yv(c[q>>2]|0,156)|0;c[(c[l>>2]|0)+420>>2]=e}c[s>>2]=Fu(c[l>>2]|0,0,0,0,c[k>>2]|0,c[n>>2]|0,0,0,c[p>>2]|0,0)|0;if((c[s>>2]|0)!=0){e=(c[s>>2]|0)+55|0;a[e>>0]=a[e>>0]&-4|2;if((c[q>>2]|0)!=0){jw(c[q>>2]|0,c[(c[l>>2]|0)+420>>2]|0)}}c[k>>2]=0;f=c[l>>2]|0;f=c[f>>2]|0;e=c[k>>2]|0;cu(f,e);i=r;return} + + + +function KB(d,f,g,h,j){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;m=i;i=i+80|0;s=m+60|0;t=m+44|0;k=m+56|0;C=m+52|0;l=m+48|0;w=m+64|0;x=m+66|0;y=m+40|0;B=m+36|0;r=m+32|0;p=m+24|0;q=m+20|0;n=m+16|0;o=m+12|0;u=m+8|0;z=m+4|0;v=m;A=m+28|0;c[s>>2]=d;c[t>>2]=f;c[k>>2]=g;c[C>>2]=h;c[l>>2]=j;c[y>>2]=c[(c[s>>2]|0)+8>>2];c[p>>2]=c[(c[t>>2]|0)+56>>2];b[w>>1]=b[(c[p>>2]|0)+24>>1]|0;b[x>>1]=b[(c[p>>2]|0)+26>>1]|0;c[B>>2]=c[(c[p>>2]|0)+28>>2];c[n>>2]=(c[(c[s>>2]|0)+72>>2]|0)+1;c[o>>2]=(e[(c[p>>2]|0)+24>>1]|0)+(c[C>>2]|0);d=(c[s>>2]|0)+72|0;c[d>>2]=(c[d>>2]|0)+(c[o>>2]|0);d=c[c[s>>2]>>2]|0;c[u>>2]=pe(d,GA(c[y>>2]|0,c[B>>2]|0)|0)|0;if((c[u>>2]|0)==0){a[(c[c[s>>2]>>2]|0)+64>>0]=1}a:do{if((b[x>>1]|0)!=0){c[z>>2]=c[(c[t>>2]|0)+8>>2];oy(c[y>>2]|0,(c[k>>2]|0)!=0?102:105,c[z>>2]|0)|0;c[q>>2]=Yv(c[y>>2]|0,16)|0;C=ff(c[y>>2]|0,(c[k>>2]|0)!=0?59:62,c[z>>2]|0,0,c[n>>2]|0,e[x>>1]|0)|0;c[(c[t>>2]|0)+20>>2]=C;jw(c[y>>2]|0,c[q>>2]|0);c[q>>2]=0;while(1){if((c[q>>2]|0)>=(e[x>>1]|0)){break a}Tv(c[y>>2]|0,46,c[z>>2]|0,c[q>>2]|0,(c[n>>2]|0)+(c[q>>2]|0)|0)|0;c[q>>2]=(c[q>>2]|0)+1}}}while(0);c[q>>2]=e[x>>1]|0;while(1){if((c[q>>2]|0)>=(e[w>>1]|0)){break}c[r>>2]=c[(c[(c[p>>2]|0)+44>>2]|0)+(c[q>>2]<<2)>>2];c[v>>2]=IB(c[s>>2]|0,c[r>>2]|0,c[t>>2]|0,c[q>>2]|0,c[k>>2]|0,(c[n>>2]|0)+(c[q>>2]|0)|0)|0;do{if((c[v>>2]|0)!=((c[n>>2]|0)+(c[q>>2]|0)|0)){if((c[o>>2]|0)==1){Xv(c[s>>2]|0,c[n>>2]|0);c[n>>2]=c[v>>2];break}else{Qv(c[y>>2]|0,34,c[v>>2]|0,(c[n>>2]|0)+(c[q>>2]|0)|0)|0;break}}}while(0);if((b[(c[r>>2]|0)+18>>1]&129|0)==0){c[A>>2]=c[(c[c[r>>2]>>2]|0)+16>>2];if((LB(c[A>>2]|0)|0)!=0){Qv(c[y>>2]|0,76,(c[n>>2]|0)+(c[q>>2]|0)|0,c[(c[t>>2]|0)+12>>2]|0)|0}if((c[u>>2]|0)!=0){if(((Rz(c[A>>2]|0,a[(c[u>>2]|0)+(c[q>>2]|0)>>0]|0)|0)<<24>>24|0)==98){a[(c[u>>2]|0)+(c[q>>2]|0)>>0]=98}if((MB(c[A>>2]|0,a[(c[u>>2]|0)+(c[q>>2]|0)>>0]|0)|0)!=0){a[(c[u>>2]|0)+(c[q>>2]|0)>>0]=98}}}c[q>>2]=(c[q>>2]|0)+1}c[c[l>>2]>>2]=c[u>>2];i=m;return c[n>>2]|0}function LB(b){b=b|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+4|0;h=f;g=f+8|0;c[h>>2]=b;while(1){if((d[c[h>>2]>>0]|0|0)==158){j=1}else{j=(d[c[h>>2]>>0]|0|0)==157}b=c[h>>2]|0;if(!j){break}c[h>>2]=c[b+12>>2]}a[g>>0]=a[b>>0]|0;if((d[g>>0]|0|0)==159){a[g>>0]=a[(c[h>>2]|0)+38>>0]|0}j=d[g>>0]|0;if((j|0)==134|(j|0)==133|(j|0)==97|(j|0)==132){c[e>>2]=0;j=c[e>>2]|0;i=f;return j|0}else{c[e>>2]=1;j=c[e>>2]|0;i=f;return j|0}return 0}function MB(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;h=i;i=i+16|0;g=h+4|0;k=h;j=h+9|0;l=h+8|0;c[k>>2]=e;a[j>>0]=f;a:do{if((a[j>>0]|0)==98){c[g>>2]=1}else{while(1){if((d[c[k>>2]>>0]|0)==158){f=1}else{f=(d[c[k>>2]>>0]|0)==157}e=c[k>>2]|0;if(!f){break}c[k>>2]=c[e+12>>2]}a[l>>0]=a[e>>0]|0;if((d[l>>0]|0)==159){a[l>>0]=a[(c[k>>2]|0)+38>>0]|0}switch(d[l>>0]|0){case 97:{c[g>>2]=(a[j>>0]|0)==97&1;break a};case 133:{if((a[j>>0]|0)==101){j=1}else{j=(a[j>>0]|0)==99}c[g>>2]=j&1;break a};case 134:{c[g>>2]=1;break a};case 132:{if((a[j>>0]|0)==100){j=1}else{j=(a[j>>0]|0)==99}c[g>>2]=j&1;break a};case 154:{if((b[(c[k>>2]|0)+32>>1]|0)<0){if((a[j>>0]|0)==100){j=1}else{j=(a[j>>0]|0)==99}}else{j=0}c[g>>2]=j&1;break a};default:{c[g>>2]=0;break a}}}}while(0);i=h;return c[g>>2]|0}function NB(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;g=m+16|0;j=m;k=m+4|0;l=m+8|0;h=m+12|0;c[g>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[h>>2]=c[(c[g>>2]|0)+8>>2];if((c[l>>2]|0)==0){i=m;return}while(1){if((c[k>>2]|0)<=0){break}if((a[c[l>>2]>>0]|0)!=98){break}c[k>>2]=(c[k>>2]|0)+ -1;c[j>>2]=(c[j>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}while(1){if((c[k>>2]|0)>1){e=(a[(c[l>>2]|0)+((c[k>>2]|0)-1)>>0]|0)==98}else{e=0}f=c[k>>2]|0;if(!e){break}c[k>>2]=f+ -1}if((f|0)<=0){i=m;return}Qv(c[h>>2]|0,47,c[j>>2]|0,c[k>>2]|0)|0;nf(c[h>>2]|0,-1,c[l>>2]|0,c[k>>2]|0);Az(c[g>>2]|0,c[j>>2]|0,c[k>>2]|0);i=m;return}function OB(a,d,e,f,g,h,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;l=i;i=i+160|0;k=l+152|0;u=l+148|0;t=l+144|0;s=l+140|0;o=l;r=l+136|0;q=l+12|0;n=l+8|0;m=l+16|0;p=l+24|0;c[u>>2]=a;c[t>>2]=d;c[s>>2]=e;a=o;c[a>>2]=f;c[a+4>>2]=g;c[r>>2]=h;c[q>>2]=j;c[n>>2]=0;c[m>>2]=PB(p,c[u>>2]|0,c[t>>2]|0,c[s>>2]|0,c[r>>2]|0,c[q>>2]|0)|0;while(1){if((c[m>>2]|0)==0){h=10;break}t=(c[m>>2]|0)+32|0;u=o;if((c[t>>2]&c[u>>2]|0)==0?(c[t+4>>2]&c[u+4>>2]|0)==0:0){u=(c[m>>2]|0)+32|0;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){if((b[(c[m>>2]|0)+18>>1]&2|0)!=0){h=6;break}}if((c[n>>2]|0)==0){c[n>>2]=c[m>>2]}}c[m>>2]=QB(p)|0}if((h|0)==6){c[k>>2]=c[m>>2];u=c[k>>2]|0;i=l;return u|0}else if((h|0)==10){c[k>>2]=c[n>>2];u=c[k>>2]|0;i=l;return u|0}return 0}function PB(d,f,g,h,j,k){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;r=i;i=i+32|0;q=r+28|0;n=r;u=r+4|0;o=r+8|0;p=r+12|0;t=r+16|0;l=r+20|0;s=r+24|0;c[n>>2]=d;c[u>>2]=f;c[o>>2]=g;c[p>>2]=h;c[t>>2]=j;c[l>>2]=k;c[c[n>>2]>>2]=c[u>>2];c[(c[n>>2]|0)+4>>2]=c[u>>2];do{if((c[l>>2]|0)!=0){if((c[p>>2]|0)>=0){a[(c[n>>2]|0)+12>>0]=a[(c[(c[(c[l>>2]|0)+12>>2]|0)+4>>2]|0)+((c[p>>2]|0)*24|0)+21>>0]|0;c[s>>2]=0;while(1){j=c[s>>2]|0;k=c[l>>2]|0;if((b[(c[(c[l>>2]|0)+4>>2]|0)+(c[s>>2]<<1)>>1]|0)==(c[p>>2]|0)){m=8;break}if((j|0)>=(e[k+50>>1]|0)){break}c[s>>2]=(c[s>>2]|0)+1}if((m|0)==8){c[(c[n>>2]|0)+8>>2]=c[(c[k+32>>2]|0)+(j<<2)>>2];break}c[q>>2]=0;u=c[q>>2]|0;i=r;return u|0}else{m=9}}else{m=9}}while(0);if((m|0)==9){a[(c[n>>2]|0)+12>>0]=0;c[(c[n>>2]|0)+8>>2]=0}c[(c[n>>2]|0)+16>>2]=c[t>>2];c[(c[n>>2]|0)+20>>2]=0;c[(c[n>>2]|0)+24>>2]=c[o>>2];c[(c[n>>2]|0)+28>>2]=c[p>>2];a[(c[n>>2]|0)+13>>0]=2;a[(c[n>>2]|0)+14>>0]=2;c[q>>2]=QB(c[n>>2]|0)|0;u=c[q>>2]|0;i=r;return u|0}function QB(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+48|0;k=h+40|0;j=h+36|0;m=h+32|0;n=h+28|0;p=h+24|0;o=h+20|0;l=h+12|0;g=h+8|0;q=h+4|0;s=h;r=h+16|0;c[j>>2]=f;c[g>>2]=c[(c[j>>2]|0)+20>>2];a:while(1){if((d[(c[j>>2]|0)+14>>0]|0)>(d[(c[j>>2]|0)+13>>0]|0)){m=35;break}c[m>>2]=c[(c[j>>2]|0)+24+((d[(c[j>>2]|0)+14>>0]|0)-2<<2)>>2];c[n>>2]=c[(c[j>>2]|0)+24+((d[(c[j>>2]|0)+14>>0]|0)-1<<2)>>2];while(1){f=c[(c[j>>2]|0)+4>>2]|0;c[o>>2]=f;if((f|0)==0){break}c[l>>2]=(c[(c[o>>2]|0)+20>>2]|0)+((c[g>>2]|0)*48|0);while(1){if((c[g>>2]|0)>=(c[(c[o>>2]|0)+12>>2]|0)){break}do{if((c[(c[l>>2]|0)+8>>2]|0)==(c[m>>2]|0)){if((c[(c[l>>2]|0)+12>>2]|0)==(c[n>>2]|0)){if((d[(c[j>>2]|0)+14>>0]|0)>2){if((c[(c[c[l>>2]>>2]|0)+4>>2]&1|0)!=0){break}}if((b[(c[l>>2]|0)+18>>1]&1024|0)!=0){if((d[(c[j>>2]|0)+13>>0]|0)<22){c[p>>2]=Pw(c[(c[c[l>>2]>>2]|0)+16>>2]|0)|0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(d[(c[j>>2]|0)+13>>0]|0)){break}if((c[(c[j>>2]|0)+24+(c[q>>2]<<2)>>2]|0)==(c[(c[p>>2]|0)+28>>2]|0)){if((c[(c[j>>2]|0)+24+((c[q>>2]|0)+1<<2)>>2]|0)==(b[(c[p>>2]|0)+32>>1]|0)){break}}c[q>>2]=(c[q>>2]|0)+2}if((c[q>>2]|0)==(d[(c[j>>2]|0)+13>>0]|0)){c[(c[j>>2]|0)+24+(c[q>>2]<<2)>>2]=c[(c[p>>2]|0)+28>>2];c[(c[j>>2]|0)+24+((c[q>>2]|0)+1<<2)>>2]=b[(c[p>>2]|0)+32>>1]|0;f=(c[j>>2]|0)+13|0;a[f>>0]=(d[f>>0]|0)+2}}}if((e[(c[l>>2]|0)+18>>1]&c[(c[j>>2]|0)+16>>2]|0)!=0){if((c[(c[j>>2]|0)+8>>2]|0)!=0){if((b[(c[l>>2]|0)+18>>1]&128|0)==0){c[r>>2]=c[c[c[o>>2]>>2]>>2];c[p>>2]=c[c[l>>2]>>2];if((Tz(c[p>>2]|0,a[(c[j>>2]|0)+12>>0]|0)|0)==0){break}c[s>>2]=Iz(c[r>>2]|0,c[(c[p>>2]|0)+12>>2]|0,c[(c[p>>2]|0)+16>>2]|0)|0;if((c[s>>2]|0)==0){c[s>>2]=c[(c[c[r>>2]>>2]|0)+8>>2]}if((Dc(c[c[s>>2]>>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0)!=0){break}}}if((b[(c[l>>2]|0)+18>>1]&2|0)==0){m=31;break a}f=c[(c[c[l>>2]>>2]|0)+16>>2]|0;c[p>>2]=f;if((d[f>>0]|0)!=154){m=31;break a}if((c[(c[p>>2]|0)+28>>2]|0)!=(c[(c[j>>2]|0)+24>>2]|0)){m=31;break a}if((b[(c[p>>2]|0)+32>>1]|0)!=(c[(c[j>>2]|0)+28>>2]|0)){m=31;break a}}}}}while(0);c[g>>2]=(c[g>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+48}c[(c[j>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+4>>2]|0)+4>>2];c[g>>2]=0}c[(c[j>>2]|0)+4>>2]=c[c[j>>2]>>2];c[g>>2]=0;f=(c[j>>2]|0)+14|0;a[f>>0]=(d[f>>0]|0)+2}if((m|0)==31){c[(c[j>>2]|0)+20>>2]=(c[g>>2]|0)+1;c[k>>2]=c[l>>2];s=c[k>>2]|0;i=h;return s|0}else if((m|0)==35){c[k>>2]=0;s=c[k>>2]|0;i=h;return s|0}return 0}function RB(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=i;i=i+80|0;j=l+72|0;v=l+56|0;n=l+68|0;w=l+64|0;m=l+60|0;u=l+76|0;t=l+78|0;k=l+52|0;r=l+44|0;o=l+40|0;q=l+36|0;h=l+8|0;s=l+4|0;p=l;g=l+48|0;c[v>>2]=a;c[n>>2]=d;c[w>>2]=f;c[m>>2]=c[(c[n>>2]|0)+28>>2];b[u>>1]=b[(c[n>>2]|0)+24>>1]|0;b[t>>1]=b[(c[n>>2]|0)+26>>1]|0;c[o>>2]=c[(c[w>>2]|0)+4>>2];c[q>>2]=c[(c[m>>2]|0)+4>>2];if((e[u>>1]|0)==0){if((c[(c[n>>2]|0)+36>>2]&48|0)==0){c[j>>2]=0;w=c[j>>2]|0;i=l;return w|0}}tc(h,0,0,1e9);c[h>>2]=c[v>>2];Jt(h,30384,2);c[k>>2]=0;while(1){f=c[k>>2]|0;if((c[k>>2]|0)>=(e[u>>1]|0)){break}if((f|0)==(e[(c[m>>2]|0)+50>>1]|0)){f=8848}else{f=c[(c[o>>2]|0)+((b[(c[q>>2]|0)+(c[k>>2]<<1)>>1]|0)*24|0)>>2]|0}c[s>>2]=f;f=c[k>>2]|0;if((c[k>>2]|0)>=(e[t>>1]|0)){SB(h,f,c[s>>2]|0,30392)}else{if((f|0)!=0){Jt(h,30400,5)}Jt(h,30408,4);Zy(h,c[s>>2]|0);Jt(h,30416,1)}c[k>>2]=(c[k>>2]|0)+1}c[r>>2]=f;if((c[(c[n>>2]|0)+36>>2]&32|0)!=0){if((c[r>>2]|0)==(e[(c[m>>2]|0)+50>>1]|0)){s=8848}else{s=c[(c[o>>2]|0)+((b[(c[q>>2]|0)+(c[r>>2]<<1)>>1]|0)*24|0)>>2]|0}c[p>>2]=s;w=c[k>>2]|0;c[k>>2]=w+1;SB(h,w,c[p>>2]|0,30424)}if((c[(c[n>>2]|0)+36>>2]&16|0)!=0){if((c[r>>2]|0)==(e[(c[m>>2]|0)+50>>1]|0)){m=8848}else{m=c[(c[o>>2]|0)+((b[(c[q>>2]|0)+(c[r>>2]<<1)>>1]|0)*24|0)>>2]|0}c[g>>2]=m;SB(h,c[k>>2]|0,c[g>>2]|0,30432)}Jt(h,30416,1);c[j>>2]=vc(h)|0;w=c[j>>2]|0;i=l;return w|0}function SB(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;k=f;j=f+4|0;h=f+8|0;c[g>>2]=a;c[k>>2]=b;c[j>>2]=d;c[h>>2]=e;if((c[k>>2]|0)!=0){Jt(c[g>>2]|0,30400,5)}Zy(c[g>>2]|0,c[j>>2]|0);Jt(c[g>>2]|0,c[h>>2]|0,1);Jt(c[g>>2]|0,8776,1);i=f;return}function TB(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h+16|0;l=h+12|0;k=h+8|0;n=h;m=h+20|0;c[l>>2]=d;c[k>>2]=e;d=n;c[d>>2]=f;c[d+4>>2]=g;if((c[(c[l>>2]|0)+8>>2]|0)!=(c[(c[k>>2]|0)+40>>2]|0)){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}if((b[(c[l>>2]|0)+18>>1]&2|0)==0){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}e=(c[l>>2]|0)+32|0;d=n;if((c[e>>2]&c[d>>2]|0)!=0?1:(c[e+4>>2]&c[d+4>>2]|0)!=0){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}if((c[(c[l>>2]|0)+12>>2]|0)<0){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}a[m>>0]=a[(c[(c[(c[k>>2]|0)+16>>2]|0)+4>>2]|0)+((c[(c[l>>2]|0)+12>>2]|0)*24|0)+21>>0]|0;if((Tz(c[c[l>>2]>>2]|0,a[m>>0]|0)|0)!=0){c[j>>2]=1;d=c[j>>2]|0;i=h;return d|0}else{c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}return 0}function UB(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;m=g;k=g+4|0;l=g+8|0;j=g+12|0;c[m>>2]=a;c[k>>2]=d;c[l>>2]=f;if((e[(c[k>>2]|0)+42>>1]|0|0)>=(c[l>>2]|0)){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}c[l>>2]=(c[l>>2]|0)+7&-8;c[j>>2]=$e(c[m>>2]|0,c[l>>2]<<2)|0;if((c[j>>2]|0)==0){c[h>>2]=7;a=c[h>>2]|0;i=g;return a|0}fL(c[j>>2]|0,c[(c[k>>2]|0)+44>>2]|0,(e[(c[k>>2]|0)+42>>1]|0)<<2|0)|0;if((c[(c[k>>2]|0)+44>>2]|0)!=((c[k>>2]|0)+52|0)){cc(c[m>>2]|0,c[(c[k>>2]|0)+44>>2]|0)}c[(c[k>>2]|0)+44>>2]=c[j>>2];b[(c[k>>2]|0)+42>>1]=c[l>>2];c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}function VB(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;o=g+20|0;k=g+24|0;n=g+4|0;m=g+8|0;h=g+12|0;l=g+16|0;j=g;c[o>>2]=a;b[k>>1]=d;c[n>>2]=e;c[m>>2]=f;c[l>>2]=56+((b[k>>1]<<2)+7&-8)+(((b[k>>1]|0)+1<<1)+(b[k>>1]<<1)+(b[k>>1]|0)+7&-8);c[h>>2]=ve(c[o>>2]|0,(c[l>>2]|0)+(c[n>>2]|0)|0)|0;if((c[h>>2]|0)==0){o=c[h>>2]|0;i=g;return o|0}c[j>>2]=(c[h>>2]|0)+56;c[(c[h>>2]|0)+32>>2]=c[j>>2];c[j>>2]=(c[j>>2]|0)+((b[k>>1]<<2)+7&-8);c[(c[h>>2]|0)+8>>2]=c[j>>2];c[j>>2]=(c[j>>2]|0)+((b[k>>1]|0)+1<<1);c[(c[h>>2]|0)+4>>2]=c[j>>2];c[j>>2]=(c[j>>2]|0)+(b[k>>1]<<1);c[(c[h>>2]|0)+28>>2]=c[j>>2];b[(c[h>>2]|0)+52>>1]=b[k>>1]|0;b[(c[h>>2]|0)+50>>1]=(b[k>>1]|0)-1;c[c[m>>2]>>2]=(c[h>>2]|0)+(c[l>>2]|0);o=c[h>>2]|0;i=g;return o|0}function WB(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;f=h+8|0;j=h+20|0;e=h+16|0;g=h;c[j>>2]=a;c[e>>2]=b;a=g;c[a>>2]=0;c[a+4>>2]=0;if((c[e>>2]|0)==0){b=f;c[b>>2]=0;c[b+4>>2]=0;b=f;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=h;return a|0}a=c[j>>2]|0;b=c[e>>2]|0;if((d[c[e>>2]>>0]|0|0)==154){a=EB(a,c[b+28>>2]|0)|0;j=g;c[j>>2]=a;c[j+4>>2]=D;j=g;a=c[j+4>>2]|0;b=f;c[b>>2]=c[j>>2];c[b+4>>2]=a;b=f;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=h;return a|0}l=WB(a,c[b+16>>2]|0)|0;k=g;c[k>>2]=l;c[k+4>>2]=D;k=WB(c[j>>2]|0,c[(c[e>>2]|0)+12>>2]|0)|0;l=g;a=c[l+4>>2]|D;b=g;c[b>>2]=c[l>>2]|k;c[b+4>>2]=a;b=c[j>>2]|0;j=(c[e>>2]|0)+20|0;if((c[(c[e>>2]|0)+4>>2]&2048|0)!=0){a=XB(b,c[j>>2]|0)|0;b=g;k=c[b+4>>2]|D;l=g;c[l>>2]=c[b>>2]|a;c[l+4>>2]=k}else{a=DB(b,c[j>>2]|0)|0;b=g;k=c[b+4>>2]|D;l=g;c[l>>2]=c[b>>2]|a;c[l+4>>2]=k}a=g;l=c[a+4>>2]|0;k=f;c[k>>2]=c[a>>2];c[k+4>>2]=l;k=f;l=k;l=c[l>>2]|0;k=k+4|0;k=c[k>>2]|0;D=k;i=h;return l|0}function XB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;j=e+20|0;g=e+8|0;d=e;h=e+12|0;f=e+16|0;c[j>>2]=a;c[g>>2]=b;a=d;c[a>>2]=0;c[a+4>>2]=0;while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[(c[g>>2]|0)+32>>2];k=DB(c[j>>2]|0,c[c[g>>2]>>2]|0)|0;l=d;b=c[l+4>>2]|D;a=d;c[a>>2]=c[l>>2]|k;c[a+4>>2]=b;a=DB(c[j>>2]|0,c[(c[g>>2]|0)+40>>2]|0)|0;b=d;k=c[b+4>>2]|D;l=d;c[l>>2]=c[b>>2]|a;c[l+4>>2]=k;l=DB(c[j>>2]|0,c[(c[g>>2]|0)+48>>2]|0)|0;k=d;a=c[k+4>>2]|D;b=d;c[b>>2]=c[k>>2]|l;c[b+4>>2]=a;b=WB(c[j>>2]|0,c[(c[g>>2]|0)+36>>2]|0)|0;a=d;l=c[a+4>>2]|D;k=d;c[k>>2]=c[a>>2]|b;c[k+4>>2]=l;k=WB(c[j>>2]|0,c[(c[g>>2]|0)+44>>2]|0)|0;l=d;b=c[l+4>>2]|D;a=d;c[a>>2]=c[l>>2]|k;c[a+4>>2]=b;a:do{if((c[h>>2]|0)!=0){c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[h>>2]>>2]|0)){break a}k=XB(c[j>>2]|0,c[(c[h>>2]|0)+8+((c[f>>2]|0)*72|0)+20>>2]|0)|0;l=d;b=c[l+4>>2]|D;a=d;c[a>>2]=c[l>>2]|k;c[a+4>>2]=b;a=WB(c[j>>2]|0,c[(c[h>>2]|0)+8+((c[f>>2]|0)*72|0)+44>>2]|0)|0;b=d;k=c[b+4>>2]|D;l=d;c[l>>2]=c[b>>2]|a;c[l+4>>2]=k;c[f>>2]=(c[f>>2]|0)+1}}}while(0);c[g>>2]=c[(c[g>>2]|0)+52>>2]}l=d;D=c[l+4>>2]|0;i=e;return c[l>>2]|0}function YB(a,c){a=a|0;c=c|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+4|0;g=e;h=e+2|0;b[g>>1]=a;b[h>>1]=c;if((b[g>>1]|0)>=(b[h>>1]|0)){c=b[g>>1]|0;if((b[g>>1]|0)>((b[h>>1]|0)+49|0)){b[f>>1]=c;a=b[f>>1]|0;i=e;return a|0}a=b[g>>1]|0;if((c<<16>>16|0)>((b[h>>1]|0)+31|0)){b[f>>1]=a+1;a=b[f>>1]|0;i=e;return a|0}else{b[f>>1]=a+(d[30512+((b[g>>1]|0)-(b[h>>1]|0))>>0]|0);a=b[f>>1]|0;i=e;return a|0}}else{c=b[h>>1]|0;if((b[h>>1]|0)>((b[g>>1]|0)+49|0)){b[f>>1]=c;a=b[f>>1]|0;i=e;return a|0}a=b[h>>1]|0;if((c<<16>>16|0)>((b[g>>1]|0)+31|0)){b[f>>1]=a+1;a=b[f>>1]|0;i=e;return a|0}else{b[f>>1]=a+(d[30512+((b[h>>1]|0)-(b[g>>1]|0))>>0]|0);a=b[f>>1]|0;i=e;return a|0}}return 0}function ZB(f,g,h,j,k,l,m){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;s=i;i=i+144|0;o=s+135|0;K=s+104|0;M=s+108|0;Q=s+112|0;_=s+126|0;T=s+124|0;S=s+116|0;Z=s+120|0;A=s+141|0;B=s+140|0;Y=s+139|0;u=s+138|0;C=s+137|0;X=s+136|0;F=s+132|0;z=s+130|0;N=s+128|0;R=s+100|0;p=s+68|0;y=s+72|0;P=s+76|0;W=s+80|0;w=s+60|0;L=s+52|0;t=s+48|0;G=s+56|0;E=s+64|0;J=s+96|0;r=s;v=s+32|0;x=s+16|0;O=s+24|0;I=s+84|0;H=s+88|0;$=s+134|0;U=s+92|0;V=s+40|0;q=s+8|0;c[K>>2]=f;c[M>>2]=g;c[Q>>2]=h;b[_>>1]=j;b[T>>1]=k;c[S>>2]=l;c[Z>>2]=m;c[w>>2]=0;c[J>>2]=c[c[c[K>>2]>>2]>>2];f=r;c[f>>2]=0;c[f+4>>2]=0;if((e[T>>1]|0)!=0){if((b[(c[J>>2]|0)+60>>1]&128|0)!=0){a[o>>0]=0;f=a[o>>0]|0;i=s;return f|0}}b[N>>1]=c[c[M>>2]>>2];if((e[N>>1]|0)>63){a[o>>0]=0;f=a[o>>0]|0;i=s;return f|0}a[u>>0]=1;g=bL(1,0,e[N>>1]|0)|0;g=$K(g|0,D|0,1,0)|0;f=v;c[f>>2]=g;c[f+4>>2]=D;f=x;c[f>>2]=0;c[f+4>>2]=0;f=O;c[f>>2]=0;c[f+4>>2]=0;c[R>>2]=0;while(1){if((d[u>>0]|0)==0){break}g=r;j=c[g+4>>2]|0;f=v;h=c[f+4>>2]|0;if(!(j>>>0>>0|((j|0)==(h|0)?(c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0:0))){break}if((c[R>>2]|0)>(e[T>>1]|0)){break}if((c[R>>2]|0)>0){h=(c[w>>2]|0)+8|0;j=O;g=c[j+4>>2]|c[h+4>>2];f=O;c[f>>2]=c[j>>2]|c[h>>2];c[f+4>>2]=g}if((c[R>>2]|0)<(e[T>>1]|0)){m=c[(c[(c[Q>>2]|0)+24>>2]|0)+(c[R>>2]<<2)>>2]|0}else{m=c[S>>2]|0}c[w>>2]=m;m=c[w>>2]|0;if((c[(c[w>>2]|0)+36>>2]&1024|0)!=0){n=16;break}c[P>>2]=c[(c[(c[K>>2]|0)+4>>2]|0)+8+((d[m+16>>0]|0)*72|0)+40>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>=(e[N>>1]|0)){break}g=bL(1,0,c[p>>2]|0)|0;f=r;do{if(!((g&c[f>>2]|0)!=0?1:(D&c[f+4>>2]|0)!=0)){c[t>>2]=Pw(c[(c[(c[M>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;if((d[c[t>>2]>>0]|0)==154){if((c[(c[t>>2]|0)+28>>2]|0)==(c[P>>2]|0)){f=O;c[L>>2]=OB((c[K>>2]|0)+328|0,c[P>>2]|0,b[(c[t>>2]|0)+32>>1]|0,~c[f>>2],~c[f+4>>2],130,0)|0;if((c[L>>2]|0)!=0){if((b[(c[L>>2]|0)+18>>1]&2|0)!=0){if((b[(c[t>>2]|0)+32>>1]|0)>=0){c[G>>2]=Jw(c[c[K>>2]>>2]|0,c[(c[(c[M>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;if((c[G>>2]|0)==0){c[G>>2]=c[(c[J>>2]|0)+8>>2]}c[I>>2]=c[c[G>>2]>>2];c[G>>2]=Jw(c[c[K>>2]>>2]|0,c[c[L>>2]>>2]|0)|0;if((c[G>>2]|0)==0){c[G>>2]=c[(c[J>>2]|0)+8>>2]}c[H>>2]=c[c[G>>2]>>2];if((Dc(c[I>>2]|0,c[H>>2]|0)|0)!=0){break}}}h=bL(1,0,c[p>>2]|0)|0;j=r;g=c[j+4>>2]|D;f=r;c[f>>2]=c[j>>2]|h;c[f+4>>2]=g}}}}}while(0);c[p>>2]=(c[p>>2]|0)+1}if((c[(c[w>>2]|0)+36>>2]&4096|0)==0){if((c[(c[w>>2]|0)+36>>2]&256|0)!=0){c[E>>2]=0;b[F>>1]=0;b[z>>1]=1}else{f=c[(c[w>>2]|0)+28>>2]|0;c[E>>2]=f;if((f|0)==0){n=38;break}if(((d[(c[E>>2]|0)+55>>0]|0)>>>2&1|0)!=0){n=38;break}b[F>>1]=b[(c[E>>2]|0)+50>>1]|0;b[z>>1]=b[(c[E>>2]|0)+52>>1]|0;a[u>>0]=(d[(c[E>>2]|0)+54>>0]|0)!=0}a[A>>0]=0;a[B>>0]=0;a[C>>0]=0;c[y>>2]=0;while(1){if((c[y>>2]|0)>=(e[z>>1]|0)){break}if((c[y>>2]|0)<(e[(c[w>>2]|0)+24>>1]|0)){if((e[(c[w>>2]|0)+26>>1]|0)==0){f=e[(c[(c[(c[w>>2]|0)+44>>2]|0)+(c[y>>2]<<2)>>2]|0)+18>>1]|0;c[p>>2]=f;if((f&130|0)!=0){if((c[p>>2]&128|0)!=0){a[u>>0]=0}}else{n=47}}else{n=47}}else{n=47}if((n|0)==47){n=0;if((c[E>>2]|0)!=0){c[W>>2]=b[(c[(c[E>>2]|0)+4>>2]|0)+(c[y>>2]<<1)>>1]|0;a[Y>>0]=a[(c[(c[E>>2]|0)+28>>2]|0)+(c[y>>2]|0)>>0]|0;if((c[W>>2]|0)==(b[(c[(c[E>>2]|0)+12>>2]|0)+36>>1]|0)){c[W>>2]=-1}}else{c[W>>2]=-1;a[Y>>0]=0}do{if((d[u>>0]|0)!=0){if((c[W>>2]|0)>=0){if((c[y>>2]|0)<(e[(c[w>>2]|0)+24>>1]|0)){break}if((d[(c[(c[(c[E>>2]|0)+12>>2]|0)+4>>2]|0)+((c[W>>2]|0)*24|0)+20>>0]|0)!=0){break}a[u>>0]=0}}}while(0);a[$>>0]=1;a[X>>0]=0;c[p>>2]=0;a:while(1){if((d[$>>0]|0)==0){break}if((c[p>>2]|0)>=(e[N>>1]|0)){break}g=bL(1,0,c[p>>2]|0)|0;f=r;do{if(!((g&c[f>>2]|0)!=0?1:(D&c[f+4>>2]|0)!=0)){c[t>>2]=Pw(c[(c[(c[M>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;if((b[_>>1]&768|0)==0){a[$>>0]=0}if((d[c[t>>2]>>0]|0)!=154){break}if((c[(c[t>>2]|0)+28>>2]|0)!=(c[P>>2]|0)){break}if((b[(c[t>>2]|0)+32>>1]|0)!=(c[W>>2]|0)){break}if((c[W>>2]|0)<0){n=69;break a}c[G>>2]=Jw(c[c[K>>2]>>2]|0,c[(c[(c[M>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;if((c[G>>2]|0)==0){c[G>>2]=c[(c[J>>2]|0)+8>>2]}if((Dc(c[c[G>>2]>>2]|0,c[(c[(c[E>>2]|0)+32>>2]|0)+(c[y>>2]<<2)>>2]|0)|0)==0){n=69;break a}}}while(0);c[p>>2]=(c[p>>2]|0)+1}if((n|0)==69){n=0;a[X>>0]=1}do{if((d[X>>0]|0)!=0){if((b[(c[K>>2]|0)+34>>1]&256|0)!=0){break}if((a[A>>0]|0)!=0){if((d[B>>0]^d[Y>>0]|0)==(d[(c[(c[M>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)+12>>0]|0)){break}a[X>>0]=0;break}a[B>>0]=d[Y>>0]^d[(c[(c[M>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)+12>>0];if((a[B>>0]|0)!=0){h=bL(1,0,c[R>>2]|0)|0;f=c[Z>>2]|0;j=f;g=c[j+4>>2]|D;c[f>>2]=c[j>>2]|h;c[f+4>>2]=g}a[A>>0]=1}}while(0);if((a[X>>0]|0)==0){n=83;break}if((c[W>>2]|0)<0){a[C>>0]=1}h=bL(1,0,c[p>>2]|0)|0;j=r;g=c[j+4>>2]|D;f=r;c[f>>2]=c[j>>2]|h;c[f+4>>2]=g}c[y>>2]=(c[y>>2]|0)+1}do{if((n|0)==83){n=0;if((c[y>>2]|0)!=0){if((c[y>>2]|0)>=(e[F>>1]|0)){break}}a[u>>0]=0}}while(0);if((a[C>>0]|0)!=0){a[u>>0]=1}}b:do{if((a[u>>0]|0)!=0){h=(c[w>>2]|0)+8|0;j=x;g=c[j+4>>2]|c[h+4>>2];f=x;c[f>>2]=c[j>>2]|c[h>>2];c[f+4>>2]=g;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(e[N>>1]|0)){break b}g=bL(1,0,c[p>>2]|0)|0;f=r;do{if(!((g&c[f>>2]|0)!=0?1:(D&c[f+4>>2]|0)!=0)){c[U>>2]=c[(c[(c[M>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2];g=WB((c[K>>2]|0)+68|0,c[U>>2]|0)|0;f=V;c[f>>2]=g;c[f+4>>2]=D;f=V;if((c[f>>2]|0)==0&(c[f+4>>2]|0)==0){if((Bz(c[U>>2]|0)|0)==0){break}}g=V;f=x;if((c[g>>2]&~c[f>>2]|0)==0?(c[g+4>>2]&~c[f+4>>2]|0)==0:0){h=bL(1,0,c[p>>2]|0)|0;j=r;g=c[j+4>>2]|D;f=r;c[f>>2]=c[j>>2]|h;c[f+4>>2]=g}}}while(0);c[p>>2]=(c[p>>2]|0)+1}}}while(0);c[R>>2]=(c[R>>2]|0)+1}if((n|0)==16){if((a[m+29>>0]|0)!=0){h=v;g=c[h+4>>2]|0;f=r;c[f>>2]=c[h>>2];c[f+4>>2]=g}}else if((n|0)==38){a[o>>0]=0;f=a[o>>0]|0;i=s;return f|0}g=r;f=v;if((c[g>>2]|0)==(c[f>>2]|0)?(c[g+4>>2]|0)==(c[f+4>>2]|0):0){a[o>>0]=b[N>>1];f=a[o>>0]|0;i=s;return f|0}if((a[u>>0]|0)!=0){a[o>>0]=-1;f=a[o>>0]|0;i=s;return f|0}c[p>>2]=(e[N>>1]|0)-1;while(1){if((c[p>>2]|0)<=0){n=107;break}g=bL(1,0,c[p>>2]|0)|0;g=$K(g|0,D|0,1,0)|0;h=q;c[h>>2]=g;c[h+4>>2]=D;h=r;g=q;f=q;t=c[p>>2]|0;if((c[h>>2]&c[g>>2]|0)==(c[f>>2]|0)?(c[h+4>>2]&c[g+4>>2]|0)==(c[f+4>>2]|0):0){n=105;break}c[p>>2]=t+ -1}if((n|0)==105){a[o>>0]=t;f=a[o>>0]|0;i=s;return f|0}else if((n|0)==107){a[o>>0]=0;f=a[o>>0]|0;i=s;return f|0}return 0}function _B(a){a=a|0;var c=0,d=0,e=0;c=i;i=i+16|0;e=c+2|0;d=c;b[e>>1]=a;a=b[e>>1]|0;b[d>>1]=Kw(a,((a|0)<0)<<31>>31)|0;if((b[d>>1]|0)<=33){e=0;e=e&65535;i=c;return e|0}e=(b[d>>1]|0)-33|0;e=e&65535;i=c;return e|0}function $B(f,g,j){f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;y=i;i=i+112|0;H=y+8|0;m=y+92|0;r=y+88|0;u=y;J=y+84|0;w=y+80|0;A=y+76|0;I=y+72|0;x=y+68|0;n=y+64|0;o=y+60|0;t=y+56|0;k=y+96|0;B=y+28|0;v=y+24|0;z=y+12|0;G=y+16|0;s=y+20|0;F=y+48|0;D=y+32|0;E=y+36|0;C=y+40|0;q=y+44|0;p=y+52|0;c[r>>2]=f;f=u;c[f>>2]=g;c[f+4>>2]=j;c[D>>2]=0;c[E>>2]=0;c[p>>2]=0;c[J>>2]=c[c[r>>2]>>2];c[w>>2]=c[c[J>>2]>>2];c[n>>2]=c[c[w>>2]>>2];c[A>>2]=c[(c[r>>2]|0)+4>>2];c[q>>2]=c[(c[r>>2]|0)+12>>2];c[I>>2]=(c[(c[J>>2]|0)+4>>2]|0)+8+((d[(c[q>>2]|0)+16>>0]|0)*72|0);c[x>>2]=c[(c[I>>2]|0)+16>>2];c[o>>2]=rC(c[w>>2]|0,c[A>>2]|0,c[I>>2]|0,c[(c[r>>2]|0)+8>>2]|0)|0;if((c[o>>2]|0)==0){c[m>>2]=7;J=c[m>>2]|0;i=y;return J|0}J=c[q>>2]|0;c[J>>2]=0;c[J+4>>2]=0;b[(c[q>>2]|0)+18>>1]=0;c[(c[q>>2]|0)+36>>2]=1024;b[(c[q>>2]|0)+40>>1]=0;a[(c[q>>2]|0)+28>>0]=0;c[k>>2]=c[(c[o>>2]|0)+16>>2];c[F>>2]=c[c[o>>2]>>2];if((UB(c[n>>2]|0,c[q>>2]|0,c[F>>2]|0)|0)!=0){cc(c[n>>2]|0,c[o>>2]|0);c[m>>2]=7;J=c[m>>2]|0;i=y;return J|0}c[C>>2]=0;a:while(1){if((c[C>>2]|0)>3){break}if((c[D>>2]|0)==0){if((c[C>>2]&1|0)!=0){c[C>>2]=(c[C>>2]|0)+1;if((c[C>>2]|0)>3){break}}}if((c[E>>2]|0)==0){if((c[C>>2]|0)>1){break}}c[t>>2]=c[(c[o>>2]|0)+4>>2];c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[o>>2]>>2]|0)){break}c[z>>2]=c[(c[t>>2]|0)+8>>2];c[B>>2]=(c[(c[A>>2]|0)+20>>2]|0)+((c[z>>2]|0)*48|0);j=c[C>>2]|0;do{if((j|0)==1){J=(c[B>>2]|0)+32|0;a[(c[t>>2]|0)+5>>0]=(c[J>>2]|0)==0&(c[J+4>>2]|0)==0&1}else if((j|0)==2){a[(c[t>>2]|0)+5>>0]=(b[(c[B>>2]|0)+18>>1]&1|0)==0}else if((j|0)==0){a[(c[t>>2]|0)+5>>0]=0;if((b[(c[B>>2]|0)+18>>1]&1|0)!=0){c[D>>2]=1}J=(c[B>>2]|0)+32|0;if((c[J>>2]|0)!=0|(c[J+4>>2]|0)!=0){c[E>>2]=1;break}if((b[(c[B>>2]|0)+18>>1]&1|0)==0){a[(c[t>>2]|0)+5>>0]=1}}else{a[(c[t>>2]|0)+5>>0]=1}}while(0);c[v>>2]=(c[v>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+12}aL(c[k>>2]|0,0,c[c[o>>2]>>2]<<3|0)|0;if((c[(c[o>>2]|0)+28>>2]|0)!=0){oc(c[(c[o>>2]|0)+24>>2]|0)}c[(c[o>>2]|0)+24>>2]=0;c[(c[o>>2]|0)+20>>2]=0;c[(c[o>>2]|0)+28>>2]=0;c[(c[o>>2]|0)+32>>2]=0;h[(c[o>>2]|0)+40>>3]=5.0e+98;J=(c[o>>2]|0)+48|0;c[J>>2]=25;c[J+4>>2]=0;c[p>>2]=sC(c[w>>2]|0,c[x>>2]|0,c[o>>2]|0)|0;if((c[p>>2]|0)!=0){break}c[t>>2]=c[(c[o>>2]|0)+4>>2];f=u;I=c[f+4>>2]|0;J=c[q>>2]|0;c[J>>2]=c[f>>2];c[J+4>>2]=I;c[s>>2]=-1;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[F>>2]|0)){break}c[(c[(c[q>>2]|0)+44>>2]|0)+(c[v>>2]<<2)>>2]=0;c[v>>2]=(c[v>>2]|0)+1}b[(c[q>>2]|0)+30>>1]=0;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[F>>2]|0)){break}J=(c[(c[k>>2]|0)+(c[v>>2]<<3)>>2]|0)-1|0;c[G>>2]=J;if((J|0)>=0){c[z>>2]=c[(c[t>>2]|0)+8>>2];if((c[G>>2]|0)>=(c[F>>2]|0)){l=38;break a}if((c[z>>2]|0)<0){l=38;break a}if((c[z>>2]|0)>=(c[(c[A>>2]|0)+12>>2]|0)){l=38;break a}if((c[(c[(c[q>>2]|0)+44>>2]|0)+(c[G>>2]<<2)>>2]|0)!=0){l=38;break a}c[B>>2]=(c[(c[A>>2]|0)+20>>2]|0)+((c[z>>2]|0)*48|0);f=(c[B>>2]|0)+32|0;J=c[q>>2]|0;g=J;I=c[g+4>>2]|c[f+4>>2];c[J>>2]=c[g>>2]|c[f>>2];c[J+4>>2]=I;c[(c[(c[q>>2]|0)+44>>2]|0)+(c[G>>2]<<2)>>2]=c[B>>2];if((c[G>>2]|0)>(c[s>>2]|0)){c[s>>2]=c[G>>2]}if((c[G>>2]|0)<16){if((d[(c[k>>2]|0)+(c[v>>2]<<3)+4>>0]|0)!=0){J=(c[q>>2]|0)+30|0;b[J>>1]=e[J>>1]|1<>2]}}if((b[(c[B>>2]|0)+18>>1]&1|0)!=0){if((d[(c[k>>2]|0)+(c[v>>2]<<3)+4>>0]|0)==0){break}c[(c[o>>2]|0)+32>>2]=0}}c[v>>2]=(c[v>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+12}if((c[v>>2]|0)>=(c[F>>2]|0)){b[(c[q>>2]|0)+40>>1]=(c[s>>2]|0)+1;c[(c[q>>2]|0)+24>>2]=c[(c[o>>2]|0)+20>>2];a[(c[q>>2]|0)+28>>0]=c[(c[o>>2]|0)+28>>2];c[(c[o>>2]|0)+28>>2]=0;c[(c[q>>2]|0)+32>>2]=c[(c[o>>2]|0)+24>>2];if((c[(c[o>>2]|0)+32>>2]|0)!=0){j=c[(c[o>>2]|0)+8>>2]|0}else{j=0}a[(c[q>>2]|0)+29>>0]=j;b[(c[q>>2]|0)+18>>1]=0;J=tC(+h[(c[o>>2]|0)+40>>3])|0;b[(c[q>>2]|0)+20>>1]=J;J=(c[o>>2]|0)+48|0;J=Kw(c[J>>2]|0,c[J+4>>2]|0)|0;b[(c[q>>2]|0)+22>>1]=J;eC(c[r>>2]|0,c[q>>2]|0)|0;if((a[(c[q>>2]|0)+28>>0]|0)!=0){oc(c[(c[q>>2]|0)+32>>2]|0);a[(c[q>>2]|0)+28>>0]=0}}c[C>>2]=(c[C>>2]|0)+1}if((l|0)==38){c[p>>2]=1;J=c[w>>2]|0;c[H>>2]=c[c[x>>2]>>2];bf(J,30544,H)}if((c[(c[o>>2]|0)+28>>2]|0)!=0){oc(c[(c[o>>2]|0)+24>>2]|0)}cc(c[n>>2]|0,c[o>>2]|0);c[m>>2]=c[p>>2];J=c[m>>2]|0;i=y;return J|0}function aC(e,f,g){e=e|0;f=f|0;g=g|0;var h=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,E=0,F=0;z=i;i=i+144|0;r=z+128|0;q=z;y=z+60|0;l=z+64|0;A=z+72|0;C=z+132|0;B=z+136|0;F=z+56|0;s=z+52|0;v=z+48|0;m=z+44|0;h=z+20|0;w=z+28|0;p=z+140|0;o=z+138|0;k=z+16|0;u=z+24|0;E=z+40|0;n=z+32|0;t=z+36|0;x=z+8|0;c[r>>2]=e;e=q;c[e>>2]=f;c[e+4>>2]=g;b[B>>1]=-1;c[m>>2]=0;c[h>>2]=1;c[v>>2]=c[(c[r>>2]|0)+12>>2];c[y>>2]=c[c[r>>2]>>2];c[F>>2]=c[(c[y>>2]|0)+4>>2];c[s>>2]=(c[F>>2]|0)+8+((d[(c[v>>2]|0)+16>>0]|0)*72|0);c[u>>2]=c[(c[s>>2]|0)+16>>2];c[k>>2]=c[(c[r>>2]|0)+4>>2];do{if((c[(c[s>>2]|0)+68>>2]|0)!=0){c[l>>2]=c[(c[s>>2]|0)+68>>2]}else{if((a[(c[u>>2]|0)+44>>0]&32|0)!=0){c[l>>2]=c[(c[u>>2]|0)+8>>2];break}f=A+0|0;g=f+56|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));b[A+50>>1]=1;c[A+4>>2]=B;c[A+8>>2]=C;a[A+54>>0]=5;c[A+12>>2]=c[u>>2];b[A+48>>1]=b[(c[u>>2]|0)+42>>1]|0;b[C>>1]=b[(c[u>>2]|0)+28>>1]|0;b[C+2>>1]=0;c[E>>2]=c[(c[(c[s>>2]|0)+16>>2]|0)+8>>2];if((a[(c[s>>2]|0)+37>>0]&1|0)==0){c[A+20>>2]=c[E>>2]}c[l>>2]=A}}while(0);b[p>>1]=b[(c[u>>2]|0)+28>>1]|0;b[o>>1]=_B(b[p>>1]|0)|0;a:do{if((c[(c[r>>2]|0)+16>>2]|0)==0){if((c[(c[c[c[y>>2]>>2]>>2]|0)+24>>2]&1048576|0)!=0){if((c[(c[s>>2]|0)+68>>2]|0)==0){if(((d[(c[s>>2]|0)+37>>0]|0)>>>2&1|0)==0){if((a[(c[s>>2]|0)+37>>0]&1|0)==0){if((a[(c[u>>2]|0)+44>>0]&32|0)==0){if(((d[(c[s>>2]|0)+37>>0]|0)>>>1&1|0)==0){if(((d[(c[s>>2]|0)+37>>0]|0)>>>3&1|0)==0){c[t>>2]=(c[(c[k>>2]|0)+20>>2]|0)+((c[(c[k>>2]|0)+12>>2]|0)*48|0);c[n>>2]=c[(c[k>>2]|0)+20>>2];while(1){if((c[m>>2]|0)!=0){break a}if(!((c[n>>2]|0)>>>0<(c[t>>2]|0)>>>0)){break a}e=(c[n>>2]|0)+32|0;F=(c[v>>2]|0)+8|0;if(!((c[e>>2]&c[F>>2]|0)!=0?1:(c[e+4>>2]&c[F+4>>2]|0)!=0)){if((TB(c[n>>2]|0,c[s>>2]|0,0,0)|0)!=0){b[(c[v>>2]|0)+24>>1]=1;b[(c[v>>2]|0)+26>>1]=0;c[(c[v>>2]|0)+28>>2]=0;b[(c[v>>2]|0)+40>>1]=1;c[c[(c[v>>2]|0)+44>>2]>>2]=c[n>>2];b[(c[v>>2]|0)+18>>1]=(b[o>>1]|0)+(b[p>>1]|0)+28;b[(c[v>>2]|0)+22>>1]=43;g=YB(b[o>>1]|0,b[(c[v>>2]|0)+22>>1]|0)|0;b[(c[v>>2]|0)+20>>1]=g;c[(c[v>>2]|0)+36>>2]=16384;g=q;f=(c[n>>2]|0)+32|0;e=c[g+4>>2]|c[f+4>>2];F=c[v>>2]|0;c[F>>2]=c[g>>2]|c[f>>2];c[F+4>>2]=e;c[m>>2]=eC(c[r>>2]|0,c[v>>2]|0)|0}}c[n>>2]=(c[n>>2]|0)+48}}}}}}}}}}while(0);b:while(1){if((c[m>>2]|0)!=0){j=45;break}if((c[l>>2]|0)==0){j=45;break}if((c[(c[l>>2]|0)+36>>2]|0)!=0){if((jC(d[(c[v>>2]|0)+16>>0]|0,c[k>>2]|0,c[(c[l>>2]|0)+36>>2]|0)|0)!=0){j=27}}else{j=27}if((j|0)==27){j=0;b[p>>1]=b[c[(c[l>>2]|0)+8>>2]>>1]|0;b[(c[v>>2]|0)+24>>1]=0;b[(c[v>>2]|0)+26>>1]=0;b[(c[v>>2]|0)+40>>1]=0;a[(c[v>>2]|0)+17>>0]=0;b[(c[v>>2]|0)+18>>1]=0;f=q;e=c[f+4>>2]|0;F=c[v>>2]|0;c[F>>2]=c[f>>2];c[F+4>>2]=e;b[(c[v>>2]|0)+22>>1]=b[p>>1]|0;c[(c[v>>2]|0)+28>>2]=c[l>>2];c[w>>2]=kC(c[r>>2]|0,c[l>>2]|0,c[(c[s>>2]|0)+40>>2]|0)|0;do{if((c[(c[l>>2]|0)+44>>2]|0)<=0){c[(c[v>>2]|0)+36>>2]=256;a[(c[v>>2]|0)+17>>0]=(c[w>>2]|0)!=0?c[h>>2]|0:0;b[(c[v>>2]|0)+20>>1]=(b[p>>1]|0)+16;lC(c[k>>2]|0,c[v>>2]|0);c[m>>2]=eC(c[r>>2]|0,c[v>>2]|0)|0;b[(c[v>>2]|0)+22>>1]=b[p>>1]|0;if((c[m>>2]|0)!=0){j=45;break b}}else{if(((d[(c[l>>2]|0)+55>>0]|0)>>>5&1|0)!=0){c[(c[v>>2]|0)+36>>2]=576;F=x;c[F>>2]=0;c[F+4>>2]=0}else{e=(c[s>>2]|0)+56|0;g=c[e>>2]|0;e=c[e+4>>2]|0;f=mC(c[l>>2]|0)|0;F=x;c[F>>2]=g&~f;c[F+4>>2]=e&~D;F=x;c[(c[v>>2]|0)+36>>2]=(c[F>>2]|0)==0&(c[F+4>>2]|0)==0?576:512}if((c[w>>2]|0)==0){if((a[(c[u>>2]|0)+44>>0]&32|0)==0){F=x;if(!((c[F>>2]|0)==0&(c[F+4>>2]|0)==0)){break}if(((d[(c[l>>2]|0)+55>>0]|0)>>>2&1|0)!=0){break}if((b[(c[l>>2]|0)+48>>1]|0)>=(b[(c[u>>2]|0)+42>>1]|0)){break}if((b[(c[y>>2]|0)+34>>1]&4|0)!=0){break}if((c[45152>>2]|0)==0){break}if((b[(c[c[c[y>>2]>>2]>>2]|0)+60>>1]&64|0)!=0){break}}}a[(c[v>>2]|0)+17>>0]=(c[w>>2]|0)!=0?c[h>>2]|0:0;b[(c[v>>2]|0)+20>>1]=(b[p>>1]|0)+1+(((b[(c[l>>2]|0)+48>>1]|0)*15|0)/(b[(c[u>>2]|0)+42>>1]|0)|0);F=x;if((c[F>>2]|0)!=0|(c[F+4>>2]|0)!=0){F=YB(b[(c[v>>2]|0)+20>>1]|0,(b[p>>1]|0)+16&65535)|0;b[(c[v>>2]|0)+20>>1]=F}lC(c[k>>2]|0,c[v>>2]|0);c[m>>2]=eC(c[r>>2]|0,c[v>>2]|0)|0;b[(c[v>>2]|0)+22>>1]=b[p>>1]|0;if((c[m>>2]|0)!=0){j=45;break b}}}while(0);c[m>>2]=nC(c[r>>2]|0,c[s>>2]|0,c[l>>2]|0,0)|0;if((c[(c[s>>2]|0)+68>>2]|0)!=0){j=45;break}}c[l>>2]=c[(c[l>>2]|0)+20>>2];c[h>>2]=(c[h>>2]|0)+1}if((j|0)==45){i=z;return c[m>>2]|0}return 0}function bC(f,g,h){f=f|0;g=g|0;h=h|0;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,G=0;z=i;i=i+672|0;l=z+664|0;x=z+660|0;m=z+576|0;G=z+656|0;q=z+652|0;n=z+648|0;r=z+644|0;s=z+640|0;t=z+636|0;p=z+632|0;B=z;y=z+588|0;D=z+464|0;j=z+408|0;o=z+612|0;u=z+616|0;v=z+608|0;A=z+624|0;w=z+628|0;C=z+620|0;E=z+584|0;F=z+520|0;c[x>>2]=f;f=m;c[f>>2]=g;c[f+4>>2]=h;c[G>>2]=c[c[x>>2]>>2];c[t>>2]=0;c[q>>2]=c[(c[x>>2]|0)+4>>2];if((b[(c[G>>2]|0)+34>>1]&128|0)!=0){c[l>>2]=0;f=c[l>>2]|0;i=z;return f|0}c[s>>2]=(c[(c[q>>2]|0)+20>>2]|0)+((c[(c[q>>2]|0)+12>>2]|0)*48|0);c[n>>2]=c[(c[x>>2]|0)+12>>2];g=D+0|0;h=g+56|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[o>>2]=(c[(c[G>>2]|0)+4>>2]|0)+8+((d[(c[n>>2]|0)+16>>0]|0)*72|0);c[p>>2]=c[(c[o>>2]|0)+40>>2];c[r>>2]=c[(c[q>>2]|0)+20>>2];while(1){if(!((c[r>>2]|0)>>>0<(c[s>>2]|0)>>>0)){break}if((c[t>>2]|0)!=0){break}a:do{if((b[(c[r>>2]|0)+18>>1]&256|0)!=0){g=(c[(c[r>>2]|0)+12>>2]|0)+408|0;f=(c[n>>2]|0)+8|0;if((c[g>>2]&c[f>>2]|0)!=0?1:(c[g+4>>2]&c[f+4>>2]|0)!=0){c[u>>2]=c[(c[r>>2]|0)+12>>2];c[v>>2]=(c[(c[u>>2]|0)+20>>2]|0)+((c[(c[u>>2]|0)+12>>2]|0)*48|0);c[w>>2]=1;f=c[x>>2]|0;c[y+0>>2]=c[f+0>>2];c[y+4>>2]=c[f+4>>2];c[y+8>>2]=c[f+8>>2];c[y+12>>2]=c[f+12>>2];c[y+16>>2]=c[f+16>>2];c[y+8>>2]=0;c[y+16>>2]=j;c[A>>2]=c[(c[u>>2]|0)+20>>2];b:while(1){if(!((c[A>>2]|0)>>>0<(c[v>>2]|0)>>>0)){break}G=c[A>>2]|0;if((b[(c[A>>2]|0)+18>>1]&512|0)!=0){c[y+4>>2]=c[G+12>>2];k=14}else{if((c[G+8>>2]|0)==(c[p>>2]|0)){c[B>>2]=c[c[q>>2]>>2];c[B+4>>2]=c[q>>2];a[B+8>>0]=72;c[B+12>>2]=1;c[B+20>>2]=c[A>>2];c[y+4>>2]=B;k=14}}c:do{if((k|0)==14){k=0;b[j>>1]=0;G=m;h=c[G>>2]|0;G=c[G+4>>2]|0;if((a[(c[(c[o>>2]|0)+16>>2]|0)+44>>0]&16|0)!=0){c[t>>2]=$B(y,h,G)|0}else{c[t>>2]=aC(y,h,G)|0}if((e[j>>1]|0)==0){k=18;break b}if((c[w>>2]|0)!=0){cC(D,j);c[w>>2]=0;break}cC(F,D);b[D>>1]=0;c[C>>2]=0;while(1){if((c[C>>2]|0)>=(e[F>>1]|0)){break c}c[E>>2]=0;while(1){G=c[C>>2]|0;if((c[E>>2]|0)>=(e[j>>1]|0)){break}f=F+8+(G<<4)|0;g=j+8+(c[E>>2]<<4)|0;h=c[f>>2]|c[g>>2];g=c[f+4>>2]|c[g+4>>2];f=YB(b[F+8+(c[C>>2]<<4)+8>>1]|0,b[j+8+(c[E>>2]<<4)+8>>1]|0)|0;dC(D,h,g,f,YB(b[F+8+(c[C>>2]<<4)+10>>1]|0,b[j+8+(c[E>>2]<<4)+10>>1]|0)|0)|0;c[E>>2]=(c[E>>2]|0)+1}c[C>>2]=G+1}}}while(0);c[A>>2]=(c[A>>2]|0)+48}if((k|0)==18){k=0;b[D>>1]=0}b[(c[n>>2]|0)+40>>1]=1;c[c[(c[n>>2]|0)+44>>2]>>2]=c[r>>2];c[(c[n>>2]|0)+36>>2]=8192;b[(c[n>>2]|0)+18>>1]=0;a[(c[n>>2]|0)+17>>0]=0;f=(c[n>>2]|0)+24|0;c[f+0>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[C>>2]=0;while(1){if((c[t>>2]|0)!=0){break a}if((c[C>>2]|0)>=(e[D>>1]|0)){break a}b[(c[n>>2]|0)+20>>1]=(b[D+8+(c[C>>2]<<4)+8>>1]|0)+1;b[(c[n>>2]|0)+22>>1]=b[D+8+(c[C>>2]<<4)+10>>1]|0;h=D+8+(c[C>>2]<<4)|0;g=c[h+4>>2]|0;f=c[n>>2]|0;c[f>>2]=c[h>>2];c[f+4>>2]=g;c[t>>2]=eC(c[x>>2]|0,c[n>>2]|0)|0;c[C>>2]=(c[C>>2]|0)+1}}}}while(0);c[r>>2]=(c[r>>2]|0)+48}c[l>>2]=c[t>>2];f=c[l>>2]|0;i=z;return f|0}function cC(a,d){a=a|0;d=d|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=a;c[h>>2]=d;b[c[g>>2]>>1]=b[c[h>>2]>>1]|0;fL((c[g>>2]|0)+8|0,(c[h>>2]|0)+8|0,(e[c[g>>2]>>1]|0)<<4|0)|0;i=f;return}function dC(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+32|0;q=k+16|0;p=k+8|0;n=k;o=k+24|0;l=k+22|0;j=k+20|0;m=k+12|0;c[p>>2]=a;a=n;c[a>>2]=d;c[a+4>>2]=f;b[o>>1]=g;b[l>>1]=h;b[j>>1]=b[c[p>>2]>>1]|0;c[m>>2]=(c[p>>2]|0)+8;while(1){if((e[j>>1]|0)<=0){r=9;break}if((b[o>>1]|0)<=(b[(c[m>>2]|0)+8>>1]|0)){f=n;d=c[m>>2]|0;a=n;if((c[f>>2]&c[d>>2]|0)==(c[a>>2]|0)?(c[f+4>>2]&c[d+4>>2]|0)==(c[a+4>>2]|0):0){break}}if((b[(c[m>>2]|0)+8>>1]|0)<=(b[o>>1]|0)){f=c[m>>2]|0;d=n;a=c[m>>2]|0;if((c[f>>2]&c[d>>2]|0)==(c[a>>2]|0)?(c[f+4>>2]&c[d+4>>2]|0)==(c[a+4>>2]|0):0){r=7;break}}b[j>>1]=(b[j>>1]|0)+ -1<<16>>16;c[m>>2]=(c[m>>2]|0)+16}if((r|0)==7){c[q>>2]=0;a=c[q>>2]|0;i=k;return a|0}do{if((r|0)==9){r=c[p>>2]|0;if((e[c[p>>2]>>1]|0)<3){a=b[r>>1]|0;b[r>>1]=a+1<<16>>16;c[m>>2]=(c[p>>2]|0)+8+((a&65535)<<4);b[(c[m>>2]|0)+10>>1]=b[l>>1]|0;break}c[m>>2]=r+8;b[j>>1]=1;while(1){r=b[(c[m>>2]|0)+8>>1]|0;if((e[j>>1]|0)>=(e[c[p>>2]>>1]|0)){break}if((r|0)>(b[(c[p>>2]|0)+8+(e[j>>1]<<4)+8>>1]|0)){c[m>>2]=(c[p>>2]|0)+8+(e[j>>1]<<4)}b[j>>1]=(b[j>>1]|0)+1<<16>>16}if((r|0)<=(b[o>>1]|0)){c[q>>2]=0;a=c[q>>2]|0;i=k;return a|0}}}while(0);f=n;d=c[f+4>>2]|0;a=c[m>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=d;b[(c[m>>2]|0)+8>>1]=b[o>>1]|0;if((b[(c[m>>2]|0)+10>>1]|0)>(b[l>>1]|0)){b[(c[m>>2]|0)+10>>1]=b[l>>1]|0}c[q>>2]=1;a=c[q>>2]|0;i=k;return a|0}function eC(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=i;i=i+48|0;f=k+36|0;h=k+32|0;g=k+28|0;l=k+24|0;e=k+20|0;p=k+16|0;j=k+8|0;n=k+4|0;o=k;m=k+12|0;c[h>>2]=a;c[g>>2]=d;c[p>>2]=c[c[h>>2]>>2];c[j>>2]=c[c[c[p>>2]>>2]>>2];if((c[(c[h>>2]|0)+16>>2]|0)!=0){a=c[g>>2]|0;dC(c[(c[h>>2]|0)+16>>2]|0,c[a>>2]|0,c[a+4>>2]|0,b[(c[g>>2]|0)+20>>1]|0,b[(c[g>>2]|0)+22>>1]|0)|0;c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}fC(c[(c[p>>2]|0)+16>>2]|0,c[g>>2]|0);c[l>>2]=gC((c[p>>2]|0)+16|0,c[g>>2]|0)|0;if((c[l>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}c[e>>2]=c[c[l>>2]>>2];a:do{if((c[e>>2]|0)==0){a=$e(c[j>>2]|0,72)|0;c[e>>2]=a;c[c[l>>2]>>2]=a;if((c[e>>2]|0)!=0){sB(c[e>>2]|0);c[(c[e>>2]|0)+48>>2]=0;break}c[f>>2]=7;a=c[f>>2]|0;i=k;return a|0}else{c[n>>2]=(c[e>>2]|0)+48;while(1){if((c[c[n>>2]>>2]|0)==0){break a}c[n>>2]=gC(c[n>>2]|0,c[g>>2]|0)|0;if((c[n>>2]|0)==0){break a}c[o>>2]=c[c[n>>2]>>2];if((c[o>>2]|0)==0){break a}c[c[n>>2]>>2]=c[(c[o>>2]|0)+48>>2];pB(c[j>>2]|0,c[o>>2]|0)}}}while(0);hC(c[j>>2]|0,c[e>>2]|0,c[g>>2]|0)|0;if((c[(c[e>>2]|0)+36>>2]&1024|0)==0){c[m>>2]=c[(c[e>>2]|0)+28>>2];if((c[m>>2]|0)!=0){if((c[(c[m>>2]|0)+44>>2]|0)==0){c[(c[e>>2]|0)+28>>2]=0}}}c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}function fC(a,e){a=a|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=a;c[h>>2]=e;if((c[(c[h>>2]|0)+36>>2]&512|0)==0){i=f;return}if((c[(c[h>>2]|0)+36>>2]&32768|0)!=0){i=f;return}while(1){if((c[g>>2]|0)==0){break}do{if((d[(c[g>>2]|0)+16>>0]|0)==(d[(c[h>>2]|0)+16>>0]|0)){if((c[(c[g>>2]|0)+36>>2]&512|0)!=0){if((c[(c[g>>2]|0)+36>>2]&32768|0)==0){if((iC(c[g>>2]|0,c[h>>2]|0)|0)!=0){b[(c[h>>2]|0)+20>>1]=b[(c[g>>2]|0)+20>>1]|0;b[(c[h>>2]|0)+22>>1]=(b[(c[g>>2]|0)+22>>1]|0)-1;break}if((iC(c[h>>2]|0,c[g>>2]|0)|0)!=0){b[(c[h>>2]|0)+20>>1]=b[(c[g>>2]|0)+20>>1]|0;b[(c[h>>2]|0)+22>>1]=(b[(c[g>>2]|0)+22>>1]|0)+1}}}}}while(0);c[g>>2]=c[(c[g>>2]|0)+48>>2]}i=f;return}function gC(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+16|0;g=h+12|0;f=h;k=h+4|0;j=h+8|0;c[f>>2]=a;c[k>>2]=e;c[j>>2]=c[c[f>>2]>>2];while(1){if((c[j>>2]|0)==0){e=14;break}if((d[(c[j>>2]|0)+16>>0]|0)==(d[(c[k>>2]|0)+16>>0]|0)){if((d[(c[j>>2]|0)+17>>0]|0)==(d[(c[k>>2]|0)+17>>0]|0)){l=c[j>>2]|0;e=c[k>>2]|0;a=c[j>>2]|0;if((c[l>>2]&c[e>>2]|0)==(c[a>>2]|0)?(c[l+4>>2]&c[e+4>>2]|0)==(c[a+4>>2]|0):0){if((b[(c[j>>2]|0)+18>>1]|0)<=(b[(c[k>>2]|0)+18>>1]|0)){if((b[(c[j>>2]|0)+20>>1]|0)<=(b[(c[k>>2]|0)+20>>1]|0)){if((b[(c[j>>2]|0)+22>>1]|0)<=(b[(c[k>>2]|0)+22>>1]|0)){e=9;break}}}}e=c[j>>2]|0;a=c[k>>2]|0;l=c[k>>2]|0;if((c[e>>2]&c[a>>2]|0)==(c[l>>2]|0)?(c[e+4>>2]&c[a+4>>2]|0)==(c[l+4>>2]|0):0){if((b[(c[j>>2]|0)+20>>1]|0)>=(b[(c[k>>2]|0)+20>>1]|0)){if((b[(c[j>>2]|0)+22>>1]|0)>=(b[(c[k>>2]|0)+22>>1]|0)){e=14;break}}}}}c[f>>2]=(c[j>>2]|0)+48;c[j>>2]=c[c[f>>2]>>2]}if((e|0)==9){c[g>>2]=0;l=c[g>>2]|0;i=h;return l|0}else if((e|0)==14){c[g>>2]=c[f>>2];l=c[g>>2]|0;i=h;return l|0}return 0}function hC(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+16|0;h=k+12|0;n=k;l=k+4|0;j=k+8|0;c[n>>2]=d;c[l>>2]=f;c[j>>2]=g;rB(c[n>>2]|0,c[l>>2]|0);n=(UB(c[n>>2]|0,c[l>>2]|0,e[(c[j>>2]|0)+40>>1]|0)|0)!=0;d=c[l>>2]|0;if(n){n=d+24|0;c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[h>>2]=7;n=c[h>>2]|0;i=k;return n|0}f=c[j>>2]|0;n=d+0|0;m=f+0|0;g=n+40|0;do{c[n>>2]=c[m>>2];n=n+4|0;m=m+4|0}while((n|0)<(g|0));b[d+40>>1]=b[f+40>>1]|0;fL(c[(c[l>>2]|0)+44>>2]|0,c[(c[j>>2]|0)+44>>2]|0,(e[(c[l>>2]|0)+40>>1]|0)<<2|0)|0;l=c[j>>2]|0;if((c[(c[j>>2]|0)+36>>2]&1024|0)!=0){a[l+28>>0]=0}else{if((c[l+36>>2]&16384|0)!=0){c[(c[j>>2]|0)+28>>2]=0}}c[h>>2]=0;n=c[h>>2]|0;i=k;return n|0}function iC(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f;k=f+4|0;j=f+8|0;l=f+12|0;c[h>>2]=a;c[k>>2]=d;if((e[(c[h>>2]|0)+40>>1]|0)>=(e[(c[k>>2]|0)+40>>1]|0)){c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}if((b[(c[h>>2]|0)+20>>1]|0)>=(b[(c[k>>2]|0)+20>>1]|0)){if((b[(c[h>>2]|0)+20>>1]|0)>(b[(c[k>>2]|0)+20>>1]|0)){c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}if((b[(c[h>>2]|0)+22>>1]|0)>(b[(c[k>>2]|0)+22>>1]|0)){c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}}c[j>>2]=(e[(c[h>>2]|0)+40>>1]|0)-1;while(1){if((c[j>>2]|0)<0){d=17;break}c[l>>2]=(e[(c[k>>2]|0)+40>>1]|0)-1;while(1){if((c[l>>2]|0)<0){break}if((c[(c[(c[k>>2]|0)+44>>2]|0)+(c[l>>2]<<2)>>2]|0)==(c[(c[(c[h>>2]|0)+44>>2]|0)+(c[j>>2]<<2)>>2]|0)){break}c[l>>2]=(c[l>>2]|0)+ -1}if((c[l>>2]|0)<0){d=15;break}c[j>>2]=(c[j>>2]|0)+ -1}if((d|0)==15){c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}else if((d|0)==17){c[g>>2]=1;a=c[g>>2]|0;i=f;return a|0}return 0}function jC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e;l=e+4|0;j=e+8|0;k=e+12|0;h=e+16|0;c[g>>2]=a;c[l>>2]=b;c[j>>2]=d;c[k>>2]=0;c[h>>2]=c[(c[l>>2]|0)+20>>2];while(1){if((c[k>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0)){g=6;break}if((qC(c[c[h>>2]>>2]|0,c[j>>2]|0,c[g>>2]|0)|0)!=0){g=4;break}c[k>>2]=(c[k>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+48}if((g|0)==4){c[f>>2]=1;a=c[f>>2]|0;i=e;return a|0}else if((g|0)==6){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}return 0}function kC(a,f,g){a=a|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;h=j+28|0;q=j;m=j+4|0;k=j+8|0;o=j+12|0;p=j+16|0;l=j+20|0;n=j+24|0;c[q>>2]=a;c[m>>2]=f;c[k>>2]=g;if(((d[(c[m>>2]|0)+55>>0]|0)>>>2&1|0)!=0){c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}a=c[(c[c[q>>2]>>2]|0)+8>>2]|0;c[o>>2]=a;if((a|0)==0){c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}c[p>>2]=0;a:while(1){if((c[p>>2]|0)>=(c[c[o>>2]>>2]|0)){k=16;break}c[n>>2]=Pw(c[(c[(c[o>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;if((d[c[n>>2]>>0]|0)!=154){k=8;break}b:do{if((c[(c[n>>2]|0)+28>>2]|0)==(c[k>>2]|0)){c[l>>2]=0;while(1){if((c[l>>2]|0)>=(e[(c[m>>2]|0)+50>>1]|0)){break b}if((b[(c[n>>2]|0)+32>>1]|0)==(b[(c[(c[m>>2]|0)+4>>2]|0)+(c[l>>2]<<1)>>1]|0)){k=13;break a}c[l>>2]=(c[l>>2]|0)+1}}}while(0);c[p>>2]=(c[p>>2]|0)+1}if((k|0)==8){c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}else if((k|0)==13){c[h>>2]=1;a=c[h>>2]|0;i=j;return a|0}else if((k|0)==16){c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}return 0}function lC(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;k=g+28|0;h=g+16|0;m=g+8|0;l=g+12|0;n=g;o=g+20|0;j=g+24|0;c[k>>2]=d;c[h>>2]=f;q=c[h>>2]|0;p=(c[h>>2]|0)+8|0;f=~(c[q+4>>2]|c[p+4>>2]);d=n;c[d>>2]=~(c[q>>2]|c[p>>2]);c[d+4>>2]=f;if((b[(c[c[c[c[k>>2]>>2]>>2]>>2]|0)+60>>1]&4096|0)!=0){i=g;return}c[o>>2]=c[(c[k>>2]|0)+12>>2];c[m>>2]=c[(c[k>>2]|0)+20>>2];while(1){if((c[o>>2]|0)<=0){h=19;break}if((a[(c[m>>2]|0)+20>>0]&2|0)!=0){h=19;break}p=(c[m>>2]|0)+40|0;q=(c[h>>2]|0)+8|0;if(!((c[p>>2]&c[q>>2]|0)==0?(c[p+4>>2]&c[q+4>>2]|0)==0:0)){p=(c[m>>2]|0)+40|0;q=n;if(!((c[p>>2]&c[q>>2]|0)!=0?1:(c[p+4>>2]&c[q+4>>2]|0)!=0)){c[j>>2]=(e[(c[h>>2]|0)+40>>1]|0)-1;while(1){if((c[j>>2]|0)<0){break}c[l>>2]=c[(c[(c[h>>2]|0)+44>>2]|0)+(c[j>>2]<<2)>>2];if((c[l>>2]|0)!=0){if((c[l>>2]|0)==(c[m>>2]|0)){break}if((c[(c[l>>2]|0)+4>>2]|0)>=0){if(((c[(c[k>>2]|0)+20>>2]|0)+((c[(c[l>>2]|0)+4>>2]|0)*48|0)|0)==(c[m>>2]|0)){break}}}c[j>>2]=(c[j>>2]|0)+ -1}if((c[j>>2]|0)<0){if((b[(c[m>>2]|0)+16>>1]|0)<=0){f=b[(c[m>>2]|0)+16>>1]|0}else{f=-1}q=(c[h>>2]|0)+22|0;b[q>>1]=(b[q>>1]|0)+f}}}c[o>>2]=(c[o>>2]|0)+ -1;c[m>>2]=(c[m>>2]|0)+48}if((h|0)==19){i=g;return}}function mC(a){a=a|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+16|0;d=f;h=f+8|0;j=f+12|0;c[g>>2]=a;a=d;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=(e[(c[g>>2]|0)+52>>1]|0)-1;while(1){if((c[h>>2]|0)<0){break}c[j>>2]=b[(c[(c[g>>2]|0)+4>>2]|0)+(c[h>>2]<<1)>>1]|0;if((c[j>>2]|0)>=0&(c[j>>2]|0)<63){l=bL(1,0,c[j>>2]|0)|0;m=d;k=c[m+4>>2]|D;a=d;c[a>>2]=c[m>>2]|l;c[a+4>>2]=k}c[h>>2]=(c[h>>2]|0)+ -1}m=d;D=c[m+4>>2]|0;i=f;return c[m>>2]|0}function nC(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;B=i;i=i+224|0;y=B+16|0;k=B+188|0;z=B+176|0;x=B+164|0;A=B+192|0;O=B+168|0;H=B+180|0;l=B+172|0;n=B+184|0;u=B+12|0;N=B+8|0;C=B+24|0;m=B;s=B+210|0;o=B+208|0;p=B+202|0;q=B+20|0;r=B+206|0;D=B+136|0;t=B+140|0;G=B+204|0;J=B+144|0;I=B+148|0;M=B+196|0;v=B+198|0;F=B+200|0;E=B+194|0;w=B+152|0;L=B+156|0;K=B+160|0;c[k>>2]=f;c[z>>2]=g;c[x>>2]=h;b[A>>1]=j;c[O>>2]=c[c[k>>2]>>2];c[H>>2]=c[c[O>>2]>>2];c[l>>2]=c[c[H>>2]>>2];c[t>>2]=0;c[J>>2]=0;c[I>>2]=0;c[n>>2]=c[(c[k>>2]|0)+12>>2];if((a[(c[l>>2]|0)+64>>0]|0)!=0){c[y>>2]=7;O=c[y>>2]|0;i=B;return O|0}do{if((c[(c[n>>2]|0)+36>>2]&32|0)!=0){c[N>>2]=24}else{if((c[(c[x>>2]|0)+44>>2]|0)>0){if((a[(c[z>>2]|0)+36>>0]&8|0)==0){c[N>>2]=191;break}}c[N>>2]=63}}while(0);if(((d[(c[x>>2]|0)+55>>0]|0)>>>2&1|0)!=0){c[N>>2]=c[N>>2]&-61}if((e[(c[n>>2]|0)+24>>1]|0)<(e[(c[x>>2]|0)+50>>1]|0)){c[D>>2]=b[(c[(c[x>>2]|0)+4>>2]|0)+(e[(c[n>>2]|0)+24>>1]<<1)>>1]|0}else{c[D>>2]=-1}c[u>>2]=PB(C,c[(c[k>>2]|0)+4>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[D>>2]|0,c[N>>2]|0,c[x>>2]|0)|0;b[o>>1]=b[(c[n>>2]|0)+24>>1]|0;b[p>>1]=b[(c[n>>2]|0)+26>>1]|0;b[s>>1]=b[(c[n>>2]|0)+40>>1]|0;c[q>>2]=c[(c[n>>2]|0)+36>>2];g=c[n>>2]|0;f=c[g+4>>2]|0;O=m;c[O>>2]=c[g>>2];c[O+4>>2]=f;b[r>>1]=b[(c[n>>2]|0)+22>>1]|0;b[(c[n>>2]|0)+18>>1]=0;b[G>>1]=_B(b[c[(c[x>>2]|0)+8>>2]>>1]|0)|0;if((c[u>>2]|0)==0){if((e[o>>1]|0)==(e[p>>1]|0)){if(((e[o>>1]|0)+1|0)<(e[(c[x>>2]|0)+50>>1]|0)){if((b[(c[(c[x>>2]|0)+8>>2]|0)+((e[o>>1]|0)+1<<1)>>1]|0)>=42){O=UB(c[l>>2]|0,c[n>>2]|0,(e[(c[n>>2]|0)+40>>1]|0)+1|0)|0;c[t>>2]=O;if((O|0)==0){f=(c[n>>2]|0)+24|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;f=(c[n>>2]|0)+26|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;f=(c[n>>2]|0)+40|0;O=b[f>>1]|0;b[f>>1]=O+1<<16>>16;c[(c[(c[n>>2]|0)+44>>2]|0)+((O&65535)<<2)>>2]=0;O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|32768;b[M>>1]=(b[(c[(c[x>>2]|0)+8>>2]|0)+(e[o>>1]<<1)>>1]|0)-(b[(c[(c[x>>2]|0)+8>>2]|0)+((e[o>>1]|0)+1<<1)>>1]|0);O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)-(b[M>>1]|0);nC(c[k>>2]|0,c[z>>2]|0,c[x>>2]|0,(b[M>>1]|0)+(b[A>>1]|0)&65535)|0;b[(c[n>>2]|0)+22>>1]=b[r>>1]|0}}}}}while(1){if((c[t>>2]|0)!=0){break}if((c[u>>2]|0)==0){break}b[v>>1]=b[(c[u>>2]|0)+18>>1]|0;c[w>>2]=0;if((e[v>>1]|0)==128){j=24}else{if((a[(c[u>>2]|0)+20>>0]&0|0)!=0){j=24}else{j=26}}if((j|0)==24){j=0;if((c[D>>2]|0)>=0){if((d[(c[(c[(c[z>>2]|0)+16>>2]|0)+4>>2]|0)+((c[D>>2]|0)*24|0)+20>>0]|0)==0){j=26}}}if((j|0)==26){f=(c[u>>2]|0)+32|0;O=(c[n>>2]|0)+8|0;if(!((c[f>>2]&c[O>>2]|0)!=0?1:(c[f+4>>2]&c[O+4>>2]|0)!=0)){c[(c[n>>2]|0)+36>>2]=c[q>>2];b[(c[n>>2]|0)+24>>1]=b[o>>1]|0;b[(c[n>>2]|0)+40>>1]=b[s>>1]|0;if((UB(c[l>>2]|0,c[n>>2]|0,(e[(c[n>>2]|0)+40>>1]|0)+1|0)|0)!=0){break}h=c[u>>2]|0;g=(c[n>>2]|0)+40|0;N=b[g>>1]|0;b[g>>1]=N+1<<16>>16;c[(c[(c[n>>2]|0)+44>>2]|0)+((N&65535)<<2)>>2]=h;N=m;h=(c[u>>2]|0)+32|0;g=(c[n>>2]|0)+8|0;f=(c[N+4>>2]|c[h+4>>2])&~c[g+4>>2];O=c[n>>2]|0;c[O>>2]=(c[N>>2]|c[h>>2])&~c[g>>2];c[O+4>>2]=f;do{if((b[v>>1]&1|0)!=0){c[L>>2]=c[c[u>>2]>>2];O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|4;if((c[(c[L>>2]|0)+4>>2]&2048|0)!=0){c[w>>2]=46;break}if((c[(c[L>>2]|0)+20>>2]|0)!=0){if((c[c[(c[L>>2]|0)+20>>2]>>2]|0)!=0){O=c[c[(c[L>>2]|0)+20>>2]>>2]|0;c[w>>2]=(Kw(O,((O|0)<0)<<31>>31)|0)<<16>>16}}}else{if((b[v>>1]&2|0)!=0){O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|1;if((c[D>>2]|0)>=0){if((b[A>>1]|0)!=0){break}if((e[(c[n>>2]|0)+24>>1]|0)!=((e[(c[x>>2]|0)+50>>1]|0)-1|0)){break}}if((c[D>>2]|0)>=0){if((d[(c[x>>2]|0)+54>>0]|0)==0){O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|65536;break}}O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|4096;break}else{if((b[v>>1]&128|0)!=0){O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|8;break}j=(c[n>>2]|0)+36|0;M=c[j>>2]|0;if((b[v>>1]&36|0)!=0){c[j>>2]=M|34;c[I>>2]=c[u>>2];c[J>>2]=0;break}c[j>>2]=M|18;c[J>>2]=c[u>>2];if((c[(c[n>>2]|0)+36>>2]&32|0)!=0){j=c[(c[(c[n>>2]|0)+44>>2]|0)+((e[(c[n>>2]|0)+40>>1]|0)-2<<2)>>2]|0}else{j=0}c[I>>2]=j;break}}}while(0);do{if((c[(c[n>>2]|0)+36>>2]&2|0)!=0){oC(c[H>>2]|0,c[k>>2]|0,c[I>>2]|0,c[J>>2]|0,c[n>>2]|0)|0}else{f=(c[n>>2]|0)+24|0;O=(b[f>>1]|0)+1<<16>>16;b[f>>1]=O;c[K>>2]=O&65535;if((b[(c[u>>2]|0)+16>>1]|0)<=0){if((c[D>>2]|0)>=0){O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)+(b[(c[u>>2]|0)+16>>1]|0);O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)-(c[w>>2]|0);break}}O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)+((b[(c[(c[x>>2]|0)+8>>2]|0)+(c[K>>2]<<1)>>1]|0)-(b[(c[(c[x>>2]|0)+8>>2]|0)+((c[K>>2]|0)-1<<1)>>1]|0));if((b[v>>1]&128|0)!=0){O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)+10}}}while(0);b[F>>1]=(b[(c[n>>2]|0)+22>>1]|0)+1+(((b[(c[x>>2]|0)+48>>1]|0)*15|0)/(b[(c[(c[z>>2]|0)+16>>2]|0)+42>>1]|0)|0);O=YB(b[G>>1]|0,b[F>>1]|0)|0;b[(c[n>>2]|0)+20>>1]=O;if((c[(c[n>>2]|0)+36>>2]&320|0)==0){O=YB(b[(c[n>>2]|0)+20>>1]|0,(b[(c[n>>2]|0)+22>>1]|0)+16&65535)|0;b[(c[n>>2]|0)+20>>1]=O}b[E>>1]=b[(c[n>>2]|0)+22>>1]|0;O=(c[n>>2]|0)+20|0;b[O>>1]=(b[O>>1]|0)+((b[A>>1]|0)+(c[w>>2]|0));O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)+((b[A>>1]|0)+(c[w>>2]|0));lC(c[(c[k>>2]|0)+4>>2]|0,c[n>>2]|0);c[t>>2]=eC(c[k>>2]|0,c[n>>2]|0)|0;if((c[(c[n>>2]|0)+36>>2]&2|0)!=0){b[(c[n>>2]|0)+22>>1]=b[r>>1]|0}else{b[(c[n>>2]|0)+22>>1]=b[E>>1]|0}if((c[(c[n>>2]|0)+36>>2]&16|0)==0){if((e[(c[n>>2]|0)+24>>1]|0)<((e[(c[x>>2]|0)+50>>1]|0)+((c[c[x>>2]>>2]|0)!=0&1)|0)){nC(c[k>>2]|0,c[z>>2]|0,c[x>>2]|0,(b[A>>1]|0)+(c[w>>2]|0)&65535)|0}}b[(c[n>>2]|0)+22>>1]=b[r>>1]|0}}c[u>>2]=QB(C)|0}g=m;f=c[g+4>>2]|0;O=c[n>>2]|0;c[O>>2]=c[g>>2];c[O+4>>2]=f;b[(c[n>>2]|0)+24>>1]=b[o>>1]|0;b[(c[n>>2]|0)+26>>1]=b[p>>1]|0;c[(c[n>>2]|0)+36>>2]=c[q>>2];b[(c[n>>2]|0)+22>>1]=b[r>>1]|0;b[(c[n>>2]|0)+40>>1]=b[s>>1]|0;c[y>>2]=c[t>>2];O=c[y>>2]|0;i=B;return O|0}function oC(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;h=l+4|0;o=l+8|0;j=l+12|0;k=l+16|0;n=l+20|0;m=l+28|0;c[l+24>>2]=a;c[l>>2]=d;c[h>>2]=e;c[o>>2]=f;c[j>>2]=g;c[k>>2]=0;c[n>>2]=b[(c[j>>2]|0)+22>>1]|0;b[m>>1]=pC(c[h>>2]|0,c[n>>2]&65535)|0;b[m>>1]=pC(c[o>>2]|0,b[m>>1]|0)|0;if((c[h>>2]|0)!=0){if((c[o>>2]|0)!=0){b[m>>1]=(b[m>>1]|0)-20}}c[n>>2]=(c[n>>2]|0)-(((c[h>>2]|0)!=0&1)+((c[o>>2]|0)!=0&1));if((b[m>>1]|0)<10){b[m>>1]=10}if((b[m>>1]|0)>=(c[n>>2]|0)){d=c[n>>2]|0;d=d&65535;a=c[j>>2]|0;a=a+22|0;b[a>>1]=d;a=c[k>>2]|0;i=l;return a|0}c[n>>2]=b[m>>1]|0;d=c[n>>2]|0;d=d&65535;a=c[j>>2]|0;a=a+22|0;b[a>>1]=d;a=c[k>>2]|0;i=l;return a|0}function pC(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;g=i;i=i+16|0;h=g;j=g+6|0;f=g+4|0;c[h>>2]=d;b[j>>1]=e;b[f>>1]=b[j>>1]|0;do{if((c[h>>2]|0)!=0){e=c[h>>2]|0;if((b[(c[h>>2]|0)+16>>1]|0)<=0){b[f>>1]=(b[f>>1]|0)+(b[e+16>>1]|0);break}if((a[e+20>>0]&0|0)==0){b[f>>1]=(b[f>>1]|0)-20}}}while(0);i=g;return b[f>>1]|0}function qC(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f;j=f+4|0;k=f+8|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=e;if((jx(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0)==0){c[g>>2]=1;a=c[g>>2]|0;i=f;return a|0}do{if((d[c[j>>2]>>0]|0|0)==71){if((qC(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[k>>2]|0)|0)==0){if((qC(c[h>>2]|0,c[(c[j>>2]|0)+16>>2]|0,c[k>>2]|0)|0)==0){break}}c[g>>2]=1;a=c[g>>2]|0;i=f;return a|0}}while(0);if((d[c[j>>2]>>0]|0|0)==77){if((jx(c[(c[h>>2]|0)+12>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[k>>2]|0)|0)==0){if((d[c[h>>2]>>0]|0|0)!=76){if((d[c[h>>2]>>0]|0|0)!=73){c[g>>2]=1;a=c[g>>2]|0;i=f;return a|0}}}}c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}function rC(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var 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;n=i;i=i+80|0;l=n;m=n+64|0;v=n+60|0;u=n+56|0;t=n+52|0;C=n+48|0;o=n+44|0;r=n+40|0;w=n+36|0;q=n+68|0;x=n+24|0;z=n+20|0;p=n+16|0;y=n+12|0;k=n+8|0;A=n+4|0;B=n+28|0;s=n+72|0;D=n+32|0;c[v>>2]=f;c[u>>2]=g;c[t>>2]=h;c[C>>2]=j;c[w>>2]=0;c[o>>2]=0;c[p>>2]=c[(c[u>>2]|0)+20>>2];while(1){if((c[o>>2]|0)>=(c[(c[u>>2]|0)+12>>2]|0)){break}if((c[(c[p>>2]|0)+8>>2]|0)==(c[(c[t>>2]|0)+40>>2]|0)){if((e[(c[p>>2]|0)+18>>1]&-1153|0)!=0){if((a[(c[p>>2]|0)+20>>0]&0|0)==0){c[w>>2]=(c[w>>2]|0)+1}}}c[o>>2]=(c[o>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+48}c[y>>2]=0;if((c[C>>2]|0)!=0){c[A>>2]=c[c[C>>2]>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[A>>2]|0)){break}c[B>>2]=c[(c[(c[C>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0)>>2];if((d[c[B>>2]>>0]|0)!=154){break}if((c[(c[B>>2]|0)+28>>2]|0)!=(c[(c[t>>2]|0)+40>>2]|0)){break}c[o>>2]=(c[o>>2]|0)+1}if((c[o>>2]|0)==(c[A>>2]|0)){c[y>>2]=c[A>>2]}}c[k>>2]=ve(c[c[v>>2]>>2]|0,56+((c[w>>2]|0)*20|0)+(c[y>>2]<<3)|0)|0;if((c[k>>2]|0)==0){bf(c[v>>2]|0,9112,l);c[m>>2]=0;f=c[m>>2]|0;i=n;return f|0}c[q>>2]=(c[k>>2]|0)+56;c[x>>2]=(c[q>>2]|0)+((c[w>>2]|0)*12|0);c[z>>2]=(c[x>>2]|0)+(c[y>>2]<<3);c[c[k>>2]>>2]=c[w>>2];c[(c[k>>2]|0)+8>>2]=c[y>>2];c[(c[k>>2]|0)+4>>2]=c[q>>2];c[(c[k>>2]|0)+12>>2]=c[x>>2];c[(c[k>>2]|0)+16>>2]=c[z>>2];c[r>>2]=0;c[o>>2]=0;c[p>>2]=c[(c[u>>2]|0)+20>>2];while(1){if((c[o>>2]|0)>=(c[(c[u>>2]|0)+12>>2]|0)){break}if((c[(c[p>>2]|0)+8>>2]|0)==(c[(c[t>>2]|0)+40>>2]|0)){if((e[(c[p>>2]|0)+18>>1]&-1153|0)!=0){if((a[(c[p>>2]|0)+20>>0]&0|0)==0){c[(c[q>>2]|0)+((c[r>>2]|0)*12|0)>>2]=c[(c[p>>2]|0)+12>>2];c[(c[q>>2]|0)+((c[r>>2]|0)*12|0)+8>>2]=c[o>>2];f=b[(c[p>>2]|0)+18>>1]&255&255;a[s>>0]=f;a[s>>0]=(d[s>>0]|0)==1?2:f;a[(c[q>>2]|0)+((c[r>>2]|0)*12|0)+4>>0]=a[s>>0]|0;c[r>>2]=(c[r>>2]|0)+1}}}c[o>>2]=(c[o>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+48}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[y>>2]|0)){break}c[D>>2]=c[(c[(c[C>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0)>>2];c[(c[x>>2]|0)+(c[o>>2]<<3)>>2]=b[(c[D>>2]|0)+32>>1]|0;a[(c[x>>2]|0)+(c[o>>2]<<3)+4>>0]=a[(c[(c[C>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0)+12>>0]|0;c[o>>2]=(c[o>>2]|0)+1}c[m>>2]=c[k>>2];f=c[m>>2]|0;i=n;return f|0}function sC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;j=l;g=l+24|0;h=l+4|0;k=l+8|0;m=l+12|0;f=l+16|0;n=l+20|0;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[m>>2]=c[(ww(c[c[g>>2]>>2]|0,c[h>>2]|0)|0)+8>>2];c[n>>2]=zb[c[(c[c[m>>2]>>2]|0)+12>>2]&127](c[m>>2]|0,c[k>>2]|0)|0;do{if((c[n>>2]|0)!=0){if((c[n>>2]|0)==7){a[(c[c[g>>2]>>2]|0)+64>>0]=1;break}e=c[g>>2]|0;if((c[(c[m>>2]|0)+8>>2]|0)!=0){c[j>>2]=c[(c[m>>2]|0)+8>>2];bf(e,1768,j);break}else{c[j>>2]=ie(c[n>>2]|0)|0;bf(e,1768,j);break}}}while(0);oc(c[(c[m>>2]|0)+8>>2]|0);c[(c[m>>2]|0)+8>>2]=0;c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[k>>2]>>2]|0)){break}if((a[(c[(c[k>>2]|0)+4>>2]|0)+((c[f>>2]|0)*12|0)+5>>0]|0)==0){if((c[(c[(c[k>>2]|0)+16>>2]|0)+(c[f>>2]<<3)>>2]|0)>0){b=c[g>>2]|0;c[j>>2]=c[c[h>>2]>>2];bf(b,30576,j)}}c[f>>2]=(c[f>>2]|0)+1}i=l;return c[(c[g>>2]|0)+64>>2]|0}function tC(a){a=+a;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+32|0;e=d+18|0;f=d;g=d+8|0;j=d+16|0;h[f>>3]=a;if(+h[f>>3]<=1.0){b[e>>1]=0;j=b[e>>1]|0;i=d;return j|0}if(+h[f>>3]<=2.0e9){a=+h[f>>3];b[e>>1]=Kw(~~a>>>0,+O(a)>=1.0?a>0.0?(ea(+N(a/4294967296.0),4294967295.0)|0)>>>0:~~+_((a- +(~~a>>>0))/4294967296.0)>>>0:0)|0;j=b[e>>1]|0;i=d;return j|0}else{c[g+0>>2]=c[f+0>>2];c[g+4>>2]=c[f+4>>2];g=eL(c[g>>2]|0,c[g+4>>2]|0,52)|0;g=$K(g|0,D|0,1022,0)|0;b[j>>1]=g;b[e>>1]=(b[j>>1]|0)*10;j=b[e>>1]|0;i=d;return j|0}return 0}function uC(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+48|0;l=j+36|0;p=j+32|0;q=j+28|0;r=j+24|0;s=j+20|0;t=j+16|0;k=j+8|0;o=j+4|0;m=j;n=j+12|0;c[p>>2]=a;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;c[t>>2]=h;c[o>>2]=c[(c[(c[s>>2]|0)+32>>2]|0)+(c[t>>2]<<2)>>2];c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[c[q>>2]>>2]|0)){m=10;break}c[m>>2]=Pw(c[(c[(c[q>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)>>2]|0)|0;if((d[c[m>>2]>>0]|0)==154){if((b[(c[m>>2]|0)+32>>1]|0)==(b[(c[(c[s>>2]|0)+4>>2]|0)+(c[t>>2]<<1)>>1]|0)){if((c[(c[m>>2]|0)+28>>2]|0)==(c[r>>2]|0)){c[n>>2]=Jw(c[p>>2]|0,c[(c[(c[q>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)>>2]|0)|0;if((c[n>>2]|0)!=0){if(0==(Dc(c[c[n>>2]>>2]|0,c[o>>2]|0)|0)){m=8;break}}}}}c[k>>2]=(c[k>>2]|0)+1}if((m|0)==8){c[l>>2]=c[k>>2];a=c[l>>2]|0;i=j;return a|0}else if((m|0)==10){c[l>>2]=-1;a=c[l>>2]|0;i=j;return a|0}return 0}function vC(f,g,h){f=f|0;g=g|0;h=h|0;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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0;I=i;i=i+208|0;L=I+84|0;r=I+188|0;E=I+156|0;aa=I+136|0;z=I+140|0;V=I+144|0;n=I+148|0;u=I+32|0;w=I+24|0;v=I+40|0;o=I+152|0;p=I+160|0;q=I+164|0;O=I+168|0;m=I+172|0;G=I+176|0;$=I+16|0;s=I+180|0;H=I+184|0;y=I+192|0;t=I+132|0;l=I+128|0;x=I+194|0;C=I+88|0;Q=I+92|0;P=I+80|0;R=I+76|0;S=I+60|0;A=I+56|0;B=I+52|0;J=I+68|0;M=I+64|0;K=I+72|0;N=I+48|0;k=I+96|0;j=I+196|0;F=I+104|0;Y=I+108|0;T=I+112|0;U=I+116|0;_=I+120|0;X=I+8|0;W=I;Z=I+124|0;c[L>>2]=f;c[r>>2]=g;c[E>>2]=h;c[aa>>2]=c[c[r>>2]>>2];f=v;c[f>>2]=0;c[f+4>>2]=0;c[o>>2]=0;c[p>>2]=0;c[q>>2]=0;c[m>>2]=c[c[aa>>2]>>2];c[G>>2]=c[c[m>>2]>>2];if((a[(c[G>>2]|0)+64>>0]|0)!=0){i=I;return}c[z>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[E>>2]|0)*48|0);c[V>>2]=(c[aa>>2]|0)+68;c[n>>2]=c[c[z>>2]>>2];g=WB(c[V>>2]|0,c[(c[n>>2]|0)+12>>2]|0)|0;f=u;c[f>>2]=g;c[f+4>>2]=D;c[O>>2]=d[c[n>>2]>>0]|0;do{if((c[O>>2]|0)==75){aa=c[V>>2]|0;h=(c[n>>2]|0)+20|0;if((c[(c[n>>2]|0)+4>>2]&2048|0)!=0){g=XB(aa,c[h>>2]|0)|0;f=(c[z>>2]|0)+32|0;c[f>>2]=g;c[f+4>>2]=D;break}else{g=DB(aa,c[h>>2]|0)|0;f=(c[z>>2]|0)+32|0;c[f>>2]=g;c[f+4>>2]=D;break}}else{if((c[O>>2]|0)==76){f=(c[z>>2]|0)+32|0;c[f>>2]=0;c[f+4>>2]=0;break}else{g=WB(c[V>>2]|0,c[(c[n>>2]|0)+16>>2]|0)|0;f=(c[z>>2]|0)+32|0;c[f>>2]=g;c[f+4>>2]=D;break}}}while(0);g=WB(c[V>>2]|0,c[n>>2]|0)|0;f=w;c[f>>2]=g;c[f+4>>2]=D;if((c[(c[n>>2]|0)+4>>2]&1|0)!=0){h=EB(c[V>>2]|0,b[(c[n>>2]|0)+36>>1]|0)|0;aa=$;c[aa>>2]=h;c[aa+4>>2]=D;aa=$;h=w;f=c[h+4>>2]|c[aa+4>>2];g=w;c[g>>2]=c[h>>2]|c[aa>>2];c[g+4>>2]=f;g=$;g=$K(c[g>>2]|0,c[g+4>>2]|0,1,0)|0;f=v;c[f>>2]=g;c[f+4>>2]=D}g=w;$=c[g+4>>2]|0;f=(c[z>>2]|0)+40|0;c[f>>2]=c[g>>2];c[f+4>>2]=$;c[(c[z>>2]|0)+8>>2]=-1;c[(c[z>>2]|0)+4>>2]=-1;b[(c[z>>2]|0)+18>>1]=0;f=(wC(c[O>>2]|0)|0)!=0;$=c[n>>2]|0;do{if(f){c[s>>2]=Pw(c[$+12>>2]|0)|0;c[H>>2]=Pw(c[(c[n>>2]|0)+16>>2]|0)|0;g=(c[z>>2]|0)+32|0;f=u;b[y>>1]=((c[g>>2]&c[f>>2]|0)==0?(c[g+4>>2]&c[f+4>>2]|0)==0:0)?4095:1024;if((d[c[s>>2]>>0]|0)==154){c[(c[z>>2]|0)+8>>2]=c[(c[s>>2]|0)+28>>2];c[(c[z>>2]|0)+12>>2]=b[(c[s>>2]|0)+32>>1]|0;f=(xC(c[O>>2]|0)|0)&65535;b[(c[z>>2]|0)+18>>1]=f&e[y>>1]}if((c[H>>2]|0)!=0){if((d[c[H>>2]>>0]|0)==154){b[x>>1]=0;if((c[(c[z>>2]|0)+8>>2]|0)>=0){c[l>>2]=hx(c[G>>2]|0,c[n>>2]|0,0)|0;if((a[(c[G>>2]|0)+64>>0]|0)!=0){gu(c[G>>2]|0,c[l>>2]|0);i=I;return}c[C>>2]=yC(c[r>>2]|0,c[l>>2]|0,3)|0;if((c[C>>2]|0)==0){i=I;return}c[t>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[C>>2]|0)*48|0);c[(c[t>>2]|0)+4>>2]=c[E>>2];c[z>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[E>>2]|0)*48|0);a[(c[z>>2]|0)+21>>0]=1;f=(c[z>>2]|0)+20|0;a[f>>0]=d[f>>0]|8;if((d[c[n>>2]>>0]|0)==79){if((c[(c[n>>2]|0)+4>>2]&1|0)==0){if((b[(c[G>>2]|0)+60>>1]&512|0)==0){f=(c[z>>2]|0)+18|0;b[f>>1]=e[f>>1]|1024;b[x>>1]=1024}}}}else{c[l>>2]=c[n>>2];c[t>>2]=c[z>>2]}zC(c[m>>2]|0,c[l>>2]|0);c[s>>2]=Pw(c[(c[l>>2]|0)+12>>2]|0)|0;c[(c[t>>2]|0)+8>>2]=c[(c[s>>2]|0)+28>>2];c[(c[t>>2]|0)+12>>2]=b[(c[s>>2]|0)+32>>1]|0;h=u;f=v;g=c[h+4>>2]|c[f+4>>2];aa=(c[t>>2]|0)+32|0;c[aa>>2]=c[h>>2]|c[f>>2];c[aa+4>>2]=g;aa=w;g=c[aa+4>>2]|0;f=(c[t>>2]|0)+40|0;c[f>>2]=c[aa>>2];c[f+4>>2]=g;f=(xC(d[c[l>>2]>>0]|0)|0)&65535;b[(c[t>>2]|0)+18>>1]=f+(e[x>>1]|0)&e[y>>1]}}}else{if((d[$>>0]|0)==74){if((d[(c[r>>2]|0)+8>>0]|0)==72){c[Q>>2]=c[(c[n>>2]|0)+20>>2];c[P>>2]=0;while(1){if((c[P>>2]|0)>=2){break}aa=c[m>>2]|0;g=d[30624+(c[P>>2]|0)>>0]|0;f=hx(c[G>>2]|0,c[(c[n>>2]|0)+12>>2]|0,0)|0;c[R>>2]=Bu(aa,g,f,hx(c[G>>2]|0,c[(c[(c[Q>>2]|0)+4>>2]|0)+((c[P>>2]|0)*20|0)>>2]|0,0)|0,0)|0;AC(c[R>>2]|0,c[n>>2]|0);c[S>>2]=yC(c[r>>2]|0,c[R>>2]|0,3)|0;vC(c[L>>2]|0,c[r>>2]|0,c[S>>2]|0);c[z>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[E>>2]|0)*48|0);c[(c[(c[r>>2]|0)+20>>2]|0)+((c[S>>2]|0)*48|0)+4>>2]=c[E>>2];c[P>>2]=(c[P>>2]|0)+1}a[(c[z>>2]|0)+21>>0]=2;break}}if((d[c[n>>2]>>0]|0)==71){BC(c[L>>2]|0,c[r>>2]|0,c[E>>2]|0);c[z>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[E>>2]|0)*48|0)}}}while(0);if((d[(c[r>>2]|0)+8>>0]|0)==72){if((CC(c[m>>2]|0,c[n>>2]|0,o,p,q)|0)!=0){c[A>>2]=c[(c[(c[(c[n>>2]|0)+20>>2]|0)+4>>2]|0)+20>>2];c[B>>2]=hx(c[G>>2]|0,c[o>>2]|0,0)|0;if((a[(c[G>>2]|0)+64>>0]|0)==0){f=(Ub(c[(c[B>>2]|0)+8>>2]|0)|0)-1|0;c[F>>2]=(c[(c[B>>2]|0)+8>>2]|0)+f;a[j>>0]=a[c[F>>2]>>0]|0;if((c[q>>2]|0)!=0){if((d[j>>0]|0)==64){c[p>>2]=0}a[j>>0]=a[784+(d[j>>0]|0)>>0]|0}a[c[F>>2]>>0]=(d[j>>0]|0)+1}c[k>>2]=(c[q>>2]|0)!=0?3656:3640;c[k+4>>2]=6;c[J>>2]=hx(c[G>>2]|0,c[A>>2]|0,0)|0;f=c[m>>2]|0;g=dv(c[m>>2]|0,c[J>>2]|0,k)|0;c[J>>2]=Bu(f,83,g,c[o>>2]|0,0)|0;AC(c[J>>2]|0,c[n>>2]|0);c[K>>2]=yC(c[r>>2]|0,c[J>>2]|0,3)|0;vC(c[L>>2]|0,c[r>>2]|0,c[K>>2]|0);c[M>>2]=hx(c[G>>2]|0,c[A>>2]|0,0)|0;g=c[m>>2]|0;f=dv(c[m>>2]|0,c[M>>2]|0,k)|0;c[M>>2]=Bu(g,82,f,c[B>>2]|0,0)|0;AC(c[M>>2]|0,c[n>>2]|0);c[N>>2]=yC(c[r>>2]|0,c[M>>2]|0,3)|0;vC(c[L>>2]|0,c[r>>2]|0,c[N>>2]|0);c[z>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[E>>2]|0)*48|0);if((c[p>>2]|0)!=0){c[(c[(c[r>>2]|0)+20>>2]|0)+((c[K>>2]|0)*48|0)+4>>2]=c[E>>2];c[(c[(c[r>>2]|0)+20>>2]|0)+((c[N>>2]|0)*48|0)+4>>2]=c[E>>2];a[(c[z>>2]|0)+21>>0]=2}}}if((DC(c[n>>2]|0)|0)!=0){c[T>>2]=c[c[(c[(c[n>>2]|0)+20>>2]|0)+4>>2]>>2];c[U>>2]=c[(c[(c[(c[n>>2]|0)+20>>2]|0)+4>>2]|0)+20>>2];g=WB(c[V>>2]|0,c[T>>2]|0)|0;f=W;c[f>>2]=g;c[f+4>>2]=D;f=WB(c[V>>2]|0,c[U>>2]|0)|0;g=X;c[g>>2]=f;c[g+4>>2]=D;g=W;f=X;if((c[g>>2]&c[f>>2]|0)==0?(c[g+4>>2]&c[f+4>>2]|0)==0:0){f=c[m>>2]|0;c[Z>>2]=Bu(f,51,0,hx(c[G>>2]|0,c[T>>2]|0,0)|0,0)|0;c[Y>>2]=yC(c[r>>2]|0,c[Z>>2]|0,3)|0;c[_>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[Y>>2]|0)*48|0);f=W;g=c[f+4>>2]|0;aa=(c[_>>2]|0)+32|0;c[aa>>2]=c[f>>2];c[aa+4>>2]=g;c[(c[_>>2]|0)+8>>2]=c[(c[U>>2]|0)+28>>2];c[(c[_>>2]|0)+12>>2]=b[(c[U>>2]|0)+32>>1]|0;b[(c[_>>2]|0)+18>>1]=64;c[(c[_>>2]|0)+4>>2]=c[E>>2];c[z>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[E>>2]|0)*48|0);a[(c[z>>2]|0)+21>>0]=1;aa=(c[z>>2]|0)+20|0;a[aa>>0]=d[aa>>0]|8;aa=(c[z>>2]|0)+40|0;g=c[aa+4>>2]|0;f=(c[_>>2]|0)+40|0;c[f>>2]=c[aa>>2];c[f+4>>2]=g}}aa=v;f=(c[z>>2]|0)+32|0;h=f;g=c[h+4>>2]|c[aa+4>>2];c[f>>2]=c[h>>2]|c[aa>>2];c[f+4>>2]=g;i=I;return}function wC(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==75){a=1}else{if((c[d>>2]|0)>=79&(c[d>>2]|0)<=83){a=1}else{a=(c[d>>2]|0)==76}}i=b;return a&1|0}function xC(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d;e=d+4|0;c[f>>2]=a;do{if((c[f>>2]|0)==75){b[e>>1]=1}else{if((c[f>>2]|0)==76){b[e>>1]=128;break}else{b[e>>1]=2<<(c[f>>2]|0)-79;break}}}while(0);i=d;return b[e>>1]|0}function yC(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+32|0;g=o+24|0;l=o;n=o+4|0;k=o+28|0;j=o+12|0;m=o+16|0;q=o+20|0;p=o+8|0;c[l>>2]=d;c[n>>2]=e;a[k>>0]=f;do{if((c[(c[l>>2]|0)+12>>2]|0)>=(c[(c[l>>2]|0)+16>>2]|0)){c[q>>2]=c[(c[l>>2]|0)+20>>2];c[p>>2]=c[c[c[c[l>>2]>>2]>>2]>>2];d=$e(c[p>>2]|0,(c[(c[l>>2]|0)+16>>2]|0)*48<<1)|0;c[(c[l>>2]|0)+20>>2]=d;if((c[(c[l>>2]|0)+20>>2]|0)!=0){fL(c[(c[l>>2]|0)+20>>2]|0,c[q>>2]|0,(c[(c[l>>2]|0)+12>>2]|0)*48|0)|0;if((c[q>>2]|0)!=((c[l>>2]|0)+24|0)){cc(c[p>>2]|0,c[q>>2]|0)}d=((Vv(c[p>>2]|0,c[(c[l>>2]|0)+20>>2]|0)|0)>>>0)/48|0;c[(c[l>>2]|0)+16>>2]=d;break}if((a[k>>0]&1|0)!=0){gu(c[p>>2]|0,c[n>>2]|0)}c[(c[l>>2]|0)+20>>2]=c[q>>2];c[g>>2]=0;d=c[g>>2]|0;i=o;return d|0}}while(0);e=(c[l>>2]|0)+12|0;d=c[e>>2]|0;c[e>>2]=d+1;c[m>>2]=d;c[j>>2]=(c[(c[l>>2]|0)+20>>2]|0)+(d*48|0);if((c[n>>2]|0)!=0){if((c[(c[n>>2]|0)+4>>2]&262144|0)!=0){d=c[(c[n>>2]|0)+28>>2]|0;d=((Kw(d,((d|0)<0)<<31>>31)|0)<<16>>16)-99&65535;b[(c[j>>2]|0)+16>>1]=d}else{h=12}}else{h=12}if((h|0)==12){b[(c[j>>2]|0)+16>>1]=1}d=Pw(c[n>>2]|0)|0;c[c[j>>2]>>2]=d;a[(c[j>>2]|0)+20>>0]=a[k>>0]|0;c[(c[j>>2]|0)+24>>2]=c[l>>2];c[(c[j>>2]|0)+4>>2]=-1;c[g>>2]=c[m>>2];d=c[g>>2]|0;i=o;return d|0}function zC(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+16|0;l=h+8|0;j=h;m=h+14|0;n=h+12|0;k=h+4|0;c[l>>2]=f;c[j>>2]=g;b[m>>1]=c[(c[(c[j>>2]|0)+16>>2]|0)+4>>2]&256;b[n>>1]=c[(c[(c[j>>2]|0)+12>>2]|0)+4>>2]&256;do{if((e[m>>1]|0)==(e[n>>1]|0)){if((b[m>>1]|0)!=0){n=(c[(c[j>>2]|0)+16>>2]|0)+4|0;c[n>>2]=c[n>>2]&-257;break}if((Jw(c[l>>2]|0,c[(c[j>>2]|0)+12>>2]|0)|0)!=0){n=(c[(c[j>>2]|0)+12>>2]|0)+4|0;c[n>>2]=c[n>>2]|256}}}while(0);c[k>>2]=c[(c[j>>2]|0)+16>>2];c[(c[j>>2]|0)+16>>2]=c[(c[j>>2]|0)+12>>2];c[(c[j>>2]|0)+12>>2]=c[k>>2];if((d[c[j>>2]>>0]|0)<80){i=h;return}a[c[j>>2]>>0]=((d[c[j>>2]>>0]|0)-80^2)+80;i=h;return}function AC(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=d;if((c[f>>2]|0)==0){i=e;return}a=(c[f>>2]|0)+4|0;c[a>>2]=c[a>>2]|c[(c[g>>2]|0)+4>>2]&1;b[(c[f>>2]|0)+36>>1]=b[(c[g>>2]|0)+36>>1]|0;i=e;return}function BC(e,f,g){e=e|0;f=f|0;g=g|0;var h=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;B=i;i=i+144|0;p=B+140|0;n=B+136|0;q=B+132|0;x=B+128|0;v=B+124|0;s=B+120|0;r=B+116|0;l=B+112|0;y=B+108|0;z=B+104|0;w=B+100|0;O=B+96|0;h=B+24|0;J=B;I=B+92|0;L=B+88|0;M=B+32|0;K=B+44|0;N=B+8|0;P=B+16|0;Q=B+36|0;A=B+40|0;F=B+48|0;C=B+52|0;E=B+56|0;H=B+60|0;G=B+64|0;u=B+68|0;m=B+72|0;t=B+76|0;k=B+80|0;o=B+84|0;c[p>>2]=e;c[n>>2]=f;c[q>>2]=g;c[x>>2]=c[c[n>>2]>>2];c[v>>2]=c[c[x>>2]>>2];c[s>>2]=c[c[v>>2]>>2];c[r>>2]=(c[(c[n>>2]|0)+20>>2]|0)+((c[q>>2]|0)*48|0);c[l>>2]=c[c[r>>2]>>2];e=ve(c[s>>2]|0,416)|0;c[O>>2]=e;c[(c[r>>2]|0)+12>>2]=e;if((c[O>>2]|0)==0){i=B;return}e=(c[r>>2]|0)+20|0;a[e>>0]=d[e>>0]|16;c[z>>2]=c[O>>2];vB(c[z>>2]|0,c[x>>2]|0);wB(c[z>>2]|0,c[l>>2]|0,71);yB(c[p>>2]|0,c[z>>2]|0);if((a[(c[s>>2]|0)+64>>0]|0)!=0){i=B;return}e=J;c[e>>2]=-1;c[e+4>>2]=-1;e=h;c[e>>2]=-1;c[e+4>>2]=-1;c[y>>2]=(c[(c[z>>2]|0)+12>>2]|0)-1;c[w>>2]=c[(c[z>>2]|0)+20>>2];while(1){if((c[y>>2]|0)<0){break}e=J;if(!((c[e>>2]|0)!=0|(c[e+4>>2]|0)!=0)){break}do{if((b[(c[w>>2]|0)+18>>1]&255|0)==0){e=h;c[e>>2]=0;c[e+4>>2]=0;c[I>>2]=$e(c[s>>2]|0,408)|0;if((c[I>>2]|0)!=0){e=N;c[e>>2]=0;c[e+4>>2]=0;c[(c[w>>2]|0)+12>>2]=c[I>>2];e=(c[w>>2]|0)+20|0;a[e>>0]=d[e>>0]|32;b[(c[w>>2]|0)+18>>1]=512;c[L>>2]=c[I>>2];vB(c[L>>2]|0,c[c[n>>2]>>2]|0);wB(c[L>>2]|0,c[c[w>>2]>>2]|0,72);yB(c[p>>2]|0,c[L>>2]|0);c[(c[L>>2]|0)+4>>2]=c[n>>2];a:do{if((a[(c[s>>2]|0)+64>>0]|0)==0){c[K>>2]=0;c[M>>2]=c[(c[L>>2]|0)+20>>2];while(1){if((c[K>>2]|0)>=(c[(c[L>>2]|0)+12>>2]|0)){break a}if((wC(d[c[c[M>>2]>>2]>>0]|0)|0)!=0){g=EB((c[x>>2]|0)+68|0,c[(c[M>>2]|0)+8>>2]|0)|0;R=N;f=c[R+4>>2]|D;e=N;c[e>>2]=c[R>>2]|g;c[e+4>>2]=f}c[K>>2]=(c[K>>2]|0)+1;c[M>>2]=(c[M>>2]|0)+48}}}while(0);f=N;g=J;e=c[g+4>>2]&c[f+4>>2];R=J;c[R>>2]=c[g>>2]&c[f>>2];c[R+4>>2]=e}}else{if((a[(c[w>>2]|0)+20>>0]&8|0)==0){e=EB((c[x>>2]|0)+68|0,c[(c[w>>2]|0)+8>>2]|0)|0;R=P;c[R>>2]=e;c[R+4>>2]=D;if((a[(c[w>>2]|0)+20>>0]&2|0)!=0){c[Q>>2]=(c[(c[z>>2]|0)+20>>2]|0)+((c[(c[w>>2]|0)+4>>2]|0)*48|0);f=EB((c[x>>2]|0)+68|0,c[(c[Q>>2]|0)+8>>2]|0)|0;g=P;e=c[g+4>>2]|D;R=P;c[R>>2]=c[g>>2]|f;c[R+4>>2]=e}f=P;g=J;e=c[g+4>>2]&c[f+4>>2];R=J;c[R>>2]=c[g>>2]&c[f>>2];c[R+4>>2]=e;if((b[(c[w>>2]|0)+18>>1]&2|0)==0){R=h;c[R>>2]=0;c[R+4>>2]=0;break}else{f=P;g=h;e=c[g+4>>2]&c[f+4>>2];R=h;c[R>>2]=c[g>>2]&c[f>>2];c[R+4>>2]=e;break}}}}while(0);c[y>>2]=(c[y>>2]|0)+ -1;c[w>>2]=(c[w>>2]|0)+48}f=J;e=c[f+4>>2]|0;R=(c[O>>2]|0)+408|0;c[R>>2]=c[f>>2];c[R+4>>2]=e;R=J;b[(c[r>>2]|0)+18>>1]=(c[R>>2]|0)==0&(c[R+4>>2]|0)==0?0:256;R=h;if(!((c[R>>2]|0)!=0|(c[R+4>>2]|0)!=0)){i=B;return}c[A>>2]=0;c[F>>2]=-1;c[C>>2]=-1;c[E>>2]=0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=2){break}if(!((c[A>>2]|0)!=0^1)){break}c[w>>2]=c[(c[z>>2]|0)+20>>2];c[y>>2]=(c[(c[z>>2]|0)+12>>2]|0)-1;while(1){if((c[y>>2]|0)<0){break}R=(c[w>>2]|0)+20|0;a[R>>0]=d[R>>0]&-65;if((c[(c[w>>2]|0)+8>>2]|0)!=(c[C>>2]|0)){R=h;f=c[R>>2]|0;R=c[R+4>>2]|0;e=EB((c[x>>2]|0)+68|0,c[(c[w>>2]|0)+8>>2]|0)|0;if(!((f&e|0)==0&(R&D|0)==0)){j=30;break}}c[y>>2]=(c[y>>2]|0)+ -1;c[w>>2]=(c[w>>2]|0)+48}if((j|0)==30){j=0;c[F>>2]=c[(c[w>>2]|0)+12>>2];c[C>>2]=c[(c[w>>2]|0)+8>>2]}if((c[y>>2]|0)<0){break}c[A>>2]=1;while(1){if((c[y>>2]|0)<0){break}if((c[A>>2]|0)==0){break}I=c[w>>2]|0;do{if((c[(c[w>>2]|0)+8>>2]|0)!=(c[C>>2]|0)){R=I+20|0;a[R>>0]=d[R>>0]&-65}else{if((c[I+12>>2]|0)!=(c[F>>2]|0)){c[A>>2]=0;break}c[G>>2]=(Iw(c[(c[c[w>>2]>>2]|0)+16>>2]|0)|0)<<24>>24;c[H>>2]=(Iw(c[(c[c[w>>2]>>2]|0)+12>>2]|0)|0)<<24>>24;if((c[G>>2]|0)!=0){if((c[G>>2]|0)!=(c[H>>2]|0)){c[A>>2]=0;break}}R=(c[w>>2]|0)+20|0;a[R>>0]=d[R>>0]|64}}while(0);c[y>>2]=(c[y>>2]|0)+ -1;c[w>>2]=(c[w>>2]|0)+48}c[E>>2]=(c[E>>2]|0)+1}if((c[A>>2]|0)==0){i=B;return}c[m>>2]=0;c[t>>2]=0;c[y>>2]=(c[(c[z>>2]|0)+12>>2]|0)-1;c[w>>2]=c[(c[z>>2]|0)+20>>2];while(1){if((c[y>>2]|0)<0){break}if((a[(c[w>>2]|0)+20>>0]&64|0)!=0){c[u>>2]=hx(c[s>>2]|0,c[(c[c[w>>2]>>2]|0)+16>>2]|0,0)|0;c[m>>2]=Pu(c[c[x>>2]>>2]|0,c[m>>2]|0,c[u>>2]|0)|0;c[t>>2]=c[(c[c[w>>2]>>2]|0)+12>>2]}c[y>>2]=(c[y>>2]|0)+ -1;c[w>>2]=(c[w>>2]|0)+48}c[u>>2]=hx(c[s>>2]|0,c[t>>2]|0,0)|0;c[k>>2]=Bu(c[v>>2]|0,75,c[u>>2]|0,0,0)|0;if((c[k>>2]|0)!=0){AC(c[k>>2]|0,c[l>>2]|0);c[(c[k>>2]|0)+20>>2]=c[m>>2];c[o>>2]=yC(c[n>>2]|0,c[k>>2]|0,3)|0;vC(c[p>>2]|0,c[n>>2]|0,c[o>>2]|0);c[r>>2]=(c[(c[n>>2]|0)+20>>2]|0)+((c[q>>2]|0)*48|0);c[(c[(c[n>>2]|0)+20>>2]|0)+((c[o>>2]|0)*48|0)+4>>2]=c[q>>2];a[(c[r>>2]|0)+21>>0]=1}else{cu(c[s>>2]|0,c[m>>2]|0)}b[(c[r>>2]|0)+18>>1]=2048;i=B;return}function CC(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;u=i;i=i+96|0;s=u+60|0;w=u+48|0;E=u+52|0;n=u+56|0;q=u+64|0;F=u+68|0;k=u+72|0;t=u+76|0;D=u+44|0;C=u+40|0;z=u+36|0;p=u+12|0;y=u+80|0;r=u;v=u+4|0;o=u+8|0;B=u+16|0;A=u+20|0;m=u+24|0;l=u+28|0;x=u+32|0;c[w>>2]=e;c[E>>2]=f;c[n>>2]=g;c[q>>2]=h;c[F>>2]=j;c[k>>2]=0;c[r>>2]=c[c[w>>2]>>2];c[v>>2]=0;if((EC(c[r>>2]|0,c[E>>2]|0,c[F>>2]|0,y)|0)==0){c[s>>2]=0;F=c[s>>2]|0;i=u;return F|0}c[C>>2]=c[(c[E>>2]|0)+20>>2];c[D>>2]=c[(c[(c[C>>2]|0)+4>>2]|0)+20>>2];if((d[c[D>>2]>>0]|0)==154){if(((Iw(c[D>>2]|0)|0)<<24>>24|0)==97){if((a[(c[(c[D>>2]|0)+44>>2]|0)+44>>0]&16|0)==0){c[t>>2]=Pw(c[c[(c[C>>2]|0)+4>>2]>>2]|0)|0;c[o>>2]=d[c[t>>2]>>0]|0;if((c[o>>2]|0)==135){c[B>>2]=c[(c[w>>2]|0)+476>>2];c[A>>2]=b[(c[t>>2]|0)+32>>1]|0;c[v>>2]=FC(c[B>>2]|0,c[A>>2]|0,98)|0;if((c[v>>2]|0)!=0){if((Sd(c[v>>2]|0)|0)==3){c[k>>2]=Jd(c[v>>2]|0)|0}}GC(c[(c[w>>2]|0)+8>>2]|0,c[A>>2]|0)}else{if((c[o>>2]|0)==97){c[k>>2]=c[(c[t>>2]|0)+8>>2]}}do{if((c[k>>2]|0)!=0){c[p>>2]=0;while(1){F=a[(c[k>>2]|0)+(c[p>>2]|0)>>0]|0;c[z>>2]=F;if((F|0)!=0){if((c[z>>2]|0)!=(a[y>>0]|0)){if((c[z>>2]|0)!=(a[y+1>>0]|0)){B=(c[z>>2]|0)!=(a[y+2>>0]|0)}else{B=0}}else{B=0}}else{B=0}A=c[p>>2]|0;if(!B){break}c[p>>2]=A+1}if((A|0)!=0){if(255!=(d[(c[k>>2]|0)+((c[p>>2]|0)-1)>>0]|0)){if((c[z>>2]|0)==(a[y>>0]|0)){y=(a[(c[k>>2]|0)+((c[p>>2]|0)+1)>>0]|0)==0}else{y=0}c[c[q>>2]>>2]=y&1;c[m>>2]=Su(c[r>>2]|0,97,c[k>>2]|0)|0;if((c[m>>2]|0)!=0){a[(c[(c[m>>2]|0)+8>>2]|0)+(c[p>>2]|0)>>0]=0}c[c[n>>2]>>2]=c[m>>2];if((c[o>>2]|0)!=135){break}c[l>>2]=c[(c[w>>2]|0)+8>>2];GC(c[l>>2]|0,b[(c[t>>2]|0)+32>>1]|0);if((c[c[q>>2]>>2]|0)==0){break}if((a[(c[(c[t>>2]|0)+8>>2]|0)+1>>0]|0)==0){break}c[x>>2]=Wv(c[w>>2]|0)|0;wz(c[w>>2]|0,c[t>>2]|0,c[x>>2]|0)|0;F=c[l>>2]|0;mf(F,(sy(c[l>>2]|0)|0)-1|0,0);Xv(c[w>>2]|0,c[x>>2]|0);break}}c[k>>2]=0}}while(0);Rf(c[v>>2]|0);c[s>>2]=(c[k>>2]|0)!=0&1;F=c[s>>2]|0;i=u;return F|0}}}c[s>>2]=0;F=c[s>>2]|0;i=u;return F|0}function DC(a){a=a|0;var b=0,e=0,f=0,g=0;b=i;i=i+16|0;e=b+8|0;g=b;f=b+4|0;c[g>>2]=a;do{if((d[c[g>>2]>>0]|0|0)!=153){c[e>>2]=0}else{if((Dc(c[(c[g>>2]|0)+8>>2]|0,27976)|0)!=0){c[e>>2]=0;break}c[f>>2]=c[(c[g>>2]|0)+20>>2];if((c[c[f>>2]>>2]|0)!=2){c[e>>2]=0;break}if((d[c[(c[(c[f>>2]|0)+4>>2]|0)+20>>2]>>0]|0|0)!=154){c[e>>2]=0;break}else{c[e>>2]=1;break}}}while(0);i=b;return c[e>>2]|0}function EC(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;m=j+20|0;o=j;p=j+4|0;l=j+8|0;n=j+12|0;k=j+16|0;c[o>>2]=e;c[p>>2]=f;c[l>>2]=g;c[n>>2]=h;if((d[c[p>>2]>>0]|0|0)==153){if((c[(c[p>>2]|0)+20>>2]|0)!=0){if((c[c[(c[p>>2]|0)+20>>2]>>2]|0)==2){f=c[o>>2]|0;e=c[(c[p>>2]|0)+8>>2]|0;c[k>>2]=rg(f,e,Ub(c[(c[p>>2]|0)+8>>2]|0)|0,2,1,0)|0;if((c[k>>2]|0)!=0){if((b[(c[k>>2]|0)+2>>1]&4|0)!=0){e=c[n>>2]|0;f=c[(c[k>>2]|0)+4>>2]|0;a[e+0>>0]=a[f+0>>0]|0;a[e+1>>0]=a[f+1>>0]|0;a[e+2>>0]=a[f+2>>0]|0;c[c[l>>2]>>2]=(b[(c[k>>2]|0)+2>>1]&8|0)==0&1;c[m>>2]=1;e=c[m>>2]|0;i=j;return e|0}}c[m>>2]=0;e=c[m>>2]|0;i=j;return e|0}}}c[m>>2]=0;e=c[m>>2]|0;i=j;return e|0}function FC(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+32|0;h=j+16|0;m=j;n=j+4|0;l=j+20|0;k=j+12|0;g=j+8|0;c[m>>2]=d;c[n>>2]=e;a[l>>0]=f;if((c[m>>2]|0)!=0){c[k>>2]=(c[(c[m>>2]|0)+60>>2]|0)+(((c[n>>2]|0)-1|0)*40|0);if(0==(b[(c[k>>2]|0)+28>>1]&1|0)){c[g>>2]=Pf(c[c[m>>2]>>2]|0)|0;if((c[g>>2]|0)!=0){ee(c[g>>2]|0,c[k>>2]|0)|0;mw(c[g>>2]|0,a[l>>0]|0,1)}c[h>>2]=c[g>>2];d=c[h>>2]|0;i=j;return d|0}}c[h>>2]=0;d=c[h>>2]|0;i=j;return d|0}function GC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)>32){c[(c[e>>2]|0)+188>>2]=-1;i=d;return}else{a=(c[e>>2]|0)+188|0;c[a>>2]=c[a>>2]|1<<(c[f>>2]|0)-1;i=d;return}}function HC(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l;k=l+24|0;h=l+8|0;m=l+12|0;g=l+16|0;j=l+20|0;c[k>>2]=a;c[h>>2]=d;c[m>>2]=e;e=c[c[k>>2]>>2]|0;d=c[c[m>>2]>>2]|0;if((b[(c[m>>2]|0)+36>>1]|0)>=0){m=c[(c[(c[m>>2]|0)+4>>2]|0)+((b[(c[m>>2]|0)+36>>1]|0)*24|0)>>2]|0;c[f>>2]=d;c[f+4>>2]=m;c[g>>2]=cf(e,23968,f)|0;c[j>>2]=1555;m=c[k>>2]|0;e=c[j>>2]|0;d=c[h>>2]|0;a=c[g>>2]|0;_y(m,e,d,a,-1,2);i=l;return}else{c[f>>2]=d;c[g>>2]=cf(e,30888,f)|0;c[j>>2]=2579;m=c[k>>2]|0;e=c[j>>2]|0;d=c[h>>2]|0;a=c[g>>2]|0;_y(m,e,d,a,-1,2);i=l;return}}function IC(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+20|0;n=f;j=f+4|0;l=f+8|0;m=f+12|0;k=f+16|0;c[n>>2]=a;c[j>>2]=b;c[l>>2]=d;c[m>>2]=e;a:do{if((c[(c[c[n>>2]>>2]|0)+24>>2]&524288|0)!=0){e=c[j>>2]|0;if((c[l>>2]|0)==0){if((zw(e)|0)!=0){h=1}else{h=(c[(c[j>>2]|0)+16>>2]|0)!=0}c[g>>2]=h&1;n=c[g>>2]|0;i=f;return n|0}c[k>>2]=c[e+16>>2];while(1){e=c[j>>2]|0;if((c[k>>2]|0)==0){break}if((fB(e,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)!=0){h=9;break}c[k>>2]=c[(c[k>>2]|0)+4>>2]}if((h|0)==9){c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}c[k>>2]=zw(e)|0;while(1){if((c[k>>2]|0)==0){break a}if((hB(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)!=0){break}c[k>>2]=c[(c[k>>2]|0)+12>>2]}c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}}while(0);c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}function JC(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;b=c[f>>2]|0;if((c[(c[f>>2]|0)+408>>2]|0)!=0){b=c[b+408>>2]|0}c[e>>2]=b;a[(c[e>>2]|0)+20>>0]=1;i=d;return}function KC(e,f,g,h,j,k,l,m,n,o){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;x=i;i=i+64|0;D=x+24|0;r=x+32|0;t=x+28|0;y=x+44|0;z=x+40|0;C=x+36|0;p=x+48|0;A=x+53|0;u=x+51|0;H=x+52|0;w=x+16|0;s=x+12|0;v=x+8|0;B=x+50|0;F=x+4|0;G=x;E=x+20|0;c[D>>2]=e;c[r>>2]=f;c[t>>2]=g;c[y>>2]=h;c[z>>2]=j;c[C>>2]=k;b[p>>1]=l;a[A>>0]=m;a[u>>0]=n;a[H>>0]=o;c[w>>2]=c[(c[D>>2]|0)+8>>2];c[s>>2]=0;c[v>>2]=cz(c[w>>2]|0)|0;a[B>>0]=(a[(c[r>>2]|0)+44>>0]&32|0)==0?67:65;if((a[H>>0]|0)==0){ff(c[w>>2]|0,d[B>>0]|0,c[y>>2]|0,c[v>>2]|0,c[C>>2]|0,b[p>>1]|0)|0}if((IC(c[D>>2]|0,c[r>>2]|0,0,0)|0)!=0){q=5}else{if((c[t>>2]|0)!=0){q=5}}if((q|0)==5){c[F>>2]=MC(c[D>>2]|0,c[t>>2]|0,0,0,3,c[r>>2]|0,d[u>>0]|0)|0;H=NC(c[D>>2]|0,c[r>>2]|0)|0;c[F>>2]=c[F>>2]|H;c[s>>2]=(c[(c[D>>2]|0)+72>>2]|0)+1;H=(c[D>>2]|0)+72|0;c[H>>2]=(c[H>>2]|0)+(1+(b[(c[r>>2]|0)+38>>1]|0));Qv(c[w>>2]|0,33,c[C>>2]|0,c[s>>2]|0)|0;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(b[(c[r>>2]|0)+38>>1]|0)){break}if((c[F>>2]|0)==-1){q=10}else{if((c[G>>2]|0)<=31){if((c[F>>2]&1<>2]|0)!=0){q=10}}}if((q|0)==10){q=0;gz(c[w>>2]|0,c[r>>2]|0,c[y>>2]|0,c[G>>2]|0,(c[s>>2]|0)+(c[G>>2]|0)+1|0)}c[G>>2]=(c[G>>2]|0)+1}c[E>>2]=sy(c[w>>2]|0)|0;ZA(c[D>>2]|0,c[t>>2]|0,109,0,1,c[r>>2]|0,c[s>>2]|0,d[u>>0]|0,c[v>>2]|0);H=c[E>>2]|0;if((H|0)<(sy(c[w>>2]|0)|0)){ff(c[w>>2]|0,d[B>>0]|0,c[y>>2]|0,c[v>>2]|0,c[C>>2]|0,b[p>>1]|0)|0}cB(c[D>>2]|0,c[r>>2]|0,c[s>>2]|0,0,0,0)}if((c[(c[r>>2]|0)+12>>2]|0)!=0){g=c[D>>2]|0;h=c[r>>2]|0;j=c[s>>2]|0;OC(g,h,0,j,0,0);j=c[D>>2]|0;h=c[t>>2]|0;g=c[r>>2]|0;f=c[s>>2]|0;H=a[u>>0]|0;H=H&255;e=c[v>>2]|0;ZA(j,h,109,0,2,g,f,H,e);e=c[w>>2]|0;H=c[v>>2]|0;$y(e,H);i=x;return}LC(c[D>>2]|0,c[r>>2]|0,c[y>>2]|0,c[z>>2]|0,0);Qv(c[w>>2]|0,74,c[y>>2]|0,(d[A>>0]|0)!=0?1:0)|0;if((a[A>>0]|0)==0){g=c[D>>2]|0;h=c[r>>2]|0;j=c[s>>2]|0;OC(g,h,0,j,0,0);j=c[D>>2]|0;h=c[t>>2]|0;g=c[r>>2]|0;f=c[s>>2]|0;H=a[u>>0]|0;H=H&255;e=c[v>>2]|0;ZA(j,h,109,0,2,g,f,H,e);e=c[w>>2]|0;H=c[v>>2]|0;$y(e,H);i=x;return}nf(c[w>>2]|0,-1,c[c[r>>2]>>2]|0,0);g=c[D>>2]|0;h=c[r>>2]|0;j=c[s>>2]|0;OC(g,h,0,j,0,0);j=c[D>>2]|0;h=c[t>>2]|0;g=c[r>>2]|0;f=c[s>>2]|0;H=a[u>>0]|0;H=H&255;e=c[v>>2]|0;ZA(j,h,109,0,2,g,f,H,e);e=c[w>>2]|0;H=c[v>>2]|0;$y(e,H);i=x;return}function LC(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;v=i;i=i+48|0;s=v+44|0;x=v+40|0;k=v+36|0;q=v+32|0;m=v+28|0;n=v+24|0;r=v+20|0;t=v+12|0;o=v+8|0;u=v+4|0;p=v;w=v+16|0;c[s>>2]=e;c[x>>2]=f;c[k>>2]=g;c[q>>2]=h;c[m>>2]=j;c[r>>2]=-1;c[u>>2]=0;c[p>>2]=c[(c[s>>2]|0)+8>>2];if((a[(c[x>>2]|0)+44>>0]&32|0)==0){j=0}else{j=Dy(c[x>>2]|0)|0}c[w>>2]=j;c[n>>2]=0;c[o>>2]=c[(c[x>>2]|0)+8>>2];while(1){if((c[o>>2]|0)==0){break}if((c[m>>2]|0)!=0){if((c[(c[m>>2]|0)+(c[n>>2]<<2)>>2]|0)!=0){l=7}}else{l=7}if((l|0)==7){l=0;if((c[o>>2]|0)!=(c[w>>2]|0)){c[r>>2]=Wy(c[s>>2]|0,c[o>>2]|0,c[k>>2]|0,0,1,t,c[u>>2]|0,c[r>>2]|0)|0;x=c[o>>2]|0;if(((d[(c[o>>2]|0)+55>>0]|0)>>>3&1|0)!=0){x=b[x+50>>1]|0}else{x=b[x+52>>1]|0}Tv(c[p>>2]|0,108,(c[q>>2]|0)+(c[n>>2]|0)|0,c[r>>2]|0,x&65535)|0;Xy(c[s>>2]|0,c[t>>2]|0);c[u>>2]=c[o>>2]}}c[n>>2]=(c[n>>2]|0)+1;c[o>>2]=c[(c[o>>2]|0)+20>>2]}i=v;return}function MC(a,b,e,f,g,h,j){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;s=i;i=i+48|0;o=s+40|0;v=s+36|0;k=s+32|0;n=s+28|0;t=s+24|0;q=s+20|0;r=s+12|0;u=s+8|0;l=s+4|0;p=s;m=s+16|0;c[o>>2]=a;c[v>>2]=b;c[k>>2]=e;c[n>>2]=f;c[t>>2]=g;c[q>>2]=h;c[r>>2]=j;c[u>>2]=(c[k>>2]|0)!=0?110:109;c[l>>2]=0;c[p>>2]=c[v>>2];while(1){if((c[p>>2]|0)==0){break}if((d[(c[p>>2]|0)+8>>0]|0|0)==(c[u>>2]|0)){if((c[t>>2]&(d[(c[p>>2]|0)+9>>0]|0)|0)!=0){if((GD(c[(c[p>>2]|0)+16>>2]|0,c[k>>2]|0)|0)!=0){c[m>>2]=RC(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;if((c[m>>2]|0)!=0){c[l>>2]=c[l>>2]|c[(c[m>>2]|0)+16+(c[n>>2]<<2)>>2]}}}}c[p>>2]=c[(c[p>>2]|0)+32>>2]}i=s;return c[l>>2]|0}function NC(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;j=k+20|0;f=k;g=k+4|0;l=k+8|0;m=k+12|0;h=k+16|0;c[j>>2]=a;c[f>>2]=d;c[g>>2]=0;if((c[(c[c[j>>2]>>2]|0)+24>>2]&524288|0)==0){a=c[g>>2]|0;i=k;return a|0}c[l>>2]=c[(c[f>>2]|0)+16>>2];while(1){if((c[l>>2]|0)==0){break}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[l>>2]|0)+20>>2]|0)){break}if((c[(c[l>>2]|0)+36+(c[m>>2]<<3)>>2]|0)>31){d=-1}else{d=1<>2]|0)+36+(c[m>>2]<<3)>>2]}c[g>>2]=c[g>>2]|d;c[m>>2]=(c[m>>2]|0)+1}c[l>>2]=c[(c[l>>2]|0)+4>>2]}c[l>>2]=zw(c[f>>2]|0)|0;while(1){if((c[l>>2]|0)==0){break}c[h>>2]=0;FA(c[j>>2]|0,c[f>>2]|0,c[l>>2]|0,h,0)|0;a:do{if((c[h>>2]|0)!=0){c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[(c[h>>2]|0)+50>>1]|0)){break a}if((b[(c[(c[h>>2]|0)+4>>2]|0)+(c[m>>2]<<1)>>1]|0)>31){d=-1}else{d=1<>2]|0)+4>>2]|0)+(c[m>>2]<<1)>>1]}c[g>>2]=c[g>>2]|d;c[m>>2]=(c[m>>2]|0)+1}}}while(0);c[l>>2]=c[(c[l>>2]|0)+12>>2]}a=c[g>>2]|0;i=k;return a|0}function OC(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+32|0;o=q+28|0;k=q;r=q+4|0;h=q+8|0;m=q+12|0;n=q+16|0;l=q+20|0;p=q+24|0;c[o>>2]=a;c[k>>2]=b;c[r>>2]=d;c[h>>2]=e;c[m>>2]=f;c[n>>2]=g;if((c[(c[c[o>>2]>>2]|0)+24>>2]&524288|0)==0){i=q;return}c[l>>2]=zw(c[k>>2]|0)|0;while(1){if((c[l>>2]|0)==0){break}if((c[m>>2]|0)==0){j=6}else{if((hB(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0)!=0){j=6}}if((j|0)==6){j=0;c[p>>2]=PC(c[o>>2]|0,c[k>>2]|0,c[l>>2]|0,c[r>>2]|0)|0;if((c[p>>2]|0)!=0){QC(c[o>>2]|0,c[p>>2]|0,c[k>>2]|0,c[h>>2]|0,2,0)}}c[l>>2]=c[(c[l>>2]|0)+12>>2]}i=q;return}function PC(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;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,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;l=i;i=i+160|0;p=l+120|0;v=l+108|0;q=l+112|0;j=l+116|0;r=l+124|0;D=l+128|0;C=l+132|0;n=l+136|0;m=l+140|0;B=l+144|0;x=l+104|0;w=l+100|0;L=l+96|0;E=l+92|0;o=l+88|0;y=l+84|0;H=l+32|0;u=l;M=l+4|0;t=l+8|0;F=l+16|0;s=l+24|0;K=l+40|0;G=l+48|0;J=l+56|0;I=l+60|0;N=l+64|0;O=l+68|0;A=l+72|0;z=l+80|0;c[v>>2]=e;c[q>>2]=f;c[j>>2]=g;c[r>>2]=h;c[D>>2]=c[c[v>>2]>>2];c[m>>2]=(c[r>>2]|0)!=0&1;c[C>>2]=d[(c[j>>2]|0)+25+(c[m>>2]|0)>>0]|0;c[n>>2]=c[(c[j>>2]|0)+28+(c[m>>2]<<2)>>2];if((c[C>>2]|0)!=0){if((c[n>>2]|0)==0){c[L>>2]=0;c[E>>2]=0;c[o>>2]=0;c[y>>2]=0;c[H>>2]=0;c[u>>2]=0;c[t>>2]=0;if((FA(c[v>>2]|0,c[q>>2]|0,c[j>>2]|0,L,E)|0)!=0){c[p>>2]=0;e=c[p>>2]|0;i=l;return e|0}c[M>>2]=0;while(1){if((c[M>>2]|0)>=(c[(c[j>>2]|0)+20>>2]|0)){break}c[F+0>>2]=c[30832>>2];c[F+4>>2]=c[30836>>2];c[s+0>>2]=c[30840>>2];c[s+4>>2]=c[30844>>2];if((c[E>>2]|0)!=0){h=c[(c[E>>2]|0)+(c[M>>2]<<2)>>2]|0}else{h=c[(c[j>>2]|0)+36>>2]|0}c[J>>2]=h;if((c[L>>2]|0)!=0){h=c[(c[(c[q>>2]|0)+4>>2]|0)+((b[(c[(c[L>>2]|0)+4>>2]|0)+(c[M>>2]<<1)>>1]|0)*24|0)>>2]|0}else{h=30848}c[G>>2]=h;c[K>>2]=c[(c[(c[c[j>>2]>>2]|0)+4>>2]|0)+((c[J>>2]|0)*24|0)>>2];c[G+4>>2]=Ub(c[G>>2]|0)|0;c[K+4>>2]=Ub(c[K>>2]|0)|0;f=c[v>>2]|0;g=c[v>>2]|0;e=Bu(c[v>>2]|0,27,0,0,F)|0;e=Bu(g,122,e,Bu(c[v>>2]|0,27,0,0,G)|0,0)|0;c[I>>2]=Bu(f,79,e,Bu(c[v>>2]|0,27,0,0,K)|0,0)|0;c[y>>2]=Ux(c[D>>2]|0,c[y>>2]|0,c[I>>2]|0)|0;if((c[r>>2]|0)!=0){h=c[v>>2]|0;f=c[v>>2]|0;g=Bu(c[v>>2]|0,27,0,0,F)|0;g=Bu(f,122,g,Bu(c[v>>2]|0,27,0,0,G)|0,0)|0;f=c[v>>2]|0;e=Bu(c[v>>2]|0,27,0,0,s)|0;c[I>>2]=Bu(h,73,g,Bu(f,122,e,Bu(c[v>>2]|0,27,0,0,G)|0,0)|0,0)|0;c[t>>2]=Ux(c[D>>2]|0,c[t>>2]|0,c[I>>2]|0)|0}do{if((c[C>>2]|0)!=6){if((c[C>>2]|0)==9){if((c[r>>2]|0)==0){break}}do{if((c[C>>2]|0)==9){f=c[v>>2]|0;e=Bu(c[v>>2]|0,27,0,0,s)|0;c[N>>2]=Bu(f,122,e,Bu(c[v>>2]|0,27,0,0,G)|0,0)|0}else{if((c[C>>2]|0)!=8){c[N>>2]=Bu(c[v>>2]|0,101,0,0,0)|0;break}c[O>>2]=c[(c[(c[c[j>>2]>>2]|0)+4>>2]|0)+((c[J>>2]|0)*24|0)+4>>2];if((c[O>>2]|0)!=0){c[N>>2]=hx(c[D>>2]|0,c[O>>2]|0,0)|0;break}else{c[N>>2]=Bu(c[v>>2]|0,101,0,0,0)|0;break}}}while(0);c[H>>2]=Pu(c[v>>2]|0,c[H>>2]|0,c[N>>2]|0)|0;Qu(c[v>>2]|0,c[H>>2]|0,K,0)}}while(0);c[M>>2]=(c[M>>2]|0)+1}cc(c[D>>2]|0,c[E>>2]|0);c[x>>2]=c[c[c[j>>2]>>2]>>2];c[w>>2]=Ub(c[x>>2]|0)|0;if((c[C>>2]|0)==6){c[A>>2]=c[x>>2];c[A+4>>2]=c[w>>2];c[z>>2]=Su(c[D>>2]|0,57,30856)|0;if((c[z>>2]|0)!=0){a[(c[z>>2]|0)+1>>0]=2}g=c[v>>2]|0;f=Pu(c[v>>2]|0,0,c[z>>2]|0)|0;e=Vu(c[D>>2]|0,0,A,0)|0;c[u>>2]=Ou(g,f,e,c[y>>2]|0,0,0,0,0,0,0)|0;c[y>>2]=0}a[B>>0]=a[(c[D>>2]|0)+242>>0]|0;a[(c[D>>2]|0)+242>>0]=0;c[n>>2]=ve(c[D>>2]|0,77+(c[w>>2]|0)|0)|0;if((c[n>>2]|0)!=0){e=(c[n>>2]|0)+36|0;c[(c[n>>2]|0)+28>>2]=e;c[o>>2]=e;c[(c[o>>2]|0)+12>>2]=(c[o>>2]|0)+40;c[(c[o>>2]|0)+16>>2]=c[w>>2];fL(c[(c[o>>2]|0)+12>>2]|0,c[x>>2]|0,c[w>>2]|0)|0;e=hx(c[D>>2]|0,c[y>>2]|0,1)|0;c[(c[o>>2]|0)+20>>2]=e;e=px(c[D>>2]|0,c[H>>2]|0,1)|0;c[(c[o>>2]|0)+24>>2]=e;e=Bw(c[D>>2]|0,c[u>>2]|0,1)|0;c[(c[o>>2]|0)+8>>2]=e;if((c[t>>2]|0)!=0){c[t>>2]=Bu(c[v>>2]|0,19,c[t>>2]|0,0,0)|0;e=hx(c[D>>2]|0,c[t>>2]|0,1)|0;c[(c[n>>2]|0)+12>>2]=e}}a[(c[D>>2]|0)+242>>0]=a[B>>0]|0;gu(c[D>>2]|0,c[y>>2]|0);gu(c[D>>2]|0,c[t>>2]|0);cu(c[D>>2]|0,c[H>>2]|0);du(c[D>>2]|0,c[u>>2]|0);if((d[(c[D>>2]|0)+64>>0]|0)==1){FD(c[D>>2]|0,c[n>>2]|0);c[p>>2]=0;e=c[p>>2]|0;i=l;return e|0}s=c[C>>2]|0;if((s|0)==6){a[c[o>>2]>>0]=119}else if((s|0)==9){if((c[r>>2]|0)!=0){k=39}else{a[c[o>>2]>>0]=109}}else{k=39}if((k|0)==39){a[c[o>>2]>>0]=110}c[(c[o>>2]|0)+4>>2]=c[n>>2];c[(c[n>>2]|0)+20>>2]=c[(c[q>>2]|0)+68>>2];c[(c[n>>2]|0)+24>>2]=c[(c[q>>2]|0)+68>>2];c[(c[j>>2]|0)+28+(c[m>>2]<<2)>>2]=c[n>>2];a[(c[n>>2]|0)+8>>0]=(c[r>>2]|0)!=0?110:109}}c[p>>2]=c[n>>2];e=c[p>>2]|0;i=l;return e|0}function QC(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=i;i=i+48|0;n=o+32|0;p=o+28|0;r=o+24|0;l=o+20|0;q=o+16|0;m=o+8|0;k=o+4|0;h=o;j=o+12|0;c[n>>2]=a;c[p>>2]=b;c[r>>2]=d;c[l>>2]=e;c[q>>2]=f;c[m>>2]=g;c[k>>2]=Ov(c[n>>2]|0)|0;c[h>>2]=RC(c[n>>2]|0,c[p>>2]|0,c[r>>2]|0,c[q>>2]|0)|0;if((c[h>>2]|0)==0){i=o;return}if((c[c[p>>2]>>2]|0)!=0){g=0==(c[(c[c[n>>2]>>2]|0)+24>>2]&262144|0)}else{g=0}c[j>>2]=g&1;b=c[k>>2]|0;a=c[l>>2]|0;q=c[m>>2]|0;d=(c[n>>2]|0)+72|0;r=(c[d>>2]|0)+1|0;c[d>>2]=r;Tv(b,128,a,q,r)|0;nf(c[k>>2]|0,-1,c[(c[h>>2]|0)+8>>2]|0,-18);gf(c[k>>2]|0,c[j>>2]&255);i=o;return}function RC(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+20|0;j=g;k=g+4|0;f=g+8|0;m=g+12|0;l=g+16|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[f>>2]=e;e=c[h>>2]|0;if((c[(c[h>>2]|0)+408>>2]|0)!=0){e=c[e+408>>2]|0}c[m>>2]=e;c[l>>2]=c[(c[m>>2]|0)+528>>2];while(1){if((c[l>>2]|0)==0){break}if((c[c[l>>2]>>2]|0)==(c[j>>2]|0)){if((c[(c[l>>2]|0)+12>>2]|0)==(c[f>>2]|0)){break}}c[l>>2]=c[(c[l>>2]|0)+4>>2]}if((c[l>>2]|0)!=0){a=c[l>>2]|0;i=g;return a|0}c[l>>2]=SC(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[f>>2]|0)|0;a=c[l>>2]|0;i=g;return a|0}function SC(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;q=i;i=i+96|0;j=q;s=q+80|0;w=q+76|0;l=q+72|0;u=q+68|0;p=q+64|0;v=q+60|0;k=q+84|0;t=q+48|0;m=q+44|0;r=q+40|0;n=q+8|0;x=q+4|0;o=q+52|0;h=q+56|0;c[w>>2]=b;c[l>>2]=e;c[u>>2]=f;c[p>>2]=g;g=c[w>>2]|0;if((c[(c[w>>2]|0)+408>>2]|0)!=0){g=c[g+408>>2]|0}c[v>>2]=g;c[k>>2]=c[c[w>>2]>>2];c[m>>2]=0;c[x>>2]=0;c[h>>2]=0;c[t>>2]=ve(c[k>>2]|0,24)|0;if((c[t>>2]|0)==0){c[s>>2]=0;b=c[s>>2]|0;i=q;return b|0}c[(c[t>>2]|0)+4>>2]=c[(c[v>>2]|0)+528>>2];c[(c[v>>2]|0)+528>>2]=c[t>>2];b=ve(c[k>>2]|0,28)|0;c[x>>2]=b;c[(c[t>>2]|0)+8>>2]=b;if((c[x>>2]|0)==0){c[s>>2]=0;b=c[s>>2]|0;i=q;return b|0}TC(c[(c[v>>2]|0)+8>>2]|0,c[x>>2]|0);c[c[t>>2]>>2]=c[l>>2];c[(c[t>>2]|0)+12>>2]=c[p>>2];c[(c[t>>2]|0)+16>>2]=-1;c[(c[t>>2]|0)+20>>2]=-1;c[o>>2]=ve(c[k>>2]|0,536)|0;if((c[o>>2]|0)==0){c[s>>2]=0;b=c[s>>2]|0;i=q;return b|0}c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[n+16>>2]=0;c[n+20>>2]=0;c[n+24>>2]=0;c[n+28>>2]=0;c[n>>2]=c[o>>2];c[c[o>>2]>>2]=c[k>>2];c[(c[o>>2]|0)+412>>2]=c[u>>2];c[(c[o>>2]|0)+408>>2]=c[v>>2];c[(c[o>>2]|0)+492>>2]=c[c[l>>2]>>2];a[(c[o>>2]|0)+436>>0]=a[(c[l>>2]|0)+8>>0]|0;c[(c[o>>2]|0)+424>>2]=c[(c[w>>2]|0)+424>>2];c[r>>2]=Ov(c[o>>2]|0)|0;if((c[r>>2]|0)!=0){e=c[r>>2]|0;b=c[k>>2]|0;c[j>>2]=c[c[l>>2]>>2];nf(e,-1,cf(b,30632,j)|0,-1);if((c[(c[l>>2]|0)+12>>2]|0)!=0){c[m>>2]=hx(c[k>>2]|0,c[(c[l>>2]|0)+12>>2]|0,0)|0;if(0==(bx(n,c[m>>2]|0)|0)){if((d[(c[k>>2]|0)+64>>0]|0|0)==0){c[h>>2]=cz(c[r>>2]|0)|0;ez(c[o>>2]|0,c[m>>2]|0,c[h>>2]|0,8)}}gu(c[k>>2]|0,c[m>>2]|0)}UC(c[o>>2]|0,c[(c[l>>2]|0)+28>>2]|0,c[p>>2]|0)|0;if((c[h>>2]|0)!=0){$y(c[r>>2]|0,c[h>>2]|0)}Yv(c[r>>2]|0,24)|0;VC(c[w>>2]|0,c[o>>2]|0);if((d[(c[k>>2]|0)+64>>0]|0|0)==0){b=WC(c[r>>2]|0,(c[x>>2]|0)+4|0,(c[v>>2]|0)+392|0)|0;c[c[x>>2]>>2]=b}c[(c[x>>2]|0)+8>>2]=c[(c[o>>2]|0)+72>>2];c[(c[x>>2]|0)+12>>2]=c[(c[o>>2]|0)+68>>2];c[(c[x>>2]|0)+16>>2]=c[(c[o>>2]|0)+80>>2];c[(c[x>>2]|0)+20>>2]=c[l>>2];c[(c[t>>2]|0)+16>>2]=c[(c[o>>2]|0)+428>>2];c[(c[t>>2]|0)+20>>2]=c[(c[o>>2]|0)+432>>2];au(c[r>>2]|0)}rf(c[o>>2]|0);cc(c[k>>2]|0,c[o>>2]|0);c[s>>2]=c[t>>2];b=c[s>>2]|0;i=q;return b|0}function TC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[f>>2]|0)+24>>2]=c[(c[e>>2]|0)+192>>2];c[(c[e>>2]|0)+192>>2]=c[f>>2];i=d;return}function UC(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;k=m+44|0;p=m;o=m+4|0;j=m+8|0;h=m+12|0;l=m+16|0;n=m+20|0;g=m+40|0;c[k>>2]=b;c[p>>2]=e;c[o>>2]=f;c[h>>2]=c[(c[k>>2]|0)+8>>2];c[l>>2]=c[c[k>>2]>>2];c[j>>2]=c[p>>2];while(1){if((c[j>>2]|0)==0){break}if((c[o>>2]|0)==10){f=a[(c[j>>2]|0)+1>>0]|0}else{f=c[o>>2]&255}a[(c[k>>2]|0)+437>>0]=f&255;f=d[c[j>>2]>>0]|0;if((f|0)==109){b=c[k>>2]|0;p=ED(c[k>>2]|0,c[j>>2]|0)|0;Yu(b,p,hx(c[l>>2]|0,c[(c[j>>2]|0)+20>>2]|0,0)|0)}else if((f|0)==108){f=c[k>>2]|0;e=ED(c[k>>2]|0,c[j>>2]|0)|0;b=Bw(c[l>>2]|0,c[(c[j>>2]|0)+8>>2]|0,0)|0;p=ey(c[l>>2]|0,c[(c[j>>2]|0)+28>>2]|0)|0;$u(f,e,b,p,d[(c[k>>2]|0)+437>>0]|0)}else if((f|0)==110){f=c[k>>2]|0;e=ED(c[k>>2]|0,c[j>>2]|0)|0;b=px(c[l>>2]|0,c[(c[j>>2]|0)+24>>2]|0,0)|0;p=hx(c[l>>2]|0,c[(c[j>>2]|0)+20>>2]|0,0)|0;_u(f,e,b,p,d[(c[k>>2]|0)+437>>0]|0)}else{c[g>>2]=Bw(c[l>>2]|0,c[(c[j>>2]|0)+8>>2]|0,0)|0;Hz(n,4,0);Mu(c[k>>2]|0,c[g>>2]|0,n)|0;du(c[l>>2]|0,c[g>>2]|0)}if((d[c[j>>2]>>0]|0|0)!=119){Yv(c[h>>2]|0,75)|0}c[j>>2]=c[(c[j>>2]|0)+32>>2]}i=m;return 0}function VC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=c[f>>2]|0;if((c[(c[e>>2]|0)+64>>2]|0)==0){c[(c[e>>2]|0)+4>>2]=c[b+4>>2];c[(c[e>>2]|0)+64>>2]=c[(c[f>>2]|0)+64>>2];i=d;return}else{cc(c[b>>2]|0,c[(c[f>>2]|0)+4>>2]|0);i=d;return}}function WC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;h=f;j=f+4|0;e=f+8|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[e>>2]=c[(c[g>>2]|0)+4>>2];XC(c[g>>2]|0,c[j>>2]|0);c[c[h>>2]>>2]=c[(c[g>>2]|0)+32>>2];c[(c[g>>2]|0)+4>>2]=0;i=f;return c[e>>2]|0}function XC(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=i;i=i+48|0;n=m+28|0;l=m+24|0;r=m+20|0;k=m+16|0;o=m+12|0;j=m+4|0;g=m;q=m+32|0;p=m+8|0;c[n>>2]=e;c[l>>2]=f;c[k>>2]=c[c[l>>2]>>2];c[j>>2]=c[(c[n>>2]|0)+24>>2];c[g>>2]=c[(c[j>>2]|0)+112>>2];e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-257|256;e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-513;c[o>>2]=c[(c[n>>2]|0)+4>>2];c[r>>2]=(c[(c[n>>2]|0)+32>>2]|0)-1;while(1){if((c[r>>2]|0)<0){break}a[q>>0]=a[c[o>>2]>>0]|0;switch(d[q>>0]|0|0){case 12:case 13:case 11:{e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-257;e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-513|512;break};case 10:case 1:{if((d[(c[o>>2]|0)+3>>0]|0|0)>(c[k>>2]|0)){c[k>>2]=d[(c[o>>2]|0)+3>>0]|0}break};case 4:{if((c[(c[o>>2]|0)+8>>2]|0)!=0){h=(c[n>>2]|0)+88|0;b[h>>1]=b[h>>1]&-257;h=8}else{h=8}break};case 15:{if((c[(c[o>>2]|0)+8>>2]|0)>(c[k>>2]|0)){c[k>>2]=c[(c[o>>2]|0)+8>>2]}break};case 14:{c[p>>2]=c[(c[o>>2]|0)+ -20+4>>2];if((c[p>>2]|0)>(c[k>>2]|0)){c[k>>2]=c[p>>2]}break};case 5:case 7:case 9:{c[(c[o>>2]|0)+16>>2]=64;a[(c[o>>2]|0)+1>>0]=-19;break};case 2:case 3:{h=8;break};case 6:case 8:{c[(c[o>>2]|0)+16>>2]=65;a[(c[o>>2]|0)+1>>0]=-19;break};default:{}}if((h|0)==8){h=0;e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-513|512}a[(c[o>>2]|0)+2>>0]=a[30648+(d[q>>0]|0)>>0]|0;if((a[(c[o>>2]|0)+2>>0]&1|0)!=0){if((c[(c[o>>2]|0)+8>>2]|0)<0){c[(c[o>>2]|0)+8>>2]=c[(c[g>>2]|0)+(-1-(c[(c[o>>2]|0)+8>>2]|0)<<2)>>2]}}c[r>>2]=(c[r>>2]|0)+ -1;c[o>>2]=(c[o>>2]|0)+20}cc(c[c[n>>2]>>2]|0,c[(c[j>>2]|0)+112>>2]|0);c[(c[j>>2]|0)+112>>2]=0;c[(c[j>>2]|0)+108>>2]=0;c[c[l>>2]>>2]=c[k>>2];i=m;return}function YC(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+32|0;l=m+20|0;h=m;n=m+4|0;k=m+8|0;p=m+12|0;o=m+16|0;c[h>>2]=f;c[n>>2]=g;if((d[(c[h>>2]|0)+81>>0]|0)!=1){f=(c[h>>2]|0)+80|0;a[f>>0]=d[f>>0]&-5;if((d[(c[h>>2]|0)+81>>0]|0)>=3){g=_C(c[h>>2]|0)|0}else{g=0}c[k>>2]=g;if((c[k>>2]|0)!=0){c[c[n>>2]>>2]=0;c[l>>2]=c[k>>2];f=c[l>>2]|0;i=m;return f|0}if(0==(d[(c[h>>2]|0)+81>>0]|0)){c[c[n>>2]>>2]=1;c[l>>2]=0;f=c[l>>2]|0;i=m;return f|0}if((c[(c[h>>2]|0)+76>>2]|0)!=0){a[(c[h>>2]|0)+81>>0]=1;f=(c[(c[h>>2]|0)+76>>2]|0)>0;c[(c[h>>2]|0)+76>>2]=0;if(f){c[c[n>>2]>>2]=0;c[l>>2]=0;f=c[l>>2]|0;i=m;return f|0}}}c[o>>2]=c[(c[h>>2]|0)+128+(b[(c[h>>2]|0)+84>>1]<<2)>>2];g=(c[h>>2]|0)+86+(b[(c[h>>2]|0)+84>>1]<<1)|0;f=(b[g>>1]|0)+1<<16>>16;b[g>>1]=f;c[p>>2]=f&65535;b[(c[h>>2]|0)+50>>1]=0;f=(c[h>>2]|0)+80|0;a[f>>0]=d[f>>0]&-7;if((c[p>>2]|0)<(e[(c[o>>2]|0)+16>>1]|0)){c[c[n>>2]>>2]=0;if((a[(c[o>>2]|0)+3>>0]|0)!=0){c[l>>2]=0;f=c[l>>2]|0;i=m;return f|0}else{c[k>>2]=DD(c[h>>2]|0)|0;c[l>>2]=c[k>>2];f=c[l>>2]|0;i=m;return f|0}}if((a[(c[o>>2]|0)+3>>0]|0)==0){f=c[h>>2]|0;c[k>>2]=$C(f,zo((c[(c[o>>2]|0)+56>>2]|0)+((d[(c[o>>2]|0)+5>>0]|0)+8)|0)|0)|0;if((c[k>>2]|0)!=0){c[c[n>>2]>>2]=0;c[l>>2]=c[k>>2];f=c[l>>2]|0;i=m;return f|0}else{c[k>>2]=DD(c[h>>2]|0)|0;c[c[n>>2]>>2]=0;c[l>>2]=c[k>>2];f=c[l>>2]|0;i=m;return f|0}}do{if((b[(c[h>>2]|0)+84>>1]|0)==0){j=17;break}bD(c[h>>2]|0);c[o>>2]=c[(c[h>>2]|0)+128+(b[(c[h>>2]|0)+84>>1]<<2)>>2]}while((e[(c[h>>2]|0)+86+(b[(c[h>>2]|0)+84>>1]<<1)>>1]|0)>=(e[(c[o>>2]|0)+16>>1]|0));if((j|0)==17){c[c[n>>2]>>2]=1;a[(c[h>>2]|0)+81>>0]=0;c[l>>2]=0;f=c[l>>2]|0;i=m;return f|0}c[c[n>>2]>>2]=0;if((a[(c[o>>2]|0)+2>>0]|0)!=0){c[k>>2]=YC(c[h>>2]|0,c[n>>2]|0)|0}else{c[k>>2]=0}c[l>>2]=c[k>>2];f=c[l>>2]|0;i=m;return f|0}function ZC(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+32|0;k=l+20|0;m=l;n=l+4|0;j=l+8|0;o=l+12|0;p=l+16|0;c[m>>2]=f;c[n>>2]=g;f=(c[m>>2]|0)+80|0;a[f>>0]=d[f>>0]&-13;if((d[(c[m>>2]|0)+81>>0]|0)!=1){if((d[(c[m>>2]|0)+81>>0]|0)>=3){c[j>>2]=_C(c[m>>2]|0)|0;if((c[j>>2]|0)!=0){c[c[n>>2]>>2]=0;c[k>>2]=c[j>>2];f=c[k>>2]|0;i=l;return f|0}}if(0==(d[(c[m>>2]|0)+81>>0]|0)){c[c[n>>2]>>2]=1;c[k>>2]=0;f=c[k>>2]|0;i=l;return f|0}if((c[(c[m>>2]|0)+76>>2]|0)!=0){a[(c[m>>2]|0)+81>>0]=1;f=(c[(c[m>>2]|0)+76>>2]|0)<0;c[(c[m>>2]|0)+76>>2]=0;if(f){c[c[n>>2]>>2]=0;c[k>>2]=0;f=c[k>>2]|0;i=l;return f|0}}}c[o>>2]=c[(c[m>>2]|0)+128+(b[(c[m>>2]|0)+84>>1]<<2)>>2];do{if((a[(c[o>>2]|0)+3>>0]|0)!=0){while(1){p=c[m>>2]|0;if((e[(c[m>>2]|0)+86+(b[(c[m>>2]|0)+84>>1]<<1)>>1]|0)!=0){break}g=c[m>>2]|0;if((b[p+84>>1]|0)==0){h=16;break}bD(g)}if((h|0)==16){a[g+81>>0]=0;c[c[n>>2]>>2]=1;c[k>>2]=0;f=c[k>>2]|0;i=l;return f|0}b[p+50>>1]=0;f=(c[m>>2]|0)+80|0;a[f>>0]=d[f>>0]&-7;f=(c[m>>2]|0)+86+(b[(c[m>>2]|0)+84>>1]<<1)|0;b[f>>1]=(b[f>>1]|0)+ -1<<16>>16;c[o>>2]=c[(c[m>>2]|0)+128+(b[(c[m>>2]|0)+84>>1]<<2)>>2];if((d[(c[o>>2]|0)+2>>0]|0)!=0){if((a[(c[o>>2]|0)+3>>0]|0)==0){c[j>>2]=ZC(c[m>>2]|0,c[n>>2]|0)|0;break}}c[j>>2]=0}else{c[p>>2]=e[(c[m>>2]|0)+86+(b[(c[m>>2]|0)+84>>1]<<1)>>1]|0;f=c[m>>2]|0;c[j>>2]=$C(f,zo((c[(c[o>>2]|0)+56>>2]|0)+(e[(c[o>>2]|0)+18>>1]&(d[(c[(c[o>>2]|0)+64>>2]|0)+(c[p>>2]<<1)>>0]<<8|d[(c[(c[o>>2]|0)+64>>2]|0)+(c[p>>2]<<1)+1>>0]))|0)|0)|0;if((c[j>>2]|0)==0){c[j>>2]=aD(c[m>>2]|0)|0;break}c[c[n>>2]>>2]=0;c[k>>2]=c[j>>2];f=c[k>>2]|0;i=l;return f|0}}while(0);c[c[n>>2]>>2]=0;c[k>>2]=c[j>>2];f=c[k>>2]|0;i=l;return f|0}function _C(b){b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[g>>2]=b;b=c[g>>2]|0;if((d[(c[g>>2]|0)+81>>0]|0|0)==4){c[f>>2]=c[b+76>>2];b=c[f>>2]|0;i=e;return b|0}a[b+81>>0]=0;b=(c[g>>2]|0)+56|0;c[h>>2]=gD(c[g>>2]|0,c[(c[g>>2]|0)+64>>2]|0,c[b>>2]|0,c[b+4>>2]|0,0,(c[g>>2]|0)+76|0)|0;if((c[h>>2]|0)==0){oc(c[(c[g>>2]|0)+64>>2]|0);c[(c[g>>2]|0)+64>>2]=0;if((c[(c[g>>2]|0)+76>>2]|0)!=0){if((d[(c[g>>2]|0)+81>>0]|0|0)==1){a[(c[g>>2]|0)+81>>0]=2}}}c[f>>2]=c[h>>2];b=c[f>>2]|0;i=e;return b|0}function $C(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;j=h+24|0;m=h;p=h+4|0;k=h+8|0;n=h+12|0;l=h+16|0;o=h+20|0;c[m>>2]=f;c[p>>2]=g;c[n>>2]=b[(c[m>>2]|0)+84>>1]|0;c[o>>2]=c[(c[m>>2]|0)+4>>2];if((b[(c[m>>2]|0)+84>>1]|0)>=19){c[j>>2]=dq(55422)|0;f=c[j>>2]|0;i=h;return f|0}c[k>>2]=cD(c[o>>2]|0,c[p>>2]|0,l,(a[(c[m>>2]|0)+80>>0]&1|0)==0?2:0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];f=c[j>>2]|0;i=h;return f|0}c[(c[m>>2]|0)+128+((c[n>>2]|0)+1<<2)>>2]=c[l>>2];b[(c[m>>2]|0)+86+((c[n>>2]|0)+1<<1)>>1]=0;f=(c[m>>2]|0)+84|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;b[(c[m>>2]|0)+50>>1]=0;f=(c[m>>2]|0)+80|0;a[f>>0]=d[f>>0]&-7;if((e[(c[l>>2]|0)+16>>1]|0)>=1){if((d[(c[l>>2]|0)+2>>0]|0)==(d[(c[(c[m>>2]|0)+128+(c[n>>2]<<2)>>2]|0)+2>>0]|0)){c[j>>2]=0;f=c[j>>2]|0;i=h;return f|0}}c[j>>2]=dq(55434)|0;f=c[j>>2]|0;i=h;return f|0}function aD(f){f=f|0;var g=0,h=0,j=0,k=0,l=0;h=i;i=i+16|0;k=h+12|0;l=h;g=h+4|0;j=h+8|0;c[k>>2]=f;c[g>>2]=0;c[j>>2]=0;while(1){if((c[g>>2]|0)!=0){break}f=c[(c[k>>2]|0)+128+(b[(c[k>>2]|0)+84>>1]<<2)>>2]|0;c[j>>2]=f;if(!((a[f+3>>0]|0)!=0^1)){break}c[l>>2]=zo((c[(c[j>>2]|0)+56>>2]|0)+((d[(c[j>>2]|0)+5>>0]|0)+8)|0)|0;b[(c[k>>2]|0)+86+(b[(c[k>>2]|0)+84>>1]<<1)>>1]=b[(c[j>>2]|0)+16>>1]|0;c[g>>2]=$C(c[k>>2]|0,c[l>>2]|0)|0}if((c[g>>2]|0)!=0){l=c[g>>2]|0;i=h;return l|0}b[(c[k>>2]|0)+86+(b[(c[k>>2]|0)+84>>1]<<1)>>1]=(e[(c[j>>2]|0)+16>>1]|0)-1;b[(c[k>>2]|0)+50>>1]=0;l=(c[k>>2]|0)+80|0;a[l>>0]=d[l>>0]&-3;l=c[g>>2]|0;i=h;return l|0}function bD(e){e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f;c[g>>2]=e;Gr(c[(c[g>>2]|0)+128+(b[(c[g>>2]|0)+84>>1]<<2)>>2]|0);e=(c[g>>2]|0)+84|0;b[e>>1]=(b[e>>1]|0)+ -1<<16>>16;b[(c[g>>2]|0)+50>>1]=0;e=(c[g>>2]|0)+80|0;a[e>>0]=d[e>>0]&-7;i=f;return}function cD(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;m=h+16|0;l=h;j=h+4|0;k=h+8|0;g=h+12|0;c[m>>2]=a;c[l>>2]=b;c[j>>2]=e;c[k>>2]=f;a=c[l>>2]|0;if(a>>>0>(dD(c[m>>2]|0)|0)>>>0){c[g>>2]=dq(52811)|0}else{c[g>>2]=eD(c[m>>2]|0,c[l>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if((c[g>>2]|0)==0){if((d[c[c[j>>2]>>2]>>0]|0|0)==0){c[g>>2]=Lq(c[c[j>>2]>>2]|0)|0;if((c[g>>2]|0)!=0){Gr(c[c[j>>2]>>2]|0)}}}}i=h;return c[g>>2]|0}function dD(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+44>>2]|0}function eD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;g=k+24|0;f=k;l=k+4|0;j=k+8|0;n=k+12|0;h=k+16|0;m=k+20|0;c[f>>2]=a;c[l>>2]=b;c[j>>2]=d;c[n>>2]=e;c[h>>2]=ad(c[c[f>>2]>>2]|0,c[l>>2]|0,m,c[n>>2]|0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];n=c[g>>2]|0;i=k;return n|0}else{n=fD(c[m>>2]|0,c[l>>2]|0,c[f>>2]|0)|0;c[c[j>>2]>>2]=n;c[g>>2]=0;n=c[g>>2]|0;i=k;return n|0}return 0}function fD(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;k=g+12|0;h=g;j=g+4|0;f=g+8|0;c[k>>2]=b;c[h>>2]=d;c[j>>2]=e;c[f>>2]=Jq(c[k>>2]|0)|0;b=cd(c[k>>2]|0)|0;c[(c[f>>2]|0)+56>>2]=b;c[(c[f>>2]|0)+68>>2]=c[k>>2];c[(c[f>>2]|0)+52>>2]=c[j>>2];c[(c[f>>2]|0)+72>>2]=c[h>>2];a[(c[f>>2]|0)+5>>0]=(c[(c[f>>2]|0)+72>>2]|0)==1?100:0;i=g;return c[f>>2]|0}function gD(a,b,d,f,g,h){a=a|0;b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=i;i=i+240|0;k=q+36|0;l=q+32|0;s=q+28|0;n=q;p=q+24|0;j=q+20|0;r=q+8|0;o=q+12|0;m=q+16|0;c[l>>2]=a;c[s>>2]=b;a=n;c[a>>2]=d;c[a+4>>2]=f;c[p>>2]=g;c[j>>2]=h;c[m>>2]=0;if((c[s>>2]|0)!=0){c[o>>2]=hD(c[(c[l>>2]|0)+16>>2]|0,q+40|0,200,m)|0;if((c[o>>2]|0)==0){c[k>>2]=7;a=c[k>>2]|0;i=q;return a|0}iD(c[(c[l>>2]|0)+16>>2]|0,c[n>>2]|0,c[s>>2]|0,c[o>>2]|0);if((e[(c[o>>2]|0)+4>>1]|0|0)==0){cc(c[(c[(c[l>>2]|0)+16>>2]|0)+12>>2]|0,c[m>>2]|0);c[k>>2]=dq(51847)|0;a=c[k>>2]|0;i=q;return a|0}}else{c[o>>2]=0}a=n;c[r>>2]=jD(c[l>>2]|0,c[o>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[p>>2]|0,c[j>>2]|0)|0;if((c[m>>2]|0)!=0){cc(c[(c[(c[l>>2]|0)+16>>2]|0)+12>>2]|0,c[m>>2]|0)}c[k>>2]=c[r>>2];a=c[k>>2]|0;i=q;return a|0}function hD(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+32|0;j=n+28|0;l=n;p=n+4|0;q=n+8|0;m=n+12|0;k=n+16|0;o=n+20|0;h=n+24|0;c[l>>2]=a;c[p>>2]=d;c[q>>2]=f;c[m>>2]=g;c[o>>2]=8-(c[p>>2]&7)&7;c[h>>2]=24+(((e[(c[l>>2]|0)+6>>1]|0)+1|0)*40|0);if((c[h>>2]|0)>((c[q>>2]|0)+(c[o>>2]|0)|0)){c[k>>2]=$e(c[(c[l>>2]|0)+12>>2]|0,c[h>>2]|0)|0;c[c[m>>2]>>2]=c[k>>2];if((c[k>>2]|0)==0){c[j>>2]=0;q=c[j>>2]|0;i=n;return q|0}}else{c[k>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[c[m>>2]>>2]=0}c[(c[k>>2]|0)+8>>2]=(c[k>>2]|0)+24;c[c[k>>2]>>2]=c[l>>2];b[(c[k>>2]|0)+4>>1]=(e[(c[l>>2]|0)+6>>1]|0)+1;c[j>>2]=c[k>>2];q=c[j>>2]|0;i=n;return q|0}function iD(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=i;i=i+48|0;p=k+36|0;r=k+32|0;v=k+28|0;l=k+24|0;o=k+20|0;q=k+16|0;n=k+8|0;m=k+40|0;s=k+4|0;u=k;t=k+12|0;c[p>>2]=f;c[r>>2]=g;c[v>>2]=h;c[l>>2]=j;c[o>>2]=c[v>>2];c[u>>2]=c[(c[l>>2]|0)+8>>2];a[(c[l>>2]|0)+6>>0]=0;j=c[o>>2]|0;if((d[c[o>>2]>>0]|0|0)<128){c[s>>2]=d[j>>0]|0;j=1}else{j=(uD(j,s)|0)&255}c[n>>2]=j&255;c[q>>2]=c[s>>2];b[m>>1]=0;while(1){if(!((c[n>>2]|0)>>>0<(c[s>>2]|0)>>>0)){n=12;break}if((e[m>>1]|0|0)>=(e[(c[l>>2]|0)+4>>1]|0|0)){n=12;break}if((c[q>>2]|0)>(c[r>>2]|0)){n=12;break}j=(c[o>>2]|0)+(c[n>>2]|0)|0;if((d[(c[o>>2]|0)+(c[n>>2]|0)>>0]|0|0)<128){c[t>>2]=d[j>>0]|0;j=1}else{j=(uD(j,t)|0)&255}c[n>>2]=(c[n>>2]|0)+(j&255);a[(c[u>>2]|0)+30>>0]=a[(c[p>>2]|0)+4>>0]|0;c[c[u>>2]>>2]=c[(c[p>>2]|0)+12>>2];c[(c[u>>2]|0)+36>>2]=0;v=zD((c[o>>2]|0)+(c[q>>2]|0)|0,c[t>>2]|0,c[u>>2]|0)|0;c[q>>2]=(c[q>>2]|0)+v;c[u>>2]=(c[u>>2]|0)+40;b[m>>1]=(b[m>>1]|0)+1<<16>>16}if((n|0)==12){b[(c[l>>2]|0)+4>>1]=b[m>>1]|0;i=k;return}}function jD(f,g,h,j,k,l){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;o=i;i=i+96|0;w=o+80|0;B=o+76|0;n=o+72|0;s=o;C=o+68|0;z=o+64|0;p=o+60|0;x=o+56|0;v=o+52|0;m=o+20|0;u=o+36|0;A=o+16|0;F=o+32|0;t=o+28|0;q=o+24|0;r=o+8|0;y=o+40|0;E=o+44|0;D=o+48|0;c[B>>2]=f;c[n>>2]=g;f=s;c[f>>2]=h;c[f+4>>2]=j;c[C>>2]=k;c[z>>2]=l;if((d[(c[B>>2]|0)+81>>0]|0)==1){if((a[(c[B>>2]|0)+80>>0]&2|0)!=0){if((d[(c[(c[B>>2]|0)+128>>2]|0)+2>>0]|0)!=0){g=(c[B>>2]|0)+24|0;f=s;if((c[g>>2]|0)==(c[f>>2]|0)?(c[g+4>>2]|0)==(c[f+4>>2]|0):0){c[c[z>>2]>>2]=0;c[w>>2]=0;f=c[w>>2]|0;i=o;return f|0}if((a[(c[B>>2]|0)+80>>0]&8|0)!=0){g=(c[B>>2]|0)+24|0;j=c[g+4>>2]|0;f=s;h=c[f+4>>2]|0;if((j|0)<(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0:0)){c[c[z>>2]>>2]=-1;c[w>>2]=0;f=c[w>>2]|0;i=o;return f|0}}}}}if((c[n>>2]|0)!=0){c[x>>2]=kD(c[n>>2]|0)|0;a[(c[n>>2]|0)+7>>0]=0}else{c[x>>2]=0}c[p>>2]=lD(c[B>>2]|0)|0;if((c[p>>2]|0)!=0){c[w>>2]=c[p>>2];f=c[w>>2]|0;i=o;return f|0}if((d[(c[B>>2]|0)+81>>0]|0)==0){c[c[z>>2]>>2]=-1;c[w>>2]=0;f=c[w>>2]|0;i=o;return f|0}a:do{c[t>>2]=c[(c[B>>2]|0)+128+(b[(c[B>>2]|0)+84>>1]<<2)>>2];c[v>>2]=0;c[m>>2]=(e[(c[t>>2]|0)+16>>1]|0)-1;c[u>>2]=c[m>>2]>>1-(c[C>>2]|0);b[(c[B>>2]|0)+86+(b[(c[B>>2]|0)+84>>1]<<1)>>1]=c[u>>2];b:do{if((c[x>>2]|0)==0){while(1){c[q>>2]=(c[(c[t>>2]|0)+56>>2]|0)+(e[(c[t>>2]|0)+18>>1]&(d[(c[(c[t>>2]|0)+64>>2]|0)+(c[u>>2]<<1)>>0]<<8|d[(c[(c[t>>2]|0)+64>>2]|0)+(c[u>>2]<<1)+1>>0]))+(d[(c[t>>2]|0)+6>>0]|0);c:do{if((a[(c[t>>2]|0)+4>>0]|0)!=0){while(1){f=c[q>>2]|0;c[q>>2]=f+1;if(128>(d[f>>0]|0)){break c}if((c[q>>2]|0)>>>0>=(c[(c[t>>2]|0)+60>>2]|0)>>>0){l=20;break a}}}}while(0);mD(c[q>>2]|0,r)|0;g=r;j=c[g+4>>2]|0;f=s;h=c[f+4>>2]|0;if((j|0)<(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0:0)){c[v>>2]=(c[u>>2]|0)+1;if((c[v>>2]|0)>(c[m>>2]|0)){l=23;break}}else{g=r;j=c[g+4>>2]|0;f=s;h=c[f+4>>2]|0;if(!((j|0)>(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0>(c[f>>2]|0)>>>0:0))){l=27;break}c[m>>2]=(c[u>>2]|0)-1;if((c[v>>2]|0)>(c[m>>2]|0)){l=26;break}}c[u>>2]=(c[v>>2]|0)+(c[m>>2]|0)>>1}if((l|0)==23){c[A>>2]=-1;l=49;break}else if((l|0)==26){c[A>>2]=1;l=49;break}else if((l|0)==27){l=0;h=(c[B>>2]|0)+80|0;a[h>>0]=d[h>>0]|2;h=r;g=c[h+4>>2]|0;f=(c[B>>2]|0)+24|0;c[f>>2]=c[h>>2];c[f+4>>2]=g;b[(c[B>>2]|0)+86+(b[(c[B>>2]|0)+84>>1]<<1)>>1]=c[u>>2];if((a[(c[t>>2]|0)+3>>0]|0)!=0){l=29;break a}c[v>>2]=c[u>>2];break}}else{while(1){c[q>>2]=(c[(c[t>>2]|0)+56>>2]|0)+(e[(c[t>>2]|0)+18>>1]&(d[(c[(c[t>>2]|0)+64>>2]|0)+(c[u>>2]<<1)>>0]<<8|d[(c[(c[t>>2]|0)+64>>2]|0)+(c[u>>2]<<1)+1>>0]))+(d[(c[t>>2]|0)+6>>0]|0);c[y>>2]=d[c[q>>2]>>0]|0;do{if((c[y>>2]|0)<=(d[(c[t>>2]|0)+7>>0]|0)){c[A>>2]=xb[c[x>>2]&31](c[y>>2]|0,(c[q>>2]|0)+1|0,c[n>>2]|0,0)|0}else{if((a[(c[q>>2]|0)+1>>0]&128|0)==0){f=((c[y>>2]&127)<<7)+(d[(c[q>>2]|0)+1>>0]|0)|0;c[y>>2]=f;if((f|0)<=(e[(c[t>>2]|0)+8>>1]|0)){c[A>>2]=xb[c[x>>2]&31](c[y>>2]|0,(c[q>>2]|0)+2|0,c[n>>2]|0,0)|0;break}}c[D>>2]=(c[q>>2]|0)+(0-(d[(c[t>>2]|0)+6>>0]|0));nD(c[t>>2]|0,c[D>>2]|0,(c[B>>2]|0)+24|0);c[y>>2]=c[(c[B>>2]|0)+24>>2];c[E>>2]=nc(c[y>>2]|0)|0;if((c[E>>2]|0)==0){l=37;break a}b[(c[B>>2]|0)+86+(b[(c[B>>2]|0)+84>>1]<<1)>>1]=c[u>>2];c[p>>2]=oD(c[B>>2]|0,0,c[y>>2]|0,c[E>>2]|0,2)|0;if((c[p>>2]|0)!=0){l=39;break a}c[A>>2]=xb[c[x>>2]&31](c[y>>2]|0,c[E>>2]|0,c[n>>2]|0,0)|0;oc(c[E>>2]|0)}}while(0);if((c[A>>2]|0)<0){c[v>>2]=(c[u>>2]|0)+1}else{if((c[A>>2]|0)<=0){l=45;break a}c[m>>2]=(c[u>>2]|0)-1}if((c[v>>2]|0)>(c[m>>2]|0)){l=49;break b}c[u>>2]=(c[v>>2]|0)+(c[m>>2]|0)>>1}}}while(0);if((l|0)==49){l=0;if((a[(c[t>>2]|0)+3>>0]|0)!=0){l=50;break}}k=c[t>>2]|0;if((c[v>>2]|0)>=(e[(c[t>>2]|0)+16>>1]|0)){c[F>>2]=zo((c[(c[t>>2]|0)+56>>2]|0)+((d[k+5>>0]|0)+8)|0)|0}else{c[F>>2]=zo((c[k+56>>2]|0)+(e[(c[t>>2]|0)+18>>1]&(d[(c[(c[t>>2]|0)+64>>2]|0)+(c[v>>2]<<1)>>0]<<8|d[(c[(c[t>>2]|0)+64>>2]|0)+(c[v>>2]<<1)+1>>0]))|0)|0}b[(c[B>>2]|0)+86+(b[(c[B>>2]|0)+84>>1]<<1)>>1]=c[v>>2];c[p>>2]=$C(c[B>>2]|0,c[F>>2]|0)|0}while((c[p>>2]|0)==0);if((l|0)==20){c[w>>2]=dq(55807)|0;f=c[w>>2]|0;i=o;return f|0}else if((l|0)==29){c[c[z>>2]>>2]=0;c[p>>2]=0}else if((l|0)==37){c[p>>2]=7}else if((l|0)==39){oc(c[E>>2]|0)}else if((l|0)==45){c[c[z>>2]>>2]=0;c[p>>2]=0;b[(c[B>>2]|0)+86+(b[(c[B>>2]|0)+84>>1]<<1)>>1]=c[u>>2];if((a[(c[n>>2]|0)+7>>0]|0)!=0){c[p>>2]=11}}else if((l|0)==50){b[(c[B>>2]|0)+86+(b[(c[B>>2]|0)+84>>1]<<1)>>1]=c[u>>2];c[c[z>>2]>>2]=c[A>>2];c[p>>2]=0}b[(c[B>>2]|0)+50>>1]=0;f=(c[B>>2]|0)+80|0;a[f>>0]=d[f>>0]&-7;c[w>>2]=c[p>>2];f=c[w>>2]|0;i=o;return f|0}function kD(b){b=b|0;var d=0,f=0,g=0,h=0;f=i;i=i+16|0;d=f+8|0;g=f;h=f+4|0;c[g>>2]=b;if(((e[(c[c[g>>2]>>2]|0)+6>>1]|0)+(e[(c[c[g>>2]>>2]|0)+8>>1]|0)|0)<=13){c[h>>2]=e[(c[(c[g>>2]|0)+8>>2]|0)+28>>1]|0;b=(c[g>>2]|0)+12|0;if((a[c[(c[c[g>>2]>>2]|0)+16>>2]>>0]|0)!=0){c[b>>2]=1;c[(c[g>>2]|0)+16>>2]=-1}else{c[b>>2]=-1;c[(c[g>>2]|0)+16>>2]=1}if((c[h>>2]&4|0)!=0){c[d>>2]=15;b=c[d>>2]|0;i=f;return b|0}if((c[h>>2]&25|0)==0){if((c[(c[c[g>>2]>>2]|0)+20>>2]|0)==0){c[d>>2]=16;b=c[d>>2]|0;i=f;return b|0}}}c[d>>2]=17;b=c[d>>2]|0;i=f;return b|0}function lD(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+32|0;h=j+16|0;k=j;l=j+4|0;g=j+8|0;m=j+12|0;c[k>>2]=f;c[g>>2]=0;do{if((d[(c[k>>2]|0)+81>>0]|0)>=3){f=c[k>>2]|0;if((d[(c[k>>2]|0)+81>>0]|0)!=4){Fr(f);break}c[h>>2]=c[f+76>>2];f=c[h>>2]|0;i=j;return f|0}}while(0);a:do{if((b[(c[k>>2]|0)+84>>1]|0)>=0){while(1){if((b[(c[k>>2]|0)+84>>1]|0)==0){break a}n=(c[k>>2]|0)+84|0;f=b[n>>1]|0;b[n>>1]=f+ -1<<16>>16;Gr(c[(c[k>>2]|0)+128+(f<<16>>16<<2)>>2]|0)}}else{f=c[k>>2]|0;if((c[(c[k>>2]|0)+68>>2]|0)==0){a[f+81>>0]=0;c[h>>2]=0;n=c[h>>2]|0;i=j;return n|0}c[g>>2]=cD(c[(c[f>>2]|0)+4>>2]|0,c[(c[k>>2]|0)+68>>2]|0,(c[k>>2]|0)+128|0,(a[(c[k>>2]|0)+80>>0]&1|0)==0?2:0)|0;f=c[k>>2]|0;if((c[g>>2]|0)==0){b[f+84>>1]=0;break}a[f+81>>0]=0;c[h>>2]=c[g>>2];n=c[h>>2]|0;i=j;return n|0}}while(0);c[l>>2]=c[(c[k>>2]|0)+128>>2];if((d[c[l>>2]>>0]|0)!=0){if(((c[(c[k>>2]|0)+16>>2]|0)==0|0)==(d[(c[l>>2]|0)+2>>0]|0)){b[(c[k>>2]|0)+86>>1]=0;b[(c[k>>2]|0)+50>>1]=0;n=(c[k>>2]|0)+80|0;a[n>>0]=d[n>>0]&-15;do{if((e[(c[l>>2]|0)+16>>1]|0)>0){a[(c[k>>2]|0)+81>>0]=1}else{if((a[(c[l>>2]|0)+3>>0]|0)!=0){a[(c[k>>2]|0)+81>>0]=0;break}if((c[(c[l>>2]|0)+72>>2]|0)==1){c[m>>2]=zo((c[(c[l>>2]|0)+56>>2]|0)+((d[(c[l>>2]|0)+5>>0]|0)+8)|0)|0;a[(c[k>>2]|0)+81>>0]=1;c[g>>2]=$C(c[k>>2]|0,c[m>>2]|0)|0;break}c[h>>2]=dq(55570)|0;n=c[h>>2]|0;i=j;return n|0}}while(0);c[h>>2]=c[g>>2];n=c[h>>2]|0;i=j;return n|0}}c[h>>2]=dq(55559)|0;n=c[h>>2]|0;i=j;return n|0}function mD(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;g=k+20|0;m=k;j=k+4|0;h=k+8|0;f=k+12|0;l=k+16|0;c[m>>2]=b;c[j>>2]=e;c[h>>2]=d[c[m>>2]>>0]|0;if((c[h>>2]&128|0)==0){b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=0;a[g>>0]=1;b=a[g>>0]|0;i=k;return b|0}c[m>>2]=(c[m>>2]|0)+1;c[f>>2]=d[c[m>>2]>>0]|0;if((c[f>>2]&128|0)==0){c[h>>2]=c[h>>2]&127;c[h>>2]=c[h>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=0;a[g>>0]=2;b=a[g>>0]|0;i=k;return b|0}c[m>>2]=(c[m>>2]|0)+1;c[h>>2]=c[h>>2]<<14;c[h>>2]=c[h>>2]|(d[c[m>>2]>>0]|0);b=(c[h>>2]&128|0)!=0;c[h>>2]=c[h>>2]&2080895;if(!b){c[f>>2]=c[f>>2]&127;c[f>>2]=c[f>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=0;a[g>>0]=3;b=a[g>>0]|0;i=k;return b|0}c[m>>2]=(c[m>>2]|0)+1;c[f>>2]=c[f>>2]<<14;c[f>>2]=c[f>>2]|(d[c[m>>2]>>0]|0);b=(c[f>>2]&128|0)!=0;c[f>>2]=c[f>>2]&2080895;e=c[h>>2]|0;if(!b){c[h>>2]=e<<7;c[h>>2]=c[h>>2]|c[f>>2];b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=0;a[g>>0]=4;b=a[g>>0]|0;i=k;return b|0}c[l>>2]=e;c[m>>2]=(c[m>>2]|0)+1;c[h>>2]=c[h>>2]<<14;c[h>>2]=c[h>>2]|(d[c[m>>2]>>0]|0);if((c[h>>2]&128|0)==0){c[f>>2]=c[f>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];c[l>>2]=(c[l>>2]|0)>>>18;e=c[l>>2]|0;b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=e;a[g>>0]=5;b=a[g>>0]|0;i=k;return b|0}c[l>>2]=c[l>>2]<<7;c[l>>2]=c[l>>2]|c[f>>2];c[m>>2]=(c[m>>2]|0)+1;c[f>>2]=c[f>>2]<<14;c[f>>2]=c[f>>2]|(d[c[m>>2]>>0]|0);if((c[f>>2]&128|0)==0){c[h>>2]=c[h>>2]&2080895;c[h>>2]=c[h>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];c[l>>2]=(c[l>>2]|0)>>>18;e=c[l>>2]|0;b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=e;a[g>>0]=6;b=a[g>>0]|0;i=k;return b|0}c[m>>2]=(c[m>>2]|0)+1;c[h>>2]=c[h>>2]<<14;c[h>>2]=c[h>>2]|(d[c[m>>2]>>0]|0);e=c[h>>2]|0;if((c[h>>2]&128|0)==0){c[h>>2]=e&-266354561;c[f>>2]=c[f>>2]&2080895;c[f>>2]=c[f>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];c[l>>2]=(c[l>>2]|0)>>>11;e=c[l>>2]|0;b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=e;a[g>>0]=7;b=a[g>>0]|0;i=k;return b|0}c[h>>2]=e&2080895;c[m>>2]=(c[m>>2]|0)+1;c[f>>2]=c[f>>2]<<14;c[f>>2]=c[f>>2]|(d[c[m>>2]>>0]|0);if((c[f>>2]&128|0)!=0){c[m>>2]=(c[m>>2]|0)+1;c[h>>2]=c[h>>2]<<15;c[h>>2]=c[h>>2]|(d[c[m>>2]>>0]|0);c[f>>2]=c[f>>2]&2080895;c[f>>2]=c[f>>2]<<8;c[h>>2]=c[h>>2]|c[f>>2];c[l>>2]=c[l>>2]<<4;c[f>>2]=d[(c[m>>2]|0)+ -4>>0]|0;c[f>>2]=c[f>>2]&127;c[f>>2]=(c[f>>2]|0)>>>3;c[l>>2]=c[l>>2]|c[f>>2];e=c[l>>2]|0;b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=e;a[g>>0]=9;b=a[g>>0]|0;i=k;return b|0}else{c[f>>2]=c[f>>2]&-266354561;c[h>>2]=c[h>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];c[l>>2]=(c[l>>2]|0)>>>4;e=c[l>>2]|0;b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=e;a[g>>0]=8;b=a[g>>0]|0;i=k;return b|0}return 0}function nD(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=i;i=i+32|0;n=l+24|0;r=l;k=l+4|0;m=l+28|0;q=l+12|0;o=l+16|0;p=l+20|0;j=l+8|0;c[n>>2]=f;c[r>>2]=g;c[k>>2]=h;c[(c[k>>2]|0)+8>>2]=c[r>>2];b[m>>1]=d[(c[n>>2]|0)+6>>0]|0;if((a[(c[n>>2]|0)+2>>0]|0)!=0){if((a[(c[n>>2]|0)+4>>0]|0)!=0){h=c[r>>2]|0;if((d[c[r>>2]>>0]|0)<128){c[q>>2]=d[h>>0]|0;h=1}else{h=(uD(h,q)|0)&255}b[m>>1]=h&255}else{c[q>>2]=0}f=(mD((c[r>>2]|0)+(e[m>>1]|0)|0,c[k>>2]|0)|0)&255;b[m>>1]=(e[m>>1]|0)+f;c[(c[k>>2]|0)+12>>2]=c[q>>2]}else{c[(c[k>>2]|0)+12>>2]=0;h=(c[r>>2]|0)+(e[m>>1]|0)|0;if((d[(c[r>>2]|0)+(e[m>>1]|0)>>0]|0)<128){c[q>>2]=d[h>>0]|0;r=1}else{r=(uD(h,q)|0)&255}b[m>>1]=(e[m>>1]|0)+(r&255);f=c[k>>2]|0;c[f>>2]=c[q>>2];c[f+4>>2]=0}c[(c[k>>2]|0)+16>>2]=c[q>>2];b[(c[k>>2]|0)+20>>1]=b[m>>1]|0;if((c[q>>2]|0)>>>0<=(e[(c[n>>2]|0)+8>>1]|0)>>>0){f=(e[m>>1]|0)+(c[q>>2]|0)&65535;b[(c[k>>2]|0)+26>>1]=f;if((f&65535|0)<4){b[(c[k>>2]|0)+26>>1]=4}b[(c[k>>2]|0)+22>>1]=c[q>>2];b[(c[k>>2]|0)+24>>1]=0;i=l;return}c[o>>2]=e[(c[n>>2]|0)+10>>1]|0;c[p>>2]=e[(c[n>>2]|0)+8>>1]|0;c[j>>2]=(c[o>>2]|0)+((((c[q>>2]|0)-(c[o>>2]|0)|0)>>>0)%(((c[(c[(c[n>>2]|0)+52>>2]|0)+36>>2]|0)-4|0)>>>0)|0);if((c[j>>2]|0)<=(c[p>>2]|0)){b[(c[k>>2]|0)+22>>1]=c[j>>2]}else{b[(c[k>>2]|0)+22>>1]=c[o>>2]}b[(c[k>>2]|0)+24>>1]=(e[(c[k>>2]|0)+22>>1]|0)+(e[m>>1]|0);b[(c[k>>2]|0)+26>>1]=(e[(c[k>>2]|0)+24>>1]|0)+4;i=l;return}function oD(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;D=i;i=i+80|0;C=D+76|0;o=D+72|0;x=D+68|0;t=D+64|0;y=D+60|0;m=D+56|0;w=D+52|0;r=D+48|0;E=D+44|0;n=D+40|0;A=D+36|0;l=D+12|0;F=D;z=D+4|0;v=D+8|0;p=D+16|0;q=D+20|0;s=D+24|0;u=D+28|0;B=D+32|0;c[o>>2]=f;c[x>>2]=g;c[t>>2]=h;c[y>>2]=j;c[m>>2]=k;c[r>>2]=0;c[n>>2]=0;c[A>>2]=c[(c[o>>2]|0)+128+(b[(c[o>>2]|0)+84>>1]<<2)>>2];c[l>>2]=c[(c[o>>2]|0)+4>>2];if((e[(c[o>>2]|0)+50>>1]|0)==0){c[F>>2]=b[(c[o>>2]|0)+84>>1]|0;pD(c[(c[o>>2]|0)+128+(c[F>>2]<<2)>>2]|0,e[(c[o>>2]|0)+86+(c[F>>2]<<1)>>1]|0,(c[o>>2]|0)+24|0);f=(c[o>>2]|0)+80|0;a[f>>0]=d[f>>0]|2}c[w>>2]=(c[(c[o>>2]|0)+32>>2]|0)+(e[(c[o>>2]|0)+44>>1]|0);if((d[(c[A>>2]|0)+2>>0]|0)!=0){k=0}else{k=c[(c[o>>2]|0)+24>>2]|0}c[E>>2]=k;if(!(((c[x>>2]|0)+(c[t>>2]|0)|0)>>>0>((c[E>>2]|0)+(c[(c[o>>2]|0)+36>>2]|0)|0)>>>0)){if(!(((c[w>>2]|0)+(e[(c[o>>2]|0)+46>>1]|0)|0)>>>0>((c[(c[A>>2]|0)+56>>2]|0)+(c[(c[l>>2]|0)+36>>2]|0)|0)>>>0)){if((c[x>>2]|0)>>>0<(e[(c[o>>2]|0)+46>>1]|0)>>>0){c[z>>2]=c[t>>2];if(((c[z>>2]|0)+(c[x>>2]|0)|0)>>>0>(e[(c[o>>2]|0)+46>>1]|0)>>>0){c[z>>2]=(e[(c[o>>2]|0)+46>>1]|0)-(c[x>>2]|0)}c[r>>2]=qD((c[w>>2]|0)+(c[x>>2]|0)|0,c[y>>2]|0,c[z>>2]|0,c[m>>2]&1,c[(c[A>>2]|0)+68>>2]|0)|0;c[x>>2]=0;c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0);c[t>>2]=(c[t>>2]|0)-(c[z>>2]|0)}else{c[x>>2]=(c[x>>2]|0)-(e[(c[o>>2]|0)+46>>1]|0)}a:do{if((c[r>>2]|0)==0){if((c[t>>2]|0)>>>0>0){c[v>>2]=(c[(c[l>>2]|0)+36>>2]|0)-4;c[p>>2]=zo((c[w>>2]|0)+(e[(c[o>>2]|0)+46>>1]|0)|0)|0;if((c[m>>2]|0)!=2){if((a[(c[o>>2]|0)+80>>0]&4|0)==0){c[q>>2]=(((c[(c[o>>2]|0)+40>>2]|0)-(e[(c[o>>2]|0)+46>>1]|0)+(c[v>>2]|0)-1|0)>>>0)/((c[v>>2]|0)>>>0)|0;do{if((c[q>>2]|0)>(c[(c[o>>2]|0)+72>>2]|0)){c[s>>2]=Ot(c[c[c[o>>2]>>2]>>2]|0,c[(c[o>>2]|0)+20>>2]|0,c[q>>2]<<1<<2)|0;if((c[s>>2]|0)==0){c[r>>2]=7;break}else{c[(c[o>>2]|0)+72>>2]=c[q>>2]<<1;c[(c[o>>2]|0)+20>>2]=c[s>>2];break}}}while(0);if((c[r>>2]|0)==0){aL(c[(c[o>>2]|0)+20>>2]|0,0,c[q>>2]<<2|0)|0;f=(c[o>>2]|0)+80|0;a[f>>0]=d[f>>0]|4}}}if((a[(c[o>>2]|0)+80>>0]&4|0)!=0){if((c[(c[(c[o>>2]|0)+20>>2]|0)+((((c[x>>2]|0)>>>0)/((c[v>>2]|0)>>>0)|0)<<2)>>2]|0)!=0){c[n>>2]=((c[x>>2]|0)>>>0)/((c[v>>2]|0)>>>0)|0;c[p>>2]=c[(c[(c[o>>2]|0)+20>>2]|0)+(c[n>>2]<<2)>>2];c[x>>2]=((c[x>>2]|0)>>>0)%((c[v>>2]|0)>>>0)|0}}while(1){if((c[r>>2]|0)!=0){break a}if(!((c[t>>2]|0)>>>0>0)){break a}if((c[p>>2]|0)==0){break a}if((a[(c[o>>2]|0)+80>>0]&4|0)!=0){c[(c[(c[o>>2]|0)+20>>2]|0)+(c[n>>2]<<2)>>2]=c[p>>2]}if((c[x>>2]|0)>>>0>=(c[v>>2]|0)>>>0){if((c[(c[(c[o>>2]|0)+20>>2]|0)+((c[n>>2]|0)+1<<2)>>2]|0)!=0){c[p>>2]=c[(c[(c[o>>2]|0)+20>>2]|0)+((c[n>>2]|0)+1<<2)>>2]}else{c[r>>2]=rD(c[l>>2]|0,c[p>>2]|0,0,p)|0}c[x>>2]=(c[x>>2]|0)-(c[v>>2]|0)}else{c[u>>2]=c[t>>2];if(((c[u>>2]|0)+(c[x>>2]|0)|0)>>>0>(c[v>>2]|0)>>>0){c[u>>2]=(c[v>>2]|0)-(c[x>>2]|0)}c[r>>2]=ad(c[c[l>>2]>>2]|0,c[p>>2]|0,B,(c[m>>2]&1|0)==0?2:0)|0;if((c[r>>2]|0)==0){c[w>>2]=cd(c[B>>2]|0)|0;c[p>>2]=zo(c[w>>2]|0)|0;c[r>>2]=qD((c[w>>2]|0)+((c[x>>2]|0)+4)|0,c[y>>2]|0,c[u>>2]|0,c[m>>2]&1,c[B>>2]|0)|0;dd(c[B>>2]|0);c[x>>2]=0}c[t>>2]=(c[t>>2]|0)-(c[u>>2]|0);c[y>>2]=(c[y>>2]|0)+(c[u>>2]|0)}c[n>>2]=(c[n>>2]|0)+1}}}}while(0);if((c[r>>2]|0)==0){if((c[t>>2]|0)>>>0>0){c[C>>2]=dq(55292)|0;f=c[C>>2]|0;i=D;return f|0}}c[C>>2]=c[r>>2];f=c[C>>2]|0;i=D;return f|0}}c[C>>2]=dq(55144)|0;f=c[C>>2]|0;i=D;return f|0}function pD(a,b,f){a=a|0;b=b|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+16|0;k=g+8|0;j=g;h=g+4|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=f;nD(c[k>>2]|0,(c[(c[k>>2]|0)+56>>2]|0)+((e[(c[k>>2]|0)+18>>1]|0)&((d[(c[(c[k>>2]|0)+64>>2]|0)+(c[j>>2]<<1)>>0]|0)<<8|(d[(c[(c[k>>2]|0)+64>>2]|0)+(c[j>>2]<<1)+1>>0]|0)))|0,c[h>>2]|0);i=g;return}function qD(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;h=m+24|0;l=m;k=m+4|0;j=m+8|0;o=m+12|0;n=m+16|0;g=m+20|0;c[l>>2]=a;c[k>>2]=b;c[j>>2]=d;c[o>>2]=e;c[n>>2]=f;do{if((c[o>>2]|0)!=0){c[g>>2]=ld(c[n>>2]|0)|0;if((c[g>>2]|0)==0){fL(c[l>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;break}c[h>>2]=c[g>>2];o=c[h>>2]|0;i=m;return o|0}else{fL(c[k>>2]|0,c[l>>2]|0,c[j>>2]|0)|0}}while(0);c[h>>2]=0;o=c[h>>2]|0;i=m;return o|0}function rD(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+48|0;q=h+16|0;n=h+32|0;j=h+28|0;l=h+24|0;o=h+20|0;m=h+12|0;k=h+8|0;p=h+4|0;s=h;r=h+36|0;c[q>>2]=b;c[n>>2]=e;c[j>>2]=f;c[l>>2]=g;c[o>>2]=0;c[m>>2]=0;c[k>>2]=0;if((a[(c[q>>2]|0)+17>>0]|0)!=0){c[s>>2]=(c[n>>2]|0)+1;while(1){b=sD(c[q>>2]|0,c[s>>2]|0)|0;if((b|0)==(c[s>>2]|0)){f=1}else{f=(c[s>>2]|0)==((((c[368]|0)>>>0)/((c[(c[q>>2]|0)+32>>2]|0)>>>0)|0)+1|0)}g=c[s>>2]|0;if(!f){break}c[s>>2]=g+1}if(g>>>0<=(dD(c[q>>2]|0)|0)>>>0){c[k>>2]=tD(c[q>>2]|0,c[s>>2]|0,r,p)|0;if((c[k>>2]|0)==0){if((d[r>>0]|0)==4){if((c[p>>2]|0)==(c[n>>2]|0)){c[o>>2]=c[s>>2];c[k>>2]=101}}}}}if((c[k>>2]|0)==0){c[k>>2]=eD(c[q>>2]|0,c[n>>2]|0,m,(c[j>>2]|0)==0?2:0)|0;if((c[k>>2]|0)==0){c[o>>2]=zo(c[(c[m>>2]|0)+56>>2]|0)|0}}c[c[l>>2]>>2]=c[o>>2];l=c[m>>2]|0;if((c[j>>2]|0)!=0){c[c[j>>2]>>2]=l;e=c[k>>2]|0;e=(e|0)==101;b=c[k>>2]|0;b=e?0:b;i=h;return b|0}else{Gr(l);e=c[k>>2]|0;e=(e|0)==101;b=c[k>>2]|0;b=e?0:b;i=h;return b|0}return 0}function sD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;g=d;j=d+4|0;h=d+8|0;k=d+12|0;f=d+16|0;c[g>>2]=a;c[j>>2]=b;if((c[j>>2]|0)>>>0<2){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[h>>2]=(((c[(c[g>>2]|0)+36>>2]|0)>>>0)/5|0)+1;c[k>>2]=(((c[j>>2]|0)-2|0)>>>0)/((c[h>>2]|0)>>>0)|0;c[f>>2]=($(c[k>>2]|0,c[h>>2]|0)|0)+2;if((c[f>>2]|0)==((((c[368]|0)>>>0)/((c[(c[g>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){c[f>>2]=(c[f>>2]|0)+1}c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}function tD(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=i;i=i+48|0;j=o+36|0;s=o+32|0;q=o+28|0;h=o+24|0;p=o+20|0;l=o+16|0;r=o+8|0;m=o+4|0;n=o;k=o+12|0;c[s>>2]=b;c[q>>2]=e;c[h>>2]=f;c[p>>2]=g;c[r>>2]=sD(c[s>>2]|0,c[q>>2]|0)|0;c[k>>2]=ad(c[c[s>>2]>>2]|0,c[r>>2]|0,l,0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];s=c[j>>2]|0;i=o;return s|0}c[m>>2]=cd(c[l>>2]|0)|0;c[n>>2]=((c[q>>2]|0)-(c[r>>2]|0)-1|0)*5;if((c[n>>2]|0)<0){dd(c[l>>2]|0);c[j>>2]=dq(52032)|0;s=c[j>>2]|0;i=o;return s|0}a[c[h>>2]>>0]=a[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0;if((c[p>>2]|0)!=0){s=zo((c[m>>2]|0)+((c[n>>2]|0)+1)|0)|0;c[c[p>>2]>>2]=s}dd(c[l>>2]|0);if((d[c[h>>2]>>0]|0|0)>=1){if((d[c[h>>2]>>0]|0|0)<=5){c[j>>2]=0;s=c[j>>2]|0;i=o;return s|0}}c[j>>2]=dq(52040)|0;s=c[j>>2]|0;i=o;return s|0}function uD(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+25|0;l=f+20|0;h=f+8|0;k=f+12|0;j=f+16|0;m=f;n=f+24|0;c[l>>2]=b;c[h>>2]=e;c[k>>2]=d[c[l>>2]>>0]|0;c[l>>2]=(c[l>>2]|0)+1;c[j>>2]=d[c[l>>2]>>0]|0;if((c[j>>2]&128|0)==0){c[k>>2]=c[k>>2]&127;c[k>>2]=c[k>>2]<<7;c[c[h>>2]>>2]=c[k>>2]|c[j>>2];a[g>>0]=2;b=a[g>>0]|0;i=f;return b|0}c[l>>2]=(c[l>>2]|0)+1;c[k>>2]=c[k>>2]<<14;c[k>>2]=c[k>>2]|(d[c[l>>2]>>0]|0);if((c[k>>2]&128|0)==0){c[k>>2]=c[k>>2]&2080895;c[j>>2]=c[j>>2]&127;c[j>>2]=c[j>>2]<<7;c[c[h>>2]>>2]=c[k>>2]|c[j>>2];a[g>>0]=3;b=a[g>>0]|0;i=f;return b|0}c[l>>2]=(c[l>>2]|0)+ -2;a[n>>0]=mD(c[l>>2]|0,m)|0;b=m;if(0!=(c[b+4>>2]|0)?1:(c[m>>2]|0)!=(c[b>>2]|0)){c[c[h>>2]>>2]=-1}else{c[c[h>>2]>>2]=c[m>>2]}a[g>>0]=a[n>>0]|0;b=a[g>>0]|0;i=f;return b|0}function vD(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;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;k=i;i=i+64|0;j=k+56|0;m=k+52|0;n=k+48|0;l=k+44|0;r=k+36|0;u=k+32|0;o=k+24|0;s=k+28|0;t=k+8|0;q=k;p=k+16|0;c[m>>2]=b;c[n>>2]=f;c[l>>2]=g;c[k+40>>2]=h;c[r>>2]=(c[n>>2]|0)+(a[c[n>>2]>>0]&63);c[u>>2]=d[(c[n>>2]|0)+1>>0]|0;g=(c[(c[l>>2]|0)+8>>2]|0)+16|0;f=c[g+4>>2]|0;b=q;c[b>>2]=c[g>>2];c[b+4>>2]=f;do{switch(c[u>>2]|0){case 2:{b=a[c[r>>2]>>0]<<8|d[(c[r>>2]|0)+1>>0];u=p;c[u>>2]=b;c[u+4>>2]=((b|0)<0)<<31>>31;break};case 3:{b=a[c[r>>2]>>0]<<16|d[(c[r>>2]|0)+1>>0]<<8|d[(c[r>>2]|0)+2>>0];u=p;c[u>>2]=b;c[u+4>>2]=((b|0)<0)<<31>>31;break};case 5:{b=a[c[r>>2]>>0]<<8|d[(c[r>>2]|0)+1>>0];u=p;c[u>>2]=dL(d[(c[r>>2]|0)+2>>0]<<24|d[(c[r>>2]|0)+3>>0]<<16|d[(c[r>>2]|0)+4>>0]<<8|d[(c[r>>2]|0)+5>>0]|0,0,nL(0,1,b|0,((b|0)<0)<<31>>31|0)|0,D|0)|0;c[u+4>>2]=D;break};case 9:{u=p;c[u>>2]=1;c[u+4>>2]=0;break};case 7:case 0:{c[j>>2]=xD(c[m>>2]|0,c[n>>2]|0,c[l>>2]|0,0)|0;u=c[j>>2]|0;i=k;return u|0};case 4:{c[s>>2]=d[c[r>>2]>>0]<<24|d[(c[r>>2]|0)+1>>0]<<16|d[(c[r>>2]|0)+2>>0]<<8|d[(c[r>>2]|0)+3>>0];b=c[s>>2]|0;u=p;c[u>>2]=b;c[u+4>>2]=((b|0)<0)<<31>>31;break};case 8:{u=p;c[u>>2]=0;c[u+4>>2]=0;break};case 1:{b=a[c[r>>2]>>0]|0;u=p;c[u>>2]=b;c[u+4>>2]=((b|0)<0)<<31>>31;break};case 6:{b=t;c[b>>2]=d[c[r>>2]>>0]<<24|d[(c[r>>2]|0)+1>>0]<<16|d[(c[r>>2]|0)+2>>0]<<8|d[(c[r>>2]|0)+3>>0];c[b+4>>2]=0;b=c[t>>2]|0;f=t;c[f>>2]=d[(c[r>>2]|0)+4>>0]<<24|d[(c[r>>2]|0)+5>>0]<<16|d[(c[r>>2]|0)+6>>0]<<8|d[(c[r>>2]|0)+7>>0];c[f+4>>2]=b;f=t;b=c[f+4>>2]|0;u=p;c[u>>2]=c[f>>2];c[u+4>>2]=b;break};default:{c[j>>2]=xD(c[m>>2]|0,c[n>>2]|0,c[l>>2]|0,0)|0;u=c[j>>2]|0;i=k;return u|0}}}while(0);b=q;g=c[b+4>>2]|0;u=p;f=c[u+4>>2]|0;do{if((g|0)>(f|0)|((g|0)==(f|0)?(c[b>>2]|0)>>>0>(c[u>>2]|0)>>>0:0)){c[o>>2]=c[(c[l>>2]|0)+12>>2]}else{b=q;g=c[b+4>>2]|0;u=p;f=c[u+4>>2]|0;p=c[l>>2]|0;if((g|0)<(f|0)|((g|0)==(f|0)?(c[b>>2]|0)>>>0<(c[u>>2]|0)>>>0:0)){c[o>>2]=c[p+16>>2];break}if((e[p+4>>1]|0)>1){c[o>>2]=xD(c[m>>2]|0,c[n>>2]|0,c[l>>2]|0,1)|0;break}else{c[o>>2]=a[(c[l>>2]|0)+6>>0]|0;break}}}while(0);c[j>>2]=c[o>>2];u=c[j>>2]|0;i=k;return u|0}function wD(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+48|0;k=j+40|0;n=j+36|0;m=j+32|0;r=j+28|0;o=j+20|0;t=j+12|0;l=j+8|0;q=j+4|0;p=j;s=j+16|0;c[n>>2]=b;c[m>>2]=f;c[r>>2]=g;c[j+24>>2]=h;c[o>>2]=c[m>>2];h=(c[o>>2]|0)+1|0;if((d[(c[o>>2]|0)+1>>0]|0)<128){c[t>>2]=d[h>>0]|0}else{uD(h,t)|0}do{if((c[t>>2]|0)<12){c[l>>2]=c[(c[r>>2]|0)+12>>2]}else{if((c[t>>2]&1|0)==0){c[l>>2]=c[(c[r>>2]|0)+16>>2];break}c[s>>2]=d[c[o>>2]>>0]|0;c[p>>2]=((c[t>>2]|0)-12|0)/2|0;if(((c[s>>2]|0)+(c[p>>2]|0)|0)>(c[n>>2]|0)){b=(dq(65455)|0)&255;a[(c[r>>2]|0)+7>>0]=b;c[k>>2]=0;b=c[k>>2]|0;i=j;return b|0}if((c[(c[(c[r>>2]|0)+8>>2]|0)+24>>2]|0)<(c[p>>2]|0)){t=c[(c[(c[r>>2]|0)+8>>2]|0)+24>>2]|0}else{t=c[p>>2]|0}c[q>>2]=t;c[l>>2]=XK((c[o>>2]|0)+(c[s>>2]|0)|0,c[(c[(c[r>>2]|0)+8>>2]|0)+4>>2]|0,c[q>>2]|0)|0;if((c[l>>2]|0)!=0){m=c[r>>2]|0;if((c[l>>2]|0)>0){c[l>>2]=c[m+16>>2];break}else{c[l>>2]=c[m+12>>2];break}}c[l>>2]=(c[p>>2]|0)-(c[(c[(c[r>>2]|0)+8>>2]|0)+24>>2]|0);if((c[l>>2]|0)==0){if((e[(c[r>>2]|0)+4>>1]|0)>1){c[l>>2]=xD(c[n>>2]|0,c[m>>2]|0,c[r>>2]|0,1)|0;break}else{c[l>>2]=a[(c[r>>2]|0)+6>>0]|0;break}}else{m=c[r>>2]|0;if((c[l>>2]|0)>0){c[l>>2]=c[m+16>>2];break}else{c[l>>2]=c[m+12>>2];break}}}}while(0);c[k>>2]=c[l>>2];b=c[k>>2]|0;i=j;return b|0}function xD(f,g,j,k){f=f|0;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;p=i;i=i+160|0;o=p+148|0;B=p+144|0;K=p+140|0;n=p+136|0;J=p+132|0;G=p+128|0;E=p+124|0;q=p+120|0;H=p+116|0;m=p+112|0;w=p+108|0;l=p+104|0;u=p+100|0;s=p+32|0;I=p+88|0;C=p+84|0;t=p;v=p+8|0;r=p+16|0;y=p+24|0;x=p+72|0;F=p+96|0;A=p+80|0;z=p+92|0;c[B>>2]=f;c[K>>2]=g;c[n>>2]=j;c[J>>2]=k;c[m>>2]=0;c[w>>2]=c[(c[n>>2]|0)+8>>2];c[l>>2]=c[c[n>>2]>>2];c[u>>2]=c[K>>2];k=c[u>>2]|0;do{if((c[J>>2]|0)!=0){j=(c[u>>2]|0)+1|0;if((d[k+1>>0]|0)<128){c[I>>2]=d[j>>0]|0;k=1}else{k=(uD(j,I)|0)&255}c[H>>2]=1+(k&255);c[q>>2]=d[c[u>>2]>>0]|0;K=c[q>>2]|0;c[G>>2]=K+(yD(c[I>>2]|0)|0);c[E>>2]=1;c[w>>2]=(c[w>>2]|0)+40}else{I=c[u>>2]|0;if((d[k>>0]|0)<128){c[q>>2]=d[I>>0]|0;I=1}else{I=(uD(I,q)|0)&255}c[H>>2]=I&255;c[G>>2]=c[q>>2];if(!((c[G>>2]|0)>>>0>(c[B>>2]|0)>>>0)){c[E>>2]=0;break}K=(dq(65169)|0)&255;a[(c[n>>2]|0)+7>>0]=K;c[o>>2]=0;K=c[o>>2]|0;i=p;return K|0}}while(0);a:while(1){do{if((b[(c[w>>2]|0)+28>>1]&4|0)!=0){c[C>>2]=d[(c[u>>2]|0)+(c[H>>2]|0)>>0]|0;if((c[C>>2]|0)>>>0>=12){c[m>>2]=1;break}if((c[C>>2]|0)==0){c[m>>2]=-1;break}if((c[C>>2]|0)==7){K=(c[w>>2]|0)+16|0;h[t>>3]=+((c[K>>2]|0)>>>0)+4294967296.0*+(c[K+4>>2]|0);zD((c[u>>2]|0)+(c[G>>2]|0)|0,c[C>>2]|0,s)|0;if(+h[s+8>>3]<+h[t>>3]){c[m>>2]=-1;break}if(!(+h[s+8>>3]>+h[t>>3])){break}c[m>>2]=1;break}else{g=AD(c[C>>2]|0,(c[u>>2]|0)+(c[G>>2]|0)|0)|0;K=v;c[K>>2]=g;c[K+4>>2]=D;K=(c[w>>2]|0)+16|0;g=c[K+4>>2]|0;J=r;c[J>>2]=c[K>>2];c[J+4>>2]=g;J=v;g=c[J+4>>2]|0;K=r;f=c[K+4>>2]|0;if((g|0)<(f|0)|((g|0)==(f|0)?(c[J>>2]|0)>>>0<(c[K>>2]|0)>>>0:0)){c[m>>2]=-1;break}J=v;g=c[J+4>>2]|0;K=r;f=c[K+4>>2]|0;if(!((g|0)>(f|0)|((g|0)==(f|0)?(c[J>>2]|0)>>>0>(c[K>>2]|0)>>>0:0))){break}c[m>>2]=1;break}}else{if((b[(c[w>>2]|0)+28>>1]&8|0)!=0){c[C>>2]=d[(c[u>>2]|0)+(c[H>>2]|0)>>0]|0;if((c[C>>2]|0)>>>0>=12){c[m>>2]=1;break}if((c[C>>2]|0)==0){c[m>>2]=-1;break}h[y>>3]=+h[(c[w>>2]|0)+8>>3];zD((c[u>>2]|0)+(c[G>>2]|0)|0,c[C>>2]|0,s)|0;if((c[C>>2]|0)==7){h[x>>3]=+h[s+8>>3]}else{K=s+16|0;h[x>>3]=+((c[K>>2]|0)>>>0)+4294967296.0*+(c[K+4>>2]|0)}if(+h[x>>3]<+h[y>>3]){c[m>>2]=-1;break}if(!(+h[x>>3]>+h[y>>3])){break}c[m>>2]=1;break}if((b[(c[w>>2]|0)+28>>1]&2|0)==0){k=d[(c[u>>2]|0)+(c[H>>2]|0)>>0]|0;if((b[(c[w>>2]|0)+28>>1]&16|0)==0){c[C>>2]=k;c[m>>2]=(c[C>>2]|0)!=0&1;break}I=(c[u>>2]|0)+(c[H>>2]|0)|0;if((k|0)<128){c[C>>2]=d[I>>0]|0}else{uD(I,C)|0}if(!((c[C>>2]|0)>>>0<12)){if((c[C>>2]&1|0)==0){c[A>>2]=(((c[C>>2]|0)-12|0)>>>0)/2|0;if(((c[G>>2]|0)+(c[A>>2]|0)|0)>>>0>(c[B>>2]|0)>>>0){q=63;break a}if((c[A>>2]|0)<(c[(c[w>>2]|0)+24>>2]|0)){I=c[A>>2]|0}else{I=c[(c[w>>2]|0)+24>>2]|0}c[z>>2]=I;c[m>>2]=XK((c[u>>2]|0)+(c[G>>2]|0)|0,c[(c[w>>2]|0)+4>>2]|0,c[z>>2]|0)|0;if((c[m>>2]|0)!=0){break}c[m>>2]=(c[A>>2]|0)-(c[(c[w>>2]|0)+24>>2]|0);break}}c[m>>2]=-1;break}I=(c[u>>2]|0)+(c[H>>2]|0)|0;if((d[(c[u>>2]|0)+(c[H>>2]|0)>>0]|0)<128){c[C>>2]=d[I>>0]|0}else{uD(I,C)|0}if((c[C>>2]|0)>>>0<12){c[m>>2]=-1;break}if((c[C>>2]&1|0)==0){c[m>>2]=1;break}c[s+24>>2]=(((c[C>>2]|0)-12|0)>>>0)/2|0;if(((c[G>>2]|0)+(c[s+24>>2]|0)|0)>>>0>(c[B>>2]|0)>>>0){q=47;break a}if((c[(c[l>>2]|0)+20+(c[E>>2]<<2)>>2]|0)!=0){a[s+30>>0]=a[(c[l>>2]|0)+4>>0]|0;c[s>>2]=c[(c[l>>2]|0)+12>>2];b[s+28>>1]=2;c[s+4>>2]=(c[u>>2]|0)+(c[G>>2]|0);c[m>>2]=Ut(s,c[w>>2]|0,c[(c[l>>2]|0)+20+(c[E>>2]<<2)>>2]|0)|0;break}if((c[s+24>>2]|0)<(c[(c[w>>2]|0)+24>>2]|0)){I=c[s+24>>2]|0}else{I=c[(c[w>>2]|0)+24>>2]|0}c[F>>2]=I;c[m>>2]=XK((c[u>>2]|0)+(c[G>>2]|0)|0,c[(c[w>>2]|0)+4>>2]|0,c[F>>2]|0)|0;if((c[m>>2]|0)==0){c[m>>2]=(c[s+24>>2]|0)-(c[(c[w>>2]|0)+24>>2]|0)}}}while(0);I=c[E>>2]|0;if((c[m>>2]|0)!=0){q=71;break}c[E>>2]=I+1;c[w>>2]=(c[w>>2]|0)+40;K=yD(c[C>>2]|0)|0;c[G>>2]=(c[G>>2]|0)+K;K=BD(c[C>>2]|0,0)|0;c[H>>2]=(c[H>>2]|0)+K;if(!((c[H>>2]|0)>>>0<(c[q>>2]|0)>>>0)){q=77;break}if((c[E>>2]|0)>=(e[(c[n>>2]|0)+4>>1]|0)){q=77;break}if(!((c[G>>2]|0)>>>0<=(c[B>>2]|0)>>>0)){q=77;break}}if((q|0)==47){K=(dq(65248)|0)&255;a[(c[n>>2]|0)+7>>0]=K;c[o>>2]=0;K=c[o>>2]|0;i=p;return K|0}else if((q|0)==63){K=(dq(65275)|0)&255;a[(c[n>>2]|0)+7>>0]=K;c[o>>2]=0;K=c[o>>2]|0;i=p;return K|0}else if((q|0)==71){if((a[(c[(c[l>>2]|0)+16>>2]|0)+I>>0]|0)!=0){c[m>>2]=0-(c[m>>2]|0)}c[o>>2]=c[m>>2];K=c[o>>2]|0;i=p;return K|0}else if((q|0)==77){c[o>>2]=a[(c[n>>2]|0)+6>>0]|0;K=c[o>>2]|0;i=p;return K|0}return 0}function yD(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;e=b+4|0;f=b;c[f>>2]=a;a=c[f>>2]|0;if((c[f>>2]|0)>>>0>=12){c[e>>2]=((a-12|0)>>>0)/2|0;f=c[e>>2]|0;i=b;return f|0}else{c[e>>2]=d[30816+a>>0]|0;f=c[e>>2]|0;i=b;return f|0}return 0}function zD(e,f,g){e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+32|0;k=n+28|0;j=n+16|0;p=n+8|0;l=n+12|0;o=n;m=n+20|0;q=n+24|0;c[j>>2]=e;c[p>>2]=f;c[l>>2]=g;switch(c[p>>2]|0){case 0:case 11:case 10:{b[(c[l>>2]|0)+28>>1]=1;c[k>>2]=0;e=c[k>>2]|0;i=n;return e|0};case 4:{c[m>>2]=d[c[j>>2]>>0]<<24|d[(c[j>>2]|0)+1>>0]<<16|d[(c[j>>2]|0)+2>>0]<<8|d[(c[j>>2]|0)+3>>0];f=c[m>>2]|0;e=(c[l>>2]|0)+16|0;c[e>>2]=f;c[e+4>>2]=((f|0)<0)<<31>>31;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=4;e=c[k>>2]|0;i=n;return e|0};case 5:{e=d[(c[j>>2]|0)+2>>0]<<24|d[(c[j>>2]|0)+3>>0]<<16|d[(c[j>>2]|0)+4>>0]<<8|d[(c[j>>2]|0)+5>>0];f=a[c[j>>2]>>0]<<8|d[(c[j>>2]|0)+1>>0];f=dL(e|0,0,nL(0,1,f|0,((f|0)<0)<<31>>31|0)|0,D|0)|0;e=(c[l>>2]|0)+16|0;c[e>>2]=f;c[e+4>>2]=D;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=6;e=c[k>>2]|0;i=n;return e|0};case 7:case 6:{f=o;c[f>>2]=d[c[j>>2]>>0]<<24|d[(c[j>>2]|0)+1>>0]<<16|d[(c[j>>2]|0)+2>>0]<<8|d[(c[j>>2]|0)+3>>0];c[f+4>>2]=0;c[m>>2]=d[(c[j>>2]|0)+4>>0]<<24|d[(c[j>>2]|0)+5>>0]<<16|d[(c[j>>2]|0)+6>>0]<<8|d[(c[j>>2]|0)+7>>0];f=c[o>>2]|0;e=o;c[e>>2]=c[m>>2];c[e+4>>2]=f;if((c[p>>2]|0)==6){q=o;f=c[q+4>>2]|0;e=(c[l>>2]|0)+16|0;c[e>>2]=c[q>>2];c[e+4>>2]=f;b[(c[l>>2]|0)+28>>1]=4}else{e=(c[l>>2]|0)+8|0;c[e+0>>2]=c[o+0>>2];c[e+4>>2]=c[o+4>>2];e=(CD(+h[(c[l>>2]|0)+8>>3])|0)!=0;b[(c[l>>2]|0)+28>>1]=e?1:8}c[k>>2]=8;e=c[k>>2]|0;i=n;return e|0};case 2:{f=a[c[j>>2]>>0]<<8|d[(c[j>>2]|0)+1>>0];e=(c[l>>2]|0)+16|0;c[e>>2]=f;c[e+4>>2]=((f|0)<0)<<31>>31;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=2;e=c[k>>2]|0;i=n;return e|0};case 3:{f=a[c[j>>2]>>0]<<16|d[(c[j>>2]|0)+1>>0]<<8|d[(c[j>>2]|0)+2>>0];e=(c[l>>2]|0)+16|0;c[e>>2]=f;c[e+4>>2]=((f|0)<0)<<31>>31;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=3;e=c[k>>2]|0;i=n;return e|0};case 9:case 8:{e=(c[l>>2]|0)+16|0;c[e>>2]=(c[p>>2]|0)-8;c[e+4>>2]=0;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=0;e=c[k>>2]|0;i=n;return e|0};case 1:{f=a[c[j>>2]>>0]|0;e=(c[l>>2]|0)+16|0;c[e>>2]=f;c[e+4>>2]=((f|0)<0)<<31>>31;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=1;e=c[k>>2]|0;i=n;return e|0};default:{c[q>>2]=(((c[p>>2]|0)-12|0)>>>0)/2|0;c[(c[l>>2]|0)+4>>2]=c[j>>2];c[(c[l>>2]|0)+24>>2]=c[q>>2];c[(c[l>>2]|0)+32>>2]=0;b[(c[l>>2]|0)+28>>1]=b[30808+((c[p>>2]&1)<<1)>>1]|0;c[k>>2]=c[q>>2];e=c[k>>2]|0;i=n;return e|0}}return 0}function AD(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;f=g+8|0;l=g+24|0;h=g+20|0;j=g+16|0;k=g;c[l>>2]=b;c[h>>2]=e;switch(c[l>>2]|0){case 5:{k=d[(c[h>>2]|0)+2>>0]<<24|d[(c[h>>2]|0)+3>>0]<<16|d[(c[h>>2]|0)+4>>0]<<8|d[(c[h>>2]|0)+5>>0];l=a[c[h>>2]>>0]<<8|d[(c[h>>2]|0)+1>>0];b=f;c[b>>2]=dL(k|0,0,nL(0,1,l|0,((l|0)<0)<<31>>31|0)|0,D|0)|0;c[b+4>>2]=D;break};case 4:{c[j>>2]=d[c[h>>2]>>0]<<24|d[(c[h>>2]|0)+1>>0]<<16|d[(c[h>>2]|0)+2>>0]<<8|d[(c[h>>2]|0)+3>>0];l=c[j>>2]|0;b=f;c[b>>2]=l;c[b+4>>2]=((l|0)<0)<<31>>31;break};case 1:case 0:{l=a[c[h>>2]>>0]|0;b=f;c[b>>2]=l;c[b+4>>2]=((l|0)<0)<<31>>31;break};case 6:{b=k;c[b>>2]=d[c[h>>2]>>0]<<24|d[(c[h>>2]|0)+1>>0]<<16|d[(c[h>>2]|0)+2>>0]<<8|d[(c[h>>2]|0)+3>>0];c[b+4>>2]=0;b=c[k>>2]|0;l=k;c[l>>2]=d[(c[h>>2]|0)+4>>0]<<24|d[(c[h>>2]|0)+5>>0]<<16|d[(c[h>>2]|0)+6>>0]<<8|d[(c[h>>2]|0)+7>>0];c[l+4>>2]=b;l=c[k+4>>2]|0;b=f;c[b>>2]=c[k>>2];c[b+4>>2]=l;break};case 3:{l=a[c[h>>2]>>0]<<16|d[(c[h>>2]|0)+1>>0]<<8|d[(c[h>>2]|0)+2>>0];b=f;c[b>>2]=l;c[b+4>>2]=((l|0)<0)<<31>>31;break};case 2:{l=a[c[h>>2]>>0]<<8|d[(c[h>>2]|0)+1>>0];b=f;c[b>>2]=l;c[b+4>>2]=((l|0)<0)<<31>>31;break};default:{b=f;c[b>>2]=(c[l>>2]|0)-8;c[b+4>>2]=0}}b=f;D=c[b+4>>2]|0;i=g;return c[b>>2]|0}function BD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d;e=d+8|0;g=f;c[g>>2]=a;c[g+4>>2]=b;c[e>>2]=0;while(1){c[e>>2]=(c[e>>2]|0)+1;a=f;a=eL(c[a>>2]|0,c[a+4>>2]|0,7)|0;g=f;c[g>>2]=a;c[g+4>>2]=D;g=f;if(!((c[g>>2]|0)!=0|(c[g+4>>2]|0)!=0)){b=4;break}if((c[e>>2]|0)>=9){b=4;break}}if((b|0)==4){i=d;return c[e>>2]|0}return 0}function CD(a){a=+a;var b=0,d=0,e=0,f=0,g=0;d=i;i=i+32|0;g=d+16|0;b=d+24|0;f=d+8|0;e=d;h[g>>3]=a;h[f>>3]=+h[g>>3];h[e>>3]=+h[f>>3];c[b>>2]=+h[f>>3]!=+h[e>>3]&1;i=d;return c[b>>2]|0}function DD(f){f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;j=g+12|0;l=g;h=g+4|0;k=g+8|0;c[j>>2]=f;c[h>>2]=0;while(1){if((c[h>>2]|0)!=0){f=5;break}f=c[(c[j>>2]|0)+128+(b[(c[j>>2]|0)+84>>1]<<2)>>2]|0;c[k>>2]=f;if(!((a[f+3>>0]|0)!=0^1)){f=5;break}c[l>>2]=zo((c[(c[k>>2]|0)+56>>2]|0)+(e[(c[k>>2]|0)+18>>1]&(d[(c[(c[k>>2]|0)+64>>2]|0)+(e[(c[j>>2]|0)+86+(b[(c[j>>2]|0)+84>>1]<<1)>>1]<<1)>>0]<<8|d[(c[(c[k>>2]|0)+64>>2]|0)+(e[(c[j>>2]|0)+86+(b[(c[j>>2]|0)+84>>1]<<1)>>1]<<1)+1>>0]))|0)|0;c[h>>2]=$C(c[j>>2]|0,c[l>>2]|0)|0}if((f|0)==5){i=g;return c[h>>2]|0}return 0}function ED(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;f=d+16|0;j=d;h=d+4|0;e=d+8|0;g=d+12|0;c[f>>2]=a;c[j>>2]=b;c[e>>2]=Vu(c[c[f>>2]>>2]|0,0,(c[j>>2]|0)+12|0,0)|0;if((c[e>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[h>>2]=ef(c[c[f>>2]>>2]|0,c[(c[(c[j>>2]|0)+4>>2]|0)+20>>2]|0)|0;if(!((c[h>>2]|0)==0|(c[h>>2]|0)>=2)){a=c[e>>2]|0;i=d;return a|0}c[g>>2]=c[c[f>>2]>>2];a=pe(c[g>>2]|0,c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)>>2]|0)|0;c[(c[e>>2]|0)+8+(((c[c[e>>2]>>2]|0)-1|0)*72|0)+4>>2]=a;a=c[e>>2]|0;i=d;return a|0}function FD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d;f=d+4|0;c[g>>2]=a;c[e>>2]=b;if((c[e>>2]|0)==0){i=d;return}c[f>>2]=c[(c[e>>2]|0)+28>>2];gu(c[g>>2]|0,c[(c[f>>2]|0)+20>>2]|0);cu(c[g>>2]|0,c[(c[f>>2]|0)+24>>2]|0);du(c[g>>2]|0,c[(c[f>>2]|0)+8>>2]|0);gu(c[g>>2]|0,c[(c[e>>2]|0)+12>>2]|0);cc(c[g>>2]|0,c[e>>2]|0);i=d;return}function GD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;d=e+12|0;f=e;g=e+4|0;h=e+8|0;c[f>>2]=a;c[g>>2]=b;if((c[f>>2]|0)!=0){if((c[g>>2]|0)!=0){c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[c[g>>2]>>2]|0)){b=9;break}if((Qx(c[f>>2]|0,c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*20|0)+4>>2]|0)|0)>=0){b=7;break}c[h>>2]=(c[h>>2]|0)+1}if((b|0)==7){c[d>>2]=1;a=c[d>>2]|0;i=e;return a|0}else if((b|0)==9){c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}}}c[d>>2]=1;a=c[d>>2]|0;i=e;return a|0}function HD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;c[g>>2]=a;c[f>>2]=b;b=(c[f>>2]|0)==0;do{if((c[g>>2]|0)==0){c[e>>2]=b&1}else{if(b){c[e>>2]=0;break}else{c[e>>2]=(Dc(c[g>>2]|0,c[f>>2]|0)|0)==0&1;break}}}while(0);i=d;return c[e>>2]|0}function ID(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;h=g+12|0;k=g;j=g+4|0;l=g+8|0;c[k>>2]=a;c[j>>2]=f;if((e[(c[k>>2]|0)+50>>1]|0)!=(e[(c[j>>2]|0)+50>>1]|0)){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}if((d[(c[k>>2]|0)+54>>0]|0)!=(d[(c[j>>2]|0)+54>>0]|0)){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(e[(c[j>>2]|0)+50>>1]|0)){f=14;break}if((b[(c[(c[j>>2]|0)+4>>2]|0)+(c[l>>2]<<1)>>1]|0)!=(b[(c[(c[k>>2]|0)+4>>2]|0)+(c[l>>2]<<1)>>1]|0)){f=8;break}if((d[(c[(c[j>>2]|0)+28>>2]|0)+(c[l>>2]|0)>>0]|0)!=(d[(c[(c[k>>2]|0)+28>>2]|0)+(c[l>>2]|0)>>0]|0)){f=10;break}if((HD(c[(c[(c[j>>2]|0)+32>>2]|0)+(c[l>>2]<<2)>>2]|0,c[(c[(c[k>>2]|0)+32>>2]|0)+(c[l>>2]<<2)>>2]|0)|0)==0){f=12;break}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==8){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}else if((f|0)==10){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}else if((f|0)==12){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}else if((f|0)==14){if((jx(c[(c[j>>2]|0)+36>>2]|0,c[(c[k>>2]|0)+36>>2]|0,-1)|0)!=0){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}else{c[h>>2]=1;a=c[h>>2]|0;i=g;return a|0}}return 0}function JD(a,d,e,f,g,h,j,k){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;l=i;i=i+96|0;z=l+88|0;y=l+84|0;v=l+80|0;C=l+76|0;A=l+72|0;D=l+68|0;m=l+64|0;q=l+60|0;n=l+56|0;x=l+52|0;u=l+12|0;E=l;r=l+4|0;w=l+8|0;s=l+16|0;o=l+20|0;t=l+24|0;p=l+28|0;B=l+32|0;c[z>>2]=a;c[y>>2]=d;c[v>>2]=e;c[C>>2]=f;c[A>>2]=g;c[D>>2]=h;c[m>>2]=j;c[q>>2]=k;c[n>>2]=c[(c[z>>2]|0)+8>>2];c[x>>2]=0;c[u>>2]=0;c[t>>2]=c[c[z>>2]>>2];c[p>>2]=ww(c[t>>2]|0,c[v>>2]|0)|0;a=c[z>>2]|0;c[x>>2]=Pu(a,0,Su(c[t>>2]|0,27,30992)|0)|0;if((c[A>>2]|0)!=0){d=c[z>>2]|0;a=c[x>>2]|0;c[x>>2]=Pu(d,a,hx(c[t>>2]|0,c[A>>2]|0,0)|0)|0}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(b[(c[v>>2]|0)+38>>1]|0)){break}j=c[t>>2]|0;k=c[w>>2]|0;if((c[(c[D>>2]|0)+(c[w>>2]<<2)>>2]|0)>=0){c[E>>2]=hx(j,c[(c[(c[C>>2]|0)+4>>2]|0)+((c[(c[D>>2]|0)+(k<<2)>>2]|0)*20|0)>>2]|0,0)|0}else{c[E>>2]=Su(j,27,c[(c[(c[v>>2]|0)+4>>2]|0)+(k*24|0)>>2]|0)|0}c[x>>2]=Pu(c[z>>2]|0,c[x>>2]|0,c[E>>2]|0)|0;c[w>>2]=(c[w>>2]|0)+1}c[u>>2]=Ou(c[z>>2]|0,c[x>>2]|0,c[y>>2]|0,c[m>>2]|0,0,0,0,0,0,0)|0;a=(c[z>>2]|0)+68|0;d=c[a>>2]|0;c[a>>2]=d+1;c[r>>2]=d;Qv(c[n>>2]|0,55,c[r>>2]|0,(b[(c[v>>2]|0)+38>>1]|0)+1+((c[A>>2]|0)!=0&1)|0)|0;gf(c[n>>2]|0,8);Hz(B,14,c[r>>2]|0);Mu(c[z>>2]|0,c[u>>2]|0,B)|0;d=(c[z>>2]|0)+72|0;a=(c[d>>2]|0)+1|0;c[d>>2]=a;c[o>>2]=a;a=(c[z>>2]|0)+72|0;c[a>>2]=(c[a>>2]|0)+((b[(c[v>>2]|0)+38>>1]|0)+1);c[s>>2]=Qv(c[n>>2]|0,105,c[r>>2]|0,0)|0;Tv(c[n>>2]|0,46,c[r>>2]|0,0,c[o>>2]|0)|0;Tv(c[n>>2]|0,46,c[r>>2]|0,(c[A>>2]|0)!=0?1:0,(c[o>>2]|0)+1|0)|0;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(b[(c[v>>2]|0)+38>>1]|0)){break}Tv(c[n>>2]|0,46,c[r>>2]|0,(c[w>>2]|0)+1+((c[A>>2]|0)!=0&1)|0,(c[o>>2]|0)+2+(c[w>>2]|0)|0)|0;c[w>>2]=(c[w>>2]|0)+1}aB(c[z>>2]|0,c[v>>2]|0);Sv(c[n>>2]|0,15,0,(b[(c[v>>2]|0)+38>>1]|0)+2|0,c[o>>2]|0,c[p>>2]|0,-10)|0;gf(c[n>>2]|0,((c[q>>2]|0)==10?2:c[q>>2]|0)&255);xw(c[z>>2]|0);Qv(c[n>>2]|0,9,c[r>>2]|0,(c[s>>2]|0)+1|0)|0;jw(c[n>>2]|0,c[s>>2]|0);Qv(c[n>>2]|0,58,c[r>>2]|0,0)|0;du(c[t>>2]|0,c[u>>2]|0);i=l;return}function KD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e;g=e+4|0;c[f>>2]=a;c[h>>2]=b;c[g>>2]=d;c[(c[h>>2]|0)+4>>2]=c[f>>2];c[c[h>>2]>>2]=c[(c[f>>2]|0)+492>>2];c[(c[f>>2]|0)+492>>2]=c[g>>2];i=e;return}function LD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+64|0;k=m+48|0;p=m+44|0;f=m+40|0;l=m+36|0;j=m+16|0;g=m+8|0;n=m+4|0;h=m;o=m+12|0;c[k>>2]=a;c[p>>2]=b;c[f>>2]=d;c[l>>2]=e;c[h>>2]=c[c[k>>2]>>2];c[o>>2]=ef(c[h>>2]|0,c[(c[p>>2]|0)+68>>2]|0)|0;c[f>>2]=hx(c[h>>2]|0,c[f>>2]|0,0)|0;c[n>>2]=Vu(c[h>>2]|0,0,0,0)|0;if((c[n>>2]|0)!=0){a=pe(c[h>>2]|0,c[c[p>>2]>>2]|0)|0;c[(c[n>>2]|0)+16>>2]=a;a=pe(c[h>>2]|0,c[(c[(c[h>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2]|0)|0;c[(c[n>>2]|0)+12>>2]=a}c[g>>2]=Ou(c[k>>2]|0,0,c[n>>2]|0,c[f>>2]|0,0,0,0,0,0,0)|0;Hz(j,12,c[l>>2]|0);Mu(c[k>>2]|0,c[g>>2]|0,j)|0;du(c[h>>2]|0,c[g>>2]|0);i=m;return}function MD(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;f=i;i=i+16|0;e=f+4|0;g=f;c[e>>2]=a;c[g>>2]=b;a=c[g>>2]|0;b=(c[e>>2]|0)+60|0;c[a+0>>2]=c[b+0>>2];c[a+4>>2]=c[b+4>>2];i=f;return d[(c[e>>2]|0)+38>>0]|0|0}function ND(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[d>>2]|0)+4>>2]|0)==0){i=b;return}c[(c[(c[d>>2]|0)+4>>2]|0)+492>>2]=c[c[d>>2]>>2];c[(c[d>>2]|0)+4>>2]=0;i=b;return}function OD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+48|0;f=g+32|0;o=g+28|0;l=g+24|0;k=g+20|0;j=g+16|0;h=g+8|0;m=g+4|0;p=g;n=g+12|0;c[o>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;do{if(((c[c[l>>2]>>2]|0)+(c[k>>2]|0)|0)>>>0>(c[(c[l>>2]|0)+4>>2]|0)>>>0){c[p>>2]=(c[c[l>>2]>>2]|0)+(c[k>>2]|0);c[m>>2]=Ot(c[o>>2]|0,c[l>>2]|0,80+(((c[p>>2]|0)-1|0)*72|0)|0)|0;if((c[m>>2]|0)!=0){c[l>>2]=c[m>>2];c[n>>2]=((((Vv(c[o>>2]|0,c[m>>2]|0)|0)-80|0)>>>0)/72|0)+1;c[(c[l>>2]|0)+4>>2]=c[n>>2];break}c[f>>2]=c[l>>2];a=c[f>>2]|0;i=g;return a|0}}while(0);c[h>>2]=(c[c[l>>2]>>2]|0)-1;while(1){if((c[h>>2]|0)<(c[j>>2]|0)){break}e=(c[l>>2]|0)+8+(((c[h>>2]|0)+(c[k>>2]|0)|0)*72|0)+0|0;n=(c[l>>2]|0)+8+((c[h>>2]|0)*72|0)+0|0;m=e+72|0;do{c[e>>2]=c[n>>2];e=e+4|0;n=n+4|0}while((e|0)<(m|0));c[h>>2]=(c[h>>2]|0)+ -1}a=c[l>>2]|0;c[a>>2]=(c[a>>2]|0)+(c[k>>2]|0);aL((c[l>>2]|0)+8+((c[j>>2]|0)*72|0)|0,0,(c[k>>2]|0)*72|0)|0;c[h>>2]=c[j>>2];while(1){if((c[h>>2]|0)>=((c[j>>2]|0)+(c[k>>2]|0)|0)){break}c[(c[l>>2]|0)+8+((c[h>>2]|0)*72|0)+40>>2]=-1;c[h>>2]=(c[h>>2]|0)+1}c[f>>2]=c[l>>2];a=c[f>>2]|0;i=g;return a|0}function PD(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;h=f;g=f+20|0;j=f+4|0;m=f+8|0;l=f+12|0;k=f+16|0;c[j>>2]=a;c[m>>2]=b;c[l>>2]=e;c[k>>2]=d[c[m>>2]>>0]|0;if((c[l>>2]|0)>1){if((c[k>>2]|0)==10|(c[k>>2]|0)==11){bf(c[j>>2]|0,31824,h);c[g>>2]=1;m=c[g>>2]|0;i=f;return m|0}}c[g>>2]=0;m=c[g>>2]|0;i=f;return m|0}function QD(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=0;_x(c[e>>2]|0,b);i=d;return c[b>>2]|0} + + + +function Fu(f,g,h,j,k,l,m,n,o,p){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0;q=i;i=i+240|0;D=q;L=q+232|0;la=q+228|0;ja=q+224|0;t=q+220|0;x=q+216|0;A=q+212|0;$=q+208|0;w=q+204|0;ma=q+200|0;W=q+196|0;r=q+192|0;E=q+188|0;u=q+184|0;s=q+180|0;S=q+176|0;Y=q+172|0;da=q+168|0;ha=q+144|0;I=q+136|0;v=q+132|0;F=q+128|0;C=q+124|0;U=q+120|0;H=q+236|0;O=q+64|0;M=q+56|0;V=q+52|0;ea=q+48|0;ca=q+44|0;ia=q+60|0;ka=q+32|0;ga=q+28|0;fa=q+24|0;N=q+36|0;J=q+40|0;G=q+112|0;K=q+68|0;X=q+72|0;P=q+76|0;R=q+80|0;T=q+84|0;Q=q+88|0;B=q+92|0;_=q+96|0;ba=q+100|0;Z=q+104|0;aa=q+108|0;z=q+116|0;c[L>>2]=f;c[la>>2]=g;c[ja>>2]=h;c[t>>2]=j;c[x>>2]=k;c[A>>2]=l;c[$>>2]=m;c[w>>2]=n;c[ma>>2]=o;c[W>>2]=p;c[r>>2]=0;c[E>>2]=0;c[u>>2]=0;c[s>>2]=0;c[v>>2]=c[c[L>>2]>>2];c[U>>2]=0;c[M>>2]=0;c[ea>>2]=0;c[ca>>2]=0;a:do{if((d[(c[v>>2]|0)+64>>0]|0)==0){if((d[(c[L>>2]|0)+451>>0]|0)==0){if(0==(gy(c[L>>2]|0)|0)){g=c[L>>2]|0;if((c[t>>2]|0)!=0){c[C>>2]=ky(g,c[la>>2]|0,c[ja>>2]|0,U)|0;if((c[C>>2]|0)<0){break}if((a[(c[v>>2]|0)+137>>0]|0)==0){c[E>>2]=jA(c[L>>2]|0,c[t>>2]|0)|0;if((c[(c[ja>>2]|0)+4>>2]|0)==0){if((c[E>>2]|0)!=0){if((c[(c[E>>2]|0)+68>>2]|0)==(c[(c[(c[v>>2]|0)+16>>2]|0)+28>>2]|0)){c[C>>2]=1}}}}kA(ha,c[L>>2]|0,c[C>>2]|0,16696,c[U>>2]|0);lA(ha,c[t>>2]|0)|0;c[E>>2]=Zv(c[L>>2]|0,0,(c[t>>2]|0)+8|0)|0;if((c[E>>2]|0)==0){break}if((c[C>>2]|0)==1){if((c[(c[(c[v>>2]|0)+16>>2]|0)+(c[C>>2]<<4)+12>>2]|0)!=(c[(c[E>>2]|0)+68>>2]|0)){f=c[L>>2]|0;c[D>>2]=c[c[E>>2]>>2];bf(f,32376,D);break}}if((a[(c[E>>2]|0)+44>>0]&32|0)!=0){c[ca>>2]=Dy(c[E>>2]|0)|0}}else{c[E>>2]=c[g+484>>2];if((c[E>>2]|0)==0){break}c[C>>2]=ef(c[v>>2]|0,c[(c[E>>2]|0)+68>>2]|0)|0}c[F>>2]=(c[(c[v>>2]|0)+16>>2]|0)+(c[C>>2]<<4);if((Tb(c[c[E>>2]>>2]|0,21672,7)|0)==0){if((Tb((c[c[E>>2]>>2]|0)+7|0,32432,9)|0)!=0){f=c[L>>2]|0;c[D>>2]=c[c[E>>2]>>2];bf(f,32448,D);break}}if((c[(c[E>>2]|0)+12>>2]|0)!=0){bf(c[L>>2]|0,32480,D);break}if((a[(c[E>>2]|0)+44>>0]&16|0)!=0){bf(c[L>>2]|0,32512,D);break}if((c[U>>2]|0)!=0){c[s>>2]=Iv(c[v>>2]|0,c[U>>2]|0)|0;if((c[s>>2]|0)==0){break}if(0!=(uw(c[L>>2]|0,c[s>>2]|0)|0)){break}if((a[(c[v>>2]|0)+137>>0]|0)==0){if((cw(c[v>>2]|0,c[s>>2]|0,0)|0)!=0){f=c[L>>2]|0;c[D>>2]=c[s>>2];bf(f,32552,D);break}}if((tw(c[v>>2]|0,c[s>>2]|0,c[c[F>>2]>>2]|0)|0)!=0){y=c[L>>2]|0;if((c[W>>2]|0)!=0){aw(y,c[C>>2]|0);break}else{c[D>>2]=c[s>>2];bf(y,32592,D);break}}}else{c[ka>>2]=c[(c[E>>2]|0)+8>>2];c[ia>>2]=1;while(1){if((c[ka>>2]|0)==0){break}c[ka>>2]=c[(c[ka>>2]|0)+20>>2];c[ia>>2]=(c[ia>>2]|0)+1}f=c[v>>2]|0;o=c[ia>>2]|0;c[D>>2]=c[c[E>>2]>>2];c[D+4>>2]=o;c[s>>2]=cf(f,32616,D)|0;if((c[s>>2]|0)==0){break}}c[ga>>2]=c[c[F>>2]>>2];if((Lv(c[L>>2]|0,18,(c[C>>2]|0)==1?21432:21456,0,c[ga>>2]|0)|0)==0){c[Y>>2]=1;c[Y>>2]=(c[C>>2]|0)==1?3:1;if((Lv(c[L>>2]|0,c[Y>>2]|0,c[s>>2]|0,c[c[E>>2]>>2]|0,c[ga>>2]|0)|0)==0){if((c[x>>2]|0)==0){c[x>>2]=Pu(c[L>>2]|0,0,0)|0;if((c[x>>2]|0)==0){break}f=pe(c[c[L>>2]>>2]|0,c[(c[(c[E>>2]|0)+4>>2]|0)+(((b[(c[E>>2]|0)+38>>1]|0)-1|0)*24|0)>>2]|0)|0;c[(c[(c[x>>2]|0)+4>>2]|0)+4>>2]=f;a[(c[(c[x>>2]|0)+4>>2]|0)+12>>0]=c[ma>>2]}c[Y>>2]=0;while(1){if((c[Y>>2]|0)>=(c[c[x>>2]>>2]|0)){break}c[fa>>2]=c[(c[(c[x>>2]|0)+4>>2]|0)+((c[Y>>2]|0)*20|0)>>2];if((c[fa>>2]|0)!=0){f=1+(Ub(c[(c[fa>>2]|0)+8>>2]|0)|0)|0;c[M>>2]=(c[M>>2]|0)+f}c[Y>>2]=(c[Y>>2]|0)+1}c[S>>2]=Ub(c[s>>2]|0)|0;if((c[ca>>2]|0)!=0){W=e[(c[ca>>2]|0)+50>>1]|0}else{W=1}c[V>>2]=W;c[u>>2]=VB(c[v>>2]|0,(c[c[x>>2]>>2]|0)+(c[V>>2]|0)&65535,(c[S>>2]|0)+(c[M>>2]|0)+1|0,ea)|0;if((a[(c[v>>2]|0)+64>>0]|0)==0){c[c[u>>2]>>2]=c[ea>>2];c[ea>>2]=(c[ea>>2]|0)+((c[S>>2]|0)+1);fL(c[c[u>>2]>>2]|0,c[s>>2]|0,(c[S>>2]|0)+1|0)|0;c[(c[u>>2]|0)+12>>2]=c[E>>2];a[(c[u>>2]|0)+54>>0]=c[A>>2];f=(c[u>>2]|0)+55|0;a[f>>0]=a[f>>0]&-9|((c[A>>2]|0)!=0&1)<<3&255;f=(c[u>>2]|0)+55|0;a[f>>0]=a[f>>0]&-4|((c[U>>2]|0)!=0?0:1)&3;c[(c[u>>2]|0)+24>>2]=c[(c[(c[v>>2]|0)+16>>2]|0)+(c[C>>2]<<4)+12>>2];b[(c[u>>2]|0)+50>>1]=c[c[x>>2]>>2];if((c[w>>2]|0)!=0){KE(c[L>>2]|0,c[E>>2]|0,16,c[w>>2]|0,0);c[(c[u>>2]|0)+36>>2]=c[w>>2];c[w>>2]=0}if((d[(c[(c[F>>2]|0)+12>>2]|0)+76>>0]|0)>=4){c[I>>2]=-1}else{c[I>>2]=0}c[Y>>2]=0;c[H>>2]=c[(c[x>>2]|0)+4>>2];while(1){if((c[Y>>2]|0)>=(c[c[x>>2]>>2]|0)){break}c[N>>2]=c[(c[H>>2]|0)+4>>2];c[da>>2]=0;c[O>>2]=c[(c[E>>2]|0)+4>>2];while(1){if((c[da>>2]|0)>=(b[(c[E>>2]|0)+38>>1]|0)){break}if((Dc(c[N>>2]|0,c[c[O>>2]>>2]|0)|0)==0){break}c[da>>2]=(c[da>>2]|0)+1;c[O>>2]=(c[O>>2]|0)+24}if((c[da>>2]|0)>=(b[(c[E>>2]|0)+38>>1]|0)){y=65;break}b[(c[(c[u>>2]|0)+4>>2]|0)+(c[Y>>2]<<1)>>1]=c[da>>2];if((c[c[H>>2]>>2]|0)!=0){c[G>>2]=c[(c[c[H>>2]>>2]|0)+8>>2];c[K>>2]=(Ub(c[G>>2]|0)|0)+1;fL(c[ea>>2]|0,c[G>>2]|0,c[K>>2]|0)|0;c[G>>2]=c[ea>>2];c[ea>>2]=(c[ea>>2]|0)+(c[K>>2]|0);c[M>>2]=(c[M>>2]|0)-(c[K>>2]|0)}else{f=c[(c[(c[E>>2]|0)+4>>2]|0)+((c[da>>2]|0)*24|0)+16>>2]|0;c[G>>2]=f;c[G>>2]=(c[G>>2]|0)!=0?f:3640}if((a[(c[v>>2]|0)+137>>0]|0)==0){if((ty(c[L>>2]|0,c[G>>2]|0)|0)==0){break a}}c[(c[(c[u>>2]|0)+32>>2]|0)+(c[Y>>2]<<2)>>2]=c[G>>2];c[J>>2]=d[(c[H>>2]|0)+12>>0]&c[I>>2];a[(c[(c[u>>2]|0)+28>>2]|0)+(c[Y>>2]|0)>>0]=c[J>>2];if((d[(c[(c[E>>2]|0)+4>>2]|0)+((c[da>>2]|0)*24|0)+20>>0]|0)==0){f=(c[u>>2]|0)+55|0;a[f>>0]=a[f>>0]&-9}c[Y>>2]=(c[Y>>2]|0)+1;c[H>>2]=(c[H>>2]|0)+20}if((y|0)==65){f=c[L>>2]|0;o=c[N>>2]|0;c[D>>2]=c[c[E>>2]>>2];c[D+4>>2]=o;bf(f,32640,D);a[(c[L>>2]|0)+17>>0]=1;break}b:do{if((c[ca>>2]|0)!=0){c[da>>2]=0;while(1){if((c[da>>2]|0)>=(e[(c[ca>>2]|0)+50>>1]|0)){break b}c[X>>2]=b[(c[(c[ca>>2]|0)+4>>2]|0)+(c[da>>2]<<1)>>1]|0;if((LE(c[(c[u>>2]|0)+4>>2]|0,e[(c[u>>2]|0)+50>>1]|0,c[X>>2]|0)|0)!=0){f=(c[u>>2]|0)+52|0;b[f>>1]=(b[f>>1]|0)+ -1<<16>>16}else{b[(c[(c[u>>2]|0)+4>>2]|0)+(c[Y>>2]<<1)>>1]=c[X>>2];c[(c[(c[u>>2]|0)+32>>2]|0)+(c[Y>>2]<<2)>>2]=c[(c[(c[ca>>2]|0)+32>>2]|0)+(c[da>>2]<<2)>>2];a[(c[(c[u>>2]|0)+28>>2]|0)+(c[Y>>2]|0)>>0]=a[(c[(c[ca>>2]|0)+28>>2]|0)+(c[da>>2]|0)>>0]|0;c[Y>>2]=(c[Y>>2]|0)+1}c[da>>2]=(c[da>>2]|0)+1}}else{b[(c[(c[u>>2]|0)+4>>2]|0)+(c[Y>>2]<<1)>>1]=-1;c[(c[(c[u>>2]|0)+32>>2]|0)+(c[Y>>2]<<2)>>2]=3640}}while(0);Oy(c[u>>2]|0);if((c[(c[L>>2]|0)+484>>2]|0)==0){ME(c[u>>2]|0)}c:do{if((c[E>>2]|0)==(c[(c[L>>2]|0)+484>>2]|0)){c[P>>2]=c[(c[E>>2]|0)+8>>2];while(1){if((c[P>>2]|0)==0){break c}if((e[(c[P>>2]|0)+50>>1]|0)==(e[(c[u>>2]|0)+50>>1]|0)){c[R>>2]=0;while(1){if((c[R>>2]|0)>=(e[(c[P>>2]|0)+50>>1]|0)){break}if((b[(c[(c[P>>2]|0)+4>>2]|0)+(c[R>>2]<<1)>>1]|0)!=(b[(c[(c[u>>2]|0)+4>>2]|0)+(c[R>>2]<<1)>>1]|0)){break}c[T>>2]=c[(c[(c[P>>2]|0)+32>>2]|0)+(c[R>>2]<<2)>>2];c[Q>>2]=c[(c[(c[u>>2]|0)+32>>2]|0)+(c[R>>2]<<2)>>2];if((c[T>>2]|0)!=(c[Q>>2]|0)){if((Dc(c[T>>2]|0,c[Q>>2]|0)|0)!=0){break}}c[R>>2]=(c[R>>2]|0)+1}if((c[R>>2]|0)==(e[(c[P>>2]|0)+50>>1]|0)){break}}c[P>>2]=c[(c[P>>2]|0)+20>>2]}if((d[(c[P>>2]|0)+54>>0]|0)==(d[(c[u>>2]|0)+54>>0]|0)){break a}do{if((d[(c[P>>2]|0)+54>>0]|0)!=10){if((d[(c[u>>2]|0)+54>>0]|0)==10){break}f=c[L>>2]|0;c[D>>2]=0;bf(f,32672,D)}}while(0);if((d[(c[P>>2]|0)+54>>0]|0)!=10){break a}a[(c[P>>2]|0)+54>>0]=a[(c[u>>2]|0)+54>>0]|0;break a}}while(0);do{if((a[(c[v>>2]|0)+137>>0]|0)!=0){o=(c[(c[u>>2]|0)+24>>2]|0)+24|0;f=c[c[u>>2]>>2]|0;C=Ub(c[c[u>>2]>>2]|0)|0;c[B>>2]=Eh(o,f,C,c[u>>2]|0)|0;C=c[v>>2]|0;if((c[B>>2]|0)!=0){a[C+64>>0]=1;break a}f=C+24|0;c[f>>2]=c[f>>2]|2;if((c[t>>2]|0)==0){break}c[(c[u>>2]|0)+44>>2]=c[(c[v>>2]|0)+132>>2]}else{if((c[(c[L>>2]|0)+64>>2]|0)!=0){break}if((a[(c[E>>2]|0)+44>>0]&32|0)!=0){if((c[t>>2]|0)==0){break}}o=(c[L>>2]|0)+72|0;f=(c[o>>2]|0)+1|0;c[o>>2]=f;c[Z>>2]=f;c[_>>2]=Ov(c[L>>2]|0)|0;if((c[_>>2]|0)==0){break a}$v(c[L>>2]|0,1,c[C>>2]|0);Qv(c[_>>2]|0,117,c[C>>2]|0,c[Z>>2]|0)|0;if((c[$>>2]|0)!=0){c[aa>>2]=(c[(c[L>>2]|0)+504>>2]|0)-(c[c[U>>2]>>2]|0)+(c[(c[L>>2]|0)+508>>2]|0);if((a[(c[c[U>>2]>>2]|0)+((c[aa>>2]|0)-1)>>0]|0)==59){c[aa>>2]=(c[aa>>2]|0)+ -1}f=c[v>>2]|0;h=c[aa>>2]|0;o=c[c[U>>2]>>2]|0;c[D>>2]=(c[A>>2]|0)==0?1784:32744;c[D+4>>2]=h;c[D+8>>2]=o;c[ba>>2]=cf(f,32720,D)|0}else{c[ba>>2]=0}f=c[L>>2]|0;l=(c[C>>2]|0)==1?21432:21456;k=c[c[u>>2]>>2]|0;j=c[c[E>>2]>>2]|0;h=c[Z>>2]|0;o=c[ba>>2]|0;c[D>>2]=c[(c[(c[v>>2]|0)+16>>2]|0)+(c[C>>2]<<4)>>2];c[D+4>>2]=l;c[D+8>>2]=k;c[D+12>>2]=j;c[D+16>>2]=h;c[D+20>>2]=o;Nv(f,32752,D);cc(c[v>>2]|0,c[ba>>2]|0);if((c[t>>2]|0)==0){break}Vy(c[L>>2]|0,c[u>>2]|0,c[Z>>2]|0);Pv(c[L>>2]|0,c[C>>2]|0);h=c[_>>2]|0;o=c[C>>2]|0;f=c[v>>2]|0;c[D>>2]=c[c[u>>2]>>2];Rv(h,o,cf(f,32800,D)|0);oy(c[_>>2]|0,139,0)|0}}while(0);if((d[(c[v>>2]|0)+137>>0]|0)==0){if((c[t>>2]|0)!=0){break}}do{if((c[A>>2]|0)!=5){y=123}else{if((c[(c[E>>2]|0)+8>>2]|0)==0){y=123;break}if((d[(c[(c[E>>2]|0)+8>>2]|0)+54>>0]|0)==5){y=123;break}c[z>>2]=c[(c[E>>2]|0)+8>>2];while(1){if((c[(c[z>>2]|0)+20>>2]|0)!=0){B=(d[(c[(c[z>>2]|0)+20>>2]|0)+54>>0]|0)!=5}else{B=0}A=c[(c[z>>2]|0)+20>>2]|0;if(!B){break}c[z>>2]=A}c[(c[u>>2]|0)+20>>2]=A;c[(c[z>>2]|0)+20>>2]=c[u>>2]}}while(0);if((y|0)==123){c[(c[u>>2]|0)+20>>2]=c[(c[E>>2]|0)+8>>2];c[(c[E>>2]|0)+8>>2]=c[u>>2]}c[r>>2]=c[u>>2];c[u>>2]=0}}}}}}}while(0);if((c[u>>2]|0)==0){f=c[v>>2]|0;o=c[w>>2]|0;gu(f,o);o=c[v>>2]|0;f=c[x>>2]|0;cu(o,f);f=c[v>>2]|0;o=c[t>>2]|0;fu(f,o);o=c[v>>2]|0;f=c[s>>2]|0;cc(o,f);f=c[r>>2]|0;i=q;return f|0}NE(c[v>>2]|0,c[u>>2]|0);f=c[v>>2]|0;o=c[w>>2]|0;gu(f,o);o=c[v>>2]|0;f=c[x>>2]|0;cu(o,f);f=c[v>>2]|0;o=c[t>>2]|0;fu(f,o);o=c[v>>2]|0;f=c[s>>2]|0;cc(o,f);f=c[r>>2]|0;i=q;return f|0}function Gu(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;h=j;g=j+4|0;k=j+8|0;c[f>>2]=b;c[h>>2]=e;c[g>>2]=c[(c[f>>2]|0)+484>>2];c[k>>2]=c[c[f>>2]>>2];if((c[g>>2]|0)!=0){if((a[(c[f>>2]|0)+451>>0]|0)==0){if((Rg(c[(c[(c[k>>2]|0)+16>>2]|0)+(d[(c[k>>2]|0)+136>>0]<<4)+4>>2]|0)|0)==0){b=Pu(c[f>>2]|0,c[(c[g>>2]|0)+24>>2]|0,c[h>>2]|0)|0;c[(c[g>>2]|0)+24>>2]=b;if((c[(c[f>>2]|0)+324>>2]|0)==0){i=j;return}Qu(c[f>>2]|0,c[(c[g>>2]|0)+24>>2]|0,(c[f>>2]|0)+320|0,1);i=j;return}}}gu(c[c[f>>2]>>2]|0,c[h>>2]|0);i=j;return}function Hu(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;p=i;i=i+80|0;u=p;q=p+64|0;n=p+60|0;C=p+56|0;o=p+52|0;z=p+48|0;w=p+44|0;m=p+40|0;t=p+68|0;s=p+28|0;A=p+24|0;k=p+20|0;x=p+16|0;y=p+12|0;B=p+8|0;v=p+32|0;r=p+36|0;c[q>>2]=e;c[n>>2]=f;c[C>>2]=g;c[o>>2]=h;c[z>>2]=j;c[w>>2]=c[c[q>>2]>>2];c[m>>2]=0;c[s>>2]=c[(c[q>>2]|0)+484>>2];a:do{if((c[s>>2]|0)!=0){if((d[(c[q>>2]|0)+451>>0]|0)==0){if((c[n>>2]|0)==0){c[B>>2]=(b[(c[s>>2]|0)+38>>1]|0)-1;if((c[B>>2]|0)<0){break}if((c[o>>2]|0)!=0){if((c[c[o>>2]>>2]|0)!=1){e=c[q>>2]|0;f=c[C>>2]|0;c[u>>2]=c[(c[(c[s>>2]|0)+4>>2]|0)+((c[B>>2]|0)*24|0)>>2];c[u+4>>2]=f;bf(e,32168,u);break}}c[x>>2]=1}else{if((c[o>>2]|0)!=0){if((c[c[o>>2]>>2]|0)!=(c[c[n>>2]>>2]|0)){bf(c[q>>2]|0,32232,u);break}}c[x>>2]=c[c[n>>2]>>2]}c[A>>2]=44+((c[x>>2]|0)-1<<3)+(c[(c[C>>2]|0)+4>>2]|0)+1;b:do{if((c[o>>2]|0)!=0){c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[c[o>>2]>>2]|0)){break b}e=(Ub(c[(c[(c[o>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)+4>>2]|0)|0)+1|0;c[A>>2]=(c[A>>2]|0)+e;c[k>>2]=(c[k>>2]|0)+1}}}while(0);c[m>>2]=ve(c[w>>2]|0,c[A>>2]|0)|0;if((c[m>>2]|0)!=0){c[c[m>>2]>>2]=c[s>>2];c[(c[m>>2]|0)+4>>2]=c[(c[s>>2]|0)+16>>2];c[y>>2]=(c[m>>2]|0)+36+(c[x>>2]<<3);c[(c[m>>2]|0)+8>>2]=c[y>>2];fL(c[y>>2]|0,c[c[C>>2]>>2]|0,c[(c[C>>2]|0)+4>>2]|0)|0;a[(c[y>>2]|0)+(c[(c[C>>2]|0)+4>>2]|0)>>0]=0;gt(c[y>>2]|0)|0;c[y>>2]=(c[y>>2]|0)+((c[(c[C>>2]|0)+4>>2]|0)+1);c[(c[m>>2]|0)+20>>2]=c[x>>2];c:do{if((c[n>>2]|0)==0){c[(c[m>>2]|0)+36>>2]=(b[(c[s>>2]|0)+38>>1]|0)-1}else{c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[x>>2]|0)){break c}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}e=(Dc(c[(c[(c[s>>2]|0)+4>>2]|0)+((c[v>>2]|0)*24|0)>>2]|0,c[(c[(c[n>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)+4>>2]|0)|0)==0;A=c[v>>2]|0;if(e){l=25;break}c[v>>2]=A+1}if((l|0)==25){l=0;c[(c[m>>2]|0)+36+(c[k>>2]<<3)>>2]=A}if((c[v>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}c[k>>2]=(c[k>>2]|0)+1}e=c[q>>2]|0;c[u>>2]=c[(c[(c[n>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)+4>>2];bf(e,32328,u);break a}}while(0);d:do{if((c[o>>2]|0)!=0){c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[x>>2]|0)){break d}c[r>>2]=Ub(c[(c[(c[o>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)+4>>2]|0)|0;c[(c[m>>2]|0)+36+(c[k>>2]<<3)+4>>2]=c[y>>2];fL(c[y>>2]|0,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)+4>>2]|0,c[r>>2]|0)|0;a[(c[y>>2]|0)+(c[r>>2]|0)>>0]=0;c[y>>2]=(c[y>>2]|0)+((c[r>>2]|0)+1);c[k>>2]=(c[k>>2]|0)+1}}}while(0);a[(c[m>>2]|0)+24>>0]=0;a[(c[m>>2]|0)+25>>0]=c[z>>2]&255;a[(c[m>>2]|0)+26>>0]=c[z>>2]>>8&255;g=(c[(c[s>>2]|0)+68>>2]|0)+56|0;f=c[(c[m>>2]|0)+8>>2]|0;e=Ub(c[(c[m>>2]|0)+8>>2]|0)|0;c[t>>2]=Eh(g,f,e,c[m>>2]|0)|0;if((c[t>>2]|0)==(c[m>>2]|0)){a[(c[w>>2]|0)+64>>0]=1;break}if((c[t>>2]|0)!=0){c[(c[m>>2]|0)+12>>2]=c[t>>2];c[(c[t>>2]|0)+16>>2]=c[m>>2]}c[(c[s>>2]|0)+16>>2]=c[m>>2];c[m>>2]=0}}}}while(0);cc(c[w>>2]|0,c[m>>2]|0);cu(c[w>>2]|0,c[n>>2]|0);cu(c[w>>2]|0,c[o>>2]|0);i=p;return}function Iu(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;f=e;h=e+4|0;g=e+8|0;c[j>>2]=b;c[f>>2]=d;b=c[(c[j>>2]|0)+484>>2]|0;c[h>>2]=b;if((b|0)==0){i=e;return}j=c[(c[h>>2]|0)+16>>2]|0;c[g>>2]=j;if((j|0)==0){i=e;return}a[(c[g>>2]|0)+24>>0]=c[f>>2];i=e;return}function Ju(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;k=j+24|0;m=j;g=j+4|0;h=j+8|0;f=j+12|0;l=j+16|0;e=j+20|0;c[k>>2]=a;c[m>>2]=d;a=c[(c[k>>2]|0)+484>>2]|0;c[g>>2]=a;if((a|0)==0){i=j;return}c[h>>2]=(b[(c[g>>2]|0)+38>>1]|0)-1;c[l>>2]=c[c[k>>2]>>2];c[f>>2]=Iv(c[l>>2]|0,c[m>>2]|0)|0;if((c[f>>2]|0)==0){i=j;return}a=(ty(c[k>>2]|0,c[f>>2]|0)|0)!=0;d=c[l>>2]|0;if(!a){cc(d,c[f>>2]|0);i=j;return}cc(d,c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*24|0)+16>>2]|0);c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*24|0)+16>>2]=c[f>>2];c[e>>2]=c[(c[g>>2]|0)+8>>2];while(1){if((c[e>>2]|0)==0){break}if((b[c[(c[e>>2]|0)+4>>2]>>1]|0)==(c[h>>2]|0)){c[c[(c[e>>2]|0)+32>>2]>>2]=c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*24|0)+16>>2]}c[e>>2]=c[(c[e>>2]|0)+20>>2]}i=j;return}function Ku(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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;j=i;i=i+64|0;s=j;k=j+44|0;h=j+40|0;n=j+36|0;l=j+32|0;m=j+28|0;u=j+48|0;p=j+16|0;r=j+12|0;g=j+8|0;t=j+4|0;o=j+20|0;q=j+24|0;c[k>>2]=b;c[h>>2]=d;c[n>>2]=e;c[l>>2]=f;c[p>>2]=c[c[k>>2]>>2];do{if((a[(c[p>>2]|0)+64>>0]|0)==0){if((c[l>>2]|0)!=0){b=(c[p>>2]|0)+67|0;a[b>>0]=(a[b>>0]|0)+1<<24>>24}c[m>>2]=Zv(c[k>>2]|0,c[n>>2]|0,(c[h>>2]|0)+8|0)|0;if((c[l>>2]|0)!=0){b=(c[p>>2]|0)+67|0;a[b>>0]=(a[b>>0]|0)+ -1<<24>>24}if((c[m>>2]|0)==0){if((c[l>>2]|0)==0){break}eA(c[k>>2]|0,c[(c[h>>2]|0)+12>>2]|0);break}c[r>>2]=ef(c[p>>2]|0,c[(c[m>>2]|0)+68>>2]|0)|0;if((a[(c[m>>2]|0)+44>>0]&16|0)!=0){if((vw(c[k>>2]|0,c[m>>2]|0)|0)!=0){break}}c[t>>2]=(c[r>>2]|0)==1?21432:21456;c[o>>2]=c[(c[(c[p>>2]|0)+16>>2]|0)+(c[r>>2]<<4)>>2];c[q>>2]=0;if((Lv(c[k>>2]|0,9,c[t>>2]|0,0,c[o>>2]|0)|0)==0){do{if((c[n>>2]|0)!=0){if((c[r>>2]|0)==1){c[g>>2]=15;break}else{c[g>>2]=17;break}}else{if((a[(c[m>>2]|0)+44>>0]&16|0)!=0){c[g>>2]=30;c[q>>2]=c[(c[(ww(c[p>>2]|0,c[m>>2]|0)|0)+4>>2]|0)+4>>2];break}if((c[r>>2]|0)==1){c[g>>2]=13;break}else{c[g>>2]=11;break}}}while(0);if((Lv(c[k>>2]|0,c[g>>2]|0,c[c[m>>2]>>2]|0,c[q>>2]|0,c[o>>2]|0)|0)==0){if((Lv(c[k>>2]|0,9,c[c[m>>2]>>2]|0,0,c[o>>2]|0)|0)==0){if((Tb(c[c[m>>2]>>2]|0,21672,7)|0)==0){if((Tb(c[c[m>>2]>>2]|0,31944,11)|0)!=0){b=c[k>>2]|0;c[s>>2]=c[c[m>>2]>>2];bf(b,31960,s);break}}if((c[n>>2]|0)!=0){if((c[(c[m>>2]|0)+12>>2]|0)==0){b=c[k>>2]|0;c[s>>2]=c[c[m>>2]>>2];bf(b,31992,s);break}}if((c[n>>2]|0)==0){if((c[(c[m>>2]|0)+12>>2]|0)!=0){b=c[k>>2]|0;c[s>>2]=c[c[m>>2]>>2];bf(b,32032,s);break}}c[u>>2]=Ov(c[k>>2]|0)|0;if((c[u>>2]|0)!=0){$v(c[k>>2]|0,1,c[r>>2]|0);OA(c[k>>2]|0,c[r>>2]|0,24688,c[c[m>>2]>>2]|0);FE(c[k>>2]|0,c[h>>2]|0,c[m>>2]|0);GE(c[k>>2]|0,c[m>>2]|0,c[r>>2]|0,c[n>>2]|0)}}}}}}while(0);fu(c[p>>2]|0,c[h>>2]|0);i=j;return}function Lu(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;p=i;i=i+96|0;o=p+80|0;s=p+76|0;u=p+72|0;v=p+68|0;t=p+64|0;z=p+60|0;A=p+56|0;q=p+84|0;m=p+44|0;n=p+40|0;l=p+32|0;y=p+8|0;w=p+4|0;x=p+48|0;r=p+52|0;c[o>>2]=b;c[s>>2]=e;c[u>>2]=f;c[v>>2]=g;c[t>>2]=h;c[z>>2]=j;c[A>>2]=k;c[w>>2]=0;c[r>>2]=c[c[o>>2]>>2];k=c[o>>2]|0;if((c[(c[o>>2]|0)+440>>2]|0)>0){bf(k,31896,p);du(c[r>>2]|0,c[t>>2]|0);i=p;return}wu(k,c[u>>2]|0,c[v>>2]|0,c[z>>2]|0,1,0,c[A>>2]|0);c[q>>2]=c[(c[o>>2]|0)+484>>2];if((c[q>>2]|0)!=0){if((c[(c[o>>2]|0)+64>>2]|0)==0){ky(c[o>>2]|0,c[u>>2]|0,c[v>>2]|0,w)|0;c[x>>2]=ef(c[r>>2]|0,c[(c[q>>2]|0)+68>>2]|0)|0;kA(y,c[o>>2]|0,c[x>>2]|0,31936,c[w>>2]|0);b=(mA(y,c[t>>2]|0)|0)!=0;v=c[r>>2]|0;u=c[t>>2]|0;if(b){du(v,u);i=p;return}b=Bw(v,u,1)|0;c[(c[q>>2]|0)+12>>2]=b;du(c[r>>2]|0,c[t>>2]|0);if((a[(c[r>>2]|0)+64>>0]|0)!=0){i=p;return}if((a[(c[r>>2]|0)+137>>0]|0)==0){vw(c[o>>2]|0,c[q>>2]|0)|0}b=(c[o>>2]|0)+504|0;c[l+0>>2]=c[b+0>>2];c[l+4>>2]=c[b+4>>2];if((a[c[l>>2]>>0]|0)!=0){if((a[c[l>>2]>>0]|0)!=59){c[l>>2]=(c[l>>2]|0)+(c[l+4>>2]|0)}}c[l+4>>2]=0;c[m>>2]=(c[l>>2]|0)-(c[c[s>>2]>>2]|0);c[n>>2]=c[c[s>>2]>>2];while(1){if((c[m>>2]|0)>0){r=(a[136+(d[(c[n>>2]|0)+((c[m>>2]|0)-1)>>0]|0)>>0]&1|0)!=0}else{r=0}q=c[m>>2]|0;if(!r){break}c[m>>2]=q+ -1}c[l>>2]=(c[n>>2]|0)+(q-1);c[l+4>>2]=1;xu(c[o>>2]|0,0,l,0,0);i=p;return}}du(c[r>>2]|0,c[t>>2]|0);i=p;return}function Mu(f,g,h){f=f|0;g=g|0;h=h|0;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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0;N=i;i=i+400|0;L=N+136|0;o=N+236|0;n=N+232|0;l=N+228|0;v=N+224|0;U=N+220|0;B=N+216|0;u=N+212|0;wa=N+208|0;r=N+200|0;q=N+196|0;ca=N+192|0;x=N+188|0;y=N+184|0;t=N+204|0;z=N+240|0;p=N+252|0;C=N+280|0;A=N+328|0;m=N+332|0;s=N+336|0;xa=N+340|0;ra=N+344|0;ya=N+364|0;za=N+368|0;qa=N+372|0;pa=N+376|0;Aa=N+380|0;sa=N+384|0;ta=N+388|0;va=N+392|0;ma=N+152|0;O=N+144|0;P=N+140|0;J=N+132|0;I=N+60|0;S=N+56|0;E=N+52|0;T=N+48|0;V=N+44|0;W=N+40|0;na=N+36|0;oa=N+32|0;Q=N+28|0;R=N+20|0;G=N+16|0;F=N+12|0;H=N+8|0;M=N+4|0;j=N;K=N+24|0;k=N+64|0;Y=N+68|0;X=N+72|0;Z=N+76|0;w=N+80|0;$=N+84|0;_=N+88|0;aa=N+92|0;ia=N+96|0;ea=N+100|0;ba=N+104|0;da=N+108|0;ja=N+112|0;ga=N+116|0;fa=N+120|0;ha=N+124|0;ka=N+128|0;la=N+394|0;c[o>>2]=f;c[n>>2]=g;c[l>>2]=h;c[t>>2]=1;c[s>>2]=c[(c[o>>2]|0)+464>>2];g=(c[o>>2]|0)+468|0;f=c[g>>2]|0;c[g>>2]=f+1;c[(c[o>>2]|0)+464>>2]=f;c[m>>2]=c[c[o>>2]>>2];if((c[n>>2]|0)!=0){if((d[(c[m>>2]|0)+64>>0]|0)==0){if((c[(c[o>>2]|0)+64>>2]|0)==0){if((Lv(c[o>>2]|0,21,0,0,0)|0)!=0){c[L>>2]=1;f=c[L>>2]|0;i=N;return f|0}g=C+0|0;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((d[c[l>>2]>>0]|0)<=8){cu(c[m>>2]|0,c[(c[n>>2]|0)+48>>2]|0);c[(c[n>>2]|0)+48>>2]=0;f=(c[n>>2]|0)+6|0;b[f>>1]=e[f>>1]&-2}Ew(c[o>>2]|0,c[n>>2]|0,0);c[p+0>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16>>2]=0;c[p+20>>2]=0;c[p+24>>2]=0;c[p>>2]=c[(c[n>>2]|0)+48>>2];c[q>>2]=c[(c[n>>2]|0)+32>>2];c[r>>2]=c[c[n>>2]>>2];a:do{if((c[(c[o>>2]|0)+64>>2]|0)==0){if((d[(c[m>>2]|0)+64>>0]|0)==0){c[wa>>2]=(b[(c[n>>2]|0)+6>>1]&4|0)!=0&1;c[u>>2]=Ov(c[o>>2]|0)|0;if((c[u>>2]|0)!=0){if((PD(c[o>>2]|0,c[l>>2]|0,c[c[r>>2]>>2]|0)|0)==0){c[v>>2]=0;while(1){if((c[(c[n>>2]|0)+52>>2]|0)!=0){break}if((c[v>>2]|0)>=(c[c[q>>2]>>2]|0)){break}c[xa>>2]=(c[q>>2]|0)+8+((c[v>>2]|0)*72|0);c[ya>>2]=c[(c[xa>>2]|0)+20>>2];do{if((c[ya>>2]|0)!=0){if((c[(c[xa>>2]|0)+24>>2]|0)!=0){if(((d[(c[xa>>2]|0)+37>>0]|0)>>>2&1|0)!=0){break}Qv(c[u>>2]|0,17,c[(c[xa>>2]|0)+28>>2]|0,c[(c[xa>>2]|0)+24>>2]|0)|0;break}g=QD(c[n>>2]|0)|0;f=(c[o>>2]|0)+460|0;c[f>>2]=(c[f>>2]|0)+g;c[za>>2]=(b[(c[ya>>2]|0)+6>>1]&4|0)!=0&1;b:do{if((RD(c[o>>2]|0,c[n>>2]|0,c[v>>2]|0,c[wa>>2]|0,c[za>>2]|0)|0)!=0){if((c[za>>2]|0)!=0){c[wa>>2]=1;f=(c[n>>2]|0)+6|0;b[f>>1]=e[f>>1]|4}c[v>>2]=-1}else{do{if((c[c[q>>2]>>2]|0)==1){if((b[(c[m>>2]|0)+60>>1]&256|0)!=0){break}c[qa>>2]=(sy(c[u>>2]|0)|0)+1;g=(c[o>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[(c[xa>>2]|0)+28>>2]=f;Tv(c[u>>2]|0,20,c[(c[xa>>2]|0)+28>>2]|0,0,c[qa>>2]|0)|0;c[(c[xa>>2]|0)+24>>2]=c[qa>>2];Hz(ra,13,c[(c[xa>>2]|0)+28>>2]|0);a[(c[xa>>2]|0)+38>>0]=c[(c[o>>2]|0)+468>>2];Mu(c[o>>2]|0,c[ya>>2]|0,ra)|0;f=(c[ya>>2]|0)+24|0;f=Kw(c[f>>2]|0,c[f+4>>2]|0)|0;b[(c[(c[xa>>2]|0)+16>>2]|0)+28>>1]=f;f=(c[xa>>2]|0)+37|0;a[f>>0]=a[f>>0]&-5|4;c[(c[xa>>2]|0)+32>>2]=c[ra+8>>2];oy(c[u>>2]|0,21,c[(c[xa>>2]|0)+28>>2]|0)|0;jw(c[u>>2]|0,(c[qa>>2]|0)-1|0);SD(c[o>>2]|0);break b}}while(0);c[Aa>>2]=0;g=(c[o>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[(c[xa>>2]|0)+28>>2]=f;c[pa>>2]=Qv(c[u>>2]|0,25,0,c[(c[xa>>2]|0)+28>>2]|0)|0;c[(c[xa>>2]|0)+24>>2]=(c[pa>>2]|0)+1;if(((d[(c[xa>>2]|0)+37>>0]|0)>>>1&1|0)==0){c[Aa>>2]=Gz(c[o>>2]|0)|0}Hz(ra,12,c[(c[xa>>2]|0)+40>>2]|0);a[(c[xa>>2]|0)+38>>0]=c[(c[o>>2]|0)+468>>2];Mu(c[o>>2]|0,c[ya>>2]|0,ra)|0;f=(c[ya>>2]|0)+24|0;f=Kw(c[f>>2]|0,c[f+4>>2]|0)|0;b[(c[(c[xa>>2]|0)+16>>2]|0)+28>>1]=f;if((c[Aa>>2]|0)!=0){jw(c[u>>2]|0,c[Aa>>2]|0)}c[sa>>2]=oy(c[u>>2]|0,18,c[(c[xa>>2]|0)+28>>2]|0)|0;kf(c[u>>2]|0,c[pa>>2]|0,c[sa>>2]|0);SD(c[o>>2]|0)}}while(0);if((a[(c[m>>2]|0)+64>>0]|0)!=0){break a}g=QD(c[n>>2]|0)|0;f=(c[o>>2]|0)+460|0;c[f>>2]=(c[f>>2]|0)-g;c[q>>2]=c[(c[n>>2]|0)+32>>2];if((d[c[l>>2]>>0]|0)>8){c[p>>2]=c[(c[n>>2]|0)+48>>2]}}}while(0);c[v>>2]=(c[v>>2]|0)+1}c[r>>2]=c[c[n>>2]>>2];c[ca>>2]=c[(c[n>>2]|0)+36>>2];c[x>>2]=c[(c[n>>2]|0)+40>>2];c[y>>2]=c[(c[n>>2]|0)+44>>2];a[z>>0]=(b[(c[n>>2]|0)+6>>1]&1|0)!=0;if((c[(c[n>>2]|0)+52>>2]|0)!=0){c[t>>2]=TD(c[o>>2]|0,c[n>>2]|0,c[l>>2]|0)|0;c[(c[o>>2]|0)+464>>2]=c[s>>2];c[L>>2]=c[t>>2];f=c[L>>2]|0;i=N;return f|0}if((b[(c[n>>2]|0)+6>>1]&5|0)==1){if((kx(c[p>>2]|0,c[c[n>>2]>>2]|0,-1)|0)==0){f=(c[n>>2]|0)+6|0;b[f>>1]=e[f>>1]&-2;f=px(c[m>>2]|0,c[c[n>>2]>>2]|0,0)|0;c[(c[n>>2]|0)+40>>2]=f;c[x>>2]=c[(c[n>>2]|0)+40>>2];c[p>>2]=0}}if((c[p>>2]|0)!=0){c[ta>>2]=UD(c[o>>2]|0,c[p>>2]|0,0,0)|0;g=(c[o>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[p+8>>2]=f;c[p+20>>2]=Sv(c[u>>2]|0,55,c[p+8>>2]|0,(c[c[p>>2]>>2]|0)+2|0,0,c[ta>>2]|0,-6)|0}else{c[p+20>>2]=-1}if((d[c[l>>2]>>0]|0)==12){Qv(c[u>>2]|0,55,c[(c[l>>2]|0)+4>>2]|0,c[c[r>>2]>>2]|0)|0}c[A>>2]=cz(c[u>>2]|0)|0;f=(c[n>>2]|0)+24|0;c[f>>2]=-1;c[f+4>>2]=2147483647;VD(c[o>>2]|0,c[n>>2]|0,c[A>>2]|0);if((c[(c[n>>2]|0)+8>>2]|0)==0){if((c[p+20>>2]|0)>=0){a[(Kz(c[u>>2]|0,c[p+20>>2]|0)|0)>>0]=56;f=p+24|0;a[f>>0]=d[f>>0]|1}}if((b[(c[n>>2]|0)+6>>1]&1|0)!=0){f=(c[o>>2]|0)+68|0;g=c[f>>2]|0;c[f>>2]=g+1;c[z+4>>2]=g;g=c[u>>2]|0;f=c[z+4>>2]|0;c[z+8>>2]=Sv(g,55,f,0,0,UD(c[o>>2]|0,c[c[n>>2]>>2]|0,0,0)|0,-6)|0;gf(c[u>>2]|0,8);a[z+1>>0]=3}else{a[z+1>>0]=0}if((c[wa>>2]|0)!=0){ua=67}else{if((c[x>>2]|0)==0){b[va>>1]=(d[z>>0]|0)!=0?1024:0;c[B>>2]=lB(c[o>>2]|0,c[q>>2]|0,c[ca>>2]|0,c[p>>2]|0,c[c[n>>2]>>2]|0,b[va>>1]|0,0)|0;if((c[B>>2]|0)==0){break}g=WD(c[B>>2]|0)|0;Aa=D;f=(c[n>>2]|0)+24|0;h=c[f+4>>2]|0;if(Aa>>>0>>0|((Aa|0)==(h|0)?g>>>0<(c[f>>2]|0)>>>0:0)){g=WD(c[B>>2]|0)|0;f=(c[n>>2]|0)+24|0;c[f>>2]=g;c[f+4>>2]=D}do{if((d[z>>0]|0)!=0){if((XD(c[B>>2]|0)|0)==0){break}a[z+1>>0]=XD(c[B>>2]|0)|0}}while(0);do{if((c[p>>2]|0)!=0){c[p+4>>2]=YD(c[B>>2]|0)|0;if((c[p+4>>2]|0)!=(c[c[p>>2]>>2]|0)){break}c[p>>2]=0}}while(0);do{if((c[p+20>>2]|0)>=0){if((c[p>>2]|0)!=0){break}of(c[u>>2]|0,c[p+20>>2]|0)}}while(0);za=c[o>>2]|0;Aa=c[n>>2]|0;h=c[r>>2]|0;g=c[l>>2]|0;f=_D(c[B>>2]|0)|0;ZD(za,Aa,h,-1,p,z,g,f,$D(c[B>>2]|0)|0);mB(c[B>>2]|0)}else{ua=67}}if((ua|0)==67){c[T>>2]=0;c[V>>2]=0;c[W>>2]=0;pa=c[n>>2]|0;do{if((c[x>>2]|0)!=0){c[na>>2]=c[c[pa>>2]>>2];c[oa>>2]=c[(c[c[n>>2]>>2]|0)+4>>2];while(1){if((c[na>>2]|0)<=0){break}b[(c[oa>>2]|0)+18>>1]=0;c[na>>2]=(c[na>>2]|0)+ -1;c[oa>>2]=(c[oa>>2]|0)+20}c[na>>2]=c[c[x>>2]>>2];c[oa>>2]=c[(c[x>>2]|0)+4>>2];while(1){if((c[na>>2]|0)<=0){break}b[(c[oa>>2]|0)+18>>1]=0;c[na>>2]=(c[na>>2]|0)+ -1;c[oa>>2]=(c[oa>>2]|0)+20}f=(c[n>>2]|0)+24|0;g=c[f+4>>2]|0;if(!(g>>>0>0|(g|0)==0&(c[f>>2]|0)>>>0>100)){break}f=(c[n>>2]|0)+24|0;c[f>>2]=100;c[f+4>>2]=0}else{f=pa+24|0;c[f>>2]=1;c[f+4>>2]=0}}while(0);if((kx(c[x>>2]|0,c[p>>2]|0,-1)|0)==0){c[W>>2]=1}c[E>>2]=cz(c[u>>2]|0)|0;c[ma+0>>2]=0;c[ma+4>>2]=0;c[ma+8>>2]=0;c[ma+12>>2]=0;c[ma+16>>2]=0;c[ma+20>>2]=0;c[ma+24>>2]=0;c[ma+28>>2]=0;c[ma>>2]=c[o>>2];c[ma+4>>2]=c[q>>2];c[ma+12>>2]=C;c[C+16>>2]=(c[(c[o>>2]|0)+72>>2]|0)+1;if((c[x>>2]|0)!=0){na=(c[c[x>>2]>>2]|0)+1|0}else{na=0}c[C+12>>2]=na;c[C+24>>2]=c[x>>2];aE(ma,c[r>>2]|0);aE(ma,c[p>>2]|0);if((c[y>>2]|0)!=0){bE(ma,c[y>>2]|0)}c[C+36>>2]=c[C+32>>2];c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[C+44>>2]|0)){break}f=ma+28|0;a[f>>0]=d[f>>0]|8;aE(ma,c[(c[(c[C+40>>2]|0)+(c[v>>2]<<4)>>2]|0)+20>>2]|0);f=ma+28|0;a[f>>0]=d[f>>0]&-9;c[v>>2]=(c[v>>2]|0)+1}c[C+20>>2]=c[(c[o>>2]|0)+72>>2];if((a[(c[m>>2]|0)+64>>0]|0)!=0){break}if((c[x>>2]|0)!=0){g=(c[o>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[C+4>>2]=f;c[Q>>2]=UD(c[o>>2]|0,c[x>>2]|0,0,0)|0;c[j>>2]=Sv(c[u>>2]|0,56,c[C+4>>2]|0,c[C+12>>2]|0,0,c[Q>>2]|0,-6)|0;f=(c[o>>2]|0)+72|0;g=(c[f>>2]|0)+1|0;c[f>>2]=g;c[J>>2]=g;g=(c[o>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[I>>2]=f;f=(c[o>>2]|0)+72|0;g=(c[f>>2]|0)+1|0;c[f>>2]=g;c[F>>2]=g;c[G>>2]=cz(c[u>>2]|0)|0;g=(c[o>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[k>>2]=f;c[K>>2]=cz(c[u>>2]|0)|0;c[O>>2]=(c[(c[o>>2]|0)+72>>2]|0)+1;f=(c[o>>2]|0)+72|0;c[f>>2]=(c[f>>2]|0)+(c[c[x>>2]>>2]|0);c[P>>2]=(c[(c[o>>2]|0)+72>>2]|0)+1;f=(c[o>>2]|0)+72|0;c[f>>2]=(c[f>>2]|0)+(c[c[x>>2]>>2]|0);Qv(c[u>>2]|0,25,0,c[I>>2]|0)|0;Qv(c[u>>2]|0,25,0,c[J>>2]|0)|0;Tv(c[u>>2]|0,28,0,c[O>>2]|0,(c[O>>2]|0)+(c[c[x>>2]>>2]|0)-1|0)|0;Qv(c[u>>2]|0,17,c[k>>2]|0,c[K>>2]|0)|0;c[B>>2]=lB(c[o>>2]|0,c[q>>2]|0,c[ca>>2]|0,c[x>>2]|0,0,(256|((c[W>>2]|0)!=0?2048:0))&65535,0)|0;if((c[B>>2]|0)==0){break}f=YD(c[B>>2]|0)|0;if((f|0)==(c[c[x>>2]>>2]|0)){c[S>>2]=0}else{if((d[z>>0]|0)!=0){ba=(b[(c[n>>2]|0)+6>>1]&1|0)==0}else{ba=0}cE(c[o>>2]|0,ba?31264:31280);c[S>>2]=1;c[w>>2]=c[c[x>>2]>>2];c[Z>>2]=(c[w>>2]|0)+1;c[U>>2]=(c[w>>2]|0)+1;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[C+32>>2]|0)){break}if((c[(c[C+28>>2]|0)+((c[v>>2]|0)*24|0)+12>>2]|0)>=(c[U>>2]|0)){c[Z>>2]=(c[Z>>2]|0)+1;c[U>>2]=(c[U>>2]|0)+1}c[v>>2]=(c[v>>2]|0)+1}c[Y>>2]=fz(c[o>>2]|0,c[Z>>2]|0)|0;IA(c[o>>2]|0);Cz(c[o>>2]|0,c[x>>2]|0,c[Y>>2]|0,0)|0;Qv(c[u>>2]|0,68,c[C+4>>2]|0,(c[Y>>2]|0)+(c[w>>2]|0)|0)|0;c[U>>2]=(c[w>>2]|0)+1;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[C+32>>2]|0)){break}c[$>>2]=(c[C+28>>2]|0)+((c[v>>2]|0)*24|0);if((c[(c[$>>2]|0)+12>>2]|0)>=(c[U>>2]|0)){c[_>>2]=(c[U>>2]|0)+(c[Y>>2]|0);c[aa>>2]=xz(c[o>>2]|0,c[c[$>>2]>>2]|0,c[(c[$>>2]|0)+8>>2]|0,c[(c[$>>2]|0)+4>>2]|0,c[_>>2]|0,0)|0;if((c[_>>2]|0)!=(c[aa>>2]|0)){Qv(c[u>>2]|0,34,c[aa>>2]|0,c[_>>2]|0)|0}c[U>>2]=(c[U>>2]|0)+1}c[v>>2]=(c[v>>2]|0)+1}c[X>>2]=Wv(c[o>>2]|0)|0;Tv(c[u>>2]|0,48,c[Y>>2]|0,c[Z>>2]|0,c[X>>2]|0)|0;Qv(c[u>>2]|0,106,c[C+4>>2]|0,c[X>>2]|0)|0;Xv(c[o>>2]|0,c[X>>2]|0);iz(c[o>>2]|0,c[Y>>2]|0,c[Z>>2]|0);mB(c[B>>2]|0);g=(c[o>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[T>>2]=f;c[C+8>>2]=f;c[V>>2]=Wv(c[o>>2]|0)|0;Tv(c[u>>2]|0,57,c[T>>2]|0,c[V>>2]|0,c[Z>>2]|0)|0;Qv(c[u>>2]|0,103,c[C+4>>2]|0,c[E>>2]|0)|0;a[C+1>>0]=1;IA(c[o>>2]|0)}do{if((c[W>>2]|0)!=0){if((b[(c[m>>2]|0)+60>>1]&4|0)!=0){break}if((c[S>>2]|0)==0){if((dE(c[B>>2]|0)|0)==0){break}}c[p>>2]=0;of(c[u>>2]|0,c[p+20>>2]|0)}}while(0);c[M>>2]=sy(c[u>>2]|0)|0;IA(c[o>>2]|0);if((c[S>>2]|0)!=0){Qv(c[u>>2]|0,95,c[C+4>>2]|0,c[V>>2]|0)|0}c[U>>2]=0;while(1){if((c[U>>2]|0)>=(c[c[x>>2]>>2]|0)){break}do{if((c[S>>2]|0)!=0){Tv(c[u>>2]|0,46,c[T>>2]|0,c[U>>2]|0,(c[P>>2]|0)+(c[U>>2]|0)|0)|0;if((c[U>>2]|0)!=0){break}gf(c[u>>2]|0,32)}else{a[C>>0]=1;vz(c[o>>2]|0,c[(c[(c[x>>2]|0)+4>>2]|0)+((c[U>>2]|0)*20|0)>>2]|0,(c[P>>2]|0)+(c[U>>2]|0)|0)}}while(0);c[U>>2]=(c[U>>2]|0)+1}Aa=c[u>>2]|0;h=c[O>>2]|0;g=c[P>>2]|0;f=c[c[x>>2]>>2]|0;Sv(Aa,41,h,g,f,Cy(c[Q>>2]|0)|0,-6)|0;c[R>>2]=sy(c[u>>2]|0)|0;Tv(c[u>>2]|0,42,(c[R>>2]|0)+1|0,0,(c[R>>2]|0)+1|0)|0;eE(c[o>>2]|0,c[P>>2]|0,c[O>>2]|0,c[c[x>>2]>>2]|0);Qv(c[u>>2]|0,17,c[F>>2]|0,c[G>>2]|0)|0;Qv(c[u>>2]|0,134,c[I>>2]|0,c[E>>2]|0)|0;Qv(c[u>>2]|0,17,c[k>>2]|0,c[K>>2]|0)|0;jw(c[u>>2]|0,c[R>>2]|0);fE(c[o>>2]|0,C);Qv(c[u>>2]|0,25,1,c[J>>2]|0)|0;if((c[S>>2]|0)!=0){Qv(c[u>>2]|0,5,c[C+4>>2]|0,c[M>>2]|0)|0}else{mB(c[B>>2]|0);of(c[u>>2]|0,c[j>>2]|0)}Qv(c[u>>2]|0,17,c[F>>2]|0,c[G>>2]|0)|0;Qv(c[u>>2]|0,16,0,c[E>>2]|0)|0;c[H>>2]=sy(c[u>>2]|0)|0;Qv(c[u>>2]|0,25,1,c[I>>2]|0)|0;oy(c[u>>2]|0,18,c[F>>2]|0)|0;$y(c[u>>2]|0,c[G>>2]|0);c[G>>2]=sy(c[u>>2]|0)|0;Qv(c[u>>2]|0,134,c[J>>2]|0,(c[G>>2]|0)+2|0)|0;oy(c[u>>2]|0,18,c[F>>2]|0)|0;gE(c[o>>2]|0,C);ez(c[o>>2]|0,c[y>>2]|0,(c[G>>2]|0)+1|0,8);ZD(c[o>>2]|0,c[n>>2]|0,c[c[n>>2]>>2]|0,-1,p,z,c[l>>2]|0,(c[G>>2]|0)+1|0,c[H>>2]|0);oy(c[u>>2]|0,18,c[F>>2]|0)|0;$y(c[u>>2]|0,c[K>>2]|0);hE(c[o>>2]|0,C);oy(c[u>>2]|0,18,c[k>>2]|0)|0}else{c[ia>>2]=0;f=iE(c[n>>2]|0,C)|0;c[ea>>2]=f;if((f|0)!=0){c[ba>>2]=ef(c[c[o>>2]>>2]|0,c[(c[ea>>2]|0)+68>>2]|0)|0;g=(c[o>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[da>>2]=f;c[ga>>2]=0;c[fa>>2]=0;c[ha>>2]=c[(c[ea>>2]|0)+32>>2];aw(c[o>>2]|0,c[ba>>2]|0);py(c[o>>2]|0,c[ba>>2]|0,c[(c[ea>>2]|0)+32>>2]|0,0,c[c[ea>>2]>>2]|0);if((a[(c[ea>>2]|0)+44>>0]&32|0)!=0){c[fa>>2]=Dy(c[ea>>2]|0)|0}c[ja>>2]=c[(c[ea>>2]|0)+8>>2];while(1){if((c[ja>>2]|0)==0){break}do{if(((d[(c[ja>>2]|0)+55>>0]|0)>>>2&1|0)==0){if((b[(c[ja>>2]|0)+48>>1]|0)>=(b[(c[ea>>2]|0)+42>>1]|0)){break}if((c[(c[ja>>2]|0)+36>>2]|0)!=0){break}if((c[fa>>2]|0)!=0){if((b[(c[ja>>2]|0)+48>>1]|0)>=(b[(c[fa>>2]|0)+48>>1]|0)){break}}c[fa>>2]=c[ja>>2]}}while(0);c[ja>>2]=c[(c[ja>>2]|0)+20>>2]}if((c[fa>>2]|0)!=0){c[ha>>2]=c[(c[fa>>2]|0)+44>>2];c[ga>>2]=Ay(c[o>>2]|0,c[fa>>2]|0)|0}ff(c[u>>2]|0,52,c[da>>2]|0,c[ha>>2]|0,c[ba>>2]|0,1)|0;if((c[ga>>2]|0)!=0){nf(c[u>>2]|0,-1,c[ga>>2]|0,-6)}Qv(c[u>>2]|0,49,c[da>>2]|0,c[(c[C+40>>2]|0)+8>>2]|0)|0;oy(c[u>>2]|0,58,c[da>>2]|0)|0;jE(c[o>>2]|0,c[ea>>2]|0,c[fa>>2]|0)}else{c[ka>>2]=0;a[la>>0]=0;if((c[(c[n>>2]|0)+44>>2]|0)==0){a[la>>0]=kE(C,ka)|0}do{if((a[la>>0]|0)!=0){c[ka>>2]=px(c[m>>2]|0,c[ka>>2]|0,0)|0;c[ia>>2]=c[ka>>2];if((c[ka>>2]|0)==0){break}if((a[(c[m>>2]|0)+64>>0]|0)!=0){break}a[(c[(c[ka>>2]|0)+4>>2]|0)+12>>0]=(d[la>>0]|0)!=1?1:0;a[c[c[(c[ka>>2]|0)+4>>2]>>2]>>0]=-102}}while(0);hE(c[o>>2]|0,C);c[B>>2]=lB(c[o>>2]|0,c[q>>2]|0,c[ca>>2]|0,c[ka>>2]|0,0,d[la>>0]|0,0)|0;if((c[B>>2]|0)==0){cu(c[m>>2]|0,c[ia>>2]|0);break}fE(c[o>>2]|0,C);if((YD(c[B>>2]|0)|0)>0){f=c[u>>2]|0;Qv(f,16,0,$D(c[B>>2]|0)|0)|0}mB(c[B>>2]|0);gE(c[o>>2]|0,C)}c[p>>2]=0;ez(c[o>>2]|0,c[y>>2]|0,c[E>>2]|0,8);ZD(c[o>>2]|0,c[n>>2]|0,c[c[n>>2]>>2]|0,-1,0,0,c[l>>2]|0,c[E>>2]|0,c[E>>2]|0);cu(c[m>>2]|0,c[ia>>2]|0)}$y(c[u>>2]|0,c[E>>2]|0)}if((d[z+1>>0]|0)==3){cE(c[o>>2]|0,31264)}if((c[p>>2]|0)!=0){cE(c[o>>2]|0,(c[p+4>>2]|0)>0?31296:31320);lE(c[o>>2]|0,c[n>>2]|0,p,c[c[r>>2]>>2]|0,c[l>>2]|0)}$y(c[u>>2]|0,c[A>>2]|0);c[t>>2]=0}}}}}while(0);c[(c[o>>2]|0)+464>>2]=c[s>>2];if((c[t>>2]|0)==0){if((d[c[l>>2]>>0]|0)==9){mE(c[o>>2]|0,c[q>>2]|0,c[r>>2]|0)}}cc(c[m>>2]|0,c[C+28>>2]|0);cc(c[m>>2]|0,c[C+40>>2]|0);c[L>>2]=c[t>>2];f=c[L>>2]|0;i=N;return f|0}}}c[L>>2]=1;f=c[L>>2]|0;i=N;return f|0}function Nu(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;t=i;i=i+48|0;x=t;s=t+40|0;w=t+36|0;v=t+32|0;u=t+28|0;k=t+24|0;n=t+44|0;r=t+12|0;p=t+8|0;q=t+4|0;m=t+16|0;o=t+20|0;c[w>>2]=a;c[v>>2]=b;c[u>>2]=d;c[k>>2]=e;c[n>>2]=f;c[r>>2]=g;c[p>>2]=h;c[q>>2]=j;c[o>>2]=c[c[w>>2]>>2];do{if((c[v>>2]|0)!=0){l=5}else{if((c[p>>2]|0)==0){if((c[q>>2]|0)==0){l=5;break}}a=c[w>>2]|0;c[x>>2]=(c[p>>2]|0)!=0?31248:31256;bf(a,31208,x)}}while(0);if((l|0)==5){c[v>>2]=Vu(c[o>>2]|0,c[v>>2]|0,c[u>>2]|0,c[k>>2]|0)|0;if((c[v>>2]|0)!=0){if((c[c[v>>2]>>2]|0)!=0){c[m>>2]=(c[v>>2]|0)+8+(((c[c[v>>2]>>2]|0)-1|0)*72|0);if((c[(c[n>>2]|0)+4>>2]|0)!=0){a=Iv(c[o>>2]|0,c[n>>2]|0)|0;c[(c[m>>2]|0)+12>>2]=a}c[(c[m>>2]|0)+20>>2]=c[r>>2];c[(c[m>>2]|0)+44>>2]=c[p>>2];c[(c[m>>2]|0)+48>>2]=c[q>>2];c[s>>2]=c[v>>2];a=c[s>>2]|0;i=t;return a|0}}}gu(c[o>>2]|0,c[p>>2]|0);hu(c[o>>2]|0,c[q>>2]|0);du(c[o>>2]|0,c[r>>2]|0);c[s>>2]=0;a=c[s>>2]|0;i=t;return a|0}function Ou(d,e,f,g,h,j,k,l,m,n){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var 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;p=i;i=i+128|0;v=p+112|0;A=p+108|0;s=p+104|0;t=p+100|0;u=p+96|0;o=p+92|0;w=p+88|0;x=p+116|0;y=p+80|0;z=p+76|0;r=p+72|0;B=p;q=p+84|0;c[v>>2]=d;c[A>>2]=e;c[s>>2]=f;c[t>>2]=g;c[u>>2]=h;c[o>>2]=j;c[w>>2]=k;b[x>>1]=l;c[y>>2]=m;c[z>>2]=n;c[q>>2]=c[c[v>>2]>>2];c[r>>2]=ve(c[q>>2]|0,72)|0;if((c[r>>2]|0)==0){c[r>>2]=B;m=(c[r>>2]|0)+0|0;n=m+72|0;do{c[m>>2]=0;m=m+4|0}while((m|0)<(n|0))}if((c[A>>2]|0)==0){d=c[v>>2]|0;c[A>>2]=Pu(d,0,Su(c[q>>2]|0,116,0)|0)|0}c[c[r>>2]>>2]=c[A>>2];if((c[s>>2]|0)==0){c[s>>2]=ve(c[q>>2]|0,80)|0}c[(c[r>>2]|0)+32>>2]=c[s>>2];c[(c[r>>2]|0)+36>>2]=c[t>>2];c[(c[r>>2]|0)+40>>2]=c[u>>2];c[(c[r>>2]|0)+44>>2]=c[o>>2];c[(c[r>>2]|0)+48>>2]=c[w>>2];b[(c[r>>2]|0)+6>>1]=b[x>>1]|0;a[(c[r>>2]|0)+4>>0]=119;c[(c[r>>2]|0)+60>>2]=c[y>>2];c[(c[r>>2]|0)+64>>2]=c[z>>2];c[(c[r>>2]|0)+16>>2]=-1;c[(c[r>>2]|0)+20>>2]=-1;if((a[(c[q>>2]|0)+64>>0]|0)==0){d=c[r>>2]|0;i=p;return d|0}eu(c[q>>2]|0,c[r>>2]|0);if((c[r>>2]|0)!=(B|0)){cc(c[q>>2]|0,c[r>>2]|0)}c[r>>2]=0;d=c[r>>2]|0;i=p;return d|0}function Pu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;f=j+24|0;m=j;g=j+4|0;e=j+8|0;h=j+12|0;l=j+16|0;k=j+20|0;c[m>>2]=a;c[g>>2]=b;c[e>>2]=d;c[h>>2]=c[c[m>>2]>>2];if((c[g>>2]|0)==0){c[g>>2]=ve(c[h>>2]|0,8)|0;if((c[g>>2]|0)==0){d=8}else{m=$e(c[h>>2]|0,20)|0;c[(c[g>>2]|0)+4>>2]=m;if((c[(c[g>>2]|0)+4>>2]|0)==0){d=8}else{d=7}}}else{if((c[c[g>>2]>>2]&(c[c[g>>2]>>2]|0)-1|0)==0){c[l>>2]=Ot(c[h>>2]|0,c[(c[g>>2]|0)+4>>2]|0,(c[c[g>>2]>>2]<<1)*20|0)|0;if((c[l>>2]|0)==0){d=8}else{c[(c[g>>2]|0)+4>>2]=c[l>>2];d=7}}else{d=7}}if((d|0)==7){a=c[g>>2]|0;m=c[a>>2]|0;c[a>>2]=m+1;c[k>>2]=(c[(c[g>>2]|0)+4>>2]|0)+(m*20|0);m=c[k>>2]|0;c[m+0>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[c[k>>2]>>2]=c[e>>2];c[f>>2]=c[g>>2];m=c[f>>2]|0;i=j;return m|0}else if((d|0)==8){gu(c[h>>2]|0,c[e>>2]|0);cu(c[h>>2]|0,c[g>>2]|0);c[f>>2]=0;m=c[f>>2]|0;i=j;return m|0}return 0}function Qu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;j=f+16|0;h=f;k=f+4|0;l=f+8|0;g=f+12|0;c[j>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;if((c[h>>2]|0)==0){i=f;return}c[g>>2]=(c[(c[h>>2]|0)+4>>2]|0)+(((c[c[h>>2]>>2]|0)-1|0)*20|0);a=ft(c[c[j>>2]>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0;c[(c[g>>2]|0)+4>>2]=a;if((c[l>>2]|0)==0){i=f;return}if((c[(c[g>>2]|0)+4>>2]|0)==0){i=f;return}gt(c[(c[g>>2]|0)+4>>2]|0)|0;i=f;return}function Ru(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;f=e;j=e+4|0;h=e+8|0;g=e+12|0;c[k>>2]=a;c[f>>2]=b;c[j>>2]=d;c[h>>2]=c[c[k>>2]>>2];if((c[f>>2]|0)==0){i=e;return}c[g>>2]=(c[(c[f>>2]|0)+4>>2]|0)+(((c[c[f>>2]>>2]|0)-1|0)*20|0);cc(c[h>>2]|0,c[(c[g>>2]|0)+8>>2]|0);k=ft(c[h>>2]|0,c[(c[j>>2]|0)+4>>2]|0,(c[(c[j>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+4>>2]|0)|0)|0;c[(c[g>>2]|0)+8>>2]=k;i=e;return}function Su(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+16|0;g=e;j=e+4|0;f=e+8|0;c[h>>2]=a;c[g>>2]=b;c[j>>2]=d;c[f>>2]=c[j>>2];if((c[j>>2]|0)!=0){d=Ub(c[j>>2]|0)|0}else{d=0}c[f+4>>2]=d;a=Wx(c[h>>2]|0,c[g>>2]|0,f,0)|0;i=e;return a|0}function Tu(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;if((c[e>>2]|0)==0){i=d;return}c[f>>2]=(c[c[e>>2]>>2]|0)-1;while(1){if((c[f>>2]|0)<=0){break}a[(c[e>>2]|0)+8+((c[f>>2]|0)*72|0)+36>>0]=a[(c[e>>2]|0)+8+(((c[f>>2]|0)-1|0)*72|0)+36>>0]|0;c[f>>2]=(c[f>>2]|0)+ -1}a[(c[e>>2]|0)+44>>0]=0;i=d;return}function Uu(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;h=f+12|0;k=f;g=f+4|0;j=f+8|0;c[h>>2]=b;c[k>>2]=d;c[g>>2]=e;if((c[k>>2]|0)==0){i=f;return}if((c[c[k>>2]>>2]|0)<=0){i=f;return}c[j>>2]=(c[k>>2]|0)+8+(((c[c[k>>2]>>2]|0)-1|0)*72|0);if((c[(c[g>>2]|0)+4>>2]|0)==1){if((c[c[g>>2]>>2]|0)==0){b=(c[j>>2]|0)+37|0;a[b>>0]=a[b>>0]&-2|1;i=f;return}}b=Iv(c[c[h>>2]>>2]|0,c[g>>2]|0)|0;c[(c[j>>2]|0)+64>>2]=b;i=f;return}function Vu(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;j=k+24|0;m=k;h=k+4|0;n=k+8|0;l=k+12|0;o=k+16|0;g=k+20|0;c[m>>2]=b;c[h>>2]=d;c[n>>2]=e;c[l>>2]=f;do{if((c[h>>2]|0)==0){c[h>>2]=ve(c[m>>2]|0,80)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+4>>2]=1;break}c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}}while(0);c[h>>2]=OD(c[m>>2]|0,c[h>>2]|0,1,c[c[h>>2]>>2]|0)|0;if((a[(c[m>>2]|0)+64>>0]|0)!=0){fu(c[m>>2]|0,c[h>>2]|0);c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}c[o>>2]=(c[h>>2]|0)+8+(((c[c[h>>2]>>2]|0)-1|0)*72|0);if((c[l>>2]|0)!=0){if((c[c[l>>2]>>2]|0)==0){c[l>>2]=0}}if((c[l>>2]|0)!=0){c[g>>2]=c[l>>2];c[l>>2]=c[n>>2];c[n>>2]=c[g>>2]}b=Iv(c[m>>2]|0,c[n>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=b;b=Iv(c[m>>2]|0,c[l>>2]|0)|0;c[(c[o>>2]|0)+4>>2]=b;c[j>>2]=c[h>>2];b=c[j>>2]|0;i=k;return b|0}function Wu(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+64|0;l=j;k=j+56|0;g=j+52|0;o=j+48|0;n=j+44|0;p=j+60|0;q=j+24|0;s=j+20|0;r=j+16|0;t=j+36|0;m=j+40|0;c[k>>2]=a;c[g>>2]=b;c[o>>2]=e;c[n>>2]=f;c[p>>2]=0;c[q>>2]=c[g>>2];c[q+4>>2]=c[o>>2];c[q+8>>2]=c[n>>2];c[r>>2]=0;while(1){if((c[r>>2]|0)>=3){break}if((c[q+(c[r>>2]<<2)>>2]|0)==0){break}c[s>>2]=c[q+(c[r>>2]<<2)>>2];c[t>>2]=0;while(1){if((c[t>>2]|0)>=7){break}if((c[(c[s>>2]|0)+4>>2]|0)==(d[31081+((c[t>>2]|0)*3|0)>>0]|0|0)){if((Tb(c[c[s>>2]>>2]|0,31040+(d[31080+((c[t>>2]|0)*3|0)>>0]|0)|0,c[(c[s>>2]|0)+4>>2]|0)|0)==0){h=8;break}}c[t>>2]=(c[t>>2]|0)+1}if((h|0)==8){h=0;c[p>>2]=c[p>>2]|(d[31082+((c[t>>2]|0)*3|0)>>0]|0)}if((c[t>>2]|0)>=7){h=11;break}c[r>>2]=(c[r>>2]|0)+1}if((h|0)==11){c[p>>2]=c[p>>2]|64}if((c[p>>2]&33|0)!=33){if((c[p>>2]&64|0)==0){if((c[p>>2]&32|0)==0){a=c[p>>2]|0;i=j;return a|0}if((c[p>>2]&24|0)==8){a=c[p>>2]|0;i=j;return a|0}bf(c[k>>2]|0,31152,l);c[p>>2]=1;a=c[p>>2]|0;i=j;return a|0}}c[m>>2]=16448;if((c[n>>2]|0)==0){c[m>>2]=(c[m>>2]|0)+1}a=c[k>>2]|0;f=c[o>>2]|0;e=c[m>>2]|0;b=c[n>>2]|0;c[l>>2]=c[g>>2];c[l+4>>2]=f;c[l+8>>2]=e;c[l+12>>2]=b;bf(a,31104,l);c[p>>2]=1;a=c[p>>2]|0;i=j;return a|0}function Xu(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+4|0;h=f;j=f+8|0;c[g>>2]=b;c[h>>2]=d;a[j>>0]=e;if((c[h>>2]|0)==0){i=f;return}c[(c[h>>2]|0)+4>>2]=c[(c[g>>2]|0)+532>>2];c[(c[g>>2]|0)+532>>2]=c[h>>2];a[(c[g>>2]|0)+449>>0]=a[j>>0]|0;i=f;return}function Yu(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;n=i;i=i+192|0;x=n+152|0;k=n+132|0;l=n+136|0;p=n+140|0;q=n+144|0;U=n+148|0;j=n+156|0;I=n+160|0;o=n+164|0;J=n+168|0;y=n+172|0;z=n+128|0;P=n+124|0;t=n+120|0;r=n+112|0;T=n+80|0;K=n+76|0;h=n+32|0;S=n;E=n+4|0;O=n+8|0;m=n+16|0;w=n+20|0;R=n+24|0;Q=n+176|0;D=n+28|0;F=n+178|0;u=n+36|0;H=n+40|0;A=n+44|0;v=n+48|0;M=n+52|0;N=n+56|0;s=n+60|0;B=n+64|0;G=n+68|0;C=n+72|0;c[x>>2]=e;c[k>>2]=f;c[l>>2]=g;c[h>>2]=-1;c[m>>2]=0;c[R>>2]=0;b[Q>>1]=1;c[u>>2]=0;c[H>>2]=0;c[A>>2]=0;c[v>>2]=0;c[M>>2]=0;c[N>>2]=0;c[r+0>>2]=0;c[r+4>>2]=0;c[t>>2]=c[c[x>>2]>>2];a:do{if((c[(c[x>>2]|0)+64>>2]|0)==0){if((d[(c[t>>2]|0)+64>>0]|0)==0){c[q>>2]=jA(c[x>>2]|0,c[k>>2]|0)|0;if((c[q>>2]|0)!=0){c[B>>2]=RA(c[x>>2]|0,c[q>>2]|0,109,0,0)|0;c[s>>2]=(c[(c[q>>2]|0)+12>>2]|0)!=0&1;if((vw(c[x>>2]|0,c[q>>2]|0)|0)==0){if((SA(c[x>>2]|0,c[q>>2]|0,(c[B>>2]|0)!=0?1:0)|0)==0){c[K>>2]=ef(c[t>>2]|0,c[(c[q>>2]|0)+68>>2]|0)|0;c[U>>2]=c[(c[(c[t>>2]|0)+16>>2]|0)+(c[K>>2]<<4)>>2];c[S>>2]=Lv(c[x>>2]|0,9,c[c[q>>2]>>2]|0,0,c[U>>2]|0)|0;if((c[S>>2]|0)!=1){f=(c[x>>2]|0)+68|0;e=c[f>>2]|0;c[f>>2]=e+1;c[(c[k>>2]|0)+48>>2]=e;c[J>>2]=e;c[P>>2]=0;c[o>>2]=c[(c[q>>2]|0)+8>>2];while(1){if((c[o>>2]|0)==0){break}e=(c[x>>2]|0)+68|0;c[e>>2]=(c[e>>2]|0)+1;c[o>>2]=c[(c[o>>2]|0)+20>>2];c[P>>2]=(c[P>>2]|0)+1}if((c[s>>2]|0)!=0){KD(c[x>>2]|0,r,c[c[q>>2]>>2]|0)}c[p>>2]=Ov(c[x>>2]|0)|0;if((c[p>>2]|0)!=0){if((d[(c[x>>2]|0)+18>>0]|0)==0){TA(c[p>>2]|0)}$v(c[x>>2]|0,1,c[K>>2]|0);if((c[s>>2]|0)!=0){LD(c[x>>2]|0,c[q>>2]|0,c[l>>2]|0,c[J>>2]|0);e=c[J>>2]|0;c[z>>2]=e;c[y>>2]=e}c[T+0>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;c[T+16>>2]=0;c[T+20>>2]=0;c[T+24>>2]=0;c[T+28>>2]=0;c[T>>2]=c[x>>2];c[T+4>>2]=c[k>>2];if((bx(T,c[l>>2]|0)|0)==0){if((c[(c[t>>2]|0)+24>>2]&128|0)!=0){f=(c[x>>2]|0)+72|0;e=(c[f>>2]|0)+1|0;c[f>>2]=e;c[h>>2]=e;Qv(c[p>>2]|0,25,0,c[h>>2]|0)|0}b:do{if((c[S>>2]|0)==0){if((c[l>>2]|0)==0){if((c[B>>2]|0)!=0){L=30}else{if((a[(c[q>>2]|0)+44>>0]&16|0)!=0){L=30}else{if(0==(IC(c[x>>2]|0,c[q>>2]|0,0,0)|0)){py(c[x>>2]|0,c[K>>2]|0,c[(c[q>>2]|0)+32>>2]|0,1,c[c[q>>2]>>2]|0);if((a[(c[q>>2]|0)+44>>0]&32|0)==0){Sv(c[p>>2]|0,115,c[(c[q>>2]|0)+32>>2]|0,c[K>>2]|0,c[h>>2]|0,c[c[q>>2]>>2]|0,-2)|0}c[o>>2]=c[(c[q>>2]|0)+8>>2];while(1){if((c[o>>2]|0)==0){break b}Qv(c[p>>2]|0,115,c[(c[o>>2]|0)+44>>2]|0,c[K>>2]|0)|0;c[o>>2]=c[(c[o>>2]|0)+20>>2]}}else{L=30}}}}else{L=30}}else{L=30}}while(0);c:do{if((L|0)==30){if((a[(c[q>>2]|0)+44>>0]&32|0)==0){c[w>>2]=0;b[Q>>1]=1;f=(c[x>>2]|0)+72|0;e=(c[f>>2]|0)+1|0;c[f>>2]=e;c[H>>2]=e;Qv(c[p>>2]|0,28,0,c[H>>2]|0)|0}else{c[w>>2]=Dy(c[q>>2]|0)|0;b[Q>>1]=b[(c[w>>2]|0)+50>>1]|0;c[R>>2]=(c[(c[x>>2]|0)+72>>2]|0)+1;f=(c[x>>2]|0)+72|0;c[f>>2]=(c[f>>2]|0)+(b[Q>>1]|0);f=(c[x>>2]|0)+68|0;e=c[f>>2]|0;c[f>>2]=e+1;c[u>>2]=e;c[N>>2]=Qv(c[p>>2]|0,55,c[u>>2]|0,b[Q>>1]|0)|0;ry(c[x>>2]|0,c[w>>2]|0)}c[I>>2]=lB(c[x>>2]|0,c[k>>2]|0,c[l>>2]|0,0,0,12,(c[J>>2]|0)+1|0)|0;if((c[I>>2]|0)==0){break a}c[E>>2]=MD(c[I>>2]|0,O)|0;if((c[(c[t>>2]|0)+24>>2]&128|0)!=0){Qv(c[p>>2]|0,37,c[h>>2]|0,1)|0}do{if((c[w>>2]|0)!=0){c[j>>2]=0;while(1){if((c[j>>2]|0)>=(b[Q>>1]|0)){break}gz(c[p>>2]|0,c[q>>2]|0,c[J>>2]|0,b[(c[(c[w>>2]|0)+4>>2]|0)+(c[j>>2]<<1)>>1]|0,(c[R>>2]|0)+(c[j>>2]|0)|0);c[j>>2]=(c[j>>2]|0)+1}c[D>>2]=c[R>>2]}else{c[D>>2]=(c[(c[x>>2]|0)+72>>2]|0)+1;c[D>>2]=xz(c[x>>2]|0,c[q>>2]|0,-1,c[J>>2]|0,c[D>>2]|0,0)|0;if((c[D>>2]|0)<=(c[(c[x>>2]|0)+72>>2]|0)){break}c[(c[x>>2]|0)+72>>2]=c[D>>2]}}while(0);do{if((c[E>>2]|0)!=0){b[F>>1]=b[Q>>1]|0;c[m>>2]=$e(c[t>>2]|0,(c[P>>2]|0)+2|0)|0;if((c[m>>2]|0)==0){mB(c[I>>2]|0);break a}aL(c[m>>2]|0,1,(c[P>>2]|0)+1|0)|0;a[(c[m>>2]|0)+((c[P>>2]|0)+1)>>0]=0;if((c[O>>2]|0)>=0){a[(c[m>>2]|0)+((c[O>>2]|0)-(c[J>>2]|0))>>0]=0}if((c[O+4>>2]|0)>=0){a[(c[m>>2]|0)+((c[O+4>>2]|0)-(c[J>>2]|0))>>0]=0}if((c[N>>2]|0)!=0){of(c[p>>2]|0,c[N>>2]|0)}c[M>>2]=Yv(c[p>>2]|0,16)|0}else{if((c[w>>2]|0)!=0){U=(c[x>>2]|0)+72|0;T=(c[U>>2]|0)+1|0;c[U>>2]=T;c[D>>2]=T;b[F>>1]=0;T=c[p>>2]|0;U=c[R>>2]|0;g=b[Q>>1]|0;f=c[D>>2]|0;e=GA(c[p>>2]|0,c[w>>2]|0)|0;Sv(T,48,U,g,f,e,b[Q>>1]|0)|0;Qv(c[p>>2]|0,107,c[u>>2]|0,c[D>>2]|0)|0;break}else{b[F>>1]=1;Qv(c[p>>2]|0,125,c[H>>2]|0,c[D>>2]|0)|0;break}}}while(0);mB(c[I>>2]|0);if((c[E>>2]|0)!=0){c[A>>2]=cz(c[p>>2]|0)|0;Qv(c[p>>2]|0,16,0,c[A>>2]|0)|0;jw(c[p>>2]|0,c[M>>2]|0)}if((c[s>>2]|0)==0){JA(c[x>>2]|0,c[q>>2]|0,53,c[J>>2]|0,c[m>>2]|0,y,z)|0}do{if((c[E>>2]|0)!=0){if((a[(c[m>>2]|0)+((c[y>>2]|0)-(c[J>>2]|0))>>0]|0)==0){break}ff(c[p>>2]|0,65,c[y>>2]|0,c[A>>2]|0,c[D>>2]|0,b[F>>1]|0)|0}else{I=c[p>>2]|0;if((c[w>>2]|0)!=0){c[v>>2]=oy(I,105,c[u>>2]|0)|0;Qv(c[p>>2]|0,98,c[u>>2]|0,c[D>>2]|0)|0;break}else{c[v>>2]=Tv(I,126,c[H>>2]|0,0,c[D>>2]|0)|0;break}}}while(0);if((a[(c[q>>2]|0)+44>>0]&16|0)!=0){c[G>>2]=ww(c[t>>2]|0,c[q>>2]|0)|0;aB(c[x>>2]|0,c[q>>2]|0);Sv(c[p>>2]|0,15,0,1,c[D>>2]|0,c[G>>2]|0,-10)|0;gf(c[p>>2]|0,2);xw(c[x>>2]|0)}else{c[C>>2]=(d[(c[x>>2]|0)+18>>0]|0)==0&1;KC(c[x>>2]|0,c[q>>2]|0,c[B>>2]|0,c[y>>2]|0,c[z>>2]|0,c[D>>2]|0,b[F>>1]|0,c[C>>2]&255,10,c[E>>2]&255)}do{if((c[E>>2]|0)!=0){$y(c[p>>2]|0,c[A>>2]|0)}else{A=c[p>>2]|0;if((c[w>>2]|0)!=0){Qv(A,9,c[u>>2]|0,(c[v>>2]|0)+1|0)|0;jw(c[p>>2]|0,c[v>>2]|0);break}else{Qv(A,16,0,c[v>>2]|0)|0;jw(c[p>>2]|0,c[v>>2]|0);break}}}while(0);if((c[s>>2]|0)!=0){break}if((a[(c[q>>2]|0)+44>>0]&16|0)!=0){break}if((c[w>>2]|0)==0){oy(c[p>>2]|0,58,c[y>>2]|0)|0}c[j>>2]=0;c[o>>2]=c[(c[q>>2]|0)+8>>2];while(1){if((c[o>>2]|0)==0){break c}oy(c[p>>2]|0,58,(c[z>>2]|0)+(c[j>>2]|0)|0)|0;c[j>>2]=(c[j>>2]|0)+1;c[o>>2]=c[(c[o>>2]|0)+20>>2]}}}while(0);if((d[(c[x>>2]|0)+18>>0]|0)==0){if((c[(c[x>>2]|0)+412>>2]|0)==0){eB(c[x>>2]|0)}}if((c[(c[t>>2]|0)+24>>2]&128|0)!=0){if((a[(c[x>>2]|0)+18>>0]|0)==0){if((c[(c[x>>2]|0)+412>>2]|0)==0){Qv(c[p>>2]|0,35,c[h>>2]|0,1)|0;rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,31024,0)|0}}}}}}}}}}}}while(0);ND(r);fu(c[t>>2]|0,c[k>>2]|0);gu(c[t>>2]|0,c[l>>2]|0);cc(c[t>>2]|0,c[m>>2]|0);i=n;return}function Zu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;h=e;f=e+16|0;j=e+4|0;g=e+8|0;k=e+12|0;c[f>>2]=a;c[j>>2]=b;c[g>>2]=d;c[k>>2]=c[(c[c[f>>2]>>2]|0)+96>>2];if((c[j>>2]|0)==0){i=e;return}if((c[c[j>>2]>>2]|0)<=(c[k>>2]|0)){i=e;return}a=c[f>>2]|0;c[h>>2]=c[g>>2];bf(a,31e3,h);i=e;return}function _u(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0;D=i;i=i+272|0;ma=D;t=D+176|0;p=D+172|0;o=D+168|0;v=D+164|0;Q=D+160|0;E=D+156|0;Y=D+148|0;s=D+144|0;B=D+140|0;ha=D+136|0;u=D+132|0;w=D+152|0;x=D+216|0;ia=D+220|0;ea=D+224|0;y=D+228|0;C=D+232|0;n=D+236|0;I=D+240|0;q=D+244|0;z=D+248|0;$=D+256|0;V=D+254|0;N=D+255|0;aa=D+128|0;r=D+120|0;ja=D+184|0;ka=D+56|0;P=D+48|0;S=D+44|0;l=D+40|0;F=D+36|0;T=D+32|0;R=D+52|0;_=D+12|0;X=D+8|0;A=D+4|0;J=D+16|0;ga=D+24|0;m=D+108|0;H=D+60|0;M=D+64|0;U=D+68|0;Z=D+72|0;ba=D+76|0;G=D+80|0;na=D+84|0;la=D+88|0;fa=D+92|0;ca=D+252|0;da=D+96|0;W=D+100|0;L=D+104|0;O=D+112|0;c[t>>2]=f;c[p>>2]=g;c[o>>2]=h;c[v>>2]=j;c[Q>>2]=k;c[B>>2]=0;c[I>>2]=0;c[q>>2]=0;c[aa>>2]=0;c[A>>2]=0;c[J>>2]=0;c[m>>2]=0;c[Z>>2]=0;c[ba>>2]=0;c[G>>2]=0;c[r+0>>2]=0;c[r+4>>2]=0;c[n>>2]=c[c[t>>2]>>2];if((c[(c[t>>2]|0)+64>>2]|0)!=0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}if((d[(c[n>>2]|0)+64>>0]|0)!=0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}c[s>>2]=jA(c[t>>2]|0,c[p>>2]|0)|0;if((c[s>>2]|0)==0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}c[ka>>2]=ef(c[c[t>>2]>>2]|0,c[(c[s>>2]|0)+68>>2]|0)|0;c[R>>2]=RA(c[t>>2]|0,c[s>>2]|0,110,c[o>>2]|0,_)|0;c[T>>2]=(c[(c[s>>2]|0)+12>>2]|0)!=0&1;if((vw(c[t>>2]|0,c[s>>2]|0)|0)!=0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}if((SA(c[t>>2]|0,c[s>>2]|0,c[_>>2]|0)|0)!=0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}f=(c[t>>2]|0)+68|0;j=c[f>>2]|0;c[f>>2]=j+1;c[y>>2]=j;c[ea>>2]=j;c[(c[p>>2]|0)+48>>2]=j;c[C>>2]=(c[y>>2]|0)+1;if((a[(c[s>>2]|0)+44>>0]&32|0)==0){k=0}else{k=Dy(c[s>>2]|0)|0}c[x>>2]=k;c[ia>>2]=0;c[w>>2]=c[(c[s>>2]|0)+8>>2];while(1){if((c[w>>2]|0)==0){break}if((a[(c[w>>2]|0)+55>>0]&3|0)==2){if((c[x>>2]|0)!=0){c[y>>2]=c[(c[t>>2]|0)+68>>2];c[(c[p>>2]|0)+48>>2]=c[y>>2]}}j=(c[t>>2]|0)+68|0;c[j>>2]=(c[j>>2]|0)+1;c[w>>2]=c[(c[w>>2]|0)+20>>2];c[ia>>2]=(c[ia>>2]|0)+1}c[q>>2]=$e(c[n>>2]|0,((b[(c[s>>2]|0)+38>>1]|0)+(c[ia>>2]|0)<<2)+(c[ia>>2]|0)+2|0)|0;if((c[q>>2]|0)==0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}c[I>>2]=(c[q>>2]|0)+(b[(c[s>>2]|0)+38>>1]<<2);c[z>>2]=(c[I>>2]|0)+(c[ia>>2]<<2);aL(c[z>>2]|0,1,(c[ia>>2]|0)+1|0)|0;a[(c[z>>2]|0)+((c[ia>>2]|0)+1)>>0]=0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}c[(c[q>>2]|0)+(c[E>>2]<<2)>>2]=-1;c[E>>2]=(c[E>>2]|0)+1}c[ja+0>>2]=0;c[ja+4>>2]=0;c[ja+8>>2]=0;c[ja+12>>2]=0;c[ja+16>>2]=0;c[ja+20>>2]=0;c[ja+24>>2]=0;c[ja+28>>2]=0;c[ja>>2]=c[t>>2];c[ja+4>>2]=c[p>>2];a[$>>0]=0;a[V>>0]=0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[c[o>>2]>>2]|0)){K=42;break}if((bx(ja,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)>>2]|0)|0)!=0){K=193;break}c[Y>>2]=0;while(1){if((c[Y>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}j=(Dc(c[(c[(c[s>>2]|0)+4>>2]|0)+((c[Y>>2]|0)*24|0)>>2]|0,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)+4>>2]|0)|0)==0;k=c[Y>>2]|0;if(j){K=24;break}c[Y>>2]=k+1}if((K|0)==24){K=0;if((k|0)==(b[(c[s>>2]|0)+36>>1]|0)){a[V>>0]=1;c[aa>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)>>2]}else{if((c[x>>2]|0)!=0){if((a[(c[(c[s>>2]|0)+4>>2]|0)+((c[Y>>2]|0)*24|0)+23>>0]&1|0)!=0){a[$>>0]=1}}}c[(c[q>>2]|0)+(c[Y>>2]<<2)>>2]=c[E>>2]}if((c[Y>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){if((c[x>>2]|0)!=0){K=35;break}if((Fx(c[(c[(c[o>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)+4>>2]|0)|0)==0){K=35;break}c[Y>>2]=-1;a[V>>0]=1;c[aa>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)>>2]}if((c[Y>>2]|0)<0){k=23816}else{k=c[(c[(c[s>>2]|0)+4>>2]|0)+((c[Y>>2]|0)*24|0)>>2]|0}c[na>>2]=Lv(c[t>>2]|0,23,c[c[s>>2]>>2]|0,k,c[(c[(c[n>>2]|0)+16>>2]|0)+(c[ka>>2]<<4)>>2]|0)|0;if((c[na>>2]|0)==1){K=193;break}if((c[na>>2]|0)==2){c[(c[q>>2]|0)+(c[Y>>2]<<2)>>2]=-1}c[E>>2]=(c[E>>2]|0)+1}if((K|0)==35){j=c[t>>2]|0;c[ma>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)+4>>2];bf(j,8184,ma);a[(c[t>>2]|0)+17>>0]=1;ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}else if((K|0)==42){a[N>>0]=(d[V>>0]|0)+(d[$>>0]|0);j=(c[p>>2]|0)+64|0;c[j>>2]=0;c[j+4>>2]=0;c[S>>2]=IC(c[t>>2]|0,c[s>>2]|0,c[q>>2]|0,d[N>>0]|0)|0;c[Y>>2]=0;c[w>>2]=c[(c[s>>2]|0)+8>>2];while(1){if((c[w>>2]|0)==0){break}a:do{if((d[N>>0]|0)!=0){K=48}else{if((c[S>>2]|0)!=0){K=48}else{if((c[(c[w>>2]|0)+36>>2]|0)!=0){K=48}else{if((c[w>>2]|0)==(c[x>>2]|0)){K=48}else{c[la>>2]=0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(e[(c[w>>2]|0)+50>>1]|0)){break a}if((c[(c[q>>2]|0)+(b[(c[(c[w>>2]|0)+4>>2]|0)+(c[E>>2]<<1)>>1]<<2)>>2]|0)>=0){break}c[E>>2]=(c[E>>2]|0)+1}f=(c[t>>2]|0)+72|0;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[la>>2]=j}}}}}while(0);if((K|0)==48){K=0;f=(c[t>>2]|0)+72|0;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[la>>2]=j}if((c[la>>2]|0)==0){a[(c[z>>2]|0)+((c[Y>>2]|0)+1)>>0]=0}c[(c[I>>2]|0)+(c[Y>>2]<<2)>>2]=c[la>>2];c[w>>2]=c[(c[w>>2]|0)+20>>2];c[Y>>2]=(c[Y>>2]|0)+1}c[u>>2]=Ov(c[t>>2]|0)|0;if((c[u>>2]|0)==0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}if((d[(c[t>>2]|0)+18>>0]|0)==0){TA(c[u>>2]|0)}$v(c[t>>2]|0,1,c[ka>>2]|0);ka=c[t>>2]|0;if((a[(c[s>>2]|0)+44>>0]&16|0)!=0){JD(ka,c[p>>2]|0,c[s>>2]|0,c[o>>2]|0,c[aa>>2]|0,c[q>>2]|0,c[v>>2]|0,c[Q>>2]|0);c[v>>2]=0;c[p>>2]=0;ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}j=ka+72|0;f=(c[j>>2]|0)+1|0;c[j>>2]=f;c[ba>>2]=f;f=(c[t>>2]|0)+72|0;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[M>>2]=j;c[H>>2]=j;if((d[$>>0]|0)!=0){K=65}else{if((c[R>>2]|0)!=0){K=65}else{if((c[S>>2]|0)!=0){K=65}}}if((K|0)==65){c[Z>>2]=(c[(c[t>>2]|0)+72>>2]|0)+1;j=(c[t>>2]|0)+72|0;c[j>>2]=(c[j>>2]|0)+(b[(c[s>>2]|0)+38>>1]|0)}if((d[N>>0]|0)!=0){K=69}else{if((c[R>>2]|0)!=0){K=69}else{if((c[S>>2]|0)!=0){K=69}}}if((K|0)==69){f=(c[t>>2]|0)+72|0;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[M>>2]=j}c[U>>2]=(c[(c[t>>2]|0)+72>>2]|0)+1;j=(c[t>>2]|0)+72|0;c[j>>2]=(c[j>>2]|0)+(b[(c[s>>2]|0)+38>>1]|0);if((c[T>>2]|0)!=0){KD(c[t>>2]|0,r,c[c[s>>2]>>2]|0)}if((c[T>>2]|0)!=0){LD(c[t>>2]|0,c[s>>2]|0,c[v>>2]|0,c[y>>2]|0)}if((bx(ja,c[v>>2]|0)|0)!=0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}if((a[(c[s>>2]|0)+44>>0]&32|0)==0){Tv(c[u>>2]|0,28,0,c[ba>>2]|0,c[H>>2]|0)|0;c[ha>>2]=lB(c[t>>2]|0,c[p>>2]|0,c[v>>2]|0,0,0,4,c[C>>2]|0)|0;if((c[ha>>2]|0)==0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}c[P>>2]=MD(c[ha>>2]|0,ga)|0;Qv(c[u>>2]|0,100,c[y>>2]|0,c[H>>2]|0)|0;if((c[P>>2]|0)==0){Qv(c[u>>2]|0,125,c[ba>>2]|0,c[H>>2]|0)|0}mB(c[ha>>2]|0)}else{b[ca>>1]=b[(c[x>>2]|0)+50>>1]|0;c[fa>>2]=(c[(c[t>>2]|0)+72>>2]|0)+1;j=(c[t>>2]|0)+72|0;c[j>>2]=(c[j>>2]|0)+(b[ca>>1]|0);j=(c[t>>2]|0)+72|0;f=(c[j>>2]|0)+1|0;c[j>>2]=f;c[G>>2]=f;f=(c[t>>2]|0)+68|0;j=c[f>>2]|0;c[f>>2]=j+1;c[A>>2]=j;Qv(c[u>>2]|0,28,0,c[fa>>2]|0)|0;c[da>>2]=Qv(c[u>>2]|0,55,c[A>>2]|0,b[ca>>1]|0)|0;ry(c[t>>2]|0,c[x>>2]|0);c[ha>>2]=lB(c[t>>2]|0,c[p>>2]|0,c[v>>2]|0,0,0,4,c[C>>2]|0)|0;if((c[ha>>2]|0)==0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}c[P>>2]=MD(c[ha>>2]|0,ga)|0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(b[ca>>1]|0)){break}gz(c[u>>2]|0,c[s>>2]|0,c[y>>2]|0,b[(c[(c[x>>2]|0)+4>>2]|0)+(c[E>>2]<<1)>>1]|0,(c[fa>>2]|0)+(c[E>>2]|0)|0);c[E>>2]=(c[E>>2]|0)+1}ja=c[u>>2]|0;if((c[P>>2]|0)!=0){of(ja,c[da>>2]|0);c[J>>2]=b[ca>>1]|0;c[G>>2]=c[fa>>2]}else{h=c[fa>>2]|0;g=b[ca>>1]|0;f=c[G>>2]|0;j=GA(c[u>>2]|0,c[x>>2]|0)|0;Sv(ja,48,h,g,f,j,b[ca>>1]|0)|0;Qv(c[u>>2]|0,107,c[A>>2]|0,c[G>>2]|0)|0}mB(c[ha>>2]|0)}if((c[(c[n>>2]|0)+24>>2]&128|0)!=0){if((c[(c[t>>2]|0)+412>>2]|0)==0){f=(c[t>>2]|0)+72|0;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[m>>2]=j;Qv(c[u>>2]|0,25,0,c[m>>2]|0)|0}}c[l>>2]=cz(c[u>>2]|0)|0;if((c[T>>2]|0)==0){b:do{if((c[Q>>2]|0)==5){aL(c[z>>2]|0,1,(c[ia>>2]|0)+1|0)|0}else{c[w>>2]=c[(c[s>>2]|0)+8>>2];while(1){if((c[w>>2]|0)==0){break b}if((d[(c[w>>2]|0)+54>>0]|0)==5){break}c[w>>2]=c[(c[w>>2]|0)+20>>2]}aL(c[z>>2]|0,1,(c[ia>>2]|0)+1|0)|0}}while(0);do{if((c[P>>2]|0)!=0){if((c[ga>>2]|0)>=0){a[(c[z>>2]|0)+((c[ga>>2]|0)-(c[ea>>2]|0))>>0]=0}if((c[ga+4>>2]|0)<0){break}a[(c[z>>2]|0)+((c[ga+4>>2]|0)-(c[ea>>2]|0))>>0]=0}}while(0);JA(c[t>>2]|0,c[s>>2]|0,53,c[ea>>2]|0,c[z>>2]|0,0,0)|0}do{if((c[P>>2]|0)!=0){if((a[(c[z>>2]|0)+((c[y>>2]|0)-(c[ea>>2]|0))>>0]|0)!=0){ff(c[u>>2]|0,65,c[y>>2]|0,c[l>>2]|0,c[G>>2]|0,c[J>>2]|0)|0}c[F>>2]=c[l>>2];Qv(c[u>>2]|0,76,(c[x>>2]|0)!=0?c[G>>2]|0:c[H>>2]|0,c[l>>2]|0)|0}else{ca=c[u>>2]|0;if((c[x>>2]|0)!=0){c[F>>2]=cz(ca)|0;Qv(c[u>>2]|0,105,c[A>>2]|0,c[l>>2]|0)|0;c[B>>2]=Qv(c[u>>2]|0,98,c[A>>2]|0,c[G>>2]|0)|0;ff(c[u>>2]|0,65,c[y>>2]|0,c[F>>2]|0,c[G>>2]|0,0)|0;break}else{c[F>>2]=Tv(ca,126,c[ba>>2]|0,c[l>>2]|0,c[H>>2]|0)|0;Tv(c[u>>2]|0,67,c[y>>2]|0,c[F>>2]|0,c[H>>2]|0)|0;break}}}while(0);if((a[V>>0]|0)!=0){vz(c[t>>2]|0,c[aa>>2]|0,c[M>>2]|0);oy(c[u>>2]|0,38,c[M>>2]|0)|0}do{if((d[$>>0]|0)!=0){K=117}else{if((c[S>>2]|0)!=0){K=117;break}if((c[R>>2]|0)!=0){K=117}}}while(0);do{if((K|0)==117){if((c[S>>2]|0)!=0){$=NC(c[t>>2]|0,c[s>>2]|0)|0}else{$=0}c[W>>2]=$;j=MC(c[t>>2]|0,c[R>>2]|0,c[o>>2]|0,0,3,c[s>>2]|0,c[Q>>2]|0)|0;c[W>>2]=c[W>>2]|j;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}do{if((c[W>>2]|0)==-1){K=125}else{if((c[E>>2]|0)<32){if((c[W>>2]&1<>2]|0)!=0){K=125;break}}if((a[(c[(c[s>>2]|0)+4>>2]|0)+((c[E>>2]|0)*24|0)+23>>0]&1|0)!=0){K=125;break}Qv(c[u>>2]|0,28,0,(c[Z>>2]|0)+(c[E>>2]|0)|0)|0}}while(0);if((K|0)==125){K=0;gz(c[u>>2]|0,c[s>>2]|0,c[y>>2]|0,c[E>>2]|0,(c[Z>>2]|0)+(c[E>>2]|0)|0)}c[E>>2]=(c[E>>2]|0)+1}if((d[V>>0]|0)!=0){break}if((c[x>>2]|0)!=0){break}Qv(c[u>>2]|0,33,c[H>>2]|0,c[M>>2]|0)|0}}while(0);c[X>>2]=MC(c[t>>2]|0,c[R>>2]|0,c[o>>2]|0,1,1,c[s>>2]|0,c[Q>>2]|0)|0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}c:do{if((c[E>>2]|0)==(b[(c[s>>2]|0)+36>>1]|0)){Qv(c[u>>2]|0,28,0,(c[U>>2]|0)+(c[E>>2]|0)|0)|0}else{c[Y>>2]=c[(c[q>>2]|0)+(c[E>>2]<<2)>>2];if((c[Y>>2]|0)>=0){vz(c[t>>2]|0,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[Y>>2]|0)*20|0)>>2]|0,(c[U>>2]|0)+(c[E>>2]|0)|0);break}do{if(0!=(c[_>>2]&1|0)){if((c[E>>2]|0)>31){break}if((c[X>>2]&1<>2]|0)!=0){break}Qv(c[u>>2]|0,28,0,(c[U>>2]|0)+(c[E>>2]|0)|0)|0;break c}}while(0);gz(c[u>>2]|0,c[s>>2]|0,c[y>>2]|0,c[E>>2]|0,(c[U>>2]|0)+(c[E>>2]|0)|0)}}while(0);c[E>>2]=(c[E>>2]|0)+1}d:do{if((c[_>>2]&1|0)!=0){YA(c[u>>2]|0,c[s>>2]|0,c[U>>2]|0);ZA(c[t>>2]|0,c[R>>2]|0,110,c[o>>2]|0,1,c[s>>2]|0,c[H>>2]|0,c[Q>>2]|0,c[F>>2]|0);X=c[u>>2]|0;W=c[y>>2]|0;V=c[F>>2]|0;if((c[x>>2]|0)!=0){ff(X,65,W,V,c[G>>2]|0,c[J>>2]|0)|0}else{Tv(X,67,W,V,c[H>>2]|0)|0}c[E>>2]=0;while(1){if((c[E>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break d}do{if((c[(c[q>>2]|0)+(c[E>>2]<<2)>>2]|0)<0){if((c[E>>2]|0)==(b[(c[s>>2]|0)+36>>1]|0)){break}gz(c[u>>2]|0,c[s>>2]|0,c[y>>2]|0,c[E>>2]|0,(c[U>>2]|0)+(c[E>>2]|0)|0)}}while(0);c[E>>2]=(c[E>>2]|0)+1}}}while(0);do{if((c[T>>2]|0)==0){c[L>>2]=0;c[O>>2]=0;bB(c[t>>2]|0,c[s>>2]|0,c[I>>2]|0,c[y>>2]|0,c[C>>2]|0,c[M>>2]|0,c[H>>2]|0,a[N>>0]|0,c[Q>>2]&255,c[F>>2]|0,O);if((c[S>>2]|0)!=0){cB(c[t>>2]|0,c[s>>2]|0,c[H>>2]|0,0,c[q>>2]|0,d[N>>0]|0)}if((c[O>>2]|0)!=0){K=158}else{if((d[N>>0]|0)!=0){K=158}}do{if((K|0)==158){U=c[u>>2]|0;T=c[y>>2]|0;if((c[x>>2]|0)!=0){c[L>>2]=ff(U,65,T,0,c[G>>2]|0,c[J>>2]|0)|0;break}else{c[L>>2]=Tv(U,67,T,0,c[H>>2]|0)|0;break}}}while(0);LC(c[t>>2]|0,c[s>>2]|0,c[y>>2]|0,c[C>>2]|0,c[I>>2]|0);do{if((c[S>>2]|0)!=0){K=164}else{if((d[N>>0]|0)!=0){K=164;break}if((c[x>>2]|0)!=0){K=164}}}while(0);if((K|0)==164){Qv(c[u>>2]|0,74,c[y>>2]|0,0)|0}if((c[O>>2]|0)!=0){K=167}else{if((d[N>>0]|0)!=0){K=167}}if((K|0)==167){jw(c[u>>2]|0,c[L>>2]|0)}if((c[S>>2]|0)!=0){cB(c[t>>2]|0,c[s>>2]|0,0,c[M>>2]|0,c[q>>2]|0,d[N>>0]|0)}dB(c[t>>2]|0,c[s>>2]|0,c[y>>2]|0,c[C>>2]|0,c[M>>2]|0,c[I>>2]|0,1,0,0);if((c[S>>2]|0)==0){break}OC(c[t>>2]|0,c[s>>2]|0,c[o>>2]|0,c[H>>2]|0,c[q>>2]|0,d[N>>0]|0)}}while(0);do{if((c[(c[n>>2]|0)+24>>2]&128|0)!=0){if((c[(c[t>>2]|0)+412>>2]|0)!=0){break}Qv(c[u>>2]|0,37,c[m>>2]|0,1)|0}}while(0);ZA(c[t>>2]|0,c[R>>2]|0,110,c[o>>2]|0,2,c[s>>2]|0,c[H>>2]|0,c[Q>>2]|0,c[F>>2]|0);do{if((c[P>>2]|0)==0){G=c[u>>2]|0;F=c[F>>2]|0;if((c[x>>2]|0)!=0){$y(G,F);Qv(c[u>>2]|0,9,c[A>>2]|0,c[B>>2]|0)|0;break}else{Qv(G,16,0,F)|0;break}}}while(0);$y(c[u>>2]|0,c[l>>2]|0);c[E>>2]=0;c[w>>2]=c[(c[s>>2]|0)+8>>2];while(1){if((c[w>>2]|0)==0){break}if((a[(c[z>>2]|0)+((c[E>>2]|0)+1)>>0]|0)!=0){Qv(c[u>>2]|0,58,(c[C>>2]|0)+(c[E>>2]|0)|0,0)|0}c[w>>2]=c[(c[w>>2]|0)+20>>2];c[E>>2]=(c[E>>2]|0)+1}if((c[y>>2]|0)<(c[C>>2]|0)){Qv(c[u>>2]|0,58,c[y>>2]|0,0)|0}do{if((d[(c[t>>2]|0)+18>>0]|0)==0){if((c[(c[t>>2]|0)+412>>2]|0)!=0){break}eB(c[t>>2]|0)}}while(0);if((c[(c[n>>2]|0)+24>>2]&128|0)==0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}if((c[(c[t>>2]|0)+412>>2]|0)!=0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}if((a[(c[t>>2]|0)+18>>0]|0)!=0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}Qv(c[u>>2]|0,35,c[m>>2]|0,1)|0;rA(c[u>>2]|0,1);sA(c[u>>2]|0,0,0,30976,0)|0;ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}else if((K|0)==193){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}}function $u(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0;r=i;i=i+272|0;_=r;Q=r+212|0;m=r+216|0;o=r+192|0;p=r+188|0;v=r+184|0;H=r+180|0;u=r+176|0;ma=r+172|0;oa=r+168|0;N=r+160|0;O=r+156|0;B=r+152|0;s=r+148|0;A=r+224|0;L=r+164|0;P=r+196|0;l=r+200|0;U=r+204|0;F=r+264|0;M=r+260|0;E=r+256|0;S=r+252|0;T=r+248|0;X=r+228|0;ka=r+220|0;na=r+208|0;J=r+271|0;D=r+268|0;ba=r+270|0;ia=r+269|0;n=r+60|0;k=r+52|0;R=r+48|0;t=r+44|0;K=r+40|0;G=r+36|0;y=r+56|0;q=r+24|0;z=r+20|0;w=r+16|0;ca=r+28|0;ga=r+32|0;ha=r+140|0;ja=r+64|0;da=r+68|0;ea=r+72|0;fa=r+76|0;aa=r+80|0;W=r+112|0;Z=r+116|0;Y=r+120|0;$=r+124|0;I=r+128|0;C=r+132|0;x=r+136|0;V=r+144|0;c[Q>>2]=e;c[m>>2]=f;c[o>>2]=g;c[p>>2]=h;c[v>>2]=j;c[P>>2]=0;c[l>>2]=0;c[U>>2]=0;c[F>>2]=-1;c[E>>2]=0;c[S>>2]=0;c[T>>2]=0;a[J>>0]=0;a[D>>0]=0;a[ia>>0]=1;c[n>>2]=0;c[k>>2]=0;c[R>>2]=0;c[t>>2]=0;c[q>>2]=0;c[H>>2]=c[c[Q>>2]>>2];c[X+0>>2]=0;c[X+4>>2]=0;c[X+8>>2]=0;c[X+12>>2]=0;c[X+16>>2]=0;a:do{if((c[(c[Q>>2]|0)+64>>2]|0)==0){if((d[(c[H>>2]|0)+64>>0]|0)==0){if((c[o>>2]|0)!=0){if((b[(c[o>>2]|0)+6>>1]&128|0)!=0){if((c[(c[o>>2]|0)+52>>2]|0)==0){c[n>>2]=c[c[o>>2]>>2];c[c[o>>2]>>2]=0;du(c[H>>2]|0,c[o>>2]|0);c[o>>2]=0}}}c[ma>>2]=c[(c[m>>2]|0)+16>>2];if((c[ma>>2]|0)!=0){c[u>>2]=jA(c[Q>>2]|0,c[m>>2]|0)|0;if((c[u>>2]|0)!=0){c[ka>>2]=ef(c[H>>2]|0,c[(c[u>>2]|0)+68>>2]|0)|0;c[na>>2]=(c[(c[H>>2]|0)+16>>2]|0)+(c[ka>>2]<<4);c[oa>>2]=c[c[na>>2]>>2];if((Lv(c[Q>>2]|0,18,c[c[u>>2]>>2]|0,0,c[oa>>2]|0)|0)==0){a[ba>>0]=((a[(c[u>>2]|0)+44>>0]&32|0)==0^1)&1;c[w>>2]=RA(c[Q>>2]|0,c[u>>2]|0,108,0,ca)|0;c[z>>2]=(c[(c[u>>2]|0)+12>>2]|0)!=0&1;if((vw(c[Q>>2]|0,c[u>>2]|0)|0)==0){if((SA(c[Q>>2]|0,c[u>>2]|0,c[ca>>2]|0)|0)==0){c[s>>2]=Ov(c[Q>>2]|0)|0;if((c[s>>2]|0)!=0){if((d[(c[Q>>2]|0)+18>>0]|0)==0){TA(c[s>>2]|0)}if((c[o>>2]|0)!=0){f=1}else{f=(c[w>>2]|0)!=0}$v(c[Q>>2]|0,f&1,c[ka>>2]|0);if((c[p>>2]|0)==0){if((UA(c[Q>>2]|0,c[u>>2]|0,c[o>>2]|0,c[v>>2]|0,c[ka>>2]|0)|0)==0){la=19}}else{la=19}b:do{if((la|0)==19){c[R>>2]=VA(c[Q>>2]|0,c[ka>>2]|0,c[u>>2]|0)|0;e=(c[(c[Q>>2]|0)+72>>2]|0)+1|0;c[K>>2]=e;c[G>>2]=e;e=(c[Q>>2]|0)+72|0;c[e>>2]=(c[e>>2]|0)+((b[(c[u>>2]|0)+38>>1]|0)+1);if((a[(c[u>>2]|0)+44>>0]&16|0)!=0){c[G>>2]=(c[G>>2]|0)+1;e=(c[Q>>2]|0)+72|0;c[e>>2]=(c[e>>2]|0)+1}c[y>>2]=(c[G>>2]|0)+1;c:do{if((c[p>>2]|0)!=0){c[N>>2]=0;while(1){if((c[N>>2]|0)>=(c[(c[p>>2]|0)+4>>2]|0)){break}c[(c[c[p>>2]>>2]|0)+(c[N>>2]<<3)+4>>2]=-1;c[N>>2]=(c[N>>2]|0)+1}c[N>>2]=0;while(1){if((c[N>>2]|0)>=(c[(c[p>>2]|0)+4>>2]|0)){break c}c[O>>2]=0;while(1){if((c[O>>2]|0)>=(b[(c[u>>2]|0)+38>>1]|0)){break}e=(Dc(c[(c[c[p>>2]>>2]|0)+(c[N>>2]<<3)>>2]|0,c[(c[(c[u>>2]|0)+4>>2]|0)+((c[O>>2]|0)*24|0)>>2]|0)|0)==0;f=c[O>>2]|0;if(e){la=30;break}c[O>>2]=f+1}do{if((la|0)==30){la=0;c[(c[c[p>>2]>>2]|0)+(c[N>>2]<<3)+4>>2]=f;if((c[N>>2]|0)!=(c[O>>2]|0)){a[ia>>0]=0}if((c[O>>2]|0)!=(b[(c[u>>2]|0)+36>>1]|0)){break}c[F>>2]=c[N>>2]}}while(0);if((c[O>>2]|0)>=(b[(c[u>>2]|0)+38>>1]|0)){if((Fx(c[(c[c[p>>2]>>2]|0)+(c[N>>2]<<3)>>2]|0)|0)==0){break}if((a[ba>>0]|0)!=0){break}c[F>>2]=c[N>>2];a[ia>>0]=0}c[N>>2]=(c[N>>2]|0)+1}e=c[Q>>2]|0;oa=c[(c[c[p>>2]>>2]|0)+(c[N>>2]<<3)>>2]|0;c[_>>2]=c[m>>2];c[_+4>>2]=0;c[_+8>>2]=oa;bf(e,29824,_);a[(c[Q>>2]|0)+17>>0]=1;break a}}while(0);d:do{if((c[o>>2]|0)!=0){oa=(c[Q>>2]|0)+72|0;e=(c[oa>>2]|0)+1|0;c[oa>>2]=e;c[ga>>2]=e;c[ha>>2]=(sy(c[s>>2]|0)|0)+1;Tv(c[s>>2]|0,20,c[ga>>2]|0,0,c[ha>>2]|0)|0;Hz(X,13,c[ga>>2]|0);c[X+8>>2]=(d[ia>>0]|0)!=0?c[y>>2]|0:0;c[X+12>>2]=b[(c[u>>2]|0)+38>>1]|0;c[ja>>2]=Mu(c[Q>>2]|0,c[o>>2]|0,X)|0;c[k>>2]=c[X+8>>2];if((c[ja>>2]|0)!=0){break a}if((d[(c[H>>2]|0)+64>>0]|0)!=0){break a}oy(c[s>>2]|0,21,c[ga>>2]|0)|0;jw(c[s>>2]|0,(c[ha>>2]|0)-1|0);c[L>>2]=c[c[c[o>>2]>>2]>>2];if((c[w>>2]|0)!=0){la=46}else{if((WA(c[Q>>2]|0,c[ka>>2]|0,c[u>>2]|0)|0)!=0){la=46}}if((la|0)==46){a[J>>0]=1}if((a[J>>0]|0)==0){break}oa=(c[Q>>2]|0)+68|0;e=c[oa>>2]|0;c[oa>>2]=e+1;c[E>>2]=e;c[da>>2]=Wv(c[Q>>2]|0)|0;c[ea>>2]=Wv(c[Q>>2]|0)|0;Qv(c[s>>2]|0,55,c[E>>2]|0,c[L>>2]|0)|0;c[fa>>2]=oy(c[s>>2]|0,22,c[X+4>>2]|0)|0;Tv(c[s>>2]|0,48,c[k>>2]|0,c[L>>2]|0,c[da>>2]|0)|0;Qv(c[s>>2]|0,69,c[E>>2]|0,c[ea>>2]|0)|0;Tv(c[s>>2]|0,70,c[E>>2]|0,c[da>>2]|0,c[ea>>2]|0)|0;Qv(c[s>>2]|0,16,0,c[fa>>2]|0)|0;jw(c[s>>2]|0,c[fa>>2]|0);Xv(c[Q>>2]|0,c[da>>2]|0);Xv(c[Q>>2]|0,c[ea>>2]|0)}else{c[aa+0>>2]=0;c[aa+4>>2]=0;c[aa+8>>2]=0;c[aa+12>>2]=0;c[aa+16>>2]=0;c[aa+20>>2]=0;c[aa+24>>2]=0;c[aa+28>>2]=0;c[aa>>2]=c[Q>>2];c[E>>2]=-1;if((c[n>>2]|0)!=0){da=c[c[n>>2]>>2]|0}else{da=0}c[L>>2]=da;c[N>>2]=0;while(1){if((c[N>>2]|0)>=(c[L>>2]|0)){break d}if((bx(aa,c[(c[(c[n>>2]|0)+4>>2]|0)+((c[N>>2]|0)*20|0)>>2]|0)|0)!=0){break a}c[N>>2]=(c[N>>2]|0)+1}}}while(0);if((c[p>>2]|0)==0){if((c[L>>2]|0)>0){c[F>>2]=b[(c[u>>2]|0)+36>>1]|0}}e:do{if((a[(c[u>>2]|0)+44>>0]&16|0)!=0){c[N>>2]=0;while(1){if((c[N>>2]|0)>=(b[(c[u>>2]|0)+38>>1]|0)){break e}c[P>>2]=(c[P>>2]|0)+((a[(c[(c[u>>2]|0)+4>>2]|0)+((c[N>>2]|0)*24|0)+23>>0]&2|0)!=0?1:0);c[N>>2]=(c[N>>2]|0)+1}}}while(0);do{if((c[p>>2]|0)==0){if((c[L>>2]|0)==0){break}if((c[L>>2]|0)==((b[(c[u>>2]|0)+38>>1]|0)-(c[P>>2]|0)|0)){break}e=c[Q>>2]|0;g=(b[(c[u>>2]|0)+38>>1]|0)-(c[P>>2]|0)|0;oa=c[L>>2]|0;c[_>>2]=c[m>>2];c[_+4>>2]=0;c[_+8>>2]=g;c[_+12>>2]=oa;bf(e,29856,_);break a}}while(0);do{if((c[p>>2]|0)!=0){if((c[L>>2]|0)==(c[(c[p>>2]|0)+4>>2]|0)){break}e=c[Q>>2]|0;oa=c[(c[p>>2]|0)+4>>2]|0;c[_>>2]=c[L>>2];c[_+4>>2]=oa;bf(e,29912,_);break a}}while(0);if((c[(c[H>>2]|0)+24>>2]&128|0)!=0){oa=(c[Q>>2]|0)+72|0;e=(c[oa>>2]|0)+1|0;c[oa>>2]=e;c[t>>2]=e;Qv(c[s>>2]|0,25,0,c[t>>2]|0)|0}f:do{if((c[z>>2]|0)==0){c[W>>2]=JA(c[Q>>2]|0,c[u>>2]|0,53,-1,0,l,U)|0;c[q>>2]=$e(c[H>>2]|0,(c[W>>2]|0)+1<<2)|0;if((c[q>>2]|0)==0){break a}c[N>>2]=0;while(1){if((c[N>>2]|0)>=(c[W>>2]|0)){break f}oa=(c[Q>>2]|0)+72|0;e=(c[oa>>2]|0)+1|0;c[oa>>2]=e;c[(c[q>>2]|0)+(c[N>>2]<<2)>>2]=e;c[N>>2]=(c[N>>2]|0)+1}}}while(0);do{if((a[J>>0]|0)!=0){c[S>>2]=oy(c[s>>2]|0,105,c[E>>2]|0)|0;c[T>>2]=sy(c[s>>2]|0)|0}else{if((c[o>>2]|0)==0){break}e=oy(c[s>>2]|0,22,c[X+4>>2]|0)|0;c[T>>2]=e;c[S>>2]=e}}while(0);c[M>>2]=cz(c[s>>2]|0)|0;if((c[ca>>2]&1|0)!=0){c[Z>>2]=fz(c[Q>>2]|0,(b[(c[u>>2]|0)+38>>1]|0)+1|0)|0;if((c[F>>2]|0)<0){Qv(c[s>>2]|0,25,-1,c[Z>>2]|0)|0}else{if((a[J>>0]|0)!=0){Tv(c[s>>2]|0,46,c[E>>2]|0,c[F>>2]|0,c[Z>>2]|0)|0}else{vz(c[Q>>2]|0,c[(c[(c[n>>2]|0)+4>>2]|0)+((c[F>>2]|0)*20|0)>>2]|0,c[Z>>2]|0)}c[Y>>2]=oy(c[s>>2]|0,77,c[Z>>2]|0)|0;Qv(c[s>>2]|0,25,-1,c[Z>>2]|0)|0;jw(c[s>>2]|0,c[Y>>2]|0);oy(c[s>>2]|0,38,c[Z>>2]|0)|0}c[N>>2]=0;while(1){if((c[N>>2]|0)>=(b[(c[u>>2]|0)+38>>1]|0)){break}g:do{if((c[p>>2]|0)==0){c[O>>2]=c[N>>2]}else{c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[(c[p>>2]|0)+4>>2]|0)){break g}if((c[(c[c[p>>2]>>2]|0)+(c[O>>2]<<3)+4>>2]|0)==(c[N>>2]|0)){break g}c[O>>2]=(c[O>>2]|0)+1}}}while(0);if((a[J>>0]|0)!=0){la=97}else{if((c[n>>2]|0)!=0){la=97}else{la=99}}do{if((la|0)==97){la=0;if((c[p>>2]|0)!=0){if((c[O>>2]|0)>=(c[(c[p>>2]|0)+4>>2]|0)){la=99;break}}if((a[J>>0]|0)!=0){Tv(c[s>>2]|0,46,c[E>>2]|0,c[O>>2]|0,(c[Z>>2]|0)+(c[N>>2]|0)+1|0)|0;break}else{XA(c[Q>>2]|0,c[(c[(c[n>>2]|0)+4>>2]|0)+((c[O>>2]|0)*20|0)>>2]|0,(c[Z>>2]|0)+(c[N>>2]|0)+1|0);break}}}while(0);if((la|0)==99){vz(c[Q>>2]|0,c[(c[(c[u>>2]|0)+4>>2]|0)+((c[N>>2]|0)*24|0)+4>>2]|0,(c[Z>>2]|0)+(c[N>>2]|0)+1|0)}c[N>>2]=(c[N>>2]|0)+1}if((c[z>>2]|0)==0){YA(c[s>>2]|0,c[u>>2]|0,(c[Z>>2]|0)+1|0)}ZA(c[Q>>2]|0,c[w>>2]|0,108,0,1,c[u>>2]|0,(c[Z>>2]|0)-(b[(c[u>>2]|0)+38>>1]|0)-1|0,c[v>>2]|0,c[M>>2]|0);iz(c[Q>>2]|0,c[Z>>2]|0,(b[(c[u>>2]|0)+38>>1]|0)+1|0)}do{if((c[z>>2]|0)==0){if((a[(c[u>>2]|0)+44>>0]&16|0)!=0){Qv(c[s>>2]|0,28,0,c[K>>2]|0)|0}h:do{if((c[F>>2]|0)>=0){do{if((a[J>>0]|0)!=0){Tv(c[s>>2]|0,46,c[E>>2]|0,c[F>>2]|0,c[G>>2]|0)|0}else{if((c[o>>2]|0)!=0){Qv(c[s>>2]|0,33,(c[k>>2]|0)+(c[F>>2]|0)|0,c[G>>2]|0)|0;break}vz(c[Q>>2]|0,c[(c[(c[n>>2]|0)+4>>2]|0)+((c[F>>2]|0)*20|0)>>2]|0,c[G>>2]|0);c[$>>2]=Kz(c[s>>2]|0,-1)|0;if((c[$>>2]|0)==0){break}if((d[c[$>>2]>>0]|0)!=28){break}if((a[(c[u>>2]|0)+44>>0]&16|0)!=0){break}a[D>>0]=1;a[c[$>>2]>>0]=69;c[(c[$>>2]|0)+4>>2]=c[l>>2];c[(c[$>>2]|0)+8>>2]=c[G>>2];c[(c[$>>2]|0)+12>>2]=c[R>>2]}}while(0);if((a[D>>0]|0)!=0){break}W=c[s>>2]|0;if((a[(c[u>>2]|0)+44>>0]&16|0)!=0){c[I>>2]=sy(W)|0;Qv(c[s>>2]|0,76,c[G>>2]|0,(c[I>>2]|0)+2|0)|0}else{c[I>>2]=oy(W,77,c[G>>2]|0)|0;Tv(c[s>>2]|0,69,c[l>>2]|0,c[G>>2]|0,c[R>>2]|0)|0;jw(c[s>>2]|0,c[I>>2]|0)}oy(c[s>>2]|0,38,c[G>>2]|0)|0}else{do{if((a[(c[u>>2]|0)+44>>0]&16|0)==0){if((d[ba>>0]|0)!=0){break}Tv(c[s>>2]|0,69,c[l>>2]|0,c[G>>2]|0,c[R>>2]|0)|0;a[D>>0]=1;break h}}while(0);Qv(c[s>>2]|0,28,0,c[G>>2]|0)|0}}while(0);_A(c[Q>>2]|0,c[R>>2]|0,c[G>>2]|0);c[P>>2]=0;c[N>>2]=0;while(1){if((c[N>>2]|0)>=(b[(c[u>>2]|0)+38>>1]|0)){break}c[C>>2]=(c[G>>2]|0)+1+(c[N>>2]|0);i:do{if((c[N>>2]|0)==(b[(c[u>>2]|0)+36>>1]|0)){oy(c[s>>2]|0,29,c[C>>2]|0)|0}else{j:do{if((c[p>>2]|0)==0){if((a[(c[(c[u>>2]|0)+4>>2]|0)+((c[N>>2]|0)*24|0)+23>>0]&2|0)!=0){c[O>>2]=-1;c[P>>2]=(c[P>>2]|0)+1;break}else{c[O>>2]=(c[N>>2]|0)-(c[P>>2]|0);break}}else{c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[(c[p>>2]|0)+4>>2]|0)){break j}if((c[(c[c[p>>2]>>2]|0)+(c[O>>2]<<3)+4>>2]|0)==(c[N>>2]|0)){break j}c[O>>2]=(c[O>>2]|0)+1}}}while(0);do{if((c[O>>2]|0)>=0){if((c[L>>2]|0)==0){break}if((c[p>>2]|0)!=0){if((c[O>>2]|0)>=(c[(c[p>>2]|0)+4>>2]|0)){break}}if((a[J>>0]|0)!=0){Tv(c[s>>2]|0,46,c[E>>2]|0,c[O>>2]|0,c[C>>2]|0)|0;break i}if((c[o>>2]|0)==0){vz(c[Q>>2]|0,c[(c[(c[n>>2]|0)+4>>2]|0)+((c[O>>2]|0)*20|0)>>2]|0,c[C>>2]|0);break i}if((c[k>>2]|0)==(c[y>>2]|0)){break i}Qv(c[s>>2]|0,34,(c[k>>2]|0)+(c[O>>2]|0)|0,c[C>>2]|0)|0;break i}}while(0);$A(c[Q>>2]|0,c[(c[(c[u>>2]|0)+4>>2]|0)+((c[N>>2]|0)*24|0)+4>>2]|0,c[C>>2]|0)}}while(0);c[N>>2]=(c[N>>2]|0)+1}if((a[(c[u>>2]|0)+44>>0]&16|0)!=0){c[x>>2]=ww(c[H>>2]|0,c[u>>2]|0)|0;aB(c[Q>>2]|0,c[u>>2]|0);Sv(c[s>>2]|0,15,1,(b[(c[u>>2]|0)+38>>1]|0)+2|0,c[K>>2]|0,c[x>>2]|0,-10)|0;gf(c[s>>2]|0,((c[v>>2]|0)==10?2:c[v>>2]|0)&255);xw(c[Q>>2]|0);break}else{bB(c[Q>>2]|0,c[u>>2]|0,c[q>>2]|0,c[l>>2]|0,c[U>>2]|0,c[K>>2]|0,0,(c[F>>2]|0)>=0&255,c[v>>2]&255,c[M>>2]|0,V);cB(c[Q>>2]|0,c[u>>2]|0,0,c[K>>2]|0,0,0);dB(c[Q>>2]|0,c[u>>2]|0,c[l>>2]|0,c[U>>2]|0,c[K>>2]|0,c[q>>2]|0,0,d[D>>0]|0,(c[V>>2]|0)==0&1);break}}}while(0);if((c[(c[H>>2]|0)+24>>2]&128|0)!=0){Qv(c[s>>2]|0,37,c[t>>2]|0,1)|0}if((c[w>>2]|0)!=0){ZA(c[Q>>2]|0,c[w>>2]|0,108,0,2,c[u>>2]|0,(c[y>>2]|0)-2-(b[(c[u>>2]|0)+38>>1]|0)|0,c[v>>2]|0,c[M>>2]|0)}$y(c[s>>2]|0,c[M>>2]|0);do{if((a[J>>0]|0)!=0){Qv(c[s>>2]|0,9,c[E>>2]|0,c[T>>2]|0)|0;jw(c[s>>2]|0,c[S>>2]|0);oy(c[s>>2]|0,58,c[E>>2]|0)|0}else{if((c[o>>2]|0)==0){break}Qv(c[s>>2]|0,16,0,c[T>>2]|0)|0;jw(c[s>>2]|0,c[S>>2]|0)}}while(0);if((a[(c[u>>2]|0)+44>>0]&16|0)!=0){break}if((c[z>>2]|0)!=0){break}if((c[l>>2]|0)<(c[U>>2]|0)){oy(c[s>>2]|0,58,c[l>>2]|0)|0}c[B>>2]=0;c[A>>2]=c[(c[u>>2]|0)+8>>2];while(1){if((c[A>>2]|0)==0){break b}oy(c[s>>2]|0,58,(c[B>>2]|0)+(c[U>>2]|0)|0)|0;c[A>>2]=c[(c[A>>2]|0)+20>>2];c[B>>2]=(c[B>>2]|0)+1}}}while(0);if((d[(c[Q>>2]|0)+18>>0]|0)==0){if((c[(c[Q>>2]|0)+412>>2]|0)==0){eB(c[Q>>2]|0)}}if((c[(c[H>>2]|0)+24>>2]&128|0)!=0){if((a[(c[Q>>2]|0)+18>>0]|0)==0){if((c[(c[Q>>2]|0)+412>>2]|0)==0){Qv(c[s>>2]|0,35,c[t>>2]|0,1)|0;rA(c[s>>2]|0,1);sA(c[s>>2]|0,0,0,29944,0)|0}}}}}}}}}}}}while(0);fu(c[H>>2]|0,c[m>>2]|0);cu(c[H>>2]|0,c[n>>2]|0);du(c[H>>2]|0,c[o>>2]|0);hu(c[H>>2]|0,c[p>>2]|0);cc(c[H>>2]|0,c[q>>2]|0);i=r;return}function av(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;k=e;g=e+4|0;h=e+8|0;j=e+12|0;c[k>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[g>>2]|0)==0){c[g>>2]=ve(c[k>>2]|0,8)|0;if((c[g>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}}d=QA(c[k>>2]|0,c[c[g>>2]>>2]|0,8,(c[g>>2]|0)+4|0,j)|0;c[c[g>>2]>>2]=d;d=c[k>>2]|0;if((c[j>>2]|0)<0){hu(d,c[g>>2]|0);c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}else{a=Iv(d,c[h>>2]|0)|0;c[(c[c[g>>2]>>2]|0)+(c[j>>2]<<3)>>2]=a;c[f>>2]=c[g>>2];a=c[f>>2]|0;i=e;return a|0}return 0}function bv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e;g=e+4|0;c[f>>2]=a;c[h>>2]=b;c[g>>2]=d;c[(c[f>>2]|0)+4>>2]=c[c[h>>2]>>2];c[(c[f>>2]|0)+8>>2]=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0);i=e;return}function cv(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+48|0;j=n+8|0;h=n+36|0;l=n+32|0;k=n+28|0;f=n+24|0;m=n+40|0;o=n+12|0;q=n;r=n+16|0;s=n+42|0;p=n+20|0;c[h>>2]=d;c[l>>2]=e;c[k>>2]=c[c[h>>2]>>2];if((c[l>>2]|0)==0){i=n;return}c[f>>2]=c[(c[l>>2]|0)+8>>2];do{if((a[(c[f>>2]|0)+1>>0]|0)==0){e=(c[h>>2]|0)+440|0;d=(c[e>>2]|0)+1|0;c[e>>2]=d;b[(c[l>>2]|0)+32>>1]=d}else{b[m>>1]=0;c[o>>2]=Ub(c[f>>2]|0)|0;if((a[c[f>>2]>>0]|0)==63){c[r>>2]=0==(Pg((c[f>>2]|0)+1|0,q,(c[o>>2]|0)-1|0,1)|0)&1;d=c[q>>2]&65535;b[m>>1]=d;b[(c[l>>2]|0)+32>>1]=d;if((c[r>>2]|0)==0){g=8}else{d=q;e=c[d+4>>2]|0;if((e|0)<0|(e|0)==0&(c[d>>2]|0)>>>0<1){g=8}else{e=q;r=c[e+4>>2]|0;d=c[(c[k>>2]|0)+124>>2]|0;s=((d|0)<0)<<31>>31;if((r|0)>(s|0)|((r|0)==(s|0)?(c[e>>2]|0)>>>0>d>>>0:0)){g=8}}}if((g|0)==8){d=c[h>>2]|0;c[j>>2]=c[(c[k>>2]|0)+124>>2];bf(d,29752,j);b[m>>1]=0}e=q;r=c[e+4>>2]|0;d=c[(c[h>>2]|0)+440>>2]|0;s=((d|0)<0)<<31>>31;if((r|0)>(s|0)|((r|0)==(s|0)?(c[e>>2]|0)>>>0>d>>>0:0)){c[(c[h>>2]|0)+440>>2]=c[q>>2]}}else{b[s>>1]=0;while(1){if((b[s>>1]|0)>=(c[(c[h>>2]|0)+444>>2]|0)){break}if((c[(c[(c[h>>2]|0)+472>>2]|0)+(b[s>>1]<<2)>>2]|0)!=0){if((YK(c[(c[(c[h>>2]|0)+472>>2]|0)+(b[s>>1]<<2)>>2]|0,c[f>>2]|0)|0)==0){g=15;break}}b[s>>1]=(b[s>>1]|0)+1<<16>>16}if((g|0)==15){d=(b[s>>1]|0)+1&65535;b[m>>1]=d;b[(c[l>>2]|0)+32>>1]=d}if((b[m>>1]|0)==0){e=(c[h>>2]|0)+440|0;d=(c[e>>2]|0)+1|0;c[e>>2]=d;d=d&65535;b[(c[l>>2]|0)+32>>1]=d;b[m>>1]=d}}if((b[m>>1]|0)>0){do{if((b[m>>1]|0)>(c[(c[h>>2]|0)+444>>2]|0)){c[p>>2]=Ot(c[k>>2]|0,c[(c[h>>2]|0)+472>>2]|0,b[m>>1]<<2)|0;if((c[p>>2]|0)==0){i=n;return}else{c[(c[h>>2]|0)+472>>2]=c[p>>2];aL((c[p>>2]|0)+(c[(c[h>>2]|0)+444>>2]<<2)|0,0,(b[m>>1]|0)-(c[(c[h>>2]|0)+444>>2]|0)<<2|0)|0;c[(c[h>>2]|0)+444>>2]=b[m>>1]|0;break}}}while(0);if((a[c[f>>2]>>0]|0)==63){if((c[(c[(c[h>>2]|0)+472>>2]|0)+((b[m>>1]|0)-1<<2)>>2]|0)!=0){break}}cc(c[k>>2]|0,c[(c[(c[h>>2]|0)+472>>2]|0)+((b[m>>1]|0)-1<<2)>>2]|0);d=ft(c[k>>2]|0,c[f>>2]|0,c[o>>2]|0)|0;c[(c[(c[h>>2]|0)+472>>2]|0)+((b[m>>1]|0)-1<<2)>>2]=d}}}while(0);if((c[(c[h>>2]|0)+64>>2]|0)!=0){i=n;return}if((c[(c[h>>2]|0)+440>>2]|0)<=(c[(c[k>>2]|0)+124>>2]|0)){i=n;return}bf(c[h>>2]|0,29800,j);i=n;return}function dv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e+12|0;f=e;j=e+4|0;g=e+8|0;c[h>>2]=a;c[f>>2]=b;c[j>>2]=d;if(!((c[(c[j>>2]|0)+4>>2]|0)>>>0>0)){a=c[f>>2]|0;i=e;return a|0}c[g>>2]=Wx(c[c[h>>2]>>2]|0,95,c[j>>2]|0,1)|0;if((c[g>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}c[(c[g>>2]|0)+12>>2]=c[f>>2];a=(c[g>>2]|0)+4|0;c[a>>2]=c[a>>2]|4352;c[f>>2]=c[g>>2];a=c[f>>2]|0;i=e;return a|0}function ev(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;k=e;g=e+4|0;l=e+8|0;j=e+12|0;h=e+16|0;c[k>>2]=a;c[g>>2]=b;c[l>>2]=d;c[h>>2]=c[c[k>>2]>>2];c[j>>2]=Wx(c[h>>2]|0,153,c[l>>2]|0,1)|0;if((c[j>>2]|0)==0){cu(c[h>>2]|0,c[g>>2]|0);c[f>>2]=0;l=c[f>>2]|0;i=e;return l|0}else{c[(c[j>>2]|0)+20>>2]=c[g>>2];jv(c[k>>2]|0,c[j>>2]|0);c[f>>2]=c[j>>2];l=c[f>>2]|0;i=e;return l|0}return 0}function fv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;m=g;l=g+4|0;k=g+8|0;j=g+12|0;c[h>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;a=Bu(c[m>>2]|0,c[l>>2]|0,c[c[k>>2]>>2]|0,c[c[j>>2]>>2]|0,0)|0;c[c[h>>2]>>2]=a;c[(c[h>>2]|0)+4>>2]=c[(c[k>>2]|0)+4>>2];c[(c[h>>2]|0)+8>>2]=c[(c[j>>2]|0)+8>>2];i=g;return}function gv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;m=g;l=g+4|0;k=g+8|0;j=g+12|0;c[h>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;a=Bu(c[m>>2]|0,c[l>>2]|0,c[c[k>>2]>>2]|0,0,0)|0;c[c[h>>2]>>2]=a;c[(c[h>>2]|0)+4>>2]=c[(c[k>>2]|0)+4>>2];c[(c[h>>2]|0)+8>>2]=(c[c[j>>2]>>2]|0)+(c[(c[j>>2]|0)+4>>2]|0);i=g;return}function hv(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;n=h+16|0;m=h;k=h+4|0;j=h+8|0;l=h+12|0;c[n>>2]=b;c[m>>2]=e;c[k>>2]=f;c[j>>2]=g;c[l>>2]=c[c[n>>2]>>2];if((d[(c[l>>2]|0)+64>>0]|0|0)!=0){i=h;return}if((d[c[m>>2]>>0]|0|0)!=101){i=h;return}a[c[k>>2]>>0]=c[j>>2];gu(c[l>>2]|0,c[(c[k>>2]|0)+16>>2]|0);c[(c[k>>2]|0)+16>>2]=0;i=h;return}function iv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;m=g;l=g+4|0;j=g+8|0;k=g+12|0;c[h>>2]=a;c[m>>2]=b;c[l>>2]=d;c[j>>2]=e;c[k>>2]=f;a=Bu(c[m>>2]|0,c[l>>2]|0,c[c[j>>2]>>2]|0,0,0)|0;c[c[h>>2]>>2]=a;c[(c[h>>2]|0)+4>>2]=c[c[k>>2]>>2];c[(c[h>>2]|0)+8>>2]=c[(c[j>>2]|0)+8>>2];i=g;return}function jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;Yx(c[e>>2]|0);wx(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0)|0;i=d;return}function kv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=i;i=i+64|0;j=l;h=l+48|0;f=l+44|0;k=l+40|0;m=l+36|0;n=l+32|0;g=l+52|0;r=l+20|0;o=l+16|0;p=l+12|0;q=l+24|0;s=l+28|0;c[h>>2]=b;c[f>>2]=d;c[k>>2]=e;c[g>>2]=c[c[h>>2]>>2];if((a[(c[g>>2]|0)+64>>0]|0)!=0){d=c[g>>2]|0;b=c[f>>2]|0;fu(d,b);i=l;return}if(0!=(gy(c[h>>2]|0)|0)){d=c[g>>2]|0;b=c[f>>2]|0;fu(d,b);i=l;return}c[m>>2]=tw(c[g>>2]|0,c[(c[f>>2]|0)+16>>2]|0,c[(c[f>>2]|0)+12>>2]|0)|0;if((c[m>>2]|0)==0){n=c[h>>2]|0;m=c[f>>2]|0;if((c[k>>2]|0)!=0){eA(n,c[m+12>>2]|0)}else{c[j>>2]=m;c[j+4>>2]=0;bf(n,29512,j)}a[(c[h>>2]|0)+17>>0]=1;d=c[g>>2]|0;b=c[f>>2]|0;fu(d,b);i=l;return}if((a[(c[m>>2]|0)+55>>0]&3|0)!=0){d=c[h>>2]|0;c[j>>2]=0;bf(d,29536,j);d=c[g>>2]|0;b=c[f>>2]|0;fu(d,b);i=l;return}c[r>>2]=ef(c[g>>2]|0,c[(c[m>>2]|0)+24>>2]|0)|0;c[o>>2]=10;c[p>>2]=c[(c[m>>2]|0)+12>>2];c[q>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[r>>2]<<4)>>2];c[s>>2]=(c[r>>2]|0)==1?21432:21456;if((Lv(c[h>>2]|0,9,c[s>>2]|0,0,c[q>>2]|0)|0)!=0){d=c[g>>2]|0;b=c[f>>2]|0;fu(d,b);i=l;return}if((c[r>>2]|0)!=0){c[o>>2]=12}if((Lv(c[h>>2]|0,c[o>>2]|0,c[c[m>>2]>>2]|0,c[c[p>>2]>>2]|0,c[q>>2]|0)|0)!=0){d=c[g>>2]|0;b=c[f>>2]|0;fu(d,b);i=l;return}c[n>>2]=Ov(c[h>>2]|0)|0;if((c[n>>2]|0)==0){d=c[g>>2]|0;b=c[f>>2]|0;fu(d,b);i=l;return}$v(c[h>>2]|0,1,c[r>>2]|0);d=c[h>>2]|0;s=(c[r>>2]|0)==1?21432:21456;b=c[c[m>>2]>>2]|0;c[j>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[r>>2]<<4)>>2];c[j+4>>2]=s;c[j+8>>2]=b;Nv(d,29616,j);OA(c[h>>2]|0,c[r>>2]|0,24680,c[c[m>>2]>>2]|0);Pv(c[h>>2]|0,c[r>>2]|0);PA(c[h>>2]|0,c[(c[m>>2]|0)+44>>2]|0,c[r>>2]|0);Sv(c[n>>2]|0,122,c[r>>2]|0,0,0,c[c[m>>2]>>2]|0,0)|0;d=c[g>>2]|0;b=c[f>>2]|0;fu(d,b);i=l;return}function lv(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=Ov(c[e>>2]|0)|0;if((c[d>>2]|0)==0){i=b;return}Qv(c[d>>2]|0,13,0,0)|0;jf(c[d>>2]|0,0);i=b;return}function mv(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0;o=i;i=i+512|0;t=o;q=o+268|0;yb=o+328|0;kb=o+356|0;wb=o+260|0;vb=o+496|0;l=o+492|0;m=o+488|0;F=o+484|0;xb=o+480|0;ub=o+464|0;s=o+460|0;db=o+456|0;eb=o+452|0;Ca=o+448|0;ua=o+444|0;n=o+440|0;hb=o+436|0;p=o+432|0;tb=o+428|0;wa=o+424|0;va=o+420|0;ta=o+416|0;na=o+412|0;sa=o+408|0;ra=o+404|0;lb=o+400|0;u=o+396|0;fb=o+392|0;gb=o+388|0;ib=o+384|0;jb=o+380|0;Ua=o+376|0;Ta=o+372|0;Va=o+368|0;cb=o+364|0;ya=o+360|0;xa=o+16|0;Qa=o+352|0;Sa=o+348|0;Ra=o+344|0;Aa=o+340|0;Ba=o+336|0;Fa=o+332|0;za=o+8|0;Ea=o+324|0;ma=o+320|0;ia=o+316|0;ka=o+312|0;ha=o+308|0;la=o+304|0;ja=o+300|0;ga=o+296|0;Ma=o+292|0;Ka=o+288|0;La=o+284|0;Ga=o+280|0;Ia=o+276|0;Da=o+272|0;Ha=o+500|0;Oa=o+264|0;Na=o+256|0;Pa=o+140|0;Ja=o+136|0;ob=o+132|0;mb=o+128|0;nb=o+124|0;qb=o+120|0;qa=o+116|0;rb=o+112|0;pb=o+108|0;sb=o+104|0;oa=o+100|0;pa=o+96|0;L=o+92|0;G=o+88|0;M=o+84|0;N=o+52|0;K=o+32|0;$=o+36|0;H=o+40|0;ea=o+44|0;J=o+48|0;T=o+56|0;I=o+60|0;P=o+64|0;R=o+68|0;Q=o+72|0;S=o+76|0;Y=o+80|0;E=o+144|0;V=o+148|0;W=o+152|0;Z=o+156|0;ba=o+160|0;aa=o+164|0;X=o+168|0;O=o+172|0;U=o+176|0;C=o+180|0;B=o+184|0;ca=o+188|0;z=o+192|0;_=o+196|0;da=o+200|0;x=o+204|0;y=o+208|0;w=o+212|0;A=o+216|0;v=o+220|0;fa=o+224|0;Wa=o+228|0;Ya=o+232|0;Xa=o+236|0;$a=o+240|0;ab=o+244|0;Za=o+248|0;_a=o+252|0;bb=o+24|0;c[q>>2]=f;c[yb>>2]=g;c[kb>>2]=h;c[wb>>2]=j;c[vb>>2]=k;c[l>>2]=0;c[m>>2]=0;c[F>>2]=0;c[n>>2]=c[c[q>>2]>>2];c[p>>2]=Ov(c[q>>2]|0)|0;if((c[p>>2]|0)==0){i=o;return}qA(c[p>>2]|0);c[(c[q>>2]|0)+72>>2]=2;c[s>>2]=ky(c[q>>2]|0,c[yb>>2]|0,c[kb>>2]|0,xb)|0;if((c[s>>2]|0)<0){i=o;return}c[hb>>2]=(c[(c[n>>2]|0)+16>>2]|0)+(c[s>>2]<<4);if((c[s>>2]|0)==1){if((bw(c[q>>2]|0)|0)!=0){i=o;return}}c[l>>2]=Iv(c[n>>2]|0,c[xb>>2]|0)|0;if((c[l>>2]|0)==0){i=o;return}k=c[n>>2]|0;wb=c[wb>>2]|0;if((c[vb>>2]|0)!=0){c[t>>2]=wb;c[m>>2]=cf(k,26776,t)|0}else{c[m>>2]=Iv(k,wb)|0}if((c[(c[kb>>2]|0)+4>>2]|0)>>>0>0){vb=c[c[hb>>2]>>2]|0}else{vb=0}c[F>>2]=vb;a:do{if((Lv(c[q>>2]|0,19,c[l>>2]|0,c[m>>2]|0,c[F>>2]|0)|0)==0){c[ub>>2]=0;c[ub+4>>2]=c[l>>2];c[ub+8>>2]=c[m>>2];c[ub+12>>2]=0;c[(c[n>>2]|0)+444>>2]=0;c[ua>>2]=Fg(c[n>>2]|0,c[F>>2]|0,14,ub)|0;if((c[ua>>2]|0)==0){if((c[ub>>2]|0)==0){break}yb=(c[q>>2]|0)+72|0;h=(c[yb>>2]|0)+1|0;c[yb>>2]=h;c[tb>>2]=h;Sv(c[p>>2]|0,97,0,c[tb>>2]|0,0,c[ub>>2]|0,0)|0;rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,26784,0)|0;Qv(c[p>>2]|0,35,c[tb>>2]|0,1)|0;oc(c[ub>>2]|0);break}if((c[ua>>2]|0)!=12){if((c[ub>>2]|0)!=0){h=c[q>>2]|0;c[t>>2]=c[ub>>2];bf(h,1768,t);oc(c[ub>>2]|0)}h=(c[q>>2]|0)+64|0;c[h>>2]=(c[h>>2]|0)+1;c[(c[q>>2]|0)+12>>2]=c[ua>>2];break}c[db>>2]=0;c[eb>>2]=53;while(1){if((c[db>>2]|0)>(c[eb>>2]|0)){break}c[Ca>>2]=((c[db>>2]|0)+(c[eb>>2]|0)|0)/2|0;c[ua>>2]=Dc(c[l>>2]|0,c[26792+((c[Ca>>2]|0)*12|0)>>2]|0)|0;if((c[ua>>2]|0)==0){break}tb=c[Ca>>2]|0;if((c[ua>>2]|0)<0){c[eb>>2]=tb-1;continue}else{c[db>>2]=tb+1;continue}}if((c[db>>2]|0)<=(c[eb>>2]|0)){if((a[26797+((c[Ca>>2]|0)*12|0)>>0]&1|0)!=0){if((gy(c[q>>2]|0)|0)!=0){break}}do{switch(d[26796+((c[Ca>>2]|0)*12|0)>>0]|0){case 22:{aw(c[q>>2]|0,c[s>>2]|0);r=(c[q>>2]|0)+72|0;q=(c[r>>2]|0)+1|0;c[r>>2]=q;c[u>>2]=q;q=c[p>>2]|0;r=c[s>>2]|0;s=c[u>>2]|0;if((d[784+(d[c[l>>2]>>0]|0)>>0]|0)==112){Qv(q,153,r,s)|0}else{Tv(q,154,r,s,Ky(Vg(c[m>>2]|0)|0)|0)|0}Qv(c[p>>2]|0,35,c[u>>2]|0,1)|0;rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,c[l>>2]|0,-1)|0;break a};case 21:{c[fb>>2]=27528;c[gb>>2]=uA(c[m>>2]|0)|0;if((c[(c[kb>>2]|0)+4>>2]|0)==0){if((c[gb>>2]|0)==-1){c[gb>>2]=d[(c[n>>2]|0)+65>>0]|0}else{r=53}}else{r=53}if((r|0)==53){if((c[(c[kb>>2]|0)+4>>2]|0)==0){c[jb>>2]=2;while(1){if((c[jb>>2]|0)>=(c[(c[n>>2]|0)+20>>2]|0)){break}c[ib>>2]=Zb(c[(c[(c[n>>2]|0)+16>>2]|0)+(c[jb>>2]<<4)+4>>2]|0)|0;$z(c[ib>>2]|0,c[gb>>2]|0)|0;c[jb>>2]=(c[jb>>2]|0)+1}a[(c[n>>2]|0)+65>>0]=c[gb>>2]}c[ib>>2]=Zb(c[(c[hb>>2]|0)+4>>2]|0)|0;c[gb>>2]=$z(c[ib>>2]|0,c[gb>>2]|0)|0}if((c[gb>>2]|0)==1){c[fb>>2]=27536}rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,27552,0)|0;Sv(c[p>>2]|0,97,0,1,0,c[fb>>2]|0,0)|0;Qv(c[p>>2]|0,35,1,1)|0;break a};case 25:{c[sa>>2]=c[(c[hb>>2]|0)+4>>2];c[ra>>2]=-1;if((c[m>>2]|0)!=0){c[ra>>2]=(Og(c[m>>2]|0,0)|0)&255}b:do{if((c[(c[kb>>2]|0)+4>>2]|0)==0){if((c[ra>>2]|0)>=0){c[lb>>2]=0;while(1){if((c[lb>>2]|0)>=(c[(c[n>>2]|0)+20>>2]|0)){break b}aA(c[(c[(c[n>>2]|0)+16>>2]|0)+(c[lb>>2]<<4)+4>>2]|0,c[ra>>2]|0)|0;c[lb>>2]=(c[lb>>2]|0)+1}}}}while(0);c[ra>>2]=aA(c[sa>>2]|0,c[ra>>2]|0)|0;h=c[ra>>2]|0;tA(c[q>>2]|0,27512,h,((h|0)<0)<<31>>31);break a};case 24:{c[ta>>2]=c[(c[hb>>2]|0)+4>>2];if((c[m>>2]|0)!=0){h=Vg(c[m>>2]|0)|0;c[(c[n>>2]|0)+72>>2]=h;if(7!=(Ig(c[ta>>2]|0,c[(c[n>>2]|0)+72>>2]|0,-1,0)|0)){break a}a[(c[n>>2]|0)+64>>0]=1;break a}if((c[ta>>2]|0)!=0){p=Zc(c[ta>>2]|0)|0}else{p=0}c[na>>2]=p;h=c[na>>2]|0;tA(c[q>>2]|0,27496,h,((h|0)<0)<<31>>31);break a};case 10:{jf(c[p>>2]|0,c[s>>2]|0);if((c[m>>2]|0)!=0){c[va>>2]=Ky(Vg(c[m>>2]|0)|0)|0;$v(c[q>>2]|0,0,c[s>>2]|0);Qv(c[p>>2]|0,25,c[va>>2]|0,1)|0;Tv(c[p>>2]|0,51,c[s>>2]|0,3,1)|0;c[(c[(c[hb>>2]|0)+12>>2]|0)+80>>2]=c[va>>2];Ly(c[(c[hb>>2]|0)+4>>2]|0,c[(c[(c[hb>>2]|0)+12>>2]|0)+80>>2]|0)|0;break a}else{rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,27480,0)|0;h=(c[q>>2]|0)+72|0;c[h>>2]=(c[h>>2]|0)+2;c[wa>>2]=hf(c[p>>2]|0,9,27440,0)|0;kf(c[p>>2]|0,c[wa>>2]|0,c[s>>2]|0);kf(c[p>>2]|0,(c[wa>>2]|0)+1|0,c[s>>2]|0);kf(c[p>>2]|0,(c[wa>>2]|0)+6|0,2e3);break a}};case 19:{c[ya>>2]=Zb(c[(c[hb>>2]|0)+4>>2]|0)|0;h=xa;c[h>>2]=-2;c[h+4>>2]=-1;if((c[m>>2]|0)!=0){h=c[m>>2]|0;Pg(h,xa,Ub(c[m>>2]|0)|0,1)|0;h=xa;yb=c[h+4>>2]|0;if((yb|0)<-1|(yb|0)==-1&(c[h>>2]|0)>>>0<4294967295){h=xa;c[h>>2]=-1;c[h+4>>2]=-1}}yb=xa;h=xa;c[h>>2]=wA(c[ya>>2]|0,c[yb>>2]|0,c[yb+4>>2]|0)|0;c[h+4>>2]=D;h=xa;tA(c[q>>2]|0,27584,c[h>>2]|0,c[h+4>>2]|0);break a};case 23:{h=za;c[h>>2]=0;c[h+4>>2]=0;c[ua>>2]=0;if((c[ua>>2]|0)==0){h=za;tA(c[q>>2]|0,27648,c[h>>2]|0,c[h+4>>2]|0);break a}if((c[ua>>2]|0)==12){break a}h=(c[q>>2]|0)+64|0;c[h>>2]=(c[h>>2]|0)+1;c[(c[q>>2]|0)+12>>2]=c[ua>>2];break a};case 14:{if((c[m>>2]|0)==0){r=92}else{h=(Wg(c[m>>2]|0,Aa)|0)==0;if(h|(c[Aa>>2]|0)<=0){r=92}}if((r|0)==92){c[Aa>>2]=2147483647}$v(c[q>>2]|0,0,c[s>>2]|0);Qv(c[p>>2]|0,25,c[Aa>>2]|0,1)|0;c[Ba>>2]=oy(c[p>>2]|0,138,c[s>>2]|0)|0;oy(c[p>>2]|0,35,1)|0;Qv(c[p>>2]|0,37,1,-1)|0;Qv(c[p>>2]|0,134,1,c[Ba>>2]|0)|0;jw(c[p>>2]|0,c[Ba>>2]|0);break a};case 29:{if((c[m>>2]|0)==0){h=(d[(c[hb>>2]|0)+8>>0]|0)-1|0;tA(c[q>>2]|0,27736,h,((h|0)<0)<<31>>31);break a}if((a[(c[n>>2]|0)+62>>0]|0)!=0){h=((Ug(c[m>>2]|0,0,1)|0)&255)+1&255;a[(c[hb>>2]|0)+8>>0]=h;CA(c[n>>2]|0);break a}else{bf(c[q>>2]|0,27752,t);break a}};case 2:{if((c[m>>2]|0)==0){h=(c[(c[n>>2]|0)+24>>2]&c[26800+((c[Ca>>2]|0)*12|0)>>2]|0)!=0&1;tA(c[q>>2]|0,c[26792+((c[Ca>>2]|0)*12|0)>>2]|0,h,((h|0)<0)<<31>>31);break a}c[ma>>2]=c[26800+((c[Ca>>2]|0)*12|0)>>2];if((d[(c[n>>2]|0)+62>>0]|0)==0){c[ma>>2]=c[ma>>2]&-524289}h=(Og(c[m>>2]|0,0)|0)<<24>>24!=0;q=c[ma>>2]|0;if(h){h=(c[n>>2]|0)+24|0;c[h>>2]=c[h>>2]|q}else{h=(c[n>>2]|0)+24|0;c[h>>2]=c[h>>2]&~q;if((c[ma>>2]|0)==16777216){h=(c[n>>2]|0)+504|0;c[h>>2]=0;c[h+4>>2]=0}}Qv(c[p>>2]|0,139,0,0)|0;CA(c[n>>2]|0);break a};case 31:{p=c[q>>2]|0;if((c[m>>2]|0)!=0){AA(p,c[m>>2]|0)|0;break a}else{tA(p,27664,d[(c[n>>2]|0)+63>>0]|0,0);break a}};case 32:{if((c[m>>2]|0)==0){if((c[472]|0)==0){break a}rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,27680,0)|0;Sv(c[p>>2]|0,97,0,1,0,c[472]|0,0)|0;Qv(c[p>>2]|0,35,1,1)|0;break a}do{if((a[c[m>>2]>>0]|0)!=0){c[ua>>2]=op(c[c[n>>2]>>2]|0,c[m>>2]|0,1,Ea)|0;if((c[ua>>2]|0)==0){if((c[Ea>>2]|0)!=0){break}}bf(c[q>>2]|0,27704,t);break a}}while(0);if((d[(c[n>>2]|0)+63>>0]|0)<=1){BA(c[q>>2]|0)|0}oc(c[472]|0);if((a[c[m>>2]>>0]|0)!=0){c[t>>2]=c[m>>2];c[472]=wc(1768,t)|0;break a}else{c[472]=0;break a}};case 4:{if((c[m>>2]|0)!=0){c[Fa>>2]=Vg(c[m>>2]|0)|0;c[(c[(c[hb>>2]|0)+12>>2]|0)+80>>2]=c[Fa>>2];Ly(c[(c[hb>>2]|0)+4>>2]|0,c[(c[(c[hb>>2]|0)+12>>2]|0)+80>>2]|0)|0;break a}else{h=c[(c[(c[hb>>2]|0)+12>>2]|0)+80>>2]|0;tA(c[q>>2]|0,27480,h,((h|0)<0)<<31>>31);break a}};case 1:{c[Qa>>2]=c[(c[hb>>2]|0)+4>>2];if((c[m>>2]|0)==0){yb=c[q>>2]|0;h=xA(c[Qa>>2]|0)|0;tA(yb,27608,h,((h|0)<0)<<31>>31);break a}c[Sa>>2]=yA(c[m>>2]|0)|0;a[(c[n>>2]|0)+66>>0]=c[Sa>>2];c[ua>>2]=zA(c[Qa>>2]|0,c[Sa>>2]|0)|0;if((c[ua>>2]|0)!=0){break a}if(!((c[Sa>>2]|0)==1|(c[Sa>>2]|0)==2)){break a}c[Ra>>2]=hf(c[p>>2]|0,6,27624,0)|0;kf(c[p>>2]|0,c[Ra>>2]|0,c[s>>2]|0);kf(c[p>>2]|0,(c[Ra>>2]|0)+1|0,c[s>>2]|0);lf(c[p>>2]|0,(c[Ra>>2]|0)+2|0,(c[Ra>>2]|0)+4|0);kf(c[p>>2]|0,(c[Ra>>2]|0)+4|0,(c[Sa>>2]|0)-1|0);kf(c[p>>2]|0,(c[Ra>>2]|0)+5|0,c[s>>2]|0);jf(c[p>>2]|0,c[s>>2]|0);break a};case 18:{rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,27568,0)|0;if((c[m>>2]|0)==0){c[Ua>>2]=-1}else{c[cb>>2]=Ub(c[m>>2]|0)|0;c[Ua>>2]=0;while(1){h=vA(c[Ua>>2]|0)|0;c[Va>>2]=h;if((h|0)==0){break}if((Tb(c[m>>2]|0,c[Va>>2]|0,c[cb>>2]|0)|0)==0){break}c[Ua>>2]=(c[Ua>>2]|0)+1}if((c[Va>>2]|0)==0){c[Ua>>2]=-1}}if((c[Ua>>2]|0)==-1){if((c[(c[kb>>2]|0)+4>>2]|0)==0){c[s>>2]=0;c[(c[kb>>2]|0)+4>>2]=1}}c[Ta>>2]=(c[(c[n>>2]|0)+20>>2]|0)-1;while(1){if((c[Ta>>2]|0)<0){break}do{if((c[(c[(c[n>>2]|0)+16>>2]|0)+(c[Ta>>2]<<4)+4>>2]|0)!=0){if((c[Ta>>2]|0)!=(c[s>>2]|0)){if((c[(c[kb>>2]|0)+4>>2]|0)!=0){break}}jf(c[p>>2]|0,c[Ta>>2]|0);Tv(c[p>>2]|0,12,c[Ta>>2]|0,1,c[Ua>>2]|0)|0}}while(0);c[Ta>>2]=(c[Ta>>2]|0)+ -1}Qv(c[p>>2]|0,35,1,1)|0;break a};case 30:{if((c[m>>2]|0)==0){break a}c[ia>>2]=cw(c[n>>2]|0,c[m>>2]|0,c[F>>2]|0)|0;if((c[ia>>2]|0)==0){break a}c[la>>2]=0;c[ga>>2]=Dy(c[ia>>2]|0)|0;rA(c[p>>2]|0,6);c[(c[q>>2]|0)+72>>2]=6;aw(c[q>>2]|0,c[s>>2]|0);sA(c[p>>2]|0,0,0,27808,0)|0;sA(c[p>>2]|0,1,0,27816,0)|0;sA(c[p>>2]|0,2,0,27824,0)|0;sA(c[p>>2]|0,3,0,27832,0)|0;sA(c[p>>2]|0,4,0,27840,0)|0;sA(c[p>>2]|0,5,0,27856,0)|0;vw(c[q>>2]|0,c[ia>>2]|0)|0;c[ka>>2]=0;c[ja>>2]=c[(c[ia>>2]|0)+4>>2];while(1){if((c[ka>>2]|0)>=(b[(c[ia>>2]|0)+38>>1]|0)){break a}if((a[(c[ja>>2]|0)+23>>0]&2|0)!=0){c[la>>2]=(c[la>>2]|0)+1}else{Qv(c[p>>2]|0,25,(c[ka>>2]|0)-(c[la>>2]|0)|0,1)|0;Sv(c[p>>2]|0,97,0,2,0,c[c[ja>>2]>>2]|0,0)|0;if((c[(c[ja>>2]|0)+12>>2]|0)!=0){q=c[(c[ja>>2]|0)+12>>2]|0}else{q=1784}Sv(c[p>>2]|0,97,0,3,0,q,0)|0;Qv(c[p>>2]|0,25,(d[(c[ja>>2]|0)+20>>0]|0)!=0?1:0,4)|0;q=c[p>>2]|0;if((c[(c[ja>>2]|0)+8>>2]|0)!=0){Sv(q,97,0,5,0,c[(c[ja>>2]|0)+8>>2]|0,0)|0}else{Qv(q,28,0,5)|0}c:do{if((a[(c[ja>>2]|0)+23>>0]&1|0)==0){c[ha>>2]=0}else{h=(c[ga>>2]|0)==0;c[ha>>2]=1;if(h){break}while(1){if((c[ha>>2]|0)>(b[(c[ia>>2]|0)+38>>1]|0)){break c}if((b[(c[(c[ga>>2]|0)+4>>2]|0)+((c[ha>>2]|0)-1<<1)>>1]|0)==(c[ka>>2]|0)){break c}c[ha>>2]=(c[ha>>2]|0)+1}}}while(0);Qv(c[p>>2]|0,25,c[ha>>2]|0,6)|0;Qv(c[p>>2]|0,35,1,6)|0}c[ka>>2]=(c[ka>>2]|0)+1;c[ja>>2]=(c[ja>>2]|0)+24}};case 6:{c[ob>>2]=0;rA(c[p>>2]|0,2);c[(c[q>>2]|0)+72>>2]=2;sA(c[p>>2]|0,0,0,27896,0)|0;sA(c[p>>2]|0,1,0,27816,0)|0;c[mb>>2]=c[(c[n>>2]|0)+428>>2];while(1){if((c[mb>>2]|0)==0){break a}c[nb>>2]=c[(c[mb>>2]|0)+8>>2];yb=c[p>>2]|0;h=c[ob>>2]|0;c[ob>>2]=h+1;Qv(yb,25,h,1)|0;Sv(c[p>>2]|0,97,0,2,0,c[c[nb>>2]>>2]|0,0)|0;Qv(c[p>>2]|0,35,1,2)|0;c[mb>>2]=c[c[mb>>2]>>2]}};case 13:{if((c[m>>2]|0)==0){break a}c[qa>>2]=cw(c[n>>2]|0,c[m>>2]|0,c[F>>2]|0)|0;if((c[qa>>2]|0)==0){break a}c[p>>2]=Ov(c[q>>2]|0)|0;c[qb>>2]=c[(c[qa>>2]|0)+16>>2];if((c[qb>>2]|0)==0){break a}c[rb>>2]=0;rA(c[p>>2]|0,8);c[(c[q>>2]|0)+72>>2]=8;aw(c[q>>2]|0,c[s>>2]|0);sA(c[p>>2]|0,0,0,27920,0)|0;sA(c[p>>2]|0,1,0,27896,0)|0;sA(c[p>>2]|0,2,0,27864,0)|0;sA(c[p>>2]|0,3,0,27928,0)|0;sA(c[p>>2]|0,4,0,27936,0)|0;sA(c[p>>2]|0,5,0,27944,0)|0;sA(c[p>>2]|0,6,0,27960,0)|0;sA(c[p>>2]|0,7,0,27976,0)|0;while(1){if((c[qb>>2]|0)==0){break a}c[pb>>2]=0;while(1){if((c[pb>>2]|0)>=(c[(c[qb>>2]|0)+20>>2]|0)){break}c[sb>>2]=c[(c[qb>>2]|0)+36+(c[pb>>2]<<3)+4>>2];c[oa>>2]=EA(a[(c[qb>>2]|0)+25>>0]|0)|0;c[pa>>2]=EA(a[(c[qb>>2]|0)+26>>0]|0)|0;Qv(c[p>>2]|0,25,c[rb>>2]|0,1)|0;Qv(c[p>>2]|0,25,c[pb>>2]|0,2)|0;Sv(c[p>>2]|0,97,0,3,0,c[(c[qb>>2]|0)+8>>2]|0,0)|0;Sv(c[p>>2]|0,97,0,4,0,c[(c[(c[qa>>2]|0)+4>>2]|0)+((c[(c[qb>>2]|0)+36+(c[pb>>2]<<3)>>2]|0)*24|0)>>2]|0,0)|0;Sv(c[p>>2]|0,(c[sb>>2]|0)!=0?97:28,0,5,0,c[sb>>2]|0,0)|0;Sv(c[p>>2]|0,97,0,6,0,c[pa>>2]|0,0)|0;Sv(c[p>>2]|0,97,0,7,0,c[oa>>2]|0,0)|0;Sv(c[p>>2]|0,97,0,8,0,27984,0)|0;Qv(c[p>>2]|0,35,1,8)|0;c[pb>>2]=(c[pb>>2]|0)+1}c[rb>>2]=(c[rb>>2]|0)+1;c[qb>>2]=c[(c[qb>>2]|0)+4>>2]}};case 12:{c[J>>2]=(c[(c[q>>2]|0)+72>>2]|0)+1;h=(c[q>>2]|0)+72|0;c[h>>2]=(c[h>>2]|0)+4;h=(c[q>>2]|0)+72|0;yb=(c[h>>2]|0)+1|0;c[h>>2]=yb;c[T>>2]=yb;yb=(c[q>>2]|0)+72|0;h=(c[yb>>2]|0)+1|0;c[yb>>2]=h;c[I>>2]=h;c[p>>2]=Ov(c[q>>2]|0)|0;rA(c[p>>2]|0,4);sA(c[p>>2]|0,0,0,27864,0)|0;sA(c[p>>2]|0,1,0,8848,0)|0;sA(c[p>>2]|0,2,0,27992,0)|0;sA(c[p>>2]|0,3,0,28e3,0)|0;aw(c[q>>2]|0,c[s>>2]|0);c[H>>2]=c[(c[(c[(c[n>>2]|0)+16>>2]|0)+(c[s>>2]<<4)+12>>2]|0)+16>>2];while(1){if((c[H>>2]|0)==0){break a}if((c[m>>2]|0)!=0){c[G>>2]=af(c[q>>2]|0,0,c[m>>2]|0,c[F>>2]|0)|0;c[H>>2]=0}else{c[G>>2]=c[(c[H>>2]|0)+8>>2];c[H>>2]=c[c[H>>2]>>2]}if((c[G>>2]|0)==0){continue}if((c[(c[G>>2]|0)+16>>2]|0)==0){continue}py(c[q>>2]|0,c[s>>2]|0,c[(c[G>>2]|0)+32>>2]|0,0,c[c[G>>2]>>2]|0);if(((b[(c[G>>2]|0)+38>>1]|0)+(c[I>>2]|0)|0)>(c[(c[q>>2]|0)+72>>2]|0)){c[(c[q>>2]|0)+72>>2]=(b[(c[G>>2]|0)+38>>1]|0)+(c[I>>2]|0)}qy(c[q>>2]|0,0,c[s>>2]|0,c[G>>2]|0,52);Sv(c[p>>2]|0,97,0,c[J>>2]|0,0,c[c[G>>2]>>2]|0,0)|0;c[K>>2]=1;c[L>>2]=c[(c[G>>2]|0)+16>>2];d:while(1){if((c[L>>2]|0)==0){break}c[M>>2]=cw(c[n>>2]|0,c[(c[L>>2]|0)+8>>2]|0,c[F>>2]|0)|0;do{if((c[M>>2]|0)!=0){c[N>>2]=0;py(c[q>>2]|0,c[s>>2]|0,c[(c[M>>2]|0)+32>>2]|0,0,c[c[M>>2]>>2]|0);c[ea>>2]=FA(c[q>>2]|0,c[M>>2]|0,c[L>>2]|0,N,0)|0;if((c[ea>>2]|0)!=0){r=198;break d}if((c[N>>2]|0)==0){qy(c[q>>2]|0,c[K>>2]|0,c[s>>2]|0,c[M>>2]|0,52);break}else{Tv(c[p>>2]|0,52,c[K>>2]|0,c[(c[N>>2]|0)+44>>2]|0,c[s>>2]|0)|0;ry(c[q>>2]|0,c[N>>2]|0);break}}}while(0);c[K>>2]=(c[K>>2]|0)+1;c[L>>2]=c[(c[L>>2]|0)+4>>2]}if((r|0)==198){r=0;c[H>>2]=0}if((c[L>>2]|0)!=0){break a}if((c[(c[q>>2]|0)+68>>2]|0)<(c[K>>2]|0)){c[(c[q>>2]|0)+68>>2]=c[K>>2]}c[P>>2]=oy(c[p>>2]|0,105,0)|0;c[K>>2]=1;c[L>>2]=c[(c[G>>2]|0)+16>>2];while(1){if((c[L>>2]|0)==0){break}c[M>>2]=cw(c[n>>2]|0,c[(c[L>>2]|0)+8>>2]|0,c[F>>2]|0)|0;c[N>>2]=0;c[Q>>2]=0;if((c[M>>2]|0)!=0){c[ea>>2]=FA(c[q>>2]|0,c[M>>2]|0,c[L>>2]|0,N,Q)|0}c[R>>2]=cz(c[p>>2]|0)|0;do{if((c[M>>2]|0)!=0){if((c[N>>2]|0)!=0){r=213;break}c[S>>2]=c[(c[L>>2]|0)+36>>2];t=c[p>>2]|0;if((c[S>>2]|0)!=(b[(c[G>>2]|0)+36>>1]|0)){Tv(t,46,0,c[S>>2]|0,c[I>>2]|0)|0;lz(c[p>>2]|0,c[G>>2]|0,c[S>>2]|0,c[I>>2]|0);Qv(c[p>>2]|0,76,c[I>>2]|0,c[R>>2]|0)|0;yb=c[p>>2]|0;h=c[I>>2]|0;Qv(yb,38,h,(sy(c[p>>2]|0)|0)+3|0)|0}else{Qv(t,100,0,c[I>>2]|0)|0}Tv(c[p>>2]|0,67,c[K>>2]|0,0,c[I>>2]|0)|0;Qv(c[p>>2]|0,16,0,c[R>>2]|0)|0;h=c[p>>2]|0;jw(h,(sy(c[p>>2]|0)|0)-2|0)}else{r=213}}while(0);do{if((r|0)==213){r=0;c[$>>2]=0;while(1){if((c[$>>2]|0)>=(c[(c[L>>2]|0)+20>>2]|0)){break}t=c[$>>2]|0;if((c[Q>>2]|0)!=0){t=c[(c[Q>>2]|0)+(t<<2)>>2]|0}else{t=c[(c[L>>2]|0)+36+(t<<3)>>2]|0}gz(c[p>>2]|0,c[G>>2]|0,0,t,(c[I>>2]|0)+(c[$>>2]|0)|0);Qv(c[p>>2]|0,76,(c[I>>2]|0)+(c[$>>2]|0)|0,c[R>>2]|0)|0;c[$>>2]=(c[$>>2]|0)+1}if((c[M>>2]|0)==0){break}xb=c[p>>2]|0;g=c[I>>2]|0;f=c[(c[L>>2]|0)+20>>2]|0;yb=c[T>>2]|0;h=GA(c[p>>2]|0,c[N>>2]|0)|0;Sv(xb,48,g,f,yb,h,c[(c[L>>2]|0)+20>>2]|0)|0;ff(c[p>>2]|0,66,c[K>>2]|0,c[R>>2]|0,c[T>>2]|0,0)|0}}while(0);Qv(c[p>>2]|0,100,0,(c[J>>2]|0)+1|0)|0;Sv(c[p>>2]|0,97,0,(c[J>>2]|0)+2|0,0,c[(c[L>>2]|0)+8>>2]|0,0)|0;Qv(c[p>>2]|0,25,(c[K>>2]|0)-1|0,(c[J>>2]|0)+3|0)|0;Qv(c[p>>2]|0,35,c[J>>2]|0,4)|0;$y(c[p>>2]|0,c[R>>2]|0);cc(c[n>>2]|0,c[Q>>2]|0);c[K>>2]=(c[K>>2]|0)+1;c[L>>2]=c[(c[L>>2]|0)+4>>2]}Qv(c[p>>2]|0,9,0,(c[P>>2]|0)+1|0)|0;jw(c[p>>2]|0,c[P>>2]|0)}};case 15:{if((c[m>>2]|0)==0){break a}c[Ga>>2]=tw(c[n>>2]|0,c[m>>2]|0,c[F>>2]|0)|0;if((c[Ga>>2]|0)==0){break a}c[Ia>>2]=c[(c[Ga>>2]|0)+12>>2];rA(c[p>>2]|0,3);c[(c[q>>2]|0)+72>>2]=3;aw(c[q>>2]|0,c[s>>2]|0);sA(c[p>>2]|0,0,0,27888,0)|0;sA(c[p>>2]|0,1,0,27808,0)|0;sA(c[p>>2]|0,2,0,27816,0)|0;c[Da>>2]=0;while(1){if((c[Da>>2]|0)>=(e[(c[Ga>>2]|0)+50>>1]|0)){break a}b[Ha>>1]=b[(c[(c[Ga>>2]|0)+4>>2]|0)+(c[Da>>2]<<1)>>1]|0;Qv(c[p>>2]|0,25,c[Da>>2]|0,1)|0;Qv(c[p>>2]|0,25,b[Ha>>1]|0,2)|0;Sv(c[p>>2]|0,97,0,3,0,c[(c[(c[Ia>>2]|0)+4>>2]|0)+((b[Ha>>1]|0)*24|0)>>2]|0,0)|0;Qv(c[p>>2]|0,35,1,3)|0;c[Da>>2]=(c[Da>>2]|0)+1}};case 9:{rA(c[p>>2]|0,3);c[(c[q>>2]|0)+72>>2]=3;sA(c[p>>2]|0,0,0,27896,0)|0;sA(c[p>>2]|0,1,0,27816,0)|0;sA(c[p>>2]|0,2,0,27912,0)|0;c[Ja>>2]=0;while(1){if((c[Ja>>2]|0)>=(c[(c[n>>2]|0)+20>>2]|0)){break a}if((c[(c[(c[n>>2]|0)+16>>2]|0)+(c[Ja>>2]<<4)+4>>2]|0)!=0){Qv(c[p>>2]|0,25,c[Ja>>2]|0,1)|0;Sv(c[p>>2]|0,97,0,2,0,c[(c[(c[n>>2]|0)+16>>2]|0)+(c[Ja>>2]<<4)>>2]|0,0)|0;h=c[p>>2]|0;Sv(h,97,0,3,0,Qg(c[(c[(c[n>>2]|0)+16>>2]|0)+(c[Ja>>2]<<4)+4>>2]|0)|0,0)|0;Qv(c[p>>2]|0,35,1,3)|0}c[Ja>>2]=(c[Ja>>2]|0)+1}};case 28:{c[p>>2]=Ov(c[q>>2]|0)|0;rA(c[p>>2]|0,4);c[(c[q>>2]|0)+72>>2]=4;aw(c[q>>2]|0,c[s>>2]|0);sA(c[p>>2]|0,0,0,27864,0)|0;sA(c[p>>2]|0,1,0,16696,0)|0;sA(c[p>>2]|0,2,0,27872,0)|0;sA(c[p>>2]|0,3,0,27880,0)|0;c[Ka>>2]=c[(c[(c[hb>>2]|0)+12>>2]|0)+16>>2];while(1){if((c[Ka>>2]|0)==0){break a}c[La>>2]=c[(c[Ka>>2]|0)+8>>2];Sv(c[p>>2]|0,97,0,1,0,c[c[La>>2]>>2]|0,0)|0;Qv(c[p>>2]|0,28,0,2)|0;h=c[p>>2]|0;yb=DA(b[(c[La>>2]|0)+42>>1]|0)|0;Qv(h,25,yb,3)|0;yb=c[p>>2]|0;h=DA(b[(c[La>>2]|0)+28>>1]|0)|0;Qv(yb,25,h,4)|0;Qv(c[p>>2]|0,35,1,4)|0;c[Ma>>2]=c[(c[La>>2]|0)+8>>2];while(1){if((c[Ma>>2]|0)==0){break}Sv(c[p>>2]|0,97,0,2,0,c[c[Ma>>2]>>2]|0,0)|0;h=c[p>>2]|0;yb=DA(b[(c[Ma>>2]|0)+48>>1]|0)|0;Qv(h,25,yb,3)|0;yb=c[p>>2]|0;h=DA(b[c[(c[Ma>>2]|0)+8>>2]>>1]|0)|0;Qv(yb,25,h,4)|0;Qv(c[p>>2]|0,35,1,4)|0;c[Ma>>2]=c[(c[Ma>>2]|0)+20>>2]}c[Ka>>2]=c[c[Ka>>2]>>2]}};case 16:{if((c[m>>2]|0)==0){break a}c[Na>>2]=cw(c[n>>2]|0,c[m>>2]|0,c[F>>2]|0)|0;if((c[Na>>2]|0)==0){break a}c[p>>2]=Ov(c[q>>2]|0)|0;rA(c[p>>2]|0,3);c[(c[q>>2]|0)+72>>2]=3;aw(c[q>>2]|0,c[s>>2]|0);sA(c[p>>2]|0,0,0,27896,0)|0;sA(c[p>>2]|0,1,0,27816,0)|0;sA(c[p>>2]|0,2,0,27904,0)|0;c[Oa>>2]=c[(c[Na>>2]|0)+8>>2];c[Pa>>2]=0;while(1){if((c[Oa>>2]|0)==0){break a}Qv(c[p>>2]|0,25,c[Pa>>2]|0,1)|0;Sv(c[p>>2]|0,97,0,2,0,c[c[Oa>>2]>>2]|0,0)|0;Qv(c[p>>2]|0,25,(d[(c[Oa>>2]|0)+54>>0]|0)!=0&1,3)|0;Qv(c[p>>2]|0,35,1,3)|0;c[Oa>>2]=c[(c[Oa>>2]|0)+20>>2];c[Pa>>2]=(c[Pa>>2]|0)+1}};case 17:{c[Z>>2]=(d[784+(d[c[l>>2]>>0]|0)>>0]|0)==113&1;if((c[c[kb>>2]>>2]|0)==0){c[s>>2]=-1}c[(c[q>>2]|0)+72>>2]=6;rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,28024,0)|0;c[W>>2]=100;if((c[m>>2]|0)!=0){Wg(c[m>>2]|0,W)|0;if((c[W>>2]|0)<=0){c[W>>2]=100}}Qv(c[p>>2]|0,25,c[W>>2]|0,1)|0;c[Y>>2]=0;while(1){if((c[Y>>2]|0)>=(c[(c[n>>2]|0)+20>>2]|0)){break}c[X>>2]=0;if((c[s>>2]|0)>=0){if((c[Y>>2]|0)==(c[s>>2]|0)){r=234}}else{r=234}e:do{if((r|0)==234){r=0;aw(c[q>>2]|0,c[Y>>2]|0);c[V>>2]=oy(c[p>>2]|0,134,1)|0;Qv(c[p>>2]|0,24,0,0)|0;jw(c[p>>2]|0,c[V>>2]|0);c[aa>>2]=(c[(c[(c[n>>2]|0)+16>>2]|0)+(c[Y>>2]<<4)+12>>2]|0)+8;c[ba>>2]=c[(c[aa>>2]|0)+8>>2];while(1){if((c[ba>>2]|0)==0){break}c[O>>2]=c[(c[ba>>2]|0)+8>>2];if((a[(c[O>>2]|0)+44>>0]&32|0)==0){Qv(c[p>>2]|0,25,c[(c[O>>2]|0)+32>>2]|0,2+(c[X>>2]|0)|0)|0;c[X>>2]=(c[X>>2]|0)+1}c[U>>2]=c[(c[O>>2]|0)+8>>2];while(1){if((c[U>>2]|0)==0){break}Qv(c[p>>2]|0,25,c[(c[U>>2]|0)+44>>2]|0,2+(c[X>>2]|0)|0)|0;c[X>>2]=(c[X>>2]|0)+1;c[U>>2]=c[(c[U>>2]|0)+20>>2]}c[ba>>2]=c[c[ba>>2]>>2]}if((c[(c[q>>2]|0)+72>>2]|0)>((c[X>>2]|0)+8|0)){u=c[(c[q>>2]|0)+72>>2]|0}else{u=(c[X>>2]|0)+8|0}c[(c[q>>2]|0)+72>>2]=u;Tv(c[p>>2]|0,124,2,c[X>>2]|0,1)|0;gf(c[p>>2]|0,c[Y>>2]&255);c[V>>2]=oy(c[p>>2]|0,76,2)|0;yb=c[p>>2]|0;h=c[n>>2]|0;c[t>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[Y>>2]<<4)>>2];Sv(yb,97,0,3,0,cf(h,28040,t)|0,-1)|0;Tv(c[p>>2]|0,32,2,4,1)|0;Tv(c[p>>2]|0,94,4,3,2)|0;Qv(c[p>>2]|0,35,2,1)|0;jw(c[p>>2]|0,c[V>>2]|0);c[ba>>2]=c[(c[aa>>2]|0)+8>>2];while(1){if((c[ba>>2]|0)==0){break e}if(!((c[Z>>2]|0)!=0^1)){break e}c[C>>2]=c[(c[ba>>2]|0)+8>>2];c[z>>2]=0;c[y>>2]=-1;f:do{if((c[(c[C>>2]|0)+8>>2]|0)!=0){if((a[(c[C>>2]|0)+44>>0]&32|0)==0){u=0}else{u=Dy(c[C>>2]|0)|0}c[ca>>2]=u;c[V>>2]=oy(c[p>>2]|0,134,1)|0;Qv(c[p>>2]|0,24,0,0)|0;jw(c[p>>2]|0,c[V>>2]|0);IA(c[q>>2]|0);JA(c[q>>2]|0,c[C>>2]|0,52,1,0,da,x)|0;Qv(c[p>>2]|0,25,0,7)|0;c[E>>2]=0;c[B>>2]=c[(c[C>>2]|0)+8>>2];while(1){if((c[B>>2]|0)==0){break}Qv(c[p>>2]|0,25,0,8+(c[E>>2]|0)|0)|0;c[B>>2]=c[(c[B>>2]|0)+20>>2];c[E>>2]=(c[E>>2]|0)+1}if((c[(c[q>>2]|0)+72>>2]|0)>(8+(c[E>>2]|0)|0)){u=c[(c[q>>2]|0)+72>>2]|0}else{u=8+(c[E>>2]|0)|0}c[(c[q>>2]|0)+72>>2]=u;Qv(c[p>>2]|0,105,c[da>>2]|0,0)|0;c[_>>2]=Qv(c[p>>2]|0,37,7,1)|0;c[E>>2]=0;c[B>>2]=c[(c[C>>2]|0)+8>>2];while(1){if((c[B>>2]|0)==0){break}if((c[ca>>2]|0)!=(c[B>>2]|0)){c[y>>2]=Wy(c[q>>2]|0,c[B>>2]|0,c[da>>2]|0,0,0,A,c[z>>2]|0,c[y>>2]|0)|0;c[z>>2]=c[B>>2];Qv(c[p>>2]|0,37,8+(c[E>>2]|0)|0,1)|0;c[w>>2]=ff(c[p>>2]|0,66,(c[x>>2]|0)+(c[E>>2]|0)|0,0,c[y>>2]|0,e[(c[B>>2]|0)+52>>1]|0)|0;Qv(c[p>>2]|0,37,1,-1)|0;Sv(c[p>>2]|0,97,0,3,0,28064,-2)|0;Tv(c[p>>2]|0,94,7,3,3)|0;Sv(c[p>>2]|0,97,0,4,0,28072,-2)|0;Tv(c[p>>2]|0,94,4,3,3)|0;Sv(c[p>>2]|0,97,0,4,0,c[c[B>>2]>>2]|0,0)|0;Tv(c[p>>2]|0,94,4,3,3)|0;Qv(c[p>>2]|0,35,3,1)|0;c[v>>2]=oy(c[p>>2]|0,134,1)|0;Yv(c[p>>2]|0,24)|0;jw(c[p>>2]|0,c[v>>2]|0);jw(c[p>>2]|0,c[w>>2]|0);Xy(c[q>>2]|0,c[A>>2]|0)}c[B>>2]=c[(c[B>>2]|0)+20>>2];c[E>>2]=(c[E>>2]|0)+1}Qv(c[p>>2]|0,9,c[da>>2]|0,c[_>>2]|0)|0;jw(c[p>>2]|0,(c[_>>2]|0)-1|0);Sv(c[p>>2]|0,97,0,2,0,28096,-2)|0;c[E>>2]=0;c[B>>2]=c[(c[C>>2]|0)+8>>2];while(1){if((c[B>>2]|0)==0){break f}if((c[ca>>2]|0)!=(c[B>>2]|0)){c[V>>2]=sy(c[p>>2]|0)|0;Qv(c[p>>2]|0,134,1,(c[V>>2]|0)+2|0)|0;Qv(c[p>>2]|0,24,0,0)|0;Qv(c[p>>2]|0,49,(c[x>>2]|0)+(c[E>>2]|0)|0,3)|0;Tv(c[p>>2]|0,79,8+(c[E>>2]|0)|0,(c[V>>2]|0)+8|0,3)|0;gf(c[p>>2]|0,-120);Qv(c[p>>2]|0,37,1,-1)|0;Sv(c[p>>2]|0,97,0,3,0,c[c[B>>2]>>2]|0,0)|0;Tv(c[p>>2]|0,94,3,2,7)|0;Qv(c[p>>2]|0,35,7,1)|0}c[B>>2]=c[(c[B>>2]|0)+20>>2];c[E>>2]=(c[E>>2]|0)+1}}}while(0);c[ba>>2]=c[c[ba>>2]>>2]}}}while(0);c[Y>>2]=(c[Y>>2]|0)+1}c[V>>2]=hf(c[p>>2]|0,4,28008,0)|0;lf(c[p>>2]|0,c[V>>2]|0,0-(c[W>>2]|0)|0);jw(c[p>>2]|0,(c[V>>2]|0)+1|0);nf(c[p>>2]|0,(c[V>>2]|0)+2|0,28128,-2);break a};case 5:{if((c[m>>2]|0)==0){break a}h=c[n>>2]|0;HA(h,(Og(c[m>>2]|0,0)|0)&255);break a};case 11:{if((c[m>>2]|0)==0){if((gy(c[q>>2]|0)|0)!=0){break a}rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,28288,0)|0;Qv(c[p>>2]|0,97,0,1)|0;nf(c[p>>2]|0,-1,c[28136+(d[(c[(c[(c[c[q>>2]>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]<<3)>>2]|0,-2);Qv(c[p>>2]|0,35,1,1)|0;break a}if((b[(c[(c[(c[n>>2]|0)+16>>2]|0)+12>>2]|0)+78>>1]&1|0)==1){if((b[(c[(c[(c[n>>2]|0)+16>>2]|0)+12>>2]|0)+78>>1]&4|0)!=4){break a}}c[fa>>2]=28136;while(1){if((c[c[fa>>2]>>2]|0)==0){break}h=0==(Dc(c[m>>2]|0,c[c[fa>>2]>>2]|0)|0);p=c[fa>>2]|0;if(h){r=278;break}c[fa>>2]=p+8}if((r|0)==278){if((d[p+4>>0]|0)!=0){p=d[(c[fa>>2]|0)+4>>0]|0}else{p=(a[1480]|0)==0?3:2}a[(c[(c[(c[c[q>>2]>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]=p}if((c[c[fa>>2]>>2]|0)!=0){break a}h=c[q>>2]|0;c[t>>2]=c[m>>2];bf(h,28304,t);break a};case 0:{jf(c[p>>2]|0,c[s>>2]|0);switch(a[c[l>>2]>>0]|0){case 70:case 102:{c[Wa>>2]=0;break};case 83:case 115:{c[Wa>>2]=1;break};case 65:case 97:{c[Wa>>2]=8;break};default:{c[Wa>>2]=6}}if((c[m>>2]|0)!=0){if((c[Wa>>2]|0)!=0){c[Ya>>2]=hf(c[p>>2]|0,3,28336,0)|0;kf(c[p>>2]|0,c[Ya>>2]|0,c[s>>2]|0);yb=c[p>>2]|0;h=(c[Ya>>2]|0)+1|0;kf(yb,h,Vg(c[m>>2]|0)|0);kf(c[p>>2]|0,(c[Ya>>2]|0)+2|0,c[s>>2]|0);lf(c[p>>2]|0,(c[Ya>>2]|0)+2|0,c[Wa>>2]|0);break a}}c[Xa>>2]=hf(c[p>>2]|0,3,28352,0)|0;kf(c[p>>2]|0,c[Xa>>2]|0,c[s>>2]|0);kf(c[p>>2]|0,(c[Xa>>2]|0)+1|0,c[s>>2]|0);mf(c[p>>2]|0,(c[Xa>>2]|0)+1|0,c[Wa>>2]|0);rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,c[l>>2]|0,-1)|0;break a};case 34:{c[Za>>2]=(c[c[kb>>2]>>2]|0)!=0?c[s>>2]|0:10;c[_a>>2]=0;do{if((c[m>>2]|0)!=0){if((Dc(c[m>>2]|0,28384)|0)==0){c[_a>>2]=1;break}if((Dc(c[m>>2]|0,28392)|0)==0){c[_a>>2]=2}}}while(0);rA(c[p>>2]|0,3);c[(c[q>>2]|0)+72>>2]=3;sA(c[p>>2]|0,0,0,28400,0)|0;sA(c[p>>2]|0,1,0,9424,0)|0;sA(c[p>>2]|0,2,0,28408,0)|0;Tv(c[p>>2]|0,11,c[Za>>2]|0,c[_a>>2]|0,1)|0;Qv(c[p>>2]|0,35,1,3)|0;break a};case 7:{c[$a>>2]=0;rA(c[p>>2]|0,1);c[(c[q>>2]|0)+72>>2]=1;sA(c[p>>2]|0,0,0,28368,0)|0;while(1){h=c[$a>>2]|0;c[$a>>2]=h+1;h=Vb(h)|0;c[ab>>2]=h;if((h|0)==0){break a}Sv(c[p>>2]|0,97,0,1,0,c[ab>>2]|0,0)|0;Qv(c[p>>2]|0,35,1,1)|0}};case 33:{if((c[m>>2]|0)!=0){h=c[n>>2]|0;tg(h,Vg(c[m>>2]|0)|0)|0}if((c[(c[n>>2]|0)+204>>2]|0)==10){p=c[(c[n>>2]|0)+208>>2]|0}else{p=0}tA(c[q>>2]|0,28424,p,((p|0)<0)<<31>>31);break a};case 27:{if((c[m>>2]|0)!=0){if((Pg(c[m>>2]|0,bb,1e6,1)|0)==0){h=bb;jc(c[h>>2]|0,c[h+4>>2]|0)|0}}yb=c[q>>2]|0;h=jc(-1,-1)|0;tA(yb,28456,h,D);break a};case 26:{bg(c[n>>2]|0)|0;break a};default:{if((c[m>>2]|0)!=0){h=c[n>>2]|0;lg(h,Vg(c[m>>2]|0)|0)|0}h=c[(c[n>>2]|0)+484>>2]|0;tA(c[q>>2]|0,28448,h,((h|0)<0)<<31>>31);break a}}}while(0)}}}while(0);cc(c[n>>2]|0,c[l>>2]|0);cc(c[n>>2]|0,c[m>>2]|0);i=o;return}function nv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;j=i;i=i+112|0;r=j;f=j+100|0;h=j+96|0;g=j+92|0;o=j+88|0;n=j+84|0;p=j+80|0;v=j+56|0;l=j+104|0;w=j+40|0;s=j+32|0;q=j+28|0;k=j+24|0;m=j+20|0;u=j+48|0;t=j+52|0;c[f>>2]=b;c[h>>2]=d;c[g>>2]=e;c[o>>2]=c[(c[f>>2]|0)+488>>2];c[p>>2]=c[c[f>>2]>>2];c[(c[f>>2]|0)+488>>2]=0;do{if((c[(c[f>>2]|0)+64>>2]|0)==0){if((c[o>>2]|0)!=0){c[n>>2]=c[c[o>>2]>>2];c[l>>2]=ef(c[c[f>>2]>>2]|0,c[(c[o>>2]|0)+20>>2]|0)|0;c[(c[o>>2]|0)+28>>2]=c[h>>2];while(1){e=c[o>>2]|0;if((c[h>>2]|0)==0){break}c[(c[h>>2]|0)+4>>2]=e;c[h>>2]=c[(c[h>>2]|0)+32>>2]}c[w>>2]=c[e>>2];c[w+4>>2]=Ub(c[w>>2]|0)|0;kA(v,c[f>>2]|0,c[l>>2]|0,1808,w);if((pA(v,c[(c[o>>2]|0)+28>>2]|0)|0)==0){if((nA(v,c[(c[o>>2]|0)+12>>2]|0)|0)==0){if((a[(c[p>>2]|0)+137>>0]|0)==0){c[s>>2]=Ov(c[f>>2]|0)|0;if((c[s>>2]|0)==0){break}$v(c[f>>2]|0,0,c[l>>2]|0);c[q>>2]=ft(c[p>>2]|0,c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+4>>2]|0)|0;e=c[f>>2]|0;v=(c[l>>2]|0)==1?21432:21456;w=c[n>>2]|0;b=c[(c[o>>2]|0)+4>>2]|0;d=c[q>>2]|0;c[r>>2]=c[(c[(c[p>>2]|0)+16>>2]|0)+(c[l>>2]<<4)>>2];c[r+4>>2]=v;c[r+8>>2]=w;c[r+12>>2]=b;c[r+16>>2]=d;Nv(e,26680,r);cc(c[p>>2]|0,c[q>>2]|0);Pv(c[f>>2]|0,c[l>>2]|0);e=c[s>>2]|0;d=c[l>>2]|0;b=c[p>>2]|0;c[r>>2]=c[n>>2];Rv(e,d,cf(b,26744,r)|0)}if((a[(c[p>>2]|0)+137>>0]|0)!=0){c[k>>2]=c[o>>2];c[m>>2]=(c[(c[(c[p>>2]|0)+16>>2]|0)+(c[l>>2]<<4)+12>>2]|0)+40;e=c[m>>2]|0;d=c[n>>2]|0;b=Ub(c[n>>2]|0)|0;c[o>>2]=Eh(e,d,b,c[o>>2]|0)|0;if((c[o>>2]|0)!=0){a[(c[p>>2]|0)+64>>0]=1;break}if((c[(c[k>>2]|0)+20>>2]|0)==(c[(c[k>>2]|0)+24>>2]|0)){c[t>>2]=Ub(c[(c[k>>2]|0)+4>>2]|0)|0;c[u>>2]=zh((c[(c[k>>2]|0)+24>>2]|0)+8|0,c[(c[k>>2]|0)+4>>2]|0,c[t>>2]|0)|0;c[(c[k>>2]|0)+32>>2]=c[(c[u>>2]|0)+64>>2];c[(c[u>>2]|0)+64>>2]=c[k>>2]}}}}}}}while(0);$b(c[p>>2]|0,c[o>>2]|0);lu(c[p>>2]|0,c[h>>2]|0);i=j;return}function ov(b,e,f,g,h,j,k,l,m,n){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;w=i;i=i+128|0;G=w;u=w+112|0;K=w+108|0;J=w+104|0;B=w+100|0;I=w+96|0;s=w+92|0;r=w+88|0;t=w+84|0;x=w+80|0;A=w+76|0;p=w+116|0;C=w+24|0;q=w+20|0;o=w+12|0;v=w+16|0;z=w+68|0;L=w+32|0;D=w+56|0;E=w+60|0;F=w+64|0;H=w+72|0;c[u>>2]=b;c[K>>2]=e;c[J>>2]=f;c[B>>2]=g;c[I>>2]=h;c[s>>2]=j;c[r>>2]=k;c[t>>2]=l;c[x>>2]=m;c[A>>2]=n;c[p>>2]=0;c[q>>2]=0;c[o>>2]=c[c[u>>2]>>2];do{if((c[x>>2]|0)!=0){if((c[(c[J>>2]|0)+4>>2]|0)>>>0>0){bf(c[u>>2]|0,26336,G);break}else{c[v>>2]=1;c[z>>2]=c[K>>2];y=6;break}}else{c[v>>2]=ky(c[u>>2]|0,c[K>>2]|0,c[J>>2]|0,z)|0;if((c[v>>2]|0)>=0){y=6}}}while(0);do{if((y|0)==6){if((c[r>>2]|0)!=0){if((d[(c[o>>2]|0)+64>>0]|0)==0){if((d[(c[o>>2]|0)+137>>0]|0)!=0){if((c[v>>2]|0)!=1){cc(c[o>>2]|0,c[(c[r>>2]|0)+12>>2]|0);c[(c[r>>2]|0)+12>>2]=0}}c[C>>2]=jA(c[u>>2]|0,c[r>>2]|0)|0;if((d[(c[o>>2]|0)+137>>0]|0)==0){if((c[(c[J>>2]|0)+4>>2]|0)==0){if((c[C>>2]|0)!=0){if((c[(c[C>>2]|0)+68>>2]|0)==(c[(c[(c[o>>2]|0)+16>>2]|0)+28>>2]|0)){c[v>>2]=1}}}}if((a[(c[o>>2]|0)+64>>0]|0)==0){kA(L,c[u>>2]|0,c[v>>2]|0,1808,c[z>>2]|0);if((lA(L,c[r>>2]|0)|0)==0){c[C>>2]=jA(c[u>>2]|0,c[r>>2]|0)|0;if((c[C>>2]|0)==0){if((d[(c[o>>2]|0)+136>>0]|0)!=1){break}a[(c[o>>2]|0)+138>>0]=1;break}if((a[(c[C>>2]|0)+44>>0]&16|0)!=0){bf(c[u>>2]|0,26384,G);break}c[q>>2]=Iv(c[o>>2]|0,c[z>>2]|0)|0;if((c[q>>2]|0)!=0){if(0==(uw(c[u>>2]|0,c[q>>2]|0)|0)){e=(c[(c[(c[o>>2]|0)+16>>2]|0)+(c[v>>2]<<4)+12>>2]|0)+40|0;b=c[q>>2]|0;if((zh(e,b,Ub(c[q>>2]|0)|0)|0)!=0){x=c[u>>2]|0;if((c[A>>2]|0)!=0){aw(x,c[v>>2]|0);break}else{c[G>>2]=c[z>>2];bf(x,26432,G);break}}if((Tb(c[c[C>>2]>>2]|0,21672,7)|0)==0){bf(c[u>>2]|0,26464,G);b=(c[u>>2]|0)+64|0;c[b>>2]=(c[b>>2]|0)+1;break}if((c[(c[C>>2]|0)+12>>2]|0)!=0){if((c[B>>2]|0)!=49){b=c[u>>2]|0;e=c[r>>2]|0;c[G>>2]=(c[B>>2]|0)==35?26544:26552;c[G+4>>2]=e;c[G+8>>2]=0;bf(b,26504,G);break}}if((c[(c[C>>2]|0)+12>>2]|0)==0){if((c[B>>2]|0)==49){b=c[u>>2]|0;c[G>>2]=c[r>>2];c[G+4>>2]=0;bf(b,26560,G);break}}c[D>>2]=ef(c[o>>2]|0,c[(c[C>>2]|0)+68>>2]|0)|0;c[E>>2]=7;c[F>>2]=c[(c[(c[o>>2]|0)+16>>2]|0)+(c[D>>2]<<4)>>2];if((c[x>>2]|0)!=0){z=c[(c[(c[o>>2]|0)+16>>2]|0)+16>>2]|0}else{z=c[F>>2]|0}c[H>>2]=z;if((c[D>>2]|0)==1){y=42}else{if((c[x>>2]|0)!=0){y=42}}if((y|0)==42){c[E>>2]=5}if((Lv(c[u>>2]|0,c[E>>2]|0,c[q>>2]|0,c[c[C>>2]>>2]|0,c[H>>2]|0)|0)==0){if((Lv(c[u>>2]|0,18,(c[D>>2]|0)==1?21432:21456,0,c[F>>2]|0)|0)==0){if((c[B>>2]|0)==49){c[B>>2]=35}c[p>>2]=ve(c[o>>2]|0,36)|0;if((c[p>>2]|0)==0){break}c[c[p>>2]>>2]=c[q>>2];c[q>>2]=0;b=pe(c[o>>2]|0,c[(c[r>>2]|0)+16>>2]|0)|0;c[(c[p>>2]|0)+4>>2]=b;c[(c[p>>2]|0)+20>>2]=c[(c[(c[o>>2]|0)+16>>2]|0)+(c[v>>2]<<4)+12>>2];c[(c[p>>2]|0)+24>>2]=c[(c[C>>2]|0)+68>>2];a[(c[p>>2]|0)+8>>0]=c[I>>2];a[(c[p>>2]|0)+9>>0]=(c[B>>2]|0)==35?1:2;b=hx(c[o>>2]|0,c[t>>2]|0,1)|0;c[(c[p>>2]|0)+12>>2]=b;b=ey(c[o>>2]|0,c[s>>2]|0)|0;c[(c[p>>2]|0)+16>>2]=b;c[(c[u>>2]|0)+488>>2]=c[p>>2]}}}}}}}}}}while(0);cc(c[o>>2]|0,c[q>>2]|0);fu(c[o>>2]|0,c[r>>2]|0);hu(c[o>>2]|0,c[s>>2]|0);gu(c[o>>2]|0,c[t>>2]|0);if((c[(c[u>>2]|0)+488>>2]|0)!=0){i=w;return}$b(c[o>>2]|0,c[p>>2]|0);i=w;return}function pv(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;l=j+16|0;o=j;h=j+4|0;k=j+8|0;n=j+20|0;m=j+12|0;c[l>>2]=b;c[o>>2]=d;c[h>>2]=e;c[k>>2]=f;a[n>>0]=g;c[m>>2]=iA(c[l>>2]|0,110,c[o>>2]|0)|0;if((c[m>>2]|0)!=0){o=px(c[l>>2]|0,c[h>>2]|0,1)|0;c[(c[m>>2]|0)+24>>2]=o;o=hx(c[l>>2]|0,c[k>>2]|0,1)|0;c[(c[m>>2]|0)+20>>2]=o;a[(c[m>>2]|0)+1>>0]=a[n>>0]|0}cu(c[l>>2]|0,c[h>>2]|0);gu(c[l>>2]|0,c[k>>2]|0);i=j;return c[m>>2]|0}function qv(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;l=n+16|0;o=n;h=n+4|0;k=n+8|0;m=n+20|0;j=n+12|0;c[l>>2]=b;c[o>>2]=d;c[h>>2]=e;c[k>>2]=f;a[m>>0]=g;c[j>>2]=iA(c[l>>2]|0,108,c[o>>2]|0)|0;g=c[l>>2]|0;if((c[j>>2]|0)!=0){b=Bw(g,c[k>>2]|0,1)|0;c[(c[j>>2]|0)+8>>2]=b;c[(c[j>>2]|0)+28>>2]=c[h>>2];a[(c[j>>2]|0)+1>>0]=a[m>>0]|0;b=c[l>>2]|0;o=c[k>>2]|0;du(b,o);o=c[j>>2]|0;i=n;return o|0}else{hu(g,c[h>>2]|0);b=c[l>>2]|0;o=c[k>>2]|0;du(b,o);o=c[j>>2]|0;i=n;return o|0}return 0}function rv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g+12|0;k=g;h=g+4|0;f=g+8|0;c[j>>2]=b;c[k>>2]=d;c[h>>2]=e;c[f>>2]=iA(c[j>>2]|0,109,c[k>>2]|0)|0;if((c[f>>2]|0)!=0){k=hx(c[j>>2]|0,c[h>>2]|0,1)|0;c[(c[f>>2]|0)+20>>2]=k;a[(c[f>>2]|0)+1>>0]=10}gu(c[j>>2]|0,c[h>>2]|0);i=g;return c[f>>2]|0}function sv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;h=e;g=e+4|0;j=e+8|0;c[h>>2]=b;c[g>>2]=d;c[j>>2]=ve(c[h>>2]|0,40)|0;if((c[j>>2]|0)==0){du(c[h>>2]|0,c[g>>2]|0);c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}else{a[c[j>>2]>>0]=119;c[(c[j>>2]|0)+8>>2]=c[g>>2];a[(c[j>>2]|0)+1>>0]=10;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=e;return b|0}return 0}function tv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;m=i;i=i+48|0;l=m;j=m+40|0;g=m+36|0;f=m+32|0;n=m+28|0;q=m+44|0;k=m+16|0;r=m+12|0;s=m+8|0;h=m+20|0;p=m+24|0;c[j>>2]=b;c[g>>2]=d;c[f>>2]=e;c[n>>2]=0;c[h>>2]=c[c[j>>2]>>2];if((a[(c[h>>2]|0)+64>>0]|0)!=0){d=c[h>>2]|0;b=c[g>>2]|0;fu(d,b);i=m;return}if(0!=(gy(c[j>>2]|0)|0)){d=c[h>>2]|0;b=c[g>>2]|0;fu(d,b);i=m;return}c[k>>2]=c[(c[g>>2]|0)+12>>2];c[r>>2]=c[(c[g>>2]|0)+16>>2];c[s>>2]=Ub(c[r>>2]|0)|0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}b=c[q>>2]|0;c[p>>2]=(c[q>>2]|0)<2?b^1:b;if((c[k>>2]|0)!=0){if((Dc(c[(c[(c[h>>2]|0)+16>>2]|0)+(c[p>>2]<<4)>>2]|0,c[k>>2]|0)|0)==0){o=7}}else{o=7}if((o|0)==7){o=0;c[n>>2]=zh((c[(c[(c[h>>2]|0)+16>>2]|0)+(c[p>>2]<<4)+12>>2]|0)+40|0,c[r>>2]|0,c[s>>2]|0)|0;if((c[n>>2]|0)!=0){break}}c[q>>2]=(c[q>>2]|0)+1}if((c[n>>2]|0)!=0){fA(c[j>>2]|0,c[n>>2]|0);d=c[h>>2]|0;b=c[g>>2]|0;fu(d,b);i=m;return}n=c[j>>2]|0;if((c[f>>2]|0)!=0){eA(n,c[k>>2]|0)}else{c[l>>2]=c[g>>2];c[l+4>>2]=0;bf(n,26272,l)}a[(c[j>>2]|0)+17>>0]=1;d=c[h>>2]|0;b=c[g>>2]|0;fu(d,b);i=m;return}function uv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;Yz(c[k>>2]|0,24,26032,c[j>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0);i=f;return}function vv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;Yz(c[f>>2]|0,25,25848,c[e>>2]|0,0,0,c[e>>2]|0);i=d;return}function wv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;k=i;i=i+64|0;j=k;f=k+44|0;r=k+40|0;s=k+36|0;u=k+32|0;p=k+28|0;l=k+48|0;n=k+16|0;h=k+12|0;g=k+8|0;o=k+4|0;q=k+20|0;t=k+24|0;c[f>>2]=b;c[r>>2]=d;c[s>>2]=e;c[o>>2]=c[c[f>>2]>>2];if(0!=(gy(c[f>>2]|0)|0)){i=k;return}if((c[r>>2]|0)==0){Ty(c[f>>2]|0,0);i=k;return}if((c[s>>2]|0)==0){m=6}else{if((c[c[s>>2]>>2]|0)==0){m=6}}do{if((m|0)==6){c[t>>2]=Iv(c[c[f>>2]>>2]|0,c[r>>2]|0)|0;if((c[t>>2]|0)==0){i=k;return}c[u>>2]=xh(c[o>>2]|0,a[(c[(c[(c[o>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[t>>2]|0,0)|0;if((c[u>>2]|0)==0){cc(c[o>>2]|0,c[t>>2]|0);break}Ty(c[f>>2]|0,c[t>>2]|0);cc(c[o>>2]|0,c[t>>2]|0);i=k;return}}while(0);c[g>>2]=ky(c[f>>2]|0,c[r>>2]|0,c[s>>2]|0,q)|0;if((c[g>>2]|0)<0){i=k;return}c[p>>2]=Iv(c[o>>2]|0,c[q>>2]|0)|0;if((c[p>>2]|0)==0){i=k;return}c[l>>2]=c[(c[(c[o>>2]|0)+16>>2]|0)+(c[g>>2]<<4)>>2];c[n>>2]=cw(c[o>>2]|0,c[p>>2]|0,c[l>>2]|0)|0;if((c[n>>2]|0)!=0){Uy(c[f>>2]|0,c[n>>2]|0,0);cc(c[o>>2]|0,c[p>>2]|0);i=k;return}c[h>>2]=tw(c[o>>2]|0,c[p>>2]|0,c[l>>2]|0)|0;cc(c[o>>2]|0,c[p>>2]|0);l=c[f>>2]|0;if((c[h>>2]|0)!=0){$v(l,0,c[g>>2]|0);Vy(c[f>>2]|0,c[h>>2]|0,-1);i=k;return}else{bf(l,25576,j);i=k;return}}function xv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+48|0;f=k+40|0;p=k+36|0;q=k+32|0;g=k+28|0;n=k+24|0;m=k+20|0;j=k+12|0;l=k+8|0;e=k+4|0;h=k;o=k+16|0;c[f>>2]=a;c[p>>2]=b;c[q>>2]=d;c[g>>2]=c[c[f>>2]>>2];if(0!=(gy(c[f>>2]|0)|0)){i=k;return}if((c[p>>2]|0)==0){c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[g>>2]|0)+20>>2]|0)){break}if((c[m>>2]|0)!=1){hy(c[f>>2]|0,c[m>>2]|0)}c[m>>2]=(c[m>>2]|0)+1}i=k;return}if((c[(c[q>>2]|0)+4>>2]|0)!=0){c[n>>2]=ky(c[f>>2]|0,c[p>>2]|0,c[q>>2]|0,o)|0;if((c[n>>2]|0)<0){i=k;return}c[l>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[n>>2]<<4)>>2];c[j>>2]=Iv(c[g>>2]|0,c[o>>2]|0)|0;if((c[j>>2]|0)==0){i=k;return}a=tw(c[g>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;c[h>>2]=a;m=c[f>>2]|0;if((a|0)!=0){jy(m,c[(c[h>>2]|0)+12>>2]|0,c[h>>2]|0)}else{a=af(m,0,c[j>>2]|0,c[l>>2]|0)|0;c[e>>2]=a;if((a|0)!=0){jy(c[f>>2]|0,c[e>>2]|0,0)}}cc(c[g>>2]|0,c[j>>2]|0);i=k;return}c[n>>2]=iy(c[g>>2]|0,c[p>>2]|0)|0;if((c[n>>2]|0)>=0){hy(c[f>>2]|0,c[n>>2]|0);i=k;return}c[j>>2]=Iv(c[g>>2]|0,c[p>>2]|0)|0;if((c[j>>2]|0)==0){i=k;return}a=tw(c[g>>2]|0,c[j>>2]|0,0)|0;c[h>>2]=a;l=c[f>>2]|0;if((a|0)!=0){jy(l,c[(c[h>>2]|0)+12>>2]|0,c[h>>2]|0)}else{a=af(l,0,c[j>>2]|0,0)|0;c[e>>2]=a;if((a|0)!=0){jy(c[f>>2]|0,c[e>>2]|0,0)}}cc(c[g>>2]|0,c[j>>2]|0);i=k;return}function yv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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=i;i=i+112|0;m=k;n=k+96|0;p=k+92|0;y=k+88|0;g=k+84|0;f=k+80|0;l=k+76|0;h=k+72|0;q=k+68|0;r=k+100|0;s=k+56|0;v=k+52|0;o=k+48|0;w=k+44|0;j=k+40|0;u=k+36|0;t=k+60|0;x=k+64|0;c[n>>2]=b;c[p>>2]=d;c[y>>2]=e;c[h>>2]=0;c[q>>2]=c[c[n>>2]>>2];c[o>>2]=0;c[w>>2]=0;c[j>>2]=c[(c[q>>2]|0)+24>>2];do{if((a[(c[q>>2]|0)+64>>0]|0)==0){c[l>>2]=Zv(c[n>>2]|0,0,(c[p>>2]|0)+8|0)|0;if((c[l>>2]|0)!=0){c[g>>2]=ef(c[c[n>>2]>>2]|0,c[(c[l>>2]|0)+68>>2]|0)|0;c[f>>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+(c[g>>2]<<4)>>2];b=(c[q>>2]|0)+24|0;c[b>>2]=c[b>>2]|2097152;c[h>>2]=Iv(c[q>>2]|0,c[y>>2]|0)|0;if((c[h>>2]|0)!=0){if((cw(c[q>>2]|0,c[h>>2]|0,c[f>>2]|0)|0)==0){if((tw(c[q>>2]|0,c[h>>2]|0,c[f>>2]|0)|0)==0){if(0!=(_v(c[n>>2]|0,c[c[l>>2]>>2]|0)|0)){break}if(0!=(uw(c[n>>2]|0,c[h>>2]|0)|0)){break}e=c[n>>2]|0;if((c[(c[l>>2]|0)+12>>2]|0)!=0){c[m>>2]=c[c[l>>2]>>2];bf(e,22192,m);break}if((Lv(e,26,c[f>>2]|0,c[c[l>>2]>>2]|0,0)|0)!=0){break}if((vw(c[n>>2]|0,c[l>>2]|0)|0)!=0){break}if((a[(c[l>>2]|0)+44>>0]&16|0)!=0){c[w>>2]=ww(c[q>>2]|0,c[l>>2]|0)|0;if((c[(c[c[(c[w>>2]|0)+8>>2]>>2]|0)+76>>2]|0)==0){c[w>>2]=0}}c[v>>2]=Ov(c[n>>2]|0)|0;if((c[v>>2]|0)==0){break}$v(c[n>>2]|0,(c[w>>2]|0)!=0&1,c[g>>2]|0);Pv(c[n>>2]|0,c[g>>2]|0);if((c[w>>2]|0)!=0){d=(c[n>>2]|0)+72|0;b=(c[d>>2]|0)+1|0;c[d>>2]=b;c[u>>2]=b;Sv(c[v>>2]|0,97,0,c[u>>2]|0,0,c[h>>2]|0,0)|0;Sv(c[v>>2]|0,152,c[u>>2]|0,0,0,c[w>>2]|0,-10)|0;xw(c[n>>2]|0)}c[s>>2]=c[c[l>>2]>>2];c[r>>2]=Ht(c[s>>2]|0,-1)|0;if((c[(c[q>>2]|0)+24>>2]&524288|0)!=0){b=yw(c[n>>2]|0,c[l>>2]|0)|0;c[o>>2]=b;if((b|0)!=0){b=c[n>>2]|0;w=(c[g>>2]|0)==1?21432:21456;e=c[s>>2]|0;y=c[h>>2]|0;d=c[o>>2]|0;c[m>>2]=c[f>>2];c[m+4>>2]=w;c[m+8>>2]=e;c[m+12>>2]=y;c[m+16>>2]=d;Nv(b,22224,m);cc(c[q>>2]|0,c[o>>2]|0)}}b=c[n>>2]|0;z=(c[g>>2]|0)==1?21432:21456;g=c[h>>2]|0;u=c[h>>2]|0;v=c[h>>2]|0;w=c[h>>2]|0;e=c[h>>2]|0;y=c[r>>2]|0;d=c[s>>2]|0;c[m>>2]=c[f>>2];c[m+4>>2]=z;c[m+8>>2]=g;c[m+12>>2]=u;c[m+16>>2]=v;c[m+20>>2]=w;c[m+24>>2]=e;c[m+28>>2]=y;c[m+32>>2]=d;Nv(b,22296,m);if((cw(c[q>>2]|0,22680,c[f>>2]|0)|0)!=0){z=c[n>>2]|0;d=c[h>>2]|0;b=c[c[l>>2]>>2]|0;c[m>>2]=c[f>>2];c[m+4>>2]=d;c[m+8>>2]=b;Nv(z,22696,m)}z=hw(c[n>>2]|0,c[l>>2]|0)|0;c[o>>2]=z;if((z|0)!=0){z=c[n>>2]|0;d=c[h>>2]|0;b=c[o>>2]|0;c[m>>2]=c[h>>2];c[m+4>>2]=d;c[m+8>>2]=b;Nv(z,22760,m);cc(c[q>>2]|0,c[o>>2]|0)}a:do{if((c[(c[q>>2]|0)+24>>2]&524288|0)!=0){c[t>>2]=zw(c[l>>2]|0)|0;while(1){if((c[t>>2]|0)==0){break a}c[x>>2]=c[c[t>>2]>>2];if((c[x>>2]|0)!=(c[l>>2]|0)){fw(c[n>>2]|0,c[c[t>>2]>>2]|0,c[c[x>>2]>>2]|0)}c[t>>2]=c[(c[t>>2]|0)+12>>2]}}}while(0);fw(c[n>>2]|0,c[l>>2]|0,c[h>>2]|0);break}}z=c[n>>2]|0;c[m>>2]=c[h>>2];bf(z,22128,m)}}}}while(0);fu(c[q>>2]|0,c[p>>2]|0);cc(c[q>>2]|0,c[h>>2]|0);c[(c[q>>2]|0)+24>>2]=c[j>>2];i=k;return}function zv(e,f){e=e|0;f=f|0;var g=0,h=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;p=i;i=i+80|0;j=p;h=p+72|0;g=p+68|0;o=p+64|0;w=p+60|0;t=p+56|0;u=p+52|0;v=p+76|0;q=p+40|0;n=p+36|0;k=p+32|0;m=p+28|0;l=p+24|0;r=p+44|0;s=p+48|0;c[h>>2]=e;c[g>>2]=f;c[m>>2]=c[c[h>>2]>>2];if((c[(c[h>>2]|0)+64>>2]|0)!=0){i=p;return}if((d[(c[m>>2]|0)+64>>0]|0)!=0){i=p;return}c[o>>2]=c[(c[h>>2]|0)+484>>2];c[t>>2]=ef(c[m>>2]|0,c[(c[o>>2]|0)+68>>2]|0)|0;c[u>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[t>>2]<<4)>>2];c[v>>2]=(c[c[o>>2]>>2]|0)+16;c[n>>2]=(c[(c[o>>2]|0)+4>>2]|0)+(((b[(c[o>>2]|0)+38>>1]|0)-1|0)*24|0);c[k>>2]=c[(c[n>>2]|0)+4>>2];c[w>>2]=cw(c[m>>2]|0,c[v>>2]|0,c[u>>2]|0)|0;if((Lv(c[h>>2]|0,26,c[u>>2]|0,c[c[w>>2]>>2]|0,0)|0)!=0){i=p;return}if((c[k>>2]|0)!=0){if((d[c[k>>2]>>0]|0)==101){c[k>>2]=0}}if((a[(c[n>>2]|0)+23>>0]&1|0)!=0){bf(c[h>>2]|0,21712,j);i=p;return}if((c[(c[o>>2]|0)+8>>2]|0)!=0){bf(c[h>>2]|0,21744,j);i=p;return}if((c[(c[m>>2]|0)+24>>2]&524288|0)!=0){if((c[(c[o>>2]|0)+16>>2]|0)!=0){if((c[k>>2]|0)!=0){bf(c[h>>2]|0,21776,j);i=p;return}}}if((d[(c[n>>2]|0)+20>>0]|0)!=0){if((c[k>>2]|0)==0){bf(c[h>>2]|0,21840,j);i=p;return}}do{if((c[k>>2]|0)!=0){c[l>>2]=0;if((dw(c[m>>2]|0,c[k>>2]|0,1,98,l)|0)!=0){a[(c[m>>2]|0)+64>>0]=1;i=p;return}if((c[l>>2]|0)!=0){Rf(c[l>>2]|0);break}bf(c[h>>2]|0,21896,j);i=p;return}}while(0);c[q>>2]=ft(c[m>>2]|0,c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+4>>2]|0)|0;if((c[q>>2]|0)!=0){c[r>>2]=(c[q>>2]|0)+((c[(c[g>>2]|0)+4>>2]|0)-1);c[s>>2]=c[(c[m>>2]|0)+24>>2];while(1){if(!((c[r>>2]|0)>>>0>(c[q>>2]|0)>>>0)){break}if((a[c[r>>2]>>0]|0)!=59){if((a[136+(d[c[r>>2]>>0]|0)>>0]&1|0)==0){break}}e=c[r>>2]|0;c[r>>2]=e+ -1;a[e>>0]=0}e=(c[m>>2]|0)+24|0;c[e>>2]=c[e>>2]|2097152;e=c[h>>2]|0;f=(c[t>>2]|0)==1?21432:21456;l=c[(c[o>>2]|0)+48>>2]|0;n=c[q>>2]|0;r=(c[(c[o>>2]|0)+48>>2]|0)+1|0;v=c[v>>2]|0;c[j>>2]=c[u>>2];c[j+4>>2]=f;c[j+8>>2]=l;c[j+12>>2]=n;c[j+16>>2]=r;c[j+20>>2]=v;Nv(e,21944,j);cc(c[m>>2]|0,c[q>>2]|0);c[(c[m>>2]|0)+24>>2]=c[s>>2]}ew(c[h>>2]|0,c[t>>2]|0,(c[k>>2]|0)!=0?3:2);fw(c[h>>2]|0,c[w>>2]|0,c[c[w>>2]>>2]|0);i=p;return}function Av(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+48|0;k=f;j=f+36|0;m=f+32|0;g=f+28|0;n=f+24|0;o=f+40|0;l=f+12|0;p=f+8|0;r=f+4|0;h=f+16|0;q=f+20|0;c[j>>2]=d;c[m>>2]=e;c[h>>2]=c[c[j>>2]>>2];if((a[(c[h>>2]|0)+64>>0]|0)!=0){e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}c[n>>2]=Zv(c[j>>2]|0,0,(c[m>>2]|0)+8|0)|0;if((c[n>>2]|0)==0){e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}if((a[(c[n>>2]|0)+44>>0]&16|0)!=0){bf(c[j>>2]|0,21504,k);e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}e=c[j>>2]|0;if((c[(c[n>>2]|0)+12>>2]|0)!=0){bf(e,21544,k);e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}if(0!=(_v(e,c[c[n>>2]>>2]|0)|0)){e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}c[l>>2]=ef(c[h>>2]|0,c[(c[n>>2]|0)+68>>2]|0)|0;c[g>>2]=ve(c[h>>2]|0,76)|0;if((c[g>>2]|0)==0){e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}c[(c[j>>2]|0)+484>>2]=c[g>>2];b[(c[g>>2]|0)+40>>1]=1;b[(c[g>>2]|0)+38>>1]=b[(c[n>>2]|0)+38>>1]|0;c[r>>2]=((((b[(c[g>>2]|0)+38>>1]|0)-1|0)/8|0)<<3)+8;d=ve(c[h>>2]|0,(c[r>>2]|0)*24|0)|0;c[(c[g>>2]|0)+4>>2]=d;d=c[h>>2]|0;c[k>>2]=c[c[n>>2]>>2];d=cf(d,21576,k)|0;c[c[g>>2]>>2]=d;if((c[(c[g>>2]|0)+4>>2]|0)!=0){if((c[c[g>>2]>>2]|0)!=0){fL(c[(c[g>>2]|0)+4>>2]|0,c[(c[n>>2]|0)+4>>2]|0,(b[(c[g>>2]|0)+38>>1]|0)*24|0)|0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(b[(c[g>>2]|0)+38>>1]|0)){break}c[q>>2]=(c[(c[g>>2]|0)+4>>2]|0)+((c[p>>2]|0)*24|0);d=pe(c[h>>2]|0,c[c[q>>2]>>2]|0)|0;c[c[q>>2]>>2]=d;c[(c[q>>2]|0)+16>>2]=0;c[(c[q>>2]|0)+12>>2]=0;c[(c[q>>2]|0)+4>>2]=0;c[(c[q>>2]|0)+8>>2]=0;c[p>>2]=(c[p>>2]|0)+1}c[(c[g>>2]|0)+68>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[l>>2]<<4)+12>>2];c[(c[g>>2]|0)+48>>2]=c[(c[n>>2]|0)+48>>2];b[(c[g>>2]|0)+40>>1]=1;$v(c[j>>2]|0,0,c[l>>2]|0);c[o>>2]=Ov(c[j>>2]|0)|0;if((c[o>>2]|0)==0){e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}Pv(c[j>>2]|0,c[l>>2]|0);e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}}a[(c[h>>2]|0)+64>>0]=1;e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}function Bv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;m=i;i=i+80|0;h=m;g=m+64|0;o=m+60|0;k=m+56|0;f=m+52|0;j=m+48|0;n=m+68|0;l=m+36|0;e=m+32|0;s=m+28|0;p=m+24|0;q=m+40|0;r=m+44|0;c[g>>2]=b;c[o>>2]=d;c[k>>2]=c[(c[g>>2]|0)+484>>2];c[f>>2]=c[c[g>>2]>>2];if((c[k>>2]|0)==0){i=m;return}Jv(c[g>>2]|0);c[(c[g>>2]|0)+512>>2]=0;if((c[(c[k>>2]|0)+52>>2]|0)<1){i=m;return}if((a[(c[f>>2]|0)+137>>0]|0)==0){if((c[o>>2]|0)!=0){c[(c[g>>2]|0)+500>>2]=(c[c[o>>2]>>2]|0)-(c[(c[g>>2]|0)+496>>2]|0)+(c[(c[o>>2]|0)+4>>2]|0)}r=c[f>>2]|0;c[h>>2]=(c[g>>2]|0)+496;c[j>>2]=cf(r,21320,h)|0;c[l>>2]=ef(c[f>>2]|0,c[(c[k>>2]|0)+68>>2]|0)|0;r=c[g>>2]|0;o=(c[l>>2]|0)==1?21432:21456;p=c[c[k>>2]>>2]|0;q=c[c[k>>2]>>2]|0;b=c[j>>2]|0;s=c[(c[g>>2]|0)+384>>2]|0;c[h>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(c[l>>2]<<4)>>2];c[h+4>>2]=o;c[h+8>>2]=p;c[h+12>>2]=q;c[h+16>>2]=b;c[h+20>>2]=s;Nv(r,21344,h);cc(c[f>>2]|0,c[j>>2]|0);c[e>>2]=Ov(c[g>>2]|0)|0;Pv(c[g>>2]|0,c[l>>2]|0);Qv(c[e>>2]|0,139,0,0)|0;r=c[f>>2]|0;c[h>>2]=c[c[k>>2]>>2];c[n>>2]=cf(r,21472,h)|0;Rv(c[e>>2]|0,c[l>>2]|0,c[n>>2]|0);r=c[e>>2]|0;s=c[l>>2]|0;b=c[c[k>>2]>>2]|0;Sv(r,142,s,0,0,b,(Ub(c[c[k>>2]>>2]|0)|0)+1|0)|0;i=m;return}c[p>>2]=c[(c[k>>2]|0)+68>>2];c[q>>2]=c[c[k>>2]>>2];c[r>>2]=Ub(c[q>>2]|0)|0;c[s>>2]=Eh((c[p>>2]|0)+8|0,c[q>>2]|0,c[r>>2]|0,c[k>>2]|0)|0;if((c[s>>2]|0)!=0){a[(c[f>>2]|0)+64>>0]=1;i=m;return}else{c[(c[g>>2]|0)+484>>2]=0;i=m;return}}function Cv(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=i;i=i+32|0;k=o+28|0;p=o;r=o+4|0;j=o+8|0;q=o+12|0;m=o+16|0;l=o+20|0;n=o+24|0;c[k>>2]=b;c[p>>2]=e;c[r>>2]=f;c[j>>2]=g;c[q>>2]=h;wu(c[k>>2]|0,c[p>>2]|0,c[r>>2]|0,0,0,1,c[q>>2]|0);c[l>>2]=c[(c[k>>2]|0)+484>>2];if((c[l>>2]|0)==0){i=o;return}c[n>>2]=c[c[k>>2]>>2];c[m>>2]=ef(c[n>>2]|0,c[(c[l>>2]|0)+68>>2]|0)|0;r=(c[l>>2]|0)+44|0;a[r>>0]=d[r>>0]|0|16;c[(c[l>>2]|0)+52>>2]=0;r=c[n>>2]|0;q=c[l>>2]|0;Kv(r,q,Iv(c[n>>2]|0,c[j>>2]|0)|0);Kv(c[n>>2]|0,c[l>>2]|0,0);q=c[n>>2]|0;r=c[l>>2]|0;Kv(q,r,pe(c[n>>2]|0,c[c[l>>2]>>2]|0)|0);c[(c[k>>2]|0)+500>>2]=(c[c[j>>2]>>2]|0)+(c[(c[j>>2]|0)+4>>2]|0)-(c[c[p>>2]>>2]|0);if((c[(c[l>>2]|0)+56>>2]|0)==0){i=o;return}Lv(c[k>>2]|0,29,c[c[l>>2]>>2]|0,c[c[(c[l>>2]|0)+56>>2]>>2]|0,c[(c[(c[c[k>>2]>>2]|0)+16>>2]|0)+(c[m>>2]<<4)>>2]|0)|0;i=o;return}function Dv(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Jv(c[d>>2]|0);c[(c[d>>2]|0)+512>>2]=0;c[(c[d>>2]|0)+516>>2]=0;i=b;return}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=(c[g>>2]|0)+512;b=c[f>>2]|0;if((c[c[e>>2]>>2]|0)==0){c[c[e>>2]>>2]=c[b>>2];c[(c[e>>2]|0)+4>>2]=c[(c[f>>2]|0)+4>>2];i=d;return}else{c[(c[e>>2]|0)+4>>2]=(c[c[f>>2]>>2]|0)+(c[b+4>>2]|0)-(c[c[e>>2]>>2]|0);i=d;return}}function Fv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+48|0;q=n;p=n+36|0;l=n+32|0;s=n+28|0;h=n+24|0;j=n+40|0;o=n+12|0;m=n+8|0;k=n+4|0;r=n+16|0;g=n+20|0;c[p>>2]=a;c[l>>2]=b;c[s>>2]=d;c[h>>2]=e;c[j>>2]=f;c[o>>2]=c[c[p>>2]>>2];c[k>>2]=Iv(c[c[p>>2]>>2]|0,c[s>>2]|0)|0;a:do{if((c[k>>2]|0)!=0){if((c[l>>2]|0)!=0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[c[l>>2]>>2]|0)){break a}if((Dc(c[k>>2]|0,c[(c[l>>2]|0)+8+(c[r>>2]<<4)>>2]|0)|0)==0){s=c[p>>2]|0;c[q>>2]=c[k>>2];bf(s,21248,q)}c[r>>2]=(c[r>>2]|0)+1}}}}while(0);if((c[l>>2]|0)!=0){c[g>>2]=24+(c[c[l>>2]>>2]<<4);c[m>>2]=Ot(c[o>>2]|0,c[l>>2]|0,c[g>>2]|0)|0}else{c[m>>2]=ve(c[o>>2]|0,24)|0}if((c[m>>2]|0)==0){cu(c[o>>2]|0,c[h>>2]|0);du(c[o>>2]|0,c[j>>2]|0);cc(c[o>>2]|0,c[k>>2]|0);c[m>>2]=c[l>>2];s=c[m>>2]|0;i=n;return s|0}else{c[(c[m>>2]|0)+8+(c[c[m>>2]>>2]<<4)+8>>2]=c[j>>2];c[(c[m>>2]|0)+8+(c[c[m>>2]>>2]<<4)+4>>2]=c[h>>2];c[(c[m>>2]|0)+8+(c[c[m>>2]>>2]<<4)>>2]=c[k>>2];c[(c[m>>2]|0)+8+(c[c[m>>2]>>2]<<4)+12>>2]=0;s=c[m>>2]|0;c[s>>2]=(c[s>>2]|0)+1;s=c[m>>2]|0;i=n;return s|0}return 0}function Gv(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;j=i;i=i+16|0;l=j+4|0;k=j+8|0;h=j;c[l>>2]=f;a[k>>0]=g;c[h>>2]=b[17632+(c[l>>2]<<1)>>1]|0;c[h>>2]=(c[h>>2]|0)+(d[k>>0]|0);i=j;return e[18248+(c[h>>2]<<1)>>1]|0}function Hv(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;d=e+4|0;b=e;c[d>>2]=a;c[b>>2]=c[(c[d>>2]|0)+8>>2];while(1){if((c[c[d>>2]>>2]|0)<0){break}ju(c[d>>2]|0)|0}c[(c[d>>2]|0)+8>>2]=c[b>>2];i=e;return}function Iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;if((c[f>>2]|0)!=0){c[e>>2]=ft(c[g>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;gt(c[e>>2]|0)|0;a=c[e>>2]|0;i=d;return a|0}else{c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}return 0}function Jv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b;f=b+4|0;g=b+8|0;c[d>>2]=a;if((c[(c[d>>2]|0)+512>>2]|0)==0){i=b;return}if((c[(c[d>>2]|0)+484>>2]|0)==0){i=b;return}c[e>>2]=c[(c[d>>2]|0)+512>>2];c[f>>2]=c[(c[d>>2]|0)+516>>2];c[g>>2]=c[c[d>>2]>>2];a=c[g>>2]|0;d=c[(c[d>>2]|0)+484>>2]|0;Kv(a,d,ft(c[g>>2]|0,c[e>>2]|0,c[f>>2]|0)|0);i=b;return}function Kv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;k=j+24|0;f=j;e=j+4|0;h=j+8|0;m=j+12|0;g=j+16|0;l=j+20|0;c[k>>2]=a;c[f>>2]=b;c[e>>2]=d;b=(c[f>>2]|0)+52|0;a=c[b>>2]|0;c[b>>2]=a+1;c[h>>2]=a;c[m>>2]=1+(c[(c[f>>2]|0)+52>>2]|0)<<2;c[g>>2]=Ot(c[k>>2]|0,c[(c[f>>2]|0)+56>>2]|0,c[m>>2]|0)|0;if((c[g>>2]|0)!=0){c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]=c[e>>2];c[(c[g>>2]|0)+((c[h>>2]|0)+1<<2)>>2]=0;a=c[g>>2]|0;m=c[f>>2]|0;m=m+56|0;c[m>>2]=a;i=j;return}c[l>>2]=0;while(1){d=c[k>>2]|0;if((c[l>>2]|0)>=(c[h>>2]|0)){break}cc(d,c[(c[(c[f>>2]|0)+56>>2]|0)+(c[l>>2]<<2)>>2]|0);c[l>>2]=(c[l>>2]|0)+1}cc(d,c[e>>2]|0);cc(c[k>>2]|0,c[(c[f>>2]|0)+56>>2]|0);c[(c[f>>2]|0)+52>>2]=0;a=c[g>>2]|0;m=c[f>>2]|0;m=m+56|0;c[m>>2]=a;i=j;return}function Lv(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+48|0;l=j;o=j+28|0;k=j+24|0;h=j+20|0;p=j+32|0;q=j+8|0;r=j+4|0;n=j+12|0;m=j+16|0;c[k>>2]=a;c[h>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[n>>2]=c[c[k>>2]>>2];if((d[(c[n>>2]|0)+137>>0]|0|0)==0){if((d[(c[k>>2]|0)+451>>0]|0|0)==0){if((c[(c[n>>2]|0)+276>>2]|0)==0){c[o>>2]=0;a=c[o>>2]|0;i=j;return a|0}c[m>>2]=tb[c[(c[n>>2]|0)+276>>2]&15](c[(c[n>>2]|0)+280>>2]|0,c[h>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[(c[k>>2]|0)+492>>2]|0)|0;if((c[m>>2]|0)==1){bf(c[k>>2]|0,21280,l);c[(c[k>>2]|0)+12>>2]=23}else{if((c[m>>2]|0)!=0&(c[m>>2]|0)!=2){c[m>>2]=1;Mv(c[k>>2]|0)}}c[o>>2]=c[m>>2];a=c[o>>2]|0;i=j;return a|0}}c[o>>2]=0;a=c[o>>2]|0;i=j;return a|0}function Mv(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b+4|0;c[d>>2]=a;bf(c[d>>2]|0,21296,b);c[(c[d>>2]|0)+12>>2]=1;i=b;return}function Nv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+144|0;f=l+36|0;n=l;m=l+8|0;g=l+24|0;h=l+28|0;j=l+32|0;k=l+40|0;c[f>>2]=b;c[n>>2]=d;c[h>>2]=0;c[j>>2]=c[c[f>>2]>>2];if((c[(c[f>>2]|0)+64>>2]|0)!=0){i=l;return}c[m>>2]=e;c[g>>2]=iu(c[j>>2]|0,c[n>>2]|0,m)|0;if((c[g>>2]|0)==0){i=l;return}n=(c[f>>2]|0)+18|0;a[n>>0]=(a[n>>0]|0)+1<<24>>24;n=k+0|0;e=(c[f>>2]|0)+440|0;m=n+96|0;do{a[n>>0]=a[e>>0]|0;n=n+1|0;e=e+1|0}while((n|0)<(m|0));n=(c[f>>2]|0)+440|0;m=n+96|0;do{c[n>>2]=0;n=n+4|0}while((n|0)<(m|0));Mf(c[f>>2]|0,c[g>>2]|0,h)|0;cc(c[j>>2]|0,c[h>>2]|0);cc(c[j>>2]|0,c[g>>2]|0);n=(c[f>>2]|0)+440|0;e=k+0|0;m=n+96|0;do{a[n>>0]=a[e>>0]|0;n=n+1|0;e=e+1|0}while((n|0)<(m|0));b=(c[f>>2]|0)+18|0;a[b>>0]=(a[b>>0]|0)+ -1<<24>>24;i=l;return}function Ov(d){d=d|0;var e=0,f=0,g=0;f=i;i=i+16|0;e=f+4|0;g=f;c[e>>2]=d;c[g>>2]=c[(c[e>>2]|0)+8>>2];if((c[g>>2]|0)==0){d=df(c[e>>2]|0)|0;c[(c[e>>2]|0)+8>>2]=d;c[g>>2]=d;if((c[g>>2]|0)!=0){Yv(c[g>>2]|0,155)|0}if((c[(c[e>>2]|0)+408>>2]|0)==0){if((b[(c[c[e>>2]>>2]|0)+60>>1]&8|0)==0){a[(c[e>>2]|0)+23>>0]=1}}}i=f;return c[g>>2]|0}function Pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;f=d+16|0;g=d;e=d+4|0;j=d+8|0;h=d+12|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=Wv(c[f>>2]|0)|0;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[f>>2]|0)+8>>2];Qv(c[h>>2]|0,25,(c[c[(c[(c[j>>2]|0)+16>>2]|0)+(c[g>>2]<<4)+12>>2]>>2]|0)+1|0,c[e>>2]|0)|0;Tv(c[h>>2]|0,51,c[g>>2]|0,1,c[e>>2]|0)|0;Xv(c[f>>2]|0,c[e>>2]|0);i=d;return}function Qv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=Tv(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0,0)|0;i=f;return a|0}function Rv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;g=e+16|0;k=e;h=e+4|0;f=e+8|0;j=e+12|0;c[g>>2]=a;c[k>>2]=b;c[h>>2]=d;c[j>>2]=Tv(c[g>>2]|0,119,c[k>>2]|0,0,0)|0;nf(c[g>>2]|0,c[j>>2]|0,c[h>>2]|0,-1);c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[c[g>>2]>>2]|0)+20>>2]|0)){break}jf(c[g>>2]|0,c[f>>2]|0);c[f>>2]=(c[f>>2]|0)+1}i=e;return}function Sv(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+32|0;n=k+28|0;r=k;q=k+4|0;p=k+8|0;o=k+12|0;m=k+16|0;l=k+20|0;j=k+24|0;c[n>>2]=a;c[r>>2]=b;c[q>>2]=d;c[p>>2]=e;c[o>>2]=f;c[m>>2]=g;c[l>>2]=h;c[j>>2]=Tv(c[n>>2]|0,c[r>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0)|0;nf(c[n>>2]|0,c[j>>2]|0,c[m>>2]|0,c[l>>2]|0);i=k;return c[j>>2]|0}function Tv(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+32|0;j=o+28|0;k=o;n=o+4|0;h=o+8|0;p=o+12|0;q=o+16|0;l=o+20|0;m=o+24|0;c[k>>2]=b;c[n>>2]=d;c[h>>2]=e;c[p>>2]=f;c[q>>2]=g;c[l>>2]=c[(c[k>>2]|0)+32>>2];if((c[(c[(c[k>>2]|0)+24>>2]|0)+84>>2]|0)<=(c[l>>2]|0)){if((Uv(c[k>>2]|0)|0)!=0){c[j>>2]=1;b=c[j>>2]|0;i=o;return b|0}}b=(c[k>>2]|0)+32|0;c[b>>2]=(c[b>>2]|0)+1;c[m>>2]=(c[(c[k>>2]|0)+4>>2]|0)+((c[l>>2]|0)*20|0);a[c[m>>2]>>0]=c[n>>2];a[(c[m>>2]|0)+3>>0]=0;c[(c[m>>2]|0)+4>>2]=c[h>>2];c[(c[m>>2]|0)+8>>2]=c[p>>2];c[(c[m>>2]|0)+12>>2]=c[q>>2];c[(c[m>>2]|0)+16>>2]=0;a[(c[m>>2]|0)+1>>0]=0;c[j>>2]=c[l>>2];b=c[j>>2]|0;i=o;return b|0}function Uv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+12|0;b=d;e=d+4|0;g=d+8|0;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+24>>2];if((c[(c[e>>2]|0)+84>>2]|0)!=0){a=c[(c[e>>2]|0)+84>>2]<<1}else{a=51}c[g>>2]=a;c[b>>2]=Ot(c[c[e>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0,(c[g>>2]|0)*20|0)|0;if((c[b>>2]|0)==0){a=c[b>>2]|0;a=(a|0)!=0;a=a?0:7;i=d;return a|0}a=((Vv(c[c[e>>2]>>2]|0,c[b>>2]|0)|0)>>>0)/20|0;c[(c[e>>2]|0)+84>>2]=a;c[(c[f>>2]|0)+4>>2]=c[b>>2];a=c[b>>2]|0;a=(a|0)!=0;a=a?0:7;i=d;return a|0}function Vv(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+8|0;g=d;h=d+4|0;c[g>>2]=a;c[h>>2]=b;if((Pt(c[g>>2]|0,c[h>>2]|0)|0)!=0){c[f>>2]=e[(c[g>>2]|0)+240>>1]|0;a=c[f>>2]|0;i=d;return a|0}else{c[f>>2]=ub[c[45184>>2]&63](c[h>>2]|0)|0;a=c[f>>2]|0;i=d;return a|0}return 0}function Wv(b){b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+4|0;g=e;c[g>>2]=b;b=c[g>>2]|0;if((d[(c[g>>2]|0)+19>>0]|0|0)==0){g=b+72|0;b=(c[g>>2]|0)+1|0;c[g>>2]=b;c[f>>2]=b;b=c[f>>2]|0;i=e;return b|0}else{h=b+19|0;b=(a[h>>0]|0)+ -1<<24>>24;a[h>>0]=b;c[f>>2]=c[(c[g>>2]|0)+24+((b&255)<<2)>>2];b=c[f>>2]|0;i=e;return b|0}return 0}function Xv(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f+12|0;h=f;k=f+4|0;g=f+8|0;c[j>>2]=b;c[h>>2]=e;if((c[h>>2]|0)==0){i=f;return}if((d[(c[j>>2]|0)+19>>0]|0|0)>=8){i=f;return}c[k>>2]=0;c[g>>2]=(c[j>>2]|0)+116;while(1){if((c[k>>2]|0)>=10){e=8;break}if((c[(c[g>>2]|0)+12>>2]|0)==(c[h>>2]|0)){e=6;break}c[k>>2]=(c[k>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+20}if((e|0)==6){a[(c[g>>2]|0)+6>>0]=1;i=f;return}else if((e|0)==8){k=c[h>>2]|0;e=(c[j>>2]|0)+19|0;b=a[e>>0]|0;a[e>>0]=b+1<<24>>24;c[(c[j>>2]|0)+24+((b&255)<<2)>>2]=k;i=f;return}}function Yv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=Tv(c[f>>2]|0,c[e>>2]|0,0,0,0)|0;i=d;return a|0} + + + +function RD(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;A=i;i=i+128|0;w=A+108|0;H=A+104|0;G=A+100|0;x=A+96|0;v=A+92|0;z=A+88|0;P=A+84|0;y=A+80|0;q=A+76|0;t=A+72|0;u=A+68|0;B=A+64|0;o=A+60|0;D=A+56|0;s=A+52|0;p=A+20|0;n=A;l=A+4|0;O=A+8|0;I=A+12|0;J=A+16|0;K=A+24|0;L=A+28|0;M=A+32|0;F=A+36|0;E=A+40|0;C=A+44|0;m=A+112|0;r=A+48|0;c[H>>2]=f;c[G>>2]=g;c[x>>2]=h;c[v>>2]=j;c[z>>2]=k;c[P>>2]=c[(c[H>>2]|0)+492>>2];c[l>>2]=c[c[H>>2]>>2];if((b[(c[l>>2]|0)+60>>1]&1|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}c[u>>2]=c[(c[G>>2]|0)+32>>2];c[n>>2]=(c[u>>2]|0)+8+((c[x>>2]|0)*72|0);c[D>>2]=c[(c[n>>2]|0)+40>>2];c[q>>2]=c[(c[n>>2]|0)+20>>2];if((c[v>>2]|0)!=0){if((c[z>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((c[z>>2]|0)!=0){if((c[c[u>>2]>>2]|0)>1){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}c[B>>2]=c[(c[q>>2]|0)+32>>2];if((c[(c[q>>2]|0)+60>>2]|0)!=0){if((c[(c[G>>2]|0)+60>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((c[(c[q>>2]|0)+64>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}if((b[(c[G>>2]|0)+6>>1]&4096|0)!=0){if((c[(c[q>>2]|0)+60>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((c[c[B>>2]>>2]|0)==0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}if((b[(c[q>>2]|0)+6>>1]&1|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}do{if((c[(c[q>>2]|0)+60>>2]|0)!=0){if((c[c[u>>2]>>2]|0)<=1){if((c[v>>2]|0)==0){break}}c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}while(0);if((b[(c[G>>2]|0)+6>>1]&1|0)!=0){if((c[z>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((c[(c[G>>2]|0)+48>>2]|0)!=0){if((c[(c[q>>2]|0)+48>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((c[v>>2]|0)!=0){if((c[(c[q>>2]|0)+48>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((c[(c[q>>2]|0)+60>>2]|0)!=0){if((c[(c[G>>2]|0)+36>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((c[(c[q>>2]|0)+60>>2]|0)!=0){if((b[(c[G>>2]|0)+6>>1]&1|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((b[(c[q>>2]|0)+6>>1]&2048|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}if((b[(c[G>>2]|0)+6>>1]&2048|0)!=0){if((c[(c[q>>2]|0)+52>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((a[(c[n>>2]|0)+36>>0]&32|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}a:do{if((c[(c[q>>2]|0)+52>>2]|0)!=0){if((c[(c[q>>2]|0)+48>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}do{if((c[v>>2]|0)==0){if((b[(c[G>>2]|0)+6>>1]&1|0)!=0){break}if((c[c[u>>2]>>2]|0)!=1){break}c[t>>2]=c[q>>2];while(1){if((c[t>>2]|0)==0){break}if((b[(c[t>>2]|0)+6>>1]&5|0)!=0){N=61;break}if((c[(c[t>>2]|0)+52>>2]|0)!=0){if((d[(c[t>>2]|0)+4>>0]|0)!=116){N=61;break}}if((c[c[(c[t>>2]|0)+32>>2]>>2]|0)<1){N=61;break}if((c[c[c[q>>2]>>2]>>2]|0)!=(c[c[c[t>>2]>>2]>>2]|0)){N=61;break}c[t>>2]=c[(c[t>>2]|0)+52>>2]}if((N|0)==61){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}if((c[(c[G>>2]|0)+48>>2]|0)==0){break a}c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[c[(c[G>>2]|0)+48>>2]>>2]|0)){break a}if((e[(c[(c[(c[G>>2]|0)+48>>2]|0)+4>>2]|0)+((c[O>>2]|0)*20|0)+16>>1]|0)==0){break}c[O>>2]=(c[O>>2]|0)+1}c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}while(0);c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}while(0);c[(c[H>>2]|0)+492>>2]=c[(c[n>>2]|0)+8>>2];Lv(c[H>>2]|0,21,0,0,0)|0;c[(c[H>>2]|0)+492>>2]=c[P>>2];c[q>>2]=c[(c[q>>2]|0)+52>>2];while(1){if((c[q>>2]|0)==0){break}c[J>>2]=c[(c[G>>2]|0)+48>>2];c[K>>2]=c[(c[G>>2]|0)+60>>2];c[L>>2]=c[(c[G>>2]|0)+64>>2];c[M>>2]=c[(c[G>>2]|0)+52>>2];c[(c[G>>2]|0)+48>>2]=0;c[(c[G>>2]|0)+32>>2]=0;c[(c[G>>2]|0)+52>>2]=0;c[(c[G>>2]|0)+60>>2]=0;c[(c[G>>2]|0)+64>>2]=0;c[I>>2]=Bw(c[l>>2]|0,c[G>>2]|0,0)|0;c[(c[G>>2]|0)+64>>2]=c[L>>2];c[(c[G>>2]|0)+60>>2]=c[K>>2];c[(c[G>>2]|0)+48>>2]=c[J>>2];c[(c[G>>2]|0)+32>>2]=c[u>>2];a[(c[G>>2]|0)+4>>0]=116;f=c[M>>2]|0;if((c[I>>2]|0)==0){c[(c[G>>2]|0)+52>>2]=f}else{c[(c[I>>2]|0)+52>>2]=f;if((c[M>>2]|0)!=0){c[(c[M>>2]|0)+56>>2]=c[I>>2]}c[(c[I>>2]|0)+56>>2]=c[G>>2];c[(c[G>>2]|0)+52>>2]=c[I>>2]}if((a[(c[l>>2]|0)+64>>0]|0)!=0){N=77;break}c[q>>2]=c[(c[q>>2]|0)+52>>2]}if((N|0)==77){c[w>>2]=1;P=c[w>>2]|0;i=A;return P|0}P=c[(c[n>>2]|0)+20>>2]|0;c[t>>2]=P;c[q>>2]=P;cc(c[l>>2]|0,c[(c[n>>2]|0)+4>>2]|0);cc(c[l>>2]|0,c[(c[n>>2]|0)+8>>2]|0);cc(c[l>>2]|0,c[(c[n>>2]|0)+12>>2]|0);c[(c[n>>2]|0)+4>>2]=0;c[(c[n>>2]|0)+8>>2]=0;c[(c[n>>2]|0)+12>>2]=0;c[(c[n>>2]|0)+20>>2]=0;if((c[(c[n>>2]|0)+16>>2]|0)!=0){c[F>>2]=c[(c[n>>2]|0)+16>>2];if((e[(c[F>>2]|0)+40>>1]|0)==1){I=c[H>>2]|0;if((c[(c[H>>2]|0)+408>>2]|0)!=0){I=c[I+408>>2]|0}c[E>>2]=I;c[(c[F>>2]|0)+72>>2]=c[(c[E>>2]|0)+524>>2];c[(c[E>>2]|0)+524>>2]=c[F>>2]}else{P=(c[F>>2]|0)+40|0;b[P>>1]=(b[P>>1]|0)+ -1<<16>>16}c[(c[n>>2]|0)+16>>2]=0}c[y>>2]=c[G>>2];while(1){if((c[y>>2]|0)==0){break}a[m>>0]=0;c[B>>2]=c[(c[q>>2]|0)+32>>2];c[C>>2]=c[c[B>>2]>>2];c[u>>2]=c[(c[y>>2]|0)+32>>2];if((c[u>>2]|0)!=0){a[m>>0]=a[(c[n>>2]|0)+36>>0]|0}else{P=Vu(c[l>>2]|0,0,0,0)|0;c[(c[y>>2]|0)+32>>2]=P;c[u>>2]=P;if((c[u>>2]|0)==0){break}}if((c[C>>2]|0)>1){P=OD(c[l>>2]|0,c[u>>2]|0,(c[C>>2]|0)-1|0,(c[x>>2]|0)+1|0)|0;c[u>>2]=P;c[(c[y>>2]|0)+32>>2]=P;if((a[(c[l>>2]|0)+64>>0]|0)!=0){break}}c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[C>>2]|0)){break}hu(c[l>>2]|0,c[(c[u>>2]|0)+8+(((c[s>>2]|0)+(c[x>>2]|0)|0)*72|0)+48>>2]|0);G=(c[u>>2]|0)+8+(((c[s>>2]|0)+(c[x>>2]|0)|0)*72|0)+0|0;F=(c[B>>2]|0)+8+((c[s>>2]|0)*72|0)+0|0;E=G+72|0;do{c[G>>2]=c[F>>2];G=G+4|0;F=F+4|0}while((G|0)<(E|0));G=(c[B>>2]|0)+8+((c[s>>2]|0)*72|0)+0|0;E=G+72|0;do{c[G>>2]=0;G=G+4|0}while((G|0)<(E|0));c[s>>2]=(c[s>>2]|0)+1}a[(c[u>>2]|0)+8+((c[x>>2]|0)*72|0)+36>>0]=a[m>>0]|0;c[o>>2]=c[c[y>>2]>>2];c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[c[o>>2]>>2]|0)){break}if((c[(c[(c[o>>2]|0)+4>>2]|0)+((c[s>>2]|0)*20|0)+4>>2]|0)==0){c[r>>2]=pe(c[l>>2]|0,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[s>>2]|0)*20|0)+8>>2]|0)|0;gt(c[r>>2]|0)|0;c[(c[(c[o>>2]|0)+4>>2]|0)+((c[s>>2]|0)*20|0)+4>>2]=c[r>>2]}c[s>>2]=(c[s>>2]|0)+1}CE(c[l>>2]|0,c[c[y>>2]>>2]|0,c[D>>2]|0,c[c[q>>2]>>2]|0);if((c[v>>2]|0)!=0){CE(c[l>>2]|0,c[(c[y>>2]|0)+40>>2]|0,c[D>>2]|0,c[c[q>>2]>>2]|0);P=DE(c[l>>2]|0,c[(c[y>>2]|0)+44>>2]|0,c[D>>2]|0,c[c[q>>2]>>2]|0)|0;c[(c[y>>2]|0)+44>>2]=P}do{if((c[(c[q>>2]|0)+48>>2]|0)!=0){c[(c[y>>2]|0)+48>>2]=c[(c[q>>2]|0)+48>>2];c[(c[q>>2]|0)+48>>2]=0}else{if((c[(c[y>>2]|0)+48>>2]|0)==0){break}CE(c[l>>2]|0,c[(c[y>>2]|0)+48>>2]|0,c[D>>2]|0,c[c[q>>2]>>2]|0)}}while(0);if((c[(c[q>>2]|0)+36>>2]|0)!=0){c[p>>2]=hx(c[l>>2]|0,c[(c[q>>2]|0)+36>>2]|0,0)|0}else{c[p>>2]=0}if((c[z>>2]|0)!=0){c[(c[y>>2]|0)+44>>2]=c[(c[y>>2]|0)+36>>2];c[(c[y>>2]|0)+36>>2]=c[p>>2];g=DE(c[l>>2]|0,c[(c[y>>2]|0)+44>>2]|0,c[D>>2]|0,c[c[q>>2]>>2]|0)|0;c[(c[y>>2]|0)+44>>2]=g;g=c[l>>2]|0;P=c[(c[y>>2]|0)+44>>2]|0;P=Ux(g,P,hx(c[l>>2]|0,c[(c[q>>2]|0)+44>>2]|0,0)|0)|0;c[(c[y>>2]|0)+44>>2]=P;P=px(c[l>>2]|0,c[(c[q>>2]|0)+40>>2]|0,0)|0;c[(c[y>>2]|0)+40>>2]=P}else{P=DE(c[l>>2]|0,c[(c[y>>2]|0)+36>>2]|0,c[D>>2]|0,c[c[q>>2]>>2]|0)|0;c[(c[y>>2]|0)+36>>2]=P;P=Ux(c[l>>2]|0,c[(c[y>>2]|0)+36>>2]|0,c[p>>2]|0)|0;c[(c[y>>2]|0)+36>>2]=P}P=(c[y>>2]|0)+6|0;b[P>>1]=e[P>>1]|b[(c[q>>2]|0)+6>>1]&1;if((c[(c[q>>2]|0)+60>>2]|0)!=0){c[(c[y>>2]|0)+60>>2]=c[(c[q>>2]|0)+60>>2];c[(c[q>>2]|0)+60>>2]=0}c[y>>2]=c[(c[y>>2]|0)+52>>2];c[q>>2]=c[(c[q>>2]|0)+52>>2]}du(c[l>>2]|0,c[t>>2]|0);c[w>>2]=1;P=c[w>>2]|0;i=A;return P|0}function SD(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;a[(c[e>>2]|0)+19>>0]=0;c[(c[e>>2]|0)+56>>2]=0;i=d;return}function TD(f,g,h){f=f|0;g=g|0;h=h|0;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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;n=i;i=i+224|0;G=n;m=n+120|0;s=n+124|0;o=n+128|0;p=n+132|0;l=n+136|0;L=n+140|0;B=n+144|0;q=n+168|0;k=n+188|0;j=n+192|0;z=n+196|0;A=n+200|0;P=n+204|0;Q=n+208|0;F=n+212|0;M=n+216|0;K=n+116|0;I=n+112|0;J=n+108|0;O=n+104|0;N=n+148|0;E=n+40|0;C=n+32|0;r=n+28|0;H=n+24|0;T=n+20|0;W=n+36|0;S=n+8|0;R=n+4|0;V=n+12|0;Y=n+16|0;Z=n+96|0;_=n+44|0;$=n+48|0;U=n+68|0;X=n+72|0;u=n+76|0;t=n+80|0;v=n+84|0;x=n+88|0;y=n+92|0;w=n+100|0;c[s>>2]=f;c[o>>2]=g;c[p>>2]=h;c[l>>2]=0;c[k>>2]=0;c[z>>2]=0;c[A>>2]=0;c[j>>2]=c[c[s>>2]>>2];c[L>>2]=c[(c[o>>2]|0)+52>>2];f=c[p>>2]|0;c[q+0>>2]=c[f+0>>2];c[q+4>>2]=c[f+4>>2];c[q+8>>2]=c[f+8>>2];c[q+12>>2]=c[f+12>>2];c[q+16>>2]=c[f+16>>2];a:do{if((c[(c[L>>2]|0)+48>>2]|0)!=0){f=c[s>>2]|0;c[G>>2]=vE(d[(c[o>>2]|0)+4>>0]|0)|0;bf(f,31480,G);c[l>>2]=1}else{h=c[s>>2]|0;if((c[(c[L>>2]|0)+60>>2]|0)!=0){c[G>>2]=vE(d[(c[o>>2]|0)+4>>0]|0)|0;bf(h,31528,G);c[l>>2]=1;break}c[B>>2]=Ov(h)|0;if((d[q>>0]|0|0)==12){Qv(c[B>>2]|0,55,c[q+4>>2]|0,c[c[c[o>>2]>>2]>>2]|0)|0;gf(c[B>>2]|0,8);a[q>>0]=14}h=e[(c[o>>2]|0)+6>>1]|0;if((c[c[c[o>>2]>>2]>>2]|0)!=(c[c[c[L>>2]>>2]>>2]|0)){r=c[s>>2]|0;if((h&128|0)!=0){bf(r,31576,G)}else{c[G>>2]=vE(d[(c[o>>2]|0)+4>>0]|0)|0;bf(r,31624,G)}c[l>>2]=1;break}do{if((h&2048|0)!=0){wE(c[s>>2]|0,c[o>>2]|0,q)}else{if((c[(c[o>>2]|0)+48>>2]|0)!=0){c[m>>2]=xE(c[s>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;f=c[m>>2]|0;i=n;return f|0}G=d[(c[o>>2]|0)+4>>0]|0;if((G|0)==115|(G|0)==117){a[M>>0]=0;c[K>>2]=1;if((d[q>>0]|0|0)==(c[K>>2]|0)){c[F>>2]=c[q+4>>2]}else{g=(c[s>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[F>>2]=f;c[O>>2]=Qv(c[B>>2]|0,55,c[F>>2]|0,0)|0;c[(c[o>>2]|0)+16>>2]=c[O>>2];f=(Lx(c[o>>2]|0)|0)+6|0;b[f>>1]=e[f>>1]|0|8}Hz(N,c[K>>2]|0,c[F>>2]|0);c[z>>2]=c[(c[s>>2]|0)+468>>2];c[l>>2]=Mu(c[s>>2]|0,c[L>>2]|0,N)|0;if((c[l>>2]|0)!=0){break a}if((d[(c[o>>2]|0)+4>>0]|0|0)==117){a[M>>0]=2}else{a[M>>0]=1}c[(c[o>>2]|0)+52>>2]=0;c[I>>2]=c[(c[o>>2]|0)+60>>2];c[(c[o>>2]|0)+60>>2]=0;c[J>>2]=c[(c[o>>2]|0)+64>>2];c[(c[o>>2]|0)+64>>2]=0;a[N>>0]=a[M>>0]|0;c[A>>2]=c[(c[s>>2]|0)+468>>2];c[l>>2]=Mu(c[s>>2]|0,c[o>>2]|0,N)|0;cu(c[j>>2]|0,c[(c[o>>2]|0)+48>>2]|0);c[k>>2]=c[(c[o>>2]|0)+52>>2];c[(c[o>>2]|0)+52>>2]=c[L>>2];c[(c[o>>2]|0)+48>>2]=0;if((d[(c[o>>2]|0)+4>>0]|0|0)==115){g=(c[L>>2]|0)+24|0;f=(c[o>>2]|0)+24|0;h=f;g=dL(c[h>>2]|0,c[h+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;c[f>>2]=g;c[f+4>>2]=D}gu(c[j>>2]|0,c[(c[o>>2]|0)+60>>2]|0);c[(c[o>>2]|0)+60>>2]=c[I>>2];c[(c[o>>2]|0)+64>>2]=c[J>>2];c[(c[o>>2]|0)+8>>2]=0;c[(c[o>>2]|0)+12>>2]=0;if((d[q>>0]|0|0)==(c[K>>2]|0)){break}if((d[q>>0]|0|0)==9){c[H>>2]=c[o>>2];while(1){if((c[(c[H>>2]|0)+52>>2]|0)==0){break}c[H>>2]=c[(c[H>>2]|0)+52>>2]}mE(c[s>>2]|0,0,c[c[H>>2]>>2]|0)}c[C>>2]=cz(c[B>>2]|0)|0;c[E>>2]=cz(c[B>>2]|0)|0;VD(c[s>>2]|0,c[o>>2]|0,c[C>>2]|0);Qv(c[B>>2]|0,105,c[F>>2]|0,c[C>>2]|0)|0;c[r>>2]=sy(c[B>>2]|0)|0;ZD(c[s>>2]|0,c[o>>2]|0,c[c[o>>2]>>2]|0,c[F>>2]|0,0,0,q,c[E>>2]|0,c[C>>2]|0);$y(c[B>>2]|0,c[E>>2]|0);Qv(c[B>>2]|0,9,c[F>>2]|0,c[r>>2]|0)|0;$y(c[B>>2]|0,c[C>>2]|0);Qv(c[B>>2]|0,58,c[F>>2]|0,0)|0;break}else if((G|0)==116){c[P>>2]=0;c[(c[L>>2]|0)+8>>2]=c[(c[o>>2]|0)+8>>2];c[(c[L>>2]|0)+12>>2]=c[(c[o>>2]|0)+12>>2];c[(c[L>>2]|0)+60>>2]=c[(c[o>>2]|0)+60>>2];c[(c[L>>2]|0)+64>>2]=c[(c[o>>2]|0)+64>>2];c[z>>2]=c[(c[s>>2]|0)+468>>2];c[l>>2]=Mu(c[s>>2]|0,c[L>>2]|0,q)|0;c[(c[o>>2]|0)+60>>2]=0;c[(c[o>>2]|0)+64>>2]=0;if((c[l>>2]|0)!=0){break a}c[(c[o>>2]|0)+52>>2]=0;c[(c[o>>2]|0)+8>>2]=c[(c[L>>2]|0)+8>>2];c[(c[o>>2]|0)+12>>2]=c[(c[L>>2]|0)+12>>2];if((c[(c[o>>2]|0)+8>>2]|0)!=0){c[P>>2]=oy(c[B>>2]|0,136,c[(c[o>>2]|0)+8>>2]|0)|0}c[A>>2]=c[(c[s>>2]|0)+468>>2];c[l>>2]=Mu(c[s>>2]|0,c[o>>2]|0,q)|0;c[k>>2]=c[(c[o>>2]|0)+52>>2];c[(c[o>>2]|0)+52>>2]=c[L>>2];g=(c[L>>2]|0)+24|0;f=(c[o>>2]|0)+24|0;h=f;g=dL(c[h>>2]|0,c[h+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;c[f>>2]=g;c[f+4>>2]=D;if((c[(c[L>>2]|0)+60>>2]|0)!=0){f=(ex(c[(c[L>>2]|0)+60>>2]|0,Q)|0)!=0;if(f&(c[Q>>2]|0)>0){g=(c[o>>2]|0)+24|0;$=c[g+4>>2]|0;f=c[Q>>2]|0;h=((f|0)<0)<<31>>31;if($>>>0>h>>>0|(($|0)==(h|0)?(c[g>>2]|0)>>>0>f>>>0:0)){g=c[Q>>2]|0;f=(c[o>>2]|0)+24|0;c[f>>2]=g;c[f+4>>2]=((g|0)<0)<<31>>31}}}if((c[P>>2]|0)==0){break}jw(c[B>>2]|0,c[P>>2]|0);break}else{f=(c[s>>2]|0)+68|0;g=c[f>>2]|0;c[f>>2]=g+1;c[T>>2]=g;g=(c[s>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[W>>2]=f;c[_>>2]=Qv(c[B>>2]|0,55,c[T>>2]|0,0)|0;c[(c[o>>2]|0)+16>>2]=c[_>>2];f=(Lx(c[o>>2]|0)|0)+6|0;b[f>>1]=e[f>>1]|0|8;Hz($,1,c[T>>2]|0);c[z>>2]=c[(c[s>>2]|0)+468>>2];c[l>>2]=Mu(c[s>>2]|0,c[L>>2]|0,$)|0;if((c[l>>2]|0)!=0){break a}c[_>>2]=Qv(c[B>>2]|0,55,c[W>>2]|0,0)|0;c[(c[o>>2]|0)+20>>2]=c[_>>2];c[(c[o>>2]|0)+52>>2]=0;c[Y>>2]=c[(c[o>>2]|0)+60>>2];c[(c[o>>2]|0)+60>>2]=0;c[Z>>2]=c[(c[o>>2]|0)+64>>2];c[(c[o>>2]|0)+64>>2]=0;c[$+4>>2]=c[W>>2];c[A>>2]=c[(c[s>>2]|0)+468>>2];c[l>>2]=Mu(c[s>>2]|0,c[o>>2]|0,$)|0;c[k>>2]=c[(c[o>>2]|0)+52>>2];c[(c[o>>2]|0)+52>>2]=c[L>>2];g=(c[o>>2]|0)+24|0;$=c[g+4>>2]|0;f=(c[L>>2]|0)+24|0;h=c[f+4>>2]|0;if($>>>0>h>>>0|(($|0)==(h|0)?(c[g>>2]|0)>>>0>(c[f>>2]|0)>>>0:0)){h=(c[L>>2]|0)+24|0;g=c[h+4>>2]|0;f=(c[o>>2]|0)+24|0;c[f>>2]=c[h>>2];c[f+4>>2]=g}gu(c[j>>2]|0,c[(c[o>>2]|0)+60>>2]|0);c[(c[o>>2]|0)+60>>2]=c[Y>>2];c[(c[o>>2]|0)+64>>2]=c[Z>>2];if((d[q>>0]|0|0)==9){c[X>>2]=c[o>>2];while(1){if((c[(c[X>>2]|0)+52>>2]|0)==0){break}c[X>>2]=c[(c[X>>2]|0)+52>>2]}mE(c[s>>2]|0,0,c[c[X>>2]>>2]|0)}c[R>>2]=cz(c[B>>2]|0)|0;c[S>>2]=cz(c[B>>2]|0)|0;VD(c[s>>2]|0,c[o>>2]|0,c[R>>2]|0);Qv(c[B>>2]|0,105,c[T>>2]|0,c[R>>2]|0)|0;c[U>>2]=Wv(c[s>>2]|0)|0;c[V>>2]=Qv(c[B>>2]|0,98,c[T>>2]|0,c[U>>2]|0)|0;ff(c[B>>2]|0,65,c[W>>2]|0,c[S>>2]|0,c[U>>2]|0,0)|0;Xv(c[s>>2]|0,c[U>>2]|0);ZD(c[s>>2]|0,c[o>>2]|0,c[c[o>>2]>>2]|0,c[T>>2]|0,0,0,q,c[S>>2]|0,c[R>>2]|0);$y(c[B>>2]|0,c[S>>2]|0);Qv(c[B>>2]|0,9,c[T>>2]|0,c[V>>2]|0)|0;$y(c[B>>2]|0,c[R>>2]|0);Qv(c[B>>2]|0,58,c[W>>2]|0,0)|0;Qv(c[B>>2]|0,58,c[T>>2]|0,0)|0;break}}}while(0);yE(c[s>>2]|0,d[(c[o>>2]|0)+4>>0]|0,c[z>>2]|0,c[A>>2]|0,(d[(c[o>>2]|0)+4>>0]|0|0)!=116&1);if((b[(c[o>>2]|0)+6>>1]&8|0)!=0){c[y>>2]=c[c[c[o>>2]>>2]>>2];c[t>>2]=By(c[j>>2]|0,c[y>>2]|0,1)|0;if((c[t>>2]|0)==0){c[l>>2]=7;break}c[u>>2]=0;c[x>>2]=(c[t>>2]|0)+20;while(1){if((c[u>>2]|0)>=(c[y>>2]|0)){break}f=zE(c[s>>2]|0,c[o>>2]|0,c[u>>2]|0)|0;c[c[x>>2]>>2]=f;if(0==(c[c[x>>2]>>2]|0)){c[c[x>>2]>>2]=c[(c[j>>2]|0)+8>>2]}c[u>>2]=(c[u>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+4}c[v>>2]=c[o>>2];while(1){if((c[v>>2]|0)==0){break}c[u>>2]=0;while(1){if((c[u>>2]|0)>=2){break}c[w>>2]=c[(c[v>>2]|0)+16+(c[u>>2]<<2)>>2];if((c[w>>2]|0)<0){break}lf(c[B>>2]|0,c[w>>2]|0,c[y>>2]|0);g=c[B>>2]|0;f=c[w>>2]|0;nf(g,f,Cy(c[t>>2]|0)|0,-6);c[(c[v>>2]|0)+16+(c[u>>2]<<2)>>2]=-1;c[u>>2]=(c[u>>2]|0)+1}c[v>>2]=c[(c[v>>2]|0)+52>>2]}Ch(c[t>>2]|0)}}}while(0);c[(c[p>>2]|0)+8>>2]=c[q+8>>2];c[(c[p>>2]|0)+12>>2]=c[q+12>>2];du(c[j>>2]|0,c[k>>2]|0);c[m>>2]=c[l>>2];f=c[m>>2]|0;i=n;return f|0}function UD(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;l=n+36|0;q=n+32|0;p=n+28|0;r=n+24|0;o=n+20|0;h=n+16|0;m=n+8|0;j=n+4|0;g=n;k=n+12|0;c[l>>2]=b;c[q>>2]=d;c[p>>2]=e;c[r>>2]=f;c[j>>2]=c[c[l>>2]>>2];c[o>>2]=c[c[q>>2]>>2];c[h>>2]=By(c[j>>2]|0,(c[o>>2]|0)+(c[r>>2]|0)-(c[p>>2]|0)|0,1)|0;if((c[h>>2]|0)==0){r=c[h>>2]|0;i=n;return r|0}c[g>>2]=c[p>>2];c[m>>2]=(c[(c[q>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0);while(1){if((c[g>>2]|0)>=(c[o>>2]|0)){break}c[k>>2]=Jw(c[l>>2]|0,c[c[m>>2]>>2]|0)|0;if((c[k>>2]|0)==0){c[k>>2]=c[(c[j>>2]|0)+8>>2]}c[(c[h>>2]|0)+20+((c[g>>2]|0)-(c[p>>2]|0)<<2)>>2]=c[k>>2];a[(c[(c[h>>2]|0)+16>>2]|0)+((c[g>>2]|0)-(c[p>>2]|0))>>0]=a[(c[m>>2]|0)+12>>0]|0;c[g>>2]=(c[g>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+20}r=c[h>>2]|0;i=n;return r|0}function VD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;l=k+28|0;f=k;h=k+4|0;g=k+8|0;e=k+12|0;m=k+16|0;n=k+20|0;j=k+24|0;c[l>>2]=a;c[f>>2]=b;c[h>>2]=d;c[g>>2]=0;c[e>>2]=0;if((c[(c[f>>2]|0)+8>>2]|0)!=0){i=k;return}IA(c[l>>2]|0);if((c[(c[f>>2]|0)+60>>2]|0)==0){i=k;return}b=(c[l>>2]|0)+72|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[e>>2]=a;c[(c[f>>2]|0)+8>>2]=a;c[g>>2]=Ov(c[l>>2]|0)|0;do{if((ex(c[(c[f>>2]|0)+60>>2]|0,j)|0)!=0){Qv(c[g>>2]|0,25,c[j>>2]|0,c[e>>2]|0)|0;if((c[j>>2]|0)==0){Qv(c[g>>2]|0,16,0,c[h>>2]|0)|0;break}if((c[j>>2]|0)>=0){b=(c[f>>2]|0)+24|0;d=c[b+4>>2]|0;a=c[j>>2]|0;h=((a|0)<0)<<31>>31;if(d>>>0>h>>>0|((d|0)==(h|0)?(c[b>>2]|0)>>>0>a>>>0:0)){b=c[j>>2]|0;a=(c[f>>2]|0)+24|0;c[a>>2]=b;c[a+4>>2]=((b|0)<0)<<31>>31}}}else{vz(c[l>>2]|0,c[(c[f>>2]|0)+60>>2]|0,c[e>>2]|0);oy(c[g>>2]|0,38,c[e>>2]|0)|0;Qv(c[g>>2]|0,136,c[e>>2]|0,c[h>>2]|0)|0}}while(0);if((c[(c[f>>2]|0)+64>>2]|0)==0){i=k;return}b=(c[l>>2]|0)+72|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[m>>2]=a;c[(c[f>>2]|0)+12>>2]=a;a=(c[l>>2]|0)+72|0;c[a>>2]=(c[a>>2]|0)+1;vz(c[l>>2]|0,c[(c[f>>2]|0)+64>>2]|0,c[m>>2]|0);oy(c[g>>2]|0,38,c[m>>2]|0)|0;c[n>>2]=oy(c[g>>2]|0,134,c[m>>2]|0)|0;Qv(c[g>>2]|0,25,0,c[m>>2]|0)|0;jw(c[g>>2]|0,c[n>>2]|0);Tv(c[g>>2]|0,89,c[e>>2]|0,c[m>>2]|0,(c[m>>2]|0)+1|0)|0;c[n>>2]=oy(c[g>>2]|0,134,c[e>>2]|0)|0;Qv(c[g>>2]|0,25,-1,(c[m>>2]|0)+1|0)|0;jw(c[g>>2]|0,c[n>>2]|0);i=k;return}function WD(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;a=DA(b[(c[e>>2]|0)+32>>1]|0)|0;i=d;return a|0}function XD(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+40>>0]|0|0}function YD(b){b=b|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=b;i=e;return a[(c[d>>2]|0)+36>>0]|0}function ZD(b,f,g,h,j,k,l,m,n){b=b|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;p=i;i=i+128|0;v=p+124|0;r=p+120|0;O=p+116|0;U=p+112|0;s=p+108|0;R=p+104|0;w=p+100|0;I=p+96|0;o=p+92|0;q=p+88|0;H=p+84|0;T=p+80|0;t=p+76|0;B=p+72|0;u=p+68|0;z=p+64|0;S=p+60|0;J=p+24|0;N=p;L=p+4|0;P=p+8|0;A=p+12|0;M=p+16|0;y=p+20|0;E=p+28|0;Q=p+32|0;x=p+36|0;F=p+40|0;G=p+44|0;K=p+48|0;C=p+52|0;D=p+56|0;c[v>>2]=b;c[r>>2]=f;c[O>>2]=g;c[U>>2]=h;c[s>>2]=j;c[R>>2]=k;c[w>>2]=l;c[I>>2]=m;c[o>>2]=n;c[q>>2]=c[(c[v>>2]|0)+8>>2];c[B>>2]=d[c[w>>2]>>0]|0;c[u>>2]=c[(c[w>>2]|0)+4>>2];if((c[R>>2]|0)!=0){n=d[(c[R>>2]|0)+1>>0]|0}else{n=0}c[T>>2]=n;if((c[s>>2]|0)!=0){if((c[c[s>>2]>>2]|0)==0){c[s>>2]=0}}if((c[s>>2]|0)==0){if((c[T>>2]|0)==0){oE(c[q>>2]|0,c[(c[r>>2]|0)+12>>2]|0,c[I>>2]|0)}}c[z>>2]=c[c[O>>2]>>2];if((c[(c[w>>2]|0)+8>>2]|0)==0){c[(c[w>>2]|0)+8>>2]=(c[(c[v>>2]|0)+72>>2]|0)+1;b=(c[v>>2]|0)+72|0;c[b>>2]=(c[b>>2]|0)+(c[z>>2]|0)}else{if(((c[(c[w>>2]|0)+8>>2]|0)+(c[z>>2]|0)|0)>(c[(c[v>>2]|0)+72>>2]|0)){b=(c[v>>2]|0)+72|0;c[b>>2]=(c[b>>2]|0)+(c[z>>2]|0)}}c[(c[w>>2]|0)+12>>2]=c[z>>2];c[t>>2]=c[(c[w>>2]|0)+8>>2];a:do{if((c[U>>2]|0)>=0){c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[z>>2]|0)){break a}Tv(c[q>>2]|0,46,c[U>>2]|0,c[H>>2]|0,(c[t>>2]|0)+(c[H>>2]|0)|0)|0;c[H>>2]=(c[H>>2]|0)+1}}else{if((c[B>>2]|0)!=3){if((c[B>>2]|0)==9){U=1}else{U=(c[B>>2]|0)==13}Cz(c[v>>2]|0,c[O>>2]|0,c[t>>2]|0,(U?1:0)&255)|0}}}while(0);if((c[T>>2]|0)!=0){T=d[(c[R>>2]|0)+1>>0]|0;if((T|0)==2){c[N>>2]=(c[(c[v>>2]|0)+72>>2]|0)+1;b=(c[v>>2]|0)+72|0;c[b>>2]=(c[b>>2]|0)+(c[z>>2]|0);of(c[q>>2]|0,c[(c[R>>2]|0)+8>>2]|0);c[S>>2]=Kz(c[q>>2]|0,c[(c[R>>2]|0)+8>>2]|0)|0;a[c[S>>2]>>0]=28;c[(c[S>>2]|0)+4>>2]=1;c[(c[S>>2]|0)+8>>2]=c[N>>2];b=sy(c[q>>2]|0)|0;c[J>>2]=b+(c[z>>2]|0);c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[z>>2]|0)){break}c[L>>2]=Jw(c[v>>2]|0,c[(c[(c[O>>2]|0)+4>>2]|0)+((c[H>>2]|0)*20|0)>>2]|0)|0;S=c[q>>2]|0;R=(c[t>>2]|0)+(c[H>>2]|0)|0;if((c[H>>2]|0)<((c[z>>2]|0)-1|0)){Tv(S,78,R,c[J>>2]|0,(c[N>>2]|0)+(c[H>>2]|0)|0)|0}else{Tv(S,79,R,c[I>>2]|0,(c[N>>2]|0)+(c[H>>2]|0)|0)|0}nf(c[q>>2]|0,-1,c[L>>2]|0,-4);gf(c[q>>2]|0,-128);c[H>>2]=(c[H>>2]|0)+1}Tv(c[q>>2]|0,33,c[t>>2]|0,c[N>>2]|0,(c[z>>2]|0)-1|0)|0}else if((T|0)==1){of(c[q>>2]|0,c[(c[R>>2]|0)+8>>2]|0)}else{pE(c[v>>2]|0,c[(c[R>>2]|0)+4>>2]|0,c[I>>2]|0,c[z>>2]|0,c[t>>2]|0)}if((c[s>>2]|0)==0){oE(c[q>>2]|0,c[(c[r>>2]|0)+12>>2]|0,c[I>>2]|0)}}b:do{switch(c[B>>2]|0){case 1:{c[P>>2]=Wv(c[v>>2]|0)|0;Tv(c[q>>2]|0,48,c[t>>2]|0,c[z>>2]|0,c[P>>2]|0)|0;Qv(c[q>>2]|0,107,c[u>>2]|0,c[P>>2]|0)|0;Xv(c[v>>2]|0,c[P>>2]|0);break};case 2:{Tv(c[q>>2]|0,108,c[u>>2]|0,c[t>>2]|0,c[z>>2]|0)|0;break};case 3:{Qv(c[q>>2]|0,25,1,c[u>>2]|0)|0;break};case 11:{x=Rz(c[c[(c[O>>2]|0)+4>>2]>>2]|0,a[(c[w>>2]|0)+1>>0]|0)|0;a[(c[w>>2]|0)+1>>0]=x;x=c[v>>2]|0;if((c[s>>2]|0)!=0){uE(x,c[s>>2]|0,c[r>>2]|0,c[t>>2]|0);break b}else{c[E>>2]=Wv(x)|0;Sv(c[q>>2]|0,48,c[t>>2]|0,1,c[E>>2]|0,(c[w>>2]|0)+1|0,1)|0;Az(c[v>>2]|0,c[t>>2]|0,1);Qv(c[q>>2]|0,107,c[u>>2]|0,c[E>>2]|0)|0;Xv(c[v>>2]|0,c[E>>2]|0);break b}};case 12:case 14:case 6:case 5:{c[A>>2]=Wv(c[v>>2]|0)|0;Tv(c[q>>2]|0,48,c[t>>2]|0,c[z>>2]|0,c[A>>2]|0)|0;if((c[B>>2]|0)==6){c[M>>2]=(sy(c[q>>2]|0)|0)+4;ff(c[q>>2]|0,66,(c[u>>2]|0)+1|0,c[M>>2]|0,c[A>>2]|0,0)|0;Qv(c[q>>2]|0,107,(c[u>>2]|0)+1|0,c[A>>2]|0)|0}t=c[v>>2]|0;if((c[s>>2]|0)!=0){uE(t,c[s>>2]|0,c[r>>2]|0,c[A>>2]|0)}else{c[y>>2]=Wv(t)|0;Qv(c[q>>2]|0,69,c[u>>2]|0,c[y>>2]|0)|0;Tv(c[q>>2]|0,70,c[u>>2]|0,c[A>>2]|0,c[y>>2]|0)|0;gf(c[q>>2]|0,8);Xv(c[v>>2]|0,c[y>>2]|0)}Xv(c[v>>2]|0,c[A>>2]|0);break};case 10:{v=c[v>>2]|0;if((c[s>>2]|0)!=0){uE(v,c[s>>2]|0,c[r>>2]|0,c[t>>2]|0);break b}else{eE(v,c[t>>2]|0,c[u>>2]|0,1);break b}};case 9:case 13:{if((c[s>>2]|0)!=0){c[Q>>2]=Wv(c[v>>2]|0)|0;Tv(c[q>>2]|0,48,c[t>>2]|0,c[z>>2]|0,c[Q>>2]|0)|0;uE(c[v>>2]|0,c[s>>2]|0,c[r>>2]|0,c[Q>>2]|0);Xv(c[v>>2]|0,c[Q>>2]|0);break b}u=c[q>>2]|0;if((c[B>>2]|0)==13){oy(u,22,c[(c[w>>2]|0)+4>>2]|0)|0;break b}else{Qv(u,35,c[t>>2]|0,c[z>>2]|0)|0;Az(c[v>>2]|0,c[t>>2]|0,c[z>>2]|0);break b}};case 7:case 8:{c[C>>2]=0;c[D>>2]=c[(c[w>>2]|0)+16>>2];c[x>>2]=c[c[D>>2]>>2];c[F>>2]=Wv(c[v>>2]|0)|0;c[G>>2]=fz(c[v>>2]|0,(c[x>>2]|0)+2|0)|0;c[K>>2]=(c[G>>2]|0)+(c[x>>2]|0)+1;if((c[B>>2]|0)==8){c[C>>2]=ff(c[q>>2]|0,66,(c[u>>2]|0)+1|0,0,c[t>>2]|0,c[z>>2]|0)|0}Tv(c[q>>2]|0,48,c[t>>2]|0,c[z>>2]|0,c[K>>2]|0)|0;if((c[B>>2]|0)==8){Qv(c[q>>2]|0,107,(c[u>>2]|0)+1|0,c[K>>2]|0)|0;gf(c[q>>2]|0,16)}c[H>>2]=0;while(1){w=c[q>>2]|0;if((c[H>>2]|0)>=(c[x>>2]|0)){break}Qv(w,34,(c[t>>2]|0)+(e[(c[(c[D>>2]|0)+4>>2]|0)+((c[H>>2]|0)*20|0)+16>>1]|0)-1|0,(c[G>>2]|0)+(c[H>>2]|0)|0)|0;c[H>>2]=(c[H>>2]|0)+1}Qv(w,68,c[u>>2]|0,(c[G>>2]|0)+(c[x>>2]|0)|0)|0;Tv(c[q>>2]|0,48,c[G>>2]|0,(c[x>>2]|0)+2|0,c[F>>2]|0)|0;Qv(c[q>>2]|0,107,c[u>>2]|0,c[F>>2]|0)|0;if((c[C>>2]|0)!=0){jw(c[q>>2]|0,c[C>>2]|0)}Xv(c[v>>2]|0,c[F>>2]|0);iz(c[v>>2]|0,c[G>>2]|0,(c[x>>2]|0)+2|0);break};default:{}}}while(0);if((c[s>>2]|0)!=0){i=p;return}if((c[(c[r>>2]|0)+8>>2]|0)==0){i=p;return}Tv(c[q>>2]|0,136,c[(c[r>>2]|0)+8>>2]|0,c[o>>2]|0,-1)|0;i=p;return}function _D(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+48>>2]|0}function $D(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+52>>2]|0}function aE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d+12|0;f=d;h=d+4|0;e=d+8|0;c[g>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}c[h>>2]=c[(c[f>>2]|0)+4>>2];c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[c[f>>2]>>2]|0)){break}bE(c[g>>2]|0,c[c[h>>2]>>2]|0);c[e>>2]=(c[e>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+20}i=d;return}function bE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+48|0;g=d+32|0;e=d;f=d+8|0;c[g>>2]=a;c[e>>2]=b;c[f+0>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f>>2]=66;c[f+4>>2]=67;c[f+20>>2]=c[g>>2];_w(f,c[e>>2]|0)|0;i=d;return}function cE(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;j=e;f=e+16|0;h=e+4|0;g=e+8|0;k=e+12|0;c[f>>2]=a;c[h>>2]=b;if((d[(c[f>>2]|0)+450>>0]|0|0)!=2){i=e;return}c[g>>2]=c[(c[f>>2]|0)+8>>2];a=c[c[f>>2]>>2]|0;c[j>>2]=c[h>>2];c[k>>2]=cf(a,31456,j)|0;Sv(c[g>>2]|0,157,c[(c[f>>2]|0)+464>>2]|0,0,0,c[k>>2]|0,-1)|0;i=e;return}function dE(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+37>>0]|0|0}function eE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;n=k+24|0;j=k;h=k+4|0;l=k+8|0;m=k+12|0;g=k+16|0;f=k+20|0;c[n>>2]=a;c[j>>2]=b;c[h>>2]=d;c[l>>2]=e;Tv(c[(c[n>>2]|0)+8>>2]|0,32,c[j>>2]|0,c[h>>2]|0,c[l>>2]|0)|0;c[m>>2]=0;c[g>>2]=(c[n>>2]|0)+116;while(1){if((c[m>>2]|0)>=10){break}c[f>>2]=c[(c[g>>2]|0)+12>>2];if((c[f>>2]|0)>=(c[j>>2]|0)){if((c[f>>2]|0)<((c[j>>2]|0)+(c[l>>2]|0)|0)){n=(c[g>>2]|0)+12|0;c[n>>2]=(c[n>>2]|0)+((c[h>>2]|0)-(c[j>>2]|0))}}c[m>>2]=(c[m>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+20}i=k;return}function fE(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;o=i;i=i+64|0;h=o+56|0;g=o+52|0;m=o+48|0;k=o+44|0;n=o+40|0;j=o+36|0;p=o+32|0;l=o+28|0;q=o+20|0;r=o+16|0;f=o+12|0;v=o+8|0;s=o+4|0;u=o;t=o+24|0;c[h>>2]=d;c[g>>2]=e;c[m>>2]=c[(c[h>>2]|0)+8>>2];c[n>>2]=0;c[j>>2]=0;a[c[g>>2]>>0]=1;c[k>>2]=0;c[p>>2]=c[(c[g>>2]|0)+40>>2];while(1){if((c[k>>2]|0)>=(c[(c[g>>2]|0)+44>>2]|0)){break}c[r>>2]=0;c[v>>2]=c[(c[c[p>>2]>>2]|0)+20>>2];if((c[v>>2]|0)!=0){c[q>>2]=c[c[v>>2]>>2];c[f>>2]=fz(c[h>>2]|0,c[q>>2]|0)|0;Cz(c[h>>2]|0,c[v>>2]|0,c[f>>2]|0,1)|0}else{c[q>>2]=0;c[f>>2]=0}if((c[(c[p>>2]|0)+12>>2]|0)>=0){c[r>>2]=cz(c[m>>2]|0)|0;pE(c[h>>2]|0,c[(c[p>>2]|0)+12>>2]|0,c[r>>2]|0,1,c[f>>2]|0)}if((b[(c[(c[p>>2]|0)+4>>2]|0)+2>>1]&32|0)!=0){c[s>>2]=0;c[t>>2]=0;c[u>>2]=c[(c[v>>2]|0)+4>>2];while(1){if((c[s>>2]|0)!=0){break}if((c[t>>2]|0)>=(c[q>>2]|0)){break}c[s>>2]=Jw(c[h>>2]|0,c[c[u>>2]>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+20}if((c[s>>2]|0)==0){c[s>>2]=c[(c[c[h>>2]>>2]|0)+8>>2]}if((c[n>>2]|0)==0){if((c[(c[g>>2]|0)+36>>2]|0)!=0){e=(c[h>>2]|0)+72|0;d=(c[e>>2]|0)+1|0;c[e>>2]=d;c[n>>2]=d}}Sv(c[m>>2]|0,36,c[n>>2]|0,0,0,c[s>>2]|0,-4)|0}Sv(c[m>>2]|0,10,0,c[f>>2]|0,c[(c[p>>2]|0)+8>>2]|0,c[(c[p>>2]|0)+4>>2]|0,-5)|0;gf(c[m>>2]|0,c[q>>2]&255);Az(c[h>>2]|0,c[f>>2]|0,c[q>>2]|0);iz(c[h>>2]|0,c[f>>2]|0,c[q>>2]|0);if((c[r>>2]|0)!=0){$y(c[m>>2]|0,c[r>>2]|0);IA(c[h>>2]|0)}c[k>>2]=(c[k>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+16}if((c[n>>2]|0)!=0){c[j>>2]=oy(c[m>>2]|0,44,c[n>>2]|0)|0}IA(c[h>>2]|0);c[k>>2]=0;c[l>>2]=c[(c[g>>2]|0)+28>>2];while(1){if((c[k>>2]|0)>=(c[(c[g>>2]|0)+36>>2]|0)){break}vz(c[h>>2]|0,c[(c[l>>2]|0)+20>>2]|0,c[(c[l>>2]|0)+16>>2]|0);c[k>>2]=(c[k>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+24}a[c[g>>2]>>0]=0;IA(c[h>>2]|0);if((c[j>>2]|0)==0){i=o;return}jw(c[m>>2]|0,c[j>>2]|0);i=o;return}function gE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;k=d+20|0;h=d;j=d+4|0;g=d+8|0;e=d+12|0;f=d+16|0;c[k>>2]=a;c[h>>2]=b;c[j>>2]=c[(c[k>>2]|0)+8>>2];c[g>>2]=0;c[e>>2]=c[(c[h>>2]|0)+40>>2];while(1){if((c[g>>2]|0)>=(c[(c[h>>2]|0)+44>>2]|0)){break}c[f>>2]=c[(c[c[e>>2]>>2]|0)+20>>2];if((c[f>>2]|0)!=0){b=c[c[f>>2]>>2]|0}else{b=0}Sv(c[j>>2]|0,137,c[(c[e>>2]|0)+8>>2]|0,b,0,c[(c[e>>2]|0)+4>>2]|0,-5)|0;c[g>>2]=(c[g>>2]|0)+1;c[e>>2]=(c[e>>2]|0)+16}i=d;return}function hE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+48|0;k=h;j=h+28|0;d=h+24|0;m=h+20|0;g=h+32|0;f=h+8|0;n=h+4|0;e=h+12|0;l=h+16|0;c[j>>2]=a;c[d>>2]=b;c[m>>2]=c[(c[j>>2]|0)+8>>2];c[n>>2]=(c[(c[d>>2]|0)+44>>2]|0)+(c[(c[d>>2]|0)+32>>2]|0);if((c[n>>2]|0)==0){i=h;return}Tv(c[m>>2]|0,28,0,c[(c[d>>2]|0)+16>>2]|0,c[(c[d>>2]|0)+20>>2]|0)|0;c[f>>2]=c[(c[d>>2]|0)+40>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+44>>2]|0)){break}do{if((c[(c[f>>2]|0)+12>>2]|0)>=0){c[e>>2]=c[c[f>>2]>>2];if((c[(c[e>>2]|0)+20>>2]|0)!=0){if((c[c[(c[e>>2]|0)+20>>2]>>2]|0)==1){c[l>>2]=UD(c[j>>2]|0,c[(c[e>>2]|0)+20>>2]|0,0,0)|0;Sv(c[m>>2]|0,55,c[(c[f>>2]|0)+12>>2]|0,0,0,c[l>>2]|0,-6)|0;break}}bf(c[j>>2]|0,31400,k);c[(c[f>>2]|0)+12>>2]=-1}}while(0);c[g>>2]=(c[g>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+16}i=h;return}function iE(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;g=h+16|0;l=h;j=h+4|0;m=h+8|0;k=h+12|0;c[l>>2]=e;c[j>>2]=f;if((c[(c[l>>2]|0)+36>>2]|0)==0){if((c[c[c[l>>2]>>2]>>2]|0)==1){if((c[c[(c[l>>2]|0)+32>>2]>>2]|0)==1){if((c[(c[(c[l>>2]|0)+32>>2]|0)+28>>2]|0)==0){c[m>>2]=c[(c[(c[l>>2]|0)+32>>2]|0)+24>>2];c[k>>2]=c[c[(c[c[l>>2]>>2]|0)+4>>2]>>2];if((a[(c[m>>2]|0)+44>>0]&16|0)!=0){c[g>>2]=0;e=c[g>>2]|0;i=h;return e|0}if((d[c[k>>2]>>0]|0|0)!=155){c[g>>2]=0;e=c[g>>2]|0;i=h;return e|0}if((c[(c[j>>2]|0)+44>>2]|0)==0){c[g>>2]=0;e=c[g>>2]|0;i=h;return e|0}if((b[(c[(c[(c[j>>2]|0)+40>>2]|0)+4>>2]|0)+2>>1]&256|0)==0){c[g>>2]=0;e=c[g>>2]|0;i=h;return e|0}if((c[(c[k>>2]|0)+4>>2]&16|0)!=0){c[g>>2]=0;e=c[g>>2]|0;i=h;return e|0}else{c[g>>2]=c[m>>2];e=c[g>>2]|0;i=h;return e|0}}}}}c[g>>2]=0;e=c[g>>2]|0;i=h;return e|0}function jE(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;k=l;h=l+28|0;j=l+12|0;m=l+16|0;n=l+20|0;g=l+24|0;c[h>>2]=b;c[j>>2]=e;c[m>>2]=f;if((d[(c[h>>2]|0)+450>>0]|0|0)!=2){i=l;return}if((c[m>>2]|0)!=0){if((a[(c[j>>2]|0)+44>>0]&32|0)==0){f=1}else{f=(a[(c[m>>2]|0)+55>>0]&3|0)==2^1}}else{f=0}c[n>>2]=f&1;e=c[c[h>>2]>>2]|0;f=(c[n>>2]|0)!=0?31376:1784;if((c[n>>2]|0)!=0){m=c[c[m>>2]>>2]|0}else{m=1784}c[k>>2]=c[c[j>>2]>>2];c[k+4>>2]=f;c[k+8>>2]=m;c[g>>2]=cf(e,31352,k)|0;Sv(c[(c[h>>2]|0)+8>>2]|0,157,c[(c[h>>2]|0)+464>>2]|0,0,0,c[g>>2]|0,-1)|0;i=l;return}function kE(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;l=e+20|0;h=e;f=e+4|0;j=e+8|0;g=e+12|0;k=e+16|0;c[l>>2]=a;c[h>>2]=b;c[f>>2]=0;c[c[h>>2]>>2]=0;do{if((c[(c[l>>2]|0)+44>>2]|0)==1){c[j>>2]=c[c[(c[l>>2]|0)+40>>2]>>2];c[g>>2]=c[(c[j>>2]|0)+20>>2];if((c[g>>2]|0)!=0){if((c[c[g>>2]>>2]|0)==1){if((d[c[c[(c[g>>2]|0)+4>>2]>>2]>>0]|0|0)==156){c[k>>2]=c[(c[j>>2]|0)+8>>2];if((Dc(c[k>>2]|0,14864)|0)==0){c[f>>2]=1;c[c[h>>2]>>2]=c[g>>2];break}if((Dc(c[k>>2]|0,14872)|0)==0){c[f>>2]=2;c[c[h>>2]>>2]=c[g>>2]}}}}}}while(0);i=e;return c[f>>2]&255|0}function lE(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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;j=i;i=i+96|0;u=j+80|0;D=j+76|0;k=j+72|0;t=j+68|0;v=j+64|0;l=j+60|0;m=j+56|0;p=j+52|0;n=j+48|0;C=j+44|0;o=j+40|0;x=j+12|0;E=j;r=j+4|0;y=j+8|0;s=j+16|0;q=j+20|0;B=j+24|0;z=j+28|0;A=j+32|0;w=j+36|0;c[u>>2]=b;c[D>>2]=e;c[k>>2]=f;c[t>>2]=g;c[v>>2]=h;c[l>>2]=c[(c[u>>2]|0)+8>>2];c[m>>2]=cz(c[l>>2]|0)|0;c[p>>2]=cz(c[l>>2]|0)|0;c[C>>2]=0;c[x>>2]=0;c[E>>2]=c[c[k>>2]>>2];c[r>>2]=d[c[v>>2]>>0]|0;c[y>>2]=c[(c[v>>2]|0)+4>>2];if((c[(c[k>>2]|0)+16>>2]|0)!=0){Qv(c[l>>2]|0,17,c[(c[k>>2]|0)+12>>2]|0,c[(c[k>>2]|0)+16>>2]|0)|0;Qv(c[l>>2]|0,16,0,c[m>>2]|0)|0;$y(c[l>>2]|0,c[(c[k>>2]|0)+16>>2]|0);c[C>>2]=Gz(c[u>>2]|0)|0}c[o>>2]=c[(c[k>>2]|0)+8>>2];c[s>>2]=Wv(c[u>>2]|0)|0;h=c[u>>2]|0;if((c[r>>2]|0)==9|(c[r>>2]|0)==13){e=h+68|0;b=c[e>>2]|0;c[e>>2]=b+1;c[x>>2]=b;Tv(c[l>>2]|0,57,c[x>>2]|0,c[s>>2]|0,c[t>>2]|0)|0;c[q>>2]=0}else{c[q>>2]=Wv(h)|0}c[B>>2]=(c[c[E>>2]>>2]|0)-(c[(c[k>>2]|0)+4>>2]|0);if((a[(c[k>>2]|0)+24>>0]&1|0)!=0){b=(c[u>>2]|0)+72|0;e=(c[b>>2]|0)+1|0;c[b>>2]=e;c[z>>2]=e;e=(c[u>>2]|0)+68|0;b=c[e>>2]|0;c[e>>2]=b+1;c[A>>2]=b;Tv(c[l>>2]|0,57,c[A>>2]|0,c[z>>2]|0,(c[B>>2]|0)+2|0)|0;if((c[C>>2]|0)!=0){jw(c[l>>2]|0,c[C>>2]|0)}c[n>>2]=1+(Qv(c[l>>2]|0,103,c[o>>2]|0,c[m>>2]|0)|0);oE(c[l>>2]|0,c[(c[D>>2]|0)+12>>2]|0,c[p>>2]|0);Qv(c[l>>2]|0,95,c[o>>2]|0,c[z>>2]|0)|0;Tv(c[l>>2]|0,46,c[A>>2]|0,(c[B>>2]|0)+1|0,c[s>>2]|0)|0;gf(c[l>>2]|0,32)}else{if((c[C>>2]|0)!=0){jw(c[l>>2]|0,c[C>>2]|0)}c[n>>2]=1+(Qv(c[l>>2]|0,104,c[o>>2]|0,c[m>>2]|0)|0);oE(c[l>>2]|0,c[(c[D>>2]|0)+12>>2]|0,c[p>>2]|0);Tv(c[l>>2]|0,46,c[o>>2]|0,(c[B>>2]|0)+1|0,c[s>>2]|0)|0}z=c[r>>2]|0;do{if((z|0)==11){Sv(c[l>>2]|0,48,c[s>>2]|0,1,c[q>>2]|0,(c[v>>2]|0)+1|0,1)|0;Az(c[u>>2]|0,c[s>>2]|0,1);Qv(c[l>>2]|0,107,c[y>>2]|0,c[q>>2]|0)|0}else if((z|0)==10){eE(c[u>>2]|0,c[s>>2]|0,c[y>>2]|0,1)}else if((z|0)==12|(z|0)==14){Qv(c[l>>2]|0,69,c[y>>2]|0,c[q>>2]|0)|0;Tv(c[l>>2]|0,70,c[y>>2]|0,c[s>>2]|0,c[q>>2]|0)|0;gf(c[l>>2]|0,8)}else{c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[t>>2]|0)){break}Tv(c[l>>2]|0,46,c[x>>2]|0,c[w>>2]|0,(c[(c[v>>2]|0)+8>>2]|0)+(c[w>>2]|0)|0)|0;if((c[w>>2]|0)==0){gf(c[l>>2]|0,32)}c[w>>2]=(c[w>>2]|0)+1}x=c[l>>2]|0;w=c[v>>2]|0;if((c[r>>2]|0)==9){Qv(x,35,c[w+8>>2]|0,c[t>>2]|0)|0;Az(c[u>>2]|0,c[(c[v>>2]|0)+8>>2]|0,c[t>>2]|0);break}else{oy(x,22,c[w+4>>2]|0)|0;break}}}while(0);Xv(c[u>>2]|0,c[s>>2]|0);Xv(c[u>>2]|0,c[q>>2]|0);$y(c[l>>2]|0,c[p>>2]|0);p=c[l>>2]|0;o=c[o>>2]|0;n=c[n>>2]|0;if((a[(c[k>>2]|0)+24>>0]&1|0)!=0){Qv(p,5,o,n)|0}else{Qv(p,9,o,n)|0}if((c[(c[k>>2]|0)+12>>2]|0)==0){e=c[l>>2]|0;b=c[m>>2]|0;$y(e,b);i=j;return}oy(c[l>>2]|0,18,c[(c[k>>2]|0)+12>>2]|0)|0;e=c[l>>2]|0;b=c[m>>2]|0;$y(e,b);i=j;return}function mE(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;u=i;i=i+80|0;t=u;k=u+64|0;l=u+60|0;m=u+56|0;q=u+52|0;n=u+48|0;A=u+44|0;s=u+40|0;h=u+68|0;y=u+28|0;o=u+24|0;p=u+20|0;x=u+16|0;w=u+12|0;z=u+8|0;v=u+32|0;r=u+36|0;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[q>>2]=c[(c[k>>2]|0)+8>>2];c[s>>2]=c[c[k>>2]>>2];if((a[(c[k>>2]|0)+450>>0]|0)!=0){i=u;return}if((d[(c[k>>2]|0)+16>>0]|0)!=0){i=u;return}if((c[q>>2]|0)==0){i=u;return}if((d[(c[s>>2]|0)+64>>0]|0)!=0){i=u;return}a[(c[k>>2]|0)+16>>0]=1;c[h>>2]=(c[(c[s>>2]|0)+24>>2]&32|0)!=0&1;c[y>>2]=(c[(c[s>>2]|0)+24>>2]&64|0)!=0&1;rA(c[q>>2]|0,c[c[m>>2]>>2]|0);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[c[m>>2]>>2]|0)){break}c[o>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+((c[n>>2]|0)*20|0)>>2];do{if((c[o>>2]|0)!=0){if((c[(c[(c[m>>2]|0)+4>>2]|0)+((c[n>>2]|0)*20|0)+4>>2]|0)!=0){c[p>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+((c[n>>2]|0)*20|0)+4>>2];sA(c[q>>2]|0,c[n>>2]|0,0,c[p>>2]|0,-1)|0;break}if((d[c[o>>2]>>0]|0)==154){j=12}else{if((d[c[o>>2]>>0]|0)==156){j=12}}if((j|0)==12){j=0;if((c[l>>2]|0)!=0){c[z>>2]=b[(c[o>>2]|0)+32>>1]|0;c[A>>2]=0;while(1){if((c[A>>2]|0)>=(c[c[l>>2]>>2]|0)){break}if((c[(c[l>>2]|0)+8+((c[A>>2]|0)*72|0)+40>>2]|0)==(c[(c[o>>2]|0)+28>>2]|0)){break}c[A>>2]=(c[A>>2]|0)+1}c[x>>2]=c[(c[l>>2]|0)+8+((c[A>>2]|0)*72|0)+16>>2];if((c[z>>2]|0)<0){c[z>>2]=b[(c[x>>2]|0)+36>>1]|0}if((c[z>>2]|0)<0){c[w>>2]=8848}else{c[w>>2]=c[(c[(c[x>>2]|0)+4>>2]|0)+((c[z>>2]|0)*24|0)>>2]}if((c[y>>2]|0)==0){if((c[h>>2]|0)==0){f=c[q>>2]|0;e=c[n>>2]|0;sA(f,e,0,pe(c[s>>2]|0,c[(c[(c[m>>2]|0)+4>>2]|0)+((c[n>>2]|0)*20|0)+8>>2]|0)|0,39)|0;break}}if((c[h>>2]|0)!=0){c[v>>2]=0;e=c[s>>2]|0;f=c[w>>2]|0;c[t>>2]=c[c[x>>2]>>2];c[t+4>>2]=f;c[v>>2]=cf(e,23968,t)|0;sA(c[q>>2]|0,c[n>>2]|0,0,c[v>>2]|0,39)|0;break}else{sA(c[q>>2]|0,c[n>>2]|0,0,c[w>>2]|0,-1)|0;break}}}c[r>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+((c[n>>2]|0)*20|0)+8>>2];g=c[s>>2]|0;if((c[r>>2]|0)==0){c[t>>2]=(c[n>>2]|0)+1;g=cf(g,31336,t)|0}else{g=pe(g,c[r>>2]|0)|0}c[r>>2]=g;sA(c[q>>2]|0,c[n>>2]|0,0,c[r>>2]|0,39)|0}}while(0);c[n>>2]=(c[n>>2]|0)+1}nE(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0);i=u;return}function nE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+64|0;m=e+56|0;n=e;g=e+4|0;l=e+8|0;f=e+12|0;j=e+16|0;h=e+48|0;k=e+52|0;c[m>>2]=a;c[n>>2]=b;c[g>>2]=d;c[l>>2]=c[(c[m>>2]|0)+8>>2];c[j+4>>2]=c[n>>2];c[j>>2]=c[m>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[g>>2]>>2]|0)){break}c[h>>2]=c[(c[(c[g>>2]|0)+4>>2]|0)+((c[f>>2]|0)*20|0)>>2];c[k>>2]=Hw(j,c[h>>2]|0,0)|0;sA(c[l>>2]|0,c[f>>2]|0,1,c[k>>2]|0,-1)|0;c[f>>2]=(c[f>>2]|0)+1}i=e;return}function oE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e;j=e+4|0;h=e+8|0;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;if((c[g>>2]|0)<=0){i=e;return}Qv(c[f>>2]|0,37,c[g>>2]|0,-1)|0;c[h>>2]=oy(c[f>>2]|0,135,c[g>>2]|0)|0;Qv(c[f>>2]|0,16,0,c[j>>2]|0)|0;jw(c[f>>2]|0,c[h>>2]|0);i=e;return}function pE(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;j=g+24|0;k=g;o=g+4|0;m=g+8|0;n=g+12|0;l=g+16|0;h=g+20|0;c[j>>2]=a;c[k>>2]=b;c[o>>2]=d;c[m>>2]=e;c[n>>2]=f;c[l>>2]=c[(c[j>>2]|0)+8>>2];c[h>>2]=Wv(c[j>>2]|0)|0;ff(c[l>>2]|0,66,c[k>>2]|0,c[o>>2]|0,c[n>>2]|0,c[m>>2]|0)|0;Tv(c[l>>2]|0,48,c[n>>2]|0,c[m>>2]|0,c[h>>2]|0)|0;Qv(c[l>>2]|0,107,c[k>>2]|0,c[h>>2]|0)|0;Xv(c[j>>2]|0,c[h>>2]|0);i=g;return}function qE(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;h=i;i=i+80|0;l=h+32|0;y=h+64|0;j=h+60|0;m=h+56|0;z=h+52|0;k=h+48|0;v=h+44|0;g=h+40|0;w=h+36|0;q=h+28|0;p=h+24|0;t=h+20|0;u=h+16|0;x=h+12|0;r=h+8|0;s=h+4|0;o=h;n=h+68|0;c[y>>2]=e;c[j>>2]=f;c[z>>2]=c[(c[y>>2]|0)+20>>2];c[k>>2]=c[c[z>>2]>>2];c[v>>2]=c[(c[z>>2]|0)+4>>2];c[g>>2]=c[(c[z>>2]|0)+12>>2];f=d[c[j>>2]>>0]|0;if((f|0)==154|(f|0)==156){a:do{if((c[v>>2]|0)!=0){c[w>>2]=(c[v>>2]|0)+8;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[c[v>>2]>>2]|0)){break a}if((c[(c[j>>2]|0)+28>>2]|0)==(c[(c[w>>2]|0)+40>>2]|0)){break}c[m>>2]=(c[m>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+72}c[q>>2]=c[(c[g>>2]|0)+28>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[(c[g>>2]|0)+32>>2]|0)){break}if((c[(c[q>>2]|0)+4>>2]|0)==(c[(c[j>>2]|0)+28>>2]|0)){if((c[(c[q>>2]|0)+8>>2]|0)==(b[(c[j>>2]|0)+32>>1]|0)){break}}c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+24}if((c[p>>2]|0)>=(c[(c[g>>2]|0)+32>>2]|0)){e=sE(c[c[k>>2]>>2]|0,c[g>>2]|0)|0;c[p>>2]=e;if((e|0)>=0){c[q>>2]=(c[(c[g>>2]|0)+28>>2]|0)+((c[p>>2]|0)*24|0);c[c[q>>2]>>2]=c[(c[j>>2]|0)+44>>2];c[(c[q>>2]|0)+4>>2]=c[(c[j>>2]|0)+28>>2];c[(c[q>>2]|0)+8>>2]=b[(c[j>>2]|0)+32>>1]|0;f=(c[k>>2]|0)+72|0;e=(c[f>>2]|0)+1|0;c[f>>2]=e;c[(c[q>>2]|0)+16>>2]=e;c[(c[q>>2]|0)+12>>2]=-1;c[(c[q>>2]|0)+20>>2]=c[j>>2];b:do{if((c[(c[g>>2]|0)+24>>2]|0)!=0){c[x>>2]=c[(c[g>>2]|0)+24>>2];c[r>>2]=c[(c[x>>2]|0)+4>>2];c[u>>2]=c[c[x>>2]>>2];c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[u>>2]|0)){break b}c[s>>2]=c[c[r>>2]>>2];if((d[c[s>>2]>>0]|0)==154){if((c[(c[s>>2]|0)+28>>2]|0)==(c[(c[j>>2]|0)+28>>2]|0)){if((b[(c[s>>2]|0)+32>>1]|0)==(b[(c[j>>2]|0)+32>>1]|0)){break}}}c[t>>2]=(c[t>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+20}c[(c[q>>2]|0)+12>>2]=c[t>>2]}}while(0);if((c[(c[q>>2]|0)+12>>2]|0)<0){f=(c[g>>2]|0)+12|0;e=c[f>>2]|0;c[f>>2]=e+1;c[(c[q>>2]|0)+12>>2]=e}}}c[(c[j>>2]|0)+40>>2]=c[g>>2];a[c[j>>2]>>0]=-100;b[(c[j>>2]|0)+34>>1]=c[p>>2]}}while(0);c[l>>2]=1;e=c[l>>2]|0;i=h;return e|0}else if((f|0)==155){if((a[(c[z>>2]|0)+28>>0]&8|0)==0){if((c[(c[y>>2]|0)+16>>2]|0)==(d[(c[j>>2]|0)+38>>0]|0)){c[o>>2]=c[(c[g>>2]|0)+40>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[g>>2]|0)+44>>2]|0)){break}if((jx(c[c[o>>2]>>2]|0,c[j>>2]|0,-1)|0)==0){break}c[m>>2]=(c[m>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+16}do{if((c[m>>2]|0)>=(c[(c[g>>2]|0)+44>>2]|0)){a[n>>0]=a[(c[(c[(c[c[k>>2]>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;c[m>>2]=tE(c[c[k>>2]>>2]|0,c[g>>2]|0)|0;if((c[m>>2]|0)>=0){c[o>>2]=(c[(c[g>>2]|0)+40>>2]|0)+(c[m>>2]<<4);c[c[o>>2]>>2]=c[j>>2];q=(c[k>>2]|0)+72|0;p=(c[q>>2]|0)+1|0;c[q>>2]=p;c[(c[o>>2]|0)+8>>2]=p;p=c[c[k>>2]>>2]|0;q=c[(c[j>>2]|0)+8>>2]|0;r=Ub(c[(c[j>>2]|0)+8>>2]|0)|0;if((c[(c[j>>2]|0)+20>>2]|0)!=0){s=c[c[(c[j>>2]|0)+20>>2]>>2]|0}else{s=0}e=rg(p,q,r,s,a[n>>0]|0,0)|0;c[(c[o>>2]|0)+4>>2]=e;if((c[(c[j>>2]|0)+4>>2]&16|0)!=0){f=(c[k>>2]|0)+68|0;e=c[f>>2]|0;c[f>>2]=e+1;c[(c[o>>2]|0)+12>>2]=e;break}else{c[(c[o>>2]|0)+12>>2]=-1;break}}}}while(0);b[(c[j>>2]|0)+34>>1]=c[m>>2];c[(c[j>>2]|0)+40>>2]=c[g>>2];c[l>>2]=1;e=c[l>>2]|0;i=h;return e|0}}c[l>>2]=0;e=c[l>>2]|0;i=h;return e|0}else{c[l>>2]=0;e=c[l>>2]|0;i=h;return e|0}return 0}function rE(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function sE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;d=e+4|0;c[g>>2]=a;c[f>>2]=b;a=QA(c[g>>2]|0,c[(c[f>>2]|0)+28>>2]|0,24,(c[f>>2]|0)+32|0,d)|0;c[(c[f>>2]|0)+28>>2]=a;i=e;return c[d>>2]|0}function tE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;d=e+4|0;c[g>>2]=a;c[f>>2]=b;a=QA(c[g>>2]|0,c[(c[f>>2]|0)+40>>2]|0,16,(c[f>>2]|0)+44|0,d)|0;c[(c[f>>2]|0)+40>>2]=a;i=e;return c[d>>2]|0}function uE(b,d,f,g){b=b|0;d=d|0;f=f|0;g=g|0;var h=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;o=i;i=i+80|0;v=o+72|0;m=o+68|0;n=o+64|0;B=o+60|0;h=o+56|0;A=o+52|0;r=o+48|0;p=o+44|0;x=o+40|0;q=o+36|0;t=o+12|0;u=o;s=o+4|0;w=o+8|0;z=o+16|0;y=o+20|0;k=o+24|0;l=o+28|0;j=o+32|0;c[v>>2]=b;c[m>>2]=d;c[n>>2]=f;c[B>>2]=g;c[h>>2]=c[(c[v>>2]|0)+8>>2];c[A>>2]=c[c[c[m>>2]>>2]>>2];d=(c[v>>2]|0)+72|0;b=(c[d>>2]|0)+1|0;c[d>>2]=b;c[r>>2]=b;c[p>>2]=(c[(c[v>>2]|0)+72>>2]|0)+1;c[x>>2]=c[(c[m>>2]|0)+4>>2];b=(c[v>>2]|0)+72|0;c[b>>2]=(c[b>>2]|0)+((c[A>>2]|0)+2);IA(c[v>>2]|0);Cz(c[v>>2]|0,c[c[m>>2]>>2]|0,c[p>>2]|0,0)|0;Qv(c[h>>2]|0,68,c[(c[m>>2]|0)+8>>2]|0,(c[p>>2]|0)+(c[A>>2]|0)|0)|0;eE(c[v>>2]|0,c[B>>2]|0,(c[p>>2]|0)+(c[A>>2]|0)+1|0,1);Tv(c[h>>2]|0,48,(c[p>>2]|0)+(c[x>>2]|0)|0,(c[A>>2]|0)+2-(c[x>>2]|0)|0,c[r>>2]|0)|0;do{if((c[x>>2]|0)>0){c[t>>2]=(c[(c[v>>2]|0)+72>>2]|0)+1;B=(c[v>>2]|0)+72|0;c[B>>2]=(c[B>>2]|0)+(c[(c[m>>2]|0)+4>>2]|0);c[z>>2]=(c[A>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)+1;c[u>>2]=oy(c[h>>2]|0,45,(c[p>>2]|0)+(c[A>>2]|0)|0)|0;Tv(c[h>>2]|0,41,c[t>>2]|0,c[p>>2]|0,c[(c[m>>2]|0)+4>>2]|0)|0;c[w>>2]=Kz(c[h>>2]|0,c[(c[m>>2]|0)+20>>2]|0)|0;if((a[(c[c[v>>2]>>2]|0)+64>>0]|0)!=0){i=o;return}else{c[(c[w>>2]|0)+8>>2]=(c[z>>2]|0)+1;c[y>>2]=c[(c[w>>2]|0)+16>>2];aL(c[(c[y>>2]|0)+16>>2]|0,0,e[(c[y>>2]|0)+6>>1]|0)|0;nf(c[h>>2]|0,-1,c[y>>2]|0,-6);b=UD(c[v>>2]|0,c[c[m>>2]>>2]|0,c[x>>2]|0,1)|0;c[(c[w>>2]|0)+16>>2]=b;c[s>>2]=sy(c[h>>2]|0)|0;Tv(c[h>>2]|0,42,(c[s>>2]|0)+1|0,0,(c[s>>2]|0)+1|0)|0;b=cz(c[h>>2]|0)|0;c[(c[m>>2]|0)+16>>2]=b;b=(c[v>>2]|0)+72|0;B=(c[b>>2]|0)+1|0;c[b>>2]=B;c[(c[m>>2]|0)+12>>2]=B;Qv(c[h>>2]|0,17,c[(c[m>>2]|0)+12>>2]|0,c[(c[m>>2]|0)+16>>2]|0)|0;oy(c[h>>2]|0,116,c[(c[m>>2]|0)+8>>2]|0)|0;jw(c[h>>2]|0,c[u>>2]|0);Tv(c[h>>2]|0,32,c[p>>2]|0,c[t>>2]|0,c[(c[m>>2]|0)+4>>2]|0)|0;jw(c[h>>2]|0,c[s>>2]|0);break}}}while(0);if((a[(c[m>>2]|0)+24>>0]&1|0)!=0){c[q>>2]=106}else{c[q>>2]=107}Qv(c[h>>2]|0,c[q>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[r>>2]|0)|0;if((c[(c[n>>2]|0)+8>>2]|0)==0){i=o;return}p=c[n>>2]|0;if((c[(c[n>>2]|0)+12>>2]|0)!=0){c[j>>2]=(c[p+12>>2]|0)+1}else{c[j>>2]=c[p+8>>2]}c[k>>2]=oy(c[h>>2]|0,136,c[j>>2]|0)|0;Qv(c[h>>2]|0,37,c[j>>2]|0,-1)|0;c[l>>2]=Yv(c[h>>2]|0,16)|0;jw(c[h>>2]|0,c[k>>2]|0);oy(c[h>>2]|0,102,c[(c[m>>2]|0)+8>>2]|0)|0;oy(c[h>>2]|0,74,c[(c[m>>2]|0)+8>>2]|0)|0;jw(c[h>>2]|0,c[l>>2]|0);i=o;return}function vE(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;a=c[e>>2]|0;if((a|0)==116){c[b>>2]=31776}else if((a|0)==118){c[b>>2]=31792}else if((a|0)==117){c[b>>2]=31808}else{c[b>>2]=31816}i=d;return c[b>>2]|0}function wE(a,f,g){a=a|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;x=i;i=i+112|0;n=x+108|0;o=x+104|0;q=x+100|0;H=x+96|0;D=x+92|0;t=x+88|0;y=x+84|0;v=x+80|0;l=x+76|0;r=x+72|0;p=x+68|0;u=x+64|0;k=x+60|0;B=x+32|0;E=x;z=x+4|0;G=x+24|0;A=x+28|0;h=x+36|0;w=x+40|0;j=x+44|0;s=x+48|0;m=x+52|0;C=x+56|0;c[n>>2]=a;c[o>>2]=f;c[q>>2]=g;c[H>>2]=c[(c[o>>2]|0)+32>>2];c[D>>2]=c[c[c[o>>2]>>2]>>2];c[t>>2]=c[(c[n>>2]|0)+8>>2];c[y>>2]=c[(c[o>>2]|0)+52>>2];c[p>>2]=0;c[B>>2]=0;c[E>>2]=5;if((Lv(c[n>>2]|0,33,0,0,0)|0)!=0){i=x;return}c[r>>2]=cz(c[t>>2]|0)|0;VD(c[n>>2]|0,c[o>>2]|0,c[r>>2]|0);c[w>>2]=c[(c[o>>2]|0)+60>>2];c[j>>2]=c[(c[o>>2]|0)+64>>2];c[s>>2]=c[(c[o>>2]|0)+8>>2];c[m>>2]=c[(c[o>>2]|0)+12>>2];c[(c[o>>2]|0)+64>>2]=0;c[(c[o>>2]|0)+60>>2]=0;c[(c[o>>2]|0)+12>>2]=0;c[(c[o>>2]|0)+8>>2]=0;c[h>>2]=c[(c[o>>2]|0)+48>>2];c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[c[H>>2]>>2]|0)){break}g=c[G>>2]|0;if(((d[(c[H>>2]|0)+8+((c[G>>2]|0)*72|0)+37>>0]|0)>>>3&1|0)!=0){F=5;break}c[G>>2]=g+1}if((F|0)==5){c[p>>2]=c[(c[H>>2]|0)+8+(g*72|0)+40>>2]}a=(c[n>>2]|0)+68|0;F=c[a>>2]|0;c[a>>2]=F+1;c[k>>2]=F;F=(c[h>>2]|0)!=0;if((d[(c[o>>2]|0)+4>>0]|0|0)==115){c[E>>2]=F?8:6;f=(c[n>>2]|0)+68|0;a=c[f>>2]|0;c[f>>2]=a+1;c[B>>2]=a}else{c[E>>2]=F?7:5}Hz(z,c[E>>2]|0,c[k>>2]|0);f=(c[n>>2]|0)+72|0;a=(c[f>>2]|0)+1|0;c[f>>2]=a;c[u>>2]=a;Tv(c[t>>2]|0,57,c[p>>2]|0,c[u>>2]|0,c[D>>2]|0)|0;if((c[h>>2]|0)!=0){c[C>>2]=AE(c[n>>2]|0,c[o>>2]|0,1)|0;Sv(c[t>>2]|0,55,c[k>>2]|0,(c[c[h>>2]>>2]|0)+2|0,0,c[C>>2]|0,-6)|0;c[z+16>>2]=c[h>>2]}else{Qv(c[t>>2]|0,55,c[k>>2]|0,c[D>>2]|0)|0}if((c[B>>2]|0)!=0){a=Qv(c[t>>2]|0,55,c[B>>2]|0,0)|0;c[(c[o>>2]|0)+16>>2]=a;a=(c[o>>2]|0)+6|0;b[a>>1]=e[a>>1]|0|8}c[(c[o>>2]|0)+48>>2]=0;c[(c[y>>2]|0)+56>>2]=0;c[A>>2]=Mu(c[n>>2]|0,c[y>>2]|0,z)|0;c[(c[y>>2]|0)+56>>2]=c[o>>2];if((c[A>>2]|0)==0){c[v>>2]=Qv(c[t>>2]|0,105,c[k>>2]|0,c[r>>2]|0)|0;oy(c[t>>2]|0,101,c[p>>2]|0)|0;B=c[t>>2]|0;A=c[k>>2]|0;if((c[h>>2]|0)!=0){Tv(B,46,A,(c[c[h>>2]>>2]|0)+1|0,c[u>>2]|0)|0}else{Qv(B,99,A,c[u>>2]|0)|0}oy(c[t>>2]|0,74,c[k>>2]|0)|0;c[l>>2]=cz(c[t>>2]|0)|0;oE(c[t>>2]|0,c[m>>2]|0,c[l>>2]|0);ZD(c[n>>2]|0,c[o>>2]|0,c[c[o>>2]>>2]|0,c[p>>2]|0,0,0,c[q>>2]|0,c[l>>2]|0,c[r>>2]|0);if((c[s>>2]|0)!=0){Tv(c[t>>2]|0,136,c[s>>2]|0,c[r>>2]|0,-1)|0}$y(c[t>>2]|0,c[l>>2]|0);c[(c[o>>2]|0)+52>>2]=0;Mu(c[n>>2]|0,c[o>>2]|0,z)|0;c[(c[o>>2]|0)+52>>2]=c[y>>2];Qv(c[t>>2]|0,16,0,c[v>>2]|0)|0;$y(c[t>>2]|0,c[r>>2]|0)}cu(c[c[n>>2]>>2]|0,c[(c[o>>2]|0)+48>>2]|0);c[(c[o>>2]|0)+48>>2]=c[h>>2];c[(c[o>>2]|0)+60>>2]=c[w>>2];c[(c[o>>2]|0)+64>>2]=c[j>>2];i=x;return}function xE(f,g,h){f=f|0;g=g|0;h=h|0;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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0;T=i;i=i+224|0;U=T+212|0;E=T+208|0;u=T+204|0;G=T+200|0;aa=T+196|0;ca=T+192|0;t=T+188|0;n=T+184|0;J=T+164|0;F=T+144|0;q=T+140|0;B=T+136|0;j=T+132|0;O=T+128|0;o=T+124|0;z=T+120|0;p=T+116|0;A=T+112|0;r=T+108|0;y=T+104|0;v=T+100|0;K=T+96|0;l=T+92|0;w=T+88|0;M=T+36|0;R=T+32|0;H=T+28|0;P=T+24|0;Q=T+20|0;s=T+16|0;x=T+8|0;L=T+4|0;m=T;C=T+12|0;W=T+40|0;I=T+44|0;da=T+48|0;X=T+52|0;Y=T+56|0;N=T+60|0;S=T+64|0;Z=T+68|0;ba=T+72|0;_=T+76|0;$=T+80|0;V=T+84|0;c[E>>2]=f;c[u>>2]=g;c[G>>2]=h;c[A>>2]=0;c[C>>2]=0;c[I>>2]=c[c[E>>2]>>2];c[n>>2]=c[(c[E>>2]|0)+8>>2];c[x>>2]=cz(c[n>>2]|0)|0;c[s>>2]=cz(c[n>>2]|0)|0;c[m>>2]=d[(c[u>>2]|0)+4>>0]|0;c[t>>2]=c[(c[u>>2]|0)+52>>2];c[da>>2]=c[(c[u>>2]|0)+48>>2];c[X>>2]=c[c[da>>2]>>2];a:do{if((c[m>>2]|0)!=116){c[aa>>2]=1;while(1){if((d[(c[I>>2]|0)+64>>0]|0|0)!=0){break a}if((c[aa>>2]|0)>(c[c[c[u>>2]>>2]>>2]|0)){break a}c[ca>>2]=0;c[Z>>2]=c[(c[da>>2]|0)+4>>2];while(1){if((c[ca>>2]|0)>=(c[X>>2]|0)){break}if((e[(c[Z>>2]|0)+16>>1]|0|0)==(c[aa>>2]|0)){break}c[ca>>2]=(c[ca>>2]|0)+1;c[Z>>2]=(c[Z>>2]|0)+20}if((c[ca>>2]|0)==(c[X>>2]|0)){c[ba>>2]=Su(c[I>>2]|0,132,0)|0;if((c[ba>>2]|0)==0){break}f=(c[ba>>2]|0)+4|0;c[f>>2]=c[f>>2]|1024;c[(c[ba>>2]|0)+8>>2]=c[aa>>2];c[da>>2]=Pu(c[E>>2]|0,c[da>>2]|0,c[ba>>2]|0)|0;if((c[da>>2]|0)!=0){g=c[aa>>2]&65535;f=c[X>>2]|0;c[X>>2]=f+1;b[(c[(c[da>>2]|0)+4>>2]|0)+(f*20|0)+16>>1]=g}}c[aa>>2]=(c[aa>>2]|0)+1}c[U>>2]=7;f=c[U>>2]|0;i=T;return f|0}}while(0);c[Y>>2]=$e(c[I>>2]|0,c[X>>2]<<2)|0;if((c[Y>>2]|0)!=0){c[aa>>2]=0;c[_>>2]=c[(c[da>>2]|0)+4>>2];while(1){if((c[aa>>2]|0)>=(c[X>>2]|0)){break}c[(c[Y>>2]|0)+(c[aa>>2]<<2)>>2]=(e[(c[_>>2]|0)+16>>1]|0)-1;c[aa>>2]=(c[aa>>2]|0)+1;c[_>>2]=(c[_>>2]|0)+20}c[W>>2]=AE(c[E>>2]|0,c[u>>2]|0,1)|0}else{c[W>>2]=0}c[(c[u>>2]|0)+48>>2]=c[da>>2];f=px(c[c[E>>2]>>2]|0,c[da>>2]|0,0)|0;c[(c[t>>2]|0)+48>>2]=f;b:do{if((c[m>>2]|0)==116){c[H>>2]=0}else{c[$>>2]=c[c[c[u>>2]>>2]>>2];c[H>>2]=(c[(c[E>>2]|0)+72>>2]|0)+1;f=(c[E>>2]|0)+72|0;c[f>>2]=(c[f>>2]|0)+((c[$>>2]|0)+1);Qv(c[n>>2]|0,25,0,c[H>>2]|0)|0;c[C>>2]=By(c[I>>2]|0,c[$>>2]|0,1)|0;if((c[C>>2]|0)!=0){c[aa>>2]=0;while(1){if((c[aa>>2]|0)>=(c[$>>2]|0)){break b}f=zE(c[E>>2]|0,c[u>>2]|0,c[aa>>2]|0)|0;c[(c[C>>2]|0)+20+(c[aa>>2]<<2)>>2]=f;a[(c[(c[C>>2]|0)+16>>2]|0)+(c[aa>>2]|0)>>0]=0;c[aa>>2]=(c[aa>>2]|0)+1}}}}while(0);c[(c[u>>2]|0)+52>>2]=0;c[(c[t>>2]|0)+56>>2]=0;rx(c[E>>2]|0,c[u>>2]|0,c[(c[u>>2]|0)+48>>2]|0,23008)|0;if((c[(c[t>>2]|0)+52>>2]|0)==0){rx(c[E>>2]|0,c[t>>2]|0,c[(c[t>>2]|0)+48>>2]|0,23008)|0}VD(c[E>>2]|0,c[u>>2]|0,c[x>>2]|0);if((c[(c[u>>2]|0)+8>>2]|0)!=0){if((c[m>>2]|0)==116){Z=(c[E>>2]|0)+72|0;f=(c[Z>>2]|0)+1|0;c[Z>>2]=f;c[M>>2]=f;f=(c[E>>2]|0)+72|0;Z=(c[f>>2]|0)+1|0;c[f>>2]=Z;c[R>>2]=Z;Z=c[u>>2]|0;if((c[(c[u>>2]|0)+12>>2]|0)!=0){Z=(c[Z+12>>2]|0)+1|0}else{Z=c[Z+8>>2]|0}Qv(c[n>>2]|0,33,Z,c[M>>2]|0)|0;Qv(c[n>>2]|0,33,c[M>>2]|0,c[R>>2]|0)|0}else{k=35}}else{k=35}if((k|0)==35){c[R>>2]=0;c[M>>2]=0}gu(c[I>>2]|0,c[(c[u>>2]|0)+60>>2]|0);c[(c[u>>2]|0)+60>>2]=0;gu(c[I>>2]|0,c[(c[u>>2]|0)+64>>2]|0);c[(c[u>>2]|0)+64>>2]=0;f=(c[E>>2]|0)+72|0;g=(c[f>>2]|0)+1|0;c[f>>2]=g;c[q>>2]=g;g=(c[E>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[B>>2]=f;f=(c[E>>2]|0)+72|0;g=(c[f>>2]|0)+1|0;c[f>>2]=g;c[o>>2]=g;g=(c[E>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[z>>2]=f;Hz(J,13,c[q>>2]|0);Hz(F,13,c[B>>2]|0);c[j>>2]=(sy(c[n>>2]|0)|0)+1;c[L>>2]=Tv(c[n>>2]|0,20,c[q>>2]|0,0,c[j>>2]|0)|0;c[(c[t>>2]|0)+8>>2]=c[M>>2];c[N>>2]=c[(c[E>>2]|0)+468>>2];Mu(c[E>>2]|0,c[t>>2]|0,J)|0;oy(c[n>>2]|0,21,c[q>>2]|0)|0;jw(c[n>>2]|0,c[L>>2]|0);c[O>>2]=(sy(c[n>>2]|0)|0)+1;c[L>>2]=Tv(c[n>>2]|0,20,c[B>>2]|0,0,c[O>>2]|0)|0;c[P>>2]=c[(c[u>>2]|0)+8>>2];c[Q>>2]=c[(c[u>>2]|0)+12>>2];c[(c[u>>2]|0)+8>>2]=c[R>>2];c[(c[u>>2]|0)+12>>2]=0;c[S>>2]=c[(c[E>>2]|0)+468>>2];Mu(c[E>>2]|0,c[u>>2]|0,F)|0;c[(c[u>>2]|0)+8>>2]=c[P>>2];c[(c[u>>2]|0)+12>>2]=c[Q>>2];oy(c[n>>2]|0,21,c[B>>2]|0)|0;c[p>>2]=BE(c[E>>2]|0,c[u>>2]|0,J,c[G>>2]|0,c[o>>2]|0,c[H>>2]|0,c[C>>2]|0,c[x>>2]|0)|0;if((c[m>>2]|0)==116|(c[m>>2]|0)==115){c[A>>2]=BE(c[E>>2]|0,c[u>>2]|0,F,c[G>>2]|0,c[z>>2]|0,c[H>>2]|0,c[C>>2]|0,c[x>>2]|0)|0}Ch(c[C>>2]|0);if((c[m>>2]|0)==117|(c[m>>2]|0)==118){f=c[x>>2]|0;c[r>>2]=f;c[y>>2]=f}else{c[r>>2]=Qv(c[n>>2]|0,17,c[z>>2]|0,c[A>>2]|0)|0;c[y>>2]=Qv(c[n>>2]|0,22,c[B>>2]|0,c[x>>2]|0)|0;Qv(c[n>>2]|0,16,0,c[r>>2]|0)|0;g=(c[t>>2]|0)+24|0;f=(c[u>>2]|0)+24|0;h=f;g=dL(c[h>>2]|0,c[h+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;c[f>>2]=g;c[f+4>>2]=D}if((c[m>>2]|0)==118){c[v>>2]=c[r>>2];g=(c[u>>2]|0)+24|0;da=c[g+4>>2]|0;f=(c[t>>2]|0)+24|0;h=c[f+4>>2]|0;if(da>>>0>h>>>0|((da|0)==(h|0)?(c[g>>2]|0)>>>0>(c[f>>2]|0)>>>0:0)){h=(c[t>>2]|0)+24|0;g=c[h+4>>2]|0;f=(c[u>>2]|0)+24|0;c[f>>2]=c[h>>2];c[f+4>>2]=g}}else{c[v>>2]=Qv(c[n>>2]|0,17,c[o>>2]|0,c[p>>2]|0)|0;Qv(c[n>>2]|0,22,c[q>>2]|0,c[x>>2]|0)|0;Qv(c[n>>2]|0,16,0,c[v>>2]|0)|0}c[K>>2]=Qv(c[n>>2]|0,17,c[o>>2]|0,c[p>>2]|0)|0;Qv(c[n>>2]|0,22,c[q>>2]|0,c[r>>2]|0)|0;Qv(c[n>>2]|0,16,0,c[s>>2]|0)|0;do{if((c[m>>2]|0)==116){c[l>>2]=c[K>>2]}else{if((c[m>>2]|0)==118){c[l>>2]=c[K>>2];c[K>>2]=(c[K>>2]|0)+1;break}else{c[l>>2]=Qv(c[n>>2]|0,22,c[q>>2]|0,c[r>>2]|0)|0;Qv(c[n>>2]|0,16,0,c[s>>2]|0)|0;break}}}while(0);c[w>>2]=sy(c[n>>2]|0)|0;if((c[m>>2]|0)==116|(c[m>>2]|0)==115){Qv(c[n>>2]|0,17,c[z>>2]|0,c[A>>2]|0)|0}Qv(c[n>>2]|0,22,c[B>>2]|0,c[v>>2]|0)|0;Qv(c[n>>2]|0,16,0,c[s>>2]|0)|0;jw(c[n>>2]|0,c[L>>2]|0);Qv(c[n>>2]|0,22,c[q>>2]|0,c[y>>2]|0)|0;Qv(c[n>>2]|0,22,c[B>>2]|0,c[v>>2]|0)|0;$y(c[n>>2]|0,c[s>>2]|0);Sv(c[n>>2]|0,40,0,0,0,c[Y>>2]|0,-15)|0;Sv(c[n>>2]|0,41,c[J+8>>2]|0,c[F+8>>2]|0,c[X>>2]|0,c[W>>2]|0,-6)|0;gf(c[n>>2]|0,1);Tv(c[n>>2]|0,42,c[K>>2]|0,c[l>>2]|0,c[w>>2]|0)|0;$y(c[n>>2]|0,c[x>>2]|0);if((d[c[G>>2]>>0]|0|0)==9){c[V>>2]=c[t>>2];while(1){if((c[(c[V>>2]|0)+52>>2]|0)==0){break}c[V>>2]=c[(c[V>>2]|0)+52>>2]}mE(c[E>>2]|0,0,c[c[V>>2]>>2]|0)}if((c[(c[u>>2]|0)+52>>2]|0)!=0){du(c[I>>2]|0,c[(c[u>>2]|0)+52>>2]|0)}c[(c[u>>2]|0)+52>>2]=c[t>>2];c[(c[t>>2]|0)+56>>2]=c[u>>2];yE(c[E>>2]|0,d[(c[u>>2]|0)+4>>0]|0,c[N>>2]|0,c[S>>2]|0,0);c[U>>2]=0;f=c[U>>2]|0;i=T;return f|0}function yE(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+48|0;p=o;j=o+40|0;h=o+16|0;l=o+20|0;m=o+24|0;n=o+28|0;k=o+32|0;q=o+36|0;c[j>>2]=a;c[h>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;if((d[(c[j>>2]|0)+450>>0]|0|0)!=2){i=o;return}c[k>>2]=c[(c[j>>2]|0)+8>>2];a=c[c[j>>2]>>2]|0;l=c[l>>2]|0;f=c[m>>2]|0;e=(c[n>>2]|0)!=0?31752:1784;b=vE(c[h>>2]|0)|0;c[p>>2]=l;c[p+4>>2]=f;c[p+8>>2]=e;c[p+12>>2]=b;c[q>>2]=cf(a,31712,p)|0;Sv(c[k>>2]|0,157,c[(c[j>>2]|0)+464>>2]|0,0,0,c[q>>2]|0,-1)|0;i=o;return}function zE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;h=f;j=f+4|0;e=f+8|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if((c[(c[h>>2]|0)+52>>2]|0)!=0){c[e>>2]=zE(c[g>>2]|0,c[(c[h>>2]|0)+52>>2]|0,c[j>>2]|0)|0}else{c[e>>2]=0}if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=f;return a|0}if((c[j>>2]|0)>=(c[c[c[h>>2]>>2]>>2]|0)){a=c[e>>2]|0;i=f;return a|0}c[e>>2]=Jw(c[g>>2]|0,c[(c[(c[c[h>>2]>>2]|0)+4>>2]|0)+((c[j>>2]|0)*20|0)>>2]|0)|0;a=c[e>>2]|0;i=f;return a|0}function AE(b,d,f){b=b|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+48|0;p=n+40|0;l=n+36|0;s=n+32|0;h=n+28|0;q=n+24|0;r=n+20|0;m=n+12|0;o=n+8|0;g=n+4|0;j=n;k=n+16|0;c[p>>2]=b;c[l>>2]=d;c[s>>2]=f;c[h>>2]=c[(c[l>>2]|0)+48>>2];c[q>>2]=c[c[(c[l>>2]|0)+48>>2]>>2];c[r>>2]=c[c[p>>2]>>2];c[m>>2]=By(c[r>>2]|0,(c[q>>2]|0)+(c[s>>2]|0)|0,1)|0;if((c[m>>2]|0)==0){s=c[m>>2]|0;i=n;return s|0}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[q>>2]|0)){break}c[g>>2]=(c[(c[h>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0);c[j>>2]=c[c[g>>2]>>2];f=c[p>>2]|0;if((c[(c[j>>2]|0)+4>>2]&256|0)!=0){c[k>>2]=Jw(f,c[j>>2]|0)|0}else{c[k>>2]=zE(f,c[l>>2]|0,(e[(c[g>>2]|0)+16>>1]|0)-1|0)|0;if((c[k>>2]|0)==0){c[k>>2]=c[(c[r>>2]|0)+8>>2]}s=ux(c[p>>2]|0,c[j>>2]|0,c[c[k>>2]>>2]|0)|0;c[(c[(c[h>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0)>>2]=s}c[(c[m>>2]|0)+20+(c[o>>2]<<2)>>2]=c[k>>2];a[(c[(c[m>>2]|0)+16>>2]|0)+(c[o>>2]|0)>>0]=a[(c[(c[h>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0)+12>>0]|0;c[o>>2]=(c[o>>2]|0)+1}s=c[m>>2]|0;i=n;return s|0}function BE(b,e,f,g,h,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;n=i;i=i+80|0;y=n+64|0;v=n+60|0;o=n+56|0;x=n+52|0;u=n+48|0;s=n+44|0;A=n+40|0;D=n+36|0;q=n+32|0;p=n+24|0;r=n+20|0;t=n+16|0;B=n+12|0;C=n+8|0;m=n+4|0;z=n;w=n+28|0;c[v>>2]=b;c[o>>2]=e;c[x>>2]=f;c[u>>2]=g;c[s>>2]=h;c[A>>2]=j;c[D>>2]=k;c[q>>2]=l;c[p>>2]=c[(c[v>>2]|0)+8>>2];c[t>>2]=sy(c[p>>2]|0)|0;c[r>>2]=cz(c[p>>2]|0)|0;if((c[A>>2]|0)!=0){c[B>>2]=oy(c[p>>2]|0,45,c[A>>2]|0)|0;g=c[p>>2]|0;f=c[(c[x>>2]|0)+8>>2]|0;e=(c[A>>2]|0)+1|0;b=c[(c[x>>2]|0)+12>>2]|0;c[C>>2]=Sv(g,41,f,e,b,Cy(c[D>>2]|0)|0,-6)|0;Tv(c[p>>2]|0,42,(c[C>>2]|0)+2|0,c[r>>2]|0,(c[C>>2]|0)+2|0)|0;jw(c[p>>2]|0,c[B>>2]|0);Tv(c[p>>2]|0,33,c[(c[x>>2]|0)+8>>2]|0,(c[A>>2]|0)+1|0,(c[(c[x>>2]|0)+12>>2]|0)-1|0)|0;Qv(c[p>>2]|0,25,1,c[A>>2]|0)|0}if((a[(c[c[v>>2]>>2]|0)+64>>0]|0)!=0){c[y>>2]=0;b=c[y>>2]|0;i=n;return b|0}oE(c[p>>2]|0,c[(c[o>>2]|0)+12>>2]|0,c[r>>2]|0);switch(d[c[u>>2]>>0]|0){case 11:{b=Rz(c[c[(c[c[o>>2]>>2]|0)+4>>2]>>2]|0,a[(c[u>>2]|0)+1>>0]|0)|0;a[(c[u>>2]|0)+1>>0]=b;c[w>>2]=Wv(c[v>>2]|0)|0;Sv(c[p>>2]|0,48,c[(c[x>>2]|0)+8>>2]|0,1,c[w>>2]|0,(c[u>>2]|0)+1|0,1)|0;Az(c[v>>2]|0,c[(c[x>>2]|0)+8>>2]|0,1);Qv(c[p>>2]|0,107,c[(c[u>>2]|0)+4>>2]|0,c[w>>2]|0)|0;Xv(c[v>>2]|0,c[w>>2]|0);break};case 13:{if((c[(c[u>>2]|0)+8>>2]|0)==0){b=fz(c[v>>2]|0,c[(c[x>>2]|0)+12>>2]|0)|0;c[(c[u>>2]|0)+8>>2]=b;c[(c[u>>2]|0)+12>>2]=c[(c[x>>2]|0)+12>>2]}eE(c[v>>2]|0,c[(c[x>>2]|0)+8>>2]|0,c[(c[u>>2]|0)+8>>2]|0,c[(c[u>>2]|0)+12>>2]|0);oy(c[p>>2]|0,22,c[(c[u>>2]|0)+4>>2]|0)|0;break};case 12:case 14:{c[m>>2]=Wv(c[v>>2]|0)|0;c[z>>2]=Wv(c[v>>2]|0)|0;Tv(c[p>>2]|0,48,c[(c[x>>2]|0)+8>>2]|0,c[(c[x>>2]|0)+12>>2]|0,c[m>>2]|0)|0;Qv(c[p>>2]|0,69,c[(c[u>>2]|0)+4>>2]|0,c[z>>2]|0)|0;Tv(c[p>>2]|0,70,c[(c[u>>2]|0)+4>>2]|0,c[m>>2]|0,c[z>>2]|0)|0;gf(c[p>>2]|0,8);Xv(c[v>>2]|0,c[z>>2]|0);Xv(c[v>>2]|0,c[m>>2]|0);break};case 10:{eE(c[v>>2]|0,c[(c[x>>2]|0)+8>>2]|0,c[(c[u>>2]|0)+4>>2]|0,1);break};default:{Qv(c[p>>2]|0,35,c[(c[x>>2]|0)+8>>2]|0,c[(c[x>>2]|0)+12>>2]|0)|0;Az(c[v>>2]|0,c[(c[x>>2]|0)+8>>2]|0,c[(c[x>>2]|0)+12>>2]|0)}}if((c[(c[o>>2]|0)+8>>2]|0)!=0){Tv(c[p>>2]|0,136,c[(c[o>>2]|0)+8>>2]|0,c[q>>2]|0,-1)|0}$y(c[p>>2]|0,c[r>>2]|0);oy(c[p>>2]|0,18,c[s>>2]|0)|0;c[y>>2]=c[t>>2];b=c[y>>2]|0;i=n;return b|0}function CE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;j=f+16|0;h=f;k=f+4|0;l=f+8|0;g=f+12|0;c[j>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;if((c[h>>2]|0)==0){i=f;return}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[c[h>>2]>>2]|0)){break}a=DE(c[j>>2]|0,c[(c[(c[h>>2]|0)+4>>2]|0)+((c[g>>2]|0)*20|0)>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;c[(c[(c[h>>2]|0)+4>>2]|0)+((c[g>>2]|0)*20|0)>>2]=a;c[g>>2]=(c[g>>2]|0)+1}i=f;return}function DE(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+32|0;k=n+20|0;q=n;l=n+4|0;j=n+8|0;m=n+12|0;p=n+16|0;c[q>>2]=e;c[l>>2]=f;c[j>>2]=g;c[m>>2]=h;if((c[l>>2]|0)==0){c[k>>2]=0;e=c[k>>2]|0;i=n;return e|0}do{if((d[c[l>>2]>>0]|0)==154){if((c[(c[l>>2]|0)+28>>2]|0)==(c[j>>2]|0)){if((b[(c[l>>2]|0)+32>>1]|0)<0){a[c[l>>2]>>0]=101;break}else{c[p>>2]=hx(c[q>>2]|0,c[(c[(c[m>>2]|0)+4>>2]|0)+((b[(c[l>>2]|0)+32>>1]|0)*20|0)>>2]|0,0)|0;gu(c[q>>2]|0,c[l>>2]|0);c[l>>2]=c[p>>2];break}}else{o=8}}else{o=8}}while(0);do{if((o|0)==8){p=DE(c[q>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[j>>2]|0,c[m>>2]|0)|0;c[(c[l>>2]|0)+12>>2]=p;p=DE(c[q>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[j>>2]|0,c[m>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=p;p=c[q>>2]|0;o=(c[l>>2]|0)+20|0;if((c[(c[l>>2]|0)+4>>2]&2048|0)!=0){EE(p,c[o>>2]|0,c[j>>2]|0,c[m>>2]|0);break}else{CE(p,c[o>>2]|0,c[j>>2]|0,c[m>>2]|0);break}}}while(0);c[k>>2]=c[l>>2];e=c[k>>2]|0;i=n;return e|0}function EE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;h=l+24|0;n=l;k=l+4|0;f=l+8|0;m=l+12|0;j=l+16|0;g=l+20|0;c[h>>2]=a;c[n>>2]=b;c[k>>2]=d;c[f>>2]=e;if((c[n>>2]|0)==0){i=l;return}CE(c[h>>2]|0,c[c[n>>2]>>2]|0,c[k>>2]|0,c[f>>2]|0);CE(c[h>>2]|0,c[(c[n>>2]|0)+40>>2]|0,c[k>>2]|0,c[f>>2]|0);CE(c[h>>2]|0,c[(c[n>>2]|0)+48>>2]|0,c[k>>2]|0,c[f>>2]|0);a=DE(c[h>>2]|0,c[(c[n>>2]|0)+44>>2]|0,c[k>>2]|0,c[f>>2]|0)|0;c[(c[n>>2]|0)+44>>2]=a;a=DE(c[h>>2]|0,c[(c[n>>2]|0)+36>>2]|0,c[k>>2]|0,c[f>>2]|0)|0;c[(c[n>>2]|0)+36>>2]=a;EE(c[h>>2]|0,c[(c[n>>2]|0)+52>>2]|0,c[k>>2]|0,c[f>>2]|0);c[m>>2]=c[(c[n>>2]|0)+32>>2];if((c[m>>2]|0)==0){i=l;return}c[g>>2]=c[c[m>>2]>>2];c[j>>2]=(c[m>>2]|0)+8;while(1){if((c[g>>2]|0)<=0){break}EE(c[h>>2]|0,c[(c[j>>2]|0)+20>>2]|0,c[k>>2]|0,c[f>>2]|0);c[g>>2]=(c[g>>2]|0)+ -1;c[j>>2]=(c[j>>2]|0)+72}i=l;return}function FE(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;k=l+24|0;m=l;h=l+4|0;g=l+8|0;n=l+12|0;o=l+16|0;j=l+20|0;c[k>>2]=b;c[m>>2]=e;c[h>>2]=f;c[g>>2]=c[c[k>>2]>>2];if((c[(c[g>>2]|0)+24>>2]&524288|0)==0){i=l;return}if((a[(c[h>>2]|0)+44>>0]&16|0)!=0){i=l;return}if((c[(c[h>>2]|0)+12>>2]|0)!=0){i=l;return}c[n>>2]=0;c[o>>2]=Ov(c[k>>2]|0)|0;do{if((zw(c[h>>2]|0)|0)==0){c[j>>2]=c[(c[h>>2]|0)+16>>2];while(1){if((c[j>>2]|0)==0){break}if((d[(c[j>>2]|0)+24>>0]|0|0)!=0){break}if((c[(c[g>>2]|0)+24>>2]&16777216|0)!=0){break}c[j>>2]=c[(c[j>>2]|0)+4>>2]}if((c[j>>2]|0)!=0){c[n>>2]=cz(c[o>>2]|0)|0;Qv(c[o>>2]|0,131,1,c[n>>2]|0)|0;break}else{i=l;return}}}while(0);a[(c[k>>2]|0)+438>>0]=1;b=c[k>>2]|0;Yu(b,cy(c[g>>2]|0,c[m>>2]|0,0)|0,0);a[(c[k>>2]|0)+438>>0]=0;if((c[(c[g>>2]|0)+24>>2]&16777216|0)==0){b=c[o>>2]|0;Qv(b,131,0,(sy(c[o>>2]|0)|0)+2|0)|0;_y(c[k>>2]|0,787,2,0,-2,4)}if((c[n>>2]|0)==0){i=l;return}$y(c[o>>2]|0,c[n>>2]|0);i=l;return}function GE(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+48|0;o=m;h=m+36|0;n=m+32|0;k=m+28|0;p=m+40|0;j=m+16|0;l=m+12|0;q=m+20|0;g=m+24|0;c[h>>2]=b;c[n>>2]=d;c[k>>2]=e;c[p>>2]=f;c[l>>2]=c[c[h>>2]>>2];c[g>>2]=(c[(c[l>>2]|0)+16>>2]|0)+(c[k>>2]<<4);c[j>>2]=Ov(c[h>>2]|0)|0;$v(c[h>>2]|0,1,c[k>>2]|0);if((a[(c[n>>2]|0)+44>>0]&16|0)!=0){Yv(c[j>>2]|0,141)|0}c[q>>2]=gw(c[h>>2]|0,c[n>>2]|0)|0;while(1){if((c[q>>2]|0)==0){break}fA(c[h>>2]|0,c[q>>2]|0);c[q>>2]=c[(c[q>>2]|0)+32>>2]}if((a[(c[n>>2]|0)+44>>0]&8|0)!=0){b=c[h>>2]|0;d=c[c[n>>2]>>2]|0;c[o>>2]=c[c[g>>2]>>2];c[o+4>>2]=d;Nv(b,32064,o)}b=c[h>>2]|0;e=(c[k>>2]|0)==1?21432:21456;d=c[c[n>>2]>>2]|0;c[o>>2]=c[c[g>>2]>>2];c[o+4>>2]=e;c[o+8>>2]=d;Nv(b,32112,o);if((c[p>>2]|0)==0){if((a[(c[n>>2]|0)+44>>0]&16|0)==0){HE(c[h>>2]|0,c[n>>2]|0)}}if((a[(c[n>>2]|0)+44>>0]&16|0)==0){e=c[j>>2]|0;d=c[k>>2]|0;b=c[n>>2]|0;b=c[b>>2]|0;Sv(e,121,d,0,0,b,0)|0;b=c[h>>2]|0;d=c[k>>2]|0;Pv(b,d);d=c[l>>2]|0;b=c[k>>2]|0;IE(d,b);i=m;return}Sv(c[j>>2]|0,148,c[k>>2]|0,0,0,c[c[n>>2]>>2]|0,0)|0;e=c[j>>2]|0;d=c[k>>2]|0;b=c[n>>2]|0;b=c[b>>2]|0;Sv(e,121,d,0,0,b,0)|0;b=c[h>>2]|0;d=c[k>>2]|0;Pv(b,d);d=c[l>>2]|0;b=c[k>>2]|0;IE(d,b);i=m;return}function HE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;m=k+28|0;d=k;l=k+4|0;h=k+8|0;j=k+12|0;f=k+16|0;g=k+20|0;n=k+24|0;c[m>>2]=a;c[d>>2]=b;c[l>>2]=c[(c[d>>2]|0)+32>>2];c[h>>2]=0;while(1){c[f>>2]=0;if((c[h>>2]|0)==0){e=4}else{if((c[l>>2]|0)<(c[h>>2]|0)){e=4}}if((e|0)==4){e=0;c[f>>2]=c[l>>2]}c[j>>2]=c[(c[d>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break}c[g>>2]=c[(c[j>>2]|0)+44>>2];if((c[h>>2]|0)==0){e=9}else{if((c[g>>2]|0)<(c[h>>2]|0)){e=9}}if((e|0)==9){e=0;if((c[g>>2]|0)>(c[f>>2]|0)){c[f>>2]=c[g>>2]}}c[j>>2]=c[(c[j>>2]|0)+20>>2]}if((c[f>>2]|0)==0){break}c[n>>2]=ef(c[c[m>>2]>>2]|0,c[(c[d>>2]|0)+68>>2]|0)|0;PA(c[m>>2]|0,c[f>>2]|0,c[n>>2]|0);c[h>>2]=c[f>>2]}i=k;return}function IE(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f;j=f+4|0;k=f+8|0;c[g>>2]=a;c[h>>2]=d;if((b[(c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]|0)+78>>1]&2|0)!=2){i=f;return}c[j>>2]=c[(c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]|0)+16>>2];while(1){if((c[j>>2]|0)==0){break}c[k>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[k>>2]|0)+12>>2]|0)!=0){JE(c[g>>2]|0,c[k>>2]|0);c[(c[k>>2]|0)+4>>2]=0;b[(c[k>>2]|0)+38>>1]=0}c[j>>2]=c[c[j>>2]>>2]}a=(c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]|0)+78|0;b[a>>1]=(e[a>>1]|0)&-3;i=f;return}function JE(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;f=e;h=e+4|0;j=e+8|0;c[g>>2]=a;c[f>>2]=d;a=c[(c[f>>2]|0)+4>>2]|0;c[j>>2]=a;if((a|0)==0){i=e;return}c[h>>2]=0;while(1){d=c[g>>2]|0;if((c[h>>2]|0)>=(b[(c[f>>2]|0)+38>>1]|0)){break}cc(d,c[c[j>>2]>>2]|0);gu(c[g>>2]|0,c[(c[j>>2]|0)+4>>2]|0);cc(c[g>>2]|0,c[(c[j>>2]|0)+8>>2]|0);cc(c[g>>2]|0,c[(c[j>>2]|0)+12>>2]|0);cc(c[g>>2]|0,c[(c[j>>2]|0)+16>>2]|0);c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+24}cc(d,c[(c[f>>2]|0)+4>>2]|0);i=e;return}function KE(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+144|0;l=h+132|0;k=h+92|0;n=h+80|0;o=h+84|0;j=h+88|0;p=h;m=h+96|0;q=h+128|0;c[l>>2]=b;c[k>>2]=d;c[n>>2]=e;c[o>>2]=f;c[j>>2]=g;c[m+0>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[m+20>>2]=0;c[m+24>>2]=0;c[m+28>>2]=0;f=p+0|0;g=f+80|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[p>>2]=1;c[p+16>>2]=c[c[k>>2]>>2];c[p+24>>2]=c[k>>2];c[p+48>>2]=-1;c[m>>2]=c[l>>2];c[m+4>>2]=p;a[m+28>>0]=c[n>>2];if((bx(m,c[o>>2]|0)|0)!=0){i=h;return}if((c[j>>2]|0)==0){i=h;return}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[c[j>>2]>>2]|0)){j=7;break}if((bx(m,c[(c[(c[j>>2]|0)+4>>2]|0)+((c[q>>2]|0)*20|0)>>2]|0)|0)!=0){j=7;break}c[q>>2]=(c[q>>2]|0)+1}if((j|0)==7){i=h;return}}function LE(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;f=g+12|0;j=g;k=g+4|0;h=g+8|0;c[j>>2]=a;c[k>>2]=d;c[h>>2]=e;while(1){a=c[k>>2]|0;c[k>>2]=a+ -1;if((a|0)<=0){e=5;break}d=c[h>>2]|0;a=c[j>>2]|0;c[j>>2]=a+2;if((d|0)==(b[a>>1]|0)){e=4;break}}if((e|0)==4){c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}else if((e|0)==5){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}return 0}function ME(a){a=a|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;g=h+12|0;f=h;k=h+4|0;j=h+8|0;l=h+16|0;c[g>>2]=a;c[f>>2]=0;c[j>>2]=c[(c[(c[g>>2]|0)+12>>2]|0)+4>>2];c[k>>2]=0;while(1){if((c[k>>2]|0)>=(e[(c[g>>2]|0)+52>>1]|0)){break}b[l>>1]=b[(c[(c[g>>2]|0)+4>>2]|0)+(c[k>>2]<<1)>>1]|0;if((b[l>>1]|0)<0){a=1}else{a=d[(c[j>>2]|0)+((b[(c[(c[g>>2]|0)+4>>2]|0)+(c[k>>2]<<1)>>1]|0)*24|0)+22>>0]|0}c[f>>2]=(c[f>>2]|0)+a;c[k>>2]=(c[k>>2]|0)+1}a=Kw(c[f>>2]<<2,0)|0;b[(c[g>>2]|0)+48>>1]=a;i=h;return}function NE(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;OE(c[f>>2]|0,c[g>>2]|0);if((c[f>>2]|0)==0){e=3}else{if((c[(c[f>>2]|0)+512>>2]|0)==0){e=3}}if((e|0)==3){Ch(c[(c[g>>2]|0)+40>>2]|0)}gu(c[f>>2]|0,c[(c[g>>2]|0)+36>>2]|0);cc(c[f>>2]|0,c[(c[g>>2]|0)+16>>2]|0);if(((d[(c[g>>2]|0)+55>>0]|0)>>>4&1|0)==0){b=c[f>>2]|0;a=c[g>>2]|0;cc(b,a);i=h;return}cc(c[f>>2]|0,c[(c[g>>2]|0)+32>>2]|0);b=c[f>>2]|0;a=c[g>>2]|0;cc(b,a);i=h;return}function OE(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return}function PE(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Lz(c[d>>2]|0,2)|0;i=b;return a|0}function QE(f,g){f=f|0;g=g|0;var h=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;p=i;i=i+48|0;r=p+40|0;q=p+36|0;l=p+32|0;m=p+28|0;o=p+24|0;n=p+20|0;t=p+12|0;h=p+8|0;u=p+4|0;s=p;k=p+16|0;c[r>>2]=f;c[q>>2]=g;c[h>>2]=c[c[r>>2]>>2];c[u>>2]=c[(c[r>>2]|0)+8>>2];if((c[(c[r>>2]|0)+416>>2]|0)!=0){a[(Kz(c[u>>2]|0,c[(c[r>>2]|0)+416>>2]|0)|0)>>0]=117}if((c[(c[r>>2]|0)+420>>2]|0)!=0){a[(Kz(c[u>>2]|0,c[(c[r>>2]|0)+420>>2]|0)|0)>>0]=16}do{if((b[(c[q>>2]|0)+36>>1]|0)>=0){c[s>>2]=Pu(c[r>>2]|0,0,0)|0;if((c[s>>2]|0)==0){i=p;return}f=pe(c[c[r>>2]>>2]|0,c[(c[(c[q>>2]|0)+4>>2]|0)+((b[(c[q>>2]|0)+36>>1]|0)*24|0)>>2]|0)|0;c[(c[(c[s>>2]|0)+4>>2]|0)+4>>2]=f;a[(c[(c[s>>2]|0)+4>>2]|0)+12>>0]=a[(c[r>>2]|0)+448>>0]|0;c[m>>2]=Fu(c[r>>2]|0,0,0,0,c[s>>2]|0,d[(c[q>>2]|0)+45>>0]|0,0,0,0,0)|0;if((c[m>>2]|0)==0){i=p;return}else{f=(c[m>>2]|0)+55|0;a[f>>0]=a[f>>0]&-4|2;b[(c[q>>2]|0)+36>>1]=-1;break}}else{c[m>>2]=Dy(c[q>>2]|0)|0}}while(0);f=(c[m>>2]|0)+55|0;a[f>>0]=a[f>>0]&-33|32;c[o>>2]=e[(c[m>>2]|0)+50>>1]|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break}a[(c[(c[q>>2]|0)+4>>2]|0)+((b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]|0)*24|0)+20>>0]=1;c[n>>2]=(c[n>>2]|0)+1}f=(c[m>>2]|0)+55|0;a[f>>0]=a[f>>0]&-9|8;c[(c[m>>2]|0)+44>>2]=c[(c[q>>2]|0)+32>>2];c[l>>2]=c[(c[q>>2]|0)+8>>2];a:while(1){if((c[l>>2]|0)==0){break}b:do{if((a[(c[l>>2]|0)+55>>0]&3|0)!=2){c[k>>2]=0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break}if((LE(c[(c[l>>2]|0)+4>>2]|0,e[(c[l>>2]|0)+50>>1]|0,b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]|0)|0)==0){c[k>>2]=(c[k>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}if((c[k>>2]|0)==0){b[(c[l>>2]|0)+52>>1]=b[(c[l>>2]|0)+50>>1]|0;break}if((VE(c[h>>2]|0,c[l>>2]|0,(e[(c[l>>2]|0)+50>>1]|0)+(c[k>>2]|0)|0)|0)!=0){j=38;break a}c[n>>2]=0;c[t>>2]=e[(c[l>>2]|0)+50>>1]|0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break b}if((LE(c[(c[l>>2]|0)+4>>2]|0,e[(c[l>>2]|0)+50>>1]|0,b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]|0)|0)==0){b[(c[(c[l>>2]|0)+4>>2]|0)+(c[t>>2]<<1)>>1]=b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]|0;c[(c[(c[l>>2]|0)+32>>2]|0)+(c[t>>2]<<2)>>2]=c[(c[(c[m>>2]|0)+32>>2]|0)+(c[n>>2]<<2)>>2];c[t>>2]=(c[t>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}}}while(0);c[l>>2]=c[(c[l>>2]|0)+20>>2]}if((j|0)==38){i=p;return}if((c[o>>2]|0)>=(b[(c[q>>2]|0)+38>>1]|0)){b[(c[m>>2]|0)+52>>1]=b[(c[q>>2]|0)+38>>1]|0;i=p;return}if((VE(c[h>>2]|0,c[m>>2]|0,b[(c[q>>2]|0)+38>>1]|0)|0)!=0){i=p;return}c[n>>2]=0;c[t>>2]=c[o>>2];while(1){if((c[n>>2]|0)>=(b[(c[q>>2]|0)+38>>1]|0)){break}if((LE(c[(c[m>>2]|0)+4>>2]|0,c[t>>2]|0,c[n>>2]|0)|0)==0){b[(c[(c[m>>2]|0)+4>>2]|0)+(c[t>>2]<<1)>>1]=c[n>>2];c[(c[(c[m>>2]|0)+32>>2]|0)+(c[t>>2]<<2)>>2]=3640;c[t>>2]=(c[t>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}i=p;return}function RE(a){a=a|0;var e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;f=g+12|0;e=g;j=g+4|0;h=g+8|0;c[f>>2]=a;c[e>>2]=0;c[h>>2]=b[(c[f>>2]|0)+38>>1]|0;c[j>>2]=c[(c[f>>2]|0)+4>>2];while(1){if((c[h>>2]|0)<=0){break}c[e>>2]=(c[e>>2]|0)+(d[(c[j>>2]|0)+22>>0]|0);c[h>>2]=(c[h>>2]|0)+ -1;c[j>>2]=(c[j>>2]|0)+24}if((b[(c[f>>2]|0)+36>>1]|0)>=0){h=c[e>>2]|0;h=h<<2;h=Kw(h,0)|0;j=c[f>>2]|0;j=j+42|0;b[j>>1]=h;i=g;return}c[e>>2]=(c[e>>2]|0)+1;h=c[e>>2]|0;h=h<<2;h=Kw(h,0)|0;j=c[f>>2]|0;j=j+42|0;b[j>>1]=h;i=g;return}function SE(d,e){d=d|0;e=e|0;var f=0,g=0,h=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;h=i;i=i+64|0;k=h;n=h+48|0;u=h+44|0;o=h+40|0;g=h+36|0;f=h+32|0;m=h+28|0;l=h+52|0;p=h+16|0;q=h+12|0;j=h+8|0;r=h+4|0;t=h+20|0;s=h+24|0;c[u>>2]=d;c[o>>2]=e;c[m>>2]=0;c[r>>2]=c[(c[o>>2]|0)+4>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>=(b[(c[o>>2]|0)+38>>1]|0)){break}d=(TE(c[c[r>>2]>>2]|0)|0)+5|0;c[m>>2]=(c[m>>2]|0)+d;c[g>>2]=(c[g>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+24}d=TE(c[c[o>>2]>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+d;if((c[m>>2]|0)<50){c[p>>2]=1784;c[q>>2]=16312;c[j>>2]=30416}else{c[p>>2]=33336;c[q>>2]=33344;c[j>>2]=33352}c[m>>2]=(c[m>>2]|0)+(35+((b[(c[o>>2]|0)+38>>1]|0)*6|0));c[l>>2]=$e(0,c[m>>2]|0)|0;if((c[l>>2]|0)==0){a[(c[u>>2]|0)+64>>0]=1;c[n>>2]=0;d=c[n>>2]|0;i=h;return d|0}yc(c[m>>2]|0,c[l>>2]|0,33360,k)|0;c[f>>2]=Ub(c[l>>2]|0)|0;UE(c[l>>2]|0,f,c[c[o>>2]>>2]|0);d=c[f>>2]|0;c[f>>2]=d+1;a[(c[l>>2]|0)+d>>0]=40;c[r>>2]=c[(c[o>>2]|0)+4>>2];c[g>>2]=0;while(1){e=(c[m>>2]|0)-(c[f>>2]|0)|0;u=(c[l>>2]|0)+(c[f>>2]|0)|0;if((c[g>>2]|0)>=(b[(c[o>>2]|0)+38>>1]|0)){break}yc(e,u,c[p>>2]|0,k)|0;d=Ub((c[l>>2]|0)+(c[f>>2]|0)|0)|0;c[f>>2]=(c[f>>2]|0)+d;c[p>>2]=c[q>>2];UE(c[l>>2]|0,f,c[c[r>>2]>>2]|0);c[s>>2]=c[33376+((a[(c[r>>2]|0)+21>>0]|0)-97<<2)>>2];c[t>>2]=Ub(c[s>>2]|0)|0;fL((c[l>>2]|0)+(c[f>>2]|0)|0,c[s>>2]|0,c[t>>2]|0)|0;c[f>>2]=(c[f>>2]|0)+(c[t>>2]|0);c[g>>2]=(c[g>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+24}c[k>>2]=c[j>>2];yc(e,u,1768,k)|0;c[n>>2]=c[l>>2];d=c[n>>2]|0;i=h;return d|0}function TE(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;c[e>>2]=0;while(1){if((a[c[f>>2]>>0]|0)==0){break}if((a[c[f>>2]>>0]|0)==34){c[e>>2]=(c[e>>2]|0)+1}c[e>>2]=(c[e>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+1}i=d;return(c[e>>2]|0)+2|0}function UE(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;h=k+24|0;j=k;o=k+4|0;m=k+8|0;l=k+12|0;n=k+16|0;g=k+20|0;c[h>>2]=b;c[j>>2]=e;c[o>>2]=f;c[m>>2]=c[o>>2];c[l>>2]=c[c[j>>2]>>2];c[n>>2]=0;while(1){if((a[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)==0){break}if((a[136+(d[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)>>0]&6|0)==0){if((d[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)!=95){break}}c[n>>2]=(c[n>>2]|0)+1}if((a[136+(d[c[m>>2]>>0]|0)>>0]&4|0)!=0){f=1}else{if((Jg(c[m>>2]|0,c[n>>2]|0)|0)!=27){f=1}else{if((d[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)!=0){f=1}else{f=(c[n>>2]|0)==0}}}c[g>>2]=f&1;if((c[g>>2]|0)!=0){o=c[l>>2]|0;c[l>>2]=o+1;a[(c[h>>2]|0)+o>>0]=34}c[n>>2]=0;while(1){if((a[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)==0){break}b=a[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0;o=c[l>>2]|0;c[l>>2]=o+1;a[(c[h>>2]|0)+o>>0]=b;if((d[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)==34){o=c[l>>2]|0;c[l>>2]=o+1;a[(c[h>>2]|0)+o>>0]=34}c[n>>2]=(c[n>>2]|0)+1}if((c[g>>2]|0)==0){b=c[l>>2]|0;o=c[h>>2]|0;b=o+b|0;a[b>>0]=0;b=c[l>>2]|0;o=c[j>>2]|0;c[o>>2]=b;i=k;return}b=c[l>>2]|0;c[l>>2]=b+1;a[(c[h>>2]|0)+b>>0]=34;b=c[l>>2]|0;o=c[h>>2]|0;b=o+b|0;a[b>>0]=0;b=c[l>>2]|0;o=c[j>>2]|0;c[o>>2]=b;i=k;return}function VE(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+20|0;o=h;l=h+4|0;m=h+8|0;k=h+12|0;n=h+16|0;c[o>>2]=d;c[l>>2]=f;c[m>>2]=g;if((e[(c[l>>2]|0)+52>>1]|0|0)>=(c[m>>2]|0)){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}c[n>>2]=(c[m>>2]|0)*7;c[k>>2]=ve(c[o>>2]|0,c[n>>2]|0)|0;if((c[k>>2]|0)==0){c[j>>2]=7;d=c[j>>2]|0;i=h;return d|0}else{fL(c[k>>2]|0,c[(c[l>>2]|0)+32>>2]|0,(e[(c[l>>2]|0)+52>>1]|0)<<2|0)|0;c[(c[l>>2]|0)+32>>2]=c[k>>2];c[k>>2]=(c[k>>2]|0)+(c[m>>2]<<2);fL(c[k>>2]|0,c[(c[l>>2]|0)+4>>2]|0,(e[(c[l>>2]|0)+52>>1]|0)<<1|0)|0;c[(c[l>>2]|0)+4>>2]=c[k>>2];c[k>>2]=(c[k>>2]|0)+(c[m>>2]<<1);fL(c[k>>2]|0,c[(c[l>>2]|0)+28>>2]|0,e[(c[l>>2]|0)+52>>1]|0|0)|0;c[(c[l>>2]|0)+28>>2]=c[k>>2];b[(c[l>>2]|0)+52>>1]=c[m>>2];d=(c[l>>2]|0)+55|0;a[d>>0]=a[d>>0]&-17|16;c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}return 0}function WE(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;f=b+16|0;e=b;j=b+4|0;g=b+8|0;h=b+12|0;c[f>>2]=a;c[j>>2]=Ov(c[f>>2]|0)|0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+396>>2]|0)){break}c[g>>2]=(c[(c[f>>2]|0)+400>>2]|0)+(c[e>>2]<<4);c[h>>2]=c[c[g>>2]>>2];Sv(c[j>>2]|0,140,c[h>>2]|0,c[(c[g>>2]|0)+4>>2]|0,d[(c[g>>2]|0)+8>>0]|0,c[(c[g>>2]|0)+12>>2]|0,-2)|0;c[e>>2]=(c[e>>2]|0)+1}i=b;return}function XE(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+32|0;h=b+24|0;d=b;e=b+4|0;f=b+8|0;g=b+12|0;k=b+16|0;j=b+20|0;c[h>>2]=a;c[e>>2]=c[c[h>>2]>>2];c[j>>2]=c[(c[h>>2]|0)+8>>2];c[d>>2]=c[(c[h>>2]|0)+404>>2];while(1){if((c[d>>2]|0)==0){break}c[f>>2]=(c[(c[e>>2]|0)+16>>2]|0)+(c[(c[d>>2]|0)+8>>2]<<4);c[g>>2]=c[(c[d>>2]|0)+12>>2];qy(c[h>>2]|0,0,c[(c[d>>2]|0)+8>>2]|0,c[(c[(c[f>>2]|0)+12>>2]|0)+72>>2]|0,52);Tv(c[j>>2]|0,28,0,c[g>>2]|0,(c[g>>2]|0)+1|0)|0;c[k>>2]=sy(c[j>>2]|0)|0;Sv(c[j>>2]|0,97,0,(c[g>>2]|0)-1|0,0,c[c[(c[d>>2]|0)+4>>2]>>2]|0,0)|0;Qv(c[j>>2]|0,105,0,(c[k>>2]|0)+9|0)|0;Tv(c[j>>2]|0,46,0,0,c[g>>2]|0)|0;Tv(c[j>>2]|0,78,(c[g>>2]|0)-1|0,(c[k>>2]|0)+7|0,c[g>>2]|0)|0;gf(c[j>>2]|0,8);Qv(c[j>>2]|0,100,0,(c[g>>2]|0)+1|0)|0;Tv(c[j>>2]|0,46,0,1,c[g>>2]|0)|0;Qv(c[j>>2]|0,16,0,(c[k>>2]|0)+9|0)|0;Qv(c[j>>2]|0,9,0,(c[k>>2]|0)+2|0)|0;Qv(c[j>>2]|0,25,0,c[g>>2]|0)|0;Yv(c[j>>2]|0,58)|0;c[d>>2]=c[c[d>>2]>>2]}i=b;return}function YE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;e=g;f=g+12|0;d=g+8|0;c[f>>2]=a;c[g+4>>2]=b;c[d>>2]=c[(c[f>>2]|0)+8>>2];a=c[f>>2]|0;c[a>>2]=(c[a>>2]|0)+ -1;while(1){if((c[c[f>>2]>>2]|0)<0){break}ju(c[f>>2]|0)|0}bf(c[d>>2]|0,33616,e);c[(c[f>>2]|0)+8>>2]=c[d>>2];i=g;return}function ZE(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;r=i;i=i+80|0;o=r;l=r+72|0;s=r+68|0;B=r+64|0;t=r+60|0;F=r+56|0;z=r+52|0;D=r+48|0;m=r+44|0;n=r+40|0;p=r+76|0;u=r+16|0;G=r+12|0;E=r+4|0;A=r+8|0;C=r+32|0;w=r+20|0;v=r+24|0;x=r+28|0;q=r+36|0;c[l>>2]=b;c[s>>2]=e;c[B>>2]=f;c[t>>2]=g;c[F>>2]=h;c[z>>2]=j;c[D>>2]=k;c[n>>2]=0;c[p>>2]=0;c[m>>2]=ve(c[l>>2]|0,536)|0;if((c[m>>2]|0)==0){c[p>>2]=7;b=c[m>>2]|0;rf(b);b=c[l>>2]|0;e=c[m>>2]|0;cc(b,e);e=c[l>>2]|0;b=c[p>>2]|0;b=Bd(e,b)|0;c[p>>2]=b;b=c[p>>2]|0;i=r;return b|0}c[(c[m>>2]|0)+476>>2]=c[F>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[(c[l>>2]|0)+20>>2]|0)){break}c[G>>2]=c[(c[(c[l>>2]|0)+16>>2]|0)+(c[u>>2]<<4)+4>>2];if((c[G>>2]|0)!=0){c[p>>2]=_E(c[G>>2]|0)|0;if((c[p>>2]|0)!=0){y=7;break}}c[u>>2]=(c[u>>2]|0)+1}if((y|0)==7){c[E>>2]=c[(c[(c[l>>2]|0)+16>>2]|0)+(c[u>>2]<<4)>>2];e=c[l>>2]|0;b=c[p>>2]|0;c[o>>2]=c[E>>2];Rc(e,b,37368,o);b=c[m>>2]|0;rf(b);b=c[l>>2]|0;e=c[m>>2]|0;cc(b,e);e=c[l>>2]|0;b=c[p>>2]|0;b=Bd(e,b)|0;c[p>>2]=b;b=c[p>>2]|0;i=r;return b|0}Ar(c[l>>2]|0);c[c[m>>2]>>2]=c[l>>2];c[(c[m>>2]|0)+424>>2]=0;do{if((c[B>>2]|0)>=0){if((c[B>>2]|0)!=0){if((a[(c[s>>2]|0)+((c[B>>2]|0)-1)>>0]|0)==0){y=17;break}}c[C>>2]=c[(c[l>>2]|0)+92>>2];f=c[l>>2]|0;if((c[B>>2]|0)>(c[C>>2]|0)){Rc(f,18,37400,o);c[p>>2]=Bd(c[l>>2]|0,18)|0;b=c[m>>2]|0;rf(b);b=c[l>>2]|0;e=c[m>>2]|0;cc(b,e);e=c[l>>2]|0;b=c[p>>2]|0;b=Bd(e,b)|0;c[p>>2]=b;b=c[p>>2]|0;i=r;return b|0}c[A>>2]=ft(f,c[s>>2]|0,c[B>>2]|0)|0;if((c[A>>2]|0)!=0){Mf(c[m>>2]|0,c[A>>2]|0,n)|0;cc(c[l>>2]|0,c[A>>2]|0);c[(c[m>>2]|0)+480>>2]=(c[s>>2]|0)+((c[(c[m>>2]|0)+480>>2]|0)-(c[A>>2]|0));break}else{c[(c[m>>2]|0)+480>>2]=(c[s>>2]|0)+(c[B>>2]|0);break}}else{y=17}}while(0);if((y|0)==17){Mf(c[m>>2]|0,c[s>>2]|0,n)|0}if((a[(c[l>>2]|0)+64>>0]|0)!=0){c[(c[m>>2]|0)+12>>2]=7}if((c[(c[m>>2]|0)+12>>2]|0)==101){c[(c[m>>2]|0)+12>>2]=0}if((a[(c[m>>2]|0)+17>>0]|0)!=0){$E(c[m>>2]|0)}if((a[(c[l>>2]|0)+64>>0]|0)!=0){c[(c[m>>2]|0)+12>>2]=7}if((c[D>>2]|0)!=0){c[c[D>>2]>>2]=c[(c[m>>2]|0)+480>>2]}c[p>>2]=c[(c[m>>2]|0)+12>>2];a:do{if((c[p>>2]|0)==0){if((c[(c[m>>2]|0)+8>>2]|0)!=0){if((d[(c[m>>2]|0)+450>>0]|0)!=0){A=c[(c[m>>2]|0)+8>>2]|0;if((d[(c[m>>2]|0)+450>>0]|0)==2){rA(A,4);c[w>>2]=8;c[v>>2]=12}else{rA(A,8);c[w>>2]=0;c[v>>2]=8}c[u>>2]=c[w>>2];while(1){if((c[u>>2]|0)>=(c[v>>2]|0)){break a}sA(c[(c[m>>2]|0)+8>>2]|0,(c[u>>2]|0)-(c[w>>2]|0)|0,0,c[37424+(c[u>>2]<<2)>>2]|0,0)|0;c[u>>2]=(c[u>>2]|0)+1}}}}}while(0);if((d[(c[l>>2]|0)+137>>0]|0)==0){c[x>>2]=c[(c[m>>2]|0)+8>>2];aF(c[x>>2]|0,c[s>>2]|0,(c[(c[m>>2]|0)+480>>2]|0)-(c[s>>2]|0)|0,c[t>>2]|0)}do{if((c[(c[m>>2]|0)+8>>2]|0)!=0){if((c[p>>2]|0)==0){if((d[(c[l>>2]|0)+64>>0]|0)==0){y=43;break}}Ad(c[(c[m>>2]|0)+8>>2]|0)|0}else{y=43}}while(0);if((y|0)==43){c[c[z>>2]>>2]=c[(c[m>>2]|0)+8>>2]}t=c[l>>2]|0;s=c[p>>2]|0;if((c[n>>2]|0)!=0){c[o>>2]=c[n>>2];Rc(t,s,1768,o);cc(c[l>>2]|0,c[n>>2]|0)}else{Rc(t,s,0,o)}while(1){if((c[(c[m>>2]|0)+528>>2]|0)==0){break}c[q>>2]=c[(c[m>>2]|0)+528>>2];c[(c[m>>2]|0)+528>>2]=c[(c[q>>2]|0)+4>>2];cc(c[l>>2]|0,c[q>>2]|0)}b=c[m>>2]|0;rf(b);b=c[l>>2]|0;e=c[m>>2]|0;cc(b,e);e=c[l>>2]|0;b=c[p>>2]|0;b=Bd(e,b)|0;c[p>>2]=b;b=c[p>>2]|0;i=r;return b|0}function _E(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;Uc(c[e>>2]|0);c[b>>2]=bF(c[e>>2]|0,1,1)|0;i=d;return c[b>>2]|0}function $E(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;l=d+24|0;g=d;h=d+4|0;k=d+8|0;f=d+12|0;j=d+16|0;e=d+20|0;c[l>>2]=b;c[g>>2]=c[c[l>>2]>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[g>>2]|0)+20>>2]|0)){b=14;break}c[j>>2]=0;c[e>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+4>>2];if((c[e>>2]|0)!=0){if((Yc(c[e>>2]|0)|0)==0){c[k>>2]=Wc(c[e>>2]|0,0)|0;if((c[k>>2]|0)==7|(c[k>>2]|0)==3082){a[(c[g>>2]|0)+64>>0]=1}if((c[k>>2]|0)!=0){b=14;break}c[j>>2]=1}Xc(c[e>>2]|0,1,f);if((c[f>>2]|0)!=(c[c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]>>2]|0)){Hy(c[g>>2]|0,c[h>>2]|0);c[(c[l>>2]|0)+12>>2]=17}if((c[j>>2]|0)!=0){Ny(c[e>>2]|0)|0}}c[h>>2]=(c[h>>2]|0)+1}if((b|0)==14){i=d;return}}function aF(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;h=g+12|0;j=g;k=g+4|0;l=g+8|0;c[h>>2]=a;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;if((c[h>>2]|0)==0){i=g;return}a=ft(c[c[h>>2]>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;c[(c[h>>2]|0)+168>>2]=a;a=(c[h>>2]|0)+88|0;b[a>>1]=b[a>>1]&-1025|(c[l>>2]&255&1)<<10&65535;i=g;return}function bF(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+32|0;l=o+16|0;p=o;j=o+4|0;n=o+20|0;q=o+12|0;m=o+8|0;c[p>>2]=f;c[j>>2]=g;a[n>>0]=h;c[q>>2]=c[(c[p>>2]|0)+4>>2];if((a[(c[p>>2]|0)+9>>0]|0)==0){c[l>>2]=0;f=c[l>>2]|0;i=o;return f|0}if((c[(c[q>>2]|0)+76>>2]|0)!=(c[p>>2]|0)){if((b[(c[q>>2]|0)+22>>1]&32|0)!=0){c[l>>2]=262;f=c[l>>2]|0;i=o;return f|0}}c[m>>2]=c[(c[q>>2]|0)+72>>2];while(1){if((c[m>>2]|0)==0){k=15;break}if((c[c[m>>2]>>2]|0)!=(c[p>>2]|0)){if((c[(c[m>>2]|0)+4>>2]|0)==(c[j>>2]|0)){if((d[(c[m>>2]|0)+8>>0]|0)!=(d[n>>0]|0)){break}}}c[m>>2]=c[(c[m>>2]|0)+12>>2]}if((k|0)==15){c[l>>2]=0;f=c[l>>2]|0;i=o;return f|0}if((d[n>>0]|0)==2){f=(c[q>>2]|0)+22|0;b[f>>1]=e[f>>1]|64}c[l>>2]=262;f=c[l>>2]|0;i=o;return f|0}function cF(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+224|0;g=f+220|0;h=f+208|0;l=f;k=f+212|0;j=f+216|0;c[g>>2]=a;c[h>>2]=d;fL(l|0,c[g>>2]|0,208)|0;fL(c[g>>2]|0,c[h>>2]|0,208)|0;fL(c[h>>2]|0,l|0,208)|0;c[k>>2]=c[(c[g>>2]|0)+52>>2];c[(c[g>>2]|0)+52>>2]=c[(c[h>>2]|0)+52>>2];c[(c[h>>2]|0)+52>>2]=c[k>>2];c[k>>2]=c[(c[g>>2]|0)+48>>2];c[(c[g>>2]|0)+48>>2]=c[(c[h>>2]|0)+48>>2];c[(c[h>>2]|0)+48>>2]=c[k>>2];c[j>>2]=c[(c[g>>2]|0)+168>>2];c[(c[g>>2]|0)+168>>2]=c[(c[h>>2]|0)+168>>2];c[(c[h>>2]|0)+168>>2]=c[j>>2];a=(c[h>>2]|0)+88|0;b[a>>1]=b[a>>1]&-1025|((e[(c[g>>2]|0)+88>>1]|0)>>>10&1&1)<<10&65535;i=f;return}function dF(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[(c[d>>2]|0)+80>>2]=0;i=b;return}function eF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;f=k+20|0;d=k;g=k+4|0;h=k+8|0;l=k+12|0;j=k+16|0;c[f>>2]=a;c[d>>2]=b;c[g>>2]=c[(c[d>>2]|0)+16>>2];while(1){if((c[g>>2]|0)==0){break}if((c[f>>2]|0)!=0){if((c[(c[f>>2]|0)+512>>2]|0)==0){e=5}}else{e=5}if((e|0)==5){e=0;b=c[(c[g>>2]|0)+12>>2]|0;if((c[(c[g>>2]|0)+16>>2]|0)!=0){c[(c[(c[g>>2]|0)+16>>2]|0)+12>>2]=b}else{c[l>>2]=b;b=c[g>>2]|0;if((c[l>>2]|0)!=0){b=c[(c[b+12>>2]|0)+8>>2]|0}else{b=c[b+8>>2]|0}c[j>>2]=b;m=(c[(c[d>>2]|0)+68>>2]|0)+56|0;b=c[j>>2]|0;a=Ub(c[j>>2]|0)|0;Eh(m,b,a,c[l>>2]|0)|0}if((c[(c[g>>2]|0)+12>>2]|0)!=0){c[(c[(c[g>>2]|0)+12>>2]|0)+16>>2]=c[(c[g>>2]|0)+16>>2]}}FD(c[f>>2]|0,c[(c[g>>2]|0)+28>>2]|0);FD(c[f>>2]|0,c[(c[g>>2]|0)+32>>2]|0);c[h>>2]=c[(c[g>>2]|0)+4>>2];cc(c[f>>2]|0,c[g>>2]|0);c[g>>2]=c[h>>2]}i=k;return}function fF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[f>>2]=a;c[g>>2]=b;if((c[f>>2]|0)!=0){if((c[(c[f>>2]|0)+512>>2]|0)==0){d=3}}else{d=3}if((d|0)==3){gF(0,c[g>>2]|0)|0}if((c[(c[g>>2]|0)+56>>2]|0)==0){i=e;return}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[g>>2]|0)+52>>2]|0)){break}if((c[h>>2]|0)!=1){cc(c[f>>2]|0,c[(c[(c[g>>2]|0)+56>>2]|0)+(c[h>>2]<<2)>>2]|0)}c[h>>2]=(c[h>>2]|0)+1}cc(c[f>>2]|0,c[(c[g>>2]|0)+56>>2]|0);i=e;return}function gF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;k=d+20|0;g=d;e=d+4|0;f=d+8|0;h=d+12|0;j=d+16|0;c[k>>2]=a;c[g>>2]=b;c[e>>2]=0;c[f>>2]=c[(c[g>>2]|0)+60>>2];c[(c[g>>2]|0)+60>>2]=0;while(1){if((c[f>>2]|0)==0){break}c[h>>2]=c[c[f>>2]>>2];c[j>>2]=c[(c[f>>2]|0)+24>>2];if((c[h>>2]|0)==(c[k>>2]|0)){c[e>>2]=c[f>>2];c[(c[g>>2]|0)+60>>2]=c[e>>2];c[(c[e>>2]|0)+24>>2]=0}else{c[(c[f>>2]|0)+24>>2]=c[(c[h>>2]|0)+324>>2];c[(c[h>>2]|0)+324>>2]=c[f>>2]}c[f>>2]=c[j>>2]}i=d;return c[e>>2]|0}function hF(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;m=f;k=f+4|0;j=f+8|0;l=f+12|0;h=f+16|0;c[m>>2]=a;c[k>>2]=b;c[j>>2]=e;c[l>>2]=c[(c[m>>2]|0)+8>>2];a:while(1){if((c[l>>2]|0)==0){j=11;break}do{if((c[l>>2]|0)!=(c[j>>2]|0)){if(0!=(c[k>>2]|0)){if((c[(c[l>>2]|0)+68>>2]|0)!=(c[k>>2]|0)){break}}e=c[l>>2]|0;if((d[(c[l>>2]|0)+81>>0]|0|0)==1){c[h>>2]=iF(e)|0;if(0!=(c[h>>2]|0)){j=8;break a}else{break}}else{jF(e);break}}}while(0);c[l>>2]=c[(c[l>>2]|0)+8>>2]}if((j|0)==8){c[g>>2]=c[h>>2];m=c[g>>2]|0;i=f;return m|0}else if((j|0)==11){c[g>>2]=0;m=c[g>>2]|0;i=f;return m|0}return 0}function iF(b){b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;f=g;h=g+4|0;c[e>>2]=b;c[f>>2]=kF(c[e>>2]|0,(c[e>>2]|0)+56|0)|0;do{if(0==(d[(c[(c[e>>2]|0)+128>>2]|0)+2>>0]|0|0)){c[h>>2]=nc(c[(c[e>>2]|0)+56>>2]|0)|0;if((c[h>>2]|0)==0){c[f>>2]=7;break}c[f>>2]=lF(c[e>>2]|0,0,c[(c[e>>2]|0)+56>>2]|0,c[h>>2]|0)|0;b=c[h>>2]|0;if((c[f>>2]|0)==0){c[(c[e>>2]|0)+64>>2]=b;break}else{oc(b);break}}}while(0);if((c[f>>2]|0)!=0){h=c[e>>2]|0;h=h+80|0;b=a[h>>0]|0;b=b&255;b=b&-5;b=b&255;a[h>>0]=b;h=c[f>>2]|0;i=g;return h|0}jF(c[e>>2]|0);a[(c[e>>2]|0)+81>>0]=3;h=c[e>>2]|0;h=h+80|0;b=a[h>>0]|0;b=b&255;b=b&-5;b=b&255;a[h>>0]=b;h=c[f>>2]|0;i=g;return h|0}function jF(a){a=a|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+4|0;f=e;c[d>>2]=a;c[f>>2]=0;while(1){if((c[f>>2]|0)>(b[(c[d>>2]|0)+84>>1]|0)){break}Gr(c[(c[d>>2]|0)+128+(c[f>>2]<<2)>>2]|0);c[(c[d>>2]|0)+128+(c[f>>2]<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)+1}b[(c[d>>2]|0)+84>>1]=-1;i=e;return}function kF(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;h=i;i=i+16|0;k=h+8|0;j=h;l=h+4|0;c[k>>2]=f;c[j>>2]=g;if((d[(c[k>>2]|0)+81>>0]|0)!=1){f=c[j>>2]|0;c[f>>2]=0;c[f+4>>2]=0;i=h;return 0}if((e[(c[k>>2]|0)+50>>1]|0)==0){c[l>>2]=b[(c[k>>2]|0)+84>>1]|0;pD(c[(c[k>>2]|0)+128+(c[l>>2]<<2)>>2]|0,e[(c[k>>2]|0)+86+(c[l>>2]<<1)>>1]|0,(c[k>>2]|0)+24|0);f=(c[k>>2]|0)+80|0;a[f>>0]=d[f>>0]|2}k=(c[k>>2]|0)+24|0;l=c[k+4>>2]|0;f=c[j>>2]|0;c[f>>2]=c[k>>2];c[f+4>>2]=l;i=h;return 0}function lF(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=oD(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0,0)|0;i=f;return a|0}function mF(b){b=b|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=b;b=(c[f>>2]|0)+80|0;a[b>>0]=d[b>>0]|0|16;i=e;return}function nF(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;h=m+20|0;j=m;l=m+4|0;k=m+8|0;n=m+12|0;g=m+16|0;c[j>>2]=a;c[l>>2]=b;c[k>>2]=d;c[n>>2]=e;c[g>>2]=f;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];a=c[h>>2]|0;i=m;return a|0}c[l>>2]=(c[l>>2]|0)+7&-8;if(((c[c[k>>2]>>2]|0)+(c[l>>2]|0)|0)>>>0<=(c[n>>2]|0)>>>0){c[j>>2]=c[c[k>>2]>>2];a=c[k>>2]|0;c[a>>2]=(c[a>>2]|0)+(c[l>>2]|0)}else{a=c[g>>2]|0;c[a>>2]=(c[a>>2]|0)+(c[l>>2]|0)}c[h>>2]=c[j>>2];a=c[h>>2]|0;i=m;return a|0}function oF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;j=e;h=e+4|0;g=e+8|0;c[f>>2]=a;c[j>>2]=b;c[h>>2]=d;a:do{if((c[h>>2]|0)!=0){switch(c[j>>2]|0){case-10:{if((c[(c[f>>2]|0)+512>>2]|0)!=0){break a}Cr(c[h>>2]|0);break a};case-11:{if((c[(c[f>>2]|0)+512>>2]|0)!=0){break a}oc(c[h>>2]|0);break a};case-15:case-1:case-13:case-12:{cc(c[f>>2]|0,c[h>>2]|0);break a};case-8:{d=c[h>>2]|0;if((c[(c[f>>2]|0)+512>>2]|0)==0){Rf(d);break a}else{c[g>>2]=d;cc(c[f>>2]|0,c[(c[g>>2]|0)+36>>2]|0);cc(c[f>>2]|0,c[g>>2]|0);break a}};case-6:{if((c[(c[f>>2]|0)+512>>2]|0)!=0){break a}Ch(c[h>>2]|0);break a};case-5:{pF(c[f>>2]|0,c[h>>2]|0);break a};default:{break a}}}}while(0);i=e;return}function pF(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=d;if((c[g>>2]|0)==0){i=e;return}if((b[(c[g>>2]|0)+2>>1]&16|0)==0){i=e;return}cc(c[f>>2]|0,c[g>>2]|0);i=e;return}function qF(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(c[d>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+1;i=b;return}function rF(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+16|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=d;Gd(c[g>>2]|0);g=(c[g>>2]|0)+0|0;a=(c[e>>2]|0)+0|0;d=g+40|0;do{c[g>>2]=c[a>>2];g=g+4|0;a=a+4|0}while((g|0)<(d|0));b[(c[e>>2]|0)+28>>1]=1;c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+36>>2]=0;i=f;return}function sF(){return 37704}function tF(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+96|0;h=e+80|0;j=e+76|0;f=e+72|0;g=e;c[h>>2]=a;c[j>>2]=d;c[f>>2]=0;if((c[j>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}if((c[(c[j>>2]|0)+20>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}a=g+0|0;d=a+72|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(d|0));b[g+36>>1]=1;c[g+8>>2]=c[c[h>>2]>>2];c[g+48>>2]=c[h>>2];c[g>>2]=c[j>>2];rb[c[(c[j>>2]|0)+20>>2]&31](g);cc(c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+36>>2]|0);a=(c[h>>2]|0)+0|0;h=g+8|0;d=a+40|0;do{c[a>>2]=c[h>>2];a=a+4|0;h=h+4|0}while((a|0)<(d|0));c[f>>2]=c[g+64>>2];a=c[f>>2]|0;i=e;return a|0}function uF(a){a=a|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+8|0;f=e;g=e+4|0;c[d>>2]=a;c[f>>2]=c[c[d>>2]>>2];while(1){if((c[f>>2]|0)==0){break}c[g>>2]=c[c[f>>2]>>2];cc(c[(c[d>>2]|0)+4>>2]|0,c[f>>2]|0);c[f>>2]=c[g>>2]}c[c[d>>2]>>2]=0;b[(c[d>>2]|0)+24>>1]=0;c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+12>>2]=0;c[(c[d>>2]|0)+20>>2]=0;b[(c[d>>2]|0)+26>>1]=1;i=e;return}function vF(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;l=i;i=i+64|0;k=l;g=l+56|0;j=l+52|0;w=l+48|0;p=l+44|0;s=l+40|0;t=l+36|0;q=l+32|0;u=l+60|0;h=l+20|0;n=l+16|0;o=l+12|0;m=l+8|0;v=l+4|0;x=l+24|0;r=l+28|0;c[j>>2]=f;c[p>>2]=0;c[s>>2]=0;c[t>>2]=0;c[q>>2]=c[c[j>>2]>>2];c[h>>2]=0;c[n>>2]=(c[(c[j>>2]|0)+8>>2]|0)+40;NA(c[n>>2]|0,8);c[(c[j>>2]|0)+20>>2]=0;if((c[(c[j>>2]|0)+80>>2]|0)==7){a[(c[q>>2]|0)+64>>0]=1;c[g>>2]=1;x=c[g>>2]|0;i=l;return x|0}c[w>>2]=c[(c[j>>2]|0)+32>>2];a:do{if((b[(c[j>>2]|0)+88>>1]&3|0)==1){c[t>>2]=(c[(c[j>>2]|0)+8>>2]|0)+360;if((b[(c[t>>2]|0)+28>>1]&16|0)!=0){c[p>>2]=((c[(c[t>>2]|0)+24>>2]|0)>>>0)/4|0;c[s>>2]=c[(c[t>>2]|0)+4>>2]}c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[p>>2]|0)){break a}c[w>>2]=(c[w>>2]|0)+(c[(c[(c[s>>2]|0)+(c[u>>2]<<2)>>2]|0)+4>>2]|0);c[u>>2]=(c[u>>2]|0)+1}}}while(0);do{y=(c[j>>2]|0)+76|0;f=c[y>>2]|0;c[y>>2]=f+1;c[u>>2]=f;if((c[u>>2]|0)>=(c[w>>2]|0)){break}if((b[(c[j>>2]|0)+88>>1]&3|0)!=2){break}}while((d[(c[(c[j>>2]|0)+4>>2]|0)+((c[u>>2]|0)*20|0)>>0]|0)!=157);do{if((c[u>>2]|0)>=(c[w>>2]|0)){c[(c[j>>2]|0)+80>>2]=0;c[h>>2]=101}else{if((c[(c[q>>2]|0)+232>>2]|0)!=0){c[(c[j>>2]|0)+80>>2]=9;c[h>>2]=1;x=(c[j>>2]|0)+44|0;y=c[q>>2]|0;c[k>>2]=ie(c[(c[j>>2]|0)+80>>2]|0)|0;$t(x,y,1768,k);break}if((c[u>>2]|0)<(c[(c[j>>2]|0)+32>>2]|0)){c[m>>2]=(c[(c[j>>2]|0)+4>>2]|0)+((c[u>>2]|0)*20|0)}else{c[u>>2]=(c[u>>2]|0)-(c[(c[j>>2]|0)+32>>2]|0);c[v>>2]=0;while(1){if((c[u>>2]|0)<(c[(c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]|0)+4>>2]|0)){break}c[u>>2]=(c[u>>2]|0)-(c[(c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]|0)+4>>2]|0);c[v>>2]=(c[v>>2]|0)+1}c[m>>2]=(c[c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]>>2]|0)+((c[u>>2]|0)*20|0)}if((b[(c[j>>2]|0)+88>>1]&3|0)==1){b[(c[n>>2]|0)+28>>1]=4;w=c[u>>2]|0;y=(c[n>>2]|0)+16|0;c[y>>2]=w;c[y+4>>2]=((w|0)<0)<<31>>31;c[n>>2]=(c[n>>2]|0)+40;b[(c[n>>2]|0)+28>>1]=2562;y=cJ(d[c[m>>2]>>0]|0)|0;c[(c[n>>2]|0)+4>>2]=y;y=Ub(c[(c[n>>2]|0)+4>>2]|0)|0;c[(c[n>>2]|0)+24>>2]=y;a[(c[n>>2]|0)+30>>0]=1;c[n>>2]=(c[n>>2]|0)+40;if((a[(c[m>>2]|0)+1>>0]|0)==-18){c[x>>2]=(c[p>>2]|0)+1<<2;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[p>>2]|0)){break}if((c[(c[s>>2]|0)+(c[r>>2]<<2)>>2]|0)==(c[(c[m>>2]|0)+16>>2]|0)){break}c[r>>2]=(c[r>>2]|0)+1}if((c[r>>2]|0)==(c[p>>2]|0)){if(0==(ue(c[t>>2]|0,c[x>>2]|0,(c[p>>2]|0)!=0&1)|0)){c[s>>2]=c[(c[t>>2]|0)+4>>2];x=c[(c[m>>2]|0)+16>>2]|0;y=c[p>>2]|0;c[p>>2]=y+1;c[(c[s>>2]|0)+(y<<2)>>2]=x;y=(c[t>>2]|0)+28|0;b[y>>1]=e[y>>1]|16;c[(c[t>>2]|0)+24>>2]=c[p>>2]<<2}}}}b[(c[n>>2]|0)+28>>1]=4;x=c[(c[m>>2]|0)+4>>2]|0;y=(c[n>>2]|0)+16|0;c[y>>2]=x;c[y+4>>2]=((x|0)<0)<<31>>31;c[n>>2]=(c[n>>2]|0)+40;b[(c[n>>2]|0)+28>>1]=4;y=c[(c[m>>2]|0)+8>>2]|0;x=(c[n>>2]|0)+16|0;c[x>>2]=y;c[x+4>>2]=((y|0)<0)<<31>>31;c[n>>2]=(c[n>>2]|0)+40;b[(c[n>>2]|0)+28>>1]=4;x=c[(c[m>>2]|0)+12>>2]|0;y=(c[n>>2]|0)+16|0;c[y>>2]=x;c[y+4>>2]=((x|0)<0)<<31>>31;c[n>>2]=(c[n>>2]|0)+40;if((ue(c[n>>2]|0,32,0)|0)!=0){c[g>>2]=1;y=c[g>>2]|0;i=l;return y|0}b[(c[n>>2]|0)+28>>1]=514;c[o>>2]=dJ(c[m>>2]|0,c[(c[n>>2]|0)+4>>2]|0,32)|0;p=c[n>>2]|0;if((c[o>>2]|0)!=(c[(c[n>>2]|0)+4>>2]|0)){Yd(p,c[o>>2]|0,-1,1,0)|0}else{y=Ub(c[p+4>>2]|0)|0;c[(c[n>>2]|0)+24>>2]=y;a[(c[n>>2]|0)+30>>0]=1}c[n>>2]=(c[n>>2]|0)+40;do{if((b[(c[j>>2]|0)+88>>1]&3|0)==1){if((ue(c[n>>2]|0,4,0)|0)==0){b[(c[n>>2]|0)+28>>1]=514;c[(c[n>>2]|0)+24>>2]=2;y=c[(c[n>>2]|0)+4>>2]|0;c[k>>2]=d[(c[m>>2]|0)+3>>0]|0;yc(3,y,40968,k)|0;a[(c[n>>2]|0)+30>>0]=1;c[n>>2]=(c[n>>2]|0)+40;b[(c[n>>2]|0)+28>>1]=1;break}c[g>>2]=1;y=c[g>>2]|0;i=l;return y|0}}while(0);b[(c[j>>2]|0)+84>>1]=8-((b[(c[j>>2]|0)+88>>1]&3)-1<<2);c[(c[j>>2]|0)+20>>2]=(c[(c[j>>2]|0)+8>>2]|0)+40;c[(c[j>>2]|0)+80>>2]=0;c[h>>2]=100}}while(0);c[g>>2]=c[h>>2];y=c[g>>2]|0;i=l;return y|0} + + + +function DJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;f=g+20|0;k=g+8|0;h=g;e=g+12|0;j=g+16|0;c[k>>2]=a;a=h;c[a>>2]=b;c[a+4>>2]=d;c[e>>2]=c[k>>2];if((c[(c[e>>2]|0)+40>>2]|0)>0){k=h;a=c[(c[e>>2]|0)+40>>2]|0;a=dL(c[k>>2]|0,c[k+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;a=$K(a|0,D|0,1,0)|0;k=c[(c[e>>2]|0)+40>>2]|0;k=lL(a|0,D|0,k|0,((k|0)<0)<<31>>31|0)|0;a=c[(c[e>>2]|0)+40>>2]|0;a=nL(k|0,D|0,a|0,((a|0)<0)<<31>>31|0)|0;k=h;c[k>>2]=a;c[k+4>>2]=D}k=c[h>>2]|0;c[j>>2]=eK(c[(c[e>>2]|0)+12>>2]|0,k,((k|0)<0)<<31>>31)|0;if((c[j>>2]|0)!=0){k=c[(ab()|0)>>2]|0;c[(c[e>>2]|0)+20>>2]=k;c[f>>2]=XJ(1546,44064,c[(c[e>>2]|0)+32>>2]|0,27527)|0;k=c[f>>2]|0;i=g;return k|0}else{c[f>>2]=0;k=c[f>>2]|0;i=g;return k|0}return 0}function EJ(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+28|0;p=g;o=g+4|0;l=g+8|0;j=g+12|0;m=g+16|0;n=g+20|0;k=g+24|0;c[p>>2]=a;c[o>>2]=d;c[j>>2]=c[p>>2];c[m>>2]=c[o>>2]&16;c[n>>2]=(c[o>>2]&15|0)==3&1;c[l>>2]=mK(c[(c[j>>2]|0)+12>>2]|0,c[n>>2]|0,c[m>>2]|0)|0;if((c[l>>2]|0)!=0){p=c[(ab()|0)>>2]|0;c[(c[j>>2]|0)+20>>2]=p;c[h>>2]=XJ(1034,44520,c[(c[j>>2]|0)+32>>2]|0,27483)|0;p=c[h>>2]|0;i=g;return p|0}if((b[(c[j>>2]|0)+18>>1]&8|0)!=0){c[l>>2]=zb[c[43896>>2]&127](c[(c[j>>2]|0)+32>>2]|0,k)|0;if((c[l>>2]|0)==0){if((c[k>>2]|0)>=0){mK(c[k>>2]|0,0,0)|0;WJ(c[j>>2]|0,c[k>>2]|0,27497)}else{f=7}}else{f=7}if((f|0)==7){if((c[l>>2]|0)==14){c[l>>2]=0}}p=(c[j>>2]|0)+18|0;b[p>>1]=(e[p>>1]|0)&-9}c[h>>2]=c[l>>2];p=c[h>>2]|0;i=g;return p|0}function FJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+96|0;e=d+88|0;f=d;g=d+4|0;j=d+8|0;h=d+12|0;c[f>>2]=a;c[g>>2]=b;c[j>>2]=zb[c[43752>>2]&127](c[(c[f>>2]|0)+12>>2]|0,h)|0;if((c[j>>2]|0)!=0){j=c[(ab()|0)>>2]|0;c[(c[f>>2]|0)+20>>2]=j;c[e>>2]=1802;j=c[e>>2]|0;i=d;return j|0}a=c[h+36>>2]|0;j=c[g>>2]|0;c[j>>2]=a;c[j+4>>2]=((a|0)<0)<<31>>31;j=c[g>>2]|0;if((c[j>>2]|0)==1&(c[j+4>>2]|0)==0){j=c[g>>2]|0;c[j>>2]=0;c[j+4>>2]=0}c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}function GJ(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;n=f;k=f+4|0;j=f+8|0;h=f+12|0;l=f+16|0;m=f+20|0;c[n>>2]=b;c[k>>2]=e;c[j>>2]=c[n>>2];c[h>>2]=c[(c[j>>2]|0)+24>>2];c[l>>2]=0;if((d[(c[j>>2]|0)+16>>0]|0|0)>0){a[(c[j>>2]|0)+16>>0]=c[k>>2];Fa(c[h>>2]|0,0)|0;c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}c[l>>2]=zb[c[43908>>2]&127](c[h>>2]|0,511)|0;if((c[l>>2]|0)>=0){a[(c[j>>2]|0)+16>>0]=c[k>>2];c[g>>2]=c[l>>2];n=c[g>>2]|0;i=f;return n|0}c[m>>2]=c[(ab()|0)>>2];if(17==(c[m>>2]|0)){c[l>>2]=5}else{c[l>>2]=lK(c[m>>2]|0,3850)|0;if((c[l>>2]|0)!=0&(c[l>>2]|0)!=5){c[(c[j>>2]|0)+20>>2]=c[m>>2]}}c[g>>2]=c[l>>2];n=c[g>>2]|0;i=f;return n|0}function HJ(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;n=f;m=f+4|0;h=f+8|0;k=f+12|0;j=f+16|0;l=f+20|0;c[n>>2]=b;c[m>>2]=e;c[h>>2]=c[n>>2];c[k>>2]=c[(c[h>>2]|0)+24>>2];if((d[(c[h>>2]|0)+16>>0]|0|0)==(c[m>>2]|0)){c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}if((c[m>>2]|0)==1){a[(c[h>>2]|0)+16>>0]=1;c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}c[j>>2]=ub[c[43920>>2]&63](c[k>>2]|0)|0;if((c[j>>2]|0)<0){if((c[(ab()|0)>>2]|0)==20){c[j>>2]=ub[c[43884>>2]&63](c[k>>2]|0)|0}}if((c[j>>2]|0)>=0){a[(c[h>>2]|0)+16>>0]=0;c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}c[l>>2]=c[(ab()|0)>>2];c[j>>2]=0;c[j>>2]=2!=(c[l>>2]|0)?2058:0;if((c[j>>2]|0)!=0&(c[j>>2]|0)!=5){c[(c[h>>2]|0)+20>>2]=c[l>>2]}c[g>>2]=c[j>>2];n=c[g>>2]|0;i=f;return n|0}function IJ(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;l=e+20|0;g=e;f=e+4|0;h=e+8|0;k=e+12|0;j=e+16|0;c[l>>2]=a;c[g>>2]=b;c[f>>2]=0;c[h>>2]=0;c[k>>2]=c[l>>2];if((d[(c[k>>2]|0)+16>>0]|0|0)>1){c[h>>2]=1;a=c[h>>2]|0;l=c[g>>2]|0;c[l>>2]=a;l=c[f>>2]|0;i=e;return l|0}else{c[j>>2]=c[(c[k>>2]|0)+24>>2];c[h>>2]=(zb[c[43716>>2]&127](c[j>>2]|0,0)|0)==0&1;a=c[h>>2]|0;l=c[g>>2]|0;c[l>>2]=a;l=c[f>>2]|0;i=e;return l|0}return 0}function JJ(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;m=f;g=f+28|0;o=f+4|0;n=f+8|0;k=f+12|0;j=f+16|0;h=f+20|0;l=f+24|0;c[o>>2]=a;c[n>>2]=b;c[k>>2]=e;c[j>>2]=c[o>>2];do{switch(c[n>>2]|0){case 5:{o=c[k>>2]|0;c[h>>2]=fK(c[j>>2]|0,c[o>>2]|0,c[o+4>>2]|0)|0;c[g>>2]=c[h>>2];break};case 16:{c[l>>2]=mc(c[(c[(c[j>>2]|0)+4>>2]|0)+8>>2]|0)|0;if((c[l>>2]|0)!=0){hK(c[(c[(c[j>>2]|0)+4>>2]|0)+8>>2]|0,c[l>>2]|0)|0;c[c[k>>2]>>2]=c[l>>2]}c[g>>2]=0;break};case 13:{gK(c[j>>2]|0,16,c[k>>2]|0);c[g>>2]=0;break};case 20:{o=iK(c[j>>2]|0)|0;c[c[k>>2]>>2]=o;c[g>>2]=0;break};case 10:{gK(c[j>>2]|0,4,c[k>>2]|0);c[g>>2]=0;break};case 4:{c[c[k>>2]>>2]=c[(c[j>>2]|0)+20>>2];c[g>>2]=0;break};case 6:{c[(c[j>>2]|0)+40>>2]=c[c[k>>2]>>2];c[g>>2]=0;break};case 1:{c[c[k>>2]>>2]=d[(c[j>>2]|0)+16>>0]|0;c[g>>2]=0;break};case 12:{c[m>>2]=c[(c[(c[j>>2]|0)+4>>2]|0)+16>>2];o=wc(1768,m)|0;c[c[k>>2]>>2]=o;c[g>>2]=0;break};default:{c[g>>2]=12}}}while(0);i=f;return c[g>>2]|0}function KJ(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 4096}function LJ(a){a=a|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=c[g>>2];c[e>>2]=0;if((b[(c[f>>2]|0)+18>>1]&16|0)==0){g=c[e>>2]|0;i=d;return g|0}c[e>>2]=c[e>>2]|4096;g=c[e>>2]|0;i=d;return g|0}function MJ(a,f,g,h,j){a=a|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;p=i;i=i+160|0;k=p+148|0;E=p+144|0;n=p+140|0;t=p+136|0;B=p+132|0;o=p+128|0;C=p+124|0;D=p+120|0;m=p+116|0;l=p+112|0;v=p+108|0;w=p+84|0;q=p;z=p+4|0;A=p+8|0;y=p+88|0;x=p+92|0;s=p+96|0;r=p+100|0;u=p+104|0;c[E>>2]=a;c[n>>2]=f;c[t>>2]=g;c[B>>2]=h;c[o>>2]=j;c[C>>2]=c[E>>2];c[l>>2]=0;c[v>>2]=VJ()|0;if((c[(c[C>>2]|0)+36>>2]|0)==0){c[l>>2]=cK(c[C>>2]|0)|0;if((c[l>>2]|0)!=0){c[k>>2]=c[l>>2];E=c[k>>2]|0;i=p;return E|0}}c[D>>2]=c[(c[C>>2]|0)+36>>2];c[m>>2]=c[c[D>>2]>>2];c[w>>2]=$(((c[n>>2]|0)+(c[v>>2]|0)|0)/(c[v>>2]|0)|0,c[v>>2]|0)|0;a:do{if((e[(c[m>>2]|0)+20>>1]|0|0)<(c[w>>2]|0)){c[z>>2]=$(c[w>>2]|0,c[t>>2]|0)|0;c[(c[m>>2]|0)+16>>2]=c[t>>2];b:do{if((c[(c[m>>2]|0)+12>>2]|0)>=0){if((zb[c[43752>>2]&127](c[(c[m>>2]|0)+12>>2]|0,A)|0)!=0){c[l>>2]=4874;break a}if((c[A+36>>2]|0)<(c[z>>2]|0)){if((c[B>>2]|0)==0){break a}c[y>>2]=(c[A+36>>2]|0)/4096|0;while(1){if((c[y>>2]|0)>=((c[z>>2]|0)/4096|0|0)){break b}E=(c[y>>2]<<12)+4096-1|0;if((dK(c[(c[m>>2]|0)+12>>2]|0,E,((E|0)<0)<<31>>31,1784,1,0)|0)!=1){break}c[y>>2]=(c[y>>2]|0)+1}c[x>>2]=c[(c[m>>2]|0)+8>>2];c[l>>2]=XJ(4874,44112,c[x>>2]|0,28353)|0;break a}}}while(0);c[q>>2]=qc(c[(c[m>>2]|0)+24>>2]|0,c[w>>2]<<2)|0;if((c[q>>2]|0)==0){c[l>>2]=3082;break}c[(c[m>>2]|0)+24>>2]=c[q>>2];while(1){if((e[(c[m>>2]|0)+20>>1]|0|0)>=(c[w>>2]|0)){break a}c[s>>2]=$(c[t>>2]|0,c[v>>2]|0)|0;if((c[(c[m>>2]|0)+12>>2]|0)>=0){h=c[43944>>2]|0;g=c[s>>2]|0;f=(d[(c[m>>2]|0)+22>>0]|0|0)!=0?1:3;a=c[(c[m>>2]|0)+12>>2]|0;E=c[t>>2]|0;E=nL(E|0,((E|0)<0)<<31>>31|0,e[(c[m>>2]|0)+20>>1]|0|0,0)|0;c[u>>2]=tb[h&15](0,g,f,1,a,E)|0;if((c[u>>2]|0)==(-1|0)){q=21;break}}else{c[u>>2]=mc(c[t>>2]|0)|0;if((c[u>>2]|0)==0){q=23;break}aL(c[u>>2]|0,0,c[t>>2]|0)|0}c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[v>>2]|0)){break}E=$(c[t>>2]|0,c[r>>2]|0)|0;c[(c[(c[m>>2]|0)+24>>2]|0)+((e[(c[m>>2]|0)+20>>1]|0)+(c[r>>2]|0)<<2)>>2]=(c[u>>2]|0)+E;c[r>>2]=(c[r>>2]|0)+1}E=(c[m>>2]|0)+20|0;b[E>>1]=(e[E>>1]|0)+(c[v>>2]|0)}if((q|0)==21){c[l>>2]=XJ(5386,44216,c[(c[m>>2]|0)+8>>2]|0,28380)|0;break}else if((q|0)==23){c[l>>2]=7;break}}}while(0);if((e[(c[m>>2]|0)+20>>1]|0|0)>(c[n>>2]|0)){c[c[o>>2]>>2]=c[(c[(c[m>>2]|0)+24>>2]|0)+(c[n>>2]<<2)>>2]}else{c[c[o>>2]>>2]=0}if((d[(c[m>>2]|0)+22>>0]|0|0)!=0){if((c[l>>2]|0)==0){c[l>>2]=8}}c[k>>2]=c[l>>2];E=c[k>>2]|0;i=p;return E|0}function NJ(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=i;i=i+48|0;v=k+8|0;m=k+32|0;n=k+28|0;t=k+24|0;u=k+12|0;r=k+16|0;h=k+20|0;l=k+4|0;q=k;o=k+40|0;p=k+36|0;s=k+38|0;c[v>>2]=a;c[m>>2]=d;c[n>>2]=f;c[t>>2]=g;c[u>>2]=c[v>>2];c[r>>2]=c[(c[u>>2]|0)+36>>2];c[l>>2]=c[c[r>>2]>>2];c[q>>2]=0;b[o>>1]=(1<<(c[m>>2]|0)+(c[n>>2]|0))-(1<>2]);if((c[t>>2]&1|0)!=0){b[p>>1]=0;c[h>>2]=c[(c[l>>2]|0)+32>>2];while(1){if((c[h>>2]|0)==0){break}if((c[h>>2]|0)!=(c[r>>2]|0)){b[p>>1]=e[p>>1]|0|(e[(c[h>>2]|0)+10>>1]|0)}c[h>>2]=c[(c[h>>2]|0)+4>>2]}if(((e[o>>1]|0)&(e[p>>1]|0)|0)==0){c[q>>2]=bK(c[l>>2]|0,2,(c[m>>2]|0)+120|0,c[n>>2]|0)|0}else{c[q>>2]=0}if((c[q>>2]|0)!=0){v=c[q>>2]|0;i=k;return v|0}v=(c[r>>2]|0)+12|0;b[v>>1]=(e[v>>1]|0)&~(e[o>>1]|0);v=(c[r>>2]|0)+10|0;b[v>>1]=(e[v>>1]|0)&~(e[o>>1]|0);v=c[q>>2]|0;i=k;return v|0}if((c[t>>2]&4|0)==0){c[h>>2]=c[(c[l>>2]|0)+32>>2];while(1){if((c[h>>2]|0)==0){break}if(((e[(c[h>>2]|0)+12>>1]|0)&(e[o>>1]|0)|0)!=0){j=28;break}if(((e[(c[h>>2]|0)+10>>1]|0)&(e[o>>1]|0)|0)!=0){j=28;break}c[h>>2]=c[(c[h>>2]|0)+4>>2]}if((j|0)==28){c[q>>2]=5}if((c[q>>2]|0)!=0){v=c[q>>2]|0;i=k;return v|0}c[q>>2]=bK(c[l>>2]|0,1,(c[m>>2]|0)+120|0,c[n>>2]|0)|0;if((c[q>>2]|0)!=0){v=c[q>>2]|0;i=k;return v|0}v=(c[r>>2]|0)+12|0;b[v>>1]=e[v>>1]|0|(e[o>>1]|0);v=c[q>>2]|0;i=k;return v|0}b[s>>1]=0;c[h>>2]=c[(c[l>>2]|0)+32>>2];while(1){if((c[h>>2]|0)==0){break}if(((e[(c[h>>2]|0)+12>>1]|0)&(e[o>>1]|0)|0)!=0){j=16;break}b[s>>1]=e[s>>1]|0|(e[(c[h>>2]|0)+10>>1]|0);c[h>>2]=c[(c[h>>2]|0)+4>>2]}if((j|0)==16){c[q>>2]=5}do{if((c[q>>2]|0)==0){if(((e[s>>1]|0)&(e[o>>1]|0)|0)==0){c[q>>2]=bK(c[l>>2]|0,0,(c[m>>2]|0)+120|0,c[n>>2]|0)|0;break}else{c[q>>2]=0;break}}}while(0);if((c[q>>2]|0)!=0){v=c[q>>2]|0;i=k;return v|0}v=(c[r>>2]|0)+10|0;b[v>>1]=e[v>>1]|0|(e[o>>1]|0);v=c[q>>2]|0;i=k;return v|0}function OJ(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;SJ();UJ();i=b;return}function PJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+24|0;l=d;f=d+4|0;g=d+8|0;k=d+12|0;h=d+16|0;j=d+20|0;c[l>>2]=a;c[f>>2]=b;c[j>>2]=c[l>>2];c[g>>2]=c[(c[j>>2]|0)+36>>2];if((c[g>>2]|0)==0){c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[k>>2]=c[c[g>>2]>>2];c[h>>2]=(c[k>>2]|0)+32;while(1){if((c[c[h>>2]>>2]|0)==(c[g>>2]|0)){break}c[h>>2]=(c[c[h>>2]>>2]|0)+4}c[c[h>>2]>>2]=c[(c[g>>2]|0)+4>>2];oc(c[g>>2]|0);c[(c[j>>2]|0)+36>>2]=0;SJ();l=(c[k>>2]|0)+28|0;c[l>>2]=(c[l>>2]|0)+ -1;if((c[(c[k>>2]|0)+28>>2]|0)==0){if((c[f>>2]|0)!=0){if((c[(c[k>>2]|0)+12>>2]|0)>=0){ub[c[43884>>2]&63](c[(c[k>>2]|0)+8>>2]|0)|0}}TJ(c[j>>2]|0)}UJ();c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}function QJ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=i;i=i+32|0;h=g+12|0;c[g+16>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;c[g+8>>2]=e;c[h>>2]=f;c[c[h>>2]>>2]=0;i=g;return 0}function RJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=i;i=i+16|0;c[f+12>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;c[f+8>>2]=e;i=f;return 0}function SJ(){return}function TJ(a){a=a|0;var b=0,d=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;f=b;h=b+4|0;g=b+8|0;c[d>>2]=a;c[f>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+20>>2];if((c[f>>2]|0)==0){i=b;return}if((c[(c[f>>2]|0)+28>>2]|0)!=0){i=b;return}c[h>>2]=VJ()|0;c[g>>2]=0;while(1){a=c[f>>2]|0;if((c[g>>2]|0)>=(e[(c[f>>2]|0)+20>>1]|0|0)){break}if((c[a+12>>2]|0)>=0){zb[c[43956>>2]&127](c[(c[(c[f>>2]|0)+24>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[f>>2]|0)+16>>2]|0)|0}else{oc(c[(c[(c[f>>2]|0)+24>>2]|0)+(c[g>>2]<<2)>>2]|0)}c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)}oc(c[a+24>>2]|0);if((c[(c[f>>2]|0)+12>>2]|0)>=0){WJ(c[d>>2]|0,c[(c[f>>2]|0)+12>>2]|0,28094);c[(c[f>>2]|0)+12>>2]=-1}c[(c[c[f>>2]>>2]|0)+20>>2]=0;oc(c[f>>2]|0);i=b;return}function UJ(){return}function VJ(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;b=a+8|0;d=a;e=a+4|0;c[d>>2]=32768;c[e>>2]=qb[c[43980>>2]&1]()|0;if((c[e>>2]|0)<(c[d>>2]|0)){c[b>>2]=1;e=c[b>>2]|0;i=a;return e|0}else{c[b>>2]=(c[e>>2]|0)/(c[d>>2]|0)|0;e=c[b>>2]|0;i=a;return e|0}return 0}function WJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;h=e;f=e+4|0;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;if((ub[c[43704>>2]&63](c[h>>2]|0)|0)==0){i=e;return}if((c[g>>2]|0)!=0){d=c[(c[g>>2]|0)+32>>2]|0}else{d=0}XJ(4106,43992,d,c[f>>2]|0)|0;i=e;return}function XJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;h=g;l=g+40|0;m=g+20|0;f=g+24|0;j=g+28|0;k=g+32|0;n=g+36|0;c[l>>2]=a;c[m>>2]=b;c[f>>2]=d;c[j>>2]=e;c[n>>2]=c[(ab()|0)>>2];c[k>>2]=jb(c[n>>2]|0)|0;if((c[f>>2]|0)==0){c[f>>2]=1784}a=c[l>>2]|0;e=c[n>>2]|0;n=c[m>>2]|0;d=c[f>>2]|0;b=c[k>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=e;c[h+8>>2]=n;c[h+12>>2]=d;c[h+16>>2]=b;zc(a,44e3,h);i=g;return c[l>>2]|0}function YJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e;j=e+12|0;h=e+4|0;g=e+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;b=c[j>>2]|0;a=c[h>>2]|0;c[f>>2]=c[g>>2];a=Ma(b|0,a|0,f|0)|0;i=e;return a|0}function ZJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+544|0;k=e;l=e+16|0;g=e+4|0;j=e+8|0;f=e+12|0;h=e+20|0;c[l>>2]=b;c[g>>2]=d;c[f>>2]=-1;c[k>>2]=c[l>>2];yc(512,h,1768,k)|0;c[j>>2]=cL(h|0)|0;while(1){if((c[j>>2]|0)<=1){break}if((a[h+(c[j>>2]|0)>>0]|0)==47){break}c[j>>2]=(c[j>>2]|0)+ -1}if((c[j>>2]|0)>0){a[h+(c[j>>2]|0)>>0]=0;c[f>>2]=aK(h,0,0)|0}c[c[g>>2]>>2]=c[f>>2];if((c[f>>2]|0)>=0){l=0;i=e;return l|0}l=XJ(Bq(27442)|0,44032,h,27442)|0;i=e;return l|0}function _J(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((db()|0)!=0){a=0;i=e;return a|0}a=eb(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return a|0}function $J(){var a=0,b=0;b=i;a=Sa(30)|0;i=b;return a|0}function aK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+112|0;e=l;f=l+100|0;g=l+8|0;k=l+12|0;j=l+16|0;h=l+20|0;m=l+24|0;c[f>>2]=a;c[g>>2]=b;c[k>>2]=d;c[h>>2]=(c[k>>2]|0)!=0?c[k>>2]|0:420;while(1){c[j>>2]=pb[c[43692>>2]&31](c[f>>2]|0,c[g>>2]|524288,c[h>>2]|0)|0;if((c[j>>2]|0)<0){if((c[(ab()|0)>>2]|0)==4){continue}else{break}}if((c[j>>2]|0)>=3){break}ub[c[43704>>2]&63](c[j>>2]|0)|0;a=c[j>>2]|0;c[e>>2]=c[f>>2];c[e+4>>2]=a;zc(28,44256,e);c[j>>2]=-1;if((pb[c[43692>>2]&31](44304,c[g>>2]|0,c[k>>2]|0)|0)<0){break}}if((c[j>>2]|0)<0){a=c[j>>2]|0;i=l;return a|0}if((c[k>>2]|0)==0){a=c[j>>2]|0;i=l;return a|0}if((zb[c[43752>>2]&127](c[j>>2]|0,m)|0)!=0){a=c[j>>2]|0;i=l;return a|0}if((c[m+36>>2]|0)!=0){a=c[j>>2]|0;i=l;return a|0}if((c[m+12>>2]&511|0)==(c[k>>2]|0)){a=c[j>>2]|0;i=l;return a|0}zb[c[43860>>2]&127](c[j>>2]|0,c[k>>2]|0)|0;a=c[j>>2]|0;i=l;return a|0}function bK(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+48|0;o=m;n=m+36|0;k=m+4|0;l=m+8|0;g=m+12|0;j=m+16|0;h=m+32|0;c[n>>2]=a;c[k>>2]=d;c[l>>2]=e;c[g>>2]=f;c[h>>2]=0;if((c[(c[n>>2]|0)+12>>2]|0)<0){a=c[h>>2]|0;i=m;return a|0}c[j+0>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;b[j>>1]=c[k>>2];b[j+2>>1]=0;c[j+4>>2]=c[l>>2];c[j+8>>2]=c[g>>2];d=c[43776>>2]|0;a=c[(c[n>>2]|0)+12>>2]|0;c[o>>2]=j;c[h>>2]=pb[d&31](a,13,o)|0;c[h>>2]=(c[h>>2]|0)!=-1?0:5;a=c[h>>2]|0;i=m;return a|0}function cK(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=i;i=i+128|0;r=m;g=m+108|0;h=m+104|0;j=m+100|0;e=m+96|0;k=m+112|0;l=m+12|0;n=m+8|0;q=m+4|0;p=m+16|0;o=m+92|0;c[h>>2]=b;c[j>>2]=0;c[j>>2]=mc(16)|0;if((c[j>>2]|0)==0){c[g>>2]=7;b=c[g>>2]|0;i=m;return b|0}b=c[j>>2]|0;c[b+0>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;SJ();c[l>>2]=c[(c[h>>2]|0)+8>>2];c[e>>2]=c[(c[l>>2]|0)+20>>2];a:do{if((c[e>>2]|0)==0){if((zb[c[43752>>2]&127](c[(c[h>>2]|0)+12>>2]|0,p)|0)!=0){if((d[(c[l>>2]|0)+13>>0]|0|0)==0){c[k>>2]=1802}else{f=7}}else{f=7}do{if((f|0)==7){c[q>>2]=6+(cL(c[(c[h>>2]|0)+32>>2]|0)|0);c[e>>2]=mc(36+(c[q>>2]|0)|0)|0;if((c[e>>2]|0)==0){c[k>>2]=7;break}aL(c[e>>2]|0,0,36+(c[q>>2]|0)|0)|0;b=(c[e>>2]|0)+36|0;c[(c[e>>2]|0)+8>>2]=b;c[n>>2]=b;q=c[q>>2]|0;b=c[n>>2]|0;c[r>>2]=c[(c[h>>2]|0)+32>>2];yc(q,b,44320,r)|0;c[(c[e>>2]|0)+12>>2]=-1;c[(c[(c[h>>2]|0)+8>>2]|0)+20>>2]=c[e>>2];c[c[e>>2]>>2]=c[(c[h>>2]|0)+8>>2];c[(c[e>>2]|0)+4>>2]=8;if((c[(c[e>>2]|0)+4>>2]|0)==0){c[k>>2]=7;break}if((d[(c[l>>2]|0)+13>>0]|0|0)!=0){break a}c[o>>2]=66;if((Ng(c[(c[h>>2]|0)+32>>2]|0,44328,0)|0)!=0){c[o>>2]=0;a[(c[e>>2]|0)+22>>0]=1}b=aK(c[n>>2]|0,c[o>>2]|0,c[p+12>>2]&511)|0;c[(c[e>>2]|0)+12>>2]=b;if((c[(c[e>>2]|0)+12>>2]|0)<0){b=Bq(28206)|0;c[k>>2]=XJ(b,44032,c[n>>2]|0,28206)|0;break}pb[c[43932>>2]&31](c[(c[e>>2]|0)+12>>2]|0,c[p+20>>2]|0,c[p+24>>2]|0)|0;c[k>>2]=0;if((bK(c[e>>2]|0,1,128,1)|0)==0){if((eK(c[(c[e>>2]|0)+12>>2]|0,0,0)|0)!=0){c[k>>2]=XJ(4618,44064,c[n>>2]|0,28222)|0}}if((c[k>>2]|0)==0){c[k>>2]=bK(c[e>>2]|0,0,128,1)|0}if((c[k>>2]|0)==0){break a}}}while(0);TJ(c[h>>2]|0);oc(c[j>>2]|0);UJ();c[g>>2]=c[k>>2];b=c[g>>2]|0;i=m;return b|0}}while(0);c[c[j>>2]>>2]=c[e>>2];b=(c[e>>2]|0)+28|0;c[b>>2]=(c[b>>2]|0)+1;c[(c[h>>2]|0)+36>>2]=c[j>>2];UJ();c[(c[j>>2]|0)+4>>2]=c[(c[e>>2]|0)+32>>2];c[(c[e>>2]|0)+32>>2]=c[j>>2];c[g>>2]=0;b=c[g>>2]|0;i=m;return b|0}function dK(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+48|0;h=j+36|0;n=j+32|0;r=j;o=j+16|0;p=j+20|0;k=j+24|0;l=j+28|0;q=j+8|0;c[n>>2]=a;a=r;c[a>>2]=b;c[a+4>>2]=d;c[o>>2]=e;c[p>>2]=f;c[k>>2]=g;c[l>>2]=0;c[p>>2]=c[p>>2]&131071;while(1){a=xa(c[n>>2]|0,c[r>>2]|0,0)|0;b=q;c[b>>2]=a;c[b+4>>2]=((a|0)<0)<<31>>31;b=q;a=r;if((c[b>>2]|0)!=(c[a>>2]|0)?1:(c[b+4>>2]|0)!=(c[a+4>>2]|0)){break}c[l>>2]=pb[c[43824>>2]&31](c[n>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if((c[l>>2]|0)>=0){m=10;break}if((c[(ab()|0)>>2]|0)!=4){m=10;break}}if((m|0)==10){if((c[l>>2]|0)<0){if((c[k>>2]|0)!=0){a=c[(ab()|0)>>2]|0;c[c[k>>2]>>2]=a}}c[h>>2]=c[l>>2];a=c[h>>2]|0;i=j;return a|0}if((c[k>>2]|0)!=0){a=q;if((c[a>>2]|0)==-1?(c[a+4>>2]|0)==-1:0){l=c[(ab()|0)>>2]|0}else{l=0}c[c[k>>2]>>2]=l}c[h>>2]=-1;a=c[h>>2]|0;i=j;return a|0}function eK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+12|0;h=e;f=e+8|0;c[g>>2]=a;a=h;c[a>>2]=b;c[a+4>>2]=d;while(1){c[f>>2]=zb[c[43764>>2]&127](c[g>>2]|0,c[h>>2]|0)|0;if((c[f>>2]|0)>=0){d=4;break}if((c[(ab()|0)>>2]|0)!=4){d=4;break}}if((d|0)==4){i=e;return c[f>>2]|0}return 0}function fK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+128|0;f=k+112|0;g=k+104|0;n=k+8|0;e=k;l=k+24|0;m=k+100|0;h=k+16|0;j=k+108|0;c[g>>2]=a;a=n;c[a>>2]=b;c[a+4>>2]=d;a:do{if((c[(c[g>>2]|0)+40>>2]|0)>0){if((zb[c[43752>>2]&127](c[(c[g>>2]|0)+12>>2]|0,l)|0)!=0){c[f>>2]=1802;a=c[f>>2]|0;i=k;return a|0}b=n;d=c[(c[g>>2]|0)+40>>2]|0;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,((d|0)<0)<<31>>31|0)|0;d=$K(d|0,D|0,1,0)|0;b=c[(c[g>>2]|0)+40>>2]|0;b=lL(d|0,D|0,b|0,((b|0)<0)<<31>>31|0)|0;d=c[(c[g>>2]|0)+40>>2]|0;d=nL(b|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;b=e;c[b>>2]=d;c[b+4>>2]=D;b=e;d=c[b+4>>2]|0;a=c[l+36>>2]|0;n=((a|0)<0)<<31>>31;if((d|0)>(n|0)|((d|0)==(n|0)?(c[b>>2]|0)>>>0>a>>>0:0)){c[m>>2]=c[l+40>>2];a=e;if((eK(c[(c[g>>2]|0)+12>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0)!=0){a=c[(ab()|0)>>2]|0;c[(c[g>>2]|0)+20>>2]=a;c[f>>2]=XJ(1546,44064,c[(c[g>>2]|0)+32>>2]|0,27628)|0;a=c[f>>2]|0;i=k;return a|0}b=($(((c[l+36>>2]|0)+(c[m>>2]<<1)-1|0)/(c[m>>2]|0)|0,c[m>>2]|0)|0)-1|0;a=h;c[a>>2]=b;c[a+4>>2]=((b|0)<0)<<31>>31;while(1){b=h;l=c[b+4>>2]|0;a=e;n=c[a+4>>2]|0;if(!((l|0)<(n|0)|((l|0)==(n|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0))){break a}a=h;c[j>>2]=kK(c[g>>2]|0,c[a>>2]|0,c[a+4>>2]|0,1784,1)|0;if((c[j>>2]|0)!=1){break}b=c[m>>2]|0;a=h;b=dL(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=h;c[a>>2]=b;c[a+4>>2]=D}c[f>>2]=778;a=c[f>>2]|0;i=k;return a|0}}}while(0);c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}function gK(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;j=i;i=i+16|0;l=j+4|0;m=j+8|0;k=j;c[l>>2]=f;a[m>>0]=g;c[k>>2]=h;if((c[c[k>>2]>>2]|0)<0){c[c[k>>2]>>2]=((e[(c[l>>2]|0)+18>>1]|0)&(d[m>>0]|0)|0)!=0&1;i=j;return}h=d[m>>0]|0;if((c[c[k>>2]>>2]|0)==0){f=(c[l>>2]|0)+18|0;b[f>>1]=(e[f>>1]|0)&~h;i=j;return}else{f=(c[l>>2]|0)+18|0;b[f>>1]=e[f>>1]|0|h;i=j;return}}function hK(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;n=k;g=k+24|0;l=k+4|0;h=k+8|0;f=k+12|0;j=k+16|0;m=k+20|0;c[l>>2]=b;c[h>>2]=e;b=jK()|0;c[m>>2]=b;c[m>>2]=(c[m>>2]|0)==0?25632:b;b=(cL(c[m>>2]|0)|0)+25|0;if(b>>>0>=(c[l>>2]|0)>>>0){c[g>>2]=1;b=c[g>>2]|0;i=k;return b|0}do{e=(c[l>>2]|0)-18|0;b=c[h>>2]|0;c[n>>2]=c[m>>2];yc(e,b,44408,n)|0;c[j>>2]=cL(c[h>>2]|0)|0;Bc(15,(c[h>>2]|0)+(c[j>>2]|0)|0);c[f>>2]=0;while(1){e=(c[h>>2]|0)+(c[j>>2]|0)|0;if(!((c[f>>2]|0)>>>0<15)){break}a[(c[h>>2]|0)+(c[j>>2]|0)>>0]=a[44344+(((d[e>>0]|0)>>>0)%62|0)>>0]|0;c[f>>2]=(c[f>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1}a[e>>0]=0;a[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]=0}while((zb[c[43716>>2]&127](c[h>>2]|0,0)|0)==0);c[g>>2]=0;b=c[g>>2]|0;i=k;return b|0}function iK(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+80|0;e=b+76|0;d=b;c[e>>2]=a;if((c[(c[e>>2]|0)+8>>2]|0)==0){e=0;e=e&1;i=b;return e|0}if((zb[c[43740>>2]&127](c[(c[e>>2]|0)+32>>2]|0,d)|0)!=0){e=1;e=e&1;i=b;return e|0}e=(c[d+72>>2]|0)!=(c[(c[(c[e>>2]|0)+8>>2]|0)+4>>2]|0);e=e&1;i=b;return e|0}function jK(){var a=0,b=0,d=0,e=0,f=0;a=i;i=i+96|0;e=a+80|0;d=a;b=a+76|0;c[b>>2]=0;c[11106]=c[472];if((c[44428>>2]|0)==0){c[44428>>2]=Za(44496)|0}if((c[44432>>2]|0)==0){c[44432>>2]=Za(44512)|0}c[e>>2]=0;while(1){if(!((c[e>>2]|0)>>>0<7)){d=12;break}if((c[b>>2]|0)!=0){if((zb[c[43740>>2]&127](c[b>>2]|0,d)|0)==0){if((c[d+12>>2]&61440|0)==16384){if((zb[c[43716>>2]&127](c[b>>2]|0,7)|0)==0){d=12;break}}}}f=c[e>>2]|0;c[e>>2]=f+1;c[b>>2]=c[44424+(f<<2)>>2]}if((d|0)==12){i=a;return c[b>>2]|0}return 0}function kK(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;h=g+16|0;l=g;k=g+8|0;j=g+12|0;c[h>>2]=a;a=l;c[a>>2]=b;c[a+4>>2]=d;c[k>>2]=e;c[j>>2]=f;a=l;a=dK(c[(c[h>>2]|0)+12>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[k>>2]|0,c[j>>2]|0,(c[h>>2]|0)+20|0)|0;i=g;return a|0}function lK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e;g=e+4|0;c[h>>2]=a;c[g>>2]=b;switch(c[h>>2]|0){case 13:{if((c[g>>2]|0)==3850|(c[g>>2]|0)==2058|(c[g>>2]|0)==2314|(c[g>>2]|0)==3594){c[f>>2]=5}else{d=5}break};case 1:{d=5;break};case 37:case 4:case 16:case 110:case 11:{c[f>>2]=5;break};default:{c[f>>2]=c[g>>2]}}if((d|0)==5){c[f>>2]=3}i=e;return c[f>>2]|0}function mK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;e=f+8|0;c[g>>2]=a;c[f>>2]=b;c[f+4>>2]=d;c[e>>2]=$a(c[g>>2]|0)|0;i=f;return c[e>>2]|0}function nK(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+48|0;o=j+36|0;k=j+32|0;p=j;q=j+16|0;g=j+20|0;m=j+24|0;n=j+28|0;l=j+8|0;c[k>>2]=a;a=p;c[a>>2]=b;c[a+4>>2]=d;c[q>>2]=e;c[g>>2]=f;c[n>>2]=0;c[g>>2]=c[g>>2]&131071;do{a=xa(c[(c[k>>2]|0)+12>>2]|0,c[p>>2]|0,0)|0;b=l;c[b>>2]=a;c[b+4>>2]=((a|0)<0)<<31>>31;b=l;a=p;if((c[b>>2]|0)!=(c[a>>2]|0)?1:(c[b+4>>2]|0)!=(c[a+4>>2]|0)){h=3;break}c[m>>2]=pb[c[43788>>2]&31](c[(c[k>>2]|0)+12>>2]|0,c[q>>2]|0,c[g>>2]|0)|0;if((c[m>>2]|0)==(c[g>>2]|0)){break}if((c[m>>2]|0)<0){if((c[(ab()|0)>>2]|0)!=4){h=11;break}c[m>>2]=1}else{if((c[m>>2]|0)>0){c[g>>2]=(c[g>>2]|0)-(c[m>>2]|0);b=c[m>>2]|0;a=p;b=dL(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=p;c[a>>2]=b;c[a+4>>2]=D;c[n>>2]=(c[n>>2]|0)+(c[m>>2]|0);c[q>>2]=(c[q>>2]|0)+(c[m>>2]|0)}}}while((c[m>>2]|0)>0);if((h|0)==3){a=l;if((c[a>>2]|0)==-1?(c[a+4>>2]|0)==-1:0){a=c[(ab()|0)>>2]|0;c[(c[k>>2]|0)+20>>2]=a}else{c[(c[k>>2]|0)+20>>2]=0}c[o>>2]=-1;a=c[o>>2]|0;i=j;return a|0}else if((h|0)==11){c[n>>2]=0;a=c[(ab()|0)>>2]|0;c[(c[k>>2]|0)+20>>2]=a}c[o>>2]=(c[m>>2]|0)+(c[n>>2]|0);a=c[o>>2]|0;i=j;return a|0}function oK(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];if((c[(c[d>>2]|0)+12>>2]|0)>=0){WJ(c[d>>2]|0,c[(c[d>>2]|0)+12>>2]|0,25838);c[(c[d>>2]|0)+12>>2]=-1}oc(c[(c[d>>2]|0)+28>>2]|0);d=(c[d>>2]|0)+0|0;a=d+44|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));i=b;return 0}function pK(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 44536}function qK(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=oK(c[d>>2]|0)|0;i=b;return a|0}function rK(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function sK(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function tK(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[d+4>>2]=a;c[e>>2]=b;c[c[e>>2]>>2]=0;i=d;return 0}function uK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+96|0;k=d+92|0;j=d;e=d+4|0;h=d+8|0;f=d+84|0;g=d+88|0;c[k>>2]=a;c[j>>2]=b;c[e>>2]=0;if(0!=(zb[c[43740>>2]&127](c[k>>2]|0,h)|0)){k=c[e>>2]|0;i=d;return k|0}SJ();c[f>>2]=c[11218];while(1){if((c[f>>2]|0)!=0){if((c[c[f>>2]>>2]|0)!=(c[h>>2]|0)){a=1}else{a=(c[(c[f>>2]|0)+4>>2]|0)!=(c[h+72>>2]|0)}}else{a=0}b=c[f>>2]|0;if(!a){break}c[f>>2]=c[b+32>>2]}if((b|0)!=0){c[g>>2]=(c[f>>2]|0)+28;while(1){if((c[c[g>>2]>>2]|0)==0){break}if((c[(c[c[g>>2]>>2]|0)+4>>2]|0)==(c[j>>2]|0)){break}c[g>>2]=(c[c[g>>2]>>2]|0)+8}c[e>>2]=c[c[g>>2]>>2];if((c[e>>2]|0)!=0){c[c[g>>2]>>2]=c[(c[e>>2]|0)+8>>2]}}UJ();k=c[e>>2]|0;i=d;return k|0}function vK(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=i;i=i+624|0;q=o+100|0;l=o+96|0;k=o+92|0;n=o+88|0;h=o+84|0;j=o+4|0;p=o+104|0;r=o;m=o+8|0;c[q>>2]=b;c[l>>2]=d;c[k>>2]=e;c[n>>2]=f;c[h>>2]=g;c[j>>2]=0;c[c[k>>2]>>2]=0;c[c[n>>2]>>2]=0;c[c[h>>2]>>2]=0;if((c[l>>2]&526336|0)==0){if((c[l>>2]&8|0)==0){b=c[j>>2]|0;i=o;return b|0}c[c[k>>2]>>2]=384;b=c[j>>2]|0;i=o;return b|0}c[r>>2]=(Ub(c[q>>2]|0)|0)-1;while(1){if((a[(c[q>>2]|0)+(c[r>>2]|0)>>0]|0)==45){break}c[r>>2]=(c[r>>2]|0)+ -1}fL(p|0,c[q>>2]|0,c[r>>2]|0)|0;a[p+(c[r>>2]|0)>>0]=0;if(0==(zb[c[43740>>2]&127](p,m)|0)){c[c[k>>2]>>2]=c[m+12>>2]&511;c[c[n>>2]>>2]=c[m+20>>2];c[c[h>>2]>>2]=c[m+24>>2];b=c[j>>2]|0;i=o;return b|0}else{c[j>>2]=1802;b=c[j>>2]|0;i=o;return b|0}return 0}function wK(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;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;r=i;i=i+48|0;p=r;s=r+36|0;l=r+32|0;u=r+28|0;o=r+24|0;t=r+40|0;j=r+12|0;q=r+8|0;k=r+4|0;m=r+16|0;n=r+20|0;c[s>>2]=a;c[l>>2]=d;c[u>>2]=f;c[o>>2]=g;c[t>>2]=h;c[q>>2]=c[u>>2];c[k>>2]=0;c[(c[q>>2]|0)+12>>2]=c[l>>2];c[(c[q>>2]|0)+4>>2]=c[s>>2];c[(c[q>>2]|0)+32>>2]=c[o>>2];b[(c[q>>2]|0)+18>>1]=c[t>>2]&255;if((Ng((c[t>>2]&64|0)!=0?c[o>>2]|0:0,44656,1)|0)!=0){u=(c[q>>2]|0)+18|0;b[u>>1]=e[u>>1]|0|16}if((YK(c[(c[s>>2]|0)+16>>2]|0,1456)|0)==0){u=(c[q>>2]|0)+18|0;b[u>>1]=e[u>>1]|0|1}if((c[t>>2]&128|0)!=0){c[j>>2]=44536}else{c[j>>2]=zb[c[c[(c[s>>2]|0)+20>>2]>>2]&127](c[o>>2]|0,c[q>>2]|0)|0}if((c[j>>2]|0)==44664){SJ();c[k>>2]=xK(c[q>>2]|0,(c[q>>2]|0)+8|0)|0;if((c[k>>2]|0)!=0){WJ(c[q>>2]|0,c[l>>2]|0,29201);c[l>>2]=-1}UJ()}else{if((c[j>>2]|0)==43608){c[n>>2]=(cL(c[o>>2]|0)|0)+6;c[m>>2]=mc(c[n>>2]|0)|0;if((c[m>>2]|0)==0){c[k>>2]=7}else{a=c[n>>2]|0;u=c[m>>2]|0;c[p>>2]=c[o>>2];yc(a,u,44744,p)|0}c[(c[q>>2]|0)+24>>2]=c[m>>2]}}c[(c[q>>2]|0)+20>>2]=0;if((c[k>>2]|0)==0){c[c[q>>2]>>2]=c[j>>2];yK(c[q>>2]|0);u=c[k>>2]|0;i=r;return u|0}if((c[l>>2]|0)<0){u=c[k>>2]|0;i=r;return u|0}WJ(c[q>>2]|0,c[l>>2]|0,29286);u=c[k>>2]|0;i=r;return u|0}function xK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+112|0;e=h+104|0;j=h;g=h+4|0;l=h+8|0;m=h+12|0;d=h+16|0;k=h+24|0;f=h+100|0;c[j>>2]=a;c[g>>2]=b;c[f>>2]=0;c[m>>2]=c[(c[j>>2]|0)+12>>2];c[l>>2]=zb[c[43752>>2]&127](c[m>>2]|0,k)|0;if((c[l>>2]|0)!=0){m=c[(ab()|0)>>2]|0;c[(c[j>>2]|0)+20>>2]=m;if((c[(c[j>>2]|0)+20>>2]|0)==75){c[e>>2]=22;m=c[e>>2]|0;i=h;return m|0}else{c[e>>2]=10;m=c[e>>2]|0;i=h;return m|0}}c[d+0>>2]=0;c[d+4>>2]=0;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+72>>2];c[f>>2]=c[11218];while(1){if((c[f>>2]|0)!=0){b=(XK(d,c[f>>2]|0,8)|0)!=0}else{b=0}j=c[f>>2]|0;if(!b){break}c[f>>2]=c[j+32>>2]}if((j|0)==0){c[f>>2]=mc(40)|0;if((c[f>>2]|0)==0){c[e>>2]=7;m=c[e>>2]|0;i=h;return m|0}b=(c[f>>2]|0)+0|0;j=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(j|0));m=c[f>>2]|0;c[m+0>>2]=c[d+0>>2];c[m+4>>2]=c[d+4>>2];c[(c[f>>2]|0)+16>>2]=1;c[(c[f>>2]|0)+32>>2]=c[11218];c[(c[f>>2]|0)+36>>2]=0;if((c[11218]|0)!=0){c[(c[11218]|0)+36>>2]=c[f>>2]}c[11218]=c[f>>2]}else{m=(c[f>>2]|0)+16|0;c[m>>2]=(c[m>>2]|0)+1}c[c[g>>2]>>2]=c[f>>2];c[e>>2]=0;m=c[e>>2]|0;i=h;return m|0}function yK(a){a=a|0;var d=0,f=0,g=0,h=0,j=0;d=i;i=i+96|0;g=d;f=d+84|0;h=d+4|0;j=d+80|0;c[f>>2]=a;if((b[(c[f>>2]|0)+18>>1]&256|0)!=0){i=d;return}c[j>>2]=zb[c[43752>>2]&127](c[(c[f>>2]|0)+12>>2]|0,h)|0;if((c[j>>2]|0)!=0){c[g>>2]=c[(c[f>>2]|0)+32>>2];zc(28,44752,g);j=(c[f>>2]|0)+18|0;b[j>>1]=e[j>>1]|0|256;i=d;return}if((c[h+16>>2]|0)==0){if((b[(c[f>>2]|0)+18>>1]&32|0)==0){c[g>>2]=c[(c[f>>2]|0)+32>>2];zc(28,44776,g);j=(c[f>>2]|0)+18|0;b[j>>1]=e[j>>1]|0|256;i=d;return}}a=c[f>>2]|0;if((c[h+16>>2]|0)>>>0>1){c[g>>2]=c[a+32>>2];zc(28,44808,g);j=(c[f>>2]|0)+18|0;b[j>>1]=e[j>>1]|0|256;i=d;return}if((iK(a)|0)==0){i=d;return}c[g>>2]=c[(c[f>>2]|0)+32>>2];zc(28,44840,g);j=(c[f>>2]|0)+18|0;b[j>>1]=e[j>>1]|0|256;i=d;return}function zK(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16|0;d=f+8|0;e=f;b=f+4|0;c[d>>2]=a;c[e>>2]=0;c[b>>2]=c[d>>2];yK(c[b>>2]|0);BK(c[d>>2]|0,0)|0;SJ();if((c[(c[b>>2]|0)+8>>2]|0)!=0){if((c[(c[(c[b>>2]|0)+8>>2]|0)+24>>2]|0)!=0){GK(c[b>>2]|0)}}HK(c[b>>2]|0);c[e>>2]=oK(c[d>>2]|0)|0;UJ();i=f;return c[e>>2]|0}function AK(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=i;i=i+48|0;g=l+44|0;q=l;j=l+4|0;h=l+8|0;m=l+12|0;k=l+16|0;n=l+24|0;o=l+40|0;c[q>>2]=e;c[j>>2]=f;c[h>>2]=0;c[m>>2]=c[q>>2];c[o>>2]=0;if((d[(c[m>>2]|0)+16>>0]|0|0)>=(c[j>>2]|0)){c[g>>2]=0;q=c[g>>2]|0;i=l;return q|0}SJ();c[k>>2]=c[(c[m>>2]|0)+8>>2];do{if((d[(c[m>>2]|0)+16>>0]|0|0)!=(d[(c[k>>2]|0)+12>>0]|0|0)){if((d[(c[k>>2]|0)+12>>0]|0|0)<3){if((c[j>>2]|0)<=1){p=7;break}}c[h>>2]=5}else{p=7}}while(0);a:do{if((p|0)==7){do{if((c[j>>2]|0)==1){if((d[(c[k>>2]|0)+12>>0]|0|0)!=1){if((d[(c[k>>2]|0)+12>>0]|0|0)!=2){break}}a[(c[m>>2]|0)+16>>0]=1;q=(c[k>>2]|0)+8|0;c[q>>2]=(c[q>>2]|0)+1;q=(c[k>>2]|0)+24|0;c[q>>2]=(c[q>>2]|0)+1;break a}}while(0);c[n+8>>2]=1;b[n+2>>1]=0;if((c[j>>2]|0)==1){p=14}else{if((c[j>>2]|0)==4){if((d[(c[m>>2]|0)+16>>0]|0|0)<3){p=14}}}if((p|0)==14){b[n>>1]=(c[j>>2]|0)==1?0:1;c[n+4>>2]=c[368];if((EK(c[m>>2]|0,n)|0)!=0){c[o>>2]=c[(ab()|0)>>2];c[h>>2]=lK(c[o>>2]|0,3850)|0;if((c[h>>2]|0)==5){break}c[(c[m>>2]|0)+20>>2]=c[o>>2];break}}do{if((c[j>>2]|0)==1){c[n+4>>2]=(c[368]|0)+2;c[n+8>>2]=510;if((EK(c[m>>2]|0,n)|0)!=0){c[o>>2]=c[(ab()|0)>>2];c[h>>2]=lK(c[o>>2]|0,3850)|0}c[n+4>>2]=c[368];c[n+8>>2]=1;b[n>>1]=2;if((EK(c[m>>2]|0,n)|0)!=0){if((c[h>>2]|0)==0){c[o>>2]=c[(ab()|0)>>2];c[h>>2]=2058}}if((c[h>>2]|0)==0){a[(c[m>>2]|0)+16>>0]=1;q=(c[k>>2]|0)+24|0;c[q>>2]=(c[q>>2]|0)+1;c[(c[k>>2]|0)+8>>2]=1;break}if((c[h>>2]|0)==5){break a}c[(c[m>>2]|0)+20>>2]=c[o>>2];break a}else{if((c[j>>2]|0)==4){if((c[(c[k>>2]|0)+8>>2]|0)>1){c[h>>2]=5;break}}b[n>>1]=1;p=c[368]|0;if((c[j>>2]|0)==2){c[n+4>>2]=p+1;c[n+8>>2]=1}else{c[n+4>>2]=p+2;c[n+8>>2]=510}if((EK(c[m>>2]|0,n)|0)!=0){c[o>>2]=c[(ab()|0)>>2];c[h>>2]=lK(c[o>>2]|0,3850)|0;if((c[h>>2]|0)!=5){c[(c[m>>2]|0)+20>>2]=c[o>>2]}}}}while(0);n=c[j>>2]|0;if((c[h>>2]|0)==0){a[(c[m>>2]|0)+16>>0]=n;a[(c[k>>2]|0)+12>>0]=c[j>>2];break}if((n|0)==4){a[(c[m>>2]|0)+16>>0]=3;a[(c[k>>2]|0)+12>>0]=3}}}while(0);UJ();c[g>>2]=c[h>>2];q=c[g>>2]|0;i=l;return q|0}function BK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=DK(c[f>>2]|0,c[e>>2]|0,0)|0;i=d;return a|0}function CK(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+48|0;j=m;o=m+40|0;l=m+4|0;n=m+8|0;k=m+12|0;h=m+16|0;g=m+24|0;c[o>>2]=e;c[l>>2]=f;c[n>>2]=0;c[k>>2]=0;c[h>>2]=c[o>>2];SJ();if((d[(c[(c[h>>2]|0)+8>>2]|0)+12>>0]|0)>1){c[k>>2]=1}do{if((c[k>>2]|0)==0){if((a[(c[(c[h>>2]|0)+8>>2]|0)+13>>0]|0)==0){b[g+2>>1]=0;c[g+4>>2]=(c[368]|0)+1;c[g+8>>2]=1;b[g>>1]=1;e=c[43776>>2]|0;o=c[(c[h>>2]|0)+12>>2]|0;c[j>>2]=g;if((pb[e&31](o,12,j)|0)!=0){c[n>>2]=3594;o=c[(ab()|0)>>2]|0;c[(c[h>>2]|0)+20>>2]=o;break}if((b[g>>1]|0)!=2){c[k>>2]=1}}}}while(0);UJ();c[c[l>>2]>>2]=c[k>>2];i=m;return c[n>>2]|0}function DK(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+48|0;k=n+44|0;q=n;l=n+4|0;m=n+12|0;o=n+16|0;p=n+24|0;h=n+40|0;c[q>>2]=e;c[l>>2]=f;c[n+8>>2]=g;c[m>>2]=c[q>>2];c[h>>2]=0;if((d[(c[m>>2]|0)+16>>0]|0|0)<=(c[l>>2]|0)){c[k>>2]=0;q=c[k>>2]|0;i=n;return q|0}SJ();c[o>>2]=c[(c[m>>2]|0)+8>>2];do{if((d[(c[m>>2]|0)+16>>0]|0|0)>1){if((c[l>>2]|0)==1){b[p>>1]=0;b[p+2>>1]=0;c[p+4>>2]=(c[368]|0)+2;c[p+8>>2]=510;if((EK(c[m>>2]|0,p)|0)!=0){c[h>>2]=2314;q=c[(ab()|0)>>2]|0;c[(c[m>>2]|0)+20>>2]=q;break}}b[p>>1]=2;b[p+2>>1]=0;c[p+4>>2]=c[368];c[p+8>>2]=2;if((EK(c[m>>2]|0,p)|0)==0){a[(c[o>>2]|0)+12>>0]=1;j=10;break}else{c[h>>2]=2058;q=c[(ab()|0)>>2]|0;c[(c[m>>2]|0)+20>>2]=q;break}}else{j=10}}while(0);if((j|0)==10){if((c[l>>2]|0)==0){q=(c[o>>2]|0)+8|0;c[q>>2]=(c[q>>2]|0)+ -1;do{if((c[(c[o>>2]|0)+8>>2]|0)==0){b[p>>1]=2;b[p+2>>1]=0;c[p+8>>2]=0;c[p+4>>2]=0;if((EK(c[m>>2]|0,p)|0)==0){a[(c[o>>2]|0)+12>>0]=0;break}else{c[h>>2]=2058;q=c[(ab()|0)>>2]|0;c[(c[m>>2]|0)+20>>2]=q;a[(c[o>>2]|0)+12>>0]=0;a[(c[m>>2]|0)+16>>0]=0;break}}}while(0);q=(c[o>>2]|0)+24|0;c[q>>2]=(c[q>>2]|0)+ -1;if((c[(c[o>>2]|0)+24>>2]|0)==0){FK(c[m>>2]|0)}}}UJ();if((c[h>>2]|0)==0){a[(c[m>>2]|0)+16>>0]=c[l>>2]}c[k>>2]=c[h>>2];q=c[k>>2]|0;i=n;return q|0}function EK(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+48|0;n=j;h=j+40|0;m=j+4|0;o=j+8|0;l=j+12|0;k=j+16|0;g=j+24|0;c[m>>2]=e;c[o>>2]=f;c[k>>2]=c[(c[m>>2]|0)+8>>2];if((b[(c[m>>2]|0)+18>>1]&1|0)!=0){f=3}else{if((d[(c[k>>2]|0)+13>>0]|0|0)!=0){f=3}else{f=9}}do{if((f|0)==3){if((b[(c[m>>2]|0)+18>>1]&2|0)==0){if((d[(c[k>>2]|0)+13>>0]|0|0)!=0){c[l>>2]=0;break}b[g+2>>1]=0;c[g+4>>2]=(c[368]|0)+2;c[g+8>>2]=510;b[g>>1]=1;o=c[43776>>2]|0;e=c[(c[m>>2]|0)+12>>2]|0;c[n>>2]=g;c[l>>2]=pb[o&31](e,13,n)|0;if((c[l>>2]|0)>=0){a[(c[k>>2]|0)+13>>0]=1;e=(c[k>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1;break}c[h>>2]=c[l>>2];e=c[h>>2]|0;i=j;return e|0}else{f=9}}}while(0);if((f|0)==9){f=c[43776>>2]|0;e=c[(c[m>>2]|0)+12>>2]|0;c[n>>2]=c[o>>2];c[l>>2]=pb[f&31](e,13,n)|0}c[h>>2]=c[l>>2];e=c[h>>2]|0;i=j;return e|0}function FK(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+12|0;b=d;e=d+4|0;f=d+8|0;c[g>>2]=a;c[b>>2]=c[(c[g>>2]|0)+8>>2];c[e>>2]=c[(c[b>>2]|0)+28>>2];while(1){if((c[e>>2]|0)==0){break}c[f>>2]=c[(c[e>>2]|0)+8>>2];WJ(c[g>>2]|0,c[c[e>>2]>>2]|0,25104);oc(c[e>>2]|0);c[e>>2]=c[f>>2]}c[(c[b>>2]|0)+28>>2]=0;i=d;return}function GK(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b;f=b+4|0;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+8>>2];c[f>>2]=c[(c[d>>2]|0)+28>>2];c[(c[f>>2]|0)+8>>2]=c[(c[e>>2]|0)+28>>2];c[(c[e>>2]|0)+28>>2]=c[f>>2];c[(c[d>>2]|0)+12>>2]=-1;c[(c[d>>2]|0)+28>>2]=0;i=b;return}function HK(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[(c[e>>2]|0)+8>>2];if((c[d>>2]|0)==0){i=b;return}a=(c[d>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+ -1;if((c[(c[d>>2]|0)+16>>2]|0)!=0){i=b;return}FK(c[e>>2]|0);a=c[(c[d>>2]|0)+32>>2]|0;if((c[(c[d>>2]|0)+36>>2]|0)!=0){c[(c[(c[d>>2]|0)+36>>2]|0)+32>>2]=a}else{c[11218]=a}if((c[(c[d>>2]|0)+32>>2]|0)!=0){c[(c[(c[d>>2]|0)+32>>2]|0)+36>>2]=c[(c[d>>2]|0)+36>>2]}oc(c[d>>2]|0);i=b;return}function IK(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 44664}function JK(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b;e=b+8|0;c[e>>2]=a;if((c[c[e>>2]>>2]|0)<=(c[(c[e>>2]|0)+4>>2]|0)){e=d;c[e>>2]=0;c[e+4>>2]=0;e=d;e=c[e>>2]|0;d=d+4|0;d=c[d>>2]|0;D=d;i=b;return e|0}else{f=(c[e>>2]|0)+4|0;a=c[f>>2]|0;c[f>>2]=a+1;a=Qd(c[(c[(c[e>>2]|0)+8>>2]|0)+(a<<2)>>2]|0)|0;e=d;c[e>>2]=a;c[e+4>>2]=D;e=d;e=c[e>>2]|0;d=d+4|0;d=c[d>>2]|0;D=d;i=b;return e|0}return 0}function KK(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0;b=i;i=i+16|0;d=b;e=b+8|0;c[e>>2]=a;if((c[c[e>>2]>>2]|0)<=(c[(c[e>>2]|0)+4>>2]|0)){h[d>>3]=0.0;f=+h[d>>3];i=b;return+f}else{g=(c[e>>2]|0)+4|0;a=c[g>>2]|0;c[g>>2]=a+1;h[d>>3]=+Md(c[(c[(c[e>>2]|0)+8>>2]|0)+(a<<2)>>2]|0);f=+h[d>>3];i=b;return+f}return 0.0}function LK(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;j=e+16|0;l=e+8|0;g=e+12|0;k=e;c[j>>2]=b;c[l>>2]=d;if((c[c[l>>2]>>2]|0)<=0){a[f>>0]=48;b=a[f>>0]|0;i=e;return b|0}else{b=c[l>>2]|0;c[b>>2]=(c[b>>2]|0)+ -1;c[g>>2]=~~+h[c[j>>2]>>3];h[k>>3]=+(c[g>>2]|0);c[g>>2]=(c[g>>2]|0)+48;h[c[j>>2]>>3]=(+h[c[j>>2]>>3]- +h[k>>3])*10.0;a[f>>0]=c[g>>2];b=a[f>>0]|0;i=e;return b|0}return 0}function MK(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;if((c[c[e>>2]>>2]|0)<=(c[(c[e>>2]|0)+4>>2]|0)){c[d>>2]=0;e=c[d>>2]|0;i=b;return e|0}else{f=(c[e>>2]|0)+4|0;a=c[f>>2]|0;c[f>>2]=a+1;c[d>>2]=Jd(c[(c[(c[e>>2]|0)+8>>2]|0)+(a<<2)>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}return 0}function NK(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=b;c[f>>2]=d;if(((c[(c[g>>2]|0)+12>>2]|0)+(c[f>>2]|0)|0)>=(c[(c[g>>2]|0)+16>>2]|0)){b=Lt(c[g>>2]|0,c[f>>2]|0)|0;c[f>>2]=b;if((b|0)<=0){i=e;return}}while(1){b=c[f>>2]|0;c[f>>2]=b+ -1;if((b|0)<=0){break}d=(c[g>>2]|0)+12|0;b=c[d>>2]|0;c[d>>2]=b+1;a[(c[(c[g>>2]|0)+8>>2]|0)+b>>0]=32}i=e;return}function OK(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;f=i;i=i+944|0;k=f+680|0;j=f+424|0;l=f;g=f+232|0;b=$(d,b)|0;if((b|0)==0){i=f;return}n=b-d|0;c[g+4>>2]=d;c[g>>2]=d;p=d;o=d;m=2;while(1){p=p+d+o|0;c[g+(m<<2)>>2]=p;if(p>>>0>>0){B=o;o=p;m=m+1|0;p=B}else{break}}b=0-d|0;m=a+n|0;if((n|0)>0){q=(d|0)==0;n=d>>>0>256?256:d;o=(n|0)==(d|0);p=m;r=1;s=0;t=1;do{do{if((r&3|0)==3){c[l>>2]=a;a:do{if((t|0)>1){v=t;A=a;z=a;y=1;while(1){x=A+b|0;w=v+ -2|0;A=A+(0-((c[g+(w<<2)>>2]|0)+d))|0;if((zb[e&127](z,A)|0)>-1){if((zb[e&127](z,x)|0)>-1){u=y;break}}u=y+1|0;y=l+(y<<2)|0;if((zb[e&127](A,x)|0)>-1){c[y>>2]=A;x=A;v=v+ -1|0}else{c[y>>2]=x;v=w}if((v|0)<=1){break}A=x;z=c[l>>2]|0;y=u}if((u|0)>=2){x=l+(u<<2)|0;c[x>>2]=j;if(!q){if((u|0)>0){w=d;y=j}else{u=c[l>>2]|0;fL(j|0,u|0,n|0)|0;if(o){break}else{v=d;w=n}while(1){v=v-w|0;w=v>>>0>256?256:v;fL(j|0,u|0,w|0)|0;if((v|0)==(w|0)){break a}}}while(1){v=w>>>0>256?256:w;z=c[l>>2]|0;fL(y|0,z|0,v|0)|0;y=0;do{B=y;y=y+1|0;A=z;z=c[l+(y<<2)>>2]|0;fL(A|0,z|0,v|0)|0;c[l+(B<<2)>>2]=A+v}while((y|0)!=(u|0));if((w|0)==(v|0)){break a}w=w-v|0;y=c[x>>2]|0}}}}}while(0);u=r>>>2|s<<30;s=s>>>2;t=t+2|0}else{u=t+ -1|0;b:do{if((c[g+(u<<2)>>2]|0)>>>0<(p-a|0)>>>0){c[l>>2]=a;if((t|0)>1){w=t;A=a;z=a;B=1;while(1){y=A+b|0;x=w+ -2|0;A=A+(0-((c[g+(x<<2)>>2]|0)+d))|0;if((zb[e&127](z,A)|0)>-1){if((zb[e&127](z,y)|0)>-1){v=B;break}}v=B+1|0;z=l+(B<<2)|0;if((zb[e&127](A,y)|0)>-1){c[z>>2]=A;y=A;w=w+ -1|0}else{c[z>>2]=y;w=x}if((w|0)<=1){break}A=y;z=c[l>>2]|0;B=v}if((v|0)>=2){x=l+(v<<2)|0;c[x>>2]=k;if(!q){if((v|0)>0){w=d;z=k}else{x=c[l>>2]|0;fL(k|0,x|0,n|0)|0;if(o){break}else{w=d;v=n}while(1){w=w-v|0;v=w>>>0>256?256:w;fL(k|0,x|0,v|0)|0;if((w|0)==(v|0)){break b}}}while(1){y=w>>>0>256?256:w;A=c[l>>2]|0;fL(z|0,A|0,y|0)|0;z=0;do{B=z;z=z+1|0;C=A;A=c[l+(z<<2)>>2]|0;fL(C|0,A|0,y|0)|0;c[l+(B<<2)>>2]=C+y}while((z|0)!=(v|0));if((w|0)==(y|0)){break b}w=w-y|0;z=c[x>>2]|0}}}}}else{PK(a,d,e,r,s,t,0,g)}}while(0);if((t|0)==1){u=r<<1;s=r>>>31|s<<1;t=0;break}else{C=u>>>0>31;B=C?0:r;t=C?t+ -33|0:u;u=B<>>(32-t|0)|(C?r:s)<>>0>>0)}else{s=0;r=1;t=1}PK(a,d,e,r,s,t,0,g);while(1){if((t|0)==1){if((r|0)==1){if((s|0)==0){break}else{h=52}}}else{h=52}if((h|0)==52){h=0;if((t|0)>=2){A=r>>>30;C=t+ -2|0;z=(r<<1&2147483646|A<<31)^3;B=(A|s<<2)>>>1;PK(a+(0-((c[g+(C<<2)>>2]|0)+d))|0,d,e,z,B,t+ -1|0,1,g);A=B<<1|A&1;z=z<<1|1;B=a+b|0;PK(B,d,e,z,A,C,1,g);r=z;s=A;a=B;t=C;continue}}j=r+ -1|0;if((j|0)==0){k=32;h=62}else{if((j&1|0)==0){k=0;do{k=k+1|0;j=j>>>1}while((j&1|0)==0);if((k|0)==0){h=57}}else{h=57}if((h|0)==57){h=0;if((s|0)==0){k=32}else{if((s&1|0)==0){j=s;k=0;do{k=k+1|0;j=j>>>1}while((j&1|0)==0)}else{k=0}}k=(k|0)==0?0:k+32|0}if(k>>>0>31){h=62}else{j=k}}if((h|0)==62){h=0;j=k+ -32|0;r=s;s=0}r=s<<32-j|r>>>j;s=s>>>j;a=a+b|0;t=k+t|0}i=f;return}function PK(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+720|0;l=k+456|0;m=k;o=k+228|0;c[o>>2]=a;n=0-b|0;a:do{if((e|0)==1&(f|0)==0){q=1;p=18}else{r=a;t=a;s=1;while(1){a=r+(0-(c[j+(g<<2)>>2]|0))|0;if((zb[d&127](a,t)|0)<1){a=r;q=s;p=18;break a}if((h|0)==0&(g|0)>1){q=c[j+(g+ -2<<2)>>2]|0;if((zb[d&127](r+n|0,a)|0)>-1){a=r;q=s;break a}if((zb[d&127](r+(0-(q+b))|0,a)|0)>-1){a=r;q=s;break a}}q=s+1|0;c[o+(s<<2)>>2]=a;r=e+ -1|0;if((r|0)==0){h=32;p=15}else{if((r&1|0)==0){h=0;do{h=h+1|0;r=r>>>1}while((r&1|0)==0);if((h|0)==0){p=10}}else{p=10}if((p|0)==10){p=0;if((f|0)==0){h=32}else{if((f&1|0)==0){r=f;h=0;do{h=h+1|0;r=r>>>1}while((r&1|0)==0)}else{h=0}}h=(h|0)==0?0:h+32|0}if(h>>>0>31){p=15}else{r=h}}if((p|0)==15){p=0;r=h+ -32|0;e=f;f=0}e=f<<32-r|e>>>r;f=f>>>r;g=h+g|0;if((e|0)==1&(f|0)==0){break a}r=a;h=0;t=c[o>>2]|0;s=q}}}while(0);if((p|0)==18){if((h|0)!=0){i=k;return}}b:do{if((q|0)>=2){p=o+(q<<2)|0;c[p>>2]=l;if((b|0)!=0){if((q|0)>0){e=b;r=l}else{p=b>>>0>256?256:b;q=c[o>>2]|0;fL(l|0,q|0,p|0)|0;if((p|0)==(b|0)){break}else{o=b}while(1){o=o-p|0;p=o>>>0>256?256:o;fL(l|0,q|0,p|0)|0;if((o|0)==(p|0)){break b}}}while(1){f=e>>>0>256?256:e;h=c[o>>2]|0;fL(r|0,h|0,f|0)|0;r=h;h=0;do{t=h;h=h+1|0;s=r;r=c[o+(h<<2)>>2]|0;fL(s|0,r|0,f|0)|0;c[o+(t<<2)>>2]=s+f}while((h|0)!=(q|0));if((e|0)==(f|0)){break b}e=e-f|0;r=c[p>>2]|0}}}}while(0);c[m>>2]=a;c:do{if((g|0)>1){f=a;e=1;while(1){q=f+n|0;p=g+ -2|0;f=f+(0-((c[j+(p<<2)>>2]|0)+b))|0;if((zb[d&127](a,f)|0)>-1){if((zb[d&127](a,q)|0)>-1){o=e;break}}o=e+1|0;a=m+(e<<2)|0;if((zb[d&127](f,q)|0)>-1){c[a>>2]=f;q=f;g=g+ -1|0}else{c[a>>2]=q;g=p}if((g|0)<=1){break}f=q;a=c[m>>2]|0;e=o}if((o|0)>=2){n=m+(o<<2)|0;c[n>>2]=l;if((b|0)!=0){if((o|0)>0){d=l}else{n=b>>>0>256?256:b;m=c[m>>2]|0;fL(l|0,m|0,n|0)|0;if((n|0)==(b|0)){break}while(1){b=b-n|0;n=b>>>0>256?256:b;fL(l|0,m|0,n|0)|0;if((b|0)==(n|0)){break c}}}while(1){j=b>>>0>256?256:b;p=c[m>>2]|0;fL(d|0,p|0,j|0)|0;d=p;p=0;do{t=p;p=p+1|0;s=d;d=c[m+(p<<2)>>2]|0;fL(s|0,d|0,j|0)|0;c[m+(t<<2)>>2]=s+j}while((p|0)!=(o|0));if((b|0)==(j|0)){break c}b=b-j|0;d=c[n>>2]|0}}}}}while(0);i=k;return}function QK(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=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;b=i;do{if(a>>>0<245){if(a>>>0<11){a=16}else{a=a+11&-8}o=a>>>3;n=c[11382]|0;p=n>>>o;if((p&3|0)!=0){f=(p&1^1)+o|0;e=f<<1;j=45568+(e<<2)|0;e=45568+(e+2<<2)|0;g=c[e>>2]|0;h=g+8|0;d=c[h>>2]|0;do{if((j|0)==(d|0)){c[11382]=n&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}k=d+12|0;if((c[k>>2]|0)==(g|0)){c[k>>2]=j;c[e>>2]=d;break}else{gb()}}}while(0);z=f<<3;c[g+4>>2]=z|3;z=g+(z|4)|0;c[z>>2]=c[z>>2]|1;z=h;i=b;return z|0}if(a>>>0>(c[45536>>2]|0)>>>0){if((p|0)!=0){j=2<>>12&16;j=j>>>d;h=j>>>5&8;j=j>>>h;g=j>>>2&4;j=j>>>g;f=j>>>1&2;j=j>>>f;e=j>>>1&1;e=(h|d|g|f|e)+(j>>>e)|0;j=e<<1;f=45568+(j<<2)|0;j=45568+(j+2<<2)|0;g=c[j>>2]|0;d=g+8|0;h=c[d>>2]|0;do{if((f|0)==(h|0)){c[11382]=n&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}k=h+12|0;if((c[k>>2]|0)==(g|0)){c[k>>2]=f;c[j>>2]=h;break}else{gb()}}}while(0);h=e<<3;e=h-a|0;c[g+4>>2]=a|3;f=g+a|0;c[g+(a|4)>>2]=e|1;c[g+h>>2]=e;h=c[45536>>2]|0;if((h|0)!=0){g=c[45548>>2]|0;k=h>>>3;l=k<<1;h=45568+(l<<2)|0;j=c[11382]|0;k=1<>2]|0;if(k>>>0<(c[45544>>2]|0)>>>0){gb()}else{u=j;v=k}}c[u>>2]=g;c[v+12>>2]=g;c[g+8>>2]=v;c[g+12>>2]=h}c[45536>>2]=e;c[45548>>2]=f;z=d;i=b;return z|0}n=c[45532>>2]|0;if((n|0)!=0){d=(n&0-n)+ -1|0;y=d>>>12&16;d=d>>>y;x=d>>>5&8;d=d>>>x;z=d>>>2&4;d=d>>>z;f=d>>>1&2;d=d>>>f;e=d>>>1&1;e=c[45832+((x|y|z|f|e)+(d>>>e)<<2)>>2]|0;d=(c[e+4>>2]&-8)-a|0;f=e;while(1){g=c[f+16>>2]|0;if((g|0)==0){g=c[f+20>>2]|0;if((g|0)==0){break}}f=(c[g+4>>2]&-8)-a|0;z=f>>>0>>0;d=z?f:d;f=g;e=z?g:e}h=c[45544>>2]|0;if(e>>>0>>0){gb()}f=e+a|0;if(!(e>>>0>>0)){gb()}g=c[e+24>>2]|0;k=c[e+12>>2]|0;do{if((k|0)==(e|0)){k=e+20|0;j=c[k>>2]|0;if((j|0)==0){k=e+16|0;j=c[k>>2]|0;if((j|0)==0){t=0;break}}while(1){m=j+20|0;l=c[m>>2]|0;if((l|0)!=0){j=l;k=m;continue}m=j+16|0;l=c[m>>2]|0;if((l|0)==0){break}else{j=l;k=m}}if(k>>>0>>0){gb()}else{c[k>>2]=0;t=j;break}}else{j=c[e+8>>2]|0;if(j>>>0>>0){gb()}l=j+12|0;if((c[l>>2]|0)!=(e|0)){gb()}h=k+8|0;if((c[h>>2]|0)==(e|0)){c[l>>2]=k;c[h>>2]=j;t=k;break}else{gb()}}}while(0);do{if((g|0)!=0){j=c[e+28>>2]|0;h=45832+(j<<2)|0;if((e|0)==(c[h>>2]|0)){c[h>>2]=t;if((t|0)==0){c[45532>>2]=c[45532>>2]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}h=g+16|0;if((c[h>>2]|0)==(e|0)){c[h>>2]=t}else{c[g+20>>2]=t}if((t|0)==0){break}}if(t>>>0<(c[45544>>2]|0)>>>0){gb()}c[t+24>>2]=g;g=c[e+16>>2]|0;do{if((g|0)!=0){if(g>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[t+16>>2]=g;c[g+24>>2]=t;break}}}while(0);g=c[e+20>>2]|0;if((g|0)!=0){if(g>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[t+20>>2]=g;c[g+24>>2]=t;break}}}}while(0);if(d>>>0<16){z=d+a|0;c[e+4>>2]=z|3;z=e+(z+4)|0;c[z>>2]=c[z>>2]|1}else{c[e+4>>2]=a|3;c[e+(a|4)>>2]=d|1;c[e+(d+a)>>2]=d;h=c[45536>>2]|0;if((h|0)!=0){g=c[45548>>2]|0;k=h>>>3;l=k<<1;h=45568+(l<<2)|0;j=c[11382]|0;k=1<>2]|0;if(j>>>0<(c[45544>>2]|0)>>>0){gb()}else{s=k;r=j}}c[s>>2]=g;c[r+12>>2]=g;c[g+8>>2]=r;c[g+12>>2]=h}c[45536>>2]=d;c[45548>>2]=f}z=e+8|0;i=b;return z|0}}}else{if(a>>>0>4294967231){a=-1}else{r=a+11|0;a=r&-8;t=c[45532>>2]|0;if((t|0)!=0){s=0-a|0;r=r>>>8;if((r|0)==0){u=0}else{if(a>>>0>16777215){u=31}else{y=(r+1048320|0)>>>16&8;z=r<>>16&4;z=z<>>16&2;u=14-(x|y|u)+(z<>>15)|0;u=a>>>(u+7|0)&1|u<<1}}v=c[45832+(u<<2)>>2]|0;a:do{if((v|0)==0){x=0;r=0}else{if((u|0)==31){r=0}else{r=25-(u>>>1)|0}x=0;w=a<>2]&-8;y=z-a|0;if(y>>>0>>0){if((z|0)==(a|0)){s=y;x=v;r=v;break a}else{s=y;r=v}}z=c[v+20>>2]|0;v=c[v+(w>>>31<<2)+16>>2]|0;x=(z|0)==0|(z|0)==(v|0)?x:z;if((v|0)==0){break}else{w=w<<1}}}}while(0);if((x|0)==0&(r|0)==0){z=2<>>12&16;z=z>>>v;u=z>>>5&8;z=z>>>u;w=z>>>2&4;z=z>>>w;y=z>>>1&2;z=z>>>y;x=z>>>1&1;x=c[45832+((u|v|w|y|x)+(z>>>x)<<2)>>2]|0}if((x|0)!=0){while(1){z=(c[x+4>>2]&-8)-a|0;t=z>>>0>>0;s=t?z:s;r=t?x:r;t=c[x+16>>2]|0;if((t|0)!=0){x=t;continue}x=c[x+20>>2]|0;if((x|0)==0){break}}}if((r|0)!=0){if(s>>>0<((c[45536>>2]|0)-a|0)>>>0){f=c[45544>>2]|0;if(r>>>0>>0){gb()}d=r+a|0;if(!(r>>>0>>0)){gb()}e=c[r+24>>2]|0;g=c[r+12>>2]|0;do{if((g|0)==(r|0)){h=r+20|0;g=c[h>>2]|0;if((g|0)==0){h=r+16|0;g=c[h>>2]|0;if((g|0)==0){q=0;break}}while(1){k=g+20|0;j=c[k>>2]|0;if((j|0)!=0){g=j;h=k;continue}k=g+16|0;j=c[k>>2]|0;if((j|0)==0){break}else{g=j;h=k}}if(h>>>0>>0){gb()}else{c[h>>2]=0;q=g;break}}else{h=c[r+8>>2]|0;if(h>>>0>>0){gb()}j=h+12|0;if((c[j>>2]|0)!=(r|0)){gb()}f=g+8|0;if((c[f>>2]|0)==(r|0)){c[j>>2]=g;c[f>>2]=h;q=g;break}else{gb()}}}while(0);do{if((e|0)!=0){g=c[r+28>>2]|0;f=45832+(g<<2)|0;if((r|0)==(c[f>>2]|0)){c[f>>2]=q;if((q|0)==0){c[45532>>2]=c[45532>>2]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}f=e+16|0;if((c[f>>2]|0)==(r|0)){c[f>>2]=q}else{c[e+20>>2]=q}if((q|0)==0){break}}if(q>>>0<(c[45544>>2]|0)>>>0){gb()}c[q+24>>2]=e;e=c[r+16>>2]|0;do{if((e|0)!=0){if(e>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[q+16>>2]=e;c[e+24>>2]=q;break}}}while(0);e=c[r+20>>2]|0;if((e|0)!=0){if(e>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[q+20>>2]=e;c[e+24>>2]=q;break}}}}while(0);b:do{if(s>>>0<16){z=s+a|0;c[r+4>>2]=z|3;z=r+(z+4)|0;c[z>>2]=c[z>>2]|1}else{c[r+4>>2]=a|3;c[r+(a|4)>>2]=s|1;c[r+(s+a)>>2]=s;f=s>>>3;if(s>>>0<256){g=f<<1;e=45568+(g<<2)|0;h=c[11382]|0;f=1<>2]|0;if(!(f>>>0<(c[45544>>2]|0)>>>0)){p=g;o=f;break}gb()}}while(0);c[p>>2]=d;c[o+12>>2]=d;c[r+(a+8)>>2]=o;c[r+(a+12)>>2]=e;break}e=s>>>8;if((e|0)==0){e=0}else{if(s>>>0>16777215){e=31}else{y=(e+1048320|0)>>>16&8;z=e<>>16&4;z=z<>>16&2;e=14-(x|y|e)+(z<>>15)|0;e=s>>>(e+7|0)&1|e<<1}}f=45832+(e<<2)|0;c[r+(a+28)>>2]=e;c[r+(a+20)>>2]=0;c[r+(a+16)>>2]=0;h=c[45532>>2]|0;g=1<>2]=h|g;c[f>>2]=d;c[r+(a+24)>>2]=f;c[r+(a+12)>>2]=d;c[r+(a+8)>>2]=d;break}f=c[f>>2]|0;if((e|0)==31){e=0}else{e=25-(e>>>1)|0}c:do{if((c[f+4>>2]&-8|0)==(s|0)){n=f}else{e=s<>>31<<2)+16|0;h=c[g>>2]|0;if((h|0)==0){break}if((c[h+4>>2]&-8|0)==(s|0)){n=h;break c}else{e=e<<1;f=h}}if(g>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[g>>2]=d;c[r+(a+24)>>2]=f;c[r+(a+12)>>2]=d;c[r+(a+8)>>2]=d;break b}}}while(0);e=n+8|0;f=c[e>>2]|0;g=c[45544>>2]|0;if(n>>>0>>0){gb()}if(f>>>0>>0){gb()}else{c[f+12>>2]=d;c[e>>2]=d;c[r+(a+8)>>2]=f;c[r+(a+12)>>2]=n;c[r+(a+24)>>2]=0;break}}}while(0);z=r+8|0;i=b;return z|0}}}}}}while(0);n=c[45536>>2]|0;if(!(a>>>0>n>>>0)){e=n-a|0;d=c[45548>>2]|0;if(e>>>0>15){c[45548>>2]=d+a;c[45536>>2]=e;c[d+(a+4)>>2]=e|1;c[d+n>>2]=e;c[d+4>>2]=a|3}else{c[45536>>2]=0;c[45548>>2]=0;c[d+4>>2]=n|3;z=d+(n+4)|0;c[z>>2]=c[z>>2]|1}z=d+8|0;i=b;return z|0}n=c[45540>>2]|0;if(a>>>0>>0){y=n-a|0;c[45540>>2]=y;z=c[45552>>2]|0;c[45552>>2]=z+a;c[z+(a+4)>>2]=y|1;c[z+4>>2]=a|3;z=z+8|0;i=b;return z|0}do{if((c[11500]|0)==0){n=Sa(30)|0;if((n+ -1&n|0)==0){c[46008>>2]=n;c[46004>>2]=n;c[46012>>2]=-1;c[46016>>2]=-1;c[46020>>2]=0;c[45972>>2]=0;c[11500]=(hb(0)|0)&-16^1431655768;break}else{gb()}}}while(0);q=a+48|0;o=c[46008>>2]|0;r=a+47|0;n=o+r|0;o=0-o|0;p=n&o;if(!(p>>>0>a>>>0)){z=0;i=b;return z|0}s=c[45968>>2]|0;if((s|0)!=0){y=c[45960>>2]|0;z=y+p|0;if(z>>>0<=y>>>0|z>>>0>s>>>0){z=0;i=b;return z|0}}d:do{if((c[45972>>2]&4|0)==0){t=c[45552>>2]|0;e:do{if((t|0)==0){m=182}else{u=45976|0;while(1){v=c[u>>2]|0;if(!(v>>>0>t>>>0)){s=u+4|0;if((v+(c[s>>2]|0)|0)>>>0>t>>>0){break}}u=c[u+8>>2]|0;if((u|0)==0){m=182;break e}}if((u|0)==0){m=182}else{o=n-(c[45540>>2]|0)&o;if(o>>>0<2147483647){n=Oa(o|0)|0;m=(n|0)==((c[u>>2]|0)+(c[s>>2]|0)|0);s=n;t=o;n=m?n:-1;o=m?o:0;m=191}else{o=0}}}}while(0);do{if((m|0)==182){n=Oa(0)|0;if((n|0)==(-1|0)){o=0}else{s=n;t=c[46004>>2]|0;o=t+ -1|0;if((o&s|0)==0){o=p}else{o=p-s+(o+s&0-t)|0}t=c[45960>>2]|0;u=t+o|0;if(o>>>0>a>>>0&o>>>0<2147483647){s=c[45968>>2]|0;if((s|0)!=0){if(u>>>0<=t>>>0|u>>>0>s>>>0){o=0;break}}s=Oa(o|0)|0;m=(s|0)==(n|0);t=o;n=m?n:-1;o=m?o:0;m=191}else{o=0}}}}while(0);f:do{if((m|0)==191){m=0-t|0;if((n|0)!=(-1|0)){m=202;break d}do{if((s|0)!=(-1|0)&t>>>0<2147483647&t>>>0>>0){n=c[46008>>2]|0;n=r-t+n&0-n;if(n>>>0<2147483647){if((Oa(n|0)|0)==(-1|0)){Oa(m|0)|0;break f}else{t=n+t|0;break}}}}while(0);if((s|0)!=(-1|0)){n=s;o=t;m=202;break d}}}while(0);c[45972>>2]=c[45972>>2]|4;m=199}else{o=0;m=199}}while(0);if((m|0)==199){if(p>>>0<2147483647){n=Oa(p|0)|0;p=Oa(0)|0;if((p|0)!=(-1|0)&(n|0)!=(-1|0)&n>>>0

>>0){p=p-n|0;q=p>>>0>(a+40|0)>>>0;if(q){o=q?p:o;m=202}}}}if((m|0)==202){p=(c[45960>>2]|0)+o|0;c[45960>>2]=p;if(p>>>0>(c[45964>>2]|0)>>>0){c[45964>>2]=p}p=c[45552>>2]|0;g:do{if((p|0)==0){z=c[45544>>2]|0;if((z|0)==0|n>>>0>>0){c[45544>>2]=n}c[45976>>2]=n;c[45980>>2]=o;c[45988>>2]=0;c[45564>>2]=c[11500];c[45560>>2]=-1;d=0;do{z=d<<1;y=45568+(z<<2)|0;c[45568+(z+3<<2)>>2]=y;c[45568+(z+2<<2)>>2]=y;d=d+1|0}while((d|0)!=32);d=n+8|0;if((d&7|0)==0){d=0}else{d=0-d&7}z=o+ -40-d|0;c[45552>>2]=n+d;c[45540>>2]=z;c[n+(d+4)>>2]=z|1;c[n+(o+ -36)>>2]=40;c[45556>>2]=c[46016>>2]}else{t=45976|0;do{q=c[t>>2]|0;r=t+4|0;s=c[r>>2]|0;if((n|0)==(q+s|0)){m=214;break}t=c[t+8>>2]|0}while((t|0)!=0);if((m|0)==214){if((c[t+12>>2]&8|0)==0){if(p>>>0>=q>>>0&p>>>0>>0){c[r>>2]=s+o;d=(c[45540>>2]|0)+o|0;e=p+8|0;if((e&7|0)==0){e=0}else{e=0-e&7}z=d-e|0;c[45552>>2]=p+e;c[45540>>2]=z;c[p+(e+4)>>2]=z|1;c[p+(d+4)>>2]=40;c[45556>>2]=c[46016>>2];break}}}if(n>>>0<(c[45544>>2]|0)>>>0){c[45544>>2]=n}q=n+o|0;r=45976|0;do{if((c[r>>2]|0)==(q|0)){m=224;break}r=c[r+8>>2]|0}while((r|0)!=0);if((m|0)==224){if((c[r+12>>2]&8|0)==0){c[r>>2]=n;h=r+4|0;c[h>>2]=(c[h>>2]|0)+o;h=n+8|0;if((h&7|0)==0){h=0}else{h=0-h&7}j=n+(o+8)|0;if((j&7|0)==0){p=0}else{p=0-j&7}q=n+(p+o)|0;j=h+a|0;k=n+j|0;m=q-(n+h)-a|0;c[n+(h+4)>>2]=a|3;h:do{if((q|0)==(c[45552>>2]|0)){z=(c[45540>>2]|0)+m|0;c[45540>>2]=z;c[45552>>2]=k;c[n+(j+4)>>2]=z|1}else{if((q|0)==(c[45548>>2]|0)){z=(c[45536>>2]|0)+m|0;c[45536>>2]=z;c[45548>>2]=k;c[n+(j+4)>>2]=z|1;c[n+(z+j)>>2]=z;break}r=o+4|0;t=c[n+(r+p)>>2]|0;if((t&3|0)==1){a=t&-8;s=t>>>3;i:do{if(t>>>0<256){g=c[n+((p|8)+o)>>2]|0;r=c[n+(o+12+p)>>2]|0;t=45568+(s<<1<<2)|0;do{if((g|0)!=(t|0)){if(g>>>0<(c[45544>>2]|0)>>>0){gb()}if((c[g+12>>2]|0)==(q|0)){break}gb()}}while(0);if((r|0)==(g|0)){c[11382]=c[11382]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}s=r+8|0;if((c[s>>2]|0)==(q|0)){l=s;break}gb()}}while(0);c[g+12>>2]=r;c[l>>2]=g}else{l=c[n+((p|24)+o)>>2]|0;u=c[n+(o+12+p)>>2]|0;do{if((u|0)==(q|0)){u=p|16;t=n+(r+u)|0;s=c[t>>2]|0;if((s|0)==0){t=n+(u+o)|0;s=c[t>>2]|0;if((s|0)==0){g=0;break}}while(1){v=s+20|0;u=c[v>>2]|0;if((u|0)!=0){s=u;t=v;continue}v=s+16|0;u=c[v>>2]|0;if((u|0)==0){break}else{s=u;t=v}}if(t>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[t>>2]=0;g=s;break}}else{s=c[n+((p|8)+o)>>2]|0;if(s>>>0<(c[45544>>2]|0)>>>0){gb()}t=s+12|0;if((c[t>>2]|0)!=(q|0)){gb()}v=u+8|0;if((c[v>>2]|0)==(q|0)){c[t>>2]=u;c[v>>2]=s;g=u;break}else{gb()}}}while(0);if((l|0)==0){break}s=c[n+(o+28+p)>>2]|0;t=45832+(s<<2)|0;do{if((q|0)==(c[t>>2]|0)){c[t>>2]=g;if((g|0)!=0){break}c[45532>>2]=c[45532>>2]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}s=l+16|0;if((c[s>>2]|0)==(q|0)){c[s>>2]=g}else{c[l+20>>2]=g}if((g|0)==0){break i}}}while(0);if(g>>>0<(c[45544>>2]|0)>>>0){gb()}c[g+24>>2]=l;q=p|16;l=c[n+(q+o)>>2]|0;do{if((l|0)!=0){if(l>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[g+16>>2]=l;c[l+24>>2]=g;break}}}while(0);l=c[n+(r+q)>>2]|0;if((l|0)==0){break}if(l>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[g+20>>2]=l;c[l+24>>2]=g;break}}}while(0);q=n+((a|p)+o)|0;m=a+m|0}g=q+4|0;c[g>>2]=c[g>>2]&-2;c[n+(j+4)>>2]=m|1;c[n+(m+j)>>2]=m;g=m>>>3;if(m>>>0<256){a=g<<1;d=45568+(a<<2)|0;l=c[11382]|0;g=1<>2]|0;if(!(g>>>0<(c[45544>>2]|0)>>>0)){e=l;f=g;break}gb()}}while(0);c[e>>2]=k;c[f+12>>2]=k;c[n+(j+8)>>2]=f;c[n+(j+12)>>2]=d;break}e=m>>>8;do{if((e|0)==0){e=0}else{if(m>>>0>16777215){e=31;break}y=(e+1048320|0)>>>16&8;z=e<>>16&4;z=z<>>16&2;e=14-(x|y|e)+(z<>>15)|0;e=m>>>(e+7|0)&1|e<<1}}while(0);l=45832+(e<<2)|0;c[n+(j+28)>>2]=e;c[n+(j+20)>>2]=0;c[n+(j+16)>>2]=0;f=c[45532>>2]|0;g=1<>2]=f|g;c[l>>2]=k;c[n+(j+24)>>2]=l;c[n+(j+12)>>2]=k;c[n+(j+8)>>2]=k;break}l=c[l>>2]|0;if((e|0)==31){e=0}else{e=25-(e>>>1)|0}j:do{if((c[l+4>>2]&-8|0)==(m|0)){d=l}else{e=m<>>31<<2)+16|0;f=c[g>>2]|0;if((f|0)==0){break}if((c[f+4>>2]&-8|0)==(m|0)){d=f;break j}else{e=e<<1;l=f}}if(g>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[g>>2]=k;c[n+(j+24)>>2]=l;c[n+(j+12)>>2]=k;c[n+(j+8)>>2]=k;break h}}}while(0);f=d+8|0;e=c[f>>2]|0;g=c[45544>>2]|0;if(d>>>0>>0){gb()}if(e>>>0>>0){gb()}else{c[e+12>>2]=k;c[f>>2]=k;c[n+(j+8)>>2]=e;c[n+(j+12)>>2]=d;c[n+(j+24)>>2]=0;break}}}while(0);z=n+(h|8)|0;i=b;return z|0}}g=45976|0;while(1){e=c[g>>2]|0;if(!(e>>>0>p>>>0)){f=c[g+4>>2]|0;d=e+f|0;if(d>>>0>p>>>0){break}}g=c[g+8>>2]|0}g=e+(f+ -39)|0;if((g&7|0)==0){g=0}else{g=0-g&7}e=e+(f+ -47+g)|0;e=e>>>0<(p+16|0)>>>0?p:e;f=e+8|0;g=n+8|0;if((g&7|0)==0){g=0}else{g=0-g&7}z=o+ -40-g|0;c[45552>>2]=n+g;c[45540>>2]=z;c[n+(g+4)>>2]=z|1;c[n+(o+ -36)>>2]=40;c[45556>>2]=c[46016>>2];c[e+4>>2]=27;c[f+0>>2]=c[45976>>2];c[f+4>>2]=c[45980>>2];c[f+8>>2]=c[45984>>2];c[f+12>>2]=c[45988>>2];c[45976>>2]=n;c[45980>>2]=o;c[45988>>2]=0;c[45984>>2]=f;f=e+28|0;c[f>>2]=7;if((e+32|0)>>>0>>0){do{z=f;f=f+4|0;c[f>>2]=7}while((z+8|0)>>>0>>0)}if((e|0)!=(p|0)){d=e-p|0;e=p+(d+4)|0;c[e>>2]=c[e>>2]&-2;c[p+4>>2]=d|1;c[p+d>>2]=d;e=d>>>3;if(d>>>0<256){g=e<<1;d=45568+(g<<2)|0;f=c[11382]|0;e=1<>2]|0;if(!(f>>>0<(c[45544>>2]|0)>>>0)){j=e;k=f;break}gb()}}while(0);c[j>>2]=p;c[k+12>>2]=p;c[p+8>>2]=k;c[p+12>>2]=d;break}e=d>>>8;if((e|0)==0){e=0}else{if(d>>>0>16777215){e=31}else{y=(e+1048320|0)>>>16&8;z=e<>>16&4;z=z<>>16&2;e=14-(x|y|e)+(z<>>15)|0;e=d>>>(e+7|0)&1|e<<1}}f=45832+(e<<2)|0;c[p+28>>2]=e;c[p+20>>2]=0;c[p+16>>2]=0;g=c[45532>>2]|0;j=1<>2]=g|j;c[f>>2]=p;c[p+24>>2]=f;c[p+12>>2]=p;c[p+8>>2]=p;break}f=c[f>>2]|0;if((e|0)==31){e=0}else{e=25-(e>>>1)|0}k:do{if((c[f+4>>2]&-8|0)==(d|0)){h=f}else{e=d<>>31<<2)+16|0;j=c[g>>2]|0;if((j|0)==0){break}if((c[j+4>>2]&-8|0)==(d|0)){h=j;break k}else{e=e<<1;f=j}}if(g>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[g>>2]=p;c[p+24>>2]=f;c[p+12>>2]=p;c[p+8>>2]=p;break g}}}while(0);e=h+8|0;f=c[e>>2]|0;d=c[45544>>2]|0;if(h>>>0>>0){gb()}if(f>>>0>>0){gb()}else{c[f+12>>2]=p;c[e>>2]=p;c[p+8>>2]=f;c[p+12>>2]=h;c[p+24>>2]=0;break}}}}while(0);d=c[45540>>2]|0;if(d>>>0>a>>>0){y=d-a|0;c[45540>>2]=y;z=c[45552>>2]|0;c[45552>>2]=z+a;c[z+(a+4)>>2]=y|1;c[z+4>>2]=a|3;z=z+8|0;i=b;return z|0}}c[(ab()|0)>>2]=12;z=0;i=b;return z|0}function RK(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=i;if((a|0)==0){i=b;return}q=a+ -8|0;r=c[45544>>2]|0;if(q>>>0>>0){gb()}o=c[a+ -4>>2]|0;n=o&3;if((n|0)==1){gb()}j=o&-8;h=a+(j+ -8)|0;do{if((o&1|0)==0){u=c[q>>2]|0;if((n|0)==0){i=b;return}q=-8-u|0;o=a+q|0;n=u+j|0;if(o>>>0>>0){gb()}if((o|0)==(c[45548>>2]|0)){d=a+(j+ -4)|0;if((c[d>>2]&3|0)!=3){d=o;m=n;break}c[45536>>2]=n;c[d>>2]=c[d>>2]&-2;c[a+(q+4)>>2]=n|1;c[h>>2]=n;i=b;return}t=u>>>3;if(u>>>0<256){d=c[a+(q+8)>>2]|0;m=c[a+(q+12)>>2]|0;p=45568+(t<<1<<2)|0;if((d|0)!=(p|0)){if(d>>>0>>0){gb()}if((c[d+12>>2]|0)!=(o|0)){gb()}}if((m|0)==(d|0)){c[11382]=c[11382]&~(1<>>0>>0){gb()}p=m+8|0;if((c[p>>2]|0)==(o|0)){s=p}else{gb()}}c[d+12>>2]=m;c[s>>2]=d;d=o;m=n;break}s=c[a+(q+24)>>2]|0;t=c[a+(q+12)>>2]|0;do{if((t|0)==(o|0)){u=a+(q+20)|0;t=c[u>>2]|0;if((t|0)==0){u=a+(q+16)|0;t=c[u>>2]|0;if((t|0)==0){p=0;break}}while(1){w=t+20|0;v=c[w>>2]|0;if((v|0)!=0){t=v;u=w;continue}v=t+16|0;w=c[v>>2]|0;if((w|0)==0){break}else{t=w;u=v}}if(u>>>0>>0){gb()}else{c[u>>2]=0;p=t;break}}else{u=c[a+(q+8)>>2]|0;if(u>>>0>>0){gb()}r=u+12|0;if((c[r>>2]|0)!=(o|0)){gb()}v=t+8|0;if((c[v>>2]|0)==(o|0)){c[r>>2]=t;c[v>>2]=u;p=t;break}else{gb()}}}while(0);if((s|0)==0){d=o;m=n}else{t=c[a+(q+28)>>2]|0;r=45832+(t<<2)|0;if((o|0)==(c[r>>2]|0)){c[r>>2]=p;if((p|0)==0){c[45532>>2]=c[45532>>2]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}r=s+16|0;if((c[r>>2]|0)==(o|0)){c[r>>2]=p}else{c[s+20>>2]=p}if((p|0)==0){d=o;m=n;break}}if(p>>>0<(c[45544>>2]|0)>>>0){gb()}c[p+24>>2]=s;r=c[a+(q+16)>>2]|0;do{if((r|0)!=0){if(r>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[p+16>>2]=r;c[r+24>>2]=p;break}}}while(0);q=c[a+(q+20)>>2]|0;if((q|0)==0){d=o;m=n}else{if(q>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[p+20>>2]=q;c[q+24>>2]=p;d=o;m=n;break}}}}else{d=q;m=j}}while(0);if(!(d>>>0>>0)){gb()}n=a+(j+ -4)|0;o=c[n>>2]|0;if((o&1|0)==0){gb()}if((o&2|0)==0){if((h|0)==(c[45552>>2]|0)){w=(c[45540>>2]|0)+m|0;c[45540>>2]=w;c[45552>>2]=d;c[d+4>>2]=w|1;if((d|0)!=(c[45548>>2]|0)){i=b;return}c[45548>>2]=0;c[45536>>2]=0;i=b;return}if((h|0)==(c[45548>>2]|0)){w=(c[45536>>2]|0)+m|0;c[45536>>2]=w;c[45548>>2]=d;c[d+4>>2]=w|1;c[d+w>>2]=w;i=b;return}m=(o&-8)+m|0;n=o>>>3;do{if(o>>>0<256){k=c[a+j>>2]|0;j=c[a+(j|4)>>2]|0;a=45568+(n<<1<<2)|0;if((k|0)!=(a|0)){if(k>>>0<(c[45544>>2]|0)>>>0){gb()}if((c[k+12>>2]|0)!=(h|0)){gb()}}if((j|0)==(k|0)){c[11382]=c[11382]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}a=j+8|0;if((c[a>>2]|0)==(h|0)){l=a}else{gb()}}c[k+12>>2]=j;c[l>>2]=k}else{l=c[a+(j+16)>>2]|0;o=c[a+(j|4)>>2]|0;do{if((o|0)==(h|0)){o=a+(j+12)|0;n=c[o>>2]|0;if((n|0)==0){o=a+(j+8)|0;n=c[o>>2]|0;if((n|0)==0){k=0;break}}while(1){q=n+20|0;p=c[q>>2]|0;if((p|0)!=0){n=p;o=q;continue}q=n+16|0;p=c[q>>2]|0;if((p|0)==0){break}else{n=p;o=q}}if(o>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[o>>2]=0;k=n;break}}else{q=c[a+j>>2]|0;if(q>>>0<(c[45544>>2]|0)>>>0){gb()}p=q+12|0;if((c[p>>2]|0)!=(h|0)){gb()}n=o+8|0;if((c[n>>2]|0)==(h|0)){c[p>>2]=o;c[n>>2]=q;k=o;break}else{gb()}}}while(0);if((l|0)!=0){o=c[a+(j+20)>>2]|0;n=45832+(o<<2)|0;if((h|0)==(c[n>>2]|0)){c[n>>2]=k;if((k|0)==0){c[45532>>2]=c[45532>>2]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}n=l+16|0;if((c[n>>2]|0)==(h|0)){c[n>>2]=k}else{c[l+20>>2]=k}if((k|0)==0){break}}if(k>>>0<(c[45544>>2]|0)>>>0){gb()}c[k+24>>2]=l;h=c[a+(j+8)>>2]|0;do{if((h|0)!=0){if(h>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[k+16>>2]=h;c[h+24>>2]=k;break}}}while(0);h=c[a+(j+12)>>2]|0;if((h|0)!=0){if(h>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[k+20>>2]=h;c[h+24>>2]=k;break}}}}}while(0);c[d+4>>2]=m|1;c[d+m>>2]=m;if((d|0)==(c[45548>>2]|0)){c[45536>>2]=m;i=b;return}}else{c[n>>2]=o&-2;c[d+4>>2]=m|1;c[d+m>>2]=m}h=m>>>3;if(m>>>0<256){k=h<<1;e=45568+(k<<2)|0;j=c[11382]|0;h=1<>2]|0;if(h>>>0<(c[45544>>2]|0)>>>0){gb()}else{f=j;g=h}}c[f>>2]=d;c[g+12>>2]=d;c[d+8>>2]=g;c[d+12>>2]=e;i=b;return}f=m>>>8;if((f|0)==0){f=0}else{if(m>>>0>16777215){f=31}else{v=(f+1048320|0)>>>16&8;w=f<>>16&4;w=w<>>16&2;f=14-(u|v|f)+(w<>>15)|0;f=m>>>(f+7|0)&1|f<<1}}g=45832+(f<<2)|0;c[d+28>>2]=f;c[d+20>>2]=0;c[d+16>>2]=0;j=c[45532>>2]|0;h=1<>2]=j|h;c[g>>2]=d;c[d+24>>2]=g;c[d+12>>2]=d;c[d+8>>2]=d}else{g=c[g>>2]|0;if((f|0)==31){f=0}else{f=25-(f>>>1)|0}b:do{if((c[g+4>>2]&-8|0)==(m|0)){e=g}else{f=m<>>31<<2)+16|0;h=c[j>>2]|0;if((h|0)==0){break}if((c[h+4>>2]&-8|0)==(m|0)){e=h;break b}else{f=f<<1;g=h}}if(j>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[j>>2]=d;c[d+24>>2]=g;c[d+12>>2]=d;c[d+8>>2]=d;break a}}}while(0);g=e+8|0;f=c[g>>2]|0;h=c[45544>>2]|0;if(e>>>0>>0){gb()}if(f>>>0>>0){gb()}else{c[f+12>>2]=d;c[g>>2]=d;c[d+8>>2]=f;c[d+12>>2]=e;c[d+24>>2]=0;break}}}while(0);w=(c[45560>>2]|0)+ -1|0;c[45560>>2]=w;if((w|0)==0){d=45984|0}else{i=b;return}while(1){d=c[d>>2]|0;if((d|0)==0){break}else{d=d+8|0}}c[45560>>2]=-1;i=b;return}function SK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;do{if((a|0)==0){e=QK(b)|0}else{if(b>>>0>4294967231){c[(ab()|0)>>2]=12;e=0;break}if(b>>>0<11){e=16}else{e=b+11&-8}e=TK(a+ -8|0,e)|0;if((e|0)!=0){e=e+8|0;break}e=QK(b)|0;if((e|0)==0){e=0}else{f=c[a+ -4>>2]|0;f=(f&-8)-((f&3|0)==0?8:4)|0;fL(e|0,a|0,(f>>>0>>0?f:b)|0)|0;RK(a)}}}while(0);i=d;return e|0}function TK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;e=a+4|0;g=c[e>>2]|0;j=g&-8;f=a+j|0;l=c[45544>>2]|0;if(a>>>0>>0){gb()}n=g&3;if(!((n|0)!=1&a>>>0>>0)){gb()}h=a+(j|4)|0;o=c[h>>2]|0;if((o&1|0)==0){gb()}if((n|0)==0){if(b>>>0<256){q=0;i=d;return q|0}if(!(j>>>0<(b+4|0)>>>0)){if(!((j-b|0)>>>0>c[46008>>2]<<1>>>0)){q=a;i=d;return q|0}}q=0;i=d;return q|0}if(!(j>>>0>>0)){f=j-b|0;if(!(f>>>0>15)){q=a;i=d;return q|0}c[e>>2]=g&1|b|2;c[a+(b+4)>>2]=f|3;c[h>>2]=c[h>>2]|1;UK(a+b|0,f);q=a;i=d;return q|0}if((f|0)==(c[45552>>2]|0)){f=(c[45540>>2]|0)+j|0;if(!(f>>>0>b>>>0)){q=0;i=d;return q|0}q=f-b|0;c[e>>2]=g&1|b|2;c[a+(b+4)>>2]=q|1;c[45552>>2]=a+b;c[45540>>2]=q;q=a;i=d;return q|0}if((f|0)==(c[45548>>2]|0)){h=(c[45536>>2]|0)+j|0;if(h>>>0>>0){q=0;i=d;return q|0}f=h-b|0;if(f>>>0>15){c[e>>2]=g&1|b|2;c[a+(b+4)>>2]=f|1;c[a+h>>2]=f;q=a+(h+4)|0;c[q>>2]=c[q>>2]&-2;b=a+b|0}else{c[e>>2]=g&1|h|2;b=a+(h+4)|0;c[b>>2]=c[b>>2]|1;b=0;f=0}c[45536>>2]=f;c[45548>>2]=b;q=a;i=d;return q|0}if((o&2|0)!=0){q=0;i=d;return q|0}h=(o&-8)+j|0;if(h>>>0>>0){q=0;i=d;return q|0}g=h-b|0;n=o>>>3;do{if(o>>>0<256){k=c[a+(j+8)>>2]|0;j=c[a+(j+12)>>2]|0;o=45568+(n<<1<<2)|0;if((k|0)!=(o|0)){if(k>>>0>>0){gb()}if((c[k+12>>2]|0)!=(f|0)){gb()}}if((j|0)==(k|0)){c[11382]=c[11382]&~(1<>>0>>0){gb()}l=j+8|0;if((c[l>>2]|0)==(f|0)){m=l}else{gb()}}c[k+12>>2]=j;c[m>>2]=k}else{m=c[a+(j+24)>>2]|0;o=c[a+(j+12)>>2]|0;do{if((o|0)==(f|0)){o=a+(j+20)|0;n=c[o>>2]|0;if((n|0)==0){o=a+(j+16)|0;n=c[o>>2]|0;if((n|0)==0){k=0;break}}while(1){q=n+20|0;p=c[q>>2]|0;if((p|0)!=0){n=p;o=q;continue}q=n+16|0;p=c[q>>2]|0;if((p|0)==0){break}else{n=p;o=q}}if(o>>>0>>0){gb()}else{c[o>>2]=0;k=n;break}}else{n=c[a+(j+8)>>2]|0;if(n>>>0>>0){gb()}p=n+12|0;if((c[p>>2]|0)!=(f|0)){gb()}l=o+8|0;if((c[l>>2]|0)==(f|0)){c[p>>2]=o;c[l>>2]=n;k=o;break}else{gb()}}}while(0);if((m|0)!=0){n=c[a+(j+28)>>2]|0;l=45832+(n<<2)|0;if((f|0)==(c[l>>2]|0)){c[l>>2]=k;if((k|0)==0){c[45532>>2]=c[45532>>2]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}l=m+16|0;if((c[l>>2]|0)==(f|0)){c[l>>2]=k}else{c[m+20>>2]=k}if((k|0)==0){break}}if(k>>>0<(c[45544>>2]|0)>>>0){gb()}c[k+24>>2]=m;f=c[a+(j+16)>>2]|0;do{if((f|0)!=0){if(f>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[k+16>>2]=f;c[f+24>>2]=k;break}}}while(0);f=c[a+(j+20)>>2]|0;if((f|0)!=0){if(f>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[k+20>>2]=f;c[f+24>>2]=k;break}}}}}while(0);if(g>>>0<16){c[e>>2]=h|c[e>>2]&1|2;q=a+(h|4)|0;c[q>>2]=c[q>>2]|1;q=a;i=d;return q|0}else{c[e>>2]=c[e>>2]&1|b|2;c[a+(b+4)>>2]=g|3;q=a+(h|4)|0;c[q>>2]=c[q>>2]|1;UK(a+b|0,g);q=a;i=d;return q|0}return 0}function UK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=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;d=i;h=a+b|0;l=c[a+4>>2]|0;do{if((l&1|0)==0){p=c[a>>2]|0;if((l&3|0)==0){i=d;return}l=a+(0-p)|0;m=p+b|0;q=c[45544>>2]|0;if(l>>>0>>0){gb()}if((l|0)==(c[45548>>2]|0)){e=a+(b+4)|0;if((c[e>>2]&3|0)!=3){e=l;n=m;break}c[45536>>2]=m;c[e>>2]=c[e>>2]&-2;c[a+(4-p)>>2]=m|1;c[h>>2]=m;i=d;return}s=p>>>3;if(p>>>0<256){e=c[a+(8-p)>>2]|0;n=c[a+(12-p)>>2]|0;o=45568+(s<<1<<2)|0;if((e|0)!=(o|0)){if(e>>>0>>0){gb()}if((c[e+12>>2]|0)!=(l|0)){gb()}}if((n|0)==(e|0)){c[11382]=c[11382]&~(1<>>0>>0){gb()}o=n+8|0;if((c[o>>2]|0)==(l|0)){r=o}else{gb()}}c[e+12>>2]=n;c[r>>2]=e;e=l;n=m;break}r=c[a+(24-p)>>2]|0;t=c[a+(12-p)>>2]|0;do{if((t|0)==(l|0)){u=16-p|0;t=a+(u+4)|0;s=c[t>>2]|0;if((s|0)==0){t=a+u|0;s=c[t>>2]|0;if((s|0)==0){o=0;break}}while(1){u=s+20|0;v=c[u>>2]|0;if((v|0)!=0){s=v;t=u;continue}v=s+16|0;u=c[v>>2]|0;if((u|0)==0){break}else{s=u;t=v}}if(t>>>0>>0){gb()}else{c[t>>2]=0;o=s;break}}else{s=c[a+(8-p)>>2]|0;if(s>>>0>>0){gb()}u=s+12|0;if((c[u>>2]|0)!=(l|0)){gb()}q=t+8|0;if((c[q>>2]|0)==(l|0)){c[u>>2]=t;c[q>>2]=s;o=t;break}else{gb()}}}while(0);if((r|0)==0){e=l;n=m}else{q=c[a+(28-p)>>2]|0;s=45832+(q<<2)|0;if((l|0)==(c[s>>2]|0)){c[s>>2]=o;if((o|0)==0){c[45532>>2]=c[45532>>2]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}q=r+16|0;if((c[q>>2]|0)==(l|0)){c[q>>2]=o}else{c[r+20>>2]=o}if((o|0)==0){e=l;n=m;break}}if(o>>>0<(c[45544>>2]|0)>>>0){gb()}c[o+24>>2]=r;q=16-p|0;p=c[a+q>>2]|0;do{if((p|0)!=0){if(p>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[o+16>>2]=p;c[p+24>>2]=o;break}}}while(0);p=c[a+(q+4)>>2]|0;if((p|0)==0){e=l;n=m}else{if(p>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[o+20>>2]=p;c[p+24>>2]=o;e=l;n=m;break}}}}else{e=a;n=b}}while(0);l=c[45544>>2]|0;if(h>>>0>>0){gb()}m=a+(b+4)|0;o=c[m>>2]|0;if((o&2|0)==0){if((h|0)==(c[45552>>2]|0)){v=(c[45540>>2]|0)+n|0;c[45540>>2]=v;c[45552>>2]=e;c[e+4>>2]=v|1;if((e|0)!=(c[45548>>2]|0)){i=d;return}c[45548>>2]=0;c[45536>>2]=0;i=d;return}if((h|0)==(c[45548>>2]|0)){v=(c[45536>>2]|0)+n|0;c[45536>>2]=v;c[45548>>2]=e;c[e+4>>2]=v|1;c[e+v>>2]=v;i=d;return}n=(o&-8)+n|0;m=o>>>3;do{if(o>>>0<256){j=c[a+(b+8)>>2]|0;a=c[a+(b+12)>>2]|0;b=45568+(m<<1<<2)|0;if((j|0)!=(b|0)){if(j>>>0>>0){gb()}if((c[j+12>>2]|0)!=(h|0)){gb()}}if((a|0)==(j|0)){c[11382]=c[11382]&~(1<>>0>>0){gb()}b=a+8|0;if((c[b>>2]|0)==(h|0)){k=b}else{gb()}}c[j+12>>2]=a;c[k>>2]=j}else{k=c[a+(b+24)>>2]|0;m=c[a+(b+12)>>2]|0;do{if((m|0)==(h|0)){o=a+(b+20)|0;m=c[o>>2]|0;if((m|0)==0){o=a+(b+16)|0;m=c[o>>2]|0;if((m|0)==0){j=0;break}}while(1){q=m+20|0;p=c[q>>2]|0;if((p|0)!=0){m=p;o=q;continue}q=m+16|0;p=c[q>>2]|0;if((p|0)==0){break}else{m=p;o=q}}if(o>>>0>>0){gb()}else{c[o>>2]=0;j=m;break}}else{o=c[a+(b+8)>>2]|0;if(o>>>0>>0){gb()}p=o+12|0;if((c[p>>2]|0)!=(h|0)){gb()}l=m+8|0;if((c[l>>2]|0)==(h|0)){c[p>>2]=m;c[l>>2]=o;j=m;break}else{gb()}}}while(0);if((k|0)!=0){l=c[a+(b+28)>>2]|0;m=45832+(l<<2)|0;if((h|0)==(c[m>>2]|0)){c[m>>2]=j;if((j|0)==0){c[45532>>2]=c[45532>>2]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}l=k+16|0;if((c[l>>2]|0)==(h|0)){c[l>>2]=j}else{c[k+20>>2]=j}if((j|0)==0){break}}if(j>>>0<(c[45544>>2]|0)>>>0){gb()}c[j+24>>2]=k;h=c[a+(b+16)>>2]|0;do{if((h|0)!=0){if(h>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[j+16>>2]=h;c[h+24>>2]=j;break}}}while(0);h=c[a+(b+20)>>2]|0;if((h|0)!=0){if(h>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[j+20>>2]=h;c[h+24>>2]=j;break}}}}}while(0);c[e+4>>2]=n|1;c[e+n>>2]=n;if((e|0)==(c[45548>>2]|0)){c[45536>>2]=n;i=d;return}}else{c[m>>2]=o&-2;c[e+4>>2]=n|1;c[e+n>>2]=n}a=n>>>3;if(n>>>0<256){b=a<<1;h=45568+(b<<2)|0;j=c[11382]|0;a=1<>2]|0;if(a>>>0<(c[45544>>2]|0)>>>0){gb()}else{g=b;f=a}}c[g>>2]=e;c[f+12>>2]=e;c[e+8>>2]=f;c[e+12>>2]=h;i=d;return}f=n>>>8;if((f|0)==0){f=0}else{if(n>>>0>16777215){f=31}else{u=(f+1048320|0)>>>16&8;v=f<>>16&4;v=v<>>16&2;f=14-(t|u|f)+(v<>>15)|0;f=n>>>(f+7|0)&1|f<<1}}g=45832+(f<<2)|0;c[e+28>>2]=f;c[e+20>>2]=0;c[e+16>>2]=0;a=c[45532>>2]|0;h=1<>2]=a|h;c[g>>2]=e;c[e+24>>2]=g;c[e+12>>2]=e;c[e+8>>2]=e;i=d;return}g=c[g>>2]|0;if((f|0)==31){f=0}else{f=25-(f>>>1)|0}a:do{if((c[g+4>>2]&-8|0)!=(n|0)){f=n<>>31<<2)+16|0;g=c[h>>2]|0;if((g|0)==0){break}if((c[g+4>>2]&-8|0)==(n|0)){break a}else{f=f<<1;a=g}}if(h>>>0<(c[45544>>2]|0)>>>0){gb()}c[h>>2]=e;c[e+24>>2]=a;c[e+12>>2]=e;c[e+8>>2]=e;i=d;return}}while(0);h=g+8|0;a=c[h>>2]|0;f=c[45544>>2]|0;if(g>>>0>>0){gb()}if(a>>>0>>0){gb()}c[a+12>>2]=e;c[h>>2]=e;c[e+8>>2]=a;c[e+12>>2]=g;c[e+24>>2]=0;i=d;return}function VK(a){a=a|0;return(a+ -65|0)>>>0<26|0}function WK(a){a=a|0;var b=0,c=0;c=i;b=(VK(a)|0)==0;i=c;return(b?a:a|32)|0}function XK(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=i;a:do{if((d|0)==0){d=0}else{while(1){f=a[b>>0]|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>>24)){break}d=d+ -1|0;if((d|0)==0){d=0;break a}else{b=b+1|0;c=c+1|0}}d=(f&255)-(g&255)|0}}while(0);i=e;return d|0}function YK(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;d=i;f=a[b>>0]|0;e=a[c>>0]|0;if((f<<24>>24==0?1:f<<24>>24!=e<<24>>24)|e<<24>>24==0){c=f;f=e;e=c&255;f=f&255;f=e-f|0;i=d;return f|0}do{b=b+1|0;c=c+1|0;f=a[b>>0]|0;e=a[c>>0]|0}while(!((f<<24>>24==0?1:f<<24>>24!=e<<24>>24)|e<<24>>24==0));c=f&255;f=e&255;f=c-f|0;i=d;return f|0}function ZK(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;f=i;if((e|0)==0){b=0;i=f;return b|0}g=a[b>>0]|0;a:do{if(g<<24>>24==0){g=0}else{while(1){e=e+ -1|0;h=a[c>>0]|0;if(!((e|0)!=0&h<<24>>24!=0&g<<24>>24==h<<24>>24)){break a}b=b+1|0;c=c+1|0;g=a[b>>0]|0;if(g<<24>>24==0){g=0;break}}}}while(0);h=(g&255)-(d[c>>0]|0)|0;i=f;return h|0}function _K(){}function $K(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=b-d-(c>>>0>a>>>0|0)>>>0;return(D=b,a-c>>>0|0)|0}function aL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+e|0;if((e|0)>=20){d=d&255;i=b&3;h=d|d<<8|d<<16|d<<24;g=f&~3;if(i){i=b+4-i|0;while((b|0)<(i|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=h;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return b-e|0}function bL(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b<>>32-c;return a<>0]|0){c=c+1|0}return c-b|0}function dL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return(D=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function eL(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b>>>c;return a>>>c|(b&(1<>>c-32|0}function fL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=4096)return Qa(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if((e|0)==0)return f|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}while((e|0)>=4){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0;e=e-4|0}}while((e|0)>0){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}return f|0}function gL(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else{fL(b,c,d)|0}return b|0}function hL(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b>>c;return a>>>c|(b&(1<>c-32|0}function iL(b){b=b|0;var c=0;c=a[n+(b>>>24)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+16|0;return(a[n+(b&255)>>0]|0)+24|0}function jL(b){b=b|0;var c=0;c=a[m+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[m+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[m+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return(a[m+(b>>>24)>>0]|0)+24|0}function kL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;d=b&65535;c=$(d,f)|0;e=a>>>16;d=(c>>>16)+($(d,e)|0)|0;b=b>>>16;a=$(b,f)|0;return(D=(d>>>16)+($(b,e)|0)+(((d&65535)+a|0)>>>16)|0,d+a<<16|c&65535|0)|0}function lL(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;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=$K(j^a,i^b,j,i)|0;g=D;b=f^j;a=e^i;a=$K((qL(h,g,$K(f^c,e^d,f,e)|0,D,0)|0)^b,D^a,b,a)|0;return a|0}function mL(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+8|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;l=e>>31|((e|0)<0?-1:0)<<1;k=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;b=$K(h^a,g^b,h,g)|0;a=D;qL(b,a,$K(l^d,k^e,l,k)|0,D,j)|0;a=$K(c[j>>2]^h,c[j+4>>2]^g,h,g)|0;b=D;i=f;return(D=b,a)|0}function nL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;a=kL(e,f)|0;c=D;return(D=($(b,f)|0)+($(d,e)|0)+c|c&0,a|0|0)|0}function oL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=qL(a,b,c,d,0)|0;return a|0}function pL(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+8|0;f=g|0;qL(a,b,d,e,f)|0;i=g;return(D=c[f+4>>2]|0,c[f>>2]|0)|0}function qL(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=a;j=b;i=j;l=d;g=e;k=g;if((i|0)==0){g=(f|0)!=0;if((k|0)==0){if(g){c[f>>2]=(h>>>0)%(l>>>0);c[f+4>>2]=0}k=0;m=(h>>>0)/(l>>>0)>>>0;return(D=k,m)|0}else{if(!g){l=0;m=0;return(D=l,m)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;l=0;m=0;return(D=l,m)|0}}m=(k|0)==0;do{if((l|0)==0){if(m){if((f|0)!=0){c[f>>2]=(i>>>0)%(l>>>0);c[f+4>>2]=0}k=0;m=(i>>>0)/(l>>>0)>>>0;return(D=k,m)|0}if((h|0)==0){if((f|0)!=0){c[f>>2]=0;c[f+4>>2]=(i>>>0)%(k>>>0)}l=0;m=(i>>>0)/(k>>>0)>>>0;return(D=l,m)|0}l=k-1|0;if((l&k|0)==0){if((f|0)!=0){c[f>>2]=a|0;c[f+4>>2]=l&i|b&0}l=0;m=i>>>((jL(k|0)|0)>>>0);return(D=l,m)|0}k=(iL(k|0)|0)-(iL(i|0)|0)|0;if(k>>>0<=30){j=k+1|0;l=31-k|0;a=j;b=i<>>(j>>>0);j=i>>>(j>>>0);k=0;l=h<>2]=a|0;c[f+4>>2]=j|b&0;l=0;m=0;return(D=l,m)|0}else{if(!m){k=(iL(k|0)|0)-(iL(i|0)|0)|0;if(k>>>0<=31){m=k+1|0;l=31-k|0;j=k-31>>31;a=m;b=h>>>(m>>>0)&j|i<>>(m>>>0)&j;k=0;l=h<>2]=a|0;c[f+4>>2]=j|b&0;l=0;m=0;return(D=l,m)|0}k=l-1|0;if((k&l|0)!=0){l=(iL(l|0)|0)+33-(iL(i|0)|0)|0;p=64-l|0;m=32-l|0;n=m>>31;o=l-32|0;j=o>>31;a=l;b=m-1>>31&i>>>(o>>>0)|(i<>>(l>>>0))&j;j=j&i>>>(l>>>0);k=h<>>(o>>>0))&n|h<>31;break}if((f|0)!=0){c[f>>2]=k&h;c[f+4>>2]=0}if((l|0)==1){o=j|b&0;p=a|0|0;return(D=o,p)|0}else{p=jL(l|0)|0;o=i>>>(p>>>0)|0;p=i<<32-p|h>>>(p>>>0)|0;return(D=o,p)|0}}}while(0);if((a|0)==0){g=l;e=0;i=0}else{h=d|0|0;g=g|e&0;d=dL(h,g,-1,-1)|0;e=D;i=0;do{m=l;l=k>>>31|l<<1;k=i|k<<1;m=b<<1|m>>>31|0;n=b>>>31|j<<1|0;$K(d,e,m,n)|0;p=D;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;b=$K(m,n,o&h,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&g)|0;j=D;a=a-1|0}while((a|0)!=0);g=l;e=0}h=0;if((f|0)!=0){c[f>>2]=b;c[f+4>>2]=j}o=(k|0)>>>31|(g|h)<<1|(h<<1|k>>>31)&0|e;p=(k<<1|0>>>31)&-2|i;return(D=o,p)|0}function rL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return pb[a&31](b|0,c|0,d|0)|0}function sL(a){a=a|0;return qb[a&1]()|0}function tL(a,b){a=a|0;b=b|0;rb[a&31](b|0)}function uL(a,b,c){a=a|0;b=b|0;c=c|0;sb[a&7](b|0,c|0)}function vL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return tb[a&15](b|0,c|0,d|0,e|0,f|0,g|0)|0}function wL(a,b){a=a|0;b=b|0;return ub[a&63](b|0)|0}function xL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vb[a&63](b|0,c|0,d|0)}function yL(a){a=a|0;wb[a&0]()}function zL(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return xb[a&31](b|0,c|0,d|0,e|0)|0}function AL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;yb[a&0](b|0,c|0,d|0,e|0,f|0,g|0)}function BL(a,b,c){a=a|0;b=b|0;c=c|0;return zb[a&127](b|0,c|0)|0}function CL(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Ab[a&15](b|0,c|0,d|0,e|0,f|0)|0}function DL(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Bb[a&3](b|0,c|0,d|0,e|0)}function EL(a,b,c){a=a|0;b=b|0;c=c|0;aa(0);return 0}function FL(a,b,c){a=a|0;b=b|0;c=c|0;return Pa(a|0,b|0,c|0)|0}function GL(a,b,c){a=a|0;b=b|0;c=c|0;return fb(a|0,b|0,c|0)|0}function HL(a,b,c){a=a|0;b=b|0;c=c|0;return _a(a|0,b|0,c|0)|0}function IL(){aa(1);return 0}function JL(a){a=a|0;aa(2)}function KL(a,b){a=a|0;b=b|0;aa(3)}function LL(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;aa(4);return 0}function ML(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return mb(a|0,b|0,c|0,d|0,e|0,f|0)|0}function NL(a){a=a|0;aa(5);return 0}function OL(a){a=a|0;return Ua(a|0)|0}function PL(a){a=a|0;return Ra(a|0)|0}function QL(a){a=a|0;return Ca(a|0)|0}function RL(a,b,c){a=a|0;b=b|0;c=c|0;aa(6)}function SL(){aa(7)}function TL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;aa(8);return 0}function UL(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;aa(9)}function VL(a,b){a=a|0;b=b|0;aa(10);return 0}function WL(a,b){a=a|0;b=b|0;return za(a|0,b|0)|0}function XL(a,b){a=a|0;b=b|0;return va(a|0,b|0)|0}function YL(a,b){a=a|0;b=b|0;return bb(a|0,b|0)|0}function ZL(a,b){a=a|0;b=b|0;return Aa(a|0,b|0)|0}function _L(a,b){a=a|0;b=b|0;return Va(a|0,b|0)|0}function $L(a,b){a=a|0;b=b|0;return Ta(a|0,b|0)|0}function aM(a,b){a=a|0;b=b|0;return lb(a|0,b|0)|0}function bM(a,b){a=a|0;b=b|0;return Xa(a|0,b|0)|0}function cM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;aa(11);return 0}function dM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;aa(12)} + + + + +// EMSCRIPTEN_END_FUNCS +var pb=[EL,Nb,Gc,Jc,Mc,Oc,Ji,ki,Gn,Wn,ko,gp,Rr,Ur,DJ,JJ,YJ,FL,GL,HL,_J,tl,sk,tk,ql,ol,xl,El,EL,EL,EL,EL];var qb=[IL,$J];var rb=[JL,Qr,Yr,Zr,is,ns,rs,Ts,Us,Vs,Xs,Zs,OJ,oc,to,oo,_h,zy,JL,JL,JL,JL,JL,JL,JL,JL,JL,JL,JL,JL,JL,JL];var sb=[KL,Sr,Xr,Kx,Uw,KL,KL,KL];var tb=[LL,Rb,zi,Ai,ci,Kn,_n,bo,ML,LL,LL,LL,LL,LL,LL,LL];var ub=[NL,Ob,Qb,Ci,Di,Fi,Hi,Ii,Mi,Ni,Oi,Pi,ei,gi,ii,ji,Hn,Jn,Xn,Zn,eo,go,io,jo,dp,Pr,Tr,hs,ks,ls,ms,AJ,KJ,LJ,OL,PL,QL,qK,zK,_b,Jd,nc,xo,On,Pn,Tn,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL];var vb=[RL,bk,ck,dk,ek,Vr,os,ps,qs,ss,ts,us,vs,ws,xs,ys,zs,As,Bs,Cs,Ds,Es,Fs,Gs,Hs,Is,Js,Ks,Ls,Ms,Ns,Os,Ps,Qs,Rs,Ss,Ws,Ys,_s,bt,ct,dt,ht,it,jt,kt,lt,mt,nt,ot,yy,wy,vy,Xz,_z,sg,Bn,RL,RL,RL,RL,RL,RL,RL];var wb=[SL];var xb=[TL,Pb,Hc,Ic,Li,In,Yn,NJ,RJ,vf,vg,ui,vi,Jy,Py,vD,wD,xD,TL,TL,TL,TL,TL,TL,TL,TL,TL,TL,TL,TL,TL,TL];var yb=[UL];var zb=[VL,Kc,Lc,Nc,Pc,Qc,IK,pK,zJ,Bi,Ei,Ki,Ri,Si,Ti,Ui,di,fi,li,co,fo,lo,hp,ip,js,EJ,FJ,GJ,HJ,IJ,PJ,WL,XL,YL,ZL,_L,$L,ZJ,aM,bM,rK,sK,tK,AK,BK,CK,mg,wi,xi,yj,zj,Dj,ak,Pq,Qp,Vw,Ix,Jx,$w,ax,vx,Cx,Mz,Nz,YC,ZC,qE,rE,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL];var Ab=[cM,Fc,Gi,Qi,hi,ho,ep,fp,BJ,CJ,MJ,QJ,Mh,Nh,cM,cM];var Bb=[dM,Wr,kc,dM];return{_strlen:cL,_sqlite3_column_name:Ie,_sqlite3_reset:Cd,_sqlite3_column_type:He,_sqlite3_exec:Bf,_sqlite3_step:le,_bitshift64Lshr:eL,_sqlite3_prepare_v2:Df,_sqlite3_close_v2:jg,_sqlite3_open:Bg,_bitshift64Shl:bL,_sqlite3_column_bytes:Be,_sqlite3_bind_int:Oe,_sqlite3_bind_blob:Ke,_memset:aL,_memcpy:fL,_sqlite3_column_blob:ye,_sqlite3_bind_parameter_index:Ve,_i64Subtract:$K,_sqlite3_column_text:Fe,_realloc:SK,_i64Add:dL,_sqlite3_data_count:xe,_sqlite3_column_double:Ce,_sqlite3_errmsg:Ff,_sqlite3_finalize:yd,_sqlite3_bind_text:Re,_sqlite3_bind_double:Me,_free:RK,_memmove:gL,_register_character_tokenizer:Lb,_sqlite3_free:oc,_sqlite3_clear_bindings:Fd,_malloc:QK,runPostSets:_K,stackAlloc:Cb,stackSave:Db,stackRestore:Eb,setThrew:Fb,setTempRet0:Ib,getTempRet0:Jb,dynCall_iiii:rL,dynCall_i:sL,dynCall_vi:tL,dynCall_vii:uL,dynCall_iiiiiii:vL,dynCall_ii:wL,dynCall_viii:xL,dynCall_v:yL,dynCall_iiiii:zL,dynCall_viiiiii:AL,dynCall_iii:BL,dynCall_iiiiii:CL,dynCall_viiii:DL} +// EMSCRIPTEN_END_ASM + +})({Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array},{abort:la,assert:v,asmPrintInt:function(a,b){r.print("int "+a+","+b)},asmPrintFloat:function(a,b){r.print("float "+a+","+b)},min:za,invoke_iiii:function(a,b,c,d){try{return r.dynCall_iiii(a,b,c,d)}catch(e){"number"!==typeof e&&"longjmp"!==e&&f(e),U.setThrew(1,0)}},invoke_i:function(a){try{return r.dynCall_i(a)}catch(b){"number"!== +typeof b&&"longjmp"!==b&&f(b),U.setThrew(1,0)}},invoke_vi:function(a,b){try{r.dynCall_vi(a,b)}catch(c){"number"!==typeof c&&"longjmp"!==c&&f(c),U.setThrew(1,0)}},invoke_vii:function(a,b,c){try{r.dynCall_vii(a,b,c)}catch(d){"number"!==typeof d&&"longjmp"!==d&&f(d),U.setThrew(1,0)}},invoke_iiiiiii:function(a,b,c,d,e,g,h){try{return r.dynCall_iiiiiii(a,b,c,d,e,g,h)}catch(m){"number"!==typeof m&&"longjmp"!==m&&f(m),U.setThrew(1,0)}},invoke_ii:function(a,b){try{return r.dynCall_ii(a,b)}catch(c){"number"!== +typeof c&&"longjmp"!==c&&f(c),U.setThrew(1,0)}},invoke_viii:function(a,b,c,d){try{r.dynCall_viii(a,b,c,d)}catch(e){"number"!==typeof e&&"longjmp"!==e&&f(e),U.setThrew(1,0)}},invoke_v:function(a){try{r.dynCall_v(a)}catch(b){"number"!==typeof b&&"longjmp"!==b&&f(b),U.setThrew(1,0)}},invoke_iiiii:function(a,b,c,d,e){try{return r.dynCall_iiiii(a,b,c,d,e)}catch(g){"number"!==typeof g&&"longjmp"!==g&&f(g),U.setThrew(1,0)}},invoke_viiiiii:function(a,b,c,d,e,g,h){try{r.dynCall_viiiiii(a,b,c,d,e,g,h)}catch(m){"number"!== +typeof m&&"longjmp"!==m&&f(m),U.setThrew(1,0)}},invoke_iii:function(a,b,c){try{return r.dynCall_iii(a,b,c)}catch(d){"number"!==typeof d&&"longjmp"!==d&&f(d),U.setThrew(1,0)}},invoke_iiiiii:function(a,b,c,d,e,g){try{return r.dynCall_iiiiii(a,b,c,d,e,g)}catch(h){"number"!==typeof h&&"longjmp"!==h&&f(h),U.setThrew(1,0)}},invoke_viiii:function(a,b,c,d,e){try{r.dynCall_viiii(a,b,c,d,e)}catch(g){"number"!==typeof g&&"longjmp"!==g&&f(g),U.setThrew(1,0)}},_getgid:qc,_sleep:function(a){return nc(1E6*a)},_send:function(a, +b,c){return!T.qc(a)?(L(J.H),-1):tc(a,b,c)},_getcwd:function(a,b){if(0==b)return L(J.A),0;if(2>b)return L(J.Ub),0;ab("/",a);return a},_chown:function(a){"string"!==typeof a&&(a=w(a));try{return Wb(a),0}catch(b){return R(b),-1}},_lseek:function(a,b,c){a=P[a];if(!a)return L(J.H),-1;try{return ac(a,b,c)}catch(d){return R(d),-1}},___setErrNo:L,_access:function(a,b){a=w(a);if(b&-8)return L(J.A),-1;var c;try{c=S(a,{sa:j}).k}catch(d){return R(d),-1}var e="";b&4&&(e+="r");b&2&&(e+="w");b&1&&(e+="x");return e&& +Fb(c,e)?(L(J.jb),-1):0},_fstat:function(a,b){var c=P[a];return!c?(L(J.H),-1):lc(c.path,b)},_chmod:function(a,b){a="string"!==typeof a?w(a):a;try{return Vb(a,b),0}catch(c){return R(c),-1}},_rmdir:function(a){a=w(a);try{var b=S(a,{parent:j}).k,c=lb(a),d=ub(b,c),e=Kb(b,c,j);e&&f(new M(e));b.n.fb||f(new M(J.S));d.va&&f(new M(J.Ea));try{Q.willDeletePath&&Q.willDeletePath(a)}catch(g){console.log("FS.trackingDelegate['willDeletePath']('"+a+"') threw an exception: "+g.message)}b.n.fb(b,c);Eb(d);try{if(Q.onDeletePath)Q.onDeletePath(a)}catch(h){console.log("FS.trackingDelegate['onDeletePath']('"+ +a+"') threw an exception: "+h.message)}return 0}catch(m){return R(m),-1}},_truncate:function(a,b){"string"!==typeof a&&(a=w(a));try{return Xb(a,b),0}catch(c){return R(c),-1}},_usleep:nc,_utimes:function(){f("utimes not implemented")},___buildEnvironment:Uc,_fflush:n(),_pwrite:function(a,b,c,d){a=P[a];if(!a)return L(J.H),-1;try{return cc(a,z,b,c,d)}catch(e){return R(e),-1}},_strerror_r:ad,_localtime_r:Qc,_tzset:Pc,_open:function(a,b,c){c=C[c>>2];a=w(a);try{return Yb(a,b,c).O}catch(d){return R(d),-1}}, +_getpid:function(){return qc.apply(k,arguments)},_sbrk:Zc,_fcntl:function(a,b,c){a=P[a];if(!a)return L(J.H),-1;switch(b){case 0:b=C[c>>2];if(0>b)return L(J.A),-1;var d;try{d=Yb(a.path,a.J,0,b)}catch(e){return R(e),-1}return d.O;case 1:case 2:return 0;case 3:return a.J;case 4:return b=C[c>>2],a.J|=b,0;case 12:case 12:return b=C[c>>2],xa[b+0>>1]=2,0;case 13:case 14:case 13:case 14:return 0;case 8:case 9:return L(J.A),-1;default:return L(J.A),-1}},_emscripten_memcpy_big:function(a,b,c){G.set(G.subarray(b, +b+c),a);return a},_unlink:function(a){a=w(a);try{return Tb(a),0}catch(b){return R(b),-1}},_sysconf:function(a){switch(a){case 30:return 4096;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 79:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1; +case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1E3;case 89:return 700;case 71:return 256; +case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"===typeof navigator?navigator.hardwareConcurrency||1:1}L(J.A);return-1},_fchmod:function(a,b){try{var c=P[a];c||f(new M(J.H));Vb(c.k,b);return 0}catch(d){return R(d),-1}},_close:function(a){a=P[a];if(!a)return L(J.H),-1;try{return $b(a),0}catch(b){return R(b),-1}},_ftruncate:function(a,b){try{var c=P[a];c||f(new M(J.H));0===(c.J&2097155)&&f(new M(J.A)); +Xb(c.k,b);return 0}catch(d){return R(d),-1}},_gettimeofday:function(a){var b=Date.now();C[a>>2]=Math.floor(b/1E3);C[a+4>>2]=Math.floor(1E3*(b-1E3*Math.floor(b/1E3)));return 0},_munmap:function(a,b){cd.ua||(cd.ua={});var c=cd.ua[a];if(!c)return 0;b==c.Ud&&(cd.ua[a]=k,c.qb&&Xc(c.Nd));return 0},_pread:function(a,b,c,d){a=P[a];if(!a)return L(J.H),-1;try{return bc(a,b,c,d)}catch(e){return R(e),-1}},_getenv:Wc,_write:tc,_fsync:function(a){if(P[a])return 0;L(J.H);return-1},___errno_location:function(){return ib}, +_stat:lc,_recv:function(a,b,c){return!T.qc(a)?(L(J.H),-1):Sc(a,b,c)},_geteuid:function(){return qc.apply(k,arguments)},_fchown:function(a){try{var b=P[a];b||f(new M(J.H));Wb(b.k);return 0}catch(c){return R(c),-1}},_read:Sc,_abort:function(){r.abort()},_time:function(a){var b=Math.floor(Date.now()/1E3);a&&(C[a>>2]=b);return b},_mkport:sc,_strerror:bd,_mknod:function(a,b,c){a=w(a);switch(b&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return L(J.A),-1}try{return Ob(a,b,c), +0}catch(d){return R(d),-1}},_mkdir:function(a,b){a=w(a);"/"===a[a.length-1]&&(a=a.substr(0,a.length-1));try{return Qb(a,b),0}catch(c){return R(c),-1}},_mmap:cd,_localtime:function(a){return Qc(a,Kc)},STACKTOP:s,STACK_MAX:Oa,tempDoublePtr:gb,ABORT:oa,cttz_i8:hd,ctlz_i8:gd,NaN:NaN,Infinity:Infinity},H),oc=r._strlen=U._strlen;r._sqlite3_column_name=U._sqlite3_column_name;r._sqlite3_reset=U._sqlite3_reset;r._sqlite3_column_type=U._sqlite3_column_type;r._sqlite3_exec=U._sqlite3_exec;r._sqlite3_step=U._sqlite3_step; +var Rc=r._bitshift64Lshr=U._bitshift64Lshr;r._sqlite3_prepare_v2=U._sqlite3_prepare_v2;r._sqlite3_close_v2=U._sqlite3_close_v2;r._sqlite3_open=U._sqlite3_open;var mc=r._bitshift64Shl=U._bitshift64Shl;r._sqlite3_column_bytes=U._sqlite3_column_bytes;r._sqlite3_bind_int=U._sqlite3_bind_int;r._sqlite3_bind_blob=U._sqlite3_bind_blob;var kc=r._memset=U._memset,Yc=r._memcpy=U._memcpy;r._sqlite3_column_blob=U._sqlite3_column_blob;r._sqlite3_bind_parameter_index=U._sqlite3_bind_parameter_index; +var jc=r._i64Subtract=U._i64Subtract;r._sqlite3_column_text=U._sqlite3_column_text;r._realloc=U._realloc;var pc=r._i64Add=U._i64Add;r._sqlite3_data_count=U._sqlite3_data_count;r._sqlite3_column_double=U._sqlite3_column_double;r._sqlite3_errmsg=U._sqlite3_errmsg;r._sqlite3_finalize=U._sqlite3_finalize;r._sqlite3_bind_text=U._sqlite3_bind_text;r._sqlite3_bind_double=U._sqlite3_bind_double;var Xc=r._free=U._free,$c=r._memmove=U._memmove;r._register_character_tokenizer=U._register_character_tokenizer; +r._sqlite3_free=U._sqlite3_free;r._sqlite3_clear_bindings=U._sqlite3_clear_bindings;Ha=r._malloc=U._malloc;r.runPostSets=U.runPostSets;r.dynCall_iiii=U.dynCall_iiii;r.dynCall_i=U.dynCall_i;r.dynCall_vi=U.dynCall_vi;r.dynCall_vii=U.dynCall_vii;r.dynCall_iiiiiii=U.dynCall_iiiiiii;r.dynCall_ii=U.dynCall_ii;r.dynCall_viii=U.dynCall_viii;r.dynCall_v=U.dynCall_v;r.dynCall_iiiii=U.dynCall_iiiii;r.dynCall_viiiiii=U.dynCall_viiiiii;r.dynCall_iii=U.dynCall_iii;r.dynCall_iiiiii=U.dynCall_iiiiii; +r.dynCall_viiii=U.dynCall_viiii;u.Ma=U.stackAlloc;u.Nb=U.stackSave;u.Fc=U.stackRestore;u.de=U.setTempRet0;u.Ad=U.getTempRet0;function V(a,b){a!=k&&("number"==typeof a?this.Q(a):b==k&&"string"!=typeof a?this.K(a,256):this.K(a,b))}function id(){return new V(k)}function jd(a,b){var c=kd[a.charCodeAt(b)];return c==k?-1:c}function ld(a){var b=id();b.ga(a);return b}function W(a,b){this.C=a|0;this.G=b|0}W.Xb={}; +W.ga=function(a){if(-128<=a&&128>a){var b=W.Xb[a];if(b)return b}b=new W(a|0,0>a?-1:0);-128<=a&&128>a&&(W.Xb[a]=b);return b};W.Q=function(a){return isNaN(a)||!isFinite(a)?W.ZERO:a<=-W.Zb?W.MIN_VALUE:a+1>=W.Zb?W.MAX_VALUE:0>a?W.Q(-a).D():new W(a%W.ea|0,a/W.ea|0)};W.ca=function(a,b){return new W(a,b)}; +W.K=function(a,b){0==a.length&&f(Error("number format error: empty string"));var c=b||10;(2>c||36h?(h=W.Q(Math.pow(c,h)),e=e.multiply(h).add(W.Q(m))):(e=e.multiply(d),e=e.add(W.Q(m)))}return e};W.nb=65536; +W.Ag=16777216;W.ea=W.nb*W.nb;W.Bg=W.ea/2;W.Cg=W.ea*W.nb;W.Xc=W.ea*W.ea;W.Zb=W.Xc/2;W.ZERO=W.ga(0);W.ONE=W.ga(1);W.Yb=W.ga(-1);W.MAX_VALUE=W.ca(-1,2147483647);W.MIN_VALUE=W.ca(0,-2147483648);W.Wc=W.ga(16777216);q=W.prototype;q.hb=function(){return this.G*W.ea+this.wd()}; +q.toString=function(a){a=a||10;(2>a||36g.length;)g="0"+g;d=""+g+d}};q.wd=function(){return 0<=this.C?this.C:W.ea+this.C}; +q.la=function(){return 0==this.G&&0==this.C};q.N=function(){return 0>this.G};q.wc=function(){return 1==(this.C&1)};q.P=function(a){return this.G==a.G&&this.C==a.C};q.yc=function(){return 0>this.vb(W.Wc)};q.Dd=function(a){return 0>>16,c=this.G&65535,d=this.C>>>16,e=a.G>>>16,g=a.G&65535,h=a.C>>>16,m;m=0+((this.C&65535)+(a.C&65535));a=0+(m>>>16);a+=d+h;d=0+(a>>>16);d+=c+g;c=0+(d>>>16);c=c+(b+e)&65535;return W.ca((a&65535)<<16|m&65535,c<<16|d&65535)};q.Na=function(a){return this.add(a.D())}; +q.multiply=function(a){if(this.la()||a.la())return W.ZERO;if(this.P(W.MIN_VALUE))return a.wc()?W.MIN_VALUE:W.ZERO;if(a.P(W.MIN_VALUE))return this.wc()?W.MIN_VALUE:W.ZERO;if(this.N())return a.N()?this.D().multiply(a.D()):this.D().multiply(a).D();if(a.N())return this.multiply(a.D()).D();if(this.yc()&&a.yc())return W.Q(this.hb()*a.hb());var b=this.G>>>16,c=this.G&65535,d=this.C>>>16,e=this.C&65535,g=a.G>>>16,h=a.G&65535,m=a.C>>>16,a=a.C&65535,t,p,D,B;B=0+e*a;D=0+(B>>>16);D+=d*a;p=0+(D>>>16);D=(D&65535)+ +e*m;p+=D>>>16;D&=65535;p+=c*a;t=0+(p>>>16);p=(p&65535)+d*m;t+=p>>>16;p&=65535;p+=e*h;t+=p>>>16;p&=65535;t=t+(b*a+c*m+d*h+e*g)&65535;return W.ca(D<<16|B&65535,t<<16|p)}; +q.ka=function(a){a.la()&&f(Error("division by zero"));if(this.la())return W.ZERO;if(this.P(W.MIN_VALUE)){if(a.P(W.ONE)||a.P(W.Yb))return W.MIN_VALUE;if(a.P(W.MIN_VALUE))return W.ONE;var b=this.ee().ka(a).shiftLeft(1);if(b.P(W.ZERO))return a.N()?W.ONE:W.Yb;var c=this.Na(a.multiply(b));return b.add(c.ka(a))}if(a.P(W.MIN_VALUE))return W.ZERO;if(this.N())return a.N()?this.D().ka(a.D()):this.D().ka(a).D();if(a.N())return this.ka(a.D()).D();for(var d=W.ZERO,c=this;c.Ed(a);){for(var b=Math.max(1,Math.floor(c.hb()/ +a.hb())),e=Math.ceil(Math.log(b)/Math.LN2),e=48>=e?1:Math.pow(2,e-48),g=W.Q(b),h=g.multiply(a);h.N()||h.Dd(c);)b-=e,g=W.Q(b),h=g.multiply(a);g.la()&&(g=W.ONE);d=d.add(g);c=c.Na(h)}return d};q.Td=function(){return W.ca(~this.C,~this.G)};q.shiftLeft=function(a){a&=63;if(0==a)return this;var b=this.C;return 32>a?W.ca(b<>>32-a):W.ca(0,b<a?W.ca(this.C>>>a|b<<32-a,b>>a):W.ca(b>>a-32,0<=b?0:-1)};q=V.prototype; +q.sb=function(a,b,c,d){for(var e=0,g=0;0<=--d;){var h=a*this[e++]+b[c]+g,g=Math.floor(h/67108864);b[c++]=h&67108863}return g};q.u=26;q.Z=67108863;q.Ca=67108864;q.Rc=Math.pow(2,52);q.Vb=26;q.Wb=0;var kd=[],md,X;md=48;for(X=0;9>=X;++X)kd[md++]=X;md=97;for(X=10;36>X;++X)kd[md++]=X;md=65;for(X=10;36>X;++X)kd[md++]=X;q=V.prototype;q.copyTo=function(a){for(var b=this.e-1;0<=b;--b)a[b]=this[b];a.e=this.e;a.p=this.p};q.ga=function(a){this.e=1;this.p=0>a?-1:0;0a?this[0]=a+DV:this.e=0}; +q.K=function(a,b){var c;if(16==b)c=4;else if(8==b)c=3;else if(256==b)c=8;else if(2==b)c=1;else if(32==b)c=5;else if(4==b)c=2;else{this.td(a,b);return}this.p=this.e=0;for(var d=a.length,e=l,g=0;0<=--d;){var h=8==c?a[d]&255:jd(a,d);0>h?"-"==a.charAt(d)&&(e=j):(e=l,0==g?this[this.e++]=h:g+c>this.u?(this[this.e-1]|=(h&(1<>this.u-g):this[this.e-1]|=h<=this.u&&(g-=this.u))}8==c&&0!=(a[0]&128)&&(this.p=-1,0>d|h,h=(this[m]&e)<=this.e)b.e=0;else{var d=a%this.u,e=this.u-d,g=(1<>d;for(var h=c+1;h>d;0>=this.u;if(a.e>=this.u;d+=this.p}else{for(d+=this.p;c>=this.u;d-=a.p}b.p=0>d?-1:0;-1>d?b[c++]=this.Ca+d:0=d.e)){var e=this.abs();if(e.e>>16))m=p,t+=16;if(0!=(p=m>>8))m=p,t+=8;if(0!=(p=m>>4))m=p,t+=4;if(0!=(p=m>>2))m=p,t+=2;0!=m>>1&&(t+=1);m=this.u-t;0>this.Wb:0);t=this.Rc/p;p=(1<h&&V.ZERO.Y(c,c)}}}}; +q.toString=function(a){if(0>this.p)return"-"+this.D().toString(a);if(16==a)a=4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.fe(a);var b=(1<>h))d=j,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c);for(;0<=g;)h>(h+=this.u-a)):(c=this[g]>>(h-=a)&b,0>=h&&(h+=this.u,--g)),0this.p?this.D():this};q.Va=function(a){var b=this.p-a.p;if(0!=b)return b;var c=this.e,b=c-a.e;if(0!=b)return 0>this.p?-b:b;for(;0<=--c;)if(0!=(b=this[c]-a[c]))return b;return 0};V.ZERO=ld(0);V.ONE=ld(1);q=V.prototype; +q.td=function(a,b){this.ga(0);b==k&&(b=10);for(var c=this.Ta(b),d=Math.pow(b,c),e=l,g=0,h=0,m=0;mt?"-"==a.charAt(m)&&0==this.Mb()&&(e=j):(h=b*h+t,++g>=c&&(this.hc(d),this.gc(h),h=g=0))}0this.p?-1:0>=this.e||1==this.e&&0>=this[0]?0:1};q.hc=function(a){this[this.e]=this.sb(a-1,this,0,this.e);++this.e;this.fa()}; +q.gc=function(a){var b=0;if(0!=a){for(;this.e<=b;)this[this.e++]=0;for(this[b]+=a;this[b]>=this.Ca;)this[b]-=this.Ca,++b>=this.e&&(this[this.e++]=0),++this[b]}};q.fe=function(a){a==k&&(a=10);if(0==this.Mb()||2>a||36this.p){if(1==this.e)return this[0]-this.Ca;if(0==this.e)return-1}else{if(1==this.e)return this[0];if(0==this.e)return 0}return(this[1]&(1<<32-this.u)-1)<>=this.u;if(a.e>=this.u;d+=this.p}else{for(d+=this.p;c>=this.u;d+=a.p}b.p=0>d?-1:0;0d&&(b[c++]=this.Ca+d);b.e=c;b.fa()}; +var Y={abs:function(a,b){var c=new W(a,b),c=c.N()?c.D():c;C[gb>>2]=c.C;C[gb+4>>2]=c.G},jc:function(){Y.rd||(Y.rd=j,Y.Hc=new V,Y.Hc.K("4294967296",10),Y.Pb=new V,Y.Pb.K("18446744073709551616",10),Y.ih=new V,Y.jh=new V)},$g:function(a,b){var c=new V;c.K(b.toString(),10);var d=new V;c.Rd(d);c=new V;c.K(a.toString(),10);var e=new V;c.pb(d,e);return e},stringify:function(a,b,c){a=(new W(a,b)).toString();c&&"-"==a[0]&&(Y.jc(),c=new V,c.K(a,10),a=new V,Y.Pb.pb(c,a),a=a.toString(10));return a},K:function(a, +b,c,d,e){Y.jc();var g=new V;g.K(a,b);a=new V;a.K(c,10);c=new V;c.K(d,10);e&&0>g.Va(V.ZERO)&&(d=new V,g.pb(Y.Pb,d),g=d);d=l;0>g.Va(a)?(g=a,d=j):0>2]=g.C;C[gb+4>>2]=g.G;d&&f("range error")}};function nd(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}nd.prototype=Error();var od,pd=k,db=function qd(){!r.calledRun&&rd&&sd();r.calledRun||(db=qd)}; +r.callMain=r.Mg=function(a){function b(){for(var a=0;3>a;a++)d.push(0)}v(0==bb,"cannot call main when async dependencies remain! (listen on __ATMAIN__)");v(0==Ta.length,"cannot call main when preRun functions remain to be called");a=a||[];Ya||(Ya=j,Sa(Ua));var c=a.length+1,d=[F(I(r.thisProgram||"/bin/this.program"),"i8",Fa)];b();for(var e=0;ed;a=0<=d?++e:--e)c[a]=z[b+a];return c}; +$.prototype.get=function(a){var b,c,d;a!=k&&this.bind(a)&&this.step();d=[];a=b=0;for(c=Ld(this.F);0<=c?bc;a=0<=c?++b:--b)switch(Kd(this.F,a)){case Z.Sc:case Z.FLOAT:d.push(this.yd(a));break;case Z.Vc:d.push(this.zd(a));break;case Z.Ic:d.push(this.getBlob(a));break;default:d.push(k)}return d};$.prototype.getColumnNames=function(){var a,b,c,d;d=[];a=b=0;for(c=Ld(this.F);0<=c?bc;a=0<=c?++b:--b)d.push(Id(this.F,a));return d}; +$.prototype.getAsObject=function(a){var b,c,d,e,g,h;e=this.get(a);c=this.getColumnNames();d={};a=g=0;for(h=c.length;g>>0);a!=k&&gc("/",this.filename,a,j,j);this.handleError(Pd(this.filename,vd));this.db=Ea(vd,"i32");this.Ob={}}Td.prototype.run=function(a,b){var c;this.db||f("Database closed");b?(c=this.prepare(a,b),c.step(),c.free()):this.handleError(Nd(this.db,a,0,0,vd));return this};Td.prototype.register_character_tokenizer=function(){this.db||f("Database closed");return xd(this.db)}; +Td.prototype.exec=function(a){var b,c,d,e,g;this.db||f("Database closed");c=[];g=a.split(";");a=0;for(e=g.length;a 0) var gc = undefined")):da||ea?(r.read=function(a){var b=new XMLHttpRequest;b.open("GET", -a,l);b.send(k);return b.responseText},"undefined"!=typeof arguments&&(r.arguments=arguments),"undefined"!==typeof console?(r.print||(r.print=function(a){console.log(a)}),r.printErr||(r.printErr=function(a){console.log(a)})):r.print||(r.print=n()),da?window.Module=r:r.load=importScripts):f("Unknown runtime environment. Where are we?");function ja(a){eval.call(k,a)}"undefined"==!r.load&&r.read&&(r.load=function(a){ja(r.read(a))});r.print||(r.print=n());r.printErr||(r.printErr=r.print); -r.arguments||(r.arguments=[]);r.print=r.print;r.oa=r.printErr;r.preRun=[];r.postRun=[];for(ba in aa)aa.hasOwnProperty(ba)&&(r[ba]=aa[ba]); -var u={de:function(a){ka=a},Ad:function(){return ka},Nb:function(){return s},Fc:function(a){s=a},Pg:function(a,b){b=b||4;return 1==b?a:isNumber(a)&&isNumber(b)?Math.ceil(a/b)*b:isNumber(b)&&isPowerOfTwo(b)?"((("+a+")+"+(b-1)+")&"+-b+")":"Math.ceil(("+a+")/"+b+")*"+b},Jd:function(a){return a in u.Tc||a in u.Qc},Kd:function(a){return"*"==a[a.length-1]},Ld:function(a){return isPointerType(a)?l:isArrayType(a)||/?/.test(a)?j:"%"==a[0]},Tc:{i1:0,i8:0,i16:0,i32:0,i64:0},Qc:{"float":0,"double":0}, -fh:function(a,b){return(a|0|b|0)+4294967296*(Math.round(a/4294967296)|Math.round(b/4294967296))},Lg:function(a,b){return((a|0)&(b|0))+4294967296*(Math.round(a/4294967296)&Math.round(b/4294967296))},lh:function(a,b){return((a|0)^(b|0))+4294967296*(Math.round(a/4294967296)^Math.round(b/4294967296))},Cb:function(a){switch(a){case "i1":case "i8":return 1;case "i16":return 2;case "i32":return 4;case "i64":return 8;case "float":return 4;case "double":return 8;default:return"*"===a[a.length-1]?u.ja:"i"=== -a[0]?(a=parseInt(a.substr(1)),v(0===a%8),a/8):0}},xd:function(a){return Math.max(u.Cb(a),u.ja)},od:function(a,b){var c={};return b?a.filter(function(a){return c[a[b]]?l:c[a[b]]=j}):a.filter(function(a){return c[a]?l:c[a]=j})},set:function(){for(var a="object"===typeof arguments[0]?arguments[0]:arguments,b={},c=0;c=na&&la("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+na+", (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.");return b},qa:function(a,b){return Math.ceil(a/(b?b:8))*(b?b:8)},ah:function(a, -b,c){return c?+(a>>>0)+4294967296*+(b>>>0):+(a>>>0)+4294967296*+(b|0)},Ra:8,ja:4,Eg:0};r.Runtime=u;u.addFunction=u.$c;u.removeFunction=u.Zd;var oa=l,pa,qa,ka;function v(a,b){a||la("Assertion failed: "+b)}function ra(a){var b=r["_"+a];if(!b)try{b=eval("_"+a)}catch(c){}v(b,"Cannot call unknown function "+a+" (perhaps LLVM optimizations or closure removed it?)");return b}var sa,ta; -(function(){function a(a){a=a.toString().match(e).slice(1);return{arguments:a[0],body:a[1],returnValue:a[2]}}var b=0,c={stackSave:function(){b=u.Nb()},stackRestore:function(){u.Fc(b)},arrayToC:function(a){var b=u.La(a.length);ua(a,b);return b},stringToC:function(a){var b=0;a!==k&&(a!==i&&0!==a)&&(b=u.La(a.length+1),va(a,b));return b}},d={string:c.stringToC,array:c.arrayToC};ta=function(a,e,g,h){var a=ra(a),B=[];if(h)for(var w=0;w>0]=b;break;case "i8":z[a>>0]=b;break;case "i16":xa[a>>1]=b;break;case "i32":C[a>>2]=b;break;case "i64":qa=[b>>>0,(pa=b,1<=+ya(pa)?0>>0:~~+Ba((pa-+(~~pa>>>0))/4294967296)>>>0:0)];C[a>>2]=qa[0];C[a+4>>2]=qa[1];break;case "float":Ca[a>>2]=b;break;case "double":Da[a>>3]=b;break;default:la("invalid type for setValue: "+c)}}r.setValue=wa; -function Ea(a,b){b=b||"i8";"*"===b.charAt(b.length-1)&&(b="i32");switch(b){case "i1":return z[a>>0];case "i8":return z[a>>0];case "i16":return xa[a>>1];case "i32":return C[a>>2];case "i64":return C[a>>2];case "float":return Ca[a>>2];case "double":return Da[a>>3];default:la("invalid type for setValue: "+b)}return k}r.getValue=Ea;var Fa=0,E=2,Ga=4;r.ALLOC_NORMAL=Fa;r.ALLOC_STACK=1;r.ALLOC_STATIC=E;r.ALLOC_DYNAMIC=3;r.ALLOC_NONE=Ga; -function F(a,b,c,d){var e,g;"number"===typeof a?(e=j,g=a):(e=l,g=a.length);var h="string"===typeof b?b:k,c=c==Ga?d:[Ha,u.La,u.Gc,u.Ha][c===i?E:c](Math.max(g,h?1:b.length));if(e){d=c;v(0==(c&3));for(a=c+(g&-4);d>2]=0;for(a=c+g;d>0]=0;return c}if("i8"===h)return a.subarray||a.slice?G.set(a,c):G.set(new Uint8Array(a),c),c;for(var d=0,m,t;d>0];if(128<=d)c=j;else if(0==d&&!b)break;e++;if(b&&e==b)break}b||(b=e);var g="";if(!c){for(;0>0],g+=c.Gb(d);return g}r.Pointer_stringify=x;r.UTF16ToString=function(a){for(var b=0,c="";;){var d=xa[a+2*b>>1];if(0==d)return c;++b;c+=String.fromCharCode(d)}}; -r.stringToUTF16=function(a,b){for(var c=0;c>1]=a.charCodeAt(c);xa[b+2*a.length>>1]=0};r.UTF32ToString=function(a){for(var b=0,c="";;){var d=C[a+4*b>>2];if(0==d)return c;++b;65536<=d?(d-=65536,c+=String.fromCharCode(55296|d>>10,56320|d&1023)):c+=String.fromCharCode(d)}};r.stringToUTF32=function(a,b){for(var c=0,d=0;d=e)var g=a.charCodeAt(++d),e=65536+((e&1023)<<10)|g&1023;C[b+4*c>>2]=e;++c}C[b+4*c>>2]=0}; -function Ia(a){function b(h,t,p){var t=t||Infinity,D="",B=[],w;if("N"===a[c]){c++;"K"===a[c]&&c++;for(w=[];"E"!==a[c];)if("S"===a[c]){c++;var A=a.indexOf("_",c);w.push(e[a.substring(c,A)||0]||"?");c=A+1}else if("C"===a[c])w.push(w[w.length-1]),c+=2;else{var A=parseInt(a.substr(c)),K=A.toString().length;if(!A||!K){c--;break}var ia=a.substr(c+K,A);w.push(ia);e.push(ia);c+=K+A}c++;w=w.join("::");t--;if(0===t)return h?[w]:w}else if(("K"===a[c]||g&&"L"===a[c])&&c++,A=parseInt(a.substr(c)))K=A.toString().length, -w=a.substr(c+K,A),c+=K+A;g=l;"I"===a[c]?(c++,A=b(j),K=b(j,1,j),D+=K[0]+" "+w+"<"+A.join(", ")+">"):D=w;a:for(;cRa?2*Ra:Ra+16777216;Ra!==na&&(r.oa("increasing TOTAL_MEMORY to "+Ra+" to be more reasonable"),na=Ra); -v("undefined"!==typeof Int32Array&&"undefined"!==typeof Float64Array&&!!(new Int32Array(1)).subarray&&!!(new Int32Array(1)).set,"JS engine does not provide full typed array support");var H=new ArrayBuffer(na);z=new Int8Array(H);xa=new Int16Array(H);C=new Int32Array(H);G=new Uint8Array(H);Ka=new Uint16Array(H);La=new Uint32Array(H);Ca=new Float32Array(H);Da=new Float64Array(H);C[0]=255;v(255===G[0]&&0===G[3],"Typed arrays 2 must be run on a little-endian system");r.HEAP=i;r.HEAP8=z;r.HEAP16=xa; -r.HEAP32=C;r.HEAPU8=G;r.HEAPU16=Ka;r.HEAPU32=La;r.HEAPF32=Ca;r.HEAPF64=Da;function Sa(a){for(;0>0]=a[c],c+=1}r.writeStringToMemory=va;function ua(a,b){for(var c=0;c>0]=a[c]}r.writeArrayToMemory=ua; -function ab(a,b,c){for(var d=0;d>0]=a.charCodeAt(d);c||(z[b+a.length>>0]=0)}r.writeAsciiToMemory=ab;if(!Math.imul||-5!==Math.imul(4294967295,5))Math.imul=function(a,b){var c=a&65535,d=b&65535;return c*d+((a>>>16)*d+c*(b>>>16)<<16)|0};Math.Wg=Math.imul;var ya=Math.abs,Ba=Math.ceil,Aa=Math.floor,za=Math.min,bb=0,cb=k,db=k;function eb(){bb++;r.monitorRunDependencies&&r.monitorRunDependencies(bb)}r.addRunDependency=eb; -function fb(){bb--;r.monitorRunDependencies&&r.monitorRunDependencies(bb);if(0==bb&&(cb!==k&&(clearInterval(cb),cb=k),db)){var a=db;db=k;a()}}r.removeRunDependency=fb;r.preloadedImages={};r.preloadedAudios={};Ma=8;ma=Ma+u.qa(39363);Ua.push(); -F([51,46,56,46,53,0,0,0,83,81,76,73,84,69,95,0,128,151,0,0,144,151,0,0,160,151,0,0,184,151,0,0,200,151,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,10,10,10,10,10,10,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,64,0,42,42,42,42,42,42,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,0,0,0,0,0,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64, -64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127, -128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253, -254,255,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,24,5,0,0,32,5,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,40,5,0,0,56,5,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,64,5,0,0,80,5,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,2,0, -0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,88,5,0,0,32,5,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,117,110,105,120,0,0,0,0,6,0,0,0,0,0,0,0,117,110,105,120,45,110,111,110,101,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,117,110,105,120,45,100,111,116,102,105,108,101,0,0,0,0,8,0,0,0,0,0,0,0,117,110,105,120,45,101,120,99,108,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,1,0,0,0,0,0,0,0,4,5,3,5,1,5,1,5,2,5,2, -5,1,5,1,5,4,5,3,5,1,5,1,5,2,5,2,5,1,5,1,5,115,116,114,105,110,103,32,111,114,32,98,108,111,98,32,116,111,111,32,98,105,103,0,0,37,115,0,0,0,0,0,0,42,63,91,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,114,105,103,103,101,114,0,116,101,109,112,0,0,0,0,50,48,49,52,45,48,54,45,48,52,32,49,52,58,48,54,58,51,52,32,98,49,101,100,52,102,50,97,51,52,98,97,54,54,99,50,57,98,49,51,48,102,56,100,49,51,101,57,48,57,50,55,53,56,48,49,57,50,49,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,100,97,116,97,98,97,115,101,58,32,37,115,0,0,0,0,0,202,154,59,0,202,154,59,208,7,0,0,232,3,0,0,244,1,0,0,168,97,0,0,127,0,0,0,10,0,0,0,80,195,0,0,231,3,0,0,232,3,0,0,0,0,0,0,57,50,50,51,51,55,50,48,51,54,56,53,52,55,55,53,56,48,0,0,0,0,0,0,111,110,111,102,102,97,108,115,101,121,101,115,116,114,117,101,102,117,108,108, -0,0,0,0,0,1,2,4,9,12,16,0,2,2,3,5,3,4,4,0,1,0,0,0,1,1,2,0,82,69,73,78,68,69,88,69,68,69,83,67,65,80,69,65,67,72,69,67,75,69,89,66,69,70,79,82,69,73,71,78,79,82,69,71,69,88,80,76,65,73,78,83,84,69,65,68,68,65,84,65,66,65,83,69,76,69,67,84,65,66,76,69,70,84,72,69,78,68,69,70,69,82,82,65,66,76,69,76,83,69,88,67,69,80,84,82,65,78,83,65,67,84,73,79,78,65,84,85,82,65,76,84,69,82,65,73,83,69,88,67,76,85,83,73,86,69,88,73,83,84,83,65,86,69,80,79,73,78,84,69,82,83,69,67,84,82,73,71,71,69,82,69,70,69,82,69, -78,67,69,83,67,79,78,83,84,82,65,73,78,84,79,70,70,83,69,84,69,77,80,79,82,65,82,89,85,78,73,81,85,69,82,89,87,73,84,72,79,85,84,69,82,69,76,69,65,83,69,65,84,84,65,67,72,65,86,73,78,71,82,79,85,80,68,65,84,69,66,69,71,73,78,78,69,82,69,67,85,82,83,73,86,69,66,69,84,87,69,69,78,79,84,78,85,76,76,73,75,69,67,65,83,67,65,68,69,76,69,84,69,67,65,83,69,67,79,76,76,65,84,69,67,82,69,65,84,69,67,85,82,82,69,78,84,95,68,65,84,69,68,69,84,65,67,72,73,77,77,69,68,73,65,84,69,74,79,73,78,83,69,82,84,77,65, -84,67,72,80,76,65,78,65,76,89,90,69,80,82,65,71,77,65,66,79,82,84,86,65,76,85,69,83,86,73,82,84,85,65,76,73,77,73,84,87,72,69,78,87,72,69,82,69,78,65,77,69,65,70,84,69,82,69,80,76,65,67,69,65,78,68,69,70,65,85,76,84,65,85,84,79,73,78,67,82,69,77,69,78,84,67,65,83,84,67,79,76,85,77,78,67,79,77,77,73,84,67,79,78,70,76,73,67,84,67,82,79,83,83,67,85,82,82,69,78,84,95,84,73,77,69,83,84,65,77,80,82,73,77,65,82,89,68,69,70,69,82,82,69,68,73,83,84,73,78,67,84,68,82,79,80,70,65,73,76,70,82,79,77,70,85,76, -76,71,76,79,66,89,73,70,73,83,78,85,76,76,79,82,68,69,82,69,83,84,82,73,67,84,82,73,71,72,84,82,79,76,76,66,65,67,75,82,79,87,85,78,73,79,78,85,83,73,78,71,86,65,67,85,85,77,86,73,69,87,73,78,73,84,73,65,76,76,89,0,0,0,0,0,0,0,76,105,117,74,0,45,0,0,82,0,77,0,0,42,12,78,15,0,116,85,54,112,0,19,0,0,121,0,119,115,0,22,93,0,9,0,0,70,71,0,69,6,0,48,90,102,0,118,101,0,0,44,0,103,24,0,17,0,122,53,23,0,5,110,25,96,0,0,124,106,60,123,57,28,55,0,91,0,100,26,0,99,0,0,0,95,92,97,88,109,14,39,108,0,81,0,18,89, -111,32,0,120,80,113,62,46,84,0,0,94,40,59,114,0,36,0,0,29,0,86,63,64,0,20,61,0,56,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,13,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,33,0,21,0,0,0,0,0,50,0,43,3,47,0,0,0,0,30,0,58,0,38,0,0,0,1,66,0,0,67,0,41,0,0,0,0,0,0,49,65,0,0,0,0,31,52,16,34,10,0,0,0,0,0,0,0,11,72,79,0,8,0,104,98,0,107,0,87,0,75,51,0,27,37,73,83,0,35,68,0,0,0,0,0,0,7,7,5,4,6,4,5,3,6,7,3,6,6,7,7,3,8,2,6,5,4,4,3,10,4,6,11,6,2,7,5,5,9,6,9,9,7,10,10,4,6,2,3,9,4,2,6,5,7,4,5,7,6,6,5,6,5,5,9,7,7, -3,2,4,4,7,3,6,4,7,6,12,6,9,4,6,5,4,7,6,5,6,7,5,4,5,6,5,7,3,7,13,2,2,4,6,6,8,5,17,12,7,8,8,2,4,4,4,4,4,2,2,6,5,8,5,8,3,5,5,6,4,9,3,0,0,0,0,0,0,2,0,2,0,8,0,9,0,14,0,16,0,20,0,23,0,25,0,25,0,29,0,33,0,36,0,41,0,46,0,48,0,53,0,54,0,59,0,62,0,65,0,67,0,69,0,78,0,81,0,86,0,91,0,95,0,96,0,101,0,105,0,109,0,117,0,122,0,128,0,136,0,142,0,152,0,159,0,162,0,162,0,165,0,167,0,167,0,171,0,176,0,179,0,184,0,184,0,188,0,192,0,199,0,204,0,209,0,212,0,218,0,221,0,225,0,234,0,240,0,240,0,240,0,243,0,246,0,250,0,251, -0,255,0,5,1,9,1,16,1,22,1,34,1,40,1,49,1,51,1,57,1,62,1,64,1,71,1,76,1,81,1,87,1,93,1,98,1,102,1,105,1,111,1,115,1,122,1,124,1,131,1,133,1,135,1,144,1,148,1,154,1,160,1,168,1,173,1,173,1,189,1,196,1,203,1,204,1,211,1,215,1,219,1,223,1,227,1,230,1,232,1,234,1,240,1,244,1,252,1,1,2,9,2,12,2,17,2,22,2,28,2,32,2,37,2,67,28,140,42,84,44,104,53,35,113,46,47,50,2,49,142,41,24,119,16,98,138,11,112,139,117,6,30,107,98,141,57,9,20,13,118,62,105,99,131,55,54,111,21,21,71,103,3,25,66,98,14,34,128,127,110,5,98, -58,74,77,19,52,101,50,37,33,109,136,95,17,69,43,8,124,108,51,4,32,56,29,120,65,129,137,130,68,31,59,72,100,106,15,75,38,39,10,40,98,69,69,102,7,121,73,114,45,123,98,50,36,18,76,126,60,98,12,61,115,125,63,64,48,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,109,105,115,117,115,101,32,97,116,32,108,105,110,101,32,37,100,32,111,102,32,91,37,46,49,48,115,93,0,0,0,0,117,110,97,98, -108,101,32,116,111,32,100,101,108,101,116,101,47,109,111,100,105,102,121,32,99,111,108,108,97,116,105,111,110,32,115,101,113,117,101,110,99,101,32,100,117,101,32,116,111,32,97,99,116,105,118,101,32,115,116,97,116,101,109,101,110,116,115,0,0,0,0,0,66,73,78,65,82,89,0,0,82,84,82,73,77,0,0,0,78,79,67,65,83,69,0,0,109,97,105,110,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,117,116,111,109,97,116,105,99,32,101,120,116,101,110,115,105,111,110,32,108,111,97,100,105,110,103,32,102,97,105,108,101,100,58,32,37, -115,0,0,77,65,84,67,72,0,0,0,58,109,101,109,111,114,121,58,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,5,0,0,0,9,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,101,99,111,118,101,114,101,100,32,37,100,32,112,97,103,101,115,32,102,114,111,109,32,37,115,0,0,0,0,0,0,217,213,5,249,32,161,99,215,100,97,116,97,98,97,115,101,32,99,111,114,114,117, -112,116,105,111,110,32,97,116,32,108,105,110,101,32,37,100,32,111,102,32,91,37,46,49,48,115,93,0,0,0,0,0,0,0,99,97,110,110,111,116,32,108,105,109,105,116,32,87,65,76,32,115,105,122,101,58,32,37,115,0,0,0,0,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,102,105,108,101,32,97,116,32,108,105,110,101,32,37,100,32,111,102,32,91,37,46,49,48,115,93,0,0,114,101,99,111,118,101,114,101,100,32,37,100,32,102,114,97,109,101,115,32,102,114,111,109,32,87,65,76,32,102,105,108,101,32,37,115,0,0,0,0,45,106,111, -117,114,110,97,108,0,0,0,0,0,0,0,0,45,119,97,108,0,0,0,0,110,111,108,111,99,107,0,0,105,109,109,117,116,97,98,108,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102,105,108,101,58,0,0,0,108,111,99,97,108,104,111,115,116,0,0,0,0,0,0,0,105,110,118,97,108,105,100,32,117,114,105,32,97,117,116,104,111,114,105,116,121,58,32,37,46,42,115,0,0,0,0,0,118,102,115,0,0,0,0,0,99,97,99,104,101,0,0,0,48,18,0,0,0,0,2,0,56,18,0,0,0,0,4,0,0,0,0,0,0,0,0,0,115,104,97,114,101,100,0,0,112,114,105,118,97,116,101,0,109,111,100,101,0, -0,0,0,112,18,0,0,1,0,0,0,120,18,0,0,2,0,0,0,128,18,0,0,6,0,0,0,136,18,0,0,128,0,0,0,0,0,0,0,0,0,0,0,114,111,0,0,0,0,0,0,114,119,0,0,0,0,0,0,114,119,99,0,0,0,0,0,109,101,109,111,114,121,0,0,97,99,99,101,115,115,0,0,110,111,32,115,117,99,104,32,37,115,32,109,111,100,101,58,32,37,115,0,0,0,0,0,37,115,32,109,111,100,101,32,110,111,116,32,97,108,108,111,119,101,100,58,32,37,115,0,110,111,32,115,117,99,104,32,118,102,115,58,32,37,115,0,105,110,118,97,108,105,100,0,65,80,73,32,99,97,108,108,32,119,105,116, -104,32,37,115,32,100,97,116,97,98,97,115,101,32,99,111,110,110,101,99,116,105,111,110,32,112,111,105,110,116,101,114,0,0,0,0,117,110,97,98,108,101,32,116,111,32,117,115,101,32,102,117,110,99,116,105,111,110,32,37,115,32,105,110,32,116,104,101,32,114,101,113,117,101,115,116,101,100,32,99,111,110,116,101,120,116,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,0,1,2,3,4,5,6,7,0,1,2,3,0,1,0,0,117,110,97,98,108,101, -32,116,111,32,100,101,108,101,116,101,47,109,111,100,105,102,121,32,117,115,101,114,45,102,117,110,99,116,105,111,110,32,100,117,101,32,116,111,32,97,99,116,105,118,101,32,115,116,97,116,101,109,101,110,116,115,0,0,56,20,0,0,72,20,0,0,0,0,0,0,112,20,0,0,144,20,0,0,176,20,0,0,200,20,0,0,232,20,0,0,248,20,0,0,32,21,0,0,48,21,0,0,64,21,0,0,104,21,0,0,128,21,0,0,160,21,0,0,192,21,0,0,216,21,0,0,240,21,0,0,152,5,0,0,16,22,0,0,40,22,0,0,64,22,0,0,104,22,0,0,136,22,0,0,160,22,0,0,192,22,0,0,232,22,0,0,0, -0,0,0,110,111,116,32,97,110,32,101,114,114,111,114,0,0,0,0,83,81,76,32,108,111,103,105,99,32,101,114,114,111,114,32,111,114,32,109,105,115,115,105,110,103,32,100,97,116,97,98,97,115,101,0,0,0,0,0,97,99,99,101,115,115,32,112,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,0,0,0,0,0,0,0,99,97,108,108,98,97,99,107,32,114,101,113,117,101,115,116,101,100,32,113,117,101,114,121,32,97,98,111,114,116,0,0,100,97,116,97,98,97,115,101,32,105,115,32,108,111,99,107,101,100,0,0,0,0,0,0,100,97, -116,97,98,97,115,101,32,116,97,98,108,101,32,105,115,32,108,111,99,107,101,100,0,0,0,0,0,0,0,0,111,117,116,32,111,102,32,109,101,109,111,114,121,0,0,0,97,116,116,101,109,112,116,32,116,111,32,119,114,105,116,101,32,97,32,114,101,97,100,111,110,108,121,32,100,97,116,97,98,97,115,101,0,0,0,0,105,110,116,101,114,114,117,112,116,101,100,0,0,0,0,0,100,105,115,107,32,73,47,79,32,101,114,114,111,114,0,0,100,97,116,97,98,97,115,101,32,100,105,115,107,32,105,109,97,103,101,32,105,115,32,109,97,108,102,111, -114,109,101,100,0,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,111,112,101,114,97,116,105,111,110,0,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,111,114,32,100,105,115,107,32,105,115,32,102,117,108,108,0,0,0,0,0,0,0,0,117,110,97,98,108,101,32,116,111,32,111,112,101,110,32,100,97,116,97,98,97,115,101,32,102,105,108,101,0,0,0,0,108,111,99,107,105,110,103,32,112,114,111,116,111,99,111,108,0,0,0,0,0,0,0,0,116,97,98,108,101,32,99,111,110,116,97,105,110,115,32,110,111,32,100,97,116,97,0,0,100,97,116,97,98, -97,115,101,32,115,99,104,101,109,97,32,104,97,115,32,99,104,97,110,103,101,100,0,0,0,0,0,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,0,0,0,0,0,0,0,100,97,116,97,116,121,112,101,32,109,105,115,109,97,116,99,104,0,0,0,0,0,0,0,108,105,98,114,97,114,121,32,114,111,117,116,105,110,101,32,99,97,108,108,101,100,32,111,117,116,32,111,102,32,115,101,113,117,101,110,99,101,0,0,108,97,114,103,101,32,102,105,108,101,32,115,117,112,112,111,114,116,32,105,115,32,100,105,115,97,98,108,101,100, -0,0,97,117,116,104,111,114,105,122,97,116,105,111,110,32,100,101,110,105,101,100,0,0,0,0,97,117,120,105,108,105,97,114,121,32,100,97,116,97,98,97,115,101,32,102,111,114,109,97,116,32,101,114,114,111,114,0,98,105,110,100,32,111,114,32,99,111,108,117,109,110,32,105,110,100,101,120,32,111,117,116,32,111,102,32,114,97,110,103,101,0,0,0,0,0,0,0,102,105,108,101,32,105,115,32,101,110,99,114,121,112,116,101,100,32,111,114,32,105,115,32,110,111,116,32,97,32,100,97,116,97,98,97,115,101,0,0,117,110,107,110, -111,119,110,32,101,114,114,111,114,0,0,0,97,98,111,114,116,32,100,117,101,32,116,111,32,82,79,76,76,66,65,67,75,0,0,0,117,110,97,98,108,101,32,116,111,32,99,108,111,115,101,32,100,117,101,32,116,111,32,117,110,102,105,110,97,108,105,122,101,100,32,115,116,97,116,101,109,101,110,116,115,32,111,114,32,117,110,102,105,110,105,115,104,101,100,32,98,97,99,107,117,112,115,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,6,0,0,0,1,0,0,0,3,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,4, -0,0,0,11,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,5,0,0,0,0,0,0,0,102,97,105,108,101,100,32,109,101,109,111,114,121,32,114,101,115,105,122,101,32,37,117,32,116,111,32,37,117,32,98,121,116,101,115,0,0,0,0,0,102,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,37,117,32,98,121,116,101,115,32,111,102,32,109,101,109,111,114,121,0,0,0,1,0,1,8,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,32,0,0,0,0,0,0,0,0,0,0,2,0,1,8,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,2,0,0,0,0, -0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,32,0,0,0,0,0,0,0,0,0,0,2,0,1,8,2,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,3,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,24,32,0,0,0,0,0,0,0,0,0,0,2,0,1,8,3,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,24,32,0,0,0,0,0,0,0,0,0,0,255,255,33,8,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,32,32,0,0,0,0,0,0,0,0,0,0,0,0,33,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,32,0,0,0,0,0,0,0,0,0,0,1,0,33,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,32,32,0,0,0,0,0,0,0, -0,0,0,255,255,33,8,1,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,40,32,0,0,0,0,0,0,0,0,0,0,0,0,33,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,32,0,0,0,0,0,0,0,0,0,0,1,0,33,0,1,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,40,32,0,0,0,0,0,0,0,0,0,0,1,0,129,8,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,48,32,0,0,0,0,0,0,0,0,0,0,1,0,65,8,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,56,32,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,64,32,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0, -0,0,0,72,32,0,0,0,0,0,0,0,0,0,0,3,0,1,8,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,72,32,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,80,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,88,32,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,96,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,104,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,112,32,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0, -0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,112,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,120,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,128,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,32,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,32,0,0,0,0,0,0,0,0,0,0,255,255,1,10,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,136,32,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,152,32, -0,0,0,0,0,0,0,0,0,0,2,0,1,10,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,160,32,0,0,0,0,0,0,0,0,0,0,1,0,1,12,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,168,32,0,0,0,0,0,0,0,0,0,0,2,0,1,12,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,184,32,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,200,32,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,208,32,0,0,0,0,0,0,0,0,0,0,2,0,33,8,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,224,32,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0, -0,16,0,0,0,0,0,0,0,0,0,0,0,232,32,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,248,32,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,16,33,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,23,0,0,0,0,0,0,0,0,0,0,0,32,33,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,64,33,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,25,0,0,0,0,0,0,0,0,0,0,0,96,33,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,26,0,0,0,0,0,0,0,0,0,0,0,104,33,0,0,0,0,0,0,0,0, -0,0,0,0,1,0,0,0,0,0,0,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,128,33,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,0,0,0,0,136,33,0,0,0,0,0,0,0,0,0,0,3,0,1,8,0,0,0,0,0,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,152,33,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,160,33,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,7,0,0,0,176,33,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,8,0,0,0,184,33,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0, -9,0,0,0,192,33,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,10,0,0,0,200,33,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,10,0,0,0,200,33,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,11,0,0,0,208,33,0,0,0,0,0,0,0,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,11,0,0,0,208,33,0,0,0,0,0,0,0,0,0,0,2,0,13,8,184,5,0,0,0,0,0,0,34,0,0,0,0,0,0,0,0,0,0,0,224,33,0,0,0,0,0,0,0,0,0,0,2,0,5,8,232,33,0,0,0,0,0,0,34,0,0,0,0,0,0,0,0,0,0,0,240,33,0,0,0,0,0,0,0,0,0,0, -3,0,5,8,232,33,0,0,0,0,0,0,34,0,0,0,0,0,0,0,0,0,0,0,240,33,0,0,0,0,0,0,0,0,0,0,108,116,114,105,109,0,0,0,114,116,114,105,109,0,0,0,116,114,105,109,0,0,0,0,109,105,110,0,0,0,0,0,109,97,120,0,0,0,0,0,116,121,112,101,111,102,0,0,108,101,110,103,116,104,0,0,105,110,115,116,114,0,0,0,115,117,98,115,116,114,0,0,112,114,105,110,116,102,0,0,117,110,105,99,111,100,101,0,99,104,97,114,0,0,0,0,97,98,115,0,0,0,0,0,114,111,117,110,100,0,0,0,117,112,112,101,114,0,0,0,108,111,119,101,114,0,0,0,99,111,97,108,101, -115,99,101,0,0,0,0,0,0,0,0,104,101,120,0,0,0,0,0,105,102,110,117,108,108,0,0,117,110,108,105,107,101,108,121,0,0,0,0,0,0,0,0,108,105,107,101,108,105,104,111,111,100,0,0,0,0,0,0,114,97,110,100,111,109,0,0,114,97,110,100,111,109,98,108,111,98,0,0,0,0,0,0,110,117,108,108,105,102,0,0,115,113,108,105,116,101,95,118,101,114,115,105,111,110,0,0,115,113,108,105,116,101,95,115,111,117,114,99,101,95,105,100,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,108,111,103,0,0,0,0,0,0,115,113,108,105,116,101,95,99,111, -109,112,105,108,101,111,112,116,105,111,110,95,117,115,101,100,0,0,0,0,0,0,0,115,113,108,105,116,101,95,99,111,109,112,105,108,101,111,112,116,105,111,110,95,103,101,116,0,0,0,0,0,0,0,0,113,117,111,116,101,0,0,0,108,97,115,116,95,105,110,115,101,114,116,95,114,111,119,105,100,0,0,0,0,0,0,0,99,104,97,110,103,101,115,0,116,111,116,97,108,95,99,104,97,110,103,101,115,0,0,0,114,101,112,108,97,99,101,0,122,101,114,111,98,108,111,98,0,0,0,0,0,0,0,0,115,117,109,0,0,0,0,0,116,111,116,97,108,0,0,0,97,118, -103,0,0,0,0,0,99,111,117,110,116,0,0,0,103,114,111,117,112,95,99,111,110,99,97,116,0,0,0,0,103,108,111,98,0,0,0,0,37,95,0,1,0,0,0,0,108,105,107,101,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,35,0,0,0,0,0,0,0,0,0,0,0,104,34,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,128,34,0,0,0,0,0,0,0,0,0,0,3,0,1,8,0,0,0,0,0,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,152,34,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,97,98,108,101,0,0,0,0,0,115,113,108,105,116,101,95,114, -101,110,97,109,101,95,116,114,105,103,103,101,114,0,0,0,115,113,108,105,116,101,95,114,101,110,97,109,101,95,112,97,114,101,110,116,0,0,0,0,37,115,37,46,42,115,34,37,119,34,0,0,0,0,0,0,37,115,37,115,0,0,0,0,37,46,42,115,34,37,119,34,37,115,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,248,35,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,8,36,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0,16,36,0,0,0,0,0,0,0,0,0,0,255,255,1,8, -0,0,0,0,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,24,36,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,42,0,0,0,0,0,0,0,0,0,0,0,40,36,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,43,0,0,0,0,0,0,0,0,0,0,0,56,36,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,72,36,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,96,36,0,0,0,0,0,0,0,0,0,0,106,117,108,105,97,110,100,97,121,0,0,0,0,0,0,0,100,97,116,101,0,0,0,0,116,105,109,101,0,0,0,0,100,97,116,101,116,105,109,101,0,0, -0,0,0,0,0,0,115,116,114,102,116,105,109,101,0,0,0,0,0,0,0,0,99,117,114,114,101,110,116,95,116,105,109,101,0,0,0,0,99,117,114,114,101,110,116,95,116,105,109,101,115,116,97,109,112,0,0,0,0,0,0,0,99,117,114,114,101,110,116,95,100,97,116,101,0,0,0,0,37,48,50,100,0,0,0,0,37,48,54,46,51,102,0,0,37,48,51,100,0,0,0,0,37,46,49,54,103,0,0,0,37,108,108,100,0,0,0,0,37,48,52,100,0,0,0,0,108,111,99,97,108,116,105,109,101,0,0,0,0,0,0,0,117,110,105,120,101,112,111,99,104,0,0,0,0,0,0,0,117,116,99,0,0,0,0,0,119,101, -101,107,100,97,121,32,0,0,0,0,0,0,0,0,115,116,97,114,116,32,111,102,32,0,0,0,0,0,0,0,109,111,110,116,104,0,0,0,121,101,97,114,0,0,0,0,100,97,121,0,0,0,0,0,104,111,117,114,0,0,0,0,109,105,110,117,116,101,0,0,115,101,99,111,110,100,0,0,108,111,99,97,108,32,116,105,109,101,32,117,110,97,118,97,105,108,97,98,108,101,0,0,110,111,119,0,0,0,0,0,37,48,52,100,45,37,48,50,100,45,37,48,50,100,32,37,48,50,100,58,37,48,50,100,58,37,48,50,100,0,0,0,37,48,50,100,58,37,48,50,100,58,37,48,50,100,0,0,37,48,52,100, -45,37,48,50,100,45,37,48,50,100,0,0,76,73,75,69,32,111,114,32,71,76,79,66,32,112,97,116,116,101,114,110,32,116,111,111,32,99,111,109,112,108,101,120,0,0,0,0,0,0,0,0,69,83,67,65,80,69,32,101,120,112,114,101,115,115,105,111,110,32,109,117,115,116,32,98,101,32,97,32,115,105,110,103,108,101,32,99,104,97,114,97,99,116,101,114,0,0,0,0,44,0,0,0,0,0,0,0,105,110,116,101,103,101,114,32,111,118,101,114,102,108,111,119,0,0,0,0,0,0,0,0,37,33,46,49,53,103,0,0,37,33,46,50,48,101,0,0,48,49,50,51,52,53,54,55,56,57, -65,66,67,68,69,70,78,85,76,76,0,0,0,0,37,46,42,102,0,0,0,0,105,110,116,101,103,101,114,0,116,101,120,116,0,0,0,0,114,101,97,108,0,0,0,0,98,108,111,98,0,0,0,0,110,117,108,108,0,0,0,0,1,0,0,0,0,0,0,0,88,38,0,0,0,0,0,0,32,0,0,0,0,0,0,0,105,110,116,101,114,114,117,112,116,0,0,0,0,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,116,111,107,101,110,58,32,34,37,84,34,0,0,0,0,0,0,0,0,110,101,97,114,32,34,37,84,34,58,32,115,121,110,116,97,120,32,101,114,114,111,114,0,114,111,119,105,100,0,0,0,117, -110,107,110,111,119,110,32,116,97,98,108,101,32,111,112,116,105,111,110,58,32,37,46,42,115,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,116,101,114,109,115,32,105,110,32,99,111,109,112,111,117,110,100,32,83,69,76,69,67,84,0,0,0,0,0,0,0,115,101,116,32,108,105,115,116,0,0,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,97,114,103,117,109,101,110,116,115,32,111,110,32,102,117,110,99,116,105,111,110,32,37,84,0,0,0,0,0,0,0,104,90,0,0,1,0,0,0,208,72,0,0,1,0, -0,0,105,110,100,101,120,0,0,0,113,117,97,108,105,102,105,101,100,32,116,97,98,108,101,32,110,97,109,101,115,32,97,114,101,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,73,78,83,69,82,84,44,32,85,80,68,65,84,69,44,32,97,110,100,32,68,69,76,69,84,69,32,115,116,97,116,101,109,101,110,116,115,32,119,105,116,104,105,110,32,116,114,105,103,103,101,114,115,0,0,116,104,101,32,73,78,68,69,88,69,68,32,66,89,32,99,108,97,117,115,101,32,105,115,32,110,111,116,32,97,108,108,111,119,101,100,32,111, -110,32,85,80,68,65,84,69,32,111,114,32,68,69,76,69,84,69,32,115,116,97,116,101,109,101,110,116,115,32,119,105,116,104],"i8",Ga,u.Ra); -F([105,110,32,116,114,105,103,103,101,114,115,0,0,0,0,0,116,104,101,32,78,79,84,32,73,78,68,69,88,69,68,32,99,108,97,117,115,101,32,105,115,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,85,80,68,65,84,69,32,111,114,32,68,69,76,69,84,69,32,115,116,97,116,101,109,101,110,116,115,32,119,105,116,104,105,110,32,116,114,105,103,103,101,114,115,0,0,0,0,144,1,145,2,145,1,146,1,146,3,147,0,147,1,147,3,148,1,149,3,151,0,151,1,151,2,150,0,150,1,150,1,150,1,149,2,149,2,149,2,153,1,153,0,149,2,149, -3,149,5,149,2,154,6,156,1,158,0,158,3,157,1,157,0,155,5,155,2,162,0,162,2,160,3,160,1,164,3,165,1,152,1,152,1,152,1,166,0,166,1,168,1,168,4,168,6,169,1,169,2,170,1,170,1,167,2,167,0,173,2,173,2,173,4,173,3,173,3,173,2,173,2,173,3,173,5,173,2,173,4,173,4,173,1,173,2,178,0,178,1,180,0,180,2,182,2,182,3,182,3,182,3,183,2,183,2,183,1,183,1,183,2,181,3,181,2,184,0,184,2,184,2,161,0,161,2,185,3,185,1,186,1,186,0,187,2,187,7,187,5,187,5,187,10,189,0,189,1,176,0,176,3,190,0,190,2,191,1,191,1,191,1,149,4, -193,2,193,0,149,8,149,4,149,1,163,2,195,1,195,3,198,1,198,2,198,1,196,9,196,1,207,4,207,5,199,1,199,1,199,0,210,2,210,0,200,3,200,2,200,4,211,2,211,1,211,0,201,0,201,2,213,2,213,0,212,7,212,7,212,7,159,0,159,2,194,2,214,1,214,2,214,3,214,4,216,2,216,0,215,0,215,3,215,2,217,4,217,0,205,0,205,3,220,4,220,2,177,1,177,1,177,0,203,0,203,3,204,0,204,2,206,0,206,2,206,4,206,4,149,6,202,0,202,2,149,8,221,5,221,3,149,6,149,7,222,2,222,1,223,0,223,3,219,3,219,1,175,1,175,3,174,1,175,1,175,1,175,3,175,5,174, -1,174,1,175,1,175,3,175,6,175,5,175,4,174,1,175,3,175,3,175,3,175,3,175,3,175,3,175,3,175,3,224,1,224,2,175,3,175,5,175,2,175,3,175,3,175,4,175,2,175,2,175,2,175,2,225,1,225,2,175,5,226,1,226,2,175,5,175,3,175,5,175,4,175,4,175,5,228,5,228,4,229,2,229,0,227,1,227,0,209,1,209,0,208,3,208,1,149,12,230,1,230,0,179,0,179,3,188,5,188,3,231,0,231,2,149,4,149,1,149,2,149,3,149,5,149,6,149,5,149,6,232,1,232,1,232,1,232,1,232,1,171,2,171,1,172,2,149,5,233,11,235,1,235,1,235,2,235,0,236,1,236,1,236,3,237,0, -237,3,238,0,238,2,234,3,234,2,240,1,240,3,241,0,241,3,241,2,239,7,239,5,239,5,239,1,175,4,175,6,192,1,192,1,192,1,149,4,149,6,149,3,243,0,243,2,242,1,242,0,149,1,149,3,149,1,149,3,149,6,149,6,244,1,245,0,245,1,149,1,149,4,246,8,247,1,247,3,248,0,248,2,249,1,249,3,250,1,251,0,251,4,251,2,197,0,197,2,197,3,252,6,252,8,0,0,238,0,186,3,213,0,33,1,54,1,234,0,144,0,61,1,147,255,126,1,121,1,47,1,205,1,133,1,122,1,112,1,46,1,38,1,253,0,139,1,37,1,68,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1, -147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,254,3,244,3,237,3,230,3,195,3,193,3,191,3,189,3,182,3,179,3,162,3,144,3,105,3,93,3,55,3,42,3,3,3,247,2,208,2,196,2,158,2,145,2,107,2,102,2,100,2,98,2,96,2,94,2,92,2,86,2,83,2,81,2,68,2,30,2,28,2,25,2,23,2,21,2,19,2,17,2,15,2,247,1,130,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,95,0,191,1,82,0,78,1,248,1,211,1,147,1,221,1,208,1,147,1,147,1,147,1,147,1,92,3,235,2,232, -2,17,3,126,2,126,2,158,3,123,3,132,3,131,3,119,3,76,3,72,3,67,3,80,3,62,3,75,3,61,3,24,3,71,3,58,3,225,2,70,3,27,3,21,3,47,0,222,2,18,2,184,2,9,3,199,2,165,2,221,2,218,2,217,2,216,2,215,2,115,2,192,1,64,0,187,0,25,5,22,5,228,4,10,5,249,4,43,5,42,5,41,5,39,5,38,5,36,5,35,5,34,5,33,5,32,5,31,5,30,5,28,5,27,5,24,5,23,5,21,5,18,5,14,5,12,5,9,5,242,4,240,4,235,4,8,5,7,5,214,4,5,5,1,5,0,5,255,4,254,4,227,4,253,4,252,4,251,4,249,4,244,4,243,4,241,4,239,4,237,4,233,4,224,4,213,4,223,4,222,4,219,4,214,4,216, -4,211,4,225,4,210,4,209,4,206,4,196,4,190,4,186,4,201,4,195,4,208,4,207,4,173,4,171,4,203,4,200,4,177,4,184,4,218,4,113,4,212,4,205,4,169,4,157,4,197,4,153,4,172,4,155,4,167,4,166,4,162,4,158,4,194,4,192,4,152,4,138,4,159,4,156,4,136,4,175,4,179,4,109,4,71,4,174,4,170,4,164,4,168,4,147,4,145,4,144,4,149,4,150,4,142,4,135,4,117,4,146,4,134,4,143,4,133,4,108,4,121,4,119,4,100,4,104,4,79,4,78,4,76,4,72,4,126,4,125,4,61,4,101,4,56,4,40,4,96,4,73,4,58,4,54,4,49,4,43,4,85,4,83,4,95,4,93,4,92,4,89,4,87, -4,84,4,239,3,232,3,234,3,52,4,51,4,57,4,0,0,0,0,50,1,212,0,176,1,187,3,127,2,191,0,187,3,39,1,47,2,88,0,88,0,88,0,88,0,81,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,185,0,184,0,183,0,123,2,123,2,36,1,94,2,94,2,88,0,88,0,88,0,88,0,171,2,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,16,0,180,1,85,2,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,172,2,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,47,2,84,0,84,0,84,0,83,0,74,1,65,0,86,0,86,0,86,0, -86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,123,2,123,2,122,2,121,2,182,0,170,2,38,2,123,1,120,1,119,1,17,0,66,1,94,2,94,2,115,1,198,0,223,1,91,0,118,1,82,0,79,0,165,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,86,2,123,2,123,2,107,0,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,186,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,82,2,82,2,142,0,72,1,71,1,228,1,249,0,88,1,238,0,123,2,123,2,122,2,121,2,73,2,192,1,14,2,13,2,229,0,132,1,1,0,138,1,194,1,72,2,193,1,123,2,123,2,123, -2,123,2,63,1,139,1,94,2,94,2,199,0,157,0,17,1,126,1,12,1,125,1,187,0,123,2,123,2,122,2,121,2,55,1,43,2,10,1,81,2,81,2,10,1,91,1,76,2,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,222,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,16,1,24,2,122,2,121,2,146,0,98,2,197,0,54,1,63,2,182,0,226,1,15,1,123,1,120,1,119,1,250,1,21,0,122,2,121,2,122,2,121,2,123,2,123,2,118,1,99,2,62,2,36,2,184,1,111,0,51,2,94,2,94,2,122,2,121,2,68,1,223,1,96,2,96,2,96,2,44,1,179,1,61,2,119, -0,151,1,210,0,162,0,50,2,115,3,80,2,80,2,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,250,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,108,2,111,0,123,2,123,2,105,1,94,2,94,2,102,1,249,0,93,1,248,0,177,1,243,0,223,1,74,2,122,2,121,2,195,0,99,2,93,0,119,0,221,0,63,2,241,1,22,2,22,2,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,62,2,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,77,0,173,1,126,2,61,2,77,2,18,2,240,0,230,0,242,0,105, -0,249,0,93,1,248,0,3,2,76,2,208,0,204,1,17,2,52,2,173,0,122,2,121,2,202,3,144,0,174,1,2,0,168,1,228,0,124,1,45,2,94,2,94,2,190,0,153,0,159,0,158,0,2,2,51,0,120,2,119,2,118,2,71,0,24,2,176,1,186,3,196,0,98,2,186,3,102,2,45,0,18,0,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,5,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,96,2,96,2,96,2,30,2,168,1,146,1,129,1,241,0,250,1,195,1,64,1,211,0,31,2,164,0,180,1,130,1,37,1,195,1,75,2,108,0,240,1,111,0,78,1,135,1,79,2,168, -1,102,2,27,0,196,1,197,1,94,2,94,2,72,0,1,1,70,0,3,1,196,1,83,1,86,1,52,2,70,2,68,0,159,1,213,1,72,1,71,1,62,0,102,2,45,0,110,0,137,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,152,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,110,0,243,1,8,2,26,2,146,1,133,1,168,1,110,0,54,2,244,1,81,2,81,2,198,1,82,0,79,0,165,0,168,1,79,2,128,1,52,2,84,1,103,2,188,0,162,0,168,1,94,1,104,2,168,1,102,2,44,0,94,2,94,2,189,1,70,2,44,1,178,1,151,0,19,0,102,2,9,0,56,2,68,2,92,1,103, -2,213,1,55,2,102,2,26,0,104,2,102,2,45,0,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,155,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,67,2,110,0,66,2,9,2,26,1,177,1,142,1,144,1,255,0,230,1,82,0,79,0,165,0,231,1,164,0,82,0,79,0,165,0,232,1,232,1,108,1,131,1,168,1,32,2,32,2,253,1,94,1,106,1,155,0,191,0,94,2,94,2,47,2,130,2,128,2,77,1,82,0,79,0,165,0,49,1,52,2,251,1,56,1,101,1,102,2,45,0,73,1,84,2,83,2,194,0,81,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0, -88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,20,0,67,1,150,0,7,1,211,0,31,2,165,1,84,2,83,2,102,2,22,0,168,1,193,0,168,1,28,1,168,1,135,1,168,1,253,1,168,1,65,2,168,1,186,0,79,1,168,1,47,2,168,1,57,1,120,0,34,2,94,2,94,2,67,0,102,2,47,0,102,2,50,0,102,2,48,0,102,2,100,0,102,2,99,0,102,2,101,0,64,2,102,2,102,0,102,2,109,0,70,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,168,1, -55,1,168,1,73,2,54,0,168,1,4,2,5,2,78,2,102,2,112,0,168,1,72,2,168,1,60,2,168,1,195,0,168,1,59,2,168,1,67,0,168,1,102,2,94,0,102,2,98,0,168,1,102,2,97,0,8,1,94,2,94,2,195,0,102,2,46,0,102,2,96,0,102,2,30,0,102,2,49,0,102,2,115,0,102,2,114,0,162,1,229,0,132,1,102,2,113,0,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,119,0,168,1,78,2,110,0,116,1,94,2,94,2,195,0,53,0,250,0,102,2,29,0,195,0,216,1,182,1,217,2,190,0,46, -1,242,1,14,0,11,2,129,2,2,0,102,2,43,0,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,168,1,101,2,196,3,196,3,98,1,94,2,94,2,164,1,56,1,64,0,102,2,42,0,135,1,99,1,27,1,181,1,45,1,255,0,158,1,154,1,239,1,236,1,102,2,28,0,215,1,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,168,1,110,0,110,0,110,0,110,0,94,2,94,2,110,0,254,0,13,0,102, -2,41,0,20,2,19,2,27,1,225,1,19,2,201,1,28,1,119,0,49,2,100,1,102,2,40,0,28,1,50,1,89,0,78,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,110,0,168,1,85,1,220,0,43,2,94,2,94,2,95,1,43,2,62,1,102,2,95,0,157,1,255,0,83,0,74,1,28,1,28,1,255,0,128,2,77,1,100,1,255,0,102,2,39,0,50,1,100,1,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,168,1,61,1,60,1,141,0,209, -1,94,2,94,2,219,0,107,2,207,1,102,2,10,0,161,1,206,1,255,0,189,0,254,1,41,2,95,1,207,0,107,1,161,0,102,2,38,0,59,1,218,0,255,0,255,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,76,0,163,1,255,0,3,0,110,3,205,1,168,1,247,0,75,1,75,1,102,2,37,0,217,0,76,0,163,1,134,1,3,0,216,0,215,0,166,1,4,0,75,1,75,1,168,1,35,2,12,0,168,1,33,2,102,2,36,0,168,1,29,2,166,1,168,1,28,2,168,1,214,0,168,1,152,1,168,1,27,2,147,1,93,2,93,2,237,0,102, -2,25,0,119,0,102,2,24,0,76,2,152,1,102,2,45,0,118,0,102,2,35,0,102,2,34,0,102,2,33,0,102,2,23,0,76,2,60,0,223,0,91,2,90,2,1,2,122,1,73,0,74,0,140,0,139,0,168,1,110,0,9,1,75,0,170,1,169,1,59,0,168,1,98,2,73,0,74,0,37,2,146,1,148,1,168,1,117,1,75,0,170,1,169,1,92,2,138,0,98,2,102,2,11,0,136,1,76,0,163,1,181,0,3,0,102,2,32,0,15,1,113,1,75,1,75,1,237,1,102,2,31,0,149,0,96,2,96,2,96,2,95,2,15,0,166,1,109,1,102,2,8,0,137,0,233,1,136,0,190,0,96,2,96,2,96,2,95,2,15,0,229,1,176,0,135,0,7,0,252,0,221,1,152, -1,174,0,133,0,175,0,218,1,57,0,56,0,132,0,130,0,119,0,76,0,163,1,76,2,3,0,212,1,245,0,208,1,171,0,75,1,75,1,125,0,123,0,200,1,191,1,122,0,190,1,104,0,80,1,231,0,166,1,166,0,154,0,73,0,74,0,76,1,116,0,175,1,121,0,53,1,75,0,170,1,169,1,222,0,106,0,98,2,52,1,125,2,204,0,152,1,117,2,115,2,116,2,6,0,200,0,172,1,171,1,34,1,203,0,110,2,201,0,76,2,62,0,63,0,33,1,66,0,163,1,143,1,3,0,145,1,32,1,92,0,143,0,75,1,75,1,31,1,96,2,96,2,96,2,95,2,15,0,73,0,74,0,227,0,166,1,69,1,69,0,160,1,75,0,170,1,169,1,100,2, -156,1,98,2,192,0,61,0,57,2,209,0,140,1,226,0,22,1,225,0,127,1,152,1,15,2,46,2,20,1,21,2,40,2,16,2,65,1,11,2,114,1,252,1,180,0,76,2,238,1,179,0,110,1,117,0,253,0,13,1,10,2,247,1,96,2,96,2,96,2,95,2,15,0,39,2,246,1,58,0,18,1,12,2,178,0,73,0,74,0,48,1,245,1,112,1,47,1,206,0,75,0,170,1,169,1,235,1,104,1,98,2,213,0,177,0,227,1,131,0,89,1,42,1,41,1,40,1,202,0,38,1,224,1,234,1,210,1,134,0,172,0,129,0,188,1,90,1,214,1,128,0,58,1,203,1,103,0,127,0,126,0,148,0,124,0,167,0,187,1,235,0,96,2,96,2,96,2,95,2,15, -0,186,1,183,1,111,2,234,0,43,1,145,0,71,2,35,1,121,1,69,2,160,0,119,0,156,0,14,1,124,2,203,3,169,0,23,1,114,2,8,2,113,2,217,1,112,2,170,0,109,2,106,2,119,0,168,0,55,0,153,1,167,1,25,2,97,2,30,1,29,1,149,1,58,2,48,2,44,2,5,0,52,0,202,1,42,2,147,0,11,1,7,2,248,1,6,2,150,1,6,1,239,0,4,1,0,2,87,1,255,1,2,1,97,1,53,2,0,1,224,0,251,0,103,1,21,1,19,1,220,1,219,1,246,0,96,1,244,0,211,1,199,1,236,0,233,0,232,0,51,1,185,1,25,1,205,0,163,0,141,1,24,1,23,2,249,1,74,1,105,2,203,3,203,3,203,3,203,3,111,1,203,3, -203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,82,1,0,0,0,0,0,0,100,117,112,108,105,99,97,116,101,32,87,73,84,72,32,116,97,98,108,101,32,110,97,109,101,58,32,37,115,0,0,0,110,111,116,32,97,117,116,104,111,114,105,122,101,100,0,0,97,117,116,104,111,114,105,122,101,114,32,109,97,108,102,117,110,99,116,105,111,110,0,0,67,82,69,65,84,69,32,86,73,82,84,85,65,76,32,84,65,66,76,69,32,37,84,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,116,121,112,101,61,39,116,97,98,108,101,39,44,32, -110,97,109,101,61,37,81,44,32,116,98,108,95,110,97,109,101,61,37,81,44,32,114,111,111,116,112,97,103,101,61,48,44,32,115,113,108,61,37,81,32,87,72,69,82,69,32,114,111,119,105,100,61,35,37,100,0,115,113,108,105,116,101,95,116,101,109,112,95,109,97,115,116,101,114,0,0,0,0,0,0,115,113,108,105,116,101,95,109,97,115,116,101,114,0,0,0,110,97,109,101,61,39,37,113,39,32,65,78,68,32,116,121,112,101,61,39,116,97,98,108,101,39,0,0,0,0,0,0,118,105,114,116,117,97,108,32,116,97,98,108,101,115,32,109,97,121,32, -110,111,116,32,98,101,32,97,108,116,101,114,101,100,0,0,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,99,111,108,117,109,110,32,116,111,32,97,32,118,105,101,119,0,0,0,115,113,108,105,116,101,95,97,108,116,101,114,116,97,98,95,37,115,0,0,0,0,0,0,117,110,97,98,108,101,32,116,111,32,111,112,101,110,32,97,32,116,101,109,112,111,114,97,114,121,32,100,97,116,97,98,97,115,101,32,102,105,108,101,32,102,111,114,32,115,116,111,114,105,110,103,32,116,101,109,112,111,114,97,114,121,32,116,97,98,108, -101,115,0,0,0,115,113,108,105,116,101,95,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,97,108,116,101,114,101,100,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,80,82,73,77,65,82,89,32,75,69,89,32,99,111,108,117,109,110,0,67,97,110,110,111,116,32,97,100,100,32,97,32,85,78,73,81,85,69,32,99,111,108,117,109,110,0,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,82,69,70,69,82,69,78,67,69,83,32,99,111,108,117,109,110,32,119,105,116,104,32,110,111,110,45,78,85, -76,76,32,100,101,102,97,117,108,116,32,118,97,108,117,101,0,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,78,79,84,32,78,85,76,76,32,99,111,108,117,109,110,32,119,105,116,104,32,100,101,102,97,117,108,116,32,118,97,108,117,101,32,78,85,76,76,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,99,111,108,117,109,110,32,119,105,116,104,32,110,111,110,45,99,111,110,115,116,97,110,116,32,100,101,102,97,117,108,116,0,0,0,85,80,68,65,84,69,32,34,37,119,34,46,37,115,32,83,69,84,32,115,113,108, -32,61,32,115,117,98,115,116,114,40,115,113,108,44,49,44,37,100,41,32,124,124,32,39,44,32,39,32,124,124,32,37,81,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,37,100,41,32,87,72,69,82,69,32,116,121,112,101,32,61,32,39,116,97,98,108,101,39,32,65,78,68,32,110,97,109,101,32,61,32,37,81,0,0,0,0,116,98,108,95,110,97,109,101,61,37,81,0,0,0,0,0,116,121,112,101,61,39,116,114,105,103,103,101,114,39,32,65,78,68,32,40,37,115,41,0,110,97,109,101,61,37,81,0,37,115,32,79,82,32,110,97,109,101,61,37,81,0, -0,0,45,0,0,0,0,0,0,0,116,104,101,114,101,32,105,115,32,97,108,114,101,97,100,121,32,97,110,111,116,104,101,114,32,116,97,98,108,101,32,111,114,32,105,110,100,101,120,32,119,105,116,104,32,116,104,105,115,32,110,97,109,101,58,32,37,115,0,0,0,0,0,0,118,105,101,119,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,97,108,116,101,114,101,100,0,0,0,0,0,0,85,80,68,65,84,69,32,34,37,119,34,46,37,115,32,83,69,84,32,115,113,108,32,61,32,115,113,108,105,116,101,95,114,101,110,97,109,101,95,112,97,114,101, -110,116,40,115,113,108,44,32,37,81,44,32,37,81,41,32,87,72,69,82,69,32,37,115,59,0,0,0,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,115,113,108,32,61,32,67,65,83,69,32,87,72,69,78,32,116,121,112,101,32,61,32,39,116,114,105,103,103,101,114,39,32,84,72,69,78,32,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,114,105,103,103,101,114,40,115,113,108,44,32,37,81,41,69,76,83,69,32,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,97,98,108,101,40,115,113,108,44,32,37,81,41,32,69, -78,68,44,32,116,98,108,95,110,97,109,101,32,61,32,37,81,44,32,110,97,109,101,32,61,32,67,65,83,69,32,87,72,69,78,32,116,121,112,101,61,39,116,97,98,108,101,39,32,84,72,69,78,32,37,81,32,87,72,69,78,32,110,97,109,101,32,76,73,75,69,32,39,115,113,108,105,116,101,95,97,117,116,111,105,110,100,101,120,37,37,39,32,65,78,68,32,116,121,112,101,61,39,105,110,100,101,120,39,32,84,72,69,78,32,39,115,113,108,105,116,101,95,97,117,116,111,105,110,100,101,120,95,39,32,124,124,32,37,81,32,124,124,32,115,117,98, -115,116,114,40,110,97,109,101,44,37,100,43,49,56,41,32,69,76,83,69,32,110,97,109,101,32,69,78,68,32,87,72,69,82,69,32,116,98,108,95,110,97,109,101,61,37,81,32,67,79,76,76,65,84,69,32,110,111,99,97,115,101,32,65,78,68,32,40,116,121,112,101,61,39,116,97,98,108,101,39,32,79,82,32,116,121,112,101,61,39,105,110,100,101,120,39,32,79,82,32,116,121,112,101,61,39,116,114,105,103,103,101,114,39,41,59,0,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,0,85,80,68,65,84,69,32,34,37,119,34,46,115,113, -108,105,116,101,95,115,101,113,117,101,110,99,101,32,115,101,116,32,110,97,109,101,32,61,32,37,81,32,87,72,69,82,69,32,110,97,109,101,32,61,32,37,81,0,0,0,0,0,0,0,85,80,68,65,84,69,32,115,113,108,105,116,101,95,116,101,109,112,95,109,97,115,116,101,114,32,83,69,84,32,115,113,108,32,61,32,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,114,105,103,103,101,114,40,115,113,108,44,32,37,81,41,44,32,116,98,108,95,110,97,109,101,32,61,32,37,81,32,87,72,69,82,69,32,37,115,59,0,0,0,0,0,118,105,101, -119,32,37,115,32,105,115,32,99,105,114,99,117,108,97,114,108,121,32,100,101,102,105,110,101,100,0,0,0,0,0,2,0,3,0,5,0,6,0,7,0,8,0,9,0,110,111,32,115,117,99,104,32,99,111,108,108,97,116,105,111,110,32,115,101,113,117,101,110,99,101,58,32,37,115,0,0,3,2,1,0,0,0,0,0,73,78,84,69,71,69,82,0,37,115,58,37,100,0,0,0,97,32,71,82,79,85,80,32,66,89,32,99,108,97,117,115,101,32,105,115,32,114,101,113,117,105,114,101,100,32,98,101,102,111,114,101,32,72,65,86,73,78,71,0,0,0,0,0,79,82,68,69,82,0,0,0,71,82,79,85, -80,0,0,0,97,103,103,114,101,103,97,116,101,32,102,117,110,99,116,105,111,110,115,32,97,114,101,32,110,111,116,32,97,108,108,111,119,101,100,32,105,110,32,116,104,101,32,71,82,79,85,80,32,66,89,32,99,108,97,117,115,101,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,116,101,114,109,115,32,105,110,32,79,82,68,69,82,32,66,89,32,99,108,97,117,115,101,0,0,0,0,0,0,0,37,114,32,79,82,68,69,82,32,66,89,32,116,101,114,109,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,97,110,121,32,99,111,108,117,109, -110,32,105,110,32,116,104,101,32,114,101,115,117,108,116,32,115,101,116,0,0,0,0,37,114,32,37,115,32,66,89,32,116,101,114,109,32,111,117,116,32,111,102,32,114,97,110,103,101,32,45,32,115,104,111,117,108,100,32,98,101,32,98,101,116,119,101,101,110,32,49,32,97,110,100,32,37,100,0,116,111,111,32,109,97,110,121,32,116,101,114,109,115,32,105,110,32,37,115,32,66,89,32,99,108,97,117,115,101,0,0,69,120,112,114,101,115,115,105,111,110,32,116,114,101,101,32,105,115,32,116,111,111,32,108,97,114,103,101,32,40, -109,97,120,105,109,117,109,32,100,101,112,116,104,32,37,100,41,0,102,117,110,99,116,105,111,110,115,0,0,0,0,0,0,0,115,101,99,111,110,100,32,97,114,103,117,109,101,110,116,32,116,111,32,108,105,107,101,108,105,104,111,111,100,40,41,32,109,117,115,116,32,98,101,32,97,32,99,111,110,115,116,97,110,116,32,98,101,116,119,101,101,110,32,48,46,48,32,97,110,100,32,49,46,48,0,0,110,111,116,32,97,117,116,104,111,114,105,122,101,100,32,116,111,32,117,115,101,32,102,117,110,99,116,105,111,110,58,32,37,115,0,0, -0,0,0,0,109,105,115,117,115,101,32,111,102,32,97,103,103,114,101,103,97,116,101,32,102,117,110,99,116,105,111,110,32,37,46,42,115,40,41,0,0,0,0,0,110,111,32,115,117,99,104,32,102,117,110,99,116,105,111,110,58,32,37,46,42,115,0,0,119,114,111,110,103,32,110,117,109,98,101,114,32,111,102,32,97,114,103,117,109,101,110,116,115,32,116,111,32,102,117,110,99,116,105,111,110,32,37,46,42,115,40,41,0,0,0,0,115,117,98,113,117,101,114,105,101,115,0,0,0,0,0,0,112,97,114,97,109,101,116,101,114,115,0,0,0,0,0,0,37, -115,32,112,114,111,104,105,98,105,116,101,100,32,105,110,32,67,72,69,67,75,32,99,111,110,115,116,114,97,105,110,116,115,0,0,0,0,0,0,37,115,32,112,114,111,104,105,98,105,116,101,100,32,105,110,32,112,97,114,116,105,97,108,32,105,110,100,101,120,32,87,72,69,82,69,32,99,108,97,117,115,101,115,0,0,0,0,110,101,119,0,0,0,0,0,111,108,100,0,0,0,0,0,109,105,115,117,115,101,32,111,102,32,97,108,105,97,115,101,100,32,97,103,103,114,101,103,97,116,101,32,37,115,0,0,110,111,32,115,117,99,104,32,99,111,108,117, -109,110,0,0,97,109,98,105,103,117,111,117,115,32,99,111,108,117,109,110,32,110,97,109,101,0,0,0,37,115,58,32,37,115,46,37,115,46,37,115,0,0,0,0,37,115,58,32,37,115,46,37,115,0,0,0,0,0,0,0,37,115,58,32,37,115,0,0,82,79,87,73,68,0,0,0,97,99,99,101,115,115,32,116,111,32,37,115,46,37,115,46,37,115,32,105,115,32,112,114,111,104,105,98,105,116,101,100,0,0,0,0,0,0,0,0,97,99,99,101,115,115,32,116,111,32,37,115,46,37,115,32,105,115,32,112,114,111,104,105,98,105,116,101,100,0,0,0,95,82,79,87,73,68,95,0,79, -73,68,0,0,0,0,0,115,113,108,105,116,101,95,115,113,95,37,112,0,0,0,0,116,111,111,32,109,97,110,121,32,114,101,102,101,114,101,110,99,101,115,32,116,111,32,34,37,115,34,58,32,109,97,120,32,54,53,53,51,53,0,0,42,0,0,0,0,0,0,0,37,115,46,37,115,0,0,0,37,115,46,37,115,46,37,115,0,0,0,0,0,0,0,0,110,111,32,115,117,99,104,32,116,97,98,108,101,58,32,37,115,0,0,0,0,0,0,0,110,111,32,116,97,98,108,101,115,32,115,112,101,99,105,102,105,101,100,0,0,0,0,0,116,111,111,32,109,97,110,121,32,99,111,108,117,109,110, -115,32,105,110,32,114,101,115,117,108,116,32,115,101,116,0,0,97,32,78,65,84,85,82,65,76,32,106,111,105,110,32,109,97,121,32,110,111,116,32,104,97,118,101,32,97,110,32,79,78,32,111,114,32,85,83,73,78,71,32,99,108,97,117,115,101,0,0,0,0,0,0,0,99,97,110,110,111,116,32,104,97,118,101,32,98,111,116,104,32,79,78,32,97,110,100,32,85,83,73,78,71,32,99,108,97,117,115,101,115,32,105,110,32,116,104,101,32,115,97,109,101,32,106,111,105,110,0,0,99,97,110,110,111,116,32,106,111,105,110,32,117,115,105,110,103,32, -99,111,108,117,109,110,32,37,115,32,45,32,99,111,108,117,109,110,32,110,111,116,32,112,114,101,115,101,110,116,32,105,110,32,98,111,116,104,32,116,97,98,108,101,115,0,110,111,32,115,117,99,104,32,105,110,100,101,120,58,32,37,115,0,0,0,0,0,0,0,109,117,108,116,105,112,108,101,32,114,101,102,101,114,101,110,99,101,115,32,116,111,32,114,101,99,117,114,115,105,118,101,32,116,97,98,108,101,58,32,37,115,0,0,0,0,0,0,99,105,114,99,117,108,97,114,32,114,101,102,101,114,101,110,99,101,58,32,37,115,0,0,116,97, -98,108,101,32,37,115,32,104,97,115,32,37,100,32,118,97,108,117,101,115,32,102,111,114,32,37,100,32,99,111,108,117,109,110,115,0,0,0,109,117,108,116,105,112,108,101,32,114,101,99,117,114,115,105,118,101,32,114,101,102,101,114,101,110,99,101,115,58,32,37,115,0,0,0,0,0,0,0,114,101,99,117,114,115,105,118,101,32,114,101,102,101,114,101,110,99,101,32,105,110,32,97,32,115,117,98,113,117,101,114,121,58,32,37,115,0,0,0,110,111,32,115,117,99,104,32,109,111,100,117,108,101,58,32,37,115,0,0,0,0,0,0,118,116,97, -98,108,101,32,99,111,110,115,116,114,117,99,116,111,114,32,102,97,105,108,101,100,58,32,37,115,0,0,0,118,116,97,98,108,101,32,99,111,110,115,116,114,117,99,116,111,114,32,100,105,100,32,110,111,116,32,100,101,99,108,97,114,101,32,115,99,104,101,109,97,58,32,37,115,0,0,0,104,105,100,100,101,110,0,0,32,104,105,100,100,101,110,0,111,98,106,101,99,116,32,110,97,109,101,32,114,101,115,101,114,118,101,100,32,102,111,114,32,105,110,116,101,114,110,97,108,32,117,115,101,58,32,37,115,0,0,0,0,0,0,0,99,111, -114,114,117,112,116,32,100,97,116,97,98,97,115,101,0,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,100,97,116,97,98,97,115,101,32,37,84,0,0,0,0,0,105,100,120,0,0,0,0,0,116,98,108,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,46,0,0,0,0,0,0,0,0,0,0,0,80,71,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,47,0,0,0,0,0,0,0,0,0,0,0,64,71,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,97,97,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,32,71,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,116,97,116,95,103,101,116,0,0,0,0,0,0,0,0, -37,108,108,117,0,0,0,0,32,37,108,108,117,0,0,0,115,116,97,116,95,112,117,115,104,0,0,0,0,0,0,0,115,116,97,116,95,105,110,105,116,0,0,0,0,0,0,0,120,71,0,0,136,71,0,0,152,71,0,0,0,0,0,0,168,71,0,0,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,49,0,0,0,0,116,98,108,44,105,100,120,44,115,116,97,116,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,51,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,52,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,37,115,40,37,115,41,0,0,68,69,76,69,84, -69,32,70,82,79,77,32,37,81,46,37,115,32,87,72,69,82,69,32,37,115,61,37,81,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,115,113,108,105,116,101,95,109,97,115,116,101,114,40,10,32,32,116,121,112,101,32,116,101,120,116,44,10,32,32,110,97,109,101,32,116,101,120,116,44,10,32,32,116,98,108,95,110,97,109,101,32,116,101,120,116,44,10,32,32,114,111,111,116,112,97,103,101,32,105,110,116,101,103,101,114,44,10,32,32,115,113,108,32,116,101,120,116,10,41,0,67,82,69,65,84,69,32,84,69,77,80,32,84,65,66,76,69,32, -115,113,108,105,116,101,95,116,101,109,112,95,109,97,115,116,101,114,40,10,32,32,116,121,112,101,32,116,101,120,116,44,10,32,32,110,97,109,101,32,116,101,120,116,44,10,32,32,116,98,108,95,110,97,109,101,32,116,101,120,116,44,10,32,32,114,111,111,116,112,97,103,101,32,105,110,116,101,103,101,114,44,10,32,32,115,113,108,32,116,101,120,116,10,41,0,0,0,0,0,0,0,49,0,0,0,0,0,0,0,97,116,116,97,99,104,101,100,32,100,97,116,97,98,97,115,101,115,32,109,117,115,116,32,117,115,101,32,116,104,101,32,115,97,109, -101,32,116,101,120,116,32,101,110,99,111,100,105,110,103,32,97,115,32,109,97,105,110,32,100,97,116,97,98,97,115,101,0,0,0,0,0,117,110,115,117,112,112,111,114,116,101,100,32,102,105,108,101,32,102,111,114,109,97,116,0,83,69,76,69,67,84,32,110,97,109,101,44,32,114,111,111,116,112,97,103,101,44,32,115,113,108,32,70,82,79,77,32,39,37,113,39,46,37,115,32,79,82,68,69,82,32,66,89,32,114,111,119,105,100,0,0,83,69,76,69,67,84,32,116,98,108,44,105,100,120,44,115,116,97,116,32,70,82,79,77,32,37,81,46,115,113, -108,105,116,101,95,115,116,97,116,49,0,0,0,0,0,0,0,0,117,110,111,114,100,101,114,101,100,0,0,0,0,0,0,0,115,122,61,91,48,45,57,93,42,0,0,0,0,0,0,0,33,0,32,0,30,0,28,0,26,0,0,0,0,0,0,0,105,110,118,97,108,105,100,32,114,111,111,116,112,97,103,101,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,109,97,108,102,111,114,109,101,100,32,100,97,116,97,98,97,115,101,32,115,99,104,101,109,97,32,40,37,115,41,0,0,37,115,32,45,32,37,115,0,117,110,97,98,108,101,32,116,111,32,105,100,101,110,116,105,102,121,32,116,104,101,32,111, -98,106,101,99,116,32,116,111,32,98,101,32,114,101,105,110,100,101,120,101,100,0,0,0,44,32,0,0,0,0,0,0,46,0,0,0,0,0,0,0,109,105,115,117,115,101,32,111,102,32,97,103,103,114,101,103,97,116,101,58,32,37,115,40,41,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,102,117,110,99,116,105,111,110,58,32,37,46,42,115,40,41,0,0,0,0,0,0,0,0,82,65,73,83,69,40,41,32,109,97,121,32,111,110,108,121,32,98,101,32,117,115,101,100,32,119,105,116,104,105,110,32,97,32,116,114,105,103,103,101,114,45,112,114,111,103,114,97,109, -0,0,0,0,0,0,0,69,88,69,67,85,84,69,32,37,115,37,115,32,83,85,66,81,85,69,82,89,32,37,100,0,0,0,0,0,0,0,0,67,79,82,82,69,76,65,84,69,68,32,0,0,0,0,0,76,73,83,84,0,0,0,0,83,67,65,76,65,82,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,80,75,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,100,101,116,97,99,104,0,0,0,110,111,32,115,117,99,104,32,100,97,116,97,98,97,115,101,58,32,37,115,0,0,0,0,99,97,110,110,111,116,32,100,101,116,97,99,104, -32,100,97,116,97,98,97,115,101,32,37,115,0,0,0,0,0,0,0,99,97,110,110,111,116,32,68,69,84,65,67,72,32,100,97,116,97,98,97,115,101,32,119,105,116,104,105,110,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,37,115,32,105,115,32,108,111,99,107,101,100,0,0,0,3,0,1,0,0,0,0,0,0,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,8,76,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,97,116,116,97,99,104,0,0,0,116,111,111,32,109,97,110,121,32,97,116,116,97,99,104,101,100,32,100,97, -116,97,98,97,115,101,115,32,45,32,109,97,120,32,37,100,0,0,0,0,99,97,110,110,111,116,32,65,84,84,65,67,72,32,100,97,116,97,98,97,115,101,32,119,105,116,104,105,110,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,37,115,32,105,115,32,97,108,114,101,97,100,121,32,105,110,32,117,115,101,0,0,0,100,97,116,97,98,97,115,101,32,105,115,32,97,108,114,101,97,100,121,32,97,116,116,97,99,104,101,100,0,0,0,0,117,110,97,98,108,101,32,116,111,32,111,112,101,110,32,100,97, -116,97,98,97,115,101,58,32,37,115,0,0,0,0,0,110,111,32,115,117,99,104,32,116,114,105,103,103,101,114,58,32,37,83,0,0,0,0,0,105,0,246,0,97,0,1,0,46,0,1,2,78,2,247,1,97,0,1,0,46,0,0,2,78,2,247,1,74,0,0,0,9,0,254,0,0,0,0,0,116,101,109,112,111,114,97,114,121,32,116,114,105,103,103,101,114,32,109,97,121,32,110,111,116,32,104,97,118,101,32,113,117,97,108,105,102,105,101,100,32,110,97,109,101,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,116,114,105,103,103,101,114,115,32,111,110,32,118,105,114, -116,117,97,108,32,116,97,98,108,101,115,0,0,0,0,0,0,0,0,116,114,105,103,103,101,114,32,37,84,32,97,108,114,101,97,100,121,32,101,120,105,115,116,115,0,0,0,0,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,116,114,105,103,103,101,114,32,111,110,32,115,121,115,116,101,109,32,116,97,98,108,101,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,37,115,32,116,114,105,103,103,101,114,32,111,110,32,118,105,101,119,58,32,37,83,0,0,0,0,66,69,70,79,82,69,0,0,65,70,84,69,82,0,0,0,99,97,110,110, -111,116,32,99,114,101,97,116,101,32,73,78,83,84,69,65,68,32,79,70,32,116,114,105,103,103,101,114,32,111,110,32,116,97,98,108,101,58,32,37,83,0,0,0,37,115,32,37,84,32,99,97,110,110,111,116,32,114,101,102,101,114,101,110,99,101,32,111,98,106,101,99,116,115,32,105,110,32,100,97,116,97,98,97,115,101,32,37,115,0,0,0,37,115,32,99,97,110,110,111,116,32,117,115,101,32,118,97,114,105,97,98,108,101,115,0,73,78,83,69,82,84,32,73,78,84,79,32,37,81,46,37,115,32,86,65,76,85,69,83,40,39,116,114,105,103,103,101, -114,39,44,37,81,44,37,81,44,48,44,39,67,82,69,65,84,69,32,84,82,73,71,71,69,82,32,37,113,39,41,0,116,121,112,101,61,39,116,114,105,103,103,101,114,39,32,65,78,68,32,110,97,109,101,61,39,37,113,39,0,0,0,0,45,37,84,0,0,0,0,0,114,101,115,117,108,116,0,0,144,86,0,0,0,0,0,0,0,0,0,0,8,82,0,0,1,1,0,0,0,0,0,0,160,86,0,0,2,0,0,0,0,0,16,0,176,86,0,0,3,0,0,0,0,0,0,0,136,81,0,0,4,1,0,0,0,0,0,0,192,86,0,0,2,0,0,0,16,0,0,0,208,86,0,0,5,0,0,0,0,0,0,0,232,86,0,0,2,0,0,0,8,0,0,0,0,87,0,0,6,0,0,0,0,0,0,0,16,87,0,0, -7,0,0,0,0,0,0,0,32,87,0,0,2,0,0,0,128,0,0,0,48,87,0,0,9,1,0,0,0,0,0,0,64,87,0,0,10,1,0,0,0,0,0,0,88,87,0,0,2,0,0,0,0,0,0,1,112,87,0,0,2,0,0,0,0,1,0,0,176,84,0,0,11,0,0,0,0,0,0,0,136,87,0,0,12,1,0,0,0,0,0,0,160,87,0,0,13,1,0,0,0,0,0,0,184,87,0,0,2,0,0,0,0,0,8,0,200,87,0,0,0,0,0,0,0,0,0,0,216,87,0,0,2,0,0,0,32,0,0,0,240,87,0,0,2,0,0,0,4,0,0,0,0,88,0,0,2,0,0,0,0,32,0,0,32,88,0,0,14,1,0,0,0,0,0,0,56,88,0,0,15,1,0,0,0,0,0,0,72,88],"i8",Ga,u.Ra+10240); -F([16,1,0,0,0,0,0,0,168,83,0,0,17,1,0,0,0,0,0,0,224,81,0,0,18,1,0,0,0,0,0,0,240,81,0,0,19,0,0,0,0,0,0,0,88,88,0,0,2,0,0,0,0,128,0,0,208,81,0,0,21,0,0,0,0,0,0,0,112,88,0,0,22,1,0,0,0,0,0,0,48,82,0,0,23,0,0,0,0,0,0,0,128,88,0,0,22,1,0,0,0,0,0,0,152,81,0,0,24,0,0,0,0,0,0,0,144,88,0,0,2,0,0,0,0,0,0,2,160,88,0,0,17,1,0,0,0,0,0,0,176,88,0,0,2,0,0,0,0,64,0,0,200,88,0,0,2,0,0,0,0,0,4,0,224,88,0,0,2,0,0,0,0,0,2,0,0,89,0,0,0,0,0,0,0,0,0,0,168,81,0,0,25,0,0,0,0,0,0,0,16,89,0,0,2,0,0,0,64,0,0,0,40,89,0,0,26, -0,0,0,0,0,0,0,96,85,0,0,27,0,0,0,0,0,0,0,56,89,0,0,28,1,0,0,0,0,0,0,136,82,0,0,29,1,0,0,0,0,0,0,64,89,0,0,30,1,0,0,0,0,0,0,64,82,0,0,31,0,0,0,0,0,0,0,80,82,0,0,32,0,0,0,0,0,0,0,80,89,0,0,0,0,0,0,0,0,0,0,64,85,0,0,33,0,0,0,0,0,0,0,96,89,0,0,34,1,0,0,0,0,0,0,112,89,0,0,2,0,0,0,0,8,1,0,4,0,0,0,50,0,1,3,134,1,8,0,25,0,2,0,90,1,2,1,134,1,8,0,25,0,1,0,156,0,0,0,35,1,1,0,0,0,0,0,99,97,99,104,101,95,115,105,122,101,0,0,0,0,0,0,112,97,103,101,95,115,105,122,101,0,0,0,0,0,0,0,115,101,99,117,114,101,95,100, -101,108,101,116,101,0,0,0,110,111,114,109,97,108,0,0,101,120,99,108,117,115,105,118,101,0,0,0,0,0,0,0,108,111,99,107,105,110,103,95,109,111,100,101,0,0,0,0,106,111,117,114,110,97,108,95,109,111,100,101,0,0,0,0,106,111,117,114,110,97,108,95,115,105,122,101,95,108,105,109,105,116,0,0,0,0,0,0,97,117,116,111,95,118,97,99,117,117,109,0,0,0,0,0,4,0,1,0,50,0,1,4,44,1,0,0,24,0,2,0,25,0,1,0,51,0,7,1,109,109,97,112,95,115,105,122,101,0,0,0,0,0,0,0,116,101,109,112,95,115,116,111,114,101,0,0,0,0,0,0,116,101, -109,112,95,115,116,111,114,101,95,100,105,114,101,99,116,111,114,121,0,0,0,0,110,111,116,32,97,32,119,114,105,116,97,98,108,101,32,100,105,114,101,99,116,111,114,121,0,0,0,0,0,0,0,0,115,121,110,99,104,114,111,110,111,117,115,0,0,0,0,0,83,97,102,101,116,121,32,108,101,118,101,108,32,109,97,121,32,110,111,116,32,98,101,32,99,104,97,110,103,101,100,32,105,110,115,105,100,101,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,99,105,100,0,0,0,0,0,110,97,109,101,0,0,0,0,116,121,112,101,0,0,0,0, -110,111,116,110,117,108,108,0,100,102,108,116,95,118,97,108,117,101,0,0,0,0,0,0,112,107,0,0,0,0,0,0,116,97,98,108,101,0,0,0,119,105,100,116,104,0,0,0,104,101,105,103,104,116,0,0,115,101,113,110,111,0,0,0,115,101,113,0,0,0,0,0,117,110,105,113,117,101,0,0,102,105,108,101,0,0,0,0,105,100,0,0,0,0,0,0,102,114,111,109,0,0,0,0,116,111,0,0,0,0,0,0,111,110,95,117,112,100,97,116,101,0,0,0,0,0,0,0,111,110,95,100,101,108,101,116,101,0,0,0,0,0,0,0,109,97,116,99,104,0,0,0,78,79,78,69,0,0,0,0,112,97,114,101,110, -116,0,0,102,107,105,100,0,0,0,0,37,1,0,0,135,1,0,0,97,0,3,0,35,3,1,0,105,110,116,101,103,114,105,116,121,95,99,104,101,99,107,0,42,42,42,32,105,110,32,100,97,116,97,98,97,115,101,32,37,115,32,42,42,42,10,0,114,111,119,32,0,0,0,0,32,109,105,115,115,105,110,103,32,102,114,111,109,32,105,110,100,101,120,32,0,0,0,0,119,114,111,110,103,32,35,32,111,102,32,101,110,116,114,105,101,115,32,105,110,32,105,110,100,101,120,32,0,0,0,0,111,107,0,0,0,0,0,0,96,84,0,0,1,0,0,0,104,84,0,0,1,0,0,0,112,84,0,0,2,0,0,0, -128,84,0,0,3,0,0,0,144,84,0,0,2,0,0,0,152,84,0,0,3,0,0,0,160,84,0,0,0,0,0,0,168,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,84,70,56,0,0,0,0,85,84,70,45,56,0,0,0,85,84,70,45,49,54,108,101,0,0,0,0,0,0,0,0,85,84,70,45,49,54,98,101,0,0,0,0,0,0,0,0,85,84,70,49,54,108,101,0,85,84,70,49,54,98,101,0,85,84,70,45,49,54,0,0,85,84,70,49,54,0,0,0,101,110,99,111,100,105,110,103,0,0,0,0,0,0,0,0,117,110,115,117,112,112,111,114,116,101,100,32,101,110,99,111,100,105,110,103,58,32,37,115,0,0,0,0,0,0,0,0,4,0,1,0,25,0,1,0,51, -0,0,1,0,0,0,0,4,0,0,0,50,0,1,0,35,1,1,0,0,0,0,0,99,111,109,112,105,108,101,95,111,112,116,105,111,110,0,0,102,117,108,108,0,0,0,0,114,101,115,116,97,114,116,0,98,117,115,121,0,0,0,0,108,111,103,0,0,0,0,0,99,104,101,99,107,112,111,105,110,116,101,100,0,0,0,0,119,97,108,95,97,117,116,111,99,104,101,99,107,112,111,105,110,116,0,0,0,0,0,0,116,105,109,101,111,117,116,0,115,111,102,116,95,104,101,97,112,95,108,105,109,105,116,0,37,95,0,0,0,0,0,0,102,111,114,101,105,103,110,32,107,101,121,32,109,105,115, -109,97,116,99,104,32,45,32,34,37,119,34,32,114,101,102,101,114,101,110,99,105,110,103,32,34,37,119,34,0,0,0,0,83,69,84,32,78,85,76,76,0,0,0,0,0,0,0,0,83,69,84,32,68,69,70,65,85,76,84,0,0,0,0,0,67,65,83,67,65,68,69,0,82,69,83,84,82,73,67,84,0,0,0,0,0,0,0,0,78,79,32,65,67,84,73,79,78,0,0,0,0,0,0,0,116,101,109,112,111,114,97,114,121,32,115,116,111,114,97,103,101,32,99,97,110,110,111,116,32,98,101,32,99,104,97,110,103,101,100,32,102,114,111,109,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97, -99,116,105,111,110,0,0,0,110,111,110,101,0,0,0,0,105,110,99,114,101,109,101,110,116,97,108,0,0,0,0,0,96,86,0,0,104,86,0,0,112,86,0,0,120,86,0,0,136,18,0,0,136,86,0,0,100,101,108,101,116,101,0,0,112,101,114,115,105,115,116,0,111,102,102,0,0,0,0,0,116,114,117,110,99,97,116,101,0,0,0,0,0,0,0,0,119,97,108,0,0,0,0,0,97,112,112,108,105,99,97,116,105,111,110,95,105,100,0,0,97,117,116,111,109,97,116,105,99,95,105,110,100,101,120,0,98,117,115,121,95,116,105,109,101,111,117,116,0,0,0,0,99,97,99,104,101,95, -115,112,105,108,108,0,0,0,0,0,99,97,115,101,95,115,101,110,115,105,116,105,118,101,95,108,105,107,101,0,0,0,0,0,99,104,101,99,107,112,111,105,110,116,95,102,117,108,108,102,115,121,110,99,0,0,0,0,99,111,108,108,97,116,105,111,110,95,108,105,115,116,0,0,99,111,109,112,105,108,101,95,111,112,116,105,111,110,115,0,99,111,117,110,116,95,99,104,97,110,103,101,115,0,0,0,100,97,116,97,98,97,115,101,95,108,105,115,116,0,0,0,100,101,102,97,117,108,116,95,99,97,99,104,101,95,115,105,122,101,0,0,0,0,0,0,100, -101,102,101,114,95,102,111,114,101,105,103,110,95,107,101,121,115,0,0,0,0,0,0,101,109,112,116,121,95,114,101,115,117,108,116,95,99,97,108,108,98,97,99,107,115,0,0,102,111,114,101,105,103,110,95,107,101,121,95,99,104,101,99,107,0,0,0,0,0,0,0,102,111,114,101,105,103,110,95,107,101,121,95,108,105,115,116,0,0,0,0,0,0,0,0,102,111,114,101,105,103,110,95,107,101,121,115,0,0,0,0,102,114,101,101,108,105,115,116,95,99,111,117,110,116,0,0,102,117,108,108,95,99,111,108,117,109,110,95,110,97,109,101,115,0,0,0, -0,0,0,0,102,117,108,108,102,115,121,110,99,0,0,0,0,0,0,0,105,103,110,111,114,101,95,99,104,101,99,107,95,99,111,110,115,116,114,97,105,110,116,115,0,0,0,0,0,0,0,0,105,110,99,114,101,109,101,110,116,97,108,95,118,97,99,117,117,109,0,0,0,0,0,0,105,110,100,101,120,95,105,110,102,111,0,0,0,0,0,0,105,110,100,101,120,95,108,105,115,116,0,0,0,0,0,0,108,101,103,97,99,121,95,102,105,108,101,95,102,111,114,109,97,116,0,0,0,0,0,0,109,97,120,95,112,97,103,101,95,99,111,117,110,116,0,0,112,97,103,101,95,99,111, -117,110,116,0,0,0,0,0,0,113,117,101,114,121,95,111,110,108,121,0,0,0,0,0,0,113,117,105,99,107,95,99,104,101,99,107,0,0,0,0,0,114,101,97,100,95,117,110,99,111,109,109,105,116,116,101,100,0,0,0,0,0,0,0,0,114,101,99,117,114,115,105,118,101,95,116,114,105,103,103,101,114,115,0,0,0,0,0,0,114,101,118,101,114,115,101,95,117,110,111,114,100,101,114,101,100,95,115,101,108,101,99,116,115,0,0,0,0,0,0,0,115,99,104,101,109,97,95,118,101,114,115,105,111,110,0,0,115,104,111,114,116,95,99,111,108,117,109,110,95, -110,97,109,101,115,0,0,0,0,0,0,115,104,114,105,110,107,95,109,101,109,111,114,121,0,0,0,115,116,97,116,115,0,0,0,116,97,98,108,101,95,105,110,102,111,0,0,0,0,0,0,117,115,101,114,95,118,101,114,115,105,111,110,0,0,0,0,119,97,108,95,99,104,101,99,107,112,111,105,110,116,0,0,119,114,105,116,97,98,108,101,95,115,99,104,101,109,97,0,110,111,32,115,117,99,104,32,105,110,100,101,120,58,32,37,83,0,0,0,0,0,0,0,105,110,100,101,120,32,97,115,115,111,99,105,97,116,101,100,32,119,105,116,104,32,85,78,73,81,85, -69,32,111,114,32,80,82,73,77,65,82,89,32,75,69,89,32,99,111,110,115,116,114,97,105,110,116,32,99,97,110,110,111,116,32,98,101,32,100,114,111,112,112,101,100,0,0,0,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,37,115,32,87,72,69,82,69,32,110,97,109,101,61,37,81,32,65,78,68,32,116,121,112,101,61,39,105,110,100,101,120,39,0,0,0,0,0,0,0,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,114,111,111,116,112,97,103,101,61,37,100,32,87,72,69,82,69,32,35,37,100,32,65,78,68,32,114,111,111,116, -112,97,103,101,61,35,37,100,0,115,113,108,105,116,101,95,115,116,97,116,37,100,0,0,0,48,0,0,0,0,0,0,0,118,97,114,105,97,98,108,101,32,110,117,109,98,101,114,32,109,117,115,116,32,98,101,32,98,101,116,119,101,101,110,32,63,49,32,97,110,100,32,63,37,100,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,83,81,76,32,118,97,114,105,97,98,108,101,115,0,0,116,97,98,108,101,32,37,83,32,104,97,115,32,110,111,32,99,111,108,117,109,110,32,110,97,109,101,100,32,37,115,0,116,97,98,108,101,32,37,83,32,104,97,115,32, -37,100,32,99,111,108,117,109,110,115,32,98,117,116,32,37,100,32,118,97,108,117,101,115,32,119,101,114,101,32,115,117,112,112,108,105,101,100,0,0,0,0,0,37,100,32,118,97,108,117,101,115,32,102,111,114,32,37,100,32,99,111,108,117,109,110,115,0,0,0,0,0,0,0,0,114,111,119,115,32,105,110,115,101,114,116,101,100,0,0,0,97,116,32,109,111,115,116,32,37,100,32,116,97,98,108,101,115,32,105,110,32,97,32,106,111,105,110,0,0,0,0,0,62,60,59,61,0,0,0,0,0,0,105,102,62,59,61,60,113,111,110,112,0,0,0,0,9,8,0,0,0,0,0, -0,105,102,0,0,0,0,0,0,83,69,65,82,67,72,0,0,83,67,65,78,0,0,0,0,37,115,32,83,85,66,81,85,69,82,89,32,37,100,0,0,37,115,32,84,65,66,76,69,32,37,115,0,0,0,0,0,37,115,32,65,83,32,37,115,0,0,0,0,0,0,0,0,37,115,32,85,83,73,78,71,32,80,82,73,77,65,82,89,32,75,69,89,37,46,48,115,37,115,0,0,0,0,0,0,37,115,37,46,48,115,37,115,0,0,0,0,0,0,0,0,37,115,32,85,83,73,78,71,32,65,85,84,79,77,65,84,73,67,32,67,79,86,69,82,73,78,71,32,73,78,68,69,88,37,46,48,115,37,115,0,37,115,32,85,83,73,78,71,32,67,79,86,69,82,73, -78,71,32,73,78,68,69,88,32,37,115,37,115,0,0,0,0,37,115,32,85,83,73,78,71,32,73,78,68,69,88,32,37,115,37,115,0,0,0,0,0,37,115,32,85,83,73,78,71,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,0,0,0,0,37,115,32,40,114,111,119,105,100,61,63,41,0,0,0,0,37,115,32,40,114,111,119,105,100,62,63,32,65,78,68,32,114,111,119,105,100,60,63,41,0,0,0,0,0,0,0,0,37,115,32,40,114,111,119,105,100,62,63,41,0,0,0,0,37,115,32,40,114,111,119,105,100,60,63,41,0,0,0,0,37,115,32,86,73,82,84,85,65,76,32,84,65, -66,76,69,32,73,78,68,69,88,32,37,100,58,37,115,0,0,0,0,32,40,0,0,0,0,0,0,61,0,0,0,0,0,0,0,32,65,78,68,32,0,0,0,65,78,89,40,0,0,0,0,41,0,0,0,0,0,0,0,62,0,0,0,0,0,0,0,60,0,0,0,0,0,0,0,97,117,116,111,109,97,116,105,99,32,105,110,100,101,120,32,111,110,32,37,115,40,37,115,41,0,0,0,0,0,0,0,97,117,116,111,45,105,110,100,101,120,0,0,0,0,0,0,110,111,32,113,117,101,114,121,32,115,111,108,117,116,105,111,110,0,0,0,0,0,0,0,10,10,9,9,8,8,7,7,7,6,6,6,5,5,5,4,4,4,4,3,3,3,3,3,3,2,2,2,2,2,2,2,37,115,46,120,66,101, -115,116,73,110,100,101,120,40,41,32,109,97,108,102,117,110,99,116,105,111,110,0,0,0,0,0,116,97,98,108,101,32,37,115,58,32,120,66,101,115,116,73,110,100,101,120,32,114,101,116,117,114,110,101,100,32,97,110,32,105,110,118,97,108,105,100,32,112,108,97,110,0,0,0,83,81,0,0,0,0,0,0,45,45,32,84,82,73,71,71,69,82,32,37,115,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,2,0,1,0,1,1,4,36,1,4,5,16,0,2,2,2,2,0,2,2,0,0,32,0,0,4,5,4,0,0,1,1,5,5,0,0,0,2,2,16,0,0,0,0,0,0,0,17,17,17,17,8,17,17,17,17,2,2,0,76,76,0,0,0,5,5,21,21,21, -21,21,21,0,76,76,76,76,76,76,76,76,76,76,0,36,2,0,0,2,0,1,1,1,1,8,8,0,2,1,1,1,1,2,0,0,2,2,0,0,0,0,0,0,12,69,21,1,2,0,1,8,2,5,5,5,0,1,0,0,0,0,4,4,4,4,4,0,0,0,1,0,2,2,1,0,0,0,0,16,16,2,16,0,0,0,0,0,1,2,3,4,6,8,8,0,0,0,0,0,0,0,0,176,66,0,0,3,0,0,0,168,66,0,0,3,0,0,0,111,105,100,0,0,0,0,0,70,79,82,69,73,71,78,32,75,69,89,32,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,0,0,0,37,115,46,114,111,119,105,100,0,0,0,0,0,0,0,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98, -101,32,109,111,100,105,102,105,101,100,0,0,0,0,99,97,110,110,111,116,32,109,111,100,105,102,121,32,37,115,32,98,101,99,97,117,115,101,32,105,116,32,105,115,32,97,32,118,105,101,119,0,0,0,110,111,32,115,117,99,104,32,99,111,108,117,109,110,58,32,37,115,0,0,0,0,0,0,114,111,119,115,32,117,112,100,97,116,101,100,0,0,0,0,95,114,111,119,105,100,95,0,116,111,111,32,109,97,110,121,32,99,111,108,117,109,110,115,32,105,110,32,37,115,0,0,114,111,119,115,32,100,101,108,101,116,101,100,0,0,0,0,110,97,116,117, -114,97,108,101,102,116,111,117,116,101,114,105,103,104,116,102,117,108,108,105,110,110,101,114,99,114,111,115,115,0,0,0,0,0,0,0,0,7,4,6,4,40,10,5,32,14,5,48,19,4,56,23,5,1,28,5,3,0,0,0,117,110,107,110,111,119,110,32,111,114,32,117,110,115,117,112,112,111,114,116,101,100,32,106,111,105,110,32,116,121,112,101,58,32,37,84,32,37,84,37,115,37,84,0,0,0,0,0,82,73,71,72,84,32,97,110,100,32,70,85,76,76,32,79,85,84,69,82,32,74,79,73,78,115,32,97,114,101,32,110,111,116,32,99,117,114,114,101,110,116,108,121, -32,115,117,112,112,111,114,116,101,100,0,0,97,32,74,79,73,78,32,99,108,97,117,115,101,32,105,115,32,114,101,113,117,105,114,101,100,32,98,101,102,111,114,101,32,37,115,0,0,0,0,0,79,78,0,0,0,0,0,0,85,83,73,78,71,0,0,0,68,73,83,84,73,78,67,84,0,0,0,0,0,0,0,0,71,82,79,85,80,32,66,89,0,0,0,0,0,0,0,0,82,73,71,72,84,32,80,65,82,84,32,79,70,32,79,82,68,69,82,32,66,89,0,0,79,82,68,69,82,32,66,89,0,0,0,0,0,0,0,0,99,111,108,117,109,110,37,100,0,0,0,0,0,0,0,0,83,67,65,78,32,84,65,66,76,69,32,37,115,37,115,37, -115,0,0,0,0,0,0,0,32,85,83,73,78,71,32,67,79,86,69,82,73,78,71,32,73,78,68,69,88,32,0,0,68,73,83,84,73,78,67,84,32,97,103,103,114,101,103,97,116,101,115,32,109,117,115,116,32,104,97,118,101,32,101,120,97,99,116,108,121,32,111,110,101,32,97,114,103,117,109,101,110,116,0,0,0,0,0,0,85,83,69,32,84,69,77,80,32,66,45,84,82,69,69,32,70,79,82,32,37,115,0,0,79,82,68,69,82,32,66,89,32,99,108,97,117,115,101,32,115,104,111,117,108,100,32,99,111,109,101,32,97,102,116,101,114,32,37,115,32,110,111,116,32,98,101, -102,111,114,101,0,76,73,77,73,84,32,99,108,97,117,115,101,32,115,104,111,117,108,100,32,99,111,109,101,32,97,102,116,101,114,32,37,115,32,110,111,116,32,98,101,102,111,114,101,0,0,0,0,97,108,108,32,86,65,76,85,69,83,32,109,117,115,116,32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,116,101,114,109,115,0,0,0,83,69,76,69,67,84,115,32,116,111,32,116,104,101,32,108,101,102,116,32,97,110,100,32,114,105,103,104,116,32,111,102,32,37,115,32,100,111,32,110,111,116, -32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,117,108,116,32,99,111,108,117,109,110,115,0,0,0,0,0,0,0,67,79,77,80,79,85,78,68,32,83,85,66,81,85,69,82,73,69,83,32,37,100,32,65,78,68,32,37,100,32,37,115,40,37,115,41,0,0,0,0,85,83,73,78,71,32,84,69,77,80,32,66,45,84,82,69,69,32,0,0,0,0,0,0,85,78,73,79,78,32,65,76,76,0,0,0,0,0,0,0,73,78,84,69,82,83,69,67,84,0,0,0,0,0,0,0,69,88,67,69,80,84,0,0,85,78,73,79,78,0,0,0,111,110,108,121,32,97,32,115,105, -110,103,108,101,32,114,101,115,117,108,116,32,97,108,108,111,119,101,100,32,102,111,114,32,97,32,83,69,76,69,67,84,32,116,104,97,116,32,105,115,32,112,97,114,116,32,111,102,32,97,110,32,101,120,112,114,101,115,115,105,111,110,0,112,97,114,97,109,101,116,101,114,115,32,97,114,101,32,110,111,116,32,97,108,108,111,119,101,100,32,105,110,32,118,105,101,119,115,0,0,0,0,0,118,105,101,119,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,0,0,0,0,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116, -32,98,101,32,100,114,111,112,112,101,100,0,0,0,0,0,117,115,101,32,68,82,79,80,32,84,65,66,76,69,32,116,111,32,100,101,108,101,116,101,32,116,97,98,108,101,32,37,115,0,0,0,0,0,0,0,117,115,101,32,68,82,79,80,32,86,73,69,87,32,116,111,32,100,101,108,101,116,101,32,118,105,101,119,32,37,115,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,32,87,72,69,82,69,32,110,97,109,101,61,37,81,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,37,115,32, -87,72,69,82,69,32,116,98,108,95,110,97,109,101,61,37,81,32,97,110,100,32,116,121,112,101,33,61,39,116,114,105,103,103,101,114,39,0,102,111,114,101,105,103,110,32,107,101,121,32,111,110,32,37,115,32,115,104,111,117,108,100,32,114,101,102,101,114,101,110,99,101,32,111,110,108,121,32,111,110,101,32,99,111,108,117,109,110,32,111,102,32,116,97,98,108,101,32,37,84,0,0,110,117,109,98,101,114,32,111,102,32,99,111,108,117,109,110,115,32,105,110,32,102,111,114,101,105,103,110,32,107,101,121,32,100,111,101, -115,32,110,111,116,32,109,97,116,99,104,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,99,111,108,117,109,110,115,32,105,110,32,116,104,101,32,114,101,102,101,114,101,110,99,101,100,32,116,97,98,108,101,0,0,0,117,110,107,110,111,119,110,32,99,111,108,117,109,110,32,34,37,115,34,32,105,110,32,102,111,114,101,105,103,110,32,107,101,121,32,100,101,102,105,110,105,116,105,111,110,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,97,32,84,69,77,80,32,105,110,100,101,120,32,111,110,32,110, -111,110,45,84,69,77,80,32,116,97,98,108,101,32,34,37,115,34,0,0,0,0,0,0,0,97,108,116,101,114,116,97,98,95,0,0,0,0,0,0,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,105,110,100,101,120,101,100,0,0,0,0,0,118,105,101,119,115,32,109,97,121,32,110,111,116,32,98,101,32,105,110,100,101,120,101,100,0,0,0,0,0,0,0,0,118,105,114,116,117,97,108,32,116,97,98,108,101,115,32,109,97,121,32,110,111,116,32,98,101,32,105,110,100,101,120,101,100,0,0,0,0,0,0,0,116,104,101,114,101,32,105,115, -32,97,108,114,101,97,100,121,32,97,32,116,97,98,108,101,32,110,97,109,101,100,32,37,115,0,0,0,0,0,0,0,105,110,100,101,120,32,37,115,32,97,108,114,101,97,100,121,32,101,120,105,115,116,115,0,115,113,108,105,116,101,95,97,117,116,111,105,110,100,101,120,95,37,115,95,37,100,0,0,116,97,98,108,101,32,37,115,32,104,97,115,32,110,111,32,99,111,108,117,109,110,32,110,97,109,101,100,32,37,115,0,99,111,110,102,108,105,99,116,105,110,103,32,79,78,32,67,79,78,70,76,73,67,84,32,99,108,97,117,115,101,115,32,115, -112,101,99,105,102,105,101,100,0,0,0,0,0,0,0,67,82,69,65,84,69,37,115,32,73,78,68,69,88,32,37,46,42,115,0,0,0,0,0,32,85,78,73,81,85,69,0,73,78,83,69,82,84,32,73,78,84,79,32,37,81,46,37,115,32,86,65,76,85,69,83,40,39,105,110,100,101,120,39,44,37,81,44,37,81,44,35,37,100,44,37,81,41,59,0,110,97,109,101,61,39,37,113,39,32,65,78,68,32,116,121,112,101,61,39,105,110,100,101,120,39,0,0,0,0,0,0,116,97,98,108,101,32,34,37,115,34,32,104,97,115,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,112,114, -105,109,97,114,121,32,107,101,121,0,0,0,0,0,0,0,0,65,85,84,79,73,78,67,82,69,77,69,78,84,32,105,115,32,111,110,108,121,32,97,108,108,111,119,101,100,32,111,110,32,97,110,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,0,100,101,102,97,117,108,116,32,118,97,108,117,101,32,111,102,32,99,111,108,117,109,110,32,91,37,115,93,32,105,115,32,110,111,116,32,99,111,110,115,116,97,110,116,0,0,0,0,116,111,111,32,109,97,110,121,32,99,111,108,117,109,110,115,32,111,110,32,37,115,0,0,100,117,112,108, -105,99,97,116,101,32,99,111,108,117,109,110,32,110,97,109,101,58,32,37,115,0,0,0,0,0,0,0,65,85,84,79,73,78,67,82,69,77,69,78,84,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,87,73,84,72,79,85,84,32,82,79,87,73,68,32,116,97,98,108,101,115,0,0,0,0,0,0,0,80,82,73,77,65,82,89,32,75,69,89,32,109,105,115,115,105,110,103,32,111,110,32,116,97,98,108,101,32,37,115,0,84,65,66,76,69,0,0,0,86,73,69,87,0,0,0,0,67,82,69,65,84,69,32,37,115,32,37,46,42,115,0,0,85,80,68,65,84,69,32,37,81,46,37,115,32, -83,69,84,32,116,121,112,101,61,39,37,115,39,44,32,110,97,109,101,61,37,81,44,32,116,98,108,95,110,97,109,101,61,37,81,44,32,114,111,111,116,112,97,103,101,61,35,37,100,44,32,115,113,108,61,37,81,32,87,72,69,82,69,32,114,111,119,105,100,61,35,37,100,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,40,110,97,109,101,44,115,101,113,41,0,0,0,0,0,0,0,116,98,108,95,110,97,109,101,61,39,37,113,39,32,65,78,68,32,116,121,112,101,33,61,39,116,114, -105,103,103,101,114,39,0,0,0,0,0,0,0,10,32,32,0,0,0,0,0,44,10,32,32,0,0,0,0,10,41,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,0,0,0,200,104,0,0,192,5,0,0,208,104,0,0,216,104,0,0,224,104,0,0,0,0,0,0,32,84,69,88,84,0,0,0,32,78,85,77,0,0,0,0,32,73,78,84,0,0,0,0,32,82,69,65,76,0,0,0,116,101,109,112,111,114,97,114,121,32,116,97,98,108,101,32,110,97,109,101,32,109,117,115,116,32,98,101,32,117,110,113,117,97,108,105,102,105,101,100,0,0,0,0,0,0,0,0,116,97,98,108,101,32,37,84,32,97,108,114,101,97,100, -121,32,101,120,105,115,116,115,0,116,104,101,114,101,32,105,115,32,97,108,114,101,97,100,121,32,97,110,32,105,110,100,101,120,32,110,97,109,101,100,32,37,115,0,0,0,0,0,0,104,105,0,0,112,105,0,0,120,105,0,0,0,0,0,0,66,69,71,73,78,0,0,0,82,69,76,69,65,83,69,0,82,79,76,76,66,65,67,75,0,0,0,0,0,0,0,0,67,79,77,77,73,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,97,114,115,101,114,32,115,116,97,99,107,32,111,118,101,114,102,108,111,119,0,0,0,224,3,33,4,75,5,132,4,180,4,180,4,1,0,6,1,237,255,135,0,135,0,8, -3,180,4,180,4,180,4,180,4,69,0,69,0,53,0,208,0,27,1,243,2,58,0,213,2,136,2,59,2,238,1,161,1,84,1,7,1,212,0,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,110,3,59,3,161,3,212,3,212,3,46,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,234,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,185,255,209,255,209,255,209,255,209, -255,209,255,0,0,29,0,244,255,27,1,27,1,139,0,91,0,136,1,136,1,126,3,160,2,214,2,103,5,170,255,170,255,170,255,88,0,62,1,62,1,99,0,125,1,236,255,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,112,2,108,3,214,2,160,2,60,5,60,5,60,5,60,5,60,5,60,5,170,255,170,255,170,255,49,1,136,0,136,0,142,0,167,0,226,0,154,0,137,0,152,0,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,80,1,80,1,80,1,27,1,27,1,96,1,27, -1,27,1,27,1,27,1,27,1,228,0,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,245,1,57,2,84,2,84,2,84,2,251,1,241,1,185,1,135,1,97,1,156,0,156,0,89,3,97,1,89,3,223,2,45,3,127,2,203,2,156,0,76,1,203,2,203,2,240,1,163,1,134,2,77,5,160,4,160,4,55,5,55,5,160,4,61,5,236,4,120,4,66,5,66,5,66,5,66,5,160,4,26,5,120,4,61,5,236,4,236,4,120,4,160,4,26,5,182,4,4,5,160,4,160,4,26,5,160,4,26,5,160,4,26,5,238,4,183,4,183,4,183,4,250,4,238,4,183,4,193,4,183,4,250,4,183,4,183,4,161,4,176,4,161,4,176,4,161,4,176,4, -160,4,160,4,137,4,238,4,178,4,178,4,238,4,130,4,131,4,123,4,128,4,120,4,217,4,215,4,226,4,226,4,230,4,230,4,230,4,230,4,170,255,170,255,170,255,170,255,170,255,170,255,44,4,48,1,14,2,249,0,152,1,173,255,178,1,44,3,27,0,43,3,39,3,34,3,239,2,77,2,139,2,163,0,131,0,162,2,110,1,194,1,43,1,148,0,23,0,102,0,229,0,235,255,221,4,220,4,198,4,75,4,204,4,148,4,199,4,191,4,189,4,91,4,82,4,99,4,86,4,185,4,81,4,188,4,202,4,74,4,65,4,116,4,115,4,80,4,165,4,154,4,70,4,187,4,181,4,163,4,77,4,47,4,129,4,151,4,122, -4,114,4,127,4,67,4,140,4,141,4,139,4,45,4,48,4,124,4,88,4,110,4,103,4,105,4,102,4,68,4,90,4,94,4,64,4,66,4,69,4,63,4,60,4,219,3,55,4,53,4,50,4,41,4,156,3,253,3,246,3,236,3,238,3,51,3,227,2,128,3,87,3,36,3,227,2,228,2,224,2,178,2,142,2,153,2,106,2,70,2,56,2,16,2,42,2,123,1,20,2,223,1,199,1,123,1,176,1,115,1,85,1,28,0,82,1,116,0,245,255,199,255,171,255,7,0,248,255,3,0,0,0,0,0,135,2,196,3,196,3,196,3,110,3,110,3,201,3,196,3,6,3,34,3,34,3,170,3,201,3,201,3,201,3,108,3,201,3,201,3,201,3,196,3,201,3,10, -3,40,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,169,3,171,3,48,3,47,3,150,3,21,3,45,3,38,3,42,3,111,3,104,3,105,3,103,3,107,3,112,3,201,3,41,3,73,3,88,3,72,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,82,3,87,3,94,3,86,3,83,3,75,3,74,3,76,3,77,3,201,3,201,3,161,2,227,2,201,3,201, -3,78,3,201,3,173,2,79,3,91,3,90,3,89,3,168,2,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,135,2,196,3,201,3,201,3,196,3,196,3,196,3,196,3,196,3,196,3,188,3,10,3,0,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,176,3,174,3,201,3,123,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201, -3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,141,2,201,3,143,3,6,3,6,3,6,3,8,3,242,2,254,2,143,2,44,3,23,3,23,3,155,3,44,3,155,3,198,2,221,2,195,2,34,3,23,3,106,3,34,3,34,3,7,3,254,2,201,3,181,3,14,3,14,3,173,3,173,3,14,3,53,3,231,2,44,3,238,2,238,2,238,2,238,2,14,3,158,2,44,3,53,3,231,2,231,2,44,3,14,3,158,2,149,3,147,3,14,3,14,3,158,2,14,3,158,2,14,3,158,2,116,3,229,2,229,2,229,2,213,2,116,3,229,2,198,2,229,2,213,2,229,2,229,2,27,3,22,3,27,3,22,3,27,3,22,3,14,3,14,3,201,3,116,3, -120,3,120,3,116,3,39,3,28,3,37,3,35,3,44,3,164,2,216,2,151,2,151,2,140,2,140,2,140,2,140,2,193,3,193,3,188,3,200,2,200,2,183,2,201,3,201,3,201,3,201,3,201,3,201,3,175,2,201,3,125,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,60,3,201,3,136,2,183,3,201,3,201,3,180,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,153,3,201,3,201,3,201,3,201,3,201,3,201,3,146,3,145,3,201,3,201,3,201,3,201, -3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,245,2,201,3,201,3,201,3,249,2,201,3,201,3,201,3,201,3,201,3,201,3,36,3,201,3,29,3,201,3,109,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,198,3,201,3,201,3,201,3,197,3,201,3,201,3,201,3,201,3,201,3,62,3,201,3,61,3,65,3,201,3,149,2,201,3,132,2,137,2,192,3,195,3,194,3,191,3,190,3,189,3,184,3,182,3,179,3,178,3,177,3,175,3,172,3,168,3,129,3,127,3,134,3,133,3,132,3,131,3,130,3, -128,3,126,3,124,3,50,3,49,3,46,3,43,3,241,2,167,3,122,3,240,2,237,2,236,2,157,2,185,3,152,3,161,3,160,3,159,3,54,3,158,3,157,3,156,3,154,3,151,3,138,3,52,3,51,3,232,2,114,3,113,3,160,2,142,3,141,3,140,3,144,3,148,3,139,3,16,3,239,2,159,2,156,2,163,2,167,2,219,2,220,2,228,2,226,2,225,2,224,2,223,2,222,2,218,2,169,2,174,2,212,2,197,2,196,2,205,2,204,2,210,2,209,2,208,2,207,2,206,2,203,2,202,2,201,2,194,2,193,2,199,2,192,2,215,2,214,2,211,2,191,2,235,2,234,2,233,2,230,2,190,2,189,2,188,2,65,3,187,2, -186,2,70,3,69,3,98,3,58,3,243,2,247,2,246,2,250,2,251,2,3,3,2,3,1,3,12,3,13,3,25,3,24,3,56,3,55,3,26,3,11,3,5,3,4,3,20,3,19,3,18,3,17,3,9,3,255,2,31,3,30,3,100,3,15,3,99,3,97,3,166,3,165,3,164,3,163,3,162,3,102,3,199,3,200,3,119,3,121,3,118,3,33,3,32,3,117,3,101,3,71,3,68,3,178,2,179,2,137,3,136,3,135,3,181,2,180,2,177,2,176,2,95,3,92,3,84,3,96,3,93,3,85,3,81,3,80,3,66,3,64,3,63,3,59,3,67,3,248,2,244,2,57,3,253,2,252,2,185,2,184,2,182,2,166,2,165,2,162,2,155,2,153,2,152,2,154,2,150,2,148,2,147,2, -146,2,145,2,144,2,172,2,171,2,170,2,142,2,139,2,138,2,134,2,133,2,131,2,0,0,0,0,19,22,22,23,1,24,26,15,27,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,108,109,110,27,28,23,50,51,80,81,82,83,122,85,86,87,88,89,90,91,92,93,94,95,22,70,23,71,72,73,74,75,76,77,78,79,80,81,82,83,122,85,86,87,88,89,90,91,92,93,94,95,19,97,91,92,93,94,95,26,85,86,87,88,89,90,91,92,93,94,95,27,28,97,98,99,122,211,102,103,104,79,19,50,51,19,122,59,55,113,224,225,226,89,90,91,92,93,94,95,23,27,28,26,71,72,73,74,75,76,77, -78,79,80,81,82,83,51,85,86,87,88,89,90,91,92,93,94,95,19,132,133,58,89,90,21,108,109,110,27,28,97,98,33,100,7,8,119,120,22,19,107,42,109,27,28,27,28,95,28,50,51,99,100,101,102,103,104,105,27,28,97,98,107,152,112,132,133,112,65,69,71,72,73,74,75,76,77,78,79,80,81,82,83,11,85,86,87,88,89,90,91,92,93,94,95,19,101,97,97,98,24,101,122,157,12,99,103,112,102,103,104,152,22,97,98,97,98,27,28,113,27,29,91,164,165,124,50,51,97,98,219,59,132,133,134,22,23,45,66,47,212,213,124,140,132,133,19,71,72,73,74,75,76, -77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,164,165,27,28,230,50,51,233,108,109,110,70,16,59,23,97,98,26,97,22,66,185,12,187,27,28,71,72,73,74,75,76,77,78,79,80,81,82,83,29,85,86,87,88,89,90,91,92,93,94,95,19,22,148,149,45,23,47,62,154,64,156,108,109,110,37,69,23,163,59,26,26,97,98,144,145,146,147,152,200,52,23,50,51,26,22,89,90,60,210,7,8,9,138,97,22,23,26,101,26,174,175,197,71,72,73,74,75,76,77,78,79,80,81,82,83,16,85,86,87,88,89,90,91,92,93,94,95,19,132,133,134,23,152,208,209,140, -152,152,111,195,196,98,70,163,160,152,23,22,164,165,246,207,27,152,174,175,171,172,50,51,137,62,139,64,171,172,222,124,27,138,24,163,89,90,130,174,175,197,163,71,72,73,74,75,76,77,78,79,80,81,82,83,22,85,86,87,88,89,90,91,92,93,94,95,19,197,181,182,23,208,209,152,197,26,189,132,133,232,224,225,226,152,97,91,26,232,116,212,213,152,222,121,152,174,175,50,51,243,97,22,23,22,234,174,175,177,23,239,116,163,177,174,175,121,174,175,71,72,73,74,75,76,77,78,79,80,81,82,83,24,85,86,87,88,89,90,91,92,93,94, -95,19,23,197,11,23,227,70,208,220,152,31,224,225,226,35,98,224,225,226,108,109,110,115,152,117,118,27,222,49,123,24,50,51,27,0,1,2,224,225,226,166,124,168,169,239,174,175,170,171,172,22,194,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,19,22,208,24,23,195,196,170,171,172,174,175,152,26,152,152,152,207,152,97,152,23,152,51,244,152,97,152,247,248,23,50,51,26,174,175,174,175,174,175,174,175,174,175,174,175,23,174,175,174,175,188,71,72,73,74,75,76,77,78,79,80,81,82,83,152, -85,86,87,88,89,90,91,92,93,94,95,19,152,107,152,33,24,152,100,101,27,174,175,152,42,152,23,152,26,152,23,152,26,152,174,175,174,175,152,174,175,23,50,51,26,174,175,174,175,174,175,174,175,174,175,174,175,163,119,120,174,175,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,66,152,97,197,23,50,51,26,53,23,174,175,26,23,23,23,26,26,26,36,106,146,147,174,175,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,152,196,119,120,19,50,51,168,169,26, -174,175,207,28,152,249,250,152,163,163,163,163,174,175,163,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,152,197,197,197,197,50,51,197,194,36,174,175,191,192,152,191,192,163,152,66,124,152,174,175,152,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,197,152,100,188,152,50,51,152,152,188,174,175,252,152,94,95,152,152,152,1,2,152,152,174,175,19,152,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,152,188,188,22,194, -50,51,240,173,194,174,175,252,194,152,36,181,28,152,23,219,122,174,175,219,221,152,152,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,19,20,152,22,23,194,152,240,27,28,174,175,240,19,20,26,22,194,194,38,22,27,28,152,23,22,152,116,174,175,152,23,38,152,23,152,221,152,57,152,23,163,50,51,194,174,175,66,174,175,69,57,174,175,40,174,175,174,175,174,175,174,175,69,22,53,74,75,30,53,89,90,22,22,152,197,23,96,97,98,22,152,101,89,90,91,208,209,152,53,96,97,98,101,22,101,174,175,152, -19,20,105,22,174,175,112,19,27,28,20,174,175,24,132,133,134,135,136,38,44,174,175,107,61,54,26,132,133,134,135,136,54,107,22,5,140,1,57,36,111,122,28,79,79,131,123,66,19,20,69,22,1,16,20,125,27,28,123,111,120,23,131,23,16,68,142,38,15,22,89,90,3,167,4,248,251,96,97,98,180,180,101,251,151,6,57,151,13,151,26,25,151,161,202,153,162,153,69,130,128,203,19,20,127,22,126,204,129,22,27,28,205,132,133,134,135,136,89,90,231,38,95,137,179,96,97,98,206,179,101,122,107,159,159,125,231,216,228,107,57,184,217,216, -176,217,176,48,106,18,184,158,69,159,158,46,71,237,176,176,176,132,133,134,135,136,217,176,137,216,178,158,89,90,179,176,159,179,159,96,97,98,159,159,101,5,158,202,22,18,10,11,12,13,14,190,238,17,190,158,193,41,159,202,193,159,202,245,193,193,223,190,32,159,34,132,133,134,135,136,159,39,155,43,150,223,177,201,178,177,186,66,199,177,152,253,56,215,152,182,152,202,152,63,152,152,66,67,242,229,152,174,152,152,152,152,152,152,152,199,242,202,152,198,152,152,152,183,192,152,215,152,183,215,183,152,241, -214,152,211,152,152,211,211,152,152,241,152,152,152,152,152,152,152,114,152,152,235,152,152,152,174,187,95,174,253,253,253,253,236,253,253,253,253,253,253,253,253,253,253,253,141,0,0,0,0,0,0,0,0,0,27,27,27,27,0,27],"i8",Ga,u.Ra+20480); -F([27,27,0,27,27,27,27,0,0,0,27,0,0,27,0,0,0,27,0,0,0,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,0,0,100,97,116,97,98,97,115,101,32,115,99,104,101,109,97,32,105,115,32,108,111,99,107,101,100,58,32,37,115,0,0,0,115,116,97,116,101,109,101,110,116,32,116,111,111,32,108,111,110,103,0,0,0,0,0,0,176,120,0,0,184,120,0,0,192,120,0,0,200,120,0,0,208,120,0,0,216,120,0,0,224,120,0,0,232,120,0,0,240,120,0,0,0,121,0,0,72,83,0,0,8, -121,0,0,97,100,100,114,0,0,0,0,111,112,99,111,100,101,0,0,112,49,0,0,0,0,0,0,112,50,0,0,0,0,0,0,112,51,0,0,0,0,0,0,112,52,0,0,0,0,0,0,112,53,0,0,0,0,0,0,99,111,109,109,101,110,116,0,115,101,108,101,99,116,105,100,0,0,0,0,0,0,0,0,111,114,100,101,114,0,0,0,100,101,116,97,105,108,0,0,117,110,111,112,101,110,101,100,0,0,0,0,0,0,0,0,110,111,32,115,117,99,104,32,118,105,101,119,0,0,0,0,110,111,32,115,117,99,104,32,116,97,98,108,101,0,0,0,98,105,110,100,32,111,110,32,97,32,98,117,115,121,32,112,114,101, -112,97,114,101,100,32,115,116,97,116,101,109,101,110,116,58,32,91,37,115,93,0,0,0,0,0,192,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,160,121,0,0,176,121,0,0,184,121,0,0,192,121,0,0,78,79,84,32,78,85,76,76,0,0,0,0,0,0,0,0,85,78,73,81,85,69,0,0,67,72,69,67,75,0,0,0,70,79,82,69,73,71,78,32,75,69,89,0,0,0,0,0,97,98,111,114,116,32,97,116,32,37,100,32,105,110,32,91,37,115,93,58,32,37,115,0,37,115,32,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,58,32,37,115, -0,0,0,0,0,0,0,0,37,115,32,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,0,0,0,0,0,0,0,0,1,2,0,2,2,0,0,0,0,0,0,0,0,1,2,1,1,1,2,1,2,0,0,0,0,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,115,97,118,101,112,111,105,110,116,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114,101,115,115,0,0,0,0,0,0,110,111,32,115,117,99,104,32,115,97,118,101,112,111,105,110,116,58,32,37,115,0,0,0,99,97,110,110,111,116,32,114,101,108,101,97,115,101,32,115, -97,118,101,112,111,105,110,116,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114,101,115,115,0,0,0,99,97,110,110,111,116,32,99,111,109,109,105,116,32,116,114,97,110,115,97,99,116,105,111,110,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114,101,115,115,0,0,99,97,110,110,111,116,32,115,116,97,114,116,32,97,32,116,114,97,110,115,97,99,116,105,111,110,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116, -105,111,110,0,99,97,110,110,111,116,32,114,111,108,108,98,97,99,107,32,45,32,110,111,32,116,114,97,110,115,97,99,116,105,111,110,32,105,115,32,97,99,116,105,118,101,0,0,0,0,0,0,99,97,110,110,111,116,32,99,111,109,109,105,116,32,45,32,110,111,32,116,114,97,110,115,97,99,116,105,111,110,32,105,115,32,97,99,116,105,118,101,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,110,97,109,101,44,32,114,111,111,116,112,97,103,101,44,32,115,113,108,32,70,82,79,77,32,39,37,113,39,46,37,115,32,87,72,69,82,69,32,37,115,32, -79,82,68,69,82,32,66,89,32,114,111,119,105,100,0,116,111,111,32,109,97,110,121,32,108,101,118,101,108,115,32,111,102,32,116,114,105,103,103,101,114,32,114,101,99,117,114,115,105,111,110,0,0,0,0,99,97,110,110,111,116,32,99,104,97,110,103,101,32,37,115,32,119,97,108,32,109,111,100,101,32,102,114,111,109,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,105,110,116,111,0,0,0,0,111,117,116,32,111,102,0,0,100,97,116,97,98,97,115,101,32,116,97,98,108,101,32,105,115, -32,108,111,99,107,101,100,58,32,37,115,0,0,0,0,115,116,97,116,101,109,101,110,116,32,97,98,111,114,116,115,32,97,116,32,37,100,58,32,91,37,115,93,32,37,115,0,45,45,32,0,0,0,0,0,39,37,46,42,113,39,0,0,122,101,114,111,98,108,111,98,40,37,100,41,0,0,0,0,120,39,0,0,0,0,0,0,37,48,50,120,0,0,0,0,39,0,0,0,0,0,0,0,99,97,110,110,111,116,32,86,65,67,85,85,77,32,102,114,111,109,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,99,97,110,110,111,116,32,86,65,67,85,85,77,32,45,32, -83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114,101,115,115,0,0,0,0,0,0,65,84,84,65,67,72,32,39,58,109,101,109,111,114,121,58,39,32,65,83,32,118,97,99,117,117,109,95,100,98,59,0,65,84,84,65,67,72,32,39,39,32,65,83,32,118,97,99,117,117,109,95,100,98,59,0,80,82,65,71,77,65,32,118,97,99,117,117,109,95,100,98,46,115,121,110,99,104,114,111,110,111,117,115,61,79,70,70,0,0,0,0,0,0,0,0,66,69,71,73,78,59,0,0,83,69,76,69,67,84,32,39,67,82,69,65,84,69,32,84,65,66,76,69,32, -118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,49,52,41,32,32,32,70,82,79,77,32,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,116,121,112,101,61,39,116,97,98,108,101,39,32,65,78,68,32,110,97,109,101,33,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,32,32,32,65,78,68,32,99,111,97,108,101,115,99,101,40,114,111,111,116,112,97,103,101,44,49,41,62,48,0,0,0,0,0,83,69,76,69,67,84,32,39,67,82,69,65,84,69,32,73,78,68, -69,88,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,49,52,41,32,32,70,82,79,77,32,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,115,113,108,32,76,73,75,69,32,39,67,82,69,65,84,69,32,73,78,68,69,88,32,37,39,32,0,83,69,76,69,67,84,32,39,67,82,69,65,84,69,32,85,78,73,81,85,69,32,73,78,68,69,88,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,50,49,41,32,32,32,70,82,79,77,32,115,113, -108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,115,113,108,32,76,73,75,69,32,39,67,82,69,65,84,69,32,85,78,73,81,85,69,32,73,78,68,69,88,32,37,39,0,0,0,83,69,76,69,67,84,32,39,73,78,83,69,82,84,32,73,78,84,79,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,32,83,69,76,69,67,84,32,42,32,70,82,79,77,32,109,97,105,110,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,59,39,70,82,79,77,32,109, -97,105,110,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,116,121,112,101,32,61,32,39,116,97,98,108,101,39,32,65,78,68,32,110,97,109,101,33,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,32,32,32,65,78,68,32,99,111,97,108,101,115,99,101,40,114,111,111,116,112,97,103,101,44,49,41,62,48,0,0,0,0,0,83,69,76,69,67,84,32,39,68,69,76,69,84,69,32,70,82,79,77,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124, -124,32,39,59,39,32,70,82,79,77,32,118,97,99,117,117,109,95,100,98,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,110,97,109,101,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,32,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,39,73,78,83,69,82,84,32,73,78,84,79,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,32,83,69,76,69,67,84,32,42,32,70,82,79,77,32,109,97,105,110,46,39,32,124,124,32,113,117,111, -116,101,40,110,97,109,101,41,32,124,124,32,39,59,39,32,70,82,79,77,32,118,97,99,117,117,109,95,100,98,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,110,97,109,101,61,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,59,0,0,0,0,0,0,73,78,83,69,82,84,32,73,78,84,79,32,118,97,99,117,117,109,95,100,98,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,32,32,83,69,76,69,67,84,32,116,121,112,101,44,32,110,97,109,101,44,32,116,98,108,95,110,97,109,101,44, -32,114,111,111,116,112,97,103,101,44,32,115,113,108,32,32,32,32,70,82,79,77,32,109,97,105,110,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,32,32,87,72,69,82,69,32,116,121,112,101,61,39,118,105,101,119,39,32,79,82,32,116,121,112,101,61,39,116,114,105,103,103,101,114,39,32,32,32,32,32,32,79,82,32,40,116,121,112,101,61,39,116,97,98,108,101,39,32,65,78,68,32,114,111,111,116,112,97,103,101,61,48,41,0,1,1,3,0,5,0,6,0,8,0,0,0,0,0,0,0,77,97,105,110,32,102,114,101,101,108,105,115,116,58,32,0,76, -105,115,116,32,111,102,32,116,114,101,101,32,114,111,111,116,115,58,32,0,0,0,0,80,97,103,101,32,37,100,32,105,115,32,110,101,118,101,114,32,117,115,101,100,0,0,0,80,111,105,110,116,101,114,32,109,97,112,32,112,97,103,101,32,37,100,32,105,115,32,114,101,102,101,114,101,110,99,101,100,0,0,0,0,0,0,0,79,117,116,115,116,97,110,100,105,110,103,32,112,97,103,101,32,99,111,117,110,116,32,103,111,101,115,32,102,114,111,109,32,37,100,32,116,111,32,37,100,32,100,117,114,105,110,103,32,116,104,105,115,32,97, -110,97,108,121,115,105,115,0,0,10,0,0,0,0,0,0,0,80,97,103,101,32,37,100,58,32,0,0,0,0,0,0,0,117,110,97,98,108,101,32,116,111,32,103,101,116,32,116,104,101,32,112,97,103,101,46,32,101,114,114,111,114,32,99,111,100,101,61,37,100,0,0,0,98,116,114,101,101,73,110,105,116,80,97,103,101,40,41,32,114,101,116,117,114,110,115,32,101,114,114,111,114,32,99,111,100,101,32,37,100,0,0,0,79,110,32,116,114,101,101,32,112,97,103,101,32,37,100,32,99,101,108,108,32,37,100,58,32,0,0,0,0,0,0,0,82,111,119,105,100,32,37, -108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,112,114,101,118,105,111,117,115,32,119,97,115,32,37,108,108,100,41,0,0,0,0,0,67,104,105,108,100,32,112,97,103,101,32,100,101,112,116,104,32,100,105,102,102,101,114,115,0,0,0,0,0,0,0,0,79,110,32,112,97,103,101,32,37,100,32,97,116,32,114,105,103,104,116,32,99,104,105,108,100,58,32,0,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,97,120,32,108,97,114,103,101,114,32,116,104,97,110, -32,112,97,114,101,110,116,32,109,105,110,32,111,102,32,37,108,108,100,41,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,105,110,32,108,101,115,115,32,116,104,97,110,32,112,97,114,101,110,116,32,109,105,110,32,111,102,32,37,108,108,100,41,0,0,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,97,120,32,108,97,114,103,101,114,32,116,104,97,110,32,112,97,114,101,110,116,32,109,97,120,32,111, -102,32,37,108,108,100,41,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,105,110,32,108,101,115,115,32,116,104,97,110,32,112,97,114,101,110,116,32,109,97,120,32,111,102,32,37,108,108,100,41,0,0,0,0,0,0,67,111,114,114,117,112,116,105,111,110,32,100,101,116,101,99,116,101,100,32,105,110,32,99,101,108,108,32,37,100,32,111,110,32,112,97,103,101,32,37,100,0,0,0,0,0,0,0,77,117,108,116,105,112,108,101,32,117,115,101,115,32,102,111,114,32,98,121,116, -101,32,37,100,32,111,102,32,112,97,103,101,32,37,100,0,0,0,0,70,114,97,103,109,101,110,116,97,116,105,111,110,32,111,102,32,37,100,32,98,121,116,101,115,32,114,101,112,111,114,116,101,100,32,97,115,32,37,100,32,111,110,32,112,97,103,101,32,37,100,0,0,0,0,0,105,110,118,97,108,105,100,32,112,97,103,101,32,110,117,109,98,101,114,32,37,100,0,0,50,110,100,32,114,101,102,101,114,101,110,99,101,32,116,111,32,112,97,103,101,32,37,100,0,0,0,0,0,0,0,0,70,97,105,108,101,100,32,116,111,32,114,101,97,100,32,112, -116,114,109,97,112,32,107,101,121,61,37,100,0,0,0,0,66,97,100,32,112,116,114,32,109,97,112,32,101,110,116,114,121,32,107,101,121,61,37,100,32,101,120,112,101,99,116,101,100,61,40,37,100,44,37,100,41,32,103,111,116,61,40,37,100,44,37,100,41,0,0,0,37,100,32,111,102,32,37,100,32,112,97,103,101,115,32,109,105,115,115,105,110,103,32,102,114,111,109,32,111,118,101,114,102,108,111,119,32,108,105,115,116,32,115,116,97,114,116,105,110,103,32,97,116,32,37,100,0,0,0,0,0,0,0,0,102,97,105,108,101,100,32,116,111, -32,103,101,116,32,112,97,103,101,32,37,100,0,0,0,102,114,101,101,108,105,115,116,32,108,101,97,102,32,99,111,117,110,116,32,116,111,111,32,98,105,103,32,111,110,32,112,97,103,101,32,37,100,0,0,83,81,76,105,116,101,32,102,111,114,109,97,116,32,51,0,37,115,45,109,106,88,88,88,88,88,88,57,88,88,122,0,77,74,32,100,101,108,101,116,101,58,32,37,115,0,0,0,77,74,32,99,111,108,108,105,100,101,58,32,37,115,0,0,45,109,106,37,48,54,88,57,37,48,50,88,0,0,0,0,37,46,50,120,0,0,0,0,107,40,37,100,0,0,0,0,110,105, -108,0,0,0,0,0,66,0,0,0,0,0,0,0,44,46,46,46,0,0,0,0,40,37,46,50,48,115,41,0,37,115,40,37,100,41,0,0,37,100,0,0,0,0,0,0,40,98,108,111,98,41,0,0,118,116,97,98,58,37,112,58,37,112,0,0,0,0,0,0,105,110,116,97,114,114,97,121,0,0,0,0,0,0,0,0,112,114,111,103,114,97,109,0,232,73,0,0,16,137,0,0,32,137,0,0,48,137,0,0,64,137,0,0,80,137,0,0,96,137,0,0,112,137,0,0,128,137,0,0,136,137,0,0,144,137,0,0,152,137,0,0,168,137,0,0,184,137,0,0,192,137,0,0,200,137,0,0,208,137,0,0,216,137,0,0,224,137,0,0,232,137,0,0,240,137, -0,0,0,138,0,0,16,138,0,0,24,138,0,0,40,138,0,0,48,138,0,0,56,138,0,0,64,138,0,0,72,138,0,0,80,138,0,0,96,138,0,0,104,138,0,0,120,138,0,0,128,138,0,0,136,138,0,0,144,138,0,0,160,138,0,0,168,138,0,0,176,138,0,0,192,138,0,0,208,138,0,0,224,138,0,0,232,138,0,0,240,138,0,0,248,138,0,0,0,139,0,0,8,139,0,0,16,139,0,0,32,139,0,0,48,139,0,0,56,139,0,0,72,139,0,0,88,139,0,0,104,139,0,0,120,139,0,0,136,139,0,0,152,139,0,0,168,139,0,0,184,139,0,0,192,139,0,0,200,139,0,0,208,139,0,0,216,139,0,0,224,139,0,0,232, -139,0,0,248,139,0,0,8,140,0,0,16,140,0,0,32,140,0,0,48,140,0,0,64,140,0,0,72,140,0,0,80,140,0,0,88,140,0,0,104,140,0,0,112,140,0,0,128,140,0,0,136,140,0,0,144,140,0,0,152,140,0,0,160,140,0,0,168,140,0,0,176,140,0,0,184,140,0,0,192,140,0,0,208,140,0,0,216,140,0,0,224,140,0,0,240,140,0,0,0,141,0,0,8,141,0,0,24,141,0,0,40,141,0,0,48,141,0,0,64,141,0,0,72,141,0,0,88,141,0,0,96,141,0,0,104,141,0,0,112,141,0,0,120,141,0,0,128,141,0,0,136,141,0,0,144,141,0,0,160,141,0,0,168,141,0,0,176,141,0,0,192,141,0, -0,208,141,0,0,224,141,0,0,240,141,0,0,248,141,0,0,0,142,0,0,8,142,0,0,16,142,0,0,24,142,0,0,32,142,0,0,48,142,0,0,64,142,0,0,80,142,0,0,96,142,0,0,112,142,0,0,128,142,0,0,144,142,0,0,160,142,0,0,176,142,0,0,192,142,0,0,208,142,0,0,224,142,0,0,232,142,0,0,240,142,0,0,0,143,0,0,16,143,0,0,24,143,0,0,32,143,0,0,40,143,0,0,48,143,0,0,56,143,0,0,72,143,0,0,88,143,0,0,96,143,0,0,112,143,0,0,120,143,0,0,128,143,0,0,136,143,0,0,144,143,0,0,160,143,0,0,168,143,0,0,176,143,0,0,192,143,0,0,200,143,0,0,208,143, -0,0,216,143,0,0,224,143,0,0,240,143,0,0,0,144,0,0,8,144,0,0,16,144,0,0,70,117,110,99,116,105,111,110,0,0,0,0,0,0,0,0,83,97,118,101,112,111,105,110,116,0,0,0,0,0,0,0,65,117,116,111,67,111,109,109,105,116,0,0,0,0,0,0,84,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,83,111,114,116,101,114,78,101,120,116,0,0,0,0,0,0,80,114,101,118,73,102,79,112,101,110,0,0,0,0,0,0,78,101,120,116,73,102,79,112,101,110,0,0,0,0,0,0,80,114,101,118,0,0,0,0,78,101,120,116,0,0,0,0,65,103,103,83,116,101,112,0,67,104,101,99, -107,112,111,105,110,116,0,0,0,0,0,0,74,111,117,114,110,97,108,77,111,100,101,0,0,0,0,0,86,97,99,117,117,109,0,0,86,70,105,108,116,101,114,0,86,85,112,100,97,116,101,0,71,111,116,111,0,0,0,0,71,111,115,117,98,0,0,0,82,101,116,117,114,110,0,0,78,111,116,0,0,0,0,0,73,110,105,116,67,111,114,111,117,116,105,110,101,0,0,0,69,110,100,67,111,114,111,117,116,105,110,101,0,0,0,0,89,105,101,108,100,0,0,0,72,97,108,116,73,102,78,117,108,108,0,0,0,0,0,0,72,97,108,116,0,0,0,0,73,110,116,101,103,101,114,0,73,110, -116,54,52,0,0,0,83,116,114,105,110,103,0,0,78,117,108,108,0,0,0,0,83,111,102,116,78,117,108,108,0,0,0,0,0,0,0,0,66,108,111,98,0,0,0,0,86,97,114,105,97,98,108,101,0,0,0,0,0,0,0,0,77,111,118,101,0,0,0,0,67,111,112,121,0,0,0,0,83,67,111,112,121,0,0,0,82,101,115,117,108,116,82,111,119,0,0,0,0,0,0,0,67,111,108,108,83,101,113,0,65,100,100,73,109,109,0,0,77,117,115,116,66,101,73,110,116,0,0,0,0,0,0,0,82,101,97,108,65,102,102,105,110,105,116,121,0,0,0,0,80,101,114,109,117,116,97,116,105,111,110,0,0,0,0,0, -67,111,109,112,97,114,101,0,74,117,109,112,0,0,0,0,79,110,99,101,0,0,0,0,73,102,0,0,0,0,0,0,73,102,78,111,116,0,0,0,67,111,108,117,109,110,0,0,65,102,102,105,110,105,116,121,0,0,0,0,0,0,0,0,77,97,107,101,82,101,99,111,114,100,0,0,0,0,0,0,67,111,117,110,116,0,0,0,82,101,97,100,67,111,111,107,105,101,0,0,0,0,0,0,83,101,116,67,111,111,107,105,101,0,0,0,0,0,0,0,79,112,101,110,82,101,97,100,0,0,0,0,0,0,0,0,79,112,101,110,87,114,105,116,101,0,0,0,0,0,0,0,79,112,101,110,65,117,116,111,105,110,100,101,120, -0,0,0,79,112,101,110,69,112,104,101,109,101,114,97,108,0,0,0,83,111,114,116,101,114,79,112,101,110,0,0,0,0,0,0,79,112,101,110,80,115,101,117,100,111,0,0,0,0,0,0,67,108,111,115,101,0,0,0,83,101,101,107,76,84,0,0,83,101,101,107,76,69,0,0,83,101,101,107,71,69,0,0,83,101,101,107,71,84,0,0,83,101,101,107,0,0,0,0,78,111,67,111,110,102,108,105,99,116,0,0,0,0,0,0,78,111,116,70,111,117,110,100,0,0,0,0,0,0,0,0,70,111,117,110,100,0,0,0,78,111,116,69,120,105,115,116,115,0,0,0,0,0,0,0,83,101,113,117,101,110,99, -101,0,0,0,0,0,0,0,0,78,101,119,82,111,119,105,100,0,0,0,0,0,0,0,0,73,110,115,101,114,116,0,0,79,114,0,0,0,0,0,0,65,110,100,0,0,0,0,0,73,110,115,101,114,116,73,110,116,0,0,0,0,0,0,0,68,101,108,101,116,101,0,0,82,101,115,101,116,67,111,117,110,116,0,0,0,0,0,0,73,115,78,117,108,108,0,0,78,111,116,78,117,108,108,0,78,101,0,0,0,0,0,0,69,113,0,0,0,0,0,0,71,116,0,0,0,0,0,0,76,101,0,0,0,0,0,0,76,116,0,0,0,0,0,0,71,101,0,0,0,0,0,0,83,111,114,116,101,114,67,111,109,112,97,114,101,0,0,0,66,105,116,65,110,100, -0,0,66,105,116,79,114,0,0,0,83,104,105,102,116,76,101,102,116,0,0,0,0,0,0,0,83,104,105,102,116,82,105,103,104,116,0,0,0,0,0,0,65,100,100,0,0,0,0,0,83,117,98,116,114,97,99,116,0,0,0,0,0,0,0,0,77,117,108,116,105,112,108,121,0,0,0,0,0,0,0,0,68,105,118,105,100,101,0,0,82,101,109,97,105,110,100,101,114,0,0,0,0,0,0,0,67,111,110,99,97,116,0,0,83,111,114,116,101,114,68,97,116,97,0,0,0,0,0,0,66,105,116,78,111,116,0,0,83,116,114,105,110,103,56,0,82,111,119,75,101,121,0,0,82,111,119,68,97,116,97,0,82,111,119, -105,100,0,0,0,78,117,108,108,82,111,119,0,76,97,115,116,0,0,0,0,83,111,114,116,101,114,83,111,114,116,0,0,0,0,0,0,83,111,114,116,0,0,0,0,82,101,119,105,110,100,0,0,83,111,114,116,101,114,73,110,115,101,114,116,0,0,0,0,73,100,120,73,110,115,101,114,116,0,0,0,0,0,0,0,73,100,120,68,101,108,101,116,101,0,0,0,0,0,0,0,73,100,120,82,111,119,105,100,0,0,0,0,0,0,0,0,73,100,120,76,69,0,0,0,73,100,120,71,84,0,0,0,73,100,120,76,84,0,0,0,73,100,120,71,69,0,0,0,68,101,115,116,114,111,121,0,67,108,101,97,114,0, -0,0,82,101,115,101,116,83,111,114,116,101,114,0,0,0,0,0,67,114,101,97,116,101,73,110,100,101,120,0,0,0,0,0,67,114,101,97,116,101,84,97,98,108,101,0,0,0,0,0,80,97,114,115,101,83,99,104,101,109,97,0,0,0,0,0,76,111,97,100,65,110,97,108,121,115,105,115,0,0,0,0,68,114,111,112,84,97,98,108,101,0,0,0,0,0,0,0,68,114,111,112,73,110,100,101,120,0,0,0,0,0,0,0,68,114,111,112,84,114,105,103,103,101,114,0,0,0,0,0,73,110,116,101,103,114,105,116,121,67,107,0,0,0,0,0,82,111,119,83,101,116,65,100,100,0,0,0,0,0,0,0, -82,111,119,83,101,116,82,101,97,100,0,0,0,0,0,0,82,111,119,83,101,116,84,101,115,116,0,0,0,0,0,0,80,114,111,103,114,97,109,0,80,97,114,97,109,0,0,0,70,107,67,111,117,110,116,101,114,0,0,0,0,0,0,0,70,107,73,102,90,101,114,111,0,0,0,0,0,0,0,0,77,101,109,77,97,120,0,0,82,101,97,108,0,0,0,0,73,102,80,111,115,0,0,0,73,102,78,101,103,0,0,0,73,102,90,101,114,111,0,0,65,103,103,70,105,110,97,108,0,0,0,0,0,0,0,0,73,110,99,114,86,97,99,117,117,109,0,0,0,0,0,0,69,120,112,105,114,101,0,0,84,97,98,108,101,76, -111,99,107,0,0,0,0,0,0,0,86,66,101,103,105,110,0,0,86,67,114,101,97,116,101,0,84,111,84,101,120,116,0,0,84,111,66,108,111,98,0,0,84,111,78,117,109,101,114,105,99,0,0,0,0,0,0,0,84,111,73,110,116,0,0,0,84,111,82,101,97,108,0,0,86,68,101,115,116,114,111,121,0,0,0,0,0,0,0,0,86,79,112,101,110,0,0,0,86,67,111,108,117,109,110,0,86,78,101,120,116,0,0,0,86,82,101,110,97,109,101,0,80,97,103,101,99,111,117,110,116,0,0,0,0,0,0,0,77,97,120,80,103,99,110,116,0,0,0,0,0,0,0,0,73,110,105,116,0,0,0,0,78,111,111,112, -0,0,0,0,69,120,112,108,97,105,110,0,65,80,73,32,99,97,108,108,101,100,32,119,105,116,104,32,78,85,76,76,32,112,114,101,112,97,114,101,100,32,115,116,97,116,101,109,101,110,116,0,65,80,73,32,99,97,108,108,101,100,32,119,105,116,104,32,102,105,110,97,108,105,122,101,100,32,112,114,101,112,97,114,101,100,32,115,116,97,116,101,109,101,110,116,0,0,0,0,64,32,32,0,0,0,0,0,1,0,0,0,8,0,0,0,4,0,0,0,5,0,0,0,8,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,9,0,0,0,9,0,0,0,10,0,0,0,6,0,0,0,3,0,0,0,12,0,0, -0,17,0,0,0,7,0,0,0,4,0,0,0,0,0,0,0,32,146,0,0,10,0,0,0,0,0,0,0,248,145,0,0,11,0,0,0,0,0,0,0,144,18,0,0,18,0,0,0,0,0,0,0,40,146,0,0,19,0,0,0,0,0,0,0,48,146,0,0,20,0,0,0,0,0,0,0,56,146,0,0,21,0,0,0,0,0,0,0,64,146,0,0,22,0,0,0,0,0,0,0,80,146,0,0,11,0,0,0,0,0,0,0,88,146,0,0,12,0,0,0,0,0,0,0,96,146,0,0,0,0,0,0,0,0,0,0,104,146,0,0,0,0,0,0,0,0,0,0,112,146,0,0,13,0,0,0,0,0,0,0,120,146,0,0,0,0,0,0,0,0,0,0,128,146,0,0,0,0,0,0,0,0,0,0,144,146,0,0,23,0,0,0,0,0,0,0,152,146,0,0,0,0,0,0,0,0,0,0,168,146,0,0,12,0, -0,0,0,0,0,0,176,146,0,0,24,0,0,0,0,0,0,0,192,146,0,0,25,0,0,0,0,0,0,0,200,146,0,0,13,0,0,0,0,0,0,0,208,146,0,0,14,0,0,0,0,0,0,0,216,146,0,0,1,0,0,0,0,0,0,0,224,146,0,0,26,0,0,0,0,0,0,0,232,146,0,0,0,0,0,0,0,0,0,0,240,146,0,0,1,0,0,0,0,0,0,0,0,0,0,0,99,108,111,115,101,0,0,0,111,115,95,117,110,105,120,46,99,58,37,100,58,32,40,37,100,41,32,37,115,40,37,115,41,32,45,32,37,115,0,0,111,112,101,110,0,0,0,0,103,101,116,99,119,100,0,0,115,116,97,116,0,0,0,0,102,115,116,97,116,0,0,0,102,116,114,117,110,99, -97,116,101,0,0,0,0,0,0,0,102,99,110,116,108,0,0,0,114,101,97,100,0,0,0,0,112,114,101,97,100,0,0,0,112,114,101,97,100,54,52,0,119,114,105,116,101,0,0,0,112,119,114,105,116,101,0,0,112,119,114,105,116,101,54,52,0,0,0,0,0,0,0,0,102,99,104,109,111,100,0,0,102,97,108,108,111,99,97,116,101,0,0,0,0,0,0,0,117,110,108,105,110,107,0,0,111,112,101,110,68,105,114,101,99,116,111,114,121,0,0,0,109,107,100,105,114,0,0,0,114,109,100,105,114,0,0,0,102,99,104,111,119,110,0,0,109,109,97,112,0,0,0,0,109,117,110,109, -97,112,0,0,109,114,101,109,97,112,0,0,103,101,116,112,97,103,101,115,105,122,101,0,0,0,0,0,97,116,116,101,109,112,116,32,116,111,32,111,112,101,110,32,34,37,115,34,32,97,115,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,37,100,0,0,0,0,0,0,47,100,101,118,47,110,117,108,108,0,0,0,0,0,0,0,37,115,45,115,104,109,0,0,114,101,97,100,111,110,108,121,95,115,104,109,0,0,0,0,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,65,66,67,68,69, -70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,48,49,50,51,52,53,54,55,56,57,0,0,37,115,47,101,116,105,108,113,115,95,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,147,0,0,216,147,0,0,232,147,0,0,0,0,0,0,0,0,0,0,47,118,97,114,47,116,109,112,0,0,0,0,0,0,0,0,47,117,115,114,47,116,109,112,0,0,0,0,0,0,0,0,47,116,109,112,0,0,0,0,83,81,76,73,84,69,95,84,77,80,68,73,82,0,0,0,84,77,80,68,73,82,0,0,102,117,108,108,95,102,115,121,110,99,0,0,0,0,0,0,1,0,0,0,14,0,0,0,4,0,0,0,5,0,0,0,8,0,0,0,12,0,0, -0,13,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,9,0,0,0,9,0,0,0,10,0,0,0,6,0,0,0,3,0,0,0,12,0,0,0,17,0,0,0,7,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,100,101,118,47,117,114,97,110,100,111,109,0,0,0,0,47,37,115,0,0,0,0,0,102,115,121,110,99,0,0,0,112,115,111,119,0,0,0,0,3,0,0,0,15,0,0,0,4,0,0,0,5,0,0,0,8,0,0,0,12,0,0,0,13,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,9,0,0,0,9,0,0,0,10,0,0,0,6,0,0,0,3,0,0,0,12,0,0,0,17,0,0,0,7,0,0,0,4,0,0,0,0,0,0,0,37,115,46,108,111,99,107,0,99,97,110,110,111,116,32,102,115,116,97,116,32, -100,98,32,102,105,108,101,32,37,115,0,102,105,108,101,32,117,110,108,105,110,107,101,100,32,119,104,105,108,101,32,111,112,101,110,58,32,37,115,0,0,0,0,109,117,108,116,105,112,108,101,32,108,105,110,107,115,32,116,111,32,102,105,108,101,58,32,37,115,0,0,0,0,0,0,102,105,108,101,32,114,101,110,97,109,101,100,32,119,104,105,108,101,32,111,112,101,110,58,32,37,115,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,0,0,0,0,100,10,1,1,0,0,115,0,4,6,0,0,103,0,1,4,30,0,122,0,4,7,0,0,113,0,4,10,0,0,81,0,4,11,0,0,119,0,4, -15,0,0,99,0,0,9,0,0,111,8,0,1,0,2,117,10,0,1,0,0,120,16,0,1,16,1,88,16,0,1,0,4,102,0,1,2,0,0,101,0,1,3,30,0,69,0,1,3,14,0,71,0,1,4,14,0,105,10,1,1,0,0,110,0,0,5,0,0,37,0,0,8,0,0,112,16,0,14,0,1,84,0,2,12,0,0,83,0,2,13,0,0,114,10,3,16,0,0,0,0,0,0,0,0,116,104,115,116,110,100,114,100,0,0,0,0,0,0,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0,0,0,0,0,0,0,0,45,120,48,0,88,48,0,0,78,97,78,0,0,0,0,0,45,73,110,102,0,0,0,0,43,73,110,102,0,0,0,0,73, -110,102,0,0,0,0,0,40,78,85,76,76,41,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,254,255,255,127,0,0,0,0,128,0,0,0,244,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,73,83,65,66,76,69,95,76,70,83,0,0,0,0,0,73,78,84,54,52,95,84,89,80,69,0,0,0,0,0,0,79,77,73,84,95,76,79,65,68,95,69,88,84,69,78,83,73,79,78,0,0,0,0,0,83,89,83,84,69,77,95,77,65,76,76,79,67,0,0,0,84,72,82,69,65,68,83,65,70,69,61,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"i8",Ga,u.Ra+30720);var gb=u.qa(F(12,"i8",E),8);v(0==gb%8); -var J={S:1,Fa:2,Tf:3,Re:4,ia:5,Tb:6,oe:7,of:8,H:9,Be:10,Da:11,cg:11,Pc:12,jb:13,Me:14,Af:15,Ea:16,Qb:17,dg:18,lb:19,Rb:20,pa:21,A:22,jf:23,Oc:24,Ef:25,$f:26,Ne:27,wf:28,Qa:29,Pf:30,bf:31,Jf:32,Je:33,Ub:34,sf:42,Pe:43,Ce:44,Te:45,Ue:46,Ve:47,af:48,ag:49,mf:50,Se:51,He:35,pf:37,te:52,we:53,eg:54,kf:55,xe:56,ye:57,Ie:35,ze:59,yf:60,nf:61,Xf:62,xf:63,tf:64,uf:65,Of:66,qf:67,re:68,Uf:69,De:70,Kf:71,df:72,Ke:73,ve:74,Ff:76,ue:77,Nf:78,We:79,Xe:80,$e:81,Ze:82,Ye:83,zf:38,Sb:39,ef:36,kb:40,mb:95,If:96,Ge:104, -lf:105,se:97,Mf:91,Cf:88,vf:92,Rf:108,Fe:111,pe:98,Ee:103,hf:101,ff:100,Yf:110,Oe:112,Lc:113,Mc:115,Jc:114,Kc:89,cf:90,Lf:93,Sf:94,qe:99,gf:102,Nc:106,Pa:107,Zf:109,bg:87,Le:122,Vf:116,Df:95,rf:123,Qe:84,Gf:75,Ae:125,Bf:131,Hf:130,Wf:86},hb={"0":"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes", -12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func", -34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange", -53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)", -74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required", -90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected", -107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"},ib=0;function L(a){return C[ib>>2]=a} -function jb(a,b){for(var c=0,d=a.length-1;0<=d;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function kb(a){var b="/"===a.charAt(0),c="/"===a.substr(-1),a=jb(a.split("/").filter(function(a){return!!a}),!b).join("/");!a&&!b&&(a=".");a&&c&&(a+="/");return(b?"/":"")+a}function lb(a){if("/"===a)return"/";var b=a.lastIndexOf("/");return-1===b?a:a.substr(b+1)} -function mb(){for(var a="",b=l,c=arguments.length-1;-1<=c&&!b;c--){var d=0<=c?arguments[c]:"/";"string"!==typeof d&&f(new TypeError("Arguments to path.resolve must be strings"));d&&(a=d+"/"+a,b="/"===d.charAt(0))}a=jb(a.split("/").filter(function(a){return!!a}),!b).join("/");return(b?"/":"")+a||"."}var nb=[];function ob(a,b){nb[a]={input:[],na:[],Ia:b};pb[a]={o:qb}} -var qb={open:function(a){var b=nb[a.k.Ka];b||f(new M(J.lb));a.R=b;a.seekable=l},close:function(a){a.R.na.length&&a.R.Ia.cb(a.R,10)},W:function(a,b,c,d){(!a.R||!a.R.Ia.sc)&&f(new M(J.Tb));for(var e=0,g=0;ga.g.length)&&(a.g=O.vd(a),a.B=a.g.length); -if(!a.g||a.g.subarray){var c=a.g?a.g.buffer.byteLength:0;c>=b||(b=Math.max(b,c*(1048576>c?2:1.125)|0),0!=c&&(b=Math.max(b,256)),c=a.g,a.g=new Uint8Array(b),0b)a.g.length=b;else for(;a.g.length=a.k.B)return 0;a=Math.min(a.k.B-e,d);v(0<=a);if(8b&&f(new M(J.A));a.ge=[];return a.position=b},ac:function(a,b,c){O.lc(a.k,b+c);a.k.B=Math.max(a.k.B,b+c)},ab:function(a,b,c,d,e,g,h){32768!==(a.k.mode&61440)&&f(new M(J.lb));c=a.k.g;if(!(h&2)&&(c.buffer===b||c.buffer===b.buffer))a=l,d=c.byteOffset;else{if(0>>0)%Ab.length}function Eb(a){var b=Db(a.parent.id,a.name);if(Ab[b]===a)Ab[b]=a.wa;else for(b=Ab[b];b;){if(b.wa===a){b.wa=a.wa;break}b=b.wa}} -function ub(a,b){var c=Fb(a,"x");c&&f(new M(c));for(c=Ab[Db(a.id,b)];c;c=c.wa){var d=c.name;if(c.parent.id===a.id&&d===b)return c}return a.n.Eb(a,b)} -function sb(a,b,c,d){Gb||(Gb=function(a,b,c,d){a||(a=this);this.parent=a;this.ha=a.ha;this.va=k;this.id=zb++;this.name=b;this.mode=c;this.n={};this.o={};this.Ka=d},Gb.prototype={},Object.defineProperties(Gb.prototype,{W:{get:function(){return 365===(this.mode&365)},set:function(a){a?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146===(this.mode&146)},set:function(a){a?this.mode|=146:this.mode&=-147}},Id:{get:function(){return 16384===(this.mode&61440)}},Hd:{get:function(){return 8192=== -(this.mode&61440)}}}));a=new Gb(a,b,c,d);b=Db(a.parent.id,a.name);a.wa=Ab[b];return Ab[b]=a}var Hb={r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218};function Ib(a){var b=Hb[a];"undefined"===typeof b&&f(Error("Unknown file open mode: "+a));return b}function Fb(a,b){return Bb?0:-1!==b.indexOf("r")&&!(a.mode&292)||-1!==b.indexOf("w")&&!(a.mode&146)||-1!==b.indexOf("x")&&!(a.mode&73)?J.jb:0} -function Jb(a,b){try{return ub(a,b),J.Qb}catch(c){}return Fb(a,"wx")}function Kb(a,b,c){var d;try{d=ub(a,b)}catch(e){return e.yb}if(a=Fb(a,"wx"))return a;if(c){if(16384!==(d.mode&61440))return J.Rb;if(d===d.parent||"/"===Cb(d))return J.Ea}else if(16384===(d.mode&61440))return J.pa;return 0} -function Lb(a,b,c){Mb||(Mb=n(),Mb.prototype={},Object.defineProperties(Mb.prototype,{object:{get:function(){return this.k},set:function(a){this.k=a}},Yg:{get:function(){return 1!==(this.J&2097155)}},Zg:{get:function(){return 0!==(this.J&2097155)}},Xg:{get:function(){return this.J&1024}}}));var d=new Mb,e;for(e in a)d[e]=a[e];var a=d,g;a:{b=b||0;for(c=c||4096;b<=c;b++)if(!P[b]){g=b;break a}f(new M(J.Oc))}a.O=g;return P[g]=a}var rb={open:function(a){a.o=pb[a.k.Ka].o;a.o.open&&a.o.open(a)},ma:function(){f(new M(J.Qa))}}; -function Nb(a,b){var c="/"===b,d=!b,e;c&&yb&&f(new M(J.Ea));!c&&!d&&(e=S(b,{oc:l}),b=e.path,e=e.k,e.va&&f(new M(J.Ea)),16384!==(e.mode&61440)&&f(new M(J.Rb)));var d={type:a,eh:{},Od:b,Pd:[]},g=a.ha(d);g.ha=d;d.root=g;c?yb=g:e&&(e.va=d,e.ha&&e.ha.Pd.push(d));return g}function Ob(a,b,c){var d=S(a,{parent:j}).k,a=lb(a),e=Jb(d,a);e&&f(new M(e));d.n.$a||f(new M(J.S));return d.n.$a(d,a,b,c)}function Pb(a,b){b=(b!==i?b:438)&4095;b|=32768;return Ob(a,b,0)} -function Qb(a,b){b=(b!==i?b:511)&1023;b|=16384;return Ob(a,b,0)}function Rb(a,b,c){"undefined"===typeof c&&(c=b,b=438);return Ob(a,b|8192,c)}function Sb(a,b){var c=S(b,{parent:j}).k,d=lb(b),e=Jb(c,d);e&&f(new M(e));c.n.gb||f(new M(J.S));return c.n.gb(c,d,a)} -function Tb(a){var b=S(a,{parent:j}).k,c=lb(a),d=ub(b,c),e=Kb(b,c,l);e&&(e===J.pa&&(e=J.S),f(new M(e)));b.n.ib||f(new M(J.S));d.va&&f(new M(J.Ea));try{Q.willDeletePath&&Q.willDeletePath(a)}catch(g){console.log("FS.trackingDelegate['willDeletePath']('"+a+"') threw an exception: "+g.message)}b.n.ib(b,c);Eb(d);try{if(Q.onDeletePath)Q.onDeletePath(a)}catch(h){console.log("FS.trackingDelegate['onDeletePath']('"+a+"') threw an exception: "+h.message)}} -function Ub(a,b){var c=S(a,{sa:!b}).k;c.n.U||f(new M(J.S));return c.n.U(c)}function Vb(a,b){var c;c="string"===typeof a?S(a,{sa:j}).k:a;c.n.L||f(new M(J.S));c.n.L(c,{mode:b&4095|c.mode&-4096,timestamp:Date.now()})}function Wb(a){a="string"===typeof a?S(a,{sa:j}).k:a;a.n.L||f(new M(J.S));a.n.L(a,{timestamp:Date.now()})} -function Xb(a,b){0>b&&f(new M(J.A));var c;c="string"===typeof a?S(a,{sa:j}).k:a;c.n.L||f(new M(J.S));16384===(c.mode&61440)&&f(new M(J.pa));32768!==(c.mode&61440)&&f(new M(J.A));var d=Fb(c,"w");d&&f(new M(d));c.n.L(c,{size:b,timestamp:Date.now()})} -function Yb(a,b,c,d){""===a&&f(new M(J.Fa));var b="string"===typeof b?Ib(b):b,c=b&64?("undefined"===typeof c?438:c)&4095|32768:0,e;if("object"===typeof a)e=a;else{a=kb(a);try{e=S(a,{sa:!(b&131072)}).k}catch(g){}}b&64&&(e?b&128&&f(new M(J.Qb)):e=Ob(a,c,0));e||f(new M(J.Fa));8192===(e.mode&61440)&&(b&=-513);e?40960===(e.mode&61440)?c=J.kb:16384===(e.mode&61440)&&(0!==(b&2097155)||b&512)?c=J.pa:(c=["r","w","rw"][b&2097155],b&512&&(c+="w"),c=Fb(e,c)):c=J.Fa;c&&f(new M(c));b&512&&Xb(e,0);b&=-641;d=Lb({k:e, -path:Cb(e),J:b,seekable:j,position:0,o:e.o,ge:[],error:l},d,i);d.o.open&&d.o.open(d);r.logReadFiles&&!(b&1)&&(Zb||(Zb={}),a in Zb||(Zb[a]=1,r.printErr("read file: "+a)));try{Q.onOpenFile&&(e=0,1!==(b&2097155)&&(e|=1),0!==(b&2097155)&&(e|=2),Q.onOpenFile(a,e))}catch(h){console.log("FS.trackingDelegate['onOpenFile']('"+a+"', flags) threw an exception: "+h.message)}return d}function $b(a){try{a.o.close&&a.o.close(a)}catch(b){f(b)}finally{P[a.O]=k}} -function ac(a,b,c){(!a.seekable||!a.o.ma)&&f(new M(J.Qa));return a.o.ma(a,b,c)}function bc(a,b,c,d){var e=z;(0>c||0>d)&&f(new M(J.A));1===(a.J&2097155)&&f(new M(J.H));16384===(a.k.mode&61440)&&f(new M(J.pa));a.o.W||f(new M(J.A));var g=j;"undefined"===typeof d?(d=a.position,g=l):a.seekable||f(new M(J.Qa));b=a.o.W(a,e,b,c,d);g||(a.position+=b);return b} -function cc(a,b,c,d,e,g){(0>d||0>e)&&f(new M(J.A));0===(a.J&2097155)&&f(new M(J.H));16384===(a.k.mode&61440)&&f(new M(J.pa));a.o.write||f(new M(J.A));a.J&1024&&ac(a,0,2);var h=j;"undefined"===typeof e?(e=a.position,h=l):a.seekable||f(new M(J.Qa));b=a.o.write(a,b,c,d,e,g);h||(a.position+=b);try{if(a.path&&Q.onWriteToFile)Q.onWriteToFile(a.path)}catch(m){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+m.message)}return b} -function dc(){M||(M=function(a){this.yb=a;for(var b in J)if(J[b]===a){this.code=b;break}this.message=hb[a]},M.prototype=Error(),[J.Fa].forEach(function(a){tb[a]=new M(a);tb[a].stack=""}))}var ec;function fc(a,b){var c=0;a&&(c|=365);b&&(c|=146);return c} -function gc(a,b,c,d,e,g){a=b?kb(("string"===typeof a?a:Cb(a))+"/"+b):a;d=fc(d,e);e=Pb(a,d);if(c){if("string"===typeof c){for(var a=Array(c.length),b=0,h=c.length;b>2]=d.pd;C[b+4>>2]=0;C[b+8>>2]=d.tc;C[b+12>>2]=d.mode;C[b+16>>2]=d.Sd;C[b+20>>2]=d.uid;C[b+24>>2]=d.Cd;C[b+28>>2]=d.Ka;C[b+32>>2]=0;C[b+36>>2]=d.size;C[b+40>>2]=4096;C[b+44>>2]=d.kd;C[b+48>>2]=Math.floor(d.bd.getTime()/1E3);C[b+52>>2]=0;C[b+56>>2]=Math.floor(d.Qd.getTime()/1E3);C[b+60>>2]=0;C[b+64>>2]=Math.floor(d.nd.getTime()/1E3);C[b+68>>2]=0;C[b+72>>2]=d.tc;return 0}catch(e){return R(e),-1}}r._bitshift64Shl=mc; -function nc(a){a/=1E3;if(da&&window.performance&&window.performance.now)for(var b=window.performance.now();window.performance.now()-b>8,a.Ba&255]));return b},Za:function(a,b,c){return a.Ja[b+":"+c]},$b:function(a,b){a.Ja[b.$+":"+b.port]=b},Ec:function(a,b){delete a.Ja[b.$+":"+b.port]},Fd:function(a,b){function c(){try{for(var a=b.Xa.shift();a;)b.q.send(a),a=b.Xa.shift()}catch(c){b.q.close()}}function d(c){v("string"!==typeof c&&c.byteLength!==i);var c=new Uint8Array(c),d=e;e=l;d&&10===c.length&&255===c[0]&&255===c[1]&&255===c[2]&&255===c[3]&&112===c[4]&&111===c[5]&&114===c[6]&&116===c[7]?(c=c[8]<<8|c[9], -T.M.Ec(a,b),b.port=c,T.M.$b(a,b)):a.ya.push({$:b.$,port:b.port,data:c})}var e=j;ca?(b.q.on("open",c),b.q.on("message",function(a,b){b.binary&&d((new Uint8Array(a)).buffer)}),b.q.on("error",n())):(b.q.onopen=c,b.q.onmessage=function(a){d(a.data)})},Cc:function(a){if(1===a.type&&a.I)return a.Fb.length?65:0;var b=0,c=1===a.type?T.M.Za(a,a.aa,a.ba):k;if(a.ya.length||!c||c&&c.q.readyState===c.q.Oa||c&&c.q.readyState===c.q.CLOSED)b|=65;if(!c||c&&c.q.readyState===c.q.OPEN)b|=4;if(c&&c.q.readyState===c.q.Oa|| -c&&c.q.readyState===c.q.CLOSED)b|=16;return b},vc:function(a,b,c){switch(b){case 21531:return b=0,a.ya.length&&(b=a.ya[0].data.length),C[c>>2]=b,0;default:return J.A}},close:function(a){if(a.I){try{a.I.close()}catch(b){}a.I=k}for(var c=Object.keys(a.Ja),d=0;d=Ac;)Ac+=1E3/60;b=Math.max(Ac-b,0);setTimeout(a,b)}function Cc(a){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[a.substr(a.lastIndexOf(".")+1)]}var Dc=[];function Ec(){var a=r.canvas;Dc.forEach(function(b){b(a.width,a.height)})} -function Fc(a,b,c){b&&c?(a.he=b,a.Gd=c):(b=a.he,c=a.Gd);var d=b,e=c;r.forcedAspectRatio&&0>2]=60*-(new Date).getTimezoneOffset();C[Nc>>2]=Number((new Date(2E3,0,1)).getTimezoneOffset()!=(new Date(2E3,6,1)).getTimezoneOffset());var a=F(I("GMT"),"i8",Fa),b=F(I("GMT"),"i8",Fa);C[Mc>>2]=a;C[Mc+4>>2]=b}} -function Qc(a,b){Pc();var c=new Date(1E3*C[a>>2]);C[b>>2]=c.getSeconds();C[b+4>>2]=c.getMinutes();C[b+8>>2]=c.getHours();C[b+12>>2]=c.getDate();C[b+16>>2]=c.getMonth();C[b+20>>2]=c.getFullYear()-1900;C[b+24>>2]=c.getDay();var d=new Date(c.getFullYear(),0,1);C[b+28>>2]=Math.floor((c.getTime()-d.getTime())/864E5);C[b+36>>2]=60*d.getTimezoneOffset();C[b+32>>2]=Number(d.getTimezoneOffset()!=c.getTimezoneOffset());C[b+40>>2]=Lc;return b}r._bitshift64Lshr=Rc; -function Sc(a,b,c){a=P[a];if(!a)return L(J.H),-1;try{return bc(a,b,c)}catch(d){return R(d),-1}}var Tc=F(1,"i32*",E); -function Uc(a){var b,c;Uc.Ga?(c=C[Tc>>2],b=C[c>>2]):(Uc.Ga=j,Vc.USER="root",Vc.PATH="/",Vc.PWD="/",Vc.HOME="/home/emscripten",Vc.LANG="en_US.UTF-8",Vc._="./this.program",b=F(1024,"i8",E),c=F(256,"i8*",E),C[c>>2]=b,C[Tc>>2]=c);var d=[],e=0,g;for(g in a)if("string"===typeof a[g]){var h=g+"="+a[g];d.push(h);e+=h.length}1024>2]=b,b+=h.length+1;C[c+4*d.length>>2]=0}var Vc={}; -function Wc(a){if(0===a)return 0;a=x(a);if(!Vc.hasOwnProperty(a))return 0;Wc.Jb&&Xc(Wc.Jb);Wc.Jb=F(I(Vc[a]),"i8",Fa);return Wc.Jb}r._memcpy=Yc;function Zc(a){Zc.Ga||(y=y+4095&-4096,Zc.Ga=j,v(u.Ha),Zc.ad=u.Ha,u.Ha=function(){la("cannot dynamically allocate, sbrk now has control")});var b=y;0!=a&&Zc.ad(a);return b}r._memmove=$c;function ad(a,b,c){if(a in hb){if(hb[a].length>c-1)return L(J.Ub);ab(hb[a],b);return 0}return L(J.A)} -function bd(a){bd.buffer||(bd.buffer=Ha(256));ad(a,bd.buffer,256);return bd.buffer}function cd(a,b,c,d,e,g){var h,m=l;cd.ua||(cd.ua={});if(-1==e){h=Ha(b);if(!h)return-1;kc(h,0,b);m=j}else{e=P[e];if(!e)return-1;try{var t,p=G;1===(e.J&2097155)&&f(new M(J.jb));e.o.ab||f(new M(J.lb));t=e.o.ab(e,p,a,b,g,c,d);h=t.Wd;m=t.qb}catch(D){return R(D),-1}}cd.ua[h]={Nd:h,Ud:b,qb:m};return h}dc();Ab=Array(4096);Nb(O,"/");Qb("/tmp");Qb("/dev");pb[259]={o:{W:function(){return 0},write:function(){return 0}}}; -Rb("/dev/null",259);ob(1280,{sc:function(a){if(!a.input.length){var b=k;if(ca){if(b=process.stdin.read(),!b){if(process.stdin._readableState&&process.stdin._readableState.ended)return k;return}}else"undefined"!=typeof window&&"function"==typeof window.prompt?(b=window.prompt("Input: "),b!==k&&(b+="\n")):"function"==typeof readline&&(b=readline(),b!==k&&(b+="\n"));if(!b)return k;a.input=I(b,j)}return a.input.shift()},cb:function(a,b){b===k||10===b?(r.print(a.na.join("")),a.na=[]):a.na.push(dd.Gb(b))}}); -ob(1536,{cb:function(a,b){b===k||10===b?(r.printErr(a.na.join("")),a.na=[]):a.na.push(dd.Gb(b))}});Rb("/dev/tty",1280);Rb("/dev/tty1",1536);hc("/dev","random",function(){return Math.floor(256*Math.random())});hc("/dev","urandom",function(){return Math.floor(256*Math.random())});Qb("/dev/shm");Qb("/dev/shm/tmp"); -Ua.unshift({ta:function(){if(!r.noFSInit&&!ec){v(!ec,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");ec=j;dc();r.stdin=r.stdin;r.stdout=r.stdout;r.stderr=r.stderr;r.stdin?hc("/dev","stdin",r.stdin):Sb("/dev/tty","/dev/stdin");r.stdout?hc("/dev","stdout",k,r.stdout):Sb("/dev/tty","/dev/stdout");r.stderr?hc("/dev","stderr",k,r.stderr):Sb("/dev/tty1","/dev/stderr");var a=Yb("/dev/stdin", -"r");C[vb>>2]=a?a.O+1:0;v(0===a.O,"invalid handle for stdin ("+a.O+")");a=Yb("/dev/stdout","w");C[wb>>2]=a?a.O+1:0;v(1===a.O,"invalid handle for stdout ("+a.O+")");a=Yb("/dev/stderr","w");C[xb>>2]=a?a.O+1:0;v(2===a.O,"invalid handle for stderr ("+a.O+")")}}});Va.push({ta:function(){Bb=l}});Wa.push({ta:function(){ec=l;for(var a=0;a>g-6&63,g=g-6,c=c+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[t]}2==g?(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(d&3)<<4],c+="=="):4==g&&(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(d&15)<<2],c+="="); -p.src="data:audio/x-"+b.substr(-3)+";base64,"+c;e(p)}};p.src=m;r.noExitRuntime=j;setTimeout(function(){oa||e(p)},1E4)}else return g()}});var w=r.canvas;w&&(w.Ib=w.requestPointerLock||w.mozRequestPointerLock||w.webkitRequestPointerLock||w.msRequestPointerLock||n(),w.kc=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||n(),w.kc=w.kc.bind(document),document.addEventListener("pointerlockchange",p,l),document.addEventListener("mozpointerlockchange", -p,l),document.addEventListener("webkitpointerlockchange",p,l),document.addEventListener("mspointerlockchange",p,l),r.elementPointerLock&&w.addEventListener("click",function(a){!wc&&w.Ib&&(w.Ib(),a.preventDefault())},l))}var A=b?mb(kb(a+"/"+b)):a;eb();if("string"==typeof c){var K=h,ia=function(){K?K():f('Loading data file "'+c+'" failed.')},N=new XMLHttpRequest;N.open("GET",c,j);N.responseType="arraybuffer";N.onload=function(){if(200==N.status||0==N.status&&N.response){var a=N.response;v(a,'Loading data file "'+ -c+'" failed (no arrayBuffer).');a=new Uint8Array(a);D(a);fb()}else ia()};N.onerror=ia;N.send(k);eb()}else D(c)}; -r.FS_createLazyFile=function(a,b,c,d,e){var g,h;function m(){this.Db=l;this.Ua=[]}m.prototype.get=function(a){if(!(a>this.length-1||0>a)){var b=a%this.Ta;return this.Bd(Math.floor(a/this.Ta))[b]}};m.prototype.ce=function(a){this.Bd=a};m.prototype.cc=function(){var a=new XMLHttpRequest;a.open("HEAD",c,l);a.send(k);200<=a.status&&300>a.status||304===a.status||f(Error("Couldn't load "+c+". Status: "+a.status));var b=Number(a.getResponseHeader("Content-length")),d,e=1048576;if(!((d=a.getResponseHeader("Accept-Ranges"))&& -"bytes"===d))e=b;var g=this;g.ce(function(a){var d=a*e,h=(a+1)*e-1,h=Math.min(h,b-1);if("undefined"===typeof g.Ua[a]){var m=g.Ua;d>h&&f(Error("invalid range ("+d+", "+h+") or no bytes requested!"));h>b-1&&f(Error("only "+b+" bytes available! programmer error!"));var p=new XMLHttpRequest;p.open("GET",c,l);b!==e&&p.setRequestHeader("Range","bytes="+d+"-"+h);"undefined"!=typeof Uint8Array&&(p.responseType="arraybuffer");p.overrideMimeType&&p.overrideMimeType("text/plain; charset=x-user-defined");p.send(k); -200<=p.status&&300>p.status||304===p.status||f(Error("Couldn't load "+c+". Status: "+p.status));d=p.response!==i?new Uint8Array(p.response||[]):I(p.responseText||"",j);m[a]=d}"undefined"===typeof g.Ua[a]&&f(Error("doXHR failed!"));return g.Ua[a]});this.Zc=b;this.Yc=e;this.Db=j};"undefined"!==typeof XMLHttpRequest?(ea||f("Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"),g=new m,Object.defineProperty(g,"length",{get:function(){this.Db|| -this.cc();return this.Zc}}),Object.defineProperty(g,"chunkSize",{get:function(){this.Db||this.cc();return this.Yc}}),h=i):(h=c,g=i);var t,a=kb(("string"===typeof a?a:Cb(a))+"/"+b);t=Pb(a,fc(d,e));g?t.g=g:h&&(t.g=k,t.url=h);Object.defineProperty(t,"usedBytes",{get:function(){return this.g.length}});var p={};Object.keys(t.o).forEach(function(a){var b=t.o[a];p[a]=function(){ic(t)||f(new M(J.ia));return b.apply(k,arguments)}});p.W=function(a,b,c,d,e){ic(t)||f(new M(J.ia));a=a.k.g;if(e>=a.length)return 0; -d=Math.min(a.length-e,d);v(0<=d);if(a.slice)for(var g=0;g>2]=0;Ua.unshift({ta:n()});Wa.push({ta:n()});var dd=new u.ob;ca&&(require("fs"),process.platform.match(/^win/));Ua.push({ta:function(){T.root=Nb(T,k)}}); -r.requestFullScreen=function(a,b){function c(){vc=l;var a=d.parentNode;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===a?(d.dc=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen||document.msExitFullscreen||document.exitFullscreen|| -n(),d.dc=d.dc.bind(document),yc&&d.Ib(),vc=j,zc&&("undefined"!=typeof SDL&&(a=La[SDL.screen+0*u.ja>>2],C[SDL.screen+0*u.ja>>2]=a|8388608),Ec())):(a.parentNode.insertBefore(d,a),a.parentNode.removeChild(a),zc&&("undefined"!=typeof SDL&&(a=La[SDL.screen+0*u.ja>>2],C[SDL.screen+0*u.ja>>2]=a&-8388609),Ec()));if(r.onFullScreen)r.onFullScreen(vc);Fc(d)}yc=a;zc=b;"undefined"===typeof yc&&(yc=j);"undefined"===typeof zc&&(zc=l);var d=r.canvas;xc||(xc=j,document.addEventListener("fullscreenchange",c,l),document.addEventListener("mozfullscreenchange", -c,l),document.addEventListener("webkitfullscreenchange",c,l),document.addEventListener("MSFullscreenChange",c,l));var e=document.createElement("div");d.parentNode.insertBefore(e,d);e.appendChild(d);e.$d=e.requestFullScreen||e.mozRequestFullScreen||e.msRequestFullscreen||(e.webkitRequestFullScreen?function(){e.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:k);e.$d()}; -r.requestAnimationFrame=function(a){"undefined"===typeof window?Bc(a):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Bc),window.requestAnimationFrame(a))};r.setCanvasSize=function(a,b,c){Fc(r.canvas,a,b);c||Ec()};r.pauseMainLoop=n();r.resumeMainLoop=function(){uc&&(uc=l,k())}; -r.getUserMedia=function(){window.rc||(window.rc=navigator.getUserMedia||navigator.mozGetUserMedia);window.rc(i)};Uc(Vc);Na=s=u.qa(ma);Oa=Na+5242880;Pa=y=u.qa(Oa);v(Pa>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0]}function Hb(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0];a[k+4>>0]=a[b+4>>0];a[k+5>>0]=a[b+5>>0];a[k+6>>0]=a[b+6>>0];a[k+7>>0]=a[b+7>>0]}function Ib(a){a=a|0;D=a}function Jb(){return D|0}function Kb(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;b=e+12|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;if((Lb(c[f>>2]|0,16,7)|0)==0){c[f>>2]=(c[f>>2]|0)+7}c[h>>2]=Mb(c[f>>2]|0)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=5){a=9;break}if((Lb(c[f>>2]|0,c[24+(c[g>>2]<<2)>>2]|0,c[h>>2]|0)|0)==0?(d[48+(d[(c[24+(c[g>>2]<<2)>>2]|0)+(c[h>>2]|0)>>0]|0)>>0]|0|0)==0:0){a=7;break}c[g>>2]=(c[g>>2]|0)+1}if((a|0)==7){c[b>>2]=1;h=c[b>>2]|0;i=e;return h|0}else if((a|0)==9){c[b>>2]=0;h=c[b>>2]|0;i=e;return h|0}return 0}function Lb(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+16|0;k=f+12|0;j=f+8|0;g=f+4|0;h=f;c[l>>2]=a;c[k>>2]=b;c[j>>2]=e;c[g>>2]=c[l>>2];c[h>>2]=c[k>>2];while(1){l=c[j>>2]|0;c[j>>2]=l+ -1;if((l|0)<=0){break}if((d[c[g>>2]>>0]|0|0)==0){break}if((d[696+(d[c[g>>2]>>0]|0)>>0]|0|0)!=(d[696+(d[c[h>>2]>>0]|0)>>0]|0|0)){break}c[g>>2]=(c[g>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+1}if((c[j>>2]|0)<0){l=0;i=f;return l|0}l=(d[696+(d[c[g>>2]>>0]|0)>>0]|0)-(d[696+(d[c[h>>2]>>0]|0)>>0]|0)|0;i=f;return l|0}function Mb(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;c[g>>2]=c[f>>2];if((c[f>>2]|0)==0){c[e>>2]=0;b=c[e>>2]|0;i=d;return b|0}while(1){b=c[g>>2]|0;if((a[c[g>>2]>>0]|0)==0){break}c[g>>2]=b+1}c[e>>2]=1073741823&b-(c[f>>2]|0);b=c[e>>2]|0;i=d;return b|0}function Nb(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;if((c[e>>2]|0)>=0&(c[e>>2]|0)<5){c[d>>2]=c[24+(c[e>>2]<<2)>>2];e=c[d>>2]|0;i=b;return e|0}else{c[d>>2]=0;e=c[d>>2]|0;i=b;return e|0}return 0}function Ob(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;if((c[h>>2]|0)<0|(c[h>>2]|0)>=10){c[g>>2]=Pb(14363)|0;a=c[g>>2]|0;i=f;return a|0}c[c[j>>2]>>2]=c[304+(c[h>>2]<<2)>>2];c[c[k>>2]>>2]=c[344+(c[h>>2]<<2)>>2];if((c[l>>2]|0)!=0){c[344+(c[h>>2]<<2)>>2]=c[304+(c[h>>2]<<2)>>2]}c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}function Pb(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+8|0;c[e>>2]=a;e=c[e>>2]|0;a=(rf()|0)+20|0;c[d>>2]=e;c[d+4>>2]=a;rc(21,3216,d);i=b;return 21}function Qb(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[d>>2]|0)+20>>2]|0)){break}c[f>>2]=c[(c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]<<4)+4>>2];if((c[f>>2]|0)!=0){c[(c[(c[f>>2]|0)+4>>2]|0)+4>>2]=c[c[f>>2]>>2]}c[e>>2]=(c[e>>2]|0)+1}i=b;return}function Rb(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[c[(c[b>>2]|0)+4>>2]>>2]|0}function Sb(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=ub[c[38560>>2]&31](c[d>>2]|0)|0;i=b;return a|0}function Tb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}nn(c[e>>2]|0,c[(c[f>>2]|0)+28>>2]|0);Wb(c[e>>2]|0,c[c[f>>2]>>2]|0);Wb(c[e>>2]|0,c[(c[f>>2]|0)+4>>2]|0);hn(c[e>>2]|0,c[(c[f>>2]|0)+12>>2]|0);jn(c[e>>2]|0,c[(c[f>>2]|0)+16>>2]|0);Wb(c[e>>2]|0,c[f>>2]|0);i=d;return}function Ub(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;l=f+4|0;k=f;c[g>>2]=a;c[h>>2]=d;if((c[h>>2]|0)==0){i=f;return}if(!((c[g>>2]|0)!=0?(c[(c[g>>2]|0)+512>>2]|0)!=0:0)){e=4}if((e|0)==4?(d=(c[h>>2]|0)+40|0,a=(b[d>>1]|0)+ -1<<16>>16,b[d>>1]=a,(a&65535|0)>0):0){i=f;return}c[j>>2]=c[(c[h>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break}c[l>>2]=c[(c[j>>2]|0)+20>>2];if(!((c[g>>2]|0)!=0?(c[(c[g>>2]|0)+512>>2]|0)!=0:0)){c[k>>2]=c[c[j>>2]>>2];d=(c[(c[j>>2]|0)+24>>2]|0)+24|0;a=c[k>>2]|0;$g(d,a,Mb(c[k>>2]|0)|0,0)|0}Qx(c[g>>2]|0,c[j>>2]|0);c[j>>2]=c[l>>2]}hy(c[g>>2]|0,c[h>>2]|0);Mx(c[g>>2]|0,c[h>>2]|0);Wb(c[g>>2]|0,c[c[h>>2]>>2]|0);Wb(c[g>>2]|0,c[(c[h>>2]|0)+20>>2]|0);en(c[g>>2]|0,c[(c[h>>2]|0)+12>>2]|0);dn(c[g>>2]|0,c[(c[h>>2]|0)+24>>2]|0);iy(c[g>>2]|0,c[h>>2]|0);Wb(c[g>>2]|0,c[h>>2]|0);i=f;return}function Vb(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;g=h+16|0;f=h+12|0;k=h+8|0;l=h+4|0;j=h;c[g>>2]=a;c[f>>2]=d;Qt(c[(c[f>>2]|0)+60>>2]|0,b[(c[f>>2]|0)+68>>1]|0);Qt(c[(c[f>>2]|0)+16>>2]|0,e[(c[f>>2]|0)+84>>1]<<1);c[k>>2]=c[(c[f>>2]|0)+192>>2];while(1){if((c[k>>2]|0)==0){break}c[l>>2]=c[(c[k>>2]|0)+24>>2];iC(c[g>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0);Wb(c[g>>2]|0,c[k>>2]|0);c[k>>2]=c[l>>2]}c[j>>2]=(b[(c[f>>2]|0)+70>>1]|0)-1;while(1){d=c[g>>2]|0;if((c[j>>2]|0)<0){break}Wb(d,c[(c[(c[f>>2]|0)+64>>2]|0)+(c[j>>2]<<2)>>2]|0);c[j>>2]=(c[j>>2]|0)+ -1}iC(d,c[(c[f>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+32>>2]|0);Wb(c[g>>2]|0,c[(c[f>>2]|0)+16>>2]|0);Wb(c[g>>2]|0,c[(c[f>>2]|0)+168>>2]|0);Wb(c[g>>2]|0,c[(c[f>>2]|0)+172>>2]|0);i=h;return}function Wb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}if((c[e>>2]|0)!=0){a=c[e>>2]|0;b=c[f>>2]|0;if((c[(c[e>>2]|0)+512>>2]|0)!=0){b=Yo(a,b)|0;a=c[(c[e>>2]|0)+512>>2]|0;c[a>>2]=(c[a>>2]|0)+b;i=d;return}if((Qm(a,b)|0)!=0){c[g>>2]=c[f>>2];c[c[g>>2]>>2]=c[(c[e>>2]|0)+264>>2];c[(c[e>>2]|0)+264>>2]=c[g>>2];a=(c[e>>2]|0)+244|0;c[a>>2]=(c[a>>2]|0)+ -1;i=d;return}}gc(c[f>>2]|0);i=d;return}function Xb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;f=b+8|0;e=b+4|0;g=b;c[f>>2]=a;c[e>>2]=0;c[g>>2]=Yb()|0;if((c[g>>2]|0)!=0){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}c[e>>2]=c[96];while(1){if((c[e>>2]|0)==0){break}if((c[f>>2]|0)==0){break}if((WD(c[f>>2]|0,c[(c[e>>2]|0)+16>>2]|0)|0)==0){break}c[e>>2]=c[(c[e>>2]|0)+12>>2]}c[d>>2]=c[e>>2];g=c[d>>2]|0;i=b;return g|0}function Yb(){var a=0,b=0,d=0,e=0,f=0;a=i;i=i+16|0;b=a+8|0;d=a+4|0;e=a;if((c[38736>>2]|0)!=0){c[b>>2]=0;f=c[b>>2]|0;i=a;return f|0}c[d>>2]=0;if((c[d>>2]|0)!=0){c[b>>2]=c[d>>2];f=c[b>>2]|0;i=a;return f|0}c[38744>>2]=1;if((c[38748>>2]|0)==0){c[d>>2]=sf()|0}if((((c[d>>2]|0)==0?(c[38748>>2]=1,(c[38760>>2]|0)==0):0)?(c[38760>>2]=8,(c[38516>>2]|0)!=0):0)?(c[38760>>2]|0)==0:0){c[d>>2]=7}if((c[d>>2]|0)==0){c[38756>>2]=(c[38756>>2]|0)+1}if((c[d>>2]|0)!=0){c[b>>2]=c[d>>2];f=c[b>>2]|0;i=a;return f|0}if((c[38736>>2]|0)==0?(c[38740>>2]|0)==0:0){c[e>>2]=1576;c[38740>>2]=1;f=(c[e>>2]|0)+0|0;e=f+92|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));tf();if((c[38752>>2]|0)==0){c[d>>2]=uf()|0}if((c[d>>2]|0)==0){c[38752>>2]=1;c[d>>2]=vf()|0}if((c[d>>2]|0)==0){wf(c[38716>>2]|0,c[38720>>2]|0,c[38724>>2]|0);c[38736>>2]=1}c[38740>>2]=0}c[38756>>2]=(c[38756>>2]|0)+ -1;if((c[38756>>2]|0)<=0){c[38760>>2]=0}c[b>>2]=c[d>>2];f=c[b>>2]|0;i=a;return f|0}function Zb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=Yb()|0;if((c[h>>2]|0)!=0){c[e>>2]=c[h>>2];a=c[e>>2]|0;i=d;return a|0}_b(c[f>>2]|0);b=c[96]|0;if((c[g>>2]|0)!=0|(c[96]|0)==0){c[(c[f>>2]|0)+12>>2]=b;c[96]=c[f>>2]}else{c[(c[f>>2]|0)+12>>2]=c[b+12>>2];c[(c[96]|0)+12>>2]=c[f>>2]}c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}function _b(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}if((c[96]|0)==(c[d>>2]|0)){c[96]=c[(c[d>>2]|0)+12>>2];i=b;return}if((c[96]|0)==0){i=b;return}c[e>>2]=c[96];while(1){if((c[(c[e>>2]|0)+12>>2]|0)!=0){f=(c[(c[e>>2]|0)+12>>2]|0)!=(c[d>>2]|0)}else{f=0}a=c[(c[e>>2]|0)+12>>2]|0;if(!f){break}c[e>>2]=a}if((a|0)!=(c[d>>2]|0)){i=b;return}c[(c[e>>2]|0)+12>>2]=c[(c[d>>2]|0)+12>>2];i=b;return}function $b(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function ac(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;k=f+16|0;j=f+12|0;g=f;h=f+8|0;c[k>>2]=a;c[j>>2]=b;b=g;c[b>>2]=d;c[b+4>>2]=e;c[408>>2]=c[k>>2];c[412>>2]=c[j>>2];d=g;b=c[d+4>>2]|0;a=400|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;c[h>>2]=ug(0)|0;a=g;b=c[a+4>>2]|0;if(!((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>0)){k=0;k=k&1;c[428>>2]=k;i=f;return 0}j=g;b=c[j+4>>2]|0;k=c[h>>2]|0;a=((k|0)<0)<<31>>31;k=(b|0)<(a|0)|((b|0)==(a|0)?(c[j>>2]|0)>>>0<=k>>>0:0);k=k&1;c[428>>2]=k;i=f;return 0}function bc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+48|0;e=d+24|0;g=d+16|0;f=d+8|0;h=d;j=d+32|0;k=g;c[k>>2]=a;c[k+4>>2]=b;c[j>>2]=Yb()|0;if((c[j>>2]|0)!=0){j=e;c[j>>2]=-1;c[j+4>>2]=-1;j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}a=400|0;j=c[a+4>>2]|0;k=f;c[k>>2]=c[a>>2];c[k+4>>2]=j;if((c[g+4>>2]|0)<0){a=f;k=c[a+4>>2]|0;j=e;c[j>>2]=c[a>>2];c[j+4>>2]=k;j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}k=g;j=c[k+4>>2]|0;if((j|0)>0|(j|0)==0&(c[k>>2]|0)>>>0>0){k=g;ac(2,0,c[k>>2]|0,c[k+4>>2]|0)|0}else{ac(0,0,0,0)|0}k=dc()|0;j=g;j=ZD(k|0,D|0,c[j>>2]|0,c[j+4>>2]|0)|0;k=h;c[k>>2]=j;c[k+4>>2]=D;k=h;j=c[k+4>>2]|0;if((j|0)>0|(j|0)==0&(c[k>>2]|0)>>>0>0){$b(c[h>>2]&2147483647)|0}a=f;k=c[a+4>>2]|0;j=e;c[j>>2]=c[a>>2];c[j+4>>2]=k;j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}function cc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f+8|0;c[f+12>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;c[g>>2]=e;$b(c[g>>2]|0)|0;i=f;return}function dc(){var a=0,b=0,d=0,e=0;b=i;i=i+16|0;e=b+12|0;a=b;Ob(0,e,b+8|0,0)|0;e=c[e>>2]|0;d=a;c[d>>2]=e;c[d+4>>2]=((e|0)<0)<<31>>31;D=c[a+4>>2]|0;i=b;return c[a>>2]|0}function ec(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;if((Yb()|0)!=0){c[b>>2]=0}else{c[b>>2]=fc(c[e>>2]|0)|0}i=d;return c[b>>2]|0}function fc(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;do{if(!((c[e>>2]|0)<=0|(c[e>>2]|0)>=2147483392)){if((c[9628]|0)!=0){tg(c[e>>2]|0,b)|0;break}else{c[b>>2]=ub[c[38548>>2]&31](c[e>>2]|0)|0;break}}else{c[b>>2]=0}}while(0);i=d;return c[b>>2]|0}function gc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}if((c[9628]|0)!=0){hc(0,0-(Sb(c[d>>2]|0)|0)|0);hc(9,-1);rb[c[38552>>2]&31](c[d>>2]|0);i=b;return}else{rb[c[38552>>2]&31](c[d>>2]|0);i=b;return}}function hc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;a=304+(c[e>>2]<<2)|0;c[a>>2]=(c[a>>2]|0)+(c[f>>2]|0);if((c[304+(c[e>>2]<<2)>>2]|0)<=(c[344+(c[e>>2]<<2)>>2]|0)){i=d;return}c[344+(c[e>>2]<<2)>>2]=c[304+(c[e>>2]<<2)>>2];i=d;return}function ic(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d+4|0;f=d;c[g>>2]=a;c[f>>2]=b;if((Yb()|0)!=0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}else{c[e>>2]=jc(c[g>>2]|0,c[f>>2]|0)|0;a=c[e>>2]|0;i=d;return a|0}return 0}function jc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;e=h+24|0;f=h+20|0;j=h+16|0;k=h+12|0;d=h+8|0;l=h+4|0;g=h;c[f>>2]=a;c[j>>2]=b;b=c[j>>2]|0;if((c[f>>2]|0)==0){c[e>>2]=fc(b)|0;a=c[e>>2]|0;i=h;return a|0}if((b|0)<=0){gc(c[f>>2]|0);c[e>>2]=0;a=c[e>>2]|0;i=h;return a|0}if((c[j>>2]|0)>=2147483392){c[e>>2]=0;a=c[e>>2]|0;i=h;return a|0}c[k>>2]=Sb(c[f>>2]|0)|0;c[d>>2]=ub[c[38564>>2]&31](c[j>>2]|0)|0;do{if((c[k>>2]|0)!=(c[d>>2]|0)){if((c[9628]|0)==0){c[g>>2]=zb[c[38556>>2]&63](c[f>>2]|0,c[d>>2]|0)|0;break}sg(5,c[j>>2]|0);c[l>>2]=(c[d>>2]|0)-(c[k>>2]|0);b=ug(0)|0;n=((b|0)<0)<<31>>31;m=400|0;a=c[l>>2]|0;a=ZD(c[m>>2]|0,c[m+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;m=D;if((n|0)>(m|0)|(n|0)==(m|0)&b>>>0>=a>>>0){vg(c[l>>2]|0)}c[g>>2]=zb[c[38556>>2]&63](c[f>>2]|0,c[d>>2]|0)|0;if((c[g>>2]|0)==0&(c[408>>2]|0)!=0){vg(c[j>>2]|0);c[g>>2]=zb[c[38556>>2]&63](c[f>>2]|0,c[d>>2]|0)|0}if((c[g>>2]|0)!=0){c[d>>2]=Sb(c[g>>2]|0)|0;hc(0,(c[d>>2]|0)-(c[k>>2]|0)|0)}}else{c[g>>2]=c[f>>2]}}while(0);c[e>>2]=c[g>>2];n=c[e>>2]|0;i=h;return n|0}function kc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+128|0;f=e+40|0;k=e+36|0;j=e+32|0;g=e+28|0;h=e;c[k>>2]=b;c[j>>2]=d;if((Yb()|0)!=0){c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}else{lc(h,e+44|0,70,1e9);a[h+24>>0]=2;mc(h,0,c[k>>2]|0,c[j>>2]|0);c[g>>2]=nc(h)|0;c[f>>2]=c[g>>2];b=c[f>>2]|0;i=e;return b|0}return 0}function lc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;h=g+12|0;l=g+8|0;k=g+4|0;j=g;c[h>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;b=c[l>>2]|0;c[(c[h>>2]|0)+4>>2]=b;c[(c[h>>2]|0)+8>>2]=b;c[c[h>>2]>>2]=0;c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+16>>2]=c[k>>2];c[(c[h>>2]|0)+20>>2]=c[j>>2];a[(c[h>>2]|0)+24>>0]=1;a[(c[h>>2]|0)+25>>0]=0;i=g;return}function mc(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0.0;m=i;i=i+272|0;Y=m+172|0;ra=m+168|0;q=m+164|0;z=m+160|0;p=m+156|0;J=m+152|0;A=m+148|0;K=m+144|0;G=m+140|0;o=m+136|0;r=m+264|0;s=m+263|0;t=m+262|0;u=m+261|0;v=m+260|0;w=m+259|0;B=m+258|0;C=m+257|0;n=m+256|0;F=m+255|0;x=m+254|0;ia=m+253|0;R=m+252|0;ma=m+32|0;Q=m+24|0;E=m+132|0;X=m+128|0;ja=m+124|0;H=m+120|0;T=m+116|0;W=m+112|0;j=m+108|0;S=m+16|0;Z=m+251|0;V=m+250|0;y=m+104|0;I=m+180|0;qa=m+8|0;pa=m+100|0;oa=m+96|0;na=m+179|0;ka=m+92|0;la=m+178|0;U=m;$=m+88|0;_=m+84|0;ea=m+80|0;ha=m+76|0;ca=m+72|0;da=m+68|0;ba=m+64|0;ga=m+60|0;fa=m+177|0;L=m+176|0;aa=m+56|0;M=m+52|0;N=m+48|0;O=m+44|0;P=m+40|0;c[Y>>2]=b;c[ra>>2]=e;c[q>>2]=f;c[z>>2]=g;a[F>>0]=0;c[y>>2]=0;c[J>>2]=0;if((c[ra>>2]|0)!=0){g=c[ra>>2]&2;a[x>>0]=g;if((g&255|0)!=0){b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[y>>2]=g}a[ia>>0]=c[ra>>2]&1}else{a[ia>>0]=0;a[x>>0]=0}a:while(1){g=a[c[q>>2]>>0]|0;c[p>>2]=g;if((g|0)==0){l=283;break}if((c[p>>2]|0)!=37){c[J>>2]=c[q>>2];do{g=(c[q>>2]|0)+1|0;c[q>>2]=g;g=a[g>>0]|0;c[p>>2]=g;if((g|0)==37){break}}while((c[p>>2]|0)!=0);Km(c[Y>>2]|0,c[J>>2]|0,(c[q>>2]|0)-(c[J>>2]|0)|0);if((c[p>>2]|0)==0){l=283;break}}g=(c[q>>2]|0)+1|0;c[q>>2]=g;g=a[g>>0]|0;c[p>>2]=g;if((g|0)==0){l=13;break}a[w>>0]=0;a[v>>0]=0;a[u>>0]=0;a[t>>0]=0;a[s>>0]=0;a[r>>0]=0;a[n>>0]=0;do{switch(c[p>>2]|0){case 45:{a[r>>0]=1;break};case 43:{a[s>>0]=1;break};case 32:{a[t>>0]=1;break};case 35:{a[u>>0]=1;break};case 33:{a[v>>0]=1;break};case 48:{a[w>>0]=1;break};default:{a[n>>0]=1}}if((a[n>>0]|0)!=0){break}g=(c[q>>2]|0)+1|0;c[q>>2]=g;g=a[g>>0]|0;c[p>>2]=g}while((g|0)!=0);c[o>>2]=0;b:do{if((c[p>>2]|0)==42){if((a[x>>0]|0)!=0){g=LD(c[y>>2]|0)|0;c[o>>2]=g}else{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[o>>2]=g}if((c[o>>2]|0)<0){a[r>>0]=1;c[o>>2]=0-(c[o>>2]|0)}g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0}else{while(1){if(!((c[p>>2]|0)>=48&(c[p>>2]|0)<=57)){break b}c[o>>2]=((c[o>>2]|0)*10|0)+(c[p>>2]|0)-48;g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0}}}while(0);c:do{if((c[p>>2]|0)==46){c[A>>2]=0;g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0;if((c[p>>2]|0)!=42){while(1){if(!((c[p>>2]|0)>=48&(c[p>>2]|0)<=57)){break c}c[A>>2]=((c[A>>2]|0)*10|0)+(c[p>>2]|0)-48;g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0}}if((a[x>>0]|0)!=0){g=LD(c[y>>2]|0)|0;c[A>>2]=g}else{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[A>>2]=g}if((c[A>>2]|0)<0){c[A>>2]=0-(c[A>>2]|0)}g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0}else{c[A>>2]=-1}}while(0);do{if((c[p>>2]|0)==108){a[B>>0]=1;g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0;if((c[p>>2]|0)==108){a[C>>0]=1;g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0;break}else{a[C>>0]=0;break}}else{a[C>>0]=0;a[B>>0]=0}}while(0);c[E>>2]=38264;a[F>>0]=0;c[G>>2]=0;while(1){if((c[G>>2]|0)>=23){break}ra=c[G>>2]|0;if((c[p>>2]|0)==(a[38264+((c[G>>2]|0)*6|0)>>0]|0)){l=53;break}c[G>>2]=ra+1}if((l|0)==53){l=0;c[E>>2]=38264+(ra*6|0);if((d[ia>>0]|0)==0?(a[(c[E>>2]|0)+2>>0]&2|0)!=0:0){l=283;break}a[F>>0]=a[(c[E>>2]|0)+3>>0]|0}c[H>>2]=0;d:do{switch(d[F>>0]|0){case 14:{a[C>>0]=0;a[B>>0]=1;l=59;break};case 1:case 16:{l=59;break};case 4:case 3:case 2:{if((a[x>>0]|0)!=0){h[Q>>3]=+MD(c[y>>2]|0)}else{g=c[z>>2]|0;b=c[g>>2]|0;c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];sa=+h[k>>3];c[g>>2]=b+8;h[Q>>3]=sa}if((c[A>>2]|0)<0){c[A>>2]=6}do{if(!(+h[Q>>3]<0.0)){if((a[s>>0]|0)!=0){a[R>>0]=43;break}if((a[t>>0]|0)!=0){a[R>>0]=32;break}else{a[R>>0]=0;break}}else{h[Q>>3]=-+h[Q>>3];a[R>>0]=45}}while(0);if((d[F>>0]|0)==4?(c[A>>2]|0)>0:0){c[A>>2]=(c[A>>2]|0)+ -1}c[G>>2]=c[A>>2];h[S>>3]=.5;while(1){if((c[G>>2]|0)<=0){break}c[G>>2]=(c[G>>2]|0)+ -1;h[S>>3]=+h[S>>3]*.1}if((d[F>>0]|0)==2){h[Q>>3]=+h[Q>>3]+ +h[S>>3]}c[T>>2]=0;if((Fw(+h[Q>>3])|0)!=0){c[J>>2]=38472;c[K>>2]=3;break d}if(+h[Q>>3]>0.0){h[U>>3]=1.0;while(1){if(!(+h[Q>>3]>=+h[U>>3]*1.0e+100)){break}if((c[T>>2]|0)>350){break}h[U>>3]=+h[U>>3]*1.0e+100;c[T>>2]=(c[T>>2]|0)+100}while(1){if(!(+h[Q>>3]>=+h[U>>3]*1.0e+64)){break}if((c[T>>2]|0)>350){break}h[U>>3]=+h[U>>3]*1.0e+64;c[T>>2]=(c[T>>2]|0)+64}while(1){if(!(+h[Q>>3]>=+h[U>>3]*1.0e8)){break}if((c[T>>2]|0)>350){break}h[U>>3]=+h[U>>3]*1.0e8;c[T>>2]=(c[T>>2]|0)+8}while(1){if(+h[Q>>3]>=+h[U>>3]*10.0){ra=(c[T>>2]|0)<=350}else{ra=0}sa=+h[U>>3];if(!ra){break}h[U>>3]=sa*10.0;c[T>>2]=(c[T>>2]|0)+1}h[Q>>3]=+h[Q>>3]/sa;while(1){if(!(+h[Q>>3]<1.0e-8)){break}h[Q>>3]=+h[Q>>3]*1.0e8;c[T>>2]=(c[T>>2]|0)-8}while(1){if(!(+h[Q>>3]<1.0)){break}h[Q>>3]=+h[Q>>3]*10.0;c[T>>2]=(c[T>>2]|0)+ -1}if((c[T>>2]|0)>350){do{if((a[R>>0]|0)!=45){if((a[R>>0]|0)==43){c[J>>2]=38488;break}else{c[J>>2]=38496;break}}else{c[J>>2]=38480}}while(0);c[K>>2]=Mb(c[J>>2]|0)|0;break d}}c[J>>2]=I;if((d[F>>0]|0)!=2?(h[Q>>3]=+h[Q>>3]+ +h[S>>3],+h[Q>>3]>=10.0):0){h[Q>>3]=+h[Q>>3]*.1;c[T>>2]=(c[T>>2]|0)+1}e:do{if((d[F>>0]|0)==4){a[V>>0]=((a[u>>0]|0)!=0^1)&1;do{if(!((c[T>>2]|0)<-4)){if((c[T>>2]|0)>(c[A>>2]|0)){break}c[A>>2]=(c[A>>2]|0)-(c[T>>2]|0);a[F>>0]=2;break e}}while(0);a[F>>0]=3}else{a[V>>0]=a[v>>0]|0}}while(0);if((d[F>>0]|0)==3){c[W>>2]=0}else{c[W>>2]=c[T>>2]}if((((c[W>>2]|0)>0?c[W>>2]|0:0)+(c[A>>2]|0)+(c[o>>2]|0)|0)>55?(g=fc(((c[W>>2]|0)>0?c[W>>2]|0:0)+(c[A>>2]|0)+(c[o>>2]|0)+15|0)|0,c[H>>2]=g,c[J>>2]=g,(c[J>>2]|0)==0):0){l=171;break a}c[X>>2]=c[J>>2];c[j>>2]=16+((d[v>>0]|0)*10|0);a[Z>>0]=((c[A>>2]|0)>0?1:0)|d[u>>0]|d[v>>0];if((a[R>>0]|0)!=0){b=a[R>>0]|0;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=b}f:do{if((c[W>>2]|0)<0){g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=48}else{while(1){if((c[W>>2]|0)<0){break f}b=ND(Q,j)|0;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=b;c[W>>2]=(c[W>>2]|0)+ -1}}}while(0);if((a[Z>>0]|0)!=0){g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=46}c[W>>2]=(c[W>>2]|0)+1;while(1){if((c[W>>2]|0)>=0){break}g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=48;c[A>>2]=(c[A>>2]|0)+ -1;c[W>>2]=(c[W>>2]|0)+1}while(1){g=c[A>>2]|0;c[A>>2]=g+ -1;if((g|0)<=0){break}b=ND(Q,j)|0;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=b}do{if((d[V>>0]|0)!=0){if((d[Z>>0]|0)==0){break}while(1){ra=(c[J>>2]|0)+ -1|0;if((a[(c[J>>2]|0)+ -1>>0]|0)!=48){break}c[J>>2]=ra;a[ra>>0]=0}if((a[ra>>0]|0)!=46){break}ra=c[J>>2]|0;if((a[v>>0]|0)!=0){c[J>>2]=ra+1;a[ra>>0]=48;break}else{g=ra+ -1|0;c[J>>2]=g;a[g>>0]=0;break}}}while(0);if((d[F>>0]|0)==3){ra=a[38424+(d[(c[E>>2]|0)+4>>0]|0)>>0]|0;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=ra;g=(c[T>>2]|0)<0;ra=c[J>>2]|0;c[J>>2]=ra+1;if(g){a[ra>>0]=45;c[T>>2]=0-(c[T>>2]|0)}else{a[ra>>0]=43}if((c[T>>2]|0)>=100){b=((c[T>>2]|0)/100|0)+48&255;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=b;c[T>>2]=(c[T>>2]|0)%100|0}g=((c[T>>2]|0)/10|0)+48&255;b=c[J>>2]|0;c[J>>2]=b+1;a[b>>0]=g;b=((c[T>>2]|0)%10|0)+48&255;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=b}a[c[J>>2]>>0]=0;c[K>>2]=(c[J>>2]|0)-(c[X>>2]|0);c[J>>2]=c[X>>2];if((d[w>>0]|0)==0){break d}if((a[r>>0]|0)!=0){break d}if((c[K>>2]|0)>=(c[o>>2]|0)){break d}c[_>>2]=(c[o>>2]|0)-(c[K>>2]|0);c[$>>2]=c[o>>2];while(1){if((c[$>>2]|0)<(c[_>>2]|0)){break}a[(c[J>>2]|0)+(c[$>>2]|0)>>0]=a[(c[J>>2]|0)+((c[$>>2]|0)-(c[_>>2]|0))>>0]|0;c[$>>2]=(c[$>>2]|0)+ -1}c[$>>2]=(a[R>>0]|0)!=0&1;while(1){g=c[_>>2]|0;c[_>>2]=g+ -1;if((g|0)==0){break}g=c[$>>2]|0;c[$>>2]=g+1;a[(c[J>>2]|0)+g>>0]=48}c[K>>2]=c[o>>2];break};case 5:{if((a[x>>0]|0)==0){b=c[(c[Y>>2]|0)+12>>2]|0;e=c[z>>2]|0;f=c[e>>2]|0;g=c[f>>2]|0;c[e>>2]=f+4;c[g>>2]=b}c[o>>2]=0;c[K>>2]=0;break};case 8:{a[I>>0]=37;c[J>>2]=I;c[K>>2]=1;break};case 9:{if((a[x>>0]|0)!=0){c[J>>2]=OD(c[y>>2]|0)|0;if((c[J>>2]|0)!=0){ra=a[c[J>>2]>>0]|0}else{ra=0}c[p>>2]=ra}else{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[p>>2]=g}a[I>>0]=c[p>>2];if((c[A>>2]|0)>=0){c[G>>2]=1;while(1){if((c[G>>2]|0)>=(c[A>>2]|0)){break}a[I+(c[G>>2]|0)>>0]=c[p>>2];c[G>>2]=(c[G>>2]|0)+1}c[K>>2]=c[A>>2]}else{c[K>>2]=1}c[J>>2]=I;break};case 7:case 6:{if((a[x>>0]|0)!=0){c[J>>2]=OD(c[y>>2]|0)|0}else{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[J>>2]=g}if((c[J>>2]|0)!=0){if((d[F>>0]|0)==7?(a[x>>0]|0)==0:0){c[H>>2]=c[J>>2]}}else{c[J>>2]=1472}if((c[A>>2]|0)<0){c[K>>2]=Mb(c[J>>2]|0)|0;break d}c[K>>2]=0;while(1){if((c[K>>2]|0)>=(c[A>>2]|0)){break d}if((a[(c[J>>2]|0)+(c[K>>2]|0)>>0]|0)==0){break d}c[K>>2]=(c[K>>2]|0)+1}};case 15:case 11:case 10:{a[L>>0]=(d[F>>0]|0)==15?34:39;if((a[x>>0]|0)!=0){c[aa>>2]=OD(c[y>>2]|0)|0}else{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[aa>>2]=g}c[ba>>2]=(c[aa>>2]|0)==0&1;if((c[ba>>2]|0)!=0){c[aa>>2]=(d[F>>0]|0)==11?9744:38504}c[ca>>2]=c[A>>2];c[da>>2]=0;c[ea>>2]=0;while(1){if((c[ca>>2]|0)==0){break}g=a[(c[aa>>2]|0)+(c[ea>>2]|0)>>0]|0;a[fa>>0]=g;if((g<<24>>24|0)==0){break}if((a[fa>>0]|0)==(a[L>>0]|0)){c[da>>2]=(c[da>>2]|0)+1}c[ea>>2]=(c[ea>>2]|0)+1;c[ca>>2]=(c[ca>>2]|0)+ -1}if((c[ba>>2]|0)!=0){ra=0}else{ra=(d[F>>0]|0)==11}c[ga>>2]=ra&1;c[da>>2]=(c[da>>2]|0)+((c[ea>>2]|0)+1+(c[ga>>2]<<1));if((c[da>>2]|0)>70){g=fc(c[da>>2]|0)|0;c[H>>2]=g;c[J>>2]=g;if((c[J>>2]|0)==0){l=255;break a}}else{c[J>>2]=I}c[ha>>2]=0;if((c[ga>>2]|0)!=0){b=a[L>>0]|0;g=c[ha>>2]|0;c[ha>>2]=g+1;a[(c[J>>2]|0)+g>>0]=b}c[ca>>2]=c[ea>>2];c[ea>>2]=0;while(1){if((c[ea>>2]|0)>=(c[ca>>2]|0)){break}b=a[(c[aa>>2]|0)+(c[ea>>2]|0)>>0]|0;a[fa>>0]=b;g=c[ha>>2]|0;c[ha>>2]=g+1;a[(c[J>>2]|0)+g>>0]=b;if((a[fa>>0]|0)==(a[L>>0]|0)){b=a[fa>>0]|0;g=c[ha>>2]|0;c[ha>>2]=g+1;a[(c[J>>2]|0)+g>>0]=b}c[ea>>2]=(c[ea>>2]|0)+1}if((c[ga>>2]|0)!=0){b=a[L>>0]|0;g=c[ha>>2]|0;c[ha>>2]=g+1;a[(c[J>>2]|0)+g>>0]=b}a[(c[J>>2]|0)+(c[ha>>2]|0)>>0]=0;c[K>>2]=c[ha>>2];break};case 12:{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[M>>2]=g;if((c[M>>2]|0)!=0?(c[(c[M>>2]|0)+4>>2]|0)!=0:0){Km(c[Y>>2]|0,c[c[M>>2]>>2]|0,c[(c[M>>2]|0)+4>>2]|0)}c[o>>2]=0;c[K>>2]=0;break};case 13:{e=c[z>>2]|0;g=c[e>>2]|0;b=c[g>>2]|0;c[e>>2]=g+4;c[N>>2]=b;b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[O>>2]=g;c[P>>2]=(c[N>>2]|0)+8+((c[O>>2]|0)*72|0);if((c[(c[P>>2]|0)+4>>2]|0)!=0){as(c[Y>>2]|0,c[(c[P>>2]|0)+4>>2]|0);Km(c[Y>>2]|0,19024,1)}as(c[Y>>2]|0,c[(c[P>>2]|0)+8>>2]|0);c[o>>2]=0;c[K>>2]=0;break};default:{l=283;break a}}}while(0);if((l|0)==59){l=0;ra=(a[x>>0]|0)!=0;do{if((a[(c[E>>2]|0)+2>>0]&1|0)!=0){do{if(!ra){ra=c[z>>2]|0;if((a[C>>0]|0)!=0){g=c[ra>>2]|0;b=g;e=c[b>>2]|0;b=c[b+4>>2]|0;c[ra>>2]=g+8;g=qa;c[g>>2]=e;c[g+4>>2]=b;break}else{g=c[ra>>2]|0;b=c[g>>2]|0;c[ra>>2]=g+4;g=qa;c[g>>2]=b;c[g+4>>2]=((b|0)<0)<<31>>31;break}}else{b=LD(c[y>>2]|0)|0;g=qa;c[g>>2]=b;c[g+4>>2]=D}}while(0);ra=qa;f=c[ra>>2]|0;ra=c[ra+4>>2]|0;if((c[qa+4>>2]|0)<0){if((f|0)==0&(ra|0)==-2147483648){g=ma;c[g>>2]=0;c[g+4>>2]=-2147483648}else{b=qa;b=ZD(0,0,c[b>>2]|0,c[b+4>>2]|0)|0;g=ma;c[g>>2]=b;c[g+4>>2]=D}a[R>>0]=45;break}g=ma;c[g>>2]=f;c[g+4>>2]=ra;if((a[s>>0]|0)!=0){a[R>>0]=43;break}if((a[t>>0]|0)!=0){a[R>>0]=32;break}else{a[R>>0]=0;break}}else{do{if(!ra){ra=c[z>>2]|0;if((a[C>>0]|0)!=0){g=c[ra>>2]|0;b=g;e=c[b>>2]|0;b=c[b+4>>2]|0;c[ra>>2]=g+8;g=ma;c[g>>2]=e;c[g+4>>2]=b;break}else{g=c[ra>>2]|0;b=c[g>>2]|0;c[ra>>2]=g+4;g=ma;c[g>>2]=b;c[g+4>>2]=0;break}}else{b=LD(c[y>>2]|0)|0;g=ma;c[g>>2]=b;c[g+4>>2]=D}}while(0);a[R>>0]=0}}while(0);g=ma;if((c[g>>2]|0)==0&(c[g+4>>2]|0)==0){a[u>>0]=0}if((d[w>>0]|0)!=0?(c[A>>2]|0)<((c[o>>2]|0)-((a[R>>0]|0)!=0&1)|0):0){c[A>>2]=(c[o>>2]|0)-((a[R>>0]|0)!=0&1)}if((c[A>>2]|0)>=60){c[ja>>2]=(c[A>>2]|0)+10;g=fc(c[ja>>2]|0)|0;c[H>>2]=g;c[X>>2]=g;if((c[X>>2]|0)==0){l=89;break}}else{c[ja>>2]=70;c[X>>2]=I}c[J>>2]=(c[X>>2]|0)+((c[ja>>2]|0)-1);if((d[F>>0]|0)==16){g=ma;g=nE(c[g>>2]|0,c[g+4>>2]|0,10,0)|0;c[pa>>2]=g;if(!((c[pa>>2]|0)<4?(g=ma,g=mE(c[g>>2]|0,c[g+4>>2]|0,10,0)|0,g=nE(g|0,D|0,10,0)|0,!((g|0)==1&(D|0)==0)):0)){c[pa>>2]=0}g=a[(c[pa>>2]<<1)+38409>>0]|0;b=(c[J>>2]|0)+ -1|0;c[J>>2]=b;a[b>>0]=g;b=a[38408+(c[pa>>2]<<1)>>0]|0;g=(c[J>>2]|0)+ -1|0;c[J>>2]=g;a[g>>0]=b}c[oa>>2]=38424+(d[(c[E>>2]|0)+4>>0]|0);a[na>>0]=a[(c[E>>2]|0)+1>>0]|0;do{g=ma;g=nE(c[g>>2]|0,c[g+4>>2]|0,d[na>>0]|0,0)|0;g=a[(c[oa>>2]|0)+g>>0]|0;b=(c[J>>2]|0)+ -1|0;c[J>>2]=b;a[b>>0]=g;b=ma;b=mE(c[b>>2]|0,c[b+4>>2]|0,d[na>>0]|0,0)|0;g=ma;c[g>>2]=b;c[g+4>>2]=D;g=ma;b=c[g+4>>2]|0}while(b>>>0>0|(b|0)==0&(c[g>>2]|0)>>>0>0);c[K>>2]=(c[X>>2]|0)+((c[ja>>2]|0)-1)-(c[J>>2]|0);c[G>>2]=(c[A>>2]|0)-(c[K>>2]|0);while(1){if((c[G>>2]|0)<=0){break}g=(c[J>>2]|0)+ -1|0;c[J>>2]=g;a[g>>0]=48;c[G>>2]=(c[G>>2]|0)+ -1}if((a[R>>0]|0)!=0){b=a[R>>0]|0;g=(c[J>>2]|0)+ -1|0;c[J>>2]=g;a[g>>0]=b}g:do{if((d[u>>0]|0)!=0?(d[(c[E>>2]|0)+5>>0]|0)!=0:0){c[ka>>2]=38464+(d[(c[E>>2]|0)+5>>0]|0);while(1){g=a[c[ka>>2]>>0]|0;a[la>>0]=g;if((g<<24>>24|0)==0){break g}b=a[la>>0]|0;g=(c[J>>2]|0)+ -1|0;c[J>>2]=g;a[g>>0]=b;c[ka>>2]=(c[ka>>2]|0)+1}}}while(0);c[K>>2]=(c[X>>2]|0)+((c[ja>>2]|0)-1)-(c[J>>2]|0)}c[o>>2]=(c[o>>2]|0)-(c[K>>2]|0);if((c[o>>2]|0)>0?(a[r>>0]|0)==0:0){PD(c[Y>>2]|0,c[o>>2]|0)}Km(c[Y>>2]|0,c[J>>2]|0,c[K>>2]|0);if((c[o>>2]|0)>0?(d[r>>0]|0)!=0:0){PD(c[Y>>2]|0,c[o>>2]|0)}if((c[H>>2]|0)!=0){gc(c[H>>2]|0)}c[q>>2]=(c[q>>2]|0)+1}if((l|0)==13){Km(c[Y>>2]|0,38256,1);i=m;return}else if((l|0)==89){Nm(c[Y>>2]|0,1);i=m;return}else if((l|0)==171){Nm(c[Y>>2]|0,1);i=m;return}else if((l|0)==255){Nm(c[Y>>2]|0,1);i=m;return}else if((l|0)==283){i=m;return}}function nc(b){b=b|0;var e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=b;do{if(((c[(c[e>>2]|0)+8>>2]|0)!=0?(a[(c[(c[e>>2]|0)+8>>2]|0)+(c[(c[e>>2]|0)+12>>2]|0)>>0]=0,(d[(c[e>>2]|0)+24>>0]|0|0)!=0):0)?(c[(c[e>>2]|0)+8>>2]|0)==(c[(c[e>>2]|0)+4>>2]|0):0){b=c[e>>2]|0;if((d[(c[e>>2]|0)+24>>0]|0|0)==1){b=Le(c[b>>2]|0,(c[(c[e>>2]|0)+12>>2]|0)+1|0)|0;c[(c[e>>2]|0)+8>>2]=b}else{b=ec((c[b+12>>2]|0)+1|0)|0;c[(c[e>>2]|0)+8>>2]=b}b=c[e>>2]|0;if((c[(c[e>>2]|0)+8>>2]|0)!=0){dE(c[b+8>>2]|0,c[(c[e>>2]|0)+4>>2]|0,(c[(c[e>>2]|0)+12>>2]|0)+1|0)|0;break}else{Nm(b,1);break}}}while(0);i=f;return c[(c[e>>2]|0)+8>>2]|0}function oc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;e=d+28|0;h=d+24|0;g=d+8|0;f=d;c[h>>2]=a;if((Yb()|0)!=0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}else{c[g>>2]=b;c[f>>2]=kc(c[h>>2]|0,g)|0;c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}return 0}function pc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+48|0;h=l+44|0;m=l+40|0;n=l+36|0;g=l+32|0;k=l+28|0;j=l;c[m>>2]=b;c[n>>2]=d;c[g>>2]=e;c[k>>2]=f;f=c[n>>2]|0;if((c[m>>2]|0)<=0){c[h>>2]=f;n=c[h>>2]|0;i=l;return n|0}else{lc(j,f,c[m>>2]|0,0);a[j+24>>0]=0;mc(j,0,c[g>>2]|0,c[k>>2]|0);c[h>>2]=nc(j)|0;n=c[h>>2]|0;i=l;return n|0}return 0}function qc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;l=g+28|0;k=g+24|0;j=g+20|0;f=g+16|0;h=g;c[l>>2]=a;c[k>>2]=b;c[j>>2]=d;c[h>>2]=e;c[f>>2]=pc(c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,h)|0;i=g;return c[f>>2]|0}function rc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+32|0;g=e+20|0;h=e+16|0;f=e;c[g>>2]=a;c[h>>2]=b;if((c[38764>>2]|0)==0){i=e;return}c[f>>2]=d;sc(c[g>>2]|0,c[h>>2]|0,f);i=e;return}function sc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+256|0;j=f+36|0;k=f+32|0;g=f+28|0;h=f;c[j>>2]=b;c[k>>2]=d;c[g>>2]=e;lc(h,f+40|0,210,0);a[h+24>>0]=0;mc(h,0,c[k>>2]|0,c[g>>2]|0);g=c[38764>>2]|0;e=c[38768>>2]|0;d=c[j>>2]|0;b=nc(h)|0;vb[g&63](e,d,b);i=f;return}function tc(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+288|0;j=f+12|0;m=f+8|0;g=f+272|0;h=f+4|0;k=f;l=f+16|0;c[j>>2]=b;c[m>>2]=e;c[h>>2]=c[m>>2];if((c[j>>2]|0)<=0){a[432]=0;i=f;return}if((a[432]|0)==0){a[434>>0]=0;a[433>>0]=0;uc(Xb(0)|0,256,l)|0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=256){break}a[(c[k>>2]|0)+435>>0]=c[k>>2];c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=256){break}a[434>>0]=(d[434>>0]|0)+((d[(c[k>>2]|0)+435>>0]|0)+(a[l+(c[k>>2]|0)>>0]|0));a[g>>0]=a[(d[434>>0]|0)+435>>0]|0;a[(d[434>>0]|0)+435>>0]=a[(c[k>>2]|0)+435>>0]|0;a[(c[k>>2]|0)+435>>0]=a[g>>0]|0;c[k>>2]=(c[k>>2]|0)+1}a[432]=1}do{a[433>>0]=(a[433>>0]|0)+1<<24>>24;a[g>>0]=a[(d[433>>0]|0)+435>>0]|0;a[434>>0]=(d[434>>0]|0)+(d[g>>0]|0);a[(d[433>>0]|0)+435>>0]=a[(d[434>>0]|0)+435>>0]|0;a[(d[434>>0]|0)+435>>0]=a[g>>0]|0;a[g>>0]=(d[g>>0]|0)+(d[(d[433>>0]|0)+435>>0]|0);b=a[(d[g>>0]|0)+435>>0]|0;m=c[h>>2]|0;c[h>>2]=m+1;a[m>>0]=b;m=(c[j>>2]|0)+ -1|0;c[j>>2]=m}while((m|0)!=0);i=f;return}function uc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=pb[c[(c[h>>2]|0)+56>>2]&15](c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function vc(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;h=e+8|0;g=e+4|0;f=e;c[j>>2]=a;c[h>>2]=b;c[g>>2]=c[j>>2];c[f>>2]=c[h>>2];while(1){if((d[c[g>>2]>>0]|0|0)!=0){a=(d[696+(d[c[g>>2]>>0]|0)>>0]|0|0)==(d[696+(d[c[f>>2]>>0]|0)>>0]|0|0)}else{a=0}b=c[g>>2]|0;if(!a){break}c[g>>2]=b+1;c[f>>2]=(c[f>>2]|0)+1}i=e;return(d[696+(d[b>>0]|0)>>0]|0)-(d[696+(d[c[f>>2]>>0]|0)>>0]|0)|0}function wc(){var a=0,b=0;a=i;i=i+16|0;b=a;c[b>>2]=0;while(1){if(!((c[b>>2]|0)>>>0<4)){break}Zb(952+((c[b>>2]|0)*88|0)|0,(c[b>>2]|0)==0&1)|0;c[b>>2]=(c[b>>2]|0)+1}i=a;return 0}function xc(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;q=i;i=i+624|0;p=q+92|0;A=q+88|0;C=q+84|0;B=q+80|0;k=q+76|0;H=q+72|0;s=q+68|0;r=q+64|0;t=q+60|0;j=q+56|0;F=q+52|0;n=q+48|0;D=q+44|0;w=q+40|0;G=q+36|0;v=q+32|0;o=q+28|0;u=q+24|0;E=q+20|0;m=q+96|0;z=q+16|0;l=q+12|0;x=q+8|0;y=q+4|0;g=q;c[A>>2]=a;c[C>>2]=b;c[B>>2]=d;c[k>>2]=e;c[H>>2]=f;c[s>>2]=c[B>>2];c[r>>2]=-1;c[t>>2]=0;c[j>>2]=c[k>>2]&-256;c[n>>2]=0;c[D>>2]=0;c[w>>2]=c[k>>2]&16;c[G>>2]=c[k>>2]&8;c[v>>2]=c[k>>2]&4;c[o>>2]=c[k>>2]&1;c[u>>2]=c[k>>2]&2;if((c[v>>2]|0)!=0){if((c[j>>2]|0)==16384|(c[j>>2]|0)==2048){f=1}else{f=(c[j>>2]|0)==524288}}else{f=0}c[E>>2]=f&1;c[z>>2]=c[C>>2];a=c[9498]|0;if((a|0)!=(Na()|0)){c[9498]=Na()|0;tc(0,0)}e=(c[s>>2]|0)+0|0;f=e+44|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));f=c[z>>2]|0;do{if((c[j>>2]|0)!=256){if((f|0)==0){c[n>>2]=jD(514,m)|0;if((c[n>>2]|0)==0){c[z>>2]=m;break}c[p>>2]=c[n>>2];a=c[p>>2]|0;i=q;return a|0}}else{c[l>>2]=wD(f,c[k>>2]|0)|0;if((c[l>>2]|0)==0){c[l>>2]=ec(12)|0;if((c[l>>2]|0)==0){c[p>>2]=7;a=c[p>>2]|0;i=q;return a|0}}else{c[r>>2]=c[c[l>>2]>>2]}c[(c[s>>2]|0)+28>>2]=c[l>>2]}}while(0);if((c[o>>2]|0)!=0){c[t>>2]=c[t>>2]}if((c[u>>2]|0)!=0){c[t>>2]=c[t>>2]|2}if((c[v>>2]|0)!=0){c[t>>2]=c[t>>2]|64}if((c[w>>2]|0)!=0){c[t>>2]=c[t>>2]|131200}c[t>>2]=c[t>>2];do{if((c[r>>2]|0)<0){c[n>>2]=xD(c[z>>2]|0,c[k>>2]|0,x,y,g)|0;if((c[n>>2]|0)!=0){c[p>>2]=c[n>>2];a=c[p>>2]|0;i=q;return a|0}c[r>>2]=cD(c[z>>2]|0,c[t>>2]|0,c[x>>2]|0)|0;if((((c[r>>2]|0)<0?(c[(ab()|0)>>2]|0)!=21:0)?(c[u>>2]|0)!=0:0)?(c[w>>2]|0)==0:0){c[k>>2]=c[k>>2]&-7;c[t>>2]=c[t>>2]&-67;c[k>>2]=c[k>>2]|1;c[t>>2]=c[t>>2];c[o>>2]=1;c[r>>2]=cD(c[z>>2]|0,c[t>>2]|0,c[x>>2]|0)|0}if((c[r>>2]|0)<0){a=Cj(29678)|0;c[n>>2]=ZC(a,37408,c[z>>2]|0,29678)|0;break}if((c[k>>2]&526336|0)!=0){pb[c[37308>>2]&15](c[r>>2]|0,c[y>>2]|0,c[g>>2]|0)|0;h=36}else{h=36}}else{h=36}}while(0);if((h|0)==36){if((c[H>>2]|0)!=0){c[c[H>>2]>>2]=c[k>>2]}if((c[(c[s>>2]|0)+28>>2]|0)!=0){c[c[(c[s>>2]|0)+28>>2]>>2]=c[r>>2];c[(c[(c[s>>2]|0)+28>>2]|0)+4>>2]=c[k>>2]}if((c[G>>2]|0)!=0){ub[c[37260>>2]&31](c[z>>2]|0)|0}c[F>>2]=(c[j>>2]|0)!=256&1;if((c[G>>2]|0)!=0){c[D>>2]=c[D>>2]|32}if((c[o>>2]|0)!=0){c[D>>2]=c[D>>2]|2}if((c[F>>2]|0)!=0){c[D>>2]=c[D>>2]|128}if((c[E>>2]|0)!=0){c[D>>2]=c[D>>2]|8}if((c[k>>2]&64|0)!=0){c[D>>2]=c[D>>2]|64}c[n>>2]=yD(c[A>>2]|0,c[r>>2]|0,c[B>>2]|0,c[C>>2]|0,c[D>>2]|0)|0}if((c[n>>2]|0)!=0){gc(c[(c[s>>2]|0)+28>>2]|0)}c[p>>2]=c[n>>2];a=c[p>>2]|0;i=q;return a|0}function yc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;f=g+20|0;h=g+12|0;k=g+8|0;e=g+4|0;j=g;c[g+16>>2]=a;c[h>>2]=b;c[k>>2]=d;c[e>>2]=0;if((ub[c[37260>>2]&31](c[h>>2]|0)|0)==-1){if((c[(ab()|0)>>2]|0)==2){c[e>>2]=5898}else{c[e>>2]=ZC(2570,37544,c[h>>2]|0,29806)|0}c[f>>2]=c[e>>2];a=c[f>>2]|0;i=g;return a|0}do{if((c[k>>2]&1|0)!=0){c[e>>2]=zb[c[37272>>2]&63](c[h>>2]|0,j)|0;if((c[e>>2]|0)!=0){if((c[e>>2]|0)!=14){break}c[e>>2]=0;break}if(($a(c[j>>2]|0)|0)!=0){c[e>>2]=ZC(1290,38024,c[h>>2]|0,29821)|0}YC(0,c[j>>2]|0,29823)}}while(0);c[f>>2]=c[e>>2];a=c[f>>2]|0;i=g;return a|0}function zc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+96|0;g=k+88|0;l=k+84|0;j=k+80|0;f=k+76|0;h=k;c[k+92>>2]=a;c[g>>2]=b;c[l>>2]=d;c[j>>2]=e;c[f>>2]=0;e=c[l>>2]|0;if((e|0)==2){c[f>>2]=4}else if((e|0)==0){c[f>>2]=0}else if((e|0)==1){c[f>>2]=6}a=(zb[c[37092>>2]&63](c[g>>2]|0,c[f>>2]|0)|0)==0&1;c[c[j>>2]>>2]=a;if((c[l>>2]|0)!=0){i=k;return 0}if((c[c[j>>2]>>2]|0)==0){i=k;return 0}if(0!=(zb[c[37116>>2]&63](c[g>>2]|0,h)|0)){i=k;return 0}if((c[h+36>>2]|0)!=0){i=k;return 0}c[c[j>>2]>>2]=0;i=k;return 0}function Ac(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h;l=h+24|0;k=h+16|0;m=h+12|0;g=h+8|0;n=h+4|0;c[h+20>>2]=b;c[k>>2]=d;c[m>>2]=e;c[g>>2]=f;a[(c[g>>2]|0)+((c[m>>2]|0)-1)>>0]=0;do{if((a[c[k>>2]>>0]|0)==47){d=c[m>>2]|0;b=c[g>>2]|0;c[j>>2]=c[k>>2];qc(d,b,1456,j)|0}else{if((zb[c[37104>>2]&63](c[g>>2]|0,(c[m>>2]|0)-1|0)|0)!=0){c[n>>2]=aE(c[g>>2]|0)|0;d=(c[m>>2]|0)-(c[n>>2]|0)|0;b=(c[g>>2]|0)+(c[n>>2]|0)|0;c[j>>2]=c[k>>2];qc(d,b,38016,j)|0;break}b=Cj(29908)|0;c[l>>2]=ZC(b,37416,c[k>>2]|0,29908)|0;b=c[l>>2]|0;i=h;return b|0}}while(0);c[l>>2]=0;b=c[l>>2]|0;i=h;return b|0}function Bc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;k=f+8|0;l=f+4|0;j=f;c[f+20>>2]=b;c[g>>2]=d;c[h>>2]=e;_D(c[h>>2]|0,0,c[g>>2]|0)|0;c[9498]=Na()|0;c[k>>2]=cD(38e3,0,0)|0;if((c[k>>2]|0)<0){hb(j|0)|0;b=c[h>>2]|0;a[b+0>>0]=a[j+0>>0]|0;a[b+1>>0]=a[j+1>>0]|0;a[b+2>>0]=a[j+2>>0]|0;a[b+3>>0]=a[j+3>>0]|0;b=(c[h>>2]|0)+4|0;a[b+0>>0]=a[37992>>0]|0;a[b+1>>0]=a[37993>>0]|0;a[b+2>>0]=a[37994>>0]|0;a[b+3>>0]=a[37995>>0]|0;c[g>>2]=8;b=c[g>>2]|0;i=f;return b|0}do{c[l>>2]=pb[c[37164>>2]&15](c[k>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;if((c[l>>2]|0)>=0){break}}while((c[(ab()|0)>>2]|0)==4);YC(0,c[k>>2]|0,30013);b=c[g>>2]|0;i=f;return b|0}function Cc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;f=e+4|0;d=e;c[e+8>>2]=a;c[f>>2]=b;c[d>>2]=((c[f>>2]|0)+999999|0)/1e6|0;ta(c[d>>2]|0)|0;i=e;return(c[d>>2]|0)*1e6|0}function Dc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+32|0;f=e+12|0;g=e;d=e+8|0;c[e+16>>2]=a;c[f>>2]=b;a=g;c[a>>2]=0;c[a+4>>2]=0;c[d>>2]=Fc(0,g)|0;a=g;h[c[f>>2]>>3]=(+((c[a>>2]|0)>>>0)+4294967296.0*+(c[a+4>>2]|0))/864.0e5;i=e;return c[d>>2]|0}function Ec(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;i=i+16|0;c[e+8>>2]=a;c[e+4>>2]=b;c[e>>2]=d;i=e;return 0}function Fc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;f=d+12|0;e=d+8|0;g=d;c[d+16>>2]=a;c[f>>2]=b;c[e>>2]=0;if((Wa(g|0,0)|0)==0){a=c[g>>2]|0;a=lE(1e3,0,a|0,((a|0)<0)<<31>>31|0)|0;a=bE(1045635584,49096,a|0,D|0)|0;g=(c[g+4>>2]|0)/1e3|0;g=bE(a|0,D|0,g|0,((g|0)<0)<<31>>31|0)|0;a=c[f>>2]|0;c[a>>2]=g;c[a+4>>2]=D;a=c[e>>2]|0;i=d;return a|0}else{c[e>>2]=1;a=c[e>>2]|0;i=d;return a|0}return 0}function Gc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;k=g+12|0;j=g+8|0;h=g+4|0;f=g;c[g+16>>2]=a;c[k>>2]=b;c[j>>2]=d;c[f>>2]=12;if((c[k>>2]|0)==0){c[f>>2]=0;c[h>>2]=0;while(1){if(!((c[h>>2]|0)>>>0<25)){break}if((c[37072+((c[h>>2]|0)*12|0)>>2]|0)!=0){c[37068+((c[h>>2]|0)*12|0)>>2]=c[37072+((c[h>>2]|0)*12|0)>>2]}c[h>>2]=(c[h>>2]|0)+1}a=c[f>>2]|0;i=g;return a|0}c[h>>2]=0;while(1){if(!((c[h>>2]|0)>>>0<25)){e=16;break}a=(WD(c[k>>2]|0,c[37064+((c[h>>2]|0)*12|0)>>2]|0)|0)==0;d=c[h>>2]|0;if(a){break}c[h>>2]=d+1}if((e|0)==16){a=c[f>>2]|0;i=g;return a|0}if((c[37072+(d*12|0)>>2]|0)==0){c[37072+((c[h>>2]|0)*12|0)>>2]=c[37068+((c[h>>2]|0)*12|0)>>2]}c[f>>2]=0;if((c[j>>2]|0)==0){c[j>>2]=c[37072+((c[h>>2]|0)*12|0)>>2]}c[37068+((c[h>>2]|0)*12|0)>>2]=c[j>>2];a=c[f>>2]|0;i=g;return a|0}function Hc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+12|0;f=e+4|0;g=e;c[e+8>>2]=a;c[f>>2]=b;c[g>>2]=0;while(1){if(!((c[g>>2]|0)>>>0<25)){f=6;break}a=(WD(c[f>>2]|0,c[37064+((c[g>>2]|0)*12|0)>>2]|0)|0)==0;b=c[g>>2]|0;if(a){f=4;break}c[g>>2]=b+1}if((f|0)==4){c[d>>2]=c[37068+(b*12|0)>>2];a=c[d>>2]|0;i=e;return a|0}else if((f|0)==6){c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}return 0}function Ic(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+12|0;g=e+4|0;f=e;c[e+8>>2]=a;c[g>>2]=b;c[f>>2]=-1;a:do{if((c[g>>2]|0)!=0){c[f>>2]=0;while(1){if((c[f>>2]|0)>=24){break a}if((WD(c[g>>2]|0,c[37064+((c[f>>2]|0)*12|0)>>2]|0)|0)==0){break a}c[f>>2]=(c[f>>2]|0)+1}}}while(0);c[f>>2]=(c[f>>2]|0)+1;while(1){if((c[f>>2]|0)>=25){f=11;break}b=c[f>>2]|0;if((c[37068+((c[f>>2]|0)*12|0)>>2]|0)!=0){f=9;break}c[f>>2]=b+1}if((f|0)==9){c[d>>2]=c[37064+(b*12|0)>>2];a=c[d>>2]|0;i=e;return a|0}else if((f|0)==11){c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}return 0}function Jc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;f=k+28|0;l=k+24|0;h=k+20|0;j=k+16|0;g=k;c[f>>2]=a;c[l>>2]=b;c[h>>2]=d;c[(c[f>>2]|0)+52>>2]=c[l>>2];do{if((c[h>>2]|0)!=0){if((c[(c[f>>2]|0)+224>>2]|0)==0?(l=nf(c[f>>2]|0)|0,c[(c[f>>2]|0)+224>>2]=l,(l|0)==0):0){break}c[g>>2]=e;c[j>>2]=kn(c[f>>2]|0,c[h>>2]|0,g)|0;of(c[(c[f>>2]|0)+224>>2]|0,-1,c[j>>2]|0,1,16);i=k;return}}while(0);if((c[(c[f>>2]|0)+224>>2]|0)==0){i=k;return}AC(c[(c[f>>2]|0)+224>>2]|0);i=k;return}function Kc(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=fc(c[e>>2]|0)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}_D(c[d>>2]|0,0,c[e>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}function Lc(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=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,E=0,F=0;o=i;i=i+112|0;e=o+108|0;E=o+104|0;m=o+100|0;z=o+96|0;h=o+92|0;A=o+88|0;r=o+84|0;l=o+80|0;F=o+76|0;y=o+72|0;s=o+68|0;B=o+64|0;C=o+60|0;t=o+56|0;v=o+52|0;k=o+16|0;n=o+48|0;u=o+44|0;x=o+40|0;j=o+8|0;g=o;w=o+36|0;p=o+32|0;q=o+28|0;f=o+24|0;c[e>>2]=a;c[E>>2]=b;c[h>>2]=0;c[A>>2]=0;Mc(c[(c[e>>2]|0)+24>>2]|0);c[m>>2]=c[(c[e>>2]|0)+28>>2];if((Nc(c[m>>2]|0)|0)!=0){a=c[m>>2]|0;i=o;return a|0}c[r>>2]=Rb(c[(c[e>>2]|0)+24>>2]|0)|0;c[l>>2]=Rb(c[(c[e>>2]|0)+4>>2]|0)|0;c[y>>2]=-1;c[s>>2]=0;if((c[c[e>>2]>>2]|0)!=0?(d[(c[(c[(c[e>>2]|0)+24>>2]|0)+4>>2]|0)+20>>0]|0|0)==2:0){c[m>>2]=5}else{c[m>>2]=0}if((0==(c[m>>2]|0)?(c[(c[e>>2]|0)+12>>2]|0)==0:0)?(a=Oc(c[(c[e>>2]|0)+4>>2]|0,2)|0,c[m>>2]=a,0==(a|0)):0){c[(c[e>>2]|0)+12>>2]=1;Pc(c[(c[e>>2]|0)+4>>2]|0,1,(c[e>>2]|0)+8|0)}if((c[m>>2]|0)==0?0==(Qc(c[(c[e>>2]|0)+24>>2]|0)|0):0){c[m>>2]=Oc(c[(c[e>>2]|0)+24>>2]|0,0)|0;c[s>>2]=1}c[h>>2]=Rc(c[(c[e>>2]|0)+24>>2]|0)|0;c[A>>2]=Rc(c[(c[e>>2]|0)+4>>2]|0)|0;c[z>>2]=Sc(Rb(c[(c[e>>2]|0)+4>>2]|0)|0)|0;if((0==(c[m>>2]|0)?(c[z>>2]|0)==5:0)?(c[h>>2]|0)!=(c[A>>2]|0):0){c[m>>2]=8}c[y>>2]=Tc(c[(c[e>>2]|0)+24>>2]|0)|0;c[F>>2]=0;while(1){if((c[E>>2]|0)>=0?(c[F>>2]|0)>=(c[E>>2]|0):0){break}if(!((c[(c[e>>2]|0)+16>>2]|0)>>>0<=(c[y>>2]|0)>>>0)){break}if(!((c[m>>2]|0)!=0^1)){break}c[B>>2]=c[(c[e>>2]|0)+16>>2];if((c[B>>2]|0)!=((((c[346]|0)>>>0)/((c[(c[(c[(c[e>>2]|0)+24>>2]|0)+4>>2]|0)+32>>2]|0)>>>0)|0)+1|0)?(c[m>>2]=Uc(c[r>>2]|0,c[B>>2]|0,C,2)|0,(c[m>>2]|0)==0):0){b=c[e>>2]|0;a=c[B>>2]|0;c[m>>2]=Vc(b,a,Wc(c[C>>2]|0)|0,0)|0;Xc(c[C>>2]|0)}a=(c[e>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+1;c[F>>2]=(c[F>>2]|0)+1}do{if((c[m>>2]|0)==0){c[(c[e>>2]|0)+36>>2]=c[y>>2];c[(c[e>>2]|0)+32>>2]=(c[y>>2]|0)+1-(c[(c[e>>2]|0)+16>>2]|0);if((c[(c[e>>2]|0)+16>>2]|0)>>>0>(c[y>>2]|0)>>>0){c[m>>2]=101;break}if((c[(c[e>>2]|0)+40>>2]|0)==0){Yc(c[e>>2]|0)}}}while(0);if((c[m>>2]|0)==101){if((c[y>>2]|0)==0){c[m>>2]=Zc(c[(c[e>>2]|0)+4>>2]|0)|0;c[y>>2]=1}if((c[m>>2]|0)==0|(c[m>>2]|0)==101){c[m>>2]=_c(c[(c[e>>2]|0)+4>>2]|0,1,(c[(c[e>>2]|0)+8>>2]|0)+1|0)|0}if((c[m>>2]|0)==0){if((c[c[e>>2]>>2]|0)!=0){$c(c[c[e>>2]>>2]|0)}if((c[z>>2]|0)==5){c[m>>2]=ad(c[(c[e>>2]|0)+4>>2]|0,2)|0}}if((c[m>>2]|0)==0){if((c[h>>2]|0)<(c[A>>2]|0)){c[v>>2]=(c[A>>2]|0)/(c[h>>2]|0)|0;c[t>>2]=((c[y>>2]|0)+(c[v>>2]|0)-1|0)/(c[v>>2]|0)|0;if((c[t>>2]|0)==((((c[346]|0)>>>0)/((c[(c[(c[(c[e>>2]|0)+4>>2]|0)+4>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){c[t>>2]=(c[t>>2]|0)+ -1}}else{c[t>>2]=$(c[y>>2]|0,(c[h>>2]|0)/(c[A>>2]|0)|0)|0}if((c[h>>2]|0)<(c[A>>2]|0)){a=c[h>>2]|0;F=c[y>>2]|0;F=lE(a|0,((a|0)<0)<<31>>31|0,F|0,((F|0)<0)<<31>>31|0)|0;a=k;c[a>>2]=F;c[a+4>>2]=D;c[n>>2]=bd(c[l>>2]|0)|0;cd(c[l>>2]|0,x);c[u>>2]=c[t>>2];while(1){if((c[m>>2]|0)!=0){break}if(!((c[u>>2]|0)>>>0<=(c[x>>2]|0)>>>0)){break}do{if((c[u>>2]|0)!=((((c[346]|0)>>>0)/((c[(c[(c[(c[e>>2]|0)+4>>2]|0)+4>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){c[m>>2]=Uc(c[l>>2]|0,c[u>>2]|0,w,0)|0;if((c[m>>2]|0)!=0){break}c[m>>2]=dd(c[w>>2]|0)|0;Xc(c[w>>2]|0)}}while(0);c[u>>2]=(c[u>>2]|0)+1}if((c[m>>2]|0)==0){c[m>>2]=ed(c[l>>2]|0,0,1)|0}F=(c[346]|0)+(c[A>>2]|0)|0;C=((F|0)<0)<<31>>31;a=k;E=c[a+4>>2]|0;if((C|0)<(E|0)|((C|0)==(E|0)?F>>>0<(c[a>>2]|0)>>>0:0)){t=(c[346]|0)+(c[A>>2]|0)|0;u=t;t=((t|0)<0)<<31>>31}else{t=k;u=c[t>>2]|0;t=c[t+4>>2]|0}F=g;c[F>>2]=u;c[F+4>>2]=t;F=(c[346]|0)+(c[h>>2]|0)|0;a=j;c[a>>2]=F;c[a+4>>2]=((F|0)<0)<<31>>31;while(1){if((c[m>>2]|0)!=0){break}F=j;C=c[F+4>>2]|0;a=g;E=c[a+4>>2]|0;if(!((C|0)<(E|0)|((C|0)==(E|0)?(c[F>>2]|0)>>>0<(c[a>>2]|0)>>>0:0))){break}c[p>>2]=0;F=j;a=c[h>>2]|0;a=jE(c[F>>2]|0,c[F+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;a=bE(a|0,D|0,1,0)|0;c[q>>2]=a;c[m>>2]=Uc(c[r>>2]|0,c[q>>2]|0,p,0)|0;if((c[m>>2]|0)==0){c[f>>2]=Wc(c[p>>2]|0)|0;a=j;c[m>>2]=fd(c[n>>2]|0,c[f>>2]|0,c[h>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0}Xc(c[p>>2]|0);F=c[h>>2]|0;a=j;F=bE(c[a>>2]|0,c[a+4>>2]|0,F|0,((F|0)<0)<<31>>31|0)|0;a=j;c[a>>2]=F;c[a+4>>2]=D}if((c[m>>2]|0)==0){a=k;c[m>>2]=gd(c[n>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0}if((c[m>>2]|0)==0){c[m>>2]=hd(c[l>>2]|0,0)|0}}else{id(c[l>>2]|0,c[t>>2]|0);c[m>>2]=ed(c[l>>2]|0,0,0)|0}if(0==(c[m>>2]|0)){a=jd(c[(c[e>>2]|0)+4>>2]|0,0)|0;c[m>>2]=a;c[m>>2]=0==(a|0)?101:a}}}if((c[s>>2]|0)!=0){kd(c[(c[e>>2]|0)+24>>2]|0,0)|0;jd(c[(c[e>>2]|0)+24>>2]|0,0)|0}if((c[m>>2]|0)==3082){c[m>>2]=7}c[(c[e>>2]|0)+28>>2]=c[m>>2];a=c[m>>2]|0;i=o;return a|0}function Mc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[(c[(c[d>>2]|0)+4>>2]|0)+4>>2]=c[c[d>>2]>>2];i=b;return}function Nc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!((c[d>>2]|0)!=0&(c[d>>2]|0)!=5)){d=0;d=d&1;i=b;return d|0}d=(c[d>>2]|0)!=6;d=d&1;i=b;return d|0}function Oc(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;l=j+24|0;m=j+20|0;o=j+16|0;k=j+12|0;n=j+8|0;p=j+4|0;h=j;c[l>>2]=f;c[m>>2]=g;c[o>>2]=0;c[k>>2]=c[(c[l>>2]|0)+4>>2];c[n>>2]=0;Mc(c[l>>2]|0);do{if((d[(c[l>>2]|0)+8>>0]|0)!=2){if((d[(c[l>>2]|0)+8>>0]|0)==1?(c[m>>2]|0)==0:0){break}if((b[(c[k>>2]|0)+22>>1]&1|0)!=0?(c[m>>2]|0)!=0:0){c[n>>2]=8;break}if((c[m>>2]|0)!=0?(d[(c[k>>2]|0)+20>>0]|0)==2:0){g=10}else{g=9}a:do{if((g|0)==9){if((b[(c[k>>2]|0)+22>>1]&64|0)==0){if((c[m>>2]|0)>1){c[p>>2]=c[(c[k>>2]|0)+72>>2];while(1){if((c[p>>2]|0)==0){break a}f=c[p>>2]|0;if((c[c[p>>2]>>2]|0)!=(c[l>>2]|0)){break}c[p>>2]=c[f+12>>2]}c[o>>2]=c[c[f>>2]>>2]}}else{g=10}}}while(0);if((g|0)==10){c[o>>2]=c[c[(c[k>>2]|0)+76>>2]>>2]}if((c[o>>2]|0)!=0){c[n>>2]=262;break}c[n>>2]=ey(c[l>>2]|0,1,1)|0;if(0==(c[n>>2]|0)){f=(c[k>>2]|0)+22|0;b[f>>1]=e[f>>1]&-9;if((c[(c[k>>2]|0)+44>>2]|0)==0){f=(c[k>>2]|0)+22|0;b[f>>1]=e[f>>1]|8}while(1){if((c[(c[k>>2]|0)+12>>2]|0)==0?(f=xC(c[k>>2]|0)|0,c[n>>2]=f,0==(f|0)):0){continue}do{if((c[n>>2]|0)==0?(c[m>>2]|0)!=0:0){if((b[(c[k>>2]|0)+22>>1]&1|0)!=0){c[n>>2]=8;break}g=c[c[k>>2]>>2]|0;f=(c[m>>2]|0)>1&1;c[n>>2]=yC(g,f,qh(c[c[l>>2]>>2]|0)|0)|0;if((c[n>>2]|0)==0){c[n>>2]=UB(c[k>>2]|0)|0}}}while(0);if((c[n>>2]|0)!=0){Ik(c[k>>2]|0)}if((c[n>>2]&255|0)!=5){break}if((d[(c[k>>2]|0)+20>>0]|0)!=0){break}if((yh(c[k>>2]|0)|0)==0){break}}if((c[n>>2]|0)==0){if((d[(c[l>>2]|0)+8>>0]|0)==0?(f=(c[k>>2]|0)+40|0,c[f>>2]=(c[f>>2]|0)+1,(a[(c[l>>2]|0)+9>>0]|0)!=0):0){a[(c[l>>2]|0)+36>>0]=1;c[(c[l>>2]|0)+40>>2]=c[(c[k>>2]|0)+72>>2];c[(c[k>>2]|0)+72>>2]=(c[l>>2]|0)+28}a[(c[l>>2]|0)+8>>0]=(c[m>>2]|0)!=0?2:1;if((d[(c[l>>2]|0)+8>>0]|0)>(d[(c[k>>2]|0)+20>>0]|0)){a[(c[k>>2]|0)+20>>0]=a[(c[l>>2]|0)+8>>0]|0}if((c[m>>2]|0)!=0){c[h>>2]=c[(c[k>>2]|0)+12>>2];c[(c[k>>2]|0)+76>>2]=c[l>>2];f=(c[k>>2]|0)+22|0;b[f>>1]=e[f>>1]&-33;if((c[m>>2]|0)>1){f=(c[k>>2]|0)+22|0;b[f>>1]=e[f>>1]|32}f=c[(c[k>>2]|0)+44>>2]|0;if((f|0)!=(Ah((c[(c[h>>2]|0)+56>>2]|0)+28|0)|0)?(c[n>>2]=dd(c[(c[h>>2]|0)+68>>2]|0)|0,(c[n>>2]|0)==0):0){Yj((c[(c[h>>2]|0)+56>>2]|0)+28|0,c[(c[k>>2]|0)+44>>2]|0)}}}}}}while(0);if((c[n>>2]|0)!=0){f=c[n>>2]|0;i=j;return f|0}if((c[m>>2]|0)==0){f=c[n>>2]|0;i=j;return f|0}c[n>>2]=SB(c[c[k>>2]>>2]|0,c[(c[c[l>>2]>>2]|0)+488>>2]|0)|0;f=c[n>>2]|0;i=j;return f|0}function Pc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;g=e+8|0;f=e+4|0;h=e;c[j>>2]=a;c[g>>2]=b;c[f>>2]=d;c[h>>2]=c[(c[j>>2]|0)+4>>2];Mc(c[j>>2]|0);a=Ah((c[(c[(c[h>>2]|0)+12>>2]|0)+56>>2]|0)+(36+(c[g>>2]<<2))|0)|0;c[c[f>>2]>>2]=a;i=e;return}function Qc(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return(d[(c[b>>2]|0)+8>>0]|0|0)!=0|0}function Rc(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[(c[b>>2]|0)+4>>2]|0)+32>>2]|0}function Sc(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+5>>0]|0|0}function Tc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=gw(c[(c[d>>2]|0)+4>>2]|0)|0;i=b;return a|0}function Uc(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=i;i=i+48|0;j=p+40|0;k=p+36|0;o=p+32|0;l=p+28|0;t=p+24|0;m=p+20|0;n=p+16|0;g=p+12|0;r=p+8|0;q=p+4|0;s=p;c[k>>2]=a;c[o>>2]=b;c[l>>2]=e;c[t>>2]=f;c[m>>2]=0;c[n>>2]=0;c[g>>2]=0;c[r>>2]=c[t>>2]&1;c[q>>2]=0;if((c[o>>2]|0)==0){c[j>>2]=ej(45156)|0;t=c[j>>2]|0;i=p;return t|0}do{if((c[(c[k>>2]|0)+40>>2]|0)!=0){c[m>>2]=c[(c[k>>2]|0)+40>>2];h=21}else{if(((c[q>>2]|0)!=0?(Vh(c[k>>2]|0)|0)!=0:0)?(c[m>>2]=Yi(c[(c[k>>2]|0)+208>>2]|0,c[o>>2]|0,g)|0,(c[m>>2]|0)!=0):0){break}if((c[q>>2]|0)!=0?(c[g>>2]|0)==0:0){c[s>>2]=0;a=c[(c[k>>2]|0)+60>>2]|0;t=c[(c[k>>2]|0)+152>>2]|0;t=lE((c[o>>2]|0)-1|0,0,t|0,((t|0)<0)<<31>>31|0)|0;c[m>>2]=vC(a,t,D,c[(c[k>>2]|0)+152>>2]|0,s)|0;if((c[m>>2]|0)==0?(c[s>>2]|0)!=0:0){if((d[(c[k>>2]|0)+16>>0]|0|0)>1){Gi(c[(c[k>>2]|0)+204>>2]|0,c[o>>2]|0,0,n)|0}f=c[k>>2]|0;if((c[n>>2]|0)==0){c[m>>2]=wC(f,c[o>>2]|0,c[s>>2]|0,n)|0}else{a=c[f+60>>2]|0;t=c[(c[k>>2]|0)+152>>2]|0;t=lE((c[o>>2]|0)-1|0,0,t|0,((t|0)<0)<<31>>31|0)|0;bj(a,t,D,c[s>>2]|0)|0}if((c[n>>2]|0)!=0){c[c[l>>2]>>2]=c[n>>2];c[j>>2]=0;t=c[j>>2]|0;i=p;return t|0}}if((c[m>>2]|0)!=0){break}}c[m>>2]=Gi(c[(c[k>>2]|0)+204>>2]|0,c[o>>2]|0,1,c[l>>2]|0)|0;h=21}}while(0);do{if((h|0)==21){if((c[m>>2]|0)!=0){c[n>>2]=0;break}if((c[(c[c[l>>2]>>2]|0)+16>>2]|0)!=0?(c[r>>2]|0)==0:0){t=(c[k>>2]|0)+184|0;c[t>>2]=(c[t>>2]|0)+1;c[j>>2]=0;t=c[j>>2]|0;i=p;return t|0}c[n>>2]=c[c[l>>2]>>2];c[(c[n>>2]|0)+16>>2]=c[k>>2];if(!((c[o>>2]|0)>>>0>2147483647)?(c[o>>2]|0)!=(((c[346]|0)/(c[(c[k>>2]|0)+152>>2]|0)|0)+1|0):0){if((((d[(c[k>>2]|0)+15>>0]|0|0)==0?!((c[(c[k>>2]|0)+24>>2]|0)>>>0<(c[o>>2]|0)>>>0):0)?(c[r>>2]|0)==0:0)?(c[c[(c[k>>2]|0)+60>>2]>>2]|0)!=0:0){if(((Vh(c[k>>2]|0)|0)!=0?(c[q>>2]|0)==0:0)?(c[m>>2]=Yi(c[(c[k>>2]|0)+208>>2]|0,c[o>>2]|0,g)|0,(c[m>>2]|0)!=0):0){break}t=(c[k>>2]|0)+188|0;c[t>>2]=(c[t>>2]|0)+1;c[m>>2]=Zi(c[n>>2]|0,c[g>>2]|0)|0;if((c[m>>2]|0)!=0){break}}else{if((c[o>>2]|0)>>>0>(c[(c[k>>2]|0)+156>>2]|0)>>>0){c[m>>2]=13;break}if((c[r>>2]|0)!=0){dh();if((c[o>>2]|0)>>>0<=(c[(c[k>>2]|0)+28>>2]|0)>>>0){Pg(c[(c[k>>2]|0)+56>>2]|0,c[o>>2]|0)|0}kk(c[k>>2]|0,c[o>>2]|0)|0;eh()}_D(c[(c[n>>2]|0)+4>>2]|0,0,c[(c[k>>2]|0)+152>>2]|0)|0}c[j>>2]=0;t=c[j>>2]|0;i=p;return t|0}c[m>>2]=ej(45227)|0}}while(0);if((c[n>>2]|0)!=0){Xi(c[n>>2]|0)}aj(c[k>>2]|0);c[c[l>>2]>>2]=0;c[j>>2]=c[m>>2];t=c[j>>2]|0;i=p;return t|0}function Vc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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=i;i=i+80|0;v=h+68|0;x=h+64|0;n=h+60|0;k=h+56|0;t=h+52|0;m=h+48|0;j=h+44|0;s=h+40|0;w=h+8|0;g=h+36|0;l=h;p=h+32|0;u=h+28|0;o=h+24|0;q=h+20|0;r=h+16|0;c[v>>2]=b;c[x>>2]=d;c[n>>2]=e;c[k>>2]=f;c[t>>2]=Rb(c[(c[v>>2]|0)+4>>2]|0)|0;c[m>>2]=Rc(c[(c[v>>2]|0)+24>>2]|0)|0;c[j>>2]=Rc(c[(c[v>>2]|0)+4>>2]|0)|0;c[s>>2]=(c[m>>2]|0)<(c[j>>2]|0)?c[m>>2]|0:c[j>>2]|0;d=c[m>>2]|0;d=lE(c[x>>2]|0,0,d|0,((d|0)<0)<<31>>31|0)|0;b=w;c[b>>2]=d;c[b+4>>2]=D;c[g>>2]=0;if((c[m>>2]|0)!=(c[j>>2]|0)?(iA(c[t>>2]|0)|0)!=0:0){c[g>>2]=8}x=w;b=c[m>>2]|0;b=ZD(c[x>>2]|0,c[x+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;x=l;c[x>>2]=b;c[x+4>>2]=D;while(1){if((c[g>>2]|0)!=0){j=15;break}b=l;e=c[b+4>>2]|0;x=w;d=c[x+4>>2]|0;if(!((e|0)<(d|0)|((e|0)==(d|0)?(c[b>>2]|0)>>>0<(c[x>>2]|0)>>>0:0))){j=15;break}c[p>>2]=0;b=l;x=c[j>>2]|0;x=jE(c[b>>2]|0,c[b+4>>2]|0,x|0,((x|0)<0)<<31>>31|0)|0;c[u>>2]=x+1;if((c[u>>2]|0)!=((((c[346]|0)>>>0)/((c[(c[(c[(c[v>>2]|0)+4>>2]|0)+4>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){x=Uc(c[t>>2]|0,c[u>>2]|0,p,0)|0;c[g>>2]=x;if(((0==(x|0)?(x=dd(c[p>>2]|0)|0,c[g>>2]=x,0==(x|0)):0)?(x=l,b=c[m>>2]|0,b=kE(c[x>>2]|0,c[x+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0,c[o>>2]=(c[n>>2]|0)+b,c[q>>2]=Wc(c[p>>2]|0)|0,b=l,x=c[j>>2]|0,x=kE(c[b>>2]|0,c[b+4>>2]|0,x|0,((x|0)<0)<<31>>31|0)|0,c[r>>2]=(c[q>>2]|0)+x,dE(c[r>>2]|0,c[o>>2]|0,c[s>>2]|0)|0,a[(Kj(c[p>>2]|0)|0)>>0]=0,x=l,(c[x>>2]|0)==0&(c[x+4>>2]|0)==0):0)?(c[k>>2]|0)==0:0){x=(c[r>>2]|0)+28|0;Yj(x,Tc(c[(c[v>>2]|0)+24>>2]|0)|0)}Xc(c[p>>2]|0)}b=c[j>>2]|0;x=l;b=bE(c[x>>2]|0,c[x+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;x=l;c[x>>2]=b;c[x+4>>2]=D}if((j|0)==15){i=h;return c[g>>2]|0}return 0}function Wc(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+4>>2]|0}function Xc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}_i(c[d>>2]|0);i=b;return}function Yc(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=md(Rb(c[(c[d>>2]|0)+24>>2]|0)|0)|0;c[(c[d>>2]|0)+44>>2]=c[c[e>>2]>>2];c[c[e>>2]>>2]=c[d>>2];c[(c[d>>2]|0)+40>>2]=1;i=b;return}function Zc(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;Mc(c[e>>2]|0);c[(c[(c[e>>2]|0)+4>>2]|0)+44>>2]=0;c[b>>2]=UB(c[(c[e>>2]|0)+4>>2]|0)|0;i=d;return c[b>>2]|0}function _c(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;m=f+20|0;l=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;g=f;c[m>>2]=b;c[l>>2]=d;c[h>>2]=e;c[j>>2]=c[(c[m>>2]|0)+4>>2];Mc(c[m>>2]|0);c[k>>2]=c[(c[(c[j>>2]|0)+12>>2]|0)+56>>2];c[g>>2]=dd(c[(c[(c[j>>2]|0)+12>>2]|0)+68>>2]|0)|0;if((c[g>>2]|0)!=0){m=c[g>>2]|0;i=f;return m|0}Yj((c[k>>2]|0)+(36+(c[l>>2]<<2))|0,c[h>>2]|0);if((c[l>>2]|0)!=7){m=c[g>>2]|0;i=f;return m|0}a[(c[j>>2]|0)+18>>0]=c[h>>2];m=c[g>>2]|0;i=f;return m|0}function $c(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;b=d+8|0;e=d+4|0;f=d;c[b>>2]=a;Qb(c[b>>2]|0);c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[b>>2]|0)+20>>2]|0)){break}c[f>>2]=(c[(c[b>>2]|0)+16>>2]|0)+(c[e>>2]<<4);if((c[(c[f>>2]|0)+12>>2]|0)!=0){ph(c[(c[f>>2]|0)+12>>2]|0)}c[e>>2]=(c[e>>2]|0)+1}f=(c[b>>2]|0)+24|0;c[f>>2]=c[f>>2]&-3;Bk(c[b>>2]|0);Ck(c[b>>2]|0);i=d;return}function ad(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+32|0;l=j+16|0;n=j+12|0;h=j+8|0;k=j+4|0;m=j;c[l>>2]=f;c[n>>2]=g;c[h>>2]=c[(c[l>>2]|0)+4>>2];f=(c[h>>2]|0)+22|0;b[f>>1]=(e[f>>1]|0)&-17;if((c[n>>2]|0)==1){f=(c[h>>2]|0)+22|0;b[f>>1]=e[f>>1]|0|16}c[k>>2]=Oc(c[l>>2]|0,0)|0;do{if((c[k>>2]|0)==0){c[m>>2]=c[(c[(c[h>>2]|0)+12>>2]|0)+56>>2];if((d[(c[m>>2]|0)+18>>0]|0|0)==(c[n>>2]&255|0)?(d[(c[m>>2]|0)+19>>0]|0|0)==(c[n>>2]&255|0):0){break}c[k>>2]=Oc(c[l>>2]|0,2)|0;if((c[k>>2]|0)==0?(c[k>>2]=dd(c[(c[(c[h>>2]|0)+12>>2]|0)+68>>2]|0)|0,(c[k>>2]|0)==0):0){a[(c[m>>2]|0)+18>>0]=c[n>>2];a[(c[m>>2]|0)+19>>0]=c[n>>2]}}}while(0);f=(c[h>>2]|0)+22|0;b[f>>1]=(e[f>>1]|0)&-17;i=j;return c[k>>2]|0}function bd(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+60>>2]|0}function cd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;c[c[e>>2]>>2]=c[(c[f>>2]|0)+24>>2];i=d;return}function dd(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;p=i;i=i+64|0;k=p+48|0;j=p+44|0;r=p+40|0;m=p+36|0;t=p+32|0;q=p+28|0;s=p+24|0;l=p+20|0;n=p+16|0;u=p+12|0;o=p+8|0;g=p+4|0;v=p;c[k>>2]=f;c[j>>2]=0;c[r>>2]=c[k>>2];c[m>>2]=c[(c[r>>2]|0)+16>>2];if(!((c[(c[m>>2]|0)+148>>2]|0)>>>0>(c[(c[m>>2]|0)+152>>2]|0)>>>0)){c[j>>2]=rC(c[k>>2]|0)|0;f=c[j>>2]|0;i=p;return f|0}c[s>>2]=0;c[n>>2]=0;c[u>>2]=((c[(c[m>>2]|0)+148>>2]|0)>>>0)/((c[(c[m>>2]|0)+152>>2]|0)>>>0)|0;f=(c[m>>2]|0)+20|0;a[f>>0]=d[f>>0]|0|4;c[q>>2]=((c[(c[r>>2]|0)+20>>2]|0)-1&~((c[u>>2]|0)-1))+1;c[t>>2]=c[(c[m>>2]|0)+24>>2];do{if(!((c[(c[r>>2]|0)+20>>2]|0)>>>0>(c[t>>2]|0)>>>0)){if(((c[q>>2]|0)+(c[u>>2]|0)-1|0)>>>0>(c[t>>2]|0)>>>0){c[s>>2]=(c[t>>2]|0)+1-(c[q>>2]|0);break}else{c[s>>2]=c[u>>2];break}}else{c[s>>2]=(c[(c[r>>2]|0)+20>>2]|0)-(c[q>>2]|0)+1}}while(0);c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[s>>2]|0)){break}if((c[j>>2]|0)!=0){break}c[o>>2]=(c[q>>2]|0)+(c[l>>2]|0);if((c[o>>2]|0)!=(c[(c[r>>2]|0)+20>>2]|0)?(Rg(c[(c[m>>2]|0)+56>>2]|0,c[o>>2]|0)|0)!=0:0){f=Bi(c[m>>2]|0,c[o>>2]|0)|0;c[g>>2]=f;if((f|0)!=0){if((b[(c[g>>2]|0)+24>>1]&4|0)!=0){c[n>>2]=1}_i(c[g>>2]|0)}}else{h=12}if(((h|0)==12?(h=0,(c[o>>2]|0)!=(((c[346]|0)/(c[(c[m>>2]|0)+152>>2]|0)|0)+1|0)):0)?(c[j>>2]=Uc(c[m>>2]|0,c[o>>2]|0,g,0)|0,(c[j>>2]|0)==0):0){c[j>>2]=rC(c[g>>2]|0)|0;if((b[(c[g>>2]|0)+24>>1]&4|0)!=0){c[n>>2]=1}_i(c[g>>2]|0)}c[l>>2]=(c[l>>2]|0)+1}a:do{if((c[j>>2]|0)==0?(c[n>>2]|0)!=0:0){c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[s>>2]|0)){break a}c[v>>2]=Bi(c[m>>2]|0,(c[q>>2]|0)+(c[l>>2]|0)|0)|0;if((c[v>>2]|0)!=0){f=(c[v>>2]|0)+24|0;b[f>>1]=e[f>>1]|0|4;_i(c[v>>2]|0)}c[l>>2]=(c[l>>2]|0)+1}}}while(0);f=(c[m>>2]|0)+20|0;a[f>>0]=(d[f>>0]|0)&-5;f=c[j>>2]|0;i=p;return f|0}function ed(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+32|0;h=n+28|0;l=n+24|0;p=n+20|0;g=n+16|0;k=n+12|0;m=n+8|0;j=n+4|0;o=n;c[l>>2]=b;c[p>>2]=e;c[g>>2]=f;c[k>>2]=0;f=c[l>>2]|0;if((c[(c[l>>2]|0)+40>>2]|0)!=0){c[h>>2]=c[f+40>>2];b=c[h>>2]|0;i=n;return b|0}if((d[f+16>>0]|0)<3){c[h>>2]=0;b=c[h>>2]|0;i=n;return b|0}f=c[l>>2]|0;do{if((a[(c[l>>2]|0)+15>>0]|0)==0){b=(Vh(f)|0)!=0;f=c[l>>2]|0;if(b){c[m>>2]=Si(c[f+204>>2]|0)|0;c[j>>2]=0;if((c[m>>2]|0)==0){c[k>>2]=Uc(c[l>>2]|0,1,j,0)|0;c[m>>2]=c[j>>2];c[(c[m>>2]|0)+12>>2]=0}if((c[m>>2]|0)!=0){c[k>>2]=Tj(c[l>>2]|0,c[m>>2]|0,c[(c[l>>2]|0)+24>>2]|0,1)|0}Xc(c[j>>2]|0);if((c[k>>2]|0)!=0){break}Uh(c[(c[l>>2]|0)+204>>2]|0);break}c[k>>2]=pC(f,0)|0;if((((c[k>>2]|0)==0?(c[k>>2]=qC(c[l>>2]|0,c[p>>2]|0)|0,(c[k>>2]|0)==0):0)?(c[k>>2]=Uj(c[l>>2]|0,0)|0,(c[k>>2]|0)==0):0)?(b=c[l>>2]|0,c[k>>2]=Vj(b,Si(c[(c[l>>2]|0)+204>>2]|0)|0)|0,(c[k>>2]|0)==0):0){Uh(c[(c[l>>2]|0)+204>>2]|0);if((c[(c[l>>2]|0)+24>>2]|0)>>>0>(c[(c[l>>2]|0)+32>>2]|0)>>>0?(c[o>>2]=(c[(c[l>>2]|0)+24>>2]|0)-((c[(c[l>>2]|0)+24>>2]|0)==(((c[346]|0)/(c[(c[l>>2]|0)+152>>2]|0)|0)+1|0)&1),c[k>>2]=Xh(c[l>>2]|0,c[o>>2]|0)|0,(c[k>>2]|0)!=0):0){break}if((c[g>>2]|0)==0){c[k>>2]=hd(c[l>>2]|0,c[p>>2]|0)|0}}}else{Hg(c[f+88>>2]|0)}}while(0);if((c[k>>2]|0)==0?(Vh(c[l>>2]|0)|0)==0:0){a[(c[l>>2]|0)+16>>0]=5}c[h>>2]=c[k>>2];b=c[h>>2]|0;i=n;return b|0}function fd(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;k=g+16|0;j=g+12|0;h=g+8|0;l=g;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;a=l;c[a>>2]=e;c[a+4>>2]=f;a=l;a=Ab[c[(c[c[k>>2]>>2]|0)+12>>2]&15](c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;i=g;return a|0}function gd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+20|0;g=e+8|0;j=e;f=e+16|0;c[h>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;c[f>>2]=Ag(c[h>>2]|0,j)|0;if((c[f>>2]|0)!=0){a=c[f>>2]|0;i=e;return a|0}b=j;d=c[b+4>>2]|0;a=g;j=c[a+4>>2]|0;if(!((d|0)>(j|0)|((d|0)==(j|0)?(c[b>>2]|0)>>>0>(c[a>>2]|0)>>>0:0))){a=c[f>>2]|0;i=e;return a|0}a=g;c[f>>2]=Rh(c[h>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}function hd(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;h=g+12|0;k=g+8|0;f=g+4|0;j=g;c[h>>2]=b;c[k>>2]=e;c[f>>2]=0;if((c[c[(c[h>>2]|0)+60>>2]>>2]|0)!=0){c[j>>2]=c[k>>2];b=cg(c[(c[h>>2]|0)+60>>2]|0,21,c[j>>2]|0)|0;c[f>>2]=b;c[f>>2]=(c[f>>2]|0)==12?0:b}if((c[f>>2]|0)!=0){b=c[f>>2]|0;i=g;return b|0}if((a[(c[h>>2]|0)+7>>0]|0)!=0){b=c[f>>2]|0;i=g;return b|0}c[f>>2]=di(c[(c[h>>2]|0)+60>>2]|0,d[(c[h>>2]|0)+11>>0]|0)|0;b=c[f>>2]|0;i=g;return b|0}function id(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+24>>2]=c[f>>2];i=d;return}function jd(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;l=f+8|0;k=f+4|0;j=f;c[h>>2]=b;c[l>>2]=e;if((d[(c[h>>2]|0)+8>>0]|0|0)==0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}Mc(c[h>>2]|0);if((d[(c[h>>2]|0)+8>>0]|0|0)==2){c[j>>2]=c[(c[h>>2]|0)+4>>2];c[k>>2]=oC(c[c[j>>2]>>2]|0)|0;if((c[k>>2]|0)!=0?(c[l>>2]|0)==0:0){c[g>>2]=c[k>>2];b=c[g>>2]|0;i=f;return b|0}a[(c[j>>2]|0)+20>>0]=1;jC(c[j>>2]|0)}kC(c[h>>2]|0);c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}function kd(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;g=h+16|0;l=h+12|0;k=h+8|0;f=h+4|0;j=h;c[l>>2]=b;c[k>>2]=e;c[f>>2]=0;if((d[(c[l>>2]|0)+8>>0]|0)==2){c[j>>2]=c[(c[l>>2]|0)+4>>2];Mc(c[l>>2]|0);if((a[(c[j>>2]|0)+17>>0]|0)!=0?(c[f>>2]=nC(c[j>>2]|0)|0,(c[f>>2]|0)!=0):0){c[g>>2]=c[f>>2];b=c[g>>2]|0;i=h;return b|0}if((a[(c[j>>2]|0)+19>>0]|0)!=0){id(c[c[j>>2]>>2]|0,c[(c[j>>2]|0)+44>>2]|0)}c[f>>2]=ed(c[c[j>>2]>>2]|0,c[k>>2]|0,0)|0}c[g>>2]=c[f>>2];b=c[g>>2]|0;i=h;return b|0}function ld(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;g=b;d=b+20|0;e=b+16|0;j=b+12|0;h=b+8|0;f=b+4|0;c[e>>2]=a;if((c[e>>2]|0)==0){c[d>>2]=0;j=c[d>>2]|0;i=b;return j|0}c[h>>2]=c[(c[e>>2]|0)+20>>2];Mc(c[(c[e>>2]|0)+24>>2]|0);if((c[c[e>>2]>>2]|0)!=0){a=(c[(c[e>>2]|0)+24>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+ -1}if((c[(c[e>>2]|0)+40>>2]|0)!=0){c[j>>2]=md(Rb(c[(c[e>>2]|0)+24>>2]|0)|0)|0;while(1){if((c[c[j>>2]>>2]|0)==(c[e>>2]|0)){break}c[j>>2]=(c[c[j>>2]>>2]|0)+44}c[c[j>>2]>>2]=c[(c[e>>2]|0)+44>>2]}nd(c[(c[e>>2]|0)+4>>2]|0,0)|0;if((c[(c[e>>2]|0)+28>>2]|0)==101){a=0}else{a=c[(c[e>>2]|0)+28>>2]|0}c[f>>2]=a;if((c[c[e>>2]>>2]|0)!=0){Jc(c[c[e>>2]>>2]|0,c[f>>2]|0,0,g);od(c[c[e>>2]>>2]|0)}if((c[c[e>>2]>>2]|0)!=0){gc(c[e>>2]|0)}od(c[h>>2]|0);c[d>>2]=c[f>>2];j=c[d>>2]|0;i=b;return j|0}function md(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[b>>2]|0)+88|0}function nd(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;f=h+24|0;n=h+20|0;g=h+16|0;l=h+12|0;j=h+8|0;m=h+4|0;k=h;c[f>>2]=b;c[n>>2]=e;c[l>>2]=c[(c[f>>2]|0)+4>>2];Mc(c[f>>2]|0);if((c[n>>2]|0)==0){b=ky(c[l>>2]|0,0,0)|0;c[n>>2]=b;c[g>>2]=b}else{c[g>>2]=0}if((c[n>>2]|0)!=0){_y(c[f>>2]|0,c[n>>2]|0)}if((d[(c[f>>2]|0)+8>>0]|0|0)!=2){b=c[f>>2]|0;kC(b);b=c[g>>2]|0;i=h;return b|0}c[m>>2]=Nh(c[c[l>>2]>>2]|0)|0;if((c[m>>2]|0)!=0){c[g>>2]=c[m>>2]}if((hw(c[l>>2]|0,1,j,0)|0)==0){c[k>>2]=Ah((c[(c[j>>2]|0)+56>>2]|0)+28|0)|0;if((c[k>>2]|0)==0){cd(c[c[l>>2]>>2]|0,k)}c[(c[l>>2]|0)+44>>2]=c[k>>2];Hk(c[j>>2]|0)}a[(c[l>>2]|0)+20>>0]=1;jC(c[l>>2]|0);b=c[f>>2]|0;kC(b);b=c[g>>2]|0;i=h;return b|0}function od(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+48|0;f=j;e=j+36|0;g=j+32|0;k=j+28|0;o=j+24|0;n=j+20|0;m=j+16|0;l=j+12|0;d=j+8|0;h=j+4|0;c[e>>2]=b;if((c[(c[e>>2]|0)+76>>2]|0)!=1691352191){i=j;return}if((xk(c[e>>2]|0)|0)!=0){i=j;return}yk(c[e>>2]|0,0);zk(c[e>>2]|0);c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[e>>2]|0)+20>>2]|0)){break}c[o>>2]=(c[(c[e>>2]|0)+16>>2]|0)+(c[k>>2]<<4);if((c[(c[o>>2]|0)+4>>2]|0)!=0?(Ak(c[(c[o>>2]|0)+4>>2]|0)|0,c[(c[o>>2]|0)+4>>2]=0,(c[k>>2]|0)!=1):0){c[(c[o>>2]|0)+12>>2]=0}c[k>>2]=(c[k>>2]|0)+1}if((c[(c[(c[e>>2]|0)+16>>2]|0)+28>>2]|0)!=0){ph(c[(c[(c[e>>2]|0)+16>>2]|0)+28>>2]|0)}Bk(c[e>>2]|0);Ck(c[e>>2]|0);c[k>>2]=0;while(1){if((c[k>>2]|0)>=23){break}c[l>>2]=c[(c[e>>2]|0)+328+(c[k>>2]<<2)>>2];while(1){if((c[l>>2]|0)==0){break}c[m>>2]=c[(c[l>>2]|0)+28>>2];while(1){if((c[l>>2]|0)==0){break}wk(c[e>>2]|0,c[l>>2]|0);c[n>>2]=c[(c[l>>2]|0)+8>>2];Wb(c[e>>2]|0,c[l>>2]|0);c[l>>2]=c[n>>2]}c[l>>2]=c[m>>2]}c[k>>2]=(c[k>>2]|0)+1}c[g>>2]=c[(c[e>>2]|0)+428>>2];while(1){if((c[g>>2]|0)==0){break}c[d>>2]=c[(c[g>>2]|0)+8>>2];c[k>>2]=0;while(1){if((c[k>>2]|0)>=3){break}if((c[(c[d>>2]|0)+((c[k>>2]|0)*20|0)+16>>2]|0)!=0){rb[c[(c[d>>2]|0)+((c[k>>2]|0)*20|0)+16>>2]&31](c[(c[d>>2]|0)+((c[k>>2]|0)*20|0)+8>>2]|0)}c[k>>2]=(c[k>>2]|0)+1}Wb(c[e>>2]|0,c[d>>2]|0);c[g>>2]=c[c[g>>2]>>2]}fh((c[e>>2]|0)+420|0);c[g>>2]=c[(c[e>>2]|0)+308>>2];while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[(c[g>>2]|0)+8>>2];if((c[(c[h>>2]|0)+12>>2]|0)!=0){rb[c[(c[h>>2]|0)+12>>2]&31](c[(c[h>>2]|0)+8>>2]|0)}Wb(c[e>>2]|0,c[h>>2]|0);c[g>>2]=c[c[g>>2]>>2]}fh((c[e>>2]|0)+300|0);Jc(c[e>>2]|0,0,0,f);pf(c[(c[e>>2]|0)+224>>2]|0);c[(c[e>>2]|0)+76>>2]=-1254786768;Wb(c[e>>2]|0,c[(c[(c[e>>2]|0)+16>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+76>>2]=-1623446221;if((a[(c[e>>2]|0)+243>>0]|0)!=0){gc(c[(c[e>>2]|0)+268>>2]|0)}gc(c[e>>2]|0);i=j;return}function pd(a){a=a|0;var b=0,d=0,f=0;b=i;i=i+16|0;f=b+4|0;d=b;c[f>>2]=a;c[d>>2]=c[f>>2];if((c[d>>2]|0)==0){f=0;i=b;return f|0}if(((e[(c[d>>2]|0)+88>>1]|0)>>>10&1|0)==0){f=0;i=b;return f|0}f=c[(c[d>>2]|0)+168>>2]|0;i=b;return f|0}function qd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=i;i=i+32|0;d=e+16|0;h=e+12|0;b=e+8|0;g=e+4|0;f=e;c[h>>2]=a;do{if((c[h>>2]|0)==0){c[b>>2]=0}else{c[g>>2]=c[h>>2];c[f>>2]=c[c[g>>2]>>2];if((rd(c[g>>2]|0)|0)==0){c[b>>2]=sd(c[g>>2]|0)|0;c[b>>2]=td(c[f>>2]|0,c[b>>2]|0)|0;od(c[f>>2]|0);break}c[d>>2]=Pb(65817)|0;h=c[d>>2]|0;i=e;return h|0}}while(0);c[d>>2]=c[b>>2];h=c[d>>2]|0;i=e;return h|0}function rd(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;c[e>>2]=a;if((c[c[e>>2]>>2]|0)==0){rc(21,36928,b);c[d>>2]=1;e=c[d>>2]|0;i=b;return e|0}else{c[d>>2]=0;e=c[d>>2]|0;i=b;return e|0}return 0}function sd(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=0;if(!(!((c[(c[e>>2]|0)+40>>2]|0)==-1108210269)?(c[(c[e>>2]|0)+40>>2]|0)!=1369188723:0)){c[b>>2]=vd(c[e>>2]|0)|0}bn(c[e>>2]|0);i=d;return c[b>>2]|0}function td(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f;g=f+8|0;h=f+4|0;c[g>>2]=b;c[h>>2]=e;do{if((c[g>>2]|0)!=0){if((d[(c[g>>2]|0)+64>>0]|0|0)==0?(c[h>>2]|0)!=3082:0){break}Jc(c[g>>2]|0,7,0,j);a[(c[g>>2]|0)+64>>0]=0;c[h>>2]=7}}while(0);e=c[h>>2]|0;if((c[g>>2]|0)==0){b=255;b=e&b;i=f;return b|0}b=c[(c[g>>2]|0)+56>>2]|0;b=e&b;i=f;return b|0}function ud(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b+4|0;e=b;c[f>>2]=a;if((c[f>>2]|0)==0){c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}else{c[e>>2]=c[f>>2];c[d>>2]=vd(c[e>>2]|0)|0;wd(c[e>>2]|0);c[d>>2]=td(c[c[e>>2]>>2]|0,c[d>>2]|0)|0;f=c[d>>2]|0;i=b;return f|0}return 0}function vd(a){a=a|0;var d=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;h=f;d=f+8|0;g=f+4|0;c[d>>2]=a;c[g>>2]=c[c[d>>2]>>2];Fy(c[d>>2]|0)|0;a=c[d>>2]|0;if((c[(c[d>>2]|0)+76>>2]|0)>=0){Ay(a)|0;Wb(c[g>>2]|0,c[(c[d>>2]|0)+44>>2]|0);c[(c[d>>2]|0)+44>>2]=0;if(((e[(c[d>>2]|0)+88>>1]|0)>>>6&1|0)!=0){a=(c[d>>2]|0)+88|0;b[a>>1]=b[a>>1]&-33|32}}else{if((c[a+80>>2]|0)!=0?((e[(c[d>>2]|0)+88>>1]|0)>>>5&1|0)!=0:0){k=c[g>>2]|0;j=c[(c[d>>2]|0)+80>>2]|0;a=(c[(c[d>>2]|0)+44>>2]|0)!=0?1456:0;c[h>>2]=c[(c[d>>2]|0)+44>>2];Jc(k,j,a,h);Wb(c[g>>2]|0,c[(c[d>>2]|0)+44>>2]|0);c[(c[d>>2]|0)+44>>2]=0}}hC(c[d>>2]|0);k=(c[d>>2]|0)+136|0;c[k>>2]=0;c[k+4>>2]=0;c[(c[d>>2]|0)+40>>2]=649915045;i=f;return c[(c[d>>2]|0)+80>>2]&c[(c[g>>2]|0)+56>>2]|0}function wd(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;c[(c[e>>2]|0)+40>>2]=-1108210269;c[(c[e>>2]|0)+76>>2]=-1;c[(c[e>>2]|0)+80>>2]=0;a[(c[e>>2]|0)+86>>0]=2;c[(c[e>>2]|0)+40>>2]=-1108210269;c[(c[e>>2]|0)+92>>2]=0;c[(c[e>>2]|0)+72>>2]=1;a[(c[e>>2]|0)+87>>0]=-1;c[(c[e>>2]|0)+104>>2]=0;b=(c[e>>2]|0)+144|0;c[b>>2]=0;c[b+4>>2]=0;i=d;return}function xd(a){a=a|0;var d=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+12|0;h=f+8|0;d=f+4|0;g=f;c[j>>2]=a;c[d>>2]=0;c[g>>2]=c[j>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(b[(c[g>>2]|0)+68>>1]|0)){break}yd((c[(c[g>>2]|0)+60>>2]|0)+((c[h>>2]|0)*40|0)|0);b[(c[(c[g>>2]|0)+60>>2]|0)+((c[h>>2]|0)*40|0)+28>>1]=1;c[h>>2]=(c[h>>2]|0)+1}if(((e[(c[g>>2]|0)+88>>1]|0)>>>10&1|0)==0){j=c[d>>2]|0;i=f;return j|0}if((c[(c[g>>2]|0)+188>>2]|0)==0){j=c[d>>2]|0;i=f;return j|0}j=(c[g>>2]|0)+88|0;b[j>>1]=b[j>>1]&-33|32;j=c[d>>2]|0;i=f;return j|0}function yd(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;if((b[(c[d>>2]|0)+28>>1]&9312|0)!=0){le(c[d>>2]|0)}if((c[(c[d>>2]|0)+36>>2]|0)==0){d=c[d>>2]|0;d=d+4|0;c[d>>2]=0;i=e;return}Wb(c[c[d>>2]>>2]|0,c[(c[d>>2]|0)+36>>2]|0);c[(c[d>>2]|0)+36>>2]=0;d=c[d>>2]|0;d=d+4|0;c[d>>2]=0;i=e;return}function zd(a){a=a|0;var d=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+8|0;g=d+4|0;h=d;c[g>>2]=a;c[h>>2]=c[g>>2];if((b[(c[h>>2]|0)+28>>1]&18|0)==0){c[f>>2]=Bd(c[g>>2]|0)|0;h=c[f>>2]|0;i=d;return h|0}Ad(c[h>>2]|0)|0;g=(c[h>>2]|0)+28|0;b[g>>1]=e[g>>1]|0|16;if((c[(c[h>>2]|0)+24>>2]|0)!=0){a=c[(c[h>>2]|0)+4>>2]|0}else{a=0}c[f>>2]=a;h=c[f>>2]|0;i=d;return h|0}function Ad(a){a=a|0;var d=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+8|0;g=d+4|0;h=d;c[g>>2]=a;do{if((b[(c[g>>2]|0)+28>>1]&16384|0)!=0){a=(c[(c[g>>2]|0)+24>>2]|0)+(c[(c[g>>2]|0)+16>>2]|0)|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)<=0?1:a;if((me(c[g>>2]|0,c[h>>2]|0,1)|0)==0){_D((c[(c[g>>2]|0)+4>>2]|0)+(c[(c[g>>2]|0)+24>>2]|0)|0,0,c[(c[g>>2]|0)+16>>2]|0)|0;h=(c[g>>2]|0)+24|0;c[h>>2]=(c[h>>2]|0)+(c[(c[g>>2]|0)+16>>2]|0);h=(c[g>>2]|0)+28|0;b[h>>1]=(e[h>>1]|0)&-16897;break}c[f>>2]=7;h=c[f>>2]|0;i=d;return h|0}}while(0);c[f>>2]=0;h=c[f>>2]|0;i=d;return h|0}function Bd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Jd(c[d>>2]|0,1)|0;i=b;return a|0}function Cd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Dd(c[d>>2]|0,1)|0;i=b;return a|0}function Dd(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;f=g+8|0;k=g+4|0;j=g+12|0;h=g;c[k>>2]=d;a[j>>0]=e;c[h>>2]=c[k>>2];if((b[(c[h>>2]|0)+28>>1]&16|0)==0?(Jd(c[k>>2]|0,a[j>>0]|0)|0)==0:0){c[f>>2]=0;d=c[f>>2]|0;i=g;return d|0}e=c[(c[h>>2]|0)+24>>2]|0;if((b[(c[h>>2]|0)+28>>1]&16384|0)!=0){c[f>>2]=e+(c[(c[h>>2]|0)+16>>2]|0);d=c[f>>2]|0;i=g;return d|0}else{c[f>>2]=e;d=c[f>>2]|0;i=g;return d|0}return 0}function Ed(a){a=a|0;var b=0.0,d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;b=+Fd(c[e>>2]|0);i=d;return+b}function Fd(d){d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0.0;e=i;i=i+32|0;f=e+8|0;j=e+16|0;g=e;c[j>>2]=d;d=c[j>>2]|0;if((b[(c[j>>2]|0)+28>>1]&8|0)!=0){h[f>>3]=+h[d+8>>3];l=+h[f>>3];i=e;return+l}k=c[j>>2]|0;if((b[d+28>>1]&4|0)!=0){k=k+16|0;h[f>>3]=+((c[k>>2]|0)>>>0)+4294967296.0*+(c[k+4>>2]|0);l=+h[f>>3];i=e;return+l}if((b[k+28>>1]&18|0)!=0){h[g>>3]=0.0;Am(c[(c[j>>2]|0)+4>>2]|0,g,c[(c[j>>2]|0)+24>>2]|0,a[(c[j>>2]|0)+30>>0]|0)|0;h[f>>3]=+h[g>>3];l=+h[f>>3];i=e;return+l}else{h[f>>3]=0.0;l=+h[f>>3];i=e;return+l}return 0.0}function Gd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Hd(c[d>>2]|0)|0;i=b;return a|0}function Hd(b){b=b|0;var d=0,f=0,g=0,j=0,k=0;d=i;i=i+32|0;f=d+8|0;g=d+20|0;k=d+16|0;j=d;c[g>>2]=b;c[k>>2]=e[(c[g>>2]|0)+28>>1]|0;do{if((c[k>>2]&4|0)==0){if((c[k>>2]&8|0)!=0){j=tp(+h[(c[g>>2]|0)+8>>3])|0;k=f;c[k>>2]=j;c[k+4>>2]=D;break}if((c[k>>2]&18|0)!=0){k=j;c[k>>2]=0;c[k+4>>2]=0;kg(c[(c[g>>2]|0)+4>>2]|0,j,c[(c[g>>2]|0)+24>>2]|0,a[(c[g>>2]|0)+30>>0]|0)|0;g=j;j=c[g+4>>2]|0;k=f;c[k>>2]=c[g>>2];c[k+4>>2]=j;break}else{k=f;c[k>>2]=0;c[k+4>>2]=0;break}}else{g=(c[g>>2]|0)+16|0;j=c[g+4>>2]|0;k=f;c[k>>2]=c[g>>2];c[k+4>>2]=j}}while(0);k=f;D=c[k+4>>2]|0;i=d;return c[k>>2]|0}function Id(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Hd(c[d>>2]|0)|0;i=b;return a|0}function Jd(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;h=i;i=i+16|0;j=h+4|0;k=h;l=h+8|0;c[k>>2]=f;a[l>>0]=g;if((c[k>>2]|0)==0){c[j>>2]=0;f=c[j>>2]|0;i=h;return f|0}if((b[(c[k>>2]|0)+28>>1]&1|0)!=0){c[j>>2]=0;f=c[j>>2]|0;i=h;return f|0}f=(c[k>>2]|0)+28|0;b[f>>1]=e[f>>1]|0|(b[(c[k>>2]|0)+28>>1]&16)>>3;if((b[(c[k>>2]|0)+28>>1]&16384|0)!=0){Ad(c[k>>2]|0)|0}f=c[k>>2]|0;g=d[l>>0]|0;if((b[(c[k>>2]|0)+28>>1]&2|0)!=0){tk(f,g&-9)|0;if(((a[l>>0]&8|0)!=0?1==(1&c[(c[k>>2]|0)+4>>2]|0):0)?(vk(c[k>>2]|0)|0)!=0:0){c[j>>2]=0;f=c[j>>2]|0;i=h;return f|0}Jy(c[k>>2]|0)|0}else{vp(f,g)|0}if((d[(c[k>>2]|0)+30>>0]|0|0)==((d[l>>0]|0)&-9|0)){c[j>>2]=c[(c[k>>2]|0)+4>>2];f=c[j>>2]|0;i=h;return f|0}else{c[j>>2]=0;f=c[j>>2]|0;i=h;return f|0}return 0}function Kd(a){a=a|0;var e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=a;i=f;return d[1400+(b[(c[e>>2]|0)+28>>1]&31)>>0]|0|0}function Ld(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f+8|0;h=f+4|0;g=f;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;Md(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,0,c[g>>2]|0);i=f;return}function Md(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h+12|0;n=h+8|0;m=h+4|0;l=h+16|0;k=h;c[j>>2]=b;c[n>>2]=d;c[m>>2]=e;a[l>>0]=f;c[k>>2]=g;if((Qd((c[j>>2]|0)+8|0,c[n>>2]|0,c[m>>2]|0,a[l>>0]|0,c[k>>2]|0)|0)!=18){i=h;return}be(c[j>>2]|0);i=h;return}function Nd(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;e=d;c[f>>2]=a;h[e>>3]=b;Od((c[f>>2]|0)+8|0,+h[e>>3]);i=d;return}function Od(a,d){a=a|0;d=+d;var e=0,f=0,g=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;h[g>>3]=d;j=(Fw(+h[g>>3])|0)!=0;a=c[f>>2]|0;if(j){Vd(a);i=e;return}else{yd(a);h[(c[f>>2]|0)+8>>3]=+h[g>>3];b[(c[f>>2]|0)+28>>1]=8;i=e;return}}function Pd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+8|0;h=f+4|0;g=f;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;c[(c[j>>2]|0)+64>>2]=1;a[(c[j>>2]|0)+69>>0]=1;Qd((c[j>>2]|0)+8|0,c[h>>2]|0,c[g>>2]|0,1,-1)|0;i=f;return}function Qd(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;o=i;i=i+48|0;l=o+28|0;n=o+24|0;u=o+20|0;v=o+16|0;r=o+34|0;s=o+12|0;m=o+8|0;p=o+4|0;q=o+32|0;t=o;c[n>>2]=f;c[u>>2]=g;c[v>>2]=h;a[r>>0]=j;c[s>>2]=k;c[m>>2]=c[v>>2];b[q>>1]=0;k=c[n>>2]|0;if((c[u>>2]|0)==0){Vd(k);c[l>>2]=0;v=c[l>>2]|0;i=o;return v|0}if((c[k>>2]|0)!=0){c[p>>2]=c[(c[c[n>>2]>>2]|0)+88>>2]}else{c[p>>2]=1e9}b[q>>1]=(d[r>>0]|0)==0?16:2;if((c[m>>2]|0)<0){v=(d[r>>0]|0)==1;c[m>>2]=0;a:do{if(v){while(1){if((c[m>>2]|0)>(c[p>>2]|0)){break a}if((a[(c[u>>2]|0)+(c[m>>2]|0)>>0]|0)==0){break a}c[m>>2]=(c[m>>2]|0)+1}}else{while(1){if((c[m>>2]|0)>(c[p>>2]|0)){break a}if((a[(c[u>>2]|0)+(c[m>>2]|0)>>0]|a[(c[u>>2]|0)+((c[m>>2]|0)+1)>>0]|0)==0){break a}c[m>>2]=(c[m>>2]|0)+2}}}while(0);b[q>>1]=e[q>>1]|512}do{if((c[s>>2]|0)!=(-1|0)){v=(c[s>>2]|0)==16;yd(c[n>>2]|0);t=c[u>>2]|0;c[(c[n>>2]|0)+4>>2]=t;if(v){c[(c[n>>2]|0)+36>>2]=t;c[(c[n>>2]|0)+32>>2]=0;break}else{c[(c[n>>2]|0)+32>>2]=c[s>>2];b[q>>1]=e[q>>1]|((c[s>>2]|0)==0?2048:1024);break}}else{c[t>>2]=c[m>>2];if((b[q>>1]&512|0)!=0){c[t>>2]=(c[t>>2]|0)+((d[r>>0]|0)==1?1:2)}if((c[m>>2]|0)>(c[p>>2]|0)){c[l>>2]=18;v=c[l>>2]|0;i=o;return v|0}if((me(c[n>>2]|0,c[t>>2]|0,0)|0)==0){dE(c[(c[n>>2]|0)+4>>2]|0,c[u>>2]|0,c[t>>2]|0)|0;break}c[l>>2]=7;v=c[l>>2]|0;i=o;return v|0}}while(0);c[(c[n>>2]|0)+24>>2]=c[m>>2];b[(c[n>>2]|0)+28>>1]=b[q>>1]|0;if((d[r>>0]|0)==0){q=1}else{q=d[r>>0]|0}a[(c[n>>2]|0)+30>>0]=q;if((d[(c[n>>2]|0)+30>>0]|0)!=1?(gC(c[n>>2]|0)|0)!=0:0){c[l>>2]=7;v=c[l>>2]|0;i=o;return v|0}if((c[m>>2]|0)>(c[p>>2]|0)){c[l>>2]=18;v=c[l>>2]|0;i=o;return v|0}else{c[l>>2]=0;v=c[l>>2]|0;i=o;return v|0}return 0}function Rd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;a=c[f>>2]|0;Sd((c[e>>2]|0)+8|0,a,((a|0)<0)<<31>>31);i=d;return}function Sd(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+8|0;h=f;c[g>>2]=a;a=h;c[a>>2]=d;c[a+4>>2]=e;yd(c[g>>2]|0);e=h;d=c[e+4>>2]|0;a=(c[g>>2]|0)+16|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;b[(c[g>>2]|0)+28>>1]=4;i=f;return}function Td(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;a=g;Sd((c[f>>2]|0)+8|0,c[a>>2]|0,c[a+4>>2]|0);i=e;return}function Ud(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Vd((c[d>>2]|0)+8|0);i=b;return}function Vd(a){a=a|0;var d=0,f=0,g=0;f=i;i=i+16|0;d=f+4|0;g=f;c[d>>2]=a;if((b[(c[d>>2]|0)+28>>1]&64|0)!=0){c[g>>2]=c[(c[d>>2]|0)+16>>2];c[(c[g>>2]|0)+4>>2]=c[(c[c[g>>2]>>2]|0)+180>>2];c[(c[c[g>>2]>>2]|0)+180>>2]=c[g>>2]}if((b[(c[d>>2]|0)+28>>1]&32|0)!=0){wy(c[(c[d>>2]|0)+16>>2]|0)}b[(c[d>>2]|0)+28>>1]=(e[(c[d>>2]|0)+28>>1]|0)&-16896|1;i=f;return}function Wd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f+8|0;h=f+4|0;g=f;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;Md(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,1,c[g>>2]|0);i=f;return}function Xd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;Yd((c[f>>2]|0)+8|0,c[e>>2]|0)|0;i=d;return}function Yd(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;f=h+8|0;j=h+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[g>>2]=0;if((b[(c[f>>2]|0)+28>>1]&9312|0)!=0){le(c[f>>2]|0)}k=(c[f>>2]|0)+0|0;a=(c[j>>2]|0)+0|0;d=k+36|0;do{c[k>>2]=c[a>>2];k=k+4|0;a=a+4|0}while((k|0)<(d|0));k=(c[f>>2]|0)+28|0;b[k>>1]=(e[k>>1]|0)&-1025;c[(c[f>>2]|0)+32>>2]=0;if((b[(c[f>>2]|0)+28>>1]&18|0)==0){k=c[g>>2]|0;i=h;return k|0}if(0!=(b[(c[j>>2]|0)+28>>1]&2048|0)){k=c[g>>2]|0;i=h;return k|0}k=(c[f>>2]|0)+28|0;b[k>>1]=e[k>>1]|0|4096;c[g>>2]=vk(c[f>>2]|0)|0;k=c[g>>2]|0;i=h;return k|0}function Zd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;_d((c[f>>2]|0)+8|0,c[e>>2]|0);i=d;return}function _d(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=d;c[h>>2]=e;yd(c[g>>2]|0);b[(c[g>>2]|0)+28>>1]=16400;c[(c[g>>2]|0)+24>>2]=0;if((c[h>>2]|0)<0){c[h>>2]=0}c[(c[g>>2]|0)+16>>2]=c[h>>2];a[(c[g>>2]|0)+30>>0]=1;i=f;return}function $d(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=d;c[h>>2]=e;c[(c[g>>2]|0)+64>>2]=c[h>>2];a[(c[g>>2]|0)+69>>0]=1;if((b[(c[g>>2]|0)+36>>1]&1|0)==0){i=f;return}d=(c[g>>2]|0)+8|0;Qd(d,ae(c[h>>2]|0)|0,-1,1,0)|0;i=f;return}function ae(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=5904;if((c[e>>2]|0)!=516){c[e>>2]=c[e>>2]&255;if((c[e>>2]|0)>=0&(c[e>>2]|0)<27?(c[5064+(c[e>>2]<<2)>>2]|0)!=0:0){c[d>>2]=c[5064+(c[e>>2]<<2)>>2]}}else{c[d>>2]=5920}i=b;return c[d>>2]|0}function be(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;c[(c[e>>2]|0)+64>>2]=18;a[(c[e>>2]|0)+69>>0]=1;Qd((c[e>>2]|0)+8|0,1432,-1,1,0)|0;i=d;return}function ce(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;Vd((c[e>>2]|0)+8|0);c[(c[e>>2]|0)+64>>2]=7;a[(c[e>>2]|0)+69>>0]=1;a[(c[(c[e>>2]|0)+8>>2]|0)+64>>0]=1;i=d;return}function de(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e+28|0;n=e+24|0;k=e+20|0;l=e+16|0;j=e+12|0;m=e+8|0;g=e+4|0;h=e;c[n>>2]=d;c[k>>2]=0;c[l>>2]=0;c[j>>2]=c[n>>2];c[m>>2]=0;if((ee(c[j>>2]|0)|0)!=0){c[f>>2]=Pb(66253)|0;n=c[f>>2]|0;i=e;return n|0}c[g>>2]=c[c[j>>2]>>2];d=(c[j>>2]|0)+88|0;b[d>>1]=b[d>>1]&-2049;while(1){d=fe(c[j>>2]|0)|0;c[k>>2]=d;if((d|0)!=17){break}d=c[m>>2]|0;c[m>>2]=d+1;if((d|0)>=50){break}d=ge(c[j>>2]|0)|0;c[k>>2]=d;c[l>>2]=d;if((d|0)!=0){break}ud(c[n>>2]|0)|0;d=(c[j>>2]|0)+88|0;b[d>>1]=b[d>>1]&-2049|2048}do{if((c[l>>2]|0)!=0){c[h>>2]=Bd(c[(c[g>>2]|0)+224>>2]|0)|0;Wb(c[g>>2]|0,c[(c[j>>2]|0)+44>>2]|0);if((a[(c[g>>2]|0)+64>>0]|0)!=0){c[(c[j>>2]|0)+44>>2]=0;c[k>>2]=7;c[(c[j>>2]|0)+80>>2]=7;break}else{n=he(c[g>>2]|0,c[h>>2]|0)|0;c[(c[j>>2]|0)+44>>2]=n;c[(c[j>>2]|0)+80>>2]=c[l>>2];break}}}while(0);c[k>>2]=td(c[g>>2]|0,c[k>>2]|0)|0;c[f>>2]=c[k>>2];n=c[f>>2]|0;i=e;return n|0}function ee(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;c[e>>2]=a;if((c[e>>2]|0)==0){rc(21,36888,b);c[d>>2]=1;e=c[d>>2]|0;i=b;return e|0}else{c[d>>2]=rd(c[e>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}return 0}function fe(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;f=g+20|0;h=g+16|0;k=g+12|0;j=g+8|0;l=g;c[h>>2]=d;if((c[(c[h>>2]|0)+40>>2]|0)!=-1108210269){ud(c[h>>2]|0)|0}c[k>>2]=c[c[h>>2]>>2];d=c[h>>2]|0;if((a[(c[k>>2]|0)+64>>0]|0)!=0){c[d+80>>2]=7;c[f>>2]=7;d=c[f>>2]|0;i=g;return d|0}if((c[d+76>>2]|0)<=0?((e[(c[h>>2]|0)+88>>1]|0)>>>5&1|0)!=0:0){c[(c[h>>2]|0)+80>>2]=17;c[j>>2]=1}else{if((c[(c[h>>2]|0)+76>>2]|0)<0){if((c[(c[k>>2]|0)+140>>2]|0)==0){c[(c[k>>2]|0)+232>>2]=0}if((c[(c[k>>2]|0)+172>>2]|0)!=0?(a[(c[k>>2]|0)+137>>0]|0)==0:0){Hm(c[c[k>>2]>>2]|0,(c[h>>2]|0)+128|0)|0}d=(c[k>>2]|0)+140|0;c[d>>2]=(c[d>>2]|0)+1;if(((e[(c[h>>2]|0)+88>>1]|0)>>>8&1|0)==0){d=(c[k>>2]|0)+148|0;c[d>>2]=(c[d>>2]|0)+1}if(((e[(c[h>>2]|0)+88>>1]|0)>>>9&1|0)!=0){d=(c[k>>2]|0)+144|0;c[d>>2]=(c[d>>2]|0)+1}c[(c[h>>2]|0)+76>>2]=0}if((b[(c[h>>2]|0)+88>>1]&3|0)!=0){c[j>>2]=xy(c[h>>2]|0)|0}else{d=(c[k>>2]|0)+152|0;c[d>>2]=(c[d>>2]|0)+1;c[j>>2]=yy(c[h>>2]|0)|0;d=(c[k>>2]|0)+152|0;c[d>>2]=(c[d>>2]|0)+ -1}if((((c[j>>2]|0)!=100?(c[(c[k>>2]|0)+172>>2]|0)!=0:0)?(a[(c[k>>2]|0)+137>>0]|0)==0:0)?(c[(c[h>>2]|0)+168>>2]|0)!=0:0){Hm(c[c[k>>2]>>2]|0,l)|0;o=c[(c[k>>2]|0)+172>>2]|0;n=c[(c[k>>2]|0)+176>>2]|0;m=c[(c[h>>2]|0)+168>>2]|0;d=(c[h>>2]|0)+128|0;d=ZD(c[l>>2]|0,c[l+4>>2]|0,c[d>>2]|0,c[d+4>>2]|0)|0;d=lE(d|0,D|0,1e6,0)|0;Bb[o&3](n,m,d,D)}if((c[j>>2]|0)==101?(o=zy(c[k>>2]|0)|0,c[(c[h>>2]|0)+80>>2]=o,(c[(c[h>>2]|0)+80>>2]|0)!=0):0){c[j>>2]=1}c[(c[k>>2]|0)+52>>2]=c[j>>2];if(7==(td(c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+80>>2]|0)|0)){c[(c[h>>2]|0)+80>>2]=7}}if(((e[(c[h>>2]|0)+88>>1]|0)>>>10&1|0)!=0?(c[j>>2]|0)!=100&(c[j>>2]|0)!=101:0){c[j>>2]=Ay(c[h>>2]|0)|0}c[f>>2]=c[j>>2]&c[(c[k>>2]|0)+56>>2];o=c[f>>2]|0;i=g;return o|0}function ge(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;g=d+16|0;h=d+12|0;f=d+8|0;k=d+4|0;j=d;c[g>>2]=b;c[k>>2]=pd(c[g>>2]|0)|0;c[j>>2]=ps(c[g>>2]|0)|0;c[h>>2]=lf(c[j>>2]|0,c[k>>2]|0,-1,0,c[g>>2]|0,f,0)|0;if((c[h>>2]|0)==0){fy(c[f>>2]|0,c[g>>2]|0);Ie(c[f>>2]|0,c[g>>2]|0)|0;gy(c[f>>2]|0);sd(c[f>>2]|0)|0;c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}if((c[h>>2]|0)==7){a[(c[j>>2]|0)+64>>0]=1}c[e>>2]=c[h>>2];k=c[e>>2]|0;i=d;return k|0}function he(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;j=d+12|0;g=d+8|0;f=d+4|0;h=d;c[j>>2]=a;c[g>>2]=b;if((c[g>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[h>>2]=(Mb(c[g>>2]|0)|0)+1;c[f>>2]=Le(c[j>>2]|0,c[h>>2]|0)|0;if((c[f>>2]|0)!=0){dE(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0}c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}function ie(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[c[b>>2]>>2]|0)+4>>2]|0}function je(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+8>>2]|0}function ke(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=f+8|0;g=f+4|0;e=f;c[h>>2]=a;c[g>>2]=d;c[e>>2]=c[(c[h>>2]|0)+48>>2];do{if((b[(c[e>>2]|0)+28>>1]&8192|0)==0){d=c[e>>2]|0;if((c[g>>2]|0)<=0){le(d);b[(c[e>>2]|0)+28>>1]=1;c[(c[e>>2]|0)+4>>2]=0;break}me(d,c[g>>2]|0,0)|0;b[(c[e>>2]|0)+28>>1]=8192;c[(c[e>>2]|0)+16>>2]=c[c[h>>2]>>2];if((c[(c[e>>2]|0)+4>>2]|0)!=0){_D(c[(c[e>>2]|0)+4>>2]|0,0,c[g>>2]|0)|0}}}while(0);i=f;return c[(c[e>>2]|0)+4>>2]|0}function le(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;c[e>>2]=a;f=c[e>>2]|0;if((b[(c[e>>2]|0)+28>>1]&8192|0)!=0){vy(f,c[(c[e>>2]|0)+16>>2]|0)|0;yd(c[e>>2]|0);i=d;return}a=c[e>>2]|0;if((b[f+28>>1]&1024|0)!=0){rb[c[a+32>>2]&31](c[(c[e>>2]|0)+4>>2]|0);c[(c[e>>2]|0)+32>>2]=0;i=d;return}f=c[e>>2]|0;if((b[a+28>>1]&32|0)!=0){wy(c[f+16>>2]|0);i=d;return}if((b[f+28>>1]&64|0)==0){i=d;return}Vd(c[e>>2]|0);i=d;return}function me(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;k=i;i=i+16|0;j=k+12|0;g=k+8|0;l=k+4|0;h=k;c[g>>2]=a;c[l>>2]=d;c[h>>2]=f;if(!((c[(c[g>>2]|0)+36>>2]|0)!=0?(a=Yo(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+36>>2]|0)|0,(a|0)>=(c[l>>2]|0)):0)){if((c[l>>2]|0)<32){c[l>>2]=32}if((c[h>>2]|0)!=0?(c[(c[g>>2]|0)+4>>2]|0)==(c[(c[g>>2]|0)+36>>2]|0):0){a=Hr(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+4>>2]|0,c[l>>2]|0)|0;c[(c[g>>2]|0)+36>>2]=a;c[(c[g>>2]|0)+4>>2]=a;c[h>>2]=0}else{Wb(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+36>>2]|0);a=Le(c[c[g>>2]>>2]|0,c[l>>2]|0)|0;c[(c[g>>2]|0)+36>>2]=a}if((c[(c[g>>2]|0)+36>>2]|0)==0){if((b[(c[g>>2]|0)+28>>1]&9312|0)!=0){le(c[g>>2]|0)}c[(c[g>>2]|0)+4>>2]=0;b[(c[g>>2]|0)+28>>1]=1;c[j>>2]=7;a=c[j>>2]|0;i=k;return a|0}}if(((c[(c[g>>2]|0)+4>>2]|0)!=0?(c[h>>2]|0)!=0:0)?(c[(c[g>>2]|0)+4>>2]|0)!=(c[(c[g>>2]|0)+36>>2]|0):0){dE(c[(c[g>>2]|0)+36>>2]|0,c[(c[g>>2]|0)+4>>2]|0,c[(c[g>>2]|0)+24>>2]|0)|0}if((b[(c[g>>2]|0)+28>>1]&1024|0)!=0){rb[c[(c[g>>2]|0)+32>>2]&31](c[(c[g>>2]|0)+4>>2]|0)}c[(c[g>>2]|0)+4>>2]=c[(c[g>>2]|0)+36>>2];a=(c[g>>2]|0)+28|0;b[a>>1]=(e[a>>1]|0)&-7169;c[(c[g>>2]|0)+32>>2]=0;c[j>>2]=0;a=c[j>>2]|0;i=k;return a|0}function ne(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d+4|0;e=d;c[g>>2]=a;c[f>>2]=b;c[e>>2]=Le(c[g>>2]|0,c[f>>2]|0)|0;if((c[e>>2]|0)==0){g=c[e>>2]|0;i=d;return g|0}_D(c[e>>2]|0,0,c[f>>2]|0)|0;g=c[e>>2]|0;i=d;return g|0}function oe(a){a=a|0;var b=0,d=0,f=0;b=i;i=i+16|0;f=b+4|0;d=b;c[f>>2]=a;c[d>>2]=c[f>>2];if((c[d>>2]|0)==0){f=0;i=b;return f|0}f=e[(c[d>>2]|0)+84>>1]|0;i=b;return f|0}function pe(a){a=a|0;var b=0,d=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;g=b+4|0;f=b;c[g>>2]=a;c[f>>2]=c[g>>2];if((c[f>>2]|0)!=0?(c[(c[f>>2]|0)+20>>2]|0)!=0:0){c[d>>2]=e[(c[f>>2]|0)+84>>1]|0;g=c[d>>2]|0;i=b;return g|0}c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}function qe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;d=e;c[f>>2]=a;c[g>>2]=b;c[d>>2]=zd(re(c[f>>2]|0,c[g>>2]|0)|0)|0;se(c[f>>2]|0);i=e;return c[d>>2]|0}function re(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;j=d;k=d+16|0;g=d+12|0;h=d+8|0;f=d+4|0;c[k>>2]=a;c[g>>2]=b;c[h>>2]=c[k>>2];if(((c[h>>2]|0)!=0?(c[(c[h>>2]|0)+20>>2]|0)!=0:0)?(c[g>>2]|0)>=0?(c[g>>2]|0)<(e[(c[h>>2]|0)+84>>1]|0|0):0:0){c[f>>2]=(c[(c[h>>2]|0)+20>>2]|0)+((c[g>>2]|0)*40|0);k=c[f>>2]|0;i=d;return k|0}if((c[h>>2]|0)!=0?(c[c[h>>2]>>2]|0)!=0:0){Jc(c[c[h>>2]>>2]|0,25,0,j)}c[f>>2]=uy()|0;k=c[f>>2]|0;i=d;return k|0}function se(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];if((c[d>>2]|0)==0){i=b;return}e=td(c[c[d>>2]>>2]|0,c[(c[d>>2]|0)+80>>2]|0)|0;c[(c[d>>2]|0)+80>>2]=e;i=b;return}function te(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;d=e;c[f>>2]=a;c[g>>2]=b;c[d>>2]=Cd(re(c[f>>2]|0,c[g>>2]|0)|0)|0;se(c[f>>2]|0);i=e;return c[d>>2]|0}function ue(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;d=e;c[f>>2]=a;c[g>>2]=b;h[d>>3]=+Ed(re(c[f>>2]|0,c[g>>2]|0)|0);se(c[f>>2]|0);i=e;return+(+h[d>>3])}function ve(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;d=e;c[f>>2]=a;c[g>>2]=b;c[d>>2]=Bd(re(c[f>>2]|0,c[g>>2]|0)|0)|0;se(c[f>>2]|0);i=e;return c[d>>2]|0}function we(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;d=e;c[f>>2]=a;c[g>>2]=b;c[d>>2]=Kd(re(c[f>>2]|0,c[g>>2]|0)|0)|0;se(c[f>>2]|0);i=e;return c[d>>2]|0}function xe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=ye(c[f>>2]|0,c[e>>2]|0,17,0)|0;i=d;return a|0}function ye(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+32|0;p=m+28|0;g=m+24|0;n=m+20|0;k=m+16|0;h=m+12|0;o=m+8|0;l=m+4|0;j=m;c[p>>2]=b;c[g>>2]=d;c[n>>2]=e;c[k>>2]=f;c[h>>2]=0;c[o>>2]=c[p>>2];c[j>>2]=c[c[o>>2]>>2];c[l>>2]=oe(c[p>>2]|0)|0;if(!((c[g>>2]|0)>=0?(c[g>>2]|0)<(c[l>>2]|0):0)){p=c[h>>2]|0;i=m;return p|0}p=$(c[k>>2]|0,c[l>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+p;c[h>>2]=ub[c[n>>2]&31]((c[(c[o>>2]|0)+16>>2]|0)+((c[g>>2]|0)*40|0)|0)|0;if((a[(c[j>>2]|0)+64>>0]|0)==0){p=c[h>>2]|0;i=m;return p|0}a[(c[j>>2]|0)+64>>0]=0;c[h>>2]=0;p=c[h>>2]|0;i=m;return p|0}function ze(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+16|0;l=g+12|0;k=g+8|0;j=g+4|0;h=g;c[m>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;a=Ae(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,0)|0;i=g;return a|0}function Ae(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;r=i;i=i+48|0;p=r;u=r+32|0;k=r+28|0;n=r+24|0;s=r+20|0;m=r+16|0;t=r+36|0;o=r+12|0;q=r+8|0;l=r+4|0;c[u>>2]=b;c[k>>2]=e;c[n>>2]=f;c[s>>2]=g;c[m>>2]=h;a[t>>0]=j;c[o>>2]=c[u>>2];c[l>>2]=Ce(c[o>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)!=0){if(!((c[m>>2]|0)!=0&(c[m>>2]|0)!=(-1|0))){u=c[l>>2]|0;i=r;return u|0}rb[c[m>>2]&31](c[n>>2]|0);u=c[l>>2]|0;i=r;return u|0}if((c[n>>2]|0)==0){u=c[l>>2]|0;i=r;return u|0}c[q>>2]=(c[(c[o>>2]|0)+60>>2]|0)+(((c[k>>2]|0)-1|0)*40|0);c[l>>2]=Qd(c[q>>2]|0,c[n>>2]|0,c[s>>2]|0,a[t>>0]|0,c[m>>2]|0)|0;if((c[l>>2]|0)==0?(d[t>>0]|0|0)!=0:0){c[l>>2]=tk(c[q>>2]|0,d[(c[(c[(c[c[o>>2]>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0)|0}Jc(c[c[o>>2]>>2]|0,c[l>>2]|0,0,p);c[l>>2]=td(c[c[o>>2]>>2]|0,c[l>>2]|0)|0;u=c[l>>2]|0;i=r;return u|0}function Be(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+32|0;l=e+20|0;j=e+16|0;k=e;f=e+12|0;g=e+8|0;c[l>>2]=a;c[j>>2]=b;h[k>>3]=d;c[g>>2]=c[l>>2];c[f>>2]=Ce(c[g>>2]|0,c[j>>2]|0)|0;if((c[f>>2]|0)!=0){l=c[f>>2]|0;i=e;return l|0}Od((c[(c[g>>2]|0)+60>>2]|0)+(((c[j>>2]|0)-1|0)*40|0)|0,+h[k>>3]);l=c[f>>2]|0;i=e;return l|0}function Ce(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g;h=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;c[j>>2]=a;c[k>>2]=d;if((ee(c[j>>2]|0)|0)!=0){c[h>>2]=Pb(66775)|0;a=c[h>>2]|0;i=g;return a|0}if(!((c[(c[j>>2]|0)+40>>2]|0)!=-1108210269)?(c[(c[j>>2]|0)+76>>2]|0)<0:0){if((c[k>>2]|0)>=1?(c[k>>2]|0)<=(b[(c[j>>2]|0)+68>>1]|0):0){c[k>>2]=(c[k>>2]|0)+ -1;c[l>>2]=(c[(c[j>>2]|0)+60>>2]|0)+((c[k>>2]|0)*40|0);yd(c[l>>2]|0);b[(c[l>>2]|0)+28>>1]=1;Jc(c[c[j>>2]>>2]|0,0,0,m);do{if(((e[(c[j>>2]|0)+88>>1]|0)>>>10&1|0)!=0){if(!((c[k>>2]|0)<32?(c[(c[j>>2]|0)+188>>2]&1<>2]|0)!=0:0)){f=12}if((f|0)==12?!((c[(c[j>>2]|0)+188>>2]|0)==-1):0){break}a=(c[j>>2]|0)+88|0;b[a>>1]=b[a>>1]&-33|32}}while(0);c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}Jc(c[c[j>>2]>>2]|0,25,0,m);c[h>>2]=25;a=c[h>>2]|0;i=g;return a|0}Jc(c[c[j>>2]>>2]|0,21,0,m);c[m>>2]=c[(c[j>>2]|0)+168>>2];rc(21,31040,m);c[h>>2]=Pb(66783)|0;a=c[h>>2]|0;i=g;return a|0}function De(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;f=e+4|0;h=e;c[g>>2]=a;c[f>>2]=b;c[h>>2]=d;a=c[h>>2]|0;a=Ee(c[g>>2]|0,c[f>>2]|0,a,((a|0)<0)<<31>>31)|0;i=e;return a|0}function Ee(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+20|0;k=f+16|0;h=f;g=f+12|0;j=f+8|0;c[l>>2]=a;c[k>>2]=b;a=h;c[a>>2]=d;c[a+4>>2]=e;c[j>>2]=c[l>>2];c[g>>2]=Ce(c[j>>2]|0,c[k>>2]|0)|0;if((c[g>>2]|0)!=0){l=c[g>>2]|0;i=f;return l|0}l=h;Sd((c[(c[j>>2]|0)+60>>2]|0)+(((c[k>>2]|0)-1|0)*40|0)|0,c[l>>2]|0,c[l+4>>2]|0);l=c[g>>2]|0;i=f;return l|0}function Fe(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+16|0;l=g+12|0;k=g+8|0;j=g+4|0;h=g;c[m>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;a=Ae(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,1)|0;i=g;return a|0}function Ge(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;b=c[f>>2]|0;a=c[e>>2]|0;a=He(b,a,Mb(c[e>>2]|0)|0)|0;i=d;return a|0}function He(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;m=g+16|0;k=g+12|0;l=g+8|0;n=g+4|0;j=g;c[m>>2]=d;c[k>>2]=e;c[l>>2]=f;if((c[m>>2]|0)==0){c[h>>2]=0;d=c[h>>2]|0;i=g;return d|0}a:do{if((c[k>>2]|0)!=0){c[n>>2]=0;while(1){if((c[n>>2]|0)>=(b[(c[m>>2]|0)+70>>1]|0)){break a}c[j>>2]=c[(c[(c[m>>2]|0)+64>>2]|0)+(c[n>>2]<<2)>>2];if(((c[j>>2]|0)!=0?(XD(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)==0:0)?(a[(c[j>>2]|0)+(c[l>>2]|0)>>0]|0)==0:0){break}c[n>>2]=(c[n>>2]|0)+1}c[h>>2]=(c[n>>2]|0)+1;d=c[h>>2]|0;i=g;return d|0}}while(0);c[h>>2]=0;d=c[h>>2]|0;i=g;return d|0}function Ie(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;j=e+12|0;g=e+8|0;h=e+4|0;f=e;c[k>>2]=a;c[j>>2]=d;c[g>>2]=c[k>>2];c[h>>2]=c[j>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(b[(c[g>>2]|0)+68>>1]|0)){break}ty((c[(c[h>>2]|0)+60>>2]|0)+((c[f>>2]|0)*40|0)|0,(c[(c[g>>2]|0)+60>>2]|0)+((c[f>>2]|0)*40|0)|0);c[f>>2]=(c[f>>2]|0)+1}i=e;return 0}function Je(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+8|0;d=b+4|0;f=b;c[e>>2]=a;c[d>>2]=Kd(c[e>>2]|0)|0;if((c[d>>2]|0)!=3){f=c[d>>2]|0;i=b;return f|0}c[f>>2]=c[e>>2];Ke(c[f>>2]|0);c[d>>2]=Kd(c[e>>2]|0)|0;f=c[d>>2]|0;i=b;return f|0}function Ke(d){d=d|0;var f=0,g=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;l=f+8|0;j=f;k=f+20|0;c[g>>2]=d;if((b[(c[g>>2]|0)+28>>1]&12|0)!=0){i=f;return}a[k>>0]=a[(c[g>>2]|0)+30>>0]|0;if((b[(c[g>>2]|0)+28>>1]&2|0)==0){i=f;return}if((Am(c[(c[g>>2]|0)+4>>2]|0,l,c[(c[g>>2]|0)+24>>2]|0,a[k>>0]|0)|0)==0){i=f;return}if(0==(kg(c[(c[g>>2]|0)+4>>2]|0,j,c[(c[g>>2]|0)+24>>2]|0,a[k>>0]|0)|0)){k=c[j+4>>2]|0;l=(c[g>>2]|0)+16|0;c[l>>2]=c[j>>2];c[l+4>>2]=k;l=(c[g>>2]|0)+28|0;b[l>>1]=e[l>>1]|0|4;i=f;return}else{h[(c[g>>2]|0)+8>>3]=+h[l>>3];l=(c[g>>2]|0)+28|0;b[l>>1]=e[l>>1]|0|8;i=f;return}}function Le(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;k=f+12|0;h=f+8|0;j=f+4|0;l=f;c[k>>2]=b;c[h>>2]=d;do{if((c[k>>2]|0)!=0){if((a[(c[k>>2]|0)+64>>0]|0)!=0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}if((a[(c[k>>2]|0)+242>>0]|0)!=0){d=(c[k>>2]|0)+240|0;if((c[h>>2]|0)>(e[(c[k>>2]|0)+240>>1]|0)){b=d+16|0;c[b>>2]=(c[b>>2]|0)+1;break}b=c[d+24>>2]|0;c[l>>2]=b;if((b|0)==0){b=(c[k>>2]|0)+260|0;c[b>>2]=(c[b>>2]|0)+1;break}c[(c[k>>2]|0)+264>>2]=c[c[l>>2]>>2];b=(c[k>>2]|0)+244|0;c[b>>2]=(c[b>>2]|0)+1;b=(c[k>>2]|0)+252|0;c[b>>2]=(c[b>>2]|0)+1;if((c[(c[k>>2]|0)+244>>2]|0)>(c[(c[k>>2]|0)+248>>2]|0)){c[(c[k>>2]|0)+248>>2]=c[(c[k>>2]|0)+244>>2]}c[g>>2]=c[l>>2];b=c[g>>2]|0;i=f;return b|0}}}while(0);c[j>>2]=fc(c[h>>2]|0)|0;if((c[j>>2]|0)==0?(c[k>>2]|0)!=0:0){a[(c[k>>2]|0)+64>>0]=1}c[g>>2]=c[j>>2];b=c[g>>2]|0;i=f;return b|0}function Me(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+48|0;k=l;g=l+36|0;m=l+32|0;p=l+28|0;j=l+24|0;h=l+20|0;n=l+16|0;o=l+12|0;c[m>>2]=b;c[p>>2]=d;c[j>>2]=e;c[h>>2]=f;if(0!=(jr(c[m>>2]|0)|0)){c[g>>2]=0;b=c[g>>2]|0;i=l;return b|0}c[n>>2]=fp(c[c[m>>2]>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;if((c[n>>2]|0)==0){c[o>>2]=(c[p>>2]|0)!=0?31008:31024;p=c[m>>2]|0;o=c[o>>2]|0;if((c[h>>2]|0)!=0){d=c[h>>2]|0;b=c[j>>2]|0;c[k>>2]=o;c[k+4>>2]=d;c[k+8>>2]=b;Ne(p,17168,k)}else{b=c[j>>2]|0;c[k>>2]=o;c[k+4>>2]=b;Ne(p,17184,k)}a[(c[m>>2]|0)+17>>0]=1}c[g>>2]=c[n>>2];b=c[g>>2]|0;i=l;return b|0}function Ne(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+48|0;j=f+32|0;l=f+28|0;g=f+24|0;k=f+8|0;h=f;c[j>>2]=b;c[l>>2]=d;c[h>>2]=c[c[j>>2]>>2];c[k>>2]=e;c[g>>2]=kn(c[h>>2]|0,c[l>>2]|0,k)|0;if((a[(c[h>>2]|0)+67>>0]|0)!=0){Wb(c[h>>2]|0,c[g>>2]|0);i=f;return}else{l=(c[j>>2]|0)+64|0;c[l>>2]=(c[l>>2]|0)+1;Wb(c[h>>2]|0,c[(c[j>>2]|0)+4>>2]|0);c[(c[j>>2]|0)+4>>2]=c[g>>2];c[(c[j>>2]|0)+12>>2]=1;i=f;return}}function Oe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+32|0;j=f+28|0;h=f+24|0;g=f+8|0;e=f;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[e>>2]=kn(c[j>>2]|0,c[h>>2]|0,g)|0;i=f;return c[e>>2]|0}function Pe(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;g=b+8|0;e=b+4|0;f=b;c[g>>2]=a;c[e>>2]=c[c[g>>2]>>2];c[f>>2]=ne(c[e>>2]|0,208)|0;if((c[f>>2]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}c[c[f>>2]>>2]=c[e>>2];if((c[(c[e>>2]|0)+4>>2]|0)!=0){c[(c[(c[e>>2]|0)+4>>2]|0)+48>>2]=c[f>>2]}c[(c[f>>2]|0)+52>>2]=c[(c[e>>2]|0)+4>>2];c[(c[f>>2]|0)+48>>2]=0;c[(c[e>>2]|0)+4>>2]=c[f>>2];c[(c[f>>2]|0)+40>>2]=649915045;c[(c[f>>2]|0)+24>>2]=c[g>>2];c[d>>2]=c[f>>2];g=c[d>>2]|0;i=b;return g|0}function Qe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d+4|0;e=d;c[f>>2]=a;c[g>>2]=b;c[e>>2]=-1e6;if((c[g>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){b=6;break}if((c[(c[(c[f>>2]|0)+16>>2]|0)+(c[e>>2]<<4)+12>>2]|0)==(c[g>>2]|0)){b=6;break}c[e>>2]=(c[e>>2]|0)+1}if((b|0)==6){a=c[e>>2]|0;i=d;return a|0}return 0}function Re(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;l=j+24|0;p=j+20|0;o=j+16|0;n=j+12|0;m=j+8|0;k=j+4|0;h=j;c[l>>2]=a;c[p>>2]=b;c[o>>2]=d;c[n>>2]=e;c[m>>2]=f;c[k>>2]=g;c[h>>2]=Wo(c[l>>2]|0,c[p>>2]|0,c[o>>2]|0,c[n>>2]|0,c[m>>2]|0)|0;Ye(c[l>>2]|0,c[h>>2]|0,c[k>>2]|0,-14);i=j;return c[h>>2]|0}function Se(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e;f=e+4|0;c[g>>2]=b;a[f>>0]=d;if((c[(c[g>>2]|0)+4>>2]|0)==0){i=e;return}a[(c[(c[g>>2]|0)+4>>2]|0)+(((c[(c[g>>2]|0)+32>>2]|0)-1|0)*20|0)+3>>0]=a[f>>0]|0;i=e;return}function Te(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+48|0;n=h+36|0;k=h+32|0;l=h+28|0;q=h+24|0;j=h+16|0;o=h+12|0;m=h+8|0;g=h+4|0;p=h;c[k>>2]=b;c[l>>2]=d;c[q>>2]=e;c[h+20>>2]=f;if(((c[(c[k>>2]|0)+32>>2]|0)+(c[l>>2]|0)|0)>(c[(c[(c[k>>2]|0)+24>>2]|0)+84>>2]|0)?(Xo(c[k>>2]|0)|0)!=0:0){c[n>>2]=0;b=c[n>>2]|0;i=h;return b|0}c[j>>2]=c[(c[k>>2]|0)+32>>2];if((c[l>>2]|0)>0){c[m>>2]=c[q>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[l>>2]|0)){break}c[g>>2]=a[(c[m>>2]|0)+2>>0]|0;c[p>>2]=(c[(c[k>>2]|0)+4>>2]|0)+(((c[o>>2]|0)+(c[j>>2]|0)|0)*20|0);a[c[p>>2]>>0]=a[c[m>>2]>>0]|0;c[(c[p>>2]|0)+4>>2]=a[(c[m>>2]|0)+1>>0]|0;if((c[g>>2]|0)<0){c[(c[p>>2]|0)+8>>2]=(c[j>>2]|0)+(-1-(c[g>>2]|0))}else{c[(c[p>>2]|0)+8>>2]=c[g>>2]}c[(c[p>>2]|0)+12>>2]=a[(c[m>>2]|0)+3>>0]|0;a[(c[p>>2]|0)+1>>0]=0;c[(c[p>>2]|0)+16>>2]=0;a[(c[p>>2]|0)+3>>0]=0;c[o>>2]=(c[o>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+4}b=(c[k>>2]|0)+32|0;c[b>>2]=(c[b>>2]|0)+(c[l>>2]|0)}c[n>>2]=c[j>>2];b=c[n>>2]|0;i=h;return b|0}function Ue(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=(c[f>>2]|0)+96|0;c[a>>2]=c[a>>2]|1<>2];i=d;return}function Ve(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;h=e+4|0;f=e;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;if(!((c[(c[g>>2]|0)+32>>2]|0)>>>0>(c[h>>2]|0)>>>0)){i=e;return}c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*20|0)+4>>2]=c[f>>2];i=e;return}function We(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;h=e+4|0;f=e;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;if(!((c[(c[g>>2]|0)+32>>2]|0)>>>0>(c[h>>2]|0)>>>0)){i=e;return}c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*20|0)+8>>2]=c[f>>2];i=e;return}function Xe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;h=e+4|0;f=e;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;if(!((c[(c[g>>2]|0)+32>>2]|0)>>>0>(c[h>>2]|0)>>>0)){i=e;return}c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*20|0)+12>>2]=c[f>>2];i=e;return}function Ye(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;k=j+20|0;o=j+16|0;h=j+12|0;m=j+8|0;l=j+4|0;n=j;c[k>>2]=b;c[o>>2]=e;c[h>>2]=f;c[m>>2]=g;c[n>>2]=c[c[k>>2]>>2];if((c[(c[k>>2]|0)+4>>2]|0)!=0?(d[(c[n>>2]|0)+64>>0]|0)==0:0){if((c[o>>2]|0)<0){c[o>>2]=(c[(c[k>>2]|0)+32>>2]|0)-1}c[l>>2]=(c[(c[k>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0);qy(c[n>>2]|0,a[(c[l>>2]|0)+1>>0]|0,c[(c[l>>2]|0)+16>>2]|0);c[(c[l>>2]|0)+16>>2]=0;n=c[h>>2]|0;if((c[m>>2]|0)==-14){c[(c[l>>2]|0)+16>>2]=n;a[(c[l>>2]|0)+1>>0]=-14;i=j;return}if((n|0)==0){c[(c[l>>2]|0)+16>>2]=0;a[(c[l>>2]|0)+1>>0]=0;i=j;return}if((c[m>>2]|0)==-6){c[(c[l>>2]|0)+16>>2]=c[h>>2];a[(c[l>>2]|0)+1>>0]=-6;i=j;return}if((c[m>>2]|0)==-10){c[(c[l>>2]|0)+16>>2]=c[h>>2];a[(c[l>>2]|0)+1>>0]=-10;sy(c[h>>2]|0);i=j;return}if((c[m>>2]|0)<0){c[(c[l>>2]|0)+16>>2]=c[h>>2];a[(c[l>>2]|0)+1>>0]=c[m>>2];i=j;return}if((c[m>>2]|0)==0){c[m>>2]=Mb(c[h>>2]|0)|0}b=gm(c[c[k>>2]>>2]|0,c[h>>2]|0,c[m>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=b;a[(c[l>>2]|0)+1>>0]=-1;i=j;return}if(!((c[m>>2]|0)!=-10)){i=j;return}qy(c[n>>2]|0,c[m>>2]|0,c[h>>2]|0);i=j;return}function Ze(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=b;c[g>>2]=d;if((c[(c[f>>2]|0)+4>>2]|0)==0){i=e;return}c[h>>2]=(c[(c[f>>2]|0)+4>>2]|0)+((c[g>>2]|0)*20|0);c[j>>2]=c[c[f>>2]>>2];qy(c[j>>2]|0,a[(c[h>>2]|0)+1>>0]|0,c[(c[h>>2]|0)+16>>2]|0);b=c[h>>2]|0;c[b+0>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;a[c[h>>2]>>0]=-100;if((c[g>>2]|0)!=((c[(c[f>>2]|0)+32>>2]|0)-1|0)){i=e;return}b=(c[f>>2]|0)+32|0;c[b>>2]=(c[b>>2]|0)+ -1;i=e;return}function _e(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=i;i=i+48|0;n=m+44|0;o=m+40|0;l=m+36|0;k=m+32|0;s=m+28|0;g=m+24|0;t=m+20|0;h=m+16|0;j=m+12|0;p=m+8|0;r=m+4|0;q=m;c[n>>2]=e;c[o>>2]=f;c[l>>2]=c[c[n>>2]>>2];c[k>>2]=c[(c[o>>2]|0)+440>>2];c[s>>2]=c[(c[o>>2]|0)+72>>2];c[g>>2]=c[(c[o>>2]|0)+68>>2];c[t>>2]=c[(c[o>>2]|0)+392>>2];e=c[(c[o>>2]|0)+80>>2]|0;c[h>>2]=e;c[h>>2]=(c[h>>2]|0)==0?1:e;c[s>>2]=(c[s>>2]|0)+(c[g>>2]|0);c[p>>2]=(c[(c[n>>2]|0)+4>>2]|0)+((c[(c[n>>2]|0)+32>>2]|0)*20|0);c[r>>2]=(c[(c[n>>2]|0)+4>>2]|0)+((c[(c[o>>2]|0)+84>>2]|0)*20|0);_v(c[n>>2]|0,t);if((d[(c[o>>2]|0)+20>>0]|0)!=0){f=(d[(c[o>>2]|0)+21>>0]|0)!=0}else{f=0}e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-129|(f&1&255&1)<<7&65535;if((d[(c[o>>2]|0)+450>>0]|0)!=0?(c[s>>2]|0)<10:0){c[s>>2]=10}_D(c[p>>2]|0,0,(c[r>>2]|0)-(c[p>>2]|0)|0)|0;c[p>>2]=(c[p>>2]|0)+((c[p>>2]|0)-0&7);e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-33;do{c[q>>2]=0;e=py(c[(c[n>>2]|0)+8>>2]|0,(c[s>>2]|0)*40|0,p,c[r>>2]|0,q)|0;c[(c[n>>2]|0)+8>>2]=e;e=py(c[(c[n>>2]|0)+60>>2]|0,(c[k>>2]|0)*40|0,p,c[r>>2]|0,q)|0;c[(c[n>>2]|0)+60>>2]=e;e=py(c[(c[n>>2]|0)+12>>2]|0,c[t>>2]<<2,p,c[r>>2]|0,q)|0;c[(c[n>>2]|0)+12>>2]=e;e=py(c[(c[n>>2]|0)+64>>2]|0,c[k>>2]<<2,p,c[r>>2]|0,q)|0;c[(c[n>>2]|0)+64>>2]=e;e=py(c[(c[n>>2]|0)+56>>2]|0,c[g>>2]<<2,p,c[r>>2]|0,q)|0;c[(c[n>>2]|0)+56>>2]=e;e=py(c[(c[n>>2]|0)+200>>2]|0,c[h>>2]|0,p,c[r>>2]|0,q)|0;c[(c[n>>2]|0)+200>>2]=e;if((c[q>>2]|0)!=0){e=ne(c[l>>2]|0,c[q>>2]|0)|0;c[(c[n>>2]|0)+172>>2]=e}c[p>>2]=c[(c[n>>2]|0)+172>>2];c[r>>2]=(c[p>>2]|0)+(c[q>>2]|0);if((c[q>>2]|0)==0){break}}while((a[(c[l>>2]|0)+64>>0]|0)!=0^1);c[(c[n>>2]|0)+36>>2]=c[g>>2];c[(c[n>>2]|0)+196>>2]=c[h>>2];a:do{if((c[(c[n>>2]|0)+60>>2]|0)!=0){b[(c[n>>2]|0)+68>>1]=c[k>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[k>>2]|0)){break a}b[(c[(c[n>>2]|0)+60>>2]|0)+((c[j>>2]|0)*40|0)+28>>1]=1;c[(c[(c[n>>2]|0)+60>>2]|0)+((c[j>>2]|0)*40|0)>>2]=c[l>>2];c[j>>2]=(c[j>>2]|0)+1}}}while(0);if((c[(c[n>>2]|0)+64>>2]|0)!=0){b[(c[n>>2]|0)+70>>1]=c[(c[o>>2]|0)+444>>2];dE(c[(c[n>>2]|0)+64>>2]|0,c[(c[o>>2]|0)+472>>2]|0,b[(c[n>>2]|0)+70>>1]<<2|0)|0;_D(c[(c[o>>2]|0)+472>>2]|0,0,c[(c[o>>2]|0)+444>>2]<<2|0)|0}if((c[(c[n>>2]|0)+8>>2]|0)==0){f=c[o>>2]|0;f=f+450|0;f=a[f>>0]|0;f=f&255;e=c[n>>2]|0;e=e+88|0;f=f&65535;t=b[e>>1]|0;f=f&3;t=t&-4;f=t|f;b[e>>1]=f;e=c[n>>2]|0;wd(e);i=m;return}e=(c[n>>2]|0)+8|0;c[e>>2]=(c[e>>2]|0)+ -40;c[(c[n>>2]|0)+28>>2]=c[s>>2];c[j>>2]=1;while(1){if((c[j>>2]|0)>(c[s>>2]|0)){break}b[(c[(c[n>>2]|0)+8>>2]|0)+((c[j>>2]|0)*40|0)+28>>1]=128;c[(c[(c[n>>2]|0)+8>>2]|0)+((c[j>>2]|0)*40|0)>>2]=c[l>>2];c[j>>2]=(c[j>>2]|0)+1}f=c[o>>2]|0;f=f+450|0;f=a[f>>0]|0;f=f&255;e=c[n>>2]|0;e=e+88|0;f=f&65535;t=b[e>>1]|0;f=f&3;t=t&-4;f=t|f;b[e>>1]=f;e=c[n>>2]|0;wd(e);i=m;return}function $e(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}c[e>>2]=c[c[d>>2]>>2];Wb(c[e>>2]|0,c[(c[d>>2]|0)+112>>2]|0);dn(c[e>>2]|0,c[(c[d>>2]|0)+316>>2]|0);i=b;return}function af(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;h=m+20|0;k=m+16|0;l=m+12|0;g=m+8|0;n=m+4|0;j=m;c[k>>2]=a;c[l>>2]=b;c[g>>2]=e;c[n>>2]=f;if((d[(c[k>>2]|0)+81>>0]|0|0)==0){c[h>>2]=4;a=c[h>>2]|0;i=m;return a|0}if((d[(c[k>>2]|0)+81>>0]|0|0)>=3){f=bw(c[k>>2]|0)|0}else{f=0}c[j>>2]=f;if((c[j>>2]|0)==0){c[j>>2]=rw(c[k>>2]|0,c[l>>2]|0,c[g>>2]|0,c[n>>2]|0,0)|0}c[h>>2]=c[j>>2];a=c[h>>2]|0;i=m;return a|0}function bf(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+4>>2];while(1){if((c[e>>2]|0)==0){break}f=(c[e>>2]|0)+88|0;b[f>>1]=b[f>>1]&-33|32;c[e>>2]=c[(c[e>>2]|0)+52>>2]}i=d;return}function cf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=(df(c[f>>2]|0,c[e>>2]|0,1464,0)|0)==0&1;i=d;return a|0}function df(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;m=i;i=i+48|0;k=m+40|0;l=m+36|0;j=m+32|0;n=m+28|0;h=m+24|0;o=m+20|0;p=m+16|0;x=m+12|0;w=m+8|0;r=m+47|0;s=m+46|0;q=m+45|0;t=m+44|0;u=m+4|0;v=m;c[l>>2]=b;c[j>>2]=e;c[n>>2]=f;c[h>>2]=g;a[r>>0]=a[(c[n>>2]|0)+1>>0]|0;a[s>>0]=a[c[n>>2]>>0]|0;a[q>>0]=a[(c[n>>2]|0)+2>>0]|0;a[t>>0]=a[(c[n>>2]|0)+3>>0]|0;c[u>>2]=0;while(1){b=Jm(l)|0;c[o>>2]=b;if((b|0)==0){u=84;break}if((c[o>>2]|0)==(d[s>>0]|0)?(c[u>>2]|0)==0:0){u=5;break}if((c[o>>2]|0)==(d[r>>0]|0)?(c[u>>2]|0)==0:0){if((Jm(j)|0)==0){u=45;break}else{continue}}if((c[o>>2]|0)!=(d[q>>0]|0)){if((c[h>>2]|0)==(c[o>>2]|0)?(c[u>>2]|0)==0:0){c[u>>2]=1;continue}c[p>>2]=Jm(j)|0;if((a[t>>0]|0)!=0){if((c[o>>2]&-128|0)==0){c[o>>2]=d[696+(c[o>>2]|0)>>0]|0}if((c[p>>2]&-128|0)==0){c[p>>2]=d[696+(c[p>>2]|0)>>0]|0}}if((c[o>>2]|0)!=(c[p>>2]|0)){u=82;break}c[u>>2]=0;continue}c[v>>2]=0;c[w>>2]=0;c[x>>2]=0;c[o>>2]=Jm(j)|0;if((c[o>>2]|0)==0){u=48;break}c[p>>2]=Jm(l)|0;if((c[p>>2]|0)==94){c[x>>2]=1;c[p>>2]=Jm(l)|0}if((c[p>>2]|0)==93){if((c[o>>2]|0)==93){c[w>>2]=1}c[p>>2]=Jm(l)|0}while(1){if((c[p>>2]|0)!=0){f=(c[p>>2]|0)!=93}else{f=0}g=c[p>>2]|0;if(!f){break}if((((g|0)==45?(d[c[l>>2]>>0]|0)!=93:0)?(d[c[l>>2]>>0]|0)!=0:0)?(c[v>>2]|0)>>>0>0:0){c[p>>2]=Jm(l)|0;if((c[o>>2]|0)>>>0>=(c[v>>2]|0)>>>0?(c[o>>2]|0)>>>0<=(c[p>>2]|0)>>>0:0){c[w>>2]=1}c[v>>2]=0}else{if((c[o>>2]|0)==(c[p>>2]|0)){c[w>>2]=1}c[v>>2]=c[p>>2]}c[p>>2]=Jm(l)|0}if((g|0)==0){u=72;break}if((c[w>>2]^c[x>>2]|0)==0){u=72;break}}if((u|0)==5){while(1){u=0;b=Jm(l)|0;c[o>>2]=b;if((b|0)==(d[s>>0]|0)){w=1}else{w=(c[o>>2]|0)==(d[r>>0]|0)}v=c[o>>2]|0;if(!w){break}if((v|0)!=(d[r>>0]|0)){u=5;continue}if((Jm(j)|0)==0){u=10;break}else{u=5}}if((u|0)==10){c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}if((v|0)==0){c[k>>2]=1;b=c[k>>2]|0;i=m;return b|0}if((c[o>>2]|0)==(c[h>>2]|0)){c[o>>2]=Jm(l)|0;if((c[o>>2]|0)==0){c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}}else{if((c[o>>2]|0)==(d[q>>0]|0)){a:while(1){if((d[c[j>>2]>>0]|0)!=0){p=(df((c[l>>2]|0)+ -1|0,c[j>>2]|0,c[n>>2]|0,c[h>>2]|0)|0)==0}else{p=0}o=c[j>>2]|0;if(!p){break}c[j>>2]=o+1;if((d[o>>0]|0)<192){continue}while(1){if((a[c[j>>2]>>0]&192|0)!=128){continue a}c[j>>2]=(c[j>>2]|0)+1}}c[k>>2]=(d[o>>0]|0)!=0&1;b=c[k>>2]|0;i=m;return b|0}}while(1){b=Jm(j)|0;c[p>>2]=b;if((b|0)==0){u=41;break}b:do{if((a[t>>0]|0)!=0){if((c[p>>2]&-128|0)==0){c[p>>2]=d[696+(c[p>>2]|0)>>0]|0}if((c[o>>2]&-128|0)==0){c[o>>2]=d[696+(c[o>>2]|0)>>0]|0}while(1){if((c[p>>2]|0)==0){break b}if((c[p>>2]|0)==(c[o>>2]|0)){break b}c[p>>2]=Jm(j)|0;if((c[p>>2]&-128|0)!=0){continue}c[p>>2]=d[696+(c[p>>2]|0)>>0]|0}}else{while(1){if((c[p>>2]|0)==0){break b}if((c[p>>2]|0)==(c[o>>2]|0)){break b}c[p>>2]=Jm(j)|0}}}while(0);if((c[p>>2]|0)==0){u=38;break}if((df(c[l>>2]|0,c[j>>2]|0,c[n>>2]|0,c[h>>2]|0)|0)!=0){u=40;break}}if((u|0)==38){c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}else if((u|0)==40){c[k>>2]=1;b=c[k>>2]|0;i=m;return b|0}else if((u|0)==41){c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}}else if((u|0)==45){c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}else if((u|0)==48){c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}else if((u|0)==72){c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}else if((u|0)==82){c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}else if((u|0)==84){c[k>>2]=(d[c[j>>2]>>0]|0)==0&1;b=c[k>>2]|0;i=m;return b|0}return 0}function ef(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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;u=i;i=i+64|0;q=u;l=u+60|0;n=u+56|0;j=u+52|0;y=u+48|0;A=u+44|0;m=u+40|0;p=u+36|0;v=u+32|0;s=u+28|0;r=u+24|0;w=u+20|0;x=u+16|0;t=u+12|0;z=u+8|0;o=u+4|0;c[n>>2]=b;c[j>>2]=e;c[y>>2]=f;c[A>>2]=g;c[m>>2]=h;c[p>>2]=0;c[s>>2]=0;c[r>>2]=0;if((ff(c[n>>2]|0)|0)==0){c[l>>2]=Pb(96044)|0;b=c[l>>2]|0;i=u;return b|0}if((c[j>>2]|0)==0){c[j>>2]=1472}Jc(c[n>>2]|0,0,0,q);a:while(1){if((c[p>>2]|0)!=0){break}if((a[c[j>>2]>>0]|0)==0){break}c[t>>2]=0;c[s>>2]=0;c[p>>2]=gf(c[n>>2]|0,c[j>>2]|0,-1,s,v)|0;if((c[p>>2]|0)!=0){continue}if((c[s>>2]|0)==0){c[j>>2]=c[v>>2];continue}c[w>>2]=0;c[x>>2]=oe(c[s>>2]|0)|0;do{c[p>>2]=de(c[s>>2]|0)|0;do{if((c[y>>2]|0)!=0){if(100!=(c[p>>2]|0)){if(101!=(c[p>>2]|0)){break}if((c[w>>2]|0)!=0){break}if((c[(c[n>>2]|0)+24>>2]&256|0)==0){break}}if((c[w>>2]|0)==0){c[r>>2]=ne(c[n>>2]|0,(c[x>>2]<<1<<2)+1|0)|0;if((c[r>>2]|0)==0){break a}c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[x>>2]|0)){break}b=xe(c[s>>2]|0,c[z>>2]|0)|0;c[(c[r>>2]|0)+(c[z>>2]<<2)>>2]=b;c[z>>2]=(c[z>>2]|0)+1}c[w>>2]=1}b:do{if((c[p>>2]|0)==100){c[t>>2]=(c[r>>2]|0)+(c[x>>2]<<2);c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[x>>2]|0)){break b}b=ve(c[s>>2]|0,c[z>>2]|0)|0;c[(c[t>>2]|0)+(c[z>>2]<<2)>>2]=b;if((c[(c[t>>2]|0)+(c[z>>2]<<2)>>2]|0)==0?(we(c[s>>2]|0,c[z>>2]|0)|0)!=5:0){k=28;break a}c[z>>2]=(c[z>>2]|0)+1}}}while(0);if((xb[c[y>>2]&15](c[A>>2]|0,c[x>>2]|0,c[t>>2]|0,c[r>>2]|0)|0)!=0){k=31;break a}}}while(0)}while((c[p>>2]|0)==100);c[p>>2]=sd(c[s>>2]|0)|0;c[s>>2]=0;c[j>>2]=c[v>>2];while(1){if((a[48+(d[c[j>>2]>>0]|0)>>0]&1|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}Wb(c[n>>2]|0,c[r>>2]|0);c[r>>2]=0}if((k|0)==28){a[(c[n>>2]|0)+64>>0]=1}else if((k|0)==31){c[p>>2]=4;sd(c[s>>2]|0)|0;c[s>>2]=0;Jc(c[n>>2]|0,4,0,q)}if((c[s>>2]|0)!=0){sd(c[s>>2]|0)|0}Wb(c[n>>2]|0,c[r>>2]|0);c[p>>2]=td(c[n>>2]|0,c[p>>2]|0)|0;do{if(((c[p>>2]|0)!=0?(b=c[p>>2]|0,(b|0)==(hf(c[n>>2]|0)|0)):0)?(c[m>>2]|0)!=0:0){c[o>>2]=1+(Mb(jf(c[n>>2]|0)|0)|0);b=fc(c[o>>2]|0)|0;c[c[m>>2]>>2]=b;if((c[c[m>>2]>>2]|0)!=0){e=c[c[m>>2]>>2]|0;b=jf(c[n>>2]|0)|0;dE(e|0,b|0,c[o>>2]|0)|0;break}else{c[p>>2]=7;Jc(c[n>>2]|0,7,0,q);break}}else{k=45}}while(0);if((k|0)==45?(c[m>>2]|0)!=0:0){c[c[m>>2]>>2]=0}c[l>>2]=c[p>>2];b=c[l>>2]|0;i=u;return b|0}function ff(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;do{if((c[e>>2]|0)==0){nk(9744);c[d>>2]=0}else{c[f>>2]=c[(c[e>>2]|0)+76>>2];if(!((c[f>>2]|0)!=-1607883113)){c[d>>2]=1;break}if((Xf(c[e>>2]|0)|0)!=0){nk(30992)}c[d>>2]=0}}while(0);i=b;return c[d>>2]|0}function gf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;n=h+20|0;m=h+16|0;l=h+12|0;k=h+8|0;j=h+4|0;g=h;c[n>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;c[g>>2]=lf(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,1,0,c[k>>2]|0,c[j>>2]|0)|0;i=h;return c[g>>2]|0}function hf(a){a=a|0;var b=0,e=0,f=0;e=i;i=i+16|0;b=e+4|0;f=e;c[f>>2]=a;if((c[f>>2]|0)!=0?(Xf(c[f>>2]|0)|0)==0:0){c[b>>2]=Pb(123013)|0;f=c[b>>2]|0;i=e;return f|0}if((c[f>>2]|0)!=0?(d[(c[f>>2]|0)+64>>0]|0|0)==0:0){c[b>>2]=c[(c[f>>2]|0)+52>>2]&c[(c[f>>2]|0)+56>>2];f=c[b>>2]|0;i=e;return f|0}c[b>>2]=7;f=c[b>>2]|0;i=e;return f|0}function jf(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;if((c[f>>2]|0)==0){c[e>>2]=ae(7)|0;g=c[e>>2]|0;i=d;return g|0}if((Xf(c[f>>2]|0)|0)==0){c[e>>2]=ae(Pb(122944)|0)|0;g=c[e>>2]|0;i=d;return g|0}if((a[(c[f>>2]|0)+64>>0]|0)==0){c[g>>2]=Bd(c[(c[f>>2]|0)+224>>2]|0)|0;if((c[g>>2]|0)==0){c[g>>2]=ae(c[(c[f>>2]|0)+52>>2]|0)|0}}else{c[g>>2]=ae(7)|0}c[e>>2]=c[g>>2];g=c[e>>2]|0;i=d;return g|0}function kf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;n=h+20|0;m=h+16|0;l=h+12|0;k=h+8|0;j=h+4|0;g=h;c[n>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;c[g>>2]=lf(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,0,0,c[k>>2]|0,c[j>>2]|0)|0;i=h;return c[g>>2]|0}function lf(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=i;i=i+48|0;k=q+32|0;n=q+28|0;o=q+24|0;p=q+20|0;j=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;l=q;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[j>>2]=e;c[r>>2]=f;c[m>>2]=g;c[s>>2]=h;c[c[m>>2]>>2]=0;if((ff(c[n>>2]|0)|0)==0){c[k>>2]=Pb(100422)|0;a=c[k>>2]|0;i=q;return a|0}Qb(c[n>>2]|0);c[l>>2]=ay(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[j>>2]|0,c[r>>2]|0,c[m>>2]|0,c[s>>2]|0)|0;if((c[l>>2]|0)==17){qd(c[c[m>>2]>>2]|0)|0;c[l>>2]=ay(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[j>>2]|0,c[r>>2]|0,c[m>>2]|0,c[s>>2]|0)|0}c[k>>2]=c[l>>2];a=c[k>>2]|0;i=q;return a|0}function mf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;g=i;i=i+64|0;v=g;n=g+56|0;h=g+52|0;t=g+48|0;s=g+44|0;m=g+40|0;l=g+36|0;r=g+32|0;w=g+28|0;u=g+24|0;p=g+60|0;k=g+20|0;x=g+16|0;j=g+12|0;o=g+8|0;c[h>>2]=b;c[t>>2]=e;c[s>>2]=f;c[m>>2]=0;c[u>>2]=-1;c[k>>2]=c[c[h>>2]>>2];c[x>>2]=c[(c[k>>2]|0)+92>>2];if((c[(c[k>>2]|0)+140>>2]|0)==0){c[(c[k>>2]|0)+232>>2]=0}c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+480>>2]=c[t>>2];c[l>>2]=0;c[r>>2]=Zm(18)|0;f=c[k>>2]|0;if((c[r>>2]|0)==0){a[f+64>>0]=1;c[n>>2]=7;b=c[n>>2]|0;i=g;return b|0}a[p>>0]=a[f+242>>0]|0;if((c[(c[k>>2]|0)+268>>2]|0)!=0){a[(c[k>>2]|0)+242>>0]=1}while(1){if((a[(c[k>>2]|0)+64>>0]|0)!=0){break}if((a[(c[t>>2]|0)+(c[l>>2]|0)>>0]|0)==0){break}c[(c[h>>2]|0)+504>>2]=(c[t>>2]|0)+(c[l>>2]|0);b=fm((c[t>>2]|0)+(c[l>>2]|0)|0,w)|0;c[(c[h>>2]|0)+508>>2]=b;c[l>>2]=(c[l>>2]|0)+(c[(c[h>>2]|0)+508>>2]|0);if((c[l>>2]|0)>(c[x>>2]|0)){q=10;break}f=c[w>>2]|0;if((f|0)==150){q=14;break}else if((f|0)==151){if((c[(c[k>>2]|0)+232>>2]|0)!=0){q=13;break}else{continue}}else if((f|0)==1){c[(c[h>>2]|0)+480>>2]=(c[t>>2]|0)+(c[l>>2]|0)}f=c[r>>2]|0;e=c[w>>2]|0;y=(c[h>>2]|0)+504|0;b=c[h>>2]|0;c[v+0>>2]=c[y+0>>2];c[v+4>>2]=c[y+4>>2];_m(f,e,v,b);c[u>>2]=c[w>>2];if((c[(c[h>>2]|0)+12>>2]|0)!=0){break}}if((q|0)==10){c[(c[h>>2]|0)+12>>2]=18}else if((q|0)==13){Ne(c[h>>2]|0,9824,v);c[(c[h>>2]|0)+12>>2]=9}else if((q|0)==14){Wb(c[k>>2]|0,c[c[s>>2]>>2]|0);y=c[k>>2]|0;c[v>>2]=(c[h>>2]|0)+504;y=Oe(y,9840,v)|0;c[c[s>>2]>>2]=y;c[m>>2]=(c[m>>2]|0)+1}if(((a[(c[t>>2]|0)+(c[l>>2]|0)>>0]|0)==0?(c[m>>2]|0)==0:0)?(c[(c[h>>2]|0)+12>>2]|0)==0:0){if((c[u>>2]|0)!=1){b=c[r>>2]|0;e=(c[h>>2]|0)+504|0;y=c[h>>2]|0;c[v+0>>2]=c[e+0>>2];c[v+4>>2]=c[e+4>>2];_m(b,1,v,y);c[(c[h>>2]|0)+480>>2]=(c[t>>2]|0)+(c[l>>2]|0)}b=c[r>>2]|0;e=(c[h>>2]|0)+504|0;y=c[h>>2]|0;c[v+0>>2]=c[e+0>>2];c[v+4>>2]=c[e+4>>2];_m(b,0,v,y)}$m(c[r>>2]|0,13);a[(c[k>>2]|0)+242>>0]=a[p>>0]|0;if((a[(c[k>>2]|0)+64>>0]|0)!=0){c[(c[h>>2]|0)+12>>2]=7}if(((c[(c[h>>2]|0)+12>>2]|0)!=0?(c[(c[h>>2]|0)+12>>2]|0)!=101:0)?(c[(c[h>>2]|0)+4>>2]|0)==0:0){b=(c[h>>2]|0)+4|0;y=c[k>>2]|0;c[v>>2]=ae(c[(c[h>>2]|0)+12>>2]|0)|0;an(b,y,1456,v)}if((c[(c[h>>2]|0)+4>>2]|0)!=0){c[c[s>>2]>>2]=c[(c[h>>2]|0)+4>>2];y=c[(c[h>>2]|0)+12>>2]|0;c[v>>2]=c[c[s>>2]>>2];rc(y,1456,v);c[(c[h>>2]|0)+4>>2]=0;c[m>>2]=(c[m>>2]|0)+1}if(((c[(c[h>>2]|0)+8>>2]|0)!=0?(c[(c[h>>2]|0)+64>>2]|0)>0:0)?(d[(c[h>>2]|0)+18>>0]|0)==0:0){bn(c[(c[h>>2]|0)+8>>2]|0);c[(c[h>>2]|0)+8>>2]=0}if((d[(c[h>>2]|0)+18>>0]|0)==0){Wb(c[k>>2]|0,c[(c[h>>2]|0)+400>>2]|0);c[(c[h>>2]|0)+400>>2]=0;c[(c[h>>2]|0)+396>>2]=0}gc(c[(c[h>>2]|0)+520>>2]|0);if((a[(c[h>>2]|0)+451>>0]|0)==0){Ub(c[k>>2]|0,c[(c[h>>2]|0)+484>>2]|0)}if((a[(c[h>>2]|0)+449>>0]|0)!=0){cn(c[k>>2]|0,c[(c[h>>2]|0)+532>>2]|0)}Tb(c[k>>2]|0,c[(c[h>>2]|0)+488>>2]|0);c[l>>2]=(c[(c[h>>2]|0)+444>>2]|0)-1;while(1){p=c[k>>2]|0;if((c[l>>2]|0)<0){break}Wb(p,c[(c[(c[h>>2]|0)+472>>2]|0)+(c[l>>2]<<2)>>2]|0);c[l>>2]=(c[l>>2]|0)+ -1}Wb(p,c[(c[h>>2]|0)+472>>2]|0);while(1){if((c[(c[h>>2]|0)+404>>2]|0)==0){break}c[j>>2]=c[(c[h>>2]|0)+404>>2];c[(c[h>>2]|0)+404>>2]=c[c[j>>2]>>2];Wb(c[k>>2]|0,c[j>>2]|0)}while(1){if((c[(c[h>>2]|0)+524>>2]|0)==0){break}c[o>>2]=c[(c[h>>2]|0)+524>>2];c[(c[h>>2]|0)+524>>2]=c[(c[o>>2]|0)+72>>2];Ub(c[k>>2]|0,c[o>>2]|0)}if((c[m>>2]|0)>0?(c[(c[h>>2]|0)+12>>2]|0)==0:0){c[(c[h>>2]|0)+12>>2]=1}c[n>>2]=c[m>>2];y=c[n>>2]|0;i=g;return y|0}function nf(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=ne(c[f>>2]|0,40)|0;if((c[e>>2]|0)==0){f=c[e>>2]|0;i=d;return f|0}b[(c[e>>2]|0)+28>>1]=1;c[c[e>>2]>>2]=c[f>>2];f=c[e>>2]|0;i=d;return f|0}function of(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;j=m+12|0;l=m+8|0;k=m+4|0;h=m+16|0;n=m;c[j>>2]=b;c[l>>2]=d;c[k>>2]=e;a[h>>0]=f;c[n>>2]=g;if((c[j>>2]|0)==0){i=m;return}Qd(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,a[h>>0]|0,c[n>>2]|0)|0;i=m;return}function pf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}yd(c[d>>2]|0);Wb(c[c[d>>2]>>2]|0,c[d>>2]|0);i=b;return}function qf(){return 8}function rf(){return 1504}function sf(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0;f=i;i=i+16|0;e=f+12|0;d=f+8|0;a=f+4|0;b=f;if((c[38548>>2]|0)==0){yf()}h=392|0;g=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(g|0));if((c[38516>>2]|0)!=0){c[98]=8}if(((c[38704>>2]|0)!=0?(c[38708>>2]|0)>=100:0)?(c[38712>>2]|0)>0:0){c[a>>2]=c[38708>>2]&-8;c[38708>>2]=c[a>>2];c[b>>2]=c[38704>>2];c[d>>2]=c[38712>>2];c[420>>2]=c[b>>2];c[424>>2]=c[d>>2];c[e>>2]=0;while(1){if((c[e>>2]|0)>=((c[d>>2]|0)-1|0)){break}c[c[b>>2]>>2]=(c[b>>2]|0)+(c[a>>2]|0);c[b>>2]=c[c[b>>2]>>2];c[e>>2]=(c[e>>2]|0)+1}c[c[b>>2]>>2]=0;c[416>>2]=(c[b>>2]|0)+4}else{c[416>>2]=0;c[38704>>2]=0;c[38708>>2]=0;c[38712>>2]=0}if(((c[38716>>2]|0)!=0?(c[38720>>2]|0)>=512:0)?(c[38724>>2]|0)>=1:0){g=c[38568>>2]|0;h=c[38576>>2]|0;h=ub[g&31](h)|0;i=f;return h|0}c[38716>>2]=0;c[38720>>2]=0;c[38724>>2]=0;g=c[38568>>2]|0;h=c[38576>>2]|0;h=ub[g&31](h)|0;i=f;return h|0}function tf(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;b=a+8|0;d=a+4|0;e=a;c[d>>2]=1576;c[e>>2]=6184;c[b>>2]=0;while(1){if((c[b>>2]|0)>=56){break}sk(c[d>>2]|0,(c[e>>2]|0)+((c[b>>2]|0)*36|0)|0);c[b>>2]=(c[b>>2]|0)+1}am();bm();i=a;return}function uf(){var a=0,b=0;a=i;if((c[38624>>2]|0)==0){zf()}b=ub[c[38624>>2]&31](c[38620>>2]|0)|0;i=a;return b|0}function vf(){var a=0,b=0,d=0;a=i;i=i+16|0;b=a+4|0;d=a;c[d>>2]=ec(10)|0;if((c[d>>2]|0)==0){c[b>>2]=7;d=c[b>>2]|0;i=a;return d|0}else{gc(c[d>>2]|0);c[b>>2]=wc()|0;d=c[b>>2]|0;i=a;return d|0}return 0}function wf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;j=e+8|0;f=e+4|0;h=e;c[g>>2]=a;c[j>>2]=b;c[f>>2]=d;if((c[3164>>2]|0)==0){i=e;return}c[j>>2]=c[j>>2]&-8;c[3168>>2]=c[j>>2];a=c[f>>2]|0;c[3196>>2]=a;c[3172>>2]=a;if((c[f>>2]|0)>90){d=10}else{d=((c[f>>2]|0)/10|0)+1|0}c[3176>>2]=d;c[3180>>2]=c[g>>2];c[3192>>2]=0;c[3200>>2]=0;while(1){a=c[f>>2]|0;c[f>>2]=a+ -1;d=c[g>>2]|0;if((a|0)==0){break}c[h>>2]=d;c[c[h>>2]>>2]=c[3192>>2];c[3192>>2]=c[h>>2];c[g>>2]=(c[g>>2]|0)+(c[j>>2]|0)}c[3184>>2]=d;i=e;return}function xf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+48|0;d=f+44|0;k=f+40|0;h=f+24|0;e=f+16|0;j=f+8|0;g=f;c[k>>2]=a;c[e>>2]=0;if((c[38736>>2]|0)!=0){c[d>>2]=Pb(121405)|0;a=c[d>>2]|0;i=f;return a|0}c[h>>2]=b;do{switch(c[k>>2]|0){case 7:{k=c[h>>2]|0;a=c[k>>2]|0;c[h>>2]=k+4;c[38716>>2]=a;a=c[h>>2]|0;k=c[a>>2]|0;c[h>>2]=a+4;c[38720>>2]=k;k=c[h>>2]|0;a=c[k>>2]|0;c[h>>2]=k+4;c[38724>>2]=a;break};case 9:{k=c[h>>2]|0;a=c[k>>2]|0;c[h>>2]=k+4;c[9628]=a;break};case 5:{if((c[38548>>2]|0)==0){yf()}k=c[h>>2]|0;a=c[k>>2]|0;c[h>>2]=k+4;c[a+0>>2]=c[38548>>2];c[a+4>>2]=c[38552>>2];c[a+8>>2]=c[38556>>2];c[a+12>>2]=c[38560>>2];c[a+16>>2]=c[38564>>2];c[a+20>>2]=c[38568>>2];c[a+24>>2]=c[38572>>2];c[a+28>>2]=c[38576>>2];break};case 4:{k=c[h>>2]|0;a=c[k>>2]|0;c[h>>2]=k+4;c[38548>>2]=c[a+0>>2];c[38552>>2]=c[a+4>>2];c[38556>>2]=c[a+8>>2];c[38560>>2]=c[a+12>>2];c[38564>>2]=c[a+16>>2];c[38568>>2]=c[a+20>>2];c[38572>>2]=c[a+24>>2];c[38576>>2]=c[a+28>>2];break};case 19:{if((c[38624>>2]|0)==0){zf()}g=c[h>>2]|0;j=c[g>>2]|0;c[h>>2]=g+4;j=j+0|0;h=38616|0;g=j+52|0;do{c[j>>2]=c[h>>2];j=j+4|0;h=h+4|0}while((j|0)<(g|0));break};case 22:{a=c[h>>2]|0;k=a;l=c[k>>2]|0;k=c[k+4>>2]|0;c[h>>2]=a+8;a=j;c[a>>2]=l;c[a+4>>2]=k;a=c[h>>2]|0;k=a;l=c[k>>2]|0;k=c[k+4>>2]|0;c[h>>2]=a+8;a=g;c[a>>2]=l;c[a+4>>2]=k;a=g;b=c[a+4>>2]|0;a=(c[g+4>>2]|0)<0|((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>0);b=g;c[b>>2]=a?0:l;c[b+4>>2]=a?0:k;b=g;k=c[b+4>>2]|0;a=38696|0;c[a>>2]=c[b>>2];c[a+4>>2]=k;if((c[j+4>>2]|0)<0){l=j;c[l>>2]=0;c[l+4>>2]=0}a=j;b=c[a+4>>2]|0;l=g;k=c[l+4>>2]|0;if((b|0)>(k|0)|((b|0)==(k|0)?(c[a>>2]|0)>>>0>(c[l>>2]|0)>>>0:0)){k=g;a=c[k+4>>2]|0;l=j;c[l>>2]=c[k>>2];c[l+4>>2]=a}k=j;a=c[k+4>>2]|0;l=38688|0;c[l>>2]=c[k>>2];c[l+4>>2]=a;break};case 20:{a=c[h>>2]|0;l=c[a>>2]|0;c[h>>2]=a+4;c[38528>>2]=l;break};case 17:{a=c[h>>2]|0;l=c[a>>2]|0;c[h>>2]=a+4;c[38524>>2]=l;break};case 13:{l=c[h>>2]|0;a=c[l>>2]|0;c[h>>2]=l+4;c[38540>>2]=a;a=c[h>>2]|0;l=c[a>>2]|0;c[h>>2]=a+4;c[38544>>2]=l;break};case 15:{c[e>>2]=1;break};case 6:{a=c[h>>2]|0;l=c[a>>2]|0;c[h>>2]=a+4;c[38704>>2]=l;l=c[h>>2]|0;a=c[l>>2]|0;c[h>>2]=l+4;c[38708>>2]=a;a=c[h>>2]|0;l=c[a>>2]|0;c[h>>2]=a+4;c[38712>>2]=l;break};case 14:{break};case 16:{l=c[h>>2]|0;a=c[l>>2]|0;c[h>>2]=l+4;c[38764>>2]=a;a=c[h>>2]|0;l=c[a>>2]|0;c[h>>2]=a+4;c[38768>>2]=l;break};case 18:{j=c[h>>2]|0;g=c[j>>2]|0;c[h>>2]=j+4;j=38616|0;h=g+0|0;g=j+52|0;do{c[j>>2]=c[h>>2];j=j+4|0;h=h+4|0}while((j|0)<(g|0));break};default:{c[e>>2]=1}}}while(0);c[d>>2]=c[e>>2];l=c[d>>2]|0;i=f;return l|0}function yf(){var a=0,b=0;a=i;i=i+16|0;b=a;c[b>>2]=6072;xf(4,b)|0;i=a;return}function zf(){var a=0,b=0;a=i;i=i+16|0;b=a;c[b>>2]=6016;xf(18,b)|0;i=a;return}function Af(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;f=b+12|0;g=b+8|0;d=b+4|0;e=b;c[f>>2]=a;Qb(c[f>>2]|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){break}c[d>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]<<4)+4>>2];if((c[d>>2]|0)!=0){c[e>>2]=Rb(c[d>>2]|0)|0;Bf(c[e>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}i=b;return 0}function Bf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Pk(c[(c[d>>2]|0)+204>>2]|0);i=b;return}function Cf(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=i;i=i+32|0;k=p+28|0;h=p+24|0;r=p+20|0;q=p+16|0;n=p+12|0;l=p+8|0;o=p+4|0;m=p;c[h>>2]=d;c[r>>2]=e;c[q>>2]=f;c[n>>2]=g;if((c[(c[h>>2]|0)+244>>2]|0)!=0){c[k>>2]=5;d=c[k>>2]|0;i=p;return d|0}if((a[(c[h>>2]|0)+243>>0]|0)!=0){gc(c[(c[h>>2]|0)+268>>2]|0)}d=c[q>>2]&-8;c[q>>2]=d;c[q>>2]=(c[q>>2]|0)<=4?0:d;if((c[n>>2]|0)<0){c[n>>2]=0}do{if((c[q>>2]|0)!=0?(c[n>>2]|0)!=0:0){if((c[r>>2]|0)!=0){c[l>>2]=c[r>>2];break}dh();c[l>>2]=fc($(c[q>>2]|0,c[n>>2]|0)|0)|0;eh();if((c[l>>2]|0)!=0){d=Sb(c[l>>2]|0)|0;c[n>>2]=(d|0)/(c[q>>2]|0)|0}}else{j=9}}while(0);if((j|0)==9){c[q>>2]=0;c[l>>2]=0}c[(c[h>>2]|0)+268>>2]=c[l>>2];c[(c[h>>2]|0)+264>>2]=0;b[(c[h>>2]|0)+240>>1]=c[q>>2];if((c[l>>2]|0)!=0){c[m>>2]=c[l>>2];c[o>>2]=(c[n>>2]|0)-1;while(1){if((c[o>>2]|0)<0){break}c[c[m>>2]>>2]=c[(c[h>>2]|0)+264>>2];c[(c[h>>2]|0)+264>>2]=c[m>>2];c[m>>2]=(c[m>>2]|0)+(c[q>>2]|0);c[o>>2]=(c[o>>2]|0)+ -1}c[(c[h>>2]|0)+272>>2]=c[m>>2];a[(c[h>>2]|0)+242>>0]=1;a[(c[h>>2]|0)+243>>0]=(c[r>>2]|0)==0?1:0}else{c[(c[h>>2]|0)+268>>2]=c[h>>2];c[(c[h>>2]|0)+272>>2]=c[h>>2];a[(c[h>>2]|0)+242>>0]=0;a[(c[h>>2]|0)+243>>0]=0}c[k>>2]=0;d=c[k>>2]|0;i=p;return d|0}function Df(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(c[d>>2]|0)+32|0;D=c[a+4>>2]|0;i=b;return c[a>>2]|0}function Ef(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+80>>2]|0}function Ff(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+84>>2]|0}function Gf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Hf(c[d>>2]|0,0)|0;i=b;return a|0}function Hf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d;e=d+12|0;f=d+8|0;h=d+4|0;c[f>>2]=a;c[h>>2]=b;if((c[f>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}if((Xf(c[f>>2]|0)|0)==0){c[e>>2]=Pb(121912)|0;a=c[e>>2]|0;i=d;return a|0}Nk(c[f>>2]|0);Kk(c[f>>2]|0)|0;if((c[h>>2]|0)==0?(xk(c[f>>2]|0)|0)!=0:0){Jc(c[f>>2]|0,5,5944,g);c[e>>2]=5;a=c[e>>2]|0;i=d;return a|0}c[(c[f>>2]|0)+76>>2]=1691352191;od(c[f>>2]|0);c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}function If(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Hf(c[d>>2]|0,1)|0;i=b;return a|0}function Jf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e+4|0;g=e;c[f>>2]=a;c[h>>2]=b;c[g>>2]=d;c[(c[f>>2]|0)+436>>2]=c[h>>2];c[(c[f>>2]|0)+440>>2]=c[g>>2];c[(c[f>>2]|0)+444>>2]=0;c[(c[f>>2]|0)+484>>2]=0;i=e;return 0}function Kf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=c[e>>2]|0;if((c[f>>2]|0)>0){Jf(b,33,c[e>>2]|0)|0;c[(c[e>>2]|0)+484>>2]=c[f>>2];i=d;return 0}else{Jf(b,0,0)|0;i=d;return 0}return 0}function Lf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;j=d+12|0;h=d+8|0;f=d+4|0;g=d;c[j>>2]=a;c[h>>2]=b;c[f>>2]=c[j>>2];c[g>>2]=c[(c[j>>2]|0)+484>>2];if((((c[h>>2]|0)+1|0)*1e3|0)>(c[g>>2]|0)){c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}else{$f(c[c[f>>2]>>2]|0,1e6)|0;c[e>>2]=1;j=c[e>>2]|0;i=d;return j|0}return 0}function Mf(d,e,f,g,h,j,k,l,m){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;u=i;i=i+64|0;B=u;y=u+56|0;p=u+52|0;q=u+48|0;s=u+44|0;t=u+40|0;w=u+36|0;x=u+32|0;o=u+28|0;z=u+24|0;A=u+20|0;n=u+16|0;r=u+12|0;v=u+8|0;C=u+4|0;c[p>>2]=d;c[q>>2]=e;c[s>>2]=f;c[t>>2]=g;c[w>>2]=h;c[x>>2]=j;c[o>>2]=k;c[z>>2]=l;c[A>>2]=m;do{if((c[q>>2]|0)!=0){if((c[x>>2]|0)!=0){if((c[z>>2]|0)!=0){break}if((c[o>>2]|0)!=0){break}}if(((c[x>>2]|0)==0?(c[z>>2]|0)!=0:0)?(c[o>>2]|0)==0:0){break}if(((c[x>>2]|0)==0?(c[z>>2]|0)==0:0)?(c[o>>2]|0)!=0:0){break}if(!((c[s>>2]|0)<-1|(c[s>>2]|0)>127)?(d=Mb(c[q>>2]|0)|0,c[r>>2]=d,255>=(d|0)):0){c[v>>2]=c[t>>2]&2048;c[t>>2]=c[t>>2]&7;do{if((c[t>>2]|0)!=4){if((c[t>>2]|0)==5){c[C>>2]=Mf(c[p>>2]|0,c[q>>2]|0,c[s>>2]|0,1|c[v>>2],c[w>>2]|0,c[x>>2]|0,c[o>>2]|0,c[z>>2]|0,c[A>>2]|0)|0;if((c[C>>2]|0)==0){c[C>>2]=Mf(c[p>>2]|0,c[q>>2]|0,c[s>>2]|0,2|c[v>>2],c[w>>2]|0,c[x>>2]|0,c[o>>2]|0,c[z>>2]|0,c[A>>2]|0)|0}if((c[C>>2]|0)==0){c[t>>2]=3;break}c[y>>2]=c[C>>2];d=c[y>>2]|0;i=u;return d|0}}else{c[t>>2]=(a[1392]|0)==0?3:2}}while(0);c[n>>2]=Of(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]&255,0)|0;do{if(((c[n>>2]|0)!=0?(b[(c[n>>2]|0)+2>>1]&3|0)==(c[t>>2]|0):0)?(b[c[n>>2]>>1]|0)==(c[s>>2]|0):0){C=c[p>>2]|0;if((c[(c[p>>2]|0)+140>>2]|0)==0){bf(C);break}Jc(C,5,5e3,B);c[y>>2]=5;d=c[y>>2]|0;i=u;return d|0}}while(0);c[n>>2]=Of(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]&255,1)|0;if((c[n>>2]|0)==0){c[y>>2]=7;d=c[y>>2]|0;i=u;return d|0}wk(c[p>>2]|0,c[n>>2]|0);if((c[A>>2]|0)!=0){d=c[A>>2]|0;c[d>>2]=(c[d>>2]|0)+1}c[(c[n>>2]|0)+32>>2]=c[A>>2];b[(c[n>>2]|0)+2>>1]=b[(c[n>>2]|0)+2>>1]&3|c[v>>2];c[(c[n>>2]|0)+12>>2]=c[x>>2];c[(c[n>>2]|0)+16>>2]=c[o>>2];c[(c[n>>2]|0)+20>>2]=c[z>>2];c[(c[n>>2]|0)+4>>2]=c[w>>2];b[c[n>>2]>>1]=c[s>>2];c[y>>2]=0;d=c[y>>2]|0;i=u;return d|0}}}while(0);c[y>>2]=Pb(122454)|0;d=c[y>>2]|0;i=u;return d|0}function Nf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;g=f+16|0;j=f+12|0;h=f+8|0;k=f+4|0;e=f;c[g>>2]=a;c[j>>2]=b;c[h>>2]=d;c[k>>2]=Mb(c[j>>2]|0)|0;c[e>>2]=0;if((Of(c[g>>2]|0,c[j>>2]|0,c[k>>2]|0,c[h>>2]|0,1,0)|0)==0){c[e>>2]=Mf(c[g>>2]|0,c[j>>2]|0,c[h>>2]|0,1,0,51,0,0,0)|0}c[e>>2]=td(c[g>>2]|0,c[e>>2]|0)|0;i=f;return c[e>>2]|0}function Of(e,f,g,h,j,k){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;y=i;i=i+64|0;x=y+44|0;q=y+40|0;o=y+36|0;p=y+32|0;m=y+28|0;n=y+49|0;r=y+48|0;t=y+24|0;u=y+20|0;s=y+16|0;w=y+12|0;z=y+8|0;v=y+4|0;l=y;c[q>>2]=e;c[o>>2]=f;c[p>>2]=g;c[m>>2]=h;a[n>>0]=j;a[r>>0]=k;c[u>>2]=0;c[s>>2]=0;c[w>>2]=((d[696+(d[c[o>>2]>>0]|0)>>0]|0)+(c[p>>2]|0)|0)%23|0;c[t>>2]=qk((c[q>>2]|0)+328|0,c[w>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;while(1){if((c[t>>2]|0)==0){break}c[z>>2]=rk(c[t>>2]|0,c[m>>2]|0,a[n>>0]|0)|0;if((c[z>>2]|0)>(c[s>>2]|0)){c[u>>2]=c[t>>2];c[s>>2]=c[z>>2]}c[t>>2]=c[(c[t>>2]|0)+8>>2]}a:do{if((a[r>>0]|0)==0){if((c[u>>2]|0)!=0?(c[(c[q>>2]|0)+24>>2]&2097152|0)==0:0){break}c[v>>2]=1576;c[s>>2]=0;c[t>>2]=qk(c[v>>2]|0,c[w>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;while(1){if((c[t>>2]|0)==0){break a}c[l>>2]=rk(c[t>>2]|0,c[m>>2]|0,a[n>>0]|0)|0;if((c[l>>2]|0)>(c[s>>2]|0)){c[u>>2]=c[t>>2];c[s>>2]=c[l>>2]}c[t>>2]=c[(c[t>>2]|0)+8>>2]}}}while(0);if(((d[r>>0]|0)!=0?(c[s>>2]|0)<6:0)?(e=ne(c[q>>2]|0,37+(c[p>>2]|0)|0)|0,c[u>>2]=e,(e|0)!=0):0){c[(c[u>>2]|0)+24>>2]=(c[u>>2]|0)+36;b[c[u>>2]>>1]=c[m>>2];b[(c[u>>2]|0)+2>>1]=d[n>>0]|0;dE(c[(c[u>>2]|0)+24>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;a[(c[(c[u>>2]|0)+24>>2]|0)+(c[p>>2]|0)>>0]=0;sk((c[q>>2]|0)+328|0,c[u>>2]|0)}do{if((c[u>>2]|0)!=0){if(((c[(c[u>>2]|0)+16>>2]|0)==0?(c[(c[u>>2]|0)+12>>2]|0)==0:0)?(d[r>>0]|0)==0:0){break}c[x>>2]=c[u>>2];e=c[x>>2]|0;i=y;return e|0}}while(0);c[x>>2]=0;e=c[x>>2]|0;i=y;return e|0}function Pf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e;g=e+20|0;j=e+8|0;f=e+4|0;c[g>>2]=a;c[e+16>>2]=b;c[e+12>>2]=d;c[j>>2]=c[(c[c[g>>2]>>2]|0)+24>>2];c[h>>2]=c[j>>2];c[f>>2]=oc(4880,h)|0;Pd(c[g>>2]|0,c[f>>2]|0,-1);gc(c[f>>2]|0);i=e;return}function Qf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;b=c[f>>2]|0;if((c[e>>2]|0)>0){Rf(b,5,c[e>>2]|0)|0;i=d;return 0}else{Rf(b,0,0)|0;i=d;return 0}return 0}function Rf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;j=f+8|0;h=f+4|0;e=f;c[g>>2]=a;c[j>>2]=b;c[h>>2]=d;c[e>>2]=c[(c[g>>2]|0)+208>>2];c[(c[g>>2]|0)+204>>2]=c[j>>2];c[(c[g>>2]|0)+208>>2]=c[h>>2];i=f;return c[e>>2]|0}function Sf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f+12|0;g=f+8|0;h=f+4|0;k=f;c[j>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;if((c[k>>2]|0)<(c[j>>2]|0)){i=f;return 0}dh();Wf(c[g>>2]|0,c[h>>2]|0)|0;eh();i=f;return 0}function Tf(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+48|0;n=j;o=j+32|0;l=j+28|0;m=j+24|0;p=j+20|0;q=j+16|0;r=j+12|0;k=j+8|0;h=j+4|0;c[l>>2]=b;c[m>>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[h>>2]=10;if((c[q>>2]|0)!=0){c[c[q>>2]>>2]=-1}if((c[r>>2]|0)!=0){c[c[r>>2]>>2]=-1}if((c[p>>2]|0)<0|(c[p>>2]|0)>2){c[o>>2]=21;b=c[o>>2]|0;i=j;return b|0}if((c[m>>2]|0)!=0?(a[c[m>>2]>>0]|0)!=0:0){c[h>>2]=Uf(c[l>>2]|0,c[m>>2]|0)|0}if((c[h>>2]|0)<0){c[k>>2]=1;b=c[l>>2]|0;c[n>>2]=c[m>>2];Jc(b,1,1672,n)}else{c[k>>2]=Vf(c[l>>2]|0,c[h>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;Jc(c[l>>2]|0,c[k>>2]|0,0,n)}c[k>>2]=td(c[l>>2]|0,c[k>>2]|0)|0;c[o>>2]=c[k>>2];b=c[o>>2]|0;i=j;return b|0}function Uf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;j=d+16|0;g=d+12|0;e=d+8|0;f=d+4|0;h=d;c[j>>2]=a;c[g>>2]=b;c[e>>2]=-1;if((c[g>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[h>>2]=Mb(c[g>>2]|0)|0;c[e>>2]=(c[(c[j>>2]|0)+20>>2]|0)-1;c[f>>2]=(c[(c[j>>2]|0)+16>>2]|0)+(c[e>>2]<<4);while(1){if((c[e>>2]|0)<0){b=7;break}a=c[h>>2]|0;if((a|0)==(Mb(c[c[f>>2]>>2]|0)|0)?0==(vc(c[c[f>>2]>>2]|0,c[g>>2]|0)|0):0){b=7;break}c[e>>2]=(c[e>>2]|0)+ -1;c[f>>2]=(c[f>>2]|0)+ -16}if((b|0)==7){a=c[e>>2]|0;i=d;return a|0}return 0}function Vf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+32|0;k=n+28|0;p=n+24|0;m=n+20|0;g=n+16|0;o=n+12|0;h=n+8|0;l=n+4|0;j=n;c[k>>2]=a;c[p>>2]=b;c[m>>2]=d;c[g>>2]=e;c[o>>2]=f;c[h>>2]=0;c[j>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[k>>2]|0)+20>>2]|0)){break}if((c[h>>2]|0)!=0){break}if(((c[p>>2]|0)==10?1:(c[l>>2]|0)==(c[p>>2]|0))?(c[h>>2]=ok(c[(c[(c[k>>2]|0)+16>>2]|0)+(c[l>>2]<<4)+4>>2]|0,c[m>>2]|0,c[g>>2]|0,c[o>>2]|0)|0,c[g>>2]=0,c[o>>2]=0,(c[h>>2]|0)==5):0){c[j>>2]=1;c[h>>2]=0}c[l>>2]=(c[l>>2]|0)+1}if((c[h>>2]|0)==0?(c[j>>2]|0)!=0:0){a=5;i=n;return a|0}a=c[h>>2]|0;i=n;return a|0}function Wf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=Tf(c[f>>2]|0,c[e>>2]|0,0,0,0)|0;i=d;return a|0}function Xf(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;f=b+4|0;e=b;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+76>>2];if((c[e>>2]|0)!=1266094736&(c[e>>2]|0)!=-1607883113&(c[e>>2]|0)!=-264537850){nk(4824);c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}else{c[d>>2]=1;f=c[d>>2]|0;i=b;return f|0}return 0}function Yf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=Zf(c[f>>2]|0,c[e>>2]|0,6,0)|0;i=d;return a|0}function Zf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=i;i=i+48|0;q=p;m=p+40|0;o=p+36|0;r=p+32|0;g=p+28|0;n=p+24|0;l=p+20|0;j=p+16|0;s=p+12|0;k=p+8|0;h=p+4|0;c[o>>2]=b;c[r>>2]=d;c[g>>2]=e;c[n>>2]=f;c[k>>2]=0;c[h>>2]=0;c[c[r>>2]>>2]=0;c[j>>2]=Yb()|0;if((c[j>>2]|0)!=0){c[m>>2]=c[j>>2];b=c[m>>2]|0;i=p;return b|0}if((1<<(c[g>>2]&7)&70|0)==0){c[m>>2]=Pb(123516)|0;b=c[m>>2]|0;i=p;return b|0}do{if((c[38516>>2]|0)!=0){if((c[g>>2]&32768|0)!=0){c[s>>2]=0;break}if((c[g>>2]&65536|0)!=0){c[s>>2]=1;break}else{c[s>>2]=c[38520>>2];break}}else{c[s>>2]=0}}while(0);if((c[g>>2]&262144|0)==0){if((c[38732>>2]|0)!=0){c[g>>2]=c[g>>2]|131072}}else{c[g>>2]=c[g>>2]&-131073}c[g>>2]=c[g>>2]&-655129;c[l>>2]=Kc(520)|0;do{if((c[l>>2]|0)!=0){if((c[s>>2]|0)!=0?(c[(c[l>>2]|0)+12>>2]=8,(c[(c[l>>2]|0)+12>>2]|0)==0):0){gc(c[l>>2]|0);c[l>>2]=0;break}c[(c[l>>2]|0)+56>>2]=255;c[(c[l>>2]|0)+20>>2]=2;c[(c[l>>2]|0)+76>>2]=-264537850;c[(c[l>>2]|0)+16>>2]=(c[l>>2]|0)+448;e=(c[l>>2]|0)+88|0;s=1696|0;f=e+44|0;do{c[e>>2]=c[s>>2];e=e+4|0;s=s+4|0}while((e|0)<(f|0));a[(c[l>>2]|0)+62>>0]=1;a[(c[l>>2]|0)+66>>0]=-1;e=38688|0;d=c[e+4>>2]|0;b=(c[l>>2]|0)+40|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;c[(c[l>>2]|0)+72>>2]=0;b=(c[l>>2]|0)+24|0;c[b>>2]=c[b>>2]|9437264;gh((c[l>>2]|0)+420|0);gh((c[l>>2]|0)+300|0);_f(c[l>>2]|0,3320,1,0,8,0)|0;_f(c[l>>2]|0,3320,3,0,8,0)|0;_f(c[l>>2]|0,3320,2,0,8,0)|0;_f(c[l>>2]|0,3328,1,1,8,0)|0;if((a[(c[l>>2]|0)+64>>0]|0)==0){b=Ug(c[l>>2]|0,1,3320,0)|0;c[(c[l>>2]|0)+8>>2]=b;_f(c[l>>2]|0,3336,1,0,9,0)|0;c[(c[l>>2]|0)+48>>2]=c[g>>2];c[j>>2]=jh(c[n>>2]|0,c[o>>2]|0,g,c[l>>2]|0,k,h)|0;if((c[j>>2]|0)!=0){if((c[j>>2]|0)==7){a[(c[l>>2]|0)+64>>0]=1}e=c[l>>2]|0;d=c[j>>2]|0;b=(c[h>>2]|0)!=0?1456:0;c[q>>2]=c[h>>2];Jc(e,d,b,q);gc(c[h>>2]|0);break}c[j>>2]=kh(c[c[l>>2]>>2]|0,c[k>>2]|0,c[l>>2]|0,(c[(c[l>>2]|0)+16>>2]|0)+4|0,0,c[g>>2]|256)|0;if((c[j>>2]|0)!=0){if((c[j>>2]|0)==3082){c[j>>2]=7}Jc(c[l>>2]|0,c[j>>2]|0,0,q);break}b=lh(c[l>>2]|0,c[(c[(c[l>>2]|0)+16>>2]|0)+4>>2]|0)|0;c[(c[(c[l>>2]|0)+16>>2]|0)+12>>2]=b;b=lh(c[l>>2]|0,0)|0;c[(c[(c[l>>2]|0)+16>>2]|0)+28>>2]=b;c[c[(c[l>>2]|0)+16>>2]>>2]=3344;a[(c[(c[l>>2]|0)+16>>2]|0)+8>>0]=3;c[(c[(c[l>>2]|0)+16>>2]|0)+16>>2]=1496;a[(c[(c[l>>2]|0)+16>>2]|0)+24>>0]=1;c[(c[l>>2]|0)+76>>2]=-1607883113;if((a[(c[l>>2]|0)+64>>0]|0)==0){Jc(c[l>>2]|0,0,0,q);mh(c[l>>2]|0);c[j>>2]=hf(c[l>>2]|0)|0;if((c[j>>2]|0)==0?(nh(c[l>>2]|0),c[j>>2]=hf(c[l>>2]|0)|0,(c[j>>2]|0)!=0):0){break}if((c[j>>2]|0)!=0){Jc(c[l>>2]|0,c[j>>2]|0,0,q)}Cf(c[l>>2]|0,0,c[38540>>2]|0,c[38544>>2]|0)|0;Qf(c[l>>2]|0,1e3)|0}}}}while(0);gc(c[k>>2]|0);c[j>>2]=hf(c[l>>2]|0)|0;if((c[j>>2]|0)!=7){if((c[j>>2]|0)!=0){c[(c[l>>2]|0)+76>>2]=1266094736}}else{Gf(c[l>>2]|0)|0;c[l>>2]=0}c[c[r>>2]>>2]=c[l>>2];c[m>>2]=td(0,c[j>>2]|0)|0;b=c[m>>2]|0;i=p;return b|0}function _f(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;r=i;i=i+64|0;m=r;u=r+48|0;n=r+44|0;p=r+40|0;y=r+52|0;w=r+36|0;v=r+32|0;x=r+28|0;q=r+24|0;o=r+20|0;l=r+16|0;k=r+12|0;s=r+8|0;t=r+4|0;c[n>>2]=b;c[p>>2]=e;a[y>>0]=f;c[w>>2]=g;c[v>>2]=h;c[x>>2]=j;c[l>>2]=Mb(c[p>>2]|0)|0;c[o>>2]=d[y>>0]|0;if((c[o>>2]|0)==4|(c[o>>2]|0)==8){c[o>>2]=(a[1392]|0)==0?3:2}if((c[o>>2]|0)<1|(c[o>>2]|0)>3){c[u>>2]=Pb(123094)|0;b=c[u>>2]|0;i=r;return b|0}c[q>>2]=Ug(c[n>>2]|0,c[o>>2]&255,c[p>>2]|0,0)|0;a:do{if((c[q>>2]|0)!=0?(c[(c[q>>2]|0)+12>>2]|0)!=0:0){j=c[n>>2]|0;if((c[(c[n>>2]|0)+140>>2]|0)!=0){Jc(j,5,3248,m);c[u>>2]=5;b=c[u>>2]|0;i=r;return b|0}bf(j);Vg(c[n>>2]|0);if((d[(c[q>>2]|0)+4>>0]&-9|0)==(c[o>>2]|0)){c[k>>2]=Wg((c[n>>2]|0)+420|0,c[p>>2]|0,c[l>>2]|0)|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=3){break a}c[t>>2]=(c[k>>2]|0)+((c[s>>2]|0)*20|0);if((d[(c[t>>2]|0)+4>>0]|0)==(d[(c[q>>2]|0)+4>>0]|0)){if((c[(c[t>>2]|0)+16>>2]|0)!=0){rb[c[(c[t>>2]|0)+16>>2]&31](c[(c[t>>2]|0)+8>>2]|0)}c[(c[t>>2]|0)+12>>2]=0}c[s>>2]=(c[s>>2]|0)+1}}}}while(0);c[q>>2]=Ug(c[n>>2]|0,c[o>>2]&255,c[p>>2]|0,1)|0;if((c[q>>2]|0)==0){c[u>>2]=7;b=c[u>>2]|0;i=r;return b|0}else{c[(c[q>>2]|0)+12>>2]=c[v>>2];c[(c[q>>2]|0)+8>>2]=c[w>>2];c[(c[q>>2]|0)+16>>2]=c[x>>2];a[(c[q>>2]|0)+4>>0]=c[o>>2]|a[y>>0]&8;Jc(c[n>>2]|0,0,0,m);c[u>>2]=0;b=c[u>>2]|0;i=r;return b|0}return 0}function $f(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[f>>2]|0)+60>>2]&63](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function ag(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;o=k+28|0;n=k+24|0;j=k+20|0;g=k+16|0;f=k+12|0;l=k+8|0;m=k+4|0;h=k;c[o>>2]=a;c[n>>2]=b;c[j>>2]=d;c[g>>2]=e;c[f>>2]=1;c[l>>2]=bg(c[o>>2]|0,c[n>>2]|0)|0;if((c[l>>2]|0)==0){o=c[f>>2]|0;i=k;return o|0}Mc(c[l>>2]|0);c[m>>2]=Rb(c[l>>2]|0)|0;c[h>>2]=bd(c[m>>2]|0)|0;l=c[h>>2]|0;if((c[j>>2]|0)==7){c[c[g>>2]>>2]=l;c[f>>2]=0;o=c[f>>2]|0;i=k;return o|0}if((c[l>>2]|0)!=0){c[f>>2]=cg(c[h>>2]|0,c[j>>2]|0,c[g>>2]|0)|0;o=c[f>>2]|0;i=k;return o|0}else{c[f>>2]=12;o=c[f>>2]|0;i=k;return o|0}return 0}function bg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;d=e+12|0;f=e+8|0;h=e+4|0;g=e;c[f>>2]=a;c[h>>2]=b;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){b=8;break}if((c[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]<<4)+4>>2]|0)!=0){if((c[h>>2]|0)==0){b=6;break}if((vc(c[h>>2]|0,c[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]<<4)>>2]|0)|0)==0){b=6;break}}c[g>>2]=(c[g>>2]|0)+1}if((b|0)==6){c[d>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]<<4)+4>>2];a=c[d>>2]|0;i=e;return a|0}else if((b|0)==8){c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}return 0}function cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=pb[c[(c[c[h>>2]>>2]|0)+40>>2]&15](c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function dg(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+32|0;j=m+24|0;p=m+20|0;o=m+16|0;h=m+12|0;n=m+8|0;k=m+4|0;l=m;c[p>>2]=a;c[o>>2]=d;c[h>>2]=f;c[n>>2]=g;c[k>>2]=0;c[l>>2]=c[(c[p>>2]|0)+4>>2];Mc(c[p>>2]|0);if((b[(c[l>>2]|0)+22>>1]&2|0)!=0){c[j>>2]=8;p=c[j>>2]|0;i=m;return p|0}if((c[h>>2]|0)<0){c[h>>2]=(c[(c[l>>2]|0)+32>>2]|0)-(c[(c[l>>2]|0)+36>>2]|0)}if((c[o>>2]|0)>=512&(c[o>>2]|0)<=65536?((c[o>>2]|0)-1&c[o>>2]|0)==0:0){c[(c[l>>2]|0)+32>>2]=c[o>>2];xg(c[l>>2]|0)}c[k>>2]=yg(c[c[l>>2]>>2]|0,(c[l>>2]|0)+32|0,c[h>>2]|0)|0;c[(c[l>>2]|0)+36>>2]=(c[(c[l>>2]|0)+32>>2]|0)-(c[h>>2]&65535);if((c[n>>2]|0)!=0){p=(c[l>>2]|0)+22|0;b[p>>1]=e[p>>1]|0|2}c[j>>2]=c[k>>2];p=c[j>>2]|0;i=m;return p|0}function eg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=wg(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function fg(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((c[424>>2]|0)!=0?(c[38708>>2]|0)>=(c[e>>2]|0):0){c[d>>2]=c[420>>2];c[420>>2]=c[c[420>>2]>>2];c[424>>2]=(c[424>>2]|0)+ -1;hc(3,1);sg(8,c[e>>2]|0);e=c[d>>2]|0;i=b;return e|0}if((c[9628]|0)==0){c[d>>2]=ub[c[38548>>2]&31](c[e>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}sg(8,c[e>>2]|0);c[e>>2]=tg(c[e>>2]|0,d)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}hc(4,c[e>>2]|0);e=c[d>>2]|0;i=b;return e|0}function gg(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}if((c[d>>2]|0)>>>0>=(c[38704>>2]|0)>>>0?(c[d>>2]|0)>>>0<(c[416>>2]|0)>>>0:0){c[e>>2]=c[d>>2];c[c[e>>2]>>2]=c[420>>2];c[420>>2]=c[e>>2];c[424>>2]=(c[424>>2]|0)+1;hc(3,-1);i=b;return}if((c[9628]|0)!=0){c[f>>2]=Sb(c[d>>2]|0)|0;hc(4,0-(c[f>>2]|0)|0);hc(0,0-(c[f>>2]|0)|0);hc(9,-1);rb[c[38552>>2]&31](c[d>>2]|0);i=b;return}else{rb[c[38552>>2]&31](c[d>>2]|0);i=b;return}}function hg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[g>>2]=b;c[h>>2]=d;if((c[g>>2]|0)==0){c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}b=(Mb(c[g>>2]|0)|0)+1|0;c[g>>2]=(c[g>>2]|0)+b;while(1){if((a[c[g>>2]>>0]|0)==0){g=8;break}c[j>>2]=WD(c[g>>2]|0,c[h>>2]|0)|0;d=(Mb(c[g>>2]|0)|0)+1|0;c[g>>2]=(c[g>>2]|0)+d;d=c[g>>2]|0;if((c[j>>2]|0)==0){g=6;break}b=(Mb(d)|0)+1|0;c[g>>2]=(c[g>>2]|0)+b}if((g|0)==6){c[f>>2]=d;b=c[f>>2]|0;i=e;return b|0}else if((g|0)==8){c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}return 0}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;h=e+8|0;f=e+4|0;g=e;c[j>>2]=a;c[h>>2]=b;c[f>>2]=d;c[g>>2]=hg(c[j>>2]|0,c[h>>2]|0)|0;c[f>>2]=(c[f>>2]|0)!=0&1;if((c[g>>2]|0)!=0){j=(jg(c[g>>2]|0,c[f>>2]|0)|0)&255;i=e;return j|0}else{j=c[f>>2]|0;i=e;return j|0}return 0}function jg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=((pg(c[f>>2]|0,1,c[e>>2]|0)|0)&255|0)!=0&255;i=d;return a|0}function kg(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;q=i;i=i+64|0;p=q+48|0;k=q+44|0;n=q+40|0;w=q+36|0;v=q+52|0;s=q+32|0;u=q;r=q+28|0;l=q+24|0;o=q+20|0;h=q+16|0;t=q+12|0;m=q+8|0;c[k>>2]=b;c[n>>2]=e;c[w>>2]=f;a[v>>0]=g;e=u;c[e>>2]=0;c[e+4>>2]=0;c[r>>2]=0;c[o>>2]=0;c[h>>2]=0;c[m>>2]=(c[k>>2]|0)+(c[w>>2]|0);if((d[v>>0]|0)==1){c[s>>2]=1}else{c[s>>2]=2;c[l>>2]=3-(d[v>>0]|0);while(1){if((c[l>>2]|0)>=(c[w>>2]|0)){break}if((a[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0)!=0){break}c[l>>2]=(c[l>>2]|0)+2}c[h>>2]=(c[l>>2]|0)<(c[w>>2]|0)&1;c[m>>2]=(c[k>>2]|0)+(c[l>>2]|0)+(d[v>>0]|0)+ -3;c[k>>2]=(c[k>>2]|0)+(a[v>>0]&1)}while(1){if(!((c[k>>2]|0)>>>0<(c[m>>2]|0)>>>0)){break}if((a[48+(d[c[k>>2]>>0]|0)>>0]&1|0)==0){break}c[k>>2]=(c[k>>2]|0)+(c[s>>2]|0)}do{if((c[k>>2]|0)>>>0<(c[m>>2]|0)>>>0){if((a[c[k>>2]>>0]|0)==45){c[r>>2]=1;c[k>>2]=(c[k>>2]|0)+(c[s>>2]|0);break}if((a[c[k>>2]>>0]|0)==43){c[k>>2]=(c[k>>2]|0)+(c[s>>2]|0)}}}while(0);c[t>>2]=c[k>>2];while(1){if(!((c[k>>2]|0)>>>0<(c[m>>2]|0)>>>0)){break}if((a[c[k>>2]>>0]|0)!=48){break}c[k>>2]=(c[k>>2]|0)+(c[s>>2]|0)}c[l>>2]=0;while(1){if(((c[k>>2]|0)+(c[l>>2]|0)|0)>>>0<(c[m>>2]|0)>>>0?(w=a[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0,c[o>>2]=w,(w|0)>=48):0){b=(c[o>>2]|0)<=57}else{b=0}g=u;v=c[g>>2]|0;g=c[g+4>>2]|0;if(!b){break}w=lE(v|0,g|0,10,0)|0;e=c[o>>2]|0;e=bE(w|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;e=ZD(e|0,D|0,48,0)|0;w=u;c[w>>2]=e;c[w+4>>2]=D;c[l>>2]=(c[l>>2]|0)+(c[s>>2]|0)}b=(c[r>>2]|0)!=0;do{if(!(g>>>0>2147483647|(g|0)==2147483647&v>>>0>4294967295)){v=c[u>>2]|0;u=c[u+4>>2]|0;if(b){e=ZD(0,0,v|0,u|0)|0;w=c[n>>2]|0;c[w>>2]=e;c[w+4>>2]=D;break}else{w=c[n>>2]|0;c[w>>2]=v;c[w+4>>2]=u;break}}else{w=c[n>>2]|0;c[w>>2]=b?0:-1;c[w+4>>2]=b?-2147483648:2147483647}}while(0);if(!((c[o>>2]|0)!=0?((c[k>>2]|0)+(c[l>>2]|0)|0)>>>0<(c[m>>2]|0)>>>0:0)){j=33}do{if((j|0)==33){if((c[l>>2]|0)==0?(c[t>>2]|0)==(c[k>>2]|0):0){break}if((c[l>>2]|0)<=((c[s>>2]|0)*19|0)?(c[h>>2]|0)==0:0){if((c[l>>2]|0)<((c[s>>2]|0)*19|0)){c[p>>2]=0;w=c[p>>2]|0;i=q;return w|0}c[o>>2]=og(c[k>>2]|0,c[s>>2]|0)|0;if((c[o>>2]|0)<0){c[p>>2]=0;w=c[p>>2]|0;i=q;return w|0}if((c[o>>2]|0)>0){c[p>>2]=1;w=c[p>>2]|0;i=q;return w|0}else{c[p>>2]=(c[r>>2]|0)!=0?0:2;w=c[p>>2]|0;i=q;return w|0}}}}while(0);c[p>>2]=1;w=c[p>>2]|0;i=q;return w|0}function lg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=ng(c[c[(c[d>>2]|0)+4>>2]>>2]|0,1)|0;i=b;return a|0}function mg(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;i=e;return(b[(c[(c[d>>2]|0)+4>>2]|0)+22>>1]&1|0)!=0|0}function ng(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=b;if((c[g>>2]|0)!=0?(d[(c[f>>2]|0)+15>>0]|0|0)!=0:0){g=1472;i=e;return g|0}g=c[(c[f>>2]|0)+168>>2]|0;i=e;return g|0}function og(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;e=f+8|0;j=f+4|0;k=f;c[g>>2]=b;c[h>>2]=d;c[e>>2]=0;c[k>>2]=1744;c[j>>2]=0;while(1){if((c[e>>2]|0)!=0){break}if((c[j>>2]|0)>=18){break}b=$(c[j>>2]|0,c[h>>2]|0)|0;c[e>>2]=((a[(c[g>>2]|0)+b>>0]|0)-(a[(c[k>>2]|0)+(c[j>>2]|0)>>0]|0)|0)*10;c[j>>2]=(c[j>>2]|0)+1}if((c[e>>2]|0)!=0){b=c[e>>2]|0;i=f;return b|0}c[e>>2]=(a[(c[g>>2]|0)+((c[h>>2]|0)*18|0)>>0]|0)-56;b=c[e>>2]|0;i=f;return b|0}function pg(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;g=k+20|0;m=k+16|0;n=k+12|0;h=k+8|0;j=k+4|0;l=k;c[m>>2]=b;c[n>>2]=e;c[h>>2]=f;f=c[m>>2]|0;if((a[48+(d[c[m>>2]>>0]|0)>>0]&4|0)!=0){a[g>>0]=qg(f)|0;b=a[g>>0]|0;i=k;return b|0}c[l>>2]=Mb(f)|0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(7-(c[n>>2]|0)|0)){l=9;break}if((d[1800+(c[j>>2]|0)>>0]|0|0)==(c[l>>2]|0)?(Lb(1768+(d[1792+(c[j>>2]|0)>>0]|0)|0,c[m>>2]|0,c[l>>2]|0)|0)==0:0){l=7;break}c[j>>2]=(c[j>>2]|0)+1}if((l|0)==7){a[g>>0]=a[1808+(c[j>>2]|0)>>0]|0;b=a[g>>0]|0;i=k;return b|0}else if((l|0)==9){a[g>>0]=c[h>>2];b=a[g>>0]|0;i=k;return b|0}return 0}function qg(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=0;if((c[e>>2]|0)!=0){rg(c[e>>2]|0,b)|0}i=d;return c[b>>2]|0}function rg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;e=f+28|0;l=f+24|0;h=f+20|0;g=f;k=f+16|0;m=f+12|0;j=f+8|0;c[l>>2]=b;c[h>>2]=d;b=g;c[b>>2]=0;c[b+4>>2]=0;c[j>>2]=0;if((a[c[l>>2]>>0]|0)!=45){if((a[c[l>>2]>>0]|0)==43){c[l>>2]=(c[l>>2]|0)+1}}else{c[j>>2]=1;c[l>>2]=(c[l>>2]|0)+1}while(1){if((a[c[l>>2]>>0]|0)!=48){break}c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=11){break}b=(a[(c[l>>2]|0)+(c[k>>2]|0)>>0]|0)-48|0;c[m>>2]=b;if((b|0)<0){break}if((c[m>>2]|0)>9){break}b=g;b=lE(c[b>>2]|0,c[b+4>>2]|0,10,0)|0;d=c[m>>2]|0;d=bE(b|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;b=g;c[b>>2]=d;c[b+4>>2]=D;c[k>>2]=(c[k>>2]|0)+1}if((c[k>>2]|0)>10){c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}m=g;b=c[j>>2]|0;b=ZD(c[m>>2]|0,c[m+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;m=D;if((m|0)>0|(m|0)==0&b>>>0>2147483647){c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}if((c[j>>2]|0)!=0){m=g;m=ZD(0,0,c[m>>2]|0,c[m+4>>2]|0)|0;b=g;c[b>>2]=m;c[b+4>>2]=D}c[c[h>>2]>>2]=c[g>>2];c[e>>2]=1;b=c[e>>2]|0;i=f;return b|0}function sg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[304+(c[e>>2]<<2)>>2]=c[f>>2];if((c[304+(c[e>>2]<<2)>>2]|0)<=(c[344+(c[e>>2]<<2)>>2]|0)){i=d;return}c[344+(c[e>>2]<<2)>>2]=c[304+(c[e>>2]<<2)>>2];i=d;return}function tg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;g=i;i=i+32|0;j=g+16|0;e=g+12|0;f=g+8|0;d=g+4|0;h=g;c[j>>2]=a;c[e>>2]=b;c[f>>2]=ub[c[38564>>2]&31](c[j>>2]|0)|0;sg(5,c[j>>2]|0);do{if((c[408>>2]|0)!=0){c[h>>2]=ug(0)|0;a=c[h>>2]|0;b=((a|0)<0)<<31>>31;h=400|0;j=c[f>>2]|0;j=ZD(c[h>>2]|0,c[h+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0;h=D;if((b|0)>(h|0)|(b|0)==(h|0)&a>>>0>=j>>>0){c[428>>2]=1;vg(c[f>>2]|0);break}else{c[428>>2]=0;break}}}while(0);c[d>>2]=ub[c[38548>>2]&31](c[f>>2]|0)|0;if((c[d>>2]|0)==0){a=c[d>>2]|0;j=c[e>>2]|0;c[j>>2]=a;j=c[f>>2]|0;i=g;return j|0}c[f>>2]=Sb(c[d>>2]|0)|0;hc(0,c[f>>2]|0);hc(9,1);a=c[d>>2]|0;j=c[e>>2]|0;c[j>>2]=a;j=c[f>>2]|0;i=g;return j|0}function ug(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[304+(c[b>>2]<<2)>>2]|0}function vg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;g=b+16|0;d=b+12|0;e=b;f=b+8|0;c[g>>2]=a;if((c[408>>2]|0)==0){i=b;return}c[d>>2]=c[408>>2];h=ug(0)|0;a=e;c[a>>2]=h;c[a+4>>2]=((h|0)<0)<<31>>31;c[f>>2]=c[412>>2];c[408>>2]=0;Bb[c[d>>2]&3](c[f>>2]|0,c[e>>2]|0,c[e+4>>2]|0,c[g>>2]|0);c[408>>2]=c[d>>2];c[412>>2]=c[f>>2];i=b;return}function wg(a,b){a=a|0;b=b|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;h=f;c[j>>2]=a;c[k>>2]=b;if((c[k>>2]|0)<2){c[g>>2]=27;a=c[g>>2]|0;i=f;return a|0}c[l>>2]=((d[696+(d[c[j>>2]>>0]|0)>>0]|0)<<2^(d[696+(d[(c[j>>2]|0)+((c[k>>2]|0)-1)>>0]|0)>>0]|0)*3^c[k>>2]|0)%127|0;c[h>>2]=(d[2376+(c[l>>2]|0)>>0]|0)-1;while(1){if((c[h>>2]|0)<0){b=9;break}if((d[2632+(c[h>>2]|0)>>0]|0|0)==(c[k>>2]|0)?(Lb(1816+(e[2760+(c[h>>2]<<1)>>1]|0)|0,c[j>>2]|0,c[k>>2]|0)|0)==0:0){b=7;break}c[h>>2]=(d[2504+(c[h>>2]|0)>>0]|0)-1}if((b|0)==7){c[g>>2]=d[3008+(c[h>>2]|0)>>0]|0;a=c[g>>2]|0;i=f;return a|0}else if((b|0)==9){c[g>>2]=27;a=c[g>>2]|0;i=f;return a|0}return 0}function xg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Dg(c[(c[d>>2]|0)+80>>2]|0);c[(c[d>>2]|0)+80>>2]=0;i=b;return}function yg(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;k=j+28|0;l=j+24|0;p=j+20|0;n=j+16|0;g=j+12|0;o=j+8|0;m=j;c[k>>2]=a;c[l>>2]=e;c[p>>2]=f;c[n>>2]=0;c[g>>2]=c[c[l>>2]>>2];if(!((d[(c[k>>2]|0)+15>>0]|0)!=0?(c[(c[k>>2]|0)+24>>2]|0)!=0:0)){h=3}if((((h|0)==3?(zg(c[(c[k>>2]|0)+204>>2]|0)|0)==0:0)?(c[g>>2]|0)!=0:0)?(c[g>>2]|0)!=(c[(c[k>>2]|0)+152>>2]|0):0){c[o>>2]=0;a=m;c[a>>2]=0;c[a+4>>2]=0;if((d[(c[k>>2]|0)+16>>0]|0)>0?(c[c[(c[k>>2]|0)+60>>2]>>2]|0)!=0:0){c[n>>2]=Ag(c[(c[k>>2]|0)+60>>2]|0,m)|0}if((c[n>>2]|0)==0?(c[o>>2]=Bg(c[g>>2]|0)|0,(c[o>>2]|0)==0):0){c[n>>2]=7}if((c[n>>2]|0)==0){Cg(c[k>>2]|0);a=m;a=bE(c[a>>2]|0,c[a+4>>2]|0,c[g>>2]|0,0)|0;a=ZD(a|0,D|0,1,0)|0;a=jE(a|0,D|0,c[g>>2]|0,0)|0;c[(c[k>>2]|0)+24>>2]=a;c[(c[k>>2]|0)+152>>2]=c[g>>2];Dg(c[(c[k>>2]|0)+200>>2]|0);c[(c[k>>2]|0)+200>>2]=c[o>>2];Eg(c[(c[k>>2]|0)+204>>2]|0,c[g>>2]|0)}}c[c[l>>2]>>2]=c[(c[k>>2]|0)+152>>2];if((c[n>>2]|0)!=0){a=c[n>>2]|0;i=j;return a|0}if((c[p>>2]|0)<0){c[p>>2]=b[(c[k>>2]|0)+142>>1]|0}b[(c[k>>2]|0)+142>>1]=c[p>>2];Fg(c[k>>2]|0);a=c[n>>2]|0;i=j;return a|0}function zg(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+12>>2]|0}function Ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+24>>2]&63](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Bg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Ng(c[d>>2]|0)|0;i=b;return a|0}function Cg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Hg(c[(c[d>>2]|0)+88>>2]|0);Ig(c[(c[d>>2]|0)+204>>2]|0);i=b;return}function Dg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Gg(c[d>>2]|0)|0;i=b;return}function Eg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[(c[e>>2]|0)+40>>2]|0)!=0){rb[c[38660>>2]&31](c[(c[e>>2]|0)+40>>2]|0);c[(c[e>>2]|0)+40>>2]=0;c[(c[e>>2]|0)+44>>2]=0}c[(c[e>>2]|0)+20>>2]=c[f>>2];i=d;return}function Fg(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return}function Gg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;f=b+8|0;e=b+4|0;g=b;c[f>>2]=a;c[e>>2]=0;if((c[f>>2]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}if((c[f>>2]|0)>>>0>=(c[3180>>2]|0)>>>0?(c[f>>2]|0)>>>0<(c[3184>>2]|0)>>>0:0){hc(1,-1);c[g>>2]=c[f>>2];c[c[g>>2]>>2]=c[3192>>2];c[3192>>2]=c[g>>2];c[3196>>2]=(c[3196>>2]|0)+1;c[3200>>2]=(c[3196>>2]|0)<(c[3176>>2]|0)&1}else{c[e>>2]=Sb(c[f>>2]|0)|0;hc(2,0-(c[e>>2]|0)|0);gc(c[f>>2]|0)}c[d>>2]=c[e>>2];g=c[d>>2]|0;i=b;return g|0}function Hg(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];while(1){if((c[d>>2]|0)==0){break}c[(c[d>>2]|0)+16>>2]=1;c[d>>2]=c[(c[d>>2]|0)+44>>2]}i=b;return}function Ig(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Jg(c[d>>2]|0,0);i=b;return}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;if((c[(c[e>>2]|0)+40>>2]|0)==0){i=d;return}c[g>>2]=c[c[e>>2]>>2];while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[(c[g>>2]|0)+32>>2];if((c[(c[g>>2]|0)+20>>2]|0)>>>0>(c[f>>2]|0)>>>0){Kg(c[g>>2]|0)}c[g>>2]=c[h>>2]}if((c[f>>2]|0)==0?(c[(c[e>>2]|0)+44>>2]|0)!=0:0){_D(c[(c[(c[e>>2]|0)+44>>2]|0)+4>>2]|0,0,c[(c[e>>2]|0)+20>>2]|0)|0;c[f>>2]=1}sb[c[38656>>2]&7](c[(c[e>>2]|0)+40>>2]|0,(c[f>>2]|0)+1|0);i=d;return}function Kg(a){a=a|0;var d=0,f=0;d=i;i=i+16|0;f=d;c[f>>2]=a;if((b[(c[f>>2]|0)+24>>1]&2|0)==0){i=d;return}Lg(c[f>>2]|0);a=(c[f>>2]|0)+24|0;b[a>>1]=e[a>>1]&-7;if((b[(c[f>>2]|0)+26>>1]|0)!=0){i=d;return}Mg(c[f>>2]|0);i=d;return}function Lg(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;g=h+8|0;f=h+4|0;j=h;c[g>>2]=e;c[f>>2]=c[(c[g>>2]|0)+28>>2];if((c[(c[f>>2]|0)+8>>2]|0)==(c[g>>2]|0)){c[j>>2]=c[(c[g>>2]|0)+36>>2];while(1){if((c[j>>2]|0)!=0){k=(b[(c[j>>2]|0)+24>>1]&4|0)!=0}else{k=0}e=c[j>>2]|0;if(!k){break}c[j>>2]=c[e+36>>2]}c[(c[f>>2]|0)+8>>2]=e}j=c[(c[g>>2]|0)+36>>2]|0;if((c[(c[g>>2]|0)+32>>2]|0)!=0){c[(c[(c[g>>2]|0)+32>>2]|0)+36>>2]=j}else{c[(c[f>>2]|0)+4>>2]=j}j=c[(c[g>>2]|0)+32>>2]|0;if((c[(c[g>>2]|0)+36>>2]|0)==0){c[c[f>>2]>>2]=j;if((c[c[f>>2]>>2]|0)==0?(d[(c[f>>2]|0)+28>>0]|0|0)!=0:0){a[(c[f>>2]|0)+29>>0]=2}}else{c[(c[(c[g>>2]|0)+36>>2]|0)+32>>2]=j}c[(c[g>>2]|0)+32>>2]=0;c[(c[g>>2]|0)+36>>2]=0;i=h;return}function Mg(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;c[e>>2]=c[(c[f>>2]|0)+28>>2];if((a[(c[e>>2]|0)+28>>0]|0)==0){i=d;return}if((c[(c[f>>2]|0)+20>>2]|0)==1){c[(c[e>>2]|0)+44>>2]=0}vb[c[38648>>2]&63](c[(c[e>>2]|0)+40>>2]|0,c[c[f>>2]>>2]|0,0);i=d;return}function Ng(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;b=d+4|0;e=d;c[f>>2]=a;c[b>>2]=0;sg(7,c[f>>2]|0);if((c[f>>2]|0)<=(c[3168>>2]|0)?(c[b>>2]=c[3192>>2],(c[b>>2]|0)!=0):0){c[3192>>2]=c[c[3192>>2]>>2];c[3196>>2]=(c[3196>>2]|0)+ -1;c[3200>>2]=(c[3196>>2]|0)<(c[3176>>2]|0)&1;hc(1,1)}if((c[b>>2]|0)!=0){f=c[b>>2]|0;i=d;return f|0}c[b>>2]=fc(c[f>>2]|0)|0;if((c[b>>2]|0)==0){f=c[b>>2]|0;i=d;return f|0}c[e>>2]=Sb(c[b>>2]|0)|0;hc(2,c[e>>2]|0);f=c[b>>2]|0;i=d;return f|0}function Og(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=Kc(512)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}c[c[d>>2]>>2]=c[e>>2];e=c[d>>2]|0;i=b;return e|0}function Pg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+32|0;h=m+28|0;j=m+24|0;k=m+20|0;o=m+16|0;p=m+12|0;n=m+8|0;f=m+4|0;l=m;c[j>>2]=b;c[k>>2]=e;if((c[j>>2]|0)==0){c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}c[k>>2]=(c[k>>2]|0)+ -1;while(1){if(!((c[c[j>>2]>>2]|0)>>>0>4e3)){break}if((c[(c[j>>2]|0)+8>>2]|0)==0){break}c[p>>2]=((c[k>>2]|0)>>>0)/((c[(c[j>>2]|0)+8>>2]|0)>>>0)|0;c[k>>2]=((c[k>>2]|0)>>>0)%((c[(c[j>>2]|0)+8>>2]|0)>>>0)|0;if((c[(c[j>>2]|0)+12+(c[p>>2]<<2)>>2]|0)==0?(b=Og(c[(c[j>>2]|0)+8>>2]|0)|0,c[(c[j>>2]|0)+12+(c[p>>2]<<2)>>2]=b,(c[(c[j>>2]|0)+12+(c[p>>2]<<2)>>2]|0)==0):0){g=8;break}c[j>>2]=c[(c[j>>2]|0)+12+(c[p>>2]<<2)>>2]}if((g|0)==8){c[h>>2]=7;b=c[h>>2]|0;i=m;return b|0}p=c[k>>2]|0;if((c[c[j>>2]>>2]|0)>>>0<=4e3){b=(c[j>>2]|0)+12+(((c[k>>2]|0)>>>0)/8|0)|0;a[b>>0]=d[b>>0]|0|1<<(p&7);c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}c[k>>2]=p+1;c[o>>2]=(p>>>0)%125|0;a:do{if((c[(c[j>>2]|0)+12+(c[o>>2]<<2)>>2]|0)==0){if(!((c[(c[j>>2]|0)+4>>2]|0)>>>0<124)){g=17}}else{while(1){if((c[(c[j>>2]|0)+12+(c[o>>2]<<2)>>2]|0)==(c[k>>2]|0)){break}b=(c[o>>2]|0)+1|0;c[o>>2]=b;c[o>>2]=(c[o>>2]|0)>>>0>=125?0:b;if((c[(c[j>>2]|0)+12+(c[o>>2]<<2)>>2]|0)==0){g=17;break a}}c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}}while(0);if((g|0)==17?(c[(c[j>>2]|0)+4>>2]|0)>>>0>=62:0){c[l>>2]=Le(0,500)|0;if((c[l>>2]|0)==0){c[h>>2]=7;b=c[h>>2]|0;i=m;return b|0}dE(c[l>>2]|0,(c[j>>2]|0)+12|0,500)|0;_D((c[j>>2]|0)+12|0,0,500)|0;c[(c[j>>2]|0)+8>>2]=(((c[c[j>>2]>>2]|0)+125-1|0)>>>0)/125|0;c[f>>2]=Pg(c[j>>2]|0,c[k>>2]|0)|0;c[n>>2]=0;while(1){if(!((c[n>>2]|0)>>>0<125)){break}if((c[(c[l>>2]|0)+(c[n>>2]<<2)>>2]|0)!=0){b=Pg(c[j>>2]|0,c[(c[l>>2]|0)+(c[n>>2]<<2)>>2]|0)|0;c[f>>2]=c[f>>2]|b}c[n>>2]=(c[n>>2]|0)+1}Wb(0,c[l>>2]|0);c[h>>2]=c[f>>2];b=c[h>>2]|0;i=m;return b|0}b=(c[j>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+1;c[(c[j>>2]|0)+12+(c[o>>2]<<2)>>2]=c[k>>2];c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}function Qg(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+32|0;j=n+24|0;k=n+20|0;o=n+16|0;p=n+12|0;m=n+8|0;l=n+4|0;g=n;c[j>>2]=b;c[k>>2]=e;c[o>>2]=f;if((c[j>>2]|0)==0){i=n;return}c[k>>2]=(c[k>>2]|0)+ -1;while(1){if((c[(c[j>>2]|0)+8>>2]|0)==0){break}c[p>>2]=((c[k>>2]|0)>>>0)/((c[(c[j>>2]|0)+8>>2]|0)>>>0)|0;c[k>>2]=((c[k>>2]|0)>>>0)%((c[(c[j>>2]|0)+8>>2]|0)>>>0)|0;c[j>>2]=c[(c[j>>2]|0)+12+(c[p>>2]<<2)>>2];if((c[j>>2]|0)==0){h=16;break}}if((h|0)==16){i=n;return}if((c[c[j>>2]>>2]|0)>>>0<=4e3){b=(c[j>>2]|0)+12+(((c[k>>2]|0)>>>0)/8|0)|0;a[b>>0]=(d[b>>0]|0)&~(1<<(c[k>>2]&7));i=n;return}c[l>>2]=c[o>>2];dE(c[l>>2]|0,(c[j>>2]|0)+12|0,500)|0;_D((c[j>>2]|0)+12|0,0,500)|0;c[(c[j>>2]|0)+4>>2]=0;c[m>>2]=0;while(1){if(!((c[m>>2]|0)>>>0<125)){break}if((c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)!=0?(c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)!=((c[k>>2]|0)+1|0):0){c[g>>2]=(((c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)-1|0)>>>0)%125|0;b=(c[j>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+1;while(1){if((c[(c[j>>2]|0)+12+(c[g>>2]<<2)>>2]|0)==0){break}b=(c[g>>2]|0)+1|0;c[g>>2]=b;c[g>>2]=(c[g>>2]|0)>>>0>=125?0:b}c[(c[j>>2]|0)+12+(c[g>>2]<<2)>>2]=c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]}c[m>>2]=(c[m>>2]|0)+1}i=n;return}function Rg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;l=e+4|0;j=e;c[g>>2]=a;c[h>>2]=b;if((c[g>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}if((c[h>>2]|0)==0?1:(c[h>>2]|0)>>>0>(c[c[g>>2]>>2]|0)>>>0){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}c[h>>2]=(c[h>>2]|0)+ -1;while(1){if((c[(c[g>>2]|0)+8>>2]|0)==0){break}c[l>>2]=((c[h>>2]|0)>>>0)/((c[(c[g>>2]|0)+8>>2]|0)>>>0)|0;c[h>>2]=((c[h>>2]|0)>>>0)%((c[(c[g>>2]|0)+8>>2]|0)>>>0)|0;c[g>>2]=c[(c[g>>2]|0)+12+(c[l>>2]<<2)>>2];if((c[g>>2]|0)==0){k=8;break}}if((k|0)==8){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}k=c[h>>2]|0;if((c[c[g>>2]>>2]|0)>>>0<=4e3){c[f>>2]=((d[(c[g>>2]|0)+12+((k>>>0)/8|0)>>0]|0)&1<<(c[h>>2]&7)|0)!=0&1;a=c[f>>2]|0;i=e;return a|0}c[h>>2]=k+1;c[j>>2]=(k>>>0)%125|0;while(1){if((c[(c[g>>2]|0)+12+(c[j>>2]<<2)>>2]|0)==0){k=16;break}if((c[(c[g>>2]|0)+12+(c[j>>2]<<2)>>2]|0)==(c[h>>2]|0)){k=14;break}c[j>>2]=(((c[j>>2]|0)+1|0)>>>0)%125|0}if((k|0)==14){c[f>>2]=1;a=c[f>>2]|0;i=e;return a|0}else if((k|0)==16){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}return 0}function Sg(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[c[b>>2]>>2]|0}function Tg(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((c[e>>2]|0)==0){i=b;return}a:do{if((c[(c[e>>2]|0)+8>>2]|0)!=0){c[d>>2]=0;while(1){if(!((c[d>>2]|0)>>>0<125)){break a}Tg(c[(c[e>>2]|0)+12+(c[d>>2]<<2)>>2]|0);c[d>>2]=(c[d>>2]|0)+1}}}while(0);gc(c[e>>2]|0);i=b;return}function Ug(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+32|0;n=j+12|0;k=j+16|0;m=j+8|0;l=j+4|0;h=j;c[n>>2]=b;a[k>>0]=e;c[m>>2]=f;c[l>>2]=g;g=c[n>>2]|0;if((c[m>>2]|0)!=0){c[h>>2]=_g(g,c[m>>2]|0,c[l>>2]|0)|0}else{c[h>>2]=c[g+8>>2]}if((c[h>>2]|0)==0){n=c[h>>2]|0;i=j;return n|0}c[h>>2]=(c[h>>2]|0)+(((d[k>>0]|0)-1|0)*20|0);n=c[h>>2]|0;i=j;return n|0}function Vg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;g=b+20|0;d=b+16|0;f=b+12|0;e=b+8|0;h=b+4|0;j=b;c[g>>2]=a;c[f>>2]=0;c[d>>2]=c[(c[g>>2]|0)+16>>2];while(1){if((c[f>>2]|0)>=(c[(c[g>>2]|0)+20>>2]|0)){break}a:do{if((c[(c[d>>2]|0)+4>>2]|0)!=0){Mc(c[(c[d>>2]|0)+4>>2]|0);c[e>>2]=c[(c[(c[d>>2]|0)+12>>2]|0)+16>>2];while(1){if((c[e>>2]|0)==0){break a}c[h>>2]=c[(c[e>>2]|0)+8>>2];c[j>>2]=c[(c[h>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break}if((c[(c[j>>2]|0)+40>>2]|0)!=0?(c[(c[(c[j>>2]|0)+40>>2]|0)+12>>2]|0)==(c[g>>2]|0):0){Zg(c[(c[j>>2]|0)+40>>2]|0);c[(c[j>>2]|0)+40>>2]=0}c[j>>2]=c[(c[j>>2]|0)+20>>2]}c[e>>2]=c[c[e>>2]>>2]}}}while(0);c[f>>2]=(c[f>>2]|0)+1;c[d>>2]=(c[d>>2]|0)+16}i=b;return}function Wg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;g=e+16|0;h=e+12|0;j=e+8|0;f=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if((c[(c[g>>2]|0)+12>>2]|0)!=0){a=Xg(c[h>>2]|0,c[j>>2]|0)|0;c[k>>2]=(a>>>0)%((c[c[g>>2]>>2]|0)>>>0)|0}else{c[k>>2]=0}c[f>>2]=Yg(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if((c[f>>2]|0)==0){a=0;i=e;return a|0}a=c[(c[f>>2]|0)+8>>2]|0;i=e;return a|0}function Xg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=0;while(1){b=c[f>>2]|0;if((c[g>>2]|0)<=0){break}b=b<<3^c[f>>2];a=c[h>>2]|0;c[h>>2]=a+1;c[f>>2]=b^(d[696+(d[a>>0]|0)>>0]|0);c[g>>2]=(c[g>>2]|0)+ -1}i=e;return b|0}function Yg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;f=g+28|0;o=g+24|0;k=g+20|0;l=g+16|0;n=g+12|0;h=g+8|0;m=g+4|0;j=g;c[o>>2]=a;c[k>>2]=b;c[l>>2]=d;c[n>>2]=e;if((c[(c[o>>2]|0)+12>>2]|0)!=0){c[j>>2]=(c[(c[o>>2]|0)+12>>2]|0)+(c[n>>2]<<3);c[h>>2]=c[(c[j>>2]|0)+4>>2];c[m>>2]=c[c[j>>2]>>2]}else{c[h>>2]=c[(c[o>>2]|0)+8>>2];c[m>>2]=c[(c[o>>2]|0)+4>>2]}while(1){a=c[m>>2]|0;c[m>>2]=a+ -1;if((a|0)==0){j=10;break}if((c[h>>2]|0)==0){j=10;break}if((c[(c[h>>2]|0)+16>>2]|0)==(c[l>>2]|0)?(Lb(c[(c[h>>2]|0)+12>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)==0:0){j=8;break}c[h>>2]=c[c[h>>2]>>2]}if((j|0)==8){c[f>>2]=c[h>>2];a=c[f>>2]|0;i=g;return a|0}else if((j|0)==10){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}return 0}function Zg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}a=c[d>>2]|0;c[a>>2]=(c[a>>2]|0)+ -1;if((c[c[d>>2]>>2]|0)!=0){i=b;return}Wb(0,c[d>>2]|0);i=b;return}function _g(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;l=f+20|0;j=f+16|0;m=f+12|0;g=f+8|0;k=f+4|0;h=f;c[l>>2]=b;c[j>>2]=d;c[m>>2]=e;c[k>>2]=Mb(c[j>>2]|0)|0;c[g>>2]=Wg((c[l>>2]|0)+420|0,c[j>>2]|0,c[k>>2]|0)|0;if(0!=(c[g>>2]|0)){b=c[g>>2]|0;i=f;return b|0}if((c[m>>2]|0)==0){b=c[g>>2]|0;i=f;return b|0}c[g>>2]=ne(c[l>>2]|0,61+(c[k>>2]|0)|0)|0;if((c[g>>2]|0)==0){b=c[g>>2]|0;i=f;return b|0}c[h>>2]=0;c[c[g>>2]>>2]=(c[g>>2]|0)+60;a[(c[g>>2]|0)+4>>0]=1;c[(c[g>>2]|0)+20>>2]=(c[g>>2]|0)+60;a[(c[g>>2]|0)+24>>0]=2;c[(c[g>>2]|0)+40>>2]=(c[g>>2]|0)+60;a[(c[g>>2]|0)+44>>0]=3;dE(c[c[g>>2]>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;a[(c[c[g>>2]>>2]|0)+(c[k>>2]|0)>>0]=0;c[h>>2]=$g((c[l>>2]|0)+420|0,c[c[g>>2]>>2]|0,c[k>>2]|0,c[g>>2]|0)|0;if((c[h>>2]|0)==0){b=c[g>>2]|0;i=f;return b|0}a[(c[l>>2]|0)+64>>0]=1;Wb(c[l>>2]|0,c[h>>2]|0);c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}function $g(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+48|0;f=g+32|0;h=g+28|0;n=g+24|0;p=g+20|0;l=g+16|0;j=g+12|0;o=g+8|0;k=g+4|0;m=g;c[h>>2]=a;c[n>>2]=b;c[p>>2]=d;c[l>>2]=e;if((c[c[h>>2]>>2]|0)!=0){a=Xg(c[n>>2]|0,c[p>>2]|0)|0;c[j>>2]=(a>>>0)%((c[c[h>>2]>>2]|0)>>>0)|0}else{c[j>>2]=0}c[o>>2]=Yg(c[h>>2]|0,c[n>>2]|0,c[p>>2]|0,c[j>>2]|0)|0;if((c[o>>2]|0)!=0){c[m>>2]=c[(c[o>>2]|0)+8>>2];if((c[l>>2]|0)==0){ah(c[h>>2]|0,c[o>>2]|0,c[j>>2]|0)}else{c[(c[o>>2]|0)+8>>2]=c[l>>2];c[(c[o>>2]|0)+12>>2]=c[n>>2]}c[f>>2]=c[m>>2];a=c[f>>2]|0;i=g;return a|0}if((c[l>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}c[k>>2]=fc(20)|0;if((c[k>>2]|0)==0){c[f>>2]=c[l>>2];a=c[f>>2]|0;i=g;return a|0}c[(c[k>>2]|0)+12>>2]=c[n>>2];c[(c[k>>2]|0)+16>>2]=c[p>>2];c[(c[k>>2]|0)+8>>2]=c[l>>2];a=(c[h>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+1;if(((c[(c[h>>2]|0)+4>>2]|0)>>>0>=10?(c[(c[h>>2]|0)+4>>2]|0)>>>0>c[c[h>>2]>>2]<<1>>>0:0)?(bh(c[h>>2]|0,c[(c[h>>2]|0)+4>>2]<<1)|0)!=0:0){a=Xg(c[n>>2]|0,c[p>>2]|0)|0;c[j>>2]=(a>>>0)%((c[c[h>>2]>>2]|0)>>>0)|0}l=c[h>>2]|0;if((c[(c[h>>2]|0)+12>>2]|0)!=0){ch(l,(c[(c[h>>2]|0)+12>>2]|0)+(c[j>>2]<<3)|0,c[k>>2]|0)}else{ch(l,0,c[k>>2]|0)}c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}function ah(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;f=j+12|0;e=j+8|0;h=j+4|0;g=j;c[f>>2]=a;c[e>>2]=b;c[h>>2]=d;d=c[c[e>>2]>>2]|0;if((c[(c[e>>2]|0)+4>>2]|0)!=0){c[c[(c[e>>2]|0)+4>>2]>>2]=d}else{c[(c[f>>2]|0)+8>>2]=d}if((c[c[e>>2]>>2]|0)!=0){c[(c[c[e>>2]>>2]|0)+4>>2]=c[(c[e>>2]|0)+4>>2]}if((c[(c[f>>2]|0)+12>>2]|0)!=0){c[g>>2]=(c[(c[f>>2]|0)+12>>2]|0)+(c[h>>2]<<3);if((c[(c[g>>2]|0)+4>>2]|0)==(c[e>>2]|0)){c[(c[g>>2]|0)+4>>2]=c[c[e>>2]>>2]}a=c[g>>2]|0;c[a>>2]=(c[a>>2]|0)+ -1}gc(c[e>>2]|0);a=(c[f>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+ -1;if((c[(c[f>>2]|0)+4>>2]|0)!=0){i=j;return}fh(c[f>>2]|0);i=j;return}function bh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+24|0;k=d+20|0;g=d+16|0;l=d+12|0;f=d+8|0;j=d+4|0;h=d;c[k>>2]=a;c[g>>2]=b;c[g>>2]=c[g>>2]<<3>>>0>1024?128:b;if((c[g>>2]|0)==(c[c[k>>2]>>2]|0)){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}dh();c[l>>2]=fc(c[g>>2]<<3)|0;eh();if((c[l>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}gc(c[(c[k>>2]|0)+12>>2]|0);c[(c[k>>2]|0)+12>>2]=c[l>>2];a=((Sb(c[l>>2]|0)|0)>>>0)/8|0;c[g>>2]=a;c[c[k>>2]>>2]=a;_D(c[l>>2]|0,0,c[g>>2]<<3|0)|0;c[f>>2]=c[(c[k>>2]|0)+8>>2];c[(c[k>>2]|0)+8>>2]=0;while(1){if((c[f>>2]|0)==0){break}a=Xg(c[(c[f>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+16>>2]|0)|0;c[h>>2]=(a>>>0)%((c[g>>2]|0)>>>0)|0;c[j>>2]=c[c[f>>2]>>2];ch(c[k>>2]|0,(c[l>>2]|0)+(c[h>>2]<<3)|0,c[f>>2]|0);c[f>>2]=c[j>>2]}c[e>>2]=1;a=c[e>>2]|0;i=d;return a|0}function ch(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;f=g+12|0;j=g+8|0;e=g+4|0;h=g;c[f>>2]=a;c[j>>2]=b;c[e>>2]=d;if((c[j>>2]|0)!=0){if((c[c[j>>2]>>2]|0)!=0){d=c[(c[j>>2]|0)+4>>2]|0}else{d=0}c[h>>2]=d;a=c[j>>2]|0;c[a>>2]=(c[a>>2]|0)+1;c[(c[j>>2]|0)+4>>2]=c[e>>2]}else{c[h>>2]=0}if((c[h>>2]|0)==0){c[c[e>>2]>>2]=c[(c[f>>2]|0)+8>>2];if((c[(c[f>>2]|0)+8>>2]|0)!=0){c[(c[(c[f>>2]|0)+8>>2]|0)+4>>2]=c[e>>2]}c[(c[e>>2]|0)+4>>2]=0;c[(c[f>>2]|0)+8>>2]=c[e>>2];i=g;return}c[c[e>>2]>>2]=c[h>>2];c[(c[e>>2]|0)+4>>2]=c[(c[h>>2]|0)+4>>2];j=c[e>>2]|0;if((c[(c[h>>2]|0)+4>>2]|0)!=0){c[c[(c[h>>2]|0)+4>>2]>>2]=j}else{c[(c[f>>2]|0)+8>>2]=j}c[(c[h>>2]|0)+4>>2]=c[e>>2];i=g;return}function dh(){var a=0;a=i;if((c[802]|0)==0){i=a;return}wb[c[802]&0]();i=a;return}function eh(){var a=0;a=i;if((c[3212>>2]|0)==0){i=a;return}wb[c[3212>>2]&0]();i=a;return}function fh(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;b=d+8|0;e=d+4|0;f=d;c[b>>2]=a;c[e>>2]=c[(c[b>>2]|0)+8>>2];c[(c[b>>2]|0)+8>>2]=0;gc(c[(c[b>>2]|0)+12>>2]|0);c[(c[b>>2]|0)+12>>2]=0;c[c[b>>2]>>2]=0;while(1){if((c[e>>2]|0)==0){break}c[f>>2]=c[c[e>>2]>>2];gc(c[e>>2]|0);c[e>>2]=c[f>>2]}c[(c[b>>2]|0)+4>>2]=0;i=d;return}function gh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+12>>2]=0;i=b;return}function hh(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;o=m+24|0;n=m+20|0;g=m+16|0;l=m+12|0;j=m+8|0;h=m+4|0;k=m;c[o>>2]=a;c[n>>2]=b;c[g>>2]=d;c[l>>2]=e;c[j>>2]=f;c[k>>2]=(c[n>>2]|0)<(c[l>>2]|0)?c[n>>2]|0:c[l>>2]|0;c[h>>2]=VD(c[g>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if((c[h>>2]|0)!=0){a=c[h>>2]|0;i=m;return a|0}if(((c[o>>2]|0)!=0?(mk((c[g>>2]|0)+(c[k>>2]|0)|0,(c[n>>2]|0)-(c[k>>2]|0)|0)|0)!=0:0)?(mk((c[j>>2]|0)+(c[k>>2]|0)|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0)!=0:0){a=c[h>>2]|0;i=m;return a|0}c[h>>2]=(c[n>>2]|0)-(c[l>>2]|0);a=c[h>>2]|0;i=m;return a|0}function ih(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;j=g+16|0;m=g+12|0;k=g+8|0;l=g+4|0;h=g;c[g+20>>2]=a;c[j>>2]=b;c[m>>2]=d;c[k>>2]=e;c[l>>2]=f;c[h>>2]=Lb(c[m>>2]|0,c[l>>2]|0,(c[j>>2]|0)<(c[k>>2]|0)?c[j>>2]|0:c[k>>2]|0)|0;if(0!=(c[h>>2]|0)){m=c[h>>2]|0;i=g;return m|0}c[h>>2]=(c[j>>2]|0)-(c[k>>2]|0);m=c[h>>2]|0;i=g;return m|0}function jh(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;q=i;i=i+128|0;s=q;p=q+116|0;O=q+112|0;v=q+108|0;z=q+104|0;u=q+100|0;n=q+96|0;t=q+92|0;o=q+88|0;C=q+84|0;r=q+80|0;m=q+76|0;L=q+120|0;M=q+72|0;D=q+68|0;J=q+64|0;w=q+60|0;I=q+56|0;N=q+52|0;K=q+48|0;l=q+44|0;x=q+40|0;E=q+36|0;y=q+32|0;k=q+28|0;A=q+24|0;B=q+20|0;G=q+16|0;F=q+12|0;H=q+8|0;c[O>>2]=b;c[v>>2]=e;c[z>>2]=f;c[u>>2]=g;c[n>>2]=h;c[t>>2]=j;c[o>>2]=0;c[C>>2]=c[c[z>>2]>>2];c[r>>2]=c[O>>2];c[M>>2]=Mb(c[v>>2]|0)|0;if((c[C>>2]&64|0)==0?(c[38524>>2]|0)==0:0){j=83}else{j=3}a:do{if((j|0)==3){if((c[M>>2]|0)>=5?(VD(c[v>>2]|0,4560,5)|0)==0:0){c[I>>2]=0;c[N>>2]=(c[M>>2]|0)+2;c[C>>2]=c[C>>2]|64;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[M>>2]|0)){break}c[N>>2]=(c[N>>2]|0)+((a[(c[v>>2]|0)+(c[w>>2]|0)>>0]|0)==38&1);c[w>>2]=(c[w>>2]|0)+1}c[m>>2]=ec(c[N>>2]|0)|0;if((c[m>>2]|0)==0){c[p>>2]=7;O=c[p>>2]|0;i=q;return O|0}c[w>>2]=5;do{if((a[(c[v>>2]|0)+5>>0]|0)==47?(a[(c[v>>2]|0)+6>>0]|0)==47:0){c[w>>2]=7;while(1){if((a[(c[v>>2]|0)+(c[w>>2]|0)>>0]|0)!=0){N=(a[(c[v>>2]|0)+(c[w>>2]|0)>>0]|0)!=47}else{N=0}M=c[w>>2]|0;if(!N){break}c[w>>2]=M+1}if((M|0)!=7){if((c[w>>2]|0)==16?(VD(4568,(c[v>>2]|0)+7|0,9)|0)==0:0){break}O=(c[v>>2]|0)+7|0;c[s>>2]=(c[w>>2]|0)-7;c[s+4>>2]=O;O=oc(4584,s)|0;c[c[t>>2]>>2]=O;c[o>>2]=1;break a}}}while(0);c[J>>2]=0;b:while(1){O=a[(c[v>>2]|0)+(c[w>>2]|0)>>0]|0;a[L>>0]=O;if((O<<24>>24|0)==0){break}if((a[L>>0]|0)==35){break}c[w>>2]=(c[w>>2]|0)+1;do{if(((a[L>>0]|0)==37?(a[48+(d[(c[v>>2]|0)+(c[w>>2]|0)>>0]|0)>>0]&8|0)!=0:0)?(a[48+(d[(c[v>>2]|0)+((c[w>>2]|0)+1)>>0]|0)>>0]&8|0)!=0:0){O=c[w>>2]|0;c[w>>2]=O+1;c[K>>2]=((lk(a[(c[v>>2]|0)+O>>0]|0)|0)&255)<<4;O=c[w>>2]|0;c[w>>2]=O+1;O=(lk(a[(c[v>>2]|0)+O>>0]|0)|0)&255;c[K>>2]=(c[K>>2]|0)+O;if((c[K>>2]|0)!=0){a[L>>0]=c[K>>2];break}while(1){O=a[(c[v>>2]|0)+(c[w>>2]|0)>>0]|0;a[L>>0]=O;if((O<<24>>24|0)==0){continue b}if((a[L>>0]|0)==35){continue b}if((c[J>>2]|0)==0?(a[L>>0]|0)==63:0){continue b}if((c[J>>2]|0)==1){if((a[L>>0]|0)==61){continue b}if((a[L>>0]|0)==38){continue b}}if((c[J>>2]|0)==2?(a[L>>0]|0)==38:0){continue b}c[w>>2]=(c[w>>2]|0)+1}}else{j=39}}while(0);c:do{if((j|0)==39){j=0;do{if((c[J>>2]|0)==1){if((a[L>>0]|0)!=38?(a[L>>0]|0)!=61:0){break}if((a[(c[m>>2]|0)+((c[I>>2]|0)-1)>>0]|0)==0){while(1){if((a[(c[v>>2]|0)+(c[w>>2]|0)>>0]|0)==0){continue b}if((a[(c[v>>2]|0)+(c[w>>2]|0)>>0]|0)==35){continue b}if((a[(c[v>>2]|0)+((c[w>>2]|0)-1)>>0]|0)==38){continue b}c[w>>2]=(c[w>>2]|0)+1}}else{if((a[L>>0]|0)==38){O=c[I>>2]|0;c[I>>2]=O+1;a[(c[m>>2]|0)+O>>0]=0}else{c[J>>2]=2}a[L>>0]=0;break c}}}while(0);if(!((c[J>>2]|0)==0?(a[L>>0]|0)==63:0)){if((c[J>>2]|0)!=2){break}if((a[L>>0]|0)!=38){break}}a[L>>0]=0;c[J>>2]=1}}while(0);b=a[L>>0]|0;O=c[I>>2]|0;c[I>>2]=O+1;a[(c[m>>2]|0)+O>>0]=b}if((c[J>>2]|0)==1){O=c[I>>2]|0;c[I>>2]=O+1;a[(c[m>>2]|0)+O>>0]=0}O=c[I>>2]|0;c[I>>2]=O+1;a[(c[m>>2]|0)+O>>0]=0;O=c[I>>2]|0;c[I>>2]=O+1;a[(c[m>>2]|0)+O>>0]=0;O=(Mb(c[m>>2]|0)|0)+1|0;c[D>>2]=(c[m>>2]|0)+O;while(1){if((a[c[D>>2]>>0]|0)==0){j=86;break a}c[l>>2]=Mb(c[D>>2]|0)|0;c[x>>2]=(c[D>>2]|0)+((c[l>>2]|0)+1);c[E>>2]=Mb(c[x>>2]|0)|0;if((c[l>>2]|0)==3?(VD(4616,c[D>>2]|0,3)|0)==0:0){c[r>>2]=c[x>>2]}else{c[y>>2]=0;c[k>>2]=0;c[A>>2]=0;c[B>>2]=0;if((c[l>>2]|0)==5?(VD(4624,c[D>>2]|0,5)|0)==0:0){c[A>>2]=393216;c[y>>2]=4632;c[B>>2]=c[A>>2];c[k>>2]=4624}if((c[l>>2]|0)==4?(VD(4672,c[D>>2]|0,4)|0)==0:0){c[A>>2]=135;c[y>>2]=4680;c[B>>2]=c[A>>2]&c[C>>2];c[k>>2]=4752}if((c[y>>2]|0)!=0){c[F>>2]=0;c[G>>2]=0;while(1){if((c[(c[y>>2]|0)+(c[G>>2]<<3)>>2]|0)==0){break}c[H>>2]=c[(c[y>>2]|0)+(c[G>>2]<<3)>>2];O=c[E>>2]|0;if((O|0)==(Mb(c[H>>2]|0)|0)?0==(VD(c[x>>2]|0,c[H>>2]|0,c[E>>2]|0)|0):0){j=75;break}c[G>>2]=(c[G>>2]|0)+1}if((j|0)==75){j=0;c[F>>2]=c[(c[y>>2]|0)+(c[G>>2]<<3)+4>>2]}if((c[F>>2]|0)==0){j=78;break}if((c[F>>2]&-129|0)>(c[B>>2]|0)){j=80;break}c[C>>2]=c[C>>2]&~c[A>>2]|c[F>>2]}}c[D>>2]=(c[x>>2]|0)+((c[E>>2]|0)+1)}if((j|0)==78){O=c[x>>2]|0;c[s>>2]=c[k>>2];c[s+4>>2]=O;O=oc(4760,s)|0;c[c[t>>2]>>2]=O;c[o>>2]=1;break}else if((j|0)==80){O=c[x>>2]|0;c[s>>2]=c[k>>2];c[s+4>>2]=O;O=oc(4784,s)|0;c[c[t>>2]>>2]=O;c[o>>2]=3;break}}else{j=83}}}while(0);do{if((j|0)==83){c[m>>2]=ec((c[M>>2]|0)+2|0)|0;if((c[m>>2]|0)!=0){dE(c[m>>2]|0,c[v>>2]|0,c[M>>2]|0)|0;a[(c[m>>2]|0)+(c[M>>2]|0)>>0]=0;a[(c[m>>2]|0)+((c[M>>2]|0)+1)>>0]=0;c[C>>2]=c[C>>2]&-65;j=86;break}c[p>>2]=7;O=c[p>>2]|0;i=q;return O|0}}while(0);if((j|0)==86?(O=Xb(c[r>>2]|0)|0,c[c[u>>2]>>2]=O,(c[c[u>>2]>>2]|0)==0):0){c[s>>2]=c[r>>2];O=oc(4808,s)|0;c[c[t>>2]>>2]=O;c[o>>2]=1}if((c[o>>2]|0)!=0){gc(c[m>>2]|0);c[m>>2]=0}c[c[z>>2]>>2]=c[C>>2];c[c[n>>2]>>2]=c[m>>2];c[p>>2]=c[o>>2];O=c[p>>2]|0;i=q;return O|0}function kh(f,g,h,j,k,l){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;m=i;i=i+192|0;r=m+72|0;z=m+68|0;v=m+64|0;y=m+60|0;q=m+56|0;x=m+52|0;A=m+48|0;p=m+44|0;o=m+40|0;n=m+32|0;G=m+176|0;u=m+76|0;F=m+28|0;w=m+24|0;t=m+20|0;B=m+16|0;D=m+12|0;E=m+8|0;H=m+4|0;s=m;c[z>>2]=f;c[v>>2]=g;c[y>>2]=h;c[q>>2]=j;c[x>>2]=k;c[A>>2]=l;c[p>>2]=0;c[m+36>>2]=0;c[n>>2]=0;if((c[v>>2]|0)==0){l=1}else{l=(a[c[v>>2]>>0]|0)==0}c[F>>2]=l&1;if((c[v>>2]|0)!=0?(WD(c[v>>2]|0,4168)|0)==0:0){l=1}else{C=5}do{if((C|0)==5){if((c[F>>2]|0)!=0?(qh(c[y>>2]|0)|0)!=0:0){l=1;break}l=(c[A>>2]&128|0)!=0}}while(0);c[w>>2]=l&1;if((c[w>>2]|0)!=0){c[x>>2]=c[x>>2]|2}do{if((c[A>>2]&256|0)!=0){if((c[w>>2]|0)==0?(c[F>>2]|0)==0:0){break}c[A>>2]=c[A>>2]&-257|512}}while(0);c[o>>2]=Kc(44)|0;if((c[o>>2]|0)==0){c[r>>2]=7;f=c[r>>2]|0;i=m;return f|0}a[(c[o>>2]|0)+8>>0]=0;c[c[o>>2]>>2]=c[y>>2];c[(c[o>>2]|0)+28>>2]=c[o>>2];c[(c[o>>2]|0)+32>>2]=1;do{if((c[F>>2]|0)==0){if((c[w>>2]|0)!=0?(c[A>>2]&64|0)==0:0){break}if((c[A>>2]&131072|0)!=0){c[t>>2]=(c[(c[z>>2]|0)+8>>2]|0)+1;c[B>>2]=fc(c[t>>2]|0)|0;a[(c[o>>2]|0)+9>>0]=1;if((c[B>>2]|0)==0){gc(c[o>>2]|0);c[r>>2]=7;f=c[r>>2]|0;i=m;return f|0}if((c[w>>2]|0)==0){c[n>>2]=rh(c[z>>2]|0,c[v>>2]|0,c[t>>2]|0,c[B>>2]|0)|0;if((c[n>>2]|0)!=0){gc(c[B>>2]|0);gc(c[o>>2]|0);c[r>>2]=c[n>>2];f=c[r>>2]|0;i=m;return f|0}}else{g=c[B>>2]|0;f=c[v>>2]|0;dE(g|0,f|0,(Mb(c[v>>2]|0)|0)+1|0)|0}c[p>>2]=c[1046];while(1){if((c[p>>2]|0)==0){break}f=c[B>>2]|0;if(0==(WD(f,ng(c[c[p>>2]>>2]|0,0)|0)|0)?(f=sh(c[c[p>>2]>>2]|0)|0,(f|0)==(c[z>>2]|0)):0){C=30;break}c[p>>2]=c[(c[p>>2]|0)+68>>2]}do{if((C|0)==30){c[D>>2]=(c[(c[y>>2]|0)+20>>2]|0)-1;while(1){if((c[D>>2]|0)<0){C=36;break}c[E>>2]=c[(c[(c[y>>2]|0)+16>>2]|0)+(c[D>>2]<<4)+4>>2];if((c[E>>2]|0)!=0?(c[(c[E>>2]|0)+4>>2]|0)==(c[p>>2]|0):0){break}c[D>>2]=(c[D>>2]|0)+ -1}if((C|0)==36){c[(c[o>>2]|0)+4>>2]=c[p>>2];f=(c[p>>2]|0)+64|0;c[f>>2]=(c[f>>2]|0)+1;break}gc(c[B>>2]|0);gc(c[o>>2]|0);c[r>>2]=19;f=c[r>>2]|0;i=m;return f|0}}while(0);gc(c[B>>2]|0)}}}while(0);do{if((c[p>>2]|0)==0){c[p>>2]=Kc(84)|0;if((c[p>>2]|0)==0){c[n>>2]=7;break}c[n>>2]=th(c[z>>2]|0,c[p>>2]|0,c[v>>2]|0,76,c[x>>2]|0,c[A>>2]|0,14)|0;if((c[n>>2]|0)==0){f=(c[y>>2]|0)+40|0;vh(c[c[p>>2]>>2]|0,c[f>>2]|0,c[f+4>>2]|0);c[n>>2]=wh(c[c[p>>2]>>2]|0,100,u)|0}if((c[n>>2]|0)==0){a[(c[p>>2]|0)+16>>0]=c[x>>2];c[(c[p>>2]|0)+4>>2]=c[y>>2];xh(c[c[p>>2]>>2]|0,19,c[p>>2]|0);c[(c[o>>2]|0)+4>>2]=c[p>>2];c[(c[p>>2]|0)+8>>2]=0;c[(c[p>>2]|0)+12>>2]=0;if((zh(c[c[p>>2]>>2]|0)|0)<<24>>24!=0){f=(c[p>>2]|0)+22|0;b[f>>1]=e[f>>1]|1}c[(c[p>>2]|0)+32>>2]=d[u+16>>0]<<8|d[u+17>>0]<<16;if((!((c[(c[p>>2]|0)+32>>2]|0)>>>0<512)?!((c[(c[p>>2]|0)+32>>2]|0)>>>0>65536):0)?((c[(c[p>>2]|0)+32>>2]|0)-1&c[(c[p>>2]|0)+32>>2]|0)==0:0){a[G>>0]=a[u+20>>0]|0;f=(c[p>>2]|0)+22|0;b[f>>1]=e[f>>1]|2;f=(Ah(u+52|0)|0)!=0;a[(c[p>>2]|0)+17>>0]=f?1:0;f=(Ah(u+64|0)|0)!=0;a[(c[p>>2]|0)+18>>0]=f?1:0}else{c[(c[p>>2]|0)+32>>2]=0;if((c[v>>2]|0)!=0?(c[w>>2]|0)==0:0){a[(c[p>>2]|0)+17>>0]=0;a[(c[p>>2]|0)+18>>0]=0}a[G>>0]=0}c[n>>2]=yg(c[c[p>>2]>>2]|0,(c[p>>2]|0)+32|0,d[G>>0]|0)|0;if((c[n>>2]|0)==0){c[(c[p>>2]|0)+36>>2]=(c[(c[p>>2]|0)+32>>2]|0)-(d[G>>0]|0);if((a[(c[o>>2]|0)+9>>0]|0)!=0){c[(c[p>>2]|0)+64>>2]=1;c[(c[p>>2]|0)+68>>2]=c[1046];c[1046]=c[p>>2];C=58}else{C=58}}}}else{C=58}}while(0);if((C|0)==58){a:do{if((a[(c[o>>2]|0)+9>>0]|0)!=0){c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[(c[y>>2]|0)+20>>2]|0)){break a}f=c[(c[(c[y>>2]|0)+16>>2]|0)+(c[H>>2]<<4)+4>>2]|0;c[s>>2]=f;if((f|0)!=0?(d[(c[s>>2]|0)+9>>0]|0)!=0:0){break}c[H>>2]=(c[H>>2]|0)+1}while(1){if((c[(c[s>>2]|0)+24>>2]|0)==0){break}c[s>>2]=c[(c[s>>2]|0)+24>>2]}if((c[(c[o>>2]|0)+4>>2]|0)>>>0<(c[(c[s>>2]|0)+4>>2]|0)>>>0){c[(c[o>>2]|0)+20>>2]=c[s>>2];c[(c[o>>2]|0)+24>>2]=0;c[(c[s>>2]|0)+24>>2]=c[o>>2];break}while(1){if((c[(c[s>>2]|0)+20>>2]|0)!=0){u=(c[(c[(c[s>>2]|0)+20>>2]|0)+4>>2]|0)>>>0<(c[(c[o>>2]|0)+4>>2]|0)>>>0}else{u=0}t=c[(c[s>>2]|0)+20>>2]|0;if(!u){break}c[s>>2]=t}c[(c[o>>2]|0)+20>>2]=t;c[(c[o>>2]|0)+24>>2]=c[s>>2];if((c[(c[o>>2]|0)+20>>2]|0)!=0){c[(c[(c[o>>2]|0)+20>>2]|0)+24>>2]=c[o>>2]}c[(c[s>>2]|0)+20>>2]=c[o>>2]}}while(0);c[c[q>>2]>>2]=c[o>>2]}if((c[n>>2]|0)==0){if((oh(c[o>>2]|0,0,0)|0)==0){Ch(c[c[(c[o>>2]|0)+4>>2]>>2]|0,2e3)}}else{if((c[p>>2]|0)!=0?(c[c[p>>2]>>2]|0)!=0:0){Bh(c[c[p>>2]>>2]|0)|0}gc(c[p>>2]|0);gc(c[o>>2]|0);c[c[q>>2]>>2]=0}c[r>>2]=c[n>>2];f=c[r>>2]|0;i=m;return f|0}function lh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;h=i;i=i+16|0;f=h+8|0;j=h+4|0;g=h;c[f>>2]=b;c[j>>2]=e;if((c[j>>2]|0)!=0){c[g>>2]=oh(c[j>>2]|0,84,15)|0}else{c[g>>2]=ne(0,84)|0}if((c[g>>2]|0)==0){a[(c[f>>2]|0)+64>>0]=1;b=c[g>>2]|0;i=h;return b|0}if(0!=(d[(c[g>>2]|0)+76>>0]|0|0)){b=c[g>>2]|0;i=h;return b|0}gh((c[g>>2]|0)+8|0);gh((c[g>>2]|0)+24|0);gh((c[g>>2]|0)+40|0);gh((c[g>>2]|0)+56|0);a[(c[g>>2]|0)+77>>0]=1;b=c[g>>2]|0;i=h;return b|0}function mh(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;c[f>>2]=Nf(c[e>>2]|0,4160,2)|0;if((c[f>>2]|0)!=7){i=d;return}a[(c[e>>2]|0)+64>>0]=1;i=d;return}function nh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+32|0;g=b;d=b+24|0;k=b+20|0;h=b+16|0;e=b+12|0;j=b+8|0;f=b+4|0;c[d>>2]=a;c[h>>2]=1;if((c[370]|0)==0){i=b;return}c[k>>2]=0;while(1){if((c[h>>2]|0)==0){break}if((c[k>>2]|0)>=(c[370]|0)){c[j>>2]=0;c[h>>2]=0}else{c[j>>2]=c[(c[1484>>2]|0)+(c[k>>2]<<2)>>2]}c[f>>2]=0;if((c[j>>2]|0)!=0?(a=pb[c[j>>2]&15](c[d>>2]|0,f,3352)|0,c[e>>2]=a,(a|0)!=0):0){l=c[d>>2]|0;a=c[e>>2]|0;c[g>>2]=c[f>>2];Jc(l,a,4120,g);c[h>>2]=0}gc(c[f>>2]|0);c[k>>2]=(c[k>>2]|0)+1}i=b;return}function oh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+12|0;h=f+8|0;g=f+4|0;e=f;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[e>>2]=c[(c[j>>2]|0)+4>>2];Mc(c[j>>2]|0);if((c[(c[e>>2]|0)+48>>2]|0)==0?(c[h>>2]|0)!=0:0){j=ne(0,c[h>>2]|0)|0;c[(c[e>>2]|0)+48>>2]=j;c[(c[e>>2]|0)+52>>2]=c[g>>2]}i=f;return c[(c[e>>2]|0)+48>>2]|0}function ph(a){a=a|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+64|0;l=d+48|0;f=d+32|0;k=d+16|0;h=d+8|0;g=d+4|0;j=d;c[l>>2]=a;c[g>>2]=c[l>>2];a=(c[g>>2]|0)+8|0;c[f+0>>2]=c[a+0>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];a=(c[g>>2]|0)+40|0;c[k+0>>2]=c[a+0>>2];c[k+4>>2]=c[a+4>>2];c[k+8>>2]=c[a+8>>2];c[k+12>>2]=c[a+12>>2];gh((c[g>>2]|0)+40|0);fh((c[g>>2]|0)+24|0);c[h>>2]=c[k+8>>2];while(1){if((c[h>>2]|0)==0){break}Tb(0,c[(c[h>>2]|0)+8>>2]|0);c[h>>2]=c[c[h>>2]>>2]}fh(k);gh((c[g>>2]|0)+8|0);c[h>>2]=c[f+8>>2];while(1){if((c[h>>2]|0)==0){break}c[j>>2]=c[(c[h>>2]|0)+8>>2];Ub(0,c[j>>2]|0);c[h>>2]=c[c[h>>2]>>2]}fh(f);fh((c[g>>2]|0)+56|0);c[(c[g>>2]|0)+72>>2]=0;if((b[(c[g>>2]|0)+78>>1]&1|0)==0){i=d;return}l=(c[g>>2]|0)+4|0;c[l>>2]=(c[l>>2]|0)+1;l=(c[g>>2]|0)+78|0;b[l>>1]=(e[l>>1]|0)&-2;i=d;return}function qh(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return(d[(c[b>>2]|0)+63>>0]|0|0)==2|0}function rh(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;l=g+12|0;k=g+8|0;j=g+4|0;h=g;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;a[c[h>>2]>>0]=0;b=xb[c[(c[l>>2]|0)+36>>2]&15](c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return b|0}function sh(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[c[b>>2]>>2]|0}function th(d,e,f,g,h,j,k){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;v=i;i=i+112|0;y=v+96|0;p=v+92|0;E=v+88|0;s=v+84|0;z=v+80|0;L=v+76|0;r=v+72|0;D=v+68|0;G=v+64|0;q=v+60|0;o=v+56|0;C=v+52|0;A=v+48|0;l=v+44|0;J=v+40|0;n=v+36|0;t=v+32|0;B=v+28|0;I=v+24|0;x=v+20|0;K=v+16|0;F=v+12|0;H=v+8|0;u=v+4|0;w=v;c[p>>2]=d;c[E>>2]=e;c[s>>2]=f;c[z>>2]=g;c[L>>2]=h;c[r>>2]=j;c[D>>2]=k;c[q>>2]=0;c[o>>2]=0;c[C>>2]=0;c[A>>2]=0;c[l>>2]=0;c[n>>2]=0;c[t>>2]=0;c[B>>2]=(c[L>>2]&1|0)==0&1;c[I>>2]=Oj()|0;c[x>>2]=1024;c[K>>2]=0;c[F>>2]=0;d=c[(c[p>>2]|0)+4>>2]|0;if((d|0)>(li()|0)){c[J>>2]=(c[(c[p>>2]|0)+4>>2]|0)+7&-8}else{c[J>>2]=(li()|0)+7&-8}c[c[E>>2]>>2]=0;do{if(((c[L>>2]&2|0)!=0?(c[A>>2]=1,(c[s>>2]|0)!=0):0)?(a[c[s>>2]>>0]|0)!=0:0){c[n>>2]=he(0,c[s>>2]|0)|0;if((c[n>>2]|0)!=0){c[t>>2]=Mb(c[n>>2]|0)|0;c[s>>2]=0;break}c[y>>2]=7;d=c[y>>2]|0;i=v;return d|0}}while(0);if((c[s>>2]|0)!=0?(a[c[s>>2]>>0]|0)!=0:0){c[t>>2]=(c[(c[p>>2]|0)+8>>2]|0)+1;c[n>>2]=Le(0,c[t>>2]<<1)|0;if((c[n>>2]|0)==0){c[y>>2]=7;d=c[y>>2]|0;i=v;return d|0}a[c[n>>2]>>0]=0;c[o>>2]=rh(c[p>>2]|0,c[s>>2]|0,c[t>>2]|0,c[n>>2]|0)|0;c[t>>2]=Mb(c[n>>2]|0)|0;d=(Mb(c[s>>2]|0)|0)+1|0;d=(c[s>>2]|0)+d|0;c[K>>2]=d;c[H>>2]=d;while(1){e=c[H>>2]|0;if((a[c[H>>2]>>0]|0)==0){break}d=(Mb(e)|0)+1|0;c[H>>2]=(c[H>>2]|0)+d;d=(Mb(c[H>>2]|0)|0)+1|0;c[H>>2]=(c[H>>2]|0)+d}c[F>>2]=e+1-(c[K>>2]|0);if((c[o>>2]|0)==0?((c[t>>2]|0)+8|0)>(c[(c[p>>2]|0)+8>>2]|0):0){c[o>>2]=Cj(44459)|0}if((c[o>>2]|0)!=0){Wb(0,c[n>>2]|0);c[y>>2]=c[o>>2];d=c[y>>2]|0;i=v;return d|0}}c[G>>2]=Kc(216+((c[I>>2]|0)+7&-8)+((c[(c[p>>2]|0)+4>>2]|0)+7&-8)+(c[J>>2]<<1)+(c[t>>2]|0)+1+(c[F>>2]|0)+(c[t>>2]|0)+10+(c[t>>2]|0)+6|0)|0;if((c[G>>2]|0)==0){Wb(0,c[n>>2]|0);c[y>>2]=7;d=c[y>>2]|0;i=v;return d|0}c[q>>2]=c[G>>2];d=(c[G>>2]|0)+216|0;c[G>>2]=d;c[(c[q>>2]|0)+204>>2]=d;d=(c[G>>2]|0)+((c[I>>2]|0)+7&-8)|0;c[G>>2]=d;c[(c[q>>2]|0)+60>>2]=d;d=(c[G>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)+7&-8)|0;c[G>>2]=d;c[(c[q>>2]|0)+68>>2]=d;d=(c[G>>2]|0)+(c[J>>2]|0)|0;c[G>>2]=d;c[(c[q>>2]|0)+64>>2]=d;d=(c[G>>2]|0)+(c[J>>2]|0)|0;c[G>>2]=d;c[(c[q>>2]|0)+168>>2]=d;if((c[n>>2]|0)!=0){d=(c[G>>2]|0)+((c[t>>2]|0)+1+(c[F>>2]|0))|0;c[G>>2]=d;c[(c[q>>2]|0)+172>>2]=d;dE(c[(c[q>>2]|0)+168>>2]|0,c[n>>2]|0,c[t>>2]|0)|0;if((c[F>>2]|0)!=0){dE((c[(c[q>>2]|0)+168>>2]|0)+((c[t>>2]|0)+1)|0,c[K>>2]|0,c[F>>2]|0)|0}dE(c[(c[q>>2]|0)+172>>2]|0,c[n>>2]|0,c[t>>2]|0)|0;H=(c[(c[q>>2]|0)+172>>2]|0)+(c[t>>2]|0)+0|0;G=4504|0;F=H+10|0;do{a[H>>0]=a[G>>0]|0;H=H+1|0;G=G+1|0}while((H|0)<(F|0));c[(c[q>>2]|0)+212>>2]=(c[(c[q>>2]|0)+172>>2]|0)+((c[t>>2]|0)+9);dE(c[(c[q>>2]|0)+212>>2]|0,c[n>>2]|0,c[t>>2]|0)|0;d=(c[(c[q>>2]|0)+212>>2]|0)+(c[t>>2]|0)|0;a[d+0>>0]=a[4520>>0]|0;a[d+1>>0]=a[4521>>0]|0;a[d+2>>0]=a[4522>>0]|0;a[d+3>>0]=a[4523>>0]|0;a[d+4>>0]=a[4524>>0]|0;Wb(0,c[n>>2]|0)}c[c[q>>2]>>2]=c[p>>2];c[(c[q>>2]|0)+144>>2]=c[r>>2];do{if((c[s>>2]|0)!=0?(a[c[s>>2]>>0]|0)!=0:0){c[u>>2]=0;c[o>>2]=xi(c[p>>2]|0,c[(c[q>>2]|0)+168>>2]|0,c[(c[q>>2]|0)+60>>2]|0,c[r>>2]|0,u)|0;c[l>>2]=c[u>>2]&1;if((c[o>>2]|0)==0){c[w>>2]=ui(c[(c[q>>2]|0)+60>>2]|0)|0;do{if((c[l>>2]|0)==0?(ti(c[q>>2]|0),(c[x>>2]|0)>>>0<(c[(c[q>>2]|0)+148>>2]|0)>>>0):0){if((c[(c[q>>2]|0)+148>>2]|0)>>>0>8192){c[x>>2]=8192;break}else{c[x>>2]=c[(c[q>>2]|0)+148>>2];break}}}while(0);d=(ig(c[s>>2]|0,4528,0)|0)&255;a[(c[q>>2]|0)+13>>0]=d;if((c[w>>2]&8192|0)==0?(ig(c[s>>2]|0,4536,0)|0)==0:0){break}c[r>>2]=c[r>>2]|1;m=39}}else{m=39}}while(0);if((m|0)==39){c[C>>2]=1;a[(c[q>>2]|0)+16>>0]=1;a[(c[q>>2]|0)+17>>0]=4;a[(c[q>>2]|0)+13>>0]=1;c[l>>2]=c[r>>2]&1}if((c[o>>2]|0)==0){c[o>>2]=yg(c[q>>2]|0,x,-1)|0}if((c[o>>2]|0)!=0){Lh(c[(c[q>>2]|0)+60>>2]|0)|0;gc(c[q>>2]|0);c[y>>2]=c[o>>2];d=c[y>>2]|0;i=v;return d|0}c[z>>2]=(c[z>>2]|0)+7&-8;Pj(c[x>>2]|0,c[z>>2]|0,((c[A>>2]|0)!=0^1)&1,(c[A>>2]|0)!=0^1?34:0,c[q>>2]|0,c[(c[q>>2]|0)+204>>2]|0);a[(c[q>>2]|0)+6>>0]=c[B>>2];c[(c[q>>2]|0)+156>>2]=1073741823;a[(c[q>>2]|0)+12>>0]=c[C>>2];a[(c[q>>2]|0)+4>>0]=c[C>>2];a[(c[q>>2]|0)+18>>0]=a[(c[q>>2]|0)+12>>0]|0;a[(c[q>>2]|0)+15>>0]=c[A>>2];a[(c[q>>2]|0)+14>>0]=c[l>>2];a[(c[q>>2]|0)+7>>0]=a[(c[q>>2]|0)+12>>0]|0;if((a[(c[q>>2]|0)+7>>0]|0)==0){a[(c[q>>2]|0)+8>>0]=1;a[(c[q>>2]|0)+11>>0]=2;a[(c[q>>2]|0)+10>>0]=34;a[(c[q>>2]|0)+9>>0]=2}b[(c[q>>2]|0)+140>>1]=c[z>>2];d=(c[q>>2]|0)+160|0;c[d>>2]=-1;c[d+4>>2]=-1;ti(c[q>>2]|0);if((c[B>>2]|0)!=0){if((c[A>>2]|0)!=0){a[(c[q>>2]|0)+5>>0]=4}}else{a[(c[q>>2]|0)+5>>0]=2}c[(c[q>>2]|0)+196>>2]=c[D>>2];c[c[E>>2]>>2]=c[q>>2];c[y>>2]=0;d=c[y>>2]|0;i=v;return d|0}function uh(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;c[e>>2]=Kj(c[f>>2]|0)|0;if((a[c[e>>2]>>0]|0)==0){i=d;return}a[c[e>>2]>>0]=0;if((Lj(c[f>>2]|0)|0)<=1){i=d;return}Mj(c[e>>2]|0)|0;i=d;return}function vh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;d=g;b=c[d+4>>2]|0;a=(c[f>>2]|0)+128|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;Fg(c[f>>2]|0);i=e;return}function wh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;j=e+8|0;h=e+4|0;f=e;c[g>>2]=a;c[j>>2]=b;c[h>>2]=d;c[f>>2]=0;_D(c[h>>2]|0,0,c[j>>2]|0)|0;if((c[c[(c[g>>2]|0)+60>>2]>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}a=yi(c[(c[g>>2]|0)+60>>2]|0,c[h>>2]|0,c[j>>2]|0,0,0)|0;c[f>>2]=a;c[f>>2]=(c[f>>2]|0)==522?0:a;a=c[f>>2]|0;i=e;return a|0}function xh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;j=e+8|0;h=e+4|0;g=e;c[f>>2]=a;c[j>>2]=b;c[h>>2]=d;c[(c[f>>2]|0)+176>>2]=c[j>>2];c[(c[f>>2]|0)+180>>2]=c[h>>2];if((c[c[(c[f>>2]|0)+60>>2]>>2]|0)==0){i=e;return}c[g>>2]=(c[f>>2]|0)+176;lj(c[(c[f>>2]|0)+60>>2]|0,15,c[g>>2]|0);i=e;return}function yh(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];a=Jj((c[(c[d>>2]|0)+4>>2]|0)+436|0)|0;i=b;return a|0}function zh(b){b=b|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=b;i=e;return a[(c[d>>2]|0)+14>>0]|0}function Ah(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return(d[c[b>>2]>>0]|0)<<24|(d[(c[b>>2]|0)+1>>0]|0)<<16|(d[(c[b>>2]|0)+2>>0]|0)<<8|(d[(c[b>>2]|0)+3>>0]|0)|0}function Bh(b){b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+200>>2];dh();Fh(c[f>>2]|0);a[(c[f>>2]|0)+4>>0]=0;Gh(c[(c[f>>2]|0)+208>>2]|0,d[(c[f>>2]|0)+9>>0]|0,c[(c[f>>2]|0)+152>>2]|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+208>>2]=0;Cg(c[f>>2]|0);b=c[f>>2]|0;if((a[(c[f>>2]|0)+15>>0]|0)!=0){Hh(b)}else{if((c[c[b+64>>2]>>2]|0)!=0){b=c[f>>2]|0;Ih(b,Jh(c[f>>2]|0)|0)|0}Kh(c[f>>2]|0)}eh();Lh(c[(c[f>>2]|0)+64>>2]|0)|0;Lh(c[(c[f>>2]|0)+60>>2]|0)|0;Dg(c[g>>2]|0);Mh(c[(c[f>>2]|0)+204>>2]|0);gc(c[f>>2]|0);i=e;return 0}function Ch(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;Dh(c[(c[f>>2]|0)+204>>2]|0,c[e>>2]|0);i=d;return}function Dh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+16>>2]=c[f>>2];if((c[(c[e>>2]|0)+40>>2]|0)==0){i=d;return}b=c[38636>>2]|0;a=c[(c[e>>2]|0)+40>>2]|0;f=Eh(c[e>>2]|0)|0;sb[b&7](a,f);i=d;return}function Eh(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;a=c[(c[e>>2]|0)+16>>2]|0;if((c[(c[e>>2]|0)+16>>2]|0)>=0){c[d>>2]=a;a=c[d>>2]|0;i=b;return a|0}else{f=lE(-1024,-1,a|0,((a|0)<0)<<31>>31|0)|0;a=(c[(c[e>>2]|0)+20>>2]|0)+(c[(c[e>>2]|0)+24>>2]|0)|0;a=jE(f|0,D|0,a|0,((a|0)<0)<<31>>31|0)|0;c[d>>2]=a;a=c[d>>2]|0;i=b;return a|0}return 0}function Fh(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b+4|0;e=b;c[f>>2]=a;c[d>>2]=c[(c[f>>2]|0)+136>>2];while(1){if((c[d>>2]|0)==0){break}c[e>>2]=c[(c[d>>2]|0)+12>>2];gc(c[d>>2]|0);c[d>>2]=c[e>>2]}i=b;return}function Gh(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+32|0;l=n+24|0;h=n+20|0;o=n+16|0;p=n+12|0;j=n+8|0;m=n+4|0;k=n;c[l>>2]=b;c[h>>2]=e;c[o>>2]=f;c[p>>2]=g;c[j>>2]=0;if((c[l>>2]|0)==0){b=c[j>>2]|0;i=n;return b|0}c[m>>2]=0;c[j>>2]=jj(c[(c[l>>2]|0)+4>>2]|0,4)|0;do{if((c[j>>2]|0)==0){if((d[(c[l>>2]|0)+43>>0]|0|0)==0){a[(c[l>>2]|0)+43>>0]=1}c[j>>2]=kj(c[l>>2]|0,0,0,0,c[h>>2]|0,c[o>>2]|0,c[p>>2]|0,0,0)|0;if((c[j>>2]|0)==0){c[k>>2]=-1;lj(c[(c[l>>2]|0)+4>>2]|0,10,k);if((c[k>>2]|0)!=1){c[m>>2]=1;break}b=(c[l>>2]|0)+16|0;e=c[b+4>>2]|0;if((e|0)>0|(e|0)==0&(c[b>>2]|0)>>>0>=0){mj(c[l>>2]|0,0,0)}}}}while(0);nj(c[l>>2]|0,c[m>>2]|0);Lh(c[(c[l>>2]|0)+8>>2]|0)|0;if((c[m>>2]|0)!=0){dh();Th(c[c[l>>2]>>2]|0,c[(c[l>>2]|0)+100>>2]|0,0)|0;eh()}gc(c[(c[l>>2]|0)+32>>2]|0);gc(c[l>>2]|0);b=c[j>>2]|0;i=n;return b|0}function Hh(b){b=b|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+8|0;g=f+4|0;h=f;c[e>>2]=b;Tg(c[(c[e>>2]|0)+56>>2]|0);c[(c[e>>2]|0)+56>>2]=0;Ph(c[e>>2]|0);j=(Vh(c[e>>2]|0)|0)!=0;b=c[e>>2]|0;if(!j){if((a[b+4>>0]|0)==0){if((c[c[(c[e>>2]|0)+60>>2]>>2]|0)!=0){b=ui(c[(c[e>>2]|0)+60>>2]|0)|0}else{b=0}c[h>>2]=b;if(!(0!=(c[h>>2]&2048|0)?1==(a[(c[e>>2]|0)+5>>0]&5|0):0)){Lh(c[(c[e>>2]|0)+64>>2]|0)|0}c[g>>2]=Zh(c[e>>2]|0,0)|0;if((c[g>>2]|0)!=0?(d[(c[e>>2]|0)+16>>0]|0)==6:0){a[(c[e>>2]|0)+17>>0]=5}a[(c[e>>2]|0)+18>>0]=0;a[(c[e>>2]|0)+16>>0]=0}}else{ij(c[b+208>>2]|0);a[(c[e>>2]|0)+16>>0]=0}if((c[(c[e>>2]|0)+40>>2]|0)==0){j=c[e>>2]|0;j=j+72|0;b=j;c[b>>2]=0;j=j+4|0;c[j>>2]=0;j=c[e>>2]|0;j=j+80|0;b=j;c[b>>2]=0;j=j+4|0;c[j>>2]=0;j=c[e>>2]|0;j=j+19|0;a[j>>0]=0;i=f;return}Cg(c[e>>2]|0);a[(c[e>>2]|0)+18>>0]=a[(c[e>>2]|0)+12>>0]|0;a[(c[e>>2]|0)+16>>0]=0;c[(c[e>>2]|0)+40>>2]=0;j=c[e>>2]|0;j=j+72|0;b=j;c[b>>2]=0;j=j+4|0;c[j>>2]=0;j=c[e>>2]|0;j=j+80|0;b=j;c[b>>2]=0;j=j+4|0;c[j>>2]=0;j=c[e>>2]|0;j=j+19|0;a[j>>0]=0;i=f;return}function Ih(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;f=e+4|0;h=e;c[g>>2]=b;c[f>>2]=d;c[h>>2]=c[f>>2]&255;if(!((c[h>>2]|0)==13|(c[h>>2]|0)==10)){h=c[f>>2]|0;i=e;return h|0}c[(c[g>>2]|0)+40>>2]=c[f>>2];a[(c[g>>2]|0)+16>>0]=6;h=c[f>>2]|0;i=e;return h|0}function Jh(b){b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;f=e+4|0;d=e;c[f>>2]=b;c[d>>2]=0;if((a[(c[f>>2]|0)+7>>0]|0)==0){c[d>>2]=di(c[(c[f>>2]|0)+64>>2]|0,2)|0}if((c[d>>2]|0)!=0){f=c[d>>2]|0;i=e;return f|0}c[d>>2]=Ag(c[(c[f>>2]|0)+64>>2]|0,(c[f>>2]|0)+80|0)|0;f=c[d>>2]|0;i=e;return f|0}function Kh(b){b=b|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=b;do{if((d[(c[f>>2]|0)+16>>0]|0)!=6?(d[(c[f>>2]|0)+16>>0]|0)!=0:0){if((d[(c[f>>2]|0)+16>>0]|0)>=2){dh();Nh(c[f>>2]|0)|0;eh();break}if((a[(c[f>>2]|0)+4>>0]|0)==0){Oh(c[f>>2]|0,0,0)|0}}}while(0);Hh(c[f>>2]|0);i=e;return}function Lh(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=0;if((c[c[e>>2]>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}c[d>>2]=ub[c[(c[c[e>>2]>>2]|0)+4>>2]&31](c[e>>2]|0)|0;c[c[e>>2]>>2]=0;e=c[d>>2]|0;i=b;return e|0}function Mh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[d>>2]|0)+40>>2]|0)==0){i=b;return}rb[c[38660>>2]&31](c[(c[d>>2]|0)+40>>2]|0);i=b;return}function Nh(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=b;c[h>>2]=0;b=c[g>>2]|0;if((d[(c[g>>2]|0)+16>>0]|0)==6){c[f>>2]=c[b+40>>2];b=c[f>>2]|0;i=e;return b|0}if((d[b+16>>0]|0)<=1){c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}l=(Vh(c[g>>2]|0)|0)!=0;b=c[g>>2]|0;do{if(l){c[h>>2]=mi(b,2,-1)|0;c[j>>2]=Oh(c[g>>2]|0,d[(c[g>>2]|0)+19>>0]|0,0)|0;if((c[h>>2]|0)==0){c[h>>2]=c[j>>2]}}else{if((c[c[b+64>>2]>>2]|0)!=0?(d[(c[g>>2]|0)+16>>0]|0)!=2:0){c[h>>2]=ni(c[g>>2]|0,0)|0;break}c[k>>2]=d[(c[g>>2]|0)+16>>0]|0;c[h>>2]=Oh(c[g>>2]|0,0,0)|0;if((a[(c[g>>2]|0)+15>>0]|0)==0?(c[k>>2]|0)>2:0){c[(c[g>>2]|0)+40>>2]=4;a[(c[g>>2]|0)+16>>0]=6;c[f>>2]=c[h>>2];l=c[f>>2]|0;i=e;return l|0}}}while(0);c[f>>2]=Ih(c[g>>2]|0,c[h>>2]|0)|0;l=c[f>>2]|0;i=e;return l|0}function Oh(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;h=m+24|0;l=m+20|0;n=m+16|0;k=m+12|0;j=m+8|0;g=m+4|0;o=m;c[l>>2]=b;c[n>>2]=e;c[k>>2]=f;c[j>>2]=0;c[g>>2]=0;if((d[(c[l>>2]|0)+16>>0]|0)<2?(d[(c[l>>2]|0)+17>>0]|0)<2:0){c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}Ph(c[l>>2]|0);a:do{if((c[c[(c[l>>2]|0)+64>>2]>>2]|0)!=0){b=(Qh(c[(c[l>>2]|0)+64>>2]|0)|0)!=0;f=c[l>>2]|0;if(b){Lh(c[f+64>>2]|0)|0;break}e=c[l>>2]|0;if((d[f+5>>0]|0)==3){b=e+72|0;if((c[b>>2]|0)==0&(c[b+4>>2]|0)==0){c[j>>2]=0}else{c[j>>2]=Rh(c[(c[l>>2]|0)+64>>2]|0,0,0)|0}b=(c[l>>2]|0)+72|0;c[b>>2]=0;c[b+4>>2]=0;break}do{if((d[e+5>>0]|0)!=1){if((d[(c[l>>2]|0)+4>>0]|0)!=0?(d[(c[l>>2]|0)+5>>0]|0)!=5:0){break}c[o>>2]=((a[(c[l>>2]|0)+12>>0]|0)!=0?0:1)&1;Lh(c[(c[l>>2]|0)+64>>2]|0)|0;if((c[o>>2]|0)==0){break a}c[j>>2]=Th(c[c[l>>2]>>2]|0,c[(c[l>>2]|0)+172>>2]|0,0)|0;break a}}while(0);c[j>>2]=Sh(c[l>>2]|0,c[n>>2]|0)|0;b=(c[l>>2]|0)+72|0;c[b>>2]=0;c[b+4>>2]=0}}while(0);Tg(c[(c[l>>2]|0)+56>>2]|0);c[(c[l>>2]|0)+56>>2]=0;c[(c[l>>2]|0)+44>>2]=0;Uh(c[(c[l>>2]|0)+204>>2]|0);Jg(c[(c[l>>2]|0)+204>>2]|0,c[(c[l>>2]|0)+24>>2]|0);if((Vh(c[l>>2]|0)|0)==0){if(((c[j>>2]|0)==0?(c[k>>2]|0)!=0:0)?(c[(c[l>>2]|0)+32>>2]|0)>>>0>(c[(c[l>>2]|0)+24>>2]|0)>>>0:0){c[j>>2]=Xh(c[l>>2]|0,c[(c[l>>2]|0)+24>>2]|0)|0}}else{c[g>>2]=Wh(c[(c[l>>2]|0)+208>>2]|0)|0}if(((c[j>>2]|0)==0?(c[k>>2]|0)!=0:0)?(c[c[(c[l>>2]|0)+60>>2]>>2]|0)!=0:0){b=cg(c[(c[l>>2]|0)+60>>2]|0,22,0)|0;c[j>>2]=b;c[j>>2]=(c[j>>2]|0)==12?0:b}do{if((a[(c[l>>2]|0)+4>>0]|0)==0){if((Vh(c[l>>2]|0)|0)!=0?(Yh(c[(c[l>>2]|0)+208>>2]|0,0)|0)==0:0){break}c[g>>2]=Zh(c[l>>2]|0,1)|0;a[(c[l>>2]|0)+18>>0]=0}}while(0);a[(c[l>>2]|0)+16>>0]=1;a[(c[l>>2]|0)+19>>0]=0;c[h>>2]=(c[j>>2]|0)==0?c[g>>2]|0:c[j>>2]|0;b=c[h>>2]|0;i=m;return b|0}function Ph(b){b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+4|0;f=e;c[d>>2]=b;c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[d>>2]|0)+96>>2]|0)){break}Tg(c[(c[(c[d>>2]|0)+92>>2]|0)+((c[f>>2]|0)*48|0)+16>>2]|0);c[f>>2]=(c[f>>2]|0)+1}if(!((a[(c[d>>2]|0)+4>>0]|0)!=0?(Qh(c[(c[d>>2]|0)+68>>2]|0)|0)==0:0)){Lh(c[(c[d>>2]|0)+68>>2]|0)|0}gc(c[(c[d>>2]|0)+92>>2]|0);c[(c[d>>2]|0)+92>>2]=0;c[(c[d>>2]|0)+96>>2]=0;c[(c[d>>2]|0)+52>>2]=0;i=e;return}function Qh(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[c[b>>2]>>2]|0)==4224|0}function Rh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;a=g;a=pb[c[(c[c[f>>2]>>2]|0)+16>>2]&15](c[f>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;i=e;return a|0}function Sh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;h=f+24|0;l=f+20|0;g=f+16|0;k=f+8|0;j=f;c[h>>2]=b;c[l>>2]=e;c[g>>2]=0;b=(c[h>>2]|0)+72|0;if(!((c[b>>2]|0)!=0|(c[b+4>>2]|0)!=0)){b=c[g>>2]|0;i=f;return b|0}m=(c[h>>2]|0)+160|0;e=c[m+4>>2]|0;b=k;c[b>>2]=c[m>>2];c[b+4>>2]=e;if((c[l>>2]|0)==0?(m=k,!((c[m>>2]|0)==0&(c[m+4>>2]|0)==0)):0){c[g>>2]=fd(c[(c[h>>2]|0)+64>>2]|0,4192,28,0,0)|0}else{c[g>>2]=Rh(c[(c[h>>2]|0)+64>>2]|0,0,0)|0}if((c[g>>2]|0)==0?(a[(c[h>>2]|0)+7>>0]|0)==0:0){c[g>>2]=di(c[(c[h>>2]|0)+64>>2]|0,16|d[(c[h>>2]|0)+11>>0])|0}if((c[g>>2]|0)!=0){m=c[g>>2]|0;i=f;return m|0}m=k;b=c[m+4>>2]|0;if(!((b|0)>0|(b|0)==0&(c[m>>2]|0)>>>0>0)){m=c[g>>2]|0;i=f;return m|0}c[g>>2]=Ag(c[(c[h>>2]|0)+64>>2]|0,j)|0;if((c[g>>2]|0)!=0){m=c[g>>2]|0;i=f;return m|0}b=j;j=c[b+4>>2]|0;m=k;l=c[m+4>>2]|0;if(!((j|0)>(l|0)|((j|0)==(l|0)?(c[b>>2]|0)>>>0>(c[m>>2]|0)>>>0:0))){m=c[g>>2]|0;i=f;return m|0}m=k;c[g>>2]=Rh(c[(c[h>>2]|0)+64>>2]|0,c[m>>2]|0,c[m+4>>2]|0)|0;m=c[g>>2]|0;i=f;return m|0}function Th(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=pb[c[(c[h>>2]|0)+28>>2]&15](c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Uh(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;while(1){a=c[c[d>>2]>>2]|0;c[e>>2]=a;if((a|0)==0){break}Kg(c[e>>2]|0)}i=b;return}function Vh(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[(c[b>>2]|0)+208>>2]|0)!=0|0}function Wh(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if((a[(c[e>>2]|0)+44>>0]|0)==0){i=d;return 0}ci(c[e>>2]|0,0,1);a[(c[e>>2]|0)+44>>0]=0;a[(c[e>>2]|0)+47>>0]=0;i=d;return 0}function Xh(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+48|0;g=e+32|0;m=e+28|0;f=e+24|0;l=e+8|0;k=e;j=e+20|0;h=e+16|0;c[g>>2]=a;c[m>>2]=b;c[f>>2]=0;if((c[c[(c[g>>2]|0)+60>>2]>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}if((d[(c[g>>2]|0)+16>>0]|0|0)<4?(d[(c[g>>2]|0)+16>>0]|0|0)!=0:0){a=c[f>>2]|0;i=e;return a|0}c[j>>2]=c[(c[g>>2]|0)+152>>2];c[f>>2]=Ag(c[(c[g>>2]|0)+60>>2]|0,l)|0;b=c[j>>2]|0;b=lE(b|0,((b|0)<0)<<31>>31|0,c[m>>2]|0,0)|0;a=k;c[a>>2]=b;c[a+4>>2]=D;if((c[f>>2]|0)!=0){a=c[f>>2]|0;i=e;return a|0}b=l;a=k;if(!((c[b>>2]|0)!=(c[a>>2]|0)?1:(c[b+4>>2]|0)!=(c[a+4>>2]|0))){a=c[f>>2]|0;i=e;return a|0}b=l;o=c[b+4>>2]|0;a=k;n=c[a+4>>2]|0;if(!((o|0)>(n|0)|((o|0)==(n|0)?(c[b>>2]|0)>>>0>(c[a>>2]|0)>>>0:0))){n=c[j>>2]|0;n=bE(c[l>>2]|0,c[l+4>>2]|0,n|0,((n|0)<0)<<31>>31|0)|0;l=D;o=k;a=c[o+4>>2]|0;if((l|0)<(a|0)|((l|0)==(a|0)?n>>>0<=(c[o>>2]|0)>>>0:0)){c[h>>2]=c[(c[g>>2]|0)+200>>2];_D(c[h>>2]|0,0,c[j>>2]|0)|0;l=c[(c[g>>2]|0)+60>>2]|0;a=c[h>>2]|0;n=c[j>>2]|0;o=c[j>>2]|0;o=ZD(c[k>>2]|0,c[k+4>>2]|0,o|0,((o|0)<0)<<31>>31|0)|0;c[f>>2]=fd(l,a,n,o,D)|0}}else{o=k;c[f>>2]=Rh(c[(c[g>>2]|0)+60>>2]|0,c[o>>2]|0,c[o+4>>2]|0)|0}if((c[f>>2]|0)!=0){o=c[f>>2]|0;i=e;return o|0}c[(c[g>>2]|0)+32>>2]=c[m>>2];o=c[f>>2]|0;i=e;return o|0}function Yh(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g+8|0;k=g+4|0;h=g;c[j>>2]=e;c[k>>2]=f;if((c[k>>2]|0)!=0){f=c[j>>2]|0;if((c[k>>2]|0)>0){ai(f,3+(b[(c[j>>2]|0)+40>>1]|0)|0);a[(c[j>>2]|0)+43>>0]=1;c[h>>2]=1;e=c[h>>2]|0;i=g;return e|0}else{c[h>>2]=(d[f+43>>0]|0)==0&1;e=c[h>>2]|0;i=g;return e|0}}if((a[(c[j>>2]|0)+43>>0]|0)==0){c[h>>2]=0;e=c[h>>2]|0;i=g;return e|0}a[(c[j>>2]|0)+43>>0]=0;if(($h(c[j>>2]|0,3+(b[(c[j>>2]|0)+40>>1]|0)|0)|0)!=0){a[(c[j>>2]|0)+43>>0]=1}c[h>>2]=(d[(c[j>>2]|0)+43>>0]|0)==0&1;e=c[h>>2]|0;i=g;return e|0}function Zh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;h=f+8|0;j=f+4|0;g=f;c[h>>2]=b;c[j>>2]=e;c[g>>2]=0;if((c[c[(c[h>>2]|0)+60>>2]>>2]|0)==0){b=c[g>>2]|0;i=f;return b|0}if((d[(c[h>>2]|0)+13>>0]|0|0)!=0){e=0}else{e=_h(c[(c[h>>2]|0)+60>>2]|0,c[j>>2]|0)|0}c[g>>2]=e;if((d[(c[h>>2]|0)+17>>0]|0|0)==5){b=c[g>>2]|0;i=f;return b|0}a[(c[h>>2]|0)+17>>0]=c[j>>2];b=c[g>>2]|0;i=f;return b|0}function _h(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+32>>2]&63](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function $h(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;j=e+8|0;h=e+4|0;g=e;c[j>>2]=b;c[h>>2]=d;if((a[(c[j>>2]|0)+43>>0]|0)!=0){c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}else{c[g>>2]=bi(c[(c[j>>2]|0)+4>>2]|0,c[h>>2]|0,1,6)|0;c[f>>2]=c[g>>2];b=c[f>>2]|0;i=e;return b|0}return 0}function ai(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;if((a[(c[f>>2]|0)+43>>0]|0)!=0){i=e;return}bi(c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0,1,5)|0;i=e;return}function bi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f+8|0;h=f+4|0;g=f;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=xb[c[(c[c[k>>2]>>2]|0)+56>>2]&15](c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return a|0}function ci(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;h=f+4|0;j=f;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;if((a[(c[g>>2]|0)+43>>0]|0)!=0){i=f;return}bi(c[(c[g>>2]|0)+4>>2]|0,c[h>>2]|0,c[j>>2]|0,9)|0;i=f;return}function di(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+20>>2]&63](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function ei(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;hi(c[d>>2]|0,0,0)|0;i=b;return 0}function fi(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=i;i=i+64|0;t=l+52|0;s=l+48|0;h=l+44|0;o=l+8|0;j=l+40|0;n=l+36|0;p=l+32|0;g=l+28|0;k=l+24|0;r=l;q=l+20|0;m=l+16|0;c[t>>2]=a;c[s>>2]=b;c[h>>2]=d;d=o;c[d>>2]=e;c[d+4>>2]=f;c[j>>2]=c[t>>2];c[n>>2]=c[s>>2];c[p>>2]=c[h>>2];d=(c[j>>2]|0)+24|0;b=o;a=o;a:do{if(((c[d>>2]|0)!=(c[b>>2]|0)?1:(c[d+4>>2]|0)!=(c[b+4>>2]|0))|(c[a>>2]|0)==0&(c[a+4>>2]|0)==0){t=r;c[t>>2]=0;c[t+4>>2]=0;c[k>>2]=c[(c[j>>2]|0)+4>>2];while(1){if((c[k>>2]|0)==0){break a}s=r;s=bE(c[s>>2]|0,c[s+4>>2]|0,1020,0)|0;b=D;t=o;a=c[t+4>>2]|0;if(!((b|0)<(a|0)|((b|0)==(a|0)?s>>>0<=(c[t>>2]|0)>>>0:0))){break a}s=r;s=bE(c[s>>2]|0,c[s+4>>2]|0,1020,0)|0;t=r;c[t>>2]=s;c[t+4>>2]=D;c[k>>2]=c[c[k>>2]>>2]}}else{c[k>>2]=c[(c[j>>2]|0)+32>>2]}}while(0);t=o;t=kE(c[t>>2]|0,c[t+4>>2]|0,1020,0)|0;c[g>>2]=t;do{c[q>>2]=1020-(c[g>>2]|0);if((c[p>>2]|0)<(1020-(c[g>>2]|0)|0)){f=c[p>>2]|0}else{f=1020-(c[g>>2]|0)|0}c[m>>2]=f;dE(c[n>>2]|0,(c[k>>2]|0)+4+(c[g>>2]|0)|0,c[m>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+(c[m>>2]|0);c[p>>2]=(c[p>>2]|0)-(c[q>>2]|0);c[g>>2]=0;if((c[p>>2]|0)<0){break}t=c[c[k>>2]>>2]|0;c[k>>2]=t;if((t|0)==0){break}}while((c[p>>2]|0)>0);t=o;s=c[h>>2]|0;s=bE(c[t>>2]|0,c[t+4>>2]|0,s|0,((s|0)<0)<<31>>31|0)|0;t=(c[j>>2]|0)+24|0;c[t>>2]=s;c[t+4>>2]=D;c[(c[j>>2]|0)+32>>2]=c[k>>2];i=l;return 0}function gi(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+64|0;h=g+48|0;s=g+44|0;q=g+40|0;r=g+36|0;o=g+32|0;n=g+28|0;p=g+24|0;j=g+20|0;m=g+16|0;l=g+12|0;k=g+8|0;c[s>>2]=a;c[q>>2]=b;c[r>>2]=d;a=g;c[a>>2]=e;c[a+4>>2]=f;c[o>>2]=c[s>>2];c[n>>2]=c[r>>2];c[p>>2]=c[q>>2];while(1){if((c[n>>2]|0)<=0){j=14;break}c[j>>2]=c[(c[o>>2]|0)+16>>2];s=(c[o>>2]|0)+8|0;s=kE(c[s>>2]|0,c[s+4>>2]|0,1020,0)|0;c[m>>2]=s;if((c[n>>2]|0)<(1020-(c[m>>2]|0)|0)){f=c[n>>2]|0}else{f=1020-(c[m>>2]|0)|0}c[l>>2]=f;if((c[m>>2]|0)==0){c[k>>2]=ec(1024)|0;if((c[k>>2]|0)==0){j=8;break}c[c[k>>2]>>2]=0;f=c[k>>2]|0;if((c[j>>2]|0)!=0){c[c[j>>2]>>2]=f}else{c[(c[o>>2]|0)+4>>2]=f}c[(c[o>>2]|0)+16>>2]=c[k>>2]}dE((c[(c[o>>2]|0)+16>>2]|0)+4+(c[m>>2]|0)|0,c[p>>2]|0,c[l>>2]|0)|0;c[p>>2]=(c[p>>2]|0)+(c[l>>2]|0);c[n>>2]=(c[n>>2]|0)-(c[l>>2]|0);r=c[l>>2]|0;s=(c[o>>2]|0)+8|0;q=s;r=bE(c[q>>2]|0,c[q+4>>2]|0,r|0,((r|0)<0)<<31>>31|0)|0;c[s>>2]=r;c[s+4>>2]=D}if((j|0)==8){c[h>>2]=3082;s=c[h>>2]|0;i=g;return s|0}else if((j|0)==14){c[h>>2]=0;s=c[h>>2]|0;i=g;return s|0}return 0}function hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+32|0;e=f+20|0;j=f+16|0;g=f+12|0;h=f+8|0;c[e>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;c[j>>2]=c[e>>2];c[g>>2]=c[(c[j>>2]|0)+4>>2];while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[g>>2];c[g>>2]=c[c[g>>2]>>2];gc(c[h>>2]|0)}ki(c[e>>2]|0);i=f;return 0}function ii(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function ji(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d+4|0;e=d;c[g>>2]=a;c[f>>2]=b;c[e>>2]=c[g>>2];e=(c[e>>2]|0)+8|0;b=c[e+4>>2]|0;a=c[f>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=b;i=d;return 0}function ki(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];a=c[d>>2]|0;_D(a|0,0,li()|0)|0;c[c[d>>2]>>2]=4224;i=b;return}function li(){return 40}function mi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;g=h+24|0;j=h+20|0;m=h+16|0;e=h+12|0;l=h+8|0;k=h+4|0;f=h;c[g>>2]=a;c[j>>2]=b;c[m>>2]=d;c[e>>2]=c[(c[g>>2]|0)+40>>2];if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=h;return a|0}if((c[m>>2]|0)>=(c[(c[g>>2]|0)+96>>2]|0)){a=c[e>>2]|0;i=h;return a|0}c[k>>2]=(c[m>>2]|0)+((c[j>>2]|0)==1?0:1);c[l>>2]=c[k>>2];while(1){if((c[l>>2]|0)>=(c[(c[g>>2]|0)+96>>2]|0)){break}Tg(c[(c[(c[g>>2]|0)+92>>2]|0)+((c[l>>2]|0)*48|0)+16>>2]|0);c[l>>2]=(c[l>>2]|0)+1}c[(c[g>>2]|0)+96>>2]=c[k>>2];if((c[j>>2]|0)!=1){if((Vh(c[g>>2]|0)|0)==0?(c[c[(c[g>>2]|0)+64>>2]>>2]|0)==0:0){a=c[e>>2]|0;i=h;return a|0}if((c[k>>2]|0)==0){j=0}else{j=(c[(c[g>>2]|0)+92>>2]|0)+(((c[k>>2]|0)-1|0)*48|0)|0}c[f>>2]=j;c[e>>2]=Ii(c[g>>2]|0,c[f>>2]|0)|0;a=c[e>>2]|0;i=h;return a|0}if((c[k>>2]|0)!=0){a=c[e>>2]|0;i=h;return a|0}if((c[c[(c[g>>2]|0)+68>>2]>>2]|0)==0){a=c[e>>2]|0;i=h;return a|0}if((Qh(c[(c[g>>2]|0)+68>>2]|0)|0)!=0){c[e>>2]=Rh(c[(c[g>>2]|0)+68>>2]|0,0,0)|0}c[(c[g>>2]|0)+52>>2]=0;a=c[e>>2]|0;i=h;return a|0}function ni(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+64|0;n=k+8|0;f=k+56|0;l=k+52|0;t=k+48|0;p=k;q=k+44|0;o=k+40|0;s=k+36|0;h=k+32|0;j=k+28|0;g=k+24|0;r=k+20|0;m=k+16|0;c[f>>2]=b;c[l>>2]=e;c[t>>2]=c[c[f>>2]>>2];c[s>>2]=0;c[j>>2]=1;c[g>>2]=0;c[m>>2]=0;c[h>>2]=Ag(c[(c[f>>2]|0)+64>>2]|0,p)|0;a:do{if((c[h>>2]|0)==0){c[g>>2]=c[(c[f>>2]|0)+200>>2];c[h>>2]=oi(c[(c[f>>2]|0)+64>>2]|0,c[g>>2]|0,(c[(c[c[f>>2]>>2]|0)+8>>2]|0)+1|0)|0;if((c[h>>2]|0)==0?(a[c[g>>2]>>0]|0)!=0:0){c[h>>2]=pi(c[t>>2]|0,c[g>>2]|0,0,j)|0}c[g>>2]=0;if((c[h>>2]|0)==0?(c[j>>2]|0)!=0:0){b=(c[f>>2]|0)+72|0;c[b>>2]=0;c[b+4>>2]=0;c[r>>2]=c[l>>2];b:while(1){b=p;c[h>>2]=qi(c[f>>2]|0,c[l>>2]|0,c[b>>2]|0,c[b+4>>2]|0,q,s)|0;if((c[h>>2]|0)!=0){o=9;break}if((c[q>>2]|0)==-1){t=p;t=ZD(c[t>>2]|0,c[t+4>>2]|0,c[(c[f>>2]|0)+148>>2]|0,0)|0;b=(c[(c[f>>2]|0)+152>>2]|0)+8|0;b=jE(t|0,D|0,b|0,((b|0)<0)<<31>>31|0)|0;c[q>>2]=b}if(((c[q>>2]|0)==0?(c[l>>2]|0)==0:0)?(t=(c[f>>2]|0)+80|0,t=bE(c[t>>2]|0,c[t+4>>2]|0,c[(c[f>>2]|0)+148>>2]|0,0)|0,b=(c[f>>2]|0)+72|0,(t|0)==(c[b>>2]|0)?(D|0)==(c[b+4>>2]|0):0):0){b=p;t=(c[f>>2]|0)+72|0;t=ZD(c[b>>2]|0,c[b+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0)|0;b=(c[(c[f>>2]|0)+152>>2]|0)+8|0;b=jE(t|0,D|0,b|0,((b|0)<0)<<31>>31|0)|0;c[q>>2]=b}b=(c[f>>2]|0)+72|0;if((c[b+4>>2]|0)==0?(c[b>>2]|0)==(c[(c[f>>2]|0)+148>>2]|0):0){c[h>>2]=Xh(c[f>>2]|0,c[s>>2]|0)|0;if((c[h>>2]|0)!=0){break a}c[(c[f>>2]|0)+24>>2]=c[s>>2]}c[o>>2]=0;while(1){if(!((c[o>>2]|0)>>>0<(c[q>>2]|0)>>>0)){continue b}if((c[r>>2]|0)!=0){Cg(c[f>>2]|0);c[r>>2]=0}c[h>>2]=ri(c[f>>2]|0,(c[f>>2]|0)+72|0,0,1,0)|0;if((c[h>>2]|0)!=0){break}c[m>>2]=(c[m>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+1}if((c[h>>2]|0)!=101){o=28;break}e=p;t=c[e+4>>2]|0;b=(c[f>>2]|0)+72|0;c[b>>2]=c[e>>2];c[b+4>>2]=t}if((o|0)==9){if((c[h>>2]|0)!=101){break}c[h>>2]=0;break}else if((o|0)==28){if((c[h>>2]|0)!=522){break}c[h>>2]=0;break}}}}while(0);a[(c[f>>2]|0)+18>>0]=a[(c[f>>2]|0)+12>>0]|0;if((c[h>>2]|0)==0){c[g>>2]=c[(c[f>>2]|0)+200>>2];c[h>>2]=oi(c[(c[f>>2]|0)+64>>2]|0,c[g>>2]|0,(c[(c[c[f>>2]>>2]|0)+8>>2]|0)+1|0)|0}do{if((c[h>>2]|0)==0){if((d[(c[f>>2]|0)+16>>0]|0)<4?(d[(c[f>>2]|0)+16>>0]|0)!=0:0){break}c[h>>2]=hd(c[f>>2]|0,0)|0}}while(0);if((c[h>>2]|0)==0){c[h>>2]=Oh(c[f>>2]|0,(a[c[g>>2]>>0]|0)!=0&1,0)|0}if(((c[h>>2]|0)==0?(a[c[g>>2]>>0]|0)!=0:0)?(c[j>>2]|0)!=0:0){c[h>>2]=si(c[f>>2]|0,c[g>>2]|0)|0}if((c[l>>2]|0)==0){b=c[f>>2]|0;ti(b);b=c[h>>2]|0;i=k;return b|0}if((c[m>>2]|0)==0){b=c[f>>2]|0;ti(b);b=c[h>>2]|0;i=k;return b|0}b=c[(c[f>>2]|0)+172>>2]|0;c[n>>2]=c[m>>2];c[n+4>>2]=b;rc(539,4304,n);b=c[f>>2]|0;ti(b);b=c[h>>2]|0;i=k;return b|0}function oi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+48|0;h=j+36|0;k=j+32|0;l=j+28|0;q=j+24|0;g=j+20|0;f=j+16|0;n=j;p=j+12|0;m=j+8|0;o=j+40|0;c[k>>2]=b;c[l>>2]=d;c[q>>2]=e;a[c[l>>2]>>0]=0;e=Ag(c[k>>2]|0,n)|0;c[g>>2]=e;b=n;d=c[b+4>>2]|0;if((((((!(0!=(e|0)|((d|0)<0|(d|0)==0&(c[b>>2]|0)>>>0<16))?(d=c[k>>2]|0,b=n,b=ZD(c[b>>2]|0,c[b+4>>2]|0,16,0)|0,b=zi(d,b,D,f)|0,c[g>>2]=b,0==(b|0)):0)?!((c[f>>2]|0)==0?1:(c[f>>2]|0)>>>0>=(c[q>>2]|0)>>>0):0)?(d=c[k>>2]|0,b=n,b=ZD(c[b>>2]|0,c[b+4>>2]|0,12,0)|0,b=zi(d,b,D,p)|0,c[g>>2]=b,0==(b|0)):0)?(d=c[k>>2]|0,b=n,b=ZD(c[b>>2]|0,c[b+4>>2]|0,8,0)|0,b=yi(d,o,8,b,D)|0,c[g>>2]=b,0==(b|0)):0)?(VD(o,4336,8)|0)==0:0)?(o=c[k>>2]|0,q=c[l>>2]|0,d=c[f>>2]|0,b=n,b=ZD(c[b>>2]|0,c[b+4>>2]|0,16,0)|0,b=ZD(b|0,D|0,c[f>>2]|0,0)|0,b=yi(o,q,d,b,D)|0,c[g>>2]=b,0==(b|0)):0){c[m>>2]=0;while(1){if(!((c[m>>2]|0)>>>0<(c[f>>2]|0)>>>0)){break}c[p>>2]=(c[p>>2]|0)-(a[(c[l>>2]|0)+(c[m>>2]|0)>>0]|0);c[m>>2]=(c[m>>2]|0)+1}if((c[p>>2]|0)!=0){c[f>>2]=0}a[(c[l>>2]|0)+(c[f>>2]|0)>>0]=0;c[h>>2]=0;b=c[h>>2]|0;i=j;return b|0}c[h>>2]=c[g>>2];b=c[h>>2]|0;i=j;return b|0}function pi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f+8|0;h=f+4|0;g=f;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=xb[c[(c[k>>2]|0)+32>>2]&15](c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return a|0}function qi(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=i;i=i+64|0;j=p+44|0;k=p+40|0;s=p+36|0;t=p+8|0;q=p+32|0;h=p+28|0;n=p+24|0;r=p+48|0;l=p;m=p+20|0;o=p+16|0;c[k>>2]=a;c[s>>2]=b;b=t;c[b>>2]=d;c[b+4>>2]=e;c[q>>2]=f;c[h>>2]=g;e=Hi(c[k>>2]|0)|0;b=(c[k>>2]|0)+72|0;c[b>>2]=e;c[b+4>>2]=D;b=(c[k>>2]|0)+72|0;b=bE(c[b>>2]|0,c[b+4>>2]|0,c[(c[k>>2]|0)+148>>2]|0,0)|0;e=D;a=t;d=c[a+4>>2]|0;if((e|0)>(d|0)|((e|0)==(d|0)?b>>>0>(c[a>>2]|0)>>>0:0)){c[j>>2]=101;t=c[j>>2]|0;i=p;return t|0}b=(c[k>>2]|0)+72|0;a=c[b+4>>2]|0;t=l;c[t>>2]=c[b>>2];c[t+4>>2]=a;if(!((c[s>>2]|0)==0?(a=l,t=(c[k>>2]|0)+80|0,!((c[a>>2]|0)!=(c[t>>2]|0)?1:(c[a+4>>2]|0)!=(c[t+4>>2]|0))):0)){t=l;c[n>>2]=yi(c[(c[k>>2]|0)+64>>2]|0,r,8,c[t>>2]|0,c[t+4>>2]|0)|0;if((c[n>>2]|0)!=0){c[j>>2]=c[n>>2];t=c[j>>2]|0;i=p;return t|0}if((VD(r,4336,8)|0)!=0){c[j>>2]=101;t=c[j>>2]|0;i=p;return t|0}}a=c[(c[k>>2]|0)+64>>2]|0;t=l;t=bE(c[t>>2]|0,c[t+4>>2]|0,8,0)|0;t=zi(a,t,D,c[q>>2]|0)|0;c[n>>2]=t;if((0==(t|0)?(a=c[(c[k>>2]|0)+64>>2]|0,t=l,t=bE(c[t>>2]|0,c[t+4>>2]|0,12,0)|0,t=zi(a,t,D,(c[k>>2]|0)+48|0)|0,c[n>>2]=t,0==(t|0)):0)?(a=c[(c[k>>2]|0)+64>>2]|0,t=l,t=bE(c[t>>2]|0,c[t+4>>2]|0,16,0)|0,t=zi(a,t,D,c[h>>2]|0)|0,c[n>>2]=t,0==(t|0)):0){t=(c[k>>2]|0)+72|0;do{if((c[t>>2]|0)==0&(c[t+4>>2]|0)==0){a=c[(c[k>>2]|0)+64>>2]|0;t=l;t=bE(c[t>>2]|0,c[t+4>>2]|0,20,0)|0;t=zi(a,t,D,o)|0;c[n>>2]=t;if(0==(t|0)?(a=c[(c[k>>2]|0)+64>>2]|0,t=l,t=bE(c[t>>2]|0,c[t+4>>2]|0,24,0)|0,t=zi(a,t,D,m)|0,c[n>>2]=t,0==(t|0)):0){if((c[m>>2]|0)==0){c[m>>2]=c[(c[k>>2]|0)+152>>2]}if(((((!((c[m>>2]|0)>>>0<512)?!((c[o>>2]|0)>>>0<32):0)?!((c[m>>2]|0)>>>0>65536):0)?!((c[o>>2]|0)>>>0>65536):0)?((c[m>>2]|0)-1&c[m>>2]|0)==0:0)?((c[o>>2]|0)-1&c[o>>2]|0)==0:0){c[n>>2]=yg(c[k>>2]|0,m,-1)|0;c[(c[k>>2]|0)+148>>2]=c[o>>2];break}c[j>>2]=101;t=c[j>>2]|0;i=p;return t|0}c[j>>2]=c[n>>2];t=c[j>>2]|0;i=p;return t|0}}while(0);t=(c[k>>2]|0)+72|0;a=t;a=bE(c[a>>2]|0,c[a+4>>2]|0,c[(c[k>>2]|0)+148>>2]|0,0)|0;c[t>>2]=a;c[t+4>>2]=D;c[j>>2]=c[n>>2];t=c[j>>2]|0;i=p;return t|0}c[j>>2]=c[n>>2];t=c[j>>2]|0;i=p;return t|0}function ri(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;m=i;i=i+64|0;l=m+60|0;r=m+56|0;w=m+52|0;A=m+48|0;x=m+44|0;q=m+40|0;o=m+36|0;n=m+32|0;s=m+28|0;z=m+24|0;u=m+20|0;B=m+16|0;v=m+12|0;t=m;p=m+8|0;c[r>>2]=f;c[w>>2]=g;c[A>>2]=h;c[x>>2]=j;c[q>>2]=k;c[u>>2]=c[(c[r>>2]|0)+200>>2];f=c[r>>2]|0;if((c[x>>2]|0)!=0){f=c[f+64>>2]|0}else{f=c[f+68>>2]|0}c[B>>2]=f;g=c[w>>2]|0;c[o>>2]=zi(c[B>>2]|0,c[g>>2]|0,c[g+4>>2]|0,s)|0;if((c[o>>2]|0)!=0){c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}k=c[B>>2]|0;j=c[u>>2]|0;h=c[(c[r>>2]|0)+152>>2]|0;g=c[w>>2]|0;g=bE(c[g>>2]|0,c[g+4>>2]|0,4,0)|0;c[o>>2]=yi(k,j,h,g,D)|0;if((c[o>>2]|0)!=0){c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}h=(c[(c[r>>2]|0)+152>>2]|0)+4+(c[x>>2]<<2)|0;g=c[w>>2]|0;j=g;h=bE(c[j>>2]|0,c[j+4>>2]|0,h|0,((h|0)<0)<<31>>31|0)|0;c[g>>2]=h;c[g+4>>2]=D;if((c[s>>2]|0)!=0?(c[s>>2]|0)!=(((c[346]|0)/(c[(c[r>>2]|0)+152>>2]|0)|0)+1|0):0){if(!((c[s>>2]|0)>>>0>(c[(c[r>>2]|0)+24>>2]|0)>>>0)?(Rg(c[A>>2]|0,c[s>>2]|0)|0)==0:0){if((c[x>>2]|0)!=0){h=c[B>>2]|0;g=c[w>>2]|0;g=ZD(c[g>>2]|0,c[g+4>>2]|0,4,0)|0;c[o>>2]=zi(h,g,D,z)|0;if((c[o>>2]|0)!=0){c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}if((c[q>>2]|0)==0?(g=Ai(c[r>>2]|0,c[u>>2]|0)|0,(g|0)!=(c[z>>2]|0)):0){c[l>>2]=101;g=c[l>>2]|0;i=m;return g|0}}if((c[A>>2]|0)!=0?(g=Pg(c[A>>2]|0,c[s>>2]|0)|0,c[o>>2]=g,(g|0)!=0):0){c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}if((c[s>>2]|0)==1?(b[(c[r>>2]|0)+142>>1]|0)!=(d[(c[u>>2]|0)+20>>0]|0):0){b[(c[r>>2]|0)+142>>1]=d[(c[u>>2]|0)+20>>0]|0}if((Vh(c[r>>2]|0)|0)!=0){c[n>>2]=0}else{c[n>>2]=Bi(c[r>>2]|0,c[s>>2]|0)|0}if((c[x>>2]|0)!=0){if((d[(c[r>>2]|0)+7>>0]|0)!=0){z=1}else{g=c[w>>2]|0;j=c[g+4>>2]|0;z=(c[r>>2]|0)+80|0;h=c[z+4>>2]|0;z=(j|0)<(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0<=(c[z>>2]|0)>>>0:0)}c[v>>2]=z&1}else{if((c[n>>2]|0)==0){z=1}else{z=0==(b[(c[n>>2]|0)+24>>1]&4|0)}c[v>>2]=z&1}do{if((c[c[(c[r>>2]|0)+60>>2]>>2]|0)!=0){if((d[(c[r>>2]|0)+16>>0]|0)<4?(d[(c[r>>2]|0)+16>>0]|0)!=0:0){y=44;break}if((c[v>>2]|0)!=0){h=c[(c[r>>2]|0)+152>>2]|0;h=lE((c[s>>2]|0)-1|0,0,h|0,((h|0)<0)<<31>>31|0)|0;g=t;c[g>>2]=h;c[g+4>>2]=D;g=t;c[o>>2]=fd(c[(c[r>>2]|0)+60>>2]|0,c[u>>2]|0,c[(c[r>>2]|0)+152>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;if((c[s>>2]|0)>>>0>(c[(c[r>>2]|0)+32>>2]|0)>>>0){c[(c[r>>2]|0)+32>>2]=c[s>>2]}if((c[(c[r>>2]|0)+88>>2]|0)!=0){Ci(c[(c[r>>2]|0)+88>>2]|0,c[s>>2]|0,c[u>>2]|0);c[u>>2]=c[u>>2]}}else{y=44}}else{y=44}}while(0);do{if(((y|0)==44?(c[x>>2]|0)==0:0)?(c[n>>2]|0)==0:0){g=(c[r>>2]|0)+20|0;a[g>>0]=d[g>>0]|2;c[o>>2]=Uc(c[r>>2]|0,c[s>>2]|0,n,1)|0;g=(c[r>>2]|0)+20|0;a[g>>0]=d[g>>0]&-3;if((c[o>>2]|0)==0){g=(c[n>>2]|0)+24|0;b[g>>1]=e[g>>1]&-9;Di(c[n>>2]|0);break}c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}}while(0);if((c[n>>2]|0)!=0){c[p>>2]=c[(c[n>>2]|0)+4>>2];dE(c[p>>2]|0,c[u>>2]|0,c[(c[r>>2]|0)+152>>2]|0)|0;rb[c[(c[r>>2]|0)+196>>2]&31](c[n>>2]|0);do{if((c[x>>2]|0)!=0){if((c[q>>2]|0)!=0?(h=c[w>>2]|0,k=c[h+4>>2]|0,g=(c[r>>2]|0)+80|0,j=c[g+4>>2]|0,!((k|0)<(j|0)|((k|0)==(j|0)?(c[h>>2]|0)>>>0<=(c[g>>2]|0)>>>0:0))):0){break}Kg(c[n>>2]|0)}}while(0);if((c[s>>2]|0)==1){q=(c[r>>2]|0)+100|0;r=(c[p>>2]|0)+24|0;p=q+16|0;do{a[q>>0]=a[r>>0]|0;q=q+1|0;r=r+1|0}while((q|0)<(p|0))}Ei(c[n>>2]|0)}c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}c[l>>2]=0;g=c[l>>2]|0;i=m;return g|0}c[l>>2]=101;g=c[l>>2]|0;i=m;return g|0}function si(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=i;i=i+64|0;t=s+60|0;j=s+56|0;h=s+52|0;g=s+48|0;m=s+44|0;f=s+40|0;e=s+36|0;r=s;p=s+32|0;l=s+28|0;n=s+24|0;q=s+16|0;k=s+12|0;o=s+8|0;c[t>>2]=b;c[j>>2]=d;c[h>>2]=c[c[t>>2]>>2];c[e>>2]=0;c[m>>2]=Kc(c[(c[h>>2]|0)+4>>2]<<1)|0;c[f>>2]=(c[m>>2]|0)+(c[(c[h>>2]|0)+4>>2]|0);if((c[m>>2]|0)!=0){c[s+20>>2]=16385;c[g>>2]=xi(c[h>>2]|0,c[j>>2]|0,c[m>>2]|0,16385,0)|0}else{c[g>>2]=7}a:do{if((c[g>>2]|0)==0?(c[g>>2]=Ag(c[m>>2]|0,r)|0,(c[g>>2]|0)==0):0){c[n>>2]=(c[(c[h>>2]|0)+8>>2]|0)+1;c[e>>2]=fc((c[r>>2]|0)+(c[n>>2]|0)+1|0)|0;if((c[e>>2]|0)==0){c[g>>2]=7;break}t=r;t=bE(c[t>>2]|0,c[t+4>>2]|0,1,0)|0;c[l>>2]=(c[e>>2]|0)+t;c[g>>2]=yi(c[m>>2]|0,c[e>>2]|0,c[r>>2]|0,0,0)|0;if((c[g>>2]|0)==0){a[(c[e>>2]|0)+(c[r>>2]|0)>>0]=0;c[p>>2]=c[e>>2];while(1){b=(c[p>>2]|0)-(c[e>>2]|0)|0;u=((b|0)<0)<<31>>31;t=r;d=c[t+4>>2]|0;if(!((u|0)<(d|0)|((u|0)==(d|0)?b>>>0<(c[t>>2]|0)>>>0:0))){break}c[g>>2]=pi(c[h>>2]|0,c[p>>2]|0,0,q)|0;if((c[g>>2]|0)!=0){break a}if((c[q>>2]|0)!=0){c[o>>2]=2049;c[g>>2]=xi(c[h>>2]|0,c[p>>2]|0,c[f>>2]|0,c[o>>2]|0,0)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=oi(c[f>>2]|0,c[l>>2]|0,c[n>>2]|0)|0;Lh(c[f>>2]|0)|0;if((c[g>>2]|0)!=0){break a}if((a[c[l>>2]>>0]|0)!=0){d=(WD(c[l>>2]|0,c[j>>2]|0)|0)==0}else{d=0}c[k>>2]=d&1;if((c[k>>2]|0)!=0){break a}}u=(Mb(c[p>>2]|0)|0)+1|0;c[p>>2]=(c[p>>2]|0)+u}Lh(c[m>>2]|0)|0;c[g>>2]=Th(c[h>>2]|0,c[j>>2]|0,0)|0}}}while(0);gc(c[e>>2]|0);if((c[m>>2]|0)==0){u=c[g>>2]|0;i=s;return u|0}Lh(c[m>>2]|0)|0;gc(c[m>>2]|0);u=c[g>>2]|0;i=s;return u|0}function ti(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;if((d[(c[b>>2]|0)+12>>0]|0|0)==0?((ui(c[(c[b>>2]|0)+60>>2]|0)|0)&4096|0)==0:0){a=vi(c[(c[b>>2]|0)+60>>2]|0)|0;c[(c[b>>2]|0)+148>>2]=a;i=e;return}c[(c[b>>2]|0)+148>>2]=512;i=e;return}function ui(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=ub[c[(c[c[d>>2]>>2]|0)+48>>2]&31](c[d>>2]|0)|0;i=b;return a|0}function vi(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=wi(c[e>>2]|0)|0;if((c[d>>2]|0)>=32){if((c[d>>2]|0)>65536){c[d>>2]=65536}}else{c[d>>2]=512}i=b;return c[d>>2]|0}function wi(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[(c[c[e>>2]>>2]|0)+44>>2];if((c[d>>2]|0)==0){e=4096;i=b;return e|0}e=ub[c[d>>2]&31](c[e>>2]|0)|0;i=b;return e|0}function xi(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;n=h+20|0;m=h+16|0;l=h+12|0;k=h+8|0;j=h+4|0;g=h;c[n>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;c[g>>2]=Ab[c[(c[n>>2]|0)+24>>2]&15](c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,c[k>>2]&556927,c[j>>2]|0)|0;i=h;return c[g>>2]|0}function yi(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;k=g+16|0;j=g+12|0;h=g+8|0;l=g;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;a=l;c[a>>2]=e;c[a+4>>2]=f;a=l;a=Ab[c[(c[c[k>>2]>>2]|0)+8>>2]&15](c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;i=g;return a|0}function zi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;k=f+16|0;l=f;j=f+12|0;h=f+20|0;g=f+8|0;c[k>>2]=a;a=l;c[a>>2]=b;c[a+4>>2]=d;c[j>>2]=e;a=l;c[g>>2]=yi(c[k>>2]|0,h,4,c[a>>2]|0,c[a+4>>2]|0)|0;if((c[g>>2]|0)!=0){l=c[g>>2]|0;i=f;return l|0}l=Ah(h)|0;c[c[j>>2]>>2]=l;l=c[g>>2]|0;i=f;return l|0}function Ai(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;h=e+8|0;f=e+4|0;g=e;c[j>>2]=a;c[h>>2]=b;c[f>>2]=c[(c[j>>2]|0)+48>>2];c[g>>2]=(c[(c[j>>2]|0)+152>>2]|0)-200;while(1){if((c[g>>2]|0)<=0){break}c[f>>2]=(c[f>>2]|0)+(d[(c[h>>2]|0)+(c[g>>2]|0)>>0]|0);c[g>>2]=(c[g>>2]|0)-200}i=e;return c[f>>2]|0}function Bi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e+4|0;d=e;c[g>>2]=a;c[f>>2]=b;c[d>>2]=0;Gi(c[(c[g>>2]|0)+204>>2]|0,c[f>>2]|0,0,d)|0;i=e;return c[d>>2]|0}function Ci(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;g=e+12|0;h=e+8|0;f=e+4|0;j=e;c[k>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f>>2]=c[k>>2];while(1){if((c[f>>2]|0)==0){break}if(((Nc(c[(c[f>>2]|0)+28>>2]|0)|0)==0?(c[g>>2]|0)>>>0<(c[(c[f>>2]|0)+16>>2]|0)>>>0:0)?(c[j>>2]=Vc(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,1)|0,(c[j>>2]|0)!=0):0){c[(c[f>>2]|0)+28>>2]=c[j>>2]}c[f>>2]=c[(c[f>>2]|0)+44>>2]}i=e;return}function Di(a){a=a|0;var d=0,f=0;d=i;i=i+16|0;f=d;c[f>>2]=a;a=(c[f>>2]|0)+24|0;b[a>>1]=(e[a>>1]|0)&-33;if(0!=(b[(c[f>>2]|0)+24>>1]&2|0)){i=d;return}a=(c[f>>2]|0)+24|0;b[a>>1]=e[a>>1]|0|2;Fi(c[f>>2]|0);i=d;return}function Ei(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;a=(c[e>>2]|0)+26|0;b[a>>1]=(b[a>>1]|0)+ -1<<16>>16;if((b[(c[e>>2]|0)+26>>1]|0)!=0){i=d;return}c[f>>2]=c[(c[e>>2]|0)+28>>2];a=(c[f>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+ -1;a=c[e>>2]|0;if((b[(c[e>>2]|0)+24>>1]&2|0)==0){Mg(a);i=d;return}else{Lg(a);Fi(c[e>>2]|0);i=d;return}}function Fi(d){d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=d;c[f>>2]=c[(c[g>>2]|0)+28>>2];c[(c[g>>2]|0)+32>>2]=c[c[f>>2]>>2];if((c[(c[g>>2]|0)+32>>2]|0)==0){if((a[(c[f>>2]|0)+28>>0]|0)!=0){a[(c[f>>2]|0)+29>>0]=1}}else{c[(c[(c[g>>2]|0)+32>>2]|0)+36>>2]=c[g>>2]}c[c[f>>2]>>2]=c[g>>2];if((c[(c[f>>2]|0)+4>>2]|0)==0){c[(c[f>>2]|0)+4>>2]=c[g>>2]}if((c[(c[f>>2]|0)+8>>2]|0)!=0){i=e;return}if(0!=(b[(c[g>>2]|0)+24>>1]&4|0)){i=e;return}c[(c[f>>2]|0)+8>>2]=c[g>>2];i=e;return}function Gi(a,e,f,g){a=a|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+48|0;h=j+40|0;n=j+36|0;o=j+32|0;s=j+28|0;l=j+24|0;m=j+20|0;p=j+16|0;k=j+12|0;t=j+8|0;r=j+4|0;q=j;c[n>>2]=a;c[o>>2]=e;c[s>>2]=f;c[l>>2]=g;c[p>>2]=0;do{if((c[(c[n>>2]|0)+40>>2]|0)==0){if((c[s>>2]|0)==0){c[c[l>>2]>>2]=0;c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}c[t>>2]=pb[c[38632>>2]&15](c[(c[n>>2]|0)+20>>2]|0,(c[(c[n>>2]|0)+24>>2]|0)+40|0,d[(c[n>>2]|0)+28>>0]|0)|0;if((c[t>>2]|0)!=0){f=c[38636>>2]|0;e=c[t>>2]|0;a=Eh(c[n>>2]|0)|0;sb[f&7](e,a);c[(c[n>>2]|0)+40>>2]=c[t>>2];break}c[h>>2]=7;a=c[h>>2]|0;i=j;return a|0}}while(0);if((c[s>>2]|0)==0){g=0}else{g=d[(c[n>>2]|0)+29>>0]|0}c[k>>2]=g;c[m>>2]=pb[c[38644>>2]&15](c[(c[n>>2]|0)+40>>2]|0,c[o>>2]|0,c[k>>2]|0)|0;if((c[m>>2]|0)==0?(c[k>>2]|0)==1:0){c[r>>2]=c[(c[n>>2]|0)+8>>2];while(1){if((c[r>>2]|0)==0){break}if((b[(c[r>>2]|0)+26>>1]|0)==0?(b[(c[r>>2]|0)+24>>1]&4|0)==0:0){break}c[r>>2]=c[(c[r>>2]|0)+36>>2]}c[(c[n>>2]|0)+8>>2]=c[r>>2];a:do{if((c[r>>2]|0)==0){c[r>>2]=c[(c[n>>2]|0)+4>>2];while(1){if((c[r>>2]|0)==0){break a}if((b[(c[r>>2]|0)+26>>1]|0)==0){break a}c[r>>2]=c[(c[r>>2]|0)+36>>2]}}}while(0);if((c[r>>2]|0)!=0?(c[q>>2]=zb[c[(c[n>>2]|0)+32>>2]&63](c[(c[n>>2]|0)+36>>2]|0,c[r>>2]|0)|0,(c[q>>2]|0)!=0&(c[q>>2]|0)!=5):0){c[h>>2]=c[q>>2];a=c[h>>2]|0;i=j;return a|0}c[m>>2]=pb[c[38644>>2]&15](c[(c[n>>2]|0)+40>>2]|0,c[o>>2]|0,2)|0}if((c[m>>2]|0)!=0){c[p>>2]=c[(c[m>>2]|0)+4>>2];if((c[c[p>>2]>>2]|0)==0){r=(c[p>>2]|0)+0|0;q=r+40|0;do{c[r>>2]=0;r=r+4|0}while((r|0)<(q|0));c[c[p>>2]>>2]=c[m>>2];c[(c[p>>2]|0)+4>>2]=c[c[m>>2]>>2];c[(c[p>>2]|0)+8>>2]=(c[p>>2]|0)+40;_D(c[(c[p>>2]|0)+8>>2]|0,0,c[(c[n>>2]|0)+24>>2]|0)|0;c[(c[p>>2]|0)+28>>2]=c[n>>2];c[(c[p>>2]|0)+20>>2]=c[o>>2]}if(0==(b[(c[p>>2]|0)+26>>1]|0)){a=(c[n>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+1}a=(c[p>>2]|0)+26|0;b[a>>1]=(b[a>>1]|0)+1<<16>>16;if((c[o>>2]|0)==1){c[(c[n>>2]|0)+44>>2]=c[p>>2]}}c[c[l>>2]>>2]=c[p>>2];if((c[p>>2]|0)==0){k=(c[k>>2]|0)!=0}else{k=0}c[h>>2]=k?7:0;a=c[h>>2]|0;i=j;return a|0}function Hi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;f=b+16|0;d=b+8|0;e=b;c[f>>2]=a;h=d;c[h>>2]=0;c[h+4>>2]=0;h=(c[f>>2]|0)+72|0;g=c[h+4>>2]|0;a=e;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=e;if(!((c[a>>2]|0)!=0|(c[a+4>>2]|0)!=0)){g=d;h=g;h=c[h>>2]|0;g=g+4|0;g=c[g>>2]|0;D=g;i=b;return h|0}h=e;h=ZD(c[h>>2]|0,c[h+4>>2]|0,1,0)|0;h=jE(h|0,D|0,c[(c[f>>2]|0)+148>>2]|0,0)|0;h=bE(h|0,D|0,1,0)|0;h=lE(h|0,D|0,c[(c[f>>2]|0)+148>>2]|0,0)|0;g=d;c[g>>2]=h;c[g+4>>2]=D;g=d;h=g;h=c[h>>2]|0;g=g+4|0;g=c[g>>2]|0;D=g;i=b;return h|0}function Ii(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=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;g=i;i=i+64|0;o=g+56|0;h=g+52|0;j=g+48|0;p=g+16|0;s=g+8|0;l=g+44|0;n=g+40|0;e=g+36|0;q=g+32|0;r=g+28|0;k=g+24|0;m=g;c[h>>2]=b;c[j>>2]=d;c[l>>2]=0;c[n>>2]=0;if((c[j>>2]|0)!=0?(c[n>>2]=Og(c[(c[j>>2]|0)+20>>2]|0)|0,(c[n>>2]|0)==0):0){c[o>>2]=7;b=c[o>>2]|0;i=g;return b|0}if((c[j>>2]|0)!=0){d=c[(c[j>>2]|0)+20>>2]|0}else{d=c[(c[h>>2]|0)+28>>2]|0}c[(c[h>>2]|0)+24>>2]=d;a[(c[h>>2]|0)+18>>0]=a[(c[h>>2]|0)+12>>0]|0;if((c[j>>2]|0)==0?(Vh(c[h>>2]|0)|0)!=0:0){c[o>>2]=Ji(c[h>>2]|0)|0;b=c[o>>2]|0;i=g;return b|0}t=(c[h>>2]|0)+72|0;d=c[t+4>>2]|0;b=p;c[b>>2]=c[t>>2];c[b+4>>2]=d;a:do{if((c[j>>2]|0)!=0?(Vh(c[h>>2]|0)|0)==0:0){t=(c[j>>2]|0)+8|0;if((c[t>>2]|0)!=0|(c[t+4>>2]|0)!=0){d=(c[j>>2]|0)+8|0;b=c[d>>2]|0;d=c[d+4>>2]|0}else{d=p;b=c[d>>2]|0;d=c[d+4>>2]|0}t=s;c[t>>2]=b;c[t+4>>2]=d;d=c[j>>2]|0;b=c[d+4>>2]|0;t=(c[h>>2]|0)+72|0;c[t>>2]=c[d>>2];c[t+4>>2]=b;while(1){if((c[l>>2]|0)!=0){break a}b=(c[h>>2]|0)+72|0;u=c[b+4>>2]|0;t=s;d=c[t+4>>2]|0;if(!((u|0)<(d|0)|((u|0)==(d|0)?(c[b>>2]|0)>>>0<(c[t>>2]|0)>>>0:0))){break a}c[l>>2]=ri(c[h>>2]|0,(c[h>>2]|0)+72|0,c[n>>2]|0,1,1)|0}}else{f=19}}while(0);if((f|0)==19){u=(c[h>>2]|0)+72|0;c[u>>2]=0;c[u+4>>2]=0}b:while(1){if((c[l>>2]|0)!=0){break}t=(c[h>>2]|0)+72|0;d=c[t+4>>2]|0;u=p;b=c[u+4>>2]|0;if(!((d|0)<(b|0)|((d|0)==(b|0)?(c[t>>2]|0)>>>0<(c[u>>2]|0)>>>0:0))){break}c[q>>2]=0;u=p;c[l>>2]=qi(c[h>>2]|0,0,c[u>>2]|0,c[u+4>>2]|0,q,r)|0;if((c[q>>2]|0)==0?(t=(c[h>>2]|0)+80|0,t=bE(c[t>>2]|0,c[t+4>>2]|0,c[(c[h>>2]|0)+148>>2]|0,0)|0,u=(c[h>>2]|0)+72|0,(t|0)==(c[u>>2]|0)?(D|0)==(c[u+4>>2]|0):0):0){u=p;t=(c[h>>2]|0)+72|0;t=ZD(c[u>>2]|0,c[u+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0)|0;u=(c[(c[h>>2]|0)+152>>2]|0)+8|0;u=jE(t|0,D|0,u|0,((u|0)<0)<<31>>31|0)|0;c[q>>2]=u}c[e>>2]=0;while(1){if((c[l>>2]|0)!=0){continue b}if(!((c[e>>2]|0)>>>0<(c[q>>2]|0)>>>0)){continue b}t=(c[h>>2]|0)+72|0;d=c[t+4>>2]|0;u=p;b=c[u+4>>2]|0;if(!((d|0)<(b|0)|((d|0)==(b|0)?(c[t>>2]|0)>>>0<(c[u>>2]|0)>>>0:0))){continue b}c[l>>2]=ri(c[h>>2]|0,(c[h>>2]|0)+72|0,c[n>>2]|0,1,1)|0;c[e>>2]=(c[e>>2]|0)+1}}c:do{if((c[j>>2]|0)!=0){t=4+(c[(c[h>>2]|0)+152>>2]|0)|0;t=lE(c[(c[j>>2]|0)+24>>2]|0,0,t|0,((t|0)<0)<<31>>31|0)|0;u=m;c[u>>2]=t;c[u+4>>2]=D;if((Vh(c[h>>2]|0)|0)!=0){c[l>>2]=Ki(c[(c[h>>2]|0)+208>>2]|0,(c[j>>2]|0)+28|0)|0}c[k>>2]=c[(c[j>>2]|0)+24>>2];while(1){if((c[l>>2]|0)!=0){break c}if(!((c[k>>2]|0)>>>0<(c[(c[h>>2]|0)+52>>2]|0)>>>0)){break c}c[l>>2]=ri(c[h>>2]|0,m,c[n>>2]|0,0,1)|0;c[k>>2]=(c[k>>2]|0)+1}}}while(0);Tg(c[n>>2]|0);if((c[l>>2]|0)==0){b=p;t=c[b+4>>2]|0;u=(c[h>>2]|0)+72|0;c[u>>2]=c[b>>2];c[u+4>>2]=t}c[o>>2]=c[l>>2];u=c[o>>2]|0;i=g;return u|0}function Ji(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;g=b+12|0;d=b+8|0;e=b+4|0;f=b;c[g>>2]=a;c[(c[g>>2]|0)+24>>2]=c[(c[g>>2]|0)+28>>2];c[d>>2]=Qi(c[(c[g>>2]|0)+208>>2]|0,35,c[g>>2]|0)|0;c[e>>2]=Si(c[(c[g>>2]|0)+204>>2]|0)|0;while(1){if((c[e>>2]|0)==0){a=5;break}if((c[d>>2]|0)!=0){a=5;break}c[f>>2]=c[(c[e>>2]|0)+12>>2];c[d>>2]=Ri(c[g>>2]|0,c[(c[e>>2]|0)+20>>2]|0)|0;c[e>>2]=c[f>>2]}if((a|0)==5){i=b;return c[d>>2]|0}return 0}function Ki(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e+4|0;d=e;c[g>>2]=a;c[f>>2]=b;c[d>>2]=0;if((c[(c[f>>2]|0)+12>>2]|0)!=(c[(c[g>>2]|0)+104>>2]|0)){c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+12>>2]=c[(c[g>>2]|0)+104>>2]}if(!((c[c[f>>2]>>2]|0)>>>0<(c[(c[g>>2]|0)+68>>2]|0)>>>0)){a=c[d>>2]|0;i=e;return a|0}c[(c[g>>2]|0)+68>>2]=c[c[f>>2]>>2];c[(c[g>>2]|0)+76>>2]=c[(c[f>>2]|0)+4>>2];c[(c[g>>2]|0)+80>>2]=c[(c[f>>2]|0)+8>>2];Li(c[g>>2]|0);a=c[d>>2]|0;i=e;return a|0}function Li(a){a=a|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;l=d+24|0;f=d+20|0;g=d+16|0;m=d+12|0;h=d+8|0;j=d+4|0;k=d;c[l>>2]=a;c[f>>2]=0;c[g>>2]=0;c[m>>2]=0;c[h>>2]=0;if((c[(c[l>>2]|0)+68>>2]|0)==0){i=d;return}a=c[l>>2]|0;Mi(a,Ni(c[(c[l>>2]|0)+68>>2]|0)|0,f,g,m)|0;c[h>>2]=(c[(c[l>>2]|0)+68>>2]|0)-(c[m>>2]|0);c[k>>2]=0;while(1){if((c[k>>2]|0)>=8192){break}if((e[(c[f>>2]|0)+(c[k>>2]<<1)>>1]|0|0)>(c[h>>2]|0)){b[(c[f>>2]|0)+(c[k>>2]<<1)>>1]=0}c[k>>2]=(c[k>>2]|0)+1}c[j>>2]=(c[f>>2]|0)-((c[g>>2]|0)+((c[h>>2]|0)+1<<2));_D((c[g>>2]|0)+((c[h>>2]|0)+1<<2)|0,0,c[j>>2]|0)|0;i=d;return}function Mi(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+48|0;q=n+32|0;p=n+28|0;m=n+24|0;k=n+20|0;o=n+16|0;h=n+12|0;j=n+8|0;g=n+4|0;l=n;c[q>>2]=a;c[p>>2]=b;c[m>>2]=d;c[k>>2]=e;c[o>>2]=f;c[h>>2]=Oi(c[q>>2]|0,c[p>>2]|0,j)|0;if((c[h>>2]|0)!=0){q=c[h>>2]|0;i=n;return q|0}c[l>>2]=(c[j>>2]|0)+16384;if((c[p>>2]|0)==0){c[j>>2]=(c[j>>2]|0)+136;c[g>>2]=0}else{c[g>>2]=4062+((c[p>>2]|0)-1<<12)}c[c[k>>2]>>2]=(c[j>>2]|0)+ -4;c[c[m>>2]>>2]=c[l>>2];c[c[o>>2]>>2]=c[g>>2];q=c[h>>2]|0;i=n;return q|0}function Ni(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=(((c[e>>2]|0)+4096-4062-1|0)>>>0)/4096|0;i=d;return c[b>>2]|0}function Oi(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;g=m+24|0;l=m+20|0;h=m+16|0;j=m+12|0;k=m+8|0;o=m+4|0;n=m;c[l>>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;do{if((c[(c[l>>2]|0)+24>>2]|0)<=(c[h>>2]|0)){c[o>>2]=(c[h>>2]|0)+1<<2;c[n>>2]=ic(c[(c[l>>2]|0)+32>>2]|0,c[o>>2]|0)|0;if((c[n>>2]|0)!=0){_D((c[n>>2]|0)+(c[(c[l>>2]|0)+24>>2]<<2)|0,0,(c[h>>2]|0)+1-(c[(c[l>>2]|0)+24>>2]|0)<<2|0)|0;c[(c[l>>2]|0)+32>>2]=c[n>>2];c[(c[l>>2]|0)+24>>2]=(c[h>>2]|0)+1;break}c[c[j>>2]>>2]=0;c[g>>2]=7;b=c[g>>2]|0;i=m;return b|0}}while(0);do{if((c[(c[(c[l>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2]|0)==0){if((d[(c[l>>2]|0)+43>>0]|0|0)==2){b=Kc(32768)|0;c[(c[(c[l>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2]=b;if((c[(c[(c[l>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2]|0)!=0){break}c[k>>2]=7;break}else{c[k>>2]=Pi(c[(c[l>>2]|0)+4>>2]|0,c[h>>2]|0,32768,d[(c[l>>2]|0)+44>>0]|0,(c[(c[l>>2]|0)+32>>2]|0)+(c[h>>2]<<2)|0)|0;if((c[k>>2]|0)!=8){break}b=(c[l>>2]|0)+46|0;a[b>>0]=d[b>>0]|0|2;c[k>>2]=0;break}}}while(0);c[c[j>>2]>>2]=c[(c[(c[l>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2];c[g>>2]=c[k>>2];b=c[g>>2]|0;i=m;return b|0}function Pi(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+16|0;l=g+12|0;k=g+8|0;j=g+4|0;h=g;c[m>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;a=Ab[c[(c[c[m>>2]>>2]|0)+52>>2]&15](c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return a|0}function Qi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;h=l+20|0;f=l+16|0;m=l+12|0;g=l+8|0;k=l+4|0;j=l;c[h>>2]=b;c[f>>2]=d;c[m>>2]=e;c[g>>2]=0;if((a[(c[h>>2]|0)+44>>0]|0)==0){b=c[g>>2]|0;i=l;return b|0}c[k>>2]=c[(c[h>>2]|0)+68>>2];b=(c[h>>2]|0)+52|0;b=b+0|0;d=(gj(c[h>>2]|0)|0)+0|0;e=b+48|0;do{a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}while((b|0)<(e|0));c[j>>2]=(c[(c[h>>2]|0)+68>>2]|0)+1;while(1){if((c[g>>2]|0)!=0){break}if(!((c[j>>2]|0)>>>0<=(c[k>>2]|0)>>>0)){break}e=c[f>>2]|0;d=c[m>>2]|0;b=hj(c[h>>2]|0,c[j>>2]|0)|0;c[g>>2]=zb[e&63](d,b)|0;c[j>>2]=(c[j>>2]|0)+1}if((c[k>>2]|0)==(c[(c[h>>2]|0)+68>>2]|0)){b=c[g>>2]|0;i=l;return b|0}Li(c[h>>2]|0);b=c[g>>2]|0;i=l;return b|0}function Ri(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+20|0;j=e+16|0;d=e+12|0;f=e+8|0;g=e+4|0;h=e;c[k>>2]=a;c[j>>2]=b;c[d>>2]=0;c[f>>2]=c[k>>2];c[g>>2]=Vi(c[f>>2]|0,c[j>>2]|0)|0;do{if((c[g>>2]|0)!=0){if((Wi(c[g>>2]|0)|0)==1){Xi(c[g>>2]|0);break}c[h>>2]=0;c[d>>2]=Yi(c[(c[f>>2]|0)+208>>2]|0,c[(c[g>>2]|0)+20>>2]|0,h)|0;if((c[d>>2]|0)==0){c[d>>2]=Zi(c[g>>2]|0,c[h>>2]|0)|0}if((c[d>>2]|0)==0){rb[c[(c[f>>2]|0)+196>>2]&31](c[g>>2]|0)}_i(c[g>>2]|0)}}while(0);Hg(c[(c[f>>2]|0)+88>>2]|0);i=e;return c[d>>2]|0}function Si(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[b>>2]=a;c[e>>2]=c[c[b>>2]>>2];while(1){if((c[e>>2]|0)==0){break}c[(c[e>>2]|0)+12>>2]=c[(c[e>>2]|0)+32>>2];c[e>>2]=c[(c[e>>2]|0)+32>>2]}e=Ti(c[c[b>>2]>>2]|0)|0;i=d;return e|0}function Ti(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;f=i;i=i+144|0;h=f+136|0;b=f+8|0;d=f+4|0;e=f;c[h>>2]=a;j=b+0|0;a=j+128|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(a|0));while(1){if((c[h>>2]|0)==0){break}c[d>>2]=c[h>>2];c[h>>2]=c[(c[d>>2]|0)+12>>2];c[(c[d>>2]|0)+12>>2]=0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=31){break}if((c[b+(c[e>>2]<<2)>>2]|0)==0){g=6;break}c[d>>2]=Ui(c[b+(c[e>>2]<<2)>>2]|0,c[d>>2]|0)|0;c[b+(c[e>>2]<<2)>>2]=0;c[e>>2]=(c[e>>2]|0)+1}if((g|0)==6){g=0;c[b+(c[e>>2]<<2)>>2]=c[d>>2]}if((c[e>>2]|0)!=31){continue}j=Ui(c[b+(c[e>>2]<<2)>>2]|0,c[d>>2]|0)|0;c[b+(c[e>>2]<<2)>>2]=j}c[d>>2]=c[b>>2];c[e>>2]=1;while(1){g=c[d>>2]|0;if((c[e>>2]|0)>=32){break}c[d>>2]=Ui(g,c[b+(c[e>>2]<<2)>>2]|0)|0;c[e>>2]=(c[e>>2]|0)+1}i=f;return g|0}function Ui(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+64|0;d=g+52|0;h=g+48|0;f=g+8|0;e=g;c[d>>2]=a;c[h>>2]=b;c[e>>2]=f;while(1){if((c[d>>2]|0)!=0){a=(c[h>>2]|0)!=0}else{a=0}b=c[d>>2]|0;if(!a){break}if((c[b+20>>2]|0)>>>0<(c[(c[h>>2]|0)+20>>2]|0)>>>0){c[(c[e>>2]|0)+12>>2]=c[d>>2];c[e>>2]=c[d>>2];c[d>>2]=c[(c[d>>2]|0)+12>>2];continue}else{c[(c[e>>2]|0)+12>>2]=c[h>>2];c[e>>2]=c[h>>2];c[h>>2]=c[(c[h>>2]|0)+12>>2];continue}}if((b|0)!=0){c[(c[e>>2]|0)+12>>2]=c[d>>2];a=f+12|0;a=c[a>>2]|0;i=g;return a|0}if((c[h>>2]|0)!=0){c[(c[e>>2]|0)+12>>2]=c[h>>2];a=f+12|0;a=c[a>>2]|0;i=g;return a|0}else{c[(c[e>>2]|0)+12>>2]=0;a=f+12|0;a=c[a>>2]|0;i=g;return a|0}return 0}function Vi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e+4|0;d=e;c[g>>2]=a;c[f>>2]=b;c[d>>2]=0;Gi(c[(c[g>>2]|0)+204>>2]|0,c[f>>2]|0,0,d)|0;i=e;return c[d>>2]|0}function Wi(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;i=e;return b[(c[d>>2]|0)+26>>1]|0}function Xi(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f+4|0;d=f;c[e>>2]=a;if((b[(c[e>>2]|0)+24>>1]&2|0)!=0){Lg(c[e>>2]|0)}c[d>>2]=c[(c[e>>2]|0)+28>>2];a=(c[d>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+ -1;if((c[(c[e>>2]|0)+20>>2]|0)==1){c[(c[d>>2]|0)+44>>2]=0}vb[c[38648>>2]&63](c[(c[d>>2]|0)+40>>2]|0,c[c[e>>2]>>2]|0,1);i=f;return}function Yi(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=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;j=i;i=i+64|0;h=j+52|0;m=j+48|0;o=j+44|0;g=j+40|0;l=j+36|0;v=j+32|0;q=j+28|0;r=j+24|0;s=j+20|0;t=j+16|0;p=j+12|0;n=j+8|0;k=j+4|0;u=j;c[m>>2]=a;c[o>>2]=d;c[g>>2]=f;c[l>>2]=0;c[v>>2]=c[(c[m>>2]|0)+68>>2];if((c[v>>2]|0)!=0?(b[(c[m>>2]|0)+40>>1]|0)!=0:0){c[q>>2]=Ni(c[v>>2]|0)|0;a:while(1){if((c[q>>2]|0)<0){m=18;break}if((c[l>>2]|0)!=0){m=18;break}c[k>>2]=Mi(c[m>>2]|0,c[q>>2]|0,r,s,t)|0;if((c[k>>2]|0)!=0){m=8;break}c[n>>2]=8192;c[p>>2]=dj(c[o>>2]|0)|0;while(1){if((b[(c[r>>2]|0)+(c[p>>2]<<1)>>1]|0)==0){break}c[u>>2]=(e[(c[r>>2]|0)+(c[p>>2]<<1)>>1]|0)+(c[t>>2]|0);if((c[u>>2]|0)>>>0<=(c[v>>2]|0)>>>0?(c[(c[s>>2]|0)+(e[(c[r>>2]|0)+(c[p>>2]<<1)>>1]<<2)>>2]|0)==(c[o>>2]|0):0){c[l>>2]=c[u>>2]}a=c[n>>2]|0;c[n>>2]=a+ -1;if((a|0)==0){m=15;break a}c[p>>2]=fj(c[p>>2]|0)|0}c[q>>2]=(c[q>>2]|0)+ -1}if((m|0)==8){c[h>>2]=c[k>>2];a=c[h>>2]|0;i=j;return a|0}else if((m|0)==15){c[h>>2]=ej(49462)|0;a=c[h>>2]|0;i=j;return a|0}else if((m|0)==18){c[c[g>>2]>>2]=c[l>>2];c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}}c[c[g>>2]>>2]=0;c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}function Zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+48|0;j=e+32|0;m=e+28|0;l=e+24|0;k=e+20|0;f=e+16|0;h=e+12|0;n=e;g=e+8|0;c[j>>2]=b;c[m>>2]=d;c[l>>2]=c[(c[j>>2]|0)+16>>2];c[k>>2]=c[(c[j>>2]|0)+20>>2];c[f>>2]=0;c[h>>2]=c[(c[l>>2]|0)+152>>2];if((c[m>>2]|0)!=0){c[f>>2]=cj(c[(c[l>>2]|0)+208>>2]|0,c[m>>2]|0,c[h>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0}else{m=c[(c[l>>2]|0)+152>>2]|0;m=lE((c[k>>2]|0)-1|0,0,m|0,((m|0)<0)<<31>>31|0)|0;b=n;c[b>>2]=m;c[b+4>>2]=D;b=n;b=yi(c[(c[l>>2]|0)+60>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[h>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[f>>2]=b;c[f>>2]=(c[f>>2]|0)==522?0:b}if((c[k>>2]|0)!=1){b=c[f>>2]|0;i=e;return b|0}if((c[f>>2]|0)!=0){h=(c[l>>2]|0)+100|0;g=h+16|0;do{a[h>>0]=255;h=h+1|0}while((h|0)<(g|0));b=c[f>>2]|0;i=e;return b|0}else{c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+24;h=(c[l>>2]|0)+100|0;j=(c[g>>2]|0)+0|0;g=h+16|0;do{a[h>>0]=a[j>>0]|0;h=h+1|0;j=j+1|0}while((h|0)<(g|0));b=c[f>>2]|0;i=e;return b|0}return 0}function _i(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+16>>2];a=c[f>>2]|0;if((b[(c[f>>2]|0)+24>>1]&64|0)!=0){$i(a);f=c[e>>2]|0;aj(f);i=d;return}else{Ei(a);f=c[e>>2]|0;aj(f);i=d;return}}function $i(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;f=b;c[d>>2]=a;c[f>>2]=c[(c[d>>2]|0)+16>>2];e=(c[f>>2]|0)+120|0;c[e>>2]=(c[e>>2]|0)+ -1;c[(c[d>>2]|0)+12>>2]=c[(c[f>>2]|0)+136>>2];c[(c[f>>2]|0)+136>>2]=c[d>>2];e=c[(c[f>>2]|0)+60>>2]|0;a=c[(c[f>>2]|0)+152>>2]|0;a=lE((c[(c[d>>2]|0)+20>>2]|0)-1|0,0,a|0,((a|0)<0)<<31>>31|0)|0;bj(e,a,D,c[(c[d>>2]|0)+4>>2]|0)|0;i=b;return}function aj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[d>>2]|0)+120>>2]|0)!=0){i=b;return}if((zg(c[(c[d>>2]|0)+204>>2]|0)|0)!=0){i=b;return}Kh(c[d>>2]|0);i=b;return}function bj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=i;i=i+16|0;c[f+12>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;c[f+8>>2]=e;i=f;return 0}function cj(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;l=g+24|0;n=g+20|0;h=g+16|0;k=g+12|0;j=g+8|0;m=g;c[l>>2]=a;c[n>>2]=b;c[h>>2]=d;c[k>>2]=f;c[j>>2]=e[(c[l>>2]|0)+66>>1]|0;c[j>>2]=(c[j>>2]&65024)+((c[j>>2]&1)<<16);b=(c[j>>2]|0)+24|0;b=lE((c[n>>2]|0)-1|0,0,b|0,((b|0)<0)<<31>>31|0)|0;b=bE(32,0,b|0,D|0)|0;b=bE(b|0,D|0,24,0)|0;a=m;c[a>>2]=b;c[a+4>>2]=D;a=m;a=yi(c[(c[l>>2]|0)+8>>2]|0,c[k>>2]|0,(c[h>>2]|0)>(c[j>>2]|0)?c[j>>2]|0:c[h>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;i=g;return a|0}function dj(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[b>>2]|0)*383&8191|0}function ej(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+8|0;c[e>>2]=a;e=c[e>>2]|0;a=(rf()|0)+20|0;c[d>>2]=e;c[d+4>>2]=a;rc(11,4344,d);i=b;return 11}function fj(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[b>>2]|0)+1&8191|0}function gj(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[c[(c[b>>2]|0)+32>>2]>>2]|0}function hj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;h=d+4|0;g=d;c[f>>2]=a;c[h>>2]=b;c[g>>2]=Ni(c[h>>2]|0)|0;b=c[h>>2]|0;if((c[g>>2]|0)==0){c[e>>2]=c[(c[c[(c[f>>2]|0)+32>>2]>>2]|0)+(34+b-1<<2)>>2];h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=c[(c[(c[(c[f>>2]|0)+32>>2]|0)+(c[g>>2]<<2)>>2]|0)+((((b-1-4062|0)>>>0)%4096|0)<<2)>>2];h=c[e>>2]|0;i=d;return h|0}return 0}function ij(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;Wh(c[e>>2]|0)|0;if((b[(c[e>>2]|0)+40>>1]|0)<0){i=d;return}ai(c[e>>2]|0,3+(b[(c[e>>2]|0)+40>>1]|0)|0);b[(c[e>>2]|0)+40>>1]=-1;i=d;return}function jj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+28>>2]&63](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function kj(b,d,e,f,g,h,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;n=i;i=i+64|0;m=n+48|0;p=n+44|0;r=n+40|0;t=n+36|0;u=n+32|0;v=n+28|0;x=n+24|0;w=n+20|0;z=n+16|0;s=n+12|0;o=n+8|0;y=n+4|0;q=n;c[p>>2]=b;c[r>>2]=d;c[t>>2]=e;c[u>>2]=f;c[v>>2]=g;c[x>>2]=h;c[w>>2]=j;c[z>>2]=k;c[s>>2]=l;c[y>>2]=0;c[q>>2]=c[r>>2];if((a[(c[p>>2]|0)+46>>0]|0)!=0){c[m>>2]=8;b=c[m>>2]|0;i=n;return b|0}c[o>>2]=pj(c[p>>2]|0,1,1)|0;if((c[o>>2]|0)!=0){c[m>>2]=c[o>>2];b=c[m>>2]|0;i=n;return b|0}a[(c[p>>2]|0)+45>>0]=1;do{if((c[r>>2]|0)!=0){c[o>>2]=qj(c[p>>2]|0,c[t>>2]|0,c[u>>2]|0,0,1)|0;if((c[o>>2]|0)==0){a[(c[p>>2]|0)+44>>0]=1;break}if((c[o>>2]|0)==5){c[q>>2]=0;c[o>>2]=0}}}while(0);if(((c[o>>2]|0)==0?(c[o>>2]=rj(c[p>>2]|0,y)|0,(c[y>>2]|0)!=0):0)?(c[c[c[(c[p>>2]|0)+4>>2]>>2]>>2]|0)>=3:0){bj(c[(c[p>>2]|0)+4>>2]|0,0,0,0)|0}if((c[o>>2]|0)==0){if((c[(c[p>>2]|0)+68>>2]|0)!=0?(b=sj(c[p>>2]|0)|0,(b|0)!=(c[x>>2]|0)):0){c[o>>2]=ej(50063)|0}else{c[o>>2]=tj(c[p>>2]|0,c[q>>2]|0,c[t>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0)|0}if((c[o>>2]|0)==0|(c[o>>2]|0)==5){if((c[z>>2]|0)!=0){c[c[z>>2]>>2]=c[(c[p>>2]|0)+68>>2]}if((c[s>>2]|0)!=0){b=c[(uj(c[p>>2]|0)|0)>>2]|0;c[c[s>>2]>>2]=b}}}if((c[y>>2]|0)!=0){t=(c[p>>2]|0)+52|0;s=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(s|0))}Wh(c[p>>2]|0)|0;ci(c[p>>2]|0,1,1);a[(c[p>>2]|0)+45>>0]=0;if((c[o>>2]|0)==0?(c[r>>2]|0)!=(c[q>>2]|0):0){o=5}else{o=c[o>>2]|0}c[m>>2]=o;b=c[m>>2]|0;i=n;return b|0}function lj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;pb[c[(c[c[h>>2]>>2]|0)+40>>2]&15](c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return}function mj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;h=e+16|0;g=e+24|0;j=e+8|0;k=e;f=e+20|0;c[g>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;dh();c[f>>2]=Ag(c[(c[g>>2]|0)+8>>2]|0,k)|0;if((c[f>>2]|0)==0?(b=k,d=c[b+4>>2]|0,a=j,k=c[a+4>>2]|0,(d|0)>(k|0)|((d|0)==(k|0)?(c[b>>2]|0)>>>0>(c[a>>2]|0)>>>0:0)):0){a=j;c[f>>2]=Rh(c[(c[g>>2]|0)+8>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0}eh();if((c[f>>2]|0)==0){i=e;return}a=c[f>>2]|0;c[h>>2]=c[(c[g>>2]|0)+100>>2];rc(a,4392,h);i=e;return}function nj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;f=e+4|0;h=e;c[g>>2]=a;c[f>>2]=b;if((d[(c[g>>2]|0)+43>>0]|0|0)!=2){oj(c[(c[g>>2]|0)+4>>2]|0,c[f>>2]|0)|0;i=e;return}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[g>>2]|0)+24>>2]|0)){break}gc(c[(c[(c[g>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2]|0);c[(c[(c[g>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2]=0;c[h>>2]=(c[h>>2]|0)+1}i=e;return}function oj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+64>>2]&63](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function pj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;l=f+12|0;k=f+8|0;j=f+4|0;h=f;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;if((a[(c[l>>2]|0)+43>>0]|0)!=0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}else{c[h>>2]=bi(c[(c[l>>2]|0)+4>>2]|0,c[k>>2]|0,c[j>>2]|0,10)|0;c[g>>2]=c[h>>2];b=c[g>>2]|0;i=f;return b|0}return 0}function qj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;m=h+20|0;k=h+16|0;l=h+12|0;j=h+8|0;n=h+4|0;g=h;c[m>>2]=a;c[k>>2]=b;c[l>>2]=d;c[j>>2]=e;c[n>>2]=f;while(1){c[g>>2]=pj(c[m>>2]|0,c[j>>2]|0,c[n>>2]|0)|0;if((c[k>>2]|0)==0){j=5;break}if((c[g>>2]|0)!=5){j=5;break}if((ub[c[k>>2]&31](c[l>>2]|0)|0)==0){j=5;break}}if((j|0)==5){i=h;return c[g>>2]|0}return 0}function rj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;f=j+20|0;e=j+16|0;k=j+12|0;g=j+8|0;h=j+4|0;l=j;c[e>>2]=b;c[k>>2]=d;c[g>>2]=Oi(c[e>>2]|0,0,l)|0;if((c[g>>2]|0)!=0){c[f>>2]=c[g>>2];b=c[f>>2]|0;i=j;return b|0}if((c[l>>2]|0)!=0){d=Aj(c[e>>2]|0,c[k>>2]|0)|0}else{d=1}c[h>>2]=d;do{if((c[h>>2]|0)!=0){d=c[e>>2]|0;if((a[(c[e>>2]|0)+46>>0]&2|0)!=0){b=$h(d,0)|0;c[g>>2]=b;if(0!=(b|0)){break}ai(c[e>>2]|0,0);c[g>>2]=264;break}b=pj(d,0,1)|0;c[g>>2]=b;if(0==(b|0)){a[(c[e>>2]|0)+44>>0]=1;b=Oi(c[e>>2]|0,0,l)|0;c[g>>2]=b;if(0==(b|0)?(c[h>>2]=Aj(c[e>>2]|0,c[k>>2]|0)|0,(c[h>>2]|0)!=0):0){c[g>>2]=Bj(c[e>>2]|0)|0;c[c[k>>2]>>2]=1}a[(c[e>>2]|0)+44>>0]=0;ci(c[e>>2]|0,0,1)}}}while(0);if((c[h>>2]|0)==0?(c[(c[e>>2]|0)+52>>2]|0)!=3007e3:0){c[g>>2]=Cj(49109)|0}c[f>>2]=c[g>>2];b=c[f>>2]|0;i=j;return b|0}function sj(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;i=e;return(b[(c[d>>2]|0)+66>>1]&65024)+((b[(c[d>>2]|0)+66>>1]&1)<<16)|0}function tj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,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,E=0,F=0,G=0,H=0;x=i;i=i+112|0;k=x+104|0;n=x+100|0;m=x+96|0;H=x+92|0;E=x+88|0;q=x+84|0;z=x+80|0;l=x+76|0;r=x+72|0;t=x+68|0;w=x+64|0;u=x+60|0;o=x+56|0;h=x+52|0;F=x+48|0;p=x+44|0;C=x+40|0;G=x+36|0;B=x+24|0;v=x+32|0;A=x+16|0;y=x+8|0;s=x;c[n>>2]=a;c[m>>2]=b;c[H>>2]=d;c[E>>2]=e;c[q>>2]=f;c[z>>2]=g;c[t>>2]=0;c[w>>2]=0;c[u>>2]=0;c[C>>2]=0;c[r>>2]=sj(c[n>>2]|0)|0;c[p>>2]=uj(c[n>>2]|0)|0;if((c[c[p>>2]>>2]|0)>>>0>=(c[(c[n>>2]|0)+68>>2]|0)>>>0){c[k>>2]=0;a=c[k>>2]|0;i=x;return a|0}c[l>>2]=vj(c[n>>2]|0,t)|0;if((c[l>>2]|0)!=0){c[k>>2]=c[l>>2];a=c[k>>2]|0;i=x;return a|0}if((c[m>>2]|0)!=0){c[C>>2]=c[H>>2]}c[o>>2]=c[(c[n>>2]|0)+68>>2];c[h>>2]=c[(c[n>>2]|0)+72>>2];c[F>>2]=1;a:while(1){if((c[F>>2]|0)>=5){j=15;break}c[G>>2]=c[(c[p>>2]|0)+4+(c[F>>2]<<2)>>2];do{if((c[o>>2]|0)>>>0>(c[G>>2]|0)>>>0){c[l>>2]=qj(c[n>>2]|0,c[C>>2]|0,c[E>>2]|0,3+(c[F>>2]|0)|0,1)|0;if((c[l>>2]|0)==0){c[(c[p>>2]|0)+4+(c[F>>2]<<2)>>2]=(c[F>>2]|0)==1?c[o>>2]|0:-1;ci(c[n>>2]|0,3+(c[F>>2]|0)|0,1);break}if((c[l>>2]|0)!=5){break a}c[o>>2]=c[G>>2];c[C>>2]=0}}while(0);c[F>>2]=(c[F>>2]|0)+1}do{if((j|0)==15){if((c[c[p>>2]>>2]|0)>>>0<(c[o>>2]|0)>>>0?(a=qj(c[n>>2]|0,c[C>>2]|0,c[E>>2]|0,3,1)|0,c[l>>2]=a,(a|0)==0):0){c[v>>2]=c[c[p>>2]>>2];if((c[q>>2]|0)!=0){c[l>>2]=di(c[(c[n>>2]|0)+8>>2]|0,c[q>>2]|0)|0}if(((c[l>>2]|0)==0?(b=c[r>>2]|0,b=lE(c[h>>2]|0,0,b|0,((b|0)<0)<<31>>31|0)|0,a=A,c[a>>2]=b,c[a+4>>2]=D,c[l>>2]=Ag(c[(c[n>>2]|0)+4>>2]|0,B)|0,(c[l>>2]|0)==0):0)?(b=B,e=c[b+4>>2]|0,a=A,d=c[a+4>>2]|0,(e|0)<(d|0)|((e|0)==(d|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)):0){lj(c[(c[n>>2]|0)+4>>2]|0,5,A)}b:while(1){if((c[l>>2]|0)!=0){break}while(1){if(0!=(wj(c[t>>2]|0,w,u)|0)){break b}if((c[u>>2]|0)>>>0<=(c[v>>2]|0)>>>0){continue b}if((c[u>>2]|0)>>>0>(c[o>>2]|0)>>>0){continue b}if((c[w>>2]|0)>>>0>(c[h>>2]|0)>>>0){continue b}b=(c[r>>2]|0)+24|0;b=lE((c[u>>2]|0)-1|0,0,b|0,((b|0)<0)<<31>>31|0)|0;b=bE(32,0,b|0,D|0)|0;b=bE(b|0,D|0,24,0)|0;a=y;c[a>>2]=b;c[a+4>>2]=D;a=y;c[l>>2]=yi(c[(c[n>>2]|0)+8>>2]|0,c[z>>2]|0,c[r>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;if((c[l>>2]|0)!=0){break b}b=c[r>>2]|0;b=lE((c[w>>2]|0)-1|0,0,b|0,((b|0)<0)<<31>>31|0)|0;a=y;c[a>>2]=b;c[a+4>>2]=D;a=y;c[l>>2]=fd(c[(c[n>>2]|0)+4>>2]|0,c[z>>2]|0,c[r>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;if(!((c[l>>2]|0)==0&(c[l>>2]|0)==0)){break b}}}if((c[l>>2]|0)==0){a=c[o>>2]|0;if(((a|0)==(c[(gj(c[n>>2]|0)|0)+16>>2]|0)?(b=c[r>>2]|0,b=lE(c[(c[n>>2]|0)+72>>2]|0,0,b|0,((b|0)<0)<<31>>31|0)|0,a=s,c[a>>2]=b,c[a+4>>2]=D,a=s,c[l>>2]=Rh(c[(c[n>>2]|0)+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0,(c[l>>2]|0)==0):0)?(c[q>>2]|0)!=0:0){c[l>>2]=di(c[(c[n>>2]|0)+4>>2]|0,c[q>>2]|0)|0}if((c[l>>2]|0)==0){c[c[p>>2]>>2]=c[o>>2]}}ci(c[n>>2]|0,3,1)}if((c[l>>2]|0)==5){c[l>>2]=0}if((c[l>>2]|0)==0?(c[m>>2]|0)!=0:0){if((c[c[p>>2]>>2]|0)>>>0<(c[(c[n>>2]|0)+68>>2]|0)>>>0){c[l>>2]=5;break}if((c[m>>2]|0)==2?(c[l>>2]=qj(c[n>>2]|0,c[C>>2]|0,c[E>>2]|0,4,4)|0,(c[l>>2]|0)==0):0){ci(c[n>>2]|0,4,4)}}}}while(0);xj(c[t>>2]|0);c[k>>2]=c[l>>2];a=c[k>>2]|0;i=x;return a|0}function uj(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[c[(c[b>>2]|0)+32>>2]>>2]|0)+96|0}function vj(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=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;n=i;i=i+64|0;f=n+60|0;u=n+56|0;h=n+52|0;g=n+48|0;t=n+44|0;o=n+40|0;v=n+36|0;s=n+32|0;k=n+28|0;j=n+24|0;q=n+20|0;l=n+16|0;r=n+12|0;e=n+8|0;p=n+4|0;m=n;c[u>>2]=a;c[h>>2]=d;c[j>>2]=0;c[o>>2]=c[(c[u>>2]|0)+68>>2];c[t>>2]=(Ni(c[o>>2]|0)|0)+1;c[v>>2]=28+(((c[t>>2]|0)-1|0)*20|0)+(c[o>>2]<<1);c[g>>2]=fg(c[v>>2]|0)|0;if((c[g>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=n;return a|0}_D(c[g>>2]|0,0,c[v>>2]|0)|0;c[(c[g>>2]|0)+4>>2]=c[t>>2];c[k>>2]=fg(((c[o>>2]|0)>>>0>4096?4096:c[o>>2]|0)<<1)|0;if((c[k>>2]|0)==0){c[j>>2]=7}c[s>>2]=0;while(1){if((c[j>>2]|0)!=0){break}if((c[s>>2]|0)>=(c[t>>2]|0)){break}c[j>>2]=Mi(c[u>>2]|0,c[s>>2]|0,q,r,l)|0;if((c[j>>2]|0)==0){c[r>>2]=(c[r>>2]|0)+4;if(((c[s>>2]|0)+1|0)==(c[t>>2]|0)){c[p>>2]=(c[o>>2]|0)-(c[l>>2]|0)}else{c[p>>2]=((c[q>>2]|0)-(c[r>>2]|0)|0)/4|0}c[m>>2]=(c[g>>2]|0)+8+((c[(c[g>>2]|0)+4>>2]|0)*20|0)+(c[l>>2]<<1);c[l>>2]=(c[l>>2]|0)+1;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[p>>2]|0)){break}b[(c[m>>2]|0)+(c[e>>2]<<1)>>1]=c[e>>2];c[e>>2]=(c[e>>2]|0)+1}yj(c[r>>2]|0,c[k>>2]|0,c[m>>2]|0,p);c[(c[g>>2]|0)+8+((c[s>>2]|0)*20|0)+16>>2]=c[l>>2];c[(c[g>>2]|0)+8+((c[s>>2]|0)*20|0)+12>>2]=c[p>>2];c[(c[g>>2]|0)+8+((c[s>>2]|0)*20|0)+4>>2]=c[m>>2];c[(c[g>>2]|0)+8+((c[s>>2]|0)*20|0)+8>>2]=c[r>>2]}c[s>>2]=(c[s>>2]|0)+1}gg(c[k>>2]|0);if((c[j>>2]|0)!=0){xj(c[g>>2]|0)}c[c[h>>2]>>2]=c[g>>2];c[f>>2]=c[j>>2];a=c[f>>2]|0;i=n;return a|0}function wj(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=i;i=i+32|0;h=k+28|0;j=k+24|0;n=k+20|0;o=k+16|0;m=k+12|0;p=k+8|0;f=k+4|0;l=k;c[h>>2]=a;c[j>>2]=b;c[n>>2]=d;c[m>>2]=-1;c[o>>2]=c[c[h>>2]>>2];c[p>>2]=(c[(c[h>>2]|0)+4>>2]|0)-1;while(1){if((c[p>>2]|0)<0){break}c[f>>2]=(c[h>>2]|0)+8+((c[p>>2]|0)*20|0);while(1){if((c[c[f>>2]>>2]|0)>=(c[(c[f>>2]|0)+12>>2]|0)){break}c[l>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+((e[(c[(c[f>>2]|0)+4>>2]|0)+(c[c[f>>2]>>2]<<1)>>1]|0)<<2)>>2];if((c[l>>2]|0)>>>0>(c[o>>2]|0)>>>0){g=6;break}a=c[f>>2]|0;c[a>>2]=(c[a>>2]|0)+1}if((g|0)==6?(g=0,(c[l>>2]|0)>>>0<(c[m>>2]|0)>>>0):0){c[m>>2]=c[l>>2];c[c[n>>2]>>2]=(c[(c[f>>2]|0)+16>>2]|0)+(e[(c[(c[f>>2]|0)+4>>2]|0)+(c[c[f>>2]>>2]<<1)>>1]|0)}c[p>>2]=(c[p>>2]|0)+ -1}a=c[m>>2]|0;c[c[h>>2]>>2]=a;c[c[j>>2]>>2]=a;i=k;return(c[m>>2]|0)==-1|0}function xj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;gg(c[d>>2]|0);i=b;return}function yj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=i;i=i+160|0;g=r+144|0;p=r+140|0;k=r+136|0;q=r+132|0;m=r+128|0;j=r+124|0;l=r+120|0;o=r+116|0;h=r+112|0;f=r+8|0;n=r+4|0;s=r;c[g>>2]=a;c[p>>2]=b;c[k>>2]=d;c[q>>2]=e;c[m>>2]=c[c[q>>2]>>2];c[j>>2]=0;c[l>>2]=0;c[h>>2]=0;d=f+0|0;e=d+104|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[m>>2]|0)){break}c[j>>2]=1;c[l>>2]=(c[k>>2]|0)+(c[o>>2]<<1);c[h>>2]=0;while(1){if((c[o>>2]&1<>2]|0)==0){break}c[n>>2]=f+(c[h>>2]<<3);zj(c[g>>2]|0,c[(c[n>>2]|0)+4>>2]|0,c[c[n>>2]>>2]|0,l,j,c[p>>2]|0);c[h>>2]=(c[h>>2]|0)+1}c[f+(c[h>>2]<<3)+4>>2]=c[l>>2];c[f+(c[h>>2]<<3)>>2]=c[j>>2];c[o>>2]=(c[o>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+1;while(1){if((c[h>>2]|0)>=13){break}if((c[m>>2]&1<>2]|0)!=0){c[s>>2]=f+(c[h>>2]<<3);zj(c[g>>2]|0,c[(c[s>>2]|0)+4>>2]|0,c[c[s>>2]>>2]|0,l,j,c[p>>2]|0)}c[h>>2]=(c[h>>2]|0)+1}c[c[q>>2]>>2]=c[j>>2];i=r;return}function zj(a,d,f,g,h,j){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;q=i;i=i+64|0;r=q+44|0;u=q+40|0;v=q+36|0;m=q+32|0;o=q+28|0;p=q+24|0;k=q+20|0;w=q+16|0;n=q+12|0;x=q+8|0;y=q+4|0;s=q+48|0;t=q;c[r>>2]=a;c[u>>2]=d;c[v>>2]=f;c[m>>2]=g;c[o>>2]=h;c[p>>2]=j;c[k>>2]=0;c[w>>2]=0;c[n>>2]=0;c[x>>2]=c[c[o>>2]>>2];c[y>>2]=c[c[m>>2]>>2];while(1){if((c[w>>2]|0)>=(c[x>>2]|0)?(c[k>>2]|0)>=(c[v>>2]|0):0){break}do{if((c[k>>2]|0)<(c[v>>2]|0)){if((c[w>>2]|0)<(c[x>>2]|0)?!((c[(c[r>>2]|0)+((e[(c[u>>2]|0)+(c[k>>2]<<1)>>1]|0)<<2)>>2]|0)>>>0<(c[(c[r>>2]|0)+((e[(c[y>>2]|0)+(c[w>>2]<<1)>>1]|0)<<2)>>2]|0)>>>0):0){l=8;break}a=c[k>>2]|0;c[k>>2]=a+1;b[s>>1]=b[(c[u>>2]|0)+(a<<1)>>1]|0}else{l=8}}while(0);if((l|0)==8){l=0;a=c[w>>2]|0;c[w>>2]=a+1;b[s>>1]=b[(c[y>>2]|0)+(a<<1)>>1]|0}c[t>>2]=c[(c[r>>2]|0)+((e[s>>1]|0)<<2)>>2];d=b[s>>1]|0;a=c[n>>2]|0;c[n>>2]=a+1;b[(c[p>>2]|0)+(a<<1)>>1]=d;if((c[k>>2]|0)>=(c[v>>2]|0)){continue}if((c[(c[r>>2]|0)+((e[(c[u>>2]|0)+(c[k>>2]<<1)>>1]|0)<<2)>>2]|0)!=(c[t>>2]|0)){continue}c[k>>2]=(c[k>>2]|0)+1}c[c[m>>2]>>2]=c[u>>2];c[c[o>>2]>>2]=c[n>>2];dE(c[u>>2]|0,c[p>>2]|0,c[n>>2]<<1|0)|0;i=q;return}function Aj(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+128|0;l=g+120|0;m=g+116|0;o=g+112|0;n=g+104|0;k=g+56|0;h=g+8|0;j=g;c[m>>2]=e;c[o>>2]=f;c[j>>2]=gj(c[m>>2]|0)|0;e=k+0|0;f=(c[j>>2]|0)+0|0;p=e+48|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(p|0));Hj(c[m>>2]|0);e=h+0|0;f=(c[j>>2]|0)+48|0;p=e+48|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(p|0));if((VD(k,h,48)|0)!=0){c[l>>2]=1;p=c[l>>2]|0;i=g;return p|0}if((d[k+12>>0]|0|0)==0){c[l>>2]=1;p=c[l>>2]|0;i=g;return p|0}Dj(1,k,40,0,n);if((c[n>>2]|0)==(c[k+40>>2]|0)?(c[n+4>>2]|0)==(c[k+44>>2]|0):0){if((VD((c[m>>2]|0)+52|0,k,48)|0)!=0){c[c[o>>2]>>2]=1;e=(c[m>>2]|0)+52|0;f=k+0|0;p=e+48|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(p|0));c[(c[m>>2]|0)+36>>2]=(b[(c[m>>2]|0)+66>>1]&65024)+((b[(c[m>>2]|0)+66>>1]&1)<<16)}c[l>>2]=0;p=c[l>>2]|0;i=g;return p|0}c[l>>2]=1;p=c[l>>2]|0;i=g;return p|0}function Bj(e){e=e|0;var f=0,g=0,h=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,E=0;s=i;i=i+144|0;C=s+16|0;r=s+96|0;j=s+92|0;h=s+88|0;k=s+8|0;z=s+80|0;l=s+76|0;m=s+72|0;o=s+104|0;n=s+68|0;g=s+64|0;t=s+60|0;u=s+56|0;v=s;q=s+52|0;p=s+48|0;f=s+44|0;y=s+40|0;w=s+36|0;x=s+32|0;A=s+28|0;B=s+24|0;c[j>>2]=e;c[z+0>>2]=0;c[z+4>>2]=0;c[l>>2]=1+(d[(c[j>>2]|0)+45>>0]|0);c[m>>2]=8-(c[l>>2]|0);c[h>>2]=pj(c[j>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if((c[h>>2]|0)!=0){c[r>>2]=c[h>>2];E=c[r>>2]|0;i=s;return E|0}e=(c[j>>2]|0)+52|0;E=e+48|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(E|0));c[h>>2]=Ag(c[(c[j>>2]|0)+8>>2]|0,k)|0;a:do{if((c[h>>2]|0)==0){E=k;e=c[E+4>>2]|0;do{if((e|0)>0|(e|0)==0&(c[E>>2]|0)>>>0>32){c[n>>2]=0;c[h>>2]=yi(c[(c[j>>2]|0)+8>>2]|0,o,32,0,0)|0;if((c[h>>2]|0)!=0){break a}c[p>>2]=Ah(o)|0;c[q>>2]=Ah(o+8|0)|0;if((c[p>>2]&-2|0)==931071618?!(((c[q>>2]|0)>65536?1:(c[q>>2]&(c[q>>2]|0)-1|0)!=0)|(c[q>>2]|0)<512):0){a[(c[j>>2]|0)+65>>0]=c[p>>2]&1;c[(c[j>>2]|0)+36>>2]=c[q>>2];E=Ah(o+12|0)|0;c[(c[j>>2]|0)+104>>2]=E;E=(c[j>>2]|0)+84|0;e=o+16|0;a[E+0>>0]=a[e+0>>0]|0;a[E+1>>0]=a[e+1>>0]|0;a[E+2>>0]=a[e+2>>0]|0;a[E+3>>0]=a[e+3>>0]|0;a[E+4>>0]=a[e+4>>0]|0;a[E+5>>0]=a[e+5>>0]|0;a[E+6>>0]=a[e+6>>0]|0;a[E+7>>0]=a[e+7>>0]|0;Dj((d[(c[j>>2]|0)+65>>0]|0)==((a[1392]|0)==0|0)&1,o,24,0,(c[j>>2]|0)+76|0);E=c[(c[j>>2]|0)+76>>2]|0;if((E|0)==(Ah(o+24|0)|0)?(E=c[(c[j>>2]|0)+80>>2]|0,(E|0)==(Ah(o+28|0)|0)):0){c[f>>2]=Ah(o+4|0)|0;if((c[f>>2]|0)!=3007e3){c[h>>2]=Cj(48238)|0;break}c[g>>2]=(c[q>>2]|0)+24;c[n>>2]=ec(c[g>>2]|0)|0;if((c[n>>2]|0)==0){c[h>>2]=7;break a}c[t>>2]=(c[n>>2]|0)+24;c[u>>2]=0;E=v;c[E>>2]=32;c[E+4>>2]=0;while(1){o=v;e=c[g>>2]|0;e=bE(c[o>>2]|0,c[o+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;o=D;E=k;p=c[E+4>>2]|0;if(!((o|0)<(p|0)|((o|0)==(p|0)?e>>>0<=(c[E>>2]|0)>>>0:0))){break}c[u>>2]=(c[u>>2]|0)+1;E=v;c[h>>2]=yi(c[(c[j>>2]|0)+8>>2]|0,c[n>>2]|0,c[g>>2]|0,c[E>>2]|0,c[E+4>>2]|0)|0;if((c[h>>2]|0)!=0){break}c[y>>2]=Ej(c[j>>2]|0,w,x,c[t>>2]|0,c[n>>2]|0)|0;if((c[y>>2]|0)==0){break}c[h>>2]=Fj(c[j>>2]|0,c[u>>2]|0,c[w>>2]|0)|0;if((c[h>>2]|0)!=0){break}if((c[x>>2]|0)!=0){c[(c[j>>2]|0)+68>>2]=c[u>>2];c[(c[j>>2]|0)+72>>2]=c[x>>2];b[(c[j>>2]|0)+66>>1]=c[q>>2]&65280|c[q>>2]>>16;c[z>>2]=c[(c[j>>2]|0)+76>>2];c[z+4>>2]=c[(c[j>>2]|0)+80>>2]}e=c[g>>2]|0;E=v;e=bE(c[E>>2]|0,c[E+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;E=v;c[E>>2]=e;c[E+4>>2]=D}gc(c[n>>2]|0)}}}}while(0);if((c[h>>2]|0)==0){c[(c[j>>2]|0)+76>>2]=c[z>>2];c[(c[j>>2]|0)+80>>2]=c[z+4>>2];Gj(c[j>>2]|0);c[A>>2]=uj(c[j>>2]|0)|0;c[c[A>>2]>>2]=0;c[(c[A>>2]|0)+4>>2]=0;c[B>>2]=1;while(1){if((c[B>>2]|0)>=5){break}c[(c[A>>2]|0)+4+(c[B>>2]<<2)>>2]=-1;c[B>>2]=(c[B>>2]|0)+1}if((c[(c[j>>2]|0)+68>>2]|0)!=0){c[(c[A>>2]|0)+8>>2]=c[(c[j>>2]|0)+68>>2]}if((c[(c[j>>2]|0)+72>>2]|0)!=0){E=c[(c[j>>2]|0)+100>>2]|0;c[C>>2]=c[(c[j>>2]|0)+68>>2];c[C+4>>2]=E;rc(283,4464,C)}}}}while(0);ci(c[j>>2]|0,c[l>>2]|0,c[m>>2]|0);c[r>>2]=c[h>>2];E=c[r>>2]|0;i=s;return E|0}function Cj(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+8|0;c[e>>2]=a;e=c[e>>2]|0;a=(rf()|0)+20|0;c[d>>2]=e;c[d+4>>2]=a;rc(14,4424,d);i=b;return 14}function Dj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+48|0;n=k+32|0;q=k+28|0;p=k+24|0;o=k+20|0;h=k+16|0;m=k+12|0;j=k+8|0;l=k+4|0;g=k;c[n>>2]=a;c[q>>2]=b;c[p>>2]=d;c[o>>2]=e;c[h>>2]=f;c[l>>2]=c[q>>2];c[g>>2]=(c[q>>2]|0)+(c[p>>2]|0);if((c[o>>2]|0)!=0){c[m>>2]=c[c[o>>2]>>2];c[j>>2]=c[(c[o>>2]|0)+4>>2]}else{c[j>>2]=0;c[m>>2]=0}if((c[n>>2]|0)!=0){do{q=c[l>>2]|0;c[l>>2]=q+4;c[m>>2]=(c[m>>2]|0)+((c[q>>2]|0)+(c[j>>2]|0));q=c[l>>2]|0;c[l>>2]=q+4;c[j>>2]=(c[j>>2]|0)+((c[q>>2]|0)+(c[m>>2]|0))}while((c[l>>2]|0)>>>0<(c[g>>2]|0)>>>0);q=c[m>>2]|0;p=c[h>>2]|0;c[p>>2]=q;p=c[j>>2]|0;q=c[h>>2]|0;q=q+4|0;c[q>>2]=p;i=k;return}else{do{c[m>>2]=(c[m>>2]|0)+(((c[c[l>>2]>>2]&255)<<24)+((c[c[l>>2]>>2]&65280)<<8)+((c[c[l>>2]>>2]&16711680)>>>8)+((c[c[l>>2]>>2]&-16777216)>>>24)+(c[j>>2]|0));c[j>>2]=(c[j>>2]|0)+(((c[(c[l>>2]|0)+4>>2]&255)<<24)+((c[(c[l>>2]|0)+4>>2]&65280)<<8)+((c[(c[l>>2]|0)+4>>2]&16711680)>>>8)+((c[(c[l>>2]|0)+4>>2]&-16777216)>>>24)+(c[m>>2]|0));c[l>>2]=(c[l>>2]|0)+8}while((c[l>>2]|0)>>>0<(c[g>>2]|0)>>>0);q=c[m>>2]|0;p=c[h>>2]|0;c[p>>2]=q;p=c[j>>2]|0;q=c[h>>2]|0;q=q+4|0;c[q>>2]=p;i=k;return}}function Ej(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=i;i=i+48|0;k=p+32|0;q=p+28|0;m=p+24|0;o=p+20|0;s=p+16|0;n=p+12|0;r=p+8|0;j=p+4|0;l=p;c[q>>2]=b;c[m>>2]=e;c[o>>2]=f;c[s>>2]=g;c[n>>2]=h;c[j>>2]=(c[q>>2]|0)+76;if((VD((c[q>>2]|0)+84|0,(c[n>>2]|0)+8|0,8)|0)!=0){c[k>>2]=0;b=c[k>>2]|0;i=p;return b|0}c[l>>2]=Ah(c[n>>2]|0)|0;if((c[l>>2]|0)==0){c[k>>2]=0;b=c[k>>2]|0;i=p;return b|0}c[r>>2]=(d[(c[q>>2]|0)+65>>0]|0)==((a[1392]|0)==0|0)&1;Dj(c[r>>2]|0,c[n>>2]|0,8,c[j>>2]|0,c[j>>2]|0);Dj(c[r>>2]|0,c[s>>2]|0,c[(c[q>>2]|0)+36>>2]|0,c[j>>2]|0,c[j>>2]|0);b=c[c[j>>2]>>2]|0;if((b|0)==(Ah((c[n>>2]|0)+16|0)|0)?(b=c[(c[j>>2]|0)+4>>2]|0,(b|0)==(Ah((c[n>>2]|0)+20|0)|0)):0){c[c[m>>2]>>2]=c[l>>2];b=Ah((c[n>>2]|0)+4|0)|0;c[c[o>>2]>>2]=b;c[k>>2]=1;b=c[k>>2]|0;i=p;return b|0}c[k>>2]=0;b=c[k>>2]|0;i=p;return b|0}function Fj(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+48|0;h=j+44|0;q=j+40|0;t=j+36|0;k=j+32|0;o=j+28|0;s=j+24|0;l=j+20|0;n=j+16|0;f=j+12|0;m=j+8|0;p=j+4|0;r=j;c[q>>2]=a;c[t>>2]=d;c[k>>2]=e;c[s>>2]=0;c[l>>2]=0;c[n>>2]=0;a=c[q>>2]|0;c[o>>2]=Mi(a,Ni(c[t>>2]|0)|0,n,l,s)|0;do{if((c[o>>2]|0)==0){c[m>>2]=(c[t>>2]|0)-(c[s>>2]|0);if((c[m>>2]|0)==1){c[r>>2]=(c[n>>2]|0)+16384-((c[l>>2]|0)+4);_D((c[l>>2]|0)+4|0,0,c[r>>2]|0)|0}if((c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)!=0){Li(c[q>>2]|0)}c[p>>2]=c[m>>2];c[f>>2]=dj(c[k>>2]|0)|0;while(1){if((b[(c[n>>2]|0)+(c[f>>2]<<1)>>1]|0)==0){g=11;break}a=c[p>>2]|0;c[p>>2]=a+ -1;if((a|0)==0){break}c[f>>2]=fj(c[f>>2]|0)|0}if((g|0)==11){c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]=c[k>>2];b[(c[n>>2]|0)+(c[f>>2]<<1)>>1]=c[m>>2];break}c[h>>2]=ej(48107)|0;a=c[h>>2]|0;i=j;return a|0}}while(0);c[h>>2]=c[o>>2];a=c[h>>2]|0;i=j;return a|0}function Gj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;f=i;i=i+16|0;d=f+8|0;e=f+4|0;c[d>>2]=b;c[e>>2]=gj(c[d>>2]|0)|0;c[f>>2]=40;a[(c[d>>2]|0)+64>>0]=1;c[(c[d>>2]|0)+52>>2]=3007e3;Dj(1,(c[d>>2]|0)+52|0,40,0,(c[d>>2]|0)+92|0);h=(c[e>>2]|0)+48|0;g=(c[d>>2]|0)+52|0;b=h+48|0;do{a[h>>0]=a[g>>0]|0;h=h+1|0;g=g+1|0}while((h|0)<(b|0));Hj(c[d>>2]|0);h=(c[e>>2]|0)+0|0;g=(c[d>>2]|0)+52|0;b=h+48|0;do{a[h>>0]=a[g>>0]|0;h=h+1|0;g=g+1|0}while((h|0)<(b|0));i=f;return}function Hj(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;if((d[(c[e>>2]|0)+43>>0]|0|0)==2){i=b;return}Ij(c[(c[e>>2]|0)+4>>2]|0);i=b;return}function Ij(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;rb[c[(c[c[d>>2]>>2]|0)+60>>2]&31](c[d>>2]|0);i=b;return}function Jj(a){a=a|0;var b=0,d=0,e=0,f=0;e=i;i=i+16|0;d=e+8|0;f=e+4|0;b=e;c[f>>2]=a;if(((c[f>>2]|0)!=0?(c[c[f>>2]>>2]|0)!=0:0)?(c[(c[f>>2]|0)+8>>2]|0)>=0:0){c[b>>2]=zb[c[c[f>>2]>>2]&63](c[(c[f>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;a=(c[f>>2]|0)+8|0;if((c[b>>2]|0)==0){c[a>>2]=-1}else{c[a>>2]=(c[a>>2]|0)+1}c[d>>2]=c[b>>2];f=c[d>>2]|0;i=e;return f|0}c[d>>2]=0;f=c[d>>2]|0;i=e;return f|0}function Kj(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+8>>2]|0}function Lj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Wi(c[d>>2]|0)|0;i=b;return a|0}function Mj(f){f=f|0;var g=0,h=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;j=i;i=i+48|0;h=j+32|0;k=j+28|0;r=j+42|0;s=j+44|0;q=j+24|0;v=j+20|0;l=j+16|0;p=j+40|0;m=j+12|0;t=j+8|0;g=j+4|0;o=j;u=j+38|0;n=j+36|0;c[k>>2]=f;do{if((a[c[k>>2]>>0]|0)==0){c[v>>2]=c[(c[k>>2]|0)+52>>2];a[s>>0]=a[(c[k>>2]|0)+5>>0]|0;c[q>>2]=c[(c[k>>2]|0)+56>>2];if((Nj(c[k>>2]|0,d[(c[q>>2]|0)+(d[s>>0]|0)>>0]|0)|0)!=0){c[h>>2]=ej(52602)|0;v=c[h>>2]|0;i=j;return v|0}b[(c[k>>2]|0)+18>>1]=(c[(c[v>>2]|0)+32>>2]|0)-1;a[(c[k>>2]|0)+1>>0]=0;c[l>>2]=c[(c[v>>2]|0)+36>>2];f=(d[s>>0]|0)+12-(d[(c[k>>2]|0)+3>>0]<<2)&65535;b[p>>1]=f;b[(c[k>>2]|0)+12>>1]=f;c[(c[k>>2]|0)+60>>2]=(c[q>>2]|0)+(c[l>>2]|0);c[(c[k>>2]|0)+64>>2]=(c[q>>2]|0)+(e[p>>1]|0);c[t>>2]=((d[(c[q>>2]|0)+((d[s>>0]|0)+5)>>0]<<8|d[(c[q>>2]|0)+((d[s>>0]|0)+5)+1>>0])-1&65535)+1;b[(c[k>>2]|0)+16>>1]=d[(c[q>>2]|0)+((d[s>>0]|0)+3)>>0]<<8|d[(c[q>>2]|0)+((d[s>>0]|0)+3)+1>>0];if((e[(c[k>>2]|0)+16>>1]|0)>>>0>((((c[(c[v>>2]|0)+32>>2]|0)-8|0)>>>0)/6|0)>>>0){c[h>>2]=ej(52614)|0;v=c[h>>2]|0;i=j;return v|0}c[g>>2]=(e[p>>1]|0)+(e[(c[k>>2]|0)+16>>1]<<1);c[o>>2]=(c[l>>2]|0)-4;b[r>>1]=d[(c[q>>2]|0)+((d[s>>0]|0)+1)>>0]<<8|d[(c[q>>2]|0)+((d[s>>0]|0)+1)+1>>0];c[m>>2]=(d[(c[q>>2]|0)+((d[s>>0]|0)+7)>>0]|0)+(c[t>>2]|0);while(1){if((e[r>>1]|0)<=0){n=16;break}if((e[r>>1]|0)<(c[g>>2]|0)){n=10;break}if((e[r>>1]|0)>(c[o>>2]|0)){n=10;break}b[u>>1]=d[(c[q>>2]|0)+(e[r>>1]|0)>>0]<<8|d[(c[q>>2]|0)+(e[r>>1]|0)+1>>0];b[n>>1]=d[(c[q>>2]|0)+((e[r>>1]|0)+2)>>0]<<8|d[(c[q>>2]|0)+((e[r>>1]|0)+2)+1>>0];if((e[u>>1]|0)>0?(e[u>>1]|0)<=((e[r>>1]|0)+(e[n>>1]|0)+3|0):0){n=14;break}if(((e[r>>1]|0)+(e[n>>1]|0)|0)>(c[l>>2]|0)){n=14;break}c[m>>2]=(c[m>>2]|0)+(e[n>>1]|0);b[r>>1]=b[u>>1]|0}if((n|0)==10){c[h>>2]=ej(52657)|0;v=c[h>>2]|0;i=j;return v|0}else if((n|0)==14){c[h>>2]=ej(52664)|0;v=c[h>>2]|0;i=j;return v|0}else if((n|0)==16){if((c[m>>2]|0)<=(c[l>>2]|0)){b[(c[k>>2]|0)+14>>1]=(c[m>>2]|0)-(c[g>>2]|0);a[c[k>>2]>>0]=1;break}c[h>>2]=ej(52678)|0;v=c[h>>2]|0;i=j;return v|0}}}while(0);c[h>>2]=0;v=c[h>>2]|0;i=j;return v|0}function Nj(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;k=i;i=i+16|0;j=k+12|0;h=k+8|0;l=k+4|0;g=k;c[h>>2]=e;c[l>>2]=f;a[(c[h>>2]|0)+3>>0]=c[l>>2]>>3;c[l>>2]=c[l>>2]&-9;a[(c[h>>2]|0)+6>>0]=4-((d[(c[h>>2]|0)+3>>0]|0)<<2);c[g>>2]=c[(c[h>>2]|0)+52>>2];do{if((c[l>>2]|0)==5){a[(c[h>>2]|0)+2>>0]=1;a[(c[h>>2]|0)+4>>0]=a[(c[h>>2]|0)+3>>0]|0;b[(c[h>>2]|0)+8>>1]=b[(c[g>>2]|0)+28>>1]|0;b[(c[h>>2]|0)+10>>1]=b[(c[g>>2]|0)+30>>1]|0}else{if((c[l>>2]|0)==2){a[(c[h>>2]|0)+2>>0]=0;a[(c[h>>2]|0)+4>>0]=0;b[(c[h>>2]|0)+8>>1]=b[(c[g>>2]|0)+24>>1]|0;b[(c[h>>2]|0)+10>>1]=b[(c[g>>2]|0)+26>>1]|0;break}c[j>>2]=ej(52563)|0;e=c[j>>2]|0;i=k;return e|0}}while(0);a[(c[h>>2]|0)+7>>0]=a[(c[g>>2]|0)+21>>0]|0;c[j>>2]=0;e=c[j>>2]|0;i=k;return e|0}function Oj(){return 48}function Pj(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;p=j+20|0;l=j+16|0;m=j+12|0;n=j+8|0;o=j+4|0;k=j;c[p>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[k>>2]=h;g=(c[k>>2]|0)+0|0;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[(c[k>>2]|0)+20>>2]=c[p>>2];c[(c[k>>2]|0)+24>>2]=c[l>>2];a[(c[k>>2]|0)+28>>0]=c[m>>2];a[(c[k>>2]|0)+29>>0]=2;c[(c[k>>2]|0)+32>>2]=c[n>>2];c[(c[k>>2]|0)+36>>2]=c[o>>2];c[(c[k>>2]|0)+16>>2]=100;i=j;return}function Qj(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;m=g+12|0;j=g+8|0;k=g+4|0;l=g;c[m>>2]=e;c[j>>2]=f;c[k>>2]=c[m>>2];c[l>>2]=0;if((c[(c[k>>2]|0)+40>>2]|0)!=0){c[h>>2]=0;m=c[h>>2]|0;i=g;return m|0}do{if((d[(c[k>>2]|0)+20>>0]|0|0)!=0){if((a[(c[k>>2]|0)+20>>0]&3|0)==0?(b[(c[j>>2]|0)+24>>1]&4|0)==0:0){break}c[h>>2]=0;m=c[h>>2]|0;i=g;return m|0}}while(0);c[(c[j>>2]|0)+12>>2]=0;m=(Vh(c[k>>2]|0)|0)!=0;f=c[j>>2]|0;if(m){if((Rj(f)|0)!=0){c[l>>2]=Sj(c[j>>2]|0)|0}if((c[l>>2]|0)==0){c[l>>2]=Tj(c[k>>2]|0,c[j>>2]|0,0,0)|0}}else{if(!((b[f+24>>1]&4|0)==0?(d[(c[k>>2]|0)+16>>0]|0|0)!=3:0)){c[l>>2]=Uj(c[k>>2]|0,1)|0}if(((c[l>>2]|0)==0?(c[(c[j>>2]|0)+20>>2]|0)>>>0>(c[(c[k>>2]|0)+24>>2]|0)>>>0:0)?(Rj(c[j>>2]|0)|0)!=0:0){c[l>>2]=Sj(c[j>>2]|0)|0}if((c[l>>2]|0)==0){c[l>>2]=Vj(c[k>>2]|0,c[j>>2]|0)|0}}if((c[l>>2]|0)==0){Kg(c[j>>2]|0)}c[h>>2]=Ih(c[k>>2]|0,c[l>>2]|0)|0;m=c[h>>2]|0;i=g;return m|0}function Rj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;b=d+20|0;j=d+16|0;e=d+12|0;g=d+8|0;h=d+4|0;f=d;c[j>>2]=a;c[e>>2]=c[(c[j>>2]|0)+16>>2];c[h>>2]=c[(c[j>>2]|0)+20>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[e>>2]|0)+96>>2]|0)){a=7;break}c[g>>2]=(c[(c[e>>2]|0)+92>>2]|0)+((c[f>>2]|0)*48|0);if((c[(c[g>>2]|0)+20>>2]|0)>>>0>=(c[h>>2]|0)>>>0?0==(Rg(c[(c[g>>2]|0)+16>>2]|0,c[h>>2]|0)|0):0){a=5;break}c[f>>2]=(c[f>>2]|0)+1}if((a|0)==5){c[b>>2]=1;j=c[b>>2]|0;i=d;return j|0}else if((a|0)==7){c[b>>2]=0;j=c[b>>2]|0;i=d;return j|0}return 0}function Sj(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;j=e+24|0;b=e+20|0;f=e+16|0;k=e+12|0;h=e;g=e+8|0;c[j>>2]=a;c[b>>2]=0;c[f>>2]=c[(c[j>>2]|0)+16>>2];if(((d[(c[f>>2]|0)+5>>0]|0|0)!=2?(c[b>>2]=ik(c[f>>2]|0)|0,(c[b>>2]|0)==0):0)?(c[k>>2]=c[(c[j>>2]|0)+4>>2],l=4+(c[(c[f>>2]|0)+152>>2]|0)|0,l=lE(c[(c[f>>2]|0)+52>>2]|0,0,l|0,((l|0)<0)<<31>>31|0)|0,a=h,c[a>>2]=l,c[a+4>>2]=D,c[g>>2]=c[k>>2],k=h,c[b>>2]=jk(c[(c[f>>2]|0)+68>>2]|0,c[k>>2]|0,c[k+4>>2]|0,c[(c[j>>2]|0)+20>>2]|0)|0,(c[b>>2]|0)==0):0){a=c[(c[f>>2]|0)+68>>2]|0;g=c[g>>2]|0;k=c[(c[f>>2]|0)+152>>2]|0;l=h;l=bE(c[l>>2]|0,c[l+4>>2]|0,4,0)|0;c[b>>2]=fd(a,g,k,l,D)|0}if((c[b>>2]|0)!=0){l=c[b>>2]|0;i=e;return l|0}l=(c[f>>2]|0)+52|0;c[l>>2]=(c[l>>2]|0)+1;c[b>>2]=kk(c[f>>2]|0,c[(c[j>>2]|0)+20>>2]|0)|0;l=c[b>>2]|0;i=e;return l|0}function Tj(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+48|0;l=h+32|0;j=h+28|0;m=h+24|0;g=h+20|0;n=h+16|0;o=h+12|0;p=h+8|0;q=h+4|0;k=h;c[l>>2]=a;c[j>>2]=b;c[m>>2]=e;c[g>>2]=f;a:do{if((c[g>>2]|0)!=0){c[q>>2]=j;c[o>>2]=0;c[p>>2]=c[j>>2];while(1){a=c[p>>2]|0;c[c[q>>2]>>2]=a;if((a|0)==0){break a}if((c[(c[p>>2]|0)+20>>2]|0)>>>0<=(c[m>>2]|0)>>>0){c[q>>2]=(c[p>>2]|0)+12;c[o>>2]=(c[o>>2]|0)+1}c[p>>2]=c[(c[p>>2]|0)+12>>2]}}else{c[o>>2]=1}}while(0);a=(c[l>>2]|0)+192|0;c[a>>2]=(c[a>>2]|0)+(c[o>>2]|0);if((c[(c[j>>2]|0)+20>>2]|0)==1){Xj(c[j>>2]|0)}c[n>>2]=ck(c[(c[l>>2]|0)+208>>2]|0,c[(c[l>>2]|0)+152>>2]|0,c[j>>2]|0,c[m>>2]|0,c[g>>2]|0,d[(c[l>>2]|0)+10>>0]|0)|0;if((c[n>>2]|0)!=0){a=c[n>>2]|0;i=h;return a|0}if((c[(c[l>>2]|0)+88>>2]|0)==0){a=c[n>>2]|0;i=h;return a|0}c[k>>2]=c[j>>2];while(1){if((c[k>>2]|0)==0){break}Ci(c[(c[l>>2]|0)+88>>2]|0,c[(c[k>>2]|0)+20>>2]|0,c[(c[k>>2]|0)+4>>2]|0);c[k>>2]=c[(c[k>>2]|0)+12>>2]}a=c[n>>2]|0;i=h;return a|0} - - - -function bo(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0;p=i;i=i+272|0;W=p;s=p+264|0;F=p+260|0;m=p+256|0;n=p+252|0;G=p+248|0;N=p+244|0;A=p+240|0;na=p+236|0;oa=p+232|0;I=p+228|0;J=p+224|0;V=p+220|0;q=p+216|0;l=p+212|0;Q=p+208|0;K=p+204|0;y=p+200|0;O=p+196|0;v=p+192|0;H=p+188|0;u=p+184|0;L=p+180|0;M=p+176|0;Y=p+156|0;la=p+152|0;ma=p+148|0;B=p+271|0;t=p+270|0;X=p+269|0;fa=p+268|0;D=p+144|0;x=p+140|0;z=p+136|0;r=p+132|0;C=p+128|0;w=p+124|0;S=p+120|0;o=p+116|0;k=p+112|0;E=p+108|0;_=p+104|0;da=p+100|0;ea=p+96|0;ga=p+92|0;ia=p+88|0;ja=p+84|0;ka=p+80|0;aa=p+48|0;Z=p+44|0;ca=p+40|0;ba=p+36|0;$=p+32|0;P=p+28|0;R=p+24|0;T=p+20|0;U=p+16|0;c[s>>2]=e;c[F>>2]=f;c[m>>2]=g;c[n>>2]=h;c[G>>2]=j;c[K>>2]=0;c[y>>2]=0;c[O>>2]=0;c[v>>2]=-1;c[u>>2]=0;c[L>>2]=0;c[M>>2]=0;a[B>>0]=0;a[t>>0]=0;a[fa>>0]=1;c[D>>2]=0;c[x>>2]=0;c[z>>2]=0;c[r>>2]=0;c[o>>2]=0;c[N>>2]=c[c[s>>2]>>2];c[Y+0>>2]=0;c[Y+4>>2]=0;c[Y+8>>2]=0;c[Y+12>>2]=0;c[Y+16>>2]=0;a:do{if((c[(c[s>>2]|0)+64>>2]|0)==0?(d[(c[N>>2]|0)+64>>0]|0)==0:0){if(((c[m>>2]|0)!=0?(b[(c[m>>2]|0)+6>>1]&128|0)!=0:0)?(c[(c[m>>2]|0)+52>>2]|0)==0:0){c[D>>2]=c[c[m>>2]>>2];c[c[m>>2]>>2]=0;en(c[N>>2]|0,c[m>>2]|0);c[m>>2]=0}c[na>>2]=c[(c[F>>2]|0)+16>>2];if((((((c[na>>2]|0)!=0?(c[A>>2]=mt(c[s>>2]|0,c[F>>2]|0)|0,(c[A>>2]|0)!=0):0)?(c[la>>2]=Qe(c[N>>2]|0,c[(c[A>>2]|0)+68>>2]|0)|0,c[ma>>2]=(c[(c[N>>2]|0)+16>>2]|0)+(c[la>>2]<<4),c[oa>>2]=c[c[ma>>2]>>2],(Oo(c[s>>2]|0,18,c[c[A>>2]>>2]|0,0,c[oa>>2]|0)|0)==0):0)?(a[X>>0]=((a[(c[A>>2]|0)+44>>0]&32|0)==0^1)&1,c[E>>2]=Ut(c[s>>2]|0,c[A>>2]|0,108,0,_)|0,c[k>>2]=(c[(c[A>>2]|0)+12>>2]|0)!=0&1,(yp(c[s>>2]|0,c[A>>2]|0)|0)==0):0)?(Vt(c[s>>2]|0,c[A>>2]|0,c[_>>2]|0)|0)==0:0)?(c[q>>2]=Ro(c[s>>2]|0)|0,(c[q>>2]|0)!=0):0){if((d[(c[s>>2]|0)+18>>0]|0)==0){Wt(c[q>>2]|0)}if((c[m>>2]|0)!=0){f=1}else{f=(c[E>>2]|0)!=0}cp(c[s>>2]|0,f&1,c[la>>2]|0);if(!((c[n>>2]|0)==0?(Xt(c[s>>2]|0,c[A>>2]|0,c[m>>2]|0,c[G>>2]|0,c[la>>2]|0)|0)!=0:0)){ha=19}b:do{if((ha|0)==19){c[z>>2]=Yt(c[s>>2]|0,c[la>>2]|0,c[A>>2]|0)|0;e=(c[(c[s>>2]|0)+72>>2]|0)+1|0;c[C>>2]=e;c[w>>2]=e;e=(c[s>>2]|0)+72|0;c[e>>2]=(c[e>>2]|0)+((b[(c[A>>2]|0)+38>>1]|0)+1);if((a[(c[A>>2]|0)+44>>0]&16|0)!=0){c[w>>2]=(c[w>>2]|0)+1;e=(c[s>>2]|0)+72|0;c[e>>2]=(c[e>>2]|0)+1}c[S>>2]=(c[w>>2]|0)+1;c:do{if((c[n>>2]|0)!=0){c[I>>2]=0;while(1){if((c[I>>2]|0)>=(c[(c[n>>2]|0)+4>>2]|0)){break}c[(c[c[n>>2]>>2]|0)+(c[I>>2]<<3)+4>>2]=-1;c[I>>2]=(c[I>>2]|0)+1}c[I>>2]=0;while(1){if((c[I>>2]|0)>=(c[(c[n>>2]|0)+4>>2]|0)){break c}c[J>>2]=0;while(1){if((c[J>>2]|0)>=(b[(c[A>>2]|0)+38>>1]|0)){break}e=(vc(c[(c[c[n>>2]>>2]|0)+(c[I>>2]<<3)>>2]|0,c[(c[(c[A>>2]|0)+4>>2]|0)+((c[J>>2]|0)*24|0)>>2]|0)|0)==0;f=c[J>>2]|0;if(e){ha=30;break}c[J>>2]=f+1}do{if((ha|0)==30){ha=0;c[(c[c[n>>2]>>2]|0)+(c[I>>2]<<3)+4>>2]=f;if((c[I>>2]|0)!=(c[J>>2]|0)){a[fa>>0]=0}if((c[J>>2]|0)!=(b[(c[A>>2]|0)+36>>1]|0)){break}c[v>>2]=c[I>>2]}}while(0);if((c[J>>2]|0)>=(b[(c[A>>2]|0)+38>>1]|0)){if((Iq(c[(c[c[n>>2]>>2]|0)+(c[I>>2]<<3)>>2]|0)|0)==0){break}if((a[X>>0]|0)!=0){break}c[v>>2]=c[I>>2];a[fa>>0]=0}c[I>>2]=(c[I>>2]|0)+1}e=c[s>>2]|0;oa=c[(c[c[n>>2]>>2]|0)+(c[I>>2]<<3)>>2]|0;c[W>>2]=c[F>>2];c[W+4>>2]=0;c[W+8>>2]=oa;Ne(e,23224,W);a[(c[s>>2]|0)+17>>0]=1;break a}}while(0);d:do{if((c[m>>2]|0)!=0){oa=(c[s>>2]|0)+72|0;e=(c[oa>>2]|0)+1|0;c[oa>>2]=e;c[da>>2]=e;c[ea>>2]=(vr(c[q>>2]|0)|0)+1;Wo(c[q>>2]|0,20,c[da>>2]|0,0,c[ea>>2]|0)|0;Ks(Y,13,c[da>>2]|0);c[Y+8>>2]=(d[fa>>0]|0)!=0?c[S>>2]|0:0;c[Y+12>>2]=b[(c[A>>2]|0)+38>>1]|0;c[ga>>2]=On(c[s>>2]|0,c[m>>2]|0,Y)|0;c[x>>2]=c[Y+8>>2];if((c[ga>>2]|0)!=0){break a}if((d[(c[N>>2]|0)+64>>0]|0)!=0){break a}rr(c[q>>2]|0,21,c[da>>2]|0)|0;mp(c[q>>2]|0,(c[ea>>2]|0)-1|0);c[Q>>2]=c[c[c[m>>2]>>2]>>2];if(!((c[E>>2]|0)==0?(Zt(c[s>>2]|0,c[la>>2]|0,c[A>>2]|0)|0)==0:0)){a[B>>0]=1}if((a[B>>0]|0)==0){break}oa=(c[s>>2]|0)+68|0;e=c[oa>>2]|0;c[oa>>2]=e+1;c[u>>2]=e;c[ia>>2]=Zo(c[s>>2]|0)|0;c[ja>>2]=Zo(c[s>>2]|0)|0;To(c[q>>2]|0,55,c[u>>2]|0,c[Q>>2]|0)|0;c[ka>>2]=rr(c[q>>2]|0,22,c[Y+4>>2]|0)|0;Wo(c[q>>2]|0,48,c[x>>2]|0,c[Q>>2]|0,c[ia>>2]|0)|0;To(c[q>>2]|0,69,c[u>>2]|0,c[ja>>2]|0)|0;Wo(c[q>>2]|0,70,c[u>>2]|0,c[ia>>2]|0,c[ja>>2]|0)|0;To(c[q>>2]|0,16,0,c[ka>>2]|0)|0;mp(c[q>>2]|0,c[ka>>2]|0);_o(c[s>>2]|0,c[ia>>2]|0);_o(c[s>>2]|0,c[ja>>2]|0)}else{c[aa+0>>2]=0;c[aa+4>>2]=0;c[aa+8>>2]=0;c[aa+12>>2]=0;c[aa+16>>2]=0;c[aa+20>>2]=0;c[aa+24>>2]=0;c[aa+28>>2]=0;c[aa>>2]=c[s>>2];c[u>>2]=-1;if((c[D>>2]|0)!=0){da=c[c[D>>2]>>2]|0}else{da=0}c[Q>>2]=da;c[I>>2]=0;while(1){if((c[I>>2]|0)>=(c[Q>>2]|0)){break d}if((eq(aa,c[(c[(c[D>>2]|0)+4>>2]|0)+((c[I>>2]|0)*20|0)>>2]|0)|0)!=0){break a}c[I>>2]=(c[I>>2]|0)+1}}}while(0);if((c[n>>2]|0)==0?(c[Q>>2]|0)>0:0){c[v>>2]=b[(c[A>>2]|0)+36>>1]|0}e:do{if((a[(c[A>>2]|0)+44>>0]&16|0)!=0){c[I>>2]=0;while(1){if((c[I>>2]|0)>=(b[(c[A>>2]|0)+38>>1]|0)){break e}c[K>>2]=(c[K>>2]|0)+((a[(c[(c[A>>2]|0)+4>>2]|0)+((c[I>>2]|0)*24|0)+23>>0]&2|0)!=0?1:0);c[I>>2]=(c[I>>2]|0)+1}}}while(0);do{if((c[n>>2]|0)==0){if((c[Q>>2]|0)==0){break}if((c[Q>>2]|0)==((b[(c[A>>2]|0)+38>>1]|0)-(c[K>>2]|0)|0)){break}e=c[s>>2]|0;g=(b[(c[A>>2]|0)+38>>1]|0)-(c[K>>2]|0)|0;oa=c[Q>>2]|0;c[W>>2]=c[F>>2];c[W+4>>2]=0;c[W+8>>2]=g;c[W+12>>2]=oa;Ne(e,23256,W);break a}}while(0);do{if((c[n>>2]|0)!=0){if((c[Q>>2]|0)==(c[(c[n>>2]|0)+4>>2]|0)){break}e=c[s>>2]|0;oa=c[(c[n>>2]|0)+4>>2]|0;c[W>>2]=c[Q>>2];c[W+4>>2]=oa;Ne(e,23312,W);break a}}while(0);if((c[(c[N>>2]|0)+24>>2]&128|0)!=0){oa=(c[s>>2]|0)+72|0;e=(c[oa>>2]|0)+1|0;c[oa>>2]=e;c[r>>2]=e;To(c[q>>2]|0,25,0,c[r>>2]|0)|0}f:do{if((c[k>>2]|0)==0){c[Z>>2]=Mt(c[s>>2]|0,c[A>>2]|0,53,-1,0,y,O)|0;c[o>>2]=Le(c[N>>2]|0,(c[Z>>2]|0)+1<<2)|0;if((c[o>>2]|0)==0){break a}c[I>>2]=0;while(1){if((c[I>>2]|0)>=(c[Z>>2]|0)){break f}oa=(c[s>>2]|0)+72|0;e=(c[oa>>2]|0)+1|0;c[oa>>2]=e;c[(c[o>>2]|0)+(c[I>>2]<<2)>>2]=e;c[I>>2]=(c[I>>2]|0)+1}}}while(0);do{if((a[B>>0]|0)!=0){c[L>>2]=rr(c[q>>2]|0,105,c[u>>2]|0)|0;c[M>>2]=vr(c[q>>2]|0)|0}else{if((c[m>>2]|0)==0){break}e=rr(c[q>>2]|0,22,c[Y+4>>2]|0)|0;c[M>>2]=e;c[L>>2]=e}}while(0);c[H>>2]=fs(c[q>>2]|0)|0;if((c[_>>2]&1|0)!=0){c[ca>>2]=is(c[s>>2]|0,(b[(c[A>>2]|0)+38>>1]|0)+1|0)|0;if((c[v>>2]|0)<0){To(c[q>>2]|0,25,-1,c[ca>>2]|0)|0}else{if((a[B>>0]|0)!=0){Wo(c[q>>2]|0,46,c[u>>2]|0,c[v>>2]|0,c[ca>>2]|0)|0}else{ys(c[s>>2]|0,c[(c[(c[D>>2]|0)+4>>2]|0)+((c[v>>2]|0)*20|0)>>2]|0,c[ca>>2]|0)}c[ba>>2]=rr(c[q>>2]|0,77,c[ca>>2]|0)|0;To(c[q>>2]|0,25,-1,c[ca>>2]|0)|0;mp(c[q>>2]|0,c[ba>>2]|0);rr(c[q>>2]|0,38,c[ca>>2]|0)|0}c[I>>2]=0;while(1){if((c[I>>2]|0)>=(b[(c[A>>2]|0)+38>>1]|0)){break}g:do{if((c[n>>2]|0)==0){c[J>>2]=c[I>>2]}else{c[J>>2]=0;while(1){if((c[J>>2]|0)>=(c[(c[n>>2]|0)+4>>2]|0)){break g}if((c[(c[c[n>>2]>>2]|0)+(c[J>>2]<<3)+4>>2]|0)==(c[I>>2]|0)){break g}c[J>>2]=(c[J>>2]|0)+1}}}while(0);if((a[B>>0]|0)==0?(c[D>>2]|0)==0:0){ha=99}else{ha=97}do{if((ha|0)==97){ha=0;if((c[n>>2]|0)!=0?(c[J>>2]|0)>=(c[(c[n>>2]|0)+4>>2]|0):0){ha=99;break}if((a[B>>0]|0)!=0){Wo(c[q>>2]|0,46,c[u>>2]|0,c[J>>2]|0,(c[ca>>2]|0)+(c[I>>2]|0)+1|0)|0;break}else{_t(c[s>>2]|0,c[(c[(c[D>>2]|0)+4>>2]|0)+((c[J>>2]|0)*20|0)>>2]|0,(c[ca>>2]|0)+(c[I>>2]|0)+1|0);break}}}while(0);if((ha|0)==99){ys(c[s>>2]|0,c[(c[(c[A>>2]|0)+4>>2]|0)+((c[I>>2]|0)*24|0)+4>>2]|0,(c[ca>>2]|0)+(c[I>>2]|0)+1|0)}c[I>>2]=(c[I>>2]|0)+1}if((c[k>>2]|0)==0){$t(c[q>>2]|0,c[A>>2]|0,(c[ca>>2]|0)+1|0)}au(c[s>>2]|0,c[E>>2]|0,108,0,1,c[A>>2]|0,(c[ca>>2]|0)-(b[(c[A>>2]|0)+38>>1]|0)-1|0,c[G>>2]|0,c[H>>2]|0);ls(c[s>>2]|0,c[ca>>2]|0,(b[(c[A>>2]|0)+38>>1]|0)+1|0)}do{if((c[k>>2]|0)==0){if((a[(c[A>>2]|0)+44>>0]&16|0)!=0){To(c[q>>2]|0,28,0,c[C>>2]|0)|0}h:do{if((c[v>>2]|0)>=0){do{if((a[B>>0]|0)!=0){Wo(c[q>>2]|0,46,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0)|0}else{if((c[m>>2]|0)!=0){To(c[q>>2]|0,33,(c[x>>2]|0)+(c[v>>2]|0)|0,c[w>>2]|0)|0;break}ys(c[s>>2]|0,c[(c[(c[D>>2]|0)+4>>2]|0)+((c[v>>2]|0)*20|0)>>2]|0,c[w>>2]|0);c[$>>2]=Ns(c[q>>2]|0,-1)|0;if((c[$>>2]|0)==0){break}if((d[c[$>>2]>>0]|0)!=28){break}if((a[(c[A>>2]|0)+44>>0]&16|0)!=0){break}a[t>>0]=1;a[c[$>>2]>>0]=69;c[(c[$>>2]|0)+4>>2]=c[y>>2];c[(c[$>>2]|0)+8>>2]=c[w>>2];c[(c[$>>2]|0)+12>>2]=c[z>>2]}}while(0);if((a[t>>0]|0)!=0){break}W=c[q>>2]|0;if((a[(c[A>>2]|0)+44>>0]&16|0)!=0){c[P>>2]=vr(W)|0;To(c[q>>2]|0,76,c[w>>2]|0,(c[P>>2]|0)+2|0)|0}else{c[P>>2]=rr(W,77,c[w>>2]|0)|0;Wo(c[q>>2]|0,69,c[y>>2]|0,c[w>>2]|0,c[z>>2]|0)|0;mp(c[q>>2]|0,c[P>>2]|0)}rr(c[q>>2]|0,38,c[w>>2]|0)|0}else{do{if((a[(c[A>>2]|0)+44>>0]&16|0)==0){if((d[X>>0]|0)!=0){break}Wo(c[q>>2]|0,69,c[y>>2]|0,c[w>>2]|0,c[z>>2]|0)|0;a[t>>0]=1;break h}}while(0);To(c[q>>2]|0,28,0,c[w>>2]|0)|0}}while(0);bu(c[s>>2]|0,c[z>>2]|0,c[w>>2]|0);c[K>>2]=0;c[I>>2]=0;while(1){if((c[I>>2]|0)>=(b[(c[A>>2]|0)+38>>1]|0)){break}c[R>>2]=(c[w>>2]|0)+1+(c[I>>2]|0);i:do{if((c[I>>2]|0)==(b[(c[A>>2]|0)+36>>1]|0)){rr(c[q>>2]|0,29,c[R>>2]|0)|0}else{j:do{if((c[n>>2]|0)==0){if((a[(c[(c[A>>2]|0)+4>>2]|0)+((c[I>>2]|0)*24|0)+23>>0]&2|0)!=0){c[J>>2]=-1;c[K>>2]=(c[K>>2]|0)+1;break}else{c[J>>2]=(c[I>>2]|0)-(c[K>>2]|0);break}}else{c[J>>2]=0;while(1){if((c[J>>2]|0)>=(c[(c[n>>2]|0)+4>>2]|0)){break j}if((c[(c[c[n>>2]>>2]|0)+(c[J>>2]<<3)+4>>2]|0)==(c[I>>2]|0)){break j}c[J>>2]=(c[J>>2]|0)+1}}}while(0);do{if((c[J>>2]|0)>=0){if((c[Q>>2]|0)==0){break}if((c[n>>2]|0)!=0?(c[J>>2]|0)>=(c[(c[n>>2]|0)+4>>2]|0):0){break}if((a[B>>0]|0)!=0){Wo(c[q>>2]|0,46,c[u>>2]|0,c[J>>2]|0,c[R>>2]|0)|0;break i}if((c[m>>2]|0)==0){ys(c[s>>2]|0,c[(c[(c[D>>2]|0)+4>>2]|0)+((c[J>>2]|0)*20|0)>>2]|0,c[R>>2]|0);break i}if((c[x>>2]|0)==(c[S>>2]|0)){break i}To(c[q>>2]|0,34,(c[x>>2]|0)+(c[J>>2]|0)|0,c[R>>2]|0)|0;break i}}while(0);cu(c[s>>2]|0,c[(c[(c[A>>2]|0)+4>>2]|0)+((c[I>>2]|0)*24|0)+4>>2]|0,c[R>>2]|0)}}while(0);c[I>>2]=(c[I>>2]|0)+1}if((a[(c[A>>2]|0)+44>>0]&16|0)!=0){c[T>>2]=zp(c[N>>2]|0,c[A>>2]|0)|0;du(c[s>>2]|0,c[A>>2]|0);Vo(c[q>>2]|0,15,1,(b[(c[A>>2]|0)+38>>1]|0)+2|0,c[C>>2]|0,c[T>>2]|0,-10)|0;Se(c[q>>2]|0,((c[G>>2]|0)==10?2:c[G>>2]|0)&255);Ap(c[s>>2]|0);break}else{eu(c[s>>2]|0,c[A>>2]|0,c[o>>2]|0,c[y>>2]|0,c[O>>2]|0,c[C>>2]|0,0,(c[v>>2]|0)>=0&255,c[G>>2]&255,c[H>>2]|0,U);fu(c[s>>2]|0,c[A>>2]|0,0,c[C>>2]|0,0,0);gu(c[s>>2]|0,c[A>>2]|0,c[y>>2]|0,c[O>>2]|0,c[C>>2]|0,c[o>>2]|0,0,d[t>>0]|0,(c[U>>2]|0)==0&1);break}}}while(0);if((c[(c[N>>2]|0)+24>>2]&128|0)!=0){To(c[q>>2]|0,37,c[r>>2]|0,1)|0}if((c[E>>2]|0)!=0){au(c[s>>2]|0,c[E>>2]|0,108,0,2,c[A>>2]|0,(c[S>>2]|0)-2-(b[(c[A>>2]|0)+38>>1]|0)|0,c[G>>2]|0,c[H>>2]|0)}cs(c[q>>2]|0,c[H>>2]|0);do{if((a[B>>0]|0)!=0){To(c[q>>2]|0,9,c[u>>2]|0,c[M>>2]|0)|0;mp(c[q>>2]|0,c[L>>2]|0);rr(c[q>>2]|0,58,c[u>>2]|0)|0}else{if((c[m>>2]|0)==0){break}To(c[q>>2]|0,16,0,c[M>>2]|0)|0;mp(c[q>>2]|0,c[L>>2]|0)}}while(0);if((a[(c[A>>2]|0)+44>>0]&16|0)!=0){break}if((c[k>>2]|0)!=0){break}if((c[y>>2]|0)<(c[O>>2]|0)){rr(c[q>>2]|0,58,c[y>>2]|0)|0}c[V>>2]=0;c[l>>2]=c[(c[A>>2]|0)+8>>2];while(1){if((c[l>>2]|0)==0){break b}rr(c[q>>2]|0,58,(c[V>>2]|0)+(c[O>>2]|0)|0)|0;c[l>>2]=c[(c[l>>2]|0)+20>>2];c[V>>2]=(c[V>>2]|0)+1}}}while(0);if((d[(c[s>>2]|0)+18>>0]|0)==0?(c[(c[s>>2]|0)+412>>2]|0)==0:0){hu(c[s>>2]|0)}if(((c[(c[N>>2]|0)+24>>2]&128|0)!=0?(a[(c[s>>2]|0)+18>>0]|0)==0:0)?(c[(c[s>>2]|0)+412>>2]|0)==0:0){To(c[q>>2]|0,35,c[r>>2]|0,1)|0;ut(c[q>>2]|0,1);vt(c[q>>2]|0,0,0,23344,0)|0}}}}while(0);gn(c[N>>2]|0,c[F>>2]|0);dn(c[N>>2]|0,c[D>>2]|0);en(c[N>>2]|0,c[m>>2]|0);jn(c[N>>2]|0,c[n>>2]|0);Wb(c[N>>2]|0,c[o>>2]|0);i=p;return}function co(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;e=f+16|0;k=f+12|0;g=f+8|0;h=f+4|0;j=f;c[k>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[g>>2]|0)==0?(c[g>>2]=ne(c[k>>2]|0,8)|0,(c[g>>2]|0)==0):0){c[e>>2]=0;a=c[e>>2]|0;i=f;return a|0}d=Tt(c[k>>2]|0,c[c[g>>2]>>2]|0,8,(c[g>>2]|0)+4|0,j)|0;c[c[g>>2]>>2]=d;d=c[k>>2]|0;if((c[j>>2]|0)<0){jn(d,c[g>>2]|0);c[e>>2]=0;a=c[e>>2]|0;i=f;return a|0}else{a=Lo(d,c[h>>2]|0)|0;c[(c[c[g>>2]>>2]|0)+(c[j>>2]<<3)>>2]=a;c[e>>2]=c[g>>2];a=c[e>>2]|0;i=f;return a|0}return 0}function eo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e+4|0;g=e;c[f>>2]=a;c[h>>2]=b;c[g>>2]=d;c[(c[f>>2]|0)+4>>2]=c[c[h>>2]>>2];c[(c[f>>2]|0)+8>>2]=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0);i=e;return}function fo(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+48|0;o=n+8|0;j=n+36|0;r=n+32|0;h=n+28|0;m=n+24|0;k=n+42|0;p=n+20|0;f=n;q=n+16|0;s=n+40|0;l=n+12|0;c[j>>2]=d;c[r>>2]=e;c[h>>2]=c[c[j>>2]>>2];if((c[r>>2]|0)==0){i=n;return}c[m>>2]=c[(c[r>>2]|0)+8>>2];do{if((a[(c[m>>2]|0)+1>>0]|0)!=0){b[k>>1]=0;c[p>>2]=Mb(c[m>>2]|0)|0;if((a[c[m>>2]>>0]|0)==63){c[q>>2]=0==(kg((c[m>>2]|0)+1|0,f,(c[p>>2]|0)-1|0,1)|0)&1;d=c[f>>2]&65535;b[k>>1]=d;b[(c[r>>2]|0)+32>>1]=d;if(!(((c[q>>2]|0)!=0?(d=f,e=c[d+4>>2]|0,!((e|0)<0|(e|0)==0&(c[d>>2]|0)>>>0<1)):0)?(e=f,r=c[e+4>>2]|0,d=c[(c[h>>2]|0)+124>>2]|0,s=((d|0)<0)<<31>>31,!((r|0)>(s|0)|((r|0)==(s|0)?(c[e>>2]|0)>>>0>d>>>0:0))):0)){d=c[j>>2]|0;c[o>>2]=c[(c[h>>2]|0)+124>>2];Ne(d,23152,o);b[k>>1]=0}e=f;r=c[e+4>>2]|0;d=c[(c[j>>2]|0)+440>>2]|0;s=((d|0)<0)<<31>>31;if((r|0)>(s|0)|((r|0)==(s|0)?(c[e>>2]|0)>>>0>d>>>0:0)){c[(c[j>>2]|0)+440>>2]=c[f>>2]}}else{b[s>>1]=0;while(1){if((b[s>>1]|0)>=(c[(c[j>>2]|0)+444>>2]|0)){break}if((c[(c[(c[j>>2]|0)+472>>2]|0)+(b[s>>1]<<2)>>2]|0)!=0?(WD(c[(c[(c[j>>2]|0)+472>>2]|0)+(b[s>>1]<<2)>>2]|0,c[m>>2]|0)|0)==0:0){g=15;break}b[s>>1]=(b[s>>1]|0)+1<<16>>16}if((g|0)==15){d=(b[s>>1]|0)+1&65535;b[k>>1]=d;b[(c[r>>2]|0)+32>>1]=d}if((b[k>>1]|0)==0){e=(c[j>>2]|0)+440|0;d=(c[e>>2]|0)+1|0;c[e>>2]=d;d=d&65535;b[(c[r>>2]|0)+32>>1]=d;b[k>>1]=d}}if((b[k>>1]|0)>0){do{if((b[k>>1]|0)>(c[(c[j>>2]|0)+444>>2]|0)){c[l>>2]=Pm(c[h>>2]|0,c[(c[j>>2]|0)+472>>2]|0,b[k>>1]<<2)|0;if((c[l>>2]|0)==0){i=n;return}else{c[(c[j>>2]|0)+472>>2]=c[l>>2];_D((c[l>>2]|0)+(c[(c[j>>2]|0)+444>>2]<<2)|0,0,(b[k>>1]|0)-(c[(c[j>>2]|0)+444>>2]|0)<<2|0)|0;c[(c[j>>2]|0)+444>>2]=b[k>>1]|0;break}}}while(0);if((a[c[m>>2]>>0]|0)==63?(c[(c[(c[j>>2]|0)+472>>2]|0)+((b[k>>1]|0)-1<<2)>>2]|0)!=0:0){break}Wb(c[h>>2]|0,c[(c[(c[j>>2]|0)+472>>2]|0)+((b[k>>1]|0)-1<<2)>>2]|0);d=gm(c[h>>2]|0,c[m>>2]|0,c[p>>2]|0)|0;c[(c[(c[j>>2]|0)+472>>2]|0)+((b[k>>1]|0)-1<<2)>>2]=d}}else{e=(c[j>>2]|0)+440|0;d=(c[e>>2]|0)+1|0;c[e>>2]=d;b[(c[r>>2]|0)+32>>1]=d}}while(0);if((c[(c[j>>2]|0)+64>>2]|0)!=0){i=n;return}if((c[(c[j>>2]|0)+440>>2]|0)<=(c[(c[h>>2]|0)+124>>2]|0)){i=n;return}Ne(c[j>>2]|0,23200,o);i=n;return}function go(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e+12|0;f=e+8|0;j=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[j>>2]=d;if(!((c[(c[j>>2]|0)+4>>2]|0)>>>0>0)){a=c[f>>2]|0;i=e;return a|0}c[g>>2]=Zq(c[c[h>>2]>>2]|0,95,c[j>>2]|0,1)|0;if((c[g>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}c[(c[g>>2]|0)+12>>2]=c[f>>2];a=(c[g>>2]|0)+4|0;c[a>>2]=c[a>>2]|4352;c[f>>2]=c[g>>2];a=c[f>>2]|0;i=e;return a|0}function ho(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;k=e+16|0;g=e+12|0;l=e+8|0;j=e+4|0;h=e;c[k>>2]=a;c[g>>2]=b;c[l>>2]=d;c[h>>2]=c[c[k>>2]>>2];c[j>>2]=Zq(c[h>>2]|0,153,c[l>>2]|0,1)|0;if((c[j>>2]|0)==0){dn(c[h>>2]|0,c[g>>2]|0);c[f>>2]=0;l=c[f>>2]|0;i=e;return l|0}else{c[(c[j>>2]|0)+20>>2]=c[g>>2];mo(c[k>>2]|0,c[j>>2]|0);c[f>>2]=c[j>>2];l=c[f>>2]|0;i=e;return l|0}return 0}function io(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;m=g+12|0;l=g+8|0;k=g+4|0;j=g;c[h>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;a=Dn(c[m>>2]|0,c[l>>2]|0,c[c[k>>2]>>2]|0,c[c[j>>2]>>2]|0,0)|0;c[c[h>>2]>>2]=a;c[(c[h>>2]|0)+4>>2]=c[(c[k>>2]|0)+4>>2];c[(c[h>>2]|0)+8>>2]=c[(c[j>>2]|0)+8>>2];i=g;return}function jo(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;m=g+12|0;l=g+8|0;k=g+4|0;j=g;c[h>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;a=Dn(c[m>>2]|0,c[l>>2]|0,c[c[k>>2]>>2]|0,0,0)|0;c[c[h>>2]>>2]=a;c[(c[h>>2]|0)+4>>2]=c[(c[k>>2]|0)+4>>2];c[(c[h>>2]|0)+8>>2]=(c[c[j>>2]>>2]|0)+(c[(c[j>>2]|0)+4>>2]|0);i=g;return}function ko(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;l=h;c[n>>2]=b;c[m>>2]=e;c[k>>2]=f;c[j>>2]=g;c[l>>2]=c[c[n>>2]>>2];if((d[(c[l>>2]|0)+64>>0]|0|0)!=0){i=h;return}if((d[c[m>>2]>>0]|0|0)!=101){i=h;return}a[c[k>>2]>>0]=c[j>>2];hn(c[l>>2]|0,c[(c[k>>2]|0)+16>>2]|0);c[(c[k>>2]|0)+16>>2]=0;i=h;return}function lo(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;m=g+12|0;l=g+8|0;j=g+4|0;k=g;c[h>>2]=a;c[m>>2]=b;c[l>>2]=d;c[j>>2]=e;c[k>>2]=f;a=Dn(c[m>>2]|0,c[l>>2]|0,c[c[j>>2]>>2]|0,0,0)|0;c[c[h>>2]>>2]=a;c[(c[h>>2]|0)+4>>2]=c[c[k>>2]>>2];c[(c[h>>2]|0)+8>>2]=c[(c[j>>2]|0)+8>>2];i=g;return}function mo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;$q(c[e>>2]|0);zq(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0)|0;i=d;return}function no(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=i;i=i+64|0;j=l;h=l+52|0;f=l+48|0;k=l+44|0;m=l+40|0;n=l+36|0;g=l+32|0;r=l+28|0;o=l+24|0;p=l+20|0;q=l+16|0;s=l+12|0;c[h>>2]=b;c[f>>2]=d;c[k>>2]=e;c[g>>2]=c[c[h>>2]>>2];if((a[(c[g>>2]|0)+64>>0]|0)!=0){d=c[g>>2]|0;b=c[f>>2]|0;gn(d,b);i=l;return}if(0!=(jr(c[h>>2]|0)|0)){d=c[g>>2]|0;b=c[f>>2]|0;gn(d,b);i=l;return}c[m>>2]=wp(c[g>>2]|0,c[(c[f>>2]|0)+16>>2]|0,c[(c[f>>2]|0)+12>>2]|0)|0;if((c[m>>2]|0)==0){n=c[h>>2]|0;m=c[f>>2]|0;if((c[k>>2]|0)!=0){ht(n,c[m+12>>2]|0)}else{c[j>>2]=m;c[j+4>>2]=0;Ne(n,22912,j)}a[(c[h>>2]|0)+17>>0]=1;d=c[g>>2]|0;b=c[f>>2]|0;gn(d,b);i=l;return}if((a[(c[m>>2]|0)+55>>0]&3|0)!=0){d=c[h>>2]|0;c[j>>2]=0;Ne(d,22936,j);d=c[g>>2]|0;b=c[f>>2]|0;gn(d,b);i=l;return}c[r>>2]=Qe(c[g>>2]|0,c[(c[m>>2]|0)+24>>2]|0)|0;c[o>>2]=10;c[p>>2]=c[(c[m>>2]|0)+12>>2];c[q>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[r>>2]<<4)>>2];c[s>>2]=(c[r>>2]|0)==1?14808:14832;if((Oo(c[h>>2]|0,9,c[s>>2]|0,0,c[q>>2]|0)|0)!=0){d=c[g>>2]|0;b=c[f>>2]|0;gn(d,b);i=l;return}if((c[r>>2]|0)!=0){c[o>>2]=12}if((Oo(c[h>>2]|0,c[o>>2]|0,c[c[m>>2]>>2]|0,c[c[p>>2]>>2]|0,c[q>>2]|0)|0)!=0){d=c[g>>2]|0;b=c[f>>2]|0;gn(d,b);i=l;return}c[n>>2]=Ro(c[h>>2]|0)|0;if((c[n>>2]|0)==0){d=c[g>>2]|0;b=c[f>>2]|0;gn(d,b);i=l;return}cp(c[h>>2]|0,1,c[r>>2]|0);d=c[h>>2]|0;s=(c[r>>2]|0)==1?14808:14832;b=c[c[m>>2]>>2]|0;c[j>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[r>>2]<<4)>>2];c[j+4>>2]=s;c[j+8>>2]=b;Qo(d,23016,j);Rt(c[h>>2]|0,c[r>>2]|0,18064,c[c[m>>2]>>2]|0);So(c[h>>2]|0,c[r>>2]|0);St(c[h>>2]|0,c[(c[m>>2]|0)+44>>2]|0,c[r>>2]|0);Vo(c[n>>2]|0,122,c[r>>2]|0,0,0,c[c[m>>2]>>2]|0,0)|0;d=c[g>>2]|0;b=c[f>>2]|0;gn(d,b);i=l;return}function oo(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=Ro(c[e>>2]|0)|0;if((c[d>>2]|0)==0){i=b;return}To(c[d>>2]|0,13,0,0)|0;Ue(c[d>>2]|0,0);i=b;return}function po(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0;o=i;i=i+512|0;t=o+24|0;q=o+496|0;yb=o+492|0;sa=o+488|0;wb=o+484|0;vb=o+480|0;m=o+476|0;n=o+472|0;H=o+468|0;xb=o+464|0;ub=o+448|0;s=o+440|0;_a=o+436|0;Za=o+432|0;Ba=o+428|0;Ya=o+424|0;l=o+420|0;Va=o+416|0;p=o+412|0;tb=o+408|0;Na=o+404|0;Oa=o+400|0;Xa=o+396|0;na=o+392|0;ua=o+388|0;ta=o+384|0;va=o+380|0;ea=o+376|0;Wa=o+372|0;$a=o+368|0;pa=o+364|0;qa=o+360|0;Pa=o+356|0;ra=o+352|0;Aa=o+348|0;bb=o+344|0;Ua=o+340|0;Ta=o+16|0;Ma=o+336|0;Ka=o+332|0;La=o+328|0;Qa=o+324|0;Ra=o+320|0;Ja=o+316|0;Sa=o+8|0;za=o+312|0;ma=o+308|0;ha=o+304|0;ja=o+300|0;ga=o+296|0;ka=o+292|0;ia=o+288|0;fa=o+284|0;Ca=o+280|0;Ea=o+276|0;Da=o+272|0;Ha=o+268|0;Fa=o+264|0;Ia=o+260|0;Ga=o+500|0;xa=o+256|0;ya=o+252|0;wa=o+248|0;ib=o+244|0;sb=o+240|0;qb=o+236|0;rb=o+232|0;kb=o+228|0;pb=o+224|0;lb=o+220|0;jb=o+216|0;mb=o+212|0;nb=o+208|0;ob=o+204|0;_=o+200|0;da=o+196|0;Z=o+192|0;Y=o+188|0;$=o+184|0;G=o+180|0;ca=o+176|0;X=o+172|0;aa=o+168|0;S=o+164|0;ba=o+160|0;W=o+156|0;U=o+152|0;V=o+148|0;T=o+144|0;N=o+140|0;K=o+136|0;Q=o+132|0;P=o+128|0;w=o+124|0;x=o+120|0;u=o+116|0;O=o+112|0;R=o+108|0;v=o+104|0;J=o+100|0;I=o+96|0;y=o+92|0;E=o+88|0;L=o+84|0;M=o+80|0;B=o+76|0;C=o+72|0;A=o+68|0;F=o+64|0;z=o+60|0;la=o+56|0;ab=o+52|0;oa=o+48|0;cb=o+44|0;fb=o+40|0;gb=o+36|0;db=o+32|0;eb=o+28|0;hb=o;c[q>>2]=f;c[yb>>2]=g;c[sa>>2]=h;c[wb>>2]=j;c[vb>>2]=k;c[m>>2]=0;c[n>>2]=0;c[H>>2]=0;c[l>>2]=c[c[q>>2]>>2];c[p>>2]=Ro(c[q>>2]|0)|0;if((c[p>>2]|0)==0){i=o;return}tt(c[p>>2]|0);c[(c[q>>2]|0)+72>>2]=2;c[s>>2]=nr(c[q>>2]|0,c[yb>>2]|0,c[sa>>2]|0,xb)|0;if((c[s>>2]|0)<0){i=o;return}c[Va>>2]=(c[(c[l>>2]|0)+16>>2]|0)+(c[s>>2]<<4);if((c[s>>2]|0)==1?(ep(c[q>>2]|0)|0)!=0:0){i=o;return}c[m>>2]=Lo(c[l>>2]|0,c[xb>>2]|0)|0;if((c[m>>2]|0)==0){i=o;return}g=c[l>>2]|0;wb=c[wb>>2]|0;if((c[vb>>2]|0)!=0){c[t>>2]=wb;c[n>>2]=Oe(g,20168,t)|0}else{c[n>>2]=Lo(g,wb)|0}if((c[(c[sa>>2]|0)+4>>2]|0)>>>0>0){vb=c[c[Va>>2]>>2]|0}else{vb=0}c[H>>2]=vb;a:do{if((Oo(c[q>>2]|0,19,c[m>>2]|0,c[n>>2]|0,c[H>>2]|0)|0)==0){c[ub>>2]=0;c[ub+4>>2]=c[m>>2];c[ub+8>>2]=c[n>>2];c[ub+12>>2]=0;c[(c[l>>2]|0)+444>>2]=0;c[Ya>>2]=ag(c[l>>2]|0,c[H>>2]|0,14,ub)|0;if((c[Ya>>2]|0)==0){if((c[ub>>2]|0)==0){break}k=(c[q>>2]|0)+72|0;h=(c[k>>2]|0)+1|0;c[k>>2]=h;c[tb>>2]=h;Vo(c[p>>2]|0,97,0,c[tb>>2]|0,0,c[ub>>2]|0,0)|0;ut(c[p>>2]|0,1);vt(c[p>>2]|0,0,0,20176,0)|0;To(c[p>>2]|0,35,c[tb>>2]|0,1)|0;gc(c[ub>>2]|0);break}if((c[Ya>>2]|0)!=12){if((c[ub>>2]|0)!=0){h=c[q>>2]|0;c[t>>2]=c[ub>>2];Ne(h,1456,t);gc(c[ub>>2]|0)}h=(c[q>>2]|0)+64|0;c[h>>2]=(c[h>>2]|0)+1;c[(c[q>>2]|0)+12>>2]=c[Ya>>2];break}c[_a>>2]=0;c[Za>>2]=53;while(1){if((c[_a>>2]|0)>(c[Za>>2]|0)){break}c[Ba>>2]=((c[_a>>2]|0)+(c[Za>>2]|0)|0)/2|0;c[Ya>>2]=vc(c[m>>2]|0,c[20184+((c[Ba>>2]|0)*12|0)>>2]|0)|0;if((c[Ya>>2]|0)==0){break}tb=c[Ba>>2]|0;if((c[Ya>>2]|0)<0){c[Za>>2]=tb-1;continue}else{c[_a>>2]=tb+1;continue}}if((c[_a>>2]|0)<=(c[Za>>2]|0)){if((a[20189+((c[Ba>>2]|0)*12|0)>>0]&1|0)!=0?(jr(c[q>>2]|0)|0)!=0:0){break}do{switch(d[20188+((c[Ba>>2]|0)*12|0)>>0]|0){case 24:{c[Xa>>2]=c[(c[Va>>2]|0)+4>>2];if((c[n>>2]|0)!=0){h=qg(c[n>>2]|0)|0;c[(c[l>>2]|0)+72>>2]=h;if(7!=(dg(c[Xa>>2]|0,c[(c[l>>2]|0)+72>>2]|0,-1,0)|0)){break a}a[(c[l>>2]|0)+64>>0]=1;break a}if((c[Xa>>2]|0)!=0){p=Rc(c[Xa>>2]|0)|0}else{p=0}c[na>>2]=p;h=c[na>>2]|0;wt(c[q>>2]|0,20888,h,((h|0)<0)<<31>>31);break a};case 29:{if((c[n>>2]|0)==0){h=(d[(c[Va>>2]|0)+8>>0]|0)-1|0;wt(c[q>>2]|0,21128,h,((h|0)<0)<<31>>31);break a}if((a[(c[l>>2]|0)+62>>0]|0)!=0){h=((pg(c[n>>2]|0,0,1)|0)&255)+1&255;a[(c[Va>>2]|0)+8>>0]=h;Ft(c[l>>2]|0);break a}else{Ne(c[q>>2]|0,21144,t);break a}};case 30:{if((c[n>>2]|0)==0){break a}c[ha>>2]=fp(c[l>>2]|0,c[n>>2]|0,c[H>>2]|0)|0;if((c[ha>>2]|0)==0){break a}c[ka>>2]=0;c[fa>>2]=Gr(c[ha>>2]|0)|0;ut(c[p>>2]|0,6);c[(c[q>>2]|0)+72>>2]=6;dp(c[q>>2]|0,c[s>>2]|0);vt(c[p>>2]|0,0,0,21200,0)|0;vt(c[p>>2]|0,1,0,21208,0)|0;vt(c[p>>2]|0,2,0,21216,0)|0;vt(c[p>>2]|0,3,0,21224,0)|0;vt(c[p>>2]|0,4,0,21232,0)|0;vt(c[p>>2]|0,5,0,21248,0)|0;yp(c[q>>2]|0,c[ha>>2]|0)|0;c[ja>>2]=0;c[ia>>2]=c[(c[ha>>2]|0)+4>>2];while(1){if((c[ja>>2]|0)>=(b[(c[ha>>2]|0)+38>>1]|0)){break a}if((a[(c[ia>>2]|0)+23>>0]&2|0)!=0){c[ka>>2]=(c[ka>>2]|0)+1}else{To(c[p>>2]|0,25,(c[ja>>2]|0)-(c[ka>>2]|0)|0,1)|0;Vo(c[p>>2]|0,97,0,2,0,c[c[ia>>2]>>2]|0,0)|0;if((c[(c[ia>>2]|0)+12>>2]|0)!=0){q=c[(c[ia>>2]|0)+12>>2]|0}else{q=1472}Vo(c[p>>2]|0,97,0,3,0,q,0)|0;To(c[p>>2]|0,25,(d[(c[ia>>2]|0)+20>>0]|0)!=0?1:0,4)|0;q=c[p>>2]|0;if((c[(c[ia>>2]|0)+8>>2]|0)!=0){Vo(q,97,0,5,0,c[(c[ia>>2]|0)+8>>2]|0,0)|0}else{To(q,28,0,5)|0}b:do{if((a[(c[ia>>2]|0)+23>>0]&1|0)==0){c[ga>>2]=0}else{h=(c[fa>>2]|0)==0;c[ga>>2]=1;if(h){break}while(1){if((c[ga>>2]|0)>(b[(c[ha>>2]|0)+38>>1]|0)){break b}if((b[(c[(c[fa>>2]|0)+4>>2]|0)+((c[ga>>2]|0)-1<<1)>>1]|0)==(c[ja>>2]|0)){break b}c[ga>>2]=(c[ga>>2]|0)+1}}}while(0);To(c[p>>2]|0,25,c[ga>>2]|0,6)|0;To(c[p>>2]|0,35,1,6)|0}c[ja>>2]=(c[ja>>2]|0)+1;c[ia>>2]=(c[ia>>2]|0)+24}};case 10:{Ue(c[p>>2]|0,c[s>>2]|0);if((c[n>>2]|0)!=0){c[Oa>>2]=Nr(qg(c[n>>2]|0)|0)|0;cp(c[q>>2]|0,0,c[s>>2]|0);To(c[p>>2]|0,25,c[Oa>>2]|0,1)|0;Wo(c[p>>2]|0,51,c[s>>2]|0,3,1)|0;c[(c[(c[Va>>2]|0)+12>>2]|0)+80>>2]=c[Oa>>2];Or(c[(c[Va>>2]|0)+4>>2]|0,c[(c[(c[Va>>2]|0)+12>>2]|0)+80>>2]|0)|0;break a}else{ut(c[p>>2]|0,1);vt(c[p>>2]|0,0,0,20872,0)|0;h=(c[q>>2]|0)+72|0;c[h>>2]=(c[h>>2]|0)+2;c[Na>>2]=Te(c[p>>2]|0,9,20832,0)|0;Ve(c[p>>2]|0,c[Na>>2]|0,c[s>>2]|0);Ve(c[p>>2]|0,(c[Na>>2]|0)+1|0,c[s>>2]|0);Ve(c[p>>2]|0,(c[Na>>2]|0)+6|0,2e3);break a}};case 1:{c[Ma>>2]=c[(c[Va>>2]|0)+4>>2];if((c[n>>2]|0)==0){k=c[q>>2]|0;h=At(c[Ma>>2]|0)|0;wt(k,21e3,h,((h|0)<0)<<31>>31);break a}c[Ka>>2]=Bt(c[n>>2]|0)|0;a[(c[l>>2]|0)+66>>0]=c[Ka>>2];c[Ya>>2]=Ct(c[Ma>>2]|0,c[Ka>>2]|0)|0;if((c[Ya>>2]|0)!=0){break a}if(!((c[Ka>>2]|0)==1|(c[Ka>>2]|0)==2)){break a}c[La>>2]=Te(c[p>>2]|0,6,21016,0)|0;Ve(c[p>>2]|0,c[La>>2]|0,c[s>>2]|0);Ve(c[p>>2]|0,(c[La>>2]|0)+1|0,c[s>>2]|0);We(c[p>>2]|0,(c[La>>2]|0)+2|0,(c[La>>2]|0)+4|0);Ve(c[p>>2]|0,(c[La>>2]|0)+4|0,(c[Ka>>2]|0)-1|0);Ve(c[p>>2]|0,(c[La>>2]|0)+5|0,c[s>>2]|0);Ue(c[p>>2]|0,c[s>>2]|0);break a};case 4:{if((c[n>>2]|0)!=0){c[Ja>>2]=qg(c[n>>2]|0)|0;c[(c[(c[Va>>2]|0)+12>>2]|0)+80>>2]=c[Ja>>2];Or(c[(c[Va>>2]|0)+4>>2]|0,c[(c[(c[Va>>2]|0)+12>>2]|0)+80>>2]|0)|0;break a}else{h=c[(c[(c[Va>>2]|0)+12>>2]|0)+80>>2]|0;wt(c[q>>2]|0,20872,h,((h|0)<0)<<31>>31);break a}};case 15:{if((c[n>>2]|0)==0){break a}c[Ha>>2]=wp(c[l>>2]|0,c[n>>2]|0,c[H>>2]|0)|0;if((c[Ha>>2]|0)==0){break a}c[Fa>>2]=c[(c[Ha>>2]|0)+12>>2];ut(c[p>>2]|0,3);c[(c[q>>2]|0)+72>>2]=3;dp(c[q>>2]|0,c[s>>2]|0);vt(c[p>>2]|0,0,0,21280,0)|0;vt(c[p>>2]|0,1,0,21200,0)|0;vt(c[p>>2]|0,2,0,21208,0)|0;c[Ia>>2]=0;while(1){if((c[Ia>>2]|0)>=(e[(c[Ha>>2]|0)+50>>1]|0)){break a}b[Ga>>1]=b[(c[(c[Ha>>2]|0)+4>>2]|0)+(c[Ia>>2]<<1)>>1]|0;To(c[p>>2]|0,25,c[Ia>>2]|0,1)|0;To(c[p>>2]|0,25,b[Ga>>1]|0,2)|0;Vo(c[p>>2]|0,97,0,3,0,c[(c[(c[Fa>>2]|0)+4>>2]|0)+((b[Ga>>1]|0)*24|0)>>2]|0,0)|0;To(c[p>>2]|0,35,1,3)|0;c[Ia>>2]=(c[Ia>>2]|0)+1}};case 28:{c[p>>2]=Ro(c[q>>2]|0)|0;ut(c[p>>2]|0,4);c[(c[q>>2]|0)+72>>2]=4;dp(c[q>>2]|0,c[s>>2]|0);vt(c[p>>2]|0,0,0,21256,0)|0;vt(c[p>>2]|0,1,0,10072,0)|0;vt(c[p>>2]|0,2,0,21264,0)|0;vt(c[p>>2]|0,3,0,21272,0)|0;c[Ea>>2]=c[(c[(c[Va>>2]|0)+12>>2]|0)+16>>2];while(1){if((c[Ea>>2]|0)==0){break a}c[Da>>2]=c[(c[Ea>>2]|0)+8>>2];Vo(c[p>>2]|0,97,0,1,0,c[c[Da>>2]>>2]|0,0)|0;To(c[p>>2]|0,28,0,2)|0;h=c[p>>2]|0;k=Gt(b[(c[Da>>2]|0)+42>>1]|0)|0;To(h,25,k,3)|0;k=c[p>>2]|0;h=Gt(b[(c[Da>>2]|0)+28>>1]|0)|0;To(k,25,h,4)|0;To(c[p>>2]|0,35,1,4)|0;c[Ca>>2]=c[(c[Da>>2]|0)+8>>2];while(1){if((c[Ca>>2]|0)==0){break}Vo(c[p>>2]|0,97,0,2,0,c[c[Ca>>2]>>2]|0,0)|0;h=c[p>>2]|0;k=Gt(b[(c[Ca>>2]|0)+48>>1]|0)|0;To(h,25,k,3)|0;k=c[p>>2]|0;h=Gt(b[c[(c[Ca>>2]|0)+8>>2]>>1]|0)|0;To(k,25,h,4)|0;To(c[p>>2]|0,35,1,4)|0;c[Ca>>2]=c[(c[Ca>>2]|0)+20>>2]}c[Ea>>2]=c[c[Ea>>2]>>2]}};case 2:{if((c[n>>2]|0)==0){h=(c[(c[l>>2]|0)+24>>2]&c[20192+((c[Ba>>2]|0)*12|0)>>2]|0)!=0&1;wt(c[q>>2]|0,c[20184+((c[Ba>>2]|0)*12|0)>>2]|0,h,((h|0)<0)<<31>>31);break a}c[ma>>2]=c[20192+((c[Ba>>2]|0)*12|0)>>2];if((d[(c[l>>2]|0)+62>>0]|0)==0){c[ma>>2]=c[ma>>2]&-524289}h=(jg(c[n>>2]|0,0)|0)<<24>>24!=0;q=c[ma>>2]|0;if(!h){h=(c[l>>2]|0)+24|0;c[h>>2]=c[h>>2]&~q;if((c[ma>>2]|0)==16777216){h=(c[l>>2]|0)+504|0;c[h>>2]=0;c[h+4>>2]=0}}else{h=(c[l>>2]|0)+24|0;c[h>>2]=c[h>>2]|q}To(c[p>>2]|0,139,0,0)|0;Ft(c[l>>2]|0);break a};case 31:{p=c[q>>2]|0;if((c[n>>2]|0)!=0){Dt(p,c[n>>2]|0)|0;break a}else{wt(p,21056,d[(c[l>>2]|0)+63>>0]|0,0);break a}};case 32:{if((c[n>>2]|0)==0){if((c[392]|0)==0){break a}ut(c[p>>2]|0,1);vt(c[p>>2]|0,0,0,21072,0)|0;Vo(c[p>>2]|0,97,0,1,0,c[392]|0,0)|0;To(c[p>>2]|0,35,1,1)|0;break a}do{if((a[c[n>>2]>>0]|0)!=0){c[Ya>>2]=pi(c[c[l>>2]>>2]|0,c[n>>2]|0,1,za)|0;if((c[Ya>>2]|0)==0?(c[za>>2]|0)!=0:0){break}Ne(c[q>>2]|0,21096,t);break a}}while(0);if((d[(c[l>>2]|0)+63>>0]|0)<=1){Et(c[q>>2]|0)|0}gc(c[392]|0);if((a[c[n>>2]>>0]|0)!=0){c[t>>2]=c[n>>2];c[392]=oc(1456,t)|0;break a}else{c[392]=0;break a}};case 16:{if((c[n>>2]|0)==0){break a}c[ya>>2]=fp(c[l>>2]|0,c[n>>2]|0,c[H>>2]|0)|0;if((c[ya>>2]|0)==0){break a}c[p>>2]=Ro(c[q>>2]|0)|0;ut(c[p>>2]|0,3);c[(c[q>>2]|0)+72>>2]=3;dp(c[q>>2]|0,c[s>>2]|0);vt(c[p>>2]|0,0,0,21288,0)|0;vt(c[p>>2]|0,1,0,21208,0)|0;vt(c[p>>2]|0,2,0,21296,0)|0;c[xa>>2]=c[(c[ya>>2]|0)+8>>2];c[wa>>2]=0;while(1){if((c[xa>>2]|0)==0){break a}To(c[p>>2]|0,25,c[wa>>2]|0,1)|0;Vo(c[p>>2]|0,97,0,2,0,c[c[xa>>2]>>2]|0,0)|0;To(c[p>>2]|0,25,(d[(c[xa>>2]|0)+54>>0]|0)!=0&1,3)|0;To(c[p>>2]|0,35,1,3)|0;c[xa>>2]=c[(c[xa>>2]|0)+20>>2];c[wa>>2]=(c[wa>>2]|0)+1}};case 25:{c[ua>>2]=c[(c[Va>>2]|0)+4>>2];c[ta>>2]=-1;if((c[n>>2]|0)!=0){c[ta>>2]=(jg(c[n>>2]|0,0)|0)&255}c:do{if((c[(c[sa>>2]|0)+4>>2]|0)==0?(c[ta>>2]|0)>=0:0){c[va>>2]=0;while(1){if((c[va>>2]|0)>=(c[(c[l>>2]|0)+20>>2]|0)){break c}dt(c[(c[(c[l>>2]|0)+16>>2]|0)+(c[va>>2]<<4)+4>>2]|0,c[ta>>2]|0)|0;c[va>>2]=(c[va>>2]|0)+1}}}while(0);c[ta>>2]=dt(c[ua>>2]|0,c[ta>>2]|0)|0;h=c[ta>>2]|0;wt(c[q>>2]|0,20904,h,((h|0)<0)<<31>>31);break a};case 18:{ut(c[p>>2]|0,1);vt(c[p>>2]|0,0,0,20960,0)|0;if((c[n>>2]|0)!=0){c[bb>>2]=Mb(c[n>>2]|0)|0;c[Pa>>2]=0;while(1){h=yt(c[Pa>>2]|0)|0;c[Aa>>2]=h;if((h|0)==0){break}if((Lb(c[n>>2]|0,c[Aa>>2]|0,c[bb>>2]|0)|0)==0){break}c[Pa>>2]=(c[Pa>>2]|0)+1}if((c[Aa>>2]|0)==0){c[Pa>>2]=-1}}else{c[Pa>>2]=-1}if((c[Pa>>2]|0)==-1?(c[(c[sa>>2]|0)+4>>2]|0)==0:0){c[s>>2]=0;c[(c[sa>>2]|0)+4>>2]=1}c[ra>>2]=(c[(c[l>>2]|0)+20>>2]|0)-1;while(1){if((c[ra>>2]|0)<0){break}do{if((c[(c[(c[l>>2]|0)+16>>2]|0)+(c[ra>>2]<<4)+4>>2]|0)!=0){if((c[ra>>2]|0)!=(c[s>>2]|0)?(c[(c[sa>>2]|0)+4>>2]|0)!=0:0){break}Ue(c[p>>2]|0,c[ra>>2]|0);Wo(c[p>>2]|0,12,c[ra>>2]|0,1,c[Pa>>2]|0)|0}}while(0);c[ra>>2]=(c[ra>>2]|0)+ -1}To(c[p>>2]|0,35,1,1)|0;break a};case 22:{dp(c[q>>2]|0,c[s>>2]|0);r=(c[q>>2]|0)+72|0;q=(c[r>>2]|0)+1|0;c[r>>2]=q;c[ea>>2]=q;q=c[p>>2]|0;s=c[s>>2]|0;r=c[ea>>2]|0;if((d[696+(d[c[m>>2]>>0]|0)>>0]|0)==112){To(q,153,s,r)|0}else{Wo(q,154,s,r,Nr(qg(c[n>>2]|0)|0)|0)|0}To(c[p>>2]|0,35,c[ea>>2]|0,1)|0;ut(c[p>>2]|0,1);vt(c[p>>2]|0,0,0,c[m>>2]|0,-1)|0;break a};case 14:{if(!((c[n>>2]|0)!=0?(h=(rg(c[n>>2]|0,Qa)|0)==0,!(h|(c[Qa>>2]|0)<=0)):0)){c[Qa>>2]=2147483647}cp(c[q>>2]|0,0,c[s>>2]|0);To(c[p>>2]|0,25,c[Qa>>2]|0,1)|0;c[Ra>>2]=rr(c[p>>2]|0,138,c[s>>2]|0)|0;rr(c[p>>2]|0,35,1)|0;To(c[p>>2]|0,37,1,-1)|0;To(c[p>>2]|0,134,1,c[Ra>>2]|0)|0;mp(c[p>>2]|0,c[Ra>>2]|0);break a};case 23:{h=Sa;c[h>>2]=0;c[h+4>>2]=0;c[Ya>>2]=0;if((c[Ya>>2]|0)==0){h=Sa;wt(c[q>>2]|0,21040,c[h>>2]|0,c[h+4>>2]|0);break a}if((c[Ya>>2]|0)==12){break a}h=(c[q>>2]|0)+64|0;c[h>>2]=(c[h>>2]|0)+1;c[(c[q>>2]|0)+12>>2]=c[Ya>>2];break a};case 19:{c[Ua>>2]=Rb(c[(c[Va>>2]|0)+4>>2]|0)|0;h=Ta;c[h>>2]=-2;c[h+4>>2]=-1;if((c[n>>2]|0)!=0?(h=c[n>>2]|0,kg(h,Ta,Mb(c[n>>2]|0)|0,1)|0,h=Ta,k=c[h+4>>2]|0,(k|0)<-1|(k|0)==-1&(c[h>>2]|0)>>>0<4294967295):0){h=Ta;c[h>>2]=-1;c[h+4>>2]=-1}k=Ta;k=zt(c[Ua>>2]|0,c[k>>2]|0,c[k+4>>2]|0)|0;h=Ta;c[h>>2]=k;c[h+4>>2]=D;h=Ta;wt(c[q>>2]|0,20976,c[h>>2]|0,c[h+4>>2]|0);break a};case 21:{c[Wa>>2]=20920;c[$a>>2]=xt(c[n>>2]|0)|0;if((c[(c[sa>>2]|0)+4>>2]|0)==0?(c[$a>>2]|0)==-1:0){c[$a>>2]=d[(c[l>>2]|0)+65>>0]|0}else{if((c[(c[sa>>2]|0)+4>>2]|0)==0){c[qa>>2]=2;while(1){if((c[qa>>2]|0)>=(c[(c[l>>2]|0)+20>>2]|0)){break}c[pa>>2]=Rb(c[(c[(c[l>>2]|0)+16>>2]|0)+(c[qa>>2]<<4)+4>>2]|0)|0;ct(c[pa>>2]|0,c[$a>>2]|0)|0;c[qa>>2]=(c[qa>>2]|0)+1}a[(c[l>>2]|0)+65>>0]=c[$a>>2]}c[pa>>2]=Rb(c[(c[Va>>2]|0)+4>>2]|0)|0;c[$a>>2]=ct(c[pa>>2]|0,c[$a>>2]|0)|0}if((c[$a>>2]|0)==1){c[Wa>>2]=20928}ut(c[p>>2]|0,1);vt(c[p>>2]|0,0,0,20944,0)|0;Vo(c[p>>2]|0,97,0,1,0,c[Wa>>2]|0,0)|0;To(c[p>>2]|0,35,1,1)|0;break a};case 12:{c[aa>>2]=(c[(c[q>>2]|0)+72>>2]|0)+1;h=(c[q>>2]|0)+72|0;c[h>>2]=(c[h>>2]|0)+4;h=(c[q>>2]|0)+72|0;k=(c[h>>2]|0)+1|0;c[h>>2]=k;c[S>>2]=k;k=(c[q>>2]|0)+72|0;h=(c[k>>2]|0)+1|0;c[k>>2]=h;c[ba>>2]=h;c[p>>2]=Ro(c[q>>2]|0)|0;ut(c[p>>2]|0,4);vt(c[p>>2]|0,0,0,21256,0)|0;vt(c[p>>2]|0,1,0,9896,0)|0;vt(c[p>>2]|0,2,0,21384,0)|0;vt(c[p>>2]|0,3,0,21392,0)|0;dp(c[q>>2]|0,c[s>>2]|0);c[ca>>2]=c[(c[(c[(c[l>>2]|0)+16>>2]|0)+(c[s>>2]<<4)+12>>2]|0)+16>>2];while(1){if((c[ca>>2]|0)==0){break a}if((c[n>>2]|0)!=0){c[da>>2]=Me(c[q>>2]|0,0,c[n>>2]|0,c[H>>2]|0)|0;c[ca>>2]=0}else{c[da>>2]=c[(c[ca>>2]|0)+8>>2];c[ca>>2]=c[c[ca>>2]>>2]}if((c[da>>2]|0)==0){continue}if((c[(c[da>>2]|0)+16>>2]|0)==0){continue}sr(c[q>>2]|0,c[s>>2]|0,c[(c[da>>2]|0)+32>>2]|0,0,c[c[da>>2]>>2]|0);if(((b[(c[da>>2]|0)+38>>1]|0)+(c[ba>>2]|0)|0)>(c[(c[q>>2]|0)+72>>2]|0)){c[(c[q>>2]|0)+72>>2]=(b[(c[da>>2]|0)+38>>1]|0)+(c[ba>>2]|0)}tr(c[q>>2]|0,0,c[s>>2]|0,c[da>>2]|0,52);Vo(c[p>>2]|0,97,0,c[aa>>2]|0,0,c[c[da>>2]>>2]|0,0)|0;c[$>>2]=1;c[_>>2]=c[(c[da>>2]|0)+16>>2];d:while(1){if((c[_>>2]|0)==0){break}c[Z>>2]=fp(c[l>>2]|0,c[(c[_>>2]|0)+8>>2]|0,c[H>>2]|0)|0;do{if((c[Z>>2]|0)!=0){c[Y>>2]=0;sr(c[q>>2]|0,c[s>>2]|0,c[(c[Z>>2]|0)+32>>2]|0,0,c[c[Z>>2]>>2]|0);c[X>>2]=It(c[q>>2]|0,c[Z>>2]|0,c[_>>2]|0,Y,0)|0;if((c[X>>2]|0)!=0){r=198;break d}if((c[Y>>2]|0)==0){tr(c[q>>2]|0,c[$>>2]|0,c[s>>2]|0,c[Z>>2]|0,52);break}else{Wo(c[p>>2]|0,52,c[$>>2]|0,c[(c[Y>>2]|0)+44>>2]|0,c[s>>2]|0)|0;ur(c[q>>2]|0,c[Y>>2]|0);break}}}while(0);c[$>>2]=(c[$>>2]|0)+1;c[_>>2]=c[(c[_>>2]|0)+4>>2]}if((r|0)==198){r=0;c[ca>>2]=0}if((c[_>>2]|0)!=0){break a}if((c[(c[q>>2]|0)+68>>2]|0)<(c[$>>2]|0)){c[(c[q>>2]|0)+68>>2]=c[$>>2]}c[W>>2]=rr(c[p>>2]|0,105,0)|0;c[$>>2]=1;c[_>>2]=c[(c[da>>2]|0)+16>>2];while(1){if((c[_>>2]|0)==0){break}c[Z>>2]=fp(c[l>>2]|0,c[(c[_>>2]|0)+8>>2]|0,c[H>>2]|0)|0;c[Y>>2]=0;c[V>>2]=0;if((c[Z>>2]|0)!=0){c[X>>2]=It(c[q>>2]|0,c[Z>>2]|0,c[_>>2]|0,Y,V)|0}c[U>>2]=fs(c[p>>2]|0)|0;do{if((c[Z>>2]|0)!=0){if((c[Y>>2]|0)!=0){r=213;break}c[T>>2]=c[(c[_>>2]|0)+36>>2];t=c[p>>2]|0;if((c[T>>2]|0)!=(b[(c[da>>2]|0)+36>>1]|0)){Wo(t,46,0,c[T>>2]|0,c[ba>>2]|0)|0;os(c[p>>2]|0,c[da>>2]|0,c[T>>2]|0,c[ba>>2]|0);To(c[p>>2]|0,76,c[ba>>2]|0,c[U>>2]|0)|0;k=c[p>>2]|0;h=c[ba>>2]|0;To(k,38,h,(vr(c[p>>2]|0)|0)+3|0)|0}else{To(t,100,0,c[ba>>2]|0)|0}Wo(c[p>>2]|0,67,c[$>>2]|0,0,c[ba>>2]|0)|0;To(c[p>>2]|0,16,0,c[U>>2]|0)|0;h=c[p>>2]|0;mp(h,(vr(c[p>>2]|0)|0)-2|0)}else{r=213}}while(0);do{if((r|0)==213){r=0;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[(c[_>>2]|0)+20>>2]|0)){break}t=c[G>>2]|0;if((c[V>>2]|0)!=0){t=c[(c[V>>2]|0)+(t<<2)>>2]|0}else{t=c[(c[_>>2]|0)+36+(t<<3)>>2]|0}js(c[p>>2]|0,c[da>>2]|0,0,t,(c[ba>>2]|0)+(c[G>>2]|0)|0);To(c[p>>2]|0,76,(c[ba>>2]|0)+(c[G>>2]|0)|0,c[U>>2]|0)|0;c[G>>2]=(c[G>>2]|0)+1}if((c[Z>>2]|0)==0){break}xb=c[p>>2]|0;yb=c[ba>>2]|0;f=c[(c[_>>2]|0)+20>>2]|0;k=c[S>>2]|0;h=Jt(c[p>>2]|0,c[Y>>2]|0)|0;Vo(xb,48,yb,f,k,h,c[(c[_>>2]|0)+20>>2]|0)|0;Re(c[p>>2]|0,66,c[$>>2]|0,c[U>>2]|0,c[S>>2]|0,0)|0}}while(0);To(c[p>>2]|0,100,0,(c[aa>>2]|0)+1|0)|0;Vo(c[p>>2]|0,97,0,(c[aa>>2]|0)+2|0,0,c[(c[_>>2]|0)+8>>2]|0,0)|0;To(c[p>>2]|0,25,(c[$>>2]|0)-1|0,(c[aa>>2]|0)+3|0)|0;To(c[p>>2]|0,35,c[aa>>2]|0,4)|0;cs(c[p>>2]|0,c[U>>2]|0);Wb(c[l>>2]|0,c[V>>2]|0);c[$>>2]=(c[$>>2]|0)+1;c[_>>2]=c[(c[_>>2]|0)+4>>2]}To(c[p>>2]|0,9,0,(c[W>>2]|0)+1|0)|0;mp(c[p>>2]|0,c[W>>2]|0)}};case 17:{c[w>>2]=(d[696+(d[c[m>>2]>>0]|0)>>0]|0)==113&1;if((c[c[sa>>2]>>2]|0)==0){c[s>>2]=-1}c[(c[q>>2]|0)+72>>2]=6;ut(c[p>>2]|0,1);vt(c[p>>2]|0,0,0,21416,0)|0;c[P>>2]=100;if((c[n>>2]|0)!=0?(rg(c[n>>2]|0,P)|0,(c[P>>2]|0)<=0):0){c[P>>2]=100}To(c[p>>2]|0,25,c[P>>2]|0,1)|0;c[N>>2]=0;while(1){if((c[N>>2]|0)>=(c[(c[l>>2]|0)+20>>2]|0)){break}c[O>>2]=0;if(!((c[s>>2]|0)>=0?(c[N>>2]|0)!=(c[s>>2]|0):0)){r=234}e:do{if((r|0)==234){r=0;dp(c[q>>2]|0,c[N>>2]|0);c[Q>>2]=rr(c[p>>2]|0,134,1)|0;To(c[p>>2]|0,24,0,0)|0;mp(c[p>>2]|0,c[Q>>2]|0);c[u>>2]=(c[(c[(c[l>>2]|0)+16>>2]|0)+(c[N>>2]<<4)+12>>2]|0)+8;c[x>>2]=c[(c[u>>2]|0)+8>>2];while(1){if((c[x>>2]|0)==0){break}c[R>>2]=c[(c[x>>2]|0)+8>>2];if((a[(c[R>>2]|0)+44>>0]&32|0)==0){To(c[p>>2]|0,25,c[(c[R>>2]|0)+32>>2]|0,2+(c[O>>2]|0)|0)|0;c[O>>2]=(c[O>>2]|0)+1}c[v>>2]=c[(c[R>>2]|0)+8>>2];while(1){if((c[v>>2]|0)==0){break}To(c[p>>2]|0,25,c[(c[v>>2]|0)+44>>2]|0,2+(c[O>>2]|0)|0)|0;c[O>>2]=(c[O>>2]|0)+1;c[v>>2]=c[(c[v>>2]|0)+20>>2]}c[x>>2]=c[c[x>>2]>>2]}if((c[(c[q>>2]|0)+72>>2]|0)>((c[O>>2]|0)+8|0)){G=c[(c[q>>2]|0)+72>>2]|0}else{G=(c[O>>2]|0)+8|0}c[(c[q>>2]|0)+72>>2]=G;Wo(c[p>>2]|0,124,2,c[O>>2]|0,1)|0;Se(c[p>>2]|0,c[N>>2]&255);c[Q>>2]=rr(c[p>>2]|0,76,2)|0;k=c[p>>2]|0;h=c[l>>2]|0;c[t>>2]=c[(c[(c[l>>2]|0)+16>>2]|0)+(c[N>>2]<<4)>>2];Vo(k,97,0,3,0,Oe(h,21432,t)|0,-1)|0;Wo(c[p>>2]|0,32,2,4,1)|0;Wo(c[p>>2]|0,94,4,3,2)|0;To(c[p>>2]|0,35,2,1)|0;mp(c[p>>2]|0,c[Q>>2]|0);c[x>>2]=c[(c[u>>2]|0)+8>>2];while(1){if((c[x>>2]|0)==0){break e}if(!((c[w>>2]|0)!=0^1)){break e}c[J>>2]=c[(c[x>>2]|0)+8>>2];c[E>>2]=0;c[C>>2]=-1;f:do{if((c[(c[J>>2]|0)+8>>2]|0)!=0){if((a[(c[J>>2]|0)+44>>0]&32|0)==0){G=0}else{G=Gr(c[J>>2]|0)|0}c[y>>2]=G;c[Q>>2]=rr(c[p>>2]|0,134,1)|0;To(c[p>>2]|0,24,0,0)|0;mp(c[p>>2]|0,c[Q>>2]|0);Lt(c[q>>2]|0);Mt(c[q>>2]|0,c[J>>2]|0,52,1,0,M,B)|0;To(c[p>>2]|0,25,0,7)|0;c[K>>2]=0;c[I>>2]=c[(c[J>>2]|0)+8>>2];while(1){if((c[I>>2]|0)==0){break}To(c[p>>2]|0,25,0,8+(c[K>>2]|0)|0)|0;c[I>>2]=c[(c[I>>2]|0)+20>>2];c[K>>2]=(c[K>>2]|0)+1}if((c[(c[q>>2]|0)+72>>2]|0)>(8+(c[K>>2]|0)|0)){G=c[(c[q>>2]|0)+72>>2]|0}else{G=8+(c[K>>2]|0)|0}c[(c[q>>2]|0)+72>>2]=G;To(c[p>>2]|0,105,c[M>>2]|0,0)|0;c[L>>2]=To(c[p>>2]|0,37,7,1)|0;c[K>>2]=0;c[I>>2]=c[(c[J>>2]|0)+8>>2];while(1){if((c[I>>2]|0)==0){break}if((c[y>>2]|0)!=(c[I>>2]|0)){c[C>>2]=Zr(c[q>>2]|0,c[I>>2]|0,c[M>>2]|0,0,0,F,c[E>>2]|0,c[C>>2]|0)|0;c[E>>2]=c[I>>2];To(c[p>>2]|0,37,8+(c[K>>2]|0)|0,1)|0;c[A>>2]=Re(c[p>>2]|0,66,(c[B>>2]|0)+(c[K>>2]|0)|0,0,c[C>>2]|0,e[(c[I>>2]|0)+52>>1]|0)|0;To(c[p>>2]|0,37,1,-1)|0;Vo(c[p>>2]|0,97,0,3,0,21456,-2)|0;Wo(c[p>>2]|0,94,7,3,3)|0;Vo(c[p>>2]|0,97,0,4,0,21464,-2)|0;Wo(c[p>>2]|0,94,4,3,3)|0;Vo(c[p>>2]|0,97,0,4,0,c[c[I>>2]>>2]|0,0)|0;Wo(c[p>>2]|0,94,4,3,3)|0;To(c[p>>2]|0,35,3,1)|0;c[z>>2]=rr(c[p>>2]|0,134,1)|0;$o(c[p>>2]|0,24)|0;mp(c[p>>2]|0,c[z>>2]|0);mp(c[p>>2]|0,c[A>>2]|0);_r(c[q>>2]|0,c[F>>2]|0)}c[I>>2]=c[(c[I>>2]|0)+20>>2];c[K>>2]=(c[K>>2]|0)+1}To(c[p>>2]|0,9,c[M>>2]|0,c[L>>2]|0)|0;mp(c[p>>2]|0,(c[L>>2]|0)-1|0);Vo(c[p>>2]|0,97,0,2,0,21488,-2)|0;c[K>>2]=0;c[I>>2]=c[(c[J>>2]|0)+8>>2];while(1){if((c[I>>2]|0)==0){break f}if((c[y>>2]|0)!=(c[I>>2]|0)){c[Q>>2]=vr(c[p>>2]|0)|0;To(c[p>>2]|0,134,1,(c[Q>>2]|0)+2|0)|0;To(c[p>>2]|0,24,0,0)|0;To(c[p>>2]|0,49,(c[B>>2]|0)+(c[K>>2]|0)|0,3)|0;Wo(c[p>>2]|0,79,8+(c[K>>2]|0)|0,(c[Q>>2]|0)+8|0,3)|0;Se(c[p>>2]|0,-120);To(c[p>>2]|0,37,1,-1)|0;Vo(c[p>>2]|0,97,0,3,0,c[c[I>>2]>>2]|0,0)|0;Wo(c[p>>2]|0,94,3,2,7)|0;To(c[p>>2]|0,35,7,1)|0}c[I>>2]=c[(c[I>>2]|0)+20>>2];c[K>>2]=(c[K>>2]|0)+1}}}while(0);c[x>>2]=c[c[x>>2]>>2]}}}while(0);c[N>>2]=(c[N>>2]|0)+1}c[Q>>2]=Te(c[p>>2]|0,4,21400,0)|0;We(c[p>>2]|0,c[Q>>2]|0,0-(c[P>>2]|0)|0);mp(c[p>>2]|0,(c[Q>>2]|0)+1|0);Ye(c[p>>2]|0,(c[Q>>2]|0)+2|0,21520,-2);break a};case 5:{if((c[n>>2]|0)==0){break a}h=c[l>>2]|0;Kt(h,(jg(c[n>>2]|0,0)|0)&255);break a};case 11:{if((c[n>>2]|0)==0){if((jr(c[q>>2]|0)|0)!=0){break a}ut(c[p>>2]|0,1);vt(c[p>>2]|0,0,0,21680,0)|0;To(c[p>>2]|0,97,0,1)|0;Ye(c[p>>2]|0,-1,c[21528+(d[(c[(c[(c[c[q>>2]>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]<<3)>>2]|0,-2);To(c[p>>2]|0,35,1,1)|0;break a}if((b[(c[(c[(c[l>>2]|0)+16>>2]|0)+12>>2]|0)+78>>1]&1|0)==1?(b[(c[(c[(c[l>>2]|0)+16>>2]|0)+12>>2]|0)+78>>1]&4|0)!=4:0){break a}c[la>>2]=21528;while(1){if((c[c[la>>2]>>2]|0)==0){break}h=0==(vc(c[n>>2]|0,c[c[la>>2]>>2]|0)|0);p=c[la>>2]|0;if(h){r=278;break}c[la>>2]=p+8}if((r|0)==278){if((d[p+4>>0]|0)!=0){p=d[(c[la>>2]|0)+4>>0]|0}else{p=(a[1392]|0)==0?3:2}a[(c[(c[(c[c[q>>2]>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]=p}if((c[c[la>>2]>>2]|0)!=0){break a}h=c[q>>2]|0;c[t>>2]=c[n>>2];Ne(h,21696,t);break a};case 0:{Ue(c[p>>2]|0,c[s>>2]|0);switch(a[c[m>>2]>>0]|0){case 65:case 97:{c[ab>>2]=8;break};case 70:case 102:{c[ab>>2]=0;break};case 83:case 115:{c[ab>>2]=1;break};default:{c[ab>>2]=6}}if((c[n>>2]|0)!=0?(c[ab>>2]|0)!=0:0){c[oa>>2]=Te(c[p>>2]|0,3,21728,0)|0;Ve(c[p>>2]|0,c[oa>>2]|0,c[s>>2]|0);k=c[p>>2]|0;h=(c[oa>>2]|0)+1|0;Ve(k,h,qg(c[n>>2]|0)|0);Ve(c[p>>2]|0,(c[oa>>2]|0)+2|0,c[s>>2]|0);We(c[p>>2]|0,(c[oa>>2]|0)+2|0,c[ab>>2]|0);break a}c[cb>>2]=Te(c[p>>2]|0,3,21744,0)|0;Ve(c[p>>2]|0,c[cb>>2]|0,c[s>>2]|0);Ve(c[p>>2]|0,(c[cb>>2]|0)+1|0,c[s>>2]|0);Xe(c[p>>2]|0,(c[cb>>2]|0)+1|0,c[ab>>2]|0);ut(c[p>>2]|0,1);vt(c[p>>2]|0,0,0,c[m>>2]|0,-1)|0;break a};case 34:{c[db>>2]=(c[c[sa>>2]>>2]|0)!=0?c[s>>2]|0:10;c[eb>>2]=0;do{if((c[n>>2]|0)!=0){if((vc(c[n>>2]|0,21776)|0)==0){c[eb>>2]=1;break}if((vc(c[n>>2]|0,21784)|0)==0){c[eb>>2]=2}}}while(0);ut(c[p>>2]|0,3);c[(c[q>>2]|0)+72>>2]=3;vt(c[p>>2]|0,0,0,21792,0)|0;vt(c[p>>2]|0,1,0,21800,0)|0;vt(c[p>>2]|0,2,0,21808,0)|0;Wo(c[p>>2]|0,11,c[db>>2]|0,c[eb>>2]|0,1)|0;To(c[p>>2]|0,35,1,3)|0;break a};case 7:{c[fb>>2]=0;ut(c[p>>2]|0,1);c[(c[q>>2]|0)+72>>2]=1;vt(c[p>>2]|0,0,0,21760,0)|0;while(1){h=c[fb>>2]|0;c[fb>>2]=h+1;h=Nb(h)|0;c[gb>>2]=h;if((h|0)==0){break a}Vo(c[p>>2]|0,97,0,1,0,c[gb>>2]|0,0)|0;To(c[p>>2]|0,35,1,1)|0}};case 26:{Af(c[l>>2]|0)|0;break a};case 33:{if((c[n>>2]|0)!=0){h=c[l>>2]|0;Qf(h,qg(c[n>>2]|0)|0)|0}if((c[(c[l>>2]|0)+204>>2]|0)==5){p=c[(c[l>>2]|0)+208>>2]|0}else{p=0}wt(c[q>>2]|0,21824,p,((p|0)<0)<<31>>31);break a};case 27:{if((c[n>>2]|0)!=0?(kg(c[n>>2]|0,hb,1e6,1)|0)==0:0){h=hb;bc(c[h>>2]|0,c[h+4>>2]|0)|0}k=c[q>>2]|0;h=bc(-1,-1)|0;wt(k,21856,h,D);break a};case 9:{ut(c[p>>2]|0,3);c[(c[q>>2]|0)+72>>2]=3;vt(c[p>>2]|0,0,0,21288,0)|0;vt(c[p>>2]|0,1,0,21208,0)|0;vt(c[p>>2]|0,2,0,21304,0)|0;c[ib>>2]=0;while(1){if((c[ib>>2]|0)>=(c[(c[l>>2]|0)+20>>2]|0)){break a}if((c[(c[(c[l>>2]|0)+16>>2]|0)+(c[ib>>2]<<4)+4>>2]|0)!=0){To(c[p>>2]|0,25,c[ib>>2]|0,1)|0;Vo(c[p>>2]|0,97,0,2,0,c[(c[(c[l>>2]|0)+16>>2]|0)+(c[ib>>2]<<4)>>2]|0,0)|0;h=c[p>>2]|0;Vo(h,97,0,3,0,lg(c[(c[(c[l>>2]|0)+16>>2]|0)+(c[ib>>2]<<4)+4>>2]|0)|0,0)|0;To(c[p>>2]|0,35,1,3)|0}c[ib>>2]=(c[ib>>2]|0)+1}};case 13:{if((c[n>>2]|0)==0){break a}c[pb>>2]=fp(c[l>>2]|0,c[n>>2]|0,c[H>>2]|0)|0;if((c[pb>>2]|0)==0){break a}c[p>>2]=Ro(c[q>>2]|0)|0;c[kb>>2]=c[(c[pb>>2]|0)+16>>2];if((c[kb>>2]|0)==0){break a}c[lb>>2]=0;ut(c[p>>2]|0,8);c[(c[q>>2]|0)+72>>2]=8;dp(c[q>>2]|0,c[s>>2]|0);vt(c[p>>2]|0,0,0,21312,0)|0;vt(c[p>>2]|0,1,0,21288,0)|0;vt(c[p>>2]|0,2,0,21256,0)|0;vt(c[p>>2]|0,3,0,21320,0)|0;vt(c[p>>2]|0,4,0,21328,0)|0;vt(c[p>>2]|0,5,0,21336,0)|0;vt(c[p>>2]|0,6,0,21352,0)|0;vt(c[p>>2]|0,7,0,21368,0)|0;while(1){if((c[kb>>2]|0)==0){break a}c[jb>>2]=0;while(1){if((c[jb>>2]|0)>=(c[(c[kb>>2]|0)+20>>2]|0)){break}c[mb>>2]=c[(c[kb>>2]|0)+36+(c[jb>>2]<<3)+4>>2];c[nb>>2]=Ht(a[(c[kb>>2]|0)+25>>0]|0)|0;c[ob>>2]=Ht(a[(c[kb>>2]|0)+26>>0]|0)|0;To(c[p>>2]|0,25,c[lb>>2]|0,1)|0;To(c[p>>2]|0,25,c[jb>>2]|0,2)|0;Vo(c[p>>2]|0,97,0,3,0,c[(c[kb>>2]|0)+8>>2]|0,0)|0;Vo(c[p>>2]|0,97,0,4,0,c[(c[(c[pb>>2]|0)+4>>2]|0)+((c[(c[kb>>2]|0)+36+(c[jb>>2]<<3)>>2]|0)*24|0)>>2]|0,0)|0;Vo(c[p>>2]|0,(c[mb>>2]|0)!=0?97:28,0,5,0,c[mb>>2]|0,0)|0;Vo(c[p>>2]|0,97,0,6,0,c[ob>>2]|0,0)|0;Vo(c[p>>2]|0,97,0,7,0,c[nb>>2]|0,0)|0;Vo(c[p>>2]|0,97,0,8,0,21376,0)|0;To(c[p>>2]|0,35,1,8)|0;c[jb>>2]=(c[jb>>2]|0)+1}c[lb>>2]=(c[lb>>2]|0)+1;c[kb>>2]=c[(c[kb>>2]|0)+4>>2]}};case 6:{c[sb>>2]=0;ut(c[p>>2]|0,2);c[(c[q>>2]|0)+72>>2]=2;vt(c[p>>2]|0,0,0,21288,0)|0;vt(c[p>>2]|0,1,0,21208,0)|0;c[qb>>2]=c[(c[l>>2]|0)+428>>2];while(1){if((c[qb>>2]|0)==0){break a}c[rb>>2]=c[(c[qb>>2]|0)+8>>2];k=c[p>>2]|0;h=c[sb>>2]|0;c[sb>>2]=h+1;To(k,25,h,1)|0;Vo(c[p>>2]|0,97,0,2,0,c[c[rb>>2]>>2]|0,0)|0;To(c[p>>2]|0,35,1,2)|0;c[qb>>2]=c[c[qb>>2]>>2]}};default:{if((c[n>>2]|0)!=0){h=c[l>>2]|0;Kf(h,qg(c[n>>2]|0)|0)|0}h=c[(c[l>>2]|0)+484>>2]|0;wt(c[q>>2]|0,21848,h,((h|0)<0)<<31>>31);break a}}}while(0)}}}while(0);Wb(c[l>>2]|0,c[m>>2]|0);Wb(c[l>>2]|0,c[n>>2]|0);i=o;return}function qo(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;j=i;i=i+112|0;r=j;f=j+108|0;h=j+104|0;g=j+100|0;o=j+96|0;n=j+92|0;p=j+88|0;v=j+64|0;l=j+56|0;w=j+48|0;s=j+40|0;q=j+36|0;k=j+32|0;m=j+28|0;u=j+24|0;t=j+20|0;c[f>>2]=b;c[h>>2]=d;c[g>>2]=e;c[o>>2]=c[(c[f>>2]|0)+488>>2];c[p>>2]=c[c[f>>2]>>2];c[(c[f>>2]|0)+488>>2]=0;do{if((c[(c[f>>2]|0)+64>>2]|0)==0?(c[o>>2]|0)!=0:0){c[n>>2]=c[c[o>>2]>>2];c[l>>2]=Qe(c[c[f>>2]>>2]|0,c[(c[o>>2]|0)+20>>2]|0)|0;c[(c[o>>2]|0)+28>>2]=c[h>>2];while(1){e=c[o>>2]|0;if((c[h>>2]|0)==0){break}c[(c[h>>2]|0)+4>>2]=e;c[h>>2]=c[(c[h>>2]|0)+32>>2]}c[w>>2]=c[e>>2];c[w+4>>2]=Mb(c[w>>2]|0)|0;nt(v,c[f>>2]|0,c[l>>2]|0,1488,w);if((st(v,c[(c[o>>2]|0)+28>>2]|0)|0)==0?(qt(v,c[(c[o>>2]|0)+12>>2]|0)|0)==0:0){if((a[(c[p>>2]|0)+137>>0]|0)==0){c[s>>2]=Ro(c[f>>2]|0)|0;if((c[s>>2]|0)==0){break}cp(c[f>>2]|0,0,c[l>>2]|0);c[q>>2]=gm(c[p>>2]|0,c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+4>>2]|0)|0;e=c[f>>2]|0;v=(c[l>>2]|0)==1?14808:14832;w=c[n>>2]|0;b=c[(c[o>>2]|0)+4>>2]|0;d=c[q>>2]|0;c[r>>2]=c[(c[(c[p>>2]|0)+16>>2]|0)+(c[l>>2]<<4)>>2];c[r+4>>2]=v;c[r+8>>2]=w;c[r+12>>2]=b;c[r+16>>2]=d;Qo(e,20072,r);Wb(c[p>>2]|0,c[q>>2]|0);So(c[f>>2]|0,c[l>>2]|0);e=c[s>>2]|0;d=c[l>>2]|0;b=c[p>>2]|0;c[r>>2]=c[n>>2];Uo(e,d,Oe(b,20136,r)|0)}if((a[(c[p>>2]|0)+137>>0]|0)!=0){c[k>>2]=c[o>>2];c[m>>2]=(c[(c[(c[p>>2]|0)+16>>2]|0)+(c[l>>2]<<4)+12>>2]|0)+40;e=c[m>>2]|0;d=c[n>>2]|0;b=Mb(c[n>>2]|0)|0;c[o>>2]=$g(e,d,b,c[o>>2]|0)|0;if((c[o>>2]|0)!=0){a[(c[p>>2]|0)+64>>0]=1;break}if((c[(c[k>>2]|0)+20>>2]|0)==(c[(c[k>>2]|0)+24>>2]|0)){c[t>>2]=Mb(c[(c[k>>2]|0)+4>>2]|0)|0;c[u>>2]=Wg((c[(c[k>>2]|0)+24>>2]|0)+8|0,c[(c[k>>2]|0)+4>>2]|0,c[t>>2]|0)|0;c[(c[k>>2]|0)+32>>2]=c[(c[u>>2]|0)+64>>2];c[(c[u>>2]|0)+64>>2]=c[k>>2]}}}}}while(0);Tb(c[p>>2]|0,c[o>>2]|0);nn(c[p>>2]|0,c[h>>2]|0);i=j;return}function ro(b,e,f,g,h,j,k,l,m,n){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;o=i;i=i+128|0;y=o;s=o+116|0;L=o+112|0;J=o+108|0;H=o+104|0;B=o+100|0;q=o+96|0;p=o+92|0;r=o+88|0;G=o+84|0;x=o+80|0;v=o+76|0;A=o+72|0;u=o+68|0;w=o+64|0;t=o+60|0;F=o+56|0;I=o+32|0;C=o+24|0;E=o+20|0;D=o+16|0;z=o+12|0;c[s>>2]=b;c[L>>2]=e;c[J>>2]=f;c[H>>2]=g;c[B>>2]=h;c[q>>2]=j;c[p>>2]=k;c[r>>2]=l;c[G>>2]=m;c[x>>2]=n;c[v>>2]=0;c[u>>2]=0;c[w>>2]=c[c[s>>2]>>2];do{if((c[G>>2]|0)!=0){if((c[(c[J>>2]|0)+4>>2]|0)>>>0>0){Ne(c[s>>2]|0,19728,y);break}else{c[t>>2]=1;c[F>>2]=c[L>>2];K=6;break}}else{c[t>>2]=nr(c[s>>2]|0,c[L>>2]|0,c[J>>2]|0,F)|0;if((c[t>>2]|0)>=0){K=6}}}while(0);do{if(((K|0)==6?(c[p>>2]|0)!=0:0)?(d[(c[w>>2]|0)+64>>0]|0)==0:0){if((d[(c[w>>2]|0)+137>>0]|0)!=0?(c[t>>2]|0)!=1:0){Wb(c[w>>2]|0,c[(c[p>>2]|0)+12>>2]|0);c[(c[p>>2]|0)+12>>2]=0}c[A>>2]=mt(c[s>>2]|0,c[p>>2]|0)|0;if((((d[(c[w>>2]|0)+137>>0]|0)==0?(c[(c[J>>2]|0)+4>>2]|0)==0:0)?(c[A>>2]|0)!=0:0)?(c[(c[A>>2]|0)+68>>2]|0)==(c[(c[(c[w>>2]|0)+16>>2]|0)+28>>2]|0):0){c[t>>2]=1}if((a[(c[w>>2]|0)+64>>0]|0)==0?(nt(I,c[s>>2]|0,c[t>>2]|0,1488,c[F>>2]|0),(ot(I,c[p>>2]|0)|0)==0):0){c[A>>2]=mt(c[s>>2]|0,c[p>>2]|0)|0;if((c[A>>2]|0)==0){if((d[(c[w>>2]|0)+136>>0]|0)!=1){break}a[(c[w>>2]|0)+138>>0]=1;break}if((a[(c[A>>2]|0)+44>>0]&16|0)!=0){Ne(c[s>>2]|0,19776,y);break}c[u>>2]=Lo(c[w>>2]|0,c[F>>2]|0)|0;if((c[u>>2]|0)!=0?0==(xp(c[s>>2]|0,c[u>>2]|0)|0):0){e=(c[(c[(c[w>>2]|0)+16>>2]|0)+(c[t>>2]<<4)+12>>2]|0)+40|0;b=c[u>>2]|0;if((Wg(e,b,Mb(c[u>>2]|0)|0)|0)!=0){z=c[s>>2]|0;if((c[x>>2]|0)!=0){dp(z,c[t>>2]|0);break}else{c[y>>2]=c[F>>2];Ne(z,19824,y);break}}if((Lb(c[c[A>>2]>>2]|0,15048,7)|0)==0){Ne(c[s>>2]|0,19856,y);b=(c[s>>2]|0)+64|0;c[b>>2]=(c[b>>2]|0)+1;break}if((c[(c[A>>2]|0)+12>>2]|0)!=0?(c[H>>2]|0)!=49:0){b=c[s>>2]|0;e=c[p>>2]|0;c[y>>2]=(c[H>>2]|0)==35?19936:19944;c[y+4>>2]=e;c[y+8>>2]=0;Ne(b,19896,y);break}if((c[(c[A>>2]|0)+12>>2]|0)==0?(c[H>>2]|0)==49:0){b=c[s>>2]|0;c[y>>2]=c[p>>2];c[y+4>>2]=0;Ne(b,19952,y);break}c[C>>2]=Qe(c[w>>2]|0,c[(c[A>>2]|0)+68>>2]|0)|0;c[E>>2]=7;c[D>>2]=c[(c[(c[w>>2]|0)+16>>2]|0)+(c[C>>2]<<4)>>2];if((c[G>>2]|0)!=0){x=c[(c[(c[w>>2]|0)+16>>2]|0)+16>>2]|0}else{x=c[D>>2]|0}c[z>>2]=x;if(!((c[C>>2]|0)!=1?(c[G>>2]|0)==0:0)){c[E>>2]=5}if((Oo(c[s>>2]|0,c[E>>2]|0,c[u>>2]|0,c[c[A>>2]>>2]|0,c[z>>2]|0)|0)==0?(Oo(c[s>>2]|0,18,(c[C>>2]|0)==1?14808:14832,0,c[D>>2]|0)|0)==0:0){if((c[H>>2]|0)==49){c[H>>2]=35}c[v>>2]=ne(c[w>>2]|0,36)|0;if((c[v>>2]|0)==0){break}c[c[v>>2]>>2]=c[u>>2];c[u>>2]=0;b=he(c[w>>2]|0,c[(c[p>>2]|0)+16>>2]|0)|0;c[(c[v>>2]|0)+4>>2]=b;c[(c[v>>2]|0)+20>>2]=c[(c[(c[w>>2]|0)+16>>2]|0)+(c[t>>2]<<4)+12>>2];c[(c[v>>2]|0)+24>>2]=c[(c[A>>2]|0)+68>>2];a[(c[v>>2]|0)+8>>0]=c[B>>2];a[(c[v>>2]|0)+9>>0]=(c[H>>2]|0)==35?1:2;b=kq(c[w>>2]|0,c[r>>2]|0,1)|0;c[(c[v>>2]|0)+12>>2]=b;b=hr(c[w>>2]|0,c[q>>2]|0)|0;c[(c[v>>2]|0)+16>>2]=b;c[(c[s>>2]|0)+488>>2]=c[v>>2]}}}}}while(0);Wb(c[w>>2]|0,c[u>>2]|0);gn(c[w>>2]|0,c[p>>2]|0);jn(c[w>>2]|0,c[q>>2]|0);hn(c[w>>2]|0,c[r>>2]|0);if((c[(c[s>>2]|0)+488>>2]|0)!=0){i=o;return}Tb(c[w>>2]|0,c[v>>2]|0);i=o;return}function so(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;l=j+16|0;o=j+12|0;h=j+8|0;k=j+4|0;n=j+20|0;m=j;c[l>>2]=b;c[o>>2]=d;c[h>>2]=e;c[k>>2]=f;a[n>>0]=g;c[m>>2]=lt(c[l>>2]|0,110,c[o>>2]|0)|0;if((c[m>>2]|0)!=0){o=sq(c[l>>2]|0,c[h>>2]|0,1)|0;c[(c[m>>2]|0)+24>>2]=o;o=kq(c[l>>2]|0,c[k>>2]|0,1)|0;c[(c[m>>2]|0)+20>>2]=o;a[(c[m>>2]|0)+1>>0]=a[n>>0]|0}dn(c[l>>2]|0,c[h>>2]|0);hn(c[l>>2]|0,c[k>>2]|0);i=j;return c[m>>2]|0}function to(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;l=n+16|0;o=n+12|0;h=n+8|0;k=n+4|0;m=n+20|0;j=n;c[l>>2]=b;c[o>>2]=d;c[h>>2]=e;c[k>>2]=f;a[m>>0]=g;c[j>>2]=lt(c[l>>2]|0,108,c[o>>2]|0)|0;g=c[l>>2]|0;if((c[j>>2]|0)!=0){b=Ep(g,c[k>>2]|0,1)|0;c[(c[j>>2]|0)+8>>2]=b;c[(c[j>>2]|0)+28>>2]=c[h>>2];a[(c[j>>2]|0)+1>>0]=a[m>>0]|0;b=c[l>>2]|0;o=c[k>>2]|0;en(b,o);o=c[j>>2]|0;i=n;return o|0}else{jn(g,c[h>>2]|0);b=c[l>>2]|0;o=c[k>>2]|0;en(b,o);o=c[j>>2]|0;i=n;return o|0}return 0}function uo(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g+12|0;k=g+8|0;h=g+4|0;f=g;c[j>>2]=b;c[k>>2]=d;c[h>>2]=e;c[f>>2]=lt(c[j>>2]|0,109,c[k>>2]|0)|0;if((c[f>>2]|0)!=0){k=kq(c[j>>2]|0,c[h>>2]|0,1)|0;c[(c[f>>2]|0)+20>>2]=k;a[(c[f>>2]|0)+1>>0]=10}hn(c[j>>2]|0,c[h>>2]|0);i=g;return c[f>>2]|0}function vo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;h=e+8|0;g=e+4|0;j=e;c[h>>2]=b;c[g>>2]=d;c[j>>2]=ne(c[h>>2]|0,40)|0;if((c[j>>2]|0)==0){en(c[h>>2]|0,c[g>>2]|0);c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}else{a[c[j>>2]>>0]=119;c[(c[j>>2]|0)+8>>2]=c[g>>2];a[(c[j>>2]|0)+1>>0]=10;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=e;return b|0}return 0}function wo(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;m=i;i=i+48|0;l=m;j=m+44|0;g=m+40|0;f=m+36|0;n=m+32|0;s=m+28|0;k=m+24|0;q=m+20|0;r=m+16|0;h=m+12|0;p=m+8|0;c[j>>2]=b;c[g>>2]=d;c[f>>2]=e;c[n>>2]=0;c[h>>2]=c[c[j>>2]>>2];if((a[(c[h>>2]|0)+64>>0]|0)!=0){d=c[h>>2]|0;b=c[g>>2]|0;gn(d,b);i=m;return}if(0!=(jr(c[j>>2]|0)|0)){d=c[h>>2]|0;b=c[g>>2]|0;gn(d,b);i=m;return}c[k>>2]=c[(c[g>>2]|0)+12>>2];c[q>>2]=c[(c[g>>2]|0)+16>>2];c[r>>2]=Mb(c[q>>2]|0)|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}b=c[s>>2]|0;c[p>>2]=(c[s>>2]|0)<2?b^1:b;if(!((c[k>>2]|0)!=0?(vc(c[(c[(c[h>>2]|0)+16>>2]|0)+(c[p>>2]<<4)>>2]|0,c[k>>2]|0)|0)!=0:0)){o=7}if((o|0)==7?(o=0,c[n>>2]=Wg((c[(c[(c[h>>2]|0)+16>>2]|0)+(c[p>>2]<<4)+12>>2]|0)+40|0,c[q>>2]|0,c[r>>2]|0)|0,(c[n>>2]|0)!=0):0){break}c[s>>2]=(c[s>>2]|0)+1}if((c[n>>2]|0)!=0){it(c[j>>2]|0,c[n>>2]|0);d=c[h>>2]|0;b=c[g>>2]|0;gn(d,b);i=m;return}n=c[j>>2]|0;if((c[f>>2]|0)!=0){ht(n,c[k>>2]|0)}else{c[l>>2]=c[g>>2];c[l+4>>2]=0;Ne(n,19664,l)}a[(c[j>>2]|0)+17>>0]=1;d=c[h>>2]|0;b=c[g>>2]|0;gn(d,b);i=m;return}function xo(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f+8|0;h=f+4|0;g=f;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;$s(c[k>>2]|0,24,19424,c[j>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0);i=f;return}function yo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;$s(c[f>>2]|0,25,19240,c[e>>2]|0,0,0,c[e>>2]|0);i=d;return}function zo(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;k=i;i=i+64|0;j=k;f=k+48|0;r=k+44|0;s=k+40|0;u=k+36|0;p=k+32|0;l=k+28|0;n=k+24|0;h=k+20|0;g=k+16|0;o=k+12|0;q=k+8|0;t=k+4|0;c[f>>2]=b;c[r>>2]=d;c[s>>2]=e;c[o>>2]=c[c[f>>2]>>2];if(0!=(jr(c[f>>2]|0)|0)){i=k;return}if((c[r>>2]|0)==0){Wr(c[f>>2]|0,0);i=k;return}if(!((c[s>>2]|0)!=0?(c[c[s>>2]>>2]|0)!=0:0)){m=6}do{if((m|0)==6){c[t>>2]=Lo(c[c[f>>2]>>2]|0,c[r>>2]|0)|0;if((c[t>>2]|0)==0){i=k;return}c[u>>2]=Ug(c[o>>2]|0,a[(c[(c[(c[o>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[t>>2]|0,0)|0;if((c[u>>2]|0)==0){Wb(c[o>>2]|0,c[t>>2]|0);break}Wr(c[f>>2]|0,c[t>>2]|0);Wb(c[o>>2]|0,c[t>>2]|0);i=k;return}}while(0);c[g>>2]=nr(c[f>>2]|0,c[r>>2]|0,c[s>>2]|0,q)|0;if((c[g>>2]|0)<0){i=k;return}c[p>>2]=Lo(c[o>>2]|0,c[q>>2]|0)|0;if((c[p>>2]|0)==0){i=k;return}c[l>>2]=c[(c[(c[o>>2]|0)+16>>2]|0)+(c[g>>2]<<4)>>2];c[n>>2]=fp(c[o>>2]|0,c[p>>2]|0,c[l>>2]|0)|0;if((c[n>>2]|0)!=0){Xr(c[f>>2]|0,c[n>>2]|0,0);Wb(c[o>>2]|0,c[p>>2]|0);i=k;return}c[h>>2]=wp(c[o>>2]|0,c[p>>2]|0,c[l>>2]|0)|0;Wb(c[o>>2]|0,c[p>>2]|0);l=c[f>>2]|0;if((c[h>>2]|0)!=0){cp(l,0,c[g>>2]|0);Yr(c[f>>2]|0,c[h>>2]|0,-1);i=k;return}else{Ne(l,18968,j);i=k;return}}function Ao(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+48|0;f=k+40|0;p=k+36|0;q=k+32|0;g=k+28|0;n=k+24|0;m=k+20|0;h=k+16|0;l=k+12|0;j=k+8|0;e=k+4|0;o=k;c[f>>2]=a;c[p>>2]=b;c[q>>2]=d;c[g>>2]=c[c[f>>2]>>2];if(0!=(jr(c[f>>2]|0)|0)){i=k;return}if((c[p>>2]|0)==0){c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[g>>2]|0)+20>>2]|0)){break}if((c[m>>2]|0)!=1){kr(c[f>>2]|0,c[m>>2]|0)}c[m>>2]=(c[m>>2]|0)+1}i=k;return}if((c[(c[q>>2]|0)+4>>2]|0)!=0){c[n>>2]=nr(c[f>>2]|0,c[p>>2]|0,c[q>>2]|0,o)|0;if((c[n>>2]|0)<0){i=k;return}c[l>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[n>>2]<<4)>>2];c[h>>2]=Lo(c[g>>2]|0,c[o>>2]|0)|0;if((c[h>>2]|0)==0){i=k;return}a=wp(c[g>>2]|0,c[h>>2]|0,c[l>>2]|0)|0;c[e>>2]=a;m=c[f>>2]|0;if((a|0)==0){a=Me(m,0,c[h>>2]|0,c[l>>2]|0)|0;c[j>>2]=a;if((a|0)!=0){mr(c[f>>2]|0,c[j>>2]|0,0)}}else{mr(m,c[(c[e>>2]|0)+12>>2]|0,c[e>>2]|0)}Wb(c[g>>2]|0,c[h>>2]|0);i=k;return}c[n>>2]=lr(c[g>>2]|0,c[p>>2]|0)|0;if((c[n>>2]|0)>=0){kr(c[f>>2]|0,c[n>>2]|0);i=k;return}c[h>>2]=Lo(c[g>>2]|0,c[p>>2]|0)|0;if((c[h>>2]|0)==0){i=k;return}a=wp(c[g>>2]|0,c[h>>2]|0,0)|0;c[e>>2]=a;l=c[f>>2]|0;if((a|0)==0){a=Me(l,0,c[h>>2]|0,0)|0;c[j>>2]=a;if((a|0)!=0){mr(c[f>>2]|0,c[j>>2]|0,0)}}else{mr(l,c[(c[e>>2]|0)+12>>2]|0,c[e>>2]|0)}Wb(c[g>>2]|0,c[h>>2]|0);i=k;return}function Bo(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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=i;i=i+112|0;m=k;n=k+100|0;p=k+96|0;y=k+92|0;s=k+88|0;r=k+84|0;l=k+80|0;h=k+76|0;q=k+72|0;t=k+68|0;u=k+64|0;w=k+60|0;g=k+56|0;x=k+52|0;j=k+48|0;v=k+44|0;o=k+40|0;f=k+36|0;c[n>>2]=b;c[p>>2]=d;c[y>>2]=e;c[h>>2]=0;c[q>>2]=c[c[n>>2]>>2];c[g>>2]=0;c[x>>2]=0;c[j>>2]=c[(c[q>>2]|0)+24>>2];do{if(((a[(c[q>>2]|0)+64>>0]|0)==0?(c[l>>2]=ap(c[n>>2]|0,0,(c[p>>2]|0)+8|0)|0,(c[l>>2]|0)!=0):0)?(c[s>>2]=Qe(c[c[n>>2]>>2]|0,c[(c[l>>2]|0)+68>>2]|0)|0,c[r>>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+(c[s>>2]<<4)>>2],b=(c[q>>2]|0)+24|0,c[b>>2]=c[b>>2]|2097152,c[h>>2]=Lo(c[q>>2]|0,c[y>>2]|0)|0,(c[h>>2]|0)!=0):0){if((fp(c[q>>2]|0,c[h>>2]|0,c[r>>2]|0)|0)==0?(wp(c[q>>2]|0,c[h>>2]|0,c[r>>2]|0)|0)==0:0){if(0!=(bp(c[n>>2]|0,c[c[l>>2]>>2]|0)|0)){break}if(0!=(xp(c[n>>2]|0,c[h>>2]|0)|0)){break}e=c[n>>2]|0;if((c[(c[l>>2]|0)+12>>2]|0)!=0){c[m>>2]=c[c[l>>2]>>2];Ne(e,15568,m);break}if((Oo(e,26,c[r>>2]|0,c[c[l>>2]>>2]|0,0)|0)!=0){break}if((yp(c[n>>2]|0,c[l>>2]|0)|0)!=0){break}if((a[(c[l>>2]|0)+44>>0]&16|0)!=0?(c[x>>2]=zp(c[q>>2]|0,c[l>>2]|0)|0,(c[(c[c[(c[x>>2]|0)+8>>2]>>2]|0)+76>>2]|0)==0):0){c[x>>2]=0}c[w>>2]=Ro(c[n>>2]|0)|0;if((c[w>>2]|0)==0){break}cp(c[n>>2]|0,(c[x>>2]|0)!=0&1,c[s>>2]|0);So(c[n>>2]|0,c[s>>2]|0);if((c[x>>2]|0)!=0){d=(c[n>>2]|0)+72|0;b=(c[d>>2]|0)+1|0;c[d>>2]=b;c[v>>2]=b;Vo(c[w>>2]|0,97,0,c[v>>2]|0,0,c[h>>2]|0,0)|0;Vo(c[w>>2]|0,152,c[v>>2]|0,0,0,c[x>>2]|0,-10)|0;Ap(c[n>>2]|0)}c[u>>2]=c[c[l>>2]>>2];c[t>>2]=Im(c[u>>2]|0,-1)|0;if((c[(c[q>>2]|0)+24>>2]&524288|0)!=0?(b=Bp(c[n>>2]|0,c[l>>2]|0)|0,c[g>>2]=b,(b|0)!=0):0){b=c[n>>2]|0;x=(c[s>>2]|0)==1?14808:14832;e=c[u>>2]|0;y=c[h>>2]|0;d=c[g>>2]|0;c[m>>2]=c[r>>2];c[m+4>>2]=x;c[m+8>>2]=e;c[m+12>>2]=y;c[m+16>>2]=d;Qo(b,15600,m);Wb(c[q>>2]|0,c[g>>2]|0)}b=c[n>>2]|0;z=(c[s>>2]|0)==1?14808:14832;s=c[h>>2]|0;v=c[h>>2]|0;w=c[h>>2]|0;x=c[h>>2]|0;e=c[h>>2]|0;y=c[t>>2]|0;d=c[u>>2]|0;c[m>>2]=c[r>>2];c[m+4>>2]=z;c[m+8>>2]=s;c[m+12>>2]=v;c[m+16>>2]=w;c[m+20>>2]=x;c[m+24>>2]=e;c[m+28>>2]=y;c[m+32>>2]=d;Qo(b,15672,m);if((fp(c[q>>2]|0,16056,c[r>>2]|0)|0)!=0){z=c[n>>2]|0;d=c[h>>2]|0;b=c[c[l>>2]>>2]|0;c[m>>2]=c[r>>2];c[m+4>>2]=d;c[m+8>>2]=b;Qo(z,16072,m)}z=kp(c[n>>2]|0,c[l>>2]|0)|0;c[g>>2]=z;if((z|0)!=0){z=c[n>>2]|0;d=c[h>>2]|0;b=c[g>>2]|0;c[m>>2]=c[h>>2];c[m+4>>2]=d;c[m+8>>2]=b;Qo(z,16136,m);Wb(c[q>>2]|0,c[g>>2]|0)}a:do{if((c[(c[q>>2]|0)+24>>2]&524288|0)!=0){c[o>>2]=Cp(c[l>>2]|0)|0;while(1){if((c[o>>2]|0)==0){break a}c[f>>2]=c[c[o>>2]>>2];if((c[f>>2]|0)!=(c[l>>2]|0)){ip(c[n>>2]|0,c[c[o>>2]>>2]|0,c[c[f>>2]>>2]|0)}c[o>>2]=c[(c[o>>2]|0)+12>>2]}}}while(0);ip(c[n>>2]|0,c[l>>2]|0,c[h>>2]|0);break}z=c[n>>2]|0;c[m>>2]=c[h>>2];Ne(z,15504,m)}}while(0);gn(c[q>>2]|0,c[p>>2]|0);Wb(c[q>>2]|0,c[h>>2]|0);c[(c[q>>2]|0)+24>>2]=c[j>>2];i=k;return}function Co(e,f){e=e|0;f=f|0;var g=0,h=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;p=i;i=i+80|0;j=p;h=p+76|0;l=p+72|0;s=p+68|0;w=p+64|0;t=p+60|0;u=p+56|0;v=p+52|0;m=p+48|0;r=p+44|0;o=p+40|0;k=p+36|0;n=p+32|0;g=p+28|0;q=p+24|0;c[h>>2]=e;c[l>>2]=f;c[k>>2]=c[c[h>>2]>>2];if((c[(c[h>>2]|0)+64>>2]|0)!=0){i=p;return}if((d[(c[k>>2]|0)+64>>0]|0)!=0){i=p;return}c[s>>2]=c[(c[h>>2]|0)+484>>2];c[t>>2]=Qe(c[k>>2]|0,c[(c[s>>2]|0)+68>>2]|0)|0;c[u>>2]=c[(c[(c[k>>2]|0)+16>>2]|0)+(c[t>>2]<<4)>>2];c[v>>2]=(c[c[s>>2]>>2]|0)+16;c[r>>2]=(c[(c[s>>2]|0)+4>>2]|0)+(((b[(c[s>>2]|0)+38>>1]|0)-1|0)*24|0);c[o>>2]=c[(c[r>>2]|0)+4>>2];c[w>>2]=fp(c[k>>2]|0,c[v>>2]|0,c[u>>2]|0)|0;if((Oo(c[h>>2]|0,26,c[u>>2]|0,c[c[w>>2]>>2]|0,0)|0)!=0){i=p;return}if((c[o>>2]|0)!=0?(d[c[o>>2]>>0]|0)==101:0){c[o>>2]=0}if((a[(c[r>>2]|0)+23>>0]&1|0)!=0){Ne(c[h>>2]|0,15088,j);i=p;return}if((c[(c[s>>2]|0)+8>>2]|0)!=0){Ne(c[h>>2]|0,15120,j);i=p;return}if(((c[(c[k>>2]|0)+24>>2]&524288|0)!=0?(c[(c[s>>2]|0)+16>>2]|0)!=0:0)?(c[o>>2]|0)!=0:0){Ne(c[h>>2]|0,15152,j);i=p;return}if((d[(c[r>>2]|0)+20>>0]|0)!=0?(c[o>>2]|0)==0:0){Ne(c[h>>2]|0,15216,j);i=p;return}do{if((c[o>>2]|0)!=0){c[n>>2]=0;if((gp(c[k>>2]|0,c[o>>2]|0,1,98,n)|0)!=0){a[(c[k>>2]|0)+64>>0]=1;i=p;return}if((c[n>>2]|0)!=0){pf(c[n>>2]|0);break}Ne(c[h>>2]|0,15272,j);i=p;return}}while(0);c[m>>2]=gm(c[k>>2]|0,c[c[l>>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0)|0;if((c[m>>2]|0)!=0){c[g>>2]=(c[m>>2]|0)+((c[(c[l>>2]|0)+4>>2]|0)-1);c[q>>2]=c[(c[k>>2]|0)+24>>2];while(1){if(!((c[g>>2]|0)>>>0>(c[m>>2]|0)>>>0)){break}if((a[c[g>>2]>>0]|0)!=59?(a[48+(d[c[g>>2]>>0]|0)>>0]&1|0)==0:0){break}e=c[g>>2]|0;c[g>>2]=e+ -1;a[e>>0]=0}e=(c[k>>2]|0)+24|0;c[e>>2]=c[e>>2]|2097152;e=c[h>>2]|0;l=(c[t>>2]|0)==1?14808:14832;n=c[(c[s>>2]|0)+48>>2]|0;r=c[m>>2]|0;s=(c[(c[s>>2]|0)+48>>2]|0)+1|0;v=c[v>>2]|0;c[j>>2]=c[u>>2];c[j+4>>2]=l;c[j+8>>2]=n;c[j+12>>2]=r;c[j+16>>2]=s;c[j+20>>2]=v;Qo(e,15320,j);Wb(c[k>>2]|0,c[m>>2]|0);c[(c[k>>2]|0)+24>>2]=c[q>>2]}hp(c[h>>2]|0,c[t>>2]|0,(c[o>>2]|0)!=0?3:2);ip(c[h>>2]|0,c[w>>2]|0,c[c[w>>2]>>2]|0);i=p;return}function Do(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+48|0;k=f;j=f+40|0;m=f+36|0;g=f+32|0;n=f+28|0;o=f+24|0;l=f+20|0;p=f+16|0;r=f+12|0;h=f+8|0;q=f+4|0;c[j>>2]=d;c[m>>2]=e;c[h>>2]=c[c[j>>2]>>2];if((a[(c[h>>2]|0)+64>>0]|0)!=0){e=c[h>>2]|0;d=c[m>>2]|0;gn(e,d);i=f;return}c[n>>2]=ap(c[j>>2]|0,0,(c[m>>2]|0)+8|0)|0;if((c[n>>2]|0)==0){e=c[h>>2]|0;d=c[m>>2]|0;gn(e,d);i=f;return}if((a[(c[n>>2]|0)+44>>0]&16|0)!=0){Ne(c[j>>2]|0,14880,k);e=c[h>>2]|0;d=c[m>>2]|0;gn(e,d);i=f;return}e=c[j>>2]|0;if((c[(c[n>>2]|0)+12>>2]|0)!=0){Ne(e,14920,k);e=c[h>>2]|0;d=c[m>>2]|0;gn(e,d);i=f;return}if(0!=(bp(e,c[c[n>>2]>>2]|0)|0)){e=c[h>>2]|0;d=c[m>>2]|0;gn(e,d);i=f;return}c[l>>2]=Qe(c[h>>2]|0,c[(c[n>>2]|0)+68>>2]|0)|0;c[g>>2]=ne(c[h>>2]|0,76)|0;if((c[g>>2]|0)==0){e=c[h>>2]|0;d=c[m>>2]|0;gn(e,d);i=f;return}c[(c[j>>2]|0)+484>>2]=c[g>>2];b[(c[g>>2]|0)+40>>1]=1;b[(c[g>>2]|0)+38>>1]=b[(c[n>>2]|0)+38>>1]|0;c[r>>2]=((((b[(c[g>>2]|0)+38>>1]|0)-1|0)/8|0)<<3)+8;d=ne(c[h>>2]|0,(c[r>>2]|0)*24|0)|0;c[(c[g>>2]|0)+4>>2]=d;d=c[h>>2]|0;c[k>>2]=c[c[n>>2]>>2];d=Oe(d,14952,k)|0;c[c[g>>2]>>2]=d;if((c[(c[g>>2]|0)+4>>2]|0)!=0?(c[c[g>>2]>>2]|0)!=0:0){dE(c[(c[g>>2]|0)+4>>2]|0,c[(c[n>>2]|0)+4>>2]|0,(b[(c[g>>2]|0)+38>>1]|0)*24|0)|0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(b[(c[g>>2]|0)+38>>1]|0)){break}c[q>>2]=(c[(c[g>>2]|0)+4>>2]|0)+((c[p>>2]|0)*24|0);d=he(c[h>>2]|0,c[c[q>>2]>>2]|0)|0;c[c[q>>2]>>2]=d;c[(c[q>>2]|0)+16>>2]=0;c[(c[q>>2]|0)+12>>2]=0;c[(c[q>>2]|0)+4>>2]=0;c[(c[q>>2]|0)+8>>2]=0;c[p>>2]=(c[p>>2]|0)+1}c[(c[g>>2]|0)+68>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[l>>2]<<4)+12>>2];c[(c[g>>2]|0)+48>>2]=c[(c[n>>2]|0)+48>>2];b[(c[g>>2]|0)+40>>1]=1;cp(c[j>>2]|0,0,c[l>>2]|0);c[o>>2]=Ro(c[j>>2]|0)|0;if((c[o>>2]|0)==0){e=c[h>>2]|0;d=c[m>>2]|0;gn(e,d);i=f;return}So(c[j>>2]|0,c[l>>2]|0);e=c[h>>2]|0;d=c[m>>2]|0;gn(e,d);i=f;return}a[(c[h>>2]|0)+64>>0]=1;e=c[h>>2]|0;d=c[m>>2]|0;gn(e,d);i=f;return}function Eo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;m=i;i=i+80|0;h=m;g=m+68|0;o=m+64|0;k=m+60|0;f=m+56|0;j=m+52|0;n=m+48|0;l=m+44|0;e=m+40|0;s=m+36|0;p=m+32|0;q=m+28|0;r=m+24|0;c[g>>2]=b;c[o>>2]=d;c[k>>2]=c[(c[g>>2]|0)+484>>2];c[f>>2]=c[c[g>>2]>>2];if((c[k>>2]|0)==0){i=m;return}Mo(c[g>>2]|0);c[(c[g>>2]|0)+512>>2]=0;if((c[(c[k>>2]|0)+52>>2]|0)<1){i=m;return}if((a[(c[f>>2]|0)+137>>0]|0)==0){if((c[o>>2]|0)!=0){c[(c[g>>2]|0)+500>>2]=(c[c[o>>2]>>2]|0)-(c[(c[g>>2]|0)+496>>2]|0)+(c[(c[o>>2]|0)+4>>2]|0)}r=c[f>>2]|0;c[h>>2]=(c[g>>2]|0)+496;c[j>>2]=Oe(r,14696,h)|0;c[l>>2]=Qe(c[f>>2]|0,c[(c[k>>2]|0)+68>>2]|0)|0;r=c[g>>2]|0;o=(c[l>>2]|0)==1?14808:14832;p=c[c[k>>2]>>2]|0;q=c[c[k>>2]>>2]|0;b=c[j>>2]|0;s=c[(c[g>>2]|0)+384>>2]|0;c[h>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(c[l>>2]<<4)>>2];c[h+4>>2]=o;c[h+8>>2]=p;c[h+12>>2]=q;c[h+16>>2]=b;c[h+20>>2]=s;Qo(r,14720,h);Wb(c[f>>2]|0,c[j>>2]|0);c[e>>2]=Ro(c[g>>2]|0)|0;So(c[g>>2]|0,c[l>>2]|0);To(c[e>>2]|0,139,0,0)|0;r=c[f>>2]|0;c[h>>2]=c[c[k>>2]>>2];c[n>>2]=Oe(r,14848,h)|0;Uo(c[e>>2]|0,c[l>>2]|0,c[n>>2]|0);r=c[e>>2]|0;s=c[l>>2]|0;b=c[c[k>>2]>>2]|0;Vo(r,142,s,0,0,b,(Mb(c[c[k>>2]>>2]|0)|0)+1|0)|0;i=m;return}c[p>>2]=c[(c[k>>2]|0)+68>>2];c[q>>2]=c[c[k>>2]>>2];c[r>>2]=Mb(c[q>>2]|0)|0;c[s>>2]=$g((c[p>>2]|0)+8|0,c[q>>2]|0,c[r>>2]|0,c[k>>2]|0)|0;if((c[s>>2]|0)!=0){a[(c[f>>2]|0)+64>>0]=1;i=m;return}else{c[(c[g>>2]|0)+484>>2]=0;i=m;return}}function Fo(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=i;i=i+32|0;k=o+28|0;p=o+24|0;r=o+20|0;j=o+16|0;q=o+12|0;m=o+8|0;l=o+4|0;n=o;c[k>>2]=b;c[p>>2]=e;c[r>>2]=f;c[j>>2]=g;c[q>>2]=h;yn(c[k>>2]|0,c[p>>2]|0,c[r>>2]|0,0,0,1,c[q>>2]|0);c[l>>2]=c[(c[k>>2]|0)+484>>2];if((c[l>>2]|0)==0){i=o;return}c[n>>2]=c[c[k>>2]>>2];c[m>>2]=Qe(c[n>>2]|0,c[(c[l>>2]|0)+68>>2]|0)|0;r=(c[l>>2]|0)+44|0;a[r>>0]=d[r>>0]|0|16;c[(c[l>>2]|0)+52>>2]=0;r=c[n>>2]|0;q=c[l>>2]|0;No(r,q,Lo(c[n>>2]|0,c[j>>2]|0)|0);No(c[n>>2]|0,c[l>>2]|0,0);q=c[n>>2]|0;r=c[l>>2]|0;No(q,r,he(c[n>>2]|0,c[c[l>>2]>>2]|0)|0);c[(c[k>>2]|0)+500>>2]=(c[c[j>>2]>>2]|0)+(c[(c[j>>2]|0)+4>>2]|0)-(c[c[p>>2]>>2]|0);if((c[(c[l>>2]|0)+56>>2]|0)==0){i=o;return}Oo(c[k>>2]|0,29,c[c[l>>2]>>2]|0,c[c[(c[l>>2]|0)+56>>2]>>2]|0,c[(c[(c[c[k>>2]>>2]|0)+16>>2]|0)+(c[m>>2]<<4)>>2]|0)|0;i=o;return}function Go(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Mo(c[d>>2]|0);c[(c[d>>2]|0)+512>>2]=0;c[(c[d>>2]|0)+516>>2]=0;i=b;return}function Ho(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d+4|0;e=d;c[g>>2]=a;c[f>>2]=b;c[e>>2]=(c[g>>2]|0)+512;b=c[f>>2]|0;if((c[c[e>>2]>>2]|0)==0){c[c[e>>2]>>2]=c[b>>2];c[(c[e>>2]|0)+4>>2]=c[(c[f>>2]|0)+4>>2];i=d;return}else{c[(c[e>>2]|0)+4>>2]=(c[c[f>>2]>>2]|0)+(c[b+4>>2]|0)-(c[c[e>>2]>>2]|0);i=d;return}}function Io(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+48|0;q=n;p=n+40|0;l=n+36|0;s=n+32|0;h=n+28|0;j=n+24|0;o=n+20|0;m=n+16|0;k=n+12|0;r=n+8|0;g=n+4|0;c[p>>2]=a;c[l>>2]=b;c[s>>2]=d;c[h>>2]=e;c[j>>2]=f;c[o>>2]=c[c[p>>2]>>2];c[k>>2]=Lo(c[c[p>>2]>>2]|0,c[s>>2]|0)|0;a:do{if((c[k>>2]|0)!=0?(c[l>>2]|0)!=0:0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[c[l>>2]>>2]|0)){break a}if((vc(c[k>>2]|0,c[(c[l>>2]|0)+8+(c[r>>2]<<4)>>2]|0)|0)==0){s=c[p>>2]|0;c[q>>2]=c[k>>2];Ne(s,14624,q)}c[r>>2]=(c[r>>2]|0)+1}}}while(0);if((c[l>>2]|0)!=0){c[g>>2]=24+(c[c[l>>2]>>2]<<4);c[m>>2]=Pm(c[o>>2]|0,c[l>>2]|0,c[g>>2]|0)|0}else{c[m>>2]=ne(c[o>>2]|0,24)|0}if((c[m>>2]|0)==0){dn(c[o>>2]|0,c[h>>2]|0);en(c[o>>2]|0,c[j>>2]|0);Wb(c[o>>2]|0,c[k>>2]|0);c[m>>2]=c[l>>2];s=c[m>>2]|0;i=n;return s|0}else{c[(c[m>>2]|0)+8+(c[c[m>>2]>>2]<<4)+8>>2]=c[j>>2];c[(c[m>>2]|0)+8+(c[c[m>>2]>>2]<<4)+4>>2]=c[h>>2];c[(c[m>>2]|0)+8+(c[c[m>>2]>>2]<<4)>>2]=c[k>>2];c[(c[m>>2]|0)+8+(c[c[m>>2]>>2]<<4)+12>>2]=0;s=c[m>>2]|0;c[s>>2]=(c[s>>2]|0)+1;s=c[m>>2]|0;i=n;return s|0}return 0}function Jo(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;j=i;i=i+16|0;l=j+4|0;k=j+8|0;h=j;c[l>>2]=f;a[k>>0]=g;c[h>>2]=b[11008+(c[l>>2]<<1)>>1]|0;c[h>>2]=(c[h>>2]|0)+(d[k>>0]|0);i=j;return e[11624+(c[h>>2]<<1)>>1]|0}function Ko(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;d=e+4|0;b=e;c[d>>2]=a;c[b>>2]=c[(c[d>>2]|0)+8>>2];while(1){if((c[c[d>>2]>>2]|0)<0){break}ln(c[d>>2]|0)|0}c[(c[d>>2]|0)+8>>2]=c[b>>2];i=e;return}function Lo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d+4|0;e=d;c[g>>2]=a;c[f>>2]=b;if((c[f>>2]|0)!=0){c[e>>2]=gm(c[g>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;hm(c[e>>2]|0)|0;a=c[e>>2]|0;i=d;return a|0}else{c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}return 0}function Mo(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;if((c[(c[d>>2]|0)+512>>2]|0)==0){i=b;return}if((c[(c[d>>2]|0)+484>>2]|0)==0){i=b;return}c[e>>2]=c[(c[d>>2]|0)+512>>2];c[f>>2]=c[(c[d>>2]|0)+516>>2];c[g>>2]=c[c[d>>2]>>2];a=c[g>>2]|0;d=c[(c[d>>2]|0)+484>>2]|0;No(a,d,gm(c[g>>2]|0,c[e>>2]|0,c[f>>2]|0)|0);i=b;return}function No(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;k=j+24|0;f=j+20|0;e=j+16|0;h=j+12|0;m=j+8|0;g=j+4|0;l=j;c[k>>2]=a;c[f>>2]=b;c[e>>2]=d;b=(c[f>>2]|0)+52|0;a=c[b>>2]|0;c[b>>2]=a+1;c[h>>2]=a;c[m>>2]=1+(c[(c[f>>2]|0)+52>>2]|0)<<2;c[g>>2]=Pm(c[k>>2]|0,c[(c[f>>2]|0)+56>>2]|0,c[m>>2]|0)|0;if((c[g>>2]|0)!=0){c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]=c[e>>2];c[(c[g>>2]|0)+((c[h>>2]|0)+1<<2)>>2]=0;a=c[g>>2]|0;m=c[f>>2]|0;m=m+56|0;c[m>>2]=a;i=j;return}c[l>>2]=0;while(1){d=c[k>>2]|0;if((c[l>>2]|0)>=(c[h>>2]|0)){break}Wb(d,c[(c[(c[f>>2]|0)+56>>2]|0)+(c[l>>2]<<2)>>2]|0);c[l>>2]=(c[l>>2]|0)+1}Wb(d,c[e>>2]|0);Wb(c[k>>2]|0,c[(c[f>>2]|0)+56>>2]|0);c[(c[f>>2]|0)+52>>2]=0;a=c[g>>2]|0;m=c[f>>2]|0;m=m+56|0;c[m>>2]=a;i=j;return}function Oo(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=i;i=i+48|0;m=o;j=o+32|0;l=o+28|0;h=o+24|0;p=o+20|0;q=o+16|0;r=o+12|0;n=o+8|0;k=o+4|0;c[l>>2]=a;c[h>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[n>>2]=c[c[l>>2]>>2];if((d[(c[n>>2]|0)+137>>0]|0|0)==0?(d[(c[l>>2]|0)+451>>0]|0|0)==0:0){if((c[(c[n>>2]|0)+276>>2]|0)==0){c[j>>2]=0;a=c[j>>2]|0;i=o;return a|0}c[k>>2]=tb[c[(c[n>>2]|0)+276>>2]&1](c[(c[n>>2]|0)+280>>2]|0,c[h>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[(c[l>>2]|0)+492>>2]|0)|0;if((c[k>>2]|0)!=1){if((c[k>>2]|0)!=0&(c[k>>2]|0)!=2){c[k>>2]=1;Po(c[l>>2]|0)}}else{Ne(c[l>>2]|0,14656,m);c[(c[l>>2]|0)+12>>2]=23}c[j>>2]=c[k>>2];a=c[j>>2]|0;i=o;return a|0}c[j>>2]=0;a=c[j>>2]|0;i=o;return a|0}function Po(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b+4|0;c[d>>2]=a;Ne(c[d>>2]|0,14672,b);c[(c[d>>2]|0)+12>>2]=1;i=b;return}function Qo(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+144|0;f=l+36|0;n=l+32|0;m=l+16|0;g=l+8|0;h=l+4|0;j=l;k=l+40|0;c[f>>2]=b;c[n>>2]=d;c[h>>2]=0;c[j>>2]=c[c[f>>2]>>2];if((c[(c[f>>2]|0)+64>>2]|0)!=0){i=l;return}c[m>>2]=e;c[g>>2]=kn(c[j>>2]|0,c[n>>2]|0,m)|0;if((c[g>>2]|0)==0){i=l;return}n=(c[f>>2]|0)+18|0;a[n>>0]=(a[n>>0]|0)+1<<24>>24;n=k+0|0;e=(c[f>>2]|0)+440|0;m=n+96|0;do{a[n>>0]=a[e>>0]|0;n=n+1|0;e=e+1|0}while((n|0)<(m|0));n=(c[f>>2]|0)+440|0;m=n+96|0;do{c[n>>2]=0;n=n+4|0}while((n|0)<(m|0));mf(c[f>>2]|0,c[g>>2]|0,h)|0;Wb(c[j>>2]|0,c[h>>2]|0);Wb(c[j>>2]|0,c[g>>2]|0);n=(c[f>>2]|0)+440|0;e=k+0|0;m=n+96|0;do{a[n>>0]=a[e>>0]|0;n=n+1|0;e=e+1|0}while((n|0)<(m|0));b=(c[f>>2]|0)+18|0;a[b>>0]=(a[b>>0]|0)+ -1<<24>>24;i=l;return}function Ro(d){d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=d;c[f>>2]=c[(c[g>>2]|0)+8>>2];if((c[f>>2]|0)==0){d=Pe(c[g>>2]|0)|0;c[(c[g>>2]|0)+8>>2]=d;c[f>>2]=d;if((c[f>>2]|0)!=0){$o(c[f>>2]|0,155)|0}if((c[(c[g>>2]|0)+408>>2]|0)==0?(b[(c[c[g>>2]>>2]|0)+60>>1]&8|0)==0:0){a[(c[g>>2]|0)+23>>0]=1}}i=e;return c[f>>2]|0}function So(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;f=d+16|0;g=d+12|0;e=d+8|0;j=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[e>>2]=Zo(c[f>>2]|0)|0;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[f>>2]|0)+8>>2];To(c[h>>2]|0,25,(c[c[(c[(c[j>>2]|0)+16>>2]|0)+(c[g>>2]<<4)+12>>2]>>2]|0)+1|0,c[e>>2]|0)|0;Wo(c[h>>2]|0,51,c[g>>2]|0,1,c[e>>2]|0)|0;_o(c[f>>2]|0,c[e>>2]|0);i=d;return}function To(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f+8|0;h=f+4|0;g=f;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=Wo(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0,0)|0;i=f;return a|0}function Uo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;g=e+16|0;k=e+12|0;h=e+8|0;f=e+4|0;j=e;c[g>>2]=a;c[k>>2]=b;c[h>>2]=d;c[j>>2]=Wo(c[g>>2]|0,119,c[k>>2]|0,0,0)|0;Ye(c[g>>2]|0,c[j>>2]|0,c[h>>2]|0,-1);c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[c[g>>2]>>2]|0)+20>>2]|0)){break}Ue(c[g>>2]|0,c[f>>2]|0);c[f>>2]=(c[f>>2]|0)+1}i=e;return}function Vo(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+32|0;n=k+28|0;r=k+24|0;q=k+20|0;p=k+16|0;o=k+12|0;m=k+8|0;l=k+4|0;j=k;c[n>>2]=a;c[r>>2]=b;c[q>>2]=d;c[p>>2]=e;c[o>>2]=f;c[m>>2]=g;c[l>>2]=h;c[j>>2]=Wo(c[n>>2]|0,c[r>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0)|0;Ye(c[n>>2]|0,c[j>>2]|0,c[m>>2]|0,c[l>>2]|0);i=k;return c[j>>2]|0}function Wo(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;o=j+28|0;k=j+24|0;n=j+20|0;h=j+16|0;p=j+12|0;q=j+8|0;l=j+4|0;m=j;c[k>>2]=b;c[n>>2]=d;c[h>>2]=e;c[p>>2]=f;c[q>>2]=g;c[l>>2]=c[(c[k>>2]|0)+32>>2];if((c[(c[(c[k>>2]|0)+24>>2]|0)+84>>2]|0)<=(c[l>>2]|0)?(Xo(c[k>>2]|0)|0)!=0:0){c[o>>2]=1;b=c[o>>2]|0;i=j;return b|0}b=(c[k>>2]|0)+32|0;c[b>>2]=(c[b>>2]|0)+1;c[m>>2]=(c[(c[k>>2]|0)+4>>2]|0)+((c[l>>2]|0)*20|0);a[c[m>>2]>>0]=c[n>>2];a[(c[m>>2]|0)+3>>0]=0;c[(c[m>>2]|0)+4>>2]=c[h>>2];c[(c[m>>2]|0)+8>>2]=c[p>>2];c[(c[m>>2]|0)+12>>2]=c[q>>2];c[(c[m>>2]|0)+16>>2]=0;a[(c[m>>2]|0)+1>>0]=0;c[o>>2]=c[l>>2];b=c[o>>2]|0;i=j;return b|0}function Xo(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+12|0;b=d+8|0;e=d+4|0;g=d;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+24>>2];if((c[(c[e>>2]|0)+84>>2]|0)!=0){a=c[(c[e>>2]|0)+84>>2]<<1}else{a=51}c[g>>2]=a;c[b>>2]=Pm(c[c[e>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0,(c[g>>2]|0)*20|0)|0;if((c[b>>2]|0)==0){a=c[b>>2]|0;a=(a|0)!=0;a=a?0:7;i=d;return a|0}a=((Yo(c[c[e>>2]>>2]|0,c[b>>2]|0)|0)>>>0)/20|0;c[(c[e>>2]|0)+84>>2]=a;c[(c[f>>2]|0)+4>>2]=c[b>>2];a=c[b>>2]|0;a=(a|0)!=0;a=a?0:7;i=d;return a|0}function Yo(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+8|0;g=d+4|0;h=d;c[g>>2]=a;c[h>>2]=b;if((Qm(c[g>>2]|0,c[h>>2]|0)|0)!=0){c[f>>2]=e[(c[g>>2]|0)+240>>1]|0;a=c[f>>2]|0;i=d;return a|0}else{c[f>>2]=ub[c[38560>>2]&31](c[h>>2]|0)|0;a=c[f>>2]|0;i=d;return a|0}return 0}function Zo(b){b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+4|0;g=e;c[g>>2]=b;b=c[g>>2]|0;if((d[(c[g>>2]|0)+19>>0]|0|0)==0){g=b+72|0;b=(c[g>>2]|0)+1|0;c[g>>2]=b;c[f>>2]=b;b=c[f>>2]|0;i=e;return b|0}else{h=b+19|0;b=(a[h>>0]|0)+ -1<<24>>24;a[h>>0]=b;c[f>>2]=c[(c[g>>2]|0)+24+((b&255)<<2)>>2];b=c[f>>2]|0;i=e;return b|0}return 0}function _o(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f+12|0;h=f+8|0;k=f+4|0;g=f;c[j>>2]=b;c[h>>2]=e;if((c[h>>2]|0)==0){i=f;return}if((d[(c[j>>2]|0)+19>>0]|0|0)>=8){i=f;return}c[k>>2]=0;c[g>>2]=(c[j>>2]|0)+116;while(1){if((c[k>>2]|0)>=10){e=8;break}if((c[(c[g>>2]|0)+12>>2]|0)==(c[h>>2]|0)){e=6;break}c[k>>2]=(c[k>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+20}if((e|0)==6){a[(c[g>>2]|0)+6>>0]=1;i=f;return}else if((e|0)==8){k=c[h>>2]|0;e=(c[j>>2]|0)+19|0;b=a[e>>0]|0;a[e>>0]=b+1<<24>>24;c[(c[j>>2]|0)+24+((b&255)<<2)>>2]=k;i=f;return}}function $o(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=Wo(c[f>>2]|0,c[e>>2]|0,0,0,0)|0;i=d;return a|0}function ap(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;j=e+16|0;h=e+12|0;g=e+8|0;f=e+4|0;k=e;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;if((c[c[g>>2]>>2]|0)!=0){c[k>>2]=Qe(c[c[j>>2]>>2]|0,c[c[g>>2]>>2]|0)|0;c[f>>2]=c[(c[(c[c[j>>2]>>2]|0)+16>>2]|0)+(c[k>>2]<<4)>>2]}else{c[f>>2]=c[(c[g>>2]|0)+4>>2]}a=Me(c[j>>2]|0,c[h>>2]|0,c[(c[g>>2]|0)+8>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function bp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;f=h;g=h+12|0;d=h+8|0;e=h+4|0;c[d>>2]=a;c[e>>2]=b;if((Mb(c[e>>2]|0)|0)>6?0==(Lb(c[e>>2]|0,15048,7)|0):0){a=c[d>>2]|0;c[f>>2]=c[e>>2];Ne(a,15056,f);c[g>>2]=1;a=c[g>>2]|0;i=h;return a|0}c[g>>2]=0;a=c[g>>2]|0;i=h;return a|0}function cp(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;l=g+12|0;h=g+8|0;k=g+4|0;j=g;c[l>>2]=b;c[h>>2]=e;c[k>>2]=f;f=c[l>>2]|0;if((c[(c[l>>2]|0)+408>>2]|0)!=0){f=c[f+408>>2]|0}c[j>>2]=f;dp(c[l>>2]|0,c[k>>2]|0);b=(c[j>>2]|0)+328|0;c[b>>2]=c[b>>2]|1<>2];b=(c[j>>2]|0)+20|0;a[b>>0]=d[b>>0]|0|c[h>>2];i=g;return}function dp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;j=d+16|0;h=d+12|0;e=d+8|0;g=d+4|0;f=d;c[j>>2]=a;c[h>>2]=b;b=c[j>>2]|0;if((c[(c[j>>2]|0)+408>>2]|0)!=0){b=c[b+408>>2]|0}c[e>>2]=b;c[g>>2]=c[c[e>>2]>>2];c[f>>2]=1<>2];if((c[(c[e>>2]|0)+332>>2]&c[f>>2]|0)!=0){i=d;return}j=(c[e>>2]|0)+332|0;c[j>>2]=c[j>>2]|c[f>>2];c[(c[e>>2]|0)+336+(c[h>>2]<<2)>>2]=c[c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]>>2];if((c[h>>2]|0)!=1){i=d;return}ep(c[e>>2]|0)|0;i=d;return}function ep(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;h=d;e=d+20|0;f=d+16|0;j=d+12|0;g=d+8|0;k=d+4|0;c[f>>2]=b;c[j>>2]=c[c[f>>2]>>2];if((c[(c[(c[j>>2]|0)+16>>2]|0)+20>>2]|0)==0?(a[(c[f>>2]|0)+450>>0]|0)==0:0){c[g>>2]=kh(c[c[j>>2]>>2]|0,0,c[j>>2]|0,k,0,542)|0;if((c[g>>2]|0)!=0){Ne(c[f>>2]|0,14976,h);c[(c[f>>2]|0)+12>>2]=c[g>>2];c[e>>2]=1;k=c[e>>2]|0;i=d;return k|0}c[(c[(c[j>>2]|0)+16>>2]|0)+20>>2]=c[k>>2];if(7==(dg(c[k>>2]|0,c[(c[j>>2]|0)+72>>2]|0,-1,0)|0)){a[(c[j>>2]|0)+64>>0]=1;c[e>>2]=1;k=c[e>>2]|0;i=d;return k|0}}c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}function fp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;h=l+24|0;k=l+20|0;m=l+16|0;g=l+12|0;n=l+8|0;e=l+4|0;j=l;c[h>>2]=a;c[k>>2]=b;c[m>>2]=d;c[g>>2]=0;c[e>>2]=Mb(c[k>>2]|0)|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){f=7;break}a=c[n>>2]|0;c[j>>2]=(c[n>>2]|0)<2?a^1:a;if(!((c[m>>2]|0)!=0?(vc(c[m>>2]|0,c[(c[(c[h>>2]|0)+16>>2]|0)+(c[j>>2]<<4)>>2]|0)|0)!=0:0)){f=5}if((f|0)==5?(f=0,c[g>>2]=Wg((c[(c[(c[h>>2]|0)+16>>2]|0)+(c[j>>2]<<4)+12>>2]|0)+8|0,c[k>>2]|0,c[e>>2]|0)|0,(c[g>>2]|0)!=0):0){f=7;break}c[n>>2]=(c[n>>2]|0)+1}if((f|0)==7){i=l;return c[g>>2]|0}return 0}function gp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+16|0;n=h+8|0;m=h+4|0;l=h+13|0;k=h+12|0;j=h;c[n>>2]=b;c[m>>2]=d;a[l>>0]=e;a[k>>0]=f;c[j>>2]=g;b=np(c[n>>2]|0,c[m>>2]|0,a[l>>0]|0,a[k>>0]|0,c[j>>2]|0,0)|0;i=h;return b|0}function hp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;f=j+24|0;k=j+20|0;l=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;m=j;c[f>>2]=a;c[k>>2]=b;c[l>>2]=d;c[e>>2]=Ro(c[f>>2]|0)|0;if((c[e>>2]|0)==0){i=j;return}c[g>>2]=Zo(c[f>>2]|0)|0;c[h>>2]=Zo(c[f>>2]|0)|0;Wo(c[e>>2]|0,50,c[k>>2]|0,c[g>>2]|0,2)|0;Ue(c[e>>2]|0,c[k>>2]|0);To(c[e>>2]|0,25,c[l>>2]|0,c[h>>2]|0)|0;c[m>>2]=Wo(c[e>>2]|0,83,c[h>>2]|0,0,c[g>>2]|0)|0;Se(c[e>>2]|0,-120);Wo(c[e>>2]|0,51,c[k>>2]|0,2,c[h>>2]|0)|0;mp(c[e>>2]|0,c[m>>2]|0);_o(c[f>>2]|0,c[g>>2]|0);_o(c[f>>2]|0,c[h>>2]|0);i=j;return}function ip(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+48|0;l=k;j=k+32|0;h=k+28|0;e=k+24|0;f=k+20|0;m=k+16|0;g=k+12|0;n=k+8|0;o=k+4|0;c[j>>2]=a;c[h>>2]=b;c[e>>2]=d;c[f>>2]=Ro(c[j>>2]|0)|0;if((c[f>>2]|0)==0){i=k;return}c[g>>2]=Qe(c[c[j>>2]>>2]|0,c[(c[h>>2]|0)+68>>2]|0)|0;c[n>>2]=jp(c[j>>2]|0,c[h>>2]|0)|0;while(1){if((c[n>>2]|0)==0){break}c[o>>2]=Qe(c[c[j>>2]>>2]|0,c[(c[n>>2]|0)+20>>2]|0)|0;Vo(c[f>>2]|0,123,c[o>>2]|0,0,0,c[c[n>>2]>>2]|0,0)|0;c[n>>2]=c[(c[n>>2]|0)+32>>2]}Vo(c[f>>2]|0,121,c[g>>2]|0,0,0,c[c[h>>2]>>2]|0,0)|0;a=c[c[j>>2]>>2]|0;c[l>>2]=c[e>>2];c[m>>2]=Oe(a,15432,l)|0;if((c[m>>2]|0)==0){i=k;return}Uo(c[f>>2]|0,c[g>>2]|0,c[m>>2]|0);a=kp(c[j>>2]|0,c[h>>2]|0)|0;c[m>>2]=a;if((a|0)==0){i=k;return}Uo(c[f>>2]|0,1,c[m>>2]|0);i=k;return}function jp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;e=f+24|0;m=f+20|0;k=f+16|0;l=f+12|0;h=f+8|0;j=f+4|0;g=f;c[m>>2]=b;c[k>>2]=d;c[l>>2]=c[(c[(c[c[m>>2]>>2]|0)+16>>2]|0)+28>>2];c[h>>2]=0;if((a[(c[m>>2]|0)+438>>0]|0)!=0){c[e>>2]=0;m=c[e>>2]|0;i=f;return m|0}a:do{if((c[l>>2]|0)!=(c[(c[k>>2]|0)+68>>2]|0)){c[j>>2]=c[(c[l>>2]|0)+48>>2];while(1){if((c[j>>2]|0)==0){break a}c[g>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[g>>2]|0)+24>>2]|0)==(c[(c[k>>2]|0)+68>>2]|0)?0==(vc(c[(c[g>>2]|0)+4>>2]|0,c[c[k>>2]>>2]|0)|0):0){if((c[h>>2]|0)!=0){d=c[h>>2]|0}else{d=c[(c[k>>2]|0)+64>>2]|0}c[(c[g>>2]|0)+32>>2]=d;c[h>>2]=c[g>>2]}c[j>>2]=c[c[j>>2]>>2]}}}while(0);if((c[h>>2]|0)!=0){g=c[h>>2]|0}else{g=c[(c[k>>2]|0)+64>>2]|0}c[e>>2]=g;m=c[e>>2]|0;i=f;return m|0}function kp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;g=e;f=e+28|0;m=e+24|0;k=e+20|0;h=e+16|0;l=e+12|0;j=e+8|0;d=e+4|0;c[f>>2]=a;c[m>>2]=b;c[h>>2]=0;c[l>>2]=c[(c[(c[c[f>>2]>>2]|0)+16>>2]|0)+28>>2];a:do{if((c[(c[m>>2]|0)+68>>2]|0)!=(c[l>>2]|0)){c[j>>2]=c[c[f>>2]>>2];c[k>>2]=jp(c[f>>2]|0,c[m>>2]|0)|0;while(1){if((c[k>>2]|0)==0){break a}if((c[(c[k>>2]|0)+20>>2]|0)==(c[l>>2]|0)){c[h>>2]=lp(c[j>>2]|0,c[h>>2]|0,c[c[k>>2]>>2]|0)|0}c[k>>2]=c[(c[k>>2]|0)+32>>2]}}}while(0);if((c[h>>2]|0)==0){a=c[h>>2]|0;i=e;return a|0}a=c[c[f>>2]>>2]|0;c[g>>2]=c[h>>2];c[d>>2]=Oe(a,15448,g)|0;Wb(c[c[f>>2]>>2]|0,c[h>>2]|0);c[h>>2]=c[d>>2];a=c[h>>2]|0;i=e;return a|0}function lp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;j=e;h=e+20|0;g=e+16|0;k=e+12|0;f=e+8|0;c[h>>2]=a;c[g>>2]=b;c[k>>2]=d;d=c[h>>2]|0;if((c[g>>2]|0)!=0){a=c[k>>2]|0;c[j>>2]=c[g>>2];c[j+4>>2]=a;c[f>>2]=Oe(d,15480,j)|0;Wb(c[h>>2]|0,c[g>>2]|0);a=c[f>>2]|0;i=e;return a|0}else{c[j>>2]=c[k>>2];c[f>>2]=Oe(d,15472,j)|0;a=c[f>>2]|0;i=e;return a|0}return 0}function mp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;We(c[e>>2]|0,c[f>>2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[(c[e>>2]|0)+24>>2]|0)+88>>2]=(c[(c[e>>2]|0)+32>>2]|0)-1;i=d;return}function np(f,g,j,k,l,m){f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;r=i;i=i+64|0;A=r;n=r+52|0;s=r+48|0;w=r+44|0;t=r+57|0;u=r+56|0;o=r+40|0;B=r+36|0;y=r+32|0;v=r+28|0;p=r+24|0;x=r+20|0;z=r+16|0;q=r+12|0;C=r+8|0;c[s>>2]=f;c[w>>2]=g;a[t>>0]=j;a[u>>0]=k;c[o>>2]=l;c[B>>2]=m;c[v>>2]=0;c[p>>2]=0;c[x>>2]=1;c[z>>2]=1472;c[q>>2]=0;if((c[w>>2]|0)==0){c[c[o>>2]>>2]=0;c[n>>2]=0;f=c[n>>2]|0;i=r;return f|0}c[y>>2]=d[c[w>>2]>>0]|0;if((c[y>>2]|0)==159){c[y>>2]=d[(c[w>>2]|0)+38>>0]|0}do{if((c[y>>2]|0)==157){if((d[c[(c[w>>2]|0)+12>>2]>>0]|0|0)!=132?(d[c[(c[w>>2]|0)+12>>2]>>0]|0|0)!=133:0){break}c[w>>2]=c[(c[w>>2]|0)+12>>2];c[y>>2]=d[c[w>>2]>>0]|0;c[x>>2]=-1;c[z>>2]=15496}}while(0);do{if((c[y>>2]|0)==97|(c[y>>2]|0)==133|(c[y>>2]|0)==132){c[p>>2]=op(c[s>>2]|0,c[B>>2]|0)|0;if((c[p>>2]|0)!=0){if((c[(c[w>>2]|0)+4>>2]&1024|0)!=0){g=c[p>>2]|0;j=c[(c[w>>2]|0)+8>>2]|0;f=c[x>>2]|0;f=lE(j|0,((j|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;Sd(g,f,D)}else{f=c[s>>2]|0;g=c[(c[w>>2]|0)+8>>2]|0;c[A>>2]=c[z>>2];c[A+4>>2]=g;c[v>>2]=Oe(f,8896,A)|0;if((c[v>>2]|0)==0){t=35;break}of(c[p>>2]|0,-1,c[v>>2]|0,1,16)}if((c[y>>2]|0)==132|(c[y>>2]|0)==133?(d[u>>0]|0|0)==98:0){pp(c[p>>2]|0,99,1)}else{pp(c[p>>2]|0,a[u>>0]|0,1)}if((b[(c[p>>2]|0)+28>>1]&12|0)!=0){f=(c[p>>2]|0)+28|0;b[f>>1]=(e[f>>1]|0)&-3}if((d[t>>0]|0|0)!=1){c[q>>2]=tk(c[p>>2]|0,d[t>>0]|0)|0;t=34}else{t=34}}else{t=35}}else{if((c[y>>2]|0)==157){f=0==(gp(c[s>>2]|0,c[(c[w>>2]|0)+12>>2]|0,a[t>>0]|0,a[u>>0]|0,p)|0);if(!(f&(c[p>>2]|0)!=0)){t=34;break}qp(c[p>>2]|0)|0;f=(c[p>>2]|0)+16|0;s=c[p>>2]|0;if((c[f>>2]|0)==0?(c[f+4>>2]|0)==-2147483648:0){f=s+28|0;b[f>>1]=(e[f>>1]|0)&-5;f=(c[p>>2]|0)+28|0;b[f>>1]=e[f>>1]|0|8;h[(c[p>>2]|0)+8>>3]=-9223372036854776000.0}else{g=s+16|0;g=ZD(0,0,c[g>>2]|0,c[g+4>>2]|0)|0;f=(c[p>>2]|0)+16|0;c[f>>2]=g;c[f+4>>2]=D}h[(c[p>>2]|0)+8>>3]=-+h[(c[p>>2]|0)+8>>3];pp(c[p>>2]|0,a[u>>0]|0,a[t>>0]|0);t=34;break}else{if((c[y>>2]|0)==101){c[p>>2]=op(c[s>>2]|0,c[B>>2]|0)|0;if((c[p>>2]|0)==0){t=35;break}else{t=34;break}}if((c[y>>2]|0)!=134){t=34;break}c[p>>2]=op(c[s>>2]|0,c[B>>2]|0)|0;if((c[p>>2]|0)==0){t=35;break}c[v>>2]=(c[(c[w>>2]|0)+8>>2]|0)+2;c[C>>2]=(Mb(c[v>>2]|0)|0)-1;f=c[p>>2]|0;t=rp(c[s>>2]|0,c[v>>2]|0,c[C>>2]|0)|0;Qd(f,t,(c[C>>2]|0)/2|0,0,16)|0;t=34;break}}}while(0);if((t|0)==34){c[c[o>>2]>>2]=c[p>>2];c[n>>2]=c[q>>2];f=c[n>>2]|0;i=r;return f|0}else if((t|0)==35){a[(c[s>>2]|0)+64>>0]=1;Wb(c[s>>2]|0,c[v>>2]|0);pf(c[p>>2]|0);c[n>>2]=7;f=c[n>>2]|0;i=r;return f|0}return 0}function op(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d+4|0;c[e>>2]=a;c[d>>2]=b;a=nf(c[e>>2]|0)|0;i=d;return a|0}function pp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f;h=f+5|0;g=f+4|0;c[j>>2]=b;a[h>>0]=d;a[g>>0]=e;up(c[j>>2]|0,a[h>>0]|0,a[g>>0]|0);i=f;return}function qp(d){d=d|0;var f=0,g=0,j=0,k=0.0;f=i;i=i+16|0;g=f;c[g>>2]=d;do{if((b[(c[g>>2]|0)+28>>1]&13|0)==0){j=0==(kg(c[(c[g>>2]|0)+4>>2]|0,(c[g>>2]|0)+16|0,c[(c[g>>2]|0)+24>>2]|0,a[(c[g>>2]|0)+30>>0]|0)|0);d=c[g>>2]|0;if(j){b[(c[g>>2]|0)+28>>1]=(e[d+28>>1]|0)&-16896|4;break}else{k=+Fd(d);h[(c[g>>2]|0)+8>>3]=k;b[(c[g>>2]|0)+28>>1]=(e[(c[g>>2]|0)+28>>1]|0)&-16896|8;sp(c[g>>2]|0);break}}}while(0);j=(c[g>>2]|0)+28|0;b[j>>1]=(e[j>>1]|0)&-19;i=f;return 0}function rp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+16|0;k=f+12|0;j=f+8|0;g=f+4|0;h=f;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[g>>2]=Le(c[l>>2]|0,((c[j>>2]|0)/2|0)+1|0)|0;c[j>>2]=(c[j>>2]|0)+ -1;if((c[g>>2]|0)==0){l=c[g>>2]|0;i=f;return l|0}c[h>>2]=0;while(1){e=c[h>>2]|0;if((c[h>>2]|0)>=(c[j>>2]|0)){break}l=((lk(a[(c[k>>2]|0)+e>>0]|0)|0)&255)<<4;l=(l|(lk(a[(c[k>>2]|0)+((c[h>>2]|0)+1)>>0]|0)|0)&255)&255;a[(c[g>>2]|0)+((c[h>>2]|0)/2|0)>>0]=l;c[h>>2]=(c[h>>2]|0)+2}a[(c[g>>2]|0)+((e|0)/2|0)>>0]=0;l=c[g>>2]|0;i=f;return l|0}function sp(a){a=a|0;var d=0,f=0,g=0;d=i;i=i+16|0;f=d;c[f>>2]=a;g=tp(+h[(c[f>>2]|0)+8>>3])|0;a=(c[f>>2]|0)+16|0;c[a>>2]=g;c[a+4>>2]=D;a=(c[f>>2]|0)+16|0;if(!(+h[(c[f>>2]|0)+8>>3]==+((c[a>>2]|0)>>>0)+4294967296.0*+(c[a+4>>2]|0))){i=d;return}g=(c[f>>2]|0)+16|0;a=c[g+4>>2]|0;if(!((a|0)>-2147483648|(a|0)==-2147483648&(c[g>>2]|0)>>>0>0)){i=d;return}g=(c[f>>2]|0)+16|0;a=c[g+4>>2]|0;if(!((a|0)<2147483647|(a|0)==2147483647&(c[g>>2]|0)>>>0<4294967295)){i=d;return}g=(c[f>>2]|0)+28|0;b[g>>1]=e[g>>1]|0|4;i=d;return}function tp(a){a=+a;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b;h[e>>3]=a;do{if(!(+h[e>>3]<=-9223372036854776000.0)){if(+h[e>>3]>=9223372036854776000.0){e=d;c[e>>2]=-1;c[e+4>>2]=2147483647;break}else{a=+h[e>>3];f=+O(a)>=1.0?a>0.0?(ea(+N(a/4294967296.0),4294967295.0)|0)>>>0:~~+_((a- +(~~a>>>0))/4294967296.0)>>>0:0;e=d;c[e>>2]=~~a>>>0;c[e+4>>2]=f;break}}else{f=d;c[f>>2]=0;c[f+4>>2]=-2147483648}}while(0);f=d;D=c[f+4>>2]|0;i=b;return c[f>>2]|0}function up(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;k=i;i=i+16|0;j=k;m=k+5|0;l=k+4|0;c[j>>2]=f;a[m>>0]=g;a[l>>0]=h;if((a[m>>0]|0)==97){if(0==(b[(c[j>>2]|0)+28>>1]&2|0)?(b[(c[j>>2]|0)+28>>1]&12|0)!=0:0){vp(c[j>>2]|0,d[l>>0]|0)|0}f=(c[j>>2]|0)+28|0;b[f>>1]=e[f>>1]&-13;i=k;return}if((a[m>>0]|0)==98){i=k;return}Ke(c[j>>2]|0);if((b[(c[j>>2]|0)+28>>1]&8|0)==0){i=k;return}sp(c[j>>2]|0);i=k;return}function vp(d,f){d=d|0;f=f|0;var g=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+32|0;o=n;j=n+28|0;l=n+24|0;m=n+20|0;g=n+16|0;p=n+12|0;c[l>>2]=d;c[m>>2]=f;c[g>>2]=0;c[p>>2]=e[(c[l>>2]|0)+28>>1]|0;c[n+8>>2]=32;if((me(c[l>>2]|0,32,0)|0)!=0){c[j>>2]=7;d=c[j>>2]|0;i=n;return d|0}f=c[(c[l>>2]|0)+4>>2]|0;d=c[l>>2]|0;if((c[p>>2]&4|0)!=0){q=d+16|0;p=c[q+4>>2]|0;d=o;c[d>>2]=c[q>>2];c[d+4>>2]=p;qc(32,f,9360,o)|0}else{h[k>>3]=+h[d+8>>3];c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];qc(32,f,9712,o)|0}q=Mb(c[(c[l>>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+24>>2]=q;a[(c[l>>2]|0)+30>>0]=1;q=(c[l>>2]|0)+28|0;b[q>>1]=e[q>>1]|0|514;tk(c[l>>2]|0,c[m>>2]|0)|0;c[j>>2]=c[g>>2];q=c[j>>2]|0;i=n;return q|0}function wp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;m=l+28|0;j=l+24|0;e=l+20|0;g=l+16|0;o=l+12|0;k=l+8|0;n=l+4|0;h=l;c[m>>2]=a;c[j>>2]=b;c[e>>2]=d;c[g>>2]=0;c[k>>2]=Mb(c[j>>2]|0)|0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[m>>2]|0)+20>>2]|0)){f=7;break}a=c[o>>2]|0;c[n>>2]=(c[o>>2]|0)<2?a^1:a;c[h>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[n>>2]<<4)+12>>2];if(!((c[e>>2]|0)!=0?(vc(c[e>>2]|0,c[(c[(c[m>>2]|0)+16>>2]|0)+(c[n>>2]<<4)>>2]|0)|0)!=0:0)){f=5}if((f|0)==5?(f=0,c[g>>2]=Wg((c[h>>2]|0)+24|0,c[j>>2]|0,c[k>>2]|0)|0,(c[g>>2]|0)!=0):0){f=7;break}c[o>>2]=(c[o>>2]|0)+1}if((f|0)==7){i=l;return c[g>>2]|0}return 0}function xp(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;h=k;j=k+12|0;f=k+8|0;g=k+4|0;c[f>>2]=b;c[g>>2]=e;if((((a[(c[c[f>>2]>>2]|0)+137>>0]|0)==0?(d[(c[f>>2]|0)+18>>0]|0)==0:0)?(c[(c[c[f>>2]>>2]|0)+24>>2]&2048|0)==0:0)?0==(Lb(c[g>>2]|0,15048,7)|0):0){b=c[f>>2]|0;c[h>>2]=c[g>>2];Ne(b,17968,h);c[j>>2]=1;b=c[j>>2]|0;i=k;return b|0}c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}function yp(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+48|0;l=n;h=n+36|0;j=n+32|0;k=n+28|0;r=n+24|0;p=n+20|0;s=n+16|0;o=n+12|0;m=n+8|0;q=n+4|0;g=n+40|0;c[j>>2]=d;c[k>>2]=f;c[s>>2]=0;c[m>>2]=c[c[j>>2]>>2];if((Dp(c[j>>2]|0,c[k>>2]|0)|0)!=0){c[h>>2]=1;d=c[h>>2]|0;i=n;return d|0}if((a[(c[k>>2]|0)+44>>0]&16|0)!=0){c[h>>2]=0;d=c[h>>2]|0;i=n;return d|0}if((b[(c[k>>2]|0)+38>>1]|0)>0){c[h>>2]=0;d=c[h>>2]|0;i=n;return d|0}if((b[(c[k>>2]|0)+38>>1]|0)<0){d=c[j>>2]|0;c[l>>2]=c[c[k>>2]>>2];Ne(d,16232,l);c[h>>2]=1;d=c[h>>2]|0;i=n;return d|0}c[p>>2]=Ep(c[m>>2]|0,c[(c[k>>2]|0)+12>>2]|0,0)|0;if((c[p>>2]|0)!=0){a[g>>0]=a[(c[m>>2]|0)+242>>0]|0;c[o>>2]=c[(c[j>>2]|0)+68>>2];Fp(c[j>>2]|0,c[(c[p>>2]|0)+32>>2]|0);b[(c[k>>2]|0)+38>>1]=-1;a[(c[m>>2]|0)+242>>0]=0;c[q>>2]=c[(c[m>>2]|0)+276>>2];c[(c[m>>2]|0)+276>>2]=0;c[r>>2]=Gp(c[j>>2]|0,c[p>>2]|0)|0;c[(c[m>>2]|0)+276>>2]=c[q>>2];a[(c[m>>2]|0)+242>>0]=a[g>>0]|0;c[(c[j>>2]|0)+68>>2]=c[o>>2];if((c[r>>2]|0)!=0){b[(c[k>>2]|0)+38>>1]=b[(c[r>>2]|0)+38>>1]|0;c[(c[k>>2]|0)+4>>2]=c[(c[r>>2]|0)+4>>2];b[(c[r>>2]|0)+38>>1]=0;c[(c[r>>2]|0)+4>>2]=0;Ub(c[m>>2]|0,c[r>>2]|0);d=(c[(c[k>>2]|0)+68>>2]|0)+78|0;b[d>>1]=e[d>>1]|2}else{b[(c[k>>2]|0)+38>>1]=0;c[s>>2]=(c[s>>2]|0)+1}en(c[m>>2]|0,c[p>>2]|0)}else{c[s>>2]=(c[s>>2]|0)+1}c[h>>2]=c[s>>2];d=c[h>>2]|0;i=n;return d|0}function zp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d+4|0;e=d;c[f>>2]=a;c[g>>2]=b;c[e>>2]=c[(c[g>>2]|0)+60>>2];while(1){if((c[e>>2]|0)==0){b=5;break}if((c[c[e>>2]>>2]|0)==(c[f>>2]|0)){b=5;break}c[e>>2]=c[(c[e>>2]|0)+24>>2]}if((b|0)==5){i=d;return c[e>>2]|0}return 0}function Ap(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;b=c[f>>2]|0;if((c[(c[f>>2]|0)+408>>2]|0)!=0){b=c[b+408>>2]|0}c[e>>2]=b;a[(c[e>>2]|0)+21>>0]=1;i=d;return}function Bp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d+12|0;h=d+8|0;f=d+4|0;e=d;c[g>>2]=a;c[h>>2]=b;c[e>>2]=0;c[f>>2]=Cp(c[h>>2]|0)|0;while(1){if((c[f>>2]|0)==0){break}c[e>>2]=lp(c[c[g>>2]>>2]|0,c[e>>2]|0,c[c[c[f>>2]>>2]>>2]|0)|0;c[f>>2]=c[(c[f>>2]|0)+12>>2]}i=d;return c[e>>2]|0}function Cp(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=Mb(c[c[e>>2]>>2]|0)|0;a=Wg((c[(c[e>>2]|0)+68>>2]|0)+56|0,c[c[e>>2]>>2]|0,c[d>>2]|0)|0;i=b;return a|0}function Dp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+48|0;m=p;o=p+36|0;l=p+32|0;g=p+28|0;f=p+24|0;n=p+20|0;h=p+16|0;j=p+12|0;e=p+8|0;k=p+4|0;c[l>>2]=b;c[g>>2]=d;c[f>>2]=c[c[l>>2]>>2];if((a[(c[g>>2]|0)+44>>0]&16|0)!=0?(zp(c[f>>2]|0,c[g>>2]|0)|0)==0:0){c[n>>2]=c[c[(c[g>>2]|0)+56>>2]>>2];d=(c[f>>2]|0)+300|0;b=c[n>>2]|0;c[h>>2]=Wg(d,b,Mb(c[n>>2]|0)|0)|0;if((c[h>>2]|0)!=0){c[k>>2]=0;c[j>>2]=ir(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[(c[c[h>>2]>>2]|0)+8>>2]|0,k)|0;if((c[j>>2]|0)!=0){b=c[l>>2]|0;c[m>>2]=c[k>>2];Ne(b,1456,m)}Wb(c[f>>2]|0,c[k>>2]|0)}else{c[e>>2]=c[c[(c[g>>2]|0)+56>>2]>>2];b=c[l>>2]|0;c[m>>2]=c[e>>2];Ne(b,17848,m);c[j>>2]=1}c[o>>2]=c[j>>2];b=c[o>>2]|0;i=p;return b|0}c[o>>2]=0;b=c[o>>2]|0;i=p;return b|0}function Ep(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+20|0;k=h+16|0;l=h+12|0;m=h+8|0;n=h+4|0;o=h;c[k>>2]=d;c[l>>2]=f;c[m>>2]=g;if((c[l>>2]|0)==0){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}c[n>>2]=Le(c[k>>2]|0,72)|0;if((c[n>>2]|0)==0){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}d=sq(c[k>>2]|0,c[c[l>>2]>>2]|0,c[m>>2]|0)|0;c[c[n>>2]>>2]=d;d=fr(c[k>>2]|0,c[(c[l>>2]|0)+32>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+32>>2]=d;d=kq(c[k>>2]|0,c[(c[l>>2]|0)+36>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+36>>2]=d;d=sq(c[k>>2]|0,c[(c[l>>2]|0)+40>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+40>>2]=d;d=kq(c[k>>2]|0,c[(c[l>>2]|0)+44>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+44>>2]=d;d=sq(c[k>>2]|0,c[(c[l>>2]|0)+48>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+48>>2]=d;a[(c[n>>2]|0)+4>>0]=a[(c[l>>2]|0)+4>>0]|0;d=Ep(c[k>>2]|0,c[(c[l>>2]|0)+52>>2]|0,c[m>>2]|0)|0;c[o>>2]=d;c[(c[n>>2]|0)+52>>2]=d;if((c[o>>2]|0)!=0){c[(c[o>>2]|0)+56>>2]=c[n>>2]}c[(c[n>>2]|0)+56>>2]=0;o=kq(c[k>>2]|0,c[(c[l>>2]|0)+60>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+60>>2]=o;o=kq(c[k>>2]|0,c[(c[l>>2]|0)+64>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+64>>2]=o;c[(c[n>>2]|0)+8>>2]=0;c[(c[n>>2]|0)+12>>2]=0;b[(c[n>>2]|0)+6>>1]=(e[(c[l>>2]|0)+6>>1]|0)&-9;c[(c[n>>2]|0)+16>>2]=-1;c[(c[n>>2]|0)+20>>2]=-1;o=(c[l>>2]|0)+24|0;f=c[o+4>>2]|0;d=(c[n>>2]|0)+24|0;c[d>>2]=c[o>>2];c[d+4>>2]=f;d=gr(c[k>>2]|0,c[(c[l>>2]|0)+68>>2]|0)|0;c[(c[n>>2]|0)+68>>2]=d;c[j>>2]=c[n>>2];d=c[j>>2]|0;i=h;return d|0}function Fp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;h=d+8|0;g=d+4|0;f=d;c[e>>2]=a;c[h>>2]=b;if((c[h>>2]|0)==0){i=d;return}c[g>>2]=0;c[f>>2]=(c[h>>2]|0)+8;while(1){if((c[g>>2]|0)>=(c[c[h>>2]>>2]|0)){b=8;break}if((c[(c[f>>2]|0)+40>>2]|0)>=0){b=8;break}b=(c[e>>2]|0)+68|0;a=c[b>>2]|0;c[b>>2]=a+1;c[(c[f>>2]|0)+40>>2]=a;if((c[(c[f>>2]|0)+20>>2]|0)!=0){Fp(c[e>>2]|0,c[(c[(c[f>>2]|0)+20>>2]|0)+32>>2]|0)}c[g>>2]=(c[g>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+72}if((b|0)==8){i=d;return}}function Gp(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;j=f+16|0;k=f+12|0;h=f+8|0;l=f+4|0;m=f;c[j>>2]=d;c[k>>2]=e;c[l>>2]=c[c[j>>2]>>2];c[m>>2]=c[(c[l>>2]|0)+24>>2];d=(c[l>>2]|0)+24|0;c[d>>2]=c[d>>2]&-33;d=(c[l>>2]|0)+24|0;c[d>>2]=c[d>>2]|64;Hp(c[j>>2]|0,c[k>>2]|0,0);if((c[(c[j>>2]|0)+64>>2]|0)!=0){c[g>>2]=0;d=c[g>>2]|0;i=f;return d|0}while(1){if((c[(c[k>>2]|0)+52>>2]|0)==0){break}c[k>>2]=c[(c[k>>2]|0)+52>>2]}c[(c[l>>2]|0)+24>>2]=c[m>>2];c[h>>2]=ne(c[l>>2]|0,76)|0;if((c[h>>2]|0)==0){c[g>>2]=0;d=c[g>>2]|0;i=f;return d|0}b[(c[h>>2]|0)+40>>1]=1;c[c[h>>2]>>2]=0;b[(c[h>>2]|0)+28>>1]=200;Ip(c[j>>2]|0,c[c[k>>2]>>2]|0,(c[h>>2]|0)+38|0,(c[h>>2]|0)+4|0)|0;Jp(c[j>>2]|0,c[h>>2]|0,c[k>>2]|0);b[(c[h>>2]|0)+36>>1]=-1;if((a[(c[l>>2]|0)+64>>0]|0)!=0){Ub(c[l>>2]|0,c[h>>2]|0);c[g>>2]=0;d=c[g>>2]|0;i=f;return d|0}else{c[g>>2]=c[h>>2];d=c[g>>2]|0;i=f;return d|0}return 0}function Hp(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;l=h+4|0;m=h;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;if((c[k>>2]|0)==0){i=h;return}c[m>>2]=c[c[j>>2]>>2];if((a[(c[m>>2]|0)+64>>0]|0)!=0){i=h;return}if((b[(c[k>>2]|0)+6>>1]&32|0)!=0){i=h;return}Up(c[j>>2]|0,c[k>>2]|0);if((c[(c[j>>2]|0)+64>>2]|0)!=0){i=h;return}if((d[(c[m>>2]|0)+64>>0]|0)!=0){i=h;return}Vp(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0);if((c[(c[j>>2]|0)+64>>2]|0)!=0){i=h;return}if((d[(c[m>>2]|0)+64>>0]|0)!=0){i=h;return}Wp(c[j>>2]|0,c[k>>2]|0);i=h;return}function Ip(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;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;j=i;i=i+96|0;v=j;q=j+84|0;F=j+80|0;z=j+76|0;m=j+72|0;l=j+68|0;n=j+64|0;p=j+60|0;o=j+56|0;u=j+52|0;k=j+48|0;C=j+44|0;B=j+40|0;A=j+36|0;s=j+32|0;t=j+28|0;r=j+24|0;w=j+20|0;x=j+16|0;E=j+12|0;D=j+8|0;c[F>>2]=e;c[z>>2]=f;c[m>>2]=g;c[l>>2]=h;c[n>>2]=c[c[F>>2]>>2];if((c[z>>2]|0)!=0){c[B>>2]=c[c[z>>2]>>2];c[k>>2]=ne(c[n>>2]|0,(c[B>>2]|0)*24|0)|0}else{c[B>>2]=0;c[k>>2]=0}b[c[m>>2]>>1]=c[B>>2];c[c[l>>2]>>2]=c[k>>2];c[p>>2]=0;c[C>>2]=c[k>>2];while(1){if((c[p>>2]|0)>=(c[B>>2]|0)){break}c[A>>2]=Sp(c[(c[(c[z>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;F=c[(c[(c[z>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)+4>>2]|0;c[s>>2]=F;do{if((F|0)==0){c[r>>2]=c[A>>2];while(1){h=c[r>>2]|0;if((d[c[r>>2]>>0]|0)!=122){break}c[r>>2]=c[h+16>>2]}if((d[h>>0]|0)==154?(c[(c[r>>2]|0)+44>>2]|0)!=0:0){c[x>>2]=b[(c[r>>2]|0)+32>>1]|0;c[w>>2]=c[(c[r>>2]|0)+44>>2];if((c[x>>2]|0)<0){c[x>>2]=b[(c[w>>2]|0)+36>>1]|0}h=c[n>>2]|0;if((c[x>>2]|0)>=0){g=c[(c[(c[w>>2]|0)+4>>2]|0)+((c[x>>2]|0)*24|0)>>2]|0}else{g=9896}c[v>>2]=g;c[s>>2]=Oe(h,1456,v)|0;break}h=c[n>>2]|0;if((d[c[r>>2]>>0]|0)==27){c[v>>2]=c[(c[r>>2]|0)+8>>2];c[s>>2]=Oe(h,1456,v)|0;break}else{c[v>>2]=c[(c[(c[z>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)+8>>2];c[s>>2]=Oe(h,1456,v)|0;break}}else{c[s>>2]=he(c[n>>2]|0,c[s>>2]|0)|0}}while(0);if((a[(c[n>>2]|0)+64>>0]|0)!=0){y=22;break}c[t>>2]=Mb(c[s>>2]|0)|0;c[u>>2]=0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[p>>2]|0)){break}if((vc(c[(c[k>>2]|0)+((c[o>>2]|0)*24|0)>>2]|0,c[s>>2]|0)|0)==0){c[D>>2]=(c[t>>2]|0)-1;while(1){if((c[D>>2]|0)<=1){break}if((a[48+(d[(c[s>>2]|0)+(c[D>>2]|0)>>0]|0)>>0]&4|0)==0){break}c[D>>2]=(c[D>>2]|0)+ -1}if((c[D>>2]|0)>=0?(a[(c[s>>2]|0)+(c[D>>2]|0)>>0]|0)==58:0){c[t>>2]=c[D>>2]}a[(c[s>>2]|0)+(c[t>>2]|0)>>0]=0;F=c[n>>2]|0;f=c[s>>2]|0;e=(c[u>>2]|0)+1|0;c[u>>2]=e;c[v>>2]=f;c[v+4>>2]=e;c[E>>2]=Oe(F,16328,v)|0;Wb(c[n>>2]|0,c[s>>2]|0);c[s>>2]=c[E>>2];c[o>>2]=-1;if((c[s>>2]|0)==0){break}}c[o>>2]=(c[o>>2]|0)+1}c[c[C>>2]>>2]=c[s>>2];c[p>>2]=(c[p>>2]|0)+1;c[C>>2]=(c[C>>2]|0)+24}if((y|0)==22){Wb(c[n>>2]|0,c[s>>2]|0)}if((a[(c[n>>2]|0)+64>>0]|0)==0){c[q>>2]=0;F=c[q>>2]|0;i=j;return F|0}c[o>>2]=0;while(1){r=c[n>>2]|0;if((c[o>>2]|0)>=(c[p>>2]|0)){break}Wb(r,c[(c[k>>2]|0)+((c[o>>2]|0)*24|0)>>2]|0);c[o>>2]=(c[o>>2]|0)+1}Wb(r,c[k>>2]|0);c[c[l>>2]>>2]=0;b[c[m>>2]>>1]=0;c[q>>2]=7;F=c[q>>2]|0;i=j;return F|0}function Jp(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;o=i;i=i+80|0;l=o+76|0;k=o+72|0;t=o+68|0;r=o+64|0;s=o+32|0;h=o+24|0;n=o+20|0;q=o+16|0;m=o+12|0;p=o+8|0;j=o;c[l>>2]=e;c[k>>2]=f;c[t>>2]=g;c[r>>2]=c[c[l>>2]>>2];e=j;c[e>>2]=0;c[e+4>>2]=0;if((a[(c[r>>2]|0)+64>>0]|0)!=0){i=o;return}c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;c[s+24>>2]=0;c[s+28>>2]=0;c[s+4>>2]=c[(c[t>>2]|0)+32>>2];c[p>>2]=c[(c[c[t>>2]>>2]|0)+4>>2];c[q>>2]=0;c[h>>2]=c[(c[k>>2]|0)+4>>2];while(1){if((c[q>>2]|0)>=(b[(c[k>>2]|0)+38>>1]|0)){break}c[m>>2]=c[(c[p>>2]|0)+((c[q>>2]|0)*20|0)>>2];f=c[r>>2]|0;f=he(f,Kp(s,c[m>>2]|0,(c[h>>2]|0)+22|0)|0)|0;c[(c[h>>2]|0)+12>>2]=f;f=j;f=bE(c[f>>2]|0,c[f+4>>2]|0,d[(c[h>>2]|0)+22>>0]|0,0)|0;e=j;c[e>>2]=f;c[e+4>>2]=D;e=Lp(c[m>>2]|0)|0;a[(c[h>>2]|0)+21>>0]=e;if((a[(c[h>>2]|0)+21>>0]|0)==0){a[(c[h>>2]|0)+21>>0]=98}c[n>>2]=Mp(c[l>>2]|0,c[m>>2]|0)|0;if((c[n>>2]|0)!=0){e=he(c[r>>2]|0,c[c[n>>2]>>2]|0)|0;c[(c[h>>2]|0)+16>>2]=e}c[q>>2]=(c[q>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+24}e=j;e=lE(c[e>>2]|0,c[e+4>>2]|0,4,0)|0;e=Np(e,D)|0;b[(c[k>>2]|0)+42>>1]=e;i=o;return}function Kp(e,f,g){e=e|0;f=f|0;g=g|0;var h=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;s=i;i=i+128|0;j=s+116|0;n=s+112|0;v=s+108|0;r=s+104|0;p=s+100|0;t=s+96|0;o=s+120|0;h=s+92|0;q=s+88|0;k=s+84|0;u=s+80|0;m=s+48|0;l=s+40|0;y=s+8|0;w=s+4|0;x=s;c[n>>2]=e;c[v>>2]=f;c[r>>2]=g;c[p>>2]=0;a[o>>0]=1;if((c[v>>2]|0)!=0?(c[(c[n>>2]|0)+4>>2]|0)!=0:0){g=d[c[v>>2]>>0]|0;do{if((g|0)==154|(g|0)==156){c[h>>2]=0;c[q>>2]=0;c[k>>2]=b[(c[v>>2]|0)+32>>1]|0;while(1){if((c[n>>2]|0)==0){break}if(!((c[h>>2]|0)!=0^1)){break}c[u>>2]=c[(c[n>>2]|0)+4>>2];c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[c[u>>2]>>2]|0)){break}if((c[(c[u>>2]|0)+8+((c[t>>2]|0)*72|0)+40>>2]|0)==(c[(c[v>>2]|0)+28>>2]|0)){break}c[t>>2]=(c[t>>2]|0)+1}if((c[t>>2]|0)<(c[c[u>>2]>>2]|0)){c[h>>2]=c[(c[u>>2]|0)+8+((c[t>>2]|0)*72|0)+16>>2];c[q>>2]=c[(c[u>>2]|0)+8+((c[t>>2]|0)*72|0)+20>>2];continue}else{c[n>>2]=c[(c[n>>2]|0)+16>>2];continue}}if((c[h>>2]|0)!=0){if((c[q>>2]|0)!=0){if((c[k>>2]|0)<0){break}if((c[k>>2]|0)>=(c[c[c[q>>2]>>2]>>2]|0)){break}c[l>>2]=c[(c[(c[c[q>>2]>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)>>2];c[m+4>>2]=c[(c[q>>2]|0)+32>>2];c[m+16>>2]=c[n>>2];c[m>>2]=c[c[n>>2]>>2];c[p>>2]=Kp(m,c[l>>2]|0,o)|0;break}if((c[(c[h>>2]|0)+68>>2]|0)!=0){if((c[k>>2]|0)<0){c[k>>2]=b[(c[h>>2]|0)+36>>1]|0}if((c[k>>2]|0)<0){c[p>>2]=16320;break}else{c[p>>2]=c[(c[(c[h>>2]|0)+4>>2]|0)+((c[k>>2]|0)*24|0)+12>>2];a[o>>0]=a[(c[(c[h>>2]|0)+4>>2]|0)+((c[k>>2]|0)*24|0)+22>>0]|0;break}}}}else if((g|0)==119){c[w>>2]=c[(c[v>>2]|0)+20>>2];c[x>>2]=c[c[(c[c[w>>2]>>2]|0)+4>>2]>>2];c[y+4>>2]=c[(c[w>>2]|0)+32>>2];c[y+16>>2]=c[n>>2];c[y>>2]=c[c[n>>2]>>2];c[p>>2]=Kp(y,c[x>>2]|0,o)|0}}while(0);if((c[r>>2]|0)!=0){a[c[r>>2]>>0]=a[o>>0]|0}c[j>>2]=c[p>>2];e=c[j>>2]|0;i=s;return e|0}c[j>>2]=0;e=c[j>>2]|0;i=s;return e|0}function Lp(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;k=f+4|0;j=f;c[h>>2]=e;c[h>>2]=Sp(c[h>>2]|0)|0;if((c[(c[h>>2]|0)+4>>2]&512|0)!=0){a[g>>0]=98;k=a[g>>0]|0;i=f;return k|0}c[k>>2]=d[c[h>>2]>>0]|0;if((c[k>>2]|0)==119){a[g>>0]=Lp(c[c[(c[c[(c[h>>2]|0)+20>>2]>>2]|0)+4>>2]>>2]|0)|0;k=a[g>>0]|0;i=f;return k|0}if((c[k>>2]|0)==38){a[g>>0]=Tp(c[(c[h>>2]|0)+8>>2]|0,0)|0;k=a[g>>0]|0;i=f;return k|0}if((c[k>>2]|0)==156|(c[k>>2]|0)==154|(c[k>>2]|0)==159?(c[(c[h>>2]|0)+44>>2]|0)!=0:0){c[j>>2]=b[(c[h>>2]|0)+32>>1]|0;if((c[j>>2]|0)<0){a[g>>0]=100;k=a[g>>0]|0;i=f;return k|0}else{a[g>>0]=a[(c[(c[(c[h>>2]|0)+44>>2]|0)+4>>2]|0)+((c[j>>2]|0)*24|0)+21>>0]|0;k=a[g>>0]|0;i=f;return k|0}}a[g>>0]=a[(c[h>>2]|0)+1>>0]|0;k=a[g>>0]|0;i=f;return k|0}function Mp(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;k=j+28|0;q=j+24|0;o=j+20|0;m=j+16|0;l=j+12|0;p=j+8|0;g=j+4|0;n=j;c[k>>2]=e;c[q>>2]=f;c[o>>2]=c[c[k>>2]>>2];c[m>>2]=0;c[l>>2]=c[q>>2];while(1){if((c[l>>2]|0)==0){break}c[p>>2]=d[c[l>>2]>>0]|0;if((c[(c[l>>2]|0)+4>>2]&512|0)!=0){break}if((c[p>>2]|0)==38|(c[p>>2]|0)==158){c[l>>2]=c[(c[l>>2]|0)+12>>2];continue}if((c[p>>2]|0)==95){h=9;break}if((c[p>>2]|0)==159?(d[(c[l>>2]|0)+38>>0]|0)==95:0){h=9;break}if((c[(c[l>>2]|0)+44>>2]|0)!=0?(c[p>>2]|0)==156|(c[p>>2]|0)==154|(c[p>>2]|0)==159|(c[p>>2]|0)==62:0){h=12;break}if((c[(c[l>>2]|0)+4>>2]&256|0)==0){break}if((c[(c[l>>2]|0)+12>>2]|0)!=0?(c[(c[(c[l>>2]|0)+12>>2]|0)+4>>2]&256|0)!=0:0){c[l>>2]=c[(c[l>>2]|0)+12>>2];continue}c[l>>2]=c[(c[l>>2]|0)+16>>2]}if((h|0)==9){c[m>>2]=Op(c[k>>2]|0,a[(c[(c[(c[o>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,0,c[(c[l>>2]|0)+8>>2]|0)|0}else if((h|0)==12?(c[g>>2]=b[(c[l>>2]|0)+32>>1]|0,(c[g>>2]|0)>=0):0){c[n>>2]=c[(c[(c[(c[l>>2]|0)+44>>2]|0)+4>>2]|0)+((c[g>>2]|0)*24|0)+16>>2];c[m>>2]=Ug(c[o>>2]|0,a[(c[(c[(c[o>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[n>>2]|0,0)|0}if((Pp(c[k>>2]|0,c[m>>2]|0)|0)==0){q=c[m>>2]|0;i=j;return q|0}c[m>>2]=0;q=c[m>>2]|0;i=j;return q|0}function Np(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+10|0;g=e;h=e+8|0;j=g;c[j>>2]=a;c[j+4>>2]=d;b[h>>1]=40;a=g;d=c[a+4>>2]|0;a:do{if(d>>>0<0|(d|0)==0&(c[a>>2]|0)>>>0<8){j=g;a=c[j+4>>2]|0;if(a>>>0<0|(a|0)==0&(c[j>>2]|0)>>>0<2){b[f>>1]=0;j=b[f>>1]|0;i=e;return j|0}else{while(1){j=g;a=c[j+4>>2]|0;if(!(a>>>0<0|(a|0)==0&(c[j>>2]|0)>>>0<8)){break a}b[h>>1]=(b[h>>1]|0)-10;a=g;a=$D(c[a>>2]|0,c[a+4>>2]|0,1)|0;j=g;c[j>>2]=a;c[j+4>>2]=D}}}else{while(1){j=g;a=c[j+4>>2]|0;if(!(a>>>0>0|(a|0)==0&(c[j>>2]|0)>>>0>255)){break}b[h>>1]=(b[h>>1]|0)+40;a=g;a=cE(c[a>>2]|0,c[a+4>>2]|0,4)|0;j=g;c[j>>2]=a;c[j+4>>2]=D}while(1){j=g;a=c[j+4>>2]|0;if(!(a>>>0>0|(a|0)==0&(c[j>>2]|0)>>>0>15)){break a}b[h>>1]=(b[h>>1]|0)+10;a=g;a=cE(c[a>>2]|0,c[a+4>>2]|0,1)|0;j=g;c[j>>2]=a;c[j+4>>2]=D}}}while(0);b[f>>1]=(b[16264+((c[g>>2]&7)<<1)>>1]|0)+(b[h>>1]|0)-10;j=b[f>>1]|0;i=e;return j|0}function Op(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;h=j;k=j+20|0;o=j+24|0;p=j+16|0;l=j+12|0;m=j+8|0;n=j+4|0;c[k>>2]=b;a[o>>0]=e;c[p>>2]=f;c[l>>2]=g;c[n>>2]=c[c[k>>2]>>2];c[m>>2]=c[p>>2];if((c[m>>2]|0)==0){c[m>>2]=Ug(c[n>>2]|0,a[o>>0]|0,c[l>>2]|0,0)|0}if(!((c[m>>2]|0)!=0?(c[(c[m>>2]|0)+12>>2]|0)!=0:0)){Qp(c[n>>2]|0,d[o>>0]|0,c[l>>2]|0);c[m>>2]=Ug(c[n>>2]|0,a[o>>0]|0,c[l>>2]|0,0)|0}if(((c[m>>2]|0)!=0?(c[(c[m>>2]|0)+12>>2]|0)==0:0)?(Rp(c[n>>2]|0,c[m>>2]|0)|0)!=0:0){c[m>>2]=0}if((c[m>>2]|0)!=0){p=c[m>>2]|0;i=j;return p|0}p=c[k>>2]|0;c[h>>2]=c[l>>2];Ne(p,16280,h);p=c[m>>2]|0;i=j;return p|0}function Pp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;e=f+20|0;l=f+16|0;j=f+12|0;h=f+8|0;k=f+4|0;g=f;c[l>>2]=b;c[j>>2]=d;if((c[j>>2]|0)!=0?(c[h>>2]=c[c[j>>2]>>2],c[k>>2]=c[c[l>>2]>>2],c[g>>2]=Op(c[l>>2]|0,a[(c[(c[(c[k>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[j>>2]|0,c[h>>2]|0)|0,(c[g>>2]|0)==0):0){c[e>>2]=1;b=c[e>>2]|0;i=f;return b|0}c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}function Qp(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;n=g+16|0;k=g+12|0;m=g+8|0;l=g+4|0;j=g;c[h>>2]=b;c[n>>2]=e;c[k>>2]=f;do{if((c[(c[h>>2]|0)+212>>2]|0)!=0){c[m>>2]=he(c[h>>2]|0,c[k>>2]|0)|0;if((c[m>>2]|0)!=0){Bb[c[(c[h>>2]|0)+212>>2]&3](c[(c[h>>2]|0)+220>>2]|0,c[h>>2]|0,c[n>>2]|0,c[m>>2]|0);Wb(c[h>>2]|0,c[m>>2]|0);break}else{i=g;return}}}while(0);if((c[(c[h>>2]|0)+216>>2]|0)==0){i=g;return}c[j>>2]=nf(c[h>>2]|0)|0;of(c[j>>2]|0,-1,c[k>>2]|0,1,0);c[l>>2]=Jd(c[j>>2]|0,((a[1392]|0)==0?3:2)&255)|0;if((c[l>>2]|0)!=0){Bb[c[(c[h>>2]|0)+216>>2]&3](c[(c[h>>2]|0)+220>>2]|0,c[h>>2]|0,d[(c[(c[(c[h>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[l>>2]|0)}pf(c[j>>2]|0);i=g;return}function Rp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;e=f+20|0;j=f+16|0;g=f+12|0;h=f+8|0;l=f+4|0;k=f;c[j>>2]=b;c[g>>2]=d;c[l>>2]=c[c[g>>2]>>2];c[k>>2]=0;while(1){if((c[k>>2]|0)>=3){d=6;break}c[h>>2]=Ug(c[j>>2]|0,a[16312+(c[k>>2]|0)>>0]|0,c[l>>2]|0,0)|0;if((c[(c[h>>2]|0)+12>>2]|0)!=0){d=4;break}c[k>>2]=(c[k>>2]|0)+1}if((d|0)==4){b=c[g>>2]|0;l=c[h>>2]|0;c[b+0>>2]=c[l+0>>2];c[b+4>>2]=c[l+4>>2];c[b+8>>2]=c[l+8>>2];c[b+12>>2]=c[l+12>>2];c[b+16>>2]=c[l+16>>2];c[(c[g>>2]|0)+16>>2]=0;c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}else if((d|0)==6){c[e>>2]=1;b=c[e>>2]|0;i=f;return b|0}return 0}function Sp(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;c[d>>2]=a;while(1){if((c[d>>2]|0)!=0){e=(c[(c[d>>2]|0)+4>>2]&4096|0)!=0}else{e=0}a=c[d>>2]|0;if(!e){break}e=c[d>>2]|0;if((c[a+4>>2]&262144|0)!=0){c[d>>2]=c[c[(c[e+20>>2]|0)+4>>2]>>2];continue}else{c[d>>2]=c[e+12>>2];continue}}i=b;return a|0}function Tp(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;h=l+21|0;o=l+16|0;k=l+12|0;n=l+8|0;j=l+20|0;m=l+4|0;f=l;c[o>>2]=b;c[k>>2]=e;c[n>>2]=0;a[j>>0]=99;c[m>>2]=0;if((c[o>>2]|0)==0){a[h>>0]=a[j>>0]|0;b=a[h>>0]|0;i=l;return b|0}a:while(1){if((a[c[o>>2]>>0]|0)==0){break}c[n>>2]=(c[n>>2]<<8)+(d[696+(a[c[o>>2]>>0]&255)>>0]|0);c[o>>2]=(c[o>>2]|0)+1;if((c[n>>2]|0)==1667785074){a[j>>0]=97;c[m>>2]=c[o>>2];continue}if((c[n>>2]|0)==1668050786){a[j>>0]=97;continue}if((c[n>>2]|0)==1952807028){a[j>>0]=97;continue}do{if((c[n>>2]|0)==1651273570){if((a[j>>0]|0)!=99?(a[j>>0]|0)!=101:0){break}a[j>>0]=98;if((a[c[o>>2]>>0]|0)!=40){continue a}c[m>>2]=c[o>>2];continue a}}while(0);if((c[n>>2]|0)==1919246700?(a[j>>0]|0)==99:0){a[j>>0]=101;continue}if((c[n>>2]|0)==1718382433?(a[j>>0]|0)==99:0){a[j>>0]=101;continue}if((c[n>>2]|0)==1685026146?(a[j>>0]|0)==99:0){a[j>>0]=101;continue}if((c[n>>2]&16777215|0)==6909556){g=25;break}}if((g|0)==25){a[j>>0]=100}b:do{if((c[k>>2]|0)!=0?(a[c[k>>2]>>0]=1,(a[j>>0]|0)<=98):0){if((c[m>>2]|0)==0){a[c[k>>2]>>0]=5;break}while(1){if((a[c[m>>2]>>0]|0)==0){break b}if((a[48+(d[c[m>>2]>>0]|0)>>0]&4|0)!=0){break}c[m>>2]=(c[m>>2]|0)+1}c[f>>2]=0;rg(c[m>>2]|0,f)|0;b=((c[f>>2]|0)/4|0)+1|0;c[f>>2]=b;c[f>>2]=(c[f>>2]|0)>255?255:b;a[c[k>>2]>>0]=c[f>>2]}}while(0);a[h>>0]=a[j>>0]|0;b=a[h>>0]|0;i=l;return b|0}function Up(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+32|0;h=e+28|0;f=e+24|0;g=e;c[h>>2]=b;c[f>>2]=d;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[g>>2]=36;c[g+12>>2]=c[h>>2];if((a[(c[h>>2]|0)+22>>0]|0)!=0){c[g+4>>2]=37;Zp(g,c[f>>2]|0)|0}c[g+4>>2]=38;c[g+8>>2]=3;Zp(g,c[f>>2]|0)|0;i=e;return}function Vp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+48|0;j=e+32|0;f=e+28|0;h=e+24|0;g=e;c[j>>2]=a;c[f>>2]=b;c[h>>2]=d;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[g>>2]=39;c[g+4>>2]=40;c[g+12>>2]=c[j>>2];c[g+20>>2]=c[h>>2];Zp(g,c[f>>2]|0)|0;i=e;return}function Wp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;g=d+28|0;e=d+24|0;f=d;c[g>>2]=a;c[e>>2]=b;c[f+0>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+8>>2]=4;c[f>>2]=36;c[f+12>>2]=c[g>>2];Zp(f,c[e>>2]|0)|0;i=d;return}function Xp(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+32|0;p=l+28|0;o=l+24|0;n=l+20|0;g=l+16|0;m=l+12|0;h=l+8|0;k=l+4|0;j=l;c[p>>2]=d;c[o>>2]=f;if((b[(c[o>>2]|0)+6>>1]&32|0)!=0){i=l;return}d=(c[o>>2]|0)+6|0;b[d>>1]=e[d>>1]|0|32;c[n>>2]=c[(c[p>>2]|0)+12>>2];c[m>>2]=c[(c[o>>2]|0)+32>>2];c[g>>2]=0;c[h>>2]=(c[m>>2]|0)+8;while(1){if((c[g>>2]|0)>=(c[c[m>>2]>>2]|0)){break}c[k>>2]=c[(c[h>>2]|0)+16>>2];if(((c[k>>2]|0)!=0?(a[(c[k>>2]|0)+44>>0]&2|0)!=0:0)?(c[j>>2]=c[(c[h>>2]|0)+20>>2],(c[j>>2]|0)!=0):0){while(1){if((c[(c[j>>2]|0)+52>>2]|0)==0){break}c[j>>2]=c[(c[j>>2]|0)+52>>2]}Jp(c[n>>2]|0,c[k>>2]|0,c[j>>2]|0)}c[g>>2]=(c[g>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+72}i=l;return}function Yp(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function Zp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;d=e+12|0;f=e+8|0;h=e+4|0;g=e;c[f>>2]=a;c[h>>2]=b;do{if((c[h>>2]|0)!=0){if((c[(c[f>>2]|0)+4>>2]|0)==0?(c[(c[f>>2]|0)+8>>2]|0)==0:0){break}c[g>>2]=0;a=(c[f>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+1;while(1){if((c[h>>2]|0)==0){b=15;break}if((c[(c[f>>2]|0)+4>>2]|0)!=0?(c[g>>2]=zb[c[(c[f>>2]|0)+4>>2]&63](c[f>>2]|0,c[h>>2]|0)|0,(c[g>>2]|0)!=0):0){b=15;break}if((_p(c[f>>2]|0,c[h>>2]|0)|0)!=0){b=11;break}if(($p(c[f>>2]|0,c[h>>2]|0)|0)!=0){b=11;break}if((c[(c[f>>2]|0)+8>>2]|0)!=0){sb[c[(c[f>>2]|0)+8>>2]&7](c[f>>2]|0,c[h>>2]|0)}c[h>>2]=c[(c[h>>2]|0)+52>>2]}if((b|0)==11){a=(c[f>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+ -1;c[d>>2]=2;a=c[d>>2]|0;i=e;return a|0}else if((b|0)==15){a=(c[f>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+ -1;c[d>>2]=c[g>>2]&2;a=c[d>>2]|0;i=e;return a|0}}}while(0);c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}function _p(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+8|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=b;do{if((aq(c[f>>2]|0,c[c[g>>2]>>2]|0)|0)==0){if((bq(c[f>>2]|0,c[(c[g>>2]|0)+36>>2]|0)|0)!=0){c[d>>2]=2;break}if((aq(c[f>>2]|0,c[(c[g>>2]|0)+40>>2]|0)|0)!=0){c[d>>2]=2;break}if((bq(c[f>>2]|0,c[(c[g>>2]|0)+44>>2]|0)|0)!=0){c[d>>2]=2;break}if((aq(c[f>>2]|0,c[(c[g>>2]|0)+48>>2]|0)|0)!=0){c[d>>2]=2;break}if((bq(c[f>>2]|0,c[(c[g>>2]|0)+60>>2]|0)|0)!=0){c[d>>2]=2;break}if((bq(c[f>>2]|0,c[(c[g>>2]|0)+64>>2]|0)|0)!=0){c[d>>2]=2;break}else{c[d>>2]=0;break}}else{c[d>>2]=2}}while(0);i=e;return c[d>>2]|0}function $p(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;d=e+20|0;f=e+16|0;k=e+12|0;j=e+8|0;h=e+4|0;g=e;c[f>>2]=a;c[k>>2]=b;c[j>>2]=c[(c[k>>2]|0)+32>>2];a:do{if((c[j>>2]|0)!=0){c[h>>2]=c[c[j>>2]>>2];c[g>>2]=(c[j>>2]|0)+8;while(1){if((c[h>>2]|0)<=0){break a}if((Zp(c[f>>2]|0,c[(c[g>>2]|0)+20>>2]|0)|0)!=0){break}c[h>>2]=(c[h>>2]|0)+ -1;c[g>>2]=(c[g>>2]|0)+72}c[d>>2]=2;k=c[d>>2]|0;i=e;return k|0}}while(0);c[d>>2]=0;k=c[d>>2]|0;i=e;return k|0}function aq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;d=e+16|0;f=e+12|0;j=e+8|0;h=e+4|0;g=e;c[f>>2]=a;c[j>>2]=b;a:do{if((c[j>>2]|0)!=0){c[h>>2]=c[c[j>>2]>>2];c[g>>2]=c[(c[j>>2]|0)+4>>2];while(1){if((c[h>>2]|0)<=0){break a}if((bq(c[f>>2]|0,c[c[g>>2]>>2]|0)|0)!=0){break}c[h>>2]=(c[h>>2]|0)+ -1;c[g>>2]=(c[g>>2]|0)+20}c[d>>2]=2;a=c[d>>2]|0;i=e;return a|0}}while(0);c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}function bq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;h=d+8|0;g=d+4|0;f=d;c[h>>2]=a;c[g>>2]=b;a:do{if((c[g>>2]|0)==0){c[e>>2]=0}else{c[f>>2]=zb[c[c[h>>2]>>2]&63](c[h>>2]|0,c[g>>2]|0)|0;do{if((c[f>>2]|0)==0?(c[(c[g>>2]|0)+4>>2]&16384|0)==0:0){if((bq(c[h>>2]|0,c[(c[g>>2]|0)+12>>2]|0)|0)!=0){c[e>>2]=2;break a}if((bq(c[h>>2]|0,c[(c[g>>2]|0)+16>>2]|0)|0)!=0){c[e>>2]=2;break a}h=c[h>>2]|0;b=(c[g>>2]|0)+20|0;if((c[(c[g>>2]|0)+4>>2]&2048|0)!=0){if((Zp(h,c[b>>2]|0)|0)==0){break}c[e>>2]=2;break a}else{if((aq(h,c[b>>2]|0)|0)==0){break}c[e>>2]=2;break a}}}while(0);c[e>>2]=c[f>>2]&2}}while(0);i=d;return c[e>>2]|0}function cq(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;h=i;i=i+96|0;n=h;g=h+84|0;t=h+80|0;q=h+76|0;o=h+72|0;k=h+68|0;C=h+64|0;B=h+60|0;A=h+56|0;D=h+52|0;u=h+48|0;y=h+44|0;j=h+40|0;w=h+36|0;p=h+32|0;s=h+28|0;m=h+24|0;l=h+20|0;r=h+16|0;x=h+88|0;z=h+12|0;E=h+8|0;c[t>>2]=e;c[q>>2]=f;c[o>>2]=c[(c[t>>2]|0)+20>>2];c[k>>2]=c[c[o>>2]>>2];if((c[(c[q>>2]|0)+4>>2]&4|0)!=0){c[g>>2]=1;e=c[g>>2]|0;i=h;return e|0}e=(c[q>>2]|0)+4|0;c[e>>2]=c[e>>2]|4;switch(d[c[q>>2]>>0]|0|0){case 153:{c[u>>2]=c[(c[q>>2]|0)+20>>2];if((c[u>>2]|0)!=0){A=c[c[u>>2]>>2]|0}else{A=0}c[y>>2]=A;c[j>>2]=0;c[w>>2]=0;c[p>>2]=0;a[x>>0]=a[(c[(c[(c[c[k>>2]>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;Bq(c[k>>2]|0,c[o>>2]|0,16704);c[l>>2]=c[(c[q>>2]|0)+8>>2];c[m>>2]=Mb(c[l>>2]|0)|0;c[r>>2]=Of(c[c[k>>2]>>2]|0,c[l>>2]|0,c[m>>2]|0,c[y>>2]|0,a[x>>0]|0,0)|0;do{if((c[r>>2]|0)==0){c[r>>2]=Of(c[c[k>>2]>>2]|0,c[l>>2]|0,c[m>>2]|0,-2,a[x>>0]|0,0)|0;if((c[r>>2]|0)==0){c[j>>2]=1;break}else{c[w>>2]=1;break}}else{c[p>>2]=(c[(c[r>>2]|0)+12>>2]|0)==0&1;if((b[(c[r>>2]|0)+2>>1]&1024|0)!=0){e=(c[q>>2]|0)+4|0;c[e>>2]=c[e>>2]|266240;if((c[y>>2]|0)!=2){c[(c[q>>2]|0)+28>>2]=62;break}e=Cq(c[(c[(c[u>>2]|0)+4>>2]|0)+20>>2]|0)|0;c[(c[q>>2]|0)+28>>2]=e;if((c[(c[q>>2]|0)+28>>2]|0)<0){Ne(c[k>>2]|0,16720,n);e=(c[o>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1}}}}while(0);do{if((c[r>>2]|0)!=0){c[s>>2]=Oo(c[k>>2]|0,31,0,c[(c[r>>2]|0)+24>>2]|0,0)|0;if((c[s>>2]|0)==0){if((b[(c[r>>2]|0)+2>>1]&2048|0)==0){break}e=(c[q>>2]|0)+4|0;c[e>>2]=c[e>>2]|524288;break}if((c[s>>2]|0)==1){e=c[k>>2]|0;c[n>>2]=c[(c[r>>2]|0)+24>>2];Ne(e,16792,n);e=(c[o>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1}a[c[q>>2]>>0]=101;c[g>>2]=1;e=c[g>>2]|0;i=h;return e|0}}while(0);if((c[p>>2]|0)!=0?(a[(c[o>>2]|0)+28>>0]&1|0)==0:0){e=c[k>>2]|0;f=c[l>>2]|0;c[n>>2]=c[m>>2];c[n+4>>2]=f;Ne(e,16832,n);e=(c[o>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1;c[p>>2]=0}else{v=30}do{if((v|0)==30){if((c[j>>2]|0)!=0?(d[(c[c[k>>2]>>2]|0)+137>>0]|0|0)==0:0){e=c[k>>2]|0;f=c[l>>2]|0;c[n>>2]=c[m>>2];c[n+4>>2]=f;Ne(e,16872,n);e=(c[o>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1;break}if((c[w>>2]|0)!=0){e=c[k>>2]|0;f=c[l>>2]|0;c[n>>2]=c[m>>2];c[n+4>>2]=f;Ne(e,16896,n);e=(c[o>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1}}}while(0);if((c[p>>2]|0)!=0){e=(c[o>>2]|0)+28|0;a[e>>0]=(d[e>>0]|0)&-2}aq(c[t>>2]|0,c[u>>2]|0)|0;if((c[p>>2]|0)!=0){c[z>>2]=c[o>>2];a[c[q>>2]>>0]=-101;a[(c[q>>2]|0)+38>>0]=0;while(1){if((c[z>>2]|0)==0){break}if(!((Dq(c[q>>2]|0,c[(c[z>>2]|0)+4>>2]|0)|0)!=0^1)){break}e=(c[q>>2]|0)+38|0;a[e>>0]=(a[e>>0]|0)+1<<24>>24;c[z>>2]=c[(c[z>>2]|0)+16>>2]}if((c[z>>2]|0)!=0){e=(c[z>>2]|0)+28|0;a[e>>0]=d[e>>0]|0|2}e=(c[o>>2]|0)+28|0;a[e>>0]=d[e>>0]|0|1}c[g>>2]=1;e=c[g>>2]|0;i=h;return e|0};case 122:{c[D>>2]=c[(c[q>>2]|0)+16>>2];if((d[c[D>>2]>>0]|0|0)==27){c[A>>2]=0;c[B>>2]=c[(c[(c[q>>2]|0)+12>>2]|0)+8>>2];c[C>>2]=c[(c[D>>2]|0)+8>>2]}else{c[A>>2]=c[(c[(c[q>>2]|0)+12>>2]|0)+8>>2];c[B>>2]=c[(c[(c[D>>2]|0)+12>>2]|0)+8>>2];c[C>>2]=c[(c[(c[D>>2]|0)+16>>2]|0)+8>>2]}c[g>>2]=Aq(c[k>>2]|0,c[A>>2]|0,c[B>>2]|0,c[C>>2]|0,c[o>>2]|0,c[q>>2]|0)|0;e=c[g>>2]|0;i=h;return e|0};case 75:case 20:case 119:{if((c[(c[q>>2]|0)+4>>2]&2048|0)!=0?(c[E>>2]=c[(c[o>>2]|0)+20>>2],Eq(c[k>>2]|0,c[o>>2]|0,16944),Bq(c[k>>2]|0,c[o>>2]|0,16944),Zp(c[t>>2]|0,c[(c[q>>2]|0)+20>>2]|0)|0,(c[E>>2]|0)!=(c[(c[o>>2]|0)+20>>2]|0)):0){e=(c[q>>2]|0)+4|0;c[e>>2]=c[e>>2]|32}break};case 27:{c[g>>2]=Aq(c[k>>2]|0,0,0,c[(c[q>>2]|0)+8>>2]|0,c[o>>2]|0,c[q>>2]|0)|0;e=c[g>>2]|0;i=h;return e|0};case 135:{Eq(c[k>>2]|0,c[o>>2]|0,16960);Bq(c[k>>2]|0,c[o>>2]|0,16960);break};default:{}}if((c[(c[k>>2]|0)+64>>2]|0)!=0){j=1}else{j=(d[(c[c[k>>2]>>2]|0)+64>>0]|0|0)!=0}c[g>>2]=j?2:0;e=c[g>>2]|0;i=h;return e|0}function dq(f,g){f=f|0;g=g|0;var h=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;j=i;i=i+112|0;m=j;h=j+108|0;C=j+104|0;B=j+100|0;o=j+96|0;t=j+64|0;k=j+56|0;A=j+52|0;l=j+48|0;u=j+44|0;q=j+40|0;r=j+36|0;n=j+32|0;p=j+28|0;w=j+24|0;y=j+20|0;z=j+16|0;x=j+12|0;v=j+8|0;s=j+4|0;c[C>>2]=f;c[B>>2]=g;if((b[(c[B>>2]|0)+6>>1]&2|0)!=0){c[h>>2]=1;f=c[h>>2]|0;i=j;return f|0}c[o>>2]=c[(c[C>>2]|0)+20>>2];c[l>>2]=c[(c[C>>2]|0)+12>>2];c[p>>2]=c[c[l>>2]>>2];if((b[(c[B>>2]|0)+6>>1]&16|0)==0){Hp(c[l>>2]|0,c[B>>2]|0,c[o>>2]|0);if((c[(c[l>>2]|0)+64>>2]|0)!=0){k=1}else{k=(d[(c[p>>2]|0)+64>>0]|0)!=0}c[h>>2]=k?2:1;f=c[h>>2]|0;i=j;return f|0}c[k>>2]=(c[(c[B>>2]|0)+52>>2]|0)!=0&1;c[A>>2]=0;c[n>>2]=c[B>>2];a:while(1){if((c[B>>2]|0)==0){o=59;break}f=(c[B>>2]|0)+6|0;b[f>>1]=e[f>>1]|2;c[t+0>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;c[t>>2]=c[l>>2];if((eq(t,c[(c[B>>2]|0)+60>>2]|0)|0)!=0){o=11;break}if((eq(t,c[(c[B>>2]|0)+64>>2]|0)|0)!=0){o=11;break}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[c[(c[B>>2]|0)+32>>2]>>2]|0)){break}c[w>>2]=(c[(c[B>>2]|0)+32>>2]|0)+8+((c[q>>2]|0)*72|0);if((c[(c[w>>2]|0)+20>>2]|0)!=0){c[z>>2]=0;c[x>>2]=c[(c[l>>2]|0)+492>>2];c[y>>2]=c[o>>2];while(1){if((c[y>>2]|0)==0){break}c[z>>2]=(c[z>>2]|0)+(c[(c[y>>2]|0)+20>>2]|0);c[y>>2]=c[(c[y>>2]|0)+16>>2]}if((c[(c[w>>2]|0)+8>>2]|0)!=0){c[(c[l>>2]|0)+492>>2]=c[(c[w>>2]|0)+8>>2]}Vp(c[l>>2]|0,c[(c[w>>2]|0)+20>>2]|0,c[o>>2]|0);c[(c[l>>2]|0)+492>>2]=c[x>>2];if((c[(c[l>>2]|0)+64>>2]|0)!=0){o=22;break a}if((d[(c[p>>2]|0)+64>>0]|0)!=0){o=22;break a}c[y>>2]=c[o>>2];while(1){if((c[y>>2]|0)==0){break}c[z>>2]=(c[z>>2]|0)-(c[(c[y>>2]|0)+20>>2]|0);c[y>>2]=c[(c[y>>2]|0)+16>>2]}f=(c[w>>2]|0)+37|0;a[f>>0]=a[f>>0]&-3|((c[z>>2]|0)!=0&1)<<1&255}c[q>>2]=(c[q>>2]|0)+1}a[t+28>>0]=1;c[t+4>>2]=c[(c[B>>2]|0)+32>>2];c[t+16>>2]=c[o>>2];c[u>>2]=c[c[B>>2]>>2];c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[c[u>>2]>>2]|0)){break}c[v>>2]=c[(c[(c[u>>2]|0)+4>>2]|0)+((c[q>>2]|0)*20|0)>>2];if((eq(t,c[v>>2]|0)|0)!=0){o=31;break a}c[q>>2]=(c[q>>2]|0)+1}c[r>>2]=c[(c[B>>2]|0)+40>>2];if((c[r>>2]|0)==0?(a[t+28>>0]&2|0)==0:0){f=t+28|0;a[f>>0]=d[f>>0]&-2}else{f=(c[B>>2]|0)+6|0;b[f>>1]=e[f>>1]|4}if((c[(c[B>>2]|0)+44>>2]|0)!=0?(c[r>>2]|0)==0:0){o=39;break}c[t+8>>2]=c[c[B>>2]>>2];if((eq(t,c[(c[B>>2]|0)+44>>2]|0)|0)!=0){o=41;break}if((eq(t,c[(c[B>>2]|0)+36>>2]|0)|0)!=0){o=43;break}c[t+16>>2]=0;f=t+28|0;a[f>>0]=d[f>>0]|1;if((c[k>>2]|0)==0?(fq(t,c[B>>2]|0,c[(c[B>>2]|0)+48>>2]|0,16384)|0)!=0:0){o=46;break}if((a[(c[p>>2]|0)+64>>0]|0)!=0){o=48;break}b:do{if((c[r>>2]|0)!=0){if((fq(t,c[B>>2]|0,c[r>>2]|0,16392)|0)!=0){o=52;break a}if((d[(c[p>>2]|0)+64>>0]|0)!=0){o=52;break a}c[q>>2]=0;c[s>>2]=c[(c[r>>2]|0)+4>>2];while(1){if((c[q>>2]|0)>=(c[c[r>>2]>>2]|0)){break b}if((c[(c[c[s>>2]>>2]|0)+4>>2]&2|0)!=0){o=56;break a}c[q>>2]=(c[q>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+20}}}while(0);c[B>>2]=c[(c[B>>2]|0)+52>>2];c[A>>2]=(c[A>>2]|0)+1}switch(o|0){case 11:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 22:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 31:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 39:{Ne(c[l>>2]|0,16336,m);c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 41:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 43:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 46:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 48:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 52:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 56:{Ne(c[l>>2]|0,16400,m);c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 59:{if((c[k>>2]|0)!=0?(gq(c[l>>2]|0,c[n>>2]|0)|0)!=0:0){c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0}c[h>>2]=1;f=c[h>>2]|0;i=j;return f|0}}return 0}function eq(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+48|0;g=f+40|0;k=f+36|0;j=f+32|0;l=f+44|0;m=f+8|0;h=f;c[k>>2]=b;c[j>>2]=e;if((c[j>>2]|0)==0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}c[h>>2]=c[c[k>>2]>>2];if((zq(c[h>>2]|0,(c[(c[j>>2]|0)+24>>2]|0)+(c[(c[c[k>>2]>>2]|0)+460>>2]|0)|0)|0)!=0){c[g>>2]=1;b=c[g>>2]|0;i=f;return b|0}b=(c[h>>2]|0)+460|0;c[b>>2]=(c[b>>2]|0)+(c[(c[j>>2]|0)+24>>2]|0);a[l>>0]=a[(c[k>>2]|0)+28>>0]&2;b=(c[k>>2]|0)+28|0;a[b>>0]=d[b>>0]&-3;c[m+0>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[m+20>>2]=0;c[m>>2]=39;c[m+4>>2]=40;c[m+12>>2]=c[c[k>>2]>>2];c[m+20>>2]=c[k>>2];bq(m,c[j>>2]|0)|0;b=(c[c[k>>2]>>2]|0)+460|0;c[b>>2]=(c[b>>2]|0)-(c[(c[j>>2]|0)+24>>2]|0);if(!((c[(c[k>>2]|0)+24>>2]|0)<=0?(c[(c[m+12>>2]|0)+64>>2]|0)<=0:0)){b=(c[j>>2]|0)+4|0;c[b>>2]=c[b>>2]|8}if((a[(c[k>>2]|0)+28>>0]&2|0)==0){if((a[l>>0]|0)!=0){b=(c[k>>2]|0)+28|0;a[b>>0]=d[b>>0]|2}}else{b=(c[j>>2]|0)+4|0;c[b>>2]=c[b>>2]|2}c[g>>2]=(c[(c[j>>2]|0)+4>>2]&8|0)!=0&1;b=c[g>>2]|0;i=f;return b|0}function fq(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=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;r=i;i=i+64|0;k=r+48|0;v=r+44|0;o=r+40|0;t=r+36|0;h=r+32|0;s=r+28|0;u=r+24|0;l=r+20|0;m=r+16|0;n=r+12|0;w=r+8|0;q=r+4|0;p=r;c[v>>2]=d;c[o>>2]=e;c[t>>2]=f;c[h>>2]=g;if((c[t>>2]|0)==0){c[k>>2]=0;d=c[k>>2]|0;i=r;return d|0}c[w>>2]=c[c[c[o>>2]>>2]>>2];c[n>>2]=c[c[v>>2]>>2];c[s>>2]=0;c[m>>2]=c[(c[t>>2]|0)+4>>2];a:while(1){if((c[s>>2]|0)>=(c[c[t>>2]>>2]|0)){j=20;break}c[q>>2]=c[c[m>>2]>>2];c[p>>2]=Sp(c[q>>2]|0)|0;if((a[c[h>>2]>>0]|0)!=71?(c[l>>2]=jq(c[n>>2]|0,c[c[o>>2]>>2]|0,c[p>>2]|0)|0,(c[l>>2]|0)>0):0){b[(c[m>>2]|0)+16>>1]=c[l>>2]}else{j=8}b:do{if((j|0)==8){j=0;if((hq(c[p>>2]|0,l)|0)!=0){if((c[l>>2]|0)<1|(c[l>>2]|0)>65535){j=10;break a}b[(c[m>>2]|0)+16>>1]=c[l>>2];break}b[(c[m>>2]|0)+16>>1]=0;if((eq(c[v>>2]|0,c[q>>2]|0)|0)!=0){j=13;break a}c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[c[c[o>>2]>>2]>>2]|0)){break b}if((mq(c[q>>2]|0,c[(c[(c[c[o>>2]>>2]|0)+4>>2]|0)+((c[u>>2]|0)*20|0)>>2]|0,-1)|0)==0){b[(c[m>>2]|0)+16>>1]=(c[u>>2]|0)+1}c[u>>2]=(c[u>>2]|0)+1}}}while(0);c[s>>2]=(c[s>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+20}if((j|0)==10){iq(c[n>>2]|0,c[h>>2]|0,(c[s>>2]|0)+1|0,c[w>>2]|0);c[k>>2]=1;d=c[k>>2]|0;i=r;return d|0}else if((j|0)==13){c[k>>2]=1;d=c[k>>2]|0;i=r;return d|0}else if((j|0)==20){c[k>>2]=uq(c[n>>2]|0,c[o>>2]|0,c[t>>2]|0,c[h>>2]|0)|0;d=c[k>>2]|0;i=r;return d|0}return 0}function gq(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=i;i=i+64|0;h=m;k=m+52|0;g=m+48|0;o=m+44|0;f=m+40|0;l=m+36|0;j=m+32|0;s=m+28|0;n=m+24|0;p=m+20|0;q=m+16|0;r=m+12|0;t=m+8|0;u=m+4|0;c[g>>2]=d;c[o>>2]=e;c[n>>2]=1;c[l>>2]=c[(c[o>>2]|0)+48>>2];if((c[l>>2]|0)==0){c[k>>2]=0;d=c[k>>2]|0;i=m;return d|0}c[s>>2]=c[c[g>>2]>>2];if((c[c[l>>2]>>2]|0)>(c[(c[s>>2]|0)+96>>2]|0)){Ne(c[g>>2]|0,16464,h);c[k>>2]=1;d=c[k>>2]|0;i=m;return d|0}c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[l>>2]>>2]|0)){break}d=(c[(c[l>>2]|0)+4>>2]|0)+((c[f>>2]|0)*20|0)+13|0;a[d>>0]=a[d>>0]&-2;c[f>>2]=(c[f>>2]|0)+1}c[(c[o>>2]|0)+56>>2]=0;while(1){if((c[(c[o>>2]|0)+52>>2]|0)==0){break}c[(c[(c[o>>2]|0)+52>>2]|0)+56>>2]=c[o>>2];c[o>>2]=c[(c[o>>2]|0)+52>>2]}a:while(1){if((c[o>>2]|0)==0){n=34;break}if((c[n>>2]|0)==0){n=34;break}c[n>>2]=0;c[j>>2]=c[c[o>>2]>>2];c[f>>2]=0;c[p>>2]=c[(c[l>>2]|0)+4>>2];while(1){if((c[f>>2]|0)>=(c[c[l>>2]>>2]|0)){break}c[q>>2]=-1;do{if((a[(c[p>>2]|0)+13>>0]&1|0)==0){c[r>>2]=Sp(c[c[p>>2]>>2]|0)|0;if((hq(c[r>>2]|0,q)|0)!=0){if((c[q>>2]|0)<=0){n=19;break a}if((c[q>>2]|0)>(c[c[j>>2]>>2]|0)){n=19;break a}}else{c[q>>2]=jq(c[g>>2]|0,c[j>>2]|0,c[r>>2]|0)|0;if((c[q>>2]|0)==0){c[t>>2]=kq(c[s>>2]|0,c[r>>2]|0,0)|0;if((a[(c[s>>2]|0)+64>>0]|0)==0){c[q>>2]=lq(c[g>>2]|0,c[o>>2]|0,c[t>>2]|0)|0}hn(c[s>>2]|0,c[t>>2]|0)}}if((c[q>>2]|0)<=0){c[n>>2]=1;break}c[u>>2]=Un(c[s>>2]|0,132,0)|0;if((c[u>>2]|0)==0){n=26;break a}d=(c[u>>2]|0)+4|0;c[d>>2]=c[d>>2]|1024;c[(c[u>>2]|0)+8>>2]=c[q>>2];d=c[u>>2]|0;e=c[p>>2]|0;if((c[c[p>>2]>>2]|0)==(c[r>>2]|0)){c[e>>2]=d}else{c[(c[e>>2]|0)+12>>2]=d}hn(c[s>>2]|0,c[r>>2]|0);b[(c[p>>2]|0)+16>>1]=c[q>>2];d=(c[p>>2]|0)+13|0;a[d>>0]=a[d>>0]&-2|1}}while(0);c[f>>2]=(c[f>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+20}c[o>>2]=c[(c[o>>2]|0)+56>>2]}if((n|0)==19){iq(c[g>>2]|0,16384,(c[f>>2]|0)+1|0,c[c[j>>2]>>2]|0);c[k>>2]=1;d=c[k>>2]|0;i=m;return d|0}else if((n|0)==26){c[k>>2]=1;d=c[k>>2]|0;i=m;return d|0}else if((n|0)==34){c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[l>>2]>>2]|0)){n=39;break}if((a[(c[(c[l>>2]|0)+4>>2]|0)+((c[f>>2]|0)*20|0)+13>>0]&1|0)==0){n=37;break}c[f>>2]=(c[f>>2]|0)+1}if((n|0)==37){d=c[g>>2]|0;c[h>>2]=(c[f>>2]|0)+1;Ne(d,16504,h);c[k>>2]=1;d=c[k>>2]|0;i=m;return d|0}else if((n|0)==39){c[k>>2]=0;d=c[k>>2]|0;i=m;return d|0}}return 0}function hq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;k=e+12|0;g=e+8|0;h=e+4|0;j=e;c[k>>2]=a;c[g>>2]=b;c[h>>2]=0;b=c[k>>2]|0;if((c[(c[k>>2]|0)+4>>2]&1024|0)!=0){c[c[g>>2]>>2]=c[b+8>>2];c[f>>2]=1;a=c[f>>2]|0;i=e;return a|0}b=d[b>>0]|0;if((b|0)==157){if((hq(c[(c[k>>2]|0)+12>>2]|0,j)|0)!=0){c[c[g>>2]>>2]=0-(c[j>>2]|0);c[h>>2]=1}}else if((b|0)==158){c[h>>2]=hq(c[(c[k>>2]|0)+12>>2]|0,c[g>>2]|0)|0}c[f>>2]=c[h>>2];a=c[f>>2]|0;i=e;return a|0}function iq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f;l=f+24|0;k=f+20|0;h=f+16|0;j=f+12|0;c[l>>2]=a;c[k>>2]=b;c[h>>2]=d;c[j>>2]=e;a=c[l>>2]|0;d=c[k>>2]|0;b=c[j>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=d;c[g+8>>2]=b;Ne(a,16568,g);i=f;return}function jq(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;f=g+24|0;k=g+16|0;m=g+12|0;l=g+8|0;j=g+4|0;h=g;c[g+20>>2]=a;c[k>>2]=b;c[m>>2]=e;a:do{if((d[c[m>>2]>>0]|0|0)==27){c[j>>2]=c[(c[m>>2]|0)+8>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[c[k>>2]>>2]|0)){break a}c[h>>2]=c[(c[(c[k>>2]|0)+4>>2]|0)+((c[l>>2]|0)*20|0)+4>>2];if((c[h>>2]|0)!=0?(vc(c[h>>2]|0,c[j>>2]|0)|0)==0:0){break}c[l>>2]=(c[l>>2]|0)+1}c[f>>2]=(c[l>>2]|0)+1;a=c[f>>2]|0;i=g;return a|0}}while(0);c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}function kq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=oq(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0,0)|0;i=e;return a|0}function lq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+80|0;g=f+60|0;p=f+56|0;q=f+52|0;k=f+48|0;j=f+44|0;h=f+40|0;o=f+8|0;m=f+4|0;l=f;n=f+64|0;c[p>>2]=b;c[q>>2]=d;c[k>>2]=e;c[h>>2]=c[c[q>>2]>>2];c[o+0>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[o+20>>2]=0;c[o+24>>2]=0;c[o+28>>2]=0;c[o>>2]=c[p>>2];c[o+4>>2]=c[(c[q>>2]|0)+32>>2];c[o+8>>2]=c[h>>2];a[o+28>>0]=1;c[o+24>>2]=0;c[m>>2]=c[c[p>>2]>>2];a[n>>0]=a[(c[m>>2]|0)+67>>0]|0;a[(c[m>>2]|0)+67>>0]=1;c[l>>2]=eq(o,c[k>>2]|0)|0;a[(c[m>>2]|0)+67>>0]=a[n>>0]|0;if((c[l>>2]|0)!=0){c[g>>2]=0;q=c[g>>2]|0;i=f;return q|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[c[h>>2]>>2]|0)){h=8;break}q=(mq(c[(c[(c[h>>2]|0)+4>>2]|0)+((c[j>>2]|0)*20|0)>>2]|0,c[k>>2]|0,-1)|0)<2;e=(c[j>>2]|0)+1|0;if(q){h=6;break}c[j>>2]=e}if((h|0)==6){c[g>>2]=e;q=c[g>>2]|0;i=f;return q|0}else if((h|0)==8){c[g>>2]=0;q=c[g>>2]|0;i=f;return q|0}return 0}function mq(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;l=h+16|0;k=h+12|0;j=h+8|0;g=h+4|0;m=h;c[k>>2]=a;c[j>>2]=e;c[g>>2]=f;if((c[k>>2]|0)!=0?(c[j>>2]|0)!=0:0){c[m>>2]=c[(c[k>>2]|0)+4>>2]|c[(c[j>>2]|0)+4>>2];f=c[k>>2]|0;if((c[m>>2]&1024|0)!=0){if((c[f+4>>2]&c[(c[j>>2]|0)+4>>2]&1024|0)!=0?(c[(c[k>>2]|0)+8>>2]|0)==(c[(c[j>>2]|0)+8>>2]|0):0){c[l>>2]=0;a=c[l>>2]|0;i=h;return a|0}c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}e=d[c[k>>2]>>0]|0;if((d[f>>0]|0)!=(d[c[j>>2]>>0]|0)){if((e|0)==95?(mq(c[(c[k>>2]|0)+12>>2]|0,c[j>>2]|0,c[g>>2]|0)|0)<2:0){c[l>>2]=1;a=c[l>>2]|0;i=h;return a|0}if((d[c[j>>2]>>0]|0)==95?(mq(c[k>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[g>>2]|0)|0)<2:0){c[l>>2]=1;a=c[l>>2]|0;i=h;return a|0}c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((((e|0)!=154?(d[c[k>>2]>>0]|0)!=156:0)?(c[(c[k>>2]|0)+8>>2]|0)!=0:0)?(WD(c[(c[k>>2]|0)+8>>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0)!=0:0){c[l>>2]=(d[c[k>>2]>>0]|0)==95?1:2;a=c[l>>2]|0;i=h;return a|0}if((c[(c[k>>2]|0)+4>>2]&16|0)!=(c[(c[j>>2]|0)+4>>2]&16|0)){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}do{if((c[m>>2]&16384|0)==0){if((c[m>>2]&2048|0)!=0){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((mq(c[(c[k>>2]|0)+12>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[g>>2]|0)|0)!=0){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((mq(c[(c[k>>2]|0)+16>>2]|0,c[(c[j>>2]|0)+16>>2]|0,c[g>>2]|0)|0)!=0){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((nq(c[(c[k>>2]|0)+20>>2]|0,c[(c[j>>2]|0)+20>>2]|0,c[g>>2]|0)|0)!=0){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((c[m>>2]&8192|0)==0){if((b[(c[k>>2]|0)+32>>1]|0)!=(b[(c[j>>2]|0)+32>>1]|0)){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((c[(c[k>>2]|0)+28>>2]|0)!=(c[(c[j>>2]|0)+28>>2]|0)){if((c[(c[k>>2]|0)+28>>2]|0)==(c[g>>2]|0)?(c[(c[j>>2]|0)+28>>2]|0)<0:0){break}c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}}}}while(0);c[l>>2]=0;a=c[l>>2]|0;i=h;return a|0}c[l>>2]=(c[j>>2]|0)==(c[k>>2]|0)?0:2;a=c[l>>2]|0;i=h;return a|0}function nq(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;f=g+24|0;h=g+20|0;n=g+16|0;l=g+12|0;m=g+8|0;j=g+4|0;k=g;c[h>>2]=a;c[n>>2]=b;c[l>>2]=e;if((c[h>>2]|0)==0?(c[n>>2]|0)==0:0){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}if((c[h>>2]|0)!=0?(c[n>>2]|0)!=0:0){if((c[c[h>>2]>>2]|0)!=(c[c[n>>2]>>2]|0)){c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[c[h>>2]>>2]|0)){h=16;break}c[j>>2]=c[(c[(c[h>>2]|0)+4>>2]|0)+((c[m>>2]|0)*20|0)>>2];c[k>>2]=c[(c[(c[n>>2]|0)+4>>2]|0)+((c[m>>2]|0)*20|0)>>2];if((d[(c[(c[h>>2]|0)+4>>2]|0)+((c[m>>2]|0)*20|0)+12>>0]|0|0)!=(d[(c[(c[n>>2]|0)+4>>2]|0)+((c[m>>2]|0)*20|0)+12>>0]|0|0)){h=12;break}if((mq(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)!=0){h=14;break}c[m>>2]=(c[m>>2]|0)+1}if((h|0)==12){c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}else if((h|0)==14){c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}else if((h|0)==16){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}}c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}function oq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+64|0;m=j+48|0;h=j+44|0;k=j+40|0;l=j+36|0;f=j+32|0;n=j+28|0;g=j+24|0;p=j+20|0;t=j+16|0;q=j+12|0;s=j+8|0;o=j+4|0;r=j;c[m>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[f>>2]=0;if((c[h>>2]|0)==0){a=c[f>>2]|0;i=j;return a|0}c[n>>2]=c[k>>2]&1;c[p>>2]=0;if((c[l>>2]|0)!=0){c[g>>2]=c[c[l>>2]>>2];c[p>>2]=32768}else{a=c[m>>2]|0;c[g>>2]=Le(a,pq(c[h>>2]|0,c[k>>2]|0)|0)|0}c[f>>2]=c[g>>2];if((c[f>>2]|0)==0){a=c[f>>2]|0;i=j;return a|0}c[t>>2]=qq(c[h>>2]|0,c[k>>2]|0)|0;c[q>>2]=c[t>>2]&4095;if((c[(c[h>>2]|0)+4>>2]&1024|0)==0?(c[(c[h>>2]|0)+8>>2]|0)!=0:0){c[s>>2]=(Mb(c[(c[h>>2]|0)+8>>2]|0)|0)+1}else{c[s>>2]=0}if((c[n>>2]|0)!=0){dE(c[g>>2]|0,c[h>>2]|0,c[q>>2]|0)|0}else{c[o>>2]=rq(c[h>>2]|0)|0;dE(c[g>>2]|0,c[h>>2]|0,c[o>>2]|0)|0;_D((c[g>>2]|0)+(c[o>>2]|0)|0,0,48-(c[o>>2]|0)|0)|0}a=(c[f>>2]|0)+4|0;c[a>>2]=c[a>>2]&-122881;a=(c[f>>2]|0)+4|0;c[a>>2]=c[a>>2]|c[t>>2]&24576;a=(c[f>>2]|0)+4|0;c[a>>2]=c[a>>2]|c[p>>2];if((c[s>>2]|0)!=0){a=(c[g>>2]|0)+(c[q>>2]|0)|0;c[(c[f>>2]|0)+8>>2]=a;c[r>>2]=a;dE(c[r>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[s>>2]|0)|0}do{if(0==((c[(c[h>>2]|0)+4>>2]|c[(c[f>>2]|0)+4>>2])&16384|0)){p=c[m>>2]|0;o=(c[h>>2]|0)+20|0;if((c[(c[h>>2]|0)+4>>2]&2048|0)!=0){a=Ep(p,c[o>>2]|0,c[n>>2]|0)|0;c[(c[f>>2]|0)+20>>2]=a;break}else{a=sq(p,c[o>>2]|0,c[n>>2]|0)|0;c[(c[f>>2]|0)+20>>2]=a;break}}}while(0);n=c[h>>2]|0;if((c[(c[f>>2]|0)+4>>2]&24576|0)==0){if((c[n+4>>2]&16384|0)!=0){a=c[f>>2]|0;i=j;return a|0}a=kq(c[m>>2]|0,c[(c[h>>2]|0)+12>>2]|0,0)|0;c[(c[f>>2]|0)+12>>2]=a;a=kq(c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0,0)|0;c[(c[f>>2]|0)+16>>2]=a;a=c[f>>2]|0;i=j;return a|0}a=tq(n,c[k>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+a;if((c[(c[f>>2]|0)+4>>2]&8192|0)!=0){a=oq(c[m>>2]|0,c[(c[h>>2]|0)+12>>2]|0,1,g)|0;c[(c[f>>2]|0)+12>>2]=a;a=oq(c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0,1,g)|0;c[(c[f>>2]|0)+16>>2]=a}if((c[l>>2]|0)==0){a=c[f>>2]|0;i=j;return a|0}c[c[l>>2]>>2]=c[g>>2];a=c[f>>2]|0;i=j;return a|0}function pq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d+4|0;e=d;c[f>>2]=a;c[g>>2]=b;c[e>>2]=0;if((c[f>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[e>>2]=tq(c[f>>2]|0,c[g>>2]|0)|0;if((c[g>>2]&1|0)==0){a=c[e>>2]|0;i=d;return a|0}a=pq(c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0;a=a+(pq(c[(c[f>>2]|0)+16>>2]|0,c[g>>2]|0)|0)|0;c[e>>2]=(c[e>>2]|0)+a;a=c[e>>2]|0;i=d;return a|0}function qq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d+4|0;e=d;c[f>>2]=a;c[g>>2]=b;do{if(0==(c[g>>2]&1|0)){c[e>>2]=48}else{if((c[(c[f>>2]|0)+12>>2]|0)==0?(c[(c[f>>2]|0)+20>>2]|0)==0:0){c[e>>2]=16396;break}c[e>>2]=8220}}while(0);i=d;return c[e>>2]|0}function rq(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;do{if((c[(c[e>>2]|0)+4>>2]&16384|0)==0){if((c[(c[e>>2]|0)+4>>2]&8192|0)!=0){c[b>>2]=28;break}else{c[b>>2]=48;break}}else{c[b>>2]=12}}while(0);i=d;return c[b>>2]|0}function sq(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+48|0;h=m+32|0;j=m+28|0;l=m+24|0;q=m+20|0;k=m+16|0;o=m+12|0;g=m+8|0;n=m+4|0;p=m;c[j>>2]=b;c[l>>2]=e;c[q>>2]=f;if((c[l>>2]|0)==0){c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}c[k>>2]=Le(c[j>>2]|0,8)|0;if((c[k>>2]|0)==0){c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}b=c[c[l>>2]>>2]|0;c[n>>2]=b;c[c[k>>2]>>2]=b;a:do{if((c[q>>2]&1|0)==0){c[n>>2]=1;while(1){if((c[n>>2]|0)>=(c[c[l>>2]>>2]|0)){break a}c[n>>2]=(c[n>>2]|0)+(c[n>>2]|0)}}}while(0);b=Le(c[j>>2]|0,(c[n>>2]|0)*20|0)|0;c[o>>2]=b;c[(c[k>>2]|0)+4>>2]=b;if((c[o>>2]|0)==0){Wb(c[j>>2]|0,c[k>>2]|0);c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}c[g>>2]=c[(c[l>>2]|0)+4>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[c[l>>2]>>2]|0)){break}c[p>>2]=c[c[g>>2]>>2];b=kq(c[j>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;c[c[o>>2]>>2]=b;b=he(c[j>>2]|0,c[(c[g>>2]|0)+4>>2]|0)|0;c[(c[o>>2]|0)+4>>2]=b;b=he(c[j>>2]|0,c[(c[g>>2]|0)+8>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=b;a[(c[o>>2]|0)+12>>0]=a[(c[g>>2]|0)+12>>0]|0;b=(c[o>>2]|0)+13|0;a[b>>0]=a[b>>0]&-2;b=(c[o>>2]|0)+13|0;a[b>>0]=a[b>>0]&-3|((d[(c[g>>2]|0)+13>>0]|0)>>>1&1&1)<<1&255;b=(c[o>>2]|0)+16|0;e=(c[g>>2]|0)+16|0;c[b+0>>2]=c[e+0>>2];c[n>>2]=(c[n>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+20;c[g>>2]=(c[g>>2]|0)+20}c[h>>2]=c[k>>2];b=c[h>>2]|0;i=m;return b|0}function tq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;d=e;c[f>>2]=a;c[g>>2]=b;c[d>>2]=(qq(c[f>>2]|0,c[g>>2]|0)|0)&4095;if((c[(c[f>>2]|0)+4>>2]&1024|0)==0?(c[(c[f>>2]|0)+8>>2]|0)!=0:0){g=(Mb(c[(c[f>>2]|0)+8>>2]|0)|0)+1|0;c[d>>2]=(c[d>>2]|0)+g}i=e;return(c[d>>2]|0)+7&-8|0}function uq(a,f,g,h){a=a|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=i;i=i+48|0;r=n;j=n+36|0;p=n+32|0;s=n+28|0;q=n+24|0;k=n+20|0;l=n+16|0;t=n+12|0;m=n+8|0;o=n+4|0;c[p>>2]=a;c[s>>2]=f;c[q>>2]=g;c[k>>2]=h;c[t>>2]=c[c[p>>2]>>2];if((c[q>>2]|0)!=0?(d[(c[c[p>>2]>>2]|0)+64>>0]|0)==0:0){if((c[c[q>>2]>>2]|0)>(c[(c[t>>2]|0)+96>>2]|0)){a=c[p>>2]|0;c[r>>2]=c[k>>2];Ne(a,16624,r);c[j>>2]=1;a=c[j>>2]|0;i=n;return a|0}c[m>>2]=c[c[s>>2]>>2];c[l>>2]=0;c[o>>2]=c[(c[q>>2]|0)+4>>2];while(1){if((c[l>>2]|0)>=(c[c[q>>2]>>2]|0)){o=13;break}if((b[(c[o>>2]|0)+16>>1]|0)!=0){h=c[p>>2]|0;if((e[(c[o>>2]|0)+16>>1]|0)>(c[c[m>>2]>>2]|0)){o=10;break}vq(h,c[m>>2]|0,(e[(c[o>>2]|0)+16>>1]|0)-1|0,c[c[o>>2]>>2]|0,c[k>>2]|0,0)}c[l>>2]=(c[l>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+20}if((o|0)==10){iq(h,c[k>>2]|0,(c[l>>2]|0)+1|0,c[c[m>>2]>>2]|0);c[j>>2]=1;a=c[j>>2]|0;i=n;return a|0}else if((o|0)==13){c[j>>2]=0;a=c[j>>2]|0;i=n;return a|0}}c[j>>2]=0;a=c[j>>2]|0;i=n;return a|0}function vq(f,g,h,j,k,l){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;p=i;i=i+48|0;r=p+32|0;t=p+28|0;u=p+24|0;m=p+20|0;v=p+16|0;s=p+12|0;q=p+8|0;n=p+4|0;o=p;c[r>>2]=f;c[t>>2]=g;c[u>>2]=h;c[m>>2]=j;c[v>>2]=k;c[s>>2]=l;c[q>>2]=c[(c[(c[t>>2]|0)+4>>2]|0)+((c[u>>2]|0)*20|0)>>2];c[o>>2]=c[c[r>>2]>>2];c[n>>2]=kq(c[o>>2]|0,c[q>>2]|0,0)|0;if((c[n>>2]|0)==0){i=p;return}if((d[c[q>>2]>>0]|0)!=154?(a[c[v>>2]>>0]|0)!=71:0){wq(c[n>>2]|0,c[s>>2]|0);c[n>>2]=Dn(c[r>>2]|0,24,c[n>>2]|0,0,0)|0;if((c[n>>2]|0)==0){i=p;return}f=(c[n>>2]|0)+4|0;c[f>>2]=c[f>>2]|4096;if((e[(c[(c[t>>2]|0)+4>>2]|0)+((c[u>>2]|0)*20|0)+18>>1]|0)==0){g=(c[r>>2]|0)+456|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;b[(c[(c[t>>2]|0)+4>>2]|0)+((c[u>>2]|0)*20|0)+18>>1]=f}c[(c[n>>2]|0)+28>>2]=e[(c[(c[t>>2]|0)+4>>2]|0)+((c[u>>2]|0)*20|0)+18>>1]|0}if((d[c[m>>2]>>0]|0)==95){c[n>>2]=xq(c[r>>2]|0,c[n>>2]|0,c[(c[m>>2]|0)+8>>2]|0)|0}r=(c[m>>2]|0)+4|0;c[r>>2]=c[r>>2]|32768;hn(c[o>>2]|0,c[m>>2]|0);r=(c[m>>2]|0)+0|0;l=(c[n>>2]|0)+0|0;q=r+48|0;do{c[r>>2]=c[l>>2];r=r+4|0;l=l+4|0}while((r|0)<(q|0));if((c[(c[m>>2]|0)+4>>2]&1024|0)==0?(c[(c[m>>2]|0)+8>>2]|0)!=0:0){f=he(c[o>>2]|0,c[(c[m>>2]|0)+8>>2]|0)|0;c[(c[m>>2]|0)+8>>2]=f;f=(c[m>>2]|0)+4|0;c[f>>2]=c[f>>2]|65536}Wb(c[o>>2]|0,c[n>>2]|0);i=p;return}function wq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;g=d+28|0;f=d+24|0;e=d;c[g>>2]=a;c[f>>2]=b;if((c[f>>2]|0)<=0){i=d;return}c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e>>2]=41;c[e+20>>2]=c[f>>2];bq(e,c[g>>2]|0)|0;i=d;return}function xq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+16|0;g=e+12|0;j=e+8|0;f=e;c[h>>2]=a;c[g>>2]=b;c[j>>2]=d;c[f>>2]=c[j>>2];c[f+4>>2]=Mb(c[f>>2]|0)|0;a=go(c[h>>2]|0,c[g>>2]|0,f)|0;i=e;return a|0}function yq(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;h=f+4|0;g=f;c[h>>2]=b;c[g>>2]=e;if((d[c[g>>2]>>0]|0|0)!=155){i=f;return 0}b=(c[g>>2]|0)+38|0;a[b>>0]=(d[b>>0]|0)+(c[(c[h>>2]|0)+20>>2]|0);i=f;return 0}function zq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;h=d;f=d+16|0;j=d+12|0;e=d+8|0;g=d+4|0;c[f>>2]=a;c[j>>2]=b;c[e>>2]=0;c[g>>2]=c[(c[c[f>>2]>>2]|0)+100>>2];if((c[j>>2]|0)<=(c[g>>2]|0)){j=c[e>>2]|0;i=d;return j|0}j=c[f>>2]|0;c[h>>2]=c[g>>2];Ne(j,16656,h);c[e>>2]=1;j=c[e>>2]|0;i=d;return j|0}function Aq(e,f,g,h,j,k){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;n=i;i=i+144|0;x=n;t=n+132|0;l=n+128|0;C=n+124|0;v=n+120|0;w=n+116|0;y=n+112|0;m=n+108|0;O=n+104|0;I=n+100|0;o=n+96|0;F=n+92|0;Q=n+88|0;p=n+84|0;N=n+80|0;s=n+76|0;u=n+72|0;z=n+68|0;q=n+64|0;H=n+60|0;B=n+56|0;E=n+52|0;P=n+48|0;M=n+44|0;R=n+40|0;L=n+36|0;G=n+32|0;J=n+28|0;S=n+24|0;A=n+20|0;r=n+16|0;c[l>>2]=e;c[C>>2]=f;c[v>>2]=g;c[w>>2]=h;c[y>>2]=j;c[m>>2]=k;c[o>>2]=0;c[F>>2]=0;c[Q>>2]=0;c[p>>2]=c[c[l>>2]>>2];c[s>>2]=0;c[u>>2]=c[y>>2];c[z>>2]=0;c[q>>2]=0;c[H>>2]=0;c[(c[m>>2]|0)+28>>2]=-1;c[(c[m>>2]|0)+44>>2]=0;a:do{if((c[C>>2]|0)!=0){if((a[(c[y>>2]|0)+28>>0]&20|0)!=0){c[C>>2]=0;break}c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[(c[p>>2]|0)+20>>2]|0)){break a}j=(vc(c[(c[(c[p>>2]|0)+16>>2]|0)+(c[O>>2]<<4)>>2]|0,c[C>>2]|0)|0)==0;k=c[O>>2]|0;if(j){break}c[O>>2]=k+1}c[z>>2]=c[(c[(c[p>>2]|0)+16>>2]|0)+(k<<4)+12>>2]}}while(0);b:while(1){if((c[y>>2]|0)==0){T=98;break}if((c[o>>2]|0)!=0){T=98;break}c[P>>2]=c[(c[y>>2]|0)+4>>2];if((c[P>>2]|0)!=0){c[O>>2]=0;c[N>>2]=(c[P>>2]|0)+8;while(1){if((c[O>>2]|0)>=(c[c[P>>2]>>2]|0)){break}c[H>>2]=c[(c[N>>2]|0)+16>>2];if((c[(c[N>>2]|0)+20>>2]|0)!=0?(b[(c[(c[N>>2]|0)+20>>2]|0)+6>>1]&512|0)!=0:0){c[M>>2]=0;c[E>>2]=c[c[(c[N>>2]|0)+20>>2]>>2];c[I>>2]=0;while(1){if((c[I>>2]|0)>=(c[c[E>>2]>>2]|0)){break}if((Gq(c[(c[(c[E>>2]|0)+4>>2]|0)+((c[I>>2]|0)*20|0)+8>>2]|0,c[w>>2]|0,c[v>>2]|0,c[C>>2]|0)|0)!=0){c[o>>2]=(c[o>>2]|0)+1;c[F>>2]=2;c[s>>2]=c[N>>2];b[(c[m>>2]|0)+32>>1]=c[I>>2];c[M>>2]=1}c[I>>2]=(c[I>>2]|0)+1}if((c[M>>2]|0)==0?(c[v>>2]|0)!=0:0){T=23}}else{T=23}c:do{if((T|0)==23){T=0;if((c[C>>2]|0)!=0?(c[(c[H>>2]|0)+68>>2]|0)!=(c[z>>2]|0):0){break}if((c[v>>2]|0)!=0){if((c[(c[N>>2]|0)+12>>2]|0)!=0){k=c[(c[N>>2]|0)+12>>2]|0}else{k=c[c[H>>2]>>2]|0}c[R>>2]=k;if((vc(c[R>>2]|0,c[v>>2]|0)|0)!=0){break}}j=c[F>>2]|0;c[F>>2]=j+1;if(0==(j|0)){c[s>>2]=c[N>>2]}c[I>>2]=0;c[B>>2]=c[(c[H>>2]|0)+4>>2];while(1){if((c[I>>2]|0)>=(b[(c[H>>2]|0)+38>>1]|0)){break c}if((vc(c[c[B>>2]>>2]|0,c[w>>2]|0)|0)==0){if((c[o>>2]|0)!=1){break}if((a[(c[N>>2]|0)+36>>0]&4|0)==0?(Hq(c[(c[N>>2]|0)+48>>2]|0,c[w>>2]|0)|0)==0:0){break}}c[I>>2]=(c[I>>2]|0)+1;c[B>>2]=(c[B>>2]|0)+24}c[o>>2]=(c[o>>2]|0)+1;c[s>>2]=c[N>>2];if((c[I>>2]|0)==(b[(c[H>>2]|0)+36>>1]|0)){k=-1}else{k=(c[I>>2]&65535)<<16>>16}b[(c[m>>2]|0)+32>>1]=k}}while(0);c[O>>2]=(c[O>>2]|0)+1;c[N>>2]=(c[N>>2]|0)+72}if((c[s>>2]|0)!=0){c[(c[m>>2]|0)+28>>2]=c[(c[s>>2]|0)+40>>2];c[(c[m>>2]|0)+44>>2]=c[(c[s>>2]|0)+16>>2];c[z>>2]=c[(c[(c[m>>2]|0)+44>>2]|0)+68>>2]}}if((((c[C>>2]|0)==0?(c[v>>2]|0)!=0:0)?(c[F>>2]|0)==0:0)?(c[(c[l>>2]|0)+412>>2]|0)!=0:0){c[L>>2]=d[(c[l>>2]|0)+436>>0]|0;if((c[L>>2]|0)!=109?(vc(17064,c[v>>2]|0)|0)==0:0){c[(c[m>>2]|0)+28>>2]=1;c[H>>2]=c[(c[l>>2]|0)+412>>2]}else{T=52}do{if((T|0)==52){T=0;if((c[L>>2]|0)!=108?(vc(17072,c[v>>2]|0)|0)==0:0){c[(c[m>>2]|0)+28>>2]=0;c[H>>2]=c[(c[l>>2]|0)+412>>2];break}c[H>>2]=0}}while(0);if((c[H>>2]|0)!=0){c[z>>2]=c[(c[H>>2]|0)+68>>2];c[F>>2]=(c[F>>2]|0)+1;c[G>>2]=0;c[B>>2]=c[(c[H>>2]|0)+4>>2];while(1){if((c[G>>2]|0)>=(b[(c[H>>2]|0)+38>>1]|0)){break}j=(vc(c[c[B>>2]>>2]|0,c[w>>2]|0)|0)==0;K=c[G>>2]|0;if(j){T=60;break}c[G>>2]=K+1;c[B>>2]=(c[B>>2]|0)+24}if((T|0)==60?(T=0,(K|0)==(b[(c[H>>2]|0)+36>>1]|0)):0){c[G>>2]=-1}if(((c[G>>2]|0)>=(b[(c[H>>2]|0)+38>>1]|0)?(Iq(c[w>>2]|0)|0)!=0:0)?(a[(c[H>>2]|0)+44>>0]&32|0)==0:0){c[G>>2]=-1}if((c[G>>2]|0)<(b[(c[H>>2]|0)+38>>1]|0)){c[o>>2]=(c[o>>2]|0)+1;k=c[m>>2]|0;do{if((c[G>>2]|0)>=0){h=(c[G>>2]|0)>=32;if((c[k+28>>2]|0)==0){if(h){k=-1}else{k=1<>2]}j=(c[l>>2]|0)+428|0;c[j>>2]=c[j>>2]|k;break}else{if(h){k=-1}else{k=1<>2]}j=(c[l>>2]|0)+432|0;c[j>>2]=c[j>>2]|k;break}}else{a[k+1>>0]=100}}while(0);b[(c[m>>2]|0)+32>>1]=c[G>>2];c[(c[m>>2]|0)+44>>2]=c[H>>2];c[q>>2]=1}}}if(((((c[o>>2]|0)==0?(c[F>>2]|0)==1:0)?(c[s>>2]|0)!=0:0)?(Iq(c[w>>2]|0)|0)!=0:0)?(a[(c[(c[s>>2]|0)+16>>2]|0)+44>>0]&32|0)==0:0){c[o>>2]=1;b[(c[m>>2]|0)+32>>1]=-1;a[(c[m>>2]|0)+1>>0]=100}j=c[(c[y>>2]|0)+8>>2]|0;c[E>>2]=j;d:do{if(((j|0)!=0?(c[v>>2]|0)==0:0)?(c[o>>2]|0)==0:0){c[I>>2]=0;while(1){if((c[I>>2]|0)>=(c[c[E>>2]>>2]|0)){break d}c[J>>2]=c[(c[(c[E>>2]|0)+4>>2]|0)+((c[I>>2]|0)*20|0)+4>>2];if((c[J>>2]|0)!=0?(vc(c[J>>2]|0,c[w>>2]|0)|0)==0:0){T=91;break b}c[I>>2]=(c[I>>2]|0)+1}}}while(0);if((c[o>>2]|0)!=0){continue}c[y>>2]=c[(c[y>>2]|0)+16>>2];c[Q>>2]=(c[Q>>2]|0)+1}if((T|0)==91){c[S>>2]=c[(c[(c[E>>2]|0)+4>>2]|0)+((c[I>>2]|0)*20|0)>>2];if((a[(c[y>>2]|0)+28>>0]&1|0)==0?(c[(c[S>>2]|0)+4>>2]&2|0)!=0:0){j=c[l>>2]|0;c[x>>2]=c[J>>2];Ne(j,17080,x);c[t>>2]=2;j=c[t>>2]|0;i=n;return j|0}vq(c[l>>2]|0,c[E>>2]|0,c[I>>2]|0,c[m>>2]|0,1472,c[Q>>2]|0);c[o>>2]=1;c[s>>2]=0}else if((T|0)==98){if(((c[o>>2]|0)==0?(c[v>>2]|0)==0:0)?(c[(c[m>>2]|0)+4>>2]&64|0)!=0:0){a[c[m>>2]>>0]=97;c[(c[m>>2]|0)+44>>2]=0;c[t>>2]=1;j=c[t>>2]|0;i=n;return j|0}if((c[o>>2]|0)!=1){c[A>>2]=(c[o>>2]|0)==0?17112:17128;do{if((c[C>>2]|0)==0){B=c[l>>2]|0;A=c[A>>2]|0;if((c[v>>2]|0)!=0){e=c[v>>2]|0;j=c[w>>2]|0;c[x>>2]=A;c[x+4>>2]=e;c[x+8>>2]=j;Ne(B,17168,x);break}else{j=c[w>>2]|0;c[x>>2]=A;c[x+4>>2]=j;Ne(B,17184,x);break}}else{j=c[l>>2]|0;g=c[C>>2]|0;f=c[v>>2]|0;e=c[w>>2]|0;c[x>>2]=c[A>>2];c[x+4>>2]=g;c[x+8>>2]=f;c[x+12>>2]=e;Ne(j,17152,x)}}while(0);a[(c[l>>2]|0)+17>>0]=1;j=(c[u>>2]|0)+24|0;c[j>>2]=(c[j>>2]|0)+1}if((b[(c[m>>2]|0)+32>>1]|0)>=0?(c[s>>2]|0)!=0:0){f=b[(c[m>>2]|0)+32>>1]|0;c[r>>2]=f;c[r>>2]=(c[r>>2]|0)>=64?63:f;f=$D(1,0,c[r>>2]|0)|0;j=(c[s>>2]|0)+56|0;g=j;e=c[g+4>>2]|D;c[j>>2]=c[g>>2]|f;c[j+4>>2]=e}hn(c[p>>2]|0,c[(c[m>>2]|0)+12>>2]|0);c[(c[m>>2]|0)+12>>2]=0;hn(c[p>>2]|0,c[(c[m>>2]|0)+16>>2]|0);c[(c[m>>2]|0)+16>>2]=0;a[c[m>>2]>>0]=(c[q>>2]|0)!=0?62:154}if((c[o>>2]|0)!=1){c[t>>2]=2;j=c[t>>2]|0;i=n;return j|0}if((d[c[m>>2]>>0]|0)!=24){Jq(c[l>>2]|0,c[m>>2]|0,c[z>>2]|0,c[(c[y>>2]|0)+4>>2]|0)}while(1){j=(c[u>>2]|0)+20|0;c[j>>2]=(c[j>>2]|0)+1;if((c[u>>2]|0)==(c[y>>2]|0)){break}c[u>>2]=c[(c[u>>2]|0)+16>>2]}c[t>>2]=1;j=c[t>>2]|0;i=n;return j|0}function Bq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f;g=f+12|0;k=f+8|0;h=f+4|0;c[g>>2]=b;c[k>>2]=d;c[h>>2]=e;if((a[(c[k>>2]|0)+28>>0]&16|0)==0){i=f;return}k=c[g>>2]|0;c[j>>2]=c[h>>2];Ne(k,17016,j);i=f;return}function Cq(a){a=a|0;var b=0,e=0,f=0,g=0;b=i;i=i+16|0;e=b+12|0;g=b+8|0;f=b;c[g>>2]=a;h[f>>3]=-1.0;if((d[c[g>>2]>>0]|0|0)!=133){c[e>>2]=-1;g=c[e>>2]|0;i=b;return g|0}a=c[(c[g>>2]|0)+8>>2]|0;Am(a,f,Mb(c[(c[g>>2]|0)+8>>2]|0)|0,1)|0;if(+h[f>>3]>1.0){c[e>>2]=-1;g=c[e>>2]|0;i=b;return g|0}else{c[e>>2]=~~(+h[f>>3]*1.0e3);g=c[e>>2]|0;i=b;return g|0}return 0}function Dq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+48|0;f=d+44|0;h=d+40|0;g=d+16|0;e=d;c[f>>2]=a;c[h>>2]=b;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[g>>2]=42;c[g+20>>2]=e;c[e>>2]=c[h>>2];c[e+4>>2]=0;c[e+8>>2]=0;aq(g,c[(c[f>>2]|0)+20>>2]|0)|0;if((c[e+4>>2]|0)>0){h=1;h=h&1;i=d;return h|0}h=(c[e+8>>2]|0)==0;h=h&1;i=d;return h|0}function Eq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f;g=f+12|0;k=f+8|0;h=f+4|0;c[g>>2]=b;c[k>>2]=d;c[h>>2]=e;if((a[(c[k>>2]|0)+28>>0]&4|0)==0){i=f;return}k=c[g>>2]|0;c[j>>2]=c[h>>2];Ne(k,16976,j);i=f;return}function Fq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;j=e+12|0;f=e+8|0;h=e+4|0;g=e;c[k>>2]=a;c[j>>2]=b;if((d[c[j>>2]>>0]|0|0)!=154?(d[c[j>>2]>>0]|0|0)!=156:0){i=e;return 0}c[h>>2]=c[(c[k>>2]|0)+20>>2];c[g>>2]=c[c[h>>2]>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[g>>2]>>2]|0)){break}if((c[(c[j>>2]|0)+28>>2]|0)==(c[(c[g>>2]|0)+8+((c[f>>2]|0)*72|0)+40>>2]|0)){break}c[f>>2]=(c[f>>2]|0)+1}b=c[h>>2]|0;if((c[f>>2]|0)<(c[c[g>>2]>>2]|0)){a=b+4|0;c[a>>2]=(c[a>>2]|0)+1;i=e;return 0}else{a=b+8|0;c[a>>2]=(c[a>>2]|0)+1;i=e;return 0}return 0}function Gq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;k=g+20|0;h=g+16|0;n=g+12|0;l=g+8|0;m=g+4|0;j=g;c[h>>2]=b;c[n>>2]=d;c[l>>2]=e;c[m>>2]=f;c[j>>2]=0;while(1){if((a[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==0){break}if((a[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==46){break}c[j>>2]=(c[j>>2]|0)+1}do{if((c[m>>2]|0)!=0){if((Lb(c[h>>2]|0,c[m>>2]|0,c[j>>2]|0)|0)==0?(a[(c[m>>2]|0)+(c[j>>2]|0)>>0]|0)==0:0){break}c[k>>2]=0;b=c[k>>2]|0;i=g;return b|0}}while(0);c[h>>2]=(c[h>>2]|0)+((c[j>>2]|0)+1);c[j>>2]=0;while(1){if((a[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==0){break}if((a[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==46){break}c[j>>2]=(c[j>>2]|0)+1}do{if((c[l>>2]|0)!=0){if((Lb(c[h>>2]|0,c[l>>2]|0,c[j>>2]|0)|0)==0?(a[(c[l>>2]|0)+(c[j>>2]|0)>>0]|0)==0:0){break}c[k>>2]=0;b=c[k>>2]|0;i=g;return b|0}}while(0);c[h>>2]=(c[h>>2]|0)+((c[j>>2]|0)+1);if((c[n>>2]|0)!=0?(vc(c[h>>2]|0,c[n>>2]|0)|0)!=0:0){c[k>>2]=0;b=c[k>>2]|0;i=g;return b|0}c[k>>2]=1;b=c[k>>2]|0;i=g;return b|0}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;d=e+12|0;f=e+8|0;h=e+4|0;g=e;c[f>>2]=a;c[h>>2]=b;a:do{if((c[f>>2]|0)!=0){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0)){break a}if((vc(c[(c[c[f>>2]>>2]|0)+(c[g>>2]<<3)>>2]|0,c[h>>2]|0)|0)==0){break}c[g>>2]=(c[g>>2]|0)+1}c[d>>2]=1;a=c[d>>2]|0;i=e;return a|0}}while(0);c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}function Iq(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;do{if((vc(c[e>>2]|0,17272)|0)!=0){if((vc(c[e>>2]|0,17192)|0)==0){c[b>>2]=1;break}if((vc(c[e>>2]|0,17280)|0)==0){c[b>>2]=1;break}else{c[b>>2]=0;break}}else{c[b>>2]=1}}while(0);i=d;return c[b>>2]|0}function Jq(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=i;i=i+48|0;l=p+36|0;j=p+32|0;s=p+28|0;q=p+24|0;t=p+20|0;k=p+16|0;m=p+12|0;r=p+8|0;n=p+4|0;o=p;c[l>>2]=e;c[j>>2]=f;c[s>>2]=g;c[q>>2]=h;c[t>>2]=c[c[l>>2]>>2];c[k>>2]=0;if((c[(c[t>>2]|0)+276>>2]|0)==0){i=p;return}c[n>>2]=Qe(c[c[l>>2]>>2]|0,c[s>>2]|0)|0;if((c[n>>2]|0)<0){i=p;return}a:do{if((d[c[j>>2]>>0]|0)==62){c[k>>2]=c[(c[l>>2]|0)+412>>2]}else{c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[c[q>>2]>>2]|0)){break a}h=c[r>>2]|0;if((c[(c[j>>2]|0)+28>>2]|0)==(c[(c[q>>2]|0)+8+((c[r>>2]|0)*72|0)+40>>2]|0)){break}c[r>>2]=h+1}c[k>>2]=c[(c[q>>2]|0)+8+(h*72|0)+16>>2]}}while(0);c[o>>2]=b[(c[j>>2]|0)+32>>1]|0;if((c[k>>2]|0)==0){i=p;return}do{if((c[o>>2]|0)<0){if((b[(c[k>>2]|0)+36>>1]|0)>=0){c[m>>2]=c[(c[(c[k>>2]|0)+4>>2]|0)+((b[(c[k>>2]|0)+36>>1]|0)*24|0)>>2];break}else{c[m>>2]=17192;break}}else{c[m>>2]=c[(c[(c[k>>2]|0)+4>>2]|0)+((c[o>>2]|0)*24|0)>>2]}}while(0);if(2!=(Kq(c[l>>2]|0,c[c[k>>2]>>2]|0,c[m>>2]|0,c[n>>2]|0)|0)){i=p;return}a[c[j>>2]>>0]=101;i=p;return}function Kq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+48|0;f=l;h=l+36|0;k=l+32|0;j=l+28|0;o=l+24|0;n=l+20|0;m=l+16|0;g=l+12|0;c[h>>2]=a;c[k>>2]=b;c[j>>2]=d;c[o>>2]=e;c[n>>2]=c[c[h>>2]>>2];c[m>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2];c[g>>2]=tb[c[(c[n>>2]|0)+276>>2]&1](c[(c[n>>2]|0)+280>>2]|0,20,c[k>>2]|0,c[j>>2]|0,c[m>>2]|0,c[(c[h>>2]|0)+492>>2]|0)|0;if((c[g>>2]|0)!=1){if(!((c[g>>2]|0)!=2&(c[g>>2]|0)!=0)){a=c[g>>2]|0;i=l;return a|0}Po(c[h>>2]|0);a=c[g>>2]|0;i=l;return a|0}if((c[(c[n>>2]|0)+20>>2]|0)<=2?(c[o>>2]|0)==0:0){a=c[h>>2]|0;b=c[j>>2]|0;c[f>>2]=c[k>>2];c[f+4>>2]=b;Ne(a,17240,f)}else{a=c[h>>2]|0;d=c[k>>2]|0;b=c[j>>2]|0;c[f>>2]=c[m>>2];c[f+4>>2]=d;c[f+8>>2]=b;Ne(a,17200,f)}c[(c[h>>2]|0)+12>>2]=23;a=c[g>>2]|0;i=l;return a|0}function Lq(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=i;i=i+48|0;j=n+44|0;p=n+40|0;o=n+36|0;r=n+32|0;l=n+28|0;t=n+24|0;h=n+20|0;s=n+16|0;m=n+12|0;k=n+8|0;q=n;c[p>>2]=f;c[o>>2]=g;if((c[(c[o>>2]|0)+52>>2]|0)==0){c[j>>2]=0;f=c[j>>2]|0;i=n;return f|0}if((c[(c[o>>2]|0)+48>>2]|0)==0){c[j>>2]=0;f=c[j>>2]|0;i=n;return f|0}c[t>>2]=c[o>>2];while(1){if((c[t>>2]|0)==0){break}if((d[(c[t>>2]|0)+4>>0]|0|0)!=116?(d[(c[t>>2]|0)+4>>0]|0|0)!=119:0){break}c[t>>2]=c[(c[t>>2]|0)+52>>2]}if((c[t>>2]|0)==0){c[j>>2]=0;f=c[j>>2]|0;i=n;return f|0}c[s>>2]=c[(c[(c[o>>2]|0)+48>>2]|0)+4>>2];c[r>>2]=(c[c[(c[o>>2]|0)+48>>2]>>2]|0)-1;while(1){if((c[r>>2]|0)<0){break}if((c[(c[(c[s>>2]|0)+((c[r>>2]|0)*20|0)>>2]|0)+4>>2]&256|0)!=0){break}c[r>>2]=(c[r>>2]|0)+ -1}if((c[r>>2]|0)<0){c[j>>2]=0;f=c[j>>2]|0;i=n;return f|0}c[k>>2]=c[(c[p>>2]|0)+12>>2];c[h>>2]=c[c[k>>2]>>2];c[l>>2]=ne(c[h>>2]|0,72)|0;if((c[l>>2]|0)==0){c[j>>2]=2;f=c[j>>2]|0;i=n;return f|0}c[q+0>>2]=0;c[q+4>>2]=0;c[m>>2]=Pn(c[k>>2]|0,0,0,0,q,c[l>>2]|0,0,0)|0;if((c[m>>2]|0)==0){c[j>>2]=2;f=c[j>>2]|0;i=n;return f|0}else{r=(c[l>>2]|0)+0|0;q=(c[o>>2]|0)+0|0;p=r+72|0;do{c[r>>2]=c[q>>2];r=r+4|0;q=q+4|0}while((r|0)<(p|0));c[(c[o>>2]|0)+32>>2]=c[m>>2];f=c[k>>2]|0;f=Rn(f,0,Un(c[h>>2]|0,116,0)|0)|0;c[c[o>>2]>>2]=f;a[(c[o>>2]|0)+4>>0]=119;c[(c[o>>2]|0)+36>>2]=0;c[(c[l>>2]|0)+40>>2]=0;c[(c[l>>2]|0)+44>>2]=0;c[(c[l>>2]|0)+48>>2]=0;c[(c[o>>2]|0)+52>>2]=0;c[(c[o>>2]|0)+56>>2]=0;f=(c[o>>2]|0)+6|0;b[f>>1]=(e[f>>1]|0)&-4097;c[(c[(c[l>>2]|0)+52>>2]|0)+56>>2]=c[l>>2];c[(c[l>>2]|0)+60>>2]=0;c[(c[l>>2]|0)+64>>2]=0;c[j>>2]=0;f=c[j>>2]|0;i=n;return f|0}return 0}function Mq(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;D=i;i=i+160|0;l=D;z=D+148|0;Q=D+144|0;m=D+140|0;k=D+136|0;B=D+132|0;E=D+128|0;r=D+124|0;C=D+120|0;o=D+116|0;h=D+112|0;n=D+108|0;s=D+104|0;t=D+100|0;J=D+96|0;R=D+152|0;O=D+92|0;P=D+88|0;q=D+84|0;p=D+80|0;N=D+76|0;L=D+72|0;v=D+68|0;u=D+64|0;x=D+60|0;w=D+56|0;y=D+52|0;A=D+48|0;j=D+44|0;F=D+40|0;I=D+36|0;G=D+32|0;K=D+24|0;M=D+16|0;H=D+12|0;c[Q>>2]=f;c[m>>2]=g;c[k>>2]=c[(c[Q>>2]|0)+12>>2];c[n>>2]=c[c[k>>2]>>2];b[R>>1]=b[(c[m>>2]|0)+6>>1]|0;f=(c[m>>2]|0)+6|0;b[f>>1]=e[f>>1]|16;if((a[(c[n>>2]|0)+64>>0]|0)!=0){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}if((c[(c[m>>2]|0)+32>>2]|0)!=0?(b[R>>1]&16|0)==0:0){c[C>>2]=c[(c[m>>2]|0)+32>>2];c[o>>2]=c[c[m>>2]>>2];f=c[k>>2]|0;Zn(f,c[(Oq(c[m>>2]|0)|0)+68>>2]|0,0);Fp(c[k>>2]|0,c[C>>2]|0);c[B>>2]=0;c[h>>2]=(c[C>>2]|0)+8;a:while(1){if((c[B>>2]|0)>=(c[c[C>>2]>>2]|0)){P=33;break}if(((d[(c[h>>2]|0)+37>>0]|0)>>>3&1|0)==0){g=c[Q>>2]|0;if((c[(c[h>>2]|0)+16>>2]|0)!=0){P=10;break}if((Pq(g,c[h>>2]|0)|0)!=0){P=12;break}do{if((c[(c[h>>2]|0)+16>>2]|0)==0){if((c[(c[h>>2]|0)+8>>2]|0)==0){c[P>>2]=c[(c[h>>2]|0)+20>>2];Zp(c[Q>>2]|0,c[P>>2]|0)|0;f=ne(c[n>>2]|0,76)|0;c[O>>2]=f;c[(c[h>>2]|0)+16>>2]=f;if((c[O>>2]|0)==0){P=16;break a}b[(c[O>>2]|0)+40>>1]=1;f=c[n>>2]|0;c[l>>2]=c[O>>2];f=Oe(f,17288,l)|0;c[c[O>>2]>>2]=f;while(1){if((c[(c[P>>2]|0)+52>>2]|0)==0){break}c[P>>2]=c[(c[P>>2]|0)+52>>2]}Ip(c[k>>2]|0,c[c[P>>2]>>2]|0,(c[O>>2]|0)+38|0,(c[O>>2]|0)+4|0)|0;b[(c[O>>2]|0)+36>>1]=-1;b[(c[O>>2]|0)+28>>1]=200;f=(c[O>>2]|0)+44|0;a[f>>0]=d[f>>0]|2;break}f=ap(c[k>>2]|0,0,c[h>>2]|0)|0;c[O>>2]=f;c[(c[h>>2]|0)+16>>2]=f;if((c[O>>2]|0)==0){P=22;break a}if((e[(c[O>>2]|0)+40>>1]|0)==65535){P=24;break a}f=(c[O>>2]|0)+40|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;if((c[(c[O>>2]|0)+12>>2]|0)==0?(a[(c[O>>2]|0)+44>>0]&16|0)==0:0){break}if((yp(c[k>>2]|0,c[O>>2]|0)|0)!=0){P=28;break a}f=Ep(c[n>>2]|0,c[(c[O>>2]|0)+12>>2]|0,0)|0;c[(c[h>>2]|0)+20>>2]=f;Zp(c[Q>>2]|0,c[(c[h>>2]|0)+20>>2]|0)|0}}while(0);if((Qq(c[k>>2]|0,c[h>>2]|0)|0)!=0){P=31;break}}c[B>>2]=(c[B>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+72}if((P|0)==10){Nq(g,c[m>>2]|0);c[z>>2]=1;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==12){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==16){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==22){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==24){f=c[k>>2]|0;c[l>>2]=c[c[O>>2]>>2];Ne(f,17304,l);c[(c[h>>2]|0)+16>>2]=0;c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==28){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==31){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==33){if((d[(c[n>>2]|0)+64>>0]|0)==0?(Rq(c[k>>2]|0,c[m>>2]|0)|0)==0:0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[c[o>>2]>>2]|0)){break}c[s>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+((c[r>>2]|0)*20|0)>>2];if((d[c[s>>2]>>0]|0)==116){break}if((d[c[s>>2]>>0]|0)==122?(d[c[(c[s>>2]|0)+16>>2]>>0]|0)==116:0){break}c[r>>2]=(c[r>>2]|0)+1}if((c[r>>2]|0)<(c[c[o>>2]>>2]|0)){c[q>>2]=c[(c[o>>2]|0)+4>>2];c[p>>2]=0;c[N>>2]=c[(c[c[k>>2]>>2]|0)+24>>2];if((c[N>>2]&32|0)!=0){N=(c[N>>2]&64|0)==0}else{N=0}c[L>>2]=N&1;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[c[o>>2]>>2]|0)){break}c[s>>2]=c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)>>2];c[t>>2]=c[(c[s>>2]|0)+16>>2];do{if((d[c[s>>2]>>0]|0)!=116){if((d[c[s>>2]>>0]|0)==122?(d[c[t>>2]>>0]|0)==116:0){P=53;break}c[p>>2]=Rn(c[k>>2]|0,c[p>>2]|0,c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)>>2]|0)|0;if((c[p>>2]|0)!=0){c[(c[(c[p>>2]|0)+4>>2]|0)+(((c[c[p>>2]>>2]|0)-1|0)*20|0)+4>>2]=c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)+4>>2];c[(c[(c[p>>2]|0)+4>>2]|0)+(((c[c[p>>2]>>2]|0)-1|0)*20|0)+8>>2]=c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)+8>>2];c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)+4>>2]=0;c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)+8>>2]=0}c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)>>2]=0}else{P=53}}while(0);do{if((P|0)==53){P=0;c[v>>2]=0;c[u>>2]=0;if((d[c[s>>2]>>0]|0)==122){c[u>>2]=c[(c[(c[s>>2]|0)+12>>2]|0)+8>>2]}c[B>>2]=0;c[h>>2]=(c[C>>2]|0)+8;while(1){if((c[B>>2]|0)>=(c[c[C>>2]>>2]|0)){break}c[x>>2]=c[(c[h>>2]|0)+16>>2];c[w>>2]=c[(c[h>>2]|0)+20>>2];c[y>>2]=c[(c[h>>2]|0)+12>>2];c[A>>2]=0;if((c[y>>2]|0)==0){c[y>>2]=c[c[x>>2]>>2]}if((a[(c[n>>2]|0)+64>>0]|0)!=0){break}if((c[w>>2]|0)!=0?(b[(c[w>>2]|0)+6>>1]&512|0)!=0:0){P=67}else{P=62}do{if((P|0)==62){P=0;c[w>>2]=0;if((c[u>>2]|0)!=0?(vc(c[u>>2]|0,c[y>>2]|0)|0)!=0:0){break}c[j>>2]=Qe(c[n>>2]|0,c[(c[x>>2]|0)+68>>2]|0)|0;if((c[j>>2]|0)>=0){N=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[j>>2]<<4)>>2]|0}else{N=17344}c[A>>2]=N;P=67}}while(0);b:do{if((P|0)==67){P=0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(b[(c[x>>2]|0)+38>>1]|0)){break b}c[F>>2]=c[(c[(c[x>>2]|0)+4>>2]|0)+((c[E>>2]|0)*24|0)>>2];do{if((c[u>>2]|0)!=0){if((c[w>>2]|0)==0){P=72;break}if((Gq(c[(c[(c[c[w>>2]>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)+8>>2]|0,0,c[u>>2]|0,0)|0)!=0){P=72}}else{P=72}}while(0);c:do{if((P|0)==72){P=0;if((a[(c[(c[x>>2]|0)+4>>2]|0)+((c[E>>2]|0)*24|0)+23>>0]&2|0)!=0){break}c[v>>2]=1;do{if((c[B>>2]|0)>0){if((c[u>>2]|0)!=0){break}if((a[(c[h>>2]|0)+36>>0]&4|0)!=0?(Sq(c[C>>2]|0,c[B>>2]|0,c[F>>2]|0,0,0)|0)!=0:0){break c}if((Tq(c[(c[h>>2]|0)+48>>2]|0,c[F>>2]|0)|0)>=0){break c}}}while(0);c[t>>2]=Un(c[n>>2]|0,27,c[F>>2]|0)|0;c[I>>2]=c[F>>2];c[G>>2]=0;do{if((c[L>>2]|0)!=0){P=80}else{if((c[c[C>>2]>>2]|0)>1){P=80;break}c[J>>2]=c[t>>2]}}while(0);do{if((P|0)==80){P=0;c[M>>2]=Un(c[n>>2]|0,27,c[y>>2]|0)|0;c[J>>2]=Dn(c[k>>2]|0,122,c[M>>2]|0,c[t>>2]|0,0)|0;if((c[A>>2]|0)!=0){c[M>>2]=Un(c[n>>2]|0,27,c[A>>2]|0)|0;c[J>>2]=Dn(c[k>>2]|0,122,c[M>>2]|0,c[J>>2]|0,0)|0}if((c[L>>2]|0)==0){break}f=c[n>>2]|0;R=c[F>>2]|0;c[l>>2]=c[y>>2];c[l+4>>2]=R;c[I>>2]=Oe(f,17352,l)|0;c[G>>2]=c[I>>2]}}while(0);c[p>>2]=Rn(c[k>>2]|0,c[p>>2]|0,c[J>>2]|0)|0;c[K>>2]=c[I>>2];c[K+4>>2]=Mb(c[I>>2]|0)|0;Sn(c[k>>2]|0,c[p>>2]|0,K,0);do{if((c[p>>2]|0)!=0){if((b[(c[m>>2]|0)+6>>1]&512|0)==0){break}c[H>>2]=(c[(c[p>>2]|0)+4>>2]|0)+(((c[c[p>>2]>>2]|0)-1|0)*20|0);N=c[n>>2]|0;if((c[w>>2]|0)!=0){f=he(N,c[(c[(c[c[w>>2]>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)+8>>2]|0)|0;c[(c[H>>2]|0)+8>>2]=f}else{R=c[y>>2]|0;f=c[I>>2]|0;c[l>>2]=c[A>>2];c[l+4>>2]=R;c[l+8>>2]=f;f=Oe(N,17360,l)|0;c[(c[H>>2]|0)+8>>2]=f}f=(c[H>>2]|0)+13|0;a[f>>0]=a[f>>0]&-3|2}}while(0);Wb(c[n>>2]|0,c[G>>2]|0)}}while(0);c[E>>2]=(c[E>>2]|0)+1}}}while(0);c[B>>2]=(c[B>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+72}if((c[v>>2]|0)==0){N=c[k>>2]|0;if((c[u>>2]|0)!=0){c[l>>2]=c[u>>2];Ne(N,17376,l);break}else{Ne(N,17400,l);break}}}}while(0);c[r>>2]=(c[r>>2]|0)+1}dn(c[n>>2]|0,c[o>>2]|0);c[c[m>>2]>>2]=c[p>>2]}if((c[c[m>>2]>>2]|0)!=0?(c[c[c[m>>2]>>2]>>2]|0)>(c[(c[n>>2]|0)+96>>2]|0):0){Ne(c[k>>2]|0,17424,l)}c[z>>2]=0;f=c[z>>2]|0;i=D;return f|0}c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}}c[z>>2]=1;f=c[z>>2]|0;i=D;return f|0}function Nq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;h=d+12|0;g=d+8|0;f=d+4|0;e=d;c[h>>2]=a;c[g>>2]=b;c[f>>2]=c[(c[h>>2]|0)+12>>2];c[e>>2]=c[(Oq(c[g>>2]|0)|0)+68>>2];if((c[e>>2]|0)==0){i=d;return}c[(c[f>>2]|0)+532>>2]=c[(c[e>>2]|0)+4>>2];i=d;return}function Oq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;while(1){a=c[d>>2]|0;if((c[(c[d>>2]|0)+56>>2]|0)==0){break}c[d>>2]=c[a+56>>2]}i=b;return a|0}function Pq(f,g){f=f|0;g=g|0;var h=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;o=i;i=i+80|0;r=o;n=o+72|0;l=o+68|0;y=o+64|0;k=o+60|0;z=o+56|0;j=o+52|0;u=o+48|0;q=o+44|0;t=o+40|0;m=o+36|0;p=o+32|0;s=o+28|0;h=o+24|0;x=o+20|0;w=o+16|0;v=o+12|0;c[l>>2]=f;c[y>>2]=g;c[k>>2]=c[(c[l>>2]|0)+12>>2];c[z>>2]=c[c[k>>2]>>2];c[j>>2]=er(c[(c[k>>2]|0)+532>>2]|0,c[y>>2]|0,u)|0;if((c[j>>2]|0)!=0){if((c[(c[j>>2]|0)+12>>2]|0)!=0){z=c[k>>2]|0;f=c[(c[j>>2]|0)+12>>2]|0;c[r>>2]=c[c[j>>2]>>2];Ne(z,f,r);c[n>>2]=1;f=c[n>>2]|0;i=o;return f|0}f=ne(c[z>>2]|0,76)|0;c[q>>2]=f;c[(c[y>>2]|0)+16>>2]=f;if((c[q>>2]|0)==0){c[n>>2]=2;f=c[n>>2]|0;i=o;return f|0}b[(c[q>>2]|0)+40>>1]=1;f=he(c[z>>2]|0,c[c[j>>2]>>2]|0)|0;c[c[q>>2]>>2]=f;b[(c[q>>2]|0)+36>>1]=-1;b[(c[q>>2]|0)+28>>1]=200;f=(c[q>>2]|0)+44|0;a[f>>0]=d[f>>0]|2;f=Ep(c[z>>2]|0,c[(c[j>>2]|0)+8>>2]|0,0)|0;c[(c[y>>2]|0)+20>>2]=f;if((a[(c[z>>2]|0)+64>>0]|0)!=0){c[n>>2]=7;f=c[n>>2]|0;i=o;return f|0}c[m>>2]=c[(c[y>>2]|0)+20>>2];if((d[(c[m>>2]|0)+4>>0]|0)==116){g=1}else{g=(d[(c[m>>2]|0)+4>>0]|0)==115}c[s>>2]=g&1;a:do{if((c[s>>2]|0)!=0){c[w>>2]=c[(c[(c[y>>2]|0)+20>>2]|0)+32>>2];c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[c[w>>2]>>2]|0)){break a}c[v>>2]=(c[w>>2]|0)+8+((c[x>>2]|0)*72|0);if(((c[(c[v>>2]|0)+4>>2]|0)==0?(c[(c[v>>2]|0)+8>>2]|0)!=0:0)?0==(vc(c[(c[v>>2]|0)+8>>2]|0,c[c[j>>2]>>2]|0)|0):0){c[(c[v>>2]|0)+16>>2]=c[q>>2];f=(c[v>>2]|0)+37|0;a[f>>0]=a[f>>0]&-9|8;f=(c[q>>2]|0)+40|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;f=(c[m>>2]|0)+6|0;b[f>>1]=e[f>>1]|2048}c[x>>2]=(c[x>>2]|0)+1}}}while(0);if((e[(c[q>>2]|0)+40>>1]|0)>2){f=c[k>>2]|0;c[r>>2]=c[c[j>>2]>>2];Ne(f,17656,r);c[n>>2]=1;f=c[n>>2]|0;i=o;return f|0}c[(c[j>>2]|0)+12>>2]=17704;c[h>>2]=c[(c[k>>2]|0)+532>>2];c[(c[k>>2]|0)+532>>2]=c[u>>2];u=c[m>>2]|0;if((c[s>>2]|0)!=0){u=c[u+52>>2]|0}Zp(c[l>>2]|0,u)|0;c[p>>2]=c[m>>2];while(1){u=c[p>>2]|0;if((c[(c[p>>2]|0)+52>>2]|0)==0){break}c[p>>2]=c[u+52>>2]}c[t>>2]=c[u>>2];do{if((c[(c[j>>2]|0)+4>>2]|0)!=0){if((c[c[t>>2]>>2]|0)==(c[c[(c[j>>2]|0)+4>>2]>>2]|0)){c[t>>2]=c[(c[j>>2]|0)+4>>2];break}f=c[k>>2]|0;g=c[c[t>>2]>>2]|0;z=c[c[(c[j>>2]|0)+4>>2]>>2]|0;c[r>>2]=c[c[j>>2]>>2];c[r+4>>2]=g;c[r+8>>2]=z;Ne(f,17728,r);c[(c[k>>2]|0)+532>>2]=c[h>>2];c[n>>2]=1;f=c[n>>2]|0;i=o;return f|0}}while(0);Ip(c[k>>2]|0,c[t>>2]|0,(c[q>>2]|0)+38|0,(c[q>>2]|0)+4|0)|0;if((c[s>>2]|0)!=0){p=(c[j>>2]|0)+12|0;if((b[(c[m>>2]|0)+6>>1]&2048|0)!=0){c[p>>2]=17768}else{c[p>>2]=17808}Zp(c[l>>2]|0,c[m>>2]|0)|0}c[(c[j>>2]|0)+12>>2]=0;c[(c[k>>2]|0)+532>>2]=c[h>>2]}c[n>>2]=0;f=c[n>>2]|0;i=o;return f|0}function Qq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;l=f;e=f+28|0;j=f+24|0;h=f+20|0;m=f+16|0;k=f+12|0;g=f+8|0;c[j>>2]=b;c[h>>2]=d;do{if((c[(c[h>>2]|0)+16>>2]|0)!=0?(c[(c[h>>2]|0)+64>>2]|0)!=0:0){c[m>>2]=c[(c[h>>2]|0)+16>>2];c[k>>2]=c[(c[h>>2]|0)+64>>2];c[g>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[g>>2]|0)==0){break}if((vc(c[c[g>>2]>>2]|0,c[k>>2]|0)|0)==0){break}c[g>>2]=c[(c[g>>2]|0)+20>>2]}if((c[g>>2]|0)!=0){c[(c[h>>2]|0)+68>>2]=c[g>>2];break}b=c[j>>2]|0;c[l>>2]=c[k>>2];c[l+4>>2]=0;Ne(b,17632,l);a[(c[j>>2]|0)+17>>0]=1;c[e>>2]=1;b=c[e>>2]|0;i=f;return b|0}}while(0);c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}function Rq(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;f=i;i=i+80|0;h=f;j=f+76|0;g=f+72|0;l=f+68|0;m=f+64|0;p=f+60|0;q=f+56|0;v=f+52|0;x=f+48|0;w=f+44|0;s=f+40|0;r=f+36|0;t=f+32|0;n=f+28|0;o=f+24|0;u=f+20|0;k=f+16|0;z=f+12|0;A=f+8|0;y=f+4|0;c[g>>2]=d;c[l>>2]=e;c[m>>2]=c[(c[l>>2]|0)+32>>2];c[v>>2]=(c[m>>2]|0)+8;c[x>>2]=(c[v>>2]|0)+72;c[p>>2]=0;a:while(1){if((c[p>>2]|0)>=((c[c[m>>2]>>2]|0)-1|0)){l=29;break}c[w>>2]=c[(c[v>>2]|0)+16>>2];c[s>>2]=c[(c[x>>2]|0)+16>>2];b:do{if((c[w>>2]|0)!=0?(c[s>>2]|0)!=0:0){c[r>>2]=(a[(c[x>>2]|0)+36>>0]&32|0)!=0&1;c:do{if((a[(c[x>>2]|0)+36>>0]&4|0)!=0){if((c[(c[x>>2]|0)+44>>2]|0)!=0){l=8;break a}if((c[(c[x>>2]|0)+48>>2]|0)!=0){l=8;break a}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break c}c[t>>2]=c[(c[(c[s>>2]|0)+4>>2]|0)+((c[q>>2]|0)*24|0)>>2];if((Sq(c[m>>2]|0,(c[p>>2]|0)+1|0,c[t>>2]|0,n,o)|0)!=0){Vq(c[g>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,(c[p>>2]|0)+1|0,c[q>>2]|0,c[r>>2]|0,(c[l>>2]|0)+36|0)}c[q>>2]=(c[q>>2]|0)+1}}}while(0);if((c[(c[x>>2]|0)+44>>2]|0)!=0?(c[(c[x>>2]|0)+48>>2]|0)!=0:0){l=16;break a}if((c[(c[x>>2]|0)+44>>2]|0)!=0){if((c[r>>2]|0)!=0){Wq(c[(c[x>>2]|0)+44>>2]|0,c[(c[x>>2]|0)+40>>2]|0)}d=Xq(c[c[g>>2]>>2]|0,c[(c[l>>2]|0)+36>>2]|0,c[(c[x>>2]|0)+44>>2]|0)|0;c[(c[l>>2]|0)+36>>2]=d;c[(c[x>>2]|0)+44>>2]=0}if((c[(c[x>>2]|0)+48>>2]|0)!=0){c[u>>2]=c[(c[x>>2]|0)+48>>2];c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[(c[u>>2]|0)+4>>2]|0)){break b}c[k>>2]=c[(c[c[u>>2]>>2]|0)+(c[q>>2]<<3)>>2];c[y>>2]=Uq(c[s>>2]|0,c[k>>2]|0)|0;if((c[y>>2]|0)<0){l=26;break a}if((Sq(c[m>>2]|0,(c[p>>2]|0)+1|0,c[k>>2]|0,z,A)|0)==0){l=26;break a}Vq(c[g>>2]|0,c[m>>2]|0,c[z>>2]|0,c[A>>2]|0,(c[p>>2]|0)+1|0,c[y>>2]|0,c[r>>2]|0,(c[l>>2]|0)+36|0);c[q>>2]=(c[q>>2]|0)+1}}}}while(0);c[p>>2]=(c[p>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+72;c[v>>2]=(c[v>>2]|0)+72}if((l|0)==8){d=c[g>>2]|0;c[h>>2]=0;Ne(d,17456,h);c[j>>2]=1;d=c[j>>2]|0;i=f;return d|0}else if((l|0)==16){Ne(c[g>>2]|0,17512,h);c[j>>2]=1;d=c[j>>2]|0;i=f;return d|0}else if((l|0)==26){d=c[g>>2]|0;c[h>>2]=c[k>>2];Ne(d,17568,h);c[j>>2]=1;d=c[j>>2]|0;i=f;return d|0}else if((l|0)==29){c[j>>2]=0;d=c[j>>2]|0;i=f;return d|0}return 0}function Sq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;o=j+28|0;g=j+24|0;q=j+20|0;p=j+16|0;l=j+12|0;n=j+8|0;k=j+4|0;m=j;c[g>>2]=a;c[q>>2]=b;c[p>>2]=d;c[l>>2]=e;c[n>>2]=f;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[q>>2]|0)){h=8;break}c[m>>2]=Uq(c[(c[g>>2]|0)+8+((c[k>>2]|0)*72|0)+16>>2]|0,c[p>>2]|0)|0;if((c[m>>2]|0)>=0){break}c[k>>2]=(c[k>>2]|0)+1}if((h|0)==8){c[o>>2]=0;a=c[o>>2]|0;i=j;return a|0}if((c[l>>2]|0)!=0){c[c[l>>2]>>2]=c[k>>2];c[c[n>>2]>>2]=c[m>>2]}c[o>>2]=1;a=c[o>>2]|0;i=j;return a|0}function Tq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;h=d+4|0;g=d;c[f>>2]=a;c[h>>2]=b;if((c[f>>2]|0)==0){c[e>>2]=-1;a=c[e>>2]|0;i=d;return a|0}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0)){f=8;break}a=(vc(c[(c[c[f>>2]>>2]|0)+(c[g>>2]<<3)>>2]|0,c[h>>2]|0)|0)==0;b=c[g>>2]|0;if(a){f=6;break}c[g>>2]=b+1}if((f|0)==6){c[e>>2]=b;a=c[e>>2]|0;i=d;return a|0}else if((f|0)==8){c[e>>2]=-1;a=c[e>>2]|0;i=d;return a|0}return 0}function Uq(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+12|0;g=f+8|0;j=f+4|0;h=f;c[g>>2]=a;c[j>>2]=d;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(b[(c[g>>2]|0)+38>>1]|0)){g=6;break}a=(vc(c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*24|0)>>2]|0,c[j>>2]|0)|0)==0;d=c[h>>2]|0;if(a){g=4;break}c[h>>2]=d+1}if((g|0)==4){c[e>>2]=d;a=c[e>>2]|0;i=f;return a|0}else if((g|0)==6){c[e>>2]=-1;a=c[e>>2]|0;i=f;return a|0}return 0}function Vq(a,d,e,f,g,h,j,k){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;p=i;i=i+48|0;s=p+44|0;v=p+40|0;x=p+36|0;w=p+32|0;u=p+28|0;t=p+24|0;q=p+20|0;l=p+16|0;n=p+12|0;r=p+8|0;o=p+4|0;m=p;c[s>>2]=a;c[v>>2]=d;c[x>>2]=e;c[w>>2]=f;c[u>>2]=g;c[t>>2]=h;c[q>>2]=j;c[l>>2]=k;c[n>>2]=c[c[s>>2]>>2];c[r>>2]=dr(c[n>>2]|0,c[v>>2]|0,c[x>>2]|0,c[w>>2]|0)|0;c[o>>2]=dr(c[n>>2]|0,c[v>>2]|0,c[u>>2]|0,c[t>>2]|0)|0;c[m>>2]=Dn(c[s>>2]|0,79,c[r>>2]|0,c[o>>2]|0,0)|0;if((c[m>>2]|0)!=0?(c[q>>2]|0)!=0:0){x=(c[m>>2]|0)+4|0;c[x>>2]=c[x>>2]|1;b[(c[m>>2]|0)+36>>1]=c[(c[o>>2]|0)+28>>2]}x=Xq(c[n>>2]|0,c[c[l>>2]>>2]|0,c[m>>2]|0)|0;c[c[l>>2]>>2]=x;i=p;return}function Wq(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=d;while(1){if((c[f>>2]|0)==0){break}a=(c[f>>2]|0)+4|0;c[a>>2]=c[a>>2]|1;b[(c[f>>2]|0)+36>>1]=c[g>>2];Wq(c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0);c[f>>2]=c[(c[f>>2]|0)+16>>2]}i=e;return}function Xq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;e=j+8|0;k=j+4|0;h=j;c[g>>2]=a;c[e>>2]=b;c[k>>2]=d;d=c[k>>2]|0;if((c[e>>2]|0)==0){c[f>>2]=d;a=c[f>>2]|0;i=j;return a|0}b=c[e>>2]|0;if((d|0)==0){c[f>>2]=b;a=c[f>>2]|0;i=j;return a|0}if((Yq(b)|0)==0?(Yq(c[k>>2]|0)|0)==0:0){c[h>>2]=Zq(c[g>>2]|0,72,0,0)|0;_q(c[g>>2]|0,c[h>>2]|0,c[e>>2]|0,c[k>>2]|0);c[f>>2]=c[h>>2];a=c[f>>2]|0;i=j;return a|0}hn(c[g>>2]|0,c[e>>2]|0);hn(c[g>>2]|0,c[k>>2]|0);c[f>>2]=Zq(c[g>>2]|0,132,10056,0)|0;a=c[f>>2]|0;i=j;return a|0}function Yq(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;b=d+8|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=0;do{if((c[(c[f>>2]|0)+4>>2]&1|0)==0){if((hq(c[f>>2]|0,e)|0)!=0){c[b>>2]=(c[e>>2]|0)==0&1;break}else{c[b>>2]=0;break}}else{c[b>>2]=0}}while(0);i=d;return c[b>>2]|0}function Zq(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;q=j+28|0;p=j+24|0;l=j+20|0;n=j+16|0;o=j+12|0;h=j+8|0;k=j+4|0;m=j;c[q>>2]=d;c[p>>2]=e;c[l>>2]=f;c[n>>2]=g;c[h>>2]=0;c[k>>2]=0;do{if((c[l>>2]|0)!=0){if(((c[p>>2]|0)==132?(c[c[l>>2]>>2]|0)!=0:0)?(rg(c[c[l>>2]>>2]|0,k)|0)!=0:0){break}c[h>>2]=(c[(c[l>>2]|0)+4>>2]|0)+1}}while(0);c[o>>2]=ne(c[q>>2]|0,48+(c[h>>2]|0)|0)|0;if((c[o>>2]|0)==0){d=c[o>>2]|0;i=j;return d|0}a[c[o>>2]>>0]=c[p>>2];b[(c[o>>2]|0)+34>>1]=-1;do{if((c[l>>2]|0)!=0){g=c[o>>2]|0;if((c[h>>2]|0)==0){d=g+4|0;c[d>>2]=c[d>>2]|1024;c[(c[o>>2]|0)+8>>2]=c[k>>2];break}c[(c[o>>2]|0)+8>>2]=g+48;if((c[(c[l>>2]|0)+4>>2]|0)!=0){dE(c[(c[o>>2]|0)+8>>2]|0,c[c[l>>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0)|0}a[(c[(c[o>>2]|0)+8>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)>>0]=0;if((c[n>>2]|0)!=0?(c[h>>2]|0)>=3:0){d=a[c[c[l>>2]>>2]>>0]|0;c[m>>2]=d;if((d|0)!=39?!((c[m>>2]|0)==34|(c[m>>2]|0)==91|(c[m>>2]|0)==96):0){break}hm(c[(c[o>>2]|0)+8>>2]|0)|0;if((c[m>>2]|0)==34){d=(c[o>>2]|0)+4|0;c[d>>2]=c[d>>2]|64}}}}while(0);c[(c[o>>2]|0)+24>>2]=1;d=c[o>>2]|0;i=j;return d|0}function _q(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;h=f+12|0;k=f+8|0;j=f+4|0;g=f;c[h>>2]=a;c[k>>2]=b;c[j>>2]=d;c[g>>2]=e;if((c[k>>2]|0)==0){hn(c[h>>2]|0,c[j>>2]|0);hn(c[h>>2]|0,c[g>>2]|0);i=f;return}if((c[g>>2]|0)!=0){c[(c[k>>2]|0)+16>>2]=c[g>>2];a=(c[k>>2]|0)+4|0;c[a>>2]=c[a>>2]|256&c[(c[g>>2]|0)+4>>2]}if((c[j>>2]|0)!=0){c[(c[k>>2]|0)+12>>2]=c[j>>2];a=(c[k>>2]|0)+4|0;c[a>>2]=c[a>>2]|256&c[(c[j>>2]|0)+4>>2]}$q(c[k>>2]|0);i=f;return}function $q(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=0;ar(c[(c[d>>2]|0)+12>>2]|0,e);ar(c[(c[d>>2]|0)+16>>2]|0,e);a=(c[d>>2]|0)+20|0;if((c[(c[d>>2]|0)+4>>2]&2048|0)!=0){br(c[a>>2]|0,e)}else{cr(c[a>>2]|0,e)}c[(c[d>>2]|0)+24>>2]=(c[e>>2]|0)+1;i=b;return}function ar(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[e>>2]|0)==0){i=d;return}if((c[(c[e>>2]|0)+24>>2]|0)<=(c[c[f>>2]>>2]|0)){i=d;return}c[c[f>>2]>>2]=c[(c[e>>2]|0)+24>>2];i=d;return}function br(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[e>>2]|0)==0){i=d;return}ar(c[(c[e>>2]|0)+36>>2]|0,c[f>>2]|0);ar(c[(c[e>>2]|0)+44>>2]|0,c[f>>2]|0);ar(c[(c[e>>2]|0)+60>>2]|0,c[f>>2]|0);ar(c[(c[e>>2]|0)+64>>2]|0,c[f>>2]|0);cr(c[c[e>>2]>>2]|0,c[f>>2]|0);cr(c[(c[e>>2]|0)+40>>2]|0,c[f>>2]|0);cr(c[(c[e>>2]|0)+48>>2]|0,c[f>>2]|0);br(c[(c[e>>2]|0)+52>>2]|0,c[f>>2]|0);i=d;return}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d+4|0;e=d;c[f>>2]=a;c[g>>2]=b;if((c[f>>2]|0)==0){i=d;return}c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[c[f>>2]>>2]|0)){break}ar(c[(c[(c[f>>2]|0)+4>>2]|0)+((c[e>>2]|0)*20|0)>>2]|0,c[g>>2]|0);c[e>>2]=(c[e>>2]|0)+1}i=d;return}function dr(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;n=g+20|0;l=g+16|0;m=g+12|0;j=g+8|0;h=g+4|0;k=g;c[n>>2]=a;c[l>>2]=d;c[m>>2]=e;c[j>>2]=f;c[h>>2]=Zq(c[n>>2]|0,154,0,0)|0;if((c[h>>2]|0)==0){n=c[h>>2]|0;i=g;return n|0}c[k>>2]=(c[l>>2]|0)+8+((c[m>>2]|0)*72|0);c[(c[h>>2]|0)+44>>2]=c[(c[k>>2]|0)+16>>2];c[(c[h>>2]|0)+28>>2]=c[(c[k>>2]|0)+40>>2];if((b[(c[(c[h>>2]|0)+44>>2]|0)+36>>1]|0)==(c[j>>2]|0)){b[(c[h>>2]|0)+32>>1]=-1}else{b[(c[h>>2]|0)+32>>1]=c[j>>2];d=$D(1,0,((c[j>>2]|0)>=64?63:c[j>>2]|0)|0)|0;n=(c[k>>2]|0)+56|0;e=n;a=c[e+4>>2]|D;c[n>>2]=c[e>>2]|d;c[n+4>>2]=a}n=(c[h>>2]|0)+4|0;c[n>>2]=c[n>>2]|4;n=c[h>>2]|0;i=g;return n|0}function er(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;j=f+24|0;l=f+20|0;m=f+16|0;k=f+12|0;e=f+8|0;h=f+4|0;g=f;c[l>>2]=a;c[m>>2]=b;c[k>>2]=d;a:do{if((c[(c[m>>2]|0)+4>>2]|0)==0?(a=c[(c[m>>2]|0)+8>>2]|0,c[e>>2]=a,(a|0)!=0):0){c[h>>2]=c[l>>2];b:while(1){if((c[h>>2]|0)==0){break a}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[c[h>>2]>>2]|0)){break}if((vc(c[e>>2]|0,c[(c[h>>2]|0)+8+(c[g>>2]<<4)>>2]|0)|0)==0){break b}c[g>>2]=(c[g>>2]|0)+1}c[h>>2]=c[(c[h>>2]|0)+4>>2]}c[c[k>>2]>>2]=c[h>>2];c[j>>2]=(c[h>>2]|0)+8+(c[g>>2]<<4);a=c[j>>2]|0;i=f;return a|0}}while(0);c[j>>2]=0;a=c[j>>2]|0;i=f;return a|0}function fr(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=i;i=i+48|0;n=o+36|0;p=o+32|0;h=o+28|0;r=o+24|0;k=o+20|0;l=o+16|0;s=o+12|0;m=o+8|0;j=o+4|0;q=o;c[p>>2]=e;c[h>>2]=f;c[r>>2]=g;if((c[h>>2]|0)==0){c[n>>2]=0;e=c[n>>2]|0;i=o;return e|0}if((c[c[h>>2]>>2]|0)>0){g=((c[c[h>>2]>>2]|0)-1|0)*72|0}else{g=0}c[s>>2]=80+g;c[k>>2]=Le(c[p>>2]|0,c[s>>2]|0)|0;if((c[k>>2]|0)==0){c[n>>2]=0;e=c[n>>2]|0;i=o;return e|0}e=c[c[h>>2]>>2]|0;c[(c[k>>2]|0)+4>>2]=e;c[c[k>>2]>>2]=e;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[c[h>>2]>>2]|0)){break}c[m>>2]=(c[k>>2]|0)+8+((c[l>>2]|0)*72|0);c[j>>2]=(c[h>>2]|0)+8+((c[l>>2]|0)*72|0);c[c[m>>2]>>2]=c[c[j>>2]>>2];e=he(c[p>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;c[(c[m>>2]|0)+4>>2]=e;e=he(c[p>>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0;c[(c[m>>2]|0)+8>>2]=e;e=he(c[p>>2]|0,c[(c[j>>2]|0)+12>>2]|0)|0;c[(c[m>>2]|0)+12>>2]=e;a[(c[m>>2]|0)+36>>0]=a[(c[j>>2]|0)+36>>0]|0;c[(c[m>>2]|0)+40>>2]=c[(c[j>>2]|0)+40>>2];c[(c[m>>2]|0)+24>>2]=c[(c[j>>2]|0)+24>>2];c[(c[m>>2]|0)+28>>2]=c[(c[j>>2]|0)+28>>2];e=(c[m>>2]|0)+37|0;a[e>>0]=a[e>>0]&-3|((d[(c[j>>2]|0)+37>>0]|0)>>>1&1&1)<<1&255;e=(c[m>>2]|0)+37|0;a[e>>0]=a[e>>0]&-5|((d[(c[j>>2]|0)+37>>0]|0)>>>2&1&1)<<2&255;e=(c[m>>2]|0)+37|0;a[e>>0]=a[e>>0]&-9|((d[(c[j>>2]|0)+37>>0]|0)>>>3&1&1)<<3&255;e=he(c[p>>2]|0,c[(c[j>>2]|0)+64>>2]|0)|0;c[(c[m>>2]|0)+64>>2]=e;e=(c[m>>2]|0)+37|0;a[e>>0]=a[e>>0]&-2|a[(c[j>>2]|0)+37>>0]&1&1;c[(c[m>>2]|0)+68>>2]=c[(c[j>>2]|0)+68>>2];e=c[(c[j>>2]|0)+16>>2]|0;c[(c[m>>2]|0)+16>>2]=e;c[q>>2]=e;if((c[q>>2]|0)!=0){e=(c[q>>2]|0)+40|0;b[e>>1]=(b[e>>1]|0)+1<<16>>16}g=Ep(c[p>>2]|0,c[(c[j>>2]|0)+20>>2]|0,c[r>>2]|0)|0;c[(c[m>>2]|0)+20>>2]=g;g=kq(c[p>>2]|0,c[(c[j>>2]|0)+44>>2]|0,c[r>>2]|0)|0;c[(c[m>>2]|0)+44>>2]=g;g=hr(c[p>>2]|0,c[(c[j>>2]|0)+48>>2]|0)|0;c[(c[m>>2]|0)+48>>2]=g;g=(c[j>>2]|0)+56|0;f=c[g+4>>2]|0;e=(c[m>>2]|0)+56|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[l>>2]=(c[l>>2]|0)+1}c[n>>2]=c[k>>2];e=c[n>>2]|0;i=o;return e|0}function gr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;h=d+16|0;g=d+12|0;e=d+8|0;j=d+4|0;f=d;c[h>>2]=a;c[g>>2]=b;c[e>>2]=0;if((c[g>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[j>>2]=24+((c[c[g>>2]>>2]|0)-1<<4);c[e>>2]=ne(c[h>>2]|0,c[j>>2]|0)|0;if((c[e>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[c[e>>2]>>2]=c[c[g>>2]>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[g>>2]>>2]|0)){break}a=Ep(c[h>>2]|0,c[(c[g>>2]|0)+8+(c[f>>2]<<4)+8>>2]|0,0)|0;c[(c[e>>2]|0)+8+(c[f>>2]<<4)+8>>2]=a;a=sq(c[h>>2]|0,c[(c[g>>2]|0)+8+(c[f>>2]<<4)+4>>2]|0,0)|0;c[(c[e>>2]|0)+8+(c[f>>2]<<4)+4>>2]=a;a=he(c[h>>2]|0,c[(c[g>>2]|0)+8+(c[f>>2]<<4)>>2]|0)|0;c[(c[e>>2]|0)+8+(c[f>>2]<<4)>>2]=a;c[f>>2]=(c[f>>2]|0)+1}a=c[e>>2]|0;i=d;return a|0}function hr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;j=d+16|0;g=d+12|0;h=d+8|0;k=d+4|0;l=d;c[f>>2]=a;c[j>>2]=b;if((c[j>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[g>>2]=Le(c[f>>2]|0,8)|0;if((c[g>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[(c[g>>2]|0)+4>>2]=c[(c[j>>2]|0)+4>>2];a=Le(c[f>>2]|0,c[(c[j>>2]|0)+4>>2]<<3)|0;c[c[g>>2]>>2]=a;if((c[c[g>>2]>>2]|0)==0){Wb(c[f>>2]|0,c[g>>2]|0);c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[j>>2]|0)+4>>2]|0)){break}c[k>>2]=(c[c[g>>2]>>2]|0)+(c[h>>2]<<3);c[l>>2]=(c[c[j>>2]>>2]|0)+(c[h>>2]<<3);a=he(c[f>>2]|0,c[c[l>>2]>>2]|0)|0;c[c[k>>2]>>2]=a;c[(c[k>>2]|0)+4>>2]=c[(c[l>>2]|0)+4>>2];c[h>>2]=(c[h>>2]|0)+1}c[e>>2]=c[g>>2];a=c[e>>2]|0;i=d;return a|0}function ir(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;r=i;i=i+96|0;o=r;k=r+92|0;m=r+88|0;u=r+84|0;B=r+80|0;G=r+76|0;p=r+72|0;C=r+64|0;F=r+60|0;q=r+56|0;n=r+52|0;I=r+48|0;H=r+44|0;s=r+40|0;l=r+36|0;E=r+32|0;D=r+28|0;t=r+24|0;v=r+20|0;z=r+16|0;w=r+12|0;y=r+8|0;x=r+4|0;c[m>>2]=e;c[u>>2]=f;c[B>>2]=g;c[G>>2]=h;c[p>>2]=j;c[I>>2]=c[(c[u>>2]|0)+56>>2];c[H>>2]=c[(c[u>>2]|0)+52>>2];c[s>>2]=0;e=c[m>>2]|0;c[o>>2]=c[c[u>>2]>>2];c[l>>2]=Oe(e,1456,o)|0;if((c[l>>2]|0)==0){c[k>>2]=7;e=c[k>>2]|0;i=r;return e|0}c[q>>2]=ne(c[m>>2]|0,28)|0;j=c[m>>2]|0;if((c[q>>2]|0)==0){Wb(j,c[l>>2]|0);c[k>>2]=7;e=c[k>>2]|0;i=r;return e|0}c[c[q>>2]>>2]=j;c[(c[q>>2]|0)+4>>2]=c[B>>2];c[E>>2]=Qe(c[m>>2]|0,c[(c[u>>2]|0)+68>>2]|0)|0;c[(c[(c[u>>2]|0)+56>>2]|0)+4>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[E>>2]<<4)>>2];c[C+4>>2]=c[u>>2];c[C>>2]=c[q>>2];c[F>>2]=c[(c[m>>2]|0)+316>>2];c[(c[m>>2]|0)+316>>2]=C;c[n>>2]=tb[c[G>>2]&1](c[m>>2]|0,c[(c[B>>2]|0)+8>>2]|0,c[H>>2]|0,c[I>>2]|0,(c[q>>2]|0)+8|0,s)|0;c[(c[m>>2]|0)+316>>2]=c[F>>2];if((c[n>>2]|0)==7){a[(c[m>>2]|0)+64>>0]=1}a:do{if(0==(c[n>>2]|0)){if((c[(c[q>>2]|0)+8>>2]|0)!=0){c[c[(c[q>>2]|0)+8>>2]>>2]=c[c[B>>2]>>2];c[(c[q>>2]|0)+12>>2]=1;if((c[C+4>>2]|0)!=0){c[D>>2]=17904;f=c[m>>2]|0;e=c[D>>2]|0;c[o>>2]=c[c[u>>2]>>2];e=Oe(f,e,o)|0;c[c[p>>2]>>2]=e;Dk(c[q>>2]|0);c[n>>2]=1;break}c[(c[q>>2]|0)+24>>2]=c[(c[u>>2]|0)+60>>2];c[(c[u>>2]|0)+60>>2]=c[q>>2];c[t>>2]=0;while(1){if((c[t>>2]|0)>=(b[(c[u>>2]|0)+38>>1]|0)){break a}c[v>>2]=c[(c[(c[u>>2]|0)+4>>2]|0)+((c[t>>2]|0)*24|0)+12>>2];c[w>>2]=0;if((c[v>>2]|0)!=0){c[z>>2]=Mb(c[v>>2]|0)|0;if((Lb(17952,c[v>>2]|0,6)|0)==0){if((a[(c[v>>2]|0)+6>>0]|0)!=0?(a[(c[v>>2]|0)+6>>0]|0)!=32:0){A=21}}else{A=21}b:do{if((A|0)==21){A=0;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[z>>2]|0)){break b}if(0==(Lb(17960,(c[v>>2]|0)+(c[w>>2]|0)|0,7)|0)){if((a[(c[v>>2]|0)+((c[w>>2]|0)+7)>>0]|0)==0){break}if((a[(c[v>>2]|0)+((c[w>>2]|0)+7)>>0]|0)==32){break}}c[w>>2]=(c[w>>2]|0)+1}c[w>>2]=(c[w>>2]|0)+1}}while(0);if((c[w>>2]|0)<(c[z>>2]|0)){c[x>>2]=6+((a[(c[v>>2]|0)+((c[w>>2]|0)+6)>>0]|0)!=0?1:0);c[y>>2]=c[w>>2];while(1){if(((c[y>>2]|0)+(c[x>>2]|0)|0)>(c[z>>2]|0)){break}a[(c[v>>2]|0)+(c[y>>2]|0)>>0]=a[(c[v>>2]|0)+((c[y>>2]|0)+(c[x>>2]|0))>>0]|0;c[y>>2]=(c[y>>2]|0)+1}if((a[(c[v>>2]|0)+(c[w>>2]|0)>>0]|0)==0?(c[w>>2]|0)>0:0){a[(c[v>>2]|0)+((c[w>>2]|0)-1)>>0]=0}e=(c[(c[u>>2]|0)+4>>2]|0)+((c[t>>2]|0)*24|0)+23|0;a[e>>0]=d[e>>0]|2}}c[t>>2]=(c[t>>2]|0)+1}}}else{t=c[m>>2]|0;if((c[s>>2]|0)==0){c[o>>2]=c[l>>2];e=Oe(t,17872,o)|0;c[c[p>>2]>>2]=e}else{c[o>>2]=c[s>>2];e=Oe(t,1456,o)|0;c[c[p>>2]>>2]=e;gc(c[s>>2]|0)}Wb(c[m>>2]|0,c[q>>2]|0)}}while(0);Wb(c[m>>2]|0,c[l>>2]|0);c[k>>2]=c[n>>2];e=c[k>>2]|0;i=r;return e|0}function jr(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;d=e+4|0;g=e;c[f>>2]=b;c[d>>2]=0;c[g>>2]=c[c[f>>2]>>2];if((a[(c[g>>2]|0)+137>>0]|0)==0){c[d>>2]=Ir(c[g>>2]|0,(c[f>>2]|0)+4|0)|0}if((c[d>>2]|0)==0){g=c[d>>2]|0;i=e;return g|0}c[(c[f>>2]|0)+12>>2]=c[d>>2];g=(c[f>>2]|0)+64|0;c[g>>2]=(c[g>>2]|0)+1;g=c[d>>2]|0;i=e;return g|0}function kr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+48|0;d=f+32|0;e=f+28|0;n=f+24|0;m=f+20|0;g=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;h=f;c[d>>2]=a;c[e>>2]=b;c[n>>2]=c[c[d>>2]>>2];c[m>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[e>>2]<<4)+12>>2];cp(c[d>>2]|0,0,c[e>>2]|0);c[j>>2]=c[(c[d>>2]|0)+68>>2];a=(c[d>>2]|0)+68|0;c[a>>2]=(c[a>>2]|0)+3;or(c[d>>2]|0,c[e>>2]|0,c[j>>2]|0,0,0);c[k>>2]=(c[(c[d>>2]|0)+72>>2]|0)+1;c[l>>2]=c[(c[d>>2]|0)+68>>2];c[g>>2]=c[(c[m>>2]|0)+16>>2];while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[(c[g>>2]|0)+8>>2];pr(c[d>>2]|0,c[h>>2]|0,0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0);c[g>>2]=c[c[g>>2]>>2]}qr(c[d>>2]|0,c[e>>2]|0);i=f;return}function lr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+12|0;h=e+8|0;d=e+4|0;f=e;c[g>>2]=a;c[h>>2]=b;c[f>>2]=Lo(c[g>>2]|0,c[h>>2]|0)|0;c[d>>2]=Uf(c[g>>2]|0,c[f>>2]|0)|0;Wb(c[g>>2]|0,c[f>>2]|0);i=e;return c[d>>2]|0}function mr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;g=k+16|0;e=k+12|0;j=k+8|0;f=k+4|0;h=k;c[g>>2]=a;c[e>>2]=b;c[j>>2]=d;c[f>>2]=Qe(c[c[g>>2]>>2]|0,c[(c[e>>2]|0)+68>>2]|0)|0;cp(c[g>>2]|0,0,c[f>>2]|0);c[h>>2]=c[(c[g>>2]|0)+68>>2];a=(c[g>>2]|0)+68|0;c[a>>2]=(c[a>>2]|0)+3;a=c[g>>2]|0;b=c[f>>2]|0;d=c[h>>2]|0;if((c[j>>2]|0)!=0){or(a,b,d,c[c[j>>2]>>2]|0,18064)}else{or(a,b,d,c[c[e>>2]>>2]|0,18072)}pr(c[g>>2]|0,c[e>>2]|0,c[j>>2]|0,c[h>>2]|0,(c[(c[g>>2]|0)+72>>2]|0)+1|0,c[(c[g>>2]|0)+68>>2]|0);qr(c[g>>2]|0,c[f>>2]|0);i=k;return}function nr(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+32|0;l=n;j=n+28|0;k=n+24|0;m=n+20|0;o=n+16|0;p=n+12|0;h=n+8|0;q=n+4|0;c[k>>2]=b;c[m>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=c[c[k>>2]>>2];if((c[o>>2]|0)!=0?(c[(c[o>>2]|0)+4>>2]|0)>>>0>0:0){if((a[(c[q>>2]|0)+137>>0]|0)!=0){Ne(c[k>>2]|0,18016,l);b=(c[k>>2]|0)+64|0;c[b>>2]=(c[b>>2]|0)+1;c[j>>2]=-1;b=c[j>>2]|0;i=n;return b|0}c[c[p>>2]>>2]=c[o>>2];c[h>>2]=lr(c[q>>2]|0,c[m>>2]|0)|0;if((c[h>>2]|0)<0){b=c[k>>2]|0;c[l>>2]=c[m>>2];Ne(b,18040,l);b=(c[k>>2]|0)+64|0;c[b>>2]=(c[b>>2]|0)+1;c[j>>2]=-1;b=c[j>>2]|0;i=n;return b|0}}else{c[h>>2]=d[(c[q>>2]|0)+136>>0]|0;c[c[p>>2]>>2]=c[m>>2]}c[j>>2]=c[h>>2];b=c[j>>2]|0;i=n;return b|0}function or(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=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;r=i;i=i+80|0;s=r;p=r+68|0;n=r+64|0;l=r+60|0;u=r+56|0;w=r+52|0;j=r+48|0;v=r+44|0;h=r+40|0;k=r+36|0;m=r+24|0;o=r+72|0;q=r+20|0;t=r+16|0;c[p>>2]=b;c[n>>2]=d;c[l>>2]=e;c[u>>2]=f;c[w>>2]=g;c[v>>2]=c[c[p>>2]>>2];c[k>>2]=Ro(c[p>>2]|0)|0;if((c[k>>2]|0)==0){i=r;return}c[h>>2]=(c[(c[v>>2]|0)+16>>2]|0)+(c[n>>2]<<4);c[j>>2]=0;while(1){if((c[j>>2]|0)>=3){break}c[q>>2]=c[18272+(c[j>>2]<<3)>>2];b=fp(c[v>>2]|0,c[q>>2]|0,c[c[h>>2]>>2]|0)|0;c[t>>2]=b;do{if((b|0)==0){if((c[18276+(c[j>>2]<<3)>>2]|0)!=0){b=c[p>>2]|0;e=c[q>>2]|0;d=c[18276+(c[j>>2]<<3)>>2]|0;c[s>>2]=c[c[h>>2]>>2];c[s+4>>2]=e;c[s+8>>2]=d;Qo(b,18360,s);c[m+(c[j>>2]<<2)>>2]=c[(c[p>>2]|0)+388>>2];a[o+(c[j>>2]|0)>>0]=2}}else{c[m+(c[j>>2]<<2)>>2]=c[(c[t>>2]|0)+32>>2];a[o+(c[j>>2]|0)>>0]=0;sr(c[p>>2]|0,c[n>>2]|0,c[m+(c[j>>2]<<2)>>2]|0,1,c[q>>2]|0);if((c[u>>2]|0)!=0){b=c[p>>2]|0;f=c[q>>2]|0;e=c[w>>2]|0;d=c[u>>2]|0;c[s>>2]=c[c[h>>2]>>2];c[s+4>>2]=f;c[s+8>>2]=e;c[s+12>>2]=d;Qo(b,18384,s);break}else{To(c[k>>2]|0,115,c[m+(c[j>>2]<<2)>>2]|0,c[n>>2]|0)|0;break}}}while(0);c[j>>2]=(c[j>>2]|0)+1}c[j>>2]=0;while(1){if((c[18276+(c[j>>2]<<3)>>2]|0)==0){break}Re(c[k>>2]|0,53,(c[l>>2]|0)+(c[j>>2]|0)|0,c[m+(c[j>>2]<<2)>>2]|0,c[n>>2]|0,3)|0;Se(c[k>>2]|0,a[o+(c[j>>2]|0)>>0]|0);c[j>>2]=(c[j>>2]|0)+1}i=r;return}function pr(b,f,g,h,j,k){b=b|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;F=i;i=i+128|0;D=F+112|0;B=F+108|0;w=F+104|0;t=F+100|0;P=F+96|0;O=F+92|0;z=F+88|0;x=F+84|0;m=F+80|0;n=F+76|0;A=F+72|0;M=F+68|0;p=F+64|0;G=F+60|0;v=F+116|0;u=F+56|0;H=F+52|0;J=F+48|0;s=F+44|0;r=F+40|0;q=F+36|0;o=F+32|0;E=F+28|0;y=F+24|0;l=F+20|0;I=F+16|0;K=F+12|0;L=F+8|0;C=F+4|0;N=F;c[D>>2]=b;c[B>>2]=f;c[w>>2]=g;c[t>>2]=h;c[P>>2]=j;c[O>>2]=k;c[z>>2]=c[c[D>>2]>>2];c[p>>2]=-1;a[v>>0]=1;b=c[P>>2]|0;c[P>>2]=b+1;c[u>>2]=b;b=c[P>>2]|0;c[P>>2]=b+1;c[H>>2]=b;b=c[P>>2]|0;c[P>>2]=b+1;c[J>>2]=b;b=c[P>>2]|0;c[P>>2]=b+1;c[s>>2]=b;b=c[P>>2]|0;c[P>>2]=b+1;c[r>>2]=b;b=c[P>>2]|0;c[P>>2]=b+1;c[q>>2]=b;b=c[P>>2]|0;c[P>>2]=b+1;c[o>>2]=b;c[E>>2]=c[P>>2];if((c[(c[D>>2]|0)+72>>2]|0)>(c[P>>2]|0)){k=c[(c[D>>2]|0)+72>>2]|0}else{k=c[P>>2]|0}c[(c[D>>2]|0)+72>>2]=k;c[A>>2]=Ro(c[D>>2]|0)|0;if((c[A>>2]|0)==0){i=F;return}if((c[B>>2]|0)==0){i=F;return}if((c[(c[B>>2]|0)+32>>2]|0)==0){i=F;return}if((Lb(c[c[B>>2]>>2]|0,15048,7)|0)==0){i=F;return}c[G>>2]=Qe(c[z>>2]|0,c[(c[B>>2]|0)+68>>2]|0)|0;if((Oo(c[D>>2]|0,28,c[c[B>>2]>>2]|0,0,c[(c[(c[z>>2]|0)+16>>2]|0)+(c[G>>2]<<4)>>2]|0)|0)!=0){i=F;return}sr(c[D>>2]|0,c[G>>2]|0,c[(c[B>>2]|0)+32>>2]|0,0,c[c[B>>2]>>2]|0);b=c[O>>2]|0;c[O>>2]=b+1;c[n>>2]=b;b=c[O>>2]|0;c[O>>2]=b+1;c[m>>2]=b;if((c[(c[D>>2]|0)+68>>2]|0)>(c[O>>2]|0)){O=c[(c[D>>2]|0)+68>>2]|0}else{O=c[O>>2]|0}c[(c[D>>2]|0)+68>>2]=O;tr(c[D>>2]|0,c[n>>2]|0,c[G>>2]|0,c[B>>2]|0,52);Vo(c[A>>2]|0,97,0,c[r>>2]|0,0,c[c[B>>2]>>2]|0,0)|0;c[x>>2]=c[(c[B>>2]|0)+8>>2];while(1){O=c[w>>2]|0;if((c[x>>2]|0)==0){break}if(!((O|0)!=0?(c[w>>2]|0)!=(c[x>>2]|0):0)){if((c[(c[x>>2]|0)+36>>2]|0)==0){a[v>>0]=0}c[y>>2]=e[(c[x>>2]|0)+50>>1]|0;c[l>>2]=Le(c[z>>2]|0,(c[y>>2]|0)+1<<2)|0;if((c[l>>2]|0)!=0){if((a[(c[x>>2]|0)+55>>0]&3|0)==2?(a[(c[B>>2]|0)+44>>0]&32|0)!=0:0){c[C>>2]=c[c[B>>2]>>2]}else{c[C>>2]=c[c[x>>2]>>2]}Vo(c[A>>2]|0,97,0,c[q>>2]|0,0,c[C>>2]|0,0)|0;if((c[(c[D>>2]|0)+72>>2]|0)>((c[E>>2]|0)+(c[y>>2]|0)|0)){O=c[(c[D>>2]|0)+72>>2]|0}else{O=(c[E>>2]|0)+(c[y>>2]|0)|0}c[(c[D>>2]|0)+72>>2]=O;Wo(c[A>>2]|0,52,c[m>>2]|0,c[(c[x>>2]|0)+44>>2]|0,c[G>>2]|0)|0;ur(c[D>>2]|0,c[x>>2]|0);To(c[A>>2]|0,25,(c[y>>2]|0)+1|0,(c[H>>2]|0)+1|0)|0;Wo(c[A>>2]|0,1,0,(c[H>>2]|0)+1|0,c[H>>2]|0)|0;Ye(c[A>>2]|0,-1,18080,-5);Se(c[A>>2]|0,1);c[I>>2]=rr(c[A>>2]|0,105,c[m>>2]|0)|0;To(c[A>>2]|0,25,0,c[J>>2]|0)|0;c[K>>2]=$o(c[A>>2]|0,16)|0;c[L>>2]=vr(c[A>>2]|0)|0;c[M>>2]=0;while(1){if((c[M>>2]|0)>=(c[y>>2]|0)){break}c[N>>2]=wr(c[D>>2]|0,c[(c[(c[x>>2]|0)+32>>2]|0)+(c[M>>2]<<2)>>2]|0)|0;To(c[A>>2]|0,25,c[M>>2]|0,c[J>>2]|0)|0;Wo(c[A>>2]|0,46,c[m>>2]|0,c[M>>2]|0,c[s>>2]|0)|0;b=Vo(c[A>>2]|0,78,c[s>>2]|0,0,(c[E>>2]|0)+(c[M>>2]|0)|0,c[N>>2]|0,-4)|0;c[(c[l>>2]|0)+(c[M>>2]<<2)>>2]=b;Se(c[A>>2]|0,-128);c[M>>2]=(c[M>>2]|0)+1}To(c[A>>2]|0,25,c[y>>2]|0,c[J>>2]|0)|0;b=$o(c[A>>2]|0,16)|0;c[(c[l>>2]|0)+(c[y>>2]<<2)>>2]=b;mp(c[A>>2]|0,c[K>>2]|0);c[M>>2]=0;while(1){O=c[A>>2]|0;if((c[M>>2]|0)>=(c[y>>2]|0)){break}mp(O,c[(c[l>>2]|0)+(c[M>>2]<<2)>>2]|0);Wo(c[A>>2]|0,46,c[m>>2]|0,c[M>>2]|0,(c[E>>2]|0)+(c[M>>2]|0)|0)|0;c[M>>2]=(c[M>>2]|0)+1}mp(O,c[(c[l>>2]|0)+(c[y>>2]<<2)>>2]|0);Wo(c[A>>2]|0,1,1,c[H>>2]|0,c[s>>2]|0)|0;Ye(c[A>>2]|0,-1,18120,-5);Se(c[A>>2]|0,2);To(c[A>>2]|0,9,c[m>>2]|0,c[L>>2]|0)|0;xr(c[A>>2]|0,c[H>>2]|0,0,c[o>>2]|0);Vo(c[A>>2]|0,48,c[r>>2]|0,3,c[s>>2]|0,18160,0)|0;To(c[A>>2]|0,69,c[t>>2]|0,c[u>>2]|0)|0;Wo(c[A>>2]|0,70,c[t>>2]|0,c[s>>2]|0,c[u>>2]|0)|0;Se(c[A>>2]|0,8);mp(c[A>>2]|0,c[I>>2]|0);Wb(c[z>>2]|0,c[l>>2]|0)}}c[x>>2]=c[(c[x>>2]|0)+20>>2]}if((O|0)!=0){i=F;return}if((d[v>>0]|0|0)==0){i=F;return}To(c[A>>2]|0,49,c[n>>2]|0,c[o>>2]|0)|0;c[p>>2]=rr(c[A>>2]|0,45,c[o>>2]|0)|0;To(c[A>>2]|0,28,0,c[q>>2]|0)|0;Vo(c[A>>2]|0,48,c[r>>2]|0,3,c[s>>2]|0,18160,0)|0;To(c[A>>2]|0,69,c[t>>2]|0,c[u>>2]|0)|0;Wo(c[A>>2]|0,70,c[t>>2]|0,c[s>>2]|0,c[u>>2]|0)|0;Se(c[A>>2]|0,8);mp(c[A>>2]|0,c[p>>2]|0);i=F;return}function qr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d+4|0;e=d;c[g>>2]=a;c[f>>2]=b;c[e>>2]=Ro(c[g>>2]|0)|0;if((c[e>>2]|0)==0){i=d;return}rr(c[e>>2]|0,120,c[f>>2]|0)|0;i=d;return}function rr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=Wo(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0,0,0)|0;i=e;return a|0}function sr(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+48|0;t=k+28|0;l=k+24|0;m=k+20|0;n=k+32|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;j=k;c[t>>2]=b;c[l>>2]=e;c[m>>2]=f;a[n>>0]=g;c[o>>2]=h;h=c[t>>2]|0;if((c[(c[t>>2]|0)+408>>2]|0)!=0){h=c[h+408>>2]|0}c[p>>2]=h;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[(c[p>>2]|0)+396>>2]|0)){break}c[j>>2]=(c[(c[p>>2]|0)+400>>2]|0)+(c[q>>2]<<4);if((c[c[j>>2]>>2]|0)==(c[l>>2]|0)?(c[(c[j>>2]|0)+4>>2]|0)==(c[m>>2]|0):0){s=7;break}c[q>>2]=(c[q>>2]|0)+1}if((s|0)==7){if((d[(c[j>>2]|0)+8>>0]|0|0)!=0){l=1}else{l=(d[n>>0]|0|0)!=0}a[(c[j>>2]|0)+8>>0]=l&1;i=k;return}c[r>>2]=(c[(c[p>>2]|0)+396>>2]|0)+1<<4;q=Hr(c[c[p>>2]>>2]|0,c[(c[p>>2]|0)+400>>2]|0,c[r>>2]|0)|0;c[(c[p>>2]|0)+400>>2]=q;q=(c[p>>2]|0)+396|0;if((c[(c[p>>2]|0)+400>>2]|0)!=0){t=c[q>>2]|0;c[q>>2]=t+1;c[j>>2]=(c[(c[p>>2]|0)+400>>2]|0)+(t<<4);c[c[j>>2]>>2]=c[l>>2];c[(c[j>>2]|0)+4>>2]=c[m>>2];a[(c[j>>2]|0)+8>>0]=a[n>>0]|0;c[(c[j>>2]|0)+12>>2]=c[o>>2];i=k;return}else{c[q>>2]=0;a[(c[c[p>>2]>>2]|0)+64>>0]=1;i=k;return}}function tr(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+32|0;q=o+24|0;m=o+20|0;l=o+16|0;k=o+12|0;n=o+8|0;j=o+4|0;p=o;c[q>>2]=d;c[m>>2]=e;c[l>>2]=f;c[k>>2]=g;c[n>>2]=h;c[j>>2]=Ro(c[q>>2]|0)|0;sr(c[q>>2]|0,c[l>>2]|0,c[(c[k>>2]|0)+32>>2]|0,((c[n>>2]|0)==53?1:0)&255,c[c[k>>2]>>2]|0);if((a[(c[k>>2]|0)+44>>0]&32|0)==0){Re(c[j>>2]|0,c[n>>2]|0,c[m>>2]|0,c[(c[k>>2]|0)+32>>2]|0,c[l>>2]|0,b[(c[k>>2]|0)+38>>1]|0)|0;i=o;return}else{c[p>>2]=Gr(c[k>>2]|0)|0;Wo(c[j>>2]|0,c[n>>2]|0,c[m>>2]|0,c[(c[p>>2]|0)+44>>2]|0,c[l>>2]|0)|0;ur(c[q>>2]|0,c[p>>2]|0);i=o;return}}function ur(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;e=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c[g>>2]=c[(c[f>>2]|0)+8>>2];a=c[g>>2]|0;Ye(a,-1,Dr(c[f>>2]|0,c[e>>2]|0)|0,-6);i=d;return}function vr(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+32>>2]|0}function wr(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;h=f+12|0;k=f+8|0;m=f+4|0;j=f+17|0;l=f+16|0;g=f;c[h>>2]=b;c[k>>2]=e;c[m>>2]=c[c[h>>2]>>2];a[j>>0]=a[(c[(c[(c[m>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;a[l>>0]=a[(c[m>>2]|0)+137>>0]|0;c[g>>2]=Ug(c[m>>2]|0,a[j>>0]|0,c[k>>2]|0,d[l>>0]|0)|0;if((a[l>>0]|0)!=0){m=c[g>>2]|0;i=f;return m|0}if((c[g>>2]|0)!=0?(c[(c[g>>2]|0)+12>>2]|0)!=0:0){m=c[g>>2]|0;i=f;return m|0}c[g>>2]=Op(c[h>>2]|0,a[j>>0]|0,c[g>>2]|0,c[k>>2]|0)|0;m=c[g>>2]|0;i=f;return m|0}function xr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;j=f+8|0;h=f;c[g>>2]=a;c[j>>2]=b;c[f+4>>2]=d;c[h>>2]=e;Wo(c[g>>2]|0,1,0,c[j>>2]|0,c[h>>2]|0)|0;Ye(c[g>>2]|0,-1,18168,-5);Se(c[g>>2]|0,1);i=f;return}function yr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+64|0;n=k+16|0;f=k+48|0;o=k+40|0;j=k+36|0;m=k+32|0;h=k+28|0;g=k+24|0;e=k+8|0;l=k;c[f>>2]=a;c[k+44>>2]=b;c[o>>2]=d;c[j>>2]=zd(c[c[o>>2]>>2]|0)|0;c[g>>2]=Kc((c[(c[j>>2]|0)+8>>2]|0)*25|0)|0;if((c[g>>2]|0)==0){ce(c[f>>2]|0);i=k;return}o=c[g>>2]|0;a=n;c[a>>2]=c[c[j>>2]>>2];c[a+4>>2]=0;qc(24,o,18224,n)|0;o=c[g>>2]|0;c[m>>2]=o+(Mb(c[g>>2]|0)|0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=((c[(c[j>>2]|0)+8>>2]|0)-1|0)){break}o=e;c[o>>2]=(c[(c[(c[j>>2]|0)+20>>2]|0)+(c[h>>2]<<2)>>2]|0)+1;c[o+4>>2]=0;o=e;o=bE(c[c[j>>2]>>2]|0,0,c[o>>2]|0,c[o+4>>2]|0)|0;o=ZD(o|0,D|0,1,0)|0;d=e;d=mE(o|0,D|0,c[d>>2]|0,c[d+4>>2]|0)|0;o=l;c[o>>2]=d;c[o+4>>2]=D;o=c[m>>2]|0;d=l;b=c[d+4>>2]|0;a=n;c[a>>2]=c[d>>2];c[a+4>>2]=b;qc(24,o,18232,n)|0;o=Mb(c[m>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+o;c[h>>2]=(c[h>>2]|0)+1}Wd(c[f>>2]|0,c[g>>2]|0,-1,13);i=k;return}function zr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+32|0;j=f+12|0;g=f+8|0;e=f+4|0;h=f;c[f+20>>2]=a;c[f+16>>2]=b;c[j>>2]=d;c[e>>2]=zd(c[c[j>>2]>>2]|0)|0;c[h>>2]=Gd(c[(c[j>>2]|0)+4>>2]|0)|0;if((c[c[e>>2]>>2]|0)==0){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[e>>2]|0)+8>>2]|0)){break}c[(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<2)>>2]=1;c[g>>2]=(c[g>>2]|0)+1}j=c[e>>2]|0;a=c[j>>2]|0;a=a+1|0;c[j>>2]=a;i=f;return}Ar(c[e>>2]|0,c[h>>2]|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[h>>2]|0)){break}j=(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<2)|0;c[j>>2]=(c[j>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=c[h>>2];while(1){if((c[g>>2]|0)>=(c[(c[e>>2]|0)+8>>2]|0)){break}j=(c[(c[e>>2]|0)+20>>2]|0)+(c[g>>2]<<2)|0;c[j>>2]=(c[j>>2]|0)+1;c[(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<2)>>2]=1;c[g>>2]=(c[g>>2]|0)+1}j=c[e>>2]|0;a=c[j>>2]|0;a=a+1|0;c[j>>2]=a;i=f;return}function Ar(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return}function Br(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+28|0;m=e+20|0;g=e+16|0;j=e+12|0;h=e+8|0;l=e+4|0;k=e;c[f>>2]=a;c[e+24>>2]=b;c[m>>2]=d;c[j>>2]=Gd(c[c[m>>2]>>2]|0)|0;c[h>>2]=(c[j>>2]|0)+1&-2;c[l>>2]=52+(c[h>>2]<<2)+(c[h>>2]<<2);c[k>>2]=je(c[f>>2]|0)|0;c[g>>2]=ne(c[k>>2]|0,c[l>>2]|0)|0;if((c[g>>2]|0)==0){ce(c[f>>2]|0);i=e;return}else{c[(c[g>>2]|0)+48>>2]=c[k>>2];c[c[g>>2]>>2]=0;c[(c[g>>2]|0)+8>>2]=c[j>>2];c[(c[g>>2]|0)+20>>2]=(c[g>>2]|0)+52;c[(c[g>>2]|0)+16>>2]=(c[(c[g>>2]|0)+20>>2]|0)+(c[h>>2]<<2);Ld(c[f>>2]|0,c[g>>2]|0,4,16);i=e;return}}function Cr(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];Wb(c[(c[d>>2]|0)+48>>2]|0,c[d>>2]|0);i=b;return}function Dr(b,f){b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=i;i=i+32|0;g=k+28|0;h=k+24|0;j=k+20|0;n=k+16|0;o=k+12|0;p=k+8|0;m=k+4|0;l=k;c[h>>2]=b;c[j>>2]=f;if((c[(c[h>>2]|0)+64>>2]|0)!=0){c[g>>2]=0;b=c[g>>2]|0;i=k;return b|0}if((c[(c[j>>2]|0)+40>>2]|0)!=0?(c[(c[(c[j>>2]|0)+40>>2]|0)+12>>2]|0)!=(c[c[h>>2]>>2]|0):0){Zg(c[(c[j>>2]|0)+40>>2]|0);c[(c[j>>2]|0)+40>>2]=0}do{if((c[(c[j>>2]|0)+40>>2]|0)==0){c[o>>2]=e[(c[j>>2]|0)+52>>1]|0;c[p>>2]=e[(c[j>>2]|0)+50>>1]|0;f=c[c[h>>2]>>2]|0;if(((d[(c[j>>2]|0)+55>>0]|0)>>>3&1|0)!=0){c[m>>2]=Er(f,c[p>>2]|0,(c[o>>2]|0)-(c[p>>2]|0)|0)|0}else{c[m>>2]=Er(f,c[o>>2]|0,0)|0}if((c[m>>2]|0)!=0){c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break}c[l>>2]=c[(c[(c[j>>2]|0)+32>>2]|0)+(c[n>>2]<<2)>>2];if((WD(c[l>>2]|0,3320)|0)==0){p=0}else{p=wr(c[h>>2]|0,c[l>>2]|0)|0}c[(c[m>>2]|0)+20+(c[n>>2]<<2)>>2]=p;a[(c[(c[m>>2]|0)+16>>2]|0)+(c[n>>2]|0)>>0]=a[(c[(c[j>>2]|0)+28>>2]|0)+(c[n>>2]|0)>>0]|0;c[n>>2]=(c[n>>2]|0)+1}l=c[m>>2]|0;if((c[(c[h>>2]|0)+64>>2]|0)!=0){Zg(l);break}else{c[(c[j>>2]|0)+40>>2]=l;break}}}}while(0);c[g>>2]=Fr(c[(c[j>>2]|0)+40>>2]|0)|0;b=c[g>>2]|0;i=k;return b|0}function Er(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;j=g+12|0;l=g+8|0;k=g+4|0;h=g;c[j>>2]=d;c[l>>2]=e;c[k>>2]=f;c[h>>2]=ne(0,24+(((c[l>>2]|0)+(c[k>>2]|0)|0)*5|0)|0)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+16>>2]=(c[h>>2]|0)+20+((c[l>>2]|0)+(c[k>>2]|0)<<2);b[(c[h>>2]|0)+6>>1]=c[l>>2];b[(c[h>>2]|0)+8>>1]=c[k>>2];a[(c[h>>2]|0)+4>>0]=a[(c[(c[(c[j>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;c[(c[h>>2]|0)+12>>2]=c[j>>2];c[c[h>>2]>>2]=1;d=c[h>>2]|0;i=g;return d|0}else{a[(c[j>>2]|0)+64>>0]=1;d=c[h>>2]|0;i=g;return d|0}return 0}function Fr(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;if((c[b>>2]|0)!=0){a=c[b>>2]|0;c[a>>2]=(c[a>>2]|0)+1}i=d;return c[b>>2]|0}function Gr(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;c[e>>2]=c[(c[f>>2]|0)+8>>2];while(1){if((c[e>>2]|0)==0){b=5;break}if(!((a[(c[e>>2]|0)+55>>0]&3|0)==2^1)){b=5;break}c[e>>2]=c[(c[e>>2]|0)+20>>2]}if((b|0)==5){i=d;return c[e>>2]|0}return 0}function Hr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;h=e+8|0;j=e+4|0;f=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[f>>2]=Pm(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;if((c[f>>2]|0)!=0){j=c[f>>2]|0;i=e;return j|0}Wb(c[g>>2]|0,c[h>>2]|0);j=c[f>>2]|0;i=e;return j|0}function Ir(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;j=g+16|0;k=g+12|0;l=g+8|0;f=g+4|0;h=g;c[j>>2]=d;c[k>>2]=e;c[h>>2]=((c[(c[j>>2]|0)+24>>2]&2|0)!=0^1)&1;c[f>>2]=0;a[(c[j>>2]|0)+137>>0]=1;c[l>>2]=0;while(1){if((c[f>>2]|0)!=0){break}if((c[l>>2]|0)>=(c[(c[j>>2]|0)+20>>2]|0)){break}if(((b[(c[(c[(c[j>>2]|0)+16>>2]|0)+(c[l>>2]<<4)+12>>2]|0)+78>>1]&1|0)!=1?(c[l>>2]|0)!=1:0)?(c[f>>2]=Jr(c[j>>2]|0,c[l>>2]|0,c[k>>2]|0)|0,(c[f>>2]|0)!=0):0){Kr(c[j>>2]|0,c[l>>2]|0)}c[l>>2]=(c[l>>2]|0)+1}if((((c[f>>2]|0)==0?(c[(c[j>>2]|0)+20>>2]|0)>1:0)?(b[(c[(c[(c[j>>2]|0)+16>>2]|0)+28>>2]|0)+78>>1]&1|0)!=1:0)?(c[f>>2]=Jr(c[j>>2]|0,1,c[k>>2]|0)|0,(c[f>>2]|0)!=0):0){Kr(c[j>>2]|0,1)}a[(c[j>>2]|0)+137>>0]=0;if((c[f>>2]|0)!=0){d=c[f>>2]|0;i=g;return d|0}if((c[h>>2]|0)==0){d=c[f>>2]|0;i=g;return d|0}Lr(c[j>>2]|0);d=c[f>>2]|0;i=g;return d|0}function Jr(f,g,h){f=f|0;g=g|0;h=h|0;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;r=i;i=i+128|0;j=r;v=r+120|0;l=r+116|0;m=r+112|0;q=r+108|0;n=r+104|0;A=r+100|0;x=r+96|0;B=r+92|0;o=r+88|0;C=r+72|0;w=r+48|0;k=r+32|0;D=r+24|0;s=r+20|0;p=r+16|0;y=r+124|0;t=r+12|0;u=r+8|0;c[l>>2]=f;c[m>>2]=g;c[q>>2]=h;c[p>>2]=0;if((c[m>>2]|0)==1){c[D>>2]=18520}else{c[D>>2]=18416}c[s>>2]=(c[m>>2]|0)==1?14808:14832;c[C>>2]=c[s>>2];c[C+4>>2]=18640;c[C+8>>2]=c[D>>2];c[C+12>>2]=0;c[k>>2]=c[l>>2];c[k+8>>2]=c[m>>2];c[k+12>>2]=0;c[k+4>>2]=c[q>>2];Mr(k,3,C,0)|0;if((c[k+12>>2]|0)==0){c[B>>2]=fp(c[l>>2]|0,c[s>>2]|0,c[(c[(c[l>>2]|0)+16>>2]|0)+(c[m>>2]<<4)>>2]|0)|0;if((c[B>>2]|0)!=0){f=(c[B>>2]|0)+44|0;a[f>>0]=d[f>>0]|1}c[o>>2]=(c[(c[l>>2]|0)+16>>2]|0)+(c[m>>2]<<4);if((c[(c[o>>2]|0)+4>>2]|0)==0){if((c[m>>2]|0)==1){f=(c[(c[(c[l>>2]|0)+16>>2]|0)+28>>2]|0)+78|0;b[f>>1]=e[f>>1]|1}c[v>>2]=0;f=c[v>>2]|0;i=r;return f|0}Mc(c[(c[o>>2]|0)+4>>2]|0);do{if((Qc(c[(c[o>>2]|0)+4>>2]|0)|0)==0){c[n>>2]=Oc(c[(c[o>>2]|0)+4>>2]|0,0)|0;if((c[n>>2]|0)!=0){g=c[q>>2]|0;f=c[l>>2]|0;c[j>>2]=ae(c[n>>2]|0)|0;an(g,f,1456,j);break}else{c[p>>2]=1;z=16;break}}else{z=16}}while(0);a:do{if((z|0)==16){c[A>>2]=0;while(1){if((c[A>>2]|0)>=5){break}Pc(c[(c[o>>2]|0)+4>>2]|0,(c[A>>2]|0)+1|0,w+(c[A>>2]<<2)|0);c[A>>2]=(c[A>>2]|0)+1}c[c[(c[o>>2]|0)+12>>2]>>2]=c[w>>2];z=c[m>>2]|0;do{if((c[w+16>>2]|0)!=0){A=c[w+16>>2]|0;if((z|0)==0){f=A&255&3;a[y>>0]=f;a[y>>0]=(d[y>>0]|0)==0?1:f;a[(c[(c[(c[l>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]=a[y>>0]|0;break}if((A|0)!=(d[(c[(c[(c[l>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0)){an(c[q>>2]|0,c[l>>2]|0,18648,j);c[n>>2]=1;break a}}else{f=(c[(c[(c[l>>2]|0)+16>>2]|0)+(z<<4)+12>>2]|0)+78|0;b[f>>1]=e[f>>1]|4}}while(0);a[(c[(c[o>>2]|0)+12>>2]|0)+77>>0]=a[(c[(c[(c[l>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;if((c[(c[(c[o>>2]|0)+12>>2]|0)+80>>2]|0)==0){f=Nr(c[w+8>>2]|0)|0;c[x>>2]=f;c[x>>2]=(c[x>>2]|0)==0?2e3:f;c[(c[(c[o>>2]|0)+12>>2]|0)+80>>2]=c[x>>2];Or(c[(c[o>>2]|0)+4>>2]|0,c[(c[(c[o>>2]|0)+12>>2]|0)+80>>2]|0)|0}a[(c[(c[o>>2]|0)+12>>2]|0)+76>>0]=c[w+4>>2];if((d[(c[(c[o>>2]|0)+12>>2]|0)+76>>0]|0)==0){a[(c[(c[o>>2]|0)+12>>2]|0)+76>>0]=1}if((d[(c[(c[o>>2]|0)+12>>2]|0)+76>>0]|0)>4){an(c[q>>2]|0,c[l>>2]|0,18720,j);c[n>>2]=1;break}if((c[m>>2]|0)==0?(c[w+4>>2]|0)>=4:0){f=(c[l>>2]|0)+24|0;c[f>>2]=c[f>>2]&-32769}f=c[l>>2]|0;g=c[s>>2]|0;c[j>>2]=c[(c[(c[l>>2]|0)+16>>2]|0)+(c[m>>2]<<4)>>2];c[j+4>>2]=g;c[t>>2]=Oe(f,18744,j)|0;c[u>>2]=c[(c[l>>2]|0)+276>>2];c[(c[l>>2]|0)+276>>2]=0;c[n>>2]=ef(c[l>>2]|0,c[t>>2]|0,6,k,0)|0;c[(c[l>>2]|0)+276>>2]=c[u>>2];if((c[n>>2]|0)==0){c[n>>2]=c[k+12>>2]}Wb(c[l>>2]|0,c[t>>2]|0);if((c[n>>2]|0)==0){Pr(c[l>>2]|0,c[m>>2]|0)|0}if((a[(c[l>>2]|0)+64>>0]|0)!=0){c[n>>2]=7;$c(c[l>>2]|0)}if((c[n>>2]|0)!=0?(c[(c[l>>2]|0)+24>>2]&65536|0)==0:0){break}f=(c[(c[(c[l>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+12>>2]|0)+78|0;b[f>>1]=e[f>>1]|1;c[n>>2]=0}}while(0);if((c[p>>2]|0)!=0){Qr(c[(c[o>>2]|0)+4>>2]|0)|0}}else{c[n>>2]=c[k+12>>2]}if((c[n>>2]|0)==7|(c[n>>2]|0)==3082){a[(c[l>>2]|0)+64>>0]=1}c[v>>2]=c[n>>2];f=c[v>>2]|0;i=r;return f|0}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d+4|0;f=d;c[e>>2]=a;c[g>>2]=b;c[f>>2]=(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<4);ph(c[(c[f>>2]|0)+12>>2]|0);if((c[g>>2]|0)==1){i=d;return}c[f>>2]=(c[(c[e>>2]|0)+16>>2]|0)+16;ph(c[(c[f>>2]|0)+12>>2]|0);i=d;return}function Lr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(c[d>>2]|0)+24|0;c[a>>2]=c[a>>2]&-3;i=b;return}function Mr(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=i;i=i+48|0;k=o+40|0;s=o+36|0;l=o+28|0;m=o+20|0;j=o+16|0;q=o+12|0;p=o+8|0;n=o+4|0;r=o;c[s>>2]=d;c[o+32>>2]=f;c[l>>2]=g;c[o+24>>2]=h;c[m>>2]=c[s>>2];c[j>>2]=c[c[m>>2]>>2];c[q>>2]=c[(c[m>>2]|0)+8>>2];d=(c[(c[(c[j>>2]|0)+16>>2]|0)+(c[q>>2]<<4)+12>>2]|0)+78|0;b[d>>1]=e[d>>1]&-5;if((a[(c[j>>2]|0)+64>>0]|0)!=0){Ur(c[m>>2]|0,c[c[l>>2]>>2]|0,0);c[k>>2]=1;s=c[k>>2]|0;i=o;return s|0}if((c[l>>2]|0)==0){c[k>>2]=0;s=c[k>>2]|0;i=o;return s|0}do{if((c[(c[l>>2]|0)+4>>2]|0)!=0){if((c[(c[l>>2]|0)+8>>2]|0)!=0?(a[c[(c[l>>2]|0)+8>>2]>>0]|0)!=0:0){a[(c[j>>2]|0)+136>>0]=c[q>>2];s=qg(c[(c[l>>2]|0)+4>>2]|0)|0;c[(c[j>>2]|0)+132>>2]=s;a[(c[j>>2]|0)+138>>0]=0;kf(c[j>>2]|0,c[(c[l>>2]|0)+8>>2]|0,-1,n,0)|0;c[p>>2]=c[(c[j>>2]|0)+52>>2];a[(c[j>>2]|0)+136>>0]=0;do{if(0!=(c[p>>2]|0)?(a[(c[j>>2]|0)+138>>0]|0)==0:0){c[(c[m>>2]|0)+12>>2]=c[p>>2];if((c[p>>2]|0)==7){a[(c[j>>2]|0)+64>>0]=1;break}if((c[p>>2]|0)!=9?(c[p>>2]&255|0)!=6:0){d=c[m>>2]|0;s=c[c[l>>2]>>2]|0;Ur(d,s,jf(c[j>>2]|0)|0)}}}while(0);qd(c[n>>2]|0)|0;break}if((c[c[l>>2]>>2]|0)==0){Ur(c[m>>2]|0,0,0);break}c[r>>2]=wp(c[j>>2]|0,c[c[l>>2]>>2]|0,c[(c[(c[j>>2]|0)+16>>2]|0)+(c[q>>2]<<4)>>2]|0)|0;if((c[r>>2]|0)!=0?(rg(c[(c[l>>2]|0)+4>>2]|0,(c[r>>2]|0)+44|0)|0)==0:0){Ur(c[m>>2]|0,c[c[l>>2]>>2]|0,18896)}}else{Ur(c[m>>2]|0,c[c[l>>2]>>2]|0,0)}}while(0);c[k>>2]=0;s=c[k>>2]|0;i=o;return s|0}function Nr(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;do{if((c[e>>2]|0)<0){if((a|0)==-2147483648){c[b>>2]=2147483647;break}else{c[b>>2]=0-(c[e>>2]|0);break}}else{c[b>>2]=a}}while(0);i=d;return c[b>>2]|0}function Or(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d+4|0;f=d;c[g>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[g>>2]|0)+4>>2];Mc(c[g>>2]|0);Ch(c[c[f>>2]>>2]|0,c[e>>2]|0);i=d;return 0}function Pr(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+48|0;l=f;k=f+40|0;h=f+36|0;m=f+32|0;e=f+24|0;n=f+16|0;j=f+12|0;g=f+8|0;o=f+4|0;c[h>>2]=b;c[m>>2]=d;c[n>>2]=c[(c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+12>>2]|0)+32>>2];while(1){if((c[n>>2]|0)==0){break}c[o>>2]=c[(c[n>>2]|0)+8>>2];Rr(c[o>>2]|0);c[n>>2]=c[c[n>>2]>>2]}c[e>>2]=c[h>>2];c[e+4>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)>>2];if((fp(c[h>>2]|0,18296,c[e+4>>2]|0)|0)==0){c[k>>2]=1;b=c[k>>2]|0;i=f;return b|0}b=c[h>>2]|0;c[l>>2]=c[e+4>>2];c[j>>2]=Oe(b,18800,l)|0;if((c[j>>2]|0)==0){c[g>>2]=7}else{c[g>>2]=ef(c[h>>2]|0,c[j>>2]|0,7,e,0)|0;Wb(c[h>>2]|0,c[j>>2]|0)}if((c[g>>2]|0)==7){a[(c[h>>2]|0)+64>>0]=1}c[k>>2]=c[g>>2];b=c[k>>2]|0;i=f;return b|0}function Qr(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;Mc(c[e>>2]|0);c[d>>2]=kd(c[e>>2]|0,0)|0;if((c[d>>2]|0)!=0){e=c[d>>2]|0;i=b;return e|0}c[d>>2]=jd(c[e>>2]|0,0)|0;e=c[d>>2]|0;i=b;return e|0}function Rr(a){a=a|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+12|0;k=f+16|0;j=f+8|0;l=f+4|0;h=f;c[g>>2]=a;b[k+0>>1]=b[18880>>1]|0;b[k+2>>1]=b[18882>>1]|0;b[k+4>>1]=b[18884>>1]|0;b[k+6>>1]=b[18886>>1]|0;b[k+8>>1]=b[18888>>1]|0;c[j>>2]=c[(c[g>>2]|0)+8>>2];if(5<(e[(c[g>>2]|0)+50>>1]|0)){a=5}else{a=e[(c[g>>2]|0)+50>>1]|0}c[l>>2]=a;b[c[j>>2]>>1]=b[(c[(c[g>>2]|0)+12>>2]|0)+28>>1]|0;if((b[c[j>>2]>>1]|0)<33){b[c[j>>2]>>1]=33}dE((c[j>>2]|0)+2|0,k|0,c[l>>2]<<1|0)|0;c[h>>2]=(c[l>>2]|0)+1;while(1){if((c[h>>2]|0)>(e[(c[g>>2]|0)+50>>1]|0)){break}b[(c[j>>2]|0)+(c[h>>2]<<1)>>1]=23;c[h>>2]=(c[h>>2]|0)+1}if((d[(c[g>>2]|0)+54>>0]|0)==0){i=f;return}b[(c[j>>2]|0)+(e[(c[g>>2]|0)+50>>1]<<1)>>1]=0;i=f;return}function Sr(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+96|0;j=n+88|0;q=n+84|0;o=n+76|0;p=n+68|0;l=n+64|0;m=n+60|0;k=n+56|0;h=n;c[q>>2]=a;c[n+80>>2]=d;c[o>>2]=f;c[n+72>>2]=g;c[p>>2]=c[q>>2];if(((c[o>>2]|0)!=0?(c[c[o>>2]>>2]|0)!=0:0)?(c[(c[o>>2]|0)+8>>2]|0)!=0:0){c[m>>2]=fp(c[c[p>>2]>>2]|0,c[c[o>>2]>>2]|0,c[(c[p>>2]|0)+4>>2]|0)|0;if((c[m>>2]|0)==0){c[j>>2]=0;q=c[j>>2]|0;i=n;return q|0}do{if((c[(c[o>>2]|0)+4>>2]|0)!=0){if((vc(c[c[o>>2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0)|0)==0){c[l>>2]=Gr(c[m>>2]|0)|0;break}else{c[l>>2]=wp(c[c[p>>2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0,c[(c[p>>2]|0)+4>>2]|0)|0;break}}else{c[l>>2]=0}}while(0);c[k>>2]=c[(c[o>>2]|0)+8>>2];if((c[l>>2]|0)!=0){Tr(c[k>>2]|0,(e[(c[l>>2]|0)+50>>1]|0)+1|0,0,c[(c[l>>2]|0)+8>>2]|0,c[l>>2]|0);if((c[(c[l>>2]|0)+36>>2]|0)==0){b[(c[m>>2]|0)+28>>1]=b[c[(c[l>>2]|0)+8>>2]>>1]|0}}else{b[h+48>>1]=b[(c[m>>2]|0)+42>>1]|0;Tr(c[k>>2]|0,1,0,(c[m>>2]|0)+28|0,h);b[(c[m>>2]|0)+42>>1]=b[h+48>>1]|0}c[j>>2]=0;q=c[j>>2]|0;i=n;return q|0}c[j>>2]=0;q=c[j>>2]|0;i=n;return q|0}function Tr(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+48|0;s=k+36|0;r=k+32|0;o=k+24|0;p=k+20|0;m=k+16|0;q=k+12|0;j=k+8|0;n=k+4|0;l=k;c[s>>2]=d;c[r>>2]=e;c[k+28>>2]=f;c[o>>2]=g;c[p>>2]=h;d=c[s>>2]|0;c[m>>2]=d;c[m>>2]=(c[m>>2]|0)==0?1472:d;c[j>>2]=0;while(1){if((a[c[m>>2]>>0]|0)==0){break}if((c[j>>2]|0)>=(c[r>>2]|0)){break}c[n>>2]=0;while(1){s=a[c[m>>2]>>0]|0;c[q>>2]=s;if((s|0)<48){break}if((c[q>>2]|0)>57){break}c[n>>2]=((c[n>>2]|0)*10|0)+(c[q>>2]|0)-48;c[m>>2]=(c[m>>2]|0)+1}s=Np(c[n>>2]|0,0)|0;b[(c[o>>2]|0)+(c[j>>2]<<1)>>1]=s;if((a[c[m>>2]>>0]|0)==32){c[m>>2]=(c[m>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}if((WD(c[m>>2]|0,18848)|0)==0){s=(c[p>>2]|0)+55|0;a[s>>0]=a[s>>0]&-5|4;i=k;return}if((cf(18864,c[m>>2]|0)|0)!=0){i=k;return}c[l>>2]=0;rg((c[m>>2]|0)+3|0,l)|0;s=c[l>>2]|0;s=Np(s,((s|0)<0)<<31>>31)|0;b[(c[p>>2]|0)+48>>1]=s;i=k;return}function Ur(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;l=h;g=h+20|0;m=h+16|0;k=h+12|0;j=h+8|0;c[g>>2]=b;c[m>>2]=e;c[k>>2]=f;c[j>>2]=c[c[g>>2]>>2];if((a[(c[j>>2]|0)+64>>0]|0)==0?(c[(c[j>>2]|0)+24>>2]&65536|0)==0:0){if((c[m>>2]|0)==0){c[m>>2]=18920}e=c[(c[g>>2]|0)+4>>2]|0;b=c[j>>2]|0;c[l>>2]=c[m>>2];an(e,b,18928,l);if((c[k>>2]|0)!=0){e=c[j>>2]|0;b=c[c[(c[g>>2]|0)+4>>2]>>2]|0;m=c[k>>2]|0;c[l>>2]=c[c[(c[g>>2]|0)+4>>2]>>2];c[l+4>>2]=m;b=Vr(e,b,18960,l)|0;c[c[(c[g>>2]|0)+4>>2]>>2]=b}}if((d[(c[j>>2]|0)+64>>0]|0)!=0){e=7;b=c[g>>2]|0;b=b+12|0;c[b>>2]=e;i=h;return}e=ej(99745)|0;b=c[g>>2]|0;b=b+12|0;c[b>>2]=e;i=h;return}function Vr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+48|0;j=g+32|0;h=g+28|0;l=g+24|0;k=g+8|0;f=g;c[j>>2]=a;c[h>>2]=b;c[l>>2]=d;c[k>>2]=e;c[f>>2]=kn(c[j>>2]|0,c[l>>2]|0,k)|0;Wb(c[j>>2]|0,c[h>>2]|0);i=g;return c[f>>2]|0}function Wr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;k=d+24|0;l=d+20|0;e=d+16|0;g=d+12|0;h=d+8|0;f=d+4|0;j=d;c[k>>2]=a;c[l>>2]=b;c[h>>2]=c[c[k>>2]>>2];c[g>>2]=0;c[e>>2]=c[(c[h>>2]|0)+16>>2];while(1){if((c[g>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[f>>2]=c[(c[(c[e>>2]|0)+12>>2]|0)+16>>2];while(1){if((c[f>>2]|0)==0){break}c[j>>2]=c[(c[f>>2]|0)+8>>2];Xr(c[k>>2]|0,c[j>>2]|0,c[l>>2]|0);c[f>>2]=c[c[f>>2]>>2]}c[g>>2]=(c[g>>2]|0)+1;c[e>>2]=(c[e>>2]|0)+16}i=d;return}function Xr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;k=e+8|0;j=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[k>>2]=d;c[j>>2]=c[(c[g>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break}if(!((c[k>>2]|0)!=0?(Zs(c[k>>2]|0,c[j>>2]|0)|0)==0:0)){c[h>>2]=Qe(c[c[f>>2]>>2]|0,c[(c[g>>2]|0)+68>>2]|0)|0;cp(c[f>>2]|0,0,c[h>>2]|0);Yr(c[f>>2]|0,c[j>>2]|0,-1)}c[j>>2]=c[(c[j>>2]|0)+20>>2]}i=e;return}function Yr(a,b,f){a=a|0;b=b|0;f=f|0;var g=0,h=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;q=i;i=i+80|0;p=q+64|0;o=q+60|0;t=q+56|0;w=q+52|0;v=q+48|0;g=q+44|0;l=q+40|0;u=q+36|0;k=q+32|0;r=q+28|0;x=q+24|0;h=q+20|0;n=q+16|0;m=q+12|0;y=q+8|0;s=q+4|0;j=q;c[p>>2]=a;c[o>>2]=b;c[t>>2]=f;c[w>>2]=c[(c[o>>2]|0)+12>>2];a=(c[p>>2]|0)+68|0;b=c[a>>2]|0;c[a>>2]=b+1;c[v>>2]=b;b=(c[p>>2]|0)+68|0;a=c[b>>2]|0;c[b>>2]=a+1;c[g>>2]=a;c[y>>2]=c[c[p>>2]>>2];c[s>>2]=Qe(c[y>>2]|0,c[(c[o>>2]|0)+24>>2]|0)|0;if((Oo(c[p>>2]|0,27,c[c[o>>2]>>2]|0,0,c[(c[(c[y>>2]|0)+16>>2]|0)+(c[s>>2]<<4)>>2]|0)|0)!=0){i=q;return}sr(c[p>>2]|0,c[s>>2]|0,c[(c[w>>2]|0)+32>>2]|0,1,c[c[w>>2]>>2]|0);c[h>>2]=Ro(c[p>>2]|0)|0;if((c[h>>2]|0)==0){i=q;return}if((c[t>>2]|0)>=0){c[r>>2]=c[t>>2]}else{c[r>>2]=c[(c[o>>2]|0)+44>>2]}c[n>>2]=Dr(c[p>>2]|0,c[o>>2]|0)|0;y=(c[p>>2]|0)+68|0;a=c[y>>2]|0;c[y>>2]=a+1;c[l>>2]=a;a=c[h>>2]|0;y=c[l>>2]|0;Vo(a,56,y,0,0,Fr(c[n>>2]|0)|0,-6)|0;tr(c[p>>2]|0,c[v>>2]|0,c[s>>2]|0,c[w>>2]|0,52);c[u>>2]=To(c[h>>2]|0,105,c[v>>2]|0,0)|0;c[m>>2]=Zo(c[p>>2]|0)|0;Zr(c[p>>2]|0,c[o>>2]|0,c[v>>2]|0,c[m>>2]|0,0,x,0,0)|0;To(c[h>>2]|0,106,c[l>>2]|0,c[m>>2]|0)|0;_r(c[p>>2]|0,c[x>>2]|0);To(c[h>>2]|0,9,c[v>>2]|0,(c[u>>2]|0)+1|0)|0;mp(c[h>>2]|0,c[u>>2]|0);if((c[t>>2]|0)<0){To(c[h>>2]|0,115,c[r>>2]|0,c[s>>2]|0)|0}Vo(c[h>>2]|0,53,c[g>>2]|0,c[r>>2]|0,c[s>>2]|0,c[n>>2]|0,-6)|0;Se(c[h>>2]|0,(1|((c[t>>2]|0)>=0?2:0))&255);c[u>>2]=To(c[h>>2]|0,103,c[l>>2]|0,0)|0;if((d[(c[o>>2]|0)+54>>0]|0|0)!=0?(c[n>>2]|0)!=0:0){c[j>>2]=(vr(c[h>>2]|0)|0)+3;To(c[h>>2]|0,16,0,c[j>>2]|0)|0;c[k>>2]=vr(c[h>>2]|0)|0;Re(c[h>>2]|0,84,c[l>>2]|0,c[j>>2]|0,c[m>>2]|0,(e[(c[n>>2]|0)+6>>1]|0)-(e[(c[o>>2]|0)+50>>1]|0)|0)|0;$r(c[p>>2]|0,2,c[o>>2]|0)}else{c[k>>2]=vr(c[h>>2]|0)|0}To(c[h>>2]|0,95,c[l>>2]|0,c[m>>2]|0)|0;Wo(c[h>>2]|0,107,c[g>>2]|0,c[m>>2]|0,1)|0;Se(c[h>>2]|0,16);_o(c[p>>2]|0,c[m>>2]|0);To(c[h>>2]|0,5,c[l>>2]|0,c[k>>2]|0)|0;mp(c[h>>2]|0,c[u>>2]|0);rr(c[h>>2]|0,58,c[v>>2]|0)|0;rr(c[h>>2]|0,58,c[g>>2]|0)|0;rr(c[h>>2]|0,58,c[l>>2]|0)|0;i=q;return}function Zr(a,e,f,g,h,j,k,l){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;x=i;i=i+64|0;n=x+48|0;q=x+44|0;p=x+40|0;w=x+36|0;y=x+32|0;z=x+28|0;t=x+24|0;v=x+20|0;s=x+16|0;r=x+12|0;o=x+8|0;m=x+4|0;u=x;c[n>>2]=a;c[q>>2]=e;c[p>>2]=f;c[w>>2]=g;c[y>>2]=h;c[z>>2]=j;c[t>>2]=k;c[v>>2]=l;c[s>>2]=c[(c[n>>2]|0)+8>>2];c[o>>2]=c[(c[q>>2]|0)+12>>2];do{if((c[z>>2]|0)!=0){if((c[(c[q>>2]|0)+36>>2]|0)!=0){a=fs(c[s>>2]|0)|0;c[c[z>>2]>>2]=a;c[(c[n>>2]|0)+96>>2]=c[p>>2];gs(c[n>>2]|0);hs(c[n>>2]|0,c[(c[q>>2]|0)+36>>2]|0,c[c[z>>2]>>2]|0,8);break}else{c[c[z>>2]>>2]=0;break}}}while(0);if((c[y>>2]|0)!=0?((d[(c[q>>2]|0)+55>>0]|0)>>>3&1|0)!=0:0){l=b[(c[q>>2]|0)+50>>1]|0}else{l=b[(c[q>>2]|0)+52>>1]|0}c[u>>2]=l&65535;c[m>>2]=is(c[n>>2]|0,c[u>>2]|0)|0;do{if((c[t>>2]|0)!=0){if((c[m>>2]|0)==(c[v>>2]|0)?(c[(c[t>>2]|0)+36>>2]|0)==0:0){break}c[t>>2]=0}}while(0);c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[u>>2]|0)){break}if(!((c[t>>2]|0)!=0?(b[(c[(c[t>>2]|0)+4>>2]|0)+(c[r>>2]<<1)>>1]|0)==(b[(c[(c[q>>2]|0)+4>>2]|0)+(c[r>>2]<<1)>>1]|0):0)){js(c[s>>2]|0,c[o>>2]|0,c[p>>2]|0,b[(c[(c[q>>2]|0)+4>>2]|0)+(c[r>>2]<<1)>>1]|0,(c[m>>2]|0)+(c[r>>2]|0)|0);ks(c[s>>2]|0,39)|0}c[r>>2]=(c[r>>2]|0)+1}if((c[w>>2]|0)==0){f=c[n>>2]|0;e=c[m>>2]|0;a=c[u>>2]|0;ls(f,e,a);a=c[m>>2]|0;i=x;return a|0}Wo(c[s>>2]|0,48,c[m>>2]|0,c[u>>2]|0,c[w>>2]|0)|0;f=c[n>>2]|0;e=c[m>>2]|0;a=c[u>>2]|0;ls(f,e,a);a=c[m>>2]|0;i=x;return a|0}function _r(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}cs(c[(c[e>>2]|0)+8>>2]|0,c[f>>2]|0);ds(c[e>>2]|0);i=d;return}function $r(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+64|0;k=h+52|0;m=h+48|0;l=h+44|0;j=h+40|0;p=h+36|0;n=h+8|0;o=h+4|0;q=h;c[k>>2]=d;c[m>>2]=f;c[l>>2]=g;c[o>>2]=c[(c[l>>2]|0)+12>>2];lc(n,0,0,200);c[n>>2]=c[c[k>>2]>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>=(e[(c[l>>2]|0)+50>>1]|0)){break}c[q>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+((b[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>>2]<<1)>>1]|0)*24|0)>>2];if((c[p>>2]|0)!=0){Km(n,19016,2)}as(n,c[c[o>>2]>>2]|0);Km(n,19024,1);as(n,c[q>>2]|0);c[p>>2]=(c[p>>2]|0)+1}c[j>>2]=nc(n)|0;bs(c[k>>2]|0,(a[(c[l>>2]|0)+55>>0]&3|0)==2?1555:2067,c[m>>2]|0,c[j>>2]|0,-1,2);i=h;return}function as(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;b=c[f>>2]|0;a=c[e>>2]|0;Km(b,a,Mb(c[e>>2]|0)|0);i=d;return}function bs(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+32|0;q=p+16|0;m=p+12|0;n=p+8|0;o=p+4|0;j=p+21|0;l=p+20|0;k=p;c[q>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;a[j>>0]=g;a[l>>0]=h;c[k>>2]=Ro(c[q>>2]|0)|0;if((c[n>>2]|0)==2){Ap(c[q>>2]|0)}Vo(c[k>>2]|0,24,c[m>>2]|0,c[n>>2]|0,0,c[o>>2]|0,a[j>>0]|0)|0;if((a[l>>0]|0)==0){i=p;return}Se(c[k>>2]|0,a[l>>0]|0);i=p;return}function cs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+12|0;h=d+8|0;e=d+4|0;g=d;c[f>>2]=a;c[h>>2]=b;c[e>>2]=c[(c[f>>2]|0)+24>>2];c[g>>2]=-1-(c[h>>2]|0);if((c[g>>2]|0)>=0?(c[(c[e>>2]|0)+112>>2]|0)!=0:0){c[(c[(c[e>>2]|0)+112>>2]|0)+(c[g>>2]<<2)>>2]=c[(c[f>>2]|0)+32>>2]}c[(c[e>>2]|0)+88>>2]=(c[(c[f>>2]|0)+32>>2]|0)-1;i=d;return}function ds(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+8|0;f=b+4|0;d=b;c[e>>2]=a;a=(c[e>>2]|0)+100|0;c[a>>2]=(c[a>>2]|0)+ -1;c[f>>2]=0;c[d>>2]=(c[e>>2]|0)+116;while(1){if((c[f>>2]|0)>=10){break}if((c[(c[d>>2]|0)+12>>2]|0)!=0?(c[(c[d>>2]|0)+8>>2]|0)>(c[(c[e>>2]|0)+100>>2]|0):0){es(c[e>>2]|0,c[d>>2]|0);c[(c[d>>2]|0)+12>>2]=0}c[f>>2]=(c[f>>2]|0)+1;c[d>>2]=(c[d>>2]|0)+20}i=b;return}function es(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;h=f+4|0;g=f;c[h>>2]=b;c[g>>2]=e;if((a[(c[g>>2]|0)+6>>0]|0)==0){i=f;return}if((d[(c[h>>2]|0)+19>>0]|0)<8){e=c[(c[g>>2]|0)+12>>2]|0;j=(c[h>>2]|0)+19|0;b=a[j>>0]|0;a[j>>0]=b+1<<24>>24;c[(c[h>>2]|0)+24+((b&255)<<2)>>2]=e}a[(c[g>>2]|0)+6>>0]=0;i=f;return}function fs(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;e=d+4|0;b=d;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+24>>2];f=(c[e>>2]|0)+108|0;a=c[f>>2]|0;c[f>>2]=a+1;c[b>>2]=a;if((c[b>>2]&(c[b>>2]|0)-1|0)==0){f=Hr(c[c[e>>2]>>2]|0,c[(c[e>>2]|0)+112>>2]|0,(c[b>>2]<<1)+1<<2)|0;c[(c[e>>2]|0)+112>>2]=f}if((c[(c[e>>2]|0)+112>>2]|0)==0){f=c[b>>2]|0;f=-1-f|0;i=d;return f|0}c[(c[(c[e>>2]|0)+112>>2]|0)+(c[b>>2]<<2)>>2]=-1;f=c[b>>2]|0;f=-1-f|0;i=d;return f|0}function gs(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(c[d>>2]|0)+100|0;c[a>>2]=(c[a>>2]|0)+1;i=b;return}function hs(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;o=i;i=i+48|0;h=o+44|0;l=o+40|0;p=o+36|0;s=o+32|0;q=o+28|0;g=o+24|0;j=o+20|0;k=o+16|0;m=o+12|0;n=o+8|0;t=o+4|0;r=o;c[h>>2]=a;c[l>>2]=b;c[p>>2]=e;c[s>>2]=f;c[q>>2]=c[(c[h>>2]|0)+8>>2];c[g>>2]=0;c[j>>2]=0;c[k>>2]=0;if((c[q>>2]|0)==0){i=o;return}if((c[l>>2]|0)==0){i=o;return}c[g>>2]=((d[c[l>>2]>>0]|0)+0^1)-0;a:do{switch(d[c[l>>2]>>0]|0|0){case 148:case 73:{c[m>>2]=rs(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,j)|0;c[n>>2]=rs(c[h>>2]|0,c[(c[l>>2]|0)+16>>2]|0,k)|0;c[g>>2]=(d[c[l>>2]>>0]|0|0)==73?78:79;ss(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[g>>2]|0,c[m>>2]|0,c[n>>2]|0,c[p>>2]|0,128)|0;break};case 75:{if((c[s>>2]|0)!=0){us(c[h>>2]|0,c[l>>2]|0,c[p>>2]|0,c[p>>2]|0);break a}else{c[r>>2]=fs(c[q>>2]|0)|0;us(c[h>>2]|0,c[l>>2]|0,c[p>>2]|0,c[r>>2]|0);cs(c[q>>2]|0,c[r>>2]|0);break a}};case 77:case 76:{c[m>>2]=rs(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,j)|0;To(c[q>>2]|0,c[g>>2]|0,c[m>>2]|0,c[p>>2]|0)|0;break};case 79:case 78:case 83:case 80:case 81:case 82:{c[m>>2]=rs(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,j)|0;c[n>>2]=rs(c[h>>2]|0,c[(c[l>>2]|0)+16>>2]|0,k)|0;ss(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[g>>2]|0,c[m>>2]|0,c[n>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;break};case 72:{hs(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[p>>2]|0,c[s>>2]|0);gs(c[h>>2]|0);hs(c[h>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[p>>2]|0,c[s>>2]|0);ds(c[h>>2]|0);break};case 71:{c[t>>2]=fs(c[q>>2]|0)|0;qs(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[t>>2]|0,c[s>>2]^8);gs(c[h>>2]|0);hs(c[h>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[p>>2]|0,c[s>>2]|0);cs(c[q>>2]|0,c[t>>2]|0);ds(c[h>>2]|0);break};case 74:{ts(c[h>>2]|0,c[l>>2]|0,c[p>>2]|0,0,c[s>>2]|0);break};case 19:{qs(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[p>>2]|0,c[s>>2]|0);break};default:{if((Yq(c[l>>2]|0)|0)!=0){To(c[q>>2]|0,16,0,c[p>>2]|0)|0;break a}if((vs(c[l>>2]|0)|0)==0){c[m>>2]=rs(c[h>>2]|0,c[l>>2]|0,j)|0;Wo(c[q>>2]|0,45,c[m>>2]|0,c[p>>2]|0,(c[s>>2]|0)!=0&1)|0}}}}while(0);_o(c[h>>2]|0,c[j>>2]|0);_o(c[h>>2]|0,c[k>>2]|0);i=o;return}function is(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d+12|0;f=d+8|0;e=d+4|0;h=d;c[g>>2]=a;c[f>>2]=b;c[e>>2]=c[(c[g>>2]|0)+60>>2];c[h>>2]=c[(c[g>>2]|0)+56>>2];if((c[f>>2]|0)<=(c[h>>2]|0)){h=(c[g>>2]|0)+60|0;c[h>>2]=(c[h>>2]|0)+(c[f>>2]|0);h=(c[g>>2]|0)+56|0;c[h>>2]=(c[h>>2]|0)-(c[f>>2]|0);h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=(c[(c[g>>2]|0)+72>>2]|0)+1;h=(c[g>>2]|0)+72|0;c[h>>2]=(c[h>>2]|0)+(c[f>>2]|0);h=c[e>>2]|0;i=d;return h|0}return 0}function js(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+32|0;k=o+24|0;l=o+20|0;p=o+16|0;m=o+12|0;n=o+8|0;j=o+4|0;q=o;c[k>>2]=d;c[l>>2]=e;c[p>>2]=f;c[m>>2]=g;c[n>>2]=h;if((c[m>>2]|0)>=0?(c[m>>2]|0)!=(b[(c[l>>2]|0)+36>>1]|0):0){c[j>>2]=(a[(c[l>>2]|0)+44>>0]&16|0)!=0?150:46;c[q>>2]=c[m>>2];if((a[(c[l>>2]|0)+44>>0]&32|0)!=0){d=Gr(c[l>>2]|0)|0;c[q>>2]=(ns(d,c[m>>2]&65535)|0)<<16>>16}Wo(c[k>>2]|0,c[j>>2]|0,c[p>>2]|0,c[q>>2]|0,c[n>>2]|0)|0}else{To(c[k>>2]|0,100,c[p>>2]|0,c[n>>2]|0)|0}if((c[m>>2]|0)<0){i=o;return}os(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0);i=o;return}function ks(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+4|0;h=f;j=f+8|0;c[h>>2]=b;a[j>>0]=e;if(((c[(c[h>>2]|0)+32>>2]|0)-1|0)>(c[(c[(c[h>>2]|0)+24>>2]|0)+88>>2]|0)?(d[(c[(c[h>>2]|0)+4>>2]|0)+(((c[(c[h>>2]|0)+32>>2]|0)-1|0)*20|0)>>0]|0|0)==(d[j>>0]|0|0):0){Ze(c[h>>2]|0,(c[(c[h>>2]|0)+32>>2]|0)-1|0);c[g>>2]=1;j=c[g>>2]|0;i=f;return j|0}c[g>>2]=0;j=c[g>>2]|0;i=f;return j|0}function ls(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;h=e+4|0;f=e;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;ms(c[g>>2]|0,c[h>>2]|0,c[f>>2]|0);if((c[f>>2]|0)<=(c[(c[g>>2]|0)+56>>2]|0)){i=e;return}c[(c[g>>2]|0)+56>>2]=c[f>>2];c[(c[g>>2]|0)+60>>2]=c[h>>2];i=e;return}function ms(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+24|0;j=e+20|0;m=e+16|0;l=e+12|0;k=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[j>>2]=b;c[m>>2]=d;c[k>>2]=(c[j>>2]|0)+(c[m>>2]|0)-1;c[l>>2]=0;c[g>>2]=(c[f>>2]|0)+116;while(1){if((c[l>>2]|0)>=10){break}c[h>>2]=c[(c[g>>2]|0)+12>>2];if((c[h>>2]|0)>=(c[j>>2]|0)?(c[h>>2]|0)<=(c[k>>2]|0):0){es(c[f>>2]|0,c[g>>2]|0);c[(c[g>>2]|0)+12>>2]=0}c[l>>2]=(c[l>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+20}i=e;return}function ns(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;f=g+10|0;k=g+4|0;j=g+8|0;h=g;c[k>>2]=a;b[j>>1]=d;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(e[(c[k>>2]|0)+52>>1]|0)){h=6;break}d=c[h>>2]|0;if((b[j>>1]|0)==(b[(c[(c[k>>2]|0)+4>>2]|0)+(c[h>>2]<<1)>>1]|0)){h=4;break}c[h>>2]=d+1}if((h|0)==4){b[f>>1]=d;a=b[f>>1]|0;i=g;return a|0}else if((h|0)==6){b[f>>1]=-1;a=b[f>>1]|0;i=g;return a|0}return 0}function os(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;h=m+20|0;k=m+16|0;l=m+12|0;j=m+8|0;g=m+4|0;n=m+24|0;o=m;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[j>>2]=f;if((c[(c[k>>2]|0)+12>>2]|0)!=0){i=m;return}c[g>>2]=0;a[n>>0]=a[(c[(c[(ps(c[h>>2]|0)|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;c[o>>2]=(c[(c[k>>2]|0)+4>>2]|0)+((c[l>>2]|0)*24|0);b=ps(c[h>>2]|0)|0;gp(b,c[(c[o>>2]|0)+4>>2]|0,a[n>>0]|0,a[(c[o>>2]|0)+21>>0]|0,g)|0;if((c[g>>2]|0)!=0){Ye(c[h>>2]|0,-1,c[g>>2]|0,-8)}if((a[(c[(c[k>>2]|0)+4>>2]|0)+((c[l>>2]|0)*24|0)+21>>0]|0)!=101){i=m;return}rr(c[h>>2]|0,39,c[j>>2]|0)|0;i=m;return}function ps(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[c[b>>2]>>2]|0}function qs(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=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;p=i;i=i+64|0;k=p+48|0;l=p+44|0;n=p+40|0;m=p+36|0;h=p+32|0;s=p+28|0;o=p+24|0;q=p+20|0;g=p+16|0;r=p+12|0;j=p+8|0;t=p+4|0;u=p;c[k>>2]=a;c[l>>2]=b;c[n>>2]=e;c[m>>2]=f;c[h>>2]=c[(c[k>>2]|0)+8>>2];c[s>>2]=0;c[o>>2]=0;c[q>>2]=0;if((c[h>>2]|0)==0){i=p;return}if((c[l>>2]|0)==0){i=p;return}c[s>>2]=d[c[l>>2]>>0]|0;a:do{switch(c[s>>2]|0){case 72:{c[j>>2]=fs(c[h>>2]|0)|0;hs(c[k>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[j>>2]|0,c[m>>2]^8);gs(c[k>>2]|0);qs(c[k>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[n>>2]|0,c[m>>2]|0);cs(c[h>>2]|0,c[j>>2]|0);ds(c[k>>2]|0);break};case 71:{qs(c[k>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[n>>2]|0,c[m>>2]|0);gs(c[k>>2]|0);qs(c[k>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[n>>2]|0,c[m>>2]|0);ds(c[k>>2]|0);break};case 148:case 73:{c[g>>2]=rs(c[k>>2]|0,c[(c[l>>2]|0)+12>>2]|0,o)|0;c[r>>2]=rs(c[k>>2]|0,c[(c[l>>2]|0)+16>>2]|0,q)|0;c[s>>2]=(c[s>>2]|0)==73?79:78;ss(c[k>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[s>>2]|0,c[g>>2]|0,c[r>>2]|0,c[n>>2]|0,128)|0;break};case 75:{c[t>>2]=fs(c[h>>2]|0)|0;c[u>>2]=(c[m>>2]|0)!=0?c[n>>2]|0:c[t>>2]|0;us(c[k>>2]|0,c[l>>2]|0,c[t>>2]|0,c[u>>2]|0);To(c[h>>2]|0,16,0,c[n>>2]|0)|0;cs(c[h>>2]|0,c[t>>2]|0);break};case 74:{ts(c[k>>2]|0,c[l>>2]|0,c[n>>2]|0,1,c[m>>2]|0);break};case 77:case 76:{c[g>>2]=rs(c[k>>2]|0,c[(c[l>>2]|0)+12>>2]|0,o)|0;To(c[h>>2]|0,c[s>>2]|0,c[g>>2]|0,c[n>>2]|0)|0;break};case 79:case 78:case 83:case 80:case 81:case 82:{c[g>>2]=rs(c[k>>2]|0,c[(c[l>>2]|0)+12>>2]|0,o)|0;c[r>>2]=rs(c[k>>2]|0,c[(c[l>>2]|0)+16>>2]|0,q)|0;ss(c[k>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[s>>2]|0,c[g>>2]|0,c[r>>2]|0,c[n>>2]|0,c[m>>2]|0)|0;break};case 19:{hs(c[k>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[n>>2]|0,c[m>>2]|0);break};default:{if((vs(c[l>>2]|0)|0)!=0){To(c[h>>2]|0,16,0,c[n>>2]|0)|0;break a}if((Yq(c[l>>2]|0)|0)==0){c[g>>2]=rs(c[k>>2]|0,c[l>>2]|0,o)|0;Wo(c[h>>2]|0,44,c[g>>2]|0,c[n>>2]|0,(c[m>>2]|0)!=0&1)|0}}}}while(0);_o(c[k>>2]|0,c[o>>2]|0);_o(c[k>>2]|0,c[q>>2]|0);i=p;return}function rs(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+48|0;l=m+32|0;n=m+28|0;j=m+24|0;p=m+20|0;h=m+16|0;o=m+12|0;f=m+8|0;k=m+4|0;q=m;c[n>>2]=a;c[j>>2]=b;c[p>>2]=e;c[j>>2]=Sp(c[j>>2]|0)|0;if(((d[(c[n>>2]|0)+23>>0]|0|0)!=0?(d[c[j>>2]>>0]|0|0)!=159:0)?(Ys(c[j>>2]|0)|0)!=0:0){c[o>>2]=c[(c[n>>2]|0)+316>>2];c[c[p>>2]>>2]=0;a:do{if((c[o>>2]|0)!=0){c[k>>2]=c[(c[o>>2]|0)+4>>2];c[f>>2]=c[c[o>>2]>>2];while(1){if((c[f>>2]|0)<=0){break a}if(((d[(c[k>>2]|0)+13>>0]|0)>>>2&1|0)!=0?(mq(c[c[k>>2]>>2]|0,c[j>>2]|0,-1)|0)==0:0){break}c[k>>2]=(c[k>>2]|0)+20;c[f>>2]=(c[f>>2]|0)+ -1}c[l>>2]=c[(c[k>>2]|0)+16>>2];a=c[l>>2]|0;i=m;return a|0}}while(0);b=(c[n>>2]|0)+72|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[h>>2]=a;Ms(c[n>>2]|0,c[j>>2]|0,c[h>>2]|0,1)}else{g=12}do{if((g|0)==12){c[q>>2]=Zo(c[n>>2]|0)|0;c[h>>2]=zs(c[n>>2]|0,c[j>>2]|0,c[q>>2]|0)|0;if((c[h>>2]|0)==(c[q>>2]|0)){c[c[p>>2]>>2]=c[q>>2];break}else{_o(c[n>>2]|0,c[q>>2]|0);c[c[p>>2]>>2]=0;break}}}while(0);c[l>>2]=c[h>>2];a=c[l>>2]|0;i=m;return a|0}function ss(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;l=i;i=i+48|0;n=l+40|0;v=l+36|0;u=l+32|0;s=l+28|0;p=l+24|0;r=l+20|0;q=l+16|0;t=l+12|0;m=l+8|0;k=l+4|0;o=l;c[n>>2]=a;c[v>>2]=b;c[u>>2]=d;c[s>>2]=e;c[p>>2]=f;c[r>>2]=g;c[q>>2]=h;c[t>>2]=j;c[o>>2]=Ls(c[n>>2]|0,c[v>>2]|0,c[u>>2]|0)|0;c[m>>2]=(Xs(c[v>>2]|0,c[u>>2]|0,c[t>>2]|0)|0)&255;c[k>>2]=Vo(c[(c[n>>2]|0)+8>>2]|0,c[s>>2]|0,c[r>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,-4)|0;Se(c[(c[n>>2]|0)+8>>2]|0,c[m>>2]&255);i=l;return c[k>>2]|0}function ts(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+224|0;h=j+216|0;p=j+212|0;o=j+208|0;k=j+204|0;n=j+200|0;m=j+152|0;q=j+104|0;s=j+56|0;r=j+8|0;l=j;c[h>>2]=b;c[p>>2]=d;c[o>>2]=e;c[k>>2]=f;c[n>>2]=g;c[l>>2]=0;e=r+0|0;f=(c[(c[p>>2]|0)+12>>2]|0)+0|0;g=e+48|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));a[m>>0]=72;c[m+12>>2]=q;c[m+16>>2]=s;a[q>>0]=83;c[q+12>>2]=r;c[q+16>>2]=c[c[(c[(c[p>>2]|0)+20>>2]|0)+4>>2]>>2];a[s>>0]=81;c[s+12>>2]=r;c[s+16>>2]=c[(c[(c[(c[p>>2]|0)+20>>2]|0)+4>>2]|0)+20>>2];Is(r,rs(c[h>>2]|0,r,l)|0);p=c[h>>2]|0;o=c[o>>2]|0;n=c[n>>2]|0;if((c[k>>2]|0)!=0){qs(p,m,o,n);d=c[h>>2]|0;b=c[l>>2]|0;_o(d,b);i=j;return}else{hs(p,m,o,n);d=c[h>>2]|0;b=c[l>>2]|0;_o(d,b);i=j;return}}function us(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=i;i=i+48|0;l=m+40|0;j=m+36|0;q=m+32|0;p=m+28|0;o=m+24|0;r=m+44|0;s=m+20|0;k=m+16|0;n=m+12|0;t=m+8|0;g=m+4|0;h=m;c[l>>2]=b;c[j>>2]=d;c[q>>2]=e;c[p>>2]=f;c[o>>2]=0;c[n>>2]=c[(c[l>>2]|0)+8>>2];c[s>>2]=ws(c[l>>2]|0,c[j>>2]|0,o)|0;a[r>>0]=xs(c[j>>2]|0)|0;gs(c[l>>2]|0);c[k>>2]=Zo(c[l>>2]|0)|0;ys(c[l>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[k>>2]|0);e=c[n>>2]|0;f=c[k>>2]|0;if((c[p>>2]|0)==(c[q>>2]|0)){To(e,76,f,c[p>>2]|0)|0}else{c[t>>2]=rr(e,77,f)|0;To(c[n>>2]|0,105,c[(c[j>>2]|0)+28>>2]|0,c[q>>2]|0)|0;To(c[n>>2]|0,16,0,c[p>>2]|0)|0;mp(c[n>>2]|0,c[t>>2]|0)}f=c[n>>2]|0;t=c[k>>2]|0;if((c[s>>2]|0)==1){To(f,38,t,c[q>>2]|0)|0;Wo(c[n>>2]|0,67,c[(c[j>>2]|0)+28>>2]|0,c[q>>2]|0,c[k>>2]|0)|0;d=c[l>>2]|0;b=c[k>>2]|0;_o(d,b);b=c[l>>2]|0;ds(b);i=m;return}Vo(f,47,t,1,0,r,1)|0;if((c[o>>2]|0)!=0?(c[q>>2]|0)!=(c[p>>2]|0):0){c[g>>2]=Re(c[n>>2]|0,66,c[(c[j>>2]|0)+28>>2]|0,0,c[k>>2]|0,1)|0;To(c[n>>2]|0,44,c[o>>2]|0,c[p>>2]|0)|0;To(c[n>>2]|0,45,c[o>>2]|0,c[q>>2]|0)|0;c[h>>2]=Re(c[n>>2]|0,66,c[(c[j>>2]|0)+28>>2]|0,0,c[o>>2]|0,1)|0;To(c[n>>2]|0,25,0,c[o>>2]|0)|0;To(c[n>>2]|0,16,0,c[q>>2]|0)|0;mp(c[n>>2]|0,c[h>>2]|0);To(c[n>>2]|0,25,1,c[o>>2]|0)|0;To(c[n>>2]|0,16,0,c[p>>2]|0)|0;mp(c[n>>2]|0,c[g>>2]|0);d=c[l>>2]|0;b=c[k>>2]|0;_o(d,b);b=c[l>>2]|0;ds(b);i=m;return}Re(c[n>>2]|0,65,c[(c[j>>2]|0)+28>>2]|0,c[q>>2]|0,c[k>>2]|0,1)|0;d=c[l>>2]|0;b=c[k>>2]|0;_o(d,b);b=c[l>>2]|0;ds(b);i=m;return}function vs(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;b=d+8|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=0;do{if((c[(c[f>>2]|0)+4>>2]&1|0)==0){if((hq(c[f>>2]|0,e)|0)!=0){c[b>>2]=(c[e>>2]|0)!=0&1;break}else{c[b>>2]=0;break}}else{c[b>>2]=0}}while(0);i=d;return c[b>>2]|0}function ws(f,g,h){f=f|0;g=g|0;h=h|0;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;l=i;i=i+80|0;m=l+68|0;o=l+64|0;p=l+60|0;D=l+56|0;k=l+52|0;v=l+48|0;w=l+44|0;n=l+40|0;x=l+36|0;B=l+32|0;A=l+28|0;t=l+74|0;u=l+72|0;r=l+24|0;s=l+20|0;y=l+16|0;z=l+12|0;C=l+8|0;q=l+4|0;j=l;c[m>>2]=f;c[o>>2]=g;c[p>>2]=h;c[k>>2]=0;g=(c[m>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[v>>2]=f;c[w>>2]=(c[p>>2]|0)==0&1;c[n>>2]=Ro(c[m>>2]|0)|0;if((c[(c[o>>2]|0)+4>>2]&2048|0)!=0){h=c[(c[o>>2]|0)+20>>2]|0}else{h=0}c[D>>2]=h;a:do{if((c[(c[m>>2]|0)+64>>2]|0)==0?(Vs(c[D>>2]|0)|0)!=0:0){c[x>>2]=c[c[m>>2]>>2];c[B>>2]=c[(c[(c[D>>2]|0)+32>>2]|0)+24>>2];c[A>>2]=c[c[(c[c[D>>2]>>2]|0)+4>>2]>>2];b[t>>1]=b[(c[A>>2]|0)+32>>1]|0;b[u>>1]=Qe(c[x>>2]|0,c[(c[B>>2]|0)+68>>2]|0)|0;dp(c[m>>2]|0,b[u>>1]|0);sr(c[m>>2]|0,b[u>>1]|0,c[(c[B>>2]|0)+32>>2]|0,0,c[c[B>>2]>>2]|0);D=c[m>>2]|0;if((b[t>>1]|0)<0){c[r>>2]=Js(D)|0;tr(c[m>>2]|0,c[v>>2]|0,b[u>>1]|0,c[B>>2]|0,52);c[k>>2]=1;mp(c[n>>2]|0,c[r>>2]|0);break}c[y>>2]=Ls(D,c[(c[o>>2]|0)+12>>2]|0,c[A>>2]|0)|0;c[z>>2]=Ws(c[o>>2]|0,a[(c[(c[B>>2]|0)+4>>2]|0)+((b[t>>1]|0)*24|0)+21>>0]|0)|0;c[s>>2]=c[(c[B>>2]|0)+8>>2];while(1){if((c[s>>2]|0)==0){break a}if((c[k>>2]|0)!=0){break a}if((c[z>>2]|0)==0){break a}do{if((b[c[(c[s>>2]|0)+4>>2]>>1]|0)==(b[t>>1]|0)?(f=Ug(c[x>>2]|0,a[(c[(c[(c[x>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[c[(c[s>>2]|0)+32>>2]>>2]|0,0)|0,(f|0)==(c[y>>2]|0)):0){if((c[w>>2]|0)!=0){if((e[(c[s>>2]|0)+50>>1]|0)!=1){break}if((d[(c[s>>2]|0)+54>>0]|0)==0){break}}c[C>>2]=Js(c[m>>2]|0)|0;Wo(c[n>>2]|0,52,c[v>>2]|0,c[(c[s>>2]|0)+44>>2]|0,b[u>>1]|0)|0;ur(c[m>>2]|0,c[s>>2]|0);c[k>>2]=3+(d[c[(c[s>>2]|0)+28>>2]>>0]|0);if((c[p>>2]|0)!=0?(a[(c[(c[B>>2]|0)+4>>2]|0)+((b[t>>1]|0)*24|0)+20>>0]|0)==0:0){g=(c[m>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[c[p>>2]>>2]=f;To(c[n>>2]|0,28,0,c[c[p>>2]>>2]|0)|0}mp(c[n>>2]|0,c[C>>2]|0)}}while(0);c[s>>2]=c[(c[s>>2]|0)+20>>2]}}}while(0);if((c[k>>2]|0)!=0){c[(c[o>>2]|0)+28>>2]=c[v>>2];f=c[k>>2]|0;i=l;return f|0}c[q>>2]=c[(c[m>>2]|0)+424>>2];c[j>>2]=0;c[k>>2]=2;r=c[m>>2]|0;if((c[p>>2]|0)==0){c[r+424>>2]=0;if((b[(c[(c[o>>2]|0)+12>>2]|0)+32>>1]|0)<0?(c[(c[o>>2]|0)+4>>2]&2048|0)==0:0){c[k>>2]=1}}else{g=r+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[j>>2]=f;c[c[p>>2]>>2]=f;To(c[n>>2]|0,28,0,c[c[p>>2]>>2]|0)|0}Hs(c[m>>2]|0,c[o>>2]|0,c[j>>2]|0,(c[k>>2]|0)==1&1)|0;c[(c[m>>2]|0)+424>>2]=c[q>>2];f=c[k>>2]|0;i=l;return f|0}function xs(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d;e=d+4|0;c[f>>2]=b;a[e>>0]=Lp(c[(c[f>>2]|0)+12>>2]|0)|0;b=c[f>>2]|0;if((c[(c[f>>2]|0)+16>>2]|0)!=0){a[e>>0]=Us(c[b+16>>2]|0,a[e>>0]|0)|0;b=a[e>>0]|0;i=d;return b|0}if((c[b+4>>2]&2048|0)!=0){a[e>>0]=Us(c[c[(c[c[(c[f>>2]|0)+20>>2]>>2]|0)+4>>2]>>2]|0,a[e>>0]|0)|0;b=a[e>>0]|0;i=d;return b|0}if((a[e>>0]|0)!=0){b=a[e>>0]|0;i=d;return b|0}a[e>>0]=98;b=a[e>>0]|0;i=d;return b|0}function ys(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f+12|0;h=f+8|0;g=f+4|0;k=f;c[j>>2]=a;c[h>>2]=b;c[g>>2]=e;if((c[h>>2]|0)!=0?(d[c[h>>2]>>0]|0|0)==159:0){To(c[(c[j>>2]|0)+8>>2]|0,33,c[(c[h>>2]|0)+28>>2]|0,c[g>>2]|0)|0;i=f;return}c[k>>2]=zs(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;if((c[k>>2]|0)==(c[g>>2]|0)){i=f;return}if((c[(c[j>>2]|0)+8>>2]|0)==0){i=f;return}To(c[(c[j>>2]|0)+8>>2]|0,34,c[k>>2]|0,c[g>>2]|0)|0;i=f;return}function zs(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;q=i;i=i+320|0;N=q;p=q+300|0;j=q+296|0;E=q+292|0;n=q+288|0;o=q+284|0;ga=q+280|0;m=q+276|0;k=q+272|0;l=q+268|0;I=q+264|0;ha=q+260|0;ca=q+256|0;R=q+252|0;G=q+248|0;A=q+200|0;ba=q+192|0;aa=q+188|0;ka=q+184|0;X=q+180|0;W=q+176|0;Y=q+172|0;_=q+168|0;Z=q+164|0;S=q+160|0;Q=q+156|0;T=q+152|0;B=q+148|0;C=q+144|0;F=q+140|0;M=q+136|0;P=q+132|0;L=q+128|0;K=q+124|0;O=q+305|0;H=q+120|0;J=q+116|0;D=q+304|0;ja=q+112|0;ia=q+108|0;fa=q+104|0;ea=q+100|0;da=q+96|0;U=q+92|0;V=q+88|0;r=q+84|0;s=q+80|0;u=q+76|0;y=q+72|0;z=q+68|0;t=q+64|0;w=q+16|0;x=q+12|0;v=q+8|0;c[j>>2]=e;c[E>>2]=f;c[n>>2]=g;c[o>>2]=c[(c[j>>2]|0)+8>>2];c[m>>2]=c[n>>2];c[k>>2]=0;c[l>>2]=0;c[G>>2]=c[c[j>>2]>>2];if((c[o>>2]|0)==0){c[p>>2]=0;e=c[p>>2]|0;i=q;return e|0}if((c[E>>2]|0)==0){c[ga>>2]=101}else{c[ga>>2]=d[c[E>>2]>>0]|0}a:do{switch(c[ga>>2]|0){case 159:{c[m>>2]=c[(c[E>>2]|0)+28>>2];break};case 119:case 20:{c[m>>2]=Hs(c[j>>2]|0,c[E>>2]|0,0,0)|0;break};case 154:{h=11;break};case 75:{c[ja>>2]=fs(c[o>>2]|0)|0;c[ia>>2]=fs(c[o>>2]|0)|0;To(c[o>>2]|0,28,0,c[n>>2]|0)|0;us(c[j>>2]|0,c[E>>2]|0,c[ja>>2]|0,c[ia>>2]|0);To(c[o>>2]|0,25,1,c[n>>2]|0)|0;cs(c[o>>2]|0,c[ja>>2]|0);To(c[o>>2]|0,37,c[n>>2]|0,0)|0;cs(c[o>>2]|0,c[ia>>2]|0);break};case 79:case 78:case 83:case 80:case 81:case 82:{c[I>>2]=rs(c[j>>2]|0,c[(c[E>>2]|0)+12>>2]|0,k)|0;c[ha>>2]=rs(c[j>>2]|0,c[(c[E>>2]|0)+16>>2]|0,l)|0;ss(c[j>>2]|0,c[(c[E>>2]|0)+12>>2]|0,c[(c[E>>2]|0)+16>>2]|0,c[ga>>2]|0,c[I>>2]|0,c[ha>>2]|0,c[m>>2]|0,16)|0;break};case 158:case 95:{c[m>>2]=zs(c[j>>2]|0,c[(c[E>>2]|0)+12>>2]|0,c[n>>2]|0)|0;break};case 74:{c[fa>>2]=c[(c[E>>2]|0)+12>>2];c[ea>>2]=c[(c[(c[E>>2]|0)+20>>2]|0)+4>>2];c[da>>2]=c[c[ea>>2]>>2];c[I>>2]=rs(c[j>>2]|0,c[fa>>2]|0,k)|0;c[ha>>2]=rs(c[j>>2]|0,c[da>>2]|0,l)|0;c[ca>>2]=Zo(c[j>>2]|0)|0;c[R>>2]=Zo(c[j>>2]|0)|0;ss(c[j>>2]|0,c[fa>>2]|0,c[da>>2]|0,83,c[I>>2]|0,c[ha>>2]|0,c[ca>>2]|0,16)|0;c[ea>>2]=(c[ea>>2]|0)+20;c[da>>2]=c[c[ea>>2]>>2];_o(c[j>>2]|0,c[l>>2]|0);c[ha>>2]=rs(c[j>>2]|0,c[da>>2]|0,l)|0;ss(c[j>>2]|0,c[fa>>2]|0,c[da>>2]|0,81,c[I>>2]|0,c[ha>>2]|0,c[R>>2]|0,16)|0;Wo(c[o>>2]|0,72,c[ca>>2]|0,c[R>>2]|0,c[n>>2]|0)|0;_o(c[j>>2]|0,c[ca>>2]|0);_o(c[j>>2]|0,c[R>>2]|0);break};case 94:case 88:case 87:case 92:case 86:case 85:case 93:case 90:case 91:case 89:case 71:case 72:{c[I>>2]=rs(c[j>>2]|0,c[(c[E>>2]|0)+12>>2]|0,k)|0;c[ha>>2]=rs(c[j>>2]|0,c[(c[E>>2]|0)+16>>2]|0,l)|0;Wo(c[o>>2]|0,c[ga>>2]|0,c[ha>>2]|0,c[I>>2]|0,c[n>>2]|0)|0;break};case 77:case 76:{To(c[o>>2]|0,25,1,c[n>>2]|0)|0;c[I>>2]=rs(c[j>>2]|0,c[(c[E>>2]|0)+12>>2]|0,k)|0;c[Q>>2]=rr(c[o>>2]|0,c[ga>>2]|0,c[I>>2]|0)|0;To(c[o>>2]|0,37,c[n>>2]|0,-1)|0;mp(c[o>>2]|0,c[Q>>2]|0);break};case 148:case 73:{c[I>>2]=rs(c[j>>2]|0,c[(c[E>>2]|0)+12>>2]|0,k)|0;c[ha>>2]=rs(c[j>>2]|0,c[(c[E>>2]|0)+16>>2]|0,l)|0;c[ga>>2]=(c[ga>>2]|0)==73?79:78;ss(c[j>>2]|0,c[(c[E>>2]|0)+12>>2]|0,c[(c[E>>2]|0)+16>>2]|0,c[ga>>2]|0,c[I>>2]|0,c[ha>>2]|0,c[m>>2]|0,144)|0;break};case 57:{if((c[(c[j>>2]|0)+412>>2]|0)==0){Ne(c[j>>2]|0,19096,N);c[p>>2]=0;e=c[p>>2]|0;i=q;return e|0}if((a[(c[E>>2]|0)+1>>0]|0)==2){Ap(c[j>>2]|0)}if((a[(c[E>>2]|0)+1>>0]|0)==4){Vo(c[o>>2]|0,24,0,4,0,c[(c[E>>2]|0)+8>>2]|0,0)|0;break a}else{bs(c[j>>2]|0,1811,a[(c[E>>2]|0)+1>>0]|0,c[(c[E>>2]|0)+8>>2]|0,0,0);break a}};case 157:{c[S>>2]=c[(c[E>>2]|0)+12>>2];do{if((d[c[S>>2]>>0]|0)!=132){if((d[c[S>>2]>>0]|0)==133){Cs(c[o>>2]|0,c[(c[S>>2]|0)+8>>2]|0,1,c[n>>2]|0);break}else{a[A>>0]=-124;c[A+4>>2]=17408;c[A+8>>2]=0;c[I>>2]=rs(c[j>>2]|0,A,k)|0;c[ha>>2]=rs(c[j>>2]|0,c[(c[E>>2]|0)+12>>2]|0,l)|0;Wo(c[o>>2]|0,90,c[ha>>2]|0,c[I>>2]|0,c[n>>2]|0)|0;break}}else{Bs(c[j>>2]|0,c[S>>2]|0,1,c[n>>2]|0)}}while(0);c[m>>2]=c[n>>2];break};case 153:{c[L>>2]=0;a[O>>0]=a[(c[(c[(c[G>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;c[H>>2]=0;if((c[(c[E>>2]|0)+4>>2]&16384|0)!=0){c[B>>2]=0}else{c[B>>2]=c[(c[E>>2]|0)+20>>2]}if((c[B>>2]|0)!=0){r=c[c[B>>2]>>2]|0}else{r=0}c[C>>2]=r;c[P>>2]=c[(c[E>>2]|0)+8>>2];c[M>>2]=Mb(c[P>>2]|0)|0;c[F>>2]=Of(c[G>>2]|0,c[P>>2]|0,c[M>>2]|0,c[C>>2]|0,a[O>>0]|0,0)|0;if((c[F>>2]|0)==0){e=c[j>>2]|0;f=c[P>>2]|0;c[N>>2]=c[M>>2];c[N+4>>2]=f;Ne(e,19064,N);break a}if((b[(c[F>>2]|0)+2>>1]&512|0)!=0){c[J>>2]=fs(c[o>>2]|0)|0;ys(c[j>>2]|0,c[c[(c[B>>2]|0)+4>>2]>>2]|0,c[n>>2]|0);c[K>>2]=1;while(1){r=c[o>>2]|0;if((c[K>>2]|0)>=(c[C>>2]|0)){break}To(r,77,c[n>>2]|0,c[J>>2]|0)|0;ms(c[j>>2]|0,c[n>>2]|0,1);gs(c[j>>2]|0);ys(c[j>>2]|0,c[(c[(c[B>>2]|0)+4>>2]|0)+((c[K>>2]|0)*20|0)>>2]|0,c[n>>2]|0);ds(c[j>>2]|0);c[K>>2]=(c[K>>2]|0)+1}cs(r,c[J>>2]|0);break a}if((b[(c[F>>2]|0)+2>>1]&1024|0)!=0){ys(c[j>>2]|0,c[c[(c[B>>2]|0)+4>>2]>>2]|0,c[n>>2]|0);break a}c[K>>2]=0;while(1){if((c[K>>2]|0)>=(c[C>>2]|0)){break}if((c[K>>2]|0)<32?(Es(c[(c[(c[B>>2]|0)+4>>2]|0)+((c[K>>2]|0)*20|0)>>2]|0)|0)!=0:0){c[L>>2]=c[L>>2]|1<>2]}if((b[(c[F>>2]|0)+2>>1]&32|0)!=0?(c[H>>2]|0)==0:0){c[H>>2]=Mp(c[j>>2]|0,c[(c[(c[B>>2]|0)+4>>2]|0)+((c[K>>2]|0)*20|0)>>2]|0)|0}c[K>>2]=(c[K>>2]|0)+1}if((c[B>>2]|0)!=0){r=c[j>>2]|0;if((c[L>>2]|0)!=0){c[I>>2]=(c[r+72>>2]|0)+1;e=(c[j>>2]|0)+72|0;c[e>>2]=(c[e>>2]|0)+(c[C>>2]|0)}else{c[I>>2]=is(r,c[C>>2]|0)|0}do{if((b[(c[F>>2]|0)+2>>1]&192|0)!=0){a[D>>0]=a[c[c[(c[B>>2]|0)+4>>2]>>2]>>0]|0;if((d[D>>0]|0)!=154?(d[D>>0]|0)!=156:0){break}a[(c[c[(c[B>>2]|0)+4>>2]>>2]|0)+38>>0]=b[(c[F>>2]|0)+2>>1]&192}}while(0);gs(c[j>>2]|0);Fs(c[j>>2]|0,c[B>>2]|0,c[I>>2]|0,3)|0;ds(c[j>>2]|0)}else{c[I>>2]=0}if((c[C>>2]|0)>=2?(c[(c[E>>2]|0)+4>>2]&128|0)!=0:0){c[F>>2]=Gs(c[G>>2]|0,c[F>>2]|0,c[C>>2]|0,c[(c[(c[B>>2]|0)+4>>2]|0)+20>>2]|0)|0}else{h=78}if((h|0)==78?(c[C>>2]|0)>0:0){c[F>>2]=Gs(c[G>>2]|0,c[F>>2]|0,c[C>>2]|0,c[c[(c[B>>2]|0)+4>>2]>>2]|0)|0}if((b[(c[F>>2]|0)+2>>1]&32|0)!=0){if((c[H>>2]|0)==0){c[H>>2]=c[(c[G>>2]|0)+8>>2]}Vo(c[o>>2]|0,36,0,0,0,c[H>>2]|0,-4)|0}Vo(c[o>>2]|0,1,c[L>>2]|0,c[I>>2]|0,c[n>>2]|0,c[F>>2]|0,-5)|0;Se(c[o>>2]|0,c[C>>2]&255);if((c[C>>2]|0)!=0?(c[L>>2]|0)==0:0){ls(c[j>>2]|0,c[I>>2]|0,c[C>>2]|0)}break};case 19:case 96:{c[I>>2]=rs(c[j>>2]|0,c[(c[E>>2]|0)+12>>2]|0,k)|0;c[m>>2]=c[n>>2];To(c[o>>2]|0,c[ga>>2]|0,c[I>>2]|0,c[m>>2]|0)|0;break};case 155:{c[T>>2]=c[(c[E>>2]|0)+40>>2];if((c[T>>2]|0)==0){e=c[j>>2]|0;c[N>>2]=c[(c[E>>2]|0)+8>>2];Ne(e,19032,N);break a}else{c[m>>2]=c[(c[(c[T>>2]|0)+40>>2]|0)+(b[(c[E>>2]|0)+34>>1]<<4)+8>>2];break a}};case 62:{c[U>>2]=c[(c[E>>2]|0)+44>>2];e=($(c[(c[E>>2]|0)+28>>2]|0,(b[(c[U>>2]|0)+38>>1]|0)+1|0)|0)+1|0;c[V>>2]=e+(b[(c[E>>2]|0)+32>>1]|0);To(c[o>>2]|0,129,c[V>>2]|0,c[n>>2]|0)|0;if((b[(c[E>>2]|0)+32>>1]|0)>=0?(a[(c[(c[U>>2]|0)+4>>2]|0)+((b[(c[E>>2]|0)+32>>1]|0)*24|0)+21>>0]|0)==101:0){rr(c[o>>2]|0,39,c[n>>2]|0)|0}break};case 134:{c[W>>2]=(c[(c[E>>2]|0)+8>>2]|0)+2;c[X>>2]=(Mb(c[W>>2]|0)|0)-1;e=ps(c[o>>2]|0)|0;c[Y>>2]=rp(e,c[W>>2]|0,c[X>>2]|0)|0;Vo(c[o>>2]|0,30,(c[X>>2]|0)/2|0,c[n>>2]|0,0,c[Y>>2]|0,-1)|0;break};case 132:{Bs(c[j>>2]|0,c[E>>2]|0,0,c[n>>2]|0);break};case 133:{Cs(c[o>>2]|0,c[(c[E>>2]|0)+8>>2]|0,0,c[n>>2]|0);break};case 38:{c[m>>2]=zs(c[j>>2]|0,c[(c[E>>2]|0)+12>>2]|0,c[n>>2]|0)|0;c[_>>2]=(Tp(c[(c[E>>2]|0)+8>>2]|0,0)|0)<<24>>24;c[Z>>2]=(c[_>>2]|0)-97+143;if((c[m>>2]|0)!=(c[n>>2]|0)){To(c[o>>2]|0,34,c[m>>2]|0,c[n>>2]|0)|0;c[m>>2]=c[n>>2]}rr(c[o>>2]|0,c[Z>>2]|0,c[m>>2]|0)|0;Ds(c[j>>2]|0,c[m>>2]|0,1);break};case 97:{Vo(c[o>>2]|0,97,0,c[n>>2]|0,0,c[(c[E>>2]|0)+8>>2]|0,0)|0;break};case 156:{c[ba>>2]=c[(c[E>>2]|0)+40>>2];c[aa>>2]=(c[(c[ba>>2]|0)+28>>2]|0)+((b[(c[E>>2]|0)+34>>1]|0)*24|0);if((a[c[ba>>2]>>0]|0)==0){c[m>>2]=c[(c[aa>>2]|0)+16>>2];break a}if((a[(c[ba>>2]|0)+1>>0]|0)!=0){Wo(c[o>>2]|0,46,c[(c[ba>>2]|0)+8>>2]|0,c[(c[aa>>2]|0)+12>>2]|0,c[n>>2]|0)|0}else{h=11}break};case 135:{To(c[o>>2]|0,31,b[(c[E>>2]|0)+32>>1]|0,c[n>>2]|0)|0;if((a[(c[(c[E>>2]|0)+8>>2]|0)+1>>0]|0)!=0){Ye(c[o>>2]|0,-1,c[(c[(c[j>>2]|0)+472>>2]|0)+((b[(c[E>>2]|0)+32>>1]|0)-1<<2)>>2]|0,-2)}break};case 24:{c[m>>2]=zs(c[j>>2]|0,c[(c[E>>2]|0)+12>>2]|0,c[n>>2]|0)|0;break};case 101:{To(c[o>>2]|0,28,0,c[n>>2]|0)|0;break};default:{c[v>>2]=0;c[z>>2]=c[(c[E>>2]|0)+20>>2];c[t>>2]=c[(c[z>>2]|0)+4>>2];c[u>>2]=c[c[z>>2]>>2];c[r>>2]=fs(c[o>>2]|0)|0;e=c[(c[E>>2]|0)+12>>2]|0;c[x>>2]=e;if((e|0)!=0){D=A+0|0;C=(c[x>>2]|0)+0|0;B=D+48|0;do{c[D>>2]=c[C>>2];D=D+4|0;C=C+4|0}while((D|0)<(B|0));Is(A,rs(c[j>>2]|0,c[x>>2]|0,k)|0);a[w>>0]=79;c[w+12>>2]=A;c[v>>2]=w;c[k>>2]=0}c[y>>2]=0;while(1){if((c[y>>2]|0)>=((c[u>>2]|0)-1|0)){break}gs(c[j>>2]|0);A=c[(c[t>>2]|0)+((c[y>>2]|0)*20|0)>>2]|0;if((c[x>>2]|0)!=0){c[w+16>>2]=A}else{c[v>>2]=A}c[s>>2]=fs(c[o>>2]|0)|0;hs(c[j>>2]|0,c[v>>2]|0,c[s>>2]|0,8);ys(c[j>>2]|0,c[(c[t>>2]|0)+(((c[y>>2]|0)+1|0)*20|0)>>2]|0,c[n>>2]|0);To(c[o>>2]|0,16,0,c[r>>2]|0)|0;ds(c[j>>2]|0);cs(c[o>>2]|0,c[s>>2]|0);c[y>>2]=(c[y>>2]|0)+2}if((c[u>>2]&1|0)!=0){gs(c[j>>2]|0);ys(c[j>>2]|0,c[(c[(c[z>>2]|0)+4>>2]|0)+(((c[u>>2]|0)-1|0)*20|0)>>2]|0,c[n>>2]|0);ds(c[j>>2]|0)}else{To(c[o>>2]|0,28,0,c[n>>2]|0)|0}cs(c[o>>2]|0,c[r>>2]|0)}}}while(0);b:do{if((h|0)==11){c[ka>>2]=c[(c[E>>2]|0)+28>>2];do{if((c[ka>>2]|0)<0){if((c[(c[j>>2]|0)+92>>2]|0)>0){c[m>>2]=(b[(c[E>>2]|0)+32>>1]|0)+(c[(c[j>>2]|0)+92>>2]|0);break b}else{c[ka>>2]=c[(c[j>>2]|0)+96>>2];break}}}while(0);c[m>>2]=As(c[j>>2]|0,c[(c[E>>2]|0)+44>>2]|0,b[(c[E>>2]|0)+32>>1]|0,c[ka>>2]|0,c[n>>2]|0,a[(c[E>>2]|0)+38>>0]|0)|0}}while(0);_o(c[j>>2]|0,c[k>>2]|0);_o(c[j>>2]|0,c[l>>2]|0);c[p>>2]=c[m>>2];e=c[p>>2]|0;i=q;return e|0}function As(d,e,f,g,h,j){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;n=i;i=i+48|0;m=n+32|0;q=n+28|0;k=n+24|0;s=n+20|0;r=n+16|0;t=n+12|0;p=n+36|0;o=n+8|0;v=n+4|0;u=n;c[q>>2]=d;c[k>>2]=e;c[s>>2]=f;c[r>>2]=g;c[t>>2]=h;a[p>>0]=j;c[o>>2]=c[(c[q>>2]|0)+8>>2];c[v>>2]=0;c[u>>2]=(c[q>>2]|0)+116;while(1){if((c[v>>2]|0)>=10){break}if(((c[(c[u>>2]|0)+12>>2]|0)>0?(c[c[u>>2]>>2]|0)==(c[r>>2]|0):0)?(b[(c[u>>2]|0)+4>>1]|0)==(c[s>>2]|0):0){l=6;break}c[v>>2]=(c[v>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+20}if((l|0)==6){e=(c[q>>2]|0)+104|0;d=c[e>>2]|0;c[e>>2]=d+1;c[(c[u>>2]|0)+16>>2]=d;Ss(c[q>>2]|0,c[(c[u>>2]|0)+12>>2]|0);c[m>>2]=c[(c[u>>2]|0)+12>>2];d=c[m>>2]|0;i=n;return d|0}js(c[o>>2]|0,c[k>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0);if((a[p>>0]|0)!=0){Se(c[o>>2]|0,a[p>>0]|0)}else{Ts(c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0)}c[m>>2]=c[t>>2];d=c[m>>2]|0;i=n;return d|0}function Bs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+48|0;q=h+40|0;p=h+36|0;m=h+32|0;g=h+28|0;j=h+24|0;l=h+20|0;n=h+16|0;f=h;o=h+12|0;k=h+8|0;c[q>>2]=a;c[p>>2]=b;c[m>>2]=d;c[g>>2]=e;c[j>>2]=c[(c[q>>2]|0)+8>>2];e=(c[p>>2]|0)+8|0;if((c[(c[p>>2]|0)+4>>2]&1024|0)!=0){c[l>>2]=c[e>>2];if((c[m>>2]|0)!=0){c[l>>2]=0-(c[l>>2]|0)}To(c[j>>2]|0,25,c[l>>2]|0,c[g>>2]|0)|0;i=h;return}c[o>>2]=c[e>>2];q=c[o>>2]|0;c[n>>2]=kg(q,f,Mb(c[o>>2]|0)|0,1)|0;do{if((c[n>>2]|0)!=0){if((c[n>>2]|0)==2?(c[m>>2]|0)!=0:0){break}Cs(c[j>>2]|0,c[o>>2]|0,c[m>>2]|0,c[g>>2]|0);i=h;return}}while(0);if((c[m>>2]|0)!=0){if((c[n>>2]|0)==2){m=0;l=-2147483648}else{m=f;m=ZD(0,0,c[m>>2]|0,c[m+4>>2]|0)|0;l=D}q=f;c[q>>2]=m;c[q+4>>2]=l}c[k>>2]=Rs(c[j>>2]|0,f)|0;Vo(c[j>>2]|0,26,0,c[g>>2]|0,0,c[k>>2]|0,-13)|0;i=h;return}function Cs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;g=l+24|0;m=l+20|0;n=l+16|0;f=l+12|0;j=l;k=l+8|0;c[g>>2]=a;c[m>>2]=b;c[n>>2]=d;c[f>>2]=e;if((c[m>>2]|0)==0){i=l;return}a=c[m>>2]|0;Am(a,j,Mb(c[m>>2]|0)|0,1)|0;if((c[n>>2]|0)!=0){h[j>>3]=-+h[j>>3]}c[k>>2]=Rs(c[g>>2]|0,j)|0;Vo(c[g>>2]|0,133,0,c[f>>2]|0,0,c[k>>2]|0,-12)|0;i=l;return}function Ds(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;ms(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0);i=e;return}function Es(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Os(c[d>>2]|0,1)|0;i=b;return a|0}function Fs(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;r=i;i=i+48|0;n=r+36|0;v=r+32|0;q=r+28|0;u=r+41|0;t=r+24|0;h=r+20|0;k=r+16|0;o=r+40|0;p=r+12|0;s=r+8|0;m=r+4|0;l=r;c[n>>2]=b;c[v>>2]=e;c[q>>2]=f;a[u>>0]=g;a[o>>0]=(a[u>>0]&1|0)!=0?33:34;c[k>>2]=c[c[v>>2]>>2];if((a[(c[n>>2]|0)+23>>0]|0)==0){a[u>>0]=d[u>>0]&-3}c[t>>2]=c[(c[v>>2]|0)+4>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[k>>2]|0)){break}c[p>>2]=c[c[t>>2]>>2];if((a[u>>0]&2|0)!=0?(Es(c[p>>2]|0)|0)!=0:0){Ms(c[n>>2]|0,c[p>>2]|0,(c[q>>2]|0)+(c[h>>2]|0)|0,0)}else{j=8}do{if((j|0)==8?(j=0,c[s>>2]=zs(c[n>>2]|0,c[p>>2]|0,(c[q>>2]|0)+(c[h>>2]|0)|0)|0,(c[s>>2]|0)!=((c[q>>2]|0)+(c[h>>2]|0)|0)):0){c[l>>2]=c[(c[n>>2]|0)+8>>2];if((((d[o>>0]|0)==33?(b=Ns(c[l>>2]|0,-1)|0,c[m>>2]=b,(d[b>>0]|0)==33):0)?((c[(c[m>>2]|0)+4>>2]|0)+(c[(c[m>>2]|0)+12>>2]|0)+1|0)==(c[s>>2]|0):0)?((c[(c[m>>2]|0)+8>>2]|0)+(c[(c[m>>2]|0)+12>>2]|0)+1|0)==((c[q>>2]|0)+(c[h>>2]|0)|0):0){b=(c[m>>2]|0)+12|0;c[b>>2]=(c[b>>2]|0)+1;break}To(c[l>>2]|0,d[o>>0]|0,c[s>>2]|0,(c[q>>2]|0)+(c[h>>2]|0)|0)|0}}while(0);c[h>>2]=(c[h>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+20}i=r;return c[k>>2]|0}function Gs(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var 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;o=i;i=i+64|0;l=o+56|0;v=o+52|0;m=o+48|0;r=o+44|0;z=o+40|0;y=o+36|0;q=o+32|0;x=o+28|0;n=o+24|0;k=o+20|0;p=o+16|0;u=o+12|0;s=o+8|0;w=o+4|0;t=o;c[v>>2]=f;c[m>>2]=g;c[r>>2]=h;c[z>>2]=j;c[n>>2]=0;c[k>>2]=0;c[u>>2]=0;if((c[z>>2]|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}if((d[c[z>>2]>>0]|0)!=154){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}c[y>>2]=c[(c[z>>2]|0)+44>>2];if((c[y>>2]|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}if((a[(c[y>>2]|0)+44>>0]&16|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}c[q>>2]=c[(zp(c[v>>2]|0,c[y>>2]|0)|0)+8>>2];c[x>>2]=c[c[q>>2]>>2];if((c[(c[x>>2]|0)+72>>2]|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}c[s>>2]=he(c[v>>2]|0,c[(c[m>>2]|0)+24>>2]|0)|0;if((c[s>>2]|0)!=0){c[w>>2]=c[s>>2];while(1){if((a[c[w>>2]>>0]|0)==0){break}a[c[w>>2]>>0]=a[696+(d[c[w>>2]>>0]|0)>>0]|0;c[w>>2]=(c[w>>2]|0)+1}z=c[(c[x>>2]|0)+72>>2]|0;h=c[q>>2]|0;g=c[r>>2]|0;f=c[s>>2]|0;c[t>>2]=n;c[u>>2]=Ab[z&15](h,g,f,c[t>>2]|0,k)|0;Wb(c[v>>2]|0,c[s>>2]|0)}if((c[u>>2]|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}f=c[v>>2]|0;c[p>>2]=ne(f,37+(Mb(c[(c[m>>2]|0)+24>>2]|0)|0)|0)|0;if((c[p>>2]|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}else{s=(c[p>>2]|0)+0|0;r=(c[m>>2]|0)+0|0;q=s+36|0;do{c[s>>2]=c[r>>2];s=s+4|0;r=r+4|0}while((s|0)<(q|0));c[(c[p>>2]|0)+24>>2]=(c[p>>2]|0)+36;g=c[(c[p>>2]|0)+24>>2]|0;f=c[(c[m>>2]|0)+24>>2]|0;dE(g|0,f|0,(Mb(c[(c[m>>2]|0)+24>>2]|0)|0)+1|0)|0;c[(c[p>>2]|0)+12>>2]=c[n>>2];c[(c[p>>2]|0)+4>>2]=c[k>>2];f=(c[p>>2]|0)+2|0;b[f>>1]=e[f>>1]|16;c[l>>2]=c[p>>2];f=c[l>>2]|0;i=o;return f|0}return 0}function Hs(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;A=i;i=i+144|0;I=A;k=A+136|0;l=A+132|0;t=A+128|0;F=A+124|0;w=A+120|0;o=A+116|0;m=A+112|0;n=A+108|0;J=A+104|0;h=A+140|0;p=A+100|0;E=A+96|0;q=A+92|0;C=A+72|0;D=A+68|0;y=A+64|0;B=A+60|0;x=A+56|0;r=A+52|0;s=A+48|0;z=A+44|0;v=A+40|0;u=A+36|0;H=A+32|0;G=A+12|0;c[l>>2]=b;c[t>>2]=e;c[F>>2]=f;c[w>>2]=g;c[o>>2]=-1;c[m>>2]=0;c[n>>2]=Ro(c[l>>2]|0)|0;if((c[n>>2]|0)==0){c[k>>2]=0;b=c[k>>2]|0;i=A;return b|0}gs(c[l>>2]|0);if((c[(c[t>>2]|0)+4>>2]&32|0)==0){c[o>>2]=Js(c[l>>2]|0)|0}if((d[(c[l>>2]|0)+450>>0]|0)==2){b=c[c[l>>2]>>2]|0;f=(d[c[t>>2]>>0]|0)==75?19200:19208;e=c[(c[l>>2]|0)+468>>2]|0;c[I>>2]=(c[o>>2]|0)>=0?1472:19184;c[I+4>>2]=f;c[I+8>>2]=e;c[J>>2]=Oe(b,19152,I)|0;Vo(c[n>>2]|0,157,c[(c[l>>2]|0)+464>>2]|0,0,0,c[J>>2]|0,-1)|0}I=c[t>>2]|0;do{if((d[c[t>>2]>>0]|0)==75){c[E>>2]=c[I+12>>2];c[q>>2]=0;if((c[F>>2]|0)!=0){To(c[n>>2]|0,28,0,c[F>>2]|0)|0}a[h>>0]=Lp(c[E>>2]|0)|0;e=(c[l>>2]|0)+68|0;b=c[e>>2]|0;c[e>>2]=b+1;c[(c[t>>2]|0)+28>>2]=b;c[p>>2]=To(c[n>>2]|0,55,c[(c[t>>2]|0)+28>>2]|0,((c[w>>2]|0)!=0^1)&1)|0;if((c[w>>2]|0)!=0){E=0}else{E=Er(c[c[l>>2]>>2]|0,1,1)|0}c[q>>2]=E;E=c[t>>2]|0;do{if((c[(c[t>>2]|0)+4>>2]&2048|0)==0){if((c[E+20>>2]|0)!=0){c[B>>2]=c[(c[t>>2]|0)+20>>2];if((a[h>>0]|0)==0){a[h>>0]=98}if((c[q>>2]|0)!=0){b=Mp(c[l>>2]|0,c[(c[t>>2]|0)+12>>2]|0)|0;c[(c[q>>2]|0)+20>>2]=b}c[r>>2]=Zo(c[l>>2]|0)|0;c[s>>2]=Zo(c[l>>2]|0)|0;To(c[n>>2]|0,28,0,c[s>>2]|0)|0;c[y>>2]=c[c[B>>2]>>2];c[x>>2]=c[(c[B>>2]|0)+4>>2];while(1){if((c[y>>2]|0)<=0){break}c[v>>2]=c[c[x>>2]>>2];if((c[o>>2]|0)>=0?(Es(c[v>>2]|0)|0)==0:0){Ze(c[n>>2]|0,c[o>>2]|0);c[o>>2]=-1}if((c[w>>2]|0)!=0?(hq(c[v>>2]|0,u)|0)!=0:0){Wo(c[n>>2]|0,73,c[(c[t>>2]|0)+28>>2]|0,c[s>>2]|0,c[u>>2]|0)|0}else{j=29}do{if((j|0)==29){j=0;c[z>>2]=zs(c[l>>2]|0,c[v>>2]|0,c[r>>2]|0)|0;C=c[n>>2]|0;B=c[z>>2]|0;if((c[w>>2]|0)!=0){To(C,38,B,(vr(c[n>>2]|0)|0)+2|0)|0;Wo(c[n>>2]|0,70,c[(c[t>>2]|0)+28>>2]|0,c[s>>2]|0,c[z>>2]|0)|0;break}else{Vo(C,48,B,1,c[s>>2]|0,h,1)|0;Ds(c[l>>2]|0,c[z>>2]|0,1);To(c[n>>2]|0,107,c[(c[t>>2]|0)+28>>2]|0,c[s>>2]|0)|0;break}}}while(0);c[y>>2]=(c[y>>2]|0)+ -1;c[x>>2]=(c[x>>2]|0)+20}_o(c[l>>2]|0,c[r>>2]|0);_o(c[l>>2]|0,c[s>>2]|0)}}else{Ks(C,11,c[E+28>>2]|0);a[C+1>>0]=a[h>>0]|0;c[(c[(c[t>>2]|0)+20>>2]|0)+8>>2]=0;if((On(c[l>>2]|0,c[(c[t>>2]|0)+20>>2]|0,C)|0)==0){c[D>>2]=c[c[(c[t>>2]|0)+20>>2]>>2];b=Ls(c[l>>2]|0,c[(c[t>>2]|0)+12>>2]|0,c[c[(c[D>>2]|0)+4>>2]>>2]|0)|0;c[(c[q>>2]|0)+20>>2]=b;break}Zg(c[q>>2]|0);c[k>>2]=0;b=c[k>>2]|0;i=A;return b|0}}while(0);if((c[q>>2]|0)!=0){Ye(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,-6)}}else{c[H>>2]=c[I+20>>2];e=(c[l>>2]|0)+72|0;b=(c[e>>2]|0)+1|0;c[e>>2]=b;Ks(G,0,b);if((d[c[t>>2]>>0]|0)==119){a[G>>0]=10;To(c[n>>2]|0,28,0,c[G+4>>2]|0)|0}else{a[G>>0]=3;To(c[n>>2]|0,25,0,c[G+4>>2]|0)|0}hn(c[c[l>>2]>>2]|0,c[(c[H>>2]|0)+60>>2]|0);b=Dn(c[l>>2]|0,132,0,0,10064|0)|0;c[(c[H>>2]|0)+60>>2]=b;c[(c[H>>2]|0)+8>>2]=0;if((On(c[l>>2]|0,c[H>>2]|0,G)|0)==0){c[m>>2]=c[G+4>>2];break}c[k>>2]=0;b=c[k>>2]|0;i=A;return b|0}}while(0);if((c[o>>2]|0)>=0){mp(c[n>>2]|0,c[o>>2]|0)}ds(c[l>>2]|0);c[k>>2]=c[m>>2];b=c[k>>2]|0;i=A;return b|0}function Is(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[(c[f>>2]|0)+38>>0]=a[c[f>>2]>>0]|0;a[c[f>>2]>>0]=-97;c[(c[f>>2]|0)+28>>2]=c[g>>2];b=(c[f>>2]|0)+4|0;c[b>>2]=c[b>>2]&-4097;i=e;return}function Js(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=Ro(c[e>>2]|0)|0;d=c[d>>2]|0;e=(c[e>>2]|0)+80|0;a=c[e>>2]|0;c[e>>2]=a+1;a=rr(d,43,a)|0;i=b;return a|0}function Ks(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;j=f+4|0;h=f;c[g>>2]=b;c[j>>2]=d;c[h>>2]=e;a[c[g>>2]>>0]=c[j>>2];c[(c[g>>2]|0)+4>>2]=c[h>>2];a[(c[g>>2]|0)+1>>0]=0;c[(c[g>>2]|0)+8>>2]=0;c[(c[g>>2]|0)+12>>2]=0;i=f;return}function Ls(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e+12|0;g=e+8|0;j=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[j>>2]=d;if((c[(c[g>>2]|0)+4>>2]&256|0)!=0){c[f>>2]=Mp(c[h>>2]|0,c[g>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}if((c[j>>2]|0)!=0?(c[(c[j>>2]|0)+4>>2]&256|0)!=0:0){c[f>>2]=Mp(c[h>>2]|0,c[j>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}c[f>>2]=Mp(c[h>>2]|0,c[g>>2]|0)|0;if((c[f>>2]|0)!=0){a=c[f>>2]|0;i=e;return a|0}c[f>>2]=Mp(c[h>>2]|0,c[j>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0} - - - -function Yy(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+32|0;h=l+28|0;o=l+24|0;j=l+20|0;k=l;m=l+16|0;n=l+12|0;p=l+8|0;c[o>>2]=f;c[j>>2]=g;f=k;c[f>>2]=0;c[f+4>>2]=0;if((c[(c[o>>2]|0)+68>>2]|0)==0){f=c[j>>2]|0;c[f>>2]=0;c[f+4>>2]=0;c[h>>2]=0;f=c[h>>2]|0;i=l;return f|0}c[m>>2]=ow(c[o>>2]|0)|0;a:while(1){if((c[m>>2]|0)!=0){n=16;break}c[p>>2]=c[(c[o>>2]|0)+128+(b[(c[o>>2]|0)+84>>1]<<2)>>2];if(!((d[(c[p>>2]|0)+3>>0]|0)==0?(a[(c[p>>2]|0)+2>>0]|0)!=0:0)){g=k;g=bE(c[g>>2]|0,c[g+4>>2]|0,e[(c[p>>2]|0)+16>>1]|0,0)|0;f=k;c[f>>2]=g;c[f+4>>2]=D}if((a[(c[p>>2]|0)+3>>0]|0)!=0){do{if((b[(c[o>>2]|0)+84>>1]|0)==0){n=10;break a}ew(c[o>>2]|0)}while((e[(c[o>>2]|0)+86+(b[(c[o>>2]|0)+84>>1]<<1)>>1]|0)>=(e[(c[(c[o>>2]|0)+128+(b[(c[o>>2]|0)+84>>1]<<2)>>2]|0)+16>>1]|0));f=(c[o>>2]|0)+86+(b[(c[o>>2]|0)+84>>1]<<1)|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;c[p>>2]=c[(c[o>>2]|0)+128+(b[(c[o>>2]|0)+84>>1]<<2)>>2]}c[n>>2]=e[(c[o>>2]|0)+86+(b[(c[o>>2]|0)+84>>1]<<1)>>1]|0;f=c[o>>2]|0;g=c[p>>2]|0;if((c[n>>2]|0)==(e[(c[p>>2]|0)+16>>1]|0)){c[m>>2]=cw(f,Ah((c[(c[p>>2]|0)+56>>2]|0)+((d[g+5>>0]|0)+8)|0)|0)|0;continue}else{c[m>>2]=cw(f,Ah((c[g+56>>2]|0)+(e[(c[p>>2]|0)+18>>1]&(d[(c[(c[p>>2]|0)+64>>2]|0)+(c[n>>2]<<1)>>0]<<8|d[(c[(c[p>>2]|0)+64>>2]|0)+(c[n>>2]<<1)+1>>0]))|0)|0)|0;continue}}if((n|0)==10){p=k;g=c[p+4>>2]|0;f=c[j>>2]|0;c[f>>2]=c[p>>2];c[f+4>>2]=g;c[h>>2]=0;f=c[h>>2]|0;i=l;return f|0}else if((n|0)==16){c[h>>2]=c[m>>2];f=c[h>>2]|0;i=l;return f|0}return 0}function Zy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;m=f+28|0;g=f+24|0;k=f+20|0;e=f+16|0;n=f+12|0;j=f+8|0;l=f+4|0;h=f;c[m>>2]=a;c[g>>2]=b;c[k>>2]=d;c[e>>2]=0;if((c[(c[m>>2]|0)+320>>2]|0)==0){a=c[e>>2]|0;i=f;return a|0}c[n>>2]=0;while(1){if((c[e>>2]|0)!=0){g=15;break}if((c[n>>2]|0)>=(c[(c[m>>2]|0)+296>>2]|0)){g=15;break}c[j>>2]=c[(c[(c[m>>2]|0)+320>>2]|0)+(c[n>>2]<<2)>>2];c[l>>2]=c[c[(c[j>>2]|0)+4>>2]>>2];if((c[(c[j>>2]|0)+8>>2]|0)!=0?(c[c[l>>2]>>2]|0)>=2:0){d=c[g>>2]|0;if((d|0)==2){c[h>>2]=c[(c[l>>2]|0)+88>>2]}else if((d|0)==0){c[h>>2]=c[(c[l>>2]|0)+80>>2];c[(c[j>>2]|0)+20>>2]=(c[k>>2]|0)+1}else{c[h>>2]=c[(c[l>>2]|0)+84>>2]}if((c[h>>2]|0)!=0?(c[(c[j>>2]|0)+20>>2]|0)>(c[k>>2]|0):0){c[e>>2]=zb[c[h>>2]&63](c[(c[j>>2]|0)+8>>2]|0,c[k>>2]|0)|0}}c[n>>2]=(c[n>>2]|0)+1}if((g|0)==15){a=c[e>>2]|0;i=f;return a|0}return 0}function _y(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;h=f+8|0;g=f+4|0;j=f;c[k>>2]=d;c[h>>2]=e;if((c[k>>2]|0)==0){i=f;return}Mc(c[k>>2]|0);c[g>>2]=c[(c[(c[k>>2]|0)+4>>2]|0)+8>>2];while(1){if((c[g>>2]|0)==0){break}Gk(c[g>>2]|0);a[(c[g>>2]|0)+81>>0]=4;c[(c[g>>2]|0)+76>>2]=c[h>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>(b[(c[g>>2]|0)+84>>1]|0)){break}Hk(c[(c[g>>2]|0)+128+(c[j>>2]<<2)>>2]|0);c[(c[g>>2]|0)+128+(c[j>>2]<<2)>>2]=0;c[j>>2]=(c[j>>2]|0)+1}c[g>>2]=c[(c[g>>2]|0)+8>>2]}i=f;return}function $y(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;j=g+16|0;l=g+12|0;m=g+8|0;h=g+4|0;k=g;c[j>>2]=a;c[l>>2]=e;c[m>>2]=f;c[h>>2]=0;if((c[j>>2]|0)==0){a=c[h>>2]|0;i=g;return a|0}if((d[(c[j>>2]|0)+8>>0]|0|0)!=2){a=c[h>>2]|0;i=g;return a|0}c[k>>2]=c[(c[j>>2]|0)+4>>2];Mc(c[j>>2]|0);c[h>>2]=mi(c[c[k>>2]>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if((c[h>>2]|0)!=0){a=c[h>>2]|0;i=g;return a|0}if((c[m>>2]|0)<0?(b[(c[k>>2]|0)+22>>1]&8|0)!=0:0){c[(c[k>>2]|0)+44>>2]=0}c[h>>2]=UB(c[k>>2]|0)|0;a=Ah((c[(c[(c[k>>2]|0)+12>>2]|0)+56>>2]|0)+28|0)|0;c[(c[k>>2]|0)+44>>2]=a;a=c[h>>2]|0;i=g;return a|0}function az(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+12|0;f=e+8|0;d=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[h>>2]|0)+4>>2];Mc(c[h>>2]|0);c[d>>2]=SB(c[c[g>>2]>>2]|0,c[f>>2]|0)|0;i=e;return c[d>>2]|0}function bz(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+32|0;q=j+28|0;r=j+24|0;l=j+20|0;k=j+16|0;m=j+12|0;n=j+8|0;p=j+4|0;o=j;c[q>>2]=d;c[r>>2]=e;c[l>>2]=f;c[k>>2]=g;c[m>>2]=h;c[n>>2]=(c[(c[q>>2]|0)+8>>2]|0)+(((c[(c[q>>2]|0)+28>>2]|0)-(c[r>>2]|0)|0)*40|0);c[o>>2]=0;g=96+(c[l>>2]<<3)|0;if((c[m>>2]|0)!=0){h=QB()|0}else{h=0}c[p>>2]=g+h;if((c[(c[(c[q>>2]|0)+56>>2]|0)+(c[r>>2]<<2)>>2]|0)!=0){gz(c[q>>2]|0,c[(c[(c[q>>2]|0)+56>>2]|0)+(c[r>>2]<<2)>>2]|0);c[(c[(c[q>>2]|0)+56>>2]|0)+(c[r>>2]<<2)>>2]=0}if(0!=(me(c[n>>2]|0,c[p>>2]|0,0)|0)){d=c[o>>2]|0;i=j;return d|0}p=c[(c[n>>2]|0)+4>>2]|0;c[o>>2]=p;c[(c[(c[q>>2]|0)+56>>2]|0)+(c[r>>2]<<2)>>2]=p;q=(c[o>>2]|0)+0|0;p=q+96|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(p|0));a[(c[o>>2]|0)+24>>0]=c[k>>2];b[(c[o>>2]|0)+20>>1]=c[l>>2];if((c[m>>2]|0)==0){d=c[o>>2]|0;i=j;return d|0}c[c[o>>2]>>2]=(c[(c[n>>2]|0)+4>>2]|0)+(96+(c[l>>2]<<3));RB(c[c[o>>2]>>2]|0);d=c[o>>2]|0;i=j;return d|0}function cz(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;n=h+20|0;m=h+16|0;l=h+12|0;k=h+8|0;j=h+4|0;g=h;c[n>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;Mc(c[n>>2]|0);c[g>>2]=PB(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;i=h;return c[g>>2]|0}function dz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[(c[f>>2]|0)+82>>0]=c[g>>2];i=e;return}function ez(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+12|0;h=f+8|0;g=f+4|0;e=f;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;Mc(c[j>>2]|0);c[e>>2]=OB(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return c[e>>2]|0}function fz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;k=d+16|0;g=d+12|0;j=d+8|0;h=d+4|0;c[f>>2]=a;c[k>>2]=b;a=ne(c[f>>2]|0,56)|0;c[h>>2]=a;c[(c[k>>2]|0)+64>>2]=a;if((c[h>>2]|0)==0){c[e>>2]=7;a=c[e>>2]|0;i=d;return a|0}a=kw(c[(c[k>>2]|0)+8>>2]|0,0,0,d)|0;c[(c[h>>2]|0)+52>>2]=a;if((c[(c[h>>2]|0)+52>>2]|0)==0){c[e>>2]=7;a=c[e>>2]|0;i=d;return a|0}if((qh(c[f>>2]|0)|0)==0){c[g>>2]=Rc(c[(c[(c[f>>2]|0)+16>>2]|0)+4>>2]|0)|0;c[(c[h>>2]|0)+28>>2]=(c[g>>2]|0)*10;a=c[(c[(c[(c[f>>2]|0)+16>>2]|0)+12>>2]|0)+80>>2]|0;c[j>>2]=a;c[j>>2]=(c[j>>2]|0)<10?10:a;a=$(c[j>>2]|0,c[g>>2]|0)|0;c[(c[h>>2]|0)+32>>2]=a}c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}function gz(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;f=e+8|0;g=e+4|0;h=e;c[j>>2]=a;c[f>>2]=d;if((c[f>>2]|0)==0){i=e;return}NB(c[c[j>>2]>>2]|0,c[f>>2]|0);d=c[f>>2]|0;if((c[(c[f>>2]|0)+4>>2]|0)==0){if((c[d>>2]|0)!=0){Ek(c[c[f>>2]>>2]|0)|0}}else{Ak(c[d+4>>2]|0)|0}if((c[(c[f>>2]|0)+32>>2]|0)==0){i=e;return}c[g>>2]=c[(c[f>>2]|0)+32>>2];c[h>>2]=c[c[c[g>>2]>>2]>>2];a=(c[j>>2]|0)+88|0;b[a>>1]=b[a>>1]&-13|4;ub[c[(c[h>>2]|0)+28>>2]&31](c[g>>2]|0)|0;a=(c[j>>2]|0)+88|0;b[a>>1]=b[a>>1]&-13;i=e;return}function hz(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return 1!=(d[(c[b>>2]|0)+81>>0]|0|0)|0}function iz(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;j=f+8|0;k=f+4|0;h=f;c[j>>2]=b;c[k>>2]=e;if(1==(d[(c[j>>2]|0)+81>>0]|0|0)?(a[(c[j>>2]|0)+80>>0]&8|0)!=0:0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}c[h>>2]=ow(c[j>>2]|0)|0;do{if((c[h>>2]|0)==0){e=c[k>>2]|0;if(0==(d[(c[j>>2]|0)+81>>0]|0|0)){c[e>>2]=1;break}c[e>>2]=0;c[h>>2]=dw(c[j>>2]|0)|0;j=(c[j>>2]|0)+80|0;e=d[j>>0]|0;if((c[h>>2]|0)==0){a[j>>0]=e|8;break}else{a[j>>0]=e&-9;break}}}while(0);c[g>>2]=c[h>>2];b=c[g>>2]|0;i=f;return b|0}function jz(f,g,h,j,k,l,m,n,o){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0;C=i;i=i+80|0;q=C+72|0;r=C+68|0;A=C+64|0;z=C;B=C+60|0;p=C+56|0;E=C+52|0;H=C+48|0;J=C+44|0;s=C+40|0;y=C+36|0;F=C+32|0;w=C+28|0;t=C+24|0;I=C+20|0;G=C+16|0;u=C+12|0;x=C+8|0;v=C+76|0;c[r>>2]=f;c[A>>2]=g;f=z;c[f>>2]=h;c[f+4>>2]=j;c[B>>2]=k;c[p>>2]=l;c[E>>2]=m;c[H>>2]=n;c[J>>2]=o;c[y>>2]=c[J>>2];c[F>>2]=0;c[I>>2]=c[c[r>>2]>>2];c[G>>2]=c[(c[I>>2]|0)+4>>2];c[x>>2]=0;if((d[(c[r>>2]|0)+81>>0]|0)==4){c[q>>2]=c[(c[r>>2]|0)+76>>2];J=c[q>>2]|0;i=C;return J|0}c[s>>2]=ky(c[G>>2]|0,c[(c[r>>2]|0)+68>>2]|0,c[r>>2]|0)|0;if((c[s>>2]|0)!=0){c[q>>2]=c[s>>2];J=c[q>>2]|0;i=C;return J|0}if((((c[(c[r>>2]|0)+16>>2]|0)==0?(J=z,WA(c[I>>2]|0,c[J>>2]|0,c[J+4>>2]|0,0),(a[(c[r>>2]|0)+80>>0]&2|0)!=0):0)?(J=z,f=c[J+4>>2]|0,(f|0)>0|(f|0)==0&(c[J>>2]|0)>>>0>0):0)?(J=(c[r>>2]|0)+24|0,g=c[J>>2]|0,J=c[J+4>>2]|0,f=z,f=ZD(c[f>>2]|0,c[f+4>>2]|0,1,0)|0,(g|0)==(f|0)&(J|0)==(D|0)):0){c[y>>2]=-1}if((c[y>>2]|0)==0?(J=z,c[s>>2]=jw(c[r>>2]|0,c[A>>2]|0,c[J>>2]|0,c[J+4>>2]|0,c[H>>2]|0,y)|0,(c[s>>2]|0)!=0):0){c[q>>2]=c[s>>2];J=c[q>>2]|0;i=C;return J|0}c[t>>2]=c[(c[r>>2]|0)+128+(b[(c[r>>2]|0)+84>>1]<<2)>>2];zB(c[G>>2]|0);c[x>>2]=c[(c[G>>2]|0)+80>>2];if((c[x>>2]|0)==0){c[q>>2]=7;J=c[q>>2]|0;i=C;return J|0}J=z;c[s>>2]=MB(c[t>>2]|0,c[x>>2]|0,c[A>>2]|0,c[J>>2]|0,c[J+4>>2]|0,c[B>>2]|0,c[p>>2]|0,c[E>>2]|0,F)|0;do{if((c[s>>2]|0)==0){c[w>>2]=e[(c[r>>2]|0)+86+(b[(c[r>>2]|0)+84>>1]<<1)>>1]|0;if((c[y>>2]|0)==0){c[s>>2]=dd(c[(c[t>>2]|0)+68>>2]|0)|0;if((c[s>>2]|0)!=0){break}c[u>>2]=(c[(c[t>>2]|0)+56>>2]|0)+(e[(c[t>>2]|0)+18>>1]&(d[(c[(c[t>>2]|0)+64>>2]|0)+(c[w>>2]<<1)>>0]<<8|d[(c[(c[t>>2]|0)+64>>2]|0)+(c[w>>2]<<1)+1>>0]));if((a[(c[t>>2]|0)+3>>0]|0)==0){J=c[x>>2]|0;f=c[u>>2]|0;a[J+0>>0]=a[f+0>>0]|0;a[J+1>>0]=a[f+1>>0]|0;a[J+2>>0]=a[f+2>>0]|0;a[J+3>>0]=a[f+3>>0]|0}b[v>>1]=SA(c[t>>2]|0,c[u>>2]|0)|0;c[s>>2]=YA(c[t>>2]|0,c[u>>2]|0)|0;yB(c[t>>2]|0,c[w>>2]|0,e[v>>1]|0,s);if((c[s>>2]|0)!=0){break}}else{if((c[y>>2]|0)<0?(e[(c[t>>2]|0)+16>>1]|0)>0:0){f=(c[r>>2]|0)+86+(b[(c[r>>2]|0)+84>>1]<<1)|0;J=(b[f>>1]|0)+1<<16>>16;b[f>>1]=J;c[w>>2]=J&65535}}AB(c[t>>2]|0,c[w>>2]|0,c[x>>2]|0,c[F>>2]|0,0,0,s);b[(c[r>>2]|0)+50>>1]=0;if((c[s>>2]|0)==0?(d[(c[t>>2]|0)+1>>0]|0)!=0:0){J=(c[r>>2]|0)+80|0;a[J>>0]=d[J>>0]&-3;c[s>>2]=BB(c[r>>2]|0)|0;a[(c[(c[r>>2]|0)+128+(b[(c[r>>2]|0)+84>>1]<<2)>>2]|0)+1>>0]=0;a[(c[r>>2]|0)+81>>0]=0}}}while(0);c[q>>2]=c[s>>2];J=c[q>>2]|0;i=C;return J|0}function kz(f){f=f|0;var g=0,h=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;h=i;i=i+64|0;g=h+52|0;j=h+48|0;u=h+44|0;q=h+40|0;l=h+36|0;s=h+32|0;m=h+28|0;t=h+24|0;k=h+20|0;v=h+16|0;o=h+12|0;p=h+8|0;n=h+4|0;r=h;c[j>>2]=f;c[u>>2]=c[c[j>>2]>>2];c[q>>2]=c[(c[u>>2]|0)+4>>2];if((e[(c[j>>2]|0)+86+(b[(c[j>>2]|0)+84>>1]<<1)>>1]|0)<(e[(c[(c[j>>2]|0)+128+(b[(c[j>>2]|0)+84>>1]<<2)>>2]|0)+16>>1]|0)?(d[(c[j>>2]|0)+81>>0]|0)==1:0){c[k>>2]=b[(c[j>>2]|0)+84>>1]|0;c[t>>2]=e[(c[j>>2]|0)+86+(c[k>>2]<<1)>>1]|0;c[s>>2]=c[(c[j>>2]|0)+128+(c[k>>2]<<2)>>2];c[m>>2]=(c[(c[s>>2]|0)+56>>2]|0)+(e[(c[s>>2]|0)+18>>1]&(d[(c[(c[s>>2]|0)+64>>2]|0)+(c[t>>2]<<1)>>0]<<8|d[(c[(c[s>>2]|0)+64>>2]|0)+(c[t>>2]<<1)+1>>0]));if((a[(c[s>>2]|0)+3>>0]|0)==0?(c[v>>2]=0,c[l>>2]=aw(c[j>>2]|0,v)|0,(c[l>>2]|0)!=0):0){c[g>>2]=c[l>>2];v=c[g>>2]|0;i=h;return v|0}c[l>>2]=ky(c[q>>2]|0,c[(c[j>>2]|0)+68>>2]|0,c[j>>2]|0)|0;if((c[l>>2]|0)!=0){c[g>>2]=c[l>>2];v=c[g>>2]|0;i=h;return v|0}if((c[(c[j>>2]|0)+16>>2]|0)==0){v=(c[j>>2]|0)+24|0;WA(c[u>>2]|0,c[v>>2]|0,c[v+4>>2]|0,0)}c[l>>2]=dd(c[(c[s>>2]|0)+68>>2]|0)|0;if((c[l>>2]|0)!=0){c[g>>2]=c[l>>2];v=c[g>>2]|0;i=h;return v|0}c[l>>2]=YA(c[s>>2]|0,c[m>>2]|0)|0;u=c[s>>2]|0;v=c[t>>2]|0;yB(u,v,(SA(c[s>>2]|0,c[m>>2]|0)|0)&65535,l);if((c[l>>2]|0)!=0){c[g>>2]=c[l>>2];v=c[g>>2]|0;i=h;return v|0}if((a[(c[s>>2]|0)+3>>0]|0)==0?(c[o>>2]=c[(c[j>>2]|0)+128+(b[(c[j>>2]|0)+84>>1]<<2)>>2],c[n>>2]=c[(c[(c[j>>2]|0)+128+((c[k>>2]|0)+1<<2)>>2]|0)+72>>2],c[m>>2]=(c[(c[o>>2]|0)+56>>2]|0)+(e[(c[o>>2]|0)+18>>1]&(d[(c[(c[o>>2]|0)+64>>2]|0)+((e[(c[o>>2]|0)+16>>1]|0)-1<<1)>>0]<<8|d[(c[(c[o>>2]|0)+64>>2]|0)+((e[(c[o>>2]|0)+16>>1]|0)-1<<1)+1>>0])),c[p>>2]=(SA(c[o>>2]|0,c[m>>2]|0)|0)&65535,zB(c[q>>2]|0),c[r>>2]=c[(c[q>>2]|0)+80>>2],c[l>>2]=dd(c[(c[o>>2]|0)+68>>2]|0)|0,AB(c[s>>2]|0,c[t>>2]|0,(c[m>>2]|0)+ -4|0,(c[p>>2]|0)+4|0,c[r>>2]|0,c[n>>2]|0,l),yB(c[o>>2]|0,(e[(c[o>>2]|0)+16>>1]|0)-1|0,c[p>>2]|0,l),(c[l>>2]|0)!=0):0){c[g>>2]=c[l>>2];v=c[g>>2]|0;i=h;return v|0}c[l>>2]=BB(c[j>>2]|0)|0;if((c[l>>2]|0)==0?(b[(c[j>>2]|0)+84>>1]|0)>(c[k>>2]|0):0){while(1){m=c[j>>2]|0;if((b[(c[j>>2]|0)+84>>1]|0)<=(c[k>>2]|0)){break}u=m+84|0;v=b[u>>1]|0;b[u>>1]=v+ -1<<16>>16;Hk(c[(c[j>>2]|0)+128+(v<<16>>16<<2)>>2]|0)}c[l>>2]=BB(m)|0}if((c[l>>2]|0)==0){ow(c[j>>2]|0)|0}c[g>>2]=c[l>>2];v=c[g>>2]|0;i=h;return v|0}c[g>>2]=1;v=c[g>>2]|0;i=h;return v|0}function lz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;m=f+24|0;k=f+20|0;l=f+16|0;g=f+12|0;n=f+8|0;j=f+4|0;h=f;c[m>>2]=a;c[k>>2]=b;c[l>>2]=d;c[g>>2]=e;c[n>>2]=c[(c[m>>2]|0)+64>>2];c[j>>2]=xB(c[n>>2]|0,h)|0;qB(c[m>>2]|0,c[l>>2]|0,c[(c[k>>2]|0)+4>>2]|0,c[(c[k>>2]|0)+24>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0);i=f;return 0}function mz(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;m=f+16|0;k=f+12|0;l=f+8|0;j=f+4|0;h=f;c[m>>2]=a;c[k>>2]=d;c[l>>2]=c[(c[m>>2]|0)+64>>2];c[j>>2]=xB(c[l>>2]|0,h)|0;if((me(c[k>>2]|0,c[h>>2]|0,0)|0)!=0){c[g>>2]=7;m=c[g>>2]|0;i=f;return m|0}else{c[(c[k>>2]|0)+24>>2]=c[h>>2];b[(c[k>>2]|0)+28>>1]=(e[(c[k>>2]|0)+28>>1]|0)&-16896|16;dE(c[(c[k>>2]|0)+4>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;c[g>>2]=0;m=c[g>>2]|0;i=f;return m|0}return 0}function nz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;e=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c[g>>2]=c[c[f>>2]>>2];Wb(c[g>>2]|0,c[(c[f>>2]|0)+44>>2]|0);a=he(c[g>>2]|0,c[(c[e>>2]|0)+8>>2]|0)|0;c[(c[f>>2]|0)+44>>2]=a;gc(c[(c[e>>2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>>2]=0;i=d;return}function oz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=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;q=i;i=i+128|0;o=q+112|0;p=q+108|0;g=q+104|0;h=q+100|0;j=q+96|0;k=q+92|0;l=q+88|0;e=q+48|0;x=q+84|0;w=q+80|0;v=q+76|0;n=q+72|0;t=q+68|0;s=q+8|0;f=q;r=q+64|0;u=q+60|0;m=q+56|0;c[p>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[(c[g>>2]|0)+64>>2];c[l>>2]=0;a=e;c[a>>2]=0;c[a+4>>2]=0;c[v>>2]=2;if((c[(c[j>>2]|0)+24>>2]|0)==0){c[c[h>>2]>>2]=((c[(c[j>>2]|0)+48>>2]|0)!=0^1)&1;c[o>>2]=hB(c[g>>2]|0)|0;a=c[o>>2]|0;i=q;return a|0}c[k>>2]=gB(c[p>>2]|0,c[g>>2]|0)|0;if((c[k>>2]|0)!=0){c[o>>2]=c[k>>2];a=c[o>>2]|0;i=q;return a|0}a=c[(c[j>>2]|0)+24>>2]|0;c[x>>2]=a;c[x>>2]=(c[x>>2]|0)>16?16:a;while(1){d=c[v>>2]|0;if((c[v>>2]|0)>=(c[x>>2]|0)){break}c[v>>2]=(c[v>>2]|0)+d}c[w>>2]=d*52;a=ne(c[p>>2]|0,c[w>>2]|0)|0;c[(c[j>>2]|0)+36>>2]=a;if((c[(c[j>>2]|0)+36>>2]|0)==0){c[o>>2]=7;a=c[o>>2]|0;i=q;return a|0}c[(c[j>>2]|0)+40>>2]=(c[(c[j>>2]|0)+36>>2]|0)+((c[v>>2]|0)*48|0);c[(c[j>>2]|0)+20>>2]=c[v>>2];do{c[n>>2]=0;while(1){if((c[k>>2]|0)!=0){break}if((c[n>>2]<<4|0)>=(c[(c[j>>2]|0)+24>>2]|0)){break}w=s+0|0;v=w+40|0;do{c[w>>2]=0;w=w+4|0}while((w|0)<(v|0));c[k>>2]=uB(c[p>>2]|0,c[g>>2]|0,f)|0;if((c[k>>2]|0)!=0){break}if((c[(c[j>>2]|0)+24>>2]|0)<=16){break}if((c[l>>2]|0)==0){c[k>>2]=iB(c[p>>2]|0,l)|0}if((c[k>>2]|0)==0){c[r>>2]=0;a=e;jB(c[p>>2]|0,c[l>>2]|0,s,c[a>>2]|0,c[a+4>>2]|0);a=f;kB(s,c[a>>2]|0,c[a+4>>2]|0);while(1){if((c[k>>2]|0)!=0){break}if((c[r>>2]|0)!=0){break}c[u>>2]=(c[(c[j>>2]|0)+36>>2]|0)+((c[(c[(c[j>>2]|0)+40>>2]|0)+4>>2]|0)*48|0);a=c[(c[u>>2]|0)+20>>2]|0;kB(s,a,((a|0)<0)<<31>>31);lB(s,c[(c[u>>2]|0)+32>>2]|0,c[(c[u>>2]|0)+20>>2]|0);c[k>>2]=qz(c[p>>2]|0,c[g>>2]|0,r)|0}c[t>>2]=mB(c[p>>2]|0,s,e)|0;if((c[k>>2]|0)==0){c[k>>2]=c[t>>2]}}c[n>>2]=(c[n>>2]|0)+1}if((c[(c[j>>2]|0)+24>>2]|0)<=16){break}c[m>>2]=c[(c[j>>2]|0)+44>>2];c[(c[j>>2]|0)+24>>2]=c[n>>2];c[(c[j>>2]|0)+44>>2]=c[l>>2];c[l>>2]=c[m>>2];d=e;b=c[d+4>>2]|0;a=c[j>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;a=(c[j>>2]|0)+8|0;c[a>>2]=0;c[a+4>>2]=0;a=e;c[a>>2]=0;c[a+4>>2]=0}while((c[k>>2]|0)==0);if((c[l>>2]|0)!=0){UA(c[l>>2]|0)|0}c[c[h>>2]>>2]=(c[(c[(c[j>>2]|0)+36>>2]|0)+((c[(c[(c[j>>2]|0)+40>>2]|0)+4>>2]|0)*48|0)+24>>2]|0)==0&1;c[o>>2]=c[k>>2];a=c[o>>2]|0;i=q;return a|0}function pz(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;g=f+8|0;h=f+4|0;e=f;c[g>>2]=a;c[h>>2]=b;c[e>>2]=ow(c[g>>2]|0)|0;do{if((c[e>>2]|0)==0){b=c[h>>2]|0;if((d[(c[g>>2]|0)+81>>0]|0|0)==0){c[b>>2]=1;break}else{c[b>>2]=0;c[e>>2]=Gw(c[g>>2]|0)|0;break}}}while(0);i=f;return c[e>>2]|0}function qz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;p=n+44|0;f=n+40|0;g=n+36|0;h=n+32|0;l=n+28|0;r=n+24|0;j=n+20|0;e=n+16|0;k=n+12|0;o=n+8|0;m=n+4|0;q=n;c[p>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[f>>2]|0)+64>>2];d=c[h>>2]|0;if((c[(c[h>>2]|0)+40>>2]|0)==0){c[q>>2]=c[d+48>>2];c[(c[h>>2]|0)+48>>2]=c[(c[q>>2]|0)+8>>2];c[(c[q>>2]|0)+8>>2]=0;VA(c[p>>2]|0,c[q>>2]|0);c[c[g>>2]>>2]=((c[(c[h>>2]|0)+48>>2]|0)!=0^1)&1;c[l>>2]=0;a=c[l>>2]|0;i=n;return a|0}c[r>>2]=c[(c[d+40>>2]|0)+4>>2];c[l>>2]=rB(c[p>>2]|0,(c[(c[h>>2]|0)+36>>2]|0)+((c[r>>2]|0)*48|0)|0)|0;if((c[l>>2]|0)!=0){a=c[l>>2]|0;i=n;return a|0}c[e>>2]=(c[(c[h>>2]|0)+36>>2]|0)+((c[r>>2]&65534)*48|0);c[k>>2]=(c[(c[h>>2]|0)+36>>2]|0)+((c[r>>2]|1)*48|0);c[o>>2]=c[(c[k>>2]|0)+32>>2];c[j>>2]=((c[(c[h>>2]|0)+20>>2]|0)+(c[r>>2]|0)|0)/2|0;while(1){if((c[j>>2]|0)<=0){break}do{if((c[(c[e>>2]|0)+24>>2]|0)!=0){if((c[(c[k>>2]|0)+24>>2]|0)==0){c[m>>2]=-1;break}else{qB(c[f>>2]|0,0,c[(c[e>>2]|0)+32>>2]|0,c[(c[e>>2]|0)+20>>2]|0,c[o>>2]|0,c[(c[k>>2]|0)+20>>2]|0,m);break}}else{c[m>>2]=1}}while(0);p=c[e>>2]|0;if((c[m>>2]|0)<=0){c[(c[(c[h>>2]|0)+40>>2]|0)+(c[j>>2]<<2)>>2]=(p-(c[(c[h>>2]|0)+36>>2]|0)|0)/48|0;c[k>>2]=(c[(c[h>>2]|0)+36>>2]|0)+((c[(c[(c[h>>2]|0)+40>>2]|0)+((c[j>>2]^1)<<2)>>2]|0)*48|0);c[o>>2]=c[(c[k>>2]|0)+32>>2]}else{if((c[p+24>>2]|0)!=0){c[o>>2]=0}c[(c[(c[h>>2]|0)+40>>2]|0)+(c[j>>2]<<2)>>2]=((c[k>>2]|0)-(c[(c[h>>2]|0)+36>>2]|0)|0)/48|0;c[e>>2]=(c[(c[h>>2]|0)+36>>2]|0)+((c[(c[(c[h>>2]|0)+40>>2]|0)+((c[j>>2]^1)<<2)>>2]|0)*48|0)}c[j>>2]=(c[j>>2]|0)/2|0}c[c[g>>2]>>2]=(c[(c[(c[h>>2]|0)+36>>2]|0)+((c[(c[(c[h>>2]|0)+40>>2]|0)+4>>2]|0)*48|0)+24>>2]|0)==0&1;a=c[l>>2]|0;i=n;return a|0}function rz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;h=f+20|0;j=f+16|0;l=f+12|0;g=f+8|0;e=f+4|0;k=f;c[h>>2]=a;c[j>>2]=b;c[l>>2]=d;c[g>>2]=c[(c[j>>2]|0)+64>>2];c[e>>2]=0;b=c[(c[l>>2]|0)+24>>2]|0;b=Ew(b,((b|0)<0)<<31>>31)|0;a=(c[g>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+(b+(c[(c[l>>2]|0)+24>>2]|0));c[k>>2]=Le(c[h>>2]|0,(c[(c[l>>2]|0)+24>>2]|0)+12|0)|0;if((c[k>>2]|0)==0){c[e>>2]=7}else{c[c[k>>2]>>2]=(c[k>>2]|0)+12;dE(c[c[k>>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0,c[(c[l>>2]|0)+24>>2]|0)|0;c[(c[k>>2]|0)+4>>2]=c[(c[l>>2]|0)+24>>2];c[(c[k>>2]|0)+8>>2]=c[(c[g>>2]|0)+48>>2];c[(c[g>>2]|0)+48>>2]=c[k>>2]}if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=f;return a|0}if((c[(c[g>>2]|0)+32>>2]|0)<=0){a=c[e>>2]|0;i=f;return a|0}if((c[(c[g>>2]|0)+16>>2]|0)<=(c[(c[g>>2]|0)+32>>2]|0)){if((c[(c[g>>2]|0)+16>>2]|0)<=(c[(c[g>>2]|0)+28>>2]|0)){a=c[e>>2]|0;i=f;return a|0}if((hl()|0)==0){a=c[e>>2]|0;i=f;return a|0}}c[e>>2]=gB(c[h>>2]|0,c[j>>2]|0)|0;c[(c[g>>2]|0)+16>>2]=0;a=c[e>>2]|0;i=f;return a|0}function sz(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+128|0;k=f+116|0;p=f+108|0;n=f+104|0;o=f+80|0;q=f+100|0;m=f+96|0;l=f+92|0;g=f+88|0;h=f+40|0;j=f;c[f+112>>2]=a;c[p>>2]=b;c[n>>2]=e;b=o;c[b>>2]=0;c[b+4>>2]=0;ny(c[p>>2]|0,o)|0;b=h+0|0;e=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[q>>2]=Uy(c[p>>2]|0,0,c[o>>2]|0,1,h)|0;if((c[q>>2]|0)!=0){c[k>>2]=c[q>>2];a=c[k>>2]|0;i=f;return a|0}o=c[h+4>>2]|0;if((d[c[h+4>>2]>>0]|0|0)<128){c[m>>2]=d[o>>0]|0}else{xw(o,m)|0}if(!((c[m>>2]|0)>>>0<3)?(c[m>>2]|0)<=(c[h+24>>2]|0):0){o=(c[h+4>>2]|0)+((c[m>>2]|0)-1)|0;if((d[(c[h+4>>2]|0)+((c[m>>2]|0)-1)>>0]|0|0)<128){c[l>>2]=d[o>>0]|0}else{xw(o,l)|0}if(!((c[l>>2]|0)>>>0<1|(c[l>>2]|0)>>>0>9|(c[l>>2]|0)==7)?(c[g>>2]=Bw(c[l>>2]|0)|0,!((c[h+24>>2]|0)>>>0<((c[m>>2]|0)+(c[g>>2]|0)|0)>>>0)):0){Cw((c[h+4>>2]|0)+((c[h+24>>2]|0)-(c[g>>2]|0))|0,c[l>>2]|0,j)|0;e=j+16|0;b=c[e+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=b;yd(h);c[k>>2]=0;a=c[k>>2]|0;i=f;return a|0}}yd(h);c[k>>2]=ej(65606)|0;a=c[k>>2]|0;i=f;return a|0}function tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+80|0;f=k+68|0;h=k+64|0;m=k+60|0;g=k+56|0;j=k+40|0;l=k+52|0;n=k+48|0;e=k;c[h>>2]=a;c[m>>2]=b;c[g>>2]=d;d=j;c[d>>2]=0;c[d+4>>2]=0;c[n>>2]=c[c[h>>2]>>2];ny(c[n>>2]|0,j)|0;d=j;n=c[d+4>>2]|0;a=j;b=c[a+4>>2]|0;if((n|0)<0|(n|0)==0&(c[d>>2]|0)>>>0<=0|((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>2147483647)){c[c[g>>2]>>2]=0;c[f>>2]=ej(65637)|0;n=c[f>>2]|0;i=k;return n|0}b=e+0|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));c[l>>2]=Uy(c[c[h>>2]>>2]|0,0,c[j>>2]|0,1,e)|0;if((c[l>>2]|0)!=0){c[f>>2]=c[l>>2];n=c[f>>2]|0;i=k;return n|0}else{n=Aw(c[e+24>>2]|0,c[e+4>>2]|0,c[m>>2]|0,0)|0;c[c[g>>2]>>2]=n;yd(e);c[f>>2]=0;n=c[f>>2]|0;i=k;return n|0}return 0}function uz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+12|0;h=f+8|0;g=f+4|0;e=f;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;Mc(c[j>>2]|0);c[e>>2]=fB(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return c[e>>2]|0}function vz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+48|0;p=l+32|0;o=l+28|0;k=l+24|0;g=l+20|0;j=l+16|0;m=l+12|0;f=l+8|0;n=l+4|0;h=l;c[p>>2]=a;c[o>>2]=b;c[k>>2]=d;c[g>>2]=e;c[f>>2]=(c[(c[p>>2]|0)+16>>2]|0)+(c[o>>2]<<4);c[m>>2]=(c[(c[f>>2]|0)+12>>2]|0)+8;c[j>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break}c[n>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[n>>2]|0)+32>>2]|0)==(c[k>>2]|0)){c[(c[n>>2]|0)+32>>2]=c[g>>2]}c[j>>2]=c[c[j>>2]>>2]}c[m>>2]=(c[(c[f>>2]|0)+12>>2]|0)+24;c[j>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break}c[h>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[h>>2]|0)+44>>2]|0)==(c[k>>2]|0)){c[(c[h>>2]|0)+44>>2]=c[g>>2]}c[j>>2]=c[c[j>>2]>>2]}i=l;return}function wz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;g=e+16|0;j=e+12|0;k=e+8|0;f=e+4|0;h=e;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[h>>2]=c[(c[g>>2]|0)+4>>2];Mc(c[g>>2]|0);c[f>>2]=ky(c[h>>2]|0,c[j>>2]|0,0)|0;if(0!=(c[f>>2]|0)){a=c[f>>2]|0;i=e;return a|0}WA(c[g>>2]|0,0,0,1);c[f>>2]=XA(c[h>>2]|0,c[j>>2]|0,0,c[k>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}function xz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;e=f+4|0;g=f;c[d>>2]=a;c[e>>2]=b;if((c[(c[e>>2]|0)+36>>2]|0)!=0){c[g>>2]=0;while(1){b=c[d>>2]|0;if((c[g>>2]|0)>=(c[(c[e>>2]|0)+20>>2]|0)){break}TA(b,(c[(c[e>>2]|0)+36>>2]|0)+((c[g>>2]|0)*48|0)|0);c[g>>2]=(c[g>>2]|0)+1}Wb(b,c[(c[e>>2]|0)+36>>2]|0);c[(c[e>>2]|0)+36>>2]=0}if((c[(c[e>>2]|0)+44>>2]|0)!=0){UA(c[(c[e>>2]|0)+44>>2]|0)|0;c[(c[e>>2]|0)+44>>2]=0}VA(c[d>>2]|0,c[(c[e>>2]|0)+48>>2]|0);c[(c[e>>2]|0)+48>>2]=0;a=c[e>>2]|0;c[a>>2]=0;c[a+4>>2]=0;a=(c[e>>2]|0)+8|0;c[a>>2]=0;c[a+4>>2]=0;c[(c[e>>2]|0)+16>>2]=0;c[(c[e>>2]|0)+20>>2]=0;c[(c[e>>2]|0)+24>>2]=0;c[(c[e>>2]|0)+40>>2]=0;i=f;return}function yz(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=wz(c[c[d>>2]>>2]|0,c[(c[d>>2]|0)+68>>2]|0,0)|0;i=b;return a|0}function zz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;k=e+12|0;h=e+8|0;g=e+4|0;j=e;c[f>>2]=a;c[k>>2]=b;c[h>>2]=d;c[j>>2]=(c[(c[f>>2]|0)+16>>2]|0)+(c[k>>2]<<4);b=(c[(c[j>>2]|0)+12>>2]|0)+8|0;a=c[h>>2]|0;c[g>>2]=$g(b,a,Mb(c[h>>2]|0)|0,0)|0;Ub(c[f>>2]|0,c[g>>2]|0);a=(c[f>>2]|0)+24|0;c[a>>2]=c[a>>2]|2;i=e;return}function Az(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+24|0;m=e+20|0;k=e+16|0;h=e+12|0;j=e+8|0;l=e+4|0;g=e;c[f>>2]=a;c[m>>2]=b;c[k>>2]=d;c[l>>2]=(c[(c[(c[f>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+12>>2]|0)+24;c[j>>2]=Mb(c[k>>2]|0)|0;c[h>>2]=$g(c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,0)|0;if((c[h>>2]|0)==0){m=c[f>>2]|0;m=m+24|0;l=c[m>>2]|0;l=l|2;c[m>>2]=l;i=e;return}d=c[h>>2]|0;if((c[(c[(c[h>>2]|0)+12>>2]|0)+8>>2]|0)!=(c[h>>2]|0)){c[g>>2]=c[(c[d+12>>2]|0)+8>>2];while(1){if((c[g>>2]|0)!=0){b=(c[(c[g>>2]|0)+20>>2]|0)!=(c[h>>2]|0)}else{b=0}d=c[g>>2]|0;if(!b){break}c[g>>2]=c[d+20>>2]}if((d|0)!=0?(c[(c[g>>2]|0)+20>>2]|0)==(c[h>>2]|0):0){c[(c[g>>2]|0)+20>>2]=c[(c[h>>2]|0)+20>>2]}}else{c[(c[(c[h>>2]|0)+12>>2]|0)+8>>2]=c[d+20>>2]}Qx(c[f>>2]|0,c[h>>2]|0);m=c[f>>2]|0;m=m+24|0;l=c[m>>2]|0;l=l|2;c[m>>2]=l;i=e;return}function Bz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;h=e+24|0;m=e+20|0;k=e+16|0;f=e+12|0;l=e+8|0;j=e+4|0;g=e;c[h>>2]=a;c[m>>2]=b;c[k>>2]=d;c[l>>2]=(c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+12>>2]|0)+40;b=c[l>>2]|0;a=c[k>>2]|0;c[f>>2]=$g(b,a,Mb(c[k>>2]|0)|0,0)|0;if((c[f>>2]|0)==0){i=e;return}if((c[(c[f>>2]|0)+20>>2]|0)==(c[(c[f>>2]|0)+24>>2]|0)){c[j>>2]=jt(c[f>>2]|0)|0;c[g>>2]=(c[j>>2]|0)+64;while(1){d=(c[c[g>>2]>>2]|0)+32|0;if((c[c[g>>2]>>2]|0)==(c[f>>2]|0)){break}c[g>>2]=d}c[c[g>>2]>>2]=c[d>>2]}Tb(c[h>>2]|0,c[f>>2]|0);m=(c[h>>2]|0)+24|0;c[m>>2]=c[m>>2]|2;i=e;return}function Cz(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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;p=i;i=i+208|0;q=p;k=p+100|0;u=p+96|0;r=p+92|0;s=p+88|0;t=p+84|0;l=p+80|0;j=p+76|0;m=p+72|0;o=p+16|0;n=p+8|0;c[u>>2]=b;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[l>>2]=h;c[n>>2]=c[(c[u>>2]|0)+4>>2];Mc(c[u>>2]|0);c[m>>2]=KA(c[c[n>>2]>>2]|0)|0;c[o>>2]=c[n>>2];c[o+4>>2]=c[c[n>>2]>>2];c[o+12>>2]=gw(c[o>>2]|0)|0;c[o+16>>2]=c[t>>2];c[o+20>>2]=0;c[o+24>>2]=0;c[c[l>>2]>>2]=0;if((c[o+12>>2]|0)==0){c[k>>2]=0;u=c[k>>2]|0;i=p;return u|0}c[o+8>>2]=Kc((((c[o+12>>2]|0)>>>0)/8|0)+1|0)|0;if((c[o+8>>2]|0)==0){c[c[l>>2]>>2]=1;c[k>>2]=0;u=c[k>>2]|0;i=p;return u|0}c[j>>2]=(((c[346]|0)>>>0)/((c[(c[n>>2]|0)+32>>2]|0)>>>0)|0)+1;if((c[j>>2]|0)>>>0<=(c[o+12>>2]|0)>>>0){LA(o,c[j>>2]|0)}lc(o+28|0,p+104|0,100,1e9);a[o+52>>0]=2;u=Ah((c[(c[(c[n>>2]|0)+12>>2]|0)+56>>2]|0)+32|0)|0;MA(o,1,u,Ah((c[(c[(c[n>>2]|0)+12>>2]|0)+56>>2]|0)+36|0)|0,33176);c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[s>>2]|0)){break}if((c[o+16>>2]|0)==0){break}if((c[(c[r>>2]|0)+(c[j>>2]<<2)>>2]|0)!=0){if((d[(c[n>>2]|0)+17>>0]|0)!=0?(c[(c[r>>2]|0)+(c[j>>2]<<2)>>2]|0)>1:0){NA(o,c[(c[r>>2]|0)+(c[j>>2]<<2)>>2]|0,1,0,0)}OA(o,c[(c[r>>2]|0)+(c[j>>2]<<2)>>2]|0,33192,0,0)|0}c[j>>2]=(c[j>>2]|0)+1}c[j>>2]=1;while(1){if(!((c[j>>2]|0)>>>0<=(c[o+12>>2]|0)>>>0)){break}if((c[o+16>>2]|0)==0){break}do{if((PA(o,c[j>>2]|0)|0)==0){u=vw(c[n>>2]|0,c[j>>2]|0)|0;if((u|0)==(c[j>>2]|0)?(a[(c[n>>2]|0)+17>>0]|0)!=0:0){break}c[q>>2]=c[j>>2];QA(o,0,33216,q)}}while(0);if(((PA(o,c[j>>2]|0)|0)!=0?(u=vw(c[n>>2]|0,c[j>>2]|0)|0,(u|0)==(c[j>>2]|0)):0)?(d[(c[n>>2]|0)+17>>0]|0)!=0:0){c[q>>2]=c[j>>2];QA(o,0,33240,q)}c[j>>2]=(c[j>>2]|0)+1}u=c[m>>2]|0;if((u|0)!=(KA(c[c[n>>2]>>2]|0)|0)){t=c[m>>2]|0;u=KA(c[c[n>>2]>>2]|0)|0;c[q>>2]=t;c[q+4>>2]=u;QA(o,0,33280,q)}gc(c[o+8>>2]|0);if((c[o+24>>2]|0)!=0){Om(o+28|0);c[c[l>>2]>>2]=(c[o+20>>2]|0)+1;c[k>>2]=0;u=c[k>>2]|0;i=p;return u|0}c[c[l>>2]>>2]=c[o+20>>2];if((c[o+20>>2]|0)==0){Om(o+28|0)}c[k>>2]=nc(o+28|0)|0;u=c[k>>2]|0;i=p;return u|0}function Dz(d){d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=d;c[g>>2]=c[c[f>>2]>>2];yd(c[f>>2]|0);d=Le(c[g>>2]|0,64)|0;c[(c[f>>2]|0)+36>>2]=d;if((a[(c[g>>2]|0)+64>>0]|0)!=0){b[(c[f>>2]|0)+28>>1]=1;i=e;return}else{h=c[g>>2]|0;d=c[(c[f>>2]|0)+36>>2]|0;g=JA(h,d,Yo(c[g>>2]|0,c[(c[f>>2]|0)+36>>2]|0)|0)|0;c[(c[f>>2]|0)+16>>2]=g;b[(c[f>>2]|0)+28>>1]=32;i=e;return}}function Ez(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;k=g+16|0;h=g;l=g+12|0;j=g+8|0;c[k>>2]=a;a=h;c[a>>2]=d;c[a+4>>2]=f;c[l>>2]=GA(c[k>>2]|0)|0;if((c[l>>2]|0)==0){i=g;return}f=h;d=c[f+4>>2]|0;a=c[l>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=d;c[(c[l>>2]|0)+8>>2]=0;c[j>>2]=c[(c[k>>2]|0)+12>>2];if((c[j>>2]|0)!=0){if((b[(c[k>>2]|0)+26>>1]&1|0)!=0?(d=h,f=c[d+4>>2]|0,a=c[j>>2]|0,h=c[a+4>>2]|0,(f|0)<(h|0)|((f|0)==(h|0)?(c[d>>2]|0)>>>0<=(c[a>>2]|0)>>>0:0)):0){a=(c[k>>2]|0)+26|0;b[a>>1]=(e[a>>1]|0)&-2}c[(c[j>>2]|0)+8>>2]=c[l>>2]}else{c[(c[k>>2]|0)+8>>2]=c[l>>2]}c[(c[k>>2]|0)+12>>2]=c[l>>2];i=g;return}function Fz(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+8|0;g=f+4|0;h=f;c[g>>2]=a;c[h>>2]=d;if((b[(c[g>>2]|0)+26>>1]&2|0)==0){IA(c[g>>2]|0)}if((c[(c[g>>2]|0)+8>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=f;return a|0}j=c[(c[g>>2]|0)+8>>2]|0;d=c[j+4>>2]|0;a=c[h>>2]|0;c[a>>2]=c[j>>2];c[a+4>>2]=d;c[(c[g>>2]|0)+8>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2];if((c[(c[g>>2]|0)+8>>2]|0)==0){wy(c[g>>2]|0)}c[e>>2]=1;j=c[e>>2]|0;i=f;return j|0}function Gz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=i;i=i+48|0;k=l+36|0;o=l+32|0;p=l+28|0;j=l;h=l+24|0;m=l+20|0;n=l+16|0;r=l+12|0;s=l+8|0;c[o>>2]=a;c[p>>2]=d;a=j;c[a>>2]=f;c[a+4>>2]=g;if((c[p>>2]|0)!=(c[(c[o>>2]|0)+28>>2]|0)){c[h>>2]=c[(c[o>>2]|0)+8>>2];if((c[h>>2]|0)!=0){c[n>>2]=(c[o>>2]|0)+20;if((b[(c[o>>2]|0)+26>>1]&1|0)==0){c[h>>2]=CA(c[h>>2]|0)|0}c[m>>2]=c[(c[o>>2]|0)+20>>2];while(1){if((c[m>>2]|0)==0){break}c[n>>2]=(c[m>>2]|0)+8;if((c[(c[m>>2]|0)+12>>2]|0)==0){q=8;break}EA(c[(c[m>>2]|0)+12>>2]|0,r,s);c[(c[m>>2]|0)+12>>2]=0;c[h>>2]=FA(c[r>>2]|0,c[h>>2]|0)|0;c[m>>2]=c[(c[m>>2]|0)+8>>2]}if((q|0)==8){a=DA(c[h>>2]|0)|0;c[(c[m>>2]|0)+12>>2]=a}if((c[m>>2]|0)==0?(a=GA(c[o>>2]|0)|0,c[m>>2]=a,c[c[n>>2]>>2]=a,(c[m>>2]|0)!=0):0){a=c[m>>2]|0;c[a>>2]=0;c[a+4>>2]=0;c[(c[m>>2]|0)+8>>2]=0;a=DA(c[h>>2]|0)|0;c[(c[m>>2]|0)+12>>2]=a}c[(c[o>>2]|0)+8>>2]=0;c[(c[o>>2]|0)+12>>2]=0;a=(c[o>>2]|0)+26|0;b[a>>1]=e[a>>1]|0|1}c[(c[o>>2]|0)+28>>2]=c[p>>2]}c[m>>2]=c[(c[o>>2]|0)+20>>2];a:while(1){if((c[m>>2]|0)==0){q=25;break}c[h>>2]=c[(c[m>>2]|0)+12>>2];while(1){if((c[h>>2]|0)==0){break}d=c[h>>2]|0;g=c[d+4>>2]|0;a=j;f=c[a+4>>2]|0;n=c[h>>2]|0;if((g|0)<(f|0)|((g|0)==(f|0)?(c[d>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)){c[h>>2]=c[n+8>>2];continue}d=n;g=c[d+4>>2]|0;a=j;f=c[a+4>>2]|0;if(!((g|0)>(f|0)|((g|0)==(f|0)?(c[d>>2]|0)>>>0>(c[a>>2]|0)>>>0:0))){q=23;break a}c[h>>2]=c[(c[h>>2]|0)+12>>2]}c[m>>2]=c[(c[m>>2]|0)+8>>2]}if((q|0)==23){c[k>>2]=1;a=c[k>>2]|0;i=l;return a|0}else if((q|0)==25){c[k>>2]=0;a=c[k>>2]|0;i=l;return a|0}return 0}function Hz(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;e=b+4|0;f=b;c[f>>2]=a;if((d[(c[f>>2]|0)+16>>0]|0|0)>=3){c[e>>2]=0;f=c[e>>2]|0;i=b;return f|0}if((c[c[(c[f>>2]|0)+64>>2]>>2]|0)!=0?(f=(c[f>>2]|0)+72|0,a=c[f+4>>2]|0,(a|0)>0|(a|0)==0&(c[f>>2]|0)>>>0>0):0){c[e>>2]=0;f=c[e>>2]|0;i=b;return f|0}c[e>>2]=1;f=c[e>>2]|0;i=b;return f|0}function Iz(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;f=b+4|0;e=b;c[f>>2]=a;c[e>>2]=c[c[(c[f>>2]|0)+60>>2]>>2];if((d[(c[f>>2]|0)+4>>0]|0|0)!=0){f=1;f=f&1;i=b;return f|0}if((c[c[e>>2]>>2]|0)<2){f=0;f=f&1;i=b;return f|0}f=(c[(c[e>>2]|0)+52>>2]|0)!=0;f=f&1;i=b;return f|0}function Jz(a){a=a|0;var b=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;b=e+4|0;g=e;c[f>>2]=a;c[b>>2]=0;if((c[(c[f>>2]|0)+208>>2]|0)==0){c[g>>2]=0;c[b>>2]=bk(c[f>>2]|0,1)|0;if((c[b>>2]|0)==0){c[b>>2]=pi(c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+212>>2]|0,0,g)|0}if((c[b>>2]|0)==0?(c[g>>2]|0)!=0:0){c[b>>2]=xA(c[f>>2]|0)|0}}if((c[b>>2]|0)!=0){g=c[b>>2]|0;i=e;return g|0}if((c[(c[f>>2]|0)+208>>2]|0)==0){g=c[b>>2]|0;i=e;return g|0}c[b>>2]=yA(c[f>>2]|0)|0;if((c[b>>2]|0)!=0){g=c[b>>2]|0;i=e;return g|0}c[b>>2]=Gh(c[(c[f>>2]|0)+208>>2]|0,d[(c[f>>2]|0)+9>>0]|0,c[(c[f>>2]|0)+152>>2]|0,c[(c[f>>2]|0)+200>>2]|0)|0;c[(c[f>>2]|0)+208>>2]=0;Fg(c[f>>2]|0);g=c[b>>2]|0;i=e;return g|0}function Kz(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+12|0;k=f+8|0;l=f+16|0;h=f+4|0;j=f;c[g>>2]=b;c[k>>2]=e;a[l>>0]=a[(c[g>>2]|0)+5>>0]|0;if((a[(c[g>>2]|0)+15>>0]|0)!=0?(c[k>>2]|0)!=4&(c[k>>2]|0)!=2:0){c[k>>2]=d[l>>0]|0}do{if((((c[k>>2]|0)!=(d[l>>0]|0)?(a[(c[g>>2]|0)+5>>0]=c[k>>2],(a[(c[g>>2]|0)+4>>0]|0)==0):0)?(a[l>>0]&5|0)==1:0)?(c[k>>2]&1|0)==0:0){Lh(c[(c[g>>2]|0)+64>>2]|0)|0;if((d[(c[g>>2]|0)+17>>0]|0)>=2){Th(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+172>>2]|0,0)|0;break}c[h>>2]=0;c[j>>2]=d[(c[g>>2]|0)+16>>0]|0;if((c[j>>2]|0)==0){c[h>>2]=pA(c[g>>2]|0)|0}if((d[(c[g>>2]|0)+16>>0]|0)==1){c[h>>2]=bk(c[g>>2]|0,2)|0}if((c[h>>2]|0)==0){Th(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+172>>2]|0,0)|0}if((c[h>>2]|0)==0?(c[j>>2]|0)==1:0){Zh(c[g>>2]|0,1)|0;break}if((c[j>>2]|0)==0){Hh(c[g>>2]|0)}}}while(0);i=f;return d[(c[g>>2]|0)+5>>0]|0}function Lz(b,e){b=b|0;e=e|0;var f=0,g=0,h=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;q=i;i=i+80|0;v=q;n=q+68|0;u=q+64|0;h=q+60|0;g=q+56|0;o=q+52|0;r=q+48|0;x=q+44|0;k=q+40|0;l=q+36|0;m=q+32|0;f=q+28|0;p=q+24|0;w=q+20|0;t=q+16|0;y=q+12|0;j=q+8|0;s=q+4|0;c[u>>2]=b;c[h>>2]=e;c[g>>2]=0;c[x>>2]=0;c[p>>2]=0;if((a[(c[h>>2]|0)+62>>0]|0)==0){an(c[u>>2]|0,c[h>>2]|0,31928,v);c[n>>2]=1;b=c[n>>2]|0;i=q;return b|0}if((c[(c[h>>2]|0)+140>>2]|0)>1){an(c[u>>2]|0,c[h>>2]|0,31968,v);c[n>>2]=1;b=c[n>>2]|0;i=q;return b|0}c[k>>2]=c[(c[h>>2]|0)+24>>2];c[l>>2]=c[(c[h>>2]|0)+80>>2];c[m>>2]=c[(c[h>>2]|0)+84>>2];c[f>>2]=c[(c[h>>2]|0)+164>>2];b=(c[h>>2]|0)+24|0;c[b>>2]=c[b>>2]|2107392;b=(c[h>>2]|0)+24|0;c[b>>2]=c[b>>2]&-655361;c[(c[h>>2]|0)+164>>2]=0;c[o>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+4>>2];c[w>>2]=iA(Rb(c[o>>2]|0)|0)|0;c[y>>2]=c[(c[h>>2]|0)+20>>2];if((qh(c[h>>2]|0)|0)!=0){c[x>>2]=32016}else{c[x>>2]=32048}c[g>>2]=jA(c[h>>2]|0,c[u>>2]|0,c[x>>2]|0)|0;if((c[(c[h>>2]|0)+20>>2]|0)>(c[y>>2]|0)){c[p>>2]=(c[(c[h>>2]|0)+16>>2]|0)+((c[(c[h>>2]|0)+20>>2]|0)-1<<4)}a:do{if((((c[g>>2]|0)==0?(c[r>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+((c[(c[h>>2]|0)+20>>2]|0)-1<<4)+4>>2],Qr(c[r>>2]|0)|0,c[t>>2]=kA(c[o>>2]|0)|0,c[g>>2]=jA(c[h>>2]|0,c[u>>2]|0,32072)|0,(c[g>>2]|0)==0):0)?(c[g>>2]=jA(c[h>>2]|0,c[u>>2]|0,32112)|0,(c[g>>2]|0)==0):0)?(c[g>>2]=Oc(c[o>>2]|0,2)|0,(c[g>>2]|0)==0):0){if((Sc(Rb(c[o>>2]|0)|0)|0)==5){c[(c[h>>2]|0)+72>>2]=0}y=c[r>>2]|0;b=Rc(c[o>>2]|0)|0;do{if((dg(y,b,c[t>>2]|0,0)|0)==0){if((c[w>>2]|0)==0?(dg(c[r>>2]|0,c[(c[h>>2]|0)+72>>2]|0,c[t>>2]|0,0)|0)!=0:0){break}if((d[(c[h>>2]|0)+64>>0]|0)==0){v=c[r>>2]|0;if((a[(c[h>>2]|0)+66>>0]|0)>=0){e=a[(c[h>>2]|0)+66>>0]|0}else{e=At(c[o>>2]|0)|0}Ct(v,e)|0;c[g>>2]=lA(c[h>>2]|0,c[u>>2]|0,32120)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=lA(c[h>>2]|0,c[u>>2]|0,32272)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=lA(c[h>>2]|0,c[u>>2]|0,32376)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=lA(c[h>>2]|0,c[u>>2]|0,32496)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=lA(c[h>>2]|0,c[u>>2]|0,32696)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=lA(c[h>>2]|0,c[u>>2]|0,32816)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=jA(c[h>>2]|0,c[u>>2]|0,32976)|0;if((c[g>>2]|0)!=0){break a}c[s>>2]=0;while(1){u=c[o>>2]|0;if((c[s>>2]|0)>=10){break}Pc(u,d[33160+(c[s>>2]|0)>>0]|0,j);c[g>>2]=_c(c[r>>2]|0,d[33160+(c[s>>2]|0)>>0]|0,(c[j>>2]|0)+(d[(c[s>>2]|0)+33161>>0]|0)|0)|0;if((c[g>>2]|0)!=0){break a}c[s>>2]=(c[s>>2]|0)+2}c[g>>2]=mA(u,c[r>>2]|0)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=Qr(c[r>>2]|0)|0;if((c[g>>2]|0)!=0){break a}y=c[o>>2]|0;Ct(y,At(c[r>>2]|0)|0)|0;y=c[o>>2]|0;b=Rc(c[r>>2]|0)|0;c[g>>2]=dg(y,b,c[t>>2]|0,1)|0;break a}}}while(0);c[g>>2]=7}}while(0);c[(c[h>>2]|0)+24>>2]=c[k>>2];c[(c[h>>2]|0)+80>>2]=c[l>>2];c[(c[h>>2]|0)+84>>2]=c[m>>2];c[(c[h>>2]|0)+164>>2]=c[f>>2];dg(c[o>>2]|0,-1,-1,1)|0;a[(c[h>>2]|0)+62>>0]=1;if((c[p>>2]|0)!=0){Ak(c[(c[p>>2]|0)+4>>2]|0)|0;c[(c[p>>2]|0)+4>>2]=0;c[(c[p>>2]|0)+12>>2]=0}$c(c[h>>2]|0);c[n>>2]=c[g>>2];b=c[n>>2]|0;i=q;return b|0}function Mz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;k=d+20|0;e=d+16|0;f=d+12|0;h=d+8|0;j=d+4|0;g=d;c[k>>2]=b;c[f>>2]=c[(c[k>>2]|0)+4>>2];Mc(c[k>>2]|0);if((a[(c[f>>2]|0)+17>>0]|0)==0){c[e>>2]=101;k=c[e>>2]|0;i=d;return k|0}c[h>>2]=gw(c[f>>2]|0)|0;c[j>>2]=Ah((c[(c[(c[f>>2]|0)+12>>2]|0)+56>>2]|0)+36|0)|0;c[g>>2]=Yz(c[f>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;if((c[h>>2]|0)>>>0<(c[g>>2]|0)>>>0){c[e>>2]=ej(54318)|0;k=c[e>>2]|0;i=d;return k|0}if(!((c[j>>2]|0)>>>0>0)){c[e>>2]=101;k=c[e>>2]|0;i=d;return k|0}c[e>>2]=ky(c[f>>2]|0,0,0)|0;if((c[e>>2]|0)==0){Zz(c[f>>2]|0);c[e>>2]=_z(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,0)|0}if((c[e>>2]|0)!=0){k=c[e>>2]|0;i=d;return k|0}c[e>>2]=dd(c[(c[(c[f>>2]|0)+12>>2]|0)+68>>2]|0)|0;Yj((c[(c[(c[f>>2]|0)+12>>2]|0)+56>>2]|0)+28|0,c[(c[f>>2]|0)+44>>2]|0);k=c[e>>2]|0;i=d;return k|0}function Nz(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+16|0;j=g+8|0;k=g+4|0;m=g+13|0;h=g;l=g+12|0;c[j>>2]=b;c[k>>2]=e;a[m>>0]=f;c[h>>2]=0;if((a[(c[j>>2]|0)+9>>0]|0)==0){b=c[h>>2]|0;i=g;return b|0}a[l>>0]=1+(d[m>>0]|0);Mc(c[j>>2]|0);c[h>>2]=ey(c[j>>2]|0,c[k>>2]|0,a[l>>0]|0)|0;if((c[h>>2]|0)!=0){b=c[h>>2]|0;i=g;return b|0}c[h>>2]=Xz(c[j>>2]|0,c[k>>2]|0,a[l>>0]|0)|0;b=c[h>>2]|0;i=g;return b|0}function Oz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;h=e+16|0;k=e+12|0;j=e+8|0;l=e+4|0;g=e;c[h>>2]=a;c[k>>2]=b;c[j>>2]=0;if((c[(c[h>>2]|0)+296>>2]|0)>0?(c[(c[h>>2]|0)+320>>2]|0)==0:0){c[f>>2]=6;a=c[f>>2]|0;i=e;return a|0}if((c[k>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}c[l>>2]=c[c[(c[k>>2]|0)+8>>2]>>2];if((c[(c[l>>2]|0)+56>>2]|0)!=0){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[h>>2]|0)+296>>2]|0)){break}if((c[(c[(c[h>>2]|0)+320>>2]|0)+(c[g>>2]<<2)>>2]|0)==(c[k>>2]|0)){d=10;break}c[g>>2]=(c[g>>2]|0)+1}if((d|0)==10){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}c[j>>2]=Vz(c[h>>2]|0)|0;if((c[j>>2]|0)==0?(c[j>>2]=ub[c[(c[l>>2]|0)+56>>2]&31](c[(c[k>>2]|0)+8>>2]|0)|0,(c[j>>2]|0)==0):0){Wz(c[h>>2]|0,c[k>>2]|0)}}c[f>>2]=c[j>>2];a=c[f>>2]|0;i=e;return a|0}function Pz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+48|0;m=g;h=g+32|0;o=g+28|0;p=g+24|0;k=g+20|0;l=g+16|0;j=g+12|0;f=g+8|0;n=g+4|0;c[h>>2]=a;c[o>>2]=b;c[p>>2]=d;c[k>>2]=e;c[l>>2]=0;c[j>>2]=fp(c[h>>2]|0,c[p>>2]|0,c[(c[(c[h>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2]|0)|0;c[n>>2]=c[c[(c[j>>2]|0)+56>>2]>>2];a=(c[h>>2]|0)+300|0;e=c[n>>2]|0;c[f>>2]=Wg(a,e,Mb(c[n>>2]|0)|0)|0;e=c[h>>2]|0;if((c[f>>2]|0)!=0){c[l>>2]=ir(e,c[j>>2]|0,c[f>>2]|0,c[(c[c[f>>2]>>2]|0)+4>>2]|0,c[k>>2]|0)|0}else{c[m>>2]=c[n>>2];p=Oe(e,17848,m)|0;c[c[k>>2]>>2]=p;c[l>>2]=1}if((c[l>>2]|0)!=0){p=c[l>>2]|0;i=g;return p|0}if((zp(c[h>>2]|0,c[j>>2]|0)|0)==0){p=c[l>>2]|0;i=g;return p|0}c[l>>2]=Vz(c[h>>2]|0)|0;if((c[l>>2]|0)!=0){p=c[l>>2]|0;i=g;return p|0}p=c[h>>2]|0;Wz(p,zp(c[h>>2]|0,c[j>>2]|0)|0);p=c[l>>2]|0;i=g;return p|0}function Qz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;g=e+20|0;k=e+16|0;l=e+12|0;f=e+8|0;h=e+4|0;j=e;c[g>>2]=a;c[k>>2]=b;c[l>>2]=d;c[f>>2]=0;c[h>>2]=fp(c[g>>2]|0,c[l>>2]|0,c[(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<4)>>2]|0)|0;if((c[h>>2]|0)==0){l=c[f>>2]|0;i=e;return l|0}if((c[(c[h>>2]|0)+60>>2]|0)==0){l=c[f>>2]|0;i=e;return l|0}c[j>>2]=jy(c[g>>2]|0,c[h>>2]|0)|0;c[f>>2]=ub[c[(c[c[(c[j>>2]|0)+4>>2]>>2]|0)+20>>2]&31](c[(c[j>>2]|0)+8>>2]|0)|0;if((c[f>>2]|0)!=0){l=c[f>>2]|0;i=e;return l|0}c[(c[j>>2]|0)+8>>2]=0;c[(c[h>>2]|0)+60>>2]=0;Dk(c[j>>2]|0);l=c[f>>2]|0;i=e;return l|0}function Rz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e+4|0;d=e;c[g>>2]=a;c[f>>2]=b;Mc(c[g>>2]|0);c[d>>2]=Uz(c[c[(c[g>>2]|0)+4>>2]>>2]|0,c[f>>2]|0)|0;i=e;return c[d>>2]|0}function Sz(e,f){e=e|0;f=f|0;var g=0,j=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;g=i;i=i+240|0;s=g+40|0;p=g+120|0;t=g+116|0;r=g+112|0;n=g+108|0;o=g+104|0;l=g+100|0;m=g+96|0;y=g+92|0;q=g+88|0;j=g+60|0;z=g+56|0;w=g+52|0;u=g+124|0;v=g;x=g+48|0;c[p>>2]=e;c[t>>2]=f;c[n>>2]=0;c[o>>2]=1;c[r>>2]=c[c[p>>2]>>2];lc(j,g+128|0,100,c[(c[r>>2]|0)+88>>2]|0);c[j>>2]=c[r>>2];if((c[(c[r>>2]|0)+152>>2]|0)>1){while(1){if((a[c[t>>2]>>0]|0)==0){break}c[z>>2]=c[t>>2];do{e=c[t>>2]|0;c[t>>2]=e+1;if((a[e>>0]|0)==10){break}}while((a[c[t>>2]>>0]|0)!=0);Km(j,31872,3);Km(j,c[z>>2]|0,(c[t>>2]|0)-(c[z>>2]|0)|0)}e=nc(j)|0;i=g;return e|0}while(1){if((a[c[t>>2]>>0]|0)==0){l=31;break}c[l>>2]=Tz(c[t>>2]|0,m)|0;Km(j,c[t>>2]|0,c[l>>2]|0);c[t>>2]=(c[t>>2]|0)+(c[l>>2]|0);if((c[m>>2]|0)==0){l=31;break}do{if((a[c[t>>2]>>0]|0)==63){if((c[m>>2]|0)>1){rg((c[t>>2]|0)+1|0,n)|0;break}else{c[n>>2]=c[o>>2];break}}else{c[n>>2]=He(c[p>>2]|0,c[t>>2]|0,c[m>>2]|0)|0}}while(0);c[t>>2]=(c[t>>2]|0)+(c[m>>2]|0);c[o>>2]=(c[n>>2]|0)+1;c[q>>2]=(c[(c[p>>2]|0)+60>>2]|0)+(((c[n>>2]|0)-1|0)*40|0);if((b[(c[q>>2]|0)+28>>1]&1|0)!=0){Km(j,9744,4);continue}z=c[q>>2]|0;if((b[(c[q>>2]|0)+28>>1]&4|0)!=0){z=z+16|0;f=c[z+4>>2]|0;e=s;c[e>>2]=c[z>>2];c[e+4>>2]=f;Xm(j,0,9360,s);continue}f=c[q>>2]|0;if((b[z+28>>1]&8|0)!=0){h[k>>3]=+h[f+8>>3];c[s>>2]=c[k>>2];c[s+4>>2]=c[k+4>>2];Xm(j,0,9712,s);continue}if((b[f+28>>1]&2|0)!=0){a[u>>0]=a[(c[(c[(c[r>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;if((d[u>>0]|0)!=1){f=v+0|0;z=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(z|0));c[v>>2]=c[r>>2];Qd(v,c[(c[q>>2]|0)+4>>2]|0,c[(c[q>>2]|0)+24>>2]|0,a[u>>0]|0,0)|0;tk(v,1)|0;c[q>>2]=v}c[w>>2]=c[(c[q>>2]|0)+24>>2];e=c[(c[q>>2]|0)+4>>2]|0;c[s>>2]=c[w>>2];c[s+4>>2]=e;Xm(j,0,31880,s);if((d[u>>0]|0)==1){continue}yd(v);continue}if((b[(c[q>>2]|0)+28>>1]&16384|0)!=0){c[s>>2]=c[(c[q>>2]|0)+16>>2];Xm(j,0,31888,s);continue}Km(j,31904,2);c[x>>2]=c[(c[q>>2]|0)+24>>2];c[y>>2]=0;while(1){if((c[y>>2]|0)>=(c[x>>2]|0)){break}c[s>>2]=a[(c[(c[q>>2]|0)+4>>2]|0)+(c[y>>2]|0)>>0]&255;Xm(j,0,31912,s);c[y>>2]=(c[y>>2]|0)+1}Km(j,31920,1)}if((l|0)==31){e=nc(j)|0;i=g;return e|0}return 0}function Tz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;j=g+16|0;h=g+12|0;k=g+8|0;f=g+4|0;l=g;c[j>>2]=b;c[h>>2]=d;c[f>>2]=0;c[c[h>>2]>>2]=0;while(1){if((a[c[j>>2]>>0]|0)==0){e=6;break}c[l>>2]=fm(c[j>>2]|0,k)|0;d=c[l>>2]|0;if((c[k>>2]|0)==135){break}c[f>>2]=(c[f>>2]|0)+d;c[j>>2]=(c[j>>2]|0)+(c[l>>2]|0)}if((e|0)==6){b=c[f>>2]|0;i=g;return b|0}c[c[h>>2]>>2]=d;b=c[f>>2]|0;i=g;return b|0}function Uz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+4|0;f=e;c[d>>2]=a;c[f>>2]=b;if((c[f>>2]|0)>0){c[(c[d>>2]|0)+156>>2]=c[f>>2]}i=e;return c[(c[d>>2]|0)+156>>2]|0}function Vz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+4|0;g=b;c[e>>2]=a;c[b+8>>2]=5;do{if(((c[(c[e>>2]|0)+296>>2]|0)%5|0|0)==0){c[g>>2]=(c[(c[e>>2]|0)+296>>2]|0)+5<<2;c[f>>2]=Pm(c[e>>2]|0,c[(c[e>>2]|0)+320>>2]|0,c[g>>2]|0)|0;if((c[f>>2]|0)!=0){g=(c[f>>2]|0)+(c[(c[e>>2]|0)+296>>2]<<2)|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[(c[e>>2]|0)+320>>2]=c[f>>2];break}c[d>>2]=7;g=c[d>>2]|0;i=b;return g|0}}while(0);c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}function Wz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;b=c[e>>2]|0;g=(c[f>>2]|0)+296|0;a=c[g>>2]|0;c[g>>2]=a+1;c[(c[(c[f>>2]|0)+320>>2]|0)+(a<<2)>>2]=b;sy(c[e>>2]|0);i=d;return}function Xz(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;g=o+20|0;l=o+16|0;k=o+12|0;n=o+24|0;m=o+8|0;j=o+4|0;p=o;c[l>>2]=b;c[k>>2]=e;a[n>>0]=f;c[m>>2]=c[(c[l>>2]|0)+4>>2];c[j>>2]=0;c[p>>2]=c[(c[m>>2]|0)+72>>2];while(1){if((c[p>>2]|0)==0){break}if((c[(c[p>>2]|0)+4>>2]|0)==(c[k>>2]|0)?(c[c[p>>2]>>2]|0)==(c[l>>2]|0):0){h=5;break}c[p>>2]=c[(c[p>>2]|0)+12>>2]}if((h|0)==5){c[j>>2]=c[p>>2]}do{if((c[j>>2]|0)==0){c[j>>2]=Kc(16)|0;if((c[j>>2]|0)!=0){c[(c[j>>2]|0)+4>>2]=c[k>>2];c[c[j>>2]>>2]=c[l>>2];c[(c[j>>2]|0)+12>>2]=c[(c[m>>2]|0)+72>>2];c[(c[m>>2]|0)+72>>2]=c[j>>2];break}c[g>>2]=7;b=c[g>>2]|0;i=o;return b|0}}while(0);if((d[n>>0]|0|0)>(d[(c[j>>2]|0)+8>>0]|0|0)){a[(c[j>>2]|0)+8>>0]=a[n>>0]|0}c[g>>2]=0;b=c[g>>2]|0;i=o;return b|0}function Yz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;g=e+20|0;h=e+16|0;k=e+12|0;l=e+8|0;j=e+4|0;f=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=((c[(c[g>>2]|0)+36>>2]|0)>>>0)/5|0;a=(c[k>>2]|0)-(c[h>>2]|0)|0;a=a+(vw(c[g>>2]|0,c[h>>2]|0)|0)|0;c[j>>2]=((a+(c[l>>2]|0)|0)>>>0)/((c[l>>2]|0)>>>0)|0;c[f>>2]=(c[h>>2]|0)-(c[k>>2]|0)-(c[j>>2]|0);if((c[h>>2]|0)>>>0>((((c[346]|0)>>>0)/((c[(c[g>>2]|0)+32>>2]|0)>>>0)|0)+1|0)>>>0?(c[f>>2]|0)>>>0<((((c[346]|0)>>>0)/((c[(c[g>>2]|0)+32>>2]|0)>>>0)|0)+1|0)>>>0:0){c[f>>2]=(c[f>>2]|0)+ -1}while(1){l=vw(c[g>>2]|0,c[f>>2]|0)|0;if((l|0)==(c[f>>2]|0)){b=1}else{b=(c[f>>2]|0)==((((c[346]|0)>>>0)/((c[(c[g>>2]|0)+32>>2]|0)>>>0)|0)+1|0)}d=c[f>>2]|0;if(!b){break}c[f>>2]=d+ -1}i=e;return d|0}function Zz(b){b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=b;c[f>>2]=c[(c[g>>2]|0)+8>>2];while(1){if((c[f>>2]|0)==0){break}g=(c[f>>2]|0)+80|0;a[g>>0]=(d[g>>0]|0)&-5;c[f>>2]=c[(c[f>>2]|0)+8>>2]}i=e;return}function _z(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;t=i;i=i+64|0;k=t+52|0;o=t+48|0;v=t+44|0;q=t+40|0;m=t+36|0;z=t+32|0;l=t+28|0;s=t+57|0;h=t+24|0;p=t+20|0;n=t+16|0;u=t+12|0;r=t+8|0;y=t+56|0;x=t+4|0;w=t;c[o>>2]=b;c[v>>2]=e;c[q>>2]=f;c[m>>2]=g;b=vw(c[o>>2]|0,c[q>>2]|0)|0;do{if((b|0)!=(c[q>>2]|0)?(c[q>>2]|0)!=((((c[346]|0)>>>0)/((c[(c[o>>2]|0)+32>>2]|0)>>>0)|0)+1|0):0){c[z>>2]=Ah((c[(c[(c[o>>2]|0)+12>>2]|0)+56>>2]|0)+36|0)|0;if((c[z>>2]|0)==0){c[k>>2]=101;b=c[k>>2]|0;i=t;return b|0}c[l>>2]=ww(c[o>>2]|0,c[q>>2]|0,s,h)|0;if((c[l>>2]|0)!=0){c[k>>2]=c[l>>2];b=c[k>>2]|0;i=t;return b|0}if((d[s>>0]|0|0)==1){c[k>>2]=ej(54203)|0;b=c[k>>2]|0;i=t;return b|0}if((d[s>>0]|0|0)==2){if((c[m>>2]|0)!=0){break}c[l>>2]=$z(c[o>>2]|0,n,p,c[q>>2]|0,1)|0;if((c[l>>2]|0)==0){Hk(c[n>>2]|0);break}c[k>>2]=c[l>>2];b=c[k>>2]|0;i=t;return b|0}a[y>>0]=0;c[x>>2]=0;c[l>>2]=hw(c[o>>2]|0,c[q>>2]|0,r,0)|0;if((c[l>>2]|0)!=0){c[k>>2]=c[l>>2];b=c[k>>2]|0;i=t;return b|0}if((c[m>>2]|0)==0){a[y>>0]=2;c[x>>2]=c[v>>2]}do{c[l>>2]=$z(c[o>>2]|0,w,u,c[x>>2]|0,a[y>>0]|0)|0;if((c[l>>2]|0)!=0){j=19;break}Hk(c[w>>2]|0);if((c[m>>2]|0)==0){break}}while((c[u>>2]|0)>>>0>(c[v>>2]|0)>>>0);if((j|0)==19){Hk(c[r>>2]|0);c[k>>2]=c[l>>2];b=c[k>>2]|0;i=t;return b|0}c[l>>2]=aA(c[o>>2]|0,c[r>>2]|0,a[s>>0]|0,c[h>>2]|0,c[u>>2]|0,c[m>>2]|0)|0;Hk(c[r>>2]|0);if((c[l>>2]|0)!=0){c[k>>2]=c[l>>2];b=c[k>>2]|0;i=t;return b|0}}}while(0);if((c[m>>2]|0)==0){while(1){c[q>>2]=(c[q>>2]|0)+ -1;if((c[q>>2]|0)==((((c[346]|0)>>>0)/((c[(c[o>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){continue}b=vw(c[o>>2]|0,c[q>>2]|0)|0;if((b|0)!=(c[q>>2]|0)){break}}a[(c[o>>2]|0)+19>>0]=1;c[(c[o>>2]|0)+44>>2]=c[q>>2]}c[k>>2]=0;b=c[k>>2]|0;i=t;return b|0}function $z(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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,G=0,H=0,I=0,J=0,K=0,L=0;m=i;i=i+112|0;j=m+92|0;v=m+88|0;l=m+84|0;r=m+80|0;z=m+76|0;B=m+98|0;s=m+72|0;k=m+68|0;L=m+64|0;t=m+60|0;C=m+56|0;o=m+52|0;w=m+48|0;q=m+44|0;u=m+97|0;I=m+96|0;x=m+40|0;y=m+36|0;D=m+32|0;A=m+28|0;n=m+24|0;E=m+20|0;H=m+16|0;G=m+12|0;F=m+8|0;J=m+4|0;K=m;c[v>>2]=b;c[l>>2]=e;c[r>>2]=f;c[z>>2]=g;a[B>>0]=h;c[C>>2]=0;c[o>>2]=0;c[s>>2]=c[(c[v>>2]|0)+12>>2];c[w>>2]=gw(c[v>>2]|0)|0;c[L>>2]=Ah((c[(c[s>>2]|0)+56>>2]|0)+36|0)|0;if((c[L>>2]|0)>>>0>=(c[w>>2]|0)>>>0){c[j>>2]=ej(56167)|0;b=c[j>>2]|0;i=m;return b|0}a:do{if((c[L>>2]|0)>>>0>0){a[u>>0]=0;do{if((d[B>>0]|0)==1){if((c[z>>2]|0)>>>0<=(c[w>>2]|0)>>>0){c[k>>2]=ww(c[v>>2]|0,c[z>>2]|0,I,0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}else{if((d[I>>0]|0)!=2){break}a[u>>0]=1;break}}}else{if((d[B>>0]|0)==2){a[u>>0]=1}}}while(0);c[k>>2]=dd(c[(c[s>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}Yj((c[(c[s>>2]|0)+56>>2]|0)+36|0,(c[L>>2]|0)-1|0);b:while(1){c[o>>2]=c[C>>2];if((c[o>>2]|0)!=0){c[q>>2]=Ah(c[(c[o>>2]|0)+56>>2]|0)|0}else{c[q>>2]=Ah((c[(c[s>>2]|0)+56>>2]|0)+32|0)|0}if((c[q>>2]|0)>>>0>(c[w>>2]|0)>>>0){c[k>>2]=ej(56216)|0}else{c[k>>2]=hw(c[v>>2]|0,c[q>>2]|0,C,0)|0}if((c[k>>2]|0)!=0){p=22;break}c[t>>2]=Ah((c[(c[C>>2]|0)+56>>2]|0)+4|0)|0;if((c[t>>2]|0)==0?(a[u>>0]|0)==0:0){c[k>>2]=dd(c[(c[C>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){break a}c[c[r>>2]>>2]=c[q>>2];b=(c[(c[s>>2]|0)+56>>2]|0)+32|0;e=c[(c[C>>2]|0)+56>>2]|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0;c[c[l>>2]>>2]=c[C>>2];c[C>>2]=0}else{p=27}c:do{if((p|0)==27){p=0;if((c[t>>2]|0)>>>0>((((c[(c[v>>2]|0)+36>>2]|0)>>>0)/4|0)-2|0)>>>0){p=28;break b}do{if((d[u>>0]|0)!=0){if((c[z>>2]|0)!=(c[q>>2]|0)){if(!((c[q>>2]|0)>>>0<(c[z>>2]|0)>>>0)){break}if((d[B>>0]|0)!=2){break}}c[c[r>>2]>>2]=c[q>>2];c[c[l>>2]>>2]=c[C>>2];a[u>>0]=0;c[k>>2]=dd(c[(c[C>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){break a}do{if((c[t>>2]|0)==0){if((c[o>>2]|0)==0){b=(c[(c[s>>2]|0)+56>>2]|0)+32|0;e=c[(c[C>>2]|0)+56>>2]|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0;break}c[k>>2]=dd(c[(c[o>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){break a}b=c[(c[o>>2]|0)+56>>2]|0;e=c[(c[C>>2]|0)+56>>2]|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0}else{c[y>>2]=Ah((c[(c[C>>2]|0)+56>>2]|0)+8|0)|0;if((c[y>>2]|0)>>>0>(c[w>>2]|0)>>>0){p=40;break b}c[k>>2]=hw(c[v>>2]|0,c[y>>2]|0,x,0)|0;if((c[k>>2]|0)!=0){break a}c[k>>2]=dd(c[(c[x>>2]|0)+68>>2]|0)|0;f=c[x>>2]|0;if((c[k>>2]|0)!=0){p=43;break b}b=c[f+56>>2]|0;e=c[(c[C>>2]|0)+56>>2]|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0;Yj((c[(c[x>>2]|0)+56>>2]|0)+4|0,(c[t>>2]|0)-1|0);dE((c[(c[x>>2]|0)+56>>2]|0)+8|0,(c[(c[C>>2]|0)+56>>2]|0)+12|0,(c[t>>2]|0)-1<<2|0)|0;Hk(c[x>>2]|0);if((c[o>>2]|0)==0){Yj((c[(c[s>>2]|0)+56>>2]|0)+32|0,c[y>>2]|0);break}c[k>>2]=dd(c[(c[o>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){break a}Yj(c[(c[o>>2]|0)+56>>2]|0,c[y>>2]|0)}}while(0);c[C>>2]=0;break c}}while(0);if((c[t>>2]|0)>>>0>0){c[n>>2]=c[(c[C>>2]|0)+56>>2];b=(c[z>>2]|0)>>>0>0;c[D>>2]=0;d:do{if(b){if((d[B>>0]|0)==2){c[E>>2]=0;while(1){if(!((c[E>>2]|0)>>>0<(c[t>>2]|0)>>>0)){break d}c[A>>2]=Ah((c[n>>2]|0)+(8+(c[E>>2]<<2))|0)|0;f=c[E>>2]|0;if((c[A>>2]|0)>>>0<=(c[z>>2]|0)>>>0){break}c[E>>2]=f+1}c[D>>2]=f;break}else{b=Ah((c[n>>2]|0)+8|0)|0;c[H>>2]=Nr(b-(c[z>>2]|0)|0)|0;c[E>>2]=1;while(1){if(!((c[E>>2]|0)>>>0<(c[t>>2]|0)>>>0)){break d}b=Ah((c[n>>2]|0)+(8+(c[E>>2]<<2))|0)|0;c[G>>2]=Nr(b-(c[z>>2]|0)|0)|0;if((c[G>>2]|0)<(c[H>>2]|0)){c[D>>2]=c[E>>2];c[H>>2]=c[G>>2]}c[E>>2]=(c[E>>2]|0)+1}}}}while(0);c[A>>2]=Ah((c[n>>2]|0)+(8+(c[D>>2]<<2))|0)|0;if((c[A>>2]|0)>>>0>(c[w>>2]|0)>>>0){p=63;break b}if((a[u>>0]|0)!=0?(c[A>>2]|0)!=(c[z>>2]|0):0){if(!((c[A>>2]|0)>>>0<(c[z>>2]|0)>>>0)){break}if((d[B>>0]|0)!=2){break}}c[c[r>>2]>>2]=c[A>>2];c[k>>2]=dd(c[(c[C>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){break a}if((c[D>>2]|0)>>>0<((c[t>>2]|0)-1|0)>>>0){b=(c[n>>2]|0)+(8+(c[D>>2]<<2))|0;e=(c[n>>2]|0)+(4+(c[t>>2]<<2))|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0}Yj((c[n>>2]|0)+4|0,(c[t>>2]|0)-1|0);b=(hA(c[v>>2]|0,c[c[r>>2]>>2]|0)|0)!=0^1;c[F>>2]=b?1:0;c[k>>2]=hw(c[v>>2]|0,c[c[r>>2]>>2]|0,c[l>>2]|0,c[F>>2]|0)|0;do{if((c[k>>2]|0)==0){c[k>>2]=dd(c[(c[c[l>>2]>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)==0){break}Hk(c[c[l>>2]>>2]|0)}}while(0);a[u>>0]=0}}}while(0);Hk(c[o>>2]|0);c[o>>2]=0;if((a[u>>0]|0)==0){break a}}if((p|0)==22){c[C>>2]=0;break}else if((p|0)==28){c[k>>2]=ej(56244)|0;break}else if((p|0)==40){c[k>>2]=ej(56278)|0;break}else if((p|0)==43){Hk(f);break}else if((p|0)==63){c[k>>2]=ej(56343)|0;break}}else{c[J>>2]=0==(d[(c[v>>2]|0)+19>>0]|0)?1:0;c[k>>2]=dd(c[(c[(c[v>>2]|0)+12>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}b=(c[v>>2]|0)+44|0;c[b>>2]=(c[b>>2]|0)+1;if((c[(c[v>>2]|0)+44>>2]|0)==((((c[346]|0)>>>0)/((c[(c[v>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){b=(c[v>>2]|0)+44|0;c[b>>2]=(c[b>>2]|0)+1}do{if((d[(c[v>>2]|0)+17>>0]|0)!=0?(b=vw(c[v>>2]|0,c[(c[v>>2]|0)+44>>2]|0)|0,(b|0)==(c[(c[v>>2]|0)+44>>2]|0)):0){c[K>>2]=0;c[k>>2]=hw(c[v>>2]|0,c[(c[v>>2]|0)+44>>2]|0,K,c[J>>2]|0)|0;if((c[k>>2]|0)==0){c[k>>2]=dd(c[(c[K>>2]|0)+68>>2]|0)|0;Hk(c[K>>2]|0)}if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}else{b=(c[v>>2]|0)+44|0;c[b>>2]=(c[b>>2]|0)+1;if((c[(c[v>>2]|0)+44>>2]|0)!=((((c[346]|0)>>>0)/((c[(c[v>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){break}b=(c[v>>2]|0)+44|0;c[b>>2]=(c[b>>2]|0)+1;break}}}while(0);Yj((c[(c[(c[v>>2]|0)+12>>2]|0)+56>>2]|0)+28|0,c[(c[v>>2]|0)+44>>2]|0);c[c[r>>2]>>2]=c[(c[v>>2]|0)+44>>2];c[k>>2]=hw(c[v>>2]|0,c[c[r>>2]>>2]|0,c[l>>2]|0,c[J>>2]|0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}else{c[k>>2]=dd(c[(c[c[l>>2]>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)==0){break}Hk(c[c[l>>2]>>2]|0);break}}}while(0);Hk(c[C>>2]|0);Hk(c[o>>2]|0);n=c[l>>2]|0;do{if((c[k>>2]|0)==0){b=(Lj(c[(c[n>>2]|0)+68>>2]|0)|0)>1;n=c[c[l>>2]>>2]|0;if(!b){a[n>>0]=0;break}Hk(n);c[c[l>>2]>>2]=0;c[j>>2]=ej(56442)|0;b=c[j>>2]|0;i=m;return b|0}else{c[n>>2]=0}}while(0);c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}function aA(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;q=i;i=i+48|0;k=q+40|0;m=q+36|0;u=q+32|0;p=q+44|0;n=q+28|0;r=q+24|0;w=q+20|0;o=q+16|0;s=q+12|0;x=q+8|0;l=q+4|0;t=q;c[m>>2]=b;c[u>>2]=e;a[p>>0]=f;c[n>>2]=g;c[r>>2]=h;c[w>>2]=j;c[s>>2]=c[(c[u>>2]|0)+72>>2];c[x>>2]=c[c[m>>2]>>2];c[l>>2]=bA(c[x>>2]|0,c[(c[u>>2]|0)+68>>2]|0,c[r>>2]|0,c[w>>2]|0)|0;if((c[l>>2]|0)!=0){c[k>>2]=c[l>>2];x=c[k>>2]|0;i=q;return x|0}c[(c[u>>2]|0)+72>>2]=c[r>>2];if((d[p>>0]|0|0)!=5?(d[p>>0]|0|0)!=1:0){c[t>>2]=Ah(c[(c[u>>2]|0)+56>>2]|0)|0;if((c[t>>2]|0)!=0?(dA(c[m>>2]|0,c[t>>2]|0,4,c[r>>2]|0,l),(c[l>>2]|0)!=0):0){c[k>>2]=c[l>>2];x=c[k>>2]|0;i=q;return x|0}}else{v=5}if((v|0)==5?(c[l>>2]=cA(c[u>>2]|0)|0,(c[l>>2]|0)!=0):0){c[k>>2]=c[l>>2];x=c[k>>2]|0;i=q;return x|0}do{if((d[p>>0]|0|0)!=1){c[l>>2]=hw(c[m>>2]|0,c[n>>2]|0,o,0)|0;if((c[l>>2]|0)!=0){c[k>>2]=c[l>>2];x=c[k>>2]|0;i=q;return x|0}c[l>>2]=dd(c[(c[o>>2]|0)+68>>2]|0)|0;t=c[o>>2]|0;if((c[l>>2]|0)!=0){Hk(t);c[k>>2]=c[l>>2];x=c[k>>2]|0;i=q;return x|0}else{c[l>>2]=eA(t,c[s>>2]|0,c[r>>2]|0,a[p>>0]|0)|0;Hk(c[o>>2]|0);if((c[l>>2]|0)!=0){break}dA(c[m>>2]|0,c[r>>2]|0,a[p>>0]|0,c[n>>2]|0,l);break}}}while(0);c[k>>2]=c[l>>2];x=c[k>>2]|0;i=q;return x|0}function bA(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=i;i=i+48|0;k=l+36|0;r=l+32|0;p=l+28|0;j=l+24|0;t=l+20|0;n=l+16|0;m=l+12|0;q=l+8|0;o=l+4|0;s=l;c[r>>2]=d;c[p>>2]=f;c[j>>2]=g;c[t>>2]=h;c[m>>2]=0;if((a[(c[r>>2]|0)+15>>0]|0)!=0?(c[q>>2]=dd(c[p>>2]|0)|0,(c[q>>2]|0)!=0):0){c[k>>2]=c[q>>2];d=c[k>>2]|0;i=l;return d|0}if(((b[(c[p>>2]|0)+24>>1]&2|0)!=0?(Rj(c[p>>2]|0)|0)!=0:0)?(d=Sj(c[p>>2]|0)|0,c[q>>2]=d,0!=(d|0)):0){c[k>>2]=c[q>>2];d=c[k>>2]|0;i=l;return d|0}if((b[(c[p>>2]|0)+24>>1]&4|0)!=0?(c[t>>2]|0)==0:0){c[m>>2]=c[(c[p>>2]|0)+20>>2]}d=(c[p>>2]|0)+24|0;b[d>>1]=e[d>>1]&-5;c[n>>2]=Bi(c[r>>2]|0,c[j>>2]|0)|0;do{if((c[n>>2]|0)!=0){h=(c[p>>2]|0)+24|0;b[h>>1]=e[h>>1]|b[(c[n>>2]|0)+24>>1]&4;h=c[n>>2]|0;if((a[(c[r>>2]|0)+15>>0]|0)!=0){gA(h,(c[(c[r>>2]|0)+24>>2]|0)+1|0);break}else{Xi(h);break}}}while(0);c[o>>2]=c[(c[p>>2]|0)+20>>2];gA(c[p>>2]|0,c[j>>2]|0);Di(c[p>>2]|0);if((a[(c[r>>2]|0)+15>>0]|0)!=0){gA(c[n>>2]|0,c[o>>2]|0);_i(c[n>>2]|0)}do{if((c[m>>2]|0)!=0){c[q>>2]=Uc(c[r>>2]|0,c[m>>2]|0,s,0)|0;if((c[q>>2]|0)==0){d=(c[s>>2]|0)+24|0;b[d>>1]=e[d>>1]|4;Di(c[s>>2]|0);_i(c[s>>2]|0);break}if((c[m>>2]|0)>>>0<=(c[(c[r>>2]|0)+28>>2]|0)>>>0){Qg(c[(c[r>>2]|0)+56>>2]|0,c[m>>2]|0,c[(c[r>>2]|0)+200>>2]|0)}c[k>>2]=c[q>>2];d=c[k>>2]|0;i=l;return d|0}}while(0);c[k>>2]=0;d=c[k>>2]|0;i=l;return d|0}function cA(b){b=b|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+48|0;h=f+32|0;p=f+28|0;q=f+24|0;l=f+20|0;g=f+16|0;j=f+36|0;m=f+12|0;n=f+8|0;o=f+4|0;k=f;c[h>>2]=b;c[g>>2]=c[(c[h>>2]|0)+52>>2];a[j>>0]=a[c[h>>2]>>0]|0;c[m>>2]=c[(c[h>>2]|0)+72>>2];c[l>>2]=Mj(c[h>>2]|0)|0;if((c[l>>2]|0)!=0){q=a[j>>0]|0;b=c[h>>2]|0;a[b>>0]=q;b=c[l>>2]|0;i=f;return b|0}c[q>>2]=e[(c[h>>2]|0)+16>>1]|0;c[p>>2]=0;while(1){b=c[h>>2]|0;if((c[p>>2]|0)>=(c[q>>2]|0)){break}c[n>>2]=(c[b+56>>2]|0)+(e[(c[h>>2]|0)+18>>1]&(d[(c[(c[h>>2]|0)+64>>2]|0)+(c[p>>2]<<1)>>0]<<8|d[(c[(c[h>>2]|0)+64>>2]|0)+(c[p>>2]<<1)+1>>0]));fA(c[h>>2]|0,c[n>>2]|0,l);if((a[(c[h>>2]|0)+3>>0]|0)==0){c[o>>2]=Ah(c[n>>2]|0)|0;dA(c[g>>2]|0,c[o>>2]|0,5,c[m>>2]|0,l)}c[p>>2]=(c[p>>2]|0)+1}if((a[b+3>>0]|0)!=0){q=a[j>>0]|0;b=c[h>>2]|0;a[b>>0]=q;b=c[l>>2]|0;i=f;return b|0}c[k>>2]=Ah((c[(c[h>>2]|0)+56>>2]|0)+((d[(c[h>>2]|0)+5>>0]|0)+8)|0)|0;dA(c[g>>2]|0,c[k>>2]|0,5,c[m>>2]|0,l);q=a[j>>0]|0;b=c[h>>2]|0;a[b>>0]=q;b=c[l>>2]|0;i=f;return b|0}function dA(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+48|0;t=q+32|0;r=q+28|0;j=q+36|0;o=q+24|0;k=q+20|0;p=q+16|0;m=q+12|0;s=q+8|0;n=q+4|0;l=q;c[t>>2]=b;c[r>>2]=e;a[j>>0]=f;c[o>>2]=g;c[k>>2]=h;if((c[c[k>>2]>>2]|0)!=0){i=q;return}if((c[r>>2]|0)==0){b=ej(51976)|0;c[c[k>>2]>>2]=b;i=q;return}c[s>>2]=vw(c[t>>2]|0,c[r>>2]|0)|0;c[l>>2]=Uc(c[c[t>>2]>>2]|0,c[s>>2]|0,p,0)|0;if((c[l>>2]|0)!=0){c[c[k>>2]>>2]=c[l>>2];i=q;return}c[n>>2]=((c[r>>2]|0)-(c[s>>2]|0)-1|0)*5;do{if((c[n>>2]|0)>=0){c[m>>2]=Wc(c[p>>2]|0)|0;if((d[j>>0]|0|0)==(d[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0|0)?(b=Ah((c[m>>2]|0)+((c[n>>2]|0)+1)|0)|0,(b|0)==(c[o>>2]|0)):0){break}b=dd(c[p>>2]|0)|0;c[l>>2]=b;c[c[k>>2]>>2]=b;if((c[l>>2]|0)==0){a[(c[m>>2]|0)+(c[n>>2]|0)>>0]=a[j>>0]|0;Yj((c[m>>2]|0)+((c[n>>2]|0)+1)|0,c[o>>2]|0)}}else{b=ej(51987)|0;c[c[k>>2]>>2]=b}}while(0);Xc(c[p>>2]|0);i=q;return}function eA(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;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;r=i;i=i+64|0;l=r+56|0;n=r+52|0;o=r+48|0;m=r+44|0;j=r+61|0;q=r+60|0;s=r+40|0;t=r+36|0;u=r+32|0;p=r;c[n>>2]=b;c[o>>2]=f;c[m>>2]=g;a[j>>0]=h;h=c[n>>2]|0;do{if((d[j>>0]|0|0)==4){b=Ah(c[h+56>>2]|0)|0;if((b|0)==(c[o>>2]|0)){Yj(c[(c[n>>2]|0)+56>>2]|0,c[m>>2]|0);break}c[l>>2]=ej(54035)|0;b=c[l>>2]|0;i=r;return b|0}else{a[q>>0]=a[h>>0]|0;Mj(c[n>>2]|0)|0;c[t>>2]=e[(c[n>>2]|0)+16>>1]|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[t>>2]|0)){break}c[u>>2]=(c[(c[n>>2]|0)+56>>2]|0)+((e[(c[n>>2]|0)+18>>1]|0)&((d[(c[(c[n>>2]|0)+64>>2]|0)+(c[s>>2]<<1)>>0]|0)<<8|(d[(c[(c[n>>2]|0)+64>>2]|0)+(c[s>>2]<<1)+1>>0]|0)));if((d[j>>0]|0|0)==3){qw(c[n>>2]|0,c[u>>2]|0,p);if(((e[p+24>>1]|0|0)!=0?((c[u>>2]|0)+(e[p+24>>1]|0)+3|0)>>>0<=((c[(c[n>>2]|0)+56>>2]|0)+(e[(c[n>>2]|0)+18>>1]|0)|0)>>>0:0)?(b=c[o>>2]|0,(b|0)==(Ah((c[u>>2]|0)+(e[p+24>>1]|0)|0)|0)):0){k=11;break}}else{b=Ah(c[u>>2]|0)|0;if((b|0)==(c[o>>2]|0)){k=13;break}}c[s>>2]=(c[s>>2]|0)+1}if((k|0)==11){Yj((c[u>>2]|0)+(e[p+24>>1]|0)|0,c[m>>2]|0)}else if((k|0)==13){Yj(c[u>>2]|0,c[m>>2]|0)}do{if((c[s>>2]|0)==(c[t>>2]|0)){if((d[j>>0]|0|0)==5?(b=Ah((c[(c[n>>2]|0)+56>>2]|0)+((d[(c[n>>2]|0)+5>>0]|0)+8)|0)|0,(b|0)==(c[o>>2]|0)):0){Yj((c[(c[n>>2]|0)+56>>2]|0)+((d[(c[n>>2]|0)+5>>0]|0)+8)|0,c[m>>2]|0);break}c[l>>2]=ej(54069)|0;b=c[l>>2]|0;i=r;return b|0}}while(0);a[c[n>>2]>>0]=a[q>>0]|0}}while(0);c[l>>2]=0;b=c[l>>2]|0;i=r;return b|0}function fA(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+48|0;l=g+44|0;h=g+40|0;m=g+36|0;j=g;k=g+32|0;c[l>>2]=a;c[h>>2]=d;c[m>>2]=f;if((c[c[m>>2]>>2]|0)!=0){i=g;return}qw(c[l>>2]|0,c[h>>2]|0,j);if((b[j+24>>1]|0)==0){i=g;return}c[k>>2]=Ah((c[h>>2]|0)+(e[j+24>>1]|0)|0)|0;dA(c[(c[l>>2]|0)+52>>2]|0,c[k>>2]|0,3,c[(c[l>>2]|0)+72>>2]|0,c[m>>2]|0);i=g;return}function gA(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=d;c[h>>2]=c[(c[f>>2]|0)+28>>2];Bb[c[38652>>2]&3](c[(c[h>>2]|0)+40>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+20>>2]|0,c[g>>2]|0);c[(c[f>>2]|0)+20>>2]=c[g>>2];if((b[(c[f>>2]|0)+24>>1]&2|0)==0){i=e;return}if((b[(c[f>>2]|0)+24>>1]&4|0)==0){i=e;return}Lg(c[f>>2]|0);Fi(c[f>>2]|0);i=e;return}function hA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d+4|0;e=d;c[g>>2]=a;c[f>>2]=b;c[e>>2]=c[(c[g>>2]|0)+60>>2];if((c[e>>2]|0)==0){g=0;g=g&1;i=d;return g|0}g=c[f>>2]|0;if(g>>>0>(Sg(c[e>>2]|0)|0)>>>0){g=1;g=g&1;i=d;return g|0}g=(Rg(c[e>>2]|0,c[f>>2]|0)|0)!=0;g=g&1;i=d;return g|0}function iA(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+15>>0]|0|0}function jA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+20|0;h=e+16|0;g=e+12|0;k=e+8|0;j=e+4|0;c[h>>2]=a;c[g>>2]=b;c[k>>2]=d;if((c[k>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=e;return a|0}if(0!=(kf(c[h>>2]|0,c[k>>2]|0,-1,j,0)|0)){b=c[g>>2]|0;a=c[h>>2]|0;an(b,a,jf(c[h>>2]|0)|0,e);c[f>>2]=hf(c[h>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}else{de(c[j>>2]|0)|0;c[f>>2]=oA(c[h>>2]|0,c[j>>2]|0,c[g>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}return 0}function kA(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;Mc(c[e>>2]|0);c[b>>2]=(c[(c[(c[e>>2]|0)+4>>2]|0)+32>>2]|0)-(c[(c[(c[e>>2]|0)+4>>2]|0)+36>>2]|0);i=d;return c[b>>2]|0}function lA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;f=j+20|0;h=j+16|0;k=j+12|0;l=j+8|0;e=j+4|0;g=j;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[g>>2]=kf(c[h>>2]|0,c[l>>2]|0,-1,e,0)|0;if((c[g>>2]|0)!=0){c[f>>2]=c[g>>2];l=c[f>>2]|0;i=j;return l|0}while(1){l=100==(de(c[e>>2]|0)|0);d=c[h>>2]|0;if(!l){b=6;break}l=c[k>>2]|0;c[g>>2]=jA(d,l,ve(c[e>>2]|0,0)|0)|0;if((c[g>>2]|0)!=0){b=5;break}}if((b|0)==5){oA(c[h>>2]|0,c[e>>2]|0,c[k>>2]|0)|0;c[f>>2]=c[g>>2];l=c[f>>2]|0;i=j;return l|0}else if((b|0)==6){c[f>>2]=oA(d,c[e>>2]|0,c[k>>2]|0)|0;l=c[f>>2]|0;i=j;return l|0}return 0}function mA(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+80|0;f=g+68|0;h=g+64|0;k=g+60|0;m=g+56|0;j=g+8|0;l=g;c[f>>2]=a;c[h>>2]=d;Mc(c[f>>2]|0);Mc(c[h>>2]|0);c[m>>2]=bd(Rb(c[f>>2]|0)|0)|0;if((c[c[m>>2]>>2]|0)!=0?(d=Rc(c[h>>2]|0)|0,d=lE(d|0,((d|0)<0)<<31>>31|0,Tc(c[h>>2]|0)|0,0)|0,a=l,c[a>>2]=d,c[a+4>>2]=D,a=cg(c[m>>2]|0,11,l)|0,c[k>>2]=a,c[k>>2]=(c[k>>2]|0)==12?0:a,(c[k>>2]|0)!=0):0){a=c[k>>2]|0;i=g;return a|0}l=j+0|0;d=l+48|0;do{c[l>>2]=0;l=l+4|0}while((l|0)<(d|0));c[j+20>>2]=c[c[h>>2]>>2];c[j+24>>2]=c[h>>2];c[j+4>>2]=c[f>>2];c[j+16>>2]=1;Lc(j,2147483647)|0;c[k>>2]=ld(j)|0;if((c[k>>2]|0)==0){a=(c[(c[f>>2]|0)+4>>2]|0)+22|0;b[a>>1]=(e[a>>1]|0)&-3;a=c[k>>2]|0;i=g;return a|0}else{nA(Rb(c[j+4>>2]|0)|0);a=c[k>>2]|0;i=g;return a|0}return 0}function nA(b){b=b|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=b;if((a[(c[f>>2]|0)+15>>0]|0)!=0){i=e;return}if((d[(c[f>>2]|0)+12>>0]|0)!=0){i=e;return}Cg(c[f>>2]|0);i=e;return}function oA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+16|0;j=e+12|0;g=e+8|0;f=e+4|0;c[h>>2]=a;c[j>>2]=b;c[g>>2]=d;c[f>>2]=sd(c[j>>2]|0)|0;if((c[f>>2]|0)==0){j=c[f>>2]|0;i=e;return j|0}a=c[g>>2]|0;j=c[h>>2]|0;an(a,j,jf(c[h>>2]|0)|0,e);j=c[f>>2]|0;i=e;return j|0}function pA(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+64|0;e=g+32|0;h=g+28|0;f=g+24|0;q=g+20|0;n=g+16|0;o=g+12|0;p=g+8|0;m=g+4|0;l=g;j=g+40|0;c[h>>2]=b;c[f>>2]=0;if((d[(c[h>>2]|0)+15>>0]|0)!=0?(c[(c[h>>2]|0)+40>>2]|0)!=0:0){c[e>>2]=c[(c[h>>2]|0)+40>>2];b=c[e>>2]|0;i=g;return b|0}a:do{if((Vh(c[h>>2]|0)|0)==0?(d[(c[h>>2]|0)+16>>0]|0)==0:0){c[q>>2]=1;c[f>>2]=ak(c[h>>2]|0,1)|0;if((c[f>>2]|0)==0){if((d[(c[h>>2]|0)+17>>0]|0)<=1){c[f>>2]=qA(c[h>>2]|0,q)|0}if((c[f>>2]|0)==0){if((c[q>>2]|0)!=0){if((a[(c[h>>2]|0)+14>>0]|0)!=0){c[f>>2]=776;break}c[f>>2]=bk(c[h>>2]|0,4)|0;if((c[f>>2]|0)!=0){break}if(((((c[c[(c[h>>2]|0)+64>>2]>>2]|0)==0?(c[n>>2]=c[c[h>>2]>>2],c[f>>2]=pi(c[n>>2]|0,c[(c[h>>2]|0)+172>>2]|0,0,o)|0,(c[f>>2]|0)==0):0)?(c[o>>2]|0)!=0:0)?(c[p>>2]=0,c[m>>2]=2050,c[f>>2]=xi(c[n>>2]|0,c[(c[h>>2]|0)+172>>2]|0,c[(c[h>>2]|0)+64>>2]|0,c[m>>2]|0,p)|0,(c[f>>2]|0)==0):0)?(c[p>>2]&1|0)!=0:0){c[f>>2]=Cj(44932)|0;Lh(c[(c[h>>2]|0)+64>>2]|0)|0}m=c[h>>2]|0;if((c[c[(c[h>>2]|0)+64>>2]>>2]|0)!=0){c[f>>2]=Jh(m)|0;if((c[f>>2]|0)==0){c[f>>2]=ni(c[h>>2]|0,1)|0;a[(c[h>>2]|0)+16>>0]=0}}else{if((a[m+4>>0]|0)==0){Zh(c[h>>2]|0,1)|0}}if((c[f>>2]|0)!=0){Ih(c[h>>2]|0,c[f>>2]|0)|0;break}}do{if((a[(c[h>>2]|0)+12>>0]|0)==0){if((c[(c[h>>2]|0)+88>>2]|0)==0?(rA(c[(c[h>>2]|0)+204>>2]|0)|0)<=0:0){break}c[l>>2]=0;c[f>>2]=sA(c[h>>2]|0,l)|0;if((c[f>>2]|0)!=0){break a}if((c[l>>2]|0)>>>0>0){c[f>>2]=yi(c[(c[h>>2]|0)+60>>2]|0,j,16,24,0)|0;if((c[f>>2]|0)!=0&(c[f>>2]|0)!=522){break a}}else{l=j+0|0;k=l+16|0;do{a[l>>0]=0;l=l+1|0}while((l|0)<(k|0))}if((VD((c[h>>2]|0)+100|0,j,16)|0)!=0){Cg(c[h>>2]|0)}}}while(0);c[f>>2]=tA(c[h>>2]|0)|0;k=37}}}else{k=37}}while(0);if((k|0)==37){if((Vh(c[h>>2]|0)|0)!=0){c[f>>2]=uA(c[h>>2]|0)|0}if((d[(c[h>>2]|0)+16>>0]|0)==0?(c[f>>2]|0)==0:0){c[f>>2]=sA(c[h>>2]|0,(c[h>>2]|0)+24|0)|0}}h=c[h>>2]|0;if((c[f>>2]|0)!=0){Hh(h)}else{a[h+16>>0]=1}c[e>>2]=c[f>>2];b=c[e>>2]|0;i=g;return b|0}function qA(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+48|0;h=g+32|0;f=g+28|0;j=g+24|0;l=g+20|0;q=g+16|0;m=g+12|0;p=g+8|0;o=g+4|0;n=g;k=g+36|0;c[h>>2]=b;c[f>>2]=e;c[j>>2]=c[c[h>>2]>>2];c[l>>2]=0;c[q>>2]=1;c[m>>2]=((c[c[(c[h>>2]|0)+64>>2]>>2]|0)!=0^1^1)&1;c[c[f>>2]>>2]=0;if((c[m>>2]|0)==0){c[l>>2]=pi(c[j>>2]|0,c[(c[h>>2]|0)+172>>2]|0,0,q)|0}if((c[l>>2]|0)!=0){b=c[l>>2]|0;i=g;return b|0}if((c[q>>2]|0)==0){b=c[l>>2]|0;i=g;return b|0}c[p>>2]=0;c[l>>2]=BA(c[(c[h>>2]|0)+60>>2]|0,p)|0;if((c[l>>2]|0)!=0){b=c[l>>2]|0;i=g;return b|0}if((c[p>>2]|0)!=0){b=c[l>>2]|0;i=g;return b|0}c[l>>2]=sA(c[h>>2]|0,o)|0;if((c[l>>2]|0)!=0){b=c[l>>2]|0;i=g;return b|0}if((c[o>>2]|0)==0?(c[m>>2]|0)==0:0){dh();if((bk(c[h>>2]|0,2)|0)==0?(Th(c[j>>2]|0,c[(c[h>>2]|0)+172>>2]|0,0)|0,(a[(c[h>>2]|0)+4>>0]|0)==0):0){Zh(c[h>>2]|0,1)|0}eh();b=c[l>>2]|0;i=g;return b|0}if((c[m>>2]|0)==0){c[n>>2]=2049;c[l>>2]=xi(c[j>>2]|0,c[(c[h>>2]|0)+172>>2]|0,c[(c[h>>2]|0)+64>>2]|0,c[n>>2]|0,n)|0}if((c[l>>2]|0)==0){a[k>>0]=0;b=yi(c[(c[h>>2]|0)+64>>2]|0,k,1,0,0)|0;c[l>>2]=b;c[l>>2]=(c[l>>2]|0)==522?0:b;if((c[m>>2]|0)==0){Lh(c[(c[h>>2]|0)+64>>2]|0)|0}c[c[f>>2]>>2]=(d[k>>0]|0)!=0&1;b=c[l>>2]|0;i=g;return b|0}else{if((c[l>>2]|0)!=14){b=c[l>>2]|0;i=g;return b|0}c[c[f>>2]>>2]=1;c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}return 0}function rA(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=0;if((c[(c[e>>2]|0)+40>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}c[d>>2]=ub[c[38640>>2]&31](c[(c[e>>2]|0)+40>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}function sA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;e=f+24|0;j=f+20|0;h=f+16|0;g=f+12|0;k=f;d=f+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=AA(c[(c[j>>2]|0)+208>>2]|0)|0;if((c[g>>2]|0)==0){a=k;c[a>>2]=0;c[a+4>>2]=0;if((c[c[(c[j>>2]|0)+60>>2]>>2]|0)!=0?(c[d>>2]=Ag(c[(c[j>>2]|0)+60>>2]|0,k)|0,(c[d>>2]|0)!=0):0){c[e>>2]=c[d>>2];a=c[e>>2]|0;i=f;return a|0}a=k;k=c[(c[j>>2]|0)+152>>2]|0;k=bE(c[a>>2]|0,c[a+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0;k=ZD(k|0,D|0,1,0)|0;a=c[(c[j>>2]|0)+152>>2]|0;a=jE(k|0,D|0,a|0,((a|0)<0)<<31>>31|0)|0;c[g>>2]=a}if((c[g>>2]|0)>>>0>(c[(c[j>>2]|0)+156>>2]|0)>>>0){c[(c[j>>2]|0)+156>>2]=c[g>>2]}c[c[h>>2]>>2]=c[g>>2];c[e>>2]=0;a=c[e>>2]|0;i=f;return a|0}function tA(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;h=e+12|0;g=e+8|0;j=e+4|0;k=e;c[h>>2]=b;c[g>>2]=0;do{if((a[(c[h>>2]|0)+12>>0]|0)==0){c[g>>2]=sA(c[h>>2]|0,k)|0;if((c[g>>2]|0)!=0){c[f>>2]=c[g>>2];l=c[f>>2]|0;i=e;return l|0}l=c[c[h>>2]>>2]|0;b=c[(c[h>>2]|0)+212>>2]|0;if((c[k>>2]|0)==0){l=Th(l,b,0)|0;c[g>>2]=l;c[g>>2]=(c[g>>2]|0)==5898?0:l;c[j>>2]=0}else{c[g>>2]=pi(l,b,0,j)|0}if((c[g>>2]|0)==0){k=c[h>>2]|0;if((c[j>>2]|0)!=0){c[g>>2]=wA(k,0)|0;break}if((d[k+5>>0]|0)==5){a[(c[h>>2]|0)+5>>0]=0}}}}while(0);c[f>>2]=c[g>>2];l=c[f>>2]|0;i=e;return l|0}function uA(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+8|0;d=b+4|0;f=b;c[e>>2]=a;c[f>>2]=0;ij(c[(c[e>>2]|0)+208>>2]|0);c[d>>2]=vA(c[(c[e>>2]|0)+208>>2]|0,f)|0;if((c[d>>2]|0)==0?(c[f>>2]|0)==0:0){f=c[d>>2]|0;i=b;return f|0}Cg(c[e>>2]|0);f=c[d>>2]|0;i=b;return f|0}function vA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;f=d+12|0;g=d+8|0;e=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=0;do{j=c[f>>2]|0;b=c[g>>2]|0;a=(c[h>>2]|0)+1|0;c[h>>2]=a;c[e>>2]=hk(j,b,0,a)|0}while((c[e>>2]|0)==-1);i=d;return c[e>>2]|0}function wA(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;g=h+12|0;j=h+8|0;k=h+4|0;f=h;c[j>>2]=b;c[k>>2]=d;c[f>>2]=0;do{if((a[(c[j>>2]|0)+12>>0]|0)==0?(c[(c[j>>2]|0)+208>>2]|0)==0:0){if((Iz(c[j>>2]|0)|0)!=0){Lh(c[(c[j>>2]|0)+64>>2]|0)|0;c[f>>2]=xA(c[j>>2]|0)|0;if((c[f>>2]|0)!=0){break}a[(c[j>>2]|0)+5>>0]=5;a[(c[j>>2]|0)+16>>0]=0;break}else{c[g>>2]=14;b=c[g>>2]|0;i=h;return b|0}}else{e=7}}while(0);if((e|0)==7){c[c[k>>2]>>2]=1}c[g>>2]=c[f>>2];b=c[g>>2]|0;i=h;return b|0}function xA(b){b=b|0;var e=0,f=0,g=0;g=i;i=i+16|0;e=g+4|0;f=g;c[e>>2]=b;c[f>>2]=0;if((a[(c[e>>2]|0)+4>>0]|0)!=0){c[f>>2]=yA(c[e>>2]|0)|0}if((c[f>>2]|0)!=0){e=c[e>>2]|0;Fg(e);f=c[f>>2]|0;i=g;return f|0}b=(c[e>>2]|0)+160|0;c[f>>2]=zA(c[c[e>>2]>>2]|0,c[(c[e>>2]|0)+60>>2]|0,c[(c[e>>2]|0)+212>>2]|0,d[(c[e>>2]|0)+4>>0]|0,c[b>>2]|0,c[b+4>>2]|0,(c[e>>2]|0)+208|0)|0;e=c[e>>2]|0;Fg(e);f=c[f>>2]|0;i=g;return f|0}function yA(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=bk(c[e>>2]|0,4)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}Zh(c[e>>2]|0,1)|0;e=c[d>>2]|0;i=b;return e|0}function zA(d,e,f,g,h,j,k){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;t=i;i=i+48|0;m=t+44|0;s=t+40|0;r=t+36|0;u=t+32|0;v=t+28|0;l=t;p=t+24|0;n=t+20|0;o=t+16|0;w=t+12|0;q=t+8|0;c[s>>2]=d;c[r>>2]=e;c[u>>2]=f;c[v>>2]=g;d=l;c[d>>2]=h;c[d+4>>2]=j;c[p>>2]=k;c[c[p>>2]>>2]=0;c[o>>2]=Kc(112+(c[(c[s>>2]|0)+4>>2]|0)|0)|0;if((c[o>>2]|0)==0){c[m>>2]=7;d=c[m>>2]|0;i=t;return d|0}c[c[o>>2]>>2]=c[s>>2];c[(c[o>>2]|0)+8>>2]=(c[o>>2]|0)+112;c[(c[o>>2]|0)+4>>2]=c[r>>2];b[(c[o>>2]|0)+40>>1]=-1;f=l;e=c[f+4>>2]|0;d=(c[o>>2]|0)+16|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[(c[o>>2]|0)+100>>2]=c[u>>2];a[(c[o>>2]|0)+48>>0]=1;a[(c[o>>2]|0)+49>>0]=1;a[(c[o>>2]|0)+43>>0]=(c[v>>2]|0)!=0?2:0;c[w>>2]=524294;c[n>>2]=xi(c[s>>2]|0,c[u>>2]|0,c[(c[o>>2]|0)+8>>2]|0,c[w>>2]|0,w)|0;if((c[n>>2]|0)==0?(c[w>>2]&1|0)!=0:0){a[(c[o>>2]|0)+46>>0]=1}if((c[n>>2]|0)!=0){nj(c[o>>2]|0,0);Lh(c[(c[o>>2]|0)+8>>2]|0)|0;gc(c[o>>2]|0)}else{c[q>>2]=ui(c[r>>2]|0)|0;if((c[q>>2]&1024|0)!=0){a[(c[o>>2]|0)+48>>0]=0}if((c[q>>2]&4096|0)!=0){a[(c[o>>2]|0)+49>>0]=0}c[c[p>>2]>>2]=c[o>>2]}c[m>>2]=c[n>>2];d=c[m>>2]|0;i=t;return d|0}function AA(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=a;if((c[f>>2]|0)!=0?(b[(c[f>>2]|0)+40>>1]|0)>=0:0){c[e>>2]=c[(c[f>>2]|0)+72>>2];f=c[e>>2]|0;i=d;return f|0}c[e>>2]=0;f=c[e>>2]|0;i=d;return f|0}function BA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+36>>2]&63](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function CA(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+176|0;d=b+168|0;e=b+164|0;g=b+160|0;f=b;c[d>>2]=a;_D(f|0,0,160)|0;while(1){if((c[d>>2]|0)==0){break}c[g>>2]=c[(c[d>>2]|0)+8>>2];c[(c[d>>2]|0)+8>>2]=0;c[e>>2]=0;while(1){if((c[f+(c[e>>2]<<2)>>2]|0)==0){break}c[d>>2]=FA(c[f+(c[e>>2]<<2)>>2]|0,c[d>>2]|0)|0;c[f+(c[e>>2]<<2)>>2]=0;c[e>>2]=(c[e>>2]|0)+1}c[f+(c[e>>2]<<2)>>2]=c[d>>2];c[d>>2]=c[g>>2]}c[d>>2]=0;c[e>>2]=0;while(1){a=c[d>>2]|0;if(!((c[e>>2]|0)>>>0<40)){break}c[d>>2]=FA(a,c[f+(c[e>>2]<<2)>>2]|0)|0;c[e>>2]=(c[e>>2]|0)+1}i=b;return a|0}function DA(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;e=b+12|0;g=b+8|0;d=b+4|0;f=b;c[e>>2]=a;c[d>>2]=c[e>>2];c[e>>2]=c[(c[d>>2]|0)+8>>2];c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+12>>2]=0;c[g>>2]=1;while(1){a=c[d>>2]|0;if((c[e>>2]|0)==0){break}c[f>>2]=a;c[d>>2]=c[e>>2];c[e>>2]=c[(c[d>>2]|0)+8>>2];c[(c[d>>2]|0)+12>>2]=c[f>>2];a=HA(e,c[g>>2]|0)|0;c[(c[d>>2]|0)+8>>2]=a;c[g>>2]=(c[g>>2]|0)+1}i=b;return a|0}function EA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;e=g+12|0;j=g+8|0;f=g+4|0;h=g;c[e>>2]=a;c[j>>2]=b;c[f>>2]=d;d=c[e>>2]|0;if((c[(c[e>>2]|0)+12>>2]|0)!=0){EA(c[d+12>>2]|0,c[j>>2]|0,h);c[(c[h>>2]|0)+8>>2]=c[e>>2]}else{c[c[j>>2]>>2]=d}h=c[e>>2]|0;if((c[(c[e>>2]|0)+8>>2]|0)!=0){EA(c[h+8>>2]|0,(c[e>>2]|0)+8|0,c[f>>2]|0);i=g;return}else{c[c[f>>2]>>2]=h;i=g;return}}function FA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;d=g+24|0;h=g+20|0;f=g;e=g+16|0;c[d>>2]=a;c[h>>2]=b;c[e>>2]=f;while(1){if((c[d>>2]|0)!=0){a=(c[h>>2]|0)!=0}else{a=0}b=c[d>>2]|0;if(!a){break}k=c[b+4>>2]|0;a=c[h>>2]|0;j=c[a+4>>2]|0;if((k|0)<(j|0)|((k|0)==(j|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)){c[(c[e>>2]|0)+8>>2]=c[d>>2];c[d>>2]=c[(c[d>>2]|0)+8>>2];c[e>>2]=c[(c[e>>2]|0)+8>>2];continue}j=c[h>>2]|0;b=c[j+4>>2]|0;k=c[d>>2]|0;a=c[k+4>>2]|0;if((b|0)<(a|0)|((b|0)==(a|0)?(c[j>>2]|0)>>>0<(c[k>>2]|0)>>>0:0)){c[(c[e>>2]|0)+8>>2]=c[h>>2];c[h>>2]=c[(c[h>>2]|0)+8>>2];c[e>>2]=c[(c[e>>2]|0)+8>>2];continue}else{c[d>>2]=c[(c[d>>2]|0)+8>>2];continue}}if((b|0)!=0){c[(c[e>>2]|0)+8>>2]=c[d>>2];k=f+8|0;k=c[k>>2]|0;i=g;return k|0}else{c[(c[e>>2]|0)+8>>2]=c[h>>2];k=f+8|0;k=c[k>>2]|0;i=g;return k|0}return 0}function GA(a){a=a|0;var d=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+8|0;g=d+4|0;h=d;c[g>>2]=a;do{if((e[(c[g>>2]|0)+24>>1]|0|0)==0){c[h>>2]=Le(c[(c[g>>2]|0)+4>>2]|0,1016)|0;if((c[h>>2]|0)!=0){c[c[h>>2]>>2]=c[c[g>>2]>>2];c[c[g>>2]>>2]=c[h>>2];c[(c[g>>2]|0)+16>>2]=(c[h>>2]|0)+8;b[(c[g>>2]|0)+24>>1]=63;break}c[f>>2]=0;h=c[f>>2]|0;i=d;return h|0}}while(0);h=(c[g>>2]|0)+24|0;b[h>>1]=(b[h>>1]|0)+ -1<<16>>16;g=(c[g>>2]|0)+16|0;h=c[g>>2]|0;c[g>>2]=h+16;c[f>>2]=h;h=c[f>>2]|0;i=d;return h|0}function HA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;g=d+12|0;h=d+8|0;f=d+4|0;j=d;c[g>>2]=a;c[h>>2]=b;if((c[c[g>>2]>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}b=c[g>>2]|0;if((c[h>>2]|0)==1){c[f>>2]=c[b>>2];c[c[g>>2]>>2]=c[(c[f>>2]|0)+8>>2];c[(c[f>>2]|0)+8>>2]=0;c[(c[f>>2]|0)+12>>2]=0;c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}c[j>>2]=HA(b,(c[h>>2]|0)-1|0)|0;c[f>>2]=c[c[g>>2]>>2];j=c[j>>2]|0;if((c[f>>2]|0)==0){c[e>>2]=j;a=c[e>>2]|0;i=d;return a|0}else{c[(c[f>>2]|0)+12>>2]=j;c[c[g>>2]>>2]=c[(c[f>>2]|0)+8>>2];a=HA(c[g>>2]|0,(c[h>>2]|0)-1|0)|0;c[(c[f>>2]|0)+8>>2]=a;c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}return 0}function IA(a){a=a|0;var d=0,f=0;d=i;i=i+16|0;f=d;c[f>>2]=a;if((b[(c[f>>2]|0)+26>>1]&1|0)==0){a=CA(c[(c[f>>2]|0)+8>>2]|0)|0;c[(c[f>>2]|0)+8>>2]=a}f=(c[f>>2]|0)+26|0;b[f>>1]=e[f>>1]|0|2;i=d;return}function JA(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g+12|0;k=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[k>>2]=d;c[h>>2]=e;c[f>>2]=c[k>>2];c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+4>>2]=c[j>>2];c[(c[f>>2]|0)+8>>2]=0;c[(c[f>>2]|0)+12>>2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+16>>2]=(c[f>>2]|0)+32;b[(c[f>>2]|0)+24>>1]=(((c[h>>2]|0)-32|0)>>>0)/16|0;b[(c[f>>2]|0)+26>>1]=1;c[(c[f>>2]|0)+28>>2]=0;i=g;return c[f>>2]|0}function KA(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=zg(c[(c[d>>2]|0)+204>>2]|0)|0;i=b;return a|0}function LA(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;h=f+4|0;g=f;c[h>>2]=b;c[g>>2]=e;b=(c[(c[h>>2]|0)+8>>2]|0)+(((c[g>>2]|0)>>>0)/8|0)|0;a[b>>0]=d[b>>0]|0|1<<(c[g>>2]&7);i=f;return}function MA(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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;q=i;i=i+64|0;n=q;p=q+56|0;v=q+52|0;j=q+48|0;m=q+44|0;o=q+40|0;w=q+36|0;k=q+32|0;l=q+28|0;u=q+24|0;r=q+20|0;t=q+16|0;s=q+12|0;c[p>>2]=b;c[v>>2]=e;c[j>>2]=f;c[m>>2]=g;c[o>>2]=h;c[k>>2]=c[m>>2];c[l>>2]=c[j>>2];while(1){b=c[m>>2]|0;c[m>>2]=b+ -1;if((b|0)<=0){r=24;break}if((c[(c[p>>2]|0)+16>>2]|0)==0){r=24;break}h=c[p>>2]|0;if((c[j>>2]|0)<1){r=5;break}if((RA(h,c[j>>2]|0,c[o>>2]|0)|0)!=0){r=24;break}if((Uc(c[(c[p>>2]|0)+4>>2]|0,c[j>>2]|0,u,0)|0)!=0){r=8;break}c[r>>2]=Wc(c[u>>2]|0)|0;do{if((c[v>>2]|0)==0){if((d[(c[c[p>>2]>>2]|0)+17>>0]|0)!=0?(c[m>>2]|0)>0:0){c[w>>2]=Ah(c[r>>2]|0)|0;NA(c[p>>2]|0,c[w>>2]|0,4,c[j>>2]|0,c[o>>2]|0)}}else{c[t>>2]=Ah((c[r>>2]|0)+4|0)|0;if((a[(c[c[p>>2]>>2]|0)+17>>0]|0)!=0){NA(c[p>>2]|0,c[j>>2]|0,2,0,c[o>>2]|0)}if((c[t>>2]|0)>(((c[(c[c[p>>2]>>2]|0)+36>>2]|0)/4|0)-2|0)){e=c[p>>2]|0;b=c[o>>2]|0;c[n>>2]=c[j>>2];QA(e,b,34224,n);c[m>>2]=(c[m>>2]|0)+ -1;break}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[t>>2]|0)){break}c[s>>2]=Ah((c[r>>2]|0)+(8+(c[w>>2]<<2))|0)|0;if((a[(c[c[p>>2]>>2]|0)+17>>0]|0)!=0){NA(c[p>>2]|0,c[s>>2]|0,2,0,c[o>>2]|0)}RA(c[p>>2]|0,c[s>>2]|0,c[o>>2]|0)|0;c[w>>2]=(c[w>>2]|0)+1}c[m>>2]=(c[m>>2]|0)-(c[t>>2]|0)}}while(0);c[j>>2]=Ah(c[r>>2]|0)|0;Xc(c[u>>2]|0)}if((r|0)==5){b=c[o>>2]|0;f=c[k>>2]|0;e=c[l>>2]|0;c[n>>2]=(c[m>>2]|0)+1;c[n+4>>2]=f;c[n+8>>2]=e;QA(h,b,34136,n);i=q;return}else if((r|0)==8){e=c[p>>2]|0;b=c[o>>2]|0;c[n>>2]=c[j>>2];QA(e,b,34200,n);i=q;return}else if((r|0)==24){i=q;return}}function NA(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+48|0;m=n;p=n+40|0;l=n+36|0;j=n+45|0;q=n+32|0;k=n+28|0;o=n+24|0;r=n+44|0;s=n+20|0;c[p>>2]=b;c[l>>2]=e;a[j>>0]=f;c[q>>2]=g;c[k>>2]=h;c[o>>2]=ww(c[c[p>>2]>>2]|0,c[l>>2]|0,r,s)|0;if((c[o>>2]|0)!=0){if((c[o>>2]|0)==7|(c[o>>2]|0)==3082){c[(c[p>>2]|0)+24>>2]=1}e=c[p>>2]|0;b=c[k>>2]|0;c[m>>2]=c[l>>2];QA(e,b,34048,m);i=n;return}if((d[r>>0]|0|0)==(d[j>>0]|0|0)?(c[s>>2]|0)==(c[q>>2]|0):0){i=n;return}e=c[p>>2]|0;b=c[k>>2]|0;p=d[j>>0]|0;q=c[q>>2]|0;g=d[r>>0]|0;f=c[s>>2]|0;c[m>>2]=c[l>>2];c[m+4>>2]=p;c[m+8>>2]=q;c[m+12>>2]=g;c[m+16>>2]=f;QA(e,b,34080,m);i=n;return}function OA(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;H=i;i=i+288|0;q=H+48|0;n=H+180|0;o=H+176|0;x=H+172|0;U=H+168|0;L=H+164|0;J=H+160|0;s=H+156|0;u=H+152|0;V=H+148|0;G=H+144|0;S=H+140|0;T=H+136|0;t=H+132|0;w=H+128|0;C=H+124|0;D=H+120|0;v=H+116|0;l=H+112|0;B=H+108|0;r=H+184|0;E=H+104|0;I=H+40|0;K=H+32|0;N=H+100|0;Q=H+96|0;R=H;P=H+92|0;O=H+88|0;F=H+84|0;y=H+80|0;z=H+76|0;A=H+72|0;M=H+68|0;p=H+64|0;c[o>>2]=f;c[x>>2]=g;c[U>>2]=h;c[L>>2]=j;c[J>>2]=k;c[E>>2]=0;f=I;c[f>>2]=0;c[f+4>>2]=0;f=K;c[f>>2]=0;c[f+4>>2]=0;c[q>>2]=c[x>>2];qc(100,r,33352,q)|0;c[l>>2]=c[c[o>>2]>>2];c[B>>2]=c[(c[l>>2]|0)+36>>2];if((c[x>>2]|0)==0){c[n>>2]=0;f=c[n>>2]|0;i=H;return f|0}if((RA(c[o>>2]|0,c[x>>2]|0,c[U>>2]|0)|0)!=0){c[n>>2]=0;f=c[n>>2]|0;i=H;return f|0}f=hw(c[l>>2]|0,c[x>>2]|0,s,0)|0;c[V>>2]=f;if((f|0)!=0){f=c[o>>2]|0;c[q>>2]=c[V>>2];QA(f,r,33368,q);c[n>>2]=0;f=c[n>>2]|0;i=H;return f|0}a[c[s>>2]>>0]=0;f=Mj(c[s>>2]|0)|0;c[V>>2]=f;if((f|0)!=0){f=c[o>>2]|0;c[q>>2]=c[V>>2];QA(f,r,33408,q);Hk(c[s>>2]|0);c[n>>2]=0;f=c[n>>2]|0;i=H;return f|0}c[G>>2]=0;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(e[(c[s>>2]|0)+16>>1]|0)){break}if((c[(c[o>>2]|0)+16>>2]|0)==0){break}f=c[u>>2]|0;c[q>>2]=c[x>>2];c[q+4>>2]=f;qc(100,r,33448,q)|0;c[N>>2]=(c[(c[s>>2]|0)+56>>2]|0)+(e[(c[s>>2]|0)+18>>1]&(d[(c[(c[s>>2]|0)+64>>2]|0)+(c[u>>2]<<1)>>0]<<8|d[(c[(c[s>>2]|0)+64>>2]|0)+(c[u>>2]<<1)+1>>0]));qw(c[s>>2]|0,c[N>>2]|0,R);c[Q>>2]=c[R+12>>2];do{if((a[(c[s>>2]|0)+2>>0]|0)!=0){U=R;V=c[U>>2]|0;U=c[U+4>>2]|0;if((c[u>>2]|0)==0){f=K;c[f>>2]=V;c[f+4>>2]=U;f=I;c[f>>2]=V;c[f+4>>2]=U;break}f=K;g=c[f+4>>2]|0;if((U|0)<(g|0)|((U|0)==(g|0)?V>>>0<=(c[f>>2]|0)>>>0:0)){f=c[o>>2]|0;V=R;k=c[V+4>>2]|0;h=K;j=c[h>>2]|0;h=c[h+4>>2]|0;g=q;c[g>>2]=c[V>>2];c[g+4>>2]=k;g=q+8|0;c[g>>2]=j;c[g+4>>2]=h;QA(f,r,33480,q)}h=R;g=c[h+4>>2]|0;f=K;c[f>>2]=c[h>>2];c[f+4>>2]=g}else{c[Q>>2]=(c[Q>>2]|0)+(c[R>>2]|0)}}while(0);if((c[Q>>2]|0)>>>0>(e[R+22>>1]|0)>>>0?((c[N>>2]|0)+(e[R+24>>1]|0)|0)>>>0<=((c[(c[s>>2]|0)+56>>2]|0)+(c[(c[l>>2]|0)+36>>2]|0)|0)>>>0:0){c[P>>2]=(((c[Q>>2]|0)-(e[R+22>>1]|0)+(c[B>>2]|0)-5|0)>>>0)/(((c[B>>2]|0)-4|0)>>>0)|0;c[O>>2]=Ah((c[N>>2]|0)+(e[R+24>>1]|0)|0)|0;if((a[(c[l>>2]|0)+17>>0]|0)!=0){NA(c[o>>2]|0,c[O>>2]|0,3,c[x>>2]|0,r)}MA(c[o>>2]|0,0,c[O>>2]|0,c[P>>2]|0,r)}if((a[(c[s>>2]|0)+3>>0]|0)==0){c[T>>2]=Ah(c[N>>2]|0)|0;if((a[(c[l>>2]|0)+17>>0]|0)!=0){NA(c[o>>2]|0,c[T>>2]|0,5,c[x>>2]|0,r)}c[S>>2]=OA(c[o>>2]|0,c[T>>2]|0,r,I,(c[u>>2]|0)==0?0:K)|0;if((c[u>>2]|0)>0?(c[S>>2]|0)!=(c[G>>2]|0):0){QA(c[o>>2]|0,r,33528,q)}c[G>>2]=c[S>>2]}c[u>>2]=(c[u>>2]|0)+1}if((a[(c[s>>2]|0)+3>>0]|0)==0){c[T>>2]=Ah((c[(c[s>>2]|0)+56>>2]|0)+((d[(c[s>>2]|0)+5>>0]|0)+8)|0)|0;c[q>>2]=c[x>>2];qc(100,r,33560,q)|0;if((a[(c[l>>2]|0)+17>>0]|0)!=0){NA(c[o>>2]|0,c[T>>2]|0,5,c[x>>2]|0,r)}OA(c[o>>2]|0,c[T>>2]|0,r,0,(b[(c[s>>2]|0)+16>>1]|0)!=0?K:0)|0}do{if((d[(c[s>>2]|0)+3>>0]|0)!=0?(d[(c[s>>2]|0)+2>>0]|0)!=0:0){N=(c[J>>2]|0)!=0;if((c[L>>2]|0)==0){if(!N){break}g=I;j=c[g+4>>2]|0;f=c[J>>2]|0;h=c[f+4>>2]|0;if(!((j|0)<(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0<=(c[f>>2]|0)>>>0:0))){break}f=c[o>>2]|0;V=I;k=c[V+4>>2]|0;h=c[J>>2]|0;j=c[h>>2]|0;h=c[h+4>>2]|0;g=q;c[g>>2]=c[V>>2];c[g+4>>2]=k;g=q+8|0;c[g>>2]=j;c[g+4>>2]=h;QA(f,r,33784,q);break}if(!N){g=K;j=c[g+4>>2]|0;f=c[L>>2]|0;h=c[f+4>>2]|0;if(!((j|0)>(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0>(c[f>>2]|0)>>>0:0))){break}f=c[o>>2]|0;V=K;k=c[V+4>>2]|0;h=c[L>>2]|0;j=c[h>>2]|0;h=c[h+4>>2]|0;g=q;c[g>>2]=c[V>>2];c[g+4>>2]=k;g=q+8|0;c[g>>2]=j;c[g+4>>2]=h;QA(f,r,33592,q);break}g=I;j=c[g+4>>2]|0;f=c[L>>2]|0;h=c[f+4>>2]|0;if((j|0)<(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0<=(c[f>>2]|0)>>>0:0)){f=c[o>>2]|0;V=I;k=c[V+4>>2]|0;h=c[L>>2]|0;j=c[h>>2]|0;h=c[h+4>>2]|0;g=q;c[g>>2]=c[V>>2];c[g+4>>2]=k;g=q+8|0;c[g>>2]=j;c[g+4>>2]=h;QA(f,r,33656,q)}g=K;j=c[g+4>>2]|0;f=c[J>>2]|0;h=c[f+4>>2]|0;if((j|0)>(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0>(c[f>>2]|0)>>>0:0)){f=c[o>>2]|0;V=K;k=c[V+4>>2]|0;h=c[J>>2]|0;j=c[h>>2]|0;h=c[h+4>>2]|0;g=q;c[g>>2]=c[V>>2];c[g+4>>2]=k;g=q+8|0;c[g>>2]=j;c[g+4>>2]=h;QA(f,r,33720,q)}h=K;g=c[h+4>>2]|0;f=c[L>>2]|0;c[f>>2]=c[h>>2];c[f+4>>2]=g}}while(0);c[v>>2]=c[(c[s>>2]|0)+56>>2];c[w>>2]=d[(c[s>>2]|0)+5>>0]|0;c[E>>2]=Bg(c[(c[l>>2]|0)+32>>2]|0)|0;if((c[E>>2]|0)!=0){c[F>>2]=((d[(c[v>>2]|0)+((c[w>>2]|0)+5)>>0]<<8|d[(c[v>>2]|0)+((c[w>>2]|0)+5)+1>>0])-1&65535)+1;_D((c[E>>2]|0)+(c[F>>2]|0)|0,0,(c[B>>2]|0)-(c[F>>2]|0)|0)|0;_D(c[E>>2]|0,1,c[F>>2]|0)|0;c[D>>2]=d[(c[v>>2]|0)+((c[w>>2]|0)+3)>>0]<<8|d[(c[v>>2]|0)+((c[w>>2]|0)+3)+1>>0];c[C>>2]=(c[w>>2]|0)+12-(d[(c[s>>2]|0)+3>>0]<<2);c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[D>>2]|0)){break}c[y>>2]=d[(c[v>>2]|0)+((c[C>>2]|0)+(c[u>>2]<<1))>>0]<<8|d[(c[v>>2]|0)+((c[C>>2]|0)+(c[u>>2]<<1))+1>>0];c[z>>2]=65536;if((c[y>>2]|0)<=((c[B>>2]|0)-4|0)){c[z>>2]=(SA(c[s>>2]|0,(c[v>>2]|0)+(c[y>>2]|0)|0)|0)&65535}a:do{if(((c[y>>2]|0)+(c[z>>2]|0)-1|0)>=(c[B>>2]|0)){f=c[o>>2]|0;g=c[x>>2]|0;c[q>>2]=c[u>>2];c[q+4>>2]=g;QA(f,0,33848,q)}else{c[A>>2]=(c[y>>2]|0)+(c[z>>2]|0)-1;while(1){if((c[A>>2]|0)<(c[y>>2]|0)){break a}f=(c[E>>2]|0)+(c[A>>2]|0)|0;a[f>>0]=(a[f>>0]|0)+1<<24>>24;c[A>>2]=(c[A>>2]|0)+ -1}}}while(0);c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=d[(c[v>>2]|0)+((c[w>>2]|0)+1)>>0]<<8|d[(c[v>>2]|0)+((c[w>>2]|0)+1)+1>>0];while(1){if((c[u>>2]|0)<=0){break}c[M>>2]=d[(c[v>>2]|0)+((c[u>>2]|0)+2)>>0]<<8|d[(c[v>>2]|0)+((c[u>>2]|0)+2)+1>>0];c[p>>2]=(c[u>>2]|0)+(c[M>>2]|0)-1;while(1){if((c[p>>2]|0)<(c[u>>2]|0)){break}f=(c[E>>2]|0)+(c[p>>2]|0)|0;a[f>>0]=(a[f>>0]|0)+1<<24>>24;c[p>>2]=(c[p>>2]|0)+ -1}c[p>>2]=d[(c[v>>2]|0)+(c[u>>2]|0)>>0]<<8|d[(c[v>>2]|0)+(c[u>>2]|0)+1>>0];c[u>>2]=c[p>>2]}c[t>>2]=0;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[B>>2]|0)){break}if((a[(c[E>>2]|0)+(c[u>>2]|0)>>0]|0)!=0){if((a[(c[E>>2]|0)+(c[u>>2]|0)>>0]|0)>1){m=73;break}}else{c[t>>2]=(c[t>>2]|0)+1}c[u>>2]=(c[u>>2]|0)+1}if((m|0)==73){f=c[o>>2]|0;g=c[x>>2]|0;c[q>>2]=c[u>>2];c[q+4>>2]=g;QA(f,0,33896,q)}if((c[t>>2]|0)!=(d[(c[v>>2]|0)+((c[w>>2]|0)+7)>>0]|0)){f=c[o>>2]|0;h=d[(c[v>>2]|0)+((c[w>>2]|0)+7)>>0]|0;g=c[x>>2]|0;c[q>>2]=c[t>>2];c[q+4>>2]=h;c[q+8>>2]=g;QA(f,0,33936,q)}}else{c[(c[o>>2]|0)+24>>2]=1}Dg(c[E>>2]|0);Hk(c[s>>2]|0);c[n>>2]=(c[G>>2]|0)+1;f=c[n>>2]|0;i=H;return f|0}function PA(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;g=i;i=i+16|0;f=g+4|0;e=g;c[f>>2]=a;c[e>>2]=b;i=g;return(d[(c[(c[f>>2]|0)+8>>2]|0)+(((c[e>>2]|0)>>>0)/8|0)>>0]|0)&1<<(c[e>>2]&7)|0}function QA(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;h=g+24|0;l=g+20|0;j=g+16|0;k=g;c[h>>2]=a;c[l>>2]=b;c[j>>2]=e;if((c[(c[h>>2]|0)+16>>2]|0)==0){i=g;return}a=(c[h>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+ -1;a=(c[h>>2]|0)+20|0;c[a>>2]=(c[a>>2]|0)+1;c[k>>2]=f;if((c[(c[h>>2]|0)+40>>2]|0)!=0){Km((c[h>>2]|0)+28|0,33344,1)}if((c[l>>2]|0)!=0){as((c[h>>2]|0)+28|0,c[l>>2]|0)}mc((c[h>>2]|0)+28|0,1,c[j>>2]|0,k);if((d[(c[h>>2]|0)+53>>0]|0|0)!=1){i=g;return}c[(c[h>>2]|0)+24>>2]=1;i=g;return}function RA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;e=j;f=j+16|0;k=j+12|0;h=j+8|0;g=j+4|0;c[k>>2]=a;c[h>>2]=b;c[g>>2]=d;if((c[h>>2]|0)==0){c[f>>2]=1;a=c[f>>2]|0;i=j;return a|0}d=c[k>>2]|0;if((c[h>>2]|0)>>>0>(c[(c[k>>2]|0)+12>>2]|0)>>>0){a=c[g>>2]|0;c[e>>2]=c[h>>2];QA(d,a,33992,e);c[f>>2]=1;a=c[f>>2]|0;i=j;return a|0}a=(PA(d,c[h>>2]|0)|0)!=0;k=c[k>>2]|0;if(a){a=c[g>>2]|0;c[e>>2]=c[h>>2];QA(k,a,34016,e);c[f>>2]=1;a=c[f>>2]|0;i=j;return a|0}else{LA(k,c[h>>2]|0);c[f>>2]=0;a=c[f>>2]|0;i=j;return a|0}return 0}function SA(b,f){b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;l=k+20|0;h=k+16|0;m=k+12|0;j=k+8|0;n=k+4|0;g=k;c[l>>2]=b;c[h>>2]=f;c[m>>2]=(c[h>>2]|0)+(d[(c[l>>2]|0)+6>>0]|0);a:do{if((a[(c[l>>2]|0)+2>>0]|0)!=0){if((a[(c[l>>2]|0)+4>>0]|0)!=0){f=c[m>>2]|0;if((d[c[m>>2]>>0]|0)<128){c[j>>2]=d[f>>0]|0;f=1}else{f=(xw(f,j)|0)&255}c[m>>2]=(c[m>>2]|0)+(f&255)}else{c[j>>2]=0}c[n>>2]=(c[m>>2]|0)+9;do{b=c[m>>2]|0;c[m>>2]=b+1;if((a[b>>0]&128|0)==0){break a}}while((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)}else{n=c[m>>2]|0;if((d[c[m>>2]>>0]|0)<128){c[j>>2]=d[n>>0]|0;n=1}else{n=(xw(n,j)|0)&255}c[m>>2]=(c[m>>2]|0)+(n&255)}}while(0);if(!((c[j>>2]|0)>>>0>(e[(c[l>>2]|0)+8>>1]|0)>>>0)){f=c[m>>2]|0;b=c[h>>2]|0;b=f-b|0;f=c[j>>2]|0;b=f+b|0;c[j>>2]=b;f=c[j>>2]|0;f=f>>>0<4;b=f?4:b;c[j>>2]=b;b=c[j>>2]|0;b=b&65535;i=k;return b|0}c[g>>2]=e[(c[l>>2]|0)+10>>1]|0;c[j>>2]=(c[g>>2]|0)+((((c[j>>2]|0)-(c[g>>2]|0)|0)>>>0)%(((c[(c[(c[l>>2]|0)+52>>2]|0)+36>>2]|0)-4|0)>>>0)|0);if((c[j>>2]|0)>>>0>(e[(c[l>>2]|0)+8>>1]|0)>>>0){c[j>>2]=c[g>>2]}c[j>>2]=(c[j>>2]|0)+4;f=c[m>>2]|0;b=c[h>>2]|0;b=f-b|0;f=c[j>>2]|0;b=f+b|0;c[j>>2]=b;f=c[j>>2]|0;f=f>>>0<4;b=f?4:b;c[j>>2]=b;b=c[j>>2]|0;b=b&65535;i=k;return b|0}function TA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;Wb(c[f>>2]|0,c[(c[e>>2]|0)+28>>2]|0);Wb(c[f>>2]|0,c[(c[e>>2]|0)+36>>2]|0);a=(c[e>>2]|0)+0|0;b=a+48|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));i=d;return}function UA(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=0;c[b>>2]=Lh(c[e>>2]|0)|0;gc(c[e>>2]|0);i=d;return c[b>>2]|0}function VA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d+12|0;h=d+8|0;e=d+4|0;f=d;c[g>>2]=a;c[h>>2]=b;c[e>>2]=c[h>>2];while(1){if((c[e>>2]|0)==0){break}c[f>>2]=c[(c[e>>2]|0)+8>>2];Wb(c[g>>2]|0,c[e>>2]|0);c[e>>2]=c[f>>2]}i=d;return}function WA(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+20|0;j=g;k=g+16|0;h=g+12|0;l=g+8|0;c[m>>2]=b;b=j;c[b>>2]=d;c[b+4>>2]=e;c[k>>2]=f;c[l>>2]=c[(c[m>>2]|0)+4>>2];c[h>>2]=c[(c[l>>2]|0)+8>>2];while(1){if((c[h>>2]|0)==0){break}do{if((a[(c[h>>2]|0)+80>>0]&16|0)!=0){if((c[k>>2]|0)==0?(l=(c[h>>2]|0)+24|0,m=j,!((c[l>>2]|0)==(c[m>>2]|0)?(c[l+4>>2]|0)==(c[m+4>>2]|0):0)):0){break}a[(c[h>>2]|0)+81>>0]=0}}while(0);c[h>>2]=c[(c[h>>2]|0)+8>>2]}i=g;return}function XA(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;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;o=i;i=i+48|0;j=o+36|0;r=o+32|0;u=o+28|0;n=o+24|0;q=o+20|0;l=o+16|0;k=o+12|0;p=o+8|0;t=o+4|0;m=o;c[r>>2]=b;c[u>>2]=f;c[n>>2]=g;c[q>>2]=h;b=c[u>>2]|0;if(b>>>0>(gw(c[r>>2]|0)|0)>>>0){c[j>>2]=ej(58551)|0;b=c[j>>2]|0;i=o;return b|0}c[k>>2]=fw(c[r>>2]|0,c[u>>2]|0,l,0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=o;return b|0}c[m>>2]=d[(c[l>>2]|0)+5>>0]|0;c[t>>2]=0;while(1){u=c[l>>2]|0;if((c[t>>2]|0)>=(e[(c[l>>2]|0)+16>>1]|0)){s=11;break}c[p>>2]=(c[u+56>>2]|0)+(e[(c[l>>2]|0)+18>>1]&(d[(c[(c[l>>2]|0)+64>>2]|0)+(c[t>>2]<<1)>>0]<<8|d[(c[(c[l>>2]|0)+64>>2]|0)+(c[t>>2]<<1)+1>>0]));if((a[(c[l>>2]|0)+3>>0]|0)==0?(f=c[r>>2]|0,b=Ah(c[p>>2]|0)|0,c[k>>2]=XA(f,b,1,c[q>>2]|0)|0,(c[k>>2]|0)!=0):0){break}c[k>>2]=YA(c[l>>2]|0,c[p>>2]|0)|0;if((c[k>>2]|0)!=0){break}c[t>>2]=(c[t>>2]|0)+1}do{if((s|0)==11){if((a[u+3>>0]|0)!=0){if((c[q>>2]|0)!=0){b=c[q>>2]|0;c[b>>2]=(c[b>>2]|0)+(e[(c[l>>2]|0)+16>>1]|0)}}else{f=c[r>>2]|0;b=Ah((c[(c[l>>2]|0)+56>>2]|0)+((c[m>>2]|0)+8)|0)|0;c[k>>2]=XA(f,b,1,c[q>>2]|0)|0;if((c[k>>2]|0)!=0){break}}p=c[l>>2]|0;if((c[n>>2]|0)!=0){ZA(p,k);break}b=dd(c[p+68>>2]|0)|0;c[k>>2]=b;if((b|0)==0){_A(c[l>>2]|0,d[(c[(c[l>>2]|0)+56>>2]|0)+(c[m>>2]|0)>>0]|8)}}}while(0);Hk(c[l>>2]|0);c[j>>2]=c[k>>2];b=c[j>>2]|0;i=o;return b|0}function YA(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=i;i=i+80|0;g=m+68|0;r=m+64|0;o=m+60|0;k=m+56|0;p=m;l=m+52|0;h=m+48|0;n=m+44|0;q=m+40|0;d=m+36|0;j=m+32|0;c[r>>2]=a;c[o>>2]=b;c[k>>2]=c[(c[r>>2]|0)+52>>2];qw(c[r>>2]|0,c[o>>2]|0,p);if((e[p+24>>1]|0|0)==0){c[g>>2]=0;a=c[g>>2]|0;i=m;return a|0}if(((c[o>>2]|0)+(e[p+24>>1]|0)+3|0)>>>0>((c[(c[r>>2]|0)+56>>2]|0)+(e[(c[r>>2]|0)+18>>1]|0)|0)>>>0){c[g>>2]=ej(56609)|0;a=c[g>>2]|0;i=m;return a|0}c[l>>2]=Ah((c[o>>2]|0)+(e[p+24>>1]|0)|0)|0;c[q>>2]=(c[(c[k>>2]|0)+36>>2]|0)-4;c[n>>2]=(((c[p+16>>2]|0)-(e[p+22>>1]|0)+(c[q>>2]|0)-1|0)>>>0)/((c[q>>2]|0)>>>0)|0;while(1){a=c[n>>2]|0;c[n>>2]=a+ -1;if((a|0)==0){f=23;break}c[d>>2]=0;c[j>>2]=0;if((c[l>>2]|0)>>>0<2){f=9;break}a=c[l>>2]|0;if(a>>>0>(gw(c[k>>2]|0)|0)>>>0){f=9;break}if((c[n>>2]|0)!=0?(c[h>>2]=uw(c[k>>2]|0,c[l>>2]|0,j,d)|0,(c[h>>2]|0)!=0):0){f=12;break}if((c[j>>2]|0)==0?(a=bB(c[k>>2]|0,c[l>>2]|0)|0,c[j>>2]=a,(a|0)==0):0){f=17}else{if((Lj(c[(c[j>>2]|0)+68>>2]|0)|0)!=1){c[h>>2]=ej(56643)|0}else{f=17}}if((f|0)==17){f=0;c[h>>2]=$A(c[k>>2]|0,c[j>>2]|0,c[l>>2]|0)|0}if((c[j>>2]|0)!=0){Xc(c[(c[j>>2]|0)+68>>2]|0)}if((c[h>>2]|0)!=0){f=21;break}c[l>>2]=c[d>>2]}if((f|0)==9){c[g>>2]=ej(56623)|0;a=c[g>>2]|0;i=m;return a|0}else if((f|0)==12){c[g>>2]=c[h>>2];a=c[g>>2]|0;i=m;return a|0}else if((f|0)==21){c[g>>2]=c[h>>2];a=c[g>>2]|0;i=m;return a|0}else if((f|0)==23){c[g>>2]=0;a=c[g>>2]|0;i=m;return a|0}return 0}function ZA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[c[f>>2]>>2]|0)!=0){i=d;return}a=$A(c[(c[e>>2]|0)+52>>2]|0,c[e>>2]|0,c[(c[e>>2]|0)+72>>2]|0)|0;c[c[f>>2]>>2]=a;i=d;return}function _A(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+12|0;n=h+8|0;m=h+4|0;k=h;o=h+18|0;l=h+16|0;c[j>>2]=f;c[n>>2]=g;c[m>>2]=c[(c[j>>2]|0)+56>>2];c[k>>2]=c[(c[j>>2]|0)+52>>2];a[o>>0]=a[(c[j>>2]|0)+5>>0]|0;if((b[(c[k>>2]|0)+22>>1]&4|0)!=0){_D((c[m>>2]|0)+(d[o>>0]|0)|0,0,(c[(c[k>>2]|0)+36>>2]|0)-(d[o>>0]|0)|0)|0}a[(c[m>>2]|0)+(d[o>>0]|0)>>0]=c[n>>2];b[l>>1]=(d[o>>0]|0)+((c[n>>2]&8|0)==0?12:8);f=(c[m>>2]|0)+((d[o>>0]|0)+1)|0;a[f+0>>0]=0;a[f+1>>0]=0;a[f+2>>0]=0;a[f+3>>0]=0;a[(c[m>>2]|0)+((d[o>>0]|0)+7)>>0]=0;a[(c[m>>2]|0)+((d[o>>0]|0)+5)>>0]=(c[(c[k>>2]|0)+36>>2]|0)>>>8;a[(c[m>>2]|0)+((d[o>>0]|0)+5)+1>>0]=c[(c[k>>2]|0)+36>>2];b[(c[j>>2]|0)+14>>1]=(c[(c[k>>2]|0)+36>>2]|0)-(e[l>>1]|0);Nj(c[j>>2]|0,c[n>>2]|0)|0;b[(c[j>>2]|0)+12>>1]=b[l>>1]|0;c[(c[j>>2]|0)+60>>2]=(c[m>>2]|0)+(c[(c[k>>2]|0)+36>>2]|0);c[(c[j>>2]|0)+64>>2]=(c[m>>2]|0)+(e[l>>1]|0);a[(c[j>>2]|0)+1>>0]=0;b[(c[j>>2]|0)+18>>1]=(c[(c[k>>2]|0)+32>>2]|0)-1;b[(c[j>>2]|0)+16>>1]=0;a[c[j>>2]>>0]=1;i=h;return}function $A(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+48|0;k=q+36|0;r=q+32|0;p=q+28|0;h=q+24|0;m=q+20|0;l=q+16|0;n=q+12|0;g=q+8|0;o=q+4|0;j=q;c[k>>2]=d;c[r>>2]=e;c[p>>2]=f;c[h>>2]=0;c[m>>2]=0;c[l>>2]=c[(c[k>>2]|0)+12>>2];if((c[r>>2]|0)!=0){c[n>>2]=c[r>>2];aB(c[(c[n>>2]|0)+68>>2]|0)}else{c[n>>2]=bB(c[k>>2]|0,c[p>>2]|0)|0}c[g>>2]=dd(c[(c[l>>2]|0)+68>>2]|0)|0;do{if((c[g>>2]|0)==0){c[o>>2]=Ah((c[(c[l>>2]|0)+56>>2]|0)+36|0)|0;Yj((c[(c[l>>2]|0)+56>>2]|0)+36|0,(c[o>>2]|0)+1|0);if((b[(c[k>>2]|0)+22>>1]&4|0)!=0){if((c[n>>2]|0)==0?(d=hw(c[k>>2]|0,c[p>>2]|0,n,0)|0,c[g>>2]=d,(d|0)!=0):0){break}d=dd(c[(c[n>>2]|0)+68>>2]|0)|0;c[g>>2]=d;if((d|0)!=0){break}_D(c[(c[n>>2]|0)+56>>2]|0,0,c[(c[(c[n>>2]|0)+52>>2]|0)+32>>2]|0)|0}if((a[(c[k>>2]|0)+17>>0]|0)!=0?(dA(c[k>>2]|0,c[p>>2]|0,2,0,g),(c[g>>2]|0)!=0):0){break}if((c[o>>2]|0)!=0){c[m>>2]=Ah((c[(c[l>>2]|0)+56>>2]|0)+32|0)|0;c[g>>2]=hw(c[k>>2]|0,c[m>>2]|0,h,0)|0;if((c[g>>2]|0)!=0){break}c[j>>2]=Ah((c[(c[h>>2]|0)+56>>2]|0)+4|0)|0;if((c[j>>2]|0)>>>0>((((c[(c[k>>2]|0)+36>>2]|0)>>>0)/4|0)-2|0)>>>0){c[g>>2]=ej(56528)|0;break}if((c[j>>2]|0)>>>0<((((c[(c[k>>2]|0)+36>>2]|0)>>>0)/4|0)-8|0)>>>0){c[g>>2]=dd(c[(c[h>>2]|0)+68>>2]|0)|0;if((c[g>>2]|0)!=0){break}Yj((c[(c[h>>2]|0)+56>>2]|0)+4|0,(c[j>>2]|0)+1|0);Yj((c[(c[h>>2]|0)+56>>2]|0)+(8+(c[j>>2]<<2))|0,c[p>>2]|0);if((c[n>>2]|0)!=0?(b[(c[k>>2]|0)+22>>1]&4|0)==0:0){cB(c[(c[n>>2]|0)+68>>2]|0)}c[g>>2]=dB(c[k>>2]|0,c[p>>2]|0)|0;break}}if((c[n>>2]|0)==0?(d=hw(c[k>>2]|0,c[p>>2]|0,n,0)|0,c[g>>2]=d,0!=(d|0)):0){break}c[g>>2]=dd(c[(c[n>>2]|0)+68>>2]|0)|0;if((c[g>>2]|0)==0){Yj(c[(c[n>>2]|0)+56>>2]|0,c[m>>2]|0);Yj((c[(c[n>>2]|0)+56>>2]|0)+4|0,0);Yj((c[(c[l>>2]|0)+56>>2]|0)+32|0,c[p>>2]|0)}}}while(0);if((c[n>>2]|0)==0){d=c[n>>2]|0;Hk(d);d=c[h>>2]|0;Hk(d);d=c[g>>2]|0;i=q;return d|0}a[c[n>>2]>>0]=0;d=c[n>>2]|0;Hk(d);d=c[h>>2]|0;Hk(d);d=c[g>>2]|0;i=q;return d|0}function aB(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;eB(c[d>>2]|0);i=b;return}function bB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=Vi(c[c[f>>2]>>2]|0,c[g>>2]|0)|0;if((c[h>>2]|0)!=0){c[e>>2]=iw(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;a=c[e>>2]|0;i=d;return a|0}else{c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}return 0}function cB(a){a=a|0;var d=0,f=0,g=0;d=i;i=i+16|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=c[(c[f>>2]|0)+16>>2];if((b[(c[f>>2]|0)+24>>1]&2|0)==0){i=d;return}if((c[(c[g>>2]|0)+96>>2]|0)!=0){i=d;return}g=(c[f>>2]|0)+24|0;b[g>>1]=e[g>>1]|0|32;i=d;return}function dB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e+4|0;d=e;c[g>>2]=a;c[f>>2]=b;c[d>>2]=0;if((c[(c[g>>2]|0)+60>>2]|0)==0?(a=Og(c[(c[g>>2]|0)+44>>2]|0)|0,c[(c[g>>2]|0)+60>>2]=a,(c[(c[g>>2]|0)+60>>2]|0)==0):0){c[d>>2]=7}if((c[d>>2]|0)!=0){a=c[d>>2]|0;i=e;return a|0}a=c[f>>2]|0;if(!(a>>>0<=(Sg(c[(c[g>>2]|0)+60>>2]|0)|0)>>>0)){a=c[d>>2]|0;i=e;return a|0}c[d>>2]=Pg(c[(c[g>>2]|0)+60>>2]|0,c[f>>2]|0)|0;a=c[d>>2]|0;i=e;return a|0}function eB(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;a=(c[e>>2]|0)+26|0;b[a>>1]=(b[a>>1]|0)+1<<16>>16;i=d;return}function fB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;g=m+32|0;n=m+28|0;o=m+24|0;p=m+20|0;h=m+16|0;j=m+12|0;k=m+8|0;l=m+4|0;f=m;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[j>>2]=0;c[k>>2]=c[(c[n>>2]|0)+4>>2];if((c[(c[k>>2]|0)+8>>2]|0)!=0){c[g>>2]=262;b=c[g>>2]|0;i=m;return b|0}c[h>>2]=hw(c[k>>2]|0,c[o>>2]|0,j,0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}c[h>>2]=wz(c[n>>2]|0,c[o>>2]|0,0)|0;if((c[h>>2]|0)!=0){Hk(c[j>>2]|0);c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}c[c[p>>2]>>2]=0;do{if((c[o>>2]|0)>>>0>1){if((a[(c[k>>2]|0)+17>>0]|0)==0){ZA(c[j>>2]|0,h);Hk(c[j>>2]|0);break}Pc(c[n>>2]|0,4,l);e=c[j>>2]|0;do{if((c[o>>2]|0)==(c[l>>2]|0)){ZA(e,h);Hk(c[j>>2]|0);if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}}else{Hk(e);c[h>>2]=hw(c[k>>2]|0,c[l>>2]|0,f,0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}c[h>>2]=aA(c[k>>2]|0,c[f>>2]|0,1,0,c[o>>2]|0,0)|0;Hk(c[f>>2]|0);if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}c[f>>2]=0;c[h>>2]=hw(c[k>>2]|0,c[l>>2]|0,f,0)|0;ZA(c[f>>2]|0,h);Hk(c[f>>2]|0);if((c[h>>2]|0)==0){c[c[p>>2]>>2]=c[l>>2];break}c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}}while(0);c[l>>2]=(c[l>>2]|0)+ -1;while(1){if((c[l>>2]|0)!=((((c[346]|0)>>>0)/((c[(c[k>>2]|0)+32>>2]|0)>>>0)|0)+1|0)?(b=vw(c[k>>2]|0,c[l>>2]|0)|0,(b|0)!=(c[l>>2]|0)):0){break}c[l>>2]=(c[l>>2]|0)+ -1}c[h>>2]=_c(c[n>>2]|0,4,c[l>>2]|0)|0}else{_A(c[j>>2]|0,9);Hk(c[j>>2]|0)}}while(0);c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}function gB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+80|0;f=g+64|0;h=g+60|0;m=g+56|0;e=g+52|0;j=g+48|0;k=g;l=g+44|0;d=g+40|0;c[h>>2]=a;c[m>>2]=b;c[e>>2]=0;c[j>>2]=c[(c[m>>2]|0)+64>>2];a=k+0|0;b=a+40|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));if((c[(c[j>>2]|0)+16>>2]|0)==0){c[f>>2]=c[e>>2];a=c[f>>2]|0;i=g;return a|0}c[e>>2]=hB(c[m>>2]|0)|0;if((c[e>>2]|0)==0?(c[(c[j>>2]|0)+44>>2]|0)==0:0){c[e>>2]=iB(c[h>>2]|0,(c[j>>2]|0)+44|0)|0}if((c[e>>2]|0)==0){c[d>>2]=0;a=c[j>>2]|0;jB(c[h>>2]|0,c[(c[j>>2]|0)+44>>2]|0,k,c[a>>2]|0,c[a+4>>2]|0);a=(c[j>>2]|0)+24|0;c[a>>2]=(c[a>>2]|0)+1;a=c[(c[j>>2]|0)+16>>2]|0;kB(k,a,((a|0)<0)<<31>>31);c[l>>2]=c[(c[j>>2]|0)+48>>2];while(1){m=c[l>>2]|0;if((c[l>>2]|0)==0){break}c[d>>2]=c[m+8>>2];a=c[(c[l>>2]|0)+4>>2]|0;kB(k,a,((a|0)<0)<<31>>31);lB(k,c[c[l>>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0);Wb(c[h>>2]|0,c[l>>2]|0);c[l>>2]=c[d>>2]}c[(c[j>>2]|0)+48>>2]=m;c[e>>2]=mB(c[h>>2]|0,k,c[j>>2]|0)|0}c[f>>2]=c[e>>2];a=c[f>>2]|0;i=g;return a|0}function hB(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+32|0;d=b+24|0;k=b+20|0;h=b+16|0;g=b+12|0;e=b+8|0;f=b+4|0;j=b;c[k>>2]=a;c[f>>2]=c[(c[k>>2]|0)+64>>2];c[g>>2]=Kc(256)|0;if((c[g>>2]|0)==0){c[d>>2]=7;k=c[d>>2]|0;i=b;return k|0}c[e>>2]=c[(c[f>>2]|0)+48>>2];while(1){if((c[e>>2]|0)==0){break}c[j>>2]=c[(c[e>>2]|0)+8>>2];c[(c[e>>2]|0)+8>>2]=0;c[h>>2]=0;while(1){if((c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]|0)==0){break}pB(c[k>>2]|0,c[e>>2]|0,c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]|0,e);c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]=0;c[h>>2]=(c[h>>2]|0)+1}c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]=c[e>>2];c[e>>2]=c[j>>2]}c[e>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=64){break}pB(c[k>>2]|0,c[e>>2]|0,c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]|0,e);c[h>>2]=(c[h>>2]|0)+1}c[(c[f>>2]|0)+48>>2]=c[e>>2];gc(c[g>>2]|0);c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}function iB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;e=d+4|0;c[f>>2]=a;c[e>>2]=b;a=oB(c[c[f>>2]>>2]|0,0,c[e>>2]|0,4126,d)|0;i=d;return a|0}function jB(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+20|0;l=g+16|0;j=g+12|0;k=g;h=g+8|0;c[m>>2]=a;c[l>>2]=b;c[j>>2]=d;a=k;c[a>>2]=e;c[a+4>>2]=f;c[h>>2]=Rc(c[(c[(c[m>>2]|0)+16>>2]|0)+4>>2]|0)|0;e=(c[j>>2]|0)+0|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));a=Le(c[m>>2]|0,c[h>>2]|0)|0;c[(c[j>>2]|0)+4>>2]=a;if((c[(c[j>>2]|0)+4>>2]|0)!=0){b=k;a=c[h>>2]|0;a=kE(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;c[(c[j>>2]|0)+12>>2]=a;c[(c[j>>2]|0)+16>>2]=a;a=k;b=c[(c[j>>2]|0)+12>>2]|0;b=ZD(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=(c[j>>2]|0)+24|0;c[a>>2]=b;c[a+4>>2]=D;c[(c[j>>2]|0)+8>>2]=c[h>>2];c[(c[j>>2]|0)+32>>2]=c[l>>2];i=g;return}else{c[c[j>>2]>>2]=7;i=g;return}}function kB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+12|0;j=e;f=e+8|0;g=e+16|0;c[h>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;a=j;c[f>>2]=nB(g,c[a>>2]|0,c[a+4>>2]|0)|0;lB(c[h>>2]|0,g,c[f>>2]|0);i=e;return}function lB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[h>>2];while(1){if((c[j>>2]|0)<=0){d=9;break}if((c[c[f>>2]>>2]|0)!=0){d=9;break}c[k>>2]=c[j>>2];if((c[k>>2]|0)>((c[(c[f>>2]|0)+8>>2]|0)-(c[(c[f>>2]|0)+16>>2]|0)|0)){c[k>>2]=(c[(c[f>>2]|0)+8>>2]|0)-(c[(c[f>>2]|0)+16>>2]|0)}dE((c[(c[f>>2]|0)+4>>2]|0)+(c[(c[f>>2]|0)+16>>2]|0)|0,(c[g>>2]|0)+((c[h>>2]|0)-(c[j>>2]|0))|0,c[k>>2]|0)|0;a=(c[f>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+(c[k>>2]|0);if((c[(c[f>>2]|0)+16>>2]|0)==(c[(c[f>>2]|0)+8>>2]|0)){l=c[(c[f>>2]|0)+32>>2]|0;d=(c[(c[f>>2]|0)+4>>2]|0)+(c[(c[f>>2]|0)+12>>2]|0)|0;a=(c[(c[f>>2]|0)+16>>2]|0)-(c[(c[f>>2]|0)+12>>2]|0)|0;m=(c[f>>2]|0)+24|0;b=c[(c[f>>2]|0)+12>>2]|0;b=bE(c[m>>2]|0,c[m+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;b=fd(l,d,a,b,D)|0;c[c[f>>2]>>2]=b;c[(c[f>>2]|0)+16>>2]=0;c[(c[f>>2]|0)+12>>2]=0;b=c[(c[f>>2]|0)+8>>2]|0;a=(c[f>>2]|0)+24|0;d=a;b=bE(c[d>>2]|0,c[d+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[a>>2]=b;c[a+4>>2]=D}c[j>>2]=(c[j>>2]|0)-(c[k>>2]|0)}if((d|0)==9){i=e;return}}function mB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+16|0;j=e+12|0;g=e+8|0;h=e+4|0;f=e;c[j>>2]=a;c[g>>2]=b;c[h>>2]=d;if(((c[c[g>>2]>>2]|0)==0?(c[(c[g>>2]|0)+4>>2]|0)!=0:0)?(c[(c[g>>2]|0)+16>>2]|0)>(c[(c[g>>2]|0)+12>>2]|0):0){k=c[(c[g>>2]|0)+32>>2]|0;d=(c[(c[g>>2]|0)+4>>2]|0)+(c[(c[g>>2]|0)+12>>2]|0)|0;b=(c[(c[g>>2]|0)+16>>2]|0)-(c[(c[g>>2]|0)+12>>2]|0)|0;l=(c[g>>2]|0)+24|0;a=c[(c[g>>2]|0)+12>>2]|0;a=bE(c[l>>2]|0,c[l+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;a=fd(k,d,b,a,D)|0;c[c[g>>2]>>2]=a}d=(c[g>>2]|0)+24|0;l=c[(c[g>>2]|0)+16>>2]|0;l=bE(c[d>>2]|0,c[d+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;d=c[h>>2]|0;c[d>>2]=l;c[d+4>>2]=D;Wb(c[j>>2]|0,c[(c[g>>2]|0)+4>>2]|0);c[f>>2]=c[c[g>>2]>>2];g=(c[g>>2]|0)+0|0;d=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(d|0));i=e;return c[f>>2]|0}function nB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;k=g+24|0;f=g+20|0;j=g;h=g+16|0;m=g+12|0;l=g+8|0;n=g+28|0;c[f>>2]=b;b=j;c[b>>2]=d;c[b+4>>2]=e;if(0!=0?1:(c[j+4>>2]&-16777216|0)!=0){a[(c[f>>2]|0)+8>>0]=c[j>>2];d=j;d=cE(c[d>>2]|0,c[d+4>>2]|0,8)|0;b=j;c[b>>2]=d;c[b+4>>2]=D;c[h>>2]=7;while(1){if((c[h>>2]|0)<0){break}a[(c[f>>2]|0)+(c[h>>2]|0)>>0]=c[j>>2]&127|128;d=j;d=cE(c[d>>2]|0,c[d+4>>2]|0,7)|0;b=j;c[b>>2]=d;c[b+4>>2]=D;c[h>>2]=(c[h>>2]|0)+ -1}c[k>>2]=9;b=c[k>>2]|0;i=g;return b|0}c[l>>2]=0;do{b=(c[j>>2]&127|128)&255;d=c[l>>2]|0;c[l>>2]=d+1;a[n+d>>0]=b;d=j;d=cE(c[d>>2]|0,c[d+4>>2]|0,7)|0;b=j;c[b>>2]=d;c[b+4>>2]=D;b=j}while((c[b>>2]|0)!=0|(c[b+4>>2]|0)!=0);a[n>>0]=a[n>>0]&127;c[h>>2]=0;c[m>>2]=(c[l>>2]|0)-1;while(1){if((c[m>>2]|0)<0){break}a[(c[f>>2]|0)+(c[h>>2]|0)>>0]=a[n+(c[m>>2]|0)>>0]|0;c[m>>2]=(c[m>>2]|0)+ -1;c[h>>2]=(c[h>>2]|0)+1}c[k>>2]=c[l>>2];b=c[k>>2]|0;i=g;return b|0}function oB(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;l=j+24|0;m=j+20|0;h=j+16|0;k=j+12|0;o=j+8|0;g=j+4|0;n=j;c[l>>2]=a;c[m>>2]=b;c[h>>2]=d;c[k>>2]=e;c[o>>2]=f;c[g>>2]=7;c[n>>2]=Kc(c[(c[l>>2]|0)+4>>2]|0)|0;if((c[n>>2]|0)==0){a=c[g>>2]|0;i=j;return a|0}c[g>>2]=xi(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[k>>2]|0,c[o>>2]|0)|0;k=c[n>>2]|0;if((c[g>>2]|0)!=0){gc(k);a=c[g>>2]|0;i=j;return a|0}else{c[c[h>>2]>>2]=k;a=c[g>>2]|0;i=j;return a|0}return 0}function pB(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;f=l+28|0;m=l+24|0;g=l+20|0;k=l+16|0;j=l+12|0;h=l+8|0;n=l+4|0;o=l;c[f>>2]=a;c[m>>2]=b;c[g>>2]=d;c[k>>2]=e;c[j>>2]=0;c[h>>2]=j;if((c[g>>2]|0)!=0){e=c[c[g>>2]>>2]|0}else{e=0}c[n>>2]=e;while(1){if((c[m>>2]|0)==0){break}if((c[g>>2]|0)==0){break}qB(c[f>>2]|0,0,c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+4>>2]|0,c[n>>2]|0,c[(c[g>>2]|0)+4>>2]|0,o);if((c[o>>2]|0)<=0){c[c[h>>2]>>2]=c[m>>2];c[h>>2]=(c[m>>2]|0)+8;c[m>>2]=c[(c[m>>2]|0)+8>>2];c[n>>2]=0;continue}c[c[h>>2]>>2]=c[g>>2];c[h>>2]=(c[g>>2]|0)+8;c[g>>2]=c[(c[g>>2]|0)+8>>2];if((c[g>>2]|0)==0){break}c[n>>2]=c[c[g>>2]>>2]}c[c[h>>2]>>2]=(c[m>>2]|0)!=0?c[m>>2]|0:c[g>>2]|0;c[c[k>>2]>>2]=c[j>>2];i=l;return}function qB(a,d,f,g,h,j,k){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=i;i=i+48|0;w=l+40|0;m=l+36|0;q=l+32|0;p=l+28|0;t=l+24|0;u=l+20|0;r=l+16|0;s=l+12|0;v=l+8|0;n=l+4|0;o=l;c[w>>2]=a;c[m>>2]=d;c[q>>2]=f;c[p>>2]=g;c[t>>2]=h;c[u>>2]=j;c[r>>2]=k;c[s>>2]=c[(c[w>>2]|0)+8>>2];c[v>>2]=c[(c[w>>2]|0)+64>>2];c[n>>2]=c[(c[v>>2]|0)+52>>2];if((c[t>>2]|0)!=0){lw(c[s>>2]|0,c[u>>2]|0,c[t>>2]|0,c[n>>2]|0)}a:do{if((c[m>>2]|0)!=0){b[(c[n>>2]|0)+4>>1]=(e[(c[s>>2]|0)+6>>1]|0)-(c[m>>2]|0);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(e[(c[n>>2]|0)+4>>1]|0|0)){break a}if((b[(c[(c[n>>2]|0)+8>>2]|0)+((c[o>>2]|0)*40|0)+28>>1]&1|0)!=0){break}c[o>>2]=(c[o>>2]|0)+1}c[c[r>>2]>>2]=-1;i=l;return}}while(0);w=Aw(c[p>>2]|0,c[q>>2]|0,c[n>>2]|0,0)|0;c[c[r>>2]>>2]=w;i=l;return}function rB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;e=d+20|0;j=d+16|0;h=d+12|0;f=d+8|0;g=d;c[j>>2]=a;c[h>>2]=b;l=g;c[l>>2]=0;c[l+4>>2]=0;l=c[h>>2]|0;n=c[l+4>>2]|0;k=(c[h>>2]|0)+8|0;m=c[k+4>>2]|0;a=c[j>>2]|0;b=c[h>>2]|0;if((n|0)>(m|0)|((n|0)==(m|0)?(c[l>>2]|0)>>>0>=(c[k>>2]|0)>>>0:0)){TA(a,b);c[e>>2]=0;n=c[e>>2]|0;i=d;return n|0}c[f>>2]=sB(a,b,g)|0;if((c[f>>2]|0)==0){c[(c[h>>2]|0)+20>>2]=c[g>>2];c[f>>2]=tB(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0,(c[h>>2]|0)+32|0)|0}c[e>>2]=c[f>>2];n=c[e>>2]|0;i=d;return n|0}function sB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+48|0;n=h+28|0;q=h+24|0;j=h+20|0;k=h+16|0;l=h+12|0;f=h+32|0;o=h+8|0;p=h+4|0;m=h;c[q>>2]=b;c[j>>2]=d;c[k>>2]=e;d=c[j>>2]|0;b=c[(c[j>>2]|0)+40>>2]|0;b=kE(c[d>>2]|0,c[d+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[l>>2]=b;if((c[l>>2]|0)!=0?((c[(c[j>>2]|0)+40>>2]|0)-(c[l>>2]|0)|0)>=9:0){d=(pw((c[(c[j>>2]|0)+36>>2]|0)+(c[l>>2]|0)|0,c[k>>2]|0)|0)&255;b=c[j>>2]|0;e=b;d=bE(c[e>>2]|0,c[e+4>>2]|0,d|0,0)|0;c[b>>2]=d;c[b+4>>2]=D}else{g=4}do{if((g|0)==4){c[p>>2]=0;while(1){c[m>>2]=tB(c[q>>2]|0,c[j>>2]|0,1,o)|0;if((c[m>>2]|0)!=0){break}d=a[c[o>>2]>>0]|0;b=c[p>>2]|0;c[p>>2]=b+1;a[f+(b&15)>>0]=d;if((a[c[o>>2]>>0]&128|0)==0){g=8;break}}if((g|0)==8){pw(f,c[k>>2]|0)|0;break}c[n>>2]=c[m>>2];b=c[n>>2]|0;i=h;return b|0}}while(0);c[n>>2]=0;b=c[n>>2]|0;i=h;return b|0}function tB(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;j=i;i=i+64|0;h=j+52|0;o=j+48|0;k=j+44|0;n=j+40|0;m=j+36|0;l=j+32|0;t=j+28|0;v=j+24|0;q=j+20|0;s=j+16|0;u=j+12|0;r=j+8|0;p=j+4|0;f=j;c[o>>2]=a;c[k>>2]=b;c[n>>2]=d;c[m>>2]=e;b=c[k>>2]|0;a=c[(c[k>>2]|0)+40>>2]|0;a=kE(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;c[l>>2]=a;if((c[l>>2]|0)==0){w=(c[k>>2]|0)+8|0;b=c[k>>2]|0;b=ZD(c[w>>2]|0,c[w+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;w=D;a=c[(c[k>>2]|0)+40>>2]|0;d=((a|0)<0)<<31>>31;e=c[k>>2]|0;if((w|0)>(d|0)|(w|0)==(d|0)&b>>>0>a>>>0){c[v>>2]=c[e+40>>2]}else{a=e+8|0;w=c[k>>2]|0;w=ZD(c[a>>2]|0,c[a+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;c[v>>2]=w}w=c[k>>2]|0;c[q>>2]=yi(c[(c[k>>2]|0)+24>>2]|0,c[(c[k>>2]|0)+36>>2]|0,c[v>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;if((c[q>>2]|0)!=0){c[h>>2]=c[q>>2];w=c[h>>2]|0;i=j;return w|0}}c[t>>2]=(c[(c[k>>2]|0)+40>>2]|0)-(c[l>>2]|0);do{if((c[n>>2]|0)<=(c[t>>2]|0)){c[c[m>>2]>>2]=(c[(c[k>>2]|0)+36>>2]|0)+(c[l>>2]|0);a=c[n>>2]|0;w=c[k>>2]|0;b=w;a=bE(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;c[w>>2]=a;c[w+4>>2]=D}else{do{if((c[(c[k>>2]|0)+16>>2]|0)<(c[n>>2]|0)){c[u>>2]=c[(c[k>>2]|0)+16>>2]<<1;while(1){if((c[n>>2]|0)<=(c[u>>2]|0)){break}c[u>>2]=c[u>>2]<<1}w=Hr(c[o>>2]|0,c[(c[k>>2]|0)+28>>2]|0,c[u>>2]|0)|0;c[(c[k>>2]|0)+28>>2]=w;if((c[(c[k>>2]|0)+28>>2]|0)!=0){c[(c[k>>2]|0)+16>>2]=c[u>>2];break}c[h>>2]=7;w=c[h>>2]|0;i=j;return w|0}}while(0);dE(c[(c[k>>2]|0)+28>>2]|0,(c[(c[k>>2]|0)+36>>2]|0)+(c[l>>2]|0)|0,c[t>>2]|0)|0;a=c[t>>2]|0;w=c[k>>2]|0;b=w;a=bE(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;c[w>>2]=a;c[w+4>>2]=D;c[s>>2]=(c[n>>2]|0)-(c[t>>2]|0);while(1){if((c[s>>2]|0)<=0){g=23;break}c[p>>2]=c[s>>2];if((c[s>>2]|0)>(c[(c[k>>2]|0)+40>>2]|0)){c[p>>2]=c[(c[k>>2]|0)+40>>2]}c[r>>2]=tB(c[o>>2]|0,c[k>>2]|0,c[p>>2]|0,f)|0;if((c[r>>2]|0)!=0){break}dE((c[(c[k>>2]|0)+28>>2]|0)+((c[n>>2]|0)-(c[s>>2]|0))|0,c[f>>2]|0,c[p>>2]|0)|0;c[s>>2]=(c[s>>2]|0)-(c[p>>2]|0)}if((g|0)==23){c[c[m>>2]>>2]=c[(c[k>>2]|0)+28>>2];break}c[h>>2]=c[r>>2];w=c[h>>2]|0;i=j;return w|0}}while(0);c[h>>2]=0;w=c[h>>2]|0;i=j;return w|0}function uB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+48|0;n=f+32|0;j=f+28|0;e=f+24|0;l=f+20|0;g=f+16|0;k=f+12|0;h=f;m=f+8|0;c[n>>2]=a;c[j>>2]=b;c[e>>2]=d;c[l>>2]=c[(c[j>>2]|0)+64>>2];c[g>>2]=0;a=h;c[a>>2]=0;c[a+4>>2]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=16){break}c[m>>2]=(c[(c[l>>2]|0)+36>>2]|0)+((c[k>>2]|0)*48|0);d=(c[l>>2]|0)+8|0;c[g>>2]=vB(c[n>>2]|0,c[l>>2]|0,c[d>>2]|0,c[d+4>>2]|0,c[m>>2]|0,h)|0;d=(c[m>>2]|0)+8|0;b=c[d+4>>2]|0;a=(c[l>>2]|0)+8|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;if((c[g>>2]|0)!=0){break}b=(c[l>>2]|0)+8|0;o=c[b+4>>2]|0;a=c[l>>2]|0;d=c[a+4>>2]|0;if((o|0)>(d|0)|((o|0)==(d|0)?(c[b>>2]|0)>>>0>=(c[a>>2]|0)>>>0:0)){break}c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=(c[(c[l>>2]|0)+20>>2]|0)-1;while(1){if((c[g>>2]|0)!=0){j=10;break}if((c[k>>2]|0)<=0){j=10;break}c[g>>2]=wB(c[j>>2]|0,c[k>>2]|0)|0;c[k>>2]=(c[k>>2]|0)+ -1}if((j|0)==10){b=h;a=c[b+4>>2]|0;o=c[e>>2]|0;c[o>>2]=c[b>>2];c[o+4>>2]=a;i=f;return c[g>>2]|0}return 0}function vB(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+48|0;m=j+44|0;k=j+40|0;h=j+8|0;l=j+36|0;o=j+32|0;p=j+28|0;s=j+24|0;q=j+20|0;r=j+16|0;n=j;c[m>>2]=a;c[k>>2]=b;b=h;c[b>>2]=d;c[b+4>>2]=e;c[l>>2]=f;c[o>>2]=g;c[p>>2]=0;c[s>>2]=Rc(c[(c[(c[m>>2]|0)+16>>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+24>>2]=c[(c[k>>2]|0)+44>>2];d=h;b=c[d+4>>2]|0;a=c[l>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;c[(c[l>>2]|0)+16>>2]=128;a=Le(c[m>>2]|0,c[(c[l>>2]|0)+16>>2]|0)|0;c[(c[l>>2]|0)+28>>2]=a;c[(c[l>>2]|0)+40>>2]=c[s>>2];a=Le(c[m>>2]|0,c[s>>2]|0)|0;c[(c[l>>2]|0)+36>>2]=a;if((c[(c[l>>2]|0)+36>>2]|0)!=0){b=h;a=c[s>>2]|0;a=kE(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;c[q>>2]=a;if((c[q>>2]|0)!=0){c[r>>2]=(c[s>>2]|0)-(c[q>>2]|0);e=h;b=c[r>>2]|0;b=bE(c[e>>2]|0,c[e+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;e=D;a=c[k>>2]|0;d=c[a+4>>2]|0;if((e|0)>(d|0)|((e|0)==(d|0)?b>>>0>(c[a>>2]|0)>>>0:0)){b=c[k>>2]|0;a=h;a=ZD(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[r>>2]=a}a=h;c[p>>2]=yi(c[(c[k>>2]|0)+44>>2]|0,(c[(c[l>>2]|0)+36>>2]|0)+(c[q>>2]|0)|0,c[r>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0}if((c[p>>2]|0)==0){d=c[k>>2]|0;a=c[d+4>>2]|0;b=(c[l>>2]|0)+8|0;c[b>>2]=c[d>>2];c[b+4>>2]=a;c[p>>2]=sB(c[m>>2]|0,c[l>>2]|0,n)|0;b=c[l>>2]|0;a=n;a=bE(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;b=(c[l>>2]|0)+8|0;c[b>>2]=a;c[b+4>>2]=D;b=n;a=c[o>>2]|0;d=a;b=bE(c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[a>>2]=b;c[a+4>>2]=D}}else{c[p>>2]=7}if((c[p>>2]|0)!=0){a=c[p>>2]|0;i=j;return a|0}c[p>>2]=rB(c[m>>2]|0,c[l>>2]|0)|0;a=c[p>>2]|0;i=j;return a|0}function wB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;d=g+32|0;f=g+28|0;e=g+24|0;h=g+20|0;n=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[d>>2]=a;c[f>>2]=b;c[e>>2]=c[(c[d>>2]|0)+64>>2];b=c[f>>2]|0;if((c[f>>2]|0)>=((c[(c[e>>2]|0)+20>>2]|0)/2|0|0)){c[h>>2]=b-((c[(c[e>>2]|0)+20>>2]|0)/2|0)<<1;c[n>>2]=(c[h>>2]|0)+1}else{c[h>>2]=c[(c[(c[e>>2]|0)+40>>2]|0)+(b<<1<<2)>>2];c[n>>2]=c[(c[(c[e>>2]|0)+40>>2]|0)+((c[f>>2]<<1)+1<<2)>>2]}c[k>>2]=(c[(c[e>>2]|0)+36>>2]|0)+((c[h>>2]|0)*48|0);c[l>>2]=(c[(c[e>>2]|0)+36>>2]|0)+((c[n>>2]|0)*48|0);do{if((c[(c[k>>2]|0)+24>>2]|0)!=0){if((c[(c[l>>2]|0)+24>>2]|0)==0){c[j>>2]=c[h>>2];break}qB(c[d>>2]|0,0,c[(c[k>>2]|0)+32>>2]|0,c[(c[k>>2]|0)+20>>2]|0,c[(c[l>>2]|0)+32>>2]|0,c[(c[l>>2]|0)+20>>2]|0,m);if((c[m>>2]|0)<=0){c[j>>2]=c[h>>2];break}else{c[j>>2]=c[n>>2];break}}else{c[j>>2]=c[n>>2]}}while(0);c[(c[(c[e>>2]|0)+40>>2]|0)+(c[f>>2]<<2)>>2]=c[j>>2];i=g;return 0}function xB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;h=d+12|0;g=d+8|0;e=d+4|0;f=d;c[h>>2]=a;c[g>>2]=b;b=c[h>>2]|0;if((c[(c[h>>2]|0)+40>>2]|0)!=0){c[f>>2]=(c[(c[h>>2]|0)+36>>2]|0)+((c[(c[b+40>>2]|0)+4>>2]|0)*48|0);c[c[g>>2]>>2]=c[(c[f>>2]|0)+20>>2];c[e>>2]=c[(c[f>>2]|0)+32>>2];a=c[e>>2]|0;i=d;return a|0}else{c[c[g>>2]>>2]=c[(c[b+48>>2]|0)+4>>2];c[e>>2]=c[c[(c[h>>2]|0)+48>>2]>>2];a=c[e>>2]|0;i=d;return a|0}return 0}function yB(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+48|0;n=q+32|0;p=q+28|0;t=q+24|0;m=q+20|0;s=q+16|0;k=q+12|0;o=q+8|0;l=q+4|0;r=q;c[n>>2]=f;c[p>>2]=g;c[t>>2]=h;c[m>>2]=j;if((c[c[m>>2]>>2]|0)!=0){i=q;return}c[k>>2]=c[(c[n>>2]|0)+56>>2];c[o>>2]=(c[(c[n>>2]|0)+64>>2]|0)+(c[p>>2]<<1);c[s>>2]=(d[c[o>>2]>>0]|0)<<8|(d[(c[o>>2]|0)+1>>0]|0);c[r>>2]=d[(c[n>>2]|0)+5>>0]|0;if(!((c[s>>2]|0)>>>0<((d[(c[k>>2]|0)+((c[r>>2]|0)+5)>>0]|0)<<8|(d[(c[k>>2]|0)+((c[r>>2]|0)+5)+1>>0]|0))>>>0)?!(((c[s>>2]|0)+(c[t>>2]|0)|0)>>>0>(c[(c[(c[n>>2]|0)+52>>2]|0)+36>>2]|0)>>>0):0){c[l>>2]=LB(c[n>>2]|0,c[s>>2]|0,c[t>>2]|0)|0;if((c[l>>2]|0)!=0){c[c[m>>2]>>2]=c[l>>2];i=q;return}else{f=(c[n>>2]|0)+16|0;b[f>>1]=(b[f>>1]|0)+ -1<<16>>16;eE(c[o>>2]|0,(c[o>>2]|0)+2|0,(e[(c[n>>2]|0)+16>>1]|0)-(c[p>>2]|0)<<1|0)|0;a[(c[k>>2]|0)+((c[r>>2]|0)+3)>>0]=(e[(c[n>>2]|0)+16>>1]|0)>>8;a[(c[k>>2]|0)+((c[r>>2]|0)+3)+1>>0]=b[(c[n>>2]|0)+16>>1];f=(c[n>>2]|0)+14|0;b[f>>1]=(e[f>>1]|0)+2;i=q;return}}f=ej(56847)|0;c[c[m>>2]>>2]=f;i=q;return}function zB(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if((c[(c[e>>2]|0)+80>>2]|0)!=0){i=d;return}b=Bg(c[(c[e>>2]|0)+32>>2]|0)|0;c[(c[e>>2]|0)+80>>2]=b;if((c[(c[e>>2]|0)+80>>2]|0)==0){i=d;return}e=c[(c[e>>2]|0)+80>>2]|0;a[e+0>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;a[e+3>>0]=0;i=d;return}function AB(f,g,h,j,k,l,m){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;x=i;i=i+64|0;q=x+56|0;z=x+52|0;v=x+48|0;r=x+44|0;C=x+40|0;w=x+36|0;p=x+32|0;t=x+28|0;B=x+24|0;y=x+20|0;A=x+16|0;n=x+12|0;s=x+8|0;u=x+4|0;o=x;c[q>>2]=f;c[z>>2]=g;c[v>>2]=h;c[r>>2]=j;c[C>>2]=k;c[w>>2]=l;c[p>>2]=m;c[t>>2]=0;c[u>>2]=(c[w>>2]|0)!=0?4:0;if((c[c[p>>2]>>2]|0)!=0){i=x;return}if((d[(c[q>>2]|0)+1>>0]|0)==0?((c[r>>2]|0)+2|0)<=(e[(c[q>>2]|0)+14>>1]|0):0){c[o>>2]=dd(c[(c[q>>2]|0)+68>>2]|0)|0;if((c[o>>2]|0)!=0){c[c[p>>2]>>2]=c[o>>2];i=x;return}c[s>>2]=c[(c[q>>2]|0)+56>>2];c[n>>2]=e[(c[q>>2]|0)+12>>1]|0;c[y>>2]=(c[n>>2]|0)+(e[(c[q>>2]|0)+16>>1]<<1);c[A>>2]=(c[n>>2]|0)+(c[z>>2]<<1);c[o>>2]=IB(c[q>>2]|0,c[r>>2]|0,t)|0;if((c[o>>2]|0)!=0){c[c[p>>2]>>2]=c[o>>2];i=x;return}f=(c[q>>2]|0)+16|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;f=(c[q>>2]|0)+14|0;b[f>>1]=(e[f>>1]|0)-(2+(c[r>>2]|0)&65535);dE((c[s>>2]|0)+((c[t>>2]|0)+(c[u>>2]|0))|0,(c[v>>2]|0)+(c[u>>2]|0)|0,(c[r>>2]|0)-(c[u>>2]|0)|0)|0;if((c[w>>2]|0)!=0){Yj((c[s>>2]|0)+(c[t>>2]|0)|0,c[w>>2]|0)}eE((c[s>>2]|0)+((c[A>>2]|0)+2)|0,(c[s>>2]|0)+(c[A>>2]|0)|0,(c[y>>2]|0)-(c[A>>2]|0)|0)|0;a[(c[s>>2]|0)+(c[A>>2]|0)>>0]=c[t>>2]>>8;a[(c[s>>2]|0)+(c[A>>2]|0)+1>>0]=c[t>>2];a[(c[s>>2]|0)+((d[(c[q>>2]|0)+5>>0]|0)+3)>>0]=e[(c[q>>2]|0)+16>>1]>>8;a[(c[s>>2]|0)+((d[(c[q>>2]|0)+5>>0]|0)+3)+1>>0]=b[(c[q>>2]|0)+16>>1];if((a[(c[(c[q>>2]|0)+52>>2]|0)+17>>0]|0)==0){i=x;return}fA(c[q>>2]|0,c[v>>2]|0,c[p>>2]|0);i=x;return}if((c[C>>2]|0)!=0){dE((c[C>>2]|0)+(c[u>>2]|0)|0,(c[v>>2]|0)+(c[u>>2]|0)|0,(c[r>>2]|0)-(c[u>>2]|0)|0)|0;c[v>>2]=c[C>>2]}if((c[w>>2]|0)!=0){Yj(c[v>>2]|0,c[w>>2]|0)}g=(c[q>>2]|0)+1|0;f=a[g>>0]|0;a[g>>0]=f+1<<24>>24;c[B>>2]=f&255;c[(c[q>>2]|0)+32+(c[B>>2]<<2)>>2]=c[v>>2];b[(c[q>>2]|0)+20+(c[B>>2]<<1)>>1]=c[z>>2];i=x;return}function BB(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=i;i=i+64|0;l=m+32|0;g=m+28|0;r=m+24|0;n=m+36|0;j=m+20|0;q=m+16|0;k=m+12|0;h=m+8|0;p=m+4|0;o=m;c[l>>2]=f;c[g>>2]=0;c[r>>2]=(c[(c[(c[l>>2]|0)+4>>2]|0)+36>>2]<<1>>>0)/3|0;c[j>>2]=0;do{c[q>>2]=b[(c[l>>2]|0)+84>>1]|0;c[k>>2]=c[(c[l>>2]|0)+128+(c[q>>2]<<2)>>2];f=a[(c[k>>2]|0)+1>>0]|0;if((c[q>>2]|0)==0){if(!(f<<24>>24!=0)){break}c[g>>2]=CB(c[k>>2]|0,(c[l>>2]|0)+132|0)|0;if((c[g>>2]|0)==0){b[(c[l>>2]|0)+84>>1]=1;b[(c[l>>2]|0)+86>>1]=0;b[(c[l>>2]|0)+88>>1]=0}}else{if((f&255|0)==0?(e[(c[k>>2]|0)+14>>1]|0)<=(c[r>>2]|0):0){break}c[h>>2]=c[(c[l>>2]|0)+128+((c[q>>2]|0)-1<<2)>>2];c[p>>2]=e[(c[l>>2]|0)+86+((c[q>>2]|0)-1<<1)>>1]|0;c[g>>2]=dd(c[(c[h>>2]|0)+68>>2]|0)|0;do{if((c[g>>2]|0)==0){if(((((d[(c[k>>2]|0)+4>>0]|0)!=0?(d[(c[k>>2]|0)+1>>0]|0)==1:0)?(e[(c[k>>2]|0)+20>>1]|0)==(e[(c[k>>2]|0)+16>>1]|0):0)?(c[(c[h>>2]|0)+72>>2]|0)!=1:0)?(e[(c[h>>2]|0)+16>>1]|0)==(c[p>>2]|0):0){c[g>>2]=DB(c[h>>2]|0,c[k>>2]|0,n)|0;break}c[o>>2]=Bg(c[(c[(c[l>>2]|0)+4>>2]|0)+32>>2]|0)|0;c[g>>2]=EB(c[h>>2]|0,c[p>>2]|0,c[o>>2]|0,(c[q>>2]|0)==1&1,d[(c[l>>2]|0)+82>>0]|0)|0;if((c[j>>2]|0)!=0){Dg(c[j>>2]|0)}c[j>>2]=c[o>>2]}}while(0);a[(c[k>>2]|0)+1>>0]=0;Hk(c[k>>2]|0);f=(c[l>>2]|0)+84|0;b[f>>1]=(b[f>>1]|0)+ -1<<16>>16}}while((c[g>>2]|0)==0);if((c[j>>2]|0)==0){f=c[g>>2]|0;i=m;return f|0}Dg(c[j>>2]|0);f=c[g>>2]|0;i=m;return f|0}function CB(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;j=k+24|0;l=k+20|0;f=k+16|0;h=k+12|0;g=k+8|0;m=k+4|0;n=k;c[l>>2]=b;c[f>>2]=e;c[g>>2]=0;c[m>>2]=0;c[n>>2]=c[(c[l>>2]|0)+52>>2];c[h>>2]=dd(c[(c[l>>2]|0)+68>>2]|0)|0;if((c[h>>2]|0)==0?(c[h>>2]=$z(c[n>>2]|0,g,m,c[(c[l>>2]|0)+72>>2]|0,0)|0,HB(c[l>>2]|0,c[g>>2]|0,h),(a[(c[n>>2]|0)+17>>0]|0)!=0):0){dA(c[n>>2]|0,c[m>>2]|0,5,c[(c[l>>2]|0)+72>>2]|0,h)}if((c[h>>2]|0)!=0){c[c[f>>2]>>2]=0;Hk(c[g>>2]|0);c[j>>2]=c[h>>2];b=c[j>>2]|0;i=k;return b|0}else{dE((c[g>>2]|0)+20|0,(c[l>>2]|0)+20|0,d[(c[l>>2]|0)+1>>0]<<1|0)|0;dE((c[g>>2]|0)+32|0,(c[l>>2]|0)+32|0,d[(c[l>>2]|0)+1>>0]<<2|0)|0;a[(c[g>>2]|0)+1>>0]=a[(c[l>>2]|0)+1>>0]|0;_A(c[l>>2]|0,d[c[(c[g>>2]|0)+56>>2]>>0]&-9);Yj((c[(c[l>>2]|0)+56>>2]|0)+((d[(c[l>>2]|0)+5>>0]|0)+8)|0,c[m>>2]|0);c[c[f>>2]>>2]=c[g>>2];c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}return 0}function DB(f,g,h){f=f|0;g=g|0;h=h|0;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;q=i;i=i+48|0;k=q+40|0;s=q+36|0;l=q+32|0;u=q+28|0;j=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;v=q+8|0;m=q+4|0;t=q+44|0;n=q;c[s>>2]=f;c[l>>2]=g;c[u>>2]=h;c[j>>2]=c[(c[l>>2]|0)+52>>2];if((e[(c[l>>2]|0)+16>>1]|0)==0){c[k>>2]=ej(57050)|0;f=c[k>>2]|0;i=q;return f|0}c[p>>2]=$z(c[j>>2]|0,o,r,0,0)|0;if((c[p>>2]|0)==0){c[v>>2]=(c[u>>2]|0)+4;c[m>>2]=c[(c[l>>2]|0)+32>>2];b[t>>1]=SA(c[l>>2]|0,c[m>>2]|0)|0;_A(c[o>>2]|0,13);GB(c[o>>2]|0,1,m,t);if((a[(c[j>>2]|0)+17>>0]|0)!=0?(dA(c[j>>2]|0,c[r>>2]|0,5,c[(c[s>>2]|0)+72>>2]|0,p),(e[t>>1]|0)>(e[(c[o>>2]|0)+10>>1]|0)):0){fA(c[o>>2]|0,c[m>>2]|0,p)}c[m>>2]=(c[(c[l>>2]|0)+56>>2]|0)+(e[(c[l>>2]|0)+18>>1]&(d[(c[(c[l>>2]|0)+64>>2]|0)+((e[(c[l>>2]|0)+16>>1]|0)-1<<1)>>0]<<8|d[(c[(c[l>>2]|0)+64>>2]|0)+((e[(c[l>>2]|0)+16>>1]|0)-1<<1)+1>>0]));c[n>>2]=(c[m>>2]|0)+9;do{f=c[m>>2]|0;c[m>>2]=f+1;if((a[f>>0]&128|0)==0){break}}while((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0);c[n>>2]=(c[m>>2]|0)+9;do{f=c[m>>2]|0;c[m>>2]=f+1;f=a[f>>0]|0;g=c[v>>2]|0;c[v>>2]=g+1;a[g>>0]=f;if((f&128|0)==0){break}}while((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0);AB(c[s>>2]|0,e[(c[s>>2]|0)+16>>1]|0,c[u>>2]|0,(c[v>>2]|0)-(c[u>>2]|0)|0,0,c[(c[l>>2]|0)+72>>2]|0,p);Yj((c[(c[s>>2]|0)+56>>2]|0)+((d[(c[s>>2]|0)+5>>0]|0)+8)|0,c[r>>2]|0);Hk(c[o>>2]|0)}c[k>>2]=c[p>>2];f=c[k>>2]|0;i=q;return f|0}function EB(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0;m=i;i=i+352|0;I=m+336|0;R=m+332|0;wa=m+328|0;V=m+324|0;X=m+320|0;ba=m+316|0;u=m+312|0;H=m+308|0;ta=m+304|0;o=m+300|0;q=m+296|0;n=m+292|0;E=m+288|0;w=m+284|0;P=m+280|0;y=m+276|0;v=m+346|0;l=m+272|0;ia=m+268|0;M=m+264|0;ha=m+260|0;qa=m+256|0;N=m+252|0;ua=m+248|0;r=m+236|0;F=m+224|0;p=m+204|0;W=m+200|0;sa=m+192|0;z=m+168|0;ga=m+148|0;s=m+144|0;J=m+140|0;pa=m+136|0;aa=m+132|0;va=m+128|0;ka=m+124|0;ja=m+120|0;la=m+116|0;ma=m+344|0;na=m+342|0;oa=m+340|0;ra=m+112|0;ca=m+108|0;ea=m+104|0;fa=m+100|0;da=m+96|0;_=m+92|0;Z=m+88|0;Y=m+84|0;U=m+80|0;S=m+76|0;Q=m+72|0;K=m+68|0;O=m+64|0;T=m;L=m+60|0;x=m+56|0;D=m+52|0;C=m+48|0;G=m+44|0;A=m+40|0;B=m+36|0;t=m+32|0;c[R>>2]=f;c[wa>>2]=g;c[V>>2]=h;c[X>>2]=j;c[ba>>2]=k;c[H>>2]=0;c[ta>>2]=0;c[o>>2]=0;c[y>>2]=0;c[qa>>2]=0;c[N>>2]=0;c[s>>2]=0;c[u>>2]=c[(c[R>>2]|0)+52>>2];if((c[V>>2]|0)==0){c[I>>2]=7;f=c[I>>2]|0;i=m;return f|0}c[n>>2]=(d[(c[R>>2]|0)+1>>0]|0)+(e[(c[R>>2]|0)+16>>1]|0);if((c[n>>2]|0)<2){c[P>>2]=0}else{do{if((c[wa>>2]|0)!=0){if((c[wa>>2]|0)==(c[n>>2]|0)){c[P>>2]=(c[n>>2]|0)-2+(c[ba>>2]|0);break}else{c[P>>2]=(c[wa>>2]|0)-1;break}}else{c[P>>2]=0}}while(0);c[n>>2]=2-(c[ba>>2]|0)}c[q>>2]=(c[n>>2]|0)+1;k=c[R>>2]|0;if(((c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)|0)==(e[(c[R>>2]|0)+16>>1]|0)){c[W>>2]=(c[(c[R>>2]|0)+56>>2]|0)+((d[k+5>>0]|0)+8)}else{c[W>>2]=(c[k+56>>2]|0)+(e[(c[R>>2]|0)+18>>1]&(d[(c[(c[R>>2]|0)+64>>2]|0)+((c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)<<1)>>0]<<8|d[(c[(c[R>>2]|0)+64>>2]|0)+((c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)<<1)+1>>0]))}c[aa>>2]=Ah(c[W>>2]|0)|0;while(1){c[y>>2]=fw(c[u>>2]|0,c[aa>>2]|0,r+(c[n>>2]<<2)|0,0)|0;if((c[y>>2]|0)!=0){va=16;break}c[ta>>2]=(c[ta>>2]|0)+(1+(e[(c[r+(c[n>>2]<<2)>>2]|0)+16>>1]|0)+(d[(c[r+(c[n>>2]<<2)>>2]|0)+1>>0]|0));f=c[n>>2]|0;c[n>>2]=f+ -1;if((f|0)==0){va=26;break}if(((c[n>>2]|0)+(c[P>>2]|0)|0)==(e[(c[R>>2]|0)+20>>1]|0)?(d[(c[R>>2]|0)+1>>0]|0)!=0:0){c[sa+(c[n>>2]<<2)>>2]=c[(c[R>>2]|0)+32>>2];c[aa>>2]=Ah(c[sa+(c[n>>2]<<2)>>2]|0)|0;f=(SA(c[R>>2]|0,c[sa+(c[n>>2]<<2)>>2]|0)|0)&65535;c[ga+(c[n>>2]<<2)>>2]=f;a[(c[R>>2]|0)+1>>0]=0;continue}c[sa+(c[n>>2]<<2)>>2]=(c[(c[R>>2]|0)+56>>2]|0)+(e[(c[R>>2]|0)+18>>1]&(d[(c[(c[R>>2]|0)+64>>2]|0)+((c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)<<1)>>0]<<8|d[(c[(c[R>>2]|0)+64>>2]|0)+((c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)<<1)+1>>0]));c[aa>>2]=Ah(c[sa+(c[n>>2]<<2)>>2]|0)|0;f=(SA(c[R>>2]|0,c[sa+(c[n>>2]<<2)>>2]|0)|0)&65535;c[ga+(c[n>>2]<<2)>>2]=f;if((b[(c[u>>2]|0)+22>>1]&4|0)!=0){c[va>>2]=(c[sa+(c[n>>2]<<2)>>2]|0)-(c[(c[R>>2]|0)+56>>2]|0);if(((c[va>>2]|0)+(c[ga+(c[n>>2]<<2)>>2]|0)|0)>(c[(c[u>>2]|0)+36>>2]|0)){va=23;break}dE((c[V>>2]|0)+(c[va>>2]|0)|0,c[sa+(c[n>>2]<<2)>>2]|0,c[ga+(c[n>>2]<<2)>>2]|0)|0;c[sa+(c[n>>2]<<2)>>2]=(c[V>>2]|0)+((c[sa+(c[n>>2]<<2)>>2]|0)-(c[(c[R>>2]|0)+56>>2]|0))}yB(c[R>>2]|0,(c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)|0,c[ga+(c[n>>2]<<2)>>2]|0,y)}a:do{if((va|0)==16){_D(r|0,0,(c[n>>2]|0)+1<<2|0)|0}else if((va|0)==23){c[y>>2]=ej(57387)|0;_D(r|0,0,(c[n>>2]|0)+1<<2|0)|0}else if((va|0)==26){c[ta>>2]=(c[ta>>2]|0)+3&-4;c[w>>2]=(c[(c[u>>2]|0)+32>>2]|0)+80;c[ua>>2]=(c[ta>>2]<<2)+(c[ta>>2]<<1)+(c[(c[u>>2]|0)+32>>2]|0)+($(c[w>>2]|0,c[q>>2]|0)|0);c[s>>2]=fg(c[ua>>2]|0)|0;if((c[s>>2]|0)==0){c[y>>2]=7;break}c[J>>2]=(c[s>>2]|0)+(c[ta>>2]<<2);c[pa>>2]=(c[J>>2]|0)+(c[ta>>2]<<1);b[v>>1]=d[(c[r>>2]|0)+3>>0]<<2;c[l>>2]=d[(c[r>>2]|0)+4>>0]|0;c[n>>2]=0;while(1){ta=c[u>>2]|0;if((c[n>>2]|0)>=(c[q>>2]|0)){break}k=(c[ta+32>>2]|0)+($(c[w>>2]|0,c[n>>2]|0)|0)|0;k=(c[pa>>2]|0)+k|0;c[F+(c[n>>2]<<2)>>2]=k;c[ja>>2]=k;k=(c[ja>>2]|0)+0|0;ua=(c[r+(c[n>>2]<<2)>>2]|0)+0|0;ta=k+76|0;do{c[k>>2]=c[ua>>2];k=k+4|0;ua=ua+4|0}while((k|0)<(ta|0));c[(c[ja>>2]|0)+56>>2]=(c[ja>>2]|0)+76;dE(c[(c[ja>>2]|0)+56>>2]|0,c[(c[r+(c[n>>2]<<2)>>2]|0)+56>>2]|0,c[(c[u>>2]|0)+32>>2]|0)|0;c[ka>>2]=(e[(c[ja>>2]|0)+16>>1]|0)+(d[(c[ja>>2]|0)+1>>0]|0);b:do{if((d[(c[ja>>2]|0)+1>>0]|0)>0){c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[ka>>2]|0)){break b}f=FB(c[ja>>2]|0,c[E>>2]|0)|0;c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]=f;f=SA(c[ja>>2]|0,c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]|0)|0;b[(c[J>>2]|0)+(c[H>>2]<<1)>>1]=f;c[H>>2]=(c[H>>2]|0)+1;c[E>>2]=(c[E>>2]|0)+1}}else{c[la>>2]=c[(c[ja>>2]|0)+56>>2];b[ma>>1]=b[(c[ja>>2]|0)+18>>1]|0;b[na>>1]=b[(c[ja>>2]|0)+12>>1]|0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[ka>>2]|0)){break b}c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]=(c[la>>2]|0)+(e[ma>>1]&(d[(c[la>>2]|0)+((e[na>>1]|0)+(c[E>>2]<<1))>>0]<<8|d[(c[la>>2]|0)+((e[na>>1]|0)+(c[E>>2]<<1))+1>>0]));f=SA(c[ja>>2]|0,c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]|0)|0;b[(c[J>>2]|0)+(c[H>>2]<<1)>>1]=f;c[H>>2]=(c[H>>2]|0)+1;c[E>>2]=(c[E>>2]|0)+1}}}while(0);if((c[n>>2]|0)<((c[q>>2]|0)-1|0)?(c[l>>2]|0)==0:0){b[oa>>1]=c[ga+(c[n>>2]<<2)>>2];b[(c[J>>2]|0)+(c[H>>2]<<1)>>1]=b[oa>>1]|0;c[ra>>2]=(c[pa>>2]|0)+(c[qa>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(e[oa>>1]|0);dE(c[ra>>2]|0,c[sa+(c[n>>2]<<2)>>2]|0,e[oa>>1]|0)|0;c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]=(c[ra>>2]|0)+(e[v>>1]|0);b[(c[J>>2]|0)+(c[H>>2]<<1)>>1]=(e[(c[J>>2]|0)+(c[H>>2]<<1)>>1]|0)-(e[v>>1]|0);ta=c[H>>2]|0;if((a[(c[ja>>2]|0)+3>>0]|0)!=0){if((e[(c[J>>2]|0)+(ta<<1)>>1]|0)<4){b[(c[J>>2]|0)+(c[H>>2]<<1)>>1]=4}}else{f=c[(c[s>>2]|0)+(ta<<2)>>2]|0;g=(c[(c[ja>>2]|0)+56>>2]|0)+8|0;a[f+0>>0]=a[g+0>>0]|0;a[f+1>>0]=a[g+1>>0]|0;a[f+2>>0]=a[g+2>>0]|0;a[f+3>>0]=a[g+3>>0]|0}c[H>>2]=(c[H>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}c[ia>>2]=(c[ta+36>>2]|0)-12+(e[v>>1]|0);c[n>>2]=0;c[w>>2]=0;c[ha>>2]=0;while(1){if((c[n>>2]|0)>=(c[H>>2]|0)){break}c[ha>>2]=(c[ha>>2]|0)+((e[(c[J>>2]|0)+(c[n>>2]<<1)>>1]|0)+2);if((c[ha>>2]|0)>(c[ia>>2]|0)){c[ga+(c[w>>2]<<2)>>2]=(c[ha>>2]|0)-(e[(c[J>>2]|0)+(c[n>>2]<<1)>>1]|0);c[z+(c[w>>2]<<2)>>2]=c[n>>2];if((c[l>>2]|0)!=0){c[n>>2]=(c[n>>2]|0)+ -1}c[ha>>2]=0;c[w>>2]=(c[w>>2]|0)+1;if((c[w>>2]|0)>4){va=51;break}}c[n>>2]=(c[n>>2]|0)+1}if((va|0)==51){c[y>>2]=ej(57526)|0;break}c[ga+(c[w>>2]<<2)>>2]=c[ha>>2];c[z+(c[w>>2]<<2)>>2]=c[H>>2];c[w>>2]=(c[w>>2]|0)+1;c[n>>2]=(c[w>>2]|0)-1;while(1){if((c[n>>2]|0)<=0){break}c[ca>>2]=c[ga+(c[n>>2]<<2)>>2];c[ea>>2]=c[ga+((c[n>>2]|0)-1<<2)>>2];c[fa>>2]=(c[z+((c[n>>2]|0)-1<<2)>>2]|0)-1;c[da>>2]=(c[fa>>2]|0)+1-(c[l>>2]|0);while(1){if((c[ca>>2]|0)!=0){if((c[ba>>2]|0)!=0){break}if(((c[ca>>2]|0)+(e[(c[J>>2]|0)+(c[da>>2]<<1)>>1]|0)+2|0)>((c[ea>>2]|0)-((e[(c[J>>2]|0)+(c[fa>>2]<<1)>>1]|0)+2)|0)){break}}c[ca>>2]=(c[ca>>2]|0)+((e[(c[J>>2]|0)+(c[da>>2]<<1)>>1]|0)+2);c[ea>>2]=(c[ea>>2]|0)-((e[(c[J>>2]|0)+(c[fa>>2]<<1)>>1]|0)+2);f=z+((c[n>>2]|0)-1<<2)|0;c[f>>2]=(c[f>>2]|0)+ -1;c[fa>>2]=(c[z+((c[n>>2]|0)-1<<2)>>2]|0)-1;c[da>>2]=(c[fa>>2]|0)+1-(c[l>>2]|0)}c[ga+(c[n>>2]<<2)>>2]=c[ca>>2];c[ga+((c[n>>2]|0)-1<<2)>>2]=c[ea>>2];c[n>>2]=(c[n>>2]|0)+ -1}if((c[(c[r>>2]|0)+72>>2]|0)>>>0<=1){c[y>>2]=ej(57588)|0;break}c[M>>2]=d[c[(c[r>>2]|0)+56>>2]>>0]|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[w>>2]|0)){break}if((c[n>>2]|0)<(c[q>>2]|0)){f=c[r+(c[n>>2]<<2)>>2]|0;c[p+(c[n>>2]<<2)>>2]=f;c[_>>2]=f;c[r+(c[n>>2]<<2)>>2]=0;c[y>>2]=dd(c[(c[_>>2]|0)+68>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+1;if((c[y>>2]|0)!=0){break a}}else{c[y>>2]=$z(c[u>>2]|0,_,aa,(c[ba>>2]|0)!=0?1:c[aa>>2]|0,0)|0;if((c[y>>2]|0)!=0){break a}c[p+(c[n>>2]<<2)>>2]=c[_>>2];c[o>>2]=(c[o>>2]|0)+1;if((a[(c[u>>2]|0)+17>>0]|0)!=0?(dA(c[u>>2]|0,c[(c[_>>2]|0)+72>>2]|0,5,c[(c[R>>2]|0)+72>>2]|0,y),(c[y>>2]|0)!=0):0){break a}}c[n>>2]=(c[n>>2]|0)+1}while(1){if((c[n>>2]|0)>=(c[q>>2]|0)){break}ZA(c[r+(c[n>>2]<<2)>>2]|0,y);if((c[y>>2]|0)!=0){break a}Hk(c[r+(c[n>>2]<<2)>>2]|0);c[r+(c[n>>2]<<2)>>2]=0;c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=0;while(1){if((c[n>>2]|0)>=((c[w>>2]|0)-1|0)){break}c[Z>>2]=c[(c[p+(c[n>>2]<<2)>>2]|0)+72>>2];c[Y>>2]=c[n>>2];c[E>>2]=(c[n>>2]|0)+1;while(1){if((c[E>>2]|0)>=(c[w>>2]|0)){break}if((c[(c[p+(c[E>>2]<<2)>>2]|0)+72>>2]|0)>>>0<(c[Z>>2]|0)>>>0){c[Y>>2]=c[E>>2];c[Z>>2]=c[(c[p+(c[E>>2]<<2)>>2]|0)+72>>2]}c[E>>2]=(c[E>>2]|0)+1}if((c[Y>>2]|0)>(c[n>>2]|0)){c[U>>2]=c[p+(c[n>>2]<<2)>>2];c[p+(c[n>>2]<<2)>>2]=c[p+(c[Y>>2]<<2)>>2];c[p+(c[Y>>2]<<2)>>2]=c[U>>2]}c[n>>2]=(c[n>>2]|0)+1}Yj(c[W>>2]|0,c[(c[p+((c[o>>2]|0)-1<<2)>>2]|0)+72>>2]|0);c[E>>2]=0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break}c[S>>2]=c[p+(c[n>>2]<<2)>>2];_A(c[S>>2]|0,c[M>>2]|0);GB(c[S>>2]|0,(c[z+(c[n>>2]<<2)>>2]|0)-(c[E>>2]|0)|0,(c[s>>2]|0)+(c[E>>2]<<2)|0,(c[J>>2]|0)+(c[E>>2]<<1)|0);c[E>>2]=c[z+(c[n>>2]<<2)>>2];if((c[E>>2]|0)<(c[H>>2]|0)){c[Q>>2]=c[(c[s>>2]|0)+(c[E>>2]<<2)>>2];c[O>>2]=(e[(c[J>>2]|0)+(c[E>>2]<<1)>>1]|0)+(e[v>>1]|0);c[K>>2]=(c[V>>2]|0)+(c[N>>2]|0);do{if((a[(c[S>>2]|0)+3>>0]|0)!=0){if((c[l>>2]|0)!=0){c[E>>2]=(c[E>>2]|0)+ -1;qw(c[S>>2]|0,c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0,T);c[Q>>2]=c[K>>2];f=T;c[O>>2]=4+(nB((c[Q>>2]|0)+4|0,c[f>>2]|0,c[f+4>>2]|0)|0);c[K>>2]=0;break}c[Q>>2]=(c[Q>>2]|0)+ -4;if((e[(c[J>>2]|0)+(c[E>>2]<<1)>>1]|0)==4){c[O>>2]=(SA(c[R>>2]|0,c[Q>>2]|0)|0)&65535}}else{f=(c[(c[S>>2]|0)+56>>2]|0)+8|0;g=c[Q>>2]|0;a[f+0>>0]=a[g+0>>0]|0;a[f+1>>0]=a[g+1>>0]|0;a[f+2>>0]=a[g+2>>0]|0;a[f+3>>0]=a[g+3>>0]|0}}while(0);c[N>>2]=(c[N>>2]|0)+(c[O>>2]|0);AB(c[R>>2]|0,c[P>>2]|0,c[Q>>2]|0,c[O>>2]|0,c[K>>2]|0,c[(c[S>>2]|0)+72>>2]|0,y);if((c[y>>2]|0)!=0){break a}c[E>>2]=(c[E>>2]|0)+1;c[P>>2]=(c[P>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}if((c[M>>2]&8|0)==0){c[L>>2]=(c[(c[F+((c[q>>2]|0)-1<<2)>>2]|0)+56>>2]|0)+8;f=(c[(c[p+((c[o>>2]|0)-1<<2)>>2]|0)+56>>2]|0)+8|0;g=c[L>>2]|0;a[f+0>>0]=a[g+0>>0]|0;a[f+1>>0]=a[g+1>>0]|0;a[f+2>>0]=a[g+2>>0]|0;a[f+3>>0]=a[g+3>>0]|0}if(((c[X>>2]|0)!=0?(e[(c[R>>2]|0)+16>>1]|0)==0:0)?(d[(c[R>>2]|0)+5>>0]|0)<=(e[(c[p>>2]|0)+14>>1]|0):0){HB(c[p>>2]|0,c[R>>2]|0,y);ZA(c[p>>2]|0,y);break}if((a[(c[u>>2]|0)+17>>0]|0)!=0){c[x>>2]=c[p>>2];c[D>>2]=c[F>>2];c[C>>2]=d[(c[D>>2]|0)+1>>0]|0;c[G>>2]=(e[(c[D>>2]|0)+16>>1]|0)+(c[C>>2]|0);if((c[C>>2]|0)!=0){K=e[(c[D>>2]|0)+20>>1]|0}else{K=-1}c[A>>2]=K;c[E>>2]=0;c[w>>2]=0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[H>>2]|0)){break}c[B>>2]=0;while(1){if((c[n>>2]|0)!=(c[G>>2]|0)){break}f=(c[E>>2]|0)+1|0;c[E>>2]=f;c[D>>2]=c[F+(f<<2)>>2];c[G>>2]=(c[n>>2]|0)+(((c[l>>2]|0)!=0^1)&1)+(e[(c[D>>2]|0)+16>>1]|0)+(d[(c[D>>2]|0)+1>>0]|0);if((a[(c[D>>2]|0)+1>>0]|0)!=0){c[C>>2]=d[(c[D>>2]|0)+1>>0]|0;c[A>>2]=(c[n>>2]|0)+(((c[l>>2]|0)!=0^1)&1)+(e[(c[D>>2]|0)+20>>1]|0)}c[B>>2]=((c[l>>2]|0)!=0^1)&1}if((c[n>>2]|0)==(c[A>>2]|0)?(c[B>>2]=1,f=(c[C>>2]|0)+ -1|0,c[C>>2]=f,(f|0)>0):0){c[A>>2]=(c[A>>2]|0)+1}if(!((c[n>>2]|0)==(c[z+(c[w>>2]<<2)>>2]|0)?(f=(c[w>>2]|0)+1|0,c[w>>2]=f,c[x>>2]=c[p+(f<<2)>>2],(c[l>>2]|0)==0):0)){va=117}do{if((va|0)==117){va=0;if((c[B>>2]|0)==0?(c[(c[D>>2]|0)+72>>2]|0)==(c[(c[x>>2]|0)+72>>2]|0):0){break}if((b[v>>1]|0)==0){g=c[u>>2]|0;f=Ah(c[(c[s>>2]|0)+(c[n>>2]<<2)>>2]|0)|0;dA(g,f,5,c[(c[x>>2]|0)+72>>2]|0,y)}if((e[(c[J>>2]|0)+(c[n>>2]<<1)>>1]|0)>(e[(c[x>>2]|0)+10>>1]|0)){fA(c[x>>2]|0,c[(c[s>>2]|0)+(c[n>>2]<<2)>>2]|0,y)}}}while(0);c[n>>2]=(c[n>>2]|0)+1}if((b[v>>1]|0)==0){c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break a}c[t>>2]=Ah((c[(c[p+(c[n>>2]<<2)>>2]|0)+56>>2]|0)+8|0)|0;dA(c[u>>2]|0,c[t>>2]|0,5,c[(c[p+(c[n>>2]<<2)>>2]|0)+72>>2]|0,y);c[n>>2]=(c[n>>2]|0)+1}}}}}while(0);gg(c[s>>2]|0);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[q>>2]|0)){break}Hk(c[r+(c[n>>2]<<2)>>2]|0);c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break}Hk(c[p+(c[n>>2]<<2)>>2]|0);c[n>>2]=(c[n>>2]|0)+1}c[I>>2]=c[y>>2];f=c[I>>2]|0;i=m;return f|0}function FB(a,b){a=a|0;b=b|0;var f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;h=j+16|0;f=j+12|0;g=j+8|0;k=j+4|0;l=j;c[f>>2]=a;c[g>>2]=b;c[k>>2]=(d[(c[f>>2]|0)+1>>0]|0)-1;while(1){if((c[k>>2]|0)<0){b=8;break}c[l>>2]=e[(c[f>>2]|0)+20+(c[k>>2]<<1)>>1]|0;if((c[l>>2]|0)<=(c[g>>2]|0)){if((c[l>>2]|0)==(c[g>>2]|0)){b=5;break}c[g>>2]=(c[g>>2]|0)+ -1}c[k>>2]=(c[k>>2]|0)+ -1}if((b|0)==5){c[h>>2]=c[(c[f>>2]|0)+32+(c[k>>2]<<2)>>2];a=c[h>>2]|0;i=j;return a|0}else if((b|0)==8){c[h>>2]=(c[(c[f>>2]|0)+56>>2]|0)+((e[(c[f>>2]|0)+18>>1]|0)&((d[(c[(c[f>>2]|0)+64>>2]|0)+(c[g>>2]<<1)>>0]|0)<<8|(d[(c[(c[f>>2]|0)+64>>2]|0)+(c[g>>2]<<1)+1>>0]|0)));a=c[h>>2]|0;i=j;return a|0}return 0}function GB(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;q=i;i=i+48|0;o=q+36|0;r=q+32|0;v=q+28|0;s=q+24|0;k=q+20|0;u=q+16|0;n=q+12|0;l=q+8|0;m=q+4|0;p=q;t=q+40|0;c[o>>2]=f;c[r>>2]=g;c[v>>2]=h;c[s>>2]=j;c[l>>2]=c[(c[o>>2]|0)+56>>2];c[m>>2]=d[(c[o>>2]|0)+5>>0]|0;c[p>>2]=c[(c[(c[o>>2]|0)+52>>2]|0)+36>>2];c[u>>2]=(c[(c[o>>2]|0)+64>>2]|0)+(c[r>>2]<<1);c[n>>2]=c[p>>2];c[k>>2]=(c[r>>2]|0)-1;while(1){if((c[k>>2]|0)<0){break}b[t>>1]=b[(c[s>>2]|0)+(c[k>>2]<<1)>>1]|0;c[u>>2]=(c[u>>2]|0)+ -2;c[n>>2]=(c[n>>2]|0)-(e[t>>1]|0);a[c[u>>2]>>0]=c[n>>2]>>8;a[(c[u>>2]|0)+1>>0]=c[n>>2];dE((c[l>>2]|0)+(c[n>>2]|0)|0,c[(c[v>>2]|0)+(c[k>>2]<<2)>>2]|0,e[t>>1]|0|0)|0;c[k>>2]=(c[k>>2]|0)+ -1}a[(c[l>>2]|0)+((c[m>>2]|0)+3)>>0]=c[r>>2]>>8;a[(c[l>>2]|0)+((c[m>>2]|0)+3)+1>>0]=c[r>>2];a[(c[l>>2]|0)+((c[m>>2]|0)+5)>>0]=c[n>>2]>>8;a[(c[l>>2]|0)+((c[m>>2]|0)+5)+1>>0]=c[n>>2];f=(c[o>>2]|0)+14|0;b[f>>1]=(e[f>>1]|0)-((c[r>>2]<<1)+(c[p>>2]|0)-(c[n>>2]|0));b[(c[o>>2]|0)+16>>1]=c[r>>2];i=q;return}function HB(b,f,g){b=b|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=i;i=i+48|0;n=o+36|0;l=o+32|0;k=o+28|0;m=o+24|0;h=o+20|0;p=o+16|0;q=o+12|0;r=o+8|0;j=o+4|0;s=o;c[n>>2]=b;c[l>>2]=f;c[k>>2]=g;if((c[c[k>>2]>>2]|0)!=0){i=o;return}c[m>>2]=c[(c[n>>2]|0)+52>>2];c[h>>2]=c[(c[n>>2]|0)+56>>2];c[p>>2]=c[(c[l>>2]|0)+56>>2];c[q>>2]=d[(c[n>>2]|0)+5>>0]|0;c[r>>2]=(c[(c[l>>2]|0)+72>>2]|0)==1?100:0;c[s>>2]=d[(c[h>>2]|0)+((c[q>>2]|0)+5)>>0]<<8|d[(c[h>>2]|0)+((c[q>>2]|0)+5)+1>>0];dE((c[p>>2]|0)+(c[s>>2]|0)|0,(c[h>>2]|0)+(c[s>>2]|0)|0,(c[(c[m>>2]|0)+36>>2]|0)-(c[s>>2]|0)|0)|0;dE((c[p>>2]|0)+(c[r>>2]|0)|0,(c[h>>2]|0)+(c[q>>2]|0)|0,(e[(c[n>>2]|0)+12>>1]|0)+(e[(c[n>>2]|0)+16>>1]<<1)|0)|0;a[c[l>>2]>>0]=0;c[j>>2]=Mj(c[l>>2]|0)|0;if((c[j>>2]|0)!=0){c[c[k>>2]>>2]=c[j>>2];i=o;return}if((a[(c[m>>2]|0)+17>>0]|0)==0){i=o;return}b=cA(c[l>>2]|0)|0;c[c[k>>2]>>2]=b;i=o;return}function IB(b,f,g){b=b|0;f=f|0;g=g|0;var h=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;s=i;i=i+64|0;k=s+56|0;x=s+52|0;m=s+48|0;q=s+44|0;u=s+40|0;r=s+36|0;t=s+32|0;n=s+28|0;l=s+24|0;y=s+20|0;w=s+16|0;o=s+12|0;h=s+8|0;v=s+4|0;p=s;c[x>>2]=b;c[m>>2]=f;c[q>>2]=g;c[u>>2]=d[(c[x>>2]|0)+5>>0]|0;c[r>>2]=c[(c[x>>2]|0)+56>>2];c[w>>2]=c[(c[(c[x>>2]|0)+52>>2]|0)+36>>2];c[t>>2]=d[(c[r>>2]|0)+((c[u>>2]|0)+7)>>0]|0;c[l>>2]=(e[(c[x>>2]|0)+12>>1]|0)+((e[(c[x>>2]|0)+16>>1]|0)<<1);c[n>>2]=(((d[(c[r>>2]|0)+((c[u>>2]|0)+5)>>0]|0)<<8|(d[(c[r>>2]|0)+((c[u>>2]|0)+5)+1>>0]|0))-1&65535)+1;if((c[l>>2]|0)>(c[n>>2]|0)){c[k>>2]=ej(52373)|0;b=c[k>>2]|0;i=s;return b|0}a:do{if((c[t>>2]|0)<60){if(((c[l>>2]|0)+2|0)<=(c[n>>2]|0)){c[h>>2]=(c[u>>2]|0)+1;while(1){b=(d[(c[r>>2]|0)+(c[h>>2]|0)>>0]|0)<<8|(d[(c[r>>2]|0)+(c[h>>2]|0)+1>>0]|0);c[o>>2]=b;if((b|0)<=0){break a}if((c[o>>2]|0)>((c[w>>2]|0)-4|0)){j=12;break}if((c[o>>2]|0)<((c[h>>2]|0)+4|0)){j=12;break}c[v>>2]=(d[(c[r>>2]|0)+((c[o>>2]|0)+2)>>0]|0)<<8|(d[(c[r>>2]|0)+((c[o>>2]|0)+2)+1>>0]|0);if((c[v>>2]|0)>=(c[m>>2]|0)){break}c[h>>2]=c[o>>2]}if((j|0)==12){c[k>>2]=ej(52392)|0;b=c[k>>2]|0;i=s;return b|0}c[p>>2]=(c[v>>2]|0)-(c[m>>2]|0);do{if((c[p>>2]|0)<4){b=(c[r>>2]|0)+(c[h>>2]|0)|0;f=(c[r>>2]|0)+(c[o>>2]|0)|0;a[b+0>>0]=a[f+0>>0]|0;a[b+1>>0]=a[f+1>>0]|0;a[(c[r>>2]|0)+((c[u>>2]|0)+7)>>0]=(c[t>>2]|0)+(c[p>>2]|0)}else{if(((c[v>>2]|0)+(c[o>>2]|0)|0)<=(c[w>>2]|0)){a[(c[r>>2]|0)+((c[o>>2]|0)+2)>>0]=c[p>>2]>>8;a[(c[r>>2]|0)+((c[o>>2]|0)+2)+1>>0]=c[p>>2];break}c[k>>2]=ej(52405)|0;b=c[k>>2]|0;i=s;return b|0}}while(0);c[c[q>>2]>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[k>>2]=0;b=c[k>>2]|0;i=s;return b|0}}else{c[y>>2]=JB(c[x>>2]|0)|0;if((c[y>>2]|0)==0){c[n>>2]=(((d[(c[r>>2]|0)+((c[u>>2]|0)+5)>>0]|0)<<8|(d[(c[r>>2]|0)+((c[u>>2]|0)+5)+1>>0]|0))-1&65535)+1;break}c[k>>2]=c[y>>2];b=c[k>>2]|0;i=s;return b|0}}while(0);do{if(((c[l>>2]|0)+2+(c[m>>2]|0)|0)>(c[n>>2]|0)){c[y>>2]=JB(c[x>>2]|0)|0;if((c[y>>2]|0)==0){c[n>>2]=(((d[(c[r>>2]|0)+((c[u>>2]|0)+5)>>0]|0)<<8|(d[(c[r>>2]|0)+((c[u>>2]|0)+5)+1>>0]|0))-1&65535)+1;break}c[k>>2]=c[y>>2];b=c[k>>2]|0;i=s;return b|0}}while(0);c[n>>2]=(c[n>>2]|0)-(c[m>>2]|0);a[(c[r>>2]|0)+((c[u>>2]|0)+5)>>0]=c[n>>2]>>8;a[(c[r>>2]|0)+((c[u>>2]|0)+5)+1>>0]=c[n>>2];c[c[q>>2]>>2]=c[n>>2];c[k>>2]=0;b=c[k>>2]|0;i=s;return b|0}function JB(b){b=b|0;var f=0,g=0,h=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;f=i;i=i+64|0;m=f+56|0;l=f+52|0;t=f+48|0;o=f+44|0;j=f+40|0;n=f+36|0;p=f+32|0;s=f+28|0;g=f+24|0;v=f+20|0;h=f+16|0;q=f+12|0;k=f+8|0;r=f+4|0;u=f;c[l>>2]=b;c[q>>2]=KB(c[c[(c[l>>2]|0)+52>>2]>>2]|0)|0;c[h>>2]=c[(c[l>>2]|0)+56>>2];c[j>>2]=d[(c[l>>2]|0)+5>>0]|0;c[s>>2]=e[(c[l>>2]|0)+12>>1]|0;c[v>>2]=e[(c[l>>2]|0)+16>>1]|0;c[p>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+36>>2];c[g>>2]=(d[(c[h>>2]|0)+((c[j>>2]|0)+5)>>0]|0)<<8|(d[(c[h>>2]|0)+((c[j>>2]|0)+5)+1>>0]|0);dE((c[q>>2]|0)+(c[g>>2]|0)|0,(c[h>>2]|0)+(c[g>>2]|0)|0,(c[p>>2]|0)-(c[g>>2]|0)|0)|0;c[g>>2]=c[p>>2];c[k>>2]=(c[s>>2]|0)+(c[v>>2]<<1);c[r>>2]=(c[p>>2]|0)-4;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[v>>2]|0)){n=10;break}c[u>>2]=(c[h>>2]|0)+((c[s>>2]|0)+(c[t>>2]<<1));c[o>>2]=(d[c[u>>2]>>0]|0)<<8|(d[(c[u>>2]|0)+1>>0]|0);if((c[o>>2]|0)<(c[k>>2]|0)){n=5;break}if((c[o>>2]|0)>(c[r>>2]|0)){n=5;break}c[n>>2]=(SA(c[l>>2]|0,(c[q>>2]|0)+(c[o>>2]|0)|0)|0)&65535;c[g>>2]=(c[g>>2]|0)-(c[n>>2]|0);if((c[g>>2]|0)<(c[k>>2]|0)){n=8;break}if(((c[o>>2]|0)+(c[n>>2]|0)|0)>(c[p>>2]|0)){n=8;break}dE((c[h>>2]|0)+(c[g>>2]|0)|0,(c[q>>2]|0)+(c[o>>2]|0)|0,c[n>>2]|0)|0;a[c[u>>2]>>0]=c[g>>2]>>8;a[(c[u>>2]|0)+1>>0]=c[g>>2];c[t>>2]=(c[t>>2]|0)+1}if((n|0)==5){c[m>>2]=ej(52304)|0;v=c[m>>2]|0;i=f;return v|0}else if((n|0)==8){c[m>>2]=ej(52316)|0;v=c[m>>2]|0;i=f;return v|0}else if((n|0)==10){a[(c[h>>2]|0)+((c[j>>2]|0)+5)>>0]=c[g>>2]>>8;a[(c[h>>2]|0)+((c[j>>2]|0)+5)+1>>0]=c[g>>2];a[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]=0;a[(c[h>>2]|0)+((c[j>>2]|0)+2)>>0]=0;a[(c[h>>2]|0)+((c[j>>2]|0)+7)>>0]=0;_D((c[h>>2]|0)+(c[k>>2]|0)|0,0,(c[g>>2]|0)-(c[k>>2]|0)|0)|0;if(((c[g>>2]|0)-(c[k>>2]|0)|0)!=(e[(c[l>>2]|0)+14>>1]|0|0)){c[m>>2]=ej(52333)|0;v=c[m>>2]|0;i=f;return v|0}else{c[m>>2]=0;v=c[m>>2]|0;i=f;return v|0}}return 0}function KB(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+200>>2]|0}function LB(f,g,h){f=f|0;g=g|0;h=h|0;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;l=i;i=i+64|0;t=l+52|0;x=l+48|0;v=l+44|0;w=l+40|0;s=l+36|0;o=l+32|0;n=l+28|0;y=l+24|0;m=l+20|0;q=l+16|0;r=l+12|0;u=l+8|0;j=l+4|0;p=l;c[x>>2]=f;c[v>>2]=g;c[w>>2]=h;c[m>>2]=c[(c[x>>2]|0)+56>>2];if((b[(c[(c[x>>2]|0)+52>>2]|0)+22>>1]&4|0)!=0){_D((c[m>>2]|0)+(c[v>>2]|0)|0,0,c[w>>2]|0)|0}c[n>>2]=d[(c[x>>2]|0)+5>>0]|0;c[s>>2]=(c[n>>2]|0)+1;c[y>>2]=(c[(c[(c[x>>2]|0)+52>>2]|0)+36>>2]|0)-4;while(1){f=(d[(c[m>>2]|0)+(c[s>>2]|0)>>0]|0)<<8|(d[(c[m>>2]|0)+(c[s>>2]|0)+1>>0]|0);c[o>>2]=f;if((f|0)<(c[v>>2]|0)){g=(c[o>>2]|0)>0}else{g=0}h=c[o>>2]|0;if(!g){break}if((h|0)<((c[s>>2]|0)+4|0)){k=8;break}c[s>>2]=c[o>>2]}if((k|0)==8){c[t>>2]=ej(52483)|0;f=c[t>>2]|0;i=l;return f|0}if((h|0)>(c[y>>2]|0)){c[t>>2]=ej(52488)|0;f=c[t>>2]|0;i=l;return f|0}a[(c[m>>2]|0)+(c[s>>2]|0)>>0]=c[v>>2]>>8;a[(c[m>>2]|0)+(c[s>>2]|0)+1>>0]=c[v>>2];a[(c[m>>2]|0)+(c[v>>2]|0)>>0]=c[o>>2]>>8;a[(c[m>>2]|0)+(c[v>>2]|0)+1>>0]=c[o>>2];a[(c[m>>2]|0)+((c[v>>2]|0)+2)>>0]=c[w>>2]>>8;a[(c[m>>2]|0)+((c[v>>2]|0)+2)+1>>0]=c[w>>2];b[(c[x>>2]|0)+14>>1]=(e[(c[x>>2]|0)+14>>1]|0)+(c[w>>2]&65535);c[s>>2]=(c[n>>2]|0)+1;while(1){f=(d[(c[m>>2]|0)+(c[s>>2]|0)>>0]|0)<<8|(d[(c[m>>2]|0)+(c[s>>2]|0)+1>>0]|0);c[o>>2]=f;if((f|0)<=0){break}c[q>>2]=(d[(c[m>>2]|0)+(c[o>>2]|0)>>0]|0)<<8|(d[(c[m>>2]|0)+(c[o>>2]|0)+1>>0]|0);c[r>>2]=(d[(c[m>>2]|0)+((c[o>>2]|0)+2)>>0]|0)<<8|(d[(c[m>>2]|0)+((c[o>>2]|0)+2)+1>>0]|0);if(!((c[q>>2]|0)>0?((c[o>>2]|0)+(c[r>>2]|0)+3|0)>=(c[q>>2]|0):0)){c[s>>2]=c[o>>2];continue}c[j>>2]=(c[q>>2]|0)-((c[o>>2]|0)+(c[r>>2]|0));if((c[j>>2]|0)<0){k=17;break}if((c[j>>2]|0)>(d[(c[m>>2]|0)+((c[n>>2]|0)+7)>>0]|0|0)){k=17;break}f=(c[m>>2]|0)+((c[n>>2]|0)+7)|0;a[f>>0]=(d[f>>0]|0)-(c[j>>2]&255);c[u>>2]=(d[(c[m>>2]|0)+(c[q>>2]|0)>>0]|0)<<8|(d[(c[m>>2]|0)+(c[q>>2]|0)+1>>0]|0);a[(c[m>>2]|0)+(c[o>>2]|0)>>0]=c[u>>2]>>8;a[(c[m>>2]|0)+(c[o>>2]|0)+1>>0]=c[u>>2];c[u>>2]=(c[q>>2]|0)+((d[(c[m>>2]|0)+((c[q>>2]|0)+2)>>0]|0)<<8|(d[(c[m>>2]|0)+((c[q>>2]|0)+2)+1>>0]|0))-(c[o>>2]|0);a[(c[m>>2]|0)+((c[o>>2]|0)+2)>>0]=c[u>>2]>>8;a[(c[m>>2]|0)+((c[o>>2]|0)+2)+1>>0]=c[u>>2]}if((k|0)==17){c[t>>2]=ej(52507)|0;f=c[t>>2]|0;i=l;return f|0}if((d[(c[m>>2]|0)+((c[n>>2]|0)+1)>>0]|0|0)==(d[(c[m>>2]|0)+((c[n>>2]|0)+5)>>0]|0|0)?(d[(c[m>>2]|0)+((c[n>>2]|0)+2)>>0]|0|0)==(d[(c[m>>2]|0)+((c[n>>2]|0)+6)>>0]|0|0):0){c[o>>2]=(d[(c[m>>2]|0)+((c[n>>2]|0)+1)>>0]|0)<<8|(d[(c[m>>2]|0)+((c[n>>2]|0)+1)+1>>0]|0);f=(c[m>>2]|0)+((c[n>>2]|0)+1)|0;g=(c[m>>2]|0)+(c[o>>2]|0)|0;a[f+0>>0]=a[g+0>>0]|0;a[f+1>>0]=a[g+1>>0]|0;c[p>>2]=((d[(c[m>>2]|0)+((c[n>>2]|0)+5)>>0]|0)<<8|(d[(c[m>>2]|0)+((c[n>>2]|0)+5)+1>>0]|0))+((d[(c[m>>2]|0)+((c[o>>2]|0)+2)>>0]|0)<<8|(d[(c[m>>2]|0)+((c[o>>2]|0)+2)+1>>0]|0));a[(c[m>>2]|0)+((c[n>>2]|0)+5)>>0]=c[p>>2]>>8;a[(c[m>>2]|0)+((c[n>>2]|0)+5)+1>>0]=c[p>>2]}c[t>>2]=0;f=c[t>>2]|0;i=l;return f|0}function MB(b,f,g,h,j,k,l,m,n){b=b|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;r=i;i=i+144|0;q=r+124|0;L=r+120|0;z=r+116|0;I=r+112|0;H=r+32|0;D=r+108|0;K=r+104|0;M=r+100|0;y=r+96|0;u=r+92|0;E=r+88|0;G=r+84|0;v=r+80|0;p=r+76|0;w=r+72|0;J=r+68|0;o=r+64|0;C=r+60|0;N=r+56|0;B=r+52|0;F=r+48|0;A=r+44|0;x=r;s=r+40|0;t=r+128|0;c[L>>2]=b;c[z>>2]=f;c[I>>2]=g;b=H;c[b>>2]=h;c[b+4>>2]=j;c[D>>2]=k;c[K>>2]=l;c[M>>2]=m;c[y>>2]=n;c[J>>2]=0;c[o>>2]=0;c[B>>2]=c[(c[L>>2]|0)+52>>2];c[F>>2]=0;c[A>>2]=0;if((a[(c[L>>2]|0)+3>>0]|0)==0){c[A>>2]=(c[A>>2]|0)+4}if((a[(c[L>>2]|0)+4>>0]|0)!=0){if(((c[K>>2]|0)+(c[M>>2]|0)|0)>>>0<128){a[(c[z>>2]|0)+(c[A>>2]|0)>>0]=(c[K>>2]|0)+(c[M>>2]|0);n=1}else{n=Wy((c[z>>2]|0)+(c[A>>2]|0)|0,(c[K>>2]|0)+(c[M>>2]|0)|0)|0}c[A>>2]=(c[A>>2]|0)+(n&255)}else{c[M>>2]=0;c[K>>2]=0}b=H;b=nB((c[z>>2]|0)+(c[A>>2]|0)|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[A>>2]=(c[A>>2]|0)+b;qw(c[L>>2]|0,c[z>>2]|0,x);c[u>>2]=(c[K>>2]|0)+(c[M>>2]|0);do{if((a[(c[L>>2]|0)+2>>0]|0)!=0){c[E>>2]=c[D>>2];c[G>>2]=c[K>>2];c[K>>2]=0}else{b=H;f=c[b+4>>2]|0;if(!((f|0)>0|(f|0)==0&(c[b>>2]|0)>>>0>2147483647)?(c[I>>2]|0)!=0:0){c[u>>2]=(c[u>>2]|0)+(c[H>>2]|0);c[E>>2]=c[I>>2];c[G>>2]=c[H>>2];break}c[q>>2]=ej(56721)|0;b=c[q>>2]|0;i=r;return b|0}}while(0);c[c[y>>2]>>2]=e[x+26>>1]|0;c[w>>2]=e[x+22>>1]|0;c[N>>2]=(c[z>>2]|0)+(c[A>>2]|0);c[C>>2]=(c[z>>2]|0)+(e[x+24>>1]|0);while(1){if((c[u>>2]|0)<=0){s=37;break}if((c[w>>2]|0)==0){c[s>>2]=c[F>>2];if((a[(c[B>>2]|0)+17>>0]|0)!=0){while(1){c[F>>2]=(c[F>>2]|0)+1;b=vw(c[B>>2]|0,c[F>>2]|0)|0;if((b|0)==(c[F>>2]|0)){continue}if((c[F>>2]|0)!=((((c[346]|0)>>>0)/((c[(c[B>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){break}}}c[p>>2]=$z(c[B>>2]|0,J,F,c[F>>2]|0,0)|0;if(((d[(c[B>>2]|0)+17>>0]|0)!=0?(c[p>>2]|0)==0:0)?(a[t>>0]=(c[s>>2]|0)!=0?4:3,dA(c[B>>2]|0,c[F>>2]|0,a[t>>0]|0,c[s>>2]|0,p),(c[p>>2]|0)!=0):0){Hk(c[J>>2]|0)}if((c[p>>2]|0)!=0){s=26;break}Yj(c[C>>2]|0,c[F>>2]|0);Hk(c[o>>2]|0);c[o>>2]=c[J>>2];c[C>>2]=c[(c[J>>2]|0)+56>>2];Yj(c[C>>2]|0,0);c[N>>2]=(c[(c[J>>2]|0)+56>>2]|0)+4;c[w>>2]=(c[(c[B>>2]|0)+36>>2]|0)-4}c[v>>2]=c[u>>2];if((c[v>>2]|0)>(c[w>>2]|0)){c[v>>2]=c[w>>2]}if((c[G>>2]|0)>0){if((c[v>>2]|0)>(c[G>>2]|0)){c[v>>2]=c[G>>2]}dE(c[N>>2]|0,c[E>>2]|0,c[v>>2]|0)|0}else{_D(c[N>>2]|0,0,c[v>>2]|0)|0}c[u>>2]=(c[u>>2]|0)-(c[v>>2]|0);c[N>>2]=(c[N>>2]|0)+(c[v>>2]|0);c[E>>2]=(c[E>>2]|0)+(c[v>>2]|0);c[G>>2]=(c[G>>2]|0)-(c[v>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[v>>2]|0);if((c[G>>2]|0)!=0){continue}c[G>>2]=c[K>>2];c[E>>2]=c[D>>2]}if((s|0)==26){Hk(c[o>>2]|0);c[q>>2]=c[p>>2];b=c[q>>2]|0;i=r;return b|0}else if((s|0)==37){Hk(c[o>>2]|0);c[q>>2]=0;b=c[q>>2]|0;i=r;return b|0}return 0}function NB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d+4|0;f=d;c[e>>2]=a;c[g>>2]=b;c[f>>2]=c[(c[g>>2]|0)+64>>2];if((c[f>>2]|0)==0){i=d;return}xz(c[e>>2]|0,c[f>>2]|0);Wb(c[e>>2]|0,c[(c[f>>2]|0)+52>>2]|0);Wb(c[e>>2]|0,c[f>>2]|0);c[(c[g>>2]|0)+64>>2]=0;i=d;return}function OB(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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;j=i;i=i+64|0;o=j+44|0;n=j+40|0;u=j+36|0;m=j+32|0;h=j+28|0;k=j+24|0;g=j+20|0;p=j+16|0;l=j+12|0;s=j+8|0;t=j+4|0;q=j+48|0;r=j;c[n>>2]=b;c[u>>2]=e;c[m>>2]=f;c[h>>2]=c[(c[n>>2]|0)+4>>2];f=c[h>>2]|0;if((a[(c[h>>2]|0)+17>>0]|0)!=0){Zz(f);Pc(c[n>>2]|0,4,g);c[g>>2]=(c[g>>2]|0)+1;while(1){b=c[g>>2]|0;if((b|0)!=(vw(c[h>>2]|0,c[g>>2]|0)|0)?(c[g>>2]|0)!=((((c[346]|0)>>>0)/((c[(c[h>>2]|0)+32>>2]|0)>>>0)|0)+1|0):0){break}c[g>>2]=(c[g>>2]|0)+1}c[p>>2]=$z(c[h>>2]|0,t,s,c[g>>2]|0,1)|0;if((c[p>>2]|0)!=0){c[o>>2]=c[p>>2];b=c[o>>2]|0;i=j;return b|0}if((c[s>>2]|0)!=(c[g>>2]|0)){a[q>>0]=0;c[r>>2]=0;c[p>>2]=ky(c[h>>2]|0,0,0)|0;Hk(c[t>>2]|0);if((c[p>>2]|0)!=0){c[o>>2]=c[p>>2];b=c[o>>2]|0;i=j;return b|0}c[p>>2]=hw(c[h>>2]|0,c[g>>2]|0,k,0)|0;if((c[p>>2]|0)!=0){c[o>>2]=c[p>>2];b=c[o>>2]|0;i=j;return b|0}c[p>>2]=ww(c[h>>2]|0,c[g>>2]|0,q,r)|0;if(!((d[q>>0]|0)!=1?(d[q>>0]|0)!=2:0)){c[p>>2]=ej(58462)|0}if((c[p>>2]|0)!=0){Hk(c[k>>2]|0);c[o>>2]=c[p>>2];b=c[o>>2]|0;i=j;return b|0}c[p>>2]=aA(c[h>>2]|0,c[k>>2]|0,a[q>>0]|0,c[r>>2]|0,c[s>>2]|0,0)|0;Hk(c[k>>2]|0);if((c[p>>2]|0)!=0){c[o>>2]=c[p>>2];b=c[o>>2]|0;i=j;return b|0}c[p>>2]=hw(c[h>>2]|0,c[g>>2]|0,k,0)|0;if((c[p>>2]|0)!=0){c[o>>2]=c[p>>2];b=c[o>>2]|0;i=j;return b|0}c[p>>2]=dd(c[(c[k>>2]|0)+68>>2]|0)|0;if((c[p>>2]|0)!=0){Hk(c[k>>2]|0);c[o>>2]=c[p>>2];b=c[o>>2]|0;i=j;return b|0}}else{c[k>>2]=c[t>>2]}dA(c[h>>2]|0,c[g>>2]|0,1,0,p);if((c[p>>2]|0)!=0){Hk(c[k>>2]|0);c[o>>2]=c[p>>2];b=c[o>>2]|0;i=j;return b|0}c[p>>2]=_c(c[n>>2]|0,4,c[g>>2]|0)|0;if((c[p>>2]|0)!=0){Hk(c[k>>2]|0);c[o>>2]=c[p>>2];b=c[o>>2]|0;i=j;return b|0}}else{c[p>>2]=$z(f,k,g,1,0)|0;if((c[p>>2]|0)!=0){c[o>>2]=c[p>>2];b=c[o>>2]|0;i=j;return b|0}}if((c[m>>2]&1|0)!=0){c[l>>2]=13}else{c[l>>2]=10}_A(c[k>>2]|0,c[l>>2]|0);Xc(c[(c[k>>2]|0)+68>>2]|0);c[c[u>>2]>>2]=c[g>>2];c[o>>2]=0;b=c[o>>2]|0;i=j;return b|0}function PB(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+32|0;k=o+24|0;p=o+20|0;n=o+16|0;q=o+12|0;j=o+8|0;l=o+4|0;m=o;c[p>>2]=d;c[n>>2]=e;c[q>>2]=f;c[j>>2]=g;c[l>>2]=h;c[m>>2]=c[(c[p>>2]|0)+4>>2];if((c[q>>2]|0)!=0?(b[(c[m>>2]|0)+22>>1]&1|0)!=0:0){c[k>>2]=8;d=c[k>>2]|0;i=o;return d|0}if((c[n>>2]|0)==1?(gw(c[m>>2]|0)|0)==0:0){c[n>>2]=0}c[(c[l>>2]|0)+68>>2]=c[n>>2];b[(c[l>>2]|0)+84>>1]=-1;c[(c[l>>2]|0)+16>>2]=c[j>>2];c[c[l>>2]>>2]=c[p>>2];c[(c[l>>2]|0)+4>>2]=c[m>>2];a[(c[l>>2]|0)+80>>0]=c[q>>2];c[(c[l>>2]|0)+8>>2]=c[(c[m>>2]|0)+8>>2];if((c[(c[l>>2]|0)+8>>2]|0)!=0){c[(c[(c[l>>2]|0)+8>>2]|0)+12>>2]=c[l>>2]}c[(c[m>>2]|0)+8>>2]=c[l>>2];a[(c[l>>2]|0)+81>>0]=0;c[k>>2]=0;d=c[k>>2]|0;i=o;return d|0}function QB(){return 208}function RB(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;d=(c[d>>2]|0)+0|0;a=d+84|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));i=b;return}function SB(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+24|0;h=e+20|0;l=e+16|0;g=e+12|0;m=e+8|0;k=e+4|0;j=e;c[h>>2]=a;c[l>>2]=b;c[g>>2]=0;c[m>>2]=c[(c[h>>2]|0)+96>>2];a:do{if((c[l>>2]|0)>(c[m>>2]|0)?(d[(c[h>>2]|0)+6>>0]|0|0)!=0:0){c[j>>2]=jc(c[(c[h>>2]|0)+92>>2]|0,(c[l>>2]|0)*48|0)|0;if((c[j>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=e;return a|0}_D((c[j>>2]|0)+((c[m>>2]|0)*48|0)|0,0,((c[l>>2]|0)-(c[m>>2]|0)|0)*48|0)|0;c[(c[h>>2]|0)+92>>2]=c[j>>2];c[k>>2]=c[m>>2];while(1){if((c[k>>2]|0)>=(c[l>>2]|0)){break a}c[(c[j>>2]|0)+((c[k>>2]|0)*48|0)+20>>2]=c[(c[h>>2]|0)+24>>2];if((c[c[(c[h>>2]|0)+64>>2]>>2]|0)!=0?(a=(c[h>>2]|0)+72|0,m=c[a+4>>2]|0,(m|0)>0|(m|0)==0&(c[a>>2]|0)>>>0>0):0){b=(c[h>>2]|0)+72|0;m=c[b+4>>2]|0;a=(c[j>>2]|0)+((c[k>>2]|0)*48|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=m}else{a=(c[j>>2]|0)+((c[k>>2]|0)*48|0)|0;c[a>>2]=c[(c[h>>2]|0)+148>>2];c[a+4>>2]=0}c[(c[j>>2]|0)+((c[k>>2]|0)*48|0)+24>>2]=c[(c[h>>2]|0)+52>>2];a=Og(c[(c[h>>2]|0)+24>>2]|0)|0;c[(c[j>>2]|0)+((c[k>>2]|0)*48|0)+16>>2]=a;if((c[(c[j>>2]|0)+((c[k>>2]|0)*48|0)+16>>2]|0)==0){break}if((Vh(c[h>>2]|0)|0)!=0){TB(c[(c[h>>2]|0)+208>>2]|0,(c[j>>2]|0)+((c[k>>2]|0)*48|0)+28|0)}c[(c[h>>2]|0)+96>>2]=(c[k>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+1}c[f>>2]=7;a=c[f>>2]|0;i=e;return a|0}}while(0);c[f>>2]=c[g>>2];a=c[f>>2]|0;i=e;return a|0}function TB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;c[c[e>>2]>>2]=c[(c[f>>2]|0)+68>>2];c[(c[e>>2]|0)+4>>2]=c[(c[f>>2]|0)+76>>2];c[(c[e>>2]|0)+8>>2]=c[(c[f>>2]|0)+80>>2];c[(c[e>>2]|0)+12>>2]=c[(c[f>>2]|0)+104>>2];i=d;return}function UB(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;l=g+8|0;k=g+4|0;m=g;c[j>>2]=f;if((c[(c[j>>2]|0)+44>>2]|0)>>>0>0){c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}c[l>>2]=c[(c[j>>2]|0)+12>>2];c[k>>2]=c[(c[l>>2]|0)+56>>2];c[m>>2]=dd(c[(c[l>>2]|0)+68>>2]|0)|0;if((c[m>>2]|0)!=0){c[h>>2]=c[m>>2];n=c[h>>2]|0;i=g;return n|0}else{n=(c[k>>2]|0)+0|0;m=34264|0;f=n+16|0;do{a[n>>0]=a[m>>0]|0;n=n+1|0;m=m+1|0}while((n|0)<(f|0));a[(c[k>>2]|0)+16>>0]=(c[(c[j>>2]|0)+32>>2]|0)>>>8&255;a[(c[k>>2]|0)+17>>0]=(c[(c[j>>2]|0)+32>>2]|0)>>>16&255;a[(c[k>>2]|0)+18>>0]=1;a[(c[k>>2]|0)+19>>0]=1;a[(c[k>>2]|0)+20>>0]=(c[(c[j>>2]|0)+32>>2]|0)-(c[(c[j>>2]|0)+36>>2]|0);a[(c[k>>2]|0)+21>>0]=64;a[(c[k>>2]|0)+22>>0]=32;a[(c[k>>2]|0)+23>>0]=32;n=(c[k>>2]|0)+24|0;f=n+76|0;do{a[n>>0]=0;n=n+1|0}while((n|0)<(f|0));_A(c[l>>2]|0,13);n=(c[j>>2]|0)+22|0;b[n>>1]=e[n>>1]|0|2;Yj((c[k>>2]|0)+52|0,d[(c[j>>2]|0)+17>>0]|0);Yj((c[k>>2]|0)+64|0,d[(c[j>>2]|0)+18>>0]|0);c[(c[j>>2]|0)+44>>2]=1;a[(c[k>>2]|0)+31>>0]=1;c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}return 0}function VB(a,b){a=a|0;b=b|0;var d=0,f=0,g=0;f=i;i=i+16|0;d=f+4|0;g=f;c[d>>2]=a;c[g>>2]=b;c[c[g>>2]>>2]=e[(c[d>>2]|0)+46>>1]|0;i=f;return(c[(c[d>>2]|0)+32>>2]|0)+(e[(c[d>>2]|0)+44>>1]|0)|0}function WB(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;j=e+8|0;g=e+4|0;h=e;c[j>>2]=a;c[g>>2]=b;if((d[(c[j>>2]|0)+81>>0]|0|0)==1){c[c[g>>2]>>2]=0;c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}if((d[(c[j>>2]|0)+81>>0]|0|0)>=3){b=bw(c[j>>2]|0)|0}else{b=0}c[h>>2]=b;if((c[h>>2]|0)!=0){c[c[g>>2]>>2]=2;c[f>>2]=c[h>>2];a=c[f>>2]|0;i=e;return a|0}if((d[(c[j>>2]|0)+81>>0]|0|0)==1?(c[(c[j>>2]|0)+76>>2]|0)==0:0){c[c[g>>2]>>2]=1}else{c[c[g>>2]>>2]=2}c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}function XB(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;d=b+16|0;h=b+12|0;g=b+8|0;f=b+4|0;e=b;c[d>>2]=a;if((c[(c[d>>2]|0)+176>>2]|0)!=0){c[h>>2]=c[(c[d>>2]|0)+176>>2];while(1){a=c[h>>2]|0;if((c[(c[h>>2]|0)+4>>2]|0)==0){break}c[h>>2]=c[a+4>>2]}Ey(a)|0}c[(c[d>>2]|0)+176>>2]=0;c[(c[d>>2]|0)+184>>2]=0;a:do{if((c[(c[d>>2]|0)+56>>2]|0)!=0){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+36>>2]|0)){break a}c[f>>2]=c[(c[(c[d>>2]|0)+56>>2]|0)+(c[g>>2]<<2)>>2];if((c[f>>2]|0)!=0){gz(c[d>>2]|0,c[f>>2]|0);c[(c[(c[d>>2]|0)+56>>2]|0)+(c[g>>2]<<2)>>2]=0}c[g>>2]=(c[g>>2]|0)+1}}}while(0);if((c[(c[d>>2]|0)+8>>2]|0)!=0){Qt((c[(c[d>>2]|0)+8>>2]|0)+40|0,c[(c[d>>2]|0)+28>>2]|0)}while(1){f=c[d>>2]|0;if((c[(c[d>>2]|0)+180>>2]|0)==0){break}c[e>>2]=c[f+180>>2];c[(c[d>>2]|0)+180>>2]=c[(c[e>>2]|0)+4>>2];dC(c[e>>2]|0)}Ny(f,-1,0);i=b;return}function YB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=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,E=0,F=0;g=i;i=i+112|0;v=g+8|0;f=g+104|0;h=g+100|0;F=g+96|0;m=g+92|0;B=g+88|0;s=g+84|0;C=g+80|0;E=g+76|0;A=g+72|0;z=g+68|0;l=g+64|0;o=g+60|0;j=g+56|0;y=g+52|0;k=g+48|0;q=g;w=g+44|0;d=g+40|0;u=g+36|0;t=g+32|0;r=g+28|0;p=g+24|0;n=g+20|0;x=g+16|0;c[h>>2]=a;c[F>>2]=b;c[B>>2]=0;c[s>>2]=0;c[C>>2]=0;c[s>>2]=ZB(c[h>>2]|0,c[F>>2]|0)|0;c[m>>2]=0;while(1){if((c[s>>2]|0)!=0){break}if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[E>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((Jk(c[E>>2]|0)|0)!=0){c[C>>2]=1;if((c[m>>2]|0)!=1){c[B>>2]=(c[B>>2]|0)+1}Mc(c[E>>2]|0);c[s>>2]=Zj(Rb(c[E>>2]|0)|0)|0}c[m>>2]=(c[m>>2]|0)+1}if((c[s>>2]|0)!=0){c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}if(((c[C>>2]|0)!=0?(c[(c[h>>2]|0)+184>>2]|0)!=0:0)?(c[s>>2]=ub[c[(c[h>>2]|0)+184>>2]&31](c[(c[h>>2]|0)+180>>2]|0)|0,(c[s>>2]|0)!=0):0){c[f>>2]=531;F=c[f>>2]|0;i=g;return F|0}if(0!=(Mb(lg(c[(c[(c[h>>2]|0)+16>>2]|0)+4>>2]|0)|0)|0)?(c[B>>2]|0)>1:0){c[l>>2]=c[c[h>>2]>>2];c[o>>2]=0;c[j>>2]=0;c[y>>2]=lg(c[(c[(c[h>>2]|0)+16>>2]|0)+4>>2]|0)|0;c[k>>2]=0;F=q;c[F>>2]=0;c[F+4>>2]=0;c[d>>2]=0;c[u>>2]=Mb(c[y>>2]|0)|0;F=c[h>>2]|0;c[v>>2]=c[y>>2];c[j>>2]=Oe(F,34280,v)|0;if((c[j>>2]|0)==0){c[f>>2]=7;F=c[f>>2]|0;i=g;return F|0}do{if((c[d>>2]|0)!=0){if((c[d>>2]|0)>100){e=35;break}if((c[d>>2]|0)==1){c[v>>2]=c[j>>2];rc(13,34312,v)}}c[d>>2]=(c[d>>2]|0)+1;tc(4,t);F=(c[j>>2]|0)+(c[u>>2]|0)|0;a=c[t>>2]&255;c[v>>2]=(c[t>>2]|0)>>>8&16777215;c[v+4>>2]=a;qc(13,F,34328,v)|0;c[s>>2]=pi(c[l>>2]|0,c[j>>2]|0,0,w)|0;if((c[s>>2]|0)!=0){break}}while((c[w>>2]|0)!=0);if((e|0)==35){c[v>>2]=c[j>>2];rc(13,34296,v);Th(c[l>>2]|0,c[j>>2]|0,0)|0}if((c[s>>2]|0)==0){c[s>>2]=oB(c[l>>2]|0,c[j>>2]|0,k,16406,0)|0}if((c[s>>2]|0)!=0){Wb(c[h>>2]|0,c[j>>2]|0);c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[r>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((Jk(c[r>>2]|0)|0)!=0?(c[p>>2]=$B(c[r>>2]|0)|0,(c[p>>2]|0)!=0):0){if((c[o>>2]|0)==0?(aC(c[r>>2]|0)|0)==0:0){c[o>>2]=1}E=c[k>>2]|0;b=c[p>>2]|0;F=(Mb(c[p>>2]|0)|0)+1|0;a=q;c[s>>2]=fd(E,b,F,c[a>>2]|0,c[a+4>>2]|0)|0;a=(Mb(c[p>>2]|0)|0)+1|0;F=q;a=bE(c[F>>2]|0,c[F+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;F=q;c[F>>2]=a;c[F+4>>2]=D;if((c[s>>2]|0)!=0){e=52;break}}c[m>>2]=(c[m>>2]|0)+1}if((e|0)==52){UA(c[k>>2]|0)|0;Th(c[l>>2]|0,c[j>>2]|0,0)|0;Wb(c[h>>2]|0,c[j>>2]|0);c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}if(((c[o>>2]|0)!=0?0==((ui(c[k>>2]|0)|0)&1024|0):0)?(F=di(c[k>>2]|0,2)|0,c[s>>2]=F,0!=(F|0)):0){UA(c[k>>2]|0)|0;Th(c[l>>2]|0,c[j>>2]|0,0)|0;Wb(c[h>>2]|0,c[j>>2]|0);c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}c[m>>2]=0;while(1){if((c[s>>2]|0)!=0){break}if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[n>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((c[n>>2]|0)!=0){c[s>>2]=kd(c[n>>2]|0,c[j>>2]|0)|0}c[m>>2]=(c[m>>2]|0)+1}UA(c[k>>2]|0)|0;if((c[s>>2]|0)!=0){Wb(c[h>>2]|0,c[j>>2]|0);c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}c[s>>2]=Th(c[l>>2]|0,c[j>>2]|0,1)|0;Wb(c[h>>2]|0,c[j>>2]|0);c[j>>2]=0;if((c[s>>2]|0)!=0){c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}dh();c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[x>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((c[x>>2]|0)!=0){jd(c[x>>2]|0,1)|0}c[m>>2]=(c[m>>2]|0)+1}eh();_B(c[h>>2]|0)|0}else{c[m>>2]=0;while(1){if((c[s>>2]|0)!=0){break}if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[A>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((c[A>>2]|0)!=0){c[s>>2]=kd(c[A>>2]|0,0)|0}c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[s>>2]|0)!=0){break}if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[z>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((c[z>>2]|0)!=0){c[s>>2]=jd(c[z>>2]|0,0)|0}c[m>>2]=(c[m>>2]|0)+1}if((c[s>>2]|0)==0){_B(c[h>>2]|0)|0}}c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}function ZB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;d=e+24|0;k=e+20|0;l=e+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[d>>2]=a;c[k>>2]=b;c[f>>2]=0;c[g>>2]=c[(c[d>>2]|0)+320>>2];c[(c[d>>2]|0)+320>>2]=0;c[l>>2]=0;while(1){if((c[f>>2]|0)!=0){h=8;break}if((c[l>>2]|0)>=(c[(c[d>>2]|0)+296>>2]|0)){h=8;break}c[j>>2]=c[(c[(c[g>>2]|0)+(c[l>>2]<<2)>>2]|0)+8>>2];if((c[j>>2]|0)!=0?(a=c[(c[c[j>>2]>>2]|0)+60>>2]|0,c[h>>2]=a,(a|0)!=0):0){c[f>>2]=ub[c[h>>2]&31](c[j>>2]|0)|0;nz(c[k>>2]|0,c[j>>2]|0)}c[l>>2]=(c[l>>2]|0)+1}if((h|0)==8){c[(c[d>>2]|0)+320>>2]=c[g>>2];i=e;return c[f>>2]|0}return 0}function _B(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Lk(c[d>>2]|0,64);i=b;return 0}function $B(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=cC(c[c[(c[d>>2]|0)+4>>2]>>2]|0)|0;i=b;return a|0}function aC(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;e=d+4|0;b=d;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+4>>2];Mc(c[f>>2]|0);c[b>>2]=bC(c[c[e>>2]>>2]|0)|0;i=d;return c[b>>2]|0}function bC(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+7>>0]|0|0}function cC(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+172>>2]|0}function dC(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+12|0;f=e+8|0;b=e+4|0;g=e;c[d>>2]=a;c[b>>2]=(c[d>>2]|0)+72;c[g>>2]=(c[b>>2]|0)+((c[(c[d>>2]|0)+60>>2]|0)*40|0);c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[d>>2]|0)+64>>2]|0)){break}gz(c[c[d>>2]>>2]|0,c[(c[g>>2]|0)+(c[f>>2]<<2)>>2]|0);c[f>>2]=(c[f>>2]|0)+1}Qt(c[b>>2]|0,c[(c[d>>2]|0)+60>>2]|0);Wb(c[c[c[d>>2]>>2]>>2]|0,c[d>>2]|0);i=e;return}function eC(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[34456+(c[b>>2]<<2)>>2]|0}function fC(d,f,g){d=d|0;f=f|0;g=g|0;var j=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;n=i;i=i+64|0;w=n;x=n+60|0;l=n+56|0;m=n+52|0;j=n+48|0;u=n+44|0;s=n+40|0;o=n+36|0;q=n+32|0;t=n+28|0;r=n+24|0;A=n+20|0;y=n+16|0;v=n+12|0;z=n+8|0;c[x>>2]=d;c[l>>2]=f;c[m>>2]=g;c[j>>2]=c[l>>2];do{switch(a[(c[x>>2]|0)+1>>0]|0){case-5:{c[y>>2]=c[(c[x>>2]|0)+16>>2];f=c[m>>2]|0;d=c[l>>2]|0;A=b[c[y>>2]>>1]|0;c[w>>2]=c[(c[y>>2]|0)+24>>2];c[w+4>>2]=A;qc(f,d,34392,w)|0;d=c[j>>2]|0;i=n;return d|0};case-15:{qc(c[m>>2]|0,c[l>>2]|0,34432,w)|0;d=c[j>>2]|0;i=n;return d|0};case-4:{c[A>>2]=c[(c[x>>2]|0)+16>>2];f=c[m>>2]|0;d=c[l>>2]|0;c[w>>2]=c[c[A>>2]>>2];qc(f,d,34384,w)|0;d=c[j>>2]|0;i=n;return d|0};case-12:{f=c[m>>2]|0;d=c[l>>2]|0;h[k>>3]=+h[c[(c[x>>2]|0)+16>>2]>>3];c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];qc(f,d,9352,w)|0;d=c[j>>2]|0;i=n;return d|0};case-13:{f=c[m>>2]|0;d=c[l>>2]|0;g=c[(c[x>>2]|0)+16>>2]|0;z=c[g+4>>2]|0;A=w;c[A>>2]=c[g>>2];c[A+4>>2]=z;qc(f,d,9360,w)|0;d=c[j>>2]|0;i=n;return d|0};case-8:{c[v>>2]=c[(c[x>>2]|0)+16>>2];o=c[v>>2]|0;if((b[(c[v>>2]|0)+28>>1]&2|0)!=0){c[j>>2]=c[o+4>>2];d=c[j>>2]|0;i=n;return d|0}if((b[o+28>>1]&4|0)!=0){f=c[m>>2]|0;d=c[l>>2]|0;g=(c[v>>2]|0)+16|0;z=c[g+4>>2]|0;A=w;c[A>>2]=c[g>>2];c[A+4>>2]=z;qc(f,d,9360,w)|0;d=c[j>>2]|0;i=n;return d|0}if((b[(c[v>>2]|0)+28>>1]&8|0)!=0){f=c[m>>2]|0;d=c[l>>2]|0;h[k>>3]=+h[(c[v>>2]|0)+8>>3];c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];qc(f,d,9352,w)|0;d=c[j>>2]|0;i=n;return d|0}if((b[(c[v>>2]|0)+28>>1]&1|0)!=0){qc(c[m>>2]|0,c[l>>2]|0,9744,w)|0;d=c[j>>2]|0;i=n;return d|0}else{c[j>>2]=34408;d=c[j>>2]|0;i=n;return d|0}};case-14:{f=c[m>>2]|0;d=c[l>>2]|0;c[w>>2]=c[(c[x>>2]|0)+16>>2];qc(f,d,34400,w)|0;d=c[j>>2]|0;i=n;return d|0};case-19:{a[c[l>>2]>>0]=0;d=c[j>>2]|0;i=n;return d|0};case-6:{c[o>>2]=c[(c[x>>2]|0)+16>>2];f=c[m>>2]|0;d=c[l>>2]|0;c[w>>2]=e[(c[o>>2]|0)+6>>1]|0;qc(f,d,34352,w)|0;c[u>>2]=Mb(c[l>>2]|0)|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(e[(c[o>>2]|0)+6>>1]|0)){break}c[q>>2]=c[(c[o>>2]|0)+20+(c[s>>2]<<2)>>2];if((c[q>>2]|0)!=0){v=c[c[q>>2]>>2]|0}else{v=34360}c[t>>2]=v;c[r>>2]=Mb(c[t>>2]|0)|0;if((c[r>>2]|0)==6?(VD(c[t>>2]|0,3320,6)|0)==0:0){c[t>>2]=34368;c[r>>2]=1}v=c[u>>2]|0;if(((c[u>>2]|0)+(c[r>>2]|0)|0)>((c[m>>2]|0)-6|0)){p=10;break}c[u>>2]=v+1;a[(c[l>>2]|0)+v>>0]=44;if((a[(c[(c[o>>2]|0)+16>>2]|0)+(c[s>>2]|0)>>0]|0)!=0){d=c[u>>2]|0;c[u>>2]=d+1;a[(c[l>>2]|0)+d>>0]=45}dE((c[l>>2]|0)+(c[u>>2]|0)|0,c[t>>2]|0,(c[r>>2]|0)+1|0)|0;c[u>>2]=(c[u>>2]|0)+(c[r>>2]|0);c[s>>2]=(c[s>>2]|0)+1}if((p|0)==10){d=(c[l>>2]|0)+v|0;a[d+0>>0]=a[34376>>0]|0;a[d+1>>0]=a[34377>>0]|0;a[d+2>>0]=a[34378>>0]|0;a[d+3>>0]=a[34379>>0]|0}d=c[u>>2]|0;c[u>>2]=d+1;a[(c[l>>2]|0)+d>>0]=41;a[(c[l>>2]|0)+(c[u>>2]|0)>>0]=0;d=c[j>>2]|0;i=n;return d|0};case-10:{c[z>>2]=c[(c[(c[x>>2]|0)+16>>2]|0)+8>>2];f=c[m>>2]|0;d=c[l>>2]|0;A=c[c[z>>2]>>2]|0;c[w>>2]=c[z>>2];c[w+4>>2]=A;qc(f,d,34416,w)|0;d=c[j>>2]|0;i=n;return d|0};case-18:{qc(c[m>>2]|0,c[l>>2]|0,34448,w)|0;d=c[j>>2]|0;i=n;return d|0};default:{c[j>>2]=c[(c[x>>2]|0)+16>>2];if((c[j>>2]|0)!=0){d=c[j>>2]|0;i=n;return d|0}c[j>>2]=c[l>>2];a[c[l>>2]>>0]=0;d=c[j>>2]|0;i=n;return d|0}}}while(0);return 0}function gC(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+4|0;g=h;k=h+10|0;l=h+9|0;m=h+8|0;c[j>>2]=f;c[g>>2]=0;a[k>>0]=0;if((c[(c[j>>2]|0)+24>>2]|0)>1){a[l>>0]=a[c[(c[j>>2]|0)+4>>2]>>0]|0;a[m>>0]=a[(c[(c[j>>2]|0)+4>>2]|0)+1>>0]|0;if((d[l>>0]|0)==254?(d[m>>0]|0)==255:0){a[k>>0]=3}if((d[l>>0]|0)==255?(d[m>>0]|0)==254:0){a[k>>0]=2}}if((a[k>>0]|0)==0){m=c[g>>2]|0;i=h;return m|0}c[g>>2]=vk(c[j>>2]|0)|0;if((c[g>>2]|0)!=0){m=c[g>>2]|0;i=h;return m|0}m=(c[j>>2]|0)+24|0;c[m>>2]=(c[m>>2]|0)-2;eE(c[(c[j>>2]|0)+4>>2]|0,(c[(c[j>>2]|0)+4>>2]|0)+2|0,c[(c[j>>2]|0)+24>>2]|0)|0;a[(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+24>>2]|0)>>0]=0;a[(c[(c[j>>2]|0)+4>>2]|0)+((c[(c[j>>2]|0)+24>>2]|0)+1)>>0]=0;m=(c[j>>2]|0)+28|0;b[m>>1]=e[m>>1]|512;a[(c[j>>2]|0)+30>>0]=a[k>>0]|0;m=c[g>>2]|0;i=h;return m|0}function hC(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[c[d>>2]>>2];Wb(c[e>>2]|0,c[(c[d>>2]|0)+44>>2]|0);c[(c[d>>2]|0)+44>>2]=0;c[(c[d>>2]|0)+20>>2]=0;i=b;return}function iC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;h=f+12|0;g=f+8|0;k=f+4|0;j=f;c[h>>2]=b;c[g>>2]=d;c[k>>2]=e;if((c[g>>2]|0)==0){d=c[h>>2]|0;b=c[g>>2]|0;Wb(d,b);i=f;return}c[j>>2]=c[g>>2];while(1){if(!((c[j>>2]|0)>>>0<((c[g>>2]|0)+((c[k>>2]|0)*20|0)|0)>>>0)){break}qy(c[h>>2]|0,a[(c[j>>2]|0)+1>>0]|0,c[(c[j>>2]|0)+16>>2]|0);c[j>>2]=(c[j>>2]|0)+20}d=c[h>>2]|0;b=c[g>>2]|0;Wb(d,b);i=f;return}function jC(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Tg(c[(c[d>>2]|0)+60>>2]|0);c[(c[d>>2]|0)+60>>2]=0;i=b;return}function kC(b){b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+4>>2];c[h>>2]=c[c[f>>2]>>2];a[(c[g>>2]|0)+19>>0]=0;if((d[(c[f>>2]|0)+8>>0]|0|0)>0?(c[(c[h>>2]|0)+144>>2]|0)>1:0){lC(c[f>>2]|0);a[(c[f>>2]|0)+8>>0]=1;i=e;return}if((d[(c[f>>2]|0)+8>>0]|0|0)!=0?(mC(c[f>>2]|0),h=(c[g>>2]|0)+40|0,c[h>>2]=(c[h>>2]|0)+ -1,0==(c[(c[g>>2]|0)+40>>2]|0)):0){a[(c[g>>2]|0)+20>>0]=0}a[(c[f>>2]|0)+8>>0]=0;Ik(c[g>>2]|0);i=e;return}function lC(d){d=d|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+8|0;h=f+4|0;g=f;c[j>>2]=d;c[h>>2]=c[(c[j>>2]|0)+4>>2];if((c[(c[h>>2]|0)+76>>2]|0)!=(c[j>>2]|0)){i=f;return}c[(c[h>>2]|0)+76>>2]=0;j=(c[h>>2]|0)+22|0;b[j>>1]=(e[j>>1]|0)&-97;c[g>>2]=c[(c[h>>2]|0)+72>>2];while(1){if((c[g>>2]|0)==0){break}a[(c[g>>2]|0)+8>>0]=1;c[g>>2]=c[(c[g>>2]|0)+12>>2]}i=f;return}function mC(a){a=a|0;var d=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;h=f+4|0;j=f;c[g>>2]=a;c[d>>2]=c[(c[g>>2]|0)+4>>2];c[h>>2]=(c[d>>2]|0)+72;while(1){if((c[c[h>>2]>>2]|0)==0){break}c[j>>2]=c[c[h>>2]>>2];a=(c[j>>2]|0)+12|0;if((c[c[j>>2]>>2]|0)!=(c[g>>2]|0)){c[h>>2]=a;continue}c[c[h>>2]>>2]=c[a>>2];if((c[(c[j>>2]|0)+4>>2]|0)==1){continue}gc(c[j>>2]|0)}h=c[d>>2]|0;if((c[(c[d>>2]|0)+76>>2]|0)==(c[g>>2]|0)){c[h+76>>2]=0;a=(c[d>>2]|0)+22|0;b[a>>1]=(e[a>>1]|0)&-97;i=f;return}if((c[h+40>>2]|0)!=2){i=f;return}a=(c[d>>2]|0)+22|0;b[a>>1]=(e[a>>1]|0)&-65;i=f;return}function nC(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;d=e+28|0;h=e+24|0;f=e+20|0;g=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[h>>2]=b;c[f>>2]=0;c[g>>2]=c[c[h>>2]>>2];Zz(c[h>>2]|0);do{if((a[(c[h>>2]|0)+18>>0]|0)==0){c[m>>2]=gw(c[h>>2]|0)|0;b=vw(c[h>>2]|0,c[m>>2]|0)|0;if((b|0)!=(c[m>>2]|0)?(c[m>>2]|0)!=((((c[346]|0)>>>0)/((c[(c[h>>2]|0)+32>>2]|0)>>>0)|0)+1|0):0){c[k>>2]=Ah((c[(c[(c[h>>2]|0)+12>>2]|0)+56>>2]|0)+36|0)|0;c[j>>2]=Yz(c[h>>2]|0,c[m>>2]|0,c[k>>2]|0)|0;if((c[j>>2]|0)>>>0>(c[m>>2]|0)>>>0){c[d>>2]=ej(54371)|0;m=c[d>>2]|0;i=e;return m|0}if((c[j>>2]|0)>>>0<(c[m>>2]|0)>>>0){c[f>>2]=ky(c[h>>2]|0,0,0)|0}c[l>>2]=c[m>>2];while(1){if(!((c[l>>2]|0)>>>0>(c[j>>2]|0)>>>0)){break}if((c[f>>2]|0)!=0){break}c[f>>2]=_z(c[h>>2]|0,c[j>>2]|0,c[l>>2]|0,1)|0;c[l>>2]=(c[l>>2]|0)+ -1}if((c[f>>2]|0)==101|(c[f>>2]|0)==0?(c[k>>2]|0)>>>0>0:0){c[f>>2]=dd(c[(c[(c[h>>2]|0)+12>>2]|0)+68>>2]|0)|0;Yj((c[(c[(c[h>>2]|0)+12>>2]|0)+56>>2]|0)+32|0,0);Yj((c[(c[(c[h>>2]|0)+12>>2]|0)+56>>2]|0)+36|0,0);Yj((c[(c[(c[h>>2]|0)+12>>2]|0)+56>>2]|0)+28|0,c[j>>2]|0);a[(c[h>>2]|0)+19>>0]=1;c[(c[h>>2]|0)+44>>2]=c[j>>2]}if((c[f>>2]|0)==0){break}Nh(c[g>>2]|0)|0;break}c[d>>2]=ej(54366)|0;m=c[d>>2]|0;i=e;return m|0}}while(0);c[d>>2]=c[f>>2];m=c[d>>2]|0;i=e;return m|0}function oC(b){b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[g>>2]=b;c[h>>2]=0;b=c[g>>2]|0;if((c[(c[g>>2]|0)+40>>2]|0)!=0){c[f>>2]=c[b+40>>2];b=c[f>>2]|0;i=e;return b|0}if(((d[b+16>>0]|0|0)==2?(d[(c[g>>2]|0)+4>>0]|0|0)!=0:0)?(d[(c[g>>2]|0)+5>>0]|0|0)==1:0){a[(c[g>>2]|0)+16>>0]=1;c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}c[h>>2]=Oh(c[g>>2]|0,d[(c[g>>2]|0)+19>>0]|0,1)|0;c[f>>2]=Ih(c[g>>2]|0,c[h>>2]|0)|0;b=c[f>>2]|0;i=e;return b|0}function pC(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+12|0;f=e+4|0;h=e;c[g>>2]=b;c[e+8>>2]=d;c[f>>2]=0;if((a[(c[g>>2]|0)+18>>0]|0)!=0){b=c[f>>2]|0;i=e;return b|0}if(!((c[(c[g>>2]|0)+24>>2]|0)>>>0>0)){b=c[f>>2]|0;i=e;return b|0}c[f>>2]=Uc(c[g>>2]|0,1,h,0)|0;if((c[f>>2]|0)==0){c[f>>2]=dd(c[h>>2]|0)|0}if((c[f>>2]|0)==0){Xj(c[h>>2]|0);a[(c[g>>2]|0)+18>>0]=1}Xc(c[h>>2]|0);b=c[f>>2]|0;i=e;return b|0}function qC(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+48|0;f=l+36|0;g=l+32|0;o=l+28|0;j=l+24|0;k=l+20|0;m=l+8|0;h=l;n=l+16|0;c[g>>2]=b;c[o>>2]=e;c[n>>2]=0;if(((c[o>>2]|0)!=0?(d[(c[g>>2]|0)+5>>0]|0)!=4:0)?(c[c[(c[g>>2]|0)+64>>2]>>2]|0)!=0:0){a[(c[g>>2]|0)+19>>0]=1;c[k>>2]=0;while(1){if((a[(c[o>>2]|0)+(c[k>>2]|0)>>0]|0)==0){break}c[n>>2]=(c[n>>2]|0)+(a[(c[o>>2]|0)+(c[k>>2]|0)>>0]|0);c[k>>2]=(c[k>>2]|0)+1}if((a[(c[g>>2]|0)+8>>0]|0)!=0){e=Hi(c[g>>2]|0)|0;b=(c[g>>2]|0)+72|0;c[b>>2]=e;c[b+4>>2]=D}p=(c[g>>2]|0)+72|0;e=c[p+4>>2]|0;b=m;c[b>>2]=c[p>>2];c[b+4>>2]=e;b=m;b=jk(c[(c[g>>2]|0)+64>>2]|0,c[b>>2]|0,c[b+4>>2]|0,((c[346]|0)/(c[(c[g>>2]|0)+152>>2]|0)|0)+1|0)|0;c[j>>2]=b;if((((0==(b|0)?(e=c[(c[g>>2]|0)+64>>2]|0,o=c[o>>2]|0,b=c[k>>2]|0,p=m,p=bE(c[p>>2]|0,c[p+4>>2]|0,4,0)|0,p=fd(e,o,b,p,D)|0,c[j>>2]=p,0==(p|0)):0)?(b=c[(c[g>>2]|0)+64>>2]|0,o=m,o=bE(c[o>>2]|0,c[o+4>>2]|0,4,0)|0,p=c[k>>2]|0,p=bE(o|0,D|0,p|0,((p|0)<0)<<31>>31|0)|0,p=jk(b,p,D,c[k>>2]|0)|0,c[j>>2]=p,0==(p|0)):0)?(b=c[(c[g>>2]|0)+64>>2]|0,o=m,o=bE(c[o>>2]|0,c[o+4>>2]|0,4,0)|0,p=c[k>>2]|0,p=bE(o|0,D|0,p|0,((p|0)<0)<<31>>31|0)|0,p=bE(p|0,D|0,4,0)|0,p=jk(b,p,D,c[n>>2]|0)|0,c[j>>2]=p,0==(p|0)):0)?(b=c[(c[g>>2]|0)+64>>2]|0,o=m,o=bE(c[o>>2]|0,c[o+4>>2]|0,4,0)|0,p=c[k>>2]|0,p=bE(o|0,D|0,p|0,((p|0)<0)<<31>>31|0)|0,p=bE(p|0,D|0,8,0)|0,p=fd(b,4336,8,p,D)|0,c[j>>2]=p,0==(p|0)):0){b=(c[k>>2]|0)+20|0;p=(c[g>>2]|0)+72|0;o=p;b=bE(c[o>>2]|0,c[o+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[p>>2]=b;c[p+4>>2]=D;p=Ag(c[(c[g>>2]|0)+64>>2]|0,h)|0;c[j>>2]=p;if(0==(p|0)?(b=h,n=c[b+4>>2]|0,p=(c[g>>2]|0)+72|0,o=c[p+4>>2]|0,(n|0)>(o|0)|((n|0)==(o|0)?(c[b>>2]|0)>>>0>(c[p>>2]|0)>>>0:0)):0){p=(c[g>>2]|0)+72|0;c[j>>2]=Rh(c[(c[g>>2]|0)+64>>2]|0,c[p>>2]|0,c[p+4>>2]|0)|0}c[f>>2]=c[j>>2];p=c[f>>2]|0;i=l;return p|0}c[f>>2]=c[j>>2];p=c[f>>2]|0;i=l;return p|0}c[f>>2]=0;p=c[f>>2]|0;i=l;return p|0}function rC(a){a=a|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+48|0;h=j+32|0;k=j+28|0;f=j+24|0;l=j+20|0;p=j+16|0;o=j+12|0;n=j+8|0;m=j;c[k>>2]=a;c[f>>2]=c[(c[k>>2]|0)+16>>2];c[l>>2]=0;if((d[(c[f>>2]|0)+16>>0]|0|0)==2?(c[l>>2]=sC(c[f>>2]|0)|0,(c[l>>2]|0)!=0):0){c[h>>2]=c[l>>2];a=c[h>>2]|0;i=j;return a|0}Di(c[k>>2]|0);c[p>>2]=tC(c[f>>2]|0,c[k>>2]|0)|0;if((c[p>>2]|0)!=0){if((c[(c[f>>2]|0)+96>>2]|0)!=0?(Rj(c[k>>2]|0)|0)!=0:0){g=7}}else{g=7}if((g|0)==7){do{if((c[p>>2]|0)==0?(Vh(c[f>>2]|0)|0)==0:0){if((c[(c[k>>2]|0)+20>>2]|0)>>>0<=(c[(c[f>>2]|0)+28>>2]|0)>>>0?(c[c[(c[f>>2]|0)+64>>2]>>2]|0)!=0:0){g=(c[f>>2]|0)+72|0;p=c[g+4>>2]|0;a=m;c[a>>2]=c[g>>2];c[a+4>>2]=p;c[n>>2]=c[(c[k>>2]|0)+4>>2];c[o>>2]=Ai(c[f>>2]|0,c[n>>2]|0)|0;a=(c[k>>2]|0)+24|0;b[a>>1]=e[a>>1]|0|4;a=m;c[l>>2]=jk(c[(c[f>>2]|0)+64>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[(c[k>>2]|0)+20>>2]|0)|0;if((c[l>>2]|0)!=0){c[h>>2]=c[l>>2];a=c[h>>2]|0;i=j;return a|0}g=c[(c[f>>2]|0)+64>>2]|0;n=c[n>>2]|0;p=c[(c[f>>2]|0)+152>>2]|0;a=m;a=bE(c[a>>2]|0,c[a+4>>2]|0,4,0)|0;c[l>>2]=fd(g,n,p,a,D)|0;if((c[l>>2]|0)!=0){c[h>>2]=c[l>>2];a=c[h>>2]|0;i=j;return a|0}p=c[(c[f>>2]|0)+64>>2]|0;n=m;a=c[(c[f>>2]|0)+152>>2]|0;a=bE(c[n>>2]|0,c[n+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;a=bE(a|0,D|0,4,0)|0;c[l>>2]=jk(p,a,D,c[o>>2]|0)|0;if((c[l>>2]|0)!=0){c[h>>2]=c[l>>2];a=c[h>>2]|0;i=j;return a|0}p=8+(c[(c[f>>2]|0)+152>>2]|0)|0;a=(c[f>>2]|0)+72|0;o=a;p=bE(c[o>>2]|0,c[o+4>>2]|0,p|0,((p|0)<0)<<31>>31|0)|0;c[a>>2]=p;c[a+4>>2]=D;a=(c[f>>2]|0)+44|0;c[a>>2]=(c[a>>2]|0)+1;c[l>>2]=Pg(c[(c[f>>2]|0)+56>>2]|0,c[(c[k>>2]|0)+20>>2]|0)|0;a=kk(c[f>>2]|0,c[(c[k>>2]|0)+20>>2]|0)|0;c[l>>2]=c[l>>2]|a;if((c[l>>2]|0)==0){break}c[h>>2]=c[l>>2];a=c[h>>2]|0;i=j;return a|0}if((d[(c[f>>2]|0)+16>>0]|0|0)!=4){a=(c[k>>2]|0)+24|0;b[a>>1]=e[a>>1]|0|4}}}while(0);if((c[(c[f>>2]|0)+96>>2]|0)>0?(Rj(c[k>>2]|0)|0)!=0:0){c[l>>2]=Sj(c[k>>2]|0)|0}}if((c[(c[f>>2]|0)+24>>2]|0)>>>0<(c[(c[k>>2]|0)+20>>2]|0)>>>0){c[(c[f>>2]|0)+24>>2]=c[(c[k>>2]|0)+20>>2]}c[h>>2]=c[l>>2];a=c[h>>2]|0;i=j;return a|0}function sC(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;h=e+12|0;g=e+8|0;j=e+4|0;k=e;c[h>>2]=b;c[g>>2]=0;c[j>>2]=c[c[h>>2]>>2];b=c[h>>2]|0;if((c[(c[h>>2]|0)+40>>2]|0)!=0){c[f>>2]=c[b+40>>2];b=c[f>>2]|0;i=e;return b|0}if((Vh(b)|0)==0?(d[(c[h>>2]|0)+5>>0]|0|0)!=2:0){b=Og(c[(c[h>>2]|0)+24>>2]|0)|0;c[(c[h>>2]|0)+56>>2]=b;if((c[(c[h>>2]|0)+56>>2]|0)==0){c[f>>2]=7;b=c[f>>2]|0;i=e;return b|0}do{if((c[c[(c[h>>2]|0)+64>>2]>>2]|0)==0){b=c[h>>2]|0;if((d[(c[h>>2]|0)+5>>0]|0|0)==4){ki(c[b+64>>2]|0);break}c[k>>2]=6|((d[b+12>>0]|0|0)!=0?4104:2048);c[g>>2]=uC(c[h>>2]|0)|0;if((c[g>>2]|0)==0){c[g>>2]=xi(c[j>>2]|0,c[(c[h>>2]|0)+172>>2]|0,c[(c[h>>2]|0)+64>>2]|0,c[k>>2]|0,0)|0}}}while(0);if((c[g>>2]|0)==0){c[(c[h>>2]|0)+44>>2]=0;b=(c[h>>2]|0)+72|0;c[b>>2]=0;c[b+4>>2]=0;a[(c[h>>2]|0)+19>>0]=0;b=(c[h>>2]|0)+80|0;c[b>>2]=0;c[b+4>>2]=0;c[g>>2]=_j(c[h>>2]|0)|0}}j=c[h>>2]|0;if((c[g>>2]|0)!=0){Tg(c[j+56>>2]|0);c[(c[h>>2]|0)+56>>2]=0}else{a[j+16>>0]=3}c[f>>2]=c[g>>2];b=c[f>>2]|0;i=e;return b|0}function tC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=Rg(c[(c[f>>2]|0)+56>>2]|0,c[(c[e>>2]|0)+20>>2]|0)|0;i=d;return a|0}function uC(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=b;c[g>>2]=0;if((a[(c[f>>2]|0)+12>>0]|0)!=0){c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}if((c[(c[f>>2]|0)+24>>2]|0)==0){c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}c[h>>2]=cg(c[(c[f>>2]|0)+60>>2]|0,20,g)|0;if((c[h>>2]|0)!=12){if((c[h>>2]|0)==0?(c[g>>2]|0)!=0:0){c[h>>2]=1032}}else{c[h>>2]=0}c[e>>2]=c[h>>2];h=c[e>>2]|0;i=d;return h|0}function vC(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=i;i=i+32|0;h=g+8|0;c[g+16>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;c[g+12>>2]=e;c[h>>2]=f;c[c[h>>2]>>2]=0;i=g;return 0}function wC(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;m=h+20|0;l=h+16|0;n=h+12|0;k=h+8|0;o=h+4|0;j=h;c[l>>2]=a;c[n>>2]=d;c[k>>2]=f;c[o>>2]=g;g=c[l>>2]|0;do{if((c[(c[l>>2]|0)+136>>2]|0)!=0){a=c[g+136>>2]|0;c[j>>2]=a;c[c[o>>2]>>2]=a;c[(c[l>>2]|0)+136>>2]=c[(c[j>>2]|0)+12>>2];c[(c[j>>2]|0)+12>>2]=0;_D(c[(c[j>>2]|0)+8>>2]|0,0,e[(c[l>>2]|0)+140>>1]|0|0)|0}else{a=Kc(40+(e[g+140>>1]|0)|0)|0;c[j>>2]=a;c[c[o>>2]>>2]=a;if((c[j>>2]|0)!=0){c[(c[j>>2]|0)+8>>2]=(c[j>>2]|0)+40;b[(c[j>>2]|0)+24>>1]=64;b[(c[j>>2]|0)+26>>1]=1;c[(c[j>>2]|0)+16>>2]=c[l>>2];break}d=c[(c[l>>2]|0)+60>>2]|0;a=c[(c[l>>2]|0)+152>>2]|0;a=lE((c[n>>2]|0)-1|0,0,a|0,((a|0)<0)<<31>>31|0)|0;bj(d,a,D,c[k>>2]|0)|0;c[m>>2]=7;a=c[m>>2]|0;i=h;return a|0}}while(0);c[(c[j>>2]|0)+20>>2]=c[n>>2];c[(c[j>>2]|0)+4>>2]=c[k>>2];a=(c[l>>2]|0)+120|0;c[a>>2]=(c[a>>2]|0)+1;c[m>>2]=0;a=c[m>>2]|0;i=h;return a|0}function xC(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+48|0;g=k+40|0;j=k+36|0;q=k+32|0;h=k+28|0;l=k+24|0;r=k+20|0;n=k+12|0;p=k+8|0;m=k+4|0;o=k;c[j>>2]=f;c[r>>2]=0;c[q>>2]=pA(c[c[j>>2]>>2]|0)|0;if((c[q>>2]|0)!=0){c[g>>2]=c[q>>2];r=c[g>>2]|0;i=k;return r|0}c[q>>2]=hw(c[j>>2]|0,1,h,0)|0;if((c[q>>2]|0)!=0){c[g>>2]=c[q>>2];r=c[g>>2]|0;i=k;return r|0}f=Ah((c[(c[h>>2]|0)+56>>2]|0)+28|0)|0;c[k+16>>2]=f;c[l>>2]=f;cd(c[c[j>>2]>>2]|0,r);if(!((c[l>>2]|0)!=0?(VD((c[(c[h>>2]|0)+56>>2]|0)+24|0,(c[(c[h>>2]|0)+56>>2]|0)+92|0,4)|0)==0:0)){c[l>>2]=c[r>>2]}a:do{if((c[l>>2]|0)>0){c[m>>2]=c[(c[h>>2]|0)+56>>2];c[q>>2]=26;b:do{if((VD(c[m>>2]|0,34264,16)|0)==0){if((d[(c[m>>2]|0)+18>>0]|0|0)>2){f=(c[j>>2]|0)+22|0;b[f>>1]=e[f>>1]|0|1}if((d[(c[m>>2]|0)+19>>0]|0|0)<=2){do{if((d[(c[m>>2]|0)+19>>0]|0|0)==2?(b[(c[j>>2]|0)+22>>1]&16|0)==0:0){c[o>>2]=0;c[q>>2]=wA(c[c[j>>2]>>2]|0,o)|0;if((c[q>>2]|0)!=0){break b}if((c[o>>2]|0)!=0){c[q>>2]=26;break}Hk(c[h>>2]|0);c[g>>2]=0;r=c[g>>2]|0;i=k;return r|0}}while(0);if((VD((c[m>>2]|0)+21|0,36976,3)|0)==0?(c[n>>2]=(d[(c[m>>2]|0)+16>>0]|0)<<8|(d[(c[m>>2]|0)+17>>0]|0)<<16,!(((c[n>>2]|0)>>>0>65536?1:((c[n>>2]|0)-1&c[n>>2]|0)!=0)|(c[n>>2]|0)>>>0<=256)):0){c[p>>2]=(c[n>>2]|0)-(d[(c[m>>2]|0)+20>>0]|0);if((c[n>>2]|0)!=(c[(c[j>>2]|0)+32>>2]|0)){Hk(c[h>>2]|0);c[(c[j>>2]|0)+36>>2]=c[p>>2];c[(c[j>>2]|0)+32>>2]=c[n>>2];xg(c[j>>2]|0);c[q>>2]=yg(c[c[j>>2]>>2]|0,(c[j>>2]|0)+32|0,(c[n>>2]|0)-(c[p>>2]|0)|0)|0;c[g>>2]=c[q>>2];r=c[g>>2]|0;i=k;return r|0}if((c[(c[(c[j>>2]|0)+4>>2]|0)+24>>2]&65536|0)==0?(c[l>>2]|0)>(c[r>>2]|0):0){c[q>>2]=ej(53650)|0;break}if(!((c[p>>2]|0)>>>0<480)){c[(c[j>>2]|0)+32>>2]=c[n>>2];c[(c[j>>2]|0)+36>>2]=c[p>>2];r=(Ah((c[m>>2]|0)+52|0)|0)!=0;a[(c[j>>2]|0)+17>>0]=r?1:0;r=(Ah((c[m>>2]|0)+64|0)|0)!=0;a[(c[j>>2]|0)+18>>0]=r?1:0;break a}}}}}while(0);Hk(c[h>>2]|0);c[(c[j>>2]|0)+12>>2]=0;c[g>>2]=c[q>>2];r=c[g>>2]|0;i=k;return r|0}}while(0);b[(c[j>>2]|0)+24>>1]=(((c[(c[j>>2]|0)+36>>2]|0)-12<<6>>>0)/255|0)-23;b[(c[j>>2]|0)+26>>1]=(((c[(c[j>>2]|0)+36>>2]|0)-12<<5>>>0)/255|0)-23;b[(c[j>>2]|0)+28>>1]=(c[(c[j>>2]|0)+36>>2]|0)-35;b[(c[j>>2]|0)+30>>1]=(((c[(c[j>>2]|0)+36>>2]|0)-12<<5>>>0)/255|0)-23;m=c[j>>2]|0;if((e[(c[j>>2]|0)+24>>1]|0|0)>127){a[m+21>>0]=127}else{a[(c[j>>2]|0)+21>>0]=b[m+24>>1]}c[(c[j>>2]|0)+12>>2]=c[h>>2];c[(c[j>>2]|0)+44>>2]=c[l>>2];c[g>>2]=0;r=c[g>>2]|0;i=k;return r|0}function yC(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;l=g+8|0;m=g+4|0;k=g;c[j>>2]=b;c[l>>2]=e;c[m>>2]=f;c[k>>2]=0;if((c[(c[j>>2]|0)+40>>2]|0)!=0){c[h>>2]=c[(c[j>>2]|0)+40>>2];b=c[h>>2]|0;i=g;return b|0}a[(c[j>>2]|0)+21>>0]=c[m>>2];if((d[(c[j>>2]|0)+16>>0]|0|0)==1){b=(Vh(c[j>>2]|0)|0)!=0;f=c[j>>2]|0;if(!b){c[k>>2]=bk(f,2)|0;if((c[k>>2]|0)==0?(c[l>>2]|0)!=0:0){c[k>>2]=ak(c[j>>2]|0,4)|0}}else{do{if((d[f+4>>0]|0|0)!=0?(Yh(c[(c[j>>2]|0)+208>>2]|0,-1)|0)!=0:0){c[k>>2]=bk(c[j>>2]|0,4)|0;if((c[k>>2]|0)==0){Yh(c[(c[j>>2]|0)+208>>2]|0,1)|0;break}c[h>>2]=c[k>>2];b=c[h>>2]|0;i=g;return b|0}}while(0);c[k>>2]=zC(c[(c[j>>2]|0)+208>>2]|0)|0}if((c[k>>2]|0)==0){a[(c[j>>2]|0)+16>>0]=2;c[(c[j>>2]|0)+36>>2]=c[(c[j>>2]|0)+24>>2];c[(c[j>>2]|0)+32>>2]=c[(c[j>>2]|0)+24>>2];c[(c[j>>2]|0)+28>>2]=c[(c[j>>2]|0)+24>>2];b=(c[j>>2]|0)+72|0;c[b>>2]=0;c[b+4>>2]=0}}c[h>>2]=c[k>>2];b=c[h>>2]|0;i=g;return b|0}function zC(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d+4|0;f=d;c[g>>2]=b;if((a[(c[g>>2]|0)+46>>0]|0)!=0){c[e>>2]=8;g=c[e>>2]|0;i=d;return g|0}c[f>>2]=pj(c[g>>2]|0,0,1)|0;if((c[f>>2]|0)!=0){c[e>>2]=c[f>>2];g=c[e>>2]|0;i=d;return g|0}a[(c[g>>2]|0)+44>>0]=1;b=(c[g>>2]|0)+52|0;if((VD(b,gj(c[g>>2]|0)|0,48)|0)!=0){ci(c[g>>2]|0,0,1);a[(c[g>>2]|0)+44>>0]=0;c[f>>2]=517}c[e>>2]=c[f>>2];g=c[e>>2]|0;i=d;return g|0}function AC(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Vd(c[d>>2]|0);i=b;return}function BC(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 36984}function CC(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+8|0;d=b+4|0;f=b;c[e>>2]=a;c[d>>2]=0;if((c[e>>2]|0)==0){f=c[d>>2]|0;i=b;return f|0}c[f>>2]=c[e>>2];JC(c[e>>2]|0,0)|0;gc(c[(c[f>>2]|0)+24>>2]|0);c[d>>2]=qD(c[e>>2]|0)|0;f=c[d>>2]|0;i=b;return f|0}function DC(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;h=l+28|0;o=l+24|0;k=l+20|0;m=l+16|0;n=l;j=l+12|0;g=l+8|0;c[o>>2]=a;c[k>>2]=b;c[m>>2]=d;a=n;c[a>>2]=e;c[a+4>>2]=f;c[j>>2]=c[o>>2];a=n;c[g>>2]=pD(c[j>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;if((c[g>>2]|0)==(c[m>>2]|0)){c[h>>2]=0;o=c[h>>2]|0;i=l;return o|0}if((c[g>>2]|0)<0){c[h>>2]=266;o=c[h>>2]|0;i=l;return o|0}else{c[(c[j>>2]|0)+20>>2]=0;_D((c[k>>2]|0)+(c[g>>2]|0)|0,0,(c[m>>2]|0)-(c[g>>2]|0)|0)|0;c[h>>2]=522;o=c[h>>2]|0;i=l;return o|0}return 0}function EC(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;m=h+28|0;o=h+24|0;n=h+20|0;l=h+16|0;g=h;k=h+12|0;j=h+8|0;c[o>>2]=a;c[n>>2]=b;c[l>>2]=d;a=g;c[a>>2]=e;c[a+4>>2]=f;c[k>>2]=c[o>>2];c[j>>2]=0;while(1){if((c[l>>2]|0)<=0){break}o=g;o=mD(c[k>>2]|0,c[o>>2]|0,c[o+4>>2]|0,c[n>>2]|0,c[l>>2]|0)|0;c[j>>2]=o;if((o|0)<=0){break}c[l>>2]=(c[l>>2]|0)-(c[j>>2]|0);a=c[j>>2]|0;o=g;a=bE(c[o>>2]|0,c[o+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;o=g;c[o>>2]=a;c[o+4>>2]=D;c[n>>2]=(c[n>>2]|0)+(c[j>>2]|0)}if((c[l>>2]|0)<=0){c[m>>2]=0;o=c[m>>2]|0;i=h;return o|0}if((c[j>>2]|0)<0?(c[(c[k>>2]|0)+20>>2]|0)!=28:0){c[m>>2]=778;o=c[m>>2]|0;i=h;return o|0}c[(c[k>>2]|0)+20>>2]=0;c[m>>2]=13;o=c[m>>2]|0;i=h;return o|0}function FC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;f=g+20|0;k=g+16|0;h=g;e=g+12|0;j=g+8|0;c[k>>2]=a;a=h;c[a>>2]=b;c[a+4>>2]=d;c[e>>2]=c[k>>2];if((c[(c[e>>2]|0)+40>>2]|0)>0){k=h;a=c[(c[e>>2]|0)+40>>2]|0;a=bE(c[k>>2]|0,c[k+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;a=ZD(a|0,D|0,1,0)|0;k=c[(c[e>>2]|0)+40>>2]|0;k=jE(a|0,D|0,k|0,((k|0)<0)<<31>>31|0)|0;a=c[(c[e>>2]|0)+40>>2]|0;a=lE(k|0,D|0,a|0,((a|0)<0)<<31>>31|0)|0;k=h;c[k>>2]=a;c[k+4>>2]=D}k=c[h>>2]|0;c[j>>2]=gD(c[(c[e>>2]|0)+12>>2]|0,k,((k|0)<0)<<31>>31)|0;if((c[j>>2]|0)!=0){k=c[(ab()|0)>>2]|0;c[(c[e>>2]|0)+20>>2]=k;c[f>>2]=ZC(1546,37440,c[(c[e>>2]|0)+32>>2]|0,27527)|0;k=c[f>>2]|0;i=g;return k|0}else{c[f>>2]=0;k=c[f>>2]|0;i=g;return k|0}return 0}function GC(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+28|0;p=g+24|0;o=g+20|0;k=g+16|0;j=g+12|0;m=g+8|0;n=g+4|0;l=g;c[p>>2]=a;c[o>>2]=d;c[j>>2]=c[p>>2];c[m>>2]=c[o>>2]&16;c[n>>2]=(c[o>>2]&15|0)==3&1;c[k>>2]=oD(c[(c[j>>2]|0)+12>>2]|0,c[n>>2]|0,c[m>>2]|0)|0;if((c[k>>2]|0)!=0){p=c[(ab()|0)>>2]|0;c[(c[j>>2]|0)+20>>2]=p;c[h>>2]=ZC(1034,37896,c[(c[j>>2]|0)+32>>2]|0,27483)|0;p=c[h>>2]|0;i=g;return p|0}if((b[(c[j>>2]|0)+18>>1]&8|0)!=0){c[k>>2]=zb[c[37272>>2]&63](c[(c[j>>2]|0)+32>>2]|0,l)|0;if((c[k>>2]|0)==0?(c[l>>2]|0)>=0:0){oD(c[l>>2]|0,0,0)|0;YC(c[j>>2]|0,c[l>>2]|0,27497)}else{f=7}if((f|0)==7?(c[k>>2]|0)==14:0){c[k>>2]=0}p=(c[j>>2]|0)+18|0;b[p>>1]=(e[p>>1]|0)&-9}c[h>>2]=c[k>>2];p=c[h>>2]|0;i=g;return p|0}function HC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+96|0;e=d+88|0;f=d+84|0;g=d+80|0;j=d+76|0;h=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=zb[c[37128>>2]&63](c[(c[f>>2]|0)+12>>2]|0,h)|0;if((c[j>>2]|0)!=0){j=c[(ab()|0)>>2]|0;c[(c[f>>2]|0)+20>>2]=j;c[e>>2]=1802;j=c[e>>2]|0;i=d;return j|0}a=c[h+36>>2]|0;j=c[g>>2]|0;c[j>>2]=a;c[j+4>>2]=((a|0)<0)<<31>>31;j=c[g>>2]|0;if((c[j>>2]|0)==1&(c[j+4>>2]|0)==0){j=c[g>>2]|0;c[j>>2]=0;c[j+4>>2]=0}c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}function IC(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;n=f+20|0;k=f+16|0;j=f+12|0;h=f+8|0;l=f+4|0;m=f;c[n>>2]=b;c[k>>2]=e;c[j>>2]=c[n>>2];c[h>>2]=c[(c[j>>2]|0)+24>>2];c[l>>2]=0;if((d[(c[j>>2]|0)+16>>0]|0|0)>0){a[(c[j>>2]|0)+16>>0]=c[k>>2];Fa(c[h>>2]|0,0)|0;c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}c[l>>2]=zb[c[37284>>2]&63](c[h>>2]|0,511)|0;if((c[l>>2]|0)>=0){a[(c[j>>2]|0)+16>>0]=c[k>>2];c[g>>2]=c[l>>2];n=c[g>>2]|0;i=f;return n|0}c[m>>2]=c[(ab()|0)>>2];if(17!=(c[m>>2]|0)){c[l>>2]=nD(c[m>>2]|0,3850)|0;if((c[l>>2]|0)!=0&(c[l>>2]|0)!=5){c[(c[j>>2]|0)+20>>2]=c[m>>2]}}else{c[l>>2]=5}c[g>>2]=c[l>>2];n=c[g>>2]|0;i=f;return n|0}function JC(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;n=f+20|0;m=f+16|0;h=f+12|0;l=f+8|0;k=f+4|0;j=f;c[n>>2]=b;c[m>>2]=e;c[h>>2]=c[n>>2];c[l>>2]=c[(c[h>>2]|0)+24>>2];if((d[(c[h>>2]|0)+16>>0]|0|0)==(c[m>>2]|0)){c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}if((c[m>>2]|0)==1){a[(c[h>>2]|0)+16>>0]=1;c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}c[k>>2]=ub[c[37296>>2]&31](c[l>>2]|0)|0;if((c[k>>2]|0)<0?(c[(ab()|0)>>2]|0)==20:0){c[k>>2]=ub[c[37260>>2]&31](c[l>>2]|0)|0}if((c[k>>2]|0)>=0){a[(c[h>>2]|0)+16>>0]=0;c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}c[j>>2]=c[(ab()|0)>>2];c[k>>2]=0;c[k>>2]=2!=(c[j>>2]|0)?2058:0;if((c[k>>2]|0)!=0&(c[k>>2]|0)!=5){c[(c[h>>2]|0)+20>>2]=c[j>>2]}c[g>>2]=c[k>>2];n=c[g>>2]|0;i=f;return n|0}function KC(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;l=e+20|0;g=e+16|0;f=e+12|0;h=e+8|0;k=e+4|0;j=e;c[l>>2]=a;c[g>>2]=b;c[f>>2]=0;c[h>>2]=0;c[k>>2]=c[l>>2];if((d[(c[k>>2]|0)+16>>0]|0|0)>1){c[h>>2]=1;a=c[h>>2]|0;l=c[g>>2]|0;c[l>>2]=a;l=c[f>>2]|0;i=e;return l|0}else{c[j>>2]=c[(c[k>>2]|0)+24>>2];c[h>>2]=(zb[c[37092>>2]&63](c[j>>2]|0,0)|0)==0&1;a=c[h>>2]|0;l=c[g>>2]|0;c[l>>2]=a;l=c[f>>2]|0;i=e;return l|0}return 0}function LC(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;j=f;g=f+28|0;o=f+24|0;n=f+20|0;h=f+16|0;k=f+12|0;m=f+8|0;l=f+4|0;c[o>>2]=a;c[n>>2]=b;c[h>>2]=e;c[k>>2]=c[o>>2];do{switch(c[n>>2]|0){case 12:{c[j>>2]=c[(c[(c[k>>2]|0)+4>>2]|0)+16>>2];o=oc(1456,j)|0;c[c[h>>2]>>2]=o;c[g>>2]=0;break};case 4:{c[c[h>>2]>>2]=c[(c[k>>2]|0)+20>>2];c[g>>2]=0;break};case 16:{c[l>>2]=ec(c[(c[(c[k>>2]|0)+4>>2]|0)+8>>2]|0)|0;if((c[l>>2]|0)!=0){jD(c[(c[(c[k>>2]|0)+4>>2]|0)+8>>2]|0,c[l>>2]|0)|0;c[c[h>>2]>>2]=c[l>>2]}c[g>>2]=0;break};case 5:{o=c[h>>2]|0;c[m>>2]=hD(c[k>>2]|0,c[o>>2]|0,c[o+4>>2]|0)|0;c[g>>2]=c[m>>2];break};case 20:{o=kD(c[k>>2]|0)|0;c[c[h>>2]>>2]=o;c[g>>2]=0;break};case 13:{iD(c[k>>2]|0,16,c[h>>2]|0);c[g>>2]=0;break};case 1:{c[c[h>>2]>>2]=d[(c[k>>2]|0)+16>>0]|0;c[g>>2]=0;break};case 10:{iD(c[k>>2]|0,4,c[h>>2]|0);c[g>>2]=0;break};case 6:{c[(c[k>>2]|0)+40>>2]=c[c[h>>2]>>2];c[g>>2]=0;break};default:{c[g>>2]=12}}}while(0);i=f;return c[g>>2]|0}function MC(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 4096}function NC(a){a=a|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d+4|0;e=d;c[g>>2]=a;c[f>>2]=c[g>>2];c[e>>2]=0;if((b[(c[f>>2]|0)+18>>1]&16|0)==0){g=c[e>>2]|0;i=d;return g|0}c[e>>2]=c[e>>2]|4096;g=c[e>>2]|0;i=d;return g|0}function OC(a,f,g,h,j){a=a|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;l=i;i=i+160|0;k=l+148|0;E=l+144|0;n=l+140|0;r=l+136|0;z=l+132|0;p=l+128|0;C=l+124|0;D=l+120|0;m=l+116|0;o=l+112|0;t=l+108|0;u=l+104|0;v=l+100|0;x=l+96|0;y=l+20|0;q=l+16|0;w=l+12|0;B=l+8|0;A=l+4|0;s=l;c[E>>2]=a;c[n>>2]=f;c[r>>2]=g;c[z>>2]=h;c[p>>2]=j;c[C>>2]=c[E>>2];c[o>>2]=0;c[t>>2]=XC()|0;if((c[(c[C>>2]|0)+36>>2]|0)==0?(c[o>>2]=eD(c[C>>2]|0)|0,(c[o>>2]|0)!=0):0){c[k>>2]=c[o>>2];E=c[k>>2]|0;i=l;return E|0}c[D>>2]=c[(c[C>>2]|0)+36>>2];c[m>>2]=c[c[D>>2]>>2];c[u>>2]=$(((c[n>>2]|0)+(c[t>>2]|0)|0)/(c[t>>2]|0)|0,c[t>>2]|0)|0;a:do{if((e[(c[m>>2]|0)+20>>1]|0|0)<(c[u>>2]|0)){c[x>>2]=$(c[u>>2]|0,c[r>>2]|0)|0;c[(c[m>>2]|0)+16>>2]=c[r>>2];b:do{if((c[(c[m>>2]|0)+12>>2]|0)>=0){if((zb[c[37128>>2]&63](c[(c[m>>2]|0)+12>>2]|0,y)|0)!=0){c[o>>2]=4874;break a}if((c[y+36>>2]|0)<(c[x>>2]|0)){if((c[z>>2]|0)==0){break a}c[q>>2]=(c[y+36>>2]|0)/4096|0;while(1){if((c[q>>2]|0)>=((c[x>>2]|0)/4096|0|0)){break b}E=(c[q>>2]<<12)+4096-1|0;if((fD(c[(c[m>>2]|0)+12>>2]|0,E,((E|0)<0)<<31>>31,1472,1,0)|0)!=1){break}c[q>>2]=(c[q>>2]|0)+1}c[w>>2]=c[(c[m>>2]|0)+8>>2];c[o>>2]=ZC(4874,37488,c[w>>2]|0,28353)|0;break a}}}while(0);c[v>>2]=ic(c[(c[m>>2]|0)+24>>2]|0,c[u>>2]<<2)|0;if((c[v>>2]|0)==0){c[o>>2]=3082;break}c[(c[m>>2]|0)+24>>2]=c[v>>2];while(1){if((e[(c[m>>2]|0)+20>>1]|0|0)>=(c[u>>2]|0)){break a}c[B>>2]=$(c[r>>2]|0,c[t>>2]|0)|0;if((c[(c[m>>2]|0)+12>>2]|0)>=0){h=c[37320>>2]|0;g=c[B>>2]|0;f=(d[(c[m>>2]|0)+22>>0]|0|0)!=0?1:3;a=c[(c[m>>2]|0)+12>>2]|0;E=c[r>>2]|0;E=lE(E|0,((E|0)<0)<<31>>31|0,e[(c[m>>2]|0)+20>>1]|0|0,0)|0;c[s>>2]=tb[h&1](0,g,f,1,a,E)|0;if((c[s>>2]|0)==(-1|0)){q=21;break}}else{c[s>>2]=ec(c[r>>2]|0)|0;if((c[s>>2]|0)==0){q=23;break}_D(c[s>>2]|0,0,c[r>>2]|0)|0}c[A>>2]=0;while(1){if((c[A>>2]|0)>=(c[t>>2]|0)){break}E=$(c[r>>2]|0,c[A>>2]|0)|0;c[(c[(c[m>>2]|0)+24>>2]|0)+((e[(c[m>>2]|0)+20>>1]|0)+(c[A>>2]|0)<<2)>>2]=(c[s>>2]|0)+E;c[A>>2]=(c[A>>2]|0)+1}E=(c[m>>2]|0)+20|0;b[E>>1]=(e[E>>1]|0)+(c[t>>2]|0)}if((q|0)==21){c[o>>2]=ZC(5386,37592,c[(c[m>>2]|0)+8>>2]|0,28380)|0;break}else if((q|0)==23){c[o>>2]=7;break}}}while(0);if((e[(c[m>>2]|0)+20>>1]|0|0)>(c[n>>2]|0)){c[c[p>>2]>>2]=c[(c[(c[m>>2]|0)+24>>2]|0)+(c[n>>2]<<2)>>2]}else{c[c[p>>2]>>2]=0}if((d[(c[m>>2]|0)+22>>0]|0|0)!=0?(c[o>>2]|0)==0:0){c[o>>2]=8}c[k>>2]=c[o>>2];E=c[k>>2]|0;i=l;return E|0}function PC(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=i;i=i+48|0;v=k+32|0;m=k+28|0;n=k+24|0;t=k+20|0;u=k+16|0;r=k+12|0;h=k+8|0;l=k+4|0;q=k;o=k+40|0;p=k+38|0;s=k+36|0;c[v>>2]=a;c[m>>2]=d;c[n>>2]=f;c[t>>2]=g;c[u>>2]=c[v>>2];c[r>>2]=c[(c[u>>2]|0)+36>>2];c[l>>2]=c[c[r>>2]>>2];c[q>>2]=0;b[o>>1]=(1<<(c[m>>2]|0)+(c[n>>2]|0))-(1<>2]);if((c[t>>2]&1|0)!=0){b[p>>1]=0;c[h>>2]=c[(c[l>>2]|0)+32>>2];while(1){if((c[h>>2]|0)==0){break}if((c[h>>2]|0)!=(c[r>>2]|0)){b[p>>1]=e[p>>1]|0|(e[(c[h>>2]|0)+10>>1]|0)}c[h>>2]=c[(c[h>>2]|0)+4>>2]}if(((e[o>>1]|0)&(e[p>>1]|0)|0)==0){c[q>>2]=dD(c[l>>2]|0,2,(c[m>>2]|0)+120|0,c[n>>2]|0)|0}else{c[q>>2]=0}if((c[q>>2]|0)!=0){v=c[q>>2]|0;i=k;return v|0}v=(c[r>>2]|0)+12|0;b[v>>1]=(e[v>>1]|0)&~(e[o>>1]|0);v=(c[r>>2]|0)+10|0;b[v>>1]=(e[v>>1]|0)&~(e[o>>1]|0);v=c[q>>2]|0;i=k;return v|0}if((c[t>>2]&4|0)==0){c[h>>2]=c[(c[l>>2]|0)+32>>2];while(1){if((c[h>>2]|0)==0){break}if(((e[(c[h>>2]|0)+12>>1]|0)&(e[o>>1]|0)|0)!=0){j=28;break}if(((e[(c[h>>2]|0)+10>>1]|0)&(e[o>>1]|0)|0)!=0){j=28;break}c[h>>2]=c[(c[h>>2]|0)+4>>2]}if((j|0)==28){c[q>>2]=5}if((c[q>>2]|0)!=0){v=c[q>>2]|0;i=k;return v|0}c[q>>2]=dD(c[l>>2]|0,1,(c[m>>2]|0)+120|0,c[n>>2]|0)|0;if((c[q>>2]|0)!=0){v=c[q>>2]|0;i=k;return v|0}v=(c[r>>2]|0)+12|0;b[v>>1]=e[v>>1]|0|(e[o>>1]|0);v=c[q>>2]|0;i=k;return v|0}b[s>>1]=0;c[h>>2]=c[(c[l>>2]|0)+32>>2];while(1){if((c[h>>2]|0)==0){break}if(((e[(c[h>>2]|0)+12>>1]|0)&(e[o>>1]|0)|0)!=0){j=16;break}b[s>>1]=e[s>>1]|0|(e[(c[h>>2]|0)+10>>1]|0);c[h>>2]=c[(c[h>>2]|0)+4>>2]}if((j|0)==16){c[q>>2]=5}do{if((c[q>>2]|0)==0){if(((e[s>>1]|0)&(e[o>>1]|0)|0)==0){c[q>>2]=dD(c[l>>2]|0,0,(c[m>>2]|0)+120|0,c[n>>2]|0)|0;break}else{c[q>>2]=0;break}}}while(0);if((c[q>>2]|0)!=0){v=c[q>>2]|0;i=k;return v|0}v=(c[r>>2]|0)+10|0;b[v>>1]=e[v>>1]|0|(e[o>>1]|0);v=c[q>>2]|0;i=k;return v|0}function QC(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;UC();WC();i=b;return}function RC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+24|0;l=d+20|0;f=d+16|0;h=d+12|0;g=d+8|0;j=d+4|0;k=d;c[l>>2]=a;c[f>>2]=b;c[k>>2]=c[l>>2];c[h>>2]=c[(c[k>>2]|0)+36>>2];if((c[h>>2]|0)==0){c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[g>>2]=c[c[h>>2]>>2];c[j>>2]=(c[g>>2]|0)+32;while(1){if((c[c[j>>2]>>2]|0)==(c[h>>2]|0)){break}c[j>>2]=(c[c[j>>2]>>2]|0)+4}c[c[j>>2]>>2]=c[(c[h>>2]|0)+4>>2];gc(c[h>>2]|0);c[(c[k>>2]|0)+36>>2]=0;UC();l=(c[g>>2]|0)+28|0;c[l>>2]=(c[l>>2]|0)+ -1;if((c[(c[g>>2]|0)+28>>2]|0)==0){if((c[f>>2]|0)!=0?(c[(c[g>>2]|0)+12>>2]|0)>=0:0){ub[c[37260>>2]&31](c[(c[g>>2]|0)+8>>2]|0)|0}VC(c[k>>2]|0)}WC();c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}function SC(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=i;i=i+32|0;h=g+8|0;c[g+16>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;c[g+12>>2]=e;c[h>>2]=f;c[c[h>>2]>>2]=0;i=g;return 0}function TC(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=i;i=i+16|0;c[f+12>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;c[f+8>>2]=e;i=f;return 0}function UC(){return}function VC(a){a=a|0;var b=0,d=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;f=b+8|0;h=b+4|0;g=b;c[d>>2]=a;c[f>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+20>>2];if((c[f>>2]|0)==0){i=b;return}if((c[(c[f>>2]|0)+28>>2]|0)!=0){i=b;return}c[h>>2]=XC()|0;c[g>>2]=0;while(1){a=c[f>>2]|0;if((c[g>>2]|0)>=(e[(c[f>>2]|0)+20>>1]|0|0)){break}if((c[a+12>>2]|0)>=0){zb[c[37332>>2]&63](c[(c[(c[f>>2]|0)+24>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[f>>2]|0)+16>>2]|0)|0}else{gc(c[(c[(c[f>>2]|0)+24>>2]|0)+(c[g>>2]<<2)>>2]|0)}c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)}gc(c[a+24>>2]|0);if((c[(c[f>>2]|0)+12>>2]|0)>=0){YC(c[d>>2]|0,c[(c[f>>2]|0)+12>>2]|0,28094);c[(c[f>>2]|0)+12>>2]=-1}c[(c[c[f>>2]>>2]|0)+20>>2]=0;gc(c[f>>2]|0);i=b;return}function WC(){return}function XC(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;b=a+8|0;d=a+4|0;e=a;c[d>>2]=32768;c[e>>2]=qb[c[37356>>2]&1]()|0;if((c[e>>2]|0)<(c[d>>2]|0)){c[b>>2]=1;e=c[b>>2]|0;i=a;return e|0}else{c[b>>2]=(c[e>>2]|0)/(c[d>>2]|0)|0;e=c[b>>2]|0;i=a;return e|0}return 0}function YC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;h=e+4|0;f=e;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;if((ub[c[37080>>2]&31](c[h>>2]|0)|0)==0){i=e;return}if((c[g>>2]|0)!=0){d=c[(c[g>>2]|0)+32>>2]|0}else{d=0}ZC(4106,37368,d,c[f>>2]|0)|0;i=e;return}function ZC(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;h=g;l=g+40|0;m=g+36|0;f=g+32|0;j=g+28|0;k=g+24|0;n=g+20|0;c[l>>2]=a;c[m>>2]=b;c[f>>2]=d;c[j>>2]=e;c[n>>2]=c[(ab()|0)>>2];c[k>>2]=jb(c[n>>2]|0)|0;if((c[f>>2]|0)==0){c[f>>2]=1472}a=c[l>>2]|0;e=c[n>>2]|0;n=c[m>>2]|0;d=c[f>>2]|0;b=c[k>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=e;c[h+8>>2]=n;c[h+12>>2]=d;c[h+16>>2]=b;rc(a,37376,h);i=g;return c[l>>2]|0}function _C(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e;j=e+12|0;h=e+8|0;g=e+4|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;b=c[j>>2]|0;a=c[h>>2]|0;c[f>>2]=c[g>>2];a=Ma(b|0,a|0,f|0)|0;i=e;return a|0}function $C(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+544|0;k=e;l=e+16|0;g=e+12|0;j=e+8|0;f=e+4|0;h=e+20|0;c[l>>2]=b;c[g>>2]=d;c[f>>2]=-1;c[k>>2]=c[l>>2];qc(512,h,1456,k)|0;c[j>>2]=aE(h|0)|0;while(1){if((c[j>>2]|0)<=1){break}if((a[h+(c[j>>2]|0)>>0]|0)==47){break}c[j>>2]=(c[j>>2]|0)+ -1}if((c[j>>2]|0)>0){a[h+(c[j>>2]|0)>>0]=0;c[f>>2]=cD(h,0,0)|0}c[c[g>>2]>>2]=c[f>>2];if((c[f>>2]|0)>=0){l=0;i=e;return l|0}l=ZC(Cj(27442)|0,37408,h,27442)|0;i=e;return l|0}function aD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((db()|0)!=0){a=0;i=e;return a|0}a=eb(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return a|0}function bD(){var a=0,b=0;b=i;a=Sa(30)|0;i=b;return a|0}function cD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+112|0;e=l;f=l+100|0;g=l+96|0;k=l+92|0;j=l+88|0;h=l+84|0;m=l+8|0;c[f>>2]=a;c[g>>2]=b;c[k>>2]=d;c[h>>2]=(c[k>>2]|0)!=0?c[k>>2]|0:420;while(1){c[j>>2]=pb[c[37068>>2]&15](c[f>>2]|0,c[g>>2]|524288,c[h>>2]|0)|0;if((c[j>>2]|0)<0){if((c[(ab()|0)>>2]|0)==4){continue}else{break}}if((c[j>>2]|0)>=3){break}ub[c[37080>>2]&31](c[j>>2]|0)|0;a=c[j>>2]|0;c[e>>2]=c[f>>2];c[e+4>>2]=a;rc(28,37632,e);c[j>>2]=-1;if((pb[c[37068>>2]&15](37680,c[g>>2]|0,c[k>>2]|0)|0)<0){break}}if((c[j>>2]|0)<0){a=c[j>>2]|0;i=l;return a|0}if((c[k>>2]|0)==0){a=c[j>>2]|0;i=l;return a|0}if((zb[c[37128>>2]&63](c[j>>2]|0,m)|0)!=0){a=c[j>>2]|0;i=l;return a|0}if((c[m+36>>2]|0)!=0){a=c[j>>2]|0;i=l;return a|0}if((c[m+12>>2]&511|0)==(c[k>>2]|0)){a=c[j>>2]|0;i=l;return a|0}zb[c[37236>>2]&63](c[j>>2]|0,c[k>>2]|0)|0;a=c[j>>2]|0;i=l;return a|0}function dD(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+48|0;o=m;n=m+36|0;k=m+32|0;l=m+28|0;g=m+24|0;j=m+8|0;h=m+4|0;c[n>>2]=a;c[k>>2]=d;c[l>>2]=e;c[g>>2]=f;c[h>>2]=0;if((c[(c[n>>2]|0)+12>>2]|0)<0){a=c[h>>2]|0;i=m;return a|0}c[j+0>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;b[j>>1]=c[k>>2];b[j+2>>1]=0;c[j+4>>2]=c[l>>2];c[j+8>>2]=c[g>>2];d=c[37152>>2]|0;a=c[(c[n>>2]|0)+12>>2]|0;c[o>>2]=j;c[h>>2]=pb[d&15](a,13,o)|0;c[h>>2]=(c[h>>2]|0)!=-1?0:5;a=c[h>>2]|0;i=m;return a|0}function eD(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=i;i=i+128|0;r=m;g=m+112|0;h=m+108|0;j=m+104|0;l=m+100|0;k=m+96|0;p=m+92|0;e=m+88|0;q=m+84|0;o=m+8|0;n=m+4|0;c[h>>2]=b;c[j>>2]=0;c[j>>2]=ec(16)|0;if((c[j>>2]|0)==0){c[g>>2]=7;b=c[g>>2]|0;i=m;return b|0}b=c[j>>2]|0;c[b+0>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;UC();c[p>>2]=c[(c[h>>2]|0)+8>>2];c[l>>2]=c[(c[p>>2]|0)+20>>2];a:do{if((c[l>>2]|0)==0){if((zb[c[37128>>2]&63](c[(c[h>>2]|0)+12>>2]|0,o)|0)!=0?(d[(c[p>>2]|0)+13>>0]|0|0)==0:0){c[k>>2]=1802}else{f=7}do{if((f|0)==7){c[q>>2]=6+(aE(c[(c[h>>2]|0)+32>>2]|0)|0);c[l>>2]=ec(36+(c[q>>2]|0)|0)|0;if((c[l>>2]|0)==0){c[k>>2]=7;break}_D(c[l>>2]|0,0,36+(c[q>>2]|0)|0)|0;b=(c[l>>2]|0)+36|0;c[(c[l>>2]|0)+8>>2]=b;c[e>>2]=b;q=c[q>>2]|0;b=c[e>>2]|0;c[r>>2]=c[(c[h>>2]|0)+32>>2];qc(q,b,37696,r)|0;c[(c[l>>2]|0)+12>>2]=-1;c[(c[(c[h>>2]|0)+8>>2]|0)+20>>2]=c[l>>2];c[c[l>>2]>>2]=c[(c[h>>2]|0)+8>>2];c[(c[l>>2]|0)+4>>2]=8;if((c[(c[l>>2]|0)+4>>2]|0)==0){c[k>>2]=7;break}if((d[(c[p>>2]|0)+13>>0]|0|0)!=0){break a}c[n>>2]=66;if((ig(c[(c[h>>2]|0)+32>>2]|0,37704,0)|0)!=0){c[n>>2]=0;a[(c[l>>2]|0)+22>>0]=1}b=cD(c[e>>2]|0,c[n>>2]|0,c[o+12>>2]&511)|0;c[(c[l>>2]|0)+12>>2]=b;if((c[(c[l>>2]|0)+12>>2]|0)<0){b=Cj(28206)|0;c[k>>2]=ZC(b,37408,c[e>>2]|0,28206)|0;break}pb[c[37308>>2]&15](c[(c[l>>2]|0)+12>>2]|0,c[o+20>>2]|0,c[o+24>>2]|0)|0;c[k>>2]=0;if((dD(c[l>>2]|0,1,128,1)|0)==0?(gD(c[(c[l>>2]|0)+12>>2]|0,0,0)|0)!=0:0){c[k>>2]=ZC(4618,37440,c[e>>2]|0,28222)|0}if((c[k>>2]|0)==0){c[k>>2]=dD(c[l>>2]|0,0,128,1)|0}if((c[k>>2]|0)==0){break a}}}while(0);VC(c[h>>2]|0);gc(c[j>>2]|0);WC();c[g>>2]=c[k>>2];b=c[g>>2]|0;i=m;return b|0}}while(0);c[c[j>>2]>>2]=c[l>>2];b=(c[l>>2]|0)+28|0;c[b>>2]=(c[b>>2]|0)+1;c[(c[h>>2]|0)+36>>2]=c[j>>2];WC();c[(c[j>>2]|0)+4>>2]=c[(c[l>>2]|0)+32>>2];c[(c[l>>2]|0)+32>>2]=c[j>>2];c[g>>2]=0;b=c[g>>2]|0;i=m;return b|0}function fD(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+48|0;h=j+36|0;n=j+32|0;r=j+8|0;o=j+28|0;p=j+24|0;k=j+20|0;l=j+16|0;q=j;c[n>>2]=a;a=r;c[a>>2]=b;c[a+4>>2]=d;c[o>>2]=e;c[p>>2]=f;c[k>>2]=g;c[l>>2]=0;c[p>>2]=c[p>>2]&131071;while(1){a=xa(c[n>>2]|0,c[r>>2]|0,0)|0;b=q;c[b>>2]=a;c[b+4>>2]=((a|0)<0)<<31>>31;b=q;a=r;if((c[b>>2]|0)!=(c[a>>2]|0)?1:(c[b+4>>2]|0)!=(c[a+4>>2]|0)){break}c[l>>2]=pb[c[37200>>2]&15](c[n>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if((c[l>>2]|0)>=0){m=10;break}if((c[(ab()|0)>>2]|0)!=4){m=10;break}}if((m|0)==10){if((c[l>>2]|0)<0?(c[k>>2]|0)!=0:0){a=c[(ab()|0)>>2]|0;c[c[k>>2]>>2]=a}c[h>>2]=c[l>>2];a=c[h>>2]|0;i=j;return a|0}if((c[k>>2]|0)!=0){a=q;if((c[a>>2]|0)==-1?(c[a+4>>2]|0)==-1:0){l=c[(ab()|0)>>2]|0}else{l=0}c[c[k>>2]>>2]=l}c[h>>2]=-1;a=c[h>>2]|0;i=j;return a|0}function gD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+12|0;h=e;f=e+8|0;c[g>>2]=a;a=h;c[a>>2]=b;c[a+4>>2]=d;while(1){c[f>>2]=zb[c[37140>>2]&63](c[g>>2]|0,c[h>>2]|0)|0;if((c[f>>2]|0)>=0){d=4;break}if((c[(ab()|0)>>2]|0)!=4){d=4;break}}if((d|0)==4){i=e;return c[f>>2]|0}return 0}function hD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+128|0;f=k+112|0;g=k+108|0;n=k+16|0;e=k+8|0;l=k+32|0;m=k+28|0;h=k;j=k+24|0;c[g>>2]=a;a=n;c[a>>2]=b;c[a+4>>2]=d;a:do{if((c[(c[g>>2]|0)+40>>2]|0)>0){if((zb[c[37128>>2]&63](c[(c[g>>2]|0)+12>>2]|0,l)|0)!=0){c[f>>2]=1802;a=c[f>>2]|0;i=k;return a|0}b=n;d=c[(c[g>>2]|0)+40>>2]|0;d=bE(c[b>>2]|0,c[b+4>>2]|0,d|0,((d|0)<0)<<31>>31|0)|0;d=ZD(d|0,D|0,1,0)|0;b=c[(c[g>>2]|0)+40>>2]|0;b=jE(d|0,D|0,b|0,((b|0)<0)<<31>>31|0)|0;d=c[(c[g>>2]|0)+40>>2]|0;d=lE(b|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;b=e;c[b>>2]=d;c[b+4>>2]=D;b=e;d=c[b+4>>2]|0;a=c[l+36>>2]|0;n=((a|0)<0)<<31>>31;if((d|0)>(n|0)|((d|0)==(n|0)?(c[b>>2]|0)>>>0>a>>>0:0)){c[m>>2]=c[l+40>>2];a=e;if((gD(c[(c[g>>2]|0)+12>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0)!=0){a=c[(ab()|0)>>2]|0;c[(c[g>>2]|0)+20>>2]=a;c[f>>2]=ZC(1546,37440,c[(c[g>>2]|0)+32>>2]|0,27628)|0;a=c[f>>2]|0;i=k;return a|0}b=($(((c[l+36>>2]|0)+(c[m>>2]<<1)-1|0)/(c[m>>2]|0)|0,c[m>>2]|0)|0)-1|0;a=h;c[a>>2]=b;c[a+4>>2]=((b|0)<0)<<31>>31;while(1){b=h;l=c[b+4>>2]|0;a=e;n=c[a+4>>2]|0;if(!((l|0)<(n|0)|((l|0)==(n|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0))){break a}a=h;c[j>>2]=mD(c[g>>2]|0,c[a>>2]|0,c[a+4>>2]|0,1472,1)|0;if((c[j>>2]|0)!=1){break}b=c[m>>2]|0;a=h;b=bE(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=h;c[a>>2]=b;c[a+4>>2]=D}c[f>>2]=778;a=c[f>>2]|0;i=k;return a|0}}}while(0);c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}function iD(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;j=i;i=i+16|0;l=j+4|0;m=j+8|0;k=j;c[l>>2]=f;a[m>>0]=g;c[k>>2]=h;if((c[c[k>>2]>>2]|0)<0){c[c[k>>2]>>2]=((e[(c[l>>2]|0)+18>>1]|0)&(d[m>>0]|0)|0)!=0&1;i=j;return}h=d[m>>0]|0;if((c[c[k>>2]>>2]|0)==0){f=(c[l>>2]|0)+18|0;b[f>>1]=(e[f>>1]|0)&~h;i=j;return}else{f=(c[l>>2]|0)+18|0;b[f>>1]=e[f>>1]|0|h;i=j;return}}function jD(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;n=k;g=k+24|0;l=k+20|0;h=k+16|0;f=k+12|0;j=k+8|0;m=k+4|0;c[l>>2]=b;c[h>>2]=e;b=lD()|0;c[m>>2]=b;c[m>>2]=(c[m>>2]|0)==0?19024:b;b=(aE(c[m>>2]|0)|0)+25|0;if(b>>>0>=(c[l>>2]|0)>>>0){c[g>>2]=1;b=c[g>>2]|0;i=k;return b|0}do{e=(c[l>>2]|0)-18|0;b=c[h>>2]|0;c[n>>2]=c[m>>2];qc(e,b,37784,n)|0;c[j>>2]=aE(c[h>>2]|0)|0;tc(15,(c[h>>2]|0)+(c[j>>2]|0)|0);c[f>>2]=0;while(1){e=(c[h>>2]|0)+(c[j>>2]|0)|0;if(!((c[f>>2]|0)>>>0<15)){break}a[(c[h>>2]|0)+(c[j>>2]|0)>>0]=a[37720+(((d[e>>0]|0)>>>0)%62|0)>>0]|0;c[f>>2]=(c[f>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1}a[e>>0]=0;a[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]=0}while((zb[c[37092>>2]&63](c[h>>2]|0,0)|0)==0);c[g>>2]=0;b=c[g>>2]|0;i=k;return b|0}function kD(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+80|0;e=b+76|0;d=b;c[e>>2]=a;if((c[(c[e>>2]|0)+8>>2]|0)==0){e=0;e=e&1;i=b;return e|0}if((zb[c[37116>>2]&63](c[(c[e>>2]|0)+32>>2]|0,d)|0)!=0){e=1;e=e&1;i=b;return e|0}e=(c[d+72>>2]|0)!=(c[(c[(c[e>>2]|0)+8>>2]|0)+4>>2]|0);e=e&1;i=b;return e|0}function lD(){var a=0,b=0,d=0,e=0,f=0;a=i;i=i+96|0;e=a+80|0;d=a+4|0;b=a;c[b>>2]=0;c[9450]=c[392];if((c[37804>>2]|0)==0){c[37804>>2]=Za(37872)|0}if((c[37808>>2]|0)==0){c[37808>>2]=Za(37888)|0}c[e>>2]=0;while(1){if(!((c[e>>2]|0)>>>0<7)){d=12;break}if((((c[b>>2]|0)!=0?(zb[c[37116>>2]&63](c[b>>2]|0,d)|0)==0:0)?(c[d+12>>2]&61440|0)==16384:0)?(zb[c[37092>>2]&63](c[b>>2]|0,7)|0)==0:0){d=12;break}f=c[e>>2]|0;c[e>>2]=f+1;c[b>>2]=c[37800+(f<<2)>>2]}if((d|0)==12){i=a;return c[b>>2]|0}return 0}function mD(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;h=g+16|0;l=g;k=g+12|0;j=g+8|0;c[h>>2]=a;a=l;c[a>>2]=b;c[a+4>>2]=d;c[k>>2]=e;c[j>>2]=f;a=l;a=fD(c[(c[h>>2]|0)+12>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[k>>2]|0,c[j>>2]|0,(c[h>>2]|0)+20|0)|0;i=g;return a|0}function nD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e+4|0;g=e;c[h>>2]=a;c[g>>2]=b;switch(c[h>>2]|0){case 37:case 4:case 16:case 110:case 11:{c[f>>2]=5;break};case 1:{d=5;break};case 13:{if((c[g>>2]|0)==3850|(c[g>>2]|0)==2058|(c[g>>2]|0)==2314|(c[g>>2]|0)==3594){c[f>>2]=5}else{d=5}break};default:{c[f>>2]=c[g>>2]}}if((d|0)==5){c[f>>2]=3}i=e;return c[f>>2]|0}function oD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;e=f;c[g>>2]=a;c[f+8>>2]=b;c[f+4>>2]=d;c[e>>2]=$a(c[g>>2]|0)|0;i=f;return c[e>>2]|0}function pD(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+48|0;o=j+36|0;k=j+32|0;p=j+8|0;q=j+28|0;g=j+24|0;m=j+20|0;n=j+16|0;l=j;c[k>>2]=a;a=p;c[a>>2]=b;c[a+4>>2]=d;c[q>>2]=e;c[g>>2]=f;c[n>>2]=0;c[g>>2]=c[g>>2]&131071;do{a=xa(c[(c[k>>2]|0)+12>>2]|0,c[p>>2]|0,0)|0;b=l;c[b>>2]=a;c[b+4>>2]=((a|0)<0)<<31>>31;b=l;a=p;if((c[b>>2]|0)!=(c[a>>2]|0)?1:(c[b+4>>2]|0)!=(c[a+4>>2]|0)){h=3;break}c[m>>2]=pb[c[37164>>2]&15](c[(c[k>>2]|0)+12>>2]|0,c[q>>2]|0,c[g>>2]|0)|0;if((c[m>>2]|0)==(c[g>>2]|0)){break}if((c[m>>2]|0)>=0){if((c[m>>2]|0)>0){c[g>>2]=(c[g>>2]|0)-(c[m>>2]|0);b=c[m>>2]|0;a=p;b=bE(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=p;c[a>>2]=b;c[a+4>>2]=D;c[n>>2]=(c[n>>2]|0)+(c[m>>2]|0);c[q>>2]=(c[q>>2]|0)+(c[m>>2]|0)}}else{if((c[(ab()|0)>>2]|0)!=4){h=11;break}c[m>>2]=1}}while((c[m>>2]|0)>0);if((h|0)==3){a=l;if((c[a>>2]|0)==-1?(c[a+4>>2]|0)==-1:0){a=c[(ab()|0)>>2]|0;c[(c[k>>2]|0)+20>>2]=a}else{c[(c[k>>2]|0)+20>>2]=0}c[o>>2]=-1;a=c[o>>2]|0;i=j;return a|0}else if((h|0)==11){c[n>>2]=0;a=c[(ab()|0)>>2]|0;c[(c[k>>2]|0)+20>>2]=a}c[o>>2]=(c[m>>2]|0)+(c[n>>2]|0);a=c[o>>2]|0;i=j;return a|0}function qD(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];if((c[(c[d>>2]|0)+12>>2]|0)>=0){YC(c[d>>2]|0,c[(c[d>>2]|0)+12>>2]|0,25838);c[(c[d>>2]|0)+12>>2]=-1}gc(c[(c[d>>2]|0)+28>>2]|0);d=(c[d>>2]|0)+0|0;a=d+44|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));i=b;return 0}function rD(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 37912}function sD(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=qD(c[d>>2]|0)|0;i=b;return a|0}function tD(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function uD(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function vD(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[d+4>>2]=a;c[e>>2]=b;c[c[e>>2]>>2]=0;i=d;return 0}function wD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+96|0;k=d+92|0;j=d+88|0;e=d+84|0;h=d+8|0;f=d+4|0;g=d;c[k>>2]=a;c[j>>2]=b;c[e>>2]=0;if(0!=(zb[c[37116>>2]&63](c[k>>2]|0,h)|0)){k=c[e>>2]|0;i=d;return k|0}UC();c[f>>2]=c[9562];while(1){if((c[f>>2]|0)!=0){if((c[c[f>>2]>>2]|0)!=(c[h>>2]|0)){a=1}else{a=(c[(c[f>>2]|0)+4>>2]|0)!=(c[h+72>>2]|0)}}else{a=0}b=c[f>>2]|0;if(!a){break}c[f>>2]=c[b+32>>2]}if((b|0)!=0){c[g>>2]=(c[f>>2]|0)+28;while(1){if((c[c[g>>2]>>2]|0)==0){break}if((c[(c[c[g>>2]>>2]|0)+4>>2]|0)==(c[j>>2]|0)){break}c[g>>2]=(c[c[g>>2]>>2]|0)+8}c[e>>2]=c[c[g>>2]>>2];if((c[e>>2]|0)!=0){c[c[g>>2]>>2]=c[(c[e>>2]|0)+8>>2]}}WC();k=c[e>>2]|0;i=d;return k|0}function xD(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=i;i=i+624|0;q=o+100|0;l=o+96|0;k=o+92|0;n=o+88|0;h=o+84|0;j=o+80|0;p=o+104|0;r=o+76|0;m=o;c[q>>2]=b;c[l>>2]=d;c[k>>2]=e;c[n>>2]=f;c[h>>2]=g;c[j>>2]=0;c[c[k>>2]>>2]=0;c[c[n>>2]>>2]=0;c[c[h>>2]>>2]=0;if((c[l>>2]&526336|0)==0){if((c[l>>2]&8|0)==0){b=c[j>>2]|0;i=o;return b|0}c[c[k>>2]>>2]=384;b=c[j>>2]|0;i=o;return b|0}c[r>>2]=(Mb(c[q>>2]|0)|0)-1;while(1){if((a[(c[q>>2]|0)+(c[r>>2]|0)>>0]|0)==45){break}c[r>>2]=(c[r>>2]|0)+ -1}dE(p|0,c[q>>2]|0,c[r>>2]|0)|0;a[p+(c[r>>2]|0)>>0]=0;if(0==(zb[c[37116>>2]&63](p,m)|0)){c[c[k>>2]>>2]=c[m+12>>2]&511;c[c[n>>2]>>2]=c[m+20>>2];c[c[h>>2]>>2]=c[m+24>>2];b=c[j>>2]|0;i=o;return b|0}else{c[j>>2]=1802;b=c[j>>2]|0;i=o;return b|0}return 0}function yD(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;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;j=i;i=i+48|0;o=j;s=j+40|0;r=j+36|0;u=j+32|0;n=j+28|0;t=j+24|0;p=j+20|0;q=j+16|0;k=j+12|0;l=j+8|0;m=j+4|0;c[s>>2]=a;c[r>>2]=d;c[u>>2]=f;c[n>>2]=g;c[t>>2]=h;c[q>>2]=c[u>>2];c[k>>2]=0;c[(c[q>>2]|0)+12>>2]=c[r>>2];c[(c[q>>2]|0)+4>>2]=c[s>>2];c[(c[q>>2]|0)+32>>2]=c[n>>2];b[(c[q>>2]|0)+18>>1]=c[t>>2]&255;if((ig((c[t>>2]&64|0)!=0?c[n>>2]|0:0,38032,1)|0)!=0){u=(c[q>>2]|0)+18|0;b[u>>1]=e[u>>1]|0|16}if((WD(c[(c[s>>2]|0)+16>>2]|0,1368)|0)==0){u=(c[q>>2]|0)+18|0;b[u>>1]=e[u>>1]|0|1}if((c[t>>2]&128|0)!=0){c[p>>2]=37912}else{c[p>>2]=zb[c[c[(c[s>>2]|0)+20>>2]>>2]&63](c[n>>2]|0,c[q>>2]|0)|0}if((c[p>>2]|0)!=38040){if((c[p>>2]|0)==36984){c[m>>2]=(aE(c[n>>2]|0)|0)+6;c[l>>2]=ec(c[m>>2]|0)|0;if((c[l>>2]|0)==0){c[k>>2]=7}else{a=c[m>>2]|0;u=c[l>>2]|0;c[o>>2]=c[n>>2];qc(a,u,38120,o)|0}c[(c[q>>2]|0)+24>>2]=c[l>>2]}}else{UC();c[k>>2]=zD(c[q>>2]|0,(c[q>>2]|0)+8|0)|0;if((c[k>>2]|0)!=0){YC(c[q>>2]|0,c[r>>2]|0,29201);c[r>>2]=-1}WC()}c[(c[q>>2]|0)+20>>2]=0;if((c[k>>2]|0)==0){c[c[q>>2]>>2]=c[p>>2];AD(c[q>>2]|0);u=c[k>>2]|0;i=j;return u|0}if((c[r>>2]|0)<0){u=c[k>>2]|0;i=j;return u|0}YC(c[q>>2]|0,c[r>>2]|0,29286);u=c[k>>2]|0;i=j;return u|0}function zD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+112|0;e=h+104|0;j=h+100|0;g=h+96|0;l=h+92|0;m=h+88|0;d=h+80|0;k=h+4|0;f=h;c[j>>2]=a;c[g>>2]=b;c[f>>2]=0;c[m>>2]=c[(c[j>>2]|0)+12>>2];c[l>>2]=zb[c[37128>>2]&63](c[m>>2]|0,k)|0;if((c[l>>2]|0)!=0){m=c[(ab()|0)>>2]|0;c[(c[j>>2]|0)+20>>2]=m;if((c[(c[j>>2]|0)+20>>2]|0)==75){c[e>>2]=22;m=c[e>>2]|0;i=h;return m|0}else{c[e>>2]=10;m=c[e>>2]|0;i=h;return m|0}}c[d+0>>2]=0;c[d+4>>2]=0;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+72>>2];c[f>>2]=c[9562];while(1){if((c[f>>2]|0)!=0){b=(VD(d,c[f>>2]|0,8)|0)!=0}else{b=0}j=c[f>>2]|0;if(!b){break}c[f>>2]=c[j+32>>2]}if((j|0)==0){c[f>>2]=ec(40)|0;if((c[f>>2]|0)==0){c[e>>2]=7;m=c[e>>2]|0;i=h;return m|0}b=(c[f>>2]|0)+0|0;j=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(j|0));m=c[f>>2]|0;c[m+0>>2]=c[d+0>>2];c[m+4>>2]=c[d+4>>2];c[(c[f>>2]|0)+16>>2]=1;c[(c[f>>2]|0)+32>>2]=c[9562];c[(c[f>>2]|0)+36>>2]=0;if((c[9562]|0)!=0){c[(c[9562]|0)+36>>2]=c[f>>2]}c[9562]=c[f>>2]}else{m=(c[f>>2]|0)+16|0;c[m>>2]=(c[m>>2]|0)+1}c[c[g>>2]>>2]=c[f>>2];c[e>>2]=0;m=c[e>>2]|0;i=h;return m|0}function AD(a){a=a|0;var d=0,f=0,g=0,h=0,j=0;d=i;i=i+96|0;g=d;f=d+84|0;h=d+8|0;j=d+4|0;c[f>>2]=a;if((b[(c[f>>2]|0)+18>>1]&256|0)!=0){i=d;return}c[j>>2]=zb[c[37128>>2]&63](c[(c[f>>2]|0)+12>>2]|0,h)|0;if((c[j>>2]|0)!=0){c[g>>2]=c[(c[f>>2]|0)+32>>2];rc(28,38128,g);j=(c[f>>2]|0)+18|0;b[j>>1]=e[j>>1]|0|256;i=d;return}if((c[h+16>>2]|0)==0?(b[(c[f>>2]|0)+18>>1]&32|0)==0:0){c[g>>2]=c[(c[f>>2]|0)+32>>2];rc(28,38152,g);j=(c[f>>2]|0)+18|0;b[j>>1]=e[j>>1]|0|256;i=d;return}a=c[f>>2]|0;if((c[h+16>>2]|0)>>>0>1){c[g>>2]=c[a+32>>2];rc(28,38184,g);j=(c[f>>2]|0)+18|0;b[j>>1]=e[j>>1]|0|256;i=d;return}if((kD(a)|0)==0){i=d;return}c[g>>2]=c[(c[f>>2]|0)+32>>2];rc(28,38216,g);j=(c[f>>2]|0)+18|0;b[j>>1]=e[j>>1]|0|256;i=d;return}function BD(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;e=d+8|0;b=d+4|0;f=d;c[e>>2]=a;c[b>>2]=0;c[f>>2]=c[e>>2];AD(c[f>>2]|0);DD(c[e>>2]|0,0)|0;UC();if((c[(c[f>>2]|0)+8>>2]|0)!=0?(c[(c[(c[f>>2]|0)+8>>2]|0)+24>>2]|0)!=0:0){ID(c[f>>2]|0)}JD(c[f>>2]|0);c[b>>2]=qD(c[e>>2]|0)|0;WC();i=d;return c[b>>2]|0}function CD(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=i;i=i+48|0;g=l+44|0;q=l+40|0;k=l+36|0;h=l+32|0;m=l+28|0;j=l+24|0;o=l+8|0;n=l;c[q>>2]=e;c[k>>2]=f;c[h>>2]=0;c[m>>2]=c[q>>2];c[n>>2]=0;if((d[(c[m>>2]|0)+16>>0]|0|0)>=(c[k>>2]|0)){c[g>>2]=0;q=c[g>>2]|0;i=l;return q|0}UC();c[j>>2]=c[(c[m>>2]|0)+8>>2];do{if((d[(c[m>>2]|0)+16>>0]|0|0)!=(d[(c[j>>2]|0)+12>>0]|0|0)){if((d[(c[j>>2]|0)+12>>0]|0|0)<3?(c[k>>2]|0)<=1:0){p=7;break}c[h>>2]=5}else{p=7}}while(0);a:do{if((p|0)==7){do{if((c[k>>2]|0)==1){if((d[(c[j>>2]|0)+12>>0]|0|0)!=1?(d[(c[j>>2]|0)+12>>0]|0|0)!=2:0){break}a[(c[m>>2]|0)+16>>0]=1;q=(c[j>>2]|0)+8|0;c[q>>2]=(c[q>>2]|0)+1;q=(c[j>>2]|0)+24|0;c[q>>2]=(c[q>>2]|0)+1;break a}}while(0);c[o+8>>2]=1;b[o+2>>1]=0;if((c[k>>2]|0)!=1){if((c[k>>2]|0)==4?(d[(c[m>>2]|0)+16>>0]|0|0)<3:0){p=14}}else{p=14}if((p|0)==14?(b[o>>1]=(c[k>>2]|0)==1?0:1,c[o+4>>2]=c[346],(GD(c[m>>2]|0,o)|0)!=0):0){c[n>>2]=c[(ab()|0)>>2];c[h>>2]=nD(c[n>>2]|0,3850)|0;if((c[h>>2]|0)==5){break}c[(c[m>>2]|0)+20>>2]=c[n>>2];break}do{if((c[k>>2]|0)!=1){if((c[k>>2]|0)==4?(c[(c[j>>2]|0)+8>>2]|0)>1:0){c[h>>2]=5;break}b[o>>1]=1;p=c[346]|0;if((c[k>>2]|0)==2){c[o+4>>2]=p+1;c[o+8>>2]=1}else{c[o+4>>2]=p+2;c[o+8>>2]=510}if((GD(c[m>>2]|0,o)|0)!=0?(c[n>>2]=c[(ab()|0)>>2],c[h>>2]=nD(c[n>>2]|0,3850)|0,(c[h>>2]|0)!=5):0){c[(c[m>>2]|0)+20>>2]=c[n>>2]}}else{c[o+4>>2]=(c[346]|0)+2;c[o+8>>2]=510;if((GD(c[m>>2]|0,o)|0)!=0){c[n>>2]=c[(ab()|0)>>2];c[h>>2]=nD(c[n>>2]|0,3850)|0}c[o+4>>2]=c[346];c[o+8>>2]=1;b[o>>1]=2;if((GD(c[m>>2]|0,o)|0)!=0?(c[h>>2]|0)==0:0){c[n>>2]=c[(ab()|0)>>2];c[h>>2]=2058}if((c[h>>2]|0)==0){a[(c[m>>2]|0)+16>>0]=1;q=(c[j>>2]|0)+24|0;c[q>>2]=(c[q>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;break}if((c[h>>2]|0)==5){break a}c[(c[m>>2]|0)+20>>2]=c[n>>2];break a}}while(0);n=c[k>>2]|0;if((c[h>>2]|0)==0){a[(c[m>>2]|0)+16>>0]=n;a[(c[j>>2]|0)+12>>0]=c[k>>2];break}if((n|0)==4){a[(c[m>>2]|0)+16>>0]=3;a[(c[j>>2]|0)+12>>0]=3}}}while(0);WC();c[g>>2]=c[h>>2];q=c[g>>2]|0;i=l;return q|0}function DD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=FD(c[f>>2]|0,c[e>>2]|0,0)|0;i=d;return a|0}function ED(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+48|0;j=m;o=m+40|0;l=m+36|0;n=m+32|0;k=m+28|0;h=m+24|0;g=m+8|0;c[o>>2]=e;c[l>>2]=f;c[n>>2]=0;c[k>>2]=0;c[h>>2]=c[o>>2];UC();if((d[(c[(c[h>>2]|0)+8>>2]|0)+12>>0]|0)>1){c[k>>2]=1}do{if((c[k>>2]|0)==0?(a[(c[(c[h>>2]|0)+8>>2]|0)+13>>0]|0)==0:0){b[g+2>>1]=0;c[g+4>>2]=(c[346]|0)+1;c[g+8>>2]=1;b[g>>1]=1;e=c[37152>>2]|0;o=c[(c[h>>2]|0)+12>>2]|0;c[j>>2]=g;if((pb[e&15](o,12,j)|0)!=0){c[n>>2]=3594;o=c[(ab()|0)>>2]|0;c[(c[h>>2]|0)+20>>2]=o;break}if((b[g>>1]|0)!=2){c[k>>2]=1}}}while(0);WC();c[c[l>>2]>>2]=c[k>>2];i=m;return c[n>>2]|0}function FD(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+48|0;k=n+44|0;q=n+40|0;l=n+36|0;h=n+28|0;o=n+24|0;p=n+8|0;m=n;c[q>>2]=e;c[l>>2]=f;c[n+32>>2]=g;c[h>>2]=c[q>>2];c[m>>2]=0;if((d[(c[h>>2]|0)+16>>0]|0|0)<=(c[l>>2]|0)){c[k>>2]=0;q=c[k>>2]|0;i=n;return q|0}UC();c[o>>2]=c[(c[h>>2]|0)+8>>2];do{if((d[(c[h>>2]|0)+16>>0]|0|0)>1){if((c[l>>2]|0)==1?(b[p>>1]=0,b[p+2>>1]=0,c[p+4>>2]=(c[346]|0)+2,c[p+8>>2]=510,(GD(c[h>>2]|0,p)|0)!=0):0){c[m>>2]=2314;q=c[(ab()|0)>>2]|0;c[(c[h>>2]|0)+20>>2]=q;break}b[p>>1]=2;b[p+2>>1]=0;c[p+4>>2]=c[346];c[p+8>>2]=2;if((GD(c[h>>2]|0,p)|0)==0){a[(c[o>>2]|0)+12>>0]=1;j=10;break}else{c[m>>2]=2058;q=c[(ab()|0)>>2]|0;c[(c[h>>2]|0)+20>>2]=q;break}}else{j=10}}while(0);if((j|0)==10?(c[l>>2]|0)==0:0){q=(c[o>>2]|0)+8|0;c[q>>2]=(c[q>>2]|0)+ -1;do{if((c[(c[o>>2]|0)+8>>2]|0)==0){b[p>>1]=2;b[p+2>>1]=0;c[p+8>>2]=0;c[p+4>>2]=0;if((GD(c[h>>2]|0,p)|0)==0){a[(c[o>>2]|0)+12>>0]=0;break}else{c[m>>2]=2058;q=c[(ab()|0)>>2]|0;c[(c[h>>2]|0)+20>>2]=q;a[(c[o>>2]|0)+12>>0]=0;a[(c[h>>2]|0)+16>>0]=0;break}}}while(0);q=(c[o>>2]|0)+24|0;c[q>>2]=(c[q>>2]|0)+ -1;if((c[(c[o>>2]|0)+24>>2]|0)==0){HD(c[h>>2]|0)}}WC();if((c[m>>2]|0)==0){a[(c[h>>2]|0)+16>>0]=c[l>>2]}c[k>>2]=c[m>>2];q=c[k>>2]|0;i=n;return q|0}function GD(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+48|0;m=j;h=j+40|0;k=j+36|0;g=j+32|0;l=j+28|0;n=j+24|0;o=j+8|0;c[k>>2]=e;c[g>>2]=f;c[n>>2]=c[(c[k>>2]|0)+8>>2];if((b[(c[k>>2]|0)+18>>1]&1|0)==0?(d[(c[n>>2]|0)+13>>0]|0|0)==0:0){f=9}else{f=3}do{if((f|0)==3){if((b[(c[k>>2]|0)+18>>1]&2|0)==0){if((d[(c[n>>2]|0)+13>>0]|0|0)!=0){c[l>>2]=0;break}b[o+2>>1]=0;c[o+4>>2]=(c[346]|0)+2;c[o+8>>2]=510;b[o>>1]=1;g=c[37152>>2]|0;e=c[(c[k>>2]|0)+12>>2]|0;c[m>>2]=o;c[l>>2]=pb[g&15](e,13,m)|0;if((c[l>>2]|0)>=0){a[(c[n>>2]|0)+13>>0]=1;e=(c[n>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1;break}c[h>>2]=c[l>>2];e=c[h>>2]|0;i=j;return e|0}else{f=9}}}while(0);if((f|0)==9){f=c[37152>>2]|0;e=c[(c[k>>2]|0)+12>>2]|0;c[m>>2]=c[g>>2];c[l>>2]=pb[f&15](e,13,m)|0}c[h>>2]=c[l>>2];e=c[h>>2]|0;i=j;return e|0}function HD(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+12|0;b=d+8|0;e=d+4|0;f=d;c[g>>2]=a;c[b>>2]=c[(c[g>>2]|0)+8>>2];c[e>>2]=c[(c[b>>2]|0)+28>>2];while(1){if((c[e>>2]|0)==0){break}c[f>>2]=c[(c[e>>2]|0)+8>>2];YC(c[g>>2]|0,c[c[e>>2]>>2]|0,25104);gc(c[e>>2]|0);c[e>>2]=c[f>>2]}c[(c[b>>2]|0)+28>>2]=0;i=d;return}function ID(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+8>>2];c[f>>2]=c[(c[d>>2]|0)+28>>2];c[(c[f>>2]|0)+8>>2]=c[(c[e>>2]|0)+28>>2];c[(c[e>>2]|0)+28>>2]=c[f>>2];c[(c[d>>2]|0)+12>>2]=-1;c[(c[d>>2]|0)+28>>2]=0;i=b;return}function JD(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[(c[e>>2]|0)+8>>2];if((c[d>>2]|0)==0){i=b;return}a=(c[d>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+ -1;if((c[(c[d>>2]|0)+16>>2]|0)!=0){i=b;return}HD(c[e>>2]|0);a=c[(c[d>>2]|0)+32>>2]|0;if((c[(c[d>>2]|0)+36>>2]|0)!=0){c[(c[(c[d>>2]|0)+36>>2]|0)+32>>2]=a}else{c[9562]=a}if((c[(c[d>>2]|0)+32>>2]|0)!=0){c[(c[(c[d>>2]|0)+32>>2]|0)+36>>2]=c[(c[d>>2]|0)+36>>2]}gc(c[d>>2]|0);i=b;return}function KD(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 38040}function LD(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b;e=b+8|0;c[e>>2]=a;if((c[c[e>>2]>>2]|0)<=(c[(c[e>>2]|0)+4>>2]|0)){e=d;c[e>>2]=0;c[e+4>>2]=0;e=d;e=c[e>>2]|0;d=d+4|0;d=c[d>>2]|0;D=d;i=b;return e|0}else{f=(c[e>>2]|0)+4|0;a=c[f>>2]|0;c[f>>2]=a+1;a=Id(c[(c[(c[e>>2]|0)+8>>2]|0)+(a<<2)>>2]|0)|0;e=d;c[e>>2]=a;c[e+4>>2]=D;e=d;e=c[e>>2]|0;d=d+4|0;d=c[d>>2]|0;D=d;i=b;return e|0}return 0}function MD(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0;b=i;i=i+16|0;d=b;e=b+8|0;c[e>>2]=a;if((c[c[e>>2]>>2]|0)<=(c[(c[e>>2]|0)+4>>2]|0)){h[d>>3]=0.0;f=+h[d>>3];i=b;return+f}else{g=(c[e>>2]|0)+4|0;a=c[g>>2]|0;c[g>>2]=a+1;h[d>>3]=+Ed(c[(c[(c[e>>2]|0)+8>>2]|0)+(a<<2)>>2]|0);f=+h[d>>3];i=b;return+f}return 0.0}function ND(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;j=e+16|0;l=e+12|0;g=e+8|0;k=e;c[j>>2]=b;c[l>>2]=d;if((c[c[l>>2]>>2]|0)<=0){a[f>>0]=48;b=a[f>>0]|0;i=e;return b|0}else{b=c[l>>2]|0;c[b>>2]=(c[b>>2]|0)+ -1;c[g>>2]=~~+h[c[j>>2]>>3];h[k>>3]=+(c[g>>2]|0);c[g>>2]=(c[g>>2]|0)+48;h[c[j>>2]>>3]=(+h[c[j>>2]>>3]- +h[k>>3])*10.0;a[f>>0]=c[g>>2];b=a[f>>0]|0;i=e;return b|0}return 0}function OD(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;if((c[c[e>>2]>>2]|0)<=(c[(c[e>>2]|0)+4>>2]|0)){c[d>>2]=0;e=c[d>>2]|0;i=b;return e|0}else{f=(c[e>>2]|0)+4|0;a=c[f>>2]|0;c[f>>2]=a+1;c[d>>2]=Bd(c[(c[(c[e>>2]|0)+8>>2]|0)+(a<<2)>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}return 0}function PD(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=b;c[f>>2]=d;if(((c[(c[g>>2]|0)+12>>2]|0)+(c[f>>2]|0)|0)>=(c[(c[g>>2]|0)+16>>2]|0)?(b=Mm(c[g>>2]|0,c[f>>2]|0)|0,c[f>>2]=b,(b|0)<=0):0){i=e;return}while(1){b=c[f>>2]|0;c[f>>2]=b+ -1;if((b|0)<=0){break}d=(c[g>>2]|0)+12|0;b=c[d>>2]|0;c[d>>2]=b+1;a[(c[(c[g>>2]|0)+8>>2]|0)+b>>0]=32}i=e;return}function QD(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;b=i;do{if(a>>>0<245){if(a>>>0<11){a=16}else{a=a+11&-8}v=a>>>3;p=c[9718]|0;w=p>>>v;if((w&3|0)!=0){h=(w&1^1)+v|0;g=h<<1;e=38912+(g<<2)|0;g=38912+(g+2<<2)|0;j=c[g>>2]|0;d=j+8|0;f=c[d>>2]|0;do{if((e|0)!=(f|0)){if(f>>>0<(c[38888>>2]|0)>>>0){gb()}k=f+12|0;if((c[k>>2]|0)==(j|0)){c[k>>2]=e;c[g>>2]=f;break}else{gb()}}else{c[9718]=p&~(1<>2]=H|3;H=j+(H|4)|0;c[H>>2]=c[H>>2]|1;H=d;i=b;return H|0}if(a>>>0>(c[38880>>2]|0)>>>0){if((w|0)!=0){h=2<>>12&16;h=h>>>d;f=h>>>5&8;h=h>>>f;g=h>>>2&4;h=h>>>g;e=h>>>1&2;h=h>>>e;j=h>>>1&1;j=(f|d|g|e|j)+(h>>>j)|0;h=j<<1;e=38912+(h<<2)|0;h=38912+(h+2<<2)|0;g=c[h>>2]|0;d=g+8|0;f=c[d>>2]|0;do{if((e|0)!=(f|0)){if(f>>>0<(c[38888>>2]|0)>>>0){gb()}k=f+12|0;if((c[k>>2]|0)==(g|0)){c[k>>2]=e;c[h>>2]=f;break}else{gb()}}else{c[9718]=p&~(1<>2]=a|3;e=g+a|0;c[g+(a|4)>>2]=f|1;c[g+h>>2]=f;h=c[38880>>2]|0;if((h|0)!=0){g=c[38892>>2]|0;k=h>>>3;j=k<<1;h=38912+(j<<2)|0;l=c[9718]|0;k=1<>2]|0;if(k>>>0<(c[38888>>2]|0)>>>0){gb()}else{D=j;C=k}}else{c[9718]=l|k;D=38912+(j+2<<2)|0;C=h}c[D>>2]=g;c[C+12>>2]=g;c[g+8>>2]=C;c[g+12>>2]=h}c[38880>>2]=f;c[38892>>2]=e;H=d;i=b;return H|0}p=c[38876>>2]|0;if((p|0)!=0){e=(p&0-p)+ -1|0;G=e>>>12&16;e=e>>>G;F=e>>>5&8;e=e>>>F;H=e>>>2&4;e=e>>>H;f=e>>>1&2;e=e>>>f;d=e>>>1&1;d=c[39176+((F|G|H|f|d)+(e>>>d)<<2)>>2]|0;e=(c[d+4>>2]&-8)-a|0;f=d;while(1){g=c[f+16>>2]|0;if((g|0)==0){g=c[f+20>>2]|0;if((g|0)==0){break}}f=(c[g+4>>2]&-8)-a|0;H=f>>>0>>0;e=H?f:e;f=g;d=H?g:d}h=c[38888>>2]|0;if(d>>>0>>0){gb()}f=d+a|0;if(!(d>>>0>>0)){gb()}g=c[d+24>>2]|0;k=c[d+12>>2]|0;do{if((k|0)==(d|0)){k=d+20|0;j=c[k>>2]|0;if((j|0)==0){k=d+16|0;j=c[k>>2]|0;if((j|0)==0){B=0;break}}while(1){l=j+20|0;m=c[l>>2]|0;if((m|0)!=0){j=m;k=l;continue}m=j+16|0;l=c[m>>2]|0;if((l|0)==0){break}else{j=l;k=m}}if(k>>>0>>0){gb()}else{c[k>>2]=0;B=j;break}}else{j=c[d+8>>2]|0;if(j>>>0>>0){gb()}h=j+12|0;if((c[h>>2]|0)!=(d|0)){gb()}l=k+8|0;if((c[l>>2]|0)==(d|0)){c[h>>2]=k;c[l>>2]=j;B=k;break}else{gb()}}}while(0);do{if((g|0)!=0){h=c[d+28>>2]|0;j=39176+(h<<2)|0;if((d|0)==(c[j>>2]|0)){c[j>>2]=B;if((B|0)==0){c[38876>>2]=c[38876>>2]&~(1<>>0<(c[38888>>2]|0)>>>0){gb()}h=g+16|0;if((c[h>>2]|0)==(d|0)){c[h>>2]=B}else{c[g+20>>2]=B}if((B|0)==0){break}}if(B>>>0<(c[38888>>2]|0)>>>0){gb()}c[B+24>>2]=g;g=c[d+16>>2]|0;do{if((g|0)!=0){if(g>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[B+16>>2]=g;c[g+24>>2]=B;break}}}while(0);g=c[d+20>>2]|0;if((g|0)!=0){if(g>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[B+20>>2]=g;c[g+24>>2]=B;break}}}}while(0);if(e>>>0<16){H=e+a|0;c[d+4>>2]=H|3;H=d+(H+4)|0;c[H>>2]=c[H>>2]|1}else{c[d+4>>2]=a|3;c[d+(a|4)>>2]=e|1;c[d+(e+a)>>2]=e;h=c[38880>>2]|0;if((h|0)!=0){g=c[38892>>2]|0;l=h>>>3;j=l<<1;h=38912+(j<<2)|0;k=c[9718]|0;l=1<>2]|0;if(k>>>0<(c[38888>>2]|0)>>>0){gb()}else{A=j;z=k}}else{c[9718]=k|l;A=38912+(j+2<<2)|0;z=h}c[A>>2]=g;c[z+12>>2]=g;c[g+8>>2]=z;c[g+12>>2]=h}c[38880>>2]=e;c[38892>>2]=f}H=d+8|0;i=b;return H|0}}}else{if(!(a>>>0>4294967231)){z=a+11|0;a=z&-8;B=c[38876>>2]|0;if((B|0)!=0){A=0-a|0;z=z>>>8;if((z|0)!=0){if(a>>>0>16777215){C=31}else{G=(z+1048320|0)>>>16&8;H=z<>>16&4;H=H<>>16&2;C=14-(F|G|C)+(H<>>15)|0;C=a>>>(C+7|0)&1|C<<1}}else{C=0}D=c[39176+(C<<2)>>2]|0;a:do{if((D|0)==0){F=0;z=0}else{if((C|0)==31){z=0}else{z=25-(C>>>1)|0}F=0;E=a<>2]&-8;G=H-a|0;if(G>>>0>>0){if((H|0)==(a|0)){A=G;F=D;z=D;break a}else{A=G;z=D}}H=c[D+20>>2]|0;D=c[D+(E>>>31<<2)+16>>2]|0;F=(H|0)==0|(H|0)==(D|0)?F:H;if((D|0)==0){break}else{E=E<<1}}}}while(0);if((F|0)==0&(z|0)==0){H=2<>>12&16;H=H>>>D;C=H>>>5&8;H=H>>>C;E=H>>>2&4;H=H>>>E;G=H>>>1&2;H=H>>>G;F=H>>>1&1;F=c[39176+((C|D|E|G|F)+(H>>>F)<<2)>>2]|0}if((F|0)!=0){while(1){H=(c[F+4>>2]&-8)-a|0;B=H>>>0>>0;A=B?H:A;z=B?F:z;B=c[F+16>>2]|0;if((B|0)!=0){F=B;continue}F=c[F+20>>2]|0;if((F|0)==0){break}}}if((z|0)!=0?A>>>0<((c[38880>>2]|0)-a|0)>>>0:0){f=c[38888>>2]|0;if(z>>>0>>0){gb()}d=z+a|0;if(!(z>>>0>>0)){gb()}e=c[z+24>>2]|0;h=c[z+12>>2]|0;do{if((h|0)==(z|0)){h=z+20|0;g=c[h>>2]|0;if((g|0)==0){h=z+16|0;g=c[h>>2]|0;if((g|0)==0){x=0;break}}while(1){j=g+20|0;k=c[j>>2]|0;if((k|0)!=0){g=k;h=j;continue}j=g+16|0;k=c[j>>2]|0;if((k|0)==0){break}else{g=k;h=j}}if(h>>>0>>0){gb()}else{c[h>>2]=0;x=g;break}}else{g=c[z+8>>2]|0;if(g>>>0>>0){gb()}f=g+12|0;if((c[f>>2]|0)!=(z|0)){gb()}j=h+8|0;if((c[j>>2]|0)==(z|0)){c[f>>2]=h;c[j>>2]=g;x=h;break}else{gb()}}}while(0);do{if((e|0)!=0){g=c[z+28>>2]|0;f=39176+(g<<2)|0;if((z|0)==(c[f>>2]|0)){c[f>>2]=x;if((x|0)==0){c[38876>>2]=c[38876>>2]&~(1<>>0<(c[38888>>2]|0)>>>0){gb()}f=e+16|0;if((c[f>>2]|0)==(z|0)){c[f>>2]=x}else{c[e+20>>2]=x}if((x|0)==0){break}}if(x>>>0<(c[38888>>2]|0)>>>0){gb()}c[x+24>>2]=e;e=c[z+16>>2]|0;do{if((e|0)!=0){if(e>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[x+16>>2]=e;c[e+24>>2]=x;break}}}while(0);e=c[z+20>>2]|0;if((e|0)!=0){if(e>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[x+20>>2]=e;c[e+24>>2]=x;break}}}}while(0);b:do{if(!(A>>>0<16)){c[z+4>>2]=a|3;c[z+(a|4)>>2]=A|1;c[z+(A+a)>>2]=A;f=A>>>3;if(A>>>0<256){h=f<<1;e=38912+(h<<2)|0;g=c[9718]|0;f=1<>2]|0;if(!(g>>>0<(c[38888>>2]|0)>>>0)){w=f;v=g;break}gb()}}while(0);c[w>>2]=d;c[v+12>>2]=d;c[z+(a+8)>>2]=v;c[z+(a+12)>>2]=e;break}e=A>>>8;if((e|0)!=0){if(A>>>0>16777215){e=31}else{G=(e+1048320|0)>>>16&8;H=e<>>16&4;H=H<>>16&2;e=14-(F|G|e)+(H<>>15)|0;e=A>>>(e+7|0)&1|e<<1}}else{e=0}f=39176+(e<<2)|0;c[z+(a+28)>>2]=e;c[z+(a+20)>>2]=0;c[z+(a+16)>>2]=0;h=c[38876>>2]|0;g=1<>2]=h|g;c[f>>2]=d;c[z+(a+24)>>2]=f;c[z+(a+12)>>2]=d;c[z+(a+8)>>2]=d;break}f=c[f>>2]|0;if((e|0)==31){e=0}else{e=25-(e>>>1)|0}c:do{if((c[f+4>>2]&-8|0)!=(A|0)){e=A<>>31<<2)+16|0;h=c[g>>2]|0;if((h|0)==0){break}if((c[h+4>>2]&-8|0)==(A|0)){p=h;break c}else{e=e<<1;f=h}}if(g>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[g>>2]=d;c[z+(a+24)>>2]=f;c[z+(a+12)>>2]=d;c[z+(a+8)>>2]=d;break b}}else{p=f}}while(0);f=p+8|0;e=c[f>>2]|0;g=c[38888>>2]|0;if(p>>>0>>0){gb()}if(e>>>0>>0){gb()}else{c[e+12>>2]=d;c[f>>2]=d;c[z+(a+8)>>2]=e;c[z+(a+12)>>2]=p;c[z+(a+24)>>2]=0;break}}else{H=A+a|0;c[z+4>>2]=H|3;H=z+(H+4)|0;c[H>>2]=c[H>>2]|1}}while(0);H=z+8|0;i=b;return H|0}}}else{a=-1}}}while(0);p=c[38880>>2]|0;if(!(a>>>0>p>>>0)){e=p-a|0;d=c[38892>>2]|0;if(e>>>0>15){c[38892>>2]=d+a;c[38880>>2]=e;c[d+(a+4)>>2]=e|1;c[d+p>>2]=e;c[d+4>>2]=a|3}else{c[38880>>2]=0;c[38892>>2]=0;c[d+4>>2]=p|3;H=d+(p+4)|0;c[H>>2]=c[H>>2]|1}H=d+8|0;i=b;return H|0}p=c[38884>>2]|0;if(a>>>0

>>0){G=p-a|0;c[38884>>2]=G;H=c[38896>>2]|0;c[38896>>2]=H+a;c[H+(a+4)>>2]=G|1;c[H+4>>2]=a|3;H=H+8|0;i=b;return H|0}do{if((c[9836]|0)==0){p=Sa(30)|0;if((p+ -1&p|0)==0){c[39352>>2]=p;c[39348>>2]=p;c[39356>>2]=-1;c[39360>>2]=-1;c[39364>>2]=0;c[39316>>2]=0;c[9836]=(hb(0)|0)&-16^1431655768;break}else{gb()}}}while(0);w=a+48|0;p=c[39352>>2]|0;x=a+47|0;z=p+x|0;p=0-p|0;v=z&p;if(!(v>>>0>a>>>0)){H=0;i=b;return H|0}A=c[39312>>2]|0;if((A|0)!=0?(G=c[39304>>2]|0,H=G+v|0,H>>>0<=G>>>0|H>>>0>A>>>0):0){H=0;i=b;return H|0}d:do{if((c[39316>>2]&4|0)==0){B=c[38896>>2]|0;e:do{if((B|0)!=0){A=39320|0;while(1){C=c[A>>2]|0;if(!(C>>>0>B>>>0)?(y=A+4|0,(C+(c[y>>2]|0)|0)>>>0>B>>>0):0){break}A=c[A+8>>2]|0;if((A|0)==0){o=182;break e}}if((A|0)!=0){B=z-(c[38884>>2]|0)&p;if(B>>>0<2147483647){p=Oa(B|0)|0;A=(p|0)==((c[A>>2]|0)+(c[y>>2]|0)|0);y=p;z=B;p=A?p:-1;A=A?B:0;o=191}else{A=0}}else{o=182}}else{o=182}}while(0);do{if((o|0)==182){p=Oa(0)|0;if((p|0)!=(-1|0)){z=p;A=c[39348>>2]|0;y=A+ -1|0;if((y&z|0)==0){A=v}else{A=v-z+(y+z&0-A)|0}y=c[39304>>2]|0;z=y+A|0;if(A>>>0>a>>>0&A>>>0<2147483647){H=c[39312>>2]|0;if((H|0)!=0?z>>>0<=y>>>0|z>>>0>H>>>0:0){A=0;break}y=Oa(A|0)|0;o=(y|0)==(p|0);z=A;p=o?p:-1;A=o?A:0;o=191}else{A=0}}else{A=0}}}while(0);f:do{if((o|0)==191){o=0-z|0;if((p|0)!=(-1|0)){q=A;o=202;break d}do{if((y|0)!=(-1|0)&z>>>0<2147483647&z>>>0>>0?(u=c[39352>>2]|0,u=x-z+u&0-u,u>>>0<2147483647):0){if((Oa(u|0)|0)==(-1|0)){Oa(o|0)|0;break f}else{z=u+z|0;break}}}while(0);if((y|0)!=(-1|0)){p=y;q=z;o=202;break d}}}while(0);c[39316>>2]=c[39316>>2]|4;o=199}else{A=0;o=199}}while(0);if((((o|0)==199?v>>>0<2147483647:0)?(t=Oa(v|0)|0,s=Oa(0)|0,(s|0)!=(-1|0)&(t|0)!=(-1|0)&t>>>0>>0):0)?(r=s-t|0,q=r>>>0>(a+40|0)>>>0,q):0){p=t;q=q?r:A;o=202}if((o|0)==202){r=(c[39304>>2]|0)+q|0;c[39304>>2]=r;if(r>>>0>(c[39308>>2]|0)>>>0){c[39308>>2]=r}r=c[38896>>2]|0;g:do{if((r|0)!=0){v=39320|0;while(1){t=c[v>>2]|0;u=v+4|0;s=c[u>>2]|0;if((p|0)==(t+s|0)){o=214;break}w=c[v+8>>2]|0;if((w|0)==0){break}else{v=w}}if(((o|0)==214?(c[v+12>>2]&8|0)==0:0)?r>>>0>=t>>>0&r>>>0

>>0:0){c[u>>2]=s+q;d=(c[38884>>2]|0)+q|0;e=r+8|0;if((e&7|0)==0){e=0}else{e=0-e&7}H=d-e|0;c[38896>>2]=r+e;c[38884>>2]=H;c[r+(e+4)>>2]=H|1;c[r+(d+4)>>2]=40;c[38900>>2]=c[39360>>2];break}if(p>>>0<(c[38888>>2]|0)>>>0){c[38888>>2]=p}t=p+q|0;s=39320|0;while(1){if((c[s>>2]|0)==(t|0)){o=224;break}u=c[s+8>>2]|0;if((u|0)==0){break}else{s=u}}if((o|0)==224?(c[s+12>>2]&8|0)==0:0){c[s>>2]=p;h=s+4|0;c[h>>2]=(c[h>>2]|0)+q;h=p+8|0;if((h&7|0)==0){h=0}else{h=0-h&7}j=p+(q+8)|0;if((j&7|0)==0){n=0}else{n=0-j&7}o=p+(n+q)|0;j=h+a|0;k=p+j|0;m=o-(p+h)-a|0;c[p+(h+4)>>2]=a|3;h:do{if((o|0)!=(c[38896>>2]|0)){if((o|0)==(c[38892>>2]|0)){H=(c[38880>>2]|0)+m|0;c[38880>>2]=H;c[38892>>2]=k;c[p+(j+4)>>2]=H|1;c[p+(H+j)>>2]=H;break}r=q+4|0;t=c[p+(r+n)>>2]|0;if((t&3|0)==1){a=t&-8;s=t>>>3;i:do{if(!(t>>>0<256)){l=c[p+((n|24)+q)>>2]|0;u=c[p+(q+12+n)>>2]|0;do{if((u|0)==(o|0)){u=n|16;t=p+(r+u)|0;s=c[t>>2]|0;if((s|0)==0){t=p+(u+q)|0;s=c[t>>2]|0;if((s|0)==0){g=0;break}}while(1){u=s+20|0;v=c[u>>2]|0;if((v|0)!=0){s=v;t=u;continue}u=s+16|0;v=c[u>>2]|0;if((v|0)==0){break}else{s=v;t=u}}if(t>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[t>>2]=0;g=s;break}}else{t=c[p+((n|8)+q)>>2]|0;if(t>>>0<(c[38888>>2]|0)>>>0){gb()}v=t+12|0;if((c[v>>2]|0)!=(o|0)){gb()}s=u+8|0;if((c[s>>2]|0)==(o|0)){c[v>>2]=u;c[s>>2]=t;g=u;break}else{gb()}}}while(0);if((l|0)==0){break}t=c[p+(q+28+n)>>2]|0;s=39176+(t<<2)|0;do{if((o|0)!=(c[s>>2]|0)){if(l>>>0<(c[38888>>2]|0)>>>0){gb()}s=l+16|0;if((c[s>>2]|0)==(o|0)){c[s>>2]=g}else{c[l+20>>2]=g}if((g|0)==0){break i}}else{c[s>>2]=g;if((g|0)!=0){break}c[38876>>2]=c[38876>>2]&~(1<>>0<(c[38888>>2]|0)>>>0){gb()}c[g+24>>2]=l;l=n|16;o=c[p+(l+q)>>2]|0;do{if((o|0)!=0){if(o>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[g+16>>2]=o;c[o+24>>2]=g;break}}}while(0);l=c[p+(r+l)>>2]|0;if((l|0)==0){break}if(l>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[g+20>>2]=l;c[l+24>>2]=g;break}}else{r=c[p+((n|8)+q)>>2]|0;g=c[p+(q+12+n)>>2]|0;t=38912+(s<<1<<2)|0;do{if((r|0)!=(t|0)){if(r>>>0<(c[38888>>2]|0)>>>0){gb()}if((c[r+12>>2]|0)==(o|0)){break}gb()}}while(0);if((g|0)==(r|0)){c[9718]=c[9718]&~(1<>>0<(c[38888>>2]|0)>>>0){gb()}s=g+8|0;if((c[s>>2]|0)==(o|0)){l=s;break}gb()}}while(0);c[r+12>>2]=g;c[l>>2]=r}}while(0);o=p+((a|n)+q)|0;m=a+m|0}g=o+4|0;c[g>>2]=c[g>>2]&-2;c[p+(j+4)>>2]=m|1;c[p+(m+j)>>2]=m;g=m>>>3;if(m>>>0<256){m=g<<1;d=38912+(m<<2)|0;l=c[9718]|0;g=1<>2]|0;if(!(g>>>0<(c[38888>>2]|0)>>>0)){f=l;e=g;break}gb()}}while(0);c[f>>2]=k;c[e+12>>2]=k;c[p+(j+8)>>2]=e;c[p+(j+12)>>2]=d;break}e=m>>>8;do{if((e|0)==0){e=0}else{if(m>>>0>16777215){e=31;break}G=(e+1048320|0)>>>16&8;H=e<>>16&4;H=H<>>16&2;e=14-(F|G|e)+(H<>>15)|0;e=m>>>(e+7|0)&1|e<<1}}while(0);l=39176+(e<<2)|0;c[p+(j+28)>>2]=e;c[p+(j+20)>>2]=0;c[p+(j+16)>>2]=0;f=c[38876>>2]|0;g=1<>2]=f|g;c[l>>2]=k;c[p+(j+24)>>2]=l;c[p+(j+12)>>2]=k;c[p+(j+8)>>2]=k;break}l=c[l>>2]|0;if((e|0)==31){e=0}else{e=25-(e>>>1)|0}j:do{if((c[l+4>>2]&-8|0)!=(m|0)){e=m<>>31<<2)+16|0;f=c[g>>2]|0;if((f|0)==0){break}if((c[f+4>>2]&-8|0)==(m|0)){d=f;break j}else{e=e<<1;l=f}}if(g>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[g>>2]=k;c[p+(j+24)>>2]=l;c[p+(j+12)>>2]=k;c[p+(j+8)>>2]=k;break h}}else{d=l}}while(0);f=d+8|0;e=c[f>>2]|0;g=c[38888>>2]|0;if(d>>>0>>0){gb()}if(e>>>0>>0){gb()}else{c[e+12>>2]=k;c[f>>2]=k;c[p+(j+8)>>2]=e;c[p+(j+12)>>2]=d;c[p+(j+24)>>2]=0;break}}else{H=(c[38884>>2]|0)+m|0;c[38884>>2]=H;c[38896>>2]=k;c[p+(j+4)>>2]=H|1}}while(0);H=p+(h|8)|0;i=b;return H|0}e=39320|0;while(1){d=c[e>>2]|0;if(!(d>>>0>r>>>0)?(n=c[e+4>>2]|0,m=d+n|0,m>>>0>r>>>0):0){break}e=c[e+8>>2]|0}e=d+(n+ -39)|0;if((e&7|0)==0){e=0}else{e=0-e&7}d=d+(n+ -47+e)|0;d=d>>>0<(r+16|0)>>>0?r:d;e=d+8|0;f=p+8|0;if((f&7|0)==0){f=0}else{f=0-f&7}H=q+ -40-f|0;c[38896>>2]=p+f;c[38884>>2]=H;c[p+(f+4)>>2]=H|1;c[p+(q+ -36)>>2]=40;c[38900>>2]=c[39360>>2];c[d+4>>2]=27;c[e+0>>2]=c[39320>>2];c[e+4>>2]=c[39324>>2];c[e+8>>2]=c[39328>>2];c[e+12>>2]=c[39332>>2];c[39320>>2]=p;c[39324>>2]=q;c[39332>>2]=0;c[39328>>2]=e;e=d+28|0;c[e>>2]=7;if((d+32|0)>>>0>>0){do{H=e;e=e+4|0;c[e>>2]=7}while((H+8|0)>>>0>>0)}if((d|0)!=(r|0)){d=d-r|0;e=r+(d+4)|0;c[e>>2]=c[e>>2]&-2;c[r+4>>2]=d|1;c[r+d>>2]=d;e=d>>>3;if(d>>>0<256){g=e<<1;d=38912+(g<<2)|0;f=c[9718]|0;e=1<>2]|0;if(!(e>>>0<(c[38888>>2]|0)>>>0)){k=f;j=e;break}gb()}}while(0);c[k>>2]=r;c[j+12>>2]=r;c[r+8>>2]=j;c[r+12>>2]=d;break}e=d>>>8;if((e|0)!=0){if(d>>>0>16777215){e=31}else{G=(e+1048320|0)>>>16&8;H=e<>>16&4;H=H<>>16&2;e=14-(F|G|e)+(H<>>15)|0;e=d>>>(e+7|0)&1|e<<1}}else{e=0}j=39176+(e<<2)|0;c[r+28>>2]=e;c[r+20>>2]=0;c[r+16>>2]=0;f=c[38876>>2]|0;g=1<>2]=f|g;c[j>>2]=r;c[r+24>>2]=j;c[r+12>>2]=r;c[r+8>>2]=r;break}f=c[j>>2]|0;if((e|0)==31){e=0}else{e=25-(e>>>1)|0}k:do{if((c[f+4>>2]&-8|0)!=(d|0)){e=d<>>31<<2)+16|0;g=c[j>>2]|0;if((g|0)==0){break}if((c[g+4>>2]&-8|0)==(d|0)){h=g;break k}else{e=e<<1;f=g}}if(j>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[j>>2]=r;c[r+24>>2]=f;c[r+12>>2]=r;c[r+8>>2]=r;break g}}else{h=f}}while(0);f=h+8|0;e=c[f>>2]|0;d=c[38888>>2]|0;if(h>>>0>>0){gb()}if(e>>>0>>0){gb()}else{c[e+12>>2]=r;c[f>>2]=r;c[r+8>>2]=e;c[r+12>>2]=h;c[r+24>>2]=0;break}}}else{H=c[38888>>2]|0;if((H|0)==0|p>>>0>>0){c[38888>>2]=p}c[39320>>2]=p;c[39324>>2]=q;c[39332>>2]=0;c[38908>>2]=c[9836];c[38904>>2]=-1;d=0;do{H=d<<1;G=38912+(H<<2)|0;c[38912+(H+3<<2)>>2]=G;c[38912+(H+2<<2)>>2]=G;d=d+1|0}while((d|0)!=32);d=p+8|0;if((d&7|0)==0){d=0}else{d=0-d&7}H=q+ -40-d|0;c[38896>>2]=p+d;c[38884>>2]=H;c[p+(d+4)>>2]=H|1;c[p+(q+ -36)>>2]=40;c[38900>>2]=c[39360>>2]}}while(0);d=c[38884>>2]|0;if(d>>>0>a>>>0){G=d-a|0;c[38884>>2]=G;H=c[38896>>2]|0;c[38896>>2]=H+a;c[H+(a+4)>>2]=G|1;c[H+4>>2]=a|3;H=H+8|0;i=b;return H|0}}c[(ab()|0)>>2]=12;H=0;i=b;return H|0}function RD(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=i;if((a|0)==0){i=b;return}q=a+ -8|0;r=c[38888>>2]|0;if(q>>>0>>0){gb()}o=c[a+ -4>>2]|0;n=o&3;if((n|0)==1){gb()}j=o&-8;h=a+(j+ -8)|0;do{if((o&1|0)==0){u=c[q>>2]|0;if((n|0)==0){i=b;return}q=-8-u|0;o=a+q|0;n=u+j|0;if(o>>>0>>0){gb()}if((o|0)==(c[38892>>2]|0)){d=a+(j+ -4)|0;if((c[d>>2]&3|0)!=3){d=o;m=n;break}c[38880>>2]=n;c[d>>2]=c[d>>2]&-2;c[a+(q+4)>>2]=n|1;c[h>>2]=n;i=b;return}t=u>>>3;if(u>>>0<256){d=c[a+(q+8)>>2]|0;m=c[a+(q+12)>>2]|0;p=38912+(t<<1<<2)|0;if((d|0)!=(p|0)){if(d>>>0>>0){gb()}if((c[d+12>>2]|0)!=(o|0)){gb()}}if((m|0)==(d|0)){c[9718]=c[9718]&~(1<>>0>>0){gb()}p=m+8|0;if((c[p>>2]|0)==(o|0)){s=p}else{gb()}}else{s=m+8|0}c[d+12>>2]=m;c[s>>2]=d;d=o;m=n;break}s=c[a+(q+24)>>2]|0;t=c[a+(q+12)>>2]|0;do{if((t|0)==(o|0)){u=a+(q+20)|0;t=c[u>>2]|0;if((t|0)==0){u=a+(q+16)|0;t=c[u>>2]|0;if((t|0)==0){p=0;break}}while(1){w=t+20|0;v=c[w>>2]|0;if((v|0)!=0){t=v;u=w;continue}v=t+16|0;w=c[v>>2]|0;if((w|0)==0){break}else{t=w;u=v}}if(u>>>0>>0){gb()}else{c[u>>2]=0;p=t;break}}else{u=c[a+(q+8)>>2]|0;if(u>>>0>>0){gb()}r=u+12|0;if((c[r>>2]|0)!=(o|0)){gb()}v=t+8|0;if((c[v>>2]|0)==(o|0)){c[r>>2]=t;c[v>>2]=u;p=t;break}else{gb()}}}while(0);if((s|0)!=0){t=c[a+(q+28)>>2]|0;r=39176+(t<<2)|0;if((o|0)==(c[r>>2]|0)){c[r>>2]=p;if((p|0)==0){c[38876>>2]=c[38876>>2]&~(1<>>0<(c[38888>>2]|0)>>>0){gb()}r=s+16|0;if((c[r>>2]|0)==(o|0)){c[r>>2]=p}else{c[s+20>>2]=p}if((p|0)==0){d=o;m=n;break}}if(p>>>0<(c[38888>>2]|0)>>>0){gb()}c[p+24>>2]=s;r=c[a+(q+16)>>2]|0;do{if((r|0)!=0){if(r>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[p+16>>2]=r;c[r+24>>2]=p;break}}}while(0);q=c[a+(q+20)>>2]|0;if((q|0)!=0){if(q>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[p+20>>2]=q;c[q+24>>2]=p;d=o;m=n;break}}else{d=o;m=n}}else{d=o;m=n}}else{d=q;m=j}}while(0);if(!(d>>>0>>0)){gb()}n=a+(j+ -4)|0;o=c[n>>2]|0;if((o&1|0)==0){gb()}if((o&2|0)==0){if((h|0)==(c[38896>>2]|0)){w=(c[38884>>2]|0)+m|0;c[38884>>2]=w;c[38896>>2]=d;c[d+4>>2]=w|1;if((d|0)!=(c[38892>>2]|0)){i=b;return}c[38892>>2]=0;c[38880>>2]=0;i=b;return}if((h|0)==(c[38892>>2]|0)){w=(c[38880>>2]|0)+m|0;c[38880>>2]=w;c[38892>>2]=d;c[d+4>>2]=w|1;c[d+w>>2]=w;i=b;return}m=(o&-8)+m|0;n=o>>>3;do{if(!(o>>>0<256)){l=c[a+(j+16)>>2]|0;q=c[a+(j|4)>>2]|0;do{if((q|0)==(h|0)){o=a+(j+12)|0;n=c[o>>2]|0;if((n|0)==0){o=a+(j+8)|0;n=c[o>>2]|0;if((n|0)==0){k=0;break}}while(1){p=n+20|0;q=c[p>>2]|0;if((q|0)!=0){n=q;o=p;continue}p=n+16|0;q=c[p>>2]|0;if((q|0)==0){break}else{n=q;o=p}}if(o>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[o>>2]=0;k=n;break}}else{o=c[a+j>>2]|0;if(o>>>0<(c[38888>>2]|0)>>>0){gb()}p=o+12|0;if((c[p>>2]|0)!=(h|0)){gb()}n=q+8|0;if((c[n>>2]|0)==(h|0)){c[p>>2]=q;c[n>>2]=o;k=q;break}else{gb()}}}while(0);if((l|0)!=0){n=c[a+(j+20)>>2]|0;o=39176+(n<<2)|0;if((h|0)==(c[o>>2]|0)){c[o>>2]=k;if((k|0)==0){c[38876>>2]=c[38876>>2]&~(1<>>0<(c[38888>>2]|0)>>>0){gb()}n=l+16|0;if((c[n>>2]|0)==(h|0)){c[n>>2]=k}else{c[l+20>>2]=k}if((k|0)==0){break}}if(k>>>0<(c[38888>>2]|0)>>>0){gb()}c[k+24>>2]=l;h=c[a+(j+8)>>2]|0;do{if((h|0)!=0){if(h>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[k+16>>2]=h;c[h+24>>2]=k;break}}}while(0);h=c[a+(j+12)>>2]|0;if((h|0)!=0){if(h>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[k+20>>2]=h;c[h+24>>2]=k;break}}}}else{k=c[a+j>>2]|0;a=c[a+(j|4)>>2]|0;j=38912+(n<<1<<2)|0;if((k|0)!=(j|0)){if(k>>>0<(c[38888>>2]|0)>>>0){gb()}if((c[k+12>>2]|0)!=(h|0)){gb()}}if((a|0)==(k|0)){c[9718]=c[9718]&~(1<>>0<(c[38888>>2]|0)>>>0){gb()}j=a+8|0;if((c[j>>2]|0)==(h|0)){l=j}else{gb()}}else{l=a+8|0}c[k+12>>2]=a;c[l>>2]=k}}while(0);c[d+4>>2]=m|1;c[d+m>>2]=m;if((d|0)==(c[38892>>2]|0)){c[38880>>2]=m;i=b;return}}else{c[n>>2]=o&-2;c[d+4>>2]=m|1;c[d+m>>2]=m}h=m>>>3;if(m>>>0<256){a=h<<1;e=38912+(a<<2)|0;j=c[9718]|0;h=1<>2]|0;if(a>>>0<(c[38888>>2]|0)>>>0){gb()}else{f=h;g=a}}else{c[9718]=j|h;f=38912+(a+2<<2)|0;g=e}c[f>>2]=d;c[g+12>>2]=d;c[d+8>>2]=g;c[d+12>>2]=e;i=b;return}f=m>>>8;if((f|0)!=0){if(m>>>0>16777215){f=31}else{v=(f+1048320|0)>>>16&8;w=f<>>16&4;w=w<>>16&2;f=14-(u|v|f)+(w<>>15)|0;f=m>>>(f+7|0)&1|f<<1}}else{f=0}g=39176+(f<<2)|0;c[d+28>>2]=f;c[d+20>>2]=0;c[d+16>>2]=0;a=c[38876>>2]|0;h=1<>2]|0;if((f|0)==31){f=0}else{f=25-(f>>>1)|0}b:do{if((c[g+4>>2]&-8|0)!=(m|0)){f=m<>>31<<2)+16|0;g=c[h>>2]|0;if((g|0)==0){break}if((c[g+4>>2]&-8|0)==(m|0)){e=g;break b}else{f=f<<1;a=g}}if(h>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[h>>2]=d;c[d+24>>2]=a;c[d+12>>2]=d;c[d+8>>2]=d;break a}}else{e=g}}while(0);g=e+8|0;f=c[g>>2]|0;h=c[38888>>2]|0;if(e>>>0>>0){gb()}if(f>>>0>>0){gb()}else{c[f+12>>2]=d;c[g>>2]=d;c[d+8>>2]=f;c[d+12>>2]=e;c[d+24>>2]=0;break}}else{c[38876>>2]=a|h;c[g>>2]=d;c[d+24>>2]=g;c[d+12>>2]=d;c[d+8>>2]=d}}while(0);w=(c[38904>>2]|0)+ -1|0;c[38904>>2]=w;if((w|0)==0){d=39328|0}else{i=b;return}while(1){d=c[d>>2]|0;if((d|0)==0){break}else{d=d+8|0}}c[38904>>2]=-1;i=b;return}function SD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;do{if((a|0)!=0){if(b>>>0>4294967231){c[(ab()|0)>>2]=12;e=0;break}if(b>>>0<11){e=16}else{e=b+11&-8}e=TD(a+ -8|0,e)|0;if((e|0)!=0){e=e+8|0;break}e=QD(b)|0;if((e|0)==0){e=0}else{f=c[a+ -4>>2]|0;f=(f&-8)-((f&3|0)==0?8:4)|0;dE(e|0,a|0,(f>>>0>>0?f:b)|0)|0;RD(a)}}else{e=QD(b)|0}}while(0);i=d;return e|0}function TD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;e=a+4|0;g=c[e>>2]|0;j=g&-8;f=a+j|0;l=c[38888>>2]|0;if(a>>>0>>0){gb()}n=g&3;if(!((n|0)!=1&a>>>0>>0)){gb()}h=a+(j|4)|0;o=c[h>>2]|0;if((o&1|0)==0){gb()}if((n|0)==0){if(b>>>0<256){q=0;i=d;return q|0}if(!(j>>>0<(b+4|0)>>>0)?!((j-b|0)>>>0>c[39352>>2]<<1>>>0):0){q=a;i=d;return q|0}q=0;i=d;return q|0}if(!(j>>>0>>0)){f=j-b|0;if(!(f>>>0>15)){q=a;i=d;return q|0}c[e>>2]=g&1|b|2;c[a+(b+4)>>2]=f|3;c[h>>2]=c[h>>2]|1;UD(a+b|0,f);q=a;i=d;return q|0}if((f|0)==(c[38896>>2]|0)){f=(c[38884>>2]|0)+j|0;if(!(f>>>0>b>>>0)){q=0;i=d;return q|0}q=f-b|0;c[e>>2]=g&1|b|2;c[a+(b+4)>>2]=q|1;c[38896>>2]=a+b;c[38884>>2]=q;q=a;i=d;return q|0}if((f|0)==(c[38892>>2]|0)){h=(c[38880>>2]|0)+j|0;if(h>>>0>>0){q=0;i=d;return q|0}f=h-b|0;if(f>>>0>15){c[e>>2]=g&1|b|2;c[a+(b+4)>>2]=f|1;c[a+h>>2]=f;q=a+(h+4)|0;c[q>>2]=c[q>>2]&-2;b=a+b|0}else{c[e>>2]=g&1|h|2;b=a+(h+4)|0;c[b>>2]=c[b>>2]|1;b=0;f=0}c[38880>>2]=f;c[38892>>2]=b;q=a;i=d;return q|0}if((o&2|0)!=0){q=0;i=d;return q|0}h=(o&-8)+j|0;if(h>>>0>>0){q=0;i=d;return q|0}g=h-b|0;n=o>>>3;do{if(!(o>>>0<256)){m=c[a+(j+24)>>2]|0;o=c[a+(j+12)>>2]|0;do{if((o|0)==(f|0)){o=a+(j+20)|0;n=c[o>>2]|0;if((n|0)==0){o=a+(j+16)|0;n=c[o>>2]|0;if((n|0)==0){k=0;break}}while(1){q=n+20|0;p=c[q>>2]|0;if((p|0)!=0){n=p;o=q;continue}q=n+16|0;p=c[q>>2]|0;if((p|0)==0){break}else{n=p;o=q}}if(o>>>0>>0){gb()}else{c[o>>2]=0;k=n;break}}else{n=c[a+(j+8)>>2]|0;if(n>>>0>>0){gb()}p=n+12|0;if((c[p>>2]|0)!=(f|0)){gb()}l=o+8|0;if((c[l>>2]|0)==(f|0)){c[p>>2]=o;c[l>>2]=n;k=o;break}else{gb()}}}while(0);if((m|0)!=0){l=c[a+(j+28)>>2]|0;n=39176+(l<<2)|0;if((f|0)==(c[n>>2]|0)){c[n>>2]=k;if((k|0)==0){c[38876>>2]=c[38876>>2]&~(1<>>0<(c[38888>>2]|0)>>>0){gb()}l=m+16|0;if((c[l>>2]|0)==(f|0)){c[l>>2]=k}else{c[m+20>>2]=k}if((k|0)==0){break}}if(k>>>0<(c[38888>>2]|0)>>>0){gb()}c[k+24>>2]=m;f=c[a+(j+16)>>2]|0;do{if((f|0)!=0){if(f>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[k+16>>2]=f;c[f+24>>2]=k;break}}}while(0);f=c[a+(j+20)>>2]|0;if((f|0)!=0){if(f>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[k+20>>2]=f;c[f+24>>2]=k;break}}}}else{k=c[a+(j+8)>>2]|0;j=c[a+(j+12)>>2]|0;o=38912+(n<<1<<2)|0;if((k|0)!=(o|0)){if(k>>>0>>0){gb()}if((c[k+12>>2]|0)!=(f|0)){gb()}}if((j|0)==(k|0)){c[9718]=c[9718]&~(1<>>0>>0){gb()}l=j+8|0;if((c[l>>2]|0)==(f|0)){m=l}else{gb()}}else{m=j+8|0}c[k+12>>2]=j;c[m>>2]=k}}while(0);if(g>>>0<16){c[e>>2]=h|c[e>>2]&1|2;q=a+(h|4)|0;c[q>>2]=c[q>>2]|1;q=a;i=d;return q|0}else{c[e>>2]=c[e>>2]&1|b|2;c[a+(b+4)>>2]=g|3;q=a+(h|4)|0;c[q>>2]=c[q>>2]|1;UD(a+b|0,g);q=a;i=d;return q|0}return 0}function UD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=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;d=i;h=a+b|0;l=c[a+4>>2]|0;do{if((l&1|0)==0){p=c[a>>2]|0;if((l&3|0)==0){i=d;return}l=a+(0-p)|0;m=p+b|0;q=c[38888>>2]|0;if(l>>>0>>0){gb()}if((l|0)==(c[38892>>2]|0)){e=a+(b+4)|0;if((c[e>>2]&3|0)!=3){e=l;n=m;break}c[38880>>2]=m;c[e>>2]=c[e>>2]&-2;c[a+(4-p)>>2]=m|1;c[h>>2]=m;i=d;return}s=p>>>3;if(p>>>0<256){e=c[a+(8-p)>>2]|0;n=c[a+(12-p)>>2]|0;o=38912+(s<<1<<2)|0;if((e|0)!=(o|0)){if(e>>>0>>0){gb()}if((c[e+12>>2]|0)!=(l|0)){gb()}}if((n|0)==(e|0)){c[9718]=c[9718]&~(1<>>0>>0){gb()}o=n+8|0;if((c[o>>2]|0)==(l|0)){r=o}else{gb()}}else{r=n+8|0}c[e+12>>2]=n;c[r>>2]=e;e=l;n=m;break}r=c[a+(24-p)>>2]|0;t=c[a+(12-p)>>2]|0;do{if((t|0)==(l|0)){u=16-p|0;t=a+(u+4)|0;s=c[t>>2]|0;if((s|0)==0){t=a+u|0;s=c[t>>2]|0;if((s|0)==0){o=0;break}}while(1){u=s+20|0;v=c[u>>2]|0;if((v|0)!=0){s=v;t=u;continue}v=s+16|0;u=c[v>>2]|0;if((u|0)==0){break}else{s=u;t=v}}if(t>>>0>>0){gb()}else{c[t>>2]=0;o=s;break}}else{s=c[a+(8-p)>>2]|0;if(s>>>0>>0){gb()}u=s+12|0;if((c[u>>2]|0)!=(l|0)){gb()}q=t+8|0;if((c[q>>2]|0)==(l|0)){c[u>>2]=t;c[q>>2]=s;o=t;break}else{gb()}}}while(0);if((r|0)!=0){q=c[a+(28-p)>>2]|0;s=39176+(q<<2)|0;if((l|0)==(c[s>>2]|0)){c[s>>2]=o;if((o|0)==0){c[38876>>2]=c[38876>>2]&~(1<>>0<(c[38888>>2]|0)>>>0){gb()}q=r+16|0;if((c[q>>2]|0)==(l|0)){c[q>>2]=o}else{c[r+20>>2]=o}if((o|0)==0){e=l;n=m;break}}if(o>>>0<(c[38888>>2]|0)>>>0){gb()}c[o+24>>2]=r;p=16-p|0;q=c[a+p>>2]|0;do{if((q|0)!=0){if(q>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[o+16>>2]=q;c[q+24>>2]=o;break}}}while(0);p=c[a+(p+4)>>2]|0;if((p|0)!=0){if(p>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[o+20>>2]=p;c[p+24>>2]=o;e=l;n=m;break}}else{e=l;n=m}}else{e=l;n=m}}else{e=a;n=b}}while(0);l=c[38888>>2]|0;if(h>>>0>>0){gb()}m=a+(b+4)|0;o=c[m>>2]|0;if((o&2|0)==0){if((h|0)==(c[38896>>2]|0)){v=(c[38884>>2]|0)+n|0;c[38884>>2]=v;c[38896>>2]=e;c[e+4>>2]=v|1;if((e|0)!=(c[38892>>2]|0)){i=d;return}c[38892>>2]=0;c[38880>>2]=0;i=d;return}if((h|0)==(c[38892>>2]|0)){v=(c[38880>>2]|0)+n|0;c[38880>>2]=v;c[38892>>2]=e;c[e+4>>2]=v|1;c[e+v>>2]=v;i=d;return}n=(o&-8)+n|0;m=o>>>3;do{if(!(o>>>0<256)){k=c[a+(b+24)>>2]|0;m=c[a+(b+12)>>2]|0;do{if((m|0)==(h|0)){o=a+(b+20)|0;m=c[o>>2]|0;if((m|0)==0){o=a+(b+16)|0;m=c[o>>2]|0;if((m|0)==0){j=0;break}}while(1){q=m+20|0;p=c[q>>2]|0;if((p|0)!=0){m=p;o=q;continue}p=m+16|0;q=c[p>>2]|0;if((q|0)==0){break}else{m=q;o=p}}if(o>>>0>>0){gb()}else{c[o>>2]=0;j=m;break}}else{o=c[a+(b+8)>>2]|0;if(o>>>0>>0){gb()}l=o+12|0;if((c[l>>2]|0)!=(h|0)){gb()}p=m+8|0;if((c[p>>2]|0)==(h|0)){c[l>>2]=m;c[p>>2]=o;j=m;break}else{gb()}}}while(0);if((k|0)!=0){l=c[a+(b+28)>>2]|0;m=39176+(l<<2)|0;if((h|0)==(c[m>>2]|0)){c[m>>2]=j;if((j|0)==0){c[38876>>2]=c[38876>>2]&~(1<>>0<(c[38888>>2]|0)>>>0){gb()}l=k+16|0;if((c[l>>2]|0)==(h|0)){c[l>>2]=j}else{c[k+20>>2]=j}if((j|0)==0){break}}if(j>>>0<(c[38888>>2]|0)>>>0){gb()}c[j+24>>2]=k;h=c[a+(b+16)>>2]|0;do{if((h|0)!=0){if(h>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[j+16>>2]=h;c[h+24>>2]=j;break}}}while(0);h=c[a+(b+20)>>2]|0;if((h|0)!=0){if(h>>>0<(c[38888>>2]|0)>>>0){gb()}else{c[j+20>>2]=h;c[h+24>>2]=j;break}}}}else{j=c[a+(b+8)>>2]|0;a=c[a+(b+12)>>2]|0;b=38912+(m<<1<<2)|0;if((j|0)!=(b|0)){if(j>>>0>>0){gb()}if((c[j+12>>2]|0)!=(h|0)){gb()}}if((a|0)==(j|0)){c[9718]=c[9718]&~(1<>>0>>0){gb()}b=a+8|0;if((c[b>>2]|0)==(h|0)){k=b}else{gb()}}else{k=a+8|0}c[j+12>>2]=a;c[k>>2]=j}}while(0);c[e+4>>2]=n|1;c[e+n>>2]=n;if((e|0)==(c[38892>>2]|0)){c[38880>>2]=n;i=d;return}}else{c[m>>2]=o&-2;c[e+4>>2]=n|1;c[e+n>>2]=n}a=n>>>3;if(n>>>0<256){b=a<<1;h=38912+(b<<2)|0;j=c[9718]|0;a=1<>2]|0;if(a>>>0<(c[38888>>2]|0)>>>0){gb()}else{g=b;f=a}}else{c[9718]=j|a;g=38912+(b+2<<2)|0;f=h}c[g>>2]=e;c[f+12>>2]=e;c[e+8>>2]=f;c[e+12>>2]=h;i=d;return}f=n>>>8;if((f|0)!=0){if(n>>>0>16777215){f=31}else{u=(f+1048320|0)>>>16&8;v=f<>>16&4;v=v<>>16&2;f=14-(t|u|f)+(v<>>15)|0;f=n>>>(f+7|0)&1|f<<1}}else{f=0}a=39176+(f<<2)|0;c[e+28>>2]=f;c[e+20>>2]=0;c[e+16>>2]=0;h=c[38876>>2]|0;g=1<>2]=h|g;c[a>>2]=e;c[e+24>>2]=a;c[e+12>>2]=e;c[e+8>>2]=e;i=d;return}g=c[a>>2]|0;if((f|0)==31){f=0}else{f=25-(f>>>1)|0}a:do{if((c[g+4>>2]&-8|0)!=(n|0)){f=n<>>31<<2)+16|0;g=c[h>>2]|0;if((g|0)==0){break}if((c[g+4>>2]&-8|0)==(n|0)){break a}else{f=f<<1;a=g}}if(h>>>0<(c[38888>>2]|0)>>>0){gb()}c[h>>2]=e;c[e+24>>2]=a;c[e+12>>2]=e;c[e+8>>2]=e;i=d;return}}while(0);f=g+8|0;a=c[f>>2]|0;h=c[38888>>2]|0;if(g>>>0>>0){gb()}if(a>>>0>>0){gb()}c[a+12>>2]=e;c[f>>2]=e;c[e+8>>2]=a;c[e+12>>2]=g;c[e+24>>2]=0;i=d;return}function VD(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=i;a:do{if((d|0)==0){d=0}else{while(1){f=a[b>>0]|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>>24)){break}d=d+ -1|0;if((d|0)==0){d=0;break a}else{b=b+1|0;c=c+1|0}}d=(f&255)-(g&255)|0}}while(0);i=e;return d|0}function WD(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;d=i;f=a[b>>0]|0;e=a[c>>0]|0;if((f<<24>>24==0?1:f<<24>>24!=e<<24>>24)|e<<24>>24==0){c=f;f=e;e=c&255;f=f&255;f=e-f|0;i=d;return f|0}do{b=b+1|0;c=c+1|0;f=a[b>>0]|0;e=a[c>>0]|0}while(!((f<<24>>24==0?1:f<<24>>24!=e<<24>>24)|e<<24>>24==0));c=f&255;f=e&255;f=c-f|0;i=d;return f|0}function XD(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;f=i;if((e|0)==0){b=0;i=f;return b|0}g=a[b>>0]|0;a:do{if(g<<24>>24==0){g=0}else{while(1){e=e+ -1|0;h=a[c>>0]|0;if(!((e|0)!=0&h<<24>>24!=0&g<<24>>24==h<<24>>24)){break a}b=b+1|0;c=c+1|0;g=a[b>>0]|0;if(g<<24>>24==0){g=0;break}}}}while(0);h=(g&255)-(d[c>>0]|0)|0;i=f;return h|0}function YD(){}function ZD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=b-d-(c>>>0>a>>>0|0)>>>0;return(D=b,a-c>>>0|0)|0}function _D(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+e|0;if((e|0)>=20){d=d&255;i=b&3;h=d|d<<8|d<<16|d<<24;g=f&~3;if(i){i=b+4-i|0;while((b|0)<(i|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=h;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return b-e|0}function $D(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b<>>32-c;return a<>0]|0){c=c+1|0}return c-b|0}function bE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return(D=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function cE(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b>>>c;return a>>>c|(b&(1<>>c-32|0}function dE(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=4096)return Qa(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if((e|0)==0)return f|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}while((e|0)>=4){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0;e=e-4|0}}while((e|0)>0){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}return f|0}function eE(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else{dE(b,c,d)|0}return b|0}function fE(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b>>c;return a>>>c|(b&(1<>c-32|0}function gE(b){b=b|0;var c=0;c=a[n+(b>>>24)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+16|0;return(a[n+(b&255)>>0]|0)+24|0}function hE(b){b=b|0;var c=0;c=a[m+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[m+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[m+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return(a[m+(b>>>24)>>0]|0)+24|0}function iE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;d=b&65535;c=$(d,f)|0;e=a>>>16;d=(c>>>16)+($(d,e)|0)|0;b=b>>>16;a=$(b,f)|0;return(D=(d>>>16)+($(b,e)|0)+(((d&65535)+a|0)>>>16)|0,d+a<<16|c&65535|0)|0}function jE(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;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=ZD(j^a,i^b,j,i)|0;g=D;b=f^j;a=e^i;a=ZD((oE(h,g,ZD(f^c,e^d,f,e)|0,D,0)|0)^b,D^a,b,a)|0;return a|0} - - - -function Uj(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+48|0;g=k+24|0;j=k+20|0;o=k+16|0;h=k+12|0;l=k+8|0;m=k;n=k+40|0;f=k+28|0;c[j>>2]=b;c[o>>2]=e;c[h>>2]=Zj(c[j>>2]|0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}do{if((a[(c[j>>2]|0)+7>>0]|0)==0){if((c[c[(c[j>>2]|0)+64>>2]>>2]|0)!=0?(d[(c[j>>2]|0)+5>>0]|0)!=4:0){c[l>>2]=ui(c[(c[j>>2]|0)+60>>2]|0)|0;if(0==(c[l>>2]&512|0)){a[f+0>>0]=a[4336>>0]|0;a[f+1>>0]=a[4337>>0]|0;a[f+2>>0]=a[4338>>0]|0;a[f+3>>0]=a[4339>>0]|0;a[f+4>>0]=a[4340>>0]|0;a[f+5>>0]=a[4341>>0]|0;a[f+6>>0]=a[4342>>0]|0;a[f+7>>0]=a[4343>>0]|0;Yj(f+8|0,c[(c[j>>2]|0)+44>>2]|0);e=Hi(c[j>>2]|0)|0;b=m;c[b>>2]=e;c[b+4>>2]=D;b=m;c[h>>2]=yi(c[(c[j>>2]|0)+64>>2]|0,n,8,c[b>>2]|0,c[b+4>>2]|0)|0;if((c[h>>2]|0)==0?0==(VD(n,4336,8)|0):0){b=m;c[h>>2]=fd(c[(c[j>>2]|0)+64>>2]|0,4552,1,c[b>>2]|0,c[b+4>>2]|0)|0}if((c[h>>2]|0)!=0&(c[h>>2]|0)!=522){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}if(((d[(c[j>>2]|0)+8>>0]|0)!=0?0==(c[l>>2]&1024|0):0)?(c[h>>2]=di(c[(c[j>>2]|0)+64>>2]|0,d[(c[j>>2]|0)+11>>0]|0)|0,(c[h>>2]|0)!=0):0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}b=(c[j>>2]|0)+80|0;c[h>>2]=fd(c[(c[j>>2]|0)+64>>2]|0,f,12,c[b>>2]|0,c[b+4>>2]|0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}}if(0==(c[l>>2]&1024|0)?(c[h>>2]=di(c[(c[j>>2]|0)+64>>2]|0,d[(c[j>>2]|0)+11>>0]|((d[(c[j>>2]|0)+11>>0]|0)==3?16:0))|0,(c[h>>2]|0)!=0):0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}m=(c[j>>2]|0)+72|0;n=c[m+4>>2]|0;b=(c[j>>2]|0)+80|0;c[b>>2]=c[m>>2];c[b+4>>2]=n;if((c[o>>2]|0)==0){break}if(0!=(c[l>>2]&512|0)){break}c[(c[j>>2]|0)+44>>2]=0;c[h>>2]=_j(c[j>>2]|0)|0;if((c[h>>2]|0)==0){break}c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}n=(c[j>>2]|0)+72|0;o=c[n+4>>2]|0;b=(c[j>>2]|0)+80|0;c[b>>2]=c[n>>2];c[b+4>>2]=o}}while(0);$j(c[(c[j>>2]|0)+204>>2]|0);a[(c[j>>2]|0)+16>>0]=4;c[g>>2]=0;b=c[g>>2]|0;i=k;return b|0}function Vj(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;k=g+32|0;m=g+28|0;f=g+24|0;n=g+8|0;l=g+20|0;j=g;h=g+16|0;c[k>>2]=d;c[m>>2]=e;c[f>>2]=0;if((c[c[(c[k>>2]|0)+60>>2]>>2]|0)==0){c[f>>2]=Wj(c[k>>2]|0,c[(c[k>>2]|0)+60>>2]|0,c[(c[k>>2]|0)+144>>2]|0)|0}do{if((c[f>>2]|0)==0?(c[(c[k>>2]|0)+36>>2]|0)>>>0<(c[(c[k>>2]|0)+24>>2]|0)>>>0:0){if((c[(c[m>>2]|0)+12>>2]|0)==0?!((c[(c[m>>2]|0)+20>>2]|0)>>>0>(c[(c[k>>2]|0)+36>>2]|0)>>>0):0){break}e=c[(c[k>>2]|0)+152>>2]|0;e=lE(e|0,((e|0)<0)<<31>>31|0,c[(c[k>>2]|0)+24>>2]|0,0)|0;d=n;c[d>>2]=e;c[d+4>>2]=D;lj(c[(c[k>>2]|0)+60>>2]|0,5,n);c[(c[k>>2]|0)+36>>2]=c[(c[k>>2]|0)+24>>2]}}while(0);while(1){if((c[f>>2]|0)!=0){h=20;break}if((c[m>>2]|0)==0){h=20;break}c[l>>2]=c[(c[m>>2]|0)+20>>2];if((c[l>>2]|0)>>>0<=(c[(c[k>>2]|0)+24>>2]|0)>>>0?0==(b[(c[m>>2]|0)+24>>1]&32|0):0){e=c[(c[k>>2]|0)+152>>2]|0;e=lE((c[l>>2]|0)-1|0,0,e|0,((e|0)<0)<<31>>31|0)|0;d=j;c[d>>2]=e;c[d+4>>2]=D;if((c[(c[m>>2]|0)+20>>2]|0)==1){Xj(c[m>>2]|0)}c[h>>2]=c[(c[m>>2]|0)+4>>2];d=j;c[f>>2]=fd(c[(c[k>>2]|0)+60>>2]|0,c[h>>2]|0,c[(c[k>>2]|0)+152>>2]|0,c[d>>2]|0,c[d+4>>2]|0)|0;if((c[l>>2]|0)==1){d=(c[k>>2]|0)+100|0;n=(c[h>>2]|0)+24|0;e=d+16|0;do{a[d>>0]=a[n>>0]|0;d=d+1|0;n=n+1|0}while((d|0)<(e|0))}if((c[l>>2]|0)>>>0>(c[(c[k>>2]|0)+32>>2]|0)>>>0){c[(c[k>>2]|0)+32>>2]=c[l>>2]}d=(c[k>>2]|0)+192|0;c[d>>2]=(c[d>>2]|0)+1;Ci(c[(c[k>>2]|0)+88>>2]|0,c[l>>2]|0,c[(c[m>>2]|0)+4>>2]|0)}c[m>>2]=c[(c[m>>2]|0)+12>>2]}if((h|0)==20){i=g;return c[f>>2]|0}return 0}function Wj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+12|0;h=f+8|0;g=f+4|0;e=f;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[g>>2]=c[g>>2]|30;c[e>>2]=xi(c[c[j>>2]>>2]|0,0,c[h>>2]|0,c[g>>2]|0,0)|0;i=f;return c[e>>2]|0}function Xj(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=(Ah((c[(c[d>>2]|0)+16>>2]|0)+100|0)|0)+1;Yj((c[(c[d>>2]|0)+4>>2]|0)+24|0,c[e>>2]|0);Yj((c[(c[d>>2]|0)+4>>2]|0)+92|0,c[e>>2]|0);Yj((c[(c[d>>2]|0)+4>>2]|0)+96|0,3008005);i=b;return}function Yj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[c[f>>2]>>0]=(c[g>>2]|0)>>>24;a[(c[f>>2]|0)+1>>0]=(c[g>>2]|0)>>>16;a[(c[f>>2]|0)+2>>0]=(c[g>>2]|0)>>>8;a[(c[f>>2]|0)+3>>0]=c[g>>2];i=e;return}function Zj(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=0;if(0!=(Vh(c[e>>2]|0)|0)){e=c[d>>2]|0;i=b;return e|0}c[d>>2]=ak(c[e>>2]|0,4)|0;e=c[d>>2]|0;i=b;return e|0}function _j(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;k=f+20|0;e=f+16|0;g=f+12|0;h=f+8|0;j=f+4|0;l=f;c[k>>2]=b;c[e>>2]=0;c[g>>2]=c[(c[k>>2]|0)+200>>2];c[h>>2]=c[(c[k>>2]|0)+152>>2];if((c[h>>2]|0)>>>0>(c[(c[k>>2]|0)+148>>2]|0)>>>0){c[h>>2]=c[(c[k>>2]|0)+148>>2]}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[k>>2]|0)+96>>2]|0)){break}b=(c[(c[k>>2]|0)+92>>2]|0)+((c[l>>2]|0)*48|0)+8|0;if((c[b>>2]|0)==0&(c[b+4>>2]|0)==0){n=(c[k>>2]|0)+72|0;m=c[n+4>>2]|0;b=(c[(c[k>>2]|0)+92>>2]|0)+((c[l>>2]|0)*48|0)+8|0;c[b>>2]=c[n>>2];c[b+4>>2]=m}c[l>>2]=(c[l>>2]|0)+1}l=Hi(c[k>>2]|0)|0;m=D;n=(c[k>>2]|0)+72|0;c[n>>2]=l;c[n+4>>2]=m;n=(c[k>>2]|0)+80|0;c[n>>2]=l;c[n+4>>2]=m;if(((d[(c[k>>2]|0)+7>>0]|0|0)==0?(d[(c[k>>2]|0)+5>>0]|0|0)!=4:0)?((ui(c[(c[k>>2]|0)+60>>2]|0)|0)&512|0)==0:0){l=(c[g>>2]|0)+0|0;b=l+12|0;do{a[l>>0]=0;l=l+1|0}while((l|0)<(b|0))}else{n=c[g>>2]|0;a[n+0>>0]=a[4336>>0]|0;a[n+1>>0]=a[4337>>0]|0;a[n+2>>0]=a[4338>>0]|0;a[n+3>>0]=a[4339>>0]|0;a[n+4>>0]=a[4340>>0]|0;a[n+5>>0]=a[4341>>0]|0;a[n+6>>0]=a[4342>>0]|0;a[n+7>>0]=a[4343>>0]|0;Yj((c[g>>2]|0)+8|0,-1)}tc(4,(c[k>>2]|0)+48|0);Yj((c[g>>2]|0)+12|0,c[(c[k>>2]|0)+48>>2]|0);Yj((c[g>>2]|0)+16|0,c[(c[k>>2]|0)+28>>2]|0);Yj((c[g>>2]|0)+20|0,c[(c[k>>2]|0)+148>>2]|0);Yj((c[g>>2]|0)+24|0,c[(c[k>>2]|0)+152>>2]|0);_D((c[g>>2]|0)+28|0,0,(c[h>>2]|0)-28|0)|0;c[j>>2]=0;while(1){if((c[e>>2]|0)!=0){g=17;break}if(!((c[j>>2]|0)>>>0<(c[(c[k>>2]|0)+148>>2]|0)>>>0)){g=17;break}n=(c[k>>2]|0)+72|0;c[e>>2]=fd(c[(c[k>>2]|0)+64>>2]|0,c[g>>2]|0,c[h>>2]|0,c[n>>2]|0,c[n+4>>2]|0)|0;n=(c[k>>2]|0)+72|0;m=n;m=bE(c[m>>2]|0,c[m+4>>2]|0,c[h>>2]|0,0)|0;c[n>>2]=m;c[n+4>>2]=D;c[j>>2]=(c[j>>2]|0)+(c[h>>2]|0)}if((g|0)==17){i=f;return c[e>>2]|0}return 0}function $j(a){a=a|0;var d=0,f=0,g=0;f=i;i=i+16|0;d=f+4|0;g=f;c[d>>2]=a;c[g>>2]=c[c[d>>2]>>2];while(1){if((c[g>>2]|0)==0){break}a=(c[g>>2]|0)+24|0;b[a>>1]=(e[a>>1]|0)&-5;c[g>>2]=c[(c[g>>2]|0)+32>>2]}c[(c[d>>2]|0)+8>>2]=c[(c[d>>2]|0)+4>>2];i=f;return}function ak(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d+4|0;e=d;c[f>>2]=a;c[g>>2]=b;while(1){c[e>>2]=bk(c[f>>2]|0,c[g>>2]|0)|0;if((c[e>>2]|0)!=5){b=4;break}if((ub[c[(c[f>>2]|0)+176>>2]&31](c[(c[f>>2]|0)+180>>2]|0)|0)==0){b=4;break}}if((b|0)==4){i=d;return c[e>>2]|0}return 0}function bk(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;h=f+8|0;j=f+4|0;g=f;c[h>>2]=b;c[j>>2]=e;c[g>>2]=0;if((d[(c[h>>2]|0)+17>>0]|0|0)>=(c[j>>2]|0)?(d[(c[h>>2]|0)+17>>0]|0|0)!=5:0){b=c[g>>2]|0;i=f;return b|0}if((d[(c[h>>2]|0)+13>>0]|0|0)!=0){e=0}else{e=jj(c[(c[h>>2]|0)+60>>2]|0,c[j>>2]|0)|0}c[g>>2]=e;if((c[g>>2]|0)!=0){b=c[g>>2]|0;i=f;return b|0}if((d[(c[h>>2]|0)+17>>0]|0|0)==5?(c[j>>2]|0)!=4:0){b=c[g>>2]|0;i=f;return b|0}a[(c[h>>2]|0)+17>>0]=c[j>>2];b=c[g>>2]|0;i=f;return b|0}function ck(e,f,g,h,j,k){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0;z=i;i=i+144|0;n=z+104|0;q=z+100|0;C=z+96|0;E=z+92|0;v=z+88|0;p=z+84|0;s=z+80|0;o=z+76|0;B=z+72|0;A=z+68|0;u=z+64|0;x=z+60|0;w=z+56|0;t=z+32|0;r=z+8|0;H=z+112|0;G=z+48|0;l=z+44|0;y=z+40|0;F=z;c[q>>2]=e;c[C>>2]=f;c[E>>2]=g;c[v>>2]=h;c[p>>2]=j;c[s>>2]=k;c[u>>2]=0;c[x>>2]=0;e=dk(c[q>>2]|0)|0;c[o>>2]=e;if(0!=(e|0)){c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}c[B>>2]=c[(c[q>>2]|0)+68>>2];if((c[B>>2]|0)==0){Yj(H,931071618|(a[1392]|0)==0);Yj(H+4|0,3007e3);Yj(H+8|0,c[C>>2]|0);Yj(H+12|0,c[(c[q>>2]|0)+104>>2]|0);if((c[(c[q>>2]|0)+104>>2]|0)==0){tc(8,(c[q>>2]|0)+84|0)}e=H+16|0;f=(c[q>>2]|0)+84|0;a[e+0>>0]=a[f+0>>0]|0;a[e+1>>0]=a[f+1>>0]|0;a[e+2>>0]=a[f+2>>0]|0;a[e+3>>0]=a[f+3>>0]|0;a[e+4>>0]=a[f+4>>0]|0;a[e+5>>0]=a[f+5>>0]|0;a[e+6>>0]=a[f+6>>0]|0;a[e+7>>0]=a[f+7>>0]|0;Dj(1,H,24,0,G);Yj(H+24|0,c[G>>2]|0);Yj(H+28|0,c[G+4>>2]|0);c[(c[q>>2]|0)+36>>2]=c[C>>2];a[(c[q>>2]|0)+65>>0]=(a[1392]|0)==0;c[(c[q>>2]|0)+76>>2]=c[G>>2];c[(c[q>>2]|0)+80>>2]=c[G+4>>2];a[(c[q>>2]|0)+47>>0]=1;c[o>>2]=fd(c[(c[q>>2]|0)+8>>2]|0,H,32,0,0)|0;if((c[o>>2]|0)!=0){c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}if(((d[(c[q>>2]|0)+48>>0]|0)!=0?(c[s>>2]|0)!=0:0)?(c[o>>2]=di(c[(c[q>>2]|0)+8>>2]|0,c[s>>2]&19)|0,(c[o>>2]|0)!=0):0){c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}}c[r>>2]=c[q>>2];c[r+4>>2]=c[(c[q>>2]|0)+8>>2];f=r+8|0;c[f>>2]=0;c[f+4>>2]=0;c[r+16>>2]=c[s>>2];c[r+20>>2]=c[C>>2];f=(c[C>>2]|0)+24|0;f=lE((c[B>>2]|0)+1-1|0,0,f|0,((f|0)<0)<<31>>31|0)|0;f=bE(32,0,f|0,D|0)|0;e=t;c[e>>2]=f;c[e+4>>2]=D;c[w>>2]=(c[C>>2]|0)+24;c[A>>2]=c[E>>2];while(1){if((c[A>>2]|0)==0){break}c[B>>2]=(c[B>>2]|0)+1;if((c[p>>2]|0)!=0){G=(c[(c[A>>2]|0)+12>>2]|0)==0?c[v>>2]|0:0}else{G=0}c[l>>2]=G;e=t;c[o>>2]=ek(r,c[A>>2]|0,c[l>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;if((c[o>>2]|0)!=0){m=17;break}c[u>>2]=c[A>>2];f=c[w>>2]|0;e=t;f=bE(c[e>>2]|0,c[e+4>>2]|0,f|0,((f|0)<0)<<31>>31|0)|0;e=t;c[e>>2]=f;c[e+4>>2]=D;c[A>>2]=c[(c[A>>2]|0)+12>>2]}if((m|0)==17){c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}a:do{if((c[p>>2]|0)!=0?(c[s>>2]&32|0)!=0:0){if((a[(c[q>>2]|0)+49>>0]|0)==0){c[o>>2]=di(c[r+4>>2]|0,c[s>>2]&19)|0;break}c[y>>2]=vi(c[(c[q>>2]|0)+8>>2]|0)|0;e=t;f=c[y>>2]|0;f=bE(c[e>>2]|0,c[e+4>>2]|0,f|0,((f|0)<0)<<31>>31|0)|0;f=ZD(f|0,D|0,1,0)|0;e=c[y>>2]|0;e=jE(f|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;f=c[y>>2]|0;f=lE(e|0,D|0,f|0,((f|0)<0)<<31>>31|0)|0;e=r+8|0;c[e>>2]=f;c[e+4>>2]=D;while(1){f=t;h=c[f+4>>2]|0;e=r+8|0;g=c[e+4>>2]|0;if(!((h|0)<(g|0)|((h|0)==(g|0)?(c[f>>2]|0)>>>0<(c[e>>2]|0)>>>0:0))){break a}e=t;c[o>>2]=ek(r,c[u>>2]|0,c[v>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;if((c[o>>2]|0)!=0){break}f=c[w>>2]|0;e=t;f=bE(c[e>>2]|0,c[e+4>>2]|0,f|0,((f|0)<0)<<31>>31|0)|0;e=t;c[e>>2]=f;c[e+4>>2]=D;c[x>>2]=(c[x>>2]|0)+1}c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}}while(0);if(((c[p>>2]|0)!=0?(d[(c[q>>2]|0)+47>>0]|0)!=0:0)?(e=(c[q>>2]|0)+16|0,f=c[e+4>>2]|0,(f|0)>0|(f|0)==0&(c[e>>2]|0)>>>0>=0):0){e=(c[q>>2]|0)+16|0;h=c[e+4>>2]|0;f=F;c[f>>2]=c[e>>2];c[f+4>>2]=h;f=(c[C>>2]|0)+24|0;f=lE((c[B>>2]|0)+(c[x>>2]|0)+1-1|0,0,f|0,((f|0)<0)<<31>>31|0)|0;f=bE(32,0,f|0,D|0)|0;h=D;e=(c[q>>2]|0)+16|0;g=c[e+4>>2]|0;if((h|0)>(g|0)|((h|0)==(g|0)?f>>>0>(c[e>>2]|0)>>>0:0)){f=(c[C>>2]|0)+24|0;f=lE((c[B>>2]|0)+(c[x>>2]|0)+1-1|0,0,f|0,((f|0)<0)<<31>>31|0)|0;f=bE(32,0,f|0,D|0)|0;e=F;c[e>>2]=f;c[e+4>>2]=D}e=F;mj(c[q>>2]|0,c[e>>2]|0,c[e+4>>2]|0);a[(c[q>>2]|0)+47>>0]=0}c[B>>2]=c[(c[q>>2]|0)+68>>2];c[A>>2]=c[E>>2];while(1){if((c[A>>2]|0)==0){break}if((c[o>>2]|0)!=0){break}c[B>>2]=(c[B>>2]|0)+1;c[o>>2]=Fj(c[q>>2]|0,c[B>>2]|0,c[(c[A>>2]|0)+20>>2]|0)|0;c[A>>2]=c[(c[A>>2]|0)+12>>2]}while(1){if((c[o>>2]|0)!=0){break}if((c[x>>2]|0)<=0){break}c[B>>2]=(c[B>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+ -1;c[o>>2]=Fj(c[q>>2]|0,c[B>>2]|0,c[(c[u>>2]|0)+20>>2]|0)|0}if((c[o>>2]|0)==0){b[(c[q>>2]|0)+66>>1]=c[C>>2]&65280|c[C>>2]>>16;c[(c[q>>2]|0)+68>>2]=c[B>>2];if((c[p>>2]|0)!=0){e=(c[q>>2]|0)+60|0;c[e>>2]=(c[e>>2]|0)+1;c[(c[q>>2]|0)+72>>2]=c[v>>2]}if((c[p>>2]|0)!=0){Gj(c[q>>2]|0);c[(c[q>>2]|0)+12>>2]=c[B>>2]}}c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}function dk(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+48|0;d=j+32|0;h=j+28|0;g=j+24|0;e=j+20|0;l=j+16|0;n=j+12|0;k=j+8|0;m=j+4|0;f=j;c[h>>2]=a;c[g>>2]=0;if((b[(c[h>>2]|0)+40>>1]|0)==0){c[l>>2]=uj(c[h>>2]|0)|0;do{if((c[c[l>>2]>>2]|0)>>>0>0){tc(4,n);c[g>>2]=pj(c[h>>2]|0,4,4)|0;if((c[g>>2]|0)!=0){if((c[g>>2]|0)==5){break}c[d>>2]=c[g>>2];n=c[d>>2]|0;i=j;return n|0}c[m>>2]=(c[h>>2]|0)+84;a=(c[h>>2]|0)+104|0;c[a>>2]=(c[a>>2]|0)+1;c[(c[h>>2]|0)+68>>2]=0;a=c[m>>2]|0;Yj(a,1+(Ah(c[m>>2]|0)|0)|0);c[(c[m>>2]|0)+4>>2]=c[n>>2];Gj(c[h>>2]|0);c[c[l>>2]>>2]=0;c[(c[l>>2]|0)+8>>2]=0;c[k>>2]=2;while(1){if((c[k>>2]|0)>=5){break}c[(c[l>>2]|0)+4+(c[k>>2]<<2)>>2]=-1;c[k>>2]=(c[k>>2]|0)+1}ci(c[h>>2]|0,4,4)}}while(0);ai(c[h>>2]|0,3);b[(c[h>>2]|0)+40>>1]=-1;c[e>>2]=0;do{m=c[h>>2]|0;n=(c[e>>2]|0)+1|0;c[e>>2]=n;c[g>>2]=hk(m,f,1,n)|0}while((c[g>>2]|0)==-1)}c[d>>2]=c[g>>2];n=c[d>>2]|0;i=j;return n|0}function ek(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+64|0;h=l+28|0;g=l+24|0;p=l+20|0;o=l+16|0;k=l;j=l+12|0;m=l+8|0;n=l+32|0;c[g>>2]=a;c[p>>2]=b;c[o>>2]=d;a=k;c[a>>2]=e;c[a+4>>2]=f;c[m>>2]=c[(c[p>>2]|0)+4>>2];fk(c[c[g>>2]>>2]|0,c[(c[p>>2]|0)+20>>2]|0,c[o>>2]|0,c[m>>2]|0,n);a=k;c[j>>2]=gk(c[g>>2]|0,n,24,c[a>>2]|0,c[a+4>>2]|0)|0;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];p=c[h>>2]|0;i=l;return p|0}else{a=c[g>>2]|0;n=c[m>>2]|0;o=c[(c[g>>2]|0)+20>>2]|0;p=k;p=bE(c[p>>2]|0,c[p+4>>2]|0,24,0)|0;c[j>>2]=gk(a,n,o,p,D)|0;c[h>>2]=c[j>>2];p=c[h>>2]|0;i=l;return p|0}return 0}function fk(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;m=j+24|0;q=j+20|0;p=j+16|0;n=j+12|0;l=j+8|0;o=j+4|0;k=j;c[m>>2]=b;c[q>>2]=e;c[p>>2]=f;c[n>>2]=g;c[l>>2]=h;c[k>>2]=(c[m>>2]|0)+76;Yj(c[l>>2]|0,c[q>>2]|0);Yj((c[l>>2]|0)+4|0,c[p>>2]|0);b=(c[l>>2]|0)+8|0;e=(c[m>>2]|0)+84|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0;a[b+4>>0]=a[e+4>>0]|0;a[b+5>>0]=a[e+5>>0]|0;a[b+6>>0]=a[e+6>>0]|0;a[b+7>>0]=a[e+7>>0]|0;c[o>>2]=(d[(c[m>>2]|0)+65>>0]|0)==((a[1392]|0)==0|0)&1;Dj(c[o>>2]|0,c[l>>2]|0,8,c[k>>2]|0,c[k>>2]|0);Dj(c[o>>2]|0,c[n>>2]|0,c[(c[m>>2]|0)+36>>2]|0,c[k>>2]|0,c[k>>2]|0);Yj((c[l>>2]|0)+16|0,c[c[k>>2]>>2]|0);Yj((c[l>>2]|0)+20|0,c[(c[k>>2]|0)+4>>2]|0);i=j;return}function gk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+32|0;n=o+28|0;m=o+24|0;k=o+20|0;g=o+16|0;h=o;l=o+12|0;j=o+8|0;c[m>>2]=a;c[k>>2]=b;c[g>>2]=d;b=h;c[b>>2]=e;c[b+4>>2]=f;b=h;e=c[b+4>>2]|0;a=(c[m>>2]|0)+8|0;d=c[a+4>>2]|0;do{if((e|0)<(d|0)|((e|0)==(d|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)?(e=h,b=c[g>>2]|0,b=bE(c[e>>2]|0,c[e+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0,e=D,a=(c[m>>2]|0)+8|0,d=c[a+4>>2]|0,(e|0)>(d|0)|((e|0)==(d|0)?b>>>0>=(c[a>>2]|0)>>>0:0)):0){b=(c[m>>2]|0)+8|0;a=h;a=ZD(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[j>>2]=a;a=h;c[l>>2]=fd(c[(c[m>>2]|0)+4>>2]|0,c[k>>2]|0,c[j>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;if((c[l>>2]|0)!=0){c[n>>2]=c[l>>2];a=c[n>>2]|0;i=o;return a|0}b=c[j>>2]|0;a=h;b=bE(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=h;c[a>>2]=b;c[a+4>>2]=D;c[g>>2]=(c[g>>2]|0)-(c[j>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[j>>2]|0);c[l>>2]=di(c[(c[m>>2]|0)+4>>2]|0,c[(c[m>>2]|0)+16>>2]&19)|0;if((c[g>>2]|0)!=0?(c[l>>2]|0)==0:0){break}c[n>>2]=c[l>>2];a=c[n>>2]|0;i=o;return a|0}}while(0);a=h;c[l>>2]=fd(c[(c[m>>2]|0)+4>>2]|0,c[k>>2]|0,c[g>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[n>>2]=c[l>>2];a=c[n>>2]|0;i=o;return a|0}function hk(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=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;j=i;i=i+48|0;h=j+44|0;m=j+40|0;t=j+36|0;s=j+32|0;v=j+28|0;q=j+24|0;o=j+20|0;p=j+16|0;n=j+12|0;l=j+8|0;u=j+4|0;k=j;c[m>>2]=d;c[t>>2]=e;c[s>>2]=f;c[v>>2]=g;c[l>>2]=0;if((c[v>>2]|0)>5){c[u>>2]=1;if((c[v>>2]|0)>100){c[h>>2]=15;d=c[h>>2]|0;i=j;return d|0}if((c[v>>2]|0)>=10){c[u>>2]=((c[v>>2]|0)-9|0)*238}$f(c[c[m>>2]>>2]|0,c[u>>2]|0)|0}if((c[s>>2]|0)==0){c[l>>2]=rj(c[m>>2]|0,c[t>>2]|0)|0;do{if((c[l>>2]|0)==5){if((c[c[(c[m>>2]|0)+32>>2]>>2]|0)==0){c[l>>2]=-1;break}d=$h(c[m>>2]|0,2)|0;c[l>>2]=d;if(0==(d|0)){ai(c[m>>2]|0,2);c[l>>2]=-1;break}if((c[l>>2]|0)==5){c[l>>2]=261}}}while(0);if((c[l>>2]|0)!=0){c[h>>2]=c[l>>2];d=c[h>>2]|0;i=j;return d|0}}c[q>>2]=uj(c[m>>2]|0)|0;do{if((c[s>>2]|0)==0?(c[c[q>>2]>>2]|0)==(c[(c[m>>2]|0)+68>>2]|0):0){c[l>>2]=$h(c[m>>2]|0,3)|0;Hj(c[m>>2]|0);if((c[l>>2]|0)!=0){if((c[l>>2]|0)==5){break}c[h>>2]=c[l>>2];d=c[h>>2]|0;i=j;return d|0}d=gj(c[m>>2]|0)|0;d=(VD(d,(c[m>>2]|0)+52|0,48)|0)!=0;k=c[m>>2]|0;if(d){ai(k,3);c[h>>2]=-1;d=c[h>>2]|0;i=j;return d|0}else{b[k+40>>1]=0;c[h>>2]=0;d=c[h>>2]|0;i=j;return d|0}}}while(0);c[o>>2]=0;c[p>>2]=0;c[n>>2]=1;while(1){if((c[n>>2]|0)>=5){break}c[k>>2]=c[(c[q>>2]|0)+4+(c[n>>2]<<2)>>2];if((c[o>>2]|0)>>>0<=(c[k>>2]|0)>>>0?(c[k>>2]|0)>>>0<=(c[(c[m>>2]|0)+68>>2]|0)>>>0:0){c[o>>2]=c[k>>2];c[p>>2]=c[n>>2]}c[n>>2]=(c[n>>2]|0)+1}a:do{if((a[(c[m>>2]|0)+46>>0]&2|0)==0){if(!((c[o>>2]|0)>>>0<(c[(c[m>>2]|0)+68>>2]|0)>>>0)?(c[p>>2]|0)!=0:0){break}c[n>>2]=1;while(1){if((c[n>>2]|0)>=5){break a}c[l>>2]=pj(c[m>>2]|0,3+(c[n>>2]|0)|0,1)|0;if((c[l>>2]|0)==0){r=37;break}if((c[l>>2]|0)!=5){break}c[n>>2]=(c[n>>2]|0)+1}if((r|0)==37){d=c[(c[m>>2]|0)+68>>2]|0;c[(c[q>>2]|0)+4+(c[n>>2]<<2)>>2]=d;c[o>>2]=d;c[p>>2]=c[n>>2];ci(c[m>>2]|0,3+(c[n>>2]|0)|0,1);break}c[h>>2]=c[l>>2];d=c[h>>2]|0;i=j;return d|0}}while(0);if((c[p>>2]|0)==0){c[h>>2]=(c[l>>2]|0)==5?-1:520;d=c[h>>2]|0;i=j;return d|0}c[l>>2]=$h(c[m>>2]|0,3+(c[p>>2]|0)|0)|0;if((c[l>>2]|0)!=0){c[h>>2]=(c[l>>2]|0)==5?-1:c[l>>2]|0;d=c[h>>2]|0;i=j;return d|0}Hj(c[m>>2]|0);if((c[(c[q>>2]|0)+4+(c[p>>2]<<2)>>2]|0)==(c[o>>2]|0)?(d=gj(c[m>>2]|0)|0,(VD(d,(c[m>>2]|0)+52|0,48)|0)==0):0){b[(c[m>>2]|0)+40>>1]=c[p>>2];c[h>>2]=c[l>>2];d=c[h>>2]|0;i=j;return d|0}ai(c[m>>2]|0,3+(c[p>>2]|0)|0);c[h>>2]=-1;d=c[h>>2]|0;i=j;return d|0}function ik(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;f=b+4|0;e=b;c[f>>2]=a;c[e>>2]=0;if((c[c[(c[f>>2]|0)+68>>2]>>2]|0)!=0){f=c[e>>2]|0;i=b;return f|0}if((d[(c[f>>2]|0)+5>>0]|0|0)!=4?(d[(c[f>>2]|0)+21>>0]|0|0)==0:0){c[e>>2]=Wj(c[f>>2]|0,c[(c[f>>2]|0)+68>>2]|0,8192)|0;f=c[e>>2]|0;i=b;return f|0}ki(c[(c[f>>2]|0)+68>>2]|0);f=c[e>>2]|0;i=b;return f|0}function jk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;h=f+12|0;j=f;k=f+8|0;g=f+16|0;c[h>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;c[k>>2]=e;Yj(g,c[k>>2]|0);a=j;a=fd(c[h>>2]|0,g,4,c[a>>2]|0,c[a+4>>2]|0)|0;i=f;return a|0}function kk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;f=d+16|0;j=d+12|0;g=d+8|0;e=d+4|0;h=d;c[f>>2]=a;c[j>>2]=b;c[e>>2]=0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+96>>2]|0)){break}c[h>>2]=(c[(c[f>>2]|0)+92>>2]|0)+((c[g>>2]|0)*48|0);if((c[j>>2]|0)>>>0<=(c[(c[h>>2]|0)+20>>2]|0)>>>0){a=Pg(c[(c[h>>2]|0)+16>>2]|0,c[j>>2]|0)|0;c[e>>2]=c[e>>2]|a}c[g>>2]=(c[g>>2]|0)+1}i=d;return c[e>>2]|0}function lk(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;c[b>>2]=(c[b>>2]|0)+((1&c[b>>2]>>6)*9|0);i=d;return c[b>>2]&15|0}function mk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=b;c[f>>2]=d;while(1){if((c[f>>2]|0)>0){b=(a[(c[g>>2]|0)+((c[f>>2]|0)-1)>>0]|0)==32}else{b=0}d=c[f>>2]|0;if(!b){break}c[f>>2]=d+ -1}i=e;return(d|0)==0|0}function nk(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+4|0;c[e>>2]=a;c[d>>2]=c[e>>2];rc(21,4832,d);i=b;return}function ok(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;n=l+20|0;k=l+16|0;g=l+12|0;m=l+8|0;h=l+4|0;j=l;c[n>>2]=a;c[k>>2]=b;c[g>>2]=e;c[m>>2]=f;c[h>>2]=0;if((c[n>>2]|0)==0){a=c[h>>2]|0;i=l;return a|0}c[j>>2]=c[(c[n>>2]|0)+4>>2];Mc(c[n>>2]|0);if((d[(c[j>>2]|0)+20>>0]|0|0)!=0){c[h>>2]=6;a=c[h>>2]|0;i=l;return a|0}else{c[h>>2]=pk(c[c[j>>2]>>2]|0,c[k>>2]|0,c[g>>2]|0,c[m>>2]|0)|0;a=c[h>>2]|0;i=l;return a|0}return 0}function pk(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;h=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[h>>2]=0;if((c[(c[j>>2]|0)+208>>2]|0)==0){a=c[h>>2]|0;i=g;return a|0}c[h>>2]=kj(c[(c[j>>2]|0)+208>>2]|0,c[k>>2]|0,c[(c[j>>2]|0)+176>>2]|0,c[(c[j>>2]|0)+180>>2]|0,d[(c[j>>2]|0)+9>>0]|0,c[(c[j>>2]|0)+152>>2]|0,c[(c[j>>2]|0)+200>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;a=c[h>>2]|0;i=g;return a|0}function qk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;g=h+20|0;n=h+16|0;m=h+12|0;k=h+8|0;l=h+4|0;j=h;c[n>>2]=b;c[m>>2]=d;c[k>>2]=e;c[l>>2]=f;c[j>>2]=c[(c[n>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[j>>2]|0)==0){f=7;break}if((Lb(c[(c[j>>2]|0)+24>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)==0?(a[(c[(c[j>>2]|0)+24>>2]|0)+(c[l>>2]|0)>>0]|0)==0:0){f=5;break}c[j>>2]=c[(c[j>>2]|0)+28>>2]}if((f|0)==5){c[g>>2]=c[j>>2];n=c[g>>2]|0;i=h;return n|0}else if((f|0)==7){c[g>>2]=0;n=c[g>>2]|0;i=h;return n|0}return 0}function rk(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;k=j+12|0;m=j+8|0;o=j+4|0;n=j+16|0;l=j;c[m>>2]=f;c[o>>2]=g;a[n>>0]=h;h=c[m>>2]|0;if((c[o>>2]|0)==-2){if((c[h+12>>2]|0)==0){l=(c[(c[m>>2]|0)+16>>2]|0)==0}else{l=0}c[k>>2]=l?0:6;f=c[k>>2]|0;i=j;return f|0}if((b[h>>1]|0)!=(c[o>>2]|0)?(b[c[m>>2]>>1]|0)>=0:0){c[k>>2]=0;f=c[k>>2]|0;i=j;return f|0}if((b[c[m>>2]>>1]|0)==(c[o>>2]|0)){c[l>>2]=4}else{c[l>>2]=1}if((d[n>>0]|0)!=(b[(c[m>>2]|0)+2>>1]&3|0)){if((d[n>>0]&e[(c[m>>2]|0)+2>>1]&2|0)!=0){c[l>>2]=(c[l>>2]|0)+1}}else{c[l>>2]=(c[l>>2]|0)+2}c[k>>2]=c[l>>2];f=c[k>>2]|0;i=j;return f|0}function sk(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;k=f+16|0;h=f+12|0;g=f+8|0;l=f+4|0;m=f+20|0;j=f;c[k>>2]=b;c[h>>2]=e;c[l>>2]=Mb(c[(c[h>>2]|0)+24>>2]|0)|0;a[m>>0]=a[c[(c[h>>2]|0)+24>>2]>>0]|0;c[j>>2]=((d[696+(d[m>>0]|0)>>0]|0)+(c[l>>2]|0)|0)%23|0;c[g>>2]=qk(c[k>>2]|0,c[j>>2]|0,c[(c[h>>2]|0)+24>>2]|0,c[l>>2]|0)|0;if((c[g>>2]|0)!=0){c[(c[h>>2]|0)+8>>2]=c[(c[g>>2]|0)+8>>2];c[(c[g>>2]|0)+8>>2]=c[h>>2];i=f;return}else{c[(c[h>>2]|0)+8>>2]=0;c[(c[h>>2]|0)+28>>2]=c[(c[k>>2]|0)+(c[j>>2]<<2)>>2];c[(c[k>>2]|0)+(c[j>>2]<<2)>>2]=c[h>>2];i=f;return}}function tk(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;k=f+8|0;j=f+4|0;h=f;c[k>>2]=a;c[j>>2]=e;if((b[(c[k>>2]|0)+28>>1]&2|0)!=0?(d[(c[k>>2]|0)+30>>0]|0|0)!=(c[j>>2]|0):0){c[h>>2]=uk(c[k>>2]|0,c[j>>2]&255)|0;c[g>>2]=c[h>>2];a=c[g>>2]|0;i=f;return a|0}c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}function uk(f,g){f=f|0;g=g|0;var h=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;j=i;i=i+48|0;o=j+40|0;l=j+36|0;k=j+45|0;t=j+32|0;p=j+28|0;m=j+24|0;n=j+20|0;h=j+16|0;q=j+12|0;u=j+44|0;v=j+8|0;r=j+4|0;s=j;c[l>>2]=f;a[k>>0]=g;if((d[(c[l>>2]|0)+30>>0]|0|0)!=1?(d[k>>0]|0|0)!=1:0){c[v>>2]=vk(c[l>>2]|0)|0;if((c[v>>2]|0)!=0){c[o>>2]=7;g=c[o>>2]|0;i=j;return g|0}c[m>>2]=c[(c[l>>2]|0)+4>>2];c[n>>2]=(c[m>>2]|0)+(c[(c[l>>2]|0)+24>>2]&-2);while(1){if(!((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)){break}a[u>>0]=a[c[m>>2]>>0]|0;a[c[m>>2]>>0]=a[(c[m>>2]|0)+1>>0]|0;c[m>>2]=(c[m>>2]|0)+1;v=a[u>>0]|0;g=c[m>>2]|0;c[m>>2]=g+1;a[g>>0]=v}a[(c[l>>2]|0)+30>>0]=a[k>>0]|0}else{f=(c[l>>2]|0)+24|0;u=c[f>>2]|0;if((d[k>>0]|0|0)==1){c[f>>2]=u&-2;c[t>>2]=(c[(c[l>>2]|0)+24>>2]<<1)+1}else{c[t>>2]=(u<<1)+2}c[m>>2]=c[(c[l>>2]|0)+4>>2];c[n>>2]=(c[m>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);c[p>>2]=Le(c[c[l>>2]>>2]|0,c[t>>2]|0)|0;if((c[p>>2]|0)==0){c[o>>2]=7;g=c[o>>2]|0;i=j;return g|0}c[h>>2]=c[p>>2];if((d[(c[l>>2]|0)+30>>0]|0|0)==1){a:do{if((d[k>>0]|0|0)==2){while(1){if(!((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)){break a}g=c[m>>2]|0;c[m>>2]=g+1;c[q>>2]=d[g>>0]|0;do{if((c[q>>2]|0)>>>0>=192){c[q>>2]=d[4936+((c[q>>2]|0)-192)>>0]|0;while(1){if((c[m>>2]|0)!=(c[n>>2]|0)){r=(a[c[m>>2]>>0]&192|0)==128}else{r=0}s=c[q>>2]|0;if(!r){break}g=c[m>>2]|0;c[m>>2]=g+1;c[q>>2]=(s<<6)+(63&(d[g>>0]|0))}if((!(s>>>0<128)?(c[q>>2]&-2048|0)!=55296:0)?(c[q>>2]&-2|0)!=65534:0){break}c[q>>2]=65533}}while(0);r=c[q>>2]|0;if((c[q>>2]|0)>>>0<=65535){v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=r&255;v=(c[q>>2]|0)>>>8&255;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=v;continue}else{g=(r>>>10&63)+(((c[q>>2]|0)-65536|0)>>>10&192)&255;v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=g;v=216+(((c[q>>2]|0)-65536|0)>>>18&3)&255;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=v;g=c[q>>2]&255;v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=g;v=220+((c[q>>2]|0)>>>8&3)&255;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=v;continue}}}else{while(1){if(!((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)){break a}g=c[m>>2]|0;c[m>>2]=g+1;c[q>>2]=d[g>>0]|0;do{if((c[q>>2]|0)>>>0>=192){c[q>>2]=d[4936+((c[q>>2]|0)-192)>>0]|0;while(1){if((c[m>>2]|0)!=(c[n>>2]|0)){s=(a[c[m>>2]>>0]&192|0)==128}else{s=0}r=c[q>>2]|0;if(!s){break}g=c[m>>2]|0;c[m>>2]=g+1;c[q>>2]=(r<<6)+(63&(d[g>>0]|0))}if((!(r>>>0<128)?(c[q>>2]&-2048|0)!=55296:0)?(c[q>>2]&-2|0)!=65534:0){break}c[q>>2]=65533}}while(0);r=c[q>>2]|0;if((c[q>>2]|0)>>>0<=65535){v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=r>>>8&255;v=c[q>>2]&255;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=v;continue}else{v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=216+((r-65536|0)>>>18&3);v=((c[q>>2]|0)>>>10&63)+(((c[q>>2]|0)-65536|0)>>>10&192)&255;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=v;g=220+((c[q>>2]|0)>>>8&3)&255;v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=g;v=c[q>>2]&255;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=v;continue}}}}while(0);c[(c[l>>2]|0)+24>>2]=(c[h>>2]|0)-(c[p>>2]|0);g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=0}else{b:do{if((d[(c[l>>2]|0)+30>>0]|0|0)==2){while(1){if(!((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)){break b}g=c[m>>2]|0;c[m>>2]=g+1;c[q>>2]=d[g>>0]|0;g=c[m>>2]|0;c[m>>2]=g+1;c[q>>2]=(c[q>>2]|0)+((d[g>>0]|0)<<8);if((c[q>>2]|0)>>>0>=55296&(c[q>>2]|0)>>>0<57344?(c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0:0){g=c[m>>2]|0;c[m>>2]=g+1;c[r>>2]=d[g>>0]|0;g=c[m>>2]|0;c[m>>2]=g+1;c[r>>2]=(c[r>>2]|0)+((d[g>>0]|0)<<8);c[q>>2]=(c[r>>2]&1023)+((c[q>>2]&63)<<10)+((c[q>>2]&960)+64<<10)}t=c[q>>2]|0;if((c[q>>2]|0)>>>0<128){g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=t&255;continue}s=c[q>>2]|0;if(t>>>0<2048){v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=192+(s>>>6&31&255);v=128+(c[q>>2]&63&255)&255;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=v;continue}t=c[q>>2]|0;if(s>>>0<65536){g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=224+(t>>>12&15&255);g=128+((c[q>>2]|0)>>>6&63&255)&255;v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=g;v=128+(c[q>>2]&63&255)&255;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=v;continue}else{v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=240+(t>>>18&7&255);v=128+((c[q>>2]|0)>>>12&63&255)&255;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=v;g=128+((c[q>>2]|0)>>>6&63&255)&255;v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=g;v=128+(c[q>>2]&63&255)&255;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=v;continue}}}else{while(1){if(!((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)){break b}g=c[m>>2]|0;c[m>>2]=g+1;c[q>>2]=(d[g>>0]|0)<<8;g=c[m>>2]|0;c[m>>2]=g+1;c[q>>2]=(c[q>>2]|0)+(d[g>>0]|0);if((c[q>>2]|0)>>>0>=55296&(c[q>>2]|0)>>>0<57344?(c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0:0){g=c[m>>2]|0;c[m>>2]=g+1;c[s>>2]=(d[g>>0]|0)<<8;g=c[m>>2]|0;c[m>>2]=g+1;c[s>>2]=(c[s>>2]|0)+(d[g>>0]|0);c[q>>2]=(c[s>>2]&1023)+((c[q>>2]&63)<<10)+((c[q>>2]&960)+64<<10)}t=c[q>>2]|0;if((c[q>>2]|0)>>>0<128){g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=t&255;continue}r=c[q>>2]|0;if(t>>>0<2048){v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=192+(r>>>6&31&255);v=128+(c[q>>2]&63&255)&255;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=v;continue}t=c[q>>2]|0;if(r>>>0<65536){g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=224+(t>>>12&15&255);g=128+((c[q>>2]|0)>>>6&63&255)&255;v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=g;v=128+(c[q>>2]&63&255)&255;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=v;continue}else{v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=240+(t>>>18&7&255);v=128+((c[q>>2]|0)>>>12&63&255)&255;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=v;g=128+((c[q>>2]|0)>>>6&63&255)&255;v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=g;v=128+(c[q>>2]&63&255)&255;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=v;continue}}}}while(0);c[(c[l>>2]|0)+24>>2]=(c[h>>2]|0)-(c[p>>2]|0)}a[c[h>>2]>>0]=0;yd(c[l>>2]|0);g=(c[l>>2]|0)+28|0;b[g>>1]=(e[g>>1]|0)&-7169;a[(c[l>>2]|0)+30>>0]=a[k>>0]|0;g=(c[l>>2]|0)+28|0;b[g>>1]=e[g>>1]|0|512;c[(c[l>>2]|0)+4>>2]=c[p>>2];c[(c[l>>2]|0)+36>>2]=c[(c[l>>2]|0)+4>>2]}c[o>>2]=0;g=c[o>>2]|0;i=j;return g|0}function vk(d){d=d|0;var f=0,g=0,h=0,j=0;h=i;i=i+16|0;g=h+8|0;f=h+4|0;j=h;c[f>>2]=d;if((b[(c[f>>2]|0)+28>>1]&16384|0)!=0){Ad(c[f>>2]|0)|0}c[j>>2]=e[(c[f>>2]|0)+28>>1]|0;do{if((c[j>>2]&18|0)!=0?(c[(c[f>>2]|0)+4>>2]|0)!=(c[(c[f>>2]|0)+36>>2]|0):0){if((me(c[f>>2]|0,(c[(c[f>>2]|0)+24>>2]|0)+2|0,1)|0)==0){a[(c[(c[f>>2]|0)+4>>2]|0)+(c[(c[f>>2]|0)+24>>2]|0)>>0]=0;a[(c[(c[f>>2]|0)+4>>2]|0)+((c[(c[f>>2]|0)+24>>2]|0)+1)>>0]=0;j=(c[f>>2]|0)+28|0;b[j>>1]=e[j>>1]|0|512;break}c[g>>2]=7;j=c[g>>2]|0;i=h;return j|0}}while(0);c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}function wk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d+4|0;e=d;c[f>>2]=a;c[g>>2]=b;c[e>>2]=c[(c[g>>2]|0)+32>>2];if((c[e>>2]|0)==0){i=d;return}g=c[e>>2]|0;c[g>>2]=(c[g>>2]|0)+ -1;if((c[c[e>>2]>>2]|0)!=0){i=d;return}rb[c[(c[e>>2]|0)+4>>2]&31](c[(c[e>>2]|0)+8>>2]|0);Wb(c[f>>2]|0,c[e>>2]|0);i=d;return}function xk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;if((c[(c[e>>2]|0)+4>>2]|0)!=0){c[d>>2]=1;g=c[d>>2]|0;i=b;return g|0}c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[e>>2]|0)+20>>2]|0)){a=9;break}c[g>>2]=c[(c[(c[e>>2]|0)+16>>2]|0)+(c[f>>2]<<4)+4>>2];if((c[g>>2]|0)!=0?(Mk(c[g>>2]|0)|0)!=0:0){a=7;break}c[f>>2]=(c[f>>2]|0)+1}if((a|0)==7){c[d>>2]=1;g=c[d>>2]|0;i=b;return g|0}else if((a|0)==9){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}return 0}function yk(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;h=f+16|0;l=f+12|0;k=f+8|0;g=f+4|0;j=f;c[h>>2]=b;c[l>>2]=e;c[g>>2]=0;dh();Qb(c[h>>2]|0);c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[j>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[k>>2]<<4)+4>>2];if((c[j>>2]|0)!=0){if((Jk(c[j>>2]|0)|0)!=0){c[g>>2]=1}nd(c[j>>2]|0,c[l>>2]|0)|0}c[k>>2]=(c[k>>2]|0)+1}Kk(c[h>>2]|0)|0;eh();if((c[(c[h>>2]|0)+24>>2]&2|0)!=0?(d[(c[h>>2]|0)+137>>0]|0)==0:0){bf(c[h>>2]|0);$c(c[h>>2]|0)}b=(c[h>>2]|0)+496|0;c[b>>2]=0;c[b+4>>2]=0;b=(c[h>>2]|0)+504|0;c[b>>2]=0;c[b+4>>2]=0;b=(c[h>>2]|0)+24|0;c[b>>2]=c[b>>2]&-16777217;if((c[(c[h>>2]|0)+192>>2]|0)==0){i=f;return}if((c[g>>2]|0)==0?(a[(c[h>>2]|0)+62>>0]|0)!=0:0){i=f;return}rb[c[(c[h>>2]|0)+192>>2]&31](c[(c[h>>2]|0)+188>>2]|0);i=f;return}function zk(b){b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+4|0;f=e;c[d>>2]=b;while(1){b=c[d>>2]|0;if((c[(c[d>>2]|0)+480>>2]|0)==0){break}c[f>>2]=c[b+480>>2];c[(c[d>>2]|0)+480>>2]=c[(c[f>>2]|0)+24>>2];Wb(c[d>>2]|0,c[f>>2]|0)}c[b+488>>2]=0;c[(c[d>>2]|0)+492>>2]=0;a[(c[d>>2]|0)+69>>0]=0;i=e;return}function Ak(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;d=e+12|0;f=e+8|0;g=e+4|0;h=e;c[d>>2]=b;c[f>>2]=c[(c[d>>2]|0)+4>>2];Mc(c[d>>2]|0);c[g>>2]=c[(c[f>>2]|0)+8>>2];while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[g>>2];c[g>>2]=c[(c[g>>2]|0)+8>>2];if((c[c[h>>2]>>2]|0)!=(c[d>>2]|0)){continue}Ek(c[h>>2]|0)|0}nd(c[d>>2]|0,0)|0;if(!((a[(c[d>>2]|0)+9>>0]|0)!=0?(Fk(c[f>>2]|0)|0)==0:0)){Bh(c[c[f>>2]>>2]|0)|0;if((c[(c[f>>2]|0)+52>>2]|0)!=0?(c[(c[f>>2]|0)+48>>2]|0)!=0:0){rb[c[(c[f>>2]|0)+52>>2]&31](c[(c[f>>2]|0)+48>>2]|0)}Wb(0,c[(c[f>>2]|0)+48>>2]|0);xg(c[f>>2]|0);gc(c[f>>2]|0)}if((c[(c[d>>2]|0)+24>>2]|0)!=0){c[(c[(c[d>>2]|0)+24>>2]|0)+20>>2]=c[(c[d>>2]|0)+20>>2]}if((c[(c[d>>2]|0)+20>>2]|0)==0){h=c[d>>2]|0;gc(h);i=e;return 0}c[(c[(c[d>>2]|0)+20>>2]|0)+24>>2]=c[(c[d>>2]|0)+24>>2];h=c[d>>2]|0;gc(h);i=e;return 0}function Bk(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b+4|0;e=b;c[f>>2]=a;c[d>>2]=c[(c[f>>2]|0)+324>>2];c[(c[f>>2]|0)+324>>2]=0;if((c[d>>2]|0)==0){i=b;return}bf(c[f>>2]|0);do{c[e>>2]=c[(c[d>>2]|0)+24>>2];Dk(c[d>>2]|0);c[d>>2]=c[e>>2]}while((c[d>>2]|0)!=0);i=b;return}function Ck(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;g=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=2;c[g>>2]=2;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+20>>2]|0)){break}c[f>>2]=(c[(c[d>>2]|0)+16>>2]|0)+(c[g>>2]<<4);if((c[(c[f>>2]|0)+4>>2]|0)==0){Wb(c[d>>2]|0,c[c[f>>2]>>2]|0);c[c[f>>2]>>2]=0}else{if((c[e>>2]|0)<(c[g>>2]|0)){a=(c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]<<4)|0;h=(c[(c[d>>2]|0)+16>>2]|0)+(c[g>>2]<<4)|0;c[a+0>>2]=c[h+0>>2];c[a+4>>2]=c[h+4>>2];c[a+8>>2]=c[h+8>>2];c[a+12>>2]=c[h+12>>2]}c[e>>2]=(c[e>>2]|0)+1}c[g>>2]=(c[g>>2]|0)+1}_D((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]<<4)|0,0,(c[(c[d>>2]|0)+20>>2]|0)-(c[e>>2]|0)<<4|0)|0;c[(c[d>>2]|0)+20>>2]=c[e>>2];if((c[(c[d>>2]|0)+20>>2]|0)>2){i=b;return}if((c[(c[d>>2]|0)+16>>2]|0)==((c[d>>2]|0)+448|0)){i=b;return}h=(c[d>>2]|0)+448|0;g=c[(c[d>>2]|0)+16>>2]|0;c[h+0>>2]=c[g+0>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];c[h+16>>2]=c[g+16>>2];c[h+20>>2]=c[g+20>>2];c[h+24>>2]=c[g+24>>2];c[h+28>>2]=c[g+28>>2];Wb(c[d>>2]|0,c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+16>>2]=(c[d>>2]|0)+448;i=b;return}function Dk(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+8|0;d=b+4|0;f=b;c[e>>2]=a;c[d>>2]=c[c[e>>2]>>2];a=(c[e>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+ -1;if((c[(c[e>>2]|0)+12>>2]|0)!=0){i=b;return}c[f>>2]=c[(c[e>>2]|0)+8>>2];if((c[f>>2]|0)!=0){ub[c[(c[c[f>>2]>>2]|0)+16>>2]&31](c[f>>2]|0)|0}Wb(c[d>>2]|0,c[e>>2]|0);i=b;return}function Ek(a){a=a|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d+12|0;f=d+8|0;h=d+4|0;e=d;c[g>>2]=a;c[f>>2]=c[c[g>>2]>>2];if((c[f>>2]|0)==0){i=d;return 0}c[e>>2]=c[(c[g>>2]|0)+4>>2];Mc(c[f>>2]|0);Gk(c[g>>2]|0);a=c[(c[g>>2]|0)+8>>2]|0;if((c[(c[g>>2]|0)+12>>2]|0)!=0){c[(c[(c[g>>2]|0)+12>>2]|0)+8>>2]=a}else{c[(c[e>>2]|0)+8>>2]=a}if((c[(c[g>>2]|0)+8>>2]|0)!=0){c[(c[(c[g>>2]|0)+8>>2]|0)+12>>2]=c[(c[g>>2]|0)+12>>2]}c[h>>2]=0;while(1){if((c[h>>2]|0)>(b[(c[g>>2]|0)+84>>1]|0)){break}Hk(c[(c[g>>2]|0)+128+(c[h>>2]<<2)>>2]|0);c[h>>2]=(c[h>>2]|0)+1}Ik(c[e>>2]|0);Wb(c[c[f>>2]>>2]|0,c[(c[g>>2]|0)+20>>2]|0);i=d;return 0}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;f=b+8|0;e=b+4|0;d=b;c[f>>2]=a;c[d>>2]=0;g=(c[f>>2]|0)+64|0;c[g>>2]=(c[g>>2]|0)+ -1;if((c[(c[f>>2]|0)+64>>2]|0)>0){g=c[d>>2]|0;i=b;return g|0}if((c[1046]|0)!=(c[f>>2]|0)){c[e>>2]=c[1046];while(1){if((c[e>>2]|0)!=0){g=(c[(c[e>>2]|0)+68>>2]|0)!=(c[f>>2]|0)}else{g=0}a=c[e>>2]|0;if(!g){break}c[e>>2]=c[a+68>>2]}if((a|0)!=0){c[(c[e>>2]|0)+68>>2]=c[(c[f>>2]|0)+68>>2]}}else{c[1046]=c[(c[f>>2]|0)+68>>2]}c[d>>2]=1;g=c[d>>2]|0;i=b;return g|0}function Gk(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;gc(c[(c[e>>2]|0)+64>>2]|0);c[(c[e>>2]|0)+64>>2]=0;a[(c[e>>2]|0)+81>>0]=0;i=d;return}function Hk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}_i(c[(c[d>>2]|0)+68>>2]|0);i=b;return}function Ik(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;if((d[(c[e>>2]|0)+20>>0]|0|0)!=0){i=b;return}if((c[(c[e>>2]|0)+12>>2]|0)==0){i=b;return}Hk(c[(c[e>>2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;i=b;return}function Jk(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;if((c[e>>2]|0)==0){e=0;e=e&1;i=b;return e|0}e=(d[(c[e>>2]|0)+8>>0]|0|0)==2;e=e&1;i=b;return e|0}function Kk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Lk(c[d>>2]|0,68);i=b;return 0}function Lk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;g=d+16|0;j=d+12|0;k=d+8|0;f=d+4|0;h=d;c[e>>2]=a;c[g>>2]=b;if((c[(c[e>>2]|0)+320>>2]|0)==0){i=d;return}c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[e>>2]|0)+296>>2]|0)){break}c[k>>2]=c[(c[(c[e>>2]|0)+320>>2]|0)+(c[j>>2]<<2)>>2];c[f>>2]=c[(c[k>>2]|0)+8>>2];if((c[f>>2]|0)!=0?(c[h>>2]=c[(c[c[f>>2]>>2]|0)+(c[g>>2]|0)>>2],(c[h>>2]|0)!=0):0){ub[c[h>>2]&31](c[f>>2]|0)|0}c[(c[k>>2]|0)+20>>2]=0;Dk(c[k>>2]|0);c[j>>2]=(c[j>>2]|0)+1}Wb(c[e>>2]|0,c[(c[e>>2]|0)+320>>2]|0);c[(c[e>>2]|0)+296>>2]=0;c[(c[e>>2]|0)+320>>2]=0;i=d;return}function Mk(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[(c[b>>2]|0)+16>>2]|0)!=0|0}function Nk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;d=e+16|0;h=e+12|0;f=e+8|0;g=e+4|0;j=e;c[d>>2]=b;Qb(c[d>>2]|0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[d>>2]|0)+20>>2]|0)){break}c[f>>2]=c[(c[(c[d>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2];a:do{if((c[(c[(c[d>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]|0)!=0){c[g>>2]=c[(c[f>>2]|0)+16>>2];while(1){if((c[g>>2]|0)==0){break a}c[j>>2]=c[(c[g>>2]|0)+8>>2];if((a[(c[j>>2]|0)+44>>0]&16|0)!=0){Ok(c[d>>2]|0,c[j>>2]|0)}c[g>>2]=c[c[g>>2]>>2]}}}while(0);c[h>>2]=(c[h>>2]|0)+1}Bk(c[d>>2]|0);i=e;return}function Ok(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e+12|0;j=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[j>>2]=b;c[g>>2]=(c[j>>2]|0)+60;while(1){if((c[c[g>>2]>>2]|0)==0){d=6;break}b=c[c[g>>2]>>2]|0;if((c[c[c[g>>2]>>2]>>2]|0)==(c[h>>2]|0)){break}c[g>>2]=b+24}if((d|0)==6){i=e;return}c[f>>2]=b;c[c[g>>2]>>2]=c[(c[f>>2]|0)+24>>2];Dk(c[f>>2]|0);i=e;return}function Pk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[d>>2]|0)+40>>2]|0)==0){i=b;return}rb[c[38664>>2]&31](c[(c[d>>2]|0)+40>>2]|0);i=b;return}function Qk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;c[b>>2]=a;d=3136|0;a=d+68|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));if((c[38516>>2]|0)!=0){c[784]=8;c[3188>>2]=8}c[3148>>2]=10;c[3164>>2]=1;i=b;return 0}function Rk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;c[b>>2]=a;d=3136|0;a=d+68|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));i=b;return}function Sk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;h=e+24|0;j=e+20|0;k=e+16|0;f=e+12|0;g=e+8|0;l=e+4|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[e>>2]=0;c[l>>2]=48;c[f>>2]=Kc(c[l>>2]|0)|0;if((c[f>>2]|0)==0){l=c[f>>2]|0;i=e;return l|0}c[g>>2]=3136;c[c[f>>2]>>2]=c[g>>2];c[(c[f>>2]|0)+4>>2]=c[h>>2];c[(c[f>>2]|0)+8>>2]=c[j>>2];c[(c[f>>2]|0)+12>>2]=(c[k>>2]|0)!=0?1:0;if((c[k>>2]|0)==0){l=c[f>>2]|0;i=e;return l|0}c[(c[f>>2]|0)+16>>2]=10;l=(c[g>>2]|0)+8|0;c[l>>2]=(c[l>>2]|0)+(c[(c[f>>2]|0)+16>>2]|0);c[(c[g>>2]|0)+12>>2]=(c[(c[g>>2]|0)+4>>2]|0)+10-(c[(c[g>>2]|0)+8>>2]|0);l=c[f>>2]|0;i=e;return l|0}function Tk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;h=d+12|0;g=d+8|0;e=d+4|0;f=d;c[h>>2]=a;c[g>>2]=b;c[e>>2]=c[h>>2];if((c[(c[e>>2]|0)+12>>2]|0)==0){i=d;return}c[f>>2]=c[c[e>>2]>>2];h=(c[f>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+((c[g>>2]|0)-(c[(c[e>>2]|0)+20>>2]|0));c[(c[f>>2]|0)+12>>2]=(c[(c[f>>2]|0)+4>>2]|0)+10-(c[(c[f>>2]|0)+8>>2]|0);c[(c[e>>2]|0)+20>>2]=c[g>>2];c[(c[e>>2]|0)+24>>2]=(((c[(c[e>>2]|0)+20>>2]|0)*9|0)>>>0)/10|0;$k(c[f>>2]|0);i=d;return}function Uk(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;b=d+4|0;e=d;c[f>>2]=a;c[e>>2]=c[f>>2];c[b>>2]=c[(c[e>>2]|0)+36>>2];i=d;return c[b>>2]|0}function Vk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+48|0;q=o+36|0;f=o+32|0;g=o+28|0;n=o+24|0;k=o+20|0;h=o+16|0;l=o+12|0;p=o+8|0;j=o+4|0;m=o;c[q>>2]=b;c[f>>2]=d;c[g>>2]=e;c[k>>2]=c[q>>2];c[l>>2]=0;a:do{if((c[(c[k>>2]|0)+40>>2]|0)>>>0>0){c[p>>2]=((c[f>>2]|0)>>>0)%((c[(c[k>>2]|0)+40>>2]|0)>>>0)|0;c[l>>2]=c[(c[(c[k>>2]|0)+44>>2]|0)+(c[p>>2]<<2)>>2];while(1){if((c[l>>2]|0)==0){break a}if((c[(c[l>>2]|0)+8>>2]|0)==(c[f>>2]|0)){break a}c[l>>2]=c[(c[l>>2]|0)+16>>2]}}}while(0);do{if((c[l>>2]|0)!=0){if((a[(c[l>>2]|0)+12>>0]|0)==0){al(c[l>>2]|0)}}else{if((c[g>>2]|0)!=0){c[h>>2]=c[c[k>>2]>>2];c[n>>2]=(c[(c[k>>2]|0)+36>>2]|0)-(c[(c[k>>2]|0)+32>>2]|0);if((c[g>>2]|0)==1){if((c[n>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|0)>>>0){break}if((c[n>>2]|0)>>>0>=(c[(c[k>>2]|0)+24>>2]|0)>>>0){break}if((el(c[k>>2]|0)|0)!=0){break}}if((c[(c[k>>2]|0)+36>>2]|0)>>>0>=(c[(c[k>>2]|0)+40>>2]|0)>>>0?(fl(c[k>>2]|0)|0)!=0:0){break}do{if((c[(c[k>>2]|0)+12>>2]|0)!=0?(c[(c[h>>2]|0)+24>>2]|0)!=0:0){if((!(((c[(c[k>>2]|0)+36>>2]|0)+1|0)>>>0>=(c[(c[k>>2]|0)+20>>2]|0)>>>0)?!((c[(c[h>>2]|0)+16>>2]|0)>>>0>=(c[(c[h>>2]|0)+4>>2]|0)>>>0):0)?(el(c[k>>2]|0)|0)==0:0){break}c[l>>2]=c[(c[h>>2]|0)+24>>2];bl(c[l>>2]|0);al(c[l>>2]|0);c[j>>2]=c[(c[l>>2]|0)+20>>2];if(((c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0)|0)!=((c[(c[k>>2]|0)+4>>2]|0)+(c[(c[k>>2]|0)+8>>2]|0)|0)){cl(c[l>>2]|0);c[l>>2]=0;break}else{q=(c[h>>2]|0)+16|0;c[q>>2]=(c[q>>2]|0)-((c[(c[j>>2]|0)+12>>2]|0)-(c[(c[k>>2]|0)+12>>2]|0));break}}}while(0);if((c[l>>2]|0)==0){if((c[g>>2]|0)==1){dh()}c[l>>2]=gl(c[k>>2]|0)|0;if((c[g>>2]|0)==1){eh()}}if((c[l>>2]|0)!=0){c[m>>2]=((c[f>>2]|0)>>>0)%((c[(c[k>>2]|0)+40>>2]|0)>>>0)|0;q=(c[k>>2]|0)+36|0;c[q>>2]=(c[q>>2]|0)+1;c[(c[l>>2]|0)+8>>2]=c[f>>2];c[(c[l>>2]|0)+16>>2]=c[(c[(c[k>>2]|0)+44>>2]|0)+(c[m>>2]<<2)>>2];c[(c[l>>2]|0)+20>>2]=c[k>>2];c[(c[l>>2]|0)+28>>2]=0;c[(c[l>>2]|0)+24>>2]=0;a[(c[l>>2]|0)+12>>0]=1;c[c[(c[l>>2]|0)+4>>2]>>2]=0;c[(c[(c[k>>2]|0)+44>>2]|0)+(c[m>>2]<<2)>>2]=c[l>>2]}}}}while(0);if((c[l>>2]|0)==0){q=c[l>>2]|0;i=o;return q|0}if(!((c[f>>2]|0)>>>0>(c[(c[k>>2]|0)+28>>2]|0)>>>0)){q=c[l>>2]|0;i=o;return q|0}c[(c[k>>2]|0)+28>>2]=c[f>>2];q=c[l>>2]|0;i=o;return q|0}function Wk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;m=h+20|0;l=h+16|0;k=h+12|0;f=h+8|0;g=h+4|0;j=h;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[f>>2]=c[m>>2];c[g>>2]=c[l>>2];c[j>>2]=c[c[f>>2]>>2];if((c[k>>2]|0)==0?!((c[(c[j>>2]|0)+16>>2]|0)>>>0>(c[(c[j>>2]|0)+4>>2]|0)>>>0):0){d=c[g>>2]|0;e=c[j>>2]|0;if((c[(c[j>>2]|0)+20>>2]|0)!=0){c[(c[e+20>>2]|0)+28>>2]=d;c[(c[g>>2]|0)+24>>2]=c[(c[j>>2]|0)+20>>2];c[(c[j>>2]|0)+20>>2]=c[g>>2]}else{c[e+24>>2]=d;c[(c[j>>2]|0)+20>>2]=c[g>>2]}m=(c[f>>2]|0)+32|0;c[m>>2]=(c[m>>2]|0)+1;a[(c[g>>2]|0)+12>>0]=0;i=h;return}bl(c[g>>2]|0);cl(c[g>>2]|0);i=h;return}function Xk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;o=f+28|0;n=f+24|0;m=f+20|0;j=f+16|0;k=f+12|0;g=f+8|0;h=f+4|0;l=f;c[o>>2]=a;c[n>>2]=b;c[m>>2]=d;c[j>>2]=e;c[k>>2]=c[o>>2];c[g>>2]=c[n>>2];c[l>>2]=((c[m>>2]|0)>>>0)%((c[(c[k>>2]|0)+40>>2]|0)>>>0)|0;c[h>>2]=(c[(c[k>>2]|0)+44>>2]|0)+(c[l>>2]<<2);while(1){if((c[c[h>>2]>>2]|0)==(c[g>>2]|0)){break}c[h>>2]=(c[c[h>>2]>>2]|0)+16}c[c[h>>2]>>2]=c[(c[g>>2]|0)+16>>2];c[l>>2]=((c[j>>2]|0)>>>0)%((c[(c[k>>2]|0)+40>>2]|0)>>>0)|0;c[(c[g>>2]|0)+8>>2]=c[j>>2];c[(c[g>>2]|0)+16>>2]=c[(c[(c[k>>2]|0)+44>>2]|0)+(c[l>>2]<<2)>>2];c[(c[(c[k>>2]|0)+44>>2]|0)+(c[l>>2]<<2)>>2]=c[g>>2];if(!((c[j>>2]|0)>>>0>(c[(c[k>>2]|0)+28>>2]|0)>>>0)){i=f;return}c[(c[k>>2]|0)+28>>2]=c[j>>2];i=f;return}function Yk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d+4|0;e=d;c[g>>2]=a;c[f>>2]=b;c[e>>2]=c[g>>2];if(!((c[f>>2]|0)>>>0<=(c[(c[e>>2]|0)+28>>2]|0)>>>0)){i=d;return}dl(c[e>>2]|0,c[f>>2]|0);c[(c[e>>2]|0)+28>>2]=(c[f>>2]|0)-1;i=d;return}function Zk(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b+4|0;e=b;c[f>>2]=a;c[d>>2]=c[f>>2];c[e>>2]=c[c[d>>2]>>2];dl(c[d>>2]|0,0);a=(c[e>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)-(c[(c[d>>2]|0)+20>>2]|0);a=(c[e>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)-(c[(c[d>>2]|0)+16>>2]|0);c[(c[e>>2]|0)+12>>2]=(c[(c[e>>2]|0)+4>>2]|0)+10-(c[(c[e>>2]|0)+8>>2]|0);$k(c[e>>2]|0);gc(c[(c[d>>2]|0)+44>>2]|0);gc(c[d>>2]|0);i=b;return}function _k(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;g=b+12|0;d=b+8|0;e=b+4|0;f=b;c[g>>2]=a;c[d>>2]=c[g>>2];if((c[(c[d>>2]|0)+12>>2]|0)==0){i=b;return}c[e>>2]=c[c[d>>2]>>2];c[f>>2]=c[(c[e>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2]=0;$k(c[e>>2]|0);c[(c[e>>2]|0)+4>>2]=c[f>>2];i=b;return}function $k(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;while(1){if(!((c[(c[d>>2]|0)+16>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0)){a=5;break}if((c[(c[d>>2]|0)+24>>2]|0)==0){a=5;break}c[e>>2]=c[(c[d>>2]|0)+24>>2];al(c[e>>2]|0);bl(c[e>>2]|0);cl(c[e>>2]|0)}if((a|0)==5){i=b;return}}function al(b){b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;e=f+4|0;g=f;c[d>>2]=b;c[e>>2]=c[(c[d>>2]|0)+20>>2];c[g>>2]=c[c[e>>2]>>2];b=c[(c[d>>2]|0)+24>>2]|0;if((c[(c[d>>2]|0)+28>>2]|0)!=0){c[(c[(c[d>>2]|0)+28>>2]|0)+24>>2]=b}else{c[(c[g>>2]|0)+20>>2]=b}b=c[(c[d>>2]|0)+28>>2]|0;if((c[(c[d>>2]|0)+24>>2]|0)!=0){c[(c[(c[d>>2]|0)+24>>2]|0)+28>>2]=b}else{c[(c[g>>2]|0)+24>>2]=b}c[(c[d>>2]|0)+24>>2]=0;c[(c[d>>2]|0)+28>>2]=0;a[(c[d>>2]|0)+12>>0]=1;b=(c[e>>2]|0)+32|0;c[b>>2]=(c[b>>2]|0)+ -1;i=f;return}function bl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;d=e+4|0;b=e;c[f>>2]=a;c[d>>2]=c[(c[f>>2]|0)+20>>2];c[g>>2]=((c[(c[f>>2]|0)+8>>2]|0)>>>0)%((c[(c[d>>2]|0)+40>>2]|0)>>>0)|0;c[b>>2]=(c[(c[d>>2]|0)+44>>2]|0)+(c[g>>2]<<2);while(1){a=(c[c[b>>2]>>2]|0)+16|0;if((c[c[b>>2]>>2]|0)==(c[f>>2]|0)){break}c[b>>2]=a}c[c[b>>2]>>2]=c[a>>2];g=(c[d>>2]|0)+36|0;c[g>>2]=(c[g>>2]|0)+ -1;i=e;return}function cl(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((c[e>>2]|0)==0){i=b;return}c[d>>2]=c[(c[e>>2]|0)+20>>2];Gg(c[c[e>>2]>>2]|0)|0;if((c[(c[d>>2]|0)+12>>2]|0)==0){i=b;return}e=(c[c[d>>2]>>2]|0)+16|0;c[e>>2]=(c[e>>2]|0)+ -1;i=b;return}function dl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;h=e+16|0;k=e+12|0;j=e+8|0;f=e+4|0;g=e;c[h>>2]=b;c[k>>2]=d;c[j>>2]=0;while(1){if(!((c[j>>2]|0)>>>0<(c[(c[h>>2]|0)+40>>2]|0)>>>0)){break}c[f>>2]=(c[(c[h>>2]|0)+44>>2]|0)+(c[j>>2]<<2);while(1){b=c[c[f>>2]>>2]|0;c[g>>2]=b;if((b|0)==0){break}if(!((c[(c[g>>2]|0)+8>>2]|0)>>>0>=(c[k>>2]|0)>>>0)){c[f>>2]=(c[g>>2]|0)+16;continue}b=(c[h>>2]|0)+36|0;c[b>>2]=(c[b>>2]|0)+ -1;c[c[f>>2]>>2]=c[(c[g>>2]|0)+16>>2];if((a[(c[g>>2]|0)+12>>0]|0)==0){al(c[g>>2]|0)}cl(c[g>>2]|0)}c[j>>2]=(c[j>>2]|0)+1}i=e;return}function el(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;if((c[3172>>2]|0)!=0?((c[(c[e>>2]|0)+4>>2]|0)+(c[(c[e>>2]|0)+8>>2]|0)|0)<=(c[3168>>2]|0):0){c[d>>2]=c[3200>>2];e=c[d>>2]|0;i=b;return e|0}c[d>>2]=hl()|0;e=c[d>>2]|0;i=b;return e|0}function fl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;b=d+24|0;e=d+20|0;f=d+16|0;j=d+12|0;h=d+8|0;g=d+4|0;k=d;c[b>>2]=a;a=c[(c[b>>2]|0)+40>>2]<<1;c[f>>2]=a;c[f>>2]=(c[f>>2]|0)>>>0<256?256:a;if((c[(c[b>>2]|0)+40>>2]|0)!=0){dh()}c[e>>2]=Kc(c[f>>2]<<2)|0;if((c[(c[b>>2]|0)+40>>2]|0)!=0){eh()}if((c[e>>2]|0)==0){k=c[b>>2]|0;k=k+44|0;k=c[k>>2]|0;k=(k|0)!=0;k=k?0:7;i=d;return k|0}c[j>>2]=0;while(1){if(!((c[j>>2]|0)>>>0<(c[(c[b>>2]|0)+40>>2]|0)>>>0)){break}c[g>>2]=c[(c[(c[b>>2]|0)+44>>2]|0)+(c[j>>2]<<2)>>2];while(1){a=c[g>>2]|0;c[h>>2]=a;if((a|0)==0){break}c[k>>2]=((c[(c[h>>2]|0)+8>>2]|0)>>>0)%((c[f>>2]|0)>>>0)|0;c[g>>2]=c[(c[h>>2]|0)+16>>2];c[(c[h>>2]|0)+16>>2]=c[(c[e>>2]|0)+(c[k>>2]<<2)>>2];c[(c[e>>2]|0)+(c[k>>2]<<2)>>2]=c[h>>2]}c[j>>2]=(c[j>>2]|0)+1}gc(c[(c[b>>2]|0)+44>>2]|0);c[(c[b>>2]|0)+44>>2]=c[e>>2];c[(c[b>>2]|0)+40>>2]=c[f>>2];k=c[b>>2]|0;k=k+44|0;k=c[k>>2]|0;k=(k|0)!=0;k=k?0:7;i=d;return k|0}function gl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;f=b+8|0;e=b+4|0;g=b;c[f>>2]=a;c[e>>2]=0;c[g>>2]=Ng(32+(c[(c[f>>2]|0)+4>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)|0)|0;c[e>>2]=(c[g>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0);if((c[g>>2]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}c[c[e>>2]>>2]=c[g>>2];c[(c[e>>2]|0)+4>>2]=(c[e>>2]|0)+32;if((c[(c[f>>2]|0)+12>>2]|0)!=0){g=(c[c[f>>2]>>2]|0)+16|0;c[g>>2]=(c[g>>2]|0)+1}c[d>>2]=c[e>>2];g=c[d>>2]|0;i=b;return g|0}function hl(){return c[428>>2]|0}function il(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b;f=b+8|0;d=b+4|0;c[f>>2]=a;c[f>>2]=(c[f>>2]|0)+7&-8;c[d>>2]=QD((c[f>>2]|0)+8|0)|0;a=c[f>>2]|0;if((c[d>>2]|0)!=0){f=c[d>>2]|0;c[f>>2]=a;c[f+4>>2]=((a|0)<0)<<31>>31;c[d>>2]=(c[d>>2]|0)+8;f=c[d>>2]|0;i=b;return f|0}else{c[e>>2]=a;rc(7,6144,e);f=c[d>>2]|0;i=b;return f|0}return 0}function jl(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];c[d>>2]=(c[d>>2]|0)+ -8;RD(c[d>>2]|0);i=b;return}function kl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;g=d;h=d+16|0;f=d+12|0;e=d+8|0;c[h>>2]=a;c[f>>2]=b;c[e>>2]=c[h>>2];c[e>>2]=(c[e>>2]|0)+ -8;c[e>>2]=SD(c[e>>2]|0,(c[f>>2]|0)+8|0)|0;if((c[e>>2]|0)!=0){h=c[f>>2]|0;a=c[e>>2]|0;c[a>>2]=h;c[a+4>>2]=((h|0)<0)<<31>>31;c[e>>2]=(c[e>>2]|0)+8;a=c[e>>2]|0;i=d;return a|0}else{h=ll(c[h>>2]|0)|0;a=c[f>>2]|0;c[g>>2]=h;c[g+4>>2]=a;rc(7,6104,g);a=c[e>>2]|0;i=d;return a|0}return 0}function ll(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;f=b+4|0;e=b;c[f>>2]=a;if((c[f>>2]|0)==0){c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}else{c[e>>2]=c[f>>2];c[e>>2]=(c[e>>2]|0)+ -8;c[d>>2]=c[c[e>>2]>>2];f=c[d>>2]|0;i=b;return f|0}return 0}function ml(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[b>>2]|0)+7&-8|0}function nl(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function ol(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return}function pl(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;p=i;i=i+64|0;h=p+52|0;v=p+48|0;t=p+44|0;k=p+40|0;q=p+36|0;l=p+32|0;j=p+28|0;s=p+24|0;g=p+20|0;o=p+16|0;m=p+12|0;n=p+8|0;r=p+4|0;u=p;c[h>>2]=b;c[v>>2]=e;c[t>>2]=f;c[g>>2]=0;c[o>>2]=0;if((Kd(c[c[t>>2]>>2]|0)|0)==5){i=p;return}c[k>>2]=Bd(c[c[t>>2]>>2]|0)|0;if((c[k>>2]|0)==0){i=p;return}c[l>>2]=Cd(c[c[t>>2]>>2]|0)|0;a:do{if((c[v>>2]|0)!=1){b=Bd(c[(c[t>>2]|0)+4>>2]|0)|0;c[q>>2]=b;if((b|0)==0){i=p;return}c[n>>2]=c[q>>2];c[m>>2]=0;while(1){if((a[c[n>>2]>>0]|0)==0){break}b=c[n>>2]|0;c[n>>2]=b+1;b:do{if((d[b>>0]|0)>=192){while(1){if((a[c[n>>2]>>0]&192|0)!=128){break b}c[n>>2]=(c[n>>2]|0)+1}}}while(0);c[m>>2]=(c[m>>2]|0)+1}if((c[m>>2]|0)>0){e=c[h>>2]|0;b=c[m>>2]|0;b=lE(b|0,((b|0)<0)<<31>>31|0,5,0)|0;c[o>>2]=Sm(e,b,D)|0;if((c[o>>2]|0)==0){i=p;return}c[g>>2]=(c[o>>2]|0)+(c[m>>2]<<2);c[n>>2]=c[q>>2];c[m>>2]=0;while(1){if((a[c[n>>2]>>0]|0)==0){break a}c[(c[o>>2]|0)+(c[m>>2]<<2)>>2]=c[n>>2];b=c[n>>2]|0;c[n>>2]=b+1;c:do{if((d[b>>0]|0)>=192){while(1){if((a[c[n>>2]>>0]&192|0)!=128){break c}c[n>>2]=(c[n>>2]|0)+1}}}while(0);a[(c[g>>2]|0)+(c[m>>2]|0)>>0]=(c[n>>2]|0)-(c[(c[o>>2]|0)+(c[m>>2]<<2)>>2]|0);c[m>>2]=(c[m>>2]|0)+1}}}else{c[m>>2]=1;c[g>>2]=9800;c[o>>2]=9808;c[q>>2]=0}}while(0);if((c[m>>2]|0)>0){c[j>>2]=ie(c[h>>2]|0)|0;d:do{if((c[j>>2]&1|0)!=0){while(1){if((c[l>>2]|0)<=0){break d}c[r>>2]=0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[m>>2]|0)){break}c[r>>2]=d[(c[g>>2]|0)+(c[s>>2]|0)>>0]|0;if((c[r>>2]|0)<=(c[l>>2]|0)?(VD(c[k>>2]|0,c[(c[o>>2]|0)+(c[s>>2]<<2)>>2]|0,c[r>>2]|0)|0)==0:0){break}c[s>>2]=(c[s>>2]|0)+1}if((c[s>>2]|0)>=(c[m>>2]|0)){break d}c[k>>2]=(c[k>>2]|0)+(c[r>>2]|0);c[l>>2]=(c[l>>2]|0)-(c[r>>2]|0)}}}while(0);e:do{if((c[j>>2]&2|0)!=0){while(1){if((c[l>>2]|0)<=0){break e}c[u>>2]=0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[m>>2]|0)){break}c[u>>2]=d[(c[g>>2]|0)+(c[s>>2]|0)>>0]|0;if((c[u>>2]|0)<=(c[l>>2]|0)?(VD((c[k>>2]|0)+((c[l>>2]|0)-(c[u>>2]|0))|0,c[(c[o>>2]|0)+(c[s>>2]<<2)>>2]|0,c[u>>2]|0)|0)==0:0){break}c[s>>2]=(c[s>>2]|0)+1}if((c[s>>2]|0)>=(c[m>>2]|0)){break e}c[l>>2]=(c[l>>2]|0)-(c[u>>2]|0)}}}while(0);if((c[q>>2]|0)!=0){gc(c[o>>2]|0)}}Wd(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0,-1);i=p;return}function ql(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;g=l+24|0;n=l+20|0;h=l+16|0;k=l+12|0;m=l+8|0;j=l+4|0;e=l;c[g>>2]=a;c[n>>2]=b;c[h>>2]=d;a=(ie(c[g>>2]|0)|0)==0;c[m>>2]=a?0:-1;c[e>>2]=Tm(c[g>>2]|0)|0;c[j>>2]=0;if((Kd(c[c[h>>2]>>2]|0)|0)==5){i=l;return}c[k>>2]=1;while(1){if((c[k>>2]|0)>=(c[n>>2]|0)){break}if((Kd(c[(c[h>>2]|0)+(c[k>>2]<<2)>>2]|0)|0)==5){f=9;break}a=Um(c[(c[h>>2]|0)+(c[j>>2]<<2)>>2]|0,c[(c[h>>2]|0)+(c[k>>2]<<2)>>2]|0,c[e>>2]|0)|0;if((a^c[m>>2]|0)>=0){c[j>>2]=c[k>>2]}c[k>>2]=(c[k>>2]|0)+1}if((f|0)==9){i=l;return}Xd(c[g>>2]|0,c[(c[h>>2]|0)+(c[j>>2]<<2)>>2]|0);i=l;return}function rl(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;h=m+28|0;o=m+20|0;k=m+16|0;j=m+12|0;f=m+8|0;n=m+4|0;l=m;c[h>>2]=a;c[m+24>>2]=d;c[o>>2]=e;c[k>>2]=c[c[o>>2]>>2];c[j>>2]=ke(c[h>>2]|0,40)|0;if((c[j>>2]|0)==0){i=m;return}a=(Kd(c[c[o>>2]>>2]|0)|0)==5;o=(b[(c[j>>2]|0)+28>>1]|0)!=0;if(a){if(!o){i=m;return}Ym(c[h>>2]|0);i=m;return}if(!o){Yd(c[j>>2]|0,c[k>>2]|0)|0;i=m;return}c[l>>2]=Tm(c[h>>2]|0)|0;c[f>>2]=(ie(c[h>>2]|0)|0)!=0&1;c[n>>2]=Um(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;if(!((c[f>>2]|0)!=0?(c[n>>2]|0)<0:0)){g=8}do{if((g|0)==8){if((c[f>>2]|0)==0?(c[n>>2]|0)>0:0){break}Ym(c[h>>2]|0);i=m;return}}while(0);Yd(c[j>>2]|0,c[k>>2]|0)|0;i=m;return}function sl(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=ke(c[f>>2]|0,0)|0;if((c[e>>2]|0)==0){i=d;return}if((b[(c[e>>2]|0)+28>>1]|0)!=0){Xd(c[f>>2]|0,c[e>>2]|0)}yd(c[e>>2]|0);i=d;return}function tl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+12|0;h=e+4|0;f=e;c[g>>2]=a;c[e+8>>2]=b;c[h>>2]=d;c[f>>2]=0;d=Kd(c[c[h>>2]>>2]|0)|0;if((d|0)==2){c[f>>2]=9776}else if((d|0)==1){c[f>>2]=9760}else if((d|0)==4){c[f>>2]=9784}else if((d|0)==3){c[f>>2]=9768}else{c[f>>2]=9792}Wd(c[g>>2]|0,c[f>>2]|0,-1,0);i=e;return}function ul(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;j=g+16|0;h=g+8|0;k=g+4|0;l=g;c[j>>2]=b;c[g+12>>2]=e;c[h>>2]=f;f=Kd(c[c[h>>2]>>2]|0)|0;if((f|0)==2|(f|0)==1|(f|0)==4){b=c[j>>2]|0;Rd(b,Cd(c[c[h>>2]>>2]|0)|0);i=g;return}else if((f|0)==3){c[l>>2]=Bd(c[c[h>>2]>>2]|0)|0;if((c[l>>2]|0)==0){i=g;return}c[k>>2]=0;a:while(1){if((a[c[l>>2]>>0]|0)==0){break}c[k>>2]=(c[k>>2]|0)+1;b=c[l>>2]|0;c[l>>2]=b+1;if((d[b>>0]|0)<192){continue}while(1){if((a[c[l>>2]>>0]&192|0)!=128){continue a}c[l>>2]=(c[l>>2]|0)+1}}Rd(c[j>>2]|0,c[k>>2]|0);i=g;return}else{Ud(c[j>>2]|0);i=g;return}}function vl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+48|0;g=m+40|0;o=m+32|0;l=m+28|0;n=m+24|0;k=m+20|0;j=m+16|0;p=m+12|0;q=m+8|0;h=m+4|0;f=m;c[g>>2]=b;c[m+36>>2]=d;c[o>>2]=e;c[h>>2]=1;c[p>>2]=Kd(c[c[o>>2]>>2]|0)|0;c[q>>2]=Kd(c[(c[o>>2]|0)+4>>2]|0)|0;if((c[p>>2]|0)==5){i=m;return}if((c[q>>2]|0)==5){i=m;return}c[k>>2]=Cd(c[c[o>>2]>>2]|0)|0;c[j>>2]=Cd(c[(c[o>>2]|0)+4>>2]|0)|0;if((c[p>>2]|0)==4?(c[q>>2]|0)==4:0){c[l>>2]=zd(c[c[o>>2]>>2]|0)|0;c[n>>2]=zd(c[(c[o>>2]|0)+4>>2]|0)|0;c[f>>2]=0}else{c[l>>2]=Bd(c[c[o>>2]>>2]|0)|0;c[n>>2]=Bd(c[(c[o>>2]|0)+4>>2]|0)|0;c[f>>2]=1}a:while(1){if((c[j>>2]|0)>(c[k>>2]|0)){break}if((VD(c[l>>2]|0,c[n>>2]|0,c[j>>2]|0)|0)==0){break}c[h>>2]=(c[h>>2]|0)+1;while(1){c[k>>2]=(c[k>>2]|0)+ -1;c[l>>2]=(c[l>>2]|0)+1;if((c[f>>2]|0)==0){continue a}if((a[c[l>>2]>>0]&192|0)!=128){continue a}}}if((c[j>>2]|0)>(c[k>>2]|0)){c[h>>2]=0}Rd(c[g>>2]|0,c[h>>2]|0);i=m;return}function wl(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=i;i=i+48|0;k=l+44|0;r=l+40|0;p=l+36|0;g=l+32|0;m=l+28|0;n=l+24|0;o=l+20|0;j=l+8|0;h=l;q=l+16|0;c[k>>2]=b;c[r>>2]=e;c[p>>2]=f;c[q>>2]=0;if((Kd(c[(c[p>>2]|0)+4>>2]|0)|0)==5){i=l;return}if((c[r>>2]|0)==3?(Kd(c[(c[p>>2]|0)+8>>2]|0)|0)==5:0){i=l;return}c[o>>2]=Kd(c[c[p>>2]>>2]|0)|0;b=Gd(c[(c[p>>2]|0)+4>>2]|0)|0;f=j;c[f>>2]=b;c[f+4>>2]=((b|0)<0)<<31>>31;f=c[c[p>>2]>>2]|0;a:do{if((c[o>>2]|0)==4){c[n>>2]=Cd(f)|0;c[g>>2]=zd(c[c[p>>2]>>2]|0)|0;if((c[g>>2]|0)==0){i=l;return}}else{c[g>>2]=Bd(f)|0;if((c[g>>2]|0)==0){i=l;return}c[n>>2]=0;if((c[j+4>>2]|0)<0){c[m>>2]=c[g>>2];while(1){if((a[c[m>>2]>>0]|0)==0){break a}b=c[m>>2]|0;c[m>>2]=b+1;b:do{if((d[b>>0]|0)>=192){while(1){if((a[c[m>>2]>>0]&192|0)!=128){break b}c[m>>2]=(c[m>>2]|0)+1}}}while(0);c[n>>2]=(c[n>>2]|0)+1}}}}while(0);if((c[r>>2]|0)==3){e=Gd(c[(c[p>>2]|0)+8>>2]|0)|0;b=h;c[b>>2]=e;c[b+4>>2]=((e|0)<0)<<31>>31;if((c[h+4>>2]|0)<0){e=h;e=ZD(0,0,c[e>>2]|0,c[e+4>>2]|0)|0;b=h;c[b>>2]=e;c[b+4>>2]=D;c[q>>2]=1}}else{e=c[(je(c[k>>2]|0)|0)+88>>2]|0;b=h;c[b>>2]=e;c[b+4>>2]=((e|0)<0)<<31>>31}do{if((c[j+4>>2]|0)<0){e=c[n>>2]|0;b=j;e=bE(c[b>>2]|0,c[b+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;b=j;c[b>>2]=e;c[b+4>>2]=D;if((c[j+4>>2]|0)<0){r=j;e=h;r=bE(c[e>>2]|0,c[e+4>>2]|0,c[r>>2]|0,c[r+4>>2]|0)|0;e=D;f=h;c[f>>2]=r;c[f+4>>2]=e;f=(c[h+4>>2]|0)<0;b=h;c[b>>2]=f?0:r;c[b+4>>2]=f?0:e;b=j;c[b>>2]=0;c[b+4>>2]=0}}else{b=j;e=c[b+4>>2]|0;if((e|0)>0|(e|0)==0&(c[b>>2]|0)>>>0>0){e=j;e=bE(c[e>>2]|0,c[e+4>>2]|0,-1,-1)|0;b=j;c[b>>2]=e;c[b+4>>2]=D;break}b=h;e=c[b+4>>2]|0;if((e|0)>0|(e|0)==0&(c[b>>2]|0)>>>0>0){e=h;e=bE(c[e>>2]|0,c[e+4>>2]|0,-1,-1)|0;b=h;c[b>>2]=e;c[b+4>>2]=D}}}while(0);if((c[q>>2]|0)!=0?(e=h,b=j,e=ZD(c[b>>2]|0,c[b+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0,b=j,c[b>>2]=e,c[b+4>>2]=D,(c[j+4>>2]|0)<0):0){e=j;b=h;e=bE(c[b>>2]|0,c[b+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;b=h;c[b>>2]=e;c[b+4>>2]=D;b=j;c[b>>2]=0;c[b+4>>2]=0}if((c[o>>2]|0)==4){r=j;e=h;e=bE(c[r>>2]|0,c[r+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;r=D;b=c[n>>2]|0;f=((b|0)<0)<<31>>31;if((r|0)>(f|0)|(r|0)==(f|0)&e>>>0>b>>>0){e=c[n>>2]|0;r=j;r=ZD(e|0,((e|0)<0)<<31>>31|0,c[r>>2]|0,c[r+4>>2]|0)|0;e=D;f=h;c[f>>2]=r;c[f+4>>2]=e;f=(c[h+4>>2]|0)<0;b=h;c[b>>2]=f?0:r;c[b+4>>2]=f?0:e}Ld(c[k>>2]|0,(c[g>>2]|0)+(c[j>>2]|0)|0,c[h>>2]|0,-1);i=l;return}while(1){if((d[c[g>>2]>>0]|0)!=0){o=j;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0}else{o=0}n=c[g>>2]|0;if(!o){break}c[g>>2]=n+1;c:do{if((d[n>>0]|0)>=192){while(1){if((a[c[g>>2]>>0]&192|0)!=128){break c}c[g>>2]=(c[g>>2]|0)+1}}}while(0);e=j;e=bE(c[e>>2]|0,c[e+4>>2]|0,-1,-1)|0;b=j;c[b>>2]=e;c[b+4>>2]=D}c[m>>2]=n;while(1){if((d[c[m>>2]>>0]|0)==0){break}b=h;if(!((c[b>>2]|0)!=0|(c[b+4>>2]|0)!=0)){break}b=c[m>>2]|0;c[m>>2]=b+1;d:do{if((d[b>>0]|0)>=192){while(1){if((a[c[m>>2]>>0]&192|0)!=128){break d}c[m>>2]=(c[m>>2]|0)+1}}}while(0);e=h;e=bE(c[e>>2]|0,c[e+4>>2]|0,-1,-1)|0;b=h;c[b>>2]=e;c[b+4>>2]=D}Wd(c[k>>2]|0,c[g>>2]|0,(c[m>>2]|0)-(c[g>>2]|0)|0,-1);i=l;return}function xl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+64|0;m=k;e=k+60|0;f=k+56|0;h=k+52|0;g=k+40|0;j=k+12|0;l=k+8|0;n=k+4|0;c[e>>2]=a;c[f>>2]=b;c[h>>2]=d;if((c[f>>2]|0)<1){i=k;return}a=Bd(c[c[h>>2]>>2]|0)|0;c[l>>2]=a;if((a|0)==0){i=k;return}c[g>>2]=(c[f>>2]|0)-1;c[g+4>>2]=0;c[g+8>>2]=(c[h>>2]|0)+4;lc(j,0,0,1e9);c[j>>2]=je(c[e>>2]|0)|0;b=c[l>>2]|0;c[m>>2]=g;Xm(j,2,b,m);c[n>>2]=c[j+12>>2];b=c[e>>2]|0;a=nc(j)|0;Wd(b,a,c[n>>2]|0,16);i=k;return}function yl(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;j=f+4|0;h=f;c[g>>2]=a;c[f+8>>2]=b;c[j>>2]=e;c[h>>2]=Bd(c[c[j>>2]>>2]|0)|0;if((c[h>>2]|0)==0){i=f;return}if((d[c[h>>2]>>0]|0|0)==0){i=f;return}j=c[g>>2]|0;Rd(j,Jm(h)|0);i=f;return}function zl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;g=m+32|0;o=m+28|0;k=m+24|0;h=m+20|0;j=m+16|0;l=m+12|0;f=m;n=m+8|0;c[g>>2]=b;c[o>>2]=d;c[k>>2]=e;b=ec((c[o>>2]<<2)+1|0)|0;c[h>>2]=b;c[j>>2]=b;if((c[h>>2]|0)==0){ce(c[g>>2]|0);i=m;return}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[o>>2]|0)){break}p=Id(c[(c[k>>2]|0)+(c[l>>2]<<2)>>2]|0)|0;b=D;e=f;c[e>>2]=p;c[e+4>>2]=b;e=f;d=c[e+4>>2]|0;e=(c[f+4>>2]|0)<0|((d|0)>0|(d|0)==0&(c[e>>2]|0)>>>0>1114111);d=f;c[d>>2]=e?65533:p;c[d+4>>2]=e?0:b;c[n>>2]=c[f>>2]&2097151;d=c[n>>2]|0;do{if(!((c[n>>2]|0)>>>0<128)){e=c[n>>2]|0;if(d>>>0<2048){b=c[j>>2]|0;c[j>>2]=b+1;a[b>>0]=192+(e>>>6&31&255);b=128+(c[n>>2]&63&255)&255;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=b;break}d=c[n>>2]|0;if(e>>>0<65536){p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=224+(d>>>12&15&255);p=128+((c[n>>2]|0)>>>6&63&255)&255;b=c[j>>2]|0;c[j>>2]=b+1;a[b>>0]=p;b=128+(c[n>>2]&63&255)&255;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=b;break}else{b=c[j>>2]|0;c[j>>2]=b+1;a[b>>0]=240+(d>>>18&7&255);b=128+((c[n>>2]|0)>>>12&63&255)&255;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=b;p=128+((c[n>>2]|0)>>>6&63&255)&255;b=c[j>>2]|0;c[j>>2]=b+1;a[b>>0]=p;b=128+(c[n>>2]&63&255)&255;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=b;break}}else{p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=d&255}}while(0);c[l>>2]=(c[l>>2]|0)+1}Wd(c[g>>2]|0,c[h>>2]|0,(c[j>>2]|0)-(c[h>>2]|0)|0,13);i=m;return}function Al(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+32|0;f=e+24|0;j=e+16|0;g=e+8|0;k=e;c[f>>2]=a;c[e+20>>2]=b;c[j>>2]=d;d=Kd(c[c[j>>2]>>2]|0)|0;if((d|0)==5){Ud(c[f>>2]|0);i=e;return}else if((d|0)==1){b=Id(c[c[j>>2]>>2]|0)|0;a=g;c[a>>2]=b;c[a+4>>2]=D;do{if((c[g+4>>2]|0)<0){a=g;if(!((c[a>>2]|0)==0?(c[a+4>>2]|0)==-2147483648:0)){b=g;b=ZD(0,0,c[b>>2]|0,c[b+4>>2]|0)|0;a=g;c[a>>2]=b;c[a+4>>2]=D;break}Pd(c[f>>2]|0,9688,-1);i=e;return}}while(0);a=g;Td(c[f>>2]|0,c[a>>2]|0,c[a+4>>2]|0);i=e;return}else{h[k>>3]=+Ed(c[c[j>>2]>>2]|0);if(+h[k>>3]<0.0){h[k>>3]=-+h[k>>3]}Nd(c[f>>2]|0,+h[k>>3]);i=e;return}}function Bl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0.0;m=i;i=i+48|0;n=m+8|0;g=m+36|0;p=m+32|0;o=m+28|0;e=m+24|0;j=m;l=m+20|0;c[g>>2]=a;c[p>>2]=b;c[o>>2]=d;c[e>>2]=0;do{if((c[p>>2]|0)==2){if(5==(Kd(c[(c[o>>2]|0)+4>>2]|0)|0)){i=m;return}else{p=Gd(c[(c[o>>2]|0)+4>>2]|0)|0;c[e>>2]=p;p=(c[e>>2]|0)>30?30:p;c[e>>2]=p;c[e>>2]=(c[e>>2]|0)<0?0:p;break}}}while(0);if((Kd(c[c[o>>2]>>2]|0)|0)==5){i=m;return}h[j>>3]=+Ed(c[c[o>>2]>>2]|0);if((c[e>>2]|0)==0?+h[j>>3]>=0.0&+h[j>>3]<9223372036854776000.0:0){q=+h[j>>3]+.5;h[j>>3]=+(~~q>>>0>>>0)+4294967296.0*+((+O(q)>=1.0?q>0.0?(ea(+N(q/4294967296.0),4294967295.0)|0)>>>0:~~+_((q- +(~~q>>>0))/4294967296.0)>>>0:0)|0)}else{f=8}do{if((f|0)==8){if(((c[e>>2]|0)==0?+h[j>>3]<0.0:0)?-+h[j>>3]<9223372036854776000.0:0){q=-+h[j>>3]+.5;h[j>>3]=-(+(~~q>>>0>>>0)+4294967296.0*+((+O(q)>=1.0?q>0.0?(ea(+N(q/4294967296.0),4294967295.0)|0)>>>0:~~+_((q- +(~~q>>>0))/4294967296.0)>>>0:0)|0));break}q=+h[j>>3];c[n>>2]=c[e>>2];p=n+4|0;h[k>>3]=q;c[p>>2]=c[k>>2];c[p+4>>2]=c[k+4>>2];c[l>>2]=oc(9752,n)|0;if((c[l>>2]|0)!=0){p=c[l>>2]|0;Am(p,j,Mb(c[l>>2]|0)|0,1)|0;gc(c[l>>2]|0);break}ce(c[g>>2]|0);i=m;return}}while(0);Nd(c[g>>2]|0,+h[j>>3]);i=m;return}function Cl(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+24|0;n=g+16|0;j=g+12|0;m=g+8|0;l=g+4|0;k=g;c[h>>2]=b;c[g+20>>2]=e;c[n>>2]=f;c[m>>2]=Bd(c[c[n>>2]>>2]|0)|0;c[k>>2]=Cd(c[c[n>>2]>>2]|0)|0;if((c[m>>2]|0)==0){i=g;return}b=c[h>>2]|0;n=c[k>>2]|0;n=bE(n|0,((n|0)<0)<<31>>31|0,1,0)|0;c[j>>2]=Sm(b,n,D)|0;if((c[j>>2]|0)==0){i=g;return}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[k>>2]|0)){break}a[(c[j>>2]|0)+(c[l>>2]|0)>>0]=a[(c[m>>2]|0)+(c[l>>2]|0)>>0]&~(a[48+(d[(c[m>>2]|0)+(c[l>>2]|0)>>0]|0)>>0]&32);c[l>>2]=(c[l>>2]|0)+1}Wd(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,13);i=g;return}function Dl(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+24|0;n=g+16|0;j=g+12|0;m=g+8|0;l=g+4|0;k=g;c[h>>2]=b;c[g+20>>2]=e;c[n>>2]=f;c[m>>2]=Bd(c[c[n>>2]>>2]|0)|0;c[k>>2]=Cd(c[c[n>>2]>>2]|0)|0;if((c[m>>2]|0)==0){i=g;return}b=c[h>>2]|0;n=c[k>>2]|0;n=bE(n|0,((n|0)<0)<<31>>31|0,1,0)|0;c[j>>2]=Sm(b,n,D)|0;if((c[j>>2]|0)==0){i=g;return}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[k>>2]|0)){break}a[(c[j>>2]|0)+(c[l>>2]|0)>>0]=a[696+(d[(c[m>>2]|0)+(c[l>>2]|0)>>0]|0)>>0]|0;c[l>>2]=(c[l>>2]|0)+1}Wd(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,13);i=g;return}function El(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e+4>>2]=b;c[e>>2]=d;a=c[f>>2]|0;Wd(a,qf()|0,-1,0);i=e;return}function Fl(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+48|0;j=l+28|0;p=l+20|0;m=l+16|0;g=l+12|0;n=l+8|0;k=l+4|0;h=l;o=l+32|0;c[j>>2]=b;c[l+24>>2]=e;c[p>>2]=f;c[n>>2]=zd(c[c[p>>2]>>2]|0)|0;c[g>>2]=Cd(c[c[p>>2]>>2]|0)|0;e=c[j>>2]|0;b=c[g>>2]|0;b=lE(b|0,((b|0)<0)<<31>>31|0,2,0)|0;b=bE(b|0,D|0,1,0)|0;b=Sm(e,b,D)|0;c[k>>2]=b;c[h>>2]=b;if((c[k>>2]|0)==0){i=l;return}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[g>>2]|0)){break}a[o>>0]=a[c[n>>2]>>0]|0;p=a[9728+((d[o>>0]|0)>>4&15)>>0]|0;b=c[h>>2]|0;c[h>>2]=b+1;a[b>>0]=p;b=a[9728+(a[o>>0]&15)>>0]|0;p=c[h>>2]|0;c[h>>2]=p+1;a[p>>0]=b;c[m>>2]=(c[m>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+1}a[c[h>>2]>>0]=0;Wd(c[j>>2]|0,c[k>>2]|0,c[g>>2]<<1,13);i=l;return}function Gl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+32|0;f=e+16|0;g=e;c[f>>2]=a;c[e+12>>2]=b;c[e+8>>2]=d;tc(8,g);if((c[g+4>>2]|0)<0){b=g;b=ZD(0,0,c[b>>2]|0,c[b+4>>2]&2147483647|0)|0;a=g;c[a>>2]=b;c[a+4>>2]=D}a=g;Td(c[f>>2]|0,c[a>>2]|0,c[a+4>>2]|0);i=e;return}function Hl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+16|0;j=e+8|0;f=e+4|0;g=e;c[h>>2]=a;c[e+12>>2]=b;c[j>>2]=d;a=Gd(c[c[j>>2]>>2]|0)|0;c[f>>2]=a;c[f>>2]=(c[f>>2]|0)<1?1:a;a=c[f>>2]|0;c[g>>2]=Sm(c[h>>2]|0,a,((a|0)<0)<<31>>31)|0;if((c[g>>2]|0)==0){i=e;return}tc(c[f>>2]|0,c[g>>2]|0);Ld(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0,13);i=e;return}function Il(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+12|0;g=e+4|0;h=e;c[f>>2]=a;c[e+8>>2]=b;c[g>>2]=d;c[h>>2]=Tm(c[f>>2]|0)|0;if((Um(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+4>>2]|0,c[h>>2]|0)|0)==0){i=e;return}Xd(c[f>>2]|0,c[c[g>>2]>>2]|0);i=e;return}function Jl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e+4>>2]=b;c[e>>2]=d;a=c[f>>2]|0;Wd(a,rf()|0,-1,0);i=e;return}function Kl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e;g=e+4|0;c[e+12>>2]=a;c[e+8>>2]=b;c[g>>2]=d;a=Gd(c[c[g>>2]>>2]|0)|0;c[f>>2]=Bd(c[(c[g>>2]|0)+4>>2]|0)|0;rc(a,1456,f);i=e;return}function Ll(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+12|0;h=e+4|0;g=e;c[f>>2]=a;c[e+8>>2]=b;c[h>>2]=d;a=Bd(c[c[h>>2]>>2]|0)|0;c[g>>2]=a;if((a|0)==0){i=e;return}h=c[f>>2]|0;Rd(h,Kb(c[g>>2]|0)|0);i=e;return}function Ml(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+12|0;h=e+4|0;f=e;c[g>>2]=a;c[e+8>>2]=b;c[h>>2]=d;c[f>>2]=Gd(c[c[h>>2]>>2]|0)|0;a=c[g>>2]|0;Wd(a,Nb(c[f>>2]|0)|0,-1,0);i=e;return}function Nl(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,j=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;s=i;i=i+128|0;j=s+24|0;m=s+72|0;p=s+64|0;g=s+16|0;t=s+8|0;q=s+76|0;r=s+60|0;o=s+56|0;l=s+52|0;n=s+48|0;v=s+44|0;w=s+40|0;x=s;y=s+36|0;u=s+32|0;c[m>>2]=b;c[s+68>>2]=e;c[p>>2]=f;f=Kd(c[c[p>>2]>>2]|0)|0;if((f|0)==4){c[r>>2]=0;c[o>>2]=zd(c[c[p>>2]>>2]|0)|0;c[l>>2]=Cd(c[c[p>>2]>>2]|0)|0;e=c[m>>2]|0;b=c[l>>2]|0;b=lE(2,0,b|0,((b|0)<0)<<31>>31|0)|0;b=bE(b|0,D|0,4,0)|0;c[r>>2]=Sm(e,b,D)|0;if((c[r>>2]|0)==0){i=s;return}c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[l>>2]|0)){break}a[(c[r>>2]|0)+((c[n>>2]<<1)+2)>>0]=a[9728+(a[(c[o>>2]|0)+(c[n>>2]|0)>>0]>>4&15)>>0]|0;a[(c[r>>2]|0)+((c[n>>2]<<1)+3)>>0]=a[9728+(a[(c[o>>2]|0)+(c[n>>2]|0)>>0]&15)>>0]|0;c[n>>2]=(c[n>>2]|0)+1}a[(c[r>>2]|0)+((c[l>>2]<<1)+2)>>0]=39;a[(c[r>>2]|0)+((c[l>>2]<<1)+3)>>0]=0;a[c[r>>2]>>0]=88;a[(c[r>>2]|0)+1>>0]=39;Wd(c[m>>2]|0,c[r>>2]|0,-1,-1);gc(c[r>>2]|0);i=s;return}else if((f|0)==1){Xd(c[m>>2]|0,c[c[p>>2]>>2]|0);i=s;return}else if((f|0)==2){h[g>>3]=+Ed(c[c[p>>2]>>2]|0);h[k>>3]=+h[g>>3];c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];qc(50,q,9712,j)|0;Am(q,t,20,1)|0;if(+h[g>>3]!=+h[t>>3]){h[k>>3]=+h[g>>3];c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];qc(50,q,9720,j)|0}Wd(c[m>>2]|0,q,-1,-1);i=s;return}else if((f|0)==3){c[y>>2]=Bd(c[c[p>>2]>>2]|0)|0;if((c[y>>2]|0)==0){i=s;return}c[v>>2]=0;b=x;c[b>>2]=0;c[b+4>>2]=0;while(1){if((a[(c[y>>2]|0)+(c[v>>2]|0)>>0]|0)==0){break}if((d[(c[y>>2]|0)+(c[v>>2]|0)>>0]|0)==39){e=x;e=bE(c[e>>2]|0,c[e+4>>2]|0,1,0)|0;b=x;c[b>>2]=e;c[b+4>>2]=D}c[v>>2]=(c[v>>2]|0)+1}e=c[m>>2]|0;f=c[v>>2]|0;b=x;b=bE(f|0,((f|0)<0)<<31>>31|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=bE(b|0,D|0,3,0)|0;c[u>>2]=Sm(e,b,D)|0;if((c[u>>2]|0)==0){i=s;return}a[c[u>>2]>>0]=39;c[v>>2]=0;c[w>>2]=1;while(1){if((a[(c[y>>2]|0)+(c[v>>2]|0)>>0]|0)==0){break}e=a[(c[y>>2]|0)+(c[v>>2]|0)>>0]|0;b=c[w>>2]|0;c[w>>2]=b+1;a[(c[u>>2]|0)+b>>0]=e;if((d[(c[y>>2]|0)+(c[v>>2]|0)>>0]|0)==39){b=c[w>>2]|0;c[w>>2]=b+1;a[(c[u>>2]|0)+b>>0]=39}c[v>>2]=(c[v>>2]|0)+1}b=c[w>>2]|0;c[w>>2]=b+1;a[(c[u>>2]|0)+b>>0]=39;a[(c[u>>2]|0)+(c[w>>2]|0)>>0]=0;Wd(c[m>>2]|0,c[u>>2]|0,c[w>>2]|0,13);i=s;return}else{Wd(c[m>>2]|0,9744,4,0);i=s;return}}function Ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+12|0;f=e;c[g>>2]=a;c[e+8>>2]=b;c[e+4>>2]=d;c[f>>2]=je(c[g>>2]|0)|0;b=c[g>>2]|0;a=Df(c[f>>2]|0)|0;Td(b,a,D);i=e;return}function Pl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+12|0;f=e;c[g>>2]=a;c[e+8>>2]=b;c[e+4>>2]=d;c[f>>2]=je(c[g>>2]|0)|0;a=c[g>>2]|0;Rd(a,Ef(c[f>>2]|0)|0);i=e;return}function Ql(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+12|0;f=e;c[g>>2]=a;c[e+8>>2]=b;c[e+4>>2]=d;c[f>>2]=je(c[g>>2]|0)|0;a=c[g>>2]|0;Rd(a,Ff(c[f>>2]|0)|0);i=e;return}function Rl(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=i;i=i+80|0;h=l+64|0;r=l+56|0;g=l+52|0;t=l+48|0;w=l+44|0;j=l+40|0;o=l+36|0;q=l+32|0;p=l+28|0;s=l;u=l+24|0;m=l+20|0;n=l+16|0;k=l+12|0;v=l+8|0;c[h>>2]=b;c[l+60>>2]=e;c[r>>2]=f;c[g>>2]=Bd(c[c[r>>2]>>2]|0)|0;if((c[g>>2]|0)==0){i=l;return}c[o>>2]=Cd(c[c[r>>2]>>2]|0)|0;c[t>>2]=Bd(c[(c[r>>2]|0)+4>>2]|0)|0;if((c[t>>2]|0)==0){i=l;return}if((d[c[t>>2]>>0]|0|0)==0){Xd(c[h>>2]|0,c[c[r>>2]>>2]|0);i=l;return}c[q>>2]=Cd(c[(c[r>>2]|0)+4>>2]|0)|0;c[w>>2]=Bd(c[(c[r>>2]|0)+8>>2]|0)|0;if((c[w>>2]|0)==0){i=l;return}c[p>>2]=Cd(c[(c[r>>2]|0)+8>>2]|0)|0;e=(c[o>>2]|0)+1|0;b=s;c[b>>2]=e;c[b+4>>2]=((e|0)<0)<<31>>31;b=s;c[j>>2]=Sm(c[h>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;if((c[j>>2]|0)==0){i=l;return}c[u>>2]=(c[o>>2]|0)-(c[q>>2]|0);c[n>>2]=0;c[m>>2]=0;while(1){if((c[m>>2]|0)>(c[u>>2]|0)){p=18;break}if((d[(c[g>>2]|0)+(c[m>>2]|0)>>0]|0|0)==(d[c[t>>2]>>0]|0|0)?(VD((c[g>>2]|0)+(c[m>>2]|0)|0,c[t>>2]|0,c[q>>2]|0)|0)==0:0){c[v>>2]=je(c[h>>2]|0)|0;f=(c[p>>2]|0)-(c[q>>2]|0)|0;e=s;f=bE(c[e>>2]|0,c[e+4>>2]|0,f|0,((f|0)<0)<<31>>31|0)|0;e=s;c[e>>2]=f;c[e+4>>2]=D;e=s;e=ZD(c[e>>2]|0,c[e+4>>2]|0,1,0)|0;f=D;b=c[(c[v>>2]|0)+88>>2]|0;r=((b|0)<0)<<31>>31;if((f|0)>(r|0)|(f|0)==(r|0)&e>>>0>b>>>0){p=13;break}c[k>>2]=c[j>>2];c[j>>2]=ic(c[j>>2]|0,c[s>>2]|0)|0;if((c[j>>2]|0)==0){p=15;break}dE((c[j>>2]|0)+(c[n>>2]|0)|0,c[w>>2]|0,c[p>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+(c[p>>2]|0);c[m>>2]=(c[m>>2]|0)+((c[q>>2]|0)-1)}else{e=a[(c[g>>2]|0)+(c[m>>2]|0)>>0]|0;b=c[n>>2]|0;c[n>>2]=b+1;a[(c[j>>2]|0)+b>>0]=e}c[m>>2]=(c[m>>2]|0)+1}if((p|0)==13){be(c[h>>2]|0);gc(c[j>>2]|0);i=l;return}else if((p|0)==15){ce(c[h>>2]|0);gc(c[k>>2]|0);i=l;return}else if((p|0)==18){dE((c[j>>2]|0)+(c[n>>2]|0)|0,(c[g>>2]|0)+(c[m>>2]|0)|0,(c[o>>2]|0)-(c[m>>2]|0)|0)|0;c[n>>2]=(c[n>>2]|0)+((c[o>>2]|0)-(c[m>>2]|0));a[(c[j>>2]|0)+(c[n>>2]|0)>>0]=0;Wd(c[h>>2]|0,c[j>>2]|0,c[n>>2]|0,13);i=l;return}}function Sl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;j=e+20|0;h=e+12|0;f=e;g=e+8|0;c[j>>2]=a;c[e+16>>2]=b;c[h>>2]=d;c[g>>2]=je(c[j>>2]|0)|0;h=Id(c[c[h>>2]>>2]|0)|0;b=f;c[b>>2]=h;c[b+4>>2]=D;b=f;h=c[b+4>>2]|0;a=c[(c[g>>2]|0)+88>>2]|0;g=((a|0)<0)<<31>>31;d=c[j>>2]|0;if((h|0)>(g|0)|((h|0)==(g|0)?(c[b>>2]|0)>>>0>a>>>0:0)){be(d);i=e;return}else{Zd(d,c[f>>2]|0);i=e;return}}function Tl(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0.0;g=i;i=i+32|0;n=g+24|0;m=g+16|0;j=g+12|0;l=g+8|0;k=g;c[n>>2]=b;c[g+20>>2]=e;c[m>>2]=f;c[j>>2]=ke(c[n>>2]|0,32)|0;c[l>>2]=Je(c[c[m>>2]>>2]|0)|0;if((c[j>>2]|0)==0){i=g;return}if((c[l>>2]|0)==5){i=g;return}f=(c[j>>2]|0)+16|0;n=f;n=bE(c[n>>2]|0,c[n+4>>2]|0,1,0)|0;c[f>>2]=n;c[f+4>>2]=D;f=c[c[m>>2]>>2]|0;if((c[l>>2]|0)!=1){o=+Ed(f);n=c[j>>2]|0;h[n>>3]=+h[n>>3]+o;a[(c[j>>2]|0)+25>>0]=1;i=g;return}n=Id(f)|0;b=k;c[b>>2]=n;c[b+4>>2]=D;b=k;n=c[j>>2]|0;h[n>>3]=+h[n>>3]+(+((c[b>>2]|0)>>>0)+4294967296.0*+(c[b+4>>2]|0));if((d[(c[j>>2]|0)+25>>0]|0|(d[(c[j>>2]|0)+24>>0]|0)|0)!=0){i=g;return}n=k;if((Rm((c[j>>2]|0)+8|0,c[n>>2]|0,c[n+4>>2]|0)|0)==0){i=g;return}a[(c[j>>2]|0)+24>>0]=1;i=g;return}function Ul(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;c[e>>2]=ke(c[f>>2]|0,0)|0;if((c[e>>2]|0)==0){i=d;return}b=(c[e>>2]|0)+16|0;g=c[b+4>>2]|0;if(!((g|0)>0|(g|0)==0&(c[b>>2]|0)>>>0>0)){i=d;return}if((a[(c[e>>2]|0)+24>>0]|0)!=0){Pd(c[f>>2]|0,9688,-1);i=d;return}f=c[f>>2]|0;b=c[e>>2]|0;if((a[(c[e>>2]|0)+25>>0]|0)!=0){Nd(f,+h[b>>3]);i=d;return}else{g=b+8|0;Td(f,c[g>>2]|0,c[g+4>>2]|0);i=d;return}}function Vl(a){a=a|0;var b=0,d=0,e=0,f=0.0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=ke(c[e>>2]|0,0)|0;a=c[e>>2]|0;if((c[d>>2]|0)==0){f=0.0;Nd(a,f);i=b;return}f=+h[c[d>>2]>>3];Nd(a,f);i=b;return}function Wl(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=ke(c[e>>2]|0,0)|0;if((c[d>>2]|0)==0){i=b;return}a=(c[d>>2]|0)+16|0;f=c[a+4>>2]|0;if(!((f|0)>0|(f|0)==0&(c[a>>2]|0)>>>0>0)){i=b;return}f=(c[d>>2]|0)+16|0;Nd(c[e>>2]|0,+h[c[d>>2]>>3]/(+((c[f>>2]|0)>>>0)+4294967296.0*+(c[f+4>>2]|0)));i=b;return}function Xl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;h=e+8|0;g=e+4|0;f=e;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[f>>2]=ke(c[j>>2]|0,8)|0;if((c[h>>2]|0)!=0?5==(Kd(c[c[g>>2]>>2]|0)|0):0){i=e;return}if((c[f>>2]|0)==0){i=e;return}j=c[f>>2]|0;h=j;h=bE(c[h>>2]|0,c[h+4>>2]|0,1,0)|0;c[j>>2]=h;c[j+4>>2]=D;i=e;return}function Yl(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=ke(c[e>>2]|0,0)|0;a=c[e>>2]|0;if((c[d>>2]|0)==0){d=0;e=0;Td(a,d,e);i=b;return}e=c[d>>2]|0;d=c[e>>2]|0;e=c[e+4>>2]|0;Td(a,d,e);i=b;return}function Zl(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;o=n+36|0;l=n+32|0;h=n+28|0;m=n+24|0;q=n+20|0;j=n+16|0;g=n+12|0;k=n+8|0;p=n+4|0;r=n;c[o>>2]=b;c[l>>2]=e;c[h>>2]=f;if((Kd(c[c[h>>2]>>2]|0)|0)==5){i=n;return}c[q>>2]=ke(c[o>>2]|0,28)|0;if((c[q>>2]|0)==0){i=n;return}c[p>>2]=je(c[o>>2]|0)|0;c[r>>2]=(d[(c[q>>2]|0)+24>>0]|0|0)==0&1;a[(c[q>>2]|0)+24>>0]=2;c[(c[q>>2]|0)+20>>2]=c[(c[p>>2]|0)+88>>2];if((c[r>>2]|0)==0){if((c[l>>2]|0)==2){c[j>>2]=Bd(c[(c[h>>2]|0)+4>>2]|0)|0;c[k>>2]=Cd(c[(c[h>>2]|0)+4>>2]|0)|0}else{c[j>>2]=9680;c[k>>2]=1}if((c[k>>2]|0)!=0){Km(c[q>>2]|0,c[j>>2]|0,c[k>>2]|0)}}c[m>>2]=Bd(c[c[h>>2]>>2]|0)|0;c[g>>2]=Cd(c[c[h>>2]>>2]|0)|0;if((c[m>>2]|0)==0){i=n;return}Km(c[q>>2]|0,c[m>>2]|0,c[g>>2]|0);i=n;return}function _l(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;f=b+4|0;e=b;c[f>>2]=a;c[e>>2]=ke(c[f>>2]|0,0)|0;if((c[e>>2]|0)==0){i=b;return}if((d[(c[e>>2]|0)+25>>0]|0|0)==2){be(c[f>>2]|0);i=b;return}a=c[f>>2]|0;if((d[(c[e>>2]|0)+25>>0]|0|0)==1){ce(a);i=b;return}else{Wd(a,nc(c[e>>2]|0)|0,-1,13);i=b;return}}function $l(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=i;i=i+48|0;f=k+36|0;n=k+32|0;l=k+28|0;h=k+24|0;g=k+20|0;e=k+16|0;p=k+12|0;o=k+8|0;j=k+4|0;m=k;c[f>>2]=a;c[n>>2]=b;c[l>>2]=d;c[e>>2]=0;c[o>>2]=je(c[f>>2]|0)|0;c[g>>2]=Bd(c[c[l>>2]>>2]|0)|0;c[h>>2]=Bd(c[(c[l>>2]|0)+4>>2]|0)|0;c[p>>2]=Cd(c[c[l>>2]>>2]|0)|0;if((c[p>>2]|0)>(c[(c[o>>2]|0)+120>>2]|0)){Pd(c[f>>2]|0,9592,-1);i=k;return}do{if((c[n>>2]|0)==3){c[j>>2]=Bd(c[(c[l>>2]|0)+8>>2]|0)|0;if((c[j>>2]|0)==0){i=k;return}if((Im(c[j>>2]|0,-1)|0)==1){c[e>>2]=Jm(j)|0;break}Pd(c[f>>2]|0,9632,-1);i=k;return}}while(0);if((c[h>>2]|0)==0){i=k;return}if((c[g>>2]|0)==0){i=k;return}c[m>>2]=ie(c[f>>2]|0)|0;p=c[f>>2]|0;Rd(p,df(c[g>>2]|0,c[h>>2]|0,c[m>>2]|0,c[e>>2]|0)|0);i=k;return}function am(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;b=a+8|0;d=a+4|0;e=a;c[d>>2]=1576;c[e>>2]=8920;c[b>>2]=0;while(1){if((c[b>>2]|0)>=8){break}sk(c[d>>2]|0,(c[e>>2]|0)+((c[b>>2]|0)*36|0)|0);c[b>>2]=(c[b>>2]|0)+1}i=a;return}function bm(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;b=a+8|0;d=a+4|0;e=a;c[d>>2]=1576;c[e>>2]=8696;c[b>>2]=0;while(1){if((c[b>>2]|0)>=3){break}sk(c[d>>2]|0,(c[e>>2]|0)+((c[b>>2]|0)*36|0)|0);c[b>>2]=(c[b>>2]|0)+1}i=a;return}function cm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+64|0;m=n;o=n+60|0;s=n+52|0;j=n+48|0;k=n+44|0;p=n+40|0;l=n+32|0;q=n+28|0;r=n+24|0;f=n+20|0;h=n+16|0;c[o>>2]=b;c[n+56>>2]=d;c[s>>2]=e;c[j>>2]=Bd(c[c[s>>2]>>2]|0)|0;c[k>>2]=Bd(c[(c[s>>2]|0)+4>>2]|0)|0;c[q>>2]=c[j>>2];c[r>>2]=0;c[h>>2]=je(c[o>>2]|0)|0;if((c[j>>2]|0)==0){i=n;return}do{if((a[c[q>>2]>>0]|0)==0){g=7;break}c[l>>2]=c[q>>2];c[l+4>>2]=c[r>>2];do{c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0);c[r>>2]=fm(c[q>>2]|0,p)|0}while((c[p>>2]|0)==151)}while((c[p>>2]|0)!=22&(c[p>>2]|0)!=125);if((g|0)==7){i=n;return}s=c[h>>2]|0;e=c[j>>2]|0;d=c[k>>2]|0;b=(c[l>>2]|0)+(c[l+4>>2]|0)|0;c[m>>2]=(c[l>>2]|0)-(c[j>>2]|0);c[m+4>>2]=e;c[m+8>>2]=d;c[m+12>>2]=b;c[f>>2]=Oe(s,8904,m)|0;Wd(c[o>>2]|0,c[f>>2]|0,-1,16);i=n;return}function dm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;o=i;i=i+80|0;q=o;s=o+68|0;t=o+60|0;f=o+56|0;p=o+52|0;j=o+48|0;m=o+40|0;h=o+32|0;k=o+28|0;l=o+24|0;r=o+20|0;n=o+16|0;c[s>>2]=b;c[o+64>>2]=d;c[t>>2]=e;c[f>>2]=Bd(c[c[t>>2]>>2]|0)|0;c[p>>2]=Bd(c[(c[t>>2]|0)+4>>2]|0)|0;c[h>>2]=3;c[k>>2]=c[f>>2];c[l>>2]=0;c[n>>2]=je(c[s>>2]|0)|0;if((c[f>>2]|0)==0){i=o;return}while(1){if((a[c[k>>2]>>0]|0)==0){g=8;break}c[m>>2]=c[k>>2];c[m+4>>2]=c[l>>2];do{c[k>>2]=(c[k>>2]|0)+(c[l>>2]|0);c[l>>2]=fm(c[k>>2]|0,j)|0}while((c[j>>2]|0)==151);t=(c[h>>2]|0)+1|0;c[h>>2]=t;c[h>>2]=(c[j>>2]|0)==122|(c[j>>2]|0)==107?0:t;if((c[h>>2]|0)!=2){continue}if(!((c[j>>2]|0)!=137&(c[j>>2]|0)!=46&(c[j>>2]|0)!=5)){break}}if((g|0)==8){i=o;return}t=c[n>>2]|0;e=c[f>>2]|0;d=c[p>>2]|0;b=(c[m>>2]|0)+(c[m+4>>2]|0)|0;c[q>>2]=(c[m>>2]|0)-(c[f>>2]|0);c[q+4>>2]=e;c[q+8>>2]=d;c[q+12>>2]=b;c[r>>2]=Oe(t,8904,q)|0;Wd(c[s>>2]|0,c[r>>2]|0,-1,16);i=o;return}function em(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;n=i;i=i+80|0;k=n;m=n+68|0;u=n+60|0;g=n+56|0;j=n+52|0;l=n+48|0;h=n+44|0;s=n+40|0;o=n+36|0;f=n+32|0;q=n+28|0;t=n+24|0;r=n+20|0;p=n+16|0;c[m>>2]=b;c[n+64>>2]=d;c[u>>2]=e;c[g>>2]=je(c[m>>2]|0)|0;c[j>>2]=0;c[h>>2]=Bd(c[c[u>>2]>>2]|0)|0;c[s>>2]=Bd(c[(c[u>>2]|0)+4>>2]|0)|0;c[o>>2]=Bd(c[(c[u>>2]|0)+8>>2]|0)|0;if((c[h>>2]|0)==0){i=n;return}if((c[s>>2]|0)==0){i=n;return}c[f>>2]=c[h>>2];while(1){if((a[c[f>>2]>>0]|0)==0){break}c[q>>2]=fm(c[f>>2]|0,t)|0;if((c[t>>2]|0)==105){do{c[f>>2]=(c[f>>2]|0)+(c[q>>2]|0);c[q>>2]=fm(c[f>>2]|0,t)|0}while((c[t>>2]|0)==151);c[r>>2]=gm(c[g>>2]|0,c[f>>2]|0,c[q>>2]|0)|0;if((c[r>>2]|0)==0){break}hm(c[r>>2]|0)|0;if(0==(vc(c[s>>2]|0,c[r>>2]|0)|0)){u=c[g>>2]|0;e=(c[f>>2]|0)-(c[h>>2]|0)|0;d=c[h>>2]|0;b=c[o>>2]|0;c[k>>2]=(c[j>>2]|0)!=0?c[j>>2]|0:1472;c[k+4>>2]=e;c[k+8>>2]=d;c[k+12>>2]=b;c[p>>2]=Oe(u,8880,k)|0;Wb(c[g>>2]|0,c[j>>2]|0);c[j>>2]=c[p>>2];c[h>>2]=(c[f>>2]|0)+(c[q>>2]|0)}Wb(c[g>>2]|0,c[r>>2]|0)}c[f>>2]=(c[f>>2]|0)+(c[q>>2]|0)}u=c[g>>2]|0;b=c[h>>2]|0;c[k>>2]=(c[j>>2]|0)!=0?c[j>>2]|0:1472;c[k+4>>2]=b;c[l>>2]=Oe(u,8896,k)|0;Wd(c[m>>2]|0,c[l>>2]|0,-1,16);Wb(c[g>>2]|0,c[j>>2]|0);i=n;return}function fm(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;f=g+24|0;h=g+20|0;m=g+16|0;j=g+12|0;k=g+8|0;o=g+4|0;n=g;c[h>>2]=b;c[m>>2]=e;do{switch(d[c[h>>2]>>0]|0){case 37:{c[c[m>>2]>>2]=93;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 126:{c[c[m>>2]>>2]=96;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 13:case 12:case 10:case 9:case 32:{c[j>>2]=1;while(1){if((a[48+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&1|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=151;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0};case 61:{c[c[m>>2]>>2]=79;c[f>>2]=1+((d[(c[h>>2]|0)+1>>0]|0)==61&1);b=c[f>>2]|0;i=g;return b|0};case 41:{c[c[m>>2]>>2]=23;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 43:{c[c[m>>2]>>2]=89;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 62:{b=d[(c[h>>2]|0)+1>>0]|0;c[k>>2]=b;if((b|0)==61){c[c[m>>2]>>2]=83;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}h=c[m>>2]|0;if((c[k>>2]|0)==62){c[h>>2]=88;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}else{c[h>>2]=80;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}};case 47:{if((d[(c[h>>2]|0)+1>>0]|0)==42?(d[(c[h>>2]|0)+2>>0]|0)!=0:0){c[j>>2]=3;c[k>>2]=d[(c[h>>2]|0)+2>>0]|0;while(1){if((c[k>>2]|0)==42?(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==47:0){break}b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}if((c[k>>2]|0)!=0){c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=151;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0}c[c[m>>2]>>2]=92;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 124:{j=c[m>>2]|0;if((d[(c[h>>2]|0)+1>>0]|0)!=124){c[j>>2]=86;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}else{c[j>>2]=94;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}};case 44:{c[c[m>>2]>>2]=26;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 58:case 35:case 64:case 36:{c[n>>2]=0;c[c[m>>2]>>2]=135;c[j>>2]=1;while(1){b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}if((a[48+(c[k>>2]&255)>>0]&70|0)!=0){c[n>>2]=(c[n>>2]|0)+1}else{if((c[k>>2]|0)==40?(c[n>>2]|0)>0:0){l=101;break}if((c[k>>2]|0)!=58){break}if((d[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]|0)!=58){break}c[j>>2]=(c[j>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}do{if((l|0)==101){while(1){c[j>>2]=(c[j>>2]|0)+1;b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}if((a[48+(c[k>>2]&255)>>0]&1|0)!=0){break}if((c[k>>2]|0)!=41){l=101}else{break}}if((c[k>>2]|0)==41){c[j>>2]=(c[j>>2]|0)+1;break}else{c[c[m>>2]>>2]=150;break}}}while(0);if((c[n>>2]|0)==0){c[c[m>>2]>>2]=150}c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0};case 40:{c[c[m>>2]>>2]=22;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 34:case 39:case 96:{c[o>>2]=d[c[h>>2]>>0]|0;c[j>>2]=1;while(1){b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}if((c[k>>2]|0)==(c[o>>2]|0)){if((d[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]|0)!=(c[o>>2]|0)){break}c[j>>2]=(c[j>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}if((c[k>>2]|0)==39){c[c[m>>2]>>2]=97;c[f>>2]=(c[j>>2]|0)+1;b=c[f>>2]|0;i=g;return b|0}h=c[m>>2]|0;if((c[k>>2]|0)!=0){c[h>>2]=27;c[f>>2]=(c[j>>2]|0)+1;b=c[f>>2]|0;i=g;return b|0}else{c[h>>2]=150;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0}};case 42:{c[c[m>>2]>>2]=91;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{break};case 38:{c[c[m>>2]>>2]=85;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 60:{b=d[(c[h>>2]|0)+1>>0]|0;c[k>>2]=b;if((b|0)==61){c[c[m>>2]>>2]=81;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}if((c[k>>2]|0)==62){c[c[m>>2]>>2]=78;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}h=c[m>>2]|0;if((c[k>>2]|0)==60){c[h>>2]=87;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}else{c[h>>2]=82;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}};case 91:{c[j>>2]=1;c[k>>2]=d[c[h>>2]>>0]|0;while(1){if((c[k>>2]|0)==93){break}b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=(c[k>>2]|0)==93?27:150;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0};case 45:{if((d[(c[h>>2]|0)+1>>0]|0)!=45){c[c[m>>2]>>2]=90;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}c[j>>2]=2;while(1){b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}if((c[k>>2]|0)==10){break}c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=151;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0};case 59:{c[c[m>>2]>>2]=1;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 88:case 120:{if((d[(c[h>>2]|0)+1>>0]|0)==39){c[c[m>>2]>>2]=134;c[j>>2]=2;while(1){k=c[j>>2]|0;if((a[48+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&8|0)==0){break}c[j>>2]=k+1}if(!((d[(c[h>>2]|0)+k>>0]|0)==39?((c[j>>2]|0)%2|0|0)==0:0)){l=120}a:do{if((l|0)==120){c[c[m>>2]>>2]=150;while(1){if((d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==0){break a}if((d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==39){break a}c[j>>2]=(c[j>>2]|0)+1}}}while(0);if((a[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)!=0){c[j>>2]=(c[j>>2]|0)+1}c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0}else{l=127}break};case 33:{j=c[m>>2]|0;if((d[(c[h>>2]|0)+1>>0]|0)!=61){c[j>>2]=150;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}else{c[j>>2]=78;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}};case 46:{if((a[48+(d[(c[h>>2]|0)+1>>0]|0)>>0]&4|0)==0){c[c[m>>2]>>2]=122;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}break};case 63:{c[c[m>>2]>>2]=135;c[j>>2]=1;while(1){k=c[j>>2]|0;if((a[48+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&4|0)==0){break}c[j>>2]=k+1}c[f>>2]=k;b=c[f>>2]|0;i=g;return b|0};default:{l=127}}}while(0);if((l|0)==127){if((a[48+(d[c[h>>2]>>0]|0)>>0]&70|0)==0){c[c[m>>2]>>2]=150;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}c[j>>2]=1;while(1){if((a[48+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&70|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}b=wg(c[h>>2]|0,c[j>>2]|0)|0;c[c[m>>2]>>2]=b;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0}c[c[m>>2]>>2]=132;c[j>>2]=0;while(1){k=c[j>>2]|0;if((a[48+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&4|0)==0){break}c[j>>2]=k+1}if((d[(c[h>>2]|0)+k>>0]|0)==46){c[j>>2]=(c[j>>2]|0)+1;while(1){if((a[48+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&4|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=133}if(!((d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)!=101?(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)!=69:0)){l=75}do{if((l|0)==75){if((a[48+(d[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]|0)>>0]&4|0)==0){if((d[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]|0)!=43?(d[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]|0)!=45:0){break}if((a[48+(d[(c[h>>2]|0)+((c[j>>2]|0)+2)>>0]|0)>>0]&4|0)==0){break}}c[j>>2]=(c[j>>2]|0)+2;while(1){if((a[48+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&4|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=133}}while(0);while(1){if((a[48+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&70|0)==0){break}c[c[m>>2]>>2]=150;c[j>>2]=(c[j>>2]|0)+1}c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0}function gm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;l=f+12|0;j=f+8|0;k=f+4|0;h=f;c[l>>2]=b;c[j>>2]=d;c[k>>2]=e;if((c[j>>2]|0)==0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}c[h>>2]=Le(c[l>>2]|0,(c[k>>2]|0)+1|0)|0;if((c[h>>2]|0)!=0){dE(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;a[(c[h>>2]|0)+(c[k>>2]|0)>>0]=0}c[g>>2]=c[h>>2];b=c[g>>2]|0;i=f;return b|0}function hm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+12|0;g=d+8|0;h=d+16|0;f=d+4|0;j=d;c[g>>2]=b;if((c[g>>2]|0)==0){c[e>>2]=-1;b=c[e>>2]|0;i=d;return b|0}a[h>>0]=a[c[g>>2]>>0]|0;b=a[h>>0]|0;if((b|0)==91){a[h>>0]=93}else if(!((b|0)==96|(b|0)==34|(b|0)==39)){c[e>>2]=-1;b=c[e>>2]|0;i=d;return b|0}c[f>>2]=1;c[j>>2]=0;while(1){b=c[f>>2]|0;if((a[(c[g>>2]|0)+(c[f>>2]|0)>>0]|0)==(a[h>>0]|0)){if((a[(c[g>>2]|0)+(b+1)>>0]|0)!=(a[h>>0]|0)){break}k=a[h>>0]|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[g>>2]|0)+b>>0]=k;c[f>>2]=(c[f>>2]|0)+1}else{b=a[(c[g>>2]|0)+b>>0]|0;k=c[j>>2]|0;c[j>>2]=k+1;a[(c[g>>2]|0)+k>>0]=b}c[f>>2]=(c[f>>2]|0)+1}a[(c[g>>2]|0)+(c[j>>2]|0)>>0]=0;c[e>>2]=c[j>>2];k=c[e>>2]|0;i=d;return k|0}function im(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+64|0;g=e+56|0;j=e+52|0;h=e+48|0;f=e;c[g>>2]=a;c[j>>2]=b;c[h>>2]=d;if((qm(c[g>>2]|0,c[j>>2]|0,c[h>>2]|0,f)|0)!=0){i=e;return}rm(f);j=f;Nd(c[g>>2]|0,(+((c[j>>2]|0)>>>0)+4294967296.0*+(c[j+4>>2]|0))/864.0e5);i=e;return}function jm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+176|0;g=e+48|0;j=e+68|0;l=e+64|0;k=e+60|0;f=e;h=e+72|0;c[j>>2]=a;c[l>>2]=b;c[k>>2]=d;if((qm(c[j>>2]|0,c[l>>2]|0,c[k>>2]|0,f)|0)!=0){i=e;return}tm(f);k=c[f+12>>2]|0;l=c[f+16>>2]|0;c[g>>2]=c[f+8>>2];c[g+4>>2]=k;c[g+8>>2]=l;qc(100,h,9576,g)|0;Wd(c[j>>2]|0,h,-1,-1);i=e;return}function km(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0;e=i;i=i+176|0;g=e+48|0;k=e+68|0;m=e+64|0;l=e+60|0;f=e;j=e+72|0;c[k>>2]=a;c[m>>2]=b;c[l>>2]=d;if((qm(c[k>>2]|0,c[m>>2]|0,c[l>>2]|0,f)|0)!=0){i=e;return}um(f);l=c[f+24>>2]|0;m=~~+h[f+32>>3];c[g>>2]=c[f+20>>2];c[g+4>>2]=l;c[g+8>>2]=m;qc(100,j,9560,g)|0;Wd(c[k>>2]|0,j,-1,-1);i=e;return}function lm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0;e=i;i=i+192|0;g=e+48|0;k=e+80|0;m=e+76|0;l=e+72|0;f=e;j=e+84|0;c[k>>2]=a;c[m>>2]=b;c[l>>2]=d;if((qm(c[k>>2]|0,c[m>>2]|0,c[l>>2]|0,f)|0)!=0){i=e;return}sm(f);d=c[f+12>>2]|0;b=c[f+16>>2]|0;a=c[f+20>>2]|0;l=c[f+24>>2]|0;m=~~+h[f+32>>3];c[g>>2]=c[f+8>>2];c[g+4>>2]=d;c[g+8>>2]=b;c[g+12>>2]=a;c[g+16>>2]=l;c[g+20>>2]=m;qc(100,j,9528,g)|0;Wd(c[k>>2]|0,j,-1,-1);i=e;return}function mm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=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;t=i;i=i+272|0;r=t+112|0;o=t+156|0;y=t+152|0;z=t+148|0;q=t+64|0;w=t+56|0;n=t+144|0;l=t+140|0;j=t+136|0;v=t+132|0;f=t+128|0;m=t+160|0;s=t+48|0;g=t+124|0;p=t;u=t+120|0;c[o>>2]=b;c[y>>2]=d;c[z>>2]=e;c[f>>2]=Bd(c[c[z>>2]>>2]|0)|0;if((c[f>>2]|0)==0){i=t;return}if((qm(c[o>>2]|0,(c[y>>2]|0)-1|0,(c[z>>2]|0)+4|0,q)|0)!=0){i=t;return}c[v>>2]=je(c[o>>2]|0)|0;c[n>>2]=0;b=w;c[b>>2]=1;c[b+4>>2]=0;a:while(1){if((a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0)==0){break}if((a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0)==37){switch(a[(c[f>>2]|0)+((c[n>>2]|0)+1)>>0]|0){case 37:case 119:{break};case 74:case 115:{d=w;b=w;c[b>>2]=bE(c[d>>2]|0,c[d+4>>2]|0,50,0)|0;c[b+4>>2]=D;break};case 106:{d=w;b=w;c[b>>2]=bE(c[d>>2]|0,c[d+4>>2]|0,3,0)|0;c[b+4>>2]=D;break};case 89:{d=w;b=w;c[b>>2]=bE(c[d>>2]|0,c[d+4>>2]|0,8,0)|0;c[b+4>>2]=D;break};case 102:{d=w;b=w;c[b>>2]=bE(c[d>>2]|0,c[d+4>>2]|0,8,0)|0;c[b+4>>2]=D;break};case 87:case 83:case 77:case 109:case 72:case 100:{d=w;b=w;c[b>>2]=bE(c[d>>2]|0,c[d+4>>2]|0,1,0)|0;c[b+4>>2]=D;break};default:{x=43;break a}}c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1;d=w;d=bE(c[d>>2]|0,c[d+4>>2]|0,1,0)|0;b=w;c[b>>2]=d;c[b+4>>2]=D}if((x|0)==43){i=t;return}b=w;d=c[b+4>>2]|0;if(!(d>>>0<0|(d|0)==0&(c[b>>2]|0)>>>0<100)){d=w;z=c[d+4>>2]|0;b=c[(c[v>>2]|0)+88>>2]|0;e=((b|0)<0)<<31>>31;if(z>>>0>e>>>0|((z|0)==(e|0)?(c[d>>2]|0)>>>0>b>>>0:0)){be(c[o>>2]|0);i=t;return}c[j>>2]=Le(c[v>>2]|0,c[w>>2]|0)|0;if((c[j>>2]|0)==0){ce(c[o>>2]|0);i=t;return}}else{c[j>>2]=m}rm(q);sm(q);c[l>>2]=0;c[n>>2]=0;while(1){if((a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0)==0){break}v=c[n>>2]|0;b:do{if((a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0)!=37){d=a[(c[f>>2]|0)+v>>0]|0;b=c[l>>2]|0;c[l>>2]=b+1;a[(c[j>>2]|0)+b>>0]=d}else{c[n>>2]=v+1;do{switch(a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0){case 106:case 87:{x=p+0|0;w=q+0|0;v=x+48|0;do{c[x>>2]=c[w>>2];x=x+4|0;w=w+4|0}while((x|0)<(v|0));a[p+42>>0]=0;c[p+12>>2]=1;c[p+16>>2]=1;rm(p);d=q;b=p;c[g>>2]=jE(bE(ZD(c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0,D|0,432e5,0)|0,D|0,864e5,0)|0;if((a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0)==87){b=q;b=bE(c[b>>2]|0,c[b+4>>2]|0,432e5,0)|0;b=jE(b|0,D|0,864e5,0)|0;b=kE(b|0,D|0,7,0)|0;c[u>>2]=b;b=(c[j>>2]|0)+(c[l>>2]|0)|0;c[r>>2]=((c[g>>2]|0)+7-(c[u>>2]|0)|0)/7|0;qc(3,b,9328,r)|0;c[l>>2]=(c[l>>2]|0)+2;break b}else{b=(c[j>>2]|0)+(c[l>>2]|0)|0;c[r>>2]=(c[g>>2]|0)+1;qc(4,b,9344,r)|0;c[l>>2]=(c[l>>2]|0)+3;break b}};case 109:{b=(c[j>>2]|0)+(c[l>>2]|0)|0;c[r>>2]=c[q+12>>2];qc(3,b,9328,r)|0;c[l>>2]=(c[l>>2]|0)+2;break b};case 89:{b=(c[j>>2]|0)+(c[l>>2]|0)|0;c[r>>2]=c[q+8>>2];qc(5,b,9368,r)|0;c[l>>2]=(Mb((c[j>>2]|0)+(c[l>>2]|0)|0)|0)+(c[l>>2]|0);break b};case 119:{d=q;d=kE(jE(bE(c[d>>2]|0,c[d+4>>2]|0,1296e5,0)|0,D|0,864e5,0)|0,D|0,7,0)|0;b=c[l>>2]|0;c[l>>2]=b+1;a[(c[j>>2]|0)+b>>0]=((d&255)<<24>>24)+48;break b};case 115:{b=(c[j>>2]|0)+(c[l>>2]|0)|0;e=q;d=r;c[d>>2]=ZD(jE(c[e>>2]|0,c[e+4>>2]|0,1e3,0)|0,D|0,413362496,49)|0;c[d+4>>2]=D;qc(30,b,9360,r)|0;c[l>>2]=(Mb((c[j>>2]|0)+(c[l>>2]|0)|0)|0)+(c[l>>2]|0);break b};case 74:{b=(c[j>>2]|0)+(c[l>>2]|0)|0;d=q;h[k>>3]=(+((c[d>>2]|0)>>>0)+4294967296.0*+(c[d+4>>2]|0))/864.0e5;c[r>>2]=c[k>>2];c[r+4>>2]=c[k+4>>2];qc(20,b,9352,r)|0;c[l>>2]=(Mb((c[j>>2]|0)+(c[l>>2]|0)|0)|0)+(c[l>>2]|0);break b};case 72:{b=(c[j>>2]|0)+(c[l>>2]|0)|0;c[r>>2]=c[q+20>>2];qc(3,b,9328,r)|0;c[l>>2]=(c[l>>2]|0)+2;break b};case 100:{b=(c[j>>2]|0)+(c[l>>2]|0)|0;c[r>>2]=c[q+16>>2];qc(3,b,9328,r)|0;c[l>>2]=(c[l>>2]|0)+2;break b};case 83:{b=(c[j>>2]|0)+(c[l>>2]|0)|0;c[r>>2]=~~+h[q+32>>3];qc(3,b,9328,r)|0;c[l>>2]=(c[l>>2]|0)+2;break b};case 102:{h[s>>3]=+h[q+32>>3];if(+h[s>>3]>59.999){h[s>>3]=59.999}b=(c[j>>2]|0)+(c[l>>2]|0)|0;h[k>>3]=+h[s>>3];c[r>>2]=c[k>>2];c[r+4>>2]=c[k+4>>2];qc(7,b,9336,r)|0;c[l>>2]=(Mb((c[j>>2]|0)+(c[l>>2]|0)|0)|0)+(c[l>>2]|0);break b};case 77:{b=(c[j>>2]|0)+(c[l>>2]|0)|0;c[r>>2]=c[q+24>>2];qc(3,b,9328,r)|0;c[l>>2]=(c[l>>2]|0)+2;break b};default:{b=c[l>>2]|0;c[l>>2]=b+1;a[(c[j>>2]|0)+b>>0]=37;break b}}}while(0)}}while(0);c[n>>2]=(c[n>>2]|0)+1}a[(c[j>>2]|0)+(c[l>>2]|0)>>0]=0;Wd(c[o>>2]|0,c[j>>2]|0,-1,(c[j>>2]|0)==(m|0)?-1:16);i=t;return}function nm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e+4>>2]=b;c[e>>2]=d;km(c[f>>2]|0,0,0);i=e;return}function om(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e+4>>2]=b;c[e>>2]=d;lm(c[f>>2]|0,0,0);i=e;return}function pm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e+4>>2]=b;c[e>>2]=d;jm(c[f>>2]|0,0,0);i=e;return}function qm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;n=i;i=i+32|0;m=n+28|0;k=n+24|0;j=n+20|0;o=n+16|0;l=n+12|0;p=n+8|0;q=n+4|0;g=n;c[k>>2]=b;c[j>>2]=d;c[o>>2]=e;c[l>>2]=f;e=(c[l>>2]|0)+0|0;f=e+48|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));if((c[j>>2]|0)==0){c[m>>2]=vm(c[k>>2]|0,c[l>>2]|0)|0;b=c[m>>2]|0;i=n;return b|0}b=Kd(c[c[o>>2]>>2]|0)|0;c[g>>2]=b;do{if((b|0)!=2?(c[g>>2]|0)!=1:0){c[q>>2]=Bd(c[c[o>>2]>>2]|0)|0;if((c[q>>2]|0)!=0?(wm(c[k>>2]|0,c[q>>2]|0,c[l>>2]|0)|0)==0:0){break}c[m>>2]=1;b=c[m>>2]|0;i=n;return b|0}else{h=5}}while(0);if((h|0)==5){r=+Ed(c[c[o>>2]>>2]|0)*864.0e5+.5;d=+O(r)>=1.0?r>0.0?(ea(+N(r/4294967296.0),4294967295.0)|0)>>>0:~~+_((r- +(~~r>>>0))/4294967296.0)>>>0:0;b=c[l>>2]|0;c[b>>2]=~~r>>>0;c[b+4>>2]=d;a[(c[l>>2]|0)+42>>0]=1}c[p>>2]=1;while(1){if((c[p>>2]|0)>=(c[j>>2]|0)){h=15;break}c[q>>2]=Bd(c[(c[o>>2]|0)+(c[p>>2]<<2)>>2]|0)|0;if((c[q>>2]|0)==0){h=13;break}if((xm(c[k>>2]|0,c[q>>2]|0,c[l>>2]|0)|0)!=0){h=13;break}c[p>>2]=(c[p>>2]|0)+1}if((h|0)==13){c[m>>2]=1;b=c[m>>2]|0;i=n;return b|0}else if((h|0)==15){c[m>>2]=0;b=c[m>>2]|0;i=n;return b|0}return 0}function rm(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0;d=i;i=i+32|0;n=d+28|0;e=d+24|0;k=d+20|0;m=d+16|0;f=d+12|0;g=d+8|0;j=d+4|0;l=d;c[n>>2]=b;if((a[(c[n>>2]|0)+42>>0]|0)!=0){i=d;return}if((a[(c[n>>2]|0)+40>>0]|0)!=0){c[e>>2]=c[(c[n>>2]|0)+8>>2];c[k>>2]=c[(c[n>>2]|0)+12>>2];c[m>>2]=c[(c[n>>2]|0)+16>>2]}else{c[e>>2]=2e3;c[k>>2]=1;c[m>>2]=1}if((c[k>>2]|0)<=2){c[e>>2]=(c[e>>2]|0)+ -1;c[k>>2]=(c[k>>2]|0)+12}c[f>>2]=(c[e>>2]|0)/100|0;c[g>>2]=2-(c[f>>2]|0)+((c[f>>2]|0)/4|0);c[j>>2]=(((c[e>>2]|0)+4716|0)*36525|0)/100|0;c[l>>2]=(((c[k>>2]|0)+1|0)*306001|0)/1e4|0;o=(+((c[j>>2]|0)+(c[l>>2]|0)+(c[m>>2]|0)+(c[g>>2]|0)|0)-1524.5)*864.0e5;l=+O(o)>=1.0?o>0.0?(ea(+N(o/4294967296.0),4294967295.0)|0)>>>0:~~+_((o- +(~~o>>>0))/4294967296.0)>>>0:0;m=c[n>>2]|0;c[m>>2]=~~o>>>0;c[m+4>>2]=l;a[(c[n>>2]|0)+42>>0]=1;if((a[(c[n>>2]|0)+41>>0]|0)==0){i=d;return}l=$(c[(c[n>>2]|0)+20>>2]|0,36e5)|0;l=l+((c[(c[n>>2]|0)+24>>2]|0)*6e4|0)|0;o=+h[(c[n>>2]|0)+32>>3]*1.0e3;l=bE(l|0,((l|0)<0)<<31>>31|0,~~o>>>0|0,(+O(o)>=1.0?o>0.0?(ea(+N(o/4294967296.0),4294967295.0)|0)>>>0:~~+_((o- +(~~o>>>0))/4294967296.0)>>>0:0)|0)|0;m=c[n>>2]|0;k=m;l=bE(c[k>>2]|0,c[k+4>>2]|0,l|0,D|0)|0;c[m>>2]=l;c[m+4>>2]=D;if((a[(c[n>>2]|0)+43>>0]|0)==0){i=d;return}l=(c[(c[n>>2]|0)+28>>2]|0)*6e4|0;m=c[n>>2]|0;k=m;l=ZD(c[k>>2]|0,c[k+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;c[m>>2]=l;c[m+4>>2]=D;a[(c[n>>2]|0)+40>>0]=0;a[(c[n>>2]|0)+41>>0]=0;a[(c[n>>2]|0)+43>>0]=0;i=d;return}function sm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;tm(c[d>>2]|0);um(c[d>>2]|0);i=b;return}function tm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;e=h+28|0;f=h+24|0;g=h+20|0;d=h+16|0;j=h+12|0;k=h+8|0;l=h+4|0;m=h;c[e>>2]=b;if((a[(c[e>>2]|0)+40>>0]|0)!=0){i=h;return}b=c[e>>2]|0;if((a[(c[e>>2]|0)+42>>0]|0)!=0){b=bE(c[b>>2]|0,c[b+4>>2]|0,432e5,0)|0;b=jE(b|0,D|0,864e5,0)|0;c[f>>2]=b;c[g>>2]=~~((+(c[f>>2]|0)-1867216.25)/36524.25);c[g>>2]=(c[f>>2]|0)+1+(c[g>>2]|0)-((c[g>>2]|0)/4|0);c[d>>2]=(c[g>>2]|0)+1524;c[j>>2]=~~((+(c[d>>2]|0)-122.1)/365.25);c[k>>2]=((c[j>>2]|0)*36525|0)/100|0;c[l>>2]=~~(+((c[d>>2]|0)-(c[k>>2]|0)|0)/30.6001);c[m>>2]=~~(+(c[l>>2]|0)*30.6001);c[(c[e>>2]|0)+16>>2]=(c[d>>2]|0)-(c[k>>2]|0)-(c[m>>2]|0);b=c[l>>2]|0;c[(c[e>>2]|0)+12>>2]=(c[l>>2]|0)<14?b-1|0:b-13|0;b=c[j>>2]|0;c[(c[e>>2]|0)+8>>2]=(c[(c[e>>2]|0)+12>>2]|0)>2?b-4716|0:b-4715|0}else{c[b+8>>2]=2e3;c[(c[e>>2]|0)+12>>2]=1;c[(c[e>>2]|0)+16>>2]=1}a[(c[e>>2]|0)+40>>0]=1;i=h;return}function um(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;if((a[(c[e>>2]|0)+41>>0]|0)!=0){i=d;return}rm(c[e>>2]|0);b=c[e>>2]|0;b=bE(c[b>>2]|0,c[b+4>>2]|0,432e5,0)|0;b=kE(b|0,D|0,864e5,0)|0;c[f>>2]=b;h[(c[e>>2]|0)+32>>3]=+(c[f>>2]|0)/1.0e3;c[f>>2]=~~+h[(c[e>>2]|0)+32>>3];b=(c[e>>2]|0)+32|0;h[b>>3]=+h[b>>3]- +(c[f>>2]|0);c[(c[e>>2]|0)+20>>2]=(c[f>>2]|0)/3600|0;c[f>>2]=(c[f>>2]|0)-((c[(c[e>>2]|0)+20>>2]|0)*3600|0);c[(c[e>>2]|0)+24>>2]=(c[f>>2]|0)/60|0;b=(c[e>>2]|0)+32|0;h[b>>3]=+h[b>>3]+ +((c[f>>2]|0)-((c[(c[e>>2]|0)+24>>2]|0)*60|0)|0);a[(c[e>>2]|0)+41>>0]=1;i=d;return}function vm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e+4|0;g=e;c[h>>2]=b;c[g>>2]=d;d=Gm(c[h>>2]|0)|0;b=c[g>>2]|0;c[b>>2]=d;c[b+4>>2]=D;b=c[g>>2]|0;d=c[b+4>>2]|0;if((d|0)>0|(d|0)==0&(c[b>>2]|0)>>>0>0){a[(c[g>>2]|0)+42>>0]=1;c[f>>2]=0;h=c[f>>2]|0;i=e;return h|0}else{c[f>>2]=1;h=c[f>>2]|0;i=e;return h|0}return 0}function wm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0.0;f=i;i=i+32|0;g=f+20|0;j=f+16|0;l=f+12|0;k=f+8|0;m=f;c[j>>2]=b;c[l>>2]=d;c[k>>2]=e;if((Fm(c[l>>2]|0,c[k>>2]|0)|0)==0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}if((Bm(c[l>>2]|0,c[k>>2]|0)|0)==0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}if((vc(c[l>>2]|0,9520)|0)==0){c[g>>2]=vm(c[j>>2]|0,c[k>>2]|0)|0;b=c[g>>2]|0;i=f;return b|0}b=c[l>>2]|0;if((Am(b,m,Mb(c[l>>2]|0)|0,1)|0)!=0){n=+h[m>>3]*864.0e5+.5;d=+O(n)>=1.0?n>0.0?(ea(+N(n/4294967296.0),4294967295.0)|0)>>>0:~~+_((n- +(~~n>>>0))/4294967296.0)>>>0:0;b=c[k>>2]|0;c[b>>2]=~~n>>>0;c[b+4>>2]=d;a[(c[k>>2]|0)+42>>0]=1;c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}else{c[g>>2]=1;b=c[g>>2]|0;i=f;return b|0}return 0}function xm(b,e,f){b=b|0;e=e|0;f=f|0;var g=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.0;g=i;i=i+160|0;x=g+124|0;y=g+120|0;j=g+116|0;l=g+112|0;v=g+108|0;q=g+80|0;k=g+104|0;w=g+72|0;z=g+64|0;p=g+56|0;m=g+100|0;n=g+8|0;o=g;u=g+96|0;r=g+92|0;s=g+88|0;c[x>>2]=b;c[y>>2]=e;c[j>>2]=f;c[l>>2]=1;c[k>>2]=g+128;c[v>>2]=0;while(1){if((c[v>>2]|0)<29){e=(a[(c[y>>2]|0)+(c[v>>2]|0)>>0]|0)!=0}else{e=0}f=c[v>>2]|0;if(!e){break}a[(c[k>>2]|0)+(c[v>>2]|0)>>0]=a[696+(d[(c[y>>2]|0)+f>>0]|0)>>0]|0;c[v>>2]=(c[v>>2]|0)+1}a[(c[k>>2]|0)+f>>0]=0;switch(a[c[k>>2]>>0]|0){case 108:{if((WD(c[k>>2]|0,9376)|0)!=0){b=c[l>>2]|0;i=g;return b|0}rm(c[j>>2]|0);e=ym(c[j>>2]|0,c[x>>2]|0,l)|0;b=c[j>>2]|0;f=b;c[b>>2]=bE(c[f>>2]|0,c[f+4>>2]|0,e|0,D|0)|0;c[b+4>>2]=D;zm(c[j>>2]|0);b=c[l>>2]|0;i=g;return b|0};case 119:{if((XD(c[k>>2]|0,9416,8)|0)!=0){b=c[l>>2]|0;i=g;return b|0}if((Am((c[k>>2]|0)+8|0,q,Mb((c[k>>2]|0)+8|0)|0,1)|0)==0){b=c[l>>2]|0;i=g;return b|0}b=~~+h[q>>3];c[v>>2]=b;if(!(+(b|0)==+h[q>>3])){b=c[l>>2]|0;i=g;return b|0}if((c[v>>2]|0)<0){b=c[l>>2]|0;i=g;return b|0}if(!(+h[q>>3]<7.0)){b=c[l>>2]|0;i=g;return b|0}sm(c[j>>2]|0);a[(c[j>>2]|0)+43>>0]=0;a[(c[j>>2]|0)+42>>0]=0;rm(c[j>>2]|0);y=c[j>>2]|0;e=z;c[e>>2]=kE(jE(bE(c[y>>2]|0,c[y+4>>2]|0,1296e5,0)|0,D|0,864e5,0)|0,D|0,7,0)|0;c[e+4>>2]=D;e=z;y=c[e+4>>2]|0;b=c[v>>2]|0;f=((b|0)<0)<<31>>31;if((y|0)>(f|0)|((y|0)==(f|0)?(c[e>>2]|0)>>>0>b>>>0:0)){e=z;e=ZD(c[e>>2]|0,c[e+4>>2]|0,7,0)|0;b=z;c[b>>2]=e;c[b+4>>2]=D}b=c[v>>2]|0;e=z;e=lE(ZD(b|0,((b|0)<0)<<31>>31|0,c[e>>2]|0,c[e+4>>2]|0)|0,D|0,864e5,0)|0;b=c[j>>2]|0;f=b;c[b>>2]=bE(c[f>>2]|0,c[f+4>>2]|0,e|0,D|0)|0;c[b+4>>2]=D;zm(c[j>>2]|0);c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0};case 117:{if((WD(c[k>>2]|0,9392)|0)==0?(a[(c[j>>2]|0)+42>>0]|0)!=0:0){e=c[j>>2]|0;e=bE(c[e>>2]|0,c[e+4>>2]|0,43200,0)|0;e=jE(e|0,D|0,86400,0)|0;e=bE(e|0,D|0,1045635584,49096)|0;b=c[j>>2]|0;c[b>>2]=e;c[b+4>>2]=D;zm(c[j>>2]|0);c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}if((WD(c[k>>2]|0,9408)|0)!=0){b=c[l>>2]|0;i=g;return b|0}rm(c[j>>2]|0);b=w;c[b>>2]=ym(c[j>>2]|0,c[x>>2]|0,l)|0;c[b+4>>2]=D;if((c[l>>2]|0)!=0){b=c[l>>2]|0;i=g;return b|0}b=w;e=c[j>>2]|0;f=e;c[e>>2]=ZD(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[e+4>>2]=D;zm(c[j>>2]|0);e=w;b=c[e>>2]|0;e=c[e+4>>2]|0;e=ZD(b|0,e|0,ym(c[j>>2]|0,c[x>>2]|0,l)|0,D|0)|0;b=c[j>>2]|0;f=b;c[b>>2]=bE(c[f>>2]|0,c[f+4>>2]|0,e|0,D|0)|0;c[b+4>>2]=D;b=c[l>>2]|0;i=g;return b|0};case 115:{if((XD(c[k>>2]|0,9432,9)|0)!=0){b=c[l>>2]|0;i=g;return b|0}c[k>>2]=(c[k>>2]|0)+9;tm(c[j>>2]|0);a[(c[j>>2]|0)+41>>0]=1;c[(c[j>>2]|0)+24>>2]=0;c[(c[j>>2]|0)+20>>2]=0;h[(c[j>>2]|0)+32>>3]=0.0;a[(c[j>>2]|0)+43>>0]=0;a[(c[j>>2]|0)+42>>0]=0;if((WD(c[k>>2]|0,9448)|0)==0){c[(c[j>>2]|0)+16>>2]=1;c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}if((WD(c[k>>2]|0,9456)|0)==0){tm(c[j>>2]|0);c[(c[j>>2]|0)+12>>2]=1;c[(c[j>>2]|0)+16>>2]=1;c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}if((WD(c[k>>2]|0,9464)|0)!=0){b=c[l>>2]|0;i=g;return b|0}c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0};case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:case 45:case 43:{c[v>>2]=1;while(1){if((a[(c[k>>2]|0)+(c[v>>2]|0)>>0]|0)==0){break}if((a[(c[k>>2]|0)+(c[v>>2]|0)>>0]|0)==58){break}if(!((a[48+(d[(c[k>>2]|0)+(c[v>>2]|0)>>0]|0)>>0]&1|0)!=0^1)){break}c[v>>2]=(c[v>>2]|0)+1}if((Am(c[k>>2]|0,q,c[v>>2]|0,1)|0)==0){c[l>>2]=1;b=c[l>>2]|0;i=g;return b|0}if((a[(c[k>>2]|0)+(c[v>>2]|0)>>0]|0)==58){c[m>>2]=c[k>>2];if((a[48+(d[c[m>>2]>>0]|0)>>0]&4|0)==0){c[m>>2]=(c[m>>2]|0)+1}q=n+0|0;p=q+48|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(p|0));if((Bm(c[m>>2]|0,n)|0)!=0){b=c[l>>2]|0;i=g;return b|0}rm(n);e=n;e=ZD(c[e>>2]|0,c[e+4>>2]|0,432e5,0)|0;b=n;c[b>>2]=e;c[b+4>>2]=D;b=n;b=jE(c[b>>2]|0,c[b+4>>2]|0,864e5,0)|0;e=o;c[e>>2]=b;c[e+4>>2]=D;e=o;e=lE(c[e>>2]|0,c[e+4>>2]|0,864e5,0)|0;b=n;e=ZD(c[b>>2]|0,c[b+4>>2]|0,e|0,D|0)|0;b=n;c[b>>2]=e;c[b+4>>2]=D;if((a[c[k>>2]>>0]|0)==45){e=n;e=ZD(0,0,c[e>>2]|0,c[e+4>>2]|0)|0;b=n;c[b>>2]=e;c[b+4>>2]=D}rm(c[j>>2]|0);zm(c[j>>2]|0);e=n;b=c[j>>2]|0;f=b;e=bE(c[f>>2]|0,c[f+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;c[b>>2]=e;c[b+4>>2]=D;c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}c[k>>2]=(c[k>>2]|0)+(c[v>>2]|0);while(1){m=c[k>>2]|0;if((a[48+(d[c[k>>2]>>0]|0)>>0]&1|0)==0){break}c[k>>2]=m+1}c[v>>2]=Mb(m)|0;if((c[v>>2]|0)>10|(c[v>>2]|0)<3){b=c[l>>2]|0;i=g;return b|0}if((a[(c[k>>2]|0)+((c[v>>2]|0)-1)>>0]|0)==115){a[(c[k>>2]|0)+((c[v>>2]|0)-1)>>0]=0;c[v>>2]=(c[v>>2]|0)+ -1}rm(c[j>>2]|0);c[l>>2]=0;h[p>>3]=+h[q>>3]<0.0?-.5:.5;if((c[v>>2]|0)==3?(WD(c[k>>2]|0,9464)|0)==0:0){A=+h[q>>3]*864.0e5+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=bE(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D}else{t=53}do{if((t|0)==53){if((c[v>>2]|0)==4?(WD(c[k>>2]|0,9472)|0)==0:0){A=+h[q>>3]*36.0e5+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=bE(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D;break}if((c[v>>2]|0)==6?(WD(c[k>>2]|0,9480)|0)==0:0){A=+h[q>>3]*6.0e4+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=bE(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D;break}if((c[v>>2]|0)==6?(WD(c[k>>2]|0,9488)|0)==0:0){A=+h[q>>3]*1.0e3+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=bE(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D;break}if((c[v>>2]|0)==5?(WD(c[k>>2]|0,9448)|0)==0:0){sm(c[j>>2]|0);b=(c[j>>2]|0)+12|0;c[b>>2]=(c[b>>2]|0)+~~+h[q>>3];b=c[(c[j>>2]|0)+12>>2]|0;c[u>>2]=(((c[(c[j>>2]|0)+12>>2]|0)>0?b-1|0:b-12|0)|0)/12|0;b=(c[j>>2]|0)+8|0;c[b>>2]=(c[b>>2]|0)+(c[u>>2]|0);b=(c[j>>2]|0)+12|0;c[b>>2]=(c[b>>2]|0)-((c[u>>2]|0)*12|0);a[(c[j>>2]|0)+42>>0]=0;rm(c[j>>2]|0);c[r>>2]=~~+h[q>>3];if(!(+(c[r>>2]|0)!=+h[q>>3])){break}A=(+h[q>>3]- +(c[r>>2]|0))*30.0*864.0e5+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=bE(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D;break}if((c[v>>2]|0)==4?(WD(c[k>>2]|0,9456)|0)==0:0){c[s>>2]=~~+h[q>>3];sm(c[j>>2]|0);b=(c[j>>2]|0)+8|0;c[b>>2]=(c[b>>2]|0)+(c[s>>2]|0);a[(c[j>>2]|0)+42>>0]=0;rm(c[j>>2]|0);if(!(+(c[s>>2]|0)!=+h[q>>3])){break}A=(+h[q>>3]- +(c[s>>2]|0))*365.0*864.0e5+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=bE(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D;break}c[l>>2]=1}}while(0);zm(c[j>>2]|0);b=c[l>>2]|0;i=g;return b|0};default:{b=c[l>>2]|0;i=g;return b|0}}return 0}function ym(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+176|0;f=o+96|0;q=o+164|0;l=o+160|0;m=o+156|0;n=o+48|0;p=o;j=o+152|0;k=o+108|0;g=o+104|0;c[q>>2]=b;c[l>>2]=d;c[m>>2]=e;d=k+0|0;e=d+44|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));d=n+0|0;q=(c[q>>2]|0)+0|0;e=d+48|0;do{c[d>>2]=c[q>>2];d=d+4|0;q=q+4|0}while((d|0)<(e|0));sm(n);if((c[n+8>>2]|0)>=1971?(c[n+8>>2]|0)<2038:0){c[g>>2]=~~(+h[n+32>>3]+.5);h[n+32>>3]=+(c[g>>2]|0)}else{c[n+8>>2]=2e3;c[n+12>>2]=1;c[n+16>>2]=1;c[n+20>>2]=0;c[n+24>>2]=0;h[n+32>>3]=0.0}c[n+28>>2]=0;a[n+42>>0]=0;rm(n);b=n;b=jE(c[b>>2]|0,c[b+4>>2]|0,1e3,0)|0;b=ZD(b|0,D|0,413362496,49)|0;c[j>>2]=b;if((Em(j,k)|0)!=0){Pd(c[l>>2]|0,9496,-1);c[c[m>>2]>>2]=1;d=f;c[d>>2]=0;c[d+4>>2]=0;d=f;b=d;b=c[b>>2]|0;d=d+4|0;d=c[d>>2]|0;D=d;i=o;return b|0}else{c[p+8>>2]=(c[k+20>>2]|0)+1900;c[p+12>>2]=(c[k+16>>2]|0)+1;c[p+16>>2]=c[k+12>>2];c[p+20>>2]=c[k+8>>2];c[p+24>>2]=c[k+4>>2];h[p+32>>3]=+(c[k>>2]|0);a[p+40>>0]=1;a[p+41>>0]=1;a[p+42>>0]=0;a[p+43>>0]=0;rm(p);c[c[m>>2]>>2]=0;d=p;b=n;b=ZD(c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;d=f;c[d>>2]=b;c[d+4>>2]=D;d=f;b=d;b=c[b>>2]|0;d=d+4|0;d=c[d>>2]|0;D=d;i=o;return b|0}return 0}function zm(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;a[(c[e>>2]|0)+40>>0]=0;a[(c[e>>2]|0)+41>>0]=0;a[(c[e>>2]|0)+43>>0]=0;i=d;return}function Am(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0.0,G=0.0;k=i;i=i+96|0;j=k+76|0;p=k+72|0;l=k+68|0;C=k+64|0;E=k+80|0;z=k+60|0;q=k+56|0;v=k+52|0;y=k+16|0;w=k+48|0;s=k+44|0;x=k+40|0;n=k+36|0;m=k+8|0;o=k+32|0;r=k+28|0;B=k+24|0;u=k;c[p>>2]=b;c[l>>2]=e;c[C>>2]=f;a[E>>0]=g;c[q>>2]=(c[p>>2]|0)+(c[C>>2]|0);c[v>>2]=1;b=y;c[b>>2]=0;c[b+4>>2]=0;c[w>>2]=0;c[s>>2]=1;c[x>>2]=0;c[n>>2]=1;c[o>>2]=0;c[r>>2]=0;h[c[l>>2]>>3]=0.0;if((d[E>>0]|0)==1){c[z>>2]=1}else{c[z>>2]=2;c[B>>2]=3-(d[E>>0]|0);while(1){if((c[B>>2]|0)>=(c[C>>2]|0)){break}if((a[(c[p>>2]|0)+(c[B>>2]|0)>>0]|0)!=0){break}c[B>>2]=(c[B>>2]|0)+2}c[r>>2]=(c[B>>2]|0)<(c[C>>2]|0)&1;c[q>>2]=(c[p>>2]|0)+(c[B>>2]|0)+(d[E>>0]|0)+ -3;c[p>>2]=(c[p>>2]|0)+(a[E>>0]&1)}while(1){if(!((c[p>>2]|0)>>>0<(c[q>>2]|0)>>>0)){break}if((a[48+(d[c[p>>2]>>0]|0)>>0]&1|0)==0){break}c[p>>2]=(c[p>>2]|0)+(c[z>>2]|0)}if((c[p>>2]|0)>>>0>=(c[q>>2]|0)>>>0){c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}if((a[c[p>>2]>>0]|0)!=45){if((a[c[p>>2]>>0]|0)==43){c[p>>2]=(c[p>>2]|0)+(c[z>>2]|0)}}else{c[v>>2]=-1;c[p>>2]=(c[p>>2]|0)+(c[z>>2]|0)}while(1){if(!((c[p>>2]|0)>>>0<(c[q>>2]|0)>>>0)){break}if((a[c[p>>2]>>0]|0)!=48){break}c[p>>2]=(c[p>>2]|0)+(c[z>>2]|0);c[o>>2]=(c[o>>2]|0)+1}while(1){if(!((c[p>>2]|0)>>>0<(c[q>>2]|0)>>>0)){break}if((a[48+(d[c[p>>2]>>0]|0)>>0]&4|0)==0){break}b=y;e=c[b+4>>2]|0;if(!((e|0)<214748364|(e|0)==214748364&(c[b>>2]|0)>>>0<3435973835)){break}b=y;b=lE(c[b>>2]|0,c[b+4>>2]|0,10,0)|0;e=(a[c[p>>2]>>0]|0)-48|0;e=bE(b|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;b=y;c[b>>2]=e;c[b+4>>2]=D;c[p>>2]=(c[p>>2]|0)+(c[z>>2]|0);c[o>>2]=(c[o>>2]|0)+1}while(1){if(!((c[p>>2]|0)>>>0<(c[q>>2]|0)>>>0)){break}if((a[48+(d[c[p>>2]>>0]|0)>>0]&4|0)==0){break}c[p>>2]=(c[p>>2]|0)+(c[z>>2]|0);c[o>>2]=(c[o>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1}a:do{if(!((c[p>>2]|0)>>>0>=(c[q>>2]|0)>>>0)){b:do{if((a[c[p>>2]>>0]|0)==46){c[p>>2]=(c[p>>2]|0)+(c[z>>2]|0);while(1){if(!((c[p>>2]|0)>>>0<(c[q>>2]|0)>>>0)){break}if((a[48+(d[c[p>>2]>>0]|0)>>0]&4|0)==0){break}b=y;e=c[b+4>>2]|0;if(!((e|0)<214748364|(e|0)==214748364&(c[b>>2]|0)>>>0<3435973835)){break}b=y;b=lE(c[b>>2]|0,c[b+4>>2]|0,10,0)|0;e=(a[c[p>>2]>>0]|0)-48|0;e=bE(b|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;b=y;c[b>>2]=e;c[b+4>>2]=D;c[p>>2]=(c[p>>2]|0)+(c[z>>2]|0);c[o>>2]=(c[o>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+ -1}while(1){if(!((c[p>>2]|0)>>>0<(c[q>>2]|0)>>>0)){break b}if((a[48+(d[c[p>>2]>>0]|0)>>0]&4|0)==0){break b}c[p>>2]=(c[p>>2]|0)+(c[z>>2]|0);c[o>>2]=(c[o>>2]|0)+1}}}while(0);if(!((c[p>>2]|0)>>>0>=(c[q>>2]|0)>>>0)){if(!((a[c[p>>2]>>0]|0)!=101?(a[c[p>>2]>>0]|0)!=69:0)){A=40}c:do{if((A|0)==40){c[p>>2]=(c[p>>2]|0)+(c[z>>2]|0);c[n>>2]=0;if((c[p>>2]|0)>>>0>=(c[q>>2]|0)>>>0){break a}if((a[c[p>>2]>>0]|0)!=45){if((a[c[p>>2]>>0]|0)==43){c[p>>2]=(c[p>>2]|0)+(c[z>>2]|0)}}else{c[s>>2]=-1;c[p>>2]=(c[p>>2]|0)+(c[z>>2]|0)}while(1){if(!((c[p>>2]|0)>>>0<(c[q>>2]|0)>>>0)){break c}if((a[48+(d[c[p>>2]>>0]|0)>>0]&4|0)==0){break c}if((c[x>>2]|0)<1e4){A=((c[x>>2]|0)*10|0)+((a[c[p>>2]>>0]|0)-48)|0}else{A=1e4}c[x>>2]=A;c[p>>2]=(c[p>>2]|0)+(c[z>>2]|0);c[n>>2]=1}}}while(0);if((c[o>>2]|0)!=0?(c[n>>2]|0)!=0:0){while(1){if(!((c[p>>2]|0)>>>0<(c[q>>2]|0)>>>0)){break a}if((a[48+(d[c[p>>2]>>0]|0)>>0]&1|0)==0){break a}c[p>>2]=(c[p>>2]|0)+(c[z>>2]|0)}}}}}while(0);b=$(c[x>>2]|0,c[s>>2]|0)|0;c[x>>2]=b+(c[w>>2]|0);if((c[x>>2]|0)<0){c[s>>2]=-1;c[x>>2]=$(c[x>>2]|0,-1)|0}else{c[s>>2]=1}b=y;do{if((c[b>>2]|0)!=0|(c[b+4>>2]|0)!=0){d:do{if((c[s>>2]|0)>0){while(1){b=y;e=c[b+4>>2]|0;if(!((e|0)<214748364|(e|0)==214748364&(c[b>>2]|0)>>>0<3435973836)){break d}if((c[x>>2]|0)<=0){break d}c[x>>2]=(c[x>>2]|0)+ -1;e=y;e=lE(c[e>>2]|0,c[e+4>>2]|0,10,0)|0;b=y;c[b>>2]=e;c[b+4>>2]=D}}else{while(1){b=y;b=kE(c[b>>2]|0,c[b+4>>2]|0,10,0)|0;if((b|0)!=0|(D|0)!=0){break d}if((c[x>>2]|0)<=0){break d}c[x>>2]=(c[x>>2]|0)+ -1;e=y;e=jE(c[e>>2]|0,c[e+4>>2]|0,10,0)|0;b=y;c[b>>2]=e;c[b+4>>2]=D}}}while(0);f=(c[v>>2]|0)<0;e=y;g=c[e>>2]|0;e=c[e+4>>2]|0;E=ZD(0,0,g|0,e|0)|0;b=y;c[b>>2]=f?E:g;c[b+4>>2]=f?D:e;if((c[x>>2]|0)==0){b=y;h[m>>3]=+((c[b>>2]|0)>>>0)+4294967296.0*+(c[b+4>>2]|0);break}h[u>>3]=1.0;if((c[x>>2]|0)>307&(c[x>>2]|0)<342){while(1){if(((c[x>>2]|0)%308|0|0)==0){break}h[u>>3]=+h[u>>3]*10.0;c[x>>2]=(c[x>>2]|0)-1}b=y;F=+((c[b>>2]|0)>>>0)+4294967296.0*+(c[b+4>>2]|0);G=+h[u>>3];if((c[s>>2]|0)<0){h[m>>3]=F/G;h[m>>3]=+h[m>>3]/1.0e+308;break}else{h[m>>3]=F*G;h[m>>3]=+h[m>>3]*1.0e+308;break}}if((c[x>>2]|0)>=342){b=y;F=+((c[b>>2]|0)>>>0)+4294967296.0*+(c[b+4>>2]|0);if((c[s>>2]|0)<0){h[m>>3]=0.0*F;break}else{h[m>>3]=t*F;break}}while(1){if(((c[x>>2]|0)%22|0|0)==0){break}h[u>>3]=+h[u>>3]*10.0;c[x>>2]=(c[x>>2]|0)-1}while(1){if((c[x>>2]|0)<=0){break}h[u>>3]=+h[u>>3]*1.0e+22;c[x>>2]=(c[x>>2]|0)-22}b=y;F=+((c[b>>2]|0)>>>0)+4294967296.0*+(c[b+4>>2]|0);G=+h[u>>3];if((c[s>>2]|0)<0){h[m>>3]=F/G;break}else{h[m>>3]=F*G;break}}else{if((c[v>>2]|0)<0){s=(c[o>>2]|0)!=0}else{s=0}h[m>>3]=s?-0.0:0.0}}while(0);h[c[l>>2]>>3]=+h[m>>3];if(((c[p>>2]|0)>>>0>=(c[q>>2]|0)>>>0?(c[o>>2]|0)>0:0)?(c[n>>2]|0)!=0:0){l=(c[r>>2]|0)==0}else{l=0}c[j>>2]=l&1;b=c[j>>2]|0;i=k;return b|0}function Bm(b,e){b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+80|0;l=m+16|0;g=m+76|0;k=m+72|0;n=m+68|0;o=m+64|0;p=m+60|0;f=m+56|0;q=m+8|0;j=m;c[k>>2]=b;c[n>>2]=e;h[q>>3]=0.0;b=c[k>>2]|0;c[l>>2]=2;c[l+4>>2]=0;c[l+8>>2]=24;c[l+12>>2]=58;c[l+16>>2]=o;c[l+20>>2]=2;c[l+24>>2]=0;c[l+28>>2]=59;c[l+32>>2]=0;c[l+36>>2]=p;if((Cm(b,l)|0)!=2){c[g>>2]=1;b=c[g>>2]|0;i=m;return b|0}c[k>>2]=(c[k>>2]|0)+5;if((a[c[k>>2]>>0]|0)==58){c[k>>2]=(c[k>>2]|0)+1;b=c[k>>2]|0;c[l>>2]=2;c[l+4>>2]=0;c[l+8>>2]=59;c[l+12>>2]=0;c[l+16>>2]=f;if((Cm(b,l)|0)!=1){c[g>>2]=1;b=c[g>>2]|0;i=m;return b|0}c[k>>2]=(c[k>>2]|0)+2;if((a[c[k>>2]>>0]|0)==46?(a[48+(d[(c[k>>2]|0)+1>>0]|0)>>0]&4|0)!=0:0){h[j>>3]=1.0;c[k>>2]=(c[k>>2]|0)+1;while(1){if((a[48+(d[c[k>>2]>>0]|0)>>0]&4|0)==0){break}h[q>>3]=+h[q>>3]*10.0+ +(a[c[k>>2]>>0]|0)-48.0;h[j>>3]=+h[j>>3]*10.0;c[k>>2]=(c[k>>2]|0)+1}h[q>>3]=+h[q>>3]/+h[j>>3]}}else{c[f>>2]=0}a[(c[n>>2]|0)+42>>0]=0;a[(c[n>>2]|0)+41>>0]=1;c[(c[n>>2]|0)+20>>2]=c[o>>2];c[(c[n>>2]|0)+24>>2]=c[p>>2];h[(c[n>>2]|0)+32>>3]=+(c[f>>2]|0)+ +h[q>>3];if((Dm(c[k>>2]|0,c[n>>2]|0)|0)!=0){c[g>>2]=1;b=c[g>>2]|0;i=m;return b|0}else{a[(c[n>>2]|0)+43>>0]=(c[(c[n>>2]|0)+28>>2]|0)!=0?1:0;c[g>>2]=0;b=c[g>>2]|0;i=m;return b|0}return 0}function Cm(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+64|0;l=g+48|0;p=g+32|0;j=g+24|0;o=g+20|0;n=g+16|0;m=g+12|0;h=g+8|0;k=g+4|0;f=g;c[l>>2]=b;c[f>>2]=0;c[p>>2]=e;a:while(1){e=c[p>>2]|0;b=c[e>>2]|0;c[p>>2]=e+4;c[o>>2]=b;b=c[p>>2]|0;e=c[b>>2]|0;c[p>>2]=b+4;c[n>>2]=e;e=c[p>>2]|0;b=c[e>>2]|0;c[p>>2]=e+4;c[m>>2]=b;b=c[p>>2]|0;e=c[b>>2]|0;c[p>>2]=b+4;c[h>>2]=e;e=c[p>>2]|0;b=c[e>>2]|0;c[p>>2]=e+4;c[k>>2]=b;c[j>>2]=0;while(1){b=c[o>>2]|0;c[o>>2]=b+ -1;if((b|0)==0){break}if((a[48+(d[c[l>>2]>>0]|0)>>0]&4|0)==0){h=11;break a}c[j>>2]=((c[j>>2]|0)*10|0)+(a[c[l>>2]>>0]|0)-48;c[l>>2]=(c[l>>2]|0)+1}if((c[j>>2]|0)<(c[n>>2]|0)){h=11;break}if((c[j>>2]|0)>(c[m>>2]|0)){h=11;break}if((c[h>>2]|0)!=0?(c[h>>2]|0)!=(a[c[l>>2]>>0]|0):0){h=11;break}c[c[k>>2]>>2]=c[j>>2];c[l>>2]=(c[l>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+1;if((c[h>>2]|0)==0){h=11;break}}if((h|0)==11){i=g;return c[f>>2]|0}return 0}function Dm(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+80|0;o=f;h=f+64|0;g=f+60|0;n=f+56|0;k=f+52|0;j=f+48|0;l=f+44|0;p=f+40|0;c[g>>2]=b;c[n>>2]=e;c[k>>2]=0;while(1){if((a[48+(d[c[g>>2]>>0]|0)>>0]&1|0)==0){break}c[g>>2]=(c[g>>2]|0)+1}c[(c[n>>2]|0)+28>>2]=0;c[p>>2]=a[c[g>>2]>>0]|0;do{if((c[p>>2]|0)==45){c[k>>2]=-1;m=11}else{if((c[p>>2]|0)==43){c[k>>2]=1;m=11;break}if((c[p>>2]|0)==90|(c[p>>2]|0)==122){c[g>>2]=(c[g>>2]|0)+1;break}c[h>>2]=(c[p>>2]|0)!=0&1;b=c[h>>2]|0;i=f;return b|0}}while(0);do{if((m|0)==11){c[g>>2]=(c[g>>2]|0)+1;b=c[g>>2]|0;c[o>>2]=2;c[o+4>>2]=0;c[o+8>>2]=14;c[o+12>>2]=58;c[o+16>>2]=j;c[o+20>>2]=2;c[o+24>>2]=0;c[o+28>>2]=59;c[o+32>>2]=0;c[o+36>>2]=l;if((Cm(b,o)|0)==2){c[g>>2]=(c[g>>2]|0)+5;b=$(c[k>>2]|0,(c[l>>2]|0)+((c[j>>2]|0)*60|0)|0)|0;c[(c[n>>2]|0)+28>>2]=b;break}c[h>>2]=1;b=c[h>>2]|0;i=f;return b|0}}while(0);while(1){j=c[g>>2]|0;if((a[48+(d[c[g>>2]>>0]|0)>>0]&1|0)==0){break}c[g>>2]=j+1}c[h>>2]=(a[j>>0]|0)!=0&1;b=c[h>>2]|0;i=f;return b|0}function Em(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=f+12|0;g=f+8|0;e=f+4|0;d=f;c[h>>2]=a;c[g>>2]=b;a=nb(c[h>>2]|0)|0;c[d>>2]=a;c[d>>2]=(c[38776>>2]|0)!=0?0:a;if((c[d>>2]|0)!=0){a=(c[g>>2]|0)+0|0;g=(c[d>>2]|0)+0|0;b=a+44|0;do{c[a>>2]=c[g>>2];a=a+4|0;g=g+4|0}while((a|0)<(b|0))}c[e>>2]=(c[d>>2]|0)==0&1;i=f;return c[e>>2]|0}function Fm(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+96|0;o=g;l=g+84|0;h=g+80|0;j=g+76|0;k=g+72|0;m=g+68|0;n=g+64|0;f=g+60|0;c[h>>2]=b;c[j>>2]=e;if((a[c[h>>2]>>0]|0)==45){c[h>>2]=(c[h>>2]|0)+1;c[f>>2]=1}else{c[f>>2]=0}b=c[h>>2]|0;c[o>>2]=4;c[o+4>>2]=0;c[o+8>>2]=9999;c[o+12>>2]=45;c[o+16>>2]=k;c[o+20>>2]=2;c[o+24>>2]=1;c[o+28>>2]=12;c[o+32>>2]=45;c[o+36>>2]=m;c[o+40>>2]=2;c[o+44>>2]=1;c[o+48>>2]=31;c[o+52>>2]=0;c[o+56>>2]=n;if((Cm(b,o)|0)!=3){c[l>>2]=1;b=c[l>>2]|0;i=g;return b|0}c[h>>2]=(c[h>>2]|0)+10;while(1){if((a[48+(d[c[h>>2]>>0]|0)>>0]&1|0)!=0){o=1}else{o=84==(d[c[h>>2]>>0]|0)}e=c[h>>2]|0;if(!o){break}c[h>>2]=e+1}do{if((Bm(e,c[j>>2]|0)|0)!=0){if((a[c[h>>2]>>0]|0)==0){a[(c[j>>2]|0)+41>>0]=0;break}c[l>>2]=1;b=c[l>>2]|0;i=g;return b|0}}while(0);a[(c[j>>2]|0)+42>>0]=0;a[(c[j>>2]|0)+40>>0]=1;b=c[k>>2]|0;c[(c[j>>2]|0)+8>>2]=(c[f>>2]|0)!=0?0-b|0:b;c[(c[j>>2]|0)+12>>2]=c[m>>2];c[(c[j>>2]|0)+16>>2]=c[n>>2];if((a[(c[j>>2]|0)+43>>0]|0)!=0){rm(c[j>>2]|0)}c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}function Gm(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;b=d+4|0;e=d;c[f>>2]=a;c[b>>2]=c[(c[f>>2]|0)+56>>2];a=(c[b>>2]|0)+136|0;if((c[a>>2]|0)==0&(c[a+4>>2]|0)==0?(c[e>>2]=Hm(c[c[(c[f>>2]|0)+8>>2]>>2]|0,(c[b>>2]|0)+136|0)|0,(c[e>>2]|0)!=0):0){f=(c[b>>2]|0)+136|0;c[f>>2]=0;c[f+4>>2]=0}f=(c[b>>2]|0)+136|0;D=c[f+4>>2]|0;i=d;return c[f>>2]|0}function Hm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0.0;d=i;i=i+32|0;g=d+16|0;f=d+12|0;e=d+8|0;j=d;c[g>>2]=a;c[f>>2]=b;if((c[c[g>>2]>>2]|0)>=2?(c[(c[g>>2]|0)+72>>2]|0)!=0:0){c[e>>2]=zb[c[(c[g>>2]|0)+72>>2]&63](c[g>>2]|0,c[f>>2]|0)|0;a=c[e>>2]|0;i=d;return a|0}c[e>>2]=zb[c[(c[g>>2]|0)+64>>2]&63](c[g>>2]|0,j)|0;k=+h[j>>3]*864.0e5;j=+O(k)>=1.0?k>0.0?(ea(+N(k/4294967296.0),4294967295.0)|0)>>>0:~~+_((k- +(~~k>>>0))/4294967296.0)>>>0:0;a=c[f>>2]|0;c[a>>2]=~~k>>>0;c[a+4>>2]=j;a=c[e>>2]|0;i=d;return a|0}function Im(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+16|0;k=f+12|0;g=f+8|0;h=f+4|0;j=f;c[l>>2]=b;c[k>>2]=e;c[g>>2]=0;c[h>>2]=c[l>>2];if((c[k>>2]|0)>=0){c[j>>2]=(c[h>>2]|0)+(c[k>>2]|0)}else{c[j>>2]=-1}while(1){if((d[c[h>>2]>>0]|0|0)==0){e=10;break}if(!((c[h>>2]|0)>>>0<(c[j>>2]|0)>>>0)){e=10;break}l=c[h>>2]|0;c[h>>2]=l+1;a:do{if((d[l>>0]|0|0)>=192){while(1){if((a[c[h>>2]>>0]&192|0)!=128){break a}c[h>>2]=(c[h>>2]|0)+1}}}while(0);c[g>>2]=(c[g>>2]|0)+1}if((e|0)==10){i=f;return c[g>>2]|0}return 0}function Jm(b){b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=b;h=c[g>>2]|0;b=c[h>>2]|0;c[h>>2]=b+1;c[f>>2]=d[b>>0]|0;if(!((c[f>>2]|0)>>>0>=192)){h=c[f>>2]|0;i=e;return h|0}c[f>>2]=d[4936+((c[f>>2]|0)-192)>>0]|0;while(1){b=c[f>>2]|0;if((a[c[c[g>>2]>>2]>>0]&192|0)!=128){break}j=c[g>>2]|0;h=c[j>>2]|0;c[j>>2]=h+1;c[f>>2]=(b<<6)+(63&(d[h>>0]|0))}if((!(b>>>0<128)?(c[f>>2]&-2048|0)!=55296:0)?(c[f>>2]&-2|0)!=65534:0){j=c[f>>2]|0;i=e;return j|0}c[f>>2]=65533;j=c[f>>2]|0;i=e;return j|0}function Km(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;d=c[h>>2]|0;if(((c[(c[h>>2]|0)+12>>2]|0)+(c[f>>2]|0)|0)>=(c[(c[h>>2]|0)+16>>2]|0)){Lm(d,c[g>>2]|0,c[f>>2]|0);i=e;return}else{dE((c[(c[h>>2]|0)+8>>2]|0)+(c[d+12>>2]|0)|0,c[g>>2]|0,c[f>>2]|0)|0;a=(c[h>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+(c[f>>2]|0);i=e;return}}function Lm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[h>>2]=Mm(c[f>>2]|0,c[h>>2]|0)|0;if((c[h>>2]|0)<=0){i=e;return}dE((c[(c[f>>2]|0)+8>>2]|0)+(c[(c[f>>2]|0)+12>>2]|0)|0,c[g>>2]|0,c[h>>2]|0)|0;a=(c[f>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+(c[h>>2]|0);i=e;return}function Mm(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;g=k+24|0;h=k+20|0;j=k+16|0;l=k+12|0;f=k+8|0;m=k;c[h>>2]=b;c[j>>2]=e;if((a[(c[h>>2]|0)+25>>0]|0)!=0){c[g>>2]=0;b=c[g>>2]|0;i=k;return b|0}e=c[h>>2]|0;if((a[(c[h>>2]|0)+24>>0]|0)==0){c[j>>2]=(c[e+16>>2]|0)-(c[(c[h>>2]|0)+12>>2]|0)-1;Nm(c[h>>2]|0,2);c[g>>2]=c[j>>2];b=c[g>>2]|0;i=k;return b|0}if((c[e+8>>2]|0)==(c[(c[h>>2]|0)+4>>2]|0)){e=0}else{e=c[(c[h>>2]|0)+8>>2]|0}c[f>>2]=e;e=c[(c[h>>2]|0)+12>>2]|0;o=m;c[o>>2]=e;c[o+4>>2]=((e|0)<0)<<31>>31;o=(c[j>>2]|0)+1|0;e=m;o=bE(c[e>>2]|0,c[e+4>>2]|0,o|0,((o|0)<0)<<31>>31|0)|0;e=m;c[e>>2]=o;c[e+4>>2]=D;e=m;o=c[e+4>>2]|0;b=c[(c[h>>2]|0)+20>>2]|0;n=((b|0)<0)<<31>>31;if((o|0)>(n|0)|((o|0)==(n|0)?(c[e>>2]|0)>>>0>b>>>0:0)){Om(c[h>>2]|0);Nm(c[h>>2]|0,2);c[g>>2]=0;o=c[g>>2]|0;i=k;return o|0}c[(c[h>>2]|0)+16>>2]=c[m>>2];if((d[(c[h>>2]|0)+24>>0]|0)==1){c[l>>2]=Pm(c[c[h>>2]>>2]|0,c[f>>2]|0,c[(c[h>>2]|0)+16>>2]|0)|0}else{c[l>>2]=ic(c[f>>2]|0,c[(c[h>>2]|0)+16>>2]|0)|0}if((c[l>>2]|0)==0){Om(c[h>>2]|0);Nm(c[h>>2]|0,1);c[g>>2]=0;o=c[g>>2]|0;i=k;return o|0}if((c[f>>2]|0)==0?(c[(c[h>>2]|0)+12>>2]|0)>0:0){dE(c[l>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[(c[h>>2]|0)+12>>2]|0)|0}c[(c[h>>2]|0)+8>>2]=c[l>>2];c[g>>2]=c[j>>2];o=c[g>>2]|0;i=k;return o|0}function Nm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e;g=e+4|0;c[f>>2]=b;a[g>>0]=d;a[(c[f>>2]|0)+25>>0]=a[g>>0]|0;c[(c[f>>2]|0)+16>>2]=0;i=e;return}function Om(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;do{if((c[(c[e>>2]|0)+8>>2]|0)!=(c[(c[e>>2]|0)+4>>2]|0)){a=c[e>>2]|0;if((d[(c[e>>2]|0)+24>>0]|0|0)==1){Wb(c[a>>2]|0,c[(c[e>>2]|0)+8>>2]|0);break}else{gc(c[a+8>>2]|0);break}}}while(0);c[(c[e>>2]|0)+8>>2]=0;i=b;return}function Pm(b,f,g){b=b|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h+16|0;n=h+12|0;m=h+8|0;k=h+4|0;l=h;c[n>>2]=b;c[m>>2]=f;c[k>>2]=g;c[l>>2]=0;do{if((d[(c[n>>2]|0)+64>>0]|0|0)==0){g=c[n>>2]|0;if((c[m>>2]|0)==0){c[j>>2]=Le(g,c[k>>2]|0)|0;b=c[j>>2]|0;i=h;return b|0}if((Qm(g,c[m>>2]|0)|0)==0){c[l>>2]=ic(c[m>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)!=0){break}a[(c[n>>2]|0)+64>>0]=1;break}if((c[k>>2]|0)<=(e[(c[n>>2]|0)+240>>1]|0|0)){c[j>>2]=c[m>>2];b=c[j>>2]|0;i=h;return b|0}else{c[l>>2]=Le(c[n>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)==0){break}dE(c[l>>2]|0,c[m>>2]|0,e[(c[n>>2]|0)+240>>1]|0|0)|0;Wb(c[n>>2]|0,c[m>>2]|0);break}}}while(0);c[j>>2]=c[l>>2];b=c[j>>2]|0;i=h;return b|0}function Qm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;if(!((c[e>>2]|0)>>>0>=(c[(c[f>>2]|0)+268>>2]|0)>>>0)){a=0;a=a&1;i=d;return a|0}a=(c[e>>2]|0)>>>0<(c[(c[f>>2]|0)+272>>2]|0)>>>0;a=a&1;i=d;return a|0}function Rm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;e=f+20|0;h=f+16|0;g=f+8|0;j=f;c[h>>2]=a;k=g;c[k>>2]=b;c[k+4>>2]=d;d=c[h>>2]|0;k=c[d+4>>2]|0;a=j;c[a>>2]=c[d>>2];c[a+4>>2]=k;a=g;k=c[a+4>>2]|0;d=j;b=c[d+4>>2]|0;if((k|0)>0|(k|0)==0&(c[a>>2]|0)>>>0>=0){if((b|0)>0|(b|0)==0&(c[d>>2]|0)>>>0>0?(a=j,a=ZD(-1,2147483647,c[a>>2]|0,c[a+4>>2]|0)|0,d=D,k=g,b=c[k+4>>2]|0,(d|0)<(b|0)|((d|0)==(b|0)?a>>>0<(c[k>>2]|0)>>>0:0)):0){c[e>>2]=1;k=c[e>>2]|0;i=f;return k|0}}else{if((b|0)<0?(a=j,a=bE(c[a>>2]|0,c[a+4>>2]|0,-1,2147483647)|0,a=ZD(0,0,a|0,D|0)|0,d=D,k=g,k=bE(c[k>>2]|0,c[k+4>>2]|0,1,0)|0,b=D,(d|0)>(b|0)|(d|0)==(b|0)&a>>>0>k>>>0):0){c[e>>2]=1;k=c[e>>2]|0;i=f;return k|0}}a=g;k=c[h>>2]|0;b=k;a=bE(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[k>>2]=a;c[k+4>>2]=D;c[e>>2]=0;k=c[e>>2]|0;i=f;return k|0}function Sm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;g=e+16|0;h=e;f=e+12|0;k=e+8|0;c[g>>2]=a;j=h;c[j>>2]=b;c[j+4>>2]=d;c[k>>2]=je(c[g>>2]|0)|0;b=h;j=c[b+4>>2]|0;a=c[(c[k>>2]|0)+88>>2]|0;d=((a|0)<0)<<31>>31;if((j|0)>(d|0)|((j|0)==(d|0)?(c[b>>2]|0)>>>0>a>>>0:0)){be(c[g>>2]|0);c[f>>2]=0;k=c[f>>2]|0;i=e;return k|0}c[f>>2]=fc(c[h>>2]|0)|0;if((c[f>>2]|0)!=0){k=c[f>>2]|0;i=e;return k|0}ce(c[g>>2]|0);k=c[f>>2]|0;i=e;return k|0}function Tm(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+52>>2]|0}function Um(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+48|0;f=k+44|0;g=k+40|0;j=k+36|0;m=k+32|0;l=k+28|0;n=k+24|0;o=k+20|0;p=k+16|0;r=k+8|0;q=k;c[g>>2]=a;c[j>>2]=b;c[m>>2]=d;c[n>>2]=e[(c[g>>2]|0)+28>>1]|0;c[o>>2]=e[(c[j>>2]|0)+28>>1]|0;c[p>>2]=c[n>>2]|c[o>>2];if((c[p>>2]&1|0)!=0){c[f>>2]=(c[o>>2]&1)-(c[n>>2]&1);a=c[f>>2]|0;i=k;return a|0}if((c[p>>2]&12|0)==0){if((c[p>>2]&2|0)!=0){if((c[n>>2]&2|0)==0){c[f>>2]=1;a=c[f>>2]|0;i=k;return a|0}if((c[o>>2]&2|0)==0){c[f>>2]=-1;a=c[f>>2]|0;i=k;return a|0}if((c[m>>2]|0)!=0){c[f>>2]=Vm(c[g>>2]|0,c[j>>2]|0,c[m>>2]|0)|0;a=c[f>>2]|0;i=k;return a|0}}if((c[(c[g>>2]|0)+24>>2]|0)>(c[(c[j>>2]|0)+24>>2]|0)){m=c[(c[j>>2]|0)+24>>2]|0}else{m=c[(c[g>>2]|0)+24>>2]|0}c[l>>2]=VD(c[(c[g>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,m)|0;if((c[l>>2]|0)==0){c[l>>2]=(c[(c[g>>2]|0)+24>>2]|0)-(c[(c[j>>2]|0)+24>>2]|0)}c[f>>2]=c[l>>2];a=c[f>>2]|0;i=k;return a|0}if((c[n>>2]&c[o>>2]&4|0)!=0){b=(c[g>>2]|0)+16|0;q=c[b+4>>2]|0;a=(c[j>>2]|0)+16|0;r=c[a+4>>2]|0;if((q|0)<(r|0)|((q|0)==(r|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)){c[f>>2]=-1;a=c[f>>2]|0;i=k;return a|0}b=(c[g>>2]|0)+16|0;q=c[b+4>>2]|0;a=(c[j>>2]|0)+16|0;r=c[a+4>>2]|0;if((q|0)>(r|0)|((q|0)==(r|0)?(c[b>>2]|0)>>>0>(c[a>>2]|0)>>>0:0)){c[f>>2]=1;a=c[f>>2]|0;i=k;return a|0}else{c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}}do{if((c[n>>2]&8|0)!=0){h[r>>3]=+h[(c[g>>2]|0)+8>>3]}else{if((c[n>>2]&4|0)!=0){a=(c[g>>2]|0)+16|0;h[r>>3]=+((c[a>>2]|0)>>>0)+4294967296.0*+(c[a+4>>2]|0);break}c[f>>2]=1;a=c[f>>2]|0;i=k;return a|0}}while(0);do{if((c[o>>2]&8|0)!=0){h[q>>3]=+h[(c[j>>2]|0)+8>>3]}else{if((c[o>>2]&4|0)!=0){a=(c[j>>2]|0)+16|0;h[q>>3]=+((c[a>>2]|0)>>>0)+4294967296.0*+(c[a+4>>2]|0);break}c[f>>2]=-1;a=c[f>>2]|0;i=k;return a|0}}while(0);if(+h[r>>3]<+h[q>>3]){c[f>>2]=-1;a=c[f>>2]|0;i=k;return a|0}if(+h[r>>3]>+h[q>>3]){c[f>>2]=1;a=c[f>>2]|0;i=k;return a|0}else{c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}return 0}function Vm(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=i;i=i+128|0;n=p+112|0;r=p+108|0;s=p+104|0;l=p+100|0;q=p+96|0;o=p+92|0;k=p+88|0;h=p+84|0;j=p+80|0;g=p+40|0;m=p;c[r>>2]=b;c[s>>2]=e;c[l>>2]=f;if((d[(c[r>>2]|0)+30>>0]|0|0)==(d[(c[l>>2]|0)+4>>0]|0|0)){c[n>>2]=Ab[c[(c[l>>2]|0)+12>>2]&15](c[(c[l>>2]|0)+8>>2]|0,c[(c[r>>2]|0)+24>>2]|0,c[(c[r>>2]|0)+4>>2]|0,c[(c[s>>2]|0)+24>>2]|0,c[(c[s>>2]|0)+4>>2]|0)|0;b=c[n>>2]|0;i=p;return b|0}e=g+0|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));e=m+0|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));Wm(g,c[r>>2]|0,4096);Wm(m,c[s>>2]|0,4096);c[o>>2]=Jd(g,a[(c[l>>2]|0)+4>>0]|0)|0;if((c[o>>2]|0)==0){r=0}else{r=c[g+24>>2]|0}c[h>>2]=r;c[k>>2]=Jd(m,a[(c[l>>2]|0)+4>>0]|0)|0;if((c[k>>2]|0)==0){r=0}else{r=c[m+24>>2]|0}c[j>>2]=r;c[q>>2]=Ab[c[(c[l>>2]|0)+12>>2]&15](c[(c[l>>2]|0)+8>>2]|0,c[h>>2]|0,c[o>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;yd(g);yd(m);c[n>>2]=c[q>>2];b=c[n>>2]|0;i=p;return b|0}function Wm(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0;j=i;i=i+16|0;g=j+8|0;h=j+4|0;k=j;c[g>>2]=a;c[h>>2]=d;c[k>>2]=f;if((b[(c[g>>2]|0)+28>>1]&9312|0)!=0){le(c[g>>2]|0)}a=(c[g>>2]|0)+0|0;d=(c[h>>2]|0)+0|0;f=a+36|0;do{c[a>>2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(f|0));c[(c[g>>2]|0)+32>>2]=0;if((b[(c[h>>2]|0)+28>>1]&2048|0)!=0){i=j;return}a=(c[g>>2]|0)+28|0;b[a>>1]=(e[a>>1]|0)&-7169;a=(c[g>>2]|0)+28|0;b[a>>1]=e[a>>1]|0|c[k>>2];i=j;return}function Xm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;k=f+24|0;j=f+20|0;h=f+16|0;g=f;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;mc(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,g);i=f;return}function Ym(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;a[(c[e>>2]|0)+68>>0]=1;i=d;return}function Zm(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=ub[c[e>>2]&31](1612)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}c[c[d>>2]>>2]=-1;e=c[d>>2]|0;i=b;return e|0}function _m(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+48|0;l=h+32|0;p=h+28|0;n=h+24|0;o=h+20|0;k=h+8|0;j=h+4|0;m=h;c[p>>2]=d;c[n>>2]=e;c[o>>2]=g;c[m>>2]=c[p>>2];if((c[c[m>>2]>>2]|0)<0){c[c[m>>2]>>2]=0;c[(c[m>>2]|0)+4>>2]=-1;b[(c[m>>2]|0)+12>>1]=0;a[(c[m>>2]|0)+14>>0]=0}c[k+0>>2]=c[f+0>>2];c[k+4>>2]=c[f+4>>2];c[(c[m>>2]|0)+8>>2]=c[o>>2];while(1){c[j>>2]=on(c[m>>2]|0,c[n>>2]&255)|0;do{if((c[j>>2]|0)>=642){f=c[m>>2]|0;if((c[j>>2]|0)<969){qn(f,(c[j>>2]|0)-642|0);break}else{p=c[n>>2]|0;c[l+0>>2]=c[k+0>>2];c[l+4>>2]=c[k+4>>2];c[l+8>>2]=c[k+8>>2];rn(f,p,l);mn(c[m>>2]|0,c[n>>2]&255,k);c[n>>2]=254;break}}else{pn(c[m>>2]|0,c[j>>2]|0,c[n>>2]|0,k);p=(c[m>>2]|0)+4|0;c[p>>2]=(c[p>>2]|0)+ -1;c[n>>2]=254}}while(0);if((c[n>>2]|0)==254){j=11;break}if((c[c[m>>2]>>2]|0)<0){j=11;break}}if((j|0)==11){i=h;return}}function $m(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d+4|0;f=d;c[g>>2]=a;c[e>>2]=b;c[f>>2]=c[g>>2];if((c[f>>2]|0)==0){i=d;return}while(1){if((c[c[f>>2]>>2]|0)<0){break}ln(c[f>>2]|0)|0}rb[c[e>>2]&31](c[f>>2]|0);i=d;return}function an(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+48|0;g=f+32|0;j=f+28|0;l=f+24|0;k=f+8|0;h=f;c[g>>2]=a;c[j>>2]=b;c[l>>2]=d;c[k>>2]=e;c[h>>2]=kn(c[j>>2]|0,c[l>>2]|0,k)|0;Wb(c[j>>2]|0,c[c[g>>2]>>2]|0);c[c[g>>2]>>2]=c[h>>2];i=f;return}function bn(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}c[e>>2]=c[c[d>>2]>>2];Vb(c[e>>2]|0,c[d>>2]|0);a=c[(c[d>>2]|0)+52>>2]|0;if((c[(c[d>>2]|0)+48>>2]|0)!=0){c[(c[(c[d>>2]|0)+48>>2]|0)+52>>2]=a}else{c[(c[e>>2]|0)+4>>2]=a}if((c[(c[d>>2]|0)+52>>2]|0)!=0){c[(c[(c[d>>2]|0)+52>>2]|0)+48>>2]=c[(c[d>>2]|0)+48>>2]}c[(c[d>>2]|0)+40>>2]=-1241070648;c[c[d>>2]>>2]=0;Wb(c[e>>2]|0,c[d>>2]|0);i=b;return}function cn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[c[f>>2]>>2]|0)){break}c[h>>2]=(c[f>>2]|0)+8+(c[g>>2]<<4);dn(c[e>>2]|0,c[(c[h>>2]|0)+4>>2]|0);en(c[e>>2]|0,c[(c[h>>2]|0)+8>>2]|0);Wb(c[e>>2]|0,c[c[h>>2]>>2]|0);c[g>>2]=(c[g>>2]|0)+1}Wb(c[e>>2]|0,c[f>>2]|0);i=d;return}function dn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+12|0;e=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[e>>2]=b;if((c[e>>2]|0)==0){i=d;return}c[h>>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=0;while(1){b=c[f>>2]|0;if((c[g>>2]|0)>=(c[c[e>>2]>>2]|0)){break}hn(b,c[c[h>>2]>>2]|0);Wb(c[f>>2]|0,c[(c[h>>2]|0)+4>>2]|0);Wb(c[f>>2]|0,c[(c[h>>2]|0)+8>>2]|0);c[g>>2]=(c[g>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+20}Wb(b,c[(c[e>>2]|0)+4>>2]|0);Wb(c[f>>2]|0,c[e>>2]|0);i=d;return}function en(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}fn(c[e>>2]|0,c[f>>2]|0);Wb(c[e>>2]|0,c[f>>2]|0);i=d;return}function fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;dn(c[f>>2]|0,c[c[e>>2]>>2]|0);gn(c[f>>2]|0,c[(c[e>>2]|0)+32>>2]|0);hn(c[f>>2]|0,c[(c[e>>2]|0)+36>>2]|0);dn(c[f>>2]|0,c[(c[e>>2]|0)+40>>2]|0);hn(c[f>>2]|0,c[(c[e>>2]|0)+44>>2]|0);dn(c[f>>2]|0,c[(c[e>>2]|0)+48>>2]|0);en(c[f>>2]|0,c[(c[e>>2]|0)+52>>2]|0);hn(c[f>>2]|0,c[(c[e>>2]|0)+60>>2]|0);hn(c[f>>2]|0,c[(c[e>>2]|0)+64>>2]|0);cn(c[f>>2]|0,c[(c[e>>2]|0)+68>>2]|0);i=d;return}function gn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+12|0;e=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[e>>2]=b;if((c[e>>2]|0)==0){i=d;return}c[h>>2]=(c[e>>2]|0)+8;c[g>>2]=0;while(1){b=c[f>>2]|0;if((c[g>>2]|0)>=(c[c[e>>2]>>2]|0)){break}Wb(b,c[(c[h>>2]|0)+4>>2]|0);Wb(c[f>>2]|0,c[(c[h>>2]|0)+8>>2]|0);Wb(c[f>>2]|0,c[(c[h>>2]|0)+12>>2]|0);Wb(c[f>>2]|0,c[(c[h>>2]|0)+64>>2]|0);Ub(c[f>>2]|0,c[(c[h>>2]|0)+16>>2]|0);en(c[f>>2]|0,c[(c[h>>2]|0)+20>>2]|0);hn(c[f>>2]|0,c[(c[h>>2]|0)+44>>2]|0);jn(c[f>>2]|0,c[(c[h>>2]|0)+48>>2]|0);c[g>>2]=(c[g>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+72}Wb(b,c[e>>2]|0);i=d;return}function hn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}do{if((c[(c[f>>2]|0)+4>>2]&16384|0)==0){hn(c[e>>2]|0,c[(c[f>>2]|0)+12>>2]|0);hn(c[e>>2]|0,c[(c[f>>2]|0)+16>>2]|0);if((c[(c[f>>2]|0)+4>>2]&65536|0)!=0){Wb(c[e>>2]|0,c[(c[f>>2]|0)+8>>2]|0)}a=c[e>>2]|0;b=(c[f>>2]|0)+20|0;if((c[(c[f>>2]|0)+4>>2]&2048|0)!=0){en(a,c[b>>2]|0);break}else{dn(a,c[b>>2]|0);break}}}while(0);if((c[(c[f>>2]|0)+4>>2]&32768|0)!=0){i=d;return}Wb(c[e>>2]|0,c[f>>2]|0);i=d;return}function jn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;e=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;if((c[e>>2]|0)==0){i=d;return}c[g>>2]=0;while(1){b=c[f>>2]|0;if((c[g>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){break}Wb(b,c[(c[c[e>>2]>>2]|0)+(c[g>>2]<<3)>>2]|0);c[g>>2]=(c[g>>2]|0)+1}Wb(b,c[c[e>>2]>>2]|0);Wb(c[f>>2]|0,c[e>>2]|0);i=d;return}function kn(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+128|0;j=g+40|0;m=g+36|0;l=g+32|0;h=g+28|0;k=g;c[j>>2]=b;c[m>>2]=e;c[l>>2]=f;lc(k,g+44|0,70,c[(c[j>>2]|0)+88>>2]|0);c[k>>2]=c[j>>2];mc(k,1,c[m>>2]|0,c[l>>2]|0);c[h>>2]=nc(k)|0;if((d[k+25>>0]|0|0)!=1){m=c[h>>2]|0;i=g;return m|0}a[(c[j>>2]|0)+64>>0]=1;m=c[h>>2]|0;i=g;return m|0}function ln(b){b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+8|0;h=e+4|0;g=e+12|0;j=e;c[h>>2]=b;c[j>>2]=(c[h>>2]|0)+12+(c[c[h>>2]>>2]<<4);if((c[c[h>>2]>>2]|0)<0){c[f>>2]=0;j=c[f>>2]|0;i=e;return j|0}else{a[g>>0]=a[(c[j>>2]|0)+2>>0]|0;mn(c[h>>2]|0,a[g>>0]|0,(c[j>>2]|0)+4|0);j=c[h>>2]|0;c[j>>2]=(c[j>>2]|0)+ -1;c[f>>2]=d[g>>0]|0;j=c[f>>2]|0;i=e;return j|0}return 0}function mn(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;l=g+8|0;k=g+12|0;h=g+4|0;j=g;c[l>>2]=b;a[k>>0]=e;c[h>>2]=f;c[j>>2]=c[(c[l>>2]|0)+8>>2];do{switch(d[k>>0]|0|0){case 239:case 234:{nn(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 175:case 174:{hn(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 228:case 221:case 220:case 210:case 209:case 208:case 205:case 203:case 200:case 188:case 179:{dn(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 236:{jn(c[c[j>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0);i=g;return};case 252:case 197:{cn(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 213:case 212:case 201:case 194:{gn(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 207:case 196:case 195:case 163:{en(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 223:case 219:case 217:{jn(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 243:case 238:case 229:case 227:case 216:case 204:case 202:{hn(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};default:{i=g;return}}}while(0)}function nn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d+4|0;f=d;c[g>>2]=a;c[e>>2]=b;while(1){if((c[e>>2]|0)==0){break}c[f>>2]=c[e>>2];c[e>>2]=c[(c[e>>2]|0)+32>>2];hn(c[g>>2]|0,c[(c[f>>2]|0)+20>>2]|0);dn(c[g>>2]|0,c[(c[f>>2]|0)+24>>2]|0);en(c[g>>2]|0,c[(c[f>>2]|0)+8>>2]|0);jn(c[g>>2]|0,c[(c[f>>2]|0)+28>>2]|0);Wb(c[g>>2]|0,c[f>>2]|0)}i=d;return}function on(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=i;i=i+32|0;j=k+16|0;l=k+12|0;n=k+21|0;h=k+8|0;p=k+4|0;m=k+20|0;o=k;c[l>>2]=f;a[n>>0]=g;c[p>>2]=e[(c[l>>2]|0)+12+(c[c[l>>2]>>2]<<4)>>1]|0;if((c[p>>2]|0)<=429?(f=b[27064+(c[p>>2]<<1)>>1]|0,c[h>>2]=f,!((f|0)==-86)):0){c[h>>2]=(c[h>>2]|0)+(d[n>>0]|0);if(!((c[h>>2]|0)<0|(c[h>>2]|0)>=1497)?(d[29216+(c[h>>2]|0)>>0]|0)==(d[n>>0]|0):0){c[j>>2]=e[11624+(c[h>>2]<<1)>>1]|0;f=c[j>>2]|0;i=k;return f|0}if((d[n>>0]|0)>0){if((d[n>>0]|0)>>>0<70?(f=a[30720+(d[n>>0]|0)>>0]|0,a[m>>0]=f,(f&255|0)!=0):0){c[j>>2]=on(c[l>>2]|0,a[m>>0]|0)|0;f=c[j>>2]|0;i=k;return f|0}c[o>>2]=(c[h>>2]|0)-(d[n>>0]|0)+70;if((c[o>>2]|0)>=0?(d[29216+(c[o>>2]|0)>>0]|0)==70:0){c[j>>2]=e[11624+(c[o>>2]<<1)>>1]|0;f=c[j>>2]|0;i=k;return f|0}}c[j>>2]=e[27928+(c[p>>2]<<1)>>1]|0;f=c[j>>2]|0;i=k;return f|0}c[j>>2]=e[27928+(c[p>>2]<<1)>>1]|0;f=c[j>>2]|0;i=k;return f|0}function pn(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;n=m+16|0;h=m+12|0;l=m+8|0;j=m+4|0;k=m;c[n>>2]=d;c[h>>2]=e;c[l>>2]=f;c[j>>2]=g;g=c[n>>2]|0;c[g>>2]=(c[g>>2]|0)+1;g=c[n>>2]|0;if((c[c[n>>2]>>2]|0)>=100){$x(g,c[j>>2]|0);i=m;return}else{c[k>>2]=(c[n>>2]|0)+12+(c[g>>2]<<4);b[c[k>>2]>>1]=c[h>>2];a[(c[k>>2]|0)+2>>0]=c[l>>2];d=(c[k>>2]|0)+4|0;e=c[j>>2]|0;c[d+0>>2]=c[e+0>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];i=m;return}}function qn(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0;n=i;i=i+224|0;r=n;p=n+220|0;o=n+216|0;m=n+212|0;l=n+208|0;h=n+196|0;j=n+192|0;k=n+188|0;q=n+184|0;v=n+172|0;J=n+160|0;D=n+140|0;E=n+136|0;I=n+132|0;H=n+128|0;G=n+124|0;F=n+120|0;W=n+116|0;K=n+112|0;L=n+104|0;u=n+100|0;w=n+96|0;y=n+92|0;z=n+88|0;x=n+84|0;B=n+80|0;C=n+76|0;A=n+72|0;N=n+68|0;M=n+64|0;P=n+60|0;R=n+56|0;Q=n+52|0;O=n+48|0;S=n+44|0;T=n+40|0;V=n+36|0;U=n+32|0;t=n+28|0;X=n+24|0;Y=n+20|0;Z=n+16|0;_=n+8|0;c[p>>2]=f;c[o>>2]=g;c[q>>2]=c[(c[p>>2]|0)+8>>2];c[j>>2]=(c[p>>2]|0)+12+(c[c[p>>2]>>2]<<4);c[h+0>>2]=c[27024>>2];c[h+4>>2]=c[27028>>2];c[h+8>>2]=c[27032>>2];a:do{switch(c[o>>2]|0){case 24:{xn(c[q>>2]|0,2,(c[j>>2]|0)+4|0);break};case 8:{tn(c[q>>2]|0);break};case 59:{En(J,c[q>>2]|0,97,(c[j>>2]|0)+4|0);Cn(c[q>>2]|0,J);break};case 33:{zn(c[q>>2]|0,0,0,0,c[(c[j>>2]|0)+4>>2]|0);en(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 19:{wn(c[q>>2]|0);break};case 18:case 17:{vn(c[q>>2]|0);break};case 57:case 55:{Cn(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 76:{c[h>>2]=7;break};case 75:{c[h>>2]=c[(c[j>>2]|0)+4>>2]<<8;c[h+4>>2]=65280;break};case 77:{c[h>>2]=8;break};case 78:{c[h>>2]=9;break};case 79:{c[h>>2]=6;break};case 47:{c[h>>2]=c[(c[j>>2]|0)+ -80+4>>2];c[h+4>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+ -80+4>>2]|0);break};case 46:{c[h>>2]=c[(c[j>>2]|0)+ -48+4>>2];c[h+4>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+ -48+4>>2]|0);break};case 44:{Bn(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 102:{a[h>>0]=c[(c[j>>2]|0)+4>>2];break};case 104:{c[h>>2]=4;break};case 105:{c[h>>2]=5;break};case 56:{Cn(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0);break};case 94:{Hn(c[q>>2]|0,0,0,0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,0,0,0,0)|0;break};case 6:{sn(c[q>>2]|0,1);break};case 99:{c[h>>2]=10;break};case 101:{a[h>>0]=10;break};case 96:{Jn(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,(c[j>>2]|0)+ -48+4|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);Kn(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 61:{Fn(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 7:{sn(c[q>>2]|0,2);break};case 13:{c[h>>2]=7;break};case 221:case 218:case 108:case 97:case 85:case 83:case 81:case 68:case 31:case 28:{c[h>>2]=0;break};case 222:case 219:case 107:case 84:case 69:case 30:case 29:{c[h>>2]=1;break};case 95:{In(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0);break};case 23:{xn(c[q>>2]|0,1,(c[j>>2]|0)+4|0);break};case 35:{if((c[(c[j>>2]|0)+8>>2]|0)==5?(Lb(c[(c[j>>2]|0)+4>>2]|0,9896,5)|0)==0:0){a[h>>0]=32;break a}a[h>>0]=0;f=c[q>>2]|0;g=c[(c[j>>2]|0)+4>>2]|0;c[r>>2]=c[(c[j>>2]|0)+8>>2];c[r+4>>2]=g;Ne(f,9904,r);break};case 38:{c[h>>2]=c[(c[j>>2]|0)+ -32+4>>2];c[h+4>>2]=(c[(c[q>>2]|0)+504>>2]|0)-(c[(c[j>>2]|0)+ -32+4>>2]|0)+(c[(c[q>>2]|0)+508>>2]|0);break};case 34:{a[h>>0]=0;break};case 106:{Mn(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,0,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 32:{zn(c[q>>2]|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+ -16+4|0,a[(c[j>>2]|0)+4>>0]|0,0);break};case 22:{xn(c[q>>2]|0,0,(c[j>>2]|0)+4|0);break};case 73:case 72:{c[h>>2]=0;c[h+4>>2]=0;break};case 74:{c[h>>2]=c[(c[j>>2]|0)+4>>2];c[h+4>>2]=255;break};case 116:{c[h>>2]=116;break};case 93:{Gn(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,0);break};case 49:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];c[h+4>>2]=(c[(c[j>>2]|0)+8>>2]|0)+((c[(c[j>>2]|0)+4>>2]|0)-(c[(c[j>>2]|0)+ -16+4>>2]|0));break};case 122:{b[h>>1]=1;break};case 124:case 123:{b[h>>1]=0;break};case 243:case 125:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];break};case 242:case 236:case 161:case 154:case 126:{c[h>>2]=0;break};case 118:{c[h>>2]=Qn(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,c[(c[j>>2]|0)+ -80+4>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,b[(c[j>>2]|0)+ -112+4>>1]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0;break};case 120:{c[h>>2]=Qn(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,0,0,0,0,0,128,0,0)|0;break};case 134:{c[h>>2]=c[(c[j>>2]|0)+4>>2];Vn(c[h>>2]|0);break};case 135:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];if((c[h>>2]|0)!=0?(c[c[h>>2]>>2]|0)>0:0){a[(c[h>>2]|0)+8+(((c[c[h>>2]>>2]|0)-1|0)*72|0)+36>>0]=c[(c[j>>2]|0)+4>>2]}break};case 136:{c[h>>2]=0;break};case 121:{c[u>>2]=Qn(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,0,0,0,0,0,128,0,0)|0;if((c[u>>2]|0)!=0){a[(c[u>>2]|0)+4>>0]=116;c[(c[u>>2]|0)+52>>2]=c[(c[j>>2]|0)+ -64+4>>2];c[h>>2]=c[u>>2];break a}else{c[h>>2]=c[(c[j>>2]|0)+ -64+4>>2];break a}};case 71:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2]&~c[(c[j>>2]|0)+8>>2]|c[(c[j>>2]|0)+4>>2];break};case 26:{yn(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0,c[(c[j>>2]|0)+ -64+4>>2]|0,0,0,c[(c[j>>2]|0)+ -32+4>>2]|0);break};case 5:{sn(c[q>>2]|0,0);break};case 117:case 115:case 16:case 15:case 14:{c[h>>2]=d[(c[j>>2]|0)+2>>0]|0;break};case 92:case 54:{f=(c[q>>2]|0)+320|0;g=(c[j>>2]|0)+4|0;c[f+0>>2]=c[g+0>>2];c[f+4>>2]=c[g+4>>2];break};case 87:{f=(c[j>>2]|0)+ -16+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];break};case 90:{c[(c[q>>2]|0)+324>>2]=0;break};case 66:{Kn(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 67:{Ln(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 70:{c[h>>2]=0;break};case 109:{Nn(c[q>>2]|0,(c[j>>2]|0)+ -112+4|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -32+4|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0);break};case 58:{c[v>>2]=Dn(c[q>>2]|0,157,c[(c[j>>2]|0)+4>>2]|0,0,0)|0;c[v+4>>2]=c[(c[j>>2]|0)+ -16+4>>2];c[v+8>>2]=c[(c[j>>2]|0)+12>>2];Cn(c[q>>2]|0,v);break};case 27:{a[(c[c[q>>2]>>2]|0)+242>>0]=0;f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];break};case 119:case 113:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 110:{Mn(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,1,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 63:{Hn(c[q>>2]|0,0,0,0,0,c[(c[j>>2]|0)+4>>2]|0,0,0,0,0)|0;break};case 64:{In(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 127:{c[h>>2]=Rn(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0;if((c[(c[j>>2]|0)+8>>2]|0)>>>0>0){Sn(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+4|0,1)}Tn(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -16+4|0);break};case 128:{c[w>>2]=Un(c[c[q>>2]>>2]|0,116,0)|0;c[h>>2]=Rn(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[w>>2]|0)|0;break};case 132:{c[h+4>>2]=0;break};case 129:{c[y>>2]=Dn(c[q>>2]|0,116,0,0,(c[j>>2]|0)+4|0)|0;c[z>>2]=Dn(c[q>>2]|0,27,0,0,(c[j>>2]|0)+ -32+4|0)|0;c[x>>2]=Dn(c[q>>2]|0,122,c[z>>2]|0,c[y>>2]|0,0)|0;c[h>>2]=Rn(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,c[x>>2]|0)|0;break};case 133:{c[h>>2]=ne(c[c[q>>2]>>2]|0,80)|0;break};case 137:{c[h>>2]=Pn(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,(c[j>>2]|0)+ -80+4|0,(c[j>>2]|0)+ -64+4|0,(c[j>>2]|0)+ -48+4|0,0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;Wn(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -32+4|0);break};case 138:{c[h>>2]=Pn(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,0,0,(c[j>>2]|0)+ -32+4|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 139:{if((((c[(c[j>>2]|0)+ -96+4>>2]|0)==0?(c[(c[j>>2]|0)+ -32+8>>2]|0)==0:0)?(c[(c[j>>2]|0)+ -16+4>>2]|0)==0:0)?(c[(c[j>>2]|0)+4>>2]|0)==0:0){c[h>>2]=c[(c[j>>2]|0)+ -64+4>>2];break a}if((c[c[(c[j>>2]|0)+ -64+4>>2]>>2]|0)!=1){Vn(c[(c[j>>2]|0)+ -64+4>>2]|0);c[A>>2]=Qn(c[q>>2]|0,0,c[(c[j>>2]|0)+ -64+4>>2]|0,0,0,0,0,512,0,0)|0;c[h>>2]=Pn(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,0,0,(c[j>>2]|0)+ -32+4|0,c[A>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break a}c[h>>2]=Pn(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,0,0,(c[j>>2]|0)+ -32+4|0,0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;if((c[h>>2]|0)!=0){c[B>>2]=(c[h>>2]|0)+8+(((c[c[h>>2]>>2]|0)-1|0)*72|0);c[C>>2]=(c[(c[j>>2]|0)+ -64+4>>2]|0)+8;c[(c[B>>2]|0)+8>>2]=c[(c[C>>2]|0)+8>>2];c[(c[B>>2]|0)+4>>2]=c[(c[C>>2]|0)+4>>2];c[(c[B>>2]|0)+20>>2]=c[(c[C>>2]|0)+20>>2];c[(c[C>>2]|0)+4>>2]=0;c[(c[C>>2]|0)+8>>2]=0;c[(c[C>>2]|0)+20>>2]=0}gn(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0);break};case 149:case 140:{c[h>>2]=0;c[h+4>>2]=0;break};case 144:{c[h>>2]=Yn(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0,0,0)|0;break};case 145:{c[h>>2]=Yn(c[q>>2]|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+ -16+4|0,0)|0;break};case 146:{c[h>>2]=Yn(c[q>>2]|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+ -16+4|0)|0;break};case 143:{c[h>>2]=1;break};case 142:{c[h>>2]=Xn(c[c[q>>2]>>2]|0,0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0)|0;break};case 180:case 152:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];break};case 179:case 153:{c[h>>2]=0;break};case 235:case 162:case 155:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 156:{c[h>>2]=Rn(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0;if((c[h>>2]|0)!=0){a[(c[(c[h>>2]|0)+4>>2]|0)+(((c[c[h>>2]>>2]|0)-1|0)*20|0)+12>>0]=c[(c[j>>2]|0)+4>>2]}break};case 233:case 231:case 171:case 164:case 147:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 234:case 232:case 170:case 163:case 148:{c[h>>2]=0;break};case 151:{c[h>>2]=0;c[h+4>>2]=1;break};case 168:{c[h+4>>2]=c[(c[j>>2]|0)+ -32+4>>2];c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 157:{c[h>>2]=Rn(c[q>>2]|0,0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0;if((c[h>>2]|0)!=0?(c[(c[h>>2]|0)+4>>2]|0)!=0:0){a[(c[(c[h>>2]|0)+4>>2]|0)+12>>0]=c[(c[j>>2]|0)+4>>2]}break};case 181:{c[h>>2]=co(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,(c[j>>2]|0)+4|0)|0;break};case 182:{c[h>>2]=co(c[c[q>>2]>>2]|0,0,(c[j>>2]|0)+4|0)|0;break};case 183:{f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];break};case 160:case 158:{c[h>>2]=0;break};case 159:{c[h>>2]=1;break};case 165:{c[h>>2]=0;c[h+4>>2]=0;break};case 166:{c[h>>2]=c[(c[j>>2]|0)+4>>2];c[h+4>>2]=0;break};case 167:{c[h>>2]=c[(c[j>>2]|0)+ -32+4>>2];c[h+4>>2]=c[(c[j>>2]|0)+4>>2];break};case 279:case 263:case 262:case 261:case 260:case 259:case 258:case 257:case 256:case 247:case 150:case 141:case 131:case 130:case 48:case 45:case 42:case 41:case 40:{f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];break};case 65:{Jn(c[q>>2]|0,0,(c[j>>2]|0)+ -32+4|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 111:{c[D+0>>2]=c[9936>>2];c[D+4>>2]=c[9940>>2];c[D+8>>2]=c[9944>>2];c[D+12>>2]=c[9948>>2];c[D+16>>2]=c[9952>>2];On(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,D)|0;en(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 112:{c[E>>2]=c[(c[j>>2]|0)+4>>2];if((c[E>>2]|0)!=0){c[G>>2]=0;c[(c[E>>2]|0)+68>>2]=c[(c[j>>2]|0)+ -16+4>>2];if((c[(c[E>>2]|0)+52>>2]|0)!=0){c[I>>2]=0;c[H>>2]=c[E>>2];while(1){if((c[H>>2]|0)==0){break}c[(c[H>>2]|0)+56>>2]=c[I>>2];f=(c[H>>2]|0)+6|0;b[f>>1]=e[f>>1]|4096;c[I>>2]=c[H>>2];c[H>>2]=c[(c[H>>2]|0)+52>>2];c[G>>2]=(c[G>>2]|0)+1}c[F>>2]=c[(c[c[q>>2]>>2]|0)+104>>2];if((c[F>>2]|0)!=0?(c[G>>2]|0)>(c[F>>2]|0):0){Ne(c[q>>2]|0,9960,r)}}}else{cn(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}c[h>>2]=c[E>>2];break};case 9:{un(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 39:{An(c[q>>2]|0,(c[j>>2]|0)+4|0);f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];c[(c[q>>2]|0)+324>>2]=0;break};case 114:{c[W>>2]=c[(c[j>>2]|0)+4>>2];if((c[W>>2]|0)!=0?(c[(c[W>>2]|0)+52>>2]|0)!=0:0){c[L+4>>2]=0;c[K>>2]=Pn(c[q>>2]|0,0,0,0,L,c[W>>2]|0,0,0)|0;c[W>>2]=Qn(c[q>>2]|0,0,c[K>>2]|0,0,0,0,0,0,0,0)|0}if((c[W>>2]|0)!=0){a[(c[W>>2]|0)+4>>0]=c[(c[j>>2]|0)+ -16+4>>2];c[(c[W>>2]|0)+52>>2]=c[(c[j>>2]|0)+ -32+4>>2];if((c[(c[j>>2]|0)+ -16+4>>2]|0)!=116){a[(c[q>>2]|0)+22>>0]=1}}else{en(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0)}c[h>>2]=c[W>>2];break};case 80:{c[h>>2]=0;break};case 103:case 100:case 98:case 82:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 86:{c[h+4>>2]=0;c[h>>2]=0;break};case 62:{Gn(c[q>>2]|0,0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0);break};case 169:{Zn(c[q>>2]|0,c[(c[j>>2]|0)+ -80+4>>2]|0,1);Wn(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,(c[j>>2]|0)+ -16+4|0);_n(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 172:{Zn(c[q>>2]|0,c[(c[j>>2]|0)+ -112+4>>2]|0,1);Wn(c[q>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,(c[j>>2]|0)+ -48+4|0);$n(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,1e4);ao(c[q>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,d[(c[j>>2]|0)+ -80+4>>0]|0);break};case 173:{c[h>>2]=Rn(c[q>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;Sn(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -32+4|0,1);break};case 174:{c[h>>2]=Rn(c[q>>2]|0,0,c[(c[j>>2]|0)+4>>2]|0)|0;Sn(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -32+4|0,1);break};case 175:{Zn(c[q>>2]|0,c[(c[j>>2]|0)+ -80+4>>2]|0,1);bo(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,d[(c[j>>2]|0)+ -64+4>>0]|0);break};case 176:{Zn(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,1);bo(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,0,c[(c[j>>2]|0)+ -32+4>>2]|0,d[(c[j>>2]|0)+ -80+4>>0]|0);break};case 177:{a[h>>0]=a[(c[j>>2]|0)+4>>0]|0;break};case 178:{a[h>>0]=5;break};case 184:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];eo(h,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0);break};case 191:case 190:case 185:{En(h,c[q>>2]|0,d[(c[j>>2]|0)+2>>0]|0,(c[j>>2]|0)+4|0);break};case 187:case 186:{En(h,c[q>>2]|0,27,(c[j>>2]|0)+4|0);break};case 188:{c[N>>2]=Dn(c[q>>2]|0,27,0,0,(c[j>>2]|0)+ -32+4|0)|0;c[M>>2]=Dn(c[q>>2]|0,27,0,0,(c[j>>2]|0)+4|0)|0;c[h>>2]=Dn(c[q>>2]|0,122,c[N>>2]|0,c[M>>2]|0,0)|0;eo(h,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0);break};case 189:{c[P>>2]=Dn(c[q>>2]|0,27,0,0,(c[j>>2]|0)+ -64+4|0)|0;c[R>>2]=Dn(c[q>>2]|0,27,0,0,(c[j>>2]|0)+ -32+4|0)|0;c[Q>>2]=Dn(c[q>>2]|0,27,0,0,(c[j>>2]|0)+4|0)|0;c[O>>2]=Dn(c[q>>2]|0,122,c[R>>2]|0,c[Q>>2]|0,0)|0;c[h>>2]=Dn(c[q>>2]|0,122,c[P>>2]|0,c[O>>2]|0,0)|0;eo(h,(c[j>>2]|0)+ -64+4|0,(c[j>>2]|0)+4|0);break};case 192:{do{if(((c[(c[j>>2]|0)+8>>2]|0)>>>0>=2?(a[c[(c[j>>2]|0)+4>>2]>>0]|0)==35:0)?(a[48+(d[(c[(c[j>>2]|0)+4>>2]|0)+1>>0]|0)>>0]&4|0)!=0:0){t=c[q>>2]|0;u=(c[j>>2]|0)+4|0;if((d[(c[q>>2]|0)+18>>0]|0)==0){c[r>>2]=u;Ne(t,9872,r);c[h>>2]=0;break}c[h>>2]=Dn(t,159,0,0,u)|0;if((c[h>>2]|0)!=0){rg((c[(c[j>>2]|0)+4>>2]|0)+1|0,(c[h>>2]|0)+28|0)|0}}else{s=170}}while(0);if((s|0)==170){En(h,c[q>>2]|0,135,(c[j>>2]|0)+4|0);fo(c[q>>2]|0,c[h>>2]|0)}eo(h,(c[j>>2]|0)+4|0,(c[j>>2]|0)+4|0);break};case 193:{c[h>>2]=go(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,(c[j>>2]|0)+4|0)|0;c[h+4>>2]=c[(c[j>>2]|0)+ -32+8>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 194:{c[h>>2]=Dn(c[q>>2]|0,38,c[(c[j>>2]|0)+ -48+4>>2]|0,0,(c[j>>2]|0)+ -16+4|0)|0;eo(h,(c[j>>2]|0)+ -80+4|0,(c[j>>2]|0)+4|0);break};case 195:{if((c[(c[j>>2]|0)+ -16+4>>2]|0)!=0?(c[c[(c[j>>2]|0)+ -16+4>>2]>>2]|0)>(c[(c[c[q>>2]>>2]|0)+112>>2]|0):0){f=c[q>>2]|0;c[r>>2]=(c[j>>2]|0)+ -64+4;Ne(f,10016,r)}c[h>>2]=ho(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,(c[j>>2]|0)+ -64+4|0)|0;eo(h,(c[j>>2]|0)+ -64+4|0,(c[j>>2]|0)+4|0);if((e[(c[j>>2]|0)+ -32+4>>1]|0)!=0?(c[h>>2]|0)!=0:0){f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|16}break};case 196:{c[h>>2]=ho(c[q>>2]|0,0,(c[j>>2]|0)+ -48+4|0)|0;eo(h,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+4|0);break};case 197:{c[h>>2]=ho(c[q>>2]|0,0,(c[j>>2]|0)+4|0)|0;eo(h,(c[j>>2]|0)+4|0,(c[j>>2]|0)+4|0);break};case 205:case 204:case 203:case 202:case 201:case 200:case 199:case 198:{io(h,c[q>>2]|0,d[(c[j>>2]|0)+ -16+2>>0]|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0);break};case 206:{f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=0;break};case 207:{f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=1;break};case 208:{c[S>>2]=Rn(c[q>>2]|0,0,c[(c[j>>2]|0)+4>>2]|0)|0;c[S>>2]=Rn(c[q>>2]|0,c[S>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0)|0;c[h>>2]=ho(c[q>>2]|0,c[S>>2]|0,(c[j>>2]|0)+ -16+4|0)|0;if((c[(c[j>>2]|0)+ -16+12>>2]|0)!=0){c[h>>2]=Dn(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}c[h+4>>2]=c[(c[j>>2]|0)+ -32+8>>2];c[h+8>>2]=c[(c[j>>2]|0)+12>>2];if((c[h>>2]|0)!=0){f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|128}break};case 209:{c[T>>2]=Rn(c[q>>2]|0,0,c[(c[j>>2]|0)+ -32+4>>2]|0)|0;c[T>>2]=Rn(c[q>>2]|0,c[T>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0)|0;c[T>>2]=Rn(c[q>>2]|0,c[T>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;c[h>>2]=ho(c[q>>2]|0,c[T>>2]|0,(c[j>>2]|0)+ -48+4|0)|0;if((c[(c[j>>2]|0)+ -48+12>>2]|0)!=0){c[h>>2]=Dn(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}c[h+4>>2]=c[(c[j>>2]|0)+ -64+8>>2];c[h+8>>2]=c[(c[j>>2]|0)+12>>2];if((c[h>>2]|0)!=0){f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|128}break};case 223:{do{if((c[(c[j>>2]|0)+ -16+4>>2]|0)!=0){if((c[c[(c[j>>2]|0)+ -16+4>>2]>>2]|0)==1){c[U>>2]=c[c[(c[(c[j>>2]|0)+ -16+4>>2]|0)+4>>2]>>2];c[c[(c[(c[j>>2]|0)+ -16+4>>2]|0)+4>>2]>>2]=0;dn(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);if((c[U>>2]|0)!=0){f=(c[U>>2]|0)+4|0;c[f>>2]=c[f>>2]&-257;f=(c[U>>2]|0)+4|0;c[f>>2]=c[f>>2]|512}c[h>>2]=Dn(c[q>>2]|0,(c[(c[j>>2]|0)+ -48+4>>2]|0)!=0?78:79,c[(c[j>>2]|0)+ -64+4>>2]|0,c[U>>2]|0,0)|0;break}c[h>>2]=Dn(c[q>>2]|0,75,c[(c[j>>2]|0)+ -64+4>>2]|0,0,0)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+20>>2]=c[(c[j>>2]|0)+ -16+4>>2];mo(c[q>>2]|0,c[h>>2]|0)}else{dn(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}if((c[(c[j>>2]|0)+ -48+4>>2]|0)!=0){c[h>>2]=Dn(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}}else{c[h>>2]=Dn(c[q>>2]|0,132,0,0,10056+(c[(c[j>>2]|0)+ -48+4>>2]<<3)|0)|0;hn(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0)}}while(0);c[h+4>>2]=c[(c[j>>2]|0)+ -64+8>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 210:{jo(h,c[q>>2]|0,d[(c[j>>2]|0)+2>>0]|0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0);break};case 211:{jo(h,c[q>>2]|0,77,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0);break};case 212:{io(h,c[q>>2]|0,73,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0);ko(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[h>>2]|0,76);break};case 213:{io(h,c[q>>2]|0,148,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+4|0);ko(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[h>>2]|0,77);break};case 215:case 214:{lo(h,c[q>>2]|0,d[(c[j>>2]|0)+ -16+2>>0]|0,(c[j>>2]|0)+4|0,(c[j>>2]|0)+ -16+4|0);break};case 216:{lo(h,c[q>>2]|0,157,(c[j>>2]|0)+4|0,(c[j>>2]|0)+ -16+4|0);break};case 217:{lo(h,c[q>>2]|0,158,(c[j>>2]|0)+4|0,(c[j>>2]|0)+ -16+4|0);break};case 220:{c[V>>2]=Rn(c[q>>2]|0,0,c[(c[j>>2]|0)+ -32+4>>2]|0)|0;c[V>>2]=Rn(c[q>>2]|0,c[V>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;c[h>>2]=Dn(c[q>>2]|0,74,c[(c[j>>2]|0)+ -64+4>>2]|0,0,0)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+20>>2]=c[V>>2]}else{dn(c[c[q>>2]>>2]|0,c[V>>2]|0)}if((c[(c[j>>2]|0)+ -48+4>>2]|0)!=0){c[h>>2]=Dn(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}c[h+4>>2]=c[(c[j>>2]|0)+ -64+8>>2];c[h+8>>2]=c[(c[j>>2]|0)+12>>2];break};case 224:{c[h>>2]=Dn(c[q>>2]|0,119,0,0,0)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+20>>2]=c[(c[j>>2]|0)+ -16+4>>2];f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|2048;mo(c[q>>2]|0,c[h>>2]|0)}else{en(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}c[h+4>>2]=c[(c[j>>2]|0)+ -32+4>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 225:{c[h>>2]=Dn(c[q>>2]|0,75,c[(c[j>>2]|0)+ -64+4>>2]|0,0,0)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+20>>2]=c[(c[j>>2]|0)+ -16+4>>2];f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|2048;mo(c[q>>2]|0,c[h>>2]|0)}else{en(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}if((c[(c[j>>2]|0)+ -48+4>>2]|0)!=0){c[h>>2]=Dn(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}c[h+4>>2]=c[(c[j>>2]|0)+ -64+8>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 226:{c[t>>2]=Xn(c[c[q>>2]>>2]|0,0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0)|0;c[h>>2]=Dn(c[q>>2]|0,75,c[(c[j>>2]|0)+ -48+4>>2]|0,0,0)|0;r=c[q>>2]|0;if((c[h>>2]|0)!=0){f=Qn(r,0,c[t>>2]|0,0,0,0,0,0,0,0)|0;c[(c[h>>2]|0)+20>>2]=f;f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|2048;mo(c[q>>2]|0,c[h>>2]|0)}else{gn(c[r>>2]|0,c[t>>2]|0)}if((c[(c[j>>2]|0)+ -32+4>>2]|0)!=0){c[h>>2]=Dn(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}c[h+4>>2]=c[(c[j>>2]|0)+ -48+8>>2];q=c[j>>2]|0;if((c[(c[j>>2]|0)+4>>2]|0)!=0){q=(c[(c[j>>2]|0)+4>>2]|0)+(c[q+8>>2]|0)|0}else{q=(c[(c[j>>2]|0)+ -16+4>>2]|0)+(c[q+ -16+8>>2]|0)|0}c[h+8>>2]=q;break};case 227:{f=Dn(c[q>>2]|0,20,0,0,0)|0;c[h>>2]=f;c[X>>2]=f;if((c[X>>2]|0)!=0){c[(c[X>>2]|0)+20>>2]=c[(c[j>>2]|0)+ -16+4>>2];f=(c[X>>2]|0)+4|0;c[f>>2]=c[f>>2]|2048;mo(c[q>>2]|0,c[X>>2]|0)}else{en(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}c[h+4>>2]=c[(c[j>>2]|0)+ -48+4>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 228:{c[h>>2]=Dn(c[q>>2]|0,136,c[(c[j>>2]|0)+ -48+4>>2]|0,0,0)|0;if((c[h>>2]|0)!=0){if((c[(c[j>>2]|0)+ -16+4>>2]|0)!=0){r=Rn(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0}else{r=c[(c[j>>2]|0)+ -32+4>>2]|0}c[(c[h>>2]|0)+20>>2]=r;mo(c[q>>2]|0,c[h>>2]|0)}else{dn(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0);hn(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}c[h+4>>2]=c[(c[j>>2]|0)+ -64+4>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 238:{c[h>>2]=Rn(c[q>>2]|0,0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 229:{c[h>>2]=Rn(c[q>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0)|0;c[h>>2]=Rn(c[q>>2]|0,c[h>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 230:{c[h>>2]=Rn(c[q>>2]|0,0,c[(c[j>>2]|0)+ -32+4>>2]|0)|0;c[h>>2]=Rn(c[q>>2]|0,c[h>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 237:{c[h>>2]=Rn(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 248:{no(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 250:case 249:{oo(c[q>>2]|0);break};case 251:{po(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0,0,0);break};case 252:{po(c[q>>2]|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0,0);break};case 291:case 240:{c[h>>2]=2;break};case 241:{c[h>>2]=0;break};case 239:{Hn(c[q>>2]|0,(c[j>>2]|0)+ -112+4|0,(c[j>>2]|0)+ -96+4|0,Xn(c[c[q>>2]>>2]|0,0,(c[j>>2]|0)+ -64+4|0,0)|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+ -160+4>>2]|0,(c[j>>2]|0)+ -176+4|0,c[(c[j>>2]|0)+4>>2]|0,0,c[(c[j>>2]|0)+ -128+4>>2]|0)|0;break};case 244:{c[Y>>2]=go(c[q>>2]|0,0,(c[j>>2]|0)+ -16+4|0)|0;c[h>>2]=Rn(c[q>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[Y>>2]|0)|0;Sn(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -32+4|0,1);$n(c[q>>2]|0,c[h>>2]|0,10072);if((c[h>>2]|0)!=0){a[(c[(c[h>>2]|0)+4>>2]|0)+(((c[c[h>>2]>>2]|0)-1|0)*20|0)+12>>0]=c[(c[j>>2]|0)+4>>2]}break};case 245:{c[Z>>2]=go(c[q>>2]|0,0,(c[j>>2]|0)+ -16+4|0)|0;c[h>>2]=Rn(c[q>>2]|0,0,c[Z>>2]|0)|0;Sn(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -32+4|0,1);$n(c[q>>2]|0,c[h>>2]|0,10072);if((c[h>>2]|0)!=0){a[(c[(c[h>>2]|0)+4>>2]|0)+(((c[c[h>>2]>>2]|0)-1|0)*20|0)+12>>0]=c[(c[j>>2]|0)+4>>2]}break};case 246:{c[h>>2]=0;c[h+4>>2]=0;break};case 297:case 276:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 277:{c[(c[(c[(c[j>>2]|0)+ -32+4>>2]|0)+36>>2]|0)+32>>2]=c[(c[j>>2]|0)+ -16+4>>2];c[(c[(c[j>>2]|0)+ -32+4>>2]|0)+36>>2]=c[(c[j>>2]|0)+ -16+4>>2];c[h>>2]=c[(c[j>>2]|0)+ -32+4>>2];break};case 253:{po(c[q>>2]|0,(c[j>>2]|0)+ -64+4|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -16+4|0,0);break};case 254:{po(c[q>>2]|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0,1);break};case 255:{po(c[q>>2]|0,(c[j>>2]|0)+ -64+4|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -16+4|0,1);break};case 264:{c[_>>2]=c[(c[j>>2]|0)+ -48+4>>2];c[_+4>>2]=(c[(c[j>>2]|0)+4>>2]|0)-(c[(c[j>>2]|0)+ -48+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);qo(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,_);break};case 265:{ro(c[q>>2]|0,(c[j>>2]|0)+ -112+4|0,(c[j>>2]|0)+ -96+4|0,c[(c[j>>2]|0)+ -80+4>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -64+8>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -160+4>>2]|0,c[(c[j>>2]|0)+ -128+4>>2]|0);q=c[j>>2]|0;if((c[(c[j>>2]|0)+ -96+8>>2]|0)==0){f=q+ -112+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];break a}else{f=q+ -96+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];break a}};case 269:case 266:{c[h>>2]=35;break};case 267:{c[h>>2]=31;break};case 268:{c[h>>2]=49;break};case 271:case 270:{c[h>>2]=d[(c[j>>2]|0)+2>>0]|0;c[h+4>>2]=0;break};case 296:case 275:{c[h>>2]=0;break};case 272:{c[h>>2]=110;c[h+4>>2]=c[(c[j>>2]|0)+4>>2];break};case 283:{Ne(c[q>>2]|0,10264,r);break};case 284:{c[h>>2]=so(c[c[q>>2]>>2]|0,(c[j>>2]|0)+ -64+4|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,a[(c[j>>2]|0)+ -80+4>>0]|0)|0;break};case 278:{c[(c[(c[j>>2]|0)+ -16+4>>2]|0)+36>>2]=c[(c[j>>2]|0)+ -16+4>>2];c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];break};case 282:{Ne(c[q>>2]|0,10176,r);break};case 280:{f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];Ne(c[q>>2]|0,10080,r);break};case 287:{c[h>>2]=vo(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 288:{c[h>>2]=Dn(c[q>>2]|0,57,0,0,0)|0;if((c[h>>2]|0)!=0){a[(c[h>>2]|0)+1>>0]=4}c[h+4>>2]=c[(c[j>>2]|0)+ -48+4>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 285:{c[h>>2]=to(c[c[q>>2]>>2]|0,(c[j>>2]|0)+ -32+4|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,a[(c[j>>2]|0)+ -64+4>>0]|0)|0;break};case 286:{c[h>>2]=uo(c[c[q>>2]>>2]|0,(c[j>>2]|0)+ -32+4|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 293:{wo(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 294:{xo(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 295:{yo(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 300:{zo(c[q>>2]|0,0,0);break};case 289:{c[h>>2]=Dn(c[q>>2]|0,57,0,0,(c[j>>2]|0)+ -16+4|0)|0;if((c[h>>2]|0)!=0){a[(c[h>>2]|0)+1>>0]=c[(c[j>>2]|0)+ -48+4>>2]}c[h+4>>2]=c[(c[j>>2]|0)+ -80+4>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 290:{c[h>>2]=1;break};case 292:{c[h>>2]=3;break};case 303:{Ao(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0);break};case 304:{Bo(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,(c[j>>2]|0)+4|0);break};case 305:{Co(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 306:{a[(c[c[q>>2]>>2]|0)+242>>0]=0;Do(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 301:{zo(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0);break};case 302:{Ao(c[q>>2]|0,0,0);break};case 310:{Eo(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 311:{Fo(c[q>>2]|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0,c[(c[j>>2]|0)+ -64+4>>2]|0);break};case 314:{Go(c[q>>2]|0);break};case 318:case 317:case 316:{Ho(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 322:{c[h>>2]=0;break};case 309:{Eo(c[q>>2]|0,0);break};case 324:case 323:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 325:{c[h>>2]=Io(c[q>>2]|0,0,(c[j>>2]|0)+ -80+4|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0;break};case 326:{c[h>>2]=Io(c[q>>2]|0,c[(c[j>>2]|0)+ -112+4>>2]|0,(c[j>>2]|0)+ -80+4|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0;break};default:{}}}while(0);c[m>>2]=d[10352+(c[o>>2]<<1)>>0]|0;c[k>>2]=d[10353+(c[o>>2]<<1)>>0]|0;f=c[p>>2]|0;c[f>>2]=(c[f>>2]|0)-(c[k>>2]|0);c[l>>2]=Jo(e[(c[j>>2]|0)+(0-(c[k>>2]|0)<<4)>>1]|0,c[m>>2]&255)|0;if((c[l>>2]|0)>=642){Ko(c[p>>2]|0);i=n;return}o=c[p>>2]|0;if((c[k>>2]|0)!=0){c[o>>2]=(c[o>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+(0-((c[k>>2]|0)-1)<<4);b[c[j>>2]>>1]=c[l>>2];a[(c[j>>2]|0)+2>>0]=c[m>>2];f=(c[j>>2]|0)+4|0;c[f+0>>2]=c[h+0>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];i=n;return}else{pn(o,c[l>>2]|0,c[m>>2]|0,h);i=n;return}}function rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e;f=e+12|0;g=e+4|0;c[f>>2]=a;c[e+8>>2]=b;c[g>>2]=c[(c[f>>2]|0)+8>>2];a=c[g>>2]|0;c[h>>2]=d;Ne(a,9872,h);c[(c[f>>2]|0)+8>>2]=c[g>>2];i=e;return}function sn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[(c[f>>2]|0)+450>>0]=c[g>>2];c[(c[f>>2]|0)+440>>2]=0;i=e;return}function tn(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;g=e+28|0;h=e+24|0;f=e+20|0;n=e+16|0;m=e+12|0;k=e+8|0;l=e+4|0;j=e;c[g>>2]=b;c[h>>2]=c[c[g>>2]>>2];if((a[(c[h>>2]|0)+64>>0]|0)!=0){i=e;return}if((a[(c[g>>2]|0)+18>>0]|0)!=0){i=e;return}if((c[(c[g>>2]|0)+64>>2]|0)!=0){i=e;return}c[f>>2]=Ro(c[g>>2]|0)|0;do{if((c[f>>2]|0)!=0){do{}while((ks(c[f>>2]|0,58)|0)!=0);$o(c[f>>2]|0,24)|0;if((d[(c[h>>2]|0)+64>>0]|0)==0){if((c[(c[g>>2]|0)+332>>2]|0)==0?(c[(c[g>>2]|0)+316>>2]|0)==0:0){break}mp(c[f>>2]|0,0);c[m>>2]=0;c[n>>2]=1;while(1){if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}if((c[n>>2]&c[(c[g>>2]|0)+332>>2]|0)!=0?(Ue(c[f>>2]|0,c[m>>2]|0),Re(c[f>>2]|0,4,c[m>>2]|0,(c[n>>2]&c[(c[g>>2]|0)+328>>2]|0)!=0&1,c[(c[g>>2]|0)+336+(c[m>>2]<<2)>>2]|0,c[(c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+12>>2]|0)+4>>2]|0)|0,(d[(c[h>>2]|0)+137>>0]|0)==0):0){Se(c[f>>2]|0,1)}c[n>>2]=c[n>>2]<<1;c[m>>2]=(c[m>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[g>>2]|0)+452>>2]|0)){break}c[l>>2]=zp(c[h>>2]|0,c[(c[(c[g>>2]|0)+520>>2]|0)+(c[k>>2]<<2)>>2]|0)|0;Vo(c[f>>2]|0,141,0,0,0,c[l>>2]|0,-10)|0;c[k>>2]=(c[k>>2]|0)+1}c[(c[g>>2]|0)+452>>2]=0;Zx(c[g>>2]|0);_x(c[g>>2]|0);a:do{if((c[(c[g>>2]|0)+316>>2]|0)!=0){c[j>>2]=c[(c[g>>2]|0)+316>>2];a[(c[g>>2]|0)+23>>0]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[c[j>>2]>>2]|0)){break a}ys(c[g>>2]|0,c[(c[(c[j>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)>>2]|0,c[(c[(c[j>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)+16>>2]|0);c[k>>2]=(c[k>>2]|0)+1}}}while(0);To(c[f>>2]|0,16,0,1)|0}}}while(0);if(((c[f>>2]|0)!=0?(c[(c[g>>2]|0)+64>>2]|0)==0:0)?(a[(c[h>>2]|0)+64>>0]|0)==0:0){if((c[(c[g>>2]|0)+404>>2]|0)!=0?(c[(c[g>>2]|0)+68>>2]|0)==0:0){c[(c[g>>2]|0)+68>>2]=1}_e(c[f>>2]|0,c[g>>2]|0);c[(c[g>>2]|0)+12>>2]=101;a[(c[g>>2]|0)+16>>0]=0}else{c[(c[g>>2]|0)+12>>2]=1}c[(c[g>>2]|0)+68>>2]=0;c[(c[g>>2]|0)+72>>2]=0;c[(c[g>>2]|0)+76>>2]=0;c[(c[g>>2]|0)+440>>2]=0;c[(c[g>>2]|0)+332>>2]=0;i=e;return}function un(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;j=d+16|0;h=d+12|0;f=d+8|0;g=d+4|0;e=d;c[j>>2]=a;c[h>>2]=b;c[f>>2]=c[c[j>>2]>>2];if((Oo(c[j>>2]|0,22,26984,0,0)|0)!=0){i=d;return}c[g>>2]=Ro(c[j>>2]|0)|0;if((c[g>>2]|0)==0){i=d;return}a:do{if((c[h>>2]|0)!=7){c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){break a}To(c[g>>2]|0,4,c[e>>2]|0,((c[h>>2]|0)==9&1)+1|0)|0;Ue(c[g>>2]|0,c[e>>2]|0);c[e>>2]=(c[e>>2]|0)+1}}}while(0);To(c[g>>2]|0,3,0,0)|0;i=d;return}function vn(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((Oo(c[e>>2]|0,22,27016,0,0)|0)!=0){i=b;return}c[d>>2]=Ro(c[e>>2]|0)|0;if((c[d>>2]|0)==0){i=b;return}To(c[d>>2]|0,3,1,0)|0;i=b;return}function wn(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((Oo(c[e>>2]|0,22,27e3,0,0)|0)!=0){i=b;return}c[d>>2]=Ro(c[e>>2]|0)|0;if((c[d>>2]|0)==0){i=b;return}To(c[d>>2]|0,3,1,1)|0;i=b;return}function xn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;j=e+16|0;g=e+12|0;k=e+8|0;h=e+4|0;f=e;c[j>>2]=a;c[g>>2]=b;c[k>>2]=d;c[h>>2]=Lo(c[c[j>>2]>>2]|0,c[k>>2]|0)|0;if((c[h>>2]|0)==0){i=e;return}c[f>>2]=Ro(c[j>>2]|0)|0;if((c[f>>2]|0)!=0?(Oo(c[j>>2]|0,32,c[26968+(c[g>>2]<<2)>>2]|0,c[h>>2]|0,0)|0)==0:0){Vo(c[f>>2]|0,2,c[g>>2]|0,0,0,c[h>>2]|0,-1)|0;i=e;return}Wb(c[c[j>>2]>>2]|0,c[h>>2]|0);i=e;return}function yn(e,f,g,h,j,k,l){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;s=i;i=i+96|0;m=s;w=s+84|0;I=s+80|0;H=s+76|0;G=s+72|0;F=s+68|0;z=s+64|0;r=s+60|0;u=s+56|0;o=s+52|0;n=s+48|0;t=s+44|0;p=s+40|0;q=s+36|0;x=s+32|0;y=s+28|0;v=s+24|0;D=s+20|0;E=s+16|0;A=s+12|0;B=s+8|0;C=s+4|0;c[w>>2]=e;c[I>>2]=f;c[H>>2]=g;c[G>>2]=h;c[F>>2]=j;c[z>>2]=k;c[r>>2]=l;c[o>>2]=0;c[n>>2]=c[c[w>>2]>>2];c[p>>2]=nr(c[w>>2]|0,c[I>>2]|0,c[H>>2]|0,q)|0;if((c[p>>2]|0)<0){i=s;return}if(((c[G>>2]|0)!=0?(c[(c[H>>2]|0)+4>>2]|0)>>>0>0:0)?(c[p>>2]|0)!=1:0){Ne(c[w>>2]|0,26856,m);i=s;return}if((c[G>>2]|0)!=0){c[p>>2]=1}I=(c[w>>2]|0)+496|0;e=c[q>>2]|0;c[I+0>>2]=c[e+0>>2];c[I+4>>2]=c[e+4>>2];c[o>>2]=Lo(c[n>>2]|0,c[q>>2]|0)|0;if((c[o>>2]|0)==0){i=s;return}a:do{if(0==(xp(c[w>>2]|0,c[o>>2]|0)|0)){if((d[(c[n>>2]|0)+136>>0]|0)==1){c[G>>2]=1}c[y>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[p>>2]<<4)>>2];if((Oo(c[w>>2]|0,18,(c[G>>2]|0)==1?14808:14832,0,c[y>>2]|0)|0)==0){l=(c[G>>2]|0)!=0;do{if((c[F>>2]|0)!=0){if(l){c[x>>2]=6;break}else{c[x>>2]=8;break}}else{if(l){c[x>>2]=4;break}else{c[x>>2]=2;break}}}while(0);if((c[z>>2]|0)==0?(Oo(c[w>>2]|0,c[x>>2]|0,c[o>>2]|0,0,c[y>>2]|0)|0)!=0:0){break}do{if((a[(c[w>>2]|0)+451>>0]|0)==0){c[v>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[p>>2]<<4)>>2];if(0!=(jr(c[w>>2]|0)|0)){break a}c[u>>2]=fp(c[n>>2]|0,c[o>>2]|0,c[v>>2]|0)|0;if((c[u>>2]|0)==0){if((wp(c[n>>2]|0,c[o>>2]|0,c[v>>2]|0)|0)==0){break}I=c[w>>2]|0;c[m>>2]=c[o>>2];Ne(I,26928,m);break a}t=c[w>>2]|0;if((c[r>>2]|0)!=0){dp(t,c[p>>2]|0);break a}else{c[m>>2]=c[q>>2];Ne(t,26904,m);break a}}}while(0);c[u>>2]=ne(c[n>>2]|0,76)|0;if((c[u>>2]|0)==0){a[(c[n>>2]|0)+64>>0]=1;c[(c[w>>2]|0)+12>>2]=7;I=(c[w>>2]|0)+64|0;c[I>>2]=(c[I>>2]|0)+1;break}c[c[u>>2]>>2]=c[o>>2];b[(c[u>>2]|0)+36>>1]=-1;c[(c[u>>2]|0)+68>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[p>>2]<<4)+12>>2];b[(c[u>>2]|0)+40>>1]=1;b[(c[u>>2]|0)+28>>1]=200;c[(c[w>>2]|0)+484>>2]=c[u>>2];if((a[(c[w>>2]|0)+18>>0]|0)==0?(WD(c[o>>2]|0,16056)|0)==0:0){c[(c[(c[u>>2]|0)+68>>2]|0)+72>>2]=c[u>>2]}if((a[(c[n>>2]|0)+137>>0]|0)!=0){i=s;return}I=Ro(c[w>>2]|0)|0;c[t>>2]=I;if((I|0)==0){i=s;return}cp(c[w>>2]|0,0,c[p>>2]|0);if((c[z>>2]|0)!=0){$o(c[t>>2]|0,141)|0}e=(c[w>>2]|0)+72|0;I=(c[e>>2]|0)+1|0;c[e>>2]=I;c[(c[w>>2]|0)+384>>2]=I;c[A>>2]=I;I=(c[w>>2]|0)+72|0;e=(c[I>>2]|0)+1|0;c[I>>2]=e;c[(c[w>>2]|0)+388>>2]=e;c[B>>2]=e;e=(c[w>>2]|0)+72|0;I=(c[e>>2]|0)+1|0;c[e>>2]=I;c[C>>2]=I;Wo(c[t>>2]|0,50,c[p>>2]|0,c[C>>2]|0,2)|0;Ue(c[t>>2]|0,c[p>>2]|0);c[D>>2]=rr(c[t>>2]|0,44,c[C>>2]|0)|0;c[E>>2]=(c[(c[n>>2]|0)+24>>2]&32768|0)!=0?1:4;To(c[t>>2]|0,25,c[E>>2]|0,c[C>>2]|0)|0;Wo(c[t>>2]|0,51,c[p>>2]|0,2,c[C>>2]|0)|0;To(c[t>>2]|0,25,d[(c[(c[(c[n>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[C>>2]|0)|0;Wo(c[t>>2]|0,51,c[p>>2]|0,5,c[C>>2]|0)|0;mp(c[t>>2]|0,c[D>>2]|0);if((c[F>>2]|0)==0?(c[z>>2]|0)==0:0){I=To(c[t>>2]|0,118,c[p>>2]|0,c[B>>2]|0)|0;c[(c[w>>2]|0)+416>>2]=I}else{To(c[t>>2]|0,25,0,c[B>>2]|0)|0}kt(c[w>>2]|0,c[p>>2]|0);To(c[t>>2]|0,69,0,c[A>>2]|0)|0;To(c[t>>2]|0,28,0,c[C>>2]|0)|0;Wo(c[t>>2]|0,70,0,c[C>>2]|0,c[A>>2]|0)|0;Se(c[t>>2]|0,8);$o(c[t>>2]|0,58)|0;i=s;return}}}while(0);Wb(c[n>>2]|0,c[o>>2]|0);i=s;return}function zn(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;y=i;i=i+144|0;m=y;u=y+128|0;C=y+124|0;x=y+120|0;D=y+132|0;H=y+116|0;q=y+112|0;n=y+108|0;p=y+104|0;G=y+100|0;k=y+96|0;o=y+92|0;s=y+88|0;v=y+84|0;t=y+80|0;E=y+60|0;F=y+56|0;w=y+52|0;r=y+48|0;A=y+44|0;z=y+40|0;B=y+36|0;l=y+32|0;c[u>>2]=e;c[C>>2]=f;c[x>>2]=g;a[D>>0]=h;c[H>>2]=j;c[n>>2]=c[c[u>>2]>>2];if((c[x>>2]|0)==0?(c[H>>2]|0)==0:0){i=y;return}if((d[(c[n>>2]|0)+64>>0]|0)!=0){i=y;return}c[q>>2]=c[(c[u>>2]|0)+484>>2];if((c[q>>2]|0)==0){i=y;return}if((a[(c[n>>2]|0)+137>>0]|0)!=0){c[(c[q>>2]|0)+32>>2]=c[(c[n>>2]|0)+132>>2]}do{if((a[D>>0]&32|0)!=0){if((a[(c[q>>2]|0)+44>>0]&8|0)!=0){Ne(c[u>>2]|0,26464,m);i=y;return}if((a[(c[q>>2]|0)+44>>0]&4|0)==0){e=c[u>>2]|0;c[m>>2]=c[c[q>>2]>>2];Ne(e,26520,m);break}else{e=(c[q>>2]|0)+44|0;a[e>>0]=d[e>>0]|32;Tx(c[u>>2]|0,c[q>>2]|0);break}}}while(0);c[p>>2]=Qe(c[n>>2]|0,c[(c[q>>2]|0)+68>>2]|0)|0;if((c[(c[q>>2]|0)+24>>2]|0)!=0){Nx(c[u>>2]|0,c[q>>2]|0,4,0,c[(c[q>>2]|0)+24>>2]|0)}Ux(c[q>>2]|0);c[G>>2]=c[(c[q>>2]|0)+8>>2];while(1){if((c[G>>2]|0)==0){break}Px(c[G>>2]|0);c[G>>2]=c[(c[G>>2]|0)+20>>2]}if((a[(c[n>>2]|0)+137>>0]|0)==0){c[o>>2]=Ro(c[u>>2]|0)|0;if((c[o>>2]|0)==0){i=y;return}rr(c[o>>2]|0,58,0)|0;if((c[(c[q>>2]|0)+12>>2]|0)==0){c[s>>2]=21256;c[v>>2]=26552}else{c[s>>2]=25360;c[v>>2]=26560}do{if((c[H>>2]|0)!=0?(Wo(c[o>>2]|0,53,1,c[(c[u>>2]|0)+388>>2]|0,c[p>>2]|0)|0,Se(c[o>>2]|0,2),c[(c[u>>2]|0)+68>>2]=2,Ks(E,14,1),On(c[u>>2]|0,c[H>>2]|0,E)|0,rr(c[o>>2]|0,58,1)|0,(c[(c[u>>2]|0)+64>>2]|0)==0):0){c[F>>2]=Gp(c[u>>2]|0,c[H>>2]|0)|0;if((c[F>>2]|0)==0){i=y;return}else{b[(c[q>>2]|0)+38>>1]=b[(c[F>>2]|0)+38>>1]|0;c[(c[q>>2]|0)+4>>2]=c[(c[F>>2]|0)+4>>2];b[(c[F>>2]|0)+38>>1]=0;c[(c[F>>2]|0)+4>>2]=0;Ub(c[n>>2]|0,c[F>>2]|0);break}}}while(0);if((c[H>>2]|0)!=0){c[t>>2]=Vx(c[n>>2]|0,c[q>>2]|0)|0}else{if((d[D>>0]|0)!=0){D=(c[u>>2]|0)+504|0}else{D=c[x>>2]|0}c[w>>2]=D;c[k>>2]=(c[c[w>>2]>>2]|0)-(c[(c[u>>2]|0)+496>>2]|0);if((a[c[c[w>>2]>>2]>>0]|0)!=59){c[k>>2]=(c[k>>2]|0)+(c[(c[w>>2]|0)+4>>2]|0)}e=c[n>>2]|0;g=c[k>>2]|0;f=c[(c[u>>2]|0)+496>>2]|0;c[m>>2]=c[v>>2];c[m+4>>2]=g;c[m+8>>2]=f;c[t>>2]=Oe(e,26568,m)|0}e=c[u>>2]|0;F=(c[p>>2]|0)==1?14808:14832;j=c[s>>2]|0;G=c[c[q>>2]>>2]|0;H=c[c[q>>2]>>2]|0;h=c[(c[u>>2]|0)+388>>2]|0;g=c[t>>2]|0;f=c[(c[u>>2]|0)+384>>2]|0;c[m>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[p>>2]<<4)>>2];c[m+4>>2]=F;c[m+8>>2]=j;c[m+12>>2]=G;c[m+16>>2]=H;c[m+20>>2]=h;c[m+24>>2]=g;c[m+28>>2]=f;Qo(e,26584,m);Wb(c[n>>2]|0,c[t>>2]|0);So(c[u>>2]|0,c[p>>2]|0);if((a[(c[q>>2]|0)+44>>0]&8|0)!=0?(c[r>>2]=(c[(c[n>>2]|0)+16>>2]|0)+(c[p>>2]<<4),(c[(c[(c[r>>2]|0)+12>>2]|0)+72>>2]|0)==0):0){e=c[u>>2]|0;c[m>>2]=c[c[r>>2]>>2];Qo(e,26672,m)}g=c[o>>2]|0;f=c[p>>2]|0;e=c[n>>2]|0;c[m>>2]=c[c[q>>2]>>2];Uo(g,f,Oe(e,26720,m)|0)}if((a[(c[n>>2]|0)+137>>0]|0)==0){i=y;return}c[z>>2]=c[(c[q>>2]|0)+68>>2];g=(c[z>>2]|0)+8|0;f=c[c[q>>2]>>2]|0;e=Mb(c[c[q>>2]>>2]|0)|0;c[A>>2]=$g(g,f,e,c[q>>2]|0)|0;if((c[A>>2]|0)!=0){a[(c[n>>2]|0)+64>>0]=1;i=y;return}c[(c[u>>2]|0)+484>>2]=0;e=(c[n>>2]|0)+24|0;c[e>>2]=c[e>>2]|2;if((c[(c[q>>2]|0)+12>>2]|0)!=0){i=y;return}c[B>>2]=c[(c[u>>2]|0)+496>>2];if((c[c[C>>2]>>2]|0)==0){c[C>>2]=c[x>>2]}c[l>>2]=(c[c[C>>2]>>2]|0)-(c[B>>2]|0);e=13+(Im(c[B>>2]|0,c[l>>2]|0)|0)|0;c[(c[q>>2]|0)+48>>2]=e;i=y;return}function An(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;l=n;j=n+32|0;r=n+28|0;k=n+24|0;q=n+20|0;p=n+16|0;o=n+12|0;m=n+8|0;g=n+4|0;c[j>>2]=e;c[r>>2]=f;c[m>>2]=c[c[j>>2]>>2];e=c[(c[j>>2]|0)+484>>2]|0;c[k>>2]=e;if((e|0)==0){i=n;return}if(((b[(c[k>>2]|0)+38>>1]|0)+1|0)>(c[(c[m>>2]|0)+96>>2]|0)){e=c[j>>2]|0;c[l>>2]=c[c[k>>2]>>2];Ne(e,26408,l);i=n;return}c[p>>2]=Lo(c[m>>2]|0,c[r>>2]|0)|0;if((c[p>>2]|0)==0){i=n;return}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(b[(c[k>>2]|0)+38>>1]|0)){break}if((d[696+(d[c[p>>2]>>0]|0)>>0]|0)==(d[696+(d[c[(c[(c[k>>2]|0)+4>>2]|0)+((c[q>>2]|0)*24|0)>>2]>>0]|0)>>0]|0)?(vc((c[p>>2]|0)+1|0,(c[(c[(c[k>>2]|0)+4>>2]|0)+((c[q>>2]|0)*24|0)>>2]|0)+1|0)|0)==0:0){h=9;break}c[q>>2]=(c[q>>2]|0)+1}if((h|0)==9){e=c[j>>2]|0;c[l>>2]=c[p>>2];Ne(e,26432,l);Wb(c[m>>2]|0,c[p>>2]|0);i=n;return}do{if((b[(c[k>>2]|0)+38>>1]&7|0)==0){c[g>>2]=Pm(c[m>>2]|0,c[(c[k>>2]|0)+4>>2]|0,((b[(c[k>>2]|0)+38>>1]|0)+8|0)*24|0)|0;if((c[g>>2]|0)!=0){c[(c[k>>2]|0)+4>>2]=c[g>>2];break}Wb(c[m>>2]|0,c[p>>2]|0);i=n;return}}while(0);c[o>>2]=(c[(c[k>>2]|0)+4>>2]|0)+((b[(c[k>>2]|0)+38>>1]|0)*24|0);e=c[o>>2]|0;c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[c[o>>2]>>2]=c[p>>2];a[(c[o>>2]|0)+21>>0]=98;a[(c[o>>2]|0)+22>>0]=1;e=(c[k>>2]|0)+38|0;b[e>>1]=(b[e>>1]|0)+1<<16>>16;i=n;return}function Bn(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f+12|0;k=f+8|0;g=f+4|0;h=f;c[j>>2]=d;c[k>>2]=e;c[g>>2]=c[(c[j>>2]|0)+484>>2];if((c[g>>2]|0)==0){i=f;return}if((b[(c[g>>2]|0)+38>>1]|0)<1){i=f;return}c[h>>2]=(c[(c[g>>2]|0)+4>>2]|0)+(((b[(c[g>>2]|0)+38>>1]|0)-1|0)*24|0);d=Lo(c[c[j>>2]>>2]|0,c[k>>2]|0)|0;c[(c[h>>2]|0)+12>>2]=d;d=Tp(c[(c[h>>2]|0)+12>>2]|0,(c[h>>2]|0)+22|0)|0;a[(c[h>>2]|0)+21>>0]=d;i=f;return}function Cn(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;k=e;j=e+20|0;f=e+16|0;l=e+12|0;h=e+8|0;g=e+4|0;c[j>>2]=a;c[f>>2]=d;c[g>>2]=c[c[j>>2]>>2];c[l>>2]=c[(c[j>>2]|0)+484>>2];if((c[l>>2]|0)==0){l=c[g>>2]|0;a=c[f>>2]|0;a=c[a>>2]|0;hn(l,a);i=e;return}c[h>>2]=(c[(c[l>>2]|0)+4>>2]|0)+(((b[(c[l>>2]|0)+38>>1]|0)-1|0)*24|0);if((Sx(c[c[f>>2]>>2]|0)|0)!=0){hn(c[g>>2]|0,c[(c[h>>2]|0)+4>>2]|0);l=kq(c[g>>2]|0,c[c[f>>2]>>2]|0,1)|0;c[(c[h>>2]|0)+4>>2]=l;Wb(c[g>>2]|0,c[(c[h>>2]|0)+8>>2]|0);l=gm(c[g>>2]|0,c[(c[f>>2]|0)+4>>2]|0,(c[(c[f>>2]|0)+8>>2]|0)-(c[(c[f>>2]|0)+4>>2]|0)|0)|0;c[(c[h>>2]|0)+8>>2]=l;l=c[g>>2]|0;a=c[f>>2]|0;a=c[a>>2]|0;hn(l,a);i=e;return}else{l=c[j>>2]|0;c[k>>2]=c[c[h>>2]>>2];Ne(l,26360,k);l=c[g>>2]|0;a=c[f>>2]|0;a=c[a>>2]|0;hn(l,a);i=e;return}}function Dn(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h+20|0;n=h+16|0;l=h+12|0;k=h+8|0;g=h+4|0;m=h;c[j>>2]=a;c[n>>2]=b;c[l>>2]=d;c[k>>2]=e;c[g>>2]=f;if(((c[n>>2]|0)==72?(c[l>>2]|0)!=0:0)?(c[k>>2]|0)!=0:0){c[m>>2]=Xq(c[c[j>>2]>>2]|0,c[l>>2]|0,c[k>>2]|0)|0}else{c[m>>2]=Zq(c[c[j>>2]>>2]|0,c[n>>2]|0,c[g>>2]|0,1)|0;_q(c[c[j>>2]>>2]|0,c[m>>2]|0,c[l>>2]|0,c[k>>2]|0)}if((c[m>>2]|0)==0){a=c[m>>2]|0;i=h;return a|0}zq(c[j>>2]|0,c[(c[m>>2]|0)+24>>2]|0)|0;a=c[m>>2]|0;i=h;return a|0}function En(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;k=f+8|0;j=f+4|0;h=f;c[g>>2]=a;c[k>>2]=b;c[j>>2]=d;c[h>>2]=e;a=Dn(c[k>>2]|0,c[j>>2]|0,0,0,c[h>>2]|0)|0;c[c[g>>2]>>2]=a;c[(c[g>>2]|0)+4>>2]=c[c[h>>2]>>2];c[(c[g>>2]|0)+8>>2]=(c[c[h>>2]>>2]|0)+(c[(c[h>>2]|0)+4>>2]|0);i=f;return}function Fn(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+8|0;g=f+4|0;h=f;c[j>>2]=d;c[g>>2]=e;c[h>>2]=c[(c[j>>2]|0)+484>>2];if((c[h>>2]|0)==0){i=f;return}if((b[(c[h>>2]|0)+38>>1]|0)<1){i=f;return}a[(c[(c[h>>2]|0)+4>>2]|0)+(((b[(c[h>>2]|0)+38>>1]|0)-1|0)*24|0)+20>>0]=c[g>>2];i=f;return}function Gn(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;s=i;i=i+64|0;n=s;m=s+48|0;l=s+44|0;o=s+40|0;p=s+36|0;q=s+32|0;u=s+28|0;w=s+24|0;t=s+20|0;y=s+16|0;x=s+12|0;k=s+8|0;r=s+4|0;c[m>>2]=e;c[l>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=j;c[u>>2]=c[(c[m>>2]|0)+484>>2];c[w>>2]=0;c[t>>2]=-1;if((c[u>>2]|0)==0){f=c[m>>2]|0;f=c[f>>2]|0;e=c[l>>2]|0;dn(f,e);i=s;return}if((d[(c[m>>2]|0)+451>>0]|0)!=0){f=c[m>>2]|0;f=c[f>>2]|0;e=c[l>>2]|0;dn(f,e);i=s;return}if((a[(c[u>>2]|0)+44>>0]&4|0)!=0){f=c[m>>2]|0;c[n>>2]=c[c[u>>2]>>2];Ne(f,26256,n);f=c[m>>2]|0;f=c[f>>2]|0;e=c[l>>2]|0;dn(f,e);i=s;return}e=(c[u>>2]|0)+44|0;a[e>>0]=d[e>>0]|4;a:do{if((c[l>>2]|0)==0){c[t>>2]=(b[(c[u>>2]|0)+38>>1]|0)-1;e=(c[(c[u>>2]|0)+4>>2]|0)+((c[t>>2]|0)*24|0)+23|0;a[e>>0]=d[e>>0]|1;c[w>>2]=c[(c[(c[u>>2]|0)+4>>2]|0)+((c[t>>2]|0)*24|0)+12>>2];c[x>>2]=1}else{c[x>>2]=c[c[l>>2]>>2];c[y>>2]=0;while(1){if((c[y>>2]|0)>=(c[x>>2]|0)){break a}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(b[(c[u>>2]|0)+38>>1]|0)){break}e=(vc(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[y>>2]|0)*20|0)+4>>2]|0,c[(c[(c[u>>2]|0)+4>>2]|0)+((c[t>>2]|0)*24|0)>>2]|0)|0)==0;j=c[t>>2]|0;if(e){v=12;break}c[t>>2]=j+1}if((v|0)==12){v=0;e=(c[(c[u>>2]|0)+4>>2]|0)+(j*24|0)+23|0;a[e>>0]=d[e>>0]|1;c[w>>2]=c[(c[(c[u>>2]|0)+4>>2]|0)+((c[t>>2]|0)*24|0)+12>>2]}c[y>>2]=(c[y>>2]|0)+1}}}while(0);if((((c[x>>2]|0)==1?(c[w>>2]|0)!=0:0)?(vc(c[w>>2]|0,16320)|0)==0:0)?(c[q>>2]|0)==0:0){b[(c[u>>2]|0)+36>>1]=c[t>>2];a[(c[u>>2]|0)+45>>0]=c[o>>2];e=(c[u>>2]|0)+44|0;a[e>>0]=d[e>>0]|c[p>>2]<<3;if((c[l>>2]|0)==0){f=c[m>>2]|0;f=c[f>>2]|0;e=c[l>>2]|0;dn(f,e);i=s;return}a[(c[m>>2]|0)+448>>0]=a[(c[(c[l>>2]|0)+4>>2]|0)+12>>0]|0;f=c[m>>2]|0;f=c[f>>2]|0;e=c[l>>2]|0;dn(f,e);i=s;return}t=c[m>>2]|0;if((c[p>>2]|0)!=0){Ne(t,26304,n);f=c[m>>2]|0;f=c[f>>2]|0;e=c[l>>2]|0;dn(f,e);i=s;return}c[k>>2]=c[t+8>>2];if((c[k>>2]|0)!=0){e=$o(c[k>>2]|0,156)|0;c[(c[m>>2]|0)+420>>2]=e}c[r>>2]=Hn(c[m>>2]|0,0,0,0,c[l>>2]|0,c[o>>2]|0,0,0,c[q>>2]|0,0)|0;if((c[r>>2]|0)!=0?(e=(c[r>>2]|0)+55|0,a[e>>0]=a[e>>0]&-4|2,(c[k>>2]|0)!=0):0){mp(c[k>>2]|0,c[(c[m>>2]|0)+420>>2]|0)}c[l>>2]=0;f=c[m>>2]|0;f=c[f>>2]|0;e=c[l>>2]|0;dn(f,e);i=s;return}function Hn(f,g,h,j,k,l,m,n,o,p){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0;s=i;i=i+240|0;D=s;Y=s+232|0;ka=s+228|0;ja=s+224|0;u=s+220|0;x=s+216|0;B=s+212|0;H=s+208|0;v=s+204|0;ma=s+200|0;_=s+196|0;q=s+192|0;A=s+188|0;w=s+184|0;r=s+180|0;$=s+176|0;J=s+172|0;L=s+168|0;ia=s+144|0;R=s+140|0;t=s+136|0;Z=s+132|0;C=s+128|0;M=s+124|0;Q=s+120|0;X=s+116|0;V=s+112|0;ba=s+108|0;U=s+104|0;K=s+100|0;ga=s+96|0;ha=s+92|0;fa=s+88|0;la=s+84|0;W=s+80|0;S=s+76|0;P=s+72|0;T=s+68|0;I=s+64|0;da=s+60|0;ea=s+56|0;F=s+52|0;G=s+48|0;E=s+44|0;ca=s+40|0;O=s+36|0;aa=s+32|0;N=s+28|0;z=s+24|0;c[Y>>2]=f;c[ka>>2]=g;c[ja>>2]=h;c[u>>2]=j;c[x>>2]=k;c[B>>2]=l;c[H>>2]=m;c[v>>2]=n;c[ma>>2]=o;c[_>>2]=p;c[q>>2]=0;c[A>>2]=0;c[w>>2]=0;c[r>>2]=0;c[t>>2]=c[c[Y>>2]>>2];c[M>>2]=0;c[V>>2]=0;c[U>>2]=0;c[K>>2]=0;a:do{if(((d[(c[t>>2]|0)+64>>0]|0)==0?(d[(c[Y>>2]|0)+451>>0]|0)==0:0)?0==(jr(c[Y>>2]|0)|0):0){p=c[Y>>2]|0;if((c[u>>2]|0)!=0){c[C>>2]=nr(p,c[ka>>2]|0,c[ja>>2]|0,M)|0;if((c[C>>2]|0)<0){break}if((((a[(c[t>>2]|0)+137>>0]|0)==0?(c[A>>2]=mt(c[Y>>2]|0,c[u>>2]|0)|0,(c[(c[ja>>2]|0)+4>>2]|0)==0):0)?(c[A>>2]|0)!=0:0)?(c[(c[A>>2]|0)+68>>2]|0)==(c[(c[(c[t>>2]|0)+16>>2]|0)+28>>2]|0):0){c[C>>2]=1}nt(ia,c[Y>>2]|0,c[C>>2]|0,10072,c[M>>2]|0);ot(ia,c[u>>2]|0)|0;c[A>>2]=ap(c[Y>>2]|0,0,(c[u>>2]|0)+8|0)|0;if((c[A>>2]|0)==0){break}if((c[C>>2]|0)==1?(c[(c[(c[t>>2]|0)+16>>2]|0)+(c[C>>2]<<4)+12>>2]|0)!=(c[(c[A>>2]|0)+68>>2]|0):0){f=c[Y>>2]|0;c[D>>2]=c[c[A>>2]>>2];Ne(f,25800,D);break}if((a[(c[A>>2]|0)+44>>0]&32|0)!=0){c[K>>2]=Gr(c[A>>2]|0)|0}}else{c[A>>2]=c[p+484>>2];if((c[A>>2]|0)==0){break}c[C>>2]=Qe(c[t>>2]|0,c[(c[A>>2]|0)+68>>2]|0)|0}c[Z>>2]=(c[(c[t>>2]|0)+16>>2]|0)+(c[C>>2]<<4);if((Lb(c[c[A>>2]>>2]|0,15048,7)|0)==0?(Lb((c[c[A>>2]>>2]|0)+7|0,25856,9)|0)!=0:0){f=c[Y>>2]|0;c[D>>2]=c[c[A>>2]>>2];Ne(f,25872,D);break}if((c[(c[A>>2]|0)+12>>2]|0)!=0){Ne(c[Y>>2]|0,25904,D);break}if((a[(c[A>>2]|0)+44>>0]&16|0)!=0){Ne(c[Y>>2]|0,25936,D);break}if((c[M>>2]|0)!=0){c[r>>2]=Lo(c[t>>2]|0,c[M>>2]|0)|0;if((c[r>>2]|0)==0){break}if(0!=(xp(c[Y>>2]|0,c[r>>2]|0)|0)){break}if((a[(c[t>>2]|0)+137>>0]|0)==0?(fp(c[t>>2]|0,c[r>>2]|0,0)|0)!=0:0){f=c[Y>>2]|0;c[D>>2]=c[r>>2];Ne(f,25976,D);break}if((wp(c[t>>2]|0,c[r>>2]|0,c[c[Z>>2]>>2]|0)|0)!=0){y=c[Y>>2]|0;if((c[_>>2]|0)!=0){dp(y,c[C>>2]|0);break}else{c[D>>2]=c[r>>2];Ne(y,26016,D);break}}}else{c[ha>>2]=c[(c[A>>2]|0)+8>>2];c[ga>>2]=1;while(1){if((c[ha>>2]|0)==0){break}c[ha>>2]=c[(c[ha>>2]|0)+20>>2];c[ga>>2]=(c[ga>>2]|0)+1}f=c[t>>2]|0;g=c[ga>>2]|0;c[D>>2]=c[c[A>>2]>>2];c[D+4>>2]=g;c[r>>2]=Oe(f,26040,D)|0;if((c[r>>2]|0)==0){break}}c[fa>>2]=c[c[Z>>2]>>2];if((Oo(c[Y>>2]|0,18,(c[C>>2]|0)==1?14808:14832,0,c[fa>>2]|0)|0)==0?(c[J>>2]=1,c[J>>2]=(c[C>>2]|0)==1?3:1,(Oo(c[Y>>2]|0,c[J>>2]|0,c[r>>2]|0,c[c[A>>2]>>2]|0,c[fa>>2]|0)|0)==0):0){if((c[x>>2]|0)==0){c[x>>2]=Rn(c[Y>>2]|0,0,0)|0;if((c[x>>2]|0)==0){break}f=he(c[c[Y>>2]>>2]|0,c[(c[(c[A>>2]|0)+4>>2]|0)+(((b[(c[A>>2]|0)+38>>1]|0)-1|0)*24|0)>>2]|0)|0;c[(c[(c[x>>2]|0)+4>>2]|0)+4>>2]=f;a[(c[(c[x>>2]|0)+4>>2]|0)+12>>0]=c[ma>>2]}c[J>>2]=0;while(1){if((c[J>>2]|0)>=(c[c[x>>2]>>2]|0)){break}c[la>>2]=c[(c[(c[x>>2]|0)+4>>2]|0)+((c[J>>2]|0)*20|0)>>2];if((c[la>>2]|0)!=0){f=1+(Mb(c[(c[la>>2]|0)+8>>2]|0)|0)|0;c[V>>2]=(c[V>>2]|0)+f}c[J>>2]=(c[J>>2]|0)+1}c[$>>2]=Mb(c[r>>2]|0)|0;if((c[K>>2]|0)!=0){_=e[(c[K>>2]|0)+50>>1]|0}else{_=1}c[ba>>2]=_;c[w>>2]=Yu(c[t>>2]|0,(c[c[x>>2]>>2]|0)+(c[ba>>2]|0)&65535,(c[$>>2]|0)+(c[V>>2]|0)+1|0,U)|0;if((a[(c[t>>2]|0)+64>>0]|0)==0){c[c[w>>2]>>2]=c[U>>2];c[U>>2]=(c[U>>2]|0)+((c[$>>2]|0)+1);dE(c[c[w>>2]>>2]|0,c[r>>2]|0,(c[$>>2]|0)+1|0)|0;c[(c[w>>2]|0)+12>>2]=c[A>>2];a[(c[w>>2]|0)+54>>0]=c[B>>2];f=(c[w>>2]|0)+55|0;a[f>>0]=a[f>>0]&-9|((c[B>>2]|0)!=0&1)<<3&255;f=(c[w>>2]|0)+55|0;a[f>>0]=a[f>>0]&-4|((c[M>>2]|0)!=0?0:1)&3;c[(c[w>>2]|0)+24>>2]=c[(c[(c[t>>2]|0)+16>>2]|0)+(c[C>>2]<<4)+12>>2];b[(c[w>>2]|0)+50>>1]=c[c[x>>2]>>2];if((c[v>>2]|0)!=0){Nx(c[Y>>2]|0,c[A>>2]|0,16,c[v>>2]|0,0);c[(c[w>>2]|0)+36>>2]=c[v>>2];c[v>>2]=0}if((d[(c[(c[Z>>2]|0)+12>>2]|0)+76>>0]|0)>=4){c[R>>2]=-1}else{c[R>>2]=0}c[J>>2]=0;c[Q>>2]=c[(c[x>>2]|0)+4>>2];while(1){if((c[J>>2]|0)>=(c[c[x>>2]>>2]|0)){break}c[W>>2]=c[(c[Q>>2]|0)+4>>2];c[L>>2]=0;c[X>>2]=c[(c[A>>2]|0)+4>>2];while(1){if((c[L>>2]|0)>=(b[(c[A>>2]|0)+38>>1]|0)){break}if((vc(c[W>>2]|0,c[c[X>>2]>>2]|0)|0)==0){break}c[L>>2]=(c[L>>2]|0)+1;c[X>>2]=(c[X>>2]|0)+24}if((c[L>>2]|0)>=(b[(c[A>>2]|0)+38>>1]|0)){y=65;break}b[(c[(c[w>>2]|0)+4>>2]|0)+(c[J>>2]<<1)>>1]=c[L>>2];if((c[c[Q>>2]>>2]|0)!=0){c[P>>2]=c[(c[c[Q>>2]>>2]|0)+8>>2];c[T>>2]=(Mb(c[P>>2]|0)|0)+1;dE(c[U>>2]|0,c[P>>2]|0,c[T>>2]|0)|0;c[P>>2]=c[U>>2];c[U>>2]=(c[U>>2]|0)+(c[T>>2]|0);c[V>>2]=(c[V>>2]|0)-(c[T>>2]|0)}else{f=c[(c[(c[A>>2]|0)+4>>2]|0)+((c[L>>2]|0)*24|0)+16>>2]|0;c[P>>2]=f;c[P>>2]=(c[P>>2]|0)!=0?f:3320}if((a[(c[t>>2]|0)+137>>0]|0)==0?(wr(c[Y>>2]|0,c[P>>2]|0)|0)==0:0){break a}c[(c[(c[w>>2]|0)+32>>2]|0)+(c[J>>2]<<2)>>2]=c[P>>2];c[S>>2]=d[(c[Q>>2]|0)+12>>0]&c[R>>2];a[(c[(c[w>>2]|0)+28>>2]|0)+(c[J>>2]|0)>>0]=c[S>>2];if((d[(c[(c[A>>2]|0)+4>>2]|0)+((c[L>>2]|0)*24|0)+20>>0]|0)==0){f=(c[w>>2]|0)+55|0;a[f>>0]=a[f>>0]&-9}c[J>>2]=(c[J>>2]|0)+1;c[Q>>2]=(c[Q>>2]|0)+20}if((y|0)==65){f=c[Y>>2]|0;g=c[W>>2]|0;c[D>>2]=c[c[A>>2]>>2];c[D+4>>2]=g;Ne(f,26064,D);a[(c[Y>>2]|0)+17>>0]=1;break}b:do{if((c[K>>2]|0)!=0){c[L>>2]=0;while(1){if((c[L>>2]|0)>=(e[(c[K>>2]|0)+50>>1]|0)){break b}c[I>>2]=b[(c[(c[K>>2]|0)+4>>2]|0)+(c[L>>2]<<1)>>1]|0;if((Ox(c[(c[w>>2]|0)+4>>2]|0,e[(c[w>>2]|0)+50>>1]|0,c[I>>2]|0)|0)!=0){f=(c[w>>2]|0)+52|0;b[f>>1]=(b[f>>1]|0)+ -1<<16>>16}else{b[(c[(c[w>>2]|0)+4>>2]|0)+(c[J>>2]<<1)>>1]=c[I>>2];c[(c[(c[w>>2]|0)+32>>2]|0)+(c[J>>2]<<2)>>2]=c[(c[(c[K>>2]|0)+32>>2]|0)+(c[L>>2]<<2)>>2];a[(c[(c[w>>2]|0)+28>>2]|0)+(c[J>>2]|0)>>0]=a[(c[(c[K>>2]|0)+28>>2]|0)+(c[L>>2]|0)>>0]|0;c[J>>2]=(c[J>>2]|0)+1}c[L>>2]=(c[L>>2]|0)+1}}else{b[(c[(c[w>>2]|0)+4>>2]|0)+(c[J>>2]<<1)>>1]=-1;c[(c[(c[w>>2]|0)+32>>2]|0)+(c[J>>2]<<2)>>2]=3320}}while(0);Rr(c[w>>2]|0);if((c[(c[Y>>2]|0)+484>>2]|0)==0){Px(c[w>>2]|0)}c:do{if((c[A>>2]|0)==(c[(c[Y>>2]|0)+484>>2]|0)){c[da>>2]=c[(c[A>>2]|0)+8>>2];while(1){if((c[da>>2]|0)==0){break c}if((e[(c[da>>2]|0)+50>>1]|0)==(e[(c[w>>2]|0)+50>>1]|0)){c[ea>>2]=0;while(1){if((c[ea>>2]|0)>=(e[(c[da>>2]|0)+50>>1]|0)){break}if((b[(c[(c[da>>2]|0)+4>>2]|0)+(c[ea>>2]<<1)>>1]|0)!=(b[(c[(c[w>>2]|0)+4>>2]|0)+(c[ea>>2]<<1)>>1]|0)){break}c[F>>2]=c[(c[(c[da>>2]|0)+32>>2]|0)+(c[ea>>2]<<2)>>2];c[G>>2]=c[(c[(c[w>>2]|0)+32>>2]|0)+(c[ea>>2]<<2)>>2];if((c[F>>2]|0)!=(c[G>>2]|0)?(vc(c[F>>2]|0,c[G>>2]|0)|0)!=0:0){break}c[ea>>2]=(c[ea>>2]|0)+1}if((c[ea>>2]|0)==(e[(c[da>>2]|0)+50>>1]|0)){break}}c[da>>2]=c[(c[da>>2]|0)+20>>2]}if((d[(c[da>>2]|0)+54>>0]|0)==(d[(c[w>>2]|0)+54>>0]|0)){break a}do{if((d[(c[da>>2]|0)+54>>0]|0)!=10){if((d[(c[w>>2]|0)+54>>0]|0)==10){break}f=c[Y>>2]|0;c[D>>2]=0;Ne(f,26096,D)}}while(0);if((d[(c[da>>2]|0)+54>>0]|0)!=10){break a}a[(c[da>>2]|0)+54>>0]=a[(c[w>>2]|0)+54>>0]|0;break a}}while(0);do{if((a[(c[t>>2]|0)+137>>0]|0)!=0){g=(c[(c[w>>2]|0)+24>>2]|0)+24|0;f=c[c[w>>2]>>2]|0;C=Mb(c[c[w>>2]>>2]|0)|0;c[E>>2]=$g(g,f,C,c[w>>2]|0)|0;C=c[t>>2]|0;if((c[E>>2]|0)!=0){a[C+64>>0]=1;break a}f=C+24|0;c[f>>2]=c[f>>2]|2;if((c[u>>2]|0)==0){break}c[(c[w>>2]|0)+44>>2]=c[(c[t>>2]|0)+132>>2]}else{if((c[(c[Y>>2]|0)+64>>2]|0)!=0){break}if((a[(c[A>>2]|0)+44>>0]&32|0)!=0?(c[u>>2]|0)==0:0){break}g=(c[Y>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[aa>>2]=f;c[ca>>2]=Ro(c[Y>>2]|0)|0;if((c[ca>>2]|0)==0){break a}cp(c[Y>>2]|0,1,c[C>>2]|0);To(c[ca>>2]|0,117,c[C>>2]|0,c[aa>>2]|0)|0;if((c[H>>2]|0)!=0){c[N>>2]=(c[(c[Y>>2]|0)+504>>2]|0)-(c[c[M>>2]>>2]|0)+(c[(c[Y>>2]|0)+508>>2]|0);if((a[(c[c[M>>2]>>2]|0)+((c[N>>2]|0)-1)>>0]|0)==59){c[N>>2]=(c[N>>2]|0)+ -1}f=c[t>>2]|0;h=c[N>>2]|0;g=c[c[M>>2]>>2]|0;c[D>>2]=(c[B>>2]|0)==0?1472:26168;c[D+4>>2]=h;c[D+8>>2]=g;c[O>>2]=Oe(f,26144,D)|0}else{c[O>>2]=0}f=c[Y>>2]|0;l=(c[C>>2]|0)==1?14808:14832;k=c[c[w>>2]>>2]|0;j=c[c[A>>2]>>2]|0;h=c[aa>>2]|0;g=c[O>>2]|0;c[D>>2]=c[(c[(c[t>>2]|0)+16>>2]|0)+(c[C>>2]<<4)>>2];c[D+4>>2]=l;c[D+8>>2]=k;c[D+12>>2]=j;c[D+16>>2]=h;c[D+20>>2]=g;Qo(f,26176,D);Wb(c[t>>2]|0,c[O>>2]|0);if((c[u>>2]|0)==0){break}Yr(c[Y>>2]|0,c[w>>2]|0,c[aa>>2]|0);So(c[Y>>2]|0,c[C>>2]|0);h=c[ca>>2]|0;g=c[C>>2]|0;f=c[t>>2]|0;c[D>>2]=c[c[w>>2]>>2];Uo(h,g,Oe(f,26224,D)|0);rr(c[ca>>2]|0,139,0)|0}}while(0);if((d[(c[t>>2]|0)+137>>0]|0)==0?(c[u>>2]|0)!=0:0){break}do{if((c[B>>2]|0)!=5){y=123}else{if((c[(c[A>>2]|0)+8>>2]|0)==0){y=123;break}if((d[(c[(c[A>>2]|0)+8>>2]|0)+54>>0]|0)==5){y=123;break}c[z>>2]=c[(c[A>>2]|0)+8>>2];while(1){if((c[(c[z>>2]|0)+20>>2]|0)!=0){B=(d[(c[(c[z>>2]|0)+20>>2]|0)+54>>0]|0)!=5}else{B=0}A=c[(c[z>>2]|0)+20>>2]|0;if(!B){break}c[z>>2]=A}c[(c[w>>2]|0)+20>>2]=A;c[(c[z>>2]|0)+20>>2]=c[w>>2]}}while(0);if((y|0)==123){c[(c[w>>2]|0)+20>>2]=c[(c[A>>2]|0)+8>>2];c[(c[A>>2]|0)+8>>2]=c[w>>2]}c[q>>2]=c[w>>2];c[w>>2]=0}}}}while(0);if((c[w>>2]|0)==0){f=c[t>>2]|0;g=c[v>>2]|0;hn(f,g);g=c[t>>2]|0;f=c[x>>2]|0;dn(g,f);f=c[t>>2]|0;g=c[u>>2]|0;gn(f,g);g=c[t>>2]|0;f=c[r>>2]|0;Wb(g,f);f=c[q>>2]|0;i=s;return f|0}Qx(c[t>>2]|0,c[w>>2]|0);f=c[t>>2]|0;g=c[v>>2]|0;hn(f,g);g=c[t>>2]|0;f=c[x>>2]|0;dn(g,f);f=c[t>>2]|0;g=c[u>>2]|0;gn(f,g);g=c[t>>2]|0;f=c[r>>2]|0;Wb(g,f);f=c[q>>2]|0;i=s;return f|0}function In(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;h=j+8|0;g=j+4|0;k=j;c[f>>2]=b;c[h>>2]=e;c[g>>2]=c[(c[f>>2]|0)+484>>2];c[k>>2]=c[c[f>>2]>>2];if(((c[g>>2]|0)!=0?(a[(c[f>>2]|0)+451>>0]|0)==0:0)?(mg(c[(c[(c[k>>2]|0)+16>>2]|0)+(d[(c[k>>2]|0)+136>>0]<<4)+4>>2]|0)|0)==0:0){b=Rn(c[f>>2]|0,c[(c[g>>2]|0)+24>>2]|0,c[h>>2]|0)|0;c[(c[g>>2]|0)+24>>2]=b;if((c[(c[f>>2]|0)+324>>2]|0)==0){i=j;return}Sn(c[f>>2]|0,c[(c[g>>2]|0)+24>>2]|0,(c[f>>2]|0)+320|0,1);i=j;return}hn(c[c[f>>2]>>2]|0,c[h>>2]|0);i=j;return}function Jn(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;p=i;i=i+80|0;u=p;q=p+68|0;n=p+64|0;C=p+60|0;o=p+56|0;k=p+52|0;w=p+48|0;m=p+44|0;x=p+40|0;s=p+36|0;B=p+32|0;v=p+28|0;z=p+24|0;t=p+20|0;A=p+16|0;y=p+12|0;r=p+8|0;c[q>>2]=e;c[n>>2]=f;c[C>>2]=g;c[o>>2]=h;c[k>>2]=j;c[w>>2]=c[c[q>>2]>>2];c[m>>2]=0;c[s>>2]=c[(c[q>>2]|0)+484>>2];a:do{if((c[s>>2]|0)!=0?(d[(c[q>>2]|0)+451>>0]|0)==0:0){if((c[n>>2]|0)==0){c[A>>2]=(b[(c[s>>2]|0)+38>>1]|0)-1;if((c[A>>2]|0)<0){break}if((c[o>>2]|0)!=0?(c[c[o>>2]>>2]|0)!=1:0){e=c[q>>2]|0;f=c[C>>2]|0;c[u>>2]=c[(c[(c[s>>2]|0)+4>>2]|0)+((c[A>>2]|0)*24|0)>>2];c[u+4>>2]=f;Ne(e,25592,u);break}c[z>>2]=1}else{if((c[o>>2]|0)!=0?(c[c[o>>2]>>2]|0)!=(c[c[n>>2]>>2]|0):0){Ne(c[q>>2]|0,25656,u);break}c[z>>2]=c[c[n>>2]>>2]}c[B>>2]=44+((c[z>>2]|0)-1<<3)+(c[(c[C>>2]|0)+4>>2]|0)+1;b:do{if((c[o>>2]|0)!=0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[o>>2]>>2]|0)){break b}e=(Mb(c[(c[(c[o>>2]|0)+4>>2]|0)+((c[v>>2]|0)*20|0)+4>>2]|0)|0)+1|0;c[B>>2]=(c[B>>2]|0)+e;c[v>>2]=(c[v>>2]|0)+1}}}while(0);c[m>>2]=ne(c[w>>2]|0,c[B>>2]|0)|0;if((c[m>>2]|0)!=0){c[c[m>>2]>>2]=c[s>>2];c[(c[m>>2]|0)+4>>2]=c[(c[s>>2]|0)+16>>2];c[t>>2]=(c[m>>2]|0)+36+(c[z>>2]<<3);c[(c[m>>2]|0)+8>>2]=c[t>>2];dE(c[t>>2]|0,c[c[C>>2]>>2]|0,c[(c[C>>2]|0)+4>>2]|0)|0;a[(c[t>>2]|0)+(c[(c[C>>2]|0)+4>>2]|0)>>0]=0;hm(c[t>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+((c[(c[C>>2]|0)+4>>2]|0)+1);c[(c[m>>2]|0)+20>>2]=c[z>>2];c:do{if((c[n>>2]|0)==0){c[(c[m>>2]|0)+36>>2]=(b[(c[s>>2]|0)+38>>1]|0)-1}else{c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[z>>2]|0)){break c}c[y>>2]=0;while(1){if((c[y>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}e=(vc(c[(c[(c[s>>2]|0)+4>>2]|0)+((c[y>>2]|0)*24|0)>>2]|0,c[(c[(c[n>>2]|0)+4>>2]|0)+((c[v>>2]|0)*20|0)+4>>2]|0)|0)==0;A=c[y>>2]|0;if(e){l=25;break}c[y>>2]=A+1}if((l|0)==25){l=0;c[(c[m>>2]|0)+36+(c[v>>2]<<3)>>2]=A}if((c[y>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}c[v>>2]=(c[v>>2]|0)+1}e=c[q>>2]|0;c[u>>2]=c[(c[(c[n>>2]|0)+4>>2]|0)+((c[v>>2]|0)*20|0)+4>>2];Ne(e,25752,u);break a}}while(0);d:do{if((c[o>>2]|0)!=0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[z>>2]|0)){break d}c[r>>2]=Mb(c[(c[(c[o>>2]|0)+4>>2]|0)+((c[v>>2]|0)*20|0)+4>>2]|0)|0;c[(c[m>>2]|0)+36+(c[v>>2]<<3)+4>>2]=c[t>>2];dE(c[t>>2]|0,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[v>>2]|0)*20|0)+4>>2]|0,c[r>>2]|0)|0;a[(c[t>>2]|0)+(c[r>>2]|0)>>0]=0;c[t>>2]=(c[t>>2]|0)+((c[r>>2]|0)+1);c[v>>2]=(c[v>>2]|0)+1}}}while(0);a[(c[m>>2]|0)+24>>0]=0;a[(c[m>>2]|0)+25>>0]=c[k>>2]&255;a[(c[m>>2]|0)+26>>0]=c[k>>2]>>8&255;g=(c[(c[s>>2]|0)+68>>2]|0)+56|0;f=c[(c[m>>2]|0)+8>>2]|0;e=Mb(c[(c[m>>2]|0)+8>>2]|0)|0;c[x>>2]=$g(g,f,e,c[m>>2]|0)|0;if((c[x>>2]|0)==(c[m>>2]|0)){a[(c[w>>2]|0)+64>>0]=1;break}if((c[x>>2]|0)!=0){c[(c[m>>2]|0)+12>>2]=c[x>>2];c[(c[x>>2]|0)+16>>2]=c[m>>2]}c[(c[s>>2]|0)+16>>2]=c[m>>2];c[m>>2]=0}}}while(0);Wb(c[w>>2]|0,c[m>>2]|0);dn(c[w>>2]|0,c[n>>2]|0);dn(c[w>>2]|0,c[o>>2]|0);i=p;return}function Kn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;f=e+8|0;h=e+4|0;g=e;c[j>>2]=b;c[f>>2]=d;b=c[(c[j>>2]|0)+484>>2]|0;c[h>>2]=b;if((b|0)==0){i=e;return}j=c[(c[h>>2]|0)+16>>2]|0;c[g>>2]=j;if((j|0)==0){i=e;return}a[(c[g>>2]|0)+24>>0]=c[f>>2];i=e;return}function Ln(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;k=j+24|0;m=j+20|0;g=j+16|0;h=j+12|0;f=j+8|0;l=j+4|0;e=j;c[k>>2]=a;c[m>>2]=d;a=c[(c[k>>2]|0)+484>>2]|0;c[g>>2]=a;if((a|0)==0){i=j;return}c[h>>2]=(b[(c[g>>2]|0)+38>>1]|0)-1;c[l>>2]=c[c[k>>2]>>2];c[f>>2]=Lo(c[l>>2]|0,c[m>>2]|0)|0;if((c[f>>2]|0)==0){i=j;return}a=(wr(c[k>>2]|0,c[f>>2]|0)|0)!=0;d=c[l>>2]|0;if(!a){Wb(d,c[f>>2]|0);i=j;return}Wb(d,c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*24|0)+16>>2]|0);c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*24|0)+16>>2]=c[f>>2];c[e>>2]=c[(c[g>>2]|0)+8>>2];while(1){if((c[e>>2]|0)==0){break}if((b[c[(c[e>>2]|0)+4>>2]>>1]|0)==(c[h>>2]|0)){c[c[(c[e>>2]|0)+32>>2]>>2]=c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*24|0)+16>>2]}c[e>>2]=c[(c[e>>2]|0)+20>>2]}i=j;return}function Mn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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;j=i;i=i+64|0;n=j;k=j+48|0;h=j+44|0;o=j+40|0;l=j+36|0;m=j+32|0;t=j+28|0;p=j+24|0;s=j+20|0;q=j+16|0;u=j+12|0;g=j+8|0;r=j+4|0;c[k>>2]=b;c[h>>2]=d;c[o>>2]=e;c[l>>2]=f;c[p>>2]=c[c[k>>2]>>2];do{if((a[(c[p>>2]|0)+64>>0]|0)==0){if((c[l>>2]|0)!=0){b=(c[p>>2]|0)+67|0;a[b>>0]=(a[b>>0]|0)+1<<24>>24}c[m>>2]=ap(c[k>>2]|0,c[o>>2]|0,(c[h>>2]|0)+8|0)|0;if((c[l>>2]|0)!=0){b=(c[p>>2]|0)+67|0;a[b>>0]=(a[b>>0]|0)+ -1<<24>>24}if((c[m>>2]|0)==0){if((c[l>>2]|0)==0){break}ht(c[k>>2]|0,c[(c[h>>2]|0)+12>>2]|0);break}c[s>>2]=Qe(c[p>>2]|0,c[(c[m>>2]|0)+68>>2]|0)|0;if((a[(c[m>>2]|0)+44>>0]&16|0)!=0?(yp(c[k>>2]|0,c[m>>2]|0)|0)!=0:0){break}c[u>>2]=(c[s>>2]|0)==1?14808:14832;c[g>>2]=c[(c[(c[p>>2]|0)+16>>2]|0)+(c[s>>2]<<4)>>2];c[r>>2]=0;if((Oo(c[k>>2]|0,9,c[u>>2]|0,0,c[g>>2]|0)|0)==0){do{if((c[o>>2]|0)!=0){if((c[s>>2]|0)==1){c[q>>2]=15;break}else{c[q>>2]=17;break}}else{if((a[(c[m>>2]|0)+44>>0]&16|0)!=0){c[q>>2]=30;c[r>>2]=c[(c[(zp(c[p>>2]|0,c[m>>2]|0)|0)+4>>2]|0)+4>>2];break}if((c[s>>2]|0)==1){c[q>>2]=13;break}else{c[q>>2]=11;break}}}while(0);if((Oo(c[k>>2]|0,c[q>>2]|0,c[c[m>>2]>>2]|0,c[r>>2]|0,c[g>>2]|0)|0)==0?(Oo(c[k>>2]|0,9,c[c[m>>2]>>2]|0,0,c[g>>2]|0)|0)==0:0){if((Lb(c[c[m>>2]>>2]|0,15048,7)|0)==0?(Lb(c[c[m>>2]>>2]|0,25368,11)|0)!=0:0){b=c[k>>2]|0;c[n>>2]=c[c[m>>2]>>2];Ne(b,25384,n);break}if((c[o>>2]|0)!=0?(c[(c[m>>2]|0)+12>>2]|0)==0:0){b=c[k>>2]|0;c[n>>2]=c[c[m>>2]>>2];Ne(b,25416,n);break}if((c[o>>2]|0)==0?(c[(c[m>>2]|0)+12>>2]|0)!=0:0){b=c[k>>2]|0;c[n>>2]=c[c[m>>2]>>2];Ne(b,25456,n);break}c[t>>2]=Ro(c[k>>2]|0)|0;if((c[t>>2]|0)!=0){cp(c[k>>2]|0,1,c[s>>2]|0);Rt(c[k>>2]|0,c[s>>2]|0,18072,c[c[m>>2]>>2]|0);Ix(c[k>>2]|0,c[h>>2]|0,c[m>>2]|0);Jx(c[k>>2]|0,c[m>>2]|0,c[s>>2]|0,c[o>>2]|0)}}}}}while(0);gn(c[p>>2]|0,c[h>>2]|0);i=j;return}function Nn(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;p=i;i=i+96|0;o=p+84|0;s=p+80|0;u=p+76|0;v=p+72|0;t=p+68|0;z=p+64|0;A=p+60|0;q=p+56|0;m=p+52|0;n=p+48|0;l=p+40|0;y=p+16|0;w=p+12|0;x=p+8|0;r=p+4|0;c[o>>2]=b;c[s>>2]=e;c[u>>2]=f;c[v>>2]=g;c[t>>2]=h;c[z>>2]=j;c[A>>2]=k;c[w>>2]=0;c[r>>2]=c[c[o>>2]>>2];k=c[o>>2]|0;if((c[(c[o>>2]|0)+440>>2]|0)>0){Ne(k,25320,p);en(c[r>>2]|0,c[t>>2]|0);i=p;return}yn(k,c[u>>2]|0,c[v>>2]|0,c[z>>2]|0,1,0,c[A>>2]|0);c[q>>2]=c[(c[o>>2]|0)+484>>2];if((c[q>>2]|0)!=0?(c[(c[o>>2]|0)+64>>2]|0)==0:0){nr(c[o>>2]|0,c[u>>2]|0,c[v>>2]|0,w)|0;c[x>>2]=Qe(c[r>>2]|0,c[(c[q>>2]|0)+68>>2]|0)|0;nt(y,c[o>>2]|0,c[x>>2]|0,25360,c[w>>2]|0);b=(pt(y,c[t>>2]|0)|0)!=0;v=c[r>>2]|0;u=c[t>>2]|0;if(b){en(v,u);i=p;return}b=Ep(v,u,1)|0;c[(c[q>>2]|0)+12>>2]=b;en(c[r>>2]|0,c[t>>2]|0);if((a[(c[r>>2]|0)+64>>0]|0)!=0){i=p;return}if((a[(c[r>>2]|0)+137>>0]|0)==0){yp(c[o>>2]|0,c[q>>2]|0)|0}b=(c[o>>2]|0)+504|0;c[l+0>>2]=c[b+0>>2];c[l+4>>2]=c[b+4>>2];if((a[c[l>>2]>>0]|0)!=0?(a[c[l>>2]>>0]|0)!=59:0){c[l>>2]=(c[l>>2]|0)+(c[l+4>>2]|0)}c[l+4>>2]=0;c[m>>2]=(c[l>>2]|0)-(c[c[s>>2]>>2]|0);c[n>>2]=c[c[s>>2]>>2];while(1){if((c[m>>2]|0)>0){r=(a[48+(d[(c[n>>2]|0)+((c[m>>2]|0)-1)>>0]|0)>>0]&1|0)!=0}else{r=0}q=c[m>>2]|0;if(!r){break}c[m>>2]=q+ -1}c[l>>2]=(c[n>>2]|0)+(q-1);c[l+4>>2]=1;zn(c[o>>2]|0,0,l,0,0);i=p;return}en(c[r>>2]|0,c[t>>2]|0);i=p;return}function On(f,g,h){f=f|0;g=g|0;h=h|0;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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;W=i;i=i+400|0;T=W+384|0;o=W+380|0;n=W+376|0;l=W+372|0;u=W+368|0;I=W+364|0;N=W+360|0;t=W+356|0;ra=W+352|0;r=W+348|0;q=W+344|0;ma=W+340|0;y=W+336|0;z=W+332|0;w=W+328|0;A=W+316|0;p=W+288|0;V=W+240|0;L=W+236|0;m=W+232|0;v=W+228|0;pa=W+224|0;ua=W+204|0;ta=W+200|0;ya=W+196|0;za=W+192|0;sa=W+188|0;qa=W+184|0;va=W+180|0;wa=W+176|0;xa=W+388|0;ba=W+144|0;S=W+140|0;R=W+136|0;Y=W+132|0;Z=W+128|0;M=W+124|0;j=W+120|0;O=W+116|0;P=W+112|0;Q=W+108|0;oa=W+104|0;na=W+100|0;k=W+96|0;x=W+92|0;$=W+88|0;_=W+84|0;s=W+80|0;B=W+76|0;X=W+72|0;U=W+68|0;aa=W+64|0;H=W+60|0;G=W+56|0;J=W+52|0;K=W+48|0;F=W+44|0;E=W+40|0;C=W+36|0;ea=W+32|0;fa=W+28|0;la=W+24|0;ka=W+20|0;ca=W+16|0;ja=W+12|0;ia=W+8|0;ha=W+4|0;ga=W;da=W+390|0;c[o>>2]=f;c[n>>2]=g;c[l>>2]=h;c[w>>2]=1;c[v>>2]=c[(c[o>>2]|0)+464>>2];g=(c[o>>2]|0)+468|0;f=c[g>>2]|0;c[g>>2]=f+1;c[(c[o>>2]|0)+464>>2]=f;c[m>>2]=c[c[o>>2]>>2];if(((c[n>>2]|0)!=0?(d[(c[m>>2]|0)+64>>0]|0)==0:0)?(c[(c[o>>2]|0)+64>>2]|0)==0:0){if((Oo(c[o>>2]|0,21,0,0,0)|0)!=0){c[T>>2]=1;f=c[T>>2]|0;i=W;return f|0}g=V+0|0;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((d[c[l>>2]>>0]|0)<=8){dn(c[m>>2]|0,c[(c[n>>2]|0)+48>>2]|0);c[(c[n>>2]|0)+48>>2]=0;f=(c[n>>2]|0)+6|0;b[f>>1]=e[f>>1]&-2}Hp(c[o>>2]|0,c[n>>2]|0,0);c[p+0>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16>>2]=0;c[p+20>>2]=0;c[p+24>>2]=0;c[p>>2]=c[(c[n>>2]|0)+48>>2];c[q>>2]=c[(c[n>>2]|0)+32>>2];c[r>>2]=c[c[n>>2]>>2];a:do{if((((c[(c[o>>2]|0)+64>>2]|0)==0?(d[(c[m>>2]|0)+64>>0]|0)==0:0)?(c[ra>>2]=(b[(c[n>>2]|0)+6>>1]&4|0)!=0&1,c[t>>2]=Ro(c[o>>2]|0)|0,(c[t>>2]|0)!=0):0)?(Sw(c[o>>2]|0,c[l>>2]|0,c[c[r>>2]>>2]|0)|0)==0:0){c[u>>2]=0;while(1){if((c[(c[n>>2]|0)+52>>2]|0)!=0){break}if((c[u>>2]|0)>=(c[c[q>>2]>>2]|0)){break}c[pa>>2]=(c[q>>2]|0)+8+((c[u>>2]|0)*72|0);c[ta>>2]=c[(c[pa>>2]|0)+20>>2];do{if((c[ta>>2]|0)!=0){if((c[(c[pa>>2]|0)+24>>2]|0)!=0){if(((d[(c[pa>>2]|0)+37>>0]|0)>>>2&1|0)!=0){break}To(c[t>>2]|0,17,c[(c[pa>>2]|0)+28>>2]|0,c[(c[pa>>2]|0)+24>>2]|0)|0;break}g=Tw(c[n>>2]|0)|0;f=(c[o>>2]|0)+460|0;c[f>>2]=(c[f>>2]|0)+g;c[ya>>2]=(b[(c[ta>>2]|0)+6>>1]&4|0)!=0&1;b:do{if((Uw(c[o>>2]|0,c[n>>2]|0,c[u>>2]|0,c[ra>>2]|0,c[ya>>2]|0)|0)!=0){if((c[ya>>2]|0)!=0){c[ra>>2]=1;f=(c[n>>2]|0)+6|0;b[f>>1]=e[f>>1]|4}c[u>>2]=-1}else{do{if((c[c[q>>2]>>2]|0)==1){if((b[(c[m>>2]|0)+60>>1]&256|0)!=0){break}c[za>>2]=(vr(c[t>>2]|0)|0)+1;g=(c[o>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[(c[pa>>2]|0)+28>>2]=f;Wo(c[t>>2]|0,20,c[(c[pa>>2]|0)+28>>2]|0,0,c[za>>2]|0)|0;c[(c[pa>>2]|0)+24>>2]=c[za>>2];Ks(ua,13,c[(c[pa>>2]|0)+28>>2]|0);a[(c[pa>>2]|0)+38>>0]=c[(c[o>>2]|0)+468>>2];On(c[o>>2]|0,c[ta>>2]|0,ua)|0;f=(c[ta>>2]|0)+24|0;f=Np(c[f>>2]|0,c[f+4>>2]|0)|0;b[(c[(c[pa>>2]|0)+16>>2]|0)+28>>1]=f;f=(c[pa>>2]|0)+37|0;a[f>>0]=a[f>>0]&-5|4;c[(c[pa>>2]|0)+32>>2]=c[ua+8>>2];rr(c[t>>2]|0,21,c[(c[pa>>2]|0)+28>>2]|0)|0;mp(c[t>>2]|0,(c[za>>2]|0)-1|0);Vw(c[o>>2]|0);break b}}while(0);c[qa>>2]=0;g=(c[o>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[(c[pa>>2]|0)+28>>2]=f;c[sa>>2]=To(c[t>>2]|0,25,0,c[(c[pa>>2]|0)+28>>2]|0)|0;c[(c[pa>>2]|0)+24>>2]=(c[sa>>2]|0)+1;if(((d[(c[pa>>2]|0)+37>>0]|0)>>>1&1|0)==0){c[qa>>2]=Js(c[o>>2]|0)|0}Ks(ua,12,c[(c[pa>>2]|0)+40>>2]|0);a[(c[pa>>2]|0)+38>>0]=c[(c[o>>2]|0)+468>>2];On(c[o>>2]|0,c[ta>>2]|0,ua)|0;f=(c[ta>>2]|0)+24|0;f=Np(c[f>>2]|0,c[f+4>>2]|0)|0;b[(c[(c[pa>>2]|0)+16>>2]|0)+28>>1]=f;if((c[qa>>2]|0)!=0){mp(c[t>>2]|0,c[qa>>2]|0)}c[va>>2]=rr(c[t>>2]|0,18,c[(c[pa>>2]|0)+28>>2]|0)|0;Ve(c[t>>2]|0,c[sa>>2]|0,c[va>>2]|0);Vw(c[o>>2]|0)}}while(0);if((a[(c[m>>2]|0)+64>>0]|0)!=0){break a}g=Tw(c[n>>2]|0)|0;f=(c[o>>2]|0)+460|0;c[f>>2]=(c[f>>2]|0)-g;c[q>>2]=c[(c[n>>2]|0)+32>>2];if((d[c[l>>2]>>0]|0)>8){c[p>>2]=c[(c[n>>2]|0)+48>>2]}}}while(0);c[u>>2]=(c[u>>2]|0)+1}c[r>>2]=c[c[n>>2]>>2];c[ma>>2]=c[(c[n>>2]|0)+36>>2];c[y>>2]=c[(c[n>>2]|0)+40>>2];c[z>>2]=c[(c[n>>2]|0)+44>>2];a[A>>0]=(b[(c[n>>2]|0)+6>>1]&1|0)!=0;if((c[(c[n>>2]|0)+52>>2]|0)!=0){c[w>>2]=Ww(c[o>>2]|0,c[n>>2]|0,c[l>>2]|0)|0;c[(c[o>>2]|0)+464>>2]=c[v>>2];c[T>>2]=c[w>>2];f=c[T>>2]|0;i=W;return f|0}if((b[(c[n>>2]|0)+6>>1]&5|0)==1?(nq(c[p>>2]|0,c[c[n>>2]>>2]|0,-1)|0)==0:0){f=(c[n>>2]|0)+6|0;b[f>>1]=e[f>>1]&-2;f=sq(c[m>>2]|0,c[c[n>>2]>>2]|0,0)|0;c[(c[n>>2]|0)+40>>2]=f;c[y>>2]=c[(c[n>>2]|0)+40>>2];c[p>>2]=0}if((c[p>>2]|0)!=0){c[wa>>2]=Xw(c[o>>2]|0,c[p>>2]|0,0,0)|0;g=(c[o>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[p+8>>2]=f;c[p+20>>2]=Vo(c[t>>2]|0,55,c[p+8>>2]|0,(c[c[p>>2]>>2]|0)+2|0,0,c[wa>>2]|0,-6)|0}else{c[p+20>>2]=-1}if((d[c[l>>2]>>0]|0)==12){To(c[t>>2]|0,55,c[(c[l>>2]|0)+4>>2]|0,c[c[r>>2]>>2]|0)|0}c[L>>2]=fs(c[t>>2]|0)|0;f=(c[n>>2]|0)+24|0;c[f>>2]=-1;c[f+4>>2]=2147483647;Yw(c[o>>2]|0,c[n>>2]|0,c[L>>2]|0);if((c[(c[n>>2]|0)+8>>2]|0)==0?(c[p+20>>2]|0)>=0:0){a[(Ns(c[t>>2]|0,c[p+20>>2]|0)|0)>>0]=56;f=p+24|0;a[f>>0]=d[f>>0]|1}if((b[(c[n>>2]|0)+6>>1]&1|0)!=0){f=(c[o>>2]|0)+68|0;g=c[f>>2]|0;c[f>>2]=g+1;c[A+4>>2]=g;g=c[t>>2]|0;f=c[A+4>>2]|0;c[A+8>>2]=Vo(g,55,f,0,0,Xw(c[o>>2]|0,c[c[n>>2]>>2]|0,0,0)|0,-6)|0;Se(c[t>>2]|0,8);a[A+1>>0]=3}else{a[A+1>>0]=0}if((c[ra>>2]|0)==0?(c[y>>2]|0)==0:0){b[xa>>1]=(d[A>>0]|0)!=0?1024:0;c[N>>2]=ou(c[o>>2]|0,c[q>>2]|0,c[ma>>2]|0,c[p>>2]|0,c[c[n>>2]>>2]|0,b[xa>>1]|0,0)|0;if((c[N>>2]|0)==0){break}g=Zw(c[N>>2]|0)|0;za=D;f=(c[n>>2]|0)+24|0;h=c[f+4>>2]|0;if(za>>>0>>0|((za|0)==(h|0)?g>>>0<(c[f>>2]|0)>>>0:0)){g=Zw(c[N>>2]|0)|0;f=(c[n>>2]|0)+24|0;c[f>>2]=g;c[f+4>>2]=D}do{if((d[A>>0]|0)!=0){if((_w(c[N>>2]|0)|0)==0){break}a[A+1>>0]=_w(c[N>>2]|0)|0}}while(0);do{if((c[p>>2]|0)!=0){c[p+4>>2]=$w(c[N>>2]|0)|0;if((c[p+4>>2]|0)!=(c[c[p>>2]>>2]|0)){break}c[p>>2]=0}}while(0);do{if((c[p+20>>2]|0)>=0){if((c[p>>2]|0)!=0){break}Ze(c[t>>2]|0,c[p+20>>2]|0)}}while(0);ya=c[o>>2]|0;za=c[n>>2]|0;h=c[r>>2]|0;g=c[l>>2]|0;f=bx(c[N>>2]|0)|0;ax(ya,za,h,-1,p,A,g,f,cx(c[N>>2]|0)|0);pu(c[N>>2]|0)}else{c[O>>2]=0;c[P>>2]=0;c[Q>>2]=0;pa=c[n>>2]|0;do{if((c[y>>2]|0)!=0){c[oa>>2]=c[c[pa>>2]>>2];c[na>>2]=c[(c[c[n>>2]>>2]|0)+4>>2];while(1){if((c[oa>>2]|0)<=0){break}b[(c[na>>2]|0)+18>>1]=0;c[oa>>2]=(c[oa>>2]|0)+ -1;c[na>>2]=(c[na>>2]|0)+20}c[oa>>2]=c[c[y>>2]>>2];c[na>>2]=c[(c[y>>2]|0)+4>>2];while(1){if((c[oa>>2]|0)<=0){break}b[(c[na>>2]|0)+18>>1]=0;c[oa>>2]=(c[oa>>2]|0)+ -1;c[na>>2]=(c[na>>2]|0)+20}f=(c[n>>2]|0)+24|0;g=c[f+4>>2]|0;if(!(g>>>0>0|(g|0)==0&(c[f>>2]|0)>>>0>100)){break}f=(c[n>>2]|0)+24|0;c[f>>2]=100;c[f+4>>2]=0}else{f=pa+24|0;c[f>>2]=1;c[f+4>>2]=0}}while(0);if((nq(c[y>>2]|0,c[p>>2]|0,-1)|0)==0){c[Q>>2]=1}c[j>>2]=fs(c[t>>2]|0)|0;c[ba+0>>2]=0;c[ba+4>>2]=0;c[ba+8>>2]=0;c[ba+12>>2]=0;c[ba+16>>2]=0;c[ba+20>>2]=0;c[ba+24>>2]=0;c[ba+28>>2]=0;c[ba>>2]=c[o>>2];c[ba+4>>2]=c[q>>2];c[ba+12>>2]=V;c[V+16>>2]=(c[(c[o>>2]|0)+72>>2]|0)+1;if((c[y>>2]|0)!=0){na=(c[c[y>>2]>>2]|0)+1|0}else{na=0}c[V+12>>2]=na;c[V+24>>2]=c[y>>2];dx(ba,c[r>>2]|0);dx(ba,c[p>>2]|0);if((c[z>>2]|0)!=0){ex(ba,c[z>>2]|0)}c[V+36>>2]=c[V+32>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[V+44>>2]|0)){break}f=ba+28|0;a[f>>0]=d[f>>0]|8;dx(ba,c[(c[(c[V+40>>2]|0)+(c[u>>2]<<4)>>2]|0)+20>>2]|0);f=ba+28|0;a[f>>0]=d[f>>0]&-9;c[u>>2]=(c[u>>2]|0)+1}c[V+20>>2]=c[(c[o>>2]|0)+72>>2];if((a[(c[m>>2]|0)+64>>0]|0)!=0){break}if((c[y>>2]|0)!=0){g=(c[o>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[V+4>>2]=f;c[k>>2]=Xw(c[o>>2]|0,c[y>>2]|0,0,0)|0;c[X>>2]=Vo(c[t>>2]|0,56,c[V+4>>2]|0,c[V+12>>2]|0,0,c[k>>2]|0,-6)|0;f=(c[o>>2]|0)+72|0;g=(c[f>>2]|0)+1|0;c[f>>2]=g;c[Y>>2]=g;g=(c[o>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[Z>>2]=f;f=(c[o>>2]|0)+72|0;g=(c[f>>2]|0)+1|0;c[f>>2]=g;c[_>>2]=g;c[$>>2]=fs(c[t>>2]|0)|0;g=(c[o>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[aa>>2]=f;c[U>>2]=fs(c[t>>2]|0)|0;c[S>>2]=(c[(c[o>>2]|0)+72>>2]|0)+1;f=(c[o>>2]|0)+72|0;c[f>>2]=(c[f>>2]|0)+(c[c[y>>2]>>2]|0);c[R>>2]=(c[(c[o>>2]|0)+72>>2]|0)+1;f=(c[o>>2]|0)+72|0;c[f>>2]=(c[f>>2]|0)+(c[c[y>>2]>>2]|0);To(c[t>>2]|0,25,0,c[Z>>2]|0)|0;To(c[t>>2]|0,25,0,c[Y>>2]|0)|0;Wo(c[t>>2]|0,28,0,c[S>>2]|0,(c[S>>2]|0)+(c[c[y>>2]>>2]|0)-1|0)|0;To(c[t>>2]|0,17,c[aa>>2]|0,c[U>>2]|0)|0;c[N>>2]=ou(c[o>>2]|0,c[q>>2]|0,c[ma>>2]|0,c[y>>2]|0,0,(256|((c[Q>>2]|0)!=0?2048:0))&65535,0)|0;if((c[N>>2]|0)==0){break}f=$w(c[N>>2]|0)|0;if((f|0)==(c[c[y>>2]>>2]|0)){c[M>>2]=0}else{if((d[A>>0]|0)!=0){ba=(b[(c[n>>2]|0)+6>>1]&1|0)==0}else{ba=0}fx(c[o>>2]|0,ba?24688:24704);c[M>>2]=1;c[K>>2]=c[c[y>>2]>>2];c[J>>2]=(c[K>>2]|0)+1;c[I>>2]=(c[K>>2]|0)+1;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[V+32>>2]|0)){break}if((c[(c[V+28>>2]|0)+((c[u>>2]|0)*24|0)+12>>2]|0)>=(c[I>>2]|0)){c[J>>2]=(c[J>>2]|0)+1;c[I>>2]=(c[I>>2]|0)+1}c[u>>2]=(c[u>>2]|0)+1}c[H>>2]=is(c[o>>2]|0,c[J>>2]|0)|0;Lt(c[o>>2]|0);Fs(c[o>>2]|0,c[y>>2]|0,c[H>>2]|0,0)|0;To(c[t>>2]|0,68,c[V+4>>2]|0,(c[H>>2]|0)+(c[K>>2]|0)|0)|0;c[I>>2]=(c[K>>2]|0)+1;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[V+32>>2]|0)){break}c[F>>2]=(c[V+28>>2]|0)+((c[u>>2]|0)*24|0);if((c[(c[F>>2]|0)+12>>2]|0)>=(c[I>>2]|0)){c[E>>2]=(c[I>>2]|0)+(c[H>>2]|0);c[C>>2]=As(c[o>>2]|0,c[c[F>>2]>>2]|0,c[(c[F>>2]|0)+8>>2]|0,c[(c[F>>2]|0)+4>>2]|0,c[E>>2]|0,0)|0;if((c[E>>2]|0)!=(c[C>>2]|0)){To(c[t>>2]|0,34,c[C>>2]|0,c[E>>2]|0)|0}c[I>>2]=(c[I>>2]|0)+1}c[u>>2]=(c[u>>2]|0)+1}c[G>>2]=Zo(c[o>>2]|0)|0;Wo(c[t>>2]|0,48,c[H>>2]|0,c[J>>2]|0,c[G>>2]|0)|0;To(c[t>>2]|0,106,c[V+4>>2]|0,c[G>>2]|0)|0;_o(c[o>>2]|0,c[G>>2]|0);ls(c[o>>2]|0,c[H>>2]|0,c[J>>2]|0);pu(c[N>>2]|0);g=(c[o>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[O>>2]=f;c[V+8>>2]=f;c[P>>2]=Zo(c[o>>2]|0)|0;Wo(c[t>>2]|0,57,c[O>>2]|0,c[P>>2]|0,c[J>>2]|0)|0;To(c[t>>2]|0,103,c[V+4>>2]|0,c[j>>2]|0)|0;a[V+1>>0]=1;Lt(c[o>>2]|0)}do{if((c[Q>>2]|0)!=0){if((b[(c[m>>2]|0)+60>>1]&4|0)!=0){break}if((c[M>>2]|0)==0?(gx(c[N>>2]|0)|0)==0:0){break}c[p>>2]=0;Ze(c[t>>2]|0,c[p+20>>2]|0)}}while(0);c[B>>2]=vr(c[t>>2]|0)|0;Lt(c[o>>2]|0);if((c[M>>2]|0)!=0){To(c[t>>2]|0,95,c[V+4>>2]|0,c[P>>2]|0)|0}c[I>>2]=0;while(1){if((c[I>>2]|0)>=(c[c[y>>2]>>2]|0)){break}do{if((c[M>>2]|0)!=0){Wo(c[t>>2]|0,46,c[O>>2]|0,c[I>>2]|0,(c[R>>2]|0)+(c[I>>2]|0)|0)|0;if((c[I>>2]|0)!=0){break}Se(c[t>>2]|0,32)}else{a[V>>0]=1;ys(c[o>>2]|0,c[(c[(c[y>>2]|0)+4>>2]|0)+((c[I>>2]|0)*20|0)>>2]|0,(c[R>>2]|0)+(c[I>>2]|0)|0)}}while(0);c[I>>2]=(c[I>>2]|0)+1}za=c[t>>2]|0;h=c[S>>2]|0;g=c[R>>2]|0;f=c[c[y>>2]>>2]|0;Vo(za,41,h,g,f,Fr(c[k>>2]|0)|0,-6)|0;c[x>>2]=vr(c[t>>2]|0)|0;Wo(c[t>>2]|0,42,(c[x>>2]|0)+1|0,0,(c[x>>2]|0)+1|0)|0;hx(c[o>>2]|0,c[R>>2]|0,c[S>>2]|0,c[c[y>>2]>>2]|0);To(c[t>>2]|0,17,c[_>>2]|0,c[$>>2]|0)|0;To(c[t>>2]|0,134,c[Z>>2]|0,c[j>>2]|0)|0;To(c[t>>2]|0,17,c[aa>>2]|0,c[U>>2]|0)|0;mp(c[t>>2]|0,c[x>>2]|0);ix(c[o>>2]|0,V);To(c[t>>2]|0,25,1,c[Y>>2]|0)|0;if((c[M>>2]|0)!=0){To(c[t>>2]|0,5,c[V+4>>2]|0,c[B>>2]|0)|0}else{pu(c[N>>2]|0);Ze(c[t>>2]|0,c[X>>2]|0)}To(c[t>>2]|0,17,c[_>>2]|0,c[$>>2]|0)|0;To(c[t>>2]|0,16,0,c[j>>2]|0)|0;c[s>>2]=vr(c[t>>2]|0)|0;To(c[t>>2]|0,25,1,c[Z>>2]|0)|0;rr(c[t>>2]|0,18,c[_>>2]|0)|0;cs(c[t>>2]|0,c[$>>2]|0);c[$>>2]=vr(c[t>>2]|0)|0;To(c[t>>2]|0,134,c[Y>>2]|0,(c[$>>2]|0)+2|0)|0;rr(c[t>>2]|0,18,c[_>>2]|0)|0;jx(c[o>>2]|0,V);hs(c[o>>2]|0,c[z>>2]|0,(c[$>>2]|0)+1|0,8);ax(c[o>>2]|0,c[n>>2]|0,c[c[n>>2]>>2]|0,-1,p,A,c[l>>2]|0,(c[$>>2]|0)+1|0,c[s>>2]|0);rr(c[t>>2]|0,18,c[_>>2]|0)|0;cs(c[t>>2]|0,c[U>>2]|0);kx(c[o>>2]|0,V);rr(c[t>>2]|0,18,c[aa>>2]|0)|0}else{c[ea>>2]=0;f=lx(c[n>>2]|0,V)|0;c[fa>>2]=f;if((f|0)!=0){c[la>>2]=Qe(c[c[o>>2]>>2]|0,c[(c[fa>>2]|0)+68>>2]|0)|0;g=(c[o>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[ka>>2]=f;c[ja>>2]=0;c[ia>>2]=0;c[ha>>2]=c[(c[fa>>2]|0)+32>>2];dp(c[o>>2]|0,c[la>>2]|0);sr(c[o>>2]|0,c[la>>2]|0,c[(c[fa>>2]|0)+32>>2]|0,0,c[c[fa>>2]>>2]|0);if((a[(c[fa>>2]|0)+44>>0]&32|0)!=0){c[ia>>2]=Gr(c[fa>>2]|0)|0}c[ca>>2]=c[(c[fa>>2]|0)+8>>2];while(1){if((c[ca>>2]|0)==0){break}do{if(((d[(c[ca>>2]|0)+55>>0]|0)>>>2&1|0)==0){if((b[(c[ca>>2]|0)+48>>1]|0)>=(b[(c[fa>>2]|0)+42>>1]|0)){break}if((c[(c[ca>>2]|0)+36>>2]|0)!=0){break}if((c[ia>>2]|0)!=0?(b[(c[ca>>2]|0)+48>>1]|0)>=(b[(c[ia>>2]|0)+48>>1]|0):0){break}c[ia>>2]=c[ca>>2]}}while(0);c[ca>>2]=c[(c[ca>>2]|0)+20>>2]}if((c[ia>>2]|0)!=0){c[ha>>2]=c[(c[ia>>2]|0)+44>>2];c[ja>>2]=Dr(c[o>>2]|0,c[ia>>2]|0)|0}Re(c[t>>2]|0,52,c[ka>>2]|0,c[ha>>2]|0,c[la>>2]|0,1)|0;if((c[ja>>2]|0)!=0){Ye(c[t>>2]|0,-1,c[ja>>2]|0,-6)}To(c[t>>2]|0,49,c[ka>>2]|0,c[(c[V+40>>2]|0)+8>>2]|0)|0;rr(c[t>>2]|0,58,c[ka>>2]|0)|0;mx(c[o>>2]|0,c[fa>>2]|0,c[ia>>2]|0)}else{c[ga>>2]=0;a[da>>0]=0;if((c[(c[n>>2]|0)+44>>2]|0)==0){a[da>>0]=nx(V,ga)|0}do{if((a[da>>0]|0)!=0){c[ga>>2]=sq(c[m>>2]|0,c[ga>>2]|0,0)|0;c[ea>>2]=c[ga>>2];if((c[ga>>2]|0)==0){break}if((a[(c[m>>2]|0)+64>>0]|0)!=0){break}a[(c[(c[ga>>2]|0)+4>>2]|0)+12>>0]=(d[da>>0]|0)!=1?1:0;a[c[c[(c[ga>>2]|0)+4>>2]>>2]>>0]=-102}}while(0);kx(c[o>>2]|0,V);c[N>>2]=ou(c[o>>2]|0,c[q>>2]|0,c[ma>>2]|0,c[ga>>2]|0,0,d[da>>0]|0,0)|0;if((c[N>>2]|0)==0){dn(c[m>>2]|0,c[ea>>2]|0);break}ix(c[o>>2]|0,V);if(($w(c[N>>2]|0)|0)>0){f=c[t>>2]|0;To(f,16,0,cx(c[N>>2]|0)|0)|0}pu(c[N>>2]|0);jx(c[o>>2]|0,V)}c[p>>2]=0;hs(c[o>>2]|0,c[z>>2]|0,c[j>>2]|0,8);ax(c[o>>2]|0,c[n>>2]|0,c[c[n>>2]>>2]|0,-1,0,0,c[l>>2]|0,c[j>>2]|0,c[j>>2]|0);dn(c[m>>2]|0,c[ea>>2]|0)}cs(c[t>>2]|0,c[j>>2]|0)}if((d[A+1>>0]|0)==3){fx(c[o>>2]|0,24688)}if((c[p>>2]|0)!=0){fx(c[o>>2]|0,(c[p+4>>2]|0)>0?24720:24744);ox(c[o>>2]|0,c[n>>2]|0,p,c[c[r>>2]>>2]|0,c[l>>2]|0)}cs(c[t>>2]|0,c[L>>2]|0);c[w>>2]=0}}while(0);c[(c[o>>2]|0)+464>>2]=c[v>>2];if((c[w>>2]|0)==0?(d[c[l>>2]>>0]|0)==9:0){px(c[o>>2]|0,c[q>>2]|0,c[r>>2]|0)}Wb(c[m>>2]|0,c[V+28>>2]|0);Wb(c[m>>2]|0,c[V+40>>2]|0);c[T>>2]=c[w>>2];f=c[T>>2]|0;i=W;return f|0}c[T>>2]=1;f=c[T>>2]|0;i=W;return f|0}function Pn(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;t=i;i=i+48|0;x=t;s=t+44|0;w=t+40|0;v=t+36|0;u=t+32|0;k=t+28|0;n=t+24|0;r=t+20|0;p=t+16|0;q=t+12|0;m=t+8|0;o=t+4|0;c[w>>2]=a;c[v>>2]=b;c[u>>2]=d;c[k>>2]=e;c[n>>2]=f;c[r>>2]=g;c[p>>2]=h;c[q>>2]=j;c[o>>2]=c[c[w>>2]>>2];do{if((c[v>>2]|0)!=0){l=5}else{if((c[p>>2]|0)==0?(c[q>>2]|0)==0:0){l=5;break}a=c[w>>2]|0;c[x>>2]=(c[p>>2]|0)!=0?24672:24680;Ne(a,24632,x)}}while(0);if(((l|0)==5?(c[v>>2]=Xn(c[o>>2]|0,c[v>>2]|0,c[u>>2]|0,c[k>>2]|0)|0,(c[v>>2]|0)!=0):0)?(c[c[v>>2]>>2]|0)!=0:0){c[m>>2]=(c[v>>2]|0)+8+(((c[c[v>>2]>>2]|0)-1|0)*72|0);if((c[(c[n>>2]|0)+4>>2]|0)!=0){a=Lo(c[o>>2]|0,c[n>>2]|0)|0;c[(c[m>>2]|0)+12>>2]=a}c[(c[m>>2]|0)+20>>2]=c[r>>2];c[(c[m>>2]|0)+44>>2]=c[p>>2];c[(c[m>>2]|0)+48>>2]=c[q>>2];c[s>>2]=c[v>>2];a=c[s>>2]|0;i=t;return a|0}hn(c[o>>2]|0,c[p>>2]|0);jn(c[o>>2]|0,c[q>>2]|0);en(c[o>>2]|0,c[r>>2]|0);c[s>>2]=0;a=c[s>>2]|0;i=t;return a|0}function Qn(d,e,f,g,h,j,k,l,m,n){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var 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;p=i;i=i+128|0;v=p+112|0;A=p+108|0;s=p+104|0;t=p+100|0;u=p+96|0;o=p+92|0;w=p+88|0;x=p+116|0;y=p+84|0;z=p+80|0;r=p+76|0;B=p;q=p+72|0;c[v>>2]=d;c[A>>2]=e;c[s>>2]=f;c[t>>2]=g;c[u>>2]=h;c[o>>2]=j;c[w>>2]=k;b[x>>1]=l;c[y>>2]=m;c[z>>2]=n;c[q>>2]=c[c[v>>2]>>2];c[r>>2]=ne(c[q>>2]|0,72)|0;if((c[r>>2]|0)==0){c[r>>2]=B;m=(c[r>>2]|0)+0|0;n=m+72|0;do{c[m>>2]=0;m=m+4|0}while((m|0)<(n|0))}if((c[A>>2]|0)==0){d=c[v>>2]|0;c[A>>2]=Rn(d,0,Un(c[q>>2]|0,116,0)|0)|0}c[c[r>>2]>>2]=c[A>>2];if((c[s>>2]|0)==0){c[s>>2]=ne(c[q>>2]|0,80)|0}c[(c[r>>2]|0)+32>>2]=c[s>>2];c[(c[r>>2]|0)+36>>2]=c[t>>2];c[(c[r>>2]|0)+40>>2]=c[u>>2];c[(c[r>>2]|0)+44>>2]=c[o>>2];c[(c[r>>2]|0)+48>>2]=c[w>>2];b[(c[r>>2]|0)+6>>1]=b[x>>1]|0;a[(c[r>>2]|0)+4>>0]=119;c[(c[r>>2]|0)+60>>2]=c[y>>2];c[(c[r>>2]|0)+64>>2]=c[z>>2];c[(c[r>>2]|0)+16>>2]=-1;c[(c[r>>2]|0)+20>>2]=-1;if((a[(c[q>>2]|0)+64>>0]|0)==0){d=c[r>>2]|0;i=p;return d|0}fn(c[q>>2]|0,c[r>>2]|0);if((c[r>>2]|0)!=(B|0)){Wb(c[q>>2]|0,c[r>>2]|0)}c[r>>2]=0;d=c[r>>2]|0;i=p;return d|0}function Rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;h=e+24|0;m=e+20|0;j=e+16|0;g=e+12|0;k=e+8|0;l=e+4|0;f=e;c[m>>2]=a;c[j>>2]=b;c[g>>2]=d;c[k>>2]=c[c[m>>2]>>2];if((c[j>>2]|0)==0){c[j>>2]=ne(c[k>>2]|0,8)|0;if((c[j>>2]|0)!=0?(m=Le(c[k>>2]|0,20)|0,c[(c[j>>2]|0)+4>>2]=m,(c[(c[j>>2]|0)+4>>2]|0)!=0):0){d=7}else{d=8}}else{if((c[c[j>>2]>>2]&(c[c[j>>2]>>2]|0)-1|0)==0){c[l>>2]=Pm(c[k>>2]|0,c[(c[j>>2]|0)+4>>2]|0,(c[c[j>>2]>>2]<<1)*20|0)|0;if((c[l>>2]|0)==0){d=8}else{c[(c[j>>2]|0)+4>>2]=c[l>>2];d=7}}else{d=7}}if((d|0)==7){a=c[j>>2]|0;m=c[a>>2]|0;c[a>>2]=m+1;c[f>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(m*20|0);m=c[f>>2]|0;c[m+0>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[c[f>>2]>>2]=c[g>>2];c[h>>2]=c[j>>2];m=c[h>>2]|0;i=e;return m|0}else if((d|0)==8){hn(c[k>>2]|0,c[g>>2]|0);dn(c[k>>2]|0,c[j>>2]|0);c[h>>2]=0;m=c[h>>2]|0;i=e;return m|0}return 0}function Sn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;j=f+16|0;h=f+12|0;k=f+8|0;l=f+4|0;g=f;c[j>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;if((c[h>>2]|0)==0){i=f;return}c[g>>2]=(c[(c[h>>2]|0)+4>>2]|0)+(((c[c[h>>2]>>2]|0)-1|0)*20|0);a=gm(c[c[j>>2]>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0;c[(c[g>>2]|0)+4>>2]=a;if((c[l>>2]|0)==0){i=f;return}if((c[(c[g>>2]|0)+4>>2]|0)==0){i=f;return}hm(c[(c[g>>2]|0)+4>>2]|0)|0;i=f;return}function Tn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;f=e+12|0;j=e+8|0;h=e+4|0;g=e;c[k>>2]=a;c[f>>2]=b;c[j>>2]=d;c[h>>2]=c[c[k>>2]>>2];if((c[f>>2]|0)==0){i=e;return}c[g>>2]=(c[(c[f>>2]|0)+4>>2]|0)+(((c[c[f>>2]>>2]|0)-1|0)*20|0);Wb(c[h>>2]|0,c[(c[g>>2]|0)+8>>2]|0);k=gm(c[h>>2]|0,c[(c[j>>2]|0)+4>>2]|0,(c[(c[j>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+4>>2]|0)|0)|0;c[(c[g>>2]|0)+8>>2]=k;i=e;return}function Un(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+16|0;g=e+12|0;j=e+8|0;f=e;c[h>>2]=a;c[g>>2]=b;c[j>>2]=d;c[f>>2]=c[j>>2];if((c[j>>2]|0)!=0){d=Mb(c[j>>2]|0)|0}else{d=0}c[f+4>>2]=d;a=Zq(c[h>>2]|0,c[g>>2]|0,f,0)|0;i=e;return a|0}function Vn(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;if((c[e>>2]|0)==0){i=d;return}c[f>>2]=(c[c[e>>2]>>2]|0)-1;while(1){if((c[f>>2]|0)<=0){break}a[(c[e>>2]|0)+8+((c[f>>2]|0)*72|0)+36>>0]=a[(c[e>>2]|0)+8+(((c[f>>2]|0)-1|0)*72|0)+36>>0]|0;c[f>>2]=(c[f>>2]|0)+ -1}a[(c[e>>2]|0)+44>>0]=0;i=d;return}function Wn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;h=f+12|0;k=f+8|0;j=f+4|0;g=f;c[h>>2]=b;c[k>>2]=d;c[j>>2]=e;if((c[k>>2]|0)==0){i=f;return}if((c[c[k>>2]>>2]|0)<=0){i=f;return}c[g>>2]=(c[k>>2]|0)+8+(((c[c[k>>2]>>2]|0)-1|0)*72|0);if((c[(c[j>>2]|0)+4>>2]|0)==1?(c[c[j>>2]>>2]|0)==0:0){b=(c[g>>2]|0)+37|0;a[b>>0]=a[b>>0]&-2|1;i=f;return}b=Lo(c[c[h>>2]>>2]|0,c[j>>2]|0)|0;c[(c[g>>2]|0)+64>>2]=b;i=f;return}function Xn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;j=k+24|0;m=k+20|0;h=k+16|0;n=k+12|0;l=k+8|0;o=k+4|0;g=k;c[m>>2]=b;c[h>>2]=d;c[n>>2]=e;c[l>>2]=f;do{if((c[h>>2]|0)==0){c[h>>2]=ne(c[m>>2]|0,80)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+4>>2]=1;break}c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}}while(0);c[h>>2]=Rw(c[m>>2]|0,c[h>>2]|0,1,c[c[h>>2]>>2]|0)|0;if((a[(c[m>>2]|0)+64>>0]|0)!=0){gn(c[m>>2]|0,c[h>>2]|0);c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}c[o>>2]=(c[h>>2]|0)+8+(((c[c[h>>2]>>2]|0)-1|0)*72|0);if((c[l>>2]|0)!=0?(c[c[l>>2]>>2]|0)==0:0){c[l>>2]=0}if((c[l>>2]|0)!=0){c[g>>2]=c[l>>2];c[l>>2]=c[n>>2];c[n>>2]=c[g>>2]}b=Lo(c[m>>2]|0,c[n>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=b;b=Lo(c[m>>2]|0,c[l>>2]|0)|0;c[(c[o>>2]|0)+4>>2]=b;c[j>>2]=c[h>>2];b=c[j>>2]|0;i=k;return b|0}function Yn(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+64|0;l=j;k=j+60|0;g=j+56|0;m=j+52|0;o=j+48|0;p=j+44|0;q=j+32|0;s=j+28|0;r=j+24|0;t=j+20|0;n=j+16|0;c[k>>2]=a;c[g>>2]=b;c[m>>2]=e;c[o>>2]=f;c[p>>2]=0;c[q>>2]=c[g>>2];c[q+4>>2]=c[m>>2];c[q+8>>2]=c[o>>2];c[r>>2]=0;while(1){if((c[r>>2]|0)>=3){break}if((c[q+(c[r>>2]<<2)>>2]|0)==0){break}c[s>>2]=c[q+(c[r>>2]<<2)>>2];c[t>>2]=0;while(1){if((c[t>>2]|0)>=7){break}if((c[(c[s>>2]|0)+4>>2]|0)==(d[24505+((c[t>>2]|0)*3|0)>>0]|0|0)?(Lb(c[c[s>>2]>>2]|0,24464+(d[24504+((c[t>>2]|0)*3|0)>>0]|0)|0,c[(c[s>>2]|0)+4>>2]|0)|0)==0:0){h=8;break}c[t>>2]=(c[t>>2]|0)+1}if((h|0)==8){h=0;c[p>>2]=c[p>>2]|(d[24506+((c[t>>2]|0)*3|0)>>0]|0)}if((c[t>>2]|0)>=7){h=11;break}c[r>>2]=(c[r>>2]|0)+1}if((h|0)==11){c[p>>2]=c[p>>2]|64}if((c[p>>2]&33|0)!=33?(c[p>>2]&64|0)==0:0){if((c[p>>2]&32|0)==0){a=c[p>>2]|0;i=j;return a|0}if((c[p>>2]&24|0)==8){a=c[p>>2]|0;i=j;return a|0}Ne(c[k>>2]|0,24576,l);c[p>>2]=1;a=c[p>>2]|0;i=j;return a|0}c[n>>2]=9816;if((c[o>>2]|0)==0){c[n>>2]=(c[n>>2]|0)+1}a=c[k>>2]|0;f=c[m>>2]|0;e=c[n>>2]|0;b=c[o>>2]|0;c[l>>2]=c[g>>2];c[l+4>>2]=f;c[l+8>>2]=e;c[l+12>>2]=b;Ne(a,24528,l);c[p>>2]=1;a=c[p>>2]|0;i=j;return a|0}function Zn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+4|0;h=f;j=f+8|0;c[g>>2]=b;c[h>>2]=d;a[j>>0]=e;if((c[h>>2]|0)==0){i=f;return}c[(c[h>>2]|0)+4>>2]=c[(c[g>>2]|0)+532>>2];c[(c[g>>2]|0)+532>>2]=c[h>>2];a[(c[g>>2]|0)+449>>0]=a[j>>0]|0;i=f;return}function _n(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;n=i;i=i+192|0;q=n+172|0;k=n+168|0;l=n+164|0;o=n+160|0;s=n+156|0;U=n+152|0;j=n+148|0;L=n+144|0;r=n+140|0;I=n+136|0;z=n+132|0;h=n+128|0;R=n+124|0;v=n+120|0;y=n+112|0;T=n+80|0;O=n+76|0;p=n+72|0;S=n+68|0;E=n+64|0;Q=n+56|0;m=n+52|0;x=n+48|0;M=n+44|0;N=n+178|0;H=n+40|0;D=n+176|0;t=n+36|0;G=n+32|0;F=n+28|0;u=n+24|0;K=n+20|0;P=n+16|0;w=n+12|0;A=n+8|0;C=n+4|0;B=n;c[q>>2]=e;c[k>>2]=f;c[l>>2]=g;c[p>>2]=-1;c[m>>2]=0;c[M>>2]=0;b[N>>1]=1;c[t>>2]=0;c[G>>2]=0;c[F>>2]=0;c[u>>2]=0;c[K>>2]=0;c[P>>2]=0;c[y+0>>2]=0;c[y+4>>2]=0;c[v>>2]=c[c[q>>2]>>2];a:do{if((((((c[(c[q>>2]|0)+64>>2]|0)==0?(d[(c[v>>2]|0)+64>>0]|0)==0:0)?(c[s>>2]=mt(c[q>>2]|0,c[k>>2]|0)|0,(c[s>>2]|0)!=0):0)?(c[A>>2]=Ut(c[q>>2]|0,c[s>>2]|0,109,0,0)|0,c[w>>2]=(c[(c[s>>2]|0)+12>>2]|0)!=0&1,(yp(c[q>>2]|0,c[s>>2]|0)|0)==0):0)?(Vt(c[q>>2]|0,c[s>>2]|0,(c[A>>2]|0)!=0?1:0)|0)==0:0)?(c[O>>2]=Qe(c[v>>2]|0,c[(c[s>>2]|0)+68>>2]|0)|0,c[U>>2]=c[(c[(c[v>>2]|0)+16>>2]|0)+(c[O>>2]<<4)>>2],c[S>>2]=Oo(c[q>>2]|0,9,c[c[s>>2]>>2]|0,0,c[U>>2]|0)|0,(c[S>>2]|0)!=1):0){f=(c[q>>2]|0)+68|0;e=c[f>>2]|0;c[f>>2]=e+1;c[(c[k>>2]|0)+48>>2]=e;c[I>>2]=e;c[R>>2]=0;c[r>>2]=c[(c[s>>2]|0)+8>>2];while(1){if((c[r>>2]|0)==0){break}e=(c[q>>2]|0)+68|0;c[e>>2]=(c[e>>2]|0)+1;c[r>>2]=c[(c[r>>2]|0)+20>>2];c[R>>2]=(c[R>>2]|0)+1}if((c[w>>2]|0)!=0){Nw(c[q>>2]|0,y,c[c[s>>2]>>2]|0)}c[o>>2]=Ro(c[q>>2]|0)|0;if((c[o>>2]|0)!=0){if((d[(c[q>>2]|0)+18>>0]|0)==0){Wt(c[o>>2]|0)}cp(c[q>>2]|0,1,c[O>>2]|0);if((c[w>>2]|0)!=0){Ow(c[q>>2]|0,c[s>>2]|0,c[l>>2]|0,c[I>>2]|0);e=c[I>>2]|0;c[h>>2]=e;c[z>>2]=e}c[T+0>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;c[T+16>>2]=0;c[T+20>>2]=0;c[T+24>>2]=0;c[T+28>>2]=0;c[T>>2]=c[q>>2];c[T+4>>2]=c[k>>2];if((eq(T,c[l>>2]|0)|0)==0){if((c[(c[v>>2]|0)+24>>2]&128|0)!=0){f=(c[q>>2]|0)+72|0;e=(c[f>>2]|0)+1|0;c[f>>2]=e;c[p>>2]=e;To(c[o>>2]|0,25,0,c[p>>2]|0)|0}b:do{if(((((c[S>>2]|0)==0?(c[l>>2]|0)==0:0)?(c[A>>2]|0)==0:0)?(a[(c[s>>2]|0)+44>>0]&16|0)==0:0)?0==(Lv(c[q>>2]|0,c[s>>2]|0,0,0)|0):0){sr(c[q>>2]|0,c[O>>2]|0,c[(c[s>>2]|0)+32>>2]|0,1,c[c[s>>2]>>2]|0);if((a[(c[s>>2]|0)+44>>0]&32|0)==0){Vo(c[o>>2]|0,115,c[(c[s>>2]|0)+32>>2]|0,c[O>>2]|0,c[p>>2]|0,c[c[s>>2]>>2]|0,-2)|0}c[r>>2]=c[(c[s>>2]|0)+8>>2];while(1){if((c[r>>2]|0)==0){break b}To(c[o>>2]|0,115,c[(c[r>>2]|0)+44>>2]|0,c[O>>2]|0)|0;c[r>>2]=c[(c[r>>2]|0)+20>>2]}}else{J=30}}while(0);c:do{if((J|0)==30){if((a[(c[s>>2]|0)+44>>0]&32|0)==0){c[x>>2]=0;b[N>>1]=1;f=(c[q>>2]|0)+72|0;e=(c[f>>2]|0)+1|0;c[f>>2]=e;c[G>>2]=e;To(c[o>>2]|0,28,0,c[G>>2]|0)|0}else{c[x>>2]=Gr(c[s>>2]|0)|0;b[N>>1]=b[(c[x>>2]|0)+50>>1]|0;c[M>>2]=(c[(c[q>>2]|0)+72>>2]|0)+1;f=(c[q>>2]|0)+72|0;c[f>>2]=(c[f>>2]|0)+(b[N>>1]|0);f=(c[q>>2]|0)+68|0;e=c[f>>2]|0;c[f>>2]=e+1;c[t>>2]=e;c[P>>2]=To(c[o>>2]|0,55,c[t>>2]|0,b[N>>1]|0)|0;ur(c[q>>2]|0,c[x>>2]|0)}c[L>>2]=ou(c[q>>2]|0,c[k>>2]|0,c[l>>2]|0,0,0,12,(c[I>>2]|0)+1|0)|0;if((c[L>>2]|0)==0){break a}c[E>>2]=Pw(c[L>>2]|0,Q)|0;if((c[(c[v>>2]|0)+24>>2]&128|0)!=0){To(c[o>>2]|0,37,c[p>>2]|0,1)|0}do{if((c[x>>2]|0)!=0){c[j>>2]=0;while(1){if((c[j>>2]|0)>=(b[N>>1]|0)){break}js(c[o>>2]|0,c[s>>2]|0,c[I>>2]|0,b[(c[(c[x>>2]|0)+4>>2]|0)+(c[j>>2]<<1)>>1]|0,(c[M>>2]|0)+(c[j>>2]|0)|0);c[j>>2]=(c[j>>2]|0)+1}c[H>>2]=c[M>>2]}else{c[H>>2]=(c[(c[q>>2]|0)+72>>2]|0)+1;c[H>>2]=As(c[q>>2]|0,c[s>>2]|0,-1,c[I>>2]|0,c[H>>2]|0,0)|0;if((c[H>>2]|0)<=(c[(c[q>>2]|0)+72>>2]|0)){break}c[(c[q>>2]|0)+72>>2]=c[H>>2]}}while(0);do{if((c[E>>2]|0)==0){if((c[x>>2]|0)!=0){U=(c[q>>2]|0)+72|0;T=(c[U>>2]|0)+1|0;c[U>>2]=T;c[H>>2]=T;b[D>>1]=0;T=c[o>>2]|0;U=c[M>>2]|0;g=b[N>>1]|0;f=c[H>>2]|0;e=Jt(c[o>>2]|0,c[x>>2]|0)|0;Vo(T,48,U,g,f,e,b[N>>1]|0)|0;To(c[o>>2]|0,107,c[t>>2]|0,c[H>>2]|0)|0;break}else{b[D>>1]=1;To(c[o>>2]|0,125,c[G>>2]|0,c[H>>2]|0)|0;break}}else{b[D>>1]=b[N>>1]|0;c[m>>2]=Le(c[v>>2]|0,(c[R>>2]|0)+2|0)|0;if((c[m>>2]|0)==0){pu(c[L>>2]|0);break a}_D(c[m>>2]|0,1,(c[R>>2]|0)+1|0)|0;a[(c[m>>2]|0)+((c[R>>2]|0)+1)>>0]=0;if((c[Q>>2]|0)>=0){a[(c[m>>2]|0)+((c[Q>>2]|0)-(c[I>>2]|0))>>0]=0}if((c[Q+4>>2]|0)>=0){a[(c[m>>2]|0)+((c[Q+4>>2]|0)-(c[I>>2]|0))>>0]=0}if((c[P>>2]|0)!=0){Ze(c[o>>2]|0,c[P>>2]|0)}c[K>>2]=$o(c[o>>2]|0,16)|0}}while(0);pu(c[L>>2]|0);if((c[E>>2]|0)!=0){c[F>>2]=fs(c[o>>2]|0)|0;To(c[o>>2]|0,16,0,c[F>>2]|0)|0;mp(c[o>>2]|0,c[K>>2]|0)}if((c[w>>2]|0)==0){Mt(c[q>>2]|0,c[s>>2]|0,53,c[I>>2]|0,c[m>>2]|0,z,h)|0}do{if((c[E>>2]|0)==0){I=c[o>>2]|0;if((c[x>>2]|0)!=0){c[u>>2]=rr(I,105,c[t>>2]|0)|0;To(c[o>>2]|0,98,c[t>>2]|0,c[H>>2]|0)|0;break}else{c[u>>2]=Wo(I,126,c[G>>2]|0,0,c[H>>2]|0)|0;break}}else{if((a[(c[m>>2]|0)+((c[z>>2]|0)-(c[I>>2]|0))>>0]|0)==0){break}Re(c[o>>2]|0,65,c[z>>2]|0,c[F>>2]|0,c[H>>2]|0,b[D>>1]|0)|0}}while(0);if((a[(c[s>>2]|0)+44>>0]&16|0)!=0){c[C>>2]=zp(c[v>>2]|0,c[s>>2]|0)|0;du(c[q>>2]|0,c[s>>2]|0);Vo(c[o>>2]|0,15,0,1,c[H>>2]|0,c[C>>2]|0,-10)|0;Se(c[o>>2]|0,2);Ap(c[q>>2]|0)}else{c[B>>2]=(d[(c[q>>2]|0)+18>>0]|0)==0&1;Nv(c[q>>2]|0,c[s>>2]|0,c[A>>2]|0,c[z>>2]|0,c[h>>2]|0,c[H>>2]|0,b[D>>1]|0,c[B>>2]&255,10,c[E>>2]&255)}do{if((c[E>>2]|0)==0){A=c[o>>2]|0;if((c[x>>2]|0)!=0){To(A,9,c[t>>2]|0,(c[u>>2]|0)+1|0)|0;mp(c[o>>2]|0,c[u>>2]|0);break}else{To(A,16,0,c[u>>2]|0)|0;mp(c[o>>2]|0,c[u>>2]|0);break}}else{cs(c[o>>2]|0,c[F>>2]|0)}}while(0);if((c[w>>2]|0)!=0){break}if((a[(c[s>>2]|0)+44>>0]&16|0)!=0){break}if((c[x>>2]|0)==0){rr(c[o>>2]|0,58,c[z>>2]|0)|0}c[j>>2]=0;c[r>>2]=c[(c[s>>2]|0)+8>>2];while(1){if((c[r>>2]|0)==0){break c}rr(c[o>>2]|0,58,(c[h>>2]|0)+(c[j>>2]|0)|0)|0;c[j>>2]=(c[j>>2]|0)+1;c[r>>2]=c[(c[r>>2]|0)+20>>2]}}}while(0);if((d[(c[q>>2]|0)+18>>0]|0)==0?(c[(c[q>>2]|0)+412>>2]|0)==0:0){hu(c[q>>2]|0)}if(((c[(c[v>>2]|0)+24>>2]&128|0)!=0?(a[(c[q>>2]|0)+18>>0]|0)==0:0)?(c[(c[q>>2]|0)+412>>2]|0)==0:0){To(c[o>>2]|0,35,c[p>>2]|0,1)|0;ut(c[o>>2]|0,1);vt(c[o>>2]|0,0,0,24448,0)|0}}}}}while(0);Qw(y);gn(c[v>>2]|0,c[k>>2]|0);hn(c[v>>2]|0,c[l>>2]|0);Wb(c[v>>2]|0,c[m>>2]|0);i=n;return}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;h=e;f=e+16|0;j=e+12|0;g=e+8|0;k=e+4|0;c[f>>2]=a;c[j>>2]=b;c[g>>2]=d;c[k>>2]=c[(c[c[f>>2]>>2]|0)+96>>2];if((c[j>>2]|0)==0){i=e;return}if((c[c[j>>2]>>2]|0)<=(c[k>>2]|0)){i=e;return}a=c[f>>2]|0;c[h>>2]=c[g>>2];Ne(a,24424,h);i=e;return}function ao(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0;D=i;i=i+256|0;ma=D;u=D+244|0;p=D+240|0;o=D+236|0;v=D+232|0;I=D+228|0;B=D+224|0;W=D+220|0;s=D+216|0;m=D+212|0;da=D+208|0;x=D+204|0;t=D+200|0;y=D+196|0;ca=D+192|0;fa=D+188|0;l=D+184|0;w=D+180|0;n=D+176|0;L=D+172|0;q=D+168|0;A=D+164|0;aa=D+252|0;V=D+251|0;H=D+250|0;ba=D+160|0;r=D+152|0;ja=D+120|0;ka=D+112|0;P=D+108|0;Q=D+104|0;z=D+100|0;F=D+96|0;U=D+92|0;O=D+88|0;X=D+84|0;_=D+80|0;E=D+76|0;N=D+72|0;ea=D+64|0;C=D+56|0;R=D+52|0;K=D+48|0;T=D+44|0;Z=D+40|0;$=D+36|0;M=D+32|0;na=D+28|0;la=D+24|0;ia=D+20|0;ha=D+248|0;ga=D+16|0;Y=D+12|0;S=D+8|0;G=D+4|0;c[u>>2]=f;c[p>>2]=g;c[o>>2]=h;c[v>>2]=j;c[I>>2]=k;c[m>>2]=0;c[L>>2]=0;c[q>>2]=0;c[ba>>2]=0;c[E>>2]=0;c[N>>2]=0;c[C>>2]=0;c[Z>>2]=0;c[$>>2]=0;c[M>>2]=0;c[r+0>>2]=0;c[r+4>>2]=0;c[n>>2]=c[c[u>>2]>>2];if((c[(c[u>>2]|0)+64>>2]|0)!=0){Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}if((d[(c[n>>2]|0)+64>>0]|0)!=0){Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}c[s>>2]=mt(c[u>>2]|0,c[p>>2]|0)|0;if((c[s>>2]|0)==0){Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}c[ka>>2]=Qe(c[c[u>>2]>>2]|0,c[(c[s>>2]|0)+68>>2]|0)|0;c[O>>2]=Ut(c[u>>2]|0,c[s>>2]|0,110,c[o>>2]|0,X)|0;c[U>>2]=(c[(c[s>>2]|0)+12>>2]|0)!=0&1;if((yp(c[u>>2]|0,c[s>>2]|0)|0)!=0){Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}if((Vt(c[u>>2]|0,c[s>>2]|0,c[X>>2]|0)|0)!=0){Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}f=(c[u>>2]|0)+68|0;j=c[f>>2]|0;c[f>>2]=j+1;c[l>>2]=j;c[fa>>2]=j;c[(c[p>>2]|0)+48>>2]=j;c[w>>2]=(c[l>>2]|0)+1;if((a[(c[s>>2]|0)+44>>0]&32|0)==0){k=0}else{k=Gr(c[s>>2]|0)|0}c[y>>2]=k;c[ca>>2]=0;c[t>>2]=c[(c[s>>2]|0)+8>>2];while(1){if((c[t>>2]|0)==0){break}if((a[(c[t>>2]|0)+55>>0]&3|0)==2?(c[y>>2]|0)!=0:0){c[l>>2]=c[(c[u>>2]|0)+68>>2];c[(c[p>>2]|0)+48>>2]=c[l>>2]}j=(c[u>>2]|0)+68|0;c[j>>2]=(c[j>>2]|0)+1;c[t>>2]=c[(c[t>>2]|0)+20>>2];c[ca>>2]=(c[ca>>2]|0)+1}c[q>>2]=Le(c[n>>2]|0,((b[(c[s>>2]|0)+38>>1]|0)+(c[ca>>2]|0)<<2)+(c[ca>>2]|0)+2|0)|0;if((c[q>>2]|0)==0){Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}c[L>>2]=(c[q>>2]|0)+(b[(c[s>>2]|0)+38>>1]<<2);c[A>>2]=(c[L>>2]|0)+(c[ca>>2]<<2);_D(c[A>>2]|0,1,(c[ca>>2]|0)+1|0)|0;a[(c[A>>2]|0)+((c[ca>>2]|0)+1)>>0]=0;c[B>>2]=0;while(1){if((c[B>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}c[(c[q>>2]|0)+(c[B>>2]<<2)>>2]=-1;c[B>>2]=(c[B>>2]|0)+1}c[ja+0>>2]=0;c[ja+4>>2]=0;c[ja+8>>2]=0;c[ja+12>>2]=0;c[ja+16>>2]=0;c[ja+20>>2]=0;c[ja+24>>2]=0;c[ja+28>>2]=0;c[ja>>2]=c[u>>2];c[ja+4>>2]=c[p>>2];a[aa>>0]=0;a[V>>0]=0;c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[c[o>>2]>>2]|0)){J=42;break}if((eq(ja,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[B>>2]|0)*20|0)>>2]|0)|0)!=0){J=193;break}c[W>>2]=0;while(1){if((c[W>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}j=(vc(c[(c[(c[s>>2]|0)+4>>2]|0)+((c[W>>2]|0)*24|0)>>2]|0,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[B>>2]|0)*20|0)+4>>2]|0)|0)==0;k=c[W>>2]|0;if(j){J=24;break}c[W>>2]=k+1}if((J|0)==24){J=0;if((k|0)!=(b[(c[s>>2]|0)+36>>1]|0)){if((c[y>>2]|0)!=0?(a[(c[(c[s>>2]|0)+4>>2]|0)+((c[W>>2]|0)*24|0)+23>>0]&1|0)!=0:0){a[aa>>0]=1}}else{a[V>>0]=1;c[ba>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+((c[B>>2]|0)*20|0)>>2]}c[(c[q>>2]|0)+(c[W>>2]<<2)>>2]=c[B>>2]}if((c[W>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){if((c[y>>2]|0)!=0){J=35;break}if((Iq(c[(c[(c[o>>2]|0)+4>>2]|0)+((c[B>>2]|0)*20|0)+4>>2]|0)|0)==0){J=35;break}c[W>>2]=-1;a[V>>0]=1;c[ba>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+((c[B>>2]|0)*20|0)>>2]}if((c[W>>2]|0)<0){k=17192}else{k=c[(c[(c[s>>2]|0)+4>>2]|0)+((c[W>>2]|0)*24|0)>>2]|0}c[na>>2]=Oo(c[u>>2]|0,23,c[c[s>>2]>>2]|0,k,c[(c[(c[n>>2]|0)+16>>2]|0)+(c[ka>>2]<<4)>>2]|0)|0;if((c[na>>2]|0)==1){J=193;break}if((c[na>>2]|0)==2){c[(c[q>>2]|0)+(c[W>>2]<<2)>>2]=-1}c[B>>2]=(c[B>>2]|0)+1}if((J|0)==35){j=c[u>>2]|0;c[ma>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+((c[B>>2]|0)*20|0)+4>>2];Ne(j,24376,ma);a[(c[u>>2]|0)+17>>0]=1;Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}else if((J|0)==42){a[H>>0]=(d[V>>0]|0)+(d[aa>>0]|0);j=(c[p>>2]|0)+64|0;c[j>>2]=0;c[j+4>>2]=0;c[Q>>2]=Lv(c[u>>2]|0,c[s>>2]|0,c[q>>2]|0,d[H>>0]|0)|0;c[W>>2]=0;c[t>>2]=c[(c[s>>2]|0)+8>>2];while(1){if((c[t>>2]|0)==0){break}a:do{if((((d[H>>0]|0)==0?(c[Q>>2]|0)==0:0)?(c[(c[t>>2]|0)+36>>2]|0)==0:0)?(c[t>>2]|0)!=(c[y>>2]|0):0){c[la>>2]=0;c[B>>2]=0;while(1){if((c[B>>2]|0)>=(e[(c[t>>2]|0)+50>>1]|0)){break a}if((c[(c[q>>2]|0)+(b[(c[(c[t>>2]|0)+4>>2]|0)+(c[B>>2]<<1)>>1]<<2)>>2]|0)>=0){break}c[B>>2]=(c[B>>2]|0)+1}f=(c[u>>2]|0)+72|0;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[la>>2]=j}else{J=48}}while(0);if((J|0)==48){J=0;f=(c[u>>2]|0)+72|0;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[la>>2]=j}if((c[la>>2]|0)==0){a[(c[A>>2]|0)+((c[W>>2]|0)+1)>>0]=0}c[(c[L>>2]|0)+(c[W>>2]<<2)>>2]=c[la>>2];c[t>>2]=c[(c[t>>2]|0)+20>>2];c[W>>2]=(c[W>>2]|0)+1}c[x>>2]=Ro(c[u>>2]|0)|0;if((c[x>>2]|0)==0){Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}if((d[(c[u>>2]|0)+18>>0]|0)==0){Wt(c[x>>2]|0)}cp(c[u>>2]|0,1,c[ka>>2]|0);ka=c[u>>2]|0;if((a[(c[s>>2]|0)+44>>0]&16|0)!=0){Mw(ka,c[p>>2]|0,c[s>>2]|0,c[o>>2]|0,c[ba>>2]|0,c[q>>2]|0,c[v>>2]|0,c[I>>2]|0);c[v>>2]=0;c[p>>2]=0;Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}j=ka+72|0;f=(c[j>>2]|0)+1|0;c[j>>2]=f;c[$>>2]=f;f=(c[u>>2]|0)+72|0;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[K>>2]=j;c[R>>2]=j;if(!(((d[aa>>0]|0)==0?(c[O>>2]|0)==0:0)?(c[Q>>2]|0)==0:0)){c[Z>>2]=(c[(c[u>>2]|0)+72>>2]|0)+1;j=(c[u>>2]|0)+72|0;c[j>>2]=(c[j>>2]|0)+(b[(c[s>>2]|0)+38>>1]|0)}if(!(((d[H>>0]|0)==0?(c[O>>2]|0)==0:0)?(c[Q>>2]|0)==0:0)){f=(c[u>>2]|0)+72|0;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[K>>2]=j}c[T>>2]=(c[(c[u>>2]|0)+72>>2]|0)+1;j=(c[u>>2]|0)+72|0;c[j>>2]=(c[j>>2]|0)+(b[(c[s>>2]|0)+38>>1]|0);if((c[U>>2]|0)!=0){Nw(c[u>>2]|0,r,c[c[s>>2]>>2]|0)}if((c[U>>2]|0)!=0){Ow(c[u>>2]|0,c[s>>2]|0,c[v>>2]|0,c[l>>2]|0)}if((eq(ja,c[v>>2]|0)|0)!=0){Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}if((a[(c[s>>2]|0)+44>>0]&32|0)==0){Wo(c[x>>2]|0,28,0,c[$>>2]|0,c[R>>2]|0)|0;c[da>>2]=ou(c[u>>2]|0,c[p>>2]|0,c[v>>2]|0,0,0,4,c[w>>2]|0)|0;if((c[da>>2]|0)==0){Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}c[P>>2]=Pw(c[da>>2]|0,ea)|0;To(c[x>>2]|0,100,c[l>>2]|0,c[R>>2]|0)|0;if((c[P>>2]|0)==0){To(c[x>>2]|0,125,c[$>>2]|0,c[R>>2]|0)|0}pu(c[da>>2]|0)}else{b[ha>>1]=b[(c[y>>2]|0)+50>>1]|0;c[ia>>2]=(c[(c[u>>2]|0)+72>>2]|0)+1;j=(c[u>>2]|0)+72|0;c[j>>2]=(c[j>>2]|0)+(b[ha>>1]|0);j=(c[u>>2]|0)+72|0;f=(c[j>>2]|0)+1|0;c[j>>2]=f;c[M>>2]=f;f=(c[u>>2]|0)+68|0;j=c[f>>2]|0;c[f>>2]=j+1;c[E>>2]=j;To(c[x>>2]|0,28,0,c[ia>>2]|0)|0;c[ga>>2]=To(c[x>>2]|0,55,c[E>>2]|0,b[ha>>1]|0)|0;ur(c[u>>2]|0,c[y>>2]|0);c[da>>2]=ou(c[u>>2]|0,c[p>>2]|0,c[v>>2]|0,0,0,4,c[w>>2]|0)|0;if((c[da>>2]|0)==0){Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}c[P>>2]=Pw(c[da>>2]|0,ea)|0;c[B>>2]=0;while(1){if((c[B>>2]|0)>=(b[ha>>1]|0)){break}js(c[x>>2]|0,c[s>>2]|0,c[l>>2]|0,b[(c[(c[y>>2]|0)+4>>2]|0)+(c[B>>2]<<1)>>1]|0,(c[ia>>2]|0)+(c[B>>2]|0)|0);c[B>>2]=(c[B>>2]|0)+1}ja=c[x>>2]|0;if((c[P>>2]|0)!=0){Ze(ja,c[ga>>2]|0);c[N>>2]=b[ha>>1]|0;c[M>>2]=c[ia>>2]}else{h=c[ia>>2]|0;g=b[ha>>1]|0;f=c[M>>2]|0;j=Jt(c[x>>2]|0,c[y>>2]|0)|0;Vo(ja,48,h,g,f,j,b[ha>>1]|0)|0;To(c[x>>2]|0,107,c[E>>2]|0,c[M>>2]|0)|0}pu(c[da>>2]|0)}if((c[(c[n>>2]|0)+24>>2]&128|0)!=0?(c[(c[u>>2]|0)+412>>2]|0)==0:0){f=(c[u>>2]|0)+72|0;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[C>>2]=j;To(c[x>>2]|0,25,0,c[C>>2]|0)|0}c[z>>2]=fs(c[x>>2]|0)|0;if((c[U>>2]|0)==0){b:do{if((c[I>>2]|0)==5){_D(c[A>>2]|0,1,(c[ca>>2]|0)+1|0)|0}else{c[t>>2]=c[(c[s>>2]|0)+8>>2];while(1){if((c[t>>2]|0)==0){break b}if((d[(c[t>>2]|0)+54>>0]|0)==5){break}c[t>>2]=c[(c[t>>2]|0)+20>>2]}_D(c[A>>2]|0,1,(c[ca>>2]|0)+1|0)|0}}while(0);do{if((c[P>>2]|0)!=0){if((c[ea>>2]|0)>=0){a[(c[A>>2]|0)+((c[ea>>2]|0)-(c[fa>>2]|0))>>0]=0}if((c[ea+4>>2]|0)<0){break}a[(c[A>>2]|0)+((c[ea+4>>2]|0)-(c[fa>>2]|0))>>0]=0}}while(0);Mt(c[u>>2]|0,c[s>>2]|0,53,c[fa>>2]|0,c[A>>2]|0,0,0)|0}do{if((c[P>>2]|0)==0){ca=c[x>>2]|0;if((c[y>>2]|0)!=0){c[F>>2]=fs(ca)|0;To(c[x>>2]|0,105,c[E>>2]|0,c[z>>2]|0)|0;c[m>>2]=To(c[x>>2]|0,98,c[E>>2]|0,c[M>>2]|0)|0;Re(c[x>>2]|0,65,c[l>>2]|0,c[F>>2]|0,c[M>>2]|0,0)|0;break}else{c[F>>2]=Wo(ca,126,c[$>>2]|0,c[z>>2]|0,c[R>>2]|0)|0;Wo(c[x>>2]|0,67,c[l>>2]|0,c[F>>2]|0,c[R>>2]|0)|0;break}}else{if((a[(c[A>>2]|0)+((c[l>>2]|0)-(c[fa>>2]|0))>>0]|0)!=0){Re(c[x>>2]|0,65,c[l>>2]|0,c[z>>2]|0,c[M>>2]|0,c[N>>2]|0)|0}c[F>>2]=c[z>>2];To(c[x>>2]|0,76,(c[y>>2]|0)!=0?c[M>>2]|0:c[R>>2]|0,c[z>>2]|0)|0}}while(0);if((a[V>>0]|0)!=0){ys(c[u>>2]|0,c[ba>>2]|0,c[K>>2]|0);rr(c[x>>2]|0,38,c[K>>2]|0)|0}do{if((d[aa>>0]|0)==0){if((c[Q>>2]|0)!=0){J=117;break}if((c[O>>2]|0)!=0){J=117}}else{J=117}}while(0);do{if((J|0)==117){if((c[Q>>2]|0)!=0){$=Qv(c[u>>2]|0,c[s>>2]|0)|0}else{$=0}c[Y>>2]=$;j=Pv(c[u>>2]|0,c[O>>2]|0,c[o>>2]|0,0,3,c[s>>2]|0,c[I>>2]|0)|0;c[Y>>2]=c[Y>>2]|j;c[B>>2]=0;while(1){if((c[B>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}do{if((c[Y>>2]|0)==-1){J=125}else{if((c[B>>2]|0)<32?(c[Y>>2]&1<>2]|0)!=0:0){J=125;break}if((a[(c[(c[s>>2]|0)+4>>2]|0)+((c[B>>2]|0)*24|0)+23>>0]&1|0)!=0){J=125;break}To(c[x>>2]|0,28,0,(c[Z>>2]|0)+(c[B>>2]|0)|0)|0}}while(0);if((J|0)==125){J=0;js(c[x>>2]|0,c[s>>2]|0,c[l>>2]|0,c[B>>2]|0,(c[Z>>2]|0)+(c[B>>2]|0)|0)}c[B>>2]=(c[B>>2]|0)+1}if((d[V>>0]|0)!=0){break}if((c[y>>2]|0)!=0){break}To(c[x>>2]|0,33,c[R>>2]|0,c[K>>2]|0)|0}}while(0);c[_>>2]=Pv(c[u>>2]|0,c[O>>2]|0,c[o>>2]|0,1,1,c[s>>2]|0,c[I>>2]|0)|0;c[B>>2]=0;while(1){if((c[B>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}c:do{if((c[B>>2]|0)==(b[(c[s>>2]|0)+36>>1]|0)){To(c[x>>2]|0,28,0,(c[T>>2]|0)+(c[B>>2]|0)|0)|0}else{c[W>>2]=c[(c[q>>2]|0)+(c[B>>2]<<2)>>2];if((c[W>>2]|0)>=0){ys(c[u>>2]|0,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[W>>2]|0)*20|0)>>2]|0,(c[T>>2]|0)+(c[B>>2]|0)|0);break}do{if(0!=(c[X>>2]&1|0)){if((c[B>>2]|0)>31){break}if((c[_>>2]&1<>2]|0)!=0){break}To(c[x>>2]|0,28,0,(c[T>>2]|0)+(c[B>>2]|0)|0)|0;break c}}while(0);js(c[x>>2]|0,c[s>>2]|0,c[l>>2]|0,c[B>>2]|0,(c[T>>2]|0)+(c[B>>2]|0)|0)}}while(0);c[B>>2]=(c[B>>2]|0)+1}d:do{if((c[X>>2]&1|0)!=0){$t(c[x>>2]|0,c[s>>2]|0,c[T>>2]|0);au(c[u>>2]|0,c[O>>2]|0,110,c[o>>2]|0,1,c[s>>2]|0,c[R>>2]|0,c[I>>2]|0,c[F>>2]|0);X=c[x>>2]|0;W=c[l>>2]|0;V=c[F>>2]|0;if((c[y>>2]|0)!=0){Re(X,65,W,V,c[M>>2]|0,c[N>>2]|0)|0}else{Wo(X,67,W,V,c[R>>2]|0)|0}c[B>>2]=0;while(1){if((c[B>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break d}do{if((c[(c[q>>2]|0)+(c[B>>2]<<2)>>2]|0)<0){if((c[B>>2]|0)==(b[(c[s>>2]|0)+36>>1]|0)){break}js(c[x>>2]|0,c[s>>2]|0,c[l>>2]|0,c[B>>2]|0,(c[T>>2]|0)+(c[B>>2]|0)|0)}}while(0);c[B>>2]=(c[B>>2]|0)+1}}}while(0);do{if((c[U>>2]|0)==0){c[S>>2]=0;c[G>>2]=0;eu(c[u>>2]|0,c[s>>2]|0,c[L>>2]|0,c[l>>2]|0,c[w>>2]|0,c[K>>2]|0,c[R>>2]|0,a[H>>0]|0,c[I>>2]&255,c[F>>2]|0,G);if((c[Q>>2]|0)!=0){fu(c[u>>2]|0,c[s>>2]|0,c[R>>2]|0,0,c[q>>2]|0,d[H>>0]|0)}if(!((c[G>>2]|0)==0?(d[H>>0]|0)==0:0)){J=158}do{if((J|0)==158){U=c[x>>2]|0;T=c[l>>2]|0;if((c[y>>2]|0)!=0){c[S>>2]=Re(U,65,T,0,c[M>>2]|0,c[N>>2]|0)|0;break}else{c[S>>2]=Wo(U,67,T,0,c[R>>2]|0)|0;break}}}while(0);Ov(c[u>>2]|0,c[s>>2]|0,c[l>>2]|0,c[w>>2]|0,c[L>>2]|0);do{if((c[Q>>2]|0)==0){if((d[H>>0]|0)!=0){J=164;break}if((c[y>>2]|0)!=0){J=164}}else{J=164}}while(0);if((J|0)==164){To(c[x>>2]|0,74,c[l>>2]|0,0)|0}if(!((c[G>>2]|0)==0?(d[H>>0]|0)==0:0)){mp(c[x>>2]|0,c[S>>2]|0)}if((c[Q>>2]|0)!=0){fu(c[u>>2]|0,c[s>>2]|0,0,c[K>>2]|0,c[q>>2]|0,d[H>>0]|0)}gu(c[u>>2]|0,c[s>>2]|0,c[l>>2]|0,c[w>>2]|0,c[K>>2]|0,c[L>>2]|0,1,0,0);if((c[Q>>2]|0)==0){break}Rv(c[u>>2]|0,c[s>>2]|0,c[o>>2]|0,c[R>>2]|0,c[q>>2]|0,d[H>>0]|0)}}while(0);do{if((c[(c[n>>2]|0)+24>>2]&128|0)!=0){if((c[(c[u>>2]|0)+412>>2]|0)!=0){break}To(c[x>>2]|0,37,c[C>>2]|0,1)|0}}while(0);au(c[u>>2]|0,c[O>>2]|0,110,c[o>>2]|0,2,c[s>>2]|0,c[R>>2]|0,c[I>>2]|0,c[F>>2]|0);do{if((c[P>>2]|0)==0){G=c[x>>2]|0;F=c[F>>2]|0;if((c[y>>2]|0)!=0){cs(G,F);To(c[x>>2]|0,9,c[E>>2]|0,c[m>>2]|0)|0;break}else{To(G,16,0,F)|0;break}}}while(0);cs(c[x>>2]|0,c[z>>2]|0);c[B>>2]=0;c[t>>2]=c[(c[s>>2]|0)+8>>2];while(1){if((c[t>>2]|0)==0){break}if((a[(c[A>>2]|0)+((c[B>>2]|0)+1)>>0]|0)!=0){To(c[x>>2]|0,58,(c[w>>2]|0)+(c[B>>2]|0)|0,0)|0}c[t>>2]=c[(c[t>>2]|0)+20>>2];c[B>>2]=(c[B>>2]|0)+1}if((c[l>>2]|0)<(c[w>>2]|0)){To(c[x>>2]|0,58,c[l>>2]|0,0)|0}do{if((d[(c[u>>2]|0)+18>>0]|0)==0){if((c[(c[u>>2]|0)+412>>2]|0)!=0){break}hu(c[u>>2]|0)}}while(0);if((c[(c[n>>2]|0)+24>>2]&128|0)==0){Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}if((c[(c[u>>2]|0)+412>>2]|0)!=0){Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}if((a[(c[u>>2]|0)+18>>0]|0)!=0){Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}To(c[x>>2]|0,35,c[C>>2]|0,1)|0;ut(c[x>>2]|0,1);vt(c[x>>2]|0,0,0,24400,0)|0;Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}else if((J|0)==193){Qw(r);j=c[n>>2]|0;f=c[q>>2]|0;Wb(j,f);f=c[n>>2]|0;j=c[p>>2]|0;gn(f,j);j=c[n>>2]|0;f=c[o>>2]|0;dn(j,f);f=c[n>>2]|0;j=c[v>>2]|0;hn(f,j);i=D;return}} - - - -function Ms(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+16|0;o=h+12|0;m=h+8|0;n=h+20|0;k=h+4|0;l=h;c[j>>2]=b;c[o>>2]=e;c[m>>2]=f;a[n>>0]=g;c[k>>2]=c[(c[j>>2]|0)+316>>2];c[o>>2]=kq(c[c[j>>2]>>2]|0,c[o>>2]|0,0)|0;c[k>>2]=Rn(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0)|0;if((c[k>>2]|0)==0){b=c[k>>2]|0;o=c[j>>2]|0;o=o+316|0;c[o>>2]=b;i=h;return}c[l>>2]=(c[(c[k>>2]|0)+4>>2]|0)+(((c[c[k>>2]>>2]|0)-1|0)*20|0);c[(c[l>>2]|0)+16>>2]=c[m>>2];b=(c[l>>2]|0)+13|0;a[b>>0]=a[b>>0]&-5|((d[n>>0]|0)&1)<<2&255;b=c[k>>2]|0;o=c[j>>2]|0;o=o+316|0;c[o>>2]=b;i=h;return}function Ns(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;e=f+8|0;g=f+4|0;h=f;c[g>>2]=b;c[h>>2]=d;if((c[h>>2]|0)<0){c[h>>2]=(c[(c[g>>2]|0)+32>>2]|0)-1}if((a[(c[c[g>>2]>>2]|0)+64>>0]|0)!=0){c[e>>2]=19216;b=c[e>>2]|0;i=f;return b|0}else{c[e>>2]=(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*20|0);b=c[e>>2]|0;i=f;return b|0}return 0}function Os(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;d=e;c[f>>2]=a;c[g>>2]=b;c[d+0>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+20>>2]=c[g>>2];c[d>>2]=43;c[d+4>>2]=44;bq(d,c[f>>2]|0)|0;i=e;return c[d+20>>2]|0}function Ps(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;h=f+4|0;j=f;c[h>>2]=a;c[j>>2]=b;if((c[(c[h>>2]|0)+20>>2]|0)==3?(c[(c[j>>2]|0)+4>>2]&1|0)!=0:0){c[(c[h>>2]|0)+20>>2]=0;c[g>>2]=2}else{e=4}a:do{if((e|0)==4){switch(d[c[j>>2]>>0]|0|0){case 156:case 155:case 154:case 27:{break};case 153:{e=5;break};default:{c[g>>2]=0;break a}}do{if((e|0)==5){if((c[(c[h>>2]|0)+20>>2]|0)!=2?(c[(c[j>>2]|0)+4>>2]&524288|0)==0:0){break}c[g>>2]=0;break a}}while(0);c[(c[h>>2]|0)+20>>2]=0;c[g>>2]=2}}while(0);i=f;return c[g>>2]|0}function Qs(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d+4|0;c[e>>2]=a;c[d>>2]=b;c[(c[e>>2]|0)+20>>2]=0;i=d;return 2}function Rs(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=b;c[g>>2]=d;c[f>>2]=Le(ps(c[h>>2]|0)|0,8)|0;if((c[f>>2]|0)==0){h=c[f>>2]|0;i=e;return h|0}h=c[f>>2]|0;b=c[g>>2]|0;a[h+0>>0]=a[b+0>>0]|0;a[h+1>>0]=a[b+1>>0]|0;a[h+2>>0]=a[b+2>>0]|0;a[h+3>>0]=a[b+3>>0]|0;a[h+4>>0]=a[b+4>>0]|0;a[h+5>>0]=a[b+5>>0]|0;a[h+6>>0]=a[b+6>>0]|0;a[h+7>>0]=a[b+7>>0]|0;h=c[f>>2]|0;i=e;return h|0}function Ss(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;g=e+8|0;h=e+4|0;f=e;c[j>>2]=b;c[g>>2]=d;c[h>>2]=0;c[f>>2]=(c[j>>2]|0)+116;while(1){if((c[h>>2]|0)>=10){break}if((c[(c[f>>2]|0)+12>>2]|0)==(c[g>>2]|0)){a[(c[f>>2]|0)+6>>0]=0}c[h>>2]=(c[h>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+20}i=e;return}function Ts(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=i;i=i+32|0;k=p+28|0;n=p+24|0;o=p+20|0;h=p+16|0;q=p+12|0;r=p+8|0;l=p+4|0;m=p;c[k>>2]=d;c[n>>2]=e;c[o>>2]=f;c[h>>2]=g;if((b[(c[c[k>>2]>>2]|0)+60>>1]&2|0)!=0){i=p;return}c[q>>2]=0;c[m>>2]=(c[k>>2]|0)+116;while(1){if((c[q>>2]|0)>=10){break}if((c[(c[m>>2]|0)+12>>2]|0)==0){j=5;break}c[q>>2]=(c[q>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+20}if((j|0)==5){c[(c[m>>2]|0)+8>>2]=c[(c[k>>2]|0)+100>>2];c[c[m>>2]>>2]=c[n>>2];b[(c[m>>2]|0)+4>>1]=c[o>>2];c[(c[m>>2]|0)+12>>2]=c[h>>2];a[(c[m>>2]|0)+6>>0]=0;e=(c[k>>2]|0)+104|0;d=c[e>>2]|0;c[e>>2]=d+1;c[(c[m>>2]|0)+16>>2]=d;i=p;return}c[r>>2]=2147483647;c[l>>2]=-1;c[q>>2]=0;c[m>>2]=(c[k>>2]|0)+116;while(1){if((c[q>>2]|0)>=10){break}if((c[(c[m>>2]|0)+16>>2]|0)<(c[r>>2]|0)){c[l>>2]=c[q>>2];c[r>>2]=c[(c[m>>2]|0)+16>>2]}c[q>>2]=(c[q>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+20}if((c[l>>2]|0)<0){i=p;return}c[m>>2]=(c[k>>2]|0)+116+((c[l>>2]|0)*20|0);c[(c[m>>2]|0)+8>>2]=c[(c[k>>2]|0)+100>>2];c[c[m>>2]>>2]=c[n>>2];b[(c[m>>2]|0)+4>>1]=c[o>>2];c[(c[m>>2]|0)+12>>2]=c[h>>2];a[(c[m>>2]|0)+6>>0]=0;e=(c[k>>2]|0)+104|0;d=c[e>>2]|0;c[e>>2]=d+1;c[(c[m>>2]|0)+16>>2]=d;i=p;return}function Us(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+6|0;j=e;g=e+5|0;h=e+4|0;c[j>>2]=b;a[g>>0]=d;a[h>>0]=Lp(c[j>>2]|0)|0;if((a[h>>0]|0)!=0?(a[g>>0]|0)!=0:0){if((a[h>>0]|0)<99?(a[g>>0]|0)<99:0){a[f>>0]=98;j=a[f>>0]|0;i=e;return j|0}a[f>>0]=99;j=a[f>>0]|0;i=e;return j|0}if((a[h>>0]|0)==0?(a[g>>0]|0)==0:0){a[f>>0]=98;j=a[f>>0]|0;i=e;return j|0}a[f>>0]=(a[h>>0]|0)+(a[g>>0]|0);j=a[f>>0]|0;i=e;return j|0}function Vs(e){e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;f=g+16|0;h=g+12|0;l=g+8|0;j=g+4|0;k=g;c[h>>2]=e;do{if((c[h>>2]|0)!=0){if((c[(c[h>>2]|0)+52>>2]|0)!=0){c[f>>2]=0;break}if((b[(c[h>>2]|0)+6>>1]&5|0)!=0){c[f>>2]=0;break}if((c[(c[h>>2]|0)+60>>2]|0)!=0){c[f>>2]=0;break}if((c[(c[h>>2]|0)+36>>2]|0)!=0){c[f>>2]=0;break}c[l>>2]=c[(c[h>>2]|0)+32>>2];if((c[c[l>>2]>>2]|0)!=1){c[f>>2]=0;break}if((c[(c[l>>2]|0)+28>>2]|0)!=0){c[f>>2]=0;break}c[k>>2]=c[(c[l>>2]|0)+24>>2];if((c[k>>2]|0)==0){c[f>>2]=0;break}if((a[(c[k>>2]|0)+44>>0]&16|0)!=0){c[f>>2]=0;break}c[j>>2]=c[c[h>>2]>>2];if((c[c[j>>2]>>2]|0)!=1){c[f>>2]=0;break}if((d[c[c[(c[j>>2]|0)+4>>2]>>2]>>0]|0|0)!=154){c[f>>2]=0;break}else{c[f>>2]=1;break}}else{c[f>>2]=0}}while(0);i=g;return c[f>>2]|0}function Ws(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+4|0;j=f;g=f+9|0;h=f+8|0;c[j>>2]=b;a[g>>0]=d;a[h>>0]=xs(c[j>>2]|0)|0;d=a[h>>0]|0;if((d|0)==97){c[e>>2]=(a[g>>0]|0)==97&1}else if((d|0)==98){c[e>>2]=1}else{c[e>>2]=(a[g>>0]|0)>=99&1}i=f;return c[e>>2]|0}function Xs(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g+8|0;k=g+4|0;h=g;f=g+12|0;c[j>>2]=b;c[k>>2]=d;c[h>>2]=e;a[f>>0]=Lp(c[k>>2]|0)|0;b=(Us(c[j>>2]|0,a[f>>0]|0)|0)&255;a[f>>0]=b|c[h>>2]&255;i=g;return a[f>>0]|0}function Ys(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Os(c[d>>2]|0,3)|0;i=b;return a|0}function Zs(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;f=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;h=g;c[j>>2]=a;c[k>>2]=d;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(e[(c[k>>2]|0)+52>>1]|0)){d=7;break}c[h>>2]=c[(c[(c[k>>2]|0)+32>>2]|0)+(c[l>>2]<<2)>>2];if((b[(c[(c[k>>2]|0)+4>>2]|0)+(c[l>>2]<<1)>>1]|0)>=0?0==(vc(c[h>>2]|0,c[j>>2]|0)|0):0){d=5;break}c[l>>2]=(c[l>>2]|0)+1}if((d|0)==5){c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}else if((d|0)==7){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}return 0}function _s(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+160|0;f=h;k=h+28|0;o=h+20|0;j=h+16|0;m=h+12|0;l=h+8|0;n=h+4|0;g=h+32|0;c[k>>2]=b;c[h+24>>2]=d;c[o>>2]=e;c[j>>2]=Bd(c[c[o>>2]>>2]|0)|0;c[m>>2]=je(c[k>>2]|0)|0;c[n>>2]=0;if((c[j>>2]|0)==0){c[j>>2]=1472}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[m>>2]|0)+20>>2]|0)){break}c[n>>2]=(c[(c[m>>2]|0)+16>>2]|0)+(c[l>>2]<<4);if((c[(c[n>>2]|0)+4>>2]|0)!=0?(vc(c[c[n>>2]>>2]|0,c[j>>2]|0)|0)==0:0){break}c[l>>2]=(c[l>>2]|0)+1}do{if((c[l>>2]|0)>=(c[(c[m>>2]|0)+20>>2]|0)){c[f>>2]=c[j>>2];qc(128,g,19296,f)|0}else{if((c[l>>2]|0)<2){c[f>>2]=c[j>>2];qc(128,g,19320,f)|0;break}if((a[(c[m>>2]|0)+62>>0]|0)==0){qc(128,g,19352,f)|0;break}if((Qc(c[(c[n>>2]|0)+4>>2]|0)|0)==0?(Mk(c[(c[n>>2]|0)+4>>2]|0)|0)==0:0){Ak(c[(c[n>>2]|0)+4>>2]|0)|0;c[(c[n>>2]|0)+4>>2]=0;c[(c[n>>2]|0)+12>>2]=0;$c(c[m>>2]|0);i=h;return}c[f>>2]=c[j>>2];qc(128,g,19400,f)|0}}while(0);Pd(c[k>>2]|0,g,-1);i=h;return}function $s(a,e,f,g,h,j,k){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;y=i;i=i+80|0;q=y+76|0;p=y+72|0;o=y+68|0;l=y+64|0;r=y+60|0;s=y+56|0;t=y+52|0;v=y+48|0;z=y+16|0;w=y+12|0;x=y+8|0;n=y+4|0;u=y;c[q>>2]=a;c[p>>2]=e;c[o>>2]=f;c[l>>2]=g;c[r>>2]=h;c[s>>2]=j;c[t>>2]=k;c[x>>2]=c[c[q>>2]>>2];c[z+0>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;c[z+20>>2]=0;c[z+24>>2]=0;c[z+28>>2]=0;c[z>>2]=c[q>>2];a=at(z,c[r>>2]|0)|0;c[v>>2]=a;do{if((0==(a|0)?(a=at(z,c[s>>2]|0)|0,c[v>>2]=a,0==(a|0)):0)?(a=at(z,c[t>>2]|0)|0,c[v>>2]=a,0==(a|0)):0){if((c[l>>2]|0)!=0){if((d[c[l>>2]>>0]|0)==97){c[u>>2]=c[(c[l>>2]|0)+8>>2]}else{c[u>>2]=0}c[v>>2]=Oo(c[q>>2]|0,c[p>>2]|0,c[u>>2]|0,0,0)|0;if((c[v>>2]|0)!=0){break}}c[w>>2]=Ro(c[q>>2]|0)|0;c[n>>2]=is(c[q>>2]|0,4)|0;ys(c[q>>2]|0,c[r>>2]|0,c[n>>2]|0);ys(c[q>>2]|0,c[s>>2]|0,(c[n>>2]|0)+1|0);ys(c[q>>2]|0,c[t>>2]|0,(c[n>>2]|0)+2|0);if((c[w>>2]|0)!=0){Wo(c[w>>2]|0,1,0,(c[n>>2]|0)+3-(b[c[o>>2]>>1]|0)|0,(c[n>>2]|0)+3|0)|0;Se(c[w>>2]|0,b[c[o>>2]>>1]&255);Ye(c[w>>2]|0,-1,c[o>>2]|0,-5);rr(c[w>>2]|0,139,(c[p>>2]|0)==24&1)|0}}else{m=4}}while(0);if((m|0)==4){a=(c[q>>2]|0)+64|0;c[a>>2]=(c[a>>2]|0)+1}hn(c[x>>2]|0,c[r>>2]|0);hn(c[x>>2]|0,c[s>>2]|0);hn(c[x>>2]|0,c[t>>2]|0);i=y;return}function at(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;g=i;i=i+16|0;j=g+8|0;h=g+4|0;f=g;c[j>>2]=b;c[h>>2]=e;c[f>>2]=0;do{if((c[h>>2]|0)!=0){if((d[c[h>>2]>>0]|0|0)!=27){c[f>>2]=eq(c[j>>2]|0,c[h>>2]|0)|0;break}else{a[c[h>>2]>>0]=97;break}}}while(0);i=g;return c[f>>2]|0}function bt(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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=i;i=i+80|0;j=k;l=k+68|0;z=k+60|0;x=k+56|0;n=k+52|0;o=k+48|0;p=k+44|0;u=k+40|0;t=k+36|0;m=k+32|0;h=k+28|0;g=k+24|0;r=k+20|0;s=k+16|0;y=k+12|0;q=k+8|0;v=k+4|0;c[l>>2]=b;c[k+64>>2]=e;c[z>>2]=f;c[n>>2]=0;c[o>>2]=je(c[l>>2]|0)|0;c[t>>2]=0;c[m>>2]=0;c[r>>2]=0;c[u>>2]=Bd(c[c[z>>2]>>2]|0)|0;c[p>>2]=Bd(c[(c[z>>2]|0)+4>>2]|0)|0;if((c[u>>2]|0)==0){c[u>>2]=1472}if((c[p>>2]|0)==0){c[p>>2]=1472}f=c[o>>2]|0;do{if((c[(c[o>>2]|0)+20>>2]|0)<((c[(c[o>>2]|0)+116>>2]|0)+2|0)){if((a[f+62>>0]|0)==0){c[r>>2]=Oe(c[o>>2]|0,19520,j)|0;break}c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[(c[o>>2]|0)+20>>2]|0)){break}c[y>>2]=c[(c[(c[o>>2]|0)+16>>2]|0)+(c[x>>2]<<4)>>2];if((vc(c[y>>2]|0,c[p>>2]|0)|0)==0){w=12;break}c[x>>2]=(c[x>>2]|0)+1}if((w|0)==12){z=c[o>>2]|0;c[j>>2]=c[p>>2];c[r>>2]=Oe(z,19568,j)|0;break}w=c[o>>2]|0;do{if((c[(c[o>>2]|0)+16>>2]|0)==((c[o>>2]|0)+448|0)){c[g>>2]=Le(w,48)|0;if((c[g>>2]|0)==0){i=k;return}else{z=c[g>>2]|0;b=c[(c[o>>2]|0)+16>>2]|0;c[z+0>>2]=c[b+0>>2];c[z+4>>2]=c[b+4>>2];c[z+8>>2]=c[b+8>>2];c[z+12>>2]=c[b+12>>2];c[z+16>>2]=c[b+16>>2];c[z+20>>2]=c[b+20>>2];c[z+24>>2]=c[b+24>>2];c[z+28>>2]=c[b+28>>2];break}}else{c[g>>2]=Pm(w,c[(c[o>>2]|0)+16>>2]|0,(c[(c[o>>2]|0)+20>>2]|0)+1<<4)|0;if((c[g>>2]|0)==0){i=k;return}}}while(0);c[(c[o>>2]|0)+16>>2]=c[g>>2];c[g>>2]=(c[(c[o>>2]|0)+16>>2]|0)+(c[(c[o>>2]|0)+20>>2]<<4);z=c[g>>2]|0;c[z+0>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[h>>2]=c[(c[o>>2]|0)+48>>2];c[n>>2]=jh(c[(c[c[o>>2]>>2]|0)+16>>2]|0,c[u>>2]|0,h,s,t,m)|0;if((c[n>>2]|0)!=0){if((c[n>>2]|0)==7){a[(c[o>>2]|0)+64>>0]=1}Pd(c[l>>2]|0,c[m>>2]|0,-1);gc(c[m>>2]|0);i=k;return}c[h>>2]=c[h>>2]|256;c[n>>2]=kh(c[s>>2]|0,c[t>>2]|0,c[o>>2]|0,(c[g>>2]|0)+4|0,0,c[h>>2]|0)|0;gc(c[t>>2]|0);z=(c[o>>2]|0)+20|0;c[z>>2]=(c[z>>2]|0)+1;if((c[n>>2]|0)!=19){if((c[n>>2]|0)==0){z=lh(c[o>>2]|0,c[(c[g>>2]|0)+4>>2]|0)|0;c[(c[g>>2]|0)+12>>2]=z;if((c[(c[g>>2]|0)+12>>2]|0)!=0){if((d[(c[(c[g>>2]|0)+12>>2]|0)+76>>0]|0)!=0?(d[(c[(c[g>>2]|0)+12>>2]|0)+77>>0]|0)!=(d[(c[(c[(c[o>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0):0){c[r>>2]=Oe(c[o>>2]|0,18648,j)|0;c[n>>2]=1}}else{c[n>>2]=7}c[q>>2]=Rb(c[(c[g>>2]|0)+4>>2]|0)|0;ct(c[q>>2]|0,d[(c[o>>2]|0)+65>>0]|0)|0;z=c[(c[g>>2]|0)+4>>2]|0;dt(z,dt(c[(c[(c[o>>2]|0)+16>>2]|0)+4>>2]|0,-1)|0)|0;et(c[(c[g>>2]|0)+4>>2]|0,3|c[(c[o>>2]|0)+24>>2]&28)|0}}else{c[n>>2]=1;c[r>>2]=Oe(c[o>>2]|0,19600,j)|0}a[(c[g>>2]|0)+8>>0]=3;z=he(c[o>>2]|0,c[p>>2]|0)|0;c[c[g>>2]>>2]=z;if((c[n>>2]|0)==0?(c[c[g>>2]>>2]|0)==0:0){c[n>>2]=7}if((c[n>>2]|0)==0){Qb(c[o>>2]|0);c[n>>2]=Ir(c[o>>2]|0,r)|0}if((c[n>>2]|0)==0){i=k;return}c[v>>2]=(c[(c[o>>2]|0)+20>>2]|0)-1;if((c[(c[(c[o>>2]|0)+16>>2]|0)+(c[v>>2]<<4)+4>>2]|0)!=0){Ak(c[(c[(c[o>>2]|0)+16>>2]|0)+(c[v>>2]<<4)+4>>2]|0)|0;c[(c[(c[o>>2]|0)+16>>2]|0)+(c[v>>2]<<4)+4>>2]=0;c[(c[(c[o>>2]|0)+16>>2]|0)+(c[v>>2]<<4)+12>>2]=0}$c(c[o>>2]|0);c[(c[o>>2]|0)+20>>2]=c[v>>2];if((c[n>>2]|0)==7|(c[n>>2]|0)==3082){a[(c[o>>2]|0)+64>>0]=1;Wb(c[o>>2]|0,c[r>>2]|0);c[r>>2]=Oe(c[o>>2]|0,5352,j)|0;break}if((c[r>>2]|0)==0){z=c[o>>2]|0;c[j>>2]=c[u>>2];c[r>>2]=Oe(z,19632,j)|0}}else{c[j>>2]=c[(c[o>>2]|0)+116>>2];c[r>>2]=Oe(f,19480,j)|0}}while(0);if((c[r>>2]|0)!=0){Pd(c[l>>2]|0,c[r>>2]|0,-1);Wb(c[o>>2]|0,c[r>>2]|0)}if((c[n>>2]|0)==0){i=k;return}$d(c[l>>2]|0,c[n>>2]|0);i=k;return}function ct(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=b;c[h>>2]=e;if(((c[h>>2]|0)>=0?(a[(c[g>>2]|0)+12>>0]|0)==0:0)?(gt(c[(c[g>>2]|0)+208>>2]|0)|0)==0:0){a[(c[g>>2]|0)+4>>0]=c[h>>2]}i=f;return d[(c[g>>2]|0)+4>>0]|0}function dt(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;k=f+4|0;j=f;c[h>>2]=a;c[k>>2]=d;if((c[h>>2]|0)==0){c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}Mc(c[h>>2]|0);if((c[k>>2]|0)>=0?(a=(c[(c[h>>2]|0)+4>>2]|0)+22|0,b[a>>1]=(e[a>>1]|0)&-5,(c[k>>2]|0)!=0):0){a=(c[(c[h>>2]|0)+4>>2]|0)+22|0;b[a>>1]=e[a>>1]|0|4}c[j>>2]=(b[(c[(c[h>>2]|0)+4>>2]|0)+22>>1]&4|0)!=0&1;c[g>>2]=c[j>>2];a=c[g>>2]|0;i=f;return a|0}function et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d+4|0;f=d;c[g>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[g>>2]|0)+4>>2];Mc(c[g>>2]|0);ft(c[c[f>>2]>>2]|0,c[e>>2]|0);i=d;return 0}function ft(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;g=i;i=i+16|0;h=g+8|0;f=g+4|0;j=g;c[h>>2]=b;c[f>>2]=e;c[j>>2]=c[f>>2]&3;if((c[j>>2]|0)==1){b=1}else{b=(d[(c[h>>2]|0)+12>>0]|0)!=0}a[(c[h>>2]|0)+7>>0]=b?1:0;if((c[j>>2]|0)==3){j=(a[(c[h>>2]|0)+12>>0]|0)!=0^1}else{j=0}a[(c[h>>2]|0)+8>>0]=j?1:0;do{if((a[(c[h>>2]|0)+7>>0]|0)==0){if((c[f>>2]&4|0)!=0){a[(c[h>>2]|0)+11>>0]=3;a[(c[h>>2]|0)+9>>0]=3;break}e=(c[f>>2]&8|0)!=0;a[(c[h>>2]|0)+11>>0]=2;j=(c[h>>2]|0)+9|0;if(e){a[j>>0]=3;break}else{a[j>>0]=2;break}}else{a[(c[h>>2]|0)+11>>0]=0;a[(c[h>>2]|0)+9>>0]=0}}while(0);a[(c[h>>2]|0)+10>>0]=a[(c[h>>2]|0)+11>>0]|0;if((a[(c[h>>2]|0)+8>>0]|0)!=0){e=(c[h>>2]|0)+10|0;a[e>>0]=d[e>>0]|32}h=(c[h>>2]|0)+20|0;j=d[h>>0]|0;if((c[f>>2]&16|0)!=0){a[h>>0]=j&-2;i=g;return}else{a[h>>0]=j|1;i=g;return}}function gt(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;if((c[e>>2]|0)==0){e=0;e=e&1;i=b;return e|0}e=(d[(c[e>>2]|0)+43>>0]|0|0)==2;e=e&1;i=b;return e|0}function ht(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;j=d+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[j>>2]=a;c[e>>2]=b;c[f>>2]=c[c[j>>2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){break}c[h>>2]=(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]<<4);do{if((c[(c[h>>2]|0)+4>>2]|0)!=0){if((c[e>>2]|0)!=0?0!=(vc(c[e>>2]|0,c[c[h>>2]>>2]|0)|0):0){break}dp(c[j>>2]|0,c[g>>2]|0)}}while(0);c[g>>2]=(c[g>>2]|0)+1}i=d;return}function it(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+48|0;e=j+36|0;d=j+32|0;n=j+28|0;g=j+24|0;o=j+20|0;f=j+16|0;m=j+12|0;l=j+8|0;k=j+4|0;h=j;c[e>>2]=a;c[d>>2]=b;c[o>>2]=c[c[e>>2]>>2];c[f>>2]=Qe(c[c[e>>2]>>2]|0,c[(c[d>>2]|0)+20>>2]|0)|0;c[n>>2]=jt(c[d>>2]|0)|0;c[m>>2]=16;c[l>>2]=c[(c[(c[o>>2]|0)+16>>2]|0)+(c[f>>2]<<4)>>2];c[k>>2]=(c[f>>2]|0)==1?14808:14832;if((c[f>>2]|0)==1){c[m>>2]=14}if((Oo(c[e>>2]|0,c[m>>2]|0,c[c[d>>2]>>2]|0,c[c[n>>2]>>2]|0,c[l>>2]|0)|0)!=0){i=j;return}if((Oo(c[e>>2]|0,9,c[k>>2]|0,0,c[l>>2]|0)|0)!=0){i=j;return}o=Ro(c[e>>2]|0)|0;c[g>>2]=o;if((o|0)==0){i=j;return}cp(c[e>>2]|0,0,c[f>>2]|0);kt(c[e>>2]|0,c[f>>2]|0);c[h>>2]=Te(c[g>>2]|0,9,19688,0)|0;Ye(c[g>>2]|0,(c[h>>2]|0)+1|0,c[c[d>>2]>>2]|0,0);Ye(c[g>>2]|0,(c[h>>2]|0)+4|0,1488,-2);So(c[e>>2]|0,c[f>>2]|0);To(c[g>>2]|0,58,0,0)|0;Vo(c[g>>2]|0,123,c[f>>2]|0,0,0,c[c[d>>2]>>2]|0,0)|0;if((c[(c[e>>2]|0)+72>>2]|0)>=3){i=j;return}c[(c[e>>2]|0)+72>>2]=3;i=j;return}function jt(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=Mb(c[(c[e>>2]|0)+4>>2]|0)|0;a=Wg((c[(c[e>>2]|0)+24>>2]|0)+8|0,c[(c[e>>2]|0)+4>>2]|0,c[d>>2]|0)|0;i=b;return a|0}function kt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=Ro(c[e>>2]|0)|0;sr(c[e>>2]|0,c[f>>2]|0,1,1,(c[f>>2]|0)==1?14808:14832);Re(c[g>>2]|0,53,0,1,c[f>>2]|0,5)|0;if((c[(c[e>>2]|0)+68>>2]|0)!=0){i=d;return}c[(c[e>>2]|0)+68>>2]=1;i=d;return}function lt(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+12|0;k=f+16|0;j=f+8|0;g=f+4|0;h=f;c[l>>2]=b;a[k>>0]=d;c[j>>2]=e;c[g>>2]=ne(c[l>>2]|0,40+(c[(c[j>>2]|0)+4>>2]|0)|0)|0;if((c[g>>2]|0)==0){l=c[g>>2]|0;i=f;return l|0}c[h>>2]=(c[g>>2]|0)+40;dE(c[h>>2]|0,c[c[j>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;c[(c[g>>2]|0)+12>>2]=c[h>>2];c[(c[g>>2]|0)+16>>2]=c[(c[j>>2]|0)+4>>2];a[c[g>>2]>>0]=a[k>>0]|0;l=c[g>>2]|0;i=f;return l|0}function mt(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;j=f+8|0;h=f+4|0;e=f;c[g>>2]=a;c[j>>2]=d;c[h>>2]=(c[j>>2]|0)+8;c[e>>2]=ap(c[g>>2]|0,0,c[h>>2]|0)|0;Ub(c[c[g>>2]>>2]|0,c[(c[h>>2]|0)+16>>2]|0);c[(c[h>>2]|0)+16>>2]=c[e>>2];if((c[e>>2]|0)!=0){j=(c[e>>2]|0)+40|0;b[j>>1]=(b[j>>1]|0)+1<<16>>16}if((Qq(c[g>>2]|0,c[h>>2]|0)|0)==0){j=c[e>>2]|0;i=f;return j|0}c[e>>2]=0;j=c[e>>2]|0;i=f;return j|0}function nt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;n=g+16|0;j=g+12|0;l=g+8|0;k=g+4|0;m=g;c[h>>2]=a;c[n>>2]=b;c[j>>2]=d;c[l>>2]=e;c[k>>2]=f;c[m>>2]=c[c[n>>2]>>2];c[c[h>>2]>>2]=c[n>>2];c[(c[h>>2]|0)+12>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[j>>2]<<4)>>2];c[(c[h>>2]|0)+4>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[j>>2]<<4)+12>>2];c[(c[h>>2]|0)+16>>2]=c[l>>2];c[(c[h>>2]|0)+20>>2]=c[k>>2];c[(c[h>>2]|0)+8>>2]=(c[j>>2]|0)==1&1;i=g;return}function ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+48|0;d=h;e=h+32|0;f=h+28|0;l=h+24|0;k=h+20|0;j=h+16|0;g=h+12|0;c[f>>2]=a;c[l>>2]=b;if((c[l>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=h;return a|0}c[j>>2]=c[(c[f>>2]|0)+12>>2];c[k>>2]=0;c[g>>2]=(c[l>>2]|0)+8;while(1){if((c[k>>2]|0)>=(c[c[l>>2]>>2]|0)){b=15;break}if((c[(c[f>>2]|0)+8>>2]|0)==0){if((c[(c[g>>2]|0)+4>>2]|0)!=0?(vc(c[(c[g>>2]|0)+4>>2]|0,c[j>>2]|0)|0)!=0:0){b=8;break}Wb(c[c[c[f>>2]>>2]>>2]|0,c[(c[g>>2]|0)+4>>2]|0);c[(c[g>>2]|0)+4>>2]=0;c[c[g>>2]>>2]=c[(c[f>>2]|0)+4>>2]}if((pt(c[f>>2]|0,c[(c[g>>2]|0)+20>>2]|0)|0)!=0){b=11;break}if((qt(c[f>>2]|0,c[(c[g>>2]|0)+44>>2]|0)|0)!=0){b=13;break}c[k>>2]=(c[k>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+72}if((b|0)==8){a=c[c[f>>2]>>2]|0;k=c[(c[f>>2]|0)+20>>2]|0;l=c[(c[g>>2]|0)+4>>2]|0;c[d>>2]=c[(c[f>>2]|0)+16>>2];c[d+4>>2]=k;c[d+8>>2]=l;Ne(a,2e4,d);c[e>>2]=1;a=c[e>>2]|0;i=h;return a|0}else if((b|0)==11){c[e>>2]=1;a=c[e>>2]|0;i=h;return a|0}else if((b|0)==13){c[e>>2]=1;a=c[e>>2]|0;i=h;return a|0}else if((b|0)==15){c[e>>2]=0;a=c[e>>2]|0;i=h;return a|0}return 0}function pt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;while(1){if((c[g>>2]|0)==0){b=20;break}if((rt(c[f>>2]|0,c[c[g>>2]>>2]|0)|0)!=0){b=4;break}if((ot(c[f>>2]|0,c[(c[g>>2]|0)+32>>2]|0)|0)!=0){b=6;break}if((qt(c[f>>2]|0,c[(c[g>>2]|0)+36>>2]|0)|0)!=0){b=8;break}if((rt(c[f>>2]|0,c[(c[g>>2]|0)+40>>2]|0)|0)!=0){b=10;break}if((qt(c[f>>2]|0,c[(c[g>>2]|0)+44>>2]|0)|0)!=0){b=12;break}if((rt(c[f>>2]|0,c[(c[g>>2]|0)+48>>2]|0)|0)!=0){b=14;break}if((qt(c[f>>2]|0,c[(c[g>>2]|0)+60>>2]|0)|0)!=0){b=16;break}if((qt(c[f>>2]|0,c[(c[g>>2]|0)+64>>2]|0)|0)!=0){b=18;break}c[g>>2]=c[(c[g>>2]|0)+52>>2]}if((b|0)==4){c[e>>2]=1}else if((b|0)==6){c[e>>2]=1}else if((b|0)==8){c[e>>2]=1}else if((b|0)==10){c[e>>2]=1}else if((b|0)==12){c[e>>2]=1}else if((b|0)==14){c[e>>2]=1}else if((b|0)==16){c[e>>2]=1}else if((b|0)==18){c[e>>2]=1}else if((b|0)==20){c[e>>2]=0}i=d;return c[e>>2]|0}function qt(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g;f=g+12|0;h=g+8|0;k=g+4|0;c[h>>2]=b;c[k>>2]=e;while(1){if((c[k>>2]|0)==0){k=16;break}if((d[c[k>>2]>>0]|0)==135){if((a[(c[c[c[h>>2]>>2]>>2]|0)+137>>0]|0)==0){k=6;break}a[c[k>>2]>>0]=101}if((c[(c[k>>2]|0)+4>>2]&16384|0)!=0){k=16;break}b=c[h>>2]|0;e=(c[k>>2]|0)+20|0;if((c[(c[k>>2]|0)+4>>2]&2048|0)!=0){if((pt(b,c[e>>2]|0)|0)!=0){k=10;break}}else{if((rt(b,c[e>>2]|0)|0)!=0){k=12;break}}if((qt(c[h>>2]|0,c[(c[k>>2]|0)+16>>2]|0)|0)!=0){k=14;break}c[k>>2]=c[(c[k>>2]|0)+12>>2]}if((k|0)==6){b=c[c[h>>2]>>2]|0;c[j>>2]=c[(c[h>>2]|0)+16>>2];Ne(b,20048,j);c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}else if((k|0)==10){c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}else if((k|0)==12){c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}else if((k|0)==14){c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}else if((k|0)==16){c[f>>2]=0;b=c[f>>2]|0;i=g;return b|0}return 0}function rt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;j=d+8|0;h=d+4|0;g=d;c[f>>2]=a;c[j>>2]=b;if((c[j>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[h>>2]=0;c[g>>2]=c[(c[j>>2]|0)+4>>2];while(1){if((c[h>>2]|0)>=(c[c[j>>2]>>2]|0)){b=8;break}if((qt(c[f>>2]|0,c[c[g>>2]>>2]|0)|0)!=0){b=6;break}c[h>>2]=(c[h>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+20}if((b|0)==6){c[e>>2]=1;a=c[e>>2]|0;i=d;return a|0}else if((b|0)==8){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}return 0}function st(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;while(1){if((c[g>>2]|0)==0){b=10;break}if((pt(c[f>>2]|0,c[(c[g>>2]|0)+8>>2]|0)|0)!=0){b=4;break}if((qt(c[f>>2]|0,c[(c[g>>2]|0)+20>>2]|0)|0)!=0){b=6;break}if((rt(c[f>>2]|0,c[(c[g>>2]|0)+24>>2]|0)|0)!=0){b=8;break}c[g>>2]=c[(c[g>>2]|0)+32>>2]}if((b|0)==4){c[e>>2]=1}else if((b|0)==6){c[e>>2]=1}else if((b|0)==8){c[e>>2]=1}else if((b|0)==10){c[e>>2]=0}i=d;return c[e>>2]|0}function tt(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;a=(c[e>>2]|0)+88|0;b[a>>1]=b[a>>1]&-65|64;i=d;return}function ut(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;j=f+16|0;l=f+12|0;h=f+8|0;g=f+4|0;k=f;c[j>>2]=a;c[l>>2]=d;c[k>>2]=c[c[j>>2]>>2];Qt(c[(c[j>>2]|0)+16>>2]|0,(e[(c[j>>2]|0)+84>>1]|0)<<1);Wb(c[k>>2]|0,c[(c[j>>2]|0)+16>>2]|0);c[g>>2]=c[l>>2]<<1;b[(c[j>>2]|0)+84>>1]=c[l>>2];a=ne(c[k>>2]|0,(c[g>>2]|0)*40|0)|0;c[h>>2]=a;c[(c[j>>2]|0)+16>>2]=a;if((c[(c[j>>2]|0)+16>>2]|0)==0){i=f;return}while(1){l=c[g>>2]|0;c[g>>2]=l+ -1;if((l|0)<=0){break}b[(c[h>>2]|0)+28>>1]=1;c[c[h>>2]>>2]=c[c[j>>2]>>2];c[h>>2]=(c[h>>2]|0)+40}i=f;return}function vt(b,d,f,g,h){b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=i;i=i+32|0;k=p+28|0;j=p+24|0;r=p+20|0;q=p+16|0;n=p+12|0;m=p+8|0;l=p+4|0;o=p;c[j>>2]=b;c[r>>2]=d;c[q>>2]=f;c[n>>2]=g;c[m>>2]=h;if((a[(c[c[j>>2]>>2]|0)+64>>0]|0)!=0){c[k>>2]=7;b=c[k>>2]|0;i=p;return b|0}else{b=(c[r>>2]|0)+($(c[q>>2]|0,e[(c[j>>2]|0)+84>>1]|0)|0)|0;c[o>>2]=(c[(c[j>>2]|0)+16>>2]|0)+(b*40|0);c[l>>2]=Qd(c[o>>2]|0,c[n>>2]|0,-1,1,c[m>>2]|0)|0;c[k>>2]=c[l>>2];b=c[k>>2]|0;i=p;return b|0}return 0}function wt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;m=f+24|0;j=f+20|0;l=f;h=f+16|0;g=f+12|0;k=f+8|0;c[m>>2]=a;c[j>>2]=b;b=l;c[b>>2]=d;c[b+4>>2]=e;c[h>>2]=Ro(c[m>>2]|0)|0;b=(c[m>>2]|0)+72|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[g>>2]=a;c[k>>2]=Le(c[c[m>>2]>>2]|0,8)|0;if((c[k>>2]|0)!=0){m=c[k>>2]|0;c[m+0>>2]=c[l+0>>2];c[m+4>>2]=c[l+4>>2]}Vo(c[h>>2]|0,26,0,c[g>>2]|0,0,c[k>>2]|0,-13)|0;ut(c[h>>2]|0,1);vt(c[h>>2]|0,0,0,c[j>>2]|0,0)|0;To(c[h>>2]|0,35,c[g>>2]|0,1)|0;i=f;return}function xt(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=a;do{if((c[f>>2]|0)!=0){if(0==(vc(c[f>>2]|0,20928)|0)){c[e>>2]=1;break}if(0==(vc(c[f>>2]|0,20920)|0)){c[e>>2]=0}else{b=6}}else{b=6}}while(0);if((b|0)==6){c[e>>2]=-1}i=d;return c[e>>2]|0}function yt(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;if((c[e>>2]|0)==6){c[b>>2]=0}else{c[b>>2]=c[22088+(c[e>>2]<<2)>>2]}i=d;return c[b>>2]|0}function zt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;a=g;b=c[a+4>>2]|0;if(!((b|0)>-1|(b|0)==-1&(c[a>>2]|0)>>>0>=4294967295)){b=c[f>>2]|0;b=b+160|0;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=e;return a|0}d=g;a=c[d+4>>2]|0;b=(c[f>>2]|0)+160|0;c[b>>2]=c[d>>2];c[b+4>>2]=a;b=g;Pt(c[(c[f>>2]|0)+208>>2]|0,c[b>>2]|0,c[b+4>>2]|0);b=c[f>>2]|0;b=b+160|0;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=e;return a|0}function At(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;Mc(c[f>>2]|0);if((a[(c[(c[f>>2]|0)+4>>2]|0)+17>>0]|0)==0){f=0;c[e>>2]=f;f=c[e>>2]|0;i=d;return f|0}f=(a[(c[(c[f>>2]|0)+4>>2]|0)+18>>0]|0)!=0^1?1:2;c[e>>2]=f;f=c[e>>2]|0;i=d;return f|0}function Bt(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;b=d+8|0;e=d+4|0;f=d;c[e>>2]=a;do{if(0!=(vc(c[e>>2]|0,22064)|0)){if(0==(vc(c[e>>2]|0,21776)|0)){c[b>>2]=1;break}if(0==(vc(c[e>>2]|0,22072)|0)){c[b>>2]=2;break}else{c[f>>2]=qg(c[e>>2]|0)|0;c[b>>2]=((c[f>>2]|0)>=0&(c[f>>2]|0)<=2?c[f>>2]|0:0)&255;break}}else{c[b>>2]=0}}while(0);i=d;return c[b>>2]|0}function Ct(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;l=g+12|0;m=g+8|0;k=g+4|0;h=g;j=g+16|0;c[l>>2]=e;c[m>>2]=f;c[k>>2]=c[(c[l>>2]|0)+4>>2];c[h>>2]=0;a[j>>0]=c[m>>2];Mc(c[l>>2]|0);if((b[(c[k>>2]|0)+22>>1]&2|0)!=0?(((d[j>>0]|0|0)!=0?1:0)|0)!=(d[(c[k>>2]|0)+17>>0]|0|0):0){c[h>>2]=8;m=c[h>>2]|0;i=g;return m|0}a[(c[k>>2]|0)+17>>0]=(d[j>>0]|0|0)!=0?1:0;a[(c[k>>2]|0)+18>>0]=(d[j>>0]|0|0)==2?1:0;m=c[h>>2]|0;i=g;return m|0}function Dt(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;k=f+12|0;l=f+8|0;h=f+4|0;j=f;c[k>>2]=b;c[l>>2]=e;c[h>>2]=Ot(c[l>>2]|0)|0;c[j>>2]=c[c[k>>2]>>2];if((d[(c[j>>2]|0)+63>>0]|0|0)==(c[h>>2]|0)){c[g>>2]=0;l=c[g>>2]|0;i=f;return l|0}if((Et(c[k>>2]|0)|0)!=0){c[g>>2]=1;l=c[g>>2]|0;i=f;return l|0}else{a[(c[j>>2]|0)+63>>0]=c[h>>2];c[g>>2]=0;l=c[g>>2]|0;i=f;return l|0}return 0}function Et(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e;d=e+12|0;g=e+8|0;f=e+4|0;c[g>>2]=b;c[f>>2]=c[c[g>>2]>>2];do{if((c[(c[(c[f>>2]|0)+16>>2]|0)+20>>2]|0)!=0){if((a[(c[f>>2]|0)+62>>0]|0)!=0?(Qc(c[(c[(c[f>>2]|0)+16>>2]|0)+20>>2]|0)|0)==0:0){Ak(c[(c[(c[f>>2]|0)+16>>2]|0)+20>>2]|0)|0;c[(c[(c[f>>2]|0)+16>>2]|0)+20>>2]=0;$c(c[f>>2]|0);break}Ne(c[g>>2]|0,22e3,h);c[d>>2]=1;h=c[d>>2]|0;i=e;return h|0}}while(0);c[d>>2]=0;h=c[d>>2]|0;i=e;return h|0}function Ft(b){b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;f=e+4|0;h=e;c[g>>2]=b;if((a[(c[g>>2]|0)+62>>0]|0)==0){i=e;return}c[f>>2]=c[(c[g>>2]|0)+16>>2];c[h>>2]=c[(c[g>>2]|0)+20>>2];while(1){b=c[h>>2]|0;c[h>>2]=b+ -1;if((b|0)<=0){break}if((c[(c[f>>2]|0)+4>>2]|0)!=0){et(c[(c[f>>2]|0)+4>>2]|0,d[(c[f>>2]|0)+8>>0]|c[(c[g>>2]|0)+24>>2]&28)|0}c[f>>2]=(c[f>>2]|0)+16}i=e;return}function Gt(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+8|0;f=d+16|0;g=d;b[f>>1]=a;if((b[f>>1]|0)<10){a=e;c[a>>2]=1;c[a+4>>2]=0;a=e;h=a;h=c[h>>2]|0;a=a+4|0;a=c[a>>2]|0;D=a;i=d;return h|0}k=(b[f>>1]|0)%10|0;j=g;c[j>>2]=k;c[j+4>>2]=((k|0)<0)<<31>>31;b[f>>1]=(b[f>>1]|0)/10|0;j=g;k=c[j+4>>2]|0;h=g;a=c[h>>2]|0;h=c[h+4>>2]|0;if(!(k>>>0>0|(k|0)==0&(c[j>>2]|0)>>>0>=5)){if(h>>>0>0|(h|0)==0&a>>>0>=1){j=g;j=ZD(c[j>>2]|0,c[j+4>>2]|0,1,0)|0;k=g;c[k>>2]=j;c[k+4>>2]=D}}else{j=ZD(a|0,h|0,2,0)|0;k=g;c[k>>2]=j;c[k+4>>2]=D}if((b[f>>1]|0)<3){k=g;k=bE(c[k>>2]|0,c[k+4>>2]|0,8,0)|0;k=cE(k|0,D|0,3-(b[f>>1]|0)|0)|0;j=e;c[j>>2]=k;c[j+4>>2]=D;j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}if((b[f>>1]|0)>60){g=-1;f=2147483647}else{g=bE(c[g>>2]|0,c[g+4>>2]|0,8,0)|0;g=$D(g|0,D|0,(b[f>>1]|0)-3|0)|0;f=D}j=e;c[j>>2]=g;c[j+4>>2]=f;j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}function Ht(b){b=b|0;var e=0,f=0,g=0;f=i;i=i+16|0;g=f+4|0;e=f;a[g>>0]=b;b=d[g>>0]|0;if((b|0)==7){c[e>>2]=21928}else if((b|0)==6){c[e>>2]=21968}else if((b|0)==9){c[e>>2]=21960}else if((b|0)==8){c[e>>2]=21944}else{c[e>>2]=21984}i=f;return c[e>>2]|0}function It(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;x=i;i=i+80|0;v=x;n=x+64|0;q=x+60|0;z=x+56|0;t=x+52|0;p=x+48|0;D=x+44|0;o=x+40|0;u=x+36|0;s=x+32|0;l=x+28|0;r=x+24|0;w=x+20|0;C=x+16|0;y=x+68|0;A=x+12|0;B=x+8|0;c[q>>2]=f;c[z>>2]=g;c[t>>2]=h;c[p>>2]=j;c[D>>2]=k;c[o>>2]=0;c[u>>2]=0;c[s>>2]=c[(c[t>>2]|0)+20>>2];c[l>>2]=c[(c[t>>2]|0)+40>>2];do{if((c[s>>2]|0)==1){if((b[(c[z>>2]|0)+36>>1]|0)>=0){if((c[l>>2]|0)==0){c[n>>2]=0;f=c[n>>2]|0;i=x;return f|0}if((vc(c[(c[(c[z>>2]|0)+4>>2]|0)+((b[(c[z>>2]|0)+36>>1]|0)*24|0)>>2]|0,c[l>>2]|0)|0)==0){c[n>>2]=0;f=c[n>>2]|0;i=x;return f|0}}}else{if((c[D>>2]|0)!=0){c[u>>2]=Le(c[c[q>>2]>>2]|0,c[s>>2]<<2)|0;if((c[u>>2]|0)!=0){c[c[D>>2]>>2]=c[u>>2];break}c[n>>2]=1;f=c[n>>2]|0;i=x;return f|0}}}while(0);c[o>>2]=c[(c[z>>2]|0)+8>>2];a:while(1){if((c[o>>2]|0)==0){break}do{if((e[(c[o>>2]|0)+50>>1]|0)==(c[s>>2]|0)?(d[(c[o>>2]|0)+54>>0]|0)!=0:0){if((c[l>>2]|0)==0){if((a[(c[o>>2]|0)+55>>0]&3|0)==2){m=17;break a}else{break}}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[s>>2]|0)){break}b[y>>1]=b[(c[(c[o>>2]|0)+4>>2]|0)+(c[w>>2]<<1)>>1]|0;f=c[(c[(c[z>>2]|0)+4>>2]|0)+((b[y>>1]|0)*24|0)+16>>2]|0;c[A>>2]=f;c[A>>2]=(c[A>>2]|0)!=0?f:3320;if((vc(c[(c[(c[o>>2]|0)+32>>2]|0)+(c[w>>2]<<2)>>2]|0,c[A>>2]|0)|0)!=0){break}c[B>>2]=c[(c[(c[z>>2]|0)+4>>2]|0)+((b[y>>1]|0)*24|0)>>2];c[C>>2]=0;while(1){if((c[C>>2]|0)>=(c[s>>2]|0)){break}if((vc(c[(c[t>>2]|0)+36+(c[C>>2]<<3)+4>>2]|0,c[B>>2]|0)|0)==0){m=27;break}c[C>>2]=(c[C>>2]|0)+1}if((m|0)==27?(m=0,(c[u>>2]|0)!=0):0){c[(c[u>>2]|0)+(c[w>>2]<<2)>>2]=c[(c[t>>2]|0)+36+(c[C>>2]<<3)>>2]}if((c[C>>2]|0)==(c[s>>2]|0)){break}c[w>>2]=(c[w>>2]|0)+1}if((c[w>>2]|0)==(c[s>>2]|0)){break a}}}while(0);c[o>>2]=c[(c[o>>2]|0)+20>>2]}b:do{if((m|0)==17?(c[u>>2]|0)!=0:0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[s>>2]|0)){break b}c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]=c[(c[t>>2]|0)+36+(c[r>>2]<<3)>>2];c[r>>2]=(c[r>>2]|0)+1}}}while(0);if((c[o>>2]|0)!=0){c[c[p>>2]>>2]=c[o>>2];c[n>>2]=0;f=c[n>>2]|0;i=x;return f|0}if((a[(c[q>>2]|0)+438>>0]|0)==0){f=c[q>>2]|0;g=c[(c[t>>2]|0)+8>>2]|0;c[v>>2]=c[c[c[t>>2]>>2]>>2];c[v+4>>2]=g;Ne(f,21880,v)}Wb(c[c[q>>2]>>2]|0,c[u>>2]|0);c[n>>2]=1;f=c[n>>2]|0;i=x;return f|0}function Jt(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;h=l+20|0;o=l+16|0;j=l+12|0;m=l+8|0;k=l+4|0;n=l;g=l+24|0;c[o>>2]=d;c[j>>2]=f;if((c[(c[j>>2]|0)+16>>2]|0)==0){c[k>>2]=c[(c[j>>2]|0)+12>>2];c[n>>2]=ps(c[o>>2]|0)|0;d=Le(0,(e[(c[j>>2]|0)+52>>1]|0)+1|0)|0;c[(c[j>>2]|0)+16>>2]=d;if((c[(c[j>>2]|0)+16>>2]|0)==0){a[(c[n>>2]|0)+64>>0]=1;c[h>>2]=0;d=c[h>>2]|0;i=l;return d|0}c[m>>2]=0;while(1){n=c[m>>2]|0;f=c[j>>2]|0;if((c[m>>2]|0)>=(e[(c[j>>2]|0)+52>>1]|0)){break}b[g>>1]=b[(c[f+4>>2]|0)+(n<<1)>>1]|0;if((b[g>>1]|0)<0){f=100}else{f=a[(c[(c[k>>2]|0)+4>>2]|0)+((b[g>>1]|0)*24|0)+21>>0]|0}a[(c[(c[j>>2]|0)+16>>2]|0)+(c[m>>2]|0)>>0]=f;c[m>>2]=(c[m>>2]|0)+1}a[(c[f+16>>2]|0)+n>>0]=0}c[h>>2]=c[(c[j>>2]|0)+16>>2];d=c[h>>2]|0;i=l;return d|0}function Kt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;e=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;if((c[e>>2]|0)!=0){c[g>>2]=21872}else{c[g>>2]=8680}Mf(c[f>>2]|0,8688,2,1,c[g>>2]|0,34,0,0,0)|0;Mf(c[f>>2]|0,8688,3,1,c[g>>2]|0,34,0,0,0)|0;Mf(c[f>>2]|0,8672,2,1,1464,34,0,0,0)|0;Nt(c[f>>2]|0,8672,12);Nt(c[f>>2]|0,8688,((c[e>>2]|0)!=0?12:4)&255);i=d;return}function Lt(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;f=b+4|0;e=b;c[d>>2]=a;c[f>>2]=0;c[e>>2]=(c[d>>2]|0)+116;while(1){if((c[f>>2]|0)>=10){break}if((c[(c[e>>2]|0)+12>>2]|0)!=0){es(c[d>>2]|0,c[e>>2]|0);c[(c[e>>2]|0)+12>>2]=0}c[f>>2]=(c[f>>2]|0)+1;c[e>>2]=(c[e>>2]|0)+20}i=b;return}function Mt(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;v=i;i=i+64|0;r=v+52|0;q=v+48|0;x=v+44|0;s=v+40|0;p=v+36|0;w=v+32|0;n=v+28|0;y=v+24|0;o=v+20|0;m=v+16|0;A=v+12|0;u=v+8|0;l=v+4|0;t=v;c[q>>2]=b;c[x>>2]=e;c[s>>2]=f;c[p>>2]=g;c[w>>2]=h;c[n>>2]=j;c[y>>2]=k;if((a[(c[x>>2]|0)+44>>0]&16|0)!=0){c[c[n>>2]>>2]=0;c[c[y>>2]>>2]=1;c[r>>2]=0;b=c[r>>2]|0;i=v;return b|0}c[m>>2]=Qe(c[c[q>>2]>>2]|0,c[(c[x>>2]|0)+68>>2]|0)|0;c[l>>2]=Ro(c[q>>2]|0)|0;if((c[p>>2]|0)<0){c[p>>2]=c[(c[q>>2]|0)+68>>2]}b=c[p>>2]|0;c[p>>2]=b+1;c[A>>2]=b;if((c[n>>2]|0)!=0){c[c[n>>2]>>2]=c[A>>2]}do{if((a[(c[x>>2]|0)+44>>0]&32|0)==0){if((c[w>>2]|0)!=0?(d[c[w>>2]>>0]|0|0)==0:0){z=11;break}tr(c[q>>2]|0,c[A>>2]|0,c[m>>2]|0,c[x>>2]|0,c[s>>2]|0)}else{z=11}}while(0);if((z|0)==11){sr(c[q>>2]|0,c[m>>2]|0,c[(c[x>>2]|0)+32>>2]|0,(c[s>>2]|0)==53&255,c[c[x>>2]>>2]|0)}if((c[y>>2]|0)!=0){c[c[y>>2]>>2]=c[p>>2]}c[o>>2]=0;c[u>>2]=c[(c[x>>2]|0)+8>>2];while(1){y=c[p>>2]|0;if((c[u>>2]|0)==0){break}c[p>>2]=y+1;c[t>>2]=y;if(((a[(c[u>>2]|0)+55>>0]&3|0)==2?(a[(c[x>>2]|0)+44>>0]&32|0)!=0:0)?(c[n>>2]|0)!=0:0){c[c[n>>2]>>2]=c[t>>2]}if(!((c[w>>2]|0)!=0?(d[(c[w>>2]|0)+((c[o>>2]|0)+1)>>0]|0|0)==0:0)){Wo(c[l>>2]|0,c[s>>2]|0,c[t>>2]|0,c[(c[u>>2]|0)+44>>2]|0,c[m>>2]|0)|0;ur(c[q>>2]|0,c[u>>2]|0)}c[u>>2]=c[(c[u>>2]|0)+20>>2];c[o>>2]=(c[o>>2]|0)+1}if((y|0)>(c[(c[q>>2]|0)+68>>2]|0)){c[(c[q>>2]|0)+68>>2]=c[p>>2]}c[r>>2]=c[o>>2];b=c[r>>2]|0;i=v;return b|0}function Nt(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;j=i;i=i+16|0;n=j+8|0;m=j+4|0;l=j+12|0;k=j;c[n>>2]=f;c[m>>2]=g;a[l>>0]=h;g=c[n>>2]|0;f=c[m>>2]|0;c[k>>2]=Of(g,f,Mb(c[m>>2]|0)|0,2,1,0)|0;if((c[k>>2]|0)==0){i=j;return}n=(c[k>>2]|0)+2|0;b[n>>1]=e[n>>1]|0|(d[l>>0]|0);i=j;return}function Ot(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[g>>2]=b;if((a[c[g>>2]>>0]|0)>=48?(a[c[g>>2]>>0]|0)<=50:0){c[f>>2]=(a[c[g>>2]>>0]|0)-48}else{d=4}do{if((d|0)==4){if((vc(c[g>>2]|0,21304)|0)==0){c[f>>2]=1;break}if((vc(c[g>>2]|0,4744)|0)==0){c[f>>2]=2;break}else{c[f>>2]=0;break}}}while(0);i=e;return c[f>>2]|0}function Pt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;c[g>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;if((c[g>>2]|0)==0){i=e;return}b=c[f+4>>2]|0;a=(c[g>>2]|0)+16|0;c[a>>2]=c[f>>2];c[a+4>>2]=b;i=e;return}function Qt(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+12|0;l=f+8|0;k=f+4|0;h=f;j=f+16|0;c[g>>2]=d;c[l>>2]=e;if((c[g>>2]|0)==0){i=f;return}if((c[l>>2]|0)==0){i=f;return}c[h>>2]=c[c[g>>2]>>2];a[j>>0]=a[(c[h>>2]|0)+64>>0]|0;d=(c[(c[h>>2]|0)+512>>2]|0)!=0;c[k>>2]=(c[g>>2]|0)+((c[l>>2]|0)*40|0);if(d){while(1){if(!((c[g>>2]|0)>>>0<(c[k>>2]|0)>>>0)){break}Wb(c[h>>2]|0,c[(c[g>>2]|0)+36>>2]|0);c[g>>2]=(c[g>>2]|0)+40}i=f;return}while(1){if(!((c[g>>2]|0)>>>0<(c[k>>2]|0)>>>0)){break}e=c[g>>2]|0;if((b[(c[g>>2]|0)+28>>1]&9312|0)==0){if((c[e+36>>2]|0)!=0){Wb(c[h>>2]|0,c[(c[g>>2]|0)+36>>2]|0);c[(c[g>>2]|0)+36>>2]=0}}else{yd(e)}b[(c[g>>2]|0)+28>>1]=128;c[g>>2]=(c[g>>2]|0)+40}a[(c[h>>2]|0)+64>>0]=a[j>>0]|0;i=f;return}function Rt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+64|0;f=l;g=l+36|0;o=l+32|0;h=l+28|0;j=l+24|0;n=l+20|0;k=l+16|0;m=l+40|0;c[g>>2]=a;c[o>>2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=c[(c[(c[c[g>>2]>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2];c[n>>2]=1;while(1){if((c[n>>2]|0)>4){break}c[f>>2]=c[n>>2];qc(24,m,23128,f)|0;if((fp(c[c[g>>2]>>2]|0,m,c[k>>2]|0)|0)!=0){o=c[g>>2]|0;b=c[h>>2]|0;a=c[j>>2]|0;c[f>>2]=c[k>>2];c[f+4>>2]=m;c[f+8>>2]=b;c[f+12>>2]=a;Qo(o,18384,f)}c[n>>2]=(c[n>>2]|0)+1}i=l;return}function St(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+48|0;h=e;g=e+36|0;j=e+32|0;l=e+28|0;k=e+24|0;f=e+20|0;c[g>>2]=a;c[j>>2]=b;c[l>>2]=d;c[k>>2]=Ro(c[g>>2]|0)|0;c[f>>2]=Zo(c[g>>2]|0)|0;Wo(c[k>>2]|0,114,c[j>>2]|0,c[f>>2]|0,c[l>>2]|0)|0;Ap(c[g>>2]|0);a=c[g>>2]|0;k=(c[l>>2]|0)==1?14808:14832;j=c[j>>2]|0;d=c[f>>2]|0;b=c[f>>2]|0;c[h>>2]=c[(c[(c[c[g>>2]>>2]|0)+16>>2]|0)+(c[l>>2]<<4)>>2];c[h+4>>2]=k;c[h+8>>2]=j;c[h+12>>2]=d;c[h+16>>2]=b;Qo(a,23072,h);_o(c[g>>2]|0,c[f>>2]|0);i=e;return}function Tt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=i;i=i+48|0;n=h+36|0;r=h+32|0;o=h+28|0;k=h+24|0;g=h+20|0;l=h+16|0;m=h+12|0;j=h+8|0;q=h+4|0;p=h;c[r>>2]=a;c[o>>2]=b;c[k>>2]=d;c[g>>2]=e;c[l>>2]=f;c[j>>2]=c[c[g>>2]>>2];do{if((c[j>>2]&(c[j>>2]|0)-1|0)==0){if((c[j>>2]|0)==0){f=1}else{f=c[j>>2]<<1}c[q>>2]=f;c[p>>2]=Pm(c[r>>2]|0,c[o>>2]|0,$(c[q>>2]|0,c[k>>2]|0)|0)|0;if((c[p>>2]|0)!=0){c[o>>2]=c[p>>2];break}c[c[l>>2]>>2]=-1;c[n>>2]=c[o>>2];a=c[n>>2]|0;i=h;return a|0}}while(0);c[m>>2]=c[o>>2];a=$(c[j>>2]|0,c[k>>2]|0)|0;_D((c[m>>2]|0)+a|0,0,c[k>>2]|0)|0;c[c[l>>2]>>2]=c[j>>2];a=c[g>>2]|0;c[a>>2]=(c[a>>2]|0)+1;c[n>>2]=c[o>>2];a=c[n>>2]|0;i=h;return a|0}function Ut(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+32|0;q=k+28|0;p=k+24|0;h=k+20|0;n=k+16|0;l=k+12|0;o=k+8|0;j=k+4|0;m=k;c[q>>2]=a;c[p>>2]=b;c[h>>2]=e;c[n>>2]=f;c[l>>2]=g;c[o>>2]=0;c[j>>2]=0;if((c[(c[c[q>>2]>>2]|0)+24>>2]&8388608|0)!=0){c[j>>2]=jp(c[q>>2]|0,c[p>>2]|0)|0}c[m>>2]=c[j>>2];while(1){if((c[m>>2]|0)==0){break}if((d[(c[m>>2]|0)+8>>0]|0|0)==(c[h>>2]|0)?(Jw(c[(c[m>>2]|0)+16>>2]|0,c[n>>2]|0)|0)!=0:0){c[o>>2]=c[o>>2]|(d[(c[m>>2]|0)+9>>0]|0)}c[m>>2]=c[(c[m>>2]|0)+32>>2]}if((c[l>>2]|0)==0){b=c[o>>2]|0;b=(b|0)!=0;a=c[j>>2]|0;a=b?a:0;i=k;return a|0}c[c[l>>2]>>2]=c[o>>2];b=c[o>>2]|0;b=(b|0)!=0;a=c[j>>2]|0;a=b?a:0;i=k;return a|0}function Vt(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;k=m;l=m+16|0;h=m+12|0;j=m+8|0;n=m+4|0;c[h>>2]=b;c[j>>2]=e;c[n>>2]=f;if(!((a[(c[j>>2]|0)+44>>0]&16|0)!=0?(c[(c[c[(zp(c[c[h>>2]>>2]|0,c[j>>2]|0)|0)+4>>2]>>2]|0)+52>>2]|0)==0:0)){g=3}do{if((g|0)==3){if(((a[(c[j>>2]|0)+44>>0]&1|0)!=0?(c[(c[c[h>>2]>>2]|0)+24>>2]&2048|0)==0:0)?(d[(c[h>>2]|0)+18>>0]|0|0)==0:0){break}if((c[n>>2]|0)==0?(c[(c[j>>2]|0)+12>>2]|0)!=0:0){b=c[h>>2]|0;c[k>>2]=c[c[j>>2]>>2];Ne(b,24336,k);c[l>>2]=1;b=c[l>>2]|0;i=m;return b|0}c[l>>2]=0;b=c[l>>2]|0;i=m;return b|0}}while(0);b=c[h>>2]|0;c[k>>2]=c[c[j>>2]>>2];Ne(b,24304,k);c[l>>2]=1;b=c[l>>2]|0;i=m;return b|0}function Wt(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;a=(c[e>>2]|0)+88|0;b[a>>1]=b[a>>1]&-17|16;i=d;return}function Xt(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;y=i;i=i+112|0;t=y+100|0;s=y+96|0;m=y+92|0;J=y+88|0;B=y+84|0;k=y+80|0;G=y+76|0;n=y+72|0;v=y+68|0;x=y+64|0;K=y+60|0;I=y+56|0;o=y+52|0;q=y+48|0;r=y+44|0;w=y+40|0;C=y+36|0;z=y+32|0;A=y+28|0;p=y+24|0;D=y+20|0;E=y+16|0;l=y+12|0;u=y+8|0;F=y+4|0;H=y;c[s>>2]=e;c[m>>2]=f;c[J>>2]=g;c[B>>2]=h;c[k>>2]=j;c[z>>2]=0;c[A>>2]=0;c[E>>2]=0;if((c[J>>2]|0)==0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[s>>2]|0)+532>>2]|0)==0?(c[(c[J>>2]|0)+68>>2]|0)==0:0){if((jp(c[s>>2]|0,c[m>>2]|0)|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((a[(c[m>>2]|0)+44>>0]&16|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[B>>2]|0)==10){if((b[(c[m>>2]|0)+36>>1]|0)>=0){c[B>>2]=d[(c[m>>2]|0)+45>>0]|0}if((c[B>>2]|0)==10){c[B>>2]=2}}if((c[c[(c[J>>2]|0)+32>>2]>>2]|0)!=1){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[(c[J>>2]|0)+32>>2]|0)+28>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[J>>2]|0)+36>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[J>>2]|0)+48>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[J>>2]|0)+40>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[J>>2]|0)+60>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[J>>2]|0)+52>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((b[(c[J>>2]|0)+6>>1]&1|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}c[G>>2]=c[c[J>>2]>>2];if((c[c[G>>2]>>2]|0)!=1){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((d[c[c[(c[G>>2]|0)+4>>2]>>2]>>0]|0)!=116){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}c[K>>2]=(c[(c[J>>2]|0)+32>>2]|0)+8;c[n>>2]=ap(c[s>>2]|0,0,c[K>>2]|0)|0;if((c[n>>2]|0)==0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[n>>2]|0)==(c[m>>2]|0)){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if(((a[(c[m>>2]|0)+44>>0]&32|0)==0|0)!=((a[(c[n>>2]|0)+44>>0]&32|0)==0|0)){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((a[(c[n>>2]|0)+44>>0]&16|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[n>>2]|0)+12>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((b[(c[m>>2]|0)+38>>1]|0)!=(b[(c[n>>2]|0)+38>>1]|0)){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((b[(c[m>>2]|0)+36>>1]|0)!=(b[(c[n>>2]|0)+36>>1]|0)){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}c[I>>2]=0;a:while(1){if((c[I>>2]|0)>=(b[(c[m>>2]|0)+38>>1]|0)){F=64;break}c[F>>2]=(c[(c[m>>2]|0)+4>>2]|0)+((c[I>>2]|0)*24|0);c[H>>2]=(c[(c[n>>2]|0)+4>>2]|0)+((c[I>>2]|0)*24|0);if((a[(c[F>>2]|0)+21>>0]|0)!=(a[(c[H>>2]|0)+21>>0]|0)){F=52;break}if((Kw(c[(c[F>>2]|0)+16>>2]|0,c[(c[H>>2]|0)+16>>2]|0)|0)==0){F=54;break}if((d[(c[F>>2]|0)+20>>0]|0)!=0?(a[(c[H>>2]|0)+20>>0]|0)==0:0){F=57;break}do{if((c[I>>2]|0)>0){if(((c[(c[F>>2]|0)+8>>2]|0)==0|0)!=((c[(c[H>>2]|0)+8>>2]|0)==0|0)){F=62;break a}if((c[(c[F>>2]|0)+8>>2]|0)==0){break}if((WD(c[(c[F>>2]|0)+8>>2]|0,c[(c[H>>2]|0)+8>>2]|0)|0)!=0){F=62;break a}}}while(0);c[I>>2]=(c[I>>2]|0)+1}if((F|0)==52){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}else if((F|0)==54){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}else if((F|0)==57){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}else if((F|0)==62){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}else if((F|0)==64){c[x>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[x>>2]|0)==0){break}if((d[(c[x>>2]|0)+54>>0]|0)!=0){c[E>>2]=1}c[v>>2]=c[(c[n>>2]|0)+8>>2];while(1){if((c[v>>2]|0)==0){break}if((Lw(c[x>>2]|0,c[v>>2]|0)|0)!=0){break}c[v>>2]=c[(c[v>>2]|0)+20>>2]}if((c[v>>2]|0)==0){F=73;break}c[x>>2]=c[(c[x>>2]|0)+20>>2]}if((F|0)==73){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}do{if((c[(c[m>>2]|0)+24>>2]|0)!=0){if((nq(c[(c[n>>2]|0)+24>>2]|0,c[(c[m>>2]|0)+24>>2]|0,-1)|0)==0){break}c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}}while(0);do{if((c[(c[c[s>>2]>>2]|0)+24>>2]&524288|0)!=0){if((c[(c[m>>2]|0)+16>>2]|0)==0){break}c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}}while(0);if((c[(c[c[s>>2]>>2]|0)+24>>2]&128|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}c[o>>2]=Qe(c[c[s>>2]>>2]|0,c[(c[n>>2]|0)+68>>2]|0)|0;c[p>>2]=Ro(c[s>>2]|0)|0;dp(c[s>>2]|0,c[o>>2]|0);e=(c[s>>2]|0)+68|0;f=c[e>>2]|0;c[e>>2]=f+1;c[q>>2]=f;f=(c[s>>2]|0)+68|0;e=c[f>>2]|0;c[f>>2]=e+1;c[r>>2]=e;c[D>>2]=Yt(c[s>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;c[l>>2]=Zo(c[s>>2]|0)|0;c[u>>2]=Zo(c[s>>2]|0)|0;tr(c[s>>2]|0,c[r>>2]|0,c[k>>2]|0,c[m>>2]|0,53);if((b[(c[m>>2]|0)+36>>1]|0)<0?(c[(c[m>>2]|0)+8>>2]|0)!=0:0){F=87}else{F=85}do{if((F|0)==85){if((c[E>>2]|0)!=0){F=87;break}if((c[B>>2]|0)!=2&(c[B>>2]|0)!=1){F=87}}}while(0);if((F|0)==87){c[w>>2]=To(c[p>>2]|0,105,c[r>>2]|0,0)|0;c[z>>2]=To(c[p>>2]|0,16,0,0)|0;mp(c[p>>2]|0,c[w>>2]|0)}E=c[s>>2]|0;if((a[(c[n>>2]|0)+44>>0]&32|0)==0){tr(E,c[q>>2]|0,c[o>>2]|0,c[n>>2]|0,52);c[A>>2]=To(c[p>>2]|0,105,c[q>>2]|0,0)|0;do{if((b[(c[m>>2]|0)+36>>1]|0)<0){B=c[p>>2]|0;if((c[(c[m>>2]|0)+8>>2]|0)==0){c[w>>2]=To(B,69,c[r>>2]|0,c[u>>2]|0)|0;break}else{c[w>>2]=To(B,100,c[q>>2]|0,c[u>>2]|0)|0;break}}else{c[w>>2]=To(c[p>>2]|0,100,c[q>>2]|0,c[u>>2]|0)|0;c[C>>2]=Wo(c[p>>2]|0,67,c[r>>2]|0,0,c[u>>2]|0)|0;Kv(c[s>>2]|0,c[B>>2]|0,c[m>>2]|0);mp(c[p>>2]|0,c[C>>2]|0);bu(c[s>>2]|0,c[D>>2]|0,c[u>>2]|0)}}while(0);To(c[p>>2]|0,99,c[q>>2]|0,c[l>>2]|0)|0;Wo(c[p>>2]|0,70,c[r>>2]|0,c[l>>2]|0,c[u>>2]|0)|0;Se(c[p>>2]|0,11);Ye(c[p>>2]|0,-1,c[c[m>>2]>>2]|0,0);To(c[p>>2]|0,9,c[q>>2]|0,c[w>>2]|0)|0;To(c[p>>2]|0,58,c[q>>2]|0,0)|0;To(c[p>>2]|0,58,c[r>>2]|0,0)|0}else{sr(E,c[k>>2]|0,c[(c[m>>2]|0)+32>>2]|0,1,c[c[m>>2]>>2]|0);sr(c[s>>2]|0,c[o>>2]|0,c[(c[n>>2]|0)+32>>2]|0,0,c[c[n>>2]>>2]|0)}c[x>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[x>>2]|0)==0){break}c[v>>2]=c[(c[n>>2]|0)+8>>2];while(1){if((c[v>>2]|0)==0){break}if((Lw(c[x>>2]|0,c[v>>2]|0)|0)!=0){break}c[v>>2]=c[(c[v>>2]|0)+20>>2]}Wo(c[p>>2]|0,52,c[q>>2]|0,c[(c[v>>2]|0)+44>>2]|0,c[o>>2]|0)|0;ur(c[s>>2]|0,c[v>>2]|0);Wo(c[p>>2]|0,53,c[r>>2]|0,c[(c[x>>2]|0)+44>>2]|0,c[k>>2]|0)|0;ur(c[s>>2]|0,c[x>>2]|0);Se(c[p>>2]|0,1);c[w>>2]=To(c[p>>2]|0,105,c[q>>2]|0,0)|0;To(c[p>>2]|0,98,c[q>>2]|0,c[l>>2]|0)|0;Wo(c[p>>2]|0,107,c[r>>2]|0,c[l>>2]|0,1)|0;To(c[p>>2]|0,9,c[q>>2]|0,(c[w>>2]|0)+1|0)|0;mp(c[p>>2]|0,c[w>>2]|0);To(c[p>>2]|0,58,c[q>>2]|0,0)|0;To(c[p>>2]|0,58,c[r>>2]|0,0)|0;c[x>>2]=c[(c[x>>2]|0)+20>>2]}if((c[A>>2]|0)!=0){mp(c[p>>2]|0,c[A>>2]|0)}_o(c[s>>2]|0,c[u>>2]|0);_o(c[s>>2]|0,c[l>>2]|0);if((c[z>>2]|0)!=0){To(c[p>>2]|0,24,0,0)|0;mp(c[p>>2]|0,c[z>>2]|0);To(c[p>>2]|0,58,c[r>>2]|0,0)|0;c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}else{c[t>>2]=1;e=c[t>>2]|0;i=y;return e|0}}}c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}function Yt(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;g=h+24|0;n=h+20|0;f=h+16|0;l=h+12|0;m=h+8|0;k=h+4|0;j=h;c[n>>2]=b;c[f>>2]=d;c[l>>2]=e;c[m>>2]=0;if((a[(c[l>>2]|0)+44>>0]&8|0)!=0){e=c[n>>2]|0;if((c[(c[n>>2]|0)+408>>2]|0)!=0){e=c[e+408>>2]|0}c[k>>2]=e;c[j>>2]=c[(c[k>>2]|0)+404>>2];while(1){if((c[j>>2]|0)!=0){d=(c[(c[j>>2]|0)+4>>2]|0)!=(c[l>>2]|0)}else{d=0}e=c[j>>2]|0;if(!d){break}c[j>>2]=c[e>>2]}do{if((e|0)==0){c[j>>2]=Le(c[c[n>>2]>>2]|0,16)|0;if((c[j>>2]|0)!=0){c[c[j>>2]>>2]=c[(c[k>>2]|0)+404>>2];c[(c[k>>2]|0)+404>>2]=c[j>>2];c[(c[j>>2]|0)+4>>2]=c[l>>2];c[(c[j>>2]|0)+8>>2]=c[f>>2];d=(c[k>>2]|0)+72|0;c[d>>2]=(c[d>>2]|0)+1;d=(c[k>>2]|0)+72|0;b=(c[d>>2]|0)+1|0;c[d>>2]=b;c[(c[j>>2]|0)+12>>2]=b;b=(c[k>>2]|0)+72|0;c[b>>2]=(c[b>>2]|0)+1;break}c[g>>2]=0;b=c[g>>2]|0;i=h;return b|0}}while(0);c[m>>2]=c[(c[j>>2]|0)+12>>2]}c[g>>2]=c[m>>2];b=c[g>>2]|0;i=h;return b|0}function Zt(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+48|0;h=g+40|0;s=g+36|0;q=g+32|0;o=g+28|0;m=g+24|0;p=g+20|0;r=g+16|0;n=g+12|0;l=g+8|0;k=g+4|0;j=g;c[s>>2]=b;c[q>>2]=e;c[o>>2]=f;c[m>>2]=Ro(c[s>>2]|0)|0;c[r>>2]=vr(c[m>>2]|0)|0;if((a[(c[o>>2]|0)+44>>0]&16|0)!=0){f=zp(c[c[s>>2]>>2]|0,c[o>>2]|0)|0}else{f=0}c[n>>2]=f;c[p>>2]=1;a:while(1){if((c[p>>2]|0)>=(c[r>>2]|0)){j=18;break}c[l>>2]=Ns(c[m>>2]|0,c[p>>2]|0)|0;b:do{if((d[c[l>>2]>>0]|0|0)==52?(c[(c[l>>2]|0)+12>>2]|0)==(c[q>>2]|0):0){c[j>>2]=c[(c[l>>2]|0)+8>>2];if((c[j>>2]|0)==(c[(c[o>>2]|0)+32>>2]|0)){j=8;break a}c[k>>2]=c[(c[o>>2]|0)+8>>2];while(1){if((c[k>>2]|0)==0){break b}if((c[j>>2]|0)==(c[(c[k>>2]|0)+44>>2]|0)){j=12;break a}c[k>>2]=c[(c[k>>2]|0)+20>>2]}}}while(0);if((d[c[l>>2]>>0]|0|0)==149?(c[(c[l>>2]|0)+16>>2]|0)==(c[n>>2]|0):0){j=16;break}c[p>>2]=(c[p>>2]|0)+1}if((j|0)==8){c[h>>2]=1;b=c[h>>2]|0;i=g;return b|0}else if((j|0)==12){c[h>>2]=1;b=c[h>>2]|0;i=g;return b|0}else if((j|0)==16){c[h>>2]=1;b=c[h>>2]|0;i=g;return b|0}else if((j|0)==18){c[h>>2]=0;b=c[h>>2]|0;i=g;return b|0}return 0}function _t(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;f=e;c[k>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[(c[k>>2]|0)+8>>2];ys(c[k>>2]|0,c[g>>2]|0,c[h>>2]|0);b=(c[k>>2]|0)+72|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[f>>2]=a;To(c[j>>2]|0,33,c[h>>2]|0,c[f>>2]|0)|0;Is(c[g>>2]|0,c[f>>2]|0);i=e;return}function $t(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+32|0;m=j+20|0;n=j+16|0;h=j+12|0;k=j+8|0;g=j+4|0;l=j;c[m>>2]=d;c[n>>2]=e;c[h>>2]=f;c[g>>2]=c[(c[n>>2]|0)+20>>2];if((c[g>>2]|0)==0){c[l>>2]=ps(c[m>>2]|0)|0;c[g>>2]=Le(0,(b[(c[n>>2]|0)+38>>1]|0)+1|0)|0;if((c[g>>2]|0)==0){a[(c[l>>2]|0)+64>>0]=1;i=j;return}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(b[(c[n>>2]|0)+38>>1]|0)){break}a[(c[g>>2]|0)+(c[k>>2]|0)>>0]=a[(c[(c[n>>2]|0)+4>>2]|0)+((c[k>>2]|0)*24|0)+21>>0]|0;c[k>>2]=(c[k>>2]|0)+1}do{d=c[k>>2]|0;c[k>>2]=d+ -1;a[(c[g>>2]|0)+d>>0]=0;if((c[k>>2]|0)<0){break}}while((a[(c[g>>2]|0)+(c[k>>2]|0)>>0]|0)==98);c[(c[n>>2]|0)+20>>2]=c[g>>2]}c[k>>2]=Mb(c[g>>2]|0)|0;if((c[k>>2]|0)==0){i=j;return}f=c[m>>2]|0;if((c[h>>2]|0)!=0){Vo(f,47,c[h>>2]|0,c[k>>2]|0,0,c[g>>2]|0,c[k>>2]|0)|0;i=j;return}else{Ye(f,-1,c[g>>2]|0,c[k>>2]|0);i=j;return}}function au(a,b,e,f,g,h,j,k,l){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=i;i=i+48|0;n=u+36|0;w=u+32|0;m=u+28|0;t=u+24|0;v=u+20|0;p=u+16|0;q=u+12|0;r=u+8|0;s=u+4|0;o=u;c[n>>2]=a;c[w>>2]=b;c[m>>2]=e;c[t>>2]=f;c[v>>2]=g;c[p>>2]=h;c[q>>2]=j;c[r>>2]=k;c[s>>2]=l;c[o>>2]=c[w>>2];while(1){if((c[o>>2]|0)==0){break}if(((d[(c[o>>2]|0)+8>>0]|0|0)==(c[m>>2]|0)?(d[(c[o>>2]|0)+9>>0]|0|0)==(c[v>>2]|0):0)?(Jw(c[(c[o>>2]|0)+16>>2]|0,c[t>>2]|0)|0)!=0:0){Tv(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0)}c[o>>2]=c[(c[o>>2]|0)+32>>2]}i=u;return}function bu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[g>>2]|0)<=0){i=e;return}To(c[(c[f>>2]|0)+8>>2]|0,132,c[g>>2]|0,c[h>>2]|0)|0;i=e;return}function cu(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;f=j+8|0;g=j+4|0;h=j;c[f>>2]=a;c[g>>2]=b;c[h>>2]=e;if((d[(c[f>>2]|0)+23>>0]|0|0)!=0?(Es(c[g>>2]|0)|0)!=0:0){Ms(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,0);i=j;return}ys(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=j;return}function du(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;m=j+20|0;h=j+16|0;g=j+12|0;l=j+8|0;e=j+4|0;k=j;c[m>>2]=b;c[h>>2]=d;d=c[m>>2]|0;if((c[(c[m>>2]|0)+408>>2]|0)!=0){d=c[d+408>>2]|0}c[g>>2]=d;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[g>>2]|0)+452>>2]|0)){break}if((c[h>>2]|0)==(c[(c[(c[g>>2]|0)+520>>2]|0)+(c[l>>2]<<2)>>2]|0)){f=10;break}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==10){i=j;return}c[e>>2]=(c[(c[g>>2]|0)+452>>2]|0)+1<<2;c[k>>2]=ic(c[(c[g>>2]|0)+520>>2]|0,c[e>>2]|0)|0;if((c[k>>2]|0)!=0){c[(c[g>>2]|0)+520>>2]=c[k>>2];b=c[h>>2]|0;d=(c[g>>2]|0)+452|0;m=c[d>>2]|0;c[d>>2]=m+1;c[(c[(c[g>>2]|0)+520>>2]|0)+(m<<2)>>2]=b;i=j;return}else{a[(c[c[g>>2]>>2]|0)+64>>0]=1;i=j;return}}function eu(f,g,h,j,k,l,m,n,o,p,q){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;Z=i;i=i+176|0;ia=Z;E=Z+168|0;w=Z+164|0;y=Z+160|0;Q=Z+156|0;B=Z+152|0;A=Z+148|0;X=Z+144|0;J=Z+175|0;O=Z+174|0;V=Z+140|0;Y=Z+136|0;W=Z+132|0;x=Z+128|0;I=Z+124|0;T=Z+120|0;G=Z+116|0;v=Z+112|0;ha=Z+108|0;N=Z+104|0;ka=Z+100|0;P=Z+96|0;R=Z+92|0;t=Z+88|0;u=Z+84|0;H=Z+173|0;z=Z+172|0;M=Z+80|0;ja=Z+76|0;da=Z+72|0;ca=Z+68|0;ga=Z+64|0;fa=Z+60|0;ea=Z+56|0;F=Z+52|0;U=Z+48|0;C=Z+44|0;D=Z+40|0;r=Z+36|0;L=Z+32|0;S=Z+28|0;aa=Z+24|0;$=Z+20|0;K=Z+16|0;_=Z+12|0;s=Z+8|0;c[E>>2]=f;c[w>>2]=g;c[y>>2]=h;c[Q>>2]=j;c[B>>2]=k;c[A>>2]=l;c[X>>2]=m;a[J>>0]=n;a[O>>0]=o;c[V>>2]=p;c[Y>>2]=q;c[I>>2]=0;c[P>>2]=0;c[t>>2]=0;c[u>>2]=0;a[z>>0]=0;c[M>>2]=-1;a[H>>0]=(c[X>>2]|0)!=0;c[T>>2]=c[c[E>>2]>>2];c[W>>2]=Ro(c[E>>2]|0)|0;c[ha>>2]=b[(c[w>>2]|0)+38>>1]|0;if((a[(c[w>>2]|0)+44>>0]&32|0)==0){c[I>>2]=0;c[R>>2]=1}else{c[I>>2]=Gr(c[w>>2]|0)|0;c[R>>2]=e[(c[I>>2]|0)+50>>1]|0}c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[ha>>2]|0)){break}do{if((c[G>>2]|0)!=(b[(c[w>>2]|0)+36>>1]|0)?(c[N>>2]=d[(c[(c[w>>2]|0)+4>>2]|0)+((c[G>>2]|0)*24|0)+20>>0]|0,(c[N>>2]|0)!=0):0){if((d[O>>0]|0)==10){if((c[N>>2]|0)==10){c[N>>2]=2}}else{c[N>>2]=d[O>>0]|0}if((c[N>>2]|0)==5?(c[(c[(c[w>>2]|0)+4>>2]|0)+((c[G>>2]|0)*24|0)+4>>2]|0)==0:0){c[N>>2]=2}q=c[N>>2]|0;if((q|0)==4){To(c[W>>2]|0,76,(c[A>>2]|0)+1+(c[G>>2]|0)|0,c[V>>2]|0)|0;break}else if((q|0)==2){Ap(c[E>>2]|0)}else if(!((q|0)==3|(q|0)==1)){c[ka>>2]=rr(c[W>>2]|0,77,(c[A>>2]|0)+1+(c[G>>2]|0)|0)|0;ys(c[E>>2]|0,c[(c[(c[w>>2]|0)+4>>2]|0)+((c[G>>2]|0)*24|0)+4>>2]|0,(c[A>>2]|0)+1+(c[G>>2]|0)|0);mp(c[W>>2]|0,c[ka>>2]|0);break}f=c[T>>2]|0;g=c[(c[(c[w>>2]|0)+4>>2]|0)+((c[G>>2]|0)*24|0)>>2]|0;c[ia>>2]=c[c[w>>2]>>2];c[ia+4>>2]=g;c[ja>>2]=Oe(f,17352,ia)|0;Vo(c[W>>2]|0,23,1299,c[N>>2]|0,(c[A>>2]|0)+1+(c[G>>2]|0)|0,c[ja>>2]|0,-1)|0;Se(c[W>>2]|0,1)}}while(0);c[G>>2]=(c[G>>2]|0)+1}a:do{if((c[(c[w>>2]|0)+24>>2]|0)!=0?(c[(c[T>>2]|0)+24>>2]&8192|0)==0:0){c[da>>2]=c[(c[w>>2]|0)+24>>2];c[(c[E>>2]|0)+92>>2]=(c[A>>2]|0)+1;if((d[O>>0]|0)!=10){ha=d[O>>0]|0}else{ha=2}c[N>>2]=ha;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[c[da>>2]>>2]|0)){break a}c[ca>>2]=fs(c[W>>2]|0)|0;qs(c[E>>2]|0,c[(c[(c[da>>2]|0)+4>>2]|0)+((c[G>>2]|0)*20|0)>>2]|0,c[ca>>2]|0,8);if((c[N>>2]|0)==4){To(c[W>>2]|0,16,0,c[V>>2]|0)|0}else{c[ga>>2]=c[(c[(c[da>>2]|0)+4>>2]|0)+((c[G>>2]|0)*20|0)+4>>2];if((c[ga>>2]|0)==0){c[ga>>2]=c[c[w>>2]>>2]}if((c[N>>2]|0)==5){c[N>>2]=2}bs(c[E>>2]|0,275,c[N>>2]|0,c[ga>>2]|0,0,3)}cs(c[W>>2]|0,c[ca>>2]|0);c[G>>2]=(c[G>>2]|0)+1}}}while(0);if((d[J>>0]|0)!=0?(c[I>>2]|0)==0:0){c[fa>>2]=fs(c[W>>2]|0)|0;c[N>>2]=d[(c[w>>2]|0)+45>>0]|0;if((d[O>>0]|0)==10){if((c[N>>2]|0)==10){c[N>>2]=2}}else{c[N>>2]=d[O>>0]|0}if((a[H>>0]|0)!=0){Wo(c[W>>2]|0,79,c[A>>2]|0,c[fa>>2]|0,c[X>>2]|0)|0;Se(c[W>>2]|0,-120)}b:do{if((c[N>>2]|0)==5?(d[O>>0]|0)!=5:0){c[x>>2]=c[(c[w>>2]|0)+8>>2];while(1){if((c[x>>2]|0)==0){break b}if((d[(c[x>>2]|0)+54>>0]|0)==4){break}if((d[(c[x>>2]|0)+54>>0]|0)==3){break}c[x>>2]=c[(c[x>>2]|0)+20>>2]}c[t>>2]=$o(c[W>>2]|0,16)|0}}while(0);Wo(c[W>>2]|0,67,c[Q>>2]|0,c[fa>>2]|0,c[A>>2]|0)|0;switch(c[N>>2]|0){case 3:case 2:case 1:{ba=53;break};case 5:{c[ea>>2]=0;if((c[(c[T>>2]|0)+24>>2]&262144|0)!=0){c[ea>>2]=Ut(c[E>>2]|0,c[w>>2]|0,109,0,0)|0}if((c[ea>>2]|0)==0?(Lv(c[E>>2]|0,c[w>>2]|0,0,0)|0)==0:0){if((c[(c[w>>2]|0)+8>>2]|0)!=0){Mv(c[E>>2]|0);Ov(c[E>>2]|0,c[w>>2]|0,c[Q>>2]|0,c[B>>2]|0,0)}}else{Mv(c[E>>2]|0);Nv(c[E>>2]|0,c[w>>2]|0,c[ea>>2]|0,c[Q>>2]|0,c[B>>2]|0,c[A>>2]|0,1,0,5,1)}c[P>>2]=1;break};case 4:{To(c[W>>2]|0,16,0,c[V>>2]|0)|0;break};default:{c[N>>2]=2;ba=53}}if((ba|0)==53){Kv(c[E>>2]|0,c[N>>2]|0,c[w>>2]|0)}cs(c[W>>2]|0,c[fa>>2]|0);if((c[t>>2]|0)!=0){c[u>>2]=$o(c[W>>2]|0,16)|0;mp(c[W>>2]|0,c[t>>2]|0)}}c[v>>2]=0;c[x>>2]=c[(c[w>>2]|0)+8>>2];while(1){if((c[x>>2]|0)==0){break}do{if((c[(c[y>>2]|0)+(c[v>>2]<<2)>>2]|0)!=0){if((d[z>>0]|0)==0){$t(c[W>>2]|0,c[w>>2]|0,(c[A>>2]|0)+1|0);a[z>>0]=1}c[C>>2]=(c[B>>2]|0)+(c[v>>2]|0);c[D>>2]=fs(c[W>>2]|0)|0;if((c[(c[x>>2]|0)+36>>2]|0)!=0){To(c[W>>2]|0,28,0,c[(c[y>>2]|0)+(c[v>>2]<<2)>>2]|0)|0;c[(c[E>>2]|0)+92>>2]=(c[A>>2]|0)+1;hs(c[E>>2]|0,c[(c[x>>2]|0)+36>>2]|0,c[D>>2]|0,8);c[(c[E>>2]|0)+92>>2]=0}c[F>>2]=is(c[E>>2]|0,e[(c[x>>2]|0)+52>>1]|0)|0;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(e[(c[x>>2]|0)+52>>1]|0)){break}c[r>>2]=b[(c[(c[x>>2]|0)+4>>2]|0)+(c[G>>2]<<1)>>1]|0;if((c[r>>2]|0)>=0?(c[r>>2]|0)!=(b[(c[w>>2]|0)+36>>1]|0):0){c[L>>2]=(c[r>>2]|0)+(c[A>>2]|0)+1;ba=81}else{ba=76}if((ba|0)==76?(ba=0,(c[M>>2]|0)!=((c[F>>2]|0)+(c[G>>2]|0)|0)):0){c[L>>2]=c[A>>2];if((c[(c[x>>2]|0)+36>>2]|0)!=0){ba=-1}else{ba=(c[F>>2]|0)+(c[G>>2]|0)|0}c[M>>2]=ba;ba=81}if((ba|0)==81){ba=0;To(c[W>>2]|0,34,c[L>>2]|0,(c[F>>2]|0)+(c[G>>2]|0)|0)|0}c[G>>2]=(c[G>>2]|0)+1}Wo(c[W>>2]|0,48,c[F>>2]|0,e[(c[x>>2]|0)+52>>1]|0,c[(c[y>>2]|0)+(c[v>>2]<<2)>>2]|0)|0;Ds(c[E>>2]|0,c[F>>2]|0,e[(c[x>>2]|0)+52>>1]|0);if(((d[H>>0]|0)!=0?(c[I>>2]|0)==(c[x>>2]|0):0)?(d[J>>0]|0)==0:0){cs(c[W>>2]|0,c[D>>2]|0);break}c[N>>2]=d[(c[x>>2]|0)+54>>0]|0;if((c[N>>2]|0)==0){ls(c[E>>2]|0,c[F>>2]|0,e[(c[x>>2]|0)+52>>1]|0);cs(c[W>>2]|0,c[D>>2]|0);break}if((d[O>>0]|0)==10){if((c[N>>2]|0)==10){c[N>>2]=2}}else{c[N>>2]=d[O>>0]|0}Re(c[W>>2]|0,64,c[C>>2]|0,c[D>>2]|0,c[F>>2]|0,e[(c[x>>2]|0)+50>>1]|0)|0;if((c[x>>2]|0)==(c[I>>2]|0)){ca=c[F>>2]|0}else{ca=is(c[E>>2]|0,c[R>>2]|0)|0}c[U>>2]=ca;if(!((d[H>>0]|0)==0?(c[N>>2]|0)!=5:0)){ba=98}c:do{if((ba|0)==98){ba=0;if((a[(c[w>>2]|0)+44>>0]&32|0)==0){To(c[W>>2]|0,109,c[C>>2]|0,c[U>>2]|0)|0;if((a[H>>0]|0)==0){break}Wo(c[W>>2]|0,79,c[U>>2]|0,c[D>>2]|0,c[X>>2]|0)|0;Se(c[W>>2]|0,-120);break}d:do{if((c[x>>2]|0)!=(c[I>>2]|0)){c[G>>2]=0;while(1){if((c[G>>2]|0)>=(e[(c[I>>2]|0)+50>>1]|0)){break d}c[S>>2]=(ns(c[x>>2]|0,b[(c[(c[I>>2]|0)+4>>2]|0)+(c[G>>2]<<1)>>1]|0)|0)<<16>>16;Wo(c[W>>2]|0,46,c[C>>2]|0,c[S>>2]|0,(c[U>>2]|0)+(c[G>>2]|0)|0)|0;c[G>>2]=(c[G>>2]|0)+1}}}while(0);if((a[H>>0]|0)!=0){f=vr(c[W>>2]|0)|0;c[aa>>2]=f+(e[(c[I>>2]|0)+50>>1]|0);c[$>>2]=78;c[K>>2]=(a[(c[x>>2]|0)+55>>0]&3|0)==2?c[F>>2]|0:c[U>>2]|0;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(e[(c[I>>2]|0)+50>>1]|0)){break c}c[_>>2]=wr(c[E>>2]|0,c[(c[(c[I>>2]|0)+32>>2]|0)+(c[G>>2]<<2)>>2]|0)|0;c[S>>2]=b[(c[(c[I>>2]|0)+4>>2]|0)+(c[G>>2]<<1)>>1]|0;if((c[G>>2]|0)==((e[(c[I>>2]|0)+50>>1]|0)-1|0)){c[aa>>2]=c[D>>2];c[$>>2]=79}Vo(c[W>>2]|0,c[$>>2]|0,(c[X>>2]|0)+1+(c[S>>2]|0)|0,c[aa>>2]|0,(c[K>>2]|0)+(c[G>>2]|0)|0,c[_>>2]|0,-4)|0;Se(c[W>>2]|0,-120);c[G>>2]=(c[G>>2]|0)+1}}}}while(0);ca=c[N>>2]|0;if((ca|0)==3|(ca|0)==2|(ca|0)==1){$r(c[E>>2]|0,c[N>>2]|0,c[x>>2]|0)}else if((ca|0)==4){To(c[W>>2]|0,16,0,c[V>>2]|0)|0}else{c[s>>2]=0;Mv(c[E>>2]|0);if((c[(c[T>>2]|0)+24>>2]&262144|0)!=0){c[s>>2]=Ut(c[E>>2]|0,c[w>>2]|0,109,0,0)|0}Nv(c[E>>2]|0,c[w>>2]|0,c[s>>2]|0,c[Q>>2]|0,c[B>>2]|0,c[U>>2]|0,c[R>>2]&65535,0,5,(c[x>>2]|0)==(c[I>>2]|0)&255);c[P>>2]=1}cs(c[W>>2]|0,c[D>>2]|0);ls(c[E>>2]|0,c[F>>2]|0,e[(c[x>>2]|0)+52>>1]|0);if((c[U>>2]|0)!=(c[F>>2]|0)){ls(c[E>>2]|0,c[U>>2]|0,c[R>>2]|0)}}}while(0);c[x>>2]=c[(c[x>>2]|0)+20>>2];c[v>>2]=(c[v>>2]|0)+1}if((c[t>>2]|0)==0){g=c[P>>2]|0;f=c[Y>>2]|0;c[f>>2]=g;i=Z;return}To(c[W>>2]|0,16,0,(c[t>>2]|0)+1|0)|0;mp(c[W>>2]|0,c[u>>2]|0);g=c[P>>2]|0;f=c[Y>>2]|0;c[f>>2]=g;i=Z;return}function fu(e,f,g,h,j,k){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;D=i;i=i+112|0;p=D+104|0;q=D+100|0;z=D+96|0;y=D+92|0;r=D+88|0;s=D+84|0;o=D+80|0;n=D+76|0;A=D+72|0;K=D+68|0;v=D+64|0;B=D+60|0;C=D+56|0;I=D+52|0;l=D+48|0;J=D+44|0;F=D+40|0;E=D+36|0;L=D+32|0;M=D+28|0;N=D+24|0;H=D+20|0;G=D+16|0;t=D+12|0;w=D+8|0;u=D+4|0;x=D;c[p>>2]=e;c[q>>2]=f;c[z>>2]=g;c[y>>2]=h;c[r>>2]=j;c[s>>2]=k;c[o>>2]=c[c[p>>2]>>2];c[v>>2]=d[(c[p>>2]|0)+438>>0]|0;if((c[(c[o>>2]|0)+24>>2]&524288|0)==0){i=D;return}c[A>>2]=Qe(c[o>>2]|0,c[(c[q>>2]|0)+68>>2]|0)|0;c[K>>2]=c[(c[(c[o>>2]|0)+16>>2]|0)+(c[A>>2]<<4)>>2];c[n>>2]=c[(c[q>>2]|0)+16>>2];a:while(1){if((c[n>>2]|0)==0){m=38;break}c[C>>2]=0;c[I>>2]=0;c[E>>2]=0;if(!(((c[r>>2]|0)!=0?(vc(c[c[q>>2]>>2]|0,c[(c[n>>2]|0)+8>>2]|0)|0)!=0:0)?(iu(c[q>>2]|0,c[n>>2]|0,c[r>>2]|0,c[s>>2]|0)|0)==0:0)){m=7}do{if((m|0)==7){m=0;if((a[(c[p>>2]|0)+438>>0]|0)!=0){c[B>>2]=fp(c[o>>2]|0,c[(c[n>>2]|0)+8>>2]|0,c[K>>2]|0)|0}else{c[B>>2]=Me(c[p>>2]|0,0,c[(c[n>>2]|0)+8>>2]|0,c[K>>2]|0)|0}if((c[B>>2]|0)!=0?(It(c[p>>2]|0,c[B>>2]|0,c[n>>2]|0,C,I)|0)==0:0){if((c[I>>2]|0)!=0){c[l>>2]=c[I>>2]}else{c[J>>2]=c[(c[n>>2]|0)+36>>2];c[l>>2]=J}c[F>>2]=0;while(1){if((c[F>>2]|0)>=(c[(c[n>>2]|0)+20>>2]|0)){break}if((c[(c[l>>2]|0)+(c[F>>2]<<2)>>2]|0)==(b[(c[q>>2]|0)+36>>1]|0)){c[(c[l>>2]|0)+(c[F>>2]<<2)>>2]=-1}if((c[(c[o>>2]|0)+276>>2]|0)!=0){if((c[C>>2]|0)!=0){k=b[(c[(c[C>>2]|0)+4>>2]|0)+(c[F>>2]<<1)>>1]|0}else{k=b[(c[B>>2]|0)+36>>1]|0}c[G>>2]=c[(c[(c[B>>2]|0)+4>>2]|0)+((k<<16>>16)*24|0)>>2];c[H>>2]=Kq(c[p>>2]|0,c[c[B>>2]>>2]|0,c[G>>2]|0,c[A>>2]|0)|0;c[E>>2]=(c[H>>2]|0)==2&1}c[F>>2]=(c[F>>2]|0)+1}sr(c[p>>2]|0,c[A>>2]|0,c[(c[B>>2]|0)+32>>2]|0,0,c[c[B>>2]>>2]|0);e=(c[p>>2]|0)+68|0;c[e>>2]=(c[e>>2]|0)+1;if((c[z>>2]|0)!=0){ju(c[p>>2]|0,c[A>>2]|0,c[B>>2]|0,c[C>>2]|0,c[n>>2]|0,c[l>>2]|0,c[z>>2]|0,-1,c[E>>2]|0)}if((c[y>>2]|0)!=0){ju(c[p>>2]|0,c[A>>2]|0,c[B>>2]|0,c[C>>2]|0,c[n>>2]|0,c[l>>2]|0,c[y>>2]|0,1,c[E>>2]|0)}Wb(c[o>>2]|0,c[I>>2]|0);break}if((c[v>>2]|0)==0){m=57;break a}if((d[(c[o>>2]|0)+64>>0]|0)!=0){m=57;break a}if((c[B>>2]|0)==0){c[L>>2]=Ro(c[p>>2]|0)|0;e=vr(c[L>>2]|0)|0;c[M>>2]=e+(c[(c[n>>2]|0)+20>>2]|0)+1;c[F>>2]=0;while(1){if((c[F>>2]|0)>=(c[(c[n>>2]|0)+20>>2]|0)){break}c[N>>2]=(c[(c[n>>2]|0)+36+(c[F>>2]<<3)>>2]|0)+(c[z>>2]|0)+1;To(c[L>>2]|0,76,c[N>>2]|0,c[M>>2]|0)|0;c[F>>2]=(c[F>>2]|0)+1}To(c[L>>2]|0,130,d[(c[n>>2]|0)+24>>0]|0,-1)|0}}}while(0);c[n>>2]=c[(c[n>>2]|0)+4>>2]}if((m|0)==38){c[n>>2]=Cp(c[q>>2]|0)|0;b:while(1){if((c[n>>2]|0)==0){m=57;break}c[t>>2]=0;c[u>>2]=0;if(!((c[r>>2]|0)!=0?(ku(c[q>>2]|0,c[n>>2]|0,c[r>>2]|0,c[s>>2]|0)|0)==0:0)){m=42}do{if((m|0)==42){m=0;if((((a[(c[n>>2]|0)+24>>0]|0)==0?(c[(c[o>>2]|0)+24>>2]&16777216|0)==0:0)?(c[(c[p>>2]|0)+408>>2]|0)==0:0)?(a[(c[p>>2]|0)+20>>0]|0)==0:0){break}if((It(c[p>>2]|0,c[q>>2]|0,c[n>>2]|0,t,u)|0)!=0){if((c[v>>2]|0)==0){m=57;break b}if((d[(c[o>>2]|0)+64>>0]|0)!=0){m=57;break b}else{break}}c[w>>2]=Xn(c[o>>2]|0,0,0,0)|0;if((c[w>>2]|0)!=0){c[x>>2]=(c[w>>2]|0)+8;c[(c[x>>2]|0)+16>>2]=c[c[n>>2]>>2];c[(c[x>>2]|0)+8>>2]=c[c[c[n>>2]>>2]>>2];f=(c[(c[x>>2]|0)+16>>2]|0)+40|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;f=(c[p>>2]|0)+68|0;e=c[f>>2]|0;c[f>>2]=e+1;c[(c[x>>2]|0)+40>>2]=e;if((c[y>>2]|0)!=0){lu(c[p>>2]|0,c[w>>2]|0,c[q>>2]|0,c[t>>2]|0,c[n>>2]|0,c[u>>2]|0,c[y>>2]|0,-1)}if((c[z>>2]|0)!=0){lu(c[p>>2]|0,c[w>>2]|0,c[q>>2]|0,c[t>>2]|0,c[n>>2]|0,c[u>>2]|0,c[z>>2]|0,1)}c[(c[x>>2]|0)+8>>2]=0;gn(c[o>>2]|0,c[w>>2]|0)}Wb(c[o>>2]|0,c[u>>2]|0)}}while(0);c[n>>2]=c[(c[n>>2]|0)+12>>2]}if((m|0)==57){i=D;return}}else if((m|0)==57){i=D;return}}function gu(e,f,g,h,j,k,l,m,n){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var 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;A=i;i=i+64|0;t=A+52|0;z=A+48|0;q=A+44|0;B=A+40|0;s=A+36|0;D=A+32|0;x=A+28|0;w=A+24|0;v=A+20|0;p=A+16|0;E=A+12|0;u=A+57|0;y=A+8|0;r=A+4|0;C=A;o=A+56|0;c[t>>2]=e;c[z>>2]=f;c[q>>2]=g;c[B>>2]=h;c[s>>2]=j;c[D>>2]=k;c[x>>2]=l;c[w>>2]=m;c[v>>2]=n;a[o>>0]=0;c[p>>2]=Ro(c[t>>2]|0)|0;c[C>>2]=0;c[E>>2]=c[(c[z>>2]|0)+8>>2];while(1){if((c[E>>2]|0)==0){break}if((c[(c[D>>2]|0)+(c[C>>2]<<2)>>2]|0)!=0){a[o>>0]=1;if((c[(c[E>>2]|0)+36>>2]|0)!=0){f=c[p>>2]|0;e=c[(c[D>>2]|0)+(c[C>>2]<<2)>>2]|0;To(f,76,e,(vr(c[p>>2]|0)|0)+2|0)|0}To(c[p>>2]|0,107,(c[B>>2]|0)+(c[C>>2]|0)|0,c[(c[D>>2]|0)+(c[C>>2]<<2)>>2]|0)|0;a[u>>0]=0;a[u>>0]=(c[v>>2]|0)!=0?16:0;if((a[(c[E>>2]|0)+55>>0]&3|0)==2?(a[(c[z>>2]|0)+44>>0]&32|0)!=0:0){a[u>>0]=d[u>>0]|1}if((a[u>>0]|0)!=0){Se(c[p>>2]|0,a[u>>0]|0)}}c[E>>2]=c[(c[E>>2]|0)+20>>2];c[C>>2]=(c[C>>2]|0)+1}if((a[(c[z>>2]|0)+44>>0]&32|0)!=0){i=A;return}c[y>>2]=(c[s>>2]|0)+1;c[r>>2]=Zo(c[t>>2]|0)|0;Wo(c[p>>2]|0,48,c[y>>2]|0,b[(c[z>>2]|0)+38>>1]|0,c[r>>2]|0)|0;if((a[o>>0]|0)==0){$t(c[p>>2]|0,c[z>>2]|0,0)}Ds(c[t>>2]|0,c[y>>2]|0,b[(c[z>>2]|0)+38>>1]|0);if((a[(c[t>>2]|0)+18>>0]|0)!=0){a[u>>0]=0}else{a[u>>0]=1;a[u>>0]=d[u>>0]|((c[x>>2]|0)!=0?4:2)}if((c[w>>2]|0)!=0){a[u>>0]=d[u>>0]|8}if((c[v>>2]|0)!=0){a[u>>0]=d[u>>0]|16}Wo(c[p>>2]|0,70,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;if((a[(c[t>>2]|0)+18>>0]|0)==0){Ye(c[p>>2]|0,-1,c[c[z>>2]>>2]|0,0)}Se(c[p>>2]|0,a[u>>0]|0);i=A;return}function hu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+32|0;h=b+28|0;d=b+24|0;k=b+20|0;e=b+16|0;f=b+12|0;l=b+8|0;j=b+4|0;g=b;c[h>>2]=a;c[k>>2]=c[(c[h>>2]|0)+8>>2];c[e>>2]=c[c[h>>2]>>2];c[d>>2]=c[(c[h>>2]|0)+404>>2];while(1){if((c[d>>2]|0)==0){break}c[f>>2]=(c[(c[e>>2]|0)+16>>2]|0)+(c[(c[d>>2]|0)+8>>2]<<4);c[g>>2]=c[(c[d>>2]|0)+12>>2];c[j>>2]=Zo(c[h>>2]|0)|0;tr(c[h>>2]|0,0,c[(c[d>>2]|0)+8>>2]|0,c[(c[(c[f>>2]|0)+12>>2]|0)+72>>2]|0,53);c[l>>2]=rr(c[k>>2]|0,77,(c[g>>2]|0)+1|0)|0;To(c[k>>2]|0,69,0,(c[g>>2]|0)+1|0)|0;mp(c[k>>2]|0,c[l>>2]|0);Wo(c[k>>2]|0,48,(c[g>>2]|0)-1|0,2,c[j>>2]|0)|0;Wo(c[k>>2]|0,70,0,c[j>>2]|0,(c[g>>2]|0)+1|0)|0;Se(c[k>>2]|0,8);$o(c[k>>2]|0,58)|0;_o(c[h>>2]|0,c[j>>2]|0);c[d>>2]=c[c[d>>2]>>2]}i=b;return}function iu(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+24|0;l=g+20|0;j=g+16|0;o=g+12|0;m=g+8|0;n=g+4|0;k=g;c[l>>2]=a;c[j>>2]=d;c[o>>2]=e;c[m>>2]=f;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[(c[j>>2]|0)+20>>2]|0)){j=9;break}c[k>>2]=c[(c[j>>2]|0)+36+(c[n>>2]<<3)>>2];if((c[(c[o>>2]|0)+(c[k>>2]<<2)>>2]|0)>=0){j=4;break}if((c[k>>2]|0)==(b[(c[l>>2]|0)+36>>1]|0)?(c[m>>2]|0)!=0:0){j=7;break}c[n>>2]=(c[n>>2]|0)+1}if((j|0)==4){c[h>>2]=1;a=c[h>>2]|0;i=g;return a|0}else if((j|0)==7){c[h>>2]=1;a=c[h>>2]|0;i=g;return a|0}else if((j|0)==9){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}return 0}function ju(e,f,g,h,j,k,l,m,n){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;t=i;i=i+96|0;u=t+84|0;w=t+80|0;A=t+76|0;E=t+72|0;s=t+68|0;z=t+64|0;y=t+60|0;r=t+56|0;J=t+52|0;v=t+48|0;p=t+44|0;o=t+40|0;q=t+36|0;K=t+32|0;x=t+28|0;I=t+24|0;C=t+20|0;B=t+16|0;D=t+12|0;H=t+8|0;F=t+4|0;G=t;c[u>>2]=e;c[w>>2]=f;c[A>>2]=g;c[E>>2]=h;c[s>>2]=j;c[z>>2]=k;c[y>>2]=l;c[r>>2]=m;c[J>>2]=n;c[p>>2]=Ro(c[u>>2]|0)|0;c[o>>2]=(c[(c[u>>2]|0)+68>>2]|0)-1;c[q>>2]=fs(c[p>>2]|0)|0;if((c[r>>2]|0)<0){To(c[p>>2]|0,131,d[(c[s>>2]|0)+24>>0]|0,c[q>>2]|0)|0}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[(c[s>>2]|0)+20>>2]|0)){break}c[K>>2]=(c[(c[z>>2]|0)+(c[v>>2]<<2)>>2]|0)+(c[y>>2]|0)+1;To(c[p>>2]|0,76,c[K>>2]|0,c[q>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+1}do{if((c[J>>2]|0)==0){if((c[E>>2]|0)==0){c[I>>2]=Zo(c[u>>2]|0)|0;To(c[p>>2]|0,34,(c[c[z>>2]>>2]|0)+1+(c[y>>2]|0)|0,c[I>>2]|0)|0;c[x>>2]=To(c[p>>2]|0,38,c[I>>2]|0,0)|0;if((c[A>>2]|0)==(c[c[s>>2]>>2]|0)?(c[r>>2]|0)==1:0){Wo(c[p>>2]|0,79,c[y>>2]|0,c[q>>2]|0,c[I>>2]|0)|0;Se(c[p>>2]|0,-120)}tr(c[u>>2]|0,c[o>>2]|0,c[w>>2]|0,c[A>>2]|0,52);Wo(c[p>>2]|0,67,c[o>>2]|0,0,c[I>>2]|0)|0;To(c[p>>2]|0,16,0,c[q>>2]|0)|0;e=c[p>>2]|0;mp(e,(vr(c[p>>2]|0)|0)-2|0);mp(c[p>>2]|0,c[x>>2]|0);_o(c[u>>2]|0,c[I>>2]|0);break}c[C>>2]=c[(c[s>>2]|0)+20>>2];c[B>>2]=is(c[u>>2]|0,c[C>>2]|0)|0;c[D>>2]=Zo(c[u>>2]|0)|0;Wo(c[p>>2]|0,52,c[o>>2]|0,c[(c[E>>2]|0)+44>>2]|0,c[w>>2]|0)|0;ur(c[u>>2]|0,c[E>>2]|0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[C>>2]|0)){break}To(c[p>>2]|0,33,(c[(c[z>>2]|0)+(c[v>>2]<<2)>>2]|0)+1+(c[y>>2]|0)|0,(c[B>>2]|0)+(c[v>>2]|0)|0)|0;c[v>>2]=(c[v>>2]|0)+1}if((c[A>>2]|0)==(c[c[s>>2]>>2]|0)?(c[r>>2]|0)==1:0){e=vr(c[p>>2]|0)|0;c[H>>2]=e+(c[C>>2]|0)+1;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[C>>2]|0)){break}c[F>>2]=(c[(c[z>>2]|0)+(c[v>>2]<<2)>>2]|0)+1+(c[y>>2]|0);c[G>>2]=(b[(c[(c[E>>2]|0)+4>>2]|0)+(c[v>>2]<<1)>>1]|0)+1+(c[y>>2]|0);if((b[(c[(c[E>>2]|0)+4>>2]|0)+(c[v>>2]<<1)>>1]|0)==(b[(c[A>>2]|0)+36>>1]|0)){c[G>>2]=c[y>>2]}Wo(c[p>>2]|0,78,c[F>>2]|0,c[H>>2]|0,c[G>>2]|0)|0;Se(c[p>>2]|0,8);c[v>>2]=(c[v>>2]|0)+1}To(c[p>>2]|0,16,0,c[q>>2]|0)|0}j=c[p>>2]|0;h=c[B>>2]|0;g=c[C>>2]|0;f=c[D>>2]|0;e=Jt(c[p>>2]|0,c[E>>2]|0)|0;Vo(j,48,h,g,f,e,c[C>>2]|0)|0;Re(c[p>>2]|0,66,c[o>>2]|0,c[q>>2]|0,c[D>>2]|0,0)|0;_o(c[u>>2]|0,c[D>>2]|0);ls(c[u>>2]|0,c[B>>2]|0,c[C>>2]|0)}}while(0);if((((a[(c[s>>2]|0)+24>>0]|0)==0?(c[(c[c[u>>2]>>2]|0)+24>>2]&16777216|0)==0:0)?(c[(c[u>>2]|0)+408>>2]|0)==0:0)?(a[(c[u>>2]|0)+20>>0]|0)==0:0){bs(c[u>>2]|0,787,2,0,-2,4);e=c[p>>2]|0;f=c[q>>2]|0;cs(e,f);f=c[p>>2]|0;e=c[o>>2]|0;rr(f,58,e)|0;i=t;return}if((c[r>>2]|0)>0?(d[(c[s>>2]|0)+24>>0]|0)==0:0){v=c[u>>2]|0;if((c[(c[u>>2]|0)+408>>2]|0)!=0){v=c[v+408>>2]|0}a[v+21>>0]=1}To(c[p>>2]|0,130,d[(c[s>>2]|0)+24>>0]|0,c[r>>2]|0)|0;e=c[p>>2]|0;f=c[q>>2]|0;cs(e,f);f=c[p>>2]|0;e=c[o>>2]|0;rr(f,58,e)|0;i=t;return}function ku(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+48|0;q=k+32|0;m=k+28|0;n=k+24|0;h=k+20|0;r=k+16|0;o=k+12|0;p=k+8|0;l=k+4|0;s=k;c[m>>2]=d;c[n>>2]=e;c[h>>2]=f;c[r>>2]=g;c[o>>2]=0;a:while(1){if((c[o>>2]|0)>=(c[(c[n>>2]|0)+20>>2]|0)){j=15;break}c[p>>2]=c[(c[n>>2]|0)+36+(c[o>>2]<<3)+4>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=(b[(c[m>>2]|0)+38>>1]|0)){break}if((c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0)<0){if((c[l>>2]|0)==(b[(c[m>>2]|0)+36>>1]|0)?(c[r>>2]|0)!=0:0){j=8}}else{j=8}do{if((j|0)==8){j=0;c[s>>2]=(c[(c[m>>2]|0)+4>>2]|0)+((c[l>>2]|0)*24|0);g=c[s>>2]|0;if((c[p>>2]|0)!=0){if(0==(vc(c[g>>2]|0,c[p>>2]|0)|0)){j=10;break a}else{break}}else{if((a[g+23>>0]&1|0)!=0){j=12;break a}else{break}}}}while(0);c[l>>2]=(c[l>>2]|0)+1}c[o>>2]=(c[o>>2]|0)+1}if((j|0)==10){c[q>>2]=1;d=c[q>>2]|0;i=k;return d|0}else if((j|0)==12){c[q>>2]=1;d=c[q>>2]|0;i=k;return d|0}else if((j|0)==15){c[q>>2]=0;d=c[q>>2]|0;i=k;return d|0}return 0}function lu(f,g,h,j,k,l,m,n){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;v=i;i=i+144|0;w=v+128|0;J=v+124|0;z=v+120|0;G=v+116|0;t=v+112|0;M=v+108|0;A=v+104|0;o=v+100|0;q=v+96|0;E=v+92|0;r=v+88|0;H=v+56|0;p=v+48|0;s=v+44|0;u=v+40|0;L=v+36|0;O=v+32|0;P=v+28|0;K=v+134|0;N=v+24|0;y=v+20|0;B=v+16|0;x=v+12|0;I=v+8|0;D=v+4|0;F=v;C=v+132|0;c[w>>2]=f;c[J>>2]=g;c[z>>2]=h;c[G>>2]=j;c[t>>2]=k;c[M>>2]=l;c[A>>2]=m;c[o>>2]=n;c[q>>2]=c[c[w>>2]>>2];c[r>>2]=0;c[s>>2]=0;c[u>>2]=Ro(c[w>>2]|0)|0;if((c[o>>2]|0)<0){c[s>>2]=To(c[u>>2]|0,131,d[(c[t>>2]|0)+24>>0]|0,0)|0}c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[(c[t>>2]|0)+20>>2]|0)){break}if((c[G>>2]|0)!=0){n=b[(c[(c[G>>2]|0)+4>>2]|0)+(c[E>>2]<<1)>>1]|0}else{n=-1}b[K>>1]=n;c[L>>2]=mu(c[w>>2]|0,c[z>>2]|0,c[A>>2]|0,b[K>>1]|0)|0;if((c[M>>2]|0)!=0){n=c[(c[M>>2]|0)+(c[E>>2]<<2)>>2]|0}else{n=c[(c[t>>2]|0)+36>>2]|0}b[K>>1]=n;c[N>>2]=c[(c[(c[c[t>>2]>>2]|0)+4>>2]|0)+((b[K>>1]|0)*24|0)>>2];c[O>>2]=Un(c[q>>2]|0,27,c[N>>2]|0)|0;c[P>>2]=Dn(c[w>>2]|0,79,c[L>>2]|0,c[O>>2]|0,0)|0;c[r>>2]=Xq(c[q>>2]|0,c[r>>2]|0,c[P>>2]|0)|0;c[E>>2]=(c[E>>2]|0)+1}if((c[z>>2]|0)==(c[c[t>>2]>>2]|0)?(c[o>>2]|0)>0:0){if((a[(c[z>>2]|0)+44>>0]&32|0)==0){c[B>>2]=mu(c[w>>2]|0,c[z>>2]|0,c[A>>2]|0,-1)|0;c[x>>2]=nu(c[q>>2]|0,c[z>>2]|0,c[(c[J>>2]|0)+48>>2]|0,-1)|0;c[y>>2]=Dn(c[w>>2]|0,78,c[B>>2]|0,c[x>>2]|0,0)|0}else{c[D>>2]=0;c[F>>2]=Gr(c[z>>2]|0)|0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(e[(c[F>>2]|0)+50>>1]|0)){break}b[C>>1]=b[(c[(c[G>>2]|0)+4>>2]|0)+(c[E>>2]<<1)>>1]|0;c[B>>2]=mu(c[w>>2]|0,c[z>>2]|0,c[A>>2]|0,b[C>>1]|0)|0;c[x>>2]=nu(c[q>>2]|0,c[z>>2]|0,c[(c[J>>2]|0)+48>>2]|0,b[C>>1]|0)|0;c[I>>2]=Dn(c[w>>2]|0,79,c[B>>2]|0,c[x>>2]|0,0)|0;c[D>>2]=Xq(c[q>>2]|0,c[D>>2]|0,c[I>>2]|0)|0;c[E>>2]=(c[E>>2]|0)+1}c[y>>2]=Dn(c[w>>2]|0,19,c[D>>2]|0,0,0)|0}c[r>>2]=Xq(c[q>>2]|0,c[r>>2]|0,c[y>>2]|0)|0}c[H+0>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;c[H+12>>2]=0;c[H+16>>2]=0;c[H+20>>2]=0;c[H+24>>2]=0;c[H+28>>2]=0;c[H+4>>2]=c[J>>2];c[H>>2]=c[w>>2];eq(H,c[r>>2]|0)|0;c[p>>2]=ou(c[w>>2]|0,c[J>>2]|0,c[r>>2]|0,0,0,0,0)|0;if((c[o>>2]|0)>0?(d[(c[t>>2]|0)+24>>0]|0)==0:0){x=c[w>>2]|0;if((c[(c[w>>2]|0)+408>>2]|0)!=0){x=c[x+408>>2]|0}a[x+21>>0]=1}To(c[u>>2]|0,130,d[(c[t>>2]|0)+24>>0]|0,c[o>>2]|0)|0;if((c[p>>2]|0)!=0){pu(c[p>>2]|0)}hn(c[q>>2]|0,c[r>>2]|0);if((c[s>>2]|0)==0){i=v;return}mp(c[u>>2]|0,c[s>>2]|0);i=v;return}function mu(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+32|0;k=n+24|0;h=n+20|0;q=n+16|0;o=n+28|0;j=n+12|0;p=n+8|0;l=n+4|0;m=n;c[k>>2]=d;c[h>>2]=e;c[q>>2]=f;b[o>>1]=g;c[m>>2]=c[c[k>>2]>>2];c[j>>2]=Un(c[m>>2]|0,159,0)|0;if((c[j>>2]|0)==0){d=c[j>>2]|0;i=n;return d|0}if((b[o>>1]|0)>=0?(b[o>>1]|0)!=(b[(c[h>>2]|0)+36>>1]|0):0){c[p>>2]=(c[(c[h>>2]|0)+4>>2]|0)+((b[o>>1]|0)*24|0);c[(c[j>>2]|0)+28>>2]=(c[q>>2]|0)+(b[o>>1]|0)+1;a[(c[j>>2]|0)+1>>0]=a[(c[p>>2]|0)+21>>0]|0;c[l>>2]=c[(c[p>>2]|0)+16>>2];if((c[l>>2]|0)==0){c[l>>2]=c[c[(c[m>>2]|0)+8>>2]>>2]}c[j>>2]=xq(c[k>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;d=c[j>>2]|0;i=n;return d|0}c[(c[j>>2]|0)+28>>2]=c[q>>2];a[(c[j>>2]|0)+1>>0]=100;d=c[j>>2]|0;i=n;return d|0}function nu(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+12|0;j=g+8|0;k=g+4|0;l=g+16|0;h=g;c[m>>2]=a;c[j>>2]=d;c[k>>2]=e;b[l>>1]=f;c[h>>2]=Un(c[m>>2]|0,154,0)|0;if((c[h>>2]|0)==0){m=c[h>>2]|0;i=g;return m|0}c[(c[h>>2]|0)+44>>2]=c[j>>2];c[(c[h>>2]|0)+28>>2]=c[k>>2];b[(c[h>>2]|0)+32>>1]=b[l>>1]|0;m=c[h>>2]|0;i=g;return m|0}function ou(f,g,h,j,k,l,m){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0;r=i;i=i+176|0;Z=r+24|0;q=r+164|0;L=r+160|0;I=r+156|0;X=r+152|0;V=r+148|0;S=r+144|0;F=r+168|0;W=r+140|0;Y=r+136|0;n=r+132|0;t=r+128|0;s=r+124|0;M=r+16|0;N=r+104|0;R=r+100|0;J=r+96|0;v=r+92|0;K=r+88|0;u=r+84|0;U=r+80|0;Q=r+8|0;P=r+76|0;O=r+72|0;w=r+68|0;A=r+64|0;y=r+60|0;x=r+56|0;z=r+52|0;E=r+48|0;C=r;B=r+44|0;G=r+40|0;T=r+36|0;H=r+32|0;p=r+28|0;c[L>>2]=f;c[I>>2]=g;c[X>>2]=h;c[V>>2]=j;c[S>>2]=k;b[F>>1]=l;c[W>>2]=m;c[s>>2]=c[(c[L>>2]|0)+8>>2];c[u>>2]=c[c[L>>2]>>2];c[N+0>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;c[N+12>>2]=0;c[N+16>>2]=0;if((c[V>>2]|0)!=0?(c[c[V>>2]>>2]|0)>=64:0){c[V>>2]=0}c[N+8>>2]=c[V>>2];if((b[(c[u>>2]|0)+60>>1]&32|0)!=0){b[F>>1]=e[F>>1]&-1025}if((c[c[I>>2]>>2]|0)>64){f=c[L>>2]|0;c[Z>>2]=64;Ne(f,23360,Z);c[q>>2]=0;f=c[q>>2]|0;i=r;return f|0}if((b[F>>1]&64|0)!=0){j=1}else{j=c[c[I>>2]>>2]|0}c[n>>2]=j;c[Y>>2]=815+(((c[n>>2]|0)-1|0)*72|0)&-8;c[t>>2]=ne(c[u>>2]|0,(c[Y>>2]|0)+72|0)|0;a:do{if((a[(c[u>>2]|0)+64>>0]|0)==0){c[(c[t>>2]|0)+64>>2]=-1;c[(c[t>>2]|0)+60>>2]=-1;a[(c[t>>2]|0)+41>>0]=c[n>>2];c[c[t>>2]>>2]=c[L>>2];c[(c[t>>2]|0)+4>>2]=c[I>>2];c[(c[t>>2]|0)+8>>2]=c[V>>2];c[(c[t>>2]|0)+12>>2]=c[S>>2];f=fs(c[s>>2]|0)|0;c[(c[t>>2]|0)+48>>2]=f;c[(c[t>>2]|0)+52>>2]=f;b[(c[t>>2]|0)+34>>1]=b[F>>1]|0;c[(c[t>>2]|0)+56>>2]=c[(c[L>>2]|0)+424>>2];c[R>>2]=(c[t>>2]|0)+68;c[N>>2]=c[t>>2];c[N+4>>2]=(c[t>>2]|0)+328;c[N+12>>2]=(c[t>>2]|0)+(c[Y>>2]|0);vu(c[N+12>>2]|0);c[c[R>>2]>>2]=0;yu((c[t>>2]|0)+328|0,c[t>>2]|0);zu((c[t>>2]|0)+328|0,c[X>>2]|0,72);c[K>>2]=0;while(1){X=(c[n>>2]|0)==0;if((c[K>>2]|0)>=(c[(c[N+4>>2]|0)+12>>2]|0)){break}if(!(!X?(Ys(c[(c[(c[N+4>>2]|0)+20>>2]|0)+((c[K>>2]|0)*48|0)>>2]|0)|0)==0:0)){hs(c[L>>2]|0,c[(c[(c[N+4>>2]|0)+20>>2]|0)+((c[K>>2]|0)*48|0)>>2]|0,c[(c[t>>2]|0)+52>>2]|0,8);f=(c[(c[N+4>>2]|0)+20>>2]|0)+((c[K>>2]|0)*48|0)+20|0;a[f>>0]=d[f>>0]|4}c[K>>2]=(c[K>>2]|0)+1}if(X){if((c[V>>2]|0)!=0){a[(c[t>>2]|0)+36>>0]=c[c[V>>2]>>2]}if((b[F>>1]&1024|0)!=0){a[(c[t>>2]|0)+40>>0]=1}}c[K>>2]=0;while(1){if((c[K>>2]|0)>=(c[c[I>>2]>>2]|0)){break}Au(c[R>>2]|0,c[(c[I>>2]|0)+8+((c[K>>2]|0)*72|0)+40>>2]|0);c[K>>2]=(c[K>>2]|0)+1}Bu(c[I>>2]|0,(c[t>>2]|0)+328|0);if((a[(c[u>>2]|0)+64>>0]|0)==0){do{if((b[F>>1]&1024|0)!=0){if((Cu(c[L>>2]|0,c[I>>2]|0,(c[t>>2]|0)+328|0,c[S>>2]|0)|0)!=0){a[(c[t>>2]|0)+40>>0]=1;break}if((c[V>>2]|0)==0){f=(c[t>>2]|0)+34|0;b[f>>1]=e[f>>1]|512;c[(c[t>>2]|0)+8>>2]=c[S>>2]}}}while(0);if(!((c[n>>2]|0)==1?(Du(N)|0)!=0:0)){c[U>>2]=Eu(N)|0;if((c[U>>2]|0)!=0){break}Fu(c[t>>2]|0,0)|0;if((a[(c[u>>2]|0)+64>>0]|0)!=0){break}if((c[(c[t>>2]|0)+8>>2]|0)!=0?(Fu(c[t>>2]|0,(b[(c[t>>2]|0)+32>>1]|0)+1&65535)|0,(a[(c[u>>2]|0)+64>>0]|0)!=0):0){break}}if((c[(c[t>>2]|0)+8>>2]|0)==0?(c[(c[u>>2]|0)+24>>2]&131072|0)!=0:0){f=(c[t>>2]|0)+24|0;c[f>>2]=-1;c[f+4>>2]=-1}if((c[(c[L>>2]|0)+64>>2]|0)==0?(d[(c[u>>2]|0)+64>>0]|0)==0:0){b:do{if(((d[(c[t>>2]|0)+41>>0]|0)>=2?(c[S>>2]|0)!=0:0)?(b[(c[u>>2]|0)+60>>1]&1024|0)==0:0){g=Gu(c[R>>2]|0,c[S>>2]|0)|0;f=Q;c[f>>2]=g;c[f+4>>2]=D;if((c[N+8>>2]|0)!=0){h=Gu(c[R>>2]|0,c[N+8>>2]|0)|0;Z=Q;g=c[Z+4>>2]|D;f=Q;c[f>>2]=c[Z>>2]|h;c[f+4>>2]=g}while(1){if((d[(c[t>>2]|0)+41>>0]|0)<2){break b}c[v>>2]=c[(c[t>>2]|0)+736+(((d[(c[t>>2]|0)+41>>0]|0)-1|0)*72|0)+56>>2];if((a[(c[(c[t>>2]|0)+4>>2]|0)+8+((d[(c[v>>2]|0)+16>>0]|0)*72|0)+36>>0]&8|0)==0){break b}if((b[F>>1]&1024|0)==0?(c[(c[v>>2]|0)+36>>2]&4096|0)==0:0){break b}g=Q;f=(c[v>>2]|0)+8|0;if((c[g>>2]&c[f>>2]|0)!=0?1:(c[g+4>>2]&c[f+4>>2]|0)!=0){break b}c[O>>2]=(c[(c[N+4>>2]|0)+20>>2]|0)+((c[(c[N+4>>2]|0)+12>>2]|0)*48|0);c[P>>2]=c[(c[N+4>>2]|0)+20>>2];while(1){if(!((c[P>>2]|0)>>>0<(c[O>>2]|0)>>>0)){break}g=(c[P>>2]|0)+40|0;f=(c[v>>2]|0)+8|0;if(((c[g>>2]&c[f>>2]|0)!=0?1:(c[g+4>>2]&c[f+4>>2]|0)!=0)?(c[(c[c[P>>2]>>2]|0)+4>>2]&1|0)==0:0){break}c[P>>2]=(c[P>>2]|0)+48}if((c[P>>2]|0)>>>0<(c[O>>2]|0)>>>0){break b}f=(c[t>>2]|0)+41|0;a[f>>0]=(a[f>>0]|0)+ -1<<24>>24;c[n>>2]=(c[n>>2]|0)+ -1}}}while(0);f=(c[c[t>>2]>>2]|0)+424|0;c[f>>2]=(c[f>>2]|0)+(b[(c[t>>2]|0)+32>>1]|0);if(((b[F>>1]&4|0)!=0?(c[(c[(c[t>>2]|0)+792>>2]|0)+36>>2]&4096|0)!=0:0)?(a[(c[t>>2]|0)+38>>0]=1,(a[(c[(c[I>>2]|0)+24>>2]|0)+44>>0]&32|0)==0):0){f=(c[(c[t>>2]|0)+792>>2]|0)+36|0;c[f>>2]=c[f>>2]&-65}f=M;c[f>>2]=-1;c[f+4>>2]=-1;c[K>>2]=0;c[J>>2]=(c[t>>2]|0)+736;while(1){if((c[K>>2]|0)>=(c[n>>2]|0)){break}c[y>>2]=(c[I>>2]|0)+8+((d[(c[J>>2]|0)+36>>0]|0)*72|0);c[w>>2]=c[(c[y>>2]|0)+16>>2];c[A>>2]=Qe(c[u>>2]|0,c[(c[w>>2]|0)+68>>2]|0)|0;c[v>>2]=c[(c[J>>2]|0)+56>>2];c:do{if((a[(c[w>>2]|0)+44>>0]&2|0)==0?(c[(c[w>>2]|0)+12>>2]|0)==0:0){if((c[(c[v>>2]|0)+36>>2]&1024|0)!=0){c[x>>2]=zp(c[u>>2]|0,c[w>>2]|0)|0;c[z>>2]=c[(c[y>>2]|0)+40>>2];Vo(c[s>>2]|0,149,c[z>>2]|0,0,0,c[x>>2]|0,-10)|0;break}if((a[(c[w>>2]|0)+44>>0]&16|0)!=0){break}do{if((c[(c[v>>2]|0)+36>>2]&64|0)==0){if((b[F>>1]&16|0)!=0){break}c[E>>2]=52;if((a[(c[t>>2]|0)+38>>0]|0)!=0){c[E>>2]=53;c[(c[t>>2]|0)+60>>2]=c[(c[y>>2]|0)+40>>2]}tr(c[L>>2]|0,c[(c[y>>2]|0)+40>>2]|0,c[A>>2]|0,c[w>>2]|0,c[E>>2]|0);if((a[(c[t>>2]|0)+38>>0]|0)!=0){break c}if((b[(c[w>>2]|0)+38>>1]|0)>=64){break c}if((a[(c[w>>2]|0)+44>>0]&32|0)!=0){break c}h=(c[y>>2]|0)+56|0;g=c[h+4>>2]|0;f=C;c[f>>2]=c[h>>2];c[f+4>>2]=g;c[B>>2]=0;while(1){f=C;if(!((c[f>>2]|0)!=0|(c[f+4>>2]|0)!=0)){break}g=C;g=cE(c[g>>2]|0,c[g+4>>2]|0,1)|0;f=C;c[f>>2]=g;c[f+4>>2]=D;c[B>>2]=(c[B>>2]|0)+1}g=c[s>>2]|0;f=(vr(c[s>>2]|0)|0)-1|0;Ye(g,f,c[B>>2]|0,-14);break c}}while(0);sr(c[L>>2]|0,c[A>>2]|0,c[(c[w>>2]|0)+32>>2]|0,0,c[c[w>>2]>>2]|0)}}while(0);do{if((c[(c[v>>2]|0)+36>>2]&512|0)!=0){c[G>>2]=c[(c[v>>2]|0)+28>>2];c[H>>2]=52;do{if((a[(c[w>>2]|0)+44>>0]&32|0)==0){o=88}else{if((a[(c[G>>2]|0)+55>>0]&3|0)!=2){o=88;break}if((b[F>>1]&64|0)==0){o=88;break}c[T>>2]=c[(c[J>>2]|0)+4>>2];c[H>>2]=0}}while(0);d:do{if((o|0)==88){o=0;if((a[(c[t>>2]|0)+38>>0]|0)==0){do{if((c[W>>2]|0)!=0){if((b[F>>1]&64|0)==0){break}c[T>>2]=c[W>>2];break d}}while(0);g=(c[L>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[T>>2]=f;break}c[p>>2]=c[(c[(c[y>>2]|0)+16>>2]|0)+8>>2];c[T>>2]=c[W>>2];while(1){if((c[p>>2]|0)==0){break}if((c[p>>2]|0)==(c[G>>2]|0)){break}c[T>>2]=(c[T>>2]|0)+1;c[p>>2]=c[(c[p>>2]|0)+20>>2]}c[H>>2]=53;c[(c[t>>2]|0)+64>>2]=c[T>>2]}}while(0);c[(c[J>>2]|0)+8>>2]=c[T>>2];if((c[H>>2]|0)==0){break}Wo(c[s>>2]|0,c[H>>2]|0,c[T>>2]|0,c[(c[G>>2]|0)+44>>2]|0,c[A>>2]|0)|0;ur(c[L>>2]|0,c[G>>2]|0)}}while(0);if((c[A>>2]|0)>=0){dp(c[L>>2]|0,c[A>>2]|0)}h=Hu((c[t>>2]|0)+68|0,c[(c[y>>2]|0)+40>>2]|0)|0;Z=M;g=c[Z+4>>2]&~D;f=M;c[f>>2]=c[Z>>2]&~h;c[f+4>>2]=g;c[K>>2]=(c[K>>2]|0)+1;c[J>>2]=(c[J>>2]|0)+72}f=vr(c[s>>2]|0)|0;c[(c[t>>2]|0)+44>>2]=f;if((a[(c[u>>2]|0)+64>>0]|0)==0){f=M;c[f>>2]=-1;c[f+4>>2]=-1;c[K>>2]=0;while(1){if((c[K>>2]|0)>=(c[n>>2]|0)){break}c[J>>2]=(c[t>>2]|0)+736+((c[K>>2]|0)*72|0);if((c[(c[(c[J>>2]|0)+56>>2]|0)+36>>2]&16384|0)!=0?(f=M,Iu(c[L>>2]|0,(c[t>>2]|0)+328|0,(c[I>>2]|0)+8+((d[(c[J>>2]|0)+36>>0]|0)*72|0)|0,c[f>>2]|0,c[f+4>>2]|0,c[J>>2]|0),(a[(c[u>>2]|0)+64>>0]|0)!=0):0){break a}Ju(c[L>>2]|0,c[I>>2]|0,c[J>>2]|0,c[K>>2]|0,d[(c[J>>2]|0)+36>>0]|0,b[F>>1]|0);g=vr(c[s>>2]|0)|0;c[(c[J>>2]|0)+32>>2]=g;g=M;g=Ku(c[t>>2]|0,c[K>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;f=M;c[f>>2]=g;c[f+4>>2]=D;c[(c[t>>2]|0)+48>>2]=c[(c[J>>2]|0)+24>>2];c[K>>2]=(c[K>>2]|0)+1}c[q>>2]=c[t>>2];f=c[q>>2]|0;i=r;return f|0}}}}else{Wb(c[u>>2]|0,c[t>>2]|0);c[t>>2]=0}}while(0);if((c[t>>2]|0)!=0){c[(c[L>>2]|0)+424>>2]=c[(c[t>>2]|0)+56>>2];qu(c[u>>2]|0,c[t>>2]|0)}c[q>>2]=0;f=c[q>>2]|0;i=r;return f|0}function pu(e){e=e|0;var f=0,g=0,h=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;k=i;i=i+80|0;u=k+76|0;h=k+72|0;n=k+68|0;v=k+64|0;o=k+60|0;f=k+56|0;r=k+52|0;j=k+48|0;z=k+44|0;B=k+40|0;A=k+36|0;l=k+32|0;m=k+28|0;p=k+24|0;q=k+20|0;s=k+16|0;t=k+12|0;y=k+8|0;w=k+4|0;x=k;c[u>>2]=e;c[h>>2]=c[c[u>>2]>>2];c[n>>2]=c[(c[h>>2]|0)+8>>2];c[r>>2]=c[(c[u>>2]|0)+4>>2];c[j>>2]=c[c[h>>2]>>2];Lt(c[h>>2]|0);c[v>>2]=(d[(c[u>>2]|0)+41>>0]|0)-1;while(1){if((c[v>>2]|0)<0){break}c[o>>2]=(c[u>>2]|0)+736+((c[v>>2]|0)*72|0);c[f>>2]=c[(c[o>>2]|0)+56>>2];cs(c[n>>2]|0,c[(c[o>>2]|0)+24>>2]|0);if((d[(c[o>>2]|0)+37>>0]|0)!=156){Wo(c[n>>2]|0,d[(c[o>>2]|0)+37>>0]|0,c[(c[o>>2]|0)+40>>2]|0,c[(c[o>>2]|0)+44>>2]|0,d[(c[o>>2]|0)+38>>0]|0)|0;Se(c[n>>2]|0,a[(c[o>>2]|0)+39>>0]|0)}if((c[(c[f>>2]|0)+36>>2]&2048|0)!=0?(c[(c[o>>2]|0)+48>>2]|0)>0:0){cs(c[n>>2]|0,c[(c[o>>2]|0)+16>>2]|0);c[A>>2]=c[(c[o>>2]|0)+48>>2];c[B>>2]=(c[(c[o>>2]|0)+52>>2]|0)+(((c[A>>2]|0)-1|0)*12|0);while(1){if((c[A>>2]|0)<=0){break}mp(c[n>>2]|0,(c[(c[B>>2]|0)+4>>2]|0)+1|0);To(c[n>>2]|0,d[(c[B>>2]|0)+8>>0]|0,c[c[B>>2]>>2]|0,c[(c[B>>2]|0)+4>>2]|0)|0;mp(c[n>>2]|0,(c[(c[B>>2]|0)+4>>2]|0)-1|0);c[A>>2]=(c[A>>2]|0)+ -1;c[B>>2]=(c[B>>2]|0)+ -12}Wb(c[j>>2]|0,c[(c[o>>2]|0)+52>>2]|0)}cs(c[n>>2]|0,c[(c[o>>2]|0)+12>>2]|0);if((c[(c[o>>2]|0)+20>>2]|0)!=0){To(c[n>>2]|0,16,0,c[(c[o>>2]|0)+20>>2]|0)|0;mp(c[n>>2]|0,c[(c[o>>2]|0)+20>>2]|0);mp(c[n>>2]|0,(c[(c[o>>2]|0)+20>>2]|0)-2|0)}if((c[c[o>>2]>>2]|0)!=0){c[z>>2]=rr(c[n>>2]|0,134,c[c[o>>2]>>2]|0)|0;if((c[(c[f>>2]|0)+36>>2]&64|0)==0){rr(c[n>>2]|0,101,c[(c[r>>2]|0)+8+((c[v>>2]|0)*72|0)+40>>2]|0)|0}if((c[(c[f>>2]|0)+36>>2]&512|0)!=0){rr(c[n>>2]|0,101,c[(c[o>>2]|0)+8>>2]|0)|0}C=c[n>>2]|0;e=c[o>>2]|0;if((d[(c[o>>2]|0)+37>>0]|0)==18){To(C,17,c[e+40>>2]|0,c[(c[o>>2]|0)+28>>2]|0)|0}else{To(C,16,0,c[e+28>>2]|0)|0}mp(c[n>>2]|0,c[z>>2]|0)}c[v>>2]=(c[v>>2]|0)+ -1}cs(c[n>>2]|0,c[(c[u>>2]|0)+52>>2]|0);c[v>>2]=0;c[o>>2]=(c[u>>2]|0)+736;while(1){if((c[v>>2]|0)>=(d[(c[u>>2]|0)+41>>0]|0)){break}c[q>>2]=0;c[s>>2]=(c[r>>2]|0)+8+((d[(c[o>>2]|0)+36>>0]|0)*72|0);c[t>>2]=c[(c[s>>2]|0)+16>>2];c[f>>2]=c[(c[o>>2]|0)+56>>2];a:do{if(((d[(c[s>>2]|0)+37>>0]|0)>>>2&1|0)!=0?(a[(c[j>>2]|0)+64>>0]|0)==0:0){c[m>>2]=vr(c[n>>2]|0)|0;c[l>>2]=c[(c[o>>2]|0)+32>>2];c[p>>2]=Ns(c[n>>2]|0,c[l>>2]|0)|0;while(1){if((c[l>>2]|0)>=(c[m>>2]|0)){break a}do{if((c[(c[p>>2]|0)+4>>2]|0)==(c[(c[o>>2]|0)+4>>2]|0)){z=c[p>>2]|0;if((d[c[p>>2]>>0]|0)==46){a[z>>0]=33;c[(c[p>>2]|0)+4>>2]=(c[(c[p>>2]|0)+8>>2]|0)+(c[(c[s>>2]|0)+32>>2]|0);c[(c[p>>2]|0)+8>>2]=c[(c[p>>2]|0)+12>>2];c[(c[p>>2]|0)+12>>2]=0;break}if((d[z>>0]|0)==100){a[c[p>>2]>>0]=28;c[(c[p>>2]|0)+4>>2]=0;c[(c[p>>2]|0)+12>>2]=0}}}while(0);c[l>>2]=(c[l>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+20}}else{g=35}}while(0);b:do{if((g|0)==35){g=0;if(((a[(c[t>>2]|0)+44>>0]&2|0)==0?(c[(c[t>>2]|0)+12>>2]|0)==0:0)?(b[(c[u>>2]|0)+34>>1]&16|0)==0:0){c[y>>2]=c[(c[f>>2]|0)+36>>2];if((a[(c[u>>2]|0)+38>>0]|0)==0?(c[y>>2]&64|0)==0:0){rr(c[n>>2]|0,58,c[(c[s>>2]|0)+40>>2]|0)|0}if(((c[y>>2]&512|0)!=0?(c[y>>2]&16640|0)==0:0)?(c[(c[o>>2]|0)+8>>2]|0)!=(c[(c[u>>2]|0)+64>>2]|0):0){rr(c[n>>2]|0,58,c[(c[o>>2]|0)+8>>2]|0)|0}}z=c[f>>2]|0;if((c[(c[f>>2]|0)+36>>2]&576|0)==0){if((c[z+36>>2]&8192|0)!=0){c[q>>2]=c[(c[o>>2]|0)+48>>2]}}else{c[q>>2]=c[z+28>>2]}if((c[q>>2]|0)!=0?(a[(c[j>>2]|0)+64>>0]|0)==0:0){c[m>>2]=vr(c[n>>2]|0)|0;c[l>>2]=c[(c[o>>2]|0)+32>>2];c[p>>2]=Ns(c[n>>2]|0,c[l>>2]|0)|0;while(1){if((c[l>>2]|0)>=(c[m>>2]|0)){break b}do{if((c[(c[p>>2]|0)+4>>2]|0)==(c[(c[o>>2]|0)+4>>2]|0)){z=c[p>>2]|0;if((d[c[p>>2]>>0]|0)!=46){if((d[z>>0]|0)!=100){break}c[(c[p>>2]|0)+4>>2]=c[(c[o>>2]|0)+8>>2];a[c[p>>2]>>0]=109;break}c[w>>2]=c[z+8>>2];if((a[(c[t>>2]|0)+44>>0]&32|0)!=0){c[x>>2]=Gr(c[t>>2]|0)|0;c[w>>2]=b[(c[(c[x>>2]|0)+4>>2]|0)+(c[w>>2]<<1)>>1]|0}c[w>>2]=(ns(c[q>>2]|0,c[w>>2]&65535)|0)<<16>>16;if((c[w>>2]|0)>=0){c[(c[p>>2]|0)+8>>2]=c[w>>2];c[(c[p>>2]|0)+4>>2]=c[(c[o>>2]|0)+8>>2]}}}while(0);c[l>>2]=(c[l>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+20}}}}while(0);c[v>>2]=(c[v>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+72}c[(c[h>>2]|0)+424>>2]=c[(c[u>>2]|0)+56>>2];qu(c[j>>2]|0,c[u>>2]|0);i=k;return}function qu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}ru((c[f>>2]|0)+328|0);while(1){if((c[(c[f>>2]|0)+16>>2]|0)==0){break}c[g>>2]=c[(c[f>>2]|0)+16>>2];c[(c[f>>2]|0)+16>>2]=c[(c[g>>2]|0)+48>>2];su(c[e>>2]|0,c[g>>2]|0)}Wb(c[e>>2]|0,c[f>>2]|0);i=d;return}function ru(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+12|0;h=d+8|0;g=d+4|0;e=d;c[f>>2]=b;c[e>>2]=c[c[c[c[f>>2]>>2]>>2]>>2];c[h>>2]=(c[(c[f>>2]|0)+12>>2]|0)-1;c[g>>2]=c[(c[f>>2]|0)+20>>2];while(1){if((c[h>>2]|0)<0){break}if((a[(c[g>>2]|0)+20>>0]&1|0)!=0){hn(c[e>>2]|0,c[c[g>>2]>>2]|0)}if((a[(c[g>>2]|0)+20>>0]&16|0)==0){if((a[(c[g>>2]|0)+20>>0]&32|0)!=0){xu(c[e>>2]|0,c[(c[g>>2]|0)+12>>2]|0)}}else{wu(c[e>>2]|0,c[(c[g>>2]|0)+12>>2]|0)}c[h>>2]=(c[h>>2]|0)+ -1;c[g>>2]=(c[g>>2]|0)+48}if((c[(c[f>>2]|0)+20>>2]|0)==((c[f>>2]|0)+24|0)){i=d;return}Wb(c[e>>2]|0,c[(c[f>>2]|0)+20>>2]|0);i=d;return}function su(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;tu(c[f>>2]|0,c[e>>2]|0);Wb(c[f>>2]|0,c[e>>2]|0);i=d;return}function tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;if((c[(c[e>>2]|0)+44>>2]|0)!=((c[e>>2]|0)+52|0)){Wb(c[f>>2]|0,c[(c[e>>2]|0)+44>>2]|0)}uu(c[f>>2]|0,c[e>>2]|0);vu(c[e>>2]|0);i=d;return}function uu(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;h=f+4|0;g=f;c[h>>2]=b;c[g>>2]=e;if((c[(c[g>>2]|0)+36>>2]&17408|0)==0){i=f;return}if((c[(c[g>>2]|0)+36>>2]&1024|0)!=0?(d[(c[g>>2]|0)+28>>0]|0|0)!=0:0){gc(c[(c[g>>2]|0)+32>>2]|0);a[(c[g>>2]|0)+28>>0]=0;c[(c[g>>2]|0)+32>>2]=0;i=f;return}if((c[(c[g>>2]|0)+36>>2]&16384|0)==0){i=f;return}if((c[(c[g>>2]|0)+28>>2]|0)==0){i=f;return}Wb(c[h>>2]|0,c[(c[(c[g>>2]|0)+28>>2]|0)+16>>2]|0);Zg(c[(c[(c[g>>2]|0)+28>>2]|0)+40>>2]|0);Wb(c[h>>2]|0,c[(c[g>>2]|0)+28>>2]|0);c[(c[g>>2]|0)+28>>2]=0;i=f;return}function vu(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;c[(c[e>>2]|0)+44>>2]=(c[e>>2]|0)+52;b[(c[e>>2]|0)+40>>1]=0;b[(c[e>>2]|0)+42>>1]=4;c[(c[e>>2]|0)+36>>2]=0;i=d;return}function wu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;ru(c[e>>2]|0);Wb(c[f>>2]|0,c[e>>2]|0);i=d;return}function xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;ru(c[e>>2]|0);Wb(c[f>>2]|0,c[e>>2]|0);i=d;return}function yu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[c[e>>2]>>2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=0;c[(c[e>>2]|0)+16>>2]=8;c[(c[e>>2]|0)+20>>2]=(c[e>>2]|0)+24;i=d;return}function zu(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g+4|0;k=g;h=g+8|0;c[j>>2]=b;c[k>>2]=e;a[h>>0]=f;a[(c[j>>2]|0)+8>>0]=a[h>>0]|0;if((c[k>>2]|0)==0){i=g;return}e=c[j>>2]|0;f=c[k>>2]|0;if((d[c[k>>2]>>0]|0|0)!=(d[h>>0]|0|0)){Bv(e,f,0)|0;i=g;return}else{zu(e,c[f+12>>2]|0,a[h>>0]|0);zu(c[j>>2]|0,c[(c[k>>2]|0)+16>>2]|0,a[h>>0]|0);i=g;return}}function Au(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=c[f>>2]|0;f=c[e>>2]|0;a=c[f>>2]|0;c[f>>2]=a+1;c[(c[e>>2]|0)+4+(a<<2)>>2]=b;i=d;return}function Bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d+4|0;e=d;c[f>>2]=a;c[g>>2]=b;c[e>>2]=(c[(c[g>>2]|0)+12>>2]|0)-1;while(1){if((c[e>>2]|0)<0){break}yv(c[f>>2]|0,c[g>>2]|0,c[e>>2]|0);c[e>>2]=(c[e>>2]|0)+ -1}i=d;return}function Cu(a,f,g,h){a=a|0;f=f|0;g=g|0;h=h|0;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;s=i;i=i+48|0;l=s+40|0;o=s+36|0;w=s+32|0;t=s+28|0;p=s+24|0;u=s+20|0;n=s+16|0;m=s+12|0;q=s+8|0;v=s+4|0;j=s+44|0;r=s;c[o>>2]=a;c[w>>2]=f;c[t>>2]=g;c[p>>2]=h;if((c[c[w>>2]>>2]|0)!=1){c[l>>2]=0;a=c[l>>2]|0;i=s;return a|0}c[q>>2]=c[(c[w>>2]|0)+48>>2];c[u>>2]=c[(c[w>>2]|0)+24>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[c[p>>2]>>2]|0)){break}c[v>>2]=Sp(c[(c[(c[p>>2]|0)+4>>2]|0)+((c[m>>2]|0)*20|0)>>2]|0)|0;if(((d[c[v>>2]>>0]|0)==154?(c[(c[v>>2]|0)+28>>2]|0)==(c[q>>2]|0):0)?(b[(c[v>>2]|0)+32>>1]|0)<0:0){k=8;break}c[m>>2]=(c[m>>2]|0)+1}if((k|0)==8){c[l>>2]=1;a=c[l>>2]|0;i=s;return a|0}c[n>>2]=c[(c[u>>2]|0)+8>>2];while(1){if((c[n>>2]|0)==0){k=22;break}if((d[(c[n>>2]|0)+54>>0]|0)!=0){c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[(c[n>>2]|0)+50>>1]|0)){break}b[j>>1]=b[(c[(c[n>>2]|0)+4>>2]|0)+(c[m>>2]<<1)>>1]|0;if(0==(Ru(c[t>>2]|0,c[q>>2]|0,b[j>>1]|0,-1,-1,2,c[n>>2]|0)|0)){c[r>>2]=xv(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[n>>2]|0,c[m>>2]|0)|0;if((c[r>>2]|0)<0){break}if((d[(c[(c[u>>2]|0)+4>>2]|0)+((b[j>>1]|0)*24|0)+20>>0]|0)==0){break}}c[m>>2]=(c[m>>2]|0)+1}if((c[m>>2]|0)==(e[(c[n>>2]|0)+50>>1]|0)){k=20;break}}c[n>>2]=c[(c[n>>2]|0)+20>>2]}if((k|0)==20){c[l>>2]=1;a=c[l>>2]|0;i=s;return a|0}else if((k|0)==22){c[l>>2]=0;a=c[l>>2]|0;i=s;return a|0}return 0}function Du(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;m=i;i=i+48|0;h=m+40|0;s=m+36|0;q=m+32|0;o=m+28|0;r=m+24|0;k=m+20|0;j=m+16|0;p=m+12|0;l=m+8|0;n=m+4|0;g=m;c[s>>2]=f;c[q>>2]=c[c[s>>2]>>2];if((b[(c[q>>2]|0)+34>>1]&32|0)!=0){c[h>>2]=0;s=c[h>>2]|0;i=m;return s|0}c[o>>2]=(c[(c[q>>2]|0)+4>>2]|0)+8;c[n>>2]=c[(c[o>>2]|0)+16>>2];if((a[(c[n>>2]|0)+44>>0]&16|0)!=0){c[h>>2]=0;s=c[h>>2]|0;i=m;return s|0}if((c[(c[o>>2]|0)+64>>2]|0)!=0){c[h>>2]=0;s=c[h>>2]|0;i=m;return s|0}c[p>>2]=c[(c[o>>2]|0)+40>>2];c[r>>2]=(c[q>>2]|0)+328;c[j>>2]=c[(c[s>>2]|0)+12>>2];c[(c[j>>2]|0)+36>>2]=0;b[(c[j>>2]|0)+26>>1]=0;c[k>>2]=Ru(c[r>>2]|0,c[p>>2]|0,-1,0,0,2,0)|0;a:do{if((c[k>>2]|0)!=0){c[(c[j>>2]|0)+36>>2]=4353;c[c[(c[j>>2]|0)+44>>2]>>2]=c[k>>2];b[(c[j>>2]|0)+40>>1]=1;b[(c[j>>2]|0)+24>>1]=1;b[(c[j>>2]|0)+20>>1]=33}else{c[g>>2]=c[(c[n>>2]|0)+8>>2];while(1){if((c[g>>2]|0)==0){break a}if(((d[(c[g>>2]|0)+54>>0]|0)!=0?(c[(c[g>>2]|0)+36>>2]|0)==0:0)?(e[(c[g>>2]|0)+50>>1]|0)<=4:0){c[l>>2]=0;while(1){if((c[l>>2]|0)>=(e[(c[g>>2]|0)+50>>1]|0)){break}c[k>>2]=Ru(c[r>>2]|0,c[p>>2]|0,b[(c[(c[g>>2]|0)+4>>2]|0)+(c[l>>2]<<1)>>1]|0,0,0,2,c[g>>2]|0)|0;if((c[k>>2]|0)==0){break}c[(c[(c[j>>2]|0)+44>>2]|0)+(c[l>>2]<<2)>>2]=c[k>>2];c[l>>2]=(c[l>>2]|0)+1}if((c[l>>2]|0)==(e[(c[g>>2]|0)+50>>1]|0)){break}}c[g>>2]=c[(c[g>>2]|0)+20>>2]}c[(c[j>>2]|0)+36>>2]=4609;if(!(((d[(c[g>>2]|0)+55>>0]|0)>>>5&1|0)==0?(s=(c[o>>2]|0)+56|0,o=c[s>>2]|0,s=c[s+4>>2]|0,r=pv(c[g>>2]|0)|0,!((o&~r|0)==0&(s&~D|0)==0)):0)){s=(c[j>>2]|0)+36|0;c[s>>2]=c[s>>2]|64}b[(c[j>>2]|0)+40>>1]=c[l>>2];b[(c[j>>2]|0)+24>>1]=c[l>>2];c[(c[j>>2]|0)+28>>2]=c[g>>2];b[(c[j>>2]|0)+20>>1]=39}}while(0);if((c[(c[j>>2]|0)+36>>2]|0)==0){c[h>>2]=0;s=c[h>>2]|0;i=m;return s|0}b[(c[j>>2]|0)+22>>1]=1;c[(c[q>>2]|0)+792>>2]=c[j>>2];r=Hu((c[q>>2]|0)+68|0,c[p>>2]|0)|0;s=(c[j>>2]|0)+8|0;c[s>>2]=r;c[s+4>>2]=D;c[(c[q>>2]|0)+740>>2]=c[p>>2];b[(c[q>>2]|0)+32>>1]=1;if((c[(c[q>>2]|0)+8>>2]|0)!=0){a[(c[q>>2]|0)+36>>0]=c[c[(c[q>>2]|0)+8>>2]>>2]}if((b[(c[q>>2]|0)+34>>1]&1024|0)!=0){a[(c[q>>2]|0)+40>>0]=1}c[h>>2]=1;s=c[h>>2]|0;i=m;return s|0}function Eu(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+64|0;j=e+48|0;p=e+44|0;k=e+8|0;m=e;o=e+40|0;s=e+36|0;l=e+32|0;h=e+28|0;q=e+24|0;f=e+20|0;n=e+52|0;g=e+16|0;c[j>>2]=b;c[p>>2]=c[c[j>>2]>>2];r=k;c[r>>2]=0;c[r+4>>2]=0;r=m;c[r>>2]=0;c[r+4>>2]=0;c[s>>2]=c[(c[p>>2]|0)+4>>2];c[h>>2]=c[c[c[p>>2]>>2]>>2];c[q>>2]=d[(c[p>>2]|0)+41>>0]|0;c[f>>2]=0;a[n>>0]=0;c[g>>2]=c[(c[j>>2]|0)+12>>2];vu(c[g>>2]|0);c[o>>2]=0;c[l>>2]=(c[s>>2]|0)+8;while(1){if((c[o>>2]|0)>=(c[q>>2]|0)){j=13;break}a[(c[g>>2]|0)+16>>0]=c[o>>2];r=Hu((c[p>>2]|0)+68|0,c[(c[l>>2]|0)+40>>2]|0)|0;s=(c[g>>2]|0)+8|0;c[s>>2]=r;c[s+4>>2]=D;if(((d[(c[l>>2]|0)+36>>0]|0|(d[n>>0]|0))&10|0)!=0){b=m;r=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=r}a[n>>0]=a[(c[l>>2]|0)+36>>0]|0;b=c[j>>2]|0;s=k;r=c[s>>2]|0;s=c[s+4>>2]|0;if((a[(c[(c[l>>2]|0)+16>>2]|0)+44>>0]&16|0)!=0){c[f>>2]=cv(b,r,s)|0}else{c[f>>2]=dv(b,r,s)|0}if((c[f>>2]|0)==0){s=k;c[f>>2]=ev(c[j>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0}b=(c[g>>2]|0)+8|0;t=m;r=c[t+4>>2]|c[b+4>>2];s=m;c[s>>2]=c[t>>2]|c[b>>2];c[s+4>>2]=r;if((c[f>>2]|0)!=0){j=13;break}if((d[(c[h>>2]|0)+64>>0]|0|0)!=0){j=13;break}c[o>>2]=(c[o>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+72}if((j|0)==13){tu(c[h>>2]|0,c[g>>2]|0);i=e;return c[f>>2]|0}return 0}function Fu(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;p=i;i=i+144|0;x=p+32|0;h=p+124|0;l=p+120|0;s=p+140|0;O=p+116|0;o=p+112|0;D=p+108|0;j=p+104|0;t=p+100|0;A=p+96|0;K=p+92|0;Q=p+88|0;J=p+84|0;G=p+138|0;H=p+136|0;P=p+134|0;R=p+132|0;C=p+80|0;B=p+76|0;z=p+72|0;w=p+68|0;n=p+64|0;L=p+60|0;v=p+56|0;S=p+52|0;k=p+48|0;I=p+24|0;E=p+16|0;F=p+142|0;M=p+130|0;N=p+128|0;u=p+44|0;q=p+8|0;r=p+40|0;m=p;g=p+36|0;c[l>>2]=e;b[s>>1]=f;c[Q>>2]=0;b[P>>1]=0;b[R>>1]=0;c[D>>2]=c[c[l>>2]>>2];c[j>>2]=c[c[D>>2]>>2];c[o>>2]=d[(c[l>>2]|0)+41>>0]|0;if((c[o>>2]|0)<=1){f=1}else{f=(c[o>>2]|0)==2?5:10}c[O>>2]=f;c[A>>2]=($(32+(c[o>>2]<<2)|0,c[O>>2]|0)|0)<<1;c[k>>2]=Le(c[j>>2]|0,c[A>>2]|0)|0;if((c[k>>2]|0)==0){c[h>>2]=7;e=c[h>>2]|0;i=p;return e|0}c[w>>2]=c[k>>2];c[z>>2]=(c[w>>2]|0)+(c[O>>2]<<5);e=c[z>>2]|0;c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0;c[S>>2]=(c[z>>2]|0)+(c[O>>2]<<5);c[A>>2]=c[O>>2]<<1;c[n>>2]=c[w>>2];while(1){if((c[A>>2]|0)<=0){break}c[(c[n>>2]|0)+24>>2]=c[S>>2];c[A>>2]=(c[A>>2]|0)+ -1;c[n>>2]=(c[n>>2]|0)+32;c[S>>2]=(c[S>>2]|0)+(c[o>>2]<<2)}if((c[(c[D>>2]|0)+424>>2]|0)>>>0<46){S=c[(c[D>>2]|0)+424>>2]|0}else{S=46}b[(c[z>>2]|0)+16>>1]=S;c[B>>2]=1;if((c[(c[l>>2]|0)+8>>2]|0)!=0?(b[s>>1]|0)!=0:0){a[(c[z>>2]|0)+20>>0]=(c[o>>2]|0)>0?-1:1;c[J>>2]=c[c[(c[l>>2]|0)+8>>2]>>2]}else{a[(c[z>>2]|0)+20>>0]=0;c[J>>2]=0}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[o>>2]|0)){break}c[C>>2]=0;c[A>>2]=0;c[n>>2]=c[z>>2];while(1){if((c[A>>2]|0)>=(c[B>>2]|0)){break}c[v>>2]=c[(c[l>>2]|0)+16>>2];while(1){if((c[v>>2]|0)==0){break}f=E;c[f>>2]=0;c[f+4>>2]=0;a[F>>0]=a[(c[n>>2]|0)+20>>0]|0;f=c[v>>2]|0;e=c[n>>2]|0;a:do{if(!((c[f>>2]&~c[e>>2]|0)!=0?1:(c[f+4>>2]&~c[e+4>>2]|0)!=0)?(f=(c[v>>2]|0)+8|0,e=c[n>>2]|0,!((c[f>>2]&c[e>>2]|0)!=0?1:(c[f+4>>2]&c[e+4>>2]|0)!=0)):0){b[G>>1]=$u(b[(c[v>>2]|0)+18>>1]|0,(b[(c[v>>2]|0)+20>>1]|0)+(b[(c[n>>2]|0)+16>>1]|0)&65535)|0;b[G>>1]=$u(b[G>>1]|0,b[(c[n>>2]|0)+18>>1]|0)|0;b[H>>1]=(b[(c[n>>2]|0)+16>>1]|0)+(b[(c[v>>2]|0)+22>>1]|0);T=c[n>>2]|0;S=(c[v>>2]|0)+8|0;f=c[T+4>>2]|c[S+4>>2];e=I;c[e>>2]=c[T>>2]|c[S>>2];c[e+4>>2]=f;if((a[F>>0]|0)<0){a[F>>0]=av(c[l>>2]|0,c[(c[l>>2]|0)+8>>2]|0,c[n>>2]|0,b[(c[l>>2]|0)+34>>1]|0,c[t>>2]&65535,c[v>>2]|0,E)|0;if((a[F>>0]|0)>=0?(a[F>>0]|0)<(c[J>>2]|0):0){T=(((c[J>>2]|0)-(a[F>>0]|0)|0)*100|0)/(c[J>>2]|0)|0;b[M>>1]=((Np(T,((T|0)<0)<<31>>31)|0)<<16>>16)-66;T=b[s>>1]|0;T=T+((bv(b[s>>1]|0)|0)<<16>>16)|0;b[N>>1]=T+(b[M>>1]|0)+16;if((b[(c[l>>2]|0)+34>>1]&1024|0)!=0){b[N>>1]=(b[N>>1]|0)+16}b[G>>1]=$u(b[G>>1]|0,b[N>>1]|0)|0}}else{f=(c[n>>2]|0)+8|0;e=c[f+4>>2]|0;T=E;c[T>>2]=c[f>>2];c[T+4>>2]=e}c[K>>2]=0;c[L>>2]=c[w>>2];b:while(1){if((c[K>>2]|0)>=(c[C>>2]|0)){break}e=c[L>>2]|0;T=I;do{if(((c[e>>2]|0)==(c[T>>2]|0)?(c[e+4>>2]|0)==(c[T+4>>2]|0):0)?((a[(c[L>>2]|0)+20>>0]^a[F>>0])&80|0)==0:0){if((b[(c[L>>2]|0)+18>>1]|0)<=(b[G>>1]|0)?(b[(c[L>>2]|0)+16>>1]|0)<=(b[H>>1]|0):0){break b}if((b[(c[L>>2]|0)+18>>1]|0)<(b[G>>1]|0)){break}if((b[(c[L>>2]|0)+16>>1]|0)>=(b[H>>1]|0)){break b}}}while(0);c[K>>2]=(c[K>>2]|0)+1;c[L>>2]=(c[L>>2]|0)+32}if((c[K>>2]|0)<(c[C>>2]|0)){if((b[(c[L>>2]|0)+18>>1]|0)<=(b[G>>1]|0)?(b[(c[L>>2]|0)+16>>1]|0)<=(b[H>>1]|0):0){break}}else{if((c[C>>2]|0)>=(c[O>>2]|0)?(b[G>>1]|0)>=(b[P>>1]|0):0){break}if((c[C>>2]|0)<(c[O>>2]|0)){T=c[C>>2]|0;c[C>>2]=T+1;c[K>>2]=T}else{c[K>>2]=c[Q>>2]}c[L>>2]=(c[w>>2]|0)+(c[K>>2]<<5)}S=c[n>>2]|0;T=(c[v>>2]|0)+8|0;e=c[S+4>>2]|c[T+4>>2];f=c[L>>2]|0;c[f>>2]=c[S>>2]|c[T>>2];c[f+4>>2]=e;f=E;e=c[f+4>>2]|0;T=(c[L>>2]|0)+8|0;c[T>>2]=c[f>>2];c[T+4>>2]=e;b[(c[L>>2]|0)+16>>1]=b[H>>1]|0;b[(c[L>>2]|0)+18>>1]=b[G>>1]|0;a[(c[L>>2]|0)+20>>0]=a[F>>0]|0;dE(c[(c[L>>2]|0)+24>>2]|0,c[(c[n>>2]|0)+24>>2]|0,c[t>>2]<<2|0)|0;c[(c[(c[L>>2]|0)+24>>2]|0)+(c[t>>2]<<2)>>2]=c[v>>2];if((c[C>>2]|0)>=(c[O>>2]|0)){c[Q>>2]=0;b[P>>1]=b[(c[w>>2]|0)+18>>1]|0;b[R>>1]=b[(c[w>>2]|0)+16>>1]|0;c[K>>2]=1;c[L>>2]=(c[w>>2]|0)+32;while(1){if((c[K>>2]|0)>=(c[O>>2]|0)){break a}do{if((b[(c[L>>2]|0)+18>>1]|0)<=(b[P>>1]|0)){if((b[(c[L>>2]|0)+18>>1]|0)!=(b[P>>1]|0)){break}if((b[(c[L>>2]|0)+16>>1]|0)>(b[R>>1]|0)){y=53}}else{y=53}}while(0);if((y|0)==53){y=0;b[P>>1]=b[(c[L>>2]|0)+18>>1]|0;b[R>>1]=b[(c[L>>2]|0)+16>>1]|0;c[Q>>2]=c[K>>2]}c[K>>2]=(c[K>>2]|0)+1;c[L>>2]=(c[L>>2]|0)+32}}}}while(0);c[v>>2]=c[(c[v>>2]|0)+48>>2]}c[A>>2]=(c[A>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+32}c[n>>2]=c[w>>2];c[w>>2]=c[z>>2];c[z>>2]=c[n>>2];c[B>>2]=c[C>>2];c[t>>2]=(c[t>>2]|0)+1}if((c[B>>2]|0)==0){Ne(c[D>>2]|0,23888,x);Wb(c[j>>2]|0,c[k>>2]|0);c[h>>2]=1;T=c[h>>2]|0;i=p;return T|0}c[n>>2]=c[z>>2];c[A>>2]=1;while(1){if((c[A>>2]|0)>=(c[B>>2]|0)){break}if((b[(c[n>>2]|0)+18>>1]|0)>(b[(c[z>>2]|0)+(c[A>>2]<<5)+18>>1]|0)){c[n>>2]=(c[z>>2]|0)+(c[A>>2]<<5)}c[A>>2]=(c[A>>2]|0)+1}c[t>>2]=0;while(1){w=c[l>>2]|0;if((c[t>>2]|0)>=(c[o>>2]|0)){break}c[u>>2]=w+736+((c[t>>2]|0)*72|0);T=c[(c[(c[n>>2]|0)+24>>2]|0)+(c[t>>2]<<2)>>2]|0;c[v>>2]=T;c[(c[u>>2]|0)+56>>2]=T;a[(c[u>>2]|0)+36>>0]=a[(c[v>>2]|0)+16>>0]|0;c[(c[u>>2]|0)+4>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+8+((d[(c[u>>2]|0)+36>>0]|0)*72|0)+40>>2];c[t>>2]=(c[t>>2]|0)+1}if(((((b[w+34>>1]&1024|0)!=0?(b[(c[l>>2]|0)+34>>1]&512|0)==0:0)?(d[(c[l>>2]|0)+40>>0]|0)==0:0)?(b[s>>1]|0)!=0:0)?(c[r>>2]=(av(c[l>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[n>>2]|0,512,(c[o>>2]|0)-1&65535,c[(c[(c[n>>2]|0)+24>>2]|0)+((c[o>>2]|0)-1<<2)>>2]|0,q)|0)<<24>>24,(c[r>>2]|0)==(c[c[(c[l>>2]|0)+12>>2]>>2]|0)):0){a[(c[l>>2]|0)+40>>0]=2}if((c[(c[l>>2]|0)+8>>2]|0)!=0){q=a[(c[n>>2]|0)+20>>0]|0;if((b[(c[l>>2]|0)+34>>1]&512|0)!=0){if((q<<24>>24|0)==(c[c[(c[l>>2]|0)+8>>2]>>2]|0)){a[(c[l>>2]|0)+40>>0]=2}}else{a[(c[l>>2]|0)+36>>0]=q;if((a[(c[l>>2]|0)+36>>0]|0)<0){a[(c[l>>2]|0)+36>>0]=0}f=(c[n>>2]|0)+8|0;e=c[f+4>>2]|0;T=(c[l>>2]|0)+24|0;c[T>>2]=c[f>>2];c[T+4>>2]=e}if((b[(c[l>>2]|0)+34>>1]&2048|0)!=0?(a[(c[l>>2]|0)+36>>0]|0)==(c[c[(c[l>>2]|0)+8>>2]>>2]|0):0){T=m;c[T>>2]=0;c[T+4>>2]=0;c[g>>2]=(av(c[l>>2]|0,c[(c[l>>2]|0)+8>>2]|0,c[n>>2]|0,0,(c[o>>2]|0)-1&65535,c[(c[(c[n>>2]|0)+24>>2]|0)+((c[o>>2]|0)-1<<2)>>2]|0,m)|0)<<24>>24;a[(c[l>>2]|0)+37>>0]=(c[g>>2]|0)==(c[c[(c[l>>2]|0)+8>>2]>>2]|0)}}b[(c[l>>2]|0)+32>>1]=b[(c[n>>2]|0)+16>>1]|0;Wb(c[j>>2]|0,c[k>>2]|0);c[h>>2]=0;T=c[h>>2]|0;i=p;return T|0}function Gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;h=d+16|0;g=d+12|0;f=d+8|0;e=d;c[h>>2]=a;c[g>>2]=b;a=e;c[a>>2]=0;c[a+4>>2]=0;if((c[g>>2]|0)==0){h=e;a=h;a=c[a>>2]|0;h=h+4|0;h=c[h>>2]|0;D=h;i=d;return a|0}c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[g>>2]>>2]|0)){break}j=Zu(c[h>>2]|0,c[(c[(c[g>>2]|0)+4>>2]|0)+((c[f>>2]|0)*20|0)>>2]|0)|0;k=e;b=c[k+4>>2]|D;a=e;c[a>>2]=c[k>>2]|j;c[a+4>>2]=b;c[f>>2]=(c[f>>2]|0)+1}j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}function Hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+32|0;d=e;g=e+16|0;h=e+12|0;f=e+8|0;c[g>>2]=a;c[h>>2]=b;c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[g>>2]>>2]|0)){f=6;break}b=c[f>>2]|0;if((c[(c[g>>2]|0)+4+(c[f>>2]<<2)>>2]|0)==(c[h>>2]|0)){f=4;break}c[f>>2]=b+1}if((f|0)==4){a=$D(1,0,b|0)|0;b=d;c[b>>2]=a;c[b+4>>2]=D;b=d;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=e;return a|0}else if((f|0)==6){b=d;c[b>>2]=0;c[b+4>>2]=0;b=d;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=e;return a|0}return 0}function Iu(d,e,f,g,h,j){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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,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=i;i=i+144|0;O=F+40|0;o=F+132|0;J=F+128|0;v=F+124|0;l=F+32|0;p=F+120|0;r=F+116|0;y=F+112|0;G=F+108|0;m=F+104|0;q=F+100|0;u=F+96|0;H=F+92|0;s=F+88|0;t=F+84|0;n=F+80|0;x=F+76|0;k=F+72|0;C=F+68|0;I=F+64|0;K=F+60|0;B=F+24|0;w=F+16|0;P=F+136|0;N=F+56|0;M=F+8|0;E=F+52|0;A=F;z=F+48|0;c[o>>2]=d;c[J>>2]=e;c[v>>2]=f;d=l;c[d>>2]=g;c[d+4>>2]=h;c[p>>2]=j;a[P>>0]=0;c[q>>2]=c[(c[o>>2]|0)+8>>2];c[u>>2]=Js(c[o>>2]|0)|0;c[r>>2]=0;c[H>>2]=c[(c[v>>2]|0)+16>>2];c[G>>2]=(c[(c[J>>2]|0)+20>>2]|0)+((c[(c[J>>2]|0)+12>>2]|0)*48|0);c[I>>2]=c[(c[p>>2]|0)+56>>2];h=B;c[h>>2]=0;c[h+4>>2]=0;c[y>>2]=c[(c[J>>2]|0)+20>>2];while(1){if(!((c[y>>2]|0)>>>0<(c[G>>2]|0)>>>0)){break}h=l;if((Wu(c[y>>2]|0,c[v>>2]|0,c[h>>2]|0,c[h+4>>2]|0)|0)!=0){c[N>>2]=c[(c[y>>2]|0)+12>>2];if((c[N>>2]|0)>=64){g=0;j=-2147483648}else{g=$D(1,0,c[N>>2]|0)|0;j=D}h=M;c[h>>2]=g;c[h+4>>2]=j;if((a[P>>0]|0)==0){h=c[(c[(c[H>>2]|0)+4>>2]|0)+((c[N>>2]|0)*24|0)>>2]|0;c[O>>2]=c[c[H>>2]>>2];c[O+4>>2]=h;rc(284,23840,O);a[P>>0]=1}d=B;h=M;if((c[d>>2]&c[h>>2]|0)==0?(c[d+4>>2]&c[h+4>>2]|0)==0:0){if((Xu(c[c[o>>2]>>2]|0,c[I>>2]|0,(c[r>>2]|0)+1|0)|0)!=0){L=42;break}f=c[y>>2]|0;e=c[r>>2]|0;c[r>>2]=e+1;c[(c[(c[I>>2]|0)+44>>2]|0)+(e<<2)>>2]=f;e=M;f=B;d=c[f+4>>2]|c[e+4>>2];h=B;c[h>>2]=c[f>>2]|c[e>>2];c[h+4>>2]=d}}c[y>>2]=(c[y>>2]|0)+48}if((L|0)==42){i=F;return}f=c[r>>2]&65535;b[(c[I>>2]|0)+40>>1]=f;b[(c[I>>2]|0)+24>>1]=f;c[(c[I>>2]|0)+36>>2]=16961;f=(c[v>>2]|0)+56|0;e=B;d=c[f+4>>2]&(~c[e+4>>2]|-2147483648);h=w;c[h>>2]=c[f>>2]&~c[e>>2];c[h+4>>2]=d;if((b[(c[H>>2]|0)+38>>1]|0)>=63){L=63}else{L=b[(c[H>>2]|0)+38>>1]|0}c[k>>2]=L;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[k>>2]|0)){break}h=w;e=c[h>>2]|0;h=c[h+4>>2]|0;d=$D(1,0,c[x>>2]|0)|0;if((e&d|0)!=0|(h&D|0)!=0){c[r>>2]=(c[r>>2]|0)+1}c[x>>2]=(c[x>>2]|0)+1}if(0!=0?1:(c[(c[v>>2]|0)+60>>2]&-2147483648|0)!=0){c[r>>2]=(c[r>>2]|0)+((b[(c[H>>2]|0)+38>>1]|0)-64+1)}h=(c[I>>2]|0)+36|0;c[h>>2]=c[h>>2]|65;c[m>>2]=Yu(c[c[o>>2]>>2]|0,(c[r>>2]|0)+1&65535,0,K)|0;if((c[m>>2]|0)==0){i=F;return}c[(c[I>>2]|0)+28>>2]=c[m>>2];c[c[m>>2]>>2]=23872;c[(c[m>>2]|0)+12>>2]=c[H>>2];c[n>>2]=0;h=B;c[h>>2]=0;c[h+4>>2]=0;c[y>>2]=c[(c[J>>2]|0)+20>>2];while(1){if(!((c[y>>2]|0)>>>0<(c[G>>2]|0)>>>0)){break}h=l;if((Wu(c[y>>2]|0,c[v>>2]|0,c[h>>2]|0,c[h+4>>2]|0)|0)!=0){c[E>>2]=c[(c[y>>2]|0)+12>>2];if((c[E>>2]|0)>=64){J=0;I=-2147483648}else{J=$D(1,0,c[E>>2]|0)|0;I=D}d=A;c[d>>2]=J;c[d+4>>2]=I;d=B;h=A;if((c[d>>2]&c[h>>2]|0)==0?(c[d+4>>2]&c[h+4>>2]|0)==0:0){c[z>>2]=c[c[y>>2]>>2];e=A;f=B;d=c[f+4>>2]|c[e+4>>2];h=B;c[h>>2]=c[f>>2]|c[e>>2];c[h+4>>2]=d;b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]=c[(c[y>>2]|0)+12>>2];c[C>>2]=Ls(c[o>>2]|0,c[(c[z>>2]|0)+12>>2]|0,c[(c[z>>2]|0)+16>>2]|0)|0;if((c[C>>2]|0)!=0){I=c[c[C>>2]>>2]|0}else{I=3320}c[(c[(c[m>>2]|0)+32>>2]|0)+(c[n>>2]<<2)>>2]=I;c[n>>2]=(c[n>>2]|0)+1}}c[y>>2]=(c[y>>2]|0)+48}c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[k>>2]|0)){break}h=w;e=c[h>>2]|0;h=c[h+4>>2]|0;d=$D(1,0,c[x>>2]|0)|0;if((e&d|0)!=0|(h&D|0)!=0){b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]=c[x>>2];c[(c[(c[m>>2]|0)+32>>2]|0)+(c[n>>2]<<2)>>2]=3320;c[n>>2]=(c[n>>2]|0)+1}c[x>>2]=(c[x>>2]|0)+1}a:do{if(0!=0?1:(c[(c[v>>2]|0)+60>>2]&-2147483648|0)!=0){c[x>>2]=63;while(1){if((c[x>>2]|0)>=(b[(c[H>>2]|0)+38>>1]|0)){break a}b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]=c[x>>2];c[(c[(c[m>>2]|0)+32>>2]|0)+(c[n>>2]<<2)>>2]=3320;c[n>>2]=(c[n>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+1}}}while(0);b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]=-1;c[(c[(c[m>>2]|0)+32>>2]|0)+(c[n>>2]<<2)>>2]=3320;d=(c[o>>2]|0)+68|0;h=c[d>>2]|0;c[d>>2]=h+1;c[(c[p>>2]|0)+8>>2]=h;To(c[q>>2]|0,54,c[(c[p>>2]|0)+8>>2]|0,(c[r>>2]|0)+1|0)|0;ur(c[o>>2]|0,c[m>>2]|0);c[s>>2]=rr(c[q>>2]|0,105,c[(c[p>>2]|0)+4>>2]|0)|0;c[t>>2]=Zo(c[o>>2]|0)|0;Zr(c[o>>2]|0,c[m>>2]|0,c[(c[p>>2]|0)+4>>2]|0,c[t>>2]|0,0,0,0,0)|0;To(c[q>>2]|0,107,c[(c[p>>2]|0)+8>>2]|0,c[t>>2]|0)|0;Se(c[q>>2]|0,16);To(c[q>>2]|0,9,c[(c[p>>2]|0)+4>>2]|0,(c[s>>2]|0)+1|0)|0;Se(c[q>>2]|0,3);mp(c[q>>2]|0,c[s>>2]|0);_o(c[o>>2]|0,c[t>>2]|0);mp(c[q>>2]|0,c[u>>2]|0);i=F;return}function Ju(f,g,h,j,k,l){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;A=i;i=i+80|0;p=A;E=A+72|0;F=A+68|0;D=A+64|0;s=A+60|0;m=A+56|0;C=A+76|0;y=A+52|0;q=A+48|0;t=A+44|0;o=A+40|0;r=A+36|0;B=A+32|0;x=A+28|0;z=A+24|0;u=A+20|0;v=A+16|0;w=A+12|0;c[E>>2]=f;c[F>>2]=g;c[D>>2]=h;c[s>>2]=j;c[m>>2]=k;b[C>>1]=l;if((d[(c[E>>2]|0)+450>>0]|0|0)!=2){i=A;return}c[y>>2]=(c[F>>2]|0)+8+((d[(c[D>>2]|0)+36>>0]|0)*72|0);c[q>>2]=c[(c[E>>2]|0)+8>>2];c[t>>2]=c[c[E>>2]>>2];c[r>>2]=c[(c[E>>2]|0)+464>>2];c[x>>2]=c[(c[D>>2]|0)+56>>2];c[z>>2]=c[(c[x>>2]|0)+36>>2];if((c[z>>2]&8192|0)!=0){i=A;return}if((b[C>>1]&64|0)!=0){i=A;return}do{if((c[z>>2]&48|0)!=0){h=1}else{if((c[z>>2]&1024|0)==0?(e[(c[x>>2]|0)+24>>1]|0|0)>0:0){h=1;break}h=(b[C>>1]&3|0)!=0}}while(0);c[B>>2]=h&1;h=c[t>>2]|0;c[p>>2]=(c[B>>2]|0)!=0?23432:23440;c[o>>2]=Oe(h,1456,p)|0;h=c[t>>2]|0;B=c[o>>2]|0;C=c[o>>2]|0;D=c[y>>2]|0;if((c[(c[y>>2]|0)+20>>2]|0)!=0){f=d[D+38>>0]|0;c[p>>2]=C;c[p+4>>2]=f;c[o>>2]=Vr(h,B,23448,p)|0}else{f=c[D+8>>2]|0;c[p>>2]=C;c[p+4>>2]=f;c[o>>2]=Vr(h,B,23464,p)|0}if((c[(c[y>>2]|0)+12>>2]|0)!=0){g=c[t>>2]|0;f=c[o>>2]|0;F=c[(c[y>>2]|0)+12>>2]|0;c[p>>2]=c[o>>2];c[p+4>>2]=F;c[o>>2]=Vr(g,f,23480,p)|0}if((c[z>>2]&1280|0)==0?(c[(c[x>>2]|0)+28>>2]|0)!=0:0){c[v>>2]=c[(c[x>>2]|0)+28>>2];c[w>>2]=Uu(c[t>>2]|0,c[x>>2]|0,c[(c[y>>2]|0)+16>>2]|0)|0;if((a[(c[(c[y>>2]|0)+16>>2]|0)+44>>0]&32|0)!=0?(a[(c[v>>2]|0)+55>>0]&3|0)==2:0){c[u>>2]=(c[w>>2]|0)!=0?23496:23528}else{n=18}do{if((n|0)==18){if((c[z>>2]&16384|0)!=0){c[u>>2]=23544;break}if((c[z>>2]&64|0)!=0){c[u>>2]=23584;break}else{c[u>>2]=23616;break}}}while(0);F=c[t>>2]|0;g=c[o>>2]|0;f=c[u>>2]|0;k=c[c[v>>2]>>2]|0;j=c[w>>2]|0;c[p>>2]=c[o>>2];c[p+4>>2]=k;c[p+8>>2]=j;c[o>>2]=Vr(F,g,f,p)|0;Wb(c[t>>2]|0,c[w>>2]|0)}else{n=24}do{if((n|0)==24){if((c[z>>2]&256|0)!=0?(c[z>>2]&15|0)!=0:0){g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Vr(g,f,23640,p)|0;if((c[z>>2]&5|0)!=0){g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Vr(g,f,23672,p)|0;break}if((c[z>>2]&48|0)==48){g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Vr(g,f,23688,p)|0;break}if((c[z>>2]&32|0)!=0){g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Vr(g,f,23720,p)|0;break}if((c[z>>2]&16|0)==0){break}g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Vr(g,f,23736,p)|0;break}if((c[z>>2]&1024|0)!=0){g=c[t>>2]|0;f=c[o>>2]|0;j=c[(c[x>>2]|0)+24>>2]|0;F=c[(c[x>>2]|0)+32>>2]|0;c[p>>2]=c[o>>2];c[p+4>>2]=j;c[p+8>>2]=F;c[o>>2]=Vr(g,f,23752,p)|0}}}while(0);g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Vr(g,f,1456,p)|0;Vo(c[q>>2]|0,157,c[r>>2]|0,c[s>>2]|0,c[m>>2]|0,c[o>>2]|0,-1)|0;i=A;return}function Ku(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var 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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0;q=i;i=i+368|0;p=q+8|0;y=q+344|0;N=q+340|0;v=q;o=q+336|0;B=q+332|0;w=q+328|0;la=q+324|0;ua=q+320|0;C=q+316|0;A=q+312|0;E=q+308|0;m=q+304|0;n=q+300|0;u=q+296|0;r=q+292|0;l=q+288|0;Da=q+284|0;Ia=q+280|0;x=q+276|0;oa=q+272|0;Qa=q+268|0;Wa=q+264|0;Ea=q+260|0;Ga=q+256|0;Fa=q+252|0;Ha=q+248|0;Ma=q+244|0;Ua=q+240|0;Oa=q+236|0;Pa=q+232|0;Ta=q+228|0;Va=q+224|0;Ra=q+220|0;Na=q+216|0;Sa=q+212|0;Aa=q+348|0;xa=q+208|0;sa=q+204|0;ta=q+200|0;ma=q+196|0;va=q+192|0;ra=q+188|0;ya=q+184|0;qa=q+180|0;T=q+176|0;La=q+172|0;wa=q+168|0;za=q+164|0;Ba=q+353|0;ka=q+352|0;ja=q+351|0;Ja=q+160|0;Ka=q+350|0;na=q+156|0;Ca=q+152|0;pa=q+148|0;X=q+144|0;aa=q+140|0;W=q+136|0;P=q+132|0;ca=q+128|0;ea=q+124|0;ga=q+120|0;F=q+116|0;da=q+112|0;L=q+108|0;ia=q+104|0;Z=q+100|0;ba=q+96|0;$=q+92|0;_=q+88|0;fa=q+84|0;ha=q+80|0;Y=q+76|0;S=q+72|0;O=q+68|0;R=q+64|0;Q=q+60|0;H=q+56|0;K=q+52|0;M=q+48|0;J=q+44|0;I=q+40|0;G=q+36|0;V=q+32|0;z=q+28|0;k=q+24|0;s=q+20|0;t=q+16|0;c[y>>2]=f;c[N>>2]=g;g=v;c[g>>2]=h;c[g+4>>2]=j;c[oa>>2]=0;c[Qa>>2]=0;c[u>>2]=c[c[y>>2]>>2];c[l>>2]=c[(c[u>>2]|0)+8>>2];c[m>>2]=(c[y>>2]|0)+328;c[r>>2]=c[c[u>>2]>>2];c[A>>2]=(c[y>>2]|0)+736+((c[N>>2]|0)*72|0);c[E>>2]=c[(c[A>>2]|0)+56>>2];c[Da>>2]=(c[(c[y>>2]|0)+4>>2]|0)+8+((d[(c[A>>2]|0)+36>>0]|0)*72|0);c[w>>2]=c[(c[Da>>2]|0)+40>>2];g=v;j=c[g>>2]|0;g=c[g+4>>2]|0;h=Hu((c[y>>2]|0)+68|0,c[w>>2]|0)|0;f=(c[A>>2]|0)+64|0;c[f>>2]=j&~h;c[f+4>>2]=g&~D;f=(c[y>>2]|0)+24|0;f=cE(c[f>>2]|0,c[f+4>>2]|0,c[N>>2]|0)|0;c[C>>2]=f&1;if((c[(c[E>>2]|0)+36>>2]&64|0)!=0){j=(b[(c[y>>2]|0)+34>>1]&32|0)==0}else{j=0}c[ua>>2]=j&1;f=fs(c[l>>2]|0)|0;c[(c[A>>2]|0)+16>>2]=f;c[(c[A>>2]|0)+12>>2]=f;c[Ia>>2]=f;f=fs(c[l>>2]|0)|0;c[(c[A>>2]|0)+24>>2]=f;c[x>>2]=f;if((d[(c[A>>2]|0)+36>>0]|0)>0?(a[(c[Da>>2]|0)+36>>0]&8|0)!=0:0){g=(c[u>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[c[A>>2]>>2]=f;To(c[l>>2]|0,25,0,c[c[A>>2]>>2]|0)|0}do{if(((d[(c[Da>>2]|0)+37>>0]|0)>>>2&1|0)==0){Wa=c[E>>2]|0;if((c[(c[E>>2]|0)+36>>2]&1024|0)!=0){c[Fa>>2]=e[Wa+40>>1]|0;gs(c[u>>2]|0);c[Ea>>2]=is(c[u>>2]|0,(c[Fa>>2]|0)+2|0)|0;c[Ga>>2]=c[(c[A>>2]|0)+12>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[Fa>>2]|0)){break}c[Ha>>2]=(c[Ea>>2]|0)+(c[o>>2]|0)+2;c[n>>2]=c[(c[(c[E>>2]|0)+44>>2]|0)+(c[o>>2]<<2)>>2];do{if((c[n>>2]|0)!=0){B=c[u>>2]|0;F=c[n>>2]|0;if((b[(c[n>>2]|0)+18>>1]&1|0)!=0){Lu(B,F,c[A>>2]|0,c[o>>2]|0,c[C>>2]|0,c[Ha>>2]|0)|0;c[Ga>>2]=c[(c[A>>2]|0)+16>>2];break}else{ys(B,c[(c[F>>2]|0)+16>>2]|0,c[Ha>>2]|0);break}}}while(0);c[o>>2]=(c[o>>2]|0)+1}To(c[l>>2]|0,25,c[(c[E>>2]|0)+24>>2]|0,c[Ea>>2]|0)|0;To(c[l>>2]|0,25,c[Fa>>2]|0,(c[Ea>>2]|0)+1|0)|0;Vo(c[l>>2]|0,14,c[w>>2]|0,c[Ga>>2]|0,c[Ea>>2]|0,c[(c[E>>2]|0)+32>>2]|0,(d[(c[E>>2]|0)+28>>0]|0)!=0?-11:-2)|0;a[(c[E>>2]|0)+28>>0]=0;c[o>>2]=0;while(1){if(!((c[o>>2]|0)<16?(c[o>>2]|0)<(c[Fa>>2]|0):0)){break}if((e[(c[E>>2]|0)+30>>1]>>c[o>>2]&1|0)!=0){Mu(c[A>>2]|0,c[(c[(c[E>>2]|0)+44>>2]|0)+(c[o>>2]<<2)>>2]|0)}c[o>>2]=(c[o>>2]|0)+1}a[(c[A>>2]|0)+37>>0]=-105;c[(c[A>>2]|0)+40>>2]=c[w>>2];f=vr(c[l>>2]|0)|0;c[(c[A>>2]|0)+44>>2]=f;ls(c[u>>2]|0,c[Ea>>2]|0,(c[Fa>>2]|0)+2|0);ds(c[u>>2]|0);break}if((c[Wa+36>>2]&256|0)!=0?(c[(c[E>>2]|0)+36>>2]&5|0)!=0:0){c[n>>2]=c[c[(c[E>>2]|0)+44>>2]>>2];g=(c[u>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[Qa>>2]=f;c[oa>>2]=Lu(c[u>>2]|0,c[n>>2]|0,c[A>>2]|0,0,c[C>>2]|0,c[Qa>>2]|0)|0;if((c[oa>>2]|0)!=(c[Qa>>2]|0)){_o(c[u>>2]|0,c[Qa>>2]|0)}c[la>>2]=c[(c[A>>2]|0)+16>>2];To(c[l>>2]|0,38,c[oa>>2]|0,c[la>>2]|0)|0;Wo(c[l>>2]|0,67,c[w>>2]|0,c[la>>2]|0,c[oa>>2]|0)|0;Ds(c[u>>2]|0,c[oa>>2]|0,1);Ts(c[u>>2]|0,c[w>>2]|0,-1,c[oa>>2]|0);a[(c[A>>2]|0)+37>>0]=-100;break}if((c[(c[E>>2]|0)+36>>2]&256|0)!=0?(c[(c[E>>2]|0)+36>>2]&2|0)!=0:0){c[Ma>>2]=156;c[Oa>>2]=0;c[o>>2]=0;c[Ta>>2]=0;c[Pa>>2]=0;if((c[(c[E>>2]|0)+36>>2]&32|0)!=0){f=c[o>>2]|0;c[o>>2]=f+1;c[Pa>>2]=c[(c[(c[E>>2]|0)+44>>2]|0)+(f<<2)>>2]}if((c[(c[E>>2]|0)+36>>2]&16|0)!=0){f=c[o>>2]|0;c[o>>2]=f+1;c[Ta>>2]=c[(c[(c[E>>2]|0)+44>>2]|0)+(f<<2)>>2]}if((c[C>>2]|0)!=0){c[n>>2]=c[Pa>>2];c[Pa>>2]=c[Ta>>2];c[Ta>>2]=c[n>>2]}if((c[Pa>>2]|0)!=0){c[Va>>2]=c[c[Pa>>2]>>2];c[Ra>>2]=rs(c[u>>2]|0,c[(c[Va>>2]|0)+16>>2]|0,Na)|0;Wo(c[l>>2]|0,d[23392+((d[c[Va>>2]>>0]|0)-80)>>0]|0,c[w>>2]|0,c[Ia>>2]|0,c[Ra>>2]|0)|0;Ds(c[u>>2]|0,c[Ra>>2]|0,1);_o(c[u>>2]|0,c[Na>>2]|0);Mu(c[A>>2]|0,c[Pa>>2]|0)}else{To(c[l>>2]|0,(c[C>>2]|0)!=0?102:105,c[w>>2]|0,c[Ia>>2]|0)|0}if((c[Ta>>2]|0)!=0){c[Sa>>2]=c[c[Ta>>2]>>2];g=(c[u>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[Oa>>2]=f;ys(c[u>>2]|0,c[(c[Sa>>2]|0)+16>>2]|0,c[Oa>>2]|0);if((d[c[Sa>>2]>>0]|0)!=82?(d[c[Sa>>2]>>0]|0)!=80:0){c[Ma>>2]=(c[C>>2]|0)!=0?82:80}else{c[Ma>>2]=(c[C>>2]|0)!=0?81:83}Mu(c[A>>2]|0,c[Ta>>2]|0)}c[Ua>>2]=vr(c[l>>2]|0)|0;a[(c[A>>2]|0)+37>>0]=(c[C>>2]|0)!=0?8:9;c[(c[A>>2]|0)+40>>2]=c[w>>2];c[(c[A>>2]|0)+44>>2]=c[Ua>>2];if((c[Ma>>2]|0)==156){break}g=(c[u>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[oa>>2]=f;To(c[l>>2]|0,100,c[w>>2]|0,c[oa>>2]|0)|0;Ts(c[u>>2]|0,c[w>>2]|0,-1,c[oa>>2]|0);Wo(c[l>>2]|0,c[Ma>>2]|0,c[Oa>>2]|0,c[Ia>>2]|0,c[oa>>2]|0)|0;Se(c[l>>2]|0,107);break}Ea=c[E>>2]|0;if((c[(c[E>>2]|0)+36>>2]&512|0)!=0){b[Aa>>1]=b[Ea+24>>1]|0;c[sa>>2]=0;c[ta>>2]=0;c[La>>2]=0;a[Ba>>0]=0;a[ka>>0]=0;a[ja>>0]=0;c[qa>>2]=c[(c[E>>2]|0)+28>>2];c[T>>2]=c[(c[A>>2]|0)+8>>2];if(((b[(c[y>>2]|0)+34>>1]&1|0)!=0?(a[(c[y>>2]|0)+36>>0]|0)>0:0)?(e[(c[qa>>2]|0)+50>>1]|0)>(e[Aa>>1]|0):0){a[ka>>0]=1;c[La>>2]=1}c[o>>2]=e[Aa>>1]|0;if((c[(c[E>>2]|0)+36>>2]&32|0)!=0){f=c[o>>2]|0;c[o>>2]=f+1;c[sa>>2]=c[(c[(c[E>>2]|0)+44>>2]|0)+(f<<2)>>2];c[La>>2]=1}if((((c[(c[E>>2]|0)+36>>2]&16|0)!=0?(f=c[o>>2]|0,c[o>>2]=f+1,c[ta>>2]=c[(c[(c[E>>2]|0)+44>>2]|0)+(f<<2)>>2],c[La>>2]=1,(c[sa>>2]|0)==0):0)?(f=b[(c[(c[qa>>2]|0)+4>>2]|0)+(e[Aa>>1]<<1)>>1]|0,c[o>>2]=f,(f|0)>=0):0)?(d[(c[(c[(c[qa>>2]|0)+12>>2]|0)+4>>2]|0)+((c[o>>2]|0)*24|0)+20>>0]|0)==0:0){a[ka>>0]=1}c[xa>>2]=Nu(c[u>>2]|0,c[A>>2]|0,c[C>>2]|0,c[La>>2]|0,za)|0;if((c[za>>2]|0)!=0){a[Ba>>0]=a[(c[za>>2]|0)+(e[Aa>>1]|0)>>0]|0}c[la>>2]=c[(c[A>>2]|0)+16>>2];if((e[Aa>>1]|0)<(e[(c[qa>>2]|0)+50>>1]|0)?(c[C>>2]|0)==((d[(c[(c[qa>>2]|0)+28>>2]|0)+(e[Aa>>1]|0)>>0]|0)==0|0):0){U=64}else{U=62}if(((U|0)==62?(c[C>>2]|0)!=0:0)?(e[(c[qa>>2]|0)+50>>1]|0)==(e[Aa>>1]|0):0){U=64}if((U|0)==64){c[Ja>>2]=c[ta>>2];c[ta>>2]=c[sa>>2];c[sa>>2]=c[Ja>>2];a[Ka>>0]=a[ka>>0]|0;a[ka>>0]=a[ja>>0]|0;a[ja>>0]=a[Ka>>0]|0}if((c[sa>>2]|0)!=0){F=(b[(c[sa>>2]|0)+18>>1]&40|0)!=0}else{F=1}c[ma>>2]=F&1;if((c[ta>>2]|0)!=0){F=(b[(c[ta>>2]|0)+18>>1]&40|0)!=0}else{F=1}c[va>>2]=F&1;if((c[sa>>2]|0)!=0){F=1}else{F=(e[Aa>>1]|0)>0}c[ra>>2]=F&1;c[ya>>2]=e[Aa>>1]|0;if((c[sa>>2]|0)==0){if((a[ka>>0]|0)!=0){To(c[l>>2]|0,28,0,(c[xa>>2]|0)+(e[Aa>>1]|0)|0)|0;c[ya>>2]=(c[ya>>2]|0)+1;c[ma>>2]=0;c[ra>>2]=1}}else{c[na>>2]=c[(c[c[sa>>2]>>2]|0)+16>>2];ys(c[u>>2]|0,c[na>>2]|0,(c[xa>>2]|0)+(e[Aa>>1]|0)|0);do{if((a[(c[sa>>2]|0)+20>>0]&0|0)==0){if((Ou(c[na>>2]|0)|0)==0){break}To(c[l>>2]|0,76,(c[xa>>2]|0)+(e[Aa>>1]|0)|0,c[la>>2]|0)|0}}while(0);do{if((c[za>>2]|0)!=0){if(((Us(c[na>>2]|0,a[(c[za>>2]|0)+(e[Aa>>1]|0)>>0]|0)|0)<<24>>24|0)==98){a[(c[za>>2]|0)+(e[Aa>>1]|0)>>0]=98}if((Pu(c[na>>2]|0,a[(c[za>>2]|0)+(e[Aa>>1]|0)>>0]|0)|0)==0){break}a[(c[za>>2]|0)+(e[Aa>>1]|0)>>0]=98}}while(0);c[ya>>2]=(c[ya>>2]|0)+1}Qu(c[u>>2]|0,c[xa>>2]|0,(c[ya>>2]|0)-(d[ka>>0]|0)|0,c[za>>2]|0);c[wa>>2]=d[23400+((c[ra>>2]<<2)+(c[ma>>2]<<1)+(c[C>>2]|0))>>0]|0;Re(c[l>>2]|0,c[wa>>2]|0,c[T>>2]|0,c[la>>2]|0,c[xa>>2]|0,c[ya>>2]|0)|0;c[ya>>2]=e[Aa>>1]|0;do{if((c[ta>>2]|0)!=0){c[Ca>>2]=c[(c[c[ta>>2]>>2]|0)+16>>2];ms(c[u>>2]|0,(c[xa>>2]|0)+(e[Aa>>1]|0)|0,1);ys(c[u>>2]|0,c[Ca>>2]|0,(c[xa>>2]|0)+(e[Aa>>1]|0)|0);do{if((a[(c[ta>>2]|0)+20>>0]&0|0)==0){if((Ou(c[Ca>>2]|0)|0)==0){break}To(c[l>>2]|0,76,(c[xa>>2]|0)+(e[Aa>>1]|0)|0,c[la>>2]|0)|0}}while(0);do{if(((Us(c[Ca>>2]|0,a[Ba>>0]|0)|0)<<24>>24|0)!=98){if((Pu(c[Ca>>2]|0,a[Ba>>0]|0)|0)!=0){break}Qu(c[u>>2]|0,(c[xa>>2]|0)+(e[Aa>>1]|0)|0,1,Ba)}}while(0);c[ya>>2]=(c[ya>>2]|0)+1}else{if((a[ja>>0]|0)==0){break}To(c[l>>2]|0,28,0,(c[xa>>2]|0)+(e[Aa>>1]|0)|0)|0;c[va>>2]=0;c[ya>>2]=(c[ya>>2]|0)+1}}while(0);Wb(c[r>>2]|0,c[za>>2]|0);f=vr(c[l>>2]|0)|0;c[(c[A>>2]|0)+44>>2]=f;if((c[ya>>2]|0)!=0){c[wa>>2]=d[23408+((c[C>>2]<<1)+(c[va>>2]|0))>>0]|0;Re(c[l>>2]|0,c[wa>>2]|0,c[T>>2]|0,c[la>>2]|0,c[xa>>2]|0,c[ya>>2]|0)|0}Mu(c[A>>2]|0,c[sa>>2]|0);Mu(c[A>>2]|0,c[ta>>2]|0);do{if((c[ua>>2]|0)==0){if((a[(c[(c[qa>>2]|0)+12>>2]|0)+44>>0]&32|0)==0){g=(c[u>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[oa>>2]=f;To(c[l>>2]|0,109,c[T>>2]|0,c[oa>>2]|0)|0;Ts(c[u>>2]|0,c[w>>2]|0,-1,c[oa>>2]|0);To(c[l>>2]|0,63,c[w>>2]|0,c[oa>>2]|0)|0;break}if((c[w>>2]|0)==(c[T>>2]|0)){break}c[pa>>2]=Gr(c[(c[qa>>2]|0)+12>>2]|0)|0;c[oa>>2]=is(c[u>>2]|0,e[(c[pa>>2]|0)+50>>1]|0)|0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(e[(c[pa>>2]|0)+50>>1]|0)){break}c[B>>2]=(ns(c[qa>>2]|0,b[(c[(c[pa>>2]|0)+4>>2]|0)+(c[o>>2]<<1)>>1]|0)|0)<<16>>16;Wo(c[l>>2]|0,46,c[T>>2]|0,c[B>>2]|0,(c[oa>>2]|0)+(c[o>>2]|0)|0)|0;c[o>>2]=(c[o>>2]|0)+1}Re(c[l>>2]|0,65,c[w>>2]|0,c[x>>2]|0,c[oa>>2]|0,e[(c[pa>>2]|0)+50>>1]|0)|0}}while(0);do{if((c[(c[E>>2]|0)+36>>2]&4096|0)==0){B=(c[A>>2]|0)+37|0;if((c[C>>2]|0)!=0){a[B>>0]=8;break}else{a[B>>0]=9;break}}else{a[(c[A>>2]|0)+37>>0]=-100}}while(0);c[(c[A>>2]|0)+40>>2]=c[T>>2];a[(c[A>>2]|0)+38>>0]=(c[(c[E>>2]|0)+36>>2]&65536|0)!=0?1:0;if((c[(c[E>>2]|0)+36>>2]&15|0)!=0){break}a[(c[A>>2]|0)+39>>0]=1;break}if((c[Ea+36>>2]&8192|0)==0){if(((d[(c[Da>>2]|0)+37>>0]|0)>>>3&1|0)!=0){a[(c[A>>2]|0)+37>>0]=-100;break}else{a[(c[A>>2]|0)+37>>0]=a[23416+(c[C>>2]|0)>>0]|0;c[(c[A>>2]|0)+40>>2]=c[w>>2];f=1+(To(c[l>>2]|0,d[23424+(c[C>>2]|0)>>0]|0,c[w>>2]|0,c[Ia>>2]|0)|0)|0;c[(c[A>>2]|0)+44>>2]=f;a[(c[A>>2]|0)+39>>0]=1;break}}c[W>>2]=0;C=(c[u>>2]|0)+68|0;f=c[C>>2]|0;c[C>>2]=f+1;c[P>>2]=f;f=(c[u>>2]|0)+72|0;C=(c[f>>2]|0)+1|0;c[f>>2]=C;c[ca>>2]=C;c[ea>>2]=0;c[ga>>2]=0;c[F>>2]=fs(c[l>>2]|0)|0;c[L>>2]=0;c[Z>>2]=0;c[ba>>2]=c[(c[Da>>2]|0)+16>>2];c[n>>2]=c[c[(c[E>>2]|0)+44>>2]>>2];c[X>>2]=c[(c[n>>2]|0)+12>>2];a[(c[A>>2]|0)+37>>0]=18;c[(c[A>>2]|0)+40>>2]=c[ca>>2];C=c[y>>2]|0;a:do{if((d[(c[y>>2]|0)+41>>0]|0)>1){c[$>>2]=(d[C+41>>0]|0)-(c[N>>2]|0)-1;c[aa>>2]=Le(c[r>>2]|0,80+((c[$>>2]|0)*72|0)|0)|0;if((c[aa>>2]|0)==0){h=v;f=c[h+4>>2]|0;g=p;c[g>>2]=c[h>>2];c[g+4>>2]=f;g=p;f=g;f=c[f>>2]|0;g=g+4|0;g=c[g>>2]|0;D=g;i=q;return f|0}c[(c[aa>>2]|0)+4>>2]=(c[$>>2]|0)+1&255;c[c[aa>>2]>>2]=c[(c[aa>>2]|0)+4>>2];C=(c[aa>>2]|0)+8|0;T=(c[Da>>2]|0)+0|0;E=C+72|0;do{c[C>>2]=c[T>>2];C=C+4|0;T=T+4|0}while((C|0)<(E|0));c[_>>2]=(c[(c[y>>2]|0)+4>>2]|0)+8;c[B>>2]=1;while(1){if((c[B>>2]|0)>(c[$>>2]|0)){break a}C=(c[aa>>2]|0)+8+((c[B>>2]|0)*72|0)+0|0;T=(c[_>>2]|0)+((d[(c[A>>2]|0)+((c[B>>2]|0)*72|0)+36>>0]|0)*72|0)+0|0;E=C+72|0;do{c[C>>2]=c[T>>2];C=C+4|0;T=T+4|0}while((C|0)<(E|0));c[B>>2]=(c[B>>2]|0)+1}}else{c[aa>>2]=c[C+4>>2]}}while(0);if((b[(c[y>>2]|0)+34>>1]&8|0)==0){if((a[(c[ba>>2]|0)+44>>0]&32|0)==0){g=(c[u>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[ea>>2]=f;To(c[l>>2]|0,28,0,c[ea>>2]|0)|0}else{c[fa>>2]=Gr(c[ba>>2]|0)|0;g=(c[u>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[ea>>2]=f;To(c[l>>2]|0,55,c[ea>>2]|0,e[(c[fa>>2]|0)+50>>1]|0)|0;ur(c[u>>2]|0,c[fa>>2]|0)}g=(c[u>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[ga>>2]=f}c[da>>2]=To(c[l>>2]|0,25,0,c[ca>>2]|0)|0;if((c[(c[m>>2]|0)+12>>2]|0)>1){c[ha>>2]=0;while(1){if((c[ha>>2]|0)>=(c[(c[m>>2]|0)+12>>2]|0)){break}c[Y>>2]=c[(c[(c[m>>2]|0)+20>>2]|0)+((c[ha>>2]|0)*48|0)>>2];if(((((c[(c[m>>2]|0)+20>>2]|0)+((c[ha>>2]|0)*48|0)|0)!=(c[n>>2]|0)?(c[(c[Y>>2]|0)+4>>2]&1|0)==0:0)?(a[(c[(c[m>>2]|0)+20>>2]|0)+((c[ha>>2]|0)*48|0)+20>>0]&18|0)==0:0)?(b[(c[(c[m>>2]|0)+20>>2]|0)+((c[ha>>2]|0)*48|0)+18>>1]&4095|0)!=0:0){c[Y>>2]=kq(c[r>>2]|0,c[Y>>2]|0,0)|0;c[Z>>2]=Xq(c[r>>2]|0,c[Z>>2]|0,c[Y>>2]|0)|0}c[ha>>2]=(c[ha>>2]|0)+1}if((c[Z>>2]|0)!=0){c[Z>>2]=Dn(c[u>>2]|0,72,0,c[Z>>2]|0,0)|0}}c[ia>>2]=0;while(1){if((c[ia>>2]|0)>=(c[(c[X>>2]|0)+12>>2]|0)){break}c[S>>2]=(c[(c[X>>2]|0)+20>>2]|0)+((c[ia>>2]|0)*48|0);if(!((c[(c[S>>2]|0)+8>>2]|0)!=(c[w>>2]|0)?(b[(c[S>>2]|0)+18>>1]&512|0)==0:0)){c[R>>2]=c[c[S>>2]>>2];c[Q>>2]=0;if((c[Z>>2]|0)!=0?(c[(c[R>>2]|0)+4>>2]&1|0)==0:0){c[(c[Z>>2]|0)+12>>2]=c[R>>2];c[R>>2]=c[Z>>2]}c[O>>2]=ou(c[u>>2]|0,c[aa>>2]|0,c[R>>2]|0,0,0,240,c[P>>2]|0)|0;if((c[O>>2]|0)!=0){Ju(c[u>>2]|0,c[aa>>2]|0,(c[O>>2]|0)+736|0,c[N>>2]|0,d[(c[A>>2]|0)+36>>0]|0,0);do{if((b[(c[y>>2]|0)+34>>1]&8|0)==0){c[M>>2]=(c[ia>>2]|0)==((c[(c[X>>2]|0)+12>>2]|0)-1|0)?-1:c[ia>>2]|0;if((a[(c[ba>>2]|0)+44>>0]&32|0)==0){c[K>>2]=As(c[u>>2]|0,c[ba>>2]|0,-1,c[w>>2]|0,c[ga>>2]|0,0)|0;c[Q>>2]=Re(c[l>>2]|0,127,c[ea>>2]|0,0,c[K>>2]|0,c[M>>2]|0)|0;break}c[J>>2]=Gr(c[ba>>2]|0)|0;c[I>>2]=e[(c[J>>2]|0)+50>>1]|0;c[K>>2]=is(c[u>>2]|0,c[I>>2]|0)|0;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[I>>2]|0)){break}c[V>>2]=b[(c[(c[J>>2]|0)+4>>2]|0)+(c[G>>2]<<1)>>1]|0;As(c[u>>2]|0,c[ba>>2]|0,c[V>>2]|0,c[w>>2]|0,(c[K>>2]|0)+(c[G>>2]|0)|0,0)|0;c[G>>2]=(c[G>>2]|0)+1}if((c[M>>2]|0)!=0){c[Q>>2]=Re(c[l>>2]|0,66,c[ea>>2]|0,0,c[K>>2]|0,c[I>>2]|0)|0}do{if((c[M>>2]|0)>=0){Wo(c[l>>2]|0,48,c[K>>2]|0,c[I>>2]|0,c[ga>>2]|0)|0;Wo(c[l>>2]|0,107,c[ea>>2]|0,c[ga>>2]|0,0)|0;if((c[M>>2]|0)==0){break}Se(c[l>>2]|0,16)}}while(0);ls(c[u>>2]|0,c[K>>2]|0,c[I>>2]|0)}}while(0);To(c[l>>2]|0,17,c[ca>>2]|0,c[F>>2]|0)|0;if((c[Q>>2]|0)!=0){mp(c[l>>2]|0,c[Q>>2]|0)}if((a[(c[O>>2]|0)+39>>0]|0)!=0){c[L>>2]=1}c[H>>2]=c[(c[O>>2]|0)+792>>2];do{if((c[(c[H>>2]|0)+36>>2]&512|0)!=0){if((c[ia>>2]|0)!=0?(c[(c[H>>2]|0)+28>>2]|0)!=(c[W>>2]|0):0){U=164;break}if((a[(c[ba>>2]|0)+44>>0]&32|0)!=0?(a[(c[(c[H>>2]|0)+28>>2]|0)+55>>0]&3|0)==2:0){U=164;break}c[W>>2]=c[(c[H>>2]|0)+28>>2]}else{U=164}}while(0);if((U|0)==164){U=0;c[W>>2]=0}pu(c[O>>2]|0)}}c[ia>>2]=(c[ia>>2]|0)+1}c[(c[A>>2]|0)+48>>2]=c[W>>2];if((c[W>>2]|0)!=0){c[(c[A>>2]|0)+8>>2]=c[P>>2]}if((c[Z>>2]|0)!=0){c[(c[Z>>2]|0)+12>>2]=0;hn(c[r>>2]|0,c[Z>>2]|0)}g=c[l>>2]|0;f=c[da>>2]|0;Ve(g,f,vr(c[l>>2]|0)|0);To(c[l>>2]|0,16,0,c[(c[A>>2]|0)+12>>2]|0)|0;cs(c[l>>2]|0,c[F>>2]|0);if((d[(c[y>>2]|0)+41>>0]|0)>1){Wb(c[r>>2]|0,c[aa>>2]|0)}if((c[L>>2]|0)==0){Mu(c[A>>2]|0,c[n>>2]|0)}}else{c[Wa>>2]=c[(c[Da>>2]|0)+28>>2];Wo(c[l>>2]|0,20,c[Wa>>2]|0,0,c[(c[Da>>2]|0)+24>>2]|0)|0;f=To(c[l>>2]|0,22,c[Wa>>2]|0,c[Ia>>2]|0)|0;c[(c[A>>2]|0)+44>>2]=f;a[(c[A>>2]|0)+37>>0]=16}}while(0);c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>>2]=c[(c[m>>2]|0)+12>>2];while(1){if((c[o>>2]|0)<=0){break}do{if((a[(c[n>>2]|0)+20>>0]&6|0)==0){g=(c[n>>2]|0)+40|0;f=(c[A>>2]|0)+64|0;if((c[g>>2]&c[f>>2]|0)!=0?1:(c[g+4>>2]&c[f+4>>2]|0)!=0){a[(c[y>>2]|0)+39>>0]=1;break}c[z>>2]=c[c[n>>2]>>2];if((c[c[A>>2]>>2]|0)!=0?(c[(c[z>>2]|0)+4>>2]&1|0)==0:0){break}hs(c[u>>2]|0,c[z>>2]|0,c[x>>2]|0,8);f=(c[n>>2]|0)+20|0;a[f>>0]=d[f>>0]|4}}while(0);c[o>>2]=(c[o>>2]|0)+ -1;c[n>>2]=(c[n>>2]|0)+48}c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>>2]=c[(c[m>>2]|0)+12>>2];while(1){if((c[o>>2]|0)<=0){break}if(((((((a[(c[n>>2]|0)+20>>0]&6|0)==0?(e[(c[n>>2]|0)+18>>1]|0)==1026:0)?(c[(c[n>>2]|0)+8>>2]|0)==(c[w>>2]|0):0)?(c[c[A>>2]>>2]|0)==0:0)?(c[k>>2]=c[c[n>>2]>>2],f=v,c[t>>2]=Ru(c[m>>2]|0,c[w>>2]|0,c[(c[n>>2]|0)+12>>2]|0,c[f>>2]|0,c[f+4>>2]|0,3,0)|0,(c[t>>2]|0)!=0):0)?(a[(c[t>>2]|0)+20>>0]&4|0)==0:0)?(c[s>>2]=Le(c[r>>2]|0,48)|0,(c[s>>2]|0)!=0):0){C=(c[s>>2]|0)+0|0;T=(c[c[t>>2]>>2]|0)+0|0;E=C+48|0;do{c[C>>2]=c[T>>2];C=C+4|0;T=T+4|0}while((C|0)<(E|0));c[(c[s>>2]|0)+12>>2]=c[(c[k>>2]|0)+12>>2];hs(c[u>>2]|0,c[s>>2]|0,c[x>>2]|0,8);Wb(c[r>>2]|0,c[s>>2]|0)}c[o>>2]=(c[o>>2]|0)+ -1;c[n>>2]=(c[n>>2]|0)+48}b:do{if((c[c[A>>2]>>2]|0)!=0){f=vr(c[l>>2]|0)|0;c[(c[A>>2]|0)+28>>2]=f;To(c[l>>2]|0,25,1,c[c[A>>2]>>2]|0)|0;Lt(c[u>>2]|0);c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[m>>2]|0)+12>>2]|0)){break b}if((a[(c[n>>2]|0)+20>>0]&6|0)==0?(g=(c[n>>2]|0)+40|0,f=(c[A>>2]|0)+64|0,!((c[g>>2]&c[f>>2]|0)!=0?1:(c[g+4>>2]&c[f+4>>2]|0)!=0)):0){hs(c[u>>2]|0,c[c[n>>2]>>2]|0,c[x>>2]|0,8);f=(c[n>>2]|0)+20|0;a[f>>0]=d[f>>0]|4}c[o>>2]=(c[o>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+48}}}while(0);h=(c[A>>2]|0)+64|0;f=c[h+4>>2]|0;g=p;c[g>>2]=c[h>>2];c[g+4>>2]=f;g=p;f=g;f=c[f>>2]|0;g=g+4|0;g=c[g>>2]|0;D=g;i=q;return f|0}function Lu(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;q=i;i=i+64|0;v=q+48|0;l=q+44|0;m=q+40|0;x=q+36|0;p=q+32|0;w=q+28|0;u=q+24|0;n=q+20|0;k=q+16|0;r=q+12|0;s=q+8|0;o=q+4|0;t=q;c[v>>2]=b;c[l>>2]=e;c[m>>2]=f;c[x>>2]=g;c[p>>2]=h;c[w>>2]=j;c[u>>2]=c[c[l>>2]>>2];c[n>>2]=c[(c[v>>2]|0)+8>>2];if((d[c[u>>2]>>0]|0|0)==79){c[k>>2]=zs(c[v>>2]|0,c[(c[u>>2]|0)+16>>2]|0,c[w>>2]|0)|0;e=c[m>>2]|0;b=c[l>>2]|0;Mu(e,b);b=c[k>>2]|0;i=q;return b|0}if((d[c[u>>2]>>0]|0|0)==76){c[k>>2]=c[w>>2];To(c[n>>2]|0,28,0,c[k>>2]|0)|0;e=c[m>>2]|0;b=c[l>>2]|0;Mu(e,b);b=c[k>>2]|0;i=q;return b|0}c[t>>2]=c[(c[m>>2]|0)+56>>2];if(((c[(c[t>>2]|0)+36>>2]&1024|0)==0?(c[(c[t>>2]|0)+28>>2]|0)!=0:0)?(d[(c[(c[(c[t>>2]|0)+28>>2]|0)+28>>2]|0)+(c[x>>2]|0)>>0]|0|0)!=0:0){c[p>>2]=((c[p>>2]|0)!=0^1)&1}c[k>>2]=c[w>>2];c[r>>2]=ws(c[v>>2]|0,c[u>>2]|0,0)|0;if((c[r>>2]|0)==4){c[p>>2]=((c[p>>2]|0)!=0^1)&1}c[s>>2]=c[(c[u>>2]|0)+28>>2];To(c[n>>2]|0,(c[p>>2]|0)!=0?102:105,c[s>>2]|0,0)|0;b=(c[t>>2]|0)+36|0;c[b>>2]=c[b>>2]|2048;if((c[(c[m>>2]|0)+48>>2]|0)==0){b=fs(c[n>>2]|0)|0;c[(c[m>>2]|0)+16>>2]=b}t=(c[m>>2]|0)+48|0;c[t>>2]=(c[t>>2]|0)+1;t=Hr(c[c[v>>2]>>2]|0,c[(c[m>>2]|0)+52>>2]|0,(c[(c[m>>2]|0)+48>>2]|0)*12|0)|0;c[(c[m>>2]|0)+52>>2]=t;c[o>>2]=c[(c[m>>2]|0)+52>>2];t=(c[m>>2]|0)+48|0;if((c[o>>2]|0)==0){c[t>>2]=0;e=c[m>>2]|0;b=c[l>>2]|0;Mu(e,b);b=c[k>>2]|0;i=q;return b|0}c[o>>2]=(c[o>>2]|0)+(((c[t>>2]|0)-1|0)*12|0);c[c[o>>2]>>2]=c[s>>2];t=c[n>>2]|0;u=c[s>>2]|0;s=c[k>>2]|0;if((c[r>>2]|0)==1){b=To(t,100,u,s)|0;c[(c[o>>2]|0)+4>>2]=b}else{b=Wo(t,46,u,0,s)|0;c[(c[o>>2]|0)+4>>2]=b}a[(c[o>>2]|0)+8>>0]=(c[p>>2]|0)!=0?6:7;rr(c[n>>2]|0,76,c[k>>2]|0)|0;e=c[m>>2]|0;b=c[l>>2]|0;Mu(e,b);b=c[k>>2]|0;i=q;return b|0}function Mu(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+8|0;g=f+4|0;h=f;c[j>>2]=b;c[g>>2]=e;if((c[g>>2]|0)==0){i=f;return}if((a[(c[g>>2]|0)+20>>0]&4|0)!=0){i=f;return}if((c[c[j>>2]>>2]|0)!=0?(c[(c[c[g>>2]>>2]|0)+4>>2]&1|0)==0:0){i=f;return}e=(c[j>>2]|0)+64|0;b=(c[g>>2]|0)+40|0;if(!((c[e>>2]&c[b>>2]|0)==0?(c[e+4>>2]&c[b+4>>2]|0)==0:0)){i=f;return}b=(c[g>>2]|0)+20|0;a[b>>0]=d[b>>0]|0|4;if((c[(c[g>>2]|0)+4>>2]|0)<0){i=f;return}c[h>>2]=(c[(c[(c[g>>2]|0)+24>>2]|0)+20>>2]|0)+((c[(c[g>>2]|0)+4>>2]|0)*48|0);g=(c[h>>2]|0)+21|0;b=(a[g>>0]|0)+ -1<<24>>24;a[g>>0]=b;if((b&255|0)!=0){i=f;return}Mu(c[j>>2]|0,c[h>>2]|0);i=f;return}function Nu(d,f,g,h,j){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;m=i;i=i+80|0;s=m+60|0;t=m+56|0;k=m+52|0;C=m+48|0;l=m+44|0;w=m+66|0;x=m+64|0;y=m+40|0;B=m+36|0;r=m+32|0;p=m+28|0;q=m+24|0;n=m+20|0;o=m+16|0;u=m+12|0;z=m+8|0;v=m+4|0;A=m;c[s>>2]=d;c[t>>2]=f;c[k>>2]=g;c[C>>2]=h;c[l>>2]=j;c[y>>2]=c[(c[s>>2]|0)+8>>2];c[p>>2]=c[(c[t>>2]|0)+56>>2];b[w>>1]=b[(c[p>>2]|0)+24>>1]|0;b[x>>1]=b[(c[p>>2]|0)+26>>1]|0;c[B>>2]=c[(c[p>>2]|0)+28>>2];c[n>>2]=(c[(c[s>>2]|0)+72>>2]|0)+1;c[o>>2]=(e[(c[p>>2]|0)+24>>1]|0)+(c[C>>2]|0);d=(c[s>>2]|0)+72|0;c[d>>2]=(c[d>>2]|0)+(c[o>>2]|0);d=c[c[s>>2]>>2]|0;c[u>>2]=he(d,Jt(c[y>>2]|0,c[B>>2]|0)|0)|0;if((c[u>>2]|0)==0){a[(c[c[s>>2]>>2]|0)+64>>0]=1}a:do{if((b[x>>1]|0)!=0){c[z>>2]=c[(c[t>>2]|0)+8>>2];rr(c[y>>2]|0,(c[k>>2]|0)!=0?102:105,c[z>>2]|0)|0;c[q>>2]=$o(c[y>>2]|0,16)|0;C=Re(c[y>>2]|0,(c[k>>2]|0)!=0?59:62,c[z>>2]|0,0,c[n>>2]|0,e[x>>1]|0)|0;c[(c[t>>2]|0)+20>>2]=C;mp(c[y>>2]|0,c[q>>2]|0);c[q>>2]=0;while(1){if((c[q>>2]|0)>=(e[x>>1]|0)){break a}Wo(c[y>>2]|0,46,c[z>>2]|0,c[q>>2]|0,(c[n>>2]|0)+(c[q>>2]|0)|0)|0;c[q>>2]=(c[q>>2]|0)+1}}}while(0);c[q>>2]=e[x>>1]|0;while(1){if((c[q>>2]|0)>=(e[w>>1]|0)){break}c[r>>2]=c[(c[(c[p>>2]|0)+44>>2]|0)+(c[q>>2]<<2)>>2];c[v>>2]=Lu(c[s>>2]|0,c[r>>2]|0,c[t>>2]|0,c[q>>2]|0,c[k>>2]|0,(c[n>>2]|0)+(c[q>>2]|0)|0)|0;do{if((c[v>>2]|0)!=((c[n>>2]|0)+(c[q>>2]|0)|0)){if((c[o>>2]|0)==1){_o(c[s>>2]|0,c[n>>2]|0);c[n>>2]=c[v>>2];break}else{To(c[y>>2]|0,34,c[v>>2]|0,(c[n>>2]|0)+(c[q>>2]|0)|0)|0;break}}}while(0);if((b[(c[r>>2]|0)+18>>1]&129|0)==0){c[A>>2]=c[(c[c[r>>2]>>2]|0)+16>>2];if((Ou(c[A>>2]|0)|0)!=0){To(c[y>>2]|0,76,(c[n>>2]|0)+(c[q>>2]|0)|0,c[(c[t>>2]|0)+12>>2]|0)|0}if((c[u>>2]|0)!=0){if(((Us(c[A>>2]|0,a[(c[u>>2]|0)+(c[q>>2]|0)>>0]|0)|0)<<24>>24|0)==98){a[(c[u>>2]|0)+(c[q>>2]|0)>>0]=98}if((Pu(c[A>>2]|0,a[(c[u>>2]|0)+(c[q>>2]|0)>>0]|0)|0)!=0){a[(c[u>>2]|0)+(c[q>>2]|0)>>0]=98}}}c[q>>2]=(c[q>>2]|0)+1}c[c[l>>2]>>2]=c[u>>2];i=m;return c[n>>2]|0}function Ou(b){b=b|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+4|0;h=f;g=f+8|0;c[h>>2]=b;while(1){if((d[c[h>>2]>>0]|0|0)==158){j=1}else{j=(d[c[h>>2]>>0]|0|0)==157}b=c[h>>2]|0;if(!j){break}c[h>>2]=c[b+12>>2]}a[g>>0]=a[b>>0]|0;if((d[g>>0]|0|0)==159){a[g>>0]=a[(c[h>>2]|0)+38>>0]|0}j=d[g>>0]|0;if((j|0)==134|(j|0)==133|(j|0)==97|(j|0)==132){c[e>>2]=0;j=c[e>>2]|0;i=f;return j|0}else{c[e>>2]=1;j=c[e>>2]|0;i=f;return j|0}return 0}function Pu(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;h=i;i=i+16|0;g=h+4|0;k=h;j=h+9|0;l=h+8|0;c[k>>2]=e;a[j>>0]=f;a:do{if((a[j>>0]|0)==98){c[g>>2]=1}else{while(1){if((d[c[k>>2]>>0]|0)==158){f=1}else{f=(d[c[k>>2]>>0]|0)==157}e=c[k>>2]|0;if(!f){break}c[k>>2]=c[e+12>>2]}a[l>>0]=a[e>>0]|0;if((d[l>>0]|0)==159){a[l>>0]=a[(c[k>>2]|0)+38>>0]|0}switch(d[l>>0]|0){case 97:{c[g>>2]=(a[j>>0]|0)==97&1;break a};case 154:{if((b[(c[k>>2]|0)+32>>1]|0)<0){if((a[j>>0]|0)==100){j=1}else{j=(a[j>>0]|0)==99}}else{j=0}c[g>>2]=j&1;break a};case 132:{if((a[j>>0]|0)==100){j=1}else{j=(a[j>>0]|0)==99}c[g>>2]=j&1;break a};case 134:{c[g>>2]=1;break a};case 133:{if((a[j>>0]|0)==101){j=1}else{j=(a[j>>0]|0)==99}c[g>>2]=j&1;break a};default:{c[g>>2]=0;break a}}}}while(0);i=h;return c[g>>2]|0}function Qu(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;g=m+16|0;j=m+12|0;k=m+8|0;l=m+4|0;h=m;c[g>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[h>>2]=c[(c[g>>2]|0)+8>>2];if((c[l>>2]|0)==0){i=m;return}while(1){if((c[k>>2]|0)<=0){break}if((a[c[l>>2]>>0]|0)!=98){break}c[k>>2]=(c[k>>2]|0)+ -1;c[j>>2]=(c[j>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}while(1){if((c[k>>2]|0)>1){e=(a[(c[l>>2]|0)+((c[k>>2]|0)-1)>>0]|0)==98}else{e=0}f=c[k>>2]|0;if(!e){break}c[k>>2]=f+ -1}if((f|0)<=0){i=m;return}To(c[h>>2]|0,47,c[j>>2]|0,c[k>>2]|0)|0;Ye(c[h>>2]|0,-1,c[l>>2]|0,c[k>>2]|0);Ds(c[g>>2]|0,c[j>>2]|0,c[k>>2]|0);i=m;return}function Ru(a,d,e,f,g,h,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;l=i;i=i+160|0;k=l+148|0;u=l+144|0;t=l+140|0;s=l+136|0;o=l;r=l+132|0;q=l+128|0;n=l+124|0;m=l+120|0;p=l+8|0;c[u>>2]=a;c[t>>2]=d;c[s>>2]=e;a=o;c[a>>2]=f;c[a+4>>2]=g;c[r>>2]=h;c[q>>2]=j;c[n>>2]=0;c[m>>2]=Su(p,c[u>>2]|0,c[t>>2]|0,c[s>>2]|0,c[r>>2]|0,c[q>>2]|0)|0;while(1){if((c[m>>2]|0)==0){h=10;break}t=(c[m>>2]|0)+32|0;u=o;if((c[t>>2]&c[u>>2]|0)==0?(c[t+4>>2]&c[u+4>>2]|0)==0:0){u=(c[m>>2]|0)+32|0;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0?(b[(c[m>>2]|0)+18>>1]&2|0)!=0:0){h=6;break}if((c[n>>2]|0)==0){c[n>>2]=c[m>>2]}}c[m>>2]=Tu(p)|0}if((h|0)==6){c[k>>2]=c[m>>2];u=c[k>>2]|0;i=l;return u|0}else if((h|0)==10){c[k>>2]=c[n>>2];u=c[k>>2]|0;i=l;return u|0}return 0}function Su(d,f,g,h,j,k){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;r=i;i=i+32|0;q=r+28|0;n=r+24|0;u=r+20|0;o=r+16|0;p=r+12|0;t=r+8|0;l=r+4|0;s=r;c[n>>2]=d;c[u>>2]=f;c[o>>2]=g;c[p>>2]=h;c[t>>2]=j;c[l>>2]=k;c[c[n>>2]>>2]=c[u>>2];c[(c[n>>2]|0)+4>>2]=c[u>>2];do{if((c[l>>2]|0)!=0?(c[p>>2]|0)>=0:0){a[(c[n>>2]|0)+12>>0]=a[(c[(c[(c[l>>2]|0)+12>>2]|0)+4>>2]|0)+((c[p>>2]|0)*24|0)+21>>0]|0;c[s>>2]=0;while(1){j=c[s>>2]|0;k=c[l>>2]|0;if((b[(c[(c[l>>2]|0)+4>>2]|0)+(c[s>>2]<<1)>>1]|0)==(c[p>>2]|0)){m=8;break}if((j|0)>=(e[k+50>>1]|0)){break}c[s>>2]=(c[s>>2]|0)+1}if((m|0)==8){c[(c[n>>2]|0)+8>>2]=c[(c[k+32>>2]|0)+(j<<2)>>2];break}c[q>>2]=0;u=c[q>>2]|0;i=r;return u|0}else{m=9}}while(0);if((m|0)==9){a[(c[n>>2]|0)+12>>0]=0;c[(c[n>>2]|0)+8>>2]=0}c[(c[n>>2]|0)+16>>2]=c[t>>2];c[(c[n>>2]|0)+20>>2]=0;c[(c[n>>2]|0)+24>>2]=c[o>>2];c[(c[n>>2]|0)+28>>2]=c[p>>2];a[(c[n>>2]|0)+13>>0]=2;a[(c[n>>2]|0)+14>>0]=2;c[q>>2]=Tu(c[n>>2]|0)|0;u=c[q>>2]|0;i=r;return u|0}function Tu(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+48|0;k=h+40|0;j=h+36|0;m=h+32|0;n=h+28|0;p=h+24|0;o=h+20|0;l=h+16|0;g=h+12|0;q=h+8|0;s=h+4|0;r=h;c[j>>2]=f;c[g>>2]=c[(c[j>>2]|0)+20>>2];a:while(1){if((d[(c[j>>2]|0)+14>>0]|0)>(d[(c[j>>2]|0)+13>>0]|0)){m=35;break}c[m>>2]=c[(c[j>>2]|0)+24+((d[(c[j>>2]|0)+14>>0]|0)-2<<2)>>2];c[n>>2]=c[(c[j>>2]|0)+24+((d[(c[j>>2]|0)+14>>0]|0)-1<<2)>>2];while(1){f=c[(c[j>>2]|0)+4>>2]|0;c[o>>2]=f;if((f|0)==0){break}c[l>>2]=(c[(c[o>>2]|0)+20>>2]|0)+((c[g>>2]|0)*48|0);while(1){if((c[g>>2]|0)>=(c[(c[o>>2]|0)+12>>2]|0)){break}do{if((c[(c[l>>2]|0)+8>>2]|0)==(c[m>>2]|0)?(c[(c[l>>2]|0)+12>>2]|0)==(c[n>>2]|0):0){if((d[(c[j>>2]|0)+14>>0]|0)>2?(c[(c[c[l>>2]>>2]|0)+4>>2]&1|0)!=0:0){break}if((b[(c[l>>2]|0)+18>>1]&1024|0)!=0?(d[(c[j>>2]|0)+13>>0]|0)<22:0){c[p>>2]=Sp(c[(c[c[l>>2]>>2]|0)+16>>2]|0)|0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(d[(c[j>>2]|0)+13>>0]|0)){break}if((c[(c[j>>2]|0)+24+(c[q>>2]<<2)>>2]|0)==(c[(c[p>>2]|0)+28>>2]|0)?(c[(c[j>>2]|0)+24+((c[q>>2]|0)+1<<2)>>2]|0)==(b[(c[p>>2]|0)+32>>1]|0):0){break}c[q>>2]=(c[q>>2]|0)+2}if((c[q>>2]|0)==(d[(c[j>>2]|0)+13>>0]|0)){c[(c[j>>2]|0)+24+(c[q>>2]<<2)>>2]=c[(c[p>>2]|0)+28>>2];c[(c[j>>2]|0)+24+((c[q>>2]|0)+1<<2)>>2]=b[(c[p>>2]|0)+32>>1]|0;f=(c[j>>2]|0)+13|0;a[f>>0]=(d[f>>0]|0)+2}}if((e[(c[l>>2]|0)+18>>1]&c[(c[j>>2]|0)+16>>2]|0)!=0){if((c[(c[j>>2]|0)+8>>2]|0)!=0?(b[(c[l>>2]|0)+18>>1]&128|0)==0:0){c[r>>2]=c[c[c[o>>2]>>2]>>2];c[p>>2]=c[c[l>>2]>>2];if((Ws(c[p>>2]|0,a[(c[j>>2]|0)+12>>0]|0)|0)==0){break}c[s>>2]=Ls(c[r>>2]|0,c[(c[p>>2]|0)+12>>2]|0,c[(c[p>>2]|0)+16>>2]|0)|0;if((c[s>>2]|0)==0){c[s>>2]=c[(c[c[r>>2]>>2]|0)+8>>2]}if((vc(c[c[s>>2]>>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0)!=0){break}}if((b[(c[l>>2]|0)+18>>1]&2|0)==0){m=31;break a}f=c[(c[c[l>>2]>>2]|0)+16>>2]|0;c[p>>2]=f;if((d[f>>0]|0)!=154){m=31;break a}if((c[(c[p>>2]|0)+28>>2]|0)!=(c[(c[j>>2]|0)+24>>2]|0)){m=31;break a}if((b[(c[p>>2]|0)+32>>1]|0)!=(c[(c[j>>2]|0)+28>>2]|0)){m=31;break a}}}}while(0);c[g>>2]=(c[g>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+48}c[(c[j>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+4>>2]|0)+4>>2];c[g>>2]=0}c[(c[j>>2]|0)+4>>2]=c[c[j>>2]>>2];c[g>>2]=0;f=(c[j>>2]|0)+14|0;a[f>>0]=(d[f>>0]|0)+2}if((m|0)==31){c[(c[j>>2]|0)+20>>2]=(c[g>>2]|0)+1;c[k>>2]=c[l>>2];s=c[k>>2]|0;i=h;return s|0}else if((m|0)==35){c[k>>2]=0;s=c[k>>2]|0;i=h;return s|0}return 0}function Uu(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=i;i=i+80|0;j=l+72|0;v=l+68|0;n=l+64|0;w=l+60|0;m=l+56|0;u=l+78|0;t=l+76|0;k=l+52|0;r=l+48|0;o=l+44|0;q=l+40|0;h=l+12|0;s=l+8|0;p=l+4|0;g=l;c[v>>2]=a;c[n>>2]=d;c[w>>2]=f;c[m>>2]=c[(c[n>>2]|0)+28>>2];b[u>>1]=b[(c[n>>2]|0)+24>>1]|0;b[t>>1]=b[(c[n>>2]|0)+26>>1]|0;c[o>>2]=c[(c[w>>2]|0)+4>>2];c[q>>2]=c[(c[m>>2]|0)+4>>2];if((e[u>>1]|0)==0?(c[(c[n>>2]|0)+36>>2]&48|0)==0:0){c[j>>2]=0;w=c[j>>2]|0;i=l;return w|0}lc(h,0,0,1e9);c[h>>2]=c[v>>2];Km(h,23784,2);c[k>>2]=0;while(1){f=c[k>>2]|0;if((c[k>>2]|0)>=(e[u>>1]|0)){break}if((f|0)==(e[(c[m>>2]|0)+50>>1]|0)){f=9896}else{f=c[(c[o>>2]|0)+((b[(c[q>>2]|0)+(c[k>>2]<<1)>>1]|0)*24|0)>>2]|0}c[s>>2]=f;f=c[k>>2]|0;if((c[k>>2]|0)>=(e[t>>1]|0)){Vu(h,f,c[s>>2]|0,23792)}else{if((f|0)!=0){Km(h,23800,5)}Km(h,23808,4);as(h,c[s>>2]|0);Km(h,23816,1)}c[k>>2]=(c[k>>2]|0)+1}c[r>>2]=f;if((c[(c[n>>2]|0)+36>>2]&32|0)!=0){if((c[r>>2]|0)==(e[(c[m>>2]|0)+50>>1]|0)){s=9896}else{s=c[(c[o>>2]|0)+((b[(c[q>>2]|0)+(c[r>>2]<<1)>>1]|0)*24|0)>>2]|0}c[p>>2]=s;w=c[k>>2]|0;c[k>>2]=w+1;Vu(h,w,c[p>>2]|0,23824)}if((c[(c[n>>2]|0)+36>>2]&16|0)!=0){if((c[r>>2]|0)==(e[(c[m>>2]|0)+50>>1]|0)){m=9896}else{m=c[(c[o>>2]|0)+((b[(c[q>>2]|0)+(c[r>>2]<<1)>>1]|0)*24|0)>>2]|0}c[g>>2]=m;Vu(h,c[k>>2]|0,c[g>>2]|0,23832)}Km(h,23816,1);c[j>>2]=nc(h)|0;w=c[j>>2]|0;i=l;return w|0}function Vu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;k=f+8|0;j=f+4|0;h=f;c[g>>2]=a;c[k>>2]=b;c[j>>2]=d;c[h>>2]=e;if((c[k>>2]|0)!=0){Km(c[g>>2]|0,23800,5)}as(c[g>>2]|0,c[j>>2]|0);Km(c[g>>2]|0,c[h>>2]|0,1);Km(c[g>>2]|0,18920,1);i=f;return}function Wu(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h+16|0;l=h+12|0;k=h+8|0;n=h;m=h+20|0;c[l>>2]=d;c[k>>2]=e;d=n;c[d>>2]=f;c[d+4>>2]=g;if((c[(c[l>>2]|0)+8>>2]|0)!=(c[(c[k>>2]|0)+40>>2]|0)){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}if((b[(c[l>>2]|0)+18>>1]&2|0)==0){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}e=(c[l>>2]|0)+32|0;d=n;if((c[e>>2]&c[d>>2]|0)!=0?1:(c[e+4>>2]&c[d+4>>2]|0)!=0){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}if((c[(c[l>>2]|0)+12>>2]|0)<0){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}a[m>>0]=a[(c[(c[(c[k>>2]|0)+16>>2]|0)+4>>2]|0)+((c[(c[l>>2]|0)+12>>2]|0)*24|0)+21>>0]|0;if((Ws(c[c[l>>2]>>2]|0,a[m>>0]|0)|0)!=0){c[j>>2]=1;d=c[j>>2]|0;i=h;return d|0}else{c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}return 0}function Xu(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;m=g+12|0;k=g+8|0;l=g+4|0;j=g;c[m>>2]=a;c[k>>2]=d;c[l>>2]=f;if((e[(c[k>>2]|0)+42>>1]|0|0)>=(c[l>>2]|0)){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}c[l>>2]=(c[l>>2]|0)+7&-8;c[j>>2]=Le(c[m>>2]|0,c[l>>2]<<2)|0;if((c[j>>2]|0)==0){c[h>>2]=7;a=c[h>>2]|0;i=g;return a|0}dE(c[j>>2]|0,c[(c[k>>2]|0)+44>>2]|0,(e[(c[k>>2]|0)+42>>1]|0)<<2|0)|0;if((c[(c[k>>2]|0)+44>>2]|0)!=((c[k>>2]|0)+52|0)){Wb(c[m>>2]|0,c[(c[k>>2]|0)+44>>2]|0)}c[(c[k>>2]|0)+44>>2]=c[j>>2];b[(c[k>>2]|0)+42>>1]=c[l>>2];c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}function Yu(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;o=g+20|0;k=g+24|0;n=g+16|0;m=g+12|0;h=g+8|0;l=g+4|0;j=g;c[o>>2]=a;b[k>>1]=d;c[n>>2]=e;c[m>>2]=f;c[l>>2]=56+((b[k>>1]<<2)+7&-8)+(((b[k>>1]|0)+1<<1)+(b[k>>1]<<1)+(b[k>>1]|0)+7&-8);c[h>>2]=ne(c[o>>2]|0,(c[l>>2]|0)+(c[n>>2]|0)|0)|0;if((c[h>>2]|0)==0){o=c[h>>2]|0;i=g;return o|0}c[j>>2]=(c[h>>2]|0)+56;c[(c[h>>2]|0)+32>>2]=c[j>>2];c[j>>2]=(c[j>>2]|0)+((b[k>>1]<<2)+7&-8);c[(c[h>>2]|0)+8>>2]=c[j>>2];c[j>>2]=(c[j>>2]|0)+((b[k>>1]|0)+1<<1);c[(c[h>>2]|0)+4>>2]=c[j>>2];c[j>>2]=(c[j>>2]|0)+(b[k>>1]<<1);c[(c[h>>2]|0)+28>>2]=c[j>>2];b[(c[h>>2]|0)+52>>1]=b[k>>1]|0;b[(c[h>>2]|0)+50>>1]=(b[k>>1]|0)-1;c[c[m>>2]>>2]=(c[h>>2]|0)+(c[l>>2]|0);o=c[h>>2]|0;i=g;return o|0}function Zu(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;f=h+8|0;j=h+20|0;e=h+16|0;g=h;c[j>>2]=a;c[e>>2]=b;a=g;c[a>>2]=0;c[a+4>>2]=0;if((c[e>>2]|0)==0){b=f;c[b>>2]=0;c[b+4>>2]=0;b=f;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=h;return a|0}a=c[j>>2]|0;b=c[e>>2]|0;if((d[c[e>>2]>>0]|0|0)==154){a=Hu(a,c[b+28>>2]|0)|0;j=g;c[j>>2]=a;c[j+4>>2]=D;j=g;a=c[j+4>>2]|0;b=f;c[b>>2]=c[j>>2];c[b+4>>2]=a;b=f;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=h;return a|0}l=Zu(a,c[b+16>>2]|0)|0;k=g;c[k>>2]=l;c[k+4>>2]=D;k=Zu(c[j>>2]|0,c[(c[e>>2]|0)+12>>2]|0)|0;l=g;a=c[l+4>>2]|D;b=g;c[b>>2]=c[l>>2]|k;c[b+4>>2]=a;b=c[j>>2]|0;j=(c[e>>2]|0)+20|0;if((c[(c[e>>2]|0)+4>>2]&2048|0)!=0){a=_u(b,c[j>>2]|0)|0;b=g;k=c[b+4>>2]|D;l=g;c[l>>2]=c[b>>2]|a;c[l+4>>2]=k}else{a=Gu(b,c[j>>2]|0)|0;b=g;k=c[b+4>>2]|D;l=g;c[l>>2]=c[b>>2]|a;c[l+4>>2]=k}a=g;l=c[a+4>>2]|0;k=f;c[k>>2]=c[a>>2];c[k+4>>2]=l;k=f;l=k;l=c[l>>2]|0;k=k+4|0;k=c[k>>2]|0;D=k;i=h;return l|0}function _u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;j=e+20|0;g=e+16|0;d=e;h=e+12|0;f=e+8|0;c[j>>2]=a;c[g>>2]=b;a=d;c[a>>2]=0;c[a+4>>2]=0;while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[(c[g>>2]|0)+32>>2];k=Gu(c[j>>2]|0,c[c[g>>2]>>2]|0)|0;l=d;b=c[l+4>>2]|D;a=d;c[a>>2]=c[l>>2]|k;c[a+4>>2]=b;a=Gu(c[j>>2]|0,c[(c[g>>2]|0)+40>>2]|0)|0;b=d;k=c[b+4>>2]|D;l=d;c[l>>2]=c[b>>2]|a;c[l+4>>2]=k;l=Gu(c[j>>2]|0,c[(c[g>>2]|0)+48>>2]|0)|0;k=d;a=c[k+4>>2]|D;b=d;c[b>>2]=c[k>>2]|l;c[b+4>>2]=a;b=Zu(c[j>>2]|0,c[(c[g>>2]|0)+36>>2]|0)|0;a=d;l=c[a+4>>2]|D;k=d;c[k>>2]=c[a>>2]|b;c[k+4>>2]=l;k=Zu(c[j>>2]|0,c[(c[g>>2]|0)+44>>2]|0)|0;l=d;b=c[l+4>>2]|D;a=d;c[a>>2]=c[l>>2]|k;c[a+4>>2]=b;a:do{if((c[h>>2]|0)!=0){c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[h>>2]>>2]|0)){break a}k=_u(c[j>>2]|0,c[(c[h>>2]|0)+8+((c[f>>2]|0)*72|0)+20>>2]|0)|0;l=d;b=c[l+4>>2]|D;a=d;c[a>>2]=c[l>>2]|k;c[a+4>>2]=b;a=Zu(c[j>>2]|0,c[(c[h>>2]|0)+8+((c[f>>2]|0)*72|0)+44>>2]|0)|0;b=d;k=c[b+4>>2]|D;l=d;c[l>>2]=c[b>>2]|a;c[l+4>>2]=k;c[f>>2]=(c[f>>2]|0)+1}}}while(0);c[g>>2]=c[(c[g>>2]|0)+52>>2]}l=d;D=c[l+4>>2]|0;i=e;return c[l>>2]|0}function $u(a,c){a=a|0;c=c|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+4|0;g=e+2|0;h=e;b[g>>1]=a;b[h>>1]=c;if((b[g>>1]|0)>=(b[h>>1]|0)){c=b[g>>1]|0;if((b[g>>1]|0)>((b[h>>1]|0)+49|0)){b[f>>1]=c;a=b[f>>1]|0;i=e;return a|0}a=b[g>>1]|0;if((c<<16>>16|0)>((b[h>>1]|0)+31|0)){b[f>>1]=a+1;a=b[f>>1]|0;i=e;return a|0}else{b[f>>1]=a+(d[23912+((b[g>>1]|0)-(b[h>>1]|0))>>0]|0);a=b[f>>1]|0;i=e;return a|0}}else{c=b[h>>1]|0;if((b[h>>1]|0)>((b[g>>1]|0)+49|0)){b[f>>1]=c;a=b[f>>1]|0;i=e;return a|0}a=b[h>>1]|0;if((c<<16>>16|0)>((b[g>>1]|0)+31|0)){b[f>>1]=a+1;a=b[f>>1]|0;i=e;return a|0}else{b[f>>1]=a+(d[23912+((b[h>>1]|0)-(b[g>>1]|0))>>0]|0);a=b[f>>1]|0;i=e;return a|0}}return 0}function av(f,g,h,j,k,l,m){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;s=i;i=i+144|0;o=s+141|0;J=s+120|0;F=s+116|0;X=s+112|0;H=s+132|0;Z=s+130|0;Y=s+108|0;P=s+104|0;M=s+140|0;t=s+139|0;B=s+138|0;u=s+137|0;Q=s+136|0;E=s+135|0;R=s+128|0;z=s+126|0;N=s+124|0;O=s+100|0;p=s+96|0;y=s+92|0;I=s+88|0;A=s+84|0;x=s+80|0;V=s+76|0;G=s+72|0;K=s+68|0;w=s+64|0;L=s+60|0;r=s+40|0;v=s+32|0;S=s+24|0;W=s+16|0;U=s+56|0;T=s+52|0;C=s+134|0;_=s+48|0;$=s+8|0;q=s;c[J>>2]=f;c[F>>2]=g;c[X>>2]=h;b[H>>1]=j;b[Z>>1]=k;c[Y>>2]=l;c[P>>2]=m;c[x>>2]=0;c[L>>2]=c[c[c[J>>2]>>2]>>2];f=r;c[f>>2]=0;c[f+4>>2]=0;if((e[Z>>1]|0)!=0?(b[(c[L>>2]|0)+60>>1]&128|0)!=0:0){a[o>>0]=0;f=a[o>>0]|0;i=s;return f|0}b[N>>1]=c[c[F>>2]>>2];if((e[N>>1]|0)>63){a[o>>0]=0;f=a[o>>0]|0;i=s;return f|0}a[u>>0]=1;g=$D(1,0,e[N>>1]|0)|0;g=ZD(g|0,D|0,1,0)|0;f=v;c[f>>2]=g;c[f+4>>2]=D;f=S;c[f>>2]=0;c[f+4>>2]=0;f=W;c[f>>2]=0;c[f+4>>2]=0;c[O>>2]=0;while(1){if((d[u>>0]|0)==0){break}g=r;j=c[g+4>>2]|0;f=v;h=c[f+4>>2]|0;if(!(j>>>0>>0|((j|0)==(h|0)?(c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0:0))){break}if((c[O>>2]|0)>(e[Z>>1]|0)){break}if((c[O>>2]|0)>0){h=(c[x>>2]|0)+8|0;j=W;g=c[j+4>>2]|c[h+4>>2];f=W;c[f>>2]=c[j>>2]|c[h>>2];c[f+4>>2]=g}if((c[O>>2]|0)<(e[Z>>1]|0)){m=c[(c[(c[X>>2]|0)+24>>2]|0)+(c[O>>2]<<2)>>2]|0}else{m=c[Y>>2]|0}c[x>>2]=m;m=c[x>>2]|0;if((c[(c[x>>2]|0)+36>>2]&1024|0)!=0){n=16;break}c[I>>2]=c[(c[(c[J>>2]|0)+4>>2]|0)+8+((d[m+16>>0]|0)*72|0)+40>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>=(e[N>>1]|0)){break}g=$D(1,0,c[p>>2]|0)|0;f=r;do{if(((!((g&c[f>>2]|0)!=0?1:(D&c[f+4>>2]|0)!=0)?(c[G>>2]=Sp(c[(c[(c[F>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0,(d[c[G>>2]>>0]|0)==154):0)?(c[(c[G>>2]|0)+28>>2]|0)==(c[I>>2]|0):0)?(f=W,c[V>>2]=Ru((c[J>>2]|0)+328|0,c[I>>2]|0,b[(c[G>>2]|0)+32>>1]|0,~c[f>>2],~c[f+4>>2],130,0)|0,(c[V>>2]|0)!=0):0){if((b[(c[V>>2]|0)+18>>1]&2|0)!=0?(b[(c[G>>2]|0)+32>>1]|0)>=0:0){c[K>>2]=Mp(c[c[J>>2]>>2]|0,c[(c[(c[F>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;if((c[K>>2]|0)==0){c[K>>2]=c[(c[L>>2]|0)+8>>2]}c[U>>2]=c[c[K>>2]>>2];c[K>>2]=Mp(c[c[J>>2]>>2]|0,c[c[V>>2]>>2]|0)|0;if((c[K>>2]|0)==0){c[K>>2]=c[(c[L>>2]|0)+8>>2]}c[T>>2]=c[c[K>>2]>>2];if((vc(c[U>>2]|0,c[T>>2]|0)|0)!=0){break}}h=$D(1,0,c[p>>2]|0)|0;j=r;g=c[j+4>>2]|D;f=r;c[f>>2]=c[j>>2]|h;c[f+4>>2]=g}}while(0);c[p>>2]=(c[p>>2]|0)+1}if((c[(c[x>>2]|0)+36>>2]&4096|0)==0){if((c[(c[x>>2]|0)+36>>2]&256|0)!=0){c[w>>2]=0;b[R>>1]=0;b[z>>1]=1}else{f=c[(c[x>>2]|0)+28>>2]|0;c[w>>2]=f;if((f|0)==0){n=38;break}if(((d[(c[w>>2]|0)+55>>0]|0)>>>2&1|0)!=0){n=38;break}b[R>>1]=b[(c[w>>2]|0)+50>>1]|0;b[z>>1]=b[(c[w>>2]|0)+52>>1]|0;a[u>>0]=(d[(c[w>>2]|0)+54>>0]|0)!=0}a[M>>0]=0;a[t>>0]=0;a[Q>>0]=0;c[y>>2]=0;while(1){if((c[y>>2]|0)>=(e[z>>1]|0)){break}if(((c[y>>2]|0)<(e[(c[x>>2]|0)+24>>1]|0)?(e[(c[x>>2]|0)+26>>1]|0)==0:0)?(f=e[(c[(c[(c[x>>2]|0)+44>>2]|0)+(c[y>>2]<<2)>>2]|0)+18>>1]|0,c[p>>2]=f,(f&130|0)!=0):0){if((c[p>>2]&128|0)!=0){a[u>>0]=0}}else{if((c[w>>2]|0)!=0){c[A>>2]=b[(c[(c[w>>2]|0)+4>>2]|0)+(c[y>>2]<<1)>>1]|0;a[B>>0]=a[(c[(c[w>>2]|0)+28>>2]|0)+(c[y>>2]|0)>>0]|0;if((c[A>>2]|0)==(b[(c[(c[w>>2]|0)+12>>2]|0)+36>>1]|0)){c[A>>2]=-1}}else{c[A>>2]=-1;a[B>>0]=0}do{if((d[u>>0]|0)!=0?(c[A>>2]|0)>=0:0){if((c[y>>2]|0)<(e[(c[x>>2]|0)+24>>1]|0)){break}if((d[(c[(c[(c[w>>2]|0)+12>>2]|0)+4>>2]|0)+((c[A>>2]|0)*24|0)+20>>0]|0)!=0){break}a[u>>0]=0}}while(0);a[C>>0]=1;a[E>>0]=0;c[p>>2]=0;a:while(1){if((d[C>>0]|0)==0){break}if((c[p>>2]|0)>=(e[N>>1]|0)){break}g=$D(1,0,c[p>>2]|0)|0;f=r;do{if(!((g&c[f>>2]|0)!=0?1:(D&c[f+4>>2]|0)!=0)){c[G>>2]=Sp(c[(c[(c[F>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;if((b[H>>1]&768|0)==0){a[C>>0]=0}if((d[c[G>>2]>>0]|0)!=154){break}if((c[(c[G>>2]|0)+28>>2]|0)!=(c[I>>2]|0)){break}if((b[(c[G>>2]|0)+32>>1]|0)!=(c[A>>2]|0)){break}if((c[A>>2]|0)<0){n=69;break a}c[K>>2]=Mp(c[c[J>>2]>>2]|0,c[(c[(c[F>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;if((c[K>>2]|0)==0){c[K>>2]=c[(c[L>>2]|0)+8>>2]}if((vc(c[c[K>>2]>>2]|0,c[(c[(c[w>>2]|0)+32>>2]|0)+(c[y>>2]<<2)>>2]|0)|0)==0){n=69;break a}}}while(0);c[p>>2]=(c[p>>2]|0)+1}if((n|0)==69){n=0;a[E>>0]=1}do{if((d[E>>0]|0)!=0){if((b[(c[J>>2]|0)+34>>1]&256|0)!=0){break}if((a[M>>0]|0)!=0){if((d[t>>0]^d[B>>0]|0)==(d[(c[(c[F>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)+12>>0]|0)){break}a[E>>0]=0;break}a[t>>0]=d[B>>0]^d[(c[(c[F>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)+12>>0];if((a[t>>0]|0)!=0){h=$D(1,0,c[O>>2]|0)|0;f=c[P>>2]|0;j=f;g=c[j+4>>2]|D;c[f>>2]=c[j>>2]|h;c[f+4>>2]=g}a[M>>0]=1}}while(0);if((a[E>>0]|0)==0){n=83;break}if((c[A>>2]|0)<0){a[Q>>0]=1}h=$D(1,0,c[p>>2]|0)|0;j=r;g=c[j+4>>2]|D;f=r;c[f>>2]=c[j>>2]|h;c[f+4>>2]=g}c[y>>2]=(c[y>>2]|0)+1}do{if((n|0)==83){n=0;if((c[y>>2]|0)!=0?(c[y>>2]|0)>=(e[R>>1]|0):0){break}a[u>>0]=0}}while(0);if((a[Q>>0]|0)!=0){a[u>>0]=1}}b:do{if((a[u>>0]|0)!=0){h=(c[x>>2]|0)+8|0;j=S;g=c[j+4>>2]|c[h+4>>2];f=S;c[f>>2]=c[j>>2]|c[h>>2];c[f+4>>2]=g;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(e[N>>1]|0)){break b}g=$D(1,0,c[p>>2]|0)|0;f=r;do{if(!((g&c[f>>2]|0)!=0?1:(D&c[f+4>>2]|0)!=0)){c[_>>2]=c[(c[(c[F>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2];g=Zu((c[J>>2]|0)+68|0,c[_>>2]|0)|0;f=$;c[f>>2]=g;c[f+4>>2]=D;f=$;if((c[f>>2]|0)==0&(c[f+4>>2]|0)==0?(Es(c[_>>2]|0)|0)==0:0){break}g=$;f=S;if((c[g>>2]&~c[f>>2]|0)==0?(c[g+4>>2]&~c[f+4>>2]|0)==0:0){h=$D(1,0,c[p>>2]|0)|0;j=r;g=c[j+4>>2]|D;f=r;c[f>>2]=c[j>>2]|h;c[f+4>>2]=g}}}while(0);c[p>>2]=(c[p>>2]|0)+1}}}while(0);c[O>>2]=(c[O>>2]|0)+1}if((n|0)==16){if((a[m+29>>0]|0)!=0){h=v;g=c[h+4>>2]|0;f=r;c[f>>2]=c[h>>2];c[f+4>>2]=g}}else if((n|0)==38){a[o>>0]=0;f=a[o>>0]|0;i=s;return f|0}g=r;f=v;if((c[g>>2]|0)==(c[f>>2]|0)?(c[g+4>>2]|0)==(c[f+4>>2]|0):0){a[o>>0]=b[N>>1];f=a[o>>0]|0;i=s;return f|0}if((a[u>>0]|0)!=0){a[o>>0]=-1;f=a[o>>0]|0;i=s;return f|0}c[p>>2]=(e[N>>1]|0)-1;while(1){if((c[p>>2]|0)<=0){n=107;break}g=$D(1,0,c[p>>2]|0)|0;g=ZD(g|0,D|0,1,0)|0;h=q;c[h>>2]=g;c[h+4>>2]=D;h=r;g=q;f=q;t=c[p>>2]|0;if((c[h>>2]&c[g>>2]|0)==(c[f>>2]|0)?(c[h+4>>2]&c[g+4>>2]|0)==(c[f+4>>2]|0):0){n=105;break}c[p>>2]=t+ -1}if((n|0)==105){a[o>>0]=t;f=a[o>>0]|0;i=s;return f|0}else if((n|0)==107){a[o>>0]=0;f=a[o>>0]|0;i=s;return f|0}return 0}function bv(a){a=a|0;var c=0,d=0,e=0;c=i;i=i+16|0;e=c+2|0;d=c;b[e>>1]=a;a=b[e>>1]|0;b[d>>1]=Np(a,((a|0)<0)<<31>>31)|0;if((b[d>>1]|0)<=33){e=0;e=e&65535;i=c;return e|0}e=(b[d>>1]|0)-33|0;e=e&65535;i=c;return e|0}function cv(f,g,j){f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;y=i;i=i+112|0;H=y+8|0;m=y+96|0;r=y+92|0;k=y;J=y+88|0;z=y+84|0;E=y+80|0;I=y+76|0;A=y+72|0;n=y+68|0;o=y+64|0;x=y+60|0;v=y+56|0;C=y+52|0;t=y+48|0;D=y+44|0;w=y+40|0;s=y+36|0;u=y+32|0;B=y+28|0;G=y+24|0;F=y+20|0;q=y+16|0;p=y+12|0;c[r>>2]=f;f=k;c[f>>2]=g;c[f+4>>2]=j;c[B>>2]=0;c[G>>2]=0;c[p>>2]=0;c[J>>2]=c[c[r>>2]>>2];c[z>>2]=c[c[J>>2]>>2];c[n>>2]=c[c[z>>2]>>2];c[E>>2]=c[(c[r>>2]|0)+4>>2];c[q>>2]=c[(c[r>>2]|0)+12>>2];c[I>>2]=(c[(c[J>>2]|0)+4>>2]|0)+8+((d[(c[q>>2]|0)+16>>0]|0)*72|0);c[A>>2]=c[(c[I>>2]|0)+16>>2];c[o>>2]=uv(c[z>>2]|0,c[E>>2]|0,c[I>>2]|0,c[(c[r>>2]|0)+8>>2]|0)|0;if((c[o>>2]|0)==0){c[m>>2]=7;J=c[m>>2]|0;i=y;return J|0}J=c[q>>2]|0;c[J>>2]=0;c[J+4>>2]=0;b[(c[q>>2]|0)+18>>1]=0;c[(c[q>>2]|0)+36>>2]=1024;b[(c[q>>2]|0)+40>>1]=0;a[(c[q>>2]|0)+28>>0]=0;c[v>>2]=c[(c[o>>2]|0)+16>>2];c[u>>2]=c[c[o>>2]>>2];if((Xu(c[n>>2]|0,c[q>>2]|0,c[u>>2]|0)|0)!=0){Wb(c[n>>2]|0,c[o>>2]|0);c[m>>2]=7;J=c[m>>2]|0;i=y;return J|0}c[F>>2]=0;a:while(1){if((c[F>>2]|0)>3){break}if(((c[B>>2]|0)==0?(c[F>>2]&1|0)!=0:0)?(c[F>>2]=(c[F>>2]|0)+1,(c[F>>2]|0)>3):0){break}if((c[G>>2]|0)==0?(c[F>>2]|0)>1:0){break}c[x>>2]=c[(c[o>>2]|0)+4>>2];c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[c[o>>2]>>2]|0)){break}c[D>>2]=c[(c[x>>2]|0)+8>>2];c[C>>2]=(c[(c[E>>2]|0)+20>>2]|0)+((c[D>>2]|0)*48|0);j=c[F>>2]|0;do{if((j|0)==0){a[(c[x>>2]|0)+5>>0]=0;if((b[(c[C>>2]|0)+18>>1]&1|0)!=0){c[B>>2]=1}J=(c[C>>2]|0)+32|0;if((c[J>>2]|0)!=0|(c[J+4>>2]|0)!=0){c[G>>2]=1;break}if((b[(c[C>>2]|0)+18>>1]&1|0)==0){a[(c[x>>2]|0)+5>>0]=1}}else if((j|0)==2){a[(c[x>>2]|0)+5>>0]=(b[(c[C>>2]|0)+18>>1]&1|0)==0}else if((j|0)==1){J=(c[C>>2]|0)+32|0;a[(c[x>>2]|0)+5>>0]=(c[J>>2]|0)==0&(c[J+4>>2]|0)==0&1}else{a[(c[x>>2]|0)+5>>0]=1}}while(0);c[t>>2]=(c[t>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+12}_D(c[v>>2]|0,0,c[c[o>>2]>>2]<<3|0)|0;if((c[(c[o>>2]|0)+28>>2]|0)!=0){gc(c[(c[o>>2]|0)+24>>2]|0)}c[(c[o>>2]|0)+24>>2]=0;c[(c[o>>2]|0)+20>>2]=0;c[(c[o>>2]|0)+28>>2]=0;c[(c[o>>2]|0)+32>>2]=0;h[(c[o>>2]|0)+40>>3]=5.0e+98;J=(c[o>>2]|0)+48|0;c[J>>2]=25;c[J+4>>2]=0;c[p>>2]=vv(c[z>>2]|0,c[A>>2]|0,c[o>>2]|0)|0;if((c[p>>2]|0)!=0){break}c[x>>2]=c[(c[o>>2]|0)+4>>2];f=k;I=c[f+4>>2]|0;J=c[q>>2]|0;c[J>>2]=c[f>>2];c[J+4>>2]=I;c[s>>2]=-1;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[u>>2]|0)){break}c[(c[(c[q>>2]|0)+44>>2]|0)+(c[t>>2]<<2)>>2]=0;c[t>>2]=(c[t>>2]|0)+1}b[(c[q>>2]|0)+30>>1]=0;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[u>>2]|0)){break}J=(c[(c[v>>2]|0)+(c[t>>2]<<3)>>2]|0)-1|0;c[w>>2]=J;if((J|0)>=0){c[D>>2]=c[(c[x>>2]|0)+8>>2];if((c[w>>2]|0)>=(c[u>>2]|0)){l=38;break a}if((c[D>>2]|0)<0){l=38;break a}if((c[D>>2]|0)>=(c[(c[E>>2]|0)+12>>2]|0)){l=38;break a}if((c[(c[(c[q>>2]|0)+44>>2]|0)+(c[w>>2]<<2)>>2]|0)!=0){l=38;break a}c[C>>2]=(c[(c[E>>2]|0)+20>>2]|0)+((c[D>>2]|0)*48|0);f=(c[C>>2]|0)+32|0;J=c[q>>2]|0;g=J;I=c[g+4>>2]|c[f+4>>2];c[J>>2]=c[g>>2]|c[f>>2];c[J+4>>2]=I;c[(c[(c[q>>2]|0)+44>>2]|0)+(c[w>>2]<<2)>>2]=c[C>>2];if((c[w>>2]|0)>(c[s>>2]|0)){c[s>>2]=c[w>>2]}if((c[w>>2]|0)<16?(d[(c[v>>2]|0)+(c[t>>2]<<3)+4>>0]|0)!=0:0){J=(c[q>>2]|0)+30|0;b[J>>1]=e[J>>1]|1<>2]}if((b[(c[C>>2]|0)+18>>1]&1|0)!=0){if((d[(c[v>>2]|0)+(c[t>>2]<<3)+4>>0]|0)==0){break}c[(c[o>>2]|0)+32>>2]=0}}c[t>>2]=(c[t>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+12}if((c[t>>2]|0)>=(c[u>>2]|0)){b[(c[q>>2]|0)+40>>1]=(c[s>>2]|0)+1;c[(c[q>>2]|0)+24>>2]=c[(c[o>>2]|0)+20>>2];a[(c[q>>2]|0)+28>>0]=c[(c[o>>2]|0)+28>>2];c[(c[o>>2]|0)+28>>2]=0;c[(c[q>>2]|0)+32>>2]=c[(c[o>>2]|0)+24>>2];if((c[(c[o>>2]|0)+32>>2]|0)!=0){j=c[(c[o>>2]|0)+8>>2]|0}else{j=0}a[(c[q>>2]|0)+29>>0]=j;b[(c[q>>2]|0)+18>>1]=0;J=wv(+h[(c[o>>2]|0)+40>>3])|0;b[(c[q>>2]|0)+20>>1]=J;J=(c[o>>2]|0)+48|0;J=Np(c[J>>2]|0,c[J+4>>2]|0)|0;b[(c[q>>2]|0)+22>>1]=J;hv(c[r>>2]|0,c[q>>2]|0)|0;if((a[(c[q>>2]|0)+28>>0]|0)!=0){gc(c[(c[q>>2]|0)+32>>2]|0);a[(c[q>>2]|0)+28>>0]=0}}c[F>>2]=(c[F>>2]|0)+1}if((l|0)==38){c[p>>2]=1;J=c[z>>2]|0;c[H>>2]=c[c[A>>2]>>2];Ne(J,23944,H)}if((c[(c[o>>2]|0)+28>>2]|0)!=0){gc(c[(c[o>>2]|0)+24>>2]|0)}Wb(c[n>>2]|0,c[o>>2]|0);c[m>>2]=c[p>>2];J=c[m>>2]|0;i=y;return J|0}function dv(e,f,g){e=e|0;f=f|0;g=g|0;var h=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,E=0;j=i;i=i+144|0;m=j+128|0;l=j+8|0;q=j+124|0;u=j+120|0;z=j+64|0;B=j+140|0;A=j+136|0;E=j+56|0;n=j+52|0;y=j+48|0;h=j+44|0;r=j+40|0;o=j+36|0;s=j+134|0;w=j+132|0;p=j+32|0;t=j+28|0;C=j+24|0;v=j+20|0;x=j+16|0;k=j;c[m>>2]=e;e=l;c[e>>2]=f;c[e+4>>2]=g;b[A>>1]=-1;c[h>>2]=0;c[r>>2]=1;c[y>>2]=c[(c[m>>2]|0)+12>>2];c[q>>2]=c[c[m>>2]>>2];c[E>>2]=c[(c[q>>2]|0)+4>>2];c[n>>2]=(c[E>>2]|0)+8+((d[(c[y>>2]|0)+16>>0]|0)*72|0);c[t>>2]=c[(c[n>>2]|0)+16>>2];c[p>>2]=c[(c[m>>2]|0)+4>>2];do{if((c[(c[n>>2]|0)+68>>2]|0)!=0){c[u>>2]=c[(c[n>>2]|0)+68>>2]}else{if((a[(c[t>>2]|0)+44>>0]&32|0)!=0){c[u>>2]=c[(c[t>>2]|0)+8>>2];break}f=z+0|0;g=f+56|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));b[z+50>>1]=1;c[z+4>>2]=A;c[z+8>>2]=B;a[z+54>>0]=5;c[z+12>>2]=c[t>>2];b[z+48>>1]=b[(c[t>>2]|0)+42>>1]|0;b[B>>1]=b[(c[t>>2]|0)+28>>1]|0;b[B+2>>1]=0;c[C>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+8>>2];if((a[(c[n>>2]|0)+37>>0]&1|0)==0){c[z+20>>2]=c[C>>2]}c[u>>2]=z}}while(0);b[s>>1]=b[(c[t>>2]|0)+28>>1]|0;b[w>>1]=bv(b[s>>1]|0)|0;a:do{if((((((((c[(c[m>>2]|0)+16>>2]|0)==0?(c[(c[c[c[q>>2]>>2]>>2]|0)+24>>2]&1048576|0)!=0:0)?(c[(c[n>>2]|0)+68>>2]|0)==0:0)?((d[(c[n>>2]|0)+37>>0]|0)>>>2&1|0)==0:0)?(a[(c[n>>2]|0)+37>>0]&1|0)==0:0)?(a[(c[t>>2]|0)+44>>0]&32|0)==0:0)?((d[(c[n>>2]|0)+37>>0]|0)>>>1&1|0)==0:0)?((d[(c[n>>2]|0)+37>>0]|0)>>>3&1|0)==0:0){c[x>>2]=(c[(c[p>>2]|0)+20>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*48|0);c[v>>2]=c[(c[p>>2]|0)+20>>2];while(1){if((c[h>>2]|0)!=0){break a}if(!((c[v>>2]|0)>>>0<(c[x>>2]|0)>>>0)){break a}e=(c[v>>2]|0)+32|0;E=(c[y>>2]|0)+8|0;if(!((c[e>>2]&c[E>>2]|0)!=0?1:(c[e+4>>2]&c[E+4>>2]|0)!=0)?(Wu(c[v>>2]|0,c[n>>2]|0,0,0)|0)!=0:0){b[(c[y>>2]|0)+24>>1]=1;b[(c[y>>2]|0)+26>>1]=0;c[(c[y>>2]|0)+28>>2]=0;b[(c[y>>2]|0)+40>>1]=1;c[c[(c[y>>2]|0)+44>>2]>>2]=c[v>>2];b[(c[y>>2]|0)+18>>1]=(b[w>>1]|0)+(b[s>>1]|0)+28;b[(c[y>>2]|0)+22>>1]=43;g=$u(b[w>>1]|0,b[(c[y>>2]|0)+22>>1]|0)|0;b[(c[y>>2]|0)+20>>1]=g;c[(c[y>>2]|0)+36>>2]=16384;g=l;f=(c[v>>2]|0)+32|0;e=c[g+4>>2]|c[f+4>>2];E=c[y>>2]|0;c[E>>2]=c[g>>2]|c[f>>2];c[E+4>>2]=e;c[h>>2]=hv(c[m>>2]|0,c[y>>2]|0)|0}c[v>>2]=(c[v>>2]|0)+48}}}while(0);b:while(1){if((c[h>>2]|0)!=0){k=45;break}if((c[u>>2]|0)==0){k=45;break}if(!((c[(c[u>>2]|0)+36>>2]|0)!=0?(mv(d[(c[y>>2]|0)+16>>0]|0,c[p>>2]|0,c[(c[u>>2]|0)+36>>2]|0)|0)==0:0)){b[s>>1]=b[c[(c[u>>2]|0)+8>>2]>>1]|0;b[(c[y>>2]|0)+24>>1]=0;b[(c[y>>2]|0)+26>>1]=0;b[(c[y>>2]|0)+40>>1]=0;a[(c[y>>2]|0)+17>>0]=0;b[(c[y>>2]|0)+18>>1]=0;f=l;e=c[f+4>>2]|0;E=c[y>>2]|0;c[E>>2]=c[f>>2];c[E+4>>2]=e;b[(c[y>>2]|0)+22>>1]=b[s>>1]|0;c[(c[y>>2]|0)+28>>2]=c[u>>2];c[o>>2]=nv(c[m>>2]|0,c[u>>2]|0,c[(c[n>>2]|0)+40>>2]|0)|0;do{if((c[(c[u>>2]|0)+44>>2]|0)<=0){c[(c[y>>2]|0)+36>>2]=256;a[(c[y>>2]|0)+17>>0]=(c[o>>2]|0)!=0?c[r>>2]|0:0;b[(c[y>>2]|0)+20>>1]=(b[s>>1]|0)+16;ov(c[p>>2]|0,c[y>>2]|0);c[h>>2]=hv(c[m>>2]|0,c[y>>2]|0)|0;b[(c[y>>2]|0)+22>>1]=b[s>>1]|0;if((c[h>>2]|0)!=0){k=45;break b}}else{if(((d[(c[u>>2]|0)+55>>0]|0)>>>5&1|0)!=0){c[(c[y>>2]|0)+36>>2]=576;E=k;c[E>>2]=0;c[E+4>>2]=0}else{e=(c[n>>2]|0)+56|0;g=c[e>>2]|0;e=c[e+4>>2]|0;f=pv(c[u>>2]|0)|0;E=k;c[E>>2]=g&~f;c[E+4>>2]=e&~D;E=k;c[(c[y>>2]|0)+36>>2]=(c[E>>2]|0)==0&(c[E+4>>2]|0)==0?576:512}if((c[o>>2]|0)==0?(a[(c[t>>2]|0)+44>>0]&32|0)==0:0){E=k;if(!((c[E>>2]|0)==0&(c[E+4>>2]|0)==0)){break}if(((d[(c[u>>2]|0)+55>>0]|0)>>>2&1|0)!=0){break}if((b[(c[u>>2]|0)+48>>1]|0)>=(b[(c[t>>2]|0)+42>>1]|0)){break}if((b[(c[q>>2]|0)+34>>1]&4|0)!=0){break}if((c[38528>>2]|0)==0){break}if((b[(c[c[c[q>>2]>>2]>>2]|0)+60>>1]&64|0)!=0){break}}a[(c[y>>2]|0)+17>>0]=(c[o>>2]|0)!=0?c[r>>2]|0:0;b[(c[y>>2]|0)+20>>1]=(b[s>>1]|0)+1+(((b[(c[u>>2]|0)+48>>1]|0)*15|0)/(b[(c[t>>2]|0)+42>>1]|0)|0);E=k;if((c[E>>2]|0)!=0|(c[E+4>>2]|0)!=0){E=$u(b[(c[y>>2]|0)+20>>1]|0,(b[s>>1]|0)+16&65535)|0;b[(c[y>>2]|0)+20>>1]=E}ov(c[p>>2]|0,c[y>>2]|0);c[h>>2]=hv(c[m>>2]|0,c[y>>2]|0)|0;b[(c[y>>2]|0)+22>>1]=b[s>>1]|0;if((c[h>>2]|0)!=0){k=45;break b}}}while(0);c[h>>2]=qv(c[m>>2]|0,c[n>>2]|0,c[u>>2]|0,0)|0;if((c[(c[n>>2]|0)+68>>2]|0)!=0){k=45;break}}c[u>>2]=c[(c[u>>2]|0)+20>>2];c[r>>2]=(c[r>>2]|0)+1}if((k|0)==45){i=j;return c[h>>2]|0}return 0}function ev(f,g,h){f=f|0;g=g|0;h=h|0;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,G=0;z=i;i=i+672|0;l=z+664|0;x=z+660|0;m=z+576|0;G=z+656|0;q=z+652|0;n=z+648|0;r=z+644|0;s=z+640|0;t=z+636|0;p=z+632|0;B=z+168|0;y=z+612|0;D=z+112|0;j=z+56|0;o=z+608|0;u=z+604|0;v=z+600|0;A=z+596|0;w=z+592|0;C=z+588|0;E=z+584|0;F=z;c[x>>2]=f;f=m;c[f>>2]=g;c[f+4>>2]=h;c[G>>2]=c[c[x>>2]>>2];c[t>>2]=0;c[q>>2]=c[(c[x>>2]|0)+4>>2];if((b[(c[G>>2]|0)+34>>1]&128|0)!=0){c[l>>2]=0;f=c[l>>2]|0;i=z;return f|0}c[s>>2]=(c[(c[q>>2]|0)+20>>2]|0)+((c[(c[q>>2]|0)+12>>2]|0)*48|0);c[n>>2]=c[(c[x>>2]|0)+12>>2];g=D+0|0;h=g+56|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[o>>2]=(c[(c[G>>2]|0)+4>>2]|0)+8+((d[(c[n>>2]|0)+16>>0]|0)*72|0);c[p>>2]=c[(c[o>>2]|0)+40>>2];c[r>>2]=c[(c[q>>2]|0)+20>>2];while(1){if(!((c[r>>2]|0)>>>0<(c[s>>2]|0)>>>0)){break}if((c[t>>2]|0)!=0){break}a:do{if((b[(c[r>>2]|0)+18>>1]&256|0)!=0?(g=(c[(c[r>>2]|0)+12>>2]|0)+408|0,f=(c[n>>2]|0)+8|0,(c[g>>2]&c[f>>2]|0)!=0?1:(c[g+4>>2]&c[f+4>>2]|0)!=0):0){c[u>>2]=c[(c[r>>2]|0)+12>>2];c[v>>2]=(c[(c[u>>2]|0)+20>>2]|0)+((c[(c[u>>2]|0)+12>>2]|0)*48|0);c[w>>2]=1;f=c[x>>2]|0;c[y+0>>2]=c[f+0>>2];c[y+4>>2]=c[f+4>>2];c[y+8>>2]=c[f+8>>2];c[y+12>>2]=c[f+12>>2];c[y+16>>2]=c[f+16>>2];c[y+8>>2]=0;c[y+16>>2]=j;c[A>>2]=c[(c[u>>2]|0)+20>>2];b:while(1){if(!((c[A>>2]|0)>>>0<(c[v>>2]|0)>>>0)){break}G=c[A>>2]|0;if((b[(c[A>>2]|0)+18>>1]&512|0)==0){if((c[G+8>>2]|0)==(c[p>>2]|0)){c[B>>2]=c[c[q>>2]>>2];c[B+4>>2]=c[q>>2];a[B+8>>0]=72;c[B+12>>2]=1;c[B+20>>2]=c[A>>2];c[y+4>>2]=B;k=14}}else{c[y+4>>2]=c[G+12>>2];k=14}c:do{if((k|0)==14){k=0;b[j>>1]=0;G=m;h=c[G>>2]|0;G=c[G+4>>2]|0;if((a[(c[(c[o>>2]|0)+16>>2]|0)+44>>0]&16|0)!=0){c[t>>2]=cv(y,h,G)|0}else{c[t>>2]=dv(y,h,G)|0}if((e[j>>1]|0)==0){k=18;break b}if((c[w>>2]|0)!=0){fv(D,j);c[w>>2]=0;break}fv(F,D);b[D>>1]=0;c[C>>2]=0;while(1){if((c[C>>2]|0)>=(e[F>>1]|0)){break c}c[E>>2]=0;while(1){G=c[C>>2]|0;if((c[E>>2]|0)>=(e[j>>1]|0)){break}f=F+8+(G<<4)|0;g=j+8+(c[E>>2]<<4)|0;h=c[f>>2]|c[g>>2];g=c[f+4>>2]|c[g+4>>2];f=$u(b[F+8+(c[C>>2]<<4)+8>>1]|0,b[j+8+(c[E>>2]<<4)+8>>1]|0)|0;gv(D,h,g,f,$u(b[F+8+(c[C>>2]<<4)+10>>1]|0,b[j+8+(c[E>>2]<<4)+10>>1]|0)|0)|0;c[E>>2]=(c[E>>2]|0)+1}c[C>>2]=G+1}}}while(0);c[A>>2]=(c[A>>2]|0)+48}if((k|0)==18){k=0;b[D>>1]=0}b[(c[n>>2]|0)+40>>1]=1;c[c[(c[n>>2]|0)+44>>2]>>2]=c[r>>2];c[(c[n>>2]|0)+36>>2]=8192;b[(c[n>>2]|0)+18>>1]=0;a[(c[n>>2]|0)+17>>0]=0;f=(c[n>>2]|0)+24|0;c[f+0>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[C>>2]=0;while(1){if((c[t>>2]|0)!=0){break a}if((c[C>>2]|0)>=(e[D>>1]|0)){break a}b[(c[n>>2]|0)+20>>1]=(b[D+8+(c[C>>2]<<4)+8>>1]|0)+1;b[(c[n>>2]|0)+22>>1]=b[D+8+(c[C>>2]<<4)+10>>1]|0;h=D+8+(c[C>>2]<<4)|0;g=c[h+4>>2]|0;f=c[n>>2]|0;c[f>>2]=c[h>>2];c[f+4>>2]=g;c[t>>2]=hv(c[x>>2]|0,c[n>>2]|0)|0;c[C>>2]=(c[C>>2]|0)+1}}}while(0);c[r>>2]=(c[r>>2]|0)+48}c[l>>2]=c[t>>2];f=c[l>>2]|0;i=z;return f|0}function fv(a,d){a=a|0;d=d|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=a;c[h>>2]=d;b[c[g>>2]>>1]=b[c[h>>2]>>1]|0;dE((c[g>>2]|0)+8|0,(c[h>>2]|0)+8|0,(e[c[g>>2]>>1]|0)<<4|0)|0;i=f;return}function gv(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+32|0;q=k+16|0;p=k+12|0;n=k;o=k+24|0;l=k+22|0;j=k+20|0;m=k+8|0;c[p>>2]=a;a=n;c[a>>2]=d;c[a+4>>2]=f;b[o>>1]=g;b[l>>1]=h;b[j>>1]=b[c[p>>2]>>1]|0;c[m>>2]=(c[p>>2]|0)+8;while(1){if((e[j>>1]|0)<=0){r=9;break}if((b[o>>1]|0)<=(b[(c[m>>2]|0)+8>>1]|0)?(f=n,d=c[m>>2]|0,a=n,(c[f>>2]&c[d>>2]|0)==(c[a>>2]|0)?(c[f+4>>2]&c[d+4>>2]|0)==(c[a+4>>2]|0):0):0){break}if((b[(c[m>>2]|0)+8>>1]|0)<=(b[o>>1]|0)?(f=c[m>>2]|0,d=n,a=c[m>>2]|0,(c[f>>2]&c[d>>2]|0)==(c[a>>2]|0)?(c[f+4>>2]&c[d+4>>2]|0)==(c[a+4>>2]|0):0):0){r=7;break}b[j>>1]=(b[j>>1]|0)+ -1<<16>>16;c[m>>2]=(c[m>>2]|0)+16}if((r|0)==7){c[q>>2]=0;a=c[q>>2]|0;i=k;return a|0}do{if((r|0)==9){r=c[p>>2]|0;if((e[c[p>>2]>>1]|0)<3){a=b[r>>1]|0;b[r>>1]=a+1<<16>>16;c[m>>2]=(c[p>>2]|0)+8+((a&65535)<<4);b[(c[m>>2]|0)+10>>1]=b[l>>1]|0;break}c[m>>2]=r+8;b[j>>1]=1;while(1){r=b[(c[m>>2]|0)+8>>1]|0;if((e[j>>1]|0)>=(e[c[p>>2]>>1]|0)){break}if((r|0)>(b[(c[p>>2]|0)+8+(e[j>>1]<<4)+8>>1]|0)){c[m>>2]=(c[p>>2]|0)+8+(e[j>>1]<<4)}b[j>>1]=(b[j>>1]|0)+1<<16>>16}if((r|0)<=(b[o>>1]|0)){c[q>>2]=0;a=c[q>>2]|0;i=k;return a|0}}}while(0);f=n;d=c[f+4>>2]|0;a=c[m>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=d;b[(c[m>>2]|0)+8>>1]=b[o>>1]|0;if((b[(c[m>>2]|0)+10>>1]|0)>(b[l>>1]|0)){b[(c[m>>2]|0)+10>>1]=b[l>>1]|0}c[q>>2]=1;a=c[q>>2]|0;i=k;return a|0}function hv(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=i;i=i+48|0;f=k+36|0;h=k+32|0;g=k+28|0;l=k+24|0;e=k+20|0;p=k+16|0;j=k+12|0;n=k+8|0;o=k+4|0;m=k;c[h>>2]=a;c[g>>2]=d;c[p>>2]=c[c[h>>2]>>2];c[j>>2]=c[c[c[p>>2]>>2]>>2];if((c[(c[h>>2]|0)+16>>2]|0)!=0){a=c[g>>2]|0;gv(c[(c[h>>2]|0)+16>>2]|0,c[a>>2]|0,c[a+4>>2]|0,b[(c[g>>2]|0)+20>>1]|0,b[(c[g>>2]|0)+22>>1]|0)|0;c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}iv(c[(c[p>>2]|0)+16>>2]|0,c[g>>2]|0);c[l>>2]=jv((c[p>>2]|0)+16|0,c[g>>2]|0)|0;if((c[l>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}c[e>>2]=c[c[l>>2]>>2];a:do{if((c[e>>2]|0)==0){a=Le(c[j>>2]|0,72)|0;c[e>>2]=a;c[c[l>>2]>>2]=a;if((c[e>>2]|0)!=0){vu(c[e>>2]|0);c[(c[e>>2]|0)+48>>2]=0;break}c[f>>2]=7;a=c[f>>2]|0;i=k;return a|0}else{c[n>>2]=(c[e>>2]|0)+48;while(1){if((c[c[n>>2]>>2]|0)==0){break a}c[n>>2]=jv(c[n>>2]|0,c[g>>2]|0)|0;if((c[n>>2]|0)==0){break a}c[o>>2]=c[c[n>>2]>>2];if((c[o>>2]|0)==0){break a}c[c[n>>2]>>2]=c[(c[o>>2]|0)+48>>2];su(c[j>>2]|0,c[o>>2]|0)}}}while(0);kv(c[j>>2]|0,c[e>>2]|0,c[g>>2]|0)|0;if(((c[(c[e>>2]|0)+36>>2]&1024|0)==0?(c[m>>2]=c[(c[e>>2]|0)+28>>2],(c[m>>2]|0)!=0):0)?(c[(c[m>>2]|0)+44>>2]|0)==0:0){c[(c[e>>2]|0)+28>>2]=0}c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}function iv(a,e){a=a|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=a;c[h>>2]=e;if((c[(c[h>>2]|0)+36>>2]&512|0)==0){i=f;return}if((c[(c[h>>2]|0)+36>>2]&32768|0)!=0){i=f;return}while(1){if((c[g>>2]|0)==0){break}do{if(((d[(c[g>>2]|0)+16>>0]|0)==(d[(c[h>>2]|0)+16>>0]|0)?(c[(c[g>>2]|0)+36>>2]&512|0)!=0:0)?(c[(c[g>>2]|0)+36>>2]&32768|0)==0:0){if((lv(c[g>>2]|0,c[h>>2]|0)|0)!=0){b[(c[h>>2]|0)+20>>1]=b[(c[g>>2]|0)+20>>1]|0;b[(c[h>>2]|0)+22>>1]=(b[(c[g>>2]|0)+22>>1]|0)-1;break}if((lv(c[h>>2]|0,c[g>>2]|0)|0)!=0){b[(c[h>>2]|0)+20>>1]=b[(c[g>>2]|0)+20>>1]|0;b[(c[h>>2]|0)+22>>1]=(b[(c[g>>2]|0)+22>>1]|0)+1}}}while(0);c[g>>2]=c[(c[g>>2]|0)+48>>2]}i=f;return}function jv(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+16|0;g=h+12|0;f=h+8|0;k=h+4|0;j=h;c[f>>2]=a;c[k>>2]=e;c[j>>2]=c[c[f>>2]>>2];while(1){if((c[j>>2]|0)==0){e=14;break}if((d[(c[j>>2]|0)+16>>0]|0)==(d[(c[k>>2]|0)+16>>0]|0)?(d[(c[j>>2]|0)+17>>0]|0)==(d[(c[k>>2]|0)+17>>0]|0):0){l=c[j>>2]|0;e=c[k>>2]|0;a=c[j>>2]|0;if(((((c[l>>2]&c[e>>2]|0)==(c[a>>2]|0)?(c[l+4>>2]&c[e+4>>2]|0)==(c[a+4>>2]|0):0)?(b[(c[j>>2]|0)+18>>1]|0)<=(b[(c[k>>2]|0)+18>>1]|0):0)?(b[(c[j>>2]|0)+20>>1]|0)<=(b[(c[k>>2]|0)+20>>1]|0):0)?(b[(c[j>>2]|0)+22>>1]|0)<=(b[(c[k>>2]|0)+22>>1]|0):0){e=9;break}e=c[j>>2]|0;a=c[k>>2]|0;l=c[k>>2]|0;if((((c[e>>2]&c[a>>2]|0)==(c[l>>2]|0)?(c[e+4>>2]&c[a+4>>2]|0)==(c[l+4>>2]|0):0)?(b[(c[j>>2]|0)+20>>1]|0)>=(b[(c[k>>2]|0)+20>>1]|0):0)?(b[(c[j>>2]|0)+22>>1]|0)>=(b[(c[k>>2]|0)+22>>1]|0):0){e=14;break}}c[f>>2]=(c[j>>2]|0)+48;c[j>>2]=c[c[f>>2]>>2]}if((e|0)==9){c[g>>2]=0;l=c[g>>2]|0;i=h;return l|0}else if((e|0)==14){c[g>>2]=c[f>>2];l=c[g>>2]|0;i=h;return l|0}return 0}function kv(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+16|0;h=k+12|0;n=k+8|0;l=k+4|0;j=k;c[n>>2]=d;c[l>>2]=f;c[j>>2]=g;uu(c[n>>2]|0,c[l>>2]|0);n=(Xu(c[n>>2]|0,c[l>>2]|0,e[(c[j>>2]|0)+40>>1]|0)|0)!=0;d=c[l>>2]|0;if(n){n=d+24|0;c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[h>>2]=7;n=c[h>>2]|0;i=k;return n|0}f=c[j>>2]|0;n=d+0|0;m=f+0|0;g=n+40|0;do{c[n>>2]=c[m>>2];n=n+4|0;m=m+4|0}while((n|0)<(g|0));b[d+40>>1]=b[f+40>>1]|0;dE(c[(c[l>>2]|0)+44>>2]|0,c[(c[j>>2]|0)+44>>2]|0,(e[(c[l>>2]|0)+40>>1]|0)<<2|0)|0;l=c[j>>2]|0;if((c[(c[j>>2]|0)+36>>2]&1024|0)==0){if((c[l+36>>2]&16384|0)!=0){c[(c[j>>2]|0)+28>>2]=0}}else{a[l+28>>0]=0}c[h>>2]=0;n=c[h>>2]|0;i=k;return n|0}function lv(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;k=f+8|0;j=f+4|0;l=f;c[h>>2]=a;c[k>>2]=d;if((e[(c[h>>2]|0)+40>>1]|0)>=(e[(c[k>>2]|0)+40>>1]|0)){c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}if((b[(c[h>>2]|0)+20>>1]|0)>=(b[(c[k>>2]|0)+20>>1]|0)){if((b[(c[h>>2]|0)+20>>1]|0)>(b[(c[k>>2]|0)+20>>1]|0)){c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}if((b[(c[h>>2]|0)+22>>1]|0)>(b[(c[k>>2]|0)+22>>1]|0)){c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}}c[j>>2]=(e[(c[h>>2]|0)+40>>1]|0)-1;while(1){if((c[j>>2]|0)<0){d=17;break}c[l>>2]=(e[(c[k>>2]|0)+40>>1]|0)-1;while(1){if((c[l>>2]|0)<0){break}if((c[(c[(c[k>>2]|0)+44>>2]|0)+(c[l>>2]<<2)>>2]|0)==(c[(c[(c[h>>2]|0)+44>>2]|0)+(c[j>>2]<<2)>>2]|0)){break}c[l>>2]=(c[l>>2]|0)+ -1}if((c[l>>2]|0)<0){d=15;break}c[j>>2]=(c[j>>2]|0)+ -1}if((d|0)==15){c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}else if((d|0)==17){c[g>>2]=1;a=c[g>>2]|0;i=f;return a|0}return 0}function mv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;l=e+12|0;j=e+8|0;k=e+4|0;h=e;c[g>>2]=a;c[l>>2]=b;c[j>>2]=d;c[k>>2]=0;c[h>>2]=c[(c[l>>2]|0)+20>>2];while(1){if((c[k>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0)){g=6;break}if((tv(c[c[h>>2]>>2]|0,c[j>>2]|0,c[g>>2]|0)|0)!=0){g=4;break}c[k>>2]=(c[k>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+48}if((g|0)==4){c[f>>2]=1;a=c[f>>2]|0;i=e;return a|0}else if((g|0)==6){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}return 0}function nv(a,f,g){a=a|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;h=j+28|0;q=j+24|0;m=j+20|0;k=j+16|0;o=j+12|0;p=j+8|0;l=j+4|0;n=j;c[q>>2]=a;c[m>>2]=f;c[k>>2]=g;if(((d[(c[m>>2]|0)+55>>0]|0)>>>2&1|0)!=0){c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}a=c[(c[c[q>>2]>>2]|0)+8>>2]|0;c[o>>2]=a;if((a|0)==0){c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}c[p>>2]=0;a:while(1){if((c[p>>2]|0)>=(c[c[o>>2]>>2]|0)){k=16;break}c[n>>2]=Sp(c[(c[(c[o>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;if((d[c[n>>2]>>0]|0)!=154){k=8;break}b:do{if((c[(c[n>>2]|0)+28>>2]|0)==(c[k>>2]|0)){c[l>>2]=0;while(1){if((c[l>>2]|0)>=(e[(c[m>>2]|0)+50>>1]|0)){break b}if((b[(c[n>>2]|0)+32>>1]|0)==(b[(c[(c[m>>2]|0)+4>>2]|0)+(c[l>>2]<<1)>>1]|0)){k=13;break a}c[l>>2]=(c[l>>2]|0)+1}}}while(0);c[p>>2]=(c[p>>2]|0)+1}if((k|0)==8){c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}else if((k|0)==13){c[h>>2]=1;a=c[h>>2]|0;i=j;return a|0}else if((k|0)==16){c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}return 0}function ov(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;l=g+28|0;h=g+24|0;m=g+20|0;k=g+16|0;n=g;o=g+12|0;j=g+8|0;c[l>>2]=d;c[h>>2]=f;q=c[h>>2]|0;p=(c[h>>2]|0)+8|0;f=~(c[q+4>>2]|c[p+4>>2]);d=n;c[d>>2]=~(c[q>>2]|c[p>>2]);c[d+4>>2]=f;if((b[(c[c[c[c[l>>2]>>2]>>2]>>2]|0)+60>>1]&4096|0)!=0){i=g;return}c[o>>2]=c[(c[l>>2]|0)+12>>2];c[m>>2]=c[(c[l>>2]|0)+20>>2];while(1){if((c[o>>2]|0)<=0){h=19;break}if((a[(c[m>>2]|0)+20>>0]&2|0)!=0){h=19;break}p=(c[m>>2]|0)+40|0;q=(c[h>>2]|0)+8|0;if(!((c[p>>2]&c[q>>2]|0)==0?(c[p+4>>2]&c[q+4>>2]|0)==0:0)?(p=(c[m>>2]|0)+40|0,q=n,!((c[p>>2]&c[q>>2]|0)!=0?1:(c[p+4>>2]&c[q+4>>2]|0)!=0)):0){c[j>>2]=(e[(c[h>>2]|0)+40>>1]|0)-1;while(1){if((c[j>>2]|0)<0){break}c[k>>2]=c[(c[(c[h>>2]|0)+44>>2]|0)+(c[j>>2]<<2)>>2];if((c[k>>2]|0)!=0){if((c[k>>2]|0)==(c[m>>2]|0)){break}if((c[(c[k>>2]|0)+4>>2]|0)>=0?((c[(c[l>>2]|0)+20>>2]|0)+((c[(c[k>>2]|0)+4>>2]|0)*48|0)|0)==(c[m>>2]|0):0){break}}c[j>>2]=(c[j>>2]|0)+ -1}if((c[j>>2]|0)<0){if((b[(c[m>>2]|0)+16>>1]|0)<=0){f=b[(c[m>>2]|0)+16>>1]|0}else{f=-1}q=(c[h>>2]|0)+22|0;b[q>>1]=(b[q>>1]|0)+f}}c[o>>2]=(c[o>>2]|0)+ -1;c[m>>2]=(c[m>>2]|0)+48}if((h|0)==19){i=g;return}}function pv(a){a=a|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+16|0;d=f;h=f+12|0;j=f+8|0;c[g>>2]=a;a=d;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=(e[(c[g>>2]|0)+52>>1]|0)-1;while(1){if((c[h>>2]|0)<0){break}c[j>>2]=b[(c[(c[g>>2]|0)+4>>2]|0)+(c[h>>2]<<1)>>1]|0;if((c[j>>2]|0)>=0&(c[j>>2]|0)<63){l=$D(1,0,c[j>>2]|0)|0;m=d;k=c[m+4>>2]|D;a=d;c[a>>2]=c[m>>2]|l;c[a+4>>2]=k}c[h>>2]=(c[h>>2]|0)+ -1}m=d;D=c[m+4>>2]|0;i=f;return c[m>>2]|0}function qv(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;C=i;i=i+224|0;y=C+188|0;E=C+184|0;v=C+180|0;u=C+176|0;I=C+210|0;O=C+172|0;D=C+168|0;K=C+164|0;n=C+160|0;k=C+156|0;N=C+152|0;L=C+40|0;m=C;s=C+208|0;o=C+206|0;p=C+204|0;q=C+36|0;r=C+202|0;l=C+32|0;t=C+28|0;x=C+200|0;G=C+24|0;F=C+20|0;M=C+198|0;B=C+196|0;w=C+194|0;J=C+192|0;z=C+16|0;H=C+12|0;A=C+8|0;c[E>>2]=f;c[v>>2]=g;c[u>>2]=h;b[I>>1]=j;c[O>>2]=c[c[E>>2]>>2];c[D>>2]=c[c[O>>2]>>2];c[K>>2]=c[c[D>>2]>>2];c[t>>2]=0;c[G>>2]=0;c[F>>2]=0;c[n>>2]=c[(c[E>>2]|0)+12>>2];if((a[(c[K>>2]|0)+64>>0]|0)!=0){c[y>>2]=7;O=c[y>>2]|0;i=C;return O|0}do{if((c[(c[n>>2]|0)+36>>2]&32|0)!=0){c[N>>2]=24}else{if((c[(c[u>>2]|0)+44>>2]|0)>0?(a[(c[v>>2]|0)+36>>0]&8|0)==0:0){c[N>>2]=191;break}c[N>>2]=63}}while(0);if(((d[(c[u>>2]|0)+55>>0]|0)>>>2&1|0)!=0){c[N>>2]=c[N>>2]&-61}if((e[(c[n>>2]|0)+24>>1]|0)<(e[(c[u>>2]|0)+50>>1]|0)){c[l>>2]=b[(c[(c[u>>2]|0)+4>>2]|0)+(e[(c[n>>2]|0)+24>>1]<<1)>>1]|0}else{c[l>>2]=-1}c[k>>2]=Su(L,c[(c[E>>2]|0)+4>>2]|0,c[(c[v>>2]|0)+40>>2]|0,c[l>>2]|0,c[N>>2]|0,c[u>>2]|0)|0;b[o>>1]=b[(c[n>>2]|0)+24>>1]|0;b[p>>1]=b[(c[n>>2]|0)+26>>1]|0;b[s>>1]=b[(c[n>>2]|0)+40>>1]|0;c[q>>2]=c[(c[n>>2]|0)+36>>2];g=c[n>>2]|0;f=c[g+4>>2]|0;O=m;c[O>>2]=c[g>>2];c[O+4>>2]=f;b[r>>1]=b[(c[n>>2]|0)+22>>1]|0;b[(c[n>>2]|0)+18>>1]=0;b[x>>1]=bv(b[c[(c[u>>2]|0)+8>>2]>>1]|0)|0;if(((((c[k>>2]|0)==0?(e[o>>1]|0)==(e[p>>1]|0):0)?((e[o>>1]|0)+1|0)<(e[(c[u>>2]|0)+50>>1]|0):0)?(b[(c[(c[u>>2]|0)+8>>2]|0)+((e[o>>1]|0)+1<<1)>>1]|0)>=42:0)?(O=Xu(c[K>>2]|0,c[n>>2]|0,(e[(c[n>>2]|0)+40>>1]|0)+1|0)|0,c[t>>2]=O,(O|0)==0):0){f=(c[n>>2]|0)+24|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;f=(c[n>>2]|0)+26|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;f=(c[n>>2]|0)+40|0;O=b[f>>1]|0;b[f>>1]=O+1<<16>>16;c[(c[(c[n>>2]|0)+44>>2]|0)+((O&65535)<<2)>>2]=0;O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|32768;b[M>>1]=(b[(c[(c[u>>2]|0)+8>>2]|0)+(e[o>>1]<<1)>>1]|0)-(b[(c[(c[u>>2]|0)+8>>2]|0)+((e[o>>1]|0)+1<<1)>>1]|0);O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)-(b[M>>1]|0);qv(c[E>>2]|0,c[v>>2]|0,c[u>>2]|0,(b[M>>1]|0)+(b[I>>1]|0)&65535)|0;b[(c[n>>2]|0)+22>>1]=b[r>>1]|0}while(1){if((c[t>>2]|0)!=0){break}if((c[k>>2]|0)==0){break}b[B>>1]=b[(c[k>>2]|0)+18>>1]|0;c[z>>2]=0;if((e[B>>1]|0)!=128?(a[(c[k>>2]|0)+20>>0]&0|0)==0:0){j=26}else{j=24}if(((j|0)==24?(j=0,(c[l>>2]|0)>=0):0)?(d[(c[(c[(c[v>>2]|0)+16>>2]|0)+4>>2]|0)+((c[l>>2]|0)*24|0)+20>>0]|0)==0:0){j=26}if((j|0)==26?(0,f=(c[k>>2]|0)+32|0,O=(c[n>>2]|0)+8|0,!((c[f>>2]&c[O>>2]|0)!=0?1:(c[f+4>>2]&c[O+4>>2]|0)!=0)):0){c[(c[n>>2]|0)+36>>2]=c[q>>2];b[(c[n>>2]|0)+24>>1]=b[o>>1]|0;b[(c[n>>2]|0)+40>>1]=b[s>>1]|0;if((Xu(c[K>>2]|0,c[n>>2]|0,(e[(c[n>>2]|0)+40>>1]|0)+1|0)|0)!=0){break}h=c[k>>2]|0;g=(c[n>>2]|0)+40|0;N=b[g>>1]|0;b[g>>1]=N+1<<16>>16;c[(c[(c[n>>2]|0)+44>>2]|0)+((N&65535)<<2)>>2]=h;N=m;h=(c[k>>2]|0)+32|0;g=(c[n>>2]|0)+8|0;f=(c[N+4>>2]|c[h+4>>2])&~c[g+4>>2];O=c[n>>2]|0;c[O>>2]=(c[N>>2]|c[h>>2])&~c[g>>2];c[O+4>>2]=f;do{if((b[B>>1]&1|0)!=0){c[H>>2]=c[c[k>>2]>>2];O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|4;if((c[(c[H>>2]|0)+4>>2]&2048|0)!=0){c[z>>2]=46;break}if((c[(c[H>>2]|0)+20>>2]|0)!=0?(c[c[(c[H>>2]|0)+20>>2]>>2]|0)!=0:0){O=c[c[(c[H>>2]|0)+20>>2]>>2]|0;c[z>>2]=(Np(O,((O|0)<0)<<31>>31)|0)<<16>>16}}else{if((b[B>>1]&2|0)!=0){O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|1;if((c[l>>2]|0)>=0){if((b[I>>1]|0)!=0){break}if((e[(c[n>>2]|0)+24>>1]|0)!=((e[(c[u>>2]|0)+50>>1]|0)-1|0)){break}}if((c[l>>2]|0)>=0?(d[(c[u>>2]|0)+54>>0]|0)==0:0){O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|65536;break}O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|4096;break}else{if((b[B>>1]&128|0)!=0){O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|8;break}j=(c[n>>2]|0)+36|0;M=c[j>>2]|0;if((b[B>>1]&36|0)!=0){c[j>>2]=M|34;c[F>>2]=c[k>>2];c[G>>2]=0;break}c[j>>2]=M|18;c[G>>2]=c[k>>2];if((c[(c[n>>2]|0)+36>>2]&32|0)!=0){j=c[(c[(c[n>>2]|0)+44>>2]|0)+((e[(c[n>>2]|0)+40>>1]|0)-2<<2)>>2]|0}else{j=0}c[F>>2]=j;break}}}while(0);do{if((c[(c[n>>2]|0)+36>>2]&2|0)==0){f=(c[n>>2]|0)+24|0;O=(b[f>>1]|0)+1<<16>>16;b[f>>1]=O;c[A>>2]=O&65535;if((b[(c[k>>2]|0)+16>>1]|0)<=0?(c[l>>2]|0)>=0:0){O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)+(b[(c[k>>2]|0)+16>>1]|0);O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)-(c[z>>2]|0);break}O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)+((b[(c[(c[u>>2]|0)+8>>2]|0)+(c[A>>2]<<1)>>1]|0)-(b[(c[(c[u>>2]|0)+8>>2]|0)+((c[A>>2]|0)-1<<1)>>1]|0));if((b[B>>1]&128|0)!=0){O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)+10}}else{rv(c[D>>2]|0,c[E>>2]|0,c[F>>2]|0,c[G>>2]|0,c[n>>2]|0)|0}}while(0);b[w>>1]=(b[(c[n>>2]|0)+22>>1]|0)+1+(((b[(c[u>>2]|0)+48>>1]|0)*15|0)/(b[(c[(c[v>>2]|0)+16>>2]|0)+42>>1]|0)|0);O=$u(b[x>>1]|0,b[w>>1]|0)|0;b[(c[n>>2]|0)+20>>1]=O;if((c[(c[n>>2]|0)+36>>2]&320|0)==0){O=$u(b[(c[n>>2]|0)+20>>1]|0,(b[(c[n>>2]|0)+22>>1]|0)+16&65535)|0;b[(c[n>>2]|0)+20>>1]=O}b[J>>1]=b[(c[n>>2]|0)+22>>1]|0;O=(c[n>>2]|0)+20|0;b[O>>1]=(b[O>>1]|0)+((b[I>>1]|0)+(c[z>>2]|0));O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)+((b[I>>1]|0)+(c[z>>2]|0));ov(c[(c[E>>2]|0)+4>>2]|0,c[n>>2]|0);c[t>>2]=hv(c[E>>2]|0,c[n>>2]|0)|0;if((c[(c[n>>2]|0)+36>>2]&2|0)!=0){b[(c[n>>2]|0)+22>>1]=b[r>>1]|0}else{b[(c[n>>2]|0)+22>>1]=b[J>>1]|0}if((c[(c[n>>2]|0)+36>>2]&16|0)==0?(e[(c[n>>2]|0)+24>>1]|0)<((e[(c[u>>2]|0)+50>>1]|0)+((c[c[u>>2]>>2]|0)!=0&1)|0):0){qv(c[E>>2]|0,c[v>>2]|0,c[u>>2]|0,(b[I>>1]|0)+(c[z>>2]|0)&65535)|0}b[(c[n>>2]|0)+22>>1]=b[r>>1]|0}c[k>>2]=Tu(L)|0}g=m;f=c[g+4>>2]|0;O=c[n>>2]|0;c[O>>2]=c[g>>2];c[O+4>>2]=f;b[(c[n>>2]|0)+24>>1]=b[o>>1]|0;b[(c[n>>2]|0)+26>>1]=b[p>>1]|0;c[(c[n>>2]|0)+36>>2]=c[q>>2];b[(c[n>>2]|0)+22>>1]=b[r>>1]|0;b[(c[n>>2]|0)+40>>1]=b[s>>1]|0;c[y>>2]=c[t>>2];O=c[y>>2]|0;i=C;return O|0}function rv(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;h=l+16|0;o=l+12|0;j=l+8|0;k=l+4|0;n=l;m=l+28|0;c[l+24>>2]=a;c[l+20>>2]=d;c[h>>2]=e;c[o>>2]=f;c[j>>2]=g;c[k>>2]=0;c[n>>2]=b[(c[j>>2]|0)+22>>1]|0;b[m>>1]=sv(c[h>>2]|0,c[n>>2]&65535)|0;b[m>>1]=sv(c[o>>2]|0,b[m>>1]|0)|0;if((c[h>>2]|0)!=0?(c[o>>2]|0)!=0:0){b[m>>1]=(b[m>>1]|0)-20}c[n>>2]=(c[n>>2]|0)-(((c[h>>2]|0)!=0&1)+((c[o>>2]|0)!=0&1));if((b[m>>1]|0)<10){b[m>>1]=10}if((b[m>>1]|0)>=(c[n>>2]|0)){d=c[n>>2]|0;d=d&65535;a=c[j>>2]|0;a=a+22|0;b[a>>1]=d;a=c[k>>2]|0;i=l;return a|0}c[n>>2]=b[m>>1]|0;d=c[n>>2]|0;d=d&65535;a=c[j>>2]|0;a=a+22|0;b[a>>1]=d;a=c[k>>2]|0;i=l;return a|0}function sv(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;g=i;i=i+16|0;h=g;j=g+6|0;f=g+4|0;c[h>>2]=d;b[j>>1]=e;b[f>>1]=b[j>>1]|0;do{if((c[h>>2]|0)!=0){e=c[h>>2]|0;if((b[(c[h>>2]|0)+16>>1]|0)<=0){b[f>>1]=(b[f>>1]|0)+(b[e+16>>1]|0);break}if((a[e+20>>0]&0|0)==0){b[f>>1]=(b[f>>1]|0)-20}}}while(0);i=g;return b[f>>1]|0}function tv(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;j=f+8|0;h=f+4|0;k=f;c[j>>2]=a;c[h>>2]=b;c[k>>2]=e;if((mq(c[j>>2]|0,c[h>>2]|0,c[k>>2]|0)|0)==0){c[g>>2]=1;a=c[g>>2]|0;i=f;return a|0}do{if((d[c[h>>2]>>0]|0|0)==71){if((tv(c[j>>2]|0,c[(c[h>>2]|0)+12>>2]|0,c[k>>2]|0)|0)==0?(tv(c[j>>2]|0,c[(c[h>>2]|0)+16>>2]|0,c[k>>2]|0)|0)==0:0){break}c[g>>2]=1;a=c[g>>2]|0;i=f;return a|0}}while(0);if((((d[c[h>>2]>>0]|0|0)==77?(mq(c[(c[j>>2]|0)+12>>2]|0,c[(c[h>>2]|0)+12>>2]|0,c[k>>2]|0)|0)==0:0)?(d[c[j>>2]>>0]|0|0)!=76:0)?(d[c[j>>2]>>0]|0|0)!=73:0){c[g>>2]=1;a=c[g>>2]|0;i=f;return a|0}c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}function uv(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var 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;n=i;i=i+80|0;l=n;m=n+68|0;v=n+64|0;u=n+60|0;t=n+56|0;C=n+52|0;o=n+48|0;r=n+44|0;w=n+40|0;q=n+36|0;x=n+32|0;z=n+28|0;p=n+24|0;y=n+20|0;k=n+16|0;A=n+12|0;B=n+8|0;s=n+72|0;D=n+4|0;c[v>>2]=f;c[u>>2]=g;c[t>>2]=h;c[C>>2]=j;c[w>>2]=0;c[o>>2]=0;c[p>>2]=c[(c[u>>2]|0)+20>>2];while(1){if((c[o>>2]|0)>=(c[(c[u>>2]|0)+12>>2]|0)){break}if(((c[(c[p>>2]|0)+8>>2]|0)==(c[(c[t>>2]|0)+40>>2]|0)?(e[(c[p>>2]|0)+18>>1]&-1153|0)!=0:0)?(a[(c[p>>2]|0)+20>>0]&0|0)==0:0){c[w>>2]=(c[w>>2]|0)+1}c[o>>2]=(c[o>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+48}c[y>>2]=0;if((c[C>>2]|0)!=0){c[A>>2]=c[c[C>>2]>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[A>>2]|0)){break}c[B>>2]=c[(c[(c[C>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0)>>2];if((d[c[B>>2]>>0]|0)!=154){break}if((c[(c[B>>2]|0)+28>>2]|0)!=(c[(c[t>>2]|0)+40>>2]|0)){break}c[o>>2]=(c[o>>2]|0)+1}if((c[o>>2]|0)==(c[A>>2]|0)){c[y>>2]=c[A>>2]}}c[k>>2]=ne(c[c[v>>2]>>2]|0,56+((c[w>>2]|0)*20|0)+(c[y>>2]<<3)|0)|0;if((c[k>>2]|0)==0){Ne(c[v>>2]|0,5352,l);c[m>>2]=0;f=c[m>>2]|0;i=n;return f|0}c[q>>2]=(c[k>>2]|0)+56;c[x>>2]=(c[q>>2]|0)+((c[w>>2]|0)*12|0);c[z>>2]=(c[x>>2]|0)+(c[y>>2]<<3);c[c[k>>2]>>2]=c[w>>2];c[(c[k>>2]|0)+8>>2]=c[y>>2];c[(c[k>>2]|0)+4>>2]=c[q>>2];c[(c[k>>2]|0)+12>>2]=c[x>>2];c[(c[k>>2]|0)+16>>2]=c[z>>2];c[r>>2]=0;c[o>>2]=0;c[p>>2]=c[(c[u>>2]|0)+20>>2];while(1){if((c[o>>2]|0)>=(c[(c[u>>2]|0)+12>>2]|0)){break}if(((c[(c[p>>2]|0)+8>>2]|0)==(c[(c[t>>2]|0)+40>>2]|0)?(e[(c[p>>2]|0)+18>>1]&-1153|0)!=0:0)?(a[(c[p>>2]|0)+20>>0]&0|0)==0:0){c[(c[q>>2]|0)+((c[r>>2]|0)*12|0)>>2]=c[(c[p>>2]|0)+12>>2];c[(c[q>>2]|0)+((c[r>>2]|0)*12|0)+8>>2]=c[o>>2];f=b[(c[p>>2]|0)+18>>1]&255&255;a[s>>0]=f;a[s>>0]=(d[s>>0]|0)==1?2:f;a[(c[q>>2]|0)+((c[r>>2]|0)*12|0)+4>>0]=a[s>>0]|0;c[r>>2]=(c[r>>2]|0)+1}c[o>>2]=(c[o>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+48}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[y>>2]|0)){break}c[D>>2]=c[(c[(c[C>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0)>>2];c[(c[x>>2]|0)+(c[o>>2]<<3)>>2]=b[(c[D>>2]|0)+32>>1]|0;a[(c[x>>2]|0)+(c[o>>2]<<3)+4>>0]=a[(c[(c[C>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0)+12>>0]|0;c[o>>2]=(c[o>>2]|0)+1}c[m>>2]=c[k>>2];f=c[m>>2]|0;i=n;return f|0}function vv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;j=l;g=l+24|0;h=l+20|0;k=l+16|0;m=l+12|0;f=l+8|0;n=l+4|0;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[m>>2]=c[(zp(c[c[g>>2]>>2]|0,c[h>>2]|0)|0)+8>>2];c[n>>2]=zb[c[(c[c[m>>2]>>2]|0)+12>>2]&63](c[m>>2]|0,c[k>>2]|0)|0;do{if((c[n>>2]|0)!=0){if((c[n>>2]|0)==7){a[(c[c[g>>2]>>2]|0)+64>>0]=1;break}e=c[g>>2]|0;if((c[(c[m>>2]|0)+8>>2]|0)!=0){c[j>>2]=c[(c[m>>2]|0)+8>>2];Ne(e,1456,j);break}else{c[j>>2]=ae(c[n>>2]|0)|0;Ne(e,1456,j);break}}}while(0);gc(c[(c[m>>2]|0)+8>>2]|0);c[(c[m>>2]|0)+8>>2]=0;c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[k>>2]>>2]|0)){break}if((a[(c[(c[k>>2]|0)+4>>2]|0)+((c[f>>2]|0)*12|0)+5>>0]|0)==0?(c[(c[(c[k>>2]|0)+16>>2]|0)+(c[f>>2]<<3)>>2]|0)>0:0){b=c[g>>2]|0;c[j>>2]=c[c[h>>2]>>2];Ne(b,23976,j)}c[f>>2]=(c[f>>2]|0)+1}i=l;return c[(c[g>>2]|0)+64>>2]|0}function wv(a){a=+a;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+32|0;e=d+18|0;f=d+8|0;g=d;j=d+16|0;h[f>>3]=a;if(+h[f>>3]<=1.0){b[e>>1]=0;j=b[e>>1]|0;i=d;return j|0}if(+h[f>>3]<=2.0e9){a=+h[f>>3];b[e>>1]=Np(~~a>>>0,+O(a)>=1.0?a>0.0?(ea(+N(a/4294967296.0),4294967295.0)|0)>>>0:~~+_((a- +(~~a>>>0))/4294967296.0)>>>0:0)|0;j=b[e>>1]|0;i=d;return j|0}else{c[g+0>>2]=c[f+0>>2];c[g+4>>2]=c[f+4>>2];g=cE(c[g>>2]|0,c[g+4>>2]|0,52)|0;g=ZD(g|0,D|0,1022,0)|0;b[j>>1]=g;b[e>>1]=(b[j>>1]|0)*10;j=b[e>>1]|0;i=d;return j|0}return 0}function xv(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+48|0;l=j+36|0;p=j+32|0;q=j+28|0;t=j+24|0;r=j+20|0;s=j+16|0;k=j+12|0;o=j+8|0;m=j+4|0;n=j;c[p>>2]=a;c[q>>2]=e;c[t>>2]=f;c[r>>2]=g;c[s>>2]=h;c[o>>2]=c[(c[(c[r>>2]|0)+32>>2]|0)+(c[s>>2]<<2)>>2];c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[c[q>>2]>>2]|0)){m=10;break}c[m>>2]=Sp(c[(c[(c[q>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)>>2]|0)|0;if(((((d[c[m>>2]>>0]|0)==154?(b[(c[m>>2]|0)+32>>1]|0)==(b[(c[(c[r>>2]|0)+4>>2]|0)+(c[s>>2]<<1)>>1]|0):0)?(c[(c[m>>2]|0)+28>>2]|0)==(c[t>>2]|0):0)?(c[n>>2]=Mp(c[p>>2]|0,c[(c[(c[q>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)>>2]|0)|0,(c[n>>2]|0)!=0):0)?0==(vc(c[c[n>>2]>>2]|0,c[o>>2]|0)|0):0){m=8;break}c[k>>2]=(c[k>>2]|0)+1}if((m|0)==8){c[l>>2]=c[k>>2];a=c[l>>2]|0;i=j;return a|0}else if((m|0)==10){c[l>>2]=-1;a=c[l>>2]|0;i=j;return a|0}return 0}function yv(f,g,h){f=f|0;g=g|0;h=h|0;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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0;I=i;i=i+208|0;K=I+188|0;v=I+184|0;j=I+180|0;aa=I+176|0;E=I+172|0;V=I+168|0;q=I+164|0;y=I+40|0;A=I+32|0;z=I+24|0;s=I+160|0;u=I+156|0;p=I+152|0;O=I+148|0;t=I+144|0;G=I+140|0;$=I+16|0;w=I+136|0;N=I+132|0;C=I+194|0;x=I+128|0;l=I+124|0;B=I+192|0;F=I+120|0;Q=I+116|0;P=I+112|0;R=I+108|0;S=I+104|0;r=I+100|0;m=I+96|0;k=I+92|0;L=I+88|0;J=I+84|0;M=I+80|0;H=I+72|0;o=I+196|0;n=I+68|0;Y=I+64|0;T=I+60|0;U=I+56|0;_=I+52|0;X=I+8|0;W=I;Z=I+48|0;c[K>>2]=f;c[v>>2]=g;c[j>>2]=h;c[aa>>2]=c[c[v>>2]>>2];f=z;c[f>>2]=0;c[f+4>>2]=0;c[s>>2]=0;c[u>>2]=0;c[p>>2]=0;c[t>>2]=c[c[aa>>2]>>2];c[G>>2]=c[c[t>>2]>>2];if((a[(c[G>>2]|0)+64>>0]|0)!=0){i=I;return}c[E>>2]=(c[(c[v>>2]|0)+20>>2]|0)+((c[j>>2]|0)*48|0);c[V>>2]=(c[aa>>2]|0)+68;c[q>>2]=c[c[E>>2]>>2];g=Zu(c[V>>2]|0,c[(c[q>>2]|0)+12>>2]|0)|0;f=y;c[f>>2]=g;c[f+4>>2]=D;c[O>>2]=d[c[q>>2]>>0]|0;do{if((c[O>>2]|0)==75){aa=c[V>>2]|0;h=(c[q>>2]|0)+20|0;if((c[(c[q>>2]|0)+4>>2]&2048|0)!=0){g=_u(aa,c[h>>2]|0)|0;f=(c[E>>2]|0)+32|0;c[f>>2]=g;c[f+4>>2]=D;break}else{g=Gu(aa,c[h>>2]|0)|0;f=(c[E>>2]|0)+32|0;c[f>>2]=g;c[f+4>>2]=D;break}}else{if((c[O>>2]|0)==76){f=(c[E>>2]|0)+32|0;c[f>>2]=0;c[f+4>>2]=0;break}else{g=Zu(c[V>>2]|0,c[(c[q>>2]|0)+16>>2]|0)|0;f=(c[E>>2]|0)+32|0;c[f>>2]=g;c[f+4>>2]=D;break}}}while(0);g=Zu(c[V>>2]|0,c[q>>2]|0)|0;f=A;c[f>>2]=g;c[f+4>>2]=D;if((c[(c[q>>2]|0)+4>>2]&1|0)!=0){h=Hu(c[V>>2]|0,b[(c[q>>2]|0)+36>>1]|0)|0;aa=$;c[aa>>2]=h;c[aa+4>>2]=D;aa=$;h=A;f=c[h+4>>2]|c[aa+4>>2];g=A;c[g>>2]=c[h>>2]|c[aa>>2];c[g+4>>2]=f;g=$;g=ZD(c[g>>2]|0,c[g+4>>2]|0,1,0)|0;f=z;c[f>>2]=g;c[f+4>>2]=D}g=A;$=c[g+4>>2]|0;f=(c[E>>2]|0)+40|0;c[f>>2]=c[g>>2];c[f+4>>2]=$;c[(c[E>>2]|0)+8>>2]=-1;c[(c[E>>2]|0)+4>>2]=-1;b[(c[E>>2]|0)+18>>1]=0;f=(zv(c[O>>2]|0)|0)!=0;$=c[q>>2]|0;do{if(f){c[w>>2]=Sp(c[$+12>>2]|0)|0;c[N>>2]=Sp(c[(c[q>>2]|0)+16>>2]|0)|0;g=(c[E>>2]|0)+32|0;f=y;b[C>>1]=((c[g>>2]&c[f>>2]|0)==0?(c[g+4>>2]&c[f+4>>2]|0)==0:0)?4095:1024;if((d[c[w>>2]>>0]|0)==154){c[(c[E>>2]|0)+8>>2]=c[(c[w>>2]|0)+28>>2];c[(c[E>>2]|0)+12>>2]=b[(c[w>>2]|0)+32>>1]|0;f=(Av(c[O>>2]|0)|0)&65535;b[(c[E>>2]|0)+18>>1]=f&e[C>>1]}if((c[N>>2]|0)!=0?(d[c[N>>2]>>0]|0)==154:0){b[B>>1]=0;if((c[(c[E>>2]|0)+8>>2]|0)>=0){c[l>>2]=kq(c[G>>2]|0,c[q>>2]|0,0)|0;if((a[(c[G>>2]|0)+64>>0]|0)!=0){hn(c[G>>2]|0,c[l>>2]|0);i=I;return}c[F>>2]=Bv(c[v>>2]|0,c[l>>2]|0,3)|0;if((c[F>>2]|0)==0){i=I;return}c[x>>2]=(c[(c[v>>2]|0)+20>>2]|0)+((c[F>>2]|0)*48|0);c[(c[x>>2]|0)+4>>2]=c[j>>2];c[E>>2]=(c[(c[v>>2]|0)+20>>2]|0)+((c[j>>2]|0)*48|0);a[(c[E>>2]|0)+21>>0]=1;f=(c[E>>2]|0)+20|0;a[f>>0]=d[f>>0]|8;if(((d[c[q>>2]>>0]|0)==79?(c[(c[q>>2]|0)+4>>2]&1|0)==0:0)?(b[(c[G>>2]|0)+60>>1]&512|0)==0:0){f=(c[E>>2]|0)+18|0;b[f>>1]=e[f>>1]|1024;b[B>>1]=1024}}else{c[l>>2]=c[q>>2];c[x>>2]=c[E>>2]}Cv(c[t>>2]|0,c[l>>2]|0);c[w>>2]=Sp(c[(c[l>>2]|0)+12>>2]|0)|0;c[(c[x>>2]|0)+8>>2]=c[(c[w>>2]|0)+28>>2];c[(c[x>>2]|0)+12>>2]=b[(c[w>>2]|0)+32>>1]|0;h=y;f=z;g=c[h+4>>2]|c[f+4>>2];aa=(c[x>>2]|0)+32|0;c[aa>>2]=c[h>>2]|c[f>>2];c[aa+4>>2]=g;aa=A;g=c[aa+4>>2]|0;f=(c[x>>2]|0)+40|0;c[f>>2]=c[aa>>2];c[f+4>>2]=g;f=(Av(d[c[l>>2]>>0]|0)|0)&65535;b[(c[x>>2]|0)+18>>1]=f+(e[B>>1]|0)&e[C>>1]}}else{if((d[$>>0]|0)==74?(d[(c[v>>2]|0)+8>>0]|0)==72:0){c[Q>>2]=c[(c[q>>2]|0)+20>>2];c[P>>2]=0;while(1){if((c[P>>2]|0)>=2){break}aa=c[t>>2]|0;g=d[24024+(c[P>>2]|0)>>0]|0;f=kq(c[G>>2]|0,c[(c[q>>2]|0)+12>>2]|0,0)|0;c[R>>2]=Dn(aa,g,f,kq(c[G>>2]|0,c[(c[(c[Q>>2]|0)+4>>2]|0)+((c[P>>2]|0)*20|0)>>2]|0,0)|0,0)|0;Dv(c[R>>2]|0,c[q>>2]|0);c[S>>2]=Bv(c[v>>2]|0,c[R>>2]|0,3)|0;yv(c[K>>2]|0,c[v>>2]|0,c[S>>2]|0);c[E>>2]=(c[(c[v>>2]|0)+20>>2]|0)+((c[j>>2]|0)*48|0);c[(c[(c[v>>2]|0)+20>>2]|0)+((c[S>>2]|0)*48|0)+4>>2]=c[j>>2];c[P>>2]=(c[P>>2]|0)+1}a[(c[E>>2]|0)+21>>0]=2;break}if((d[c[q>>2]>>0]|0)==71){Ev(c[K>>2]|0,c[v>>2]|0,c[j>>2]|0);c[E>>2]=(c[(c[v>>2]|0)+20>>2]|0)+((c[j>>2]|0)*48|0)}}}while(0);if((d[(c[v>>2]|0)+8>>0]|0)==72?(Fv(c[t>>2]|0,c[q>>2]|0,s,u,p)|0)!=0:0){c[r>>2]=c[(c[(c[(c[q>>2]|0)+20>>2]|0)+4>>2]|0)+20>>2];c[m>>2]=kq(c[G>>2]|0,c[s>>2]|0,0)|0;if((a[(c[G>>2]|0)+64>>0]|0)==0){f=(Mb(c[(c[m>>2]|0)+8>>2]|0)|0)-1|0;c[n>>2]=(c[(c[m>>2]|0)+8>>2]|0)+f;a[o>>0]=a[c[n>>2]>>0]|0;if((c[p>>2]|0)!=0){if((d[o>>0]|0)==64){c[u>>2]=0}a[o>>0]=a[696+(d[o>>0]|0)>>0]|0}a[c[n>>2]>>0]=(d[o>>0]|0)+1}c[H>>2]=(c[p>>2]|0)!=0?3336:3320;c[H+4>>2]=6;c[k>>2]=kq(c[G>>2]|0,c[r>>2]|0,0)|0;f=c[t>>2]|0;g=go(c[t>>2]|0,c[k>>2]|0,H)|0;c[k>>2]=Dn(f,83,g,c[s>>2]|0,0)|0;Dv(c[k>>2]|0,c[q>>2]|0);c[J>>2]=Bv(c[v>>2]|0,c[k>>2]|0,3)|0;yv(c[K>>2]|0,c[v>>2]|0,c[J>>2]|0);c[L>>2]=kq(c[G>>2]|0,c[r>>2]|0,0)|0;g=c[t>>2]|0;f=go(c[t>>2]|0,c[L>>2]|0,H)|0;c[L>>2]=Dn(g,82,f,c[m>>2]|0,0)|0;Dv(c[L>>2]|0,c[q>>2]|0);c[M>>2]=Bv(c[v>>2]|0,c[L>>2]|0,3)|0;yv(c[K>>2]|0,c[v>>2]|0,c[M>>2]|0);c[E>>2]=(c[(c[v>>2]|0)+20>>2]|0)+((c[j>>2]|0)*48|0);if((c[u>>2]|0)!=0){c[(c[(c[v>>2]|0)+20>>2]|0)+((c[J>>2]|0)*48|0)+4>>2]=c[j>>2];c[(c[(c[v>>2]|0)+20>>2]|0)+((c[M>>2]|0)*48|0)+4>>2]=c[j>>2];a[(c[E>>2]|0)+21>>0]=2}}if((Gv(c[q>>2]|0)|0)!=0?(c[T>>2]=c[c[(c[(c[q>>2]|0)+20>>2]|0)+4>>2]>>2],c[U>>2]=c[(c[(c[(c[q>>2]|0)+20>>2]|0)+4>>2]|0)+20>>2],g=Zu(c[V>>2]|0,c[T>>2]|0)|0,f=W,c[f>>2]=g,c[f+4>>2]=D,f=Zu(c[V>>2]|0,c[U>>2]|0)|0,g=X,c[g>>2]=f,c[g+4>>2]=D,g=W,f=X,(c[g>>2]&c[f>>2]|0)==0?(c[g+4>>2]&c[f+4>>2]|0)==0:0):0){f=c[t>>2]|0;c[Z>>2]=Dn(f,51,0,kq(c[G>>2]|0,c[T>>2]|0,0)|0,0)|0;c[Y>>2]=Bv(c[v>>2]|0,c[Z>>2]|0,3)|0;c[_>>2]=(c[(c[v>>2]|0)+20>>2]|0)+((c[Y>>2]|0)*48|0);f=W;g=c[f+4>>2]|0;aa=(c[_>>2]|0)+32|0;c[aa>>2]=c[f>>2];c[aa+4>>2]=g;c[(c[_>>2]|0)+8>>2]=c[(c[U>>2]|0)+28>>2];c[(c[_>>2]|0)+12>>2]=b[(c[U>>2]|0)+32>>1]|0;b[(c[_>>2]|0)+18>>1]=64;c[(c[_>>2]|0)+4>>2]=c[j>>2];c[E>>2]=(c[(c[v>>2]|0)+20>>2]|0)+((c[j>>2]|0)*48|0);a[(c[E>>2]|0)+21>>0]=1;aa=(c[E>>2]|0)+20|0;a[aa>>0]=d[aa>>0]|8;aa=(c[E>>2]|0)+40|0;g=c[aa+4>>2]|0;f=(c[_>>2]|0)+40|0;c[f>>2]=c[aa>>2];c[f+4>>2]=g}aa=z;f=(c[E>>2]|0)+32|0;h=f;g=c[h+4>>2]|c[aa+4>>2];c[f>>2]=c[h>>2]|c[aa>>2];c[f+4>>2]=g;i=I;return}function zv(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)!=75?!((c[d>>2]|0)>=79&(c[d>>2]|0)<=83):0){a=(c[d>>2]|0)==76}else{a=1}i=b;return a&1|0}function Av(a){a=a|0;var d=0,e=0,f=0;e=i;i=i+16|0;f=e;d=e+4|0;c[f>>2]=a;do{if((c[f>>2]|0)!=75){if((c[f>>2]|0)==76){b[d>>1]=128;break}else{b[d>>1]=2<<(c[f>>2]|0)-79;break}}else{b[d>>1]=1}}while(0);i=e;return b[d>>1]|0}function Bv(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+32|0;g=n+24|0;k=n+20|0;m=n+16|0;j=n+28|0;h=n+12|0;l=n+8|0;p=n+4|0;o=n;c[k>>2]=d;c[m>>2]=e;a[j>>0]=f;do{if((c[(c[k>>2]|0)+12>>2]|0)>=(c[(c[k>>2]|0)+16>>2]|0)){c[p>>2]=c[(c[k>>2]|0)+20>>2];c[o>>2]=c[c[c[c[k>>2]>>2]>>2]>>2];d=Le(c[o>>2]|0,(c[(c[k>>2]|0)+16>>2]|0)*48<<1)|0;c[(c[k>>2]|0)+20>>2]=d;if((c[(c[k>>2]|0)+20>>2]|0)!=0){dE(c[(c[k>>2]|0)+20>>2]|0,c[p>>2]|0,(c[(c[k>>2]|0)+12>>2]|0)*48|0)|0;if((c[p>>2]|0)!=((c[k>>2]|0)+24|0)){Wb(c[o>>2]|0,c[p>>2]|0)}d=((Yo(c[o>>2]|0,c[(c[k>>2]|0)+20>>2]|0)|0)>>>0)/48|0;c[(c[k>>2]|0)+16>>2]=d;break}if((a[j>>0]&1|0)!=0){hn(c[o>>2]|0,c[m>>2]|0)}c[(c[k>>2]|0)+20>>2]=c[p>>2];c[g>>2]=0;d=c[g>>2]|0;i=n;return d|0}}while(0);e=(c[k>>2]|0)+12|0;d=c[e>>2]|0;c[e>>2]=d+1;c[l>>2]=d;c[h>>2]=(c[(c[k>>2]|0)+20>>2]|0)+(d*48|0);if((c[m>>2]|0)!=0?(c[(c[m>>2]|0)+4>>2]&262144|0)!=0:0){d=c[(c[m>>2]|0)+28>>2]|0;d=((Np(d,((d|0)<0)<<31>>31)|0)<<16>>16)-99&65535;b[(c[h>>2]|0)+16>>1]=d}else{b[(c[h>>2]|0)+16>>1]=1}d=Sp(c[m>>2]|0)|0;c[c[h>>2]>>2]=d;a[(c[h>>2]|0)+20>>0]=a[j>>0]|0;c[(c[h>>2]|0)+24>>2]=c[k>>2];c[(c[h>>2]|0)+4>>2]=-1;c[g>>2]=c[l>>2];d=c[g>>2]|0;i=n;return d|0}function Cv(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+16|0;l=h+8|0;j=h+4|0;m=h+14|0;n=h+12|0;k=h;c[l>>2]=f;c[j>>2]=g;b[m>>1]=c[(c[(c[j>>2]|0)+16>>2]|0)+4>>2]&256;b[n>>1]=c[(c[(c[j>>2]|0)+12>>2]|0)+4>>2]&256;do{if((e[m>>1]|0)==(e[n>>1]|0)){if((b[m>>1]|0)!=0){n=(c[(c[j>>2]|0)+16>>2]|0)+4|0;c[n>>2]=c[n>>2]&-257;break}if((Mp(c[l>>2]|0,c[(c[j>>2]|0)+12>>2]|0)|0)!=0){n=(c[(c[j>>2]|0)+12>>2]|0)+4|0;c[n>>2]=c[n>>2]|256}}}while(0);c[k>>2]=c[(c[j>>2]|0)+16>>2];c[(c[j>>2]|0)+16>>2]=c[(c[j>>2]|0)+12>>2];c[(c[j>>2]|0)+12>>2]=c[k>>2];if((d[c[j>>2]>>0]|0)<80){i=h;return}a[c[j>>2]>>0]=((d[c[j>>2]>>0]|0)-80^2)+80;i=h;return}function Dv(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=d;if((c[f>>2]|0)==0){i=e;return}a=(c[f>>2]|0)+4|0;c[a>>2]=c[a>>2]|c[(c[g>>2]|0)+4>>2]&1;b[(c[f>>2]|0)+36>>1]=b[(c[g>>2]|0)+36>>1]|0;i=e;return}function Ev(e,f,g){e=e|0;f=f|0;g=g|0;var h=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;B=i;i=i+144|0;p=B+140|0;n=B+136|0;q=B+132|0;x=B+128|0;v=B+124|0;s=B+120|0;r=B+116|0;l=B+112|0;y=B+108|0;z=B+104|0;w=B+100|0;O=B+96|0;h=B+24|0;J=B+16|0;I=B+92|0;L=B+88|0;M=B+84|0;K=B+80|0;N=B+8|0;P=B;Q=B+76|0;A=B+72|0;F=B+68|0;C=B+64|0;E=B+60|0;H=B+56|0;G=B+52|0;u=B+48|0;m=B+44|0;t=B+40|0;k=B+36|0;o=B+32|0;c[p>>2]=e;c[n>>2]=f;c[q>>2]=g;c[x>>2]=c[c[n>>2]>>2];c[v>>2]=c[c[x>>2]>>2];c[s>>2]=c[c[v>>2]>>2];c[r>>2]=(c[(c[n>>2]|0)+20>>2]|0)+((c[q>>2]|0)*48|0);c[l>>2]=c[c[r>>2]>>2];e=ne(c[s>>2]|0,416)|0;c[O>>2]=e;c[(c[r>>2]|0)+12>>2]=e;if((c[O>>2]|0)==0){i=B;return}e=(c[r>>2]|0)+20|0;a[e>>0]=d[e>>0]|16;c[z>>2]=c[O>>2];yu(c[z>>2]|0,c[x>>2]|0);zu(c[z>>2]|0,c[l>>2]|0,71);Bu(c[p>>2]|0,c[z>>2]|0);if((a[(c[s>>2]|0)+64>>0]|0)!=0){i=B;return}e=J;c[e>>2]=-1;c[e+4>>2]=-1;e=h;c[e>>2]=-1;c[e+4>>2]=-1;c[y>>2]=(c[(c[z>>2]|0)+12>>2]|0)-1;c[w>>2]=c[(c[z>>2]|0)+20>>2];while(1){if((c[y>>2]|0)<0){break}e=J;if(!((c[e>>2]|0)!=0|(c[e+4>>2]|0)!=0)){break}do{if((b[(c[w>>2]|0)+18>>1]&255|0)==0){e=h;c[e>>2]=0;c[e+4>>2]=0;c[I>>2]=Le(c[s>>2]|0,408)|0;if((c[I>>2]|0)!=0){e=N;c[e>>2]=0;c[e+4>>2]=0;c[(c[w>>2]|0)+12>>2]=c[I>>2];e=(c[w>>2]|0)+20|0;a[e>>0]=d[e>>0]|32;b[(c[w>>2]|0)+18>>1]=512;c[L>>2]=c[I>>2];yu(c[L>>2]|0,c[c[n>>2]>>2]|0);zu(c[L>>2]|0,c[c[w>>2]>>2]|0,72);Bu(c[p>>2]|0,c[L>>2]|0);c[(c[L>>2]|0)+4>>2]=c[n>>2];a:do{if((a[(c[s>>2]|0)+64>>0]|0)==0){c[K>>2]=0;c[M>>2]=c[(c[L>>2]|0)+20>>2];while(1){if((c[K>>2]|0)>=(c[(c[L>>2]|0)+12>>2]|0)){break a}if((zv(d[c[c[M>>2]>>2]>>0]|0)|0)!=0){g=Hu((c[x>>2]|0)+68|0,c[(c[M>>2]|0)+8>>2]|0)|0;R=N;f=c[R+4>>2]|D;e=N;c[e>>2]=c[R>>2]|g;c[e+4>>2]=f}c[K>>2]=(c[K>>2]|0)+1;c[M>>2]=(c[M>>2]|0)+48}}}while(0);f=N;g=J;e=c[g+4>>2]&c[f+4>>2];R=J;c[R>>2]=c[g>>2]&c[f>>2];c[R+4>>2]=e}}else{if((a[(c[w>>2]|0)+20>>0]&8|0)==0){e=Hu((c[x>>2]|0)+68|0,c[(c[w>>2]|0)+8>>2]|0)|0;R=P;c[R>>2]=e;c[R+4>>2]=D;if((a[(c[w>>2]|0)+20>>0]&2|0)!=0){c[Q>>2]=(c[(c[z>>2]|0)+20>>2]|0)+((c[(c[w>>2]|0)+4>>2]|0)*48|0);f=Hu((c[x>>2]|0)+68|0,c[(c[Q>>2]|0)+8>>2]|0)|0;g=P;e=c[g+4>>2]|D;R=P;c[R>>2]=c[g>>2]|f;c[R+4>>2]=e}f=P;g=J;e=c[g+4>>2]&c[f+4>>2];R=J;c[R>>2]=c[g>>2]&c[f>>2];c[R+4>>2]=e;if((b[(c[w>>2]|0)+18>>1]&2|0)==0){R=h;c[R>>2]=0;c[R+4>>2]=0;break}else{f=P;g=h;e=c[g+4>>2]&c[f+4>>2];R=h;c[R>>2]=c[g>>2]&c[f>>2];c[R+4>>2]=e;break}}}}while(0);c[y>>2]=(c[y>>2]|0)+ -1;c[w>>2]=(c[w>>2]|0)+48}f=J;e=c[f+4>>2]|0;R=(c[O>>2]|0)+408|0;c[R>>2]=c[f>>2];c[R+4>>2]=e;R=J;b[(c[r>>2]|0)+18>>1]=(c[R>>2]|0)==0&(c[R+4>>2]|0)==0?0:256;R=h;if(!((c[R>>2]|0)!=0|(c[R+4>>2]|0)!=0)){i=B;return}c[A>>2]=0;c[F>>2]=-1;c[C>>2]=-1;c[E>>2]=0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=2){break}if(!((c[A>>2]|0)!=0^1)){break}c[w>>2]=c[(c[z>>2]|0)+20>>2];c[y>>2]=(c[(c[z>>2]|0)+12>>2]|0)-1;while(1){if((c[y>>2]|0)<0){break}R=(c[w>>2]|0)+20|0;a[R>>0]=d[R>>0]&-65;if((c[(c[w>>2]|0)+8>>2]|0)!=(c[C>>2]|0)?(R=h,f=c[R>>2]|0,R=c[R+4>>2]|0,e=Hu((c[x>>2]|0)+68|0,c[(c[w>>2]|0)+8>>2]|0)|0,!((f&e|0)==0&(R&D|0)==0)):0){j=30;break}c[y>>2]=(c[y>>2]|0)+ -1;c[w>>2]=(c[w>>2]|0)+48}if((j|0)==30){j=0;c[F>>2]=c[(c[w>>2]|0)+12>>2];c[C>>2]=c[(c[w>>2]|0)+8>>2]}if((c[y>>2]|0)<0){break}c[A>>2]=1;while(1){if((c[y>>2]|0)<0){break}if((c[A>>2]|0)==0){break}I=c[w>>2]|0;do{if((c[(c[w>>2]|0)+8>>2]|0)!=(c[C>>2]|0)){R=I+20|0;a[R>>0]=d[R>>0]&-65}else{if((c[I+12>>2]|0)!=(c[F>>2]|0)){c[A>>2]=0;break}c[G>>2]=(Lp(c[(c[c[w>>2]>>2]|0)+16>>2]|0)|0)<<24>>24;c[H>>2]=(Lp(c[(c[c[w>>2]>>2]|0)+12>>2]|0)|0)<<24>>24;if((c[G>>2]|0)!=0?(c[G>>2]|0)!=(c[H>>2]|0):0){c[A>>2]=0;break}R=(c[w>>2]|0)+20|0;a[R>>0]=d[R>>0]|64}}while(0);c[y>>2]=(c[y>>2]|0)+ -1;c[w>>2]=(c[w>>2]|0)+48}c[E>>2]=(c[E>>2]|0)+1}if((c[A>>2]|0)==0){i=B;return}c[m>>2]=0;c[t>>2]=0;c[y>>2]=(c[(c[z>>2]|0)+12>>2]|0)-1;c[w>>2]=c[(c[z>>2]|0)+20>>2];while(1){if((c[y>>2]|0)<0){break}if((a[(c[w>>2]|0)+20>>0]&64|0)!=0){c[u>>2]=kq(c[s>>2]|0,c[(c[c[w>>2]>>2]|0)+16>>2]|0,0)|0;c[m>>2]=Rn(c[c[x>>2]>>2]|0,c[m>>2]|0,c[u>>2]|0)|0;c[t>>2]=c[(c[c[w>>2]>>2]|0)+12>>2]}c[y>>2]=(c[y>>2]|0)+ -1;c[w>>2]=(c[w>>2]|0)+48}c[u>>2]=kq(c[s>>2]|0,c[t>>2]|0,0)|0;c[k>>2]=Dn(c[v>>2]|0,75,c[u>>2]|0,0,0)|0;if((c[k>>2]|0)!=0){Dv(c[k>>2]|0,c[l>>2]|0);c[(c[k>>2]|0)+20>>2]=c[m>>2];c[o>>2]=Bv(c[n>>2]|0,c[k>>2]|0,3)|0;yv(c[p>>2]|0,c[n>>2]|0,c[o>>2]|0);c[r>>2]=(c[(c[n>>2]|0)+20>>2]|0)+((c[q>>2]|0)*48|0);c[(c[(c[n>>2]|0)+20>>2]|0)+((c[o>>2]|0)*48|0)+4>>2]=c[q>>2];a[(c[r>>2]|0)+21>>0]=1}else{dn(c[s>>2]|0,c[m>>2]|0)}b[(c[r>>2]|0)+18>>1]=2048;i=B;return}function Fv(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;x=i;i=i+96|0;s=x+76|0;o=x+72|0;E=x+68|0;t=x+64|0;r=x+60|0;F=x+56|0;n=x+52|0;q=x+48|0;D=x+44|0;C=x+40|0;z=x+36|0;v=x+32|0;y=x+80|0;w=x+28|0;m=x+24|0;u=x+20|0;B=x+16|0;A=x+12|0;k=x+8|0;p=x+4|0;l=x;c[o>>2]=e;c[E>>2]=f;c[t>>2]=g;c[r>>2]=h;c[F>>2]=j;c[n>>2]=0;c[w>>2]=c[c[o>>2]>>2];c[m>>2]=0;if((Hv(c[w>>2]|0,c[E>>2]|0,c[F>>2]|0,y)|0)==0){c[s>>2]=0;F=c[s>>2]|0;i=x;return F|0}c[C>>2]=c[(c[E>>2]|0)+20>>2];c[D>>2]=c[(c[(c[C>>2]|0)+4>>2]|0)+20>>2];if(((d[c[D>>2]>>0]|0)==154?((Lp(c[D>>2]|0)|0)<<24>>24|0)==97:0)?(a[(c[(c[D>>2]|0)+44>>2]|0)+44>>0]&16|0)==0:0){c[q>>2]=Sp(c[c[(c[C>>2]|0)+4>>2]>>2]|0)|0;c[u>>2]=d[c[q>>2]>>0]|0;if((c[u>>2]|0)!=135){if((c[u>>2]|0)==97){c[n>>2]=c[(c[q>>2]|0)+8>>2]}}else{c[B>>2]=c[(c[o>>2]|0)+476>>2];c[A>>2]=b[(c[q>>2]|0)+32>>1]|0;c[m>>2]=Iv(c[B>>2]|0,c[A>>2]|0,98)|0;if((c[m>>2]|0)!=0?(Kd(c[m>>2]|0)|0)==3:0){c[n>>2]=Bd(c[m>>2]|0)|0}Jv(c[(c[o>>2]|0)+8>>2]|0,c[A>>2]|0)}do{if((c[n>>2]|0)!=0){c[v>>2]=0;while(1){F=a[(c[n>>2]|0)+(c[v>>2]|0)>>0]|0;c[z>>2]=F;if(((F|0)!=0?(c[z>>2]|0)!=(a[y>>0]|0):0)?(c[z>>2]|0)!=(a[y+1>>0]|0):0){A=(c[z>>2]|0)!=(a[y+2>>0]|0)}else{A=0}j=c[v>>2]|0;if(!A){break}c[v>>2]=j+1}if((j|0)!=0?255!=(d[(c[n>>2]|0)+((c[v>>2]|0)-1)>>0]|0):0){if((c[z>>2]|0)==(a[y>>0]|0)){y=(a[(c[n>>2]|0)+((c[v>>2]|0)+1)>>0]|0)==0}else{y=0}c[c[r>>2]>>2]=y&1;c[k>>2]=Un(c[w>>2]|0,97,c[n>>2]|0)|0;if((c[k>>2]|0)!=0){a[(c[(c[k>>2]|0)+8>>2]|0)+(c[v>>2]|0)>>0]=0}c[c[t>>2]>>2]=c[k>>2];if((c[u>>2]|0)!=135){break}c[p>>2]=c[(c[o>>2]|0)+8>>2];Jv(c[p>>2]|0,b[(c[q>>2]|0)+32>>1]|0);if((c[c[r>>2]>>2]|0)==0){break}if((a[(c[(c[q>>2]|0)+8>>2]|0)+1>>0]|0)==0){break}c[l>>2]=Zo(c[o>>2]|0)|0;zs(c[o>>2]|0,c[q>>2]|0,c[l>>2]|0)|0;F=c[p>>2]|0;Xe(F,(vr(c[p>>2]|0)|0)-1|0,0);_o(c[o>>2]|0,c[l>>2]|0);break}c[n>>2]=0}}while(0);pf(c[m>>2]|0);c[s>>2]=(c[n>>2]|0)!=0&1;F=c[s>>2]|0;i=x;return F|0}c[s>>2]=0;F=c[s>>2]|0;i=x;return F|0}function Gv(a){a=a|0;var b=0,e=0,f=0,g=0;e=i;i=i+16|0;b=e+8|0;g=e+4|0;f=e;c[g>>2]=a;do{if((d[c[g>>2]>>0]|0|0)==153){if((vc(c[(c[g>>2]|0)+8>>2]|0,21368)|0)!=0){c[b>>2]=0;break}c[f>>2]=c[(c[g>>2]|0)+20>>2];if((c[c[f>>2]>>2]|0)!=2){c[b>>2]=0;break}if((d[c[(c[(c[f>>2]|0)+4>>2]|0)+20>>2]>>0]|0|0)!=154){c[b>>2]=0;break}else{c[b>>2]=1;break}}else{c[b>>2]=0}}while(0);i=e;return c[b>>2]|0}function Hv(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+32|0;k=n+20|0;p=n+16|0;o=n+12|0;l=n+8|0;j=n+4|0;m=n;c[p>>2]=e;c[o>>2]=f;c[l>>2]=g;c[j>>2]=h;if(((d[c[o>>2]>>0]|0|0)==153?(c[(c[o>>2]|0)+20>>2]|0)!=0:0)?(c[c[(c[o>>2]|0)+20>>2]>>2]|0)==2:0){f=c[p>>2]|0;e=c[(c[o>>2]|0)+8>>2]|0;c[m>>2]=Of(f,e,Mb(c[(c[o>>2]|0)+8>>2]|0)|0,2,1,0)|0;if((c[m>>2]|0)!=0?(b[(c[m>>2]|0)+2>>1]&4|0)!=0:0){e=c[j>>2]|0;f=c[(c[m>>2]|0)+4>>2]|0;a[e+0>>0]=a[f+0>>0]|0;a[e+1>>0]=a[f+1>>0]|0;a[e+2>>0]=a[f+2>>0]|0;c[c[l>>2]>>2]=(b[(c[m>>2]|0)+2>>1]&8|0)==0&1;c[k>>2]=1;e=c[k>>2]|0;i=n;return e|0}c[k>>2]=0;e=c[k>>2]|0;i=n;return e|0}c[k>>2]=0;e=c[k>>2]|0;i=n;return e|0}function Iv(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;l=m+16|0;k=m+12|0;n=m+8|0;j=m+20|0;h=m+4|0;g=m;c[k>>2]=d;c[n>>2]=e;a[j>>0]=f;if((c[k>>2]|0)!=0?(c[h>>2]=(c[(c[k>>2]|0)+60>>2]|0)+(((c[n>>2]|0)-1|0)*40|0),0==(b[(c[h>>2]|0)+28>>1]&1|0)):0){c[g>>2]=nf(c[c[k>>2]>>2]|0)|0;if((c[g>>2]|0)!=0){Yd(c[g>>2]|0,c[h>>2]|0)|0;pp(c[g>>2]|0,a[j>>0]|0,1)}c[l>>2]=c[g>>2];d=c[l>>2]|0;i=m;return d|0}c[l>>2]=0;d=c[l>>2]|0;i=m;return d|0}function Jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)>32){c[(c[e>>2]|0)+188>>2]=-1;i=d;return}else{a=(c[e>>2]|0)+188|0;c[a>>2]=c[a>>2]|1<<(c[f>>2]|0)-1;i=d;return}}function Kv(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l;k=l+24|0;h=l+20|0;m=l+16|0;g=l+12|0;j=l+8|0;c[k>>2]=a;c[h>>2]=d;c[m>>2]=e;e=c[c[k>>2]>>2]|0;d=c[c[m>>2]>>2]|0;if((b[(c[m>>2]|0)+36>>1]|0)>=0){m=c[(c[(c[m>>2]|0)+4>>2]|0)+((b[(c[m>>2]|0)+36>>1]|0)*24|0)>>2]|0;c[f>>2]=d;c[f+4>>2]=m;c[g>>2]=Oe(e,17352,f)|0;c[j>>2]=1555;m=c[k>>2]|0;e=c[j>>2]|0;d=c[h>>2]|0;a=c[g>>2]|0;bs(m,e,d,a,-1,2);i=l;return}else{c[f>>2]=d;c[g>>2]=Oe(e,24288,f)|0;c[j>>2]=2579;m=c[k>>2]|0;e=c[j>>2]|0;d=c[h>>2]|0;a=c[g>>2]|0;bs(m,e,d,a,-1,2);i=l;return}}function Lv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+20|0;n=f+16|0;j=f+12|0;l=f+8|0;m=f+4|0;k=f;c[n>>2]=a;c[j>>2]=b;c[l>>2]=d;c[m>>2]=e;a:do{if((c[(c[c[n>>2]>>2]|0)+24>>2]&524288|0)!=0){e=c[j>>2]|0;if((c[l>>2]|0)==0){if((Cp(e)|0)!=0){h=1}else{h=(c[(c[j>>2]|0)+16>>2]|0)!=0}c[g>>2]=h&1;n=c[g>>2]|0;i=f;return n|0}c[k>>2]=c[e+16>>2];while(1){e=c[j>>2]|0;if((c[k>>2]|0)==0){break}if((iu(e,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)!=0){h=9;break}c[k>>2]=c[(c[k>>2]|0)+4>>2]}if((h|0)==9){c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}c[k>>2]=Cp(e)|0;while(1){if((c[k>>2]|0)==0){break a}if((ku(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)!=0){break}c[k>>2]=c[(c[k>>2]|0)+12>>2]}c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}}while(0);c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}function Mv(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;b=c[f>>2]|0;if((c[(c[f>>2]|0)+408>>2]|0)!=0){b=c[b+408>>2]|0}c[e>>2]=b;a[(c[e>>2]|0)+20>>0]=1;i=d;return}function Nv(e,f,g,h,j,k,l,m,n,o){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;x=i;i=i+64|0;D=x+44|0;r=x+40|0;t=x+36|0;y=x+32|0;z=x+28|0;C=x+24|0;p=x+48|0;A=x+53|0;u=x+52|0;H=x+51|0;w=x+20|0;s=x+16|0;v=x+12|0;B=x+50|0;G=x+8|0;F=x+4|0;E=x;c[D>>2]=e;c[r>>2]=f;c[t>>2]=g;c[y>>2]=h;c[z>>2]=j;c[C>>2]=k;b[p>>1]=l;a[A>>0]=m;a[u>>0]=n;a[H>>0]=o;c[w>>2]=c[(c[D>>2]|0)+8>>2];c[s>>2]=0;c[v>>2]=fs(c[w>>2]|0)|0;a[B>>0]=(a[(c[r>>2]|0)+44>>0]&32|0)==0?67:65;if((a[H>>0]|0)==0){Re(c[w>>2]|0,d[B>>0]|0,c[y>>2]|0,c[v>>2]|0,c[C>>2]|0,b[p>>1]|0)|0}if(!((Lv(c[D>>2]|0,c[r>>2]|0,0,0)|0)==0?(c[t>>2]|0)==0:0)){c[G>>2]=Pv(c[D>>2]|0,c[t>>2]|0,0,0,3,c[r>>2]|0,d[u>>0]|0)|0;H=Qv(c[D>>2]|0,c[r>>2]|0)|0;c[G>>2]=c[G>>2]|H;c[s>>2]=(c[(c[D>>2]|0)+72>>2]|0)+1;H=(c[D>>2]|0)+72|0;c[H>>2]=(c[H>>2]|0)+(1+(b[(c[r>>2]|0)+38>>1]|0));To(c[w>>2]|0,33,c[C>>2]|0,c[s>>2]|0)|0;c[F>>2]=0;while(1){if((c[F>>2]|0)>=(b[(c[r>>2]|0)+38>>1]|0)){break}if(!((c[G>>2]|0)==-1)){if((c[F>>2]|0)<=31?(c[G>>2]&1<>2]|0)!=0:0){q=10}}else{q=10}if((q|0)==10){q=0;js(c[w>>2]|0,c[r>>2]|0,c[y>>2]|0,c[F>>2]|0,(c[s>>2]|0)+(c[F>>2]|0)+1|0)}c[F>>2]=(c[F>>2]|0)+1}c[E>>2]=vr(c[w>>2]|0)|0;au(c[D>>2]|0,c[t>>2]|0,109,0,1,c[r>>2]|0,c[s>>2]|0,d[u>>0]|0,c[v>>2]|0);H=c[E>>2]|0;if((H|0)<(vr(c[w>>2]|0)|0)){Re(c[w>>2]|0,d[B>>0]|0,c[y>>2]|0,c[v>>2]|0,c[C>>2]|0,b[p>>1]|0)|0}fu(c[D>>2]|0,c[r>>2]|0,c[s>>2]|0,0,0,0)}if((c[(c[r>>2]|0)+12>>2]|0)!=0){g=c[D>>2]|0;h=c[r>>2]|0;j=c[s>>2]|0;Rv(g,h,0,j,0,0);j=c[D>>2]|0;h=c[t>>2]|0;g=c[r>>2]|0;f=c[s>>2]|0;H=a[u>>0]|0;H=H&255;e=c[v>>2]|0;au(j,h,109,0,2,g,f,H,e);e=c[w>>2]|0;H=c[v>>2]|0;cs(e,H);i=x;return}Ov(c[D>>2]|0,c[r>>2]|0,c[y>>2]|0,c[z>>2]|0,0);To(c[w>>2]|0,74,c[y>>2]|0,(d[A>>0]|0)!=0?1:0)|0;if((a[A>>0]|0)==0){g=c[D>>2]|0;h=c[r>>2]|0;j=c[s>>2]|0;Rv(g,h,0,j,0,0);j=c[D>>2]|0;h=c[t>>2]|0;g=c[r>>2]|0;f=c[s>>2]|0;H=a[u>>0]|0;H=H&255;e=c[v>>2]|0;au(j,h,109,0,2,g,f,H,e);e=c[w>>2]|0;H=c[v>>2]|0;cs(e,H);i=x;return}Ye(c[w>>2]|0,-1,c[c[r>>2]>>2]|0,0);g=c[D>>2]|0;h=c[r>>2]|0;j=c[s>>2]|0;Rv(g,h,0,j,0,0);j=c[D>>2]|0;h=c[t>>2]|0;g=c[r>>2]|0;f=c[s>>2]|0;H=a[u>>0]|0;H=H&255;e=c[v>>2]|0;au(j,h,109,0,2,g,f,H,e);e=c[w>>2]|0;H=c[v>>2]|0;cs(e,H);i=x;return}function Ov(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;v=i;i=i+48|0;m=v+44|0;x=v+40|0;o=v+36|0;w=v+32|0;t=v+28|0;u=v+24|0;r=v+20|0;p=v+16|0;n=v+12|0;q=v+8|0;k=v+4|0;s=v;c[m>>2]=e;c[x>>2]=f;c[o>>2]=g;c[w>>2]=h;c[t>>2]=j;c[r>>2]=-1;c[q>>2]=0;c[k>>2]=c[(c[m>>2]|0)+8>>2];if((a[(c[x>>2]|0)+44>>0]&32|0)==0){j=0}else{j=Gr(c[x>>2]|0)|0}c[s>>2]=j;c[u>>2]=0;c[n>>2]=c[(c[x>>2]|0)+8>>2];while(1){if((c[n>>2]|0)==0){break}if(!((c[t>>2]|0)!=0?(c[(c[t>>2]|0)+(c[u>>2]<<2)>>2]|0)==0:0)){l=7}if((l|0)==7?(l=0,(c[n>>2]|0)!=(c[s>>2]|0)):0){c[r>>2]=Zr(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,0,1,p,c[q>>2]|0,c[r>>2]|0)|0;x=c[n>>2]|0;if(((d[(c[n>>2]|0)+55>>0]|0)>>>3&1|0)!=0){x=b[x+50>>1]|0}else{x=b[x+52>>1]|0}Wo(c[k>>2]|0,108,(c[w>>2]|0)+(c[u>>2]|0)|0,c[r>>2]|0,x&65535)|0;_r(c[m>>2]|0,c[p>>2]|0);c[q>>2]=c[n>>2]}c[u>>2]=(c[u>>2]|0)+1;c[n>>2]=c[(c[n>>2]|0)+20>>2]}i=v;return}function Pv(a,b,e,f,g,h,j){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;s=i;i=i+48|0;o=s+40|0;v=s+36|0;k=s+32|0;n=s+28|0;u=s+24|0;q=s+20|0;r=s+16|0;t=s+12|0;l=s+8|0;p=s+4|0;m=s;c[o>>2]=a;c[v>>2]=b;c[k>>2]=e;c[n>>2]=f;c[u>>2]=g;c[q>>2]=h;c[r>>2]=j;c[t>>2]=(c[k>>2]|0)!=0?110:109;c[l>>2]=0;c[p>>2]=c[v>>2];while(1){if((c[p>>2]|0)==0){break}if((((d[(c[p>>2]|0)+8>>0]|0|0)==(c[t>>2]|0)?(c[u>>2]&(d[(c[p>>2]|0)+9>>0]|0)|0)!=0:0)?(Jw(c[(c[p>>2]|0)+16>>2]|0,c[k>>2]|0)|0)!=0:0)?(c[m>>2]=Uv(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0)|0,(c[m>>2]|0)!=0):0){c[l>>2]=c[l>>2]|c[(c[m>>2]|0)+16+(c[n>>2]<<2)>>2]}c[p>>2]=c[(c[p>>2]|0)+32>>2]}i=s;return c[l>>2]|0}function Qv(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;j=k+20|0;f=k+16|0;g=k+12|0;l=k+8|0;m=k+4|0;h=k;c[j>>2]=a;c[f>>2]=d;c[g>>2]=0;if((c[(c[c[j>>2]>>2]|0)+24>>2]&524288|0)==0){a=c[g>>2]|0;i=k;return a|0}c[l>>2]=c[(c[f>>2]|0)+16>>2];while(1){if((c[l>>2]|0)==0){break}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[l>>2]|0)+20>>2]|0)){break}if((c[(c[l>>2]|0)+36+(c[m>>2]<<3)>>2]|0)>31){d=-1}else{d=1<>2]|0)+36+(c[m>>2]<<3)>>2]}c[g>>2]=c[g>>2]|d;c[m>>2]=(c[m>>2]|0)+1}c[l>>2]=c[(c[l>>2]|0)+4>>2]}c[l>>2]=Cp(c[f>>2]|0)|0;while(1){if((c[l>>2]|0)==0){break}c[h>>2]=0;It(c[j>>2]|0,c[f>>2]|0,c[l>>2]|0,h,0)|0;a:do{if((c[h>>2]|0)!=0){c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[(c[h>>2]|0)+50>>1]|0)){break a}if((b[(c[(c[h>>2]|0)+4>>2]|0)+(c[m>>2]<<1)>>1]|0)>31){d=-1}else{d=1<>2]|0)+4>>2]|0)+(c[m>>2]<<1)>>1]}c[g>>2]=c[g>>2]|d;c[m>>2]=(c[m>>2]|0)+1}}}while(0);c[l>>2]=c[(c[l>>2]|0)+12>>2]}a=c[g>>2]|0;i=k;return a|0}function Rv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+32|0;k=q+28|0;m=q+24|0;p=q+20|0;n=q+16|0;h=q+12|0;r=q+8|0;o=q+4|0;l=q;c[k>>2]=a;c[m>>2]=b;c[p>>2]=d;c[n>>2]=e;c[h>>2]=f;c[r>>2]=g;if((c[(c[c[k>>2]>>2]|0)+24>>2]&524288|0)==0){i=q;return}c[o>>2]=Cp(c[m>>2]|0)|0;while(1){if((c[o>>2]|0)==0){break}if(!((c[h>>2]|0)!=0?(ku(c[m>>2]|0,c[o>>2]|0,c[h>>2]|0,c[r>>2]|0)|0)==0:0)){j=6}if((j|0)==6?(j=0,c[l>>2]=Sv(c[k>>2]|0,c[m>>2]|0,c[o>>2]|0,c[p>>2]|0)|0,(c[l>>2]|0)!=0):0){Tv(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,2,0)}c[o>>2]=c[(c[o>>2]|0)+12>>2]}i=q;return}function Sv(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;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,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;q=i;i=i+144|0;l=q+136|0;w=q+132|0;r=q+128|0;j=q+124|0;p=q+120|0;D=q+116|0;C=q+112|0;n=q+108|0;m=q+104|0;B=q+140|0;y=q+100|0;x=q+96|0;L=q+92|0;E=q+88|0;o=q+84|0;t=q+80|0;u=q+76|0;v=q+72|0;M=q+68|0;H=q+64|0;F=q+56|0;s=q+48|0;K=q+40|0;G=q+32|0;J=q+28|0;I=q+24|0;N=q+20|0;O=q+16|0;A=q+8|0;z=q;c[w>>2]=e;c[r>>2]=f;c[j>>2]=g;c[p>>2]=h;c[D>>2]=c[c[w>>2]>>2];c[m>>2]=(c[p>>2]|0)!=0&1;c[C>>2]=d[(c[j>>2]|0)+25+(c[m>>2]|0)>>0]|0;c[n>>2]=c[(c[j>>2]|0)+28+(c[m>>2]<<2)>>2];if((c[C>>2]|0)!=0?(c[n>>2]|0)==0:0){c[L>>2]=0;c[E>>2]=0;c[o>>2]=0;c[t>>2]=0;c[u>>2]=0;c[v>>2]=0;c[H>>2]=0;if((It(c[w>>2]|0,c[r>>2]|0,c[j>>2]|0,L,E)|0)!=0){c[l>>2]=0;e=c[l>>2]|0;i=q;return e|0}c[M>>2]=0;while(1){if((c[M>>2]|0)>=(c[(c[j>>2]|0)+20>>2]|0)){break}c[F+0>>2]=c[24232>>2];c[F+4>>2]=c[24236>>2];c[s+0>>2]=c[24240>>2];c[s+4>>2]=c[24244>>2];if((c[E>>2]|0)!=0){h=c[(c[E>>2]|0)+(c[M>>2]<<2)>>2]|0}else{h=c[(c[j>>2]|0)+36>>2]|0}c[J>>2]=h;if((c[L>>2]|0)!=0){h=c[(c[(c[r>>2]|0)+4>>2]|0)+((b[(c[(c[L>>2]|0)+4>>2]|0)+(c[M>>2]<<1)>>1]|0)*24|0)>>2]|0}else{h=24248}c[G>>2]=h;c[K>>2]=c[(c[(c[c[j>>2]>>2]|0)+4>>2]|0)+((c[J>>2]|0)*24|0)>>2];c[G+4>>2]=Mb(c[G>>2]|0)|0;c[K+4>>2]=Mb(c[K>>2]|0)|0;f=c[w>>2]|0;g=c[w>>2]|0;e=Dn(c[w>>2]|0,27,0,0,F)|0;e=Dn(g,122,e,Dn(c[w>>2]|0,27,0,0,G)|0,0)|0;c[I>>2]=Dn(f,79,e,Dn(c[w>>2]|0,27,0,0,K)|0,0)|0;c[t>>2]=Xq(c[D>>2]|0,c[t>>2]|0,c[I>>2]|0)|0;if((c[p>>2]|0)!=0){h=c[w>>2]|0;f=c[w>>2]|0;g=Dn(c[w>>2]|0,27,0,0,F)|0;g=Dn(f,122,g,Dn(c[w>>2]|0,27,0,0,G)|0,0)|0;f=c[w>>2]|0;e=Dn(c[w>>2]|0,27,0,0,s)|0;c[I>>2]=Dn(h,73,g,Dn(f,122,e,Dn(c[w>>2]|0,27,0,0,G)|0,0)|0,0)|0;c[H>>2]=Xq(c[D>>2]|0,c[H>>2]|0,c[I>>2]|0)|0}do{if((c[C>>2]|0)!=6){if((c[C>>2]|0)==9?(c[p>>2]|0)==0:0){break}do{if((c[C>>2]|0)!=9){if((c[C>>2]|0)!=8){c[N>>2]=Dn(c[w>>2]|0,101,0,0,0)|0;break}c[O>>2]=c[(c[(c[c[j>>2]>>2]|0)+4>>2]|0)+((c[J>>2]|0)*24|0)+4>>2];if((c[O>>2]|0)!=0){c[N>>2]=kq(c[D>>2]|0,c[O>>2]|0,0)|0;break}else{c[N>>2]=Dn(c[w>>2]|0,101,0,0,0)|0;break}}else{f=c[w>>2]|0;e=Dn(c[w>>2]|0,27,0,0,s)|0;c[N>>2]=Dn(f,122,e,Dn(c[w>>2]|0,27,0,0,G)|0,0)|0}}while(0);c[u>>2]=Rn(c[w>>2]|0,c[u>>2]|0,c[N>>2]|0)|0;Sn(c[w>>2]|0,c[u>>2]|0,K,0)}}while(0);c[M>>2]=(c[M>>2]|0)+1}Wb(c[D>>2]|0,c[E>>2]|0);c[y>>2]=c[c[c[j>>2]>>2]>>2];c[x>>2]=Mb(c[y>>2]|0)|0;if((c[C>>2]|0)==6){c[A>>2]=c[y>>2];c[A+4>>2]=c[x>>2];c[z>>2]=Un(c[D>>2]|0,57,24256)|0;if((c[z>>2]|0)!=0){a[(c[z>>2]|0)+1>>0]=2}g=c[w>>2]|0;f=Rn(c[w>>2]|0,0,c[z>>2]|0)|0;e=Xn(c[D>>2]|0,0,A,0)|0;c[v>>2]=Qn(g,f,e,c[t>>2]|0,0,0,0,0,0,0)|0;c[t>>2]=0}a[B>>0]=a[(c[D>>2]|0)+242>>0]|0;a[(c[D>>2]|0)+242>>0]=0;c[n>>2]=ne(c[D>>2]|0,77+(c[x>>2]|0)|0)|0;if((c[n>>2]|0)!=0?(e=(c[n>>2]|0)+36|0,c[(c[n>>2]|0)+28>>2]=e,c[o>>2]=e,c[(c[o>>2]|0)+12>>2]=(c[o>>2]|0)+40,c[(c[o>>2]|0)+16>>2]=c[x>>2],dE(c[(c[o>>2]|0)+12>>2]|0,c[y>>2]|0,c[x>>2]|0)|0,e=kq(c[D>>2]|0,c[t>>2]|0,1)|0,c[(c[o>>2]|0)+20>>2]=e,e=sq(c[D>>2]|0,c[u>>2]|0,1)|0,c[(c[o>>2]|0)+24>>2]=e,e=Ep(c[D>>2]|0,c[v>>2]|0,1)|0,c[(c[o>>2]|0)+8>>2]=e,(c[H>>2]|0)!=0):0){c[H>>2]=Dn(c[w>>2]|0,19,c[H>>2]|0,0,0)|0;e=kq(c[D>>2]|0,c[H>>2]|0,1)|0;c[(c[n>>2]|0)+12>>2]=e}a[(c[D>>2]|0)+242>>0]=a[B>>0]|0;hn(c[D>>2]|0,c[t>>2]|0);hn(c[D>>2]|0,c[H>>2]|0);dn(c[D>>2]|0,c[u>>2]|0);en(c[D>>2]|0,c[v>>2]|0);if((d[(c[D>>2]|0)+64>>0]|0)==1){Iw(c[D>>2]|0,c[n>>2]|0);c[l>>2]=0;e=c[l>>2]|0;i=q;return e|0}s=c[C>>2]|0;if((s|0)==6){a[c[o>>2]>>0]=119}else if((s|0)==9?(c[p>>2]|0)==0:0){a[c[o>>2]>>0]=109}else{k=39}if((k|0)==39){a[c[o>>2]>>0]=110}c[(c[o>>2]|0)+4>>2]=c[n>>2];c[(c[n>>2]|0)+20>>2]=c[(c[r>>2]|0)+68>>2];c[(c[n>>2]|0)+24>>2]=c[(c[r>>2]|0)+68>>2];c[(c[j>>2]|0)+28+(c[m>>2]<<2)>>2]=c[n>>2];a[(c[n>>2]|0)+8>>0]=(c[p>>2]|0)!=0?110:109}c[l>>2]=c[n>>2];e=c[l>>2]|0;i=q;return e|0}function Tv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=i;i=i+48|0;n=o+32|0;p=o+28|0;r=o+24|0;l=o+20|0;q=o+16|0;m=o+12|0;k=o+8|0;h=o+4|0;j=o;c[n>>2]=a;c[p>>2]=b;c[r>>2]=d;c[l>>2]=e;c[q>>2]=f;c[m>>2]=g;c[k>>2]=Ro(c[n>>2]|0)|0;c[h>>2]=Uv(c[n>>2]|0,c[p>>2]|0,c[r>>2]|0,c[q>>2]|0)|0;if((c[h>>2]|0)==0){i=o;return}if((c[c[p>>2]>>2]|0)!=0){g=0==(c[(c[c[n>>2]>>2]|0)+24>>2]&262144|0)}else{g=0}c[j>>2]=g&1;b=c[k>>2]|0;a=c[l>>2]|0;q=c[m>>2]|0;d=(c[n>>2]|0)+72|0;r=(c[d>>2]|0)+1|0;c[d>>2]=r;Wo(b,128,a,q,r)|0;Ye(c[k>>2]|0,-1,c[(c[h>>2]|0)+8>>2]|0,-18);Se(c[k>>2]|0,c[j>>2]&255);i=o;return}function Uv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;f=g+8|0;m=g+4|0;l=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[f>>2]=e;e=c[h>>2]|0;if((c[(c[h>>2]|0)+408>>2]|0)!=0){e=c[e+408>>2]|0}c[m>>2]=e;c[l>>2]=c[(c[m>>2]|0)+528>>2];while(1){if((c[l>>2]|0)==0){break}if((c[c[l>>2]>>2]|0)==(c[j>>2]|0)?(c[(c[l>>2]|0)+12>>2]|0)==(c[f>>2]|0):0){break}c[l>>2]=c[(c[l>>2]|0)+4>>2]}if((c[l>>2]|0)!=0){a=c[l>>2]|0;i=g;return a|0}c[l>>2]=Vv(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[f>>2]|0)|0;a=c[l>>2]|0;i=g;return a|0}function Vv(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;q=i;i=i+96|0;j=q;s=q+84|0;w=q+80|0;l=q+76|0;u=q+72|0;p=q+68|0;v=q+64|0;k=q+60|0;t=q+56|0;m=q+52|0;r=q+48|0;n=q+16|0;x=q+12|0;o=q+8|0;h=q+4|0;c[w>>2]=b;c[l>>2]=e;c[u>>2]=f;c[p>>2]=g;g=c[w>>2]|0;if((c[(c[w>>2]|0)+408>>2]|0)!=0){g=c[g+408>>2]|0}c[v>>2]=g;c[k>>2]=c[c[w>>2]>>2];c[m>>2]=0;c[x>>2]=0;c[h>>2]=0;c[t>>2]=ne(c[k>>2]|0,24)|0;if((c[t>>2]|0)==0){c[s>>2]=0;b=c[s>>2]|0;i=q;return b|0}c[(c[t>>2]|0)+4>>2]=c[(c[v>>2]|0)+528>>2];c[(c[v>>2]|0)+528>>2]=c[t>>2];b=ne(c[k>>2]|0,28)|0;c[x>>2]=b;c[(c[t>>2]|0)+8>>2]=b;if((c[x>>2]|0)==0){c[s>>2]=0;b=c[s>>2]|0;i=q;return b|0}Wv(c[(c[v>>2]|0)+8>>2]|0,c[x>>2]|0);c[c[t>>2]>>2]=c[l>>2];c[(c[t>>2]|0)+12>>2]=c[p>>2];c[(c[t>>2]|0)+16>>2]=-1;c[(c[t>>2]|0)+20>>2]=-1;c[o>>2]=ne(c[k>>2]|0,536)|0;if((c[o>>2]|0)==0){c[s>>2]=0;b=c[s>>2]|0;i=q;return b|0}c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[n+16>>2]=0;c[n+20>>2]=0;c[n+24>>2]=0;c[n+28>>2]=0;c[n>>2]=c[o>>2];c[c[o>>2]>>2]=c[k>>2];c[(c[o>>2]|0)+412>>2]=c[u>>2];c[(c[o>>2]|0)+408>>2]=c[v>>2];c[(c[o>>2]|0)+492>>2]=c[c[l>>2]>>2];a[(c[o>>2]|0)+436>>0]=a[(c[l>>2]|0)+8>>0]|0;c[(c[o>>2]|0)+424>>2]=c[(c[w>>2]|0)+424>>2];c[r>>2]=Ro(c[o>>2]|0)|0;if((c[r>>2]|0)!=0){e=c[r>>2]|0;b=c[k>>2]|0;c[j>>2]=c[c[l>>2]>>2];Ye(e,-1,Oe(b,24032,j)|0,-1);if((c[(c[l>>2]|0)+12>>2]|0)!=0){c[m>>2]=kq(c[k>>2]|0,c[(c[l>>2]|0)+12>>2]|0,0)|0;if(0==(eq(n,c[m>>2]|0)|0)?(d[(c[k>>2]|0)+64>>0]|0|0)==0:0){c[h>>2]=fs(c[r>>2]|0)|0;hs(c[o>>2]|0,c[m>>2]|0,c[h>>2]|0,8)}hn(c[k>>2]|0,c[m>>2]|0)}Xv(c[o>>2]|0,c[(c[l>>2]|0)+28>>2]|0,c[p>>2]|0)|0;if((c[h>>2]|0)!=0){cs(c[r>>2]|0,c[h>>2]|0)}$o(c[r>>2]|0,24)|0;Yv(c[w>>2]|0,c[o>>2]|0);if((d[(c[k>>2]|0)+64>>0]|0|0)==0){b=Zv(c[r>>2]|0,(c[x>>2]|0)+4|0,(c[v>>2]|0)+392|0)|0;c[c[x>>2]>>2]=b}c[(c[x>>2]|0)+8>>2]=c[(c[o>>2]|0)+72>>2];c[(c[x>>2]|0)+12>>2]=c[(c[o>>2]|0)+68>>2];c[(c[x>>2]|0)+16>>2]=c[(c[o>>2]|0)+80>>2];c[(c[x>>2]|0)+20>>2]=c[l>>2];c[(c[t>>2]|0)+16>>2]=c[(c[o>>2]|0)+428>>2];c[(c[t>>2]|0)+20>>2]=c[(c[o>>2]|0)+432>>2];bn(c[r>>2]|0)}$e(c[o>>2]|0);Wb(c[k>>2]|0,c[o>>2]|0);c[s>>2]=c[t>>2];b=c[s>>2]|0;i=q;return b|0}function Wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[f>>2]|0)+24>>2]=c[(c[e>>2]|0)+192>>2];c[(c[e>>2]|0)+192>>2]=c[f>>2];i=d;return}function Xv(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;k=m+44|0;p=m+40|0;o=m+36|0;j=m+32|0;h=m+28|0;l=m+24|0;n=m+4|0;g=m;c[k>>2]=b;c[p>>2]=e;c[o>>2]=f;c[h>>2]=c[(c[k>>2]|0)+8>>2];c[l>>2]=c[c[k>>2]>>2];c[j>>2]=c[p>>2];while(1){if((c[j>>2]|0)==0){break}if((c[o>>2]|0)==10){f=a[(c[j>>2]|0)+1>>0]|0}else{f=c[o>>2]&255}a[(c[k>>2]|0)+437>>0]=f&255;f=d[c[j>>2]>>0]|0;if((f|0)==108){f=c[k>>2]|0;e=Hw(c[k>>2]|0,c[j>>2]|0)|0;b=Ep(c[l>>2]|0,c[(c[j>>2]|0)+8>>2]|0,0)|0;p=hr(c[l>>2]|0,c[(c[j>>2]|0)+28>>2]|0)|0;bo(f,e,b,p,d[(c[k>>2]|0)+437>>0]|0)}else if((f|0)==109){b=c[k>>2]|0;p=Hw(c[k>>2]|0,c[j>>2]|0)|0;_n(b,p,kq(c[l>>2]|0,c[(c[j>>2]|0)+20>>2]|0,0)|0)}else if((f|0)==110){f=c[k>>2]|0;e=Hw(c[k>>2]|0,c[j>>2]|0)|0;b=sq(c[l>>2]|0,c[(c[j>>2]|0)+24>>2]|0,0)|0;p=kq(c[l>>2]|0,c[(c[j>>2]|0)+20>>2]|0,0)|0;ao(f,e,b,p,d[(c[k>>2]|0)+437>>0]|0)}else{c[g>>2]=Ep(c[l>>2]|0,c[(c[j>>2]|0)+8>>2]|0,0)|0;Ks(n,4,0);On(c[k>>2]|0,c[g>>2]|0,n)|0;en(c[l>>2]|0,c[g>>2]|0)}if((d[c[j>>2]>>0]|0|0)!=119){$o(c[h>>2]|0,75)|0}c[j>>2]=c[(c[j>>2]|0)+32>>2]}i=m;return 0}function Yv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=c[f>>2]|0;if((c[(c[e>>2]|0)+64>>2]|0)==0){c[(c[e>>2]|0)+4>>2]=c[b+4>>2];c[(c[e>>2]|0)+64>>2]=c[(c[f>>2]|0)+64>>2];i=d;return}else{Wb(c[b>>2]|0,c[(c[f>>2]|0)+4>>2]|0);i=d;return}}function Zv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;e=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[e>>2]=c[(c[g>>2]|0)+4>>2];_v(c[g>>2]|0,c[j>>2]|0);c[c[h>>2]>>2]=c[(c[g>>2]|0)+32>>2];c[(c[g>>2]|0)+4>>2]=0;i=f;return c[e>>2]|0}function _v(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=i;i=i+48|0;n=m+28|0;l=m+24|0;r=m+20|0;k=m+16|0;o=m+12|0;j=m+8|0;g=m+4|0;p=m+32|0;q=m;c[n>>2]=e;c[l>>2]=f;c[k>>2]=c[c[l>>2]>>2];c[j>>2]=c[(c[n>>2]|0)+24>>2];c[g>>2]=c[(c[j>>2]|0)+112>>2];e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-257|256;e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-513;c[o>>2]=c[(c[n>>2]|0)+4>>2];c[r>>2]=(c[(c[n>>2]|0)+32>>2]|0)-1;while(1){if((c[r>>2]|0)<0){break}a[p>>0]=a[c[o>>2]>>0]|0;switch(d[p>>0]|0|0){case 6:case 8:{c[(c[o>>2]|0)+16>>2]=46;a[(c[o>>2]|0)+1>>0]=-19;break};case 14:{c[q>>2]=c[(c[o>>2]|0)+ -20+4>>2];if((c[q>>2]|0)>(c[k>>2]|0)){c[k>>2]=c[q>>2]}break};case 5:case 7:case 9:{c[(c[o>>2]|0)+16>>2]=45;a[(c[o>>2]|0)+1>>0]=-19;break};case 12:case 13:case 11:{e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-257;e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-513|512;break};case 2:case 3:{h=8;break};case 10:case 1:{if((d[(c[o>>2]|0)+3>>0]|0|0)>(c[k>>2]|0)){c[k>>2]=d[(c[o>>2]|0)+3>>0]|0}break};case 4:{if((c[(c[o>>2]|0)+8>>2]|0)!=0){h=(c[n>>2]|0)+88|0;b[h>>1]=b[h>>1]&-257;h=8}else{h=8}break};case 15:{if((c[(c[o>>2]|0)+8>>2]|0)>(c[k>>2]|0)){c[k>>2]=c[(c[o>>2]|0)+8>>2]}break};default:{}}if((h|0)==8){h=0;e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-513|512}a[(c[o>>2]|0)+2>>0]=a[24048+(d[p>>0]|0)>>0]|0;if((a[(c[o>>2]|0)+2>>0]&1|0)!=0?(c[(c[o>>2]|0)+8>>2]|0)<0:0){c[(c[o>>2]|0)+8>>2]=c[(c[g>>2]|0)+(-1-(c[(c[o>>2]|0)+8>>2]|0)<<2)>>2]}c[r>>2]=(c[r>>2]|0)+ -1;c[o>>2]=(c[o>>2]|0)+20}Wb(c[c[n>>2]>>2]|0,c[(c[j>>2]|0)+112>>2]|0);c[(c[j>>2]|0)+112>>2]=0;c[(c[j>>2]|0)+108>>2]=0;c[c[l>>2]>>2]=c[k>>2];i=m;return}function $v(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+32|0;l=m+20|0;h=m+16|0;n=m+12|0;k=m+8|0;p=m+4|0;o=m;c[h>>2]=f;c[n>>2]=g;if((d[(c[h>>2]|0)+81>>0]|0)!=1){f=(c[h>>2]|0)+80|0;a[f>>0]=d[f>>0]&-5;if((d[(c[h>>2]|0)+81>>0]|0)>=3){g=bw(c[h>>2]|0)|0}else{g=0}c[k>>2]=g;if((c[k>>2]|0)!=0){c[c[n>>2]>>2]=0;c[l>>2]=c[k>>2];f=c[l>>2]|0;i=m;return f|0}if(0==(d[(c[h>>2]|0)+81>>0]|0)){c[c[n>>2]>>2]=1;c[l>>2]=0;f=c[l>>2]|0;i=m;return f|0}if((c[(c[h>>2]|0)+76>>2]|0)!=0?(a[(c[h>>2]|0)+81>>0]=1,f=(c[(c[h>>2]|0)+76>>2]|0)>0,c[(c[h>>2]|0)+76>>2]=0,f):0){c[c[n>>2]>>2]=0;c[l>>2]=0;f=c[l>>2]|0;i=m;return f|0}}c[o>>2]=c[(c[h>>2]|0)+128+(b[(c[h>>2]|0)+84>>1]<<2)>>2];g=(c[h>>2]|0)+86+(b[(c[h>>2]|0)+84>>1]<<1)|0;f=(b[g>>1]|0)+1<<16>>16;b[g>>1]=f;c[p>>2]=f&65535;b[(c[h>>2]|0)+50>>1]=0;f=(c[h>>2]|0)+80|0;a[f>>0]=d[f>>0]&-7;if((c[p>>2]|0)<(e[(c[o>>2]|0)+16>>1]|0)){c[c[n>>2]>>2]=0;if((a[(c[o>>2]|0)+3>>0]|0)!=0){c[l>>2]=0;f=c[l>>2]|0;i=m;return f|0}else{c[k>>2]=Gw(c[h>>2]|0)|0;c[l>>2]=c[k>>2];f=c[l>>2]|0;i=m;return f|0}}if((a[(c[o>>2]|0)+3>>0]|0)==0){f=c[h>>2]|0;c[k>>2]=cw(f,Ah((c[(c[o>>2]|0)+56>>2]|0)+((d[(c[o>>2]|0)+5>>0]|0)+8)|0)|0)|0;if((c[k>>2]|0)!=0){c[c[n>>2]>>2]=0;c[l>>2]=c[k>>2];f=c[l>>2]|0;i=m;return f|0}else{c[k>>2]=Gw(c[h>>2]|0)|0;c[c[n>>2]>>2]=0;c[l>>2]=c[k>>2];f=c[l>>2]|0;i=m;return f|0}}do{if((b[(c[h>>2]|0)+84>>1]|0)==0){j=17;break}ew(c[h>>2]|0);c[o>>2]=c[(c[h>>2]|0)+128+(b[(c[h>>2]|0)+84>>1]<<2)>>2]}while((e[(c[h>>2]|0)+86+(b[(c[h>>2]|0)+84>>1]<<1)>>1]|0)>=(e[(c[o>>2]|0)+16>>1]|0));if((j|0)==17){c[c[n>>2]>>2]=1;a[(c[h>>2]|0)+81>>0]=0;c[l>>2]=0;f=c[l>>2]|0;i=m;return f|0}c[c[n>>2]>>2]=0;if((a[(c[o>>2]|0)+2>>0]|0)!=0){c[k>>2]=$v(c[h>>2]|0,c[n>>2]|0)|0}else{c[k>>2]=0}c[l>>2]=c[k>>2];f=c[l>>2]|0;i=m;return f|0}function aw(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+32|0;k=l+20|0;m=l+16|0;n=l+12|0;j=l+8|0;o=l+4|0;p=l;c[m>>2]=f;c[n>>2]=g;f=(c[m>>2]|0)+80|0;a[f>>0]=d[f>>0]&-13;if((d[(c[m>>2]|0)+81>>0]|0)!=1){if((d[(c[m>>2]|0)+81>>0]|0)>=3?(c[j>>2]=bw(c[m>>2]|0)|0,(c[j>>2]|0)!=0):0){c[c[n>>2]>>2]=0;c[k>>2]=c[j>>2];f=c[k>>2]|0;i=l;return f|0}if(0==(d[(c[m>>2]|0)+81>>0]|0)){c[c[n>>2]>>2]=1;c[k>>2]=0;f=c[k>>2]|0;i=l;return f|0}if((c[(c[m>>2]|0)+76>>2]|0)!=0?(a[(c[m>>2]|0)+81>>0]=1,f=(c[(c[m>>2]|0)+76>>2]|0)<0,c[(c[m>>2]|0)+76>>2]=0,f):0){c[c[n>>2]>>2]=0;c[k>>2]=0;f=c[k>>2]|0;i=l;return f|0}}c[o>>2]=c[(c[m>>2]|0)+128+(b[(c[m>>2]|0)+84>>1]<<2)>>2];do{if((a[(c[o>>2]|0)+3>>0]|0)!=0){while(1){p=c[m>>2]|0;if((e[(c[m>>2]|0)+86+(b[(c[m>>2]|0)+84>>1]<<1)>>1]|0)!=0){break}g=c[m>>2]|0;if((b[p+84>>1]|0)==0){h=16;break}ew(g)}if((h|0)==16){a[g+81>>0]=0;c[c[n>>2]>>2]=1;c[k>>2]=0;f=c[k>>2]|0;i=l;return f|0}b[p+50>>1]=0;f=(c[m>>2]|0)+80|0;a[f>>0]=d[f>>0]&-7;f=(c[m>>2]|0)+86+(b[(c[m>>2]|0)+84>>1]<<1)|0;b[f>>1]=(b[f>>1]|0)+ -1<<16>>16;c[o>>2]=c[(c[m>>2]|0)+128+(b[(c[m>>2]|0)+84>>1]<<2)>>2];if((d[(c[o>>2]|0)+2>>0]|0)!=0?(a[(c[o>>2]|0)+3>>0]|0)==0:0){c[j>>2]=aw(c[m>>2]|0,c[n>>2]|0)|0;break}c[j>>2]=0}else{c[p>>2]=e[(c[m>>2]|0)+86+(b[(c[m>>2]|0)+84>>1]<<1)>>1]|0;f=c[m>>2]|0;c[j>>2]=cw(f,Ah((c[(c[o>>2]|0)+56>>2]|0)+(e[(c[o>>2]|0)+18>>1]&(d[(c[(c[o>>2]|0)+64>>2]|0)+(c[p>>2]<<1)>>0]<<8|d[(c[(c[o>>2]|0)+64>>2]|0)+(c[p>>2]<<1)+1>>0]))|0)|0)|0;if((c[j>>2]|0)==0){c[j>>2]=dw(c[m>>2]|0)|0;break}c[c[n>>2]>>2]=0;c[k>>2]=c[j>>2];f=c[k>>2]|0;i=l;return f|0}}while(0);c[c[n>>2]>>2]=0;c[k>>2]=c[j>>2];f=c[k>>2]|0;i=l;return f|0}function bw(b){b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e+4|0;g=e;c[h>>2]=b;b=c[h>>2]|0;if((d[(c[h>>2]|0)+81>>0]|0|0)==4){c[f>>2]=c[b+76>>2];b=c[f>>2]|0;i=e;return b|0}a[b+81>>0]=0;b=(c[h>>2]|0)+56|0;c[g>>2]=jw(c[h>>2]|0,c[(c[h>>2]|0)+64>>2]|0,c[b>>2]|0,c[b+4>>2]|0,0,(c[h>>2]|0)+76|0)|0;if(((c[g>>2]|0)==0?(gc(c[(c[h>>2]|0)+64>>2]|0),c[(c[h>>2]|0)+64>>2]=0,(c[(c[h>>2]|0)+76>>2]|0)!=0):0)?(d[(c[h>>2]|0)+81>>0]|0|0)==1:0){a[(c[h>>2]|0)+81>>0]=2}c[f>>2]=c[g>>2];b=c[f>>2]|0;i=e;return b|0}function cw(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;j=h+24|0;m=h+20|0;p=h+16|0;k=h+12|0;n=h+8|0;l=h+4|0;o=h;c[m>>2]=f;c[p>>2]=g;c[n>>2]=b[(c[m>>2]|0)+84>>1]|0;c[o>>2]=c[(c[m>>2]|0)+4>>2];if((b[(c[m>>2]|0)+84>>1]|0)>=19){c[j>>2]=ej(55422)|0;f=c[j>>2]|0;i=h;return f|0}c[k>>2]=fw(c[o>>2]|0,c[p>>2]|0,l,(a[(c[m>>2]|0)+80>>0]&1|0)==0?2:0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];f=c[j>>2]|0;i=h;return f|0}c[(c[m>>2]|0)+128+((c[n>>2]|0)+1<<2)>>2]=c[l>>2];b[(c[m>>2]|0)+86+((c[n>>2]|0)+1<<1)>>1]=0;f=(c[m>>2]|0)+84|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;b[(c[m>>2]|0)+50>>1]=0;f=(c[m>>2]|0)+80|0;a[f>>0]=d[f>>0]&-7;if((e[(c[l>>2]|0)+16>>1]|0)>=1?(d[(c[l>>2]|0)+2>>0]|0)==(d[(c[(c[m>>2]|0)+128+(c[n>>2]<<2)>>2]|0)+2>>0]|0):0){c[j>>2]=0;f=c[j>>2]|0;i=h;return f|0}c[j>>2]=ej(55434)|0;f=c[j>>2]|0;i=h;return f|0}function dw(f){f=f|0;var g=0,h=0,j=0,k=0,l=0;h=i;i=i+16|0;k=h+12|0;l=h+8|0;g=h+4|0;j=h;c[k>>2]=f;c[g>>2]=0;c[j>>2]=0;while(1){if((c[g>>2]|0)!=0){break}f=c[(c[k>>2]|0)+128+(b[(c[k>>2]|0)+84>>1]<<2)>>2]|0;c[j>>2]=f;if(!((a[f+3>>0]|0)!=0^1)){break}c[l>>2]=Ah((c[(c[j>>2]|0)+56>>2]|0)+((d[(c[j>>2]|0)+5>>0]|0)+8)|0)|0;b[(c[k>>2]|0)+86+(b[(c[k>>2]|0)+84>>1]<<1)>>1]=b[(c[j>>2]|0)+16>>1]|0;c[g>>2]=cw(c[k>>2]|0,c[l>>2]|0)|0}if((c[g>>2]|0)!=0){l=c[g>>2]|0;i=h;return l|0}b[(c[k>>2]|0)+86+(b[(c[k>>2]|0)+84>>1]<<1)>>1]=(e[(c[j>>2]|0)+16>>1]|0)-1;b[(c[k>>2]|0)+50>>1]=0;l=(c[k>>2]|0)+80|0;a[l>>0]=d[l>>0]&-3;l=c[g>>2]|0;i=h;return l|0}function ew(e){e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f;c[g>>2]=e;Hk(c[(c[g>>2]|0)+128+(b[(c[g>>2]|0)+84>>1]<<2)>>2]|0);e=(c[g>>2]|0)+84|0;b[e>>1]=(b[e>>1]|0)+ -1<<16>>16;b[(c[g>>2]|0)+50>>1]=0;e=(c[g>>2]|0)+80|0;a[e>>0]=d[e>>0]&-7;i=f;return}function fw(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+16|0;l=g+12|0;j=g+8|0;k=g+4|0;h=g;c[m>>2]=a;c[l>>2]=b;c[j>>2]=e;c[k>>2]=f;a=c[l>>2]|0;if(!(a>>>0>(gw(c[m>>2]|0)|0)>>>0)){c[h>>2]=hw(c[m>>2]|0,c[l>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if(((c[h>>2]|0)==0?(d[c[c[j>>2]>>2]>>0]|0|0)==0:0)?(c[h>>2]=Mj(c[c[j>>2]>>2]|0)|0,(c[h>>2]|0)!=0):0){Hk(c[c[j>>2]>>2]|0)}}else{c[h>>2]=ej(52811)|0}i=g;return c[h>>2]|0}function gw(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+44>>2]|0}function hw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;g=k+24|0;f=k+20|0;l=k+16|0;j=k+12|0;n=k+8|0;h=k+4|0;m=k;c[f>>2]=a;c[l>>2]=b;c[j>>2]=d;c[n>>2]=e;c[h>>2]=Uc(c[c[f>>2]>>2]|0,c[l>>2]|0,m,c[n>>2]|0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];n=c[g>>2]|0;i=k;return n|0}else{n=iw(c[m>>2]|0,c[l>>2]|0,c[f>>2]|0)|0;c[c[j>>2]>>2]=n;c[g>>2]=0;n=c[g>>2]|0;i=k;return n|0}return 0}function iw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;k=g+12|0;h=g+8|0;j=g+4|0;f=g;c[k>>2]=b;c[h>>2]=d;c[j>>2]=e;c[f>>2]=Kj(c[k>>2]|0)|0;b=Wc(c[k>>2]|0)|0;c[(c[f>>2]|0)+56>>2]=b;c[(c[f>>2]|0)+68>>2]=c[k>>2];c[(c[f>>2]|0)+52>>2]=c[j>>2];c[(c[f>>2]|0)+72>>2]=c[h>>2];a[(c[f>>2]|0)+5>>0]=(c[(c[f>>2]|0)+72>>2]|0)==1?100:0;i=g;return c[f>>2]|0}function jw(a,b,d,f,g,h){a=a|0;b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=i;i=i+240|0;k=q+36|0;l=q+32|0;s=q+28|0;n=q;p=q+24|0;j=q+20|0;r=q+16|0;o=q+12|0;m=q+8|0;c[l>>2]=a;c[s>>2]=b;a=n;c[a>>2]=d;c[a+4>>2]=f;c[p>>2]=g;c[j>>2]=h;c[m>>2]=0;if((c[s>>2]|0)!=0){c[o>>2]=kw(c[(c[l>>2]|0)+16>>2]|0,q+40|0,200,m)|0;if((c[o>>2]|0)==0){c[k>>2]=7;a=c[k>>2]|0;i=q;return a|0}lw(c[(c[l>>2]|0)+16>>2]|0,c[n>>2]|0,c[s>>2]|0,c[o>>2]|0);if((e[(c[o>>2]|0)+4>>1]|0|0)==0){Wb(c[(c[(c[l>>2]|0)+16>>2]|0)+12>>2]|0,c[m>>2]|0);c[k>>2]=ej(51847)|0;a=c[k>>2]|0;i=q;return a|0}}else{c[o>>2]=0}a=n;c[r>>2]=mw(c[l>>2]|0,c[o>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[p>>2]|0,c[j>>2]|0)|0;if((c[m>>2]|0)!=0){Wb(c[(c[(c[l>>2]|0)+16>>2]|0)+12>>2]|0,c[m>>2]|0)}c[k>>2]=c[r>>2];a=c[k>>2]|0;i=q;return a|0}function kw(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+32|0;j=n+28|0;l=n+24|0;p=n+20|0;q=n+16|0;m=n+12|0;k=n+8|0;o=n+4|0;h=n;c[l>>2]=a;c[p>>2]=d;c[q>>2]=f;c[m>>2]=g;c[o>>2]=8-(c[p>>2]&7)&7;c[h>>2]=24+(((e[(c[l>>2]|0)+6>>1]|0)+1|0)*40|0);if((c[h>>2]|0)>((c[q>>2]|0)+(c[o>>2]|0)|0)){c[k>>2]=Le(c[(c[l>>2]|0)+12>>2]|0,c[h>>2]|0)|0;c[c[m>>2]>>2]=c[k>>2];if((c[k>>2]|0)==0){c[j>>2]=0;q=c[j>>2]|0;i=n;return q|0}}else{c[k>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[c[m>>2]>>2]=0}c[(c[k>>2]|0)+8>>2]=(c[k>>2]|0)+24;c[c[k>>2]>>2]=c[l>>2];b[(c[k>>2]|0)+4>>1]=(e[(c[l>>2]|0)+6>>1]|0)+1;c[j>>2]=c[k>>2];q=c[j>>2]|0;i=n;return q|0}function lw(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=i;i=i+48|0;p=k+36|0;r=k+32|0;v=k+28|0;l=k+24|0;o=k+20|0;q=k+16|0;n=k+12|0;m=k+40|0;s=k+8|0;u=k+4|0;t=k;c[p>>2]=f;c[r>>2]=g;c[v>>2]=h;c[l>>2]=j;c[o>>2]=c[v>>2];c[u>>2]=c[(c[l>>2]|0)+8>>2];a[(c[l>>2]|0)+6>>0]=0;j=c[o>>2]|0;if((d[c[o>>2]>>0]|0|0)<128){c[s>>2]=d[j>>0]|0;j=1}else{j=(xw(j,s)|0)&255}c[n>>2]=j&255;c[q>>2]=c[s>>2];b[m>>1]=0;while(1){if(!((c[n>>2]|0)>>>0<(c[s>>2]|0)>>>0)){n=12;break}if((e[m>>1]|0|0)>=(e[(c[l>>2]|0)+4>>1]|0|0)){n=12;break}if((c[q>>2]|0)>(c[r>>2]|0)){n=12;break}j=(c[o>>2]|0)+(c[n>>2]|0)|0;if((d[(c[o>>2]|0)+(c[n>>2]|0)>>0]|0|0)<128){c[t>>2]=d[j>>0]|0;j=1}else{j=(xw(j,t)|0)&255}c[n>>2]=(c[n>>2]|0)+(j&255);a[(c[u>>2]|0)+30>>0]=a[(c[p>>2]|0)+4>>0]|0;c[c[u>>2]>>2]=c[(c[p>>2]|0)+12>>2];c[(c[u>>2]|0)+36>>2]=0;v=Cw((c[o>>2]|0)+(c[q>>2]|0)|0,c[t>>2]|0,c[u>>2]|0)|0;c[q>>2]=(c[q>>2]|0)+v;c[u>>2]=(c[u>>2]|0)+40;b[m>>1]=(b[m>>1]|0)+1<<16>>16}if((n|0)==12){b[(c[l>>2]|0)+4>>1]=b[m>>1]|0;i=k;return}}function mw(f,g,h,j,k,l){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;z=i;i=i+96|0;w=z+80|0;D=z+76|0;B=z+72|0;s=z+8|0;F=z+68|0;o=z+64|0;p=z+60|0;n=z+56|0;v=z+52|0;m=z+48|0;u=z+44|0;y=z+40|0;x=z+36|0;t=z+32|0;q=z+28|0;r=z;A=z+24|0;C=z+20|0;E=z+16|0;c[D>>2]=f;c[B>>2]=g;f=s;c[f>>2]=h;c[f+4>>2]=j;c[F>>2]=k;c[o>>2]=l;if(((d[(c[D>>2]|0)+81>>0]|0)==1?(a[(c[D>>2]|0)+80>>0]&2|0)!=0:0)?(d[(c[(c[D>>2]|0)+128>>2]|0)+2>>0]|0)!=0:0){g=(c[D>>2]|0)+24|0;f=s;if((c[g>>2]|0)==(c[f>>2]|0)?(c[g+4>>2]|0)==(c[f+4>>2]|0):0){c[c[o>>2]>>2]=0;c[w>>2]=0;f=c[w>>2]|0;i=z;return f|0}if((a[(c[D>>2]|0)+80>>0]&8|0)!=0?(g=(c[D>>2]|0)+24|0,j=c[g+4>>2]|0,f=s,h=c[f+4>>2]|0,(j|0)<(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0:0)):0){c[c[o>>2]>>2]=-1;c[w>>2]=0;f=c[w>>2]|0;i=z;return f|0}}if((c[B>>2]|0)!=0){c[n>>2]=nw(c[B>>2]|0)|0;a[(c[B>>2]|0)+7>>0]=0}else{c[n>>2]=0}c[p>>2]=ow(c[D>>2]|0)|0;if((c[p>>2]|0)!=0){c[w>>2]=c[p>>2];f=c[w>>2]|0;i=z;return f|0}if((d[(c[D>>2]|0)+81>>0]|0)==0){c[c[o>>2]>>2]=-1;c[w>>2]=0;f=c[w>>2]|0;i=z;return f|0}a:do{c[t>>2]=c[(c[D>>2]|0)+128+(b[(c[D>>2]|0)+84>>1]<<2)>>2];c[v>>2]=0;c[m>>2]=(e[(c[t>>2]|0)+16>>1]|0)-1;c[u>>2]=c[m>>2]>>1-(c[F>>2]|0);b[(c[D>>2]|0)+86+(b[(c[D>>2]|0)+84>>1]<<1)>>1]=c[u>>2];b:do{if((c[n>>2]|0)==0){while(1){c[q>>2]=(c[(c[t>>2]|0)+56>>2]|0)+(e[(c[t>>2]|0)+18>>1]&(d[(c[(c[t>>2]|0)+64>>2]|0)+(c[u>>2]<<1)>>0]<<8|d[(c[(c[t>>2]|0)+64>>2]|0)+(c[u>>2]<<1)+1>>0]))+(d[(c[t>>2]|0)+6>>0]|0);c:do{if((a[(c[t>>2]|0)+4>>0]|0)!=0){while(1){f=c[q>>2]|0;c[q>>2]=f+1;if(128>(d[f>>0]|0)){break c}if((c[q>>2]|0)>>>0>=(c[(c[t>>2]|0)+60>>2]|0)>>>0){l=20;break a}}}}while(0);pw(c[q>>2]|0,r)|0;g=r;j=c[g+4>>2]|0;f=s;h=c[f+4>>2]|0;if((j|0)<(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0:0)){c[v>>2]=(c[u>>2]|0)+1;if((c[v>>2]|0)>(c[m>>2]|0)){l=23;break}}else{g=r;j=c[g+4>>2]|0;f=s;h=c[f+4>>2]|0;if(!((j|0)>(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0>(c[f>>2]|0)>>>0:0))){l=27;break}c[m>>2]=(c[u>>2]|0)-1;if((c[v>>2]|0)>(c[m>>2]|0)){l=26;break}}c[u>>2]=(c[v>>2]|0)+(c[m>>2]|0)>>1}if((l|0)==23){c[y>>2]=-1;l=49;break}else if((l|0)==26){c[y>>2]=1;l=49;break}else if((l|0)==27){l=0;h=(c[D>>2]|0)+80|0;a[h>>0]=d[h>>0]|2;h=r;g=c[h+4>>2]|0;f=(c[D>>2]|0)+24|0;c[f>>2]=c[h>>2];c[f+4>>2]=g;b[(c[D>>2]|0)+86+(b[(c[D>>2]|0)+84>>1]<<1)>>1]=c[u>>2];if((a[(c[t>>2]|0)+3>>0]|0)!=0){l=29;break a}c[v>>2]=c[u>>2];break}}else{while(1){c[q>>2]=(c[(c[t>>2]|0)+56>>2]|0)+(e[(c[t>>2]|0)+18>>1]&(d[(c[(c[t>>2]|0)+64>>2]|0)+(c[u>>2]<<1)>>0]<<8|d[(c[(c[t>>2]|0)+64>>2]|0)+(c[u>>2]<<1)+1>>0]))+(d[(c[t>>2]|0)+6>>0]|0);c[A>>2]=d[c[q>>2]>>0]|0;do{if((c[A>>2]|0)<=(d[(c[t>>2]|0)+7>>0]|0)){c[y>>2]=xb[c[n>>2]&15](c[A>>2]|0,(c[q>>2]|0)+1|0,c[B>>2]|0,0)|0}else{if((a[(c[q>>2]|0)+1>>0]&128|0)==0?(f=((c[A>>2]&127)<<7)+(d[(c[q>>2]|0)+1>>0]|0)|0,c[A>>2]=f,(f|0)<=(e[(c[t>>2]|0)+8>>1]|0)):0){c[y>>2]=xb[c[n>>2]&15](c[A>>2]|0,(c[q>>2]|0)+2|0,c[B>>2]|0,0)|0;break}c[E>>2]=(c[q>>2]|0)+(0-(d[(c[t>>2]|0)+6>>0]|0));qw(c[t>>2]|0,c[E>>2]|0,(c[D>>2]|0)+24|0);c[A>>2]=c[(c[D>>2]|0)+24>>2];c[C>>2]=fc(c[A>>2]|0)|0;if((c[C>>2]|0)==0){l=37;break a}b[(c[D>>2]|0)+86+(b[(c[D>>2]|0)+84>>1]<<1)>>1]=c[u>>2];c[p>>2]=rw(c[D>>2]|0,0,c[A>>2]|0,c[C>>2]|0,2)|0;if((c[p>>2]|0)!=0){l=39;break a}c[y>>2]=xb[c[n>>2]&15](c[A>>2]|0,c[C>>2]|0,c[B>>2]|0,0)|0;gc(c[C>>2]|0)}}while(0);if((c[y>>2]|0)<0){c[v>>2]=(c[u>>2]|0)+1}else{if((c[y>>2]|0)<=0){l=45;break a}c[m>>2]=(c[u>>2]|0)-1}if((c[v>>2]|0)>(c[m>>2]|0)){l=49;break b}c[u>>2]=(c[v>>2]|0)+(c[m>>2]|0)>>1}}}while(0);if((l|0)==49?(l=0,(a[(c[t>>2]|0)+3>>0]|0)!=0):0){l=50;break}k=c[t>>2]|0;if((c[v>>2]|0)>=(e[(c[t>>2]|0)+16>>1]|0)){c[x>>2]=Ah((c[(c[t>>2]|0)+56>>2]|0)+((d[k+5>>0]|0)+8)|0)|0}else{c[x>>2]=Ah((c[k+56>>2]|0)+(e[(c[t>>2]|0)+18>>1]&(d[(c[(c[t>>2]|0)+64>>2]|0)+(c[v>>2]<<1)>>0]<<8|d[(c[(c[t>>2]|0)+64>>2]|0)+(c[v>>2]<<1)+1>>0]))|0)|0}b[(c[D>>2]|0)+86+(b[(c[D>>2]|0)+84>>1]<<1)>>1]=c[v>>2];c[p>>2]=cw(c[D>>2]|0,c[x>>2]|0)|0}while((c[p>>2]|0)==0);if((l|0)==20){c[w>>2]=ej(55807)|0;f=c[w>>2]|0;i=z;return f|0}else if((l|0)==29){c[c[o>>2]>>2]=0;c[p>>2]=0}else if((l|0)==37){c[p>>2]=7}else if((l|0)==39){gc(c[C>>2]|0)}else if((l|0)==45){c[c[o>>2]>>2]=0;c[p>>2]=0;b[(c[D>>2]|0)+86+(b[(c[D>>2]|0)+84>>1]<<1)>>1]=c[u>>2];if((a[(c[B>>2]|0)+7>>0]|0)!=0){c[p>>2]=11}}else if((l|0)==50){b[(c[D>>2]|0)+86+(b[(c[D>>2]|0)+84>>1]<<1)>>1]=c[u>>2];c[c[o>>2]>>2]=c[y>>2];c[p>>2]=0}b[(c[D>>2]|0)+50>>1]=0;f=(c[D>>2]|0)+80|0;a[f>>0]=d[f>>0]&-7;c[w>>2]=c[p>>2];f=c[w>>2]|0;i=z;return f|0}function nw(b){b=b|0;var d=0,f=0,g=0,h=0;f=i;i=i+16|0;d=f+8|0;h=f+4|0;g=f;c[h>>2]=b;if(((e[(c[c[h>>2]>>2]|0)+6>>1]|0)+(e[(c[c[h>>2]>>2]|0)+8>>1]|0)|0)<=13){c[g>>2]=e[(c[(c[h>>2]|0)+8>>2]|0)+28>>1]|0;b=(c[h>>2]|0)+12|0;if((a[c[(c[c[h>>2]>>2]|0)+16>>2]>>0]|0)!=0){c[b>>2]=1;c[(c[h>>2]|0)+16>>2]=-1}else{c[b>>2]=-1;c[(c[h>>2]|0)+16>>2]=1}if((c[g>>2]&4|0)!=0){c[d>>2]=8;b=c[d>>2]|0;i=f;return b|0}if((c[g>>2]&25|0)==0?(c[(c[c[h>>2]>>2]|0)+20>>2]|0)==0:0){c[d>>2]=9;b=c[d>>2]|0;i=f;return b|0}}c[d>>2]=10;b=c[d>>2]|0;i=f;return b|0}function ow(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+32|0;h=j+16|0;k=j+12|0;l=j+8|0;g=j+4|0;m=j;c[k>>2]=f;c[g>>2]=0;do{if((d[(c[k>>2]|0)+81>>0]|0)>=3){f=c[k>>2]|0;if((d[(c[k>>2]|0)+81>>0]|0)!=4){Gk(f);break}c[h>>2]=c[f+76>>2];f=c[h>>2]|0;i=j;return f|0}}while(0);a:do{if((b[(c[k>>2]|0)+84>>1]|0)>=0){while(1){if((b[(c[k>>2]|0)+84>>1]|0)==0){break a}n=(c[k>>2]|0)+84|0;f=b[n>>1]|0;b[n>>1]=f+ -1<<16>>16;Hk(c[(c[k>>2]|0)+128+(f<<16>>16<<2)>>2]|0)}}else{f=c[k>>2]|0;if((c[(c[k>>2]|0)+68>>2]|0)==0){a[f+81>>0]=0;c[h>>2]=0;n=c[h>>2]|0;i=j;return n|0}c[g>>2]=fw(c[(c[f>>2]|0)+4>>2]|0,c[(c[k>>2]|0)+68>>2]|0,(c[k>>2]|0)+128|0,(a[(c[k>>2]|0)+80>>0]&1|0)==0?2:0)|0;f=c[k>>2]|0;if((c[g>>2]|0)==0){b[f+84>>1]=0;break}a[f+81>>0]=0;c[h>>2]=c[g>>2];n=c[h>>2]|0;i=j;return n|0}}while(0);c[l>>2]=c[(c[k>>2]|0)+128>>2];if((d[c[l>>2]>>0]|0)!=0?((c[(c[k>>2]|0)+16>>2]|0)==0|0)==(d[(c[l>>2]|0)+2>>0]|0):0){b[(c[k>>2]|0)+86>>1]=0;b[(c[k>>2]|0)+50>>1]=0;n=(c[k>>2]|0)+80|0;a[n>>0]=d[n>>0]&-15;do{if((e[(c[l>>2]|0)+16>>1]|0)>0){a[(c[k>>2]|0)+81>>0]=1}else{if((a[(c[l>>2]|0)+3>>0]|0)!=0){a[(c[k>>2]|0)+81>>0]=0;break}if((c[(c[l>>2]|0)+72>>2]|0)==1){c[m>>2]=Ah((c[(c[l>>2]|0)+56>>2]|0)+((d[(c[l>>2]|0)+5>>0]|0)+8)|0)|0;a[(c[k>>2]|0)+81>>0]=1;c[g>>2]=cw(c[k>>2]|0,c[m>>2]|0)|0;break}c[h>>2]=ej(55570)|0;n=c[h>>2]|0;i=j;return n|0}}while(0);c[h>>2]=c[g>>2];n=c[h>>2]|0;i=j;return n|0}c[h>>2]=ej(55559)|0;n=c[h>>2]|0;i=j;return n|0} - - - -function pw(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;g=k+20|0;m=k+16|0;j=k+12|0;h=k+8|0;f=k+4|0;l=k;c[m>>2]=b;c[j>>2]=e;c[h>>2]=d[c[m>>2]>>0]|0;if((c[h>>2]&128|0)==0){b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=0;a[g>>0]=1;b=a[g>>0]|0;i=k;return b|0}c[m>>2]=(c[m>>2]|0)+1;c[f>>2]=d[c[m>>2]>>0]|0;if((c[f>>2]&128|0)==0){c[h>>2]=c[h>>2]&127;c[h>>2]=c[h>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=0;a[g>>0]=2;b=a[g>>0]|0;i=k;return b|0}c[m>>2]=(c[m>>2]|0)+1;c[h>>2]=c[h>>2]<<14;c[h>>2]=c[h>>2]|(d[c[m>>2]>>0]|0);b=(c[h>>2]&128|0)!=0;c[h>>2]=c[h>>2]&2080895;if(!b){c[f>>2]=c[f>>2]&127;c[f>>2]=c[f>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=0;a[g>>0]=3;b=a[g>>0]|0;i=k;return b|0}c[m>>2]=(c[m>>2]|0)+1;c[f>>2]=c[f>>2]<<14;c[f>>2]=c[f>>2]|(d[c[m>>2]>>0]|0);b=(c[f>>2]&128|0)!=0;c[f>>2]=c[f>>2]&2080895;e=c[h>>2]|0;if(!b){c[h>>2]=e<<7;c[h>>2]=c[h>>2]|c[f>>2];b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=0;a[g>>0]=4;b=a[g>>0]|0;i=k;return b|0}c[l>>2]=e;c[m>>2]=(c[m>>2]|0)+1;c[h>>2]=c[h>>2]<<14;c[h>>2]=c[h>>2]|(d[c[m>>2]>>0]|0);if((c[h>>2]&128|0)==0){c[f>>2]=c[f>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];c[l>>2]=(c[l>>2]|0)>>>18;e=c[l>>2]|0;b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=e;a[g>>0]=5;b=a[g>>0]|0;i=k;return b|0}c[l>>2]=c[l>>2]<<7;c[l>>2]=c[l>>2]|c[f>>2];c[m>>2]=(c[m>>2]|0)+1;c[f>>2]=c[f>>2]<<14;c[f>>2]=c[f>>2]|(d[c[m>>2]>>0]|0);if((c[f>>2]&128|0)==0){c[h>>2]=c[h>>2]&2080895;c[h>>2]=c[h>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];c[l>>2]=(c[l>>2]|0)>>>18;e=c[l>>2]|0;b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=e;a[g>>0]=6;b=a[g>>0]|0;i=k;return b|0}c[m>>2]=(c[m>>2]|0)+1;c[h>>2]=c[h>>2]<<14;c[h>>2]=c[h>>2]|(d[c[m>>2]>>0]|0);e=c[h>>2]|0;if((c[h>>2]&128|0)==0){c[h>>2]=e&-266354561;c[f>>2]=c[f>>2]&2080895;c[f>>2]=c[f>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];c[l>>2]=(c[l>>2]|0)>>>11;e=c[l>>2]|0;b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=e;a[g>>0]=7;b=a[g>>0]|0;i=k;return b|0}c[h>>2]=e&2080895;c[m>>2]=(c[m>>2]|0)+1;c[f>>2]=c[f>>2]<<14;c[f>>2]=c[f>>2]|(d[c[m>>2]>>0]|0);if((c[f>>2]&128|0)!=0){c[m>>2]=(c[m>>2]|0)+1;c[h>>2]=c[h>>2]<<15;c[h>>2]=c[h>>2]|(d[c[m>>2]>>0]|0);c[f>>2]=c[f>>2]&2080895;c[f>>2]=c[f>>2]<<8;c[h>>2]=c[h>>2]|c[f>>2];c[l>>2]=c[l>>2]<<4;c[f>>2]=d[(c[m>>2]|0)+ -4>>0]|0;c[f>>2]=c[f>>2]&127;c[f>>2]=(c[f>>2]|0)>>>3;c[l>>2]=c[l>>2]|c[f>>2];e=c[l>>2]|0;b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=e;a[g>>0]=9;b=a[g>>0]|0;i=k;return b|0}else{c[f>>2]=c[f>>2]&-266354561;c[h>>2]=c[h>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];c[l>>2]=(c[l>>2]|0)>>>4;e=c[l>>2]|0;b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=e;a[g>>0]=8;b=a[g>>0]|0;i=k;return b|0}return 0}function qw(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=i;i=i+32|0;n=l+24|0;r=l+20|0;k=l+16|0;m=l+28|0;q=l+12|0;o=l+8|0;p=l+4|0;j=l;c[n>>2]=f;c[r>>2]=g;c[k>>2]=h;c[(c[k>>2]|0)+8>>2]=c[r>>2];b[m>>1]=d[(c[n>>2]|0)+6>>0]|0;if((a[(c[n>>2]|0)+2>>0]|0)!=0){if((a[(c[n>>2]|0)+4>>0]|0)!=0){h=c[r>>2]|0;if((d[c[r>>2]>>0]|0)<128){c[q>>2]=d[h>>0]|0;h=1}else{h=(xw(h,q)|0)&255}b[m>>1]=h&255}else{c[q>>2]=0}f=(pw((c[r>>2]|0)+(e[m>>1]|0)|0,c[k>>2]|0)|0)&255;b[m>>1]=(e[m>>1]|0)+f;c[(c[k>>2]|0)+12>>2]=c[q>>2]}else{c[(c[k>>2]|0)+12>>2]=0;h=(c[r>>2]|0)+(e[m>>1]|0)|0;if((d[(c[r>>2]|0)+(e[m>>1]|0)>>0]|0)<128){c[q>>2]=d[h>>0]|0;r=1}else{r=(xw(h,q)|0)&255}b[m>>1]=(e[m>>1]|0)+(r&255);f=c[k>>2]|0;c[f>>2]=c[q>>2];c[f+4>>2]=0}c[(c[k>>2]|0)+16>>2]=c[q>>2];b[(c[k>>2]|0)+20>>1]=b[m>>1]|0;if((c[q>>2]|0)>>>0<=(e[(c[n>>2]|0)+8>>1]|0)>>>0){f=(e[m>>1]|0)+(c[q>>2]|0)&65535;b[(c[k>>2]|0)+26>>1]=f;if((f&65535|0)<4){b[(c[k>>2]|0)+26>>1]=4}b[(c[k>>2]|0)+22>>1]=c[q>>2];b[(c[k>>2]|0)+24>>1]=0;i=l;return}c[o>>2]=e[(c[n>>2]|0)+10>>1]|0;c[p>>2]=e[(c[n>>2]|0)+8>>1]|0;c[j>>2]=(c[o>>2]|0)+((((c[q>>2]|0)-(c[o>>2]|0)|0)>>>0)%(((c[(c[(c[n>>2]|0)+52>>2]|0)+36>>2]|0)-4|0)>>>0)|0);if((c[j>>2]|0)<=(c[p>>2]|0)){b[(c[k>>2]|0)+22>>1]=c[j>>2]}else{b[(c[k>>2]|0)+22>>1]=c[o>>2]}b[(c[k>>2]|0)+24>>1]=(e[(c[k>>2]|0)+22>>1]|0)+(e[m>>1]|0);b[(c[k>>2]|0)+26>>1]=(e[(c[k>>2]|0)+24>>1]|0)+4;i=l;return}function rw(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;D=i;i=i+80|0;C=D+76|0;q=D+72|0;n=D+68|0;v=D+64|0;y=D+60|0;m=D+56|0;w=D+52|0;x=D+48|0;E=D+44|0;p=D+40|0;A=D+36|0;l=D+32|0;F=D+28|0;z=D+24|0;o=D+20|0;r=D+16|0;s=D+12|0;t=D+8|0;u=D+4|0;B=D;c[q>>2]=f;c[n>>2]=g;c[v>>2]=h;c[y>>2]=j;c[m>>2]=k;c[x>>2]=0;c[p>>2]=0;c[A>>2]=c[(c[q>>2]|0)+128+(b[(c[q>>2]|0)+84>>1]<<2)>>2];c[l>>2]=c[(c[q>>2]|0)+4>>2];if((e[(c[q>>2]|0)+50>>1]|0)==0){c[F>>2]=b[(c[q>>2]|0)+84>>1]|0;sw(c[(c[q>>2]|0)+128+(c[F>>2]<<2)>>2]|0,e[(c[q>>2]|0)+86+(c[F>>2]<<1)>>1]|0,(c[q>>2]|0)+24|0);f=(c[q>>2]|0)+80|0;a[f>>0]=d[f>>0]|2}c[w>>2]=(c[(c[q>>2]|0)+32>>2]|0)+(e[(c[q>>2]|0)+44>>1]|0);if((d[(c[A>>2]|0)+2>>0]|0)!=0){k=0}else{k=c[(c[q>>2]|0)+24>>2]|0}c[E>>2]=k;if(!(((c[n>>2]|0)+(c[v>>2]|0)|0)>>>0>((c[E>>2]|0)+(c[(c[q>>2]|0)+36>>2]|0)|0)>>>0)?!(((c[w>>2]|0)+(e[(c[q>>2]|0)+46>>1]|0)|0)>>>0>((c[(c[A>>2]|0)+56>>2]|0)+(c[(c[l>>2]|0)+36>>2]|0)|0)>>>0):0){if((c[n>>2]|0)>>>0<(e[(c[q>>2]|0)+46>>1]|0)>>>0){c[z>>2]=c[v>>2];if(((c[z>>2]|0)+(c[n>>2]|0)|0)>>>0>(e[(c[q>>2]|0)+46>>1]|0)>>>0){c[z>>2]=(e[(c[q>>2]|0)+46>>1]|0)-(c[n>>2]|0)}c[x>>2]=tw((c[w>>2]|0)+(c[n>>2]|0)|0,c[y>>2]|0,c[z>>2]|0,c[m>>2]&1,c[(c[A>>2]|0)+68>>2]|0)|0;c[n>>2]=0;c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0);c[v>>2]=(c[v>>2]|0)-(c[z>>2]|0)}else{c[n>>2]=(c[n>>2]|0)-(e[(c[q>>2]|0)+46>>1]|0)}a:do{if((c[x>>2]|0)==0?(c[v>>2]|0)>>>0>0:0){c[o>>2]=(c[(c[l>>2]|0)+36>>2]|0)-4;c[r>>2]=Ah((c[w>>2]|0)+(e[(c[q>>2]|0)+46>>1]|0)|0)|0;if((c[m>>2]|0)!=2?(a[(c[q>>2]|0)+80>>0]&4|0)==0:0){c[s>>2]=(((c[(c[q>>2]|0)+40>>2]|0)-(e[(c[q>>2]|0)+46>>1]|0)+(c[o>>2]|0)-1|0)>>>0)/((c[o>>2]|0)>>>0)|0;do{if((c[s>>2]|0)>(c[(c[q>>2]|0)+72>>2]|0)){c[t>>2]=Pm(c[c[c[q>>2]>>2]>>2]|0,c[(c[q>>2]|0)+20>>2]|0,c[s>>2]<<1<<2)|0;if((c[t>>2]|0)==0){c[x>>2]=7;break}else{c[(c[q>>2]|0)+72>>2]=c[s>>2]<<1;c[(c[q>>2]|0)+20>>2]=c[t>>2];break}}}while(0);if((c[x>>2]|0)==0){_D(c[(c[q>>2]|0)+20>>2]|0,0,c[s>>2]<<2|0)|0;f=(c[q>>2]|0)+80|0;a[f>>0]=d[f>>0]|4}}if((a[(c[q>>2]|0)+80>>0]&4|0)!=0?(c[(c[(c[q>>2]|0)+20>>2]|0)+((((c[n>>2]|0)>>>0)/((c[o>>2]|0)>>>0)|0)<<2)>>2]|0)!=0:0){c[p>>2]=((c[n>>2]|0)>>>0)/((c[o>>2]|0)>>>0)|0;c[r>>2]=c[(c[(c[q>>2]|0)+20>>2]|0)+(c[p>>2]<<2)>>2];c[n>>2]=((c[n>>2]|0)>>>0)%((c[o>>2]|0)>>>0)|0}while(1){if((c[x>>2]|0)!=0){break a}if(!((c[v>>2]|0)>>>0>0)){break a}if((c[r>>2]|0)==0){break a}if((a[(c[q>>2]|0)+80>>0]&4|0)!=0){c[(c[(c[q>>2]|0)+20>>2]|0)+(c[p>>2]<<2)>>2]=c[r>>2]}if((c[n>>2]|0)>>>0>=(c[o>>2]|0)>>>0){if((c[(c[(c[q>>2]|0)+20>>2]|0)+((c[p>>2]|0)+1<<2)>>2]|0)!=0){c[r>>2]=c[(c[(c[q>>2]|0)+20>>2]|0)+((c[p>>2]|0)+1<<2)>>2]}else{c[x>>2]=uw(c[l>>2]|0,c[r>>2]|0,0,r)|0}c[n>>2]=(c[n>>2]|0)-(c[o>>2]|0)}else{c[u>>2]=c[v>>2];if(((c[u>>2]|0)+(c[n>>2]|0)|0)>>>0>(c[o>>2]|0)>>>0){c[u>>2]=(c[o>>2]|0)-(c[n>>2]|0)}c[x>>2]=Uc(c[c[l>>2]>>2]|0,c[r>>2]|0,B,(c[m>>2]&1|0)==0?2:0)|0;if((c[x>>2]|0)==0){c[w>>2]=Wc(c[B>>2]|0)|0;c[r>>2]=Ah(c[w>>2]|0)|0;c[x>>2]=tw((c[w>>2]|0)+((c[n>>2]|0)+4)|0,c[y>>2]|0,c[u>>2]|0,c[m>>2]&1,c[B>>2]|0)|0;Xc(c[B>>2]|0);c[n>>2]=0}c[v>>2]=(c[v>>2]|0)-(c[u>>2]|0);c[y>>2]=(c[y>>2]|0)+(c[u>>2]|0)}c[p>>2]=(c[p>>2]|0)+1}}}while(0);if((c[x>>2]|0)==0?(c[v>>2]|0)>>>0>0:0){c[C>>2]=ej(55292)|0;f=c[C>>2]|0;i=D;return f|0}c[C>>2]=c[x>>2];f=c[C>>2]|0;i=D;return f|0}c[C>>2]=ej(55144)|0;f=c[C>>2]|0;i=D;return f|0}function sw(a,b,f){a=a|0;b=b|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+16|0;k=g+8|0;j=g+4|0;h=g;c[k>>2]=a;c[j>>2]=b;c[h>>2]=f;qw(c[k>>2]|0,(c[(c[k>>2]|0)+56>>2]|0)+((e[(c[k>>2]|0)+18>>1]|0)&((d[(c[(c[k>>2]|0)+64>>2]|0)+(c[j>>2]<<1)>>0]|0)<<8|(d[(c[(c[k>>2]|0)+64>>2]|0)+(c[j>>2]<<1)+1>>0]|0)))|0,c[h>>2]|0);i=g;return}function tw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;h=m+24|0;l=m+20|0;k=m+16|0;j=m+12|0;o=m+8|0;n=m+4|0;g=m;c[l>>2]=a;c[k>>2]=b;c[j>>2]=d;c[o>>2]=e;c[n>>2]=f;do{if((c[o>>2]|0)!=0){c[g>>2]=dd(c[n>>2]|0)|0;if((c[g>>2]|0)==0){dE(c[l>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;break}c[h>>2]=c[g>>2];o=c[h>>2]|0;i=m;return o|0}else{dE(c[k>>2]|0,c[l>>2]|0,c[j>>2]|0)|0}}while(0);c[h>>2]=0;o=c[h>>2]|0;i=m;return o|0}function uw(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+48|0;o=h+32|0;p=h+28|0;k=h+24|0;m=h+20|0;q=h+16|0;l=h+12|0;j=h+8|0;r=h+4|0;n=h;s=h+36|0;c[o>>2]=b;c[p>>2]=e;c[k>>2]=f;c[m>>2]=g;c[q>>2]=0;c[l>>2]=0;c[j>>2]=0;if((a[(c[o>>2]|0)+17>>0]|0)!=0){c[n>>2]=(c[p>>2]|0)+1;while(1){b=vw(c[o>>2]|0,c[n>>2]|0)|0;if((b|0)==(c[n>>2]|0)){f=1}else{f=(c[n>>2]|0)==((((c[346]|0)>>>0)/((c[(c[o>>2]|0)+32>>2]|0)>>>0)|0)+1|0)}g=c[n>>2]|0;if(!f){break}c[n>>2]=g+1}if(((g>>>0<=(gw(c[o>>2]|0)|0)>>>0?(c[j>>2]=ww(c[o>>2]|0,c[n>>2]|0,s,r)|0,(c[j>>2]|0)==0):0)?(d[s>>0]|0)==4:0)?(c[r>>2]|0)==(c[p>>2]|0):0){c[q>>2]=c[n>>2];c[j>>2]=101}}if((c[j>>2]|0)==0?(c[j>>2]=hw(c[o>>2]|0,c[p>>2]|0,l,(c[k>>2]|0)==0?2:0)|0,(c[j>>2]|0)==0):0){c[q>>2]=Ah(c[(c[l>>2]|0)+56>>2]|0)|0}c[c[m>>2]>>2]=c[q>>2];l=c[l>>2]|0;if((c[k>>2]|0)!=0){c[c[k>>2]>>2]=l;e=c[j>>2]|0;e=(e|0)==101;b=c[j>>2]|0;b=e?0:b;i=h;return b|0}else{Hk(l);e=c[j>>2]|0;e=(e|0)==101;b=c[j>>2]|0;b=e?0:b;i=h;return b|0}return 0}function vw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;g=d+16|0;j=d+12|0;h=d+8|0;k=d+4|0;f=d;c[g>>2]=a;c[j>>2]=b;if((c[j>>2]|0)>>>0<2){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[h>>2]=(((c[(c[g>>2]|0)+36>>2]|0)>>>0)/5|0)+1;c[k>>2]=(((c[j>>2]|0)-2|0)>>>0)/((c[h>>2]|0)>>>0)|0;c[f>>2]=($(c[k>>2]|0,c[h>>2]|0)|0)+2;if((c[f>>2]|0)==((((c[346]|0)>>>0)/((c[(c[g>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){c[f>>2]=(c[f>>2]|0)+1}c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}function ww(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=i;i=i+48|0;j=o+36|0;s=o+32|0;q=o+28|0;h=o+24|0;p=o+20|0;l=o+16|0;r=o+12|0;m=o+8|0;n=o+4|0;k=o;c[s>>2]=b;c[q>>2]=e;c[h>>2]=f;c[p>>2]=g;c[r>>2]=vw(c[s>>2]|0,c[q>>2]|0)|0;c[k>>2]=Uc(c[c[s>>2]>>2]|0,c[r>>2]|0,l,0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];s=c[j>>2]|0;i=o;return s|0}c[m>>2]=Wc(c[l>>2]|0)|0;c[n>>2]=((c[q>>2]|0)-(c[r>>2]|0)-1|0)*5;if((c[n>>2]|0)<0){Xc(c[l>>2]|0);c[j>>2]=ej(52032)|0;s=c[j>>2]|0;i=o;return s|0}a[c[h>>2]>>0]=a[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0;if((c[p>>2]|0)!=0){s=Ah((c[m>>2]|0)+((c[n>>2]|0)+1)|0)|0;c[c[p>>2]>>2]=s}Xc(c[l>>2]|0);if((d[c[h>>2]>>0]|0|0)>=1?(d[c[h>>2]>>0]|0|0)<=5:0){c[j>>2]=0;s=c[j>>2]|0;i=o;return s|0}c[j>>2]=ej(52040)|0;s=c[j>>2]|0;i=o;return s|0}function xw(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+25|0;l=f+20|0;h=f+16|0;k=f+12|0;j=f+8|0;m=f;n=f+24|0;c[l>>2]=b;c[h>>2]=e;c[k>>2]=d[c[l>>2]>>0]|0;c[l>>2]=(c[l>>2]|0)+1;c[j>>2]=d[c[l>>2]>>0]|0;if((c[j>>2]&128|0)==0){c[k>>2]=c[k>>2]&127;c[k>>2]=c[k>>2]<<7;c[c[h>>2]>>2]=c[k>>2]|c[j>>2];a[g>>0]=2;b=a[g>>0]|0;i=f;return b|0}c[l>>2]=(c[l>>2]|0)+1;c[k>>2]=c[k>>2]<<14;c[k>>2]=c[k>>2]|(d[c[l>>2]>>0]|0);if((c[k>>2]&128|0)==0){c[k>>2]=c[k>>2]&2080895;c[j>>2]=c[j>>2]&127;c[j>>2]=c[j>>2]<<7;c[c[h>>2]>>2]=c[k>>2]|c[j>>2];a[g>>0]=3;b=a[g>>0]|0;i=f;return b|0}c[l>>2]=(c[l>>2]|0)+ -2;a[n>>0]=pw(c[l>>2]|0,m)|0;b=m;if(0!=(c[b+4>>2]|0)?1:(c[m>>2]|0)!=(c[b>>2]|0)){c[c[h>>2]>>2]=-1}else{c[c[h>>2]>>2]=c[m>>2]}a[g>>0]=a[n>>0]|0;b=a[g>>0]|0;i=f;return b|0}function yw(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;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;k=i;i=i+64|0;j=k+56|0;l=k+52|0;m=k+48|0;n=k+44|0;s=k+36|0;u=k+32|0;o=k+28|0;t=k+24|0;r=k+16|0;q=k+8|0;p=k;c[l>>2]=b;c[m>>2]=f;c[n>>2]=g;c[k+40>>2]=h;c[s>>2]=(c[m>>2]|0)+(a[c[m>>2]>>0]&63);c[u>>2]=d[(c[m>>2]|0)+1>>0]|0;g=(c[(c[n>>2]|0)+8>>2]|0)+16|0;f=c[g+4>>2]|0;b=q;c[b>>2]=c[g>>2];c[b+4>>2]=f;do{switch(c[u>>2]|0){case 6:{b=r;c[b>>2]=d[c[s>>2]>>0]<<24|d[(c[s>>2]|0)+1>>0]<<16|d[(c[s>>2]|0)+2>>0]<<8|d[(c[s>>2]|0)+3>>0];c[b+4>>2]=0;b=c[r>>2]|0;f=r;c[f>>2]=d[(c[s>>2]|0)+4>>0]<<24|d[(c[s>>2]|0)+5>>0]<<16|d[(c[s>>2]|0)+6>>0]<<8|d[(c[s>>2]|0)+7>>0];c[f+4>>2]=b;f=r;b=c[f+4>>2]|0;u=p;c[u>>2]=c[f>>2];c[u+4>>2]=b;break};case 9:{u=p;c[u>>2]=1;c[u+4>>2]=0;break};case 8:{u=p;c[u>>2]=0;c[u+4>>2]=0;break};case 5:{b=a[c[s>>2]>>0]<<8|d[(c[s>>2]|0)+1>>0];u=p;c[u>>2]=bE(d[(c[s>>2]|0)+2>>0]<<24|d[(c[s>>2]|0)+3>>0]<<16|d[(c[s>>2]|0)+4>>0]<<8|d[(c[s>>2]|0)+5>>0]|0,0,lE(0,1,b|0,((b|0)<0)<<31>>31|0)|0,D|0)|0;c[u+4>>2]=D;break};case 7:case 0:{c[j>>2]=Aw(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,0)|0;u=c[j>>2]|0;i=k;return u|0};case 1:{b=a[c[s>>2]>>0]|0;u=p;c[u>>2]=b;c[u+4>>2]=((b|0)<0)<<31>>31;break};case 2:{b=a[c[s>>2]>>0]<<8|d[(c[s>>2]|0)+1>>0];u=p;c[u>>2]=b;c[u+4>>2]=((b|0)<0)<<31>>31;break};case 4:{c[t>>2]=d[c[s>>2]>>0]<<24|d[(c[s>>2]|0)+1>>0]<<16|d[(c[s>>2]|0)+2>>0]<<8|d[(c[s>>2]|0)+3>>0];b=c[t>>2]|0;u=p;c[u>>2]=b;c[u+4>>2]=((b|0)<0)<<31>>31;break};case 3:{b=a[c[s>>2]>>0]<<16|d[(c[s>>2]|0)+1>>0]<<8|d[(c[s>>2]|0)+2>>0];u=p;c[u>>2]=b;c[u+4>>2]=((b|0)<0)<<31>>31;break};default:{c[j>>2]=Aw(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,0)|0;u=c[j>>2]|0;i=k;return u|0}}}while(0);b=q;g=c[b+4>>2]|0;u=p;f=c[u+4>>2]|0;do{if(!((g|0)>(f|0)|((g|0)==(f|0)?(c[b>>2]|0)>>>0>(c[u>>2]|0)>>>0:0))){b=q;g=c[b+4>>2]|0;u=p;f=c[u+4>>2]|0;p=c[n>>2]|0;if((g|0)<(f|0)|((g|0)==(f|0)?(c[b>>2]|0)>>>0<(c[u>>2]|0)>>>0:0)){c[o>>2]=c[p+16>>2];break}if((e[p+4>>1]|0)>1){c[o>>2]=Aw(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,1)|0;break}else{c[o>>2]=a[(c[n>>2]|0)+6>>0]|0;break}}else{c[o>>2]=c[(c[n>>2]|0)+12>>2]}}while(0);c[j>>2]=c[o>>2];u=c[j>>2]|0;i=k;return u|0}function zw(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+48|0;k=j+40|0;n=j+36|0;m=j+32|0;r=j+28|0;o=j+20|0;t=j+16|0;l=j+12|0;q=j+8|0;p=j+4|0;s=j;c[n>>2]=b;c[m>>2]=f;c[r>>2]=g;c[j+24>>2]=h;c[o>>2]=c[m>>2];h=(c[o>>2]|0)+1|0;if((d[(c[o>>2]|0)+1>>0]|0)<128){c[t>>2]=d[h>>0]|0}else{xw(h,t)|0}do{if((c[t>>2]|0)>=12){if((c[t>>2]&1|0)==0){c[l>>2]=c[(c[r>>2]|0)+16>>2];break}c[s>>2]=d[c[o>>2]>>0]|0;c[p>>2]=((c[t>>2]|0)-12|0)/2|0;if(((c[s>>2]|0)+(c[p>>2]|0)|0)>(c[n>>2]|0)){b=(ej(65455)|0)&255;a[(c[r>>2]|0)+7>>0]=b;c[k>>2]=0;b=c[k>>2]|0;i=j;return b|0}if((c[(c[(c[r>>2]|0)+8>>2]|0)+24>>2]|0)<(c[p>>2]|0)){t=c[(c[(c[r>>2]|0)+8>>2]|0)+24>>2]|0}else{t=c[p>>2]|0}c[q>>2]=t;c[l>>2]=VD((c[o>>2]|0)+(c[s>>2]|0)|0,c[(c[(c[r>>2]|0)+8>>2]|0)+4>>2]|0,c[q>>2]|0)|0;if((c[l>>2]|0)!=0){m=c[r>>2]|0;if((c[l>>2]|0)>0){c[l>>2]=c[m+16>>2];break}else{c[l>>2]=c[m+12>>2];break}}c[l>>2]=(c[p>>2]|0)-(c[(c[(c[r>>2]|0)+8>>2]|0)+24>>2]|0);if((c[l>>2]|0)==0){if((e[(c[r>>2]|0)+4>>1]|0)>1){c[l>>2]=Aw(c[n>>2]|0,c[m>>2]|0,c[r>>2]|0,1)|0;break}else{c[l>>2]=a[(c[r>>2]|0)+6>>0]|0;break}}else{m=c[r>>2]|0;if((c[l>>2]|0)>0){c[l>>2]=c[m+16>>2];break}else{c[l>>2]=c[m+12>>2];break}}}else{c[l>>2]=c[(c[r>>2]|0)+12>>2]}}while(0);c[k>>2]=c[l>>2];b=c[k>>2]|0;i=j;return b|0}function Aw(f,g,j,k){f=f|0;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;p=i;i=i+160|0;o=p+148|0;B=p+144|0;K=p+140|0;n=p+136|0;J=p+132|0;G=p+128|0;E=p+124|0;q=p+120|0;H=p+116|0;m=p+112|0;w=p+108|0;l=p+104|0;u=p+100|0;s=p+40|0;I=p+96|0;C=p+92|0;t=p+32|0;v=p+24|0;r=p+16|0;y=p+8|0;x=p;F=p+88|0;A=p+84|0;z=p+80|0;c[B>>2]=f;c[K>>2]=g;c[n>>2]=j;c[J>>2]=k;c[m>>2]=0;c[w>>2]=c[(c[n>>2]|0)+8>>2];c[l>>2]=c[c[n>>2]>>2];c[u>>2]=c[K>>2];k=c[u>>2]|0;do{if((c[J>>2]|0)!=0){j=(c[u>>2]|0)+1|0;if((d[k+1>>0]|0)<128){c[I>>2]=d[j>>0]|0;k=1}else{k=(xw(j,I)|0)&255}c[H>>2]=1+(k&255);c[q>>2]=d[c[u>>2]>>0]|0;K=c[q>>2]|0;c[G>>2]=K+(Bw(c[I>>2]|0)|0);c[E>>2]=1;c[w>>2]=(c[w>>2]|0)+40}else{I=c[u>>2]|0;if((d[k>>0]|0)<128){c[q>>2]=d[I>>0]|0;I=1}else{I=(xw(I,q)|0)&255}c[H>>2]=I&255;c[G>>2]=c[q>>2];if(!((c[G>>2]|0)>>>0>(c[B>>2]|0)>>>0)){c[E>>2]=0;break}K=(ej(65169)|0)&255;a[(c[n>>2]|0)+7>>0]=K;c[o>>2]=0;K=c[o>>2]|0;i=p;return K|0}}while(0);a:while(1){do{if((b[(c[w>>2]|0)+28>>1]&4|0)!=0){c[C>>2]=d[(c[u>>2]|0)+(c[H>>2]|0)>>0]|0;if((c[C>>2]|0)>>>0>=12){c[m>>2]=1;break}if((c[C>>2]|0)==0){c[m>>2]=-1;break}if((c[C>>2]|0)==7){K=(c[w>>2]|0)+16|0;h[t>>3]=+((c[K>>2]|0)>>>0)+4294967296.0*+(c[K+4>>2]|0);Cw((c[u>>2]|0)+(c[G>>2]|0)|0,c[C>>2]|0,s)|0;if(+h[s+8>>3]<+h[t>>3]){c[m>>2]=-1;break}if(!(+h[s+8>>3]>+h[t>>3])){break}c[m>>2]=1;break}else{g=Dw(c[C>>2]|0,(c[u>>2]|0)+(c[G>>2]|0)|0)|0;K=v;c[K>>2]=g;c[K+4>>2]=D;K=(c[w>>2]|0)+16|0;g=c[K+4>>2]|0;J=r;c[J>>2]=c[K>>2];c[J+4>>2]=g;J=v;g=c[J+4>>2]|0;K=r;f=c[K+4>>2]|0;if((g|0)<(f|0)|((g|0)==(f|0)?(c[J>>2]|0)>>>0<(c[K>>2]|0)>>>0:0)){c[m>>2]=-1;break}J=v;g=c[J+4>>2]|0;K=r;f=c[K+4>>2]|0;if(!((g|0)>(f|0)|((g|0)==(f|0)?(c[J>>2]|0)>>>0>(c[K>>2]|0)>>>0:0))){break}c[m>>2]=1;break}}else{if((b[(c[w>>2]|0)+28>>1]&8|0)!=0){c[C>>2]=d[(c[u>>2]|0)+(c[H>>2]|0)>>0]|0;if((c[C>>2]|0)>>>0>=12){c[m>>2]=1;break}if((c[C>>2]|0)==0){c[m>>2]=-1;break}h[y>>3]=+h[(c[w>>2]|0)+8>>3];Cw((c[u>>2]|0)+(c[G>>2]|0)|0,c[C>>2]|0,s)|0;if((c[C>>2]|0)==7){h[x>>3]=+h[s+8>>3]}else{K=s+16|0;h[x>>3]=+((c[K>>2]|0)>>>0)+4294967296.0*+(c[K+4>>2]|0)}if(+h[x>>3]<+h[y>>3]){c[m>>2]=-1;break}if(!(+h[x>>3]>+h[y>>3])){break}c[m>>2]=1;break}if((b[(c[w>>2]|0)+28>>1]&2|0)==0){k=d[(c[u>>2]|0)+(c[H>>2]|0)>>0]|0;if((b[(c[w>>2]|0)+28>>1]&16|0)==0){c[C>>2]=k;c[m>>2]=(c[C>>2]|0)!=0&1;break}I=(c[u>>2]|0)+(c[H>>2]|0)|0;if((k|0)<128){c[C>>2]=d[I>>0]|0}else{xw(I,C)|0}if(!((c[C>>2]|0)>>>0<12)?(c[C>>2]&1|0)==0:0){c[A>>2]=(((c[C>>2]|0)-12|0)>>>0)/2|0;if(((c[G>>2]|0)+(c[A>>2]|0)|0)>>>0>(c[B>>2]|0)>>>0){q=63;break a}if((c[A>>2]|0)<(c[(c[w>>2]|0)+24>>2]|0)){I=c[A>>2]|0}else{I=c[(c[w>>2]|0)+24>>2]|0}c[z>>2]=I;c[m>>2]=VD((c[u>>2]|0)+(c[G>>2]|0)|0,c[(c[w>>2]|0)+4>>2]|0,c[z>>2]|0)|0;if((c[m>>2]|0)!=0){break}c[m>>2]=(c[A>>2]|0)-(c[(c[w>>2]|0)+24>>2]|0);break}c[m>>2]=-1;break}I=(c[u>>2]|0)+(c[H>>2]|0)|0;if((d[(c[u>>2]|0)+(c[H>>2]|0)>>0]|0)<128){c[C>>2]=d[I>>0]|0}else{xw(I,C)|0}if((c[C>>2]|0)>>>0<12){c[m>>2]=-1;break}if((c[C>>2]&1|0)==0){c[m>>2]=1;break}c[s+24>>2]=(((c[C>>2]|0)-12|0)>>>0)/2|0;if(((c[G>>2]|0)+(c[s+24>>2]|0)|0)>>>0>(c[B>>2]|0)>>>0){q=47;break a}if((c[(c[l>>2]|0)+20+(c[E>>2]<<2)>>2]|0)!=0){a[s+30>>0]=a[(c[l>>2]|0)+4>>0]|0;c[s>>2]=c[(c[l>>2]|0)+12>>2];b[s+28>>1]=2;c[s+4>>2]=(c[u>>2]|0)+(c[G>>2]|0);c[m>>2]=Vm(s,c[w>>2]|0,c[(c[l>>2]|0)+20+(c[E>>2]<<2)>>2]|0)|0;break}if((c[s+24>>2]|0)<(c[(c[w>>2]|0)+24>>2]|0)){I=c[s+24>>2]|0}else{I=c[(c[w>>2]|0)+24>>2]|0}c[F>>2]=I;c[m>>2]=VD((c[u>>2]|0)+(c[G>>2]|0)|0,c[(c[w>>2]|0)+4>>2]|0,c[F>>2]|0)|0;if((c[m>>2]|0)==0){c[m>>2]=(c[s+24>>2]|0)-(c[(c[w>>2]|0)+24>>2]|0)}}}while(0);I=c[E>>2]|0;if((c[m>>2]|0)!=0){q=71;break}c[E>>2]=I+1;c[w>>2]=(c[w>>2]|0)+40;K=Bw(c[C>>2]|0)|0;c[G>>2]=(c[G>>2]|0)+K;K=Ew(c[C>>2]|0,0)|0;c[H>>2]=(c[H>>2]|0)+K;if(!((c[H>>2]|0)>>>0<(c[q>>2]|0)>>>0)){q=77;break}if((c[E>>2]|0)>=(e[(c[n>>2]|0)+4>>1]|0)){q=77;break}if(!((c[G>>2]|0)>>>0<=(c[B>>2]|0)>>>0)){q=77;break}}if((q|0)==47){K=(ej(65248)|0)&255;a[(c[n>>2]|0)+7>>0]=K;c[o>>2]=0;K=c[o>>2]|0;i=p;return K|0}else if((q|0)==63){K=(ej(65275)|0)&255;a[(c[n>>2]|0)+7>>0]=K;c[o>>2]=0;K=c[o>>2]|0;i=p;return K|0}else if((q|0)==71){if((a[(c[(c[l>>2]|0)+16>>2]|0)+I>>0]|0)!=0){c[m>>2]=0-(c[m>>2]|0)}c[o>>2]=c[m>>2];K=c[o>>2]|0;i=p;return K|0}else if((q|0)==77){c[o>>2]=a[(c[n>>2]|0)+6>>0]|0;K=c[o>>2]|0;i=p;return K|0}return 0}function Bw(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;e=b+4|0;f=b;c[f>>2]=a;a=c[f>>2]|0;if((c[f>>2]|0)>>>0>=12){c[e>>2]=((a-12|0)>>>0)/2|0;f=c[e>>2]|0;i=b;return f|0}else{c[e>>2]=d[24216+a>>0]|0;f=c[e>>2]|0;i=b;return f|0}return 0}function Cw(e,f,g){e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+32|0;k=n+28|0;m=n+24|0;o=n+20|0;l=n+16|0;j=n;p=n+12|0;q=n+8|0;c[m>>2]=e;c[o>>2]=f;c[l>>2]=g;switch(c[o>>2]|0){case 3:{f=a[c[m>>2]>>0]<<16|d[(c[m>>2]|0)+1>>0]<<8|d[(c[m>>2]|0)+2>>0];e=(c[l>>2]|0)+16|0;c[e>>2]=f;c[e+4>>2]=((f|0)<0)<<31>>31;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=3;e=c[k>>2]|0;i=n;return e|0};case 7:case 6:{f=j;c[f>>2]=d[c[m>>2]>>0]<<24|d[(c[m>>2]|0)+1>>0]<<16|d[(c[m>>2]|0)+2>>0]<<8|d[(c[m>>2]|0)+3>>0];c[f+4>>2]=0;c[p>>2]=d[(c[m>>2]|0)+4>>0]<<24|d[(c[m>>2]|0)+5>>0]<<16|d[(c[m>>2]|0)+6>>0]<<8|d[(c[m>>2]|0)+7>>0];f=c[j>>2]|0;e=j;c[e>>2]=c[p>>2];c[e+4>>2]=f;if((c[o>>2]|0)==6){q=j;f=c[q+4>>2]|0;e=(c[l>>2]|0)+16|0;c[e>>2]=c[q>>2];c[e+4>>2]=f;b[(c[l>>2]|0)+28>>1]=4}else{e=(c[l>>2]|0)+8|0;c[e+0>>2]=c[j+0>>2];c[e+4>>2]=c[j+4>>2];e=(Fw(+h[(c[l>>2]|0)+8>>3])|0)!=0;b[(c[l>>2]|0)+28>>1]=e?1:8}c[k>>2]=8;e=c[k>>2]|0;i=n;return e|0};case 5:{e=d[(c[m>>2]|0)+2>>0]<<24|d[(c[m>>2]|0)+3>>0]<<16|d[(c[m>>2]|0)+4>>0]<<8|d[(c[m>>2]|0)+5>>0];f=a[c[m>>2]>>0]<<8|d[(c[m>>2]|0)+1>>0];f=bE(e|0,0,lE(0,1,f|0,((f|0)<0)<<31>>31|0)|0,D|0)|0;e=(c[l>>2]|0)+16|0;c[e>>2]=f;c[e+4>>2]=D;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=6;e=c[k>>2]|0;i=n;return e|0};case 9:case 8:{e=(c[l>>2]|0)+16|0;c[e>>2]=(c[o>>2]|0)-8;c[e+4>>2]=0;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=0;e=c[k>>2]|0;i=n;return e|0};case 1:{f=a[c[m>>2]>>0]|0;e=(c[l>>2]|0)+16|0;c[e>>2]=f;c[e+4>>2]=((f|0)<0)<<31>>31;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=1;e=c[k>>2]|0;i=n;return e|0};case 0:case 11:case 10:{b[(c[l>>2]|0)+28>>1]=1;c[k>>2]=0;e=c[k>>2]|0;i=n;return e|0};case 2:{f=a[c[m>>2]>>0]<<8|d[(c[m>>2]|0)+1>>0];e=(c[l>>2]|0)+16|0;c[e>>2]=f;c[e+4>>2]=((f|0)<0)<<31>>31;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=2;e=c[k>>2]|0;i=n;return e|0};case 4:{c[p>>2]=d[c[m>>2]>>0]<<24|d[(c[m>>2]|0)+1>>0]<<16|d[(c[m>>2]|0)+2>>0]<<8|d[(c[m>>2]|0)+3>>0];f=c[p>>2]|0;e=(c[l>>2]|0)+16|0;c[e>>2]=f;c[e+4>>2]=((f|0)<0)<<31>>31;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=4;e=c[k>>2]|0;i=n;return e|0};default:{c[q>>2]=(((c[o>>2]|0)-12|0)>>>0)/2|0;c[(c[l>>2]|0)+4>>2]=c[m>>2];c[(c[l>>2]|0)+24>>2]=c[q>>2];c[(c[l>>2]|0)+32>>2]=0;b[(c[l>>2]|0)+28>>1]=b[24208+((c[o>>2]&1)<<1)>>1]|0;c[k>>2]=c[q>>2];e=c[k>>2]|0;i=n;return e|0}}return 0}function Dw(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;f=g+8|0;l=g+24|0;h=g+20|0;k=g+16|0;j=g;c[l>>2]=b;c[h>>2]=e;switch(c[l>>2]|0){case 3:{l=a[c[h>>2]>>0]<<16|d[(c[h>>2]|0)+1>>0]<<8|d[(c[h>>2]|0)+2>>0];b=f;c[b>>2]=l;c[b+4>>2]=((l|0)<0)<<31>>31;break};case 1:case 0:{l=a[c[h>>2]>>0]|0;b=f;c[b>>2]=l;c[b+4>>2]=((l|0)<0)<<31>>31;break};case 5:{k=d[(c[h>>2]|0)+2>>0]<<24|d[(c[h>>2]|0)+3>>0]<<16|d[(c[h>>2]|0)+4>>0]<<8|d[(c[h>>2]|0)+5>>0];l=a[c[h>>2]>>0]<<8|d[(c[h>>2]|0)+1>>0];b=f;c[b>>2]=bE(k|0,0,lE(0,1,l|0,((l|0)<0)<<31>>31|0)|0,D|0)|0;c[b+4>>2]=D;break};case 6:{l=j;c[l>>2]=d[c[h>>2]>>0]<<24|d[(c[h>>2]|0)+1>>0]<<16|d[(c[h>>2]|0)+2>>0]<<8|d[(c[h>>2]|0)+3>>0];c[l+4>>2]=0;l=c[j>>2]|0;k=j;c[k>>2]=d[(c[h>>2]|0)+4>>0]<<24|d[(c[h>>2]|0)+5>>0]<<16|d[(c[h>>2]|0)+6>>0]<<8|d[(c[h>>2]|0)+7>>0];c[k+4>>2]=l;k=j;l=c[k+4>>2]|0;b=f;c[b>>2]=c[k>>2];c[b+4>>2]=l;break};case 2:{l=a[c[h>>2]>>0]<<8|d[(c[h>>2]|0)+1>>0];b=f;c[b>>2]=l;c[b+4>>2]=((l|0)<0)<<31>>31;break};case 4:{c[k>>2]=d[c[h>>2]>>0]<<24|d[(c[h>>2]|0)+1>>0]<<16|d[(c[h>>2]|0)+2>>0]<<8|d[(c[h>>2]|0)+3>>0];l=c[k>>2]|0;b=f;c[b>>2]=l;c[b+4>>2]=((l|0)<0)<<31>>31;break};default:{b=f;c[b>>2]=(c[l>>2]|0)-8;c[b+4>>2]=0}}b=f;D=c[b+4>>2]|0;i=g;return c[b>>2]|0}function Ew(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d;e=d+8|0;g=f;c[g>>2]=a;c[g+4>>2]=b;c[e>>2]=0;while(1){c[e>>2]=(c[e>>2]|0)+1;a=f;a=cE(c[a>>2]|0,c[a+4>>2]|0,7)|0;g=f;c[g>>2]=a;c[g+4>>2]=D;g=f;if(!((c[g>>2]|0)!=0|(c[g+4>>2]|0)!=0)){b=4;break}if((c[e>>2]|0)>=9){b=4;break}}if((b|0)==4){i=d;return c[e>>2]|0}return 0}function Fw(a){a=+a;var b=0,d=0,e=0,f=0,g=0;d=i;i=i+32|0;g=d+16|0;b=d+24|0;f=d+8|0;e=d;h[g>>3]=a;h[f>>3]=+h[g>>3];h[e>>3]=+h[f>>3];c[b>>2]=+h[f>>3]!=+h[e>>3]&1;i=d;return c[b>>2]|0}function Gw(f){f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;j=g+12|0;l=g+8|0;h=g+4|0;k=g;c[j>>2]=f;c[h>>2]=0;while(1){if((c[h>>2]|0)!=0){f=5;break}f=c[(c[j>>2]|0)+128+(b[(c[j>>2]|0)+84>>1]<<2)>>2]|0;c[k>>2]=f;if(!((a[f+3>>0]|0)!=0^1)){f=5;break}c[l>>2]=Ah((c[(c[k>>2]|0)+56>>2]|0)+(e[(c[k>>2]|0)+18>>1]&(d[(c[(c[k>>2]|0)+64>>2]|0)+(e[(c[j>>2]|0)+86+(b[(c[j>>2]|0)+84>>1]<<1)>>1]<<1)>>0]<<8|d[(c[(c[k>>2]|0)+64>>2]|0)+(e[(c[j>>2]|0)+86+(b[(c[j>>2]|0)+84>>1]<<1)>>1]<<1)+1>>0]))|0)|0;c[h>>2]=cw(c[j>>2]|0,c[l>>2]|0)|0}if((f|0)==5){i=g;return c[h>>2]|0}return 0}function Hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;f=d+16|0;j=d+12|0;h=d+8|0;e=d+4|0;g=d;c[f>>2]=a;c[j>>2]=b;c[e>>2]=Xn(c[c[f>>2]>>2]|0,0,(c[j>>2]|0)+12|0,0)|0;if((c[e>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[h>>2]=Qe(c[c[f>>2]>>2]|0,c[(c[(c[j>>2]|0)+4>>2]|0)+20>>2]|0)|0;if(!((c[h>>2]|0)==0|(c[h>>2]|0)>=2)){a=c[e>>2]|0;i=d;return a|0}c[g>>2]=c[c[f>>2]>>2];a=he(c[g>>2]|0,c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)>>2]|0)|0;c[(c[e>>2]|0)+8+(((c[c[e>>2]>>2]|0)-1|0)*72|0)+4>>2]=a;a=c[e>>2]|0;i=d;return a|0}function Iw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d+4|0;f=d;c[g>>2]=a;c[e>>2]=b;if((c[e>>2]|0)==0){i=d;return}c[f>>2]=c[(c[e>>2]|0)+28>>2];hn(c[g>>2]|0,c[(c[f>>2]|0)+20>>2]|0);dn(c[g>>2]|0,c[(c[f>>2]|0)+24>>2]|0);en(c[g>>2]|0,c[(c[f>>2]|0)+8>>2]|0);hn(c[g>>2]|0,c[(c[e>>2]|0)+12>>2]|0);Wb(c[g>>2]|0,c[e>>2]|0);i=d;return}function Jw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;d=e+12|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;if((c[f>>2]|0)!=0?(c[g>>2]|0)!=0:0){c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[c[g>>2]>>2]|0)){b=9;break}if((Tq(c[f>>2]|0,c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*20|0)+4>>2]|0)|0)>=0){b=7;break}c[h>>2]=(c[h>>2]|0)+1}if((b|0)==7){c[d>>2]=1;a=c[d>>2]|0;i=e;return a|0}else if((b|0)==9){c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}}c[d>>2]=1;a=c[d>>2]|0;i=e;return a|0}function Kw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+8|0;g=e+4|0;f=e;c[g>>2]=a;c[f>>2]=b;b=(c[f>>2]|0)==0;do{if((c[g>>2]|0)!=0){if(b){c[d>>2]=0;break}else{c[d>>2]=(vc(c[g>>2]|0,c[f>>2]|0)|0)==0&1;break}}else{c[d>>2]=b&1}}while(0);i=e;return c[d>>2]|0}function Lw(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;h=g+12|0;k=g+8|0;j=g+4|0;l=g;c[k>>2]=a;c[j>>2]=f;if((e[(c[k>>2]|0)+50>>1]|0)!=(e[(c[j>>2]|0)+50>>1]|0)){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}if((d[(c[k>>2]|0)+54>>0]|0)!=(d[(c[j>>2]|0)+54>>0]|0)){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(e[(c[j>>2]|0)+50>>1]|0)){f=14;break}if((b[(c[(c[j>>2]|0)+4>>2]|0)+(c[l>>2]<<1)>>1]|0)!=(b[(c[(c[k>>2]|0)+4>>2]|0)+(c[l>>2]<<1)>>1]|0)){f=8;break}if((d[(c[(c[j>>2]|0)+28>>2]|0)+(c[l>>2]|0)>>0]|0)!=(d[(c[(c[k>>2]|0)+28>>2]|0)+(c[l>>2]|0)>>0]|0)){f=10;break}if((Kw(c[(c[(c[j>>2]|0)+32>>2]|0)+(c[l>>2]<<2)>>2]|0,c[(c[(c[k>>2]|0)+32>>2]|0)+(c[l>>2]<<2)>>2]|0)|0)==0){f=12;break}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==8){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}else if((f|0)==10){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}else if((f|0)==12){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}else if((f|0)==14){if((mq(c[(c[j>>2]|0)+36>>2]|0,c[(c[k>>2]|0)+36>>2]|0,-1)|0)!=0){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}else{c[h>>2]=1;a=c[h>>2]|0;i=g;return a|0}}return 0}function Mw(a,d,e,f,g,h,j,k){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;l=i;i=i+96|0;z=l+88|0;y=l+84|0;v=l+80|0;C=l+76|0;A=l+72|0;D=l+68|0;m=l+64|0;q=l+60|0;n=l+56|0;x=l+52|0;u=l+48|0;E=l+44|0;r=l+40|0;w=l+36|0;s=l+32|0;o=l+28|0;t=l+24|0;p=l+20|0;B=l;c[z>>2]=a;c[y>>2]=d;c[v>>2]=e;c[C>>2]=f;c[A>>2]=g;c[D>>2]=h;c[m>>2]=j;c[q>>2]=k;c[n>>2]=c[(c[z>>2]|0)+8>>2];c[x>>2]=0;c[u>>2]=0;c[t>>2]=c[c[z>>2]>>2];c[p>>2]=zp(c[t>>2]|0,c[v>>2]|0)|0;a=c[z>>2]|0;c[x>>2]=Rn(a,0,Un(c[t>>2]|0,27,24416)|0)|0;if((c[A>>2]|0)!=0){d=c[z>>2]|0;a=c[x>>2]|0;c[x>>2]=Rn(d,a,kq(c[t>>2]|0,c[A>>2]|0,0)|0)|0}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(b[(c[v>>2]|0)+38>>1]|0)){break}j=c[t>>2]|0;k=c[w>>2]|0;if((c[(c[D>>2]|0)+(c[w>>2]<<2)>>2]|0)>=0){c[E>>2]=kq(j,c[(c[(c[C>>2]|0)+4>>2]|0)+((c[(c[D>>2]|0)+(k<<2)>>2]|0)*20|0)>>2]|0,0)|0}else{c[E>>2]=Un(j,27,c[(c[(c[v>>2]|0)+4>>2]|0)+(k*24|0)>>2]|0)|0}c[x>>2]=Rn(c[z>>2]|0,c[x>>2]|0,c[E>>2]|0)|0;c[w>>2]=(c[w>>2]|0)+1}c[u>>2]=Qn(c[z>>2]|0,c[x>>2]|0,c[y>>2]|0,c[m>>2]|0,0,0,0,0,0,0)|0;a=(c[z>>2]|0)+68|0;d=c[a>>2]|0;c[a>>2]=d+1;c[r>>2]=d;To(c[n>>2]|0,55,c[r>>2]|0,(b[(c[v>>2]|0)+38>>1]|0)+1+((c[A>>2]|0)!=0&1)|0)|0;Se(c[n>>2]|0,8);Ks(B,14,c[r>>2]|0);On(c[z>>2]|0,c[u>>2]|0,B)|0;d=(c[z>>2]|0)+72|0;a=(c[d>>2]|0)+1|0;c[d>>2]=a;c[o>>2]=a;a=(c[z>>2]|0)+72|0;c[a>>2]=(c[a>>2]|0)+((b[(c[v>>2]|0)+38>>1]|0)+1);c[s>>2]=To(c[n>>2]|0,105,c[r>>2]|0,0)|0;Wo(c[n>>2]|0,46,c[r>>2]|0,0,c[o>>2]|0)|0;Wo(c[n>>2]|0,46,c[r>>2]|0,(c[A>>2]|0)!=0?1:0,(c[o>>2]|0)+1|0)|0;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(b[(c[v>>2]|0)+38>>1]|0)){break}Wo(c[n>>2]|0,46,c[r>>2]|0,(c[w>>2]|0)+1+((c[A>>2]|0)!=0&1)|0,(c[o>>2]|0)+2+(c[w>>2]|0)|0)|0;c[w>>2]=(c[w>>2]|0)+1}du(c[z>>2]|0,c[v>>2]|0);Vo(c[n>>2]|0,15,0,(b[(c[v>>2]|0)+38>>1]|0)+2|0,c[o>>2]|0,c[p>>2]|0,-10)|0;Se(c[n>>2]|0,((c[q>>2]|0)==10?2:c[q>>2]|0)&255);Ap(c[z>>2]|0);To(c[n>>2]|0,9,c[r>>2]|0,(c[s>>2]|0)+1|0)|0;mp(c[n>>2]|0,c[s>>2]|0);To(c[n>>2]|0,58,c[r>>2]|0,0)|0;en(c[t>>2]|0,c[u>>2]|0);i=l;return}function Nw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e+4|0;g=e;c[f>>2]=a;c[h>>2]=b;c[g>>2]=d;c[(c[h>>2]|0)+4>>2]=c[f>>2];c[c[h>>2]>>2]=c[(c[f>>2]|0)+492>>2];c[(c[f>>2]|0)+492>>2]=c[g>>2];i=e;return}function Ow(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+64|0;k=m+48|0;p=m+44|0;f=m+40|0;l=m+36|0;j=m+16|0;g=m+12|0;n=m+8|0;h=m+4|0;o=m;c[k>>2]=a;c[p>>2]=b;c[f>>2]=d;c[l>>2]=e;c[h>>2]=c[c[k>>2]>>2];c[o>>2]=Qe(c[h>>2]|0,c[(c[p>>2]|0)+68>>2]|0)|0;c[f>>2]=kq(c[h>>2]|0,c[f>>2]|0,0)|0;c[n>>2]=Xn(c[h>>2]|0,0,0,0)|0;if((c[n>>2]|0)!=0){a=he(c[h>>2]|0,c[c[p>>2]>>2]|0)|0;c[(c[n>>2]|0)+16>>2]=a;a=he(c[h>>2]|0,c[(c[(c[h>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2]|0)|0;c[(c[n>>2]|0)+12>>2]=a}c[g>>2]=Qn(c[k>>2]|0,0,c[n>>2]|0,c[f>>2]|0,0,0,0,0,0,0)|0;Ks(j,12,c[l>>2]|0);On(c[k>>2]|0,c[g>>2]|0,j)|0;en(c[h>>2]|0,c[g>>2]|0);i=m;return}function Pw(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;f=i;i=i+16|0;e=f+4|0;g=f;c[e>>2]=a;c[g>>2]=b;a=c[g>>2]|0;b=(c[e>>2]|0)+60|0;c[a+0>>2]=c[b+0>>2];c[a+4>>2]=c[b+4>>2];i=f;return d[(c[e>>2]|0)+38>>0]|0|0}function Qw(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[d>>2]|0)+4>>2]|0)==0){i=b;return}c[(c[(c[d>>2]|0)+4>>2]|0)+492>>2]=c[c[d>>2]>>2];c[(c[d>>2]|0)+4>>2]=0;i=b;return}function Rw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+48|0;f=g+32|0;o=g+28|0;l=g+24|0;k=g+20|0;j=g+16|0;h=g+12|0;m=g+8|0;p=g+4|0;n=g;c[o>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;do{if(((c[c[l>>2]>>2]|0)+(c[k>>2]|0)|0)>>>0>(c[(c[l>>2]|0)+4>>2]|0)>>>0){c[p>>2]=(c[c[l>>2]>>2]|0)+(c[k>>2]|0);c[m>>2]=Pm(c[o>>2]|0,c[l>>2]|0,80+(((c[p>>2]|0)-1|0)*72|0)|0)|0;if((c[m>>2]|0)!=0){c[l>>2]=c[m>>2];c[n>>2]=((((Yo(c[o>>2]|0,c[m>>2]|0)|0)-80|0)>>>0)/72|0)+1;c[(c[l>>2]|0)+4>>2]=c[n>>2];break}c[f>>2]=c[l>>2];a=c[f>>2]|0;i=g;return a|0}}while(0);c[h>>2]=(c[c[l>>2]>>2]|0)-1;while(1){if((c[h>>2]|0)<(c[j>>2]|0)){break}e=(c[l>>2]|0)+8+(((c[h>>2]|0)+(c[k>>2]|0)|0)*72|0)+0|0;n=(c[l>>2]|0)+8+((c[h>>2]|0)*72|0)+0|0;m=e+72|0;do{c[e>>2]=c[n>>2];e=e+4|0;n=n+4|0}while((e|0)<(m|0));c[h>>2]=(c[h>>2]|0)+ -1}a=c[l>>2]|0;c[a>>2]=(c[a>>2]|0)+(c[k>>2]|0);_D((c[l>>2]|0)+8+((c[j>>2]|0)*72|0)|0,0,(c[k>>2]|0)*72|0)|0;c[h>>2]=c[j>>2];while(1){if((c[h>>2]|0)>=((c[j>>2]|0)+(c[k>>2]|0)|0)){break}c[(c[l>>2]|0)+8+((c[h>>2]|0)*72|0)+40>>2]=-1;c[h>>2]=(c[h>>2]|0)+1}c[f>>2]=c[l>>2];a=c[f>>2]|0;i=g;return a|0}function Sw(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;h=f;g=f+20|0;j=f+16|0;m=f+12|0;l=f+8|0;k=f+4|0;c[j>>2]=a;c[m>>2]=b;c[l>>2]=e;c[k>>2]=d[c[m>>2]>>0]|0;if((c[l>>2]|0)>1?(c[k>>2]|0)==10|(c[k>>2]|0)==11:0){Ne(c[j>>2]|0,25248,h);c[g>>2]=1;m=c[g>>2]|0;i=f;return m|0}c[g>>2]=0;m=c[g>>2]|0;i=f;return m|0}function Tw(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=0;br(c[e>>2]|0,b);i=d;return c[b>>2]|0}function Uw(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;B=i;i=i+128|0;x=B+108|0;H=B+104|0;G=B+100|0;s=B+96|0;C=B+92|0;z=B+88|0;P=B+84|0;t=B+80|0;l=B+76|0;o=B+72|0;q=B+68|0;y=B+64|0;v=B+60|0;D=B+56|0;p=B+52|0;A=B+48|0;w=B+44|0;n=B+40|0;O=B+36|0;K=B+32|0;I=B+28|0;M=B+24|0;N=B+20|0;J=B+16|0;E=B+12|0;F=B+8|0;r=B+4|0;u=B+112|0;m=B;c[H>>2]=f;c[G>>2]=g;c[s>>2]=h;c[C>>2]=j;c[z>>2]=k;c[P>>2]=c[(c[H>>2]|0)+492>>2];c[n>>2]=c[c[H>>2]>>2];if((b[(c[n>>2]|0)+60>>1]&1|0)!=0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}c[q>>2]=c[(c[G>>2]|0)+32>>2];c[w>>2]=(c[q>>2]|0)+8+((c[s>>2]|0)*72|0);c[D>>2]=c[(c[w>>2]|0)+40>>2];c[l>>2]=c[(c[w>>2]|0)+20>>2];if((c[C>>2]|0)!=0?(c[z>>2]|0)!=0:0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}if((c[z>>2]|0)!=0?(c[c[q>>2]>>2]|0)>1:0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}c[y>>2]=c[(c[l>>2]|0)+32>>2];if((c[(c[l>>2]|0)+60>>2]|0)!=0?(c[(c[G>>2]|0)+60>>2]|0)!=0:0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}if((c[(c[l>>2]|0)+64>>2]|0)!=0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}if((b[(c[G>>2]|0)+6>>1]&4096|0)!=0?(c[(c[l>>2]|0)+60>>2]|0)!=0:0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}if((c[c[y>>2]>>2]|0)==0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}if((b[(c[l>>2]|0)+6>>1]&1|0)!=0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}do{if((c[(c[l>>2]|0)+60>>2]|0)!=0){if((c[c[q>>2]>>2]|0)<=1?(c[C>>2]|0)==0:0){break}c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}}while(0);if((b[(c[G>>2]|0)+6>>1]&1|0)!=0?(c[z>>2]|0)!=0:0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}if((c[(c[G>>2]|0)+48>>2]|0)!=0?(c[(c[l>>2]|0)+48>>2]|0)!=0:0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}if((c[C>>2]|0)!=0?(c[(c[l>>2]|0)+48>>2]|0)!=0:0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}if((c[(c[l>>2]|0)+60>>2]|0)!=0?(c[(c[G>>2]|0)+36>>2]|0)!=0:0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}if((c[(c[l>>2]|0)+60>>2]|0)!=0?(b[(c[G>>2]|0)+6>>1]&1|0)!=0:0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}if((b[(c[l>>2]|0)+6>>1]&2048|0)!=0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}if((b[(c[G>>2]|0)+6>>1]&2048|0)!=0?(c[(c[l>>2]|0)+52>>2]|0)!=0:0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}if((a[(c[w>>2]|0)+36>>0]&32|0)!=0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}a:do{if((c[(c[l>>2]|0)+52>>2]|0)!=0){if((c[(c[l>>2]|0)+48>>2]|0)!=0){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}do{if((c[C>>2]|0)==0){if((b[(c[G>>2]|0)+6>>1]&1|0)!=0){break}if((c[c[q>>2]>>2]|0)!=1){break}c[o>>2]=c[l>>2];while(1){if((c[o>>2]|0)==0){break}if((b[(c[o>>2]|0)+6>>1]&5|0)!=0){L=61;break}if((c[(c[o>>2]|0)+52>>2]|0)!=0?(d[(c[o>>2]|0)+4>>0]|0)!=116:0){L=61;break}if((c[c[(c[o>>2]|0)+32>>2]>>2]|0)<1){L=61;break}if((c[c[c[l>>2]>>2]>>2]|0)!=(c[c[c[o>>2]>>2]>>2]|0)){L=61;break}c[o>>2]=c[(c[o>>2]|0)+52>>2]}if((L|0)==61){c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}if((c[(c[G>>2]|0)+48>>2]|0)==0){break a}c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[c[(c[G>>2]|0)+48>>2]>>2]|0)){break a}if((e[(c[(c[(c[G>>2]|0)+48>>2]|0)+4>>2]|0)+((c[O>>2]|0)*20|0)+16>>1]|0)==0){break}c[O>>2]=(c[O>>2]|0)+1}c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}}while(0);c[x>>2]=0;P=c[x>>2]|0;i=B;return P|0}}while(0);c[(c[H>>2]|0)+492>>2]=c[(c[w>>2]|0)+8>>2];Oo(c[H>>2]|0,21,0,0,0)|0;c[(c[H>>2]|0)+492>>2]=c[P>>2];c[l>>2]=c[(c[l>>2]|0)+52>>2];while(1){if((c[l>>2]|0)==0){break}c[I>>2]=c[(c[G>>2]|0)+48>>2];c[M>>2]=c[(c[G>>2]|0)+60>>2];c[N>>2]=c[(c[G>>2]|0)+64>>2];c[J>>2]=c[(c[G>>2]|0)+52>>2];c[(c[G>>2]|0)+48>>2]=0;c[(c[G>>2]|0)+32>>2]=0;c[(c[G>>2]|0)+52>>2]=0;c[(c[G>>2]|0)+60>>2]=0;c[(c[G>>2]|0)+64>>2]=0;c[K>>2]=Ep(c[n>>2]|0,c[G>>2]|0,0)|0;c[(c[G>>2]|0)+64>>2]=c[N>>2];c[(c[G>>2]|0)+60>>2]=c[M>>2];c[(c[G>>2]|0)+48>>2]=c[I>>2];c[(c[G>>2]|0)+32>>2]=c[q>>2];a[(c[G>>2]|0)+4>>0]=116;f=c[J>>2]|0;if((c[K>>2]|0)==0){c[(c[G>>2]|0)+52>>2]=f}else{c[(c[K>>2]|0)+52>>2]=f;if((c[J>>2]|0)!=0){c[(c[J>>2]|0)+56>>2]=c[K>>2]}c[(c[K>>2]|0)+56>>2]=c[G>>2];c[(c[G>>2]|0)+52>>2]=c[K>>2]}if((a[(c[n>>2]|0)+64>>0]|0)!=0){L=77;break}c[l>>2]=c[(c[l>>2]|0)+52>>2]}if((L|0)==77){c[x>>2]=1;P=c[x>>2]|0;i=B;return P|0}P=c[(c[w>>2]|0)+20>>2]|0;c[o>>2]=P;c[l>>2]=P;Wb(c[n>>2]|0,c[(c[w>>2]|0)+4>>2]|0);Wb(c[n>>2]|0,c[(c[w>>2]|0)+8>>2]|0);Wb(c[n>>2]|0,c[(c[w>>2]|0)+12>>2]|0);c[(c[w>>2]|0)+4>>2]=0;c[(c[w>>2]|0)+8>>2]=0;c[(c[w>>2]|0)+12>>2]=0;c[(c[w>>2]|0)+20>>2]=0;if((c[(c[w>>2]|0)+16>>2]|0)!=0){c[E>>2]=c[(c[w>>2]|0)+16>>2];if((e[(c[E>>2]|0)+40>>1]|0)==1){I=c[H>>2]|0;if((c[(c[H>>2]|0)+408>>2]|0)!=0){I=c[I+408>>2]|0}c[F>>2]=I;c[(c[E>>2]|0)+72>>2]=c[(c[F>>2]|0)+524>>2];c[(c[F>>2]|0)+524>>2]=c[E>>2]}else{P=(c[E>>2]|0)+40|0;b[P>>1]=(b[P>>1]|0)+ -1<<16>>16}c[(c[w>>2]|0)+16>>2]=0}c[t>>2]=c[G>>2];while(1){if((c[t>>2]|0)==0){break}a[u>>0]=0;c[y>>2]=c[(c[l>>2]|0)+32>>2];c[r>>2]=c[c[y>>2]>>2];c[q>>2]=c[(c[t>>2]|0)+32>>2];if((c[q>>2]|0)==0){P=Xn(c[n>>2]|0,0,0,0)|0;c[(c[t>>2]|0)+32>>2]=P;c[q>>2]=P;if((c[q>>2]|0)==0){break}}else{a[u>>0]=a[(c[w>>2]|0)+36>>0]|0}if((c[r>>2]|0)>1?(P=Rw(c[n>>2]|0,c[q>>2]|0,(c[r>>2]|0)-1|0,(c[s>>2]|0)+1|0)|0,c[q>>2]=P,c[(c[t>>2]|0)+32>>2]=P,(a[(c[n>>2]|0)+64>>0]|0)!=0):0){break}c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[r>>2]|0)){break}jn(c[n>>2]|0,c[(c[q>>2]|0)+8+(((c[p>>2]|0)+(c[s>>2]|0)|0)*72|0)+48>>2]|0);G=(c[q>>2]|0)+8+(((c[p>>2]|0)+(c[s>>2]|0)|0)*72|0)+0|0;F=(c[y>>2]|0)+8+((c[p>>2]|0)*72|0)+0|0;E=G+72|0;do{c[G>>2]=c[F>>2];G=G+4|0;F=F+4|0}while((G|0)<(E|0));G=(c[y>>2]|0)+8+((c[p>>2]|0)*72|0)+0|0;E=G+72|0;do{c[G>>2]=0;G=G+4|0}while((G|0)<(E|0));c[p>>2]=(c[p>>2]|0)+1}a[(c[q>>2]|0)+8+((c[s>>2]|0)*72|0)+36>>0]=a[u>>0]|0;c[v>>2]=c[c[t>>2]>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[c[v>>2]>>2]|0)){break}if((c[(c[(c[v>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)+4>>2]|0)==0){c[m>>2]=he(c[n>>2]|0,c[(c[(c[v>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)+8>>2]|0)|0;hm(c[m>>2]|0)|0;c[(c[(c[v>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)+4>>2]=c[m>>2]}c[p>>2]=(c[p>>2]|0)+1}Fx(c[n>>2]|0,c[c[t>>2]>>2]|0,c[D>>2]|0,c[c[l>>2]>>2]|0);if((c[C>>2]|0)!=0){Fx(c[n>>2]|0,c[(c[t>>2]|0)+40>>2]|0,c[D>>2]|0,c[c[l>>2]>>2]|0);P=Gx(c[n>>2]|0,c[(c[t>>2]|0)+44>>2]|0,c[D>>2]|0,c[c[l>>2]>>2]|0)|0;c[(c[t>>2]|0)+44>>2]=P}do{if((c[(c[l>>2]|0)+48>>2]|0)!=0){c[(c[t>>2]|0)+48>>2]=c[(c[l>>2]|0)+48>>2];c[(c[l>>2]|0)+48>>2]=0}else{if((c[(c[t>>2]|0)+48>>2]|0)==0){break}Fx(c[n>>2]|0,c[(c[t>>2]|0)+48>>2]|0,c[D>>2]|0,c[c[l>>2]>>2]|0)}}while(0);if((c[(c[l>>2]|0)+36>>2]|0)!=0){c[A>>2]=kq(c[n>>2]|0,c[(c[l>>2]|0)+36>>2]|0,0)|0}else{c[A>>2]=0}if((c[z>>2]|0)!=0){c[(c[t>>2]|0)+44>>2]=c[(c[t>>2]|0)+36>>2];c[(c[t>>2]|0)+36>>2]=c[A>>2];g=Gx(c[n>>2]|0,c[(c[t>>2]|0)+44>>2]|0,c[D>>2]|0,c[c[l>>2]>>2]|0)|0;c[(c[t>>2]|0)+44>>2]=g;g=c[n>>2]|0;P=c[(c[t>>2]|0)+44>>2]|0;P=Xq(g,P,kq(c[n>>2]|0,c[(c[l>>2]|0)+44>>2]|0,0)|0)|0;c[(c[t>>2]|0)+44>>2]=P;P=sq(c[n>>2]|0,c[(c[l>>2]|0)+40>>2]|0,0)|0;c[(c[t>>2]|0)+40>>2]=P}else{P=Gx(c[n>>2]|0,c[(c[t>>2]|0)+36>>2]|0,c[D>>2]|0,c[c[l>>2]>>2]|0)|0;c[(c[t>>2]|0)+36>>2]=P;P=Xq(c[n>>2]|0,c[(c[t>>2]|0)+36>>2]|0,c[A>>2]|0)|0;c[(c[t>>2]|0)+36>>2]=P}P=(c[t>>2]|0)+6|0;b[P>>1]=e[P>>1]|b[(c[l>>2]|0)+6>>1]&1;if((c[(c[l>>2]|0)+60>>2]|0)!=0){c[(c[t>>2]|0)+60>>2]=c[(c[l>>2]|0)+60>>2];c[(c[l>>2]|0)+60>>2]=0}c[t>>2]=c[(c[t>>2]|0)+52>>2];c[l>>2]=c[(c[l>>2]|0)+52>>2]}en(c[n>>2]|0,c[o>>2]|0);c[x>>2]=1;P=c[x>>2]|0;i=B;return P|0}function Vw(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;a[(c[e>>2]|0)+19>>0]=0;c[(c[e>>2]|0)+56>>2]=0;i=d;return}function Ww(f,g,h){f=f|0;g=g|0;h=h|0;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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;q=i;i=i+224|0;G=q;p=q+212|0;s=q+208|0;o=q+204|0;m=q+200|0;j=q+196|0;C=q+192|0;z=q+188|0;n=q+168|0;k=q+164|0;l=q+160|0;x=q+156|0;y=q+152|0;A=q+148|0;B=q+144|0;r=q+140|0;M=q+216|0;L=q+136|0;J=q+132|0;K=q+128|0;O=q+124|0;N=q+104|0;F=q+100|0;E=q+96|0;H=q+92|0;I=q+88|0;R=q+84|0;U=q+80|0;Q=q+76|0;P=q+72|0;T=q+68|0;X=q+64|0;Y=q+60|0;Z=q+56|0;_=q+36|0;S=q+32|0;V=q+28|0;t=q+24|0;u=q+20|0;W=q+16|0;v=q+12|0;w=q+8|0;$=q+4|0;c[s>>2]=f;c[o>>2]=g;c[m>>2]=h;c[j>>2]=0;c[k>>2]=0;c[x>>2]=0;c[y>>2]=0;c[l>>2]=c[c[s>>2]>>2];c[C>>2]=c[(c[o>>2]|0)+52>>2];f=c[m>>2]|0;c[n+0>>2]=c[f+0>>2];c[n+4>>2]=c[f+4>>2];c[n+8>>2]=c[f+8>>2];c[n+12>>2]=c[f+12>>2];c[n+16>>2]=c[f+16>>2];a:do{if((c[(c[C>>2]|0)+48>>2]|0)==0){h=c[s>>2]|0;if((c[(c[C>>2]|0)+60>>2]|0)!=0){c[G>>2]=yx(d[(c[o>>2]|0)+4>>0]|0)|0;Ne(h,24952,G);c[j>>2]=1;break}c[z>>2]=Ro(h)|0;if((d[n>>0]|0|0)==12){To(c[z>>2]|0,55,c[n+4>>2]|0,c[c[c[o>>2]>>2]>>2]|0)|0;Se(c[z>>2]|0,8);a[n>>0]=14}h=e[(c[o>>2]|0)+6>>1]|0;if((c[c[c[o>>2]>>2]>>2]|0)!=(c[c[c[C>>2]>>2]>>2]|0)){r=c[s>>2]|0;if((h&128|0)!=0){Ne(r,25e3,G)}else{c[G>>2]=yx(d[(c[o>>2]|0)+4>>0]|0)|0;Ne(r,25048,G)}c[j>>2]=1;break}do{if((h&2048|0)==0){if((c[(c[o>>2]|0)+48>>2]|0)!=0){c[p>>2]=Ax(c[s>>2]|0,c[o>>2]|0,c[m>>2]|0)|0;f=c[p>>2]|0;i=q;return f|0}G=d[(c[o>>2]|0)+4>>0]|0;if((G|0)==116){c[A>>2]=0;c[(c[C>>2]|0)+8>>2]=c[(c[o>>2]|0)+8>>2];c[(c[C>>2]|0)+12>>2]=c[(c[o>>2]|0)+12>>2];c[(c[C>>2]|0)+60>>2]=c[(c[o>>2]|0)+60>>2];c[(c[C>>2]|0)+64>>2]=c[(c[o>>2]|0)+64>>2];c[x>>2]=c[(c[s>>2]|0)+468>>2];c[j>>2]=On(c[s>>2]|0,c[C>>2]|0,n)|0;c[(c[o>>2]|0)+60>>2]=0;c[(c[o>>2]|0)+64>>2]=0;if((c[j>>2]|0)!=0){break a}c[(c[o>>2]|0)+52>>2]=0;c[(c[o>>2]|0)+8>>2]=c[(c[C>>2]|0)+8>>2];c[(c[o>>2]|0)+12>>2]=c[(c[C>>2]|0)+12>>2];if((c[(c[o>>2]|0)+8>>2]|0)!=0){c[A>>2]=rr(c[z>>2]|0,136,c[(c[o>>2]|0)+8>>2]|0)|0}c[y>>2]=c[(c[s>>2]|0)+468>>2];c[j>>2]=On(c[s>>2]|0,c[o>>2]|0,n)|0;c[k>>2]=c[(c[o>>2]|0)+52>>2];c[(c[o>>2]|0)+52>>2]=c[C>>2];g=(c[C>>2]|0)+24|0;f=(c[o>>2]|0)+24|0;h=f;g=bE(c[h>>2]|0,c[h+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;c[f>>2]=g;c[f+4>>2]=D;if(((c[(c[C>>2]|0)+60>>2]|0)!=0?(f=(hq(c[(c[C>>2]|0)+60>>2]|0,B)|0)!=0,f&(c[B>>2]|0)>0):0)?(g=(c[o>>2]|0)+24|0,_=c[g+4>>2]|0,f=c[B>>2]|0,h=((f|0)<0)<<31>>31,_>>>0>h>>>0|((_|0)==(h|0)?(c[g>>2]|0)>>>0>f>>>0:0)):0){g=c[B>>2]|0;f=(c[o>>2]|0)+24|0;c[f>>2]=g;c[f+4>>2]=((g|0)<0)<<31>>31}if((c[A>>2]|0)==0){break}mp(c[z>>2]|0,c[A>>2]|0);break}else if((G|0)==115|(G|0)==117){a[M>>0]=0;c[L>>2]=1;if((d[n>>0]|0|0)==(c[L>>2]|0)){c[r>>2]=c[n+4>>2]}else{g=(c[s>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[r>>2]=f;c[O>>2]=To(c[z>>2]|0,55,c[r>>2]|0,0)|0;c[(c[o>>2]|0)+16>>2]=c[O>>2];f=(Oq(c[o>>2]|0)|0)+6|0;b[f>>1]=e[f>>1]|0|8}Ks(N,c[L>>2]|0,c[r>>2]|0);c[x>>2]=c[(c[s>>2]|0)+468>>2];c[j>>2]=On(c[s>>2]|0,c[C>>2]|0,N)|0;if((c[j>>2]|0)!=0){break a}if((d[(c[o>>2]|0)+4>>0]|0|0)==117){a[M>>0]=2}else{a[M>>0]=1}c[(c[o>>2]|0)+52>>2]=0;c[J>>2]=c[(c[o>>2]|0)+60>>2];c[(c[o>>2]|0)+60>>2]=0;c[K>>2]=c[(c[o>>2]|0)+64>>2];c[(c[o>>2]|0)+64>>2]=0;a[N>>0]=a[M>>0]|0;c[y>>2]=c[(c[s>>2]|0)+468>>2];c[j>>2]=On(c[s>>2]|0,c[o>>2]|0,N)|0;dn(c[l>>2]|0,c[(c[o>>2]|0)+48>>2]|0);c[k>>2]=c[(c[o>>2]|0)+52>>2];c[(c[o>>2]|0)+52>>2]=c[C>>2];c[(c[o>>2]|0)+48>>2]=0;if((d[(c[o>>2]|0)+4>>0]|0|0)==115){g=(c[C>>2]|0)+24|0;f=(c[o>>2]|0)+24|0;h=f;g=bE(c[h>>2]|0,c[h+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;c[f>>2]=g;c[f+4>>2]=D}hn(c[l>>2]|0,c[(c[o>>2]|0)+60>>2]|0);c[(c[o>>2]|0)+60>>2]=c[J>>2];c[(c[o>>2]|0)+64>>2]=c[K>>2];c[(c[o>>2]|0)+8>>2]=0;c[(c[o>>2]|0)+12>>2]=0;if((d[n>>0]|0|0)==(c[L>>2]|0)){break}if((d[n>>0]|0|0)==9){c[I>>2]=c[o>>2];while(1){if((c[(c[I>>2]|0)+52>>2]|0)==0){break}c[I>>2]=c[(c[I>>2]|0)+52>>2]}px(c[s>>2]|0,0,c[c[I>>2]>>2]|0)}c[E>>2]=fs(c[z>>2]|0)|0;c[F>>2]=fs(c[z>>2]|0)|0;Yw(c[s>>2]|0,c[o>>2]|0,c[E>>2]|0);To(c[z>>2]|0,105,c[r>>2]|0,c[E>>2]|0)|0;c[H>>2]=vr(c[z>>2]|0)|0;ax(c[s>>2]|0,c[o>>2]|0,c[c[o>>2]>>2]|0,c[r>>2]|0,0,0,n,c[F>>2]|0,c[E>>2]|0);cs(c[z>>2]|0,c[F>>2]|0);To(c[z>>2]|0,9,c[r>>2]|0,c[H>>2]|0)|0;cs(c[z>>2]|0,c[E>>2]|0);To(c[z>>2]|0,58,c[r>>2]|0,0)|0;break}else{f=(c[s>>2]|0)+68|0;g=c[f>>2]|0;c[f>>2]=g+1;c[R>>2]=g;g=(c[s>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[U>>2]=f;c[Z>>2]=To(c[z>>2]|0,55,c[R>>2]|0,0)|0;c[(c[o>>2]|0)+16>>2]=c[Z>>2];f=(Oq(c[o>>2]|0)|0)+6|0;b[f>>1]=e[f>>1]|0|8;Ks(_,1,c[R>>2]|0);c[x>>2]=c[(c[s>>2]|0)+468>>2];c[j>>2]=On(c[s>>2]|0,c[C>>2]|0,_)|0;if((c[j>>2]|0)!=0){break a}c[Z>>2]=To(c[z>>2]|0,55,c[U>>2]|0,0)|0;c[(c[o>>2]|0)+20>>2]=c[Z>>2];c[(c[o>>2]|0)+52>>2]=0;c[X>>2]=c[(c[o>>2]|0)+60>>2];c[(c[o>>2]|0)+60>>2]=0;c[Y>>2]=c[(c[o>>2]|0)+64>>2];c[(c[o>>2]|0)+64>>2]=0;c[_+4>>2]=c[U>>2];c[y>>2]=c[(c[s>>2]|0)+468>>2];c[j>>2]=On(c[s>>2]|0,c[o>>2]|0,_)|0;c[k>>2]=c[(c[o>>2]|0)+52>>2];c[(c[o>>2]|0)+52>>2]=c[C>>2];g=(c[o>>2]|0)+24|0;_=c[g+4>>2]|0;f=(c[C>>2]|0)+24|0;h=c[f+4>>2]|0;if(_>>>0>h>>>0|((_|0)==(h|0)?(c[g>>2]|0)>>>0>(c[f>>2]|0)>>>0:0)){h=(c[C>>2]|0)+24|0;g=c[h+4>>2]|0;f=(c[o>>2]|0)+24|0;c[f>>2]=c[h>>2];c[f+4>>2]=g}hn(c[l>>2]|0,c[(c[o>>2]|0)+60>>2]|0);c[(c[o>>2]|0)+60>>2]=c[X>>2];c[(c[o>>2]|0)+64>>2]=c[Y>>2];if((d[n>>0]|0|0)==9){c[V>>2]=c[o>>2];while(1){if((c[(c[V>>2]|0)+52>>2]|0)==0){break}c[V>>2]=c[(c[V>>2]|0)+52>>2]}px(c[s>>2]|0,0,c[c[V>>2]>>2]|0)}c[P>>2]=fs(c[z>>2]|0)|0;c[Q>>2]=fs(c[z>>2]|0)|0;Yw(c[s>>2]|0,c[o>>2]|0,c[P>>2]|0);To(c[z>>2]|0,105,c[R>>2]|0,c[P>>2]|0)|0;c[S>>2]=Zo(c[s>>2]|0)|0;c[T>>2]=To(c[z>>2]|0,98,c[R>>2]|0,c[S>>2]|0)|0;Re(c[z>>2]|0,65,c[U>>2]|0,c[Q>>2]|0,c[S>>2]|0,0)|0;_o(c[s>>2]|0,c[S>>2]|0);ax(c[s>>2]|0,c[o>>2]|0,c[c[o>>2]>>2]|0,c[R>>2]|0,0,0,n,c[Q>>2]|0,c[P>>2]|0);cs(c[z>>2]|0,c[Q>>2]|0);To(c[z>>2]|0,9,c[R>>2]|0,c[T>>2]|0)|0;cs(c[z>>2]|0,c[P>>2]|0);To(c[z>>2]|0,58,c[U>>2]|0,0)|0;To(c[z>>2]|0,58,c[R>>2]|0,0)|0;break}}else{zx(c[s>>2]|0,c[o>>2]|0,n)}}while(0);Bx(c[s>>2]|0,d[(c[o>>2]|0)+4>>0]|0,c[x>>2]|0,c[y>>2]|0,(d[(c[o>>2]|0)+4>>0]|0|0)!=116&1);if((b[(c[o>>2]|0)+6>>1]&8|0)!=0){c[w>>2]=c[c[c[o>>2]>>2]>>2];c[u>>2]=Er(c[l>>2]|0,c[w>>2]|0,1)|0;if((c[u>>2]|0)==0){c[j>>2]=7;break}c[t>>2]=0;c[v>>2]=(c[u>>2]|0)+20;while(1){if((c[t>>2]|0)>=(c[w>>2]|0)){break}f=Cx(c[s>>2]|0,c[o>>2]|0,c[t>>2]|0)|0;c[c[v>>2]>>2]=f;if(0==(c[c[v>>2]>>2]|0)){c[c[v>>2]>>2]=c[(c[l>>2]|0)+8>>2]}c[t>>2]=(c[t>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+4}c[W>>2]=c[o>>2];while(1){if((c[W>>2]|0)==0){break}c[t>>2]=0;while(1){if((c[t>>2]|0)>=2){break}c[$>>2]=c[(c[W>>2]|0)+16+(c[t>>2]<<2)>>2];if((c[$>>2]|0)<0){break}We(c[z>>2]|0,c[$>>2]|0,c[w>>2]|0);g=c[z>>2]|0;f=c[$>>2]|0;Ye(g,f,Fr(c[u>>2]|0)|0,-6);c[(c[W>>2]|0)+16+(c[t>>2]<<2)>>2]=-1;c[t>>2]=(c[t>>2]|0)+1}c[W>>2]=c[(c[W>>2]|0)+52>>2]}Zg(c[u>>2]|0)}}else{f=c[s>>2]|0;c[G>>2]=yx(d[(c[o>>2]|0)+4>>0]|0)|0;Ne(f,24904,G);c[j>>2]=1}}while(0);c[(c[m>>2]|0)+8>>2]=c[n+8>>2];c[(c[m>>2]|0)+12>>2]=c[n+12>>2];en(c[l>>2]|0,c[k>>2]|0);c[p>>2]=c[j>>2];f=c[p>>2]|0;i=q;return f|0}function Xw(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;l=n+36|0;q=n+32|0;p=n+28|0;r=n+24|0;o=n+20|0;h=n+16|0;m=n+12|0;j=n+8|0;g=n+4|0;k=n;c[l>>2]=b;c[q>>2]=d;c[p>>2]=e;c[r>>2]=f;c[j>>2]=c[c[l>>2]>>2];c[o>>2]=c[c[q>>2]>>2];c[h>>2]=Er(c[j>>2]|0,(c[o>>2]|0)+(c[r>>2]|0)-(c[p>>2]|0)|0,1)|0;if((c[h>>2]|0)==0){r=c[h>>2]|0;i=n;return r|0}c[g>>2]=c[p>>2];c[m>>2]=(c[(c[q>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0);while(1){if((c[g>>2]|0)>=(c[o>>2]|0)){break}c[k>>2]=Mp(c[l>>2]|0,c[c[m>>2]>>2]|0)|0;if((c[k>>2]|0)==0){c[k>>2]=c[(c[j>>2]|0)+8>>2]}c[(c[h>>2]|0)+20+((c[g>>2]|0)-(c[p>>2]|0)<<2)>>2]=c[k>>2];a[(c[(c[h>>2]|0)+16>>2]|0)+((c[g>>2]|0)-(c[p>>2]|0))>>0]=a[(c[m>>2]|0)+12>>0]|0;c[g>>2]=(c[g>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+20}r=c[h>>2]|0;i=n;return r|0}function Yw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;l=k+28|0;f=k+24|0;h=k+20|0;g=k+16|0;e=k+12|0;m=k+8|0;n=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[h>>2]=d;c[g>>2]=0;c[e>>2]=0;if((c[(c[f>>2]|0)+8>>2]|0)!=0){i=k;return}Lt(c[l>>2]|0);if((c[(c[f>>2]|0)+60>>2]|0)==0){i=k;return}b=(c[l>>2]|0)+72|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[e>>2]=a;c[(c[f>>2]|0)+8>>2]=a;c[g>>2]=Ro(c[l>>2]|0)|0;do{if((hq(c[(c[f>>2]|0)+60>>2]|0,j)|0)!=0){To(c[g>>2]|0,25,c[j>>2]|0,c[e>>2]|0)|0;if((c[j>>2]|0)==0){To(c[g>>2]|0,16,0,c[h>>2]|0)|0;break}if((c[j>>2]|0)>=0?(b=(c[f>>2]|0)+24|0,d=c[b+4>>2]|0,a=c[j>>2]|0,h=((a|0)<0)<<31>>31,d>>>0>h>>>0|((d|0)==(h|0)?(c[b>>2]|0)>>>0>a>>>0:0)):0){b=c[j>>2]|0;a=(c[f>>2]|0)+24|0;c[a>>2]=b;c[a+4>>2]=((b|0)<0)<<31>>31}}else{ys(c[l>>2]|0,c[(c[f>>2]|0)+60>>2]|0,c[e>>2]|0);rr(c[g>>2]|0,38,c[e>>2]|0)|0;To(c[g>>2]|0,136,c[e>>2]|0,c[h>>2]|0)|0}}while(0);if((c[(c[f>>2]|0)+64>>2]|0)==0){i=k;return}b=(c[l>>2]|0)+72|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[m>>2]=a;c[(c[f>>2]|0)+12>>2]=a;a=(c[l>>2]|0)+72|0;c[a>>2]=(c[a>>2]|0)+1;ys(c[l>>2]|0,c[(c[f>>2]|0)+64>>2]|0,c[m>>2]|0);rr(c[g>>2]|0,38,c[m>>2]|0)|0;c[n>>2]=rr(c[g>>2]|0,134,c[m>>2]|0)|0;To(c[g>>2]|0,25,0,c[m>>2]|0)|0;mp(c[g>>2]|0,c[n>>2]|0);Wo(c[g>>2]|0,89,c[e>>2]|0,c[m>>2]|0,(c[m>>2]|0)+1|0)|0;c[n>>2]=rr(c[g>>2]|0,134,c[e>>2]|0)|0;To(c[g>>2]|0,25,-1,(c[m>>2]|0)+1|0)|0;mp(c[g>>2]|0,c[n>>2]|0);i=k;return}function Zw(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;a=Gt(b[(c[e>>2]|0)+32>>1]|0)|0;i=d;return a|0}function _w(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+40>>0]|0|0}function $w(b){b=b|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=b;i=e;return a[(c[d>>2]|0)+36>>0]|0}function ax(b,f,g,h,j,k,l,m,n){b=b|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;q=i;i=i+128|0;u=q+124|0;s=q+120|0;L=q+116|0;U=q+112|0;r=q+108|0;S=q+104|0;w=q+100|0;K=q+96|0;o=q+92|0;p=q+88|0;F=q+84|0;T=q+80|0;t=q+76|0;z=q+72|0;v=q+68|0;x=q+64|0;R=q+60|0;Q=q+56|0;M=q+52|0;I=q+48|0;N=q+44|0;H=q+40|0;J=q+36|0;y=q+32|0;A=q+28|0;P=q+24|0;D=q+20|0;B=q+16|0;C=q+12|0;O=q+8|0;E=q+4|0;G=q;c[u>>2]=b;c[s>>2]=f;c[L>>2]=g;c[U>>2]=h;c[r>>2]=j;c[S>>2]=k;c[w>>2]=l;c[K>>2]=m;c[o>>2]=n;c[p>>2]=c[(c[u>>2]|0)+8>>2];c[z>>2]=d[c[w>>2]>>0]|0;c[v>>2]=c[(c[w>>2]|0)+4>>2];if((c[S>>2]|0)!=0){n=d[(c[S>>2]|0)+1>>0]|0}else{n=0}c[T>>2]=n;if((c[r>>2]|0)!=0?(c[c[r>>2]>>2]|0)==0:0){c[r>>2]=0}if((c[r>>2]|0)==0?(c[T>>2]|0)==0:0){rx(c[p>>2]|0,c[(c[s>>2]|0)+12>>2]|0,c[K>>2]|0)}c[x>>2]=c[c[L>>2]>>2];if((c[(c[w>>2]|0)+8>>2]|0)!=0){if(((c[(c[w>>2]|0)+8>>2]|0)+(c[x>>2]|0)|0)>(c[(c[u>>2]|0)+72>>2]|0)){b=(c[u>>2]|0)+72|0;c[b>>2]=(c[b>>2]|0)+(c[x>>2]|0)}}else{c[(c[w>>2]|0)+8>>2]=(c[(c[u>>2]|0)+72>>2]|0)+1;b=(c[u>>2]|0)+72|0;c[b>>2]=(c[b>>2]|0)+(c[x>>2]|0)}c[(c[w>>2]|0)+12>>2]=c[x>>2];c[t>>2]=c[(c[w>>2]|0)+8>>2];a:do{if((c[U>>2]|0)<0){if((c[z>>2]|0)!=3){if((c[z>>2]|0)==9){U=1}else{U=(c[z>>2]|0)==13}Fs(c[u>>2]|0,c[L>>2]|0,c[t>>2]|0,(U?1:0)&255)|0}}else{c[F>>2]=0;while(1){if((c[F>>2]|0)>=(c[x>>2]|0)){break a}Wo(c[p>>2]|0,46,c[U>>2]|0,c[F>>2]|0,(c[t>>2]|0)+(c[F>>2]|0)|0)|0;c[F>>2]=(c[F>>2]|0)+1}}}while(0);if((c[T>>2]|0)!=0){T=d[(c[S>>2]|0)+1>>0]|0;if((T|0)==1){Ze(c[p>>2]|0,c[(c[S>>2]|0)+8>>2]|0)}else if((T|0)==2){c[M>>2]=(c[(c[u>>2]|0)+72>>2]|0)+1;b=(c[u>>2]|0)+72|0;c[b>>2]=(c[b>>2]|0)+(c[x>>2]|0);Ze(c[p>>2]|0,c[(c[S>>2]|0)+8>>2]|0);c[R>>2]=Ns(c[p>>2]|0,c[(c[S>>2]|0)+8>>2]|0)|0;a[c[R>>2]>>0]=28;c[(c[R>>2]|0)+4>>2]=1;c[(c[R>>2]|0)+8>>2]=c[M>>2];b=vr(c[p>>2]|0)|0;c[Q>>2]=b+(c[x>>2]|0);c[F>>2]=0;while(1){if((c[F>>2]|0)>=(c[x>>2]|0)){break}c[I>>2]=Mp(c[u>>2]|0,c[(c[(c[L>>2]|0)+4>>2]|0)+((c[F>>2]|0)*20|0)>>2]|0)|0;S=c[p>>2]|0;R=(c[t>>2]|0)+(c[F>>2]|0)|0;if((c[F>>2]|0)<((c[x>>2]|0)-1|0)){Wo(S,78,R,c[Q>>2]|0,(c[M>>2]|0)+(c[F>>2]|0)|0)|0}else{Wo(S,79,R,c[K>>2]|0,(c[M>>2]|0)+(c[F>>2]|0)|0)|0}Ye(c[p>>2]|0,-1,c[I>>2]|0,-4);Se(c[p>>2]|0,-128);c[F>>2]=(c[F>>2]|0)+1}Wo(c[p>>2]|0,33,c[t>>2]|0,c[M>>2]|0,(c[x>>2]|0)-1|0)|0}else{sx(c[u>>2]|0,c[(c[S>>2]|0)+4>>2]|0,c[K>>2]|0,c[x>>2]|0,c[t>>2]|0)}if((c[r>>2]|0)==0){rx(c[p>>2]|0,c[(c[s>>2]|0)+12>>2]|0,c[K>>2]|0)}}b:do{switch(c[z>>2]|0){case 11:{x=Us(c[c[(c[L>>2]|0)+4>>2]>>2]|0,a[(c[w>>2]|0)+1>>0]|0)|0;a[(c[w>>2]|0)+1>>0]=x;x=c[u>>2]|0;if((c[r>>2]|0)!=0){xx(x,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0);break b}else{c[A>>2]=Zo(x)|0;Vo(c[p>>2]|0,48,c[t>>2]|0,1,c[A>>2]|0,(c[w>>2]|0)+1|0,1)|0;Ds(c[u>>2]|0,c[t>>2]|0,1);To(c[p>>2]|0,107,c[v>>2]|0,c[A>>2]|0)|0;_o(c[u>>2]|0,c[A>>2]|0);break b}};case 10:{u=c[u>>2]|0;if((c[r>>2]|0)!=0){xx(u,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0);break b}else{hx(u,c[t>>2]|0,c[v>>2]|0,1);break b}};case 3:{To(c[p>>2]|0,25,1,c[v>>2]|0)|0;break};case 2:{Wo(c[p>>2]|0,108,c[v>>2]|0,c[t>>2]|0,c[x>>2]|0)|0;break};case 9:case 13:{if((c[r>>2]|0)!=0){c[P>>2]=Zo(c[u>>2]|0)|0;Wo(c[p>>2]|0,48,c[t>>2]|0,c[x>>2]|0,c[P>>2]|0)|0;xx(c[u>>2]|0,c[r>>2]|0,c[s>>2]|0,c[P>>2]|0);_o(c[u>>2]|0,c[P>>2]|0);break b}v=c[p>>2]|0;if((c[z>>2]|0)==13){rr(v,22,c[(c[w>>2]|0)+4>>2]|0)|0;break b}else{To(v,35,c[t>>2]|0,c[x>>2]|0)|0;Ds(c[u>>2]|0,c[t>>2]|0,c[x>>2]|0);break b}};case 1:{c[N>>2]=Zo(c[u>>2]|0)|0;Wo(c[p>>2]|0,48,c[t>>2]|0,c[x>>2]|0,c[N>>2]|0)|0;To(c[p>>2]|0,107,c[v>>2]|0,c[N>>2]|0)|0;_o(c[u>>2]|0,c[N>>2]|0);break};case 7:case 8:{c[E>>2]=0;c[G>>2]=c[(c[w>>2]|0)+16>>2];c[D>>2]=c[c[G>>2]>>2];c[B>>2]=Zo(c[u>>2]|0)|0;c[C>>2]=is(c[u>>2]|0,(c[D>>2]|0)+2|0)|0;c[O>>2]=(c[C>>2]|0)+(c[D>>2]|0)+1;if((c[z>>2]|0)==8){c[E>>2]=Re(c[p>>2]|0,66,(c[v>>2]|0)+1|0,0,c[t>>2]|0,c[x>>2]|0)|0}Wo(c[p>>2]|0,48,c[t>>2]|0,c[x>>2]|0,c[O>>2]|0)|0;if((c[z>>2]|0)==8){To(c[p>>2]|0,107,(c[v>>2]|0)+1|0,c[O>>2]|0)|0;Se(c[p>>2]|0,16)}c[F>>2]=0;while(1){w=c[p>>2]|0;if((c[F>>2]|0)>=(c[D>>2]|0)){break}To(w,34,(c[t>>2]|0)+(e[(c[(c[G>>2]|0)+4>>2]|0)+((c[F>>2]|0)*20|0)+16>>1]|0)-1|0,(c[C>>2]|0)+(c[F>>2]|0)|0)|0;c[F>>2]=(c[F>>2]|0)+1}To(w,68,c[v>>2]|0,(c[C>>2]|0)+(c[D>>2]|0)|0)|0;Wo(c[p>>2]|0,48,c[C>>2]|0,(c[D>>2]|0)+2|0,c[B>>2]|0)|0;To(c[p>>2]|0,107,c[v>>2]|0,c[B>>2]|0)|0;if((c[E>>2]|0)!=0){mp(c[p>>2]|0,c[E>>2]|0)}_o(c[u>>2]|0,c[B>>2]|0);ls(c[u>>2]|0,c[C>>2]|0,(c[D>>2]|0)+2|0);break};case 12:case 14:case 6:case 5:{c[H>>2]=Zo(c[u>>2]|0)|0;Wo(c[p>>2]|0,48,c[t>>2]|0,c[x>>2]|0,c[H>>2]|0)|0;if((c[z>>2]|0)==6){c[J>>2]=(vr(c[p>>2]|0)|0)+4;Re(c[p>>2]|0,66,(c[v>>2]|0)+1|0,c[J>>2]|0,c[H>>2]|0,0)|0;To(c[p>>2]|0,107,(c[v>>2]|0)+1|0,c[H>>2]|0)|0}t=c[u>>2]|0;if((c[r>>2]|0)!=0){xx(t,c[r>>2]|0,c[s>>2]|0,c[H>>2]|0)}else{c[y>>2]=Zo(t)|0;To(c[p>>2]|0,69,c[v>>2]|0,c[y>>2]|0)|0;Wo(c[p>>2]|0,70,c[v>>2]|0,c[H>>2]|0,c[y>>2]|0)|0;Se(c[p>>2]|0,8);_o(c[u>>2]|0,c[y>>2]|0)}_o(c[u>>2]|0,c[H>>2]|0);break};default:{}}}while(0);if((c[r>>2]|0)!=0){i=q;return}if((c[(c[s>>2]|0)+8>>2]|0)==0){i=q;return}Wo(c[p>>2]|0,136,c[(c[s>>2]|0)+8>>2]|0,c[o>>2]|0,-1)|0;i=q;return}function bx(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+48>>2]|0}function cx(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+52>>2]|0}function dx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d+12|0;f=d+8|0;h=d+4|0;e=d;c[g>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}c[h>>2]=c[(c[f>>2]|0)+4>>2];c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[c[f>>2]>>2]|0)){break}ex(c[g>>2]|0,c[c[h>>2]>>2]|0);c[e>>2]=(c[e>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+20}i=d;return}function ex(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;g=d+28|0;e=d+24|0;f=d;c[g>>2]=a;c[e>>2]=b;c[f+0>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f>>2]=47;c[f+4>>2]=48;c[f+20>>2]=c[g>>2];bq(f,c[e>>2]|0)|0;i=d;return}function fx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;j=e;f=e+16|0;h=e+12|0;g=e+8|0;k=e+4|0;c[f>>2]=a;c[h>>2]=b;if((d[(c[f>>2]|0)+450>>0]|0|0)!=2){i=e;return}c[g>>2]=c[(c[f>>2]|0)+8>>2];a=c[c[f>>2]>>2]|0;c[j>>2]=c[h>>2];c[k>>2]=Oe(a,24880,j)|0;Vo(c[g>>2]|0,157,c[(c[f>>2]|0)+464>>2]|0,0,0,c[k>>2]|0,-1)|0;i=e;return}function gx(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+37>>0]|0|0}function hx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;n=k+24|0;j=k+20|0;h=k+16|0;l=k+12|0;m=k+8|0;g=k+4|0;f=k;c[n>>2]=a;c[j>>2]=b;c[h>>2]=d;c[l>>2]=e;Wo(c[(c[n>>2]|0)+8>>2]|0,32,c[j>>2]|0,c[h>>2]|0,c[l>>2]|0)|0;c[m>>2]=0;c[g>>2]=(c[n>>2]|0)+116;while(1){if((c[m>>2]|0)>=10){break}c[f>>2]=c[(c[g>>2]|0)+12>>2];if((c[f>>2]|0)>=(c[j>>2]|0)?(c[f>>2]|0)<((c[j>>2]|0)+(c[l>>2]|0)|0):0){n=(c[g>>2]|0)+12|0;c[n>>2]=(c[n>>2]|0)+((c[h>>2]|0)-(c[j>>2]|0))}c[m>>2]=(c[m>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+20}i=k;return}function ix(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;o=i;i=i+64|0;h=o+56|0;g=o+52|0;m=o+48|0;k=o+44|0;n=o+40|0;j=o+36|0;u=o+32|0;l=o+28|0;q=o+24|0;v=o+20|0;t=o+16|0;s=o+12|0;f=o+8|0;r=o+4|0;p=o;c[h>>2]=d;c[g>>2]=e;c[m>>2]=c[(c[h>>2]|0)+8>>2];c[n>>2]=0;c[j>>2]=0;a[c[g>>2]>>0]=1;c[k>>2]=0;c[u>>2]=c[(c[g>>2]|0)+40>>2];while(1){if((c[k>>2]|0)>=(c[(c[g>>2]|0)+44>>2]|0)){break}c[v>>2]=0;c[s>>2]=c[(c[c[u>>2]>>2]|0)+20>>2];if((c[s>>2]|0)!=0){c[q>>2]=c[c[s>>2]>>2];c[t>>2]=is(c[h>>2]|0,c[q>>2]|0)|0;Fs(c[h>>2]|0,c[s>>2]|0,c[t>>2]|0,1)|0}else{c[q>>2]=0;c[t>>2]=0}if((c[(c[u>>2]|0)+12>>2]|0)>=0){c[v>>2]=fs(c[m>>2]|0)|0;sx(c[h>>2]|0,c[(c[u>>2]|0)+12>>2]|0,c[v>>2]|0,1,c[t>>2]|0)}if((b[(c[(c[u>>2]|0)+4>>2]|0)+2>>1]&32|0)!=0){c[f>>2]=0;c[p>>2]=0;c[r>>2]=c[(c[s>>2]|0)+4>>2];while(1){if((c[f>>2]|0)!=0){break}if((c[p>>2]|0)>=(c[q>>2]|0)){break}c[f>>2]=Mp(c[h>>2]|0,c[c[r>>2]>>2]|0)|0;c[p>>2]=(c[p>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+20}if((c[f>>2]|0)==0){c[f>>2]=c[(c[c[h>>2]>>2]|0)+8>>2]}if((c[n>>2]|0)==0?(c[(c[g>>2]|0)+36>>2]|0)!=0:0){e=(c[h>>2]|0)+72|0;d=(c[e>>2]|0)+1|0;c[e>>2]=d;c[n>>2]=d}Vo(c[m>>2]|0,36,c[n>>2]|0,0,0,c[f>>2]|0,-4)|0}Vo(c[m>>2]|0,10,0,c[t>>2]|0,c[(c[u>>2]|0)+8>>2]|0,c[(c[u>>2]|0)+4>>2]|0,-5)|0;Se(c[m>>2]|0,c[q>>2]&255);Ds(c[h>>2]|0,c[t>>2]|0,c[q>>2]|0);ls(c[h>>2]|0,c[t>>2]|0,c[q>>2]|0);if((c[v>>2]|0)!=0){cs(c[m>>2]|0,c[v>>2]|0);Lt(c[h>>2]|0)}c[k>>2]=(c[k>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+16}if((c[n>>2]|0)!=0){c[j>>2]=rr(c[m>>2]|0,44,c[n>>2]|0)|0}Lt(c[h>>2]|0);c[k>>2]=0;c[l>>2]=c[(c[g>>2]|0)+28>>2];while(1){if((c[k>>2]|0)>=(c[(c[g>>2]|0)+36>>2]|0)){break}ys(c[h>>2]|0,c[(c[l>>2]|0)+20>>2]|0,c[(c[l>>2]|0)+16>>2]|0);c[k>>2]=(c[k>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+24}a[c[g>>2]>>0]=0;Lt(c[h>>2]|0);if((c[j>>2]|0)==0){i=o;return}mp(c[m>>2]|0,c[j>>2]|0);i=o;return}function jx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;k=d+20|0;h=d+16|0;j=d+12|0;g=d+8|0;e=d+4|0;f=d;c[k>>2]=a;c[h>>2]=b;c[j>>2]=c[(c[k>>2]|0)+8>>2];c[g>>2]=0;c[e>>2]=c[(c[h>>2]|0)+40>>2];while(1){if((c[g>>2]|0)>=(c[(c[h>>2]|0)+44>>2]|0)){break}c[f>>2]=c[(c[c[e>>2]>>2]|0)+20>>2];if((c[f>>2]|0)!=0){b=c[c[f>>2]>>2]|0}else{b=0}Vo(c[j>>2]|0,137,c[(c[e>>2]|0)+8>>2]|0,b,0,c[(c[e>>2]|0)+4>>2]|0,-5)|0;c[g>>2]=(c[g>>2]|0)+1;c[e>>2]=(c[e>>2]|0)+16}i=d;return}function kx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+48|0;m=h;j=h+32|0;d=h+28|0;l=h+24|0;g=h+20|0;e=h+16|0;n=h+12|0;f=h+8|0;k=h+4|0;c[j>>2]=a;c[d>>2]=b;c[l>>2]=c[(c[j>>2]|0)+8>>2];c[n>>2]=(c[(c[d>>2]|0)+44>>2]|0)+(c[(c[d>>2]|0)+32>>2]|0);if((c[n>>2]|0)==0){i=h;return}Wo(c[l>>2]|0,28,0,c[(c[d>>2]|0)+16>>2]|0,c[(c[d>>2]|0)+20>>2]|0)|0;c[e>>2]=c[(c[d>>2]|0)+40>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+44>>2]|0)){break}do{if((c[(c[e>>2]|0)+12>>2]|0)>=0){c[f>>2]=c[c[e>>2]>>2];if((c[(c[f>>2]|0)+20>>2]|0)!=0?(c[c[(c[f>>2]|0)+20>>2]>>2]|0)==1:0){c[k>>2]=Xw(c[j>>2]|0,c[(c[f>>2]|0)+20>>2]|0,0,0)|0;Vo(c[l>>2]|0,55,c[(c[e>>2]|0)+12>>2]|0,0,0,c[k>>2]|0,-6)|0;break}Ne(c[j>>2]|0,24824,m);c[(c[e>>2]|0)+12>>2]=-1}}while(0);c[g>>2]=(c[g>>2]|0)+1;c[e>>2]=(c[e>>2]|0)+16}i=h;return}function lx(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;m=g+12|0;l=g+8|0;j=g+4|0;k=g;c[m>>2]=e;c[l>>2]=f;if((((c[(c[m>>2]|0)+36>>2]|0)==0?(c[c[c[m>>2]>>2]>>2]|0)==1:0)?(c[c[(c[m>>2]|0)+32>>2]>>2]|0)==1:0)?(c[(c[(c[m>>2]|0)+32>>2]|0)+28>>2]|0)==0:0){c[j>>2]=c[(c[(c[m>>2]|0)+32>>2]|0)+24>>2];c[k>>2]=c[c[(c[c[m>>2]>>2]|0)+4>>2]>>2];if((a[(c[j>>2]|0)+44>>0]&16|0)!=0){c[h>>2]=0;e=c[h>>2]|0;i=g;return e|0}if((d[c[k>>2]>>0]|0|0)!=155){c[h>>2]=0;e=c[h>>2]|0;i=g;return e|0}if((c[(c[l>>2]|0)+44>>2]|0)==0){c[h>>2]=0;e=c[h>>2]|0;i=g;return e|0}if((b[(c[(c[(c[l>>2]|0)+40>>2]|0)+4>>2]|0)+2>>1]&256|0)==0){c[h>>2]=0;e=c[h>>2]|0;i=g;return e|0}if((c[(c[k>>2]|0)+4>>2]&16|0)!=0){c[h>>2]=0;e=c[h>>2]|0;i=g;return e|0}else{c[h>>2]=c[j>>2];e=c[h>>2]|0;i=g;return e|0}}c[h>>2]=0;e=c[h>>2]|0;i=g;return e|0}function mx(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;k=l;h=l+28|0;j=l+24|0;m=l+20|0;n=l+16|0;g=l+12|0;c[h>>2]=b;c[j>>2]=e;c[m>>2]=f;if((d[(c[h>>2]|0)+450>>0]|0|0)!=2){i=l;return}if((c[m>>2]|0)!=0){if((a[(c[j>>2]|0)+44>>0]&32|0)==0){f=1}else{f=(a[(c[m>>2]|0)+55>>0]&3|0)==2^1}}else{f=0}c[n>>2]=f&1;e=c[c[h>>2]>>2]|0;f=(c[n>>2]|0)!=0?24800:1472;if((c[n>>2]|0)!=0){m=c[c[m>>2]>>2]|0}else{m=1472}c[k>>2]=c[c[j>>2]>>2];c[k+4>>2]=f;c[k+8>>2]=m;c[g>>2]=Oe(e,24776,k)|0;Vo(c[(c[h>>2]|0)+8>>2]|0,157,c[(c[h>>2]|0)+464>>2]|0,0,0,c[g>>2]|0,-1)|0;i=l;return}function nx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;l=e+20|0;h=e+16|0;f=e+12|0;j=e+8|0;g=e+4|0;k=e;c[l>>2]=a;c[h>>2]=b;c[f>>2]=0;c[c[h>>2]>>2]=0;do{if((((c[(c[l>>2]|0)+44>>2]|0)==1?(c[j>>2]=c[c[(c[l>>2]|0)+40>>2]>>2],c[g>>2]=c[(c[j>>2]|0)+20>>2],(c[g>>2]|0)!=0):0)?(c[c[g>>2]>>2]|0)==1:0)?(d[c[c[(c[g>>2]|0)+4>>2]>>2]>>0]|0|0)==156:0){c[k>>2]=c[(c[j>>2]|0)+8>>2];if((vc(c[k>>2]|0,8224)|0)==0){c[f>>2]=1;c[c[h>>2]>>2]=c[g>>2];break}if((vc(c[k>>2]|0,8232)|0)==0){c[f>>2]=2;c[c[h>>2]>>2]=c[g>>2]}}}while(0);i=e;return c[f>>2]&255|0}function ox(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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;j=i;i=i+96|0;u=j+80|0;D=j+76|0;k=j+72|0;t=j+68|0;v=j+64|0;l=j+60|0;m=j+56|0;p=j+52|0;n=j+48|0;C=j+44|0;o=j+40|0;x=j+36|0;E=j+32|0;r=j+28|0;y=j+24|0;s=j+20|0;q=j+16|0;B=j+12|0;z=j+8|0;A=j+4|0;w=j;c[u>>2]=b;c[D>>2]=e;c[k>>2]=f;c[t>>2]=g;c[v>>2]=h;c[l>>2]=c[(c[u>>2]|0)+8>>2];c[m>>2]=fs(c[l>>2]|0)|0;c[p>>2]=fs(c[l>>2]|0)|0;c[C>>2]=0;c[x>>2]=0;c[E>>2]=c[c[k>>2]>>2];c[r>>2]=d[c[v>>2]>>0]|0;c[y>>2]=c[(c[v>>2]|0)+4>>2];if((c[(c[k>>2]|0)+16>>2]|0)!=0){To(c[l>>2]|0,17,c[(c[k>>2]|0)+12>>2]|0,c[(c[k>>2]|0)+16>>2]|0)|0;To(c[l>>2]|0,16,0,c[m>>2]|0)|0;cs(c[l>>2]|0,c[(c[k>>2]|0)+16>>2]|0);c[C>>2]=Js(c[u>>2]|0)|0}c[o>>2]=c[(c[k>>2]|0)+8>>2];c[s>>2]=Zo(c[u>>2]|0)|0;h=c[u>>2]|0;if((c[r>>2]|0)==9|(c[r>>2]|0)==13){e=h+68|0;b=c[e>>2]|0;c[e>>2]=b+1;c[x>>2]=b;Wo(c[l>>2]|0,57,c[x>>2]|0,c[s>>2]|0,c[t>>2]|0)|0;c[q>>2]=0}else{c[q>>2]=Zo(h)|0}c[B>>2]=(c[c[E>>2]>>2]|0)-(c[(c[k>>2]|0)+4>>2]|0);if((a[(c[k>>2]|0)+24>>0]&1|0)!=0){b=(c[u>>2]|0)+72|0;e=(c[b>>2]|0)+1|0;c[b>>2]=e;c[z>>2]=e;e=(c[u>>2]|0)+68|0;b=c[e>>2]|0;c[e>>2]=b+1;c[A>>2]=b;Wo(c[l>>2]|0,57,c[A>>2]|0,c[z>>2]|0,(c[B>>2]|0)+2|0)|0;if((c[C>>2]|0)!=0){mp(c[l>>2]|0,c[C>>2]|0)}c[n>>2]=1+(To(c[l>>2]|0,103,c[o>>2]|0,c[m>>2]|0)|0);rx(c[l>>2]|0,c[(c[D>>2]|0)+12>>2]|0,c[p>>2]|0);To(c[l>>2]|0,95,c[o>>2]|0,c[z>>2]|0)|0;Wo(c[l>>2]|0,46,c[A>>2]|0,(c[B>>2]|0)+1|0,c[s>>2]|0)|0;Se(c[l>>2]|0,32)}else{if((c[C>>2]|0)!=0){mp(c[l>>2]|0,c[C>>2]|0)}c[n>>2]=1+(To(c[l>>2]|0,104,c[o>>2]|0,c[m>>2]|0)|0);rx(c[l>>2]|0,c[(c[D>>2]|0)+12>>2]|0,c[p>>2]|0);Wo(c[l>>2]|0,46,c[o>>2]|0,(c[B>>2]|0)+1|0,c[s>>2]|0)|0}z=c[r>>2]|0;do{if((z|0)==11){Vo(c[l>>2]|0,48,c[s>>2]|0,1,c[q>>2]|0,(c[v>>2]|0)+1|0,1)|0;Ds(c[u>>2]|0,c[s>>2]|0,1);To(c[l>>2]|0,107,c[y>>2]|0,c[q>>2]|0)|0}else if((z|0)==12|(z|0)==14){To(c[l>>2]|0,69,c[y>>2]|0,c[q>>2]|0)|0;Wo(c[l>>2]|0,70,c[y>>2]|0,c[s>>2]|0,c[q>>2]|0)|0;Se(c[l>>2]|0,8)}else if((z|0)!=10){c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[t>>2]|0)){break}Wo(c[l>>2]|0,46,c[x>>2]|0,c[w>>2]|0,(c[(c[v>>2]|0)+8>>2]|0)+(c[w>>2]|0)|0)|0;if((c[w>>2]|0)==0){Se(c[l>>2]|0,32)}c[w>>2]=(c[w>>2]|0)+1}x=c[l>>2]|0;w=c[v>>2]|0;if((c[r>>2]|0)==9){To(x,35,c[w+8>>2]|0,c[t>>2]|0)|0;Ds(c[u>>2]|0,c[(c[v>>2]|0)+8>>2]|0,c[t>>2]|0);break}else{rr(x,22,c[w+4>>2]|0)|0;break}}else{hx(c[u>>2]|0,c[s>>2]|0,c[y>>2]|0,1)}}while(0);_o(c[u>>2]|0,c[s>>2]|0);_o(c[u>>2]|0,c[q>>2]|0);cs(c[l>>2]|0,c[p>>2]|0);p=c[l>>2]|0;o=c[o>>2]|0;n=c[n>>2]|0;if((a[(c[k>>2]|0)+24>>0]&1|0)!=0){To(p,5,o,n)|0}else{To(p,9,o,n)|0}if((c[(c[k>>2]|0)+12>>2]|0)==0){e=c[l>>2]|0;b=c[m>>2]|0;cs(e,b);i=j;return}rr(c[l>>2]|0,18,c[(c[k>>2]|0)+12>>2]|0)|0;e=c[l>>2]|0;b=c[m>>2]|0;cs(e,b);i=j;return}function px(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;u=i;i=i+80|0;A=u;k=u+68|0;l=u+64|0;m=u+60|0;q=u+56|0;n=u+52|0;s=u+48|0;h=u+44|0;y=u+40|0;x=u+36|0;o=u+32|0;p=u+28|0;v=u+24|0;w=u+20|0;r=u+16|0;z=u+12|0;t=u+8|0;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[q>>2]=c[(c[k>>2]|0)+8>>2];c[h>>2]=c[c[k>>2]>>2];if((a[(c[k>>2]|0)+450>>0]|0)!=0){i=u;return}if((d[(c[k>>2]|0)+16>>0]|0)!=0){i=u;return}if((c[q>>2]|0)==0){i=u;return}if((d[(c[h>>2]|0)+64>>0]|0)!=0){i=u;return}a[(c[k>>2]|0)+16>>0]=1;c[y>>2]=(c[(c[h>>2]|0)+24>>2]&32|0)!=0&1;c[x>>2]=(c[(c[h>>2]|0)+24>>2]&64|0)!=0&1;ut(c[q>>2]|0,c[c[m>>2]>>2]|0);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[c[m>>2]>>2]|0)){break}c[o>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+((c[n>>2]|0)*20|0)>>2];do{if((c[o>>2]|0)!=0){if((c[(c[(c[m>>2]|0)+4>>2]|0)+((c[n>>2]|0)*20|0)+4>>2]|0)!=0){c[p>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+((c[n>>2]|0)*20|0)+4>>2];vt(c[q>>2]|0,c[n>>2]|0,0,c[p>>2]|0,-1)|0;break}if(!((d[c[o>>2]>>0]|0)!=154?(d[c[o>>2]>>0]|0)!=156:0)){j=12}if((j|0)==12?(j=0,(c[l>>2]|0)!=0):0){c[r>>2]=b[(c[o>>2]|0)+32>>1]|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[c[l>>2]>>2]|0)){break}if((c[(c[l>>2]|0)+8+((c[s>>2]|0)*72|0)+40>>2]|0)==(c[(c[o>>2]|0)+28>>2]|0)){break}c[s>>2]=(c[s>>2]|0)+1}c[v>>2]=c[(c[l>>2]|0)+8+((c[s>>2]|0)*72|0)+16>>2];if((c[r>>2]|0)<0){c[r>>2]=b[(c[v>>2]|0)+36>>1]|0}if((c[r>>2]|0)<0){c[w>>2]=9896}else{c[w>>2]=c[(c[(c[v>>2]|0)+4>>2]|0)+((c[r>>2]|0)*24|0)>>2]}if((c[x>>2]|0)==0?(c[y>>2]|0)==0:0){f=c[q>>2]|0;e=c[n>>2]|0;vt(f,e,0,he(c[h>>2]|0,c[(c[(c[m>>2]|0)+4>>2]|0)+((c[n>>2]|0)*20|0)+8>>2]|0)|0,16)|0;break}if((c[y>>2]|0)!=0){c[z>>2]=0;e=c[h>>2]|0;f=c[w>>2]|0;c[A>>2]=c[c[v>>2]>>2];c[A+4>>2]=f;c[z>>2]=Oe(e,17352,A)|0;vt(c[q>>2]|0,c[n>>2]|0,0,c[z>>2]|0,16)|0;break}else{vt(c[q>>2]|0,c[n>>2]|0,0,c[w>>2]|0,-1)|0;break}}c[t>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+((c[n>>2]|0)*20|0)+8>>2];g=c[h>>2]|0;if((c[t>>2]|0)==0){c[A>>2]=(c[n>>2]|0)+1;g=Oe(g,24760,A)|0}else{g=he(g,c[t>>2]|0)|0}c[t>>2]=g;vt(c[q>>2]|0,c[n>>2]|0,0,c[t>>2]|0,16)|0}}while(0);c[n>>2]=(c[n>>2]|0)+1}qx(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0);i=u;return}function qx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+64|0;m=e+56|0;n=e+52|0;g=e+48|0;l=e+44|0;f=e+40|0;j=e+8|0;h=e+4|0;k=e;c[m>>2]=a;c[n>>2]=b;c[g>>2]=d;c[l>>2]=c[(c[m>>2]|0)+8>>2];c[j+4>>2]=c[n>>2];c[j>>2]=c[m>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[g>>2]>>2]|0)){break}c[h>>2]=c[(c[(c[g>>2]|0)+4>>2]|0)+((c[f>>2]|0)*20|0)>>2];c[k>>2]=Kp(j,c[h>>2]|0,0)|0;vt(c[l>>2]|0,c[f>>2]|0,1,c[k>>2]|0,-1)|0;c[f>>2]=(c[f>>2]|0)+1}i=e;return}function rx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;j=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;if((c[g>>2]|0)<=0){i=e;return}To(c[f>>2]|0,37,c[g>>2]|0,-1)|0;c[h>>2]=rr(c[f>>2]|0,135,c[g>>2]|0)|0;To(c[f>>2]|0,16,0,c[j>>2]|0)|0;mp(c[f>>2]|0,c[h>>2]|0);i=e;return}function sx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;j=g+24|0;k=g+20|0;o=g+16|0;m=g+12|0;n=g+8|0;l=g+4|0;h=g;c[j>>2]=a;c[k>>2]=b;c[o>>2]=d;c[m>>2]=e;c[n>>2]=f;c[l>>2]=c[(c[j>>2]|0)+8>>2];c[h>>2]=Zo(c[j>>2]|0)|0;Re(c[l>>2]|0,66,c[k>>2]|0,c[o>>2]|0,c[n>>2]|0,c[m>>2]|0)|0;Wo(c[l>>2]|0,48,c[n>>2]|0,c[m>>2]|0,c[h>>2]|0)|0;To(c[l>>2]|0,107,c[k>>2]|0,c[h>>2]|0)|0;_o(c[j>>2]|0,c[h>>2]|0);i=g;return}function tx(e,f){e=e|0;f=f|0;var g=0,h=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;l=i;i=i+80|0;k=l+64|0;t=l+60|0;h=l+56|0;n=l+52|0;p=l+48|0;j=l+44|0;z=l+40|0;o=l+36|0;y=l+32|0;r=l+28|0;x=l+24|0;u=l+20|0;v=l+16|0;w=l+12|0;s=l+8|0;q=l+4|0;g=l;m=l+68|0;c[t>>2]=e;c[h>>2]=f;c[p>>2]=c[(c[t>>2]|0)+20>>2];c[j>>2]=c[c[p>>2]>>2];c[z>>2]=c[(c[p>>2]|0)+4>>2];c[o>>2]=c[(c[p>>2]|0)+12>>2];f=d[c[h>>2]>>0]|0;if((f|0)==155){if((a[(c[p>>2]|0)+28>>0]&8|0)==0?(c[(c[t>>2]|0)+16>>2]|0)==(d[(c[h>>2]|0)+38>>0]|0):0){c[g>>2]=c[(c[o>>2]|0)+40>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[(c[o>>2]|0)+44>>2]|0)){break}if((mq(c[c[g>>2]>>2]|0,c[h>>2]|0,-1)|0)==0){break}c[n>>2]=(c[n>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+16}do{if((c[n>>2]|0)>=(c[(c[o>>2]|0)+44>>2]|0)?(a[m>>0]=a[(c[(c[(c[c[j>>2]>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[n>>2]=wx(c[c[j>>2]>>2]|0,c[o>>2]|0)|0,(c[n>>2]|0)>=0):0){c[g>>2]=(c[(c[o>>2]|0)+40>>2]|0)+(c[n>>2]<<4);c[c[g>>2]>>2]=c[h>>2];q=(c[j>>2]|0)+72|0;p=(c[q>>2]|0)+1|0;c[q>>2]=p;c[(c[g>>2]|0)+8>>2]=p;p=c[c[j>>2]>>2]|0;q=c[(c[h>>2]|0)+8>>2]|0;r=Mb(c[(c[h>>2]|0)+8>>2]|0)|0;if((c[(c[h>>2]|0)+20>>2]|0)!=0){s=c[c[(c[h>>2]|0)+20>>2]>>2]|0}else{s=0}e=Of(p,q,r,s,a[m>>0]|0,0)|0;c[(c[g>>2]|0)+4>>2]=e;if((c[(c[h>>2]|0)+4>>2]&16|0)!=0){f=(c[j>>2]|0)+68|0;e=c[f>>2]|0;c[f>>2]=e+1;c[(c[g>>2]|0)+12>>2]=e;break}else{c[(c[g>>2]|0)+12>>2]=-1;break}}}while(0);b[(c[h>>2]|0)+34>>1]=c[n>>2];c[(c[h>>2]|0)+40>>2]=c[o>>2];c[k>>2]=1;e=c[k>>2]|0;i=l;return e|0}c[k>>2]=0;e=c[k>>2]|0;i=l;return e|0}else if((f|0)==154|(f|0)==156){a:do{if((c[z>>2]|0)!=0){c[y>>2]=(c[z>>2]|0)+8;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[c[z>>2]>>2]|0)){break a}if((c[(c[h>>2]|0)+28>>2]|0)==(c[(c[y>>2]|0)+40>>2]|0)){break}c[n>>2]=(c[n>>2]|0)+1;c[y>>2]=(c[y>>2]|0)+72}c[r>>2]=c[(c[o>>2]|0)+28>>2];c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[(c[o>>2]|0)+32>>2]|0)){break}if((c[(c[r>>2]|0)+4>>2]|0)==(c[(c[h>>2]|0)+28>>2]|0)?(c[(c[r>>2]|0)+8>>2]|0)==(b[(c[h>>2]|0)+32>>1]|0):0){break}c[x>>2]=(c[x>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+24}if((c[x>>2]|0)>=(c[(c[o>>2]|0)+32>>2]|0)?(e=vx(c[c[j>>2]>>2]|0,c[o>>2]|0)|0,c[x>>2]=e,(e|0)>=0):0){c[r>>2]=(c[(c[o>>2]|0)+28>>2]|0)+((c[x>>2]|0)*24|0);c[c[r>>2]>>2]=c[(c[h>>2]|0)+44>>2];c[(c[r>>2]|0)+4>>2]=c[(c[h>>2]|0)+28>>2];c[(c[r>>2]|0)+8>>2]=b[(c[h>>2]|0)+32>>1]|0;f=(c[j>>2]|0)+72|0;e=(c[f>>2]|0)+1|0;c[f>>2]=e;c[(c[r>>2]|0)+16>>2]=e;c[(c[r>>2]|0)+12>>2]=-1;c[(c[r>>2]|0)+20>>2]=c[h>>2];b:do{if((c[(c[o>>2]|0)+24>>2]|0)!=0){c[w>>2]=c[(c[o>>2]|0)+24>>2];c[s>>2]=c[(c[w>>2]|0)+4>>2];c[v>>2]=c[c[w>>2]>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[v>>2]|0)){break b}c[q>>2]=c[c[s>>2]>>2];if(((d[c[q>>2]>>0]|0)==154?(c[(c[q>>2]|0)+28>>2]|0)==(c[(c[h>>2]|0)+28>>2]|0):0)?(b[(c[q>>2]|0)+32>>1]|0)==(b[(c[h>>2]|0)+32>>1]|0):0){break}c[u>>2]=(c[u>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+20}c[(c[r>>2]|0)+12>>2]=c[u>>2]}}while(0);if((c[(c[r>>2]|0)+12>>2]|0)<0){f=(c[o>>2]|0)+12|0;e=c[f>>2]|0;c[f>>2]=e+1;c[(c[r>>2]|0)+12>>2]=e}}c[(c[h>>2]|0)+40>>2]=c[o>>2];a[c[h>>2]>>0]=-100;b[(c[h>>2]|0)+34>>1]=c[x>>2]}}while(0);c[k>>2]=1;e=c[k>>2]|0;i=l;return e|0}else{c[k>>2]=0;e=c[k>>2]|0;i=l;return e|0}return 0}function ux(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function vx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e+4|0;d=e;c[g>>2]=a;c[f>>2]=b;a=Tt(c[g>>2]|0,c[(c[f>>2]|0)+28>>2]|0,24,(c[f>>2]|0)+32|0,d)|0;c[(c[f>>2]|0)+28>>2]=a;i=e;return c[d>>2]|0}function wx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e+4|0;d=e;c[g>>2]=a;c[f>>2]=b;a=Tt(c[g>>2]|0,c[(c[f>>2]|0)+40>>2]|0,16,(c[f>>2]|0)+44|0,d)|0;c[(c[f>>2]|0)+40>>2]=a;i=e;return c[d>>2]|0}function xx(b,d,f,g){b=b|0;d=d|0;f=f|0;g=g|0;var h=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;o=i;i=i+80|0;v=o+72|0;m=o+68|0;n=o+64|0;B=o+60|0;h=o+56|0;A=o+52|0;r=o+48|0;p=o+44|0;x=o+40|0;q=o+36|0;t=o+32|0;u=o+28|0;s=o+24|0;w=o+20|0;z=o+16|0;y=o+12|0;k=o+8|0;l=o+4|0;j=o;c[v>>2]=b;c[m>>2]=d;c[n>>2]=f;c[B>>2]=g;c[h>>2]=c[(c[v>>2]|0)+8>>2];c[A>>2]=c[c[c[m>>2]>>2]>>2];d=(c[v>>2]|0)+72|0;b=(c[d>>2]|0)+1|0;c[d>>2]=b;c[r>>2]=b;c[p>>2]=(c[(c[v>>2]|0)+72>>2]|0)+1;c[x>>2]=c[(c[m>>2]|0)+4>>2];b=(c[v>>2]|0)+72|0;c[b>>2]=(c[b>>2]|0)+((c[A>>2]|0)+2);Lt(c[v>>2]|0);Fs(c[v>>2]|0,c[c[m>>2]>>2]|0,c[p>>2]|0,0)|0;To(c[h>>2]|0,68,c[(c[m>>2]|0)+8>>2]|0,(c[p>>2]|0)+(c[A>>2]|0)|0)|0;hx(c[v>>2]|0,c[B>>2]|0,(c[p>>2]|0)+(c[A>>2]|0)+1|0,1);Wo(c[h>>2]|0,48,(c[p>>2]|0)+(c[x>>2]|0)|0,(c[A>>2]|0)+2-(c[x>>2]|0)|0,c[r>>2]|0)|0;do{if((c[x>>2]|0)>0){c[t>>2]=(c[(c[v>>2]|0)+72>>2]|0)+1;B=(c[v>>2]|0)+72|0;c[B>>2]=(c[B>>2]|0)+(c[(c[m>>2]|0)+4>>2]|0);c[z>>2]=(c[A>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)+1;c[u>>2]=rr(c[h>>2]|0,45,(c[p>>2]|0)+(c[A>>2]|0)|0)|0;Wo(c[h>>2]|0,41,c[t>>2]|0,c[p>>2]|0,c[(c[m>>2]|0)+4>>2]|0)|0;c[w>>2]=Ns(c[h>>2]|0,c[(c[m>>2]|0)+20>>2]|0)|0;if((a[(c[c[v>>2]>>2]|0)+64>>0]|0)!=0){i=o;return}else{c[(c[w>>2]|0)+8>>2]=(c[z>>2]|0)+1;c[y>>2]=c[(c[w>>2]|0)+16>>2];_D(c[(c[y>>2]|0)+16>>2]|0,0,e[(c[y>>2]|0)+6>>1]|0)|0;Ye(c[h>>2]|0,-1,c[y>>2]|0,-6);b=Xw(c[v>>2]|0,c[c[m>>2]>>2]|0,c[x>>2]|0,1)|0;c[(c[w>>2]|0)+16>>2]=b;c[s>>2]=vr(c[h>>2]|0)|0;Wo(c[h>>2]|0,42,(c[s>>2]|0)+1|0,0,(c[s>>2]|0)+1|0)|0;b=fs(c[h>>2]|0)|0;c[(c[m>>2]|0)+16>>2]=b;b=(c[v>>2]|0)+72|0;B=(c[b>>2]|0)+1|0;c[b>>2]=B;c[(c[m>>2]|0)+12>>2]=B;To(c[h>>2]|0,17,c[(c[m>>2]|0)+12>>2]|0,c[(c[m>>2]|0)+16>>2]|0)|0;rr(c[h>>2]|0,116,c[(c[m>>2]|0)+8>>2]|0)|0;mp(c[h>>2]|0,c[u>>2]|0);Wo(c[h>>2]|0,32,c[p>>2]|0,c[t>>2]|0,c[(c[m>>2]|0)+4>>2]|0)|0;mp(c[h>>2]|0,c[s>>2]|0);break}}}while(0);if((a[(c[m>>2]|0)+24>>0]&1|0)!=0){c[q>>2]=106}else{c[q>>2]=107}To(c[h>>2]|0,c[q>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[r>>2]|0)|0;if((c[(c[n>>2]|0)+8>>2]|0)==0){i=o;return}p=c[n>>2]|0;if((c[(c[n>>2]|0)+12>>2]|0)!=0){c[j>>2]=(c[p+12>>2]|0)+1}else{c[j>>2]=c[p+8>>2]}c[k>>2]=rr(c[h>>2]|0,136,c[j>>2]|0)|0;To(c[h>>2]|0,37,c[j>>2]|0,-1)|0;c[l>>2]=$o(c[h>>2]|0,16)|0;mp(c[h>>2]|0,c[k>>2]|0);rr(c[h>>2]|0,102,c[(c[m>>2]|0)+8>>2]|0)|0;rr(c[h>>2]|0,74,c[(c[m>>2]|0)+8>>2]|0)|0;mp(c[h>>2]|0,c[l>>2]|0);i=o;return}function yx(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;a=c[e>>2]|0;if((a|0)==118){c[b>>2]=25216}else if((a|0)==117){c[b>>2]=25232}else if((a|0)==116){c[b>>2]=25200}else{c[b>>2]=25240}i=d;return c[b>>2]|0}function zx(a,f,g){a=a|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;x=i;i=i+112|0;n=x+108|0;o=x+104|0;q=x+100|0;H=x+96|0;D=x+92|0;t=x+88|0;y=x+84|0;v=x+80|0;l=x+76|0;r=x+72|0;p=x+68|0;u=x+64|0;k=x+60|0;B=x+56|0;E=x+52|0;z=x+32|0;G=x+28|0;A=x+24|0;h=x+20|0;w=x+16|0;j=x+12|0;s=x+8|0;m=x+4|0;C=x;c[n>>2]=a;c[o>>2]=f;c[q>>2]=g;c[H>>2]=c[(c[o>>2]|0)+32>>2];c[D>>2]=c[c[c[o>>2]>>2]>>2];c[t>>2]=c[(c[n>>2]|0)+8>>2];c[y>>2]=c[(c[o>>2]|0)+52>>2];c[p>>2]=0;c[B>>2]=0;c[E>>2]=5;if((Oo(c[n>>2]|0,33,0,0,0)|0)!=0){i=x;return}c[r>>2]=fs(c[t>>2]|0)|0;Yw(c[n>>2]|0,c[o>>2]|0,c[r>>2]|0);c[w>>2]=c[(c[o>>2]|0)+60>>2];c[j>>2]=c[(c[o>>2]|0)+64>>2];c[s>>2]=c[(c[o>>2]|0)+8>>2];c[m>>2]=c[(c[o>>2]|0)+12>>2];c[(c[o>>2]|0)+64>>2]=0;c[(c[o>>2]|0)+60>>2]=0;c[(c[o>>2]|0)+12>>2]=0;c[(c[o>>2]|0)+8>>2]=0;c[h>>2]=c[(c[o>>2]|0)+48>>2];c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[c[H>>2]>>2]|0)){break}g=c[G>>2]|0;if(((d[(c[H>>2]|0)+8+((c[G>>2]|0)*72|0)+37>>0]|0)>>>3&1|0)!=0){F=5;break}c[G>>2]=g+1}if((F|0)==5){c[p>>2]=c[(c[H>>2]|0)+8+(g*72|0)+40>>2]}a=(c[n>>2]|0)+68|0;F=c[a>>2]|0;c[a>>2]=F+1;c[k>>2]=F;F=(c[h>>2]|0)!=0;if((d[(c[o>>2]|0)+4>>0]|0|0)==115){c[E>>2]=F?8:6;f=(c[n>>2]|0)+68|0;a=c[f>>2]|0;c[f>>2]=a+1;c[B>>2]=a}else{c[E>>2]=F?7:5}Ks(z,c[E>>2]|0,c[k>>2]|0);f=(c[n>>2]|0)+72|0;a=(c[f>>2]|0)+1|0;c[f>>2]=a;c[u>>2]=a;Wo(c[t>>2]|0,57,c[p>>2]|0,c[u>>2]|0,c[D>>2]|0)|0;if((c[h>>2]|0)!=0){c[C>>2]=Dx(c[n>>2]|0,c[o>>2]|0,1)|0;Vo(c[t>>2]|0,55,c[k>>2]|0,(c[c[h>>2]>>2]|0)+2|0,0,c[C>>2]|0,-6)|0;c[z+16>>2]=c[h>>2]}else{To(c[t>>2]|0,55,c[k>>2]|0,c[D>>2]|0)|0}if((c[B>>2]|0)!=0){a=To(c[t>>2]|0,55,c[B>>2]|0,0)|0;c[(c[o>>2]|0)+16>>2]=a;a=(c[o>>2]|0)+6|0;b[a>>1]=e[a>>1]|0|8}c[(c[o>>2]|0)+48>>2]=0;c[(c[y>>2]|0)+56>>2]=0;c[A>>2]=On(c[n>>2]|0,c[y>>2]|0,z)|0;c[(c[y>>2]|0)+56>>2]=c[o>>2];if((c[A>>2]|0)==0){c[v>>2]=To(c[t>>2]|0,105,c[k>>2]|0,c[r>>2]|0)|0;rr(c[t>>2]|0,101,c[p>>2]|0)|0;B=c[t>>2]|0;A=c[k>>2]|0;if((c[h>>2]|0)!=0){Wo(B,46,A,(c[c[h>>2]>>2]|0)+1|0,c[u>>2]|0)|0}else{To(B,99,A,c[u>>2]|0)|0}rr(c[t>>2]|0,74,c[k>>2]|0)|0;c[l>>2]=fs(c[t>>2]|0)|0;rx(c[t>>2]|0,c[m>>2]|0,c[l>>2]|0);ax(c[n>>2]|0,c[o>>2]|0,c[c[o>>2]>>2]|0,c[p>>2]|0,0,0,c[q>>2]|0,c[l>>2]|0,c[r>>2]|0);if((c[s>>2]|0)!=0){Wo(c[t>>2]|0,136,c[s>>2]|0,c[r>>2]|0,-1)|0}cs(c[t>>2]|0,c[l>>2]|0);c[(c[o>>2]|0)+52>>2]=0;On(c[n>>2]|0,c[o>>2]|0,z)|0;c[(c[o>>2]|0)+52>>2]=c[y>>2];To(c[t>>2]|0,16,0,c[v>>2]|0)|0;cs(c[t>>2]|0,c[r>>2]|0)}dn(c[c[n>>2]>>2]|0,c[(c[o>>2]|0)+48>>2]|0);c[(c[o>>2]|0)+48>>2]=c[h>>2];c[(c[o>>2]|0)+60>>2]=c[w>>2];c[(c[o>>2]|0)+64>>2]=c[j>>2];i=x;return}function Ax(f,g,h){f=f|0;g=g|0;h=h|0;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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;X=i;i=i+224|0;W=X+212|0;A=X+208|0;l=X+204|0;C=X+200|0;_=X+196|0;ba=X+192|0;m=X+188|0;n=X+184|0;G=X+164|0;B=X+144|0;r=X+140|0;y=X+136|0;H=X+132|0;L=X+128|0;o=X+124|0;w=X+120|0;p=X+116|0;x=X+112|0;J=X+108|0;v=X+104|0;E=X+100|0;q=X+96|0;Q=X+92|0;R=X+88|0;k=X+84|0;O=X+80|0;j=X+76|0;M=X+72|0;N=X+68|0;s=X+64|0;u=X+60|0;I=X+56|0;t=X+52|0;z=X+48|0;S=X+44|0;F=X+40|0;Z=X+36|0;T=X+32|0;U=X+28|0;K=X+24|0;P=X+20|0;ca=X+16|0;aa=X+12|0;Y=X+8|0;$=X+4|0;V=X;c[A>>2]=f;c[l>>2]=g;c[C>>2]=h;c[x>>2]=0;c[z>>2]=0;c[F>>2]=c[c[A>>2]>>2];c[n>>2]=c[(c[A>>2]|0)+8>>2];c[u>>2]=fs(c[n>>2]|0)|0;c[s>>2]=fs(c[n>>2]|0)|0;c[t>>2]=d[(c[l>>2]|0)+4>>0]|0;c[m>>2]=c[(c[l>>2]|0)+52>>2];c[Z>>2]=c[(c[l>>2]|0)+48>>2];c[T>>2]=c[c[Z>>2]>>2];a:do{if((c[t>>2]|0)!=116){c[_>>2]=1;while(1){if((d[(c[F>>2]|0)+64>>0]|0|0)!=0){break a}if((c[_>>2]|0)>(c[c[c[l>>2]>>2]>>2]|0)){break a}c[ba>>2]=0;c[ca>>2]=c[(c[Z>>2]|0)+4>>2];while(1){if((c[ba>>2]|0)>=(c[T>>2]|0)){break}if((e[(c[ca>>2]|0)+16>>1]|0|0)==(c[_>>2]|0)){break}c[ba>>2]=(c[ba>>2]|0)+1;c[ca>>2]=(c[ca>>2]|0)+20}if((c[ba>>2]|0)==(c[T>>2]|0)){c[aa>>2]=Un(c[F>>2]|0,132,0)|0;if((c[aa>>2]|0)==0){break}f=(c[aa>>2]|0)+4|0;c[f>>2]=c[f>>2]|1024;c[(c[aa>>2]|0)+8>>2]=c[_>>2];c[Z>>2]=Rn(c[A>>2]|0,c[Z>>2]|0,c[aa>>2]|0)|0;if((c[Z>>2]|0)!=0){g=c[_>>2]&65535;f=c[T>>2]|0;c[T>>2]=f+1;b[(c[(c[Z>>2]|0)+4>>2]|0)+(f*20|0)+16>>1]=g}}c[_>>2]=(c[_>>2]|0)+1}c[W>>2]=7;f=c[W>>2]|0;i=X;return f|0}}while(0);c[U>>2]=Le(c[F>>2]|0,c[T>>2]<<2)|0;if((c[U>>2]|0)!=0){c[_>>2]=0;c[Y>>2]=c[(c[Z>>2]|0)+4>>2];while(1){if((c[_>>2]|0)>=(c[T>>2]|0)){break}c[(c[U>>2]|0)+(c[_>>2]<<2)>>2]=(e[(c[Y>>2]|0)+16>>1]|0)-1;c[_>>2]=(c[_>>2]|0)+1;c[Y>>2]=(c[Y>>2]|0)+20}c[S>>2]=Dx(c[A>>2]|0,c[l>>2]|0,1)|0}else{c[S>>2]=0}c[(c[l>>2]|0)+48>>2]=c[Z>>2];f=sq(c[c[A>>2]>>2]|0,c[Z>>2]|0,0)|0;c[(c[m>>2]|0)+48>>2]=f;b:do{if((c[t>>2]|0)!=116){c[$>>2]=c[c[c[l>>2]>>2]>>2];c[j>>2]=(c[(c[A>>2]|0)+72>>2]|0)+1;f=(c[A>>2]|0)+72|0;c[f>>2]=(c[f>>2]|0)+((c[$>>2]|0)+1);To(c[n>>2]|0,25,0,c[j>>2]|0)|0;c[z>>2]=Er(c[F>>2]|0,c[$>>2]|0,1)|0;if((c[z>>2]|0)!=0){c[_>>2]=0;while(1){if((c[_>>2]|0)>=(c[$>>2]|0)){break b}f=Cx(c[A>>2]|0,c[l>>2]|0,c[_>>2]|0)|0;c[(c[z>>2]|0)+20+(c[_>>2]<<2)>>2]=f;a[(c[(c[z>>2]|0)+16>>2]|0)+(c[_>>2]|0)>>0]=0;c[_>>2]=(c[_>>2]|0)+1}}}else{c[j>>2]=0}}while(0);c[(c[l>>2]|0)+52>>2]=0;c[(c[m>>2]|0)+56>>2]=0;uq(c[A>>2]|0,c[l>>2]|0,c[(c[l>>2]|0)+48>>2]|0,16384)|0;if((c[(c[m>>2]|0)+52>>2]|0)==0){uq(c[A>>2]|0,c[m>>2]|0,c[(c[m>>2]|0)+48>>2]|0,16384)|0}Yw(c[A>>2]|0,c[l>>2]|0,c[u>>2]|0);if((c[(c[l>>2]|0)+8>>2]|0)!=0?(c[t>>2]|0)==116:0){Y=(c[A>>2]|0)+72|0;f=(c[Y>>2]|0)+1|0;c[Y>>2]=f;c[k>>2]=f;f=(c[A>>2]|0)+72|0;Y=(c[f>>2]|0)+1|0;c[f>>2]=Y;c[O>>2]=Y;Y=c[l>>2]|0;if((c[(c[l>>2]|0)+12>>2]|0)!=0){Y=(c[Y+12>>2]|0)+1|0}else{Y=c[Y+8>>2]|0}To(c[n>>2]|0,33,Y,c[k>>2]|0)|0;To(c[n>>2]|0,33,c[k>>2]|0,c[O>>2]|0)|0}else{c[O>>2]=0;c[k>>2]=0}hn(c[F>>2]|0,c[(c[l>>2]|0)+60>>2]|0);c[(c[l>>2]|0)+60>>2]=0;hn(c[F>>2]|0,c[(c[l>>2]|0)+64>>2]|0);c[(c[l>>2]|0)+64>>2]=0;f=(c[A>>2]|0)+72|0;g=(c[f>>2]|0)+1|0;c[f>>2]=g;c[r>>2]=g;g=(c[A>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[y>>2]=f;f=(c[A>>2]|0)+72|0;g=(c[f>>2]|0)+1|0;c[f>>2]=g;c[o>>2]=g;g=(c[A>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[w>>2]=f;Ks(G,13,c[r>>2]|0);Ks(B,13,c[y>>2]|0);c[H>>2]=(vr(c[n>>2]|0)|0)+1;c[I>>2]=Wo(c[n>>2]|0,20,c[r>>2]|0,0,c[H>>2]|0)|0;c[(c[m>>2]|0)+8>>2]=c[k>>2];c[K>>2]=c[(c[A>>2]|0)+468>>2];On(c[A>>2]|0,c[m>>2]|0,G)|0;rr(c[n>>2]|0,21,c[r>>2]|0)|0;mp(c[n>>2]|0,c[I>>2]|0);c[L>>2]=(vr(c[n>>2]|0)|0)+1;c[I>>2]=Wo(c[n>>2]|0,20,c[y>>2]|0,0,c[L>>2]|0)|0;c[M>>2]=c[(c[l>>2]|0)+8>>2];c[N>>2]=c[(c[l>>2]|0)+12>>2];c[(c[l>>2]|0)+8>>2]=c[O>>2];c[(c[l>>2]|0)+12>>2]=0;c[P>>2]=c[(c[A>>2]|0)+468>>2];On(c[A>>2]|0,c[l>>2]|0,B)|0;c[(c[l>>2]|0)+8>>2]=c[M>>2];c[(c[l>>2]|0)+12>>2]=c[N>>2];rr(c[n>>2]|0,21,c[y>>2]|0)|0;c[p>>2]=Ex(c[A>>2]|0,c[l>>2]|0,G,c[C>>2]|0,c[o>>2]|0,c[j>>2]|0,c[z>>2]|0,c[u>>2]|0)|0;if((c[t>>2]|0)==116|(c[t>>2]|0)==115){c[x>>2]=Ex(c[A>>2]|0,c[l>>2]|0,B,c[C>>2]|0,c[w>>2]|0,c[j>>2]|0,c[z>>2]|0,c[u>>2]|0)|0}Zg(c[z>>2]|0);if((c[t>>2]|0)==117|(c[t>>2]|0)==118){f=c[u>>2]|0;c[J>>2]=f;c[v>>2]=f}else{c[J>>2]=To(c[n>>2]|0,17,c[w>>2]|0,c[x>>2]|0)|0;c[v>>2]=To(c[n>>2]|0,22,c[y>>2]|0,c[u>>2]|0)|0;To(c[n>>2]|0,16,0,c[J>>2]|0)|0;g=(c[m>>2]|0)+24|0;f=(c[l>>2]|0)+24|0;ca=f;g=bE(c[ca>>2]|0,c[ca+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;c[f>>2]=g;c[f+4>>2]=D}if((c[t>>2]|0)==118){c[E>>2]=c[J>>2];g=(c[l>>2]|0)+24|0;ba=c[g+4>>2]|0;f=(c[m>>2]|0)+24|0;ca=c[f+4>>2]|0;if(ba>>>0>ca>>>0|((ba|0)==(ca|0)?(c[g>>2]|0)>>>0>(c[f>>2]|0)>>>0:0)){ca=(c[m>>2]|0)+24|0;g=c[ca+4>>2]|0;f=(c[l>>2]|0)+24|0;c[f>>2]=c[ca>>2];c[f+4>>2]=g}}else{c[E>>2]=To(c[n>>2]|0,17,c[o>>2]|0,c[p>>2]|0)|0;To(c[n>>2]|0,22,c[r>>2]|0,c[u>>2]|0)|0;To(c[n>>2]|0,16,0,c[E>>2]|0)|0}c[q>>2]=To(c[n>>2]|0,17,c[o>>2]|0,c[p>>2]|0)|0;To(c[n>>2]|0,22,c[r>>2]|0,c[J>>2]|0)|0;To(c[n>>2]|0,16,0,c[s>>2]|0)|0;do{if((c[t>>2]|0)!=116){if((c[t>>2]|0)==118){c[Q>>2]=c[q>>2];c[q>>2]=(c[q>>2]|0)+1;break}else{c[Q>>2]=To(c[n>>2]|0,22,c[r>>2]|0,c[J>>2]|0)|0;To(c[n>>2]|0,16,0,c[s>>2]|0)|0;break}}else{c[Q>>2]=c[q>>2]}}while(0);c[R>>2]=vr(c[n>>2]|0)|0;if((c[t>>2]|0)==116|(c[t>>2]|0)==115){To(c[n>>2]|0,17,c[w>>2]|0,c[x>>2]|0)|0}To(c[n>>2]|0,22,c[y>>2]|0,c[E>>2]|0)|0;To(c[n>>2]|0,16,0,c[s>>2]|0)|0;mp(c[n>>2]|0,c[I>>2]|0);To(c[n>>2]|0,22,c[r>>2]|0,c[v>>2]|0)|0;To(c[n>>2]|0,22,c[y>>2]|0,c[E>>2]|0)|0;cs(c[n>>2]|0,c[s>>2]|0);Vo(c[n>>2]|0,40,0,0,0,c[U>>2]|0,-15)|0;Vo(c[n>>2]|0,41,c[G+8>>2]|0,c[B+8>>2]|0,c[T>>2]|0,c[S>>2]|0,-6)|0;Se(c[n>>2]|0,1);Wo(c[n>>2]|0,42,c[q>>2]|0,c[Q>>2]|0,c[R>>2]|0)|0;cs(c[n>>2]|0,c[u>>2]|0);if((d[c[C>>2]>>0]|0|0)==9){c[V>>2]=c[m>>2];while(1){if((c[(c[V>>2]|0)+52>>2]|0)==0){break}c[V>>2]=c[(c[V>>2]|0)+52>>2]}px(c[A>>2]|0,0,c[c[V>>2]>>2]|0)}if((c[(c[l>>2]|0)+52>>2]|0)!=0){en(c[F>>2]|0,c[(c[l>>2]|0)+52>>2]|0)}c[(c[l>>2]|0)+52>>2]=c[m>>2];c[(c[m>>2]|0)+56>>2]=c[l>>2];Bx(c[A>>2]|0,d[(c[l>>2]|0)+4>>0]|0,c[K>>2]|0,c[P>>2]|0,0);c[W>>2]=0;f=c[W>>2]|0;i=X;return f|0}function Bx(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+48|0;p=o;j=o+40|0;h=o+36|0;l=o+32|0;m=o+28|0;n=o+24|0;k=o+20|0;q=o+16|0;c[j>>2]=a;c[h>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;if((d[(c[j>>2]|0)+450>>0]|0|0)!=2){i=o;return}c[k>>2]=c[(c[j>>2]|0)+8>>2];a=c[c[j>>2]>>2]|0;l=c[l>>2]|0;f=c[m>>2]|0;e=(c[n>>2]|0)!=0?25176:1472;b=yx(c[h>>2]|0)|0;c[p>>2]=l;c[p+4>>2]=f;c[p+8>>2]=e;c[p+12>>2]=b;c[q>>2]=Oe(a,25136,p)|0;Vo(c[k>>2]|0,157,c[(c[j>>2]|0)+464>>2]|0,0,0,c[q>>2]|0,-1)|0;i=o;return}function Cx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;e=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if((c[(c[h>>2]|0)+52>>2]|0)!=0){c[e>>2]=Cx(c[g>>2]|0,c[(c[h>>2]|0)+52>>2]|0,c[j>>2]|0)|0}else{c[e>>2]=0}if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=f;return a|0}if((c[j>>2]|0)>=(c[c[c[h>>2]>>2]>>2]|0)){a=c[e>>2]|0;i=f;return a|0}c[e>>2]=Mp(c[g>>2]|0,c[(c[(c[c[h>>2]>>2]|0)+4>>2]|0)+((c[j>>2]|0)*20|0)>>2]|0)|0;a=c[e>>2]|0;i=f;return a|0}function Dx(b,d,f){b=b|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+48|0;p=n+40|0;l=n+36|0;s=n+32|0;h=n+28|0;q=n+24|0;r=n+20|0;m=n+16|0;o=n+12|0;g=n+8|0;j=n+4|0;k=n;c[p>>2]=b;c[l>>2]=d;c[s>>2]=f;c[h>>2]=c[(c[l>>2]|0)+48>>2];c[q>>2]=c[c[(c[l>>2]|0)+48>>2]>>2];c[r>>2]=c[c[p>>2]>>2];c[m>>2]=Er(c[r>>2]|0,(c[q>>2]|0)+(c[s>>2]|0)|0,1)|0;if((c[m>>2]|0)==0){s=c[m>>2]|0;i=n;return s|0}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[q>>2]|0)){break}c[g>>2]=(c[(c[h>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0);c[j>>2]=c[c[g>>2]>>2];f=c[p>>2]|0;if((c[(c[j>>2]|0)+4>>2]&256|0)!=0){c[k>>2]=Mp(f,c[j>>2]|0)|0}else{c[k>>2]=Cx(f,c[l>>2]|0,(e[(c[g>>2]|0)+16>>1]|0)-1|0)|0;if((c[k>>2]|0)==0){c[k>>2]=c[(c[r>>2]|0)+8>>2]}s=xq(c[p>>2]|0,c[j>>2]|0,c[c[k>>2]>>2]|0)|0;c[(c[(c[h>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0)>>2]=s}c[(c[m>>2]|0)+20+(c[o>>2]<<2)>>2]=c[k>>2];a[(c[(c[m>>2]|0)+16>>2]|0)+(c[o>>2]|0)>>0]=a[(c[(c[h>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0)+12>>0]|0;c[o>>2]=(c[o>>2]|0)+1}s=c[m>>2]|0;i=n;return s|0}function Ex(b,e,f,g,h,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;n=i;i=i+80|0;y=n+64|0;u=n+60|0;o=n+56|0;x=n+52|0;m=n+48|0;s=n+44|0;A=n+40|0;D=n+36|0;q=n+32|0;p=n+28|0;r=n+24|0;t=n+20|0;B=n+16|0;C=n+12|0;v=n+8|0;w=n+4|0;z=n;c[u>>2]=b;c[o>>2]=e;c[x>>2]=f;c[m>>2]=g;c[s>>2]=h;c[A>>2]=j;c[D>>2]=k;c[q>>2]=l;c[p>>2]=c[(c[u>>2]|0)+8>>2];c[t>>2]=vr(c[p>>2]|0)|0;c[r>>2]=fs(c[p>>2]|0)|0;if((c[A>>2]|0)!=0){c[B>>2]=rr(c[p>>2]|0,45,c[A>>2]|0)|0;g=c[p>>2]|0;f=c[(c[x>>2]|0)+8>>2]|0;e=(c[A>>2]|0)+1|0;b=c[(c[x>>2]|0)+12>>2]|0;c[C>>2]=Vo(g,41,f,e,b,Fr(c[D>>2]|0)|0,-6)|0;Wo(c[p>>2]|0,42,(c[C>>2]|0)+2|0,c[r>>2]|0,(c[C>>2]|0)+2|0)|0;mp(c[p>>2]|0,c[B>>2]|0);Wo(c[p>>2]|0,33,c[(c[x>>2]|0)+8>>2]|0,(c[A>>2]|0)+1|0,(c[(c[x>>2]|0)+12>>2]|0)-1|0)|0;To(c[p>>2]|0,25,1,c[A>>2]|0)|0}if((a[(c[c[u>>2]>>2]|0)+64>>0]|0)!=0){c[y>>2]=0;b=c[y>>2]|0;i=n;return b|0}rx(c[p>>2]|0,c[(c[o>>2]|0)+12>>2]|0,c[r>>2]|0);switch(d[c[m>>2]>>0]|0){case 12:case 14:{c[v>>2]=Zo(c[u>>2]|0)|0;c[w>>2]=Zo(c[u>>2]|0)|0;Wo(c[p>>2]|0,48,c[(c[x>>2]|0)+8>>2]|0,c[(c[x>>2]|0)+12>>2]|0,c[v>>2]|0)|0;To(c[p>>2]|0,69,c[(c[m>>2]|0)+4>>2]|0,c[w>>2]|0)|0;Wo(c[p>>2]|0,70,c[(c[m>>2]|0)+4>>2]|0,c[v>>2]|0,c[w>>2]|0)|0;Se(c[p>>2]|0,8);_o(c[u>>2]|0,c[w>>2]|0);_o(c[u>>2]|0,c[v>>2]|0);break};case 11:{b=Us(c[c[(c[c[o>>2]>>2]|0)+4>>2]>>2]|0,a[(c[m>>2]|0)+1>>0]|0)|0;a[(c[m>>2]|0)+1>>0]=b;c[z>>2]=Zo(c[u>>2]|0)|0;Vo(c[p>>2]|0,48,c[(c[x>>2]|0)+8>>2]|0,1,c[z>>2]|0,(c[m>>2]|0)+1|0,1)|0;Ds(c[u>>2]|0,c[(c[x>>2]|0)+8>>2]|0,1);To(c[p>>2]|0,107,c[(c[m>>2]|0)+4>>2]|0,c[z>>2]|0)|0;_o(c[u>>2]|0,c[z>>2]|0);break};case 10:{hx(c[u>>2]|0,c[(c[x>>2]|0)+8>>2]|0,c[(c[m>>2]|0)+4>>2]|0,1);break};case 13:{if((c[(c[m>>2]|0)+8>>2]|0)==0){b=is(c[u>>2]|0,c[(c[x>>2]|0)+12>>2]|0)|0;c[(c[m>>2]|0)+8>>2]=b;c[(c[m>>2]|0)+12>>2]=c[(c[x>>2]|0)+12>>2]}hx(c[u>>2]|0,c[(c[x>>2]|0)+8>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[(c[m>>2]|0)+12>>2]|0);rr(c[p>>2]|0,22,c[(c[m>>2]|0)+4>>2]|0)|0;break};default:{To(c[p>>2]|0,35,c[(c[x>>2]|0)+8>>2]|0,c[(c[x>>2]|0)+12>>2]|0)|0;Ds(c[u>>2]|0,c[(c[x>>2]|0)+8>>2]|0,c[(c[x>>2]|0)+12>>2]|0)}}if((c[(c[o>>2]|0)+8>>2]|0)!=0){Wo(c[p>>2]|0,136,c[(c[o>>2]|0)+8>>2]|0,c[q>>2]|0,-1)|0}cs(c[p>>2]|0,c[r>>2]|0);rr(c[p>>2]|0,18,c[s>>2]|0)|0;c[y>>2]=c[t>>2];b=c[y>>2]|0;i=n;return b|0}function Fx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;j=f+16|0;h=f+12|0;k=f+8|0;l=f+4|0;g=f;c[j>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;if((c[h>>2]|0)==0){i=f;return}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[c[h>>2]>>2]|0)){break}a=Gx(c[j>>2]|0,c[(c[(c[h>>2]|0)+4>>2]|0)+((c[g>>2]|0)*20|0)>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;c[(c[(c[h>>2]|0)+4>>2]|0)+((c[g>>2]|0)*20|0)>>2]=a;c[g>>2]=(c[g>>2]|0)+1}i=f;return}function Gx(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+32|0;k=n+20|0;q=n+16|0;l=n+12|0;j=n+8|0;m=n+4|0;p=n;c[q>>2]=e;c[l>>2]=f;c[j>>2]=g;c[m>>2]=h;if((c[l>>2]|0)==0){c[k>>2]=0;e=c[k>>2]|0;i=n;return e|0}do{if((d[c[l>>2]>>0]|0)==154?(c[(c[l>>2]|0)+28>>2]|0)==(c[j>>2]|0):0){if((b[(c[l>>2]|0)+32>>1]|0)<0){a[c[l>>2]>>0]=101;break}else{c[p>>2]=kq(c[q>>2]|0,c[(c[(c[m>>2]|0)+4>>2]|0)+((b[(c[l>>2]|0)+32>>1]|0)*20|0)>>2]|0,0)|0;hn(c[q>>2]|0,c[l>>2]|0);c[l>>2]=c[p>>2];break}}else{o=8}}while(0);do{if((o|0)==8){p=Gx(c[q>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[j>>2]|0,c[m>>2]|0)|0;c[(c[l>>2]|0)+12>>2]=p;p=Gx(c[q>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[j>>2]|0,c[m>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=p;p=c[q>>2]|0;o=(c[l>>2]|0)+20|0;if((c[(c[l>>2]|0)+4>>2]&2048|0)!=0){Hx(p,c[o>>2]|0,c[j>>2]|0,c[m>>2]|0);break}else{Fx(p,c[o>>2]|0,c[j>>2]|0,c[m>>2]|0);break}}}while(0);c[k>>2]=c[l>>2];e=c[k>>2]|0;i=n;return e|0}function Hx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;h=l+24|0;n=l+20|0;k=l+16|0;f=l+12|0;m=l+8|0;j=l+4|0;g=l;c[h>>2]=a;c[n>>2]=b;c[k>>2]=d;c[f>>2]=e;if((c[n>>2]|0)==0){i=l;return}Fx(c[h>>2]|0,c[c[n>>2]>>2]|0,c[k>>2]|0,c[f>>2]|0);Fx(c[h>>2]|0,c[(c[n>>2]|0)+40>>2]|0,c[k>>2]|0,c[f>>2]|0);Fx(c[h>>2]|0,c[(c[n>>2]|0)+48>>2]|0,c[k>>2]|0,c[f>>2]|0);a=Gx(c[h>>2]|0,c[(c[n>>2]|0)+44>>2]|0,c[k>>2]|0,c[f>>2]|0)|0;c[(c[n>>2]|0)+44>>2]=a;a=Gx(c[h>>2]|0,c[(c[n>>2]|0)+36>>2]|0,c[k>>2]|0,c[f>>2]|0)|0;c[(c[n>>2]|0)+36>>2]=a;Hx(c[h>>2]|0,c[(c[n>>2]|0)+52>>2]|0,c[k>>2]|0,c[f>>2]|0);c[m>>2]=c[(c[n>>2]|0)+32>>2];if((c[m>>2]|0)==0){i=l;return}c[g>>2]=c[c[m>>2]>>2];c[j>>2]=(c[m>>2]|0)+8;while(1){if((c[g>>2]|0)<=0){break}Hx(c[h>>2]|0,c[(c[j>>2]|0)+20>>2]|0,c[k>>2]|0,c[f>>2]|0);c[g>>2]=(c[g>>2]|0)+ -1;c[j>>2]=(c[j>>2]|0)+72}i=l;return}function Ix(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;k=l+24|0;m=l+20|0;h=l+16|0;g=l+12|0;n=l+8|0;o=l+4|0;j=l;c[k>>2]=b;c[m>>2]=e;c[h>>2]=f;c[g>>2]=c[c[k>>2]>>2];if((c[(c[g>>2]|0)+24>>2]&524288|0)==0){i=l;return}if((a[(c[h>>2]|0)+44>>0]&16|0)!=0){i=l;return}if((c[(c[h>>2]|0)+12>>2]|0)!=0){i=l;return}c[n>>2]=0;c[o>>2]=Ro(c[k>>2]|0)|0;do{if((Cp(c[h>>2]|0)|0)==0){c[j>>2]=c[(c[h>>2]|0)+16>>2];while(1){if((c[j>>2]|0)==0){break}if((d[(c[j>>2]|0)+24>>0]|0|0)!=0){break}if((c[(c[g>>2]|0)+24>>2]&16777216|0)!=0){break}c[j>>2]=c[(c[j>>2]|0)+4>>2]}if((c[j>>2]|0)!=0){c[n>>2]=fs(c[o>>2]|0)|0;To(c[o>>2]|0,131,1,c[n>>2]|0)|0;break}else{i=l;return}}}while(0);a[(c[k>>2]|0)+438>>0]=1;b=c[k>>2]|0;_n(b,fr(c[g>>2]|0,c[m>>2]|0,0)|0,0);a[(c[k>>2]|0)+438>>0]=0;if((c[(c[g>>2]|0)+24>>2]&16777216|0)==0){b=c[o>>2]|0;To(b,131,0,(vr(c[o>>2]|0)|0)+2|0)|0;bs(c[k>>2]|0,787,2,0,-2,4)}if((c[n>>2]|0)==0){i=l;return}cs(c[o>>2]|0,c[n>>2]|0);i=l;return}function Jx(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+48|0;o=m;k=m+40|0;j=m+36|0;h=m+32|0;p=m+28|0;n=m+24|0;l=m+20|0;q=m+16|0;g=m+12|0;c[k>>2]=b;c[j>>2]=d;c[h>>2]=e;c[p>>2]=f;c[l>>2]=c[c[k>>2]>>2];c[g>>2]=(c[(c[l>>2]|0)+16>>2]|0)+(c[h>>2]<<4);c[n>>2]=Ro(c[k>>2]|0)|0;cp(c[k>>2]|0,1,c[h>>2]|0);if((a[(c[j>>2]|0)+44>>0]&16|0)!=0){$o(c[n>>2]|0,141)|0}c[q>>2]=jp(c[k>>2]|0,c[j>>2]|0)|0;while(1){if((c[q>>2]|0)==0){break}it(c[k>>2]|0,c[q>>2]|0);c[q>>2]=c[(c[q>>2]|0)+32>>2]}if((a[(c[j>>2]|0)+44>>0]&8|0)!=0){b=c[k>>2]|0;d=c[c[j>>2]>>2]|0;c[o>>2]=c[c[g>>2]>>2];c[o+4>>2]=d;Qo(b,25488,o)}b=c[k>>2]|0;e=(c[h>>2]|0)==1?14808:14832;d=c[c[j>>2]>>2]|0;c[o>>2]=c[c[g>>2]>>2];c[o+4>>2]=e;c[o+8>>2]=d;Qo(b,25536,o);if((c[p>>2]|0)==0?(a[(c[j>>2]|0)+44>>0]&16|0)==0:0){Kx(c[k>>2]|0,c[j>>2]|0)}if((a[(c[j>>2]|0)+44>>0]&16|0)==0){e=c[n>>2]|0;d=c[h>>2]|0;b=c[j>>2]|0;b=c[b>>2]|0;Vo(e,121,d,0,0,b,0)|0;b=c[k>>2]|0;d=c[h>>2]|0;So(b,d);d=c[l>>2]|0;b=c[h>>2]|0;Lx(d,b);i=m;return}Vo(c[n>>2]|0,148,c[h>>2]|0,0,0,c[c[j>>2]>>2]|0,0)|0;e=c[n>>2]|0;d=c[h>>2]|0;b=c[j>>2]|0;b=c[b>>2]|0;Vo(e,121,d,0,0,b,0)|0;b=c[k>>2]|0;d=c[h>>2]|0;So(b,d);d=c[l>>2]|0;b=c[h>>2]|0;Lx(d,b);i=m;return}function Kx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;m=k+28|0;d=k+24|0;l=k+20|0;j=k+16|0;g=k+12|0;f=k+8|0;h=k+4|0;n=k;c[m>>2]=a;c[d>>2]=b;c[l>>2]=c[(c[d>>2]|0)+32>>2];c[j>>2]=0;while(1){c[f>>2]=0;if(!((c[j>>2]|0)!=0?(c[l>>2]|0)>=(c[j>>2]|0):0)){c[f>>2]=c[l>>2]}c[g>>2]=c[(c[d>>2]|0)+8>>2];while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[(c[g>>2]|0)+44>>2];if(!((c[j>>2]|0)!=0?(c[h>>2]|0)>=(c[j>>2]|0):0)){e=9}if((e|0)==9?(e=0,(c[h>>2]|0)>(c[f>>2]|0)):0){c[f>>2]=c[h>>2]}c[g>>2]=c[(c[g>>2]|0)+20>>2]}if((c[f>>2]|0)==0){break}c[n>>2]=Qe(c[c[m>>2]>>2]|0,c[(c[d>>2]|0)+68>>2]|0)|0;St(c[m>>2]|0,c[f>>2]|0,c[n>>2]|0);c[j>>2]=c[f>>2]}i=k;return}function Lx(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[g>>2]=a;c[h>>2]=d;if((b[(c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]|0)+78>>1]&2|0)!=2){i=f;return}c[j>>2]=c[(c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]|0)+16>>2];while(1){if((c[j>>2]|0)==0){break}c[k>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[k>>2]|0)+12>>2]|0)!=0){Mx(c[g>>2]|0,c[k>>2]|0);c[(c[k>>2]|0)+4>>2]=0;b[(c[k>>2]|0)+38>>1]=0}c[j>>2]=c[c[j>>2]>>2]}a=(c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]|0)+78|0;b[a>>1]=(e[a>>1]|0)&-3;i=f;return}function Mx(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;f=e+8|0;h=e+4|0;j=e;c[g>>2]=a;c[f>>2]=d;a=c[(c[f>>2]|0)+4>>2]|0;c[j>>2]=a;if((a|0)==0){i=e;return}c[h>>2]=0;while(1){d=c[g>>2]|0;if((c[h>>2]|0)>=(b[(c[f>>2]|0)+38>>1]|0)){break}Wb(d,c[c[j>>2]>>2]|0);hn(c[g>>2]|0,c[(c[j>>2]|0)+4>>2]|0);Wb(c[g>>2]|0,c[(c[j>>2]|0)+8>>2]|0);Wb(c[g>>2]|0,c[(c[j>>2]|0)+12>>2]|0);Wb(c[g>>2]|0,c[(c[j>>2]|0)+16>>2]|0);c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+24}Wb(d,c[(c[f>>2]|0)+4>>2]|0);i=e;return}function Nx(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+144|0;l=h+136|0;k=h+132|0;n=h+128|0;o=h+124|0;j=h+120|0;p=h;m=h+88|0;q=h+80|0;c[l>>2]=b;c[k>>2]=d;c[n>>2]=e;c[o>>2]=f;c[j>>2]=g;c[m+0>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[m+20>>2]=0;c[m+24>>2]=0;c[m+28>>2]=0;f=p+0|0;g=f+80|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[p>>2]=1;c[p+16>>2]=c[c[k>>2]>>2];c[p+24>>2]=c[k>>2];c[p+48>>2]=-1;c[m>>2]=c[l>>2];c[m+4>>2]=p;a[m+28>>0]=c[n>>2];if((eq(m,c[o>>2]|0)|0)!=0){i=h;return}if((c[j>>2]|0)==0){i=h;return}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[c[j>>2]>>2]|0)){j=7;break}if((eq(m,c[(c[(c[j>>2]|0)+4>>2]|0)+((c[q>>2]|0)*20|0)>>2]|0)|0)!=0){j=7;break}c[q>>2]=(c[q>>2]|0)+1}if((j|0)==7){i=h;return}}function Ox(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;f=g+12|0;j=g+8|0;k=g+4|0;h=g;c[j>>2]=a;c[k>>2]=d;c[h>>2]=e;while(1){a=c[k>>2]|0;c[k>>2]=a+ -1;if((a|0)<=0){e=5;break}d=c[h>>2]|0;a=c[j>>2]|0;c[j>>2]=a+2;if((d|0)==(b[a>>1]|0)){e=4;break}}if((e|0)==4){c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}else if((e|0)==5){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}return 0}function Px(a){a=a|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;g=h+12|0;f=h+8|0;k=h+4|0;j=h;l=h+16|0;c[g>>2]=a;c[f>>2]=0;c[j>>2]=c[(c[(c[g>>2]|0)+12>>2]|0)+4>>2];c[k>>2]=0;while(1){if((c[k>>2]|0)>=(e[(c[g>>2]|0)+52>>1]|0)){break}b[l>>1]=b[(c[(c[g>>2]|0)+4>>2]|0)+(c[k>>2]<<1)>>1]|0;if((b[l>>1]|0)<0){a=1}else{a=d[(c[j>>2]|0)+((b[(c[(c[g>>2]|0)+4>>2]|0)+(c[k>>2]<<1)>>1]|0)*24|0)+22>>0]|0}c[f>>2]=(c[f>>2]|0)+a;c[k>>2]=(c[k>>2]|0)+1}a=Np(c[f>>2]<<2,0)|0;b[(c[g>>2]|0)+48>>1]=a;i=h;return}function Qx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;g=i;i=i+16|0;e=g+4|0;f=g;c[e>>2]=a;c[f>>2]=b;Rx(c[e>>2]|0,c[f>>2]|0);if(!((c[e>>2]|0)!=0?(c[(c[e>>2]|0)+512>>2]|0)!=0:0)){Zg(c[(c[f>>2]|0)+40>>2]|0)}hn(c[e>>2]|0,c[(c[f>>2]|0)+36>>2]|0);Wb(c[e>>2]|0,c[(c[f>>2]|0)+16>>2]|0);if(((d[(c[f>>2]|0)+55>>0]|0)>>>4&1|0)==0){e=c[e>>2]|0;a=c[f>>2]|0;Wb(e,a);i=g;return}Wb(c[e>>2]|0,c[(c[f>>2]|0)+32>>2]|0);e=c[e>>2]|0;a=c[f>>2]|0;Wb(e,a);i=g;return}function Rx(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return}function Sx(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Os(c[d>>2]|0,2)|0;i=b;return a|0}function Tx(f,g){f=f|0;g=g|0;var h=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;p=i;i=i+48|0;r=p+40|0;q=p+36|0;l=p+32|0;m=p+28|0;o=p+24|0;n=p+20|0;t=p+16|0;h=p+12|0;u=p+8|0;s=p+4|0;k=p;c[r>>2]=f;c[q>>2]=g;c[h>>2]=c[c[r>>2]>>2];c[u>>2]=c[(c[r>>2]|0)+8>>2];if((c[(c[r>>2]|0)+416>>2]|0)!=0){a[(Ns(c[u>>2]|0,c[(c[r>>2]|0)+416>>2]|0)|0)>>0]=117}if((c[(c[r>>2]|0)+420>>2]|0)!=0){a[(Ns(c[u>>2]|0,c[(c[r>>2]|0)+420>>2]|0)|0)>>0]=16}do{if((b[(c[q>>2]|0)+36>>1]|0)>=0){c[s>>2]=Rn(c[r>>2]|0,0,0)|0;if((c[s>>2]|0)==0){i=p;return}f=he(c[c[r>>2]>>2]|0,c[(c[(c[q>>2]|0)+4>>2]|0)+((b[(c[q>>2]|0)+36>>1]|0)*24|0)>>2]|0)|0;c[(c[(c[s>>2]|0)+4>>2]|0)+4>>2]=f;a[(c[(c[s>>2]|0)+4>>2]|0)+12>>0]=a[(c[r>>2]|0)+448>>0]|0;c[m>>2]=Hn(c[r>>2]|0,0,0,0,c[s>>2]|0,d[(c[q>>2]|0)+45>>0]|0,0,0,0,0)|0;if((c[m>>2]|0)==0){i=p;return}else{f=(c[m>>2]|0)+55|0;a[f>>0]=a[f>>0]&-4|2;b[(c[q>>2]|0)+36>>1]=-1;break}}else{c[m>>2]=Gr(c[q>>2]|0)|0}}while(0);f=(c[m>>2]|0)+55|0;a[f>>0]=a[f>>0]&-33|32;c[o>>2]=e[(c[m>>2]|0)+50>>1]|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break}a[(c[(c[q>>2]|0)+4>>2]|0)+((b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]|0)*24|0)+20>>0]=1;c[n>>2]=(c[n>>2]|0)+1}f=(c[m>>2]|0)+55|0;a[f>>0]=a[f>>0]&-9|8;c[(c[m>>2]|0)+44>>2]=c[(c[q>>2]|0)+32>>2];c[l>>2]=c[(c[q>>2]|0)+8>>2];a:while(1){if((c[l>>2]|0)==0){break}b:do{if((a[(c[l>>2]|0)+55>>0]&3|0)!=2){c[k>>2]=0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break}if((Ox(c[(c[l>>2]|0)+4>>2]|0,e[(c[l>>2]|0)+50>>1]|0,b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]|0)|0)==0){c[k>>2]=(c[k>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}if((c[k>>2]|0)==0){b[(c[l>>2]|0)+52>>1]=b[(c[l>>2]|0)+50>>1]|0;break}if((Yx(c[h>>2]|0,c[l>>2]|0,(e[(c[l>>2]|0)+50>>1]|0)+(c[k>>2]|0)|0)|0)!=0){j=38;break a}c[n>>2]=0;c[t>>2]=e[(c[l>>2]|0)+50>>1]|0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break b}if((Ox(c[(c[l>>2]|0)+4>>2]|0,e[(c[l>>2]|0)+50>>1]|0,b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]|0)|0)==0){b[(c[(c[l>>2]|0)+4>>2]|0)+(c[t>>2]<<1)>>1]=b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]|0;c[(c[(c[l>>2]|0)+32>>2]|0)+(c[t>>2]<<2)>>2]=c[(c[(c[m>>2]|0)+32>>2]|0)+(c[n>>2]<<2)>>2];c[t>>2]=(c[t>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}}}while(0);c[l>>2]=c[(c[l>>2]|0)+20>>2]}if((j|0)==38){i=p;return}if((c[o>>2]|0)>=(b[(c[q>>2]|0)+38>>1]|0)){b[(c[m>>2]|0)+52>>1]=b[(c[q>>2]|0)+38>>1]|0;i=p;return}if((Yx(c[h>>2]|0,c[m>>2]|0,b[(c[q>>2]|0)+38>>1]|0)|0)!=0){i=p;return}c[n>>2]=0;c[t>>2]=c[o>>2];while(1){if((c[n>>2]|0)>=(b[(c[q>>2]|0)+38>>1]|0)){break}if((Ox(c[(c[m>>2]|0)+4>>2]|0,c[t>>2]|0,c[n>>2]|0)|0)==0){b[(c[(c[m>>2]|0)+4>>2]|0)+(c[t>>2]<<1)>>1]=c[n>>2];c[(c[(c[m>>2]|0)+32>>2]|0)+(c[t>>2]<<2)>>2]=3320;c[t>>2]=(c[t>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}i=p;return}function Ux(a){a=a|0;var e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;f=g+12|0;e=g+8|0;j=g+4|0;h=g;c[f>>2]=a;c[e>>2]=0;c[h>>2]=b[(c[f>>2]|0)+38>>1]|0;c[j>>2]=c[(c[f>>2]|0)+4>>2];while(1){if((c[h>>2]|0)<=0){break}c[e>>2]=(c[e>>2]|0)+(d[(c[j>>2]|0)+22>>0]|0);c[h>>2]=(c[h>>2]|0)+ -1;c[j>>2]=(c[j>>2]|0)+24}if((b[(c[f>>2]|0)+36>>1]|0)>=0){h=c[e>>2]|0;h=h<<2;h=Np(h,0)|0;j=c[f>>2]|0;j=j+42|0;b[j>>1]=h;i=g;return}c[e>>2]=(c[e>>2]|0)+1;h=c[e>>2]|0;h=h<<2;h=Np(h,0)|0;j=c[f>>2]|0;j=j+42|0;b[j>>1]=h;i=g;return}function Vx(d,e){d=d|0;e=e|0;var f=0,g=0,h=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;h=i;i=i+64|0;k=h;n=h+52|0;u=h+48|0;o=h+44|0;g=h+40|0;f=h+36|0;m=h+32|0;l=h+28|0;p=h+24|0;q=h+20|0;j=h+16|0;r=h+12|0;t=h+8|0;s=h+4|0;c[u>>2]=d;c[o>>2]=e;c[m>>2]=0;c[r>>2]=c[(c[o>>2]|0)+4>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>=(b[(c[o>>2]|0)+38>>1]|0)){break}d=(Wx(c[c[r>>2]>>2]|0)|0)+5|0;c[m>>2]=(c[m>>2]|0)+d;c[g>>2]=(c[g>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+24}d=Wx(c[c[o>>2]>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+d;if((c[m>>2]|0)<50){c[p>>2]=1472;c[q>>2]=9680;c[j>>2]=23816}else{c[p>>2]=26760;c[q>>2]=26768;c[j>>2]=26776}c[m>>2]=(c[m>>2]|0)+(35+((b[(c[o>>2]|0)+38>>1]|0)*6|0));c[l>>2]=Le(0,c[m>>2]|0)|0;if((c[l>>2]|0)==0){a[(c[u>>2]|0)+64>>0]=1;c[n>>2]=0;d=c[n>>2]|0;i=h;return d|0}qc(c[m>>2]|0,c[l>>2]|0,26784,k)|0;c[f>>2]=Mb(c[l>>2]|0)|0;Xx(c[l>>2]|0,f,c[c[o>>2]>>2]|0);d=c[f>>2]|0;c[f>>2]=d+1;a[(c[l>>2]|0)+d>>0]=40;c[r>>2]=c[(c[o>>2]|0)+4>>2];c[g>>2]=0;while(1){e=(c[m>>2]|0)-(c[f>>2]|0)|0;u=(c[l>>2]|0)+(c[f>>2]|0)|0;if((c[g>>2]|0)>=(b[(c[o>>2]|0)+38>>1]|0)){break}qc(e,u,c[p>>2]|0,k)|0;d=Mb((c[l>>2]|0)+(c[f>>2]|0)|0)|0;c[f>>2]=(c[f>>2]|0)+d;c[p>>2]=c[q>>2];Xx(c[l>>2]|0,f,c[c[r>>2]>>2]|0);c[s>>2]=c[26800+((a[(c[r>>2]|0)+21>>0]|0)-97<<2)>>2];c[t>>2]=Mb(c[s>>2]|0)|0;dE((c[l>>2]|0)+(c[f>>2]|0)|0,c[s>>2]|0,c[t>>2]|0)|0;c[f>>2]=(c[f>>2]|0)+(c[t>>2]|0);c[g>>2]=(c[g>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+24}c[k>>2]=c[j>>2];qc(e,u,1456,k)|0;c[n>>2]=c[l>>2];d=c[n>>2]|0;i=h;return d|0}function Wx(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;c[e>>2]=0;while(1){if((a[c[f>>2]>>0]|0)==0){break}if((a[c[f>>2]>>0]|0)==34){c[e>>2]=(c[e>>2]|0)+1}c[e>>2]=(c[e>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+1}i=d;return(c[e>>2]|0)+2|0}function Xx(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;h=k+24|0;j=k+20|0;o=k+16|0;m=k+12|0;l=k+8|0;n=k+4|0;g=k;c[h>>2]=b;c[j>>2]=e;c[o>>2]=f;c[m>>2]=c[o>>2];c[l>>2]=c[c[j>>2]>>2];c[n>>2]=0;while(1){if((a[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)==0){break}if((a[48+(d[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)>>0]&6|0)==0?(d[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)!=95:0){break}c[n>>2]=(c[n>>2]|0)+1}if(((a[48+(d[c[m>>2]>>0]|0)>>0]&4|0)==0?(eg(c[m>>2]|0,c[n>>2]|0)|0)==27:0)?(d[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)==0:0){f=(c[n>>2]|0)==0}else{f=1}c[g>>2]=f&1;if((c[g>>2]|0)!=0){o=c[l>>2]|0;c[l>>2]=o+1;a[(c[h>>2]|0)+o>>0]=34}c[n>>2]=0;while(1){if((a[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)==0){break}b=a[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0;o=c[l>>2]|0;c[l>>2]=o+1;a[(c[h>>2]|0)+o>>0]=b;if((d[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)==34){o=c[l>>2]|0;c[l>>2]=o+1;a[(c[h>>2]|0)+o>>0]=34}c[n>>2]=(c[n>>2]|0)+1}if((c[g>>2]|0)==0){b=c[l>>2]|0;o=c[h>>2]|0;b=o+b|0;a[b>>0]=0;b=c[l>>2]|0;o=c[j>>2]|0;c[o>>2]=b;i=k;return}b=c[l>>2]|0;c[l>>2]=b+1;a[(c[h>>2]|0)+b>>0]=34;b=c[l>>2]|0;o=c[h>>2]|0;b=o+b|0;a[b>>0]=0;b=c[l>>2]|0;o=c[j>>2]|0;c[o>>2]=b;i=k;return}function Yx(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+20|0;o=h+16|0;l=h+12|0;m=h+8|0;k=h+4|0;n=h;c[o>>2]=d;c[l>>2]=f;c[m>>2]=g;if((e[(c[l>>2]|0)+52>>1]|0|0)>=(c[m>>2]|0)){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}c[n>>2]=(c[m>>2]|0)*7;c[k>>2]=ne(c[o>>2]|0,c[n>>2]|0)|0;if((c[k>>2]|0)==0){c[j>>2]=7;d=c[j>>2]|0;i=h;return d|0}else{dE(c[k>>2]|0,c[(c[l>>2]|0)+32>>2]|0,(e[(c[l>>2]|0)+52>>1]|0)<<2|0)|0;c[(c[l>>2]|0)+32>>2]=c[k>>2];c[k>>2]=(c[k>>2]|0)+(c[m>>2]<<2);dE(c[k>>2]|0,c[(c[l>>2]|0)+4>>2]|0,(e[(c[l>>2]|0)+52>>1]|0)<<1|0)|0;c[(c[l>>2]|0)+4>>2]=c[k>>2];c[k>>2]=(c[k>>2]|0)+(c[m>>2]<<1);dE(c[k>>2]|0,c[(c[l>>2]|0)+28>>2]|0,e[(c[l>>2]|0)+52>>1]|0|0)|0;c[(c[l>>2]|0)+28>>2]=c[k>>2];b[(c[l>>2]|0)+52>>1]=c[m>>2];d=(c[l>>2]|0)+55|0;a[d>>0]=a[d>>0]&-17|16;c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}return 0}function Zx(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;f=b+16|0;e=b+12|0;j=b+8|0;g=b+4|0;h=b;c[f>>2]=a;c[j>>2]=Ro(c[f>>2]|0)|0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+396>>2]|0)){break}c[g>>2]=(c[(c[f>>2]|0)+400>>2]|0)+(c[e>>2]<<4);c[h>>2]=c[c[g>>2]>>2];Vo(c[j>>2]|0,140,c[h>>2]|0,c[(c[g>>2]|0)+4>>2]|0,d[(c[g>>2]|0)+8>>0]|0,c[(c[g>>2]|0)+12>>2]|0,-2)|0;c[e>>2]=(c[e>>2]|0)+1}i=b;return}function _x(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+32|0;h=b+24|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;k=b+4|0;j=b;c[h>>2]=a;c[e>>2]=c[c[h>>2]>>2];c[j>>2]=c[(c[h>>2]|0)+8>>2];c[d>>2]=c[(c[h>>2]|0)+404>>2];while(1){if((c[d>>2]|0)==0){break}c[f>>2]=(c[(c[e>>2]|0)+16>>2]|0)+(c[(c[d>>2]|0)+8>>2]<<4);c[g>>2]=c[(c[d>>2]|0)+12>>2];tr(c[h>>2]|0,0,c[(c[d>>2]|0)+8>>2]|0,c[(c[(c[f>>2]|0)+12>>2]|0)+72>>2]|0,52);Wo(c[j>>2]|0,28,0,c[g>>2]|0,(c[g>>2]|0)+1|0)|0;c[k>>2]=vr(c[j>>2]|0)|0;Vo(c[j>>2]|0,97,0,(c[g>>2]|0)-1|0,0,c[c[(c[d>>2]|0)+4>>2]>>2]|0,0)|0;To(c[j>>2]|0,105,0,(c[k>>2]|0)+9|0)|0;Wo(c[j>>2]|0,46,0,0,c[g>>2]|0)|0;Wo(c[j>>2]|0,78,(c[g>>2]|0)-1|0,(c[k>>2]|0)+7|0,c[g>>2]|0)|0;Se(c[j>>2]|0,8);To(c[j>>2]|0,100,0,(c[g>>2]|0)+1|0)|0;Wo(c[j>>2]|0,46,0,1,c[g>>2]|0)|0;To(c[j>>2]|0,16,0,(c[k>>2]|0)+9|0)|0;To(c[j>>2]|0,9,0,(c[k>>2]|0)+2|0)|0;To(c[j>>2]|0,25,0,c[g>>2]|0)|0;$o(c[j>>2]|0,58)|0;c[d>>2]=c[c[d>>2]>>2]}i=b;return}function $x(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;e=g;f=g+12|0;d=g+4|0;c[f>>2]=a;c[g+8>>2]=b;c[d>>2]=c[(c[f>>2]|0)+8>>2];a=c[f>>2]|0;c[a>>2]=(c[a>>2]|0)+ -1;while(1){if((c[c[f>>2]>>2]|0)<0){break}ln(c[f>>2]|0)|0}Ne(c[d>>2]|0,27040,e);c[(c[f>>2]|0)+8>>2]=c[d>>2];i=g;return}function ay(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;l=i;i=i+80|0;p=l;m=l+76|0;z=l+72|0;C=l+68|0;t=l+64|0;F=l+60|0;y=l+56|0;B=l+52|0;n=l+48|0;o=l+44|0;q=l+40|0;u=l+36|0;G=l+32|0;E=l+28|0;A=l+24|0;D=l+20|0;w=l+16|0;v=l+12|0;x=l+8|0;r=l+4|0;c[m>>2]=b;c[z>>2]=e;c[C>>2]=f;c[t>>2]=g;c[F>>2]=h;c[y>>2]=j;c[B>>2]=k;c[o>>2]=0;c[q>>2]=0;c[n>>2]=ne(c[m>>2]|0,536)|0;if((c[n>>2]|0)==0){c[q>>2]=7;b=c[n>>2]|0;$e(b);b=c[m>>2]|0;e=c[n>>2]|0;Wb(b,e);e=c[m>>2]|0;b=c[q>>2]|0;b=td(e,b)|0;c[q>>2]=b;b=c[q>>2]|0;i=l;return b|0}c[(c[n>>2]|0)+476>>2]=c[F>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[(c[m>>2]|0)+20>>2]|0)){break}c[G>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[u>>2]<<4)+4>>2];if((c[G>>2]|0)!=0?(c[q>>2]=by(c[G>>2]|0)|0,(c[q>>2]|0)!=0):0){s=7;break}c[u>>2]=(c[u>>2]|0)+1}if((s|0)==7){c[E>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[u>>2]<<4)>>2];e=c[m>>2]|0;b=c[q>>2]|0;c[p>>2]=c[E>>2];Jc(e,b,30792,p);b=c[n>>2]|0;$e(b);b=c[m>>2]|0;e=c[n>>2]|0;Wb(b,e);e=c[m>>2]|0;b=c[q>>2]|0;b=td(e,b)|0;c[q>>2]=b;b=c[q>>2]|0;i=l;return b|0}Bk(c[m>>2]|0);c[c[n>>2]>>2]=c[m>>2];c[(c[n>>2]|0)+424>>2]=0;do{if((c[C>>2]|0)>=0){if((c[C>>2]|0)!=0?(a[(c[z>>2]|0)+((c[C>>2]|0)-1)>>0]|0)==0:0){s=17;break}c[D>>2]=c[(c[m>>2]|0)+92>>2];f=c[m>>2]|0;if((c[C>>2]|0)>(c[D>>2]|0)){Jc(f,18,30824,p);c[q>>2]=td(c[m>>2]|0,18)|0;b=c[n>>2]|0;$e(b);b=c[m>>2]|0;e=c[n>>2]|0;Wb(b,e);e=c[m>>2]|0;b=c[q>>2]|0;b=td(e,b)|0;c[q>>2]=b;b=c[q>>2]|0;i=l;return b|0}c[A>>2]=gm(f,c[z>>2]|0,c[C>>2]|0)|0;if((c[A>>2]|0)!=0){mf(c[n>>2]|0,c[A>>2]|0,o)|0;Wb(c[m>>2]|0,c[A>>2]|0);c[(c[n>>2]|0)+480>>2]=(c[z>>2]|0)+((c[(c[n>>2]|0)+480>>2]|0)-(c[A>>2]|0));break}else{c[(c[n>>2]|0)+480>>2]=(c[z>>2]|0)+(c[C>>2]|0);break}}else{s=17}}while(0);if((s|0)==17){mf(c[n>>2]|0,c[z>>2]|0,o)|0}if((a[(c[m>>2]|0)+64>>0]|0)!=0){c[(c[n>>2]|0)+12>>2]=7}if((c[(c[n>>2]|0)+12>>2]|0)==101){c[(c[n>>2]|0)+12>>2]=0}if((a[(c[n>>2]|0)+17>>0]|0)!=0){cy(c[n>>2]|0)}if((a[(c[m>>2]|0)+64>>0]|0)!=0){c[(c[n>>2]|0)+12>>2]=7}if((c[B>>2]|0)!=0){c[c[B>>2]>>2]=c[(c[n>>2]|0)+480>>2]}c[q>>2]=c[(c[n>>2]|0)+12>>2];a:do{if(((c[q>>2]|0)==0?(c[(c[n>>2]|0)+8>>2]|0)!=0:0)?(d[(c[n>>2]|0)+450>>0]|0)!=0:0){A=c[(c[n>>2]|0)+8>>2]|0;if((d[(c[n>>2]|0)+450>>0]|0)==2){ut(A,4);c[w>>2]=8;c[v>>2]=12}else{ut(A,8);c[w>>2]=0;c[v>>2]=8}c[u>>2]=c[w>>2];while(1){if((c[u>>2]|0)>=(c[v>>2]|0)){break a}vt(c[(c[n>>2]|0)+8>>2]|0,(c[u>>2]|0)-(c[w>>2]|0)|0,0,c[30848+(c[u>>2]<<2)>>2]|0,0)|0;c[u>>2]=(c[u>>2]|0)+1}}}while(0);if((d[(c[m>>2]|0)+137>>0]|0)==0){c[x>>2]=c[(c[n>>2]|0)+8>>2];dy(c[x>>2]|0,c[z>>2]|0,(c[(c[n>>2]|0)+480>>2]|0)-(c[z>>2]|0)|0,c[t>>2]|0)}do{if((c[(c[n>>2]|0)+8>>2]|0)!=0){if((c[q>>2]|0)==0?(d[(c[m>>2]|0)+64>>0]|0)==0:0){s=43;break}sd(c[(c[n>>2]|0)+8>>2]|0)|0}else{s=43}}while(0);if((s|0)==43){c[c[y>>2]>>2]=c[(c[n>>2]|0)+8>>2]}t=c[m>>2]|0;s=c[q>>2]|0;if((c[o>>2]|0)!=0){c[p>>2]=c[o>>2];Jc(t,s,1456,p);Wb(c[m>>2]|0,c[o>>2]|0)}else{Jc(t,s,0,p)}while(1){if((c[(c[n>>2]|0)+528>>2]|0)==0){break}c[r>>2]=c[(c[n>>2]|0)+528>>2];c[(c[n>>2]|0)+528>>2]=c[(c[r>>2]|0)+4>>2];Wb(c[m>>2]|0,c[r>>2]|0)}b=c[n>>2]|0;$e(b);b=c[m>>2]|0;e=c[n>>2]|0;Wb(b,e);e=c[m>>2]|0;b=c[q>>2]|0;b=td(e,b)|0;c[q>>2]=b;b=c[q>>2]|0;i=l;return b|0}function by(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;Mc(c[e>>2]|0);c[b>>2]=ey(c[e>>2]|0,1,1)|0;i=d;return c[b>>2]|0}function cy(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;l=d+24|0;g=d+20|0;h=d+16|0;k=d+12|0;f=d+8|0;j=d+4|0;e=d;c[l>>2]=b;c[g>>2]=c[c[l>>2]>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[g>>2]|0)+20>>2]|0)){b=14;break}c[j>>2]=0;c[e>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+4>>2];if((c[e>>2]|0)!=0){if((Qc(c[e>>2]|0)|0)==0){c[k>>2]=Oc(c[e>>2]|0,0)|0;if((c[k>>2]|0)==7|(c[k>>2]|0)==3082){a[(c[g>>2]|0)+64>>0]=1}if((c[k>>2]|0)!=0){b=14;break}c[j>>2]=1}Pc(c[e>>2]|0,1,f);if((c[f>>2]|0)!=(c[c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]>>2]|0)){Kr(c[g>>2]|0,c[h>>2]|0);c[(c[l>>2]|0)+12>>2]=17}if((c[j>>2]|0)!=0){Qr(c[e>>2]|0)|0}}c[h>>2]=(c[h>>2]|0)+1}if((b|0)==14){i=d;return}}function dy(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;h=g+12|0;j=g+8|0;k=g+4|0;l=g;c[h>>2]=a;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;if((c[h>>2]|0)==0){i=g;return}a=gm(c[c[h>>2]>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;c[(c[h>>2]|0)+168>>2]=a;a=(c[h>>2]|0)+88|0;b[a>>1]=b[a>>1]&-1025|(c[l>>2]&255&1)<<10&65535;i=g;return}function ey(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+32|0;l=o+16|0;n=o+12|0;j=o+8|0;p=o+20|0;q=o+4|0;m=o;c[n>>2]=f;c[j>>2]=g;a[p>>0]=h;c[q>>2]=c[(c[n>>2]|0)+4>>2];if((a[(c[n>>2]|0)+9>>0]|0)==0){c[l>>2]=0;f=c[l>>2]|0;i=o;return f|0}if((c[(c[q>>2]|0)+76>>2]|0)!=(c[n>>2]|0)?(b[(c[q>>2]|0)+22>>1]&32|0)!=0:0){c[l>>2]=262;f=c[l>>2]|0;i=o;return f|0}c[m>>2]=c[(c[q>>2]|0)+72>>2];while(1){if((c[m>>2]|0)==0){k=15;break}if(((c[c[m>>2]>>2]|0)!=(c[n>>2]|0)?(c[(c[m>>2]|0)+4>>2]|0)==(c[j>>2]|0):0)?(d[(c[m>>2]|0)+8>>0]|0)!=(d[p>>0]|0):0){break}c[m>>2]=c[(c[m>>2]|0)+12>>2]}if((k|0)==15){c[l>>2]=0;f=c[l>>2]|0;i=o;return f|0}if((d[p>>0]|0)==2){f=(c[q>>2]|0)+22|0;b[f>>1]=e[f>>1]|64}c[l>>2]=262;f=c[l>>2]|0;i=o;return f|0}function fy(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+224|0;g=f+220|0;h=f+216|0;l=f;k=f+212|0;j=f+208|0;c[g>>2]=a;c[h>>2]=d;dE(l|0,c[g>>2]|0,208)|0;dE(c[g>>2]|0,c[h>>2]|0,208)|0;dE(c[h>>2]|0,l|0,208)|0;c[k>>2]=c[(c[g>>2]|0)+52>>2];c[(c[g>>2]|0)+52>>2]=c[(c[h>>2]|0)+52>>2];c[(c[h>>2]|0)+52>>2]=c[k>>2];c[k>>2]=c[(c[g>>2]|0)+48>>2];c[(c[g>>2]|0)+48>>2]=c[(c[h>>2]|0)+48>>2];c[(c[h>>2]|0)+48>>2]=c[k>>2];c[j>>2]=c[(c[g>>2]|0)+168>>2];c[(c[g>>2]|0)+168>>2]=c[(c[h>>2]|0)+168>>2];c[(c[h>>2]|0)+168>>2]=c[j>>2];a=(c[h>>2]|0)+88|0;b[a>>1]=b[a>>1]&-1025|((e[(c[g>>2]|0)+88>>1]|0)>>>10&1&1)<<10&65535;i=f;return}function gy(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[(c[d>>2]|0)+80>>2]=0;i=b;return}function hy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;f=j+20|0;k=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;d=j;c[f>>2]=a;c[k>>2]=b;c[e>>2]=c[(c[k>>2]|0)+16>>2];while(1){if((c[e>>2]|0)==0){break}if(!((c[f>>2]|0)!=0?(c[(c[f>>2]|0)+512>>2]|0)!=0:0)){b=c[(c[e>>2]|0)+12>>2]|0;if((c[(c[e>>2]|0)+16>>2]|0)!=0){c[(c[(c[e>>2]|0)+16>>2]|0)+12>>2]=b}else{c[h>>2]=b;b=c[e>>2]|0;if((c[h>>2]|0)!=0){b=c[(c[b+12>>2]|0)+8>>2]|0}else{b=c[b+8>>2]|0}c[d>>2]=b;l=(c[(c[k>>2]|0)+68>>2]|0)+56|0;b=c[d>>2]|0;a=Mb(c[d>>2]|0)|0;$g(l,b,a,c[h>>2]|0)|0}if((c[(c[e>>2]|0)+12>>2]|0)!=0){c[(c[(c[e>>2]|0)+12>>2]|0)+16>>2]=c[(c[e>>2]|0)+16>>2]}}Iw(c[f>>2]|0,c[(c[e>>2]|0)+28>>2]|0);Iw(c[f>>2]|0,c[(c[e>>2]|0)+32>>2]|0);c[g>>2]=c[(c[e>>2]|0)+4>>2];Wb(c[f>>2]|0,c[e>>2]|0);c[e>>2]=c[g>>2]}i=j;return}function iy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;if(!((c[e>>2]|0)!=0?(c[(c[e>>2]|0)+512>>2]|0)!=0:0)){jy(0,c[f>>2]|0)|0}if((c[(c[f>>2]|0)+56>>2]|0)==0){i=d;return}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+52>>2]|0)){break}if((c[g>>2]|0)!=1){Wb(c[e>>2]|0,c[(c[(c[f>>2]|0)+56>>2]|0)+(c[g>>2]<<2)>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}Wb(c[e>>2]|0,c[(c[f>>2]|0)+56>>2]|0);i=d;return}function jy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;k=d+20|0;g=d+16|0;e=d+12|0;f=d+8|0;h=d+4|0;j=d;c[k>>2]=a;c[g>>2]=b;c[e>>2]=0;c[f>>2]=c[(c[g>>2]|0)+60>>2];c[(c[g>>2]|0)+60>>2]=0;while(1){if((c[f>>2]|0)==0){break}c[h>>2]=c[c[f>>2]>>2];c[j>>2]=c[(c[f>>2]|0)+24>>2];if((c[h>>2]|0)==(c[k>>2]|0)){c[e>>2]=c[f>>2];c[(c[g>>2]|0)+60>>2]=c[e>>2];c[(c[e>>2]|0)+24>>2]=0}else{c[(c[f>>2]|0)+24>>2]=c[(c[h>>2]|0)+324>>2];c[(c[h>>2]|0)+324>>2]=c[f>>2]}c[f>>2]=c[j>>2]}i=d;return c[e>>2]|0}function ky(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;m=f+16|0;k=f+12|0;j=f+8|0;l=f+4|0;h=f;c[m>>2]=a;c[k>>2]=b;c[j>>2]=e;c[l>>2]=c[(c[m>>2]|0)+8>>2];a:while(1){if((c[l>>2]|0)==0){j=11;break}do{if((c[l>>2]|0)!=(c[j>>2]|0)){if(0!=(c[k>>2]|0)?(c[(c[l>>2]|0)+68>>2]|0)!=(c[k>>2]|0):0){break}e=c[l>>2]|0;if((d[(c[l>>2]|0)+81>>0]|0|0)==1){c[h>>2]=ly(e)|0;if(0!=(c[h>>2]|0)){j=8;break a}else{break}}else{my(e);break}}}while(0);c[l>>2]=c[(c[l>>2]|0)+8>>2]}if((j|0)==8){c[g>>2]=c[h>>2];m=c[g>>2]|0;i=f;return m|0}else if((j|0)==11){c[g>>2]=0;m=c[g>>2]|0;i=f;return m|0}return 0}function ly(b){b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;f=g+4|0;h=g;c[e>>2]=b;c[f>>2]=ny(c[e>>2]|0,(c[e>>2]|0)+56|0)|0;do{if(0==(d[(c[(c[e>>2]|0)+128>>2]|0)+2>>0]|0|0)){c[h>>2]=fc(c[(c[e>>2]|0)+56>>2]|0)|0;if((c[h>>2]|0)==0){c[f>>2]=7;break}c[f>>2]=oy(c[e>>2]|0,0,c[(c[e>>2]|0)+56>>2]|0,c[h>>2]|0)|0;b=c[h>>2]|0;if((c[f>>2]|0)==0){c[(c[e>>2]|0)+64>>2]=b;break}else{gc(b);break}}}while(0);if((c[f>>2]|0)!=0){h=c[e>>2]|0;h=h+80|0;b=a[h>>0]|0;b=b&255;b=b&-5;b=b&255;a[h>>0]=b;h=c[f>>2]|0;i=g;return h|0}my(c[e>>2]|0);a[(c[e>>2]|0)+81>>0]=3;h=c[e>>2]|0;h=h+80|0;b=a[h>>0]|0;b=b&255;b=b&-5;b=b&255;a[h>>0]=b;h=c[f>>2]|0;i=g;return h|0}function my(a){a=a|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+4|0;f=e;c[d>>2]=a;c[f>>2]=0;while(1){if((c[f>>2]|0)>(b[(c[d>>2]|0)+84>>1]|0)){break}Hk(c[(c[d>>2]|0)+128+(c[f>>2]<<2)>>2]|0);c[(c[d>>2]|0)+128+(c[f>>2]<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)+1}b[(c[d>>2]|0)+84>>1]=-1;i=e;return}function ny(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;h=i;i=i+16|0;k=h+8|0;j=h+4|0;l=h;c[k>>2]=f;c[j>>2]=g;if((d[(c[k>>2]|0)+81>>0]|0)!=1){f=c[j>>2]|0;c[f>>2]=0;c[f+4>>2]=0;i=h;return 0}if((e[(c[k>>2]|0)+50>>1]|0)==0){c[l>>2]=b[(c[k>>2]|0)+84>>1]|0;sw(c[(c[k>>2]|0)+128+(c[l>>2]<<2)>>2]|0,e[(c[k>>2]|0)+86+(c[l>>2]<<1)>>1]|0,(c[k>>2]|0)+24|0);f=(c[k>>2]|0)+80|0;a[f>>0]=d[f>>0]|2}k=(c[k>>2]|0)+24|0;l=c[k+4>>2]|0;f=c[j>>2]|0;c[f>>2]=c[k>>2];c[f+4>>2]=l;i=h;return 0}function oy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f+8|0;h=f+4|0;g=f;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=rw(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0,0)|0;i=f;return a|0}function py(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;h=m+20|0;j=m+16|0;l=m+12|0;k=m+8|0;n=m+4|0;g=m;c[j>>2]=a;c[l>>2]=b;c[k>>2]=d;c[n>>2]=e;c[g>>2]=f;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];a=c[h>>2]|0;i=m;return a|0}c[l>>2]=(c[l>>2]|0)+7&-8;if(((c[c[k>>2]>>2]|0)+(c[l>>2]|0)|0)>>>0<=(c[n>>2]|0)>>>0){c[j>>2]=c[c[k>>2]>>2];a=c[k>>2]|0;c[a>>2]=(c[a>>2]|0)+(c[l>>2]|0)}else{a=c[g>>2]|0;c[a>>2]=(c[a>>2]|0)+(c[l>>2]|0)}c[h>>2]=c[j>>2];a=c[h>>2]|0;i=m;return a|0}function qy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;j=e+8|0;h=e+4|0;g=e;c[f>>2]=a;c[j>>2]=b;c[h>>2]=d;a:do{if((c[h>>2]|0)!=0){switch(c[j>>2]|0){case-11:{if((c[(c[f>>2]|0)+512>>2]|0)!=0){break a}gc(c[h>>2]|0);break a};case-15:case-1:case-13:case-12:{Wb(c[f>>2]|0,c[h>>2]|0);break a};case-10:{if((c[(c[f>>2]|0)+512>>2]|0)!=0){break a}Dk(c[h>>2]|0);break a};case-5:{ry(c[f>>2]|0,c[h>>2]|0);break a};case-6:{if((c[(c[f>>2]|0)+512>>2]|0)!=0){break a}Zg(c[h>>2]|0);break a};case-8:{d=c[h>>2]|0;if((c[(c[f>>2]|0)+512>>2]|0)==0){pf(d);break a}else{c[g>>2]=d;Wb(c[f>>2]|0,c[(c[g>>2]|0)+36>>2]|0);Wb(c[f>>2]|0,c[g>>2]|0);break a}};default:{break a}}}}while(0);i=e;return}function ry(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=d;if((c[g>>2]|0)==0){i=e;return}if((b[(c[g>>2]|0)+2>>1]&16|0)==0){i=e;return}Wb(c[f>>2]|0,c[g>>2]|0);i=e;return}function sy(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(c[d>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+1;i=b;return}function ty(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+16|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=d;yd(c[g>>2]|0);g=(c[g>>2]|0)+0|0;a=(c[e>>2]|0)+0|0;d=g+40|0;do{c[g>>2]=c[a>>2];g=g+4|0;a=a+4|0}while((g|0)<(d|0));b[(c[e>>2]|0)+28>>1]=1;c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+36>>2]=0;i=f;return}function uy(){return 31080}function vy(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+96|0;h=e+80|0;j=e+76|0;f=e+72|0;g=e;c[h>>2]=a;c[j>>2]=d;c[f>>2]=0;if((c[j>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}if((c[(c[j>>2]|0)+20>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}a=g+0|0;d=a+72|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(d|0));b[g+36>>1]=1;c[g+8>>2]=c[c[h>>2]>>2];c[g+48>>2]=c[h>>2];c[g>>2]=c[j>>2];rb[c[(c[j>>2]|0)+20>>2]&31](g);Wb(c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+36>>2]|0);a=(c[h>>2]|0)+0|0;h=g+8|0;d=a+40|0;do{c[a>>2]=c[h>>2];a=a+4|0;h=h+4|0}while((a|0)<(d|0));c[f>>2]=c[g+64>>2];a=c[f>>2]|0;i=e;return a|0}function wy(a){a=a|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+8|0;f=e+4|0;g=e;c[d>>2]=a;c[f>>2]=c[c[d>>2]>>2];while(1){if((c[f>>2]|0)==0){break}c[g>>2]=c[c[f>>2]>>2];Wb(c[(c[d>>2]|0)+4>>2]|0,c[f>>2]|0);c[f>>2]=c[g>>2]}c[c[d>>2]>>2]=0;b[(c[d>>2]|0)+24>>1]=0;c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+12>>2]=0;c[(c[d>>2]|0)+20>>2]=0;b[(c[d>>2]|0)+26>>1]=1;i=e;return}function xy(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;l=i;i=i+64|0;k=l;g=l+60|0;j=l+56|0;w=l+52|0;p=l+48|0;s=l+44|0;t=l+40|0;q=l+36|0;u=l+32|0;h=l+28|0;n=l+24|0;o=l+20|0;m=l+16|0;v=l+12|0;x=l+8|0;r=l+4|0;c[j>>2]=f;c[p>>2]=0;c[s>>2]=0;c[t>>2]=0;c[q>>2]=c[c[j>>2]>>2];c[h>>2]=0;c[n>>2]=(c[(c[j>>2]|0)+8>>2]|0)+40;Qt(c[n>>2]|0,8);c[(c[j>>2]|0)+20>>2]=0;if((c[(c[j>>2]|0)+80>>2]|0)==7){a[(c[q>>2]|0)+64>>0]=1;c[g>>2]=1;x=c[g>>2]|0;i=l;return x|0}c[w>>2]=c[(c[j>>2]|0)+32>>2];a:do{if((b[(c[j>>2]|0)+88>>1]&3|0)==1){c[t>>2]=(c[(c[j>>2]|0)+8>>2]|0)+360;if((b[(c[t>>2]|0)+28>>1]&16|0)!=0){c[p>>2]=((c[(c[t>>2]|0)+24>>2]|0)>>>0)/4|0;c[s>>2]=c[(c[t>>2]|0)+4>>2]}c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[p>>2]|0)){break a}c[w>>2]=(c[w>>2]|0)+(c[(c[(c[s>>2]|0)+(c[u>>2]<<2)>>2]|0)+4>>2]|0);c[u>>2]=(c[u>>2]|0)+1}}}while(0);do{y=(c[j>>2]|0)+76|0;f=c[y>>2]|0;c[y>>2]=f+1;c[u>>2]=f;if((c[u>>2]|0)>=(c[w>>2]|0)){break}if((b[(c[j>>2]|0)+88>>1]&3|0)!=2){break}}while((d[(c[(c[j>>2]|0)+4>>2]|0)+((c[u>>2]|0)*20|0)>>0]|0)!=157);do{if((c[u>>2]|0)>=(c[w>>2]|0)){c[(c[j>>2]|0)+80>>2]=0;c[h>>2]=101}else{if((c[(c[q>>2]|0)+232>>2]|0)!=0){c[(c[j>>2]|0)+80>>2]=9;c[h>>2]=1;x=(c[j>>2]|0)+44|0;y=c[q>>2]|0;c[k>>2]=ae(c[(c[j>>2]|0)+80>>2]|0)|0;an(x,y,1456,k);break}if((c[u>>2]|0)<(c[(c[j>>2]|0)+32>>2]|0)){c[m>>2]=(c[(c[j>>2]|0)+4>>2]|0)+((c[u>>2]|0)*20|0)}else{c[u>>2]=(c[u>>2]|0)-(c[(c[j>>2]|0)+32>>2]|0);c[v>>2]=0;while(1){if((c[u>>2]|0)<(c[(c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]|0)+4>>2]|0)){break}c[u>>2]=(c[u>>2]|0)-(c[(c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]|0)+4>>2]|0);c[v>>2]=(c[v>>2]|0)+1}c[m>>2]=(c[c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]>>2]|0)+((c[u>>2]|0)*20|0)}if((b[(c[j>>2]|0)+88>>1]&3|0)==1?(b[(c[n>>2]|0)+28>>1]=4,w=c[u>>2]|0,y=(c[n>>2]|0)+16|0,c[y>>2]=w,c[y+4>>2]=((w|0)<0)<<31>>31,c[n>>2]=(c[n>>2]|0)+40,b[(c[n>>2]|0)+28>>1]=2562,y=eC(d[c[m>>2]>>0]|0)|0,c[(c[n>>2]|0)+4>>2]=y,y=Mb(c[(c[n>>2]|0)+4>>2]|0)|0,c[(c[n>>2]|0)+24>>2]=y,a[(c[n>>2]|0)+30>>0]=1,c[n>>2]=(c[n>>2]|0)+40,(a[(c[m>>2]|0)+1>>0]|0)==-18):0){c[x>>2]=(c[p>>2]|0)+1<<2;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[p>>2]|0)){break}if((c[(c[s>>2]|0)+(c[r>>2]<<2)>>2]|0)==(c[(c[m>>2]|0)+16>>2]|0)){break}c[r>>2]=(c[r>>2]|0)+1}if((c[r>>2]|0)==(c[p>>2]|0)?0==(me(c[t>>2]|0,c[x>>2]|0,(c[p>>2]|0)!=0&1)|0):0){c[s>>2]=c[(c[t>>2]|0)+4>>2];x=c[(c[m>>2]|0)+16>>2]|0;y=c[p>>2]|0;c[p>>2]=y+1;c[(c[s>>2]|0)+(y<<2)>>2]=x;y=(c[t>>2]|0)+28|0;b[y>>1]=e[y>>1]|16;c[(c[t>>2]|0)+24>>2]=c[p>>2]<<2}}b[(c[n>>2]|0)+28>>1]=4;x=c[(c[m>>2]|0)+4>>2]|0;y=(c[n>>2]|0)+16|0;c[y>>2]=x;c[y+4>>2]=((x|0)<0)<<31>>31;c[n>>2]=(c[n>>2]|0)+40;b[(c[n>>2]|0)+28>>1]=4;y=c[(c[m>>2]|0)+8>>2]|0;x=(c[n>>2]|0)+16|0;c[x>>2]=y;c[x+4>>2]=((y|0)<0)<<31>>31;c[n>>2]=(c[n>>2]|0)+40;b[(c[n>>2]|0)+28>>1]=4;x=c[(c[m>>2]|0)+12>>2]|0;y=(c[n>>2]|0)+16|0;c[y>>2]=x;c[y+4>>2]=((x|0)<0)<<31>>31;c[n>>2]=(c[n>>2]|0)+40;if((me(c[n>>2]|0,32,0)|0)!=0){c[g>>2]=1;y=c[g>>2]|0;i=l;return y|0}b[(c[n>>2]|0)+28>>1]=514;c[o>>2]=fC(c[m>>2]|0,c[(c[n>>2]|0)+4>>2]|0,32)|0;p=c[n>>2]|0;if((c[o>>2]|0)!=(c[(c[n>>2]|0)+4>>2]|0)){Qd(p,c[o>>2]|0,-1,1,0)|0}else{y=Mb(c[p+4>>2]|0)|0;c[(c[n>>2]|0)+24>>2]=y;a[(c[n>>2]|0)+30>>0]=1}c[n>>2]=(c[n>>2]|0)+40;do{if((b[(c[j>>2]|0)+88>>1]&3|0)==1){if((me(c[n>>2]|0,4,0)|0)==0){b[(c[n>>2]|0)+28>>1]=514;c[(c[n>>2]|0)+24>>2]=2;y=c[(c[n>>2]|0)+4>>2]|0;c[k>>2]=d[(c[m>>2]|0)+3>>0]|0;qc(3,y,34344,k)|0;a[(c[n>>2]|0)+30>>0]=1;c[n>>2]=(c[n>>2]|0)+40;b[(c[n>>2]|0)+28>>1]=1;break}c[g>>2]=1;y=c[g>>2]|0;i=l;return y|0}}while(0);b[(c[j>>2]|0)+84>>1]=8-((b[(c[j>>2]|0)+88>>1]&3)-1<<2);c[(c[j>>2]|0)+20>>2]=(c[(c[j>>2]|0)+8>>2]|0)+40;c[(c[j>>2]|0)+80>>2]=0;c[h>>2]=100}}while(0);c[g>>2]=c[h>>2];y=c[g>>2]|0;i=l;return y|0}function yy(f){f=f|0;var g=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,qb=0,rb=0,tb=0,wb=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Nb=0,Ob=0,Pb=0,Qb=0,Sb=0,Tb=0,Ub=0,Vb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,sc=0,uc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Qc=0,Rc=0,Uc=0,Vc=0,Wc=0,Xc=0,Yc=0,Zc=0,bd=0,cd=0,dd=0,ed=0,fd=0,gd=0,hd=0,id=0,jd=0,kd=0,ld=0,md=0,nd=0,od=0,pd=0,qd=0,rd=0,sd=0,td=0,ud=0,vd=0,wd=0,xd=0,zd=0,Cd=0,Dd=0,Ed=0,Gd=0,Id=0,Jd=0,Kd=0,Ld=0,Md=0,Nd=0,Od=0,Pd=0,Rd=0,Td=0,Ud=0,Wd=0,Xd=0,Yd=0,Zd=0,_d=0,$d=0,be=0,ce=0,de=0,ee=0,fe=0,ge=0,ie=0,je=0,ke=0,oe=0,pe=0,qe=0,re=0,se=0,te=0,ue=0,ve=0,we=0,xe=0,ye=0,ze=0,Ae=0,Be=0,Ce=0,De=0,Ee=0,Fe=0,Ge=0,He=0,Ie=0,Je=0,Me=0,Ne=0,Pe=0,Qe=0,Re=0,Se=0,Te=0,Ue=0,Ve=0,We=0,Xe=0,Ye=0,Ze=0,_e=0,$e=0,cf=0,df=0,ff=0,gf=0,hf=0,jf=0,kf=0,lf=0,mf=0,nf=0,of=0,pf=0,qf=0,rf=0,sf=0,tf=0,uf=0,vf=0,wf=0,xf=0,yf=0,zf=0,Af=0,Bf=0,Cf=0,Df=0,Ef=0,Ff=0,Gf=0,Hf=0,If=0.0,Jf=0;m=i;i=i+1776|0;g=m+440|0;k=m+1560|0;n=m+1556|0;u=m+1552|0;p=m+1548|0;l=m+1544|0;q=m+1540|0;mc=m+1774|0;x=m+1773|0;X=m+1536|0;o=m+1532|0;A=m+1528|0;ed=m+1524|0;mf=m+1520|0;aa=m+1516|0;G=m+1512|0;w=m+1508|0;P=m+1504|0;r=m+432|0;v=m+1500|0;z=m+1496|0;j=m+1492|0;s=m+1488|0;kf=m+1484|0;H=m+1480|0;I=m+1574|0;y=m+1476|0;B=m+1472|0;C=m+1468|0;E=m+1464|0;F=m+1460|0;ma=m+1456|0;nf=m+1452|0;of=m+1448|0;ca=m+424|0;ia=m+1772|0;la=m+1572|0;ja=m+1570|0;ka=m+1568|0;ga=m+416|0;ha=m+408|0;fa=m+400|0;da=m+392|0;ra=m+1444|0;qa=m+1440|0;na=m+320|0;pa=m+1436|0;oa=m+1432|0;sa=m+312|0;va=m+304|0;ta=m+296|0;ua=m+1771|0;J=m+1428|0;M=m+1770|0;K=m+1566|0;L=m+1564|0;Y=m+1424|0;S=m+1420|0;V=m+1416|0;W=m+1412|0;R=m+1408|0;Q=m+1404|0;T=m+1400|0;U=m+1396|0;Z=m+1392|0;$=m+1388|0;ba=m+1384|0;sf=m+288|0;xa=m+1380|0;wa=m+1376|0;Ba=m+1372|0;za=m+1368|0;Aa=m+1364|0;Af=m+1360|0;uf=m+1356|0;ya=m+1352|0;tf=m+248|0;vf=m+1348|0;wf=m+1344|0;xf=m+1340|0;pf=m+1336|0;zf=m+1332|0;qf=m+1328|0;yf=m+1324|0;rf=m+1320|0;Ca=m+1316|0;Da=m+1769|0;La=m+1312|0;Ea=m+1308|0;Na=m+240|0;Ia=m+1304|0;Ma=m+232|0;Ra=m+1300|0;Oa=m+1296|0;Ga=m+1292|0;Ka=m+1288|0;Pa=m+1284|0;Ta=m+1280|0;Sa=m+1276|0;Fa=m+1272|0;Ha=m+1268|0;Ja=m+1264|0;Qa=m+1260|0;Va=m+224|0;Ua=m+1256|0;_a=m+1252|0;Ya=m+1248|0;Wa=m+1244|0;Xa=m+1240|0;Za=m+1236|0;bb=m+1232|0;ab=m+1228|0;$a=m+1224|0;cb=m+1220|0;db=m+1216|0;fb=m+1212|0;eb=m+1208|0;gb=m+1204|0;hb=m+1200|0;ib=m+1196|0;lb=m+1192|0;jb=m+1188|0;kb=m+1184|0;mb=m+1180|0;nb=m+1176|0;rb=m+1172|0;tb=m+1168|0;ob=m+1164|0;Bb=m+1160|0;Cb=m+1156|0;qb=m+1152|0;wb=m+1148|0;Db=m+1144|0;Fb=m+1140|0;Eb=m+1136|0;Gb=m+1132|0;Hb=m+1128|0;Kb=m+1124|0;Lb=m+1120|0;Jb=m+1116|0;Nb=m+1096|0;Ob=m+1092|0;Ib=m+216|0;Pb=m+1088|0;Tb=m+1084|0;Yb=m+1080|0;Sb=m+1076|0;Qb=m+1072|0;Ub=m+1068|0;Vb=m+1064|0;Xb=m+1044|0;Zb=m+1578|0;$b=m+1040|0;ac=m+1036|0;_b=m+1032|0;bc=m+208|0;cc=m+200|0;ec=m+1028|0;hc=m+1024|0;gc=m+1020|0;dc=m+1016|0;fc=m+1012|0;nc=m+1008|0;qc=m+1004|0;t=m+192|0;ic=m+1e3|0;oc=m+996|0;pc=m+992|0;jc=m+988|0;kc=m+984|0;lc=m+980|0;sc=m+184|0;uc=m+976|0;wc=m+972|0;yc=m+968|0;xc=m+964|0;zc=m+960|0;Cc=m+956|0;Bc=m+952|0;Ac=m+948|0;Dc=m+176|0;Hc=m+944|0;Ec=m+168|0;Fc=m+940|0;Gc=m+936|0;Lc=m+932|0;Ic=m+928|0;Jc=m+924|0;Kc=m+920|0;Cf=m+916|0;Df=m+912|0;Bf=m+908|0;Uc=m+904|0;Vc=m+900|0;Mc=m+896|0;Nc=m+892|0;Rc=m+888|0;Qc=m+884|0;Wc=m+880|0;Xc=m+876|0;Zc=m+872|0;Yc=m+852|0;cd=m+848|0;dd=m+844|0;bd=m+160|0;gd=m+840|0;lf=m+836|0;fd=m+816|0;id=m+812|0;jd=m+808|0;kd=m+804|0;hd=m+800|0;ld=m+796|0;pd=m+792|0;nd=m+788|0;od=m+784|0;md=m+780|0;sd=m+776|0;td=m+772|0;qd=m+768|0;rd=m+752|0;wd=m+744|0;vd=m+740|0;Cd=m+736|0;zd=m+732|0;ud=m+728|0;xd=m+724|0;Dd=m+152|0;Ed=m+720|0;Gd=m+716|0;Kd=m+712|0;Od=m+708|0;Id=m+704|0;Nd=m+700|0;Md=m+696|0;Jd=m+692|0;Ld=m+688|0;Pd=m+684|0;Rd=m+680|0;Td=m+676|0;Ud=m+672|0;Yd=m+668|0;Xd=m+664|0;_d=m+660|0;$d=m+656|0;Wd=m+80|0;Zd=m+652|0;be=m+648|0;ie=m+644|0;je=m+632|0;ke=m+628|0;ee=m+624|0;ce=m+620|0;de=m+616|0;fe=m+612|0;ge=m+608|0;oe=m+604|0;re=m+1577|0;qe=m+600|0;pe=m+596|0;se=m+592|0;ze=m+588|0;ye=m+584|0;Be=m+580|0;Ae=m+576|0;He=m+572|0;Ge=m+568|0;Ee=m+564|0;Pe=m+560|0;Ne=m+556|0;Fe=m+552|0;Je=m+548|0;Ce=m+544|0;De=m+540|0;Me=m+536|0;Ie=m+532|0;xe=m+528|0;ve=m+524|0;te=m+520|0;ue=m+8|0;we=m+516|0;Ve=m+512|0;Te=m+508|0;Se=m+504|0;Ue=m+500|0;Qe=m+496|0;Re=m+492|0;Ye=m+488|0;Xe=m+484|0;Ze=m+480|0;cf=m+476|0;We=m;_e=m+472|0;df=m+468|0;$e=m+1576|0;jf=m+464|0;hf=m+460|0;ff=m+456|0;gf=m+452|0;c[k>>2]=f;c[n>>2]=0;c[u>>2]=c[(c[k>>2]|0)+4>>2];c[l>>2]=0;c[q>>2]=c[c[k>>2]>>2];a[mc>>0]=0;a[x>>0]=a[(c[(c[(c[q>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;c[X>>2]=0;c[o>>2]=0;c[A>>2]=0;c[ed>>2]=c[(c[k>>2]|0)+8>>2];c[mf>>2]=0;c[aa>>2]=0;c[G>>2]=0;c[w>>2]=0;c[P>>2]=0;f=(c[q>>2]|0)+32|0;Ff=c[f+4>>2]|0;Gf=r;c[Gf>>2]=c[f>>2];c[Gf+4>>2]=Ff;a:do{if((c[(c[k>>2]|0)+80>>2]|0)==7){Ef=900}else{c[(c[k>>2]|0)+80>>2]=0;Gf=(c[k>>2]|0)+136|0;c[Gf>>2]=0;c[Gf+4>>2]=0;c[(c[k>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+444>>2]=0;b:do{if((c[(c[q>>2]|0)+232>>2]|0)==0){do{if((c[(c[q>>2]|0)+284>>2]|0)!=0){c[A>>2]=c[(c[k>>2]|0)+124>>2];f=c[(c[q>>2]|0)+292>>2]|0;if((c[A>>2]|0)==0){c[A>>2]=f;break}else{c[A>>2]=((c[A>>2]|0)>>>0)%(f>>>0)|0;break}}}while(0);c[n>>2]=c[(c[k>>2]|0)+76>>2];c:while(1){if((c[l>>2]|0)!=0){break a}if((a[(c[q>>2]|0)+64>>0]|0)!=0){Ef=900;break a}c[o>>2]=(c[o>>2]|0)+1;c[p>>2]=(c[u>>2]|0)+((c[n>>2]|0)*20|0);if((a[(c[p>>2]|0)+2>>0]&2|0)!=0){c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);if((b[(c[w>>2]|0)+28>>1]&9312|0)!=0){le(c[w>>2]|0)}b[(c[w>>2]|0)+28>>1]=4}d:do{switch(d[c[p>>2]>>0]|0){case 21:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);c[v>>2]=(c[u>>2]|0)+((c[(c[mf>>2]|0)+16>>2]|0)*20|0);c[n>>2]=(c[(c[v>>2]|0)+8>>2]|0)-1;b[(c[mf>>2]|0)+28>>1]=128;break};case 24:{Ef=28;break};case 97:{a[c[p>>2]>>0]=27;Gf=Mb(c[(c[p>>2]|0)+16>>2]|0)|0;c[(c[p>>2]|0)+4>>2]=Gf;if((d[x>>0]|0)!=1){c[l>>2]=Qd(c[w>>2]|0,c[(c[p>>2]|0)+16>>2]|0,-1,1,0)|0;if((c[l>>2]|0)==18){Ef=899;break c}if(0!=(tk(c[w>>2]|0,d[x>>0]|0)|0)){Ef=900;break a}c[(c[w>>2]|0)+36>>2]=0;Gf=(c[w>>2]|0)+28|0;b[Gf>>1]=e[Gf>>1]|2048;if((a[(c[p>>2]|0)+1>>0]|0)==-1){Wb(c[q>>2]|0,c[(c[p>>2]|0)+16>>2]|0)}a[(c[p>>2]|0)+1>>0]=-1;c[(c[p>>2]|0)+16>>2]=c[(c[w>>2]|0)+4>>2];c[(c[p>>2]|0)+4>>2]=c[(c[w>>2]|0)+24>>2]}if((c[(c[p>>2]|0)+4>>2]|0)>(c[(c[q>>2]|0)+88>>2]|0)){Ef=899;break c}else{Ef=57}break};case 25:{Ff=c[(c[p>>2]|0)+4>>2]|0;Gf=(c[w>>2]|0)+16|0;c[Gf>>2]=Ff;c[Gf+4>>2]=((Ff|0)<0)<<31>>31;break};case 133:{b[(c[w>>2]|0)+28>>1]=8;h[(c[w>>2]|0)+8>>3]=+h[c[(c[p>>2]|0)+16>>2]>>3];break};case 20:{c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);Ff=(c[(c[p>>2]|0)+12>>2]|0)-1|0;Gf=(c[w>>2]|0)+16|0;c[Gf>>2]=Ff;c[Gf+4>>2]=((Ff|0)<0)<<31>>31;b[(c[w>>2]|0)+28>>1]=4;if((c[(c[p>>2]|0)+8>>2]|0)!=0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}break};case 30:{Qd(c[w>>2]|0,c[(c[p>>2]|0)+16>>2]|0,c[(c[p>>2]|0)+4>>2]|0,0,0)|0;a[(c[w>>2]|0)+30>>0]=a[x>>0]|0;break};case 31:{c[y>>2]=(c[(c[k>>2]|0)+60>>2]|0)+(((c[(c[p>>2]|0)+4>>2]|0)-1|0)*40|0);if((Gy(c[y>>2]|0)|0)!=0){Ef=899;break c}Wm(c[w>>2]|0,c[y>>2]|0,2048);break};case 27:{Ef=57;break};case 22:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);b[(c[mf>>2]|0)+28>>1]=4;c[z>>2]=c[(c[mf>>2]|0)+16>>2];Ff=c[n>>2]|0;Gf=(c[mf>>2]|0)+16|0;c[Gf>>2]=Ff;c[Gf+4>>2]=((Ff|0)<0)<<31>>31;c[n>>2]=c[z>>2];break};case 29:{c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);b[(c[w>>2]|0)+28>>1]=(e[(c[w>>2]|0)+28>>1]|1)&-129;break};case 16:{c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1;Ef=16;break};case 18:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);c[n>>2]=c[(c[mf>>2]|0)+16>>2];b[(c[mf>>2]|0)+28>>1]=128;break};case 34:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);Wm(c[w>>2]|0,c[mf>>2]|0,4096);break};case 35:{if(((c[(c[q>>2]|0)+284>>2]|0)!=0?(c[o>>2]|0)>>>0>=(c[A>>2]|0)>>>0:0)?(ub[c[(c[q>>2]|0)+284>>2]&31](c[(c[q>>2]|0)+288>>2]|0)|0)!=0:0){Ef=80;break c}Gf=Hy(c[k>>2]|0,0)|0;c[l>>2]=Gf;if(0==(Gf|0)?(c[l>>2]=Iy(c[k>>2]|0,1)|0,(c[l>>2]|0)==0):0){Ef=83;break c}break};case 32:{c[C>>2]=c[(c[p>>2]|0)+12>>2];c[E>>2]=c[(c[p>>2]|0)+4>>2];c[F>>2]=c[(c[p>>2]|0)+8>>2];c[mf>>2]=(c[ed>>2]|0)+((c[E>>2]|0)*40|0);c[w>>2]=(c[ed>>2]|0)+((c[F>>2]|0)*40|0);do{if((b[(c[w>>2]|0)+28>>1]&9312|0)!=0){le(c[w>>2]|0)}c[B>>2]=c[(c[w>>2]|0)+36>>2];Gf=(c[w>>2]|0)+0|0;Ff=(c[mf>>2]|0)+0|0;f=Gf+40|0;do{c[Gf>>2]=c[Ff>>2];Gf=Gf+4|0;Ff=Ff+4|0}while((Gf|0)<(f|0));b[(c[mf>>2]|0)+28>>1]=128;c[(c[mf>>2]|0)+32>>2]=0;c[(c[mf>>2]|0)+36>>2]=c[B>>2];c[mf>>2]=(c[mf>>2]|0)+40;c[w>>2]=(c[w>>2]|0)+40;Gf=(c[C>>2]|0)+ -1|0;c[C>>2]=Gf}while((Gf|0)!=0);break};case 26:{f=c[(c[p>>2]|0)+16>>2]|0;Ff=c[f+4>>2]|0;Gf=(c[w>>2]|0)+16|0;c[Gf>>2]=c[f>>2];c[Gf+4>>2]=Ff;break};case 23:{c[G>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);if((b[(c[G>>2]|0)+28>>1]&1|0)!=0){Ef=28}break};case 17:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);b[(c[mf>>2]|0)+28>>1]=4;Ff=c[n>>2]|0;Gf=(c[mf>>2]|0)+16|0;c[Gf>>2]=Ff;c[Gf+4>>2]=((Ff|0)<0)<<31>>31;c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1;break};case 28:{c[H>>2]=(c[(c[p>>2]|0)+12>>2]|0)-(c[(c[p>>2]|0)+8>>2]|0);Gf=((c[(c[p>>2]|0)+4>>2]|0)!=0?257:1)&65535;b[I>>1]=Gf;b[(c[w>>2]|0)+28>>1]=Gf;while(1){if((c[H>>2]|0)<=0){break d}c[w>>2]=(c[w>>2]|0)+40;if((b[(c[w>>2]|0)+28>>1]&9312|0)!=0){le(c[w>>2]|0)}b[(c[w>>2]|0)+28>>1]=b[I>>1]|0;c[H>>2]=(c[H>>2]|0)+ -1}};case 38:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);if((b[(c[mf>>2]|0)+28>>1]&4|0)==0?(up(c[mf>>2]|0,99,a[x>>0]|0),(b[(c[mf>>2]|0)+28>>1]&4|0)==0):0){if((c[(c[p>>2]|0)+8>>2]|0)==0){Ef=177;break c}c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1;break d}b[(c[mf>>2]|0)+28>>1]=e[(c[mf>>2]|0)+28>>1]&-16896|4;break};case 143:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);if((b[(c[mf>>2]|0)+28>>1]&1|0)==0){Gf=(c[mf>>2]|0)+28|0;b[Gf>>1]=e[Gf>>1]|(b[(c[mf>>2]|0)+28>>1]&16)>>3;up(c[mf>>2]|0,97,a[x>>0]|0);if((b[(c[mf>>2]|0)+28>>1]&16384|0)!=0){f=Ad(c[mf>>2]|0)|0}else{f=0}c[l>>2]=f;Gf=(c[mf>>2]|0)+28|0;b[Gf>>1]=e[Gf>>1]&-16413}break};case 39:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);if((b[(c[mf>>2]|0)+28>>1]&4|0)!=0){Py(c[mf>>2]|0)|0}break};case 144:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);if((b[(c[mf>>2]|0)+28>>1]&1|0)==0){f=c[mf>>2]|0;if((b[(c[mf>>2]|0)+28>>1]&16|0)==0){up(f,97,a[x>>0]|0);b[(c[mf>>2]|0)+28>>1]=e[(c[mf>>2]|0)+28>>1]&-16896|16;break d}else{Gf=f+28|0;b[Gf>>1]=e[Gf>>1]&-496;break d}}break};case 145:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);qp(c[mf>>2]|0)|0;break};case 146:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);if((b[(c[mf>>2]|0)+28>>1]&1|0)==0){Oy(c[mf>>2]|0)|0}break};case 83:case 80:case 81:case 82:case 78:case 79:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);c[G>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);b[K>>1]=b[(c[mf>>2]|0)+28>>1]|0;b[L>>1]=b[(c[G>>2]|0)+28>>1]|0;f=d[(c[p>>2]|0)+3>>0]|0;do{if(((e[K>>1]|e[L>>1])&1|0)!=0){if((f&128|0)==0){f=c[p>>2]|0;if((a[(c[p>>2]|0)+3>>0]&16|0)!=0){c[w>>2]=(c[ed>>2]|0)+((c[f+8>>2]|0)*40|0);b[(c[w>>2]|0)+28>>1]=e[(c[w>>2]|0)+28>>1]&-16896|1;break d}if((a[f+3>>0]&8|0)==0){break d}c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1;break d}if(((b[K>>1]&1|0)!=0?(b[L>>1]&1|0)!=0:0)?(b[L>>1]&256|0)==0:0){c[J>>2]=0;break}c[J>>2]=1}else{a[M>>0]=f&103;if((a[M>>0]|0)!=0?(up(c[mf>>2]|0,a[M>>0]|0,a[x>>0]|0),up(c[G>>2]|0,a[M>>0]|0,a[x>>0]|0),(a[(c[q>>2]|0)+64>>0]|0)!=0):0){Ef=900;break a}if((b[(c[mf>>2]|0)+28>>1]&16384|0)!=0){Ad(c[mf>>2]|0)|0}if((b[(c[G>>2]|0)+28>>1]&16384|0)!=0){Ad(c[G>>2]|0)|0}c[J>>2]=Um(c[G>>2]|0,c[mf>>2]|0,c[(c[p>>2]|0)+16>>2]|0)|0}}while(0);switch(d[c[p>>2]>>0]|0){case 79:{c[J>>2]=(c[J>>2]|0)==0&1;break};case 78:{c[J>>2]=(c[J>>2]|0)!=0&1;break};case 82:{c[J>>2]=(c[J>>2]|0)<0&1;break};case 81:{c[J>>2]=(c[J>>2]|0)<=0&1;break};case 80:{c[J>>2]=(c[J>>2]|0)>0&1;break};default:{c[J>>2]=(c[J>>2]|0)>=0&1}}if((a[(c[p>>2]|0)+3>>0]&16|0)==0){if((c[J>>2]|0)!=0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}}else{c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);b[(c[w>>2]|0)+28>>1]=e[(c[w>>2]|0)+28>>1]&-16896|4;Ff=c[J>>2]|0;Gf=(c[w>>2]|0)+16|0;c[Gf>>2]=Ff;c[Gf+4>>2]=((Ff|0)<0)<<31>>31}b[(c[mf>>2]|0)+28>>1]=e[(c[mf>>2]|0)+28>>1]&-512|b[K>>1]&511;b[(c[G>>2]|0)+28>>1]=e[(c[G>>2]|0)+28>>1]&-512|b[L>>1]&511;break};case 147:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);if((b[(c[mf>>2]|0)+28>>1]&1|0)==0){Py(c[mf>>2]|0)|0}break};case 40:{c[P>>2]=c[(c[p>>2]|0)+16>>2];break};case 41:{if((a[(c[p>>2]|0)+3>>0]&1|0)==0){c[P>>2]=0}c[Y>>2]=c[(c[p>>2]|0)+12>>2];c[R>>2]=c[(c[p>>2]|0)+16>>2];c[V>>2]=c[(c[p>>2]|0)+4>>2];c[W>>2]=c[(c[p>>2]|0)+8>>2];c[S>>2]=0;while(1){if((c[S>>2]|0)>=(c[Y>>2]|0)){break}f=c[S>>2]|0;if((c[P>>2]|0)!=0){f=c[(c[P>>2]|0)+(f<<2)>>2]|0}c[Q>>2]=f;c[T>>2]=c[(c[R>>2]|0)+20+(c[S>>2]<<2)>>2];c[U>>2]=d[(c[(c[R>>2]|0)+16>>2]|0)+(c[S>>2]|0)>>0]|0;c[X>>2]=Um((c[ed>>2]|0)+(((c[V>>2]|0)+(c[Q>>2]|0)|0)*40|0)|0,(c[ed>>2]|0)+(((c[W>>2]|0)+(c[Q>>2]|0)|0)*40|0)|0,c[T>>2]|0)|0;if((c[X>>2]|0)!=0){Ef=233;break}c[S>>2]=(c[S>>2]|0)+1}if((Ef|0)==233?(Ef=0,(c[U>>2]|0)!=0):0){c[X>>2]=0-(c[X>>2]|0)}c[P>>2]=0;break};case 42:{if((c[X>>2]|0)<0){c[n>>2]=(c[(c[p>>2]|0)+4>>2]|0)-1;break d}f=c[p>>2]|0;if((c[X>>2]|0)==0){c[n>>2]=(c[f+8>>2]|0)-1;break d}else{c[n>>2]=(c[f+12>>2]|0)-1;break d}};case 71:case 72:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);if((b[(c[mf>>2]|0)+28>>1]&1|0)!=0){c[Z>>2]=2}else{Gf=Hd(c[mf>>2]|0)|0;c[Z>>2]=((Gf|0)!=0|(D|0)!=0)&1}c[aa>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);if((b[(c[aa>>2]|0)+28>>1]&1|0)!=0){c[$>>2]=2}else{Gf=Hd(c[aa>>2]|0)|0;c[$>>2]=((Gf|0)!=0|(D|0)!=0)&1}f=((c[Z>>2]|0)*3|0)+(c[$>>2]|0)|0;if((d[c[p>>2]>>0]|0)==72){c[Z>>2]=d[31264+f>>0]|0}else{c[Z>>2]=d[31280+f>>0]|0}c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);if((c[Z>>2]|0)==2){b[(c[w>>2]|0)+28>>1]=e[(c[w>>2]|0)+28>>1]&-16896|1;break d}else{Ff=c[Z>>2]|0;Gf=(c[w>>2]|0)+16|0;c[Gf>>2]=Ff;c[Gf+4>>2]=((Ff|0)<0)<<31>>31;b[(c[w>>2]|0)+28>>1]=e[(c[w>>2]|0)+28>>1]&-16896|4;break d}};case 96:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);f=c[w>>2]|0;if((b[(c[mf>>2]|0)+28>>1]&1|0)!=0){Vd(f);break d}else{Gf=Hd(c[mf>>2]|0)|0;Sd(f,~Gf,~D);break d}};case 19:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);f=c[w>>2]|0;if((b[(c[mf>>2]|0)+28>>1]&1|0)!=0){Vd(f);break d}else{Gf=Hd(c[mf>>2]|0)|0;Gf=(((Gf|0)!=0|(D|0)!=0)^1)&1;Sd(f,Gf,((Gf|0)<0)<<31>>31);break d}};case 43:{f=c[p>>2]|0;if((a[(c[(c[k>>2]|0)+200>>2]|0)+(c[(c[p>>2]|0)+4>>2]|0)>>0]|0)!=0){c[n>>2]=(c[f+8>>2]|0)-1;break d}else{a[(c[(c[k>>2]|0)+200>>2]|0)+(c[f+4>>2]|0)>>0]=1;break d}};case 45:case 44:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);if((b[(c[mf>>2]|0)+28>>1]&1|0)==0){c[ba>>2]=+Fd(c[mf>>2]|0)!=0.0&1;if((d[c[p>>2]>>0]|0)==45){c[ba>>2]=((c[ba>>2]|0)!=0^1)&1}}else{c[ba>>2]=c[(c[p>>2]|0)+12>>2]}if((c[ba>>2]|0)!=0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}break};case 76:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);if((b[(c[mf>>2]|0)+28>>1]&1|0)!=0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}break};case 77:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);if((b[(c[mf>>2]|0)+28>>1]&1|0)==0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}break};case 94:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);c[aa>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);if(((e[(c[mf>>2]|0)+28>>1]|e[(c[aa>>2]|0)+28>>1])&1|0)!=0){Vd(c[w>>2]|0);break d}if((b[(c[mf>>2]|0)+28>>1]&16384|0)!=0?(Ad(c[mf>>2]|0)|0)!=0:0){Ef=900;break a}if((b[(c[aa>>2]|0)+28>>1]&16384|0)!=0?(Ad(c[aa>>2]|0)|0)!=0:0){Ef=900;break a}if((b[(c[mf>>2]|0)+28>>1]&18|0)==0?(vp(c[mf>>2]|0,d[x>>0]|0)|0)!=0:0){Ef=900;break a}if((b[(c[aa>>2]|0)+28>>1]&18|0)==0?(vp(c[aa>>2]|0,d[x>>0]|0)|0)!=0:0){Ef=900;break a}Hf=(c[(c[mf>>2]|0)+24>>2]|0)+(c[(c[aa>>2]|0)+24>>2]|0)|0;Ff=ca;c[Ff>>2]=Hf;c[Ff+4>>2]=((Hf|0)<0)<<31>>31;Ff=ca;Hf=c[Ff+4>>2]|0;Gf=c[(c[q>>2]|0)+88>>2]|0;f=((Gf|0)<0)<<31>>31;if((Hf|0)>(f|0)|((Hf|0)==(f|0)?(c[Ff>>2]|0)>>>0>Gf>>>0:0)){Ef=899;break c}if((me(c[w>>2]|0,(c[ca>>2]|0)+2|0,(c[w>>2]|0)==(c[aa>>2]|0)&1)|0)!=0){Ef=900;break a}b[(c[w>>2]|0)+28>>1]=e[(c[w>>2]|0)+28>>1]&-16896|2;if((c[w>>2]|0)!=(c[aa>>2]|0)){dE(c[(c[w>>2]|0)+4>>2]|0,c[(c[aa>>2]|0)+4>>2]|0,c[(c[aa>>2]|0)+24>>2]|0)|0}dE((c[(c[w>>2]|0)+4>>2]|0)+(c[(c[aa>>2]|0)+24>>2]|0)|0,c[(c[mf>>2]|0)+4>>2]|0,c[(c[mf>>2]|0)+24>>2]|0)|0;a[(c[(c[w>>2]|0)+4>>2]|0)+(c[ca>>2]|0)>>0]=0;Hf=ca;Hf=bE(c[Hf>>2]|0,c[Hf+4>>2]|0,1,0)|0;a[(c[(c[w>>2]|0)+4>>2]|0)+Hf>>0]=0;Hf=(c[w>>2]|0)+28|0;b[Hf>>1]=e[Hf>>1]|512;c[(c[w>>2]|0)+24>>2]=c[ca>>2];a[(c[w>>2]|0)+30>>0]=a[x>>0]|0;break};case 93:case 92:case 91:case 90:case 89:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);b[ja>>1]=Ky(c[mf>>2]|0)|0;c[aa>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);b[ka>>1]=Ky(c[aa>>2]|0)|0;c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);b[la>>1]=e[(c[mf>>2]|0)+28>>1]|e[(c[aa>>2]|0)+28>>1];e:do{if((b[la>>1]&1|0)==0){do{if((e[ja>>1]&e[ka>>1]&4|0)!=0){f=(c[mf>>2]|0)+16|0;Hf=c[f+4>>2]|0;Gf=ga;c[Gf>>2]=c[f>>2];c[Gf+4>>2]=Hf;Gf=(c[aa>>2]|0)+16|0;Hf=c[Gf+4>>2]|0;f=ha;c[f>>2]=c[Gf>>2];c[f+4>>2]=Hf;a[ia>>0]=1;f=d[c[p>>2]>>0]|0;if((f|0)==89){Hf=ga;if((Rm(ha,c[Hf>>2]|0,c[Hf+4>>2]|0)|0)!=0){break}}else if((f|0)==90){Hf=ga;if((Ly(ha,c[Hf>>2]|0,c[Hf+4>>2]|0)|0)!=0){break}}else if((f|0)==91){Hf=ga;if((My(ha,c[Hf>>2]|0,c[Hf+4>>2]|0)|0)!=0){break}}else if((f|0)==92){Hf=ga;if((c[Hf>>2]|0)==0&(c[Hf+4>>2]|0)==0){break e}Hf=ga;if(((c[Hf>>2]|0)==-1?(c[Hf+4>>2]|0)==-1:0)?(Hf=ha,(c[Hf>>2]|0)==0?(c[Hf+4>>2]|0)==-2147483648:0):0){break}Gf=ga;Hf=ha;Gf=jE(c[Hf>>2]|0,c[Hf+4>>2]|0,c[Gf>>2]|0,c[Gf+4>>2]|0)|0;Hf=ha;c[Hf>>2]=Gf;c[Hf+4>>2]=D}else{Hf=ga;if((c[Hf>>2]|0)==0&(c[Hf+4>>2]|0)==0){break e}Hf=ga;if((c[Hf>>2]|0)==-1?(c[Hf+4>>2]|0)==-1:0){Hf=ga;c[Hf>>2]=1;c[Hf+4>>2]=0}Gf=ga;Hf=ha;Gf=kE(c[Hf>>2]|0,c[Hf+4>>2]|0,c[Gf>>2]|0,c[Gf+4>>2]|0)|0;Hf=ha;c[Hf>>2]=Gf;c[Hf+4>>2]=D}Ff=ha;Gf=c[Ff+4>>2]|0;Hf=(c[w>>2]|0)+16|0;c[Hf>>2]=c[Ff>>2];c[Hf+4>>2]=Gf;b[(c[w>>2]|0)+28>>1]=e[(c[w>>2]|0)+28>>1]&-16896|4;break d}else{a[ia>>0]=0}}while(0);h[fa>>3]=+Fd(c[mf>>2]|0);h[da>>3]=+Fd(c[aa>>2]|0);f=d[c[p>>2]>>0]|0;if((f|0)==89){h[da>>3]=+h[da>>3]+ +h[fa>>3]}else if((f|0)==90){h[da>>3]=+h[da>>3]- +h[fa>>3]}else if((f|0)==91){h[da>>3]=+h[da>>3]*+h[fa>>3]}else if((f|0)==92){if(+h[fa>>3]==0.0){break}h[da>>3]=+h[da>>3]/+h[fa>>3]}else{If=+h[fa>>3];Hf=+O(If)>=1.0?If>0.0?(ea(+N(If/4294967296.0),4294967295.0)|0)>>>0:~~+_((If- +(~~If>>>0))/4294967296.0)>>>0:0;Gf=ga;c[Gf>>2]=~~If>>>0;c[Gf+4>>2]=Hf;If=+h[da>>3];Gf=+O(If)>=1.0?If>0.0?(ea(+N(If/4294967296.0),4294967295.0)|0)>>>0:~~+_((If- +(~~If>>>0))/4294967296.0)>>>0:0;Hf=ha;c[Hf>>2]=~~If>>>0;c[Hf+4>>2]=Gf;Hf=ga;if((c[Hf>>2]|0)==0&(c[Hf+4>>2]|0)==0){break}Hf=ga;if((c[Hf>>2]|0)==-1?(c[Hf+4>>2]|0)==-1:0){Hf=ga;c[Hf>>2]=1;c[Hf+4>>2]=0}Gf=ha;Hf=ga;Hf=kE(c[Gf>>2]|0,c[Gf+4>>2]|0,c[Hf>>2]|0,c[Hf+4>>2]|0)|0;h[da>>3]=+(Hf>>>0)+4294967296.0*+(D|0)}if((Fw(+h[da>>3])|0)==0){h[(c[w>>2]|0)+8>>3]=+h[da>>3];b[(c[w>>2]|0)+28>>1]=e[(c[w>>2]|0)+28>>1]&-16896|8;if(((e[ja>>1]|e[ka>>1])&8|0)!=0){break d}if((a[ia>>0]|0)!=0){break d}sp(c[w>>2]|0);break d}}}while(0);Vd(c[w>>2]|0);break};case 33:{c[ma>>2]=c[(c[p>>2]|0)+12>>2];c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);while(1){Wm(c[w>>2]|0,c[mf>>2]|0,4096);if((b[(c[w>>2]|0)+28>>1]&4096|0)!=0?(vk(c[w>>2]|0)|0)!=0:0){Ef=900;break a}Hf=c[ma>>2]|0;c[ma>>2]=Hf+ -1;if((Hf|0)==0){break d}c[w>>2]=(c[w>>2]|0)+40;c[mf>>2]=(c[mf>>2]|0)+40}};case 36:{if((c[(c[p>>2]|0)+4>>2]|0)!=0){Sd((c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0)|0,0,0)}break};case 1:{c[oa>>2]=d[(c[p>>2]|0)+3>>0]|0;c[pa>>2]=c[(c[k>>2]|0)+12>>2];c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);c[qa>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);c[ra>>2]=0;while(1){if((c[ra>>2]|0)>=(c[oa>>2]|0)){break}c[(c[pa>>2]|0)+(c[ra>>2]<<2)>>2]=c[qa>>2];if((b[(c[qa>>2]|0)+28>>1]&4096|0)!=0?(vk(c[qa>>2]|0)|0)!=0:0){Ef=900;break a}c[ra>>2]=(c[ra>>2]|0)+1;c[qa>>2]=(c[qa>>2]|0)+40}c[na>>2]=c[(c[p>>2]|0)+16>>2];c[na+60>>2]=c[n>>2];c[na+56>>2]=c[k>>2];Gf=na+8|0;Ff=(c[w>>2]|0)+0|0;f=Gf+40|0;do{c[Gf>>2]=c[Ff>>2];Gf=Gf+4|0;Ff=Ff+4|0}while((Gf|0)<(f|0));b[(c[w>>2]|0)+28>>1]=1;c[(c[w>>2]|0)+32>>2]=0;c[(c[w>>2]|0)+36>>2]=0;b[na+36>>1]=e[na+36>>1]&-16896|1;a[na+69>>0]=0;if((b[(c[na>>2]|0)+2>>1]&32|0)!=0){c[na+52>>2]=c[(c[p>>2]|0)+ -20+16>>2]}Hf=r;Gf=c[Hf+4>>2]|0;Ff=(c[q>>2]|0)+32|0;c[Ff>>2]=c[Hf>>2];c[Ff+4>>2]=Gf;vb[c[(c[na>>2]|0)+12>>2]&63](na,c[oa>>2]|0,c[pa>>2]|0);Ff=(c[q>>2]|0)+32|0;Gf=c[Ff+4>>2]|0;Hf=r;c[Hf>>2]=c[Ff>>2];c[Hf+4>>2]=Gf;if((a[(c[q>>2]|0)+64>>0]|0)!=0){Ef=146;break c}if((a[na+69>>0]|0)!=0){if((c[na+64>>2]|0)!=0){Gf=(c[k>>2]|0)+44|0;Hf=c[q>>2]|0;c[g>>2]=Bd(na+8|0)|0;an(Gf,Hf,1456,g);c[l>>2]=c[na+64>>2]}Ny(c[k>>2]|0,c[n>>2]|0,c[(c[p>>2]|0)+4>>2]|0)}tk(na+8|0,d[x>>0]|0)|0;Gf=(c[w>>2]|0)+0|0;Ff=na+8|0;f=Gf+40|0;do{c[Gf>>2]=c[Ff>>2];Gf=Gf+4|0;Ff=Ff+4|0}while((Gf|0)<(f|0));if((Gy(c[w>>2]|0)|0)!=0){Ef=899;break c}break};case 88:case 87:case 86:case 85:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);c[aa>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);if(((e[(c[mf>>2]|0)+28>>1]|e[(c[aa>>2]|0)+28>>1])&1|0)!=0){Vd(c[w>>2]|0);break d}Hf=Hd(c[aa>>2]|0)|0;Gf=sa;c[Gf>>2]=Hf;c[Gf+4>>2]=D;Gf=Hd(c[mf>>2]|0)|0;Hf=ta;c[Hf>>2]=Gf;c[Hf+4>>2]=D;a[ua>>0]=a[c[p>>2]>>0]|0;do{if((d[ua>>0]|0)!=85){f=ta;Ff=c[f>>2]|0;f=c[f+4>>2]|0;if((d[ua>>0]|0)==86){Jf=sa;Gf=c[Jf+4>>2]|f;Hf=sa;c[Hf>>2]=c[Jf>>2]|Ff;c[Hf+4>>2]=Gf;break}if((Ff|0)!=0|(f|0)!=0){if((c[ta+4>>2]|0)<0){a[ua>>0]=175-(d[ua>>0]|0);Jf=ta;Hf=c[Jf+4>>2]|0;if((Hf|0)>-1|(Hf|0)==-1&(c[Jf>>2]|0)>>>0>4294967232){f=ta;f=ZD(0,0,c[f>>2]|0,c[f+4>>2]|0)|0;Ff=D}else{f=64;Ff=0}Jf=ta;c[Jf>>2]=f;c[Jf+4>>2]=Ff}Jf=ta;Hf=c[Jf+4>>2]|0;if((Hf|0)>0|(Hf|0)==0&(c[Jf>>2]|0)>>>0>=64){Jf=sa;Hf=c[Jf+4>>2]|0;if((Hf|0)>0|(Hf|0)==0&(c[Jf>>2]|0)>>>0>=0){f=1}else{f=(d[ua>>0]|0)==87}Hf=f?0:-1;Jf=sa;c[Jf>>2]=Hf;c[Jf+4>>2]=((Hf|0)<0)<<31>>31;break}c[va+0>>2]=c[sa+0>>2];c[va+4>>2]=c[sa+4>>2];Ff=c[ta>>2]|0;Gf=va;f=c[Gf>>2]|0;Gf=c[Gf+4>>2]|0;if((d[ua>>0]|0)!=87){Hf=cE(f|0,Gf|0,Ff|0)|0;Jf=va;c[Jf>>2]=Hf;c[Jf+4>>2]=D;if((c[sa+4>>2]|0)<0){Gf=ta;Gf=ZD(64,0,c[Gf>>2]|0,c[Gf+4>>2]|0)|0;Gf=$D(-1,-1,Gf|0)|0;Ff=va;Hf=c[Ff+4>>2]|D;Jf=va;c[Jf>>2]=c[Ff>>2]|Gf;c[Jf+4>>2]=Hf}}else{Hf=$D(f|0,Gf|0,Ff|0)|0;Jf=va;c[Jf>>2]=Hf;c[Jf+4>>2]=D}c[sa+0>>2]=c[va+0>>2];c[sa+4>>2]=c[va+4>>2]}}else{Gf=ta;Ff=sa;Hf=c[Ff+4>>2]&c[Gf+4>>2];Jf=sa;c[Jf>>2]=c[Ff>>2]&c[Gf>>2];c[Jf+4>>2]=Hf}}while(0);Gf=sa;Hf=c[Gf+4>>2]|0;Jf=(c[w>>2]|0)+16|0;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf;b[(c[w>>2]|0)+28>>1]=e[(c[w>>2]|0)+28>>1]&-16896|4;break};case 37:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);Oy(c[mf>>2]|0)|0;Hf=c[(c[p>>2]|0)+8>>2]|0;Jf=(c[mf>>2]|0)+16|0;Gf=Jf;Hf=bE(c[Gf>>2]|0,c[Gf+4>>2]|0,Hf|0,((Hf|0)<0)<<31>>31|0)|0;c[Jf>>2]=Hf;c[Jf+4>>2]=D;break};case 46:{c[xa>>2]=c[(c[p>>2]|0)+8>>2];c[ya>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);c[wa>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[za>>2]=(c[wa>>2]|0)+88;c[Aa>>2]=(c[za>>2]|0)+(b[(c[wa>>2]|0)+20>>1]<<2);c[Ba>>2]=c[c[wa>>2]>>2];c[l>>2]=Qy(c[wa>>2]|0)|0;if((c[l>>2]|0)!=0){break c}if((c[(c[wa>>2]|0)+68>>2]|0)==(c[(c[k>>2]|0)+72>>2]|0)?(a[(c[p>>2]|0)+3>>0]&32|0)==0:0){Ef=295}else{Ef=276}f:do{if((Ef|0)==276){Ef=0;do{if((a[(c[wa>>2]|0)+25>>0]|0)!=0){if((c[Ba>>2]|0)==0){c[rf>>2]=(c[ed>>2]|0)+((c[(c[wa>>2]|0)+16>>2]|0)*40|0);Jf=c[(c[rf>>2]|0)+24>>2]|0;c[qf>>2]=Jf;c[(c[wa>>2]|0)+76>>2]=Jf;c[(c[wa>>2]|0)+72>>2]=Jf;c[(c[wa>>2]|0)+84>>2]=c[(c[rf>>2]|0)+4>>2];break}else{b[(c[ya>>2]|0)+28>>1]=e[(c[ya>>2]|0)+28>>1]&-16896|1;break f}}else{f=c[Ba>>2]|0;if(((d[(c[wa>>2]|0)+28>>0]|0)>>>2&1|0)==0){ny(f,sf)|0;Jf=Ry(c[Ba>>2]|0,qf)|0;c[(c[wa>>2]|0)+84>>2]=Jf;c[(c[wa>>2]|0)+72>>2]=c[sf>>2]}else{Sy(f,(c[wa>>2]|0)+72|0)|0;Jf=Ty(c[Ba>>2]|0,qf)|0;c[(c[wa>>2]|0)+84>>2]=Jf}if((c[(c[wa>>2]|0)+72>>2]|0)>>>0<=(c[qf>>2]|0)>>>0){c[(c[wa>>2]|0)+76>>2]=c[(c[wa>>2]|0)+72>>2]}else{c[(c[wa>>2]|0)+76>>2]=c[qf>>2]}if((c[(c[wa>>2]|0)+72>>2]|0)>>>0>(c[(c[q>>2]|0)+88>>2]|0)>>>0){Ef=899;break c}}}while(0);c[(c[wa>>2]|0)+68>>2]=c[(c[k>>2]|0)+72>>2];f=c[(c[wa>>2]|0)+84>>2]|0;if((d[c[(c[wa>>2]|0)+84>>2]>>0]|0)<128){c[pf>>2]=d[f>>0]|0;f=1}else{f=(xw(f,pf)|0)&255}c[(c[wa>>2]|0)+80>>2]=f&255;b[(c[wa>>2]|0)+22>>1]=0;c[c[Aa>>2]>>2]=c[pf>>2];if((c[qf>>2]|0)>>>0<(c[pf>>2]|0)>>>0){c[(c[wa>>2]|0)+84>>2]=0;c[(c[wa>>2]|0)+76>>2]=0}if(!((c[pf>>2]|0)>>>0>98307)?!((c[pf>>2]|0)>>>0>(c[(c[wa>>2]|0)+72>>2]|0)>>>0):0){Ef=295;break}c[l>>2]=ej(69894)|0;break d}}while(0);do{if((Ef|0)==295){Ef=0;if((e[(c[wa>>2]|0)+22>>1]|0)<=(c[xa>>2]|0)){g:do{if((c[(c[wa>>2]|0)+80>>2]|0)>>>0<(c[c[Aa>>2]>>2]|0)>>>0){if((c[(c[wa>>2]|0)+84>>2]|0)==0){Gf=tf+0|0;f=Gf+40|0;do{c[Gf>>2]=0;Gf=Gf+4|0}while((Gf|0)<(f|0));c[l>>2]=Uy(c[Ba>>2]|0,0,c[c[Aa>>2]>>2]|0,(((d[(c[wa>>2]|0)+28>>0]|0)>>>2&1|0)!=0^1)&1,tf)|0;if((c[l>>2]|0)!=0){break d}c[vf>>2]=c[tf+4>>2]}else{c[vf>>2]=c[(c[wa>>2]|0)+84>>2]}c[uf>>2]=e[(c[wa>>2]|0)+22>>1]|0;c[pf>>2]=c[(c[Aa>>2]|0)+(c[uf>>2]<<2)>>2];c[wf>>2]=(c[vf>>2]|0)+(c[(c[wa>>2]|0)+80>>2]|0);c[xf>>2]=(c[vf>>2]|0)+(c[c[Aa>>2]>>2]|0);do{f=c[wf>>2]|0;if((d[c[wf>>2]>>0]|0)<128){c[yf>>2]=d[f>>0]|0;c[wf>>2]=(c[wf>>2]|0)+1}else{Jf=(xw(f,yf)|0)&255;c[wf>>2]=(c[wf>>2]|0)+Jf}c[(c[za>>2]|0)+(c[uf>>2]<<2)>>2]=c[yf>>2];c[zf>>2]=Bw(c[yf>>2]|0)|0;c[pf>>2]=(c[pf>>2]|0)+(c[zf>>2]|0);if((c[pf>>2]|0)>>>0<(c[zf>>2]|0)>>>0){Ef=306;break}c[uf>>2]=(c[uf>>2]|0)+1;c[(c[Aa>>2]|0)+(c[uf>>2]<<2)>>2]=c[pf>>2];if((c[uf>>2]|0)>(c[xa>>2]|0)){break}}while((c[wf>>2]|0)>>>0<(c[xf>>2]|0)>>>0);if((Ef|0)==306){Ef=0;c[wf>>2]=(c[xf>>2]|0)+1}b[(c[wa>>2]|0)+22>>1]=c[uf>>2];c[(c[wa>>2]|0)+80>>2]=(c[wf>>2]|0)-(c[vf>>2]|0);if((c[(c[wa>>2]|0)+84>>2]|0)==0){yd(tf);b[tf+28>>1]=1}do{if(!((c[wf>>2]|0)>>>0>(c[xf>>2]|0)>>>0)){if((c[pf>>2]|0)>>>0>(c[(c[wa>>2]|0)+72>>2]|0)>>>0){break}if((c[wf>>2]|0)!=(c[xf>>2]|0)){break g}if((c[pf>>2]|0)==(c[(c[wa>>2]|0)+72>>2]|0)){break g}}}while(0);c[l>>2]=ej(69960)|0;break d}}while(0);if((e[(c[wa>>2]|0)+22>>1]|0)<=(c[xa>>2]|0)){f=c[ya>>2]|0;if((a[(c[p>>2]|0)+1>>0]|0)==-8){Wm(f,c[(c[p>>2]|0)+16>>2]|0,2048);break}else{b[(c[ya>>2]|0)+28>>1]=e[f+28>>1]&-16896|1;break}}}if(!((c[(c[wa>>2]|0)+76>>2]|0)>>>0>=(c[(c[Aa>>2]|0)+((c[xa>>2]|0)+1<<2)>>2]|0)>>>0)){c[yf>>2]=c[(c[za>>2]|0)+(c[xa>>2]<<2)>>2];do{if((a[(c[p>>2]|0)+3>>0]&192|0)!=0){if((c[yf>>2]|0)>>>0>=12?(c[yf>>2]&1|0)==0:0){Ef=329;break}if((a[(c[p>>2]|0)+3>>0]&128|0)!=0){Ef=329}else{Ef=328}}else{Ef=328}}while(0);if((Ef|0)==328){Ef=0;Jf=Bw(c[yf>>2]|0)|0;c[Af>>2]=Jf;if((Jf|0)==0){Ef=329}else{Gf=tf+0|0;f=Gf+40|0;do{c[Gf>>2]=0;Gf=Gf+4|0}while((Gf|0)<(f|0));ty(tf,c[ya>>2]|0);c[l>>2]=Uy(c[Ba>>2]|0,c[(c[Aa>>2]|0)+(c[xa>>2]<<2)>>2]|0,c[Af>>2]|0,(((d[(c[wa>>2]|0)+28>>0]|0)>>>2&1|0)!=0^1)&1,tf)|0;if((c[l>>2]|0)!=0){break d}c[vf>>2]=c[tf+4>>2]}}if((Ef|0)==329){Ef=0;if((c[yf>>2]|0)>>>0<=13){f=sf}else{f=0}c[vf>>2]=f;c[tf+36>>2]=0}Cw(c[vf>>2]|0,c[yf>>2]|0,c[ya>>2]|0)|0;if((c[tf+36>>2]|0)!=0){Jf=(c[ya>>2]|0)+28|0;b[Jf>>1]=e[Jf>>1]&-6145;Jf=(c[ya>>2]|0)+28|0;b[Jf>>1]=e[Jf>>1]|512;c[(c[ya>>2]|0)+4>>2]=c[tf+4>>2];c[(c[ya>>2]|0)+36>>2]=c[tf+36>>2]}}else{if((b[(c[ya>>2]|0)+28>>1]&9312|0)!=0){le(c[ya>>2]|0)}Cw((c[(c[wa>>2]|0)+84>>2]|0)+(c[(c[Aa>>2]|0)+(c[xa>>2]<<2)>>2]|0)|0,c[(c[za>>2]|0)+(c[xa>>2]<<2)>>2]|0,c[ya>>2]|0)|0}a[(c[ya>>2]|0)+30>>0]=a[x>>0]|0}}while(0);if((b[(c[ya>>2]|0)+28>>1]&4096|0)!=0?(vk(c[ya>>2]|0)|0)!=0:0){Ef=900;break a}break};case 47:{c[Ca>>2]=c[(c[p>>2]|0)+16>>2];c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);while(1){Jf=c[Ca>>2]|0;c[Ca>>2]=Jf+1;Jf=a[Jf>>0]|0;a[Da>>0]=Jf;if((Jf<<24>>24|0)==0){break d}up(c[mf>>2]|0,a[Da>>0]|0,a[x>>0]|0);c[mf>>2]=(c[mf>>2]|0)+40}};case 48:{Jf=Na;c[Jf>>2]=0;c[Jf+4>>2]=0;c[Ia>>2]=0;c[Ra>>2]=0;c[Ta>>2]=c[(c[p>>2]|0)+4>>2];c[Sa>>2]=c[(c[p>>2]|0)+16>>2];c[Ka>>2]=(c[ed>>2]|0)+((c[Ta>>2]|0)*40|0);c[Ta>>2]=c[(c[p>>2]|0)+8>>2];c[Pa>>2]=(c[Ka>>2]|0)+(((c[Ta>>2]|0)-1|0)*40|0);c[Fa>>2]=d[(c[k>>2]|0)+87>>0]|0;c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);if((c[Sa>>2]|0)!=0){c[Ea>>2]=c[Ka>>2];do{Hf=c[Ea>>2]|0;c[Ea>>2]=Hf+40;Jf=c[Sa>>2]|0;c[Sa>>2]=Jf+1;up(Hf,a[Jf>>0]|0,a[x>>0]|0)}while((a[c[Sa>>2]>>0]|0)!=0)}c[Ea>>2]=c[Pa>>2];do{c[Ga>>2]=Vy(c[Ea>>2]|0,c[Fa>>2]|0)|0;c[Qa>>2]=Bw(c[Ga>>2]|0)|0;do{if((b[(c[Ea>>2]|0)+28>>1]&16384|0)!=0){Jf=Na;f=c[Ea>>2]|0;if((c[Jf>>2]|0)!=0|(c[Jf+4>>2]|0)!=0){Ad(f)|0;break}else{c[Ra>>2]=(c[Ra>>2]|0)+(c[f+16>>2]|0);c[Qa>>2]=(c[Qa>>2]|0)-(c[(c[Ea>>2]|0)+16>>2]|0);break}}}while(0);Hf=c[Qa>>2]|0;Jf=Na;Hf=bE(c[Jf>>2]|0,c[Jf+4>>2]|0,Hf|0,((Hf|0)<0)<<31>>31|0)|0;Jf=Na;c[Jf>>2]=Hf;c[Jf+4>>2]=D;if((c[Ga>>2]|0)>>>0<=127){f=1}else{f=Ew(c[Ga>>2]|0,0)|0}c[Ia>>2]=(c[Ia>>2]|0)+f;Jf=(c[Ea>>2]|0)+ -40|0;c[Ea>>2]=Jf}while(Jf>>>0>=(c[Ka>>2]|0)>>>0);f=c[Ia>>2]|0;if((c[Ia>>2]|0)>126){c[Oa>>2]=Ew(f,((f|0)<0)<<31>>31)|0;c[Ia>>2]=(c[Ia>>2]|0)+(c[Oa>>2]|0);Hf=c[Oa>>2]|0;Jf=c[Ia>>2]|0;if((Hf|0)<(Ew(Jf,((Jf|0)<0)<<31>>31)|0)){c[Ia>>2]=(c[Ia>>2]|0)+1}}else{c[Ia>>2]=f+1}Hf=c[Ia>>2]|0;Ff=Na;Ff=bE(Hf|0,((Hf|0)<0)<<31>>31|0,c[Ff>>2]|0,c[Ff+4>>2]|0)|0;Hf=Ma;c[Hf>>2]=Ff;c[Hf+4>>2]=D;Hf=Ma;Ff=c[Hf+4>>2]|0;Jf=c[(c[q>>2]|0)+88>>2]|0;Gf=((Jf|0)<0)<<31>>31;if((Ff|0)>(Gf|0)|((Ff|0)==(Gf|0)?(c[Hf>>2]|0)>>>0>Jf>>>0:0)){Ef=899;break c}if((me(c[w>>2]|0,c[Ma>>2]|0,0)|0)!=0){Ef=900;break a}c[La>>2]=c[(c[w>>2]|0)+4>>2];if((c[Ia>>2]|0)>>>0<128){a[c[La>>2]>>0]=c[Ia>>2];f=1}else{f=Wy(c[La>>2]|0,c[Ia>>2]|0)|0}c[Ha>>2]=f&255;c[Ja>>2]=c[Ia>>2];c[Ea>>2]=c[Ka>>2];do{c[Ga>>2]=Vy(c[Ea>>2]|0,c[Fa>>2]|0)|0;if((c[Ga>>2]|0)>>>0<128){a[(c[La>>2]|0)+(c[Ha>>2]|0)>>0]=c[Ga>>2];f=1}else{f=Wy((c[La>>2]|0)+(c[Ha>>2]|0)|0,c[Ga>>2]|0)|0}c[Ha>>2]=(c[Ha>>2]|0)+(f&255);Jf=Xy((c[La>>2]|0)+(c[Ja>>2]|0)|0,c[Ea>>2]|0,c[Ga>>2]|0)|0;c[Ja>>2]=(c[Ja>>2]|0)+Jf;Jf=(c[Ea>>2]|0)+40|0;c[Ea>>2]=Jf}while(Jf>>>0<=(c[Pa>>2]|0)>>>0);c[(c[w>>2]|0)+24>>2]=c[Ma>>2];b[(c[w>>2]|0)+28>>1]=16;c[(c[w>>2]|0)+32>>2]=0;if((c[Ra>>2]|0)!=0){c[(c[w>>2]|0)+16>>2]=c[Ra>>2];Jf=(c[w>>2]|0)+28|0;b[Jf>>1]=e[Jf>>1]|16384}a[(c[w>>2]|0)+30>>0]=1;break};case 49:{c[Ua>>2]=c[c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2]>>2];Gf=Va;c[Gf>>2]=0;c[Gf+4>>2]=0;c[l>>2]=Yy(c[Ua>>2]|0,Va)|0;Gf=Va;Hf=c[Gf+4>>2]|0;Jf=(c[w>>2]|0)+16|0;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf;break};case 2:{c[_a>>2]=c[(c[p>>2]|0)+4>>2];c[Ya>>2]=c[(c[p>>2]|0)+16>>2];if((c[_a>>2]|0)==0){if((c[(c[q>>2]|0)+148>>2]|0)>0){an((c[k>>2]|0)+44|0,c[q>>2]|0,31296,g);c[l>>2]=5;break d}c[Wa>>2]=Mb(c[Ya>>2]|0)|0;c[l>>2]=Zy(c[q>>2]|0,0,(c[(c[q>>2]|0)+492>>2]|0)+(c[(c[q>>2]|0)+488>>2]|0)|0)|0;if((c[l>>2]|0)!=0){break c}c[Xa>>2]=Le(c[q>>2]|0,33+(c[Wa>>2]|0)|0)|0;if((c[Xa>>2]|0)==0){break d}c[c[Xa>>2]>>2]=(c[Xa>>2]|0)+32;dE(c[c[Xa>>2]>>2]|0,c[Ya>>2]|0,(c[Wa>>2]|0)+1|0)|0;f=c[q>>2]|0;if((a[(c[q>>2]|0)+62>>0]|0)!=0){a[f+62>>0]=0;a[(c[q>>2]|0)+69>>0]=1}else{Jf=f+488|0;c[Jf>>2]=(c[Jf>>2]|0)+1}c[(c[Xa>>2]|0)+24>>2]=c[(c[q>>2]|0)+480>>2];c[(c[q>>2]|0)+480>>2]=c[Xa>>2];Jf=(c[q>>2]|0)+496|0;Hf=c[Jf+4>>2]|0;Gf=(c[Xa>>2]|0)+8|0;c[Gf>>2]=c[Jf>>2];c[Gf+4>>2]=Hf;Gf=(c[q>>2]|0)+504|0;Hf=c[Gf+4>>2]|0;Jf=(c[Xa>>2]|0)+16|0;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf;break d}c[ab>>2]=0;c[Za>>2]=c[(c[q>>2]|0)+480>>2];while(1){if((c[Za>>2]|0)==0){break}if((vc(c[c[Za>>2]>>2]|0,c[Ya>>2]|0)|0)==0){break}c[ab>>2]=(c[ab>>2]|0)+1;c[Za>>2]=c[(c[Za>>2]|0)+24>>2]}if((c[Za>>2]|0)==0){Hf=(c[k>>2]|0)+44|0;Jf=c[q>>2]|0;c[g>>2]=c[Ya>>2];an(Hf,Jf,31352,g);c[l>>2]=1;break d}if((c[(c[q>>2]|0)+148>>2]|0)>0?(c[_a>>2]|0)==1:0){an((c[k>>2]|0)+44|0,c[q>>2]|0,31376,g);c[l>>2]=5;break d}if((c[(c[Za>>2]|0)+24>>2]|0)==0){f=(d[(c[q>>2]|0)+69>>0]|0)!=0}else{f=0}c[cb>>2]=f&1;if((c[cb>>2]|0)!=0?(c[_a>>2]|0)==1:0){Jf=Hy(c[k>>2]|0,1)|0;c[l>>2]=Jf;if((Jf|0)!=0){Ef=898;break c}a[(c[q>>2]|0)+62>>0]=1;if((Fy(c[k>>2]|0)|0)==5){Ef=395;break c}a[(c[q>>2]|0)+69>>0]=0;c[l>>2]=c[(c[k>>2]|0)+80>>2]}else{c[ab>>2]=(c[(c[q>>2]|0)+488>>2]|0)-(c[ab>>2]|0)-1;h:do{if((c[_a>>2]|0)==2){c[$a>>2]=0;while(1){if((c[$a>>2]|0)>=(c[(c[q>>2]|0)+20>>2]|0)){break h}_y(c[(c[(c[q>>2]|0)+16>>2]|0)+(c[$a>>2]<<4)+4>>2]|0,4);c[$a>>2]=(c[$a>>2]|0)+1}}}while(0);c[$a>>2]=0;while(1){if((c[$a>>2]|0)>=(c[(c[q>>2]|0)+20>>2]|0)){break}c[l>>2]=$y(c[(c[(c[q>>2]|0)+16>>2]|0)+(c[$a>>2]<<4)+4>>2]|0,c[_a>>2]|0,c[ab>>2]|0)|0;if((c[l>>2]|0)!=0){break c}c[$a>>2]=(c[$a>>2]|0)+1}if((c[_a>>2]|0)==2?(c[(c[q>>2]|0)+24>>2]&2|0)!=0:0){bf(c[q>>2]|0);$c(c[q>>2]|0);c[(c[q>>2]|0)+24>>2]=c[(c[q>>2]|0)+24>>2]|2}}while(1){if((c[(c[q>>2]|0)+480>>2]|0)==(c[Za>>2]|0)){break}c[bb>>2]=c[(c[q>>2]|0)+480>>2];c[(c[q>>2]|0)+480>>2]=c[(c[bb>>2]|0)+24>>2];Wb(c[q>>2]|0,c[bb>>2]|0);Jf=(c[q>>2]|0)+488|0;c[Jf>>2]=(c[Jf>>2]|0)+ -1}f=c[Za>>2]|0;if((c[_a>>2]|0)==1){c[(c[q>>2]|0)+480>>2]=c[f+24>>2];Wb(c[q>>2]|0,c[Za>>2]|0);if((c[cb>>2]|0)==0){Jf=(c[q>>2]|0)+488|0;c[Jf>>2]=(c[Jf>>2]|0)+ -1}}else{Jf=f+8|0;Hf=c[Jf+4>>2]|0;Gf=(c[q>>2]|0)+496|0;c[Gf>>2]=c[Jf>>2];c[Gf+4>>2]=Hf;Gf=(c[Za>>2]|0)+16|0;Hf=c[Gf+4>>2]|0;Jf=(c[q>>2]|0)+504|0;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf}if((c[cb>>2]|0)==0?(c[l>>2]=Zy(c[q>>2]|0,c[_a>>2]|0,c[ab>>2]|0)|0,(c[l>>2]|0)!=0):0){break c}break};case 3:{c[db>>2]=c[(c[p>>2]|0)+4>>2];c[fb>>2]=c[(c[p>>2]|0)+8>>2];if((c[db>>2]|0)!=0){f=(a[(c[q>>2]|0)+62>>0]|0)!=0^1}else{f=0}c[eb>>2]=f&1;if(((c[eb>>2]|0)!=0?(c[fb>>2]|0)==0:0)?(c[(c[q>>2]|0)+148>>2]|0)>0:0){an((c[k>>2]|0)+44|0,c[q>>2]|0,31432,g);c[l>>2]=5;break d}if((c[db>>2]|0)!=(d[(c[q>>2]|0)+62>>0]|0)){Ef=423;break c}if((c[db>>2]|0)!=0){f=(c[fb>>2]|0)!=0?31536:31584}else{f=31488}an((c[k>>2]|0)+44|0,c[q>>2]|0,f,g);c[l>>2]=1;break};case 4:{if((c[(c[p>>2]|0)+8>>2]|0)!=0?(c[(c[q>>2]|0)+24>>2]&33554432|0)!=0:0){Ef=436;break c}c[gb>>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<4)+4>>2];if((c[gb>>2]|0)!=0){c[l>>2]=Oc(c[gb>>2]|0,c[(c[p>>2]|0)+8>>2]|0)|0;if((c[l>>2]|0)==5){Ef=439;break c}if((c[l>>2]|0)!=0){break c}do{if((c[(c[p>>2]|0)+8>>2]|0)!=0?((e[(c[k>>2]|0)+88>>1]|0)>>>7&1|0)!=0:0){if((d[(c[q>>2]|0)+62>>0]|0)!=0?(c[(c[q>>2]|0)+144>>2]|0)<=1:0){break}if((c[(c[k>>2]|0)+104>>2]|0)==0){Jf=(c[q>>2]|0)+492|0;c[Jf>>2]=(c[Jf>>2]|0)+1;c[(c[k>>2]|0)+104>>2]=(c[(c[q>>2]|0)+488>>2]|0)+(c[(c[q>>2]|0)+492>>2]|0)}c[l>>2]=Zy(c[q>>2]|0,0,(c[(c[k>>2]|0)+104>>2]|0)-1|0)|0;if((c[l>>2]|0)==0){c[l>>2]=az(c[gb>>2]|0,c[(c[k>>2]|0)+104>>2]|0)|0}Jf=(c[q>>2]|0)+496|0;Hf=c[Jf+4>>2]|0;Gf=(c[k>>2]|0)+152|0;c[Gf>>2]=c[Jf>>2];c[Gf+4>>2]=Hf;Gf=(c[q>>2]|0)+504|0;Hf=c[Gf+4>>2]|0;Jf=(c[k>>2]|0)+160|0;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf}}while(0);Pc(c[gb>>2]|0,1,hb);c[ib>>2]=c[(c[(c[(c[q>>2]|0)+16>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<4)+12>>2]|0)+4>>2]}else{c[hb>>2]=0;c[ib>>2]=0}if((d[(c[p>>2]|0)+3>>0]|0)!=0){if((c[hb>>2]|0)==(c[(c[p>>2]|0)+12>>2]|0)?(c[ib>>2]|0)==(c[(c[p>>2]|0)+16>>2]|0):0){break d}Wb(c[q>>2]|0,c[(c[k>>2]|0)+44>>2]|0);Jf=he(c[q>>2]|0,5616)|0;c[(c[k>>2]|0)+44>>2]=Jf;if((c[c[(c[(c[q>>2]|0)+16>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<4)+12>>2]>>2]|0)!=(c[hb>>2]|0)){Kr(c[q>>2]|0,c[(c[p>>2]|0)+4>>2]|0)}Jf=(c[k>>2]|0)+88|0;b[Jf>>1]=b[Jf>>1]&-33|32;c[l>>2]=17}break};case 50:{c[jb>>2]=c[(c[p>>2]|0)+4>>2];c[kb>>2]=c[(c[p>>2]|0)+12>>2];Pc(c[(c[(c[q>>2]|0)+16>>2]|0)+(c[jb>>2]<<4)+4>>2]|0,c[kb>>2]|0,lb);Hf=c[lb>>2]|0;Jf=(c[w>>2]|0)+16|0;c[Jf>>2]=Hf;c[Jf+4>>2]=((Hf|0)<0)<<31>>31;break};case 51:{c[mb>>2]=(c[(c[q>>2]|0)+16>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<4);c[G>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);Oy(c[G>>2]|0)|0;c[l>>2]=_c(c[(c[mb>>2]|0)+4>>2]|0,c[(c[p>>2]|0)+8>>2]|0,c[(c[G>>2]|0)+16>>2]|0)|0;if((c[(c[p>>2]|0)+8>>2]|0)!=1){if((c[(c[p>>2]|0)+8>>2]|0)==2){a[(c[(c[mb>>2]|0)+12>>2]|0)+76>>0]=c[(c[G>>2]|0)+16>>2]}}else{c[c[(c[mb>>2]|0)+12>>2]>>2]=c[(c[G>>2]|0)+16>>2];Jf=(c[q>>2]|0)+24|0;c[Jf>>2]=c[Jf>>2]|2}if((c[(c[p>>2]|0)+4>>2]|0)==1){bf(c[q>>2]|0);Jf=(c[k>>2]|0)+88|0;b[Jf>>1]=b[Jf>>1]&-33}break};case 53:case 52:{if(((e[(c[k>>2]|0)+88>>1]|0)>>>5&1|0)!=0){c[l>>2]=4;break d}c[nb>>2]=0;c[rb>>2]=0;c[tb>>2]=c[(c[p>>2]|0)+8>>2];c[ob>>2]=c[(c[p>>2]|0)+12>>2];c[wb>>2]=(c[(c[q>>2]|0)+16>>2]|0)+(c[ob>>2]<<4);c[Cb>>2]=c[(c[wb>>2]|0)+4>>2];if((d[c[p>>2]>>0]|0)==53){c[Bb>>2]=1;if((d[(c[(c[wb>>2]|0)+12>>2]|0)+76>>0]|0)<(d[(c[k>>2]|0)+87>>0]|0)){a[(c[k>>2]|0)+87>>0]=a[(c[(c[wb>>2]|0)+12>>2]|0)+76>>0]|0}}else{c[Bb>>2]=0}if((a[(c[p>>2]|0)+3>>0]&2|0)!=0?(c[aa>>2]=(c[ed>>2]|0)+((c[tb>>2]|0)*40|0),Oy(c[aa>>2]|0)|0,c[tb>>2]=c[(c[aa>>2]|0)+16>>2],(c[tb>>2]|0)<2):0){Ef=473;break c}f=c[p>>2]|0;if(!((a[(c[p>>2]|0)+1>>0]|0)==-6)){if((a[f+1>>0]|0)==-14){c[nb>>2]=c[(c[p>>2]|0)+16>>2]}}else{c[rb>>2]=c[f+16>>2];c[nb>>2]=(e[(c[rb>>2]|0)+6>>1]|0)+(e[(c[rb>>2]|0)+8>>1]|0)}c[qb>>2]=bz(c[k>>2]|0,c[(c[p>>2]|0)+4>>2]|0,c[nb>>2]|0,c[ob>>2]|0,1)|0;if((c[qb>>2]|0)==0){Ef=900;break a}a[(c[qb>>2]|0)+25>>0]=1;Jf=(c[qb>>2]|0)+28|0;a[Jf>>0]=a[Jf>>0]&-9|8;c[l>>2]=cz(c[Cb>>2]|0,c[tb>>2]|0,c[Bb>>2]|0,c[rb>>2]|0,c[c[qb>>2]>>2]|0)|0;c[(c[qb>>2]|0)+8>>2]=c[rb>>2];dz(c[c[qb>>2]>>2]|0,a[(c[p>>2]|0)+3>>0]&1);Jf=(c[qb>>2]|0)+28|0;a[Jf>>0]=a[Jf>>0]&-5|((a[(c[p>>2]|0)+1>>0]|0)!=-6&1)<<2&255;break};case 55:case 54:{c[Db>>2]=bz(c[k>>2]|0,c[(c[p>>2]|0)+4>>2]|0,c[(c[p>>2]|0)+8>>2]|0,-1,1)|0;if((c[Db>>2]|0)==0){Ef=900;break a}a[(c[Db>>2]|0)+25>>0]=1;Jf=(c[Db>>2]|0)+28|0;a[Jf>>0]=a[Jf>>0]&-2|1;c[l>>2]=kh(c[c[q>>2]>>2]|0,0,c[q>>2]|0,(c[Db>>2]|0)+4|0,5|d[(c[p>>2]|0)+3>>0],1054)|0;if((c[l>>2]|0)==0){c[l>>2]=Oc(c[(c[Db>>2]|0)+4>>2]|0,1)|0}do{if((c[l>>2]|0)==0){Jf=c[(c[p>>2]|0)+16>>2]|0;c[Fb>>2]=Jf;f=c[(c[Db>>2]|0)+4>>2]|0;if((Jf|0)==0){c[l>>2]=cz(f,1,1,0,c[c[Db>>2]>>2]|0)|0;Jf=(c[Db>>2]|0)+28|0;a[Jf>>0]=a[Jf>>0]&-5|4;break}c[l>>2]=ez(f,Eb,2|d[(c[p>>2]|0)+3>>0])|0;if((c[l>>2]|0)==0){c[(c[Db>>2]|0)+8>>2]=c[Fb>>2];c[l>>2]=cz(c[(c[Db>>2]|0)+4>>2]|0,c[Eb>>2]|0,1,c[Fb>>2]|0,c[c[Db>>2]>>2]|0)|0}Jf=(c[Db>>2]|0)+28|0;a[Jf>>0]=a[Jf>>0]&-5}}while(0);Jf=(c[Db>>2]|0)+28|0;a[Jf>>0]=a[Jf>>0]&-9|((d[(c[p>>2]|0)+3>>0]|0)!=8&1)<<3&255;break};case 56:{c[Gb>>2]=bz(c[k>>2]|0,c[(c[p>>2]|0)+4>>2]|0,c[(c[p>>2]|0)+8>>2]|0,-1,1)|0;if((c[Gb>>2]|0)==0){Ef=900;break a}c[(c[Gb>>2]|0)+8>>2]=c[(c[p>>2]|0)+16>>2];c[l>>2]=fz(c[q>>2]|0,c[Gb>>2]|0)|0;break};case 57:{c[Hb>>2]=bz(c[k>>2]|0,c[(c[p>>2]|0)+4>>2]|0,c[(c[p>>2]|0)+12>>2]|0,-1,0)|0;if((c[Hb>>2]|0)==0){Ef=900;break a}a[(c[Hb>>2]|0)+25>>0]=1;c[(c[Hb>>2]|0)+16>>2]=c[(c[p>>2]|0)+8>>2];Jf=(c[Hb>>2]|0)+28|0;a[Jf>>0]=a[Jf>>0]&-5|4;break};case 58:{gz(c[k>>2]|0,c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2]|0);c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2]=0;break};case 62:case 61:case 60:case 59:{c[Jb>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[Lb>>2]=d[c[p>>2]>>0]|0;a[(c[Jb>>2]|0)+25>>0]=0;f=c[p>>2]|0;if(((d[(c[Jb>>2]|0)+28>>0]|0)>>>2&1|0)!=0){c[G>>2]=(c[ed>>2]|0)+((c[f+12>>2]|0)*40|0);Ke(c[G>>2]|0);Hf=Hd(c[G>>2]|0)|0;Jf=Ib;c[Jf>>2]=Hf;c[Jf+4>>2]=D;a[(c[Jb>>2]|0)+26>>0]=0;do{if((b[(c[G>>2]|0)+28>>1]&4|0)==0){if((b[(c[G>>2]|0)+28>>1]&8|0)==0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1;break d}Jf=Ib;if(+h[(c[G>>2]|0)+8>>3]<+((c[Jf>>2]|0)>>>0)+4294967296.0*+(c[Jf+4>>2]|0)){if((c[Lb>>2]&1|0)!=0){break}c[Lb>>2]=(c[Lb>>2]|0)+ -1;break}Jf=Ib;if(+h[(c[G>>2]|0)+8>>3]>+((c[Jf>>2]|0)>>>0)+4294967296.0*+(c[Jf+4>>2]|0)?(c[Lb>>2]&1|0)==1:0){c[Lb>>2]=(c[Lb>>2]|0)+1}}}while(0);Jf=Ib;c[l>>2]=mw(c[c[Jb>>2]>>2]|0,0,c[Jf>>2]|0,c[Jf+4>>2]|0,0,Kb)|0;if((c[l>>2]|0)!=0){break c}if((c[Kb>>2]|0)==0){a[(c[Jb>>2]|0)+26>>0]=1;Gf=Ib;Hf=c[Gf+4>>2]|0;Jf=(c[Jb>>2]|0)+56|0;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf}}else{c[Ob>>2]=c[f+16>>2];c[Nb>>2]=c[(c[Jb>>2]|0)+8>>2];b[Nb+4>>1]=c[Ob>>2];a[Nb+6>>0]=(1&(c[Lb>>2]|0)-59|0)!=0?-1:1;c[Nb+8>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);if((b[(c[Nb+8>>2]|0)+28>>1]&16384|0)!=0){Ad(c[Nb+8>>2]|0)|0}c[l>>2]=mw(c[c[Jb>>2]>>2]|0,Nb,0,0,0,Kb)|0;if((c[l>>2]|0)!=0){break c}a[(c[Jb>>2]|0)+26>>0]=0}a[(c[Jb>>2]|0)+27>>0]=0;c[(c[Jb>>2]|0)+68>>2]=0;f=c[Kb>>2]|0;i:do{if((c[Lb>>2]|0)>=61){do{if((f|0)>=0){if((c[Kb>>2]|0)==0?(c[Lb>>2]|0)==62:0){break}c[Kb>>2]=0;break i}}while(0);c[Kb>>2]=0;c[l>>2]=$v(c[c[Jb>>2]>>2]|0,Kb)|0;if((c[l>>2]|0)!=0){break c}a[(c[Jb>>2]|0)+26>>0]=0}else{do{if((f|0)<=0){if((c[Kb>>2]|0)==0?(c[Lb>>2]|0)==59:0){break}c[Kb>>2]=hz(c[c[Jb>>2]>>2]|0)|0;break i}}while(0);c[Kb>>2]=0;c[l>>2]=aw(c[c[Jb>>2]>>2]|0,Kb)|0;if((c[l>>2]|0)!=0){break c}a[(c[Jb>>2]|0)+26>>0]=0}}while(0);if((c[Kb>>2]|0)!=0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}break};case 63:{c[Pb>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];a[(c[Pb>>2]|0)+25>>0]=0;c[aa>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);Hf=Hd(c[aa>>2]|0)|0;Jf=(c[Pb>>2]|0)+48|0;c[Jf>>2]=Hf;c[Jf+4>>2]=D;a[(c[Pb>>2]|0)+26>>0]=0;a[(c[Pb>>2]|0)+27>>0]=1;break};case 66:case 65:case 64:{c[Sb>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[G>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);c[Ub>>2]=0;f=c[(c[Sb>>2]|0)+8>>2]|0;if((c[(c[p>>2]|0)+16>>2]|0)>0){c[Xb>>2]=f;b[Xb+4>>1]=c[(c[p>>2]|0)+16>>2];c[Xb+8>>2]=c[G>>2];c[Yb>>2]=0;while(1){if((c[Yb>>2]|0)>=(e[Xb+4>>1]|0)){break}if((b[(c[Xb+8>>2]|0)+((c[Yb>>2]|0)*40|0)+28>>1]&16384|0)!=0){Ad((c[Xb+8>>2]|0)+((c[Yb>>2]|0)*40|0)|0)|0}c[Yb>>2]=(c[Yb>>2]|0)+1}c[Vb>>2]=Xb}else{c[Vb>>2]=kw(f,Zb,191,Ub)|0;if((c[Vb>>2]|0)==0){Ef=900;break a}lw(c[(c[Sb>>2]|0)+8>>2]|0,c[(c[G>>2]|0)+24>>2]|0,c[(c[G>>2]|0)+4>>2]|0,c[Vb>>2]|0)}a[(c[Vb>>2]|0)+6>>0]=0;j:do{if((d[c[p>>2]>>0]|0)==64){c[Yb>>2]=0;while(1){if((c[Yb>>2]|0)>=(e[Xb+4>>1]|0)){break j}if((b[(c[Xb+8>>2]|0)+((c[Yb>>2]|0)*40|0)+28>>1]&1|0)!=0){break}c[Yb>>2]=(c[Yb>>2]|0)+1}c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}}while(0);c[l>>2]=mw(c[c[Sb>>2]>>2]|0,c[Vb>>2]|0,0,0,0,Qb)|0;if((c[(c[p>>2]|0)+16>>2]|0)==0){Wb(c[q>>2]|0,c[Ub>>2]|0)}if((c[l>>2]|0)==0){c[(c[Sb>>2]|0)+12>>2]=c[Qb>>2];c[Tb>>2]=(c[Qb>>2]|0)==0&1;a[(c[Sb>>2]|0)+25>>0]=1-(c[Tb>>2]|0);a[(c[Sb>>2]|0)+27>>0]=0;c[(c[Sb>>2]|0)+68>>2]=0;f=(c[Tb>>2]|0)!=0;if((d[c[p>>2]>>0]|0)==66){if(!f){break d}c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1;break d}else{if(f){break d}c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1;break d}}break};case 67:{c[G>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);c[$b>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[ac>>2]=c[c[$b>>2]>>2];c[_b>>2]=0;Jf=(c[G>>2]|0)+16|0;Hf=c[Jf+4>>2]|0;Gf=bc;c[Gf>>2]=c[Jf>>2];c[Gf+4>>2]=Hf;Gf=bc;c[l>>2]=mw(c[ac>>2]|0,0,c[Gf>>2]|0,c[Gf+4>>2]|0,0,_b)|0;Gf=(c[G>>2]|0)+16|0;Hf=c[Gf+4>>2]|0;Jf=(c[$b>>2]|0)+56|0;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf;a[(c[$b>>2]|0)+26>>0]=(c[_b>>2]|0)==0?1:0;a[(c[$b>>2]|0)+25>>0]=0;c[(c[$b>>2]|0)+68>>2]=0;a[(c[$b>>2]|0)+27>>0]=0;if((c[_b>>2]|0)!=0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}c[(c[$b>>2]|0)+12>>2]=c[_b>>2];break};case 68:{Jf=(c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2]|0)+40|0;Hf=Jf;Gf=c[Hf>>2]|0;Hf=c[Hf+4>>2]|0;Ff=bE(Gf|0,Hf|0,1,0)|0;c[Jf>>2]=Ff;c[Jf+4>>2]=D;Jf=(c[w>>2]|0)+16|0;c[Jf>>2]=Gf;c[Jf+4>>2]=Hf;break};case 69:{Jf=cc;c[Jf>>2]=0;c[Jf+4>>2]=0;c[hc>>2]=0;c[ec>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];if((c[c[ec>>2]>>2]|0)!=0){do{if(((d[(c[ec>>2]|0)+28>>0]|0)>>>1&1|0)==0){c[l>>2]=iz(c[c[ec>>2]>>2]|0,hc)|0;if((c[l>>2]|0)!=0){break c}if((c[hc>>2]|0)!=0){Jf=cc;c[Jf>>2]=1;c[Jf+4>>2]=0;break}c[l>>2]=ny(c[c[ec>>2]>>2]|0,cc)|0;Jf=cc;Hf=c[Jf+4>>2]|0;if((Hf|0)>2147483647|(Hf|0)==2147483647&(c[Jf>>2]|0)>>>0>=4294967295){Jf=(c[ec>>2]|0)+28|0;a[Jf>>0]=a[Jf>>0]&-3|2;break}else{Hf=cc;Hf=bE(c[Hf>>2]|0,c[Hf+4>>2]|0,1,0)|0;Jf=cc;c[Jf>>2]=Hf;c[Jf+4>>2]=D;break}}}while(0);if((c[(c[p>>2]|0)+12>>2]|0)!=0){if((c[(c[k>>2]|0)+176>>2]|0)!=0){c[fc>>2]=c[(c[k>>2]|0)+176>>2];while(1){if((c[(c[fc>>2]|0)+4>>2]|0)==0){break}c[fc>>2]=c[(c[fc>>2]|0)+4>>2]}c[dc>>2]=(c[(c[fc>>2]|0)+12>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0)}else{c[dc>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0)}Oy(c[dc>>2]|0)|0;Jf=(c[dc>>2]|0)+16|0;if((c[Jf>>2]|0)==-1?(c[Jf+4>>2]|0)==2147483647:0){Ef=572;break c}if(((d[(c[ec>>2]|0)+28>>0]|0)>>>1&1|0)!=0){Ef=572;break c}Ff=cc;Hf=c[Ff>>2]|0;Ff=c[Ff+4>>2]|0;Jf=(c[dc>>2]|0)+16|0;Jf=bE(c[Jf>>2]|0,c[Jf+4>>2]|0,1,0)|0;Gf=D;if((Ff|0)<(Gf|0)|(Ff|0)==(Gf|0)&Hf>>>0>>0){Hf=(c[dc>>2]|0)+16|0;Hf=bE(c[Hf>>2]|0,c[Hf+4>>2]|0,1,0)|0;Jf=cc;c[Jf>>2]=Hf;c[Jf+4>>2]=D}Gf=cc;Hf=c[Gf+4>>2]|0;Jf=(c[dc>>2]|0)+16|0;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf}if(((d[(c[ec>>2]|0)+28>>0]|0)>>>1&1|0)!=0){Hf=r;Jf=c[Hf+4>>2]|0;Gf=cc;c[Gf>>2]=c[Hf>>2];c[Gf+4>>2]=Jf;Gf=cc;Jf=c[Gf+4>>2]&1073741823;Hf=cc;c[Hf>>2]=c[Gf>>2];c[Hf+4>>2]=Jf;Hf=cc;Hf=bE(c[Hf>>2]|0,c[Hf+4>>2]|0,1,0)|0;Jf=cc;c[Jf>>2]=Hf;c[Jf+4>>2]=D;c[gc>>2]=0;while(1){Jf=cc;Jf=mw(c[c[ec>>2]>>2]|0,0,c[Jf>>2]|0,c[Jf+4>>2]|0,0,hc)|0;c[l>>2]=Jf;if(!((Jf|0)==0&(c[hc>>2]|0)==0)){break}Jf=(c[gc>>2]|0)+1|0;c[gc>>2]=Jf;if((Jf|0)>=100){break}tc(8,cc);Ff=cc;f=c[Ff>>2]|0;Ff=c[Ff+4>>2]|0;if((c[gc>>2]|0)<5){Jf=cc;c[Jf>>2]=f&16777215;c[Jf+4>>2]=0}else{Jf=cc;c[Jf>>2]=f;c[Jf+4>>2]=Ff&1073741823}Hf=cc;Hf=bE(c[Hf>>2]|0,c[Hf+4>>2]|0,1,0)|0;Jf=cc;c[Jf>>2]=Hf;c[Jf+4>>2]=D}if((c[l>>2]|0)==0?(c[hc>>2]|0)==0:0){Ef=586;break c}}a[(c[ec>>2]|0)+26>>0]=0;a[(c[ec>>2]|0)+27>>0]=0;c[(c[ec>>2]|0)+68>>2]=0}Gf=cc;Hf=c[Gf+4>>2]|0;Jf=(c[w>>2]|0)+16|0;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf;break};case 73:case 70:{c[nc>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);c[ic>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];f=c[(c[p>>2]|0)+12>>2]|0;if((d[c[p>>2]>>0]|0)==70){c[qc>>2]=(c[ed>>2]|0)+(f*40|0);Gf=(c[qc>>2]|0)+16|0;Hf=c[Gf+4>>2]|0;Jf=t;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf}else{Jf=t;c[Jf>>2]=f;c[Jf+4>>2]=((f|0)<0)<<31>>31}if((a[(c[p>>2]|0)+3>>0]&1|0)!=0){Jf=(c[k>>2]|0)+92|0;c[Jf>>2]=(c[Jf>>2]|0)+1}if((a[(c[p>>2]|0)+3>>0]&2|0)!=0){Hf=t;Gf=c[Hf>>2]|0;Hf=c[Hf+4>>2]|0;Jf=r;c[Jf>>2]=Gf;c[Jf+4>>2]=Hf;Jf=(c[q>>2]|0)+32|0;c[Jf>>2]=Gf;c[Jf+4>>2]=Hf}if((b[(c[nc>>2]|0)+28>>1]&1|0)!=0){c[(c[nc>>2]|0)+4>>2]=0;c[(c[nc>>2]|0)+24>>2]=0}if((a[(c[p>>2]|0)+3>>0]&16|0)!=0){f=c[(c[ic>>2]|0)+12>>2]|0}else{f=0}c[pc>>2]=f;if((b[(c[nc>>2]|0)+28>>1]&16384|0)!=0){c[oc>>2]=c[(c[nc>>2]|0)+16>>2]}else{c[oc>>2]=0}Jf=t;c[l>>2]=jz(c[c[ic>>2]>>2]|0,0,c[Jf>>2]|0,c[Jf+4>>2]|0,c[(c[nc>>2]|0)+4>>2]|0,c[(c[nc>>2]|0)+24>>2]|0,c[oc>>2]|0,(a[(c[p>>2]|0)+3>>0]&8|0)!=0&1,c[pc>>2]|0)|0;a[(c[ic>>2]|0)+26>>0]=0;a[(c[ic>>2]|0)+27>>0]=0;c[(c[ic>>2]|0)+68>>2]=0;if(((c[l>>2]|0)==0?(c[(c[q>>2]|0)+200>>2]|0)!=0:0)?(c[(c[p>>2]|0)+16>>2]|0)!=0:0){c[jc>>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+(a[(c[ic>>2]|0)+24>>0]<<4)>>2];c[kc>>2]=c[(c[p>>2]|0)+16>>2];c[lc>>2]=(a[(c[p>>2]|0)+3>>0]&4|0)!=0?23:18;Jf=t;yb[c[(c[q>>2]|0)+200>>2]&0](c[(c[q>>2]|0)+196>>2]|0,c[lc>>2]|0,c[jc>>2]|0,c[kc>>2]|0,c[Jf>>2]|0,c[Jf+4>>2]|0)}break};case 74:{c[uc>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];Gf=(c[uc>>2]|0)+56|0;Hf=c[Gf+4>>2]|0;Jf=sc;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf;c[l>>2]=Qy(c[uc>>2]|0)|0;if((c[l>>2]|0)!=0){break c}c[l>>2]=kz(c[c[uc>>2]>>2]|0)|0;c[(c[uc>>2]|0)+68>>2]=0;if((((c[l>>2]|0)==0?(c[(c[q>>2]|0)+200>>2]|0)!=0:0)?(c[(c[p>>2]|0)+16>>2]|0)!=0:0)?((d[(c[uc>>2]|0)+28>>0]|0)>>>2&1|0)!=0:0){Jf=sc;yb[c[(c[q>>2]|0)+200>>2]&0](c[(c[q>>2]|0)+196>>2]|0,9,c[(c[(c[q>>2]|0)+16>>2]|0)+(a[(c[uc>>2]|0)+24>>0]<<4)>>2]|0,c[(c[p>>2]|0)+16>>2]|0,c[Jf>>2]|0,c[Jf+4>>2]|0)}if((c[(c[p>>2]|0)+8>>2]&1|0)!=0){Jf=(c[k>>2]|0)+92|0;c[Jf>>2]=(c[Jf>>2]|0)+1}break};case 75:{Dy(c[q>>2]|0,c[(c[k>>2]|0)+92>>2]|0);c[(c[k>>2]|0)+92>>2]=0;break};case 84:{c[wc>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[G>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);c[xc>>2]=c[(c[p>>2]|0)+16>>2];c[l>>2]=lz(c[wc>>2]|0,c[G>>2]|0,c[xc>>2]|0,yc)|0;if((c[yc>>2]|0)!=0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}break};case 95:{c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);c[zc>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[l>>2]=mz(c[zc>>2]|0,c[w>>2]|0)|0;break};case 99:case 98:{c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);c[Cc>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[Bc>>2]=c[c[Cc>>2]>>2];c[l>>2]=Qy(c[Cc>>2]|0)|0;if((c[l>>2]|0)!=0){break c}f=c[Bc>>2]|0;if(((d[(c[Cc>>2]|0)+28>>0]|0)>>>2&1|0)!=0){Sy(f,Ac)|0;if((c[Ac>>2]|0)>>>0>(c[(c[q>>2]|0)+88>>2]|0)>>>0){Ef=899;break c}}else{ny(f,Dc)|0;Hf=Dc;Ff=c[Hf+4>>2]|0;Jf=c[(c[q>>2]|0)+88>>2]|0;Gf=((Jf|0)<0)<<31>>31;if((Ff|0)>(Gf|0)|((Ff|0)==(Gf|0)?(c[Hf>>2]|0)>>>0>Jf>>>0:0)){Ef=899;break c}c[Ac>>2]=c[Dc>>2]}if((me(c[w>>2]|0,c[Ac>>2]|0,0)|0)!=0){Ef=900;break a}c[(c[w>>2]|0)+24>>2]=c[Ac>>2];b[(c[w>>2]|0)+28>>1]=e[(c[w>>2]|0)+28>>1]&-16896|16;f=c[Bc>>2]|0;Ff=c[Ac>>2]|0;Gf=c[(c[w>>2]|0)+4>>2]|0;if(((d[(c[Cc>>2]|0)+28>>0]|0)>>>2&1|0)==0){c[l>>2]=oy(f,0,Ff,Gf)|0}else{c[l>>2]=af(f,0,Ff,Gf)|0}a[(c[w>>2]|0)+30>>0]=1;break};case 100:{c[Hc>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];if((a[(c[Hc>>2]|0)+25>>0]|0)!=0){b[(c[w>>2]|0)+28>>1]=1;break d}f=c[Hc>>2]|0;do{if((a[(c[Hc>>2]|0)+27>>0]|0)==0){Ff=c[Hc>>2]|0;if((c[f+32>>2]|0)!=0){c[Fc>>2]=c[c[Ff+32>>2]>>2];c[Gc>>2]=c[c[Fc>>2]>>2];c[l>>2]=zb[c[(c[Gc>>2]|0)+48>>2]&63](c[(c[Hc>>2]|0)+32>>2]|0,Ec)|0;nz(c[k>>2]|0,c[Fc>>2]|0);break}c[l>>2]=Qy(Ff)|0;if((c[l>>2]|0)!=0){break c}f=c[Hc>>2]|0;if((a[(c[Hc>>2]|0)+26>>0]|0)!=0){Gf=f+56|0;Hf=c[Gf+4>>2]|0;Jf=Ec;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf;break}else{c[l>>2]=ny(c[f>>2]|0,Ec)|0;break}}else{Gf=f+48|0;Hf=c[Gf+4>>2]|0;Jf=Ec;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf}}while(0);Gf=Ec;Hf=c[Gf+4>>2]|0;Jf=(c[w>>2]|0)+16|0;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf;break};case 102:{c[Ic>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[Jc>>2]=c[c[Ic>>2]>>2];c[Kc>>2]=0;c[l>>2]=iz(c[Jc>>2]|0,Kc)|0;a[(c[Ic>>2]|0)+25>>0]=c[Kc>>2];a[(c[Ic>>2]|0)+27>>0]=0;a[(c[Ic>>2]|0)+26>>0]=0;c[(c[Ic>>2]|0)+68>>2]=0;if((c[(c[p>>2]|0)+8>>2]|0)>0?(c[Kc>>2]|0)!=0:0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}break};case 101:{c[Lc>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];a[(c[Lc>>2]|0)+25>>0]=1;a[(c[Lc>>2]|0)+26>>0]=0;c[(c[Lc>>2]|0)+68>>2]=0;if((c[c[Lc>>2]>>2]|0)!=0){Gk(c[c[Lc>>2]>>2]|0)}break};case 104:case 103:{Ef=(c[k>>2]|0)+116|0;c[Ef>>2]=(c[Ef>>2]|0)+1;Ef=646;break};case 105:{Ef=646;break};case 107:case 106:{c[Mc>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[aa>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);c[Nc>>2]=c[c[Mc>>2]>>2];if((a[(c[p>>2]|0)+3>>0]&1|0)!=0){Jf=(c[k>>2]|0)+92|0;c[Jf>>2]=(c[Jf>>2]|0)+1}if((b[(c[aa>>2]|0)+28>>1]&16384|0)!=0){f=Ad(c[aa>>2]|0)|0}else{f=0}c[l>>2]=f;if((c[l>>2]|0)==0){if((c[(c[Mc>>2]|0)+64>>2]|0)!=0){c[l>>2]=rz(c[q>>2]|0,c[Mc>>2]|0,c[aa>>2]|0)|0;break d}c[Rc>>2]=c[(c[aa>>2]|0)+24>>2];c[Qc>>2]=c[(c[aa>>2]|0)+4>>2];f=c[Rc>>2]|0;if((a[(c[p>>2]|0)+3>>0]&16|0)!=0){Ff=c[(c[Mc>>2]|0)+12>>2]|0}else{Ff=0}c[l>>2]=jz(c[Nc>>2]|0,c[Qc>>2]|0,f,((f|0)<0)<<31>>31,1472,0,0,c[(c[p>>2]|0)+12>>2]|0,Ff)|0;c[(c[Mc>>2]|0)+68>>2]=0}break};case 5:{c[Uc>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[Vc>>2]=0;c[l>>2]=qz(c[q>>2]|0,c[Uc>>2]|0,Vc)|0;Ef=654;break};case 7:case 6:{if((c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2]|0)!=0){Ef=653}break};case 9:case 8:{Ef=653;break};case 108:{c[Wc>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[Xc>>2]=c[c[Wc>>2]>>2];c[Yc>>2]=c[(c[Wc>>2]|0)+8>>2];b[Yc+4>>1]=c[(c[p>>2]|0)+12>>2];a[Yc+6>>0]=0;c[Yc+8>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);c[l>>2]=mw(c[Xc>>2]|0,Yc,0,0,0,Zc)|0;if((c[l>>2]|0)==0?(c[Zc>>2]|0)==0:0){c[l>>2]=kz(c[Xc>>2]|0)|0}c[(c[Wc>>2]|0)+68>>2]=0;break};case 109:{c[dd>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[cd>>2]=c[c[dd>>2]>>2];b[(c[w>>2]|0)+28>>1]=1;c[l>>2]=Qy(c[dd>>2]|0)|0;if((c[l>>2]|0)!=0){break c}if((a[(c[dd>>2]|0)+25>>0]|0)==0){Jf=bd;c[Jf>>2]=0;c[Jf+4>>2]=0;c[l>>2]=sz(c[q>>2]|0,c[cd>>2]|0,bd)|0;if((c[l>>2]|0)!=0){break c}Gf=bd;Hf=c[Gf+4>>2]|0;Jf=(c[w>>2]|0)+16|0;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf;b[(c[w>>2]|0)+28>>1]=4}break};case 113:case 112:case 111:case 110:{c[gd>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[fd>>2]=c[(c[gd>>2]|0)+8>>2];b[fd+4>>1]=c[(c[p>>2]|0)+16>>2];f=fd+6|0;if((d[c[p>>2]>>0]|0)<112){a[f>>0]=-1}else{a[f>>0]=0}c[fd+8>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);c[lf>>2]=0;c[l>>2]=tz(c[gd>>2]|0,fd,lf)|0;f=c[lf>>2]|0;if((a[c[p>>2]>>0]&1|0)==0){c[lf>>2]=0-f}else{c[lf>>2]=f+1}if((c[lf>>2]|0)>0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}break};case 114:{c[jd>>2]=0;c[kd>>2]=c[(c[q>>2]|0)+4>>2];while(1){if((c[kd>>2]|0)==0){break}if((((c[(c[kd>>2]|0)+40>>2]|0)==-1108210269?((e[(c[kd>>2]|0)+88>>1]|0)>>>9&1|0)!=0:0)?((e[(c[kd>>2]|0)+88>>1]|0)>>>2&3|0)<2:0)?(c[(c[kd>>2]|0)+76>>2]|0)>=0:0){c[jd>>2]=(c[jd>>2]|0)+1}c[kd>>2]=c[(c[kd>>2]|0)+52>>2]}b[(c[w>>2]|0)+28>>1]=1;if((c[jd>>2]|0)>1){c[l>>2]=6;a[(c[k>>2]|0)+86>>0]=2;break d}c[hd>>2]=c[(c[p>>2]|0)+12>>2];c[id>>2]=0;c[l>>2]=uz(c[(c[(c[q>>2]|0)+16>>2]|0)+(c[hd>>2]<<4)+4>>2]|0,c[(c[p>>2]|0)+4>>2]|0,id)|0;b[(c[w>>2]|0)+28>>1]=4;Hf=c[id>>2]|0;Jf=(c[w>>2]|0)+16|0;c[Jf>>2]=Hf;c[Jf+4>>2]=((Hf|0)<0)<<31>>31;if((c[l>>2]|0)==0?(c[id>>2]|0)!=0:0){vz(c[q>>2]|0,c[hd>>2]|0,c[id>>2]|0,c[(c[p>>2]|0)+4>>2]|0);a[mc>>0]=(c[hd>>2]|0)+1}break};case 115:{c[ld>>2]=0;c[l>>2]=wz(c[(c[(c[q>>2]|0)+16>>2]|0)+(c[(c[p>>2]|0)+8>>2]<<4)+4>>2]|0,c[(c[p>>2]|0)+4>>2]|0,(c[(c[p>>2]|0)+12>>2]|0)!=0?ld:0)|0;if((c[(c[p>>2]|0)+12>>2]|0)!=0?(Jf=(c[k>>2]|0)+92|0,c[Jf>>2]=(c[Jf>>2]|0)+(c[ld>>2]|0),(c[(c[p>>2]|0)+12>>2]|0)>0):0){Hf=c[ld>>2]|0;Jf=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0)+16|0;Gf=Jf;Hf=bE(c[Gf>>2]|0,c[Gf+4>>2]|0,Hf|0,((Hf|0)<0)<<31>>31|0)|0;c[Jf>>2]=Hf;c[Jf+4>>2]=D}break};case 118:case 117:{c[nd>>2]=0;c[md>>2]=(c[(c[q>>2]|0)+16>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<4);if((d[c[p>>2]>>0]|0)==118){c[od>>2]=1}else{c[od>>2]=2}c[l>>2]=ez(c[(c[md>>2]|0)+4>>2]|0,nd,c[od>>2]|0)|0;Hf=c[nd>>2]|0;Jf=(c[w>>2]|0)+16|0;c[Jf>>2]=Hf;c[Jf+4>>2]=((Hf|0)<0)<<31>>31;break};case 116:{c[pd>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];if((c[(c[pd>>2]|0)+64>>2]|0)!=0){xz(c[q>>2]|0,c[(c[pd>>2]|0)+64>>2]|0);break d}else{c[l>>2]=yz(c[c[pd>>2]>>2]|0)|0;break d}};case 120:{c[l>>2]=Pr(c[q>>2]|0,c[(c[p>>2]|0)+4>>2]|0)|0;break};case 121:{zz(c[q>>2]|0,c[(c[p>>2]|0)+4>>2]|0,c[(c[p>>2]|0)+16>>2]|0);break};case 119:{c[sd>>2]=c[(c[p>>2]|0)+4>>2];c[td>>2]=(c[sd>>2]|0)==1?14808:14832;c[rd>>2]=c[q>>2];c[rd+8>>2]=c[(c[p>>2]|0)+4>>2];c[rd+4>>2]=(c[k>>2]|0)+44;Jf=c[q>>2]|0;Gf=c[td>>2]|0;Hf=c[(c[p>>2]|0)+16>>2]|0;c[g>>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+(c[sd>>2]<<4)>>2];c[g+4>>2]=Gf;c[g+8>>2]=Hf;c[qd>>2]=Oe(Jf,31632,g)|0;if((c[qd>>2]|0)==0){c[l>>2]=7}else{a[(c[q>>2]|0)+137>>0]=1;c[rd+12>>2]=0;c[l>>2]=ef(c[q>>2]|0,c[qd>>2]|0,6,rd,0)|0;if((c[l>>2]|0)==0){c[l>>2]=c[rd+12>>2]}Wb(c[q>>2]|0,c[qd>>2]|0);a[(c[q>>2]|0)+137>>0]=0}if((c[l>>2]|0)!=0){$c(c[q>>2]|0)}if((c[l>>2]|0)==7){Ef=900;break a}break};case 123:{Bz(c[q>>2]|0,c[(c[p>>2]|0)+4>>2]|0,c[(c[p>>2]|0)+16>>2]|0);break};case 124:{c[wd>>2]=c[(c[p>>2]|0)+8>>2];c[vd>>2]=Le(c[q>>2]|0,(c[wd>>2]|0)+1<<2)|0;if((c[vd>>2]|0)==0){Ef=900;break a}c[xd>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);c[Cd>>2]=0;while(1){f=c[Cd>>2]|0;if((c[Cd>>2]|0)>=(c[wd>>2]|0)){break}Jf=Hd((c[mf>>2]|0)+(f*40|0)|0)|0;c[(c[vd>>2]|0)+(c[Cd>>2]<<2)>>2]=Jf;c[Cd>>2]=(c[Cd>>2]|0)+1}c[(c[vd>>2]|0)+(f<<2)>>2]=0;c[ud>>2]=Cz(c[(c[(c[q>>2]|0)+16>>2]|0)+(d[(c[p>>2]|0)+3>>0]<<4)+4>>2]|0,c[vd>>2]|0,c[wd>>2]|0,c[(c[xd>>2]|0)+16>>2]|0,zd)|0;Wb(c[q>>2]|0,c[vd>>2]|0);Hf=c[zd>>2]|0;Jf=(c[xd>>2]|0)+16|0;Gf=Jf;Hf=ZD(c[Gf>>2]|0,c[Gf+4>>2]|0,Hf|0,((Hf|0)<0)<<31>>31|0)|0;c[Jf>>2]=Hf;c[Jf+4>>2]=D;Vd(c[mf>>2]|0);if((c[zd>>2]|0)!=0){if((c[ud>>2]|0)==0){Ef=900;break a}Qd(c[mf>>2]|0,c[ud>>2]|0,-1,1,13)|0}tk(c[mf>>2]|0,d[x>>0]|0)|0;break};case 122:{Az(c[q>>2]|0,c[(c[p>>2]|0)+4>>2]|0,c[(c[p>>2]|0)+16>>2]|0);break};case 125:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);c[aa>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);if((b[(c[mf>>2]|0)+28>>1]&32|0)==0?(Dz(c[mf>>2]|0),(b[(c[mf>>2]|0)+28>>1]&32|0)==0):0){Ef=900;break a}Jf=(c[aa>>2]|0)+16|0;Ez(c[(c[mf>>2]|0)+16>>2]|0,c[Jf>>2]|0,c[Jf+4>>2]|0);break};case 126:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);if((b[(c[mf>>2]|0)+28>>1]&32|0)!=0?(Fz(c[(c[mf>>2]|0)+16>>2]|0,Dd)|0)!=0:0){Ef=Dd;Sd((c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0)|0,c[Ef>>2]|0,c[Ef+4>>2]|0);Ef=16;break d}Vd(c[mf>>2]|0);c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1;Ef=16;break};case 127:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);c[G>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);c[Ed>>2]=c[(c[p>>2]|0)+16>>2];if((b[(c[mf>>2]|0)+28>>1]&32|0)==0?(Dz(c[mf>>2]|0),(b[(c[mf>>2]|0)+28>>1]&32|0)==0):0){Ef=900;break a}if((c[Ed>>2]|0)!=0?(Jf=(c[G>>2]|0)+16|0,c[Gd>>2]=Gz(c[(c[mf>>2]|0)+16>>2]|0,c[Ed>>2]|0,c[Jf>>2]|0,c[Jf+4>>2]|0)|0,(c[Gd>>2]|0)!=0):0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1;break d}if((c[Ed>>2]|0)>=0){Jf=(c[G>>2]|0)+16|0;Ez(c[(c[mf>>2]|0)+16>>2]|0,c[Jf>>2]|0,c[Jf+4>>2]|0)}break};case 128:{c[Ld>>2]=c[(c[p>>2]|0)+16>>2];c[Id>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);if((a[(c[p>>2]|0)+3>>0]|0)!=0){c[Pd>>2]=c[(c[Ld>>2]|0)+20>>2];c[Jd>>2]=c[(c[k>>2]|0)+176>>2];while(1){if((c[Jd>>2]|0)==0){break}if((c[(c[Jd>>2]|0)+24>>2]|0)==(c[Pd>>2]|0)){break}c[Jd>>2]=c[(c[Jd>>2]|0)+4>>2]}if((c[Jd>>2]|0)!=0){break d}}if((c[(c[k>>2]|0)+184>>2]|0)>=(c[(c[q>>2]|0)+128>>2]|0)){c[l>>2]=1;an((c[k>>2]|0)+44|0,c[q>>2]|0,31696,g);break d}k:do{if((b[(c[Id>>2]|0)+28>>1]&64|0)==0){c[Kd>>2]=(c[(c[Ld>>2]|0)+8>>2]|0)+(c[(c[Ld>>2]|0)+12>>2]|0);c[Od>>2]=72+((c[Kd>>2]|0)*40|0)+(c[(c[Ld>>2]|0)+12>>2]<<2)+(c[(c[Ld>>2]|0)+16>>2]|0);c[Jd>>2]=ne(c[q>>2]|0,c[Od>>2]|0)|0;if((c[Jd>>2]|0)==0){Ef=900;break a}yd(c[Id>>2]|0);b[(c[Id>>2]|0)+28>>1]=64;c[(c[Id>>2]|0)+16>>2]=c[Jd>>2];c[c[Jd>>2]>>2]=c[k>>2];c[(c[Jd>>2]|0)+60>>2]=c[Kd>>2];c[(c[Jd>>2]|0)+64>>2]=c[(c[Ld>>2]|0)+12>>2];c[(c[Jd>>2]|0)+44>>2]=c[n>>2];c[(c[Jd>>2]|0)+12>>2]=c[(c[k>>2]|0)+8>>2];c[(c[Jd>>2]|0)+52>>2]=c[(c[k>>2]|0)+28>>2];c[(c[Jd>>2]|0)+20>>2]=c[(c[k>>2]|0)+56>>2];c[(c[Jd>>2]|0)+40>>2]=c[(c[k>>2]|0)+36>>2];c[(c[Jd>>2]|0)+8>>2]=c[(c[k>>2]|0)+4>>2];c[(c[Jd>>2]|0)+48>>2]=c[(c[k>>2]|0)+32>>2];c[(c[Jd>>2]|0)+24>>2]=c[(c[Ld>>2]|0)+20>>2];c[(c[Jd>>2]|0)+16>>2]=c[(c[k>>2]|0)+200>>2];c[(c[Jd>>2]|0)+56>>2]=c[(c[k>>2]|0)+196>>2];c[Md>>2]=(c[Jd>>2]|0)+72+((c[(c[Jd>>2]|0)+60>>2]|0)*40|0);c[Nd>>2]=(c[Jd>>2]|0)+72;while(1){if((c[Nd>>2]|0)==(c[Md>>2]|0)){break k}b[(c[Nd>>2]|0)+28>>1]=128;c[c[Nd>>2]>>2]=c[q>>2];c[Nd>>2]=(c[Nd>>2]|0)+40}}else{c[Jd>>2]=c[(c[Id>>2]|0)+16>>2]}}while(0);Gf=(c[k>>2]|0)+184|0;c[Gf>>2]=(c[Gf>>2]|0)+1;c[(c[Jd>>2]|0)+4>>2]=c[(c[k>>2]|0)+176>>2];Gf=r;Hf=c[Gf+4>>2]|0;Jf=(c[Jd>>2]|0)+32|0;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf;c[(c[Jd>>2]|0)+68>>2]=c[(c[k>>2]|0)+92>>2];c[(c[k>>2]|0)+92>>2]=0;c[(c[k>>2]|0)+176>>2]=c[Jd>>2];Jf=(c[Jd>>2]|0)+72+ -40|0;c[ed>>2]=Jf;c[(c[k>>2]|0)+8>>2]=Jf;c[(c[k>>2]|0)+28>>2]=c[(c[Jd>>2]|0)+60>>2];c[(c[k>>2]|0)+36>>2]=c[(c[Jd>>2]|0)+64>>2]&65535;c[(c[k>>2]|0)+56>>2]=(c[ed>>2]|0)+(((c[(c[k>>2]|0)+28>>2]|0)+1|0)*40|0);Jf=c[c[Ld>>2]>>2]|0;c[u>>2]=Jf;c[(c[k>>2]|0)+4>>2]=Jf;c[(c[k>>2]|0)+32>>2]=c[(c[Ld>>2]|0)+4>>2];c[(c[k>>2]|0)+200>>2]=(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[k>>2]|0)+36>>2]<<2);c[(c[k>>2]|0)+196>>2]=c[(c[Ld>>2]|0)+16>>2];c[n>>2]=-1;_D(c[(c[k>>2]|0)+200>>2]|0,0,c[(c[k>>2]|0)+196>>2]|0)|0;break};case 129:{c[Rd>>2]=c[(c[k>>2]|0)+176>>2];c[Td>>2]=(c[(c[Rd>>2]|0)+12>>2]|0)+(((c[(c[p>>2]|0)+4>>2]|0)+(c[(c[(c[Rd>>2]|0)+8>>2]|0)+((c[(c[Rd>>2]|0)+44>>2]|0)*20|0)+4>>2]|0)|0)*40|0);Wm(c[w>>2]|0,c[Td>>2]|0,4096);break};case 130:{Gf=c[p>>2]|0;if((c[(c[q>>2]|0)+24>>2]&16777216|0)!=0){Hf=c[Gf+8>>2]|0;Jf=(c[q>>2]|0)+504|0;Gf=Jf;Hf=bE(c[Gf>>2]|0,c[Gf+4>>2]|0,Hf|0,((Hf|0)<0)<<31>>31|0)|0;c[Jf>>2]=Hf;c[Jf+4>>2]=D;break d}f=c[(c[p>>2]|0)+8>>2]|0;Ff=((f|0)<0)<<31>>31;if((c[Gf+4>>2]|0)!=0){Jf=(c[q>>2]|0)+496|0;Hf=Jf;Hf=bE(c[Hf>>2]|0,c[Hf+4>>2]|0,f|0,Ff|0)|0;c[Jf>>2]=Hf;c[Jf+4>>2]=D;break d}else{Jf=(c[k>>2]|0)+144|0;Hf=Jf;Hf=bE(c[Hf>>2]|0,c[Hf+4>>2]|0,f|0,Ff|0)|0;c[Jf>>2]=Hf;c[Jf+4>>2]=D;break d}};case 131:{if((c[(c[p>>2]|0)+4>>2]|0)!=0){Jf=(c[q>>2]|0)+496|0;if(!((c[Jf>>2]|0)==0&(c[Jf+4>>2]|0)==0)){break d}Jf=(c[q>>2]|0)+504|0;if(!((c[Jf>>2]|0)==0&(c[Jf+4>>2]|0)==0)){break d}c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1;break d}else{Jf=(c[k>>2]|0)+144|0;if(!((c[Jf>>2]|0)==0&(c[Jf+4>>2]|0)==0)){break d}Jf=(c[q>>2]|0)+504|0;if(!((c[Jf>>2]|0)==0&(c[Jf+4>>2]|0)==0)){break d}c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1;break d}};case 132:{if((c[(c[k>>2]|0)+176>>2]|0)!=0){c[Ud>>2]=c[(c[k>>2]|0)+176>>2];while(1){if((c[(c[Ud>>2]|0)+4>>2]|0)==0){break}c[Ud>>2]=c[(c[Ud>>2]|0)+4>>2]}c[mf>>2]=(c[(c[Ud>>2]|0)+12>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0)}else{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0)}Oy(c[mf>>2]|0)|0;c[aa>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);Oy(c[aa>>2]|0)|0;Hf=(c[mf>>2]|0)+16|0;Ff=c[Hf+4>>2]|0;Jf=(c[aa>>2]|0)+16|0;Gf=c[Jf+4>>2]|0;if((Ff|0)<(Gf|0)|((Ff|0)==(Gf|0)?(c[Hf>>2]|0)>>>0<(c[Jf>>2]|0)>>>0:0)){Gf=(c[aa>>2]|0)+16|0;Hf=c[Gf+4>>2]|0;Jf=(c[mf>>2]|0)+16|0;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf}break};case 134:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);Jf=(c[mf>>2]|0)+16|0;Hf=c[Jf+4>>2]|0;if((Hf|0)>0|(Hf|0)==0&(c[Jf>>2]|0)>>>0>0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}break};case 135:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);if((c[(c[mf>>2]|0)+20>>2]|0)<0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}break};case 136:{c[mf>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);Hf=c[(c[p>>2]|0)+12>>2]|0;Jf=(c[mf>>2]|0)+16|0;Gf=Jf;Hf=bE(c[Gf>>2]|0,c[Gf+4>>2]|0,Hf|0,((Hf|0)<0)<<31>>31|0)|0;c[Jf>>2]=Hf;c[Jf+4>>2]=D;Jf=(c[mf>>2]|0)+16|0;if((c[Jf>>2]|0)==0&(c[Jf+4>>2]|0)==0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}break};case 10:{c[Yd>>2]=d[(c[p>>2]|0)+3>>0]|0;c[$d>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);c[Zd>>2]=c[(c[k>>2]|0)+12>>2];c[Xd>>2]=0;while(1){if((c[Xd>>2]|0)>=(c[Yd>>2]|0)){break}c[(c[Zd>>2]|0)+(c[Xd>>2]<<2)>>2]=c[$d>>2];c[Xd>>2]=(c[Xd>>2]|0)+1;c[$d>>2]=(c[$d>>2]|0)+40}c[Wd>>2]=c[(c[p>>2]|0)+16>>2];Jf=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0)|0;c[_d>>2]=Jf;c[Wd+48>>2]=Jf;Jf=(c[_d>>2]|0)+24|0;c[Jf>>2]=(c[Jf>>2]|0)+1;b[Wd+36>>1]=1;c[Wd+12>>2]=0;c[Wd+44>>2]=0;c[Wd+40>>2]=0;c[Wd+8>>2]=c[q>>2];c[Wd+64>>2]=0;c[Wd+52>>2]=0;a[Wd+68>>0]=0;if((b[(c[Wd>>2]|0)+2>>1]&32|0)!=0){c[Wd+52>>2]=c[(c[p>>2]|0)+ -20+16>>2]}vb[c[(c[Wd>>2]|0)+16>>2]&63](Wd,c[Yd>>2]|0,c[Zd>>2]|0);if((c[Wd+64>>2]|0)!=0){Hf=(c[k>>2]|0)+44|0;Jf=c[q>>2]|0;c[g>>2]=Bd(Wd+8|0)|0;an(Hf,Jf,1456,g);c[l>>2]=c[Wd+64>>2]}if((a[Wd+68>>0]|0)!=0?(c[Xd>>2]=c[(c[p>>2]|0)+ -20+4>>2],(c[Xd>>2]|0)!=0):0){Sd((c[ed>>2]|0)+((c[Xd>>2]|0)*40|0)|0,1,0)}yd(Wd+8|0);break};case 137:{c[be>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);c[l>>2]=vy(c[be>>2]|0,c[(c[p>>2]|0)+16>>2]|0)|0;if((c[l>>2]|0)!=0){Hf=(c[k>>2]|0)+44|0;Jf=c[q>>2]|0;c[g>>2]=Bd(c[be>>2]|0)|0;an(Hf,Jf,1456,g)}tk(c[be>>2]|0,d[x>>0]|0)|0;if((Gy(c[be>>2]|0)|0)!=0){Ef=899;break c}break};case 12:{c[de>>2]=c[(c[p>>2]|0)+12>>2];c[ee>>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<4)+4>>2];c[ce>>2]=Rb(c[ee>>2]|0)|0;c[fe>>2]=Sc(c[ce>>2]|0)|0;if((c[de>>2]|0)==-1){c[de>>2]=c[fe>>2]}if((Hz(c[ce>>2]|0)|0)==0){c[de>>2]=c[fe>>2]}c[ge>>2]=ng(c[ce>>2]|0,1)|0;do{if((c[de>>2]|0)==5){if((Mb(c[ge>>2]|0)|0)!=0?(Iz(c[ce>>2]|0)|0)!=0:0){break}c[de>>2]=c[fe>>2]}}while(0);do{if((c[de>>2]|0)!=(c[fe>>2]|0)){if((c[fe>>2]|0)!=5?(c[de>>2]|0)!=5:0){break}if((a[(c[q>>2]|0)+62>>0]|0)!=0?(c[(c[q>>2]|0)+144>>2]|0)<=1:0){do{if((c[fe>>2]|0)==5){c[l>>2]=Jz(c[ce>>2]|0)|0;if((c[l>>2]|0)!=0){break}Kz(c[ce>>2]|0,c[de>>2]|0)|0}else{if((c[fe>>2]|0)!=4){break}Kz(c[ce>>2]|0,2)|0}}while(0);if((c[l>>2]|0)!=0){break}c[l>>2]=ad(c[ee>>2]|0,(c[de>>2]|0)==5?2:1)|0;break}c[l>>2]=1;Hf=(c[k>>2]|0)+44|0;Jf=c[q>>2]|0;c[g>>2]=(c[de>>2]|0)==5?31792:31800;an(Hf,Jf,31736,g);break d}}while(0);if((c[l>>2]|0)!=0){c[de>>2]=c[fe>>2]}c[de>>2]=Kz(c[ce>>2]|0,c[de>>2]|0)|0;c[w>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+8>>2]|0)*40|0);b[(c[w>>2]|0)+28>>1]=2562;Jf=yt(c[de>>2]|0)|0;c[(c[w>>2]|0)+4>>2]=Jf;Jf=Mb(c[(c[w>>2]|0)+4>>2]|0)|0;c[(c[w>>2]|0)+24>>2]=Jf;a[(c[w>>2]|0)+30>>0]=1;tk(c[w>>2]|0,d[x>>0]|0)|0;break};case 11:{c[je>>2]=0;c[je+8>>2]=-1;c[je+4>>2]=-1;c[l>>2]=Vf(c[q>>2]|0,c[(c[p>>2]|0)+4>>2]|0,c[(c[p>>2]|0)+8>>2]|0,je+4|0,je+8|0)|0;if((c[l>>2]|0)==5){c[l>>2]=0;c[je>>2]=1}c[ie>>2]=0;c[ke>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);while(1){if((c[ie>>2]|0)>=3){break d}Jf=c[je+(c[ie>>2]<<2)>>2]|0;Sd(c[ke>>2]|0,Jf,((Jf|0)<0)<<31>>31);c[ie>>2]=(c[ie>>2]|0)+1;c[ke>>2]=(c[ke>>2]|0)+40}};case 138:{c[oe>>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<4)+4>>2];c[l>>2]=Mz(c[oe>>2]|0)|0;if((c[l>>2]|0)==101){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1;c[l>>2]=0}break};case 139:{if((c[(c[p>>2]|0)+4>>2]|0)!=0){Jf=(c[k>>2]|0)+88|0;b[Jf>>1]=b[Jf>>1]&-33|32;break d}else{bf(c[q>>2]|0);break d}};case 13:{c[l>>2]=Lz((c[k>>2]|0)+44|0,c[q>>2]|0)|0;break};case 140:{a[re>>0]=c[(c[p>>2]|0)+12>>2];if((d[re>>0]|0)==0?0!=(c[(c[q>>2]|0)+24>>2]&16384|0):0){break d}c[qe>>2]=c[(c[p>>2]|0)+4>>2];c[l>>2]=Nz(c[(c[(c[q>>2]|0)+16>>2]|0)+(c[qe>>2]<<4)+4>>2]|0,c[(c[p>>2]|0)+8>>2]|0,a[re>>0]|0)|0;if((c[l>>2]&255|0)==6){c[pe>>2]=c[(c[p>>2]|0)+16>>2];Hf=(c[k>>2]|0)+44|0;Jf=c[q>>2]|0;c[g>>2]=c[pe>>2];an(Hf,Jf,31808,g)}break};case 142:{c[l>>2]=Pz(c[q>>2]|0,c[(c[p>>2]|0)+4>>2]|0,c[(c[p>>2]|0)+16>>2]|0,(c[k>>2]|0)+44|0)|0;break};case 148:{Jf=(c[k>>2]|0)+88|0;b[Jf>>1]=b[Jf>>1]&-13|8;c[l>>2]=Qz(c[q>>2]|0,c[(c[p>>2]|0)+4>>2]|0,c[(c[p>>2]|0)+16>>2]|0)|0;Jf=(c[k>>2]|0)+88|0;b[Jf>>1]=b[Jf>>1]&-13;break};case 141:{c[se>>2]=c[(c[p>>2]|0)+16>>2];c[l>>2]=Oz(c[q>>2]|0,c[se>>2]|0)|0;if((c[se>>2]|0)!=0){nz(c[k>>2]|0,c[(c[se>>2]|0)+8>>2]|0)}break};case 150:{c[we>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[te>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);if((a[(c[we>>2]|0)+25>>0]|0)!=0){Vd(c[te>>2]|0);break d}c[xe>>2]=c[c[(c[we>>2]|0)+32>>2]>>2];c[ve>>2]=c[c[xe>>2]>>2];Gf=ue+0|0;f=Gf+72|0;do{c[Gf>>2]=0;Gf=Gf+4|0}while((Gf|0)<(f|0));ty(ue+8|0,c[te>>2]|0);b[ue+36>>1]=e[ue+36>>1]&-16896|1;c[l>>2]=pb[c[(c[ve>>2]|0)+44>>2]&15](c[(c[we>>2]|0)+32>>2]|0,ue,c[(c[p>>2]|0)+8>>2]|0)|0;nz(c[k>>2]|0,c[xe>>2]|0);if((c[ue+64>>2]|0)!=0){c[l>>2]=c[ue+64>>2]}tk(ue+8|0,d[x>>0]|0)|0;ty(c[te>>2]|0,ue+8|0);if((Gy(c[te>>2]|0)|0)!=0){Ef=899;break c}break};case 149:{c[ze>>2]=0;c[ye>>2]=0;c[Be>>2]=c[(c[(c[p>>2]|0)+16>>2]|0)+8>>2];c[Ae>>2]=c[c[Be>>2]>>2];c[l>>2]=zb[c[(c[Ae>>2]|0)+24>>2]&63](c[Be>>2]|0,ye)|0;nz(c[k>>2]|0,c[Be>>2]|0);if(0==(c[l>>2]|0)){c[c[ye>>2]>>2]=c[Be>>2];c[ze>>2]=bz(c[k>>2]|0,c[(c[p>>2]|0)+4>>2]|0,0,-1,0)|0;if((c[ze>>2]|0)!=0){c[(c[ze>>2]|0)+32>>2]=c[ye>>2];break d}else{a[(c[q>>2]|0)+64>>0]=1;ub[c[(c[Ae>>2]|0)+28>>2]&31](c[ye>>2]|0)|0;break d}}break};case 14:{c[Pe>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);c[Ne>>2]=(c[Pe>>2]|0)+40;c[Ce>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[Fe>>2]=c[(c[Ce>>2]|0)+32>>2];c[Je>>2]=c[c[Fe>>2]>>2];c[Ee>>2]=c[c[Je>>2]>>2];c[He>>2]=c[(c[Ne>>2]|0)+16>>2];c[Ge>>2]=c[(c[Pe>>2]|0)+16>>2];c[De>>2]=0;c[Ie>>2]=c[(c[k>>2]|0)+12>>2];c[Me>>2]=0;while(1){if((c[Me>>2]|0)>=(c[He>>2]|0)){break}c[(c[Ie>>2]|0)+(c[Me>>2]<<2)>>2]=(c[Ne>>2]|0)+(((c[Me>>2]|0)+1|0)*40|0);c[Me>>2]=(c[Me>>2]|0)+1}Jf=(c[k>>2]|0)+88|0;b[Jf>>1]=b[Jf>>1]&-13|4;c[l>>2]=Ab[c[(c[Ee>>2]|0)+32>>2]&15](c[Fe>>2]|0,c[Ge>>2]|0,c[(c[p>>2]|0)+16>>2]|0,c[He>>2]|0,c[Ie>>2]|0)|0;Jf=(c[k>>2]|0)+88|0;b[Jf>>1]=b[Jf>>1]&-13;nz(c[k>>2]|0,c[Je>>2]|0);if((c[l>>2]|0)==0){c[De>>2]=ub[c[(c[Ee>>2]|0)+40>>2]&31](c[Fe>>2]|0)|0}if((c[De>>2]|0)!=0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}a[(c[Ce>>2]|0)+25>>0]=0;break};case 152:{c[Qe>>2]=c[(c[(c[p>>2]|0)+16>>2]|0)+8>>2];c[Re>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0);c[l>>2]=tk(c[Re>>2]|0,1)|0;if((c[l>>2]|0)==0){c[l>>2]=zb[c[(c[c[Qe>>2]>>2]|0)+76>>2]&63](c[Qe>>2]|0,c[(c[Re>>2]|0)+4>>2]|0)|0;nz(c[k>>2]|0,c[Qe>>2]|0);Jf=(c[k>>2]|0)+88|0;b[Jf>>1]=b[Jf>>1]&-33}break};case 151:{c[Se>>2]=0;c[Ue>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];if((a[(c[Ue>>2]|0)+25>>0]|0)==0){c[Ve>>2]=c[c[(c[Ue>>2]|0)+32>>2]>>2];c[Te>>2]=c[c[Ve>>2]>>2];Jf=(c[k>>2]|0)+88|0;b[Jf>>1]=b[Jf>>1]&-13|4;c[l>>2]=ub[c[(c[Te>>2]|0)+36>>2]&31](c[(c[Ue>>2]|0)+32>>2]|0)|0;Jf=(c[k>>2]|0)+88|0;b[Jf>>1]=b[Jf>>1]&-13;nz(c[k>>2]|0,c[Ve>>2]|0);if((c[l>>2]|0)==0){c[Se>>2]=ub[c[(c[Te>>2]|0)+40>>2]&31](c[(c[Ue>>2]|0)+32>>2]|0)|0}if((c[Se>>2]|0)!=0){Ef=16}else{c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1;Ef=16}}break};case 15:{c[Ye>>2]=c[(c[(c[p>>2]|0)+16>>2]|0)+8>>2];c[Xe>>2]=c[c[Ye>>2]>>2];c[Ze>>2]=c[(c[p>>2]|0)+8>>2];if((c[(c[Xe>>2]|0)+52>>2]|0)!=0){a[$e>>0]=a[(c[q>>2]|0)+68>>0]|0;c[_e>>2]=c[(c[k>>2]|0)+12>>2];c[df>>2]=(c[ed>>2]|0)+((c[(c[p>>2]|0)+12>>2]|0)*40|0);c[cf>>2]=0;while(1){if((c[cf>>2]|0)>=(c[Ze>>2]|0)){break}c[(c[_e>>2]|0)+(c[cf>>2]<<2)>>2]=c[df>>2];c[df>>2]=(c[df>>2]|0)+40;c[cf>>2]=(c[cf>>2]|0)+1}a[(c[q>>2]|0)+68>>0]=a[(c[p>>2]|0)+3>>0]|0;c[l>>2]=xb[c[(c[Xe>>2]|0)+52>>2]&15](c[Ye>>2]|0,c[Ze>>2]|0,c[_e>>2]|0,We)|0;a[(c[q>>2]|0)+68>>0]=a[$e>>0]|0;nz(c[k>>2]|0,c[Ye>>2]|0);if((c[l>>2]|0)==0?(c[(c[p>>2]|0)+4>>2]|0)!=0:0){Hf=We;Gf=c[Hf>>2]|0;Hf=c[Hf+4>>2]|0;Jf=r;c[Jf>>2]=Gf;c[Jf+4>>2]=Hf;Jf=(c[q>>2]|0)+32|0;c[Jf>>2]=Gf;c[Jf+4>>2]=Hf}if((c[l>>2]&255|0)==19?(d[(c[(c[p>>2]|0)+16>>2]|0)+16>>0]|0)!=0:0){if((d[(c[p>>2]|0)+3>>0]|0)==4){c[l>>2]=0;break d}if((d[(c[p>>2]|0)+3>>0]|0)==5){f=2}else{f=d[(c[p>>2]|0)+3>>0]|0}a[(c[k>>2]|0)+86>>0]=f;break d}Jf=(c[k>>2]|0)+92|0;c[Jf>>2]=(c[Jf>>2]|0)+1}break};case 155:{if((c[(c[p>>2]|0)+8>>2]|0)!=0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}if((c[(c[q>>2]|0)+164>>2]|0)!=0?((e[(c[k>>2]|0)+88>>1]|0)>>>11&1|0)==0:0){if((c[(c[p>>2]|0)+16>>2]|0)!=0){f=c[(c[p>>2]|0)+16>>2]|0}else{f=c[(c[k>>2]|0)+168>>2]|0}c[ff>>2]=f;if((f|0)!=0){c[gf>>2]=Sz(c[k>>2]|0,c[ff>>2]|0)|0;sb[c[(c[q>>2]|0)+164>>2]&7](c[(c[q>>2]|0)+168>>2]|0,c[gf>>2]|0);Wb(c[q>>2]|0,c[gf>>2]|0)}}break};case 153:{Hf=Tc(c[(c[(c[q>>2]|0)+16>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<4)+4>>2]|0)|0;Jf=(c[w>>2]|0)+16|0;c[Jf>>2]=Hf;c[Jf+4>>2]=0;break};case 154:{c[hf>>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<4)+4>>2];c[jf>>2]=0;if((c[(c[p>>2]|0)+12>>2]|0)!=0?(c[jf>>2]=Tc(c[hf>>2]|0)|0,(c[jf>>2]|0)>>>0<(c[(c[p>>2]|0)+12>>2]|0)>>>0):0){c[jf>>2]=c[(c[p>>2]|0)+12>>2]}Hf=Rz(c[hf>>2]|0,c[jf>>2]|0)|0;Jf=(c[w>>2]|0)+16|0;c[Jf>>2]=Hf;c[Jf+4>>2]=((Hf|0)<0)<<31>>31;break};default:{}}}while(0);if((Ef|0)==28){Ef=0;if((c[(c[p>>2]|0)+4>>2]|0)!=0){Ef=33;break}if((c[(c[k>>2]|0)+176>>2]|0)==0){Ef=33;break}c[kf>>2]=c[(c[k>>2]|0)+176>>2];c[(c[k>>2]|0)+176>>2]=c[(c[kf>>2]|0)+4>>2];Gf=(c[k>>2]|0)+184|0;c[Gf>>2]=(c[Gf>>2]|0)+ -1;Dy(c[q>>2]|0,c[(c[k>>2]|0)+92>>2]|0);c[n>>2]=Ey(c[kf>>2]|0)|0;Gf=(c[q>>2]|0)+32|0;Hf=c[Gf+4>>2]|0;Jf=r;c[Jf>>2]=c[Gf>>2];c[Jf+4>>2]=Hf;if((c[(c[p>>2]|0)+8>>2]|0)==4){c[n>>2]=(c[(c[(c[k>>2]|0)+4>>2]|0)+((c[n>>2]|0)*20|0)+8>>2]|0)-1}c[u>>2]=c[(c[k>>2]|0)+4>>2];c[ed>>2]=c[(c[k>>2]|0)+8>>2]}else if((Ef|0)==57){Ef=0;b[(c[w>>2]|0)+28>>1]=2562;c[(c[w>>2]|0)+4>>2]=c[(c[p>>2]|0)+16>>2];c[(c[w>>2]|0)+24>>2]=c[(c[p>>2]|0)+4>>2];a[(c[w>>2]|0)+30>>0]=a[x>>0]|0}else if((Ef|0)==646){Ef=0;c[Cf>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[Bf>>2]=1;if((c[(c[Cf>>2]|0)+64>>2]|0)!=0){c[l>>2]=oz(c[q>>2]|0,c[Cf>>2]|0,Bf)|0}else{c[Df>>2]=c[c[Cf>>2]>>2];c[l>>2]=pz(c[Df>>2]|0,Bf)|0;a[(c[Cf>>2]|0)+27>>0]=0;c[(c[Cf>>2]|0)+68>>2]=0;a[(c[Cf>>2]|0)+26>>0]=0}a[(c[Cf>>2]|0)+25>>0]=c[Bf>>2];if((c[Bf>>2]|0)!=0){c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1}}else if((Ef|0)==653){c[Uc>>2]=c[(c[(c[k>>2]|0)+56>>2]|0)+(c[(c[p>>2]|0)+4>>2]<<2)>>2];c[Vc>>2]=c[(c[p>>2]|0)+12>>2];c[l>>2]=zb[c[(c[p>>2]|0)+16>>2]&63](c[c[Uc>>2]>>2]|0,Vc)|0;Ef=654}if((Ef|0)==654){c[(c[Uc>>2]|0)+68>>2]=0;Ef=(c[Uc>>2]|0)+25|0;if((c[Vc>>2]|0)==0){a[Ef>>0]=0;c[n>>2]=(c[(c[p>>2]|0)+8>>2]|0)-1;Jf=(c[k>>2]|0)+108+(d[(c[p>>2]|0)+3>>0]<<2)|0;c[Jf>>2]=(c[Jf>>2]|0)+1}else{a[Ef>>0]=1}a[(c[Uc>>2]|0)+26>>0]=0;Ef=16}if((Ef|0)==16){Ef=0;if((c[(c[q>>2]|0)+232>>2]|0)!=0){break b}if(((c[(c[q>>2]|0)+284>>2]|0)!=0?(c[o>>2]|0)>>>0>=(c[A>>2]|0)>>>0:0)?(c[A>>2]=(c[o>>2]|0)+(c[(c[q>>2]|0)+292>>2]|0)-(((c[o>>2]|0)>>>0)%((c[(c[q>>2]|0)+292>>2]|0)>>>0)|0),(ub[c[(c[q>>2]|0)+284>>2]&31](c[(c[q>>2]|0)+288>>2]|0)|0)!=0):0){Ef=20;break}}c[n>>2]=(c[n>>2]|0)+1}switch(Ef|0){case 20:{c[l>>2]=9;break a};case 33:{c[(c[k>>2]|0)+80>>2]=c[(c[p>>2]|0)+4>>2];a[(c[k>>2]|0)+86>>0]=c[(c[p>>2]|0)+8>>2];c[(c[k>>2]|0)+76>>2]=c[n>>2];if((c[(c[k>>2]|0)+80>>2]|0)!=0){if((a[(c[p>>2]|0)+3>>0]|0)!=0){c[j>>2]=c[31120+((d[(c[p>>2]|0)+3>>0]|0)-1<<2)>>2]}else{c[j>>2]=0}c[s>>2]=31184;if((c[j>>2]|0)!=0?(c[(c[p>>2]|0)+16>>2]|0)!=0:0){Hf=(c[k>>2]|0)+44|0;Jf=c[q>>2]|0;Gf=c[(c[p>>2]|0)+16>>2]|0;c[g>>2]=c[j>>2];c[g+4>>2]=Gf;an(Hf,Jf,31208,g)}else{Ef=40}do{if((Ef|0)==40){u=(c[k>>2]|0)+44|0;t=c[q>>2]|0;if((c[(c[p>>2]|0)+16>>2]|0)!=0){c[g>>2]=c[(c[p>>2]|0)+16>>2];an(u,t,1456,g);break}else{c[g>>2]=c[j>>2];an(u,t,31240,g);break}}}while(0);Hf=c[(c[p>>2]|0)+4>>2]|0;Jf=c[s>>2]|0;Ff=c[(c[k>>2]|0)+168>>2]|0;Gf=c[(c[k>>2]|0)+44>>2]|0;c[g>>2]=c[n>>2];c[g+4>>2]=Ff;c[g+8>>2]=Gf;rc(Hf,Jf,g)}c[l>>2]=Fy(c[k>>2]|0)|0;if((c[l>>2]|0)==5){c[l>>2]=5;c[(c[k>>2]|0)+80>>2]=5;Jf=r;Ff=Jf;Ff=c[Ff>>2]|0;Jf=Jf+4|0;Jf=c[Jf>>2]|0;Hf=c[q>>2]|0;Hf=Hf+32|0;Gf=Hf;c[Gf>>2]=Ff;Hf=Hf+4|0;c[Hf>>2]=Jf;Hf=c[o>>2]|0;Jf=c[k>>2]|0;Jf=Jf+108|0;Jf=Jf+16|0;Gf=c[Jf>>2]|0;Hf=Gf+Hf|0;c[Jf>>2]=Hf;Jf=c[l>>2]|0;i=m;return Jf|0}else{c[l>>2]=(c[(c[k>>2]|0)+80>>2]|0)!=0?1:101;Jf=r;Ff=Jf;Ff=c[Ff>>2]|0;Jf=Jf+4|0;Jf=c[Jf>>2]|0;Hf=c[q>>2]|0;Hf=Hf+32|0;Gf=Hf;c[Gf>>2]=Ff;Hf=Hf+4|0;c[Hf>>2]=Jf;Hf=c[o>>2]|0;Jf=c[k>>2]|0;Jf=Jf+108|0;Jf=Jf+16|0;Gf=c[Jf>>2]|0;Hf=Gf+Hf|0;c[Jf>>2]=Hf;Jf=c[l>>2]|0;i=m;return Jf|0}};case 80:{c[l>>2]=9;break a};case 83:{c[(c[k>>2]|0)+72>>2]=(c[(c[k>>2]|0)+72>>2]|0)+2|1;Jf=(c[ed>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)*40|0)|0;c[(c[k>>2]|0)+20>>2]=Jf;c[nf>>2]=Jf;c[of>>2]=0;while(1){if((c[of>>2]|0)>=(c[(c[p>>2]|0)+8>>2]|0)){break}if((b[(c[nf>>2]|0)+((c[of>>2]|0)*40|0)+28>>1]&4096|0)!=0?(vk((c[nf>>2]|0)+((c[of>>2]|0)*40|0)|0)|0)!=0:0){Ef=900;break a}Jy((c[nf>>2]|0)+((c[of>>2]|0)*40|0)|0)|0;c[of>>2]=(c[of>>2]|0)+1}if((a[(c[q>>2]|0)+64>>0]|0)!=0){Ef=900;break a}c[(c[k>>2]|0)+76>>2]=(c[n>>2]|0)+1;c[l>>2]=100;Jf=r;Ff=Jf;Ff=c[Ff>>2]|0;Jf=Jf+4|0;Jf=c[Jf>>2]|0;Hf=c[q>>2]|0;Hf=Hf+32|0;Gf=Hf;c[Gf>>2]=Ff;Hf=Hf+4|0;c[Hf>>2]=Jf;Hf=c[o>>2]|0;Jf=c[k>>2]|0;Jf=Jf+108|0;Jf=Jf+16|0;Gf=c[Jf>>2]|0;Hf=Gf+Hf|0;c[Jf>>2]=Hf;Jf=c[l>>2]|0;i=m;return Jf|0};case 146:{yd(na+8|0);Ef=900;break a};case 177:{c[l>>2]=20;break};case 395:{c[(c[k>>2]|0)+76>>2]=c[n>>2];a[(c[q>>2]|0)+62>>0]=0;c[l>>2]=5;c[(c[k>>2]|0)+80>>2]=5;Jf=r;Ff=Jf;Ff=c[Ff>>2]|0;Jf=Jf+4|0;Jf=c[Jf>>2]|0;Hf=c[q>>2]|0;Hf=Hf+32|0;Gf=Hf;c[Gf>>2]=Ff;Hf=Hf+4|0;c[Hf>>2]=Jf;Hf=c[o>>2]|0;Jf=c[k>>2]|0;Jf=Jf+108|0;Jf=Jf+16|0;Gf=c[Jf>>2]|0;Hf=Gf+Hf|0;c[Jf>>2]=Hf;Jf=c[l>>2]|0;i=m;return Jf|0};case 423:{if((c[fb>>2]|0)==0){Jf=Hy(c[k>>2]|0,1)|0;c[l>>2]=Jf;if((Jf|0)!=0){Jf=r;Ff=Jf;Ff=c[Ff>>2]|0;Jf=Jf+4|0;Jf=c[Jf>>2]|0;Hf=c[q>>2]|0;Hf=Hf+32|0;Gf=Hf;c[Gf>>2]=Ff;Hf=Hf+4|0;c[Hf>>2]=Jf;Hf=c[o>>2]|0;Jf=c[k>>2]|0;Jf=Jf+108|0;Jf=Jf+16|0;Gf=c[Jf>>2]|0;Hf=Gf+Hf|0;c[Jf>>2]=Hf;Jf=c[l>>2]|0;i=m;return Jf|0}a[(c[q>>2]|0)+62>>0]=c[db>>2];if((Fy(c[k>>2]|0)|0)==5){c[(c[k>>2]|0)+76>>2]=c[n>>2];a[(c[q>>2]|0)+62>>0]=1-(c[db>>2]|0);c[l>>2]=5;c[(c[k>>2]|0)+80>>2]=5;Jf=r;Ff=Jf;Ff=c[Ff>>2]|0;Jf=Jf+4|0;Jf=c[Jf>>2]|0;Hf=c[q>>2]|0;Hf=Hf+32|0;Gf=Hf;c[Gf>>2]=Ff;Hf=Hf+4|0;c[Hf>>2]=Jf;Hf=c[o>>2]|0;Jf=c[k>>2]|0;Jf=Jf+108|0;Jf=Jf+16|0;Gf=c[Jf>>2]|0;Hf=Gf+Hf|0;c[Jf>>2]=Hf;Jf=c[l>>2]|0;i=m;return Jf|0}}else{yk(c[q>>2]|0,516);a[(c[q>>2]|0)+62>>0]=1}zk(c[q>>2]|0);if((c[(c[k>>2]|0)+80>>2]|0)==0){c[l>>2]=101;Jf=r;Ff=Jf;Ff=c[Ff>>2]|0;Jf=Jf+4|0;Jf=c[Jf>>2]|0;Hf=c[q>>2]|0;Hf=Hf+32|0;Gf=Hf;c[Gf>>2]=Ff;Hf=Hf+4|0;c[Hf>>2]=Jf;Hf=c[o>>2]|0;Jf=c[k>>2]|0;Jf=Jf+108|0;Jf=Jf+16|0;Gf=c[Jf>>2]|0;Hf=Gf+Hf|0;c[Jf>>2]=Hf;Jf=c[l>>2]|0;i=m;return Jf|0}else{c[l>>2]=1;Jf=r;Ff=Jf;Ff=c[Ff>>2]|0;Jf=Jf+4|0;Jf=c[Jf>>2]|0;Hf=c[q>>2]|0;Hf=Hf+32|0;Gf=Hf;c[Gf>>2]=Ff;Hf=Hf+4|0;c[Hf>>2]=Jf;Hf=c[o>>2]|0;Jf=c[k>>2]|0;Jf=Jf+108|0;Jf=Jf+16|0;Gf=c[Jf>>2]|0;Hf=Gf+Hf|0;c[Jf>>2]=Hf;Jf=c[l>>2]|0;i=m;return Jf|0}};case 436:{c[l>>2]=8;break};case 439:{c[(c[k>>2]|0)+76>>2]=c[n>>2];c[l>>2]=5;c[(c[k>>2]|0)+80>>2]=5;Jf=r;Ff=Jf;Ff=c[Ff>>2]|0;Jf=Jf+4|0;Jf=c[Jf>>2]|0;Hf=c[q>>2]|0;Hf=Hf+32|0;Gf=Hf;c[Gf>>2]=Ff;Hf=Hf+4|0;c[Hf>>2]=Jf;Hf=c[o>>2]|0;Jf=c[k>>2]|0;Jf=Jf+108|0;Jf=Jf+16|0;Gf=c[Jf>>2]|0;Hf=Gf+Hf|0;c[Jf>>2]=Hf;Jf=c[l>>2]|0;i=m;return Jf|0};case 473:{c[l>>2]=ej(70771)|0;break};case 572:{c[l>>2]=13;break};case 586:{c[l>>2]=13;break};case 898:{Jf=r;Ff=Jf;Ff=c[Ff>>2]|0;Jf=Jf+4|0;Jf=c[Jf>>2]|0;Hf=c[q>>2]|0;Hf=Hf+32|0;Gf=Hf;c[Gf>>2]=Ff;Hf=Hf+4|0;c[Hf>>2]=Jf;Hf=c[o>>2]|0;Jf=c[k>>2]|0;Jf=Jf+108|0;Jf=Jf+16|0;Gf=c[Jf>>2]|0;Hf=Gf+Hf|0;c[Jf>>2]=Hf;Jf=c[l>>2]|0;i=m;return Jf|0};case 899:{an((c[k>>2]|0)+44|0,c[q>>2]|0,1432,g);c[l>>2]=18;break a}}if((a[(c[q>>2]|0)+64>>0]|0)!=0){c[l>>2]=7}if((c[l>>2]|0)==3082){break a}Hf=(c[k>>2]|0)+44|0;Jf=c[q>>2]|0;c[g>>2]=ae(c[l>>2]|0)|0;an(Hf,Jf,1456,g);break a}}while(0);c[l>>2]=9;c[(c[k>>2]|0)+80>>2]=c[l>>2];Hf=(c[k>>2]|0)+44|0;Jf=c[q>>2]|0;c[g>>2]=ae(c[l>>2]|0)|0;an(Hf,Jf,1456,g)}}while(0);if((Ef|0)==900){a[(c[q>>2]|0)+64>>0]=1;an((c[k>>2]|0)+44|0,c[q>>2]|0,5352,g);c[l>>2]=7}c[(c[k>>2]|0)+80>>2]=c[l>>2];Jf=c[l>>2]|0;Gf=c[(c[k>>2]|0)+168>>2]|0;Hf=c[(c[k>>2]|0)+44>>2]|0;c[g>>2]=c[n>>2];c[g+4>>2]=Gf;c[g+8>>2]=Hf;rc(Jf,31840,g);Fy(c[k>>2]|0)|0;if((c[l>>2]|0)==3082){a[(c[q>>2]|0)+64>>0]=1}c[l>>2]=1;if((d[mc>>0]|0)<=0){Jf=r;Ff=Jf;Ff=c[Ff>>2]|0;Jf=Jf+4|0;Jf=c[Jf>>2]|0;Hf=c[q>>2]|0;Hf=Hf+32|0;Gf=Hf;c[Gf>>2]=Ff;Hf=Hf+4|0;c[Hf>>2]=Jf;Hf=c[o>>2]|0;Jf=c[k>>2]|0;Jf=Jf+108|0;Jf=Jf+16|0;Gf=c[Jf>>2]|0;Hf=Gf+Hf|0;c[Jf>>2]=Hf;Jf=c[l>>2]|0;i=m;return Jf|0}Kr(c[q>>2]|0,(d[mc>>0]|0)-1|0);Jf=r;Ff=Jf;Ff=c[Ff>>2]|0;Jf=Jf+4|0;Jf=c[Jf>>2]|0;Hf=c[q>>2]|0;Hf=Hf+32|0;Gf=Hf;c[Gf>>2]=Ff;Hf=Hf+4|0;c[Hf>>2]=Jf;Hf=c[o>>2]|0;Jf=c[k>>2]|0;Jf=Jf+108|0;Jf=Jf+16|0;Gf=c[Jf>>2]|0;Hf=Gf+Hf|0;c[Jf>>2]=Hf;Jf=c[l>>2]|0;i=m;return Jf|0}function zy(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;g=b+16|0;d=b+12|0;h=b+8|0;e=b+4|0;f=b;c[g>>2]=a;c[d>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[g>>2]|0)+20>>2]|0)){break}c[e>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+4>>2];if((((c[e>>2]|0)!=0?(c[f>>2]=By(Rb(c[e>>2]|0)|0)|0,(c[(c[g>>2]|0)+204>>2]|0)!=0):0)?(c[f>>2]|0)>0:0)?(c[d>>2]|0)==0:0){c[d>>2]=xb[c[(c[g>>2]|0)+204>>2]&15](c[(c[g>>2]|0)+208>>2]|0,c[g>>2]|0,c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)>>2]|0,c[f>>2]|0)|0}c[h>>2]=(c[h>>2]|0)+1}i=b;return c[d>>2]|0}function Ay(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;g=d+12|0;f=d+8|0;e=d+4|0;h=d+16|0;c[g>>2]=b;c[f>>2]=c[c[g>>2]>>2];c[e>>2]=c[(c[g>>2]|0)+80>>2];b=c[f>>2]|0;if((c[(c[g>>2]|0)+44>>2]|0)==0){Jc(b,c[e>>2]|0,0,d);b=c[e>>2]|0;i=d;return b|0}a[h>>0]=a[b+64>>0]|0;dh();if((c[(c[f>>2]|0)+224>>2]|0)==0){b=nf(c[f>>2]|0)|0;c[(c[f>>2]|0)+224>>2]=b}of(c[(c[f>>2]|0)+224>>2]|0,-1,c[(c[g>>2]|0)+44>>2]|0,1,-1);eh();a[(c[f>>2]|0)+64>>0]=a[h>>0]|0;c[(c[f>>2]|0)+52>>2]=c[e>>2];b=c[e>>2]|0;i=d;return b|0}function By(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Cy(c[(c[d>>2]|0)+208>>2]|0)|0;i=b;return a|0}function Cy(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=0;if((c[e>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}c[d>>2]=c[(c[e>>2]|0)+12>>2];c[(c[e>>2]|0)+12>>2]=0;e=c[d>>2]|0;i=b;return e|0}function Dy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;c[(c[f>>2]|0)+80>>2]=c[e>>2];a=(c[f>>2]|0)+84|0;c[a>>2]=(c[a>>2]|0)+(c[e>>2]|0);i=d;return}function Ey(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=i;i=i+16|0;b=d+4|0;e=d;c[b>>2]=a;c[e>>2]=c[c[b>>2]>>2];c[(c[e>>2]|0)+200>>2]=c[(c[b>>2]|0)+16>>2];c[(c[e>>2]|0)+196>>2]=c[(c[b>>2]|0)+56>>2];c[(c[e>>2]|0)+4>>2]=c[(c[b>>2]|0)+8>>2];c[(c[e>>2]|0)+32>>2]=c[(c[b>>2]|0)+48>>2];c[(c[e>>2]|0)+8>>2]=c[(c[b>>2]|0)+12>>2];c[(c[e>>2]|0)+28>>2]=c[(c[b>>2]|0)+52>>2];c[(c[e>>2]|0)+56>>2]=c[(c[b>>2]|0)+20>>2];c[(c[e>>2]|0)+36>>2]=c[(c[b>>2]|0)+40>>2];g=(c[b>>2]|0)+32|0;f=c[g+4>>2]|0;a=(c[c[e>>2]>>2]|0)+32|0;c[a>>2]=c[g>>2];c[a+4>>2]=f;c[(c[e>>2]|0)+92>>2]=c[(c[b>>2]|0)+68>>2];i=d;return c[(c[b>>2]|0)+44>>2]|0}function Fy(b){b=b|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;k=f+24|0;j=f+20|0;o=f+16|0;h=f+12|0;n=f+8|0;g=f+4|0;l=f;c[j>>2]=b;c[h>>2]=c[c[j>>2]>>2];if((a[(c[c[j>>2]>>2]|0)+64>>0]|0)!=0){c[(c[j>>2]|0)+80>>2]=7}if((c[(c[j>>2]|0)+200>>2]|0)!=0){_D(c[(c[j>>2]|0)+200>>2]|0,0,c[(c[j>>2]|0)+196>>2]|0)|0}XB(c[j>>2]|0);if((c[(c[j>>2]|0)+40>>2]|0)!=-1108210269){c[k>>2]=0;b=c[k>>2]|0;i=f;return b|0}if((c[(c[j>>2]|0)+76>>2]|0)>=0?((e[(c[j>>2]|0)+88>>1]|0)>>>9&1|0)!=0:0){c[g>>2]=0;c[n>>2]=c[(c[j>>2]|0)+80>>2]&255;if((c[n>>2]|0)==7|(c[n>>2]|0)==10|(c[n>>2]|0)==9){b=1}else{b=(c[n>>2]|0)==13}c[l>>2]=b&1;do{if((c[l>>2]|0)!=0){if(((e[(c[j>>2]|0)+88>>1]|0)>>>8&1|0)!=0?(c[n>>2]|0)==9:0){break}if((c[n>>2]|0)==7|(c[n>>2]|0)==13?((e[(c[j>>2]|0)+88>>1]|0)>>>7&1|0)!=0:0){c[g>>2]=2;break}yk(c[h>>2]|0,516);zk(c[h>>2]|0);a[(c[h>>2]|0)+62>>0]=1}}while(0);if((c[(c[j>>2]|0)+80>>2]|0)==0){Hy(c[j>>2]|0,0)|0}if((c[(c[h>>2]|0)+296>>2]|0)>0?(c[(c[h>>2]|0)+320>>2]|0)==0:0){m=40}else{if((d[(c[h>>2]|0)+62>>0]|0)!=0?(c[(c[h>>2]|0)+148>>2]|0)==(((e[(c[j>>2]|0)+88>>1]|0)>>>8&1|0)==0|0):0){do{if((c[(c[j>>2]|0)+80>>2]|0)==0){m=27}else{if((d[(c[j>>2]|0)+86>>0]|0)==3?(c[l>>2]|0)==0:0){m=27;break}yk(c[h>>2]|0,0)}}while(0);do{if((m|0)==27){c[o>>2]=Hy(c[j>>2]|0,1)|0;do{if((c[o>>2]|0)!=0){if(((e[(c[j>>2]|0)+88>>1]|0)>>>8&1|0)==0){c[o>>2]=787;break}c[k>>2]=1;b=c[k>>2]|0;i=f;return b|0}else{c[o>>2]=YB(c[h>>2]|0,c[j>>2]|0)|0}}while(0);if((c[o>>2]|0)==5?((e[(c[j>>2]|0)+88>>1]|0)>>>8&1|0)!=0:0){c[k>>2]=5;b=c[k>>2]|0;i=f;return b|0}if((c[o>>2]|0)!=0){c[(c[j>>2]|0)+80>>2]=c[o>>2];yk(c[h>>2]|0,0);break}else{b=(c[h>>2]|0)+496|0;c[b>>2]=0;c[b+4>>2]=0;b=(c[h>>2]|0)+504|0;c[b>>2]=0;c[b+4>>2]=0;b=(c[h>>2]|0)+24|0;c[b>>2]=c[b>>2]&-16777217;Lr(c[h>>2]|0);break}}}while(0);c[(c[h>>2]|0)+492>>2]=0}else{m=40}}do{if((m|0)==40?(c[g>>2]|0)==0:0){if((c[(c[j>>2]|0)+80>>2]|0)!=0?(d[(c[j>>2]|0)+86>>0]|0)!=3:0){if((d[(c[j>>2]|0)+86>>0]|0)==2){c[g>>2]=2;break}else{yk(c[h>>2]|0,516);zk(c[h>>2]|0);a[(c[h>>2]|0)+62>>0]=1;break}}c[g>>2]=1}}while(0);if((c[g>>2]|0)!=0?(c[o>>2]=Iy(c[j>>2]|0,c[g>>2]|0)|0,(c[o>>2]|0)!=0):0){if(!((c[(c[j>>2]|0)+80>>2]|0)!=0?(c[(c[j>>2]|0)+80>>2]&255|0)!=19:0)){c[(c[j>>2]|0)+80>>2]=c[o>>2];Wb(c[h>>2]|0,c[(c[j>>2]|0)+44>>2]|0);c[(c[j>>2]|0)+44>>2]=0}yk(c[h>>2]|0,516);zk(c[h>>2]|0);a[(c[h>>2]|0)+62>>0]=1}if(((e[(c[j>>2]|0)+88>>1]|0)>>>4&1|0)!=0){l=c[h>>2]|0;if((c[g>>2]|0)!=2){Dy(l,c[(c[j>>2]|0)+92>>2]|0)}else{Dy(l,0)}c[(c[j>>2]|0)+92>>2]=0}}if((c[(c[j>>2]|0)+76>>2]|0)>=0){b=(c[h>>2]|0)+140|0;c[b>>2]=(c[b>>2]|0)+ -1;if(((e[(c[j>>2]|0)+88>>1]|0)>>>8&1|0)==0){b=(c[h>>2]|0)+148|0;c[b>>2]=(c[b>>2]|0)+ -1}if(((e[(c[j>>2]|0)+88>>1]|0)>>>9&1|0)!=0){b=(c[h>>2]|0)+144|0;c[b>>2]=(c[b>>2]|0)+ -1}}c[(c[j>>2]|0)+40>>2]=1369188723;if((a[(c[c[j>>2]>>2]|0)+64>>0]|0)!=0){c[(c[j>>2]|0)+80>>2]=7}c[k>>2]=(c[(c[j>>2]|0)+80>>2]|0)==5?5:0;b=c[k>>2]|0;i=f;return b|0}function Gy(a){a=a|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d+4|0;f=d;c[g>>2]=a;if((b[(c[g>>2]|0)+28>>1]&18|0)==0){c[e>>2]=0;g=c[e>>2]|0;i=d;return g|0}c[f>>2]=c[(c[g>>2]|0)+24>>2];if((b[(c[g>>2]|0)+28>>1]&16384|0)!=0){c[f>>2]=(c[f>>2]|0)+(c[(c[g>>2]|0)+16>>2]|0)}c[e>>2]=(c[f>>2]|0)>(c[(c[c[g>>2]>>2]|0)+88>>2]|0)&1;g=c[e>>2]|0;i=d;return g|0}function Hy(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;h=k;j=k+16|0;f=k+12|0;l=k+8|0;g=k+4|0;c[f>>2]=b;c[l>>2]=d;c[g>>2]=c[c[f>>2]>>2];if(!((c[l>>2]|0)!=0?(d=(c[g>>2]|0)+496|0,b=(c[g>>2]|0)+504|0,b=bE(c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0,d=D,(d|0)>0|(d|0)==0&b>>>0>0):0)){e=3}do{if((e|0)==3){if((c[l>>2]|0)==0?(b=(c[f>>2]|0)+144|0,d=c[b+4>>2]|0,(d|0)>0|(d|0)==0&(c[b>>2]|0)>>>0>0):0){break}c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}}while(0);c[(c[f>>2]|0)+80>>2]=787;a[(c[f>>2]|0)+86>>0]=2;an((c[f>>2]|0)+44|0,c[g>>2]|0,24256,h);c[j>>2]=1;b=c[j>>2]|0;i=k;return b|0}function Iy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;g=h+28|0;d=h+24|0;f=h+20|0;e=h+16|0;k=h+12|0;m=h+8|0;j=h+4|0;l=h;c[g>>2]=a;c[d>>2]=b;c[f>>2]=c[c[g>>2]>>2];c[e>>2]=0;if((c[(c[f>>2]|0)+492>>2]|0)==0){a=c[e>>2]|0;i=h;return a|0}if((c[(c[g>>2]|0)+104>>2]|0)==0){a=c[e>>2]|0;i=h;return a|0}c[m>>2]=(c[(c[g>>2]|0)+104>>2]|0)-1;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){break}c[j>>2]=0;c[l>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(c[k>>2]<<4)+4>>2];if((c[l>>2]|0)!=0){if((c[d>>2]|0)==2){c[j>>2]=$y(c[l>>2]|0,2,c[m>>2]|0)|0}if((c[j>>2]|0)==0){c[j>>2]=$y(c[l>>2]|0,1,c[m>>2]|0)|0}if((c[e>>2]|0)==0){c[e>>2]=c[j>>2]}}c[k>>2]=(c[k>>2]|0)+1}a=(c[f>>2]|0)+492|0;c[a>>2]=(c[a>>2]|0)+ -1;c[(c[g>>2]|0)+104>>2]=0;if((c[e>>2]|0)==0){if((c[d>>2]|0)==2){c[e>>2]=Zy(c[f>>2]|0,2,c[m>>2]|0)|0}if((c[e>>2]|0)==0){c[e>>2]=Zy(c[f>>2]|0,1,c[m>>2]|0)|0}}if((c[d>>2]|0)!=2){a=c[e>>2]|0;i=h;return a|0}a=(c[g>>2]|0)+152|0;m=c[a+4>>2]|0;l=(c[f>>2]|0)+496|0;c[l>>2]=c[a>>2];c[l+4>>2]=m;l=(c[g>>2]|0)+160|0;m=c[l+4>>2]|0;a=(c[f>>2]|0)+504|0;c[a>>2]=c[l>>2];c[a+4>>2]=m;a=c[e>>2]|0;i=h;return a|0}function Jy(d){d=d|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[h>>2]=d;if((b[(c[h>>2]|0)+28>>1]&512|0)==0?(b[(c[h>>2]|0)+28>>1]&2|0)!=0:0){if((me(c[h>>2]|0,(c[(c[h>>2]|0)+24>>2]|0)+2|0,1)|0)!=0){c[g>>2]=7;h=c[g>>2]|0;i=f;return h|0}else{a[(c[(c[h>>2]|0)+4>>2]|0)+(c[(c[h>>2]|0)+24>>2]|0)>>0]=0;a[(c[(c[h>>2]|0)+4>>2]|0)+((c[(c[h>>2]|0)+24>>2]|0)+1)>>0]=0;h=(c[h>>2]|0)+28|0;b[h>>1]=e[h>>1]|0|512;c[g>>2]=0;h=c[g>>2]|0;i=f;return h|0}}c[g>>2]=0;h=c[g>>2]|0;i=f;return h|0}function Ky(d){d=d|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[h>>2]=d;d=e[(c[h>>2]|0)+28>>1]|0;if((b[(c[h>>2]|0)+28>>1]&12|0)!=0){b[g>>1]=d&12;d=b[g>>1]|0;i=f;return d|0}if((d&18|0)==0){b[g>>1]=0;d=b[g>>1]|0;i=f;return d|0}if((Am(c[(c[h>>2]|0)+4>>2]|0,(c[h>>2]|0)+8|0,c[(c[h>>2]|0)+24>>2]|0,a[(c[h>>2]|0)+30>>0]|0)|0)==0){b[g>>1]=0;d=b[g>>1]|0;i=f;return d|0}if((kg(c[(c[h>>2]|0)+4>>2]|0,(c[h>>2]|0)+16|0,c[(c[h>>2]|0)+24>>2]|0,a[(c[h>>2]|0)+30>>0]|0)|0)==0){b[g>>1]=4;d=b[g>>1]|0;i=f;return d|0}else{b[g>>1]=8;d=b[g>>1]|0;i=f;return d|0}return 0}function Ly(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+12|0;h=e+8|0;g=e;c[h>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;a=g;d=c[h>>2]|0;if(!((c[a>>2]|0)==0?(c[a+4>>2]|0)==-2147483648:0)){a=g;a=ZD(0,0,c[a>>2]|0,c[a+4>>2]|0)|0;c[f>>2]=Rm(d,a,D)|0;a=c[f>>2]|0;i=e;return a|0}a=d;b=c[a+4>>2]|0;if((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>=0){c[f>>2]=1;a=c[f>>2]|0;i=e;return a|0}else{b=g;a=c[h>>2]|0;d=a;b=ZD(c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[a>>2]=b;c[a+4>>2]=D;c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}return 0}function My(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+64|0;k=f+60|0;h=f+56|0;m=f+48|0;o=f+40|0;n=f+32|0;j=f+24|0;l=f+16|0;e=f+8|0;g=f;c[h>>2]=a;a=m;c[a>>2]=b;c[a+4>>2]=d;b=c[h>>2]|0;d=c[b+4>>2]|0;a=o;c[a>>2]=c[b>>2];c[a+4>>2]=d;a=o;a=jE(c[a>>2]|0,c[a+4>>2]|0,0,1)|0;d=n;c[d>>2]=a;c[d+4>>2]=D;d=o;d=kE(c[d>>2]|0,c[d+4>>2]|0,0,1)|0;a=j;c[a>>2]=d;c[a+4>>2]=D;a=m;a=jE(c[a>>2]|0,c[a+4>>2]|0,0,1)|0;d=l;c[d>>2]=a;c[d+4>>2]=D;d=m;d=kE(c[d>>2]|0,c[d+4>>2]|0,0,1)|0;a=e;c[a>>2]=d;c[a+4>>2]=D;a=n;d=l;d=(c[d>>2]|0)==0&(c[d+4>>2]|0)==0;do{if((c[a>>2]|0)==0&(c[a+4>>2]|0)==0){if(!d){o=j;a=l;a=lE(c[o>>2]|0,c[o+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;o=g;c[o>>2]=a;c[o+4>>2]=D;break}a=m;o=c[h>>2]|0;b=o;a=lE(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[o>>2]=a;c[o+4>>2]=D;c[k>>2]=0;o=c[k>>2]|0;i=f;return o|0}else{if(d){o=n;a=e;a=lE(c[o>>2]|0,c[o+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;o=g;c[o>>2]=a;c[o+4>>2]=D;break}c[k>>2]=1;o=c[k>>2]|0;i=f;return o|0}}while(0);b=g;d=c[b+4>>2]|0;o=g;a=c[o+4>>2]|0;if((d|0)<-1|(d|0)==-1&(c[b>>2]|0)>>>0<2147483648|((a|0)>0|(a|0)==0&(c[o>>2]|0)>>>0>=2147483648)){c[k>>2]=1;o=c[k>>2]|0;i=f;return o|0}o=g;o=lE(c[o>>2]|0,c[o+4>>2]|0,0,1)|0;a=g;c[a>>2]=o;c[a+4>>2]=D;a=j;o=e;o=lE(c[a>>2]|0,c[a+4>>2]|0,c[o>>2]|0,c[o+4>>2]|0)|0;if((Rm(g,o,D)|0)!=0){c[k>>2]=1;o=c[k>>2]|0;i=f;return o|0}else{b=g;a=c[b+4>>2]|0;o=c[h>>2]|0;c[o>>2]=c[b>>2];c[o+4>>2]=a;c[k>>2]=0;o=c[k>>2]|0;i=f;return o|0}return 0}function Ny(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;j=e+12|0;g=e+8|0;h=e+4|0;f=e;c[k>>2]=a;c[j>>2]=b;c[g>>2]=d;c[h>>2]=(c[k>>2]|0)+204;a:while(1){if((c[c[h>>2]>>2]|0)==0){break}c[f>>2]=c[c[h>>2]>>2];do{if((c[j>>2]|0)>=0){if((c[c[f>>2]>>2]|0)==(c[j>>2]|0)){if((c[(c[f>>2]|0)+4>>2]|0)>31){break}if((c[g>>2]&1<>2]|0)+4>>2]|0)==0){break}}c[h>>2]=(c[f>>2]|0)+16;continue a}}while(0);if((c[(c[f>>2]|0)+12>>2]|0)!=0){rb[c[(c[f>>2]|0)+12>>2]&31](c[(c[f>>2]|0)+8>>2]|0)}c[c[h>>2]>>2]=c[(c[f>>2]|0)+16>>2];Wb(c[c[k>>2]>>2]|0,c[f>>2]|0)}i=e;return}function Oy(a){a=a|0;var d=0,f=0,g=0;d=i;i=i+16|0;f=d;c[f>>2]=a;g=Hd(c[f>>2]|0)|0;a=(c[f>>2]|0)+16|0;c[a>>2]=g;c[a+4>>2]=D;b[(c[f>>2]|0)+28>>1]=(e[(c[f>>2]|0)+28>>1]|0)&-16896|4;i=d;return 0}function Py(a){a=a|0;var d=0,f=0,g=0.0;d=i;i=i+16|0;f=d;c[f>>2]=a;g=+Fd(c[f>>2]|0);h[(c[f>>2]|0)+8>>3]=g;b[(c[f>>2]|0)+28>>1]=(e[(c[f>>2]|0)+28>>1]|0)&-16896|8;i=d;return 0}function Qy(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;g=d+16|0;k=d+12|0;j=d+8|0;h=d+4|0;f=d;c[g>>2]=b;b=c[c[g>>2]>>2]|0;do{if((a[(c[g>>2]|0)+27>>0]|0)==0){if((b|0)!=0){c[f>>2]=WB(c[c[g>>2]>>2]|0,h)|0;if((c[f>>2]|0)!=0){c[e>>2]=c[f>>2];b=c[e>>2]|0;i=d;return b|0}if((c[h>>2]|0)!=0?(c[(c[g>>2]|0)+68>>2]=0,(c[h>>2]|0)==2):0){a[(c[g>>2]|0)+25>>0]=1}}}else{h=(c[g>>2]|0)+48|0;c[j>>2]=mw(b,0,c[h>>2]|0,c[h+4>>2]|0,0,k)|0;if((c[j>>2]|0)!=0){c[e>>2]=c[j>>2];b=c[e>>2]|0;i=d;return b|0}h=(c[g>>2]|0)+48|0;j=c[h+4>>2]|0;b=(c[g>>2]|0)+56|0;c[b>>2]=c[h>>2];c[b+4>>2]=j;if((c[k>>2]|0)==0){a[(c[g>>2]|0)+26>>0]=1;a[(c[g>>2]|0)+27>>0]=0;c[(c[g>>2]|0)+68>>2]=0;break}c[e>>2]=ej(64453)|0;b=c[e>>2]|0;i=d;return b|0}}while(0);c[e>>2]=0;b=c[e>>2]|0;i=d;return b|0}function Ry(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=VB(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Sy(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;h=i;i=i+16|0;k=h+8|0;j=h+4|0;l=h;c[k>>2]=f;c[j>>2]=g;if((e[(c[k>>2]|0)+50>>1]|0)!=0){l=c[k>>2]|0;l=l+24|0;l=l+12|0;l=c[l>>2]|0;f=c[j>>2]|0;c[f>>2]=l;i=h;return 0}c[l>>2]=b[(c[k>>2]|0)+84>>1]|0;sw(c[(c[k>>2]|0)+128+(c[l>>2]<<2)>>2]|0,e[(c[k>>2]|0)+86+(c[l>>2]<<1)>>1]|0,(c[k>>2]|0)+24|0);l=(c[k>>2]|0)+80|0;a[l>>0]=d[l>>0]|2;l=c[k>>2]|0;l=l+24|0;l=l+12|0;l=c[l>>2]|0;f=c[j>>2]|0;c[f>>2]=l;i=h;return 0}function Ty(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=VB(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Uy(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=i;i=i+32|0;p=m+28|0;o=m+24|0;k=m+20|0;n=m+16|0;j=m+12|0;r=m+8|0;q=m+4|0;l=m;c[p>>2]=d;c[o>>2]=e;c[k>>2]=f;c[n>>2]=g;c[j>>2]=h;c[q>>2]=0;c[l>>2]=0;g=c[p>>2]|0;if((c[n>>2]|0)!=0){c[r>>2]=Ry(g,q)|0}else{c[r>>2]=Ty(g,q)|0}g=c[j>>2]|0;if(((c[o>>2]|0)+(c[k>>2]|0)|0)>>>0<=(c[q>>2]|0)>>>0){yd(g);c[(c[j>>2]|0)+4>>2]=(c[r>>2]|0)+(c[o>>2]|0);b[(c[j>>2]|0)+28>>1]=4112;c[(c[j>>2]|0)+24>>2]=c[k>>2];d=c[l>>2]|0;i=m;return d|0}d=me(g,(c[k>>2]|0)+2|0,0)|0;c[l>>2]=d;if(0!=(d|0)){d=c[l>>2]|0;i=m;return d|0}p=c[p>>2]|0;r=c[o>>2]|0;q=c[k>>2]|0;o=c[(c[j>>2]|0)+4>>2]|0;if((c[n>>2]|0)!=0){c[l>>2]=oy(p,r,q,o)|0}else{c[l>>2]=af(p,r,q,o)|0}if((c[l>>2]|0)==0){a[(c[(c[j>>2]|0)+4>>2]|0)+(c[k>>2]|0)>>0]=0;a[(c[(c[j>>2]|0)+4>>2]|0)+((c[k>>2]|0)+1)>>0]=0;b[(c[j>>2]|0)+28>>1]=528;c[(c[j>>2]|0)+24>>2]=c[k>>2];d=c[l>>2]|0;i=m;return d|0}else{yd(c[j>>2]|0);d=c[l>>2]|0;i=m;return d|0}return 0}function Vy(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+48|0;d=f+32|0;k=f+28|0;j=f+24|0;m=f+20|0;l=f+16|0;h=f+8|0;g=f;c[k>>2]=a;c[j>>2]=b;c[m>>2]=e[(c[k>>2]|0)+28>>1]|0;if((c[m>>2]&1|0)!=0){c[d>>2]=0;a=c[d>>2]|0;i=f;return a|0}if((c[m>>2]&4|0)==0){if((c[m>>2]&8|0)!=0){c[d>>2]=7;a=c[d>>2]|0;i=f;return a|0}c[l>>2]=c[(c[k>>2]|0)+24>>2];if((c[m>>2]&16384|0)!=0){c[l>>2]=(c[l>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)}c[d>>2]=(c[l>>2]<<1)+12+((c[m>>2]&2|0)!=0&1);a=c[d>>2]|0;i=f;return a|0}a=(c[k>>2]|0)+16|0;k=c[a+4>>2]|0;b=h;c[b>>2]=c[a>>2];c[b+4>>2]=k;b=h;k=c[b>>2]|0;b=c[b+4>>2]|0;do{if((c[h+4>>2]|0)<0){if(!((b|0)<-32768|(b|0)==-32768&k>>>0<1)){m=h;m=ZD(0,0,c[m>>2]|0,c[m+4>>2]|0)|0;a=g;c[a>>2]=m;c[a+4>>2]=D;break}c[d>>2]=6;a=c[d>>2]|0;i=f;return a|0}else{a=g;c[a>>2]=k;c[a+4>>2]=b}}while(0);a=g;m=c[a+4>>2]|0;if(m>>>0<0|(m|0)==0&(c[a>>2]|0)>>>0<=127){a=h;if((0==(c[a+4>>2]|0)?(c[h>>2]&1|0)==(c[a>>2]|0):0)?(c[j>>2]|0)>=4:0){g=8+(c[g>>2]|0)|0}else{g=1}c[d>>2]=g;a=c[d>>2]|0;i=f;return a|0}a=g;m=c[a+4>>2]|0;if(m>>>0<0|(m|0)==0&(c[a>>2]|0)>>>0<=32767){c[d>>2]=2;a=c[d>>2]|0;i=f;return a|0}a=g;m=c[a+4>>2]|0;if(m>>>0<0|(m|0)==0&(c[a>>2]|0)>>>0<=8388607){c[d>>2]=3;a=c[d>>2]|0;i=f;return a|0}a=g;m=c[a+4>>2]|0;if(m>>>0<0|(m|0)==0&(c[a>>2]|0)>>>0<=2147483647){c[d>>2]=4;a=c[d>>2]|0;i=f;return a|0}a=g;m=c[a+4>>2]|0;if(m>>>0<32767|(m|0)==32767&(c[a>>2]|0)>>>0<=4294967295){c[d>>2]=5;a=c[d>>2]|0;i=f;return a|0}else{c[d>>2]=6;a=c[d>>2]|0;i=f;return a|0}return 0}function Wy(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[g>>2]=b;c[h>>2]=d;if((c[h>>2]&-16384|0)==0){a[c[g>>2]>>0]=(c[h>>2]|0)>>>7|128;a[(c[g>>2]|0)+1>>0]=c[h>>2]&127;c[f>>2]=2;b=c[f>>2]|0;i=e;return b|0}else{c[f>>2]=nB(c[g>>2]|0,c[h>>2]|0,0)|0;b=c[f>>2]|0;i=e;return b|0}return 0}function Xy(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;g=l+28|0;k=l+24|0;j=l+20|0;n=l+16|0;h=l+12|0;m=l;f=l+8|0;c[k>>2]=b;c[j>>2]=d;c[n>>2]=e;e=c[n>>2]|0;if(!((c[n>>2]|0)>>>0<=7&(c[n>>2]|0)>>>0>0)){if(e>>>0>=12){c[h>>2]=c[(c[j>>2]|0)+24>>2];dE(c[k>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[h>>2]|0)|0;c[g>>2]=c[h>>2];b=c[g>>2]|0;i=l;return b|0}else{c[g>>2]=0;b=c[g>>2]|0;i=l;return b|0}}if((e|0)==7){b=(c[j>>2]|0)+8|0;c[m+0>>2]=c[b+0>>2];c[m+4>>2]=c[b+4>>2]}else{e=(c[j>>2]|0)+16|0;d=c[e+4>>2]|0;b=m;c[b>>2]=c[e>>2];c[b+4>>2]=d}b=Bw(c[n>>2]|0)|0;c[f>>2]=b;c[h>>2]=b;while(1){b=c[f>>2]|0;c[f>>2]=b+ -1;if((b|0)==0){break}a[(c[k>>2]|0)+(c[f>>2]|0)>>0]=c[m>>2]&255;d=m;d=cE(c[d>>2]|0,c[d+4>>2]|0,8)|0;b=m;c[b>>2]=d;c[b+4>>2]=D}c[g>>2]=c[h>>2];b=c[g>>2]|0;i=l;return b|0} - - - -function kE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+8|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;l=e>>31|((e|0)<0?-1:0)<<1;k=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;b=ZD(h^a,g^b,h,g)|0;a=D;oE(b,a,ZD(l^d,k^e,l,k)|0,D,j)|0;a=ZD(c[j>>2]^h,c[j+4>>2]^g,h,g)|0;b=D;i=f;return(D=b,a)|0}function lE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;a=iE(e,f)|0;c=D;return(D=($(b,f)|0)+($(d,e)|0)+c|c&0,a|0|0)|0}function mE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=oE(a,b,c,d,0)|0;return a|0}function nE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+8|0;f=g|0;oE(a,b,d,e,f)|0;i=g;return(D=c[f+4>>2]|0,c[f>>2]|0)|0}function oE(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=a;j=b;i=j;l=d;g=e;k=g;if((i|0)==0){g=(f|0)!=0;if((k|0)==0){if(g){c[f>>2]=(h>>>0)%(l>>>0);c[f+4>>2]=0}k=0;m=(h>>>0)/(l>>>0)>>>0;return(D=k,m)|0}else{if(!g){l=0;m=0;return(D=l,m)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;l=0;m=0;return(D=l,m)|0}}m=(k|0)==0;do{if((l|0)!=0){if(!m){k=(gE(k|0)|0)-(gE(i|0)|0)|0;if(k>>>0<=31){m=k+1|0;l=31-k|0;a=k-31>>31;j=m;b=h>>>(m>>>0)&a|i<>>(m>>>0)&a;k=0;l=h<>2]=a|0;c[f+4>>2]=j|b&0;l=0;m=0;return(D=l,m)|0}k=l-1|0;if((k&l|0)!=0){l=(gE(l|0)|0)+33-(gE(i|0)|0)|0;p=64-l|0;m=32-l|0;n=m>>31;o=l-32|0;a=o>>31;j=l;b=m-1>>31&i>>>(o>>>0)|(i<>>(l>>>0))&a;a=a&i>>>(l>>>0);k=h<>>(o>>>0))&n|h<>31;break}if((f|0)!=0){c[f>>2]=k&h;c[f+4>>2]=0}if((l|0)==1){o=j|b&0;p=a|0|0;return(D=o,p)|0}else{p=hE(l|0)|0;o=i>>>(p>>>0)|0;p=i<<32-p|h>>>(p>>>0)|0;return(D=o,p)|0}}else{if(m){if((f|0)!=0){c[f>>2]=(i>>>0)%(l>>>0);c[f+4>>2]=0}o=0;p=(i>>>0)/(l>>>0)>>>0;return(D=o,p)|0}if((h|0)==0){if((f|0)!=0){c[f>>2]=0;c[f+4>>2]=(i>>>0)%(k>>>0)}o=0;p=(i>>>0)/(k>>>0)>>>0;return(D=o,p)|0}l=k-1|0;if((l&k|0)==0){if((f|0)!=0){c[f>>2]=a|0;c[f+4>>2]=l&i|b&0}o=0;p=i>>>((hE(k|0)|0)>>>0);return(D=o,p)|0}k=(gE(k|0)|0)-(gE(i|0)|0)|0;if(k>>>0<=30){a=k+1|0;l=31-k|0;j=a;b=i<>>(a>>>0);a=i>>>(a>>>0);k=0;l=h<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return(D=o,p)|0}}while(0);if((j|0)==0){g=l;e=0;i=0}else{h=d|0|0;g=g|e&0;e=bE(h,g,-1,-1)|0;d=D;i=0;do{m=l;l=k>>>31|l<<1;k=i|k<<1;m=b<<1|m>>>31|0;n=b>>>31|a<<1|0;ZD(e,d,m,n)|0;p=D;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;b=ZD(m,n,o&h,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&g)|0;a=D;j=j-1|0}while((j|0)!=0);g=l;e=0}h=0;if((f|0)!=0){c[f>>2]=b;c[f+4>>2]=a}o=(k|0)>>>31|(g|h)<<1|(h<<1|k>>>31)&0|e;p=(k<<1|0>>>31)&-2|i;return(D=o,p)|0}function pE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return pb[a&15](b|0,c|0,d|0)|0}function qE(a){a=a|0;return qb[a&1]()|0}function rE(a,b){a=a|0;b=b|0;rb[a&31](b|0)}function sE(a,b,c){a=a|0;b=b|0;c=c|0;sb[a&7](b|0,c|0)}function tE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return tb[a&1](b|0,c|0,d|0,e|0,f|0,g|0)|0}function uE(a,b){a=a|0;b=b|0;return ub[a&31](b|0)|0}function vE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vb[a&63](b|0,c|0,d|0)}function wE(a){a=a|0;wb[a&0]()}function xE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return xb[a&15](b|0,c|0,d|0,e|0)|0}function yE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;yb[a&0](b|0,c|0,d|0,e|0,f|0,g|0)}function zE(a,b,c){a=a|0;b=b|0;c=c|0;return zb[a&63](b|0,c|0)|0}function AE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Ab[a&15](b|0,c|0,d|0,e|0,f|0)|0}function BE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Bb[a&3](b|0,c|0,d|0,e|0)}function CE(a,b,c){a=a|0;b=b|0;c=c|0;aa(0);return 0}function DE(a,b,c){a=a|0;b=b|0;c=c|0;return Pa(a|0,b|0,c|0)|0}function EE(a,b,c){a=a|0;b=b|0;c=c|0;return fb(a|0,b|0,c|0)|0}function FE(a,b,c){a=a|0;b=b|0;c=c|0;return _a(a|0,b|0,c|0)|0}function GE(){aa(1);return 0}function HE(a){a=a|0;aa(2)}function IE(a,b){a=a|0;b=b|0;aa(3)}function JE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;aa(4);return 0}function KE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return mb(a|0,b|0,c|0,d|0,e|0,f|0)|0}function LE(a){a=a|0;aa(5);return 0}function ME(a){a=a|0;return Ua(a|0)|0}function NE(a){a=a|0;return Ra(a|0)|0}function OE(a){a=a|0;return Ca(a|0)|0}function PE(a,b,c){a=a|0;b=b|0;c=c|0;aa(6)}function QE(){aa(7)}function RE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;aa(8);return 0}function SE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;aa(9)}function TE(a,b){a=a|0;b=b|0;aa(10);return 0}function UE(a,b){a=a|0;b=b|0;return za(a|0,b|0)|0}function VE(a,b){a=a|0;b=b|0;return va(a|0,b|0)|0}function WE(a,b){a=a|0;b=b|0;return bb(a|0,b|0)|0}function XE(a,b){a=a|0;b=b|0;return Aa(a|0,b|0)|0}function YE(a,b){a=a|0;b=b|0;return Va(a|0,b|0)|0}function ZE(a,b){a=a|0;b=b|0;return Ta(a|0,b|0)|0}function _E(a,b){a=a|0;b=b|0;return lb(a|0,b|0)|0}function $E(a,b){a=a|0;b=b|0;return Xa(a|0,b|0)|0}function aF(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;aa(11);return 0}function bF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;aa(12)} - - - - -// EMSCRIPTEN_END_FUNCS -var pb=[CE,yc,Bc,Ec,Gc,hi,Sk,Vk,FC,LC,_C,DE,EE,FE,aD,CE];var qb=[GE,bD];var rb=[HE,Rk,Zk,_k,jl,ol,sl,Ul,Vl,Wl,Yl,_l,QC,gc,uh,ph,Cr,HE,HE,HE,HE,HE,HE,HE,HE,HE,HE,HE,HE,HE,HE,HE];var sb=[IE,Tk,Yk,Nq,Xp,IE,IE,IE];var tb=[JE,KE];var ub=[LE,ei,Qk,Uk,il,ll,ml,nl,CC,MC,NC,ME,NE,OE,sD,BD,Sb,Bd,fc,yh,LE,LE,LE,LE,LE,LE,LE,LE,LE,LE,LE,LE];var vb=[PE,Wk,pl,ql,rl,tl,ul,vl,wl,xl,yl,zl,Al,Bl,Cl,Dl,El,Fl,Gl,Hl,Il,Jl,Kl,Ll,Ml,Nl,Ol,Pl,Ql,Rl,Sl,Tl,Xl,Zl,$l,cm,dm,em,im,jm,km,lm,mm,nm,om,pm,Br,zr,yr,_s,bt,Pf,PE,PE,PE,PE,PE,PE,PE,PE,PE,PE,PE,PE];var wb=[QE];var xb=[RE,zc,Ac,PC,TC,Sf,Mr,Sr,yw,zw,Aw,RE,RE,RE,RE,RE];var yb=[SE];var zb=[TE,Cc,Dc,Fc,Hc,Ic,KD,rD,BC,ii,ji,kl,GC,HC,IC,JC,KC,RC,UE,VE,WE,XE,YE,ZE,$C,_E,$E,tD,uD,vD,CD,DD,ED,Lf,Qj,Ri,Yp,Lq,Mq,cq,dq,yq,Fq,Ps,Qs,$v,aw,tx,ux,TE,TE,TE,TE,TE,TE,TE,TE,TE,TE,TE,TE,TE,TE,TE];var Ab=[aF,xc,fi,gi,DC,EC,OC,SC,hh,ih,aF,aF,aF,aF,aF,aF];var Bb=[bF,Xk,cc,bF];return{_strlen:aE,_sqlite3_column_name:xe,_sqlite3_reset:ud,_sqlite3_column_type:we,_sqlite3_exec:ef,_sqlite3_step:de,_bitshift64Lshr:cE,_sqlite3_prepare_v2:gf,_sqlite3_close_v2:If,_sqlite3_open:Yf,_bitshift64Shl:$D,_sqlite3_column_bytes:te,_sqlite3_bind_int:De,_sqlite3_bind_blob:ze,_memset:_D,_memcpy:dE,_sqlite3_column_blob:qe,_sqlite3_bind_parameter_index:Ge,_i64Subtract:ZD,_sqlite3_column_text:ve,_realloc:SD,_i64Add:bE,_sqlite3_finalize:qd,_sqlite3_column_double:ue,_sqlite3_errmsg:jf,_sqlite3_data_count:pe,_sqlite3_bind_text:Fe,_sqlite3_bind_double:Be,_free:RD,_memmove:eE,_sqlite3_free:gc,_sqlite3_clear_bindings:xd,_malloc:QD,runPostSets:YD,stackAlloc:Cb,stackSave:Db,stackRestore:Eb,setThrew:Fb,setTempRet0:Ib,getTempRet0:Jb,dynCall_iiii:pE,dynCall_i:qE,dynCall_vi:rE,dynCall_vii:sE,dynCall_iiiiiii:tE,dynCall_ii:uE,dynCall_viii:vE,dynCall_v:wE,dynCall_iiiii:xE,dynCall_viiiiii:yE,dynCall_iii:zE,dynCall_iiiiii:AE,dynCall_viiii:BE} -// EMSCRIPTEN_END_ASM - -})({Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array},{abort:la,assert:v,asmPrintInt:function(a,b){r.print("int "+a+","+b)},asmPrintFloat:function(a,b){r.print("float "+a+","+b)},min:za,invoke_iiii:function(a,b,c,d){try{return r.dynCall_iiii(a,b,c,d)}catch(e){"number"!==typeof e&&"longjmp"!==e&&f(e),U.setThrew(1,0)}},invoke_i:function(a){try{return r.dynCall_i(a)}catch(b){"number"!== -typeof b&&"longjmp"!==b&&f(b),U.setThrew(1,0)}},invoke_vi:function(a,b){try{r.dynCall_vi(a,b)}catch(c){"number"!==typeof c&&"longjmp"!==c&&f(c),U.setThrew(1,0)}},invoke_vii:function(a,b,c){try{r.dynCall_vii(a,b,c)}catch(d){"number"!==typeof d&&"longjmp"!==d&&f(d),U.setThrew(1,0)}},invoke_iiiiiii:function(a,b,c,d,e,g,h){try{return r.dynCall_iiiiiii(a,b,c,d,e,g,h)}catch(m){"number"!==typeof m&&"longjmp"!==m&&f(m),U.setThrew(1,0)}},invoke_ii:function(a,b){try{return r.dynCall_ii(a,b)}catch(c){"number"!== -typeof c&&"longjmp"!==c&&f(c),U.setThrew(1,0)}},invoke_viii:function(a,b,c,d){try{r.dynCall_viii(a,b,c,d)}catch(e){"number"!==typeof e&&"longjmp"!==e&&f(e),U.setThrew(1,0)}},invoke_v:function(a){try{r.dynCall_v(a)}catch(b){"number"!==typeof b&&"longjmp"!==b&&f(b),U.setThrew(1,0)}},invoke_iiiii:function(a,b,c,d,e){try{return r.dynCall_iiiii(a,b,c,d,e)}catch(g){"number"!==typeof g&&"longjmp"!==g&&f(g),U.setThrew(1,0)}},invoke_viiiiii:function(a,b,c,d,e,g,h){try{r.dynCall_viiiiii(a,b,c,d,e,g,h)}catch(m){"number"!== -typeof m&&"longjmp"!==m&&f(m),U.setThrew(1,0)}},invoke_iii:function(a,b,c){try{return r.dynCall_iii(a,b,c)}catch(d){"number"!==typeof d&&"longjmp"!==d&&f(d),U.setThrew(1,0)}},invoke_iiiiii:function(a,b,c,d,e,g){try{return r.dynCall_iiiiii(a,b,c,d,e,g)}catch(h){"number"!==typeof h&&"longjmp"!==h&&f(h),U.setThrew(1,0)}},invoke_viiii:function(a,b,c,d,e){try{r.dynCall_viiii(a,b,c,d,e)}catch(g){"number"!==typeof g&&"longjmp"!==g&&f(g),U.setThrew(1,0)}},_getgid:qc,_sleep:function(a){return nc(1E6*a)},_send:function(a, -b,c){return!T.qc(a)?(L(J.H),-1):tc(a,b,c)},_getcwd:function(a,b){if(0==b)return L(J.A),0;if(2>b)return L(J.Ub),0;ab("/",a);return a},_chown:function(a){"string"!==typeof a&&(a=x(a));try{return Wb(a),0}catch(b){return R(b),-1}},_lseek:function(a,b,c){a=P[a];if(!a)return L(J.H),-1;try{return ac(a,b,c)}catch(d){return R(d),-1}},___setErrNo:L,_access:function(a,b){a=x(a);if(b&-8)return L(J.A),-1;var c;try{c=S(a,{sa:j}).k}catch(d){return R(d),-1}var e="";b&4&&(e+="r");b&2&&(e+="w");b&1&&(e+="x");return e&& -Fb(c,e)?(L(J.jb),-1):0},_fstat:function(a,b){var c=P[a];return!c?(L(J.H),-1):lc(c.path,b)},_chmod:function(a,b){a="string"!==typeof a?x(a):a;try{return Vb(a,b),0}catch(c){return R(c),-1}},_rmdir:function(a){a=x(a);try{var b=S(a,{parent:j}).k,c=lb(a),d=ub(b,c),e=Kb(b,c,j);e&&f(new M(e));b.n.fb||f(new M(J.S));d.va&&f(new M(J.Ea));try{Q.willDeletePath&&Q.willDeletePath(a)}catch(g){console.log("FS.trackingDelegate['willDeletePath']('"+a+"') threw an exception: "+g.message)}b.n.fb(b,c);Eb(d);try{if(Q.onDeletePath)Q.onDeletePath(a)}catch(h){console.log("FS.trackingDelegate['onDeletePath']('"+ -a+"') threw an exception: "+h.message)}return 0}catch(m){return R(m),-1}},_truncate:function(a,b){"string"!==typeof a&&(a=x(a));try{return Xb(a,b),0}catch(c){return R(c),-1}},_usleep:nc,_utimes:function(){f("utimes not implemented")},___buildEnvironment:Uc,_fflush:n(),_pwrite:function(a,b,c,d){a=P[a];if(!a)return L(J.H),-1;try{return cc(a,z,b,c,d)}catch(e){return R(e),-1}},_strerror_r:ad,_localtime_r:Qc,_tzset:Pc,_open:function(a,b,c){c=C[c>>2];a=x(a);try{return Yb(a,b,c).O}catch(d){return R(d),-1}}, -_getpid:function(){return qc.apply(k,arguments)},_sbrk:Zc,_fcntl:function(a,b,c){a=P[a];if(!a)return L(J.H),-1;switch(b){case 0:b=C[c>>2];if(0>b)return L(J.A),-1;var d;try{d=Yb(a.path,a.J,0,b)}catch(e){return R(e),-1}return d.O;case 1:case 2:return 0;case 3:return a.J;case 4:return b=C[c>>2],a.J|=b,0;case 12:case 12:return b=C[c>>2],xa[b+0>>1]=2,0;case 13:case 14:case 13:case 14:return 0;case 8:case 9:return L(J.A),-1;default:return L(J.A),-1}},_emscripten_memcpy_big:function(a,b,c){G.set(G.subarray(b, -b+c),a);return a},_unlink:function(a){a=x(a);try{return Tb(a),0}catch(b){return R(b),-1}},_sysconf:function(a){switch(a){case 30:return 4096;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 79:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1; -case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1E3;case 89:return 700;case 71:return 256; -case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return 1}L(J.A);return-1},_fchmod:function(a,b){try{var c=P[a];c||f(new M(J.H));Vb(c.k,b);return 0}catch(d){return R(d),-1}},_close:function(a){a=P[a];if(!a)return L(J.H),-1;try{return $b(a),0}catch(b){return R(b),-1}},_ftruncate:function(a,b){try{var c=P[a];c||f(new M(J.H));0===(c.J&2097155)&&f(new M(J.A));Xb(c.k,b);return 0}catch(d){return R(d),-1}},_gettimeofday:function(a){var b= -Date.now();C[a>>2]=Math.floor(b/1E3);C[a+4>>2]=Math.floor(1E3*(b-1E3*Math.floor(b/1E3)));return 0},_munmap:function(a,b){cd.ua||(cd.ua={});var c=cd.ua[a];if(!c)return 0;b==c.Ud&&(cd.ua[a]=k,c.qb&&Xc(c.Nd));return 0},_pread:function(a,b,c,d){a=P[a];if(!a)return L(J.H),-1;try{return bc(a,b,c,d)}catch(e){return R(e),-1}},_getenv:Wc,_write:tc,_fsync:function(a){if(P[a])return 0;L(J.H);return-1},___errno_location:function(){return ib},_stat:lc,_recv:function(a,b,c){return!T.qc(a)?(L(J.H),-1):Sc(a,b,c)}, -_geteuid:function(){return qc.apply(k,arguments)},_fchown:function(a){try{var b=P[a];b||f(new M(J.H));Wb(b.k);return 0}catch(c){return R(c),-1}},_read:Sc,_abort:function(){r.abort()},_time:function(a){var b=Math.floor(Date.now()/1E3);a&&(C[a>>2]=b);return b},_mkport:sc,_strerror:bd,_mknod:function(a,b,c){a=x(a);switch(b&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return L(J.A),-1}try{return Ob(a,b,c),0}catch(d){return R(d),-1}},_mkdir:function(a,b){a=x(a);"/"===a[a.length- -1]&&(a=a.substr(0,a.length-1));try{return Qb(a,b),0}catch(c){return R(c),-1}},_mmap:cd,_localtime:function(a){return Qc(a,Kc)},STACKTOP:s,STACK_MAX:Oa,tempDoublePtr:gb,ABORT:oa,cttz_i8:fd,ctlz_i8:ed,NaN:NaN,Infinity:Infinity},H),oc=r._strlen=U._strlen;r._sqlite3_column_name=U._sqlite3_column_name;r._sqlite3_reset=U._sqlite3_reset;r._sqlite3_column_type=U._sqlite3_column_type;r._sqlite3_exec=U._sqlite3_exec;r._sqlite3_step=U._sqlite3_step;var Rc=r._bitshift64Lshr=U._bitshift64Lshr; -r._sqlite3_prepare_v2=U._sqlite3_prepare_v2;r._sqlite3_close_v2=U._sqlite3_close_v2;r._sqlite3_open=U._sqlite3_open;var mc=r._bitshift64Shl=U._bitshift64Shl;r._sqlite3_column_bytes=U._sqlite3_column_bytes;r._sqlite3_bind_int=U._sqlite3_bind_int;r._sqlite3_bind_blob=U._sqlite3_bind_blob;var kc=r._memset=U._memset,Yc=r._memcpy=U._memcpy;r._sqlite3_column_blob=U._sqlite3_column_blob;r._sqlite3_bind_parameter_index=U._sqlite3_bind_parameter_index;var jc=r._i64Subtract=U._i64Subtract; -r._sqlite3_column_text=U._sqlite3_column_text;r._realloc=U._realloc;var pc=r._i64Add=U._i64Add;r._sqlite3_finalize=U._sqlite3_finalize;r._sqlite3_column_double=U._sqlite3_column_double;r._sqlite3_errmsg=U._sqlite3_errmsg;r._sqlite3_data_count=U._sqlite3_data_count;r._sqlite3_bind_text=U._sqlite3_bind_text;r._sqlite3_bind_double=U._sqlite3_bind_double;var Xc=r._free=U._free,$c=r._memmove=U._memmove;r._sqlite3_free=U._sqlite3_free;r._sqlite3_clear_bindings=U._sqlite3_clear_bindings;Ha=r._malloc=U._malloc; -r.runPostSets=U.runPostSets;r.dynCall_iiii=U.dynCall_iiii;r.dynCall_i=U.dynCall_i;r.dynCall_vi=U.dynCall_vi;r.dynCall_vii=U.dynCall_vii;r.dynCall_iiiiiii=U.dynCall_iiiiiii;r.dynCall_ii=U.dynCall_ii;r.dynCall_viii=U.dynCall_viii;r.dynCall_v=U.dynCall_v;r.dynCall_iiiii=U.dynCall_iiiii;r.dynCall_viiiiii=U.dynCall_viiiiii;r.dynCall_iii=U.dynCall_iii;r.dynCall_iiiiii=U.dynCall_iiiiii;r.dynCall_viiii=U.dynCall_viiii;u.La=U.stackAlloc;u.Nb=U.stackSave;u.Fc=U.stackRestore;u.de=U.setTempRet0;u.Ad=U.getTempRet0; -function V(a,b){a!=k&&("number"==typeof a?this.Q(a):b==k&&"string"!=typeof a?this.K(a,256):this.K(a,b))}function gd(){return new V(k)}function hd(a,b){var c=id[a.charCodeAt(b)];return c==k?-1:c}function jd(a){var b=gd();b.ga(a);return b}function W(a,b){this.C=a|0;this.G=b|0}W.Xb={};W.ga=function(a){if(-128<=a&&128>a){var b=W.Xb[a];if(b)return b}b=new W(a|0,0>a?-1:0);-128<=a&&128>a&&(W.Xb[a]=b);return b}; -W.Q=function(a){return isNaN(a)||!isFinite(a)?W.ZERO:a<=-W.Zb?W.MIN_VALUE:a+1>=W.Zb?W.MAX_VALUE:0>a?W.Q(-a).D():new W(a%W.ea|0,a/W.ea|0)};W.ca=function(a,b){return new W(a,b)}; -W.K=function(a,b){0==a.length&&f(Error("number format error: empty string"));var c=b||10;(2>c||36h?(h=W.Q(Math.pow(c,h)),e=e.multiply(h).add(W.Q(m))):(e=e.multiply(d),e=e.add(W.Q(m)))}return e};W.nb=65536; -W.Ag=16777216;W.ea=W.nb*W.nb;W.Bg=W.ea/2;W.Cg=W.ea*W.nb;W.Xc=W.ea*W.ea;W.Zb=W.Xc/2;W.ZERO=W.ga(0);W.ONE=W.ga(1);W.Yb=W.ga(-1);W.MAX_VALUE=W.ca(-1,2147483647);W.MIN_VALUE=W.ca(0,-2147483648);W.Wc=W.ga(16777216);q=W.prototype;q.hb=function(){return this.G*W.ea+this.wd()}; -q.toString=function(a){a=a||10;(2>a||36g.length;)g="0"+g;d=""+g+d}};q.wd=function(){return 0<=this.C?this.C:W.ea+this.C}; -q.la=function(){return 0==this.G&&0==this.C};q.N=function(){return 0>this.G};q.wc=function(){return 1==(this.C&1)};q.P=function(a){return this.G==a.G&&this.C==a.C};q.yc=function(){return 0>this.vb(W.Wc)};q.Dd=function(a){return 0>>16,c=this.G&65535,d=this.C>>>16,e=a.G>>>16,g=a.G&65535,h=a.C>>>16,m;m=0+((this.C&65535)+(a.C&65535));a=0+(m>>>16);a+=d+h;d=0+(a>>>16);d+=c+g;c=0+(d>>>16);c=c+(b+e)&65535;return W.ca((a&65535)<<16|m&65535,c<<16|d&65535)};q.Ma=function(a){return this.add(a.D())}; -q.multiply=function(a){if(this.la()||a.la())return W.ZERO;if(this.P(W.MIN_VALUE))return a.wc()?W.MIN_VALUE:W.ZERO;if(a.P(W.MIN_VALUE))return this.wc()?W.MIN_VALUE:W.ZERO;if(this.N())return a.N()?this.D().multiply(a.D()):this.D().multiply(a).D();if(a.N())return this.multiply(a.D()).D();if(this.yc()&&a.yc())return W.Q(this.hb()*a.hb());var b=this.G>>>16,c=this.G&65535,d=this.C>>>16,e=this.C&65535,g=a.G>>>16,h=a.G&65535,m=a.C>>>16,a=a.C&65535,t,p,D,B;B=0+e*a;D=0+(B>>>16);D+=d*a;p=0+(D>>>16);D=(D&65535)+ -e*m;p+=D>>>16;D&=65535;p+=c*a;t=0+(p>>>16);p=(p&65535)+d*m;t+=p>>>16;p&=65535;p+=e*h;t+=p>>>16;p&=65535;t=t+(b*a+c*m+d*h+e*g)&65535;return W.ca(D<<16|B&65535,t<<16|p)}; -q.ka=function(a){a.la()&&f(Error("division by zero"));if(this.la())return W.ZERO;if(this.P(W.MIN_VALUE)){if(a.P(W.ONE)||a.P(W.Yb))return W.MIN_VALUE;if(a.P(W.MIN_VALUE))return W.ONE;var b=this.ee().ka(a).shiftLeft(1);if(b.P(W.ZERO))return a.N()?W.ONE:W.Yb;var c=this.Ma(a.multiply(b));return b.add(c.ka(a))}if(a.P(W.MIN_VALUE))return W.ZERO;if(this.N())return a.N()?this.D().ka(a.D()):this.D().ka(a).D();if(a.N())return this.ka(a.D()).D();for(var d=W.ZERO,c=this;c.Ed(a);){for(var b=Math.max(1,Math.floor(c.hb()/ -a.hb())),e=Math.ceil(Math.log(b)/Math.LN2),e=48>=e?1:Math.pow(2,e-48),g=W.Q(b),h=g.multiply(a);h.N()||h.Dd(c);)b-=e,g=W.Q(b),h=g.multiply(a);g.la()&&(g=W.ONE);d=d.add(g);c=c.Ma(h)}return d};q.Td=function(){return W.ca(~this.C,~this.G)};q.shiftLeft=function(a){a&=63;if(0==a)return this;var b=this.C;return 32>a?W.ca(b<>>32-a):W.ca(0,b<a?W.ca(this.C>>>a|b<<32-a,b>>a):W.ca(b>>a-32,0<=b?0:-1)};q=V.prototype; -q.sb=function(a,b,c,d){for(var e=0,g=0;0<=--d;){var h=a*this[e++]+b[c]+g,g=Math.floor(h/67108864);b[c++]=h&67108863}return g};q.u=26;q.Z=67108863;q.Ca=67108864;q.Rc=Math.pow(2,52);q.Vb=26;q.Wb=0;var id=[],kd,X;kd=48;for(X=0;9>=X;++X)id[kd++]=X;kd=97;for(X=10;36>X;++X)id[kd++]=X;kd=65;for(X=10;36>X;++X)id[kd++]=X;q=V.prototype;q.copyTo=function(a){for(var b=this.e-1;0<=b;--b)a[b]=this[b];a.e=this.e;a.p=this.p};q.ga=function(a){this.e=1;this.p=0>a?-1:0;0a?this[0]=a+DV:this.e=0}; -q.K=function(a,b){var c;if(16==b)c=4;else if(8==b)c=3;else if(256==b)c=8;else if(2==b)c=1;else if(32==b)c=5;else if(4==b)c=2;else{this.td(a,b);return}this.p=this.e=0;for(var d=a.length,e=l,g=0;0<=--d;){var h=8==c?a[d]&255:hd(a,d);0>h?"-"==a.charAt(d)&&(e=j):(e=l,0==g?this[this.e++]=h:g+c>this.u?(this[this.e-1]|=(h&(1<>this.u-g):this[this.e-1]|=h<=this.u&&(g-=this.u))}8==c&&0!=(a[0]&128)&&(this.p=-1,0>d|h,h=(this[m]&e)<=this.e)b.e=0;else{var d=a%this.u,e=this.u-d,g=(1<>d;for(var h=c+1;h>d;0>=this.u;if(a.e>=this.u;d+=this.p}else{for(d+=this.p;c>=this.u;d-=a.p}b.p=0>d?-1:0;-1>d?b[c++]=this.Ca+d:0=d.e)){var e=this.abs();if(e.e>>16))m=p,t+=16;if(0!=(p=m>>8))m=p,t+=8;if(0!=(p=m>>4))m=p,t+=4;if(0!=(p=m>>2))m=p,t+=2;0!=m>>1&&(t+=1);m=this.u-t;0>this.Wb:0);t=this.Rc/p;p=(1<h&&V.ZERO.Y(c,c)}}}}; -q.toString=function(a){if(0>this.p)return"-"+this.D().toString(a);if(16==a)a=4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.fe(a);var b=(1<>h))d=j,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c);for(;0<=g;)h>(h+=this.u-a)):(c=this[g]>>(h-=a)&b,0>=h&&(h+=this.u,--g)),0this.p?this.D():this};q.Va=function(a){var b=this.p-a.p;if(0!=b)return b;var c=this.e,b=c-a.e;if(0!=b)return 0>this.p?-b:b;for(;0<=--c;)if(0!=(b=this[c]-a[c]))return b;return 0};V.ZERO=jd(0);V.ONE=jd(1);q=V.prototype; -q.td=function(a,b){this.ga(0);b==k&&(b=10);for(var c=this.Ta(b),d=Math.pow(b,c),e=l,g=0,h=0,m=0;mt?"-"==a.charAt(m)&&0==this.Mb()&&(e=j):(h=b*h+t,++g>=c&&(this.hc(d),this.gc(h),h=g=0))}0this.p?-1:0>=this.e||1==this.e&&0>=this[0]?0:1};q.hc=function(a){this[this.e]=this.sb(a-1,this,0,this.e);++this.e;this.fa()}; -q.gc=function(a){var b=0;if(0!=a){for(;this.e<=b;)this[this.e++]=0;for(this[b]+=a;this[b]>=this.Ca;)this[b]-=this.Ca,++b>=this.e&&(this[this.e++]=0),++this[b]}};q.fe=function(a){a==k&&(a=10);if(0==this.Mb()||2>a||36this.p){if(1==this.e)return this[0]-this.Ca;if(0==this.e)return-1}else{if(1==this.e)return this[0];if(0==this.e)return 0}return(this[1]&(1<<32-this.u)-1)<>=this.u;if(a.e>=this.u;d+=this.p}else{for(d+=this.p;c>=this.u;d+=a.p}b.p=0>d?-1:0;0d&&(b[c++]=this.Ca+d);b.e=c;b.fa()}; -var Y={abs:function(a,b){var c=new W(a,b),c=c.N()?c.D():c;C[gb>>2]=c.C;C[gb+4>>2]=c.G},jc:function(){Y.rd||(Y.rd=j,Y.Hc=new V,Y.Hc.K("4294967296",10),Y.Pb=new V,Y.Pb.K("18446744073709551616",10),Y.ih=new V,Y.jh=new V)},$g:function(a,b){var c=new V;c.K(b.toString(),10);var d=new V;c.Rd(d);c=new V;c.K(a.toString(),10);var e=new V;c.pb(d,e);return e},stringify:function(a,b,c){a=(new W(a,b)).toString();c&&"-"==a[0]&&(Y.jc(),c=new V,c.K(a,10),a=new V,Y.Pb.pb(c,a),a=a.toString(10));return a},K:function(a, -b,c,d,e){Y.jc();var g=new V;g.K(a,b);a=new V;a.K(c,10);c=new V;c.K(d,10);e&&0>g.Va(V.ZERO)&&(d=new V,g.pb(Y.Pb,d),g=d);d=l;0>g.Va(a)?(g=a,d=j):0>2]=g.C;C[gb+4>>2]=g.G;d&&f("range error")}};function ld(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}ld.prototype=Error();var md,nd=k,db=function od(){!r.calledRun&&pd&&qd();r.calledRun||(db=od)}; -r.callMain=r.Mg=function(a){function b(){for(var a=0;3>a;a++)d.push(0)}v(0==bb,"cannot call main when async dependencies remain! (listen on __ATMAIN__)");v(0==Ta.length,"cannot call main when preRun functions remain to be called");a=a||[];Ya||(Ya=j,Sa(Ua));var c=a.length+1,d=[F(I(r.thisProgram||"/bin/this.program"),"i8",Fa)];b();for(var e=0;ed;a=0<=d?++e:--e)c[a]=z[b+a];return c}; -$.prototype.get=function(a){var b,c,d;a!=k&&this.bind(a)&&this.step();d=[];a=b=0;for(c=Id(this.F);0<=c?bc;a=0<=c?++b:--b)switch(Hd(this.F,a)){case Z.Sc:case Z.FLOAT:d.push(this.yd(a));break;case Z.Vc:d.push(this.zd(a));break;case Z.Ic:d.push(this.getBlob(a));break;default:d.push(k)}return d};$.prototype.getColumnNames=function(){var a,b,c,d;d=[];a=b=0;for(c=Id(this.F);0<=c?bc;a=0<=c?++b:--b)d.push(Fd(this.F,a));return d}; -$.prototype.getAsObject=function(a){var b,c,d,e,g,h;e=this.get(a);c=this.getColumnNames();d={};a=g=0;for(h=c.length;g>>0);a!=k&&gc("/",this.filename,a,j,j);this.handleError(Md(this.filename,td));this.db=Ea(td,"i32");this.Ob={}}Qd.prototype.run=function(a,b){var c;this.db||f("Database closed");b?(c=this.prepare(a,b),c.step(),c.free()):this.handleError(Kd(this.db,a,0,0,td));return this}; -Qd.prototype.exec=function(a){var b,c,d,e,g;this.db||f("Database closed");c=[];g=a.split(";");a=0;for(e=g.length;a 0) var gc = undefined")):da||ea?(r.read=function(a){var b=new XMLHttpRequest;b.open("GET", +a,l);b.send(k);return b.responseText},"undefined"!=typeof arguments&&(r.arguments=arguments),"undefined"!==typeof console?(r.print||(r.print=function(a){console.log(a)}),r.printErr||(r.printErr=function(a){console.log(a)})):r.print||(r.print=n()),da?window.Module=r:r.load=importScripts):f("Unknown runtime environment. Where are we?");function ia(a){eval.call(k,a)}"undefined"==!r.load&&r.read&&(r.load=function(a){ia(r.read(a))});r.print||(r.print=n());r.printErr||(r.printErr=r.print); +r.arguments||(r.arguments=[]);r.print=r.print;r.oa=r.printErr;r.preRun=[];r.postRun=[];for(ba in aa)aa.hasOwnProperty(ba)&&(r[ba]=aa[ba]); +var u={de:function(a){ka=a},Ad:function(){return ka},Nb:function(){return s},Fc:function(a){s=a},Pg:function(a,b){b=b||4;return 1==b?a:isNumber(a)&&isNumber(b)?Math.ceil(a/b)*b:isNumber(b)&&isPowerOfTwo(b)?"((("+a+")+"+(b-1)+")&"+-b+")":"Math.ceil(("+a+")/"+b+")*"+b},Jd:function(a){return a in u.Tc||a in u.Qc},Kd:function(a){return"*"==a[a.length-1]},Ld:function(a){return isPointerType(a)?l:isArrayType(a)||/?/.test(a)?j:"%"==a[0]},Tc:{i1:0,i8:0,i16:0,i32:0,i64:0},Qc:{"float":0,"double":0}, +fh:function(a,b){return(a|0|b|0)+4294967296*(Math.round(a/4294967296)|Math.round(b/4294967296))},Lg:function(a,b){return((a|0)&(b|0))+4294967296*(Math.round(a/4294967296)&Math.round(b/4294967296))},lh:function(a,b){return((a|0)^(b|0))+4294967296*(Math.round(a/4294967296)^Math.round(b/4294967296))},Cb:function(a){switch(a){case "i1":case "i8":return 1;case "i16":return 2;case "i32":return 4;case "i64":return 8;case "float":return 4;case "double":return 8;default:return"*"===a[a.length-1]?u.ja:"i"=== +a[0]?(a=parseInt(a.substr(1)),v(0===a%8),a/8):0}},xd:function(a){return Math.max(u.Cb(a),u.ja)},od:function(a,b){var c={};return b?a.filter(function(a){return c[a[b]]?l:c[a[b]]=j}):a.filter(function(a){return c[a]?l:c[a]=j})},set:function(){for(var a="object"===typeof arguments[0]?arguments[0]:arguments,b={},c=0;c=na&&la("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+na+", (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.");return b},qa:function(a,b){return Math.ceil(a/(b?b:8))*(b?b:8)},ah:function(a, +b,c){return c?+(a>>>0)+4294967296*+(b>>>0):+(a>>>0)+4294967296*+(b|0)},Ga:8,ja:4,Eg:0};r.Runtime=u;u.addFunction=u.$c;u.removeFunction=u.Zd;var oa=l,pa,qa,ka;function v(a,b){a||la("Assertion failed: "+b)}function ra(a){var b=r["_"+a];if(!b)try{b=eval("_"+a)}catch(c){}v(b,"Cannot call unknown function "+a+" (perhaps LLVM optimizations or closure removed it?)");return b}var sa,ta; +(function(){function a(a){a=a.toString().match(e).slice(1);return{arguments:a[0],body:a[1],returnValue:a[2]}}var b=0,c={stackSave:function(){b=u.Nb()},stackRestore:function(){u.Fc(b)},arrayToC:function(a){var b=u.Ma(a.length);ua(a,b);return b},stringToC:function(a){var b=0;a!==k&&(a!==i&&0!==a)&&(b=u.Ma(a.length+1),va(a,b));return b}},d={string:c.stringToC,array:c.arrayToC};ta=function(a,e,g,h){var a=ra(a),B=[];if(h)for(var x=0;x>0]=b;break;case "i8":z[a>>0]=b;break;case "i16":xa[a>>1]=b;break;case "i32":C[a>>2]=b;break;case "i64":qa=[b>>>0,(pa=b,1<=+ya(pa)?0>>0:~~+Ba((pa-+(~~pa>>>0))/4294967296)>>>0:0)];C[a>>2]=qa[0];C[a+4>>2]=qa[1];break;case "float":Ca[a>>2]=b;break;case "double":Da[a>>3]=b;break;default:la("invalid type for setValue: "+c)}}r.setValue=wa; +function Ea(a,b){b=b||"i8";"*"===b.charAt(b.length-1)&&(b="i32");switch(b){case "i1":return z[a>>0];case "i8":return z[a>>0];case "i16":return xa[a>>1];case "i32":return C[a>>2];case "i64":return C[a>>2];case "float":return Ca[a>>2];case "double":return Da[a>>3];default:la("invalid type for setValue: "+b)}return k}r.getValue=Ea;var Fa=0,E=2,Ga=4;r.ALLOC_NORMAL=Fa;r.ALLOC_STACK=1;r.ALLOC_STATIC=E;r.ALLOC_DYNAMIC=3;r.ALLOC_NONE=Ga; +function F(a,b,c,d){var e,g;"number"===typeof a?(e=j,g=a):(e=l,g=a.length);var h="string"===typeof b?b:k,c=c==Ga?d:[Ha,u.Ma,u.Gc,u.Ia][c===i?E:c](Math.max(g,h?1:b.length));if(e){d=c;v(0==(c&3));for(a=c+(g&-4);d>2]=0;for(a=c+g;d>0]=0;return c}if("i8"===h)return a.subarray||a.slice?G.set(a,c):G.set(new Uint8Array(a),c),c;for(var d=0,m,t;d>0];if(128<=d)c=j;else if(0==d&&!b)break;e++;if(b&&e==b)break}b||(b=e);var g="";if(!c){for(;0>0],g+=c.Gb(d);return g}r.Pointer_stringify=w;r.UTF16ToString=function(a){for(var b=0,c="";;){var d=xa[a+2*b>>1];if(0==d)return c;++b;c+=String.fromCharCode(d)}}; +r.stringToUTF16=function(a,b){for(var c=0;c>1]=a.charCodeAt(c);xa[b+2*a.length>>1]=0};r.UTF32ToString=function(a){for(var b=0,c="";;){var d=C[a+4*b>>2];if(0==d)return c;++b;65536<=d?(d-=65536,c+=String.fromCharCode(55296|d>>10,56320|d&1023)):c+=String.fromCharCode(d)}};r.stringToUTF32=function(a,b){for(var c=0,d=0;d=e)var g=a.charCodeAt(++d),e=65536+((e&1023)<<10)|g&1023;C[b+4*c>>2]=e;++c}C[b+4*c>>2]=0}; +function Ia(a){function b(h,t,p){var t=t||Infinity,D="",B=[],x;if("N"===a[c]){c++;"K"===a[c]&&c++;for(x=[];"E"!==a[c];)if("S"===a[c]){c++;var A=a.indexOf("_",c);x.push(e[a.substring(c,A)||0]||"?");c=A+1}else if("C"===a[c])x.push(x[x.length-1]),c+=2;else{var A=parseInt(a.substr(c)),K=A.toString().length;if(!A||!K){c--;break}var ja=a.substr(c+K,A);x.push(ja);e.push(ja);c+=K+A}c++;x=x.join("::");t--;if(0===t)return h?[x]:x}else if(("K"===a[c]||g&&"L"===a[c])&&c++,A=parseInt(a.substr(c)))K=A.toString().length, +x=a.substr(c+K,A),c+=K+A;g=l;"I"===a[c]?(c++,A=b(j),K=b(j,1,j),D+=K[0]+" "+x+"<"+A.join(", ")+">"):D=x;a:for(;cRa?2*Ra:Ra+16777216;Ra!==na&&(r.oa("increasing TOTAL_MEMORY to "+Ra+" to be more reasonable"),na=Ra); +v("undefined"!==typeof Int32Array&&"undefined"!==typeof Float64Array&&!!(new Int32Array(1)).subarray&&!!(new Int32Array(1)).set,"JS engine does not provide full typed array support");var H=new ArrayBuffer(na);z=new Int8Array(H);xa=new Int16Array(H);C=new Int32Array(H);G=new Uint8Array(H);Ka=new Uint16Array(H);La=new Uint32Array(H);Ca=new Float32Array(H);Da=new Float64Array(H);C[0]=255;v(255===G[0]&&0===G[3],"Typed arrays 2 must be run on a little-endian system");r.HEAP=i;r.HEAP8=z;r.HEAP16=xa; +r.HEAP32=C;r.HEAPU8=G;r.HEAPU16=Ka;r.HEAPU32=La;r.HEAPF32=Ca;r.HEAPF64=Da;function Sa(a){for(;0>0]=a[c],c+=1}r.writeStringToMemory=va;function ua(a,b){for(var c=0;c>0]=a[c]}r.writeArrayToMemory=ua; +function ab(a,b,c){for(var d=0;d>0]=a.charCodeAt(d);c||(z[b+a.length>>0]=0)}r.writeAsciiToMemory=ab;if(!Math.imul||-5!==Math.imul(4294967295,5))Math.imul=function(a,b){var c=a&65535,d=b&65535;return c*d+((a>>>16)*d+c*(b>>>16)<<16)|0};Math.Wg=Math.imul;var ya=Math.abs,Ba=Math.ceil,Aa=Math.floor,za=Math.min,bb=0,cb=k,db=k;function eb(){bb++;r.monitorRunDependencies&&r.monitorRunDependencies(bb)}r.addRunDependency=eb; +function fb(){bb--;r.monitorRunDependencies&&r.monitorRunDependencies(bb);if(0==bb&&(cb!==k&&(clearInterval(cb),cb=k),db)){var a=db;db=k;a()}}r.removeRunDependency=fb;r.preloadedImages={};r.preloadedAudios={};Ma=8;ma=Ma+u.qa(46019);Ua.push(); +F([0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,99,104,97,114,97,99,116,101,114,0,0,0,0,0,0,0,83,69,76,69,67,84,32,102,116,115,51,95,116,111,107,101,110,105,122,101,114,40,63,44,32,63,41,0,0,0,0,0,51,46,56,46,53,0,0,0,83,81,76,73,84,69,95,0,96,177,0,0,112,177,0,0,128,177,0,0,144,177,0,0,160,177,0,0,184,177,0,0,200,177,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,10,10,10, +10,10,10,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,64,0,42,42,42,42,42,42,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,0,0,0,0,0,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64, +64,64,64,64,64,64,64,64,64,64,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64, +97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193, +194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,112,5,0,0,120,5,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,128,5,0,0,144,5,0,0,1,0,0,0,2,0,0,0,2,0, +0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,152,5,0,0,168,5,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,44,0,0,0,0,2,0,0,0,0,0,0,176,5,0,0,120,5,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,5,0,0,0,117,110,105,120,0,0,0,0,6,0,0,0, +0,0,0,0,117,110,105,120,45,110,111,110,101,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,117,110,105,120,45,100,111,116,102,105,108,101,0,0,0,0,8,0,0,0,0,0,0,0,117,110,105,120,45,101,120,99,108,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,1,0,0,0,0,0,0,0,4,5,3,5,1,5,1,5,2,5,2,5,1,5,1,5,4,5,3,5,1,5,1,5,2,5,2,5,1,5,1,5,115,116,114,105,110,103,32,111,114,32,98,108,111,98,32,116,111,111,32,98,105,103,0,0,140,0,0,0,52,0,0,0,53,0,0,0,31,1,1,1,67,0,10,1,46,0,0,1,35,1,0,0,16,0,4,0,58,0,0,0,24,0,0,0,99,97,110,110,111,116,32,111,112,101, +110,32,118,105,114,116,117,97,108,32,116,97,98,108,101,58,32,37,115,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,116,97,98,108,101,32,119,105,116,104,111,117,116,32,114,111,119,105,100,58,32,37,115,0,0,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,118,105,101,119,58,32,37,115,0,0,0,0,110,111,32,115,117,99,104,32,99,111,108,117,109,110,58,32,34,37,115,34,0,0,0,0,102,111,114,101,105,103,110,32,107,101,121,0,0,0,0,0,105,110,100,101,120,101,100,0,99,97,110,110,111,116,32,111,112,101,110,32,37, +115,32,99,111,108,117,109,110,32,102,111,114,32,119,114,105,116,105,110,103,0,0,0,0,0,0,0,37,115,0,0,0,0,0,0,42,63,91,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,4,3,2,5,0,0,0,116,114,105,103,103,101,114,0,116,101,109,112,0,0,0,0,50,48,49,52,45,48,54,45,48,52,32,49,52,58,48,54,58,51,52,32,98,49,101,100,52,102,50,97,51,52,98,97,54,54,99,50,57,98,49,51,48,102,56,100,49,51,101,57,48,57,50,55,53,56,48,49,57,50,49,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,100,97,116,97,98,97,115,101,58,32,37,115,0,0,0,0,0,202,154,59,0,202,154,59,208,7,0,0,232,3,0,0,244,1,0,0,168,97,0,0,127,0,0,0,10,0,0,0,80,195,0,0,231,3,0,0,232,3,0,0,0,0,0,0,57,50,50,51,51,55,50,48,51,54,56,53,52,55,55,53,56,48,0,0,0,0,0,0,111,110,111,102,102,97,108,115,101,121,101,115,116,114,117,101,102,117,108,108,0,0,0,0,0,1,2,4,9,12, +16,0,2,2,3,5,3,4,4,0,1,0,0,0,1,1,2,0,82,69,73,78,68,69,88,69,68,69,83,67,65,80,69,65,67,72,69,67,75,69,89,66,69,70,79,82,69,73,71,78,79,82,69,71,69,88,80,76,65,73,78,83,84,69,65,68,68,65,84,65,66,65,83,69,76,69,67,84,65,66,76,69,70,84,72,69,78,68,69,70,69,82,82,65,66,76,69,76,83,69,88,67,69,80,84,82,65,78,83,65,67,84,73,79,78,65,84,85,82,65,76,84,69,82,65,73,83,69,88,67,76,85,83,73,86,69,88,73,83,84,83,65,86,69,80,79,73,78,84,69,82,83,69,67,84,82,73,71,71,69,82,69,70,69,82,69,78,67,69,83,67,79,78, +83,84,82,65,73,78,84,79,70,70,83,69,84,69,77,80,79,82,65,82,89,85,78,73,81,85,69,82,89,87,73,84,72,79,85,84,69,82,69,76,69,65,83,69,65,84,84,65,67,72,65,86,73,78,71,82,79,85,80,68,65,84,69,66,69,71,73,78,78,69,82,69,67,85,82,83,73,86,69,66,69,84,87,69,69,78,79,84,78,85,76,76,73,75,69,67,65,83,67,65,68,69,76,69,84,69,67,65,83,69,67,79,76,76,65,84,69,67,82,69,65,84,69,67,85,82,82,69,78,84,95,68,65,84,69,68,69,84,65,67,72,73,77,77,69,68,73,65,84,69,74,79,73,78,83,69,82,84,77,65,84,67,72,80,76,65,78, +65,76,89,90,69,80,82,65,71,77,65,66,79,82,84,86,65,76,85,69,83,86,73,82,84,85,65,76,73,77,73,84,87,72,69,78,87,72,69,82,69,78,65,77,69,65,70,84,69,82,69,80,76,65,67,69,65,78,68,69,70,65,85,76,84,65,85,84,79,73,78,67,82,69,77,69,78,84,67,65,83,84,67,79,76,85,77,78,67,79,77,77,73,84,67,79,78,70,76,73,67,84,67,82,79,83,83,67,85,82,82,69,78,84,95,84,73,77,69,83,84,65,77,80,82,73,77,65,82,89,68,69,70,69,82,82,69,68,73,83,84,73,78,67,84,68,82,79,80,70,65,73,76,70,82,79,77,70,85,76,76,71,76,79,66,89,73, +70,73,83,78,85,76,76,79,82,68,69,82,69,83,84,82,73,67,84,82,73,71,72,84,82,79,76,76,66,65,67,75,82,79,87,85,78,73,79,78,85,83,73,78,71,86,65,67,85,85,77,86,73,69,87,73,78,73,84,73,65,76,76,89,0,0,0,0,0,0,0,76,105,117,74,0,45,0,0,82,0,77,0,0,42,12,78,15,0,116,85,54,112,0,19,0,0,121,0,119,115,0,22,93,0,9,0,0,70,71,0,69,6,0,48,90,102,0,118,101,0,0,44,0,103,24,0,17,0,122,53,23,0,5,110,25,96,0,0,124,106,60,123,57,28,55,0,91,0,100,26,0,99,0,0,0,95,92,97,88,109,14,39,108,0,81,0,18,89,111,32,0,120,80,113, +62,46,84,0,0,94,40,59,114,0,36,0,0,29,0,86,63,64,0,20,61,0,56,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,13,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,33,0,21,0,0,0,0,0,50,0,43,3,47,0,0,0,0,30,0,58,0,38,0,0,0,1,66,0,0,67,0,41,0,0,0,0,0,0,49,65,0,0,0,0,31,52,16,34,10,0,0,0,0,0,0,0,11,72,79,0,8,0,104,98,0,107,0,87,0,75,51,0,27,37,73,83,0,35,68,0,0,0,0,0,0,7,7,5,4,6,4,5,3,6,7,3,6,6,7,7,3,8,2,6,5,4,4,3,10,4,6,11,6,2,7,5,5,9,6,9,9,7,10,10,4,6,2,3,9,4,2,6,5,7,4,5,7,6,6,5,6,5,5,9,7,7,3,2,4,4,7,3,6,4,7,6, +12,6,9,4,6,5,4,7,6,5,6,7,5,4,5,6,5,7,3,7,13,2,2,4,6,6,8,5,17,12,7,8,8,2,4,4,4,4,4,2,2,6,5,8,5,8,3,5,5,6,4,9,3,0,0,0,0,0,0,2,0,2,0,8,0,9,0,14,0,16,0,20,0,23,0,25,0,25,0,29,0,33,0,36,0,41,0,46,0,48,0,53,0,54,0,59,0,62,0,65,0,67,0,69,0,78,0,81,0,86,0,91,0,95,0,96,0,101,0,105,0,109,0,117,0,122,0,128,0,136,0,142,0,152,0,159,0,162,0,162,0,165,0,167,0,167,0,171,0,176,0,179,0,184,0,184,0,188,0,192,0,199,0,204,0,209,0,212,0,218,0,221,0,225,0,234,0,240,0,240,0,240,0,243,0,246,0,250,0,251,0,255,0,5,1,9,1,16, +1,22,1,34,1,40,1,49,1,51,1,57,1,62,1,64,1,71,1,76,1,81,1,87,1,93,1,98,1,102,1,105,1,111,1,115,1,122,1,124,1,131,1,133,1,135,1,144,1,148,1,154,1,160,1,168,1,173,1,173,1,189,1,196,1,203,1,204,1,211,1,215,1,219,1,223,1,227,1,230,1,232,1,234,1,240,1,244,1,252,1,1,2,9,2,12,2,17,2,22,2,28,2,32,2,37,2,67,28,140,42,84,44,104,53,35,113,46,47,50,2,49,142,41,24,119,16,98,138,11,112,139,117,6,30,107,98,141,57,9,20,13,118,62,105,99,131,55,54,111,21,21,71,103,3,25,66,98,14,34,128,127,110,5,98,58,74,77,19,52,101, +50,37,33,109,136,95,17,69,43,8,124,108,51,4,32,56,29,120,65,129,137,130,68,31,59,72,100,106,15,75,38,39,10,40,98,69,69,102,7,121,73,114,45,123,98,50,36,18,76,126,60,98,12,61,115,125,63,64,48,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,109,105,115,117,115,101,32,97,116,32,108,105,110,101,32,37,100,32,111,102,32,91,37,46,49,48,115,93,0,0,0,0,117,110,97,98,108,101,32,116,111, +32,100,101,108,101,116,101,47,109,111,100,105,102,121,32,99,111,108,108,97,116,105,111,110,32,115,101,113,117,101,110,99,101,32,100,117,101,32,116,111,32,97,99,116,105,118,101,32,115,116,97,116,101,109,101,110,116,115,0,0,0,0,0,66,73,78,65,82,89,0,0,82,84,82,73,77,0,0,0,78,79,67,65,83,69,0,0,109,97,105,110,0,0,0,0,115,105,109,112,108,101,0,0,112,111,114,116,101,114,0,0,102,116,115,51,95,116,111,107,101,110,105,122,101,114,0,0,115,110,105,112,112,101,116,0,111,102,102,115,101,116,115,0,109,97,116, +99,104,105,110,102,111,0,0,0,0,0,0,0,111,112,116,105,109,105,122,101,0,0,0,0,0,0,0,0,102,116,115,51,0,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,9,0,0,0,3,0,0,0,4,0,0,0,10,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,7,0,0,0,6,0,0,0,11,0,0,0,4,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,3,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,102,116,115,52,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,16,0,0,0,12,0,0,0,12,0,0,0,17,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,15,0,0,0,7,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102,116,115,51,116,111,107,101,110,105,122,101,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,120,40,105,110,112,117,116,44,32,116,111,107,101,110,44,32,115,116,97,114,116,44,32,101,110,100,44,32,112,111,115,105,116,105,111,110,41,0,0,0,0,0,0,117,110,107,110,111,119,110,32,116,111,107,101,110,105,122,101,114,58,32,37,115,0,0,0,65,76,84,69,82,32,84,65,66,76,69,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,32,32,82,69,78,65,77,69,32,84,79,32,39,37,113,95,99,111, +110,116,101,110,116,39,59,0,0,0,0,65,76,84,69,82,32,84,65,66,76,69,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,32,32,82,69,78,65,77,69,32,84,79,32,39,37,113,95,100,111,99,115,105,122,101,39,59,0,0,0,0,65,76,84,69,82,32,84,65,66,76,69,32,37,81,46,39,37,113,95,115,116,97,116,39,32,32,82,69,78,65,77,69,32,84,79,32,39,37,113,95,115,116,97,116,39,59,0,0,65,76,84,69,82,32,84,65,66,76,69,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,32,82,69,78,65,77,69,32,84,79,32,39,37,113,95, +115,101,103,109,101,110,116,115,39,59,0,0,0,65,76,84,69,82,32,84,65,66,76,69,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,32,32,82,69,78,65,77,69,32,84,79,32,39,37,113,95,115,101,103,100,105,114,39,59,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,32,87,72,69,82,69,32,114,111,119,105,100,32,61,32,63,0,0,0,0,0,83,69,76,69,67,84,32,78,79,84,32,69,88,73,83,84,83,40,83,69,76,69,67,84,32,100,111,99,105,100,32,70,82,79,77,32,37,81,46,39,37,113, +95,99,111,110,116,101,110,116,39,32,87,72,69,82,69,32,114,111,119,105,100,33,61,63,41,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,0,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,0,0,0,0,0,68,69,76,69, +84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,116,97,116,39,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,37,115,32,87,72,69,82,69,32,114,111,119,105,100,61,63,0,83,69,76,69,67,84,32,40,83,69,76,69,67,84,32,109,97,120,40,105,100,120,41,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,41,32,43,32,49,0,0,0,0,0,0,0,0,82,69,80,76,65,67,69,32,73,78,84,79,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,40,98,108,111,99,107,105, +100,44,32,98,108,111,99,107,41,32,86,65,76,85,69,83,40,63,44,32,63,41,0,0,0,0,0,0,83,69,76,69,67,84,32,99,111,97,108,101,115,99,101,40,40,83,69,76,69,67,84,32,109,97,120,40,98,108,111,99,107,105,100,41,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,41,32,43,32,49,44,32,49,41,0,0,0,0,0,82,69,80,76,65,67,69,32,73,78,84,79,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,86,65,76,85,69,83,40,63,44,63,44,63,44,63,44,63,44,63,41,0,83,69,76,69,67,84,32,105,100,120,44,32, +115,116,97,114,116,95,98,108,111,99,107,44,32,108,101,97,118,101,115,95,101,110,100,95,98,108,111,99,107,44,32,101,110,100,95,98,108,111,99,107,44,32,114,111,111,116,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,32,79,82,68,69,82,32,66,89,32,105,100,120,32,65,83,67,0,83,69,76,69,67,84,32,105,100,120,44,32,115,116,97,114,116,95,98,108,111,99,107,44,32,108,101,97,118,101,115,95,101,110,100,95,98,108,111,99,107,44,32,101,110,100, +95,98,108,111,99,107,44,32,114,111,111,116,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,66,69,84,87,69,69,78,32,63,32,65,78,68,32,63,79,82,68,69,82,32,66,89,32,108,101,118,101,108,32,68,69,83,67,44,32,105,100,120,32,65,83,67,0,0,83,69,76,69,67,84,32,99,111,117,110,116,40,42,41,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,0,0,0,0,0,83,69,76,69,67,84,32,109,97, +120,40,108,101,118,101,108,41,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,66,69,84,87,69,69,78,32,63,32,65,78,68,32,63,0,0,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,0,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,32,87,72,69,82,69,32,98,108,111,99,107,105,100,32,66,69,84, +87,69,69,78,32,63,32,65,78,68,32,63,0,0,0,0,0,0,73,78,83,69,82,84,32,73,78,84,79,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,32,86,65,76,85,69,83,40,37,115,41,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,32,87,72,69,82,69,32,100,111,99,105,100,32,61,32,63,0,0,0,0,0,82,69,80,76,65,67,69,32,73,78,84,79,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,32,86,65,76,85,69,83,40,63,44,63,41,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,115,105,122,101, +32,70,82,79,77,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,32,87,72,69,82,69,32,100,111,99,105,100,61,63,0,0,83,69,76,69,67,84,32,118,97,108,117,101,32,70,82,79,77,32,37,81,46,39,37,113,95,115,116,97,116,39,32,87,72,69,82,69,32,105,100,61,63,0,0,0,0,0,0,0,82,69,80,76,65,67,69,32,73,78,84,79,32,37,81,46,39,37,113,95,115,116,97,116,39,32,86,65,76,85,69,83,40,63,44,63,41,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101, +118,101,108,32,66,69,84,87,69,69,78,32,63,32,65,78,68,32,63,0,0,83,69,76,69,67,84,32,68,73,83,84,73,78,67,84,32,108,101,118,101,108,32,47,32,40,49,48,50,52,32,42,32,63,41,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,0,0,83,69,76,69,67,84,32,108,101,118,101,108,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,71,82,79,85,80,32,66,89,32,108,101,118,101,108,32,72,65,86,73,78,71,32,99,111,117,110,116,40,42,41,62,61,63,32,32,79,82,68,69,82,32,66,89,32,40,108, +101,118,101,108,32,37,37,32,49,48,50,52,41,32,65,83,67,32,76,73,77,73,84,32,49,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,50,32,42,32,116,111,116,97,108,40,49,32,43,32,108,101,97,118,101,115,95,101,110,100,95,98,108,111,99,107,32,45,32,115,116,97,114,116,95,98,108,111,99,107,41,32,32,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,32,65,78,68,32,105,100,120,32,60,32,63,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,39,37,113,95,115, +101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,32,65,78,68,32,105,100,120,32,61,32,63,0,0,85,80,68,65,84,69,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,83,69,84,32,105,100,120,32,61,32,63,32,87,72,69,82,69,32,108,101,118,101,108,61,63,32,65,78,68,32,105,100,120,61,63,0,0,0,0,0,0,0,83,69,76,69,67,84,32,105,100,120,44,32,115,116,97,114,116,95,98,108,111,99,107,44,32,108,101,97,118,101,115,95,101,110,100,95,98,108,111,99,107,44,32,101,110,100,95,98,108,111,99, +107,44,32,114,111,111,116,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,32,65,78,68,32,105,100,120,32,61,32,63,0,0,0,0,0,0,85,80,68,65,84,69,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,83,69,84,32,115,116,97,114,116,95,98,108,111,99,107,32,61,32,63,44,32,114,111,111,116,32,61,32,63,87,72,69,82,69,32,108,101,118,101,108,32,61,32,63,32,65,78,68,32,105,100,120,32,61,32,63,0,0,83,69,76,69,67,84,32,49,32,70,82,79,77,32, +37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,32,87,72,69,82,69,32,98,108,111,99,107,105,100,61,63,32,65,78,68,32,98,108,111,99,107,32,73,83,32,78,85,76,76,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,105,100,120,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,61,63,32,79,82,68,69,82,32,66,89,32,49,32,65,83,67,0,0,0,0,0,83,69,76,69,67,84,32,109,97,120,40,32,108,101,118,101,108,32,37,37,32,49,48,50,52,32,41,32,70,82,79,77,32,37,81,46,39, +37,113,95,115,101,103,100,105,114,39,0,83,69,76,69,67,84,32,108,101,118,101,108,44,32,105,100,120,44,32,101,110,100,95,98,108,111,99,107,32,70,82,79,77,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,87,72,69,82,69,32,108,101,118,101,108,32,66,69,84,87,69,69,78,32,63,32,65,78,68,32,63,32,79,82,68,69,82,32,66,89,32,108,101,118,101,108,32,68,69,83,67,44,32,105,100,120,32,65,83,67,0,0,0,0,0,0,0,85,80,68,65,84,69,32,79,82,32,70,65,73,76,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,83, +69,84,32,108,101,118,101,108,61,45,49,44,105,100,120,61,63,32,87,72,69,82,69,32,108,101,118,101,108,61,63,32,65,78,68,32,105,100,120,61,63,0,0,0,0,0,0,0,0,85,80,68,65,84,69,32,79,82,32,70,65,73,76,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,32,83,69,84,32,108,101,118,101,108,61,63,32,87,72,69,82,69,32,108,101,118,101,108,61,45,49,0,0,0,0,0,0,0,0,232,16,0,0,24,17,0,0,96,17,0,0,128,17,0,0,160,17,0,0,192,17,0,0,224,17,0,0,0,18,0,0,24,18,0,0,96,18,0,0,160,18,0,0,232,18,0,0,24,19,0,0,136,19,0, +0,16,20,0,0,72,20,0,0,144,20,0,0,192,20,0,0,0,21,0,0,40,21,0,0,88,21,0,0,136,21,0,0,184,21,0,0,232,21,0,0,248,6,0,0,248,6,0,0,16,22,0,0,72,22,0,0,128,22,0,0,240,22,0,0,88,23,0,0,144,23,0,0,208,23,0,0,64,24,0,0,144,24,0,0,216,24,0,0,24,25,0,0,72,25,0,0,184,25,0,0,8,26,0,0,37,108,108,100,32,37,108,108,100,0,0,0,0,0,0,0,37,115,95,115,101,103,109,101,110,116,115,0,0,0,0,0,98,108,111,99,107,0,0,0,83,69,76,69,67,84,32,49,32,70,82,79,77,32,37,81,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87, +72,69,82,69,32,116,98,108,95,110,97,109,101,61,39,37,113,95,115,116,97,116,39,0,120,14,0,0,1,0,0,0,128,14,0,0,2,0,0,0,152,14,0,0,3,0,0,0,136,14,0,0,4,0,0,0,112,99,120,0,0,0,0,0,83,69,76,69,67,84,32,37,115,32,87,72,69,82,69,32,114,111,119,105,100,32,61,32,63,0,0,0,0,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,109,97,116,99,104,105,110,102,111,32,114,101,113,117,101,115,116,58,32,37,99,0,0,0,0,0,0,105,108,108,101,103,97,108,32,102,105,114,115,116,32,97,114,103,117,109,101,110,116,32,116, +111,32,37,115,0,0,0,0,73,110,100,101,120,32,111,112,116,105,109,105,122,101,100,0,73,110,100,101,120,32,97,108,114,101,97,100,121,32,111,112,116,105,109,97,108,0,0,0,83,65,86,69,80,79,73,78,84,32,102,116,115,51,0,0,82,69,76,69,65,83,69,32,102,116,115,51,0,0,0,0,82,79,76,76,66,65,67,75,32,84,79,32,102,116,115,51,0,0,0,0,0,0,0,0,37,100,32,37,100,32,37,100,32,37,100,32,0,0,0,0,60,98,62,0,0,0,0,0,60,47,98,62,0,0,0,0,60,98,62,46,46,46,60,47,98,62,0,0,0,0,0,0,119,114,111,110,103,32,110,117,109,98,101,114, +32,111,102,32,97,114,103,117,109,101,110,116,115,32,116,111,32,102,117,110,99,116,105,111,110,32,115,110,105,112,112,101,116,40,41,0,114,101,98,117,105,108,100,0,105,110,116,101,103,114,105,116,121,45,99,104,101,99,107,0,109,101,114,103,101,61,0,0,97,117,116,111,109,101,114,103,101,61,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,73,70,32,78,79,84,32,69,88,73,83,84,83,32,37,81,46,39,37,113,95,115,116,97,116,39,40,105,100,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,44,32,118,97, +108,117,101,32,66,76,79,66,41,59,0,0,0,0,83,69,76,69,67,84,32,37,115,0,0,0,0,0,0,0,83,69,76,69,67,84,32,37,115,32,79,82,68,69,82,32,66,89,32,114,111,119,105,100,32,37,115,0,0,0,0,0,68,69,83,67,0,0,0,0,65,83,67,0,0,0,0,0,70,84,83,32,101,120,112,114,101,115,115,105,111,110,32,116,114,101,101,32,105,115,32,116,111,111,32,108,97,114,103,101,32,40,109,97,120,105,109,117,109,32,100,101,112,116,104,32,37,100,41,0,0,0,0,0,109,97,108,102,111,114,109,101,100,32,77,65,84,67,72,32,101,120,112,114,101,115,115, +105,111,110,58,32,91,37,115,93,0,0,0,0,0,0,0,0,216,29,0,0,2,0,4,0,224,29,0,0,3,1,3,0,232,29,0,0,3,1,2,0,240,29,0,0,4,0,1,0,79,82,0,0,0,0,0,0,65,78,68,0,0,0,0,0,78,79,84,0,0,0,0,0,78,69,65,82,0,0,0,0,68,82,79,80,32,84,65,66,76,69,32,73,70,32,69,88,73,83,84,83,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,0,0,0,0,68,82,79,80,32,84,65,66,76,69,32,73,70,32,69,88,73,83,84,83,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,0,0,0,68,82,79,80,32,84,65,66,76,69,32,73,70,32,69,88,73,83, +84,83,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,0,0,0,0,0,68,82,79,80,32,84,65,66,76,69,32,73,70,32,69,88,73,83,84,83,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,0,0,0,0,68,82,79,80,32,84,65,66,76,69,32,73,70,32,69,88,73,83,84,83,32,37,81,46,39,37,113,95,115,116,97,116,39,0,0,0,0,0,0,0,116,111,107,101,110,105,122,101,0,0,0,0,0,0,0,0,112,114,101,102,105,120,0,0,99,111,109,112,114,101,115,115,0,0,0,0,0,0,0,0,117,110,99,111,109,112,114,101,115,115,0,0,0,0,0,0,111,114,100,101,114, +0,0,0,99,111,110,116,101,110,116,0,108,97,110,103,117,97,103,101,105,100,0,0,0,0,0,0,110,111,116,105,110,100,101,120,101,100,0,0,0,0,0,0,136,14,0,0,9,0,0,0,208,30,0,0,6,0,0,0,216,30,0,0,8,0,0,0,232,30,0,0,10,0,0,0,248,30,0,0,5,0,0,0,0,31,0,0,7,0,0,0,8,31,0,0,10,0,0,0,24,31,0,0,10,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,112,97,114,97,109,101,116,101,114,58,32,37,115,0,0,0,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,109,97,116,99,104,105,110,102,111,58,32,37,115,0,0,0,0, +0,0,97,115,99,0,0,0,0,0,100,101,115,99,0,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,111,114,100,101,114,58,32,37,115,0,0,101,114,114,111,114,32,112,97,114,115,105,110,103,32,112,114,101,102,105,120,32,112,97,114,97,109,101,116,101,114,58,32,37,115,0,0,0,0,0,0,110,111,32,115,117,99,104,32,99,111,108,117,109,110,58,32,37,115,0,0,0,0,0,0,109,105,115,115,105,110,103,32,37,115,32,112,97,114,97,109,101,116,101,114,32,105,110,32,102,116,115,52,32,99,111,110,115,116,114,117,99,116,111,114,0, +0,0,0,0,0,0,0,95,95,108,97,110,103,105,100,0,0,0,0,0,0,0,0,37,81,44,32,0,0,0,0,37,122,37,81,44,32,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,120,40,37,115,32,37,81,32,72,73,68,68,69,78,44,32,100,111,99,105,100,32,72,73,68,68,69,78,44,32,37,81,32,72,73,68,68,69,78,41,0,0,0,80,82,65,71,77,65,32,37,81,46,112,97,103,101,95,115,105,122,101,0,0,0,0,0,100,111,99,105,100,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,0,0,0,0,0,0,0,37,122,44,32,39,99,37,100,37,113,39,0,0,0,0,0,37,122,44,32,108, +97,110,103,105,100,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,39,37,113,95,99,111,110,116,101,110,116,39,40,37,115,41,0,0,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,39,37,113,95,115,101,103,109,101,110,116,115,39,40,98,108,111,99,107,105,100,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,44,32,98,108,111,99,107,32,66,76,79,66,41,59,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,39,37,113,95,115,101,103,100,105,114,39,40,108,101,118,101,108,32,73,78, +84,69,71,69,82,44,105,100,120,32,73,78,84,69,71,69,82,44,115,116,97,114,116,95,98,108,111,99,107,32,73,78,84,69,71,69,82,44,108,101,97,118,101,115,95,101,110,100,95,98,108,111,99,107,32,73,78,84,69,71,69,82,44,101,110,100,95,98,108,111,99,107,32,73,78,84,69,71,69,82,44,114,111,111,116,32,66,76,79,66,44,80,82,73,77,65,82,89,32,75,69,89,40,108,101,118,101,108,44,32,105,100,120,41,41,59,0,0,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,39,37,113,95,100,111,99,115,105,122,101,39,40,100, +111,99,105,100,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,44,32,115,105,122,101,32,66,76,79,66,41,59,0,0,0,0,0,63,0,0,0,0,0,0,0,44,37,115,40,63,41,0,0,44,32,63,0,0,0,0,0,37,115,37,115,0,0,0,0,100,111,99,105,100,0,0,0,44,37,115,40,120,46,39,99,37,100,37,113,39,41,0,0,44,32,120,46,37,81,0,0,108,97,110,103,105,100,0,0,114,111,119,105,100,0,0,0,44,32,120,46,39,37,113,39,0,0,0,0,0,0,0,0,32,70,82,79,77,32,39,37,113,39,46,39,37,113,37,115,39,32,65,83,32,120,0,0,95,99,111,110,116,101,110, +116,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,42,32,70,82,79,77,32,37,81,46,37,81,0,0,0,0,0,117,110,107,110,111,119,110,32,116,111,107,101,110,105,122,101,114,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,97,114,103,117,109,101,110,116,32,116,121,112,101,32,109,105,115,109,97,116,99, +104,0,0,111,117,116,32,111,102,32,109,101,109,111,114,121,0,0,0,0,0,0,0,8,0,0,0,16,0,0,0,5,0,0,0,17,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,115,101,115,115,0,0,0,0,115,115,0,0,0,0,0,0,115,101,105,0,0,0,0,0,105,0,0,0,0,0,0,0,100,101,101,0,0,0,0,0,101,101,0,0,0,0,0,0,103,110,105,0,0,0,0,0,100,101,0,0,0,0,0,0,116,97,0,0,0,0,0,0,97,116,101,0,0,0,0,0,108, +98,0,0,0,0,0,0,98,108,101,0,0,0,0,0,122,105,0,0,0,0,0,0,105,122,101,0,0,0,0,0,108,97,110,111,105,116,97,0,108,97,110,111,105,116,0,0,116,105,111,110,0,0,0,0,105,99,110,101,0,0,0,0,101,110,99,101,0,0,0,0,105,99,110,97,0,0,0,0,97,110,99,101,0,0,0,0,114,101,122,105,0,0,0,0,105,103,111,108,0,0,0,0,108,111,103,0,0,0,0,0,105,108,98,0,0,0,0,0,105,108,108,97,0,0,0,0,97,108,0,0,0,0,0,0,105,108,116,110,101,0,0,0,101,110,116,0,0,0,0,0,105,108,101,0,0,0,0,0,101,0,0,0,0,0,0,0,105,108,115,117,111,0,0,0,111,117, +115,0,0,0,0,0,110,111,105,116,97,122,105,0,110,111,105,116,97,0,0,0,114,111,116,97,0,0,0,0,109,115,105,108,97,0,0,0,115,115,101,110,101,118,105,0,105,118,101,0,0,0,0,0,115,115,101,110,108,117,102,0,102,117,108,0,0,0,0,0,115,115,101,110,115,117,111,0,105,116,105,108,97,0,0,0,105,116,105,118,105,0,0,0,105,116,105,108,105,98,0,0,101,116,97,99,105,0,0,0,105,99,0,0,0,0,0,0,101,118,105,116,97,0,0,0,101,122,105,108,97,0,0,0,105,116,105,99,105,0,0,0,108,97,99,105,0,0,0,0,108,117,102,0,0,0,0,0,115,115,101, +110,0,0,0,0,116,110,101,109,101,0,0,0,116,110,101,109,0,0,0,0,116,110,101,0,0,0,0,0,110,111,105,0,0,0,0,0,101,116,97,0,0,0,0,0,105,116,105,0,0,0,0,0,0,1,1,1,0,1,1,1,0,1,1,1,1,1,0,1,1,1,1,1,0,1,1,1,2,1,0,0,0,0,0,0,0,0,0,0,9,0,0,0,18,0,0,0,6,0,0,0,19,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,7,0,0,0,19,0,0,0,20,0,0,0,20,0,0,0,20,0,0,0,21,0,0,0,5,0,0,0,22,0,0,0,23,0,0,0,10,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102,116,115,52,97,117, +120,0,42,0,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,120,40,116,101,114,109,44,32,99,111,108,44,32,100,111,99,117,109,101,110,116,115,44,32,111,99,99,117,114,114,101,110,99,101,115,44,32,108,97,110,103,117,97,103,101,105,100,32,72,73,68,68,69,78,41,0,0,0,0,105,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,115,32,116,111,32,102,116,115,52,97,117,120,32,99,111,110,115,116,114,117,99,116,111,114],"i8",Ga,u.Ga); +F([97,117,116,111,109,97,116,105,99,32,101,120,116,101,110,115,105,111,110,32,108,111,97,100,105,110,103,32,102,97,105,108,101,100,58,32,37,115,0,0,77,65,84,67,72,0,0,0,58,109,101,109,111,114,121,58,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,24,0,0,0,6,0,0,0,7,0,0,0,11,0,0,0,22,0,0,0,23,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,101,99,111,118,101,114,101,100,32,37,100, +32,112,97,103,101,115,32,102,114,111,109,32,37,115,0,0,0,0,0,0,217,213,5,249,32,161,99,215,100,97,116,97,98,97,115,101,32,99,111,114,114,117,112,116,105,111,110,32,97,116,32,108,105,110,101,32,37,100,32,111,102,32,91,37,46,49,48,115,93,0,0,0,0,0,0,0,99,97,110,110,111,116,32,108,105,109,105,116,32,87,65,76,32,115,105,122,101,58,32,37,115,0,0,0,0,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,102,105,108,101,32,97,116,32,108,105,110,101,32,37,100,32,111,102,32,91,37,46,49,48,115,93,0,0,114,101,99, +111,118,101,114,101,100,32,37,100,32,102,114,97,109,101,115,32,102,114,111,109,32,87,65,76,32,102,105,108,101,32,37,115,0,0,0,0,45,106,111,117,114,110,97,108,0,0,0,0,0,0,0,0,45,119,97,108,0,0,0,0,110,111,108,111,99,107,0,0,105,109,109,117,116,97,98,108,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102,105,108,101,58,0,0,0,108,111,99,97,108,104,111,115,116,0,0,0,0,0,0,0,105,110,118,97,108,105,100,32,117,114,105,32,97,117,116,104,111,114,105,116,121,58,32,37,46,42,115,0,0,0,0,0,118,102,115,0,0,0,0,0,99,97,99,104, +101,0,0,0,48,44,0,0,0,0,2,0,56,44,0,0,0,0,4,0,0,0,0,0,0,0,0,0,115,104,97,114,101,100,0,0,112,114,105,118,97,116,101,0,109,111,100,101,0,0,0,0,112,44,0,0,1,0,0,0,120,44,0,0,2,0,0,0,128,44,0,0,6,0,0,0,136,44,0,0,128,0,0,0,0,0,0,0,0,0,0,0,114,111,0,0,0,0,0,0,114,119,0,0,0,0,0,0,114,119,99,0,0,0,0,0,109,101,109,111,114,121,0,0,97,99,99,101,115,115,0,0,110,111,32,115,117,99,104,32,37,115,32,109,111,100,101,58,32,37,115,0,0,0,0,0,37,115,32,109,111,100,101,32,110,111,116,32,97,108,108,111,119,101,100,58, +32,37,115,0,110,111,32,115,117,99,104,32,118,102,115,58,32,37,115,0,105,110,118,97,108,105,100,0,65,80,73,32,99,97,108,108,32,119,105,116,104,32,37,115,32,100,97,116,97,98,97,115,101,32,99,111,110,110,101,99,116,105,111,110,32,112,111,105,110,116,101,114,0,0,0,0,117,110,97,98,108,101,32,116,111,32,117,115,101,32,102,117,110,99,116,105,111,110,32,37,115,32,105,110,32,116,104,101,32,114,101,113,117,101,115,116,101,100,32,99,111,110,116,101,120,116,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16, +17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,0,1,2,3,4,5,6,7,0,1,2,3,0,1,0,0,117,110,97,98,108,101,32,116,111,32,100,101,108,101,116,101,47,109,111,100,105,102,121,32,117,115,101,114,45,102,117,110,99,116,105,111,110,32,100,117,101,32,116,111,32,97,99,116,105,118,101,32,115,116,97,116,101,109,101,110,116,115,0,0,56,46,0,0,72,46,0,0,0,0,0,0,112,46,0,0,144,46,0,0,176,46,0,0,200,46,0,0,152,35,0,0,232,46,0,0,16,47,0,0,32,47,0,0,48,47,0,0,88,47,0,0,112,47,0,0,144, +47,0,0,176,47,0,0,200,47,0,0,224,47,0,0,240,5,0,0,0,48,0,0,24,48,0,0,48,48,0,0,88,48,0,0,120,48,0,0,144,48,0,0,176,48,0,0,216,48,0,0,0,0,0,0,110,111,116,32,97,110,32,101,114,114,111,114,0,0,0,0,83,81,76,32,108,111,103,105,99,32,101,114,114,111,114,32,111,114,32,109,105,115,115,105,110,103,32,100,97,116,97,98,97,115,101,0,0,0,0,0,97,99,99,101,115,115,32,112,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,0,0,0,0,0,0,0,99,97,108,108,98,97,99,107,32,114,101,113,117,101,115,116,101,100, +32,113,117,101,114,121,32,97,98,111,114,116,0,0,100,97,116,97,98,97,115,101,32,105,115,32,108,111,99,107,101,100,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,116,97,98,108,101,32,105,115,32,108,111,99,107,101,100,0,0,0,0,0,0,0,0,97,116,116,101,109,112,116,32,116,111,32,119,114,105,116,101,32,97,32,114,101,97,100,111,110,108,121,32,100,97,116,97,98,97,115,101,0,0,0,0,105,110,116,101,114,114,117,112,116,101,100,0,0,0,0,0,100,105,115,107,32,73,47,79,32,101,114,114,111,114,0,0,100,97,116,97,98,97,115,101, +32,100,105,115,107,32,105,109,97,103,101,32,105,115,32,109,97,108,102,111,114,109,101,100,0,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,111,112,101,114,97,116,105,111,110,0,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,111,114,32,100,105,115,107,32,105,115,32,102,117,108,108,0,0,0,0,0,0,0,0,117,110,97,98,108,101,32,116,111,32,111,112,101,110,32,100,97,116,97,98,97,115,101,32,102,105,108,101,0,0,0,0,108,111,99,107,105,110,103,32,112,114,111,116,111,99,111,108,0,0,0,0,0,0,0,0,116,97,98,108,101,32,99, +111,110,116,97,105,110,115,32,110,111,32,100,97,116,97,0,0,100,97,116,97,98,97,115,101,32,115,99,104,101,109,97,32,104,97,115,32,99,104,97,110,103,101,100,0,0,0,0,0,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,0,0,0,0,0,0,0,100,97,116,97,116,121,112,101,32,109,105,115,109,97,116,99,104,0,0,0,0,0,0,0,108,105,98,114,97,114,121,32,114,111,117,116,105,110,101,32,99,97,108,108,101,100,32,111,117,116,32,111,102,32,115,101,113,117,101,110,99,101,0,0,108,97,114,103,101,32,102,105,108,101, +32,115,117,112,112,111,114,116,32,105,115,32,100,105,115,97,98,108,101,100,0,0,97,117,116,104,111,114,105,122,97,116,105,111,110,32,100,101,110,105,101,100,0,0,0,0,97,117,120,105,108,105,97,114,121,32,100,97,116,97,98,97,115,101,32,102,111,114,109,97,116,32,101,114,114,111,114,0,98,105,110,100,32,111,114,32,99,111,108,117,109,110,32,105,110,100,101,120,32,111,117,116,32,111,102,32,114,97,110,103,101,0,0,0,0,0,0,0,102,105,108,101,32,105,115,32,101,110,99,114,121,112,116,101,100,32,111,114,32,105,115, +32,110,111,116,32,97,32,100,97,116,97,98,97,115,101,0,0,117,110,107,110,111,119,110,32,101,114,114,111,114,0,0,0,97,98,111,114,116,32,100,117,101,32,116,111,32,82,79,76,76,66,65,67,75,0,0,0,117,110,97,98,108,101,32,116,111,32,99,108,111,115,101,32,100,117,101,32,116,111,32,117,110,102,105,110,97,108,105,122,101,100,32,115,116,97,116,101,109,101,110,116,115,32,111,114,32,117,110,102,105,110,105,115,104,101,100,32,98,97,99,107,117,112,115,0,0,0,0,0,1,0,0,0,0,0,0,0,25,0,0,0,1,0,0,0,12,0,0,0,1,0,0,0, +26,0,0,0,13,0,0,0,5,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,27,0,0,0,4,0,0,0,24,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,5,0,0,0,0,0,0,0,102,97,105,108,101,100,32,109,101,109,111,114,121,32,114,101,115,105,122,101,32,37,117,32,116,111,32,37,117,32,98,121,116,101,115,0,0,0,0,0,102,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,37,117,32,98,121,116,101,115,32,111,102,32,109,101,109,111,114,121,0,0,0,1,0,1,8,1,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,248,57,0,0,0,0,0,0,0,0,0,0,2,0,1,8,1, +0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,248,57,0,0,0,0,0,0,0,0,0,0,1,0,1,8,2,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,2,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,3,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,8,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,3,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,8,58,0,0,0,0,0,0,0,0,0,0,255,255,33,8,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,16,58,0,0,0,0,0,0,0,0,0,0,0,0,33,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,58,0,0,0,0,0, +0,0,0,0,0,1,0,33,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,6,0,0,0,16,58,0,0,0,0,0,0,0,0,0,0,255,255,33,8,1,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,24,58,0,0,0,0,0,0,0,0,0,0,0,0,33,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,58,0,0,0,0,0,0,0,0,0,0,1,0,33,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,6,0,0,0,24,58,0,0,0,0,0,0,0,0,0,0,1,0,129,8,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,32,58,0,0,0,0,0,0,0,0,0,0,1,0,65,8,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,40,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,11,0,0,0,0, +0,0,0,0,0,0,0,48,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,56,58,0,0,0,0,0,0,0,0,0,0,3,0,1,8,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,56,58,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,64,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,72,58,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,80,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,88,58,0,0,0,0,0,0,0,0,0,0,1,0, +1,8,0,0,0,0,0,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,96,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,96,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,104,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,112,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,120,58,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,120,58,0,0,0,0,0,0,0,0,0,0,255,255,1,10,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0, +120,58,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,136,58,0,0,0,0,0,0,0,0,0,0,2,0,1,10,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,144,58,0,0,0,0,0,0,0,0,0,0,1,0,1,12,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,152,58,0,0,0,0,0,0,0,0,0,0,2,0,1,12,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,168,58,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,184,58,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,23,0,0,0,0,0,0,0,0,0,0,0,192,58,0,0,0,0,0,0,0,0,0,0,2,0,33,8,0,0,0, +0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,208,58,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,216,58,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,25,0,0,0,0,0,0,0,0,0,0,0,232,58,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,26,0,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,16,59,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,0,0,0,0,48,59,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,80,59,0,0,0,0, +0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,88,59,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,112,59,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,120,59,0,0,0,0,0,0,0,0,0,0,3,0,1,8,0,0,0,0,0,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,136,59,0,0,0,0,0,0,0,0,0,0,1,0,1,8,0,0,0,0,0,0,0,0,34,0,0,0,0,0,0,0,0,0,0,0,144,59,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,35,0,0,0,7,0,0,0,160,59,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,35, +0,0,0,8,0,0,0,168,59,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,35,0,0,0,9,0,0,0,176,59,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,10,0,0,0,184,59,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,10,0,0,0,184,59,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,11,0,0,0,192,59,0,0,0,0,0,0,0,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,11,0,0,0,192,59,0,0,0,0,0,0,0,0,0,0,2,0,13,8,240,6,0,0,0,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,208,59,0,0,0,0,0,0,0,0,0, +0,2,0,5,8,216,59,0,0,0,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,224,59,0,0,0,0,0,0,0,0,0,0,3,0,5,8,216,59,0,0,0,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,224,59,0,0,0,0,0,0,0,0,0,0,108,116,114,105,109,0,0,0,114,116,114,105,109,0,0,0,116,114,105,109,0,0,0,0,109,105,110,0,0,0,0,0,109,97,120,0,0,0,0,0,116,121,112,101,111,102,0,0,108,101,110,103,116,104,0,0,105,110,115,116,114,0,0,0,115,117,98,115,116,114,0,0,112,114,105,110,116,102,0,0,117,110,105,99,111,100,101,0,99,104,97,114,0,0,0,0,97,98,115,0,0,0,0,0,114,111,117,110, +100,0,0,0,117,112,112,101,114,0,0,0,108,111,119,101,114,0,0,0,99,111,97,108,101,115,99,101,0,0,0,0,0,0,0,0,104,101,120,0,0,0,0,0,105,102,110,117,108,108,0,0,117,110,108,105,107,101,108,121,0,0,0,0,0,0,0,0,108,105,107,101,108,105,104,111,111,100,0,0,0,0,0,0,114,97,110,100,111,109,0,0,114,97,110,100,111,109,98,108,111,98,0,0,0,0,0,0,110,117,108,108,105,102,0,0,115,113,108,105,116,101,95,118,101,114,115,105,111,110,0,0,115,113,108,105,116,101,95,115,111,117,114,99,101,95,105,100,0,0,0,0,0,0,0,0,115, +113,108,105,116,101,95,108,111,103,0,0,0,0,0,0,115,113,108,105,116,101,95,99,111,109,112,105,108,101,111,112,116,105,111,110,95,117,115,101,100,0,0,0,0,0,0,0,115,113,108,105,116,101,95,99,111,109,112,105,108,101,111,112,116,105,111,110,95,103,101,116,0,0,0,0,0,0,0,0,113,117,111,116,101,0,0,0,108,97,115,116,95,105,110,115,101,114,116,95,114,111,119,105,100,0,0,0,0,0,0,0,99,104,97,110,103,101,115,0,116,111,116,97,108,95,99,104,97,110,103,101,115,0,0,0,114,101,112,108,97,99,101,0,122,101,114,111,98, +108,111,98,0,0,0,0,0,0,0,0,115,117,109,0,0,0,0,0,116,111,116,97,108,0,0,0,97,118,103,0,0,0,0,0,99,111,117,110,116,0,0,0,103,114,111,117,112,95,99,111,110,99,97,116,0,0,0,0,103,108,111,98,0,0,0,0,37,95,0,1,0,0,0,0,108,105,107,101,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,88,60,0,0,0,0,0,0,0,0,0,0,2,0,1,8,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0,112,60,0,0,0,0,0,0,0,0,0,0,3,0,1,8,0,0,0,0,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,136,60,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,114, +101,110,97,109,101,95,116,97,98,108,101,0,0,0,0,0,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,114,105,103,103,101,114,0,0,0,115,113,108,105,116,101,95,114,101,110,97,109,101,95,112,97,114,101,110,116,0,0,0,0,37,115,37,46,42,115,34,37,119,34,0,0,0,0,0,0,37,46,42,115,34,37,119,34,37,115,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,42,0,0,0,0,0,0,0,0,0,0,0,224,61,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,43,0,0,0,0,0,0,0,0,0,0,0,240,61,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,44, +0,0,0,0,0,0,0,0,0,0,0,248,61,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,0,62,0,0,0,0,0,0,0,0,0,0,255,255,1,8,0,0,0,0,0,0,0,0,46,0,0,0,0,0,0,0,0,0,0,0,16,62,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,47,0,0,0,0,0,0,0,0,0,0,0,32,62,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,48,62,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,72,62,0,0,0,0,0,0,0,0,0,0,106,117,108,105,97,110,100,97,121,0,0,0,0,0,0,0,100,97,116,101,0,0,0,0, +116,105,109,101,0,0,0,0,100,97,116,101,116,105,109,101,0,0,0,0,0,0,0,0,115,116,114,102,116,105,109,101,0,0,0,0,0,0,0,0,99,117,114,114,101,110,116,95,116,105,109,101,0,0,0,0,99,117,114,114,101,110,116,95,116,105,109,101,115,116,97,109,112,0,0,0,0,0,0,0,99,117,114,114,101,110,116,95,100,97,116,101,0,0,0,0,37,48,50,100,0,0,0,0,37,48,54,46,51,102,0,0,37,48,51,100,0,0,0,0,37,46,49,54,103,0,0,0,37,108,108,100,0,0,0,0,37,48,52,100,0,0,0,0,108,111,99,97,108,116,105,109,101,0,0,0,0,0,0,0,117,110,105,120,101, +112,111,99,104,0,0,0,0,0,0,0,117,116,99,0,0,0,0,0,119,101,101,107,100,97,121,32,0,0,0,0,0,0,0,0,115,116,97,114,116,32,111,102,32,0,0,0,0,0,0,0,109,111,110,116,104,0,0,0,121,101,97,114,0,0,0,0,100,97,121,0,0,0,0,0,104,111,117,114,0,0,0,0,109,105,110,117,116,101,0,0,115,101,99,111,110,100,0,0,108,111,99,97,108,32,116,105,109,101,32,117,110,97,118,97,105,108,97,98,108,101,0,0,110,111,119,0,0,0,0,0,37,48,52,100,45,37,48,50,100,45,37,48,50,100,32,37,48,50,100,58,37,48,50,100,58,37,48,50,100,0,0,0,37,48, +50,100,58,37,48,50,100,58,37,48,50,100,0,0,37,48,52,100,45,37,48,50,100,45,37,48,50,100,0,0,76,73,75,69,32,111,114,32,71,76,79,66,32,112,97,116,116,101,114,110,32,116,111,111,32,99,111,109,112,108,101,120,0,0,0,0,0,0,0,0,69,83,67,65,80,69,32,101,120,112,114,101,115,115,105,111,110,32,109,117,115,116,32,98,101,32,97,32,115,105,110,103,108,101,32,99,104,97,114,97,99,116,101,114,0,0,0,0,44,0,0,0,0,0,0,0,105,110,116,101,103,101,114,32,111,118,101,114,102,108,111,119,0,0,0,0,0,0,0,0,37,33,46,49,53,103, +0,0,37,33,46,50,48,101,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,78,85,76,76,0,0,0,0,37,46,42,102,0,0,0,0,105,110,116,101,103,101,114,0,116,101,120,116,0,0,0,0,114,101,97,108,0,0,0,0,98,108,111,98,0,0,0,0,110,117,108,108,0,0,0,0,1,0,0,0,0,0,0,0,64,64,0,0,0,0,0,0,32,0,0,0,0,0,0,0,105,110,116,101,114,114,117,112,116,0,0,0,0,0,0,0,117,110,114,101,99,111,103,110,105,122,101,100,32,116,111,107,101,110,58,32,34,37,84,34,0,0,0,0,0,0,0,0,110,101,97,114,32,34,37,84,34,58,32,115,121,110,116,97,120, +32,101,114,114,111,114,0,117,110,107,110,111,119,110,32,116,97,98,108,101,32,111,112,116,105,111,110,58,32,37,46,42,115,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,116,101,114,109,115,32,105,110,32,99,111,109,112,111,117,110,100,32,83,69,76,69,67,84,0,0,0,0,0,0,0,115,101,116,32,108,105,115,116,0,0,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,97,114,103,117,109,101,110,116,115,32,111,110,32,102,117,110,99,116,105,111,110,32,37,84,0,0,0,0,0,0,0,48,116, +0,0,1,0,0,0,168,98,0,0,1,0,0,0,105,110,100,101,120,0,0,0,113,117,97,108,105,102,105,101,100,32,116,97,98,108,101,32,110,97,109,101,115,32,97,114,101,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,73,78,83,69,82,84,44,32,85,80,68,65,84,69,44,32,97,110,100,32,68,69,76,69,84,69,32,115,116,97,116,101,109,101,110,116,115,32,119,105,116,104,105,110,32,116,114,105,103,103,101,114,115,0,0,116,104,101,32,73,78,68,69,88,69,68,32,66,89,32,99,108,97,117,115,101,32,105,115,32,110,111,116,32,97,108, +108,111,119,101,100,32,111,110,32,85,80,68,65,84,69,32,111,114,32,68,69,76,69,84,69,32,115,116,97,116,101,109,101,110,116,115,32,119,105,116,104,105,110,32,116,114,105,103,103,101,114,115,0,0,0,0,0,116,104,101,32,78,79,84,32,73,78,68,69,88,69,68,32,99,108,97,117,115,101,32,105,115,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,85,80,68,65,84,69,32,111,114,32,68,69,76,69,84,69,32,115,116,97,116,101,109,101,110,116,115,32,119,105,116,104,105,110,32,116,114,105,103,103,101,114,115,0,0,0, +0,144,1,145,2,145,1,146,1,146,3,147,0,147,1,147,3,148,1,149,3,151,0,151,1,151,2,150,0,150,1,150,1,150,1,149,2,149,2,149,2,153,1,153,0,149,2,149,3,149,5,149,2,154,6,156,1,158,0,158,3,157,1,157,0,155,5,155,2,162,0,162,2,160,3,160,1,164,3,165,1,152,1,152,1,152,1,166,0,166,1,168,1,168,4,168,6,169,1,169,2,170,1,170,1,167,2,167,0,173,2,173,2,173,4,173,3,173,3,173,2,173,2,173,3,173,5,173,2,173,4,173,4,173,1,173,2,178,0,178,1,180,0,180,2,182,2,182,3,182,3,182,3,183,2,183,2,183,1,183,1,183,2,181,3,181,2,184, +0,184,2,184,2,161,0,161,2,185,3,185,1,186,1,186,0,187,2,187,7,187,5,187,5,187,10,189,0,189,1,176,0,176,3,190,0,190,2,191,1,191,1,191,1,149,4,193,2,193,0,149,8,149,4,149,1,163,2,195,1,195,3,198,1,198,2,198,1,196,9,196,1,207,4,207,5,199,1,199,1,199,0,210,2,210,0,200,3,200,2,200,4,211,2,211,1,211,0,201,0,201,2,213,2,213,0,212,7,212,7,212,7,159,0,159,2,194,2,214,1,214,2,214,3,214,4,216,2,216,0,215,0,215,3,215,2,217,4,217,0,205,0,205,3,220,4,220,2,177,1,177,1,177,0,203,0,203,3,204,0,204,2,206,0,206,2, +206,4,206,4,149,6,202,0,202,2,149,8,221,5,221,3,149,6,149,7,222,2,222,1,223,0,223,3,219,3,219,1,175,1,175,3,174,1,175,1,175,1,175,3,175,5,174,1,174,1,175,1,175,3,175,6,175,5,175,4,174,1,175,3,175,3,175,3,175,3,175,3,175,3,175,3,175,3,224,1,224,2,175,3,175,5,175,2,175,3,175,3,175,4,175,2,175,2,175,2,175,2,225,1,225,2,175,5,226,1,226,2,175,5,175,3,175,5,175,4,175,4,175,5,228,5,228,4,229,2,229,0,227,1,227,0,209,1,209,0,208,3,208,1,149,12,230,1,230,0,179,0,179,3,188,5,188,3,231,0,231,2,149,4,149,1,149, +2,149,3,149,5,149,6,149,5,149,6,232,1,232,1,232,1,232,1,232,1,171,2,171,1,172,2,149,5,233,11,235,1,235,1,235,2,235,0,236,1,236,1,236,3,237,0,237,3,238,0,238,2,234,3,234,2,240,1,240,3,241,0,241,3,241,2,239,7,239,5,239,5,239,1,175,4,175,6,192,1,192,1,192,1,149,4,149,6,149,3,243,0,243,2,242,1,242,0,149,1,149,3,149,1,149,3,149,6,149,6,244,1,245,0,245,1,149,1,149,4,246,8,247,1,247,3,248,0,248,2,249,1,249,3,250,1,251,0,251,4,251,2,197,0,197,2,197,3,252,6,252,8,0,0,238,0,186,3,213,0,33,1,54,1,234,0,144, +0,61,1,147,255,126,1,121,1,47,1,205,1,133,1,122,1,112,1,46,1,38,1,253,0,139,1,37,1,68,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,254,3,244,3,237,3,230,3,195,3,193,3,191,3,189,3,182,3,179,3,162,3,144,3,105,3,93,3,55,3,42,3,3,3,247,2,208,2,196,2,158,2,145,2,107,2,102,2,100,2,98,2,96,2,94,2,92,2,86,2,83,2,81,2,68,2,30,2,28,2,25,2,23,2,21,2,19,2,17,2,15,2,247,1,130,1,147, +1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,95,0,191,1,82,0,78,1,248,1,211,1,147,1,221,1,208,1,147,1,147,1,147,1,147,1,92,3,235,2,232,2,17,3,126,2,126,2,158,3,123,3,132,3,131,3,119,3,76,3,72,3,67,3,80,3,62,3,75,3,61,3,24,3,71,3,58,3,225,2,70,3,27,3,21,3,47,0,222,2,18,2,184,2,9,3,199,2,165,2,221,2,218,2,217,2,216,2,215,2,115,2,192,1,64,0,187,0,25,5,22,5,228,4,10,5,249,4,43,5,42,5,41,5,39,5,38,5,36,5,35,5,34,5,33,5,32,5,31,5,30,5,28,5,27,5,24,5,23,5,21,5,18,5,14,5,12,5,9,5,242,4,240,4,235,4,8, +5,7,5,214,4,5,5,1,5,0,5,255,4,254,4,227,4,253,4,252,4,251,4,249,4,244,4,243,4,241,4,239,4,237,4,233,4,224,4,213,4,223,4,222,4,219,4,214,4,216,4,211,4,225,4,210,4,209,4,206,4,196,4,190,4,186,4,201,4,195,4,208,4,207,4,173,4,171,4,203,4,200,4,177,4,184,4,218,4,113,4,212,4,205,4,169,4,157,4,197,4,153,4,172,4,155,4,167,4,166,4,162,4,158,4,194,4,192,4,152,4,138,4,159,4,156,4,136,4,175,4,179,4,109,4,71,4,174,4,170,4,164,4,168,4,147,4,145,4,144,4,149,4,150,4,142,4,135,4,117,4,146,4,134,4,143,4,133,4,108, +4,121,4,119,4,100,4,104,4,79,4,78,4,76,4,72,4,126,4,125,4,61,4,101,4,56,4,40,4,96,4,73,4,58,4,54,4,49,4,43,4,85,4,83,4,95,4,93,4,92,4,89,4,87,4,84,4,239,3,232,3,234,3,52,4,51,4,57,4,0,0,0,0,50,1,212,0,176,1,187,3,127,2,191,0,187,3,39,1,47,2,88,0,88,0,88,0,88,0,81,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,185,0,184,0,183,0,123,2,123,2,36,1,94,2,94,2,88,0,88,0,88,0,88,0,171,2,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,16,0,180,1,85,2,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87, +0,87,0,88,0,88,0,88,0,88,0,172,2,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,47,2,84,0,84,0,84,0,83,0,74,1,65,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,123,2,123,2,122,2,121,2,182,0,170,2,38,2,123,1,120,1,119,1,17,0,66,1,94,2,94,2,115,1,198,0,223,1,91,0,118,1,82,0,79,0,165,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,86,2,123,2,123,2,107,0,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,186,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,82,2, +82,2,142,0,72,1,71,1,228,1,249,0,88,1,238,0,123,2,123,2,122,2,121,2,73,2,192,1,14,2,13,2,229,0,132,1,1,0,138,1,194,1,72,2,193,1,123,2,123,2,123,2,123,2,63,1,139,1,94,2,94,2,199,0,157,0,17,1,126,1,12,1,125,1,187,0,123,2,123,2,122,2,121,2,55,1,43,2,10,1,81,2,81,2,10,1,91,1,76,2,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,222,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,16,1,24,2,122,2,121,2,146,0,98,2,197,0,54,1,63,2,182,0,226,1,15,1,123,1,120,1,119,1,250,1,21, +0,122,2,121,2,122,2,121,2,123,2,123,2,118,1,99,2,62,2,36,2,184,1,111,0,51,2,94,2,94,2,122,2,121,2,68,1,223,1,96,2,96,2,96,2,44,1,179,1,61,2,119,0,151,1,210,0,162,0,50,2,115,3,80,2,80,2,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,250,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,108,2,111,0,123,2,123,2,105,1,94,2,94,2,102,1,249,0,93,1,248,0,177,1,243,0,223,1,74,2,122,2,121,2,195,0,99,2,93,0,119,0,221,0,63,2,241,1,22,2,22,2,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87, +0,87,0,88,0,88,0,88,0,88,0,62,2,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,77,0,173,1,126,2,61,2,77,2,18,2,240,0,230,0,242,0,105,0,249,0,93,1,248,0,3,2,76,2,208,0,204,1,17,2,52,2,173,0,122,2,121,2,202,3,144,0,174,1,2,0,168,1,228,0,124,1,45,2,94,2,94,2,190,0,153,0,159,0,158,0,2,2,51,0,120,2,119,2,118,2,71,0,24,2,176,1,186,3,196,0,98,2,186,3,102,2,45,0,18,0,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,5,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50, +1,96,2,96,2,96,2,30,2,168,1,146,1,129,1,241,0,250,1,195,1,64,1,211,0,31,2,164,0,180,1,130,1,37,1,195,1,75,2,108,0,240,1,111,0,78,1,135,1,79,2,168,1,102,2,27,0,196,1,197,1,94,2,94,2,72,0,1,1,70,0,3,1,196,1,83,1,86,1,52,2,70,2,68,0,159,1,213,1,72,1,71,1,62,0,102,2,45,0,110,0,137,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,152,0,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,110,0,243,1,8,2,26,2,146,1,133,1,168,1,110,0,54,2,244,1,81,2,81,2,198,1,82,0,79,0,165,0,168, +1,79,2,128,1,52,2,84,1,103,2,188,0,162,0,168,1,94,1,104,2,168,1,102,2,44,0,94,2,94,2,189,1,70,2,44,1,178,1,151,0,19,0,102,2,9,0,56,2,68,2,92,1,103,2,213,1,55,2,102,2,26,0,104,2,102,2,45,0,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,155,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,67,2,110,0,66,2,9,2,26,1,177,1,142,1,144,1,255,0,230,1,82,0,79,0,165,0,231,1,164,0,82,0,79,0,165,0,232,1,232,1,108,1,131,1,168,1,32,2,32,2,253,1,94,1,106,1,155,0,191,0,94,2,94,2,47,2, +130,2,128,2,77,1,82,0,79,0,165,0,49,1,52,2,251,1,56,1,101,1,102,2,45,0,73,1,84,2,83,2,194,0,81,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,20,0,67,1,150,0,7,1,211,0,31,2,165,1,84,2,83,2,102,2,22,0,168,1,193,0,168,1,28,1,168,1,135,1,168,1,253,1,168,1,65,2,168,1,186,0,79,1,168,1,47,2,168,1,57,1,120,0,34,2,94,2,94,2,67,0,102,2,47,0,102,2,50,0,102,2,48,0,102,2,100,0,102,2,99,0,102,2,101,0,64,2,102,2,102,0,102,2,109, +0,70,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,50,1,168,1,55,1,168,1,73,2,54,0,168,1,4,2,5,2,78,2,102,2,112,0,168,1,72,2,168,1,60,2,168,1,195,0,168,1,59,2,168,1,67,0,168,1,102,2,94,0,102,2,98,0,168,1,102,2,97,0,8,1,94,2,94,2,195,0,102,2,46,0,102,2,96,0,102,2,30,0,102,2,49,0,102,2,115,0,102,2,114,0,162,1,229,0,132,1,102,2,113,0,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0, +86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,119,0,168,1,78,2,110,0,116,1,94,2,94,2,195,0,53,0,250,0,102,2,29,0,195,0,216,1,182,1,217,2,190,0,46,1,242,1,14,0,11,2,129,2,2,0,102,2,43,0,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,168,1,101,2,196,3,196,3,98,1,94,2,94,2,164,1,56,1,64,0,102,2,42,0,135,1,99,1,27,1,181,1,45,1,255,0,158,1,154,1,239,1,236,1,102,2,28,0,215,1,50,1,89,0,90,0,80,0,88,2,87,2,89,2,89,2,87,0,87, +0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,168,1,110,0,110,0,110,0,110,0,94,2,94,2,110,0,254,0,13,0,102,2,41,0,20,2,19,2,27,1,225,1,19,2,201,1,28,1,119,0,49,2,100,1,102,2,40,0,28,1,50,1,89,0,78,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,110,0,168,1,85,1,220,0,43,2,94,2,94,2,95,1,43,2,62,1,102,2,95,0,157,1,255,0,83,0,74,1,28,1,28,1,255,0,128,2,77,1,100,1,255,0,102,2,39,0,50,1,100,1,90, +0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,168,1,61,1,60,1,141,0,209,1,94,2,94,2,219,0,107,2,207,1,102,2,10,0,161,1,206,1,255,0,189,0,254,1,41,2,95,1,207,0,107,1,161,0,102,2,38,0,59,1,218,0,255,0,255,0,80,0,88,2,87,2,89,2,89,2,87,0,87,0,88,0,88,0,88,0,88,0,168,1,86,0,86,0,86,0,86,0,85,0,85,0,84,0,84,0,84,0,83,0,74,1,76,0,163,1,255,0,3,0,110,3,205,1,168,1,247,0,75,1,75,1,102,2,37,0,217,0,76,0,163,1,134,1,3,0,216,0,215,0,166, +1,4,0,75,1,75,1,168,1,35,2,12,0,168,1,33,2,102,2,36,0,168,1,29,2,166,1,168,1,28,2,168,1,214,0,168,1,152,1,168,1,27,2,147,1,93,2,93,2,237,0,102,2,25,0,119,0,102,2,24,0,76,2,152,1,102,2,45,0,118,0,102,2,35,0,102,2,34,0,102,2,33,0,102,2,23,0,76,2,60,0,223,0,91,2,90,2,1,2,122,1,73,0,74,0,140,0,139,0,168,1,110,0,9,1,75,0,170,1,169,1,59,0,168,1,98,2,73,0,74,0,37,2,146,1,148,1,168,1,117,1,75,0,170,1,169,1,92,2,138,0,98,2,102,2,11,0,136,1,76,0,163,1,181,0,3,0,102,2,32,0,15,1,113,1,75,1,75,1,237,1,102,2,31, +0,149,0,96,2,96,2,96,2,95,2,15,0,166,1,109,1,102,2,8,0,137,0,233,1,136,0,190,0,96,2,96,2,96,2,95,2,15,0,229,1,176,0,135,0,7,0,252,0,221,1,152,1,174,0,133,0,175,0,218,1,57,0,56,0,132,0,130,0,119,0,76,0,163,1,76,2,3,0,212,1,245,0,208,1,171,0,75,1,75,1,125,0,123,0,200,1,191,1,122,0,190,1,104,0,80,1,231,0,166,1,166,0,154,0,73,0,74,0,76,1,116,0,175,1,121,0,53,1,75,0,170,1,169,1,222,0,106,0,98,2,52,1,125,2,204,0,152,1,117,2,115,2,116,2,6,0,200,0,172,1,171,1,34,1,203,0,110,2,201,0,76,2,62,0,63,0,33,1,66, +0,163,1,143,1,3,0,145,1,32,1,92,0,143,0,75,1,75,1,31,1,96,2,96,2,96,2,95,2,15,0,73,0,74,0,227,0,166,1,69,1,69,0,160,1,75,0,170,1,169,1,100,2,156,1,98,2,192,0,61,0,57,2,209,0,140,1,226,0,22,1,225,0,127,1,152,1,15,2,46,2,20,1,21,2,40,2,16,2,65,1,11,2,114,1,252,1,180,0,76,2,238,1,179,0,110,1,117,0,253,0,13,1,10,2,247,1,96,2,96,2,96,2,95,2,15,0,39,2,246,1,58,0,18,1,12,2,178,0,73,0,74,0,48,1,245,1,112,1,47,1,206,0,75,0,170,1,169,1,235,1,104,1,98,2,213,0,177,0,227,1,131,0,89,1,42,1,41,1,40,1,202,0,38,1, +224,1,234,1,210,1,134,0,172,0,129,0,188,1,90,1,214,1,128,0,58,1,203,1,103,0,127],"i8",Ga,u.Ga+10768); +F([126,0,148,0,124,0,167,0,187,1,235,0,96,2,96,2,96,2,95,2,15,0,186,1,183,1,111,2,234,0,43,1,145,0,71,2,35,1,121,1,69,2,160,0,119,0,156,0,14,1,124,2,203,3,169,0,23,1,114,2,8,2,113,2,217,1,112,2,170,0,109,2,106,2,119,0,168,0,55,0,153,1,167,1,25,2,97,2,30,1,29,1,149,1,58,2,48,2,44,2,5,0,52,0,202,1,42,2,147,0,11,1,7,2,248,1,6,2,150,1,6,1,239,0,4,1,0,2,87,1,255,1,2,1,97,1,53,2,0,1,224,0,251,0,103,1,21,1,19,1,220,1,219,1,246,0,96,1,244,0,211,1,199,1,236,0,233,0,232,0,51,1,185,1,25,1,205,0,163,0,141,1, +24,1,23,2,249,1,74,1,105,2,203,3,203,3,203,3,203,3,111,1,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,203,3,82,1,0,0,0,0,0,0,100,117,112,108,105,99,97,116,101,32,87,73,84,72,32,116,97,98,108,101,32,110,97,109,101,58,32,37,115,0,0,0,110,111,116,32,97,117,116,104,111,114,105,122,101,100,0,0,97,117,116,104,111,114,105,122,101,114,32,109,97,108,102,117,110,99,116,105,111,110,0,0,67,82,69,65,84,69,32,86,73,82,84,85,65,76,32,84,65,66,76,69,32,37,84,0,85,80,68,65,84,69,32,37,81,46,37,115, +32,83,69,84,32,116,121,112,101,61,39,116,97,98,108,101,39,44,32,110,97,109,101,61,37,81,44,32,116,98,108,95,110,97,109,101,61,37,81,44,32,114,111,111,116,112,97,103,101,61,48,44,32,115,113,108,61,37,81,32,87,72,69,82,69,32,114,111,119,105,100,61,35,37,100,0,115,113,108,105,116,101,95,116,101,109,112,95,109,97,115,116,101,114,0,0,0,0,0,0,115,113,108,105,116,101,95,109,97,115,116,101,114,0,0,0,110,97,109,101,61,39,37,113,39,32,65,78,68,32,116,121,112,101,61,39,116,97,98,108,101,39,0,0,0,0,0,0,118,105, +114,116,117,97,108,32,116,97,98,108,101,115,32,109,97,121,32,110,111,116,32,98,101,32,97,108,116,101,114,101,100,0,0,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,99,111,108,117,109,110,32,116,111,32,97,32,118,105,101,119,0,0,0,115,113,108,105,116,101,95,97,108,116,101,114,116,97,98,95,37,115,0,0,0,0,0,0,117,110,97,98,108,101,32,116,111,32,111,112,101,110,32,97,32,116,101,109,112,111,114,97,114,121,32,100,97,116,97,98,97,115,101,32,102,105,108,101,32,102,111,114,32,115,116,111,114,105,110, +103,32,116,101,109,112,111,114,97,114,121,32,116,97,98,108,101,115,0,0,0,115,113,108,105,116,101,95,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,97,108,116,101,114,101,100,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,80,82,73,77,65,82,89,32,75,69,89,32,99,111,108,117,109,110,0,67,97,110,110,111,116,32,97,100,100,32,97,32,85,78,73,81,85,69,32,99,111,108,117,109,110,0,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,82,69,70,69,82,69,78,67,69,83,32,99,111, +108,117,109,110,32,119,105,116,104,32,110,111,110,45,78,85,76,76,32,100,101,102,97,117,108,116,32,118,97,108,117,101,0,0,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,78,79,84,32,78,85,76,76,32,99,111,108,117,109,110,32,119,105,116,104,32,100,101,102,97,117,108,116,32,118,97,108,117,101,32,78,85,76,76,0,0,0,0,67,97,110,110,111,116,32,97,100,100,32,97,32,99,111,108,117,109,110,32,119,105,116,104,32,110,111,110,45,99,111,110,115,116,97,110,116,32,100,101,102,97,117,108,116,0,0,0,85,80,68,65, +84,69,32,34,37,119,34,46,37,115,32,83,69,84,32,115,113,108,32,61,32,115,117,98,115,116,114,40,115,113,108,44,49,44,37,100,41,32,124,124,32,39,44,32,39,32,124,124,32,37,81,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,37,100,41,32,87,72,69,82,69,32,116,121,112,101,32,61,32,39,116,97,98,108,101,39,32,65,78,68,32,110,97,109,101,32,61,32,37,81,0,0,0,0,116,98,108,95,110,97,109,101,61,37,81,0,0,0,0,0,116,121,112,101,61,39,116,114,105,103,103,101,114,39,32,65,78,68,32,40,37,115,41,0,110,97,109, +101,61,37,81,0,37,115,32,79,82,32,110,97,109,101,61,37,81,0,0,0,45,0,0,0,0,0,0,0,116,104,101,114,101,32,105,115,32,97,108,114,101,97,100,121,32,97,110,111,116,104,101,114,32,116,97,98,108,101,32,111,114,32,105,110,100,101,120,32,119,105,116,104,32,116,104,105,115,32,110,97,109,101,58,32,37,115,0,0,0,0,0,0,118,105,101,119,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,97,108,116,101,114,101,100,0,0,0,0,0,0,85,80,68,65,84,69,32,34,37,119,34,46,37,115,32,83,69,84,32,115,113,108,32,61,32,115,113, +108,105,116,101,95,114,101,110,97,109,101,95,112,97,114,101,110,116,40,115,113,108,44,32,37,81,44,32,37,81,41,32,87,72,69,82,69,32,37,115,59,0,0,0,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,115,113,108,32,61,32,67,65,83,69,32,87,72,69,78,32,116,121,112,101,32,61,32,39,116,114,105,103,103,101,114,39,32,84,72,69,78,32,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,114,105,103,103,101,114,40,115,113,108,44,32,37,81,41,69,76,83,69,32,115,113,108,105,116,101,95,114,101,110,97,109, +101,95,116,97,98,108,101,40,115,113,108,44,32,37,81,41,32,69,78,68,44,32,116,98,108,95,110,97,109,101,32,61,32,37,81,44,32,110,97,109,101,32,61,32,67,65,83,69,32,87,72,69,78,32,116,121,112,101,61,39,116,97,98,108,101,39,32,84,72,69,78,32,37,81,32,87,72,69,78,32,110,97,109,101,32,76,73,75,69,32,39,115,113,108,105,116,101,95,97,117,116,111,105,110,100,101,120,37,37,39,32,65,78,68,32,116,121,112,101,61,39,105,110,100,101,120,39,32,84,72,69,78,32,39,115,113,108,105,116,101,95,97,117,116,111,105,110,100, +101,120,95,39,32,124,124,32,37,81,32,124,124,32,115,117,98,115,116,114,40,110,97,109,101,44,37,100,43,49,56,41,32,69,76,83,69,32,110,97,109,101,32,69,78,68,32,87,72,69,82,69,32,116,98,108,95,110,97,109,101,61,37,81,32,67,79,76,76,65,84,69,32,110,111,99,97,115,101,32,65,78,68,32,40,116,121,112,101,61,39,116,97,98,108,101,39,32,79,82,32,116,121,112,101,61,39,105,110,100,101,120,39,32,79,82,32,116,121,112,101,61,39,116,114,105,103,103,101,114,39,41,59,0,115,113,108,105,116,101,95,115,101,113,117,101, +110,99,101,0,85,80,68,65,84,69,32,34,37,119,34,46,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,32,115,101,116,32,110,97,109,101,32,61,32,37,81,32,87,72,69,82,69,32,110,97,109,101,32,61,32,37,81,0,0,0,0,0,0,0,85,80,68,65,84,69,32,115,113,108,105,116,101,95,116,101,109,112,95,109,97,115,116,101,114,32,83,69,84,32,115,113,108,32,61,32,115,113,108,105,116,101,95,114,101,110,97,109,101,95,116,114,105,103,103,101,114,40,115,113,108,44,32,37,81,41,44,32,116,98,108,95,110,97,109,101,32,61,32, +37,81,32,87,72,69,82,69,32,37,115,59,0,0,0,0,0,118,105,101,119,32,37,115,32,105,115,32,99,105,114,99,117,108,97,114,108,121,32,100,101,102,105,110,101,100,0,0,0,0,0,2,0,3,0,5,0,6,0,7,0,8,0,9,0,110,111,32,115,117,99,104,32,99,111,108,108,97,116,105,111,110,32,115,101,113,117,101,110,99,101,58,32,37,115,0,0,3,2,1,0,0,0,0,0,73,78,84,69,71,69,82,0,37,115,58,37,100,0,0,0,97,32,71,82,79,85,80,32,66,89,32,99,108,97,117,115,101,32,105,115,32,114,101,113,117,105,114,101,100,32,98,101,102,111,114,101,32,72, +65,86,73,78,71,0,0,0,0,0,79,82,68,69,82,0,0,0,71,82,79,85,80,0,0,0,97,103,103,114,101,103,97,116,101,32,102,117,110,99,116,105,111,110,115,32,97,114,101,32,110,111,116,32,97,108,108,111,119,101,100,32,105,110,32,116,104,101,32,71,82,79,85,80,32,66,89,32,99,108,97,117,115,101,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,116,101,114,109,115,32,105,110,32,79,82,68,69,82,32,66,89,32,99,108,97,117,115,101,0,0,0,0,0,0,0,37,114,32,79,82,68,69,82,32,66,89,32,116,101,114,109,32,100,111,101,115,32,110,111, +116,32,109,97,116,99,104,32,97,110,121,32,99,111,108,117,109,110,32,105,110,32,116,104,101,32,114,101,115,117,108,116,32,115,101,116,0,0,0,0,37,114,32,37,115,32,66,89,32,116,101,114,109,32,111,117,116,32,111,102,32,114,97,110,103,101,32,45,32,115,104,111,117,108,100,32,98,101,32,98,101,116,119,101,101,110,32,49,32,97,110,100,32,37,100,0,116,111,111,32,109,97,110,121,32,116,101,114,109,115,32,105,110,32,37,115,32,66,89,32,99,108,97,117,115,101,0,0,69,120,112,114,101,115,115,105,111,110,32,116,114, +101,101,32,105,115,32,116,111,111,32,108,97,114,103,101,32,40,109,97,120,105,109,117,109,32,100,101,112,116,104,32,37,100,41,0,102,117,110,99,116,105,111,110,115,0,0,0,0,0,0,0,115,101,99,111,110,100,32,97,114,103,117,109,101,110,116,32,116,111,32,108,105,107,101,108,105,104,111,111,100,40,41,32,109,117,115,116,32,98,101,32,97,32,99,111,110,115,116,97,110,116,32,98,101,116,119,101,101,110,32,48,46,48,32,97,110,100,32,49,46,48,0,0,110,111,116,32,97,117,116,104,111,114,105,122,101,100,32,116,111,32, +117,115,101,32,102,117,110,99,116,105,111,110,58,32,37,115,0,0,0,0,0,0,109,105,115,117,115,101,32,111,102,32,97,103,103,114,101,103,97,116,101,32,102,117,110,99,116,105,111,110,32,37,46,42,115,40,41,0,0,0,0,0,110,111,32,115,117,99,104,32,102,117,110,99,116,105,111,110,58,32,37,46,42,115,0,0,119,114,111,110,103,32,110,117,109,98,101,114,32,111,102,32,97,114,103,117,109,101,110,116,115,32,116,111,32,102,117,110,99,116,105,111,110,32,37,46,42,115,40,41,0,0,0,0,115,117,98,113,117,101,114,105,101,115, +0,0,0,0,0,0,112,97,114,97,109,101,116,101,114,115,0,0,0,0,0,0,37,115,32,112,114,111,104,105,98,105,116,101,100,32,105,110,32,67,72,69,67,75,32,99,111,110,115,116,114,97,105,110,116,115,0,0,0,0,0,0,37,115,32,112,114,111,104,105,98,105,116,101,100,32,105,110,32,112,97,114,116,105,97,108,32,105,110,100,101,120,32,87,72,69,82,69,32,99,108,97,117,115,101,115,0,0,0,0,110,101,119,0,0,0,0,0,111,108,100,0,0,0,0,0,109,105,115,117,115,101,32,111,102,32,97,108,105,97,115,101,100,32,97,103,103,114,101,103,97, +116,101,32,37,115,0,0,110,111,32,115,117,99,104,32,99,111,108,117,109,110,0,0,97,109,98,105,103,117,111,117,115,32,99,111,108,117,109,110,32,110,97,109,101,0,0,0,37,115,58,32,37,115,46,37,115,46,37,115,0,0,0,0,37,115,58,32,37,115,46,37,115,0,0,0,0,0,0,0,37,115,58,32,37,115,0,0,82,79,87,73,68,0,0,0,97,99,99,101,115,115,32,116,111,32,37,115,46,37,115,46,37,115,32,105,115,32,112,114,111,104,105,98,105,116,101,100,0,0,0,0,0,0,0,0,97,99,99,101,115,115,32,116,111,32,37,115,46,37,115,32,105,115,32,112,114, +111,104,105,98,105,116,101,100,0,0,0,95,82,79,87,73,68,95,0,79,73,68,0,0,0,0,0,115,113,108,105,116,101,95,115,113,95,37,112,0,0,0,0,116,111,111,32,109,97,110,121,32,114,101,102,101,114,101,110,99,101,115,32,116,111,32,34,37,115,34,58,32,109,97,120,32,54,53,53,51,53,0,0,37,115,46,37,115,0,0,0,37,115,46,37,115,46,37,115,0,0,0,0,0,0,0,0,110,111,32,115,117,99,104,32,116,97,98,108,101,58,32,37,115,0,0,0,0,0,0,0,110,111,32,116,97,98,108,101,115,32,115,112,101,99,105,102,105,101,100,0,0,0,0,0,116,111,111, +32,109,97,110,121,32,99,111,108,117,109,110,115,32,105,110,32,114,101,115,117,108,116,32,115,101,116,0,0,97,32,78,65,84,85,82,65,76,32,106,111,105,110,32,109,97,121,32,110,111,116,32,104,97,118,101,32,97,110,32,79,78,32,111,114,32,85,83,73,78,71,32,99,108,97,117,115,101,0,0,0,0,0,0,0,99,97,110,110,111,116,32,104,97,118,101,32,98,111,116,104,32,79,78,32,97,110,100,32,85,83,73,78,71,32,99,108,97,117,115,101,115,32,105,110,32,116,104,101,32,115,97,109,101,32,106,111,105,110,0,0,99,97,110,110,111,116, +32,106,111,105,110,32,117,115,105,110,103,32,99,111,108,117,109,110,32,37,115,32,45,32,99,111,108,117,109,110,32,110,111,116,32,112,114,101,115,101,110,116,32,105,110,32,98,111,116,104,32,116,97,98,108,101,115,0,110,111,32,115,117,99,104,32,105,110,100,101,120,58,32,37,115,0,0,0,0,0,0,0,109,117,108,116,105,112,108,101,32,114,101,102,101,114,101,110,99,101,115,32,116,111,32,114,101,99,117,114,115,105,118,101,32,116,97,98,108,101,58,32,37,115,0,0,0,0,0,0,99,105,114,99,117,108,97,114,32,114,101,102, +101,114,101,110,99,101,58,32,37,115,0,0,116,97,98,108,101,32,37,115,32,104,97,115,32,37,100,32,118,97,108,117,101,115,32,102,111,114,32,37,100,32,99,111,108,117,109,110,115,0,0,0,109,117,108,116,105,112,108,101,32,114,101,99,117,114,115,105,118,101,32,114,101,102,101,114,101,110,99,101,115,58,32,37,115,0,0,0,0,0,0,0,114,101,99,117,114,115,105,118,101,32,114,101,102,101,114,101,110,99,101,32,105,110,32,97,32,115,117,98,113,117,101,114,121,58,32,37,115,0,0,0,110,111,32,115,117,99,104,32,109,111,100, +117,108,101,58,32,37,115,0,0,0,0,0,0,118,116,97,98,108,101,32,99,111,110,115,116,114,117,99,116,111,114,32,102,97,105,108,101,100,58,32,37,115,0,0,0,118,116,97,98,108,101,32,99,111,110,115,116,114,117,99,116,111,114,32,100,105,100,32,110,111,116,32,100,101,99,108,97,114,101,32,115,99,104,101,109,97,58,32,37,115,0,0,0,104,105,100,100,101,110,0,0,32,104,105,100,100,101,110,0,111,98,106,101,99,116,32,110,97,109,101,32,114,101,115,101,114,118,101,100,32,102,111,114,32,105,110,116,101,114,110,97,108,32, +117,115,101,58,32,37,115,0,0,0,0,0,0,0,99,111,114,114,117,112,116,32,100,97,116,97,98,97,115,101,0,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,100,97,116,97,98,97,115,101,32,37,84,0,0,0,0,0,105,100,120,0,0,0,0,0,116,98,108,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,40,97,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,51,0,0,0,0,0,0,0,0,0,0,0,24,97,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,97,97,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,52,0,0,0,0,0,0,0,0,0,0,0,248,96,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,115,116,97,116,95,103,101,116,0,0,0,0,0,0,0,0,37,108,108,117,0,0,0,0,32,37,108,108,117,0,0,0,115,116,97,116,95,112,117,115,104,0,0,0,0,0,0,0,115,116,97,116,95,105,110,105,116,0,0,0,0,0,0,0,80,97,0,0,96,97,0,0,112,97,0,0,0,0,0,0,128,97,0,0,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,49,0,0,0,0,116,98,108,44,105,100,120,44,115,116,97,116,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,51,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,52,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37, +81,46,37,115,40,37,115,41,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,37,115,32,87,72,69,82,69,32,37,115,61,37,81,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,115,113,108,105,116,101,95,109,97,115,116,101,114,40,10,32,32,116,121,112,101,32,116,101,120,116,44,10,32,32,110,97,109,101,32,116,101,120,116,44,10,32,32,116,98,108,95,110,97,109,101,32,116,101,120,116,44,10,32,32,114,111,111,116,112,97,103,101,32,105,110,116,101,103,101,114,44,10,32,32,115,113,108,32,116,101,120,116,10,41,0,67,82,69, +65,84,69,32,84,69,77,80,32,84,65,66,76,69,32,115,113,108,105,116,101,95,116,101,109,112,95,109,97,115,116,101,114,40,10,32,32,116,121,112,101,32,116,101,120,116,44,10,32,32,110,97,109,101,32,116,101,120,116,44,10,32,32,116,98,108,95,110,97,109,101,32,116,101,120,116,44,10,32,32,114,111,111,116,112,97,103,101,32,105,110,116,101,103,101,114,44,10,32,32,115,113,108,32,116,101,120,116,10,41,0,0,0,0,0,0,0,49,0,0,0,0,0,0,0,97,116,116,97,99,104,101,100,32,100,97,116,97,98,97,115,101,115,32,109,117,115,116, +32,117,115,101,32,116,104,101,32,115,97,109,101,32,116,101,120,116,32,101,110,99,111,100,105,110,103,32,97,115,32,109,97,105,110,32,100,97,116,97,98,97,115,101,0,0,0,0,0,117,110,115,117,112,112,111,114,116,101,100,32,102,105,108,101,32,102,111,114,109,97,116,0,83,69,76,69,67,84,32,110,97,109,101,44,32,114,111,111,116,112,97,103,101,44,32,115,113,108,32,70,82,79,77,32,39,37,113,39,46,37,115,32,79,82,68,69,82,32,66,89,32,114,111,119,105,100,0,0,83,69,76,69,67,84,32,116,98,108,44,105,100,120,44,115, +116,97,116,32,70,82,79,77,32,37,81,46,115,113,108,105,116,101,95,115,116,97,116,49,0,0,0,0,0,0,0,0,117,110,111,114,100,101,114,101,100,0,0,0,0,0,0,0,115,122,61,91,48,45,57,93,42,0,0,0,0,0,0,0,33,0,32,0,30,0,28,0,26,0,0,0,0,0,0,0,105,110,118,97,108,105,100,32,114,111,111,116,112,97,103,101,0,0,0,0,0,0,0,0,109,97,108,102,111,114,109,101,100,32,100,97,116,97,98,97,115,101,32,115,99,104,101,109,97,32,40,37,115,41,0,0,37,115,32,45,32,37,115,0,117,110,97,98,108,101,32,116,111,32,105,100,101,110,116,105, +102,121,32,116,104,101,32,111,98,106,101,99,116,32,116,111,32,98,101,32,114,101,105,110,100,101,120,101,100,0,0,0,44,32,0,0,0,0,0,0,46,0,0,0,0,0,0,0,109,105,115,117,115,101,32,111,102,32,97,103,103,114,101,103,97,116,101,58,32,37,115,40,41,0,0,0,0,0,0,0,117,110,107,110,111,119,110,32,102,117,110,99,116,105,111,110,58,32,37,46,42,115,40,41,0,0,0,0,0,0,0,0,82,65,73,83,69,40,41,32,109,97,121,32,111,110,108,121,32,98,101,32,117,115,101,100,32,119,105,116,104,105,110,32,97,32,116,114,105,103,103,101,114, +45,112,114,111,103,114,97,109,0,0,0,0,0,0,0,69,88,69,67,85,84,69,32,37,115,37,115,32,83,85,66,81,85,69,82,89,32,37,100,0,0,0,0,0,0,0,0,67,79,82,82,69,76,65,84,69,68,32,0,0,0,0,0,76,73,83,84,0,0,0,0,83,67,65,76,65,82,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,53,0,0,0,0,0,0,0,0,0,0,0,32,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,100,101,116,97,99,104,0,0,0,110,111,32,115,117,99,104,32,100,97,116,97,98,97,115,101,58,32,37,115,0,0,0,0,99,97,110,110,111, +116,32,100,101,116,97,99,104,32,100,97,116,97,98,97,115,101,32,37,115,0,0,0,0,0,0,0,99,97,110,110,111,116,32,68,69,84,65,67,72,32,100,97,116,97,98,97,115,101,32,119,105,116,104,105,110,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,37,115,32,105,115,32,108,111,99,107,101,100,0,0,0,3,0,1,0,0,0,0,0,0,0,0,0,54,0,0,0,0,0,0,0,0,0,0,0,216,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,113,108,105,116,101,95,97,116,116,97,99,104,0,0,0,116,111,111,32,109,97,110,121,32,97,116, +116,97,99,104,101,100,32,100,97,116,97,98,97,115,101,115,32,45,32,109,97,120,32,37,100,0,0,0,0,99,97,110,110,111,116,32,65,84,84,65,67,72,32,100,97,116,97,98,97,115,101,32,119,105,116,104,105,110,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,0,0,100,97,116,97,98,97,115,101,32,37,115,32,105,115,32,97,108,114,101,97,100,121,32,105,110,32,117,115,101,0,0,0,100,97,116,97,98,97,115,101,32,105,115,32,97,108,114,101,97,100,121,32,97,116,116,97,99,104,101,100,0,0,0,0,117,110,97,98,108,101,32,116, +111,32,111,112,101,110,32,100,97,116,97,98,97,115,101,58,32,37,115,0,0,0,0,0,110,111,32,115,117,99,104,32,116,114,105,103,103,101,114,58,32,37,83,0,0,0,0,0,105,0,246,0,97,0,1,0,46,0,1,2,78,2,247,1,97,0,1,0,46,0,0,2,78,2,247,1,74,0,0,0,9,0,254,0,0,0,0,0,116,101,109,112,111,114,97,114,121,32,116,114,105,103,103,101,114,32,109,97,121,32,110,111,116,32,104,97,118,101,32,113,117,97,108,105,102,105,101,100,32,110,97,109,101,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,116,114,105,103,103,101, +114,115,32,111,110,32,118,105,114,116,117,97,108,32,116,97,98,108,101,115,0,0,0,0,0,0,0,0,116,114,105,103,103,101,114,32,37,84,32,97,108,114,101,97,100,121,32,101,120,105,115,116,115,0,0,0,0,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,116,114,105,103,103,101,114,32,111,110,32,115,121,115,116,101,109,32,116,97,98,108,101,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,37,115,32,116,114,105,103,103,101,114,32,111,110,32,118,105,101,119,58,32,37,83,0,0,0,0,66,69,70,79,82,69,0,0,65, +70,84,69,82,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,73,78,83,84,69,65,68,32,79,70,32,116,114,105,103,103,101,114,32,111,110,32,116,97,98,108,101,58,32,37,83,0,0,0,37,115,32,37,84,32,99,97,110,110,111,116,32,114,101,102,101,114,101,110,99,101,32,111,98,106,101,99,116,115,32,105,110,32,100,97,116,97,98,97,115,101,32,37,115,0,0,0,37,115,32,99,97,110,110,111,116,32,117,115,101,32,118,97,114,105,97,98,108,101,115,0,73,78,83,69,82,84,32,73,78,84,79,32,37,81,46,37,115,32,86,65,76,85,69,83, +40,39,116,114,105,103,103,101,114,39,44,37,81,44,37,81,44,48,44,39,67,82,69,65,84,69,32,84,82,73,71,71,69,82,32,37,113,39,41,0,116,121,112,101,61,39,116,114,105,103,103,101,114,39,32,65,78,68,32,110,97,109,101,61,39,37,113,39,0,0,0,0,45,37,84,0,0,0,0,0,114,101,115,117,108,116,0,0,88,112,0,0,0,0,0,0,0,0,0,0,216,107,0,0,1,1,0,0,0,0,0,0,104,112,0,0,2,0,0,0,0,0,16,0,120,112,0,0,3,0,0,0,0,0,0,0,88,107,0,0,4,1,0,0,0,0,0,0,136,112,0,0,2,0,0,0,16,0,0,0,152,112,0,0,5,0,0,0,0,0,0,0,176,112,0,0,2,0,0,0,8,0, +0,0,200,112,0,0,6,0,0,0,0,0,0,0,216,112,0,0,7,0,0,0,0,0,0,0,232,112,0,0,2,0,0,0,128,0,0,0,248,112,0,0,9,1,0,0,0,0,0,0,8,113,0,0,10,1,0,0,0,0,0,0,32,113,0,0,2,0,0,0,0,0,0,1,56,113,0,0,2,0,0,0,0,1,0,0,128,110,0,0,11,0,0,0,0,0,0,0,80,113,0,0,12,1,0,0,0,0,0,0,104,113,0,0,13,1,0,0,0,0,0,0,128,113,0,0,2,0,0,0,0,0,8,0,144,113,0,0,0,0,0,0,0,0,0,0,160,113,0,0,2,0,0,0,32,0,0,0,184,113,0,0,2,0,0,0,4,0,0,0,200,113,0,0,2,0,0,0,0,32,0,0,232,113,0,0,14,1,0,0,0,0,0,0,0,114,0,0,15,1,0,0,0,0,0,0,16,114,0,0,16,1,0, +0,0,0,0,0,120,109,0,0,17,1,0,0,0,0,0,0,176,107,0,0,18,1,0,0,0,0,0,0,192,107,0,0,19,0,0,0,0,0,0,0,32,114,0,0,2,0,0,0,0,128,0,0,160,107,0,0,21,0,0,0,0,0,0,0,56,114,0,0,22,1,0,0,0,0,0,0,0,108,0,0,23,0,0,0,0,0,0,0,72,114,0,0,22,1,0,0,0,0,0,0,104,107,0,0,24,0,0,0,0,0,0,0,88,114,0,0,2,0,0,0,0,0,0,2,104,114,0,0,17,1,0,0,0,0,0,0,120,114,0,0,2,0,0,0,0,64,0,0,144,114,0,0,2,0,0,0,0,0,4,0,168,114,0,0,2,0,0,0,0,0,2,0,200,114,0,0,0,0,0,0,0,0,0,0,120,107,0,0,25,0,0,0,0,0,0,0,216,114,0,0,2,0,0,0,64,0,0,0,240,114, +0,0,26,0,0,0,0,0,0,0,40,111,0,0,27,0,0,0,0,0,0,0,0,115,0,0,28,1,0,0,0,0,0,0,88,108,0,0,29,1,0,0,0,0,0,0,8,115,0,0,30,1,0,0,0,0,0,0,16,108,0,0,31,0,0,0,0,0,0,0,32,108,0,0,32,0,0,0,0,0,0,0,24,115,0,0,0,0,0,0,0,0,0,0,8,111,0,0,33,0,0,0,0,0,0,0,40,115,0,0,34,1,0,0,0,0,0,0,56,115,0,0,2,0,0,0,0,8,1,0,4,0,0,0,50,0,1,3,134,1,8,0,25,0,2,0,90,1,2,1,134,1,8,0,25,0,1,0,156,0,0,0,35,1,1,0,0,0,0,0,99,97,99,104,101,95,115,105,122,101,0,0,0,0,0,0,112,97,103,101,95,115,105,122,101,0,0,0,0,0,0,0,115,101,99,117,114, +101,95,100,101,108,101,116,101,0,0,0,110,111,114,109,97,108,0,0,101,120,99,108,117,115,105,118,101,0,0,0,0,0,0,0,108,111,99,107,105,110,103,95,109,111,100,101,0,0,0,0,106,111,117,114,110,97,108,95,109,111,100,101,0,0,0,0,106,111,117,114,110,97,108,95,115,105,122,101,95,108,105,109,105,116,0,0,0,0,0,0,97,117,116,111,95,118,97,99,117,117,109,0,0,0,0,0,4,0,1,0,50,0,1,4,44,1,0,0,24,0,2,0,25,0,1,0,51,0,7,1,109,109,97,112,95,115,105,122,101,0,0,0,0,0,0,0,116,101,109,112,95,115,116,111,114,101,0,0,0,0,0, +0,116,101,109,112,95,115,116,111,114,101,95,100,105,114,101,99,116,111,114,121,0,0,0,0,110,111,116,32,97,32,119,114,105,116,97,98,108,101,32,100,105,114,101,99,116,111,114,121,0,0,0,0,0,0,0,0,115,121,110,99,104,114,111,110,111,117,115,0,0,0,0,0,83,97,102,101,116,121,32,108,101,118,101,108,32,109,97,121,32,110,111,116,32,98,101,32,99,104,97,110,103,101,100,32,105,110,115,105,100,101,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,99,105,100,0,0,0,0,0,110,97,109,101,0,0,0,0,116,121,112,101, +0,0,0,0,110,111,116,110,117,108,108,0,100,102,108,116,95,118,97,108,117,101,0,0,0,0,0,0,112,107,0,0,0,0,0,0,116,97,98,108,101,0,0,0,119,105,100,116,104,0,0,0,104,101,105,103,104,116,0,0,115,101,113,110,111,0,0,0,115,101,113,0,0,0,0,0,117,110,105,113,117,101,0,0,102,105,108,101,0,0,0,0,105,100,0,0,0,0,0,0,102,114,111,109,0,0,0,0,116,111,0,0,0,0,0,0,111,110,95,117,112,100,97,116,101,0,0,0,0,0,0,0,111,110,95,100,101,108,101,116,101,0,0,0,0,0,0,0,109,97,116,99,104,0,0,0,78,79,78,69,0,0,0,0,112,97,114, +101,110,116,0,0,102,107,105,100,0,0,0,0,37,1,0,0,135,1,0,0,97,0,3,0,35,3,1,0,105,110,116,101,103,114,105,116,121,95,99,104,101,99,107,0,42,42,42,32,105,110,32,100,97,116,97,98,97,115,101,32,37,115,32,42,42,42,10,0,114,111,119,32,0,0,0,0,32,109,105,115,115,105,110,103,32,102,114,111,109,32,105,110,100,101,120,32,0,0,0,0,119,114,111,110,103,32,35,32,111,102,32,101,110,116,114,105,101,115,32,105,110,32,105,110,100,101,120,32,0,0,0,0,111,107,0,0,0,0,0,0,48,110,0,0,1,0,0,0,56,110,0,0,1,0,0,0,64,110,0, +0,2,0,0,0,80,110,0,0,3,0,0,0,96,110,0,0,2,0,0,0,104,110,0,0,3,0,0,0,112,110,0,0,0,0,0,0,120,110,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,84,70,56,0,0,0,0,85,84,70,45,56,0,0,0,85,84,70,45,49,54,108,101,0,0,0,0,0,0,0,0,85,84,70,45,49,54,98,101,0,0,0,0,0,0,0,0,85,84,70,49,54,108,101,0,85,84,70,49,54,98,101,0,85,84,70,45,49,54,0,0,85,84,70,49,54,0,0,0,101,110,99,111,100,105,110,103,0,0,0,0,0,0,0,0,117,110,115,117,112,112,111,114,116,101,100,32,101,110,99,111,100,105,110,103,58,32,37,115,0,0,0,0,0,0,0,0,4,0,1,0, +25,0,1,0,51,0,0,1,0,0,0,0,4,0,0,0,50,0,1,0,35,1,1,0,0,0,0,0,99,111,109,112,105,108,101,95,111,112,116,105,111,110,0,0,102,117,108,108,0,0,0,0,114,101,115,116,97,114,116,0,98,117,115,121,0,0,0,0,99,104,101,99,107,112,111,105,110,116,101,100,0,0,0,0,119,97,108,95,97,117,116,111,99,104,101,99,107,112,111,105,110,116,0,0,0,0,0,0,116,105,109,101,111,117,116,0,115,111,102,116,95,104,101,97,112,95,108,105,109,105,116,0,37,95,0,0,0,0,0,0,102,111,114,101,105,103,110,32,107,101,121,32,109,105,115,109,97,116, +99,104,32,45,32,34,37,119,34,32,114,101,102,101,114,101,110,99,105,110,103,32,34,37,119,34,0,0,0,0,83,69,84,32,78,85,76,76,0,0,0,0,0,0,0,0,83,69,84,32,68,69,70,65,85,76,84,0,0,0,0,0,67,65,83,67,65,68,69,0,82,69,83,84,82,73,67,84,0,0,0,0,0,0,0,0,78,79,32,65,67,84,73,79,78,0,0,0,0,0,0,0,116,101,109,112,111,114,97,114,121,32,115,116,111,114,97,103,101,32,99,97,110,110,111,116,32,98,101,32,99,104,97,110,103,101,100,32,102,114,111,109,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116,105, +111,110,0,0,0,110,111,110,101,0,0,0,0,105,110,99,114,101,109,101,110,116,97,108,0,0,0,0,0,40,112,0,0,48,112,0,0,56,112,0,0,64,112,0,0,136,44,0,0,80,112,0,0,100,101,108,101,116,101,0,0,112,101,114,115,105,115,116,0,111,102,102,0,0,0,0,0,116,114,117,110,99,97,116,101,0,0,0,0,0,0,0,0,119,97,108,0,0,0,0,0,97,112,112,108,105,99,97,116,105,111,110,95,105,100,0,0,97,117,116,111,109,97,116,105,99,95,105,110,100,101,120,0,98,117,115,121,95,116,105,109,101,111,117,116,0,0,0,0,99,97,99,104,101,95,115,112,105, +108,108,0,0,0,0,0,99,97,115,101,95,115,101,110,115,105,116,105,118,101,95,108,105,107,101,0,0,0,0,0,99,104,101,99,107,112,111,105,110,116,95,102,117,108,108,102,115,121,110,99,0,0,0,0,99,111,108,108,97,116,105,111,110,95,108,105,115,116,0,0,99,111,109,112,105,108,101,95,111,112,116,105,111,110,115,0,99,111,117,110,116,95,99,104,97,110,103,101,115,0,0,0,100,97,116,97,98,97,115,101,95,108,105,115,116,0,0,0,100,101,102,97,117,108,116,95,99,97,99,104,101,95,115,105,122,101,0,0,0,0,0,0,100,101,102,101, +114,95,102,111,114,101,105,103,110,95,107,101,121,115,0,0,0,0,0,0,101,109,112,116,121,95,114,101,115,117,108,116,95,99,97,108,108,98,97,99,107,115,0,0,102,111,114,101,105,103,110,95,107,101,121,95,99,104,101,99,107,0,0,0,0,0,0,0,102,111,114,101,105,103,110,95,107,101,121,95,108,105,115,116,0,0,0,0,0,0,0,0,102,111,114,101,105,103,110,95,107,101,121,115,0,0,0,0,102,114,101,101,108,105,115,116,95,99,111,117,110,116,0,0,102,117,108,108,95,99,111,108,117,109,110,95,110,97,109,101,115,0,0,0,0,0,0,0,102, +117,108,108,102,115,121,110,99,0,0,0,0,0,0,0,105,103,110,111,114,101,95,99,104,101,99,107,95,99,111,110,115,116,114,97,105,110,116,115,0,0,0,0,0,0,0,0,105,110,99,114,101,109,101,110,116,97,108,95,118,97,99,117,117,109,0,0,0,0,0,0,105,110,100,101,120,95,105,110,102,111,0,0,0,0,0,0,105,110,100,101,120,95,108,105,115,116,0,0,0,0,0,0,108,101,103,97,99,121,95,102,105,108,101,95,102,111,114,109,97,116,0,0,0,0,0,0,109,97,120,95,112,97,103,101,95,99,111,117,110,116,0,0,112,97,103,101,95,99,111,117,110,116, +0,0,0,0,0,0,113,117,101,114,121,95,111,110,108,121,0,0,0,0,0,0,113,117,105,99,107,95,99,104,101,99,107,0,0,0,0,0,114,101,97,100,95,117,110,99,111,109,109,105,116,116,101,100,0,0,0,0,0,0,0,0,114,101,99,117,114,115,105,118,101,95,116,114,105,103,103,101,114,115,0,0,0,0,0,0,114,101,118,101,114,115,101,95,117,110,111,114,100,101,114,101,100,95,115,101,108,101,99,116,115,0,0,0,0,0,0,0,115,99,104,101,109,97,95,118,101,114,115,105,111,110,0,0,115,104,111,114,116,95,99,111,108,117,109,110,95,110,97,109,101, +115,0,0,0,0,0,0,115,104,114,105,110,107,95,109,101,109,111,114,121,0,0,0,115,116,97,116,115,0,0,0,116,97,98,108,101,95,105,110,102,111,0,0,0,0,0,0,117,115,101,114,95,118,101,114,115,105,111,110,0,0,0,0,119,97,108,95,99,104,101,99,107,112,111,105,110,116,0,0,119,114,105,116,97,98,108,101,95,115,99,104,101,109,97,0,110,111,32,115,117,99,104,32,105,110,100,101,120,58,32,37,83,0,0,0,0,0,0,0,105,110,100,101,120,32,97,115,115,111,99,105,97,116,101,100,32,119,105,116,104,32,85,78,73,81,85,69,32,111,114, +32,80,82,73,77,65,82,89,32,75,69,89,32,99,111,110,115,116,114,97,105,110,116,32,99,97,110,110,111,116,32,98,101,32,100,114,111,112,112,101,100,0,0,0,0,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,37,115,32,87,72,69,82,69,32,110,97,109,101,61,37,81,32,65,78,68,32,116,121,112,101,61,39,105,110,100,101,120,39,0,0,0,0,0,0,0,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,114,111,111,116,112,97,103,101,61,37,100,32,87,72,69,82,69,32,35,37,100,32,65,78,68,32,114,111,111,116,112,97,103,101, +61,35,37,100,0,115,113,108,105,116,101,95,115,116,97,116,37,100,0,0,0,48,0,0,0,0,0,0,0,118,97,114,105,97,98,108,101,32,110,117,109,98,101,114,32,109,117,115,116,32,98,101,32,98,101,116,119,101,101,110,32,63,49,32,97,110,100,32,63,37,100,0,0,0,0,0,0,116,111,111,32,109,97,110,121,32,83,81,76,32,118,97,114,105,97,98,108,101,115,0,0,116,97,98,108,101,32,37,83,32,104,97,115,32,110,111,32,99,111,108,117,109,110,32,110,97,109,101,100,32,37,115,0,116,97,98,108,101,32,37,83,32,104,97,115,32,37,100,32,99,111, +108,117,109,110,115,32,98,117,116,32,37,100,32,118,97,108,117,101,115,32,119,101,114,101,32,115,117,112,112,108,105,101,100,0,0,0,0,0,37,100,32,118,97,108,117,101,115,32,102,111,114,32,37,100,32,99,111,108,117,109,110,115,0,0,0,0,0,0,0,0,114,111,119,115,32,105,110,115,101,114,116,101,100,0,0,0,97,116,32,109,111,115,116,32,37,100,32,116,97,98,108,101,115,32,105,110,32,97,32,106,111,105,110,0,0,0,0,0,62,60,59,61,0,0,0,0,0,0,105,102,62,59,61,60,113,111,110,112,0,0,0,0,9,8,0,0,0,0,0,0,105,102,0,0,0,0, +0,0,83,69,65,82,67,72,0,0,83,67,65,78,0,0,0,0,37,115,32,83,85,66,81,85,69,82,89,32,37,100,0,0,37,115,32,84,65,66,76,69,32,37,115,0,0,0,0,0,37,115,32,65,83,32,37,115,0,0,0,0,0,0,0,0,37,115,32,85,83,73,78,71,32,80,82,73,77,65,82,89,32,75,69,89,37,46,48,115,37,115,0,0,0,0,0,0,37,115,37,46,48,115,37,115,0,0,0,0,0,0,0,0,37,115,32,85,83,73,78,71,32,65,85,84,79,77,65,84,73,67,32,67,79,86,69,82,73,78,71,32,73,78,68,69,88,37,46,48,115,37,115,0,37,115,32,85,83,73,78,71,32,67,79,86,69,82,73,78,71,32,73,78,68, +69,88,32,37,115,37,115,0,0,0,0,37,115,32,85,83,73,78,71,32,73,78,68,69,88,32,37,115,37,115,0,0,0,0,0,37,115,32,85,83,73,78,71,32,73,78,84,69,71,69,82,32,80,82,73,77,65,82,89,32,75,69,89,0,0,0,0,37,115,32,40,114,111,119,105,100,61,63,41,0,0,0,0,37,115,32,40,114,111,119,105,100,62,63,32,65,78,68,32,114,111,119,105,100,60,63,41,0,0,0,0,0,0,0,0,37,115,32,40,114,111,119,105,100,62,63,41,0,0,0,0,37,115,32,40,114,111,119,105,100,60,63,41,0,0,0,0,37,115,32,86,73,82,84,85,65,76,32,84,65,66,76,69,32,73,78, +68,69,88,32,37,100,58,37,115,0,0,0,0,32,40,0,0,0,0,0,0,61,0,0,0,0,0,0,0,32,65,78,68,32,0,0,0,65,78,89,40,0,0,0,0,41,0,0,0,0,0,0,0,62,0,0,0,0,0,0,0,60,0,0,0,0,0,0,0,97,117,116,111,109,97,116,105,99,32,105,110,100,101,120,32,111,110,32,37,115,40,37,115,41,0,0,0,0,0,0,0,97,117,116,111,45,105,110,100,101,120,0,0,0,0,0,0,110,111,32,113,117,101,114,121,32,115,111,108,117,116,105,111,110,0,0,0,0,0,0,0,10,10,9,9,8,8,7,7,7,6,6,6,5,5,5,4,4,4,4,3,3,3,3,3,3,2,2,2,2,2,2,2,37,115,46,120,66,101,115,116,73,110,100, +101,120,40,41,32,109,97,108,102,117,110,99,116,105,111,110,0,0,0,0,0,116,97,98,108,101,32,37,115,58,32,120,66,101,115,116,73,110,100,101,120,32,114,101,116,117,114,110,101,100,32,97,110,32,105,110,118,97,108,105,100,32,112,108,97,110,0,0,0,83,81,0,0,0,0,0,0,45,45,32,84,82,73,71,71,69,82,32,37,115,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,2,0,1,0,1,1,4,36,1,4,5,16,0,2,2,2,2,0,2,2,0,0,32,0,0,4,5,4,0,0,1,1,5,5,0,0,0,2,2,16,0,0,0,0,0,0,0,17,17,17,17,8,17,17,17,17,2,2,0,76,76,0,0,0,5,5,21,21,21,21,21,21,0,76,76,76, +76,76,76,76,76,76,76,0,36,2,0,0,2,0,1,1,1,1,8,8,0,2,1,1,1,1,2,0,0,2,2,0,0,0,0,0,0,12,69,21,1,2,0,1,8,2,5,5,5,0,1,0,0,0,0,4,4,4,4,4,0,0,0,1,0,2,2,1,0,0,0,0,16,16,2,16,0,0,0,0,0,1,2,3,4,6,8,8,0,0,0,0,0,0,0,0,144,92,0,0,3,0,0,0,136,92,0,0,3,0,0,0,111,105,100,0,0,0,0,0,70,79,82,69,73,71,78,32,75,69,89,32,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,0,0,0,37,115,46,114,111,119,105,100,0,0,0,0,0,0,0,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,109,111,100,105, +102,105,101,100,0,0,0,0,99,97,110,110,111,116,32,109,111,100,105,102,121,32,37,115,32,98,101,99,97,117,115,101,32,105,116,32,105,115,32,97,32,118,105,101,119,0,0,0,114,111,119,115,32,117,112,100,97,116,101,100,0,0,0,0,95,114,111,119,105,100,95,0,116,111,111,32,109,97,110,121,32,99,111,108,117,109,110,115,32,105,110,32,37,115,0,0,114,111,119,115,32,100,101,108,101,116,101,100,0,0,0,0,110,97,116,117,114,97,108,101,102,116,111,117,116,101,114,105,103,104,116,102,117,108,108,105,110,110,101,114,99,114, +111,115,115,0,0,0,0,0,0,0,0,7,4,6,4,40,10,5,32,14,5,48,19,4,56,23,5,1,28,5,3,0,0,0,117,110,107,110,111,119,110,32,111,114,32,117,110,115,117,112,112,111,114,116,101,100,32,106,111,105,110,32,116,121,112,101,58,32,37,84,32,37,84,37,115,37,84,0,0,0,0,0,82,73,71,72,84,32,97,110,100,32,70,85,76,76,32,79,85,84,69,82,32,74,79,73,78,115,32,97,114,101,32,110,111,116,32,99,117,114,114,101,110,116,108,121,32,115,117,112,112,111,114,116,101,100,0,0,97,32,74,79,73,78,32,99,108,97,117,115,101,32,105,115,32,114, +101,113,117,105,114,101,100,32,98,101,102,111,114,101,32,37,115,0,0,0,0,0,79,78],"i8",Ga,u.Ga+21008); +F([85,83,73,78,71,0,0,0,68,73,83,84,73,78,67,84,0,0,0,0,0,0,0,0,71,82,79,85,80,32,66,89,0,0,0,0,0,0,0,0,82,73,71,72,84,32,80,65,82,84,32,79,70,32,79,82,68,69,82,32,66,89,0,0,79,82,68,69,82,32,66,89,0,0,0,0,0,0,0,0,99,111,108,117,109,110,37,100,0,0,0,0,0,0,0,0,83,67,65,78,32,84,65,66,76,69,32,37,115,37,115,37,115,0,0,0,0,0,0,0,32,85,83,73,78,71,32,67,79,86,69,82,73,78,71,32,73,78,68,69,88,32,0,0,68,73,83,84,73,78,67,84,32,97,103,103,114,101,103,97,116,101,115,32,109,117,115,116,32,104,97,118,101,32, +101,120,97,99,116,108,121,32,111,110,101,32,97,114,103,117,109,101,110,116,0,0,0,0,0,0,85,83,69,32,84,69,77,80,32,66,45,84,82,69,69,32,70,79,82,32,37,115,0,0,79,82,68,69,82,32,66,89,32,99,108,97,117,115,101,32,115,104,111,117,108,100,32,99,111,109,101,32,97,102,116,101,114,32,37,115,32,110,111,116,32,98,101,102,111,114,101,0,76,73,77,73,84,32,99,108,97,117,115,101,32,115,104,111,117,108,100,32,99,111,109,101,32,97,102,116,101,114,32,37,115,32,110,111,116,32,98,101,102,111,114,101,0,0,0,0,97,108,108, +32,86,65,76,85,69,83,32,109,117,115,116,32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,116,101,114,109,115,0,0,0,83,69,76,69,67,84,115,32,116,111,32,116,104,101,32,108,101,102,116,32,97,110,100,32,114,105,103,104,116,32,111,102,32,37,115,32,100,111,32,110,111,116,32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,117,108,116,32,99,111,108,117,109,110,115,0,0,0,0,0,0,0,67,79,77,80,79,85,78,68,32,83,85,66, +81,85,69,82,73,69,83,32,37,100,32,65,78,68,32,37,100,32,37,115,40,37,115,41,0,0,0,0,85,83,73,78,71,32,84,69,77,80,32,66,45,84,82,69,69,32,0,0,0,0,0,0,85,78,73,79,78,32,65,76,76,0,0,0,0,0,0,0,73,78,84,69,82,83,69,67,84,0,0,0,0,0,0,0,69,88,67,69,80,84,0,0,85,78,73,79,78,0,0,0,111,110,108,121,32,97,32,115,105,110,103,108,101,32,114,101,115,117,108,116,32,97,108,108,111,119,101,100,32,102,111,114,32,97,32,83,69,76,69,67,84,32,116,104,97,116,32,105,115,32,112,97,114,116,32,111,102,32,97,110,32,101,120, +112,114,101,115,115,105,111,110,0,112,97,114,97,109,101,116,101,114,115,32,97,114,101,32,110,111,116,32,97,108,108,111,119,101,100,32,105,110,32,118,105,101,119,115,0,0,0,0,0,118,105,101,119,0,0,0,0,115,113,108,105,116,101,95,115,116,97,116,0,0,0,0,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,100,114,111,112,112,101,100,0,0,0,0,0,117,115,101,32,68,82,79,80,32,84,65,66,76,69,32,116,111,32,100,101,108,101,116,101,32,116,97,98,108,101,32,37,115,0,0,0,0,0,0,0,117,115,101,32, +68,82,79,80,32,86,73,69,87,32,116,111,32,100,101,108,101,116,101,32,118,105,101,119,32,37,115,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,32,87,72,69,82,69,32,110,97,109,101,61,37,81,0,0,0,0,68,69,76,69,84,69,32,70,82,79,77,32,37,81,46,37,115,32,87,72,69,82,69,32,116,98,108,95,110,97,109,101,61,37,81,32,97,110,100,32,116,121,112,101,33,61,39,116,114,105,103,103,101,114,39,0,102,111,114,101,105,103,110,32,107,101,121,32,111,110,32,37,115, +32,115,104,111,117,108,100,32,114,101,102,101,114,101,110,99,101,32,111,110,108,121,32,111,110,101,32,99,111,108,117,109,110,32,111,102,32,116,97,98,108,101,32,37,84,0,0,110,117,109,98,101,114,32,111,102,32,99,111,108,117,109,110,115,32,105,110,32,102,111,114,101,105,103,110,32,107,101,121,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,99,111,108,117,109,110,115,32,105,110,32,116,104,101,32,114,101,102,101,114,101,110,99,101,100,32,116, +97,98,108,101,0,0,0,117,110,107,110,111,119,110,32,99,111,108,117,109,110,32,34,37,115,34,32,105,110,32,102,111,114,101,105,103,110,32,107,101,121,32,100,101,102,105,110,105,116,105,111,110,0,0,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,97,32,84,69,77,80,32,105,110,100,101,120,32,111,110,32,110,111,110,45,84,69,77,80,32,116,97,98,108,101,32,34,37,115,34,0,0,0,0,0,0,0,97,108,116,101,114,116,97,98,95,0,0,0,0,0,0,0,116,97,98,108,101,32,37,115,32,109,97,121,32,110,111,116,32,98,101,32,105,110, +100,101,120,101,100,0,0,0,0,0,118,105,101,119,115,32,109,97,121,32,110,111,116,32,98,101,32,105,110,100,101,120,101,100,0,0,0,0,0,0,0,0,118,105,114,116,117,97,108,32,116,97,98,108,101,115,32,109,97,121,32,110,111,116,32,98,101,32,105,110,100,101,120,101,100,0,0,0,0,0,0,0,116,104,101,114,101,32,105,115,32,97,108,114,101,97,100,121,32,97,32,116,97,98,108,101,32,110,97,109,101,100,32,37,115,0,0,0,0,0,0,0,105,110,100,101,120,32,37,115,32,97,108,114,101,97,100,121,32,101,120,105,115,116,115,0,115,113, +108,105,116,101,95,97,117,116,111,105,110,100,101,120,95,37,115,95,37,100,0,0,116,97,98,108,101,32,37,115,32,104,97,115,32,110,111,32,99,111,108,117,109,110,32,110,97,109,101,100,32,37,115,0,99,111,110,102,108,105,99,116,105,110,103,32,79,78,32,67,79,78,70,76,73,67,84,32,99,108,97,117,115,101,115,32,115,112,101,99,105,102,105,101,100,0,0,0,0,0,0,0,67,82,69,65,84,69,37,115,32,73,78,68,69,88,32,37,46,42,115,0,0,0,0,0,32,85,78,73,81,85,69,0,73,78,83,69,82,84,32,73,78,84,79,32,37,81,46,37,115,32,86,65, +76,85,69,83,40,39,105,110,100,101,120,39,44,37,81,44,37,81,44,35,37,100,44,37,81,41,59,0,110,97,109,101,61,39,37,113,39,32,65,78,68,32,116,121,112,101,61,39,105,110,100,101,120,39,0,0,0,0,0,0,116,97,98,108,101,32,34,37,115,34,32,104,97,115,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,112,114,105,109,97,114,121,32,107,101,121,0,0,0,0,0,0,0,0,65,85,84,79,73,78,67,82,69,77,69,78,84,32,105,115,32,111,110,108,121,32,97,108,108,111,119,101,100,32,111,110,32,97,110,32,73,78,84,69,71,69,82,32,80, +82,73,77,65,82,89,32,75,69,89,0,100,101,102,97,117,108,116,32,118,97,108,117,101,32,111,102,32,99,111,108,117,109,110,32,91,37,115,93,32,105,115,32,110,111,116,32,99,111,110,115,116,97,110,116,0,0,0,0,116,111,111,32,109,97,110,121,32,99,111,108,117,109,110,115,32,111,110,32,37,115,0,0,100,117,112,108,105,99,97,116,101,32,99,111,108,117,109,110,32,110,97,109,101,58,32,37,115,0,0,0,0,0,0,0,65,85,84,79,73,78,67,82,69,77,69,78,84,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,87,73,84,72, +79,85,84,32,82,79,87,73,68,32,116,97,98,108,101,115,0,0,0,0,0,0,0,80,82,73,77,65,82,89,32,75,69,89,32,109,105,115,115,105,110,103,32,111,110,32,116,97,98,108,101,32,37,115,0,84,65,66,76,69,0,0,0,86,73,69,87,0,0,0,0,67,82,69,65,84,69,32,37,115,32,37,46,42,115,0,0,85,80,68,65,84,69,32,37,81,46,37,115,32,83,69,84,32,116,121,112,101,61,39,37,115,39,44,32,110,97,109,101,61,37,81,44,32,116,98,108,95,110,97,109,101,61,37,81,44,32,114,111,111,116,112,97,103,101,61,35,37,100,44,32,115,113,108,61,37,81,32, +87,72,69,82,69,32,114,111,119,105,100,61,35,37,100,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,37,81,46,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,40,110,97,109,101,44,115,101,113,41,0,0,0,0,0,0,0,116,98,108,95,110,97,109,101,61,39,37,113,39,32,65,78,68,32,116,121,112,101,33,61,39,116,114,105,103,103,101,114,39,0,0,0,0,0,0,0,10,32,32,0,0,0,0,0,44,10,32,32,0,0,0,0,10,41,0,0,0,0,0,0,67,82,69,65,84,69,32,84,65,66,76,69,32,0,0,0,120,130,0,0,248,6,0,0,128,130,0,0,136,130,0,0,144,130,0,0, +0,0,0,0,32,84,69,88,84,0,0,0,32,78,85,77,0,0,0,0,32,73,78,84,0,0,0,0,32,82,69,65,76,0,0,0,116,101,109,112,111,114,97,114,121,32,116,97,98,108,101,32,110,97,109,101,32,109,117,115,116,32,98,101,32,117,110,113,117,97,108,105,102,105,101,100,0,0,0,0,0,0,0,0,116,97,98,108,101,32,37,84,32,97,108,114,101,97,100,121,32,101,120,105,115,116,115,0,116,104,101,114,101,32,105,115,32,97,108,114,101,97,100,121,32,97,110,32,105,110,100,101,120,32,110,97,109,101,100,32,37,115,0,0,0,0,0,0,24,131,0,0,32,131,0,0,40, +131,0,0,0,0,0,0,66,69,71,73,78,0,0,0,82,69,76,69,65,83,69,0,82,79,76,76,66,65,67,75,0,0,0,0,0,0,0,0,67,79,77,77,73,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,97,114,115,101,114,32,115,116,97,99,107,32,111,118,101,114,102,108,111,119,0,0,0,224,3,33,4,75,5,132,4,180,4,180,4,1,0,6,1,237,255,135,0,135,0,8,3,180,4,180,4,180,4,180,4,69,0,69,0,53,0,208,0,27,1,243,2,58,0,213,2,136,2,59,2,238,1,161,1,84,1,7,1,212,0,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,59,3,110,3,59,3,161,3, +212,3,212,3,46,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,234,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,180,4,185,255,209,255,209,255,209,255,209,255,209,255,0,0,29,0,244,255,27,1,27,1,139,0,91,0,136,1,136,1,126,3,160,2,214,2,103,5,170,255,170,255,170,255,88,0,62,1,62,1,99,0,125,1,236,255,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27, +1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,112,2,108,3,214,2,160,2,60,5,60,5,60,5,60,5,60,5,60,5,170,255,170,255,170,255,49,1,136,0,136,0,142,0,167,0,226,0,154,0,137,0,152,0,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,80,1,80,1,80,1,27,1,27,1,96,1,27,1,27,1,27,1,27,1,27,1,228,0,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,245,1,57,2,84,2,84,2,84,2,251,1,241,1,185,1,135,1,97,1,156,0,156,0,89,3,97,1,89,3,223,2,45,3,127,2,203,2,156,0,76,1,203, +2,203,2,240,1,163,1,134,2,77,5,160,4,160,4,55,5,55,5,160,4,61,5,236,4,120,4,66,5,66,5,66,5,66,5,160,4,26,5,120,4,61,5,236,4,236,4,120,4,160,4,26,5,182,4,4,5,160,4,160,4,26,5,160,4,26,5,160,4,26,5,238,4,183,4,183,4,183,4,250,4,238,4,183,4,193,4,183,4,250,4,183,4,183,4,161,4,176,4,161,4,176,4,161,4,176,4,160,4,160,4,137,4,238,4,178,4,178,4,238,4,130,4,131,4,123,4,128,4,120,4,217,4,215,4,226,4,226,4,230,4,230,4,230,4,230,4,170,255,170,255,170,255,170,255,170,255,170,255,44,4,48,1,14,2,249,0,152,1,173, +255,178,1,44,3,27,0,43,3,39,3,34,3,239,2,77,2,139,2,163,0,131,0,162,2,110,1,194,1,43,1,148,0,23,0,102,0,229,0,235,255,221,4,220,4,198,4,75,4,204,4,148,4,199,4,191,4,189,4,91,4,82,4,99,4,86,4,185,4,81,4,188,4,202,4,74,4,65,4,116,4,115,4,80,4,165,4,154,4,70,4,187,4,181,4,163,4,77,4,47,4,129,4,151,4,122,4,114,4,127,4,67,4,140,4,141,4,139,4,45,4,48,4,124,4,88,4,110,4,103,4,105,4,102,4,68,4,90,4,94,4,64,4,66,4,69,4,63,4,60,4,219,3,55,4,53,4,50,4,41,4,156,3,253,3,246,3,236,3,238,3,51,3,227,2,128,3,87,3, +36,3,227,2,228,2,224,2,178,2,142,2,153,2,106,2,70,2,56,2,16,2,42,2,123,1,20,2,223,1,199,1,123,1,176,1,115,1,85,1,28,0,82,1,116,0,245,255,199,255,171,255,7,0,248,255,3,0,0,0,0,0,135,2,196,3,196,3,196,3,110,3,110,3,201,3,196,3,6,3,34,3,34,3,170,3,201,3,201,3,201,3,108,3,201,3,201,3,201,3,196,3,201,3,10,3,40,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,169,3,171,3,48,3,47,3,150,3,21,3,45,3,38,3,42,3,111,3,104,3,105,3,103,3,107,3,112,3,201,3,41,3,73,3,88,3,72,3,201,3,201,3,201,3,201,3,201,3,201, +3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,82,3,87,3,94,3,86,3,83,3,75,3,74,3,76,3,77,3,201,3,201,3,161,2,227,2,201,3,201,3,78,3,201,3,173,2,79,3,91,3,90,3,89,3,168,2,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201, +3,201,3,135,2,196,3,201,3,201,3,196,3,196,3,196,3,196,3,196,3,196,3,188,3,10,3,0,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,176,3,174,3,201,3,123,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,141,2,201,3,143,3,6,3,6,3,6,3,8,3,242,2,254,2,143,2,44,3,23,3,23,3,155,3,44,3,155,3,198,2,221,2,195,2,34,3,23,3,106,3,34,3,34,3,7,3,254, +2,201,3,181,3,14,3,14,3,173,3,173,3,14,3,53,3,231,2,44,3,238,2,238,2,238,2,238,2,14,3,158,2,44,3,53,3,231,2,231,2,44,3,14,3,158,2,149,3,147,3,14,3,14,3,158,2,14,3,158,2,14,3,158,2,116,3,229,2,229,2,229,2,213,2,116,3,229,2,198,2,229,2,213,2,229,2,229,2,27,3,22,3,27,3,22,3,27,3,22,3,14,3,14,3,201,3,116,3,120,3,120,3,116,3,39,3,28,3,37,3,35,3,44,3,164,2,216,2,151,2,151,2,140,2,140,2,140,2,140,2,193,3,193,3,188,3,200,2,200,2,183,2,201,3,201,3,201,3,201,3,201,3,201,3,175,2,201,3,125,3,201,3,201,3,201, +3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,60,3,201,3,136,2,183,3,201,3,201,3,180,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,153,3,201,3,201,3,201,3,201,3,201,3,201,3,146,3,145,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,245,2,201,3,201,3,201,3,249,2,201,3,201,3,201,3,201,3,201,3,201,3,36,3,201,3,29,3,201, +3,109,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,201,3,198,3,201,3,201,3,201,3,197,3,201,3,201,3,201,3,201,3,201,3,62,3,201,3,61,3,65,3,201,3,149,2,201,3,132,2,137,2,192,3,195,3,194,3,191,3,190,3,189,3,184,3,182,3,179,3,178,3,177,3,175,3,172,3,168,3,129,3,127,3,134,3,133,3,132,3,131,3,130,3,128,3,126,3,124,3,50,3,49,3,46,3,43,3,241,2,167,3,122,3,240,2,237,2,236,2,157,2,185,3,152,3,161,3,160,3,159,3,54,3,158,3,157,3,156,3,154,3,151,3,138,3,52,3,51,3,232,2,114,3,113,3,160,2,142,3,141,3, +140,3,144,3,148,3,139,3,16,3,239,2,159,2,156,2,163,2,167,2,219,2,220,2,228,2,226,2,225,2,224,2,223,2,222,2,218,2,169,2,174,2,212,2,197,2,196,2,205,2,204,2,210,2,209,2,208,2,207,2,206,2,203,2,202,2,201,2,194,2,193,2,199,2,192,2,215,2,214,2,211,2,191,2,235,2,234,2,233,2,230,2,190,2,189,2,188,2,65,3,187,2,186,2,70,3,69,3,98,3,58,3,243,2,247,2,246,2,250,2,251,2,3,3,2,3,1,3,12,3,13,3,25,3,24,3,56,3,55,3,26,3,11,3,5,3,4,3,20,3,19,3,18,3,17,3,9,3,255,2,31,3,30,3,100,3,15,3,99,3,97,3,166,3,165,3,164,3,163, +3,162,3,102,3,199,3,200,3,119,3,121,3,118,3,33,3,32,3,117,3,101,3,71,3,68,3,178,2,179,2,137,3,136,3,135,3,181,2,180,2,177,2,176,2,95,3,92,3,84,3,96,3,93,3,85,3,81,3,80,3,66,3,64,3,63,3,59,3,67,3,248,2,244,2,57,3,253,2,252,2,185,2,184,2,182,2,166,2,165,2,162,2,155,2,153,2,152,2,154,2,150,2,148,2,147,2,146,2,145,2,144,2,172,2,171,2,170,2,142,2,139,2,138,2,134,2,133,2,131,2,0,0,0,0,19,22,22,23,1,24,26,15,27,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,108,109,110,27,28,23,50,51,80,81,82,83,122,85, +86,87,88,89,90,91,92,93,94,95,22,70,23,71,72,73,74,75,76,77,78,79,80,81,82,83,122,85,86,87,88,89,90,91,92,93,94,95,19,97,91,92,93,94,95,26,85,86,87,88,89,90,91,92,93,94,95,27,28,97,98,99,122,211,102,103,104,79,19,50,51,19,122,59,55,113,224,225,226,89,90,91,92,93,94,95,23,27,28,26,71,72,73,74,75,76,77,78,79,80,81,82,83,51,85,86,87,88,89,90,91,92,93,94,95,19,132,133,58,89,90,21,108,109,110,27,28,97,98,33,100,7,8,119,120,22,19,107,42,109,27,28,27,28,95,28,50,51,99,100,101,102,103,104,105,27,28,97,98, +107,152,112,132,133,112,65,69,71,72,73,74,75,76,77,78,79,80,81,82,83,11,85,86,87,88,89,90,91,92,93,94,95,19,101,97,97,98,24,101,122,157,12,99,103,112,102,103,104,152,22,97,98,97,98,27,28,113,27,29,91,164,165,124,50,51,97,98,219,59,132,133,134,22,23,45,66,47,212,213,124,140,132,133,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,164,165,27,28,230,50,51,233,108,109,110,70,16,59,23,97,98,26,97,22,66,185,12,187,27,28,71,72,73,74,75,76,77,78,79,80,81,82,83,29,85,86,87,88, +89,90,91,92,93,94,95,19,22,148,149,45,23,47,62,154,64,156,108,109,110,37,69,23,163,59,26,26,97,98,144,145,146,147,152,200,52,23,50,51,26,22,89,90,60,210,7,8,9,138,97,22,23,26,101,26,174,175,197,71,72,73,74,75,76,77,78,79,80,81,82,83,16,85,86,87,88,89,90,91,92,93,94,95,19,132,133,134,23,152,208,209,140,152,152,111,195,196,98,70,163,160,152,23,22,164,165,246,207,27,152,174,175,171,172,50,51,137,62,139,64,171,172,222,124,27,138,24,163,89,90,130,174,175,197,163,71,72,73,74,75,76,77,78,79,80,81,82,83, +22,85,86,87,88,89,90,91,92,93,94,95,19,197,181,182,23,208,209,152,197,26,189,132,133,232,224,225,226,152,97,91,26,232,116,212,213,152,222,121,152,174,175,50,51,243,97,22,23,22,234,174,175,177,23,239,116,163,177,174,175,121,174,175,71,72,73,74,75,76,77,78,79,80,81,82,83,24,85,86,87,88,89,90,91,92,93,94,95,19,23,197,11,23,227,70,208,220,152,31,224,225,226,35,98,224,225,226,108,109,110,115,152,117,118,27,222,49,123,24,50,51,27,0,1,2,224,225,226,166,124,168,169,239,174,175,170,171,172,22,194,71,72,73, +74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,19,22,208,24,23,195,196,170,171,172,174,175,152,26,152,152,152,207,152,97,152,23,152,51,244,152,97,152,247,248,23,50,51,26,174,175,174,175,174,175,174,175,174,175,174,175,23,174,175,174,175,188,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,19,152,107,152,33,24,152,100,101,27,174,175,152,42,152,23,152,26,152,23,152,26,152,174,175,174,175,152,174,175,23,50,51,26,174,175,174,175,174,175,174,175,174,175,174, +175,163,119,120,174,175,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,66,152,97,197,23,50,51,26,53,23,174,175,26,23,23,23,26,26,26,36,106,146,147,174,175,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,152,196,119,120,19,50,51,168,169,26,174,175,207,28,152,249,250,152,163,163,163,163,174,175,163,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,152,197,197,197,197,50,51,197,194,36,174,175,191,192,152,191, +192,163,152,66,124,152,174,175,152,19,71,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,197,152,100,188,152,50,51,152,152,188,174,175,252,152,94,95,152,152,152,1,2,152,152,174,175,19,152,72,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,152,188,188,22,194,50,51,240,173,194,174,175,252,194,152,36,181,28,152,23,219,122,174,175,219,221,152,152,73,74,75,76,77,78,79,80,81,82,83,152,85,86,87,88,89,90,91,92,93,94,95,19,20,152,22,23,194,152,240,27,28,174,175, +240,19,20,26,22,194,194,38,22,27,28,152,23,22,152,116,174,175,152,23,38,152,23,152,221,152,57,152,23,163,50,51,194,174,175,66,174,175,69,57,174,175,40,174,175,174,175,174,175,174,175,69,22,53,74,75,30,53,89,90,22,22,152,197,23,96,97,98,22,152,101,89,90,91,208,209,152,53,96,97,98,101,22,101,174,175,152,19,20,105,22,174,175,112,19,27,28,20,174,175,24,132,133,134,135,136,38,44,174,175,107,61,54,26,132,133,134,135,136,54,107,22,5,140,1,57,36,111,122,28,79,79,131,123,66,19,20,69,22,1,16,20,125,27,28,123, +111,120,23,131,23,16,68,142,38,15,22,89,90,3,167,4,248,251,96,97,98,180,180,101,251,151,6,57,151,13,151,26,25,151,161,202,153,162,153,69,130,128,203,19,20,127,22,126,204,129,22,27,28,205,132,133,134,135,136,89,90,231,38,95,137,179,96,97,98,206,179,101,122,107,159,159,125,231,216,228,107,57,184,217,216,176,217,176,48,106,18,184,158,69,159,158,46,71,237,176,176,176,132,133,134,135,136,217,176,137,216,178,158,89,90,179,176,159,179,159,96,97,98,159,159,101,5,158,202,22,18,10,11,12,13,14,190,238,17,190, +158,193,41,159,202,193,159,202,245,193,193,223,190,32,159,34,132,133,134,135,136,159,39,155,43,150,223,177,201,178,177,186,66,199,177,152,253,56,215,152,182,152,202,152,63,152,152,66,67,242,229,152,174,152,152,152,152,152,152,152,199,242,202,152,198,152,152,152,183,192,152,215,152,183,215,183,152,241,214,152,211,152,152,211,211,152,152,241,152,152,152,152,152,152,152,114,152,152,235,152,152,152,174,187,95,174,253,253,253,253,236,253,253,253,253,253,253,253,253,253,253,253,141,0,0,0,0,0,0,0,0,0,27, +27,27,27,0,27,27,27,0,27,27,27,27,0,0,0,27,0,0,27,0,0,0,27,0,0,0,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,0,0,100,97,116,97,98,97,115,101,32,115,99,104,101,109,97,32,105,115,32,108,111,99,107,101,100,58,32,37,115,0,0,0,115,116,97,116,101,109,101,110,116,32,116,111,111,32,108,111,110,103,0,0,0,0,0,0,96,146,0,0,104,146,0,0,112,146,0,0,120,146,0,0,128,146,0,0,136,146,0,0,144,146,0,0,152,146,0,0,160,146,0,0,248,30,0,0,24, +109,0,0,176,146,0,0,97,100,100,114,0,0,0,0,111,112,99,111,100,101,0,0,112,49,0,0,0,0,0,0,112,50,0,0,0,0,0,0,112,51,0,0,0,0,0,0,112,52,0,0,0,0,0,0,112,53,0,0,0,0,0,0,99,111,109,109,101,110,116,0,115,101,108,101,99,116,105,100,0,0,0,0,0,0,0,0,100,101,116,97,105,108,0,0,117,110,111,112,101,110,101,100,0,0,0,0,0,0,0,0,110,111,32,115,117,99,104,32,118,105,101,119,0,0,0,0,110,111,32,115,117,99,104,32,116,97,98,108,101,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,118,97,108,117,101,32,111,102,32,116, +121,112,101,32,37,115,0,0,0,0,110,111,32,115,117,99,104,32,114,111,119,105,100,58,32,37,108,108,100,0,0,0,0,0,98,105,110,100,32,111,110,32,97,32,98,117,115,121,32,112,114,101,112,97,114,101,100,32,115,116,97,116,101,109,101,110,116,58,32,91,37,115,93,0,0,0,0,0,248,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,128,147,0,0,144,147,0,0,152,147,0,0,160,147,0,0,78,79,84,32,78,85,76,76,0,0,0,0,0,0,0,0,85,78,73,81,85,69,0,0,67,72,69,67,75,0,0,0,70,79,82,69,73,71,78,32,75,69,89,0, +0,0,0,0,97,98,111,114,116,32,97,116,32,37,100,32,105,110,32,91,37,115,93,58,32,37,115,0,37,115,32,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,58,32,37,115,0,0,0,0,0,0,0,0,37,115,32,99,111,110,115,116,114,97,105,110,116,32,102,97,105,108,101,100,0,0,0,0,0,0,0,0,1,2,0,2,2,0,0,0,0,0,0,0,0,1,2,1,1,1,2,1,2,0,0,0,0,0,0,0,99,97,110,110,111,116,32,111,112,101,110,32,115,97,118,101,112,111,105,110,116,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111, +103,114,101,115,115,0,0,0,0,0,0,110,111,32,115,117,99,104,32,115,97,118,101,112,111,105,110,116,58,32,37,115,0,0,0,99,97,110,110,111,116,32,114,101,108,101,97,115,101,32,115,97,118,101,112,111,105,110,116,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114,101,115,115,0,0,0,99,97,110,110,111,116,32,99,111,109,109,105,116,32,116,114,97,110,115,97,99,116,105,111,110,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114, +101,115,115,0,0,99,97,110,110,111,116,32,115,116,97,114,116,32,97,32,116,114,97,110,115,97,99,116,105,111,110,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,99,97,110,110,111,116,32,114,111,108,108,98,97,99,107,32,45,32,110,111,32,116,114,97,110,115,97,99,116,105,111,110,32,105,115,32,97,99,116,105,118,101,0,0,0,0,0,0,99,97,110,110,111,116,32,99,111,109,109,105,116,32,45,32,110,111,32,116,114,97,110,115,97,99,116,105,111,110,32,105,115,32,97,99,116,105,118,101,0,0, +0,0,0,0,0,0,83,69,76,69,67,84,32,110,97,109,101,44,32,114,111,111,116,112,97,103,101,44,32,115,113,108,32,70,82,79,77,32,39,37,113,39,46,37,115,32,87,72,69,82,69,32,37,115,32,79,82,68,69,82,32,66,89,32,114,111,119,105,100,0,116,111,111,32,109,97,110,121,32,108,101,118,101,108,115,32,111,102,32,116,114,105,103,103,101,114,32,114,101,99,117,114,115,105,111,110,0,0,0,0,99,97,110,110,111,116,32,99,104,97,110,103,101,32,37,115,32,119,97,108,32,109,111,100,101,32,102,114,111,109,32,119,105,116,104,105, +110,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,105,110,116,111,0,0,0,0,111,117,116,32,111,102,0,0,100,97,116,97,98,97,115,101,32,116,97,98,108,101,32,105,115,32,108,111,99,107,101,100,58,32,37,115,0,0,0,0,115,116,97,116,101,109,101,110,116,32,97,98,111,114,116,115,32,97,116,32,37,100,58,32,91,37,115,93,32,37,115,0,45,45,32,0,0,0,0,0,39,37,46,42,113,39,0,0,122,101,114,111,98,108,111,98,40,37,100,41,0,0,0,0,120,39,0,0,0,0,0,0,37,48,50,120,0,0,0,0,39,0,0,0,0,0,0,0,99,97,110,110,111, +116,32,86,65,67,85,85,77,32,102,114,111,109,32,119,105,116,104,105,110,32,97,32,116,114,97,110,115,97,99,116,105,111,110,0,99,97,110,110,111,116,32,86,65,67,85,85,77,32,45,32,83,81,76,32,115,116,97,116,101,109,101,110,116,115,32,105,110,32,112,114,111,103,114,101,115,115,0,0,0,0,0,0,65,84,84,65,67,72,32,39,58,109,101,109,111,114,121,58,39,32,65,83,32,118,97,99,117,117,109,95,100,98,59,0,65,84,84,65,67,72,32,39,39,32,65,83,32,118,97,99,117,117,109,95,100,98,59,0,80,82,65,71,77,65,32,118,97,99,117, +117,109,95,100,98,46,115,121,110,99,104,114,111,110,111,117,115,61,79,70,70,0,0,0,0,0,0,0,0,66,69,71,73,78,59,0,0,83,69,76,69,67,84,32,39,67,82,69,65,84,69,32,84,65,66,76,69,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,49,52,41,32,32,32,70,82,79,77,32,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,116,121,112,101,61,39,116,97,98,108,101,39,32,65,78,68,32,110,97,109,101,33,61,39,115,113,108,105,116,101,95,115,101,113,117,101, +110,99,101,39,32,32,32,65,78,68,32,99,111,97,108,101,115,99,101,40,114,111,111,116,112,97,103,101,44,49,41,62,48,0,0,0,0,0,83,69,76,69,67,84,32,39,67,82,69,65,84,69,32,73,78,68,69,88,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,49,52,41,32,32,70,82,79,77,32,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,115,113,108,32,76,73,75,69,32,39,67,82,69,65,84,69,32,73,78,68,69,88,32,37,39,32,0,83,69,76,69,67,84,32,39,67,82,69,65,84, +69,32,85,78,73,81,85,69,32,73,78,68,69,88,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,115,117,98,115,116,114,40,115,113,108,44,50,49,41,32,32,32,70,82,79,77,32,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,115,113,108,32,76,73,75,69,32,39,67,82,69,65,84,69,32,85,78,73,81,85,69,32,73,78,68,69,88,32,37,39,0,0,0,83,69,76,69,67,84,32,39,73,78,83,69,82,84,32,73,78,84,79,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32, +124,124,32,39,32,83,69,76,69,67,84,32,42,32,70,82,79,77,32,109,97,105,110,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,59,39,70,82,79,77,32,109,97,105,110,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,116,121,112,101,32,61,32,39,116,97,98,108,101,39,32,65,78,68,32,110,97,109,101,33,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,32,32,32,65,78,68,32,99,111,97,108,101,115,99,101,40,114,111,111,116,112,97,103,101,44,49, +41,62,48,0,0,0,0,0,83,69,76,69,67,84,32,39,68,69,76,69,84,69,32,70,82,79,77,32,118,97,99,117,117,109,95,100,98,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,59,39,32,70,82,79,77,32,118,97,99,117,117,109,95,100,98,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,110,97,109,101,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,32,0,0,0,0,0,0,0,0,83,69,76,69,67,84,32,39,73,78,83,69,82,84,32,73,78,84,79,32,118,97,99,117,117,109, +95,100,98,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,32,83,69,76,69,67,84,32,42,32,70,82,79,77,32,109,97,105,110,46,39,32,124,124,32,113,117,111,116,101,40,110,97,109,101,41,32,124,124,32,39,59,39,32,70,82,79,77,32,118,97,99,117,117,109,95,100,98,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,87,72,69,82,69,32,110,97,109,101,61,61,39,115,113,108,105,116,101,95,115,101,113,117,101,110,99,101,39,59,0,0,0,0,0,0,73,78,83,69,82,84,32,73,78,84,79,32,118,97,99, +117,117,109,95,100,98,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,32,32,83,69,76,69,67,84,32,116,121,112,101,44,32,110,97,109,101,44,32,116,98,108,95,110,97,109,101,44,32,114,111,111,116,112,97,103,101,44,32,115,113,108,32,32,32,32,70,82,79,77,32,109,97,105,110,46,115,113,108,105,116,101,95,109,97,115,116,101,114,32,32,32,87,72,69,82,69,32,116,121,112,101,61,39,118,105,101,119,39,32,79,82,32,116,121,112,101,61,39,116,114,105,103,103,101,114,39,32,32,32,32,32,32,79,82,32,40,116,121,112, +101,61,39,116,97,98,108,101,39,32,65,78,68,32,114,111,111,116,112,97,103,101,61,48,41,0,1,1,3,0,5,0,6,0,8,0,0,0,0,0,0,0,77,97,105,110,32,102,114,101,101,108,105,115,116,58,32,0,76,105,115,116,32,111,102,32,116,114,101,101,32,114,111,111,116,115,58,32,0,0,0,0,80,97,103,101,32,37,100,32,105,115,32,110,101,118,101,114,32,117,115,101,100,0,0,0,80,111,105,110,116,101,114,32,109,97,112,32,112,97,103,101,32,37,100,32,105,115,32,114,101,102,101,114,101,110,99,101,100,0,0,0,0,0,0,0,79,117,116,115,116,97,110, +100,105,110,103,32,112,97,103,101,32,99,111,117,110,116,32,103,111,101,115,32,102,114,111,109,32,37,100,32,116,111,32,37,100,32,100,117,114,105,110,103,32,116,104,105,115,32,97,110,97,108,121,115,105,115,0,0,10,0,0,0,0,0,0,0,80,97,103,101,32,37,100,58,32,0,0,0,0,0,0,0,117,110,97,98,108,101,32,116,111,32,103,101,116,32,116,104,101,32,112,97,103,101,46,32,101,114,114,111,114,32,99,111,100,101,61,37,100,0,0,0,98,116,114,101,101,73,110,105,116,80,97,103,101,40,41,32,114,101,116,117,114,110,115,32,101, +114,114,111,114,32,99,111,100,101,32,37,100,0,0,0,79,110,32,116,114,101,101,32,112,97,103,101,32,37,100,32,99,101,108,108,32,37,100,58,32,0,0,0,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,112,114,101,118,105,111,117,115,32,119,97,115,32,37,108,108,100,41,0,0,0,0,0,67,104,105,108,100,32,112,97,103,101,32,100,101,112,116,104,32,100,105,102,102,101,114,115,0,0,0,0,0,0,0,0,79,110,32,112,97,103,101,32,37,100,32,97,116,32,114,105,103,104,116,32,99, +104,105,108,100,58,32,0,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,97,120,32,108,97,114,103,101,114,32,116,104,97,110,32,112,97,114,101,110,116,32,109,105,110,32,111,102,32,37,108,108,100,41,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,105,110,32,108,101,115,115,32,116,104,97,110,32,112,97,114,101,110,116,32,109,105,110,32,111,102,32,37,108,108,100,41,0,0,0,0,0,0,82,111,119,105, +100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,97,120,32,108,97,114,103,101,114,32,116,104,97,110,32,112,97,114,101,110,116,32,109,97,120,32,111,102,32,37,108,108,100,41,0,0,0,0,82,111,119,105,100,32,37,108,108,100,32,111,117,116,32,111,102,32,111,114,100,101,114,32,40,109,105,110,32,108,101,115,115,32,116,104,97,110,32,112,97,114,101,110,116,32,109,97,120,32,111,102,32,37,108,108,100,41,0,0,0,0,0,0,67,111,114,114,117,112,116,105,111,110,32,100,101,116,101,99,116, +101,100,32,105,110,32,99,101,108,108,32,37,100,32,111,110,32,112,97,103,101,32,37,100,0,0,0,0,0,0,0,77,117,108,116,105,112,108,101,32,117,115,101,115,32,102,111,114,32,98,121,116,101,32,37,100,32,111,102,32,112,97,103,101,32,37,100,0,0,0,0,70,114,97,103,109,101,110,116,97,116,105,111,110,32,111,102,32,37,100,32,98,121,116,101,115,32,114,101,112,111,114,116,101,100,32,97,115,32,37,100,32,111,110,32,112,97,103,101,32,37,100,0,0,0,0,0,105,110,118,97,108,105,100,32,112,97,103,101,32,110,117,109,98,101, +114,32,37,100,0,0,50,110,100,32,114,101,102,101,114,101,110,99,101,32,116,111,32,112,97,103,101,32,37,100,0,0,0,0,0,0,0,0,70,97,105,108,101,100,32,116,111,32,114,101,97,100,32,112,116,114,109,97,112,32,107,101,121,61,37,100,0,0,0,0,66,97,100,32,112,116,114,32,109,97,112,32,101,110,116,114,121,32,107,101,121,61,37,100,32,101,120,112,101,99,116,101,100,61,40,37,100,44,37,100,41,32,103,111,116,61,40,37,100,44,37,100,41,0,0,0,37,100,32,111,102,32,37,100,32,112,97,103,101,115,32,109,105,115,115,105,110, +103,32,102,114,111,109,32,111,118,101,114,102,108,111,119,32,108,105,115,116,32,115,116,97,114,116,105,110,103,32,97,116,32,37,100,0,0,0,0,0,0,0,0,102,97,105,108,101,100,32,116,111,32,103,101,116,32,112,97,103,101,32,37,100,0,0,0,102,114,101,101,108,105,115,116,32,108,101,97,102,32,99,111,117,110,116,32,116,111,111,32,98,105,103,32,111,110,32,112,97,103,101,32,37,100,0,0,83,81,76,105,116,101,32,102,111,114,109,97,116,32,51,0,37,115,45,109,106,88,88,88,88,88,88,57,88,88,122,0,77,74,32,100,101,108, +101,116,101,58,32,37,115,0,0,0,77,74,32,99,111,108,108,105,100,101,58,32,37,115,0,0,45,109,106,37,48,54,88,57,37,48,50,88,0,0,0,0,37,46,50,120,0,0,0,0,107,40,37,100,0,0,0,0,110,105,108,0,0,0,0,0,66,0,0,0,0,0,0,0,44,46,46,46,0,0,0,0,40,37,46,50,48,115,41,0,37,115,40,37,100,41,0,0,37,100,0,0,0,0,0,0,40,98,108,111,98,41,0,0,118,116,97,98,58,37,112,58,37,112,0,0,0,0,0,0,105,110,116,97,114,114,97,121,0,0,0,0,0,0,0,0,112,114,111,103,114,97,109,0,72,34,0,0,240,162,0,0,0,163,0,0,16,163,0,0,32,163,0,0,48, +163,0,0,64,163,0,0,80,163,0,0,96,163,0,0,104,163,0,0,112,163,0,0,120,163,0,0,136,163,0,0,152,163,0,0,160,163,0,0,168,163,0,0,176,163,0,0,184,163,0,0,192,163,0,0,200,163,0,0,208,163,0,0,224,163,0,0,240,163,0,0,248,163,0,0,8,164,0,0,16,164,0,0,24,164,0,0,32,164,0,0,40,164,0,0,48,164,0,0,64,164,0,0,72,164,0,0,88,164,0,0,96,164,0,0,104,164,0,0,112,164,0,0,128,164,0,0,136,164,0,0,144,164,0,0,160,164,0,0,176,164,0,0,192,164,0,0,200,164,0,0,208,164,0,0,216,164,0,0,224,164,0,0,232,164,0,0,240,164,0,0,0,165, +0,0,16,165,0,0,24,165,0,0,40,165,0,0,56,165,0,0,72,165,0,0,88,165,0,0,104,165,0,0,120,165,0,0,136,165,0,0,152,165,0,0,160,165,0,0,168,165,0,0,176,165,0,0,184,165,0,0,192,165,0,0,200,165,0,0,216,165,0,0,232,165,0,0,240,165,0,0,0,166,0,0,16,166,0,0,32,166,0,0,40,166,0,0,48,166,0,0,56,166,0,0,72,166,0,0,80,166,0,0,96,166,0,0,104,166,0,0,112,166,0,0,120,166,0,0,128,166,0,0,136,166,0,0,144,166,0,0,152,166,0,0,160,166,0,0,176,166,0,0,184,166,0,0,192,166,0,0,208,166,0,0,224,166,0,0,232,166,0,0,248,166,0, +0,8,167,0,0,16,167,0,0,32,167,0,0,40,167,0,0,56,167,0,0,64,167,0,0,72,167,0,0,80,167,0,0,88,167,0,0,96,167,0,0,104,167,0,0,112,167],"i8",Ga,u.Ga+31248); +F([128,167,0,0,136,167,0,0,144,167,0,0,160,167,0,0,176,167,0,0,192,167,0,0,208,167,0,0,216,167,0,0,224,167,0,0,232,167,0,0,240,167,0,0,248,167,0,0,0,168,0,0,16,168,0,0,32,168,0,0,48,168,0,0,64,168,0,0,80,168,0,0,96,168,0,0,112,168,0,0,128,168,0,0,144,168,0,0,160,168,0,0,176,168,0,0,192,168,0,0,200,168,0,0,208,168,0,0,224,168,0,0,240,168,0,0,248,168,0,0,0,169,0,0,8,169,0,0,16,169,0,0,24,169,0,0,40,169,0,0,56,169,0,0,64,169,0,0,80,169,0,0,88,169,0,0,96,169,0,0,104,169,0,0,112,169,0,0,128,169,0,0,136, +169,0,0,144,169,0,0,160,169,0,0,168,169,0,0,176,169,0,0,184,169,0,0,192,169,0,0,208,169,0,0,224,169,0,0,232,169,0,0,240,169,0,0,70,117,110,99,116,105,111,110,0,0,0,0,0,0,0,0,83,97,118,101,112,111,105,110,116,0,0,0,0,0,0,0,65,117,116,111,67,111,109,109,105,116,0,0,0,0,0,0,84,114,97,110,115,97,99,116,105,111,110,0,0,0,0,0,83,111,114,116,101,114,78,101,120,116,0,0,0,0,0,0,80,114,101,118,73,102,79,112,101,110,0,0,0,0,0,0,78,101,120,116,73,102,79,112,101,110,0,0,0,0,0,0,80,114,101,118,0,0,0,0,78,101,120, +116,0,0,0,0,65,103,103,83,116,101,112,0,67,104,101,99,107,112,111,105,110,116,0,0,0,0,0,0,74,111,117,114,110,97,108,77,111,100,101,0,0,0,0,0,86,97,99,117,117,109,0,0,86,70,105,108,116,101,114,0,86,85,112,100,97,116,101,0,71,111,116,111,0,0,0,0,71,111,115,117,98,0,0,0,82,101,116,117,114,110,0,0,78,111,116,0,0,0,0,0,73,110,105,116,67,111,114,111,117,116,105,110,101,0,0,0,69,110,100,67,111,114,111,117,116,105,110,101,0,0,0,0,89,105,101,108,100,0,0,0,72,97,108,116,73,102,78,117,108,108,0,0,0,0,0,0,72, +97,108,116,0,0,0,0,73,110,116,101,103,101,114,0,73,110,116,54,52,0,0,0,83,116,114,105,110,103,0,0,78,117,108,108,0,0,0,0,83,111,102,116,78,117,108,108,0,0,0,0,0,0,0,0,66,108,111,98,0,0,0,0,86,97,114,105,97,98,108,101,0,0,0,0,0,0,0,0,77,111,118,101,0,0,0,0,67,111,112,121,0,0,0,0,83,67,111,112,121,0,0,0,82,101,115,117,108,116,82,111,119,0,0,0,0,0,0,0,67,111,108,108,83,101,113,0,65,100,100,73,109,109,0,0,77,117,115,116,66,101,73,110,116,0,0,0,0,0,0,0,82,101,97,108,65,102,102,105,110,105,116,121,0,0, +0,0,80,101,114,109,117,116,97,116,105,111,110,0,0,0,0,0,67,111,109,112,97,114,101,0,74,117,109,112,0,0,0,0,79,110,99,101,0,0,0,0,73,102,0,0,0,0,0,0,73,102,78,111,116,0,0,0,67,111,108,117,109,110,0,0,65,102,102,105,110,105,116,121,0,0,0,0,0,0,0,0,77,97,107,101,82,101,99,111,114,100,0,0,0,0,0,0,67,111,117,110,116,0,0,0,82,101,97,100,67,111,111,107,105,101,0,0,0,0,0,0,83,101,116,67,111,111,107,105,101,0,0,0,0,0,0,0,79,112,101,110,82,101,97,100,0,0,0,0,0,0,0,0,79,112,101,110,87,114,105,116,101,0,0,0, +0,0,0,0,79,112,101,110,65,117,116,111,105,110,100,101,120,0,0,0,79,112,101,110,69,112,104,101,109,101,114,97,108,0,0,0,83,111,114,116,101,114,79,112,101,110,0,0,0,0,0,0,79,112,101,110,80,115,101,117,100,111,0,0,0,0,0,0,67,108,111,115,101,0,0,0,83,101,101,107,76,84,0,0,83,101,101,107,76,69,0,0,83,101,101,107,71,69,0,0,83,101,101,107,71,84,0,0,83,101,101,107,0,0,0,0,78,111,67,111,110,102,108,105,99,116,0,0,0,0,0,0,78,111,116,70,111,117,110,100,0,0,0,0,0,0,0,0,70,111,117,110,100,0,0,0,78,111,116,69, +120,105,115,116,115,0,0,0,0,0,0,0,83,101,113,117,101,110,99,101,0,0,0,0,0,0,0,0,78,101,119,82,111,119,105,100,0,0,0,0,0,0,0,0,73,110,115,101,114,116,0,0,79,114,0,0,0,0,0,0,65,110,100,0,0,0,0,0,73,110,115,101,114,116,73,110,116,0,0,0,0,0,0,0,68,101,108,101,116,101,0,0,82,101,115,101,116,67,111,117,110,116,0,0,0,0,0,0,73,115,78,117,108,108,0,0,78,111,116,78,117,108,108,0,78,101,0,0,0,0,0,0,69,113,0,0,0,0,0,0,71,116,0,0,0,0,0,0,76,101,0,0,0,0,0,0,76,116,0,0,0,0,0,0,71,101,0,0,0,0,0,0,83,111,114,116, +101,114,67,111,109,112,97,114,101,0,0,0,66,105,116,65,110,100,0,0,66,105,116,79,114,0,0,0,83,104,105,102,116,76,101,102,116,0,0,0,0,0,0,0,83,104,105,102,116,82,105,103,104,116,0,0,0,0,0,0,65,100,100,0,0,0,0,0,83,117,98,116,114,97,99,116,0,0,0,0,0,0,0,0,77,117,108,116,105,112,108,121,0,0,0,0,0,0,0,0,68,105,118,105,100,101,0,0,82,101,109,97,105,110,100,101,114,0,0,0,0,0,0,0,67,111,110,99,97,116,0,0,83,111,114,116,101,114,68,97,116,97,0,0,0,0,0,0,66,105,116,78,111,116,0,0,83,116,114,105,110,103,56,0, +82,111,119,75,101,121,0,0,82,111,119,68,97,116,97,0,82,111,119,105,100,0,0,0,78,117,108,108,82,111,119,0,76,97,115,116,0,0,0,0,83,111,114,116,101,114,83,111,114,116,0,0,0,0,0,0,83,111,114,116,0,0,0,0,82,101,119,105,110,100,0,0,83,111,114,116,101,114,73,110,115,101,114,116,0,0,0,0,73,100,120,73,110,115,101,114,116,0,0,0,0,0,0,0,73,100,120,68,101,108,101,116,101,0,0,0,0,0,0,0,73,100,120,82,111,119,105,100,0,0,0,0,0,0,0,0,73,100,120,76,69,0,0,0,73,100,120,71,84,0,0,0,73,100,120,76,84,0,0,0,73,100,120, +71,69,0,0,0,68,101,115,116,114,111,121,0,67,108,101,97,114,0,0,0,82,101,115,101,116,83,111,114,116,101,114,0,0,0,0,0,67,114,101,97,116,101,73,110,100,101,120,0,0,0,0,0,67,114,101,97,116,101,84,97,98,108,101,0,0,0,0,0,80,97,114,115,101,83,99,104,101,109,97,0,0,0,0,0,76,111,97,100,65,110,97,108,121,115,105,115,0,0,0,0,68,114,111,112,84,97,98,108,101,0,0,0,0,0,0,0,68,114,111,112,73,110,100,101,120,0,0,0,0,0,0,0,68,114,111,112,84,114,105,103,103,101,114,0,0,0,0,0,73,110,116,101,103,114,105,116,121,67, +107,0,0,0,0,0,82,111,119,83,101,116,65,100,100,0,0,0,0,0,0,0,82,111,119,83,101,116,82,101,97,100,0,0,0,0,0,0,82,111,119,83,101,116,84,101,115,116,0,0,0,0,0,0,80,114,111,103,114,97,109,0,80,97,114,97,109,0,0,0,70,107,67,111,117,110,116,101,114,0,0,0,0,0,0,0,70,107,73,102,90,101,114,111,0,0,0,0,0,0,0,0,77,101,109,77,97,120,0,0,82,101,97,108,0,0,0,0,73,102,80,111,115,0,0,0,73,102,78,101,103,0,0,0,73,102,90,101,114,111,0,0,65,103,103,70,105,110,97,108,0,0,0,0,0,0,0,0,73,110,99,114,86,97,99,117,117,109, +0,0,0,0,0,0,69,120,112,105,114,101,0,0,84,97,98,108,101,76,111,99,107,0,0,0,0,0,0,0,86,66,101,103,105,110,0,0,86,67,114,101,97,116,101,0,84,111,84,101,120,116,0,0,84,111,66,108,111,98,0,0,84,111,78,117,109,101,114,105,99,0,0,0,0,0,0,0,84,111,73,110,116,0,0,0,84,111,82,101,97,108,0,0,86,68,101,115,116,114,111,121,0,0,0,0,0,0,0,0,86,79,112,101,110,0,0,0,86,67,111,108,117,109,110,0,86,78,101,120,116,0,0,0,86,82,101,110,97,109,101,0,80,97,103,101,99,111,117,110,116,0,0,0,0,0,0,0,77,97,120,80,103,99,110, +116,0,0,0,0,0,0,0,0,73,110,105,116,0,0,0,0,78,111,111,112,0,0,0,0,69,120,112,108,97,105,110,0,65,80,73,32,99,97,108,108,101,100,32,119,105,116,104,32,78,85,76,76,32,112,114,101,112,97,114,101,100,32,115,116,97,116,101,109,101,110,116,0,65,80,73,32,99,97,108,108,101,100,32,119,105,116,104,32,102,105,110,97,108,105,122,101,100,32,112,114,101,112,97,114,101,100,32,115,116,97,116,101,109,101,110,116,0,0,0,0,64,32,32,0,0,0,0,0,1,0,0,0,31,0,0,0,8,0,0,0,9,0,0,0,14,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0, +0,29,0,0,0,15,0,0,0,32,0,0,0,33,0,0,0,10,0,0,0,7,0,0,0,12,0,0,0,30,0,0,0,11,0,0,0,8,0,0,0,0,0,0,0,0,172,0,0,16,0,0,0,0,0,0,0,216,171,0,0,34,0,0,0,0,0,0,0,144,44,0,0,31,0,0,0,0,0,0,0,8,172,0,0,32,0,0,0,0,0,0,0,16,172,0,0,33,0,0,0,0,0,0,0,24,172,0,0,34,0,0,0,0,0,0,0,32,172,0,0,35,0,0,0,0,0,0,0,48,172,0,0,17,0,0,0,0,0,0,0,56,172,0,0,18,0,0,0,0,0,0,0,64,172,0,0,0,0,0,0,0,0,0,0,72,172,0,0,0,0,0,0,0,0,0,0,80,172,0,0,19,0,0,0,0,0,0,0,88,172,0,0,0,0,0,0,0,0,0,0,96,172,0,0,0,0,0,0,0,0,0,0,112,172,0,0,36,0, +0,0,0,0,0,0,120,172,0,0,0,0,0,0,0,0,0,0,136,172,0,0,35,0,0,0,0,0,0,0,144,172,0,0,37,0,0,0,0,0,0,0,160,172,0,0,38,0,0,0,0,0,0,0,168,172,0,0,36,0,0,0,0,0,0,0,176,172,0,0,20,0,0,0,0,0,0,0,184,172,0,0,8,0,0,0,0,0,0,0,192,172,0,0,39,0,0,0,0,0,0,0,200,172,0,0,0,0,0,0,0,0,0,0,208,172,0,0,1,0,0,0,0,0,0,0,0,0,0,0,99,108,111,115,101,0,0,0,111,115,95,117,110,105,120,46,99,58,37,100,58,32,40,37,100,41,32,37,115,40,37,115,41,32,45,32,37,115,0,0,111,112,101,110,0,0,0,0,103,101,116,99,119,100,0,0,115,116,97,116, +0,0,0,0,102,115,116,97,116,0,0,0,102,116,114,117,110,99,97,116,101,0,0,0,0,0,0,0,102,99,110,116,108,0,0,0,114,101,97,100,0,0,0,0,112,114,101,97,100,0,0,0,112,114,101,97,100,54,52,0,119,114,105,116,101,0,0,0,112,119,114,105,116,101,0,0,112,119,114,105,116,101,54,52,0,0,0,0,0,0,0,0,102,99,104,109,111,100,0,0,102,97,108,108,111,99,97,116,101,0,0,0,0,0,0,0,117,110,108,105,110,107,0,0,111,112,101,110,68,105,114,101,99,116,111,114,121,0,0,0,109,107,100,105,114,0,0,0,114,109,100,105,114,0,0,0,102,99,104, +111,119,110,0,0,109,109,97,112,0,0,0,0,109,117,110,109,97,112,0,0,109,114,101,109,97,112,0,0,103,101,116,112,97,103,101,115,105,122,101,0,0,0,0,0,97,116,116,101,109,112,116,32,116,111,32,111,112,101,110,32,34,37,115,34,32,97,115,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,37,100,0,0,0,0,0,0,47,100,101,118,47,110,117,108,108,0,0,0,0,0,0,0,37,115,45,115,104,109,0,0,114,101,97,100,111,110,108,121,95,115,104,109,0,0,0,0,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112, +113,114,115,116,117,118,119,120,121,122,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,48,49,50,51,52,53,54,55,56,57,0,0,37,115,47,101,116,105,108,113,115,95,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,168,173,0,0,184,173,0,0,200,173,0,0,0,0,0,0,0,0,0,0,47,118,97,114,47,116,109,112,0,0,0,0,0,0,0,0,47,117,115,114,47,116,109,112,0,0,0,0,0,0,0,0,47,116,109,112,0,0,0,0,83,81,76,73,84,69,95,84,77,80,68,73,82,0,0,0,84,77,80,68,73,82,0,0,102,117,108,108,95,102,115,121,110,99,0,0,0, +0,0,0,1,0,0,0,37,0,0,0,8,0,0,0,9,0,0,0,14,0,0,0,25,0,0,0,26,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,15,0,0,0,32,0,0,0,33,0,0,0,10,0,0,0,7,0,0,0,12,0,0,0,30,0,0,0,11,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,100,101,118,47,117,114,97,110,100,111,109,0,0,0,0,47,37,115,0,0,0,0,0,102,115,121,110,99,0,0,0,112,115,111,119,0,0,0,0,3,0,0,0,38,0,0,0,8,0,0,0,9,0,0,0,14,0,0,0,25,0,0,0,26,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,15,0,0,0,32,0,0,0,33,0,0,0,10,0,0,0,7,0,0,0,12,0,0,0,30,0,0,0,11,0,0,0,8,0,0,0,0,0,0,0,37,115,46, +108,111,99,107,0,99,97,110,110,111,116,32,102,115,116,97,116,32,100,98,32,102,105,108,101,32,37,115,0,102,105,108,101,32,117,110,108,105,110,107,101,100,32,119,104,105,108,101,32,111,112,101,110,58,32,37,115,0,0,0,0,109,117,108,116,105,112,108,101,32,108,105,110,107,115,32,116,111,32,102,105,108,101,58,32,37,115,0,0,0,0,0,0,102,105,108,101,32,114,101,110,97,109,101,100,32,119,104,105,108,101,32,111,112,101,110,58,32,37,115,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,0,0,0,0,100,10,1,1,0,0,115,0,4,6,0,0,103, +0,1,4,30,0,122,0,4,7,0,0,113,0,4,10,0,0,81,0,4,11,0,0,119,0,4,15,0,0,99,0,0,9,0,0,111,8,0,1,0,2,117,10,0,1,0,0,120,16,0,1,16,1,88,16,0,1,0,4,102,0,1,2,0,0,101,0,1,3,30,0,69,0,1,3,14,0,71,0,1,4,14,0,105,10,1,1,0,0,110,0,0,5,0,0,37,0,0,8,0,0,112,16,0,14,0,1,84,0,2,12,0,0,83,0,2,13,0,0,114,10,3,16,0,0,0,0,0,0,0,0,116,104,115,116,110,100,114,100,0,0,0,0,0,0,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0,0,0,0,0,0,0,0,45,120,48,0,88,48,0,0,78,97, +78,0,0,0,0,0,45,73,110,102,0,0,0,0,43,73,110,102,0,0,0,0,73,110,102,0,0,0,0,0,40,78,85,76,76,41,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,254,255,255,127,0,0,0,0,128,0,0,0,244,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,73,83,65,66,76,69,95,76,70,83,0,0,0,0,0,69,78,65,66,76,69,95,70,84,83,51,0,0,0,0,0,69,78,65,66,76,69,95,70,84,83,52,0,0,0,0,0,73,78,84,54,52,95,84,89,80,69,0,0,0,0,0,0,79,77,73,84,95,76,79,65,68,95,69,88,84,69,78,83,73,79,78,0,0,0,0,0,83,89,83,84,69,77,95,77,65,76,76,79,67,0,0,0,84,72,82,69,65,68,83,65,70,69,61,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"i8",Ga,u.Ga+41488); +var gb=u.qa(F(12,"i8",E),8);v(0==gb%8); +var J={S:1,Fa:2,Tf:3,Re:4,ia:5,Tb:6,oe:7,of:8,H:9,Be:10,Da:11,cg:11,Pc:12,jb:13,Me:14,Af:15,Ea:16,Qb:17,dg:18,lb:19,Rb:20,pa:21,A:22,jf:23,Oc:24,Ef:25,$f:26,Ne:27,wf:28,Ra:29,Pf:30,bf:31,Jf:32,Je:33,Ub:34,sf:42,Pe:43,Ce:44,Te:45,Ue:46,Ve:47,af:48,ag:49,mf:50,Se:51,He:35,pf:37,te:52,we:53,eg:54,kf:55,xe:56,ye:57,Ie:35,ze:59,yf:60,nf:61,Xf:62,xf:63,tf:64,uf:65,Of:66,qf:67,re:68,Uf:69,De:70,Kf:71,df:72,Ke:73,ve:74,Ff:76,ue:77,Nf:78,We:79,Xe:80,$e:81,Ze:82,Ye:83,zf:38,Sb:39,ef:36,kb:40,mb:95,If:96,Ge:104, +lf:105,se:97,Mf:91,Cf:88,vf:92,Rf:108,Fe:111,pe:98,Ee:103,hf:101,ff:100,Yf:110,Oe:112,Lc:113,Mc:115,Jc:114,Kc:89,cf:90,Lf:93,Sf:94,qe:99,gf:102,Nc:106,Qa:107,Zf:109,bg:87,Le:122,Vf:116,Df:95,rf:123,Qe:84,Gf:75,Ae:125,Bf:131,Hf:130,Wf:86},hb={"0":"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes", +12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func", +34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange", +53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)", +74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required", +90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected", +107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"},ib=0;function L(a){return C[ib>>2]=a} +function jb(a,b){for(var c=0,d=a.length-1;0<=d;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function kb(a){var b="/"===a.charAt(0),c="/"===a.substr(-1),a=jb(a.split("/").filter(function(a){return!!a}),!b).join("/");!a&&!b&&(a=".");a&&c&&(a+="/");return(b?"/":"")+a}function lb(a){if("/"===a)return"/";var b=a.lastIndexOf("/");return-1===b?a:a.substr(b+1)} +function mb(){for(var a="",b=l,c=arguments.length-1;-1<=c&&!b;c--){var d=0<=c?arguments[c]:"/";"string"!==typeof d&&f(new TypeError("Arguments to path.resolve must be strings"));d&&(a=d+"/"+a,b="/"===d.charAt(0))}a=jb(a.split("/").filter(function(a){return!!a}),!b).join("/");return(b?"/":"")+a||"."}var nb=[];function ob(a,b){nb[a]={input:[],na:[],Ja:b};pb[a]={o:qb}} +var qb={open:function(a){var b=nb[a.k.La];b||f(new M(J.lb));a.R=b;a.seekable=l},close:function(a){a.R.na.length&&a.R.Ja.cb(a.R,10)},W:function(a,b,c,d){(!a.R||!a.R.Ja.sc)&&f(new M(J.Tb));for(var e=0,g=0;ga.g.length)&&(a.g=O.vd(a),a.B=a.g.length); +if(!a.g||a.g.subarray){var c=a.g?a.g.buffer.byteLength:0;c>=b||(b=Math.max(b,c*(1048576>c?2:1.125)|0),0!=c&&(b=Math.max(b,256)),c=a.g,a.g=new Uint8Array(b),0b)a.g.length=b;else for(;a.g.length=a.k.B)return 0;a=Math.min(a.k.B-e,d);v(0<=a);if(8b&&f(new M(J.A));a.ge=[];return a.position=b},ac:function(a,b,c){O.lc(a.k,b+c);a.k.B=Math.max(a.k.B,b+c)},ab:function(a,b,c,d,e,g,h){32768!==(a.k.mode&61440)&&f(new M(J.lb));c=a.k.g;if(!(h&2)&&(c.buffer===b||c.buffer===b.buffer))a=l,d=c.byteOffset;else{if(0>>0)%Ab.length}function Eb(a){var b=Db(a.parent.id,a.name);if(Ab[b]===a)Ab[b]=a.wa;else for(b=Ab[b];b;){if(b.wa===a){b.wa=a.wa;break}b=b.wa}} +function ub(a,b){var c=Fb(a,"x");c&&f(new M(c));for(c=Ab[Db(a.id,b)];c;c=c.wa){var d=c.name;if(c.parent.id===a.id&&d===b)return c}return a.n.Eb(a,b)} +function sb(a,b,c,d){Gb||(Gb=function(a,b,c,d){a||(a=this);this.parent=a;this.ha=a.ha;this.va=k;this.id=zb++;this.name=b;this.mode=c;this.n={};this.o={};this.La=d},Gb.prototype={},Object.defineProperties(Gb.prototype,{W:{get:function(){return 365===(this.mode&365)},set:function(a){a?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146===(this.mode&146)},set:function(a){a?this.mode|=146:this.mode&=-147}},Id:{get:function(){return 16384===(this.mode&61440)}},Hd:{get:function(){return 8192=== +(this.mode&61440)}}}));a=new Gb(a,b,c,d);b=Db(a.parent.id,a.name);a.wa=Ab[b];return Ab[b]=a}var Hb={r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218};function Ib(a){var b=Hb[a];"undefined"===typeof b&&f(Error("Unknown file open mode: "+a));return b}function Fb(a,b){return Bb?0:-1!==b.indexOf("r")&&!(a.mode&292)||-1!==b.indexOf("w")&&!(a.mode&146)||-1!==b.indexOf("x")&&!(a.mode&73)?J.jb:0} +function Jb(a,b){try{return ub(a,b),J.Qb}catch(c){}return Fb(a,"wx")}function Kb(a,b,c){var d;try{d=ub(a,b)}catch(e){return e.yb}if(a=Fb(a,"wx"))return a;if(c){if(16384!==(d.mode&61440))return J.Rb;if(d===d.parent||"/"===Cb(d))return J.Ea}else if(16384===(d.mode&61440))return J.pa;return 0} +function Lb(a,b,c){Mb||(Mb=n(),Mb.prototype={},Object.defineProperties(Mb.prototype,{object:{get:function(){return this.k},set:function(a){this.k=a}},Yg:{get:function(){return 1!==(this.J&2097155)}},Zg:{get:function(){return 0!==(this.J&2097155)}},Xg:{get:function(){return this.J&1024}}}));var d=new Mb,e;for(e in a)d[e]=a[e];var a=d,g;a:{b=b||0;for(c=c||4096;b<=c;b++)if(!P[b]){g=b;break a}f(new M(J.Oc))}a.O=g;return P[g]=a}var rb={open:function(a){a.o=pb[a.k.La].o;a.o.open&&a.o.open(a)},ma:function(){f(new M(J.Ra))}}; +function Nb(a,b){var c="/"===b,d=!b,e;c&&yb&&f(new M(J.Ea));!c&&!d&&(e=S(b,{oc:l}),b=e.path,e=e.k,e.va&&f(new M(J.Ea)),16384!==(e.mode&61440)&&f(new M(J.Rb)));var d={type:a,eh:{},Od:b,Pd:[]},g=a.ha(d);g.ha=d;d.root=g;c?yb=g:e&&(e.va=d,e.ha&&e.ha.Pd.push(d));return g}function Ob(a,b,c){var d=S(a,{parent:j}).k,a=lb(a),e=Jb(d,a);e&&f(new M(e));d.n.$a||f(new M(J.S));return d.n.$a(d,a,b,c)}function Pb(a,b){b=(b!==i?b:438)&4095;b|=32768;return Ob(a,b,0)} +function Qb(a,b){b=(b!==i?b:511)&1023;b|=16384;return Ob(a,b,0)}function Rb(a,b,c){"undefined"===typeof c&&(c=b,b=438);return Ob(a,b|8192,c)}function Sb(a,b){var c=S(b,{parent:j}).k,d=lb(b),e=Jb(c,d);e&&f(new M(e));c.n.gb||f(new M(J.S));return c.n.gb(c,d,a)} +function Tb(a){var b=S(a,{parent:j}).k,c=lb(a),d=ub(b,c),e=Kb(b,c,l);e&&(e===J.pa&&(e=J.S),f(new M(e)));b.n.ib||f(new M(J.S));d.va&&f(new M(J.Ea));try{Q.willDeletePath&&Q.willDeletePath(a)}catch(g){console.log("FS.trackingDelegate['willDeletePath']('"+a+"') threw an exception: "+g.message)}b.n.ib(b,c);Eb(d);try{if(Q.onDeletePath)Q.onDeletePath(a)}catch(h){console.log("FS.trackingDelegate['onDeletePath']('"+a+"') threw an exception: "+h.message)}} +function Ub(a,b){var c=S(a,{sa:!b}).k;c.n.U||f(new M(J.S));return c.n.U(c)}function Vb(a,b){var c;c="string"===typeof a?S(a,{sa:j}).k:a;c.n.L||f(new M(J.S));c.n.L(c,{mode:b&4095|c.mode&-4096,timestamp:Date.now()})}function Wb(a){a="string"===typeof a?S(a,{sa:j}).k:a;a.n.L||f(new M(J.S));a.n.L(a,{timestamp:Date.now()})} +function Xb(a,b){0>b&&f(new M(J.A));var c;c="string"===typeof a?S(a,{sa:j}).k:a;c.n.L||f(new M(J.S));16384===(c.mode&61440)&&f(new M(J.pa));32768!==(c.mode&61440)&&f(new M(J.A));var d=Fb(c,"w");d&&f(new M(d));c.n.L(c,{size:b,timestamp:Date.now()})} +function Yb(a,b,c,d){""===a&&f(new M(J.Fa));var b="string"===typeof b?Ib(b):b,c=b&64?("undefined"===typeof c?438:c)&4095|32768:0,e;if("object"===typeof a)e=a;else{a=kb(a);try{e=S(a,{sa:!(b&131072)}).k}catch(g){}}b&64&&(e?b&128&&f(new M(J.Qb)):e=Ob(a,c,0));e||f(new M(J.Fa));8192===(e.mode&61440)&&(b&=-513);e?40960===(e.mode&61440)?c=J.kb:16384===(e.mode&61440)&&(0!==(b&2097155)||b&512)?c=J.pa:(c=["r","w","rw"][b&2097155],b&512&&(c+="w"),c=Fb(e,c)):c=J.Fa;c&&f(new M(c));b&512&&Xb(e,0);b&=-641;d=Lb({k:e, +path:Cb(e),J:b,seekable:j,position:0,o:e.o,ge:[],error:l},d,i);d.o.open&&d.o.open(d);r.logReadFiles&&!(b&1)&&(Zb||(Zb={}),a in Zb||(Zb[a]=1,r.printErr("read file: "+a)));try{Q.onOpenFile&&(e=0,1!==(b&2097155)&&(e|=1),0!==(b&2097155)&&(e|=2),Q.onOpenFile(a,e))}catch(h){console.log("FS.trackingDelegate['onOpenFile']('"+a+"', flags) threw an exception: "+h.message)}return d}function $b(a){try{a.o.close&&a.o.close(a)}catch(b){f(b)}finally{P[a.O]=k}} +function ac(a,b,c){(!a.seekable||!a.o.ma)&&f(new M(J.Ra));return a.o.ma(a,b,c)}function bc(a,b,c,d){var e=z;(0>c||0>d)&&f(new M(J.A));1===(a.J&2097155)&&f(new M(J.H));16384===(a.k.mode&61440)&&f(new M(J.pa));a.o.W||f(new M(J.A));var g=j;"undefined"===typeof d?(d=a.position,g=l):a.seekable||f(new M(J.Ra));b=a.o.W(a,e,b,c,d);g||(a.position+=b);return b} +function cc(a,b,c,d,e,g){(0>d||0>e)&&f(new M(J.A));0===(a.J&2097155)&&f(new M(J.H));16384===(a.k.mode&61440)&&f(new M(J.pa));a.o.write||f(new M(J.A));a.J&1024&&ac(a,0,2);var h=j;"undefined"===typeof e?(e=a.position,h=l):a.seekable||f(new M(J.Ra));b=a.o.write(a,b,c,d,e,g);h||(a.position+=b);try{if(a.path&&Q.onWriteToFile)Q.onWriteToFile(a.path)}catch(m){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+m.message)}return b} +function dc(){M||(M=function(a){this.yb=a;for(var b in J)if(J[b]===a){this.code=b;break}this.message=hb[a]},M.prototype=Error(),[J.Fa].forEach(function(a){tb[a]=new M(a);tb[a].stack=""}))}var ec;function fc(a,b){var c=0;a&&(c|=365);b&&(c|=146);return c} +function gc(a,b,c,d,e,g){a=b?kb(("string"===typeof a?a:Cb(a))+"/"+b):a;d=fc(d,e);e=Pb(a,d);if(c){if("string"===typeof c){for(var a=Array(c.length),b=0,h=c.length;b>2]=d.pd;C[b+4>>2]=0;C[b+8>>2]=d.tc;C[b+12>>2]=d.mode;C[b+16>>2]=d.Sd;C[b+20>>2]=d.uid;C[b+24>>2]=d.Cd;C[b+28>>2]=d.La;C[b+32>>2]=0;C[b+36>>2]=d.size;C[b+40>>2]=4096;C[b+44>>2]=d.kd;C[b+48>>2]=Math.floor(d.bd.getTime()/1E3);C[b+52>>2]=0;C[b+56>>2]=Math.floor(d.Qd.getTime()/1E3);C[b+60>>2]=0;C[b+64>>2]=Math.floor(d.nd.getTime()/1E3);C[b+68>>2]=0;C[b+72>>2]=d.tc;return 0}catch(e){return R(e),-1}}r._bitshift64Shl=mc; +function nc(a){a/=1E3;if(da&&window.performance&&window.performance.now)for(var b=window.performance.now();window.performance.now()-b>8,a.Ba&255]));return b},Za:function(a,b,c){return a.Ka[b+":"+c]},$b:function(a,b){a.Ka[b.$+":"+b.port]=b},Ec:function(a,b){delete a.Ka[b.$+":"+b.port]},Fd:function(a,b){function c(){try{for(var a=b.Xa.shift();a;)b.q.send(a),a=b.Xa.shift()}catch(c){b.q.close()}}function d(c){v("string"!==typeof c&&c.byteLength!==i);var c=new Uint8Array(c),d=e;e=l;d&&10===c.length&&255===c[0]&&255===c[1]&&255===c[2]&&255===c[3]&&112===c[4]&&111===c[5]&&114===c[6]&&116===c[7]?(c=c[8]<<8|c[9], +T.M.Ec(a,b),b.port=c,T.M.$b(a,b)):a.ya.push({$:b.$,port:b.port,data:c})}var e=j;ca?(b.q.on("open",c),b.q.on("message",function(a,b){b.binary&&d((new Uint8Array(a)).buffer)}),b.q.on("error",n())):(b.q.onopen=c,b.q.onmessage=function(a){d(a.data)})},Cc:function(a){if(1===a.type&&a.I)return a.Fb.length?65:0;var b=0,c=1===a.type?T.M.Za(a,a.aa,a.ba):k;if(a.ya.length||!c||c&&c.q.readyState===c.q.Pa||c&&c.q.readyState===c.q.CLOSED)b|=65;if(!c||c&&c.q.readyState===c.q.OPEN)b|=4;if(c&&c.q.readyState===c.q.Pa|| +c&&c.q.readyState===c.q.CLOSED)b|=16;return b},vc:function(a,b,c){switch(b){case 21531:return b=0,a.ya.length&&(b=a.ya[0].data.length),C[c>>2]=b,0;default:return J.A}},close:function(a){if(a.I){try{a.I.close()}catch(b){}a.I=k}for(var c=Object.keys(a.Ka),d=0;d=Ac;)Ac+=1E3/60;b=Math.max(Ac-b,0);setTimeout(a,b)}function Cc(a){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[a.substr(a.lastIndexOf(".")+1)]}var Dc=[];function Ec(){var a=r.canvas;Dc.forEach(function(b){b(a.width,a.height)})} +function Fc(a,b,c){b&&c?(a.he=b,a.Gd=c):(b=a.he,c=a.Gd);var d=b,e=c;r.forcedAspectRatio&&0>2]=60*-(new Date).getTimezoneOffset();C[Nc>>2]=Number((new Date(2E3,0,1)).getTimezoneOffset()!=(new Date(2E3,6,1)).getTimezoneOffset());var a=F(I("GMT"),"i8",Fa),b=F(I("GMT"),"i8",Fa);C[Mc>>2]=a;C[Mc+4>>2]=b}} +function Qc(a,b){Pc();var c=new Date(1E3*C[a>>2]);C[b>>2]=c.getSeconds();C[b+4>>2]=c.getMinutes();C[b+8>>2]=c.getHours();C[b+12>>2]=c.getDate();C[b+16>>2]=c.getMonth();C[b+20>>2]=c.getFullYear()-1900;C[b+24>>2]=c.getDay();var d=new Date(c.getFullYear(),0,1);C[b+28>>2]=Math.floor((c.getTime()-d.getTime())/864E5);C[b+36>>2]=60*d.getTimezoneOffset();C[b+32>>2]=Number(d.getTimezoneOffset()!=c.getTimezoneOffset());C[b+40>>2]=Lc;return b}r._bitshift64Lshr=Rc; +function Sc(a,b,c){a=P[a];if(!a)return L(J.H),-1;try{return bc(a,b,c)}catch(d){return R(d),-1}}var Tc=F(1,"i32*",E); +function Uc(a){var b,c;Uc.Ha?(c=C[Tc>>2],b=C[c>>2]):(Uc.Ha=j,Vc.USER="root",Vc.PATH="/",Vc.PWD="/",Vc.HOME="/home/emscripten",Vc.LANG="en_US.UTF-8",Vc._="./this.program",b=F(1024,"i8",E),c=F(256,"i8*",E),C[c>>2]=b,C[Tc>>2]=c);var d=[],e=0,g;for(g in a)if("string"===typeof a[g]){var h=g+"="+a[g];d.push(h);e+=h.length}1024>2]=b,b+=h.length+1;C[c+4*d.length>>2]=0}var Vc={}; +function Wc(a){if(0===a)return 0;a=w(a);if(!Vc.hasOwnProperty(a))return 0;Wc.Jb&&Xc(Wc.Jb);Wc.Jb=F(I(Vc[a]),"i8",Fa);return Wc.Jb}r._memcpy=Yc;function Zc(a){Zc.Ha||(y=y+4095&-4096,Zc.Ha=j,v(u.Ia),Zc.ad=u.Ia,u.Ia=function(){la("cannot dynamically allocate, sbrk now has control")});var b=y;0!=a&&Zc.ad(a);return b}r._memmove=$c;function ad(a,b,c){if(a in hb){if(hb[a].length>c-1)return L(J.Ub);ab(hb[a],b);return 0}return L(J.A)} +function bd(a){bd.buffer||(bd.buffer=Ha(256));ad(a,bd.buffer,256);return bd.buffer}function cd(a,b,c,d,e,g){var h,m=l;cd.ua||(cd.ua={});if(-1==e){h=Ha(b);if(!h)return-1;kc(h,0,b);m=j}else{e=P[e];if(!e)return-1;try{var t,p=G;1===(e.J&2097155)&&f(new M(J.jb));e.o.ab||f(new M(J.lb));t=e.o.ab(e,p,a,b,g,c,d);h=t.Wd;m=t.qb}catch(D){return R(D),-1}}cd.ua[h]={Nd:h,Ud:b,qb:m};return h}dc();Ab=Array(4096);Nb(O,"/");Qb("/tmp");Qb("/dev");pb[259]={o:{W:function(){return 0},write:function(){return 0}}}; +Rb("/dev/null",259);ob(1280,{sc:function(a){if(!a.input.length){var b=k;if(ca){if(b=process.stdin.read(),!b){if(process.stdin._readableState&&process.stdin._readableState.ended)return k;return}}else"undefined"!=typeof window&&"function"==typeof window.prompt?(b=window.prompt("Input: "),b!==k&&(b+="\n")):"function"==typeof readline&&(b=readline(),b!==k&&(b+="\n"));if(!b)return k;a.input=I(b,j)}return a.input.shift()},cb:function(a,b){b===k||10===b?(r.print(a.na.join("")),a.na=[]):a.na.push(dd.Gb(b))}}); +ob(1536,{cb:function(a,b){b===k||10===b?(r.printErr(a.na.join("")),a.na=[]):a.na.push(dd.Gb(b))}});Rb("/dev/tty",1280);Rb("/dev/tty1",1536);var ed;if("undefined"!==typeof crypto){var fd=new Uint8Array(1);ed=function(){crypto.getRandomValues(fd);return fd[0]}}else ed=ca?function(){return require("crypto").randomBytes(1)[0]}:function(){return Math.floor(256*Math.random())};hc("/dev","random",ed);hc("/dev","urandom",ed);Qb("/dev/shm");Qb("/dev/shm/tmp"); +Ua.unshift({ta:function(){if(!r.noFSInit&&!ec){v(!ec,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");ec=j;dc();r.stdin=r.stdin;r.stdout=r.stdout;r.stderr=r.stderr;r.stdin?hc("/dev","stdin",r.stdin):Sb("/dev/tty","/dev/stdin");r.stdout?hc("/dev","stdout",k,r.stdout):Sb("/dev/tty","/dev/stdout");r.stderr?hc("/dev","stderr",k,r.stderr):Sb("/dev/tty1","/dev/stderr");var a=Yb("/dev/stdin", +"r");C[vb>>2]=a?a.O+1:0;v(0===a.O,"invalid handle for stdin ("+a.O+")");a=Yb("/dev/stdout","w");C[wb>>2]=a?a.O+1:0;v(1===a.O,"invalid handle for stdout ("+a.O+")");a=Yb("/dev/stderr","w");C[xb>>2]=a?a.O+1:0;v(2===a.O,"invalid handle for stderr ("+a.O+")")}}});Va.push({ta:function(){Bb=l}});Wa.push({ta:function(){ec=l;for(var a=0;a>g-6&63,g=g-6,c=c+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[t]}2==g?(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(d&3)<<4],c+="=="):4==g&&(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(d&15)<<2],c+="="); +p.src="data:audio/x-"+b.substr(-3)+";base64,"+c;e(p)}};p.src=m;r.noExitRuntime=j;setTimeout(function(){oa||e(p)},1E4)}else return g()}});var x=r.canvas;x&&(x.Ib=x.requestPointerLock||x.mozRequestPointerLock||x.webkitRequestPointerLock||x.msRequestPointerLock||n(),x.kc=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||n(),x.kc=x.kc.bind(document),document.addEventListener("pointerlockchange",p,l),document.addEventListener("mozpointerlockchange", +p,l),document.addEventListener("webkitpointerlockchange",p,l),document.addEventListener("mspointerlockchange",p,l),r.elementPointerLock&&x.addEventListener("click",function(a){!wc&&x.Ib&&(x.Ib(),a.preventDefault())},l))}var A=b?mb(kb(a+"/"+b)):a;eb();if("string"==typeof c){var K=h,ja=function(){K?K():f('Loading data file "'+c+'" failed.')},N=new XMLHttpRequest;N.open("GET",c,j);N.responseType="arraybuffer";N.onload=function(){if(200==N.status||0==N.status&&N.response){var a=N.response;v(a,'Loading data file "'+ +c+'" failed (no arrayBuffer).');a=new Uint8Array(a);D(a);fb()}else ja()};N.onerror=ja;N.send(k);eb()}else D(c)}; +r.FS_createLazyFile=function(a,b,c,d,e){var g,h;function m(){this.Db=l;this.Ua=[]}m.prototype.get=function(a){if(!(a>this.length-1||0>a)){var b=a%this.Ta;return this.Bd(Math.floor(a/this.Ta))[b]}};m.prototype.ce=function(a){this.Bd=a};m.prototype.cc=function(){var a=new XMLHttpRequest;a.open("HEAD",c,l);a.send(k);200<=a.status&&300>a.status||304===a.status||f(Error("Couldn't load "+c+". Status: "+a.status));var b=Number(a.getResponseHeader("Content-length")),d,e=1048576;if(!((d=a.getResponseHeader("Accept-Ranges"))&& +"bytes"===d))e=b;var g=this;g.ce(function(a){var d=a*e,h=(a+1)*e-1,h=Math.min(h,b-1);if("undefined"===typeof g.Ua[a]){var m=g.Ua;d>h&&f(Error("invalid range ("+d+", "+h+") or no bytes requested!"));h>b-1&&f(Error("only "+b+" bytes available! programmer error!"));var p=new XMLHttpRequest;p.open("GET",c,l);b!==e&&p.setRequestHeader("Range","bytes="+d+"-"+h);"undefined"!=typeof Uint8Array&&(p.responseType="arraybuffer");p.overrideMimeType&&p.overrideMimeType("text/plain; charset=x-user-defined");p.send(k); +200<=p.status&&300>p.status||304===p.status||f(Error("Couldn't load "+c+". Status: "+p.status));d=p.response!==i?new Uint8Array(p.response||[]):I(p.responseText||"",j);m[a]=d}"undefined"===typeof g.Ua[a]&&f(Error("doXHR failed!"));return g.Ua[a]});this.Zc=b;this.Yc=e;this.Db=j};"undefined"!==typeof XMLHttpRequest?(ea||f("Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"),g=new m,Object.defineProperty(g,"length",{get:function(){this.Db|| +this.cc();return this.Zc}}),Object.defineProperty(g,"chunkSize",{get:function(){this.Db||this.cc();return this.Yc}}),h=i):(h=c,g=i);var t,a=kb(("string"===typeof a?a:Cb(a))+"/"+b);t=Pb(a,fc(d,e));g?t.g=g:h&&(t.g=k,t.url=h);Object.defineProperty(t,"usedBytes",{get:function(){return this.g.length}});var p={};Object.keys(t.o).forEach(function(a){var b=t.o[a];p[a]=function(){ic(t)||f(new M(J.ia));return b.apply(k,arguments)}});p.W=function(a,b,c,d,e){ic(t)||f(new M(J.ia));a=a.k.g;if(e>=a.length)return 0; +d=Math.min(a.length-e,d);v(0<=d);if(a.slice)for(var g=0;g>2]=0;Ua.unshift({ta:n()});Wa.push({ta:n()});var dd=new u.ob;ca&&(require("fs"),process.platform.match(/^win/));Ua.push({ta:function(){T.root=Nb(T,k)}}); +r.requestFullScreen=function(a,b){function c(){vc=l;var a=d.parentNode;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===a?(d.dc=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen||document.msExitFullscreen||document.exitFullscreen|| +n(),d.dc=d.dc.bind(document),yc&&d.Ib(),vc=j,zc&&("undefined"!=typeof SDL&&(a=La[SDL.screen+0*u.ja>>2],C[SDL.screen+0*u.ja>>2]=a|8388608),Ec())):(a.parentNode.insertBefore(d,a),a.parentNode.removeChild(a),zc&&("undefined"!=typeof SDL&&(a=La[SDL.screen+0*u.ja>>2],C[SDL.screen+0*u.ja>>2]=a&-8388609),Ec()));if(r.onFullScreen)r.onFullScreen(vc);Fc(d)}yc=a;zc=b;"undefined"===typeof yc&&(yc=j);"undefined"===typeof zc&&(zc=l);var d=r.canvas;xc||(xc=j,document.addEventListener("fullscreenchange",c,l),document.addEventListener("mozfullscreenchange", +c,l),document.addEventListener("webkitfullscreenchange",c,l),document.addEventListener("MSFullscreenChange",c,l));var e=document.createElement("div");d.parentNode.insertBefore(e,d);e.appendChild(d);e.$d=e.requestFullScreen||e.mozRequestFullScreen||e.msRequestFullscreen||(e.webkitRequestFullScreen?function(){e.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:k);e.$d()}; +r.requestAnimationFrame=function(a){"undefined"===typeof window?Bc(a):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Bc),window.requestAnimationFrame(a))};r.setCanvasSize=function(a,b,c){Fc(r.canvas,a,b);c||Ec()};r.pauseMainLoop=n();r.resumeMainLoop=function(){uc&&(uc=l,k())}; +r.getUserMedia=function(){window.rc||(window.rc=navigator.getUserMedia||navigator.mozGetUserMedia);window.rc(i)};Uc(Vc);Na=s=u.qa(ma);Oa=Na+5242880;Pa=y=u.qa(Oa);v(Pa>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0]}function Hb(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0];a[k+4>>0]=a[b+4>>0];a[k+5>>0]=a[b+5>>0];a[k+6>>0]=a[b+6>>0];a[k+7>>0]=a[b+7>>0]}function Ib(a){a=a|0;D=a}function Jb(){return D|0}function Kb(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[c[d>>2]>>2]=8;i=b;return}function Lb(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;g=i;i=i+32|0;e=g+4|0;d=g;f=g+8|0;c[e>>2]=b;j=f+0|0;h=40|0;b=j+10|0;do{a[j>>0]=a[h>>0]|0;j=j+1|0;h=h+1|0}while((j|0)<(b|0));Kb(d);j=Mb(c[e>>2]|0,f,c[d>>2]|0)|0;i=g;return j|0}function Mb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+24|0;m=e;k=e+4|0;j=e+8|0;g=e+12|0;h=e+16|0;l=e+20|0;c[m>>2]=a;c[k>>2]=b;c[j>>2]=d;c[l>>2]=56;c[g>>2]=Df(c[m>>2]|0,c[l>>2]|0,-1,h,0)|0;if((c[g>>2]|0)!=0){c[f>>2]=c[g>>2];m=c[f>>2]|0;i=e;return m|0}else{Re(c[h>>2]|0,1,c[k>>2]|0,-1,0)|0;Ke(c[h>>2]|0,2,j,4,0)|0;le(c[h>>2]|0)|0;c[f>>2]=yd(c[h>>2]|0)|0;m=c[f>>2]|0;i=e;return m|0}return 0}function Nb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+32|0;f=e+16|0;g=e+8|0;h=e+12|0;c[e>>2]=a;c[e+4>>2]=b;c[g>>2]=d;c[h>>2]=mc(4)|0;if((c[h>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=e;return a|0}else{a=c[h>>2]|0;c[a+0>>2]=0;c[c[g>>2]>>2]=c[h>>2];c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}return 0}function Ob(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;oc(c[d>>2]|0);i=b;return 0}function Pb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;f=g+20|0;k=g+4|0;j=g+8|0;l=g+12|0;h=g+16|0;c[g>>2]=a;c[k>>2]=b;c[j>>2]=d;c[l>>2]=e;if((c[k>>2]|0)==0){c[j>>2]=0}else{if((c[j>>2]|0)<0){c[j>>2]=cL(c[k>>2]|0)|0}}c[h>>2]=mc(24)|0;if((c[h>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=g;return a|0}else{c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+20>>2]=0;c[(c[h>>2]|0)+8>>2]=c[j>>2];c[(c[h>>2]|0)+4>>2]=c[k>>2];c[c[l>>2]>>2]=c[h>>2];c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}return 0}function Qb(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];if((c[(c[d>>2]|0)+20>>2]|0)==0){e=c[d>>2]|0;oc(e);i=b;return 0}oc(c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;e=c[d>>2]|0;oc(e);i=b;return 0}function Rb(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;l=i;i=i+48|0;s=l+20|0;x=l+40|0;n=l+36|0;p=l+32|0;q=l+28|0;r=l+24|0;k=l+16|0;m=l+12|0;o=l+8|0;v=l+4|0;w=l+45|0;t=l;u=l+44|0;c[x>>2]=b;c[n>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[k>>2]=j;c[m>>2]=c[x>>2];if((c[(c[m>>2]|0)+20>>2]|0)!=0){oc(c[(c[m>>2]|0)+20>>2]|0);c[(c[m>>2]|0)+20>>2]=0}if((c[(c[m>>2]|0)+12>>2]|0)>=(c[(c[m>>2]|0)+8>>2]|0)){c[s>>2]=101;x=c[s>>2]|0;i=l;return x|0}c[o>>2]=1;c[v>>2]=(c[(c[m>>2]|0)+4>>2]|0)+(c[(c[m>>2]|0)+12>>2]|0);c[c[q>>2]>>2]=c[(c[m>>2]|0)+12>>2];x=(c[m>>2]|0)+12|0;c[x>>2]=(c[x>>2]|0)+1;while(1){if((c[(c[m>>2]|0)+12>>2]|0)>=(c[(c[m>>2]|0)+8>>2]|0)){break}a[w>>0]=a[(c[(c[m>>2]|0)+4>>2]|0)+(c[(c[m>>2]|0)+12>>2]|0)>>0]|0;if((a[w>>0]&128|0)==0){break}if((a[w>>0]&192|0)==192){break}c[o>>2]=(c[o>>2]|0)+1;x=(c[m>>2]|0)+12|0;c[x>>2]=(c[x>>2]|0)+1}x=mc((c[o>>2]|0)+1|0)|0;c[(c[m>>2]|0)+20>>2]=x;if((c[(c[m>>2]|0)+20>>2]|0)==0){c[s>>2]=7;x=c[s>>2]|0;i=l;return x|0}a[(c[(c[m>>2]|0)+20>>2]|0)+(c[o>>2]|0)>>0]=0;fL(c[(c[m>>2]|0)+20>>2]|0,c[v>>2]|0,c[o>>2]|0)|0;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[o>>2]|0)){break}a[u>>0]=a[(c[(c[m>>2]|0)+20>>2]|0)+(c[t>>2]|0)>>0]|0;if((d[u>>0]|0)<128){x=(WK(d[u>>0]|0)|0)&255;a[(c[(c[m>>2]|0)+20>>2]|0)+(c[t>>2]|0)>>0]=x}c[t>>2]=(c[t>>2]|0)+1}c[c[n>>2]>>2]=c[(c[m>>2]|0)+20>>2];c[c[p>>2]>>2]=c[o>>2];c[c[r>>2]>>2]=(c[c[q>>2]>>2]|0)+(c[o>>2]|0);b=(c[m>>2]|0)+16|0;x=c[b>>2]|0;c[b>>2]=x+1;c[c[k>>2]>>2]=x;c[s>>2]=0;x=c[s>>2]|0;i=l;return x|0}function Sb(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;b=e+12|0;f=e;g=e+4|0;h=e+8|0;c[f>>2]=a;if((Tb(c[f>>2]|0,96,7)|0)==0){c[f>>2]=(c[f>>2]|0)+7}c[h>>2]=Ub(c[f>>2]|0)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=7){a=9;break}if((Tb(c[f>>2]|0,c[104+(c[g>>2]<<2)>>2]|0,c[h>>2]|0)|0)==0){if((d[136+(d[(c[104+(c[g>>2]<<2)>>2]|0)+(c[h>>2]|0)>>0]|0)>>0]|0|0)==0){a=7;break}}c[g>>2]=(c[g>>2]|0)+1}if((a|0)==7){c[b>>2]=1;h=c[b>>2]|0;i=e;return h|0}else if((a|0)==9){c[b>>2]=0;h=c[b>>2]|0;i=e;return h|0}return 0}function Tb(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+16|0;k=f;j=f+4|0;g=f+8|0;h=f+12|0;c[l>>2]=a;c[k>>2]=b;c[j>>2]=e;c[g>>2]=c[l>>2];c[h>>2]=c[k>>2];while(1){l=c[j>>2]|0;c[j>>2]=l+ -1;if((l|0)<=0){break}if((d[c[g>>2]>>0]|0|0)==0){break}if((d[784+(d[c[g>>2]>>0]|0)>>0]|0|0)!=(d[784+(d[c[h>>2]>>0]|0)>>0]|0|0)){break}c[g>>2]=(c[g>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+1}if((c[j>>2]|0)<0){l=0;i=f;return l|0}l=(d[784+(d[c[g>>2]>>0]|0)>>0]|0)-(d[784+(d[c[h>>2]>>0]|0)>>0]|0)|0;i=f;return l|0}function Ub(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d;g=d+4|0;c[f>>2]=b;c[g>>2]=c[f>>2];if((c[f>>2]|0)==0){c[e>>2]=0;b=c[e>>2]|0;i=d;return b|0}while(1){b=c[g>>2]|0;if((a[c[g>>2]>>0]|0)==0){break}c[g>>2]=b+1}c[e>>2]=1073741823&b-(c[f>>2]|0);b=c[e>>2]|0;i=d;return b|0}function Vb(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;if((c[e>>2]|0)>=0&(c[e>>2]|0)<7){c[d>>2]=c[104+(c[e>>2]<<2)>>2];e=c[d>>2]|0;i=b;return e|0}else{c[d>>2]=0;e=c[d>>2]|0;i=b;return e|0}return 0}function Wb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f;j=f+4|0;k=f+8|0;l=f+12|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;if((c[h>>2]|0)<0|(c[h>>2]|0)>=10){c[g>>2]=Xb(14363)|0;a=c[g>>2]|0;i=f;return a|0}c[c[j>>2]>>2]=c[392+(c[h>>2]<<2)>>2];c[c[k>>2]>>2]=c[432+(c[h>>2]<<2)>>2];if((c[l>>2]|0)!=0){c[432+(c[h>>2]<<2)>>2]=c[392+(c[h>>2]<<2)>>2]}c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}function Xb(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+8|0;c[e>>2]=a;e=c[e>>2]|0;a=(Tf()|0)+20|0;c[d>>2]=e;c[d+4>>2]=a;zc(21,3536,d);i=b;return 21}function Yb(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b;f=b+4|0;c[d>>2]=a;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[d>>2]|0)+20>>2]|0)){break}c[f>>2]=c[(c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]<<4)+4>>2];if((c[f>>2]|0)!=0){c[(c[(c[f>>2]|0)+4>>2]|0)+4>>2]=c[c[f>>2]>>2]}c[e>>2]=(c[e>>2]|0)+1}i=b;return}function Zb(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[c[(c[b>>2]|0)+4>>2]>>2]|0}function _b(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=ub[c[45184>>2]&63](c[d>>2]|0)|0;i=b;return a|0}function $b(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}lu(c[e>>2]|0,c[(c[f>>2]|0)+28>>2]|0);cc(c[e>>2]|0,c[c[f>>2]>>2]|0);cc(c[e>>2]|0,c[(c[f>>2]|0)+4>>2]|0);gu(c[e>>2]|0,c[(c[f>>2]|0)+12>>2]|0);hu(c[e>>2]|0,c[(c[f>>2]|0)+16>>2]|0);cc(c[e>>2]|0,c[f>>2]|0);i=d;return}function ac(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f;j=f+4|0;k=f+8|0;l=f+12|0;c[g>>2]=a;c[h>>2]=d;if((c[h>>2]|0)==0){i=f;return}if((c[g>>2]|0)!=0){if((c[(c[g>>2]|0)+512>>2]|0)==0){e=4}}else{e=4}if((e|0)==4){d=(c[h>>2]|0)+40|0;a=(b[d>>1]|0)+ -1<<16>>16;b[d>>1]=a;if((a&65535|0)>0){i=f;return}}c[j>>2]=c[(c[h>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break}c[k>>2]=c[(c[j>>2]|0)+20>>2];if((c[g>>2]|0)!=0){if((c[(c[g>>2]|0)+512>>2]|0)==0){e=9}}else{e=9}if((e|0)==9){e=0;c[l>>2]=c[c[j>>2]>>2];d=(c[(c[j>>2]|0)+24>>2]|0)+24|0;a=c[l>>2]|0;Eh(d,a,Ub(c[l>>2]|0)|0,0)|0}NE(c[g>>2]|0,c[j>>2]|0);c[j>>2]=c[k>>2]}eF(c[g>>2]|0,c[h>>2]|0);JE(c[g>>2]|0,c[h>>2]|0);cc(c[g>>2]|0,c[c[h>>2]>>2]|0);cc(c[g>>2]|0,c[(c[h>>2]|0)+20>>2]|0);du(c[g>>2]|0,c[(c[h>>2]|0)+12>>2]|0);cu(c[g>>2]|0,c[(c[h>>2]|0)+24>>2]|0);fF(c[g>>2]|0,c[h>>2]|0);cc(c[g>>2]|0,c[h>>2]|0);i=f;return}function bc(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;g=h+16|0;f=h;k=h+4|0;l=h+8|0;j=h+12|0;c[g>>2]=a;c[f>>2]=d;NA(c[(c[f>>2]|0)+60>>2]|0,b[(c[f>>2]|0)+68>>1]|0);NA(c[(c[f>>2]|0)+16>>2]|0,e[(c[f>>2]|0)+84>>1]<<1);c[k>>2]=c[(c[f>>2]|0)+192>>2];while(1){if((c[k>>2]|0)==0){break}c[l>>2]=c[(c[k>>2]|0)+24>>2];gJ(c[g>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0);cc(c[g>>2]|0,c[k>>2]|0);c[k>>2]=c[l>>2]}c[j>>2]=(b[(c[f>>2]|0)+70>>1]|0)-1;while(1){d=c[g>>2]|0;if((c[j>>2]|0)<0){break}cc(d,c[(c[(c[f>>2]|0)+64>>2]|0)+(c[j>>2]<<2)>>2]|0);c[j>>2]=(c[j>>2]|0)+ -1}gJ(d,c[(c[f>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+32>>2]|0);cc(c[g>>2]|0,c[(c[f>>2]|0)+16>>2]|0);cc(c[g>>2]|0,c[(c[f>>2]|0)+168>>2]|0);cc(c[g>>2]|0,c[(c[f>>2]|0)+172>>2]|0);i=h;return}function cc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d;g=d+4|0;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}if((c[e>>2]|0)!=0){a=c[e>>2]|0;b=c[f>>2]|0;if((c[(c[e>>2]|0)+512>>2]|0)!=0){b=Vv(a,b)|0;a=c[(c[e>>2]|0)+512>>2]|0;c[a>>2]=(c[a>>2]|0)+b;i=d;return}if((Pt(a,b)|0)!=0){c[g>>2]=c[f>>2];c[c[g>>2]>>2]=c[(c[e>>2]|0)+264>>2];c[(c[e>>2]|0)+264>>2]=c[g>>2];a=(c[e>>2]|0)+244|0;c[a>>2]=(c[a>>2]|0)+ -1;i=d;return}}oc(c[f>>2]|0);i=d;return}function dc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;f=b;e=b+4|0;g=b+8|0;c[f>>2]=a;c[e>>2]=0;c[g>>2]=ec()|0;if((c[g>>2]|0)!=0){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}c[e>>2]=c[118];while(1){if((c[e>>2]|0)==0){break}if((c[f>>2]|0)==0){break}if((YK(c[f>>2]|0,c[(c[e>>2]|0)+16>>2]|0)|0)==0){break}c[e>>2]=c[(c[e>>2]|0)+12>>2]}c[d>>2]=c[e>>2];g=c[d>>2]|0;i=b;return g|0}function ec(){var a=0,b=0,d=0,e=0,f=0;a=i;i=i+16|0;b=a+8|0;d=a;e=a+4|0;if((c[45360>>2]|0)!=0){c[b>>2]=0;f=c[b>>2]|0;i=a;return f|0}c[d>>2]=0;if((c[d>>2]|0)!=0){c[b>>2]=c[d>>2];f=c[b>>2]|0;i=a;return f|0}c[45368>>2]=1;if((c[45372>>2]|0)==0){c[d>>2]=Vf()|0}if((c[d>>2]|0)==0){c[45372>>2]=1;if((c[45384>>2]|0)==0){c[45384>>2]=8;if((c[45140>>2]|0)!=0){if((c[45384>>2]|0)==0){c[d>>2]=7}}}}if((c[d>>2]|0)==0){c[45380>>2]=(c[45380>>2]|0)+1}if((c[d>>2]|0)!=0){c[b>>2]=c[d>>2];f=c[b>>2]|0;i=a;return f|0}if((c[45360>>2]|0)==0){if((c[45364>>2]|0)==0){c[e>>2]=1896;c[45364>>2]=1;f=(c[e>>2]|0)+0|0;e=f+92|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));Wf();if((c[45376>>2]|0)==0){c[d>>2]=Xf()|0}if((c[d>>2]|0)==0){c[45376>>2]=1;c[d>>2]=Yf()|0}if((c[d>>2]|0)==0){Zf(c[45340>>2]|0,c[45344>>2]|0,c[45348>>2]|0);c[45360>>2]=1}c[45364>>2]=0}}c[45380>>2]=(c[45380>>2]|0)+ -1;if((c[45380>>2]|0)<=0){c[45384>>2]=0}c[b>>2]=c[d>>2];f=c[b>>2]|0;i=a;return f|0}function fc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d;g=d+4|0;h=d+8|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=ec()|0;if((c[h>>2]|0)!=0){c[e>>2]=c[h>>2];a=c[e>>2]|0;i=d;return a|0}gc(c[f>>2]|0);b=c[118]|0;if((c[g>>2]|0)!=0|(c[118]|0)==0){c[(c[f>>2]|0)+12>>2]=b;c[118]=c[f>>2]}else{c[(c[f>>2]|0)+12>>2]=c[b+12>>2];c[(c[118]|0)+12>>2]=c[f>>2]}c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}function gc(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}if((c[118]|0)==(c[d>>2]|0)){c[118]=c[(c[d>>2]|0)+12>>2];i=b;return}if((c[118]|0)==0){i=b;return}c[e>>2]=c[118];while(1){if((c[(c[e>>2]|0)+12>>2]|0)!=0){f=(c[(c[e>>2]|0)+12>>2]|0)!=(c[d>>2]|0)}else{f=0}a=c[(c[e>>2]|0)+12>>2]|0;if(!f){break}c[e>>2]=a}if((a|0)!=(c[d>>2]|0)){i=b;return}c[(c[e>>2]|0)+12>>2]=c[(c[d>>2]|0)+12>>2];i=b;return}function hc(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function ic(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;k=f+16|0;j=f+8|0;g=f;h=f+12|0;c[k>>2]=a;c[j>>2]=b;b=g;c[b>>2]=d;c[b+4>>2]=e;c[496>>2]=c[k>>2];c[500>>2]=c[j>>2];d=g;b=c[d+4>>2]|0;a=488|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;c[h>>2]=Zg(0)|0;a=g;b=c[a+4>>2]|0;if(!((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>0)){k=0;k=k&1;c[516>>2]=k;i=f;return 0}j=g;b=c[j+4>>2]|0;k=c[h>>2]|0;a=((k|0)<0)<<31>>31;k=(b|0)<(a|0)|((b|0)==(a|0)?(c[j>>2]|0)>>>0<=k>>>0:0);k=k&1;c[516>>2]=k;i=f;return 0}function jc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+48|0;e=d+24|0;g=d;f=d+8|0;h=d+16|0;j=d+32|0;k=g;c[k>>2]=a;c[k+4>>2]=b;c[j>>2]=ec()|0;if((c[j>>2]|0)!=0){j=e;c[j>>2]=-1;c[j+4>>2]=-1;j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}a=488|0;j=c[a+4>>2]|0;k=f;c[k>>2]=c[a>>2];c[k+4>>2]=j;if((c[g+4>>2]|0)<0){a=f;k=c[a+4>>2]|0;j=e;c[j>>2]=c[a>>2];c[j+4>>2]=k;j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}k=g;j=c[k+4>>2]|0;if((j|0)>0|(j|0)==0&(c[k>>2]|0)>>>0>0){k=g;ic(2,0,c[k>>2]|0,c[k+4>>2]|0)|0}else{ic(0,0,0,0)|0}k=lc()|0;j=g;j=$K(k|0,D|0,c[j>>2]|0,c[j+4>>2]|0)|0;k=h;c[k>>2]=j;c[k+4>>2]=D;k=h;j=c[k+4>>2]|0;if((j|0)>0|(j|0)==0&(c[k>>2]|0)>>>0>0){hc(c[h>>2]&2147483647)|0}a=f;k=c[a+4>>2]|0;j=e;c[j>>2]=c[a>>2];c[j+4>>2]=k;j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}function kc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f+8|0;c[f+12>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;c[g>>2]=e;hc(c[g>>2]|0)|0;i=f;return}function lc(){var a=0,b=0,d=0,e=0;b=i;i=i+16|0;e=b+12|0;a=b;Wb(0,e,b+8|0,0)|0;e=c[e>>2]|0;d=a;c[d>>2]=e;c[d+4>>2]=((e|0)<0)<<31>>31;D=c[a+4>>2]|0;i=b;return c[a>>2]|0}function mc(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;if((ec()|0)!=0){c[b>>2]=0}else{c[b>>2]=nc(c[e>>2]|0)|0}i=d;return c[b>>2]|0}function nc(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;do{if((c[e>>2]|0)<=0|(c[e>>2]|0)>=2147483392){c[d>>2]=0}else{if((c[11284]|0)!=0){Yg(c[e>>2]|0,d)|0;break}else{c[d>>2]=ub[c[45172>>2]&63](c[e>>2]|0)|0;break}}}while(0);i=b;return c[d>>2]|0}function oc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}if((c[11284]|0)!=0){pc(0,0-(_b(c[d>>2]|0)|0)|0);pc(9,-1);rb[c[45176>>2]&31](c[d>>2]|0);i=b;return}else{rb[c[45176>>2]&31](c[d>>2]|0);i=b;return}}function pc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;a=392+(c[e>>2]<<2)|0;c[a>>2]=(c[a>>2]|0)+(c[f>>2]|0);if((c[392+(c[e>>2]<<2)>>2]|0)<=(c[432+(c[e>>2]<<2)>>2]|0)){i=d;return}c[432+(c[e>>2]<<2)>>2]=c[392+(c[e>>2]<<2)>>2];i=d;return}function qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;c[g>>2]=a;c[f>>2]=b;if((ec()|0)!=0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}else{c[e>>2]=rc(c[g>>2]|0,c[f>>2]|0)|0;a=c[e>>2]|0;i=d;return a|0}return 0}function rc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;e=h+24|0;f=h;j=h+4|0;k=h+8|0;d=h+12|0;l=h+16|0;g=h+20|0;c[f>>2]=a;c[j>>2]=b;b=c[j>>2]|0;if((c[f>>2]|0)==0){c[e>>2]=nc(b)|0;a=c[e>>2]|0;i=h;return a|0}if((b|0)<=0){oc(c[f>>2]|0);c[e>>2]=0;a=c[e>>2]|0;i=h;return a|0}if((c[j>>2]|0)>=2147483392){c[e>>2]=0;a=c[e>>2]|0;i=h;return a|0}c[k>>2]=_b(c[f>>2]|0)|0;c[d>>2]=ub[c[45188>>2]&63](c[j>>2]|0)|0;do{if((c[k>>2]|0)==(c[d>>2]|0)){c[g>>2]=c[f>>2]}else{if((c[11284]|0)==0){c[g>>2]=zb[c[45180>>2]&127](c[f>>2]|0,c[d>>2]|0)|0;break}Xg(5,c[j>>2]|0);c[l>>2]=(c[d>>2]|0)-(c[k>>2]|0);b=Zg(0)|0;n=((b|0)<0)<<31>>31;m=488|0;a=c[l>>2]|0;a=$K(c[m>>2]|0,c[m+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;m=D;if((n|0)>(m|0)|(n|0)==(m|0)&b>>>0>=a>>>0){_g(c[l>>2]|0)}c[g>>2]=zb[c[45180>>2]&127](c[f>>2]|0,c[d>>2]|0)|0;if((c[g>>2]|0)==0&(c[496>>2]|0)!=0){_g(c[j>>2]|0);c[g>>2]=zb[c[45180>>2]&127](c[f>>2]|0,c[d>>2]|0)|0}if((c[g>>2]|0)!=0){c[d>>2]=_b(c[g>>2]|0)|0;pc(0,(c[d>>2]|0)-(c[k>>2]|0)|0)}}}while(0);c[e>>2]=c[g>>2];n=c[e>>2]|0;i=h;return n|0}function sc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+128|0;f=e+40|0;k=e;j=e+4|0;g=e+8|0;h=e+12|0;c[k>>2]=b;c[j>>2]=d;if((ec()|0)!=0){c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}else{tc(h,e+44|0,70,1e9);a[h+24>>0]=2;uc(h,0,c[k>>2]|0,c[j>>2]|0);c[g>>2]=vc(h)|0;c[f>>2]=c[g>>2];b=c[f>>2]|0;i=e;return b|0}return 0}function tc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;h=g+12|0;l=g;k=g+4|0;j=g+8|0;c[h>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;b=c[l>>2]|0;c[(c[h>>2]|0)+4>>2]=b;c[(c[h>>2]|0)+8>>2]=b;c[c[h>>2]>>2]=0;c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+16>>2]=c[k>>2];c[(c[h>>2]|0)+20>>2]=c[j>>2];a[(c[h>>2]|0)+24>>0]=1;a[(c[h>>2]|0)+25>>0]=0;i=g;return}function uc(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0.0;m=i;i=i+272|0;Y=m+156|0;ra=m+172|0;q=m+160|0;z=m+168|0;p=m+164|0;J=m+152|0;A=m+148|0;K=m+144|0;G=m+140|0;o=m+136|0;r=m+177|0;w=m+178|0;s=m+180|0;t=m+181|0;v=m+183|0;u=m+185|0;B=m+186|0;C=m+187|0;n=m+258|0;F=m+261|0;x=m+262|0;ia=m+263|0;R=m+264|0;ma=m+8|0;Q=m+16|0;E=m+68|0;X=m+72|0;ja=m+76|0;H=m+80|0;T=m+64|0;W=m+60|0;j=m+48|0;S=m+24|0;Z=m+260|0;V=m+259|0;y=m+44|0;I=m+188|0;qa=m;pa=m+56|0;oa=m+52|0;na=m+184|0;ka=m+40|0;la=m+182|0;U=m+32|0;$=m+84|0;_=m+88|0;ea=m+92|0;ha=m+96|0;ca=m+100|0;da=m+104|0;ba=m+108|0;ga=m+112|0;fa=m+179|0;L=m+176|0;aa=m+116|0;P=m+120|0;M=m+124|0;N=m+128|0;O=m+132|0;c[Y>>2]=b;c[ra>>2]=e;c[q>>2]=f;c[z>>2]=g;a[F>>0]=0;c[y>>2]=0;c[J>>2]=0;if((c[ra>>2]|0)!=0){g=c[ra>>2]&2;a[x>>0]=g;if((g&255|0)!=0){b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[y>>2]=g}a[ia>>0]=c[ra>>2]&1}else{a[ia>>0]=0;a[x>>0]=0}a:while(1){g=a[c[q>>2]>>0]|0;c[p>>2]=g;if((g|0)==0){l=283;break}if((c[p>>2]|0)!=37){c[J>>2]=c[q>>2];do{g=(c[q>>2]|0)+1|0;c[q>>2]=g;g=a[g>>0]|0;c[p>>2]=g;if((g|0)==37){break}}while((c[p>>2]|0)!=0);Jt(c[Y>>2]|0,c[J>>2]|0,(c[q>>2]|0)-(c[J>>2]|0)|0);if((c[p>>2]|0)==0){l=283;break}}g=(c[q>>2]|0)+1|0;c[q>>2]=g;g=a[g>>0]|0;c[p>>2]=g;if((g|0)==0){l=13;break}a[u>>0]=0;a[v>>0]=0;a[t>>0]=0;a[s>>0]=0;a[w>>0]=0;a[r>>0]=0;a[n>>0]=0;do{switch(c[p>>2]|0){case 45:{a[r>>0]=1;break};case 32:{a[s>>0]=1;break};case 35:{a[t>>0]=1;break};case 48:{a[u>>0]=1;break};case 33:{a[v>>0]=1;break};case 43:{a[w>>0]=1;break};default:{a[n>>0]=1}}if((a[n>>0]|0)!=0){break}g=(c[q>>2]|0)+1|0;c[q>>2]=g;g=a[g>>0]|0;c[p>>2]=g}while((g|0)!=0);c[o>>2]=0;b:do{if((c[p>>2]|0)==42){if((a[x>>0]|0)!=0){g=JK(c[y>>2]|0)|0;c[o>>2]=g}else{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[o>>2]=g}if((c[o>>2]|0)<0){a[r>>0]=1;c[o>>2]=0-(c[o>>2]|0)}g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0}else{while(1){if(!((c[p>>2]|0)>=48&(c[p>>2]|0)<=57)){break b}c[o>>2]=((c[o>>2]|0)*10|0)+(c[p>>2]|0)-48;g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0}}}while(0);c:do{if((c[p>>2]|0)==46){c[A>>2]=0;g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0;if((c[p>>2]|0)!=42){while(1){if(!((c[p>>2]|0)>=48&(c[p>>2]|0)<=57)){break c}c[A>>2]=((c[A>>2]|0)*10|0)+(c[p>>2]|0)-48;g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0}}if((a[x>>0]|0)!=0){g=JK(c[y>>2]|0)|0;c[A>>2]=g}else{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[A>>2]=g}if((c[A>>2]|0)<0){c[A>>2]=0-(c[A>>2]|0)}g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0}else{c[A>>2]=-1}}while(0);do{if((c[p>>2]|0)==108){a[B>>0]=1;g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0;if((c[p>>2]|0)==108){a[C>>0]=1;g=(c[q>>2]|0)+1|0;c[q>>2]=g;c[p>>2]=a[g>>0]|0;break}else{a[C>>0]=0;break}}else{a[C>>0]=0;a[B>>0]=0}}while(0);c[E>>2]=44888;a[F>>0]=0;c[G>>2]=0;while(1){if((c[G>>2]|0)>=23){break}ra=c[G>>2]|0;if((c[p>>2]|0)==(a[44888+((c[G>>2]|0)*6|0)>>0]|0)){l=53;break}c[G>>2]=ra+1}if((l|0)==53){l=0;c[E>>2]=44888+(ra*6|0);if((d[ia>>0]|0)==0){if((a[(c[E>>2]|0)+2>>0]&2|0)!=0){l=283;break}}a[F>>0]=a[(c[E>>2]|0)+3>>0]|0}c[H>>2]=0;d:do{switch(d[F>>0]|0){case 14:{a[C>>0]=0;a[B>>0]=1;l=59;break};case 1:case 16:{l=59;break};case 4:case 3:case 2:{if((a[x>>0]|0)!=0){h[Q>>3]=+KK(c[y>>2]|0)}else{g=c[z>>2]|0;b=c[g>>2]|0;c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];sa=+h[k>>3];c[g>>2]=b+8;h[Q>>3]=sa}if((c[A>>2]|0)<0){c[A>>2]=6}do{if(+h[Q>>3]<0.0){h[Q>>3]=-+h[Q>>3];a[R>>0]=45}else{if((a[w>>0]|0)!=0){a[R>>0]=43;break}if((a[s>>0]|0)!=0){a[R>>0]=32;break}else{a[R>>0]=0;break}}}while(0);if((d[F>>0]|0)==4){if((c[A>>2]|0)>0){c[A>>2]=(c[A>>2]|0)+ -1}}c[G>>2]=c[A>>2];h[S>>3]=.5;while(1){if((c[G>>2]|0)<=0){break}c[G>>2]=(c[G>>2]|0)+ -1;h[S>>3]=+h[S>>3]*.1}if((d[F>>0]|0)==2){h[Q>>3]=+h[Q>>3]+ +h[S>>3]}c[T>>2]=0;if((CD(+h[Q>>3])|0)!=0){c[J>>2]=45096;c[K>>2]=3;break d}if(+h[Q>>3]>0.0){h[U>>3]=1.0;while(1){if(!(+h[Q>>3]>=+h[U>>3]*1.0e+100)){break}if((c[T>>2]|0)>350){break}h[U>>3]=+h[U>>3]*1.0e+100;c[T>>2]=(c[T>>2]|0)+100}while(1){if(!(+h[Q>>3]>=+h[U>>3]*1.0e+64)){break}if((c[T>>2]|0)>350){break}h[U>>3]=+h[U>>3]*1.0e+64;c[T>>2]=(c[T>>2]|0)+64}while(1){if(!(+h[Q>>3]>=+h[U>>3]*1.0e8)){break}if((c[T>>2]|0)>350){break}h[U>>3]=+h[U>>3]*1.0e8;c[T>>2]=(c[T>>2]|0)+8}while(1){if(+h[Q>>3]>=+h[U>>3]*10.0){ra=(c[T>>2]|0)<=350}else{ra=0}sa=+h[U>>3];if(!ra){break}h[U>>3]=sa*10.0;c[T>>2]=(c[T>>2]|0)+1}h[Q>>3]=+h[Q>>3]/sa;while(1){if(!(+h[Q>>3]<1.0e-8)){break}h[Q>>3]=+h[Q>>3]*1.0e8;c[T>>2]=(c[T>>2]|0)-8}while(1){if(!(+h[Q>>3]<1.0)){break}h[Q>>3]=+h[Q>>3]*10.0;c[T>>2]=(c[T>>2]|0)+ -1}if((c[T>>2]|0)>350){do{if((a[R>>0]|0)==45){c[J>>2]=45104}else{if((a[R>>0]|0)==43){c[J>>2]=45112;break}else{c[J>>2]=45120;break}}}while(0);c[K>>2]=Ub(c[J>>2]|0)|0;break d}}c[J>>2]=I;if((d[F>>0]|0)!=2){h[Q>>3]=+h[Q>>3]+ +h[S>>3];if(+h[Q>>3]>=10.0){h[Q>>3]=+h[Q>>3]*.1;c[T>>2]=(c[T>>2]|0)+1}}e:do{if((d[F>>0]|0)==4){a[V>>0]=((a[t>>0]|0)!=0^1)&1;do{if(!((c[T>>2]|0)<-4)){if((c[T>>2]|0)>(c[A>>2]|0)){break}c[A>>2]=(c[A>>2]|0)-(c[T>>2]|0);a[F>>0]=2;break e}}while(0);a[F>>0]=3}else{a[V>>0]=a[v>>0]|0}}while(0);if((d[F>>0]|0)==3){c[W>>2]=0}else{c[W>>2]=c[T>>2]}if((((c[W>>2]|0)>0?c[W>>2]|0:0)+(c[A>>2]|0)+(c[o>>2]|0)|0)>55){g=nc(((c[W>>2]|0)>0?c[W>>2]|0:0)+(c[A>>2]|0)+(c[o>>2]|0)+15|0)|0;c[H>>2]=g;c[J>>2]=g;if((c[J>>2]|0)==0){l=171;break a}}c[X>>2]=c[J>>2];c[j>>2]=16+((d[v>>0]|0)*10|0);a[Z>>0]=((c[A>>2]|0)>0?1:0)|d[t>>0]|d[v>>0];if((a[R>>0]|0)!=0){b=a[R>>0]|0;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=b}f:do{if((c[W>>2]|0)<0){g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=48}else{while(1){if((c[W>>2]|0)<0){break f}b=LK(Q,j)|0;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=b;c[W>>2]=(c[W>>2]|0)+ -1}}}while(0);if((a[Z>>0]|0)!=0){g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=46}c[W>>2]=(c[W>>2]|0)+1;while(1){if((c[W>>2]|0)>=0){break}g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=48;c[A>>2]=(c[A>>2]|0)+ -1;c[W>>2]=(c[W>>2]|0)+1}while(1){g=c[A>>2]|0;c[A>>2]=g+ -1;if((g|0)<=0){break}b=LK(Q,j)|0;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=b}do{if((d[V>>0]|0)!=0){if((d[Z>>0]|0)==0){break}while(1){ra=(c[J>>2]|0)+ -1|0;if((a[(c[J>>2]|0)+ -1>>0]|0)!=48){break}c[J>>2]=ra;a[ra>>0]=0}if((a[ra>>0]|0)!=46){break}ra=c[J>>2]|0;if((a[v>>0]|0)!=0){c[J>>2]=ra+1;a[ra>>0]=48;break}else{g=ra+ -1|0;c[J>>2]=g;a[g>>0]=0;break}}}while(0);if((d[F>>0]|0)==3){ra=a[45048+(d[(c[E>>2]|0)+4>>0]|0)>>0]|0;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=ra;g=(c[T>>2]|0)<0;ra=c[J>>2]|0;c[J>>2]=ra+1;if(g){a[ra>>0]=45;c[T>>2]=0-(c[T>>2]|0)}else{a[ra>>0]=43}if((c[T>>2]|0)>=100){b=((c[T>>2]|0)/100|0)+48&255;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=b;c[T>>2]=(c[T>>2]|0)%100|0}g=((c[T>>2]|0)/10|0)+48&255;b=c[J>>2]|0;c[J>>2]=b+1;a[b>>0]=g;b=((c[T>>2]|0)%10|0)+48&255;g=c[J>>2]|0;c[J>>2]=g+1;a[g>>0]=b}a[c[J>>2]>>0]=0;c[K>>2]=(c[J>>2]|0)-(c[X>>2]|0);c[J>>2]=c[X>>2];if((d[u>>0]|0)==0){break d}if((a[r>>0]|0)!=0){break d}if((c[K>>2]|0)>=(c[o>>2]|0)){break d}c[_>>2]=(c[o>>2]|0)-(c[K>>2]|0);c[$>>2]=c[o>>2];while(1){if((c[$>>2]|0)<(c[_>>2]|0)){break}a[(c[J>>2]|0)+(c[$>>2]|0)>>0]=a[(c[J>>2]|0)+((c[$>>2]|0)-(c[_>>2]|0))>>0]|0;c[$>>2]=(c[$>>2]|0)+ -1}c[$>>2]=(a[R>>0]|0)!=0&1;while(1){g=c[_>>2]|0;c[_>>2]=g+ -1;if((g|0)==0){break}g=c[$>>2]|0;c[$>>2]=g+1;a[(c[J>>2]|0)+g>>0]=48}c[K>>2]=c[o>>2];break};case 5:{if((a[x>>0]|0)==0){b=c[(c[Y>>2]|0)+12>>2]|0;e=c[z>>2]|0;f=c[e>>2]|0;g=c[f>>2]|0;c[e>>2]=f+4;c[g>>2]=b}c[o>>2]=0;c[K>>2]=0;break};case 7:case 6:{if((a[x>>0]|0)!=0){c[J>>2]=MK(c[y>>2]|0)|0}else{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[J>>2]=g}if((c[J>>2]|0)==0){c[J>>2]=1784}else{if((d[F>>0]|0)==7){if((a[x>>0]|0)==0){c[H>>2]=c[J>>2]}}}if((c[A>>2]|0)<0){c[K>>2]=Ub(c[J>>2]|0)|0;break d}c[K>>2]=0;while(1){if((c[K>>2]|0)>=(c[A>>2]|0)){break d}if((a[(c[J>>2]|0)+(c[K>>2]|0)>>0]|0)==0){break d}c[K>>2]=(c[K>>2]|0)+1}};case 8:{a[I>>0]=37;c[J>>2]=I;c[K>>2]=1;break};case 9:{if((a[x>>0]|0)!=0){c[J>>2]=MK(c[y>>2]|0)|0;if((c[J>>2]|0)!=0){ra=a[c[J>>2]>>0]|0}else{ra=0}c[p>>2]=ra}else{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[p>>2]=g}a[I>>0]=c[p>>2];if((c[A>>2]|0)>=0){c[G>>2]=1;while(1){if((c[G>>2]|0)>=(c[A>>2]|0)){break}a[I+(c[G>>2]|0)>>0]=c[p>>2];c[G>>2]=(c[G>>2]|0)+1}c[K>>2]=c[A>>2]}else{c[K>>2]=1}c[J>>2]=I;break};case 15:case 11:case 10:{a[L>>0]=(d[F>>0]|0)==15?34:39;if((a[x>>0]|0)!=0){c[aa>>2]=MK(c[y>>2]|0)|0}else{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[aa>>2]=g}c[ba>>2]=(c[aa>>2]|0)==0&1;if((c[ba>>2]|0)!=0){c[aa>>2]=(d[F>>0]|0)==11?16376:45128}c[ca>>2]=c[A>>2];c[da>>2]=0;c[ea>>2]=0;while(1){if((c[ca>>2]|0)==0){break}g=a[(c[aa>>2]|0)+(c[ea>>2]|0)>>0]|0;a[fa>>0]=g;if((g<<24>>24|0)==0){break}if((a[fa>>0]|0)==(a[L>>0]|0)){c[da>>2]=(c[da>>2]|0)+1}c[ea>>2]=(c[ea>>2]|0)+1;c[ca>>2]=(c[ca>>2]|0)+ -1}if((c[ba>>2]|0)!=0){ra=0}else{ra=(d[F>>0]|0)==11}c[ga>>2]=ra&1;c[da>>2]=(c[da>>2]|0)+((c[ea>>2]|0)+1+(c[ga>>2]<<1));if((c[da>>2]|0)>70){g=nc(c[da>>2]|0)|0;c[H>>2]=g;c[J>>2]=g;if((c[J>>2]|0)==0){l=255;break a}}else{c[J>>2]=I}c[ha>>2]=0;if((c[ga>>2]|0)!=0){b=a[L>>0]|0;g=c[ha>>2]|0;c[ha>>2]=g+1;a[(c[J>>2]|0)+g>>0]=b}c[ca>>2]=c[ea>>2];c[ea>>2]=0;while(1){if((c[ea>>2]|0)>=(c[ca>>2]|0)){break}b=a[(c[aa>>2]|0)+(c[ea>>2]|0)>>0]|0;a[fa>>0]=b;g=c[ha>>2]|0;c[ha>>2]=g+1;a[(c[J>>2]|0)+g>>0]=b;if((a[fa>>0]|0)==(a[L>>0]|0)){b=a[fa>>0]|0;g=c[ha>>2]|0;c[ha>>2]=g+1;a[(c[J>>2]|0)+g>>0]=b}c[ea>>2]=(c[ea>>2]|0)+1}if((c[ga>>2]|0)!=0){b=a[L>>0]|0;g=c[ha>>2]|0;c[ha>>2]=g+1;a[(c[J>>2]|0)+g>>0]=b}a[(c[J>>2]|0)+(c[ha>>2]|0)>>0]=0;c[K>>2]=c[ha>>2];break};case 13:{e=c[z>>2]|0;g=c[e>>2]|0;b=c[g>>2]|0;c[e>>2]=g+4;c[M>>2]=b;b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[N>>2]=g;c[O>>2]=(c[M>>2]|0)+8+((c[N>>2]|0)*72|0);if((c[(c[O>>2]|0)+4>>2]|0)!=0){Zy(c[Y>>2]|0,c[(c[O>>2]|0)+4>>2]|0);Jt(c[Y>>2]|0,25632,1)}Zy(c[Y>>2]|0,c[(c[O>>2]|0)+8>>2]|0);c[o>>2]=0;c[K>>2]=0;break};case 12:{b=c[z>>2]|0;e=c[b>>2]|0;g=c[e>>2]|0;c[b>>2]=e+4;c[P>>2]=g;if((c[P>>2]|0)!=0){if((c[(c[P>>2]|0)+4>>2]|0)!=0){Jt(c[Y>>2]|0,c[c[P>>2]>>2]|0,c[(c[P>>2]|0)+4>>2]|0)}}c[o>>2]=0;c[K>>2]=0;break};default:{l=283;break a}}}while(0);if((l|0)==59){l=0;ra=(a[x>>0]|0)!=0;do{if((a[(c[E>>2]|0)+2>>0]&1|0)!=0){do{if(ra){b=JK(c[y>>2]|0)|0;g=qa;c[g>>2]=b;c[g+4>>2]=D}else{ra=c[z>>2]|0;if((a[C>>0]|0)!=0){g=c[ra>>2]|0;b=g;e=c[b>>2]|0;b=c[b+4>>2]|0;c[ra>>2]=g+8;g=qa;c[g>>2]=e;c[g+4>>2]=b;break}else{g=c[ra>>2]|0;b=c[g>>2]|0;c[ra>>2]=g+4;g=qa;c[g>>2]=b;c[g+4>>2]=((b|0)<0)<<31>>31;break}}}while(0);ra=qa;f=c[ra>>2]|0;ra=c[ra+4>>2]|0;if((c[qa+4>>2]|0)<0){if((f|0)==0&(ra|0)==-2147483648){g=ma;c[g>>2]=0;c[g+4>>2]=-2147483648}else{b=qa;b=$K(0,0,c[b>>2]|0,c[b+4>>2]|0)|0;g=ma;c[g>>2]=b;c[g+4>>2]=D}a[R>>0]=45;break}g=ma;c[g>>2]=f;c[g+4>>2]=ra;if((a[w>>0]|0)!=0){a[R>>0]=43;break}if((a[s>>0]|0)!=0){a[R>>0]=32;break}else{a[R>>0]=0;break}}else{do{if(ra){b=JK(c[y>>2]|0)|0;g=ma;c[g>>2]=b;c[g+4>>2]=D}else{ra=c[z>>2]|0;if((a[C>>0]|0)!=0){g=c[ra>>2]|0;b=g;e=c[b>>2]|0;b=c[b+4>>2]|0;c[ra>>2]=g+8;g=ma;c[g>>2]=e;c[g+4>>2]=b;break}else{g=c[ra>>2]|0;b=c[g>>2]|0;c[ra>>2]=g+4;g=ma;c[g>>2]=b;c[g+4>>2]=0;break}}}while(0);a[R>>0]=0}}while(0);g=ma;if((c[g>>2]|0)==0&(c[g+4>>2]|0)==0){a[t>>0]=0}if((d[u>>0]|0)!=0){if((c[A>>2]|0)<((c[o>>2]|0)-((a[R>>0]|0)!=0&1)|0)){c[A>>2]=(c[o>>2]|0)-((a[R>>0]|0)!=0&1)}}if((c[A>>2]|0)<60){c[ja>>2]=70;c[X>>2]=I}else{c[ja>>2]=(c[A>>2]|0)+10;g=nc(c[ja>>2]|0)|0;c[H>>2]=g;c[X>>2]=g;if((c[X>>2]|0)==0){l=89;break}}c[J>>2]=(c[X>>2]|0)+((c[ja>>2]|0)-1);if((d[F>>0]|0)==16){g=ma;g=pL(c[g>>2]|0,c[g+4>>2]|0,10,0)|0;c[pa>>2]=g;if((c[pa>>2]|0)>=4){l=93}else{g=ma;g=oL(c[g>>2]|0,c[g+4>>2]|0,10,0)|0;g=pL(g|0,D|0,10,0)|0;if((g|0)==1&(D|0)==0){l=93}}if((l|0)==93){l=0;c[pa>>2]=0}g=a[(c[pa>>2]<<1)+45033>>0]|0;b=(c[J>>2]|0)+ -1|0;c[J>>2]=b;a[b>>0]=g;b=a[45032+(c[pa>>2]<<1)>>0]|0;g=(c[J>>2]|0)+ -1|0;c[J>>2]=g;a[g>>0]=b}c[oa>>2]=45048+(d[(c[E>>2]|0)+4>>0]|0);a[na>>0]=a[(c[E>>2]|0)+1>>0]|0;do{g=ma;g=pL(c[g>>2]|0,c[g+4>>2]|0,d[na>>0]|0,0)|0;g=a[(c[oa>>2]|0)+g>>0]|0;b=(c[J>>2]|0)+ -1|0;c[J>>2]=b;a[b>>0]=g;b=ma;b=oL(c[b>>2]|0,c[b+4>>2]|0,d[na>>0]|0,0)|0;g=ma;c[g>>2]=b;c[g+4>>2]=D;g=ma;b=c[g+4>>2]|0}while(b>>>0>0|(b|0)==0&(c[g>>2]|0)>>>0>0);c[K>>2]=(c[X>>2]|0)+((c[ja>>2]|0)-1)-(c[J>>2]|0);c[G>>2]=(c[A>>2]|0)-(c[K>>2]|0);while(1){if((c[G>>2]|0)<=0){break}g=(c[J>>2]|0)+ -1|0;c[J>>2]=g;a[g>>0]=48;c[G>>2]=(c[G>>2]|0)+ -1}if((a[R>>0]|0)!=0){b=a[R>>0]|0;g=(c[J>>2]|0)+ -1|0;c[J>>2]=g;a[g>>0]=b}g:do{if((d[t>>0]|0)!=0){if((d[(c[E>>2]|0)+5>>0]|0)!=0){c[ka>>2]=45088+(d[(c[E>>2]|0)+5>>0]|0);while(1){g=a[c[ka>>2]>>0]|0;a[la>>0]=g;if((g<<24>>24|0)==0){break g}b=a[la>>0]|0;g=(c[J>>2]|0)+ -1|0;c[J>>2]=g;a[g>>0]=b;c[ka>>2]=(c[ka>>2]|0)+1}}}}while(0);c[K>>2]=(c[X>>2]|0)+((c[ja>>2]|0)-1)-(c[J>>2]|0)}c[o>>2]=(c[o>>2]|0)-(c[K>>2]|0);if((c[o>>2]|0)>0){if((a[r>>0]|0)==0){NK(c[Y>>2]|0,c[o>>2]|0)}}Jt(c[Y>>2]|0,c[J>>2]|0,c[K>>2]|0);if((c[o>>2]|0)>0){if((d[r>>0]|0)!=0){NK(c[Y>>2]|0,c[o>>2]|0)}}if((c[H>>2]|0)!=0){oc(c[H>>2]|0)}c[q>>2]=(c[q>>2]|0)+1}if((l|0)==13){Jt(c[Y>>2]|0,44880,1);i=m;return}else if((l|0)==89){Mt(c[Y>>2]|0,1);i=m;return}else if((l|0)==171){Mt(c[Y>>2]|0,1);i=m;return}else if((l|0)==255){Mt(c[Y>>2]|0,1);i=m;return}else if((l|0)==283){i=m;return}}function vc(b){b=b|0;var e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=b;do{if((c[(c[e>>2]|0)+8>>2]|0)!=0){a[(c[(c[e>>2]|0)+8>>2]|0)+(c[(c[e>>2]|0)+12>>2]|0)>>0]=0;if((d[(c[e>>2]|0)+24>>0]|0|0)!=0){if((c[(c[e>>2]|0)+8>>2]|0)==(c[(c[e>>2]|0)+4>>2]|0)){b=c[e>>2]|0;if((d[(c[e>>2]|0)+24>>0]|0|0)==1){b=$e(c[b>>2]|0,(c[(c[e>>2]|0)+12>>2]|0)+1|0)|0;c[(c[e>>2]|0)+8>>2]=b}else{b=mc((c[b+12>>2]|0)+1|0)|0;c[(c[e>>2]|0)+8>>2]=b}b=c[e>>2]|0;if((c[(c[e>>2]|0)+8>>2]|0)!=0){fL(c[b+8>>2]|0,c[(c[e>>2]|0)+4>>2]|0,(c[(c[e>>2]|0)+12>>2]|0)+1|0)|0;break}else{Mt(b,1);break}}}}}while(0);i=f;return c[(c[e>>2]|0)+8>>2]|0}function wc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;e=d+28|0;h=d;g=d+8|0;f=d+24|0;c[h>>2]=a;if((ec()|0)!=0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}else{c[g>>2]=b;c[f>>2]=sc(c[h>>2]|0,g)|0;c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}return 0}function xc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+48|0;h=l+44|0;m=l;n=l+4|0;g=l+8|0;k=l+12|0;j=l+16|0;c[m>>2]=b;c[n>>2]=d;c[g>>2]=e;c[k>>2]=f;f=c[n>>2]|0;if((c[m>>2]|0)<=0){c[h>>2]=f;n=c[h>>2]|0;i=l;return n|0}else{tc(j,f,c[m>>2]|0,0);a[j+24>>0]=0;uc(j,0,c[g>>2]|0,c[k>>2]|0);c[h>>2]=vc(j)|0;n=c[h>>2]|0;i=l;return n|0}return 0}function yc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+48|0;l=g+32|0;k=g;j=g+4|0;f=g+8|0;h=g+16|0;c[l>>2]=a;c[k>>2]=b;c[j>>2]=d;c[h>>2]=e;c[f>>2]=xc(c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,h)|0;i=g;return c[f>>2]|0}function zc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+32|0;g=e+24|0;h=e;f=e+8|0;c[g>>2]=a;c[h>>2]=b;if((c[45388>>2]|0)==0){i=e;return}c[f>>2]=d;Ac(c[g>>2]|0,c[h>>2]|0,f);i=e;return}function Ac(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+256|0;j=f+36|0;k=f;g=f+4|0;h=f+8|0;c[j>>2]=b;c[k>>2]=d;c[g>>2]=e;tc(h,f+40|0,210,0);a[h+24>>0]=0;uc(h,0,c[k>>2]|0,c[g>>2]|0);g=c[45388>>2]|0;e=c[45392>>2]|0;d=c[j>>2]|0;b=vc(h)|0;vb[g&63](e,d,b);i=f;return}function Bc(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+288|0;j=f+12|0;m=f;g=f+272|0;h=f+8|0;k=f+4|0;l=f+16|0;c[j>>2]=b;c[m>>2]=e;c[h>>2]=c[m>>2];if((c[j>>2]|0)<=0){a[520]=0;i=f;return}if((a[520]|0)==0){a[522>>0]=0;a[521>>0]=0;Cc(dc(0)|0,256,l)|0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=256){break}a[(c[k>>2]|0)+523>>0]=c[k>>2];c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=256){break}a[522>>0]=(d[522>>0]|0)+((d[(c[k>>2]|0)+523>>0]|0)+(a[l+(c[k>>2]|0)>>0]|0));a[g>>0]=a[(d[522>>0]|0)+523>>0]|0;a[(d[522>>0]|0)+523>>0]=a[(c[k>>2]|0)+523>>0]|0;a[(c[k>>2]|0)+523>>0]=a[g>>0]|0;c[k>>2]=(c[k>>2]|0)+1}a[520]=1}do{a[521>>0]=(a[521>>0]|0)+1<<24>>24;a[g>>0]=a[(d[521>>0]|0)+523>>0]|0;a[522>>0]=(d[522>>0]|0)+(d[g>>0]|0);a[(d[521>>0]|0)+523>>0]=a[(d[522>>0]|0)+523>>0]|0;a[(d[522>>0]|0)+523>>0]=a[g>>0]|0;a[g>>0]=(d[g>>0]|0)+(d[(d[521>>0]|0)+523>>0]|0);b=a[(d[g>>0]|0)+523>>0]|0;m=c[h>>2]|0;c[h>>2]=m+1;a[m>>0]=b;m=(c[j>>2]|0)+ -1|0;c[j>>2]=m}while((m|0)!=0);i=f;return}function Cc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=pb[c[(c[h>>2]|0)+56>>2]&31](c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Dc(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;h=e;g=e+4|0;f=e+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=c[j>>2];c[f>>2]=c[h>>2];while(1){if((d[c[g>>2]>>0]|0|0)!=0){a=(d[784+(d[c[g>>2]>>0]|0)>>0]|0|0)==(d[784+(d[c[f>>2]>>0]|0)>>0]|0|0)}else{a=0}b=c[g>>2]|0;if(!a){break}c[g>>2]=b+1;c[f>>2]=(c[f>>2]|0)+1}i=e;return(d[784+(d[b>>0]|0)>>0]|0)-(d[784+(d[c[f>>2]>>0]|0)>>0]|0)|0}function Ec(){var a=0,b=0;a=i;i=i+16|0;b=a;c[b>>2]=0;while(1){if(!((c[b>>2]|0)>>>0<4)){break}fc(1040+((c[b>>2]|0)*88|0)|0,(c[b>>2]|0)==0&1)|0;c[b>>2]=(c[b>>2]|0)+1}i=a;return 0}function Fc(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;q=i;i=i+624|0;p=q+92|0;A=q+88|0;C=q+84|0;B=q+80|0;k=q+76|0;H=q+72|0;o=q+68|0;m=q+64|0;t=q+60|0;j=q+56|0;F=q+52|0;s=q+48|0;D=q+44|0;w=q+16|0;G=q;v=q+4|0;n=q+8|0;u=q+12|0;E=q+20|0;r=q+96|0;z=q+24|0;l=q+28|0;x=q+32|0;y=q+36|0;g=q+40|0;c[A>>2]=a;c[C>>2]=b;c[B>>2]=d;c[k>>2]=e;c[H>>2]=f;c[o>>2]=c[B>>2];c[m>>2]=-1;c[t>>2]=0;c[j>>2]=c[k>>2]&-256;c[s>>2]=0;c[D>>2]=0;c[w>>2]=c[k>>2]&16;c[G>>2]=c[k>>2]&8;c[v>>2]=c[k>>2]&4;c[n>>2]=c[k>>2]&1;c[u>>2]=c[k>>2]&2;if((c[v>>2]|0)!=0){if((c[j>>2]|0)==16384|(c[j>>2]|0)==2048){f=1}else{f=(c[j>>2]|0)==524288}}else{f=0}c[E>>2]=f&1;c[z>>2]=c[C>>2];a=c[11154]|0;if((a|0)!=(Na()|0)){c[11154]=Na()|0;Bc(0,0)}e=(c[o>>2]|0)+0|0;f=e+44|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));f=c[z>>2]|0;do{if((c[j>>2]|0)==256){c[l>>2]=uK(f,c[k>>2]|0)|0;if((c[l>>2]|0)!=0){c[m>>2]=c[c[l>>2]>>2]}else{c[l>>2]=mc(12)|0;if((c[l>>2]|0)==0){c[p>>2]=7;a=c[p>>2]|0;i=q;return a|0}}c[(c[o>>2]|0)+28>>2]=c[l>>2]}else{if((f|0)==0){c[s>>2]=hK(514,r)|0;if((c[s>>2]|0)==0){c[z>>2]=r;break}c[p>>2]=c[s>>2];a=c[p>>2]|0;i=q;return a|0}}}while(0);if((c[n>>2]|0)!=0){c[t>>2]=c[t>>2]}if((c[u>>2]|0)!=0){c[t>>2]=c[t>>2]|2}if((c[v>>2]|0)!=0){c[t>>2]=c[t>>2]|64}if((c[w>>2]|0)!=0){c[t>>2]=c[t>>2]|131200}c[t>>2]=c[t>>2];do{if((c[m>>2]|0)<0){c[s>>2]=vK(c[z>>2]|0,c[k>>2]|0,x,y,g)|0;if((c[s>>2]|0)!=0){c[p>>2]=c[s>>2];a=c[p>>2]|0;i=q;return a|0}c[m>>2]=aK(c[z>>2]|0,c[t>>2]|0,c[x>>2]|0)|0;if((c[m>>2]|0)<0){if((c[(ab()|0)>>2]|0)!=21){if((c[u>>2]|0)!=0){if((c[w>>2]|0)==0){c[k>>2]=c[k>>2]&-7;c[t>>2]=c[t>>2]&-67;c[k>>2]=c[k>>2]|1;c[t>>2]=c[t>>2];c[n>>2]=1;c[m>>2]=aK(c[z>>2]|0,c[t>>2]|0,c[x>>2]|0)|0}}}}if((c[m>>2]|0)<0){a=Bq(29678)|0;c[s>>2]=XJ(a,44032,c[z>>2]|0,29678)|0;break}if((c[k>>2]&526336|0)!=0){pb[c[43932>>2]&31](c[m>>2]|0,c[y>>2]|0,c[g>>2]|0)|0;h=36}else{h=36}}else{h=36}}while(0);if((h|0)==36){if((c[H>>2]|0)!=0){c[c[H>>2]>>2]=c[k>>2]}if((c[(c[o>>2]|0)+28>>2]|0)!=0){c[c[(c[o>>2]|0)+28>>2]>>2]=c[m>>2];c[(c[(c[o>>2]|0)+28>>2]|0)+4>>2]=c[k>>2]}if((c[G>>2]|0)!=0){ub[c[43884>>2]&63](c[z>>2]|0)|0}c[F>>2]=(c[j>>2]|0)!=256&1;if((c[G>>2]|0)!=0){c[D>>2]=c[D>>2]|32}if((c[n>>2]|0)!=0){c[D>>2]=c[D>>2]|2}if((c[F>>2]|0)!=0){c[D>>2]=c[D>>2]|128}if((c[E>>2]|0)!=0){c[D>>2]=c[D>>2]|8}if((c[k>>2]&64|0)!=0){c[D>>2]=c[D>>2]|64}c[s>>2]=wK(c[A>>2]|0,c[m>>2]|0,c[B>>2]|0,c[C>>2]|0,c[D>>2]|0)|0}if((c[s>>2]|0)!=0){oc(c[(c[o>>2]|0)+28>>2]|0)}c[p>>2]=c[s>>2];a=c[p>>2]|0;i=q;return a|0}function Gc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;f=g+20|0;h=g+4|0;k=g+8|0;e=g+12|0;j=g+16|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[e>>2]=0;if((ub[c[43884>>2]&63](c[h>>2]|0)|0)==-1){if((c[(ab()|0)>>2]|0)==2){c[e>>2]=5898}else{c[e>>2]=XJ(2570,44168,c[h>>2]|0,29806)|0}c[f>>2]=c[e>>2];a=c[f>>2]|0;i=g;return a|0}do{if((c[k>>2]&1|0)!=0){c[e>>2]=zb[c[43896>>2]&127](c[h>>2]|0,j)|0;if((c[e>>2]|0)!=0){if((c[e>>2]|0)!=14){break}c[e>>2]=0;break}if(($a(c[j>>2]|0)|0)!=0){c[e>>2]=XJ(1290,44648,c[h>>2]|0,29821)|0}WJ(0,c[j>>2]|0,29823)}}while(0);c[f>>2]=c[e>>2];a=c[f>>2]|0;i=g;return a|0}function Hc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+96|0;g=k;l=k+4|0;j=k+8|0;f=k+12|0;h=k+16|0;c[k+92>>2]=a;c[g>>2]=b;c[l>>2]=d;c[j>>2]=e;c[f>>2]=0;e=c[l>>2]|0;if((e|0)==1){c[f>>2]=6}else if((e|0)==2){c[f>>2]=4}else if((e|0)==0){c[f>>2]=0}a=(zb[c[43716>>2]&127](c[g>>2]|0,c[f>>2]|0)|0)==0&1;c[c[j>>2]>>2]=a;if((c[l>>2]|0)!=0){i=k;return 0}if((c[c[j>>2]>>2]|0)==0){i=k;return 0}if(0!=(zb[c[43740>>2]&127](c[g>>2]|0,h)|0)){i=k;return 0}if((c[h+36>>2]|0)!=0){i=k;return 0}c[c[j>>2]>>2]=0;i=k;return 0}function Ic(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h;l=h+24|0;k=h+8|0;m=h+12|0;g=h+16|0;n=h+20|0;c[h+4>>2]=b;c[k>>2]=d;c[m>>2]=e;c[g>>2]=f;a[(c[g>>2]|0)+((c[m>>2]|0)-1)>>0]=0;do{if((a[c[k>>2]>>0]|0)==47){d=c[m>>2]|0;b=c[g>>2]|0;c[j>>2]=c[k>>2];yc(d,b,1768,j)|0}else{if((zb[c[43728>>2]&127](c[g>>2]|0,(c[m>>2]|0)-1|0)|0)!=0){c[n>>2]=cL(c[g>>2]|0)|0;d=(c[m>>2]|0)-(c[n>>2]|0)|0;b=(c[g>>2]|0)+(c[n>>2]|0)|0;c[j>>2]=c[k>>2];yc(d,b,44640,j)|0;break}b=Bq(29908)|0;c[l>>2]=XJ(b,44040,c[k>>2]|0,29908)|0;b=c[l>>2]|0;i=h;return b|0}}while(0);c[l>>2]=0;b=c[l>>2]|0;i=h;return b|0}function Jc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f;h=f+4|0;k=f+8|0;l=f+12|0;j=f+16|0;c[f+20>>2]=b;c[g>>2]=d;c[h>>2]=e;aL(c[h>>2]|0,0,c[g>>2]|0)|0;c[11154]=Na()|0;c[k>>2]=aK(44624,0,0)|0;if((c[k>>2]|0)<0){hb(j|0)|0;b=c[h>>2]|0;a[b+0>>0]=a[j+0>>0]|0;a[b+1>>0]=a[j+1>>0]|0;a[b+2>>0]=a[j+2>>0]|0;a[b+3>>0]=a[j+3>>0]|0;b=(c[h>>2]|0)+4|0;a[b+0>>0]=a[44616>>0]|0;a[b+1>>0]=a[44617>>0]|0;a[b+2>>0]=a[44618>>0]|0;a[b+3>>0]=a[44619>>0]|0;c[g>>2]=8;b=c[g>>2]|0;i=f;return b|0}do{c[l>>2]=pb[c[43788>>2]&31](c[k>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;if((c[l>>2]|0)>=0){break}}while((c[(ab()|0)>>2]|0)==4);WJ(0,c[k>>2]|0,30013);b=c[g>>2]|0;i=f;return b|0}function Kc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;f=e;d=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[d>>2]=((c[f>>2]|0)+999999|0)/1e6|0;ta(c[d>>2]|0)|0;i=e;return(c[d>>2]|0)*1e6|0}function Lc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+32|0;f=e+8|0;g=e;d=e+12|0;c[e+16>>2]=a;c[f>>2]=b;a=g;c[a>>2]=0;c[a+4>>2]=0;c[d>>2]=Nc(0,g)|0;a=g;h[c[f>>2]>>3]=(+((c[a>>2]|0)>>>0)+4294967296.0*+(c[a+4>>2]|0))/864.0e5;i=e;return c[d>>2]|0}function Mc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;i=i+16|0;c[e+8>>2]=a;c[e>>2]=b;c[e+4>>2]=d;i=e;return 0}function Nc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;f=d;e=d+4|0;g=d+8|0;c[d+16>>2]=a;c[f>>2]=b;c[e>>2]=0;if((Wa(g|0,0)|0)==0){a=c[g>>2]|0;a=nL(1e3,0,a|0,((a|0)<0)<<31>>31|0)|0;a=dL(1045635584,49096,a|0,D|0)|0;g=(c[g+4>>2]|0)/1e3|0;g=dL(a|0,D|0,g|0,((g|0)<0)<<31>>31|0)|0;a=c[f>>2]|0;c[a>>2]=g;c[a+4>>2]=D;a=c[e>>2]|0;i=d;return a|0}else{c[e>>2]=1;a=c[e>>2]|0;i=d;return a|0}return 0}function Oc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;k=g;j=g+4|0;h=g+8|0;f=g+12|0;c[g+16>>2]=a;c[k>>2]=b;c[j>>2]=d;c[f>>2]=12;if((c[k>>2]|0)==0){c[f>>2]=0;c[h>>2]=0;while(1){if(!((c[h>>2]|0)>>>0<25)){break}if((c[43696+((c[h>>2]|0)*12|0)>>2]|0)!=0){c[43692+((c[h>>2]|0)*12|0)>>2]=c[43696+((c[h>>2]|0)*12|0)>>2]}c[h>>2]=(c[h>>2]|0)+1}a=c[f>>2]|0;i=g;return a|0}c[h>>2]=0;while(1){if(!((c[h>>2]|0)>>>0<25)){e=16;break}a=(YK(c[k>>2]|0,c[43688+((c[h>>2]|0)*12|0)>>2]|0)|0)==0;d=c[h>>2]|0;if(a){break}c[h>>2]=d+1}if((e|0)==16){a=c[f>>2]|0;i=g;return a|0}if((c[43696+(d*12|0)>>2]|0)==0){c[43696+((c[h>>2]|0)*12|0)>>2]=c[43692+((c[h>>2]|0)*12|0)>>2]}c[f>>2]=0;if((c[j>>2]|0)==0){c[j>>2]=c[43696+((c[h>>2]|0)*12|0)>>2]}c[43692+((c[h>>2]|0)*12|0)>>2]=c[j>>2];a=c[f>>2]|0;i=g;return a|0}function Pc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+12|0;f=e+4|0;g=e+8|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;while(1){if(!((c[g>>2]|0)>>>0<25)){f=6;break}a=(YK(c[f>>2]|0,c[43688+((c[g>>2]|0)*12|0)>>2]|0)|0)==0;b=c[g>>2]|0;if(a){f=4;break}c[g>>2]=b+1}if((f|0)==4){c[d>>2]=c[43692+(b*12|0)>>2];a=c[d>>2]|0;i=e;return a|0}else if((f|0)==6){c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}return 0}function Qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+12|0;g=e+4|0;f=e+8|0;c[e>>2]=a;c[g>>2]=b;c[f>>2]=-1;a:do{if((c[g>>2]|0)!=0){c[f>>2]=0;while(1){if((c[f>>2]|0)>=24){break a}if((YK(c[g>>2]|0,c[43688+((c[f>>2]|0)*12|0)>>2]|0)|0)==0){break a}c[f>>2]=(c[f>>2]|0)+1}}}while(0);c[f>>2]=(c[f>>2]|0)+1;while(1){if((c[f>>2]|0)>=25){f=11;break}b=c[f>>2]|0;if((c[43692+((c[f>>2]|0)*12|0)>>2]|0)!=0){f=9;break}c[f>>2]=b+1}if((f|0)==9){c[d>>2]=c[43688+(b*12|0)>>2];a=c[d>>2]|0;i=e;return a|0}else if((f|0)==11){c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}return 0}function Rc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+48|0;f=k+32|0;l=k;h=k+4|0;j=k+8|0;g=k+16|0;c[f>>2]=a;c[l>>2]=b;c[h>>2]=d;c[(c[f>>2]|0)+52>>2]=c[l>>2];do{if((c[h>>2]|0)!=0){if((c[(c[f>>2]|0)+224>>2]|0)==0){l=Pf(c[f>>2]|0)|0;c[(c[f>>2]|0)+224>>2]=l;if((l|0)==0){break}}c[g>>2]=e;c[j>>2]=iu(c[f>>2]|0,c[h>>2]|0,g)|0;Qf(c[(c[f>>2]|0)+224>>2]|0,-1,c[j>>2]|0,1,39);i=k;return}}while(0);if((c[(c[f>>2]|0)+224>>2]|0)==0){i=k;return}yJ(c[(c[f>>2]|0)+224>>2]|0);i=k;return}function Sc(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=nc(c[e>>2]|0)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}aL(c[d>>2]|0,0,c[e>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}function Tc(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=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,E=0,F=0,G=0;n=i;i=i+112|0;h=n+108|0;A=n+104|0;m=n+100|0;B=n+96|0;g=n+92|0;u=n+88|0;o=n+84|0;l=n+80|0;z=n+76|0;E=n+72|0;j=n+68|0;x=n+64|0;y=n+60|0;F=n+40|0;C=n+28|0;k=n+8|0;e=n+24|0;t=n+36|0;G=n+32|0;q=n+16|0;p=n;v=n+44|0;r=n+48|0;s=n+52|0;f=n+56|0;c[h>>2]=a;c[A>>2]=b;c[g>>2]=0;c[u>>2]=0;Uc(c[(c[h>>2]|0)+24>>2]|0);c[m>>2]=c[(c[h>>2]|0)+28>>2];if((Vc(c[m>>2]|0)|0)!=0){a=c[m>>2]|0;i=n;return a|0}c[o>>2]=Zb(c[(c[h>>2]|0)+24>>2]|0)|0;c[l>>2]=Zb(c[(c[h>>2]|0)+4>>2]|0)|0;c[E>>2]=-1;c[j>>2]=0;if((c[c[h>>2]>>2]|0)!=0){if((d[(c[(c[(c[h>>2]|0)+24>>2]|0)+4>>2]|0)+20>>0]|0|0)==2){c[m>>2]=5}else{w=5}}else{w=5}if((w|0)==5){c[m>>2]=0}if(0==(c[m>>2]|0)){if((c[(c[h>>2]|0)+12>>2]|0)==0){a=Wc(c[(c[h>>2]|0)+4>>2]|0,2)|0;c[m>>2]=a;if(0==(a|0)){c[(c[h>>2]|0)+12>>2]=1;Xc(c[(c[h>>2]|0)+4>>2]|0,1,(c[h>>2]|0)+8|0)}}}if((c[m>>2]|0)==0){if(0==(Yc(c[(c[h>>2]|0)+24>>2]|0)|0)){c[m>>2]=Wc(c[(c[h>>2]|0)+24>>2]|0,0)|0;c[j>>2]=1}}c[g>>2]=Zc(c[(c[h>>2]|0)+24>>2]|0)|0;c[u>>2]=Zc(c[(c[h>>2]|0)+4>>2]|0)|0;c[B>>2]=_c(Zb(c[(c[h>>2]|0)+4>>2]|0)|0)|0;if(0==(c[m>>2]|0)){if((c[B>>2]|0)==5){if((c[g>>2]|0)!=(c[u>>2]|0)){c[m>>2]=8}}}c[E>>2]=$c(c[(c[h>>2]|0)+24>>2]|0)|0;c[z>>2]=0;while(1){if((c[A>>2]|0)>=0){if((c[z>>2]|0)>=(c[A>>2]|0)){break}}if(!((c[(c[h>>2]|0)+16>>2]|0)>>>0<=(c[E>>2]|0)>>>0)){break}if(!((c[m>>2]|0)!=0^1)){break}c[x>>2]=c[(c[h>>2]|0)+16>>2];if((c[x>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[(c[(c[h>>2]|0)+24>>2]|0)+4>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){c[m>>2]=ad(c[o>>2]|0,c[x>>2]|0,y,2)|0;if((c[m>>2]|0)==0){b=c[h>>2]|0;a=c[x>>2]|0;c[m>>2]=bd(b,a,cd(c[y>>2]|0)|0,0)|0;dd(c[y>>2]|0)}}a=(c[h>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+1;c[z>>2]=(c[z>>2]|0)+1}do{if((c[m>>2]|0)==0){c[(c[h>>2]|0)+36>>2]=c[E>>2];c[(c[h>>2]|0)+32>>2]=(c[E>>2]|0)+1-(c[(c[h>>2]|0)+16>>2]|0);if((c[(c[h>>2]|0)+16>>2]|0)>>>0>(c[E>>2]|0)>>>0){c[m>>2]=101;break}if((c[(c[h>>2]|0)+40>>2]|0)==0){ed(c[h>>2]|0)}}}while(0);if((c[m>>2]|0)==101){if((c[E>>2]|0)==0){c[m>>2]=fd(c[(c[h>>2]|0)+4>>2]|0)|0;c[E>>2]=1}if((c[m>>2]|0)==0|(c[m>>2]|0)==101){c[m>>2]=gd(c[(c[h>>2]|0)+4>>2]|0,1,(c[(c[h>>2]|0)+8>>2]|0)+1|0)|0}if((c[m>>2]|0)==0){if((c[c[h>>2]>>2]|0)!=0){hd(c[c[h>>2]>>2]|0)}if((c[B>>2]|0)==5){c[m>>2]=id(c[(c[h>>2]|0)+4>>2]|0,2)|0}}if((c[m>>2]|0)==0){if((c[g>>2]|0)<(c[u>>2]|0)){c[C>>2]=(c[u>>2]|0)/(c[g>>2]|0)|0;c[F>>2]=((c[E>>2]|0)+(c[C>>2]|0)-1|0)/(c[C>>2]|0)|0;if((c[F>>2]|0)==((((c[368]|0)>>>0)/((c[(c[(c[(c[h>>2]|0)+4>>2]|0)+4>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){c[F>>2]=(c[F>>2]|0)+ -1}}else{c[F>>2]=$(c[E>>2]|0,(c[g>>2]|0)/(c[u>>2]|0)|0)|0}if((c[g>>2]|0)<(c[u>>2]|0)){a=c[g>>2]|0;b=c[E>>2]|0;b=nL(a|0,((a|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0;a=k;c[a>>2]=b;c[a+4>>2]=D;c[e>>2]=jd(c[l>>2]|0)|0;kd(c[l>>2]|0,G);c[t>>2]=c[F>>2];while(1){if((c[m>>2]|0)!=0){break}if(!((c[t>>2]|0)>>>0<=(c[G>>2]|0)>>>0)){break}do{if((c[t>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[(c[(c[h>>2]|0)+4>>2]|0)+4>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){c[m>>2]=ad(c[l>>2]|0,c[t>>2]|0,v,0)|0;if((c[m>>2]|0)!=0){break}c[m>>2]=ld(c[v>>2]|0)|0;dd(c[v>>2]|0)}}while(0);c[t>>2]=(c[t>>2]|0)+1}if((c[m>>2]|0)==0){c[m>>2]=md(c[l>>2]|0,0,1)|0}b=(c[368]|0)+(c[u>>2]|0)|0;F=((b|0)<0)<<31>>31;a=k;G=c[a+4>>2]|0;if((F|0)<(G|0)|((F|0)==(G|0)?b>>>0<(c[a>>2]|0)>>>0:0)){t=(c[368]|0)+(c[u>>2]|0)|0;u=t;t=((t|0)<0)<<31>>31}else{t=k;u=c[t>>2]|0;t=c[t+4>>2]|0}b=p;c[b>>2]=u;c[b+4>>2]=t;b=(c[368]|0)+(c[g>>2]|0)|0;a=q;c[a>>2]=b;c[a+4>>2]=((b|0)<0)<<31>>31;while(1){if((c[m>>2]|0)!=0){break}b=q;F=c[b+4>>2]|0;a=p;G=c[a+4>>2]|0;if(!((F|0)<(G|0)|((F|0)==(G|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0))){break}c[r>>2]=0;b=q;a=c[g>>2]|0;a=lL(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;a=dL(a|0,D|0,1,0)|0;c[s>>2]=a;c[m>>2]=ad(c[o>>2]|0,c[s>>2]|0,r,0)|0;if((c[m>>2]|0)==0){c[f>>2]=cd(c[r>>2]|0)|0;a=q;c[m>>2]=nd(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0}dd(c[r>>2]|0);b=c[g>>2]|0;a=q;b=dL(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=q;c[a>>2]=b;c[a+4>>2]=D}if((c[m>>2]|0)==0){a=k;c[m>>2]=od(c[e>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0}if((c[m>>2]|0)==0){c[m>>2]=pd(c[l>>2]|0,0)|0}}else{qd(c[l>>2]|0,c[F>>2]|0);c[m>>2]=md(c[l>>2]|0,0,0)|0}if(0==(c[m>>2]|0)){a=rd(c[(c[h>>2]|0)+4>>2]|0,0)|0;c[m>>2]=a;c[m>>2]=0==(a|0)?101:a}}}if((c[j>>2]|0)!=0){sd(c[(c[h>>2]|0)+24>>2]|0,0)|0;rd(c[(c[h>>2]|0)+24>>2]|0,0)|0}if((c[m>>2]|0)==3082){c[m>>2]=7}c[(c[h>>2]|0)+28>>2]=c[m>>2];a=c[m>>2]|0;i=n;return a|0}function Uc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[(c[(c[d>>2]|0)+4>>2]|0)+4>>2]=c[c[d>>2]>>2];i=b;return}function Vc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!((c[d>>2]|0)!=0&(c[d>>2]|0)!=5)){d=0;d=d&1;i=b;return d|0}d=(c[d>>2]|0)!=6;d=d&1;i=b;return d|0}function Wc(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;l=j+24|0;m=j;o=j+4|0;k=j+8|0;n=j+12|0;p=j+16|0;h=j+20|0;c[l>>2]=f;c[m>>2]=g;c[o>>2]=0;c[k>>2]=c[(c[l>>2]|0)+4>>2];c[n>>2]=0;Uc(c[l>>2]|0);do{if((d[(c[l>>2]|0)+8>>0]|0)!=2){if((d[(c[l>>2]|0)+8>>0]|0)==1){if((c[m>>2]|0)==0){break}}if((b[(c[k>>2]|0)+22>>1]&1|0)!=0){if((c[m>>2]|0)!=0){c[n>>2]=8;break}}if((c[m>>2]|0)!=0){if((d[(c[k>>2]|0)+20>>0]|0)==2){g=10}else{g=9}}else{g=9}a:do{if((g|0)==9){if((b[(c[k>>2]|0)+22>>1]&64|0)!=0){g=10}else{if((c[m>>2]|0)>1){c[p>>2]=c[(c[k>>2]|0)+72>>2];while(1){if((c[p>>2]|0)==0){break a}f=c[p>>2]|0;if((c[c[p>>2]>>2]|0)!=(c[l>>2]|0)){break}c[p>>2]=c[f+12>>2]}c[o>>2]=c[c[f>>2]>>2]}}}}while(0);if((g|0)==10){c[o>>2]=c[c[(c[k>>2]|0)+76>>2]>>2]}if((c[o>>2]|0)!=0){c[n>>2]=262;break}c[n>>2]=bF(c[l>>2]|0,1,1)|0;if(0==(c[n>>2]|0)){f=(c[k>>2]|0)+22|0;b[f>>1]=e[f>>1]&-9;if((c[(c[k>>2]|0)+44>>2]|0)==0){f=(c[k>>2]|0)+22|0;b[f>>1]=e[f>>1]|8}while(1){if((c[(c[k>>2]|0)+12>>2]|0)==0){f=vJ(c[k>>2]|0)|0;c[n>>2]=f;if(0==(f|0)){continue}}do{if((c[n>>2]|0)==0){if((c[m>>2]|0)!=0){if((b[(c[k>>2]|0)+22>>1]&1|0)!=0){c[n>>2]=8;break}g=c[c[k>>2]>>2]|0;f=(c[m>>2]|0)>1&1;c[n>>2]=wJ(g,f,po(c[c[l>>2]>>2]|0)|0)|0;if((c[n>>2]|0)==0){c[n>>2]=SI(c[k>>2]|0)|0}}}}while(0);if((c[n>>2]|0)!=0){Hr(c[k>>2]|0)}if((c[n>>2]&255|0)!=5){break}if((d[(c[k>>2]|0)+20>>0]|0)!=0){break}if((xo(c[k>>2]|0)|0)==0){break}}if((c[n>>2]|0)==0){if((d[(c[l>>2]|0)+8>>0]|0)==0){f=(c[k>>2]|0)+40|0;c[f>>2]=(c[f>>2]|0)+1;if((a[(c[l>>2]|0)+9>>0]|0)!=0){a[(c[l>>2]|0)+36>>0]=1;c[(c[l>>2]|0)+40>>2]=c[(c[k>>2]|0)+72>>2];c[(c[k>>2]|0)+72>>2]=(c[l>>2]|0)+28}}a[(c[l>>2]|0)+8>>0]=(c[m>>2]|0)!=0?2:1;if((d[(c[l>>2]|0)+8>>0]|0)>(d[(c[k>>2]|0)+20>>0]|0)){a[(c[k>>2]|0)+20>>0]=a[(c[l>>2]|0)+8>>0]|0}if((c[m>>2]|0)!=0){c[h>>2]=c[(c[k>>2]|0)+12>>2];c[(c[k>>2]|0)+76>>2]=c[l>>2];f=(c[k>>2]|0)+22|0;b[f>>1]=e[f>>1]&-33;if((c[m>>2]|0)>1){f=(c[k>>2]|0)+22|0;b[f>>1]=e[f>>1]|32}f=c[(c[k>>2]|0)+44>>2]|0;if((f|0)!=(zo((c[(c[h>>2]|0)+56>>2]|0)+28|0)|0)){c[n>>2]=ld(c[(c[h>>2]|0)+68>>2]|0)|0;if((c[n>>2]|0)==0){Xq((c[(c[h>>2]|0)+56>>2]|0)+28|0,c[(c[k>>2]|0)+44>>2]|0)}}}}}}}while(0);if((c[n>>2]|0)!=0){f=c[n>>2]|0;i=j;return f|0}if((c[m>>2]|0)==0){f=c[n>>2]|0;i=j;return f|0}c[n>>2]=QI(c[c[k>>2]>>2]|0,c[(c[c[l>>2]>>2]|0)+488>>2]|0)|0;f=c[n>>2]|0;i=j;return f|0}function Xc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;g=e;f=e+4|0;h=e+8|0;c[j>>2]=a;c[g>>2]=b;c[f>>2]=d;c[h>>2]=c[(c[j>>2]|0)+4>>2];Uc(c[j>>2]|0);a=zo((c[(c[(c[h>>2]|0)+12>>2]|0)+56>>2]|0)+(36+(c[g>>2]<<2))|0)|0;c[c[f>>2]>>2]=a;i=e;return}function Yc(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return(d[(c[b>>2]|0)+8>>0]|0|0)!=0|0}function Zc(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[(c[b>>2]|0)+4>>2]|0)+32>>2]|0}function _c(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+5>>0]|0|0}function $c(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=dD(c[(c[d>>2]|0)+4>>2]|0)|0;i=b;return a|0}function ad(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=i;i=i+48|0;j=p+40|0;k=p+36|0;r=p+32|0;l=p+28|0;t=p+24|0;m=p+20|0;n=p+12|0;g=p+8|0;q=p+4|0;o=p;s=p+16|0;c[k>>2]=a;c[r>>2]=b;c[l>>2]=e;c[t>>2]=f;c[m>>2]=0;c[n>>2]=0;c[g>>2]=0;c[q>>2]=c[t>>2]&1;c[o>>2]=0;if((c[r>>2]|0)==0){c[j>>2]=dq(45156)|0;t=c[j>>2]|0;i=p;return t|0}do{if((c[(c[k>>2]|0)+40>>2]|0)!=0){c[m>>2]=c[(c[k>>2]|0)+40>>2];h=21}else{if((c[o>>2]|0)!=0){if((Uo(c[k>>2]|0)|0)!=0){c[m>>2]=Xp(c[(c[k>>2]|0)+208>>2]|0,c[r>>2]|0,g)|0;if((c[m>>2]|0)!=0){break}}}if((c[o>>2]|0)!=0){if((c[g>>2]|0)==0){c[s>>2]=0;a=c[(c[k>>2]|0)+60>>2]|0;t=c[(c[k>>2]|0)+152>>2]|0;t=nL((c[r>>2]|0)-1|0,0,t|0,((t|0)<0)<<31>>31|0)|0;c[m>>2]=tJ(a,t,D,c[(c[k>>2]|0)+152>>2]|0,s)|0;if((c[m>>2]|0)==0){if((c[s>>2]|0)!=0){if((d[(c[k>>2]|0)+16>>0]|0|0)>1){Fp(c[(c[k>>2]|0)+204>>2]|0,c[r>>2]|0,0,n)|0}f=c[k>>2]|0;if((c[n>>2]|0)==0){c[m>>2]=uJ(f,c[r>>2]|0,c[s>>2]|0,n)|0}else{a=c[f+60>>2]|0;t=c[(c[k>>2]|0)+152>>2]|0;t=nL((c[r>>2]|0)-1|0,0,t|0,((t|0)<0)<<31>>31|0)|0;aq(a,t,D,c[s>>2]|0)|0}if((c[n>>2]|0)!=0){c[c[l>>2]>>2]=c[n>>2];c[j>>2]=0;t=c[j>>2]|0;i=p;return t|0}}}if((c[m>>2]|0)!=0){break}}}c[m>>2]=Fp(c[(c[k>>2]|0)+204>>2]|0,c[r>>2]|0,1,c[l>>2]|0)|0;h=21}}while(0);do{if((h|0)==21){if((c[m>>2]|0)!=0){c[n>>2]=0;break}if((c[(c[c[l>>2]>>2]|0)+16>>2]|0)!=0){if((c[q>>2]|0)==0){t=(c[k>>2]|0)+184|0;c[t>>2]=(c[t>>2]|0)+1;c[j>>2]=0;t=c[j>>2]|0;i=p;return t|0}}c[n>>2]=c[c[l>>2]>>2];c[(c[n>>2]|0)+16>>2]=c[k>>2];if(!((c[r>>2]|0)>>>0>2147483647)){if((c[r>>2]|0)!=(((c[368]|0)/(c[(c[k>>2]|0)+152>>2]|0)|0)+1|0)){if((d[(c[k>>2]|0)+15>>0]|0|0)!=0){h=33}else{if((c[(c[k>>2]|0)+24>>2]|0)>>>0<(c[r>>2]|0)>>>0){h=33}else{if((c[q>>2]|0)!=0){h=33}else{if((c[c[(c[k>>2]|0)+60>>2]>>2]|0)!=0){if((Uo(c[k>>2]|0)|0)!=0){if((c[o>>2]|0)==0){c[m>>2]=Xp(c[(c[k>>2]|0)+208>>2]|0,c[r>>2]|0,g)|0;if((c[m>>2]|0)!=0){break}}}t=(c[k>>2]|0)+188|0;c[t>>2]=(c[t>>2]|0)+1;c[m>>2]=Yp(c[n>>2]|0,c[g>>2]|0)|0;if((c[m>>2]|0)!=0){break}}else{h=33}}}}if((h|0)==33){if((c[r>>2]|0)>>>0>(c[(c[k>>2]|0)+156>>2]|0)>>>0){c[m>>2]=13;break}if((c[q>>2]|0)!=0){Ih();if((c[r>>2]|0)>>>0<=(c[(c[k>>2]|0)+28>>2]|0)>>>0){sh(c[(c[k>>2]|0)+56>>2]|0,c[r>>2]|0)|0}jr(c[k>>2]|0,c[r>>2]|0)|0;Jh()}aL(c[(c[n>>2]|0)+4>>2]|0,0,c[(c[k>>2]|0)+152>>2]|0)|0}c[j>>2]=0;t=c[j>>2]|0;i=p;return t|0}}c[m>>2]=dq(45227)|0}}while(0);if((c[n>>2]|0)!=0){Wp(c[n>>2]|0)}$p(c[k>>2]|0);c[c[l>>2]>>2]=0;c[j>>2]=c[m>>2];t=c[j>>2]|0;i=p;return t|0}function bd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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=i;i=i+80|0;v=h+68|0;x=h+64|0;n=h+60|0;k=h+56|0;t=h+52|0;m=h+48|0;j=h+44|0;s=h+40|0;w=h+8|0;g=h+28|0;l=h;p=h+20|0;u=h+16|0;o=h+24|0;q=h+32|0;r=h+36|0;c[v>>2]=b;c[x>>2]=d;c[n>>2]=e;c[k>>2]=f;c[t>>2]=Zb(c[(c[v>>2]|0)+4>>2]|0)|0;c[m>>2]=Zc(c[(c[v>>2]|0)+24>>2]|0)|0;c[j>>2]=Zc(c[(c[v>>2]|0)+4>>2]|0)|0;c[s>>2]=(c[m>>2]|0)<(c[j>>2]|0)?c[m>>2]|0:c[j>>2]|0;d=c[m>>2]|0;d=nL(c[x>>2]|0,0,d|0,((d|0)<0)<<31>>31|0)|0;b=w;c[b>>2]=d;c[b+4>>2]=D;c[g>>2]=0;if((c[m>>2]|0)!=(c[j>>2]|0)){if((gH(c[t>>2]|0)|0)!=0){c[g>>2]=8}}x=w;b=c[m>>2]|0;b=$K(c[x>>2]|0,c[x+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;x=l;c[x>>2]=b;c[x+4>>2]=D;while(1){if((c[g>>2]|0)!=0){j=15;break}b=l;e=c[b+4>>2]|0;x=w;d=c[x+4>>2]|0;if(!((e|0)<(d|0)|((e|0)==(d|0)?(c[b>>2]|0)>>>0<(c[x>>2]|0)>>>0:0))){j=15;break}c[p>>2]=0;b=l;x=c[j>>2]|0;x=lL(c[b>>2]|0,c[b+4>>2]|0,x|0,((x|0)<0)<<31>>31|0)|0;c[u>>2]=x+1;if((c[u>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[(c[(c[v>>2]|0)+4>>2]|0)+4>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){x=ad(c[t>>2]|0,c[u>>2]|0,p,0)|0;c[g>>2]=x;if(0==(x|0)){x=ld(c[p>>2]|0)|0;c[g>>2]=x;if(0==(x|0)){x=l;b=c[m>>2]|0;b=mL(c[x>>2]|0,c[x+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[o>>2]=(c[n>>2]|0)+b;c[q>>2]=cd(c[p>>2]|0)|0;b=l;x=c[j>>2]|0;x=mL(c[b>>2]|0,c[b+4>>2]|0,x|0,((x|0)<0)<<31>>31|0)|0;c[r>>2]=(c[q>>2]|0)+x;fL(c[r>>2]|0,c[o>>2]|0,c[s>>2]|0)|0;a[(Jq(c[p>>2]|0)|0)>>0]=0;x=l;if((c[x>>2]|0)==0&(c[x+4>>2]|0)==0){if((c[k>>2]|0)==0){x=(c[r>>2]|0)+28|0;Xq(x,$c(c[(c[v>>2]|0)+24>>2]|0)|0)}}}}dd(c[p>>2]|0)}b=c[j>>2]|0;x=l;b=dL(c[x>>2]|0,c[x+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;x=l;c[x>>2]=b;c[x+4>>2]=D}if((j|0)==15){i=h;return c[g>>2]|0}return 0}function cd(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+4>>2]|0}function dd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}Zp(c[d>>2]|0);i=b;return}function ed(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=ud(Zb(c[(c[d>>2]|0)+24>>2]|0)|0)|0;c[(c[d>>2]|0)+44>>2]=c[c[e>>2]>>2];c[c[e>>2]>>2]=c[d>>2];c[(c[d>>2]|0)+40>>2]=1;i=b;return}function fd(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;Uc(c[e>>2]|0);c[(c[(c[e>>2]|0)+4>>2]|0)+44>>2]=0;c[b>>2]=SI(c[(c[e>>2]|0)+4>>2]|0)|0;i=d;return c[b>>2]|0}function gd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;m=f+20|0;l=f;h=f+4|0;j=f+8|0;k=f+12|0;g=f+16|0;c[m>>2]=b;c[l>>2]=d;c[h>>2]=e;c[j>>2]=c[(c[m>>2]|0)+4>>2];Uc(c[m>>2]|0);c[k>>2]=c[(c[(c[j>>2]|0)+12>>2]|0)+56>>2];c[g>>2]=ld(c[(c[(c[j>>2]|0)+12>>2]|0)+68>>2]|0)|0;if((c[g>>2]|0)!=0){m=c[g>>2]|0;i=f;return m|0}Xq((c[k>>2]|0)+(36+(c[l>>2]<<2))|0,c[h>>2]|0);if((c[l>>2]|0)!=7){m=c[g>>2]|0;i=f;return m|0}a[(c[j>>2]|0)+18>>0]=c[h>>2];m=c[g>>2]|0;i=f;return m|0}function hd(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;b=d+8|0;e=d;f=d+4|0;c[b>>2]=a;Yb(c[b>>2]|0);c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[b>>2]|0)+20>>2]|0)){break}c[f>>2]=(c[(c[b>>2]|0)+16>>2]|0)+(c[e>>2]<<4);if((c[(c[f>>2]|0)+12>>2]|0)!=0){oo(c[(c[f>>2]|0)+12>>2]|0)}c[e>>2]=(c[e>>2]|0)+1}f=(c[b>>2]|0)+24|0;c[f>>2]=c[f>>2]&-3;Ar(c[b>>2]|0);Br(c[b>>2]|0);i=d;return}function id(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;k=n+16|0;j=n;m=n+4|0;l=n+8|0;h=n+12|0;c[k>>2]=f;c[j>>2]=g;c[m>>2]=c[(c[k>>2]|0)+4>>2];f=(c[m>>2]|0)+22|0;b[f>>1]=(e[f>>1]|0)&-17;if((c[j>>2]|0)==1){f=(c[m>>2]|0)+22|0;b[f>>1]=e[f>>1]|0|16}c[l>>2]=Wc(c[k>>2]|0,0)|0;do{if((c[l>>2]|0)==0){c[h>>2]=c[(c[(c[m>>2]|0)+12>>2]|0)+56>>2];if((d[(c[h>>2]|0)+18>>0]|0|0)==(c[j>>2]&255|0)){if((d[(c[h>>2]|0)+19>>0]|0|0)==(c[j>>2]&255|0)){break}}c[l>>2]=Wc(c[k>>2]|0,2)|0;if((c[l>>2]|0)==0){c[l>>2]=ld(c[(c[(c[m>>2]|0)+12>>2]|0)+68>>2]|0)|0;if((c[l>>2]|0)==0){a[(c[h>>2]|0)+18>>0]=c[j>>2];a[(c[h>>2]|0)+19>>0]=c[j>>2]}}}}while(0);f=(c[m>>2]|0)+22|0;b[f>>1]=(e[f>>1]|0)&-17;i=n;return c[l>>2]|0}function jd(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+60>>2]|0}function kd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;c[c[e>>2]>>2]=c[(c[f>>2]|0)+24>>2];i=d;return}function ld(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;p=i;i=i+64|0;k=p+48|0;j=p+44|0;t=p+40|0;l=p+36|0;u=p+32|0;m=p+28|0;g=p+24|0;n=p+16|0;q=p+12|0;v=p+8|0;s=p+4|0;r=p;o=p+20|0;c[k>>2]=f;c[j>>2]=0;c[t>>2]=c[k>>2];c[l>>2]=c[(c[t>>2]|0)+16>>2];if(!((c[(c[l>>2]|0)+148>>2]|0)>>>0>(c[(c[l>>2]|0)+152>>2]|0)>>>0)){c[j>>2]=pJ(c[k>>2]|0)|0;f=c[j>>2]|0;i=p;return f|0}c[g>>2]=0;c[q>>2]=0;c[v>>2]=((c[(c[l>>2]|0)+148>>2]|0)>>>0)/((c[(c[l>>2]|0)+152>>2]|0)>>>0)|0;f=(c[l>>2]|0)+20|0;a[f>>0]=d[f>>0]|0|4;c[m>>2]=((c[(c[t>>2]|0)+20>>2]|0)-1&~((c[v>>2]|0)-1))+1;c[u>>2]=c[(c[l>>2]|0)+24>>2];do{if((c[(c[t>>2]|0)+20>>2]|0)>>>0>(c[u>>2]|0)>>>0){c[g>>2]=(c[(c[t>>2]|0)+20>>2]|0)-(c[m>>2]|0)+1}else{if(((c[m>>2]|0)+(c[v>>2]|0)-1|0)>>>0>(c[u>>2]|0)>>>0){c[g>>2]=(c[u>>2]|0)+1-(c[m>>2]|0);break}else{c[g>>2]=c[v>>2];break}}}while(0);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[g>>2]|0)){break}if((c[j>>2]|0)!=0){break}c[s>>2]=(c[m>>2]|0)+(c[n>>2]|0);if((c[s>>2]|0)==(c[(c[t>>2]|0)+20>>2]|0)){h=12}else{if((uh(c[(c[l>>2]|0)+56>>2]|0,c[s>>2]|0)|0)!=0){f=Ap(c[l>>2]|0,c[s>>2]|0)|0;c[r>>2]=f;if((f|0)!=0){if((b[(c[r>>2]|0)+24>>1]&4|0)!=0){c[q>>2]=1}Zp(c[r>>2]|0)}}else{h=12}}if((h|0)==12){h=0;if((c[s>>2]|0)!=(((c[368]|0)/(c[(c[l>>2]|0)+152>>2]|0)|0)+1|0)){c[j>>2]=ad(c[l>>2]|0,c[s>>2]|0,r,0)|0;if((c[j>>2]|0)==0){c[j>>2]=pJ(c[r>>2]|0)|0;if((b[(c[r>>2]|0)+24>>1]&4|0)!=0){c[q>>2]=1}Zp(c[r>>2]|0)}}}c[n>>2]=(c[n>>2]|0)+1}a:do{if((c[j>>2]|0)==0){if((c[q>>2]|0)!=0){c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[g>>2]|0)){break a}c[o>>2]=Ap(c[l>>2]|0,(c[m>>2]|0)+(c[n>>2]|0)|0)|0;if((c[o>>2]|0)!=0){f=(c[o>>2]|0)+24|0;b[f>>1]=e[f>>1]|0|4;Zp(c[o>>2]|0)}c[n>>2]=(c[n>>2]|0)+1}}}}while(0);f=(c[l>>2]|0)+20|0;a[f>>0]=(d[f>>0]|0)&-5;f=c[j>>2]|0;i=p;return f|0}function md(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+32|0;h=n+28|0;l=n;p=n+4|0;o=n+8|0;j=n+12|0;m=n+16|0;k=n+20|0;g=n+24|0;c[l>>2]=b;c[p>>2]=e;c[o>>2]=f;c[j>>2]=0;f=c[l>>2]|0;if((c[(c[l>>2]|0)+40>>2]|0)!=0){c[h>>2]=c[f+40>>2];b=c[h>>2]|0;i=n;return b|0}if((d[f+16>>0]|0)<3){c[h>>2]=0;b=c[h>>2]|0;i=n;return b|0}f=c[l>>2]|0;do{if((a[(c[l>>2]|0)+15>>0]|0)!=0){kh(c[f+88>>2]|0)}else{b=(Uo(f)|0)!=0;f=c[l>>2]|0;if(b){c[m>>2]=Rp(c[f+204>>2]|0)|0;c[k>>2]=0;if((c[m>>2]|0)==0){c[j>>2]=ad(c[l>>2]|0,1,k,0)|0;c[m>>2]=c[k>>2];c[(c[m>>2]|0)+12>>2]=0}if((c[m>>2]|0)!=0){c[j>>2]=Sq(c[l>>2]|0,c[m>>2]|0,c[(c[l>>2]|0)+24>>2]|0,1)|0}dd(c[k>>2]|0);if((c[j>>2]|0)!=0){break}To(c[(c[l>>2]|0)+204>>2]|0);break}c[j>>2]=nJ(f,0)|0;if((c[j>>2]|0)==0){c[j>>2]=oJ(c[l>>2]|0,c[p>>2]|0)|0;if((c[j>>2]|0)==0){c[j>>2]=Tq(c[l>>2]|0,0)|0;if((c[j>>2]|0)==0){b=c[l>>2]|0;c[j>>2]=Uq(b,Rp(c[(c[l>>2]|0)+204>>2]|0)|0)|0;if((c[j>>2]|0)==0){To(c[(c[l>>2]|0)+204>>2]|0);if((c[(c[l>>2]|0)+24>>2]|0)>>>0>(c[(c[l>>2]|0)+32>>2]|0)>>>0){c[g>>2]=(c[(c[l>>2]|0)+24>>2]|0)-((c[(c[l>>2]|0)+24>>2]|0)==(((c[368]|0)/(c[(c[l>>2]|0)+152>>2]|0)|0)+1|0)&1);c[j>>2]=Wo(c[l>>2]|0,c[g>>2]|0)|0;if((c[j>>2]|0)!=0){break}}if((c[o>>2]|0)==0){c[j>>2]=pd(c[l>>2]|0,c[p>>2]|0)|0}}}}}}}while(0);if((c[j>>2]|0)==0){if((Uo(c[l>>2]|0)|0)==0){a[(c[l>>2]|0)+16>>0]=5}}c[h>>2]=c[j>>2];b=c[h>>2]|0;i=n;return b|0}function nd(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;k=g+16|0;j=g+12|0;h=g+8|0;l=g;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;a=l;c[a>>2]=e;c[a+4>>2]=f;a=l;a=Ab[c[(c[c[k>>2]>>2]|0)+12>>2]&15](c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;i=g;return a|0}function od(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+20|0;g=e;j=e+8|0;f=e+16|0;c[h>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;c[f>>2]=dh(c[h>>2]|0,j)|0;if((c[f>>2]|0)!=0){a=c[f>>2]|0;i=e;return a|0}b=j;d=c[b+4>>2]|0;a=g;j=c[a+4>>2]|0;if(!((d|0)>(j|0)|((d|0)==(j|0)?(c[b>>2]|0)>>>0>(c[a>>2]|0)>>>0:0))){a=c[f>>2]|0;i=e;return a|0}a=g;c[f>>2]=Qo(c[h>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}function pd(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;h=g+12|0;k=g;f=g+4|0;j=g+8|0;c[h>>2]=b;c[k>>2]=e;c[f>>2]=0;if((c[c[(c[h>>2]|0)+60>>2]>>2]|0)!=0){c[j>>2]=c[k>>2];b=Hg(c[(c[h>>2]|0)+60>>2]|0,21,c[j>>2]|0)|0;c[f>>2]=b;c[f>>2]=(c[f>>2]|0)==12?0:b}if((c[f>>2]|0)!=0){b=c[f>>2]|0;i=g;return b|0}if((a[(c[h>>2]|0)+7>>0]|0)!=0){b=c[f>>2]|0;i=g;return b|0}c[f>>2]=cp(c[(c[h>>2]|0)+60>>2]|0,d[(c[h>>2]|0)+11>>0]|0)|0;b=c[f>>2]|0;i=g;return b|0}function qd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+24>>2]=c[f>>2];i=d;return}function rd(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;j=f;h=f+4|0;l=f+8|0;k=f+12|0;c[j>>2]=b;c[h>>2]=e;if((d[(c[j>>2]|0)+8>>0]|0|0)==0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}Uc(c[j>>2]|0);if((d[(c[j>>2]|0)+8>>0]|0|0)==2){c[k>>2]=c[(c[j>>2]|0)+4>>2];c[l>>2]=mJ(c[c[k>>2]>>2]|0)|0;if((c[l>>2]|0)!=0){if((c[h>>2]|0)==0){c[g>>2]=c[l>>2];b=c[g>>2]|0;i=f;return b|0}}a[(c[k>>2]|0)+20>>0]=1;hJ(c[k>>2]|0)}iJ(c[j>>2]|0);c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}function sd(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;g=h+16|0;l=h;k=h+4|0;f=h+8|0;j=h+12|0;c[l>>2]=b;c[k>>2]=e;c[f>>2]=0;if((d[(c[l>>2]|0)+8>>0]|0)==2){c[j>>2]=c[(c[l>>2]|0)+4>>2];Uc(c[l>>2]|0);if((a[(c[j>>2]|0)+17>>0]|0)!=0){c[f>>2]=lJ(c[j>>2]|0)|0;if((c[f>>2]|0)!=0){c[g>>2]=c[f>>2];b=c[g>>2]|0;i=h;return b|0}}if((a[(c[j>>2]|0)+19>>0]|0)!=0){qd(c[c[j>>2]>>2]|0,c[(c[j>>2]|0)+44>>2]|0)}c[f>>2]=md(c[c[j>>2]>>2]|0,c[k>>2]|0,0)|0}c[g>>2]=c[f>>2];b=c[g>>2]|0;i=h;return b|0}function td(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;g=b;d=b+20|0;e=b+4|0;j=b+8|0;h=b+12|0;f=b+16|0;c[e>>2]=a;if((c[e>>2]|0)==0){c[d>>2]=0;j=c[d>>2]|0;i=b;return j|0}c[h>>2]=c[(c[e>>2]|0)+20>>2];Uc(c[(c[e>>2]|0)+24>>2]|0);if((c[c[e>>2]>>2]|0)!=0){a=(c[(c[e>>2]|0)+24>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+ -1}if((c[(c[e>>2]|0)+40>>2]|0)!=0){c[j>>2]=ud(Zb(c[(c[e>>2]|0)+24>>2]|0)|0)|0;while(1){if((c[c[j>>2]>>2]|0)==(c[e>>2]|0)){break}c[j>>2]=(c[c[j>>2]>>2]|0)+44}c[c[j>>2]>>2]=c[(c[e>>2]|0)+44>>2]}vd(c[(c[e>>2]|0)+4>>2]|0,0)|0;if((c[(c[e>>2]|0)+28>>2]|0)==101){a=0}else{a=c[(c[e>>2]|0)+28>>2]|0}c[f>>2]=a;if((c[c[e>>2]>>2]|0)!=0){Rc(c[c[e>>2]>>2]|0,c[f>>2]|0,0,g);wd(c[c[e>>2]>>2]|0)}if((c[c[e>>2]>>2]|0)!=0){oc(c[e>>2]|0)}wd(c[h>>2]|0);c[d>>2]=c[f>>2];j=c[d>>2]|0;i=b;return j|0}function ud(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[b>>2]|0)+88|0}function vd(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;f=h+24|0;n=h;g=h+4|0;l=h+8|0;j=h+12|0;m=h+16|0;k=h+20|0;c[f>>2]=b;c[n>>2]=e;c[l>>2]=c[(c[f>>2]|0)+4>>2];Uc(c[f>>2]|0);if((c[n>>2]|0)==0){b=hF(c[l>>2]|0,0,0)|0;c[n>>2]=b;c[g>>2]=b}else{c[g>>2]=0}if((c[n>>2]|0)!=0){YF(c[f>>2]|0,c[n>>2]|0)}if((d[(c[f>>2]|0)+8>>0]|0|0)!=2){b=c[f>>2]|0;iJ(b);b=c[g>>2]|0;i=h;return b|0}c[m>>2]=Mo(c[c[l>>2]>>2]|0)|0;if((c[m>>2]|0)!=0){c[g>>2]=c[m>>2]}if((eD(c[l>>2]|0,1,j,0)|0)==0){c[k>>2]=zo((c[(c[j>>2]|0)+56>>2]|0)+28|0)|0;if((c[k>>2]|0)==0){kd(c[c[l>>2]>>2]|0,k)}c[(c[l>>2]|0)+44>>2]=c[k>>2];Gr(c[j>>2]|0)}a[(c[l>>2]|0)+20>>0]=1;hJ(c[l>>2]|0);b=c[f>>2]|0;iJ(b);b=c[g>>2]|0;i=h;return b|0}function wd(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+48|0;f=j;e=j+32|0;g=j+28|0;k=j+24|0;o=j+20|0;n=j+36|0;m=j+8|0;l=j+4|0;d=j+12|0;h=j+16|0;c[e>>2]=b;if((c[(c[e>>2]|0)+76>>2]|0)!=1691352191){i=j;return}if((wr(c[e>>2]|0)|0)!=0){i=j;return}xr(c[e>>2]|0,0);yr(c[e>>2]|0);c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[e>>2]|0)+20>>2]|0)){break}c[o>>2]=(c[(c[e>>2]|0)+16>>2]|0)+(c[k>>2]<<4);if((c[(c[o>>2]|0)+4>>2]|0)!=0){zr(c[(c[o>>2]|0)+4>>2]|0)|0;c[(c[o>>2]|0)+4>>2]=0;if((c[k>>2]|0)!=1){c[(c[o>>2]|0)+12>>2]=0}}c[k>>2]=(c[k>>2]|0)+1}if((c[(c[(c[e>>2]|0)+16>>2]|0)+28>>2]|0)!=0){oo(c[(c[(c[e>>2]|0)+16>>2]|0)+28>>2]|0)}Ar(c[e>>2]|0);Br(c[e>>2]|0);c[k>>2]=0;while(1){if((c[k>>2]|0)>=23){break}c[l>>2]=c[(c[e>>2]|0)+328+(c[k>>2]<<2)>>2];while(1){if((c[l>>2]|0)==0){break}c[m>>2]=c[(c[l>>2]|0)+28>>2];while(1){if((c[l>>2]|0)==0){break}vr(c[e>>2]|0,c[l>>2]|0);c[n>>2]=c[(c[l>>2]|0)+8>>2];cc(c[e>>2]|0,c[l>>2]|0);c[l>>2]=c[n>>2]}c[l>>2]=c[m>>2]}c[k>>2]=(c[k>>2]|0)+1}c[g>>2]=c[(c[e>>2]|0)+428>>2];while(1){if((c[g>>2]|0)==0){break}c[d>>2]=c[(c[g>>2]|0)+8>>2];c[k>>2]=0;while(1){if((c[k>>2]|0)>=3){break}if((c[(c[d>>2]|0)+((c[k>>2]|0)*20|0)+16>>2]|0)!=0){rb[c[(c[d>>2]|0)+((c[k>>2]|0)*20|0)+16>>2]&31](c[(c[d>>2]|0)+((c[k>>2]|0)*20|0)+8>>2]|0)}c[k>>2]=(c[k>>2]|0)+1}cc(c[e>>2]|0,c[d>>2]|0);c[g>>2]=c[c[g>>2]>>2]}Kh((c[e>>2]|0)+420|0);c[g>>2]=c[(c[e>>2]|0)+308>>2];while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[(c[g>>2]|0)+8>>2];if((c[(c[h>>2]|0)+12>>2]|0)!=0){rb[c[(c[h>>2]|0)+12>>2]&31](c[(c[h>>2]|0)+8>>2]|0)}cc(c[e>>2]|0,c[h>>2]|0);c[g>>2]=c[c[g>>2]>>2]}Kh((c[e>>2]|0)+300|0);Rc(c[e>>2]|0,0,0,f);Rf(c[(c[e>>2]|0)+224>>2]|0);c[(c[e>>2]|0)+76>>2]=-1254786768;cc(c[e>>2]|0,c[(c[(c[e>>2]|0)+16>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+76>>2]=-1623446221;if((a[(c[e>>2]|0)+243>>0]|0)!=0){oc(c[(c[e>>2]|0)+268>>2]|0)}oc(c[e>>2]|0);i=j;return}function xd(a){a=a|0;var b=0,d=0,f=0;b=i;i=i+16|0;f=b+4|0;d=b;c[f>>2]=a;c[d>>2]=c[f>>2];if((c[d>>2]|0)==0){f=0;i=b;return f|0}if(((e[(c[d>>2]|0)+88>>1]|0)>>>10&1|0)==0){f=0;i=b;return f|0}f=c[(c[d>>2]|0)+168>>2]|0;i=b;return f|0}function yd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=i;i=i+32|0;d=e+16|0;h=e;b=e+4|0;g=e+8|0;f=e+12|0;c[h>>2]=a;do{if((c[h>>2]|0)==0){c[b>>2]=0}else{c[g>>2]=c[h>>2];c[f>>2]=c[c[g>>2]>>2];if((zd(c[g>>2]|0)|0)==0){c[b>>2]=Ad(c[g>>2]|0)|0;c[b>>2]=Bd(c[f>>2]|0,c[b>>2]|0)|0;wd(c[f>>2]|0);break}c[d>>2]=Xb(65817)|0;h=c[d>>2]|0;i=e;return h|0}}while(0);c[d>>2]=c[b>>2];h=c[d>>2]|0;i=e;return h|0}function zd(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;c[e>>2]=a;if((c[c[e>>2]>>2]|0)==0){zc(21,43552,b);c[d>>2]=1;e=c[d>>2]|0;i=b;return e|0}else{c[d>>2]=0;e=c[d>>2]|0;i=b;return e|0}return 0}function Ad(a){a=a|0;var b=0,d=0,e=0,f=0;e=i;i=i+16|0;d=e+4|0;f=e;c[d>>2]=a;c[f>>2]=0;if((c[(c[d>>2]|0)+40>>2]|0)==-1108210269){b=3}else{if((c[(c[d>>2]|0)+40>>2]|0)==1369188723){b=3}}if((b|0)==3){c[f>>2]=Dd(c[d>>2]|0)|0}au(c[d>>2]|0);i=e;return c[f>>2]|0}function Bd(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f;g=f+8|0;h=f+4|0;c[g>>2]=b;c[h>>2]=e;do{if((c[g>>2]|0)!=0){if((d[(c[g>>2]|0)+64>>0]|0|0)==0){if((c[h>>2]|0)!=3082){break}}Rc(c[g>>2]|0,7,0,j);a[(c[g>>2]|0)+64>>0]=0;c[h>>2]=7}}while(0);e=c[h>>2]|0;if((c[g>>2]|0)==0){b=255;b=e&b;i=f;return b|0}b=c[(c[g>>2]|0)+56>>2]|0;b=e&b;i=f;return b|0}function Cd(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b;e=b+4|0;c[f>>2]=a;if((c[f>>2]|0)==0){c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}else{c[e>>2]=c[f>>2];c[d>>2]=Dd(c[e>>2]|0)|0;Ed(c[e>>2]|0);c[d>>2]=Bd(c[c[e>>2]>>2]|0,c[d>>2]|0)|0;f=c[d>>2]|0;i=b;return f|0}return 0}function Dd(a){a=a|0;var d=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;h=f;d=f+8|0;g=f+4|0;c[d>>2]=a;c[g>>2]=c[c[d>>2]>>2];DF(c[d>>2]|0)|0;a=c[d>>2]|0;if((c[(c[d>>2]|0)+76>>2]|0)>=0){yF(a)|0;cc(c[g>>2]|0,c[(c[d>>2]|0)+44>>2]|0);c[(c[d>>2]|0)+44>>2]=0;if(((e[(c[d>>2]|0)+88>>1]|0)>>>6&1|0)!=0){a=(c[d>>2]|0)+88|0;b[a>>1]=b[a>>1]&-33|32}}else{if((c[a+80>>2]|0)!=0){if(((e[(c[d>>2]|0)+88>>1]|0)>>>5&1|0)!=0){k=c[g>>2]|0;j=c[(c[d>>2]|0)+80>>2]|0;a=(c[(c[d>>2]|0)+44>>2]|0)!=0?1768:0;c[h>>2]=c[(c[d>>2]|0)+44>>2];Rc(k,j,a,h);cc(c[g>>2]|0,c[(c[d>>2]|0)+44>>2]|0);c[(c[d>>2]|0)+44>>2]=0}}}fJ(c[d>>2]|0);k=(c[d>>2]|0)+136|0;c[k>>2]=0;c[k+4>>2]=0;c[(c[d>>2]|0)+40>>2]=649915045;i=f;return c[(c[d>>2]|0)+80>>2]&c[(c[g>>2]|0)+56>>2]|0}function Ed(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;c[(c[e>>2]|0)+40>>2]=-1108210269;c[(c[e>>2]|0)+76>>2]=-1;c[(c[e>>2]|0)+80>>2]=0;a[(c[e>>2]|0)+86>>0]=2;c[(c[e>>2]|0)+40>>2]=-1108210269;c[(c[e>>2]|0)+92>>2]=0;c[(c[e>>2]|0)+72>>2]=1;a[(c[e>>2]|0)+87>>0]=-1;c[(c[e>>2]|0)+104>>2]=0;b=(c[e>>2]|0)+144|0;c[b>>2]=0;c[b+4>>2]=0;i=d;return}function Fd(a){a=a|0;var d=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+12|0;h=f;d=f+4|0;g=f+8|0;c[j>>2]=a;c[d>>2]=0;c[g>>2]=c[j>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(b[(c[g>>2]|0)+68>>1]|0)){break}Gd((c[(c[g>>2]|0)+60>>2]|0)+((c[h>>2]|0)*40|0)|0);b[(c[(c[g>>2]|0)+60>>2]|0)+((c[h>>2]|0)*40|0)+28>>1]=1;c[h>>2]=(c[h>>2]|0)+1}if(((e[(c[g>>2]|0)+88>>1]|0)>>>10&1|0)==0){j=c[d>>2]|0;i=f;return j|0}if((c[(c[g>>2]|0)+188>>2]|0)==0){j=c[d>>2]|0;i=f;return j|0}j=(c[g>>2]|0)+88|0;b[j>>1]=b[j>>1]&-33|32;j=c[d>>2]|0;i=f;return j|0}function Gd(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;if((b[(c[d>>2]|0)+28>>1]&9312|0)!=0){te(c[d>>2]|0)}if((c[(c[d>>2]|0)+36>>2]|0)==0){d=c[d>>2]|0;d=d+4|0;c[d>>2]=0;i=e;return}cc(c[c[d>>2]>>2]|0,c[(c[d>>2]|0)+36>>2]|0);c[(c[d>>2]|0)+36>>2]=0;d=c[d>>2]|0;d=d+4|0;c[d>>2]=0;i=e;return}function Hd(a){a=a|0;var d=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+8|0;g=d;h=d+4|0;c[g>>2]=a;c[h>>2]=c[g>>2];if((b[(c[h>>2]|0)+28>>1]&18|0)==0){c[f>>2]=Jd(c[g>>2]|0)|0;h=c[f>>2]|0;i=d;return h|0}Id(c[h>>2]|0)|0;g=(c[h>>2]|0)+28|0;b[g>>1]=e[g>>1]|0|16;if((c[(c[h>>2]|0)+24>>2]|0)!=0){a=c[(c[h>>2]|0)+4>>2]|0}else{a=0}c[f>>2]=a;h=c[f>>2]|0;i=d;return h|0}function Id(a){a=a|0;var d=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+8|0;g=d;h=d+4|0;c[g>>2]=a;do{if((b[(c[g>>2]|0)+28>>1]&16384|0)!=0){a=(c[(c[g>>2]|0)+24>>2]|0)+(c[(c[g>>2]|0)+16>>2]|0)|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)<=0?1:a;if((ue(c[g>>2]|0,c[h>>2]|0,1)|0)==0){aL((c[(c[g>>2]|0)+4>>2]|0)+(c[(c[g>>2]|0)+24>>2]|0)|0,0,c[(c[g>>2]|0)+16>>2]|0)|0;h=(c[g>>2]|0)+24|0;c[h>>2]=(c[h>>2]|0)+(c[(c[g>>2]|0)+16>>2]|0);h=(c[g>>2]|0)+28|0;b[h>>1]=(e[h>>1]|0)&-16897;break}c[f>>2]=7;h=c[f>>2]|0;i=d;return h|0}}while(0);c[f>>2]=0;h=c[f>>2]|0;i=d;return h|0}function Jd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Rd(c[d>>2]|0,1)|0;i=b;return a|0}function Kd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Ld(c[d>>2]|0,1)|0;i=b;return a|0}function Ld(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+8|0;k=f;j=f+12|0;h=f+4|0;c[k>>2]=d;a[j>>0]=e;c[h>>2]=c[k>>2];if((b[(c[h>>2]|0)+28>>1]&16|0)==0){if((Rd(c[k>>2]|0,a[j>>0]|0)|0)==0){c[g>>2]=0;d=c[g>>2]|0;i=f;return d|0}}e=c[(c[h>>2]|0)+24>>2]|0;if((b[(c[h>>2]|0)+28>>1]&16384|0)!=0){c[g>>2]=e+(c[(c[h>>2]|0)+16>>2]|0);d=c[g>>2]|0;i=f;return d|0}else{c[g>>2]=e;d=c[g>>2]|0;i=f;return d|0}return 0}function Md(a){a=a|0;var b=0.0,d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;b=+Nd(c[e>>2]|0);i=d;return+b}function Nd(d){d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0.0;e=i;i=i+32|0;f=e+8|0;j=e+16|0;g=e;c[j>>2]=d;d=c[j>>2]|0;if((b[(c[j>>2]|0)+28>>1]&8|0)!=0){h[f>>3]=+h[d+8>>3];l=+h[f>>3];i=e;return+l}k=c[j>>2]|0;if((b[d+28>>1]&4|0)!=0){k=k+16|0;h[f>>3]=+((c[k>>2]|0)>>>0)+4294967296.0*+(c[k+4>>2]|0);l=+h[f>>3];i=e;return+l}if((b[k+28>>1]&18|0)!=0){h[g>>3]=0.0;zt(c[(c[j>>2]|0)+4>>2]|0,g,c[(c[j>>2]|0)+24>>2]|0,a[(c[j>>2]|0)+30>>0]|0)|0;h[f>>3]=+h[g>>3];l=+h[f>>3];i=e;return+l}else{h[f>>3]=0.0;l=+h[f>>3];i=e;return+l}return 0.0}function Od(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Pd(c[d>>2]|0)|0;i=b;return a|0}function Pd(b){b=b|0;var d=0,f=0,g=0,j=0,k=0;f=i;i=i+32|0;d=f+8|0;g=f+20|0;k=f+16|0;j=f;c[g>>2]=b;c[k>>2]=e[(c[g>>2]|0)+28>>1]|0;do{if((c[k>>2]&4|0)!=0){g=(c[g>>2]|0)+16|0;j=c[g+4>>2]|0;k=d;c[k>>2]=c[g>>2];c[k+4>>2]=j}else{if((c[k>>2]&8|0)!=0){j=qw(+h[(c[g>>2]|0)+8>>3])|0;k=d;c[k>>2]=j;c[k+4>>2]=D;break}if((c[k>>2]&18|0)!=0){k=j;c[k>>2]=0;c[k+4>>2]=0;Pg(c[(c[g>>2]|0)+4>>2]|0,j,c[(c[g>>2]|0)+24>>2]|0,a[(c[g>>2]|0)+30>>0]|0)|0;g=j;j=c[g+4>>2]|0;k=d;c[k>>2]=c[g>>2];c[k+4>>2]=j;break}else{k=d;c[k>>2]=0;c[k+4>>2]=0;break}}}while(0);k=d;D=c[k+4>>2]|0;i=f;return c[k>>2]|0}function Qd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Pd(c[d>>2]|0)|0;i=b;return a|0}function Rd(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;h=i;i=i+16|0;j=h+4|0;k=h;l=h+8|0;c[k>>2]=f;a[l>>0]=g;if((c[k>>2]|0)==0){c[j>>2]=0;f=c[j>>2]|0;i=h;return f|0}if((b[(c[k>>2]|0)+28>>1]&1|0)!=0){c[j>>2]=0;f=c[j>>2]|0;i=h;return f|0}f=(c[k>>2]|0)+28|0;b[f>>1]=e[f>>1]|0|(b[(c[k>>2]|0)+28>>1]&16)>>3;if((b[(c[k>>2]|0)+28>>1]&16384|0)!=0){Id(c[k>>2]|0)|0}f=c[k>>2]|0;g=d[l>>0]|0;if((b[(c[k>>2]|0)+28>>1]&2|0)!=0){sr(f,g&-9)|0;if((a[l>>0]&8|0)!=0){if(1==(1&c[(c[k>>2]|0)+4>>2]|0)){if((ur(c[k>>2]|0)|0)!=0){c[j>>2]=0;f=c[j>>2]|0;i=h;return f|0}}}HF(c[k>>2]|0)|0}else{sw(f,g)|0}if((d[(c[k>>2]|0)+30>>0]|0|0)==((d[l>>0]|0)&-9|0)){c[j>>2]=c[(c[k>>2]|0)+4>>2];f=c[j>>2]|0;i=h;return f|0}else{c[j>>2]=0;f=c[j>>2]|0;i=h;return f|0}return 0}function Sd(a){a=a|0;var e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=a;i=f;return d[1488+(b[(c[e>>2]|0)+28>>1]&31)>>0]|0|0}function Td(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;Ud(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,0,c[g>>2]|0);i=f;return}function Ud(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h+12|0;n=h;m=h+4|0;l=h+16|0;k=h+8|0;c[j>>2]=b;c[n>>2]=d;c[m>>2]=e;a[l>>0]=f;c[k>>2]=g;if((Yd((c[j>>2]|0)+8|0,c[n>>2]|0,c[m>>2]|0,a[l>>0]|0,c[k>>2]|0)|0)!=18){i=h;return}je(c[j>>2]|0);i=h;return}function Vd(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;e=d;c[f>>2]=a;h[e>>3]=b;Wd((c[f>>2]|0)+8|0,+h[e>>3]);i=d;return}function Wd(a,d){a=a|0;d=+d;var e=0,f=0,g=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;h[g>>3]=d;j=(CD(+h[g>>3])|0)!=0;a=c[f>>2]|0;if(j){be(a);i=e;return}else{Gd(a);h[(c[f>>2]|0)+8>>3]=+h[g>>3];b[(c[f>>2]|0)+28>>1]=8;i=e;return}}function Xd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+8|0;h=f;g=f+4|0;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;c[(c[j>>2]|0)+64>>2]=1;a[(c[j>>2]|0)+69>>0]=1;Yd((c[j>>2]|0)+8|0,c[h>>2]|0,c[g>>2]|0,1,-1)|0;i=f;return}function Yd(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;o=i;i=i+48|0;l=o+28|0;n=o+24|0;t=o+20|0;v=o+16|0;q=o+34|0;s=o+12|0;m=o+4|0;p=o;r=o+32|0;u=o+8|0;c[n>>2]=f;c[t>>2]=g;c[v>>2]=h;a[q>>0]=j;c[s>>2]=k;c[m>>2]=c[v>>2];b[r>>1]=0;k=c[n>>2]|0;if((c[t>>2]|0)==0){be(k);c[l>>2]=0;v=c[l>>2]|0;i=o;return v|0}if((c[k>>2]|0)!=0){c[p>>2]=c[(c[c[n>>2]>>2]|0)+88>>2]}else{c[p>>2]=1e9}b[r>>1]=(d[q>>0]|0)==0?16:2;if((c[m>>2]|0)<0){v=(d[q>>0]|0)==1;c[m>>2]=0;a:do{if(v){while(1){if((c[m>>2]|0)>(c[p>>2]|0)){break a}if((a[(c[t>>2]|0)+(c[m>>2]|0)>>0]|0)==0){break a}c[m>>2]=(c[m>>2]|0)+1}}else{while(1){if((c[m>>2]|0)>(c[p>>2]|0)){break a}if((a[(c[t>>2]|0)+(c[m>>2]|0)>>0]|a[(c[t>>2]|0)+((c[m>>2]|0)+1)>>0]|0)==0){break a}c[m>>2]=(c[m>>2]|0)+2}}}while(0);b[r>>1]=e[r>>1]|512}do{if((c[s>>2]|0)==(-1|0)){c[u>>2]=c[m>>2];if((b[r>>1]&512|0)!=0){c[u>>2]=(c[u>>2]|0)+((d[q>>0]|0)==1?1:2)}if((c[m>>2]|0)>(c[p>>2]|0)){c[l>>2]=18;v=c[l>>2]|0;i=o;return v|0}if((ue(c[n>>2]|0,c[u>>2]|0,0)|0)==0){fL(c[(c[n>>2]|0)+4>>2]|0,c[t>>2]|0,c[u>>2]|0)|0;break}c[l>>2]=7;v=c[l>>2]|0;i=o;return v|0}else{v=(c[s>>2]|0)==39;Gd(c[n>>2]|0);t=c[t>>2]|0;c[(c[n>>2]|0)+4>>2]=t;if(v){c[(c[n>>2]|0)+36>>2]=t;c[(c[n>>2]|0)+32>>2]=0;break}else{c[(c[n>>2]|0)+32>>2]=c[s>>2];b[r>>1]=e[r>>1]|((c[s>>2]|0)==0?2048:1024);break}}}while(0);c[(c[n>>2]|0)+24>>2]=c[m>>2];b[(c[n>>2]|0)+28>>1]=b[r>>1]|0;if((d[q>>0]|0)==0){q=1}else{q=d[q>>0]|0}a[(c[n>>2]|0)+30>>0]=q;if((d[(c[n>>2]|0)+30>>0]|0)!=1){if((eJ(c[n>>2]|0)|0)!=0){c[l>>2]=7;v=c[l>>2]|0;i=o;return v|0}}if((c[m>>2]|0)>(c[p>>2]|0)){c[l>>2]=18;v=c[l>>2]|0;i=o;return v|0}else{c[l>>2]=0;v=c[l>>2]|0;i=o;return v|0}return 0}function Zd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;a=c[f>>2]|0;_d((c[e>>2]|0)+8|0,a,((a|0)<0)<<31>>31);i=d;return}function _d(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+8|0;h=f;c[g>>2]=a;a=h;c[a>>2]=d;c[a+4>>2]=e;Gd(c[g>>2]|0);e=h;d=c[e+4>>2]|0;a=(c[g>>2]|0)+16|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;b[(c[g>>2]|0)+28>>1]=4;i=f;return}function $d(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;a=g;_d((c[f>>2]|0)+8|0,c[a>>2]|0,c[a+4>>2]|0);i=e;return}function ae(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;be((c[d>>2]|0)+8|0);i=b;return}function be(a){a=a|0;var d=0,f=0,g=0;f=i;i=i+16|0;d=f+4|0;g=f;c[d>>2]=a;if((b[(c[d>>2]|0)+28>>1]&64|0)!=0){c[g>>2]=c[(c[d>>2]|0)+16>>2];c[(c[g>>2]|0)+4>>2]=c[(c[c[g>>2]>>2]|0)+180>>2];c[(c[c[g>>2]>>2]|0)+180>>2]=c[g>>2]}if((b[(c[d>>2]|0)+28>>1]&32|0)!=0){uF(c[(c[d>>2]|0)+16>>2]|0)}b[(c[d>>2]|0)+28>>1]=(e[(c[d>>2]|0)+28>>1]|0)&-16896|1;i=f;return}function ce(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;Ud(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,1,c[g>>2]|0);i=f;return}function de(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;ee((c[f>>2]|0)+8|0,c[e>>2]|0)|0;i=d;return}function ee(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;f=h+8|0;j=h;g=h+4|0;c[f>>2]=a;c[j>>2]=d;c[g>>2]=0;if((b[(c[f>>2]|0)+28>>1]&9312|0)!=0){te(c[f>>2]|0)}k=(c[f>>2]|0)+0|0;a=(c[j>>2]|0)+0|0;d=k+36|0;do{c[k>>2]=c[a>>2];k=k+4|0;a=a+4|0}while((k|0)<(d|0));k=(c[f>>2]|0)+28|0;b[k>>1]=(e[k>>1]|0)&-1025;c[(c[f>>2]|0)+32>>2]=0;if((b[(c[f>>2]|0)+28>>1]&18|0)==0){k=c[g>>2]|0;i=h;return k|0}if(0!=(b[(c[j>>2]|0)+28>>1]&2048|0)){k=c[g>>2]|0;i=h;return k|0}k=(c[f>>2]|0)+28|0;b[k>>1]=e[k>>1]|0|4096;c[g>>2]=ur(c[f>>2]|0)|0;k=c[g>>2]|0;i=h;return k|0}function fe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;ge((c[f>>2]|0)+8|0,c[e>>2]|0);i=d;return}function ge(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=d;c[h>>2]=e;Gd(c[g>>2]|0);b[(c[g>>2]|0)+28>>1]=16400;c[(c[g>>2]|0)+24>>2]=0;if((c[h>>2]|0)<0){c[h>>2]=0}c[(c[g>>2]|0)+16>>2]=c[h>>2];a[(c[g>>2]|0)+30>>0]=1;i=f;return}function he(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=d;c[h>>2]=e;c[(c[g>>2]|0)+64>>2]=c[h>>2];a[(c[g>>2]|0)+69>>0]=1;if((b[(c[g>>2]|0)+36>>1]&1|0)==0){i=f;return}d=(c[g>>2]|0)+8|0;Yd(d,ie(c[h>>2]|0)|0,-1,1,0)|0;i=f;return}function ie(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=12544;if((c[e>>2]|0)==516){c[b>>2]=12560}else{c[e>>2]=c[e>>2]&255;if((c[e>>2]|0)>=0&(c[e>>2]|0)<27){if((c[11720+(c[e>>2]<<2)>>2]|0)!=0){c[b>>2]=c[11720+(c[e>>2]<<2)>>2]}}}i=d;return c[b>>2]|0}function je(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;c[(c[e>>2]|0)+64>>2]=18;a[(c[e>>2]|0)+69>>0]=1;Yd((c[e>>2]|0)+8|0,1520,-1,1,0)|0;i=d;return}function ke(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;be((c[e>>2]|0)+8|0);c[(c[e>>2]|0)+64>>2]=7;a[(c[e>>2]|0)+69>>0]=1;a[(c[(c[e>>2]|0)+8>>2]|0)+64>>0]=1;i=d;return}function le(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e+28|0;n=e;k=e+4|0;l=e+8|0;j=e+12|0;m=e+16|0;g=e+20|0;h=e+24|0;c[n>>2]=d;c[k>>2]=0;c[l>>2]=0;c[j>>2]=c[n>>2];c[m>>2]=0;if((me(c[j>>2]|0)|0)!=0){c[f>>2]=Xb(66253)|0;n=c[f>>2]|0;i=e;return n|0}c[g>>2]=c[c[j>>2]>>2];d=(c[j>>2]|0)+88|0;b[d>>1]=b[d>>1]&-2049;while(1){d=ne(c[j>>2]|0)|0;c[k>>2]=d;if((d|0)!=17){break}d=c[m>>2]|0;c[m>>2]=d+1;if((d|0)>=50){break}d=oe(c[j>>2]|0)|0;c[k>>2]=d;c[l>>2]=d;if((d|0)!=0){break}Cd(c[n>>2]|0)|0;d=(c[j>>2]|0)+88|0;b[d>>1]=b[d>>1]&-2049|2048}do{if((c[l>>2]|0)!=0){c[h>>2]=Jd(c[(c[g>>2]|0)+224>>2]|0)|0;cc(c[g>>2]|0,c[(c[j>>2]|0)+44>>2]|0);if((a[(c[g>>2]|0)+64>>0]|0)!=0){c[(c[j>>2]|0)+44>>2]=0;c[k>>2]=7;c[(c[j>>2]|0)+80>>2]=7;break}else{n=pe(c[g>>2]|0,c[h>>2]|0)|0;c[(c[j>>2]|0)+44>>2]=n;c[(c[j>>2]|0)+80>>2]=c[l>>2];break}}}while(0);c[k>>2]=Bd(c[g>>2]|0,c[k>>2]|0)|0;c[f>>2]=c[k>>2];n=c[f>>2]|0;i=e;return n|0}function me(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;c[e>>2]=a;if((c[e>>2]|0)==0){zc(21,43512,b);c[d>>2]=1;e=c[d>>2]|0;i=b;return e|0}else{c[d>>2]=zd(c[e>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}return 0}function ne(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;g=h+20|0;l=h+16|0;k=h+8|0;j=h+12|0;m=h;c[l>>2]=d;if((c[(c[l>>2]|0)+40>>2]|0)!=-1108210269){Cd(c[l>>2]|0)|0}c[k>>2]=c[c[l>>2]>>2];d=c[l>>2]|0;if((a[(c[k>>2]|0)+64>>0]|0)!=0){c[d+80>>2]=7;c[g>>2]=7;d=c[g>>2]|0;i=h;return d|0}if((c[d+76>>2]|0)<=0){if(((e[(c[l>>2]|0)+88>>1]|0)>>>5&1|0)!=0){c[(c[l>>2]|0)+80>>2]=17;c[j>>2]=1}else{f=8}}else{f=8}if((f|0)==8){if((c[(c[l>>2]|0)+76>>2]|0)<0){if((c[(c[k>>2]|0)+140>>2]|0)==0){c[(c[k>>2]|0)+232>>2]=0}if((c[(c[k>>2]|0)+172>>2]|0)!=0){if((a[(c[k>>2]|0)+137>>0]|0)==0){Gt(c[c[k>>2]>>2]|0,(c[l>>2]|0)+128|0)|0}}d=(c[k>>2]|0)+140|0;c[d>>2]=(c[d>>2]|0)+1;if(((e[(c[l>>2]|0)+88>>1]|0)>>>8&1|0)==0){d=(c[k>>2]|0)+148|0;c[d>>2]=(c[d>>2]|0)+1}if(((e[(c[l>>2]|0)+88>>1]|0)>>>9&1|0)!=0){d=(c[k>>2]|0)+144|0;c[d>>2]=(c[d>>2]|0)+1}c[(c[l>>2]|0)+76>>2]=0}if((b[(c[l>>2]|0)+88>>1]&3|0)!=0){c[j>>2]=vF(c[l>>2]|0)|0}else{d=(c[k>>2]|0)+152|0;c[d>>2]=(c[d>>2]|0)+1;c[j>>2]=wF(c[l>>2]|0)|0;d=(c[k>>2]|0)+152|0;c[d>>2]=(c[d>>2]|0)+ -1}if((c[j>>2]|0)!=100){if((c[(c[k>>2]|0)+172>>2]|0)!=0){if((a[(c[k>>2]|0)+137>>0]|0)==0){if((c[(c[l>>2]|0)+168>>2]|0)!=0){Gt(c[c[k>>2]>>2]|0,m)|0;o=c[(c[k>>2]|0)+172>>2]|0;n=c[(c[k>>2]|0)+176>>2]|0;f=c[(c[l>>2]|0)+168>>2]|0;d=(c[l>>2]|0)+128|0;d=$K(c[m>>2]|0,c[m+4>>2]|0,c[d>>2]|0,c[d+4>>2]|0)|0;d=nL(d|0,D|0,1e6,0)|0;Bb[o&3](n,f,d,D)}}}}if((c[j>>2]|0)==101){o=xF(c[k>>2]|0)|0;c[(c[l>>2]|0)+80>>2]=o;if((c[(c[l>>2]|0)+80>>2]|0)!=0){c[j>>2]=1}}c[(c[k>>2]|0)+52>>2]=c[j>>2];if(7==(Bd(c[c[l>>2]>>2]|0,c[(c[l>>2]|0)+80>>2]|0)|0)){c[(c[l>>2]|0)+80>>2]=7}}if(((e[(c[l>>2]|0)+88>>1]|0)>>>10&1|0)!=0){if((c[j>>2]|0)!=100&(c[j>>2]|0)!=101){c[j>>2]=yF(c[l>>2]|0)|0}}c[g>>2]=c[j>>2]&c[(c[k>>2]|0)+56>>2];o=c[g>>2]|0;i=h;return o|0}function oe(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;g=d;h=d+4|0;f=d+8|0;k=d+12|0;j=d+16|0;c[g>>2]=b;c[k>>2]=xd(c[g>>2]|0)|0;c[j>>2]=mz(c[g>>2]|0)|0;c[h>>2]=Hf(c[j>>2]|0,c[k>>2]|0,-1,0,c[g>>2]|0,f,0)|0;if((c[h>>2]|0)==0){cF(c[f>>2]|0,c[g>>2]|0);Xe(c[f>>2]|0,c[g>>2]|0)|0;dF(c[f>>2]|0);Ad(c[f>>2]|0)|0;c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}if((c[h>>2]|0)==7){a[(c[j>>2]|0)+64>>0]=1}c[e>>2]=c[h>>2];k=c[e>>2]|0;i=d;return k|0}function pe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;j=d;g=d+4|0;f=d+8|0;h=d+12|0;c[j>>2]=a;c[g>>2]=b;if((c[g>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[h>>2]=(Ub(c[g>>2]|0)|0)+1;c[f>>2]=$e(c[j>>2]|0,c[h>>2]|0)|0;if((c[f>>2]|0)!=0){fL(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0}c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}function qe(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[c[b>>2]>>2]|0)+4>>2]|0}function re(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+8>>2]|0}function se(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=f+8|0;g=f;e=f+4|0;c[h>>2]=a;c[g>>2]=d;c[e>>2]=c[(c[h>>2]|0)+48>>2];do{if((b[(c[e>>2]|0)+28>>1]&8192|0)==0){d=c[e>>2]|0;if((c[g>>2]|0)<=0){te(d);b[(c[e>>2]|0)+28>>1]=1;c[(c[e>>2]|0)+4>>2]=0;break}ue(d,c[g>>2]|0,0)|0;b[(c[e>>2]|0)+28>>1]=8192;c[(c[e>>2]|0)+16>>2]=c[c[h>>2]>>2];if((c[(c[e>>2]|0)+4>>2]|0)!=0){aL(c[(c[e>>2]|0)+4>>2]|0,0,c[g>>2]|0)|0}}}while(0);i=f;return c[(c[e>>2]|0)+4>>2]|0}function te(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;c[e>>2]=a;f=c[e>>2]|0;if((b[(c[e>>2]|0)+28>>1]&8192|0)!=0){tF(f,c[(c[e>>2]|0)+16>>2]|0)|0;Gd(c[e>>2]|0);i=d;return}a=c[e>>2]|0;if((b[f+28>>1]&1024|0)!=0){rb[c[a+32>>2]&31](c[(c[e>>2]|0)+4>>2]|0);c[(c[e>>2]|0)+32>>2]=0;i=d;return}f=c[e>>2]|0;if((b[a+28>>1]&32|0)!=0){uF(c[f+16>>2]|0);i=d;return}if((b[f+28>>1]&64|0)==0){i=d;return}be(c[e>>2]|0);i=d;return}function ue(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+16|0;j=k+12|0;h=k;l=k+4|0;m=k+8|0;c[h>>2]=a;c[l>>2]=d;c[m>>2]=f;if((c[(c[h>>2]|0)+36>>2]|0)==0){g=3}else{a=Vv(c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+36>>2]|0)|0;if((a|0)<(c[l>>2]|0)){g=3}}if((g|0)==3){if((c[l>>2]|0)<32){c[l>>2]=32}if((c[m>>2]|0)!=0){if((c[(c[h>>2]|0)+4>>2]|0)==(c[(c[h>>2]|0)+36>>2]|0)){a=Ey(c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0,c[l>>2]|0)|0;c[(c[h>>2]|0)+36>>2]=a;c[(c[h>>2]|0)+4>>2]=a;c[m>>2]=0}else{g=8}}else{g=8}if((g|0)==8){cc(c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+36>>2]|0);a=$e(c[c[h>>2]>>2]|0,c[l>>2]|0)|0;c[(c[h>>2]|0)+36>>2]=a}if((c[(c[h>>2]|0)+36>>2]|0)==0){if((b[(c[h>>2]|0)+28>>1]&9312|0)!=0){te(c[h>>2]|0)}c[(c[h>>2]|0)+4>>2]=0;b[(c[h>>2]|0)+28>>1]=1;c[j>>2]=7;a=c[j>>2]|0;i=k;return a|0}}if((c[(c[h>>2]|0)+4>>2]|0)!=0){if((c[m>>2]|0)!=0){if((c[(c[h>>2]|0)+4>>2]|0)!=(c[(c[h>>2]|0)+36>>2]|0)){fL(c[(c[h>>2]|0)+36>>2]|0,c[(c[h>>2]|0)+4>>2]|0,c[(c[h>>2]|0)+24>>2]|0)|0}}}if((b[(c[h>>2]|0)+28>>1]&1024|0)!=0){rb[c[(c[h>>2]|0)+32>>2]&31](c[(c[h>>2]|0)+4>>2]|0)}c[(c[h>>2]|0)+4>>2]=c[(c[h>>2]|0)+36>>2];a=(c[h>>2]|0)+28|0;b[a>>1]=(e[a>>1]|0)&-7169;c[(c[h>>2]|0)+32>>2]=0;c[j>>2]=0;a=c[j>>2]|0;i=k;return a|0}function ve(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=$e(c[g>>2]|0,c[f>>2]|0)|0;if((c[e>>2]|0)==0){g=c[e>>2]|0;i=d;return g|0}aL(c[e>>2]|0,0,c[f>>2]|0)|0;g=c[e>>2]|0;i=d;return g|0}function we(a){a=a|0;var b=0,d=0,f=0;b=i;i=i+16|0;f=b+4|0;d=b;c[f>>2]=a;c[d>>2]=c[f>>2];if((c[d>>2]|0)==0){f=0;i=b;return f|0}f=e[(c[d>>2]|0)+84>>1]|0;i=b;return f|0}function xe(a){a=a|0;var b=0,d=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;g=b;f=b+4|0;c[g>>2]=a;c[f>>2]=c[g>>2];if((c[f>>2]|0)!=0){if((c[(c[f>>2]|0)+20>>2]|0)!=0){c[d>>2]=e[(c[f>>2]|0)+84>>1]|0;g=c[d>>2]|0;i=b;return g|0}}c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}function ye(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;d=e+4|0;c[f>>2]=a;c[g>>2]=b;c[d>>2]=Hd(ze(c[f>>2]|0,c[g>>2]|0)|0)|0;Ae(c[f>>2]|0);i=e;return c[d>>2]|0}function ze(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;h=i;i=i+32|0;j=h;k=h+16|0;f=h+4|0;d=h+8|0;g=h+12|0;c[k>>2]=a;c[f>>2]=b;c[d>>2]=c[k>>2];if((c[d>>2]|0)!=0){if((c[(c[d>>2]|0)+20>>2]|0)!=0){if((c[f>>2]|0)>=0?(c[f>>2]|0)<(e[(c[d>>2]|0)+84>>1]|0|0):0){c[g>>2]=(c[(c[d>>2]|0)+20>>2]|0)+((c[f>>2]|0)*40|0);k=c[g>>2]|0;i=h;return k|0}}}if((c[d>>2]|0)!=0){if((c[c[d>>2]>>2]|0)!=0){Rc(c[c[d>>2]>>2]|0,25,0,j)}}c[g>>2]=sF()|0;k=c[g>>2]|0;i=h;return k|0}function Ae(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];if((c[d>>2]|0)==0){i=b;return}e=Bd(c[c[d>>2]>>2]|0,c[(c[d>>2]|0)+80>>2]|0)|0;c[(c[d>>2]|0)+80>>2]=e;i=b;return}function Be(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;d=e+4|0;c[f>>2]=a;c[g>>2]=b;c[d>>2]=Kd(ze(c[f>>2]|0,c[g>>2]|0)|0)|0;Ae(c[f>>2]|0);i=e;return c[d>>2]|0}function Ce(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;d=e;c[f>>2]=a;c[g>>2]=b;h[d>>3]=+Md(ze(c[f>>2]|0,c[g>>2]|0)|0);Ae(c[f>>2]|0);i=e;return+(+h[d>>3])}function De(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;d=e+4|0;c[f>>2]=a;c[g>>2]=b;c[d>>2]=Od(ze(c[f>>2]|0,c[g>>2]|0)|0)|0;Ae(c[f>>2]|0);i=e;return c[d>>2]|0}function Ee(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+12|0;g=d+8|0;e=d;c[f>>2]=a;c[g>>2]=b;b=Qd(ze(c[f>>2]|0,c[g>>2]|0)|0)|0;a=e;c[a>>2]=b;c[a+4>>2]=D;Ae(c[f>>2]|0);a=e;D=c[a+4>>2]|0;i=d;return c[a>>2]|0}function Fe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;d=e+4|0;c[f>>2]=a;c[g>>2]=b;c[d>>2]=Jd(ze(c[f>>2]|0,c[g>>2]|0)|0)|0;Ae(c[f>>2]|0);i=e;return c[d>>2]|0}function Ge(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;h=f+8|0;j=f;g=f+4|0;c[h>>2]=a;c[j>>2]=d;c[g>>2]=ze(c[h>>2]|0,c[j>>2]|0)|0;if((b[(c[g>>2]|0)+28>>1]&2048|0)==0){j=c[h>>2]|0;Ae(j);j=c[g>>2]|0;i=f;return j|0}j=(c[g>>2]|0)+28|0;b[j>>1]=(e[j>>1]|0)&-2049;j=(c[g>>2]|0)+28|0;b[j>>1]=e[j>>1]|0|4096;j=c[h>>2]|0;Ae(j);j=c[g>>2]|0;i=f;return j|0}function He(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;d=e+4|0;c[f>>2]=a;c[g>>2]=b;c[d>>2]=Sd(ze(c[f>>2]|0,c[g>>2]|0)|0)|0;Ae(c[f>>2]|0);i=e;return c[d>>2]|0}function Ie(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=Je(c[f>>2]|0,c[e>>2]|0,40,0)|0;i=d;return a|0}function Je(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+32|0;p=m+28|0;g=m;n=m+4|0;k=m+8|0;h=m+12|0;o=m+16|0;l=m+20|0;j=m+24|0;c[p>>2]=b;c[g>>2]=d;c[n>>2]=e;c[k>>2]=f;c[h>>2]=0;c[o>>2]=c[p>>2];c[j>>2]=c[c[o>>2]>>2];c[l>>2]=we(c[p>>2]|0)|0;if(!((c[g>>2]|0)>=0?(c[g>>2]|0)<(c[l>>2]|0):0)){p=c[h>>2]|0;i=m;return p|0}p=$(c[k>>2]|0,c[l>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+p;c[h>>2]=ub[c[n>>2]&63]((c[(c[o>>2]|0)+16>>2]|0)+((c[g>>2]|0)*40|0)|0)|0;if((a[(c[j>>2]|0)+64>>0]|0)==0){p=c[h>>2]|0;i=m;return p|0}a[(c[j>>2]|0)+64>>0]=0;c[h>>2]=0;p=c[h>>2]|0;i=m;return p|0}function Ke(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+16|0;l=g;k=g+4|0;j=g+8|0;h=g+12|0;c[m>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;a=Le(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,0)|0;i=g;return a|0}function Le(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;r=i;i=i+48|0;q=r;u=r+28|0;k=r+24|0;n=r+20|0;t=r+12|0;m=r+32|0;o=r+36|0;p=r+4|0;s=r+16|0;l=r+8|0;c[u>>2]=b;c[k>>2]=e;c[n>>2]=f;c[t>>2]=g;c[m>>2]=h;a[o>>0]=j;c[p>>2]=c[u>>2];c[l>>2]=Ne(c[p>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)!=0){if(!((c[m>>2]|0)!=0&(c[m>>2]|0)!=(-1|0))){u=c[l>>2]|0;i=r;return u|0}rb[c[m>>2]&31](c[n>>2]|0);u=c[l>>2]|0;i=r;return u|0}if((c[n>>2]|0)==0){u=c[l>>2]|0;i=r;return u|0}c[s>>2]=(c[(c[p>>2]|0)+60>>2]|0)+(((c[k>>2]|0)-1|0)*40|0);c[l>>2]=Yd(c[s>>2]|0,c[n>>2]|0,c[t>>2]|0,a[o>>0]|0,c[m>>2]|0)|0;if((c[l>>2]|0)==0){if((d[o>>0]|0|0)!=0){c[l>>2]=sr(c[s>>2]|0,d[(c[(c[(c[c[p>>2]>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0)|0}}Rc(c[c[p>>2]>>2]|0,c[l>>2]|0,0,q);c[l>>2]=Bd(c[c[p>>2]>>2]|0,c[l>>2]|0)|0;u=c[l>>2]|0;i=r;return u|0}function Me(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+32|0;l=e+20|0;j=e+8|0;k=e;f=e+12|0;g=e+16|0;c[l>>2]=a;c[j>>2]=b;h[k>>3]=d;c[g>>2]=c[l>>2];c[f>>2]=Ne(c[g>>2]|0,c[j>>2]|0)|0;if((c[f>>2]|0)!=0){l=c[f>>2]|0;i=e;return l|0}Wd((c[(c[g>>2]|0)+60>>2]|0)+(((c[j>>2]|0)-1|0)*40|0)|0,+h[k>>3]);l=c[f>>2]|0;i=e;return l|0}function Ne(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g;h=g+16|0;j=g+4|0;k=g+8|0;l=g+12|0;c[j>>2]=a;c[k>>2]=d;if((me(c[j>>2]|0)|0)!=0){c[h>>2]=Xb(66775)|0;a=c[h>>2]|0;i=g;return a|0}if(!((c[(c[j>>2]|0)+40>>2]|0)!=-1108210269)){if((c[(c[j>>2]|0)+76>>2]|0)<0){if((c[k>>2]|0)>=1){if((c[k>>2]|0)<=(b[(c[j>>2]|0)+68>>1]|0)){c[k>>2]=(c[k>>2]|0)+ -1;c[l>>2]=(c[(c[j>>2]|0)+60>>2]|0)+((c[k>>2]|0)*40|0);Gd(c[l>>2]|0);b[(c[l>>2]|0)+28>>1]=1;Rc(c[c[j>>2]>>2]|0,0,0,m);do{if(((e[(c[j>>2]|0)+88>>1]|0)>>>10&1|0)!=0){if((c[k>>2]|0)<32){if((c[(c[j>>2]|0)+188>>2]&1<>2]|0)==0){f=12}}else{f=12}if((f|0)==12){if(!((c[(c[j>>2]|0)+188>>2]|0)==-1)){break}}a=(c[j>>2]|0)+88|0;b[a>>1]=b[a>>1]&-33|32}}while(0);c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}}Rc(c[c[j>>2]>>2]|0,25,0,m);c[h>>2]=25;a=c[h>>2]|0;i=g;return a|0}}Rc(c[c[j>>2]>>2]|0,21,0,m);c[m>>2]=c[(c[j>>2]|0)+168>>2];zc(21,37664,m);c[h>>2]=Xb(66783)|0;a=c[h>>2]|0;i=g;return a|0}function Oe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;f=e;h=e+4|0;c[g>>2]=a;c[f>>2]=b;c[h>>2]=d;a=c[h>>2]|0;a=Pe(c[g>>2]|0,c[f>>2]|0,a,((a|0)<0)<<31>>31)|0;i=e;return a|0}function Pe(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+20|0;k=f+8|0;h=f;g=f+12|0;j=f+16|0;c[l>>2]=a;c[k>>2]=b;a=h;c[a>>2]=d;c[a+4>>2]=e;c[j>>2]=c[l>>2];c[g>>2]=Ne(c[j>>2]|0,c[k>>2]|0)|0;if((c[g>>2]|0)!=0){l=c[g>>2]|0;i=f;return l|0}l=h;_d((c[(c[j>>2]|0)+60>>2]|0)+(((c[k>>2]|0)-1|0)*40|0)|0,c[l>>2]|0,c[l+4>>2]|0);l=c[g>>2]|0;i=f;return l|0}function Qe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+12|0;f=e;d=e+4|0;g=e+8|0;c[h>>2]=a;c[f>>2]=b;c[g>>2]=c[h>>2];c[d>>2]=Ne(c[g>>2]|0,c[f>>2]|0)|0;i=e;return c[d>>2]|0}function Re(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+16|0;l=g;k=g+4|0;j=g+8|0;h=g+12|0;c[m>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;a=Le(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,1)|0;i=g;return a|0}function Se(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0;k=i;i=i+16|0;m=k+12|0;l=k;j=k+4|0;g=k+8|0;c[m>>2]=d;c[l>>2]=e;c[j>>2]=f;e=Sd(c[j>>2]|0)|0;if((e|0)==3){c[g>>2]=Le(c[m>>2]|0,c[l>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+24>>2]|0,-1,a[(c[j>>2]|0)+30>>0]|0)|0;d=c[g>>2]|0;i=k;return d|0}else if((e|0)==1){d=(c[j>>2]|0)+16|0;c[g>>2]=Pe(c[m>>2]|0,c[l>>2]|0,c[d>>2]|0,c[d+4>>2]|0)|0;d=c[g>>2]|0;i=k;return d|0}else if((e|0)==4){m=c[m>>2]|0;e=c[l>>2]|0;l=c[j>>2]|0;if((b[(c[j>>2]|0)+28>>1]&16384|0)!=0){c[g>>2]=Te(m,e,c[l+16>>2]|0)|0;d=c[g>>2]|0;i=k;return d|0}else{c[g>>2]=Ke(m,e,c[l+4>>2]|0,c[(c[j>>2]|0)+24>>2]|0,-1)|0;d=c[g>>2]|0;i=k;return d|0}}else if((e|0)==2){c[g>>2]=Me(c[m>>2]|0,c[l>>2]|0,+h[(c[j>>2]|0)+8>>3])|0;d=c[g>>2]|0;i=k;return d|0}else{c[g>>2]=Qe(c[m>>2]|0,c[l>>2]|0)|0;d=c[g>>2]|0;i=k;return d|0}return 0}function Te(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;h=e;j=e+4|0;f=e+8|0;g=e+12|0;c[k>>2]=a;c[h>>2]=b;c[j>>2]=d;c[g>>2]=c[k>>2];c[f>>2]=Ne(c[g>>2]|0,c[h>>2]|0)|0;if((c[f>>2]|0)!=0){k=c[f>>2]|0;i=e;return k|0}ge((c[(c[g>>2]|0)+60>>2]|0)+(((c[h>>2]|0)-1|0)*40|0)|0,c[j>>2]|0);k=c[f>>2]|0;i=e;return k|0}function Ue(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=c[f>>2];if((c[e>>2]|0)==0){f=0;i=d;return f|0}f=b[(c[e>>2]|0)+68>>1]|0;i=d;return f|0}function Ve(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;b=c[f>>2]|0;a=c[e>>2]|0;a=We(b,a,Ub(c[e>>2]|0)|0)|0;i=d;return a|0}function We(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;m=g;k=g+4|0;l=g+8|0;n=g+12|0;j=g+16|0;c[m>>2]=d;c[k>>2]=e;c[l>>2]=f;if((c[m>>2]|0)==0){c[h>>2]=0;d=c[h>>2]|0;i=g;return d|0}a:do{if((c[k>>2]|0)!=0){c[n>>2]=0;while(1){if((c[n>>2]|0)>=(b[(c[m>>2]|0)+70>>1]|0)){break a}c[j>>2]=c[(c[(c[m>>2]|0)+64>>2]|0)+(c[n>>2]<<2)>>2];if((c[j>>2]|0)!=0){if((ZK(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)==0){if((a[(c[j>>2]|0)+(c[l>>2]|0)>>0]|0)==0){break}}}c[n>>2]=(c[n>>2]|0)+1}c[h>>2]=(c[n>>2]|0)+1;d=c[h>>2]|0;i=g;return d|0}}while(0);c[h>>2]=0;d=c[h>>2]|0;i=g;return d|0}function Xe(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;j=e;g=e+4|0;h=e+8|0;f=e+12|0;c[k>>2]=a;c[j>>2]=d;c[g>>2]=c[k>>2];c[h>>2]=c[j>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(b[(c[g>>2]|0)+68>>1]|0)){break}rF((c[(c[h>>2]|0)+60>>2]|0)+((c[f>>2]|0)*40|0)|0,(c[(c[g>>2]|0)+60>>2]|0)+((c[f>>2]|0)*40|0)|0);c[f>>2]=(c[f>>2]|0)+1}i=e;return 0}function Ye(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+8|0;d=b;f=b+4|0;c[e>>2]=a;c[d>>2]=Sd(c[e>>2]|0)|0;if((c[d>>2]|0)!=3){f=c[d>>2]|0;i=b;return f|0}c[f>>2]=c[e>>2];Ze(c[f>>2]|0);c[d>>2]=Sd(c[e>>2]|0)|0;f=c[d>>2]|0;i=b;return f|0}function Ze(d){d=d|0;var f=0,g=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;l=f;j=f+8|0;k=f+20|0;c[g>>2]=d;if((b[(c[g>>2]|0)+28>>1]&12|0)!=0){i=f;return}a[k>>0]=a[(c[g>>2]|0)+30>>0]|0;if((b[(c[g>>2]|0)+28>>1]&2|0)==0){i=f;return}if((zt(c[(c[g>>2]|0)+4>>2]|0,l,c[(c[g>>2]|0)+24>>2]|0,a[k>>0]|0)|0)==0){i=f;return}if(0==(Pg(c[(c[g>>2]|0)+4>>2]|0,j,c[(c[g>>2]|0)+24>>2]|0,a[k>>0]|0)|0)){k=c[j+4>>2]|0;l=(c[g>>2]|0)+16|0;c[l>>2]=c[j>>2];c[l+4>>2]=k;l=(c[g>>2]|0)+28|0;b[l>>1]=e[l>>1]|0|4;i=f;return}else{h[(c[g>>2]|0)+8>>3]=+h[l>>3];l=(c[g>>2]|0)+28|0;b[l>>1]=e[l>>1]|0|8;i=f;return}}function _e(f,g,h,j,k,l,m,n){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;p=i;i=i+96|0;v=p+8|0;t=p+84|0;I=p+80|0;y=p+76|0;o=p+72|0;G=p;E=p+68|0;x=p+64|0;H=p+60|0;z=p+56|0;s=p+52|0;w=p+88|0;C=p+24|0;q=p+12|0;u=p+16|0;r=p+20|0;K=p+28|0;B=p+36|0;A=p+40|0;J=p+44|0;F=p+32|0;D=p+48|0;c[t>>2]=f;c[I>>2]=g;c[y>>2]=h;c[o>>2]=j;f=G;c[f>>2]=k;c[f+4>>2]=l;c[E>>2]=m;c[x>>2]=n;c[H>>2]=0;c[s>>2]=0;c[w>>2]=0;c[q>>2]=0;c[u>>2]=0;c[E>>2]=((c[E>>2]|0)!=0^1^1)&1;c[c[x>>2]>>2]=0;c[u>>2]=ve(c[t>>2]|0,28)|0;a:do{if((c[u>>2]|0)!=0){c[q>>2]=$e(c[t>>2]|0,536)|0;if((c[q>>2]|0)!=0){while(1){aL(c[q>>2]|0,0,536)|0;c[c[q>>2]>>2]=c[t>>2];cc(c[t>>2]|0,c[w>>2]|0);c[w>>2]=0;Yb(c[t>>2]|0);c[C>>2]=af(c[q>>2]|0,0,c[y>>2]|0,c[I>>2]|0)|0;if((c[C>>2]|0)!=0){if((a[(c[C>>2]|0)+44>>0]&16|0)!=0){c[C>>2]=0;f=c[q>>2]|0;c[v>>2]=c[y>>2];bf(f,1584,v)}}if((c[C>>2]|0)!=0){if((a[(c[C>>2]|0)+44>>0]&32|0)!=0){c[C>>2]=0;f=c[q>>2]|0;c[v>>2]=c[y>>2];bf(f,1616,v)}}if((c[C>>2]|0)!=0){if((c[(c[C>>2]|0)+12>>2]|0)!=0){c[C>>2]=0;f=c[q>>2]|0;c[v>>2]=c[y>>2];bf(f,1656,v)}}if((c[C>>2]|0)==0){y=13;break}c[z>>2]=0;while(1){if((c[z>>2]|0)>=(b[(c[C>>2]|0)+38>>1]|0)){break}if((Dc(c[(c[(c[C>>2]|0)+4>>2]|0)+((c[z>>2]|0)*24|0)>>2]|0,c[o>>2]|0)|0)==0){break}c[z>>2]=(c[z>>2]|0)+1}if((c[z>>2]|0)==(b[(c[C>>2]|0)+38>>1]|0)){y=21;break}if((c[E>>2]|0)!=0){c[r>>2]=0;b:do{if((c[(c[t>>2]|0)+24>>2]&524288|0)!=0){c[B>>2]=c[(c[C>>2]|0)+16>>2];while(1){if((c[B>>2]|0)==0){break b}c[A>>2]=0;while(1){if((c[A>>2]|0)>=(c[(c[B>>2]|0)+20>>2]|0)){break}if((c[(c[B>>2]|0)+36+(c[A>>2]<<3)>>2]|0)==(c[z>>2]|0)){c[r>>2]=1704}c[A>>2]=(c[A>>2]|0)+1}c[B>>2]=c[(c[B>>2]|0)+4>>2]}}}while(0);c[K>>2]=c[(c[C>>2]|0)+8>>2];while(1){if((c[K>>2]|0)==0){break}c[J>>2]=0;while(1){if((c[J>>2]|0)>=(e[(c[K>>2]|0)+50>>1]|0)){break}if((b[(c[(c[K>>2]|0)+4>>2]|0)+(c[J>>2]<<1)>>1]|0)==(c[z>>2]|0)){c[r>>2]=1720}c[J>>2]=(c[J>>2]|0)+1}c[K>>2]=c[(c[K>>2]|0)+20>>2]}if((c[r>>2]|0)!=0){y=41;break}}f=df(c[q>>2]|0)|0;c[(c[u>>2]|0)+20>>2]=f;if((c[(c[u>>2]|0)+20>>2]|0)!=0){c[F>>2]=c[(c[u>>2]|0)+20>>2];c[D>>2]=ef(c[t>>2]|0,c[(c[C>>2]|0)+68>>2]|0)|0;ff(c[F>>2]|0,4,c[D>>2]|0,c[E>>2]|0,c[c[(c[C>>2]|0)+68>>2]>>2]|0,c[(c[(c[C>>2]|0)+68>>2]|0)+4>>2]|0)|0;gf(c[F>>2]|0,1);hf(c[F>>2]|0,10,1544,0)|0;jf(c[F>>2]|0,c[D>>2]|0);kf(c[F>>2]|0,1,c[D>>2]|0);lf(c[F>>2]|0,1,c[(c[C>>2]|0)+32>>2]|0);mf(c[F>>2]|0,1,c[E>>2]|0);nf(c[F>>2]|0,1,c[c[C>>2]>>2]|0,0);of(c[F>>2]|0,3-(c[E>>2]|0)|0);lf(c[F>>2]|0,2+(c[E>>2]|0)|0,c[(c[C>>2]|0)+32>>2]|0);mf(c[F>>2]|0,2+(c[E>>2]|0)|0,c[D>>2]|0);nf(c[F>>2]|0,2+(c[E>>2]|0)|0,(b[(c[C>>2]|0)+38>>1]|0)+1|0,-14);lf(c[F>>2]|0,6,b[(c[C>>2]|0)+38>>1]|0);if((a[(c[t>>2]|0)+64>>0]|0)==0){c[(c[q>>2]|0)+440>>2]=1;c[(c[q>>2]|0)+72>>2]=1;c[(c[q>>2]|0)+68>>2]=1;pf(c[F>>2]|0,c[q>>2]|0)}}c[c[u>>2]>>2]=c[E>>2];c[(c[u>>2]|0)+12>>2]=c[z>>2];c[(c[u>>2]|0)+24>>2]=c[t>>2];if((a[(c[t>>2]|0)+64>>0]|0)!=0){break a}f=G;Pe(c[(c[u>>2]|0)+20>>2]|0,1,c[f>>2]|0,c[f+4>>2]|0)|0;f=G;c[s>>2]=qf(c[u>>2]|0,c[f>>2]|0,c[f+4>>2]|0,w)|0;f=(c[H>>2]|0)+1|0;c[H>>2]=f;if((f|0)>=50){break a}if((c[s>>2]|0)!=17){break a}}if((y|0)==13){if((c[(c[q>>2]|0)+4>>2]|0)!=0){cc(c[t>>2]|0,c[w>>2]|0);c[w>>2]=c[(c[q>>2]|0)+4>>2];c[(c[q>>2]|0)+4>>2]=0}c[s>>2]=1;break}else if((y|0)==21){cc(c[t>>2]|0,c[w>>2]|0);f=c[t>>2]|0;c[v>>2]=c[o>>2];c[w>>2]=cf(f,1680,v)|0;c[s>>2]=1;break}else if((y|0)==41){cc(c[t>>2]|0,c[w>>2]|0);f=c[t>>2]|0;c[v>>2]=c[r>>2];c[w>>2]=cf(f,1728,v)|0;c[s>>2]=1;break}}}}while(0);if((c[s>>2]|0)==0){if((d[(c[t>>2]|0)+64>>0]|0)==0){c[c[x>>2]>>2]=c[u>>2];h=c[t>>2]|0;f=c[s>>2]|0;g=c[w>>2]|0;g=(g|0)!=0;g=g?1768:0;j=c[w>>2]|0;c[v>>2]=j;Rc(h,f,g,v);g=c[t>>2]|0;f=c[w>>2]|0;cc(g,f);f=c[q>>2]|0;rf(f);f=c[t>>2]|0;g=c[q>>2]|0;cc(f,g);g=c[t>>2]|0;f=c[s>>2]|0;f=Bd(g,f)|0;c[s>>2]=f;f=c[s>>2]|0;i=p;return f|0}}if((c[u>>2]|0)!=0){if((c[(c[u>>2]|0)+20>>2]|0)!=0){Ad(c[(c[u>>2]|0)+20>>2]|0)|0}}cc(c[t>>2]|0,c[u>>2]|0);h=c[t>>2]|0;f=c[s>>2]|0;g=c[w>>2]|0;g=(g|0)!=0;g=g?1768:0;j=c[w>>2]|0;c[v>>2]=j;Rc(h,f,g,v);g=c[t>>2]|0;f=c[w>>2]|0;cc(g,f);f=c[q>>2]|0;rf(f);f=c[t>>2]|0;g=c[q>>2]|0;cc(f,g);g=c[t>>2]|0;f=c[s>>2]|0;f=Bd(g,f)|0;c[s>>2]=f;f=c[s>>2]|0;i=p;return f|0}function $e(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;k=f;h=f+4|0;j=f+8|0;l=f+12|0;c[k>>2]=b;c[h>>2]=d;do{if((c[k>>2]|0)!=0){if((a[(c[k>>2]|0)+64>>0]|0)!=0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}if((a[(c[k>>2]|0)+242>>0]|0)!=0){d=(c[k>>2]|0)+240|0;if((c[h>>2]|0)>(e[(c[k>>2]|0)+240>>1]|0)){b=d+16|0;c[b>>2]=(c[b>>2]|0)+1;break}b=c[d+24>>2]|0;c[l>>2]=b;if((b|0)==0){b=(c[k>>2]|0)+260|0;c[b>>2]=(c[b>>2]|0)+1;break}c[(c[k>>2]|0)+264>>2]=c[c[l>>2]>>2];b=(c[k>>2]|0)+244|0;c[b>>2]=(c[b>>2]|0)+1;b=(c[k>>2]|0)+252|0;c[b>>2]=(c[b>>2]|0)+1;if((c[(c[k>>2]|0)+244>>2]|0)>(c[(c[k>>2]|0)+248>>2]|0)){c[(c[k>>2]|0)+248>>2]=c[(c[k>>2]|0)+244>>2]}c[g>>2]=c[l>>2];b=c[g>>2]|0;i=f;return b|0}}}while(0);c[j>>2]=nc(c[h>>2]|0)|0;if((c[j>>2]|0)==0){if((c[k>>2]|0)!=0){a[(c[k>>2]|0)+64>>0]=1}}c[g>>2]=c[j>>2];b=c[g>>2]|0;i=f;return b|0}function af(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+48|0;k=l;g=l+36|0;m=l+12|0;p=l+16|0;j=l+20|0;h=l+24|0;n=l+28|0;o=l+32|0;c[m>>2]=b;c[p>>2]=d;c[j>>2]=e;c[h>>2]=f;if(0!=(gy(c[m>>2]|0)|0)){c[g>>2]=0;b=c[g>>2]|0;i=l;return b|0}c[n>>2]=cw(c[c[m>>2]>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;if((c[n>>2]|0)==0){c[o>>2]=(c[p>>2]|0)!=0?37576:37592;p=c[m>>2]|0;o=c[o>>2]|0;if((c[h>>2]|0)!=0){d=c[h>>2]|0;b=c[j>>2]|0;c[k>>2]=o;c[k+4>>2]=d;c[k+8>>2]=b;bf(p,23792,k)}else{b=c[j>>2]|0;c[k>>2]=o;c[k+4>>2]=b;bf(p,23808,k)}a[(c[m>>2]|0)+17>>0]=1}c[g>>2]=c[n>>2];b=c[g>>2]|0;i=l;return b|0}function bf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;j=f+28|0;l=f;g=f+4|0;k=f+8|0;h=f+24|0;c[j>>2]=b;c[l>>2]=d;c[h>>2]=c[c[j>>2]>>2];c[k>>2]=e;c[g>>2]=iu(c[h>>2]|0,c[l>>2]|0,k)|0;if((a[(c[h>>2]|0)+67>>0]|0)!=0){cc(c[h>>2]|0,c[g>>2]|0);i=f;return}else{l=(c[j>>2]|0)+64|0;c[l>>2]=(c[l>>2]|0)+1;cc(c[h>>2]|0,c[(c[j>>2]|0)+4>>2]|0);c[(c[j>>2]|0)+4>>2]=c[g>>2];c[(c[j>>2]|0)+12>>2]=1;i=f;return}}function cf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+32|0;j=f+28|0;h=f;g=f+8|0;e=f+24|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[e>>2]=iu(c[j>>2]|0,c[h>>2]|0,g)|0;i=f;return c[e>>2]|0}function df(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;g=b;e=b+4|0;f=b+8|0;c[g>>2]=a;c[e>>2]=c[c[g>>2]>>2];c[f>>2]=ve(c[e>>2]|0,208)|0;if((c[f>>2]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}c[c[f>>2]>>2]=c[e>>2];if((c[(c[e>>2]|0)+4>>2]|0)!=0){c[(c[(c[e>>2]|0)+4>>2]|0)+48>>2]=c[f>>2]}c[(c[f>>2]|0)+52>>2]=c[(c[e>>2]|0)+4>>2];c[(c[f>>2]|0)+48>>2]=0;c[(c[e>>2]|0)+4>>2]=c[f>>2];c[(c[f>>2]|0)+40>>2]=649915045;c[(c[f>>2]|0)+24>>2]=c[g>>2];c[d>>2]=c[f>>2];g=c[d>>2]|0;i=b;return g|0}function ef(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=-1e6;if((c[g>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){b=6;break}if((c[(c[(c[f>>2]|0)+16>>2]|0)+(c[e>>2]<<4)+12>>2]|0)==(c[g>>2]|0)){b=6;break}c[e>>2]=(c[e>>2]|0)+1}if((b|0)==6){a=c[e>>2]|0;i=d;return a|0}return 0}function ff(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;l=j+24|0;p=j;o=j+4|0;n=j+8|0;m=j+12|0;k=j+16|0;h=j+20|0;c[l>>2]=a;c[p>>2]=b;c[o>>2]=d;c[n>>2]=e;c[m>>2]=f;c[k>>2]=g;c[h>>2]=Tv(c[l>>2]|0,c[p>>2]|0,c[o>>2]|0,c[n>>2]|0,c[m>>2]|0)|0;nf(c[l>>2]|0,c[h>>2]|0,c[k>>2]|0,-14);i=j;return c[h>>2]|0}function gf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e;f=e+4|0;c[g>>2]=b;a[f>>0]=d;if((c[(c[g>>2]|0)+4>>2]|0)==0){i=e;return}a[(c[(c[g>>2]|0)+4>>2]|0)+(((c[(c[g>>2]|0)+32>>2]|0)-1|0)*20|0)+3>>0]=a[f>>0]|0;i=e;return}function hf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+48|0;h=n+36|0;k=n+32|0;l=n+28|0;q=n+24|0;j=n+16|0;o=n+8|0;m=n+4|0;g=n;p=n+12|0;c[k>>2]=b;c[l>>2]=d;c[q>>2]=e;c[n+20>>2]=f;if(((c[(c[k>>2]|0)+32>>2]|0)+(c[l>>2]|0)|0)>(c[(c[(c[k>>2]|0)+24>>2]|0)+84>>2]|0)){if((Uv(c[k>>2]|0)|0)!=0){c[h>>2]=0;b=c[h>>2]|0;i=n;return b|0}}c[j>>2]=c[(c[k>>2]|0)+32>>2];if((c[l>>2]|0)>0){c[m>>2]=c[q>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[l>>2]|0)){break}c[g>>2]=a[(c[m>>2]|0)+2>>0]|0;c[p>>2]=(c[(c[k>>2]|0)+4>>2]|0)+(((c[o>>2]|0)+(c[j>>2]|0)|0)*20|0);a[c[p>>2]>>0]=a[c[m>>2]>>0]|0;c[(c[p>>2]|0)+4>>2]=a[(c[m>>2]|0)+1>>0]|0;if((c[g>>2]|0)<0){c[(c[p>>2]|0)+8>>2]=(c[j>>2]|0)+(-1-(c[g>>2]|0))}else{c[(c[p>>2]|0)+8>>2]=c[g>>2]}c[(c[p>>2]|0)+12>>2]=a[(c[m>>2]|0)+3>>0]|0;a[(c[p>>2]|0)+1>>0]=0;c[(c[p>>2]|0)+16>>2]=0;a[(c[p>>2]|0)+3>>0]=0;c[o>>2]=(c[o>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+4}b=(c[k>>2]|0)+32|0;c[b>>2]=(c[b>>2]|0)+(c[l>>2]|0)}c[h>>2]=c[j>>2];b=c[h>>2]|0;i=n;return b|0}function jf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=(c[f>>2]|0)+96|0;c[a>>2]=c[a>>2]|1<>2];i=d;return}function kf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;h=e;f=e+4|0;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;if(!((c[(c[g>>2]|0)+32>>2]|0)>>>0>(c[h>>2]|0)>>>0)){i=e;return}c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*20|0)+4>>2]=c[f>>2];i=e;return}function lf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;h=e;f=e+4|0;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;if(!((c[(c[g>>2]|0)+32>>2]|0)>>>0>(c[h>>2]|0)>>>0)){i=e;return}c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*20|0)+8>>2]=c[f>>2];i=e;return}function mf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;h=e;f=e+4|0;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;if(!((c[(c[g>>2]|0)+32>>2]|0)>>>0>(c[h>>2]|0)>>>0)){i=e;return}c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*20|0)+12>>2]=c[f>>2];i=e;return}function nf(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;k=j+20|0;o=j;h=j+4|0;m=j+8|0;l=j+12|0;n=j+16|0;c[k>>2]=b;c[o>>2]=e;c[h>>2]=f;c[m>>2]=g;c[n>>2]=c[c[k>>2]>>2];if((c[(c[k>>2]|0)+4>>2]|0)!=0){if((d[(c[n>>2]|0)+64>>0]|0)==0){if((c[o>>2]|0)<0){c[o>>2]=(c[(c[k>>2]|0)+32>>2]|0)-1}c[l>>2]=(c[(c[k>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0);oF(c[n>>2]|0,a[(c[l>>2]|0)+1>>0]|0,c[(c[l>>2]|0)+16>>2]|0);c[(c[l>>2]|0)+16>>2]=0;n=c[h>>2]|0;if((c[m>>2]|0)==-14){c[(c[l>>2]|0)+16>>2]=n;a[(c[l>>2]|0)+1>>0]=-14;i=j;return}if((n|0)==0){c[(c[l>>2]|0)+16>>2]=0;a[(c[l>>2]|0)+1>>0]=0;i=j;return}if((c[m>>2]|0)==-6){c[(c[l>>2]|0)+16>>2]=c[h>>2];a[(c[l>>2]|0)+1>>0]=-6;i=j;return}if((c[m>>2]|0)==-10){c[(c[l>>2]|0)+16>>2]=c[h>>2];a[(c[l>>2]|0)+1>>0]=-10;qF(c[h>>2]|0);i=j;return}if((c[m>>2]|0)<0){c[(c[l>>2]|0)+16>>2]=c[h>>2];a[(c[l>>2]|0)+1>>0]=c[m>>2];i=j;return}if((c[m>>2]|0)==0){c[m>>2]=Ub(c[h>>2]|0)|0}b=ft(c[c[k>>2]>>2]|0,c[h>>2]|0,c[m>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=b;a[(c[l>>2]|0)+1>>0]=-1;i=j;return}}if(!((c[m>>2]|0)!=-10)){i=j;return}oF(c[n>>2]|0,c[m>>2]|0,c[h>>2]|0);i=j;return}function of(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e;h=e+4|0;j=e+8|0;c[f>>2]=b;c[g>>2]=d;if((c[(c[f>>2]|0)+4>>2]|0)==0){i=e;return}c[h>>2]=(c[(c[f>>2]|0)+4>>2]|0)+((c[g>>2]|0)*20|0);c[j>>2]=c[c[f>>2]>>2];oF(c[j>>2]|0,a[(c[h>>2]|0)+1>>0]|0,c[(c[h>>2]|0)+16>>2]|0);b=c[h>>2]|0;c[b+0>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;a[c[h>>2]>>0]=-100;if((c[g>>2]|0)!=((c[(c[f>>2]|0)+32>>2]|0)-1|0)){i=e;return}b=(c[f>>2]|0)+32|0;c[b>>2]=(c[b>>2]|0)+ -1;i=e;return}function pf(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=i;i=i+48|0;o=t+44|0;l=t+40|0;k=t+36|0;j=t+32|0;r=t+28|0;m=t+24|0;s=t+20|0;g=t+12|0;n=t+8|0;h=t+4|0;q=t;p=t+16|0;c[o>>2]=e;c[l>>2]=f;c[k>>2]=c[c[o>>2]>>2];c[j>>2]=c[(c[l>>2]|0)+440>>2];c[r>>2]=c[(c[l>>2]|0)+72>>2];c[m>>2]=c[(c[l>>2]|0)+68>>2];c[s>>2]=c[(c[l>>2]|0)+392>>2];e=c[(c[l>>2]|0)+80>>2]|0;c[g>>2]=e;c[g>>2]=(c[g>>2]|0)==0?1:e;c[r>>2]=(c[r>>2]|0)+(c[m>>2]|0);c[h>>2]=(c[(c[o>>2]|0)+4>>2]|0)+((c[(c[o>>2]|0)+32>>2]|0)*20|0);c[q>>2]=(c[(c[o>>2]|0)+4>>2]|0)+((c[(c[l>>2]|0)+84>>2]|0)*20|0);XC(c[o>>2]|0,s);if((d[(c[l>>2]|0)+20>>0]|0)!=0){f=(d[(c[l>>2]|0)+21>>0]|0)!=0}else{f=0}e=(c[o>>2]|0)+88|0;b[e>>1]=b[e>>1]&-129|(f&1&255&1)<<7&65535;if((d[(c[l>>2]|0)+450>>0]|0)!=0){if((c[r>>2]|0)<10){c[r>>2]=10}}aL(c[h>>2]|0,0,(c[q>>2]|0)-(c[h>>2]|0)|0)|0;c[h>>2]=(c[h>>2]|0)+((c[h>>2]|0)-0&7);e=(c[o>>2]|0)+88|0;b[e>>1]=b[e>>1]&-33;do{c[p>>2]=0;e=nF(c[(c[o>>2]|0)+8>>2]|0,(c[r>>2]|0)*40|0,h,c[q>>2]|0,p)|0;c[(c[o>>2]|0)+8>>2]=e;e=nF(c[(c[o>>2]|0)+60>>2]|0,(c[j>>2]|0)*40|0,h,c[q>>2]|0,p)|0;c[(c[o>>2]|0)+60>>2]=e;e=nF(c[(c[o>>2]|0)+12>>2]|0,c[s>>2]<<2,h,c[q>>2]|0,p)|0;c[(c[o>>2]|0)+12>>2]=e;e=nF(c[(c[o>>2]|0)+64>>2]|0,c[j>>2]<<2,h,c[q>>2]|0,p)|0;c[(c[o>>2]|0)+64>>2]=e;e=nF(c[(c[o>>2]|0)+56>>2]|0,c[m>>2]<<2,h,c[q>>2]|0,p)|0;c[(c[o>>2]|0)+56>>2]=e;e=nF(c[(c[o>>2]|0)+200>>2]|0,c[g>>2]|0,h,c[q>>2]|0,p)|0;c[(c[o>>2]|0)+200>>2]=e;if((c[p>>2]|0)!=0){e=ve(c[k>>2]|0,c[p>>2]|0)|0;c[(c[o>>2]|0)+172>>2]=e}c[h>>2]=c[(c[o>>2]|0)+172>>2];c[q>>2]=(c[h>>2]|0)+(c[p>>2]|0);if((c[p>>2]|0)==0){break}}while((a[(c[k>>2]|0)+64>>0]|0)!=0^1);c[(c[o>>2]|0)+36>>2]=c[m>>2];c[(c[o>>2]|0)+196>>2]=c[g>>2];a:do{if((c[(c[o>>2]|0)+60>>2]|0)!=0){b[(c[o>>2]|0)+68>>1]=c[j>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[j>>2]|0)){break a}b[(c[(c[o>>2]|0)+60>>2]|0)+((c[n>>2]|0)*40|0)+28>>1]=1;c[(c[(c[o>>2]|0)+60>>2]|0)+((c[n>>2]|0)*40|0)>>2]=c[k>>2];c[n>>2]=(c[n>>2]|0)+1}}}while(0);if((c[(c[o>>2]|0)+64>>2]|0)!=0){b[(c[o>>2]|0)+70>>1]=c[(c[l>>2]|0)+444>>2];fL(c[(c[o>>2]|0)+64>>2]|0,c[(c[l>>2]|0)+472>>2]|0,b[(c[o>>2]|0)+70>>1]<<2|0)|0;aL(c[(c[l>>2]|0)+472>>2]|0,0,c[(c[l>>2]|0)+444>>2]<<2|0)|0}if((c[(c[o>>2]|0)+8>>2]|0)==0){f=c[l>>2]|0;f=f+450|0;f=a[f>>0]|0;f=f&255;e=c[o>>2]|0;e=e+88|0;f=f&65535;s=b[e>>1]|0;f=f&3;s=s&-4;f=s|f;b[e>>1]=f;e=c[o>>2]|0;Ed(e);i=t;return}e=(c[o>>2]|0)+8|0;c[e>>2]=(c[e>>2]|0)+ -40;c[(c[o>>2]|0)+28>>2]=c[r>>2];c[n>>2]=1;while(1){if((c[n>>2]|0)>(c[r>>2]|0)){break}b[(c[(c[o>>2]|0)+8>>2]|0)+((c[n>>2]|0)*40|0)+28>>1]=128;c[(c[(c[o>>2]|0)+8>>2]|0)+((c[n>>2]|0)*40|0)>>2]=c[k>>2];c[n>>2]=(c[n>>2]|0)+1}f=c[l>>2]|0;f=f+450|0;f=a[f>>0]|0;f=f&255;e=c[o>>2]|0;e=e+88|0;f=f&65535;s=b[e>>1]|0;f=f&3;s=s&-4;f=s|f;b[e>>1]=f;e=c[o>>2]|0;Ed(e);i=t;return}function qf(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+48|0;l=j+8|0;m=j+36|0;k=j;h=j+32|0;n=j+40|0;g=j+24|0;q=j+16|0;p=j+28|0;o=j+20|0;c[m>>2]=a;a=k;c[a>>2]=d;c[a+4>>2]=e;c[h>>2]=f;c[g>>2]=0;c[q>>2]=c[(c[m>>2]|0)+20>>2];e=k;d=c[e+4>>2]|0;a=(c[(c[q>>2]|0)+60>>2]|0)+16|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[n>>2]=le(c[(c[m>>2]|0)+20>>2]|0)|0;do{if((c[n>>2]|0)==100){c[p>>2]=c[c[(c[q>>2]|0)+56>>2]>>2];c[o>>2]=c[(c[p>>2]|0)+88+(c[(c[m>>2]|0)+12>>2]<<2)>>2];f=c[m>>2]|0;if(!((c[o>>2]|0)>>>0<12)){c[(c[m>>2]|0)+8>>2]=c[(c[p>>2]|0)+88+((c[f+12>>2]|0)+(b[(c[p>>2]|0)+20>>1]|0)<<2)>>2];a=yD(c[o>>2]|0)|0;c[(c[m>>2]|0)+4>>2]=a;c[(c[m>>2]|0)+16>>2]=c[c[p>>2]>>2];mF(c[(c[m>>2]|0)+16>>2]|0);break}p=c[f+24>>2]|0;if((c[o>>2]|0)==0){o=16424}else{o=(c[o>>2]|0)==7?16408:16392}c[l>>2]=o;c[g>>2]=cf(p,37608,l)|0;c[n>>2]=1;yd(c[(c[m>>2]|0)+20>>2]|0)|0;c[(c[m>>2]|0)+20>>2]=0}}while(0);if((c[n>>2]|0)==100){c[n>>2]=0;d=c[g>>2]|0;a=c[h>>2]|0;c[a>>2]=d;a=c[n>>2]|0;i=j;return a|0}if((c[(c[m>>2]|0)+20>>2]|0)==0){d=c[g>>2]|0;a=c[h>>2]|0;c[a>>2]=d;a=c[n>>2]|0;i=j;return a|0}c[n>>2]=yd(c[(c[m>>2]|0)+20>>2]|0)|0;c[(c[m>>2]|0)+20>>2]=0;o=c[(c[m>>2]|0)+24>>2]|0;if((c[n>>2]|0)==0){e=k;a=c[e+4>>2]|0;d=l;c[d>>2]=c[e>>2];c[d+4>>2]=a;c[g>>2]=cf(o,37640,l)|0;c[n>>2]=1;d=c[g>>2]|0;a=c[h>>2]|0;c[a>>2]=d;a=c[n>>2]|0;i=j;return a|0}else{c[l>>2]=Ff(c[(c[m>>2]|0)+24>>2]|0)|0;c[g>>2]=cf(o,1768,l)|0;d=c[g>>2]|0;a=c[h>>2]|0;c[a>>2]=d;a=c[n>>2]|0;i=j;return a|0}return 0}function rf(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}c[e>>2]=c[c[d>>2]>>2];cc(c[e>>2]|0,c[(c[d>>2]|0)+112>>2]|0);cu(c[e>>2]|0,c[(c[d>>2]|0)+316>>2]|0);i=b;return}function sf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;g=b+12|0;e=b;d=b+4|0;f=b+8|0;c[g>>2]=a;c[e>>2]=c[g>>2];if((c[e>>2]|0)!=0){c[f>>2]=c[(c[e>>2]|0)+24>>2];c[d>>2]=yd(c[(c[e>>2]|0)+20>>2]|0)|0;cc(c[f>>2]|0,c[e>>2]|0);g=c[d>>2]|0;i=b;return g|0}else{c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}return 0}function tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=uf(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0,9)|0;i=f;return a|0}function uf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=i;i=i+48|0;m=p;j=p+36|0;t=p+32|0;s=p+28|0;r=p+24|0;q=p+40|0;g=p+12|0;l=p+8|0;o=p+4|0;n=p+16|0;k=p+20|0;c[t>>2]=a;c[s>>2]=b;c[r>>2]=d;c[q>>2]=e;c[g>>2]=f;c[o>>2]=c[t>>2];if((c[o>>2]|0)==0){c[j>>2]=Xb(74274)|0;t=c[j>>2]|0;i=p;return t|0}c[k>>2]=c[(c[o>>2]|0)+24>>2];c[n>>2]=c[(c[o>>2]|0)+20>>2];do{if((c[r>>2]|0)<0){h=6}else{if((c[q>>2]|0)<0){h=6}else{if(((c[q>>2]|0)+(c[r>>2]|0)|0)>(c[(c[o>>2]|0)+4>>2]|0)){h=6}else{if((c[n>>2]|0)==0){c[l>>2]=4;break}c[l>>2]=xb[c[g>>2]&31](c[(c[o>>2]|0)+16>>2]|0,(c[q>>2]|0)+(c[(c[o>>2]|0)+8>>2]|0)|0,c[r>>2]|0,c[s>>2]|0)|0;if((c[l>>2]|0)==4){Ad(c[n>>2]|0)|0;c[(c[o>>2]|0)+20>>2]=0;break}else{c[(c[k>>2]|0)+52>>2]=c[l>>2];c[(c[n>>2]|0)+80>>2]=c[l>>2];break}}}}}while(0);if((h|0)==6){c[l>>2]=1;Rc(c[k>>2]|0,1,0,m)}c[l>>2]=Bd(c[k>>2]|0,c[l>>2]|0)|0;c[j>>2]=c[l>>2];t=c[j>>2]|0;i=p;return t|0}function vf(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;h=m+20|0;k=m;l=m+4|0;g=m+8|0;n=m+12|0;j=m+16|0;c[k>>2]=a;c[l>>2]=b;c[g>>2]=e;c[n>>2]=f;if((d[(c[k>>2]|0)+81>>0]|0|0)==0){c[h>>2]=4;a=c[h>>2]|0;i=m;return a|0}if((d[(c[k>>2]|0)+81>>0]|0|0)>=3){f=_C(c[k>>2]|0)|0}else{f=0}c[j>>2]=f;if((c[j>>2]|0)==0){c[j>>2]=oD(c[k>>2]|0,c[l>>2]|0,c[g>>2]|0,c[n>>2]|0,0)|0}c[h>>2]=c[j>>2];a=c[h>>2]|0;i=m;return a|0}function wf(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];if((c[d>>2]|0)==0){e=0;i=b;return e|0}if((c[(c[d>>2]|0)+20>>2]|0)==0){e=0;i=b;return e|0}e=c[(c[d>>2]|0)+4>>2]|0;i=b;return e|0}function xf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+48|0;k=j+8|0;f=j+32|0;n=j+12|0;l=j;h=j+16|0;m=j+20|0;g=j+24|0;e=j+28|0;c[n>>2]=a;a=l;c[a>>2]=b;c[a+4>>2]=d;c[m>>2]=c[n>>2];if((c[m>>2]|0)==0){c[f>>2]=Xb(74349)|0;n=c[f>>2]|0;i=j;return n|0}c[g>>2]=c[(c[m>>2]|0)+24>>2];if((c[(c[m>>2]|0)+20>>2]|0)==0){c[h>>2]=4}else{n=l;c[h>>2]=qf(c[m>>2]|0,c[n>>2]|0,c[n+4>>2]|0,e)|0;if((c[h>>2]|0)!=0){b=c[g>>2]|0;a=c[h>>2]|0;n=(c[e>>2]|0)!=0?1768:0;c[k>>2]=c[e>>2];Rc(b,a,n,k);cc(c[g>>2]|0,c[e>>2]|0)}}c[h>>2]=Bd(c[g>>2]|0,c[h>>2]|0)|0;c[f>>2]=c[h>>2];n=c[f>>2]|0;i=j;return n|0}function yf(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+4>>2];while(1){if((c[e>>2]|0)==0){break}f=(c[e>>2]|0)+88|0;b[f>>1]=b[f>>1]&-33|32;c[e>>2]=c[(c[e>>2]|0)+52>>2]}i=d;return}function zf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=(Af(c[f>>2]|0,c[e>>2]|0,1776,0)|0)==0&1;i=d;return a|0}function Af(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;k=i;i=i+48|0;n=k+40|0;m=k+36|0;j=k+32|0;h=k+28|0;l=k+12|0;o=k+16|0;p=k+20|0;y=k+8|0;x=k+4|0;s=k+47|0;t=k+46|0;r=k+45|0;q=k+44|0;v=k;w=k+24|0;c[m>>2]=b;c[j>>2]=e;c[h>>2]=f;c[l>>2]=g;a[s>>0]=a[(c[h>>2]|0)+1>>0]|0;a[t>>0]=a[c[h>>2]>>0]|0;a[r>>0]=a[(c[h>>2]|0)+2>>0]|0;a[q>>0]=a[(c[h>>2]|0)+3>>0]|0;c[v>>2]=0;while(1){b=It(m)|0;c[o>>2]=b;if((b|0)==0){u=84;break}if((c[o>>2]|0)==(d[t>>0]|0)){if((c[v>>2]|0)==0){u=5;break}}if((c[o>>2]|0)==(d[s>>0]|0)){if((c[v>>2]|0)==0){if((It(j)|0)==0){u=45;break}else{continue}}}if((c[o>>2]|0)!=(d[r>>0]|0)){if((c[l>>2]|0)==(c[o>>2]|0)){if((c[v>>2]|0)==0){c[v>>2]=1;continue}}c[p>>2]=It(j)|0;if((a[q>>0]|0)!=0){if((c[o>>2]&-128|0)==0){c[o>>2]=d[784+(c[o>>2]|0)>>0]|0}if((c[p>>2]&-128|0)==0){c[p>>2]=d[784+(c[p>>2]|0)>>0]|0}}if((c[o>>2]|0)!=(c[p>>2]|0)){u=82;break}c[v>>2]=0;continue}c[w>>2]=0;c[x>>2]=0;c[y>>2]=0;c[o>>2]=It(j)|0;if((c[o>>2]|0)==0){u=48;break}c[p>>2]=It(m)|0;if((c[p>>2]|0)==94){c[y>>2]=1;c[p>>2]=It(m)|0}if((c[p>>2]|0)==93){if((c[o>>2]|0)==93){c[x>>2]=1}c[p>>2]=It(m)|0}while(1){if((c[p>>2]|0)!=0){f=(c[p>>2]|0)!=93}else{f=0}g=c[p>>2]|0;if(!f){break}if((g|0)==45){if((d[c[m>>2]>>0]|0)!=93){if((d[c[m>>2]>>0]|0)!=0){if((c[w>>2]|0)>>>0>0){c[p>>2]=It(m)|0;if((c[o>>2]|0)>>>0>=(c[w>>2]|0)>>>0){if((c[o>>2]|0)>>>0<=(c[p>>2]|0)>>>0){c[x>>2]=1}}c[w>>2]=0}else{u=66}}else{u=66}}else{u=66}}else{u=66}if((u|0)==66){u=0;if((c[o>>2]|0)==(c[p>>2]|0)){c[x>>2]=1}c[w>>2]=c[p>>2]}c[p>>2]=It(m)|0}if((g|0)==0){u=72;break}if((c[x>>2]^c[y>>2]|0)==0){u=72;break}}if((u|0)==5){while(1){u=0;b=It(m)|0;c[o>>2]=b;if((b|0)==(d[t>>0]|0)){w=1}else{w=(c[o>>2]|0)==(d[s>>0]|0)}v=c[o>>2]|0;if(!w){break}if((v|0)!=(d[s>>0]|0)){u=5;continue}if((It(j)|0)==0){u=10;break}else{u=5}}if((u|0)==10){c[n>>2]=0;b=c[n>>2]|0;i=k;return b|0}if((v|0)==0){c[n>>2]=1;b=c[n>>2]|0;i=k;return b|0}if((c[o>>2]|0)==(c[l>>2]|0)){c[o>>2]=It(m)|0;if((c[o>>2]|0)==0){c[n>>2]=0;b=c[n>>2]|0;i=k;return b|0}}else{if((c[o>>2]|0)==(d[r>>0]|0)){a:while(1){if((d[c[j>>2]>>0]|0)!=0){p=(Af((c[m>>2]|0)+ -1|0,c[j>>2]|0,c[h>>2]|0,c[l>>2]|0)|0)==0}else{p=0}o=c[j>>2]|0;if(!p){break}c[j>>2]=o+1;if((d[o>>0]|0)<192){continue}while(1){if((a[c[j>>2]>>0]&192|0)!=128){continue a}c[j>>2]=(c[j>>2]|0)+1}}c[n>>2]=(d[o>>0]|0)!=0&1;b=c[n>>2]|0;i=k;return b|0}}while(1){b=It(j)|0;c[p>>2]=b;if((b|0)==0){u=41;break}b:do{if((a[q>>0]|0)!=0){if((c[p>>2]&-128|0)==0){c[p>>2]=d[784+(c[p>>2]|0)>>0]|0}if((c[o>>2]&-128|0)==0){c[o>>2]=d[784+(c[o>>2]|0)>>0]|0}while(1){if((c[p>>2]|0)==0){break b}if((c[p>>2]|0)==(c[o>>2]|0)){break b}c[p>>2]=It(j)|0;if((c[p>>2]&-128|0)!=0){continue}c[p>>2]=d[784+(c[p>>2]|0)>>0]|0}}else{while(1){if((c[p>>2]|0)==0){break b}if((c[p>>2]|0)==(c[o>>2]|0)){break b}c[p>>2]=It(j)|0}}}while(0);if((c[p>>2]|0)==0){u=38;break}if((Af(c[m>>2]|0,c[j>>2]|0,c[h>>2]|0,c[l>>2]|0)|0)!=0){u=40;break}}if((u|0)==38){c[n>>2]=0;b=c[n>>2]|0;i=k;return b|0}else if((u|0)==40){c[n>>2]=1;b=c[n>>2]|0;i=k;return b|0}else if((u|0)==41){c[n>>2]=0;b=c[n>>2]|0;i=k;return b|0}}else if((u|0)==45){c[n>>2]=0;b=c[n>>2]|0;i=k;return b|0}else if((u|0)==48){c[n>>2]=0;b=c[n>>2]|0;i=k;return b|0}else if((u|0)==72){c[n>>2]=0;b=c[n>>2]|0;i=k;return b|0}else if((u|0)==82){c[n>>2]=0;b=c[n>>2]|0;i=k;return b|0}else if((u|0)==84){c[n>>2]=(d[c[j>>2]>>0]|0)==0&1;b=c[n>>2]|0;i=k;return b|0}return 0}function Bf(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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;u=i;i=i+64|0;q=u;l=u+56|0;o=u+52|0;j=u+48|0;y=u+44|0;A=u+40|0;n=u+36|0;m=u+32|0;v=u+60|0;s=u+20|0;r=u+16|0;w=u+12|0;x=u+8|0;t=u+4|0;z=u+24|0;p=u+28|0;c[o>>2]=b;c[j>>2]=e;c[y>>2]=f;c[A>>2]=g;c[n>>2]=h;c[m>>2]=0;c[s>>2]=0;c[r>>2]=0;if((Cf(c[o>>2]|0)|0)==0){c[l>>2]=Xb(96044)|0;b=c[l>>2]|0;i=u;return b|0}if((c[j>>2]|0)==0){c[j>>2]=1784}Rc(c[o>>2]|0,0,0,q);a:while(1){if((c[m>>2]|0)!=0){break}if((a[c[j>>2]>>0]|0)==0){break}c[t>>2]=0;c[s>>2]=0;c[m>>2]=Df(c[o>>2]|0,c[j>>2]|0,-1,s,v)|0;if((c[m>>2]|0)!=0){continue}if((c[s>>2]|0)==0){c[j>>2]=c[v>>2];continue}c[w>>2]=0;c[x>>2]=we(c[s>>2]|0)|0;do{c[m>>2]=le(c[s>>2]|0)|0;do{if((c[y>>2]|0)!=0){if(100!=(c[m>>2]|0)){if(101!=(c[m>>2]|0)){break}if((c[w>>2]|0)!=0){break}if((c[(c[o>>2]|0)+24>>2]&256|0)==0){break}}if((c[w>>2]|0)==0){c[r>>2]=ve(c[o>>2]|0,(c[x>>2]<<1<<2)+1|0)|0;if((c[r>>2]|0)==0){break a}c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[x>>2]|0)){break}b=Ie(c[s>>2]|0,c[z>>2]|0)|0;c[(c[r>>2]|0)+(c[z>>2]<<2)>>2]=b;c[z>>2]=(c[z>>2]|0)+1}c[w>>2]=1}b:do{if((c[m>>2]|0)==100){c[t>>2]=(c[r>>2]|0)+(c[x>>2]<<2);c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[x>>2]|0)){break b}b=Fe(c[s>>2]|0,c[z>>2]|0)|0;c[(c[t>>2]|0)+(c[z>>2]<<2)>>2]=b;if((c[(c[t>>2]|0)+(c[z>>2]<<2)>>2]|0)==0){if((He(c[s>>2]|0,c[z>>2]|0)|0)!=5){k=28;break a}}c[z>>2]=(c[z>>2]|0)+1}}}while(0);if((xb[c[y>>2]&31](c[A>>2]|0,c[x>>2]|0,c[t>>2]|0,c[r>>2]|0)|0)!=0){k=31;break a}}}while(0)}while((c[m>>2]|0)==100);c[m>>2]=Ad(c[s>>2]|0)|0;c[s>>2]=0;c[j>>2]=c[v>>2];while(1){if((a[136+(d[c[j>>2]>>0]|0)>>0]&1|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}cc(c[o>>2]|0,c[r>>2]|0);c[r>>2]=0}if((k|0)==28){a[(c[o>>2]|0)+64>>0]=1}else if((k|0)==31){c[m>>2]=4;Ad(c[s>>2]|0)|0;c[s>>2]=0;Rc(c[o>>2]|0,4,0,q)}if((c[s>>2]|0)!=0){Ad(c[s>>2]|0)|0}cc(c[o>>2]|0,c[r>>2]|0);c[m>>2]=Bd(c[o>>2]|0,c[m>>2]|0)|0;do{if((c[m>>2]|0)!=0){b=c[m>>2]|0;if((b|0)==(Ef(c[o>>2]|0)|0)){if((c[n>>2]|0)!=0){c[p>>2]=1+(Ub(Ff(c[o>>2]|0)|0)|0);b=nc(c[p>>2]|0)|0;c[c[n>>2]>>2]=b;if((c[c[n>>2]>>2]|0)!=0){e=c[c[n>>2]>>2]|0;b=Ff(c[o>>2]|0)|0;fL(e|0,b|0,c[p>>2]|0)|0;break}else{c[m>>2]=7;Rc(c[o>>2]|0,7,0,q);break}}else{k=45}}else{k=45}}else{k=45}}while(0);if((k|0)==45){if((c[n>>2]|0)!=0){c[c[n>>2]>>2]=0}}c[l>>2]=c[m>>2];b=c[l>>2]|0;i=u;return b|0}function Cf(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b;f=b+4|0;c[e>>2]=a;do{if((c[e>>2]|0)==0){mr(16376);c[d>>2]=0}else{c[f>>2]=c[(c[e>>2]|0)+76>>2];if(!((c[f>>2]|0)!=-1607883113)){c[d>>2]=1;break}if((Ag(c[e>>2]|0)|0)!=0){mr(37560)}c[d>>2]=0}}while(0);i=b;return c[d>>2]|0}function Df(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;n=h+20|0;m=h;l=h+4|0;k=h+8|0;j=h+12|0;g=h+16|0;c[n>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;c[g>>2]=Hf(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,1,0,c[k>>2]|0,c[j>>2]|0)|0;i=h;return c[g>>2]|0}function Ef(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;e=b+4|0;f=b;c[f>>2]=a;if((c[f>>2]|0)!=0){if((Ag(c[f>>2]|0)|0)==0){c[e>>2]=Xb(123013)|0;f=c[e>>2]|0;i=b;return f|0}}if((c[f>>2]|0)!=0){if((d[(c[f>>2]|0)+64>>0]|0|0)==0){c[e>>2]=c[(c[f>>2]|0)+52>>2]&c[(c[f>>2]|0)+56>>2];f=c[e>>2]|0;i=b;return f|0}}c[e>>2]=7;f=c[e>>2]|0;i=b;return f|0}function Ff(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;c[g>>2]=b;if((c[g>>2]|0)==0){c[e>>2]=ie(7)|0;g=c[e>>2]|0;i=d;return g|0}if((Ag(c[g>>2]|0)|0)==0){c[e>>2]=ie(Xb(122944)|0)|0;g=c[e>>2]|0;i=d;return g|0}if((a[(c[g>>2]|0)+64>>0]|0)!=0){c[f>>2]=ie(7)|0}else{c[f>>2]=Jd(c[(c[g>>2]|0)+224>>2]|0)|0;if((c[f>>2]|0)==0){c[f>>2]=ie(c[(c[g>>2]|0)+52>>2]|0)|0}}c[e>>2]=c[f>>2];g=c[e>>2]|0;i=d;return g|0}function Gf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;n=h+20|0;m=h;l=h+4|0;k=h+8|0;j=h+12|0;g=h+16|0;c[n>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;c[g>>2]=Hf(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,0,0,c[k>>2]|0,c[j>>2]|0)|0;i=h;return c[g>>2]|0}function Hf(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=i;i=i+48|0;k=q+32|0;n=q+28|0;o=q+24|0;p=q+20|0;j=q+16|0;r=q+8|0;m=q+4|0;s=q;l=q+12|0;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[j>>2]=e;c[r>>2]=f;c[m>>2]=g;c[s>>2]=h;c[c[m>>2]>>2]=0;if((Cf(c[n>>2]|0)|0)==0){c[k>>2]=Xb(100422)|0;a=c[k>>2]|0;i=q;return a|0}Yb(c[n>>2]|0);c[l>>2]=ZE(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[j>>2]|0,c[r>>2]|0,c[m>>2]|0,c[s>>2]|0)|0;if((c[l>>2]|0)==17){yd(c[c[m>>2]>>2]|0)|0;c[l>>2]=ZE(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[j>>2]|0,c[r>>2]|0,c[m>>2]|0,c[s>>2]|0)|0}c[k>>2]=c[l>>2];a=c[k>>2]|0;i=q;return a|0}function If(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=Jf(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0,0)|0;i=f;return a|0}function Jf(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+48|0;m=j+36|0;q=j+32|0;s=j+28|0;l=j+24|0;k=j+20|0;p=j+16|0;r=j+8|0;o=j+4|0;n=j;h=j+12|0;c[m>>2]=b;c[q>>2]=d;c[s>>2]=e;c[l>>2]=f;c[k>>2]=g;c[p>>2]=0;c[r>>2]=Ub(c[q>>2]|0)|0;if((zh((c[m>>2]|0)+300|0,c[q>>2]|0,c[r>>2]|0)|0)!=0){c[p>>2]=Xb(108523)|0}else{c[o>>2]=$e(c[m>>2]|0,17+(c[r>>2]|0)|0)|0;if((c[o>>2]|0)!=0){c[h>>2]=(c[o>>2]|0)+16;fL(c[h>>2]|0,c[q>>2]|0,(c[r>>2]|0)+1|0)|0;c[(c[o>>2]|0)+4>>2]=c[h>>2];c[c[o>>2]>>2]=c[s>>2];c[(c[o>>2]|0)+8>>2]=c[l>>2];c[(c[o>>2]|0)+12>>2]=c[k>>2];c[n>>2]=Eh((c[m>>2]|0)+300|0,c[h>>2]|0,c[r>>2]|0,c[o>>2]|0)|0;if((c[n>>2]|0)!=0){a[(c[m>>2]|0)+64>>0]=1;cc(c[m>>2]|0,c[n>>2]|0)}}}c[p>>2]=Bd(c[m>>2]|0,c[p>>2]|0)|0;if((c[p>>2]|0)==0){b=c[p>>2]|0;i=j;return b|0}if((c[k>>2]|0)==0){b=c[p>>2]|0;i=j;return b|0}rb[c[k>>2]&31](c[l>>2]|0);b=c[p>>2]|0;i=j;return b|0}function Kf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+16|0;l=g;k=g+4|0;j=g+8|0;h=g+12|0;c[m>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;a=Jf(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return a|0}function Lf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=i;i=i+32|0;o=k;j=k+28|0;m=k+4|0;p=k+8|0;l=k+12|0;h=k+16|0;f=k+20|0;n=k+24|0;c[m>>2]=d;c[p>>2]=e;c[h>>2]=0;c[n>>2]=0;if((c[(c[m>>2]|0)+316>>2]|0)!=0){d=c[(c[(c[m>>2]|0)+316>>2]|0)+4>>2]|0;c[f>>2]=d;if((d|0)!=0){c[l>>2]=ve(c[m>>2]|0,536)|0;if((c[l>>2]|0)==0){c[h>>2]=7}else{a[(c[l>>2]|0)+451>>0]=1;c[c[l>>2]>>2]=c[m>>2];c[(c[l>>2]|0)+424>>2]=1;if(0==(Mf(c[l>>2]|0,c[p>>2]|0,n)|0)){if((c[(c[l>>2]|0)+484>>2]|0)!=0){if((a[(c[m>>2]|0)+64>>0]|0)!=0){g=14}else{if((c[(c[(c[l>>2]|0)+484>>2]|0)+12>>2]|0)!=0){g=14}else{if((a[(c[(c[l>>2]|0)+484>>2]|0)+44>>0]&16|0)==0){if((c[(c[f>>2]|0)+4>>2]|0)==0){c[(c[f>>2]|0)+4>>2]=c[(c[(c[l>>2]|0)+484>>2]|0)+4>>2];b[(c[f>>2]|0)+38>>1]=b[(c[(c[l>>2]|0)+484>>2]|0)+38>>1]|0;b[(c[(c[l>>2]|0)+484>>2]|0)+38>>1]=0;c[(c[(c[l>>2]|0)+484>>2]|0)+4>>2]=0}c[(c[(c[m>>2]|0)+316>>2]|0)+4>>2]=0}else{g=14}}}}else{g=14}}else{g=14}if((g|0)==14){e=c[m>>2]|0;d=(c[n>>2]|0)!=0?1768:0;c[o>>2]=c[n>>2];Rc(e,1,d,o);cc(c[m>>2]|0,c[n>>2]|0);c[h>>2]=1}a[(c[l>>2]|0)+451>>0]=0;if((c[(c[l>>2]|0)+8>>2]|0)!=0){Ad(c[(c[l>>2]|0)+8>>2]|0)|0}ac(c[m>>2]|0,c[(c[l>>2]|0)+484>>2]|0);rf(c[l>>2]|0);cc(c[m>>2]|0,c[l>>2]|0)}c[h>>2]=Bd(c[m>>2]|0,c[h>>2]|0)|0;c[j>>2]=c[h>>2];d=c[j>>2]|0;i=k;return d|0}}Rc(c[m>>2]|0,21,0,o);c[j>>2]=Xb(109181)|0;d=c[j>>2]|0;i=k;return d|0}function Mf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;g=i;i=i+64|0;v=g;m=g+52|0;h=g+48|0;p=g+44|0;u=g+40|0;j=g+36|0;l=g+32|0;q=g+56|0;w=g+20|0;t=g+16|0;r=g+60|0;k=g+12|0;x=g+8|0;n=g+24|0;o=g+28|0;c[h>>2]=b;c[p>>2]=e;c[u>>2]=f;c[j>>2]=0;c[t>>2]=-1;c[k>>2]=c[c[h>>2]>>2];c[x>>2]=c[(c[k>>2]|0)+92>>2];if((c[(c[k>>2]|0)+140>>2]|0)==0){c[(c[k>>2]|0)+232>>2]=0}c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+480>>2]=c[p>>2];c[l>>2]=0;c[q>>2]=Yt(41)|0;f=c[k>>2]|0;if((c[q>>2]|0)==0){a[f+64>>0]=1;c[m>>2]=7;b=c[m>>2]|0;i=g;return b|0}a[r>>0]=a[f+242>>0]|0;if((c[(c[k>>2]|0)+268>>2]|0)!=0){a[(c[k>>2]|0)+242>>0]=1}while(1){if((a[(c[k>>2]|0)+64>>0]|0)!=0){break}if((a[(c[p>>2]|0)+(c[l>>2]|0)>>0]|0)==0){break}c[(c[h>>2]|0)+504>>2]=(c[p>>2]|0)+(c[l>>2]|0);b=et((c[p>>2]|0)+(c[l>>2]|0)|0,w)|0;c[(c[h>>2]|0)+508>>2]=b;c[l>>2]=(c[l>>2]|0)+(c[(c[h>>2]|0)+508>>2]|0);if((c[l>>2]|0)>(c[x>>2]|0)){s=10;break}f=c[w>>2]|0;if((f|0)==1){c[(c[h>>2]|0)+480>>2]=(c[p>>2]|0)+(c[l>>2]|0)}else if((f|0)==150){s=14;break}else if((f|0)==151){if((c[(c[k>>2]|0)+232>>2]|0)!=0){s=13;break}else{continue}}f=c[q>>2]|0;e=c[w>>2]|0;y=(c[h>>2]|0)+504|0;b=c[h>>2]|0;c[v+0>>2]=c[y+0>>2];c[v+4>>2]=c[y+4>>2];Zt(f,e,v,b);c[t>>2]=c[w>>2];if((c[(c[h>>2]|0)+12>>2]|0)!=0){break}}if((s|0)==10){c[(c[h>>2]|0)+12>>2]=18}else if((s|0)==13){bf(c[h>>2]|0,16456,v);c[(c[h>>2]|0)+12>>2]=9}else if((s|0)==14){cc(c[k>>2]|0,c[c[u>>2]>>2]|0);y=c[k>>2]|0;c[v>>2]=(c[h>>2]|0)+504;y=cf(y,16472,v)|0;c[c[u>>2]>>2]=y;c[j>>2]=(c[j>>2]|0)+1}if((a[(c[p>>2]|0)+(c[l>>2]|0)>>0]|0)==0){if((c[j>>2]|0)==0){if((c[(c[h>>2]|0)+12>>2]|0)==0){if((c[t>>2]|0)!=1){b=c[q>>2]|0;e=(c[h>>2]|0)+504|0;y=c[h>>2]|0;c[v+0>>2]=c[e+0>>2];c[v+4>>2]=c[e+4>>2];Zt(b,1,v,y);c[(c[h>>2]|0)+480>>2]=(c[p>>2]|0)+(c[l>>2]|0)}b=c[q>>2]|0;e=(c[h>>2]|0)+504|0;y=c[h>>2]|0;c[v+0>>2]=c[e+0>>2];c[v+4>>2]=c[e+4>>2];Zt(b,0,v,y)}}}_t(c[q>>2]|0,13);a[(c[k>>2]|0)+242>>0]=a[r>>0]|0;if((a[(c[k>>2]|0)+64>>0]|0)!=0){c[(c[h>>2]|0)+12>>2]=7}if((c[(c[h>>2]|0)+12>>2]|0)!=0){if((c[(c[h>>2]|0)+12>>2]|0)!=101){if((c[(c[h>>2]|0)+4>>2]|0)==0){b=(c[h>>2]|0)+4|0;y=c[k>>2]|0;c[v>>2]=ie(c[(c[h>>2]|0)+12>>2]|0)|0;$t(b,y,1768,v)}}}if((c[(c[h>>2]|0)+4>>2]|0)!=0){c[c[u>>2]>>2]=c[(c[h>>2]|0)+4>>2];y=c[(c[h>>2]|0)+12>>2]|0;c[v>>2]=c[c[u>>2]>>2];zc(y,1768,v);c[(c[h>>2]|0)+4>>2]=0;c[j>>2]=(c[j>>2]|0)+1}if((c[(c[h>>2]|0)+8>>2]|0)!=0){if((c[(c[h>>2]|0)+64>>2]|0)>0){if((d[(c[h>>2]|0)+18>>0]|0)==0){au(c[(c[h>>2]|0)+8>>2]|0);c[(c[h>>2]|0)+8>>2]=0}}}if((d[(c[h>>2]|0)+18>>0]|0)==0){cc(c[k>>2]|0,c[(c[h>>2]|0)+400>>2]|0);c[(c[h>>2]|0)+400>>2]=0;c[(c[h>>2]|0)+396>>2]=0}oc(c[(c[h>>2]|0)+520>>2]|0);if((a[(c[h>>2]|0)+451>>0]|0)==0){ac(c[k>>2]|0,c[(c[h>>2]|0)+484>>2]|0)}if((a[(c[h>>2]|0)+449>>0]|0)!=0){bu(c[k>>2]|0,c[(c[h>>2]|0)+532>>2]|0)}$b(c[k>>2]|0,c[(c[h>>2]|0)+488>>2]|0);c[l>>2]=(c[(c[h>>2]|0)+444>>2]|0)-1;while(1){p=c[k>>2]|0;if((c[l>>2]|0)<0){break}cc(p,c[(c[(c[h>>2]|0)+472>>2]|0)+(c[l>>2]<<2)>>2]|0);c[l>>2]=(c[l>>2]|0)+ -1}cc(p,c[(c[h>>2]|0)+472>>2]|0);while(1){if((c[(c[h>>2]|0)+404>>2]|0)==0){break}c[n>>2]=c[(c[h>>2]|0)+404>>2];c[(c[h>>2]|0)+404>>2]=c[c[n>>2]>>2];cc(c[k>>2]|0,c[n>>2]|0)}while(1){if((c[(c[h>>2]|0)+524>>2]|0)==0){break}c[o>>2]=c[(c[h>>2]|0)+524>>2];c[(c[h>>2]|0)+524>>2]=c[(c[o>>2]|0)+72>>2];ac(c[k>>2]|0,c[o>>2]|0)}if((c[j>>2]|0)>0){if((c[(c[h>>2]|0)+12>>2]|0)==0){c[(c[h>>2]|0)+12>>2]=1}}c[m>>2]=c[j>>2];y=c[m>>2]|0;i=g;return y|0}function Nf(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[1800+((d[(c[b>>2]|0)+68>>0]|0)-1)>>0]|0|0}function Of(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+48|0;j=g;h=g+32|0;m=g+4|0;l=g+8|0;f=g+24|0;k=g+28|0;c[h>>2]=b;c[m>>2]=d;c[f>>2]=0;c[l>>2]=e;do{if((c[m>>2]|0)==1){c[k>>2]=c[(c[h>>2]|0)+316>>2];if((c[k>>2]|0)!=0){b=c[l>>2]|0;m=c[b>>2]|0;c[l>>2]=b+4;a[(c[c[k>>2]>>2]|0)+16>>0]=m;break}else{c[f>>2]=Xb(109555)|0;break}}else{c[f>>2]=Xb(109563)|0}}while(0);if((c[f>>2]|0)==0){m=c[f>>2]|0;i=g;return m|0}Rc(c[h>>2]|0,c[f>>2]|0,0,j);m=c[f>>2]|0;i=g;return m|0}function Pf(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=ve(c[f>>2]|0,40)|0;if((c[e>>2]|0)==0){f=c[e>>2]|0;i=d;return f|0}b[(c[e>>2]|0)+28>>1]=1;c[c[e>>2]>>2]=c[f>>2];f=c[e>>2]|0;i=d;return f|0}function Qf(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;j=m+12|0;l=m;k=m+4|0;h=m+16|0;n=m+8|0;c[j>>2]=b;c[l>>2]=d;c[k>>2]=e;a[h>>0]=f;c[n>>2]=g;if((c[j>>2]|0)==0){i=m;return}Yd(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,a[h>>0]|0,c[n>>2]|0)|0;i=m;return}function Rf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}Gd(c[d>>2]|0);cc(c[c[d>>2]>>2]|0,c[d>>2]|0);i=b;return}function Sf(){return 88}function Tf(){return 1824}function Uf(){return 3008005}function Vf(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;f=g+12|0;e=g;b=g+4|0;d=g+8|0;if((c[45172>>2]|0)==0){$f()}j=480|0;h=j+40|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(h|0));if((c[45140>>2]|0)!=0){c[120]=8}if((c[45328>>2]|0)!=0){if((c[45332>>2]|0)>=100){if((c[45336>>2]|0)>0){c[b>>2]=c[45332>>2]&-8;c[45332>>2]=c[b>>2];c[d>>2]=c[45328>>2];c[e>>2]=c[45336>>2];c[508>>2]=c[d>>2];c[512>>2]=c[e>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=((c[e>>2]|0)-1|0)){break}c[c[d>>2]>>2]=(c[d>>2]|0)+(c[b>>2]|0);c[d>>2]=c[c[d>>2]>>2];c[f>>2]=(c[f>>2]|0)+1}c[c[d>>2]>>2]=0;c[504>>2]=(c[d>>2]|0)+4}else{a=12}}else{a=12}}else{a=12}if((a|0)==12){c[504>>2]=0;c[45328>>2]=0;c[45332>>2]=0;c[45336>>2]=0}if((c[45340>>2]|0)!=0){if((c[45344>>2]|0)>=512){if((c[45348>>2]|0)>=1){h=c[45192>>2]|0;j=c[45200>>2]|0;j=ub[h&63](j)|0;i=g;return j|0}}}c[45340>>2]=0;c[45344>>2]=0;c[45348>>2]=0;h=c[45192>>2]|0;j=c[45200>>2]|0;j=ub[h&63](j)|0;i=g;return j|0}function Wf(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;b=a+8|0;d=a;e=a+4|0;c[d>>2]=1896;c[e>>2]=12824;c[b>>2]=0;while(1){if((c[b>>2]|0)>=56){break}rr(c[d>>2]|0,(c[e>>2]|0)+((c[b>>2]|0)*36|0)|0);c[b>>2]=(c[b>>2]|0)+1}$s();at();i=a;return}function Xf(){var a=0,b=0;a=i;if((c[45248>>2]|0)==0){ag()}b=ub[c[45248>>2]&63](c[45244>>2]|0)|0;i=a;return b|0}function Yf(){var a=0,b=0,d=0;a=i;i=i+16|0;b=a+4|0;d=a;c[d>>2]=mc(10)|0;if((c[d>>2]|0)==0){c[b>>2]=7;d=c[b>>2]|0;i=a;return d|0}else{oc(c[d>>2]|0);c[b>>2]=Ec()|0;d=c[b>>2]|0;i=a;return d|0}return 0}function Zf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;j=e;f=e+4|0;h=e+8|0;c[g>>2]=a;c[j>>2]=b;c[f>>2]=d;if((c[3484>>2]|0)==0){i=e;return}c[j>>2]=c[j>>2]&-8;c[3488>>2]=c[j>>2];a=c[f>>2]|0;c[3516>>2]=a;c[3492>>2]=a;if((c[f>>2]|0)>90){d=10}else{d=((c[f>>2]|0)/10|0)+1|0}c[3496>>2]=d;c[3500>>2]=c[g>>2];c[3512>>2]=0;c[3520>>2]=0;while(1){a=c[f>>2]|0;c[f>>2]=a+ -1;d=c[g>>2]|0;if((a|0)==0){break}c[h>>2]=d;c[c[h>>2]>>2]=c[3512>>2];c[3512>>2]=c[h>>2];c[g>>2]=(c[g>>2]|0)+(c[j>>2]|0)}c[3504>>2]=d;i=e;return}function _f(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+48|0;e=f+44|0;k=f+40|0;g=f+24|0;d=f+16|0;h=f;j=f+8|0;c[k>>2]=a;c[d>>2]=0;if((c[45360>>2]|0)!=0){c[e>>2]=Xb(121405)|0;a=c[e>>2]|0;i=f;return a|0}c[g>>2]=b;do{switch(c[k>>2]|0){case 22:{a=c[g>>2]|0;k=a;l=c[k>>2]|0;k=c[k+4>>2]|0;c[g>>2]=a+8;a=h;c[a>>2]=l;c[a+4>>2]=k;a=c[g>>2]|0;k=a;l=c[k>>2]|0;k=c[k+4>>2]|0;c[g>>2]=a+8;a=j;c[a>>2]=l;c[a+4>>2]=k;a=j;b=c[a+4>>2]|0;a=(c[j+4>>2]|0)<0|((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>0);b=j;c[b>>2]=a?0:l;c[b+4>>2]=a?0:k;b=j;k=c[b+4>>2]|0;a=45320|0;c[a>>2]=c[b>>2];c[a+4>>2]=k;if((c[h+4>>2]|0)<0){l=h;c[l>>2]=0;c[l+4>>2]=0}a=h;b=c[a+4>>2]|0;l=j;k=c[l+4>>2]|0;if((b|0)>(k|0)|((b|0)==(k|0)?(c[a>>2]|0)>>>0>(c[l>>2]|0)>>>0:0)){k=j;a=c[k+4>>2]|0;l=h;c[l>>2]=c[k>>2];c[l+4>>2]=a}k=h;a=c[k+4>>2]|0;l=45312|0;c[l>>2]=c[k>>2];c[l+4>>2]=a;break};case 4:{a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45172>>2]=c[l+0>>2];c[45176>>2]=c[l+4>>2];c[45180>>2]=c[l+8>>2];c[45184>>2]=c[l+12>>2];c[45188>>2]=c[l+16>>2];c[45192>>2]=c[l+20>>2];c[45196>>2]=c[l+24>>2];c[45200>>2]=c[l+28>>2];break};case 9:{a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[11284]=l;break};case 16:{l=c[g>>2]|0;a=c[l>>2]|0;c[g>>2]=l+4;c[45388>>2]=a;a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45392>>2]=l;break};case 18:{j=c[g>>2]|0;h=c[j>>2]|0;c[g>>2]=j+4;j=45240|0;h=h+0|0;g=j+52|0;do{c[j>>2]=c[h>>2];j=j+4|0;h=h+4|0}while((j|0)<(g|0));break};case 17:{a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45148>>2]=l;break};case 13:{l=c[g>>2]|0;a=c[l>>2]|0;c[g>>2]=l+4;c[45164>>2]=a;a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45168>>2]=l;break};case 6:{a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45328>>2]=l;l=c[g>>2]|0;a=c[l>>2]|0;c[g>>2]=l+4;c[45332>>2]=a;a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45336>>2]=l;break};case 15:{c[d>>2]=1;break};case 20:{a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45152>>2]=l;break};case 5:{if((c[45172>>2]|0)==0){$f()}a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[l+0>>2]=c[45172>>2];c[l+4>>2]=c[45176>>2];c[l+8>>2]=c[45180>>2];c[l+12>>2]=c[45184>>2];c[l+16>>2]=c[45188>>2];c[l+20>>2]=c[45192>>2];c[l+24>>2]=c[45196>>2];c[l+28>>2]=c[45200>>2];break};case 19:{if((c[45248>>2]|0)==0){ag()}h=c[g>>2]|0;j=c[h>>2]|0;c[g>>2]=h+4;j=j+0|0;h=45240|0;g=j+52|0;do{c[j>>2]=c[h>>2];j=j+4|0;h=h+4|0}while((j|0)<(g|0));break};case 7:{a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45340>>2]=l;l=c[g>>2]|0;a=c[l>>2]|0;c[g>>2]=l+4;c[45344>>2]=a;a=c[g>>2]|0;l=c[a>>2]|0;c[g>>2]=a+4;c[45348>>2]=l;break};case 14:{break};default:{c[d>>2]=1}}}while(0);c[e>>2]=c[d>>2];l=c[e>>2]|0;i=f;return l|0}function $f(){var a=0,b=0;a=i;i=i+16|0;b=a;c[b>>2]=12712;_f(4,b)|0;i=a;return}function ag(){var a=0,b=0;a=i;i=i+16|0;b=a;c[b>>2]=12656;_f(18,b)|0;i=a;return}function bg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;f=b+12|0;g=b;d=b+4|0;e=b+8|0;c[f>>2]=a;Yb(c[f>>2]|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){break}c[d>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]<<4)+4>>2];if((c[d>>2]|0)!=0){c[e>>2]=Zb(c[d>>2]|0)|0;cg(c[e>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}i=b;return 0}function cg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Or(c[(c[d>>2]|0)+204>>2]|0);i=b;return}function dg(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=i;i=i+32|0;k=p+28|0;h=p;r=p+4|0;q=p+8|0;n=p+12|0;l=p+16|0;o=p+20|0;m=p+24|0;c[h>>2]=d;c[r>>2]=e;c[q>>2]=f;c[n>>2]=g;if((c[(c[h>>2]|0)+244>>2]|0)!=0){c[k>>2]=5;d=c[k>>2]|0;i=p;return d|0}if((a[(c[h>>2]|0)+243>>0]|0)!=0){oc(c[(c[h>>2]|0)+268>>2]|0)}d=c[q>>2]&-8;c[q>>2]=d;c[q>>2]=(c[q>>2]|0)<=4?0:d;if((c[n>>2]|0)<0){c[n>>2]=0}do{if((c[q>>2]|0)==0){j=9}else{if((c[n>>2]|0)==0){j=9}else{if((c[r>>2]|0)!=0){c[l>>2]=c[r>>2];break}Ih();c[l>>2]=nc($(c[q>>2]|0,c[n>>2]|0)|0)|0;Jh();if((c[l>>2]|0)!=0){d=_b(c[l>>2]|0)|0;c[n>>2]=(d|0)/(c[q>>2]|0)|0}}}}while(0);if((j|0)==9){c[q>>2]=0;c[l>>2]=0}c[(c[h>>2]|0)+268>>2]=c[l>>2];c[(c[h>>2]|0)+264>>2]=0;b[(c[h>>2]|0)+240>>1]=c[q>>2];if((c[l>>2]|0)!=0){c[m>>2]=c[l>>2];c[o>>2]=(c[n>>2]|0)-1;while(1){if((c[o>>2]|0)<0){break}c[c[m>>2]>>2]=c[(c[h>>2]|0)+264>>2];c[(c[h>>2]|0)+264>>2]=c[m>>2];c[m>>2]=(c[m>>2]|0)+(c[q>>2]|0);c[o>>2]=(c[o>>2]|0)+ -1}c[(c[h>>2]|0)+272>>2]=c[m>>2];a[(c[h>>2]|0)+242>>0]=1;a[(c[h>>2]|0)+243>>0]=(c[r>>2]|0)==0?1:0}else{c[(c[h>>2]|0)+268>>2]=c[h>>2];c[(c[h>>2]|0)+272>>2]=c[h>>2];a[(c[h>>2]|0)+242>>0]=0;a[(c[h>>2]|0)+243>>0]=0}c[k>>2]=0;d=c[k>>2]|0;i=p;return d|0}function eg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(c[d>>2]|0)+32|0;D=c[a+4>>2]|0;i=b;return c[a>>2]|0}function fg(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+80>>2]|0}function gg(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+84>>2]|0}function hg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=ig(c[d>>2]|0,0)|0;i=b;return a|0}function ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d;e=d+12|0;f=d+4|0;h=d+8|0;c[f>>2]=a;c[h>>2]=b;if((c[f>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}if((Ag(c[f>>2]|0)|0)==0){c[e>>2]=Xb(121912)|0;a=c[e>>2]|0;i=d;return a|0}Mr(c[f>>2]|0);Jr(c[f>>2]|0)|0;if((c[h>>2]|0)==0){if((wr(c[f>>2]|0)|0)!=0){Rc(c[f>>2]|0,5,12584,g);c[e>>2]=5;a=c[e>>2]|0;i=d;return a|0}}c[(c[f>>2]|0)+76>>2]=1691352191;wd(c[f>>2]|0);c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}function jg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=ig(c[d>>2]|0,1)|0;i=b;return a|0}function kg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e;g=e+4|0;c[f>>2]=a;c[h>>2]=b;c[g>>2]=d;c[(c[f>>2]|0)+436>>2]=c[h>>2];c[(c[f>>2]|0)+440>>2]=c[g>>2];c[(c[f>>2]|0)+444>>2]=0;c[(c[f>>2]|0)+484>>2]=0;i=e;return 0}function lg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=c[e>>2]|0;if((c[f>>2]|0)>0){kg(b,46,c[e>>2]|0)|0;c[(c[e>>2]|0)+484>>2]=c[f>>2];i=d;return 0}else{kg(b,0,0)|0;i=d;return 0}return 0}function mg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;j=d;h=d+4|0;f=d+8|0;g=d+12|0;c[j>>2]=a;c[h>>2]=b;c[f>>2]=c[j>>2];c[g>>2]=c[(c[j>>2]|0)+484>>2];if((((c[h>>2]|0)+1|0)*1e3|0)>(c[g>>2]|0)){c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}else{Eg(c[c[f>>2]>>2]|0,1e6)|0;c[e>>2]=1;j=c[e>>2]|0;i=d;return j|0}return 0}function ng(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+32|0;s=k+28|0;r=k;q=k+4|0;p=k+8|0;o=k+12|0;n=k+16|0;m=k+20|0;l=k+24|0;c[s>>2]=a;c[r>>2]=b;c[q>>2]=d;c[p>>2]=e;c[o>>2]=f;c[n>>2]=g;c[m>>2]=h;c[l>>2]=j;a=og(c[s>>2]|0,c[r>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,0)|0;i=k;return a|0}function og(a,b,d,e,f,g,h,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;o=i;i=i+48|0;w=o+40|0;s=o+36|0;t=o+32|0;u=o+28|0;q=o+24|0;v=o+20|0;l=o+12|0;x=o+8|0;p=o+4|0;n=o;r=o+16|0;c[w>>2]=a;c[s>>2]=b;c[t>>2]=d;c[u>>2]=e;c[q>>2]=f;c[v>>2]=g;c[l>>2]=h;c[x>>2]=j;c[p>>2]=k;c[n>>2]=1;c[r>>2]=0;do{if((c[p>>2]|0)!=0){c[r>>2]=ve(c[w>>2]|0,12)|0;k=c[p>>2]|0;if((c[r>>2]|0)!=0){c[(c[r>>2]|0)+4>>2]=k;c[(c[r>>2]|0)+8>>2]=c[q>>2];m=5;break}else{rb[k&31](c[q>>2]|0);break}}else{m=5}}while(0);if((m|0)==5){c[n>>2]=pg(c[w>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[q>>2]|0,c[v>>2]|0,c[l>>2]|0,c[x>>2]|0,c[r>>2]|0)|0;if((c[r>>2]|0)!=0){if((c[c[r>>2]>>2]|0)==0){rb[c[p>>2]&31](c[q>>2]|0);cc(c[w>>2]|0,c[r>>2]|0)}}}c[n>>2]=Bd(c[w>>2]|0,c[n>>2]|0)|0;i=o;return c[n>>2]|0}function pg(d,e,f,g,h,j,k,l,m){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;u=i;i=i+64|0;B=u;z=u+52|0;p=u+48|0;q=u+44|0;s=u+40|0;t=u+36|0;y=u+32|0;o=u+56|0;w=u+20|0;x=u+16|0;A=u+12|0;n=u+8|0;r=u+4|0;v=u+24|0;C=u+28|0;c[p>>2]=d;c[q>>2]=e;c[s>>2]=f;c[t>>2]=g;c[y>>2]=h;c[o>>2]=j;c[w>>2]=k;c[x>>2]=l;c[A>>2]=m;do{if((c[q>>2]|0)!=0){if((c[o>>2]|0)!=0){if((c[x>>2]|0)!=0){break}if((c[w>>2]|0)!=0){break}}if((c[o>>2]|0)==0){if((c[x>>2]|0)!=0){if((c[w>>2]|0)==0){break}}}if((c[o>>2]|0)==0){if((c[x>>2]|0)==0){if((c[w>>2]|0)!=0){break}}}if(!((c[s>>2]|0)<-1|(c[s>>2]|0)>127)){d=Ub(c[q>>2]|0)|0;c[r>>2]=d;if(255>=(d|0)){c[v>>2]=c[t>>2]&2048;c[t>>2]=c[t>>2]&7;do{if((c[t>>2]|0)==4){c[t>>2]=(a[1480]|0)==0?3:2}else{if((c[t>>2]|0)==5){c[C>>2]=pg(c[p>>2]|0,c[q>>2]|0,c[s>>2]|0,1|c[v>>2],c[y>>2]|0,c[o>>2]|0,c[w>>2]|0,c[x>>2]|0,c[A>>2]|0)|0;if((c[C>>2]|0)==0){c[C>>2]=pg(c[p>>2]|0,c[q>>2]|0,c[s>>2]|0,2|c[v>>2],c[y>>2]|0,c[o>>2]|0,c[w>>2]|0,c[x>>2]|0,c[A>>2]|0)|0}if((c[C>>2]|0)==0){c[t>>2]=3;break}c[z>>2]=c[C>>2];d=c[z>>2]|0;i=u;return d|0}}}while(0);c[n>>2]=rg(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]&255,0)|0;do{if((c[n>>2]|0)!=0){if((b[(c[n>>2]|0)+2>>1]&3|0)==(c[t>>2]|0)){if((b[c[n>>2]>>1]|0)==(c[s>>2]|0)){C=c[p>>2]|0;if((c[(c[p>>2]|0)+140>>2]|0)==0){yf(C);break}Rc(C,5,11656,B);c[z>>2]=5;d=c[z>>2]|0;i=u;return d|0}}}}while(0);c[n>>2]=rg(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]&255,1)|0;if((c[n>>2]|0)==0){c[z>>2]=7;d=c[z>>2]|0;i=u;return d|0}vr(c[p>>2]|0,c[n>>2]|0);if((c[A>>2]|0)!=0){d=c[A>>2]|0;c[d>>2]=(c[d>>2]|0)+1}c[(c[n>>2]|0)+32>>2]=c[A>>2];b[(c[n>>2]|0)+2>>1]=b[(c[n>>2]|0)+2>>1]&3|c[v>>2];c[(c[n>>2]|0)+12>>2]=c[o>>2];c[(c[n>>2]|0)+16>>2]=c[w>>2];c[(c[n>>2]|0)+20>>2]=c[x>>2];c[(c[n>>2]|0)+4>>2]=c[y>>2];b[c[n>>2]>>1]=c[s>>2];c[z>>2]=0;d=c[z>>2]|0;i=u;return d|0}}}}while(0);c[z>>2]=Xb(122454)|0;d=c[z>>2]|0;i=u;return d|0}function qg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;g=f+16|0;j=f;h=f+4|0;k=f+8|0;e=f+12|0;c[g>>2]=a;c[j>>2]=b;c[h>>2]=d;c[k>>2]=Ub(c[j>>2]|0)|0;c[e>>2]=0;if((rg(c[g>>2]|0,c[j>>2]|0,c[k>>2]|0,c[h>>2]|0,1,0)|0)==0){c[e>>2]=pg(c[g>>2]|0,c[j>>2]|0,c[h>>2]|0,1,0,55,0,0,0)|0}c[e>>2]=Bd(c[g>>2]|0,c[e>>2]|0)|0;i=f;return c[e>>2]|0}function rg(e,f,g,h,j,k){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;y=i;i=i+64|0;x=y+44|0;u=y+28|0;w=y+40|0;m=y+36|0;s=y+32|0;t=y+48|0;p=y+49|0;q=y+24|0;n=y+16|0;o=y+12|0;v=y+8|0;z=y+4|0;l=y;r=y+20|0;c[u>>2]=e;c[w>>2]=f;c[m>>2]=g;c[s>>2]=h;a[t>>0]=j;a[p>>0]=k;c[n>>2]=0;c[o>>2]=0;c[v>>2]=((d[784+(d[c[w>>2]>>0]|0)>>0]|0)+(c[m>>2]|0)|0)%23|0;c[q>>2]=pr((c[u>>2]|0)+328|0,c[v>>2]|0,c[w>>2]|0,c[m>>2]|0)|0;while(1){if((c[q>>2]|0)==0){break}c[z>>2]=qr(c[q>>2]|0,c[s>>2]|0,a[t>>0]|0)|0;if((c[z>>2]|0)>(c[o>>2]|0)){c[n>>2]=c[q>>2];c[o>>2]=c[z>>2]}c[q>>2]=c[(c[q>>2]|0)+8>>2]}a:do{if((a[p>>0]|0)==0){if((c[n>>2]|0)!=0){if((c[(c[u>>2]|0)+24>>2]&2097152|0)==0){break}}c[l>>2]=1896;c[o>>2]=0;c[q>>2]=pr(c[l>>2]|0,c[v>>2]|0,c[w>>2]|0,c[m>>2]|0)|0;while(1){if((c[q>>2]|0)==0){break a}c[r>>2]=qr(c[q>>2]|0,c[s>>2]|0,a[t>>0]|0)|0;if((c[r>>2]|0)>(c[o>>2]|0)){c[n>>2]=c[q>>2];c[o>>2]=c[r>>2]}c[q>>2]=c[(c[q>>2]|0)+8>>2]}}}while(0);if((d[p>>0]|0)!=0){if((c[o>>2]|0)<6){e=ve(c[u>>2]|0,37+(c[m>>2]|0)|0)|0;c[n>>2]=e;if((e|0)!=0){c[(c[n>>2]|0)+24>>2]=(c[n>>2]|0)+36;b[c[n>>2]>>1]=c[s>>2];b[(c[n>>2]|0)+2>>1]=d[t>>0]|0;fL(c[(c[n>>2]|0)+24>>2]|0,c[w>>2]|0,c[m>>2]|0)|0;a[(c[(c[n>>2]|0)+24>>2]|0)+(c[m>>2]|0)>>0]=0;rr((c[u>>2]|0)+328|0,c[n>>2]|0)}}}do{if((c[n>>2]|0)!=0){if((c[(c[n>>2]|0)+16>>2]|0)==0){if((c[(c[n>>2]|0)+12>>2]|0)==0){if((d[p>>0]|0)==0){break}}}c[x>>2]=c[n>>2];e=c[x>>2]|0;i=y;return e|0}}while(0);c[x>>2]=0;e=c[x>>2]|0;i=y;return e|0}function sg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e;g=e+20|0;j=e+12|0;f=e+16|0;c[g>>2]=a;c[e+4>>2]=b;c[e+8>>2]=d;c[j>>2]=c[(c[c[g>>2]>>2]|0)+24>>2];c[h>>2]=c[j>>2];c[f>>2]=wc(11536,h)|0;Xd(c[g>>2]|0,c[f>>2]|0,-1);oc(c[f>>2]|0);i=e;return}function tg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;b=c[f>>2]|0;if((c[e>>2]|0)>0){ug(b,10,c[e>>2]|0)|0;i=d;return 0}else{ug(b,0,0)|0;i=d;return 0}return 0}function ug(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;j=f;h=f+4|0;e=f+8|0;c[g>>2]=a;c[j>>2]=b;c[h>>2]=d;c[e>>2]=c[(c[g>>2]|0)+208>>2];c[(c[g>>2]|0)+204>>2]=c[j>>2];c[(c[g>>2]|0)+208>>2]=c[h>>2];i=f;return c[e>>2]|0}function vg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f+12|0;g=f;h=f+4|0;k=f+8|0;c[j>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;if((c[k>>2]|0)<(c[j>>2]|0)){i=f;return 0}Ih();zg(c[g>>2]|0,c[h>>2]|0)|0;Jh();i=f;return 0}function wg(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+48|0;h=j;o=j+28|0;l=j+24|0;m=j+20|0;p=j+32|0;q=j+8|0;r=j+4|0;n=j+12|0;k=j+16|0;c[l>>2]=b;c[m>>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[k>>2]=10;if((c[q>>2]|0)!=0){c[c[q>>2]>>2]=-1}if((c[r>>2]|0)!=0){c[c[r>>2]>>2]=-1}if((c[p>>2]|0)<0|(c[p>>2]|0)>2){c[o>>2]=21;b=c[o>>2]|0;i=j;return b|0}if((c[m>>2]|0)!=0){if((a[c[m>>2]>>0]|0)!=0){c[k>>2]=xg(c[l>>2]|0,c[m>>2]|0)|0}}if((c[k>>2]|0)<0){c[n>>2]=1;b=c[l>>2]|0;c[h>>2]=c[m>>2];Rc(b,1,1992,h)}else{c[n>>2]=yg(c[l>>2]|0,c[k>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;Rc(c[l>>2]|0,c[n>>2]|0,0,h)}c[n>>2]=Bd(c[l>>2]|0,c[n>>2]|0)|0;c[o>>2]=c[n>>2];b=c[o>>2]|0;i=j;return b|0}function xg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;j=d+16|0;g=d;e=d+4|0;f=d+8|0;h=d+12|0;c[j>>2]=a;c[g>>2]=b;c[e>>2]=-1;if((c[g>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[h>>2]=Ub(c[g>>2]|0)|0;c[e>>2]=(c[(c[j>>2]|0)+20>>2]|0)-1;c[f>>2]=(c[(c[j>>2]|0)+16>>2]|0)+(c[e>>2]<<4);while(1){if((c[e>>2]|0)<0){b=7;break}a=c[h>>2]|0;if((a|0)==(Ub(c[c[f>>2]>>2]|0)|0)){if(0==(Dc(c[c[f>>2]>>2]|0,c[g>>2]|0)|0)){b=7;break}}c[e>>2]=(c[e>>2]|0)+ -1;c[f>>2]=(c[f>>2]|0)+ -16}if((b|0)==7){a=c[e>>2]|0;i=d;return a|0}return 0}function yg(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;k=j+28|0;p=j;m=j+4|0;g=j+8|0;o=j+12|0;h=j+16|0;l=j+20|0;n=j+24|0;c[k>>2]=a;c[p>>2]=b;c[m>>2]=d;c[g>>2]=e;c[o>>2]=f;c[h>>2]=0;c[n>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[k>>2]|0)+20>>2]|0)){break}if((c[h>>2]|0)!=0){break}if((c[p>>2]|0)==10?1:(c[l>>2]|0)==(c[p>>2]|0)){c[h>>2]=nr(c[(c[(c[k>>2]|0)+16>>2]|0)+(c[l>>2]<<4)+4>>2]|0,c[m>>2]|0,c[g>>2]|0,c[o>>2]|0)|0;c[g>>2]=0;c[o>>2]=0;if((c[h>>2]|0)==5){c[n>>2]=1;c[h>>2]=0}}c[l>>2]=(c[l>>2]|0)+1}if((c[h>>2]|0)==0){if((c[n>>2]|0)!=0){a=5;i=j;return a|0}}a=c[h>>2]|0;i=j;return a|0}function zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=wg(c[f>>2]|0,c[e>>2]|0,0,0,0)|0;i=d;return a|0}function Ag(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;f=b;e=b+4|0;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+76>>2];if((c[e>>2]|0)!=1266094736&(c[e>>2]|0)!=-1607883113&(c[e>>2]|0)!=-264537850){mr(11480);c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}else{c[d>>2]=1;f=c[d>>2]|0;i=b;return f|0}return 0}function Bg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=Cg(c[f>>2]|0,c[e>>2]|0,6,0)|0;i=d;return a|0}function Cg(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=i;i=i+48|0;q=p;m=p+36|0;o=p+32|0;r=p+28|0;g=p+24|0;n=p+40|0;l=p+12|0;j=p+8|0;s=p+4|0;k=p+16|0;h=p+20|0;c[o>>2]=b;c[r>>2]=d;c[g>>2]=e;c[n>>2]=f;c[k>>2]=0;c[h>>2]=0;c[c[r>>2]>>2]=0;c[j>>2]=ec()|0;if((c[j>>2]|0)!=0){c[m>>2]=c[j>>2];b=c[m>>2]|0;i=p;return b|0}if((1<<(c[g>>2]&7)&70|0)==0){c[m>>2]=Xb(123516)|0;b=c[m>>2]|0;i=p;return b|0}do{if((c[45140>>2]|0)==0){c[s>>2]=0}else{if((c[g>>2]&32768|0)!=0){c[s>>2]=0;break}if((c[g>>2]&65536|0)!=0){c[s>>2]=1;break}else{c[s>>2]=c[45144>>2];break}}}while(0);if((c[g>>2]&262144|0)!=0){c[g>>2]=c[g>>2]&-131073}else{if((c[45356>>2]|0)!=0){c[g>>2]=c[g>>2]|131072}}c[g>>2]=c[g>>2]&-655129;c[l>>2]=Sc(520)|0;do{if((c[l>>2]|0)!=0){if((c[s>>2]|0)!=0){c[(c[l>>2]|0)+12>>2]=8;if((c[(c[l>>2]|0)+12>>2]|0)==0){oc(c[l>>2]|0);c[l>>2]=0;break}}c[(c[l>>2]|0)+56>>2]=255;c[(c[l>>2]|0)+20>>2]=2;c[(c[l>>2]|0)+76>>2]=-264537850;c[(c[l>>2]|0)+16>>2]=(c[l>>2]|0)+448;e=(c[l>>2]|0)+88|0;f=2016|0;s=e+44|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(s|0));a[(c[l>>2]|0)+62>>0]=1;a[(c[l>>2]|0)+66>>0]=-1;e=45312|0;d=c[e+4>>2]|0;b=(c[l>>2]|0)+40|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;c[(c[l>>2]|0)+72>>2]=0;b=(c[l>>2]|0)+24|0;c[b>>2]=c[b>>2]|9437264;Lh((c[l>>2]|0)+420|0);Lh((c[l>>2]|0)+300|0);Dg(c[l>>2]|0,3640,1,0,12,0)|0;Dg(c[l>>2]|0,3640,3,0,12,0)|0;Dg(c[l>>2]|0,3640,2,0,12,0)|0;Dg(c[l>>2]|0,3648,1,1,12,0)|0;if((a[(c[l>>2]|0)+64>>0]|0)==0){b=xh(c[l>>2]|0,1,3640,0)|0;c[(c[l>>2]|0)+8>>2]=b;Dg(c[l>>2]|0,3656,1,0,13,0)|0;c[(c[l>>2]|0)+48>>2]=c[g>>2];c[j>>2]=Oh(c[n>>2]|0,c[o>>2]|0,g,c[l>>2]|0,k,h)|0;if((c[j>>2]|0)!=0){if((c[j>>2]|0)==7){a[(c[l>>2]|0)+64>>0]=1}e=c[l>>2]|0;d=c[j>>2]|0;b=(c[h>>2]|0)!=0?1768:0;c[q>>2]=c[h>>2];Rc(e,d,b,q);oc(c[h>>2]|0);break}c[j>>2]=Ph(c[c[l>>2]>>2]|0,c[k>>2]|0,c[l>>2]|0,(c[(c[l>>2]|0)+16>>2]|0)+4|0,0,c[g>>2]|256)|0;if((c[j>>2]|0)!=0){if((c[j>>2]|0)==3082){c[j>>2]=7}Rc(c[l>>2]|0,c[j>>2]|0,0,q);break}b=Qh(c[l>>2]|0,c[(c[(c[l>>2]|0)+16>>2]|0)+4>>2]|0)|0;c[(c[(c[l>>2]|0)+16>>2]|0)+12>>2]=b;b=Qh(c[l>>2]|0,0)|0;c[(c[(c[l>>2]|0)+16>>2]|0)+28>>2]=b;c[c[(c[l>>2]|0)+16>>2]>>2]=3664;a[(c[(c[l>>2]|0)+16>>2]|0)+8>>0]=3;c[(c[(c[l>>2]|0)+16>>2]|0)+16>>2]=1816;a[(c[(c[l>>2]|0)+16>>2]|0)+24>>0]=1;c[(c[l>>2]|0)+76>>2]=-1607883113;if((a[(c[l>>2]|0)+64>>0]|0)==0){Rc(c[l>>2]|0,0,0,q);Rh(c[l>>2]|0);c[j>>2]=Ef(c[l>>2]|0)|0;if((c[j>>2]|0)==0){Sh(c[l>>2]|0);c[j>>2]=Ef(c[l>>2]|0)|0;if((c[j>>2]|0)!=0){break}}if((a[(c[l>>2]|0)+64>>0]|0)==0){if((c[j>>2]|0)==0){c[j>>2]=Th(c[l>>2]|0)|0}}if((c[j>>2]|0)!=0){Rc(c[l>>2]|0,c[j>>2]|0,0,q)}dg(c[l>>2]|0,0,c[45164>>2]|0,c[45168>>2]|0)|0;tg(c[l>>2]|0,1e3)|0}}}}while(0);oc(c[k>>2]|0);c[j>>2]=Ef(c[l>>2]|0)|0;if((c[j>>2]|0)==7){hg(c[l>>2]|0)|0;c[l>>2]=0}else{if((c[j>>2]|0)!=0){c[(c[l>>2]|0)+76>>2]=1266094736}}c[c[r>>2]>>2]=c[l>>2];c[m>>2]=Bd(0,c[j>>2]|0)|0;b=c[m>>2]|0;i=p;return b|0}function Dg(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;r=i;i=i+64|0;m=r;u=r+44|0;n=r+40|0;p=r+36|0;y=r+52|0;w=r+32|0;v=r+28|0;x=r+48|0;q=r+16|0;o=r+12|0;l=r+8|0;k=r+4|0;s=r+20|0;t=r+24|0;c[n>>2]=b;c[p>>2]=e;a[y>>0]=f;c[w>>2]=g;c[v>>2]=h;c[x>>2]=j;c[l>>2]=Ub(c[p>>2]|0)|0;c[o>>2]=d[y>>0]|0;if((c[o>>2]|0)==4|(c[o>>2]|0)==8){c[o>>2]=(a[1480]|0)==0?3:2}if((c[o>>2]|0)<1|(c[o>>2]|0)>3){c[u>>2]=Xb(123094)|0;b=c[u>>2]|0;i=r;return b|0}c[q>>2]=xh(c[n>>2]|0,c[o>>2]&255,c[p>>2]|0,0)|0;a:do{if((c[q>>2]|0)!=0){if((c[(c[q>>2]|0)+12>>2]|0)!=0){j=c[n>>2]|0;if((c[(c[n>>2]|0)+140>>2]|0)!=0){Rc(j,5,3568,m);c[u>>2]=5;b=c[u>>2]|0;i=r;return b|0}yf(j);yh(c[n>>2]|0);if((d[(c[q>>2]|0)+4>>0]&-9|0)==(c[o>>2]|0)){c[k>>2]=zh((c[n>>2]|0)+420|0,c[p>>2]|0,c[l>>2]|0)|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=3){break a}c[t>>2]=(c[k>>2]|0)+((c[s>>2]|0)*20|0);if((d[(c[t>>2]|0)+4>>0]|0)==(d[(c[q>>2]|0)+4>>0]|0)){if((c[(c[t>>2]|0)+16>>2]|0)!=0){rb[c[(c[t>>2]|0)+16>>2]&31](c[(c[t>>2]|0)+8>>2]|0)}c[(c[t>>2]|0)+12>>2]=0}c[s>>2]=(c[s>>2]|0)+1}}}}}while(0);c[q>>2]=xh(c[n>>2]|0,c[o>>2]&255,c[p>>2]|0,1)|0;if((c[q>>2]|0)==0){c[u>>2]=7;b=c[u>>2]|0;i=r;return b|0}else{c[(c[q>>2]|0)+12>>2]=c[v>>2];c[(c[q>>2]|0)+8>>2]=c[w>>2];c[(c[q>>2]|0)+16>>2]=c[x>>2];a[(c[q>>2]|0)+4>>0]=c[o>>2]|a[y>>0]&8;Rc(c[n>>2]|0,0,0,m);c[u>>2]=0;b=c[u>>2]|0;i=r;return b|0}return 0}function Eg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[f>>2]|0)+60>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Fg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;o=k+28|0;n=k;j=k+4|0;g=k+8|0;f=k+12|0;l=k+16|0;m=k+20|0;h=k+24|0;c[o>>2]=a;c[n>>2]=b;c[j>>2]=d;c[g>>2]=e;c[f>>2]=1;c[l>>2]=Gg(c[o>>2]|0,c[n>>2]|0)|0;if((c[l>>2]|0)==0){o=c[f>>2]|0;i=k;return o|0}Uc(c[l>>2]|0);c[m>>2]=Zb(c[l>>2]|0)|0;c[h>>2]=jd(c[m>>2]|0)|0;l=c[h>>2]|0;if((c[j>>2]|0)==7){c[c[g>>2]>>2]=l;c[f>>2]=0;o=c[f>>2]|0;i=k;return o|0}if((c[l>>2]|0)!=0){c[f>>2]=Hg(c[h>>2]|0,c[j>>2]|0,c[g>>2]|0)|0;o=c[f>>2]|0;i=k;return o|0}else{c[f>>2]=12;o=c[f>>2]|0;i=k;return o|0}return 0}function Gg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;d=e+12|0;f=e;h=e+4|0;g=e+8|0;c[f>>2]=a;c[h>>2]=b;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){b=8;break}if((c[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]<<4)+4>>2]|0)!=0){if((c[h>>2]|0)==0){b=6;break}if((Dc(c[h>>2]|0,c[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]<<4)>>2]|0)|0)==0){b=6;break}}c[g>>2]=(c[g>>2]|0)+1}if((b|0)==6){c[d>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]<<4)+4>>2];a=c[d>>2]|0;i=e;return a|0}else if((b|0)==8){c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}return 0}function Hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=pb[c[(c[c[h>>2]>>2]|0)+40>>2]&31](c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Ig(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+32|0;j=m+24|0;p=m;o=m+4|0;l=m+8|0;n=m+12|0;h=m+16|0;k=m+20|0;c[p>>2]=a;c[o>>2]=d;c[l>>2]=f;c[n>>2]=g;c[h>>2]=0;c[k>>2]=c[(c[p>>2]|0)+4>>2];Uc(c[p>>2]|0);if((b[(c[k>>2]|0)+22>>1]&2|0)!=0){c[j>>2]=8;p=c[j>>2]|0;i=m;return p|0}if((c[l>>2]|0)<0){c[l>>2]=(c[(c[k>>2]|0)+32>>2]|0)-(c[(c[k>>2]|0)+36>>2]|0)}if((c[o>>2]|0)>=512&(c[o>>2]|0)<=65536){if(((c[o>>2]|0)-1&c[o>>2]|0)==0){c[(c[k>>2]|0)+32>>2]=c[o>>2];ah(c[k>>2]|0)}}c[h>>2]=bh(c[c[k>>2]>>2]|0,(c[k>>2]|0)+32|0,c[l>>2]|0)|0;c[(c[k>>2]|0)+36>>2]=(c[(c[k>>2]|0)+32>>2]|0)-(c[l>>2]&65535);if((c[n>>2]|0)!=0){p=(c[k>>2]|0)+22|0;b[p>>1]=e[p>>1]|0|2}c[j>>2]=c[h>>2];p=c[j>>2]|0;i=m;return p|0}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=$g(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Kg(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((c[512>>2]|0)!=0){if((c[45332>>2]|0)>=(c[e>>2]|0)){c[d>>2]=c[508>>2];c[508>>2]=c[c[508>>2]>>2];c[512>>2]=(c[512>>2]|0)+ -1;pc(3,1);Xg(8,c[e>>2]|0);e=c[d>>2]|0;i=b;return e|0}}if((c[11284]|0)==0){c[d>>2]=ub[c[45172>>2]&63](c[e>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}Xg(8,c[e>>2]|0);c[e>>2]=Yg(c[e>>2]|0,d)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}pc(4,c[e>>2]|0);e=c[d>>2]|0;i=b;return e|0}function Lg(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b;f=b+4|0;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}if((c[d>>2]|0)>>>0>=(c[45328>>2]|0)>>>0){if((c[d>>2]|0)>>>0<(c[504>>2]|0)>>>0){c[e>>2]=c[d>>2];c[c[e>>2]>>2]=c[508>>2];c[508>>2]=c[e>>2];c[512>>2]=(c[512>>2]|0)+1;pc(3,-1);i=b;return}}if((c[11284]|0)!=0){c[f>>2]=_b(c[d>>2]|0)|0;pc(4,0-(c[f>>2]|0)|0);pc(0,0-(c[f>>2]|0)|0);pc(9,-1);rb[c[45176>>2]&31](c[d>>2]|0);i=b;return}else{rb[c[45176>>2]&31](c[d>>2]|0);i=b;return}}function Mg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e;h=e+4|0;j=e+8|0;c[g>>2]=b;c[h>>2]=d;if((c[g>>2]|0)==0){c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}b=(Ub(c[g>>2]|0)|0)+1|0;c[g>>2]=(c[g>>2]|0)+b;while(1){if((a[c[g>>2]>>0]|0)==0){g=8;break}c[j>>2]=YK(c[g>>2]|0,c[h>>2]|0)|0;d=(Ub(c[g>>2]|0)|0)+1|0;c[g>>2]=(c[g>>2]|0)+d;d=c[g>>2]|0;if((c[j>>2]|0)==0){g=6;break}b=(Ub(d)|0)+1|0;c[g>>2]=(c[g>>2]|0)+b}if((g|0)==6){c[f>>2]=d;b=c[f>>2]|0;i=e;return b|0}else if((g|0)==8){c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}return 0}function Ng(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;h=e;f=e+4|0;g=e+8|0;c[j>>2]=a;c[h>>2]=b;c[f>>2]=d;c[g>>2]=Mg(c[j>>2]|0,c[h>>2]|0)|0;c[f>>2]=(c[f>>2]|0)!=0&1;if((c[g>>2]|0)!=0){j=(Og(c[g>>2]|0,c[f>>2]|0)|0)&255;i=e;return j|0}else{j=c[f>>2]|0;i=e;return j|0}return 0}function Og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=((Ug(c[f>>2]|0,1,c[e>>2]|0)|0)&255|0)!=0&255;i=d;return a|0}function Pg(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;s=i;i=i+64|0;r=s+48|0;o=s+44|0;n=s+40|0;w=s+36|0;v=s+52|0;q=s+32|0;u=s;p=s+20|0;k=s+16|0;m=s+12|0;h=s+8|0;t=s+24|0;l=s+28|0;c[o>>2]=b;c[n>>2]=e;c[w>>2]=f;a[v>>0]=g;e=u;c[e>>2]=0;c[e+4>>2]=0;c[p>>2]=0;c[m>>2]=0;c[h>>2]=0;c[l>>2]=(c[o>>2]|0)+(c[w>>2]|0);if((d[v>>0]|0)==1){c[q>>2]=1}else{c[q>>2]=2;c[k>>2]=3-(d[v>>0]|0);while(1){if((c[k>>2]|0)>=(c[w>>2]|0)){break}if((a[(c[o>>2]|0)+(c[k>>2]|0)>>0]|0)!=0){break}c[k>>2]=(c[k>>2]|0)+2}c[h>>2]=(c[k>>2]|0)<(c[w>>2]|0)&1;c[l>>2]=(c[o>>2]|0)+(c[k>>2]|0)+(d[v>>0]|0)+ -3;c[o>>2]=(c[o>>2]|0)+(a[v>>0]&1)}while(1){if(!((c[o>>2]|0)>>>0<(c[l>>2]|0)>>>0)){break}if((a[136+(d[c[o>>2]>>0]|0)>>0]&1|0)==0){break}c[o>>2]=(c[o>>2]|0)+(c[q>>2]|0)}do{if((c[o>>2]|0)>>>0<(c[l>>2]|0)>>>0){if((a[c[o>>2]>>0]|0)==45){c[p>>2]=1;c[o>>2]=(c[o>>2]|0)+(c[q>>2]|0);break}if((a[c[o>>2]>>0]|0)==43){c[o>>2]=(c[o>>2]|0)+(c[q>>2]|0)}}}while(0);c[t>>2]=c[o>>2];while(1){if(!((c[o>>2]|0)>>>0<(c[l>>2]|0)>>>0)){break}if((a[c[o>>2]>>0]|0)!=48){break}c[o>>2]=(c[o>>2]|0)+(c[q>>2]|0)}c[k>>2]=0;while(1){if(((c[o>>2]|0)+(c[k>>2]|0)|0)>>>0<(c[l>>2]|0)>>>0){w=a[(c[o>>2]|0)+(c[k>>2]|0)>>0]|0;c[m>>2]=w;if((w|0)>=48){b=(c[m>>2]|0)<=57}else{b=0}}else{b=0}g=u;v=c[g>>2]|0;g=c[g+4>>2]|0;if(!b){break}w=nL(v|0,g|0,10,0)|0;e=c[m>>2]|0;e=dL(w|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;e=$K(e|0,D|0,48,0)|0;w=u;c[w>>2]=e;c[w+4>>2]=D;c[k>>2]=(c[k>>2]|0)+(c[q>>2]|0)}b=(c[p>>2]|0)!=0;do{if(g>>>0>2147483647|(g|0)==2147483647&v>>>0>4294967295){w=c[n>>2]|0;c[w>>2]=b?0:-1;c[w+4>>2]=b?-2147483648:2147483647}else{v=c[u>>2]|0;u=c[u+4>>2]|0;if(b){e=$K(0,0,v|0,u|0)|0;w=c[n>>2]|0;c[w>>2]=e;c[w+4>>2]=D;break}else{w=c[n>>2]|0;c[w>>2]=v;c[w+4>>2]=u;break}}}while(0);if((c[m>>2]|0)!=0){if(!(((c[o>>2]|0)+(c[k>>2]|0)|0)>>>0<(c[l>>2]|0)>>>0)){j=33}}else{j=33}do{if((j|0)==33){if((c[k>>2]|0)==0){if((c[t>>2]|0)==(c[o>>2]|0)){break}}if((c[k>>2]|0)<=((c[q>>2]|0)*19|0)){if((c[h>>2]|0)==0){if((c[k>>2]|0)<((c[q>>2]|0)*19|0)){c[r>>2]=0;w=c[r>>2]|0;i=s;return w|0}c[m>>2]=Tg(c[o>>2]|0,c[q>>2]|0)|0;if((c[m>>2]|0)<0){c[r>>2]=0;w=c[r>>2]|0;i=s;return w|0}if((c[m>>2]|0)>0){c[r>>2]=1;w=c[r>>2]|0;i=s;return w|0}else{c[r>>2]=(c[p>>2]|0)!=0?0:2;w=c[r>>2]|0;i=s;return w|0}}}}}while(0);c[r>>2]=1;w=c[r>>2]|0;i=s;return w|0}function Qg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Sg(c[c[(c[d>>2]|0)+4>>2]>>2]|0,1)|0;i=b;return a|0}function Rg(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;i=e;return(b[(c[(c[d>>2]|0)+4>>2]|0)+22>>1]&1|0)!=0|0}function Sg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=b;if((c[g>>2]|0)!=0){if((d[(c[f>>2]|0)+15>>0]|0|0)!=0){g=1784;i=e;return g|0}}g=c[(c[f>>2]|0)+168>>2]|0;i=e;return g|0}function Tg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;g=f+16|0;h=f;e=f+4|0;j=f+8|0;k=f+12|0;c[g>>2]=b;c[h>>2]=d;c[e>>2]=0;c[k>>2]=2064;c[j>>2]=0;while(1){if((c[e>>2]|0)!=0){break}if((c[j>>2]|0)>=18){break}b=$(c[j>>2]|0,c[h>>2]|0)|0;c[e>>2]=((a[(c[g>>2]|0)+b>>0]|0)-(a[(c[k>>2]|0)+(c[j>>2]|0)>>0]|0)|0)*10;c[j>>2]=(c[j>>2]|0)+1}if((c[e>>2]|0)!=0){b=c[e>>2]|0;i=f;return b|0}c[e>>2]=(a[(c[g>>2]|0)+((c[h>>2]|0)*18|0)>>0]|0)-56;b=c[e>>2]|0;i=f;return b|0}function Ug(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;g=k+20|0;m=k;n=k+4|0;h=k+8|0;j=k+12|0;l=k+16|0;c[m>>2]=b;c[n>>2]=e;c[h>>2]=f;f=c[m>>2]|0;if((a[136+(d[c[m>>2]>>0]|0)>>0]&4|0)!=0){a[g>>0]=Vg(f)|0;b=a[g>>0]|0;i=k;return b|0}c[l>>2]=Ub(f)|0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(7-(c[n>>2]|0)|0)){l=9;break}if((d[2120+(c[j>>2]|0)>>0]|0|0)==(c[l>>2]|0)){if((Tb(2088+(d[2112+(c[j>>2]|0)>>0]|0)|0,c[m>>2]|0,c[l>>2]|0)|0)==0){l=7;break}}c[j>>2]=(c[j>>2]|0)+1}if((l|0)==7){a[g>>0]=a[2128+(c[j>>2]|0)>>0]|0;b=a[g>>0]|0;i=k;return b|0}else if((l|0)==9){a[g>>0]=c[h>>2];b=a[g>>0]|0;i=k;return b|0}return 0}function Vg(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=0;if((c[e>>2]|0)!=0){Wg(c[e>>2]|0,b)|0}i=d;return c[b>>2]|0}function Wg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;e=f+28|0;l=f+12|0;h=f+8|0;g=f;k=f+16|0;m=f+20|0;j=f+24|0;c[l>>2]=b;c[h>>2]=d;b=g;c[b>>2]=0;c[b+4>>2]=0;c[j>>2]=0;if((a[c[l>>2]>>0]|0)==45){c[j>>2]=1;c[l>>2]=(c[l>>2]|0)+1}else{if((a[c[l>>2]>>0]|0)==43){c[l>>2]=(c[l>>2]|0)+1}}while(1){if((a[c[l>>2]>>0]|0)!=48){break}c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=11){break}b=(a[(c[l>>2]|0)+(c[k>>2]|0)>>0]|0)-48|0;c[m>>2]=b;if((b|0)<0){break}if((c[m>>2]|0)>9){break}b=g;b=nL(c[b>>2]|0,c[b+4>>2]|0,10,0)|0;d=c[m>>2]|0;d=dL(b|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;b=g;c[b>>2]=d;c[b+4>>2]=D;c[k>>2]=(c[k>>2]|0)+1}if((c[k>>2]|0)>10){c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}m=g;b=c[j>>2]|0;b=$K(c[m>>2]|0,c[m+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;m=D;if((m|0)>0|(m|0)==0&b>>>0>2147483647){c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}if((c[j>>2]|0)!=0){m=g;m=$K(0,0,c[m>>2]|0,c[m+4>>2]|0)|0;b=g;c[b>>2]=m;c[b+4>>2]=D}c[c[h>>2]>>2]=c[g>>2];c[e>>2]=1;b=c[e>>2]|0;i=f;return b|0}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[392+(c[e>>2]<<2)>>2]=c[f>>2];if((c[392+(c[e>>2]<<2)>>2]|0)<=(c[432+(c[e>>2]<<2)>>2]|0)){i=d;return}c[432+(c[e>>2]<<2)>>2]=c[392+(c[e>>2]<<2)>>2];i=d;return}function Yg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;g=i;i=i+32|0;j=g+16|0;e=g;f=g+4|0;d=g+8|0;h=g+12|0;c[j>>2]=a;c[e>>2]=b;c[f>>2]=ub[c[45188>>2]&63](c[j>>2]|0)|0;Xg(5,c[j>>2]|0);do{if((c[496>>2]|0)!=0){c[h>>2]=Zg(0)|0;a=c[h>>2]|0;b=((a|0)<0)<<31>>31;h=488|0;j=c[f>>2]|0;j=$K(c[h>>2]|0,c[h+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0;h=D;if((b|0)>(h|0)|(b|0)==(h|0)&a>>>0>=j>>>0){c[516>>2]=1;_g(c[f>>2]|0);break}else{c[516>>2]=0;break}}}while(0);c[d>>2]=ub[c[45172>>2]&63](c[f>>2]|0)|0;if((c[d>>2]|0)==0){a=c[d>>2]|0;j=c[e>>2]|0;c[j>>2]=a;j=c[f>>2]|0;i=g;return j|0}c[f>>2]=_b(c[d>>2]|0)|0;pc(0,c[f>>2]|0);pc(9,1);a=c[d>>2]|0;j=c[e>>2]|0;c[j>>2]=a;j=c[f>>2]|0;i=g;return j|0}function Zg(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[392+(c[b>>2]<<2)>>2]|0} + + + +function un(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;m=g;h=g+28|0;n=g+4|0;e=g+8|0;f=g+12|0;k=g+16|0;l=g+20|0;j=g+24|0;c[h>>2]=a;c[n>>2]=b;c[e>>2]=d;c[f>>2]=0;c[k>>2]=0;if((c[n>>2]|0)!=0){a=yn(c[n>>2]|0)|0;c[l>>2]=a;c[k>>2]=a}else{c[l>>2]=1784}zn(c[e>>2]|0,f,8776,m);c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[h>>2]|0)+24>>2]|0)){break}a=c[e>>2]|0;c[m>>2]=c[l>>2];zn(a,f,8784,m);c[j>>2]=(c[j>>2]|0)+1}if((c[(c[h>>2]|0)+44>>2]|0)==0){a=c[k>>2]|0;oc(a);a=c[f>>2]|0;i=g;return a|0}zn(c[e>>2]|0,f,8792,m);a=c[k>>2]|0;oc(a);a=c[f>>2]|0;i=g;return a|0}function vn(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+48|0;f=k;e=k+36|0;g=k+12|0;l=k+16|0;d=k+20|0;j=k+24|0;h=k+28|0;m=k+32|0;c[e>>2]=b;c[g>>2]=0;c[d>>2]=c[(c[e>>2]|0)+12>>2];if((c[(c[e>>2]|0)+40>>2]|0)==0){c[j>>2]=c[(c[e>>2]|0)+44>>2];c[h>>2]=wc(8368,f)|0;c[l>>2]=0;while(1){if((c[h>>2]|0)==0){break}if((c[l>>2]|0)>=(c[(c[e>>2]|0)+24>>2]|0)){break}c[m>>2]=c[(c[(c[e>>2]|0)+28>>2]|0)+(c[l>>2]<<2)>>2];n=c[l>>2]|0;b=c[m>>2]|0;c[f>>2]=c[h>>2];c[f+4>>2]=n;c[f+8>>2]=b;c[h>>2]=wc(8400,f)|0;c[l>>2]=(c[l>>2]|0)+1}if((c[j>>2]|0)!=0){if((c[h>>2]|0)!=0){n=c[j>>2]|0;c[f>>2]=c[h>>2];c[f+4>>2]=n;c[h>>2]=wc(8416,f)|0}}if((c[h>>2]|0)==0){c[g>>2]=7}n=c[d>>2]|0;l=c[(c[e>>2]|0)+20>>2]|0;m=c[h>>2]|0;c[f>>2]=c[(c[e>>2]|0)+16>>2];c[f+4>>2]=l;c[f+8>>2]=m;Zi(g,n,8432,f);oc(c[h>>2]|0)}n=c[d>>2]|0;m=c[(c[e>>2]|0)+20>>2]|0;c[f>>2]=c[(c[e>>2]|0)+16>>2];c[f+4>>2]=m;Zi(g,n,8472,f);n=c[d>>2]|0;m=c[(c[e>>2]|0)+20>>2]|0;c[f>>2]=c[(c[e>>2]|0)+16>>2];c[f+4>>2]=m;Zi(g,n,8544,f);if((a[(c[e>>2]|0)+230>>0]|0)!=0){n=c[d>>2]|0;m=c[(c[e>>2]|0)+20>>2]|0;c[f>>2]=c[(c[e>>2]|0)+16>>2];c[f+4>>2]=m;Zi(g,n,8704,f)}if((a[(c[e>>2]|0)+229>>0]|0)==0){n=c[g>>2]|0;i=k;return n|0}Em(g,c[e>>2]|0);n=c[g>>2]|0;i=k;return n|0}function wn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;k=d;j=d+20|0;e=d+4|0;h=d+8|0;f=d+12|0;g=d+16|0;c[j>>2]=a;c[e>>2]=b;if((c[c[j>>2]>>2]|0)!=0){i=d;return}c[k>>2]=c[(c[e>>2]|0)+16>>2];c[f>>2]=wc(8344,k)|0;do{if((c[f>>2]|0)!=0){c[h>>2]=Gf(c[(c[e>>2]|0)+12>>2]|0,c[f>>2]|0,-1,g,0)|0;if((c[h>>2]|0)==0){le(c[g>>2]|0)|0;a=De(c[g>>2]|0,0)|0;c[(c[e>>2]|0)+236>>2]=a;c[h>>2]=yd(c[g>>2]|0)|0;break}if((c[h>>2]|0)==23){c[(c[e>>2]|0)+236>>2]=1024;c[h>>2]=0}}else{c[h>>2]=7}}while(0);oc(c[f>>2]|0);c[c[j>>2]>>2]=c[h>>2];i=d;return}function xn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+48|0;m=l;j=l+36|0;k=l+12|0;n=l+16|0;h=l+20|0;f=l+24|0;g=l+28|0;d=l+32|0;c[j>>2]=a;c[k>>2]=b;if((c[c[j>>2]>>2]|0)!=0){i=l;return}if((c[(c[k>>2]|0)+44>>2]|0)!=0){b=c[(c[k>>2]|0)+44>>2]|0}else{b=8256}c[d>>2]=b;a=c[(c[k>>2]|0)+12>>2]|0;c[m>>2]=1;Of(a,1,m)|0;c[m>>2]=c[c[(c[k>>2]|0)+28>>2]>>2];c[g>>2]=wc(8272,m)|0;c[n>>2]=1;while(1){if((c[g>>2]|0)!=0){a=(c[n>>2]|0)<(c[(c[k>>2]|0)+24>>2]|0)}else{a=0}b=c[g>>2]|0;if(!a){break}a=c[(c[(c[k>>2]|0)+28>>2]|0)+(c[n>>2]<<2)>>2]|0;c[m>>2]=b;c[m+4>>2]=a;c[g>>2]=wc(8280,m)|0;c[n>>2]=(c[n>>2]|0)+1}n=c[(c[k>>2]|0)+20>>2]|0;a=c[d>>2]|0;c[m>>2]=b;c[m+4>>2]=n;c[m+8>>2]=a;c[f>>2]=wc(8288,m)|0;if((c[g>>2]|0)!=0){if((c[f>>2]|0)!=0){c[h>>2]=Lf(c[(c[k>>2]|0)+12>>2]|0,c[f>>2]|0)|0}else{e=11}}else{e=11}if((e|0)==11){c[h>>2]=7}oc(c[f>>2]|0);oc(c[g>>2]|0);c[c[j>>2]>>2]=c[h>>2];i=l;return}function yn(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;g=d+16|0;j=d;e=d+4|0;h=d+8|0;f=d+12|0;c[g>>2]=b;c[j>>2]=3+((cL(c[g>>2]|0)|0)<<1);c[e>>2]=mc(c[j>>2]|0)|0;if((c[e>>2]|0)==0){j=c[e>>2]|0;i=d;return j|0}c[f>>2]=c[e>>2];j=c[f>>2]|0;c[f>>2]=j+1;a[j>>0]=34;c[h>>2]=0;while(1){if((a[(c[g>>2]|0)+(c[h>>2]|0)>>0]|0)==0){break}if((a[(c[g>>2]|0)+(c[h>>2]|0)>>0]|0)==34){j=c[f>>2]|0;c[f>>2]=j+1;a[j>>0]=34}b=a[(c[g>>2]|0)+(c[h>>2]|0)>>0]|0;j=c[f>>2]|0;c[f>>2]=j+1;a[j>>0]=b;c[h>>2]=(c[h>>2]|0)+1}j=c[f>>2]|0;c[f>>2]=j+1;a[j>>0]=34;j=c[f>>2]|0;c[f>>2]=j+1;a[j>>0]=0;j=c[e>>2]|0;i=d;return j|0}function zn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+48|0;k=l;g=l+40|0;j=l+8|0;n=l+12|0;m=l+16|0;h=l+32|0;f=l+36|0;c[g>>2]=a;c[j>>2]=b;c[n>>2]=d;if((c[c[g>>2]>>2]|0)!=0){i=l;return}c[m>>2]=e;c[h>>2]=sc(c[n>>2]|0,m)|0;if((c[h>>2]|0)!=0){if((c[c[j>>2]>>2]|0)!=0){a=c[h>>2]|0;c[k>>2]=c[c[j>>2]>>2];c[k+4>>2]=a;c[f>>2]=wc(8800,k)|0;oc(c[h>>2]|0);c[h>>2]=c[f>>2]}}if((c[h>>2]|0)==0){c[c[g>>2]>>2]=7}oc(c[c[j>>2]>>2]|0);c[c[j>>2]>>2]=c[h>>2];i=l;return}function An(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;e=f+16|0;k=f;h=f+4|0;j=f+8|0;g=f+12|0;c[k>>2]=b;c[h>>2]=d;c[g>>2]=0;c[j>>2]=c[c[k>>2]>>2];while(1){if((a[c[j>>2]>>0]|0)<48){break}if((a[c[j>>2]>>0]|0)>57){break}c[g>>2]=((c[g>>2]|0)*10|0)+((a[c[j>>2]>>0]|0)-48);c[j>>2]=(c[j>>2]|0)+1}if((c[j>>2]|0)==(c[c[k>>2]>>2]|0)){c[e>>2]=1;b=c[e>>2]|0;i=f;return b|0}else{c[c[h>>2]>>2]=c[g>>2];c[c[k>>2]>>2]=c[j>>2];c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}return 0}function Bn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=i;i=i+48|0;p=l;f=l+36|0;q=l+32|0;h=l+28|0;j=l+24|0;g=l+40|0;k=l+12|0;e=l+8|0;m=l+4|0;n=l+16|0;o=l+20|0;c[f>>2]=a;c[q>>2]=b;c[h>>2]=d;c[g>>2]=0;c[j>>2]=qe(c[f>>2]|0)|0;c[k>>2]=Jd(c[c[h>>2]>>2]|0)|0;c[e>>2]=(Kd(c[c[h>>2]>>2]|0)|0)+1;if((c[q>>2]|0)==2){c[n>>2]=Kd(c[(c[h>>2]|0)+4>>2]|0)|0;if((c[n>>2]|0)!=4){Xd(c[f>>2]|0,9088,-1);i=l;return}c[g>>2]=c[(Hd(c[(c[h>>2]|0)+4>>2]|0)|0)>>2];c[m>>2]=Yh(c[j>>2]|0,c[k>>2]|0,c[e>>2]|0,c[g>>2]|0)|0;if((c[m>>2]|0)==(c[g>>2]|0)){Xd(c[f>>2]|0,9112,-1);i=l;return}}else{c[g>>2]=pi(c[j>>2]|0,c[k>>2]|0,c[e>>2]|0)|0;if((c[g>>2]|0)==0){c[p>>2]=c[k>>2];c[o>>2]=wc(4032,p)|0;Xd(c[f>>2]|0,c[o>>2]|0,-1);oc(c[o>>2]|0);i=l;return}}Td(c[f>>2]|0,g,4,-1);i=l;return}function Cn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;g=h+12|0;f=h;k=h+4|0;j=h+8|0;c[g>>2]=b;c[f>>2]=d;c[k>>2]=e;e=c[c[f>>2]>>2]|0;if((c[(c[f>>2]|0)+4>>2]|0)!=0){c[c[(c[f>>2]|0)+4>>2]>>2]=e}else{c[(c[g>>2]|0)+8>>2]=e}if((c[c[f>>2]>>2]|0)!=0){c[(c[c[f>>2]>>2]|0)+4>>2]=c[(c[f>>2]|0)+4>>2]}c[j>>2]=(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<3);if((c[(c[j>>2]|0)+4>>2]|0)==(c[f>>2]|0)){c[(c[j>>2]|0)+4>>2]=c[c[f>>2]>>2]}b=c[j>>2]|0;c[b>>2]=(c[b>>2]|0)+ -1;if((c[c[j>>2]>>2]|0)<=0){c[(c[j>>2]|0)+4>>2]=0}if((a[(c[g>>2]|0)+1>>0]|0)!=0){if((c[(c[f>>2]|0)+12>>2]|0)!=0){bi(c[(c[f>>2]|0)+12>>2]|0)}}bi(c[f>>2]|0);b=(c[g>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+ -1;if((c[(c[g>>2]|0)+4>>2]|0)>0){i=h;return}ai(c[g>>2]|0);i=h;return}function Dn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+32|0;f=j+28|0;m=j;e=j+4|0;n=j+8|0;g=j+12|0;l=j+16|0;h=j+20|0;k=j+24|0;c[m>>2]=b;c[e>>2]=d;c[n>>2]=En(c[e>>2]<<3)|0;if((c[n>>2]|0)==0){c[f>>2]=1;b=c[f>>2]|0;i=j;return b|0}bi(c[(c[m>>2]|0)+16>>2]|0);c[(c[m>>2]|0)+16>>2]=c[n>>2];c[(c[m>>2]|0)+12>>2]=c[e>>2];c[h>>2]=ri(a[c[m>>2]>>0]|0)|0;c[g>>2]=c[(c[m>>2]|0)+8>>2];c[(c[m>>2]|0)+8>>2]=0;while(1){if((c[g>>2]|0)==0){break}b=zb[c[h>>2]&127](c[(c[g>>2]|0)+12>>2]|0,c[(c[g>>2]|0)+16>>2]|0)|0;c[k>>2]=b&(c[e>>2]|0)-1;c[l>>2]=c[c[g>>2]>>2];Fn(c[m>>2]|0,(c[n>>2]|0)+(c[k>>2]<<3)|0,c[g>>2]|0);c[g>>2]=c[l>>2]}c[f>>2]=0;b=c[f>>2]|0;i=j;return b|0}function En(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=mc(c[e>>2]|0)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}aL(c[d>>2]|0,0,c[e>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}function Fn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;f=h+12|0;g=h;e=h+4|0;j=h+8|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=d;c[j>>2]=c[(c[g>>2]|0)+4>>2];if((c[j>>2]|0)==0){c[c[e>>2]>>2]=c[(c[f>>2]|0)+8>>2];if((c[(c[f>>2]|0)+8>>2]|0)!=0){c[(c[(c[f>>2]|0)+8>>2]|0)+4>>2]=c[e>>2]}c[(c[e>>2]|0)+4>>2]=0;c[(c[f>>2]|0)+8>>2]=c[e>>2];b=c[g>>2]|0;a=c[b>>2]|0;a=a+1|0;c[b>>2]=a;b=c[e>>2]|0;a=c[g>>2]|0;a=a+4|0;c[a>>2]=b;i=h;return}c[c[e>>2]>>2]=c[j>>2];c[(c[e>>2]|0)+4>>2]=c[(c[j>>2]|0)+4>>2];d=c[e>>2]|0;if((c[(c[j>>2]|0)+4>>2]|0)!=0){c[c[(c[j>>2]|0)+4>>2]>>2]=d}else{c[(c[f>>2]|0)+8>>2]=d}c[(c[j>>2]|0)+4>>2]=c[e>>2];b=c[g>>2]|0;a=c[b>>2]|0;a=a+1|0;c[b>>2]=a;b=c[e>>2]|0;a=c[g>>2]|0;a=a+4|0;c[a>>2]=b;i=h;return}function Gn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+32|0;f=e+16|0;g=e+8|0;h=e+12|0;c[e>>2]=a;c[e+4>>2]=b;c[g>>2]=d;c[h>>2]=mc(4)|0;if((c[h>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=e;return a|0}else{a=c[h>>2]|0;c[a+0>>2]=0;c[c[g>>2]>>2]=c[h>>2];c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}return 0}function Hn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;oc(c[d>>2]|0);i=b;return 0}function In(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+20|0;k=f+4|0;l=f+8|0;j=f+12|0;h=f+16|0;c[f>>2]=a;c[k>>2]=b;c[l>>2]=d;c[j>>2]=e;c[h>>2]=mc(28)|0;if((c[h>>2]|0)==0){c[g>>2]=7;a=c[g>>2]|0;i=f;return a|0}c[(c[h>>2]|0)+4>>2]=c[k>>2];do{if((c[k>>2]|0)==0){c[(c[h>>2]|0)+8>>2]=0}else{if((c[l>>2]|0)<0){a=cL(c[k>>2]|0)|0;c[(c[h>>2]|0)+8>>2]=a;break}else{c[(c[h>>2]|0)+8>>2]=c[l>>2];break}}}while(0);c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+20>>2]=0;c[(c[h>>2]|0)+24>>2]=0;c[c[j>>2]>>2]=c[h>>2];c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}function Jn(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];oc(c[(c[d>>2]|0)+20>>2]|0);oc(c[d>>2]|0);i=b;return 0}function Kn(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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;l=i;i=i+64|0;w=l+48|0;x=l+44|0;t=l+40|0;s=l+36|0;u=l+32|0;v=l+28|0;j=l+24|0;m=l+16|0;q=l+12|0;n=l+8|0;p=l+4|0;o=l;r=l+20|0;c[x>>2]=b;c[t>>2]=d;c[s>>2]=e;c[u>>2]=f;c[v>>2]=g;c[j>>2]=h;c[m>>2]=c[x>>2];c[q>>2]=c[(c[m>>2]|0)+4>>2];do{if((c[(c[m>>2]|0)+12>>2]|0)>=(c[(c[m>>2]|0)+8>>2]|0)){k=23;break}while(1){if((c[(c[m>>2]|0)+12>>2]|0)<(c[(c[m>>2]|0)+8>>2]|0)){x=a[(c[q>>2]|0)+(c[(c[m>>2]|0)+12>>2]|0)>>0]|0;c[p>>2]=x;if((x&128|0)==0){if((c[p>>2]|0)<48){f=1}else{f=(a[9160+((c[p>>2]|0)-48)>>0]|0)!=0^1}}else{f=0}}else{f=0}e=(c[m>>2]|0)+12|0;h=c[e>>2]|0;if(!f){break}c[e>>2]=h+1}c[n>>2]=h;while(1){if((c[(c[m>>2]|0)+12>>2]|0)<(c[(c[m>>2]|0)+8>>2]|0)){x=a[(c[q>>2]|0)+(c[(c[m>>2]|0)+12>>2]|0)>>0]|0;c[p>>2]=x;if((x&128|0)==0){if((c[p>>2]|0)<48){h=1}else{h=(a[9160+((c[p>>2]|0)-48)>>0]|0)!=0^1}}else{h=0}f=h^1}else{f=0}e=(c[m>>2]|0)+12|0;h=c[e>>2]|0;if(!f){break}c[e>>2]=h+1}}while((h|0)<=(c[n>>2]|0));if((k|0)==23){c[w>>2]=101;x=c[w>>2]|0;i=l;return x|0}c[o>>2]=(c[(c[m>>2]|0)+12>>2]|0)-(c[n>>2]|0);do{if((c[o>>2]|0)>(c[(c[m>>2]|0)+24>>2]|0)){c[(c[m>>2]|0)+24>>2]=(c[o>>2]|0)+20;c[r>>2]=qc(c[(c[m>>2]|0)+20>>2]|0,c[(c[m>>2]|0)+24>>2]|0)|0;if((c[r>>2]|0)!=0){c[(c[m>>2]|0)+20>>2]=c[r>>2];break}c[w>>2]=7;x=c[w>>2]|0;i=l;return x|0}}while(0);Ln((c[q>>2]|0)+(c[n>>2]|0)|0,c[o>>2]|0,c[(c[m>>2]|0)+20>>2]|0,c[s>>2]|0);c[c[t>>2]>>2]=c[(c[m>>2]|0)+20>>2];c[c[u>>2]>>2]=c[n>>2];c[c[v>>2]>>2]=c[(c[m>>2]|0)+12>>2];g=(c[m>>2]|0)+16|0;x=c[g>>2]|0;c[g>>2]=x+1;c[c[j>>2]>>2]=x;c[w>>2]=0;x=c[w>>2]|0;i=l;return x|0}function Ln(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=i;i=i+64|0;r=l+8|0;p=l+28|0;h=l+24|0;g=l+20|0;k=l+12|0;m=l+16|0;q=l+36|0;j=l+4|0;o=l;s=l+32|0;c[r>>2]=b;c[p>>2]=d;c[h>>2]=e;c[g>>2]=f;if((c[p>>2]|0)<3|(c[p>>2]|0)>=21){Mn(c[r>>2]|0,c[p>>2]|0,c[h>>2]|0,c[g>>2]|0);i=l;return}c[k>>2]=0;c[m>>2]=22;while(1){if((c[k>>2]|0)>=(c[p>>2]|0)){break}a[s>>0]=a[(c[r>>2]|0)+(c[k>>2]|0)>>0]|0;if((a[s>>0]|0)>=65){if((a[s>>0]|0)<=90){a[q+(c[m>>2]|0)>>0]=(a[s>>0]|0)+97-65}else{n=8}}else{n=8}if((n|0)==8){n=0;if((a[s>>0]|0)<97){n=11;break}if((a[s>>0]|0)>122){n=11;break}a[q+(c[m>>2]|0)>>0]=a[s>>0]|0}c[k>>2]=(c[k>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+ -1}if((n|0)==11){Mn(c[r>>2]|0,c[p>>2]|0,c[h>>2]|0,c[g>>2]|0);i=l;return}b=q+23|0;a[b+0>>0]=0;a[b+1>>0]=0;a[b+2>>0]=0;a[b+3>>0]=0;a[b+4>>0]=0;c[j>>2]=q+((c[m>>2]|0)+1);if((a[c[j>>2]>>0]|0)==115){if((Nn(j,9240,9248,0)|0)==0){if((Nn(j,9256,9264,0)|0)==0){if((Nn(j,9248,9248,0)|0)==0){c[j>>2]=(c[j>>2]|0)+1}}}}c[o>>2]=c[j>>2];do{if((Nn(j,9272,9280,43)|0)==0){if((Nn(j,9288,1784,44)|0)==0){if((Nn(j,9296,1784,44)|0)==0){break}}if((c[j>>2]|0)!=(c[o>>2]|0)){if((Nn(j,9304,9312,0)|0)==0){if((Nn(j,9320,9328,0)|0)==0){if((Nn(j,9336,9344,0)|0)==0){if((Qn(c[j>>2]|0)|0)!=0){if((a[c[j>>2]>>0]|0)!=108){if((a[c[j>>2]>>0]|0)!=115){if((a[c[j>>2]>>0]|0)!=122){c[j>>2]=(c[j>>2]|0)+1;break}}}}if((Rn(c[j>>2]|0)|0)!=0){if((Sn(c[j>>2]|0)|0)!=0){b=(c[j>>2]|0)+ -1|0;c[j>>2]=b;a[b>>0]=101}}}}}}}}while(0);if((a[c[j>>2]>>0]|0)==121){if((Pn((c[j>>2]|0)+1|0)|0)!=0){a[c[j>>2]>>0]=105}}switch(a[(c[j>>2]|0)+1>>0]|0){case 101:{Nn(j,9408,9344,43)|0;break};case 111:{if((Nn(j,9504,9344,43)|0)==0){if((Nn(j,9512,9312,43)|0)==0){Nn(j,9520,9312,43)|0}}break};case 99:{if((Nn(j,9376,9384,43)|0)==0){Nn(j,9392,9400,43)|0}break};case 108:{if((Nn(j,9432,9328,43)|0)==0){if((Nn(j,9440,9448,43)|0)==0){if((Nn(j,9456,9464,43)|0)==0){if((Nn(j,9472,9480,43)|0)==0){Nn(j,9488,9496,43)|0}}}}break};case 116:{if((Nn(j,9576,9448,43)|0)==0){if((Nn(j,9584,9544,43)|0)==0){Nn(j,9592,9328,43)|0}}break};case 103:{Nn(j,9416,9424,43)|0;break};case 97:{if((Nn(j,9352,9312,43)|0)==0){Nn(j,9360,9368,43)|0}break};case 115:{if((Nn(j,9528,9448,43)|0)==0){if((Nn(j,9536,9544,43)|0)==0){if((Nn(j,9552,9560,43)|0)==0){Nn(j,9568,9496,43)|0}}}break};default:{}}m=a[c[j>>2]>>0]|0;if((m|0)==108){if((Nn(j,9640,9608,43)|0)==0){Nn(j,9648,1784,43)|0}}else if((m|0)==101){if((Nn(j,9600,9608,43)|0)==0){if((Nn(j,9616,1784,43)|0)==0){Nn(j,9624,9448,43)|0}}}else if((m|0)==105){Nn(j,9632,9608,43)|0}else if((m|0)==115){Nn(j,9656,1784,43)|0}a:do{switch(a[(c[j>>2]|0)+1>>0]|0){case 108:{if((a[c[j>>2]>>0]|0)==101){if((a[(c[j>>2]|0)+2>>0]|0)==98){if((a[(c[j>>2]|0)+3>>0]|0)!=97){if((a[(c[j>>2]|0)+3>>0]|0)!=105){break a}}if((Tn((c[j>>2]|0)+4|0)|0)!=0){c[j>>2]=(c[j>>2]|0)+4}}}break};case 105:{if((a[c[j>>2]>>0]|0)==99){if((Tn((c[j>>2]|0)+2|0)|0)!=0){c[j>>2]=(c[j>>2]|0)+2}}break};case 116:{if((Nn(j,9696,1784,45)|0)==0){Nn(j,9704,1784,45)|0}break};case 99:{if((a[c[j>>2]>>0]|0)==101){if((a[(c[j>>2]|0)+2>>0]|0)==110){if((a[(c[j>>2]|0)+3>>0]|0)!=97){if((a[(c[j>>2]|0)+3>>0]|0)!=101){break a}}if((Tn((c[j>>2]|0)+4|0)|0)!=0){c[j>>2]=(c[j>>2]|0)+4}}}break};case 110:{if((a[c[j>>2]>>0]|0)==116){m=c[j>>2]|0;if((a[(c[j>>2]|0)+2>>0]|0)==97){if((Tn(m+3|0)|0)==0){break a}c[j>>2]=(c[j>>2]|0)+3;break a}if((a[m+2>>0]|0)==101){if((Nn(j,9664,1784,45)|0)==0){if((Nn(j,9672,1784,45)|0)==0){Nn(j,9680,1784,45)|0}}}}break};case 115:{if((a[c[j>>2]>>0]|0)==109){if((a[(c[j>>2]|0)+2>>0]|0)==105){if((Tn((c[j>>2]|0)+3|0)|0)!=0){c[j>>2]=(c[j>>2]|0)+3}}}break};case 101:{if((a[c[j>>2]>>0]|0)==114){if((Tn((c[j>>2]|0)+2|0)|0)!=0){c[j>>2]=(c[j>>2]|0)+2}}break};case 117:{if((a[c[j>>2]>>0]|0)==115){if((a[(c[j>>2]|0)+2>>0]|0)==111){if((Tn((c[j>>2]|0)+3|0)|0)!=0){c[j>>2]=(c[j>>2]|0)+3}}}break};case 111:{m=c[j>>2]|0;if((a[c[j>>2]>>0]|0)==117){if((Tn(m+2|0)|0)==0){break a}c[j>>2]=(c[j>>2]|0)+2;break a}if((a[m+3>>0]|0)!=115){if((a[(c[j>>2]|0)+3>>0]|0)!=116){break a}}Nn(j,9688,1784,45)|0;break};case 122:case 118:{if((a[c[j>>2]>>0]|0)==101){if((a[(c[j>>2]|0)+2>>0]|0)==105){if((Tn((c[j>>2]|0)+3|0)|0)!=0){c[j>>2]=(c[j>>2]|0)+3}}}break};case 97:{if((a[c[j>>2]>>0]|0)==108){if((Tn((c[j>>2]|0)+2|0)|0)!=0){c[j>>2]=(c[j>>2]|0)+2}}break};default:{}}}while(0);do{if((a[c[j>>2]>>0]|0)==101){b=(Tn((c[j>>2]|0)+1|0)|0)!=0;m=(c[j>>2]|0)+1|0;if(b){c[j>>2]=m;break}if((Rn(m)|0)!=0){if((Sn((c[j>>2]|0)+1|0)|0)==0){c[j>>2]=(c[j>>2]|0)+1}}}}while(0);if((Tn(c[j>>2]|0)|0)!=0){if((a[c[j>>2]>>0]|0)==108){if((a[(c[j>>2]|0)+1>>0]|0)==108){c[j>>2]=(c[j>>2]|0)+1}}}b=cL(c[j>>2]|0)|0;c[k>>2]=b;c[c[g>>2]>>2]=b;a[(c[h>>2]|0)+(c[k>>2]|0)>>0]=0;while(1){if((a[c[j>>2]>>0]|0)==0){break}d=c[j>>2]|0;c[j>>2]=d+1;d=a[d>>0]|0;b=(c[k>>2]|0)+ -1|0;c[k>>2]=b;a[(c[h>>2]|0)+b>>0]=d}i=l;return}function Mn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=i;i=i+48|0;r=l+16|0;g=l+28|0;j=l+24|0;k=l+20|0;o=l+12|0;m=l+8|0;n=l+4|0;p=l;q=l+32|0;c[r>>2]=b;c[g>>2]=d;c[j>>2]=e;c[k>>2]=f;c[p>>2]=0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[g>>2]|0)){break}a[q>>0]=a[(c[r>>2]|0)+(c[o>>2]|0)>>0]|0;if((a[q>>0]|0)>=65){if((a[q>>0]|0)<=90){a[(c[j>>2]|0)+(c[o>>2]|0)>>0]=(a[q>>0]|0)-65+97}else{h=6}}else{h=6}if((h|0)==6){h=0;if((a[q>>0]|0)>=48){if((a[q>>0]|0)<=57){c[p>>2]=1}}a[(c[j>>2]|0)+(c[o>>2]|0)>>0]=a[q>>0]|0}c[o>>2]=(c[o>>2]|0)+1}c[m>>2]=(c[p>>2]|0)!=0?3:10;if((c[g>>2]|0)<=(c[m>>2]<<1|0)){d=c[o>>2]|0;b=c[j>>2]|0;d=b+d|0;a[d>>0]=0;d=c[o>>2]|0;b=c[k>>2]|0;c[b>>2]=d;i=l;return}c[n>>2]=c[m>>2];c[o>>2]=(c[g>>2]|0)-(c[m>>2]|0);while(1){if((c[o>>2]|0)>=(c[g>>2]|0)){break}a[(c[j>>2]|0)+(c[n>>2]|0)>>0]=a[(c[j>>2]|0)+(c[o>>2]|0)>>0]|0;c[o>>2]=(c[o>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+1}c[o>>2]=c[n>>2];d=c[o>>2]|0;b=c[j>>2]|0;d=b+d|0;a[d>>0]=0;d=c[o>>2]|0;b=c[k>>2]|0;c[b>>2]=d;i=l;return}function Nn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;l=h+20|0;m=h;n=h+4|0;j=h+8|0;k=h+12|0;g=h+16|0;c[m>>2]=b;c[n>>2]=d;c[j>>2]=e;c[k>>2]=f;c[g>>2]=c[c[m>>2]>>2];while(1){if((a[c[n>>2]>>0]|0)==0){break}if((a[c[n>>2]>>0]|0)!=(a[c[g>>2]>>0]|0)){break}c[g>>2]=(c[g>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+1}if((a[c[n>>2]>>0]|0)!=0){c[l>>2]=0;b=c[l>>2]|0;i=h;return b|0}if((c[k>>2]|0)!=0){if((ub[c[k>>2]&63](c[g>>2]|0)|0)==0){c[l>>2]=1;b=c[l>>2]|0;i=h;return b|0}}while(1){if((a[c[j>>2]>>0]|0)==0){break}d=c[j>>2]|0;c[j>>2]=d+1;d=a[d>>0]|0;b=(c[g>>2]|0)+ -1|0;c[g>>2]=b;a[b>>0]=d}c[c[m>>2]>>2]=c[g>>2];c[l>>2]=1;b=c[l>>2]|0;i=h;return b|0}function On(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+4|0;f=e;c[f>>2]=b;while(1){g=(Un(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}if((a[b>>0]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=e;return g|0}while(1){g=(Vn(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}c[d>>2]=(a[b>>0]|0)!=0&1;g=c[d>>2]|0;i=e;return g|0}function Pn(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;c[e>>2]=b;while(1){f=(Vn(c[e>>2]|0)|0)!=0;b=c[e>>2]|0;if(!f){break}c[e>>2]=b+1}i=d;return(a[b>>0]|0)!=0|0}function Qn(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if((Vn(c[e>>2]|0)|0)==0){e=0;e=e&1;i=d;return e|0}e=(a[c[e>>2]>>0]|0)==(a[(c[e>>2]|0)+1>>0]|0);e=e&1;i=d;return e|0}function Rn(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+4|0;f=e;c[f>>2]=b;while(1){g=(Un(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}if((a[b>>0]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=e;return g|0}while(1){g=(Vn(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}if((a[b>>0]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=e;return g|0}while(1){g=(Un(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}if((a[b>>0]|0)==0){c[d>>2]=1;g=c[d>>2]|0;i=e;return g|0}while(1){g=(Vn(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}c[d>>2]=(a[b>>0]|0)==0&1;g=c[d>>2]|0;i=e;return g|0}function Sn(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if((Vn(c[e>>2]|0)|0)!=0){if((a[c[e>>2]>>0]|0)!=119){if((a[c[e>>2]>>0]|0)!=120){if((a[c[e>>2]>>0]|0)!=121){if((Un((c[e>>2]|0)+1|0)|0)!=0){b=(Vn((c[e>>2]|0)+2|0)|0)!=0}else{b=0}}else{b=0}}else{b=0}}else{b=0}}else{b=0}i=d;return b&1|0}function Tn(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+4|0;f=e;c[f>>2]=b;while(1){g=(Un(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}if((a[b>>0]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=e;return g|0}while(1){g=(Vn(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}if((a[b>>0]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=e;return g|0}while(1){g=(Un(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}if((a[b>>0]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=e;return g|0}while(1){g=(Vn(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(!g){break}c[f>>2]=b+1}c[d>>2]=(a[b>>0]|0)!=0&1;g=c[d>>2]|0;i=e;return g|0}function Un(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;h=d+12|0;c[g>>2]=b;a[h>>0]=a[c[g>>2]>>0]|0;if((a[h>>0]|0)==0){c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}c[f>>2]=a[9712+((a[h>>0]|0)-97)>>0]|0;if((c[f>>2]|0)<2){c[e>>2]=1-(c[f>>2]|0);h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=Vn((c[g>>2]|0)+1|0)|0;h=c[e>>2]|0;i=d;return h|0}return 0}function Vn(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;h=d+12|0;c[g>>2]=b;a[h>>0]=a[c[g>>2]>>0]|0;if((a[h>>0]|0)==0){c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}c[f>>2]=a[9712+((a[h>>0]|0)-97)>>0]|0;if((c[f>>2]|0)<2){c[e>>2]=c[f>>2];h=c[e>>2]|0;i=d;return h|0}if((a[(c[g>>2]|0)+1>>0]|0)==0){b=1}else{b=(Un((c[g>>2]|0)+1|0)|0)!=0}c[e>>2]=b&1;h=c[e>>2]|0;i=d;return h|0}function Wn(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+48|0;h=m+28|0;q=m+24|0;l=m+20|0;k=m+16|0;j=m+12|0;g=m+4|0;o=m;n=m+32|0;p=m+8|0;c[q>>2]=b;c[l>>2]=e;c[k>>2]=f;c[j>>2]=mc(132)|0;if((c[j>>2]|0)==0){c[h>>2]=7;b=c[h>>2]|0;i=m;return b|0}aL(c[j>>2]|0,0,132)|0;a:do{if((c[q>>2]|0)>1){c[o>>2]=cL(c[(c[l>>2]|0)+4>>2]|0)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[o>>2]|0)){break a}a[n>>0]=a[(c[(c[l>>2]|0)+4>>2]|0)+(c[g>>2]|0)>>0]|0;if((d[n>>0]|0|0)>=128){break}a[(c[j>>2]|0)+4+(d[n>>0]|0)>>0]=1;c[g>>2]=(c[g>>2]|0)+1}oc(c[j>>2]|0);c[h>>2]=1;b=c[h>>2]|0;i=m;return b|0}else{c[p>>2]=1;while(1){if((c[p>>2]|0)>=128){break a}b=(ao(c[p>>2]|0)|0)!=0^1;a[(c[j>>2]|0)+4+(c[p>>2]|0)>>0]=b?-1:0;c[p>>2]=(c[p>>2]|0)+1}}}while(0);c[c[k>>2]>>2]=c[j>>2];c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}function Xn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;oc(c[d>>2]|0);i=b;return 0}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+20|0;k=f+4|0;l=f+8|0;j=f+12|0;h=f+16|0;c[f>>2]=a;c[k>>2]=b;c[l>>2]=d;c[j>>2]=e;c[h>>2]=mc(28)|0;if((c[h>>2]|0)==0){c[g>>2]=7;a=c[g>>2]|0;i=f;return a|0}c[(c[h>>2]|0)+4>>2]=c[k>>2];do{if((c[k>>2]|0)==0){c[(c[h>>2]|0)+8>>2]=0}else{if((c[l>>2]|0)<0){a=cL(c[k>>2]|0)|0;c[(c[h>>2]|0)+8>>2]=a;break}else{c[(c[h>>2]|0)+8>>2]=c[l>>2];break}}}while(0);c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+20>>2]=0;c[(c[h>>2]|0)+24>>2]=0;c[c[j>>2]>>2]=c[h>>2];c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}function Zn(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];oc(c[(c[d>>2]|0)+20>>2]|0);oc(c[d>>2]|0);i=b;return 0}function _n(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;m=i;i=i+64|0;w=m+28|0;A=m+52|0;o=m+48|0;q=m+44|0;s=m+40|0;t=m+36|0;u=m+32|0;n=m+24|0;z=m+20|0;x=m+16|0;r=m+12|0;v=m+8|0;p=m+4|0;y=m;k=m+56|0;c[A>>2]=b;c[o>>2]=e;c[q>>2]=f;c[s>>2]=g;c[t>>2]=h;c[u>>2]=j;c[n>>2]=c[A>>2];c[z>>2]=c[c[A>>2]>>2];c[x>>2]=c[(c[n>>2]|0)+4>>2];do{if((c[(c[n>>2]|0)+12>>2]|0)>=(c[(c[n>>2]|0)+8>>2]|0)){l=25;break}while(1){if((c[(c[n>>2]|0)+12>>2]|0)<(c[(c[n>>2]|0)+8>>2]|0)){h=($n(c[z>>2]|0,a[(c[x>>2]|0)+(c[(c[n>>2]|0)+12>>2]|0)>>0]|0)|0)!=0}else{h=0}g=(c[n>>2]|0)+12|0;j=c[g>>2]|0;if(!h){break}c[g>>2]=j+1}c[r>>2]=j;while(1){if((c[(c[n>>2]|0)+12>>2]|0)<(c[(c[n>>2]|0)+8>>2]|0)){h=($n(c[z>>2]|0,a[(c[x>>2]|0)+(c[(c[n>>2]|0)+12>>2]|0)>>0]|0)|0)!=0^1}else{h=0}g=(c[n>>2]|0)+12|0;j=c[g>>2]|0;if(!h){break}c[g>>2]=j+1}}while((j|0)<=(c[r>>2]|0));if((l|0)==25){c[w>>2]=101;A=c[w>>2]|0;i=m;return A|0}c[p>>2]=(c[(c[n>>2]|0)+12>>2]|0)-(c[r>>2]|0);do{if((c[p>>2]|0)>(c[(c[n>>2]|0)+24>>2]|0)){c[(c[n>>2]|0)+24>>2]=(c[p>>2]|0)+20;c[y>>2]=qc(c[(c[n>>2]|0)+20>>2]|0,c[(c[n>>2]|0)+24>>2]|0)|0;if((c[y>>2]|0)!=0){c[(c[n>>2]|0)+20>>2]=c[y>>2];break}c[w>>2]=7;A=c[w>>2]|0;i=m;return A|0}}while(0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[p>>2]|0)){break}a[k>>0]=a[(c[x>>2]|0)+((c[r>>2]|0)+(c[v>>2]|0))>>0]|0;if((d[k>>0]|0|0)>=65){if((d[k>>0]|0|0)<=90){y=(d[k>>0]|0)-65+97|0}else{l=22}}else{l=22}if((l|0)==22){l=0;y=d[k>>0]|0}a[(c[(c[n>>2]|0)+20>>2]|0)+(c[v>>2]|0)>>0]=y;c[v>>2]=(c[v>>2]|0)+1}c[c[o>>2]>>2]=c[(c[n>>2]|0)+20>>2];c[c[q>>2]>>2]=c[p>>2];c[c[s>>2]>>2]=c[r>>2];c[c[t>>2]>>2]=c[(c[n>>2]|0)+12>>2];b=(c[n>>2]|0)+16|0;A=c[b>>2]|0;c[b>>2]=A+1;c[c[u>>2]>>2]=A;c[w>>2]=0;A=c[w>>2]|0;i=m;return A|0}function $n(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f;h=f+4|0;c[g>>2]=b;a[h>>0]=e;if((d[h>>0]|0)>=128){b=0;b=b&1;i=f;return b|0}b=(a[(c[g>>2]|0)+4+(d[h>>0]|0)>>0]|0)!=0;b=b&1;i=f;return b|0}function ao(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)>=48&(c[d>>2]|0)<=57){a=1}else{if((c[d>>2]|0)>=65&(c[d>>2]|0)<=90){a=1}else{if((c[d>>2]|0)>=97){a=(c[d>>2]|0)<=122}else{a=0}}}i=b;return a&1|0}function bo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=i;i=i+64|0;r=l;k=l+52|0;q=l+48|0;w=l+40|0;v=l+36|0;u=l+32|0;j=l+56|0;h=l+20|0;s=l+16|0;p=l+12|0;t=l+8|0;o=l+4|0;m=l+24|0;n=l+28|0;c[q>>2]=a;c[l+44>>2]=b;c[w>>2]=d;c[v>>2]=e;c[u>>2]=f;c[j>>2]=g;do{if(!((c[w>>2]|0)!=4&(c[w>>2]|0)!=5)){c[h>>2]=c[(c[v>>2]|0)+4>>2];c[p>>2]=cL(c[h>>2]|0)|0;if((c[w>>2]|0)==5){if((c[p>>2]|0)!=4){break}if(0!=(Tb(1816,c[h>>2]|0,4)|0)){break}c[h>>2]=c[(c[v>>2]|0)+12>>2];c[p>>2]=cL(c[h>>2]|0)|0;c[s>>2]=c[(c[v>>2]|0)+16>>2]}else{c[s>>2]=c[(c[v>>2]|0)+12>>2]}c[t>>2]=cL(c[s>>2]|0)|0;c[m>>2]=Lf(c[q>>2]|0,9888)|0;if((c[m>>2]|0)!=0){c[k>>2]=c[m>>2];a=c[k>>2]|0;i=l;return a|0}c[o>>2]=296+(c[p>>2]|0)+(c[t>>2]|0)+2;c[n>>2]=mc(c[o>>2]|0)|0;if((c[n>>2]|0)!=0){aL(c[n>>2]|0,0,c[o>>2]|0)|0;c[(c[n>>2]|0)+12>>2]=(c[n>>2]|0)+16;c[(c[(c[n>>2]|0)+12>>2]|0)+16>>2]=(c[(c[n>>2]|0)+12>>2]|0)+280;c[(c[(c[n>>2]|0)+12>>2]|0)+20>>2]=(c[(c[(c[n>>2]|0)+12>>2]|0)+16>>2]|0)+((c[p>>2]|0)+1);c[(c[(c[n>>2]|0)+12>>2]|0)+12>>2]=c[q>>2];c[(c[(c[n>>2]|0)+12>>2]|0)+248>>2]=1;fL(c[(c[(c[n>>2]|0)+12>>2]|0)+16>>2]|0,c[h>>2]|0,c[p>>2]|0)|0;fL(c[(c[(c[n>>2]|0)+12>>2]|0)+20>>2]|0,c[s>>2]|0,c[t>>2]|0)|0;yi(c[(c[(c[n>>2]|0)+12>>2]|0)+20>>2]|0);c[c[u>>2]>>2]=c[n>>2];c[k>>2]=0;a=c[k>>2]|0;i=l;return a|0}else{c[k>>2]=7;a=c[k>>2]|0;i=l;return a|0}}}while(0);a=wc(9960,r)|0;c[c[j>>2]>>2]=a;c[k>>2]=1;a=c[k>>2]|0;i=l;return a|0}function co(b,e){b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+48|0;k=m+32|0;o=m+28|0;l=m+24|0;n=m+20|0;f=m+16|0;g=m+8|0;j=m+4|0;p=m;q=m+12|0;c[m+36>>2]=b;c[k>>2]=e;c[l>>2]=-1;c[n>>2]=-1;c[f>>2]=-1;c[g>>2]=-1;c[j>>2]=1;if((c[(c[k>>2]|0)+8>>2]|0)==1){if((c[c[(c[k>>2]|0)+12>>2]>>2]|0)==0){if((d[(c[(c[k>>2]|0)+12>>2]|0)+4>>0]|0)==0){c[(c[k>>2]|0)+32>>2]=1}}}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[c[k>>2]>>2]|0)){break}if((a[(c[(c[k>>2]|0)+4>>2]|0)+((c[o>>2]|0)*12|0)+5>>0]|0)!=0){c[p>>2]=d[(c[(c[k>>2]|0)+4>>2]|0)+((c[o>>2]|0)*12|0)+4>>0]|0;c[q>>2]=c[(c[(c[k>>2]|0)+4>>2]|0)+((c[o>>2]|0)*12|0)>>2];if((c[q>>2]|0)==0){if((c[p>>2]|0)==2){c[l>>2]=c[o>>2]}if((c[p>>2]|0)==16){c[f>>2]=c[o>>2]}if((c[p>>2]|0)==8){c[f>>2]=c[o>>2]}if((c[p>>2]|0)==4){c[n>>2]=c[o>>2]}if((c[p>>2]|0)==32){c[n>>2]=c[o>>2]}}if((c[q>>2]|0)==4){if((c[p>>2]|0)==2){c[g>>2]=c[o>>2]}}}c[o>>2]=(c[o>>2]|0)+1}e=(c[k>>2]|0)+20|0;if((c[l>>2]|0)>=0){c[e>>2]=1;b=c[j>>2]|0;c[j>>2]=b+1;c[(c[(c[k>>2]|0)+16>>2]|0)+(c[l>>2]<<3)>>2]=b;h[(c[k>>2]|0)+40>>3]=5.0}else{c[e>>2]=0;h[(c[k>>2]|0)+40>>3]=2.0e4;if((c[n>>2]|0)>=0){b=(c[k>>2]|0)+20|0;c[b>>2]=(c[b>>2]|0)+2;b=c[j>>2]|0;c[j>>2]=b+1;c[(c[(c[k>>2]|0)+16>>2]|0)+(c[n>>2]<<3)>>2]=b;b=(c[k>>2]|0)+40|0;h[b>>3]=+h[b>>3]/2.0}if((c[f>>2]|0)>=0){b=(c[k>>2]|0)+20|0;c[b>>2]=(c[b>>2]|0)+4;b=c[j>>2]|0;c[j>>2]=b+1;c[(c[(c[k>>2]|0)+16>>2]|0)+(c[f>>2]<<3)>>2]=b;b=(c[k>>2]|0)+40|0;h[b>>3]=+h[b>>3]/2.0}}if((c[g>>2]|0)<0){i=m;return 0}b=c[j>>2]|0;c[j>>2]=b+1;c[(c[(c[k>>2]|0)+16>>2]|0)+(c[g>>2]<<3)>>2]=b;b=(c[k>>2]|0)+40|0;h[b>>3]=+h[b>>3]+-1.0;i=m;return 0}function eo(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+12|0;d=e;b=e+4|0;f=e+8|0;c[g>>2]=a;c[d>>2]=c[g>>2];c[b>>2]=c[(c[d>>2]|0)+12>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=40){break}yd(c[(c[b>>2]|0)+56+(c[f>>2]<<2)>>2]|0)|0;c[f>>2]=(c[f>>2]|0)+1}oc(c[(c[b>>2]|0)+240>>2]|0);oc(c[d>>2]|0);i=e;return 0}function fo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;f=g+12|0;e=g+4|0;d=g+8|0;c[g>>2]=a;c[e>>2]=b;c[d>>2]=mc(120)|0;if((c[d>>2]|0)!=0){a=(c[d>>2]|0)+0|0;b=a+120|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[c[e>>2]>>2]=c[d>>2];c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}else{c[f>>2]=7;a=c[f>>2]|0;i=g;return a|0}return 0}function go(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;e=b;d=b+4|0;c[f>>2]=a;c[e>>2]=c[(c[c[f>>2]>>2]|0)+12>>2];c[d>>2]=c[f>>2];jk(c[e>>2]|0);lj((c[d>>2]|0)+4|0);oc(c[(c[d>>2]|0)+60>>2]|0);oc(c[(c[d>>2]|0)+76>>2]|0);oc(c[(c[d>>2]|0)+112>>2]|0);oc(c[d>>2]|0);i=b;return 0}function ho(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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;j=i;i=i+80|0;s=j;t=j+64|0;g=j+60|0;z=j+56|0;y=j+48|0;p=j+44|0;l=j+40|0;m=j+36|0;o=j+68|0;n=j+24|0;k=j+20|0;w=j+16|0;v=j+12|0;r=j+8|0;q=j+4|0;x=j+28|0;u=j+32|0;c[g>>2]=a;c[z>>2]=b;c[j+52>>2]=d;c[y>>2]=e;c[p>>2]=f;c[l>>2]=c[g>>2];c[m>>2]=c[(c[c[g>>2]>>2]|0)+12>>2];c[n>>2]=0;c[k>>2]=0;c[w>>2]=-1;c[v>>2]=-1;c[r>>2]=-1;c[q>>2]=-1;c[x>>2]=0;if((c[z>>2]|0)==1){a=c[x>>2]|0;c[x>>2]=a+1;c[w>>2]=a}else{c[n>>2]=1;if((c[z>>2]&2|0)!=0){a=c[x>>2]|0;c[x>>2]=a+1;c[v>>2]=a}if((c[z>>2]&4|0)!=0){a=c[x>>2]|0;c[x>>2]=a+1;c[r>>2]=a}}if((c[x>>2]|0)<(c[y>>2]|0)){a=c[x>>2]|0;c[x>>2]=a+1;c[q>>2]=a}lj((c[l>>2]|0)+4|0);oc(c[(c[l>>2]|0)+60>>2]|0);oc(c[(c[l>>2]|0)+112>>2]|0);aL((c[l>>2]|0)+4|0,0,(c[l>>2]|0)+120-((c[l>>2]|0)+4)|0)|0;c[(c[l>>2]|0)+72>>2]=3;if((c[n>>2]|0)!=0){a=(c[l>>2]|0)+72|0;c[a>>2]=c[a>>2]|16}if((c[w>>2]|0)>=0){h=13}else{if((c[v>>2]|0)>=0){h=13}}if((h|0)==13){c[u>>2]=Jd(c[c[p>>2]>>2]|0)|0;if((c[u>>2]|0)!=0){c[s>>2]=c[u>>2];a=wc(1768,s)|0;c[(c[l>>2]|0)+60>>2]=a;a=Kd(c[c[p>>2]>>2]|0)|0;c[(c[l>>2]|0)+64>>2]=a;if((c[(c[l>>2]|0)+60>>2]|0)==0){c[t>>2]=7;a=c[t>>2]|0;i=j;return a|0}}}if((c[r>>2]|0)>=0){c[s>>2]=Jd(c[(c[p>>2]|0)+(c[r>>2]<<2)>>2]|0)|0;a=wc(1768,s)|0;c[(c[l>>2]|0)+76>>2]=a;a=Kd(c[(c[p>>2]|0)+(c[r>>2]<<2)>>2]|0)|0;c[(c[l>>2]|0)+80>>2]=a;if((c[(c[l>>2]|0)+76>>2]|0)==0){c[t>>2]=7;a=c[t>>2]|0;i=j;return a|0}}if((c[q>>2]|0)>=0){a=Od(c[(c[p>>2]|0)+(c[q>>2]<<2)>>2]|0)|0;c[k>>2]=a;c[k>>2]=(c[k>>2]|0)<0?0:a}c[(c[l>>2]|0)+84>>2]=c[k>>2];c[o>>2]=aj(c[m>>2]|0,c[k>>2]|0,0,-2,c[(c[l>>2]|0)+60>>2]|0,c[(c[l>>2]|0)+64>>2]|0,0,c[n>>2]|0,(c[l>>2]|0)+4|0)|0;if((c[o>>2]|0)==0){c[o>>2]=ej(c[m>>2]|0,(c[l>>2]|0)+4|0,(c[l>>2]|0)+60|0)|0}if((c[o>>2]|0)==0){c[o>>2]=io(c[g>>2]|0)|0}c[t>>2]=c[o>>2];a=c[t>>2]|0;i=j;return a|0}function io(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=i;i=i+64|0;m=e+52|0;r=e+48|0;h=e+44|0;q=e+40|0;k=e+36|0;f=e+32|0;g=e+28|0;n=e+20|0;j=e+16|0;l=e+12|0;o=e+8|0;p=e+24|0;b=e;c[r>>2]=a;c[h>>2]=c[r>>2];c[q>>2]=c[(c[c[r>>2]>>2]|0)+12>>2];a=(c[h>>2]|0)+96|0;r=a;r=dL(c[r>>2]|0,c[r+4>>2]|0,1,0)|0;c[a>>2]=r;c[a+4>>2]=D;a=(c[h>>2]|0)+104|0;c[a>>2]=(c[a>>2]|0)+1;while(1){if((c[(c[h>>2]|0)+104>>2]|0)>=(c[(c[h>>2]|0)+108>>2]|0)){break}r=(c[(c[h>>2]|0)+112>>2]|0)+(c[(c[h>>2]|0)+104>>2]<<4)|0;a=c[r+4>>2]|0;if((a|0)>0|(a|0)==0&(c[r>>2]|0)>>>0>0){d=4;break}r=(c[h>>2]|0)+104|0;c[r>>2]=(c[r>>2]|0)+1}if((d|0)==4){c[m>>2]=0;r=c[m>>2]|0;i=e;return r|0}c[k>>2]=fj(c[q>>2]|0,(c[h>>2]|0)+4|0)|0;do{if((c[k>>2]|0)==100){c[f>>2]=0;c[g>>2]=c[(c[h>>2]|0)+56>>2];c[n>>2]=c[(c[h>>2]|0)+52>>2];c[l>>2]=0;do{if((c[(c[h>>2]|0)+76>>2]|0)!=0){q=c[h>>2]|0;if((c[(c[h>>2]|0)+80>>2]|0)<(c[(c[h>>2]|0)+48>>2]|0)){q=c[q+80>>2]|0}else{q=c[q+48>>2]|0}c[o>>2]=q;c[p>>2]=XK(c[(c[h>>2]|0)+76>>2]|0,c[(c[h>>2]|0)+44>>2]|0,c[o>>2]|0)|0;if((c[p>>2]|0)>=0){if((c[p>>2]|0)!=0){break}if((c[(c[h>>2]|0)+48>>2]|0)<=(c[(c[h>>2]|0)+80>>2]|0)){break}}c[(c[h>>2]|0)+88>>2]=1;c[m>>2]=0;r=c[m>>2]|0;i=e;return r|0}}while(0);if((mo(c[h>>2]|0,2)|0)!=0){c[m>>2]=7;r=c[m>>2]|0;i=e;return r|0}aL(c[(c[h>>2]|0)+112>>2]|0,0,c[(c[h>>2]|0)+108>>2]<<4|0)|0;c[j>>2]=0;while(1){if((c[f>>2]|0)>=(c[g>>2]|0)){d=32;break}o=b;c[o>>2]=0;c[o+4>>2]=0;o=Kj((c[n>>2]|0)+(c[f>>2]|0)|0,b)|0;c[f>>2]=(c[f>>2]|0)+o;o=c[l>>2]|0;if((o|0)==0){r=c[(c[h>>2]|0)+112>>2]|0;a=r;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;c[r>>2]=a;c[r+4>>2]=D;c[l>>2]=1;c[j>>2]=0;continue}else if((o|0)==1){r=b;a=c[r+4>>2]|0;if((a|0)>0|(a|0)==0&(c[r>>2]|0)>>>0>1){r=(c[(c[h>>2]|0)+112>>2]|0)+16|0;a=r;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;c[r>>2]=a;c[r+4>>2]=D}c[l>>2]=2}else if((o|0)!=2){c[j>>2]=c[b>>2];if((mo(c[h>>2]|0,(c[j>>2]|0)+2|0)|0)!=0){break}r=(c[(c[h>>2]|0)+112>>2]|0)+((c[j>>2]|0)+1<<4)|0;a=r;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;c[r>>2]=a;c[r+4>>2]=D;c[l>>2]=2;continue}r=b;if((c[r>>2]|0)==0&(c[r+4>>2]|0)==0){c[l>>2]=0;continue}r=b;if((c[r>>2]|0)==1&(c[r+4>>2]|0)==0){c[l>>2]=3;continue}else{r=(c[(c[h>>2]|0)+112>>2]|0)+((c[j>>2]|0)+1<<4)+8|0;a=r;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;c[r>>2]=a;c[r+4>>2]=D;r=(c[(c[h>>2]|0)+112>>2]|0)+8|0;a=r;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;c[r>>2]=a;c[r+4>>2]=D;continue}}if((d|0)==32){c[(c[h>>2]|0)+104>>2]=0;c[k>>2]=0;break}c[m>>2]=7;r=c[m>>2]|0;i=e;return r|0}else{c[(c[h>>2]|0)+88>>2]=1}}while(0);c[m>>2]=c[k>>2];r=c[m>>2]|0;i=e;return r|0}function jo(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=c[e>>2];i=d;return c[(c[b>>2]|0)+88>>2]|0}function ko(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;g=e;h=e+4|0;f=e+8|0;c[j>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f>>2]=c[j>>2];d=c[h>>2]|0;if((d|0)==0){ce(c[g>>2]|0,c[(c[f>>2]|0)+44>>2]|0,c[(c[f>>2]|0)+48>>2]|0,-1);i=e;return 0}else if((d|0)==3){j=(c[(c[f>>2]|0)+112>>2]|0)+(c[(c[f>>2]|0)+104>>2]<<4)+8|0;$d(c[g>>2]|0,c[j>>2]|0,c[j+4>>2]|0);i=e;return 0}else if((d|0)==2){j=(c[(c[f>>2]|0)+112>>2]|0)+(c[(c[f>>2]|0)+104>>2]<<4)|0;$d(c[g>>2]|0,c[j>>2]|0,c[j+4>>2]|0);i=e;return 0}else if((d|0)==1){g=c[g>>2]|0;if((c[(c[f>>2]|0)+104>>2]|0)!=0){Zd(g,(c[(c[f>>2]|0)+104>>2]|0)-1|0);i=e;return 0}else{ce(g,9880,-1,0);i=e;return 0}}else{Zd(c[g>>2]|0,c[(c[f>>2]|0)+84>>2]|0);i=e;return 0}return 0}function lo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=c[g>>2];e=(c[e>>2]|0)+96|0;b=c[e+4>>2]|0;a=c[f>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=b;i=d;return 0}function mo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d;g=d+4|0;h=d+8|0;c[f>>2]=a;c[g>>2]=b;do{if((c[g>>2]|0)>(c[(c[f>>2]|0)+108>>2]|0)){c[h>>2]=qc(c[(c[f>>2]|0)+112>>2]|0,c[g>>2]<<4)|0;if((c[h>>2]|0)!=0){aL((c[h>>2]|0)+(c[(c[f>>2]|0)+108>>2]<<4)|0,0,(c[g>>2]|0)-(c[(c[f>>2]|0)+108>>2]|0)<<4|0)|0;c[(c[f>>2]|0)+112>>2]=c[h>>2];c[(c[f>>2]|0)+108>>2]=c[g>>2];break}c[e>>2]=7;a=c[e>>2]|0;i=d;return a|0}}while(0);c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}function no(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;g=e;h=e+4|0;f=e+8|0;c[j>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f>>2]=c[(c[j>>2]|0)+4>>2];Uc(c[j>>2]|0);if((c[(c[f>>2]|0)+48>>2]|0)==0){if((c[g>>2]|0)!=0){j=ve(0,c[g>>2]|0)|0;c[(c[f>>2]|0)+48>>2]=j;c[(c[f>>2]|0)+52>>2]=c[h>>2]}}i=e;return c[(c[f>>2]|0)+48>>2]|0}function oo(a){a=a|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+48|0;l=d+44|0;f=d;k=d+16|0;h=d+32|0;g=d+36|0;j=d+40|0;c[l>>2]=a;c[g>>2]=c[l>>2];a=(c[g>>2]|0)+8|0;c[f+0>>2]=c[a+0>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];a=(c[g>>2]|0)+40|0;c[k+0>>2]=c[a+0>>2];c[k+4>>2]=c[a+4>>2];c[k+8>>2]=c[a+8>>2];c[k+12>>2]=c[a+12>>2];Lh((c[g>>2]|0)+40|0);Kh((c[g>>2]|0)+24|0);c[h>>2]=c[k+8>>2];while(1){if((c[h>>2]|0)==0){break}$b(0,c[(c[h>>2]|0)+8>>2]|0);c[h>>2]=c[c[h>>2]>>2]}Kh(k);Lh((c[g>>2]|0)+8|0);c[h>>2]=c[f+8>>2];while(1){if((c[h>>2]|0)==0){break}c[j>>2]=c[(c[h>>2]|0)+8>>2];ac(0,c[j>>2]|0);c[h>>2]=c[c[h>>2]>>2]}Kh(f);Kh((c[g>>2]|0)+56|0);c[(c[g>>2]|0)+72>>2]=0;if((b[(c[g>>2]|0)+78>>1]&1|0)==0){i=d;return}l=(c[g>>2]|0)+4|0;c[l>>2]=(c[l>>2]|0)+1;l=(c[g>>2]|0)+78|0;b[l>>1]=(e[l>>1]|0)&-2;i=d;return}function po(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return(d[(c[b>>2]|0)+63>>0]|0|0)==2|0}function qo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;l=g+12|0;k=g;j=g+4|0;h=g+8|0;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;a[c[h>>2]>>0]=0;b=xb[c[(c[l>>2]|0)+36>>2]&31](c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return b|0}function ro(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[c[b>>2]>>2]|0}function so(d,e,f,g,h,j,k){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;n=i;i=i+112|0;E=n+96|0;q=n+92|0;x=n+88|0;t=n+84|0;D=n+80|0;L=n+76|0;s=n+72|0;y=n+68|0;H=n+64|0;r=n+60|0;p=n+56|0;z=n+52|0;C=n+48|0;w=n+16|0;K=n;o=n+4|0;u=n+8|0;B=n+12|0;G=n+20|0;l=n+24|0;J=n+28|0;I=n+32|0;F=n+36|0;v=n+40|0;A=n+44|0;c[q>>2]=d;c[x>>2]=e;c[t>>2]=f;c[D>>2]=g;c[L>>2]=h;c[s>>2]=j;c[y>>2]=k;c[r>>2]=0;c[p>>2]=0;c[z>>2]=0;c[C>>2]=0;c[w>>2]=0;c[o>>2]=0;c[u>>2]=0;c[B>>2]=(c[L>>2]&1|0)==0&1;c[G>>2]=Nq()|0;c[l>>2]=1024;c[J>>2]=0;c[I>>2]=0;d=c[(c[q>>2]|0)+4>>2]|0;if((d|0)>(kp()|0)){c[K>>2]=(c[(c[q>>2]|0)+4>>2]|0)+7&-8}else{c[K>>2]=(kp()|0)+7&-8}c[c[x>>2]>>2]=0;do{if((c[L>>2]&2|0)!=0){c[C>>2]=1;if((c[t>>2]|0)!=0){if((a[c[t>>2]>>0]|0)!=0){c[o>>2]=pe(0,c[t>>2]|0)|0;if((c[o>>2]|0)!=0){c[u>>2]=Ub(c[o>>2]|0)|0;c[t>>2]=0;break}c[E>>2]=7;d=c[E>>2]|0;i=n;return d|0}}}}while(0);if((c[t>>2]|0)!=0){if((a[c[t>>2]>>0]|0)!=0){c[u>>2]=(c[(c[q>>2]|0)+8>>2]|0)+1;c[o>>2]=$e(0,c[u>>2]<<1)|0;if((c[o>>2]|0)==0){c[E>>2]=7;d=c[E>>2]|0;i=n;return d|0}a[c[o>>2]>>0]=0;c[p>>2]=qo(c[q>>2]|0,c[t>>2]|0,c[u>>2]|0,c[o>>2]|0)|0;c[u>>2]=Ub(c[o>>2]|0)|0;d=(Ub(c[t>>2]|0)|0)+1|0;d=(c[t>>2]|0)+d|0;c[J>>2]=d;c[F>>2]=d;while(1){L=c[F>>2]|0;if((a[c[F>>2]>>0]|0)==0){break}d=(Ub(L)|0)+1|0;c[F>>2]=(c[F>>2]|0)+d;d=(Ub(c[F>>2]|0)|0)+1|0;c[F>>2]=(c[F>>2]|0)+d}c[I>>2]=L+1-(c[J>>2]|0);if((c[p>>2]|0)==0){if(((c[u>>2]|0)+8|0)>(c[(c[q>>2]|0)+8>>2]|0)){c[p>>2]=Bq(44459)|0}}if((c[p>>2]|0)!=0){cc(0,c[o>>2]|0);c[E>>2]=c[p>>2];d=c[E>>2]|0;i=n;return d|0}}}c[H>>2]=Sc(216+((c[G>>2]|0)+7&-8)+((c[(c[q>>2]|0)+4>>2]|0)+7&-8)+(c[K>>2]<<1)+(c[u>>2]|0)+1+(c[I>>2]|0)+(c[u>>2]|0)+10+(c[u>>2]|0)+6|0)|0;if((c[H>>2]|0)==0){cc(0,c[o>>2]|0);c[E>>2]=7;d=c[E>>2]|0;i=n;return d|0}c[r>>2]=c[H>>2];d=(c[H>>2]|0)+216|0;c[H>>2]=d;c[(c[r>>2]|0)+204>>2]=d;d=(c[H>>2]|0)+((c[G>>2]|0)+7&-8)|0;c[H>>2]=d;c[(c[r>>2]|0)+60>>2]=d;d=(c[H>>2]|0)+((c[(c[q>>2]|0)+4>>2]|0)+7&-8)|0;c[H>>2]=d;c[(c[r>>2]|0)+68>>2]=d;d=(c[H>>2]|0)+(c[K>>2]|0)|0;c[H>>2]=d;c[(c[r>>2]|0)+64>>2]=d;d=(c[H>>2]|0)+(c[K>>2]|0)|0;c[H>>2]=d;c[(c[r>>2]|0)+168>>2]=d;if((c[o>>2]|0)!=0){d=(c[H>>2]|0)+((c[u>>2]|0)+1+(c[I>>2]|0))|0;c[H>>2]=d;c[(c[r>>2]|0)+172>>2]=d;fL(c[(c[r>>2]|0)+168>>2]|0,c[o>>2]|0,c[u>>2]|0)|0;if((c[I>>2]|0)!=0){fL((c[(c[r>>2]|0)+168>>2]|0)+((c[u>>2]|0)+1)|0,c[J>>2]|0,c[I>>2]|0)|0}fL(c[(c[r>>2]|0)+172>>2]|0,c[o>>2]|0,c[u>>2]|0)|0;H=(c[(c[r>>2]|0)+172>>2]|0)+(c[u>>2]|0)+0|0;G=11160|0;F=H+10|0;do{a[H>>0]=a[G>>0]|0;H=H+1|0;G=G+1|0}while((H|0)<(F|0));c[(c[r>>2]|0)+212>>2]=(c[(c[r>>2]|0)+172>>2]|0)+((c[u>>2]|0)+9);fL(c[(c[r>>2]|0)+212>>2]|0,c[o>>2]|0,c[u>>2]|0)|0;d=(c[(c[r>>2]|0)+212>>2]|0)+(c[u>>2]|0)|0;a[d+0>>0]=a[11176>>0]|0;a[d+1>>0]=a[11177>>0]|0;a[d+2>>0]=a[11178>>0]|0;a[d+3>>0]=a[11179>>0]|0;a[d+4>>0]=a[11180>>0]|0;cc(0,c[o>>2]|0)}c[c[r>>2]>>2]=c[q>>2];c[(c[r>>2]|0)+144>>2]=c[s>>2];do{if((c[t>>2]|0)!=0){if((a[c[t>>2]>>0]|0)!=0){c[v>>2]=0;c[p>>2]=wp(c[q>>2]|0,c[(c[r>>2]|0)+168>>2]|0,c[(c[r>>2]|0)+60>>2]|0,c[s>>2]|0,v)|0;c[w>>2]=c[v>>2]&1;if((c[p>>2]|0)==0){c[A>>2]=tp(c[(c[r>>2]|0)+60>>2]|0)|0;do{if((c[w>>2]|0)==0){sp(c[r>>2]|0);if((c[l>>2]|0)>>>0<(c[(c[r>>2]|0)+148>>2]|0)>>>0){if((c[(c[r>>2]|0)+148>>2]|0)>>>0>8192){c[l>>2]=8192;break}else{c[l>>2]=c[(c[r>>2]|0)+148>>2];break}}}}while(0);d=(Ng(c[t>>2]|0,11184,0)|0)&255;a[(c[r>>2]|0)+13>>0]=d;if((c[A>>2]&8192|0)==0){if((Ng(c[t>>2]|0,11192,0)|0)==0){break}}c[s>>2]=c[s>>2]|1;m=39}}else{m=39}}else{m=39}}while(0);if((m|0)==39){c[z>>2]=1;a[(c[r>>2]|0)+16>>0]=1;a[(c[r>>2]|0)+17>>0]=4;a[(c[r>>2]|0)+13>>0]=1;c[w>>2]=c[s>>2]&1}if((c[p>>2]|0)==0){c[p>>2]=bh(c[r>>2]|0,l,-1)|0}if((c[p>>2]|0)!=0){Ko(c[(c[r>>2]|0)+60>>2]|0)|0;oc(c[r>>2]|0);c[E>>2]=c[p>>2];d=c[E>>2]|0;i=n;return d|0}c[D>>2]=(c[D>>2]|0)+7&-8;Oq(c[l>>2]|0,c[D>>2]|0,((c[C>>2]|0)!=0^1)&1,(c[C>>2]|0)!=0^1?53:0,c[r>>2]|0,c[(c[r>>2]|0)+204>>2]|0);a[(c[r>>2]|0)+6>>0]=c[B>>2];c[(c[r>>2]|0)+156>>2]=1073741823;a[(c[r>>2]|0)+12>>0]=c[z>>2];a[(c[r>>2]|0)+4>>0]=c[z>>2];a[(c[r>>2]|0)+18>>0]=a[(c[r>>2]|0)+12>>0]|0;a[(c[r>>2]|0)+15>>0]=c[C>>2];a[(c[r>>2]|0)+14>>0]=c[w>>2];a[(c[r>>2]|0)+7>>0]=a[(c[r>>2]|0)+12>>0]|0;if((a[(c[r>>2]|0)+7>>0]|0)==0){a[(c[r>>2]|0)+8>>0]=1;a[(c[r>>2]|0)+11>>0]=2;a[(c[r>>2]|0)+10>>0]=34;a[(c[r>>2]|0)+9>>0]=2}b[(c[r>>2]|0)+140>>1]=c[D>>2];d=(c[r>>2]|0)+160|0;c[d>>2]=-1;c[d+4>>2]=-1;sp(c[r>>2]|0);if((c[B>>2]|0)!=0){if((c[C>>2]|0)!=0){a[(c[r>>2]|0)+5>>0]=4}}else{a[(c[r>>2]|0)+5>>0]=2}c[(c[r>>2]|0)+196>>2]=c[y>>2];c[c[x>>2]>>2]=c[r>>2];c[E>>2]=0;d=c[E>>2]|0;i=n;return d|0}function to(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;c[e>>2]=Jq(c[f>>2]|0)|0;if((a[c[e>>2]>>0]|0)==0){i=d;return}a[c[e>>2]>>0]=0;if((Kq(c[f>>2]|0)|0)<=1){i=d;return}Lq(c[e>>2]|0)|0;i=d;return}function uo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;d=g;b=c[d+4>>2]|0;a=(c[f>>2]|0)+128|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;ih(c[f>>2]|0);i=e;return}function vo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;j=e;h=e+4|0;f=e+8|0;c[g>>2]=a;c[j>>2]=b;c[h>>2]=d;c[f>>2]=0;aL(c[h>>2]|0,0,c[j>>2]|0)|0;if((c[c[(c[g>>2]|0)+60>>2]>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}a=xp(c[(c[g>>2]|0)+60>>2]|0,c[h>>2]|0,c[j>>2]|0,0,0)|0;c[f>>2]=a;c[f>>2]=(c[f>>2]|0)==522?0:a;a=c[f>>2]|0;i=e;return a|0}function wo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;j=e;h=e+4|0;g=e+8|0;c[f>>2]=a;c[j>>2]=b;c[h>>2]=d;c[(c[f>>2]|0)+176>>2]=c[j>>2];c[(c[f>>2]|0)+180>>2]=c[h>>2];if((c[c[(c[f>>2]|0)+60>>2]>>2]|0)==0){i=e;return}c[g>>2]=(c[f>>2]|0)+176;kq(c[(c[f>>2]|0)+60>>2]|0,15,c[g>>2]|0);i=e;return}function xo(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];a=Iq((c[(c[d>>2]|0)+4>>2]|0)+436|0)|0;i=b;return a|0}function yo(b){b=b|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=b;i=e;return a[(c[d>>2]|0)+14>>0]|0}function zo(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return(d[c[b>>2]>>0]|0)<<24|(d[(c[b>>2]|0)+1>>0]|0)<<16|(d[(c[b>>2]|0)+2>>0]|0)<<8|(d[(c[b>>2]|0)+3>>0]|0)|0}function Ao(b){b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+200>>2];Ih();Eo(c[f>>2]|0);a[(c[f>>2]|0)+4>>0]=0;Fo(c[(c[f>>2]|0)+208>>2]|0,d[(c[f>>2]|0)+9>>0]|0,c[(c[f>>2]|0)+152>>2]|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+208>>2]=0;fh(c[f>>2]|0);b=c[f>>2]|0;if((a[(c[f>>2]|0)+15>>0]|0)!=0){Go(b)}else{if((c[c[b+64>>2]>>2]|0)!=0){b=c[f>>2]|0;Ho(b,Io(c[f>>2]|0)|0)|0}Jo(c[f>>2]|0)}Jh();Ko(c[(c[f>>2]|0)+64>>2]|0)|0;Ko(c[(c[f>>2]|0)+60>>2]|0)|0;gh(c[g>>2]|0);Lo(c[(c[f>>2]|0)+204>>2]|0);oc(c[f>>2]|0);i=e;return 0}function Bo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;Co(c[(c[f>>2]|0)+204>>2]|0,c[e>>2]|0);i=d;return}function Co(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+16>>2]=c[f>>2];if((c[(c[e>>2]|0)+40>>2]|0)==0){i=d;return}b=c[45260>>2]|0;a=c[(c[e>>2]|0)+40>>2]|0;f=Do(c[e>>2]|0)|0;sb[b&7](a,f);i=d;return}function Do(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;a=c[(c[e>>2]|0)+16>>2]|0;if((c[(c[e>>2]|0)+16>>2]|0)>=0){c[d>>2]=a;a=c[d>>2]|0;i=b;return a|0}else{f=nL(-1024,-1,a|0,((a|0)<0)<<31>>31|0)|0;a=(c[(c[e>>2]|0)+20>>2]|0)+(c[(c[e>>2]|0)+24>>2]|0)|0;a=lL(f|0,D|0,a|0,((a|0)<0)<<31>>31|0)|0;c[d>>2]=a;a=c[d>>2]|0;i=b;return a|0}return 0}function Eo(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b;e=b+4|0;c[f>>2]=a;c[d>>2]=c[(c[f>>2]|0)+136>>2];while(1){if((c[d>>2]|0)==0){break}c[e>>2]=c[(c[d>>2]|0)+12>>2];oc(c[d>>2]|0);c[d>>2]=c[e>>2]}i=b;return}function Fo(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+32|0;l=n+24|0;h=n;o=n+4|0;p=n+8|0;j=n+12|0;m=n+16|0;k=n+20|0;c[l>>2]=b;c[h>>2]=e;c[o>>2]=f;c[p>>2]=g;c[j>>2]=0;if((c[l>>2]|0)==0){b=c[j>>2]|0;i=n;return b|0}c[m>>2]=0;c[j>>2]=iq(c[(c[l>>2]|0)+4>>2]|0,4)|0;do{if((c[j>>2]|0)==0){if((d[(c[l>>2]|0)+43>>0]|0|0)==0){a[(c[l>>2]|0)+43>>0]=1}c[j>>2]=jq(c[l>>2]|0,0,0,0,c[h>>2]|0,c[o>>2]|0,c[p>>2]|0,0,0)|0;if((c[j>>2]|0)==0){c[k>>2]=-1;kq(c[(c[l>>2]|0)+4>>2]|0,10,k);if((c[k>>2]|0)!=1){c[m>>2]=1;break}b=(c[l>>2]|0)+16|0;e=c[b+4>>2]|0;if((e|0)>0|(e|0)==0&(c[b>>2]|0)>>>0>=0){lq(c[l>>2]|0,0,0)}}}}while(0);mq(c[l>>2]|0,c[m>>2]|0);Ko(c[(c[l>>2]|0)+8>>2]|0)|0;if((c[m>>2]|0)!=0){Ih();So(c[c[l>>2]>>2]|0,c[(c[l>>2]|0)+100>>2]|0,0)|0;Jh()}oc(c[(c[l>>2]|0)+32>>2]|0);oc(c[l>>2]|0);b=c[j>>2]|0;i=n;return b|0}function Go(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;f=g+8|0;h=g;j=g+4|0;c[f>>2]=b;wh(c[(c[f>>2]|0)+56>>2]|0);c[(c[f>>2]|0)+56>>2]=0;Oo(c[f>>2]|0);k=(Uo(c[f>>2]|0)|0)!=0;b=c[f>>2]|0;if(k){hq(c[b+208>>2]|0);a[(c[f>>2]|0)+16>>0]=0}else{if((a[b+4>>0]|0)==0){if((c[c[(c[f>>2]|0)+60>>2]>>2]|0)!=0){b=tp(c[(c[f>>2]|0)+60>>2]|0)|0}else{b=0}c[j>>2]=b;if(0==(c[j>>2]&2048|0)){e=8}else{if(1!=(a[(c[f>>2]|0)+5>>0]&5|0)){e=8}}if((e|0)==8){Ko(c[(c[f>>2]|0)+64>>2]|0)|0}c[h>>2]=Yo(c[f>>2]|0,0)|0;if((c[h>>2]|0)!=0){if((d[(c[f>>2]|0)+16>>0]|0)==6){a[(c[f>>2]|0)+17>>0]=5}}a[(c[f>>2]|0)+18>>0]=0;a[(c[f>>2]|0)+16>>0]=0}}if((c[(c[f>>2]|0)+40>>2]|0)==0){k=c[f>>2]|0;k=k+72|0;b=k;c[b>>2]=0;k=k+4|0;c[k>>2]=0;k=c[f>>2]|0;k=k+80|0;b=k;c[b>>2]=0;k=k+4|0;c[k>>2]=0;k=c[f>>2]|0;k=k+19|0;a[k>>0]=0;i=g;return}fh(c[f>>2]|0);a[(c[f>>2]|0)+18>>0]=a[(c[f>>2]|0)+12>>0]|0;a[(c[f>>2]|0)+16>>0]=0;c[(c[f>>2]|0)+40>>2]=0;k=c[f>>2]|0;k=k+72|0;b=k;c[b>>2]=0;k=k+4|0;c[k>>2]=0;k=c[f>>2]|0;k=k+80|0;b=k;c[b>>2]=0;k=k+4|0;c[k>>2]=0;k=c[f>>2]|0;k=k+19|0;a[k>>0]=0;i=g;return}function Ho(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;f=e;h=e+4|0;c[g>>2]=b;c[f>>2]=d;c[h>>2]=c[f>>2]&255;if(!((c[h>>2]|0)==13|(c[h>>2]|0)==10)){h=c[f>>2]|0;i=e;return h|0}c[(c[g>>2]|0)+40>>2]=c[f>>2];a[(c[g>>2]|0)+16>>0]=6;h=c[f>>2]|0;i=e;return h|0}function Io(b){b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;f=e+4|0;d=e;c[f>>2]=b;c[d>>2]=0;if((a[(c[f>>2]|0)+7>>0]|0)==0){c[d>>2]=cp(c[(c[f>>2]|0)+64>>2]|0,2)|0}if((c[d>>2]|0)!=0){f=c[d>>2]|0;i=e;return f|0}c[d>>2]=dh(c[(c[f>>2]|0)+64>>2]|0,(c[f>>2]|0)+80|0)|0;f=c[d>>2]|0;i=e;return f|0}function Jo(b){b=b|0;var e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=b;do{if((d[(c[e>>2]|0)+16>>0]|0)!=6){if((d[(c[e>>2]|0)+16>>0]|0)!=0){if((d[(c[e>>2]|0)+16>>0]|0)>=2){Ih();Mo(c[e>>2]|0)|0;Jh();break}if((a[(c[e>>2]|0)+4>>0]|0)==0){No(c[e>>2]|0,0,0)|0}}}}while(0);Go(c[e>>2]|0);i=f;return}function Ko(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=0;if((c[c[e>>2]>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}c[d>>2]=ub[c[(c[c[e>>2]>>2]|0)+4>>2]&63](c[e>>2]|0)|0;c[c[e>>2]>>2]=0;e=c[d>>2]|0;i=b;return e|0}function Lo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[d>>2]|0)+40>>2]|0)==0){i=b;return}rb[c[45284>>2]&31](c[(c[d>>2]|0)+40>>2]|0);i=b;return}function Mo(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e;h=e+4|0;j=e+8|0;k=e+12|0;c[g>>2]=b;c[h>>2]=0;b=c[g>>2]|0;if((d[(c[g>>2]|0)+16>>0]|0)==6){c[f>>2]=c[b+40>>2];b=c[f>>2]|0;i=e;return b|0}if((d[b+16>>0]|0)<=1){c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}l=(Uo(c[g>>2]|0)|0)!=0;b=c[g>>2]|0;do{if(l){c[h>>2]=lp(b,2,-1)|0;c[j>>2]=No(c[g>>2]|0,d[(c[g>>2]|0)+19>>0]|0,0)|0;if((c[h>>2]|0)==0){c[h>>2]=c[j>>2]}}else{if((c[c[b+64>>2]>>2]|0)!=0){if((d[(c[g>>2]|0)+16>>0]|0)!=2){c[h>>2]=mp(c[g>>2]|0,0)|0;break}}c[k>>2]=d[(c[g>>2]|0)+16>>0]|0;c[h>>2]=No(c[g>>2]|0,0,0)|0;if((a[(c[g>>2]|0)+15>>0]|0)==0){if((c[k>>2]|0)>2){c[(c[g>>2]|0)+40>>2]=4;a[(c[g>>2]|0)+16>>0]=6;c[f>>2]=c[h>>2];l=c[f>>2]|0;i=e;return l|0}}}}while(0);c[f>>2]=Ho(c[g>>2]|0,c[h>>2]|0)|0;l=c[f>>2]|0;i=e;return l|0}function No(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;h=m+24|0;k=m;n=m+4|0;g=m+8|0;j=m+12|0;l=m+16|0;o=m+20|0;c[k>>2]=b;c[n>>2]=e;c[g>>2]=f;c[j>>2]=0;c[l>>2]=0;if((d[(c[k>>2]|0)+16>>0]|0)<2){if((d[(c[k>>2]|0)+17>>0]|0)<2){c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}}Oo(c[k>>2]|0);a:do{if((c[c[(c[k>>2]|0)+64>>2]>>2]|0)!=0){b=(Po(c[(c[k>>2]|0)+64>>2]|0)|0)!=0;f=c[k>>2]|0;if(b){Ko(c[f+64>>2]|0)|0;break}e=c[k>>2]|0;if((d[f+5>>0]|0)==3){b=e+72|0;if((c[b>>2]|0)==0&(c[b+4>>2]|0)==0){c[j>>2]=0}else{c[j>>2]=Qo(c[(c[k>>2]|0)+64>>2]|0,0,0)|0}b=(c[k>>2]|0)+72|0;c[b>>2]=0;c[b+4>>2]=0;break}do{if((d[e+5>>0]|0)!=1){if((d[(c[k>>2]|0)+4>>0]|0)!=0){if((d[(c[k>>2]|0)+5>>0]|0)!=5){break}}c[o>>2]=((a[(c[k>>2]|0)+12>>0]|0)!=0?0:1)&1;Ko(c[(c[k>>2]|0)+64>>2]|0)|0;if((c[o>>2]|0)==0){break a}c[j>>2]=So(c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+172>>2]|0,0)|0;break a}}while(0);c[j>>2]=Ro(c[k>>2]|0,c[n>>2]|0)|0;b=(c[k>>2]|0)+72|0;c[b>>2]=0;c[b+4>>2]=0}}while(0);wh(c[(c[k>>2]|0)+56>>2]|0);c[(c[k>>2]|0)+56>>2]=0;c[(c[k>>2]|0)+44>>2]=0;To(c[(c[k>>2]|0)+204>>2]|0);mh(c[(c[k>>2]|0)+204>>2]|0,c[(c[k>>2]|0)+24>>2]|0);if((Uo(c[k>>2]|0)|0)!=0){c[l>>2]=Vo(c[(c[k>>2]|0)+208>>2]|0)|0}else{if((c[j>>2]|0)==0){if((c[g>>2]|0)!=0){if((c[(c[k>>2]|0)+32>>2]|0)>>>0>(c[(c[k>>2]|0)+24>>2]|0)>>>0){c[j>>2]=Wo(c[k>>2]|0,c[(c[k>>2]|0)+24>>2]|0)|0}}}}if((c[j>>2]|0)==0){if((c[g>>2]|0)!=0){if((c[c[(c[k>>2]|0)+60>>2]>>2]|0)!=0){b=Hg(c[(c[k>>2]|0)+60>>2]|0,22,0)|0;c[j>>2]=b;c[j>>2]=(c[j>>2]|0)==12?0:b}}}do{if((a[(c[k>>2]|0)+4>>0]|0)==0){if((Uo(c[k>>2]|0)|0)!=0){if((Xo(c[(c[k>>2]|0)+208>>2]|0,0)|0)==0){break}}c[l>>2]=Yo(c[k>>2]|0,1)|0;a[(c[k>>2]|0)+18>>0]=0}}while(0);a[(c[k>>2]|0)+16>>0]=1;a[(c[k>>2]|0)+19>>0]=0;c[h>>2]=(c[j>>2]|0)==0?c[l>>2]|0:c[j>>2]|0;b=c[h>>2]|0;i=m;return b|0}function Oo(b){b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;e=f+4|0;g=f;c[e>>2]=b;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[e>>2]|0)+96>>2]|0)){break}wh(c[(c[(c[e>>2]|0)+92>>2]|0)+((c[g>>2]|0)*48|0)+16>>2]|0);c[g>>2]=(c[g>>2]|0)+1}if((a[(c[e>>2]|0)+4>>0]|0)!=0){if((Po(c[(c[e>>2]|0)+68>>2]|0)|0)!=0){d=6}}else{d=6}if((d|0)==6){Ko(c[(c[e>>2]|0)+68>>2]|0)|0}oc(c[(c[e>>2]|0)+92>>2]|0);c[(c[e>>2]|0)+92>>2]=0;c[(c[e>>2]|0)+96>>2]=0;c[(c[e>>2]|0)+52>>2]=0;i=f;return}function Po(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[c[b>>2]>>2]|0)==10880|0}function Qo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;a=g;a=pb[c[(c[c[f>>2]>>2]|0)+16>>2]&31](c[f>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;i=e;return a|0}function Ro(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;k=g+24|0;m=g+20|0;h=g+16|0;j=g;l=g+8|0;c[k>>2]=b;c[m>>2]=e;c[h>>2]=0;b=(c[k>>2]|0)+72|0;if(!((c[b>>2]|0)!=0|(c[b+4>>2]|0)!=0)){b=c[h>>2]|0;i=g;return b|0}n=(c[k>>2]|0)+160|0;e=c[n+4>>2]|0;b=j;c[b>>2]=c[n>>2];c[b+4>>2]=e;if((c[m>>2]|0)!=0){f=4}else{n=j;if((c[n>>2]|0)==0&(c[n+4>>2]|0)==0){f=4}else{c[h>>2]=nd(c[(c[k>>2]|0)+64>>2]|0,10848,28,0,0)|0}}if((f|0)==4){c[h>>2]=Qo(c[(c[k>>2]|0)+64>>2]|0,0,0)|0}if((c[h>>2]|0)==0){if((a[(c[k>>2]|0)+7>>0]|0)==0){c[h>>2]=cp(c[(c[k>>2]|0)+64>>2]|0,16|d[(c[k>>2]|0)+11>>0])|0}}if((c[h>>2]|0)!=0){n=c[h>>2]|0;i=g;return n|0}n=j;b=c[n+4>>2]|0;if(!((b|0)>0|(b|0)==0&(c[n>>2]|0)>>>0>0)){n=c[h>>2]|0;i=g;return n|0}c[h>>2]=dh(c[(c[k>>2]|0)+64>>2]|0,l)|0;if((c[h>>2]|0)!=0){n=c[h>>2]|0;i=g;return n|0}b=l;m=c[b+4>>2]|0;n=j;e=c[n+4>>2]|0;if(!((m|0)>(e|0)|((m|0)==(e|0)?(c[b>>2]|0)>>>0>(c[n>>2]|0)>>>0:0))){n=c[h>>2]|0;i=g;return n|0}n=j;c[h>>2]=Qo(c[(c[k>>2]|0)+64>>2]|0,c[n>>2]|0,c[n+4>>2]|0)|0;n=c[h>>2]|0;i=g;return n|0}function So(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=pb[c[(c[h>>2]|0)+28>>2]&31](c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function To(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;while(1){a=c[c[d>>2]>>2]|0;c[e>>2]=a;if((a|0)==0){break}nh(c[e>>2]|0)}i=b;return}function Uo(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[(c[b>>2]|0)+208>>2]|0)!=0|0}function Vo(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if((a[(c[e>>2]|0)+44>>0]|0)==0){i=d;return 0}bp(c[e>>2]|0,0,1);a[(c[e>>2]|0)+44>>0]=0;a[(c[e>>2]|0)+47>>0]=0;i=d;return 0}function Wo(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+48|0;g=e+32|0;k=e+20|0;f=e+16|0;j=e;l=e+8|0;h=e+24|0;m=e+28|0;c[g>>2]=a;c[k>>2]=b;c[f>>2]=0;if((c[c[(c[g>>2]|0)+60>>2]>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}if((d[(c[g>>2]|0)+16>>0]|0|0)<4){if((d[(c[g>>2]|0)+16>>0]|0|0)!=0){a=c[f>>2]|0;i=e;return a|0}}c[h>>2]=c[(c[g>>2]|0)+152>>2];c[f>>2]=dh(c[(c[g>>2]|0)+60>>2]|0,j)|0;b=c[h>>2]|0;b=nL(b|0,((b|0)<0)<<31>>31|0,c[k>>2]|0,0)|0;a=l;c[a>>2]=b;c[a+4>>2]=D;if((c[f>>2]|0)!=0){a=c[f>>2]|0;i=e;return a|0}b=j;a=l;if(!((c[b>>2]|0)!=(c[a>>2]|0)?1:(c[b+4>>2]|0)!=(c[a+4>>2]|0))){a=c[f>>2]|0;i=e;return a|0}b=j;o=c[b+4>>2]|0;a=l;n=c[a+4>>2]|0;if((o|0)>(n|0)|((o|0)==(n|0)?(c[b>>2]|0)>>>0>(c[a>>2]|0)>>>0:0)){o=l;c[f>>2]=Qo(c[(c[g>>2]|0)+60>>2]|0,c[o>>2]|0,c[o+4>>2]|0)|0}else{n=c[h>>2]|0;n=dL(c[j>>2]|0,c[j+4>>2]|0,n|0,((n|0)<0)<<31>>31|0)|0;j=D;o=l;a=c[o+4>>2]|0;if((j|0)<(a|0)|((j|0)==(a|0)?n>>>0<=(c[o>>2]|0)>>>0:0)){c[m>>2]=c[(c[g>>2]|0)+200>>2];aL(c[m>>2]|0,0,c[h>>2]|0)|0;j=c[(c[g>>2]|0)+60>>2]|0;a=c[m>>2]|0;n=c[h>>2]|0;m=l;o=c[h>>2]|0;o=$K(c[m>>2]|0,c[m+4>>2]|0,o|0,((o|0)<0)<<31>>31|0)|0;c[f>>2]=nd(j,a,n,o,D)|0}}if((c[f>>2]|0)!=0){o=c[f>>2]|0;i=e;return o|0}c[(c[g>>2]|0)+32>>2]=c[k>>2];o=c[f>>2]|0;i=e;return o|0}function Xo(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g+8|0;k=g;h=g+4|0;c[j>>2]=e;c[k>>2]=f;if((c[k>>2]|0)!=0){f=c[j>>2]|0;if((c[k>>2]|0)>0){$o(f,3+(b[(c[j>>2]|0)+40>>1]|0)|0);a[(c[j>>2]|0)+43>>0]=1;c[h>>2]=1;e=c[h>>2]|0;i=g;return e|0}else{c[h>>2]=(d[f+43>>0]|0)==0&1;e=c[h>>2]|0;i=g;return e|0}}if((a[(c[j>>2]|0)+43>>0]|0)==0){c[h>>2]=0;e=c[h>>2]|0;i=g;return e|0}a[(c[j>>2]|0)+43>>0]=0;if((_o(c[j>>2]|0,3+(b[(c[j>>2]|0)+40>>1]|0)|0)|0)!=0){a[(c[j>>2]|0)+43>>0]=1}c[h>>2]=(d[(c[j>>2]|0)+43>>0]|0)==0&1;e=c[h>>2]|0;i=g;return e|0}function Yo(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;h=f+8|0;j=f;g=f+4|0;c[h>>2]=b;c[j>>2]=e;c[g>>2]=0;if((c[c[(c[h>>2]|0)+60>>2]>>2]|0)==0){b=c[g>>2]|0;i=f;return b|0}if((d[(c[h>>2]|0)+13>>0]|0|0)!=0){e=0}else{e=Zo(c[(c[h>>2]|0)+60>>2]|0,c[j>>2]|0)|0}c[g>>2]=e;if((d[(c[h>>2]|0)+17>>0]|0|0)==5){b=c[g>>2]|0;i=f;return b|0}a[(c[h>>2]|0)+17>>0]=c[j>>2];b=c[g>>2]|0;i=f;return b|0}function Zo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+32>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function _o(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;j=e;h=e+4|0;g=e+8|0;c[j>>2]=b;c[h>>2]=d;if((a[(c[j>>2]|0)+43>>0]|0)!=0){c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}else{c[g>>2]=ap(c[(c[j>>2]|0)+4>>2]|0,c[h>>2]|0,1,6)|0;c[f>>2]=c[g>>2];b=c[f>>2]|0;i=e;return b|0}return 0}function $o(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;if((a[(c[f>>2]|0)+43>>0]|0)!=0){i=e;return}ap(c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0,1,5)|0;i=e;return}function ap(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=xb[c[(c[c[k>>2]>>2]|0)+56>>2]&31](c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return a|0}function bp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;h=f;j=f+4|0;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;if((a[(c[g>>2]|0)+43>>0]|0)!=0){i=f;return}ap(c[(c[g>>2]|0)+4>>2]|0,c[h>>2]|0,c[j>>2]|0,9)|0;i=f;return}function cp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+20>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function dp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;gp(c[d>>2]|0,0,0)|0;i=b;return 0}function ep(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=i;i=i+64|0;t=l+52|0;s=l+48|0;h=l+44|0;o=l+8|0;j=l+40|0;n=l+36|0;p=l+32|0;g=l+24|0;k=l+20|0;r=l;q=l+16|0;m=l+28|0;c[t>>2]=a;c[s>>2]=b;c[h>>2]=d;d=o;c[d>>2]=e;c[d+4>>2]=f;c[j>>2]=c[t>>2];c[n>>2]=c[s>>2];c[p>>2]=c[h>>2];d=(c[j>>2]|0)+24|0;b=o;a=o;a:do{if(((c[d>>2]|0)!=(c[b>>2]|0)?1:(c[d+4>>2]|0)!=(c[b+4>>2]|0))|(c[a>>2]|0)==0&(c[a+4>>2]|0)==0){t=r;c[t>>2]=0;c[t+4>>2]=0;c[k>>2]=c[(c[j>>2]|0)+4>>2];while(1){if((c[k>>2]|0)==0){break a}s=r;s=dL(c[s>>2]|0,c[s+4>>2]|0,1020,0)|0;b=D;t=o;a=c[t+4>>2]|0;if(!((b|0)<(a|0)|((b|0)==(a|0)?s>>>0<=(c[t>>2]|0)>>>0:0))){break a}s=r;s=dL(c[s>>2]|0,c[s+4>>2]|0,1020,0)|0;t=r;c[t>>2]=s;c[t+4>>2]=D;c[k>>2]=c[c[k>>2]>>2]}}else{c[k>>2]=c[(c[j>>2]|0)+32>>2]}}while(0);t=o;t=mL(c[t>>2]|0,c[t+4>>2]|0,1020,0)|0;c[g>>2]=t;do{c[q>>2]=1020-(c[g>>2]|0);if((c[p>>2]|0)<(1020-(c[g>>2]|0)|0)){f=c[p>>2]|0}else{f=1020-(c[g>>2]|0)|0}c[m>>2]=f;fL(c[n>>2]|0,(c[k>>2]|0)+4+(c[g>>2]|0)|0,c[m>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+(c[m>>2]|0);c[p>>2]=(c[p>>2]|0)-(c[q>>2]|0);c[g>>2]=0;if((c[p>>2]|0)<0){break}t=c[c[k>>2]>>2]|0;c[k>>2]=t;if((t|0)==0){break}}while((c[p>>2]|0)>0);t=o;s=c[h>>2]|0;s=dL(c[t>>2]|0,c[t+4>>2]|0,s|0,((s|0)<0)<<31>>31|0)|0;t=(c[j>>2]|0)+24|0;c[t>>2]=s;c[t+4>>2]=D;c[(c[j>>2]|0)+32>>2]=c[k>>2];i=l;return 0}function fp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+64|0;h=g+48|0;s=g+44|0;q=g+40|0;r=g+36|0;o=g+32|0;n=g+28|0;p=g+20|0;j=g+12|0;m=g+8|0;l=g+16|0;k=g+24|0;c[s>>2]=a;c[q>>2]=b;c[r>>2]=d;a=g;c[a>>2]=e;c[a+4>>2]=f;c[o>>2]=c[s>>2];c[n>>2]=c[r>>2];c[p>>2]=c[q>>2];while(1){if((c[n>>2]|0)<=0){j=14;break}c[j>>2]=c[(c[o>>2]|0)+16>>2];s=(c[o>>2]|0)+8|0;s=mL(c[s>>2]|0,c[s+4>>2]|0,1020,0)|0;c[m>>2]=s;if((c[n>>2]|0)<(1020-(c[m>>2]|0)|0)){f=c[n>>2]|0}else{f=1020-(c[m>>2]|0)|0}c[l>>2]=f;if((c[m>>2]|0)==0){c[k>>2]=mc(1024)|0;if((c[k>>2]|0)==0){j=8;break}c[c[k>>2]>>2]=0;f=c[k>>2]|0;if((c[j>>2]|0)!=0){c[c[j>>2]>>2]=f}else{c[(c[o>>2]|0)+4>>2]=f}c[(c[o>>2]|0)+16>>2]=c[k>>2]}fL((c[(c[o>>2]|0)+16>>2]|0)+4+(c[m>>2]|0)|0,c[p>>2]|0,c[l>>2]|0)|0;c[p>>2]=(c[p>>2]|0)+(c[l>>2]|0);c[n>>2]=(c[n>>2]|0)-(c[l>>2]|0);r=c[l>>2]|0;s=(c[o>>2]|0)+8|0;q=s;r=dL(c[q>>2]|0,c[q+4>>2]|0,r|0,((r|0)<0)<<31>>31|0)|0;c[s>>2]=r;c[s+4>>2]=D}if((j|0)==8){c[h>>2]=3082;s=c[h>>2]|0;i=g;return s|0}else if((j|0)==14){c[h>>2]=0;s=c[h>>2]|0;i=g;return s|0}return 0}function gp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+32|0;e=f+20|0;j=f+8|0;g=f+12|0;h=f+16|0;c[e>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;c[j>>2]=c[e>>2];c[g>>2]=c[(c[j>>2]|0)+4>>2];while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[g>>2];c[g>>2]=c[c[g>>2]>>2];oc(c[h>>2]|0)}jp(c[e>>2]|0);i=f;return 0}function hp(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function ip(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=c[g>>2];e=(c[e>>2]|0)+8|0;b=c[e+4>>2]|0;a=c[f>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=b;i=d;return 0}function jp(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];a=c[d>>2]|0;aL(a|0,0,kp()|0)|0;c[c[d>>2]>>2]=10880;i=b;return}function kp(){return 40}function lp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;f=h+24|0;j=h;m=h+4|0;e=h+8|0;l=h+12|0;k=h+16|0;g=h+20|0;c[f>>2]=a;c[j>>2]=b;c[m>>2]=d;c[e>>2]=c[(c[f>>2]|0)+40>>2];if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=h;return a|0}if((c[m>>2]|0)>=(c[(c[f>>2]|0)+96>>2]|0)){a=c[e>>2]|0;i=h;return a|0}c[k>>2]=(c[m>>2]|0)+((c[j>>2]|0)==1?0:1);c[l>>2]=c[k>>2];while(1){if((c[l>>2]|0)>=(c[(c[f>>2]|0)+96>>2]|0)){break}wh(c[(c[(c[f>>2]|0)+92>>2]|0)+((c[l>>2]|0)*48|0)+16>>2]|0);c[l>>2]=(c[l>>2]|0)+1}c[(c[f>>2]|0)+96>>2]=c[k>>2];if((c[j>>2]|0)!=1){if((Uo(c[f>>2]|0)|0)==0){if((c[c[(c[f>>2]|0)+64>>2]>>2]|0)==0){a=c[e>>2]|0;i=h;return a|0}}if((c[k>>2]|0)==0){j=0}else{j=(c[(c[f>>2]|0)+92>>2]|0)+(((c[k>>2]|0)-1|0)*48|0)|0}c[g>>2]=j;c[e>>2]=Hp(c[f>>2]|0,c[g>>2]|0)|0;a=c[e>>2]|0;i=h;return a|0}if((c[k>>2]|0)!=0){a=c[e>>2]|0;i=h;return a|0}if((c[c[(c[f>>2]|0)+68>>2]>>2]|0)==0){a=c[e>>2]|0;i=h;return a|0}if((Po(c[(c[f>>2]|0)+68>>2]|0)|0)!=0){c[e>>2]=Qo(c[(c[f>>2]|0)+68>>2]|0,0,0)|0}c[(c[f>>2]|0)+52>>2]=0;a=c[e>>2]|0;i=h;return a|0}function mp(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=i;i=i+64|0;n=m+8|0;h=m+52|0;f=m+48|0;t=m+44|0;s=m;o=m+40|0;p=m+56|0;r=m+32|0;g=m+24|0;j=m+16|0;k=m+20|0;q=m+36|0;l=m+28|0;c[h>>2]=b;c[f>>2]=e;c[t>>2]=c[c[h>>2]>>2];c[r>>2]=0;c[j>>2]=1;c[k>>2]=0;c[l>>2]=0;c[g>>2]=dh(c[(c[h>>2]|0)+64>>2]|0,s)|0;a:do{if((c[g>>2]|0)==0){c[k>>2]=c[(c[h>>2]|0)+200>>2];c[g>>2]=np(c[(c[h>>2]|0)+64>>2]|0,c[k>>2]|0,(c[(c[c[h>>2]>>2]|0)+8>>2]|0)+1|0)|0;if((c[g>>2]|0)==0){if((a[c[k>>2]>>0]|0)!=0){c[g>>2]=op(c[t>>2]|0,c[k>>2]|0,0,j)|0}}c[k>>2]=0;if((c[g>>2]|0)==0){if((c[j>>2]|0)!=0){b=(c[h>>2]|0)+72|0;c[b>>2]=0;c[b+4>>2]=0;c[q>>2]=c[f>>2];b:while(1){b=s;c[g>>2]=pp(c[h>>2]|0,c[f>>2]|0,c[b>>2]|0,c[b+4>>2]|0,o,r)|0;if((c[g>>2]|0)!=0){o=9;break}if((c[o>>2]|0)==-1){t=s;t=$K(c[t>>2]|0,c[t+4>>2]|0,c[(c[h>>2]|0)+148>>2]|0,0)|0;b=(c[(c[h>>2]|0)+152>>2]|0)+8|0;b=lL(t|0,D|0,b|0,((b|0)<0)<<31>>31|0)|0;c[o>>2]=b}if((c[o>>2]|0)==0){if((c[f>>2]|0)==0){t=(c[h>>2]|0)+80|0;t=dL(c[t>>2]|0,c[t+4>>2]|0,c[(c[h>>2]|0)+148>>2]|0,0)|0;b=(c[h>>2]|0)+72|0;if((t|0)==(c[b>>2]|0)?(D|0)==(c[b+4>>2]|0):0){b=s;t=(c[h>>2]|0)+72|0;t=$K(c[b>>2]|0,c[b+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0)|0;b=(c[(c[h>>2]|0)+152>>2]|0)+8|0;b=lL(t|0,D|0,b|0,((b|0)<0)<<31>>31|0)|0;c[o>>2]=b}}}b=(c[h>>2]|0)+72|0;if((c[b+4>>2]|0)==0?(c[b>>2]|0)==(c[(c[h>>2]|0)+148>>2]|0):0){c[g>>2]=Wo(c[h>>2]|0,c[r>>2]|0)|0;if((c[g>>2]|0)!=0){break a}c[(c[h>>2]|0)+24>>2]=c[r>>2]}c[p>>2]=0;while(1){if(!((c[p>>2]|0)>>>0<(c[o>>2]|0)>>>0)){continue b}if((c[q>>2]|0)!=0){fh(c[h>>2]|0);c[q>>2]=0}c[g>>2]=qp(c[h>>2]|0,(c[h>>2]|0)+72|0,0,1,0)|0;if((c[g>>2]|0)!=0){break}c[l>>2]=(c[l>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+1}if((c[g>>2]|0)!=101){o=28;break}e=s;t=c[e+4>>2]|0;b=(c[h>>2]|0)+72|0;c[b>>2]=c[e>>2];c[b+4>>2]=t}if((o|0)==9){if((c[g>>2]|0)!=101){break}c[g>>2]=0;break}else if((o|0)==28){if((c[g>>2]|0)!=522){break}c[g>>2]=0;break}}}}}while(0);a[(c[h>>2]|0)+18>>0]=a[(c[h>>2]|0)+12>>0]|0;if((c[g>>2]|0)==0){c[k>>2]=c[(c[h>>2]|0)+200>>2];c[g>>2]=np(c[(c[h>>2]|0)+64>>2]|0,c[k>>2]|0,(c[(c[c[h>>2]>>2]|0)+8>>2]|0)+1|0)|0}do{if((c[g>>2]|0)==0){if((d[(c[h>>2]|0)+16>>0]|0)<4){if((d[(c[h>>2]|0)+16>>0]|0)!=0){break}}c[g>>2]=pd(c[h>>2]|0,0)|0}}while(0);if((c[g>>2]|0)==0){c[g>>2]=No(c[h>>2]|0,(a[c[k>>2]>>0]|0)!=0&1,0)|0}if((c[g>>2]|0)==0){if((a[c[k>>2]>>0]|0)!=0){if((c[j>>2]|0)!=0){c[g>>2]=rp(c[h>>2]|0,c[k>>2]|0)|0}}}if((c[f>>2]|0)==0){b=c[h>>2]|0;sp(b);b=c[g>>2]|0;i=m;return b|0}if((c[l>>2]|0)==0){b=c[h>>2]|0;sp(b);b=c[g>>2]|0;i=m;return b|0}b=c[(c[h>>2]|0)+172>>2]|0;c[n>>2]=c[l>>2];c[n+4>>2]=b;zc(539,10960,n);b=c[h>>2]|0;sp(b);b=c[g>>2]|0;i=m;return b|0}function np(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+48|0;f=n+20|0;g=n+36|0;h=n+32|0;q=n+28|0;l=n+24|0;j=n+16|0;k=n;p=n+8|0;m=n+12|0;o=n+40|0;c[g>>2]=b;c[h>>2]=d;c[q>>2]=e;a[c[h>>2]>>0]=0;e=dh(c[g>>2]|0,k)|0;c[l>>2]=e;b=k;d=c[b+4>>2]|0;if(!(0!=(e|0)|((d|0)<0|(d|0)==0&(c[b>>2]|0)>>>0<16))){d=c[g>>2]|0;b=k;b=$K(c[b>>2]|0,c[b+4>>2]|0,16,0)|0;b=yp(d,b,D,j)|0;c[l>>2]=b;if(0==(b|0)){if(!((c[j>>2]|0)==0?1:(c[j>>2]|0)>>>0>=(c[q>>2]|0)>>>0)){d=c[g>>2]|0;b=k;b=$K(c[b>>2]|0,c[b+4>>2]|0,12,0)|0;b=yp(d,b,D,p)|0;c[l>>2]=b;if(0==(b|0)){d=c[g>>2]|0;b=k;b=$K(c[b>>2]|0,c[b+4>>2]|0,8,0)|0;b=xp(d,o,8,b,D)|0;c[l>>2]=b;if(0==(b|0)){if((XK(o,10992,8)|0)==0){o=c[g>>2]|0;q=c[h>>2]|0;d=c[j>>2]|0;b=k;b=$K(c[b>>2]|0,c[b+4>>2]|0,16,0)|0;b=$K(b|0,D|0,c[j>>2]|0,0)|0;b=xp(o,q,d,b,D)|0;c[l>>2]=b;if(0==(b|0)){c[m>>2]=0;while(1){if(!((c[m>>2]|0)>>>0<(c[j>>2]|0)>>>0)){break}c[p>>2]=(c[p>>2]|0)-(a[(c[h>>2]|0)+(c[m>>2]|0)>>0]|0);c[m>>2]=(c[m>>2]|0)+1}if((c[p>>2]|0)!=0){c[j>>2]=0}a[(c[h>>2]|0)+(c[j>>2]|0)>>0]=0;c[f>>2]=0;b=c[f>>2]|0;i=n;return b|0}}}}}}}c[f>>2]=c[l>>2];b=c[f>>2]|0;i=n;return b|0}function op(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=xb[c[(c[k>>2]|0)+32>>2]&31](c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return a|0}function pp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;r=i;i=i+64|0;k=r+44|0;m=r+40|0;t=r+36|0;u=r+8|0;h=r+32|0;q=r+28|0;l=r+20|0;s=r+48|0;n=r;o=r+16|0;p=r+24|0;c[m>>2]=a;c[t>>2]=b;b=u;c[b>>2]=d;c[b+4>>2]=e;c[h>>2]=f;c[q>>2]=g;e=Gp(c[m>>2]|0)|0;b=(c[m>>2]|0)+72|0;c[b>>2]=e;c[b+4>>2]=D;b=(c[m>>2]|0)+72|0;b=dL(c[b>>2]|0,c[b+4>>2]|0,c[(c[m>>2]|0)+148>>2]|0,0)|0;e=D;a=u;d=c[a+4>>2]|0;if((e|0)>(d|0)|((e|0)==(d|0)?b>>>0>(c[a>>2]|0)>>>0:0)){c[k>>2]=101;u=c[k>>2]|0;i=r;return u|0}b=(c[m>>2]|0)+72|0;a=c[b+4>>2]|0;u=n;c[u>>2]=c[b>>2];c[u+4>>2]=a;if((c[t>>2]|0)!=0){j=5}else{a=n;u=(c[m>>2]|0)+80|0;if((c[a>>2]|0)!=(c[u>>2]|0)?1:(c[a+4>>2]|0)!=(c[u+4>>2]|0)){j=5}}if((j|0)==5){u=n;c[l>>2]=xp(c[(c[m>>2]|0)+64>>2]|0,s,8,c[u>>2]|0,c[u+4>>2]|0)|0;if((c[l>>2]|0)!=0){c[k>>2]=c[l>>2];u=c[k>>2]|0;i=r;return u|0}if((XK(s,10992,8)|0)!=0){c[k>>2]=101;u=c[k>>2]|0;i=r;return u|0}}a=c[(c[m>>2]|0)+64>>2]|0;u=n;u=dL(c[u>>2]|0,c[u+4>>2]|0,8,0)|0;u=yp(a,u,D,c[h>>2]|0)|0;c[l>>2]=u;if(0==(u|0)){a=c[(c[m>>2]|0)+64>>2]|0;u=n;u=dL(c[u>>2]|0,c[u+4>>2]|0,12,0)|0;u=yp(a,u,D,(c[m>>2]|0)+48|0)|0;c[l>>2]=u;if(0==(u|0)){a=c[(c[m>>2]|0)+64>>2]|0;u=n;u=dL(c[u>>2]|0,c[u+4>>2]|0,16,0)|0;u=yp(a,u,D,c[q>>2]|0)|0;c[l>>2]=u;if(0==(u|0)){u=(c[m>>2]|0)+72|0;do{if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){a=c[(c[m>>2]|0)+64>>2]|0;u=n;u=dL(c[u>>2]|0,c[u+4>>2]|0,20,0)|0;u=yp(a,u,D,p)|0;c[l>>2]=u;if(0==(u|0)){a=c[(c[m>>2]|0)+64>>2]|0;u=n;u=dL(c[u>>2]|0,c[u+4>>2]|0,24,0)|0;u=yp(a,u,D,o)|0;c[l>>2]=u;if(0==(u|0)){if((c[o>>2]|0)==0){c[o>>2]=c[(c[m>>2]|0)+152>>2]}if(!((c[o>>2]|0)>>>0<512)){if(!((c[p>>2]|0)>>>0<32)){if(!((c[o>>2]|0)>>>0>65536)){if(!((c[p>>2]|0)>>>0>65536)){if(((c[o>>2]|0)-1&c[o>>2]|0)==0){if(((c[p>>2]|0)-1&c[p>>2]|0)==0){c[l>>2]=bh(c[m>>2]|0,o,-1)|0;c[(c[m>>2]|0)+148>>2]=c[p>>2];break}}}}}}c[k>>2]=101;u=c[k>>2]|0;i=r;return u|0}}c[k>>2]=c[l>>2];u=c[k>>2]|0;i=r;return u|0}}while(0);u=(c[m>>2]|0)+72|0;a=u;a=dL(c[a>>2]|0,c[a+4>>2]|0,c[(c[m>>2]|0)+148>>2]|0,0)|0;c[u>>2]=a;c[u+4>>2]=D;c[k>>2]=c[l>>2];u=c[k>>2]|0;i=r;return u|0}}}c[k>>2]=c[l>>2];u=c[k>>2]|0;i=r;return u|0}function qp(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;m=i;i=i+64|0;l=m+60|0;y=m+56|0;w=m+52|0;A=m+48|0;s=m+44|0;q=m+40|0;o=m+36|0;n=m+32|0;t=m+24|0;z=m+20|0;u=m+16|0;B=m+12|0;v=m+8|0;x=m;p=m+28|0;c[y>>2]=f;c[w>>2]=g;c[A>>2]=h;c[s>>2]=j;c[q>>2]=k;c[u>>2]=c[(c[y>>2]|0)+200>>2];f=c[y>>2]|0;if((c[s>>2]|0)!=0){f=c[f+64>>2]|0}else{f=c[f+68>>2]|0}c[B>>2]=f;g=c[w>>2]|0;c[o>>2]=yp(c[B>>2]|0,c[g>>2]|0,c[g+4>>2]|0,t)|0;if((c[o>>2]|0)!=0){c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}k=c[B>>2]|0;j=c[u>>2]|0;h=c[(c[y>>2]|0)+152>>2]|0;g=c[w>>2]|0;g=dL(c[g>>2]|0,c[g+4>>2]|0,4,0)|0;c[o>>2]=xp(k,j,h,g,D)|0;if((c[o>>2]|0)!=0){c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}h=(c[(c[y>>2]|0)+152>>2]|0)+4+(c[s>>2]<<2)|0;g=c[w>>2]|0;j=g;h=dL(c[j>>2]|0,c[j+4>>2]|0,h|0,((h|0)<0)<<31>>31|0)|0;c[g>>2]=h;c[g+4>>2]=D;if((c[t>>2]|0)!=0){if((c[t>>2]|0)!=(((c[368]|0)/(c[(c[y>>2]|0)+152>>2]|0)|0)+1|0)){if(!((c[t>>2]|0)>>>0>(c[(c[y>>2]|0)+24>>2]|0)>>>0)){if((uh(c[A>>2]|0,c[t>>2]|0)|0)==0){if((c[s>>2]|0)!=0){h=c[B>>2]|0;g=c[w>>2]|0;g=$K(c[g>>2]|0,c[g+4>>2]|0,4,0)|0;c[o>>2]=yp(h,g,D,z)|0;if((c[o>>2]|0)!=0){c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}if((c[q>>2]|0)==0){g=zp(c[y>>2]|0,c[u>>2]|0)|0;if((g|0)!=(c[z>>2]|0)){c[l>>2]=101;g=c[l>>2]|0;i=m;return g|0}}}if((c[A>>2]|0)!=0){g=sh(c[A>>2]|0,c[t>>2]|0)|0;c[o>>2]=g;if((g|0)!=0){c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}}if((c[t>>2]|0)==1){if((b[(c[y>>2]|0)+142>>1]|0)!=(d[(c[u>>2]|0)+20>>0]|0)){b[(c[y>>2]|0)+142>>1]=d[(c[u>>2]|0)+20>>0]|0}}if((Uo(c[y>>2]|0)|0)!=0){c[n>>2]=0}else{c[n>>2]=Ap(c[y>>2]|0,c[t>>2]|0)|0}if((c[s>>2]|0)!=0){if((d[(c[y>>2]|0)+7>>0]|0)!=0){z=1}else{g=c[w>>2]|0;j=c[g+4>>2]|0;z=(c[y>>2]|0)+80|0;h=c[z+4>>2]|0;z=(j|0)<(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0<=(c[z>>2]|0)>>>0:0)}c[v>>2]=z&1}else{if((c[n>>2]|0)==0){z=1}else{z=0==(b[(c[n>>2]|0)+24>>1]&4|0)}c[v>>2]=z&1}do{if((c[c[(c[y>>2]|0)+60>>2]>>2]|0)!=0){if((d[(c[y>>2]|0)+16>>0]|0)<4){if((d[(c[y>>2]|0)+16>>0]|0)!=0){r=44;break}}if((c[v>>2]|0)!=0){h=c[(c[y>>2]|0)+152>>2]|0;h=nL((c[t>>2]|0)-1|0,0,h|0,((h|0)<0)<<31>>31|0)|0;g=x;c[g>>2]=h;c[g+4>>2]=D;g=x;c[o>>2]=nd(c[(c[y>>2]|0)+60>>2]|0,c[u>>2]|0,c[(c[y>>2]|0)+152>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;if((c[t>>2]|0)>>>0>(c[(c[y>>2]|0)+32>>2]|0)>>>0){c[(c[y>>2]|0)+32>>2]=c[t>>2]}if((c[(c[y>>2]|0)+88>>2]|0)!=0){Bp(c[(c[y>>2]|0)+88>>2]|0,c[t>>2]|0,c[u>>2]|0);c[u>>2]=c[u>>2]}}else{r=44}}else{r=44}}while(0);do{if((r|0)==44){if((c[s>>2]|0)==0){if((c[n>>2]|0)==0){g=(c[y>>2]|0)+20|0;a[g>>0]=d[g>>0]|2;c[o>>2]=ad(c[y>>2]|0,c[t>>2]|0,n,1)|0;g=(c[y>>2]|0)+20|0;a[g>>0]=d[g>>0]&-3;if((c[o>>2]|0)==0){g=(c[n>>2]|0)+24|0;b[g>>1]=e[g>>1]&-9;Cp(c[n>>2]|0);break}c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}}}}while(0);if((c[n>>2]|0)!=0){c[p>>2]=c[(c[n>>2]|0)+4>>2];fL(c[p>>2]|0,c[u>>2]|0,c[(c[y>>2]|0)+152>>2]|0)|0;rb[c[(c[y>>2]|0)+196>>2]&31](c[n>>2]|0);do{if((c[s>>2]|0)!=0){if((c[q>>2]|0)!=0){h=c[w>>2]|0;k=c[h+4>>2]|0;g=(c[y>>2]|0)+80|0;j=c[g+4>>2]|0;if(!((k|0)<(j|0)|((k|0)==(j|0)?(c[h>>2]|0)>>>0<=(c[g>>2]|0)>>>0:0))){break}}nh(c[n>>2]|0)}}while(0);if((c[t>>2]|0)==1){q=(c[y>>2]|0)+100|0;r=(c[p>>2]|0)+24|0;p=q+16|0;do{a[q>>0]=a[r>>0]|0;q=q+1|0;r=r+1|0}while((q|0)<(p|0))}Dp(c[n>>2]|0)}c[l>>2]=c[o>>2];g=c[l>>2]|0;i=m;return g|0}}c[l>>2]=0;g=c[l>>2]|0;i=m;return g|0}}c[l>>2]=101;g=c[l>>2]|0;i=m;return g|0}function rp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=i;i=i+64|0;t=s+60|0;j=s+56|0;h=s+52|0;g=s+48|0;m=s+44|0;f=s+40|0;e=s+36|0;r=s;p=s+24|0;l=s+20|0;n=s+16|0;q=s+8|0;k=s+28|0;o=s+32|0;c[t>>2]=b;c[j>>2]=d;c[h>>2]=c[c[t>>2]>>2];c[e>>2]=0;c[m>>2]=Sc(c[(c[h>>2]|0)+4>>2]<<1)|0;c[f>>2]=(c[m>>2]|0)+(c[(c[h>>2]|0)+4>>2]|0);if((c[m>>2]|0)!=0){c[s+12>>2]=16385;c[g>>2]=wp(c[h>>2]|0,c[j>>2]|0,c[m>>2]|0,16385,0)|0}else{c[g>>2]=7}a:do{if((c[g>>2]|0)==0){c[g>>2]=dh(c[m>>2]|0,r)|0;if((c[g>>2]|0)==0){c[n>>2]=(c[(c[h>>2]|0)+8>>2]|0)+1;c[e>>2]=nc((c[r>>2]|0)+(c[n>>2]|0)+1|0)|0;if((c[e>>2]|0)==0){c[g>>2]=7;break}t=r;t=dL(c[t>>2]|0,c[t+4>>2]|0,1,0)|0;c[l>>2]=(c[e>>2]|0)+t;c[g>>2]=xp(c[m>>2]|0,c[e>>2]|0,c[r>>2]|0,0,0)|0;if((c[g>>2]|0)==0){a[(c[e>>2]|0)+(c[r>>2]|0)>>0]=0;c[p>>2]=c[e>>2];while(1){b=(c[p>>2]|0)-(c[e>>2]|0)|0;u=((b|0)<0)<<31>>31;t=r;d=c[t+4>>2]|0;if(!((u|0)<(d|0)|((u|0)==(d|0)?b>>>0<(c[t>>2]|0)>>>0:0))){break}c[g>>2]=op(c[h>>2]|0,c[p>>2]|0,0,q)|0;if((c[g>>2]|0)!=0){break a}if((c[q>>2]|0)!=0){c[o>>2]=2049;c[g>>2]=wp(c[h>>2]|0,c[p>>2]|0,c[f>>2]|0,c[o>>2]|0,0)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=np(c[f>>2]|0,c[l>>2]|0,c[n>>2]|0)|0;Ko(c[f>>2]|0)|0;if((c[g>>2]|0)!=0){break a}if((a[c[l>>2]>>0]|0)!=0){d=(YK(c[l>>2]|0,c[j>>2]|0)|0)==0}else{d=0}c[k>>2]=d&1;if((c[k>>2]|0)!=0){break a}}u=(Ub(c[p>>2]|0)|0)+1|0;c[p>>2]=(c[p>>2]|0)+u}Ko(c[m>>2]|0)|0;c[g>>2]=So(c[h>>2]|0,c[j>>2]|0,0)|0}}}}while(0);oc(c[e>>2]|0);if((c[m>>2]|0)==0){u=c[g>>2]|0;i=s;return u|0}Ko(c[m>>2]|0)|0;oc(c[m>>2]|0);u=c[g>>2]|0;i=s;return u|0}function sp(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;if((d[(c[e>>2]|0)+12>>0]|0|0)==0){if(((tp(c[(c[e>>2]|0)+60>>2]|0)|0)&4096|0)==0){a=up(c[(c[e>>2]|0)+60>>2]|0)|0;c[(c[e>>2]|0)+148>>2]=a;i=b;return}}c[(c[e>>2]|0)+148>>2]=512;i=b;return}function tp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=ub[c[(c[c[d>>2]>>2]|0)+48>>2]&63](c[d>>2]|0)|0;i=b;return a|0}function up(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=vp(c[e>>2]|0)|0;if((c[b>>2]|0)<32){c[b>>2]=512}else{if((c[b>>2]|0)>65536){c[b>>2]=65536}}i=d;return c[b>>2]|0}function vp(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[(c[c[e>>2]>>2]|0)+44>>2];if((c[d>>2]|0)==0){e=4096;i=b;return e|0}e=ub[c[d>>2]&63](c[e>>2]|0)|0;i=b;return e|0}function wp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;n=h+20|0;m=h;l=h+4|0;k=h+8|0;j=h+12|0;g=h+16|0;c[n>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;c[g>>2]=Ab[c[(c[n>>2]|0)+24>>2]&15](c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,c[k>>2]&556927,c[j>>2]|0)|0;i=h;return c[g>>2]|0}function xp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;k=g+16|0;j=g+12|0;h=g+8|0;l=g;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;a=l;c[a>>2]=e;c[a+4>>2]=f;a=l;a=Ab[c[(c[c[k>>2]>>2]|0)+8>>2]&15](c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;i=g;return a|0}function yp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;k=f+16|0;l=f;j=f+8|0;h=f+20|0;g=f+12|0;c[k>>2]=a;a=l;c[a>>2]=b;c[a+4>>2]=d;c[j>>2]=e;a=l;c[g>>2]=xp(c[k>>2]|0,h,4,c[a>>2]|0,c[a+4>>2]|0)|0;if((c[g>>2]|0)!=0){l=c[g>>2]|0;i=f;return l|0}l=zo(h)|0;c[c[j>>2]>>2]=l;l=c[g>>2]|0;i=f;return l|0}function zp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;h=e;f=e+4|0;g=e+8|0;c[j>>2]=a;c[h>>2]=b;c[f>>2]=c[(c[j>>2]|0)+48>>2];c[g>>2]=(c[(c[j>>2]|0)+152>>2]|0)-200;while(1){if((c[g>>2]|0)<=0){break}c[f>>2]=(c[f>>2]|0)+(d[(c[h>>2]|0)+(c[g>>2]|0)>>0]|0);c[g>>2]=(c[g>>2]|0)-200}i=e;return c[f>>2]|0}function Ap(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;d=e+4|0;c[g>>2]=a;c[f>>2]=b;c[d>>2]=0;Fp(c[(c[g>>2]|0)+204>>2]|0,c[f>>2]|0,0,d)|0;i=e;return c[d>>2]|0}function Bp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;g=e;h=e+4|0;f=e+8|0;j=e+12|0;c[k>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f>>2]=c[k>>2];while(1){if((c[f>>2]|0)==0){break}if((Vc(c[(c[f>>2]|0)+28>>2]|0)|0)==0){if((c[g>>2]|0)>>>0<(c[(c[f>>2]|0)+16>>2]|0)>>>0){c[j>>2]=bd(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,1)|0;if((c[j>>2]|0)!=0){c[(c[f>>2]|0)+28>>2]=c[j>>2]}}}c[f>>2]=c[(c[f>>2]|0)+44>>2]}i=e;return}function Cp(a){a=a|0;var d=0,f=0;d=i;i=i+16|0;f=d;c[f>>2]=a;a=(c[f>>2]|0)+24|0;b[a>>1]=(e[a>>1]|0)&-33;if(0!=(b[(c[f>>2]|0)+24>>1]&2|0)){i=d;return}a=(c[f>>2]|0)+24|0;b[a>>1]=e[a>>1]|0|2;Ep(c[f>>2]|0);i=d;return}function Dp(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;a=(c[e>>2]|0)+26|0;b[a>>1]=(b[a>>1]|0)+ -1<<16>>16;if((b[(c[e>>2]|0)+26>>1]|0)!=0){i=d;return}c[f>>2]=c[(c[e>>2]|0)+28>>2];a=(c[f>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+ -1;a=c[e>>2]|0;if((b[(c[e>>2]|0)+24>>1]&2|0)==0){ph(a);i=d;return}else{oh(a);Ep(c[e>>2]|0);i=d;return}}function Ep(d){d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=d;c[f>>2]=c[(c[g>>2]|0)+28>>2];c[(c[g>>2]|0)+32>>2]=c[c[f>>2]>>2];if((c[(c[g>>2]|0)+32>>2]|0)!=0){c[(c[(c[g>>2]|0)+32>>2]|0)+36>>2]=c[g>>2]}else{if((a[(c[f>>2]|0)+28>>0]|0)!=0){a[(c[f>>2]|0)+29>>0]=1}}c[c[f>>2]>>2]=c[g>>2];if((c[(c[f>>2]|0)+4>>2]|0)==0){c[(c[f>>2]|0)+4>>2]=c[g>>2]}if((c[(c[f>>2]|0)+8>>2]|0)!=0){i=e;return}if(0!=(b[(c[g>>2]|0)+24>>1]&4|0)){i=e;return}c[(c[f>>2]|0)+8>>2]=c[g>>2];i=e;return}function Fp(a,e,f,g){a=a|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+48|0;h=j+40|0;m=j+36|0;o=j+32|0;s=j+28|0;l=j+24|0;n=j+20|0;p=j+12|0;k=j+8|0;t=j+4|0;r=j;q=j+16|0;c[m>>2]=a;c[o>>2]=e;c[s>>2]=f;c[l>>2]=g;c[p>>2]=0;do{if((c[(c[m>>2]|0)+40>>2]|0)==0){if((c[s>>2]|0)==0){c[c[l>>2]>>2]=0;c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}c[t>>2]=pb[c[45256>>2]&31](c[(c[m>>2]|0)+20>>2]|0,(c[(c[m>>2]|0)+24>>2]|0)+40|0,d[(c[m>>2]|0)+28>>0]|0)|0;if((c[t>>2]|0)!=0){f=c[45260>>2]|0;e=c[t>>2]|0;a=Do(c[m>>2]|0)|0;sb[f&7](e,a);c[(c[m>>2]|0)+40>>2]=c[t>>2];break}c[h>>2]=7;a=c[h>>2]|0;i=j;return a|0}}while(0);if((c[s>>2]|0)==0){g=0}else{g=d[(c[m>>2]|0)+29>>0]|0}c[k>>2]=g;c[n>>2]=pb[c[45268>>2]&31](c[(c[m>>2]|0)+40>>2]|0,c[o>>2]|0,c[k>>2]|0)|0;if((c[n>>2]|0)==0){if((c[k>>2]|0)==1){c[r>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[r>>2]|0)==0){break}if((b[(c[r>>2]|0)+26>>1]|0)==0){if((b[(c[r>>2]|0)+24>>1]&4|0)==0){break}}c[r>>2]=c[(c[r>>2]|0)+36>>2]}c[(c[m>>2]|0)+8>>2]=c[r>>2];a:do{if((c[r>>2]|0)==0){c[r>>2]=c[(c[m>>2]|0)+4>>2];while(1){if((c[r>>2]|0)==0){break a}if((b[(c[r>>2]|0)+26>>1]|0)==0){break a}c[r>>2]=c[(c[r>>2]|0)+36>>2]}}}while(0);if((c[r>>2]|0)!=0){c[q>>2]=zb[c[(c[m>>2]|0)+32>>2]&127](c[(c[m>>2]|0)+36>>2]|0,c[r>>2]|0)|0;if((c[q>>2]|0)!=0&(c[q>>2]|0)!=5){c[h>>2]=c[q>>2];a=c[h>>2]|0;i=j;return a|0}}c[n>>2]=pb[c[45268>>2]&31](c[(c[m>>2]|0)+40>>2]|0,c[o>>2]|0,2)|0}}if((c[n>>2]|0)!=0){c[p>>2]=c[(c[n>>2]|0)+4>>2];if((c[c[p>>2]>>2]|0)==0){r=(c[p>>2]|0)+0|0;q=r+40|0;do{c[r>>2]=0;r=r+4|0}while((r|0)<(q|0));c[c[p>>2]>>2]=c[n>>2];c[(c[p>>2]|0)+4>>2]=c[c[n>>2]>>2];c[(c[p>>2]|0)+8>>2]=(c[p>>2]|0)+40;aL(c[(c[p>>2]|0)+8>>2]|0,0,c[(c[m>>2]|0)+24>>2]|0)|0;c[(c[p>>2]|0)+28>>2]=c[m>>2];c[(c[p>>2]|0)+20>>2]=c[o>>2]}if(0==(b[(c[p>>2]|0)+26>>1]|0)){a=(c[m>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+1}a=(c[p>>2]|0)+26|0;b[a>>1]=(b[a>>1]|0)+1<<16>>16;if((c[o>>2]|0)==1){c[(c[m>>2]|0)+44>>2]=c[p>>2]}}c[c[l>>2]>>2]=c[p>>2];if((c[p>>2]|0)==0){k=(c[k>>2]|0)!=0}else{k=0}c[h>>2]=k?7:0;a=c[h>>2]|0;i=j;return a|0}function Gp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;f=b+16|0;d=b;e=b+8|0;c[f>>2]=a;h=d;c[h>>2]=0;c[h+4>>2]=0;h=(c[f>>2]|0)+72|0;g=c[h+4>>2]|0;a=e;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=e;if(!((c[a>>2]|0)!=0|(c[a+4>>2]|0)!=0)){g=d;h=g;h=c[h>>2]|0;g=g+4|0;g=c[g>>2]|0;D=g;i=b;return h|0}h=e;h=$K(c[h>>2]|0,c[h+4>>2]|0,1,0)|0;h=lL(h|0,D|0,c[(c[f>>2]|0)+148>>2]|0,0)|0;h=dL(h|0,D|0,1,0)|0;h=nL(h|0,D|0,c[(c[f>>2]|0)+148>>2]|0,0)|0;g=d;c[g>>2]=h;c[g+4>>2]=D;g=d;h=g;h=c[h>>2]|0;g=g+4|0;g=c[g>>2]|0;D=g;i=b;return h|0}function Hp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=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;o=i;i=i+64|0;g=o+56|0;h=o+52|0;j=o+48|0;n=o+8|0;r=o;p=o+44|0;q=o+32|0;l=o+36|0;m=o+28|0;e=o+24|0;s=o+40|0;k=o+16|0;c[h>>2]=b;c[j>>2]=d;c[p>>2]=0;c[q>>2]=0;if((c[j>>2]|0)!=0){c[q>>2]=rh(c[(c[j>>2]|0)+20>>2]|0)|0;if((c[q>>2]|0)==0){c[g>>2]=7;b=c[g>>2]|0;i=o;return b|0}}if((c[j>>2]|0)!=0){d=c[(c[j>>2]|0)+20>>2]|0}else{d=c[(c[h>>2]|0)+28>>2]|0}c[(c[h>>2]|0)+24>>2]=d;a[(c[h>>2]|0)+18>>0]=a[(c[h>>2]|0)+12>>0]|0;if((c[j>>2]|0)==0){if((Uo(c[h>>2]|0)|0)!=0){c[g>>2]=Ip(c[h>>2]|0)|0;b=c[g>>2]|0;i=o;return b|0}}t=(c[h>>2]|0)+72|0;d=c[t+4>>2]|0;b=n;c[b>>2]=c[t>>2];c[b+4>>2]=d;a:do{if((c[j>>2]|0)!=0){if((Uo(c[h>>2]|0)|0)!=0){f=19}else{t=(c[j>>2]|0)+8|0;if((c[t>>2]|0)!=0|(c[t+4>>2]|0)!=0){d=(c[j>>2]|0)+8|0;b=c[d>>2]|0;d=c[d+4>>2]|0}else{d=n;b=c[d>>2]|0;d=c[d+4>>2]|0}t=r;c[t>>2]=b;c[t+4>>2]=d;d=c[j>>2]|0;b=c[d+4>>2]|0;t=(c[h>>2]|0)+72|0;c[t>>2]=c[d>>2];c[t+4>>2]=b;while(1){if((c[p>>2]|0)!=0){break a}b=(c[h>>2]|0)+72|0;u=c[b+4>>2]|0;t=r;d=c[t+4>>2]|0;if(!((u|0)<(d|0)|((u|0)==(d|0)?(c[b>>2]|0)>>>0<(c[t>>2]|0)>>>0:0))){break a}c[p>>2]=qp(c[h>>2]|0,(c[h>>2]|0)+72|0,c[q>>2]|0,1,1)|0}}}else{f=19}}while(0);if((f|0)==19){u=(c[h>>2]|0)+72|0;c[u>>2]=0;c[u+4>>2]=0}b:while(1){if((c[p>>2]|0)!=0){break}t=(c[h>>2]|0)+72|0;d=c[t+4>>2]|0;u=n;b=c[u+4>>2]|0;if(!((d|0)<(b|0)|((d|0)==(b|0)?(c[t>>2]|0)>>>0<(c[u>>2]|0)>>>0:0))){break}c[m>>2]=0;u=n;c[p>>2]=pp(c[h>>2]|0,0,c[u>>2]|0,c[u+4>>2]|0,m,e)|0;if((c[m>>2]|0)==0){t=(c[h>>2]|0)+80|0;t=dL(c[t>>2]|0,c[t+4>>2]|0,c[(c[h>>2]|0)+148>>2]|0,0)|0;u=(c[h>>2]|0)+72|0;if((t|0)==(c[u>>2]|0)?(D|0)==(c[u+4>>2]|0):0){u=n;t=(c[h>>2]|0)+72|0;t=$K(c[u>>2]|0,c[u+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0)|0;u=(c[(c[h>>2]|0)+152>>2]|0)+8|0;u=lL(t|0,D|0,u|0,((u|0)<0)<<31>>31|0)|0;c[m>>2]=u}}c[l>>2]=0;while(1){if((c[p>>2]|0)!=0){continue b}if(!((c[l>>2]|0)>>>0<(c[m>>2]|0)>>>0)){continue b}t=(c[h>>2]|0)+72|0;d=c[t+4>>2]|0;u=n;b=c[u+4>>2]|0;if(!((d|0)<(b|0)|((d|0)==(b|0)?(c[t>>2]|0)>>>0<(c[u>>2]|0)>>>0:0))){continue b}c[p>>2]=qp(c[h>>2]|0,(c[h>>2]|0)+72|0,c[q>>2]|0,1,1)|0;c[l>>2]=(c[l>>2]|0)+1}}c:do{if((c[j>>2]|0)!=0){t=4+(c[(c[h>>2]|0)+152>>2]|0)|0;t=nL(c[(c[j>>2]|0)+24>>2]|0,0,t|0,((t|0)<0)<<31>>31|0)|0;u=k;c[u>>2]=t;c[u+4>>2]=D;if((Uo(c[h>>2]|0)|0)!=0){c[p>>2]=Jp(c[(c[h>>2]|0)+208>>2]|0,(c[j>>2]|0)+28|0)|0}c[s>>2]=c[(c[j>>2]|0)+24>>2];while(1){if((c[p>>2]|0)!=0){break c}if(!((c[s>>2]|0)>>>0<(c[(c[h>>2]|0)+52>>2]|0)>>>0)){break c}c[p>>2]=qp(c[h>>2]|0,k,c[q>>2]|0,0,1)|0;c[s>>2]=(c[s>>2]|0)+1}}}while(0);wh(c[q>>2]|0);if((c[p>>2]|0)==0){b=n;t=c[b+4>>2]|0;u=(c[h>>2]|0)+72|0;c[u>>2]=c[b>>2];c[u+4>>2]=t}c[g>>2]=c[p>>2];u=c[g>>2]|0;i=o;return u|0}function Ip(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;g=b+12|0;d=b;e=b+4|0;f=b+8|0;c[g>>2]=a;c[(c[g>>2]|0)+24>>2]=c[(c[g>>2]|0)+28>>2];c[d>>2]=Pp(c[(c[g>>2]|0)+208>>2]|0,54,c[g>>2]|0)|0;c[e>>2]=Rp(c[(c[g>>2]|0)+204>>2]|0)|0;while(1){if((c[e>>2]|0)==0){a=5;break}if((c[d>>2]|0)!=0){a=5;break}c[f>>2]=c[(c[e>>2]|0)+12>>2];c[d>>2]=Qp(c[g>>2]|0,c[(c[e>>2]|0)+20>>2]|0)|0;c[e>>2]=c[f>>2]}if((a|0)==5){i=b;return c[d>>2]|0}return 0}function Jp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;d=e+4|0;c[g>>2]=a;c[f>>2]=b;c[d>>2]=0;if((c[(c[f>>2]|0)+12>>2]|0)!=(c[(c[g>>2]|0)+104>>2]|0)){c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+12>>2]=c[(c[g>>2]|0)+104>>2]}if(!((c[c[f>>2]>>2]|0)>>>0<(c[(c[g>>2]|0)+68>>2]|0)>>>0)){a=c[d>>2]|0;i=e;return a|0}c[(c[g>>2]|0)+68>>2]=c[c[f>>2]>>2];c[(c[g>>2]|0)+76>>2]=c[(c[f>>2]|0)+4>>2];c[(c[g>>2]|0)+80>>2]=c[(c[f>>2]|0)+8>>2];Kp(c[g>>2]|0);a=c[d>>2]|0;i=e;return a|0}function Kp(a){a=a|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;l=d+24|0;f=d;g=d+4|0;m=d+8|0;h=d+12|0;j=d+16|0;k=d+20|0;c[l>>2]=a;c[f>>2]=0;c[g>>2]=0;c[m>>2]=0;c[h>>2]=0;if((c[(c[l>>2]|0)+68>>2]|0)==0){i=d;return}a=c[l>>2]|0;Lp(a,Mp(c[(c[l>>2]|0)+68>>2]|0)|0,f,g,m)|0;c[h>>2]=(c[(c[l>>2]|0)+68>>2]|0)-(c[m>>2]|0);c[k>>2]=0;while(1){if((c[k>>2]|0)>=8192){break}if((e[(c[f>>2]|0)+(c[k>>2]<<1)>>1]|0|0)>(c[h>>2]|0)){b[(c[f>>2]|0)+(c[k>>2]<<1)>>1]=0}c[k>>2]=(c[k>>2]|0)+1}c[j>>2]=(c[f>>2]|0)-((c[g>>2]|0)+((c[h>>2]|0)+1<<2));aL((c[g>>2]|0)+((c[h>>2]|0)+1<<2)|0,0,c[j>>2]|0)|0;i=d;return}function Lp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+48|0;q=n+32|0;p=n+28|0;m=n+24|0;k=n+20|0;o=n+16|0;h=n+8|0;j=n+4|0;g=n;l=n+12|0;c[q>>2]=a;c[p>>2]=b;c[m>>2]=d;c[k>>2]=e;c[o>>2]=f;c[h>>2]=Np(c[q>>2]|0,c[p>>2]|0,j)|0;if((c[h>>2]|0)!=0){q=c[h>>2]|0;i=n;return q|0}c[l>>2]=(c[j>>2]|0)+16384;if((c[p>>2]|0)==0){c[j>>2]=(c[j>>2]|0)+136;c[g>>2]=0}else{c[g>>2]=4062+((c[p>>2]|0)-1<<12)}c[c[k>>2]>>2]=(c[j>>2]|0)+ -4;c[c[m>>2]>>2]=c[l>>2];c[c[o>>2]>>2]=c[g>>2];q=c[h>>2]|0;i=n;return q|0}function Mp(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=(((c[e>>2]|0)+4096-4062-1|0)>>>0)/4096|0;i=d;return c[b>>2]|0}function Np(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;g=m+24|0;l=m;h=m+4|0;j=m+8|0;k=m+12|0;o=m+16|0;n=m+20|0;c[l>>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;do{if((c[(c[l>>2]|0)+24>>2]|0)<=(c[h>>2]|0)){c[o>>2]=(c[h>>2]|0)+1<<2;c[n>>2]=qc(c[(c[l>>2]|0)+32>>2]|0,c[o>>2]|0)|0;if((c[n>>2]|0)!=0){aL((c[n>>2]|0)+(c[(c[l>>2]|0)+24>>2]<<2)|0,0,(c[h>>2]|0)+1-(c[(c[l>>2]|0)+24>>2]|0)<<2|0)|0;c[(c[l>>2]|0)+32>>2]=c[n>>2];c[(c[l>>2]|0)+24>>2]=(c[h>>2]|0)+1;break}c[c[j>>2]>>2]=0;c[g>>2]=7;b=c[g>>2]|0;i=m;return b|0}}while(0);do{if((c[(c[(c[l>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2]|0)==0){if((d[(c[l>>2]|0)+43>>0]|0|0)==2){b=Sc(32768)|0;c[(c[(c[l>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2]=b;if((c[(c[(c[l>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2]|0)!=0){break}c[k>>2]=7;break}else{c[k>>2]=Op(c[(c[l>>2]|0)+4>>2]|0,c[h>>2]|0,32768,d[(c[l>>2]|0)+44>>0]|0,(c[(c[l>>2]|0)+32>>2]|0)+(c[h>>2]<<2)|0)|0;if((c[k>>2]|0)!=8){break}b=(c[l>>2]|0)+46|0;a[b>>0]=d[b>>0]|0|2;c[k>>2]=0;break}}}while(0);c[c[j>>2]>>2]=c[(c[(c[l>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2];c[g>>2]=c[k>>2];b=c[g>>2]|0;i=m;return b|0}function Op(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+16|0;l=g;k=g+4|0;j=g+8|0;h=g+12|0;c[m>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;a=Ab[c[(c[c[m>>2]>>2]|0)+52>>2]&15](c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return a|0}function Pp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;h=l+20|0;f=l;m=l+4|0;g=l+8|0;k=l+12|0;j=l+16|0;c[h>>2]=b;c[f>>2]=d;c[m>>2]=e;c[g>>2]=0;if((a[(c[h>>2]|0)+44>>0]|0)==0){b=c[g>>2]|0;i=l;return b|0}c[k>>2]=c[(c[h>>2]|0)+68>>2];b=(c[h>>2]|0)+52|0;b=b+0|0;d=(fq(c[h>>2]|0)|0)+0|0;e=b+48|0;do{a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}while((b|0)<(e|0));c[j>>2]=(c[(c[h>>2]|0)+68>>2]|0)+1;while(1){if((c[g>>2]|0)!=0){break}if(!((c[j>>2]|0)>>>0<=(c[k>>2]|0)>>>0)){break}e=c[f>>2]|0;d=c[m>>2]|0;b=gq(c[h>>2]|0,c[j>>2]|0)|0;c[g>>2]=zb[e&127](d,b)|0;c[j>>2]=(c[j>>2]|0)+1}if((c[k>>2]|0)==(c[(c[h>>2]|0)+68>>2]|0)){b=c[g>>2]|0;i=l;return b|0}Kp(c[h>>2]|0);b=c[g>>2]|0;i=l;return b|0}function Qp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+20|0;j=e;d=e+4|0;f=e+8|0;g=e+12|0;h=e+16|0;c[k>>2]=a;c[j>>2]=b;c[d>>2]=0;c[f>>2]=c[k>>2];c[g>>2]=Up(c[f>>2]|0,c[j>>2]|0)|0;do{if((c[g>>2]|0)!=0){if((Vp(c[g>>2]|0)|0)==1){Wp(c[g>>2]|0);break}c[h>>2]=0;c[d>>2]=Xp(c[(c[f>>2]|0)+208>>2]|0,c[(c[g>>2]|0)+20>>2]|0,h)|0;if((c[d>>2]|0)==0){c[d>>2]=Yp(c[g>>2]|0,c[h>>2]|0)|0}if((c[d>>2]|0)==0){rb[c[(c[f>>2]|0)+196>>2]&31](c[g>>2]|0)}Zp(c[g>>2]|0)}}while(0);kh(c[(c[f>>2]|0)+88>>2]|0);i=e;return c[d>>2]|0}function Rp(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[b>>2]=a;c[e>>2]=c[c[b>>2]>>2];while(1){if((c[e>>2]|0)==0){break}c[(c[e>>2]|0)+12>>2]=c[(c[e>>2]|0)+32>>2];c[e>>2]=c[(c[e>>2]|0)+32>>2]}e=Sp(c[c[b>>2]>>2]|0)|0;i=d;return e|0}function Sp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;f=i;i=i+144|0;h=f+136|0;b=f;d=f+128|0;e=f+132|0;c[h>>2]=a;j=b+0|0;a=j+128|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(a|0));while(1){if((c[h>>2]|0)==0){break}c[d>>2]=c[h>>2];c[h>>2]=c[(c[d>>2]|0)+12>>2];c[(c[d>>2]|0)+12>>2]=0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=31){break}if((c[b+(c[e>>2]<<2)>>2]|0)==0){g=6;break}c[d>>2]=Tp(c[b+(c[e>>2]<<2)>>2]|0,c[d>>2]|0)|0;c[b+(c[e>>2]<<2)>>2]=0;c[e>>2]=(c[e>>2]|0)+1}if((g|0)==6){g=0;c[b+(c[e>>2]<<2)>>2]=c[d>>2]}if((c[e>>2]|0)!=31){continue}j=Tp(c[b+(c[e>>2]<<2)>>2]|0,c[d>>2]|0)|0;c[b+(c[e>>2]<<2)>>2]=j}c[d>>2]=c[b>>2];c[e>>2]=1;while(1){g=c[d>>2]|0;if((c[e>>2]|0)>=32){break}c[d>>2]=Tp(g,c[b+(c[e>>2]<<2)>>2]|0)|0;c[e>>2]=(c[e>>2]|0)+1}i=f;return g|0}function Tp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+64|0;d=g+52|0;h=g;f=g+8|0;e=g+48|0;c[d>>2]=a;c[h>>2]=b;c[e>>2]=f;while(1){if((c[d>>2]|0)!=0){a=(c[h>>2]|0)!=0}else{a=0}b=c[d>>2]|0;if(!a){break}if((c[b+20>>2]|0)>>>0<(c[(c[h>>2]|0)+20>>2]|0)>>>0){c[(c[e>>2]|0)+12>>2]=c[d>>2];c[e>>2]=c[d>>2];c[d>>2]=c[(c[d>>2]|0)+12>>2];continue}else{c[(c[e>>2]|0)+12>>2]=c[h>>2];c[e>>2]=c[h>>2];c[h>>2]=c[(c[h>>2]|0)+12>>2];continue}}if((b|0)!=0){c[(c[e>>2]|0)+12>>2]=c[d>>2];a=f+12|0;a=c[a>>2]|0;i=g;return a|0}if((c[h>>2]|0)!=0){c[(c[e>>2]|0)+12>>2]=c[h>>2];a=f+12|0;a=c[a>>2]|0;i=g;return a|0}else{c[(c[e>>2]|0)+12>>2]=0;a=f+12|0;a=c[a>>2]|0;i=g;return a|0}return 0}function Up(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;d=e+4|0;c[g>>2]=a;c[f>>2]=b;c[d>>2]=0;Fp(c[(c[g>>2]|0)+204>>2]|0,c[f>>2]|0,0,d)|0;i=e;return c[d>>2]|0}function Vp(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;i=e;return b[(c[d>>2]|0)+26>>1]|0}function Wp(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f+4|0;d=f;c[e>>2]=a;if((b[(c[e>>2]|0)+24>>1]&2|0)!=0){oh(c[e>>2]|0)}c[d>>2]=c[(c[e>>2]|0)+28>>2];a=(c[d>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+ -1;if((c[(c[e>>2]|0)+20>>2]|0)==1){c[(c[d>>2]|0)+44>>2]=0}vb[c[45272>>2]&63](c[(c[d>>2]|0)+40>>2]|0,c[c[e>>2]>>2]|0,1);i=f;return}function Xp(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=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;j=i;i=i+64|0;h=j+52|0;m=j+48|0;o=j+44|0;g=j+40|0;l=j+36|0;v=j+32|0;q=j+28|0;r=j+24|0;s=j+16|0;t=j+12|0;p=j+8|0;n=j+4|0;k=j;u=j+20|0;c[m>>2]=a;c[o>>2]=d;c[g>>2]=f;c[l>>2]=0;c[v>>2]=c[(c[m>>2]|0)+68>>2];if((c[v>>2]|0)!=0){if((b[(c[m>>2]|0)+40>>1]|0)!=0){c[q>>2]=Mp(c[v>>2]|0)|0;a:while(1){if((c[q>>2]|0)<0){m=18;break}if((c[l>>2]|0)!=0){m=18;break}c[k>>2]=Lp(c[m>>2]|0,c[q>>2]|0,r,s,t)|0;if((c[k>>2]|0)!=0){m=8;break}c[n>>2]=8192;c[p>>2]=cq(c[o>>2]|0)|0;while(1){if((b[(c[r>>2]|0)+(c[p>>2]<<1)>>1]|0)==0){break}c[u>>2]=(e[(c[r>>2]|0)+(c[p>>2]<<1)>>1]|0)+(c[t>>2]|0);if((c[u>>2]|0)>>>0<=(c[v>>2]|0)>>>0){if((c[(c[s>>2]|0)+(e[(c[r>>2]|0)+(c[p>>2]<<1)>>1]<<2)>>2]|0)==(c[o>>2]|0)){c[l>>2]=c[u>>2]}}a=c[n>>2]|0;c[n>>2]=a+ -1;if((a|0)==0){m=15;break a}c[p>>2]=eq(c[p>>2]|0)|0}c[q>>2]=(c[q>>2]|0)+ -1}if((m|0)==8){c[h>>2]=c[k>>2];a=c[h>>2]|0;i=j;return a|0}else if((m|0)==15){c[h>>2]=dq(49462)|0;a=c[h>>2]|0;i=j;return a|0}else if((m|0)==18){c[c[g>>2]>>2]=c[l>>2];c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}}}c[c[g>>2]>>2]=0;c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}function Yp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+48|0;j=e+32|0;m=e+24|0;l=e+8|0;k=e+12|0;f=e+16|0;h=e+20|0;n=e;g=e+28|0;c[j>>2]=b;c[m>>2]=d;c[l>>2]=c[(c[j>>2]|0)+16>>2];c[k>>2]=c[(c[j>>2]|0)+20>>2];c[f>>2]=0;c[h>>2]=c[(c[l>>2]|0)+152>>2];if((c[m>>2]|0)!=0){c[f>>2]=bq(c[(c[l>>2]|0)+208>>2]|0,c[m>>2]|0,c[h>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0}else{m=c[(c[l>>2]|0)+152>>2]|0;m=nL((c[k>>2]|0)-1|0,0,m|0,((m|0)<0)<<31>>31|0)|0;b=n;c[b>>2]=m;c[b+4>>2]=D;b=n;b=xp(c[(c[l>>2]|0)+60>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[h>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[f>>2]=b;c[f>>2]=(c[f>>2]|0)==522?0:b}if((c[k>>2]|0)!=1){b=c[f>>2]|0;i=e;return b|0}if((c[f>>2]|0)!=0){h=(c[l>>2]|0)+100|0;g=h+16|0;do{a[h>>0]=255;h=h+1|0}while((h|0)<(g|0));b=c[f>>2]|0;i=e;return b|0}else{c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+24;h=(c[l>>2]|0)+100|0;j=(c[g>>2]|0)+0|0;g=h+16|0;do{a[h>>0]=a[j>>0]|0;h=h+1|0;j=j+1|0}while((h|0)<(g|0));b=c[f>>2]|0;i=e;return b|0}return 0}function Zp(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+16>>2];a=c[f>>2]|0;if((b[(c[f>>2]|0)+24>>1]&64|0)!=0){_p(a);f=c[e>>2]|0;$p(f);i=d;return}else{Dp(a);f=c[e>>2]|0;$p(f);i=d;return}}function _p(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;f=b;c[d>>2]=a;c[f>>2]=c[(c[d>>2]|0)+16>>2];e=(c[f>>2]|0)+120|0;c[e>>2]=(c[e>>2]|0)+ -1;c[(c[d>>2]|0)+12>>2]=c[(c[f>>2]|0)+136>>2];c[(c[f>>2]|0)+136>>2]=c[d>>2];e=c[(c[f>>2]|0)+60>>2]|0;a=c[(c[f>>2]|0)+152>>2]|0;a=nL((c[(c[d>>2]|0)+20>>2]|0)-1|0,0,a|0,((a|0)<0)<<31>>31|0)|0;aq(e,a,D,c[(c[d>>2]|0)+4>>2]|0)|0;i=b;return}function $p(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[d>>2]|0)+120>>2]|0)!=0){i=b;return}if((ch(c[(c[d>>2]|0)+204>>2]|0)|0)!=0){i=b;return}Jo(c[d>>2]|0);i=b;return}function aq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=i;i=i+16|0;c[f+12>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;c[f+8>>2]=e;i=f;return 0}function bq(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;l=g+24|0;n=g+20|0;h=g+8|0;k=g+12|0;j=g+16|0;m=g;c[l>>2]=a;c[n>>2]=b;c[h>>2]=d;c[k>>2]=f;c[j>>2]=e[(c[l>>2]|0)+66>>1]|0;c[j>>2]=(c[j>>2]&65024)+((c[j>>2]&1)<<16);b=(c[j>>2]|0)+24|0;b=nL((c[n>>2]|0)-1|0,0,b|0,((b|0)<0)<<31>>31|0)|0;b=dL(32,0,b|0,D|0)|0;b=dL(b|0,D|0,24,0)|0;a=m;c[a>>2]=b;c[a+4>>2]=D;a=m;a=xp(c[(c[l>>2]|0)+8>>2]|0,c[k>>2]|0,(c[h>>2]|0)>(c[j>>2]|0)?c[j>>2]|0:c[h>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;i=g;return a|0}function cq(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[b>>2]|0)*383&8191|0}function dq(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+8|0;c[e>>2]=a;e=c[e>>2]|0;a=(Tf()|0)+20|0;c[d>>2]=e;c[d+4>>2]=a;zc(11,11e3,d);i=b;return 11}function eq(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[b>>2]|0)+1&8191|0}function fq(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[c[(c[b>>2]|0)+32>>2]>>2]|0}function gq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d;h=d+4|0;g=d+8|0;c[f>>2]=a;c[h>>2]=b;c[g>>2]=Mp(c[h>>2]|0)|0;b=c[h>>2]|0;if((c[g>>2]|0)==0){c[e>>2]=c[(c[c[(c[f>>2]|0)+32>>2]>>2]|0)+(34+b-1<<2)>>2];h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=c[(c[(c[(c[f>>2]|0)+32>>2]|0)+(c[g>>2]<<2)>>2]|0)+((((b-1-4062|0)>>>0)%4096|0)<<2)>>2];h=c[e>>2]|0;i=d;return h|0}return 0}function hq(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;Vo(c[e>>2]|0)|0;if((b[(c[e>>2]|0)+40>>1]|0)<0){i=d;return}$o(c[e>>2]|0,3+(b[(c[e>>2]|0)+40>>1]|0)|0);b[(c[e>>2]|0)+40>>1]=-1;i=d;return}function iq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+28>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function jq(b,d,e,f,g,h,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;o=i;i=i+64|0;n=o+48|0;q=o+44|0;r=o+40|0;x=o+36|0;y=o+32|0;w=o+28|0;u=o+24|0;A=o+16|0;z=o+12|0;v=o+8|0;p=o+4|0;t=o;s=o+20|0;c[q>>2]=b;c[r>>2]=d;c[x>>2]=e;c[y>>2]=f;c[w>>2]=g;c[u>>2]=h;c[A>>2]=j;c[z>>2]=k;c[v>>2]=l;c[t>>2]=0;c[s>>2]=c[r>>2];if((a[(c[q>>2]|0)+46>>0]|0)!=0){c[n>>2]=8;b=c[n>>2]|0;i=o;return b|0}c[p>>2]=oq(c[q>>2]|0,1,1)|0;if((c[p>>2]|0)!=0){c[n>>2]=c[p>>2];b=c[n>>2]|0;i=o;return b|0}a[(c[q>>2]|0)+45>>0]=1;do{if((c[r>>2]|0)!=0){c[p>>2]=pq(c[q>>2]|0,c[x>>2]|0,c[y>>2]|0,0,1)|0;if((c[p>>2]|0)==0){a[(c[q>>2]|0)+44>>0]=1;break}if((c[p>>2]|0)==5){c[s>>2]=0;c[p>>2]=0}}}while(0);if((c[p>>2]|0)==0){c[p>>2]=qq(c[q>>2]|0,t)|0;if((c[t>>2]|0)!=0){if((c[c[c[(c[q>>2]|0)+4>>2]>>2]>>2]|0)>=3){aq(c[(c[q>>2]|0)+4>>2]|0,0,0,0)|0}}}if((c[p>>2]|0)==0){if((c[(c[q>>2]|0)+68>>2]|0)!=0){b=rq(c[q>>2]|0)|0;if((b|0)!=(c[u>>2]|0)){c[p>>2]=dq(50063)|0}else{m=18}}else{m=18}if((m|0)==18){c[p>>2]=sq(c[q>>2]|0,c[s>>2]|0,c[x>>2]|0,c[y>>2]|0,c[w>>2]|0,c[A>>2]|0)|0}if((c[p>>2]|0)==0|(c[p>>2]|0)==5){if((c[z>>2]|0)!=0){c[c[z>>2]>>2]=c[(c[q>>2]|0)+68>>2]}if((c[v>>2]|0)!=0){b=c[(tq(c[q>>2]|0)|0)>>2]|0;c[c[v>>2]>>2]=b}}}if((c[t>>2]|0)!=0){u=(c[q>>2]|0)+52|0;t=u+48|0;do{c[u>>2]=0;u=u+4|0}while((u|0)<(t|0))}Vo(c[q>>2]|0)|0;bp(c[q>>2]|0,1,1);a[(c[q>>2]|0)+45>>0]=0;if((c[p>>2]|0)==0){if((c[r>>2]|0)!=(c[s>>2]|0)){p=5}else{m=28}}else{m=28}if((m|0)==28){p=c[p>>2]|0}c[n>>2]=p;b=c[n>>2]|0;i=o;return b|0}function kq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;pb[c[(c[c[h>>2]>>2]|0)+40>>2]&31](c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return}function lq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;h=e+16|0;g=e+24|0;j=e+8|0;k=e;f=e+20|0;c[g>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;Ih();c[f>>2]=dh(c[(c[g>>2]|0)+8>>2]|0,k)|0;if((c[f>>2]|0)==0){b=k;d=c[b+4>>2]|0;a=j;k=c[a+4>>2]|0;if((d|0)>(k|0)|((d|0)==(k|0)?(c[b>>2]|0)>>>0>(c[a>>2]|0)>>>0:0)){a=j;c[f>>2]=Qo(c[(c[g>>2]|0)+8>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0}}Jh();if((c[f>>2]|0)==0){i=e;return}a=c[f>>2]|0;c[h>>2]=c[(c[g>>2]|0)+100>>2];zc(a,11048,h);i=e;return}function mq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;f=e;h=e+4|0;c[g>>2]=a;c[f>>2]=b;if((d[(c[g>>2]|0)+43>>0]|0|0)!=2){nq(c[(c[g>>2]|0)+4>>2]|0,c[f>>2]|0)|0;i=e;return}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[g>>2]|0)+24>>2]|0)){break}oc(c[(c[(c[g>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2]|0);c[(c[(c[g>>2]|0)+32>>2]|0)+(c[h>>2]<<2)>>2]=0;c[h>>2]=(c[h>>2]|0)+1}i=e;return}function nq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+64>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function oq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;l=f;k=f+4|0;j=f+8|0;h=f+12|0;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;if((a[(c[l>>2]|0)+43>>0]|0)!=0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}else{c[h>>2]=ap(c[(c[l>>2]|0)+4>>2]|0,c[k>>2]|0,c[j>>2]|0,10)|0;c[g>>2]=c[h>>2];b=c[g>>2]|0;i=f;return b|0}return 0}function pq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;m=h+20|0;k=h;l=h+4|0;j=h+8|0;n=h+12|0;g=h+16|0;c[m>>2]=a;c[k>>2]=b;c[l>>2]=d;c[j>>2]=e;c[n>>2]=f;while(1){c[g>>2]=oq(c[m>>2]|0,c[j>>2]|0,c[n>>2]|0)|0;if((c[k>>2]|0)==0){j=5;break}if((c[g>>2]|0)!=5){j=5;break}if((ub[c[k>>2]&63](c[l>>2]|0)|0)==0){j=5;break}}if((j|0)==5){i=h;return c[g>>2]|0}return 0}function qq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;f=j+20|0;e=j;k=j+4|0;g=j+8|0;h=j+12|0;l=j+16|0;c[e>>2]=b;c[k>>2]=d;c[g>>2]=Np(c[e>>2]|0,0,l)|0;if((c[g>>2]|0)!=0){c[f>>2]=c[g>>2];b=c[f>>2]|0;i=j;return b|0}if((c[l>>2]|0)!=0){d=zq(c[e>>2]|0,c[k>>2]|0)|0}else{d=1}c[h>>2]=d;do{if((c[h>>2]|0)!=0){d=c[e>>2]|0;if((a[(c[e>>2]|0)+46>>0]&2|0)!=0){b=_o(d,0)|0;c[g>>2]=b;if(0!=(b|0)){break}$o(c[e>>2]|0,0);c[g>>2]=264;break}b=oq(d,0,1)|0;c[g>>2]=b;if(0==(b|0)){a[(c[e>>2]|0)+44>>0]=1;b=Np(c[e>>2]|0,0,l)|0;c[g>>2]=b;if(0==(b|0)){c[h>>2]=zq(c[e>>2]|0,c[k>>2]|0)|0;if((c[h>>2]|0)!=0){c[g>>2]=Aq(c[e>>2]|0)|0;c[c[k>>2]>>2]=1}}a[(c[e>>2]|0)+44>>0]=0;bp(c[e>>2]|0,0,1)}}}while(0);if((c[h>>2]|0)==0){if((c[(c[e>>2]|0)+52>>2]|0)!=3007e3){c[g>>2]=Bq(49109)|0}}c[f>>2]=c[g>>2];b=c[f>>2]|0;i=j;return b|0}function rq(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;i=e;return(b[(c[d>>2]|0)+66>>1]&65024)+((b[(c[d>>2]|0)+66>>1]&1)<<16)|0}function sq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,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,E=0,F=0,G=0,H=0;x=i;i=i+112|0;k=x+104|0;o=x+100|0;s=x+96|0;H=x+92|0;E=x+88|0;p=x+84|0;z=x+80|0;l=x+76|0;q=x+72|0;v=x+68|0;w=x+64|0;t=x+60|0;m=x+32|0;h=x+48|0;F=x+44|0;n=x+40|0;C=x+36|0;G=x+56|0;B=x+16|0;u=x+52|0;A=x+8|0;y=x+24|0;r=x;c[o>>2]=a;c[s>>2]=b;c[H>>2]=d;c[E>>2]=e;c[p>>2]=f;c[z>>2]=g;c[v>>2]=0;c[w>>2]=0;c[t>>2]=0;c[C>>2]=0;c[q>>2]=rq(c[o>>2]|0)|0;c[n>>2]=tq(c[o>>2]|0)|0;if((c[c[n>>2]>>2]|0)>>>0>=(c[(c[o>>2]|0)+68>>2]|0)>>>0){c[k>>2]=0;a=c[k>>2]|0;i=x;return a|0}c[l>>2]=uq(c[o>>2]|0,v)|0;if((c[l>>2]|0)!=0){c[k>>2]=c[l>>2];a=c[k>>2]|0;i=x;return a|0}if((c[s>>2]|0)!=0){c[C>>2]=c[H>>2]}c[m>>2]=c[(c[o>>2]|0)+68>>2];c[h>>2]=c[(c[o>>2]|0)+72>>2];c[F>>2]=1;a:while(1){if((c[F>>2]|0)>=5){j=15;break}c[G>>2]=c[(c[n>>2]|0)+4+(c[F>>2]<<2)>>2];do{if((c[m>>2]|0)>>>0>(c[G>>2]|0)>>>0){c[l>>2]=pq(c[o>>2]|0,c[C>>2]|0,c[E>>2]|0,3+(c[F>>2]|0)|0,1)|0;if((c[l>>2]|0)==0){c[(c[n>>2]|0)+4+(c[F>>2]<<2)>>2]=(c[F>>2]|0)==1?c[m>>2]|0:-1;bp(c[o>>2]|0,3+(c[F>>2]|0)|0,1);break}if((c[l>>2]|0)!=5){break a}c[m>>2]=c[G>>2];c[C>>2]=0}}while(0);c[F>>2]=(c[F>>2]|0)+1}do{if((j|0)==15){if((c[c[n>>2]>>2]|0)>>>0<(c[m>>2]|0)>>>0){a=pq(c[o>>2]|0,c[C>>2]|0,c[E>>2]|0,3,1)|0;c[l>>2]=a;if((a|0)==0){c[u>>2]=c[c[n>>2]>>2];if((c[p>>2]|0)!=0){c[l>>2]=cp(c[(c[o>>2]|0)+8>>2]|0,c[p>>2]|0)|0}if((c[l>>2]|0)==0){b=c[q>>2]|0;b=nL(c[h>>2]|0,0,b|0,((b|0)<0)<<31>>31|0)|0;a=A;c[a>>2]=b;c[a+4>>2]=D;c[l>>2]=dh(c[(c[o>>2]|0)+4>>2]|0,B)|0;if((c[l>>2]|0)==0){b=B;e=c[b+4>>2]|0;a=A;d=c[a+4>>2]|0;if((e|0)<(d|0)|((e|0)==(d|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)){kq(c[(c[o>>2]|0)+4>>2]|0,5,A)}}}b:while(1){if((c[l>>2]|0)!=0){break}while(1){if(0!=(vq(c[v>>2]|0,w,t)|0)){break b}if((c[t>>2]|0)>>>0<=(c[u>>2]|0)>>>0){continue b}if((c[t>>2]|0)>>>0>(c[m>>2]|0)>>>0){continue b}if((c[w>>2]|0)>>>0>(c[h>>2]|0)>>>0){continue b}b=(c[q>>2]|0)+24|0;b=nL((c[t>>2]|0)-1|0,0,b|0,((b|0)<0)<<31>>31|0)|0;b=dL(32,0,b|0,D|0)|0;b=dL(b|0,D|0,24,0)|0;a=y;c[a>>2]=b;c[a+4>>2]=D;a=y;c[l>>2]=xp(c[(c[o>>2]|0)+8>>2]|0,c[z>>2]|0,c[q>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;if((c[l>>2]|0)!=0){break b}b=c[q>>2]|0;b=nL((c[w>>2]|0)-1|0,0,b|0,((b|0)<0)<<31>>31|0)|0;a=y;c[a>>2]=b;c[a+4>>2]=D;a=y;c[l>>2]=nd(c[(c[o>>2]|0)+4>>2]|0,c[z>>2]|0,c[q>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;if(!((c[l>>2]|0)==0&(c[l>>2]|0)==0)){break b}}}if((c[l>>2]|0)==0){a=c[m>>2]|0;if((a|0)==(c[(fq(c[o>>2]|0)|0)+16>>2]|0)){b=c[q>>2]|0;b=nL(c[(c[o>>2]|0)+72>>2]|0,0,b|0,((b|0)<0)<<31>>31|0)|0;a=r;c[a>>2]=b;c[a+4>>2]=D;a=r;c[l>>2]=Qo(c[(c[o>>2]|0)+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;if((c[l>>2]|0)==0){if((c[p>>2]|0)!=0){c[l>>2]=cp(c[(c[o>>2]|0)+4>>2]|0,c[p>>2]|0)|0}}}if((c[l>>2]|0)==0){c[c[n>>2]>>2]=c[m>>2]}}bp(c[o>>2]|0,3,1)}}if((c[l>>2]|0)==5){c[l>>2]=0}if((c[l>>2]|0)==0){if((c[s>>2]|0)!=0){if((c[c[n>>2]>>2]|0)>>>0<(c[(c[o>>2]|0)+68>>2]|0)>>>0){c[l>>2]=5;break}if((c[s>>2]|0)==2){c[l>>2]=pq(c[o>>2]|0,c[C>>2]|0,c[E>>2]|0,4,4)|0;if((c[l>>2]|0)==0){bp(c[o>>2]|0,4,4)}}}}}}while(0);wq(c[v>>2]|0);c[k>>2]=c[l>>2];a=c[k>>2]|0;i=x;return a|0}function tq(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[c[(c[b>>2]|0)+32>>2]>>2]|0)+96|0}function uq(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=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;n=i;i=i+64|0;f=n+60|0;u=n+56|0;h=n+52|0;g=n+48|0;t=n+44|0;o=n+40|0;v=n+36|0;s=n+32|0;k=n+28|0;j=n+20|0;q=n+16|0;l=n+12|0;r=n+8|0;e=n+4|0;p=n;m=n+24|0;c[u>>2]=a;c[h>>2]=d;c[j>>2]=0;c[o>>2]=c[(c[u>>2]|0)+68>>2];c[t>>2]=(Mp(c[o>>2]|0)|0)+1;c[v>>2]=28+(((c[t>>2]|0)-1|0)*20|0)+(c[o>>2]<<1);c[g>>2]=Kg(c[v>>2]|0)|0;if((c[g>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=n;return a|0}aL(c[g>>2]|0,0,c[v>>2]|0)|0;c[(c[g>>2]|0)+4>>2]=c[t>>2];c[k>>2]=Kg(((c[o>>2]|0)>>>0>4096?4096:c[o>>2]|0)<<1)|0;if((c[k>>2]|0)==0){c[j>>2]=7}c[s>>2]=0;while(1){if((c[j>>2]|0)!=0){break}if((c[s>>2]|0)>=(c[t>>2]|0)){break}c[j>>2]=Lp(c[u>>2]|0,c[s>>2]|0,q,r,l)|0;if((c[j>>2]|0)==0){c[r>>2]=(c[r>>2]|0)+4;if(((c[s>>2]|0)+1|0)==(c[t>>2]|0)){c[p>>2]=(c[o>>2]|0)-(c[l>>2]|0)}else{c[p>>2]=((c[q>>2]|0)-(c[r>>2]|0)|0)/4|0}c[m>>2]=(c[g>>2]|0)+8+((c[(c[g>>2]|0)+4>>2]|0)*20|0)+(c[l>>2]<<1);c[l>>2]=(c[l>>2]|0)+1;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[p>>2]|0)){break}b[(c[m>>2]|0)+(c[e>>2]<<1)>>1]=c[e>>2];c[e>>2]=(c[e>>2]|0)+1}xq(c[r>>2]|0,c[k>>2]|0,c[m>>2]|0,p);c[(c[g>>2]|0)+8+((c[s>>2]|0)*20|0)+16>>2]=c[l>>2];c[(c[g>>2]|0)+8+((c[s>>2]|0)*20|0)+12>>2]=c[p>>2];c[(c[g>>2]|0)+8+((c[s>>2]|0)*20|0)+4>>2]=c[m>>2];c[(c[g>>2]|0)+8+((c[s>>2]|0)*20|0)+8>>2]=c[r>>2]}c[s>>2]=(c[s>>2]|0)+1}Lg(c[k>>2]|0);if((c[j>>2]|0)!=0){wq(c[g>>2]|0)}c[c[h>>2]>>2]=c[g>>2];c[f>>2]=c[j>>2];a=c[f>>2]|0;i=n;return a|0}function vq(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=i;i=i+32|0;h=k+28|0;j=k;p=k+4|0;n=k+8|0;m=k+12|0;o=k+16|0;l=k+20|0;f=k+24|0;c[h>>2]=a;c[j>>2]=b;c[p>>2]=d;c[m>>2]=-1;c[n>>2]=c[c[h>>2]>>2];c[o>>2]=(c[(c[h>>2]|0)+4>>2]|0)-1;while(1){if((c[o>>2]|0)<0){break}c[l>>2]=(c[h>>2]|0)+8+((c[o>>2]|0)*20|0);while(1){if((c[c[l>>2]>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0)){break}c[f>>2]=c[(c[(c[l>>2]|0)+8>>2]|0)+((e[(c[(c[l>>2]|0)+4>>2]|0)+(c[c[l>>2]>>2]<<1)>>1]|0)<<2)>>2];if((c[f>>2]|0)>>>0>(c[n>>2]|0)>>>0){g=6;break}a=c[l>>2]|0;c[a>>2]=(c[a>>2]|0)+1}if((g|0)==6){g=0;if((c[f>>2]|0)>>>0<(c[m>>2]|0)>>>0){c[m>>2]=c[f>>2];c[c[p>>2]>>2]=(c[(c[l>>2]|0)+16>>2]|0)+(e[(c[(c[l>>2]|0)+4>>2]|0)+(c[c[l>>2]>>2]<<1)>>1]|0)}}c[o>>2]=(c[o>>2]|0)+ -1}a=c[m>>2]|0;c[c[h>>2]>>2]=a;c[c[j>>2]>>2]=a;i=k;return(c[m>>2]|0)==-1|0}function wq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Lg(c[d>>2]|0);i=b;return}function xq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=i;i=i+160|0;g=r+148|0;p=r+144|0;k=r+140|0;q=r+136|0;m=r+132|0;j=r+128|0;l=r+124|0;o=r+116|0;h=r+112|0;f=r+8|0;n=r;s=r+120|0;c[g>>2]=a;c[p>>2]=b;c[k>>2]=d;c[q>>2]=e;c[m>>2]=c[c[q>>2]>>2];c[j>>2]=0;c[l>>2]=0;c[h>>2]=0;d=f+0|0;e=d+104|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[m>>2]|0)){break}c[j>>2]=1;c[l>>2]=(c[k>>2]|0)+(c[o>>2]<<1);c[h>>2]=0;while(1){if((c[o>>2]&1<>2]|0)==0){break}c[n>>2]=f+(c[h>>2]<<3);yq(c[g>>2]|0,c[(c[n>>2]|0)+4>>2]|0,c[c[n>>2]>>2]|0,l,j,c[p>>2]|0);c[h>>2]=(c[h>>2]|0)+1}c[f+(c[h>>2]<<3)+4>>2]=c[l>>2];c[f+(c[h>>2]<<3)>>2]=c[j>>2];c[o>>2]=(c[o>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+1;while(1){if((c[h>>2]|0)>=13){break}if((c[m>>2]&1<>2]|0)!=0){c[s>>2]=f+(c[h>>2]<<3);yq(c[g>>2]|0,c[(c[s>>2]|0)+4>>2]|0,c[c[s>>2]>>2]|0,l,j,c[p>>2]|0)}c[h>>2]=(c[h>>2]|0)+1}c[c[q>>2]>>2]=c[j>>2];i=r;return}function yq(a,d,f,g,h,j){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;q=i;i=i+64|0;t=q+44|0;u=q+40|0;x=q+36|0;m=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;v=q+12|0;n=q+8|0;y=q+4|0;k=q;s=q+48|0;w=q+16|0;c[t>>2]=a;c[u>>2]=d;c[x>>2]=f;c[m>>2]=g;c[o>>2]=h;c[p>>2]=j;c[r>>2]=0;c[v>>2]=0;c[n>>2]=0;c[y>>2]=c[c[o>>2]>>2];c[k>>2]=c[c[m>>2]>>2];while(1){if((c[v>>2]|0)>=(c[y>>2]|0)){if((c[r>>2]|0)>=(c[x>>2]|0)){break}}do{if((c[r>>2]|0)<(c[x>>2]|0)){if((c[v>>2]|0)<(c[y>>2]|0)){if(!((c[(c[t>>2]|0)+((e[(c[u>>2]|0)+(c[r>>2]<<1)>>1]|0)<<2)>>2]|0)>>>0<(c[(c[t>>2]|0)+((e[(c[k>>2]|0)+(c[v>>2]<<1)>>1]|0)<<2)>>2]|0)>>>0)){l=8;break}}a=c[r>>2]|0;c[r>>2]=a+1;b[s>>1]=b[(c[u>>2]|0)+(a<<1)>>1]|0}else{l=8}}while(0);if((l|0)==8){l=0;a=c[v>>2]|0;c[v>>2]=a+1;b[s>>1]=b[(c[k>>2]|0)+(a<<1)>>1]|0}c[w>>2]=c[(c[t>>2]|0)+((e[s>>1]|0)<<2)>>2];d=b[s>>1]|0;a=c[n>>2]|0;c[n>>2]=a+1;b[(c[p>>2]|0)+(a<<1)>>1]=d;if((c[r>>2]|0)>=(c[x>>2]|0)){continue}if((c[(c[t>>2]|0)+((e[(c[u>>2]|0)+(c[r>>2]<<1)>>1]|0)<<2)>>2]|0)!=(c[w>>2]|0)){continue}c[r>>2]=(c[r>>2]|0)+1}c[c[m>>2]>>2]=c[u>>2];c[c[o>>2]>>2]=c[n>>2];fL(c[u>>2]|0,c[p>>2]|0,c[n>>2]<<1|0)|0;i=q;return}function zq(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+128|0;l=g+116|0;m=g;o=g+4|0;n=g+8|0;k=g+16|0;h=g+64|0;j=g+112|0;c[m>>2]=e;c[o>>2]=f;c[j>>2]=fq(c[m>>2]|0)|0;e=k+0|0;f=(c[j>>2]|0)+0|0;p=e+48|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(p|0));Gq(c[m>>2]|0);e=h+0|0;f=(c[j>>2]|0)+48|0;p=e+48|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(p|0));if((XK(k,h,48)|0)!=0){c[l>>2]=1;p=c[l>>2]|0;i=g;return p|0}if((d[k+12>>0]|0|0)==0){c[l>>2]=1;p=c[l>>2]|0;i=g;return p|0}Cq(1,k,40,0,n);if((c[n>>2]|0)==(c[k+40>>2]|0)){if((c[n+4>>2]|0)==(c[k+44>>2]|0)){if((XK((c[m>>2]|0)+52|0,k,48)|0)!=0){c[c[o>>2]>>2]=1;e=(c[m>>2]|0)+52|0;f=k+0|0;p=e+48|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(p|0));c[(c[m>>2]|0)+36>>2]=(b[(c[m>>2]|0)+66>>1]&65024)+((b[(c[m>>2]|0)+66>>1]&1)<<16)}c[l>>2]=0;p=c[l>>2]|0;i=g;return p|0}}c[l>>2]=1;p=c[l>>2]|0;i=g;return p|0}function Aq(e){e=e|0;var f=0,g=0,h=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,E=0;s=i;i=i+144|0;C=s+16|0;r=s+96|0;j=s+92|0;h=s+88|0;k=s+8|0;z=s+80|0;l=s+72|0;m=s+68|0;o=s+104|0;n=s+64|0;g=s+60|0;t=s+100|0;u=s+28|0;v=s;q=s+36|0;p=s+24|0;f=s+32|0;y=s+52|0;w=s+40|0;x=s+44|0;A=s+48|0;B=s+56|0;c[j>>2]=e;c[z+0>>2]=0;c[z+4>>2]=0;c[l>>2]=1+(d[(c[j>>2]|0)+45>>0]|0);c[m>>2]=8-(c[l>>2]|0);c[h>>2]=oq(c[j>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if((c[h>>2]|0)!=0){c[r>>2]=c[h>>2];E=c[r>>2]|0;i=s;return E|0}e=(c[j>>2]|0)+52|0;E=e+48|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(E|0));c[h>>2]=dh(c[(c[j>>2]|0)+8>>2]|0,k)|0;a:do{if((c[h>>2]|0)==0){E=k;e=c[E+4>>2]|0;do{if((e|0)>0|(e|0)==0&(c[E>>2]|0)>>>0>32){c[n>>2]=0;c[h>>2]=xp(c[(c[j>>2]|0)+8>>2]|0,o,32,0,0)|0;if((c[h>>2]|0)!=0){break a}c[p>>2]=zo(o)|0;c[q>>2]=zo(o+8|0)|0;if((c[p>>2]&-2|0)==931071618){if(!(((c[q>>2]|0)>65536?1:(c[q>>2]&(c[q>>2]|0)-1|0)!=0)|(c[q>>2]|0)<512)){a[(c[j>>2]|0)+65>>0]=c[p>>2]&1;c[(c[j>>2]|0)+36>>2]=c[q>>2];E=zo(o+12|0)|0;c[(c[j>>2]|0)+104>>2]=E;E=(c[j>>2]|0)+84|0;e=o+16|0;a[E+0>>0]=a[e+0>>0]|0;a[E+1>>0]=a[e+1>>0]|0;a[E+2>>0]=a[e+2>>0]|0;a[E+3>>0]=a[e+3>>0]|0;a[E+4>>0]=a[e+4>>0]|0;a[E+5>>0]=a[e+5>>0]|0;a[E+6>>0]=a[e+6>>0]|0;a[E+7>>0]=a[e+7>>0]|0;Cq((d[(c[j>>2]|0)+65>>0]|0)==((a[1480]|0)==0|0)&1,o,24,0,(c[j>>2]|0)+76|0);E=c[(c[j>>2]|0)+76>>2]|0;if((E|0)==(zo(o+24|0)|0)){E=c[(c[j>>2]|0)+80>>2]|0;if((E|0)==(zo(o+28|0)|0)){c[f>>2]=zo(o+4|0)|0;if((c[f>>2]|0)!=3007e3){c[h>>2]=Bq(48238)|0;break}c[g>>2]=(c[q>>2]|0)+24;c[n>>2]=mc(c[g>>2]|0)|0;if((c[n>>2]|0)==0){c[h>>2]=7;break a}c[t>>2]=(c[n>>2]|0)+24;c[u>>2]=0;E=v;c[E>>2]=32;c[E+4>>2]=0;while(1){o=v;e=c[g>>2]|0;e=dL(c[o>>2]|0,c[o+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;o=D;E=k;p=c[E+4>>2]|0;if(!((o|0)<(p|0)|((o|0)==(p|0)?e>>>0<=(c[E>>2]|0)>>>0:0))){break}c[u>>2]=(c[u>>2]|0)+1;E=v;c[h>>2]=xp(c[(c[j>>2]|0)+8>>2]|0,c[n>>2]|0,c[g>>2]|0,c[E>>2]|0,c[E+4>>2]|0)|0;if((c[h>>2]|0)!=0){break}c[y>>2]=Dq(c[j>>2]|0,w,x,c[t>>2]|0,c[n>>2]|0)|0;if((c[y>>2]|0)==0){break}c[h>>2]=Eq(c[j>>2]|0,c[u>>2]|0,c[w>>2]|0)|0;if((c[h>>2]|0)!=0){break}if((c[x>>2]|0)!=0){c[(c[j>>2]|0)+68>>2]=c[u>>2];c[(c[j>>2]|0)+72>>2]=c[x>>2];b[(c[j>>2]|0)+66>>1]=c[q>>2]&65280|c[q>>2]>>16;c[z>>2]=c[(c[j>>2]|0)+76>>2];c[z+4>>2]=c[(c[j>>2]|0)+80>>2]}e=c[g>>2]|0;E=v;e=dL(c[E>>2]|0,c[E+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;E=v;c[E>>2]=e;c[E+4>>2]=D}oc(c[n>>2]|0)}}}}}}while(0);if((c[h>>2]|0)==0){c[(c[j>>2]|0)+76>>2]=c[z>>2];c[(c[j>>2]|0)+80>>2]=c[z+4>>2];Fq(c[j>>2]|0);c[A>>2]=tq(c[j>>2]|0)|0;c[c[A>>2]>>2]=0;c[(c[A>>2]|0)+4>>2]=0;c[B>>2]=1;while(1){if((c[B>>2]|0)>=5){break}c[(c[A>>2]|0)+4+(c[B>>2]<<2)>>2]=-1;c[B>>2]=(c[B>>2]|0)+1}if((c[(c[j>>2]|0)+68>>2]|0)!=0){c[(c[A>>2]|0)+8>>2]=c[(c[j>>2]|0)+68>>2]}if((c[(c[j>>2]|0)+72>>2]|0)!=0){E=c[(c[j>>2]|0)+100>>2]|0;c[C>>2]=c[(c[j>>2]|0)+68>>2];c[C+4>>2]=E;zc(283,11120,C)}}}}while(0);bp(c[j>>2]|0,c[l>>2]|0,c[m>>2]|0);c[r>>2]=c[h>>2];E=c[r>>2]|0;i=s;return E|0}function Bq(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+8|0;c[e>>2]=a;e=c[e>>2]|0;a=(Tf()|0)+20|0;c[d>>2]=e;c[d+4>>2]=a;zc(14,11080,d);i=b;return 14}function Cq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+48|0;n=k+32|0;q=k+28|0;p=k+24|0;o=k+20|0;h=k+16|0;m=k+8|0;j=k+4|0;l=k;g=k+12|0;c[n>>2]=a;c[q>>2]=b;c[p>>2]=d;c[o>>2]=e;c[h>>2]=f;c[l>>2]=c[q>>2];c[g>>2]=(c[q>>2]|0)+(c[p>>2]|0);if((c[o>>2]|0)!=0){c[m>>2]=c[c[o>>2]>>2];c[j>>2]=c[(c[o>>2]|0)+4>>2]}else{c[j>>2]=0;c[m>>2]=0}if((c[n>>2]|0)!=0){do{q=c[l>>2]|0;c[l>>2]=q+4;c[m>>2]=(c[m>>2]|0)+((c[q>>2]|0)+(c[j>>2]|0));q=c[l>>2]|0;c[l>>2]=q+4;c[j>>2]=(c[j>>2]|0)+((c[q>>2]|0)+(c[m>>2]|0))}while((c[l>>2]|0)>>>0<(c[g>>2]|0)>>>0);q=c[m>>2]|0;p=c[h>>2]|0;c[p>>2]=q;p=c[j>>2]|0;q=c[h>>2]|0;q=q+4|0;c[q>>2]=p;i=k;return}else{do{c[m>>2]=(c[m>>2]|0)+(((c[c[l>>2]>>2]&255)<<24)+((c[c[l>>2]>>2]&65280)<<8)+((c[c[l>>2]>>2]&16711680)>>>8)+((c[c[l>>2]>>2]&-16777216)>>>24)+(c[j>>2]|0));c[j>>2]=(c[j>>2]|0)+(((c[(c[l>>2]|0)+4>>2]&255)<<24)+((c[(c[l>>2]|0)+4>>2]&65280)<<8)+((c[(c[l>>2]|0)+4>>2]&16711680)>>>8)+((c[(c[l>>2]|0)+4>>2]&-16777216)>>>24)+(c[m>>2]|0));c[l>>2]=(c[l>>2]|0)+8}while((c[l>>2]|0)>>>0<(c[g>>2]|0)>>>0);q=c[m>>2]|0;p=c[h>>2]|0;c[p>>2]=q;p=c[j>>2]|0;q=c[h>>2]|0;q=q+4|0;c[q>>2]=p;i=k;return}}function Dq(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=i;i=i+48|0;k=p+32|0;q=p+28|0;m=p+24|0;o=p+20|0;s=p+16|0;n=p+8|0;r=p+4|0;j=p;l=p+12|0;c[q>>2]=b;c[m>>2]=e;c[o>>2]=f;c[s>>2]=g;c[n>>2]=h;c[j>>2]=(c[q>>2]|0)+76;if((XK((c[q>>2]|0)+84|0,(c[n>>2]|0)+8|0,8)|0)!=0){c[k>>2]=0;b=c[k>>2]|0;i=p;return b|0}c[l>>2]=zo(c[n>>2]|0)|0;if((c[l>>2]|0)==0){c[k>>2]=0;b=c[k>>2]|0;i=p;return b|0}c[r>>2]=(d[(c[q>>2]|0)+65>>0]|0)==((a[1480]|0)==0|0)&1;Cq(c[r>>2]|0,c[n>>2]|0,8,c[j>>2]|0,c[j>>2]|0);Cq(c[r>>2]|0,c[s>>2]|0,c[(c[q>>2]|0)+36>>2]|0,c[j>>2]|0,c[j>>2]|0);b=c[c[j>>2]>>2]|0;if((b|0)==(zo((c[n>>2]|0)+16|0)|0)){b=c[(c[j>>2]|0)+4>>2]|0;if((b|0)==(zo((c[n>>2]|0)+20|0)|0)){c[c[m>>2]>>2]=c[l>>2];b=zo((c[n>>2]|0)+4|0)|0;c[c[o>>2]>>2]=b;c[k>>2]=1;b=c[k>>2]|0;i=p;return b|0}}c[k>>2]=0;b=c[k>>2]|0;i=p;return b|0}function Eq(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+48|0;h=j+44|0;q=j+40|0;t=j+36|0;k=j+32|0;o=j+28|0;s=j+24|0;l=j+20|0;n=j+12|0;f=j+8|0;m=j+4|0;p=j;r=j+16|0;c[q>>2]=a;c[t>>2]=d;c[k>>2]=e;c[s>>2]=0;c[l>>2]=0;c[n>>2]=0;a=c[q>>2]|0;c[o>>2]=Lp(a,Mp(c[t>>2]|0)|0,n,l,s)|0;do{if((c[o>>2]|0)==0){c[m>>2]=(c[t>>2]|0)-(c[s>>2]|0);if((c[m>>2]|0)==1){c[r>>2]=(c[n>>2]|0)+16384-((c[l>>2]|0)+4);aL((c[l>>2]|0)+4|0,0,c[r>>2]|0)|0}if((c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)!=0){Kp(c[q>>2]|0)}c[p>>2]=c[m>>2];c[f>>2]=cq(c[k>>2]|0)|0;while(1){if((b[(c[n>>2]|0)+(c[f>>2]<<1)>>1]|0)==0){g=11;break}a=c[p>>2]|0;c[p>>2]=a+ -1;if((a|0)==0){break}c[f>>2]=eq(c[f>>2]|0)|0}if((g|0)==11){c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]=c[k>>2];b[(c[n>>2]|0)+(c[f>>2]<<1)>>1]=c[m>>2];break}c[h>>2]=dq(48107)|0;a=c[h>>2]|0;i=j;return a|0}}while(0);c[h>>2]=c[o>>2];a=c[h>>2]|0;i=j;return a|0}function Fq(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;f=i;i=i+16|0;d=f+8|0;e=f;c[d>>2]=b;c[e>>2]=fq(c[d>>2]|0)|0;c[f+4>>2]=40;a[(c[d>>2]|0)+64>>0]=1;c[(c[d>>2]|0)+52>>2]=3007e3;Cq(1,(c[d>>2]|0)+52|0,40,0,(c[d>>2]|0)+92|0);h=(c[e>>2]|0)+48|0;g=(c[d>>2]|0)+52|0;b=h+48|0;do{a[h>>0]=a[g>>0]|0;h=h+1|0;g=g+1|0}while((h|0)<(b|0));Gq(c[d>>2]|0);h=(c[e>>2]|0)+0|0;g=(c[d>>2]|0)+52|0;b=h+48|0;do{a[h>>0]=a[g>>0]|0;h=h+1|0;g=g+1|0}while((h|0)<(b|0));i=f;return}function Gq(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;if((d[(c[e>>2]|0)+43>>0]|0|0)==2){i=b;return}Hq(c[(c[e>>2]|0)+4>>2]|0);i=b;return}function Hq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;rb[c[(c[c[d>>2]>>2]|0)+60>>2]&31](c[d>>2]|0);i=b;return}function Iq(a){a=a|0;var b=0,d=0,e=0,f=0;e=i;i=i+16|0;d=e+8|0;f=e;b=e+4|0;c[f>>2]=a;if((c[f>>2]|0)!=0){if((c[c[f>>2]>>2]|0)!=0){if((c[(c[f>>2]|0)+8>>2]|0)>=0){c[b>>2]=zb[c[c[f>>2]>>2]&127](c[(c[f>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;a=(c[f>>2]|0)+8|0;if((c[b>>2]|0)==0){c[a>>2]=-1}else{c[a>>2]=(c[a>>2]|0)+1}c[d>>2]=c[b>>2];f=c[d>>2]|0;i=e;return f|0}}}c[d>>2]=0;f=c[d>>2]|0;i=e;return f|0}function Jq(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+8>>2]|0}function Kq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Vp(c[d>>2]|0)|0;i=b;return a|0}function Lq(f){f=f|0;var g=0,h=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;j=i;i=i+48|0;h=j+32|0;k=j+28|0;r=j+40|0;s=j+44|0;q=j+20|0;v=j+16|0;l=j+8|0;p=j+42|0;m=j+4|0;t=j;g=j+12|0;o=j+24|0;u=j+36|0;n=j+38|0;c[k>>2]=f;do{if((a[c[k>>2]>>0]|0)==0){c[v>>2]=c[(c[k>>2]|0)+52>>2];a[s>>0]=a[(c[k>>2]|0)+5>>0]|0;c[q>>2]=c[(c[k>>2]|0)+56>>2];if((Mq(c[k>>2]|0,d[(c[q>>2]|0)+(d[s>>0]|0)>>0]|0)|0)!=0){c[h>>2]=dq(52602)|0;v=c[h>>2]|0;i=j;return v|0}b[(c[k>>2]|0)+18>>1]=(c[(c[v>>2]|0)+32>>2]|0)-1;a[(c[k>>2]|0)+1>>0]=0;c[l>>2]=c[(c[v>>2]|0)+36>>2];f=(d[s>>0]|0)+12-(d[(c[k>>2]|0)+3>>0]<<2)&65535;b[p>>1]=f;b[(c[k>>2]|0)+12>>1]=f;c[(c[k>>2]|0)+60>>2]=(c[q>>2]|0)+(c[l>>2]|0);c[(c[k>>2]|0)+64>>2]=(c[q>>2]|0)+(e[p>>1]|0);c[t>>2]=((d[(c[q>>2]|0)+((d[s>>0]|0)+5)>>0]<<8|d[(c[q>>2]|0)+((d[s>>0]|0)+5)+1>>0])-1&65535)+1;b[(c[k>>2]|0)+16>>1]=d[(c[q>>2]|0)+((d[s>>0]|0)+3)>>0]<<8|d[(c[q>>2]|0)+((d[s>>0]|0)+3)+1>>0];if((e[(c[k>>2]|0)+16>>1]|0)>>>0>((((c[(c[v>>2]|0)+32>>2]|0)-8|0)>>>0)/6|0)>>>0){c[h>>2]=dq(52614)|0;v=c[h>>2]|0;i=j;return v|0}c[g>>2]=(e[p>>1]|0)+(e[(c[k>>2]|0)+16>>1]<<1);c[o>>2]=(c[l>>2]|0)-4;b[r>>1]=d[(c[q>>2]|0)+((d[s>>0]|0)+1)>>0]<<8|d[(c[q>>2]|0)+((d[s>>0]|0)+1)+1>>0];c[m>>2]=(d[(c[q>>2]|0)+((d[s>>0]|0)+7)>>0]|0)+(c[t>>2]|0);while(1){if((e[r>>1]|0)<=0){n=16;break}if((e[r>>1]|0)<(c[g>>2]|0)){n=10;break}if((e[r>>1]|0)>(c[o>>2]|0)){n=10;break}b[u>>1]=d[(c[q>>2]|0)+(e[r>>1]|0)>>0]<<8|d[(c[q>>2]|0)+(e[r>>1]|0)+1>>0];b[n>>1]=d[(c[q>>2]|0)+((e[r>>1]|0)+2)>>0]<<8|d[(c[q>>2]|0)+((e[r>>1]|0)+2)+1>>0];if((e[u>>1]|0)>0){if((e[u>>1]|0)<=((e[r>>1]|0)+(e[n>>1]|0)+3|0)){n=14;break}}if(((e[r>>1]|0)+(e[n>>1]|0)|0)>(c[l>>2]|0)){n=14;break}c[m>>2]=(c[m>>2]|0)+(e[n>>1]|0);b[r>>1]=b[u>>1]|0}if((n|0)==10){c[h>>2]=dq(52657)|0;v=c[h>>2]|0;i=j;return v|0}else if((n|0)==14){c[h>>2]=dq(52664)|0;v=c[h>>2]|0;i=j;return v|0}else if((n|0)==16){if((c[m>>2]|0)<=(c[l>>2]|0)){b[(c[k>>2]|0)+14>>1]=(c[m>>2]|0)-(c[g>>2]|0);a[c[k>>2]>>0]=1;break}c[h>>2]=dq(52678)|0;v=c[h>>2]|0;i=j;return v|0}}}while(0);c[h>>2]=0;v=c[h>>2]|0;i=j;return v|0}function Mq(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;k=i;i=i+16|0;j=k+12|0;h=k;l=k+4|0;g=k+8|0;c[h>>2]=e;c[l>>2]=f;a[(c[h>>2]|0)+3>>0]=c[l>>2]>>3;c[l>>2]=c[l>>2]&-9;a[(c[h>>2]|0)+6>>0]=4-((d[(c[h>>2]|0)+3>>0]|0)<<2);c[g>>2]=c[(c[h>>2]|0)+52>>2];do{if((c[l>>2]|0)==5){a[(c[h>>2]|0)+2>>0]=1;a[(c[h>>2]|0)+4>>0]=a[(c[h>>2]|0)+3>>0]|0;b[(c[h>>2]|0)+8>>1]=b[(c[g>>2]|0)+28>>1]|0;b[(c[h>>2]|0)+10>>1]=b[(c[g>>2]|0)+30>>1]|0}else{if((c[l>>2]|0)==2){a[(c[h>>2]|0)+2>>0]=0;a[(c[h>>2]|0)+4>>0]=0;b[(c[h>>2]|0)+8>>1]=b[(c[g>>2]|0)+24>>1]|0;b[(c[h>>2]|0)+10>>1]=b[(c[g>>2]|0)+26>>1]|0;break}c[j>>2]=dq(52563)|0;e=c[j>>2]|0;i=k;return e|0}}while(0);a[(c[h>>2]|0)+7>>0]=a[(c[g>>2]|0)+21>>0]|0;c[j>>2]=0;e=c[j>>2]|0;i=k;return e|0}function Nq(){return 48}function Oq(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;p=j+20|0;l=j;m=j+4|0;n=j+8|0;o=j+12|0;k=j+16|0;c[p>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[k>>2]=h;g=(c[k>>2]|0)+0|0;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[(c[k>>2]|0)+20>>2]=c[p>>2];c[(c[k>>2]|0)+24>>2]=c[l>>2];a[(c[k>>2]|0)+28>>0]=c[m>>2];a[(c[k>>2]|0)+29>>0]=2;c[(c[k>>2]|0)+32>>2]=c[n>>2];c[(c[k>>2]|0)+36>>2]=c[o>>2];c[(c[k>>2]|0)+16>>2]=100;i=j;return}function Pq(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h+16|0;n=h;k=h+4|0;m=h+8|0;l=h+12|0;c[n>>2]=e;c[k>>2]=f;c[m>>2]=c[n>>2];c[l>>2]=0;if((c[(c[m>>2]|0)+40>>2]|0)!=0){c[j>>2]=0;n=c[j>>2]|0;i=h;return n|0}do{if((d[(c[m>>2]|0)+20>>0]|0|0)!=0){if((a[(c[m>>2]|0)+20>>0]&3|0)==0){if((b[(c[k>>2]|0)+24>>1]&4|0)==0){break}}c[j>>2]=0;n=c[j>>2]|0;i=h;return n|0}}while(0);c[(c[k>>2]|0)+12>>2]=0;n=(Uo(c[m>>2]|0)|0)!=0;f=c[k>>2]|0;if(n){if((Qq(f)|0)!=0){c[l>>2]=Rq(c[k>>2]|0)|0}if((c[l>>2]|0)==0){c[l>>2]=Sq(c[m>>2]|0,c[k>>2]|0,0,0)|0}}else{if((b[f+24>>1]&4|0)!=0){g=14}else{if((d[(c[m>>2]|0)+16>>0]|0|0)==3){g=14}}if((g|0)==14){c[l>>2]=Tq(c[m>>2]|0,1)|0}if((c[l>>2]|0)==0){if((c[(c[k>>2]|0)+20>>2]|0)>>>0>(c[(c[m>>2]|0)+24>>2]|0)>>>0){if((Qq(c[k>>2]|0)|0)!=0){c[l>>2]=Rq(c[k>>2]|0)|0}}}if((c[l>>2]|0)==0){c[l>>2]=Uq(c[m>>2]|0,c[k>>2]|0)|0}}if((c[l>>2]|0)==0){nh(c[k>>2]|0)}c[j>>2]=Ho(c[m>>2]|0,c[l>>2]|0)|0;n=c[j>>2]|0;i=h;return n|0}function Qq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;b=d+20|0;j=d;e=d+4|0;g=d+8|0;h=d+12|0;f=d+16|0;c[j>>2]=a;c[e>>2]=c[(c[j>>2]|0)+16>>2];c[h>>2]=c[(c[j>>2]|0)+20>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[e>>2]|0)+96>>2]|0)){a=7;break}c[g>>2]=(c[(c[e>>2]|0)+92>>2]|0)+((c[f>>2]|0)*48|0);if((c[(c[g>>2]|0)+20>>2]|0)>>>0>=(c[h>>2]|0)>>>0){if(0==(uh(c[(c[g>>2]|0)+16>>2]|0,c[h>>2]|0)|0)){a=5;break}}c[f>>2]=(c[f>>2]|0)+1}if((a|0)==5){c[b>>2]=1;j=c[b>>2]|0;i=d;return j|0}else if((a|0)==7){c[b>>2]=0;j=c[b>>2]|0;i=d;return j|0}return 0}function Rq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;g=e+24|0;b=e+16|0;f=e+8|0;k=e+12|0;j=e;h=e+20|0;c[g>>2]=a;c[b>>2]=0;c[f>>2]=c[(c[g>>2]|0)+16>>2];if((d[(c[f>>2]|0)+5>>0]|0|0)!=2){c[b>>2]=hr(c[f>>2]|0)|0;if((c[b>>2]|0)==0){c[k>>2]=c[(c[g>>2]|0)+4>>2];l=4+(c[(c[f>>2]|0)+152>>2]|0)|0;l=nL(c[(c[f>>2]|0)+52>>2]|0,0,l|0,((l|0)<0)<<31>>31|0)|0;a=j;c[a>>2]=l;c[a+4>>2]=D;c[h>>2]=c[k>>2];k=j;c[b>>2]=ir(c[(c[f>>2]|0)+68>>2]|0,c[k>>2]|0,c[k+4>>2]|0,c[(c[g>>2]|0)+20>>2]|0)|0;if((c[b>>2]|0)==0){a=c[(c[f>>2]|0)+68>>2]|0;h=c[h>>2]|0;k=c[(c[f>>2]|0)+152>>2]|0;l=j;l=dL(c[l>>2]|0,c[l+4>>2]|0,4,0)|0;c[b>>2]=nd(a,h,k,l,D)|0}}}if((c[b>>2]|0)!=0){l=c[b>>2]|0;i=e;return l|0}l=(c[f>>2]|0)+52|0;c[l>>2]=(c[l>>2]|0)+1;c[b>>2]=jr(c[f>>2]|0,c[(c[g>>2]|0)+20>>2]|0)|0;l=c[b>>2]|0;i=e;return l|0}function Sq(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+48|0;l=h+32|0;j=h+28|0;m=h+24|0;g=h+20|0;n=h+16|0;o=h+8|0;p=h+4|0;q=h;k=h+12|0;c[l>>2]=a;c[j>>2]=b;c[m>>2]=e;c[g>>2]=f;a:do{if((c[g>>2]|0)!=0){c[q>>2]=j;c[o>>2]=0;c[p>>2]=c[j>>2];while(1){a=c[p>>2]|0;c[c[q>>2]>>2]=a;if((a|0)==0){break a}if((c[(c[p>>2]|0)+20>>2]|0)>>>0<=(c[m>>2]|0)>>>0){c[q>>2]=(c[p>>2]|0)+12;c[o>>2]=(c[o>>2]|0)+1}c[p>>2]=c[(c[p>>2]|0)+12>>2]}}else{c[o>>2]=1}}while(0);a=(c[l>>2]|0)+192|0;c[a>>2]=(c[a>>2]|0)+(c[o>>2]|0);if((c[(c[j>>2]|0)+20>>2]|0)==1){Wq(c[j>>2]|0)}c[n>>2]=br(c[(c[l>>2]|0)+208>>2]|0,c[(c[l>>2]|0)+152>>2]|0,c[j>>2]|0,c[m>>2]|0,c[g>>2]|0,d[(c[l>>2]|0)+10>>0]|0)|0;if((c[n>>2]|0)!=0){a=c[n>>2]|0;i=h;return a|0}if((c[(c[l>>2]|0)+88>>2]|0)==0){a=c[n>>2]|0;i=h;return a|0}c[k>>2]=c[j>>2];while(1){if((c[k>>2]|0)==0){break}Bp(c[(c[l>>2]|0)+88>>2]|0,c[(c[k>>2]|0)+20>>2]|0,c[(c[k>>2]|0)+4>>2]|0);c[k>>2]=c[(c[k>>2]|0)+12>>2]}a=c[n>>2]|0;i=h;return a|0}function Tq(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+48|0;g=k+24|0;f=k+20|0;o=k+8|0;h=k+12|0;j=k+16|0;m=k;n=k+40|0;l=k+28|0;c[f>>2]=b;c[o>>2]=e;c[h>>2]=Yq(c[f>>2]|0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}do{if((a[(c[f>>2]|0)+7>>0]|0)==0){if((c[c[(c[f>>2]|0)+64>>2]>>2]|0)!=0){if((d[(c[f>>2]|0)+5>>0]|0)!=4){c[j>>2]=tp(c[(c[f>>2]|0)+60>>2]|0)|0;if(0==(c[j>>2]&512|0)){a[l+0>>0]=a[10992>>0]|0;a[l+1>>0]=a[10993>>0]|0;a[l+2>>0]=a[10994>>0]|0;a[l+3>>0]=a[10995>>0]|0;a[l+4>>0]=a[10996>>0]|0;a[l+5>>0]=a[10997>>0]|0;a[l+6>>0]=a[10998>>0]|0;a[l+7>>0]=a[10999>>0]|0;Xq(l+8|0,c[(c[f>>2]|0)+44>>2]|0);e=Gp(c[f>>2]|0)|0;b=m;c[b>>2]=e;c[b+4>>2]=D;b=m;c[h>>2]=xp(c[(c[f>>2]|0)+64>>2]|0,n,8,c[b>>2]|0,c[b+4>>2]|0)|0;if((c[h>>2]|0)==0){if(0==(XK(n,10992,8)|0)){b=m;c[h>>2]=nd(c[(c[f>>2]|0)+64>>2]|0,11208,1,c[b>>2]|0,c[b+4>>2]|0)|0}}if((c[h>>2]|0)!=0&(c[h>>2]|0)!=522){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}if((d[(c[f>>2]|0)+8>>0]|0)!=0){if(0==(c[j>>2]&1024|0)){c[h>>2]=cp(c[(c[f>>2]|0)+64>>2]|0,d[(c[f>>2]|0)+11>>0]|0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}}}b=(c[f>>2]|0)+80|0;c[h>>2]=nd(c[(c[f>>2]|0)+64>>2]|0,l,12,c[b>>2]|0,c[b+4>>2]|0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}}if(0==(c[j>>2]&1024|0)){c[h>>2]=cp(c[(c[f>>2]|0)+64>>2]|0,d[(c[f>>2]|0)+11>>0]|((d[(c[f>>2]|0)+11>>0]|0)==3?16:0))|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}}m=(c[f>>2]|0)+72|0;n=c[m+4>>2]|0;b=(c[f>>2]|0)+80|0;c[b>>2]=c[m>>2];c[b+4>>2]=n;if((c[o>>2]|0)==0){break}if(0!=(c[j>>2]&512|0)){break}c[(c[f>>2]|0)+44>>2]=0;c[h>>2]=Zq(c[f>>2]|0)|0;if((c[h>>2]|0)==0){break}c[g>>2]=c[h>>2];b=c[g>>2]|0;i=k;return b|0}}n=(c[f>>2]|0)+72|0;o=c[n+4>>2]|0;b=(c[f>>2]|0)+80|0;c[b>>2]=c[n>>2];c[b+4>>2]=o}}while(0);_q(c[(c[f>>2]|0)+204>>2]|0);a[(c[f>>2]|0)+16>>0]=4;c[g>>2]=0;b=c[g>>2]|0;i=k;return b|0}function Uq(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;m=g+32|0;l=g+24|0;f=g+16|0;n=g;j=g+20|0;k=g+8|0;h=g+28|0;c[m>>2]=d;c[l>>2]=e;c[f>>2]=0;if((c[c[(c[m>>2]|0)+60>>2]>>2]|0)==0){c[f>>2]=Vq(c[m>>2]|0,c[(c[m>>2]|0)+60>>2]|0,c[(c[m>>2]|0)+144>>2]|0)|0}do{if((c[f>>2]|0)==0){if((c[(c[m>>2]|0)+36>>2]|0)>>>0<(c[(c[m>>2]|0)+24>>2]|0)>>>0){if((c[(c[l>>2]|0)+12>>2]|0)==0){if(!((c[(c[l>>2]|0)+20>>2]|0)>>>0>(c[(c[m>>2]|0)+36>>2]|0)>>>0)){break}}e=c[(c[m>>2]|0)+152>>2]|0;e=nL(e|0,((e|0)<0)<<31>>31|0,c[(c[m>>2]|0)+24>>2]|0,0)|0;d=n;c[d>>2]=e;c[d+4>>2]=D;kq(c[(c[m>>2]|0)+60>>2]|0,5,n);c[(c[m>>2]|0)+36>>2]=c[(c[m>>2]|0)+24>>2]}}}while(0);while(1){if((c[f>>2]|0)!=0){h=20;break}if((c[l>>2]|0)==0){h=20;break}c[j>>2]=c[(c[l>>2]|0)+20>>2];if((c[j>>2]|0)>>>0<=(c[(c[m>>2]|0)+24>>2]|0)>>>0){if(0==(b[(c[l>>2]|0)+24>>1]&32|0)){n=c[(c[m>>2]|0)+152>>2]|0;n=nL((c[j>>2]|0)-1|0,0,n|0,((n|0)<0)<<31>>31|0)|0;d=k;c[d>>2]=n;c[d+4>>2]=D;if((c[(c[l>>2]|0)+20>>2]|0)==1){Wq(c[l>>2]|0)}c[h>>2]=c[(c[l>>2]|0)+4>>2];d=k;c[f>>2]=nd(c[(c[m>>2]|0)+60>>2]|0,c[h>>2]|0,c[(c[m>>2]|0)+152>>2]|0,c[d>>2]|0,c[d+4>>2]|0)|0;if((c[j>>2]|0)==1){d=(c[m>>2]|0)+100|0;e=(c[h>>2]|0)+24|0;n=d+16|0;do{a[d>>0]=a[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(n|0))}if((c[j>>2]|0)>>>0>(c[(c[m>>2]|0)+32>>2]|0)>>>0){c[(c[m>>2]|0)+32>>2]=c[j>>2]}d=(c[m>>2]|0)+192|0;c[d>>2]=(c[d>>2]|0)+1;Bp(c[(c[m>>2]|0)+88>>2]|0,c[j>>2]|0,c[(c[l>>2]|0)+4>>2]|0)}}c[l>>2]=c[(c[l>>2]|0)+12>>2]}if((h|0)==20){i=g;return c[f>>2]|0}return 0}function Vq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+12|0;h=f;g=f+4|0;e=f+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[g>>2]=c[g>>2]|30;c[e>>2]=wp(c[c[j>>2]>>2]|0,0,c[h>>2]|0,c[g>>2]|0,0)|0;i=f;return c[e>>2]|0}function Wq(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=(zo((c[(c[d>>2]|0)+16>>2]|0)+100|0)|0)+1;Xq((c[(c[d>>2]|0)+4>>2]|0)+24|0,c[e>>2]|0);Xq((c[(c[d>>2]|0)+4>>2]|0)+92|0,c[e>>2]|0);Xq((c[(c[d>>2]|0)+4>>2]|0)+96|0,3008005);i=b;return}function Xq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[c[f>>2]>>0]=(c[g>>2]|0)>>>24;a[(c[f>>2]|0)+1>>0]=(c[g>>2]|0)>>>16;a[(c[f>>2]|0)+2>>0]=(c[g>>2]|0)>>>8;a[(c[f>>2]|0)+3>>0]=c[g>>2];i=e;return}function Yq(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=0;if(0!=(Uo(c[e>>2]|0)|0)){e=c[d>>2]|0;i=b;return e|0}c[d>>2]=$q(c[e>>2]|0,4)|0;e=c[d>>2]|0;i=b;return e|0}function Zq(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;g=l+20|0;h=l;j=l+4|0;e=l+8|0;k=l+12|0;m=l+16|0;c[g>>2]=b;c[h>>2]=0;c[j>>2]=c[(c[g>>2]|0)+200>>2];c[e>>2]=c[(c[g>>2]|0)+152>>2];if((c[e>>2]|0)>>>0>(c[(c[g>>2]|0)+148>>2]|0)>>>0){c[e>>2]=c[(c[g>>2]|0)+148>>2]}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[g>>2]|0)+96>>2]|0)){break}b=(c[(c[g>>2]|0)+92>>2]|0)+((c[m>>2]|0)*48|0)+8|0;if((c[b>>2]|0)==0&(c[b+4>>2]|0)==0){o=(c[g>>2]|0)+72|0;n=c[o+4>>2]|0;b=(c[(c[g>>2]|0)+92>>2]|0)+((c[m>>2]|0)*48|0)+8|0;c[b>>2]=c[o>>2];c[b+4>>2]=n}c[m>>2]=(c[m>>2]|0)+1}b=Gp(c[g>>2]|0)|0;n=D;o=(c[g>>2]|0)+72|0;c[o>>2]=b;c[o+4>>2]=n;o=(c[g>>2]|0)+80|0;c[o>>2]=b;c[o+4>>2]=n;if((d[(c[g>>2]|0)+7>>0]|0|0)!=0){f=11}else{if((d[(c[g>>2]|0)+5>>0]|0|0)==4){f=11}else{if(((tp(c[(c[g>>2]|0)+60>>2]|0)|0)&512|0)!=0){f=11}else{b=(c[j>>2]|0)+0|0;m=b+12|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(m|0))}}}if((f|0)==11){o=c[j>>2]|0;a[o+0>>0]=a[10992>>0]|0;a[o+1>>0]=a[10993>>0]|0;a[o+2>>0]=a[10994>>0]|0;a[o+3>>0]=a[10995>>0]|0;a[o+4>>0]=a[10996>>0]|0;a[o+5>>0]=a[10997>>0]|0;a[o+6>>0]=a[10998>>0]|0;a[o+7>>0]=a[10999>>0]|0;Xq((c[j>>2]|0)+8|0,-1)}Bc(4,(c[g>>2]|0)+48|0);Xq((c[j>>2]|0)+12|0,c[(c[g>>2]|0)+48>>2]|0);Xq((c[j>>2]|0)+16|0,c[(c[g>>2]|0)+28>>2]|0);Xq((c[j>>2]|0)+20|0,c[(c[g>>2]|0)+148>>2]|0);Xq((c[j>>2]|0)+24|0,c[(c[g>>2]|0)+152>>2]|0);aL((c[j>>2]|0)+28|0,0,(c[e>>2]|0)-28|0)|0;c[k>>2]=0;while(1){if((c[h>>2]|0)!=0){f=17;break}if(!((c[k>>2]|0)>>>0<(c[(c[g>>2]|0)+148>>2]|0)>>>0)){f=17;break}o=(c[g>>2]|0)+72|0;c[h>>2]=nd(c[(c[g>>2]|0)+64>>2]|0,c[j>>2]|0,c[e>>2]|0,c[o>>2]|0,c[o+4>>2]|0)|0;o=(c[g>>2]|0)+72|0;n=o;n=dL(c[n>>2]|0,c[n+4>>2]|0,c[e>>2]|0,0)|0;c[o>>2]=n;c[o+4>>2]=D;c[k>>2]=(c[k>>2]|0)+(c[e>>2]|0)}if((f|0)==17){i=l;return c[h>>2]|0}return 0}function _q(a){a=a|0;var d=0,f=0,g=0;f=i;i=i+16|0;d=f+4|0;g=f;c[d>>2]=a;c[g>>2]=c[c[d>>2]>>2];while(1){if((c[g>>2]|0)==0){break}a=(c[g>>2]|0)+24|0;b[a>>1]=(e[a>>1]|0)&-5;c[g>>2]=c[(c[g>>2]|0)+32>>2]}c[(c[d>>2]|0)+8>>2]=c[(c[d>>2]|0)+4>>2];i=f;return}function $q(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;while(1){c[e>>2]=ar(c[f>>2]|0,c[g>>2]|0)|0;if((c[e>>2]|0)!=5){b=4;break}if((ub[c[(c[f>>2]|0)+176>>2]&63](c[(c[f>>2]|0)+180>>2]|0)|0)==0){b=4;break}}if((b|0)==4){i=d;return c[e>>2]|0}return 0}function ar(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;h=f+8|0;j=f;g=f+4|0;c[h>>2]=b;c[j>>2]=e;c[g>>2]=0;if((d[(c[h>>2]|0)+17>>0]|0|0)>=(c[j>>2]|0)){if((d[(c[h>>2]|0)+17>>0]|0|0)!=5){b=c[g>>2]|0;i=f;return b|0}}if((d[(c[h>>2]|0)+13>>0]|0|0)!=0){e=0}else{e=iq(c[(c[h>>2]|0)+60>>2]|0,c[j>>2]|0)|0}c[g>>2]=e;if((c[g>>2]|0)!=0){b=c[g>>2]|0;i=f;return b|0}if((d[(c[h>>2]|0)+17>>0]|0|0)==5){if((c[j>>2]|0)!=4){b=c[g>>2]|0;i=f;return b|0}}a[(c[h>>2]|0)+17>>0]=c[j>>2];b=c[g>>2]|0;i=f;return b|0}function br(e,f,g,h,j,k){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0;z=i;i=i+144|0;n=z+104|0;s=z+100|0;B=z+96|0;C=z+92|0;x=z+88|0;p=z+84|0;r=z+80|0;o=z+76|0;y=z+72|0;w=z+60|0;l=z+56|0;E=z+52|0;A=z+48|0;u=z+32|0;q=z+8|0;H=z+112|0;G=z+64|0;v=z+40|0;t=z+44|0;F=z;c[s>>2]=e;c[B>>2]=f;c[C>>2]=g;c[x>>2]=h;c[p>>2]=j;c[r>>2]=k;c[l>>2]=0;c[E>>2]=0;e=cr(c[s>>2]|0)|0;c[o>>2]=e;if(0!=(e|0)){c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}c[y>>2]=c[(c[s>>2]|0)+68>>2];if((c[y>>2]|0)==0){Xq(H,931071618|(a[1480]|0)==0);Xq(H+4|0,3007e3);Xq(H+8|0,c[B>>2]|0);Xq(H+12|0,c[(c[s>>2]|0)+104>>2]|0);if((c[(c[s>>2]|0)+104>>2]|0)==0){Bc(8,(c[s>>2]|0)+84|0)}e=H+16|0;f=(c[s>>2]|0)+84|0;a[e+0>>0]=a[f+0>>0]|0;a[e+1>>0]=a[f+1>>0]|0;a[e+2>>0]=a[f+2>>0]|0;a[e+3>>0]=a[f+3>>0]|0;a[e+4>>0]=a[f+4>>0]|0;a[e+5>>0]=a[f+5>>0]|0;a[e+6>>0]=a[f+6>>0]|0;a[e+7>>0]=a[f+7>>0]|0;Cq(1,H,24,0,G);Xq(H+24|0,c[G>>2]|0);Xq(H+28|0,c[G+4>>2]|0);c[(c[s>>2]|0)+36>>2]=c[B>>2];a[(c[s>>2]|0)+65>>0]=(a[1480]|0)==0;c[(c[s>>2]|0)+76>>2]=c[G>>2];c[(c[s>>2]|0)+80>>2]=c[G+4>>2];a[(c[s>>2]|0)+47>>0]=1;c[o>>2]=nd(c[(c[s>>2]|0)+8>>2]|0,H,32,0,0)|0;if((c[o>>2]|0)!=0){c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}if((d[(c[s>>2]|0)+48>>0]|0)!=0){if((c[r>>2]|0)!=0){c[o>>2]=cp(c[(c[s>>2]|0)+8>>2]|0,c[r>>2]&19)|0;if((c[o>>2]|0)!=0){c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}}}}c[q>>2]=c[s>>2];c[q+4>>2]=c[(c[s>>2]|0)+8>>2];f=q+8|0;c[f>>2]=0;c[f+4>>2]=0;c[q+16>>2]=c[r>>2];c[q+20>>2]=c[B>>2];f=(c[B>>2]|0)+24|0;f=nL((c[y>>2]|0)+1-1|0,0,f|0,((f|0)<0)<<31>>31|0)|0;f=dL(32,0,f|0,D|0)|0;e=u;c[e>>2]=f;c[e+4>>2]=D;c[A>>2]=(c[B>>2]|0)+24;c[w>>2]=c[C>>2];while(1){if((c[w>>2]|0)==0){break}c[y>>2]=(c[y>>2]|0)+1;if((c[p>>2]|0)!=0){G=(c[(c[w>>2]|0)+12>>2]|0)==0?c[x>>2]|0:0}else{G=0}c[v>>2]=G;e=u;c[o>>2]=dr(q,c[w>>2]|0,c[v>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;if((c[o>>2]|0)!=0){m=17;break}c[l>>2]=c[w>>2];f=c[A>>2]|0;e=u;f=dL(c[e>>2]|0,c[e+4>>2]|0,f|0,((f|0)<0)<<31>>31|0)|0;e=u;c[e>>2]=f;c[e+4>>2]=D;c[w>>2]=c[(c[w>>2]|0)+12>>2]}if((m|0)==17){c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}a:do{if((c[p>>2]|0)!=0){if((c[r>>2]&32|0)!=0){if((a[(c[s>>2]|0)+49>>0]|0)==0){c[o>>2]=cp(c[q+4>>2]|0,c[r>>2]&19)|0;break}c[t>>2]=up(c[(c[s>>2]|0)+8>>2]|0)|0;e=u;f=c[t>>2]|0;f=dL(c[e>>2]|0,c[e+4>>2]|0,f|0,((f|0)<0)<<31>>31|0)|0;f=$K(f|0,D|0,1,0)|0;e=c[t>>2]|0;e=lL(f|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;f=c[t>>2]|0;f=nL(e|0,D|0,f|0,((f|0)<0)<<31>>31|0)|0;e=q+8|0;c[e>>2]=f;c[e+4>>2]=D;while(1){f=u;h=c[f+4>>2]|0;e=q+8|0;g=c[e+4>>2]|0;if(!((h|0)<(g|0)|((h|0)==(g|0)?(c[f>>2]|0)>>>0<(c[e>>2]|0)>>>0:0))){break a}e=u;c[o>>2]=dr(q,c[l>>2]|0,c[x>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;if((c[o>>2]|0)!=0){break}f=c[A>>2]|0;e=u;f=dL(c[e>>2]|0,c[e+4>>2]|0,f|0,((f|0)<0)<<31>>31|0)|0;e=u;c[e>>2]=f;c[e+4>>2]=D;c[E>>2]=(c[E>>2]|0)+1}c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}}}while(0);if((c[p>>2]|0)!=0){if((d[(c[s>>2]|0)+47>>0]|0)!=0){e=(c[s>>2]|0)+16|0;f=c[e+4>>2]|0;if((f|0)>0|(f|0)==0&(c[e>>2]|0)>>>0>=0){e=(c[s>>2]|0)+16|0;h=c[e+4>>2]|0;f=F;c[f>>2]=c[e>>2];c[f+4>>2]=h;f=(c[B>>2]|0)+24|0;f=nL((c[y>>2]|0)+(c[E>>2]|0)+1-1|0,0,f|0,((f|0)<0)<<31>>31|0)|0;f=dL(32,0,f|0,D|0)|0;h=D;e=(c[s>>2]|0)+16|0;g=c[e+4>>2]|0;if((h|0)>(g|0)|((h|0)==(g|0)?f>>>0>(c[e>>2]|0)>>>0:0)){f=(c[B>>2]|0)+24|0;f=nL((c[y>>2]|0)+(c[E>>2]|0)+1-1|0,0,f|0,((f|0)<0)<<31>>31|0)|0;f=dL(32,0,f|0,D|0)|0;e=F;c[e>>2]=f;c[e+4>>2]=D}e=F;lq(c[s>>2]|0,c[e>>2]|0,c[e+4>>2]|0);a[(c[s>>2]|0)+47>>0]=0}}}c[y>>2]=c[(c[s>>2]|0)+68>>2];c[w>>2]=c[C>>2];while(1){if((c[w>>2]|0)==0){break}if((c[o>>2]|0)!=0){break}c[y>>2]=(c[y>>2]|0)+1;c[o>>2]=Eq(c[s>>2]|0,c[y>>2]|0,c[(c[w>>2]|0)+20>>2]|0)|0;c[w>>2]=c[(c[w>>2]|0)+12>>2]}while(1){if((c[o>>2]|0)!=0){break}if((c[E>>2]|0)<=0){break}c[y>>2]=(c[y>>2]|0)+1;c[E>>2]=(c[E>>2]|0)+ -1;c[o>>2]=Eq(c[s>>2]|0,c[y>>2]|0,c[(c[l>>2]|0)+20>>2]|0)|0}if((c[o>>2]|0)==0){b[(c[s>>2]|0)+66>>1]=c[B>>2]&65280|c[B>>2]>>16;c[(c[s>>2]|0)+68>>2]=c[y>>2];if((c[p>>2]|0)!=0){e=(c[s>>2]|0)+60|0;c[e>>2]=(c[e>>2]|0)+1;c[(c[s>>2]|0)+72>>2]=c[x>>2]}if((c[p>>2]|0)!=0){Fq(c[s>>2]|0);c[(c[s>>2]|0)+12>>2]=c[y>>2]}}c[n>>2]=c[o>>2];e=c[n>>2]|0;i=z;return e|0}function cr(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+48|0;d=j+32|0;h=j+28|0;g=j+24|0;e=j+20|0;l=j+16|0;n=j+8|0;k=j+4|0;m=j;f=j+12|0;c[h>>2]=a;c[g>>2]=0;if((b[(c[h>>2]|0)+40>>1]|0)==0){c[l>>2]=tq(c[h>>2]|0)|0;do{if((c[c[l>>2]>>2]|0)>>>0>0){Bc(4,n);c[g>>2]=oq(c[h>>2]|0,4,4)|0;if((c[g>>2]|0)!=0){if((c[g>>2]|0)==5){break}c[d>>2]=c[g>>2];n=c[d>>2]|0;i=j;return n|0}c[m>>2]=(c[h>>2]|0)+84;a=(c[h>>2]|0)+104|0;c[a>>2]=(c[a>>2]|0)+1;c[(c[h>>2]|0)+68>>2]=0;a=c[m>>2]|0;Xq(a,1+(zo(c[m>>2]|0)|0)|0);c[(c[m>>2]|0)+4>>2]=c[n>>2];Fq(c[h>>2]|0);c[c[l>>2]>>2]=0;c[(c[l>>2]|0)+8>>2]=0;c[k>>2]=2;while(1){if((c[k>>2]|0)>=5){break}c[(c[l>>2]|0)+4+(c[k>>2]<<2)>>2]=-1;c[k>>2]=(c[k>>2]|0)+1}bp(c[h>>2]|0,4,4)}}while(0);$o(c[h>>2]|0,3);b[(c[h>>2]|0)+40>>1]=-1;c[e>>2]=0;do{m=c[h>>2]|0;n=(c[e>>2]|0)+1|0;c[e>>2]=n;c[g>>2]=gr(m,f,1,n)|0}while((c[g>>2]|0)==-1)}c[d>>2]=c[g>>2];n=c[d>>2]|0;i=j;return n|0}function dr(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+64|0;h=l+28|0;g=l+16|0;p=l+8|0;o=l+12|0;k=l;j=l+20|0;m=l+24|0;n=l+32|0;c[g>>2]=a;c[p>>2]=b;c[o>>2]=d;a=k;c[a>>2]=e;c[a+4>>2]=f;c[m>>2]=c[(c[p>>2]|0)+4>>2];er(c[c[g>>2]>>2]|0,c[(c[p>>2]|0)+20>>2]|0,c[o>>2]|0,c[m>>2]|0,n);a=k;c[j>>2]=fr(c[g>>2]|0,n,24,c[a>>2]|0,c[a+4>>2]|0)|0;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];p=c[h>>2]|0;i=l;return p|0}else{a=c[g>>2]|0;n=c[m>>2]|0;o=c[(c[g>>2]|0)+20>>2]|0;p=k;p=dL(c[p>>2]|0,c[p+4>>2]|0,24,0)|0;c[j>>2]=fr(a,n,o,p,D)|0;c[h>>2]=c[j>>2];p=c[h>>2]|0;i=l;return p|0}return 0}function er(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;m=j+24|0;q=j;p=j+4|0;n=j+8|0;l=j+12|0;o=j+16|0;k=j+20|0;c[m>>2]=b;c[q>>2]=e;c[p>>2]=f;c[n>>2]=g;c[l>>2]=h;c[k>>2]=(c[m>>2]|0)+76;Xq(c[l>>2]|0,c[q>>2]|0);Xq((c[l>>2]|0)+4|0,c[p>>2]|0);b=(c[l>>2]|0)+8|0;e=(c[m>>2]|0)+84|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0;a[b+4>>0]=a[e+4>>0]|0;a[b+5>>0]=a[e+5>>0]|0;a[b+6>>0]=a[e+6>>0]|0;a[b+7>>0]=a[e+7>>0]|0;c[o>>2]=(d[(c[m>>2]|0)+65>>0]|0)==((a[1480]|0)==0|0)&1;Cq(c[o>>2]|0,c[l>>2]|0,8,c[k>>2]|0,c[k>>2]|0);Cq(c[o>>2]|0,c[n>>2]|0,c[(c[m>>2]|0)+36>>2]|0,c[k>>2]|0,c[k>>2]|0);Xq((c[l>>2]|0)+16|0,c[c[k>>2]>>2]|0);Xq((c[l>>2]|0)+20|0,c[(c[k>>2]|0)+4>>2]|0);i=j;return}function fr(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;h=j+28|0;o=j+16|0;n=j+8|0;g=j+12|0;l=j;m=j+20|0;k=j+24|0;c[o>>2]=a;c[n>>2]=b;c[g>>2]=d;b=l;c[b>>2]=e;c[b+4>>2]=f;b=l;e=c[b+4>>2]|0;a=(c[o>>2]|0)+8|0;d=c[a+4>>2]|0;do{if((e|0)<(d|0)|((e|0)==(d|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)){e=l;b=c[g>>2]|0;b=dL(c[e>>2]|0,c[e+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;e=D;a=(c[o>>2]|0)+8|0;d=c[a+4>>2]|0;if((e|0)>(d|0)|((e|0)==(d|0)?b>>>0>=(c[a>>2]|0)>>>0:0)){b=(c[o>>2]|0)+8|0;a=l;a=$K(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[k>>2]=a;a=l;c[m>>2]=nd(c[(c[o>>2]|0)+4>>2]|0,c[n>>2]|0,c[k>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;if((c[m>>2]|0)!=0){c[h>>2]=c[m>>2];a=c[h>>2]|0;i=j;return a|0}b=c[k>>2]|0;a=l;b=dL(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=l;c[a>>2]=b;c[a+4>>2]=D;c[g>>2]=(c[g>>2]|0)-(c[k>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);c[m>>2]=cp(c[(c[o>>2]|0)+4>>2]|0,c[(c[o>>2]|0)+16>>2]&19)|0;if((c[g>>2]|0)!=0){if((c[m>>2]|0)==0){break}}c[h>>2]=c[m>>2];a=c[h>>2]|0;i=j;return a|0}}}while(0);a=l;c[m>>2]=nd(c[(c[o>>2]|0)+4>>2]|0,c[n>>2]|0,c[g>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[h>>2]=c[m>>2];a=c[h>>2]|0;i=j;return a|0}function gr(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=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;j=i;i=i+48|0;h=j+44|0;p=j+40|0;t=j+36|0;s=j+32|0;v=j+28|0;q=j+24|0;m=j+20|0;n=j+12|0;o=j+8|0;l=j+4|0;u=j;k=j+16|0;c[p>>2]=d;c[t>>2]=e;c[s>>2]=f;c[v>>2]=g;c[l>>2]=0;if((c[v>>2]|0)>5){c[u>>2]=1;if((c[v>>2]|0)>100){c[h>>2]=15;d=c[h>>2]|0;i=j;return d|0}if((c[v>>2]|0)>=10){c[u>>2]=((c[v>>2]|0)-9|0)*238}Eg(c[c[p>>2]>>2]|0,c[u>>2]|0)|0}if((c[s>>2]|0)==0){c[l>>2]=qq(c[p>>2]|0,c[t>>2]|0)|0;do{if((c[l>>2]|0)==5){if((c[c[(c[p>>2]|0)+32>>2]>>2]|0)==0){c[l>>2]=-1;break}d=_o(c[p>>2]|0,2)|0;c[l>>2]=d;if(0==(d|0)){$o(c[p>>2]|0,2);c[l>>2]=-1;break}if((c[l>>2]|0)==5){c[l>>2]=261}}}while(0);if((c[l>>2]|0)!=0){c[h>>2]=c[l>>2];d=c[h>>2]|0;i=j;return d|0}}c[q>>2]=tq(c[p>>2]|0)|0;do{if((c[s>>2]|0)==0){if((c[c[q>>2]>>2]|0)==(c[(c[p>>2]|0)+68>>2]|0)){c[l>>2]=_o(c[p>>2]|0,3)|0;Gq(c[p>>2]|0);if((c[l>>2]|0)!=0){if((c[l>>2]|0)==5){break}c[h>>2]=c[l>>2];d=c[h>>2]|0;i=j;return d|0}d=fq(c[p>>2]|0)|0;d=(XK(d,(c[p>>2]|0)+52|0,48)|0)!=0;k=c[p>>2]|0;if(d){$o(k,3);c[h>>2]=-1;d=c[h>>2]|0;i=j;return d|0}else{b[k+40>>1]=0;c[h>>2]=0;d=c[h>>2]|0;i=j;return d|0}}}}while(0);c[m>>2]=0;c[n>>2]=0;c[o>>2]=1;while(1){if((c[o>>2]|0)>=5){break}c[k>>2]=c[(c[q>>2]|0)+4+(c[o>>2]<<2)>>2];if((c[m>>2]|0)>>>0<=(c[k>>2]|0)>>>0){if((c[k>>2]|0)>>>0<=(c[(c[p>>2]|0)+68>>2]|0)>>>0){c[m>>2]=c[k>>2];c[n>>2]=c[o>>2]}}c[o>>2]=(c[o>>2]|0)+1}a:do{if((a[(c[p>>2]|0)+46>>0]&2|0)==0){if(!((c[m>>2]|0)>>>0<(c[(c[p>>2]|0)+68>>2]|0)>>>0)){if((c[n>>2]|0)!=0){break}}c[o>>2]=1;while(1){if((c[o>>2]|0)>=5){break a}c[l>>2]=oq(c[p>>2]|0,3+(c[o>>2]|0)|0,1)|0;if((c[l>>2]|0)==0){r=37;break}if((c[l>>2]|0)!=5){break}c[o>>2]=(c[o>>2]|0)+1}if((r|0)==37){d=c[(c[p>>2]|0)+68>>2]|0;c[(c[q>>2]|0)+4+(c[o>>2]<<2)>>2]=d;c[m>>2]=d;c[n>>2]=c[o>>2];bp(c[p>>2]|0,3+(c[o>>2]|0)|0,1);break}c[h>>2]=c[l>>2];d=c[h>>2]|0;i=j;return d|0}}while(0);if((c[n>>2]|0)==0){c[h>>2]=(c[l>>2]|0)==5?-1:520;d=c[h>>2]|0;i=j;return d|0}c[l>>2]=_o(c[p>>2]|0,3+(c[n>>2]|0)|0)|0;if((c[l>>2]|0)!=0){c[h>>2]=(c[l>>2]|0)==5?-1:c[l>>2]|0;d=c[h>>2]|0;i=j;return d|0}Gq(c[p>>2]|0);if((c[(c[q>>2]|0)+4+(c[n>>2]<<2)>>2]|0)==(c[m>>2]|0)){d=fq(c[p>>2]|0)|0;if((XK(d,(c[p>>2]|0)+52|0,48)|0)==0){b[(c[p>>2]|0)+40>>1]=c[n>>2];c[h>>2]=c[l>>2];d=c[h>>2]|0;i=j;return d|0}}$o(c[p>>2]|0,3+(c[n>>2]|0)|0);c[h>>2]=-1;d=c[h>>2]|0;i=j;return d|0}function hr(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;f=b+4|0;e=b;c[f>>2]=a;c[e>>2]=0;if((c[c[(c[f>>2]|0)+68>>2]>>2]|0)!=0){f=c[e>>2]|0;i=b;return f|0}if((d[(c[f>>2]|0)+5>>0]|0|0)!=4){if((d[(c[f>>2]|0)+21>>0]|0|0)==0){c[e>>2]=Vq(c[f>>2]|0,c[(c[f>>2]|0)+68>>2]|0,8192)|0;f=c[e>>2]|0;i=b;return f|0}}jp(c[(c[f>>2]|0)+68>>2]|0);f=c[e>>2]|0;i=b;return f|0}function ir(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;h=f+12|0;j=f;k=f+8|0;g=f+16|0;c[h>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;c[k>>2]=e;Xq(g,c[k>>2]|0);a=j;a=nd(c[h>>2]|0,g,4,c[a>>2]|0,c[a+4>>2]|0)|0;i=f;return a|0}function jr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;f=d+16|0;j=d;g=d+4|0;e=d+8|0;h=d+12|0;c[f>>2]=a;c[j>>2]=b;c[e>>2]=0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+96>>2]|0)){break}c[h>>2]=(c[(c[f>>2]|0)+92>>2]|0)+((c[g>>2]|0)*48|0);if((c[j>>2]|0)>>>0<=(c[(c[h>>2]|0)+20>>2]|0)>>>0){a=sh(c[(c[h>>2]|0)+16>>2]|0,c[j>>2]|0)|0;c[e>>2]=c[e>>2]|a}c[g>>2]=(c[g>>2]|0)+1}i=d;return c[e>>2]|0}function kr(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;c[b>>2]=(c[b>>2]|0)+((1&c[b>>2]>>6)*9|0);i=d;return c[b>>2]&15|0}function lr(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=b;c[f>>2]=d;while(1){if((c[f>>2]|0)>0){b=(a[(c[g>>2]|0)+((c[f>>2]|0)-1)>>0]|0)==32}else{b=0}d=c[f>>2]|0;if(!b){break}c[f>>2]=d+ -1}i=e;return(d|0)==0|0}function mr(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+4|0;c[e>>2]=a;c[d>>2]=c[e>>2];zc(21,11488,d);i=b;return}function nr(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;n=l+20|0;k=l;g=l+4|0;m=l+8|0;h=l+12|0;j=l+16|0;c[n>>2]=a;c[k>>2]=b;c[g>>2]=e;c[m>>2]=f;c[h>>2]=0;if((c[n>>2]|0)==0){a=c[h>>2]|0;i=l;return a|0}c[j>>2]=c[(c[n>>2]|0)+4>>2];Uc(c[n>>2]|0);if((d[(c[j>>2]|0)+20>>0]|0|0)!=0){c[h>>2]=6;a=c[h>>2]|0;i=l;return a|0}else{c[h>>2]=or(c[c[j>>2]>>2]|0,c[k>>2]|0,c[g>>2]|0,c[m>>2]|0)|0;a=c[h>>2]|0;i=l;return a|0}return 0}function or(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;j=g+16|0;k=g;l=g+4|0;m=g+8|0;h=g+12|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[h>>2]=0;if((c[(c[j>>2]|0)+208>>2]|0)==0){a=c[h>>2]|0;i=g;return a|0}c[h>>2]=jq(c[(c[j>>2]|0)+208>>2]|0,c[k>>2]|0,c[(c[j>>2]|0)+176>>2]|0,c[(c[j>>2]|0)+180>>2]|0,d[(c[j>>2]|0)+9>>0]|0,c[(c[j>>2]|0)+152>>2]|0,c[(c[j>>2]|0)+200>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;a=c[h>>2]|0;i=g;return a|0}function pr(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;g=h+20|0;n=h;m=h+4|0;k=h+8|0;l=h+12|0;j=h+16|0;c[n>>2]=b;c[m>>2]=d;c[k>>2]=e;c[l>>2]=f;c[j>>2]=c[(c[n>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[j>>2]|0)==0){f=7;break}if((Tb(c[(c[j>>2]|0)+24>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)==0){if((a[(c[(c[j>>2]|0)+24>>2]|0)+(c[l>>2]|0)>>0]|0)==0){f=5;break}}c[j>>2]=c[(c[j>>2]|0)+28>>2]}if((f|0)==5){c[g>>2]=c[j>>2];n=c[g>>2]|0;i=h;return n|0}else if((f|0)==7){c[g>>2]=0;n=c[g>>2]|0;i=h;return n|0}return 0}function qr(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;k=j+12|0;m=j;l=j+4|0;o=j+16|0;n=j+8|0;c[m>>2]=f;c[l>>2]=g;a[o>>0]=h;h=c[m>>2]|0;if((c[l>>2]|0)==-2){if((c[h+12>>2]|0)==0){l=(c[(c[m>>2]|0)+16>>2]|0)==0}else{l=0}c[k>>2]=l?0:6;f=c[k>>2]|0;i=j;return f|0}if((b[h>>1]|0)!=(c[l>>2]|0)){if((b[c[m>>2]>>1]|0)>=0){c[k>>2]=0;f=c[k>>2]|0;i=j;return f|0}}if((b[c[m>>2]>>1]|0)==(c[l>>2]|0)){c[n>>2]=4}else{c[n>>2]=1}if((d[o>>0]|0)==(b[(c[m>>2]|0)+2>>1]&3|0)){c[n>>2]=(c[n>>2]|0)+2}else{if((d[o>>0]&e[(c[m>>2]|0)+2>>1]&2|0)!=0){c[n>>2]=(c[n>>2]|0)+1}}c[k>>2]=c[n>>2];f=c[k>>2]|0;i=j;return f|0}function rr(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;k=f+16|0;h=f;g=f+4|0;l=f+8|0;m=f+20|0;j=f+12|0;c[k>>2]=b;c[h>>2]=e;c[l>>2]=Ub(c[(c[h>>2]|0)+24>>2]|0)|0;a[m>>0]=a[c[(c[h>>2]|0)+24>>2]>>0]|0;c[j>>2]=((d[784+(d[m>>0]|0)>>0]|0)+(c[l>>2]|0)|0)%23|0;c[g>>2]=pr(c[k>>2]|0,c[j>>2]|0,c[(c[h>>2]|0)+24>>2]|0,c[l>>2]|0)|0;if((c[g>>2]|0)!=0){c[(c[h>>2]|0)+8>>2]=c[(c[g>>2]|0)+8>>2];c[(c[g>>2]|0)+8>>2]=c[h>>2];i=f;return}else{c[(c[h>>2]|0)+8>>2]=0;c[(c[h>>2]|0)+28>>2]=c[(c[k>>2]|0)+(c[j>>2]<<2)>>2];c[(c[k>>2]|0)+(c[j>>2]<<2)>>2]=c[h>>2];i=f;return}}function sr(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;k=f;j=f+4|0;h=f+8|0;c[k>>2]=a;c[j>>2]=e;if((b[(c[k>>2]|0)+28>>1]&2|0)!=0){if((d[(c[k>>2]|0)+30>>0]|0|0)!=(c[j>>2]|0)){c[h>>2]=tr(c[k>>2]|0,c[j>>2]&255)|0;c[g>>2]=c[h>>2];a=c[g>>2]|0;i=f;return a|0}}c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}function tr(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;o=i;i=i+48|0;j=o+40|0;l=o+36|0;k=o+44|0;t=o+32|0;p=o+28|0;m=o+24|0;n=o+20|0;h=o+12|0;q=o+8|0;u=o+45|0;v=o+4|0;r=o;s=o+16|0;c[l>>2]=f;a[k>>0]=g;if((d[(c[l>>2]|0)+30>>0]|0|0)!=1){if((d[k>>0]|0|0)!=1){c[v>>2]=ur(c[l>>2]|0)|0;if((c[v>>2]|0)!=0){c[j>>2]=7;f=c[j>>2]|0;i=o;return f|0}c[m>>2]=c[(c[l>>2]|0)+4>>2];c[n>>2]=(c[m>>2]|0)+(c[(c[l>>2]|0)+24>>2]&-2);while(1){if(!((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)){break}a[u>>0]=a[c[m>>2]>>0]|0;a[c[m>>2]>>0]=a[(c[m>>2]|0)+1>>0]|0;c[m>>2]=(c[m>>2]|0)+1;v=a[u>>0]|0;f=c[m>>2]|0;c[m>>2]=f+1;a[f>>0]=v}a[(c[l>>2]|0)+30>>0]=a[k>>0]|0}else{w=9}}else{w=9}if((w|0)==9){g=(c[l>>2]|0)+24|0;u=c[g>>2]|0;if((d[k>>0]|0|0)==1){c[g>>2]=u&-2;c[t>>2]=(c[(c[l>>2]|0)+24>>2]<<1)+1}else{c[t>>2]=(u<<1)+2}c[m>>2]=c[(c[l>>2]|0)+4>>2];c[n>>2]=(c[m>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);c[p>>2]=$e(c[c[l>>2]>>2]|0,c[t>>2]|0)|0;if((c[p>>2]|0)==0){c[j>>2]=7;f=c[j>>2]|0;i=o;return f|0}c[h>>2]=c[p>>2];if((d[(c[l>>2]|0)+30>>0]|0|0)==1){a:do{if((d[k>>0]|0|0)==2){while(1){if(!((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)){break a}f=c[m>>2]|0;c[m>>2]=f+1;c[q>>2]=d[f>>0]|0;do{if((c[q>>2]|0)>>>0>=192){c[q>>2]=d[11592+((c[q>>2]|0)-192)>>0]|0;while(1){if((c[m>>2]|0)!=(c[n>>2]|0)){r=(a[c[m>>2]>>0]&192|0)==128}else{r=0}s=c[q>>2]|0;if(!r){break}f=c[m>>2]|0;c[m>>2]=f+1;c[q>>2]=(s<<6)+(63&(d[f>>0]|0))}if(!(s>>>0<128)){if((c[q>>2]&-2048|0)!=55296){if((c[q>>2]&-2|0)!=65534){break}}}c[q>>2]=65533}}while(0);r=c[q>>2]|0;if((c[q>>2]|0)>>>0<=65535){w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=r&255;w=(c[q>>2]|0)>>>8&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}else{f=(r>>>10&63)+(((c[q>>2]|0)-65536|0)>>>10&192)&255;w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=f;w=216+(((c[q>>2]|0)-65536|0)>>>18&3)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;f=c[q>>2]&255;w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=f;w=220+((c[q>>2]|0)>>>8&3)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}}}else{while(1){if(!((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)){break a}f=c[m>>2]|0;c[m>>2]=f+1;c[q>>2]=d[f>>0]|0;do{if((c[q>>2]|0)>>>0>=192){c[q>>2]=d[11592+((c[q>>2]|0)-192)>>0]|0;while(1){if((c[m>>2]|0)!=(c[n>>2]|0)){s=(a[c[m>>2]>>0]&192|0)==128}else{s=0}r=c[q>>2]|0;if(!s){break}f=c[m>>2]|0;c[m>>2]=f+1;c[q>>2]=(r<<6)+(63&(d[f>>0]|0))}if(!(r>>>0<128)){if((c[q>>2]&-2048|0)!=55296){if((c[q>>2]&-2|0)!=65534){break}}}c[q>>2]=65533}}while(0);r=c[q>>2]|0;if((c[q>>2]|0)>>>0<=65535){w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=r>>>8&255;w=c[q>>2]&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}else{w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=216+((r-65536|0)>>>18&3);w=((c[q>>2]|0)>>>10&63)+(((c[q>>2]|0)-65536|0)>>>10&192)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;f=220+((c[q>>2]|0)>>>8&3)&255;w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=f;w=c[q>>2]&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}}}}while(0);c[(c[l>>2]|0)+24>>2]=(c[h>>2]|0)-(c[p>>2]|0);f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=0}else{b:do{if((d[(c[l>>2]|0)+30>>0]|0|0)==2){while(1){if(!((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)){break b}f=c[m>>2]|0;c[m>>2]=f+1;c[q>>2]=d[f>>0]|0;f=c[m>>2]|0;c[m>>2]=f+1;c[q>>2]=(c[q>>2]|0)+((d[f>>0]|0)<<8);if((c[q>>2]|0)>>>0>=55296&(c[q>>2]|0)>>>0<57344){if((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0){f=c[m>>2]|0;c[m>>2]=f+1;c[r>>2]=d[f>>0]|0;f=c[m>>2]|0;c[m>>2]=f+1;c[r>>2]=(c[r>>2]|0)+((d[f>>0]|0)<<8);c[q>>2]=(c[r>>2]&1023)+((c[q>>2]&63)<<10)+((c[q>>2]&960)+64<<10)}}t=c[q>>2]|0;if((c[q>>2]|0)>>>0<128){f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=t&255;continue}s=c[q>>2]|0;if(t>>>0<2048){w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=192+(s>>>6&31&255);w=128+(c[q>>2]&63&255)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}t=c[q>>2]|0;if(s>>>0<65536){f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=224+(t>>>12&15&255);f=128+((c[q>>2]|0)>>>6&63&255)&255;w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=f;w=128+(c[q>>2]&63&255)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}else{w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=240+(t>>>18&7&255);w=128+((c[q>>2]|0)>>>12&63&255)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;f=128+((c[q>>2]|0)>>>6&63&255)&255;w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=f;w=128+(c[q>>2]&63&255)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}}}else{while(1){if(!((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)){break b}f=c[m>>2]|0;c[m>>2]=f+1;c[q>>2]=(d[f>>0]|0)<<8;f=c[m>>2]|0;c[m>>2]=f+1;c[q>>2]=(c[q>>2]|0)+(d[f>>0]|0);if((c[q>>2]|0)>>>0>=55296&(c[q>>2]|0)>>>0<57344){if((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0){f=c[m>>2]|0;c[m>>2]=f+1;c[s>>2]=(d[f>>0]|0)<<8;f=c[m>>2]|0;c[m>>2]=f+1;c[s>>2]=(c[s>>2]|0)+(d[f>>0]|0);c[q>>2]=(c[s>>2]&1023)+((c[q>>2]&63)<<10)+((c[q>>2]&960)+64<<10)}}t=c[q>>2]|0;if((c[q>>2]|0)>>>0<128){f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=t&255;continue}r=c[q>>2]|0;if(t>>>0<2048){w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=192+(r>>>6&31&255);w=128+(c[q>>2]&63&255)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}t=c[q>>2]|0;if(r>>>0<65536){f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=224+(t>>>12&15&255);f=128+((c[q>>2]|0)>>>6&63&255)&255;w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=f;w=128+(c[q>>2]&63&255)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}else{w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=240+(t>>>18&7&255);w=128+((c[q>>2]|0)>>>12&63&255)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;f=128+((c[q>>2]|0)>>>6&63&255)&255;w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=f;w=128+(c[q>>2]&63&255)&255;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=w;continue}}}}while(0);c[(c[l>>2]|0)+24>>2]=(c[h>>2]|0)-(c[p>>2]|0)}a[c[h>>2]>>0]=0;Gd(c[l>>2]|0);f=(c[l>>2]|0)+28|0;b[f>>1]=(e[f>>1]|0)&-7169;a[(c[l>>2]|0)+30>>0]=a[k>>0]|0;f=(c[l>>2]|0)+28|0;b[f>>1]=e[f>>1]|0|512;c[(c[l>>2]|0)+4>>2]=c[p>>2];c[(c[l>>2]|0)+36>>2]=c[(c[l>>2]|0)+4>>2]}c[j>>2]=0;f=c[j>>2]|0;i=o;return f|0}function ur(d){d=d|0;var f=0,g=0,h=0,j=0;h=i;i=i+16|0;g=h+8|0;f=h;j=h+4|0;c[f>>2]=d;if((b[(c[f>>2]|0)+28>>1]&16384|0)!=0){Id(c[f>>2]|0)|0}c[j>>2]=e[(c[f>>2]|0)+28>>1]|0;do{if((c[j>>2]&18|0)!=0){if((c[(c[f>>2]|0)+4>>2]|0)!=(c[(c[f>>2]|0)+36>>2]|0)){if((ue(c[f>>2]|0,(c[(c[f>>2]|0)+24>>2]|0)+2|0,1)|0)==0){a[(c[(c[f>>2]|0)+4>>2]|0)+(c[(c[f>>2]|0)+24>>2]|0)>>0]=0;a[(c[(c[f>>2]|0)+4>>2]|0)+((c[(c[f>>2]|0)+24>>2]|0)+1)>>0]=0;j=(c[f>>2]|0)+28|0;b[j>>1]=e[j>>1]|0|512;break}c[g>>2]=7;j=c[g>>2]|0;i=h;return j|0}}}while(0);c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}function vr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=c[(c[g>>2]|0)+32>>2];if((c[e>>2]|0)==0){i=d;return}g=c[e>>2]|0;c[g>>2]=(c[g>>2]|0)+ -1;if((c[c[e>>2]>>2]|0)!=0){i=d;return}rb[c[(c[e>>2]|0)+4>>2]&31](c[(c[e>>2]|0)+8>>2]|0);cc(c[f>>2]|0,c[e>>2]|0);i=d;return}function wr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b;f=b+4|0;g=b+8|0;c[e>>2]=a;if((c[(c[e>>2]|0)+4>>2]|0)!=0){c[d>>2]=1;g=c[d>>2]|0;i=b;return g|0}c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[e>>2]|0)+20>>2]|0)){a=9;break}c[g>>2]=c[(c[(c[e>>2]|0)+16>>2]|0)+(c[f>>2]<<4)+4>>2];if((c[g>>2]|0)!=0){if((Lr(c[g>>2]|0)|0)!=0){a=7;break}}c[f>>2]=(c[f>>2]|0)+1}if((a|0)==7){c[d>>2]=1;g=c[d>>2]|0;i=b;return g|0}else if((a|0)==9){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}return 0}function xr(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;l=f;k=f+4|0;h=f+8|0;j=f+12|0;c[g>>2]=b;c[l>>2]=e;c[h>>2]=0;Ih();Yb(c[g>>2]|0);c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[g>>2]|0)+20>>2]|0)){break}c[j>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<4)+4>>2];if((c[j>>2]|0)!=0){if((Ir(c[j>>2]|0)|0)!=0){c[h>>2]=1}vd(c[j>>2]|0,c[l>>2]|0)|0}c[k>>2]=(c[k>>2]|0)+1}Jr(c[g>>2]|0)|0;Jh();if((c[(c[g>>2]|0)+24>>2]&2|0)!=0){if((d[(c[g>>2]|0)+137>>0]|0)==0){yf(c[g>>2]|0);hd(c[g>>2]|0)}}b=(c[g>>2]|0)+496|0;c[b>>2]=0;c[b+4>>2]=0;b=(c[g>>2]|0)+504|0;c[b>>2]=0;c[b+4>>2]=0;b=(c[g>>2]|0)+24|0;c[b>>2]=c[b>>2]&-16777217;if((c[(c[g>>2]|0)+192>>2]|0)==0){i=f;return}if((c[h>>2]|0)==0){if((a[(c[g>>2]|0)+62>>0]|0)!=0){i=f;return}}rb[c[(c[g>>2]|0)+192>>2]&31](c[(c[g>>2]|0)+188>>2]|0);i=f;return}function yr(b){b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+4|0;f=e;c[d>>2]=b;while(1){b=c[d>>2]|0;if((c[(c[d>>2]|0)+480>>2]|0)==0){break}c[f>>2]=c[b+480>>2];c[(c[d>>2]|0)+480>>2]=c[(c[f>>2]|0)+24>>2];cc(c[d>>2]|0,c[f>>2]|0)}c[b+488>>2]=0;c[(c[d>>2]|0)+492>>2]=0;a[(c[d>>2]|0)+69>>0]=0;i=e;return}function zr(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+12|0;g=f;h=f+4|0;j=f+8|0;c[e>>2]=b;c[g>>2]=c[(c[e>>2]|0)+4>>2];Uc(c[e>>2]|0);c[h>>2]=c[(c[g>>2]|0)+8>>2];while(1){if((c[h>>2]|0)==0){break}c[j>>2]=c[h>>2];c[h>>2]=c[(c[h>>2]|0)+8>>2];if((c[c[j>>2]>>2]|0)!=(c[e>>2]|0)){continue}Dr(c[j>>2]|0)|0}vd(c[e>>2]|0,0)|0;if((a[(c[e>>2]|0)+9>>0]|0)!=0){if((Er(c[g>>2]|0)|0)!=0){d=7}}else{d=7}if((d|0)==7){Ao(c[c[g>>2]>>2]|0)|0;if((c[(c[g>>2]|0)+52>>2]|0)!=0){if((c[(c[g>>2]|0)+48>>2]|0)!=0){rb[c[(c[g>>2]|0)+52>>2]&31](c[(c[g>>2]|0)+48>>2]|0)}}cc(0,c[(c[g>>2]|0)+48>>2]|0);ah(c[g>>2]|0);oc(c[g>>2]|0)}if((c[(c[e>>2]|0)+24>>2]|0)!=0){c[(c[(c[e>>2]|0)+24>>2]|0)+20>>2]=c[(c[e>>2]|0)+20>>2]}if((c[(c[e>>2]|0)+20>>2]|0)==0){b=c[e>>2]|0;oc(b);i=f;return 0}c[(c[(c[e>>2]|0)+20>>2]|0)+24>>2]=c[(c[e>>2]|0)+24>>2];b=c[e>>2]|0;oc(b);i=f;return 0}function Ar(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b;e=b+4|0;c[f>>2]=a;c[d>>2]=c[(c[f>>2]|0)+324>>2];c[(c[f>>2]|0)+324>>2]=0;if((c[d>>2]|0)==0){i=b;return}yf(c[f>>2]|0);do{c[e>>2]=c[(c[d>>2]|0)+24>>2];Cr(c[d>>2]|0);c[d>>2]=c[e>>2]}while((c[d>>2]|0)!=0);i=b;return}function Br(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;g=b;e=b+4|0;f=b+8|0;c[d>>2]=a;c[e>>2]=2;c[g>>2]=2;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+20>>2]|0)){break}c[f>>2]=(c[(c[d>>2]|0)+16>>2]|0)+(c[g>>2]<<4);if((c[(c[f>>2]|0)+4>>2]|0)==0){cc(c[d>>2]|0,c[c[f>>2]>>2]|0);c[c[f>>2]>>2]=0}else{if((c[e>>2]|0)<(c[g>>2]|0)){a=(c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]<<4)|0;h=(c[(c[d>>2]|0)+16>>2]|0)+(c[g>>2]<<4)|0;c[a+0>>2]=c[h+0>>2];c[a+4>>2]=c[h+4>>2];c[a+8>>2]=c[h+8>>2];c[a+12>>2]=c[h+12>>2]}c[e>>2]=(c[e>>2]|0)+1}c[g>>2]=(c[g>>2]|0)+1}aL((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]<<4)|0,0,(c[(c[d>>2]|0)+20>>2]|0)-(c[e>>2]|0)<<4|0)|0;c[(c[d>>2]|0)+20>>2]=c[e>>2];if((c[(c[d>>2]|0)+20>>2]|0)>2){i=b;return}if((c[(c[d>>2]|0)+16>>2]|0)==((c[d>>2]|0)+448|0)){i=b;return}h=(c[d>>2]|0)+448|0;g=c[(c[d>>2]|0)+16>>2]|0;c[h+0>>2]=c[g+0>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];c[h+16>>2]=c[g+16>>2];c[h+20>>2]=c[g+20>>2];c[h+24>>2]=c[g+24>>2];c[h+28>>2]=c[g+28>>2];cc(c[d>>2]|0,c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+16>>2]=(c[d>>2]|0)+448;i=b;return}function Cr(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+8|0;d=b;f=b+4|0;c[e>>2]=a;c[d>>2]=c[c[e>>2]>>2];a=(c[e>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+ -1;if((c[(c[e>>2]|0)+12>>2]|0)!=0){i=b;return}c[f>>2]=c[(c[e>>2]|0)+8>>2];if((c[f>>2]|0)!=0){ub[c[(c[c[f>>2]>>2]|0)+16>>2]&63](c[f>>2]|0)|0}cc(c[d>>2]|0,c[e>>2]|0);i=b;return}function Dr(a){a=a|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d+12|0;f=d;h=d+4|0;e=d+8|0;c[g>>2]=a;c[f>>2]=c[c[g>>2]>>2];if((c[f>>2]|0)==0){i=d;return 0}c[e>>2]=c[(c[g>>2]|0)+4>>2];Uc(c[f>>2]|0);Fr(c[g>>2]|0);a=c[(c[g>>2]|0)+8>>2]|0;if((c[(c[g>>2]|0)+12>>2]|0)!=0){c[(c[(c[g>>2]|0)+12>>2]|0)+8>>2]=a}else{c[(c[e>>2]|0)+8>>2]=a}if((c[(c[g>>2]|0)+8>>2]|0)!=0){c[(c[(c[g>>2]|0)+8>>2]|0)+12>>2]=c[(c[g>>2]|0)+12>>2]}c[h>>2]=0;while(1){if((c[h>>2]|0)>(b[(c[g>>2]|0)+84>>1]|0)){break}Gr(c[(c[g>>2]|0)+128+(c[h>>2]<<2)>>2]|0);c[h>>2]=(c[h>>2]|0)+1}Hr(c[e>>2]|0);cc(c[c[f>>2]>>2]|0,c[(c[g>>2]|0)+20>>2]|0);i=d;return 0}function Er(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;e=b+8|0;f=b;d=b+4|0;c[e>>2]=a;c[d>>2]=0;g=(c[e>>2]|0)+64|0;c[g>>2]=(c[g>>2]|0)+ -1;if((c[(c[e>>2]|0)+64>>2]|0)>0){g=c[d>>2]|0;i=b;return g|0}if((c[2710]|0)==(c[e>>2]|0)){c[2710]=c[(c[e>>2]|0)+68>>2]}else{c[f>>2]=c[2710];while(1){if((c[f>>2]|0)!=0){g=(c[(c[f>>2]|0)+68>>2]|0)!=(c[e>>2]|0)}else{g=0}a=c[f>>2]|0;if(!g){break}c[f>>2]=c[a+68>>2]}if((a|0)!=0){c[(c[f>>2]|0)+68>>2]=c[(c[e>>2]|0)+68>>2]}}c[d>>2]=1;g=c[d>>2]|0;i=b;return g|0}function Fr(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;oc(c[(c[e>>2]|0)+64>>2]|0);c[(c[e>>2]|0)+64>>2]=0;a[(c[e>>2]|0)+81>>0]=0;i=d;return}function Gr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}Zp(c[(c[d>>2]|0)+68>>2]|0);i=b;return}function Hr(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;if((d[(c[e>>2]|0)+20>>0]|0|0)!=0){i=b;return}if((c[(c[e>>2]|0)+12>>2]|0)==0){i=b;return}Gr(c[(c[e>>2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;i=b;return}function Ir(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;if((c[e>>2]|0)==0){e=0;e=e&1;i=b;return e|0}e=(d[(c[e>>2]|0)+8>>0]|0|0)==2;e=e&1;i=b;return e|0}function Jr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Kr(c[d>>2]|0,68);i=b;return 0}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;g=d;j=d+4|0;k=d+8|0;f=d+12|0;h=d+16|0;c[e>>2]=a;c[g>>2]=b;if((c[(c[e>>2]|0)+320>>2]|0)==0){i=d;return}c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[e>>2]|0)+296>>2]|0)){break}c[k>>2]=c[(c[(c[e>>2]|0)+320>>2]|0)+(c[j>>2]<<2)>>2];c[f>>2]=c[(c[k>>2]|0)+8>>2];if((c[f>>2]|0)!=0){c[h>>2]=c[(c[c[f>>2]>>2]|0)+(c[g>>2]|0)>>2];if((c[h>>2]|0)!=0){ub[c[h>>2]&63](c[f>>2]|0)|0}}c[(c[k>>2]|0)+20>>2]=0;Cr(c[k>>2]|0);c[j>>2]=(c[j>>2]|0)+1}cc(c[e>>2]|0,c[(c[e>>2]|0)+320>>2]|0);c[(c[e>>2]|0)+296>>2]=0;c[(c[e>>2]|0)+320>>2]=0;i=d;return}function Lr(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[(c[b>>2]|0)+16>>2]|0)!=0|0} + + + +function _g(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;g=b+16|0;d=b+8|0;e=b;f=b+12|0;c[g>>2]=a;if((c[496>>2]|0)==0){i=b;return}c[d>>2]=c[496>>2];h=Zg(0)|0;a=e;c[a>>2]=h;c[a+4>>2]=((h|0)<0)<<31>>31;c[f>>2]=c[500>>2];c[496>>2]=0;Bb[c[d>>2]&3](c[f>>2]|0,c[e>>2]|0,c[e+4>>2]|0,c[g>>2]|0);c[496>>2]=c[d>>2];c[500>>2]=c[f>>2];i=b;return}function $g(a,b){a=a|0;b=b|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;j=f;k=f+4|0;l=f+8|0;h=f+12|0;c[j>>2]=a;c[k>>2]=b;if((c[k>>2]|0)<2){c[g>>2]=27;a=c[g>>2]|0;i=f;return a|0}c[l>>2]=((d[784+(d[c[j>>2]>>0]|0)>>0]|0)<<2^(d[784+(d[(c[j>>2]|0)+((c[k>>2]|0)-1)>>0]|0)>>0]|0)*3^c[k>>2]|0)%127|0;c[h>>2]=(d[2696+(c[l>>2]|0)>>0]|0)-1;while(1){if((c[h>>2]|0)<0){b=9;break}if((d[2952+(c[h>>2]|0)>>0]|0|0)==(c[k>>2]|0)){if((Tb(2136+(e[3080+(c[h>>2]<<1)>>1]|0)|0,c[j>>2]|0,c[k>>2]|0)|0)==0){b=7;break}}c[h>>2]=(d[2824+(c[h>>2]|0)>>0]|0)-1}if((b|0)==7){c[g>>2]=d[3328+(c[h>>2]|0)>>0]|0;a=c[g>>2]|0;i=f;return a|0}else if((b|0)==9){c[g>>2]=27;a=c[g>>2]|0;i=f;return a|0}return 0}function ah(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;gh(c[(c[d>>2]|0)+80>>2]|0);c[(c[d>>2]|0)+80>>2]=0;i=b;return}function bh(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;n=o+28|0;g=o+24|0;p=o+8|0;m=o+12|0;k=o+16|0;l=o+20|0;j=o;c[n>>2]=a;c[g>>2]=e;c[p>>2]=f;c[m>>2]=0;c[k>>2]=c[c[g>>2]>>2];if((d[(c[n>>2]|0)+15>>0]|0)==0){h=3}else{if((c[(c[n>>2]|0)+24>>2]|0)==0){h=3}}if((h|0)==3){if((ch(c[(c[n>>2]|0)+204>>2]|0)|0)==0){if((c[k>>2]|0)!=0){if((c[k>>2]|0)!=(c[(c[n>>2]|0)+152>>2]|0)){c[l>>2]=0;a=j;c[a>>2]=0;c[a+4>>2]=0;if((d[(c[n>>2]|0)+16>>0]|0)>0){if((c[c[(c[n>>2]|0)+60>>2]>>2]|0)!=0){c[m>>2]=dh(c[(c[n>>2]|0)+60>>2]|0,j)|0}}if((c[m>>2]|0)==0){c[l>>2]=eh(c[k>>2]|0)|0;if((c[l>>2]|0)==0){c[m>>2]=7}}if((c[m>>2]|0)==0){fh(c[n>>2]|0);a=j;a=dL(c[a>>2]|0,c[a+4>>2]|0,c[k>>2]|0,0)|0;a=$K(a|0,D|0,1,0)|0;a=lL(a|0,D|0,c[k>>2]|0,0)|0;c[(c[n>>2]|0)+24>>2]=a;c[(c[n>>2]|0)+152>>2]=c[k>>2];gh(c[(c[n>>2]|0)+200>>2]|0);c[(c[n>>2]|0)+200>>2]=c[l>>2];hh(c[(c[n>>2]|0)+204>>2]|0,c[k>>2]|0)}}}}}c[c[g>>2]>>2]=c[(c[n>>2]|0)+152>>2];if((c[m>>2]|0)!=0){a=c[m>>2]|0;i=o;return a|0}if((c[p>>2]|0)<0){c[p>>2]=b[(c[n>>2]|0)+142>>1]|0}b[(c[n>>2]|0)+142>>1]=c[p>>2];ih(c[n>>2]|0);a=c[m>>2]|0;i=o;return a|0}function ch(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+12>>2]|0}function dh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+24>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function eh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=qh(c[d>>2]|0)|0;i=b;return a|0}function fh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;kh(c[(c[d>>2]|0)+88>>2]|0);lh(c[(c[d>>2]|0)+204>>2]|0);i=b;return}function gh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jh(c[d>>2]|0)|0;i=b;return}function hh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[(c[e>>2]|0)+40>>2]|0)!=0){rb[c[45284>>2]&31](c[(c[e>>2]|0)+40>>2]|0);c[(c[e>>2]|0)+40>>2]=0;c[(c[e>>2]|0)+44>>2]=0}c[(c[e>>2]|0)+20>>2]=c[f>>2];i=d;return}function ih(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return}function jh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;g=d;f=d+4|0;h=d+8|0;c[g>>2]=a;c[f>>2]=0;if((c[g>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}if((c[g>>2]|0)>>>0>=(c[3500>>2]|0)>>>0){if((c[g>>2]|0)>>>0<(c[3504>>2]|0)>>>0){pc(1,-1);c[h>>2]=c[g>>2];c[c[h>>2]>>2]=c[3512>>2];c[3512>>2]=c[h>>2];c[3516>>2]=(c[3516>>2]|0)+1;c[3520>>2]=(c[3516>>2]|0)<(c[3496>>2]|0)&1}else{b=6}}else{b=6}if((b|0)==6){c[f>>2]=_b(c[g>>2]|0)|0;pc(2,0-(c[f>>2]|0)|0);oc(c[g>>2]|0)}c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}function kh(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];while(1){if((c[d>>2]|0)==0){break}c[(c[d>>2]|0)+16>>2]=1;c[d>>2]=c[(c[d>>2]|0)+44>>2]}i=b;return}function lh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;mh(c[d>>2]|0,0);i=b;return}function mh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d;g=d+4|0;h=d+8|0;c[e>>2]=a;c[f>>2]=b;if((c[(c[e>>2]|0)+40>>2]|0)==0){i=d;return}c[g>>2]=c[c[e>>2]>>2];while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[(c[g>>2]|0)+32>>2];if((c[(c[g>>2]|0)+20>>2]|0)>>>0>(c[f>>2]|0)>>>0){nh(c[g>>2]|0)}c[g>>2]=c[h>>2]}if((c[f>>2]|0)==0){if((c[(c[e>>2]|0)+44>>2]|0)!=0){aL(c[(c[(c[e>>2]|0)+44>>2]|0)+4>>2]|0,0,c[(c[e>>2]|0)+20>>2]|0)|0;c[f>>2]=1}}sb[c[45280>>2]&7](c[(c[e>>2]|0)+40>>2]|0,(c[f>>2]|0)+1|0);i=d;return}function nh(a){a=a|0;var d=0,f=0;d=i;i=i+16|0;f=d;c[f>>2]=a;if((b[(c[f>>2]|0)+24>>1]&2|0)==0){i=d;return}oh(c[f>>2]|0);a=(c[f>>2]|0)+24|0;b[a>>1]=e[a>>1]&-7;if((b[(c[f>>2]|0)+26>>1]|0)!=0){i=d;return}ph(c[f>>2]|0);i=d;return}function oh(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;f=g+8|0;h=g;j=g+4|0;c[f>>2]=e;c[h>>2]=c[(c[f>>2]|0)+28>>2];if((c[(c[h>>2]|0)+8>>2]|0)==(c[f>>2]|0)){c[j>>2]=c[(c[f>>2]|0)+36>>2];while(1){if((c[j>>2]|0)!=0){k=(b[(c[j>>2]|0)+24>>1]&4|0)!=0}else{k=0}e=c[j>>2]|0;if(!k){break}c[j>>2]=c[e+36>>2]}c[(c[h>>2]|0)+8>>2]=e}j=c[(c[f>>2]|0)+36>>2]|0;if((c[(c[f>>2]|0)+32>>2]|0)!=0){c[(c[(c[f>>2]|0)+32>>2]|0)+36>>2]=j}else{c[(c[h>>2]|0)+4>>2]=j}j=c[(c[f>>2]|0)+32>>2]|0;if((c[(c[f>>2]|0)+36>>2]|0)!=0){c[(c[(c[f>>2]|0)+36>>2]|0)+32>>2]=j}else{c[c[h>>2]>>2]=j;if((c[c[h>>2]>>2]|0)==0){if((d[(c[h>>2]|0)+28>>0]|0|0)!=0){a[(c[h>>2]|0)+29>>0]=2}}}c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+36>>2]=0;i=g;return}function ph(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;c[e>>2]=c[(c[f>>2]|0)+28>>2];if((a[(c[e>>2]|0)+28>>0]|0)==0){i=d;return}if((c[(c[f>>2]|0)+20>>2]|0)==1){c[(c[e>>2]|0)+44>>2]=0}vb[c[45272>>2]&63](c[(c[e>>2]|0)+40>>2]|0,c[c[f>>2]>>2]|0,0);i=d;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;b=d;e=d+4|0;c[f>>2]=a;c[b>>2]=0;Xg(7,c[f>>2]|0);if((c[f>>2]|0)<=(c[3488>>2]|0)){c[b>>2]=c[3512>>2];if((c[b>>2]|0)!=0){c[3512>>2]=c[c[3512>>2]>>2];c[3516>>2]=(c[3516>>2]|0)+ -1;c[3520>>2]=(c[3516>>2]|0)<(c[3496>>2]|0)&1;pc(1,1)}}if((c[b>>2]|0)!=0){f=c[b>>2]|0;i=d;return f|0}c[b>>2]=nc(c[f>>2]|0)|0;if((c[b>>2]|0)==0){f=c[b>>2]|0;i=d;return f|0}c[e>>2]=_b(c[b>>2]|0)|0;pc(2,c[e>>2]|0);f=c[b>>2]|0;i=d;return f|0}function rh(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=Sc(512)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}c[c[d>>2]>>2]=c[e>>2];e=c[d>>2]|0;i=b;return e|0}function sh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+32|0;h=m+28|0;j=m;k=m+4|0;l=m+8|0;p=m+12|0;o=m+16|0;n=m+20|0;f=m+24|0;c[j>>2]=b;c[k>>2]=e;if((c[j>>2]|0)==0){c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}c[k>>2]=(c[k>>2]|0)+ -1;while(1){if(!((c[c[j>>2]>>2]|0)>>>0>4e3)){break}if((c[(c[j>>2]|0)+8>>2]|0)==0){break}c[p>>2]=((c[k>>2]|0)>>>0)/((c[(c[j>>2]|0)+8>>2]|0)>>>0)|0;c[k>>2]=((c[k>>2]|0)>>>0)%((c[(c[j>>2]|0)+8>>2]|0)>>>0)|0;if((c[(c[j>>2]|0)+12+(c[p>>2]<<2)>>2]|0)==0){b=rh(c[(c[j>>2]|0)+8>>2]|0)|0;c[(c[j>>2]|0)+12+(c[p>>2]<<2)>>2]=b;if((c[(c[j>>2]|0)+12+(c[p>>2]<<2)>>2]|0)==0){g=8;break}}c[j>>2]=c[(c[j>>2]|0)+12+(c[p>>2]<<2)>>2]}if((g|0)==8){c[h>>2]=7;b=c[h>>2]|0;i=m;return b|0}p=c[k>>2]|0;if((c[c[j>>2]>>2]|0)>>>0<=4e3){b=(c[j>>2]|0)+12+(((c[k>>2]|0)>>>0)/8|0)|0;a[b>>0]=d[b>>0]|0|1<<(p&7);c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}c[k>>2]=p+1;c[l>>2]=(p>>>0)%125|0;a:do{if((c[(c[j>>2]|0)+12+(c[l>>2]<<2)>>2]|0)!=0){while(1){if((c[(c[j>>2]|0)+12+(c[l>>2]<<2)>>2]|0)==(c[k>>2]|0)){break}b=(c[l>>2]|0)+1|0;c[l>>2]=b;c[l>>2]=(c[l>>2]|0)>>>0>=125?0:b;if((c[(c[j>>2]|0)+12+(c[l>>2]<<2)>>2]|0)==0){g=17;break a}}c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}else{if(!((c[(c[j>>2]|0)+4>>2]|0)>>>0<124)){g=17}}}while(0);if((g|0)==17){if((c[(c[j>>2]|0)+4>>2]|0)>>>0>=62){c[f>>2]=$e(0,500)|0;if((c[f>>2]|0)==0){c[h>>2]=7;b=c[h>>2]|0;i=m;return b|0}fL(c[f>>2]|0,(c[j>>2]|0)+12|0,500)|0;aL((c[j>>2]|0)+12|0,0,500)|0;c[(c[j>>2]|0)+8>>2]=(((c[c[j>>2]>>2]|0)+125-1|0)>>>0)/125|0;c[n>>2]=sh(c[j>>2]|0,c[k>>2]|0)|0;c[o>>2]=0;while(1){if(!((c[o>>2]|0)>>>0<125)){break}if((c[(c[f>>2]|0)+(c[o>>2]<<2)>>2]|0)!=0){b=sh(c[j>>2]|0,c[(c[f>>2]|0)+(c[o>>2]<<2)>>2]|0)|0;c[n>>2]=c[n>>2]|b}c[o>>2]=(c[o>>2]|0)+1}cc(0,c[f>>2]|0);c[h>>2]=c[n>>2];b=c[h>>2]|0;i=m;return b|0}}b=(c[j>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+1;c[(c[j>>2]|0)+12+(c[l>>2]<<2)>>2]=c[k>>2];c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}function th(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+32|0;j=n+24|0;k=n;o=n+4|0;p=n+8|0;m=n+12|0;l=n+16|0;g=n+20|0;c[j>>2]=b;c[k>>2]=e;c[o>>2]=f;if((c[j>>2]|0)==0){i=n;return}c[k>>2]=(c[k>>2]|0)+ -1;while(1){if((c[(c[j>>2]|0)+8>>2]|0)==0){break}c[p>>2]=((c[k>>2]|0)>>>0)/((c[(c[j>>2]|0)+8>>2]|0)>>>0)|0;c[k>>2]=((c[k>>2]|0)>>>0)%((c[(c[j>>2]|0)+8>>2]|0)>>>0)|0;c[j>>2]=c[(c[j>>2]|0)+12+(c[p>>2]<<2)>>2];if((c[j>>2]|0)==0){h=16;break}}if((h|0)==16){i=n;return}if((c[c[j>>2]>>2]|0)>>>0<=4e3){b=(c[j>>2]|0)+12+(((c[k>>2]|0)>>>0)/8|0)|0;a[b>>0]=(d[b>>0]|0)&~(1<<(c[k>>2]&7));i=n;return}c[l>>2]=c[o>>2];fL(c[l>>2]|0,(c[j>>2]|0)+12|0,500)|0;aL((c[j>>2]|0)+12|0,0,500)|0;c[(c[j>>2]|0)+4>>2]=0;c[m>>2]=0;while(1){if(!((c[m>>2]|0)>>>0<125)){break}if((c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)!=0){if((c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)!=((c[k>>2]|0)+1|0)){c[g>>2]=(((c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)-1|0)>>>0)%125|0;b=(c[j>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+1;while(1){if((c[(c[j>>2]|0)+12+(c[g>>2]<<2)>>2]|0)==0){break}b=(c[g>>2]|0)+1|0;c[g>>2]=b;c[g>>2]=(c[g>>2]|0)>>>0>=125?0:b}c[(c[j>>2]|0)+12+(c[g>>2]<<2)>>2]=c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]}}c[m>>2]=(c[m>>2]|0)+1}i=n;return}function uh(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e;h=e+4|0;l=e+8|0;j=e+12|0;c[g>>2]=a;c[h>>2]=b;if((c[g>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}if((c[h>>2]|0)==0?1:(c[h>>2]|0)>>>0>(c[c[g>>2]>>2]|0)>>>0){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}c[h>>2]=(c[h>>2]|0)+ -1;while(1){if((c[(c[g>>2]|0)+8>>2]|0)==0){break}c[l>>2]=((c[h>>2]|0)>>>0)/((c[(c[g>>2]|0)+8>>2]|0)>>>0)|0;c[h>>2]=((c[h>>2]|0)>>>0)%((c[(c[g>>2]|0)+8>>2]|0)>>>0)|0;c[g>>2]=c[(c[g>>2]|0)+12+(c[l>>2]<<2)>>2];if((c[g>>2]|0)==0){k=8;break}}if((k|0)==8){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}k=c[h>>2]|0;if((c[c[g>>2]>>2]|0)>>>0<=4e3){c[f>>2]=((d[(c[g>>2]|0)+12+((k>>>0)/8|0)>>0]|0)&1<<(c[h>>2]&7)|0)!=0&1;a=c[f>>2]|0;i=e;return a|0}c[h>>2]=k+1;c[j>>2]=(k>>>0)%125|0;while(1){if((c[(c[g>>2]|0)+12+(c[j>>2]<<2)>>2]|0)==0){k=16;break}if((c[(c[g>>2]|0)+12+(c[j>>2]<<2)>>2]|0)==(c[h>>2]|0)){k=14;break}c[j>>2]=(((c[j>>2]|0)+1|0)>>>0)%125|0}if((k|0)==14){c[f>>2]=1;a=c[f>>2]|0;i=e;return a|0}else if((k|0)==16){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}return 0}function vh(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[c[b>>2]>>2]|0}function wh(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((c[e>>2]|0)==0){i=b;return}a:do{if((c[(c[e>>2]|0)+8>>2]|0)!=0){c[d>>2]=0;while(1){if(!((c[d>>2]|0)>>>0<125)){break a}wh(c[(c[e>>2]|0)+12+(c[d>>2]<<2)>>2]|0);c[d>>2]=(c[d>>2]|0)+1}}}while(0);oc(c[e>>2]|0);i=b;return}function xh(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+32|0;n=j+12|0;k=j+16|0;m=j+4|0;l=j+8|0;h=j;c[n>>2]=b;a[k>>0]=e;c[m>>2]=f;c[l>>2]=g;g=c[n>>2]|0;if((c[m>>2]|0)!=0){c[h>>2]=Dh(g,c[m>>2]|0,c[l>>2]|0)|0}else{c[h>>2]=c[g+8>>2]}if((c[h>>2]|0)==0){n=c[h>>2]|0;i=j;return n|0}c[h>>2]=(c[h>>2]|0)+(((d[k>>0]|0)-1|0)*20|0);n=c[h>>2]|0;i=j;return n|0}function yh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;g=b+20|0;d=b;f=b+4|0;e=b+8|0;h=b+12|0;j=b+16|0;c[g>>2]=a;c[f>>2]=0;c[d>>2]=c[(c[g>>2]|0)+16>>2];while(1){if((c[f>>2]|0)>=(c[(c[g>>2]|0)+20>>2]|0)){break}a:do{if((c[(c[d>>2]|0)+4>>2]|0)!=0){Uc(c[(c[d>>2]|0)+4>>2]|0);c[e>>2]=c[(c[(c[d>>2]|0)+12>>2]|0)+16>>2];while(1){if((c[e>>2]|0)==0){break a}c[h>>2]=c[(c[e>>2]|0)+8>>2];c[j>>2]=c[(c[h>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break}if((c[(c[j>>2]|0)+40>>2]|0)!=0){if((c[(c[(c[j>>2]|0)+40>>2]|0)+12>>2]|0)==(c[g>>2]|0)){Ch(c[(c[j>>2]|0)+40>>2]|0);c[(c[j>>2]|0)+40>>2]=0}}c[j>>2]=c[(c[j>>2]|0)+20>>2]}c[e>>2]=c[c[e>>2]>>2]}}}while(0);c[f>>2]=(c[f>>2]|0)+1;c[d>>2]=(c[d>>2]|0)+16}i=b;return}function zh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;g=e+16|0;h=e;j=e+4|0;f=e+8|0;k=e+12|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if((c[(c[g>>2]|0)+12>>2]|0)!=0){a=Ah(c[h>>2]|0,c[j>>2]|0)|0;c[k>>2]=(a>>>0)%((c[c[g>>2]>>2]|0)>>>0)|0}else{c[k>>2]=0}c[f>>2]=Bh(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if((c[f>>2]|0)==0){a=0;i=e;return a|0}a=c[(c[f>>2]|0)+8>>2]|0;i=e;return a|0}function Ah(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=0;while(1){b=c[f>>2]|0;if((c[g>>2]|0)<=0){break}b=b<<3^c[f>>2];a=c[h>>2]|0;c[h>>2]=a+1;c[f>>2]=b^(d[784+(d[a>>0]|0)>>0]|0);c[g>>2]=(c[g>>2]|0)+ -1}i=e;return b|0}function Bh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;f=g+28|0;o=g;k=g+4|0;l=g+8|0;n=g+12|0;h=g+16|0;m=g+20|0;j=g+24|0;c[o>>2]=a;c[k>>2]=b;c[l>>2]=d;c[n>>2]=e;if((c[(c[o>>2]|0)+12>>2]|0)!=0){c[j>>2]=(c[(c[o>>2]|0)+12>>2]|0)+(c[n>>2]<<3);c[h>>2]=c[(c[j>>2]|0)+4>>2];c[m>>2]=c[c[j>>2]>>2]}else{c[h>>2]=c[(c[o>>2]|0)+8>>2];c[m>>2]=c[(c[o>>2]|0)+4>>2]}while(1){a=c[m>>2]|0;c[m>>2]=a+ -1;if((a|0)==0){j=10;break}if((c[h>>2]|0)==0){j=10;break}if((c[(c[h>>2]|0)+16>>2]|0)==(c[l>>2]|0)){if((Tb(c[(c[h>>2]|0)+12>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)==0){j=8;break}}c[h>>2]=c[c[h>>2]>>2]}if((j|0)==8){c[f>>2]=c[h>>2];a=c[f>>2]|0;i=g;return a|0}else if((j|0)==10){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}return 0}function Ch(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}a=c[d>>2]|0;c[a>>2]=(c[a>>2]|0)+ -1;if((c[c[d>>2]>>2]|0)!=0){i=b;return}cc(0,c[d>>2]|0);i=b;return}function Dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;l=f+20|0;j=f;m=f+4|0;g=f+8|0;k=f+12|0;h=f+16|0;c[l>>2]=b;c[j>>2]=d;c[m>>2]=e;c[k>>2]=Ub(c[j>>2]|0)|0;c[g>>2]=zh((c[l>>2]|0)+420|0,c[j>>2]|0,c[k>>2]|0)|0;if(0!=(c[g>>2]|0)){b=c[g>>2]|0;i=f;return b|0}if((c[m>>2]|0)==0){b=c[g>>2]|0;i=f;return b|0}c[g>>2]=ve(c[l>>2]|0,61+(c[k>>2]|0)|0)|0;if((c[g>>2]|0)==0){b=c[g>>2]|0;i=f;return b|0}c[h>>2]=0;c[c[g>>2]>>2]=(c[g>>2]|0)+60;a[(c[g>>2]|0)+4>>0]=1;c[(c[g>>2]|0)+20>>2]=(c[g>>2]|0)+60;a[(c[g>>2]|0)+24>>0]=2;c[(c[g>>2]|0)+40>>2]=(c[g>>2]|0)+60;a[(c[g>>2]|0)+44>>0]=3;fL(c[c[g>>2]>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;a[(c[c[g>>2]>>2]|0)+(c[k>>2]|0)>>0]=0;c[h>>2]=Eh((c[l>>2]|0)+420|0,c[c[g>>2]>>2]|0,c[k>>2]|0,c[g>>2]|0)|0;if((c[h>>2]|0)==0){b=c[g>>2]|0;i=f;return b|0}a[(c[l>>2]|0)+64>>0]=1;cc(c[l>>2]|0,c[h>>2]|0);c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}function Eh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+48|0;f=g+32|0;h=g+28|0;n=g+24|0;p=g+20|0;l=g+16|0;j=g+8|0;o=g+4|0;k=g;m=g+12|0;c[h>>2]=a;c[n>>2]=b;c[p>>2]=d;c[l>>2]=e;if((c[c[h>>2]>>2]|0)!=0){a=Ah(c[n>>2]|0,c[p>>2]|0)|0;c[j>>2]=(a>>>0)%((c[c[h>>2]>>2]|0)>>>0)|0}else{c[j>>2]=0}c[o>>2]=Bh(c[h>>2]|0,c[n>>2]|0,c[p>>2]|0,c[j>>2]|0)|0;if((c[o>>2]|0)!=0){c[m>>2]=c[(c[o>>2]|0)+8>>2];if((c[l>>2]|0)==0){Fh(c[h>>2]|0,c[o>>2]|0,c[j>>2]|0)}else{c[(c[o>>2]|0)+8>>2]=c[l>>2];c[(c[o>>2]|0)+12>>2]=c[n>>2]}c[f>>2]=c[m>>2];a=c[f>>2]|0;i=g;return a|0}if((c[l>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}c[k>>2]=nc(20)|0;if((c[k>>2]|0)==0){c[f>>2]=c[l>>2];a=c[f>>2]|0;i=g;return a|0}c[(c[k>>2]|0)+12>>2]=c[n>>2];c[(c[k>>2]|0)+16>>2]=c[p>>2];c[(c[k>>2]|0)+8>>2]=c[l>>2];a=(c[h>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+1;if((c[(c[h>>2]|0)+4>>2]|0)>>>0>=10){if((c[(c[h>>2]|0)+4>>2]|0)>>>0>c[c[h>>2]>>2]<<1>>>0){if((Gh(c[h>>2]|0,c[(c[h>>2]|0)+4>>2]<<1)|0)!=0){a=Ah(c[n>>2]|0,c[p>>2]|0)|0;c[j>>2]=(a>>>0)%((c[c[h>>2]>>2]|0)>>>0)|0}}}l=c[h>>2]|0;if((c[(c[h>>2]|0)+12>>2]|0)!=0){Hh(l,(c[(c[h>>2]|0)+12>>2]|0)+(c[j>>2]<<3)|0,c[k>>2]|0)}else{Hh(l,0,c[k>>2]|0)}c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}function Fh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;f=j+12|0;e=j;h=j+4|0;g=j+8|0;c[f>>2]=a;c[e>>2]=b;c[h>>2]=d;d=c[c[e>>2]>>2]|0;if((c[(c[e>>2]|0)+4>>2]|0)!=0){c[c[(c[e>>2]|0)+4>>2]>>2]=d}else{c[(c[f>>2]|0)+8>>2]=d}if((c[c[e>>2]>>2]|0)!=0){c[(c[c[e>>2]>>2]|0)+4>>2]=c[(c[e>>2]|0)+4>>2]}if((c[(c[f>>2]|0)+12>>2]|0)!=0){c[g>>2]=(c[(c[f>>2]|0)+12>>2]|0)+(c[h>>2]<<3);if((c[(c[g>>2]|0)+4>>2]|0)==(c[e>>2]|0)){c[(c[g>>2]|0)+4>>2]=c[c[e>>2]>>2]}a=c[g>>2]|0;c[a>>2]=(c[a>>2]|0)+ -1}oc(c[e>>2]|0);a=(c[f>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+ -1;if((c[(c[f>>2]|0)+4>>2]|0)!=0){i=j;return}Kh(c[f>>2]|0);i=j;return}function Gh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+24|0;k=d;g=d+4|0;l=d+8|0;f=d+12|0;j=d+16|0;h=d+20|0;c[k>>2]=a;c[g>>2]=b;c[g>>2]=c[g>>2]<<3>>>0>1024?128:b;if((c[g>>2]|0)==(c[c[k>>2]>>2]|0)){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}Ih();c[l>>2]=nc(c[g>>2]<<3)|0;Jh();if((c[l>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}oc(c[(c[k>>2]|0)+12>>2]|0);c[(c[k>>2]|0)+12>>2]=c[l>>2];a=((_b(c[l>>2]|0)|0)>>>0)/8|0;c[g>>2]=a;c[c[k>>2]>>2]=a;aL(c[l>>2]|0,0,c[g>>2]<<3|0)|0;c[f>>2]=c[(c[k>>2]|0)+8>>2];c[(c[k>>2]|0)+8>>2]=0;while(1){if((c[f>>2]|0)==0){break}a=Ah(c[(c[f>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+16>>2]|0)|0;c[h>>2]=(a>>>0)%((c[g>>2]|0)>>>0)|0;c[j>>2]=c[c[f>>2]>>2];Hh(c[k>>2]|0,(c[l>>2]|0)+(c[h>>2]<<3)|0,c[f>>2]|0);c[f>>2]=c[j>>2]}c[e>>2]=1;a=c[e>>2]|0;i=d;return a|0}function Hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;f=g+12|0;j=g;e=g+4|0;h=g+8|0;c[f>>2]=a;c[j>>2]=b;c[e>>2]=d;if((c[j>>2]|0)!=0){if((c[c[j>>2]>>2]|0)!=0){d=c[(c[j>>2]|0)+4>>2]|0}else{d=0}c[h>>2]=d;a=c[j>>2]|0;c[a>>2]=(c[a>>2]|0)+1;c[(c[j>>2]|0)+4>>2]=c[e>>2]}else{c[h>>2]=0}if((c[h>>2]|0)==0){c[c[e>>2]>>2]=c[(c[f>>2]|0)+8>>2];if((c[(c[f>>2]|0)+8>>2]|0)!=0){c[(c[(c[f>>2]|0)+8>>2]|0)+4>>2]=c[e>>2]}c[(c[e>>2]|0)+4>>2]=0;c[(c[f>>2]|0)+8>>2]=c[e>>2];i=g;return}c[c[e>>2]>>2]=c[h>>2];c[(c[e>>2]|0)+4>>2]=c[(c[h>>2]|0)+4>>2];j=c[e>>2]|0;if((c[(c[h>>2]|0)+4>>2]|0)!=0){c[c[(c[h>>2]|0)+4>>2]>>2]=j}else{c[(c[f>>2]|0)+8>>2]=j}c[(c[h>>2]|0)+4>>2]=c[e>>2];i=g;return}function Ih(){var a=0;a=i;if((c[882]|0)==0){i=a;return}wb[c[882]&0]();i=a;return}function Jh(){var a=0;a=i;if((c[3532>>2]|0)==0){i=a;return}wb[c[3532>>2]&0]();i=a;return}function Kh(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;b=d+8|0;e=d;f=d+4|0;c[b>>2]=a;c[e>>2]=c[(c[b>>2]|0)+8>>2];c[(c[b>>2]|0)+8>>2]=0;oc(c[(c[b>>2]|0)+12>>2]|0);c[(c[b>>2]|0)+12>>2]=0;c[c[b>>2]>>2]=0;while(1){if((c[e>>2]|0)==0){break}c[f>>2]=c[c[e>>2]>>2];oc(c[e>>2]|0);c[e>>2]=c[f>>2]}c[(c[b>>2]|0)+4>>2]=0;i=d;return}function Lh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+12>>2]=0;i=b;return}function Mh(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;o=m+24|0;n=m;g=m+4|0;l=m+8|0;j=m+12|0;h=m+16|0;k=m+20|0;c[o>>2]=a;c[n>>2]=b;c[g>>2]=d;c[l>>2]=e;c[j>>2]=f;c[k>>2]=(c[n>>2]|0)<(c[l>>2]|0)?c[n>>2]|0:c[l>>2]|0;c[h>>2]=XK(c[g>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if((c[h>>2]|0)!=0){a=c[h>>2]|0;i=m;return a|0}if((c[o>>2]|0)!=0){if((lr((c[g>>2]|0)+(c[k>>2]|0)|0,(c[n>>2]|0)-(c[k>>2]|0)|0)|0)!=0){if((lr((c[j>>2]|0)+(c[k>>2]|0)|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0)!=0){a=c[h>>2]|0;i=m;return a|0}}}c[h>>2]=(c[n>>2]|0)-(c[l>>2]|0);a=c[h>>2]|0;i=m;return a|0}function Nh(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;j=g;m=g+4|0;k=g+8|0;l=g+12|0;h=g+16|0;c[g+20>>2]=a;c[j>>2]=b;c[m>>2]=d;c[k>>2]=e;c[l>>2]=f;c[h>>2]=Tb(c[m>>2]|0,c[l>>2]|0,(c[j>>2]|0)<(c[k>>2]|0)?c[j>>2]|0:c[k>>2]|0)|0;if(0!=(c[h>>2]|0)){m=c[h>>2]|0;i=g;return m|0}c[h>>2]=(c[j>>2]|0)-(c[k>>2]|0);m=c[h>>2]|0;i=g;return m|0}function Oh(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;z=i;i=i+128|0;k=z;C=z+72|0;O=z+76|0;x=z+80|0;l=z+84|0;L=z+88|0;D=z+96|0;A=z+100|0;y=z+104|0;B=z+108|0;n=z+112|0;s=z+116|0;v=z+120|0;N=z+68|0;o=z+64|0;t=z+92|0;w=z+28|0;r=z+24|0;M=z+8|0;u=z+12|0;p=z+16|0;m=z+20|0;q=z+56|0;G=z+32|0;J=z+36|0;H=z+40|0;I=z+44|0;F=z+48|0;E=z+52|0;K=z+60|0;c[O>>2]=b;c[x>>2]=e;c[l>>2]=f;c[L>>2]=g;c[D>>2]=h;c[A>>2]=j;c[y>>2]=0;c[B>>2]=c[c[l>>2]>>2];c[n>>2]=c[O>>2];c[N>>2]=Ub(c[x>>2]|0)|0;if((c[B>>2]&64|0)!=0){j=3}else{if((c[45148>>2]|0)!=0){j=3}else{j=83}}a:do{if((j|0)==3){if((c[N>>2]|0)>=5){if((XK(c[x>>2]|0,11216,5)|0)==0){c[r>>2]=0;c[M>>2]=(c[N>>2]|0)+2;c[B>>2]=c[B>>2]|64;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[N>>2]|0)){break}c[M>>2]=(c[M>>2]|0)+((a[(c[x>>2]|0)+(c[w>>2]|0)>>0]|0)==38&1);c[w>>2]=(c[w>>2]|0)+1}c[s>>2]=mc(c[M>>2]|0)|0;if((c[s>>2]|0)==0){c[C>>2]=7;O=c[C>>2]|0;i=z;return O|0}c[w>>2]=5;do{if((a[(c[x>>2]|0)+5>>0]|0)==47){if((a[(c[x>>2]|0)+6>>0]|0)==47){c[w>>2]=7;while(1){if((a[(c[x>>2]|0)+(c[w>>2]|0)>>0]|0)!=0){N=(a[(c[x>>2]|0)+(c[w>>2]|0)>>0]|0)!=47}else{N=0}M=c[w>>2]|0;if(!N){break}c[w>>2]=M+1}if((M|0)!=7){if((c[w>>2]|0)==16){if((XK(11224,(c[x>>2]|0)+7|0,9)|0)==0){break}}O=(c[x>>2]|0)+7|0;c[k>>2]=(c[w>>2]|0)-7;c[k+4>>2]=O;O=wc(11240,k)|0;c[c[A>>2]>>2]=O;c[y>>2]=1;break a}}}}while(0);c[t>>2]=0;b:while(1){O=a[(c[x>>2]|0)+(c[w>>2]|0)>>0]|0;a[v>>0]=O;if((O<<24>>24|0)==0){break}if((a[v>>0]|0)==35){break}c[w>>2]=(c[w>>2]|0)+1;do{if((a[v>>0]|0)==37){if((a[136+(d[(c[x>>2]|0)+(c[w>>2]|0)>>0]|0)>>0]&8|0)!=0){if((a[136+(d[(c[x>>2]|0)+((c[w>>2]|0)+1)>>0]|0)>>0]&8|0)!=0){O=c[w>>2]|0;c[w>>2]=O+1;c[u>>2]=((kr(a[(c[x>>2]|0)+O>>0]|0)|0)&255)<<4;O=c[w>>2]|0;c[w>>2]=O+1;O=(kr(a[(c[x>>2]|0)+O>>0]|0)|0)&255;c[u>>2]=(c[u>>2]|0)+O;if((c[u>>2]|0)!=0){a[v>>0]=c[u>>2];break}while(1){O=a[(c[x>>2]|0)+(c[w>>2]|0)>>0]|0;a[v>>0]=O;if((O<<24>>24|0)==0){continue b}if((a[v>>0]|0)==35){continue b}if((c[t>>2]|0)==0){if((a[v>>0]|0)==63){continue b}}if((c[t>>2]|0)==1){if((a[v>>0]|0)==61){continue b}if((a[v>>0]|0)==38){continue b}}if((c[t>>2]|0)==2){if((a[v>>0]|0)==38){continue b}}c[w>>2]=(c[w>>2]|0)+1}}else{j=39}}else{j=39}}else{j=39}}while(0);c:do{if((j|0)==39){j=0;do{if((c[t>>2]|0)==1){if((a[v>>0]|0)!=38){if((a[v>>0]|0)!=61){break}}if((a[(c[s>>2]|0)+((c[r>>2]|0)-1)>>0]|0)==0){while(1){if((a[(c[x>>2]|0)+(c[w>>2]|0)>>0]|0)==0){continue b}if((a[(c[x>>2]|0)+(c[w>>2]|0)>>0]|0)==35){continue b}if((a[(c[x>>2]|0)+((c[w>>2]|0)-1)>>0]|0)==38){continue b}c[w>>2]=(c[w>>2]|0)+1}}else{if((a[v>>0]|0)==38){O=c[r>>2]|0;c[r>>2]=O+1;a[(c[s>>2]|0)+O>>0]=0}else{c[t>>2]=2}a[v>>0]=0;break c}}}while(0);if((c[t>>2]|0)==0){if((a[v>>0]|0)!=63){j=53}}else{j=53}if((j|0)==53){j=0;if((c[t>>2]|0)!=2){break}if((a[v>>0]|0)!=38){break}}a[v>>0]=0;c[t>>2]=1}}while(0);b=a[v>>0]|0;O=c[r>>2]|0;c[r>>2]=O+1;a[(c[s>>2]|0)+O>>0]=b}if((c[t>>2]|0)==1){O=c[r>>2]|0;c[r>>2]=O+1;a[(c[s>>2]|0)+O>>0]=0}O=c[r>>2]|0;c[r>>2]=O+1;a[(c[s>>2]|0)+O>>0]=0;O=c[r>>2]|0;c[r>>2]=O+1;a[(c[s>>2]|0)+O>>0]=0;O=(Ub(c[s>>2]|0)|0)+1|0;c[o>>2]=(c[s>>2]|0)+O;while(1){if((a[c[o>>2]>>0]|0)==0){j=86;break a}c[p>>2]=Ub(c[o>>2]|0)|0;c[m>>2]=(c[o>>2]|0)+((c[p>>2]|0)+1);c[q>>2]=Ub(c[m>>2]|0)|0;if((c[p>>2]|0)==3){if((XK(11272,c[o>>2]|0,3)|0)==0){c[n>>2]=c[m>>2]}else{j=64}}else{j=64}if((j|0)==64){j=0;c[G>>2]=0;c[J>>2]=0;c[H>>2]=0;c[I>>2]=0;if((c[p>>2]|0)==5){if((XK(11280,c[o>>2]|0,5)|0)==0){c[H>>2]=393216;c[G>>2]=11288;c[I>>2]=c[H>>2];c[J>>2]=11280}}if((c[p>>2]|0)==4){if((XK(11328,c[o>>2]|0,4)|0)==0){c[H>>2]=135;c[G>>2]=11336;c[I>>2]=c[H>>2]&c[B>>2];c[J>>2]=11408}}if((c[G>>2]|0)!=0){c[E>>2]=0;c[F>>2]=0;while(1){if((c[(c[G>>2]|0)+(c[F>>2]<<3)>>2]|0)==0){break}c[K>>2]=c[(c[G>>2]|0)+(c[F>>2]<<3)>>2];O=c[q>>2]|0;if((O|0)==(Ub(c[K>>2]|0)|0)){if(0==(XK(c[m>>2]|0,c[K>>2]|0,c[q>>2]|0)|0)){j=75;break}}c[F>>2]=(c[F>>2]|0)+1}if((j|0)==75){j=0;c[E>>2]=c[(c[G>>2]|0)+(c[F>>2]<<3)+4>>2]}if((c[E>>2]|0)==0){j=78;break}if((c[E>>2]&-129|0)>(c[I>>2]|0)){j=80;break}c[B>>2]=c[B>>2]&~c[H>>2]|c[E>>2]}}c[o>>2]=(c[m>>2]|0)+((c[q>>2]|0)+1)}if((j|0)==78){O=c[m>>2]|0;c[k>>2]=c[J>>2];c[k+4>>2]=O;O=wc(11416,k)|0;c[c[A>>2]>>2]=O;c[y>>2]=1;break}else if((j|0)==80){O=c[m>>2]|0;c[k>>2]=c[J>>2];c[k+4>>2]=O;O=wc(11440,k)|0;c[c[A>>2]>>2]=O;c[y>>2]=3;break}}else{j=83}}else{j=83}}}while(0);do{if((j|0)==83){c[s>>2]=mc((c[N>>2]|0)+2|0)|0;if((c[s>>2]|0)!=0){fL(c[s>>2]|0,c[x>>2]|0,c[N>>2]|0)|0;a[(c[s>>2]|0)+(c[N>>2]|0)>>0]=0;a[(c[s>>2]|0)+((c[N>>2]|0)+1)>>0]=0;c[B>>2]=c[B>>2]&-65;j=86;break}c[C>>2]=7;O=c[C>>2]|0;i=z;return O|0}}while(0);if((j|0)==86){O=dc(c[n>>2]|0)|0;c[c[L>>2]>>2]=O;if((c[c[L>>2]>>2]|0)==0){c[k>>2]=c[n>>2];O=wc(11464,k)|0;c[c[A>>2]>>2]=O;c[y>>2]=1}}if((c[y>>2]|0)!=0){oc(c[s>>2]|0);c[s>>2]=0}c[c[l>>2]>>2]=c[B>>2];c[c[D>>2]>>2]=c[s>>2];c[C>>2]=c[y>>2];O=c[C>>2]|0;i=z;return O|0}function Ph(f,g,h,j,k,l){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;m=i;i=i+192|0;r=m+56|0;x=m+44|0;y=m+48|0;w=m+52|0;q=m+60|0;v=m+64|0;z=m+68|0;n=m+72|0;p=m+40|0;o=m;G=m+76|0;u=m+80|0;F=m+4|0;t=m+8|0;B=m+16|0;A=m+20|0;E=m+24|0;D=m+28|0;H=m+32|0;s=m+36|0;c[x>>2]=f;c[y>>2]=g;c[w>>2]=h;c[q>>2]=j;c[v>>2]=k;c[z>>2]=l;c[n>>2]=0;c[m+12>>2]=0;c[o>>2]=0;if((c[y>>2]|0)==0){l=1}else{l=(a[c[y>>2]>>0]|0)==0}c[F>>2]=l&1;if((c[y>>2]|0)!=0){if((YK(c[y>>2]|0,10824)|0)==0){l=1}else{C=5}}else{C=5}do{if((C|0)==5){if((c[F>>2]|0)!=0){if((po(c[w>>2]|0)|0)!=0){l=1;break}}l=(c[z>>2]&128|0)!=0}}while(0);c[t>>2]=l&1;if((c[t>>2]|0)!=0){c[v>>2]=c[v>>2]|2}do{if((c[z>>2]&256|0)!=0){if((c[t>>2]|0)==0){if((c[F>>2]|0)==0){break}}c[z>>2]=c[z>>2]&-257|512}}while(0);c[p>>2]=Sc(44)|0;if((c[p>>2]|0)==0){c[r>>2]=7;f=c[r>>2]|0;i=m;return f|0}a[(c[p>>2]|0)+8>>0]=0;c[c[p>>2]>>2]=c[w>>2];c[(c[p>>2]|0)+28>>2]=c[p>>2];c[(c[p>>2]|0)+32>>2]=1;do{if((c[F>>2]|0)==0){if((c[t>>2]|0)!=0){if((c[z>>2]&64|0)==0){break}}if((c[z>>2]&131072|0)!=0){c[B>>2]=(c[(c[x>>2]|0)+8>>2]|0)+1;c[A>>2]=nc(c[B>>2]|0)|0;a[(c[p>>2]|0)+9>>0]=1;if((c[A>>2]|0)==0){oc(c[p>>2]|0);c[r>>2]=7;f=c[r>>2]|0;i=m;return f|0}if((c[t>>2]|0)!=0){g=c[A>>2]|0;f=c[y>>2]|0;fL(g|0,f|0,(Ub(c[y>>2]|0)|0)+1|0)|0}else{c[o>>2]=qo(c[x>>2]|0,c[y>>2]|0,c[B>>2]|0,c[A>>2]|0)|0;if((c[o>>2]|0)!=0){oc(c[A>>2]|0);oc(c[p>>2]|0);c[r>>2]=c[o>>2];f=c[r>>2]|0;i=m;return f|0}}c[n>>2]=c[2710];while(1){if((c[n>>2]|0)==0){break}f=c[A>>2]|0;if(0==(YK(f,Sg(c[c[n>>2]>>2]|0,0)|0)|0)){f=ro(c[c[n>>2]>>2]|0)|0;if((f|0)==(c[x>>2]|0)){C=30;break}}c[n>>2]=c[(c[n>>2]|0)+68>>2]}do{if((C|0)==30){c[E>>2]=(c[(c[w>>2]|0)+20>>2]|0)-1;while(1){if((c[E>>2]|0)<0){C=36;break}c[D>>2]=c[(c[(c[w>>2]|0)+16>>2]|0)+(c[E>>2]<<4)+4>>2];if((c[D>>2]|0)!=0){if((c[(c[D>>2]|0)+4>>2]|0)==(c[n>>2]|0)){break}}c[E>>2]=(c[E>>2]|0)+ -1}if((C|0)==36){c[(c[p>>2]|0)+4>>2]=c[n>>2];f=(c[n>>2]|0)+64|0;c[f>>2]=(c[f>>2]|0)+1;break}oc(c[A>>2]|0);oc(c[p>>2]|0);c[r>>2]=19;f=c[r>>2]|0;i=m;return f|0}}while(0);oc(c[A>>2]|0)}}}while(0);do{if((c[n>>2]|0)==0){c[n>>2]=Sc(84)|0;if((c[n>>2]|0)==0){c[o>>2]=7;break}c[o>>2]=so(c[x>>2]|0,c[n>>2]|0,c[y>>2]|0,76,c[v>>2]|0,c[z>>2]|0,14)|0;if((c[o>>2]|0)==0){f=(c[w>>2]|0)+40|0;uo(c[c[n>>2]>>2]|0,c[f>>2]|0,c[f+4>>2]|0);c[o>>2]=vo(c[c[n>>2]>>2]|0,100,u)|0}if((c[o>>2]|0)==0){a[(c[n>>2]|0)+16>>0]=c[v>>2];c[(c[n>>2]|0)+4>>2]=c[w>>2];wo(c[c[n>>2]>>2]|0,42,c[n>>2]|0);c[(c[p>>2]|0)+4>>2]=c[n>>2];c[(c[n>>2]|0)+8>>2]=0;c[(c[n>>2]|0)+12>>2]=0;if((yo(c[c[n>>2]>>2]|0)|0)<<24>>24!=0){f=(c[n>>2]|0)+22|0;b[f>>1]=e[f>>1]|1}c[(c[n>>2]|0)+32>>2]=d[u+16>>0]<<8|d[u+17>>0]<<16;if((c[(c[n>>2]|0)+32>>2]|0)>>>0<512){C=50}else{if((c[(c[n>>2]|0)+32>>2]|0)>>>0>65536){C=50}else{if(((c[(c[n>>2]|0)+32>>2]|0)-1&c[(c[n>>2]|0)+32>>2]|0)!=0){C=50}else{a[G>>0]=a[u+20>>0]|0;f=(c[n>>2]|0)+22|0;b[f>>1]=e[f>>1]|2;f=(zo(u+52|0)|0)!=0;a[(c[n>>2]|0)+17>>0]=f?1:0;f=(zo(u+64|0)|0)!=0;a[(c[n>>2]|0)+18>>0]=f?1:0}}}if((C|0)==50){c[(c[n>>2]|0)+32>>2]=0;if((c[y>>2]|0)!=0){if((c[t>>2]|0)==0){a[(c[n>>2]|0)+17>>0]=0;a[(c[n>>2]|0)+18>>0]=0}}a[G>>0]=0}c[o>>2]=bh(c[c[n>>2]>>2]|0,(c[n>>2]|0)+32|0,d[G>>0]|0)|0;if((c[o>>2]|0)==0){c[(c[n>>2]|0)+36>>2]=(c[(c[n>>2]|0)+32>>2]|0)-(d[G>>0]|0);if((a[(c[p>>2]|0)+9>>0]|0)!=0){c[(c[n>>2]|0)+64>>2]=1;c[(c[n>>2]|0)+68>>2]=c[2710];c[2710]=c[n>>2];C=58}else{C=58}}}}else{C=58}}while(0);if((C|0)==58){a:do{if((a[(c[p>>2]|0)+9>>0]|0)!=0){c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[(c[w>>2]|0)+20>>2]|0)){break a}f=c[(c[(c[w>>2]|0)+16>>2]|0)+(c[H>>2]<<4)+4>>2]|0;c[s>>2]=f;if((f|0)!=0){if((d[(c[s>>2]|0)+9>>0]|0)!=0){break}}c[H>>2]=(c[H>>2]|0)+1}while(1){if((c[(c[s>>2]|0)+24>>2]|0)==0){break}c[s>>2]=c[(c[s>>2]|0)+24>>2]}if((c[(c[p>>2]|0)+4>>2]|0)>>>0<(c[(c[s>>2]|0)+4>>2]|0)>>>0){c[(c[p>>2]|0)+20>>2]=c[s>>2];c[(c[p>>2]|0)+24>>2]=0;c[(c[s>>2]|0)+24>>2]=c[p>>2];break}while(1){if((c[(c[s>>2]|0)+20>>2]|0)!=0){u=(c[(c[(c[s>>2]|0)+20>>2]|0)+4>>2]|0)>>>0<(c[(c[p>>2]|0)+4>>2]|0)>>>0}else{u=0}t=c[(c[s>>2]|0)+20>>2]|0;if(!u){break}c[s>>2]=t}c[(c[p>>2]|0)+20>>2]=t;c[(c[p>>2]|0)+24>>2]=c[s>>2];if((c[(c[p>>2]|0)+20>>2]|0)!=0){c[(c[(c[p>>2]|0)+20>>2]|0)+24>>2]=c[p>>2]}c[(c[s>>2]|0)+20>>2]=c[p>>2]}}while(0);c[c[q>>2]>>2]=c[p>>2]}if((c[o>>2]|0)!=0){if((c[n>>2]|0)!=0){if((c[c[n>>2]>>2]|0)!=0){Ao(c[c[n>>2]>>2]|0)|0}}oc(c[n>>2]|0);oc(c[p>>2]|0);c[c[q>>2]>>2]=0}else{if((no(c[p>>2]|0,0,0)|0)==0){Bo(c[c[(c[p>>2]|0)+4>>2]>>2]|0,2e3)}}c[r>>2]=c[o>>2];f=c[r>>2]|0;i=m;return f|0}function Qh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;h=i;i=i+16|0;f=h+8|0;j=h;g=h+4|0;c[f>>2]=b;c[j>>2]=e;if((c[j>>2]|0)!=0){c[g>>2]=no(c[j>>2]|0,84,15)|0}else{c[g>>2]=ve(0,84)|0}if((c[g>>2]|0)==0){a[(c[f>>2]|0)+64>>0]=1;b=c[g>>2]|0;i=h;return b|0}if(0!=(d[(c[g>>2]|0)+76>>0]|0|0)){b=c[g>>2]|0;i=h;return b|0}Lh((c[g>>2]|0)+8|0);Lh((c[g>>2]|0)+24|0);Lh((c[g>>2]|0)+40|0);Lh((c[g>>2]|0)+56|0);a[(c[g>>2]|0)+77>>0]=1;b=c[g>>2]|0;i=h;return b|0}function Rh(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;c[f>>2]=qg(c[e>>2]|0,10816,2)|0;if((c[f>>2]|0)!=7){i=d;return}a[(c[e>>2]|0)+64>>0]=1;i=d;return}function Sh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+32|0;g=b;d=b+24|0;k=b+4|0;h=b+8|0;e=b+12|0;j=b+16|0;f=b+20|0;c[d>>2]=a;c[h>>2]=1;if((c[448]|0)==0){i=b;return}c[k>>2]=0;while(1){if((c[h>>2]|0)==0){break}if((c[k>>2]|0)>=(c[448]|0)){c[j>>2]=0;c[h>>2]=0}else{c[j>>2]=c[(c[1796>>2]|0)+(c[k>>2]<<2)>>2]}c[f>>2]=0;if((c[j>>2]|0)!=0){a=pb[c[j>>2]&31](c[d>>2]|0,f,10008)|0;c[e>>2]=a;if((a|0)!=0){l=c[d>>2]|0;a=c[e>>2]|0;c[g>>2]=c[f>>2];Rc(l,a,10776,g);c[h>>2]=0}}oc(c[f>>2]|0);c[k>>2]=(c[k>>2]|0)+1}i=b;return}function Th(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;d=b+20|0;f=b;e=b+4|0;g=b+8|0;j=b+12|0;h=b+16|0;c[f>>2]=a;c[e>>2]=0;c[g>>2]=0;c[j>>2]=0;c[h>>2]=0;c[e>>2]=Uh(c[f>>2]|0)|0;if((c[e>>2]|0)!=0){c[d>>2]=c[e>>2];j=c[d>>2]|0;i=b;return j|0}Vh(j);Wh(h);c[g>>2]=mc(20)|0;if((c[g>>2]|0)!=0){Xh(c[g>>2]|0,1,1)}else{c[e>>2]=7}do{if((c[e>>2]|0)==0){if((Yh(c[g>>2]|0,3672,7,c[j>>2]|0)|0)==0){if((Yh(c[g>>2]|0,3680,7,c[h>>2]|0)|0)==0){break}}c[e>>2]=7}}while(0);if(0==(c[e>>2]|0)){j=Zh(c[f>>2]|0,c[g>>2]|0,3688)|0;c[e>>2]=j;if(0==(j|0)){j=qg(c[f>>2]|0,3704,-1)|0;c[e>>2]=j;if(0==(j|0)){j=qg(c[f>>2]|0,3712,1)|0;c[e>>2]=j;if(0==(j|0)){j=qg(c[f>>2]|0,3720,1)|0;c[e>>2]=j;if(0==(j|0)){j=qg(c[f>>2]|0,3720,2)|0;c[e>>2]=j;if(0==(j|0)){j=qg(c[f>>2]|0,3736,1)|0;c[e>>2]=j;if(0==(j|0)){c[e>>2]=Kf(c[f>>2]|0,3752,3760,c[g>>2]|0,16)|0;if((c[e>>2]|0)==0){c[e>>2]=Kf(c[f>>2]|0,3856,3760,c[g>>2]|0,0)|0}if((c[e>>2]|0)==0){c[e>>2]=$h(c[f>>2]|0,c[g>>2]|0)|0}c[d>>2]=c[e>>2];j=c[d>>2]|0;i=b;return j|0}}}}}}}if((c[g>>2]|0)!=0){ai(c[g>>2]|0);oc(c[g>>2]|0)}c[d>>2]=c[e>>2];j=c[d>>2]|0;i=b;return j|0}function Uh(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=If(c[e>>2]|0,9872,9776,0)|0;i=d;return c[b>>2]|0}function Vh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[c[d>>2]>>2]=9744;i=b;return}function Wh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[c[d>>2]>>2]=9128;i=b;return}function Xh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f;j=f+5|0;h=f+4|0;c[g>>2]=b;a[j>>0]=d;a[h>>0]=e;a[c[g>>2]>>0]=a[j>>0]|0;a[(c[g>>2]|0)+1>>0]=a[h>>0]|0;c[(c[g>>2]|0)+8>>2]=0;c[(c[g>>2]|0)+4>>2]=0;c[(c[g>>2]|0)+12>>2]=0;c[(c[g>>2]|0)+16>>2]=0;i=f;return}function Yh(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+48|0;j=k+40|0;l=k+36|0;m=k+32|0;g=k+28|0;o=k+24|0;p=k+20|0;n=k+12|0;s=k+8|0;q=k+4|0;t=k;r=k+16|0;c[l>>2]=b;c[m>>2]=d;c[g>>2]=e;c[o>>2]=f;c[t>>2]=ri(a[c[l>>2]>>0]|0)|0;c[p>>2]=zb[c[t>>2]&127](c[m>>2]|0,c[g>>2]|0)|0;c[n>>2]=c[p>>2]&(c[(c[l>>2]|0)+12>>2]|0)-1;c[s>>2]=si(c[l>>2]|0,c[m>>2]|0,c[g>>2]|0,c[n>>2]|0)|0;if((c[s>>2]|0)!=0){c[r>>2]=c[(c[s>>2]|0)+8>>2];if((c[o>>2]|0)==0){Cn(c[l>>2]|0,c[s>>2]|0,c[n>>2]|0)}else{c[(c[s>>2]|0)+8>>2]=c[o>>2]}c[j>>2]=c[r>>2];t=c[j>>2]|0;i=k;return t|0}if((c[o>>2]|0)==0){c[j>>2]=0;t=c[j>>2]|0;i=k;return t|0}if((c[(c[l>>2]|0)+12>>2]|0)==0){if((Dn(c[l>>2]|0,8)|0)==0){h=10}}else{h=10}do{if((h|0)==10){if((c[(c[l>>2]|0)+4>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0)){if((Dn(c[l>>2]|0,c[(c[l>>2]|0)+12>>2]<<1)|0)!=0){break}}c[q>>2]=En(20)|0;if((c[q>>2]|0)==0){c[j>>2]=c[o>>2];t=c[j>>2]|0;i=k;return t|0}do{if((a[(c[l>>2]|0)+1>>0]|0)!=0){if((c[m>>2]|0)!=0){r=En(c[g>>2]|0)|0;c[(c[q>>2]|0)+12>>2]=r;r=c[q>>2]|0;if((c[(c[q>>2]|0)+12>>2]|0)!=0){fL(c[r+12>>2]|0,c[m>>2]|0,c[g>>2]|0)|0;break}bi(r);c[j>>2]=c[o>>2];t=c[j>>2]|0;i=k;return t|0}else{h=20}}else{h=20}}while(0);if((h|0)==20){c[(c[q>>2]|0)+12>>2]=c[m>>2]}c[(c[q>>2]|0)+16>>2]=c[g>>2];t=(c[l>>2]|0)+4|0;c[t>>2]=(c[t>>2]|0)+1;c[n>>2]=c[p>>2]&(c[(c[l>>2]|0)+12>>2]|0)-1;Fn(c[l>>2]|0,(c[(c[l>>2]|0)+16>>2]|0)+(c[n>>2]<<3)|0,c[q>>2]|0);c[(c[q>>2]|0)+8>>2]=c[o>>2];c[j>>2]=0;t=c[j>>2]|0;i=k;return t|0}}while(0);c[(c[l>>2]|0)+4>>2]=0;c[j>>2]=c[o>>2];t=c[j>>2]|0;i=k;return t|0}function Zh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;g=f+20|0;k=f;h=f+4|0;e=f+8|0;j=f+12|0;c[g>>2]=a;c[k>>2]=b;c[h>>2]=d;c[e>>2]=0;c[j>>2]=c[k>>2];c[f+16>>2]=5;if(0==(c[e>>2]|0)){c[e>>2]=ng(c[g>>2]|0,c[h>>2]|0,1,5,c[j>>2]|0,56,0,0)|0}if(0!=(c[e>>2]|0)){k=c[e>>2]|0;i=f;return k|0}c[e>>2]=ng(c[g>>2]|0,c[h>>2]|0,2,5,c[j>>2]|0,56,0,0)|0;k=c[e>>2]|0;i=f;return k|0}function _h(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];ai(c[d>>2]|0);oc(c[d>>2]|0);i=b;return}function $h(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;d=e+4|0;c[g>>2]=a;c[f>>2]=b;c[d>>2]=If(c[g>>2]|0,3960,3864,c[f>>2]|0)|0;i=e;return c[d>>2]|0}function ai(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+8|0;f=e;g=e+4|0;c[d>>2]=b;c[f>>2]=c[(c[d>>2]|0)+8>>2];c[(c[d>>2]|0)+8>>2]=0;bi(c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+16>>2]=0;c[(c[d>>2]|0)+12>>2]=0;while(1){if((c[f>>2]|0)==0){break}c[g>>2]=c[c[f>>2]>>2];if((a[(c[d>>2]|0)+1>>0]|0)!=0){if((c[(c[f>>2]|0)+12>>2]|0)!=0){bi(c[(c[f>>2]|0)+12>>2]|0)}}bi(c[f>>2]|0);c[f>>2]=c[g>>2]}c[(c[d>>2]|0)+4>>2]=0;i=e;return}function bi(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;oc(c[d>>2]|0);i=b;return}function ci(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,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;q=i;i=i+64|0;h=q+56|0;x=q+52|0;r=q+48|0;v=q+44|0;w=q+40|0;p=q+36|0;u=q+32|0;k=q+28|0;l=q+20|0;n=q+16|0;j=q+12|0;o=q+8|0;s=q+4|0;t=q;m=q+24|0;c[x>>2]=a;c[r>>2]=b;c[v>>2]=d;c[w>>2]=e;c[p>>2]=f;c[u>>2]=g;c[l>>2]=0;c[n>>2]=0;c[o>>2]=0;c[j>>2]=Lf(c[x>>2]|0,3976)|0;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];x=c[h>>2]|0;i=q;return x|0}c[s>>2]=(c[v>>2]|0)-3;c[j>>2]=ni(c[s>>2]|0,(c[w>>2]|0)+12|0,o)|0;if((c[j>>2]|0)==0){if((c[s>>2]|0)<1){c[t>>2]=3672}else{c[t>>2]=c[c[o>>2]>>2]}c[j>>2]=oi(c[r>>2]|0,c[t>>2]|0,l,c[u>>2]|0)|0}if((c[j>>2]|0)==0){c[m>>2]=(c[o>>2]|0)+4;if((c[s>>2]|0)>1){r=(c[s>>2]|0)-1|0}else{r=0}c[j>>2]=pb[c[(c[l>>2]|0)+4>>2]&31](r,c[m>>2]|0,n)|0}if((c[j>>2]|0)==0){c[k>>2]=mc(20)|0;if((c[k>>2]|0)==0){c[j>>2]=7}}if((c[j>>2]|0)==0){x=c[k>>2]|0;c[x+0>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;c[x+12>>2]=0;c[x+16>>2]=0;c[(c[k>>2]|0)+12>>2]=c[l>>2];c[(c[k>>2]|0)+16>>2]=c[n>>2];c[c[p>>2]>>2]=c[k>>2]}else{if((c[n>>2]|0)!=0){ub[c[(c[l>>2]|0)+8>>2]&63](c[n>>2]|0)|0}}oc(c[o>>2]|0);c[h>>2]=c[j>>2];x=c[h>>2]|0;i=q;return x|0}function di(b,e){b=b|0;e=e|0;var f=0,g=0,j=0,k=0;j=i;i=i+16|0;g=j+12|0;f=j+4|0;k=j+8|0;c[j>>2]=b;c[f>>2]=e;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[c[f>>2]>>2]|0)){e=8;break}if((d[(c[(c[f>>2]|0)+4>>2]|0)+((c[k>>2]|0)*12|0)+5>>0]|0|0)!=0){if((c[(c[(c[f>>2]|0)+4>>2]|0)+((c[k>>2]|0)*12|0)>>2]|0)==0){if((d[(c[(c[f>>2]|0)+4>>2]|0)+((c[k>>2]|0)*12|0)+4>>0]|0|0)==2){e=6;break}}}c[k>>2]=(c[k>>2]|0)+1}if((e|0)==6){c[(c[f>>2]|0)+20>>2]=1;c[(c[(c[f>>2]|0)+16>>2]|0)+(c[k>>2]<<3)>>2]=1;a[(c[(c[f>>2]|0)+16>>2]|0)+(c[k>>2]<<3)+4>>0]=1;h[(c[f>>2]|0)+40>>3]=1.0;c[g>>2]=0;b=c[g>>2]|0;i=j;return b|0}else if((e|0)==8){c[(c[f>>2]|0)+20>>2]=0;c[g>>2]=0;b=c[g>>2]|0;i=j;return b|0}return 0}function ei(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];ub[c[(c[(c[d>>2]|0)+12>>2]|0)+8>>2]&63](c[(c[d>>2]|0)+16>>2]|0)|0;oc(c[d>>2]|0);i=b;return 0}function fi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+12|0;g=d+4|0;f=d+8|0;c[d>>2]=a;c[g>>2]=b;c[f>>2]=mc(36)|0;if((c[f>>2]|0)==0){c[e>>2]=7;a=c[e>>2]|0;i=d;return a|0}else{a=(c[f>>2]|0)+0|0;b=a+36|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[c[g>>2]>>2]=c[f>>2];c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}return 0}function gi(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];mi(c[d>>2]|0);oc(c[d>>2]|0);i=b;return 0}function hi(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+48|0;j=k+40|0;l=k+36|0;r=k+32|0;q=k+20|0;o=k+12|0;n=k+8|0;m=k+4|0;h=k;p=k+16|0;c[l>>2]=b;c[r>>2]=d;c[k+28>>2]=e;c[k+24>>2]=f;c[q>>2]=g;c[o>>2]=1;c[n>>2]=c[l>>2];c[m>>2]=c[c[l>>2]>>2];mi(c[n>>2]|0);do{if((c[r>>2]|0)==1){c[h>>2]=Jd(c[c[q>>2]>>2]|0)|0;c[p>>2]=Kd(c[c[q>>2]>>2]|0)|0;r=mc((c[p>>2]|0)+1|0)|0;c[(c[n>>2]|0)+4>>2]=r;if((c[(c[n>>2]|0)+4>>2]|0)==0){c[o>>2]=7;break}fL(c[(c[n>>2]|0)+4>>2]|0,c[h>>2]|0,c[p>>2]|0)|0;a[(c[(c[n>>2]|0)+4>>2]|0)+(c[p>>2]|0)>>0]=0;c[o>>2]=xb[c[(c[(c[m>>2]|0)+12>>2]|0)+12>>2]&31](c[(c[m>>2]|0)+16>>2]|0,c[(c[n>>2]|0)+4>>2]|0,c[p>>2]|0,(c[n>>2]|0)+8|0)|0;if((c[o>>2]|0)==0){c[c[(c[n>>2]|0)+8>>2]>>2]=c[(c[m>>2]|0)+16>>2]}}}while(0);if((c[o>>2]|0)!=0){c[j>>2]=c[o>>2];r=c[j>>2]|0;i=k;return r|0}else{c[j>>2]=ii(c[l>>2]|0)|0;r=c[j>>2]|0;i=k;return r|0}return 0}function ii(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;g=b+12|0;e=b;f=b+4|0;d=b+8|0;c[g>>2]=a;c[e>>2]=c[g>>2];c[f>>2]=c[c[g>>2]>>2];a=(c[e>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+1;c[d>>2]=tb[c[(c[(c[f>>2]|0)+12>>2]|0)+20>>2]&15](c[(c[e>>2]|0)+8>>2]|0,(c[e>>2]|0)+16|0,(c[e>>2]|0)+20|0,(c[e>>2]|0)+24|0,(c[e>>2]|0)+28|0,(c[e>>2]|0)+32|0)|0;if((c[d>>2]|0)==0){g=c[d>>2]|0;i=b;return g|0}mi(c[e>>2]|0);if((c[d>>2]|0)!=101){g=c[d>>2]|0;i=b;return g|0}c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}function ji(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=c[e>>2];i=d;return(c[(c[b>>2]|0)+16>>2]|0)==0|0}function ki(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;g=e;h=e+4|0;f=e+8|0;c[j>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f>>2]=c[j>>2];d=c[h>>2]|0;if((d|0)==1){ce(c[g>>2]|0,c[(c[f>>2]|0)+16>>2]|0,c[(c[f>>2]|0)+20>>2]|0,-1);i=e;return 0}else if((d|0)==2){Zd(c[g>>2]|0,c[(c[f>>2]|0)+24>>2]|0);i=e;return 0}else if((d|0)==0){ce(c[g>>2]|0,c[(c[f>>2]|0)+4>>2]|0,-1,-1);i=e;return 0}else if((d|0)==3){Zd(c[g>>2]|0,c[(c[f>>2]|0)+28>>2]|0);i=e;return 0}else{Zd(c[g>>2]|0,c[(c[f>>2]|0)+32>>2]|0);i=e;return 0}return 0}function li(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d;f=d+4|0;c[g>>2]=a;c[e>>2]=b;c[f>>2]=c[g>>2];b=c[(c[f>>2]|0)+12>>2]|0;a=c[e>>2]|0;c[a>>2]=b;c[a+4>>2]=((b|0)<0)<<31>>31;i=d;return 0}function mi(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[(c[d>>2]|0)+8>>2]|0)!=0){c[e>>2]=c[c[d>>2]>>2];ub[c[(c[(c[e>>2]|0)+12>>2]|0)+16>>2]&63](c[(c[d>>2]|0)+8>>2]|0)|0;c[(c[d>>2]|0)+8>>2]=0}oc(c[(c[d>>2]|0)+4>>2]|0);c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+16>>2]=0;c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+24>>2]=0;c[(c[d>>2]|0)+28>>2]=0;c[(c[d>>2]|0)+32>>2]=0;c[(c[d>>2]|0)+12>>2]=0;i=b;return}function ni(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+48|0;j=k+32|0;e=k+28|0;g=k+24|0;f=k+20|0;h=k+16|0;o=k+8|0;n=k+4|0;m=k;l=k+12|0;c[j>>2]=a;c[e>>2]=b;c[g>>2]=d;c[f>>2]=0;if((c[j>>2]|0)==0){c[c[g>>2]>>2]=0;a=c[f>>2]|0;i=k;return a|0}c[o>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[j>>2]|0)){break}a=(cL(c[(c[e>>2]|0)+(c[h>>2]<<2)>>2]|0)|0)+1|0;c[o>>2]=(c[o>>2]|0)+a;c[h>>2]=(c[h>>2]|0)+1}a=mc((c[j>>2]<<2)+(c[o>>2]|0)|0)|0;c[n>>2]=a;c[c[g>>2]>>2]=a;if((c[n>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=k;return a|0}c[m>>2]=(c[n>>2]|0)+(c[j>>2]<<2);c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[j>>2]|0)){break}c[l>>2]=cL(c[(c[e>>2]|0)+(c[h>>2]<<2)>>2]|0)|0;c[(c[n>>2]|0)+(c[h>>2]<<2)>>2]=c[m>>2];fL(c[m>>2]|0,c[(c[e>>2]|0)+(c[h>>2]<<2)>>2]|0,(c[l>>2]|0)+1|0)|0;yi(c[m>>2]|0);c[m>>2]=(c[m>>2]|0)+((c[l>>2]|0)+1);c[h>>2]=(c[h>>2]|0)+1}a=c[f>>2]|0;i=k;return a|0}function oi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;l=k;g=k+28|0;o=k+4|0;m=k+8|0;h=k+12|0;f=k+16|0;j=k+20|0;n=k+24|0;c[o>>2]=a;c[m>>2]=b;c[h>>2]=d;c[f>>2]=e;c[n>>2]=cL(c[m>>2]|0)|0;c[j>>2]=pi(c[o>>2]|0,c[m>>2]|0,(c[n>>2]|0)+1|0)|0;if((c[j>>2]|0)!=0){c[c[h>>2]>>2]=c[j>>2];c[g>>2]=0;o=c[g>>2]|0;i=k;return o|0}else{c[l>>2]=c[m>>2];o=wc(4032,l)|0;c[c[f>>2]>>2]=o;c[g>>2]=1;o=c[g>>2]|0;i=k;return o|0}return 0}function pi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;h=e;g=e+4|0;f=e+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[f>>2]=qi(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;if((c[f>>2]|0)==0){j=0;i=e;return j|0}j=c[(c[f>>2]|0)+8>>2]|0;i=e;return j|0}function qi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;h=f;l=f+4|0;k=f+8|0;j=f+12|0;m=f+16|0;c[h>>2]=b;c[l>>2]=d;c[k>>2]=e;if((c[h>>2]|0)!=0){if((c[(c[h>>2]|0)+16>>2]|0)!=0){c[m>>2]=ri(a[c[h>>2]>>0]|0)|0;c[j>>2]=zb[c[m>>2]&127](c[l>>2]|0,c[k>>2]|0)|0;c[g>>2]=si(c[h>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]&(c[(c[h>>2]|0)+12>>2]|0)-1)|0;b=c[g>>2]|0;i=f;return b|0}}c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}function ri(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;if((c[e>>2]|0)==1){c[b>>2]=47}else{c[b>>2]=48}i=d;return c[b>>2]|0}function si(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+48|0;n=h+32|0;o=h+28|0;l=h+24|0;m=h+20|0;q=h+16|0;k=h+8|0;g=h+4|0;j=h;p=h+12|0;c[o>>2]=b;c[l>>2]=d;c[m>>2]=e;c[q>>2]=f;a:do{if((c[(c[o>>2]|0)+16>>2]|0)!=0){c[p>>2]=(c[(c[o>>2]|0)+16>>2]|0)+(c[q>>2]<<3);c[k>>2]=c[(c[p>>2]|0)+4>>2];c[g>>2]=c[c[p>>2]>>2];c[j>>2]=ti(a[c[o>>2]>>0]|0)|0;while(1){b=c[g>>2]|0;c[g>>2]=b+ -1;if((b|0)==0){break a}if((c[k>>2]|0)==0){break a}b=(xb[c[j>>2]&31](c[(c[k>>2]|0)+12>>2]|0,c[(c[k>>2]|0)+16>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)==0;f=c[k>>2]|0;if(b){break}c[k>>2]=c[f>>2]}c[n>>2]=f;b=c[n>>2]|0;i=h;return b|0}}while(0);c[n>>2]=0;b=c[n>>2]|0;i=h;return b|0}function ti(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;if((c[e>>2]|0)==1){c[b>>2]=11}else{c[b>>2]=12}i=d;return c[b>>2]|0}function ui(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;k=f;h=f+4|0;j=f+8|0;l=f+12|0;c[k>>2]=a;c[h>>2]=b;c[j>>2]=d;c[l>>2]=e;if((c[h>>2]|0)!=(c[l>>2]|0)){c[g>>2]=1;l=c[g>>2]|0;i=f;return l|0}else{c[g>>2]=ZK(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;l=c[g>>2]|0;i=f;return l|0}return 0}function vi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;k=f;h=f+4|0;j=f+8|0;l=f+12|0;c[k>>2]=a;c[h>>2]=b;c[j>>2]=d;c[l>>2]=e;if((c[h>>2]|0)!=(c[l>>2]|0)){c[g>>2]=1;l=c[g>>2]|0;i=f;return l|0}else{c[g>>2]=XK(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;l=c[g>>2]|0;i=f;return l|0}return 0}function wi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;g=e;h=e+4|0;f=e+8|0;c[j>>2]=b;c[g>>2]=d;c[h>>2]=c[j>>2];c[f>>2]=0;if((c[g>>2]|0)<=0){c[g>>2]=cL(c[h>>2]|0)|0}while(1){d=c[f>>2]|0;if((c[g>>2]|0)<=0){break}b=d<<3^c[f>>2];j=c[h>>2]|0;c[h>>2]=j+1;c[f>>2]=b^a[j>>0];c[g>>2]=(c[g>>2]|0)+ -1}i=e;return d&2147483647|0}function xi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;f=e;g=e+4|0;h=e+8|0;c[j>>2]=b;c[f>>2]=d;c[g>>2]=0;c[h>>2]=c[j>>2];while(1){j=c[f>>2]|0;c[f>>2]=j+ -1;d=c[g>>2]|0;if((j|0)<=0){break}b=d<<3^c[g>>2];j=c[h>>2]|0;c[h>>2]=j+1;c[g>>2]=b^a[j>>0]}i=e;return d&2147483647|0}function yi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+8|0;g=d+12|0;f=d+4|0;h=d;c[e>>2]=b;a[g>>0]=a[c[e>>2]>>0]|0;if((a[g>>0]|0)!=91){if((a[g>>0]|0)!=39){if((a[g>>0]|0)!=34){if((a[g>>0]|0)!=96){i=d;return}}}}c[f>>2]=1;c[h>>2]=0;if((a[g>>0]|0)==91){a[g>>0]=93}while(1){if((a[(c[e>>2]|0)+(c[f>>2]|0)>>0]|0)==0){break}b=c[f>>2]|0;j=b+1|0;if((a[(c[e>>2]|0)+(c[f>>2]|0)>>0]|0)!=(a[g>>0]|0)){c[f>>2]=j;b=a[(c[e>>2]|0)+b>>0]|0;j=c[h>>2]|0;c[h>>2]=j+1;a[(c[e>>2]|0)+j>>0]=b;continue}if((a[(c[e>>2]|0)+j>>0]|0)!=(a[g>>0]|0)){break}b=a[g>>0]|0;j=c[h>>2]|0;c[h>>2]=j+1;a[(c[e>>2]|0)+j>>0]=b;c[f>>2]=(c[f>>2]|0)+2}a[(c[e>>2]|0)+(c[h>>2]|0)>>0]=0;i=d;return}function zi(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;o=h+20|0;n=h;m=h+4|0;l=h+8|0;k=h+12|0;j=h+16|0;c[o>>2]=a;c[n>>2]=b;c[m>>2]=d;c[l>>2]=e;c[k>>2]=f;c[j>>2]=g;a=mn(1,c[o>>2]|0,c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;i=h;return a|0}function Ai(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;o=h+20|0;n=h;m=h+4|0;l=h+8|0;k=h+12|0;j=h+16|0;c[o>>2]=a;c[n>>2]=b;c[m>>2]=d;c[l>>2]=e;c[k>>2]=f;c[j>>2]=g;a=mn(0,c[o>>2]|0,c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;i=h;return a|0}function Bi(b,e){b=b|0;e=e|0;var f=0,g=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;j=i;i=i+64|0;g=j+48|0;v=j+44|0;f=j+40|0;r=j+36|0;s=j+32|0;l=j+28|0;q=j+24|0;p=j+16|0;o=j+12|0;n=j+8|0;u=j+4|0;t=j;k=j+20|0;c[v>>2]=b;c[f>>2]=e;c[r>>2]=c[v>>2];c[l>>2]=-1;c[q>>2]=-1;c[p>>2]=-1;c[o>>2]=-1;c[(c[f>>2]|0)+20>>2]=0;h[(c[f>>2]|0)+40>>3]=5.0e6;c[s>>2]=0;a:while(1){if((c[s>>2]|0)>=(c[c[f>>2]>>2]|0)){break}c[t>>2]=(c[(c[f>>2]|0)+4>>2]|0)+((c[s>>2]|0)*12|0);e=c[t>>2]|0;do{if((d[(c[t>>2]|0)+5>>0]|0)==0){if((d[e+4>>0]|0)==64){m=5;break a}}else{if((c[e>>2]|0)<0){e=1}else{e=(c[c[t>>2]>>2]|0)==((c[(c[r>>2]|0)+24>>2]|0)+1|0)}c[u>>2]=e&1;if((c[l>>2]|0)<0){if((d[(c[t>>2]|0)+4>>0]|0)==2){if((c[u>>2]|0)!=0){c[(c[f>>2]|0)+20>>2]=1;h[(c[f>>2]|0)+40>>3]=1.0;c[l>>2]=c[s>>2]}}}if((d[(c[t>>2]|0)+4>>0]|0)==64){if((c[c[t>>2]>>2]|0)>=0){if((c[c[t>>2]>>2]|0)<=(c[(c[r>>2]|0)+24>>2]|0)){c[(c[f>>2]|0)+20>>2]=2+(c[c[t>>2]>>2]|0);h[(c[f>>2]|0)+40>>3]=2.0;c[l>>2]=c[s>>2]}}}if((d[(c[t>>2]|0)+4>>0]|0)==2){if((c[c[t>>2]>>2]|0)==((c[(c[r>>2]|0)+24>>2]|0)+2|0)){c[q>>2]=c[s>>2]}}if((c[u>>2]|0)!=0){e=d[(c[t>>2]|0)+4>>0]|0;if((e|0)==16|(e|0)==8){c[o>>2]=c[s>>2];break}else if((e|0)==4|(e|0)==32){c[p>>2]=c[s>>2];break}else{break}}}}while(0);c[s>>2]=(c[s>>2]|0)+1}if((m|0)==5){c[(c[f>>2]|0)+20>>2]=0;h[(c[f>>2]|0)+40>>3]=1.0e+50;ln(c[f>>2]|0,0,262144);c[g>>2]=0;v=c[g>>2]|0;i=j;return v|0}c[n>>2]=1;if((c[l>>2]|0)>=0){v=c[n>>2]|0;c[n>>2]=v+1;c[(c[(c[f>>2]|0)+16>>2]|0)+(c[l>>2]<<3)>>2]=v;a[(c[(c[f>>2]|0)+16>>2]|0)+(c[l>>2]<<3)+4>>0]=1}if((c[q>>2]|0)>=0){v=(c[f>>2]|0)+20|0;c[v>>2]=c[v>>2]|65536;v=c[n>>2]|0;c[n>>2]=v+1;c[(c[(c[f>>2]|0)+16>>2]|0)+(c[q>>2]<<3)>>2]=v}if((c[p>>2]|0)>=0){v=(c[f>>2]|0)+20|0;c[v>>2]=c[v>>2]|131072;v=c[n>>2]|0;c[n>>2]=v+1;c[(c[(c[f>>2]|0)+16>>2]|0)+(c[p>>2]<<3)>>2]=v}if((c[o>>2]|0)>=0){v=(c[f>>2]|0)+20|0;c[v>>2]=c[v>>2]|262144;v=c[n>>2]|0;c[n>>2]=v+1;c[(c[(c[f>>2]|0)+16>>2]|0)+(c[o>>2]<<3)>>2]=v}do{if((c[(c[f>>2]|0)+8>>2]|0)==1){c[k>>2]=c[(c[f>>2]|0)+12>>2];if((c[c[k>>2]>>2]|0)>=0){if((c[c[k>>2]>>2]|0)!=((c[(c[r>>2]|0)+24>>2]|0)+1|0)){break}}l=(c[f>>2]|0)+24|0;if((a[(c[k>>2]|0)+4>>0]|0)!=0){c[l>>2]=7496}else{c[l>>2]=7504}c[(c[f>>2]|0)+32>>2]=1}}while(0);c[g>>2]=0;v=c[g>>2]|0;i=j;return v|0}function Ci(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;b=d;e=d+4|0;c[f>>2]=a;c[b>>2]=c[f>>2];c[e>>2]=0;while(1){if((c[e>>2]|0)>=40){break}yd(c[(c[b>>2]|0)+56+(c[e>>2]<<2)>>2]|0)|0;c[e>>2]=(c[e>>2]|0)+1}oc(c[(c[b>>2]|0)+240>>2]|0);oc(c[(c[b>>2]|0)+216>>2]|0);oc(c[(c[b>>2]|0)+220>>2]|0);oc(c[(c[b>>2]|0)+40>>2]|0);oc(c[(c[b>>2]|0)+44>>2]|0);ub[c[(c[c[(c[b>>2]|0)+36>>2]>>2]|0)+8>>2]&63](c[(c[b>>2]|0)+36>>2]|0)|0;oc(c[b>>2]|0);i=d;return 0}function Di(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;j=d;b=d+24|0;g=d+8|0;e=d+12|0;h=d+16|0;f=d+20|0;c[b>>2]=a;c[g>>2]=c[b>>2];c[e>>2]=0;c[h>>2]=c[(c[g>>2]|0)+16>>2];c[f>>2]=c[(c[g>>2]|0)+12>>2];if((c[(c[g>>2]|0)+40>>2]|0)==0){a=c[f>>2]|0;k=c[(c[g>>2]|0)+20>>2]|0;c[j>>2]=c[h>>2];c[j+4>>2]=k;Zi(e,a,7672,j)}k=c[f>>2]|0;a=c[(c[g>>2]|0)+20>>2]|0;c[j>>2]=c[h>>2];c[j+4>>2]=a;Zi(e,k,7712,j);k=c[f>>2]|0;a=c[(c[g>>2]|0)+20>>2]|0;c[j>>2]=c[h>>2];c[j+4>>2]=a;Zi(e,k,7752,j);k=c[f>>2]|0;a=c[(c[g>>2]|0)+20>>2]|0;c[j>>2]=c[h>>2];c[j+4>>2]=a;Zi(e,k,7792,j);k=c[f>>2]|0;g=c[(c[g>>2]|0)+20>>2]|0;c[j>>2]=c[h>>2];c[j+4>>2]=g;Zi(e,k,7832,j);if((c[e>>2]|0)==0){k=Ci(c[b>>2]|0)|0;i=d;return k|0}else{k=c[e>>2]|0;i=d;return k|0}return 0}function Ei(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+12|0;g=e+4|0;f=e+8|0;c[e>>2]=a;c[g>>2]=b;a=mc(104)|0;c[f>>2]=a;c[c[g>>2]>>2]=a;if((c[f>>2]|0)!=0){f=(c[f>>2]|0)+0|0;b=f+104|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(b|0));c[d>>2]=0;g=c[d>>2]|0;i=e;return g|0}else{c[d>>2]=7;g=c[d>>2]|0;i=e;return g|0}return 0}function Fi(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];yd(c[(c[d>>2]|0)+8>>2]|0)|0;Jm(c[(c[d>>2]|0)+12>>2]|0);kn(c[d>>2]|0);oc(c[(c[d>>2]|0)+44>>2]|0);oc(c[(c[d>>2]|0)+92>>2]|0);oc(c[d>>2]|0);i=b;return 0}function Gi(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;v=i;i=i+80|0;x=v;u=v+72|0;z=v+68|0;C=v+64|0;n=v+60|0;B=v+52|0;l=v+48|0;y=v+44|0;p=v+76|0;o=v+20|0;s=v+16|0;r=v+8|0;t=v+12|0;w=v+36|0;m=v+24|0;A=v+28|0;q=v+32|0;k=v+40|0;c[z>>2]=e;c[C>>2]=f;c[n>>2]=g;c[v+56>>2]=h;c[B>>2]=j;c[o>>2]=c[c[z>>2]>>2];c[s>>2]=c[z>>2];c[r>>2]=0;c[t>>2]=0;c[w>>2]=0;c[m>>2]=0;c[p>>2]=c[C>>2]&65535;c[A>>2]=0;if((c[p>>2]|0)!=0){e=c[A>>2]|0;c[A>>2]=e+1;c[r>>2]=c[(c[B>>2]|0)+(e<<2)>>2]}if((c[C>>2]&65536|0)!=0){e=c[A>>2]|0;c[A>>2]=e+1;c[t>>2]=c[(c[B>>2]|0)+(e<<2)>>2]}if((c[C>>2]&131072|0)!=0){e=c[A>>2]|0;c[A>>2]=e+1;c[w>>2]=c[(c[B>>2]|0)+(e<<2)>>2]}if((c[C>>2]&262144|0)!=0){e=c[A>>2]|0;c[A>>2]=e+1;c[m>>2]=c[(c[B>>2]|0)+(e<<2)>>2]}yd(c[(c[s>>2]|0)+8>>2]|0)|0;oc(c[(c[s>>2]|0)+44>>2]|0);Jm(c[(c[s>>2]|0)+12>>2]|0);A=(c[z>>2]|0)+4|0;j=A+100|0;do{c[A>>2]=0;A=A+4|0}while((A|0)<(j|0));e=Km(c[w>>2]|0,0,-2147483648)|0;f=(c[s>>2]|0)+72|0;c[f>>2]=e;c[f+4>>2]=D;f=Km(c[m>>2]|0,-1,2147483647)|0;e=(c[s>>2]|0)+80|0;c[e>>2]=f;c[e+4>>2]=D;if((c[n>>2]|0)!=0){a[(c[s>>2]|0)+52>>0]=(a[c[n>>2]>>0]|0)==68}else{a[(c[s>>2]|0)+52>>0]=a[(c[o>>2]|0)+231>>0]|0}b[(c[s>>2]|0)+4>>1]=c[p>>2];do{if((c[p>>2]|0)!=1&(c[p>>2]|0)!=0){c[q>>2]=(c[p>>2]|0)-2;c[k>>2]=Jd(c[r>>2]|0)|0;if((c[k>>2]|0)==0){if((Sd(c[r>>2]|0)|0)!=5){c[u>>2]=7;e=c[u>>2]|0;i=v;return e|0}}c[(c[s>>2]|0)+16>>2]=0;if((c[t>>2]|0)!=0){e=Od(c[t>>2]|0)|0;c[(c[s>>2]|0)+16>>2]=e}c[l>>2]=Lm(c[(c[o>>2]|0)+36>>2]|0,c[(c[s>>2]|0)+16>>2]|0,c[(c[o>>2]|0)+28>>2]|0,d[(c[o>>2]|0)+228>>0]|0,c[(c[o>>2]|0)+24>>2]|0,c[q>>2]|0,c[k>>2]|0,-1,(c[s>>2]|0)+12|0,(c[o>>2]|0)+8|0)|0;if((c[l>>2]|0)!=0){c[u>>2]=c[l>>2];e=c[u>>2]|0;i=v;return e|0}c[l>>2]=Mm(c[s>>2]|0)|0;jk(c[o>>2]|0);if((c[l>>2]|0)==0){c[(c[s>>2]|0)+40>>2]=c[(c[s>>2]|0)+44>>2];e=(c[s>>2]|0)+32|0;c[e>>2]=0;c[e+4>>2]=0;break}c[u>>2]=c[l>>2];e=c[u>>2]|0;i=v;return e|0}}while(0);do{if((c[p>>2]|0)==0){e=(d[(c[s>>2]|0)+52>>0]|0)!=0?7496:7504;c[x>>2]=c[(c[o>>2]|0)+216>>2];c[x+4>>2]=e;c[y>>2]=wc(7464,x)|0;if((c[y>>2]|0)!=0){c[l>>2]=Df(c[(c[o>>2]|0)+12>>2]|0,c[y>>2]|0,-1,(c[s>>2]|0)+8|0,0)|0;oc(c[y>>2]|0);break}else{c[l>>2]=7;break}}else{if((c[p>>2]|0)==1){c[l>>2]=ml(c[s>>2]|0,(c[s>>2]|0)+8|0)|0;if((c[l>>2]|0)==0){c[l>>2]=Se(c[(c[s>>2]|0)+8>>2]|0,1,c[r>>2]|0)|0}}}}while(0);if((c[l>>2]|0)!=0){c[u>>2]=c[l>>2];e=c[u>>2]|0;i=v;return e|0}else{c[u>>2]=Hi(c[z>>2]|0)|0;e=c[u>>2]|0;i=v;return e|0}return 0}function Hi(d){d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;f=e;g=e+4|0;c[h>>2]=d;c[g>>2]=c[h>>2];if((b[(c[g>>2]|0)+4>>1]|0)!=1){if((b[(c[g>>2]|0)+4>>1]|0)!=0){c[f>>2]=Im(c[h>>2]|0)|0;h=c[f>>2]|0;i=e;return h|0}}h=100!=(le(c[(c[g>>2]|0)+8>>2]|0)|0);d=c[g>>2]|0;if(h){a[d+6>>0]=1;c[f>>2]=Cd(c[(c[g>>2]|0)+8>>2]|0)|0;h=c[f>>2]|0;i=e;return h|0}else{d=Ee(c[d+8>>2]|0,0)|0;h=(c[g>>2]|0)+32|0;c[h>>2]=d;c[h+4>>2]=D;c[f>>2]=0;h=c[f>>2]|0;i=e;return h|0}return 0}function Ii(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+6>>0]|0|0}function Ji(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;m=e+24|0;g=e;j=e+4|0;f=e+8|0;h=e+12|0;k=e+16|0;l=e+20|0;c[m>>2]=a;c[g>>2]=b;c[j>>2]=d;c[f>>2]=0;c[h>>2]=c[m>>2];c[k>>2]=c[c[m>>2]>>2];if((c[j>>2]|0)==((c[(c[k>>2]|0)+24>>2]|0)+1|0)){m=(c[h>>2]|0)+32|0;$d(c[g>>2]|0,c[m>>2]|0,c[m+4>>2]|0);m=c[f>>2]|0;i=e;return m|0}if((c[j>>2]|0)==(c[(c[k>>2]|0)+24>>2]|0)){Td(c[g>>2]|0,h,4,-1);m=c[f>>2]|0;i=e;return m|0}if((c[j>>2]|0)==((c[(c[k>>2]|0)+24>>2]|0)+2|0)){if((c[(c[h>>2]|0)+12>>2]|0)!=0){m=c[(c[h>>2]|0)+16>>2]|0;$d(c[g>>2]|0,m,((m|0)<0)<<31>>31);m=c[f>>2]|0;i=e;return m|0}}c[f>>2]=al(0,c[h>>2]|0)|0;if((c[f>>2]|0)!=0){m=c[f>>2]|0;i=e;return m|0}if((c[j>>2]|0)==((c[(c[k>>2]|0)+24>>2]|0)+2|0)){c[l>>2]=0;if((c[(c[k>>2]|0)+44>>2]|0)!=0){c[l>>2]=De(c[(c[h>>2]|0)+8>>2]|0,(c[(c[k>>2]|0)+24>>2]|0)+1|0)|0}Zd(c[g>>2]|0,c[l>>2]|0);m=c[f>>2]|0;i=e;return m|0}else{m=xe(c[(c[h>>2]|0)+8>>2]|0)|0;if((m|0)<=((c[j>>2]|0)+1|0)){m=c[f>>2]|0;i=e;return m|0}m=c[g>>2]|0;de(m,Ge(c[(c[h>>2]|0)+8>>2]|0,(c[j>>2]|0)+1|0)|0);m=c[f>>2]|0;i=e;return m|0}return 0}function Ki(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=c[g>>2];e=(c[e>>2]|0)+32|0;b=c[e+4>>2]|0;a=c[f>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=b;i=d;return 0}function Li(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=hm(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return a|0}function Mi(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];c[(c[d>>2]|0)+52>>2]=0;a=Xi(c[d>>2]|0)|0;i=b;return a|0}function Ni(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=i;i=i+32|0;h=g+20|0;d=g+4|0;e=g+8|0;b=g+12|0;f=g+16|0;c[h>>2]=a;c[g>>2]=64;c[d>>2]=c[h>>2];c[e>>2]=Yi(c[d>>2]|0)|0;if((c[e>>2]|0)==0){if((c[(c[d>>2]|0)+52>>2]|0)>>>0>4){if((c[(c[d>>2]|0)+48>>2]|0)!=0){if((c[(c[d>>2]|0)+48>>2]|0)!=255){c[b>>2]=0;c[e>>2]=Il(c[d>>2]|0,b)|0;c[f>>2]=$(c[(c[d>>2]|0)+52>>2]|0,c[b>>2]|0)|0;c[f>>2]=(c[f>>2]|0)+((c[f>>2]|0)/2|0);if((c[f>>2]|0)>64){c[e>>2]=Jl(c[d>>2]|0,c[f>>2]|0,c[(c[d>>2]|0)+48>>2]|0)|0}}}}}jk(c[d>>2]|0);i=g;return c[e>>2]|0}function Oi(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function Pi(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];Vi(c[d>>2]|0);i=b;return 0}function Qi(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+64|0;k=g+60|0;m=g+48|0;n=g+44|0;j=g+36|0;h=g;l=g+40|0;c[g+56>>2]=a;c[g+52>>2]=b;c[m>>2]=d;c[n>>2]=e;c[j>>2]=c[n>>2];c[g+32>>2]=f;c[h+0>>2]=c[6984>>2];c[h+4>>2]=c[6988>>2];c[h+8>>2]=c[6992>>2];c[h+12>>2]=c[6996>>2];c[h+16>>2]=c[7e3>>2];c[h+20>>2]=c[7004>>2];c[h+24>>2]=c[7008>>2];c[h+28>>2]=c[7012>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=4){l=6;break}n=(YK(c[m>>2]|0,c[h+(c[l>>2]<<3)>>2]|0)|0)==0;f=c[l>>2]|0;if(n){l=4;break}c[l>>2]=f+1}if((l|0)==4){c[c[j>>2]>>2]=c[h+(f<<3)+4>>2];c[k>>2]=1;n=c[k>>2]|0;i=g;return n|0}else if((l|0)==6){c[k>>2]=0;n=c[k>>2]|0;i=g;return n|0}return 0}function Ri(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;h=k;l=k+28|0;g=k+12|0;f=k+16|0;e=k+20|0;j=k+24|0;c[l>>2]=b;c[g>>2]=d;c[f>>2]=c[l>>2];c[e>>2]=c[(c[f>>2]|0)+12>>2];c[j>>2]=Xi(c[f>>2]|0)|0;if((c[j>>2]|0)==0){c[j>>2]=Yi(c[f>>2]|0)|0}if((c[(c[f>>2]|0)+40>>2]|0)==0){l=c[e>>2]|0;d=c[(c[f>>2]|0)+20>>2]|0;b=c[g>>2]|0;c[h>>2]=c[(c[f>>2]|0)+16>>2];c[h+4>>2]=d;c[h+8>>2]=b;Zi(j,l,4056,h)}if((a[(c[f>>2]|0)+230>>0]|0)!=0){l=c[e>>2]|0;d=c[(c[f>>2]|0)+20>>2]|0;b=c[g>>2]|0;c[h>>2]=c[(c[f>>2]|0)+16>>2];c[h+4>>2]=d;c[h+8>>2]=b;Zi(j,l,4112,h)}if((a[(c[f>>2]|0)+229>>0]|0)!=0){l=c[e>>2]|0;d=c[(c[f>>2]|0)+20>>2]|0;b=c[g>>2]|0;c[h>>2]=c[(c[f>>2]|0)+16>>2];c[h+4>>2]=d;c[h+8>>2]=b;Zi(j,l,4168,h)}l=c[e>>2]|0;d=c[(c[f>>2]|0)+20>>2]|0;b=c[g>>2]|0;c[h>>2]=c[(c[f>>2]|0)+16>>2];c[h+4>>2]=d;c[h+8>>2]=b;Zi(j,l,4216,h);l=c[e>>2]|0;e=c[(c[f>>2]|0)+20>>2]|0;b=c[g>>2]|0;c[h>>2]=c[(c[f>>2]|0)+16>>2];c[h+4>>2]=e;c[h+8>>2]=b;Zi(j,l,4272,h);i=k;return c[j>>2]|0}function Si(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e+4|0;c[g>>2]=a;c[e>>2]=b;c[f>>2]=0;if((d[(c[g>>2]|0)+232>>0]|0|0)!=0){a=c[f>>2]|0;i=e;return a|0}c[f>>2]=Ni(c[g>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}function Ti(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function Ui(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;e=d+4|0;c[f>>2]=a;c[d>>2]=b;c[e>>2]=c[f>>2];Vi(c[e>>2]|0);i=d;return 0}function Vi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;b=d+16|0;e=d;g=d+4|0;f=d+8|0;h=d+12|0;c[b>>2]=a;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[b>>2]|0)+248>>2]|0)){break}c[f>>2]=(c[(c[b>>2]|0)+252>>2]|0)+((c[e>>2]|0)*24|0)+4;c[g>>2]=c[(c[f>>2]|0)+8>>2];while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[(c[g>>2]|0)+8>>2];Wi(c[h>>2]|0);c[g>>2]=c[c[g>>2]>>2]}ai(c[f>>2]|0);c[e>>2]=(c[e>>2]|0)+1}c[(c[b>>2]|0)+260>>2]=0;i=d;return}function Wi(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;oc(c[d>>2]|0);i=b;return}function Xi(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;m=e;j=e+28|0;f=e+8|0;l=e+12|0;k=e+16|0;g=e+20|0;h=e+24|0;c[j>>2]=b;c[f>>2]=0;if((d[(c[j>>2]|0)+229>>0]|0|0)!=2){m=c[f>>2]|0;i=e;return m|0}c[l>>2]=6928;l=c[l>>2]|0;b=c[(c[j>>2]|0)+20>>2]|0;c[m>>2]=c[(c[j>>2]|0)+16>>2];c[m+4>>2]=b;c[k>>2]=wc(l,m)|0;if((c[k>>2]|0)==0){c[f>>2]=7;m=c[f>>2]|0;i=e;return m|0}c[g>>2]=0;c[f>>2]=Df(c[(c[j>>2]|0)+12>>2]|0,c[k>>2]|0,-1,g,0)|0;if((c[f>>2]|0)==0){c[h>>2]=(le(c[g>>2]|0)|0)==100&1;c[f>>2]=yd(c[g>>2]|0)|0;if((c[f>>2]|0)==0){a[(c[j>>2]|0)+229>>0]=c[h>>2]}}oc(c[k>>2]|0);m=c[f>>2]|0;i=e;return m|0}function Yi(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;b=e;h=e+4|0;f=e+8|0;c[g>>2]=a;c[b>>2]=0;c[h>>2]=0;while(1){if((c[b>>2]|0)==0){j=(c[h>>2]|0)<(c[(c[g>>2]|0)+248>>2]|0)}else{j=0}a=c[g>>2]|0;if(!j){break}j=_i(a,c[(c[g>>2]|0)+272>>2]|0,c[h>>2]|0,-1)|0;c[b>>2]=j;c[b>>2]=(c[b>>2]|0)==101?0:j;c[h>>2]=(c[h>>2]|0)+1}Vi(a);if((c[b>>2]|0)!=0){j=c[b>>2]|0;i=e;return j|0}if((d[(c[g>>2]|0)+229>>0]|0|0)==0){j=c[b>>2]|0;i=e;return j|0}if((c[(c[g>>2]|0)+48>>2]|0)!=255){j=c[b>>2]|0;i=e;return j|0}if(!((c[(c[g>>2]|0)+52>>2]|0)>>>0>0)){j=c[b>>2]|0;i=e;return j|0}c[f>>2]=0;c[b>>2]=$i(c[g>>2]|0,22,f,0)|0;if((c[b>>2]|0)!=0){j=c[b>>2]|0;i=e;return j|0}Oe(c[f>>2]|0,1,2)|0;c[b>>2]=le(c[f>>2]|0)|0;if((c[b>>2]|0)==100){j=De(c[f>>2]|0,0)|0;c[(c[g>>2]|0)+48>>2]=j;if((c[(c[g>>2]|0)+48>>2]|0)==1){c[(c[g>>2]|0)+48>>2]=8}}else{if((c[b>>2]|0)==101){c[(c[g>>2]|0)+48>>2]=0}}c[b>>2]=Cd(c[f>>2]|0)|0;j=c[b>>2]|0;i=e;return j|0}function Zi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+28|0;h=f;l=f+4|0;k=f+8|0;j=f+24|0;c[g>>2]=a;c[h>>2]=b;c[l>>2]=d;if((c[c[g>>2]>>2]|0)!=0){i=f;return}c[k>>2]=e;c[j>>2]=sc(c[l>>2]|0,k)|0;if((c[j>>2]|0)==0){c[c[g>>2]>>2]=7;i=f;return}else{a=Bf(c[h>>2]|0,c[j>>2]|0,0,0,0)|0;c[c[g>>2]>>2]=a;oc(c[j>>2]|0);i=f;return}}function _i(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+128|0;n=h+96|0;g=h+104|0;p=h+120|0;q=h+116|0;j=h+112|0;r=h+108|0;l=h+8|0;o=h+100|0;s=h+80|0;m=h+24|0;f=h+16|0;k=h;c[n>>2]=a;c[g>>2]=b;c[p>>2]=d;c[q>>2]=e;c[r>>2]=0;a=l;c[a>>2]=0;c[a+4>>2]=0;c[o>>2]=0;c[f>>2]=0;a=k;c[a>>2]=0;c[a+4>>2]=0;c[j>>2]=aj(c[n>>2]|0,c[g>>2]|0,c[p>>2]|0,c[q>>2]|0,0,0,1,0,m)|0;a:do{if((c[j>>2]|0)==0){if((c[m+4>>2]|0)!=0){if((c[q>>2]|0)!=-1){c[j>>2]=bj(c[n>>2]|0,c[g>>2]|0,c[p>>2]|0,k)|0;if((c[j>>2]|0)!=0){break}}do{if((c[q>>2]|0)==-2){if((c[m+4>>2]|0)==1){c[j>>2]=101;break a}else{d=k;b=c[d+4>>2]|0;a=l;c[a>>2]=c[d>>2];c[a+4>>2]=b;c[f>>2]=1;break}}else{b=cj(c[n>>2]|0,c[g>>2]|0,c[p>>2]|0,(c[q>>2]|0)+1|0)|0;a=l;c[a>>2]=b;c[a+4>>2]=D;c[j>>2]=dj(c[n>>2]|0,c[g>>2]|0,c[p>>2]|0,(c[q>>2]|0)+1|0,r)|0;if((c[q>>2]|0)!=-1){a=l;d=c[a+4>>2]|0;e=k;b=c[e+4>>2]|0;e=(d|0)>(b|0)|((d|0)==(b|0)?(c[a>>2]|0)>>>0>(c[e>>2]|0)>>>0:0)}else{e=0}c[f>>2]=e&1}}while(0);if((c[j>>2]|0)==0){c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+12>>2]=1;a=s+12|0;c[a>>2]=c[a>>2]|((c[f>>2]|0)!=0?2:0);c[j>>2]=ej(c[n>>2]|0,m,s)|0;while(1){if(0!=(c[j>>2]|0)){break}c[j>>2]=fj(c[n>>2]|0,m)|0;if((c[j>>2]|0)!=100){break}c[j>>2]=gj(c[n>>2]|0,o,1,c[m+40>>2]|0,c[m+44>>2]|0,c[m+48>>2]|0,c[m+52>>2]|0)|0}if((c[j>>2]|0)==0){if((c[q>>2]|0)!=-1){c[j>>2]=hj(c[n>>2]|0,c[g>>2]|0,c[p>>2]|0,c[q>>2]|0,c[m>>2]|0,c[m+4>>2]|0)|0;if((c[j>>2]|0)!=0){break}}if((c[o>>2]|0)!=0){a=l;c[j>>2]=ij(c[n>>2]|0,c[o>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[r>>2]|0)|0;if((c[j>>2]|0)==0){if(!((c[q>>2]|0)==-1)){b=l;e=c[b+4>>2]|0;a=k;d=c[a+4>>2]|0;if(!((e|0)<(d|0)|((e|0)==(d|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0))){break}}b=l;a=(c[o>>2]|0)+56|0;c[j>>2]=jj(c[n>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0}}}}}}}while(0);kj(c[o>>2]|0);lj(m);i=h;return c[j>>2]|0}function $i(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=i;i=i+208|0;q=g;n=g+44|0;m=g+40|0;h=g+36|0;k=g+32|0;r=g+48|0;f=g+20|0;j=g+16|0;o=g+12|0;l=g+24|0;p=g+28|0;c[n>>2]=a;c[m>>2]=b;c[h>>2]=d;c[k>>2]=e;fL(r|0,6728,160)|0;c[f>>2]=0;c[j>>2]=c[(c[n>>2]|0)+56+(c[m>>2]<<2)>>2];do{if((c[j>>2]|0)==0){e=c[m>>2]|0;do{if((c[m>>2]|0)==18){a=c[r+(e<<2)>>2]|0;d=c[(c[n>>2]|0)+20>>2]|0;b=c[(c[n>>2]|0)+220>>2]|0;c[q>>2]=c[(c[n>>2]|0)+16>>2];c[q+4>>2]=d;c[q+8>>2]=b;c[o>>2]=wc(a,q)|0}else{r=c[r+(c[m>>2]<<2)>>2]|0;d=c[n>>2]|0;if((e|0)==7){c[q>>2]=c[d+216>>2];c[o>>2]=wc(r,q)|0;break}else{a=c[(c[n>>2]|0)+20>>2]|0;c[q>>2]=c[d+16>>2];c[q+4>>2]=a;c[o>>2]=wc(r,q)|0;break}}}while(0);if((c[o>>2]|0)!=0){c[f>>2]=Df(c[(c[n>>2]|0)+12>>2]|0,c[o>>2]|0,-1,j,0)|0;oc(c[o>>2]|0);c[(c[n>>2]|0)+56+(c[m>>2]<<2)>>2]=c[j>>2];break}else{c[f>>2]=7;break}}}while(0);if((c[k>>2]|0)==0){b=c[j>>2]|0;a=c[h>>2]|0;c[a>>2]=b;a=c[f>>2]|0;i=g;return a|0}c[p>>2]=Ue(c[j>>2]|0)|0;c[l>>2]=0;while(1){if((c[f>>2]|0)!=0){k=15;break}if((c[l>>2]|0)>=(c[p>>2]|0)){k=15;break}c[f>>2]=Se(c[j>>2]|0,(c[l>>2]|0)+1|0,c[(c[k>>2]|0)+(c[l>>2]<<2)>>2]|0)|0;c[l>>2]=(c[l>>2]|0)+1}if((k|0)==15){b=c[j>>2]|0;a=c[h>>2]|0;c[a>>2]=b;a=c[f>>2]|0;i=g;return a|0}return 0}function aj(a,b,d,e,f,g,h,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;l=i;i=i+48|0;u=l+32|0;m=l+28|0;n=l+24|0;o=l+20|0;p=l+16|0;q=l+8|0;r=l+4|0;s=l;t=l+12|0;c[u>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[s>>2]=j;c[t>>2]=k;j=(c[t>>2]|0)+0|0;k=j+56|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0));a=Vj(c[u>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0)|0;i=l;return a|0}function bj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;g=l+24|0;f=l;m=l+4|0;n=l+8|0;k=l+12|0;j=l+16|0;h=l+20|0;c[f>>2]=a;c[m>>2]=b;c[n>>2]=d;c[k>>2]=e;c[h>>2]=$i(c[f>>2]|0,15,j,0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];a=c[g>>2]|0;i=l;return a|0}a=c[j>>2]|0;b=cj(c[f>>2]|0,c[m>>2]|0,c[n>>2]|0,0)|0;Pe(a,1,b,D)|0;b=c[j>>2]|0;a=cj(c[f>>2]|0,c[m>>2]|0,c[n>>2]|0,1023)|0;Pe(b,2,a,D)|0;if(100==(le(c[j>>2]|0)|0)){b=Ee(c[j>>2]|0,0)|0;a=c[k>>2]|0;c[a>>2]=b;c[a+4>>2]=D}c[g>>2]=Cd(c[j>>2]|0)|0;a=c[g>>2]|0;i=l;return a|0}function cj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;k=f+20|0;l=f+16|0;j=f+8|0;g=f+12|0;h=f;c[k>>2]=a;c[l>>2]=b;c[j>>2]=d;c[g>>2]=e;a=c[l>>2]|0;b=c[(c[k>>2]|0)+248>>2]|0;b=nL(a|0,((a|0)<0)<<31>>31|0,b|0,((b|0)<0)<<31>>31|0)|0;a=c[j>>2]|0;a=dL(b|0,D|0,a|0,((a|0)<0)<<31>>31|0)|0;a=nL(a|0,D|0,1024,0)|0;b=h;c[b>>2]=a;c[b+4>>2]=D;b=h;a=c[g>>2]|0;a=dL(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;i=f;return a|0}function dj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;j=h+28|0;k=h;l=h+4|0;m=h+8|0;g=h+12|0;n=h+16|0;p=h+20|0;o=h+24|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[g>>2]=f;c[o>>2]=0;c[n>>2]=$i(c[j>>2]|0,8,p,0)|0;if((c[n>>2]|0)==0){b=c[p>>2]|0;a=cj(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;Pe(b,1,a,D)|0;if(100==(le(c[p>>2]|0)|0)){c[o>>2]=De(c[p>>2]|0,0)|0}c[n>>2]=Cd(c[p>>2]|0)|0}if((c[n>>2]|0)!=0){a=c[n>>2]|0;i=h;return a|0}if((c[o>>2]|0)>=16){c[n>>2]=_i(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;c[c[g>>2]>>2]=0;a=c[n>>2]|0;i=h;return a|0}else{c[c[g>>2]>>2]=c[o>>2];a=c[n>>2]|0;i=h;return a|0}return 0}function ej(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;c[(c[g>>2]|0)+12>>2]=c[f>>2];a=Tj(c[h>>2]|0,c[g>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;i=e;return a|0}function fj(b,e){b=b|0;e=e|0;var f=0,g=0,h=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;y=i;i=i+128|0;h=y+120|0;q=y+116|0;k=y+112|0;l=y+108|0;o=y+104|0;I=y+100|0;z=y+96|0;s=y+92|0;t=y+88|0;n=y+84|0;m=y+80|0;p=y+76|0;r=y+72|0;C=y+68|0;j=y+64|0;v=y+44|0;u=y+40|0;w=y+36|0;E=y;A=y+24|0;f=y+32|0;x=y+28|0;K=y+48|0;B=y+16|0;H=y+8|0;J=y+52|0;G=y+56|0;F=y+60|0;c[q>>2]=b;c[k>>2]=e;c[l>>2]=0;c[o>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+12>>2]&2;c[I>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+12>>2]&1;c[z>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+12>>2]&4;c[s>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+12>>2]&8;c[t>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+12>>2]&16;c[n>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+12>>2]&32;c[m>>2]=c[c[k>>2]>>2];c[p>>2]=c[(c[k>>2]|0)+4>>2];c[r>>2]=c[(c[k>>2]|0)+12>>2];c[C>>2]=(d[(c[q>>2]|0)+231>>0]|0)!=0?49:50;if((c[(c[k>>2]|0)+4>>2]|0)==0){c[h>>2]=0;b=c[h>>2]|0;i=y;return b|0}a:while(1){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[(c[k>>2]|0)+8>>2]|0)){break}c[u>>2]=c[(c[m>>2]|0)+(c[v>>2]<<2)>>2];if((a[(c[u>>2]|0)+4>>0]|0)!=0){Aj(c[u>>2]|0)}else{c[l>>2]=Bj(c[q>>2]|0,c[u>>2]|0,0)|0}if((c[l>>2]|0)!=0){g=9;break a}c[v>>2]=(c[v>>2]|0)+1}Cj(c[m>>2]|0,c[p>>2]|0,c[(c[k>>2]|0)+8>>2]|0,51);c[(c[k>>2]|0)+8>>2]=0;if((c[(c[c[m>>2]>>2]|0)+40>>2]|0)==0){g=68;break}c[(c[k>>2]|0)+44>>2]=c[(c[c[m>>2]>>2]|0)+60>>2];c[(c[k>>2]|0)+40>>2]=c[(c[c[m>>2]>>2]|0)+64>>2];if((c[c[r>>2]>>2]|0)!=0){if((c[t>>2]|0)==0){if((c[(c[k>>2]|0)+44>>2]|0)<(c[(c[r>>2]|0)+4>>2]|0)){g=68;break}if((c[s>>2]|0)==0){if((c[(c[k>>2]|0)+44>>2]|0)>(c[(c[r>>2]|0)+4>>2]|0)){g=68;break}}if((XK(c[(c[k>>2]|0)+40>>2]|0,c[c[r>>2]>>2]|0,c[(c[r>>2]|0)+4>>2]|0)|0)!=0){g=68;break}}}c[j>>2]=1;while(1){if((c[j>>2]|0)<(c[p>>2]|0)){if((c[(c[(c[m>>2]|0)+(c[j>>2]<<2)>>2]|0)+40>>2]|0)!=0){if((c[(c[(c[m>>2]|0)+(c[j>>2]<<2)>>2]|0)+60>>2]|0)==(c[(c[k>>2]|0)+44>>2]|0)){b=0==(XK(c[(c[k>>2]|0)+40>>2]|0,c[(c[(c[m>>2]|0)+(c[j>>2]<<2)>>2]|0)+64>>2]|0,c[(c[k>>2]|0)+44>>2]|0)|0)}else{b=0}}else{b=0}}else{b=0}e=c[j>>2]|0;if(!b){break}c[j>>2]=e+1}do{if((e|0)==1){if((c[o>>2]|0)!=0){g=35}else{if((c[n>>2]|0)!=0){g=35}else{if((d[(c[q>>2]|0)+231>>0]|0)!=0){if(((c[(c[c[m>>2]>>2]|0)+56>>2]|0)!=0|0)!=0){g=35;break}}c[(c[k>>2]|0)+52>>2]=c[(c[c[m>>2]>>2]|0)+76>>2];if((c[(c[c[m>>2]>>2]|0)+56>>2]|0)!=0){c[l>>2]=Ej(c[k>>2]|0,c[(c[c[m>>2]>>2]|0)+72>>2]|0,c[(c[k>>2]|0)+52>>2]|0)|0;c[(c[k>>2]|0)+48>>2]=c[(c[k>>2]|0)+16>>2]}else{c[(c[k>>2]|0)+48>>2]=c[(c[c[m>>2]>>2]|0)+72>>2]}if((c[l>>2]|0)==0){c[l>>2]=100}}}}else{g=35}}while(0);if((g|0)==35){g=0;c[w>>2]=0;b=E;c[b>>2]=0;c[b+4>>2]=0;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[j>>2]|0)){break}Fj(c[q>>2]|0,c[(c[m>>2]|0)+(c[v>>2]<<2)>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+1}Cj(c[m>>2]|0,c[j>>2]|0,c[j>>2]|0,c[C>>2]|0);while(1){if((c[(c[c[m>>2]>>2]|0)+80>>2]|0)==0){break}c[f>>2]=0;c[x>>2]=0;L=(c[c[m>>2]>>2]|0)+88|0;e=c[L+4>>2]|0;b=B;c[b>>2]=c[L>>2];c[b+4>>2]=e;Gj(c[q>>2]|0,c[c[m>>2]>>2]|0,f,x)|0;c[A>>2]=1;while(1){if((c[A>>2]|0)>=(c[j>>2]|0)){break}if((c[(c[(c[m>>2]|0)+(c[A>>2]<<2)>>2]|0)+80>>2]|0)==0){break}b=(c[(c[m>>2]|0)+(c[A>>2]<<2)>>2]|0)+88|0;L=B;if(!((c[b>>2]|0)==(c[L>>2]|0)?(c[b+4>>2]|0)==(c[L+4>>2]|0):0)){break}Gj(c[q>>2]|0,c[(c[m>>2]|0)+(c[A>>2]<<2)>>2]|0,0,0)|0;c[A>>2]=(c[A>>2]|0)+1}if((c[z>>2]|0)!=0){Hj(c[(c[r>>2]|0)+8>>2]|0,0,f,x)}if((c[o>>2]|0)!=0){if((c[x>>2]|0)>0){g=49}}else{g=49}do{if((g|0)==49){g=0;if((d[(c[q>>2]|0)+231>>0]|0)!=0){if((c[w>>2]|0)>0){L=E;b=B;b=$K(c[L>>2]|0,c[L+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;L=H;c[L>>2]=b;c[L+4>>2]=D}else{g=52}}else{g=52}if((g|0)==52){g=0;L=B;b=E;b=$K(c[L>>2]|0,c[L+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;L=H;c[L>>2]=b;c[L+4>>2]=D}e=H;e=tj(c[e>>2]|0,c[e+4>>2]|0)|0;if((c[I>>2]|0)!=0){b=(c[x>>2]|0)+1|0}else{b=0}c[K>>2]=e+b;if(((c[w>>2]|0)+(c[K>>2]|0)|0)>(c[(c[k>>2]|0)+20>>2]|0)){c[(c[k>>2]|0)+20>>2]=(c[w>>2]|0)+(c[K>>2]|0)<<1;c[J>>2]=qc(c[(c[k>>2]|0)+16>>2]|0,c[(c[k>>2]|0)+20>>2]|0)|0;if((c[J>>2]|0)==0){g=57;break a}c[(c[k>>2]|0)+16>>2]=c[J>>2]}e=(c[(c[k>>2]|0)+16>>2]|0)+(c[w>>2]|0)|0;if((c[n>>2]|0)!=0){c[G>>2]=e;L=H;c[F>>2]=Ij(c[L>>2]|0,c[L+4>>2]|0,c[f>>2]|0,c[x>>2]|0,c[G>>2]|0)|0;if((c[F>>2]|0)==0){break}e=B;b=c[e+4>>2]|0;L=E;c[L>>2]=c[e>>2];c[L+4>>2]=b;c[w>>2]=(c[w>>2]|0)+(c[F>>2]|0);break}else{b=H;e=uj(e,c[b>>2]|0,c[b+4>>2]|0)|0;c[w>>2]=(c[w>>2]|0)+e;e=B;b=c[e+4>>2]|0;L=E;c[L>>2]=c[e>>2];c[L+4>>2]=b;if((c[I>>2]|0)==0){break}fL((c[(c[k>>2]|0)+16>>2]|0)+(c[w>>2]|0)|0,c[f>>2]|0,c[x>>2]|0)|0;c[w>>2]=(c[w>>2]|0)+(c[x>>2]|0);L=c[w>>2]|0;c[w>>2]=L+1;a[(c[(c[k>>2]|0)+16>>2]|0)+L>>0]=0;break}}}while(0);Cj(c[m>>2]|0,c[j>>2]|0,c[A>>2]|0,c[C>>2]|0)}if((c[w>>2]|0)>0){c[(c[k>>2]|0)+48>>2]=c[(c[k>>2]|0)+16>>2];c[(c[k>>2]|0)+52>>2]=c[w>>2];c[l>>2]=100}}c[(c[k>>2]|0)+8>>2]=c[j>>2];if((c[l>>2]|0)!=0){g=68;break}}if((g|0)==9){c[h>>2]=c[l>>2];L=c[h>>2]|0;i=y;return L|0}else if((g|0)==57){c[h>>2]=7;L=c[h>>2]|0;i=y;return L|0}else if((g|0)==68){c[h>>2]=c[l>>2];L=c[h>>2]|0;i=y;return L|0}return 0}function gj(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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;w=i;i=i+80|0;s=w+68|0;n=w+64|0;m=w+60|0;y=w+56|0;r=w+52|0;j=w+48|0;A=w+44|0;v=w+40|0;t=w+36|0;u=w+32|0;k=w+24|0;q=w+20|0;l=w+16|0;p=w+12|0;o=w+8|0;x=w+4|0;z=w;B=w+28|0;c[n>>2]=a;c[m>>2]=b;c[y>>2]=d;c[r>>2]=e;c[j>>2]=f;c[A>>2]=g;c[v>>2]=h;c[l>>2]=c[c[m>>2]>>2];if((c[l>>2]|0)==0){c[l>>2]=mc(64)|0;if((c[l>>2]|0)==0){c[s>>2]=7;a=c[s>>2]|0;i=w;return a|0}g=(c[l>>2]|0)+0|0;h=g+64|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[c[m>>2]>>2]=c[l>>2];a=mc(c[(c[n>>2]|0)+224>>2]|0)|0;c[(c[l>>2]|0)+48>>2]=a;if((c[(c[l>>2]|0)+48>>2]|0)==0){c[s>>2]=7;a=c[s>>2]|0;i=w;return a|0}c[(c[l>>2]|0)+40>>2]=c[(c[n>>2]|0)+224>>2];c[p>>2]=$i(c[n>>2]|0,10,o,0)|0;if((c[p>>2]|0)!=0){c[s>>2]=c[p>>2];a=c[s>>2]|0;i=w;return a|0}if(100==(le(c[o>>2]|0)|0)){b=Ee(c[o>>2]|0,0)|0;d=(c[l>>2]|0)+16|0;c[d>>2]=b;c[d+4>>2]=D;d=(c[l>>2]|0)+16|0;b=c[d+4>>2]|0;a=(c[l>>2]|0)+8|0;c[a>>2]=c[d>>2];c[a+4>>2]=b}c[p>>2]=Cd(c[o>>2]|0)|0;if((c[p>>2]|0)!=0){c[s>>2]=c[p>>2];a=c[s>>2]|0;i=w;return a|0}}c[q>>2]=c[(c[l>>2]|0)+44>>2];c[t>>2]=wj(c[(c[l>>2]|0)+24>>2]|0,c[(c[l>>2]|0)+28>>2]|0,c[r>>2]|0,c[j>>2]|0)|0;c[u>>2]=(c[j>>2]|0)-(c[t>>2]|0);a=c[t>>2]|0;a=tj(a,((a|0)<0)<<31>>31)|0;b=c[u>>2]|0;b=a+(tj(b,((b|0)<0)<<31>>31)|0)|0;b=b+(c[u>>2]|0)|0;a=c[v>>2]|0;a=b+(tj(a,((a|0)<0)<<31>>31)|0)|0;c[k>>2]=a+(c[v>>2]|0);do{if((c[q>>2]|0)>0){if(((c[q>>2]|0)+(c[k>>2]|0)|0)>(c[(c[n>>2]|0)+224>>2]|0)){d=c[n>>2]|0;e=(c[l>>2]|0)+16|0;a=e;b=c[a>>2]|0;a=c[a+4>>2]|0;f=dL(b|0,a|0,1,0)|0;c[e>>2]=f;c[e+4>>2]=D;c[x>>2]=pj(d,b,a,c[(c[l>>2]|0)+48>>2]|0,c[q>>2]|0)|0;if((c[x>>2]|0)!=0){c[s>>2]=c[x>>2];a=c[s>>2]|0;i=w;return a|0}a=(c[n>>2]|0)+52|0;c[a>>2]=(c[a>>2]|0)+1;c[x>>2]=xj(c[n>>2]|0,c[l>>2]|0,c[y>>2]|0,c[r>>2]|0,(c[t>>2]|0)+1|0)|0;if((c[x>>2]|0)==0){c[q>>2]=0;c[(c[l>>2]|0)+28>>2]=0;c[t>>2]=0;c[u>>2]=c[j>>2];b=c[j>>2]|0;b=1+(tj(b,((b|0)<0)<<31>>31)|0)|0;b=b+(c[j>>2]|0)|0;a=c[v>>2]|0;a=b+(tj(a,((a|0)<0)<<31>>31)|0)|0;c[k>>2]=a+(c[v>>2]|0);break}c[s>>2]=c[x>>2];a=c[s>>2]|0;i=w;return a|0}}}while(0);b=c[k>>2]|0;a=(c[l>>2]|0)+56|0;d=a;b=dL(c[d>>2]|0,c[d+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[a>>2]=b;c[a+4>>2]=D;do{if((c[k>>2]|0)>(c[(c[l>>2]|0)+40>>2]|0)){c[z>>2]=qc(c[(c[l>>2]|0)+48>>2]|0,c[k>>2]|0)|0;if((c[z>>2]|0)!=0){c[(c[l>>2]|0)+48>>2]=c[z>>2];c[(c[l>>2]|0)+40>>2]=c[k>>2];break}c[s>>2]=7;a=c[s>>2]|0;i=w;return a|0}}while(0);a=c[t>>2]|0;a=uj((c[(c[l>>2]|0)+48>>2]|0)+(c[q>>2]|0)|0,a,((a|0)<0)<<31>>31)|0;c[q>>2]=(c[q>>2]|0)+a;a=c[u>>2]|0;a=uj((c[(c[l>>2]|0)+48>>2]|0)+(c[q>>2]|0)|0,a,((a|0)<0)<<31>>31)|0;c[q>>2]=(c[q>>2]|0)+a;fL((c[(c[l>>2]|0)+48>>2]|0)+(c[q>>2]|0)|0,(c[r>>2]|0)+(c[t>>2]|0)|0,c[u>>2]|0)|0;c[q>>2]=(c[q>>2]|0)+(c[u>>2]|0);a=c[v>>2]|0;a=uj((c[(c[l>>2]|0)+48>>2]|0)+(c[q>>2]|0)|0,a,((a|0)<0)<<31>>31)|0;c[q>>2]=(c[q>>2]|0)+a;fL((c[(c[l>>2]|0)+48>>2]|0)+(c[q>>2]|0)|0,c[A>>2]|0,c[v>>2]|0)|0;c[(c[l>>2]|0)+44>>2]=(c[q>>2]|0)+(c[v>>2]|0);if((c[y>>2]|0)!=0){do{if((c[j>>2]|0)>(c[(c[l>>2]|0)+32>>2]|0)){c[B>>2]=qc(c[(c[l>>2]|0)+36>>2]|0,c[j>>2]<<1)|0;if((c[B>>2]|0)!=0){c[(c[l>>2]|0)+32>>2]=c[j>>2]<<1;c[(c[l>>2]|0)+36>>2]=c[B>>2];c[(c[l>>2]|0)+24>>2]=c[B>>2];break}c[s>>2]=7;a=c[s>>2]|0;i=w;return a|0}}while(0);fL(c[(c[l>>2]|0)+24>>2]|0,c[r>>2]|0,c[j>>2]|0)|0}else{c[(c[l>>2]|0)+24>>2]=c[r>>2]}c[(c[l>>2]|0)+28>>2]=c[j>>2];c[s>>2]=0;a=c[s>>2]|0;i=w;return a|0}function hj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+48|0;h=j+36|0;l=j+32|0;m=j+28|0;n=j+24|0;o=j+20|0;s=j+16|0;r=j+8|0;p=j+4|0;q=j;k=j+12|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[s>>2]=f;c[r>>2]=g;c[p>>2]=0;c[k>>2]=0;c[q>>2]=0;while(1){if((c[p>>2]|0)!=0){break}if((c[q>>2]|0)>=(c[r>>2]|0)){break}c[p>>2]=vj(c[l>>2]|0,c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]|0)|0;c[q>>2]=(c[q>>2]|0)+1}if((c[p>>2]|0)!=0){c[h>>2]=c[p>>2];a=c[h>>2]|0;i=j;return a|0}q=c[l>>2]|0;if((c[o>>2]|0)==-2){c[p>>2]=$i(q,26,k,0)|0;if((c[p>>2]|0)==0){a=c[k>>2]|0;b=cj(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,0)|0;Pe(a,1,b,D)|0;b=c[k>>2]|0;a=cj(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,1023)|0;Pe(b,2,a,D)|0}}else{c[p>>2]=$i(q,16,k,0)|0;if((c[p>>2]|0)==0){b=c[k>>2]|0;a=cj(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;Pe(b,1,a,D)|0}}if((c[p>>2]|0)==0){le(c[k>>2]|0)|0;c[p>>2]=Cd(c[k>>2]|0)|0}c[h>>2]=c[p>>2];a=c[h>>2]|0;i=j;return a|0}function ij(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+48|0;j=n+44|0;k=n+40|0;m=n+8|0;l=n+36|0;h=n+24|0;o=n+16|0;g=n;p=n+28|0;q=n+32|0;c[j>>2]=a;c[k>>2]=b;a=m;c[a>>2]=d;c[a+4>>2]=e;c[l>>2]=f;if((c[c[k>>2]>>2]|0)==0){b=m;a=(c[k>>2]|0)+56|0;c[h>>2]=rj(c[j>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[l>>2]|0,0,0,0,0,0,0,c[a>>2]|0,c[a+4>>2]|0,c[(c[k>>2]|0)+48>>2]|0,c[(c[k>>2]|0)+44>>2]|0)|0;a=c[j>>2]|0;a=a+52|0;b=c[a>>2]|0;b=b+1|0;c[a>>2]=b;a=c[h>>2]|0;i=n;return a|0}a=o;c[a>>2]=0;c[a+4>>2]=0;c[p>>2]=0;c[q>>2]=0;a=(c[k>>2]|0)+16|0;e=c[a+4>>2]|0;d=g;c[d>>2]=c[a>>2];c[d+4>>2]=e;d=c[j>>2]|0;e=(c[k>>2]|0)+16|0;a=e;b=c[a>>2]|0;a=c[a+4>>2]|0;f=dL(b|0,a|0,1,0)|0;c[e>>2]=f;c[e+4>>2]=D;c[h>>2]=pj(d,b,a,c[(c[k>>2]|0)+48>>2]|0,c[(c[k>>2]|0)+44>>2]|0)|0;if((c[h>>2]|0)==0){b=(c[k>>2]|0)+8|0;a=(c[k>>2]|0)+16|0;c[h>>2]=qj(c[j>>2]|0,c[c[k>>2]>>2]|0,1,c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0,o,p,q)|0}if((c[h>>2]|0)!=0){a=c[j>>2]|0;a=a+52|0;b=c[a>>2]|0;b=b+1|0;c[a>>2]=b;a=c[h>>2]|0;i=n;return a|0}e=(c[k>>2]|0)+8|0;d=g;b=o;a=(c[k>>2]|0)+56|0;c[h>>2]=rj(c[j>>2]|0,c[m>>2]|0,c[m+4>>2]|0,c[l>>2]|0,c[e>>2]|0,c[e+4>>2]|0,c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;a=c[j>>2]|0;a=a+52|0;b=c[a>>2]|0;b=b+1|0;c[a>>2]=b;a=c[h>>2]|0;i=n;return a|0}function jj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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;r=i;i=i+80|0;m=r+72|0;k=r+40|0;v=r+32|0;j=r+68|0;l=r+64|0;q=r+60|0;u=r+24|0;s=r;g=r+16|0;t=r+8|0;p=r+52|0;o=r+56|0;n=r+48|0;c[m>>2]=a;a=k;c[a>>2]=b;c[a+4>>2]=d;a=v;c[a>>2]=e;c[a+4>>2]=f;c[j>>2]=0;c[j>>2]=$i(c[m>>2]|0,37,l,0)|0;if((c[j>>2]|0)!=0){a=c[j>>2]|0;i=r;return a|0}c[q>>2]=0;b=k;b=lL(c[b>>2]|0,c[b+4>>2]|0,1024,0)|0;b=dL(b|0,D|0,1,0)|0;b=nL(b|0,D|0,1024,0)|0;b=$K(b|0,D|0,1,0)|0;a=u;c[a>>2]=b;c[a+4>>2]=D;a=v;a=nL(c[a>>2]|0,c[a+4>>2]|0,3,0)|0;a=lL(a|0,D|0,2,0)|0;b=s;c[b>>2]=a;c[b+4>>2]=D;b=c[l>>2]|0;a=k;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;Pe(b,1,a,D)|0;a=u;Pe(c[l>>2]|0,2,c[a>>2]|0,c[a+4>>2]|0)|0;while(1){if(100!=(le(c[l>>2]|0)|0)){break}a=g;c[a>>2]=0;c[a+4>>2]=0;oj(c[l>>2]|0,2,t,g);a=g;b=c[a+4>>2]|0;if((b|0)<0|(b|0)==0&(c[a>>2]|0)>>>0<=0){h=6;break}b=g;e=c[b+4>>2]|0;a=s;d=c[a+4>>2]|0;if((e|0)>(d|0)|((e|0)==(d|0)?(c[b>>2]|0)>>>0>(c[a>>2]|0)>>>0:0)){h=6;break}c[q>>2]=1}if((h|0)==6){c[q>>2]=0}c[j>>2]=Cd(c[l>>2]|0)|0;if((c[q>>2]|0)==0){a=c[j>>2]|0;i=r;return a|0}c[p>>2]=0;if((c[j>>2]|0)==0){c[j>>2]=$i(c[m>>2]|0,38,o,0)|0}if((c[j>>2]|0)==0){c[j>>2]=$i(c[m>>2]|0,39,n,0)|0}a:do{if((c[j>>2]|0)==0){a=k;Pe(c[l>>2]|0,1,c[a>>2]|0,c[a+4>>2]|0)|0;do{if(100!=(le(c[l>>2]|0)|0)){break a}b=c[o>>2]|0;a=c[p>>2]|0;c[p>>2]=a+1;Oe(b,1,a)|0;a=c[o>>2]|0;Oe(a,2,De(c[l>>2]|0,0)|0)|0;a=c[o>>2]|0;Oe(a,3,De(c[l>>2]|0,1)|0)|0;le(c[o>>2]|0)|0;c[j>>2]=Cd(c[o>>2]|0)|0}while((c[j>>2]|0)==0);Cd(c[l>>2]|0)|0}}while(0);if((c[j>>2]|0)==0){c[j>>2]=Cd(c[l>>2]|0)|0}if((c[j>>2]|0)!=0){a=c[j>>2]|0;i=r;return a|0}a=k;Pe(c[n>>2]|0,1,c[a>>2]|0,c[a+4>>2]|0)|0;le(c[n>>2]|0)|0;c[j>>2]=Cd(c[n>>2]|0)|0;a=c[j>>2]|0;i=r;return a|0}function kj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}oc(c[(c[d>>2]|0)+48>>2]|0);oc(c[(c[d>>2]|0)+36>>2]|0);nj(c[c[d>>2]>>2]|0);oc(c[d>>2]|0);i=b;return}function lj(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[d>>2]|0)+4>>2]|0)){break}mj(c[(c[c[d>>2]>>2]|0)+(c[e>>2]<<2)>>2]|0);c[e>>2]=(c[e>>2]|0)+1}oc(c[c[d>>2]>>2]|0);oc(c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+16>>2]=0;i=b;return}function mj(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;if((c[b>>2]|0)!=0){if((c[(c[b>>2]|0)+56>>2]|0)==0){oc(c[(c[b>>2]|0)+64>>2]|0);if((d[(c[b>>2]|0)+5>>0]|0|0)==0){oc(c[(c[b>>2]|0)+40>>2]|0);sf(c[(c[b>>2]|0)+52>>2]|0)|0}}}oc(c[b>>2]|0);i=e;return}function nj(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b;e=b+4|0;c[f>>2]=a;if((c[f>>2]|0)==0){i=b;return}c[d>>2]=c[(c[f>>2]|0)+8>>2];nj(c[c[d>>2]>>2]|0);while(1){if((c[d>>2]|0)==0){break}c[e>>2]=c[(c[d>>2]|0)+4>>2];if((c[(c[d>>2]|0)+36>>2]|0)!=((c[d>>2]|0)+40|0)){oc(c[(c[d>>2]|0)+36>>2]|0)}oc(c[(c[d>>2]|0)+28>>2]|0);oc(c[d>>2]|0);c[d>>2]=c[e>>2]}i=b;return}function oj(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;p=m+32|0;o=m+28|0;n=m+8|0;h=m+12|0;k=m+16|0;l=m+20|0;g=m+24|0;j=m;c[p>>2]=a;c[o>>2]=b;c[n>>2]=e;c[h>>2]=f;c[k>>2]=Fe(c[p>>2]|0,c[o>>2]|0)|0;if((c[k>>2]|0)==0){i=m;return}c[g>>2]=1;p=j;c[p>>2]=0;c[p+4>>2]=0;c[l>>2]=0;while(1){if((d[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0|0)>=48){b=(d[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0|0)<=57}else{b=0}e=j;f=c[e>>2]|0;e=c[e+4>>2]|0;if(!b){break}p=nL(f|0,e|0,10,0)|0;o=(d[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0)-48|0;o=dL(p|0,D|0,o|0,((o|0)<0)<<31>>31|0)|0;p=j;c[p>>2]=o;c[p+4>>2]=D;c[l>>2]=(c[l>>2]|0)+1}p=c[n>>2]|0;c[p>>2]=f;c[p+4>>2]=e;while(1){if((d[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0|0)!=32){break}c[l>>2]=(c[l>>2]|0)+1}p=j;c[p>>2]=0;c[p+4>>2]=0;if((d[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0|0)==45){c[l>>2]=(c[l>>2]|0)+1;c[g>>2]=-1}while(1){if((d[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0|0)>=48){f=(d[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0|0)<=57}else{f=0}n=j;e=c[n>>2]|0;n=c[n+4>>2]|0;if(!f){break}p=nL(e|0,n|0,10,0)|0;o=(d[(c[k>>2]|0)+(c[l>>2]|0)>>0]|0)-48|0;o=dL(p|0,D|0,o|0,((o|0)<0)<<31>>31|0)|0;p=j;c[p>>2]=o;c[p+4>>2]=D;c[l>>2]=(c[l>>2]|0)+1}o=c[g>>2]|0;o=nL(e|0,n|0,o|0,((o|0)<0)<<31>>31|0)|0;p=c[h>>2]|0;c[p>>2]=o;c[p+4>>2]=D;i=m;return}function pj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;n=l+24|0;j=l;g=l+8|0;m=l+12|0;k=l+16|0;h=l+20|0;c[n>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;c[g>>2]=e;c[m>>2]=f;c[h>>2]=$i(c[n>>2]|0,9,k,0)|0;if((c[h>>2]|0)!=0){n=c[h>>2]|0;i=l;return n|0}n=j;Pe(c[k>>2]|0,1,c[n>>2]|0,c[n+4>>2]|0)|0;Ke(c[k>>2]|0,2,c[g>>2]|0,c[m>>2]|0,0)|0;le(c[k>>2]|0)|0;c[h>>2]=Cd(c[k>>2]|0)|0;n=c[h>>2]|0;i=l;return n|0}function qj(a,b,d,e,f,g,h,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;y=i;i=i+80|0;x=y+72|0;q=y+68|0;u=y+64|0;v=y+16|0;t=y;s=y+60|0;o=y+56|0;r=y+40|0;n=y+44|0;p=y+32|0;m=y+36|0;w=y+24|0;z=y+8|0;A=y+48|0;B=y+52|0;c[x>>2]=a;c[q>>2]=b;c[u>>2]=d;a=v;c[a>>2]=e;c[a+4>>2]=f;a=t;c[a>>2]=g;c[a+4>>2]=h;c[s>>2]=j;c[o>>2]=k;c[r>>2]=l;c[n>>2]=0;if((c[c[q>>2]>>2]|0)==0){b=v;c[p>>2]=sj(c[q>>2]|0,c[u>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=t;b=$K(c[b>>2]|0,c[b+4>>2]|0,1,0)|0;a=c[s>>2]|0;c[a>>2]=b;c[a+4>>2]=D;c[c[r>>2]>>2]=(c[(c[q>>2]|0)+32>>2]|0)-(c[p>>2]|0);c[c[o>>2]>>2]=(c[(c[q>>2]|0)+36>>2]|0)+(c[p>>2]|0);a=c[n>>2]|0;i=y;return a|0}a=t;b=c[a+4>>2]|0;d=w;c[d>>2]=c[a>>2];c[d+4>>2]=b;d=v;b=c[d+4>>2]|0;a=z;c[a>>2]=c[d>>2];c[a+4>>2]=b;c[m>>2]=c[(c[q>>2]|0)+8>>2];while(1){if((c[m>>2]|0)==0){break}if((c[n>>2]|0)!=0){break}a=z;c[A>>2]=sj(c[m>>2]|0,c[u>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[B>>2]=(c[(c[m>>2]|0)+32>>2]|0)-(c[A>>2]|0);a=w;c[n>>2]=pj(c[x>>2]|0,c[a>>2]|0,c[a+4>>2]|0,(c[(c[m>>2]|0)+36>>2]|0)+(c[A>>2]|0)|0,c[B>>2]|0)|0;a=w;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;b=w;c[b>>2]=a;c[b+4>>2]=D;b=(c[(c[m>>2]|0)+12>>2]|0)+1|0;a=z;b=dL(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=z;c[a>>2]=b;c[a+4>>2]=D;c[m>>2]=c[(c[m>>2]|0)+4>>2]}if((c[n>>2]|0)!=0){a=c[n>>2]|0;i=y;return a|0}b=t;a=w;c[n>>2]=qj(c[x>>2]|0,c[c[q>>2]>>2]|0,(c[u>>2]|0)+1|0,c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[s>>2]|0,c[o>>2]|0,c[r>>2]|0)|0;a=c[n>>2]|0;i=y;return a|0}function rj(a,b,d,e,f,g,h,j,k,l,m,n,o,p){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;var 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;s=i;i=i+96|0;z=s+8|0;r=s+60|0;E=s+56|0;q=s+24|0;C=s+84|0;B=s+40|0;A=s+32|0;w=s+48|0;y=s;u=s+64|0;v=s+68|0;t=s+72|0;D=s+76|0;x=s+80|0;c[E>>2]=a;a=q;c[a>>2]=b;c[a+4>>2]=d;c[C>>2]=e;a=B;c[a>>2]=f;c[a+4>>2]=g;a=A;c[a>>2]=h;c[a+4>>2]=j;a=w;c[a>>2]=k;c[a+4>>2]=l;a=y;c[a>>2]=m;c[a+4>>2]=n;c[u>>2]=o;c[v>>2]=p;c[D>>2]=$i(c[E>>2]|0,11,t,0)|0;if((c[D>>2]|0)==0){E=q;Pe(c[t>>2]|0,1,c[E>>2]|0,c[E+4>>2]|0)|0;Oe(c[t>>2]|0,2,c[C>>2]|0)|0;E=B;Pe(c[t>>2]|0,3,c[E>>2]|0,c[E+4>>2]|0)|0;E=A;Pe(c[t>>2]|0,4,c[E>>2]|0,c[E+4>>2]|0)|0;E=y;do{if((c[E>>2]|0)==0&(c[E+4>>2]|0)==0){E=w;Pe(c[t>>2]|0,5,c[E>>2]|0,c[E+4>>2]|0)|0}else{e=w;d=c[e+4>>2]|0;a=y;b=c[a>>2]|0;a=c[a+4>>2]|0;E=z;c[E>>2]=c[e>>2];c[E+4>>2]=d;E=z+8|0;c[E>>2]=b;c[E+4>>2]=a;c[x>>2]=wc(6888,z)|0;if((c[x>>2]|0)!=0){Re(c[t>>2]|0,5,c[x>>2]|0,-1,13)|0;break}c[r>>2]=7;E=c[r>>2]|0;i=s;return E|0}}while(0);Ke(c[t>>2]|0,6,c[u>>2]|0,c[v>>2]|0,0)|0;le(c[t>>2]|0)|0;c[D>>2]=Cd(c[t>>2]|0)|0}c[r>>2]=c[D>>2];E=c[r>>2]|0;i=s;return E|0}function sj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;j=h+16|0;l=h+8|0;k=h;g=h+12|0;c[j>>2]=b;c[l>>2]=d;b=k;c[b>>2]=e;c[b+4>>2]=f;b=k;c[g>>2]=10-(tj(c[b>>2]|0,c[b+4>>2]|0)|0);a[(c[(c[j>>2]|0)+36>>2]|0)+(c[g>>2]|0)>>0]=c[l>>2];b=k;uj((c[(c[j>>2]|0)+36>>2]|0)+((c[g>>2]|0)+1)|0,c[b>>2]|0,c[b+4>>2]|0)|0;i=h;return c[g>>2]|0}function tj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d;e=d+8|0;g=f;c[g>>2]=a;c[g+4>>2]=b;c[e>>2]=0;do{c[e>>2]=(c[e>>2]|0)+1;a=f;a=eL(c[a>>2]|0,c[a+4>>2]|0,7)|0;g=f;c[g>>2]=a;c[g+4>>2]=D;g=f}while((c[g>>2]|0)!=0|(c[g+4>>2]|0)!=0);i=d;return c[e>>2]|0}function uj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;k=g;f=g+16|0;j=g+8|0;c[h>>2]=b;b=k;c[b>>2]=d;c[b+4>>2]=e;c[f>>2]=c[h>>2];e=k;d=c[e+4>>2]|0;b=j;c[b>>2]=c[e>>2];c[b+4>>2]=d;do{k=(c[j>>2]&127|128)&255;b=c[f>>2]|0;c[f>>2]=b+1;a[b>>0]=k;b=j;b=eL(c[b>>2]|0,c[b+4>>2]|0,7)|0;k=j;c[k>>2]=b;c[k+4>>2]=D;k=j}while((c[k>>2]|0)!=0|(c[k+4>>2]|0)!=0);k=(c[f>>2]|0)+ -1|0;a[k>>0]=a[k>>0]&127;i=g;return(c[f>>2]|0)-(c[h>>2]|0)|0}function vj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;h=d+12|0;f=d;e=d+4|0;g=d+8|0;c[h>>2]=a;c[f>>2]=b;c[e>>2]=0;a=(c[f>>2]|0)+8|0;if(!((c[a>>2]|0)!=0|(c[a+4>>2]|0)!=0)){a=c[e>>2]|0;i=d;return a|0}c[e>>2]=$i(c[h>>2]|0,17,g,0)|0;if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=d;return a|0}a=(c[f>>2]|0)+8|0;Pe(c[g>>2]|0,1,c[a>>2]|0,c[a+4>>2]|0)|0;a=(c[f>>2]|0)+24|0;Pe(c[g>>2]|0,2,c[a>>2]|0,c[a+4>>2]|0)|0;le(c[g>>2]|0)|0;c[e>>2]=Cd(c[g>>2]|0)|0;a=c[e>>2]|0;i=d;return a|0}function wj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;j=g+16|0;l=g;k=g+4|0;h=g+12|0;c[j>>2]=b;c[l>>2]=d;c[k>>2]=e;c[g+8>>2]=f;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[l>>2]|0)){f=5;break}if((a[(c[j>>2]|0)+(c[h>>2]|0)>>0]|0)!=(a[(c[k>>2]|0)+(c[h>>2]|0)>>0]|0)){f=5;break}c[h>>2]=(c[h>>2]|0)+1}if((f|0)==5){i=g;return c[h>>2]|0}return 0}function xj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;m=i;i=i+64|0;r=m+56|0;g=m+52|0;h=m+48|0;n=m+44|0;o=m+40|0;p=m+36|0;k=m+32|0;q=m+28|0;j=m+20|0;t=m+16|0;v=m+12|0;u=m+8|0;s=m+4|0;w=m;l=m+24|0;c[g>>2]=a;c[h>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[k>>2]=c[c[h>>2]>>2];do{if((c[k>>2]|0)!=0){c[t>>2]=c[(c[k>>2]|0)+32>>2];c[v>>2]=c[t>>2];c[u>>2]=wj(c[(c[k>>2]|0)+16>>2]|0,c[(c[k>>2]|0)+20>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;c[s>>2]=(c[p>>2]|0)-(c[u>>2]|0);b=c[u>>2]|0;b=tj(b,((b|0)<0)<<31>>31)|0;a=c[s>>2]|0;a=b+(tj(a,((a|0)<0)<<31>>31)|0)|0;c[v>>2]=(c[v>>2]|0)+(a+(c[s>>2]|0));if((c[v>>2]|0)>(c[(c[g>>2]|0)+224>>2]|0)){if((c[(c[k>>2]|0)+16>>2]|0)!=0){break}}if((c[v>>2]|0)>(c[(c[g>>2]|0)+224>>2]|0)){a=mc(c[v>>2]|0)|0;c[(c[k>>2]|0)+36>>2]=a;if((c[(c[k>>2]|0)+36>>2]|0)==0){c[r>>2]=7;a=c[r>>2]|0;i=m;return a|0}}if((c[(c[k>>2]|0)+16>>2]|0)!=0){a=c[u>>2]|0;a=uj((c[(c[k>>2]|0)+36>>2]|0)+(c[t>>2]|0)|0,a,((a|0)<0)<<31>>31)|0;c[t>>2]=(c[t>>2]|0)+a}a=c[s>>2]|0;a=uj((c[(c[k>>2]|0)+36>>2]|0)+(c[t>>2]|0)|0,a,((a|0)<0)<<31>>31)|0;c[t>>2]=(c[t>>2]|0)+a;fL((c[(c[k>>2]|0)+36>>2]|0)+(c[t>>2]|0)|0,(c[o>>2]|0)+(c[u>>2]|0)|0,c[s>>2]|0)|0;c[(c[k>>2]|0)+32>>2]=(c[t>>2]|0)+(c[s>>2]|0);a=(c[k>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+1;if((c[n>>2]|0)!=0){do{if((c[(c[k>>2]|0)+24>>2]|0)<(c[p>>2]|0)){c[w>>2]=qc(c[(c[k>>2]|0)+28>>2]|0,c[p>>2]<<1)|0;if((c[w>>2]|0)!=0){c[(c[k>>2]|0)+24>>2]=c[p>>2]<<1;c[(c[k>>2]|0)+28>>2]=c[w>>2];break}c[r>>2]=7;a=c[r>>2]|0;i=m;return a|0}}while(0);c[(c[k>>2]|0)+16>>2]=c[(c[k>>2]|0)+28>>2];fL(c[(c[k>>2]|0)+16>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;c[(c[k>>2]|0)+20>>2]=c[p>>2]}else{c[(c[k>>2]|0)+16>>2]=c[o>>2];c[(c[k>>2]|0)+20>>2]=c[p>>2]}c[r>>2]=0;a=c[r>>2]|0;i=m;return a|0}}while(0);c[j>>2]=mc(40+(c[(c[g>>2]|0)+224>>2]|0)|0)|0;if((c[j>>2]|0)==0){c[r>>2]=7;a=c[r>>2]|0;i=m;return a|0}s=(c[j>>2]|0)+0|0;f=s+40|0;do{c[s>>2]=0;s=s+4|0}while((s|0)<(f|0));c[(c[j>>2]|0)+32>>2]=11;c[(c[j>>2]|0)+36>>2]=(c[j>>2]|0)+40;if((c[k>>2]|0)!=0){c[l>>2]=c[c[k>>2]>>2];c[q>>2]=xj(c[g>>2]|0,l,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if((c[c[k>>2]>>2]|0)==0){c[c[k>>2]>>2]=c[l>>2]}c[(c[k>>2]|0)+4>>2]=c[j>>2];c[(c[j>>2]|0)+8>>2]=c[(c[k>>2]|0)+8>>2];c[c[j>>2]>>2]=c[l>>2];c[(c[j>>2]|0)+28>>2]=c[(c[k>>2]|0)+28>>2];c[(c[j>>2]|0)+24>>2]=c[(c[k>>2]|0)+24>>2];c[(c[k>>2]|0)+28>>2]=0}else{c[(c[j>>2]|0)+8>>2]=c[j>>2];c[q>>2]=xj(c[g>>2]|0,j,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0)|0}c[c[h>>2]>>2]=c[j>>2];c[r>>2]=c[q>>2];a=c[r>>2]|0;i=m;return a|0}function yj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=((c[(c[g>>2]|0)+80>>2]|0)==0&1)-((c[(c[f>>2]|0)+80>>2]|0)==0&1);if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=d;return a|0}b=(c[g>>2]|0)+88|0;a=(c[f>>2]|0)+88|0;if((c[b>>2]|0)==(c[a>>2]|0)?(c[b+4>>2]|0)==(c[a+4>>2]|0):0){c[e>>2]=(c[c[f>>2]>>2]|0)-(c[c[g>>2]>>2]|0);a=c[e>>2]|0;i=d;return a|0}else{g=(c[g>>2]|0)+88|0;b=c[g+4>>2]|0;a=(c[f>>2]|0)+88|0;f=c[a+4>>2]|0;c[e>>2]=(b|0)<(f|0)|((b|0)==(f|0)?(c[g>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)?1:-1;a=c[e>>2]|0;i=d;return a|0}return 0}function zj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=((c[(c[g>>2]|0)+80>>2]|0)==0&1)-((c[(c[f>>2]|0)+80>>2]|0)==0&1);if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=d;return a|0}b=(c[g>>2]|0)+88|0;a=(c[f>>2]|0)+88|0;if((c[b>>2]|0)==(c[a>>2]|0)?(c[b+4>>2]|0)==(c[a+4>>2]|0):0){c[e>>2]=(c[c[f>>2]>>2]|0)-(c[c[g>>2]>>2]|0);a=c[e>>2]|0;i=d;return a|0}else{g=(c[g>>2]|0)+88|0;b=c[g+4>>2]|0;a=(c[f>>2]|0)+88|0;f=c[a+4>>2]|0;c[e>>2]=(b|0)>(f|0)|((b|0)==(f|0)?(c[g>>2]|0)>>>0>(c[a>>2]|0)>>>0:0)?1:-1;a=c[e>>2]|0;i=d;return a|0}return 0}function Aj(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;if((d[(c[e>>2]|0)+5>>0]|0|0)!=0){e=c[e>>2]|0;e=e+40|0;c[e>>2]=0;i=b;return}oc(c[(c[e>>2]|0)+40>>2]|0);sf(c[(c[e>>2]|0)+52>>2]|0)|0;c[(c[e>>2]|0)+52>>2]=0;e=c[e>>2]|0;e=e+40|0;c[e>>2]=0;i=b;return}function Bj(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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;j=i;i=i+48|0;k=j+44|0;q=j+40|0;h=j+36|0;r=j+32|0;m=j+28|0;g=j+24|0;n=j+20|0;o=j+12|0;s=j+8|0;t=j+4|0;l=j;p=j+16|0;c[q>>2]=b;c[h>>2]=e;c[r>>2]=f;f=c[h>>2]|0;if((c[(c[h>>2]|0)+72>>2]|0)!=0){c[g>>2]=(c[(c[h>>2]|0)+72>>2]|0)+(c[f+76>>2]|0)}else{c[g>>2]=c[f+40>>2]}if((c[g>>2]|0)!=0){if((c[g>>2]|0)>>>0>=((c[(c[h>>2]|0)+40>>2]|0)+(c[(c[h>>2]|0)+44>>2]|0)|0)>>>0){u=6}}else{u=6}if((u|0)==6){u=c[h>>2]|0;if((c[(c[h>>2]|0)+56>>2]|0)!=0){c[s>>2]=c[c[u+56>>2]>>2];if((c[s>>2]|0)==0){c[(c[h>>2]|0)+40>>2]=0}else{c[t>>2]=c[(c[s>>2]|0)+8>>2];c[(c[h>>2]|0)+64>>2]=c[(c[s>>2]|0)+12>>2];c[(c[h>>2]|0)+60>>2]=c[(c[s>>2]|0)+16>>2];b=(c[c[t>>2]>>2]|0)+1|0;c[(c[h>>2]|0)+76>>2]=b;c[(c[h>>2]|0)+44>>2]=b;b=c[(c[t>>2]|0)+4>>2]|0;c[(c[h>>2]|0)+72>>2]=b;c[(c[h>>2]|0)+40>>2]=b;b=(c[h>>2]|0)+56|0;c[b>>2]=(c[b>>2]|0)+4}c[k>>2]=0;b=c[k>>2]|0;i=j;return b|0}Aj(u);e=(c[h>>2]|0)+32|0;u=c[e+4>>2]|0;b=(c[h>>2]|0)+16|0;f=c[b+4>>2]|0;if((u|0)>(f|0)|((u|0)==(f|0)?(c[e>>2]|0)>>>0>=(c[b>>2]|0)>>>0:0)){c[k>>2]=0;b=c[k>>2]|0;i=j;return b|0}t=c[q>>2]|0;b=(c[h>>2]|0)+32|0;u=b;u=dL(c[u>>2]|0,c[u+4>>2]|0,1,0)|0;f=D;c[b>>2]=u;c[b+4>>2]=f;if((c[r>>2]|0)!=0){s=(c[h>>2]|0)+48|0}else{s=0}c[m>>2]=Sj(t,u,f,(c[h>>2]|0)+40|0,(c[h>>2]|0)+44|0,s)|0;if((c[m>>2]|0)!=0){c[k>>2]=c[m>>2];b=c[k>>2]|0;i=j;return b|0}if((c[r>>2]|0)!=0){if((c[(c[h>>2]|0)+48>>2]|0)<(c[(c[h>>2]|0)+44>>2]|0)){c[(c[h>>2]|0)+52>>2]=c[(c[q>>2]|0)+244>>2];c[(c[q>>2]|0)+244>>2]=0}}c[g>>2]=c[(c[h>>2]|0)+40>>2]}c[m>>2]=Oj(c[h>>2]|0,c[g>>2]|0,20)|0;if((c[m>>2]|0)!=0){c[k>>2]=c[m>>2];b=c[k>>2]|0;i=j;return b|0}q=c[g>>2]|0;if((a[c[g>>2]>>0]&128|0)!=0){q=Lj(q,n)|0}else{c[n>>2]=d[q>>0]|0;q=1}c[g>>2]=(c[g>>2]|0)+q;q=c[g>>2]|0;if((a[c[g>>2]>>0]&128|0)!=0){q=Lj(q,o)|0}else{c[o>>2]=d[q>>0]|0;q=1}c[g>>2]=(c[g>>2]|0)+q;if((c[n>>2]|0)>=0){if((c[o>>2]|0)>0){if(!(((c[g>>2]|0)+(c[o>>2]|0)|0)>>>0>((c[(c[h>>2]|0)+40>>2]|0)+(c[(c[h>>2]|0)+44>>2]|0)|0)>>>0)){do{if(((c[n>>2]|0)+(c[o>>2]|0)|0)>(c[(c[h>>2]|0)+68>>2]|0)){c[l>>2]=(c[n>>2]|0)+(c[o>>2]|0)<<1;c[p>>2]=qc(c[(c[h>>2]|0)+64>>2]|0,c[l>>2]|0)|0;if((c[p>>2]|0)!=0){c[(c[h>>2]|0)+64>>2]=c[p>>2];c[(c[h>>2]|0)+68>>2]=c[l>>2];break}c[k>>2]=7;b=c[k>>2]|0;i=j;return b|0}}while(0);c[m>>2]=Oj(c[h>>2]|0,c[g>>2]|0,(c[o>>2]|0)+10|0)|0;if((c[m>>2]|0)!=0){c[k>>2]=c[m>>2];b=c[k>>2]|0;i=j;return b|0}fL((c[(c[h>>2]|0)+64>>2]|0)+(c[n>>2]|0)|0,c[g>>2]|0,c[o>>2]|0)|0;c[(c[h>>2]|0)+60>>2]=(c[n>>2]|0)+(c[o>>2]|0);c[g>>2]=(c[g>>2]|0)+(c[o>>2]|0);l=c[g>>2]|0;if((a[c[g>>2]>>0]&128|0)!=0){l=Lj(l,(c[h>>2]|0)+76|0)|0}else{c[(c[h>>2]|0)+76>>2]=d[l>>0]|0;l=1}c[g>>2]=(c[g>>2]|0)+l;c[(c[h>>2]|0)+72>>2]=c[g>>2];c[(c[h>>2]|0)+80>>2]=0;do{if(!(((c[(c[h>>2]|0)+72>>2]|0)+(c[(c[h>>2]|0)+76>>2]|0)|0)>>>0>((c[(c[h>>2]|0)+40>>2]|0)+(c[(c[h>>2]|0)+44>>2]|0)|0)>>>0)){if((c[(c[h>>2]|0)+48>>2]|0)==0){if((a[(c[(c[h>>2]|0)+72>>2]|0)+((c[(c[h>>2]|0)+76>>2]|0)-1)>>0]|0)!=0){break}}c[k>>2]=0;b=c[k>>2]|0;i=j;return b|0}}while(0);c[k>>2]=267;b=c[k>>2]|0;i=j;return b|0}}}c[k>>2]=267;b=c[k>>2]|0;i=j;return b|0}function Cj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;f=l+24|0;h=l;n=l+4|0;k=l+8|0;j=l+12|0;g=l+16|0;m=l+20|0;c[f>>2]=a;c[h>>2]=b;c[n>>2]=d;c[k>>2]=e;if((c[n>>2]|0)==(c[h>>2]|0)){c[n>>2]=(c[n>>2]|0)+ -1}c[j>>2]=(c[n>>2]|0)-1;while(1){if((c[j>>2]|0)<0){break}c[g>>2]=c[j>>2];while(1){if((c[g>>2]|0)>=((c[h>>2]|0)-1|0)){break}if((zb[c[k>>2]&127](c[(c[f>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[f>>2]|0)+((c[g>>2]|0)+1<<2)>>2]|0)|0)<0){break}c[m>>2]=c[(c[f>>2]|0)+((c[g>>2]|0)+1<<2)>>2];c[(c[f>>2]|0)+((c[g>>2]|0)+1<<2)>>2]=c[(c[f>>2]|0)+(c[g>>2]<<2)>>2];c[(c[f>>2]|0)+(c[g>>2]<<2)>>2]=c[m>>2];c[g>>2]=(c[g>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+ -1}i=l;return}function Dj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;h=f+12|0;g=f;e=f+4|0;j=f+8|0;c[h>>2]=a;c[g>>2]=b;if((c[(c[h>>2]|0)+40>>2]|0)!=0){if((c[(c[g>>2]|0)+40>>2]|0)!=0){c[j>>2]=(c[(c[h>>2]|0)+60>>2]|0)-(c[(c[g>>2]|0)+60>>2]|0);a=c[(c[h>>2]|0)+64>>2]|0;b=c[(c[g>>2]|0)+64>>2]|0;if((c[j>>2]|0)<0){c[e>>2]=XK(a,b,c[(c[h>>2]|0)+60>>2]|0)|0}else{c[e>>2]=XK(a,b,c[(c[g>>2]|0)+60>>2]|0)|0}if((c[e>>2]|0)==0){c[e>>2]=c[j>>2]}}else{d=8}}else{d=8}if((d|0)==8){c[e>>2]=((c[(c[h>>2]|0)+40>>2]|0)==0&1)-((c[(c[g>>2]|0)+40>>2]|0)==0&1)}if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=f;return a|0}c[e>>2]=(c[c[g>>2]>>2]|0)-(c[c[h>>2]>>2]|0);a=c[e>>2]|0;i=f;return a|0}function Ej(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;j=e;h=e+4|0;g=e+8|0;k=e+12|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;do{if((c[g>>2]|0)>(c[(c[j>>2]|0)+20>>2]|0)){c[(c[j>>2]|0)+20>>2]=c[g>>2]<<1;c[k>>2]=qc(c[(c[j>>2]|0)+16>>2]|0,c[(c[j>>2]|0)+20>>2]|0)|0;if((c[k>>2]|0)!=0){c[(c[j>>2]|0)+16>>2]=c[k>>2];break}c[f>>2]=7;a=c[f>>2]|0;i=e;return a|0}}while(0);fL(c[(c[j>>2]|0)+16>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}function Fj(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+12|0;j=f;g=f+4|0;h=f+16|0;k=f+8|0;c[l>>2]=b;c[j>>2]=e;c[g>>2]=0;if((d[(c[l>>2]|0)+231>>0]|0|0)!=0){if((c[(c[j>>2]|0)+56>>2]|0)!=0){a[h>>0]=0;l=(c[j>>2]|0)+88|0;c[l>>2]=0;c[l+4>>2]=0;c[(c[j>>2]|0)+84>>2]=0;Mj(0,c[(c[j>>2]|0)+72>>2]|0,c[(c[j>>2]|0)+76>>2]|0,(c[j>>2]|0)+80|0,(c[j>>2]|0)+88|0,(c[j>>2]|0)+84|0,h);l=c[g>>2]|0;i=f;return l|0}}c[g>>2]=Oj(c[j>>2]|0,c[(c[j>>2]|0)+72>>2]|0,10)|0;if((c[g>>2]|0)!=0){l=c[g>>2]|0;i=f;return l|0}c[k>>2]=Kj(c[(c[j>>2]|0)+72>>2]|0,(c[j>>2]|0)+88|0)|0;c[(c[j>>2]|0)+80>>2]=(c[(c[j>>2]|0)+72>>2]|0)+(c[k>>2]|0);l=c[g>>2]|0;i=f;return l|0}function Gj(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;j=i;i=i+48|0;k=j+36|0;h=j+32|0;l=j+28|0;t=j+24|0;u=j+16|0;n=j+12|0;m=j+8|0;q=j+41|0;s=j+40|0;o=j+20|0;p=j;c[h>>2]=b;c[l>>2]=e;c[t>>2]=f;c[u>>2]=g;c[n>>2]=0;c[m>>2]=c[(c[l>>2]|0)+80>>2];a[q>>0]=0;do{if((d[(c[h>>2]|0)+231>>0]|0)!=0){if((c[(c[l>>2]|0)+56>>2]|0)!=0){a[s>>0]=0;if((c[t>>2]|0)!=0){c[c[t>>2]>>2]=c[(c[l>>2]|0)+80>>2];c[c[u>>2]>>2]=(c[(c[l>>2]|0)+84>>2]|0)-1}Mj(0,c[(c[l>>2]|0)+72>>2]|0,c[(c[l>>2]|0)+76>>2]|0,m,(c[l>>2]|0)+88|0,(c[l>>2]|0)+84|0,s);if((a[s>>0]|0)!=0){c[(c[l>>2]|0)+80>>2]=0;break}else{c[(c[l>>2]|0)+80>>2]=c[m>>2];break}}else{r=8}}else{r=8}}while(0);do{if((r|0)==8){c[o>>2]=(c[(c[l>>2]|0)+72>>2]|0)+(c[(c[l>>2]|0)+76>>2]|0);while(1){if((a[c[m>>2]>>0]|a[q>>0]|0)!=0){b=c[m>>2]|0;c[m>>2]=b+1;a[q>>0]=a[b>>0]&128;continue}if((c[(c[l>>2]|0)+52>>2]|0)==0){break}if((c[m>>2]|0)>>>0<((c[(c[l>>2]|0)+40>>2]|0)+(c[(c[l>>2]|0)+48>>2]|0)|0)>>>0){break}c[n>>2]=Nj(c[l>>2]|0)|0;if((c[n>>2]|0)!=0){r=14;break}}if((r|0)==14){c[k>>2]=c[n>>2];b=c[k>>2]|0;i=j;return b|0}c[m>>2]=(c[m>>2]|0)+1;if((c[t>>2]|0)!=0){c[c[t>>2]>>2]=c[(c[l>>2]|0)+80>>2];c[c[u>>2]>>2]=(c[m>>2]|0)-(c[(c[l>>2]|0)+80>>2]|0)-1}while(1){if((c[m>>2]|0)>>>0<(c[o>>2]|0)>>>0){r=(a[c[m>>2]>>0]|0)==0}else{r=0}q=c[m>>2]|0;if(!r){break}c[m>>2]=q+1}r=c[l>>2]|0;if(q>>>0>=(c[o>>2]|0)>>>0){c[r+80>>2]=0;break}c[n>>2]=Oj(r,c[m>>2]|0,10)|0;if((c[n>>2]|0)==0){n=c[m>>2]|0;m=n+(Kj(c[m>>2]|0,p)|0)|0;c[(c[l>>2]|0)+80>>2]=m;m=p;n=c[m>>2]|0;m=c[m+4>>2]|0;l=(c[l>>2]|0)+88|0;o=l;p=c[o>>2]|0;o=c[o+4>>2]|0;if((a[(c[h>>2]|0)+231>>0]|0)!=0){e=$K(p|0,o|0,n|0,m|0)|0;b=l;c[b>>2]=e;c[b+4>>2]=D;break}else{e=dL(p|0,o|0,n|0,m|0)|0;b=l;c[b>>2]=e;c[b+4>>2]=D;break}}}}while(0);c[k>>2]=0;b=c[k>>2]|0;i=j;return b|0}function Hj(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=i;i=i+48|0;q=n+16|0;o=n+32|0;k=n+28|0;m=n+24|0;r=n+20|0;l=n+12|0;t=n+8|0;h=n+4|0;p=n;s=n+36|0;c[q>>2]=b;c[o>>2]=e;c[k>>2]=f;c[m>>2]=g;c[r>>2]=c[c[k>>2]>>2];c[l>>2]=c[c[m>>2]>>2];c[t>>2]=(c[r>>2]|0)+(c[l>>2]|0);c[h>>2]=0;c[p>>2]=c[r>>2];while(1){a[s>>0]=0;while(1){if(!((c[p>>2]|0)>>>0<(c[t>>2]|0)>>>0)){break}if(((a[s>>0]|a[c[p>>2]>>0])&254|0)==0){break}b=c[p>>2]|0;c[p>>2]=b+1;a[s>>0]=a[b>>0]&128}g=(c[p>>2]|0)-(c[r>>2]|0)|0;if((c[q>>2]|0)==(c[h>>2]|0)){j=7;break}c[l>>2]=(c[l>>2]|0)-g;c[r>>2]=c[p>>2];if((c[l>>2]|0)==0){break}c[p>>2]=(c[r>>2]|0)+1;g=c[p>>2]|0;if((a[c[p>>2]>>0]&128|0)!=0){g=Lj(g,h)|0}else{c[h>>2]=d[g>>0]|0;g=1}c[p>>2]=(c[p>>2]|0)+g}if((j|0)==7){c[l>>2]=g}if((c[o>>2]|0)==0){b=c[r>>2]|0;e=c[k>>2]|0;c[e>>2]=b;e=c[l>>2]|0;b=c[m>>2]|0;c[b>>2]=e;i=n;return}if(((c[r>>2]|0)+(c[l>>2]|0)|0)==(c[t>>2]|0)){b=c[r>>2]|0;e=c[k>>2]|0;c[e>>2]=b;e=c[l>>2]|0;b=c[m>>2]|0;c[b>>2]=e;i=n;return}aL((c[r>>2]|0)+(c[l>>2]|0)|0,0,(c[t>>2]|0)-((c[r>>2]|0)+(c[l>>2]|0))|0)|0;b=c[r>>2]|0;e=c[k>>2]|0;c[e>>2]=b;e=c[l>>2]|0;b=c[m>>2]|0;c[b>>2]=e;i=n;return}function Ij(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+48|0;l=j+8|0;r=j+20|0;q=j+40|0;m=j+16|0;n=j+36|0;k=j+24|0;h=j+28|0;p=j+32|0;o=j;s=l;c[s>>2]=b;c[s+4>>2]=d;c[r>>2]=e;c[q>>2]=f;c[m>>2]=g;c[n>>2]=0;c[k>>2]=0;c[h>>2]=c[r>>2];c[p>>2]=(c[r>>2]|0)+(c[q>>2]|0);if((a[c[h>>2]>>0]|0)!=1){if((a[c[h>>2]>>0]|0)==2){s=l;s=uj((c[m>>2]|0)+(c[n>>2]|0)|0,c[s>>2]|0,c[s+4>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+s;s=c[n>>2]|0;c[n>>2]=s+1;a[(c[m>>2]|0)+s>>0]=2;c[k>>2]=1}Jj(0,h)}while(1){if(!((c[h>>2]|0)>>>0<(c[p>>2]|0)>>>0)){break}if((a[c[h>>2]>>0]|0)!=1){break}c[h>>2]=(c[h>>2]|0)+1;s=Kj(c[h>>2]|0,o)|0;c[h>>2]=(c[h>>2]|0)+s;if((a[c[h>>2]>>0]|0)==2){if((c[k>>2]|0)==0){s=l;s=uj((c[m>>2]|0)+(c[n>>2]|0)|0,c[s>>2]|0,c[s+4>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+s;c[k>>2]=1}s=c[n>>2]|0;c[n>>2]=s+1;a[(c[m>>2]|0)+s>>0]=1;s=o;s=uj((c[m>>2]|0)+(c[n>>2]|0)|0,c[s>>2]|0,c[s+4>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+s;s=c[n>>2]|0;c[n>>2]=s+1;a[(c[m>>2]|0)+s>>0]=2}Jj(0,h)}if((c[k>>2]|0)==0){s=c[n>>2]|0;i=j;return s|0}s=c[n>>2]|0;c[n>>2]=s+1;a[(c[m>>2]|0)+s>>0]=0;s=c[n>>2]|0;i=j;return s|0}function Jj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;j=g+16|0;f=g;e=g+4|0;l=g+20|0;h=g+12|0;k=g+8|0;c[j>>2]=b;c[f>>2]=d;c[e>>2]=c[c[f>>2]>>2];a[l>>0]=0;while(1){if((254&(a[c[e>>2]>>0]|a[l>>0])|0)==0){break}b=c[e>>2]|0;c[e>>2]=b+1;a[l>>0]=a[b>>0]&128}if((c[j>>2]|0)==0){l=c[e>>2]|0;b=c[f>>2]|0;c[b>>2]=l;i=g;return}c[h>>2]=(c[e>>2]|0)-(c[c[f>>2]>>2]|0);c[k>>2]=c[c[j>>2]>>2];fL(c[k>>2]|0,c[c[f>>2]>>2]|0,c[h>>2]|0)|0;c[k>>2]=(c[k>>2]|0)+(c[h>>2]|0);c[c[j>>2]>>2]=c[k>>2];l=c[e>>2]|0;b=c[f>>2]|0;c[b>>2]=l;i=g;return}function Kj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+48|0;f=l+36|0;j=l+32|0;g=l+24|0;k=l+16|0;n=l+20|0;h=l;m=l+28|0;e=l+8|0;c[j>>2]=b;c[g>>2]=d;c[k>>2]=c[j>>2];d=c[j>>2]|0;c[j>>2]=d+1;c[n>>2]=a[d>>0]|0;d=c[n>>2]|0;if((c[n>>2]&128|0)==0){b=c[g>>2]|0;c[b>>2]=d;c[b+4>>2]=0;c[f>>2]=1;b=c[f>>2]|0;i=l;return b|0}b=c[j>>2]|0;c[j>>2]=b+1;c[n>>2]=d&127|a[b>>0]<<7;d=c[n>>2]|0;if((c[n>>2]&16384|0)==0){b=c[g>>2]|0;c[b>>2]=d;c[b+4>>2]=0;c[f>>2]=2;b=c[f>>2]|0;i=l;return b|0}b=c[j>>2]|0;c[j>>2]=b+1;c[n>>2]=d&16383|a[b>>0]<<14;d=c[n>>2]|0;if((c[n>>2]&2097152|0)==0){b=c[g>>2]|0;c[b>>2]=d;c[b+4>>2]=0;c[f>>2]=3;b=c[f>>2]|0;i=l;return b|0}b=c[j>>2]|0;c[j>>2]=b+1;c[n>>2]=d&2097151|a[b>>0]<<21;d=c[n>>2]|0;if((c[n>>2]&268435456|0)==0){b=c[g>>2]|0;c[b>>2]=d;c[b+4>>2]=0;c[f>>2]=4;b=c[f>>2]|0;i=l;return b|0}b=h;c[b>>2]=d&268435455;c[b+4>>2]=0;c[m>>2]=28;while(1){if((c[m>>2]|0)>63){break}b=c[j>>2]|0;c[j>>2]=b+1;b=a[b>>0]|0;d=e;c[d>>2]=b;c[d+4>>2]=((b|0)<0)<<31>>31;d=bL(c[e>>2]&127|0,0,c[m>>2]|0)|0;b=h;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,D|0)|0;b=h;c[b>>2]=d;c[b+4>>2]=D;if((c[e>>2]&128|0)==0&0==0){break}c[m>>2]=(c[m>>2]|0)+7}n=h;d=c[n+4>>2]|0;b=c[g>>2]|0;c[b>>2]=c[n>>2];c[b+4>>2]=d;c[f>>2]=(c[j>>2]|0)-(c[k>>2]|0);b=c[f>>2]|0;i=l;return b|0}function Lj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;h=e;g=e+4|0;j=e+8|0;c[h>>2]=b;c[g>>2]=d;b=c[h>>2]|0;c[h>>2]=b+1;c[j>>2]=a[b>>0]|0;b=c[j>>2]&127;d=c[h>>2]|0;c[h>>2]=d+1;c[j>>2]=b|a[d>>0]<<7;d=c[j>>2]|0;if((c[j>>2]&16384|0)==0){c[c[g>>2]>>2]=d;c[f>>2]=2;b=c[f>>2]|0;i=e;return b|0}b=c[h>>2]|0;c[h>>2]=b+1;c[j>>2]=d&16383|a[b>>0]<<14;d=c[j>>2]|0;if((c[j>>2]&2097152|0)==0){c[c[g>>2]>>2]=d;c[f>>2]=3;b=c[f>>2]|0;i=e;return b|0}b=c[h>>2]|0;c[h>>2]=b+1;c[j>>2]=d&2097151|a[b>>0]<<21;d=c[j>>2]|0;if((c[j>>2]&268435456|0)==0){c[c[g>>2]>>2]=d;c[f>>2]=4;b=c[f>>2]|0;i=e;return b|0}else{c[j>>2]=d&268435455;c[c[g>>2]>>2]=c[j>>2]|(a[c[h>>2]>>0]&15)<<28;c[f>>2]=5;b=c[f>>2]|0;i=e;return b|0}return 0}function Mj(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;m=i;i=i+80|0;u=m+76|0;p=m+72|0;B=m+68|0;l=m+64|0;r=m+60|0;q=m+56|0;n=m+52|0;v=m+48|0;x=m+16|0;w=m+36|0;y=m+32|0;k=m+28|0;A=m+24|0;z=m+8|0;t=m+40|0;s=m;o=m+44|0;c[u>>2]=b;c[p>>2]=d;c[B>>2]=e;c[l>>2]=f;c[r>>2]=g;c[q>>2]=h;c[n>>2]=j;c[v>>2]=c[c[l>>2]>>2];if((c[v>>2]|0)!=0){c[t>>2]=(c[u>>2]|0)!=0?-1:1;Qj(v,c[p>>2]|0,s);b=c[t>>2]|0;d=s;d=nL(b|0,((b|0)<0)<<31>>31|0,c[d>>2]|0,c[d+4>>2]|0)|0;b=c[r>>2]|0;e=b;d=$K(c[e>>2]|0,c[e+4>>2]|0,d|0,D|0)|0;c[b>>2]=d;c[b+4>>2]=D;if((c[v>>2]|0)==(c[p>>2]|0)){a[c[n>>2]>>0]=1}else{c[o>>2]=c[v>>2];Rj(c[p>>2]|0,v);c[c[q>>2]>>2]=(c[o>>2]|0)-(c[v>>2]|0)}c[c[l>>2]>>2]=c[v>>2];i=m;return}b=x;c[b>>2]=0;c[b+4>>2]=0;c[w>>2]=0;c[y>>2]=c[p>>2];c[k>>2]=(c[p>>2]|0)+(c[B>>2]|0);c[A>>2]=1;while(1){if(!((c[y>>2]|0)>>>0<(c[k>>2]|0)>>>0)){break}b=Kj(c[y>>2]|0,z)|0;c[y>>2]=(c[y>>2]|0)+b;b=c[A>>2]|0;d=z;d=nL(b|0,((b|0)<0)<<31>>31|0,c[d>>2]|0,c[d+4>>2]|0)|0;b=x;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,D|0)|0;b=x;c[b>>2]=d;c[b+4>>2]=D;c[w>>2]=c[y>>2];Pj(0,y);while(1){if(!((c[y>>2]|0)>>>0<(c[k>>2]|0)>>>0)){break}if((a[c[y>>2]>>0]|0)!=0){break}c[y>>2]=(c[y>>2]|0)+1}c[A>>2]=(c[u>>2]|0)!=0?-1:1}c[c[q>>2]>>2]=(c[k>>2]|0)-(c[w>>2]|0);c[c[l>>2]>>2]=c[w>>2];e=x;d=c[e+4>>2]|0;b=c[r>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;i=m;return}function Nj(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;d=e+4|0;c[f>>2]=b;if(((c[(c[f>>2]|0)+44>>2]|0)-(c[(c[f>>2]|0)+48>>2]|0)|0)<4096){b=(c[(c[f>>2]|0)+44>>2]|0)-(c[(c[f>>2]|0)+48>>2]|0)|0}else{b=4096}c[g>>2]=b;c[d>>2]=tf(c[(c[f>>2]|0)+52>>2]|0,(c[(c[f>>2]|0)+40>>2]|0)+(c[(c[f>>2]|0)+48>>2]|0)|0,c[g>>2]|0,c[(c[f>>2]|0)+48>>2]|0)|0;if((c[d>>2]|0)!=0){b=c[d>>2]|0;i=e;return b|0}b=(c[f>>2]|0)+48|0;c[b>>2]=(c[b>>2]|0)+(c[g>>2]|0);b=(c[(c[f>>2]|0)+40>>2]|0)+(c[(c[f>>2]|0)+48>>2]|0)+0|0;g=b+20|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(g|0));if((c[(c[f>>2]|0)+48>>2]|0)!=(c[(c[f>>2]|0)+44>>2]|0)){b=c[d>>2]|0;i=e;return b|0}sf(c[(c[f>>2]|0)+52>>2]|0)|0;c[(c[f>>2]|0)+52>>2]=0;c[(c[f>>2]|0)+48>>2]=0;b=c[d>>2]|0;i=e;return b|0}function Oj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e+12|0;g=e;j=e+4|0;f=e+8|0;c[h>>2]=a;c[g>>2]=b;c[j>>2]=d;c[f>>2]=0;while(1){if((c[(c[h>>2]|0)+52>>2]|0)==0){d=6;break}if((c[f>>2]|0)!=0){d=6;break}if(((c[g>>2]|0)-(c[(c[h>>2]|0)+40>>2]|0)+(c[j>>2]|0)|0)<=(c[(c[h>>2]|0)+48>>2]|0)){d=6;break}c[f>>2]=Nj(c[h>>2]|0)|0}if((d|0)==6){i=e;return c[f>>2]|0}return 0}function Pj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;j=g+16|0;f=g;e=g+4|0;l=g+20|0;h=g+12|0;k=g+8|0;c[j>>2]=b;c[f>>2]=d;c[e>>2]=c[c[f>>2]>>2];a[l>>0]=0;while(1){b=(a[c[e>>2]>>0]|a[l>>0]|0)!=0;d=c[e>>2]|0;c[e>>2]=d+1;if(!b){break}a[l>>0]=a[d>>0]&128}if((c[j>>2]|0)==0){d=c[e>>2]|0;b=c[f>>2]|0;c[b>>2]=d;i=g;return}c[h>>2]=(c[e>>2]|0)-(c[c[f>>2]>>2]|0);c[k>>2]=c[c[j>>2]>>2];fL(c[k>>2]|0,c[c[f>>2]>>2]|0,c[h>>2]|0)|0;c[k>>2]=(c[k>>2]|0)+(c[h>>2]|0);c[c[j>>2]>>2]=c[k>>2];d=c[e>>2]|0;b=c[f>>2]|0;c[b>>2]=d;i=g;return}function Qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;g=k+20|0;l=k+12|0;j=k+8|0;h=k;f=k+16|0;c[g>>2]=b;c[l>>2]=d;c[j>>2]=e;c[f>>2]=(c[c[g>>2]>>2]|0)+ -2;while(1){if(!((c[f>>2]|0)>>>0>=(c[l>>2]|0)>>>0)){break}if((a[c[f>>2]>>0]&128|0)==0){break}c[f>>2]=(c[f>>2]|0)+ -1}c[f>>2]=(c[f>>2]|0)+1;c[c[g>>2]>>2]=c[f>>2];Kj(c[f>>2]|0,h)|0;l=h;d=c[l+4>>2]|0;b=c[j>>2]|0;c[b>>2]=c[l>>2];c[b+4>>2]=d;i=k;return}function Rj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;h=g+8|0;f=g;e=g+4|0;j=g+12|0;c[h>>2]=b;c[f>>2]=d;c[e>>2]=(c[c[f>>2]>>2]|0)+ -2;a[j>>0]=0;do{if(!((c[e>>2]|0)>>>0>(c[h>>2]|0)>>>0)){break}b=c[e>>2]|0;c[e>>2]=b+ -1;b=a[b>>0]|0;a[j>>0]=b}while((b<<24>>24|0)==0);while(1){if((c[e>>2]|0)>>>0>(c[h>>2]|0)>>>0){b=(a[c[e>>2]>>0]&128|a[j>>0]|0)!=0}else{b=0}d=c[e>>2]|0;if(!b){break}c[e>>2]=d+ -1;a[j>>0]=a[d>>0]|0}if(d>>>0>(c[h>>2]|0)>>>0){c[e>>2]=(c[e>>2]|0)+2}do{b=c[e>>2]|0;c[e>>2]=b+1}while((a[b>>0]&128|0)!=0);c[c[f>>2]>>2]=c[e>>2];i=g;return}function Sj(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+48|0;t=j+8|0;l=j+36|0;p=j+32|0;o=j;n=j+28|0;q=j+40|0;s=j+16|0;m=j+12|0;r=j+20|0;k=j+24|0;c[p>>2]=b;b=o;c[b>>2]=d;c[b+4>>2]=e;c[n>>2]=f;c[q>>2]=g;c[s>>2]=h;h=c[p>>2]|0;if((c[(c[p>>2]|0)+244>>2]|0)!=0){b=o;c[m>>2]=xf(c[h+244>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0}else{if(0==(c[h+240>>2]|0)){c[t>>2]=c[(c[p>>2]|0)+20>>2];b=wc(6904,t)|0;c[(c[p>>2]|0)+240>>2]=b;if(0==(c[(c[p>>2]|0)+240>>2]|0)){c[l>>2]=7;b=c[l>>2]|0;i=j;return b|0}}b=o;c[m>>2]=_e(c[(c[p>>2]|0)+12>>2]|0,c[(c[p>>2]|0)+16>>2]|0,c[(c[p>>2]|0)+240>>2]|0,6920,c[b>>2]|0,c[b+4>>2]|0,0,(c[p>>2]|0)+244|0)|0}if((c[m>>2]|0)==0){c[r>>2]=wf(c[(c[p>>2]|0)+244>>2]|0)|0;c[c[q>>2]>>2]=c[r>>2];if((c[n>>2]|0)!=0){c[k>>2]=mc((c[r>>2]|0)+20|0)|0;if((c[k>>2]|0)!=0){if((c[s>>2]|0)!=0){if((c[r>>2]|0)>16384){c[r>>2]=4096;c[c[s>>2]>>2]=c[r>>2]}}c[m>>2]=tf(c[(c[p>>2]|0)+244>>2]|0,c[k>>2]|0,c[r>>2]|0,0)|0;p=(c[k>>2]|0)+(c[r>>2]|0)+0|0;o=p+20|0;do{a[p>>0]=0;p=p+1|0}while((p|0)<(o|0));if((c[m>>2]|0)!=0){oc(c[k>>2]|0);c[k>>2]=0}}else{c[m>>2]=7}c[c[n>>2]>>2]=c[k>>2]}}c[l>>2]=c[m>>2];b=c[l>>2]|0;i=j;return b|0}function Tj(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+48|0;h=j+36|0;q=j+32|0;l=j+28|0;m=j+24|0;p=j+20|0;r=j+16|0;g=j+8|0;n=j+4|0;o=j;k=j+12|0;c[q>>2]=a;c[l>>2]=b;c[m>>2]=e;c[p>>2]=f;c[g>>2]=c[(c[l>>2]|0)+4>>2];c[r>>2]=0;a:while(1){if((c[(c[l>>2]|0)+28>>2]|0)!=0){m=13;break}if((c[r>>2]|0)>=(c[(c[l>>2]|0)+4>>2]|0)){m=13;break}c[n>>2]=0;c[o>>2]=c[(c[c[l>>2]>>2]|0)+(c[r>>2]<<2)>>2];do{c[k>>2]=Bj(c[q>>2]|0,c[o>>2]|0,0)|0;if((c[k>>2]|0)!=0){m=6;break a}if((c[m>>2]|0)==0){break}a=Uj(c[o>>2]|0,c[m>>2]|0,c[p>>2]|0)|0;c[n>>2]=a}while((a|0)<0);if((d[(c[o>>2]|0)+4>>0]|0|0)!=0){if((c[n>>2]|0)!=0){Aj(c[o>>2]|0)}}c[r>>2]=(c[r>>2]|0)+1}if((m|0)==6){c[h>>2]=c[k>>2];a=c[h>>2]|0;i=j;return a|0}else if((m|0)==13){Cj(c[c[l>>2]>>2]|0,c[g>>2]|0,c[g>>2]|0,51);c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}return 0}function Uj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e+12|0;j=e;g=e+4|0;f=e+8|0;c[h>>2]=a;c[j>>2]=b;c[g>>2]=d;c[f>>2]=0;if((c[(c[h>>2]|0)+40>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}d=c[(c[h>>2]|0)+64>>2]|0;j=c[j>>2]|0;if((c[(c[h>>2]|0)+60>>2]|0)>(c[g>>2]|0)){c[f>>2]=XK(d,j,c[g>>2]|0)|0}else{c[f>>2]=XK(d,j,c[(c[h>>2]|0)+60>>2]|0)|0}if((c[f>>2]|0)!=0){a=c[f>>2]|0;i=e;return a|0}c[f>>2]=(c[(c[h>>2]|0)+60>>2]|0)-(c[g>>2]|0);a=c[f>>2]|0;i=e;return a|0}function Vj(a,b,d,e,f,g,h,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0;B=i;i=i+96|0;l=B+88|0;C=B+84|0;E=B+80|0;F=B+76|0;u=B+72|0;v=B+68|0;r=B+64|0;q=B+60|0;m=B+56|0;n=B+52|0;z=B+48|0;t=B+24|0;G=B+32|0;A=B+28|0;o=B;p=B+16|0;y=B+8|0;x=B+36|0;w=B+40|0;s=B+44|0;c[l>>2]=a;c[C>>2]=b;c[E>>2]=d;c[F>>2]=e;c[u>>2]=f;c[v>>2]=g;c[r>>2]=h;c[q>>2]=j;c[m>>2]=k;c[n>>2]=0;c[z>>2]=0;if((c[F>>2]|0)<0){if((c[(c[l>>2]|0)+252>>2]|0)!=0){c[G>>2]=0;c[n>>2]=Wj(c[l>>2]|0,c[E>>2]|0,c[u>>2]|0,c[v>>2]|0,c[r>>2]|0,G)|0;if((c[n>>2]|0)==0){if((c[G>>2]|0)!=0){c[n>>2]=Xj(c[m>>2]|0,c[G>>2]|0)|0}}}}a:do{if((c[F>>2]|0)!=-1){if((c[n>>2]|0)==0){c[n>>2]=Yj(c[l>>2]|0,c[C>>2]|0,c[E>>2]|0,c[F>>2]|0,z)|0}while(1){if((c[n>>2]|0)!=0){break a}a=le(c[z>>2]|0)|0;c[n>>2]=a;if(100!=(a|0)){break a}c[A>>2]=0;b=Ee(c[z>>2]|0,1)|0;a=o;c[a>>2]=b;c[a+4>>2]=D;a=Ee(c[z>>2]|0,2)|0;b=p;c[b>>2]=a;c[b+4>>2]=D;b=Ee(c[z>>2]|0,3)|0;a=y;c[a>>2]=b;c[a+4>>2]=D;c[x>>2]=Be(c[z>>2]|0,4)|0;c[w>>2]=ye(c[z>>2]|0,4)|0;a=o;if((c[a>>2]|0)!=0|(c[a+4>>2]|0)!=0){if((c[u>>2]|0)!=0){c[s>>2]=(c[r>>2]|0)!=0?p:0;c[n>>2]=Zj(c[l>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,c[x>>2]|0,o,c[s>>2]|0)|0;if((c[n>>2]|0)!=0){break a}if((c[r>>2]|0)==0){if((c[q>>2]|0)==0){d=o;b=c[d+4>>2]|0;a=p;c[a>>2]=c[d>>2];c[a+4>>2]=b}}}}if((c[r>>2]|0)==0){C=(c[q>>2]|0)==0}else{C=0}d=o;b=p;a=y;c[n>>2]=_j((c[(c[m>>2]|0)+4>>2]|0)+1|0,C&1,c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[w>>2]|0,c[x>>2]|0,A)|0;if((c[n>>2]|0)!=0){break a}c[n>>2]=Xj(c[m>>2]|0,c[A>>2]|0)|0}}}while(0);c[t>>2]=Cd(c[z>>2]|0)|0;if((c[n>>2]|0)!=101){a=c[n>>2]|0;i=B;return a|0}c[n>>2]=c[t>>2];a=c[n>>2]|0;i=B;return a|0}function Wj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,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;q=i;i=i+80|0;A=q+64|0;z=q+60|0;s=q+56|0;h=q+52|0;t=q+48|0;p=q+44|0;k=q+40|0;v=q+36|0;m=q+32|0;n=q+24|0;o=q+20|0;y=q+16|0;x=q+12|0;r=q+8|0;u=q+4|0;w=q;l=q+28|0;c[A>>2]=a;c[z>>2]=b;c[s>>2]=d;c[h>>2]=e;c[t>>2]=f;c[p>>2]=g;c[k>>2]=0;c[m>>2]=0;c[n>>2]=0;c[o>>2]=0;c[y>>2]=(c[(c[A>>2]|0)+252>>2]|0)+((c[z>>2]|0)*24|0)+4;if((c[t>>2]|0)!=0){c[x>>2]=0;c[v>>2]=c[(c[y>>2]|0)+8>>2];while(1){if((c[v>>2]|0)==0){break}c[r>>2]=c[(c[v>>2]|0)+12>>2];c[u>>2]=c[(c[v>>2]|0)+16>>2];if((c[h>>2]|0)==0){j=7}else{if((c[u>>2]|0)>=(c[h>>2]|0)){if(0==(XK(c[r>>2]|0,c[s>>2]|0,c[h>>2]|0)|0)){j=7}}}if((j|0)==7){j=0;if((c[n>>2]|0)==(c[x>>2]|0)){c[x>>2]=(c[x>>2]|0)+16;c[w>>2]=qc(c[m>>2]|0,c[x>>2]<<2)|0;if((c[w>>2]|0)==0){j=9;break}c[m>>2]=c[w>>2]}z=c[v>>2]|0;A=c[n>>2]|0;c[n>>2]=A+1;c[(c[m>>2]|0)+(A<<2)>>2]=z}c[v>>2]=c[c[v>>2]>>2]}if((j|0)==9){c[o>>2]=7;c[n>>2]=0}if((c[n>>2]|0)>1){OK(c[m>>2]|0,c[n>>2]|0,4,52)}}else{c[v>>2]=qi(c[y>>2]|0,c[s>>2]|0,c[h>>2]|0)|0;if((c[v>>2]|0)!=0){c[m>>2]=v;c[n>>2]=1}}do{if((c[n>>2]|0)>0){c[l>>2]=96+((c[n>>2]|0)+1<<2);c[k>>2]=mc(c[l>>2]|0)|0;if((c[k>>2]|0)!=0){aL(c[k>>2]|0,0,c[l>>2]|0)|0;c[c[k>>2]>>2]=2147483647;c[(c[k>>2]|0)+56>>2]=(c[k>>2]|0)+96;fL(c[(c[k>>2]|0)+56>>2]|0,c[m>>2]|0,c[n>>2]<<2|0)|0;break}else{c[o>>2]=7;break}}}while(0);if((c[t>>2]|0)==0){z=c[k>>2]|0;A=c[p>>2]|0;c[A>>2]=z;A=c[o>>2]|0;i=q;return A|0}oc(c[m>>2]|0);z=c[k>>2]|0;A=c[p>>2]|0;c[A>>2]=z;A=c[o>>2]|0;i=q;return A|0}function Xj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d;g=d+4|0;h=d+8|0;j=d+12|0;c[f>>2]=a;c[g>>2]=b;do{if(((c[(c[f>>2]|0)+4>>2]|0)%16|0|0)==0){c[j>>2]=(c[(c[f>>2]|0)+4>>2]|0)+16<<2;c[h>>2]=qc(c[c[f>>2]>>2]|0,c[j>>2]|0)|0;if((c[h>>2]|0)!=0){c[c[f>>2]>>2]=c[h>>2];break}mj(c[g>>2]|0);c[e>>2]=7;a=c[e>>2]|0;i=d;return a|0}}while(0);j=c[g>>2]|0;h=(c[f>>2]|0)+4|0;a=c[h>>2]|0;c[h>>2]=a+1;c[(c[c[f>>2]>>2]|0)+(a<<2)>>2]=j;c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}function Yj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;g=j+24|0;m=j;l=j+4|0;o=j+8|0;h=j+12|0;k=j+16|0;n=j+20|0;c[g>>2]=a;c[m>>2]=b;c[l>>2]=d;c[o>>2]=e;c[h>>2]=f;c[n>>2]=0;f=c[g>>2]|0;if((c[o>>2]|0)<0){c[k>>2]=$i(f,13,n,0)|0;if((c[k>>2]|0)==0){a=c[n>>2]|0;b=cj(c[g>>2]|0,c[m>>2]|0,c[l>>2]|0,0)|0;Pe(a,1,b,D)|0;b=c[n>>2]|0;a=cj(c[g>>2]|0,c[m>>2]|0,c[l>>2]|0,1023)|0;Pe(b,2,a,D)|0}}else{c[k>>2]=$i(f,12,n,0)|0;if((c[k>>2]|0)==0){b=c[n>>2]|0;a=cj(c[g>>2]|0,c[m>>2]|0,c[l>>2]|0,c[o>>2]|0)|0;Pe(b,1,a,D)|0}}c[c[h>>2]>>2]=c[n>>2];i=j;return c[k>>2]|0}function Zj(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;q=i;i=i+48|0;m=q+40|0;n=q+36|0;o=q+32|0;v=q+28|0;w=q+24|0;r=q+20|0;s=q+12|0;t=q+8|0;u=q+4|0;p=q;l=q+16|0;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[v>>2]=g;c[w>>2]=h;c[r>>2]=j;c[s>>2]=k;k=c[v>>2]|0;if((a[c[v>>2]>>0]&128|0)!=0){Lj(k,u)|0}else{c[u>>2]=d[k>>0]|0}c[t>>2]=$j(c[n>>2]|0,c[o>>2]|0,c[v>>2]|0,c[w>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;if((c[t>>2]|0)!=0){b=c[t>>2]|0;i=q;return b|0}if((c[u>>2]|0)<=1){b=c[t>>2]|0;i=q;return b|0}c[p>>2]=0;if((c[r>>2]|0)!=0){if((c[s>>2]|0)!=0){e=c[r>>2]|0;b=c[s>>2]|0;if((c[e>>2]|0)!=(c[b>>2]|0)?1:(c[e+4>>2]|0)!=(c[b+4>>2]|0)){b=c[r>>2]|0;c[t>>2]=Sj(c[m>>2]|0,c[b>>2]|0,c[b+4>>2]|0,p,l,0)|0;if((c[t>>2]|0)==0){c[t>>2]=Zj(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[l>>2]|0,c[r>>2]|0,0)|0}oc(c[p>>2]|0);c[r>>2]=0;c[p>>2]=0}}}if((c[t>>2]|0)==0){if((c[r>>2]|0)!=0){u=c[r>>2]|0;v=c[u>>2]|0;u=c[u+4>>2]|0}else{u=c[s>>2]|0;v=c[u>>2]|0;u=c[u+4>>2]|0}c[t>>2]=Sj(c[m>>2]|0,v,u,p,l,0)|0}if((c[t>>2]|0)==0){c[t>>2]=Zj(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[l>>2]|0,c[r>>2]|0,c[s>>2]|0)|0}oc(c[p>>2]|0);b=c[t>>2]|0;i=q;return b|0}function _j(b,d,e,f,g,h,j,k,l,m,n){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;u=i;i=i+64|0;z=u+52|0;q=u+48|0;s=u+44|0;t=u+8|0;o=u;v=u+16|0;y=u+32|0;x=u+36|0;p=u+24|0;r=u+40|0;w=u+28|0;c[q>>2]=b;c[s>>2]=d;b=t;c[b>>2]=e;c[b+4>>2]=f;b=o;c[b>>2]=g;c[b+4>>2]=h;b=v;c[b>>2]=j;c[b+4>>2]=k;c[y>>2]=l;c[x>>2]=m;c[p>>2]=n;c[w>>2]=0;b=t;if((c[b>>2]|0)==0&(c[b+4>>2]|0)==0){c[w>>2]=(c[x>>2]|0)+20}c[r>>2]=mc(96+(c[w>>2]|0)|0)|0;if((c[r>>2]|0)==0){c[z>>2]=7;b=c[z>>2]|0;i=u;return b|0}m=(c[r>>2]|0)+0|0;n=m+96|0;do{c[m>>2]=0;m=m+4|0}while((m|0)<(n|0));c[c[r>>2]>>2]=c[q>>2];a[(c[r>>2]|0)+4>>0]=(c[s>>2]|0)!=0;e=t;d=c[e+4>>2]|0;b=(c[r>>2]|0)+8|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;b=o;d=c[b+4>>2]|0;e=(c[r>>2]|0)+16|0;c[e>>2]=c[b>>2];c[e+4>>2]=d;e=v;d=c[e+4>>2]|0;b=(c[r>>2]|0)+24|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;if((c[w>>2]|0)!=0){c[(c[r>>2]|0)+40>>2]=(c[r>>2]|0)+96;a[(c[r>>2]|0)+5>>0]=1;c[(c[r>>2]|0)+44>>2]=c[x>>2];fL(c[(c[r>>2]|0)+40>>2]|0,c[y>>2]|0,c[x>>2]|0)|0;m=(c[(c[r>>2]|0)+40>>2]|0)+(c[x>>2]|0)+0|0;n=m+20|0;do{a[m>>0]=0;m=m+1|0}while((m|0)<(n|0))}else{d=t;d=$K(c[d>>2]|0,c[d+4>>2]|0,1,0)|0;b=(c[r>>2]|0)+32|0;c[b>>2]=d;c[b+4>>2]=D}c[c[p>>2]>>2]=c[r>>2];c[z>>2]=0;b=c[z>>2]|0;i=u;return b|0}function $j(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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,E=0;o=i;i=i+80|0;q=o+76|0;s=o+72|0;w=o+68|0;E=o+64|0;C=o+60|0;p=o+56|0;k=o+52|0;l=o+48|0;x=o+44|0;y=o+40|0;m=o+16|0;r=o+12|0;z=o+8|0;n=o;B=o+20|0;u=o+24|0;A=o+28|0;t=o+32|0;v=o+36|0;c[s>>2]=b;c[w>>2]=e;c[E>>2]=f;c[C>>2]=g;c[p>>2]=h;c[k>>2]=j;c[l>>2]=0;c[x>>2]=c[E>>2];c[y>>2]=(c[x>>2]|0)+(c[C>>2]|0);c[m>>2]=0;c[r>>2]=0;c[z>>2]=1;b=Kj(c[x>>2]|0,n)|0;c[x>>2]=(c[x>>2]|0)+b;b=Kj(c[x>>2]|0,n)|0;c[x>>2]=(c[x>>2]|0)+b;if((c[x>>2]|0)>>>0>(c[y>>2]|0)>>>0){c[q>>2]=267;E=c[q>>2]|0;i=o;return E|0}while(1){if(!((c[x>>2]|0)>>>0<(c[y>>2]|0)>>>0)){r=31;break}if((c[p>>2]|0)==0){if((c[k>>2]|0)==0){r=31;break}}c[A>>2]=0;if((c[z>>2]|0)==0){j=c[x>>2]|0;if((a[c[x>>2]>>0]&128|0)!=0){j=Lj(j,A)|0}else{c[A>>2]=d[j>>0]|0;j=1}c[x>>2]=(c[x>>2]|0)+j}c[z>>2]=0;j=c[x>>2]|0;if((a[c[x>>2]>>0]&128|0)!=0){j=Lj(j,u)|0}else{c[u>>2]=d[j>>0]|0;j=1}c[x>>2]=(c[x>>2]|0)+j;if((c[A>>2]|0)<0){r=17;break}if((c[u>>2]|0)<0){r=17;break}if(((c[x>>2]|0)+(c[u>>2]|0)|0)>>>0>(c[y>>2]|0)>>>0){r=17;break}if(((c[A>>2]|0)+(c[u>>2]|0)|0)>(c[r>>2]|0)){c[r>>2]=(c[A>>2]|0)+(c[u>>2]|0)<<1;c[v>>2]=qc(c[m>>2]|0,c[r>>2]|0)|0;if((c[v>>2]|0)==0){r=20;break}c[m>>2]=c[v>>2]}fL((c[m>>2]|0)+(c[A>>2]|0)|0,c[x>>2]|0,c[u>>2]|0)|0;c[t>>2]=(c[A>>2]|0)+(c[u>>2]|0);c[x>>2]=(c[x>>2]|0)+(c[u>>2]|0);c[B>>2]=XK(c[s>>2]|0,c[m>>2]|0,(c[t>>2]|0)>(c[w>>2]|0)?c[w>>2]|0:c[t>>2]|0)|0;do{if((c[p>>2]|0)!=0){if((c[B>>2]|0)>=0){if((c[B>>2]|0)!=0){break}if((c[t>>2]|0)<=(c[w>>2]|0)){break}}b=n;C=c[b+4>>2]|0;E=c[p>>2]|0;c[E>>2]=c[b>>2];c[E+4>>2]=C;c[p>>2]=0}}while(0);if((c[k>>2]|0)!=0){if((c[B>>2]|0)<0){b=n;C=c[b+4>>2]|0;E=c[k>>2]|0;c[E>>2]=c[b>>2];c[E+4>>2]=C;c[k>>2]=0}}C=n;C=dL(c[C>>2]|0,c[C+4>>2]|0,1,0)|0;E=n;c[E>>2]=C;c[E+4>>2]=D}if((r|0)==17){c[l>>2]=267}else if((r|0)==20){c[l>>2]=7}else if((r|0)==31){if((c[p>>2]|0)!=0){b=n;C=c[b+4>>2]|0;E=c[p>>2]|0;c[E>>2]=c[b>>2];c[E+4>>2]=C}if((c[k>>2]|0)!=0){b=n;C=c[b+4>>2]|0;E=c[k>>2]|0;c[E>>2]=c[b>>2];c[E+4>>2]=C}}oc(c[m>>2]|0);c[q>>2]=c[l>>2];E=c[q>>2]|0;i=o;return E|0}function ak(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;m=d+28|0;l=d;k=d+4|0;j=d+8|0;f=d+12|0;g=d+16|0;h=d+20|0;e=d+24|0;c[m>>2]=a;c[l>>2]=b;c[k>>2]=c[(c[c[m>>2]>>2]|0)+12>>2];c[j>>2]=c[(c[c[l>>2]>>2]|0)+12>>2];c[f>>2]=c[(c[c[m>>2]>>2]|0)+16>>2];c[g>>2]=c[(c[c[l>>2]>>2]|0)+16>>2];c[h>>2]=(c[f>>2]|0)<(c[g>>2]|0)?c[f>>2]|0:c[g>>2]|0;c[e>>2]=XK(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;if((c[e>>2]|0)!=0){m=c[e>>2]|0;i=d;return m|0}c[e>>2]=(c[f>>2]|0)-(c[g>>2]|0);m=c[e>>2]|0;i=d;return m|0}function bk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;k=m+32|0;g=m+28|0;h=m+24|0;l=m+20|0;e=m+16|0;n=m+8|0;o=m+4|0;p=m;j=m+12|0;c[k>>2]=a;c[g>>2]=b;c[h>>2]=d;c[e>>2]=7240;c[n>>2]=7248;c[o>>2]=7256;c[p>>2]=-1;c[j>>2]=15;d=c[k>>2]|0;if((c[g>>2]|0)>6){Xd(d,7272,-1);i=m;return}if((fk(d,3704,c[c[h>>2]>>2]|0,l)|0)!=0){i=m;return}switch(c[g>>2]|0){case 6:{c[j>>2]=Od(c[(c[h>>2]|0)+20>>2]|0)|0;f=6;break};case 3:{f=8;break};case 5:{f=6;break};case 2:{f=9;break};case 4:{f=7;break};default:{}}if((f|0)==6){c[p>>2]=Od(c[(c[h>>2]|0)+16>>2]|0)|0;f=7}if((f|0)==7){c[o>>2]=Jd(c[(c[h>>2]|0)+12>>2]|0)|0;f=8}if((f|0)==8){c[n>>2]=Jd(c[(c[h>>2]|0)+8>>2]|0)|0;f=9}if((f|0)==9){c[e>>2]=Jd(c[(c[h>>2]|0)+4>>2]|0)|0}if((c[o>>2]|0)!=0){if((c[n>>2]|0)!=0){if((c[e>>2]|0)!=0){if(0!=(al(c[k>>2]|0,c[l>>2]|0)|0)){i=m;return}Al(c[k>>2]|0,c[l>>2]|0,c[e>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[j>>2]|0);i=m;return}}}ke(c[k>>2]|0);i=m;return}function ck(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+12|0;h=e+4|0;g=e+8|0;c[f>>2]=a;c[e>>2]=b;c[h>>2]=d;if((fk(c[f>>2]|0,3712,c[c[h>>2]>>2]|0,g)|0)!=0){i=e;return}if(0!=(al(c[f>>2]|0,c[g>>2]|0)|0)){i=e;return}wl(c[f>>2]|0,c[g>>2]|0);i=e;return}function dk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+20|0;k=e+4|0;g=e+8|0;j=e+12|0;h=e+16|0;c[f>>2]=a;c[e>>2]=b;c[k>>2]=d;if((fk(c[f>>2]|0,3736,c[c[k>>2]>>2]|0,h)|0)!=0){i=e;return}c[j>>2]=c[c[h>>2]>>2];c[g>>2]=ul(c[j>>2]|0)|0;d=c[g>>2]|0;if((d|0)==0){ce(c[f>>2]|0,7128,-1,0);i=e;return}else if((d|0)==101){ce(c[f>>2]|0,7144,-1,0);i=e;return}else{he(c[f>>2]|0,c[g>>2]|0);i=e;return}}function ek(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;k=e;j=e+4|0;g=e+8|0;h=e+12|0;c[f>>2]=a;c[k>>2]=b;c[j>>2]=d;if(0!=(fk(c[f>>2]|0,3720,c[c[j>>2]>>2]|0,g)|0)){i=e;return}c[h>>2]=0;if((c[k>>2]|0)>1){c[h>>2]=Jd(c[(c[j>>2]|0)+4>>2]|0)|0}gk(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function fk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+32|0;n=m;h=m+28|0;p=m+4|0;g=m+8|0;l=m+12|0;j=m+16|0;k=m+20|0;o=m+24|0;c[p>>2]=b;c[g>>2]=d;c[l>>2]=e;c[j>>2]=f;if((Sd(c[l>>2]|0)|0)==4){if((Kd(c[l>>2]|0)|0)==4){b=Hd(c[l>>2]|0)|0;a[k+0>>0]=a[b+0>>0]|0;a[k+1>>0]=a[b+1>>0]|0;a[k+2>>0]=a[b+2>>0]|0;a[k+3>>0]=a[b+3>>0]|0;c[c[j>>2]>>2]=c[k>>2];c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}}c[n>>2]=c[g>>2];c[o>>2]=wc(7096,n)|0;Xd(c[p>>2]|0,c[o>>2]|0,-1);oc(c[o>>2]|0);c[h>>2]=1;b=c[h>>2]|0;i=m;return b|0}function gk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+48|0;n=h+32|0;k=h+28|0;o=h+24|0;f=h+20|0;j=h+16|0;q=h+8|0;m=h+4|0;p=h;l=h+12|0;c[n>>2]=b;c[k>>2]=d;c[o>>2]=e;c[f>>2]=c[c[k>>2]>>2];do{if((c[o>>2]|0)!=0){c[q>>2]=0;while(1){if((a[(c[o>>2]|0)+(c[q>>2]|0)>>0]|0)==0){g=7;break}c[p>>2]=0;if((hk(c[f>>2]|0,a[(c[o>>2]|0)+(c[q>>2]|0)>>0]|0,p)|0)!=0){break}c[q>>2]=(c[q>>2]|0)+1}if((g|0)==7){c[m>>2]=c[o>>2];break}Xd(c[n>>2]|0,c[p>>2]|0,-1);oc(c[p>>2]|0);i=h;return}else{c[m>>2]=7016}}while(0);if((c[(c[k>>2]|0)+12>>2]|0)==0){Td(c[n>>2]|0,1784,0,0);i=h;return}c[j>>2]=ik(c[k>>2]|0,c[m>>2]|0)|0;jk(c[f>>2]|0);if((c[j>>2]|0)!=0){he(c[n>>2]|0,c[j>>2]|0);i=h;return}else{c[l>>2]=c[(c[k>>2]|0)+96>>2]<<2;Td(c[n>>2]|0,c[(c[k>>2]|0)+92>>2]|0,c[l>>2]|0,-1);i=h;return}}function hk(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;l=h;g=h+12|0;j=h+4|0;k=h+16|0;m=h+8|0;c[j>>2]=b;a[k>>0]=e;c[m>>2]=f;do{if((a[k>>0]|0)!=112){if((a[k>>0]|0)!=99){if((a[k>>0]|0)==110){if((d[(c[j>>2]|0)+228>>0]|0)!=0){break}}if((a[k>>0]|0)==97){if((d[(c[j>>2]|0)+228>>0]|0)!=0){break}}if((a[k>>0]|0)==108){if((d[(c[j>>2]|0)+230>>0]|0)!=0){break}}if((a[k>>0]|0)!=115){if((a[k>>0]|0)!=120){c[l>>2]=a[k>>0]|0;b=wc(7056,l)|0;c[c[m>>2]>>2]=b;c[g>>2]=1;b=c[g>>2]|0;i=h;return b|0}}}}}while(0);c[g>>2]=0;b=c[g>>2]|0;i=h;return b|0}function ik(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+80|0;l=m+64|0;k=m+60|0;h=m+56|0;f=m;p=m+52|0;o=m+48|0;e=m+40|0;g=m+32|0;j=m+36|0;n=m+44|0;c[k>>2]=b;c[h>>2]=d;c[p>>2]=c[c[k>>2]>>2];c[o>>2]=0;c[e>>2]=0;c[f+0>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;c[f>>2]=c[k>>2];c[f+4>>2]=c[(c[p>>2]|0)+24>>2];if((c[(c[k>>2]|0)+100>>2]|0)!=0){if((YK(c[(c[k>>2]|0)+100>>2]|0,c[h>>2]|0)|0)!=0){oc(c[(c[k>>2]|0)+92>>2]|0);c[(c[k>>2]|0)+100>>2]=0;c[(c[k>>2]|0)+92>>2]=0}}do{if((c[(c[k>>2]|0)+92>>2]|0)==0){c[g>>2]=0;p=kk(c[(c[k>>2]|0)+12>>2]|0)|0;c[(c[k>>2]|0)+20>>2]=p;c[f+8>>2]=c[(c[k>>2]|0)+20>>2];c[n>>2]=0;while(1){if((a[(c[h>>2]|0)+(c[n>>2]|0)>>0]|0)==0){break}p=lk(f,a[(c[h>>2]|0)+(c[n>>2]|0)>>0]|0)|0;c[g>>2]=(c[g>>2]|0)+p;c[n>>2]=(c[n>>2]|0)+1}c[j>>2]=cL(c[h>>2]|0)|0;p=mc((c[g>>2]<<2)+(c[j>>2]|0)+1|0)|0;c[(c[k>>2]|0)+92>>2]=p;if((c[(c[k>>2]|0)+92>>2]|0)!=0){c[(c[k>>2]|0)+100>>2]=(c[(c[k>>2]|0)+92>>2]|0)+(c[g>>2]<<2);c[(c[k>>2]|0)+96>>2]=c[g>>2];fL(c[(c[k>>2]|0)+100>>2]|0,c[h>>2]|0,(c[j>>2]|0)+1|0)|0;aL(c[(c[k>>2]|0)+92>>2]|0,0,c[g>>2]<<2|0)|0;c[(c[k>>2]|0)+88>>2]=1;c[e>>2]=1;break}c[l>>2]=7;p=c[l>>2]|0;i=m;return p|0}}while(0);c[f+24>>2]=c[(c[k>>2]|0)+92>>2];c[f+8>>2]=c[(c[k>>2]|0)+20>>2];if((c[(c[k>>2]|0)+88>>2]|0)!=0){c[o>>2]=mk(c[k>>2]|0,c[e>>2]|0,f,c[h>>2]|0)|0;c[(c[k>>2]|0)+88>>2]=0}c[l>>2]=c[o>>2];p=c[l>>2]|0;i=m;return p|0}function jk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;sf(c[(c[d>>2]|0)+244>>2]|0)|0;c[(c[d>>2]|0)+244>>2]=0;i=b;return}function kk(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=0;rk(c[e>>2]|0,21,b)|0;i=d;return c[b>>2]|0}function lk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+4|0;h=e+8|0;f=e;c[g>>2]=b;a[h>>0]=d;switch(a[h>>0]|0){case 99:case 112:case 110:{c[f>>2]=1;break};case 115:case 108:case 97:{c[f>>2]=c[(c[g>>2]|0)+4>>2];break};default:{c[f>>2]=($(c[(c[g>>2]|0)+4>>2]|0,c[(c[g>>2]|0)+8>>2]|0)|0)*3}}i=e;return c[f>>2]|0}function mk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;g=i;i=i+96|0;p=g+88|0;o=g+84|0;n=g+80|0;s=g+76|0;h=g+72|0;k=g+68|0;m=g+64|0;j=g+60|0;l=g;t=g+16|0;u=g+52|0;v=g+40|0;x=g+36|0;w=g+8|0;q=g+44|0;z=g+56|0;y=g+32|0;A=g+24|0;r=g+48|0;c[p>>2]=b;c[o>>2]=d;c[n>>2]=e;c[s>>2]=f;c[h>>2]=0;c[m>>2]=c[c[p>>2]>>2];c[j>>2]=0;c[k>>2]=0;while(1){if((c[h>>2]|0)!=0){k=30;break}if((a[(c[s>>2]|0)+(c[k>>2]|0)>>0]|0)==0){k=30;break}a:do{switch(a[(c[s>>2]|0)+(c[k>>2]|0)>>0]|0){case 110:{if((c[o>>2]|0)!=0){b=l;c[b>>2]=0;c[b+4>>2]=0;c[h>>2]=nk(c[m>>2]|0,j,l,0)|0;c[c[(c[n>>2]|0)+24>>2]>>2]=c[l>>2]}break};case 112:{if((c[o>>2]|0)!=0){c[c[(c[n>>2]|0)+24>>2]>>2]=c[(c[n>>2]|0)+8>>2]}break};case 97:{if((c[o>>2]|0)!=0){c[h>>2]=nk(c[m>>2]|0,j,t,u)|0;if((c[h>>2]|0)==0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[(c[n>>2]|0)+4>>2]|0)){break a}b=Kj(c[u>>2]|0,w)|0;c[u>>2]=(c[u>>2]|0)+b;b=c[w>>2]|0;d=t;d=lL(c[d>>2]|0,c[d+4>>2]|0,2,0)|0;d=dL(b|0,0,d|0,D|0)|0;b=t;b=lL(d|0,D|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[x>>2]=b;c[(c[(c[n>>2]|0)+24>>2]|0)+(c[v>>2]<<2)>>2]=c[x>>2];c[v>>2]=(c[v>>2]|0)+1}}}break};case 99:{if((c[o>>2]|0)!=0){c[c[(c[n>>2]|0)+24>>2]>>2]=c[(c[n>>2]|0)+4>>2]}break};case 115:{c[h>>2]=pk(c[p>>2]|0,0,0)|0;if((c[h>>2]|0)==0){c[h>>2]=qk(c[p>>2]|0,c[n>>2]|0)|0}break};case 108:{c[q>>2]=0;b=(c[p>>2]|0)+32|0;c[h>>2]=ok(c[m>>2]|0,c[b>>2]|0,c[b+4>>2]|0,q)|0;b:do{if((c[h>>2]|0)==0){c[y>>2]=ye(c[q>>2]|0,0)|0;c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[(c[n>>2]|0)+4>>2]|0)){break b}b=Kj(c[y>>2]|0,A)|0;c[y>>2]=(c[y>>2]|0)+b;c[(c[(c[n>>2]|0)+24>>2]|0)+(c[z>>2]<<2)>>2]=c[A>>2];c[z>>2]=(c[z>>2]|0)+1}}}while(0);Cd(c[q>>2]|0)|0;break};default:{c[r>>2]=c[(c[p>>2]|0)+12>>2];c[h>>2]=pk(c[p>>2]|0,0,0)|0;if((c[h>>2]|0)==0){if((c[o>>2]|0)!=0){if((c[(c[p>>2]|0)+24>>2]|0)!=0){c[h>>2]=nk(c[m>>2]|0,j,(c[n>>2]|0)+16|0,0)|0;if((c[h>>2]|0)!=0){break a}}c[h>>2]=rk(c[r>>2]|0,22,c[n>>2]|0)|0;if((c[h>>2]|0)!=0){break a}}rk(c[r>>2]|0,23,c[n>>2]|0)|0}}}}while(0);d=lk(c[n>>2]|0,a[(c[s>>2]|0)+(c[k>>2]|0)>>0]|0)|0;b=(c[n>>2]|0)+24|0;c[b>>2]=(c[b>>2]|0)+(d<<2);c[k>>2]=(c[k>>2]|0)+1}if((k|0)==30){Cd(c[j>>2]|0)|0;i=g;return c[h>>2]|0}return 0}function nk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;g=m+36|0;p=m+32|0;f=m+28|0;j=m+24|0;l=m+20|0;n=m+12|0;o=m+8|0;k=m;h=m+16|0;c[p>>2]=a;c[f>>2]=b;c[j>>2]=d;c[l>>2]=e;if((c[c[f>>2]>>2]|0)==0){c[h>>2]=sl(c[p>>2]|0,c[f>>2]|0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];a=c[g>>2]|0;i=m;return a|0}}c[n>>2]=c[c[f>>2]>>2];c[o>>2]=ye(c[n>>2]|0,0)|0;a=Kj(c[o>>2]|0,k)|0;c[o>>2]=(c[o>>2]|0)+a;a=k;if((c[a>>2]|0)==0&(c[a+4>>2]|0)==0){c[g>>2]=267;a=c[g>>2]|0;i=m;return a|0}a=c[j>>2]|0;c[a>>2]=c[k>>2];c[a+4>>2]=0;if((c[l>>2]|0)!=0){c[c[l>>2]>>2]=c[o>>2]}c[g>>2]=0;a=c[g>>2]|0;i=m;return a|0}function ok(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;h=f+12|0;j=f;g=f+8|0;c[h>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;c[g>>2]=e;a=j;a=rl(c[h>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[g>>2]|0)|0;i=f;return a|0}function pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;k=f+24|0;j=f;h=f+4|0;e=f+8|0;g=f+12|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g>>2]=c[k>>2];c[e>>2]=rk(c[(c[k>>2]|0)+12>>2]|0,24,g)|0;if((c[j>>2]|0)!=0){c[c[j>>2]>>2]=c[g+4>>2]}if((c[h>>2]|0)==0){k=c[e>>2]|0;i=f;return k|0}c[c[h>>2]>>2]=c[g+8>>2];k=c[e>>2]|0;i=f;return k|0}function qk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;n=i;i=i+64|0;f=n+56|0;k=n+52|0;d=n+48|0;g=n+44|0;h=n+40|0;l=n+36|0;u=n+32|0;t=n+28|0;o=n+20|0;p=n+16|0;m=n+12|0;j=n+8|0;q=n+4|0;r=n;s=n+24|0;c[k>>2]=a;c[d>>2]=b;c[u>>2]=0;c[g>>2]=mc(c[(c[k>>2]|0)+20>>2]<<4)|0;if((c[g>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=n;return a|0}aL(c[g>>2]|0,0,c[(c[k>>2]|0)+20>>2]<<4|0)|0;rk(c[(c[k>>2]|0)+12>>2]|0,25,c[g>>2]|0)|0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[d>>2]|0)+8>>2]|0)){break}c[t>>2]=(c[g>>2]|0)+(c[h>>2]<<4);c[u>>2]=(c[u>>2]|0)-(c[(c[(c[c[t>>2]>>2]|0)+20>>2]|0)+48>>2]|0);c[(c[t>>2]|0)+4>>2]=c[u>>2];c[h>>2]=(c[h>>2]|0)+1}c[l>>2]=0;a:while(1){if((c[l>>2]|0)>=(c[(c[d>>2]|0)+4>>2]|0)){e=33;break}c[o>>2]=0;c[p>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[d>>2]|0)+8>>2]|0)){break}c[j>>2]=(c[g>>2]|0)+(c[h>>2]<<4);c[m>>2]=uk(c[k>>2]|0,c[c[j>>2]>>2]|0,c[l>>2]|0,(c[j>>2]|0)+8|0)|0;if((c[m>>2]|0)!=0){e=11;break a}if((c[(c[j>>2]|0)+8>>2]|0)!=0){c[(c[j>>2]|0)+12>>2]=c[(c[j>>2]|0)+4>>2];pl((c[g>>2]|0)+(c[h>>2]<<4)|0)|0;c[p>>2]=(c[p>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+1}while(1){if((c[p>>2]|0)<=0){break}c[q>>2]=0;c[r>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[d>>2]|0)+8>>2]|0)){break}c[s>>2]=(c[g>>2]|0)+(c[h>>2]<<4);if((c[(c[s>>2]|0)+8>>2]|0)==0){c[r>>2]=0}else{if((c[q>>2]|0)==0){e=22}else{if((c[(c[s>>2]|0)+12>>2]|0)<(c[(c[q>>2]|0)+12>>2]|0)){e=22}}if((e|0)==22){e=0;c[q>>2]=c[s>>2]}if((c[r>>2]|0)==0){e=25}else{if((c[(c[s>>2]|0)+12>>2]|0)==(c[(c[s>>2]|0)+ -16+12>>2]|0)){e=25}else{c[r>>2]=1}}if((e|0)==25){e=0;c[r>>2]=(c[r>>2]|0)+1}if((c[r>>2]|0)>(c[o>>2]|0)){c[o>>2]=c[r>>2]}}c[h>>2]=(c[h>>2]|0)+1}if((pl(c[q>>2]|0)|0)==0){continue}c[p>>2]=(c[p>>2]|0)+ -1}c[(c[(c[d>>2]|0)+24>>2]|0)+(c[l>>2]<<2)>>2]=c[o>>2];c[l>>2]=(c[l>>2]|0)+1}if((e|0)==11){c[f>>2]=c[m>>2];a=c[f>>2]|0;i=n;return a|0}else if((e|0)==33){oc(c[g>>2]|0);c[f>>2]=0;a=c[f>>2]|0;i=n;return a|0}return 0}function rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;g=e;f=e+4|0;h=e+8|0;c[j>>2]=a;c[g>>2]=b;c[f>>2]=d;c[h>>2]=0;a=nl(c[j>>2]|0,h,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function sk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;h=e;j=e+4|0;f=e+8|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[f>>2]=c[j>>2];a=$((c[h>>2]|0)*3|0,c[(c[f>>2]|0)+4>>2]|0)|0;a=Yk(c[c[f>>2]>>2]|0,c[g>>2]|0,(c[(c[f>>2]|0)+24>>2]|0)+(a<<2)|0)|0;i=e;return a|0}function tk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;l=f+28|0;m=f;n=f+4|0;e=f+8|0;j=f+12|0;g=f+16|0;k=f+20|0;h=f+24|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[e>>2]=0;c[j>>2]=c[n>>2];c[g>>2]=($(c[m>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0)*3;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[j>>2]|0)+4>>2]|0)){g=8;break}if((c[e>>2]|0)!=0){g=8;break}c[e>>2]=uk(c[c[j>>2]>>2]|0,c[l>>2]|0,c[k>>2]|0,h)|0;if((c[h>>2]|0)!=0){n=vk(h)|0;c[(c[(c[j>>2]|0)+24>>2]|0)+((c[g>>2]|0)+((c[k>>2]|0)*3|0)<<2)>>2]=n}else{c[(c[(c[j>>2]|0)+24>>2]|0)+((c[g>>2]|0)+((c[k>>2]|0)*3|0)<<2)>>2]=0}c[k>>2]=(c[k>>2]|0)+1}if((g|0)==8){i=f;return c[e>>2]|0}return 0}function uk(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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,E=0,F=0;m=i;i=i+96|0;k=m+76|0;r=m+56|0;w=m+72|0;n=m+68|0;h=m+64|0;p=m+60|0;E=m+52|0;j=m+48|0;l=m+44|0;o=m;s=m+16|0;x=m+8|0;B=m+12|0;t=m+81|0;u=m+80|0;C=m+20|0;A=m+24|0;F=m+28|0;z=m+32|0;v=m+36|0;q=m+40|0;c[r>>2]=b;c[w>>2]=e;c[n>>2]=f;c[h>>2]=g;c[p>>2]=c[(c[w>>2]|0)+20>>2];c[E>>2]=c[c[r>>2]>>2];c[c[h>>2]>>2]=0;if((c[(c[p>>2]|0)+52>>2]|0)<(c[(c[E>>2]|0)+24>>2]|0)){if((c[(c[p>>2]|0)+52>>2]|0)!=(c[n>>2]|0)){c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}}f=(c[w>>2]|0)+24|0;b=c[f+4>>2]|0;e=o;c[e>>2]=c[f>>2];c[e+4>>2]=b;c[j>>2]=c[(c[p>>2]|0)+28>>2];e=o;b=(c[r>>2]|0)+32|0;if((c[e>>2]|0)!=(c[b>>2]|0)?1:(c[e+4>>2]|0)!=(c[b+4>>2]|0)){y=6}else{if((d[(c[w>>2]|0)+32>>0]|0)!=0){y=6}}do{if((y|0)==6){c[s>>2]=d[(c[E>>2]|0)+231>>0]|0;c[B>>2]=0;a[t>>0]=0;a[u>>0]=0;c[A>>2]=c[w>>2];c[C>>2]=c[(c[w>>2]|0)+8>>2];while(1){if((c[C>>2]|0)==0){break}if((c[c[C>>2]>>2]|0)==4){c[B>>2]=1}if((c[c[C>>2]>>2]|0)==1){c[A>>2]=c[C>>2]}if((a[(c[C>>2]|0)+32>>0]|0)!=0){a[u>>0]=1}c[C>>2]=c[(c[C>>2]|0)+8>>2]}if((c[B>>2]|0)==0){c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}if((c[(c[p>>2]|0)+40>>2]|0)!=0){c[F>>2]=0;c[z>>2]=d[(c[w>>2]|0)+32>>0]|0;wk(c[r>>2]|0,c[w>>2]|0,F);while(1){if((c[F>>2]|0)!=0){break}if(!((a[(c[w>>2]|0)+32>>0]|0)!=0^1)){break}xk(c[r>>2]|0,c[w>>2]|0,F);if((c[z>>2]|0)!=0){continue}e=(c[w>>2]|0)+24|0;b=o;if((c[e>>2]|0)==(c[b>>2]|0)?(c[e+4>>2]|0)==(c[b+4>>2]|0):0){break}}c[j>>2]=c[(c[p>>2]|0)+28>>2];if((c[F>>2]|0)!=0){c[k>>2]=c[F>>2];b=c[k>>2]|0;i=m;return b|0}}c[x>>2]=(d[(c[r>>2]|0)+52>>0]|0)==(c[s>>2]|0)?1:-1;while(1){if((d[u>>0]|0)!=1){break}if((d[(c[A>>2]|0)+32>>0]|0)!=0){break}b=(c[s>>2]|0)!=0?-1:1;f=(c[A>>2]|0)+24|0;e=(c[r>>2]|0)+32|0;e=$K(c[f>>2]|0,c[f+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;e=nL(b|0,((b|0)<0)<<31>>31|0,e|0,D|0)|0;b=c[x>>2]|0;nL(e|0,D|0,b|0,((b|0)<0)<<31>>31|0)|0;if((D|0)>=0){break}c[v>>2]=0;xk(c[r>>2]|0,c[w>>2]|0,v);if((c[v>>2]|0)!=0){y=30;break}f=(c[w>>2]|0)+24|0;e=c[f+4>>2]|0;b=o;c[b>>2]=c[f>>2];c[b+4>>2]=e;c[j>>2]=c[(c[p>>2]|0)+28>>2]}if((y|0)==30){c[k>>2]=c[v>>2];b=c[k>>2]|0;i=m;return b|0}a[t>>0]=(c[(c[p>>2]|0)+4>>2]|0)==0;a:do{if((d[t>>0]|0)==0){u=(a[(c[A>>2]|0)+32>>0]|0)!=0;if((d[(c[r>>2]|0)+52>>0]|0)==(c[s>>2]|0)){if(u){c[j>>2]=(c[c[p>>2]>>2]|0)+((c[(c[p>>2]|0)+4>>2]|0)-1);Rj(c[c[p>>2]>>2]|0,j)}while(1){if((c[j>>2]|0)!=0){e=(c[s>>2]|0)!=0?-1:1;f=o;b=(c[r>>2]|0)+32|0;b=$K(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=nL(e|0,((e|0)<0)<<31>>31|0,b|0,D|0)|0;e=D;if(!((e|0)>0|(e|0)==0&b>>>0>0)){break a}}if((d[t>>0]|0)!=0){break a}Mj(c[s>>2]|0,c[c[p>>2]>>2]|0,c[(c[p>>2]|0)+4>>2]|0,j,o,q,t)}}else{if(u){c[j>>2]=0;b=o;c[b>>2]=0;c[b+4>>2]=0}while(1){if((c[j>>2]|0)!=0){e=(c[s>>2]|0)!=0?-1:1;f=o;b=(c[r>>2]|0)+32|0;b=$K(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;nL(e|0,((e|0)<0)<<31>>31|0,b|0,D|0)|0;if((D|0)>=0){break a}}if((d[t>>0]|0)!=0){break a}yk(c[s>>2]|0,c[c[p>>2]>>2]|0,c[(c[p>>2]|0)+4>>2]|0,j,o,t)}}}}while(0);if((d[t>>0]|0)==0){e=o;b=(c[r>>2]|0)+32|0;if(!((c[e>>2]|0)!=(c[b>>2]|0)?1:(c[e+4>>2]|0)!=(c[b+4>>2]|0))){break}}c[j>>2]=0}}while(0);if((c[j>>2]|0)==0){c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}if((a[c[j>>2]>>0]|0)==1){c[j>>2]=(c[j>>2]|0)+1;o=c[j>>2]|0;if((a[c[j>>2]>>0]&128|0)!=0){o=Lj(o,l)|0}else{c[l>>2]=d[o>>0]|0;o=1}c[j>>2]=(c[j>>2]|0)+o}else{c[l>>2]=0}while(1){if((c[l>>2]|0)>=(c[n>>2]|0)){y=64;break}Jj(0,j);if((a[c[j>>2]>>0]|0)==0){y=59;break}c[j>>2]=(c[j>>2]|0)+1;o=c[j>>2]|0;if((a[c[j>>2]>>0]&128|0)!=0){o=Lj(o,l)|0}else{c[l>>2]=d[o>>0]|0;o=1}c[j>>2]=(c[j>>2]|0)+o}if((y|0)==59){c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}else if((y|0)==64){c[c[h>>2]>>2]=(c[n>>2]|0)==(c[l>>2]|0)?c[j>>2]|0:0;c[k>>2]=0;b=c[k>>2]|0;i=m;return b|0}return 0}function vk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;d=e+8|0;g=e;h=e+12|0;f=e+4|0;c[d>>2]=b;c[g>>2]=c[c[d>>2]>>2];a[h>>0]=0;c[f>>2]=0;while(1){b=c[g>>2]|0;if((254&(a[c[g>>2]>>0]|a[h>>0])|0)==0){break}c[g>>2]=b+1;a[h>>0]=a[b>>0]&128;if((a[h>>0]|0)!=0){continue}c[f>>2]=(c[f>>2]|0)+1}c[c[d>>2]>>2]=b;i=e;return c[f>>2]|0}function wk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;h=f+20|0;g=f;j=f+4|0;k=f+8|0;l=f+12|0;m=f+16|0;c[h>>2]=b;c[g>>2]=d;c[j>>2]=e;if((c[g>>2]|0)==0){i=f;return}if((c[c[j>>2]>>2]|0)!=0){i=f;return}c[k>>2]=c[(c[g>>2]|0)+20>>2];if((c[k>>2]|0)!=0){zk(c[k>>2]|0);if((c[(c[k>>2]|0)+40>>2]|0)!=0){c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[k>>2]|0)+48>>2]|0)){break}c[m>>2]=(c[k>>2]|0)+56+((c[l>>2]|0)*24|0);if((c[(c[m>>2]|0)+20>>2]|0)!=0){Ik(c[(c[m>>2]|0)+20>>2]|0)|0}c[l>>2]=(c[l>>2]|0)+1}b=Jk(c[h>>2]|0,0,c[k>>2]|0)|0;c[c[j>>2]>>2]=b}c[(c[k>>2]|0)+8>>2]=0;b=(c[k>>2]|0)+16|0;c[b>>2]=0;c[b+4>>2]=0}b=(c[g>>2]|0)+24|0;c[b>>2]=0;c[b+4>>2]=0;a[(c[g>>2]|0)+32>>0]=0;a[(c[g>>2]|0)+33>>0]=0;wk(c[h>>2]|0,c[(c[g>>2]|0)+12>>2]|0,c[j>>2]|0);wk(c[h>>2]|0,c[(c[g>>2]|0)+16>>2]|0,c[j>>2]|0);i=f;return}function xk(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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;g=i;i=i+64|0;m=g+56|0;h=g+52|0;k=g+48|0;j=g+44|0;q=g+40|0;p=g+36|0;n=g+8|0;l=g+24|0;o=g+20|0;r=g;t=g+16|0;u=g+28|0;v=g+32|0;c[m>>2]=b;c[h>>2]=e;c[k>>2]=f;if((c[c[k>>2]>>2]|0)!=0){i=g;return}c[j>>2]=d[(c[m>>2]|0)+52>>0]|0;a[(c[h>>2]|0)+33>>0]=1;f=c[c[h>>2]>>2]|0;if((f|0)==4){c[l>>2]=c[(c[h>>2]|0)+12>>2];c[o>>2]=c[(c[h>>2]|0)+16>>2];b=(c[j>>2]|0)!=0?-1:1;f=(c[l>>2]|0)+24|0;e=(c[o>>2]|0)+24|0;e=$K(c[f>>2]|0,c[f+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;e=nL(b|0,((b|0)<0)<<31>>31|0,e|0,D|0)|0;b=r;c[b>>2]=e;c[b+4>>2]=D;a:do{if((d[(c[o>>2]|0)+32>>0]|0)!=0){s=21}else{if((d[(c[l>>2]|0)+32>>0]|0)==0){if((c[r+4>>2]|0)<0){s=21;break}}do{if((d[(c[l>>2]|0)+32>>0]|0)==0){if((d[(c[o>>2]|0)+32>>0]|0)==0){b=r;e=c[b+4>>2]|0;if((e|0)>0|(e|0)==0&(c[b>>2]|0)>>>0>0){break}}xk(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0);xk(c[m>>2]|0,c[o>>2]|0,c[k>>2]|0);break a}}while(0);xk(c[m>>2]|0,c[o>>2]|0,c[k>>2]|0)}}while(0);if((s|0)==21){xk(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0)}if((d[(c[l>>2]|0)+32>>0]|0)!=0){k=(d[(c[o>>2]|0)+32>>0]|0)!=0}else{k=0}a[(c[h>>2]|0)+32>>0]=k&1;b=(c[j>>2]|0)!=0?-1:1;f=(c[l>>2]|0)+24|0;e=(c[o>>2]|0)+24|0;e=$K(c[f>>2]|0,c[f+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;e=nL(b|0,((b|0)<0)<<31>>31|0,e|0,D|0)|0;b=r;c[b>>2]=e;c[b+4>>2]=D;do{if((d[(c[o>>2]|0)+32>>0]|0)==0){if((d[(c[l>>2]|0)+32>>0]|0)==0){if((c[r+4>>2]|0)<0){break}}f=(c[o>>2]|0)+24|0;e=c[f+4>>2]|0;b=(c[h>>2]|0)+24|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;i=g;return}}while(0);f=(c[l>>2]|0)+24|0;e=c[f+4>>2]|0;b=(c[h>>2]|0)+24|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;i=g;return}else if((f|0)==3|(f|0)==1){c[q>>2]=c[(c[h>>2]|0)+12>>2];c[p>>2]=c[(c[h>>2]|0)+16>>2];if((a[(c[q>>2]|0)+34>>0]|0)!=0){xk(c[m>>2]|0,c[p>>2]|0,c[k>>2]|0);f=(c[p>>2]|0)+24|0;e=c[f+4>>2]|0;b=(c[h>>2]|0)+24|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;a[(c[h>>2]|0)+32>>0]=a[(c[p>>2]|0)+32>>0]|0;i=g;return}b=(a[(c[p>>2]|0)+34>>0]|0)!=0;xk(c[m>>2]|0,c[q>>2]|0,c[k>>2]|0);if(b){f=(c[q>>2]|0)+24|0;e=c[f+4>>2]|0;b=(c[h>>2]|0)+24|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;a[(c[h>>2]|0)+32>>0]=a[(c[q>>2]|0)+32>>0]|0;i=g;return}xk(c[m>>2]|0,c[p>>2]|0,c[k>>2]|0);while(1){if((a[(c[q>>2]|0)+32>>0]|0)!=0){break}if((a[(c[p>>2]|0)+32>>0]|0)!=0){break}if((c[c[k>>2]>>2]|0)!=0){break}b=(c[j>>2]|0)!=0?-1:1;f=(c[q>>2]|0)+24|0;e=(c[p>>2]|0)+24|0;e=$K(c[f>>2]|0,c[f+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;e=nL(b|0,((b|0)<0)<<31>>31|0,e|0,D|0)|0;b=n;c[b>>2]=e;c[b+4>>2]=D;b=n;if((c[b>>2]|0)==0&(c[b+4>>2]|0)==0){break}l=c[m>>2]|0;if((c[n+4>>2]|0)<0){xk(l,c[q>>2]|0,c[k>>2]|0);continue}else{xk(l,c[p>>2]|0,c[k>>2]|0);continue}}f=(c[q>>2]|0)+24|0;e=c[f+4>>2]|0;b=(c[h>>2]|0)+24|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;if((d[(c[q>>2]|0)+32>>0]|0)!=0){j=1}else{j=(d[(c[p>>2]|0)+32>>0]|0)!=0}a[(c[h>>2]|0)+32>>0]=j&1;i=g;return}else if((f|0)==2){c[t>>2]=c[(c[h>>2]|0)+12>>2];c[u>>2]=c[(c[h>>2]|0)+16>>2];if((d[(c[u>>2]|0)+33>>0]|0)==0){xk(c[m>>2]|0,c[u>>2]|0,c[k>>2]|0)}xk(c[m>>2]|0,c[t>>2]|0,c[k>>2]|0);b:do{if((d[(c[t>>2]|0)+32>>0]|0)==0){while(1){if((c[c[k>>2]>>2]|0)!=0){break b}if((a[(c[u>>2]|0)+32>>0]|0)!=0){break b}e=(c[j>>2]|0)!=0?-1:1;f=(c[t>>2]|0)+24|0;b=(c[u>>2]|0)+24|0;b=$K(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=nL(e|0,((e|0)<0)<<31>>31|0,b|0,D|0)|0;e=D;if(!((e|0)>0|(e|0)==0&b>>>0>0)){break b}xk(c[m>>2]|0,c[u>>2]|0,c[k>>2]|0)}}}while(0);f=(c[t>>2]|0)+24|0;e=c[f+4>>2]|0;b=(c[h>>2]|0)+24|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;a[(c[h>>2]|0)+32>>0]=a[(c[t>>2]|0)+32>>0]|0;i=g;return}else{c[v>>2]=c[(c[h>>2]|0)+20>>2];zk(c[v>>2]|0);f=Ak(c[m>>2]|0,c[v>>2]|0,(c[h>>2]|0)+32|0)|0;c[c[k>>2]>>2]=f;f=(c[v>>2]|0)+16|0;e=c[f+4>>2]|0;b=(c[h>>2]|0)+24|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;i=g;return}}function yk(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=i;i=i+48|0;q=p+32|0;n=p+28|0;r=p+8|0;k=p+12|0;m=p+16|0;o=p+20|0;l=p+24|0;j=p;c[q>>2]=b;c[n>>2]=d;c[r>>2]=e;c[k>>2]=f;c[m>>2]=g;c[o>>2]=h;c[l>>2]=c[c[k>>2]>>2];if((c[l>>2]|0)==0){c[l>>2]=c[n>>2];d=Kj(c[l>>2]|0,c[m>>2]|0)|0;c[l>>2]=(c[l>>2]|0)+d;d=c[l>>2]|0;b=c[k>>2]|0;c[b>>2]=d;i=p;return}Pj(0,l);if((c[l>>2]|0)>>>0>=((c[n>>2]|0)+(c[r>>2]|0)|0)>>>0){a[c[o>>2]>>0]=1;d=c[l>>2]|0;b=c[k>>2]|0;c[b>>2]=d;i=p;return}else{d=Kj(c[l>>2]|0,j)|0;c[l>>2]=(c[l>>2]|0)+d;d=(c[q>>2]|0)!=0?-1:1;b=j;b=nL(d|0,((d|0)<0)<<31>>31|0,c[b>>2]|0,c[b+4>>2]|0)|0;d=c[m>>2]|0;e=d;b=dL(c[e>>2]|0,c[e+4>>2]|0,b|0,D|0)|0;c[d>>2]=b;c[d+4>>2]=D;d=c[l>>2]|0;b=c[k>>2]|0;c[b>>2]=d;i=p;return}}function zk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[d>>2]|0)+24>>2]|0)!=0){oc(c[(c[d>>2]|0)+28>>2]|0)}c[(c[d>>2]|0)+28>>2]=0;c[(c[d>>2]|0)+32>>2]=0;c[(c[d>>2]|0)+24>>2]=0;i=b;return}function Ak(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;m=f+20|0;j=f;h=f+4|0;g=f+8|0;k=f+12|0;l=f+16|0;c[m>>2]=a;c[j>>2]=b;c[h>>2]=e;c[g>>2]=0;c[k>>2]=c[j>>2];c[l>>2]=c[c[m>>2]>>2];e=c[m>>2]|0;if((c[(c[j>>2]|0)+40>>2]|0)!=0){c[g>>2]=Bk(e,c[j>>2]|0,c[h>>2]|0)|0;m=c[g>>2]|0;i=f;return m|0}if((d[e+52>>0]|0|0)!=(d[(c[l>>2]|0)+231>>0]|0|0)){if((c[(c[k>>2]|0)+4>>2]|0)!=0){Mj(d[(c[l>>2]|0)+231>>0]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0,(c[k>>2]|0)+8|0,(c[k>>2]|0)+16|0,(c[k>>2]|0)+32|0,c[h>>2]|0);c[(c[k>>2]|0)+28>>2]=c[(c[k>>2]|0)+8>>2];m=c[g>>2]|0;i=f;return m|0}}Ck(c[l>>2]|0,c[k>>2]|0,c[h>>2]|0);m=c[g>>2]|0;i=f;return m|0}function Bk(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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,E=0;m=i;i=i+192|0;l=m+172|0;E=m+168|0;o=m+164|0;j=m+160|0;k=m+156|0;p=m+152|0;n=m+148|0;v=m+176|0;u=m+144|0;t=m;q=m+112|0;r=m+96|0;s=m+104|0;g=m+108|0;w=m+116|0;x=m+120|0;y=m+124|0;z=m+128|0;A=m+132|0;B=m+136|0;C=m+140|0;c[E>>2]=b;c[o>>2]=e;c[j>>2]=f;c[k>>2]=0;c[p>>2]=c[o>>2];c[n>>2]=c[c[E>>2]>>2];a[v>>0]=0;if((c[(c[o>>2]|0)+48>>2]|0)==1){if((c[(c[o>>2]|0)+40>>2]|0)!=0){c[k>>2]=Dk(c[n>>2]|0,c[(c[o>>2]|0)+76>>2]|0,(c[p>>2]|0)+16|0,(c[p>>2]|0)+28|0,(c[p>>2]|0)+32|0)|0;if((c[(c[p>>2]|0)+28>>2]|0)==0){a[v>>0]=1}}else{h=5}}else{h=5}a:do{if((h|0)==5){c[u>>2]=d[(c[E>>2]|0)+52>>0]|0;f=t+0|0;E=f+96|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(E|0));while(1){if((d[v>>0]|0|0)!=0){break a}c[q>>2]=0;b=r;c[b>>2]=0;c[b+4>>2]=0;c[s>>2]=0;while(1){if((c[k>>2]|0)!=0){break}if((c[s>>2]|0)>=(c[(c[o>>2]|0)+48>>2]|0)){break}if((d[v>>0]|0|0)!=0){break}c[k>>2]=Ek(c[n>>2]|0,c[o>>2]|0,c[s>>2]|0,t+((c[s>>2]|0)*24|0)|0,v)|0;do{if((c[t+((c[s>>2]|0)*24|0)>>2]|0)==0){if((c[q>>2]|0)!=0){e=(c[u>>2]|0)!=0?-1:1;f=r;b=t+((c[s>>2]|0)*24|0)+8|0;b=$K(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;nL(e|0,((e|0)<0)<<31>>31|0,b|0,D|0)|0;if((D|0)>=0){break}}f=t+((c[s>>2]|0)*24|0)+8|0;e=c[f+4>>2]|0;b=r;c[b>>2]=c[f>>2];c[b+4>>2]=e;c[q>>2]=1}}while(0);c[s>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[(c[o>>2]|0)+48>>2]|0)){break}while(1){if((c[k>>2]|0)!=0){break}if((d[v>>0]|0|0)!=0){break}if((c[t+((c[s>>2]|0)*24|0)>>2]|0)!=0){break}e=(c[u>>2]|0)!=0?-1:1;f=t+((c[s>>2]|0)*24|0)+8|0;b=r;b=$K(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;nL(e|0,((e|0)<0)<<31>>31|0,b|0,D|0)|0;if((D|0)>=0){break}c[k>>2]=Ek(c[n>>2]|0,c[o>>2]|0,c[s>>2]|0,t+((c[s>>2]|0)*24|0)|0,v)|0;e=(c[u>>2]|0)!=0?-1:1;f=t+((c[s>>2]|0)*24|0)+8|0;b=r;b=$K(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=nL(e|0,((e|0)<0)<<31>>31|0,b|0,D|0)|0;e=D;if(!((e|0)>0|(e|0)==0&b>>>0>0)){continue}f=t+((c[s>>2]|0)*24|0)+8|0;e=c[f+4>>2]|0;b=r;c[b>>2]=c[f>>2];c[b+4>>2]=e;c[s>>2]=0}c[s>>2]=(c[s>>2]|0)+1}if((d[v>>0]|0|0)!=0){continue}c[g>>2]=0;c[w>>2]=c[t+(((c[(c[o>>2]|0)+48>>2]|0)-1|0)*24|0)+20>>2];c[x>>2]=mc((c[w>>2]|0)+1|0)|0;if((c[x>>2]|0)==0){break}fL(c[x>>2]|0,c[t+(((c[(c[o>>2]|0)+48>>2]|0)-1|0)*24|0)+16>>2]|0,(c[w>>2]|0)+1|0)|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=((c[(c[o>>2]|0)+48>>2]|0)-1|0)){break}if((c[t+((c[s>>2]|0)*24|0)>>2]|0)==0){c[y>>2]=c[t+((c[s>>2]|0)*24|0)+16>>2];c[z>>2]=c[x>>2];c[A>>2]=c[x>>2];c[B>>2]=(c[(c[o>>2]|0)+48>>2]|0)-1-(c[s>>2]|0);c[C>>2]=Fk(A,c[B>>2]|0,0,1,y,z)|0;if((c[C>>2]|0)==0){break}c[g>>2]=(c[A>>2]|0)-(c[x>>2]|0)}c[s>>2]=(c[s>>2]|0)+1}if((c[s>>2]|0)==((c[(c[o>>2]|0)+48>>2]|0)-1|0)){h=35;break}oc(c[x>>2]|0)}if((h|0)==35){f=r;e=c[f+4>>2]|0;b=(c[p>>2]|0)+16|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;c[(c[p>>2]|0)+28>>2]=c[x>>2];c[(c[p>>2]|0)+32>>2]=c[g>>2];c[(c[p>>2]|0)+24>>2]=1;break}c[l>>2]=7;b=c[l>>2]|0;i=m;return b|0}}while(0);a[c[j>>2]>>0]=a[v>>0]|0;c[l>>2]=c[k>>2];b=c[l>>2]|0;i=m;return b|0}function Ck(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;m=g+24|0;k=g+20|0;l=g+8|0;h=g+12|0;j=g+16|0;n=g;c[m>>2]=b;c[k>>2]=e;c[l>>2]=f;c[j>>2]=(c[c[k>>2]>>2]|0)+(c[(c[k>>2]|0)+4>>2]|0);f=c[k>>2]|0;if((c[(c[k>>2]|0)+8>>2]|0)!=0){c[h>>2]=c[f+8>>2]}else{c[h>>2]=c[f>>2]}if((c[h>>2]|0)>>>0>=(c[j>>2]|0)>>>0){a[c[l>>2]>>0]=1;i=g;return}b=Kj(c[h>>2]|0,n)|0;c[h>>2]=(c[h>>2]|0)+b;if((d[(c[m>>2]|0)+231>>0]|0)==0){o=8}else{if((c[(c[k>>2]|0)+8>>2]|0)==0){o=8}else{e=n;b=(c[k>>2]|0)+16|0;f=b;e=$K(c[f>>2]|0,c[f+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;c[b>>2]=e;c[b+4>>2]=D}}if((o|0)==8){e=n;b=(c[k>>2]|0)+16|0;f=b;e=dL(c[f>>2]|0,c[f+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;c[b>>2]=e;c[b+4>>2]=D}c[(c[k>>2]|0)+28>>2]=c[h>>2];Pj(0,h);c[(c[k>>2]|0)+32>>2]=(c[h>>2]|0)-(c[(c[k>>2]|0)+28>>2]|0);while(1){if((c[h>>2]|0)>>>0<(c[j>>2]|0)>>>0){n=(a[c[h>>2]>>0]|0)==0}else{n=0}m=c[h>>2]|0;if(!n){break}c[h>>2]=m+1}c[(c[k>>2]|0)+8>>2]=m;a[c[l>>2]>>0]=0;i=g;return}function Dk(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=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;n=i;i=i+64|0;h=n+60|0;u=n+56|0;t=n+52|0;p=n+48|0;j=n+44|0;q=n+40|0;x=n+36|0;w=n+32|0;r=n+24|0;v=n+20|0;k=n+16|0;l=n+12|0;m=n+8|0;s=n+28|0;o=n;c[u>>2]=a;c[t>>2]=b;c[p>>2]=e;c[j>>2]=f;c[q>>2]=g;c[x>>2]=c[(c[t>>2]|0)+8>>2];c[w>>2]=c[c[t>>2]>>2];c[r>>2]=(d[(c[u>>2]|0)+231>>0]|0|0)!=0?49:50;if((c[x>>2]|0)==0){c[c[j>>2]>>2]=0;c[h>>2]=0;a=c[h>>2]|0;i=n;return a|0}while(1){c[v>>2]=c[c[c[t>>2]>>2]>>2];if((c[(c[v>>2]|0)+80>>2]|0)==0){r=4;break}e=(c[c[w>>2]>>2]|0)+88|0;b=c[e+4>>2]|0;a=o;c[a>>2]=c[e>>2];c[a+4>>2]=b;c[k>>2]=Gj(c[u>>2]|0,c[c[w>>2]>>2]|0,l,m)|0;c[s>>2]=1;while(1){if((c[k>>2]|0)!=0){break}if((c[s>>2]|0)>=(c[x>>2]|0)){break}if((c[(c[(c[w>>2]|0)+(c[s>>2]<<2)>>2]|0)+80>>2]|0)==0){break}b=(c[(c[w>>2]|0)+(c[s>>2]<<2)>>2]|0)+88|0;a=o;if(!((c[b>>2]|0)==(c[a>>2]|0)?(c[b+4>>2]|0)==(c[a+4>>2]|0):0)){break}c[k>>2]=Gj(c[u>>2]|0,c[(c[w>>2]|0)+(c[s>>2]<<2)>>2]|0,0,0)|0;c[s>>2]=(c[s>>2]|0)+1}if((c[k>>2]|0)!=0){r=12;break}Cj(c[c[t>>2]>>2]|0,c[x>>2]|0,c[s>>2]|0,c[r>>2]|0);if((c[m>>2]|0)>0){if((c[(c[c[w>>2]>>2]|0)+56>>2]|0)!=0){c[k>>2]=Ej(c[t>>2]|0,c[l>>2]|0,(c[m>>2]|0)+1|0)|0;if((c[k>>2]|0)!=0){r=16;break}c[l>>2]=c[(c[t>>2]|0)+16>>2]}}if((c[(c[t>>2]|0)+24>>2]|0)>=0){Hj(c[(c[t>>2]|0)+24>>2]|0,1,l,m)}if((c[m>>2]|0)>0){r=21;break}}if((r|0)==4){c[c[j>>2]>>2]=0}else if((r|0)==12){c[h>>2]=c[k>>2];a=c[h>>2]|0;i=n;return a|0}else if((r|0)==16){c[h>>2]=c[k>>2];a=c[h>>2]|0;i=n;return a|0}else if((r|0)==21){c[c[j>>2]>>2]=c[l>>2];e=o;b=c[e+4>>2]|0;a=c[p>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=b;c[c[q>>2]>>2]=c[m>>2]}c[h>>2]=0;a=c[h>>2]|0;i=n;return a|0}function Ek(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+32|0;h=n+24|0;l=n;p=n+4|0;k=n+8|0;m=n+12|0;j=n+16|0;o=n+20|0;c[h>>2]=b;c[l>>2]=d;c[p>>2]=e;c[k>>2]=f;c[m>>2]=g;c[j>>2]=0;if((c[(c[l>>2]|0)+44>>2]|0)==(c[p>>2]|0)){Ck(c[h>>2]|0,c[l>>2]|0,c[m>>2]|0);c[(c[k>>2]|0)+16>>2]=c[(c[l>>2]|0)+28>>2];c[(c[k>>2]|0)+20>>2]=c[(c[l>>2]|0)+32>>2];e=(c[l>>2]|0)+16|0;d=c[e+4>>2]|0;b=(c[k>>2]|0)+8|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;b=c[j>>2]|0;i=n;return b|0}c[o>>2]=(c[l>>2]|0)+56+((c[p>>2]|0)*24|0);if((c[(c[o>>2]|0)+20>>2]|0)==0){c[c[k>>2]>>2]=1;b=c[j>>2]|0;i=n;return b|0}c[j>>2]=Dk(c[h>>2]|0,c[(c[o>>2]|0)+20>>2]|0,(c[k>>2]|0)+8|0,(c[k>>2]|0)+16|0,(c[k>>2]|0)+20|0)|0;if((c[(c[k>>2]|0)+16>>2]|0)!=0){b=c[j>>2]|0;i=n;return b|0}a[c[m>>2]>>0]=1;b=c[j>>2]|0;i=n;return b|0}function Fk(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;B=i;i=i+96|0;A=B+80|0;p=B+76|0;x=B+72|0;z=B+68|0;y=B+64|0;n=B+60|0;o=B+56|0;q=B+52|0;m=B+48|0;C=B+40|0;r=B+36|0;s=B+32|0;t=B+44|0;u=B+16|0;v=B+8|0;w=B;k=B+24|0;c[p>>2]=b;c[x>>2]=e;c[z>>2]=f;c[y>>2]=g;c[n>>2]=h;c[o>>2]=j;c[q>>2]=c[c[p>>2]>>2];c[m>>2]=c[c[n>>2]>>2];c[C>>2]=c[c[o>>2]>>2];c[r>>2]=0;c[s>>2]=0;if((a[c[m>>2]>>0]|0)==1){c[m>>2]=(c[m>>2]|0)+1;j=c[m>>2]|0;if((a[c[m>>2]>>0]&128|0)!=0){j=Lj(j,r)|0}else{c[r>>2]=d[j>>0]|0;j=1}c[m>>2]=(c[m>>2]|0)+j}if((a[c[C>>2]>>0]|0)==1){c[C>>2]=(c[C>>2]|0)+1;j=c[C>>2]|0;if((a[c[C>>2]>>0]&128|0)!=0){j=Lj(j,s)|0}else{c[s>>2]=d[j>>0]|0;j=1}c[C>>2]=(c[C>>2]|0)+j}while(1){if((c[r>>2]|0)!=(c[s>>2]|0)){if((c[r>>2]|0)<(c[s>>2]|0)){Jj(0,m);if(0==(a[c[m>>2]>>0]|0)){break}c[m>>2]=(c[m>>2]|0)+1;j=c[m>>2]|0;if((a[c[m>>2]>>0]&128|0)!=0){j=Lj(j,r)|0}else{c[r>>2]=d[j>>0]|0;j=1}c[m>>2]=(c[m>>2]|0)+j;continue}else{Jj(0,C);if(0==(a[c[C>>2]>>0]|0)){break}c[C>>2]=(c[C>>2]|0)+1;j=c[C>>2]|0;if((a[c[C>>2]>>0]&128|0)!=0){j=Lj(j,s)|0}else{c[s>>2]=d[j>>0]|0;j=1}c[C>>2]=(c[C>>2]|0)+j;continue}}c[t>>2]=c[q>>2];h=u;c[h>>2]=0;c[h+4>>2]=0;h=v;c[h>>2]=0;c[h+4>>2]=0;h=w;c[h>>2]=0;c[h+4>>2]=0;if((c[r>>2]|0)!=0){h=c[q>>2]|0;c[q>>2]=h+1;a[h>>0]=1;h=c[r>>2]|0;h=uj(c[q>>2]|0,h,((h|0)<0)<<31>>31)|0;c[q>>2]=(c[q>>2]|0)+h}Gk(m,v);h=v;h=$K(c[h>>2]|0,c[h+4>>2]|0,2,0)|0;b=v;c[b>>2]=h;c[b+4>>2]=D;Gk(C,w);b=w;b=$K(c[b>>2]|0,c[b+4>>2]|0,2,0)|0;h=w;c[h>>2]=b;c[h+4>>2]=D;while(1){h=w;e=c[h>>2]|0;h=c[h+4>>2]|0;f=v;b=c[x>>2]|0;b=dL(c[f>>2]|0,c[f+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;if((e|0)==(b|0)&(h|0)==(D|0)){l=19}else{if((c[y>>2]|0)==0){b=w;f=c[b+4>>2]|0;h=v;e=c[h+4>>2]|0;if((f|0)>(e|0)|((f|0)==(e|0)?(c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0:0)){f=w;b=c[f>>2]|0;f=c[f+4>>2]|0;e=v;h=c[x>>2]|0;h=dL(c[e>>2]|0,c[e+4>>2]|0,h|0,((h|0)<0)<<31>>31|0)|0;e=D;if((f|0)<(e|0)|(f|0)==(e|0)&b>>>0<=h>>>0){l=19}}}}if((l|0)==19){l=0;g=(c[z>>2]|0)!=0;f=v;e=w;h=g?c[f+4>>2]|0:c[e+4>>2]|0;b=k;c[b>>2]=g?c[f>>2]|0:c[e>>2]|0;c[b+4>>2]=h;b=k;b=dL(c[b>>2]|0,c[b+4>>2]|0,2,0)|0;Hk(q,u,b,D);b=u;b=$K(c[b>>2]|0,c[b+4>>2]|0,2,0)|0;h=u;c[h>>2]=b;c[h+4>>2]=D;c[t>>2]=0}if((c[z>>2]|0)!=0){l=22}else{f=w;b=c[f>>2]|0;f=c[f+4>>2]|0;e=v;h=c[x>>2]|0;h=dL(c[e>>2]|0,c[e+4>>2]|0,h|0,((h|0)<0)<<31>>31|0)|0;e=D;if(!((f|0)<(e|0)|(f|0)==(e|0)&b>>>0<=h>>>0)){l=22}}if((l|0)==22){l=0;b=w;f=c[b+4>>2]|0;h=v;e=c[h+4>>2]|0;if(!((f|0)<(e|0)|((f|0)==(e|0)?(c[b>>2]|0)>>>0<=(c[h>>2]|0)>>>0:0))){if((a[c[m>>2]>>0]&254|0)==0){break}Gk(m,v);b=v;b=$K(c[b>>2]|0,c[b+4>>2]|0,2,0)|0;h=v;c[h>>2]=b;c[h+4>>2]=D;continue}}if((a[c[C>>2]>>0]&254|0)==0){break}Gk(C,w);b=w;b=$K(c[b>>2]|0,c[b+4>>2]|0,2,0)|0;h=w;c[h>>2]=b;c[h+4>>2]=D}if((c[t>>2]|0)!=0){c[q>>2]=c[t>>2]}Jj(0,m);Jj(0,C);if(0==(a[c[m>>2]>>0]|0)){break}if(0==(a[c[C>>2]>>0]|0)){break}c[m>>2]=(c[m>>2]|0)+1;j=c[m>>2]|0;if((a[c[m>>2]>>0]&128|0)!=0){j=Lj(j,r)|0}else{c[r>>2]=d[j>>0]|0;j=1}c[m>>2]=(c[m>>2]|0)+j;c[C>>2]=(c[C>>2]|0)+1;j=c[C>>2]|0;if((a[c[C>>2]>>0]&128|0)!=0){j=Lj(j,s)|0}else{c[s>>2]=d[j>>0]|0;j=1}c[C>>2]=(c[C>>2]|0)+j}Pj(0,C);Pj(0,m);c[c[n>>2]>>2]=c[m>>2];c[c[o>>2]>>2]=c[C>>2];if((c[c[p>>2]>>2]|0)==(c[q>>2]|0)){c[A>>2]=0;h=c[A>>2]|0;i=B;return h|0}else{h=c[q>>2]|0;c[q>>2]=h+1;a[h>>0]=0;c[c[p>>2]>>2]=c[q>>2];c[A>>2]=1;h=c[A>>2]|0;i=B;return h|0}return 0}function Gk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+12|0;e=d+8|0;f=d;c[g>>2]=a;c[e>>2]=b;a=Kj(c[c[g>>2]>>2]|0,f)|0;b=c[g>>2]|0;c[b>>2]=(c[b>>2]|0)+a;b=f;a=c[e>>2]|0;e=a;b=dL(c[e>>2]|0,c[e+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[a>>2]=b;c[a+4>>2]=D;i=d;return}function Hk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+12|0;g=f+8|0;h=f;c[j>>2]=a;c[g>>2]=b;a=h;c[a>>2]=d;c[a+4>>2]=e;d=c[c[j>>2]>>2]|0;a=h;b=c[g>>2]|0;b=$K(c[a>>2]|0,c[a+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=uj(d,b,D)|0;d=c[j>>2]|0;c[d>>2]=(c[d>>2]|0)+b;d=h;b=c[d+4>>2]|0;a=c[g>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;i=f;return}function Ik(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+28>>2]=1;c[d>>2]=0;while(1){if((c[d>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){break}c[(c[(c[c[e>>2]>>2]|0)+(c[d>>2]<<2)>>2]|0)+80>>2]=0;c[(c[(c[c[e>>2]>>2]|0)+(c[d>>2]<<2)>>2]|0)+84>>2]=0;a=(c[(c[c[e>>2]>>2]|0)+(c[d>>2]<<2)>>2]|0)+88|0;c[a>>2]=0;c[a+4>>2]=0;c[d>>2]=(c[d>>2]|0)+1}i=b;return 0}function Jk(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+48|0;r=k+44|0;t=k+40|0;g=k+36|0;h=k+32|0;j=k+28|0;f=k+24|0;s=k+20|0;o=k+12|0;q=k+8|0;l=k+4|0;m=k;n=k+16|0;c[r>>2]=a;c[t>>2]=b;c[g>>2]=e;c[h>>2]=c[c[r>>2]>>2];c[j>>2]=0;c[s>>2]=0;if((c[t>>2]|0)!=0){if((d[(c[r>>2]|0)+52>>0]|0|0)==(d[(c[h>>2]|0)+231>>0]|0|0)){if((c[(c[g>>2]|0)+48>>2]|0)<=4){if((c[(c[g>>2]|0)+48>>2]|0)>0){if((c[(c[g>>2]|0)+48>>2]|0)<=4){e=(c[(c[g>>2]|0)+48>>2]|0)>0}else{e=0}}else{e=0}}else{e=0}}else{e=0}}else{e=0}c[o>>2]=e&1;c[f>>2]=0;while(1){if((c[o>>2]|0)!=1){break}if((c[f>>2]|0)>=(c[(c[g>>2]|0)+48>>2]|0)){break}c[q>>2]=(c[g>>2]|0)+56+((c[f>>2]|0)*24|0);if((c[(c[q>>2]|0)+12>>2]|0)!=0){p=13}else{if((c[(c[q>>2]|0)+20>>2]|0)!=0){if((c[(c[(c[q>>2]|0)+20>>2]|0)+36>>2]|0)==0){p=13}}}if((p|0)==13){p=0;c[o>>2]=0}if((c[(c[q>>2]|0)+20>>2]|0)!=0){c[s>>2]=1}c[f>>2]=(c[f>>2]|0)+1}if((c[o>>2]|0)!=0){if((c[s>>2]|0)!=0){if((c[(c[g>>2]|0)+52>>2]|0)>=(c[(c[h>>2]|0)+24>>2]|0)){o=-1}else{o=c[(c[g>>2]|0)+52>>2]|0}c[l>>2]=o;c[f>>2]=0;while(1){if((c[j>>2]|0)!=0){break}if((c[f>>2]|0)>=(c[(c[g>>2]|0)+48>>2]|0)){break}c[m>>2]=(c[g>>2]|0)+56+((c[f>>2]|0)*24|0);c[n>>2]=c[(c[m>>2]|0)+20>>2];if((c[n>>2]|0)!=0){c[j>>2]=Kk(c[h>>2]|0,c[n>>2]|0,c[l>>2]|0,c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+4>>2]|0)|0}c[f>>2]=(c[f>>2]|0)+1}c[(c[g>>2]|0)+40>>2]=1;t=c[j>>2]|0;i=k;return t|0}}c[j>>2]=Lk(c[r>>2]|0,c[g>>2]|0)|0;c[(c[g>>2]|0)+40>>2]=0;t=c[j>>2]|0;i=k;return t|0} + + + +function Zv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;j=e+16|0;h=e;g=e+4|0;f=e+8|0;k=e+12|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;if((c[c[g>>2]>>2]|0)!=0){c[k>>2]=ef(c[c[j>>2]>>2]|0,c[c[g>>2]>>2]|0)|0;c[f>>2]=c[(c[(c[c[j>>2]>>2]|0)+16>>2]|0)+(c[k>>2]<<4)>>2]}else{c[f>>2]=c[(c[g>>2]|0)+4>>2]}a=af(c[j>>2]|0,c[h>>2]|0,c[(c[g>>2]|0)+8>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function _v(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d;e=d+12|0;h=d+4|0;g=d+8|0;c[h>>2]=a;c[g>>2]=b;if((Ub(c[g>>2]|0)|0)>6){if(0==(Tb(c[g>>2]|0,21672,7)|0)){a=c[h>>2]|0;c[f>>2]=c[g>>2];bf(a,21680,f);c[e>>2]=1;a=c[e>>2]|0;i=d;return a|0}}c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}function $v(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;l=g+12|0;h=g;k=g+4|0;j=g+8|0;c[l>>2]=b;c[h>>2]=e;c[k>>2]=f;f=c[l>>2]|0;if((c[(c[l>>2]|0)+408>>2]|0)!=0){f=c[f+408>>2]|0}c[j>>2]=f;aw(c[l>>2]|0,c[k>>2]|0);b=(c[j>>2]|0)+328|0;c[b>>2]=c[b>>2]|1<>2];b=(c[j>>2]|0)+20|0;a[b>>0]=d[b>>0]|0|c[h>>2];i=g;return}function aw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;j=d+16|0;h=d;e=d+4|0;g=d+8|0;f=d+12|0;c[j>>2]=a;c[h>>2]=b;b=c[j>>2]|0;if((c[(c[j>>2]|0)+408>>2]|0)!=0){b=c[b+408>>2]|0}c[e>>2]=b;c[g>>2]=c[c[e>>2]>>2];c[f>>2]=1<>2];if((c[(c[e>>2]|0)+332>>2]&c[f>>2]|0)!=0){i=d;return}j=(c[e>>2]|0)+332|0;c[j>>2]=c[j>>2]|c[f>>2];c[(c[e>>2]|0)+336+(c[h>>2]<<2)>>2]=c[c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]>>2];if((c[h>>2]|0)!=1){i=d;return}bw(c[e>>2]|0)|0;i=d;return}function bw(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;h=i;i=i+32|0;e=h;g=h+20|0;d=h+4|0;k=h+8|0;f=h+12|0;j=h+16|0;c[d>>2]=b;c[k>>2]=c[c[d>>2]>>2];if((c[(c[(c[k>>2]|0)+16>>2]|0)+20>>2]|0)==0){if((a[(c[d>>2]|0)+450>>0]|0)==0){c[f>>2]=Ph(c[c[k>>2]>>2]|0,0,c[k>>2]|0,j,0,542)|0;if((c[f>>2]|0)!=0){bf(c[d>>2]|0,21600,e);c[(c[d>>2]|0)+12>>2]=c[f>>2];c[g>>2]=1;k=c[g>>2]|0;i=h;return k|0}c[(c[(c[k>>2]|0)+16>>2]|0)+20>>2]=c[j>>2];if(7==(Ig(c[j>>2]|0,c[(c[k>>2]|0)+72>>2]|0,-1,0)|0)){a[(c[k>>2]|0)+64>>0]=1;c[g>>2]=1;k=c[g>>2]|0;i=h;return k|0}}}c[g>>2]=0;k=c[g>>2]|0;i=h;return k|0}function cw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;j=l+24|0;m=l;h=l+4|0;g=l+8|0;e=l+12|0;n=l+16|0;k=l+20|0;c[j>>2]=a;c[m>>2]=b;c[h>>2]=d;c[g>>2]=0;c[n>>2]=Ub(c[m>>2]|0)|0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[j>>2]|0)+20>>2]|0)){f=7;break}a=c[e>>2]|0;c[k>>2]=(c[e>>2]|0)<2?a^1:a;if((c[h>>2]|0)!=0){if((Dc(c[h>>2]|0,c[(c[(c[j>>2]|0)+16>>2]|0)+(c[k>>2]<<4)>>2]|0)|0)==0){f=5}}else{f=5}if((f|0)==5){f=0;c[g>>2]=zh((c[(c[(c[j>>2]|0)+16>>2]|0)+(c[k>>2]<<4)+12>>2]|0)+8|0,c[m>>2]|0,c[n>>2]|0)|0;if((c[g>>2]|0)!=0){f=7;break}}c[e>>2]=(c[e>>2]|0)+1}if((f|0)==7){i=l;return c[g>>2]|0}return 0}function dw(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+16|0;n=h+8|0;m=h;l=h+13|0;k=h+12|0;j=h+4|0;c[n>>2]=b;c[m>>2]=d;a[l>>0]=e;a[k>>0]=f;c[j>>2]=g;b=kw(c[n>>2]|0,c[m>>2]|0,a[l>>0]|0,a[k>>0]|0,c[j>>2]|0,0)|0;i=h;return b|0}function ew(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;f=j+24|0;k=j;l=j+4|0;e=j+8|0;g=j+12|0;h=j+16|0;m=j+20|0;c[f>>2]=a;c[k>>2]=b;c[l>>2]=d;c[e>>2]=Ov(c[f>>2]|0)|0;if((c[e>>2]|0)==0){i=j;return}c[g>>2]=Wv(c[f>>2]|0)|0;c[h>>2]=Wv(c[f>>2]|0)|0;Tv(c[e>>2]|0,50,c[k>>2]|0,c[g>>2]|0,2)|0;jf(c[e>>2]|0,c[k>>2]|0);Qv(c[e>>2]|0,25,c[l>>2]|0,c[h>>2]|0)|0;c[m>>2]=Tv(c[e>>2]|0,83,c[h>>2]|0,0,c[g>>2]|0)|0;gf(c[e>>2]|0,-120);Tv(c[e>>2]|0,51,c[k>>2]|0,2,c[h>>2]|0)|0;jw(c[e>>2]|0,c[m>>2]|0);Xv(c[f>>2]|0,c[g>>2]|0);Xv(c[f>>2]|0,c[h>>2]|0);i=j;return}function fw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+48|0;l=k;j=k+28|0;h=k+24|0;e=k+20|0;f=k+32|0;m=k+8|0;g=k+4|0;n=k+12|0;o=k+16|0;c[j>>2]=a;c[h>>2]=b;c[e>>2]=d;c[f>>2]=Ov(c[j>>2]|0)|0;if((c[f>>2]|0)==0){i=k;return}c[g>>2]=ef(c[c[j>>2]>>2]|0,c[(c[h>>2]|0)+68>>2]|0)|0;c[n>>2]=gw(c[j>>2]|0,c[h>>2]|0)|0;while(1){if((c[n>>2]|0)==0){break}c[o>>2]=ef(c[c[j>>2]>>2]|0,c[(c[n>>2]|0)+20>>2]|0)|0;Sv(c[f>>2]|0,123,c[o>>2]|0,0,0,c[c[n>>2]>>2]|0,0)|0;c[n>>2]=c[(c[n>>2]|0)+32>>2]}Sv(c[f>>2]|0,121,c[g>>2]|0,0,0,c[c[h>>2]>>2]|0,0)|0;a=c[c[j>>2]>>2]|0;c[l>>2]=c[e>>2];c[m>>2]=cf(a,22056,l)|0;if((c[m>>2]|0)==0){i=k;return}Rv(c[f>>2]|0,c[g>>2]|0,c[m>>2]|0);a=hw(c[j>>2]|0,c[h>>2]|0)|0;c[m>>2]=a;if((a|0)==0){i=k;return}Rv(c[f>>2]|0,1,c[m>>2]|0);i=k;return}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;e=f+24|0;m=f;k=f+4|0;l=f+8|0;h=f+12|0;j=f+16|0;g=f+20|0;c[m>>2]=b;c[k>>2]=d;c[l>>2]=c[(c[(c[c[m>>2]>>2]|0)+16>>2]|0)+28>>2];c[h>>2]=0;if((a[(c[m>>2]|0)+438>>0]|0)!=0){c[e>>2]=0;m=c[e>>2]|0;i=f;return m|0}a:do{if((c[l>>2]|0)!=(c[(c[k>>2]|0)+68>>2]|0)){c[j>>2]=c[(c[l>>2]|0)+48>>2];while(1){if((c[j>>2]|0)==0){break a}c[g>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[g>>2]|0)+24>>2]|0)==(c[(c[k>>2]|0)+68>>2]|0)){if(0==(Dc(c[(c[g>>2]|0)+4>>2]|0,c[c[k>>2]>>2]|0)|0)){if((c[h>>2]|0)!=0){d=c[h>>2]|0}else{d=c[(c[k>>2]|0)+64>>2]|0}c[(c[g>>2]|0)+32>>2]=d;c[h>>2]=c[g>>2]}}c[j>>2]=c[c[j>>2]>>2]}}}while(0);if((c[h>>2]|0)!=0){g=c[h>>2]|0}else{g=c[(c[k>>2]|0)+64>>2]|0}c[e>>2]=g;m=c[e>>2]|0;i=f;return m|0}function hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;g=e;f=e+28|0;m=e+4|0;k=e+8|0;h=e+12|0;l=e+16|0;j=e+20|0;d=e+24|0;c[f>>2]=a;c[m>>2]=b;c[h>>2]=0;c[l>>2]=c[(c[(c[c[f>>2]>>2]|0)+16>>2]|0)+28>>2];a:do{if((c[(c[m>>2]|0)+68>>2]|0)!=(c[l>>2]|0)){c[j>>2]=c[c[f>>2]>>2];c[k>>2]=gw(c[f>>2]|0,c[m>>2]|0)|0;while(1){if((c[k>>2]|0)==0){break a}if((c[(c[k>>2]|0)+20>>2]|0)==(c[l>>2]|0)){c[h>>2]=iw(c[j>>2]|0,c[h>>2]|0,c[c[k>>2]>>2]|0)|0}c[k>>2]=c[(c[k>>2]|0)+32>>2]}}}while(0);if((c[h>>2]|0)==0){a=c[h>>2]|0;i=e;return a|0}a=c[c[f>>2]>>2]|0;c[g>>2]=c[h>>2];c[d>>2]=cf(a,22072,g)|0;cc(c[c[f>>2]>>2]|0,c[h>>2]|0);c[h>>2]=c[d>>2];a=c[h>>2]|0;i=e;return a|0}function iw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;j=e;h=e+20|0;g=e+8|0;k=e+12|0;f=e+16|0;c[h>>2]=a;c[g>>2]=b;c[k>>2]=d;d=c[h>>2]|0;if((c[g>>2]|0)!=0){a=c[k>>2]|0;c[j>>2]=c[g>>2];c[j+4>>2]=a;c[f>>2]=cf(d,22104,j)|0;cc(c[h>>2]|0,c[g>>2]|0);a=c[f>>2]|0;i=e;return a|0}else{c[j>>2]=c[k>>2];c[f>>2]=cf(d,22096,j)|0;a=c[f>>2]|0;i=e;return a|0}return 0}function jw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;lf(c[e>>2]|0,c[f>>2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[(c[e>>2]|0)+24>>2]|0)+88>>2]=(c[(c[e>>2]|0)+32>>2]|0)-1;i=d;return}function kw(f,g,j,k,l,m){f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0;t=i;i=i+64|0;B=t;n=t+40|0;u=t+48|0;w=t+44|0;q=t+56|0;s=t+57|0;o=t+36|0;C=t+52|0;v=t+24|0;y=t+20|0;p=t+16|0;x=t+12|0;A=t+8|0;r=t+28|0;E=t+32|0;c[u>>2]=f;c[w>>2]=g;a[q>>0]=j;a[s>>0]=k;c[o>>2]=l;c[C>>2]=m;c[y>>2]=0;c[p>>2]=0;c[x>>2]=1;c[A>>2]=1784;c[r>>2]=0;if((c[w>>2]|0)==0){c[c[o>>2]>>2]=0;c[n>>2]=0;f=c[n>>2]|0;i=t;return f|0}c[v>>2]=d[c[w>>2]>>0]|0;if((c[v>>2]|0)==159){c[v>>2]=d[(c[w>>2]|0)+38>>0]|0}do{if((c[v>>2]|0)==157){if((d[c[(c[w>>2]|0)+12>>2]>>0]|0|0)!=132){if((d[c[(c[w>>2]|0)+12>>2]>>0]|0|0)!=133){break}}c[w>>2]=c[(c[w>>2]|0)+12>>2];c[v>>2]=d[c[w>>2]>>0]|0;c[x>>2]=-1;c[A>>2]=22120}}while(0);do{if((c[v>>2]|0)==97|(c[v>>2]|0)==133|(c[v>>2]|0)==132){c[p>>2]=lw(c[u>>2]|0,c[C>>2]|0)|0;if((c[p>>2]|0)==0){z=35}else{if((c[(c[w>>2]|0)+4>>2]&1024|0)!=0){g=c[p>>2]|0;j=c[(c[w>>2]|0)+8>>2]|0;f=c[x>>2]|0;f=nL(j|0,((j|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;_d(g,f,D)}else{f=c[u>>2]|0;g=c[(c[w>>2]|0)+8>>2]|0;c[B>>2]=c[A>>2];c[B+4>>2]=g;c[y>>2]=cf(f,8800,B)|0;if((c[y>>2]|0)==0){z=35;break}Qf(c[p>>2]|0,-1,c[y>>2]|0,1,39)}if((c[v>>2]|0)==132|(c[v>>2]|0)==133){if((d[s>>0]|0|0)==98){mw(c[p>>2]|0,99,1)}else{z=18}}else{z=18}if((z|0)==18){mw(c[p>>2]|0,a[s>>0]|0,1)}if((b[(c[p>>2]|0)+28>>1]&12|0)!=0){f=(c[p>>2]|0)+28|0;b[f>>1]=(e[f>>1]|0)&-3}if((d[q>>0]|0|0)!=1){c[r>>2]=sr(c[p>>2]|0,d[q>>0]|0)|0;z=34}else{z=34}}}else{if((c[v>>2]|0)==157){f=0==(dw(c[u>>2]|0,c[(c[w>>2]|0)+12>>2]|0,a[q>>0]|0,a[s>>0]|0,p)|0);if(!(f&(c[p>>2]|0)!=0)){z=34;break}nw(c[p>>2]|0)|0;f=(c[p>>2]|0)+16|0;u=c[p>>2]|0;if((c[f>>2]|0)==0?(c[f+4>>2]|0)==-2147483648:0){f=u+28|0;b[f>>1]=(e[f>>1]|0)&-5;f=(c[p>>2]|0)+28|0;b[f>>1]=e[f>>1]|0|8;h[(c[p>>2]|0)+8>>3]=-9223372036854776000.0}else{g=u+16|0;g=$K(0,0,c[g>>2]|0,c[g+4>>2]|0)|0;f=(c[p>>2]|0)+16|0;c[f>>2]=g;c[f+4>>2]=D}h[(c[p>>2]|0)+8>>3]=-+h[(c[p>>2]|0)+8>>3];mw(c[p>>2]|0,a[s>>0]|0,a[q>>0]|0);z=34;break}else{if((c[v>>2]|0)==101){c[p>>2]=lw(c[u>>2]|0,c[C>>2]|0)|0;if((c[p>>2]|0)==0){z=35;break}else{z=34;break}}if((c[v>>2]|0)!=134){z=34;break}c[p>>2]=lw(c[u>>2]|0,c[C>>2]|0)|0;if((c[p>>2]|0)==0){z=35;break}c[y>>2]=(c[(c[w>>2]|0)+8>>2]|0)+2;c[E>>2]=(Ub(c[y>>2]|0)|0)-1;f=c[p>>2]|0;z=ow(c[u>>2]|0,c[y>>2]|0,c[E>>2]|0)|0;Yd(f,z,(c[E>>2]|0)/2|0,0,39)|0;z=34;break}}}while(0);if((z|0)==34){c[c[o>>2]>>2]=c[p>>2];c[n>>2]=c[r>>2];f=c[n>>2]|0;i=t;return f|0}else if((z|0)==35){a[(c[u>>2]|0)+64>>0]=1;cc(c[u>>2]|0,c[y>>2]|0);Rf(c[p>>2]|0);c[n>>2]=7;f=c[n>>2]|0;i=t;return f|0}return 0}function lw(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d+4|0;c[e>>2]=a;c[d>>2]=b;a=Pf(c[e>>2]|0)|0;i=d;return a|0}function mw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f;h=f+5|0;g=f+4|0;c[j>>2]=b;a[h>>0]=d;a[g>>0]=e;rw(c[j>>2]|0,a[h>>0]|0,a[g>>0]|0);i=f;return}function nw(d){d=d|0;var f=0,g=0,j=0,k=0.0;f=i;i=i+16|0;g=f;c[g>>2]=d;do{if((b[(c[g>>2]|0)+28>>1]&13|0)==0){j=0==(Pg(c[(c[g>>2]|0)+4>>2]|0,(c[g>>2]|0)+16|0,c[(c[g>>2]|0)+24>>2]|0,a[(c[g>>2]|0)+30>>0]|0)|0);d=c[g>>2]|0;if(j){b[(c[g>>2]|0)+28>>1]=(e[d+28>>1]|0)&-16896|4;break}else{k=+Nd(d);h[(c[g>>2]|0)+8>>3]=k;b[(c[g>>2]|0)+28>>1]=(e[(c[g>>2]|0)+28>>1]|0)&-16896|8;pw(c[g>>2]|0);break}}}while(0);j=(c[g>>2]|0)+28|0;b[j>>1]=(e[j>>1]|0)&-19;i=f;return 0}function ow(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+16|0;k=f;j=f+4|0;g=f+8|0;h=f+12|0;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[g>>2]=$e(c[l>>2]|0,((c[j>>2]|0)/2|0)+1|0)|0;c[j>>2]=(c[j>>2]|0)+ -1;if((c[g>>2]|0)==0){l=c[g>>2]|0;i=f;return l|0}c[h>>2]=0;while(1){e=c[h>>2]|0;if((c[h>>2]|0)>=(c[j>>2]|0)){break}l=((kr(a[(c[k>>2]|0)+e>>0]|0)|0)&255)<<4;l=(l|(kr(a[(c[k>>2]|0)+((c[h>>2]|0)+1)>>0]|0)|0)&255)&255;a[(c[g>>2]|0)+((c[h>>2]|0)/2|0)>>0]=l;c[h>>2]=(c[h>>2]|0)+2}a[(c[g>>2]|0)+((e|0)/2|0)>>0]=0;l=c[g>>2]|0;i=f;return l|0}function pw(a){a=a|0;var d=0,f=0,g=0;d=i;i=i+16|0;f=d;c[f>>2]=a;g=qw(+h[(c[f>>2]|0)+8>>3])|0;a=(c[f>>2]|0)+16|0;c[a>>2]=g;c[a+4>>2]=D;a=(c[f>>2]|0)+16|0;if(!(+h[(c[f>>2]|0)+8>>3]==+((c[a>>2]|0)>>>0)+4294967296.0*+(c[a+4>>2]|0))){i=d;return}g=(c[f>>2]|0)+16|0;a=c[g+4>>2]|0;if(!((a|0)>-2147483648|(a|0)==-2147483648&(c[g>>2]|0)>>>0>0)){i=d;return}g=(c[f>>2]|0)+16|0;a=c[g+4>>2]|0;if(!((a|0)<2147483647|(a|0)==2147483647&(c[g>>2]|0)>>>0<4294967295)){i=d;return}g=(c[f>>2]|0)+28|0;b[g>>1]=e[g>>1]|0|4;i=d;return}function qw(a){a=+a;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;b=d+8|0;e=d;h[e>>3]=a;do{if(+h[e>>3]<=-9223372036854776000.0){e=b;c[e>>2]=0;c[e+4>>2]=-2147483648}else{if(+h[e>>3]>=9223372036854776000.0){e=b;c[e>>2]=-1;c[e+4>>2]=2147483647;break}else{a=+h[e>>3];f=+O(a)>=1.0?a>0.0?(ea(+N(a/4294967296.0),4294967295.0)|0)>>>0:~~+_((a- +(~~a>>>0))/4294967296.0)>>>0:0;e=b;c[e>>2]=~~a>>>0;c[e+4>>2]=f;break}}}while(0);f=b;D=c[f+4>>2]|0;i=d;return c[f>>2]|0}function rw(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;k=i;i=i+16|0;j=k;m=k+5|0;l=k+4|0;c[j>>2]=f;a[m>>0]=g;a[l>>0]=h;if((a[m>>0]|0)==97){if(0==(b[(c[j>>2]|0)+28>>1]&2|0)){if((b[(c[j>>2]|0)+28>>1]&12|0)!=0){sw(c[j>>2]|0,d[l>>0]|0)|0}}f=(c[j>>2]|0)+28|0;b[f>>1]=e[f>>1]&-13;i=k;return}if((a[m>>0]|0)==98){i=k;return}Ze(c[j>>2]|0);if((b[(c[j>>2]|0)+28>>1]&8|0)==0){i=k;return}pw(c[j>>2]|0);i=k;return}function sw(d,f){d=d|0;f=f|0;var g=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+32|0;o=n;j=n+28|0;l=n+8|0;m=n+12|0;g=n+16|0;p=n+20|0;c[l>>2]=d;c[m>>2]=f;c[g>>2]=0;c[p>>2]=e[(c[l>>2]|0)+28>>1]|0;c[n+24>>2]=32;if((ue(c[l>>2]|0,32,0)|0)!=0){c[j>>2]=7;d=c[j>>2]|0;i=n;return d|0}f=c[(c[l>>2]|0)+4>>2]|0;d=c[l>>2]|0;if((c[p>>2]&4|0)!=0){q=d+16|0;p=c[q+4>>2]|0;d=o;c[d>>2]=c[q>>2];c[d+4>>2]=p;yc(32,f,15992,o)|0}else{h[k>>3]=+h[d+8>>3];c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];yc(32,f,16344,o)|0}q=Ub(c[(c[l>>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+24>>2]=q;a[(c[l>>2]|0)+30>>0]=1;q=(c[l>>2]|0)+28|0;b[q>>1]=e[q>>1]|0|514;sr(c[l>>2]|0,c[m>>2]|0)|0;c[j>>2]=c[g>>2];q=c[j>>2]|0;i=n;return q|0}function tw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;j=l+28|0;n=l;h=l+4|0;g=l+8|0;e=l+12|0;o=l+16|0;k=l+20|0;m=l+24|0;c[j>>2]=a;c[n>>2]=b;c[h>>2]=d;c[g>>2]=0;c[o>>2]=Ub(c[n>>2]|0)|0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[j>>2]|0)+20>>2]|0)){f=7;break}a=c[e>>2]|0;c[k>>2]=(c[e>>2]|0)<2?a^1:a;c[m>>2]=c[(c[(c[j>>2]|0)+16>>2]|0)+(c[k>>2]<<4)+12>>2];if((c[h>>2]|0)!=0){if((Dc(c[h>>2]|0,c[(c[(c[j>>2]|0)+16>>2]|0)+(c[k>>2]<<4)>>2]|0)|0)==0){f=5}}else{f=5}if((f|0)==5){f=0;c[g>>2]=zh((c[m>>2]|0)+24|0,c[n>>2]|0,c[o>>2]|0)|0;if((c[g>>2]|0)!=0){f=7;break}}c[e>>2]=(c[e>>2]|0)+1}if((f|0)==7){i=l;return c[g>>2]|0}return 0}function uw(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;h=k;j=k+12|0;f=k+4|0;g=k+8|0;c[f>>2]=b;c[g>>2]=e;if((a[(c[c[f>>2]>>2]|0)+137>>0]|0)==0){if((d[(c[f>>2]|0)+18>>0]|0)==0){if((c[(c[c[f>>2]>>2]|0)+24>>2]&2048|0)==0){if(0==(Tb(c[g>>2]|0,21672,7)|0)){b=c[f>>2]|0;c[h>>2]=c[g>>2];bf(b,24584,h);c[j>>2]=1;b=c[j>>2]|0;i=k;return b|0}}}}c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}function vw(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+48|0;l=n;h=n+36|0;j=n+32|0;k=n+28|0;r=n+24|0;p=n+20|0;s=n+12|0;o=n+8|0;m=n+4|0;q=n+16|0;g=n+40|0;c[j>>2]=d;c[k>>2]=f;c[s>>2]=0;c[m>>2]=c[c[j>>2]>>2];if((Aw(c[j>>2]|0,c[k>>2]|0)|0)!=0){c[h>>2]=1;d=c[h>>2]|0;i=n;return d|0}if((a[(c[k>>2]|0)+44>>0]&16|0)!=0){c[h>>2]=0;d=c[h>>2]|0;i=n;return d|0}if((b[(c[k>>2]|0)+38>>1]|0)>0){c[h>>2]=0;d=c[h>>2]|0;i=n;return d|0}if((b[(c[k>>2]|0)+38>>1]|0)<0){d=c[j>>2]|0;c[l>>2]=c[c[k>>2]>>2];bf(d,22856,l);c[h>>2]=1;d=c[h>>2]|0;i=n;return d|0}c[p>>2]=Bw(c[m>>2]|0,c[(c[k>>2]|0)+12>>2]|0,0)|0;if((c[p>>2]|0)!=0){a[g>>0]=a[(c[m>>2]|0)+242>>0]|0;c[o>>2]=c[(c[j>>2]|0)+68>>2];Cw(c[j>>2]|0,c[(c[p>>2]|0)+32>>2]|0);b[(c[k>>2]|0)+38>>1]=-1;a[(c[m>>2]|0)+242>>0]=0;c[q>>2]=c[(c[m>>2]|0)+276>>2];c[(c[m>>2]|0)+276>>2]=0;c[r>>2]=Dw(c[j>>2]|0,c[p>>2]|0)|0;c[(c[m>>2]|0)+276>>2]=c[q>>2];a[(c[m>>2]|0)+242>>0]=a[g>>0]|0;c[(c[j>>2]|0)+68>>2]=c[o>>2];if((c[r>>2]|0)!=0){b[(c[k>>2]|0)+38>>1]=b[(c[r>>2]|0)+38>>1]|0;c[(c[k>>2]|0)+4>>2]=c[(c[r>>2]|0)+4>>2];b[(c[r>>2]|0)+38>>1]=0;c[(c[r>>2]|0)+4>>2]=0;ac(c[m>>2]|0,c[r>>2]|0);d=(c[(c[k>>2]|0)+68>>2]|0)+78|0;b[d>>1]=e[d>>1]|2}else{b[(c[k>>2]|0)+38>>1]=0;c[s>>2]=(c[s>>2]|0)+1}du(c[m>>2]|0,c[p>>2]|0)}else{c[s>>2]=(c[s>>2]|0)+1}c[h>>2]=c[s>>2];d=c[h>>2]|0;i=n;return d|0}function ww(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=c[(c[g>>2]|0)+60>>2];while(1){if((c[e>>2]|0)==0){b=5;break}if((c[c[e>>2]>>2]|0)==(c[f>>2]|0)){b=5;break}c[e>>2]=c[(c[e>>2]|0)+24>>2]}if((b|0)==5){i=d;return c[e>>2]|0}return 0}function xw(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;b=c[f>>2]|0;if((c[(c[f>>2]|0)+408>>2]|0)!=0){b=c[b+408>>2]|0}c[e>>2]=b;a[(c[e>>2]|0)+21>>0]=1;i=d;return}function yw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d+12|0;h=d;f=d+4|0;e=d+8|0;c[g>>2]=a;c[h>>2]=b;c[e>>2]=0;c[f>>2]=zw(c[h>>2]|0)|0;while(1){if((c[f>>2]|0)==0){break}c[e>>2]=iw(c[c[g>>2]>>2]|0,c[e>>2]|0,c[c[c[f>>2]>>2]>>2]|0)|0;c[f>>2]=c[(c[f>>2]|0)+12>>2]}i=d;return c[e>>2]|0}function zw(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=Ub(c[c[e>>2]>>2]|0)|0;a=zh((c[(c[e>>2]|0)+68>>2]|0)+56|0,c[c[e>>2]>>2]|0,c[d>>2]|0)|0;i=b;return a|0}function Aw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+48|0;o=l;e=l+32|0;n=l+28|0;g=l+24|0;f=l+20|0;p=l+36|0;h=l+8|0;j=l+4|0;m=l+12|0;k=l+16|0;c[n>>2]=b;c[g>>2]=d;c[f>>2]=c[c[n>>2]>>2];if((a[(c[g>>2]|0)+44>>0]&16|0)!=0){if((ww(c[f>>2]|0,c[g>>2]|0)|0)==0){c[p>>2]=c[c[(c[g>>2]|0)+56>>2]>>2];d=(c[f>>2]|0)+300|0;b=c[p>>2]|0;c[h>>2]=zh(d,b,Ub(c[p>>2]|0)|0)|0;if((c[h>>2]|0)!=0){c[k>>2]=0;c[j>>2]=fy(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[(c[c[h>>2]>>2]|0)+8>>2]|0,k)|0;if((c[j>>2]|0)!=0){b=c[n>>2]|0;c[o>>2]=c[k>>2];bf(b,1768,o)}cc(c[f>>2]|0,c[k>>2]|0)}else{c[m>>2]=c[c[(c[g>>2]|0)+56>>2]>>2];b=c[n>>2]|0;c[o>>2]=c[m>>2];bf(b,24464,o);c[j>>2]=1}c[e>>2]=c[j>>2];b=c[e>>2]|0;i=l;return b|0}}c[e>>2]=0;b=c[e>>2]|0;i=l;return b|0}function Bw(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+20|0;k=h;l=h+4|0;m=h+8|0;n=h+12|0;o=h+16|0;c[k>>2]=d;c[l>>2]=f;c[m>>2]=g;if((c[l>>2]|0)==0){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}c[n>>2]=$e(c[k>>2]|0,72)|0;if((c[n>>2]|0)==0){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}d=px(c[k>>2]|0,c[c[l>>2]>>2]|0,c[m>>2]|0)|0;c[c[n>>2]>>2]=d;d=cy(c[k>>2]|0,c[(c[l>>2]|0)+32>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+32>>2]=d;d=hx(c[k>>2]|0,c[(c[l>>2]|0)+36>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+36>>2]=d;d=px(c[k>>2]|0,c[(c[l>>2]|0)+40>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+40>>2]=d;d=hx(c[k>>2]|0,c[(c[l>>2]|0)+44>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+44>>2]=d;d=px(c[k>>2]|0,c[(c[l>>2]|0)+48>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+48>>2]=d;a[(c[n>>2]|0)+4>>0]=a[(c[l>>2]|0)+4>>0]|0;d=Bw(c[k>>2]|0,c[(c[l>>2]|0)+52>>2]|0,c[m>>2]|0)|0;c[o>>2]=d;c[(c[n>>2]|0)+52>>2]=d;if((c[o>>2]|0)!=0){c[(c[o>>2]|0)+56>>2]=c[n>>2]}c[(c[n>>2]|0)+56>>2]=0;o=hx(c[k>>2]|0,c[(c[l>>2]|0)+60>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+60>>2]=o;o=hx(c[k>>2]|0,c[(c[l>>2]|0)+64>>2]|0,c[m>>2]|0)|0;c[(c[n>>2]|0)+64>>2]=o;c[(c[n>>2]|0)+8>>2]=0;c[(c[n>>2]|0)+12>>2]=0;b[(c[n>>2]|0)+6>>1]=(e[(c[l>>2]|0)+6>>1]|0)&-9;c[(c[n>>2]|0)+16>>2]=-1;c[(c[n>>2]|0)+20>>2]=-1;o=(c[l>>2]|0)+24|0;f=c[o+4>>2]|0;d=(c[n>>2]|0)+24|0;c[d>>2]=c[o>>2];c[d+4>>2]=f;d=dy(c[k>>2]|0,c[(c[l>>2]|0)+68>>2]|0)|0;c[(c[n>>2]|0)+68>>2]=d;c[j>>2]=c[n>>2];d=c[j>>2]|0;i=h;return d|0}function Cw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;h=d;g=d+4|0;f=d+8|0;c[e>>2]=a;c[h>>2]=b;if((c[h>>2]|0)==0){i=d;return}c[g>>2]=0;c[f>>2]=(c[h>>2]|0)+8;while(1){if((c[g>>2]|0)>=(c[c[h>>2]>>2]|0)){b=8;break}if((c[(c[f>>2]|0)+40>>2]|0)>=0){b=8;break}b=(c[e>>2]|0)+68|0;a=c[b>>2]|0;c[b>>2]=a+1;c[(c[f>>2]|0)+40>>2]=a;if((c[(c[f>>2]|0)+20>>2]|0)!=0){Cw(c[e>>2]|0,c[(c[(c[f>>2]|0)+20>>2]|0)+32>>2]|0)}c[g>>2]=(c[g>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+72}if((b|0)==8){i=d;return}}function Dw(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;j=f;k=f+4|0;h=f+8|0;l=f+12|0;m=f+16|0;c[j>>2]=d;c[k>>2]=e;c[l>>2]=c[c[j>>2]>>2];c[m>>2]=c[(c[l>>2]|0)+24>>2];d=(c[l>>2]|0)+24|0;c[d>>2]=c[d>>2]&-33;d=(c[l>>2]|0)+24|0;c[d>>2]=c[d>>2]|64;Ew(c[j>>2]|0,c[k>>2]|0,0);if((c[(c[j>>2]|0)+64>>2]|0)!=0){c[g>>2]=0;d=c[g>>2]|0;i=f;return d|0}while(1){if((c[(c[k>>2]|0)+52>>2]|0)==0){break}c[k>>2]=c[(c[k>>2]|0)+52>>2]}c[(c[l>>2]|0)+24>>2]=c[m>>2];c[h>>2]=ve(c[l>>2]|0,76)|0;if((c[h>>2]|0)==0){c[g>>2]=0;d=c[g>>2]|0;i=f;return d|0}b[(c[h>>2]|0)+40>>1]=1;c[c[h>>2]>>2]=0;b[(c[h>>2]|0)+28>>1]=200;Fw(c[j>>2]|0,c[c[k>>2]>>2]|0,(c[h>>2]|0)+38|0,(c[h>>2]|0)+4|0)|0;Gw(c[j>>2]|0,c[h>>2]|0,c[k>>2]|0);b[(c[h>>2]|0)+36>>1]=-1;if((a[(c[l>>2]|0)+64>>0]|0)!=0){ac(c[l>>2]|0,c[h>>2]|0);c[g>>2]=0;d=c[g>>2]|0;i=f;return d|0}else{c[g>>2]=c[h>>2];d=c[g>>2]|0;i=f;return d|0}return 0}function Ew(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h;l=h+4|0;m=h+8|0;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;if((c[k>>2]|0)==0){i=h;return}c[m>>2]=c[c[j>>2]>>2];if((a[(c[m>>2]|0)+64>>0]|0)!=0){i=h;return}if((b[(c[k>>2]|0)+6>>1]&32|0)!=0){i=h;return}Rw(c[j>>2]|0,c[k>>2]|0);if((c[(c[j>>2]|0)+64>>2]|0)!=0){i=h;return}if((d[(c[m>>2]|0)+64>>0]|0)!=0){i=h;return}Sw(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0);if((c[(c[j>>2]|0)+64>>2]|0)!=0){i=h;return}if((d[(c[m>>2]|0)+64>>0]|0)!=0){i=h;return}Tw(c[j>>2]|0,c[k>>2]|0);i=h;return}function Fw(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;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;j=i;i=i+96|0;v=j;q=j+80|0;F=j+76|0;z=j+72|0;m=j+68|0;l=j+64|0;n=j+60|0;p=j+56|0;o=j+52|0;u=j+48|0;k=j+84|0;C=j+20|0;B=j+16|0;A=j+8|0;s=j+12|0;t=j+40|0;r=j+24|0;w=j+28|0;x=j+32|0;E=j+36|0;D=j+44|0;c[F>>2]=e;c[z>>2]=f;c[m>>2]=g;c[l>>2]=h;c[n>>2]=c[c[F>>2]>>2];if((c[z>>2]|0)!=0){c[B>>2]=c[c[z>>2]>>2];c[k>>2]=ve(c[n>>2]|0,(c[B>>2]|0)*24|0)|0}else{c[B>>2]=0;c[k>>2]=0}b[c[m>>2]>>1]=c[B>>2];c[c[l>>2]>>2]=c[k>>2];c[p>>2]=0;c[C>>2]=c[k>>2];while(1){if((c[p>>2]|0)>=(c[B>>2]|0)){break}c[A>>2]=Pw(c[(c[(c[z>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;F=c[(c[(c[z>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)+4>>2]|0;c[s>>2]=F;do{if((F|0)!=0){c[s>>2]=pe(c[n>>2]|0,c[s>>2]|0)|0}else{c[r>>2]=c[A>>2];while(1){h=c[r>>2]|0;if((d[c[r>>2]>>0]|0)!=122){break}c[r>>2]=c[h+16>>2]}if((d[h>>0]|0)==154){if((c[(c[r>>2]|0)+44>>2]|0)!=0){c[x>>2]=b[(c[r>>2]|0)+32>>1]|0;c[w>>2]=c[(c[r>>2]|0)+44>>2];if((c[x>>2]|0)<0){c[x>>2]=b[(c[w>>2]|0)+36>>1]|0}h=c[n>>2]|0;if((c[x>>2]|0)>=0){g=c[(c[(c[w>>2]|0)+4>>2]|0)+((c[x>>2]|0)*24|0)>>2]|0}else{g=8848}c[v>>2]=g;c[s>>2]=cf(h,1768,v)|0;break}}h=c[n>>2]|0;if((d[c[r>>2]>>0]|0)==27){c[v>>2]=c[(c[r>>2]|0)+8>>2];c[s>>2]=cf(h,1768,v)|0;break}else{c[v>>2]=c[(c[(c[z>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)+8>>2];c[s>>2]=cf(h,1768,v)|0;break}}}while(0);if((a[(c[n>>2]|0)+64>>0]|0)!=0){y=22;break}c[t>>2]=Ub(c[s>>2]|0)|0;c[u>>2]=0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[p>>2]|0)){break}if((Dc(c[(c[k>>2]|0)+((c[o>>2]|0)*24|0)>>2]|0,c[s>>2]|0)|0)==0){c[D>>2]=(c[t>>2]|0)-1;while(1){if((c[D>>2]|0)<=1){break}if((a[136+(d[(c[s>>2]|0)+(c[D>>2]|0)>>0]|0)>>0]&4|0)==0){break}c[D>>2]=(c[D>>2]|0)+ -1}if((c[D>>2]|0)>=0){if((a[(c[s>>2]|0)+(c[D>>2]|0)>>0]|0)==58){c[t>>2]=c[D>>2]}}a[(c[s>>2]|0)+(c[t>>2]|0)>>0]=0;F=c[n>>2]|0;f=c[s>>2]|0;e=(c[u>>2]|0)+1|0;c[u>>2]=e;c[v>>2]=f;c[v+4>>2]=e;c[E>>2]=cf(F,22952,v)|0;cc(c[n>>2]|0,c[s>>2]|0);c[s>>2]=c[E>>2];c[o>>2]=-1;if((c[s>>2]|0)==0){break}}c[o>>2]=(c[o>>2]|0)+1}c[c[C>>2]>>2]=c[s>>2];c[p>>2]=(c[p>>2]|0)+1;c[C>>2]=(c[C>>2]|0)+24}if((y|0)==22){cc(c[n>>2]|0,c[s>>2]|0)}if((a[(c[n>>2]|0)+64>>0]|0)==0){c[q>>2]=0;F=c[q>>2]|0;i=j;return F|0}c[o>>2]=0;while(1){r=c[n>>2]|0;if((c[o>>2]|0)>=(c[p>>2]|0)){break}cc(r,c[(c[k>>2]|0)+((c[o>>2]|0)*24|0)>>2]|0);c[o>>2]=(c[o>>2]|0)+1}cc(r,c[k>>2]|0);c[c[l>>2]>>2]=0;b[c[m>>2]>>1]=0;c[q>>2]=7;F=c[q>>2]|0;i=j;return F|0}function Gw(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;o=i;i=i+80|0;l=o+76|0;k=o+72|0;t=o+68|0;r=o+64|0;s=o+32|0;h=o+24|0;n=o+16|0;q=o+12|0;m=o+8|0;p=o+20|0;j=o;c[l>>2]=e;c[k>>2]=f;c[t>>2]=g;c[r>>2]=c[c[l>>2]>>2];e=j;c[e>>2]=0;c[e+4>>2]=0;if((a[(c[r>>2]|0)+64>>0]|0)!=0){i=o;return}c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;c[s+24>>2]=0;c[s+28>>2]=0;c[s+4>>2]=c[(c[t>>2]|0)+32>>2];c[p>>2]=c[(c[c[t>>2]>>2]|0)+4>>2];c[q>>2]=0;c[h>>2]=c[(c[k>>2]|0)+4>>2];while(1){if((c[q>>2]|0)>=(b[(c[k>>2]|0)+38>>1]|0)){break}c[m>>2]=c[(c[p>>2]|0)+((c[q>>2]|0)*20|0)>>2];f=c[r>>2]|0;f=pe(f,Hw(s,c[m>>2]|0,(c[h>>2]|0)+22|0)|0)|0;c[(c[h>>2]|0)+12>>2]=f;f=j;f=dL(c[f>>2]|0,c[f+4>>2]|0,d[(c[h>>2]|0)+22>>0]|0,0)|0;e=j;c[e>>2]=f;c[e+4>>2]=D;e=Iw(c[m>>2]|0)|0;a[(c[h>>2]|0)+21>>0]=e;if((a[(c[h>>2]|0)+21>>0]|0)==0){a[(c[h>>2]|0)+21>>0]=98}c[n>>2]=Jw(c[l>>2]|0,c[m>>2]|0)|0;if((c[n>>2]|0)!=0){e=pe(c[r>>2]|0,c[c[n>>2]>>2]|0)|0;c[(c[h>>2]|0)+16>>2]=e}c[q>>2]=(c[q>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+24}e=j;e=nL(c[e>>2]|0,c[e+4>>2]|0,4,0)|0;e=Kw(e,D)|0;b[(c[k>>2]|0)+42>>1]=e;i=o;return}function Hw(e,f,g){e=e|0;f=f|0;g=g|0;var h=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;v=i;i=i+128|0;u=v+120|0;n=v+116|0;t=v+112|0;r=v+108|0;p=v+104|0;j=v+100|0;o=v+124|0;h=v+96|0;q=v+92|0;k=v+84|0;s=v+80|0;m=v+48|0;l=v+40|0;y=v+8|0;w=v;x=v+88|0;c[n>>2]=e;c[t>>2]=f;c[r>>2]=g;c[p>>2]=0;a[o>>0]=1;if((c[t>>2]|0)!=0){if((c[(c[n>>2]|0)+4>>2]|0)!=0){g=d[c[t>>2]>>0]|0;do{if((g|0)==154|(g|0)==156){c[h>>2]=0;c[q>>2]=0;c[k>>2]=b[(c[t>>2]|0)+32>>1]|0;while(1){if((c[n>>2]|0)==0){break}if(!((c[h>>2]|0)!=0^1)){break}c[s>>2]=c[(c[n>>2]|0)+4>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[c[s>>2]>>2]|0)){break}if((c[(c[s>>2]|0)+8+((c[j>>2]|0)*72|0)+40>>2]|0)==(c[(c[t>>2]|0)+28>>2]|0)){break}c[j>>2]=(c[j>>2]|0)+1}if((c[j>>2]|0)<(c[c[s>>2]>>2]|0)){c[h>>2]=c[(c[s>>2]|0)+8+((c[j>>2]|0)*72|0)+16>>2];c[q>>2]=c[(c[s>>2]|0)+8+((c[j>>2]|0)*72|0)+20>>2];continue}else{c[n>>2]=c[(c[n>>2]|0)+16>>2];continue}}if((c[h>>2]|0)!=0){if((c[q>>2]|0)!=0){if((c[k>>2]|0)<0){break}if((c[k>>2]|0)>=(c[c[c[q>>2]>>2]>>2]|0)){break}c[l>>2]=c[(c[(c[c[q>>2]>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)>>2];c[m+4>>2]=c[(c[q>>2]|0)+32>>2];c[m+16>>2]=c[n>>2];c[m>>2]=c[c[n>>2]>>2];c[p>>2]=Hw(m,c[l>>2]|0,o)|0;break}if((c[(c[h>>2]|0)+68>>2]|0)!=0){if((c[k>>2]|0)<0){c[k>>2]=b[(c[h>>2]|0)+36>>1]|0}if((c[k>>2]|0)<0){c[p>>2]=22944;break}else{c[p>>2]=c[(c[(c[h>>2]|0)+4>>2]|0)+((c[k>>2]|0)*24|0)+12>>2];a[o>>0]=a[(c[(c[h>>2]|0)+4>>2]|0)+((c[k>>2]|0)*24|0)+22>>0]|0;break}}}}else if((g|0)==119){c[w>>2]=c[(c[t>>2]|0)+20>>2];c[x>>2]=c[c[(c[c[w>>2]>>2]|0)+4>>2]>>2];c[y+4>>2]=c[(c[w>>2]|0)+32>>2];c[y+16>>2]=c[n>>2];c[y>>2]=c[c[n>>2]>>2];c[p>>2]=Hw(y,c[x>>2]|0,o)|0}}while(0);if((c[r>>2]|0)!=0){a[c[r>>2]>>0]=a[o>>0]|0}c[u>>2]=c[p>>2];e=c[u>>2]|0;i=v;return e|0}}c[u>>2]=0;e=c[u>>2]|0;i=v;return e|0}function Iw(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f;k=f+4|0;j=f+8|0;c[h>>2]=e;c[h>>2]=Pw(c[h>>2]|0)|0;if((c[(c[h>>2]|0)+4>>2]&512|0)!=0){a[g>>0]=98;k=a[g>>0]|0;i=f;return k|0}c[k>>2]=d[c[h>>2]>>0]|0;if((c[k>>2]|0)==119){a[g>>0]=Iw(c[c[(c[c[(c[h>>2]|0)+20>>2]>>2]|0)+4>>2]>>2]|0)|0;k=a[g>>0]|0;i=f;return k|0}if((c[k>>2]|0)==38){a[g>>0]=Qw(c[(c[h>>2]|0)+8>>2]|0,0)|0;k=a[g>>0]|0;i=f;return k|0}if((c[k>>2]|0)==156|(c[k>>2]|0)==154|(c[k>>2]|0)==159){if((c[(c[h>>2]|0)+44>>2]|0)!=0){c[j>>2]=b[(c[h>>2]|0)+32>>1]|0;if((c[j>>2]|0)<0){a[g>>0]=100;k=a[g>>0]|0;i=f;return k|0}else{a[g>>0]=a[(c[(c[(c[h>>2]|0)+44>>2]|0)+4>>2]|0)+((c[j>>2]|0)*24|0)+21>>0]|0;k=a[g>>0]|0;i=f;return k|0}}}a[g>>0]=a[(c[h>>2]|0)+1>>0]|0;k=a[g>>0]|0;i=f;return k|0}function Jw(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;k=j+28|0;q=j;n=j+4|0;m=j+8|0;l=j+12|0;g=j+16|0;o=j+20|0;p=j+24|0;c[k>>2]=e;c[q>>2]=f;c[n>>2]=c[c[k>>2]>>2];c[m>>2]=0;c[l>>2]=c[q>>2];while(1){if((c[l>>2]|0)==0){break}c[g>>2]=d[c[l>>2]>>0]|0;if((c[(c[l>>2]|0)+4>>2]&512|0)!=0){break}if((c[g>>2]|0)==38|(c[g>>2]|0)==158){c[l>>2]=c[(c[l>>2]|0)+12>>2];continue}if((c[g>>2]|0)==95){h=9;break}if((c[g>>2]|0)==159){if((d[(c[l>>2]|0)+38>>0]|0)==95){h=9;break}}if((c[(c[l>>2]|0)+44>>2]|0)!=0){if((c[g>>2]|0)==156|(c[g>>2]|0)==154|(c[g>>2]|0)==159|(c[g>>2]|0)==62){h=12;break}}if((c[(c[l>>2]|0)+4>>2]&256|0)==0){break}if((c[(c[l>>2]|0)+12>>2]|0)!=0){if((c[(c[(c[l>>2]|0)+12>>2]|0)+4>>2]&256|0)!=0){c[l>>2]=c[(c[l>>2]|0)+12>>2];continue}}c[l>>2]=c[(c[l>>2]|0)+16>>2]}if((h|0)==9){c[m>>2]=Lw(c[k>>2]|0,a[(c[(c[(c[n>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,0,c[(c[l>>2]|0)+8>>2]|0)|0}else if((h|0)==12){c[o>>2]=b[(c[l>>2]|0)+32>>1]|0;if((c[o>>2]|0)>=0){c[p>>2]=c[(c[(c[(c[l>>2]|0)+44>>2]|0)+4>>2]|0)+((c[o>>2]|0)*24|0)+16>>2];c[m>>2]=xh(c[n>>2]|0,a[(c[(c[(c[n>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[p>>2]|0,0)|0}}if((Mw(c[k>>2]|0,c[m>>2]|0)|0)==0){q=c[m>>2]|0;i=j;return q|0}c[m>>2]=0;q=c[m>>2]|0;i=j;return q|0}function Kw(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+10|0;g=e;h=e+8|0;j=g;c[j>>2]=a;c[j+4>>2]=d;b[h>>1]=40;a=g;d=c[a+4>>2]|0;a:do{if(d>>>0<0|(d|0)==0&(c[a>>2]|0)>>>0<8){j=g;a=c[j+4>>2]|0;if(a>>>0<0|(a|0)==0&(c[j>>2]|0)>>>0<2){b[f>>1]=0;j=b[f>>1]|0;i=e;return j|0}else{while(1){j=g;a=c[j+4>>2]|0;if(!(a>>>0<0|(a|0)==0&(c[j>>2]|0)>>>0<8)){break a}b[h>>1]=(b[h>>1]|0)-10;a=g;a=bL(c[a>>2]|0,c[a+4>>2]|0,1)|0;j=g;c[j>>2]=a;c[j+4>>2]=D}}}else{while(1){j=g;a=c[j+4>>2]|0;if(!(a>>>0>0|(a|0)==0&(c[j>>2]|0)>>>0>255)){break}b[h>>1]=(b[h>>1]|0)+40;a=g;a=eL(c[a>>2]|0,c[a+4>>2]|0,4)|0;j=g;c[j>>2]=a;c[j+4>>2]=D}while(1){j=g;a=c[j+4>>2]|0;if(!(a>>>0>0|(a|0)==0&(c[j>>2]|0)>>>0>15)){break a}b[h>>1]=(b[h>>1]|0)+10;a=g;a=eL(c[a>>2]|0,c[a+4>>2]|0,1)|0;j=g;c[j>>2]=a;c[j+4>>2]=D}}}while(0);b[f>>1]=(b[22888+((c[g>>2]&7)<<1)>>1]|0)+(b[h>>1]|0)-10;j=b[f>>1]|0;i=e;return j|0}function Lw(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+32|0;h=k;m=k+20|0;p=k+24|0;q=k+8|0;n=k+12|0;o=k+16|0;l=k+4|0;c[m>>2]=b;a[p>>0]=e;c[q>>2]=f;c[n>>2]=g;c[l>>2]=c[c[m>>2]>>2];c[o>>2]=c[q>>2];if((c[o>>2]|0)==0){c[o>>2]=xh(c[l>>2]|0,a[p>>0]|0,c[n>>2]|0,0)|0}if((c[o>>2]|0)!=0){if((c[(c[o>>2]|0)+12>>2]|0)==0){j=5}}else{j=5}if((j|0)==5){Nw(c[l>>2]|0,d[p>>0]|0,c[n>>2]|0);c[o>>2]=xh(c[l>>2]|0,a[p>>0]|0,c[n>>2]|0,0)|0}if((c[o>>2]|0)!=0){if((c[(c[o>>2]|0)+12>>2]|0)==0){if((Ow(c[l>>2]|0,c[o>>2]|0)|0)!=0){c[o>>2]=0}}}if((c[o>>2]|0)!=0){q=c[o>>2]|0;i=k;return q|0}q=c[m>>2]|0;c[h>>2]=c[n>>2];bf(q,22904,h);q=c[o>>2]|0;i=k;return q|0}function Mw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;l=e;j=e+4|0;h=e+8|0;k=e+12|0;g=e+16|0;c[l>>2]=b;c[j>>2]=d;if((c[j>>2]|0)!=0){c[h>>2]=c[c[j>>2]>>2];c[k>>2]=c[c[l>>2]>>2];c[g>>2]=Lw(c[l>>2]|0,a[(c[(c[(c[k>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[j>>2]|0,c[h>>2]|0)|0;if((c[g>>2]|0)==0){c[f>>2]=1;b=c[f>>2]|0;i=e;return b|0}}c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}function Nw(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;n=g;k=g+4|0;m=g+8|0;l=g+12|0;j=g+16|0;c[h>>2]=b;c[n>>2]=e;c[k>>2]=f;do{if((c[(c[h>>2]|0)+212>>2]|0)!=0){c[m>>2]=pe(c[h>>2]|0,c[k>>2]|0)|0;if((c[m>>2]|0)!=0){Bb[c[(c[h>>2]|0)+212>>2]&3](c[(c[h>>2]|0)+220>>2]|0,c[h>>2]|0,c[n>>2]|0,c[m>>2]|0);cc(c[h>>2]|0,c[m>>2]|0);break}else{i=g;return}}}while(0);if((c[(c[h>>2]|0)+216>>2]|0)==0){i=g;return}c[j>>2]=Pf(c[h>>2]|0)|0;Qf(c[j>>2]|0,-1,c[k>>2]|0,1,0);c[l>>2]=Rd(c[j>>2]|0,((a[1480]|0)==0?3:2)&255)|0;if((c[l>>2]|0)!=0){Bb[c[(c[h>>2]|0)+216>>2]&3](c[(c[h>>2]|0)+220>>2]|0,c[h>>2]|0,d[(c[(c[(c[h>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[l>>2]|0)}Rf(c[j>>2]|0);i=g;return}function Ow(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;e=f+20|0;j=f;g=f+4|0;h=f+8|0;l=f+12|0;k=f+16|0;c[j>>2]=b;c[g>>2]=d;c[l>>2]=c[c[g>>2]>>2];c[k>>2]=0;while(1){if((c[k>>2]|0)>=3){d=6;break}c[h>>2]=xh(c[j>>2]|0,a[22936+(c[k>>2]|0)>>0]|0,c[l>>2]|0,0)|0;if((c[(c[h>>2]|0)+12>>2]|0)!=0){d=4;break}c[k>>2]=(c[k>>2]|0)+1}if((d|0)==4){b=c[g>>2]|0;l=c[h>>2]|0;c[b+0>>2]=c[l+0>>2];c[b+4>>2]=c[l+4>>2];c[b+8>>2]=c[l+8>>2];c[b+12>>2]=c[l+12>>2];c[b+16>>2]=c[l+16>>2];c[(c[g>>2]|0)+16>>2]=0;c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}else if((d|0)==6){c[e>>2]=1;b=c[e>>2]|0;i=f;return b|0}return 0}function Pw(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;c[d>>2]=a;while(1){if((c[d>>2]|0)!=0){e=(c[(c[d>>2]|0)+4>>2]&4096|0)!=0}else{e=0}a=c[d>>2]|0;if(!e){break}e=c[d>>2]|0;if((c[a+4>>2]&262144|0)!=0){c[d>>2]=c[c[(c[e+20>>2]|0)+4>>2]>>2];continue}else{c[d>>2]=c[e+12>>2];continue}}i=b;return a|0}function Qw(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;h=l+21|0;o=l;k=l+4|0;n=l+8|0;j=l+20|0;m=l+12|0;f=l+16|0;c[o>>2]=b;c[k>>2]=e;c[n>>2]=0;a[j>>0]=99;c[m>>2]=0;if((c[o>>2]|0)==0){a[h>>0]=a[j>>0]|0;b=a[h>>0]|0;i=l;return b|0}a:while(1){if((a[c[o>>2]>>0]|0)==0){break}c[n>>2]=(c[n>>2]<<8)+(d[784+(a[c[o>>2]>>0]&255)>>0]|0);c[o>>2]=(c[o>>2]|0)+1;if((c[n>>2]|0)==1667785074){a[j>>0]=97;c[m>>2]=c[o>>2];continue}if((c[n>>2]|0)==1668050786){a[j>>0]=97;continue}if((c[n>>2]|0)==1952807028){a[j>>0]=97;continue}do{if((c[n>>2]|0)==1651273570){if((a[j>>0]|0)!=99){if((a[j>>0]|0)!=101){break}}a[j>>0]=98;if((a[c[o>>2]>>0]|0)!=40){continue a}c[m>>2]=c[o>>2];continue a}}while(0);if((c[n>>2]|0)==1919246700){if((a[j>>0]|0)==99){a[j>>0]=101;continue}}if((c[n>>2]|0)==1718382433){if((a[j>>0]|0)==99){a[j>>0]=101;continue}}if((c[n>>2]|0)==1685026146){if((a[j>>0]|0)==99){a[j>>0]=101;continue}}if((c[n>>2]&16777215|0)==6909556){g=25;break}}if((g|0)==25){a[j>>0]=100}b:do{if((c[k>>2]|0)!=0){a[c[k>>2]>>0]=1;if((a[j>>0]|0)<=98){if((c[m>>2]|0)==0){a[c[k>>2]>>0]=5;break}while(1){if((a[c[m>>2]>>0]|0)==0){break b}if((a[136+(d[c[m>>2]>>0]|0)>>0]&4|0)!=0){break}c[m>>2]=(c[m>>2]|0)+1}c[f>>2]=0;Wg(c[m>>2]|0,f)|0;b=((c[f>>2]|0)/4|0)+1|0;c[f>>2]=b;c[f>>2]=(c[f>>2]|0)>255?255:b;a[c[k>>2]>>0]=c[f>>2]}}}while(0);a[h>>0]=a[j>>0]|0;b=a[h>>0]|0;i=l;return b|0}function Rw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+48|0;h=e+32|0;f=e;g=e+8|0;c[h>>2]=b;c[f>>2]=d;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[g>>2]=55;c[g+12>>2]=c[h>>2];if((a[(c[h>>2]|0)+22>>0]|0)!=0){c[g+4>>2]=56;Ww(g,c[f>>2]|0)|0}c[g+4>>2]=57;c[g+8>>2]=3;Ww(g,c[f>>2]|0)|0;i=e;return}function Sw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+48|0;j=e+32|0;f=e;h=e+4|0;g=e+8|0;c[j>>2]=a;c[f>>2]=b;c[h>>2]=d;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[g>>2]=58;c[g+4>>2]=59;c[g+12>>2]=c[j>>2];c[g+20>>2]=c[h>>2];Ww(g,c[f>>2]|0)|0;i=e;return}function Tw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+48|0;g=d+32|0;e=d;f=d+8|0;c[g>>2]=a;c[e>>2]=b;c[f+0>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+8>>2]=4;c[f>>2]=55;c[f+12>>2]=c[g>>2];Ww(f,c[e>>2]|0)|0;i=d;return}function Uw(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+32|0;p=l+28|0;o=l;n=l+4|0;g=l+8|0;m=l+12|0;h=l+16|0;k=l+20|0;j=l+24|0;c[p>>2]=d;c[o>>2]=f;if((b[(c[o>>2]|0)+6>>1]&32|0)!=0){i=l;return}d=(c[o>>2]|0)+6|0;b[d>>1]=e[d>>1]|0|32;c[n>>2]=c[(c[p>>2]|0)+12>>2];c[m>>2]=c[(c[o>>2]|0)+32>>2];c[g>>2]=0;c[h>>2]=(c[m>>2]|0)+8;while(1){if((c[g>>2]|0)>=(c[c[m>>2]>>2]|0)){break}c[k>>2]=c[(c[h>>2]|0)+16>>2];if((c[k>>2]|0)!=0){if((a[(c[k>>2]|0)+44>>0]&2|0)!=0){c[j>>2]=c[(c[h>>2]|0)+20>>2];if((c[j>>2]|0)!=0){while(1){if((c[(c[j>>2]|0)+52>>2]|0)==0){break}c[j>>2]=c[(c[j>>2]|0)+52>>2]}Gw(c[n>>2]|0,c[k>>2]|0,c[j>>2]|0)}}}c[g>>2]=(c[g>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+72}i=l;return}function Vw(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function Ww(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;d=e+12|0;g=e;h=e+4|0;f=e+8|0;c[g>>2]=a;c[h>>2]=b;do{if((c[h>>2]|0)!=0){if((c[(c[g>>2]|0)+4>>2]|0)==0){if((c[(c[g>>2]|0)+8>>2]|0)==0){break}}c[f>>2]=0;a=(c[g>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+1;while(1){if((c[h>>2]|0)==0){b=15;break}if((c[(c[g>>2]|0)+4>>2]|0)!=0){c[f>>2]=zb[c[(c[g>>2]|0)+4>>2]&127](c[g>>2]|0,c[h>>2]|0)|0;if((c[f>>2]|0)!=0){b=15;break}}if((Xw(c[g>>2]|0,c[h>>2]|0)|0)!=0){b=11;break}if((Yw(c[g>>2]|0,c[h>>2]|0)|0)!=0){b=11;break}if((c[(c[g>>2]|0)+8>>2]|0)!=0){sb[c[(c[g>>2]|0)+8>>2]&7](c[g>>2]|0,c[h>>2]|0)}c[h>>2]=c[(c[h>>2]|0)+52>>2]}if((b|0)==11){a=(c[g>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+ -1;c[d>>2]=2;a=c[d>>2]|0;i=e;return a|0}else if((b|0)==15){a=(c[g>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+ -1;c[d>>2]=c[f>>2]&2;a=c[d>>2]|0;i=e;return a|0}}}while(0);c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}function Xw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d;g=d+4|0;c[f>>2]=a;c[g>>2]=b;do{if((Zw(c[f>>2]|0,c[c[g>>2]>>2]|0)|0)!=0){c[e>>2]=2}else{if((_w(c[f>>2]|0,c[(c[g>>2]|0)+36>>2]|0)|0)!=0){c[e>>2]=2;break}if((Zw(c[f>>2]|0,c[(c[g>>2]|0)+40>>2]|0)|0)!=0){c[e>>2]=2;break}if((_w(c[f>>2]|0,c[(c[g>>2]|0)+44>>2]|0)|0)!=0){c[e>>2]=2;break}if((Zw(c[f>>2]|0,c[(c[g>>2]|0)+48>>2]|0)|0)!=0){c[e>>2]=2;break}if((_w(c[f>>2]|0,c[(c[g>>2]|0)+60>>2]|0)|0)!=0){c[e>>2]=2;break}if((_w(c[f>>2]|0,c[(c[g>>2]|0)+64>>2]|0)|0)!=0){c[e>>2]=2;break}else{c[e>>2]=0;break}}}while(0);i=d;return c[e>>2]|0}function Yw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;d=e+20|0;f=e;k=e+4|0;j=e+8|0;h=e+12|0;g=e+16|0;c[f>>2]=a;c[k>>2]=b;c[j>>2]=c[(c[k>>2]|0)+32>>2];a:do{if((c[j>>2]|0)!=0){c[h>>2]=c[c[j>>2]>>2];c[g>>2]=(c[j>>2]|0)+8;while(1){if((c[h>>2]|0)<=0){break a}if((Ww(c[f>>2]|0,c[(c[g>>2]|0)+20>>2]|0)|0)!=0){break}c[h>>2]=(c[h>>2]|0)+ -1;c[g>>2]=(c[g>>2]|0)+72}c[d>>2]=2;k=c[d>>2]|0;i=e;return k|0}}while(0);c[d>>2]=0;k=c[d>>2]|0;i=e;return k|0}function Zw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;d=e+16|0;f=e;j=e+4|0;h=e+8|0;g=e+12|0;c[f>>2]=a;c[j>>2]=b;a:do{if((c[j>>2]|0)!=0){c[h>>2]=c[c[j>>2]>>2];c[g>>2]=c[(c[j>>2]|0)+4>>2];while(1){if((c[h>>2]|0)<=0){break a}if((_w(c[f>>2]|0,c[c[g>>2]>>2]|0)|0)!=0){break}c[h>>2]=(c[h>>2]|0)+ -1;c[g>>2]=(c[g>>2]|0)+20}c[d>>2]=2;a=c[d>>2]|0;i=e;return a|0}}while(0);c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}function _w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;h=d;f=d+4|0;g=d+8|0;c[h>>2]=a;c[f>>2]=b;a:do{if((c[f>>2]|0)==0){c[e>>2]=0}else{c[g>>2]=zb[c[c[h>>2]>>2]&127](c[h>>2]|0,c[f>>2]|0)|0;do{if((c[g>>2]|0)==0){if((c[(c[f>>2]|0)+4>>2]&16384|0)==0){if((_w(c[h>>2]|0,c[(c[f>>2]|0)+12>>2]|0)|0)!=0){c[e>>2]=2;break a}if((_w(c[h>>2]|0,c[(c[f>>2]|0)+16>>2]|0)|0)!=0){c[e>>2]=2;break a}h=c[h>>2]|0;b=(c[f>>2]|0)+20|0;if((c[(c[f>>2]|0)+4>>2]&2048|0)!=0){if((Ww(h,c[b>>2]|0)|0)==0){break}c[e>>2]=2;break a}else{if((Zw(h,c[b>>2]|0)|0)==0){break}c[e>>2]=2;break a}}}}while(0);c[e>>2]=c[g>>2]&2}}while(0);i=d;return c[e>>2]|0}function $w(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;h=i;i=i+96|0;p=h;g=h+80|0;t=h+76|0;l=h+72|0;m=h+68|0;k=h+64|0;E=h+60|0;C=h+56|0;B=h+52|0;D=h+48|0;u=h+24|0;y=h+84|0;j=h+8|0;w=h+12|0;q=h+16|0;s=h+44|0;o=h+28|0;n=h+32|0;r=h+36|0;x=h+88|0;z=h+40|0;A=h+20|0;c[t>>2]=e;c[l>>2]=f;c[m>>2]=c[(c[t>>2]|0)+20>>2];c[k>>2]=c[c[m>>2]>>2];if((c[(c[l>>2]|0)+4>>2]&4|0)!=0){c[g>>2]=1;e=c[g>>2]|0;i=h;return e|0}e=(c[l>>2]|0)+4|0;c[e>>2]=c[e>>2]|4;switch(d[c[l>>2]>>0]|0|0){case 27:{c[g>>2]=xx(c[k>>2]|0,0,0,c[(c[l>>2]|0)+8>>2]|0,c[m>>2]|0,c[l>>2]|0)|0;e=c[g>>2]|0;i=h;return e|0};case 153:{c[u>>2]=c[(c[l>>2]|0)+20>>2];if((c[u>>2]|0)!=0){A=c[c[u>>2]>>2]|0}else{A=0}c[y>>2]=A;c[j>>2]=0;c[w>>2]=0;c[q>>2]=0;a[x>>0]=a[(c[(c[(c[c[k>>2]>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;yx(c[k>>2]|0,c[m>>2]|0,23328);c[n>>2]=c[(c[l>>2]|0)+8>>2];c[o>>2]=Ub(c[n>>2]|0)|0;c[r>>2]=rg(c[c[k>>2]>>2]|0,c[n>>2]|0,c[o>>2]|0,c[y>>2]|0,a[x>>0]|0,0)|0;do{if((c[r>>2]|0)==0){c[r>>2]=rg(c[c[k>>2]>>2]|0,c[n>>2]|0,c[o>>2]|0,-2,a[x>>0]|0,0)|0;if((c[r>>2]|0)==0){c[j>>2]=1;break}else{c[w>>2]=1;break}}else{c[q>>2]=(c[(c[r>>2]|0)+12>>2]|0)==0&1;if((b[(c[r>>2]|0)+2>>1]&1024|0)!=0){e=(c[l>>2]|0)+4|0;c[e>>2]=c[e>>2]|266240;if((c[y>>2]|0)!=2){c[(c[l>>2]|0)+28>>2]=62;break}e=zx(c[(c[(c[u>>2]|0)+4>>2]|0)+20>>2]|0)|0;c[(c[l>>2]|0)+28>>2]=e;if((c[(c[l>>2]|0)+28>>2]|0)<0){bf(c[k>>2]|0,23344,p);e=(c[m>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1}}}}while(0);do{if((c[r>>2]|0)!=0){c[s>>2]=Lv(c[k>>2]|0,31,0,c[(c[r>>2]|0)+24>>2]|0,0)|0;if((c[s>>2]|0)==0){if((b[(c[r>>2]|0)+2>>1]&2048|0)==0){break}e=(c[l>>2]|0)+4|0;c[e>>2]=c[e>>2]|524288;break}if((c[s>>2]|0)==1){e=c[k>>2]|0;c[p>>2]=c[(c[r>>2]|0)+24>>2];bf(e,23416,p);e=(c[m>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1}a[c[l>>2]>>0]=101;c[g>>2]=1;e=c[g>>2]|0;i=h;return e|0}}while(0);if((c[q>>2]|0)!=0){if((a[(c[m>>2]|0)+28>>0]&1|0)==0){e=c[k>>2]|0;f=c[n>>2]|0;c[p>>2]=c[o>>2];c[p+4>>2]=f;bf(e,23456,p);e=(c[m>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1;c[q>>2]=0}else{v=30}}else{v=30}do{if((v|0)==30){if((c[j>>2]|0)!=0){if((d[(c[c[k>>2]>>2]|0)+137>>0]|0|0)==0){e=c[k>>2]|0;f=c[n>>2]|0;c[p>>2]=c[o>>2];c[p+4>>2]=f;bf(e,23496,p);e=(c[m>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1;break}}if((c[w>>2]|0)!=0){e=c[k>>2]|0;f=c[n>>2]|0;c[p>>2]=c[o>>2];c[p+4>>2]=f;bf(e,23520,p);e=(c[m>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1}}}while(0);if((c[q>>2]|0)!=0){e=(c[m>>2]|0)+28|0;a[e>>0]=(d[e>>0]|0)&-2}Zw(c[t>>2]|0,c[u>>2]|0)|0;if((c[q>>2]|0)!=0){c[z>>2]=c[m>>2];a[c[l>>2]>>0]=-101;a[(c[l>>2]|0)+38>>0]=0;while(1){if((c[z>>2]|0)==0){break}if(!((Ax(c[l>>2]|0,c[(c[z>>2]|0)+4>>2]|0)|0)!=0^1)){break}e=(c[l>>2]|0)+38|0;a[e>>0]=(a[e>>0]|0)+1<<24>>24;c[z>>2]=c[(c[z>>2]|0)+16>>2]}if((c[z>>2]|0)!=0){e=(c[z>>2]|0)+28|0;a[e>>0]=d[e>>0]|0|2}e=(c[m>>2]|0)+28|0;a[e>>0]=d[e>>0]|0|1}c[g>>2]=1;e=c[g>>2]|0;i=h;return e|0};case 75:case 20:case 119:{if((c[(c[l>>2]|0)+4>>2]&2048|0)!=0){c[A>>2]=c[(c[m>>2]|0)+20>>2];Bx(c[k>>2]|0,c[m>>2]|0,23568);yx(c[k>>2]|0,c[m>>2]|0,23568);Ww(c[t>>2]|0,c[(c[l>>2]|0)+20>>2]|0)|0;if((c[A>>2]|0)!=(c[(c[m>>2]|0)+20>>2]|0)){e=(c[l>>2]|0)+4|0;c[e>>2]=c[e>>2]|32}}break};case 135:{Bx(c[k>>2]|0,c[m>>2]|0,23584);yx(c[k>>2]|0,c[m>>2]|0,23584);break};case 122:{c[D>>2]=c[(c[l>>2]|0)+16>>2];if((d[c[D>>2]>>0]|0|0)==27){c[B>>2]=0;c[C>>2]=c[(c[(c[l>>2]|0)+12>>2]|0)+8>>2];c[E>>2]=c[(c[D>>2]|0)+8>>2]}else{c[B>>2]=c[(c[(c[l>>2]|0)+12>>2]|0)+8>>2];c[C>>2]=c[(c[(c[D>>2]|0)+12>>2]|0)+8>>2];c[E>>2]=c[(c[(c[D>>2]|0)+16>>2]|0)+8>>2]}c[g>>2]=xx(c[k>>2]|0,c[B>>2]|0,c[C>>2]|0,c[E>>2]|0,c[m>>2]|0,c[l>>2]|0)|0;e=c[g>>2]|0;i=h;return e|0};default:{}}if((c[(c[k>>2]|0)+64>>2]|0)!=0){j=1}else{j=(d[(c[c[k>>2]>>2]|0)+64>>0]|0|0)!=0}c[g>>2]=j?2:0;e=c[g>>2]|0;i=h;return e|0}function ax(f,g){f=f|0;g=g|0;var h=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;j=i;i=i+112|0;B=j;h=j+100|0;D=j+96|0;n=j+92|0;o=j+88|0;p=j+56|0;r=j+52|0;z=j+48|0;m=j+44|0;s=j+40|0;t=j+104|0;q=j+16|0;C=j+12|0;l=j+4|0;v=j+8|0;x=j+32|0;y=j+20|0;w=j+24|0;k=j+28|0;A=j+36|0;c[D>>2]=f;c[n>>2]=g;if((b[(c[n>>2]|0)+6>>1]&2|0)!=0){c[h>>2]=1;f=c[h>>2]|0;i=j;return f|0}c[o>>2]=c[(c[D>>2]|0)+20>>2];c[m>>2]=c[(c[D>>2]|0)+12>>2];c[l>>2]=c[c[m>>2]>>2];if((b[(c[n>>2]|0)+6>>1]&16|0)==0){Ew(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0);if((c[(c[m>>2]|0)+64>>2]|0)!=0){k=1}else{k=(d[(c[l>>2]|0)+64>>0]|0)!=0}c[h>>2]=k?2:1;f=c[h>>2]|0;i=j;return f|0}c[r>>2]=(c[(c[n>>2]|0)+52>>2]|0)!=0&1;c[z>>2]=0;c[C>>2]=c[n>>2];a:while(1){if((c[n>>2]|0)==0){u=59;break}f=(c[n>>2]|0)+6|0;b[f>>1]=e[f>>1]|2;c[p+0>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16>>2]=0;c[p+20>>2]=0;c[p+24>>2]=0;c[p+28>>2]=0;c[p>>2]=c[m>>2];if((bx(p,c[(c[n>>2]|0)+60>>2]|0)|0)!=0){u=11;break}if((bx(p,c[(c[n>>2]|0)+64>>2]|0)|0)!=0){u=11;break}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[c[(c[n>>2]|0)+32>>2]>>2]|0)){break}c[v>>2]=(c[(c[n>>2]|0)+32>>2]|0)+8+((c[t>>2]|0)*72|0);if((c[(c[v>>2]|0)+20>>2]|0)!=0){c[y>>2]=0;c[w>>2]=c[(c[m>>2]|0)+492>>2];c[x>>2]=c[o>>2];while(1){if((c[x>>2]|0)==0){break}c[y>>2]=(c[y>>2]|0)+(c[(c[x>>2]|0)+20>>2]|0);c[x>>2]=c[(c[x>>2]|0)+16>>2]}if((c[(c[v>>2]|0)+8>>2]|0)!=0){c[(c[m>>2]|0)+492>>2]=c[(c[v>>2]|0)+8>>2]}Sw(c[m>>2]|0,c[(c[v>>2]|0)+20>>2]|0,c[o>>2]|0);c[(c[m>>2]|0)+492>>2]=c[w>>2];if((c[(c[m>>2]|0)+64>>2]|0)!=0){u=22;break a}if((d[(c[l>>2]|0)+64>>0]|0)!=0){u=22;break a}c[x>>2]=c[o>>2];while(1){if((c[x>>2]|0)==0){break}c[y>>2]=(c[y>>2]|0)-(c[(c[x>>2]|0)+20>>2]|0);c[x>>2]=c[(c[x>>2]|0)+16>>2]}f=(c[v>>2]|0)+37|0;a[f>>0]=a[f>>0]&-3|((c[y>>2]|0)!=0&1)<<1&255}c[t>>2]=(c[t>>2]|0)+1}a[p+28>>0]=1;c[p+4>>2]=c[(c[n>>2]|0)+32>>2];c[p+16>>2]=c[o>>2];c[s>>2]=c[c[n>>2]>>2];c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[c[s>>2]>>2]|0)){break}c[k>>2]=c[(c[(c[s>>2]|0)+4>>2]|0)+((c[t>>2]|0)*20|0)>>2];if((bx(p,c[k>>2]|0)|0)!=0){u=31;break a}c[t>>2]=(c[t>>2]|0)+1}c[q>>2]=c[(c[n>>2]|0)+40>>2];if((c[q>>2]|0)!=0){u=35}else{if((a[p+28>>0]&2|0)!=0){u=35}else{f=p+28|0;a[f>>0]=d[f>>0]&-2}}if((u|0)==35){u=0;f=(c[n>>2]|0)+6|0;b[f>>1]=e[f>>1]|4}if((c[(c[n>>2]|0)+44>>2]|0)!=0){if((c[q>>2]|0)==0){u=39;break}}c[p+8>>2]=c[c[n>>2]>>2];if((bx(p,c[(c[n>>2]|0)+44>>2]|0)|0)!=0){u=41;break}if((bx(p,c[(c[n>>2]|0)+36>>2]|0)|0)!=0){u=43;break}c[p+16>>2]=0;f=p+28|0;a[f>>0]=d[f>>0]|1;if((c[r>>2]|0)==0){if((cx(p,c[n>>2]|0,c[(c[n>>2]|0)+48>>2]|0,23008)|0)!=0){u=46;break}}if((a[(c[l>>2]|0)+64>>0]|0)!=0){u=48;break}b:do{if((c[q>>2]|0)!=0){if((cx(p,c[n>>2]|0,c[q>>2]|0,23016)|0)!=0){u=52;break a}if((d[(c[l>>2]|0)+64>>0]|0)!=0){u=52;break a}c[t>>2]=0;c[A>>2]=c[(c[q>>2]|0)+4>>2];while(1){if((c[t>>2]|0)>=(c[c[q>>2]>>2]|0)){break b}if((c[(c[c[A>>2]>>2]|0)+4>>2]&2|0)!=0){u=56;break a}c[t>>2]=(c[t>>2]|0)+1;c[A>>2]=(c[A>>2]|0)+20}}}while(0);c[n>>2]=c[(c[n>>2]|0)+52>>2];c[z>>2]=(c[z>>2]|0)+1}switch(u|0){case 11:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 22:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 31:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 39:{bf(c[m>>2]|0,22960,B);c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 41:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 43:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 46:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 48:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 52:{c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 56:{bf(c[m>>2]|0,23024,B);c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0};case 59:{if((c[r>>2]|0)!=0){if((dx(c[m>>2]|0,c[C>>2]|0)|0)!=0){c[h>>2]=2;f=c[h>>2]|0;i=j;return f|0}}c[h>>2]=1;f=c[h>>2]|0;i=j;return f|0}}return 0}function bx(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;h=g+40|0;m=g;l=g+4|0;n=g+44|0;j=g+16|0;k=g+8|0;c[m>>2]=b;c[l>>2]=e;if((c[l>>2]|0)==0){c[h>>2]=0;b=c[h>>2]|0;i=g;return b|0}c[k>>2]=c[c[m>>2]>>2];if((wx(c[k>>2]|0,(c[(c[l>>2]|0)+24>>2]|0)+(c[(c[c[m>>2]>>2]|0)+460>>2]|0)|0)|0)!=0){c[h>>2]=1;b=c[h>>2]|0;i=g;return b|0}b=(c[k>>2]|0)+460|0;c[b>>2]=(c[b>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);a[n>>0]=a[(c[m>>2]|0)+28>>0]&2;b=(c[m>>2]|0)+28|0;a[b>>0]=d[b>>0]&-3;c[j+0>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0;c[j+20>>2]=0;c[j>>2]=58;c[j+4>>2]=59;c[j+12>>2]=c[c[m>>2]>>2];c[j+20>>2]=c[m>>2];_w(j,c[l>>2]|0)|0;b=(c[c[m>>2]>>2]|0)+460|0;c[b>>2]=(c[b>>2]|0)-(c[(c[l>>2]|0)+24>>2]|0);if((c[(c[m>>2]|0)+24>>2]|0)>0){f=7}else{if((c[(c[j+12>>2]|0)+64>>2]|0)>0){f=7}}if((f|0)==7){b=(c[l>>2]|0)+4|0;c[b>>2]=c[b>>2]|8}if((a[(c[m>>2]|0)+28>>0]&2|0)!=0){b=(c[l>>2]|0)+4|0;c[b>>2]=c[b>>2]|2}else{if((a[n>>0]|0)!=0){b=(c[m>>2]|0)+28|0;a[b>>0]=d[b>>0]|2}}c[h>>2]=(c[(c[l>>2]|0)+4>>2]&8|0)!=0&1;b=c[h>>2]|0;i=g;return b|0}function cx(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=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;r=i;i=i+64|0;k=r+48|0;v=r+44|0;o=r+40|0;t=r+36|0;h=r+32|0;s=r+28|0;u=r+24|0;l=r+16|0;m=r+12|0;n=r+8|0;w=r+4|0;q=r;p=r+20|0;c[v>>2]=d;c[o>>2]=e;c[t>>2]=f;c[h>>2]=g;if((c[t>>2]|0)==0){c[k>>2]=0;d=c[k>>2]|0;i=r;return d|0}c[w>>2]=c[c[c[o>>2]>>2]>>2];c[n>>2]=c[c[v>>2]>>2];c[s>>2]=0;c[m>>2]=c[(c[t>>2]|0)+4>>2];a:while(1){if((c[s>>2]|0)>=(c[c[t>>2]>>2]|0)){j=20;break}c[q>>2]=c[c[m>>2]>>2];c[p>>2]=Pw(c[q>>2]|0)|0;if((a[c[h>>2]>>0]|0)!=71){c[l>>2]=gx(c[n>>2]|0,c[c[o>>2]>>2]|0,c[p>>2]|0)|0;if((c[l>>2]|0)>0){b[(c[m>>2]|0)+16>>1]=c[l>>2]}else{j=8}}else{j=8}b:do{if((j|0)==8){j=0;if((ex(c[p>>2]|0,l)|0)!=0){if((c[l>>2]|0)<1|(c[l>>2]|0)>65535){j=10;break a}b[(c[m>>2]|0)+16>>1]=c[l>>2];break}b[(c[m>>2]|0)+16>>1]=0;if((bx(c[v>>2]|0,c[q>>2]|0)|0)!=0){j=13;break a}c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[c[c[o>>2]>>2]>>2]|0)){break b}if((jx(c[q>>2]|0,c[(c[(c[c[o>>2]>>2]|0)+4>>2]|0)+((c[u>>2]|0)*20|0)>>2]|0,-1)|0)==0){b[(c[m>>2]|0)+16>>1]=(c[u>>2]|0)+1}c[u>>2]=(c[u>>2]|0)+1}}}while(0);c[s>>2]=(c[s>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+20}if((j|0)==10){fx(c[n>>2]|0,c[h>>2]|0,(c[s>>2]|0)+1|0,c[w>>2]|0);c[k>>2]=1;d=c[k>>2]|0;i=r;return d|0}else if((j|0)==13){c[k>>2]=1;d=c[k>>2]|0;i=r;return d|0}else if((j|0)==20){c[k>>2]=rx(c[n>>2]|0,c[o>>2]|0,c[t>>2]|0,c[h>>2]|0)|0;d=c[k>>2]|0;i=r;return d|0}return 0}function dx(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=i;i=i+64|0;h=m;k=m+48|0;g=m+44|0;o=m+40|0;f=m+36|0;l=m+32|0;j=m+28|0;s=m+52|0;n=m+16|0;p=m+12|0;q=m+8|0;r=m+4|0;t=m+20|0;u=m+24|0;c[g>>2]=d;c[o>>2]=e;c[n>>2]=1;c[l>>2]=c[(c[o>>2]|0)+48>>2];if((c[l>>2]|0)==0){c[k>>2]=0;d=c[k>>2]|0;i=m;return d|0}c[s>>2]=c[c[g>>2]>>2];if((c[c[l>>2]>>2]|0)>(c[(c[s>>2]|0)+96>>2]|0)){bf(c[g>>2]|0,23088,h);c[k>>2]=1;d=c[k>>2]|0;i=m;return d|0}c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[l>>2]>>2]|0)){break}d=(c[(c[l>>2]|0)+4>>2]|0)+((c[f>>2]|0)*20|0)+13|0;a[d>>0]=a[d>>0]&-2;c[f>>2]=(c[f>>2]|0)+1}c[(c[o>>2]|0)+56>>2]=0;while(1){if((c[(c[o>>2]|0)+52>>2]|0)==0){break}c[(c[(c[o>>2]|0)+52>>2]|0)+56>>2]=c[o>>2];c[o>>2]=c[(c[o>>2]|0)+52>>2]}a:while(1){if((c[o>>2]|0)==0){n=34;break}if((c[n>>2]|0)==0){n=34;break}c[n>>2]=0;c[j>>2]=c[c[o>>2]>>2];c[f>>2]=0;c[p>>2]=c[(c[l>>2]|0)+4>>2];while(1){if((c[f>>2]|0)>=(c[c[l>>2]>>2]|0)){break}c[q>>2]=-1;do{if((a[(c[p>>2]|0)+13>>0]&1|0)==0){c[r>>2]=Pw(c[c[p>>2]>>2]|0)|0;if((ex(c[r>>2]|0,q)|0)!=0){if((c[q>>2]|0)<=0){n=19;break a}if((c[q>>2]|0)>(c[c[j>>2]>>2]|0)){n=19;break a}}else{c[q>>2]=gx(c[g>>2]|0,c[j>>2]|0,c[r>>2]|0)|0;if((c[q>>2]|0)==0){c[t>>2]=hx(c[s>>2]|0,c[r>>2]|0,0)|0;if((a[(c[s>>2]|0)+64>>0]|0)==0){c[q>>2]=ix(c[g>>2]|0,c[o>>2]|0,c[t>>2]|0)|0}gu(c[s>>2]|0,c[t>>2]|0)}}if((c[q>>2]|0)<=0){c[n>>2]=1;break}c[u>>2]=Su(c[s>>2]|0,132,0)|0;if((c[u>>2]|0)==0){n=26;break a}d=(c[u>>2]|0)+4|0;c[d>>2]=c[d>>2]|1024;c[(c[u>>2]|0)+8>>2]=c[q>>2];d=c[u>>2]|0;e=c[p>>2]|0;if((c[c[p>>2]>>2]|0)==(c[r>>2]|0)){c[e>>2]=d}else{c[(c[e>>2]|0)+12>>2]=d}gu(c[s>>2]|0,c[r>>2]|0);b[(c[p>>2]|0)+16>>1]=c[q>>2];d=(c[p>>2]|0)+13|0;a[d>>0]=a[d>>0]&-2|1}}while(0);c[f>>2]=(c[f>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+20}c[o>>2]=c[(c[o>>2]|0)+56>>2]}if((n|0)==19){fx(c[g>>2]|0,23008,(c[f>>2]|0)+1|0,c[c[j>>2]>>2]|0);c[k>>2]=1;d=c[k>>2]|0;i=m;return d|0}else if((n|0)==26){c[k>>2]=1;d=c[k>>2]|0;i=m;return d|0}else if((n|0)==34){c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[l>>2]>>2]|0)){n=39;break}if((a[(c[(c[l>>2]|0)+4>>2]|0)+((c[f>>2]|0)*20|0)+13>>0]&1|0)==0){n=37;break}c[f>>2]=(c[f>>2]|0)+1}if((n|0)==37){d=c[g>>2]|0;c[h>>2]=(c[f>>2]|0)+1;bf(d,23128,h);c[k>>2]=1;d=c[k>>2]|0;i=m;return d|0}else if((n|0)==39){c[k>>2]=0;d=c[k>>2]|0;i=m;return d|0}}return 0}function ex(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;k=e;g=e+4|0;h=e+8|0;j=e+12|0;c[k>>2]=a;c[g>>2]=b;c[h>>2]=0;b=c[k>>2]|0;if((c[(c[k>>2]|0)+4>>2]&1024|0)!=0){c[c[g>>2]>>2]=c[b+8>>2];c[f>>2]=1;a=c[f>>2]|0;i=e;return a|0}b=d[b>>0]|0;if((b|0)==157){if((ex(c[(c[k>>2]|0)+12>>2]|0,j)|0)!=0){c[c[g>>2]>>2]=0-(c[j>>2]|0);c[h>>2]=1}}else if((b|0)==158){c[h>>2]=ex(c[(c[k>>2]|0)+12>>2]|0,c[g>>2]|0)|0}c[f>>2]=c[h>>2];a=c[f>>2]|0;i=e;return a|0}function fx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f;l=f+24|0;k=f+12|0;h=f+16|0;j=f+20|0;c[l>>2]=a;c[k>>2]=b;c[h>>2]=d;c[j>>2]=e;a=c[l>>2]|0;d=c[k>>2]|0;b=c[j>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=d;c[g+8>>2]=b;bf(a,23192,g);i=f;return}function gx(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;f=g+24|0;k=g+4|0;m=g+8|0;l=g+12|0;j=g+16|0;h=g+20|0;c[g>>2]=a;c[k>>2]=b;c[m>>2]=e;a:do{if((d[c[m>>2]>>0]|0|0)==27){c[j>>2]=c[(c[m>>2]|0)+8>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[c[k>>2]>>2]|0)){break a}c[h>>2]=c[(c[(c[k>>2]|0)+4>>2]|0)+((c[l>>2]|0)*20|0)+4>>2];if((c[h>>2]|0)!=0){if((Dc(c[h>>2]|0,c[j>>2]|0)|0)==0){break}}c[l>>2]=(c[l>>2]|0)+1}c[f>>2]=(c[l>>2]|0)+1;a=c[f>>2]|0;i=g;return a|0}}while(0);c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}function hx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=lx(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0,0)|0;i=e;return a|0}function ix(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+80|0;g=f+44|0;p=f+60|0;q=f+56|0;k=f+52|0;j=f+48|0;h=f+40|0;o=f+8|0;m=f+4|0;l=f;n=f+64|0;c[p>>2]=b;c[q>>2]=d;c[k>>2]=e;c[h>>2]=c[c[q>>2]>>2];c[o+0>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[o+20>>2]=0;c[o+24>>2]=0;c[o+28>>2]=0;c[o>>2]=c[p>>2];c[o+4>>2]=c[(c[q>>2]|0)+32>>2];c[o+8>>2]=c[h>>2];a[o+28>>0]=1;c[o+24>>2]=0;c[m>>2]=c[c[p>>2]>>2];a[n>>0]=a[(c[m>>2]|0)+67>>0]|0;a[(c[m>>2]|0)+67>>0]=1;c[l>>2]=bx(o,c[k>>2]|0)|0;a[(c[m>>2]|0)+67>>0]=a[n>>0]|0;if((c[l>>2]|0)!=0){c[g>>2]=0;q=c[g>>2]|0;i=f;return q|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[c[h>>2]>>2]|0)){h=8;break}q=(jx(c[(c[(c[h>>2]|0)+4>>2]|0)+((c[j>>2]|0)*20|0)>>2]|0,c[k>>2]|0,-1)|0)<2;e=(c[j>>2]|0)+1|0;if(q){h=6;break}c[j>>2]=e}if((h|0)==6){c[g>>2]=e;q=c[g>>2]|0;i=f;return q|0}else if((h|0)==8){c[g>>2]=0;q=c[g>>2]|0;i=f;return q|0}return 0}function jx(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;l=h+16|0;j=h;k=h+4|0;g=h+8|0;m=h+12|0;c[j>>2]=a;c[k>>2]=e;c[g>>2]=f;if((c[j>>2]|0)!=0){if((c[k>>2]|0)!=0){c[m>>2]=c[(c[j>>2]|0)+4>>2]|c[(c[k>>2]|0)+4>>2];f=c[j>>2]|0;if((c[m>>2]&1024|0)!=0){if((c[f+4>>2]&c[(c[k>>2]|0)+4>>2]&1024|0)!=0){if((c[(c[j>>2]|0)+8>>2]|0)==(c[(c[k>>2]|0)+8>>2]|0)){c[l>>2]=0;a=c[l>>2]|0;i=h;return a|0}}c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}e=d[c[j>>2]>>0]|0;if((d[f>>0]|0)!=(d[c[k>>2]>>0]|0)){if((e|0)==95){if((jx(c[(c[j>>2]|0)+12>>2]|0,c[k>>2]|0,c[g>>2]|0)|0)<2){c[l>>2]=1;a=c[l>>2]|0;i=h;return a|0}}if((d[c[k>>2]>>0]|0)==95){if((jx(c[j>>2]|0,c[(c[k>>2]|0)+12>>2]|0,c[g>>2]|0)|0)<2){c[l>>2]=1;a=c[l>>2]|0;i=h;return a|0}}c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((e|0)!=154){if((d[c[j>>2]>>0]|0)!=156){if((c[(c[j>>2]|0)+8>>2]|0)!=0){if((YK(c[(c[j>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0)!=0){c[l>>2]=(d[c[j>>2]>>0]|0)==95?1:2;a=c[l>>2]|0;i=h;return a|0}}}}if((c[(c[j>>2]|0)+4>>2]&16|0)!=(c[(c[k>>2]|0)+4>>2]&16|0)){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}do{if((c[m>>2]&16384|0)==0){if((c[m>>2]&2048|0)!=0){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((jx(c[(c[j>>2]|0)+12>>2]|0,c[(c[k>>2]|0)+12>>2]|0,c[g>>2]|0)|0)!=0){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((jx(c[(c[j>>2]|0)+16>>2]|0,c[(c[k>>2]|0)+16>>2]|0,c[g>>2]|0)|0)!=0){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((kx(c[(c[j>>2]|0)+20>>2]|0,c[(c[k>>2]|0)+20>>2]|0,c[g>>2]|0)|0)!=0){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((c[m>>2]&8192|0)==0){if((b[(c[j>>2]|0)+32>>1]|0)!=(b[(c[k>>2]|0)+32>>1]|0)){c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}if((c[(c[j>>2]|0)+28>>2]|0)!=(c[(c[k>>2]|0)+28>>2]|0)){if((c[(c[j>>2]|0)+28>>2]|0)==(c[g>>2]|0)){if((c[(c[k>>2]|0)+28>>2]|0)<0){break}}c[l>>2]=2;a=c[l>>2]|0;i=h;return a|0}}}}while(0);c[l>>2]=0;a=c[l>>2]|0;i=h;return a|0}}c[l>>2]=(c[k>>2]|0)==(c[j>>2]|0)?0:2;a=c[l>>2]|0;i=h;return a|0}function kx(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;f=g+24|0;h=g;n=g+4|0;l=g+8|0;m=g+12|0;j=g+16|0;k=g+20|0;c[h>>2]=a;c[n>>2]=b;c[l>>2]=e;if((c[h>>2]|0)==0){if((c[n>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}}if((c[h>>2]|0)!=0){if((c[n>>2]|0)!=0){if((c[c[h>>2]>>2]|0)!=(c[c[n>>2]>>2]|0)){c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[c[h>>2]>>2]|0)){h=16;break}c[j>>2]=c[(c[(c[h>>2]|0)+4>>2]|0)+((c[m>>2]|0)*20|0)>>2];c[k>>2]=c[(c[(c[n>>2]|0)+4>>2]|0)+((c[m>>2]|0)*20|0)>>2];if((d[(c[(c[h>>2]|0)+4>>2]|0)+((c[m>>2]|0)*20|0)+12>>0]|0|0)!=(d[(c[(c[n>>2]|0)+4>>2]|0)+((c[m>>2]|0)*20|0)+12>>0]|0|0)){h=12;break}if((jx(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)!=0){h=14;break}c[m>>2]=(c[m>>2]|0)+1}if((h|0)==12){c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}else if((h|0)==14){c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}else if((h|0)==16){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}}}c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}function lx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;j=i;i=i+64|0;m=j+48|0;h=j+44|0;k=j+40|0;l=j+36|0;f=j+32|0;n=j+28|0;g=j+24|0;p=j+16|0;o=j+12|0;r=j+8|0;u=j+4|0;q=j;s=j+20|0;c[m>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[f>>2]=0;if((c[h>>2]|0)==0){a=c[f>>2]|0;i=j;return a|0}c[n>>2]=c[k>>2]&1;c[p>>2]=0;if((c[l>>2]|0)!=0){c[g>>2]=c[c[l>>2]>>2];c[p>>2]=32768}else{a=c[m>>2]|0;c[g>>2]=$e(a,mx(c[h>>2]|0,c[k>>2]|0)|0)|0}c[f>>2]=c[g>>2];if((c[f>>2]|0)==0){a=c[f>>2]|0;i=j;return a|0}c[o>>2]=nx(c[h>>2]|0,c[k>>2]|0)|0;c[r>>2]=c[o>>2]&4095;if((c[(c[h>>2]|0)+4>>2]&1024|0)!=0){t=9}else{if((c[(c[h>>2]|0)+8>>2]|0)!=0){c[u>>2]=(Ub(c[(c[h>>2]|0)+8>>2]|0)|0)+1}else{t=9}}if((t|0)==9){c[u>>2]=0}if((c[n>>2]|0)!=0){fL(c[g>>2]|0,c[h>>2]|0,c[r>>2]|0)|0}else{c[q>>2]=ox(c[h>>2]|0)|0;fL(c[g>>2]|0,c[h>>2]|0,c[q>>2]|0)|0;aL((c[g>>2]|0)+(c[q>>2]|0)|0,0,48-(c[q>>2]|0)|0)|0}a=(c[f>>2]|0)+4|0;c[a>>2]=c[a>>2]&-122881;a=(c[f>>2]|0)+4|0;c[a>>2]=c[a>>2]|c[o>>2]&24576;a=(c[f>>2]|0)+4|0;c[a>>2]=c[a>>2]|c[p>>2];if((c[u>>2]|0)!=0){a=(c[g>>2]|0)+(c[r>>2]|0)|0;c[(c[f>>2]|0)+8>>2]=a;c[s>>2]=a;fL(c[s>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[u>>2]|0)|0}do{if(0==((c[(c[h>>2]|0)+4>>2]|c[(c[f>>2]|0)+4>>2])&16384|0)){p=c[m>>2]|0;o=(c[h>>2]|0)+20|0;if((c[(c[h>>2]|0)+4>>2]&2048|0)!=0){a=Bw(p,c[o>>2]|0,c[n>>2]|0)|0;c[(c[f>>2]|0)+20>>2]=a;break}else{a=px(p,c[o>>2]|0,c[n>>2]|0)|0;c[(c[f>>2]|0)+20>>2]=a;break}}}while(0);n=c[h>>2]|0;if((c[(c[f>>2]|0)+4>>2]&24576|0)==0){if((c[n+4>>2]&16384|0)!=0){a=c[f>>2]|0;i=j;return a|0}a=hx(c[m>>2]|0,c[(c[h>>2]|0)+12>>2]|0,0)|0;c[(c[f>>2]|0)+12>>2]=a;a=hx(c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0,0)|0;c[(c[f>>2]|0)+16>>2]=a;a=c[f>>2]|0;i=j;return a|0}a=qx(n,c[k>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+a;if((c[(c[f>>2]|0)+4>>2]&8192|0)!=0){a=lx(c[m>>2]|0,c[(c[h>>2]|0)+12>>2]|0,1,g)|0;c[(c[f>>2]|0)+12>>2]=a;a=lx(c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0,1,g)|0;c[(c[f>>2]|0)+16>>2]=a}if((c[l>>2]|0)==0){a=c[f>>2]|0;i=j;return a|0}c[c[l>>2]>>2]=c[g>>2];a=c[f>>2]|0;i=j;return a|0}function mx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=0;if((c[f>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[e>>2]=qx(c[f>>2]|0,c[g>>2]|0)|0;if((c[g>>2]&1|0)==0){a=c[e>>2]|0;i=d;return a|0}a=mx(c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0;a=a+(mx(c[(c[f>>2]|0)+16>>2]|0,c[g>>2]|0)|0)|0;c[e>>2]=(c[e>>2]|0)+a;a=c[e>>2]|0;i=d;return a|0}function nx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;do{if(0==(c[g>>2]&1|0)){c[e>>2]=48}else{if((c[(c[f>>2]|0)+12>>2]|0)==0){if((c[(c[f>>2]|0)+20>>2]|0)==0){c[e>>2]=16396;break}}c[e>>2]=8220}}while(0);i=d;return c[e>>2]|0}function ox(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;do{if((c[(c[e>>2]|0)+4>>2]&16384|0)!=0){c[d>>2]=12}else{if((c[(c[e>>2]|0)+4>>2]&8192|0)!=0){c[d>>2]=28;break}else{c[d>>2]=48;break}}}while(0);i=b;return c[d>>2]|0}function px(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+48|0;h=m+32|0;j=m+28|0;l=m+24|0;q=m+20|0;k=m+16|0;o=m+8|0;g=m+4|0;n=m;p=m+12|0;c[j>>2]=b;c[l>>2]=e;c[q>>2]=f;if((c[l>>2]|0)==0){c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}c[k>>2]=$e(c[j>>2]|0,8)|0;if((c[k>>2]|0)==0){c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}b=c[c[l>>2]>>2]|0;c[n>>2]=b;c[c[k>>2]>>2]=b;a:do{if((c[q>>2]&1|0)==0){c[n>>2]=1;while(1){if((c[n>>2]|0)>=(c[c[l>>2]>>2]|0)){break a}c[n>>2]=(c[n>>2]|0)+(c[n>>2]|0)}}}while(0);b=$e(c[j>>2]|0,(c[n>>2]|0)*20|0)|0;c[o>>2]=b;c[(c[k>>2]|0)+4>>2]=b;if((c[o>>2]|0)==0){cc(c[j>>2]|0,c[k>>2]|0);c[h>>2]=0;b=c[h>>2]|0;i=m;return b|0}c[g>>2]=c[(c[l>>2]|0)+4>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[c[l>>2]>>2]|0)){break}c[p>>2]=c[c[g>>2]>>2];b=hx(c[j>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;c[c[o>>2]>>2]=b;b=pe(c[j>>2]|0,c[(c[g>>2]|0)+4>>2]|0)|0;c[(c[o>>2]|0)+4>>2]=b;b=pe(c[j>>2]|0,c[(c[g>>2]|0)+8>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=b;a[(c[o>>2]|0)+12>>0]=a[(c[g>>2]|0)+12>>0]|0;b=(c[o>>2]|0)+13|0;a[b>>0]=a[b>>0]&-2;b=(c[o>>2]|0)+13|0;a[b>>0]=a[b>>0]&-3|((d[(c[g>>2]|0)+13>>0]|0)>>>1&1&1)<<1&255;b=(c[o>>2]|0)+16|0;e=(c[g>>2]|0)+16|0;c[b+0>>2]=c[e+0>>2];c[n>>2]=(c[n>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+20;c[g>>2]=(c[g>>2]|0)+20}c[h>>2]=c[k>>2];b=c[h>>2]|0;i=m;return b|0}function qx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=(nx(c[f>>2]|0,c[g>>2]|0)|0)&4095;if((c[(c[f>>2]|0)+4>>2]&1024|0)==0){if((c[(c[f>>2]|0)+8>>2]|0)!=0){g=(Ub(c[(c[f>>2]|0)+8>>2]|0)|0)+1|0;c[e>>2]=(c[e>>2]|0)+g}}i=d;return(c[e>>2]|0)+7&-8|0}function rx(a,f,g,h){a=a|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=i;i=i+48|0;r=m;l=m+32|0;o=m+28|0;s=m+24|0;p=m+20|0;k=m+36|0;j=m+8|0;t=m+4|0;n=m+12|0;q=m+16|0;c[o>>2]=a;c[s>>2]=f;c[p>>2]=g;c[k>>2]=h;c[t>>2]=c[c[o>>2]>>2];if((c[p>>2]|0)!=0){if((d[(c[c[o>>2]>>2]|0)+64>>0]|0)==0){if((c[c[p>>2]>>2]|0)>(c[(c[t>>2]|0)+96>>2]|0)){a=c[o>>2]|0;c[r>>2]=c[k>>2];bf(a,23248,r);c[l>>2]=1;a=c[l>>2]|0;i=m;return a|0}c[n>>2]=c[c[s>>2]>>2];c[j>>2]=0;c[q>>2]=c[(c[p>>2]|0)+4>>2];while(1){if((c[j>>2]|0)>=(c[c[p>>2]>>2]|0)){o=13;break}if((b[(c[q>>2]|0)+16>>1]|0)!=0){r=c[o>>2]|0;if((e[(c[q>>2]|0)+16>>1]|0)>(c[c[n>>2]>>2]|0)){o=10;break}sx(r,c[n>>2]|0,(e[(c[q>>2]|0)+16>>1]|0)-1|0,c[c[q>>2]>>2]|0,c[k>>2]|0,0)}c[j>>2]=(c[j>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+20}if((o|0)==10){fx(r,c[k>>2]|0,(c[j>>2]|0)+1|0,c[c[n>>2]>>2]|0);c[l>>2]=1;a=c[l>>2]|0;i=m;return a|0}else if((o|0)==13){c[l>>2]=0;a=c[l>>2]|0;i=m;return a|0}}}c[l>>2]=0;a=c[l>>2]|0;i=m;return a|0}function sx(f,g,h,j,k,l){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;p=i;i=i+48|0;r=p+32|0;u=p+28|0;q=p+24|0;n=p+20|0;t=p+16|0;s=p+8|0;v=p+4|0;o=p;m=p+12|0;c[r>>2]=f;c[u>>2]=g;c[q>>2]=h;c[n>>2]=j;c[t>>2]=k;c[s>>2]=l;c[v>>2]=c[(c[(c[u>>2]|0)+4>>2]|0)+((c[q>>2]|0)*20|0)>>2];c[m>>2]=c[c[r>>2]>>2];c[o>>2]=hx(c[m>>2]|0,c[v>>2]|0,0)|0;if((c[o>>2]|0)==0){i=p;return}if((d[c[v>>2]>>0]|0)!=154){if((a[c[t>>2]>>0]|0)!=71){tx(c[o>>2]|0,c[s>>2]|0);c[o>>2]=Bu(c[r>>2]|0,24,c[o>>2]|0,0,0)|0;if((c[o>>2]|0)==0){i=p;return}f=(c[o>>2]|0)+4|0;c[f>>2]=c[f>>2]|4096;if((e[(c[(c[u>>2]|0)+4>>2]|0)+((c[q>>2]|0)*20|0)+18>>1]|0)==0){g=(c[r>>2]|0)+456|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;b[(c[(c[u>>2]|0)+4>>2]|0)+((c[q>>2]|0)*20|0)+18>>1]=f}c[(c[o>>2]|0)+28>>2]=e[(c[(c[u>>2]|0)+4>>2]|0)+((c[q>>2]|0)*20|0)+18>>1]|0}}if((d[c[n>>2]>>0]|0)==95){c[o>>2]=ux(c[r>>2]|0,c[o>>2]|0,c[(c[n>>2]|0)+8>>2]|0)|0}r=(c[n>>2]|0)+4|0;c[r>>2]=c[r>>2]|32768;gu(c[m>>2]|0,c[n>>2]|0);r=(c[n>>2]|0)+0|0;l=(c[o>>2]|0)+0|0;q=r+48|0;do{c[r>>2]=c[l>>2];r=r+4|0;l=l+4|0}while((r|0)<(q|0));if((c[(c[n>>2]|0)+4>>2]&1024|0)==0){if((c[(c[n>>2]|0)+8>>2]|0)!=0){f=pe(c[m>>2]|0,c[(c[n>>2]|0)+8>>2]|0)|0;c[(c[n>>2]|0)+8>>2]=f;f=(c[n>>2]|0)+4|0;c[f>>2]=c[f>>2]|65536}}cc(c[m>>2]|0,c[o>>2]|0);i=p;return}function tx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+48|0;g=d+32|0;f=d;e=d+8|0;c[g>>2]=a;c[f>>2]=b;if((c[f>>2]|0)<=0){i=d;return}c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e>>2]=60;c[e+20>>2]=c[f>>2];_w(e,c[g>>2]|0)|0;i=d;return}function ux(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+16|0;g=e;j=e+4|0;f=e+8|0;c[h>>2]=a;c[g>>2]=b;c[j>>2]=d;c[f>>2]=c[j>>2];c[f+4>>2]=Ub(c[f>>2]|0)|0;a=dv(c[h>>2]|0,c[g>>2]|0,f)|0;i=e;return a|0}function vx(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;h=f+4|0;g=f;c[h>>2]=b;c[g>>2]=e;if((d[c[g>>2]>>0]|0|0)!=155){i=f;return 0}b=(c[g>>2]|0)+38|0;a[b>>0]=(d[b>>0]|0)+(c[(c[h>>2]|0)+20>>2]|0);i=f;return 0}function wx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;h=d;f=d+16|0;j=d+4|0;e=d+8|0;g=d+12|0;c[f>>2]=a;c[j>>2]=b;c[e>>2]=0;c[g>>2]=c[(c[c[f>>2]>>2]|0)+100>>2];if((c[j>>2]|0)<=(c[g>>2]|0)){j=c[e>>2]|0;i=d;return j|0}j=c[f>>2]|0;c[h>>2]=c[g>>2];bf(j,23280,h);c[e>>2]=1;j=c[e>>2]|0;i=d;return j|0}function xx(e,f,g,h,j,k){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;n=i;i=i+144|0;y=n;t=n+128|0;l=n+124|0;C=n+120|0;v=n+116|0;w=n+112|0;x=n+108|0;m=n+104|0;O=n+100|0;I=n+96|0;q=n+92|0;F=n+88|0;Q=n+84|0;r=n+80|0;N=n+76|0;p=n+132|0;u=n+40|0;z=n+36|0;s=n+16|0;H=n+20|0;J=n+24|0;E=n+28|0;P=n+32|0;M=n+68|0;R=n+44|0;L=n+48|0;G=n+52|0;B=n+56|0;S=n+60|0;A=n+64|0;o=n+72|0;c[l>>2]=e;c[C>>2]=f;c[v>>2]=g;c[w>>2]=h;c[x>>2]=j;c[m>>2]=k;c[q>>2]=0;c[F>>2]=0;c[Q>>2]=0;c[r>>2]=c[c[l>>2]>>2];c[p>>2]=0;c[u>>2]=c[x>>2];c[z>>2]=0;c[s>>2]=0;c[H>>2]=0;c[(c[m>>2]|0)+28>>2]=-1;c[(c[m>>2]|0)+44>>2]=0;a:do{if((c[C>>2]|0)!=0){if((a[(c[x>>2]|0)+28>>0]&20|0)!=0){c[C>>2]=0;break}c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[(c[r>>2]|0)+20>>2]|0)){break a}j=(Dc(c[(c[(c[r>>2]|0)+16>>2]|0)+(c[O>>2]<<4)>>2]|0,c[C>>2]|0)|0)==0;k=c[O>>2]|0;if(j){break}c[O>>2]=k+1}c[z>>2]=c[(c[(c[r>>2]|0)+16>>2]|0)+(k<<4)+12>>2]}}while(0);b:while(1){if((c[x>>2]|0)==0){K=98;break}if((c[q>>2]|0)!=0){K=98;break}c[P>>2]=c[(c[x>>2]|0)+4>>2];if((c[P>>2]|0)!=0){c[O>>2]=0;c[N>>2]=(c[P>>2]|0)+8;while(1){if((c[O>>2]|0)>=(c[c[P>>2]>>2]|0)){break}c[H>>2]=c[(c[N>>2]|0)+16>>2];if((c[(c[N>>2]|0)+20>>2]|0)!=0){if((b[(c[(c[N>>2]|0)+20>>2]|0)+6>>1]&512|0)!=0){c[M>>2]=0;c[E>>2]=c[c[(c[N>>2]|0)+20>>2]>>2];c[I>>2]=0;while(1){if((c[I>>2]|0)>=(c[c[E>>2]>>2]|0)){break}if((Dx(c[(c[(c[E>>2]|0)+4>>2]|0)+((c[I>>2]|0)*20|0)+8>>2]|0,c[w>>2]|0,c[v>>2]|0,c[C>>2]|0)|0)!=0){c[q>>2]=(c[q>>2]|0)+1;c[F>>2]=2;c[p>>2]=c[N>>2];b[(c[m>>2]|0)+32>>1]=c[I>>2];c[M>>2]=1}c[I>>2]=(c[I>>2]|0)+1}if((c[M>>2]|0)==0){if((c[v>>2]|0)!=0){K=23}}}else{K=23}}else{K=23}c:do{if((K|0)==23){K=0;if((c[C>>2]|0)!=0){if((c[(c[H>>2]|0)+68>>2]|0)!=(c[z>>2]|0)){break}}if((c[v>>2]|0)!=0){if((c[(c[N>>2]|0)+12>>2]|0)!=0){k=c[(c[N>>2]|0)+12>>2]|0}else{k=c[c[H>>2]>>2]|0}c[R>>2]=k;if((Dc(c[R>>2]|0,c[v>>2]|0)|0)!=0){break}}j=c[F>>2]|0;c[F>>2]=j+1;if(0==(j|0)){c[p>>2]=c[N>>2]}c[I>>2]=0;c[J>>2]=c[(c[H>>2]|0)+4>>2];while(1){if((c[I>>2]|0)>=(b[(c[H>>2]|0)+38>>1]|0)){break c}if((Dc(c[c[J>>2]>>2]|0,c[w>>2]|0)|0)==0){if((c[q>>2]|0)!=1){break}if((a[(c[N>>2]|0)+36>>0]&4|0)==0){if((Ex(c[(c[N>>2]|0)+48>>2]|0,c[w>>2]|0)|0)==0){break}}}c[I>>2]=(c[I>>2]|0)+1;c[J>>2]=(c[J>>2]|0)+24}c[q>>2]=(c[q>>2]|0)+1;c[p>>2]=c[N>>2];if((c[I>>2]|0)==(b[(c[H>>2]|0)+36>>1]|0)){k=-1}else{k=(c[I>>2]&65535)<<16>>16}b[(c[m>>2]|0)+32>>1]=k}}while(0);c[O>>2]=(c[O>>2]|0)+1;c[N>>2]=(c[N>>2]|0)+72}if((c[p>>2]|0)!=0){c[(c[m>>2]|0)+28>>2]=c[(c[p>>2]|0)+40>>2];c[(c[m>>2]|0)+44>>2]=c[(c[p>>2]|0)+16>>2];c[z>>2]=c[(c[(c[m>>2]|0)+44>>2]|0)+68>>2]}}if((c[C>>2]|0)==0){if((c[v>>2]|0)!=0){if((c[F>>2]|0)==0){if((c[(c[l>>2]|0)+412>>2]|0)!=0){c[L>>2]=d[(c[l>>2]|0)+436>>0]|0;if((c[L>>2]|0)!=109){if((Dc(23688,c[v>>2]|0)|0)==0){c[(c[m>>2]|0)+28>>2]=1;c[H>>2]=c[(c[l>>2]|0)+412>>2]}else{K=52}}else{K=52}do{if((K|0)==52){K=0;if((c[L>>2]|0)!=108){if((Dc(23696,c[v>>2]|0)|0)==0){c[(c[m>>2]|0)+28>>2]=0;c[H>>2]=c[(c[l>>2]|0)+412>>2];break}}c[H>>2]=0}}while(0);if((c[H>>2]|0)!=0){c[z>>2]=c[(c[H>>2]|0)+68>>2];c[F>>2]=(c[F>>2]|0)+1;c[G>>2]=0;c[J>>2]=c[(c[H>>2]|0)+4>>2];while(1){if((c[G>>2]|0)>=(b[(c[H>>2]|0)+38>>1]|0)){break}j=(Dc(c[c[J>>2]>>2]|0,c[w>>2]|0)|0)==0;k=c[G>>2]|0;if(j){K=60;break}c[G>>2]=k+1;c[J>>2]=(c[J>>2]|0)+24}if((K|0)==60){K=0;if((k|0)==(b[(c[H>>2]|0)+36>>1]|0)){c[G>>2]=-1}}if((c[G>>2]|0)>=(b[(c[H>>2]|0)+38>>1]|0)){if((Fx(c[w>>2]|0)|0)!=0){if((a[(c[H>>2]|0)+44>>0]&32|0)==0){c[G>>2]=-1}}}if((c[G>>2]|0)<(b[(c[H>>2]|0)+38>>1]|0)){c[q>>2]=(c[q>>2]|0)+1;k=c[m>>2]|0;do{if((c[G>>2]|0)<0){a[k+1>>0]=100}else{h=(c[G>>2]|0)>=32;if((c[k+28>>2]|0)==0){if(h){k=-1}else{k=1<>2]}j=(c[l>>2]|0)+428|0;c[j>>2]=c[j>>2]|k;break}else{if(h){k=-1}else{k=1<>2]}j=(c[l>>2]|0)+432|0;c[j>>2]=c[j>>2]|k;break}}}while(0);b[(c[m>>2]|0)+32>>1]=c[G>>2];c[(c[m>>2]|0)+44>>2]=c[H>>2];c[s>>2]=1}}}}}}if((c[q>>2]|0)==0){if((c[F>>2]|0)==1){if((c[p>>2]|0)!=0){if((Fx(c[w>>2]|0)|0)!=0){if((a[(c[(c[p>>2]|0)+16>>2]|0)+44>>0]&32|0)==0){c[q>>2]=1;b[(c[m>>2]|0)+32>>1]=-1;a[(c[m>>2]|0)+1>>0]=100}}}}}j=c[(c[x>>2]|0)+8>>2]|0;c[E>>2]=j;d:do{if((j|0)!=0){if((c[v>>2]|0)==0){if((c[q>>2]|0)==0){c[I>>2]=0;while(1){if((c[I>>2]|0)>=(c[c[E>>2]>>2]|0)){break d}c[B>>2]=c[(c[(c[E>>2]|0)+4>>2]|0)+((c[I>>2]|0)*20|0)+4>>2];if((c[B>>2]|0)!=0){if((Dc(c[B>>2]|0,c[w>>2]|0)|0)==0){K=91;break b}}c[I>>2]=(c[I>>2]|0)+1}}}}}while(0);if((c[q>>2]|0)!=0){continue}c[x>>2]=c[(c[x>>2]|0)+16>>2];c[Q>>2]=(c[Q>>2]|0)+1}if((K|0)==91){c[S>>2]=c[(c[(c[E>>2]|0)+4>>2]|0)+((c[I>>2]|0)*20|0)>>2];if((a[(c[x>>2]|0)+28>>0]&1|0)==0){if((c[(c[S>>2]|0)+4>>2]&2|0)!=0){j=c[l>>2]|0;c[y>>2]=c[B>>2];bf(j,23704,y);c[t>>2]=2;j=c[t>>2]|0;i=n;return j|0}}sx(c[l>>2]|0,c[E>>2]|0,c[I>>2]|0,c[m>>2]|0,1784,c[Q>>2]|0);c[q>>2]=1;c[p>>2]=0}else if((K|0)==98){if((c[q>>2]|0)==0){if((c[v>>2]|0)==0){if((c[(c[m>>2]|0)+4>>2]&64|0)!=0){a[c[m>>2]>>0]=97;c[(c[m>>2]|0)+44>>2]=0;c[t>>2]=1;j=c[t>>2]|0;i=n;return j|0}}}if((c[q>>2]|0)!=1){c[A>>2]=(c[q>>2]|0)==0?23736:23752;do{if((c[C>>2]|0)!=0){j=c[l>>2]|0;g=c[C>>2]|0;f=c[v>>2]|0;e=c[w>>2]|0;c[y>>2]=c[A>>2];c[y+4>>2]=g;c[y+8>>2]=f;c[y+12>>2]=e;bf(j,23776,y)}else{B=c[l>>2]|0;A=c[A>>2]|0;if((c[v>>2]|0)!=0){e=c[v>>2]|0;j=c[w>>2]|0;c[y>>2]=A;c[y+4>>2]=e;c[y+8>>2]=j;bf(B,23792,y);break}else{j=c[w>>2]|0;c[y>>2]=A;c[y+4>>2]=j;bf(B,23808,y);break}}}while(0);a[(c[l>>2]|0)+17>>0]=1;j=(c[u>>2]|0)+24|0;c[j>>2]=(c[j>>2]|0)+1}if((b[(c[m>>2]|0)+32>>1]|0)>=0){if((c[p>>2]|0)!=0){f=b[(c[m>>2]|0)+32>>1]|0;c[o>>2]=f;c[o>>2]=(c[o>>2]|0)>=64?63:f;f=bL(1,0,c[o>>2]|0)|0;j=(c[p>>2]|0)+56|0;g=j;e=c[g+4>>2]|D;c[j>>2]=c[g>>2]|f;c[j+4>>2]=e}}gu(c[r>>2]|0,c[(c[m>>2]|0)+12>>2]|0);c[(c[m>>2]|0)+12>>2]=0;gu(c[r>>2]|0,c[(c[m>>2]|0)+16>>2]|0);c[(c[m>>2]|0)+16>>2]=0;a[c[m>>2]>>0]=(c[s>>2]|0)!=0?62:154}if((c[q>>2]|0)!=1){c[t>>2]=2;j=c[t>>2]|0;i=n;return j|0}if((d[c[m>>2]>>0]|0)!=24){Gx(c[l>>2]|0,c[m>>2]|0,c[z>>2]|0,c[(c[x>>2]|0)+4>>2]|0)}while(1){j=(c[u>>2]|0)+20|0;c[j>>2]=(c[j>>2]|0)+1;if((c[u>>2]|0)==(c[x>>2]|0)){break}c[u>>2]=c[(c[u>>2]|0)+16>>2]}c[t>>2]=1;j=c[t>>2]|0;i=n;return j|0}function yx(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f;g=f+12|0;k=f+4|0;h=f+8|0;c[g>>2]=b;c[k>>2]=d;c[h>>2]=e;if((a[(c[k>>2]|0)+28>>0]&16|0)==0){i=f;return}k=c[g>>2]|0;c[j>>2]=c[h>>2];bf(k,23640,j);i=f;return}function zx(a){a=a|0;var b=0,e=0,f=0,g=0;b=i;i=i+16|0;e=b+12|0;g=b+8|0;f=b;c[g>>2]=a;h[f>>3]=-1.0;if((d[c[g>>2]>>0]|0|0)!=133){c[e>>2]=-1;g=c[e>>2]|0;i=b;return g|0}a=c[(c[g>>2]|0)+8>>2]|0;zt(a,f,Ub(c[(c[g>>2]|0)+8>>2]|0)|0,1)|0;if(+h[f>>3]>1.0){c[e>>2]=-1;g=c[e>>2]|0;i=b;return g|0}else{c[e>>2]=~~(+h[f>>3]*1.0e3);g=c[e>>2]|0;i=b;return g|0}return 0}function Ax(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+48|0;f=d+44|0;h=d;g=d+8|0;e=d+32|0;c[f>>2]=a;c[h>>2]=b;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[g>>2]=61;c[g+20>>2]=e;c[e>>2]=c[h>>2];c[e+4>>2]=0;c[e+8>>2]=0;Zw(g,c[(c[f>>2]|0)+20>>2]|0)|0;if((c[e+4>>2]|0)>0){h=1;h=h&1;i=d;return h|0}h=(c[e+8>>2]|0)==0;h=h&1;i=d;return h|0}function Bx(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f;g=f+12|0;k=f+4|0;h=f+8|0;c[g>>2]=b;c[k>>2]=d;c[h>>2]=e;if((a[(c[k>>2]|0)+28>>0]&4|0)==0){i=f;return}k=c[g>>2]|0;c[j>>2]=c[h>>2];bf(k,23600,j);i=f;return}function Cx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;j=e;f=e+4|0;h=e+8|0;g=e+12|0;c[k>>2]=a;c[j>>2]=b;if((d[c[j>>2]>>0]|0|0)!=154){if((d[c[j>>2]>>0]|0|0)!=156){i=e;return 0}}c[h>>2]=c[(c[k>>2]|0)+20>>2];c[g>>2]=c[c[h>>2]>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[g>>2]>>2]|0)){break}if((c[(c[j>>2]|0)+28>>2]|0)==(c[(c[g>>2]|0)+8+((c[f>>2]|0)*72|0)+40>>2]|0)){break}c[f>>2]=(c[f>>2]|0)+1}b=c[h>>2]|0;if((c[f>>2]|0)<(c[c[g>>2]>>2]|0)){a=b+4|0;c[a>>2]=(c[a>>2]|0)+1;i=e;return 0}else{a=b+8|0;c[a>>2]=(c[a>>2]|0)+1;i=e;return 0}return 0}function Dx(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;k=g+20|0;h=g;n=g+4|0;l=g+8|0;m=g+12|0;j=g+16|0;c[h>>2]=b;c[n>>2]=d;c[l>>2]=e;c[m>>2]=f;c[j>>2]=0;while(1){if((a[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==0){break}if((a[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==46){break}c[j>>2]=(c[j>>2]|0)+1}do{if((c[m>>2]|0)!=0){if((Tb(c[h>>2]|0,c[m>>2]|0,c[j>>2]|0)|0)==0){if((a[(c[m>>2]|0)+(c[j>>2]|0)>>0]|0)==0){break}}c[k>>2]=0;b=c[k>>2]|0;i=g;return b|0}}while(0);c[h>>2]=(c[h>>2]|0)+((c[j>>2]|0)+1);c[j>>2]=0;while(1){if((a[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==0){break}if((a[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==46){break}c[j>>2]=(c[j>>2]|0)+1}do{if((c[l>>2]|0)!=0){if((Tb(c[h>>2]|0,c[l>>2]|0,c[j>>2]|0)|0)==0){if((a[(c[l>>2]|0)+(c[j>>2]|0)>>0]|0)==0){break}}c[k>>2]=0;b=c[k>>2]|0;i=g;return b|0}}while(0);c[h>>2]=(c[h>>2]|0)+((c[j>>2]|0)+1);if((c[n>>2]|0)!=0){if((Dc(c[h>>2]|0,c[n>>2]|0)|0)!=0){c[k>>2]=0;b=c[k>>2]|0;i=g;return b|0}}c[k>>2]=1;b=c[k>>2]|0;i=g;return b|0}function Ex(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;d=e+12|0;f=e;h=e+4|0;g=e+8|0;c[f>>2]=a;c[h>>2]=b;a:do{if((c[f>>2]|0)!=0){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0)){break a}if((Dc(c[(c[c[f>>2]>>2]|0)+(c[g>>2]<<3)>>2]|0,c[h>>2]|0)|0)==0){break}c[g>>2]=(c[g>>2]|0)+1}c[d>>2]=1;a=c[d>>2]|0;i=e;return a|0}}while(0);c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}function Fx(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;do{if((Dc(c[e>>2]|0,23896)|0)==0){c[d>>2]=1}else{if((Dc(c[e>>2]|0,23816)|0)==0){c[d>>2]=1;break}if((Dc(c[e>>2]|0,23904)|0)==0){c[d>>2]=1;break}else{c[d>>2]=0;break}}}while(0);i=b;return c[d>>2]|0}function Gx(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=i;i=i+48|0;k=p+36|0;j=p+32|0;s=p+28|0;q=p+24|0;t=p+20|0;l=p+16|0;m=p+8|0;r=p+4|0;n=p;o=p+12|0;c[k>>2]=e;c[j>>2]=f;c[s>>2]=g;c[q>>2]=h;c[t>>2]=c[c[k>>2]>>2];c[l>>2]=0;if((c[(c[t>>2]|0)+276>>2]|0)==0){i=p;return}c[n>>2]=ef(c[c[k>>2]>>2]|0,c[s>>2]|0)|0;if((c[n>>2]|0)<0){i=p;return}a:do{if((d[c[j>>2]>>0]|0)==62){c[l>>2]=c[(c[k>>2]|0)+412>>2]}else{c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[c[q>>2]>>2]|0)){break a}h=c[r>>2]|0;if((c[(c[j>>2]|0)+28>>2]|0)==(c[(c[q>>2]|0)+8+((c[r>>2]|0)*72|0)+40>>2]|0)){break}c[r>>2]=h+1}c[l>>2]=c[(c[q>>2]|0)+8+(h*72|0)+16>>2]}}while(0);c[o>>2]=b[(c[j>>2]|0)+32>>1]|0;if((c[l>>2]|0)==0){i=p;return}do{if((c[o>>2]|0)>=0){c[m>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+((c[o>>2]|0)*24|0)>>2]}else{if((b[(c[l>>2]|0)+36>>1]|0)>=0){c[m>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+((b[(c[l>>2]|0)+36>>1]|0)*24|0)>>2];break}else{c[m>>2]=23816;break}}}while(0);if(2!=(Hx(c[k>>2]|0,c[c[l>>2]>>2]|0,c[m>>2]|0,c[n>>2]|0)|0)){i=p;return}a[c[j>>2]>>0]=101;i=p;return}function Hx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+48|0;f=n;j=n+36|0;k=n+12|0;l=n+16|0;o=n+20|0;p=n+24|0;m=n+28|0;h=n+32|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[o>>2]=e;c[p>>2]=c[c[j>>2]>>2];c[m>>2]=c[(c[(c[p>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2];c[h>>2]=tb[c[(c[p>>2]|0)+276>>2]&15](c[(c[p>>2]|0)+280>>2]|0,20,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[(c[j>>2]|0)+492>>2]|0)|0;if((c[h>>2]|0)!=1){if(!((c[h>>2]|0)!=2&(c[h>>2]|0)!=0)){a=c[h>>2]|0;i=n;return a|0}Mv(c[j>>2]|0);a=c[h>>2]|0;i=n;return a|0}if((c[(c[p>>2]|0)+20>>2]|0)>2){g=4}else{if((c[o>>2]|0)!=0){g=4}else{a=c[j>>2]|0;b=c[l>>2]|0;c[f>>2]=c[k>>2];c[f+4>>2]=b;bf(a,23864,f)}}if((g|0)==4){a=c[j>>2]|0;d=c[k>>2]|0;b=c[l>>2]|0;c[f>>2]=c[m>>2];c[f+4>>2]=d;c[f+8>>2]=b;bf(a,23824,f)}c[(c[j>>2]|0)+12>>2]=23;a=c[h>>2]|0;i=n;return a|0}function Ix(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=i;i=i+48|0;j=n+44|0;p=n+40|0;o=n+36|0;r=n+32|0;l=n+28|0;t=n+24|0;h=n+12|0;s=n+8|0;m=n+4|0;k=n;q=n+16|0;c[p>>2]=f;c[o>>2]=g;if((c[(c[o>>2]|0)+52>>2]|0)==0){c[j>>2]=0;f=c[j>>2]|0;i=n;return f|0}if((c[(c[o>>2]|0)+48>>2]|0)==0){c[j>>2]=0;f=c[j>>2]|0;i=n;return f|0}c[t>>2]=c[o>>2];while(1){if((c[t>>2]|0)==0){break}if((d[(c[t>>2]|0)+4>>0]|0|0)!=116){if((d[(c[t>>2]|0)+4>>0]|0|0)!=119){break}}c[t>>2]=c[(c[t>>2]|0)+52>>2]}if((c[t>>2]|0)==0){c[j>>2]=0;f=c[j>>2]|0;i=n;return f|0}c[s>>2]=c[(c[(c[o>>2]|0)+48>>2]|0)+4>>2];c[r>>2]=(c[c[(c[o>>2]|0)+48>>2]>>2]|0)-1;while(1){if((c[r>>2]|0)<0){break}if((c[(c[(c[s>>2]|0)+((c[r>>2]|0)*20|0)>>2]|0)+4>>2]&256|0)!=0){break}c[r>>2]=(c[r>>2]|0)+ -1}if((c[r>>2]|0)<0){c[j>>2]=0;f=c[j>>2]|0;i=n;return f|0}c[k>>2]=c[(c[p>>2]|0)+12>>2];c[h>>2]=c[c[k>>2]>>2];c[l>>2]=ve(c[h>>2]|0,72)|0;if((c[l>>2]|0)==0){c[j>>2]=2;f=c[j>>2]|0;i=n;return f|0}c[q+0>>2]=0;c[q+4>>2]=0;c[m>>2]=Nu(c[k>>2]|0,0,0,0,q,c[l>>2]|0,0,0)|0;if((c[m>>2]|0)==0){c[j>>2]=2;f=c[j>>2]|0;i=n;return f|0}else{r=(c[l>>2]|0)+0|0;q=(c[o>>2]|0)+0|0;p=r+72|0;do{c[r>>2]=c[q>>2];r=r+4|0;q=q+4|0}while((r|0)<(p|0));c[(c[o>>2]|0)+32>>2]=c[m>>2];f=c[k>>2]|0;f=Pu(f,0,Su(c[h>>2]|0,116,0)|0)|0;c[c[o>>2]>>2]=f;a[(c[o>>2]|0)+4>>0]=119;c[(c[o>>2]|0)+36>>2]=0;c[(c[l>>2]|0)+40>>2]=0;c[(c[l>>2]|0)+44>>2]=0;c[(c[l>>2]|0)+48>>2]=0;c[(c[o>>2]|0)+52>>2]=0;c[(c[o>>2]|0)+56>>2]=0;f=(c[o>>2]|0)+6|0;b[f>>1]=(e[f>>1]|0)&-4097;c[(c[(c[l>>2]|0)+52>>2]|0)+56>>2]=c[l>>2];c[(c[l>>2]|0)+60>>2]=0;c[(c[l>>2]|0)+64>>2]=0;c[j>>2]=0;f=c[j>>2]|0;i=n;return f|0}return 0}function Jx(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;D=i;i=i+160|0;l=D;z=D+88|0;Q=D+92|0;m=D+96|0;k=D+100|0;B=D+104|0;E=D+108|0;r=D+116|0;C=D+120|0;o=D+124|0;h=D+128|0;n=D+132|0;t=D+136|0;s=D+140|0;J=D+144|0;R=D+148|0;O=D+84|0;P=D+112|0;q=D+40|0;p=D+36|0;N=D+12|0;L=D+16|0;v=D+20|0;u=D+24|0;x=D+28|0;w=D+32|0;y=D+76|0;A=D+44|0;j=D+48|0;F=D+52|0;I=D+56|0;G=D+60|0;K=D+64|0;M=D+72|0;H=D+80|0;c[Q>>2]=f;c[m>>2]=g;c[k>>2]=c[(c[Q>>2]|0)+12>>2];c[n>>2]=c[c[k>>2]>>2];b[R>>1]=b[(c[m>>2]|0)+6>>1]|0;f=(c[m>>2]|0)+6|0;b[f>>1]=e[f>>1]|16;if((a[(c[n>>2]|0)+64>>0]|0)!=0){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}if((c[(c[m>>2]|0)+32>>2]|0)!=0){if((b[R>>1]&16|0)==0){c[C>>2]=c[(c[m>>2]|0)+32>>2];c[o>>2]=c[c[m>>2]>>2];f=c[k>>2]|0;Xu(f,c[(Lx(c[m>>2]|0)|0)+68>>2]|0,0);Cw(c[k>>2]|0,c[C>>2]|0);c[B>>2]=0;c[h>>2]=(c[C>>2]|0)+8;a:while(1){if((c[B>>2]|0)>=(c[c[C>>2]>>2]|0)){P=33;break}if(((d[(c[h>>2]|0)+37>>0]|0)>>>3&1|0)==0){g=c[Q>>2]|0;if((c[(c[h>>2]|0)+16>>2]|0)!=0){P=10;break}if((Mx(g,c[h>>2]|0)|0)!=0){P=12;break}do{if((c[(c[h>>2]|0)+16>>2]|0)==0){if((c[(c[h>>2]|0)+8>>2]|0)==0){c[P>>2]=c[(c[h>>2]|0)+20>>2];Ww(c[Q>>2]|0,c[P>>2]|0)|0;f=ve(c[n>>2]|0,76)|0;c[O>>2]=f;c[(c[h>>2]|0)+16>>2]=f;if((c[O>>2]|0)==0){P=16;break a}b[(c[O>>2]|0)+40>>1]=1;f=c[n>>2]|0;c[l>>2]=c[O>>2];f=cf(f,23912,l)|0;c[c[O>>2]>>2]=f;while(1){if((c[(c[P>>2]|0)+52>>2]|0)==0){break}c[P>>2]=c[(c[P>>2]|0)+52>>2]}Fw(c[k>>2]|0,c[c[P>>2]>>2]|0,(c[O>>2]|0)+38|0,(c[O>>2]|0)+4|0)|0;b[(c[O>>2]|0)+36>>1]=-1;b[(c[O>>2]|0)+28>>1]=200;f=(c[O>>2]|0)+44|0;a[f>>0]=d[f>>0]|2;break}f=Zv(c[k>>2]|0,0,c[h>>2]|0)|0;c[O>>2]=f;c[(c[h>>2]|0)+16>>2]=f;if((c[O>>2]|0)==0){P=22;break a}if((e[(c[O>>2]|0)+40>>1]|0)==65535){P=24;break a}f=(c[O>>2]|0)+40|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;if((c[(c[O>>2]|0)+12>>2]|0)==0){if((a[(c[O>>2]|0)+44>>0]&16|0)==0){break}}if((vw(c[k>>2]|0,c[O>>2]|0)|0)!=0){P=28;break a}f=Bw(c[n>>2]|0,c[(c[O>>2]|0)+12>>2]|0,0)|0;c[(c[h>>2]|0)+20>>2]=f;Ww(c[Q>>2]|0,c[(c[h>>2]|0)+20>>2]|0)|0}}while(0);if((Nx(c[k>>2]|0,c[h>>2]|0)|0)!=0){P=31;break}}c[B>>2]=(c[B>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+72}if((P|0)==10){Kx(g,c[m>>2]|0);c[z>>2]=1;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==12){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==16){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==22){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==24){f=c[k>>2]|0;c[l>>2]=c[c[O>>2]>>2];bf(f,23928,l);c[(c[h>>2]|0)+16>>2]=0;c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==28){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==31){c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}else if((P|0)==33){if((d[(c[n>>2]|0)+64>>0]|0)==0){if((Ox(c[k>>2]|0,c[m>>2]|0)|0)==0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[c[o>>2]>>2]|0)){break}c[t>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+((c[r>>2]|0)*20|0)>>2];if((d[c[t>>2]>>0]|0)==116){break}if((d[c[t>>2]>>0]|0)==122){if((d[c[(c[t>>2]|0)+16>>2]>>0]|0)==116){break}}c[r>>2]=(c[r>>2]|0)+1}if((c[r>>2]|0)<(c[c[o>>2]>>2]|0)){c[q>>2]=c[(c[o>>2]|0)+4>>2];c[p>>2]=0;c[N>>2]=c[(c[c[k>>2]>>2]|0)+24>>2];if((c[N>>2]&32|0)!=0){N=(c[N>>2]&64|0)==0}else{N=0}c[L>>2]=N&1;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[c[o>>2]>>2]|0)){break}c[t>>2]=c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)>>2];c[s>>2]=c[(c[t>>2]|0)+16>>2];do{if((d[c[t>>2]>>0]|0)!=116){if((d[c[t>>2]>>0]|0)==122){if((d[c[s>>2]>>0]|0)==116){P=53;break}}c[p>>2]=Pu(c[k>>2]|0,c[p>>2]|0,c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)>>2]|0)|0;if((c[p>>2]|0)!=0){c[(c[(c[p>>2]|0)+4>>2]|0)+(((c[c[p>>2]>>2]|0)-1|0)*20|0)+4>>2]=c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)+4>>2];c[(c[(c[p>>2]|0)+4>>2]|0)+(((c[c[p>>2]>>2]|0)-1|0)*20|0)+8>>2]=c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)+8>>2];c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)+4>>2]=0;c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)+8>>2]=0}c[(c[q>>2]|0)+((c[r>>2]|0)*20|0)>>2]=0}else{P=53}}while(0);do{if((P|0)==53){P=0;c[v>>2]=0;c[u>>2]=0;if((d[c[t>>2]>>0]|0)==122){c[u>>2]=c[(c[(c[t>>2]|0)+12>>2]|0)+8>>2]}c[B>>2]=0;c[h>>2]=(c[C>>2]|0)+8;while(1){if((c[B>>2]|0)>=(c[c[C>>2]>>2]|0)){break}c[x>>2]=c[(c[h>>2]|0)+16>>2];c[w>>2]=c[(c[h>>2]|0)+20>>2];c[y>>2]=c[(c[h>>2]|0)+12>>2];c[A>>2]=0;if((c[y>>2]|0)==0){c[y>>2]=c[c[x>>2]>>2]}if((a[(c[n>>2]|0)+64>>0]|0)!=0){break}if((c[w>>2]|0)==0){P=62}else{if((b[(c[w>>2]|0)+6>>1]&512|0)==0){P=62}else{P=67}}do{if((P|0)==62){P=0;c[w>>2]=0;if((c[u>>2]|0)!=0){if((Dc(c[u>>2]|0,c[y>>2]|0)|0)!=0){break}}c[j>>2]=ef(c[n>>2]|0,c[(c[x>>2]|0)+68>>2]|0)|0;if((c[j>>2]|0)>=0){N=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[j>>2]<<4)>>2]|0}else{N=9880}c[A>>2]=N;P=67}}while(0);b:do{if((P|0)==67){P=0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(b[(c[x>>2]|0)+38>>1]|0)){break b}c[F>>2]=c[(c[(c[x>>2]|0)+4>>2]|0)+((c[E>>2]|0)*24|0)>>2];do{if((c[u>>2]|0)!=0){if((c[w>>2]|0)==0){P=72;break}if((Dx(c[(c[(c[c[w>>2]>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)+8>>2]|0,0,c[u>>2]|0,0)|0)!=0){P=72}}else{P=72}}while(0);c:do{if((P|0)==72){P=0;if((a[(c[(c[x>>2]|0)+4>>2]|0)+((c[E>>2]|0)*24|0)+23>>0]&2|0)!=0){break}c[v>>2]=1;do{if((c[B>>2]|0)>0){if((c[u>>2]|0)!=0){break}if((a[(c[h>>2]|0)+36>>0]&4|0)!=0){if((Px(c[C>>2]|0,c[B>>2]|0,c[F>>2]|0,0,0)|0)!=0){break c}}if((Qx(c[(c[h>>2]|0)+48>>2]|0,c[F>>2]|0)|0)>=0){break c}}}while(0);c[s>>2]=Su(c[n>>2]|0,27,c[F>>2]|0)|0;c[I>>2]=c[F>>2];c[G>>2]=0;do{if((c[L>>2]|0)!=0){P=80}else{if((c[c[C>>2]>>2]|0)>1){P=80;break}c[J>>2]=c[s>>2]}}while(0);do{if((P|0)==80){P=0;c[M>>2]=Su(c[n>>2]|0,27,c[y>>2]|0)|0;c[J>>2]=Bu(c[k>>2]|0,122,c[M>>2]|0,c[s>>2]|0,0)|0;if((c[A>>2]|0)!=0){c[M>>2]=Su(c[n>>2]|0,27,c[A>>2]|0)|0;c[J>>2]=Bu(c[k>>2]|0,122,c[M>>2]|0,c[J>>2]|0,0)|0}if((c[L>>2]|0)==0){break}f=c[n>>2]|0;R=c[F>>2]|0;c[l>>2]=c[y>>2];c[l+4>>2]=R;c[I>>2]=cf(f,23968,l)|0;c[G>>2]=c[I>>2]}}while(0);c[p>>2]=Pu(c[k>>2]|0,c[p>>2]|0,c[J>>2]|0)|0;c[K>>2]=c[I>>2];c[K+4>>2]=Ub(c[I>>2]|0)|0;Qu(c[k>>2]|0,c[p>>2]|0,K,0);do{if((c[p>>2]|0)!=0){if((b[(c[m>>2]|0)+6>>1]&512|0)==0){break}c[H>>2]=(c[(c[p>>2]|0)+4>>2]|0)+(((c[c[p>>2]>>2]|0)-1|0)*20|0);N=c[n>>2]|0;if((c[w>>2]|0)!=0){f=pe(N,c[(c[(c[c[w>>2]>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)+8>>2]|0)|0;c[(c[H>>2]|0)+8>>2]=f}else{R=c[y>>2]|0;f=c[I>>2]|0;c[l>>2]=c[A>>2];c[l+4>>2]=R;c[l+8>>2]=f;f=cf(N,23976,l)|0;c[(c[H>>2]|0)+8>>2]=f}f=(c[H>>2]|0)+13|0;a[f>>0]=a[f>>0]&-3|2}}while(0);cc(c[n>>2]|0,c[G>>2]|0)}}while(0);c[E>>2]=(c[E>>2]|0)+1}}}while(0);c[B>>2]=(c[B>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+72}if((c[v>>2]|0)==0){N=c[k>>2]|0;if((c[u>>2]|0)!=0){c[l>>2]=c[u>>2];bf(N,23992,l);break}else{bf(N,24016,l);break}}}}while(0);c[r>>2]=(c[r>>2]|0)+1}cu(c[n>>2]|0,c[o>>2]|0);c[c[m>>2]>>2]=c[p>>2]}if((c[c[m>>2]>>2]|0)!=0){if((c[c[c[m>>2]>>2]>>2]|0)>(c[(c[n>>2]|0)+96>>2]|0)){bf(c[k>>2]|0,24040,l)}}c[z>>2]=0;f=c[z>>2]|0;i=D;return f|0}}c[z>>2]=2;f=c[z>>2]|0;i=D;return f|0}}}c[z>>2]=1;f=c[z>>2]|0;i=D;return f|0}function Kx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;h=d+12|0;g=d;f=d+4|0;e=d+8|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=c[(c[h>>2]|0)+12>>2];c[e>>2]=c[(Lx(c[g>>2]|0)|0)+68>>2];if((c[e>>2]|0)==0){i=d;return}c[(c[f>>2]|0)+532>>2]=c[(c[e>>2]|0)+4>>2];i=d;return}function Lx(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;while(1){a=c[d>>2]|0;if((c[(c[d>>2]|0)+56>>2]|0)==0){break}c[d>>2]=c[a+56>>2]}i=b;return a|0}function Mx(f,g){f=f|0;g=g|0;var h=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;o=i;i=i+80|0;r=o;n=o+68|0;l=o+64|0;y=o+60|0;k=o+56|0;z=o+52|0;j=o+48|0;u=o+44|0;q=o+72|0;t=o+32|0;m=o+28|0;p=o+24|0;s=o+20|0;h=o+16|0;x=o+12|0;w=o+36|0;v=o+40|0;c[l>>2]=f;c[y>>2]=g;c[k>>2]=c[(c[l>>2]|0)+12>>2];c[z>>2]=c[c[k>>2]>>2];c[j>>2]=by(c[(c[k>>2]|0)+532>>2]|0,c[y>>2]|0,u)|0;if((c[j>>2]|0)!=0){if((c[(c[j>>2]|0)+12>>2]|0)!=0){z=c[k>>2]|0;f=c[(c[j>>2]|0)+12>>2]|0;c[r>>2]=c[c[j>>2]>>2];bf(z,f,r);c[n>>2]=1;f=c[n>>2]|0;i=o;return f|0}f=ve(c[z>>2]|0,76)|0;c[q>>2]=f;c[(c[y>>2]|0)+16>>2]=f;if((c[q>>2]|0)==0){c[n>>2]=2;f=c[n>>2]|0;i=o;return f|0}b[(c[q>>2]|0)+40>>1]=1;f=pe(c[z>>2]|0,c[c[j>>2]>>2]|0)|0;c[c[q>>2]>>2]=f;b[(c[q>>2]|0)+36>>1]=-1;b[(c[q>>2]|0)+28>>1]=200;f=(c[q>>2]|0)+44|0;a[f>>0]=d[f>>0]|2;f=Bw(c[z>>2]|0,c[(c[j>>2]|0)+8>>2]|0,0)|0;c[(c[y>>2]|0)+20>>2]=f;if((a[(c[z>>2]|0)+64>>0]|0)!=0){c[n>>2]=7;f=c[n>>2]|0;i=o;return f|0}c[m>>2]=c[(c[y>>2]|0)+20>>2];if((d[(c[m>>2]|0)+4>>0]|0)==116){g=1}else{g=(d[(c[m>>2]|0)+4>>0]|0)==115}c[s>>2]=g&1;a:do{if((c[s>>2]|0)!=0){c[w>>2]=c[(c[(c[y>>2]|0)+20>>2]|0)+32>>2];c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[c[w>>2]>>2]|0)){break a}c[v>>2]=(c[w>>2]|0)+8+((c[x>>2]|0)*72|0);if((c[(c[v>>2]|0)+4>>2]|0)==0){if((c[(c[v>>2]|0)+8>>2]|0)!=0){if(0==(Dc(c[(c[v>>2]|0)+8>>2]|0,c[c[j>>2]>>2]|0)|0)){c[(c[v>>2]|0)+16>>2]=c[q>>2];f=(c[v>>2]|0)+37|0;a[f>>0]=a[f>>0]&-9|8;f=(c[q>>2]|0)+40|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;f=(c[m>>2]|0)+6|0;b[f>>1]=e[f>>1]|2048}}}c[x>>2]=(c[x>>2]|0)+1}}}while(0);if((e[(c[q>>2]|0)+40>>1]|0)>2){f=c[k>>2]|0;c[r>>2]=c[c[j>>2]>>2];bf(f,24272,r);c[n>>2]=1;f=c[n>>2]|0;i=o;return f|0}c[(c[j>>2]|0)+12>>2]=24320;c[h>>2]=c[(c[k>>2]|0)+532>>2];c[(c[k>>2]|0)+532>>2]=c[u>>2];u=c[m>>2]|0;if((c[s>>2]|0)!=0){u=c[u+52>>2]|0}Ww(c[l>>2]|0,u)|0;c[p>>2]=c[m>>2];while(1){u=c[p>>2]|0;if((c[(c[p>>2]|0)+52>>2]|0)==0){break}c[p>>2]=c[u+52>>2]}c[t>>2]=c[u>>2];do{if((c[(c[j>>2]|0)+4>>2]|0)!=0){if((c[c[t>>2]>>2]|0)==(c[c[(c[j>>2]|0)+4>>2]>>2]|0)){c[t>>2]=c[(c[j>>2]|0)+4>>2];break}f=c[k>>2]|0;g=c[c[t>>2]>>2]|0;z=c[c[(c[j>>2]|0)+4>>2]>>2]|0;c[r>>2]=c[c[j>>2]>>2];c[r+4>>2]=g;c[r+8>>2]=z;bf(f,24344,r);c[(c[k>>2]|0)+532>>2]=c[h>>2];c[n>>2]=1;f=c[n>>2]|0;i=o;return f|0}}while(0);Fw(c[k>>2]|0,c[t>>2]|0,(c[q>>2]|0)+38|0,(c[q>>2]|0)+4|0)|0;if((c[s>>2]|0)!=0){p=(c[j>>2]|0)+12|0;if((b[(c[m>>2]|0)+6>>1]&2048|0)!=0){c[p>>2]=24384}else{c[p>>2]=24424}Ww(c[l>>2]|0,c[m>>2]|0)|0}c[(c[j>>2]|0)+12>>2]=0;c[(c[k>>2]|0)+532>>2]=c[h>>2]}c[n>>2]=0;f=c[n>>2]|0;i=o;return f|0}function Nx(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;l=f;e=f+28|0;j=f+8|0;h=f+12|0;m=f+16|0;k=f+20|0;g=f+24|0;c[j>>2]=b;c[h>>2]=d;do{if((c[(c[h>>2]|0)+16>>2]|0)!=0){if((c[(c[h>>2]|0)+64>>2]|0)!=0){c[m>>2]=c[(c[h>>2]|0)+16>>2];c[k>>2]=c[(c[h>>2]|0)+64>>2];c[g>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[g>>2]|0)==0){break}if((Dc(c[c[g>>2]>>2]|0,c[k>>2]|0)|0)==0){break}c[g>>2]=c[(c[g>>2]|0)+20>>2]}if((c[g>>2]|0)!=0){c[(c[h>>2]|0)+68>>2]=c[g>>2];break}b=c[j>>2]|0;c[l>>2]=c[k>>2];c[l+4>>2]=0;bf(b,24248,l);a[(c[j>>2]|0)+17>>0]=1;c[e>>2]=1;b=c[e>>2]|0;i=f;return b|0}}}while(0);c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}function Ox(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;f=i;i=i+80|0;h=f;j=f+72|0;g=f+68|0;s=f+64|0;o=f+60|0;r=f+56|0;n=f+52|0;v=f+48|0;x=f+44|0;w=f+40|0;t=f+76|0;l=f+16|0;u=f+12|0;p=f+4|0;q=f+8|0;m=f+32|0;k=f+20|0;z=f+24|0;A=f+28|0;y=f+36|0;c[g>>2]=d;c[s>>2]=e;c[o>>2]=c[(c[s>>2]|0)+32>>2];c[v>>2]=(c[o>>2]|0)+8;c[x>>2]=(c[v>>2]|0)+72;c[r>>2]=0;a:while(1){if((c[r>>2]|0)>=((c[c[o>>2]>>2]|0)-1|0)){l=29;break}c[w>>2]=c[(c[v>>2]|0)+16>>2];c[t>>2]=c[(c[x>>2]|0)+16>>2];b:do{if((c[w>>2]|0)!=0){if((c[t>>2]|0)!=0){c[l>>2]=(a[(c[x>>2]|0)+36>>0]&32|0)!=0&1;c:do{if((a[(c[x>>2]|0)+36>>0]&4|0)!=0){if((c[(c[x>>2]|0)+44>>2]|0)!=0){l=8;break a}if((c[(c[x>>2]|0)+48>>2]|0)!=0){l=8;break a}c[n>>2]=0;while(1){if((c[n>>2]|0)>=(b[(c[t>>2]|0)+38>>1]|0)){break c}c[u>>2]=c[(c[(c[t>>2]|0)+4>>2]|0)+((c[n>>2]|0)*24|0)>>2];if((Px(c[o>>2]|0,(c[r>>2]|0)+1|0,c[u>>2]|0,p,q)|0)!=0){Sx(c[g>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,(c[r>>2]|0)+1|0,c[n>>2]|0,c[l>>2]|0,(c[s>>2]|0)+36|0)}c[n>>2]=(c[n>>2]|0)+1}}}while(0);if((c[(c[x>>2]|0)+44>>2]|0)!=0){if((c[(c[x>>2]|0)+48>>2]|0)!=0){l=16;break a}}if((c[(c[x>>2]|0)+44>>2]|0)!=0){if((c[l>>2]|0)!=0){Tx(c[(c[x>>2]|0)+44>>2]|0,c[(c[x>>2]|0)+40>>2]|0)}d=Ux(c[c[g>>2]>>2]|0,c[(c[s>>2]|0)+36>>2]|0,c[(c[x>>2]|0)+44>>2]|0)|0;c[(c[s>>2]|0)+36>>2]=d;c[(c[x>>2]|0)+44>>2]=0}if((c[(c[x>>2]|0)+48>>2]|0)!=0){c[m>>2]=c[(c[x>>2]|0)+48>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[(c[m>>2]|0)+4>>2]|0)){break b}c[k>>2]=c[(c[c[m>>2]>>2]|0)+(c[n>>2]<<3)>>2];c[y>>2]=Rx(c[t>>2]|0,c[k>>2]|0)|0;if((c[y>>2]|0)<0){l=26;break a}if((Px(c[o>>2]|0,(c[r>>2]|0)+1|0,c[k>>2]|0,z,A)|0)==0){l=26;break a}Sx(c[g>>2]|0,c[o>>2]|0,c[z>>2]|0,c[A>>2]|0,(c[r>>2]|0)+1|0,c[y>>2]|0,c[l>>2]|0,(c[s>>2]|0)+36|0);c[n>>2]=(c[n>>2]|0)+1}}}}}while(0);c[r>>2]=(c[r>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+72;c[v>>2]=(c[v>>2]|0)+72}if((l|0)==8){d=c[g>>2]|0;c[h>>2]=0;bf(d,24072,h);c[j>>2]=1;d=c[j>>2]|0;i=f;return d|0}else if((l|0)==16){bf(c[g>>2]|0,24128,h);c[j>>2]=1;d=c[j>>2]|0;i=f;return d|0}else if((l|0)==26){d=c[g>>2]|0;c[h>>2]=c[k>>2];bf(d,24184,h);c[j>>2]=1;d=c[j>>2]|0;i=f;return d|0}else if((l|0)==29){c[j>>2]=0;d=c[j>>2]|0;i=f;return d|0}return 0}function Px(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;o=j+28|0;g=j;q=j+4|0;p=j+8|0;l=j+12|0;n=j+16|0;k=j+20|0;m=j+24|0;c[g>>2]=a;c[q>>2]=b;c[p>>2]=d;c[l>>2]=e;c[n>>2]=f;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[q>>2]|0)){h=8;break}c[m>>2]=Rx(c[(c[g>>2]|0)+8+((c[k>>2]|0)*72|0)+16>>2]|0,c[p>>2]|0)|0;if((c[m>>2]|0)>=0){break}c[k>>2]=(c[k>>2]|0)+1}if((h|0)==8){c[o>>2]=0;a=c[o>>2]|0;i=j;return a|0}if((c[l>>2]|0)!=0){c[c[l>>2]>>2]=c[k>>2];c[c[n>>2]>>2]=c[m>>2]}c[o>>2]=1;a=c[o>>2]|0;i=j;return a|0}function Qx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d;h=d+4|0;g=d+8|0;c[f>>2]=a;c[h>>2]=b;if((c[f>>2]|0)==0){c[e>>2]=-1;a=c[e>>2]|0;i=d;return a|0}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0)){f=8;break}a=(Dc(c[(c[c[f>>2]>>2]|0)+(c[g>>2]<<3)>>2]|0,c[h>>2]|0)|0)==0;b=c[g>>2]|0;if(a){f=6;break}c[g>>2]=b+1}if((f|0)==6){c[e>>2]=b;a=c[e>>2]|0;i=d;return a|0}else if((f|0)==8){c[e>>2]=-1;a=c[e>>2]|0;i=d;return a|0}return 0}function Rx(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+12|0;g=f;j=f+4|0;h=f+8|0;c[g>>2]=a;c[j>>2]=d;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(b[(c[g>>2]|0)+38>>1]|0)){g=6;break}a=(Dc(c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*24|0)>>2]|0,c[j>>2]|0)|0)==0;d=c[h>>2]|0;if(a){g=4;break}c[h>>2]=d+1}if((g|0)==4){c[e>>2]=d;a=c[e>>2]|0;i=f;return a|0}else if((g|0)==6){c[e>>2]=-1;a=c[e>>2]|0;i=f;return a|0}return 0}function Sx(a,d,e,f,g,h,j,k){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;n=i;i=i+48|0;s=n+44|0;v=n+40|0;x=n+36|0;w=n+32|0;u=n+28|0;t=n+24|0;p=n+20|0;l=n+12|0;q=n+8|0;r=n+4|0;o=n;m=n+16|0;c[s>>2]=a;c[v>>2]=d;c[x>>2]=e;c[w>>2]=f;c[u>>2]=g;c[t>>2]=h;c[p>>2]=j;c[l>>2]=k;c[q>>2]=c[c[s>>2]>>2];c[r>>2]=ay(c[q>>2]|0,c[v>>2]|0,c[x>>2]|0,c[w>>2]|0)|0;c[o>>2]=ay(c[q>>2]|0,c[v>>2]|0,c[u>>2]|0,c[t>>2]|0)|0;c[m>>2]=Bu(c[s>>2]|0,79,c[r>>2]|0,c[o>>2]|0,0)|0;if((c[m>>2]|0)!=0){if((c[p>>2]|0)!=0){x=(c[m>>2]|0)+4|0;c[x>>2]=c[x>>2]|1;b[(c[m>>2]|0)+36>>1]=c[(c[o>>2]|0)+28>>2]}}x=Ux(c[q>>2]|0,c[c[l>>2]>>2]|0,c[m>>2]|0)|0;c[c[l>>2]>>2]=x;i=n;return}function Tx(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=d;while(1){if((c[f>>2]|0)==0){break}a=(c[f>>2]|0)+4|0;c[a>>2]=c[a>>2]|1;b[(c[f>>2]|0)+36>>1]=c[g>>2];Tx(c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0);c[f>>2]=c[(c[f>>2]|0)+16>>2]}i=e;return}function Ux(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;f=j+16|0;g=j;e=j+4|0;k=j+8|0;h=j+12|0;c[g>>2]=a;c[e>>2]=b;c[k>>2]=d;d=c[k>>2]|0;if((c[e>>2]|0)==0){c[f>>2]=d;a=c[f>>2]|0;i=j;return a|0}b=c[e>>2]|0;if((d|0)==0){c[f>>2]=b;a=c[f>>2]|0;i=j;return a|0}if((Vx(b)|0)==0){if((Vx(c[k>>2]|0)|0)==0){c[h>>2]=Wx(c[g>>2]|0,72,0,0)|0;Xx(c[g>>2]|0,c[h>>2]|0,c[e>>2]|0,c[k>>2]|0);c[f>>2]=c[h>>2];a=c[f>>2]|0;i=j;return a|0}}gu(c[g>>2]|0,c[e>>2]|0);gu(c[g>>2]|0,c[k>>2]|0);c[f>>2]=Wx(c[g>>2]|0,132,16680,0)|0;a=c[f>>2]|0;i=j;return a|0}function Vx(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;f=b;e=b+4|0;c[f>>2]=a;c[e>>2]=0;do{if((c[(c[f>>2]|0)+4>>2]&1|0)!=0){c[d>>2]=0}else{if((ex(c[f>>2]|0,e)|0)!=0){c[d>>2]=(c[e>>2]|0)==0&1;break}else{c[d>>2]=0;break}}}while(0);i=b;return c[d>>2]|0}function Wx(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;q=h+28|0;p=h;k=h+4|0;l=h+8|0;n=h+12|0;m=h+16|0;j=h+20|0;o=h+24|0;c[q>>2]=d;c[p>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=0;c[j>>2]=0;do{if((c[k>>2]|0)!=0){if((c[p>>2]|0)==132){if((c[c[k>>2]>>2]|0)!=0){if((Wg(c[c[k>>2]>>2]|0,j)|0)!=0){break}}}c[m>>2]=(c[(c[k>>2]|0)+4>>2]|0)+1}}while(0);c[n>>2]=ve(c[q>>2]|0,48+(c[m>>2]|0)|0)|0;if((c[n>>2]|0)==0){d=c[n>>2]|0;i=h;return d|0}a[c[n>>2]>>0]=c[p>>2];b[(c[n>>2]|0)+34>>1]=-1;do{if((c[k>>2]|0)!=0){p=c[n>>2]|0;if((c[m>>2]|0)==0){d=p+4|0;c[d>>2]=c[d>>2]|1024;c[(c[n>>2]|0)+8>>2]=c[j>>2];break}c[(c[n>>2]|0)+8>>2]=p+48;if((c[(c[k>>2]|0)+4>>2]|0)!=0){fL(c[(c[n>>2]|0)+8>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0}a[(c[(c[n>>2]|0)+8>>2]|0)+(c[(c[k>>2]|0)+4>>2]|0)>>0]=0;if((c[l>>2]|0)!=0){if((c[m>>2]|0)>=3){d=a[c[c[k>>2]>>2]>>0]|0;c[o>>2]=d;if((d|0)!=39){if(!((c[o>>2]|0)==34|(c[o>>2]|0)==91|(c[o>>2]|0)==96)){break}}gt(c[(c[n>>2]|0)+8>>2]|0)|0;if((c[o>>2]|0)==34){d=(c[n>>2]|0)+4|0;c[d>>2]=c[d>>2]|64}}}}}while(0);c[(c[n>>2]|0)+24>>2]=1;d=c[n>>2]|0;i=h;return d|0}function Xx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;h=f+12|0;k=f;j=f+4|0;g=f+8|0;c[h>>2]=a;c[k>>2]=b;c[j>>2]=d;c[g>>2]=e;if((c[k>>2]|0)==0){gu(c[h>>2]|0,c[j>>2]|0);gu(c[h>>2]|0,c[g>>2]|0);i=f;return}if((c[g>>2]|0)!=0){c[(c[k>>2]|0)+16>>2]=c[g>>2];a=(c[k>>2]|0)+4|0;c[a>>2]=c[a>>2]|256&c[(c[g>>2]|0)+4>>2]}if((c[j>>2]|0)!=0){c[(c[k>>2]|0)+12>>2]=c[j>>2];a=(c[k>>2]|0)+4|0;c[a>>2]=c[a>>2]|256&c[(c[j>>2]|0)+4>>2]}Yx(c[k>>2]|0);i=f;return}function Yx(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=0;Zx(c[(c[d>>2]|0)+12>>2]|0,e);Zx(c[(c[d>>2]|0)+16>>2]|0,e);a=(c[d>>2]|0)+20|0;if((c[(c[d>>2]|0)+4>>2]&2048|0)!=0){_x(c[a>>2]|0,e)}else{$x(c[a>>2]|0,e)}c[(c[d>>2]|0)+24>>2]=(c[e>>2]|0)+1;i=b;return}function Zx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[e>>2]|0)==0){i=d;return}if((c[(c[e>>2]|0)+24>>2]|0)<=(c[c[f>>2]>>2]|0)){i=d;return}c[c[f>>2]>>2]=c[(c[e>>2]|0)+24>>2];i=d;return}function _x(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[e>>2]|0)==0){i=d;return}Zx(c[(c[e>>2]|0)+36>>2]|0,c[f>>2]|0);Zx(c[(c[e>>2]|0)+44>>2]|0,c[f>>2]|0);Zx(c[(c[e>>2]|0)+60>>2]|0,c[f>>2]|0);Zx(c[(c[e>>2]|0)+64>>2]|0,c[f>>2]|0);$x(c[c[e>>2]>>2]|0,c[f>>2]|0);$x(c[(c[e>>2]|0)+40>>2]|0,c[f>>2]|0);$x(c[(c[e>>2]|0)+48>>2]|0,c[f>>2]|0);_x(c[(c[e>>2]|0)+52>>2]|0,c[f>>2]|0);i=d;return}function $x(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;if((c[f>>2]|0)==0){i=d;return}c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[c[f>>2]>>2]|0)){break}Zx(c[(c[(c[f>>2]|0)+4>>2]|0)+((c[e>>2]|0)*20|0)>>2]|0,c[g>>2]|0);c[e>>2]=(c[e>>2]|0)+1}i=d;return}function ay(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;n=g+20|0;l=g;m=g+4|0;j=g+8|0;h=g+12|0;k=g+16|0;c[n>>2]=a;c[l>>2]=d;c[m>>2]=e;c[j>>2]=f;c[h>>2]=Wx(c[n>>2]|0,154,0,0)|0;if((c[h>>2]|0)==0){n=c[h>>2]|0;i=g;return n|0}c[k>>2]=(c[l>>2]|0)+8+((c[m>>2]|0)*72|0);c[(c[h>>2]|0)+44>>2]=c[(c[k>>2]|0)+16>>2];c[(c[h>>2]|0)+28>>2]=c[(c[k>>2]|0)+40>>2];if((b[(c[(c[h>>2]|0)+44>>2]|0)+36>>1]|0)==(c[j>>2]|0)){b[(c[h>>2]|0)+32>>1]=-1}else{b[(c[h>>2]|0)+32>>1]=c[j>>2];d=bL(1,0,((c[j>>2]|0)>=64?63:c[j>>2]|0)|0)|0;n=(c[k>>2]|0)+56|0;e=n;a=c[e+4>>2]|D;c[n>>2]=c[e>>2]|d;c[n+4>>2]=a}n=(c[h>>2]|0)+4|0;c[n>>2]=c[n>>2]|4;n=c[h>>2]|0;i=g;return n|0}function by(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;j=f+24|0;l=f;m=f+4|0;k=f+8|0;e=f+12|0;h=f+16|0;g=f+20|0;c[l>>2]=a;c[m>>2]=b;c[k>>2]=d;a:do{if((c[(c[m>>2]|0)+4>>2]|0)==0){a=c[(c[m>>2]|0)+8>>2]|0;c[e>>2]=a;if((a|0)!=0){c[h>>2]=c[l>>2];b:while(1){if((c[h>>2]|0)==0){break a}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[c[h>>2]>>2]|0)){break}if((Dc(c[e>>2]|0,c[(c[h>>2]|0)+8+(c[g>>2]<<4)>>2]|0)|0)==0){break b}c[g>>2]=(c[g>>2]|0)+1}c[h>>2]=c[(c[h>>2]|0)+4>>2]}c[c[k>>2]>>2]=c[h>>2];c[j>>2]=(c[h>>2]|0)+8+(c[g>>2]<<4);a=c[j>>2]|0;i=f;return a|0}}}while(0);c[j>>2]=0;a=c[j>>2]|0;i=f;return a|0}function cy(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=i;i=i+48|0;n=o+36|0;p=o+32|0;h=o+28|0;r=o+24|0;k=o+20|0;l=o+16|0;s=o+8|0;m=o+4|0;j=o;q=o+12|0;c[p>>2]=e;c[h>>2]=f;c[r>>2]=g;if((c[h>>2]|0)==0){c[n>>2]=0;e=c[n>>2]|0;i=o;return e|0}if((c[c[h>>2]>>2]|0)>0){g=((c[c[h>>2]>>2]|0)-1|0)*72|0}else{g=0}c[s>>2]=80+g;c[k>>2]=$e(c[p>>2]|0,c[s>>2]|0)|0;if((c[k>>2]|0)==0){c[n>>2]=0;e=c[n>>2]|0;i=o;return e|0}e=c[c[h>>2]>>2]|0;c[(c[k>>2]|0)+4>>2]=e;c[c[k>>2]>>2]=e;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[c[h>>2]>>2]|0)){break}c[m>>2]=(c[k>>2]|0)+8+((c[l>>2]|0)*72|0);c[j>>2]=(c[h>>2]|0)+8+((c[l>>2]|0)*72|0);c[c[m>>2]>>2]=c[c[j>>2]>>2];e=pe(c[p>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;c[(c[m>>2]|0)+4>>2]=e;e=pe(c[p>>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0;c[(c[m>>2]|0)+8>>2]=e;e=pe(c[p>>2]|0,c[(c[j>>2]|0)+12>>2]|0)|0;c[(c[m>>2]|0)+12>>2]=e;a[(c[m>>2]|0)+36>>0]=a[(c[j>>2]|0)+36>>0]|0;c[(c[m>>2]|0)+40>>2]=c[(c[j>>2]|0)+40>>2];c[(c[m>>2]|0)+24>>2]=c[(c[j>>2]|0)+24>>2];c[(c[m>>2]|0)+28>>2]=c[(c[j>>2]|0)+28>>2];e=(c[m>>2]|0)+37|0;a[e>>0]=a[e>>0]&-3|((d[(c[j>>2]|0)+37>>0]|0)>>>1&1&1)<<1&255;e=(c[m>>2]|0)+37|0;a[e>>0]=a[e>>0]&-5|((d[(c[j>>2]|0)+37>>0]|0)>>>2&1&1)<<2&255;e=(c[m>>2]|0)+37|0;a[e>>0]=a[e>>0]&-9|((d[(c[j>>2]|0)+37>>0]|0)>>>3&1&1)<<3&255;e=pe(c[p>>2]|0,c[(c[j>>2]|0)+64>>2]|0)|0;c[(c[m>>2]|0)+64>>2]=e;e=(c[m>>2]|0)+37|0;a[e>>0]=a[e>>0]&-2|a[(c[j>>2]|0)+37>>0]&1&1;c[(c[m>>2]|0)+68>>2]=c[(c[j>>2]|0)+68>>2];e=c[(c[j>>2]|0)+16>>2]|0;c[(c[m>>2]|0)+16>>2]=e;c[q>>2]=e;if((c[q>>2]|0)!=0){e=(c[q>>2]|0)+40|0;b[e>>1]=(b[e>>1]|0)+1<<16>>16}g=Bw(c[p>>2]|0,c[(c[j>>2]|0)+20>>2]|0,c[r>>2]|0)|0;c[(c[m>>2]|0)+20>>2]=g;g=hx(c[p>>2]|0,c[(c[j>>2]|0)+44>>2]|0,c[r>>2]|0)|0;c[(c[m>>2]|0)+44>>2]=g;g=ey(c[p>>2]|0,c[(c[j>>2]|0)+48>>2]|0)|0;c[(c[m>>2]|0)+48>>2]=g;g=(c[j>>2]|0)+56|0;f=c[g+4>>2]|0;e=(c[m>>2]|0)+56|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[l>>2]=(c[l>>2]|0)+1}c[n>>2]=c[k>>2];e=c[n>>2]|0;i=o;return e|0}function dy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;h=d+16|0;g=d;e=d+4|0;j=d+8|0;f=d+12|0;c[h>>2]=a;c[g>>2]=b;c[e>>2]=0;if((c[g>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[j>>2]=24+((c[c[g>>2]>>2]|0)-1<<4);c[e>>2]=ve(c[h>>2]|0,c[j>>2]|0)|0;if((c[e>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[c[e>>2]>>2]=c[c[g>>2]>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[g>>2]>>2]|0)){break}a=Bw(c[h>>2]|0,c[(c[g>>2]|0)+8+(c[f>>2]<<4)+8>>2]|0,0)|0;c[(c[e>>2]|0)+8+(c[f>>2]<<4)+8>>2]=a;a=px(c[h>>2]|0,c[(c[g>>2]|0)+8+(c[f>>2]<<4)+4>>2]|0,0)|0;c[(c[e>>2]|0)+8+(c[f>>2]<<4)+4>>2]=a;a=pe(c[h>>2]|0,c[(c[g>>2]|0)+8+(c[f>>2]<<4)>>2]|0)|0;c[(c[e>>2]|0)+8+(c[f>>2]<<4)>>2]=a;c[f>>2]=(c[f>>2]|0)+1}a=c[e>>2]|0;i=d;return a|0}function ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+24|0;f=d;j=d+4|0;g=d+8|0;h=d+12|0;k=d+16|0;l=d+20|0;c[f>>2]=a;c[j>>2]=b;if((c[j>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[g>>2]=$e(c[f>>2]|0,8)|0;if((c[g>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[(c[g>>2]|0)+4>>2]=c[(c[j>>2]|0)+4>>2];a=$e(c[f>>2]|0,c[(c[j>>2]|0)+4>>2]<<3)|0;c[c[g>>2]>>2]=a;if((c[c[g>>2]>>2]|0)==0){cc(c[f>>2]|0,c[g>>2]|0);c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[j>>2]|0)+4>>2]|0)){break}c[k>>2]=(c[c[g>>2]>>2]|0)+(c[h>>2]<<3);c[l>>2]=(c[c[j>>2]>>2]|0)+(c[h>>2]<<3);a=pe(c[f>>2]|0,c[c[l>>2]>>2]|0)|0;c[c[k>>2]>>2]=a;c[(c[k>>2]|0)+4>>2]=c[(c[l>>2]|0)+4>>2];c[h>>2]=(c[h>>2]|0)+1}c[e>>2]=c[g>>2];a=c[e>>2]|0;i=d;return a|0}function fy(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;s=i;i=i+112|0;p=s;k=s+92|0;m=s+88|0;v=s+84|0;C=s+80|0;G=s+76|0;q=s+72|0;D=s+64|0;F=s+56|0;o=s+52|0;n=s+48|0;I=s+96|0;H=s+20|0;r=s+16|0;l=s+4|0;E=s+8|0;u=s+12|0;B=s+40|0;y=s+24|0;x=s+28|0;w=s+32|0;t=s+36|0;z=s+44|0;c[m>>2]=e;c[v>>2]=f;c[C>>2]=g;c[G>>2]=h;c[q>>2]=j;c[I>>2]=c[(c[v>>2]|0)+56>>2];c[H>>2]=c[(c[v>>2]|0)+52>>2];c[r>>2]=0;e=c[m>>2]|0;c[p>>2]=c[c[v>>2]>>2];c[l>>2]=cf(e,1768,p)|0;if((c[l>>2]|0)==0){c[k>>2]=7;e=c[k>>2]|0;i=s;return e|0}c[o>>2]=ve(c[m>>2]|0,28)|0;j=c[m>>2]|0;if((c[o>>2]|0)==0){cc(j,c[l>>2]|0);c[k>>2]=7;e=c[k>>2]|0;i=s;return e|0}c[c[o>>2]>>2]=j;c[(c[o>>2]|0)+4>>2]=c[C>>2];c[E>>2]=ef(c[m>>2]|0,c[(c[v>>2]|0)+68>>2]|0)|0;c[(c[(c[v>>2]|0)+56>>2]|0)+4>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[E>>2]<<4)>>2];c[D+4>>2]=c[v>>2];c[D>>2]=c[o>>2];c[F>>2]=c[(c[m>>2]|0)+316>>2];c[(c[m>>2]|0)+316>>2]=D;c[n>>2]=tb[c[G>>2]&15](c[m>>2]|0,c[(c[C>>2]|0)+8>>2]|0,c[H>>2]|0,c[I>>2]|0,(c[o>>2]|0)+8|0,r)|0;c[(c[m>>2]|0)+316>>2]=c[F>>2];if((c[n>>2]|0)==7){a[(c[m>>2]|0)+64>>0]=1}a:do{if(0!=(c[n>>2]|0)){t=c[m>>2]|0;if((c[r>>2]|0)==0){c[p>>2]=c[l>>2];e=cf(t,24488,p)|0;c[c[q>>2]>>2]=e}else{c[p>>2]=c[r>>2];e=cf(t,1768,p)|0;c[c[q>>2]>>2]=e;oc(c[r>>2]|0)}cc(c[m>>2]|0,c[o>>2]|0)}else{if((c[(c[o>>2]|0)+8>>2]|0)!=0){c[c[(c[o>>2]|0)+8>>2]>>2]=c[c[C>>2]>>2];c[(c[o>>2]|0)+12>>2]=1;if((c[D+4>>2]|0)!=0){c[u>>2]=24520;f=c[m>>2]|0;e=c[u>>2]|0;c[p>>2]=c[c[v>>2]>>2];e=cf(f,e,p)|0;c[c[q>>2]>>2]=e;Cr(c[o>>2]|0);c[n>>2]=1;break}c[(c[o>>2]|0)+24>>2]=c[(c[v>>2]|0)+60>>2];c[(c[v>>2]|0)+60>>2]=c[o>>2];c[B>>2]=0;while(1){if((c[B>>2]|0)>=(b[(c[v>>2]|0)+38>>1]|0)){break a}c[y>>2]=c[(c[(c[v>>2]|0)+4>>2]|0)+((c[B>>2]|0)*24|0)+12>>2];c[w>>2]=0;if((c[y>>2]|0)!=0){c[x>>2]=Ub(c[y>>2]|0)|0;if((Tb(24568,c[y>>2]|0,6)|0)!=0){A=21}else{if((a[(c[y>>2]|0)+6>>0]|0)!=0){if((a[(c[y>>2]|0)+6>>0]|0)!=32){A=21}}}b:do{if((A|0)==21){A=0;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[x>>2]|0)){break b}if(0==(Tb(24576,(c[y>>2]|0)+(c[w>>2]|0)|0,7)|0)){if((a[(c[y>>2]|0)+((c[w>>2]|0)+7)>>0]|0)==0){break}if((a[(c[y>>2]|0)+((c[w>>2]|0)+7)>>0]|0)==32){break}}c[w>>2]=(c[w>>2]|0)+1}c[w>>2]=(c[w>>2]|0)+1}}while(0);if((c[w>>2]|0)<(c[x>>2]|0)){c[z>>2]=6+((a[(c[y>>2]|0)+((c[w>>2]|0)+6)>>0]|0)!=0?1:0);c[t>>2]=c[w>>2];while(1){if(((c[t>>2]|0)+(c[z>>2]|0)|0)>(c[x>>2]|0)){break}a[(c[y>>2]|0)+(c[t>>2]|0)>>0]=a[(c[y>>2]|0)+((c[t>>2]|0)+(c[z>>2]|0))>>0]|0;c[t>>2]=(c[t>>2]|0)+1}if((a[(c[y>>2]|0)+(c[w>>2]|0)>>0]|0)==0){if((c[w>>2]|0)>0){a[(c[y>>2]|0)+((c[w>>2]|0)-1)>>0]=0}}e=(c[(c[v>>2]|0)+4>>2]|0)+((c[B>>2]|0)*24|0)+23|0;a[e>>0]=d[e>>0]|2}}c[B>>2]=(c[B>>2]|0)+1}}}}while(0);cc(c[m>>2]|0,c[l>>2]|0);c[k>>2]=c[n>>2];e=c[k>>2]|0;i=s;return e|0}function gy(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;d=e;g=e+4|0;c[f>>2]=b;c[d>>2]=0;c[g>>2]=c[c[f>>2]>>2];if((a[(c[g>>2]|0)+137>>0]|0)==0){c[d>>2]=Fy(c[g>>2]|0,(c[f>>2]|0)+4|0)|0}if((c[d>>2]|0)==0){g=c[d>>2]|0;i=e;return g|0}c[(c[f>>2]|0)+12>>2]=c[d>>2];g=(c[f>>2]|0)+64|0;c[g>>2]=(c[g>>2]|0)+1;g=c[d>>2]|0;i=e;return g|0}function hy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+48|0;d=f+32|0;e=f+28|0;n=f+24|0;m=f+20|0;g=f+16|0;j=f+8|0;k=f+4|0;l=f;h=f+12|0;c[d>>2]=a;c[e>>2]=b;c[n>>2]=c[c[d>>2]>>2];c[m>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[e>>2]<<4)+12>>2];$v(c[d>>2]|0,0,c[e>>2]|0);c[j>>2]=c[(c[d>>2]|0)+68>>2];a=(c[d>>2]|0)+68|0;c[a>>2]=(c[a>>2]|0)+3;ly(c[d>>2]|0,c[e>>2]|0,c[j>>2]|0,0,0);c[k>>2]=(c[(c[d>>2]|0)+72>>2]|0)+1;c[l>>2]=c[(c[d>>2]|0)+68>>2];c[g>>2]=c[(c[m>>2]|0)+16>>2];while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[(c[g>>2]|0)+8>>2];my(c[d>>2]|0,c[h>>2]|0,0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0);c[g>>2]=c[c[g>>2]>>2]}ny(c[d>>2]|0,c[e>>2]|0);i=f;return}function iy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+12|0;h=e;d=e+4|0;f=e+8|0;c[g>>2]=a;c[h>>2]=b;c[f>>2]=Iv(c[g>>2]|0,c[h>>2]|0)|0;c[d>>2]=xg(c[g>>2]|0,c[f>>2]|0)|0;cc(c[g>>2]|0,c[f>>2]|0);i=e;return c[d>>2]|0}function jy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;g=k+16|0;e=k;j=k+4|0;f=k+8|0;h=k+12|0;c[g>>2]=a;c[e>>2]=b;c[j>>2]=d;c[f>>2]=ef(c[c[g>>2]>>2]|0,c[(c[e>>2]|0)+68>>2]|0)|0;$v(c[g>>2]|0,0,c[f>>2]|0);c[h>>2]=c[(c[g>>2]|0)+68>>2];a=(c[g>>2]|0)+68|0;c[a>>2]=(c[a>>2]|0)+3;a=c[g>>2]|0;b=c[f>>2]|0;d=c[h>>2]|0;if((c[j>>2]|0)!=0){ly(a,b,d,c[c[j>>2]>>2]|0,24680)}else{ly(a,b,d,c[c[e>>2]>>2]|0,24688)}my(c[g>>2]|0,c[e>>2]|0,c[j>>2]|0,c[h>>2]|0,(c[(c[g>>2]|0)+72>>2]|0)+1|0,c[(c[g>>2]|0)+68>>2]|0);ny(c[g>>2]|0,c[f>>2]|0);i=k;return}function ky(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=i;i=i+32|0;k=m;l=m+28|0;p=m+4|0;n=m+8|0;o=m+12|0;h=m+16|0;r=m+20|0;q=m+24|0;c[p>>2]=b;c[n>>2]=e;c[o>>2]=f;c[h>>2]=g;c[q>>2]=c[c[p>>2]>>2];if((c[o>>2]|0)!=0){if((c[(c[o>>2]|0)+4>>2]|0)>>>0>0){if((a[(c[q>>2]|0)+137>>0]|0)!=0){bf(c[p>>2]|0,24632,k);b=(c[p>>2]|0)+64|0;c[b>>2]=(c[b>>2]|0)+1;c[l>>2]=-1;b=c[l>>2]|0;i=m;return b|0}c[c[h>>2]>>2]=c[o>>2];c[r>>2]=iy(c[q>>2]|0,c[n>>2]|0)|0;if((c[r>>2]|0)<0){b=c[p>>2]|0;c[k>>2]=c[n>>2];bf(b,24656,k);b=(c[p>>2]|0)+64|0;c[b>>2]=(c[b>>2]|0)+1;c[l>>2]=-1;b=c[l>>2]|0;i=m;return b|0}}else{j=7}}else{j=7}if((j|0)==7){c[r>>2]=d[(c[q>>2]|0)+136>>0]|0;c[c[h>>2]>>2]=c[n>>2]}c[l>>2]=c[r>>2];b=c[l>>2]|0;i=m;return b|0}function ly(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=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;r=i;i=i+80|0;s=r;p=r+64|0;n=r+60|0;l=r+56|0;u=r+52|0;w=r+48|0;j=r+40|0;v=r+68|0;h=r+32|0;k=r+28|0;m=r+16|0;o=r+72|0;q=r+44|0;t=r+36|0;c[p>>2]=b;c[n>>2]=d;c[l>>2]=e;c[u>>2]=f;c[w>>2]=g;c[v>>2]=c[c[p>>2]>>2];c[k>>2]=Ov(c[p>>2]|0)|0;if((c[k>>2]|0)==0){i=r;return}c[h>>2]=(c[(c[v>>2]|0)+16>>2]|0)+(c[n>>2]<<4);c[j>>2]=0;while(1){if((c[j>>2]|0)>=3){break}c[q>>2]=c[24888+(c[j>>2]<<3)>>2];b=cw(c[v>>2]|0,c[q>>2]|0,c[c[h>>2]>>2]|0)|0;c[t>>2]=b;do{if((b|0)==0){if((c[24892+(c[j>>2]<<3)>>2]|0)!=0){b=c[p>>2]|0;e=c[q>>2]|0;d=c[24892+(c[j>>2]<<3)>>2]|0;c[s>>2]=c[c[h>>2]>>2];c[s+4>>2]=e;c[s+8>>2]=d;Nv(b,24976,s);c[m+(c[j>>2]<<2)>>2]=c[(c[p>>2]|0)+388>>2];a[o+(c[j>>2]|0)>>0]=2}}else{c[m+(c[j>>2]<<2)>>2]=c[(c[t>>2]|0)+32>>2];a[o+(c[j>>2]|0)>>0]=0;py(c[p>>2]|0,c[n>>2]|0,c[m+(c[j>>2]<<2)>>2]|0,1,c[q>>2]|0);if((c[u>>2]|0)!=0){b=c[p>>2]|0;f=c[q>>2]|0;e=c[w>>2]|0;d=c[u>>2]|0;c[s>>2]=c[c[h>>2]>>2];c[s+4>>2]=f;c[s+8>>2]=e;c[s+12>>2]=d;Nv(b,25e3,s);break}else{Qv(c[k>>2]|0,115,c[m+(c[j>>2]<<2)>>2]|0,c[n>>2]|0)|0;break}}}while(0);c[j>>2]=(c[j>>2]|0)+1}c[j>>2]=0;while(1){if((c[24892+(c[j>>2]<<3)>>2]|0)==0){break}ff(c[k>>2]|0,53,(c[l>>2]|0)+(c[j>>2]|0)|0,c[m+(c[j>>2]<<2)>>2]|0,c[n>>2]|0,3)|0;gf(c[k>>2]|0,a[o+(c[j>>2]|0)>>0]|0);c[j>>2]=(c[j>>2]|0)+1}i=r;return}function my(b,f,g,h,j,k){b=b|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;G=i;i=i+128|0;K=G+84|0;O=G+60|0;x=G+64|0;u=G+68|0;Q=G+72|0;P=G+76|0;F=G+80|0;y=G+88|0;C=G+92|0;o=G+96|0;n=G+100|0;l=G+104|0;q=G+108|0;M=G+112|0;w=G+116|0;v=G+56|0;B=G+20|0;I=G;t=G+4|0;s=G+8|0;r=G+12|0;p=G+16|0;H=G+24|0;A=G+28|0;z=G+32|0;E=G+36|0;J=G+40|0;D=G+44|0;N=G+48|0;L=G+52|0;c[K>>2]=b;c[O>>2]=f;c[x>>2]=g;c[u>>2]=h;c[Q>>2]=j;c[P>>2]=k;c[F>>2]=c[c[K>>2]>>2];c[q>>2]=-1;a[w>>0]=1;b=c[Q>>2]|0;c[Q>>2]=b+1;c[v>>2]=b;b=c[Q>>2]|0;c[Q>>2]=b+1;c[B>>2]=b;b=c[Q>>2]|0;c[Q>>2]=b+1;c[I>>2]=b;b=c[Q>>2]|0;c[Q>>2]=b+1;c[t>>2]=b;b=c[Q>>2]|0;c[Q>>2]=b+1;c[s>>2]=b;b=c[Q>>2]|0;c[Q>>2]=b+1;c[r>>2]=b;b=c[Q>>2]|0;c[Q>>2]=b+1;c[p>>2]=b;c[H>>2]=c[Q>>2];if((c[(c[K>>2]|0)+72>>2]|0)>(c[Q>>2]|0)){f=c[(c[K>>2]|0)+72>>2]|0}else{f=c[Q>>2]|0}c[(c[K>>2]|0)+72>>2]=f;c[n>>2]=Ov(c[K>>2]|0)|0;if((c[n>>2]|0)==0){i=G;return}if((c[O>>2]|0)==0){i=G;return}if((c[(c[O>>2]|0)+32>>2]|0)==0){i=G;return}if((Tb(c[c[O>>2]>>2]|0,21672,7)|0)==0){i=G;return}c[M>>2]=ef(c[F>>2]|0,c[(c[O>>2]|0)+68>>2]|0)|0;if((Lv(c[K>>2]|0,28,c[c[O>>2]>>2]|0,0,c[(c[(c[F>>2]|0)+16>>2]|0)+(c[M>>2]<<4)>>2]|0)|0)!=0){i=G;return}py(c[K>>2]|0,c[M>>2]|0,c[(c[O>>2]|0)+32>>2]|0,0,c[c[O>>2]>>2]|0);b=c[P>>2]|0;c[P>>2]=b+1;c[o>>2]=b;b=c[P>>2]|0;c[P>>2]=b+1;c[C>>2]=b;if((c[(c[K>>2]|0)+68>>2]|0)>(c[P>>2]|0)){P=c[(c[K>>2]|0)+68>>2]|0}else{P=c[P>>2]|0}c[(c[K>>2]|0)+68>>2]=P;qy(c[K>>2]|0,c[o>>2]|0,c[M>>2]|0,c[O>>2]|0,52);Sv(c[n>>2]|0,97,0,c[s>>2]|0,0,c[c[O>>2]>>2]|0,0)|0;c[y>>2]=c[(c[O>>2]|0)+8>>2];while(1){P=c[x>>2]|0;if((c[y>>2]|0)==0){break}if((P|0)!=0){if((c[x>>2]|0)==(c[y>>2]|0)){m=16}}else{m=16}if((m|0)==16){m=0;if((c[(c[y>>2]|0)+36>>2]|0)==0){a[w>>0]=0}c[A>>2]=e[(c[y>>2]|0)+50>>1]|0;c[z>>2]=$e(c[F>>2]|0,(c[A>>2]|0)+1<<2)|0;if((c[z>>2]|0)!=0){if((a[(c[y>>2]|0)+55>>0]&3|0)==2){if((a[(c[O>>2]|0)+44>>0]&32|0)==0){m=22}else{c[N>>2]=c[c[O>>2]>>2]}}else{m=22}if((m|0)==22){m=0;c[N>>2]=c[c[y>>2]>>2]}Sv(c[n>>2]|0,97,0,c[r>>2]|0,0,c[N>>2]|0,0)|0;if((c[(c[K>>2]|0)+72>>2]|0)>((c[H>>2]|0)+(c[A>>2]|0)|0)){P=c[(c[K>>2]|0)+72>>2]|0}else{P=(c[H>>2]|0)+(c[A>>2]|0)|0}c[(c[K>>2]|0)+72>>2]=P;Tv(c[n>>2]|0,52,c[C>>2]|0,c[(c[y>>2]|0)+44>>2]|0,c[M>>2]|0)|0;ry(c[K>>2]|0,c[y>>2]|0);Qv(c[n>>2]|0,25,(c[A>>2]|0)+1|0,(c[B>>2]|0)+1|0)|0;Tv(c[n>>2]|0,1,0,(c[B>>2]|0)+1|0,c[B>>2]|0)|0;nf(c[n>>2]|0,-1,24696,-5);gf(c[n>>2]|0,1);c[E>>2]=oy(c[n>>2]|0,105,c[C>>2]|0)|0;Qv(c[n>>2]|0,25,0,c[I>>2]|0)|0;c[J>>2]=Yv(c[n>>2]|0,16)|0;c[D>>2]=sy(c[n>>2]|0)|0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[A>>2]|0)){break}c[L>>2]=ty(c[K>>2]|0,c[(c[(c[y>>2]|0)+32>>2]|0)+(c[l>>2]<<2)>>2]|0)|0;Qv(c[n>>2]|0,25,c[l>>2]|0,c[I>>2]|0)|0;Tv(c[n>>2]|0,46,c[C>>2]|0,c[l>>2]|0,c[t>>2]|0)|0;b=Sv(c[n>>2]|0,78,c[t>>2]|0,0,(c[H>>2]|0)+(c[l>>2]|0)|0,c[L>>2]|0,-4)|0;c[(c[z>>2]|0)+(c[l>>2]<<2)>>2]=b;gf(c[n>>2]|0,-128);c[l>>2]=(c[l>>2]|0)+1}Qv(c[n>>2]|0,25,c[A>>2]|0,c[I>>2]|0)|0;b=Yv(c[n>>2]|0,16)|0;c[(c[z>>2]|0)+(c[A>>2]<<2)>>2]=b;jw(c[n>>2]|0,c[J>>2]|0);c[l>>2]=0;while(1){P=c[n>>2]|0;if((c[l>>2]|0)>=(c[A>>2]|0)){break}jw(P,c[(c[z>>2]|0)+(c[l>>2]<<2)>>2]|0);Tv(c[n>>2]|0,46,c[C>>2]|0,c[l>>2]|0,(c[H>>2]|0)+(c[l>>2]|0)|0)|0;c[l>>2]=(c[l>>2]|0)+1}jw(P,c[(c[z>>2]|0)+(c[A>>2]<<2)>>2]|0);Tv(c[n>>2]|0,1,1,c[B>>2]|0,c[t>>2]|0)|0;nf(c[n>>2]|0,-1,24736,-5);gf(c[n>>2]|0,2);Qv(c[n>>2]|0,9,c[C>>2]|0,c[D>>2]|0)|0;uy(c[n>>2]|0,c[B>>2]|0,0,c[p>>2]|0);Sv(c[n>>2]|0,48,c[s>>2]|0,3,c[t>>2]|0,24776,0)|0;Qv(c[n>>2]|0,69,c[u>>2]|0,c[v>>2]|0)|0;Tv(c[n>>2]|0,70,c[u>>2]|0,c[t>>2]|0,c[v>>2]|0)|0;gf(c[n>>2]|0,8);jw(c[n>>2]|0,c[E>>2]|0);cc(c[F>>2]|0,c[z>>2]|0)}}c[y>>2]=c[(c[y>>2]|0)+20>>2]}if((P|0)!=0){i=G;return}if((d[w>>0]|0|0)==0){i=G;return}Qv(c[n>>2]|0,49,c[o>>2]|0,c[p>>2]|0)|0;c[q>>2]=oy(c[n>>2]|0,45,c[p>>2]|0)|0;Qv(c[n>>2]|0,28,0,c[r>>2]|0)|0;Sv(c[n>>2]|0,48,c[s>>2]|0,3,c[t>>2]|0,24776,0)|0;Qv(c[n>>2]|0,69,c[u>>2]|0,c[v>>2]|0)|0;Tv(c[n>>2]|0,70,c[u>>2]|0,c[t>>2]|0,c[v>>2]|0)|0;gf(c[n>>2]|0,8);jw(c[n>>2]|0,c[q>>2]|0);i=G;return}function ny(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=Ov(c[g>>2]|0)|0;if((c[e>>2]|0)==0){i=d;return}oy(c[e>>2]|0,120,c[f>>2]|0)|0;i=d;return}function oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=Tv(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0,0,0)|0;i=e;return a|0}function py(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+48|0;t=k+28|0;l=k+24|0;m=k+20|0;n=k+32|0;o=k+16|0;p=k+8|0;q=k+4|0;r=k;j=k+12|0;c[t>>2]=b;c[l>>2]=e;c[m>>2]=f;a[n>>0]=g;c[o>>2]=h;h=c[t>>2]|0;if((c[(c[t>>2]|0)+408>>2]|0)!=0){h=c[h+408>>2]|0}c[p>>2]=h;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[(c[p>>2]|0)+396>>2]|0)){break}c[j>>2]=(c[(c[p>>2]|0)+400>>2]|0)+(c[q>>2]<<4);if((c[c[j>>2]>>2]|0)==(c[l>>2]|0)){if((c[(c[j>>2]|0)+4>>2]|0)==(c[m>>2]|0)){s=7;break}}c[q>>2]=(c[q>>2]|0)+1}if((s|0)==7){if((d[(c[j>>2]|0)+8>>0]|0|0)!=0){l=1}else{l=(d[n>>0]|0|0)!=0}a[(c[j>>2]|0)+8>>0]=l&1;i=k;return}c[r>>2]=(c[(c[p>>2]|0)+396>>2]|0)+1<<4;q=Ey(c[c[p>>2]>>2]|0,c[(c[p>>2]|0)+400>>2]|0,c[r>>2]|0)|0;c[(c[p>>2]|0)+400>>2]=q;q=(c[p>>2]|0)+396|0;if((c[(c[p>>2]|0)+400>>2]|0)!=0){t=c[q>>2]|0;c[q>>2]=t+1;c[j>>2]=(c[(c[p>>2]|0)+400>>2]|0)+(t<<4);c[c[j>>2]>>2]=c[l>>2];c[(c[j>>2]|0)+4>>2]=c[m>>2];a[(c[j>>2]|0)+8>>0]=a[n>>0]|0;c[(c[j>>2]|0)+12>>2]=c[o>>2];i=k;return}else{c[q>>2]=0;a[(c[c[p>>2]>>2]|0)+64>>0]=1;i=k;return}}function qy(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+32|0;q=o+24|0;m=o;l=o+4|0;k=o+8|0;n=o+12|0;j=o+16|0;p=o+20|0;c[q>>2]=d;c[m>>2]=e;c[l>>2]=f;c[k>>2]=g;c[n>>2]=h;c[j>>2]=Ov(c[q>>2]|0)|0;py(c[q>>2]|0,c[l>>2]|0,c[(c[k>>2]|0)+32>>2]|0,((c[n>>2]|0)==53?1:0)&255,c[c[k>>2]>>2]|0);if((a[(c[k>>2]|0)+44>>0]&32|0)==0){ff(c[j>>2]|0,c[n>>2]|0,c[m>>2]|0,c[(c[k>>2]|0)+32>>2]|0,c[l>>2]|0,b[(c[k>>2]|0)+38>>1]|0)|0;i=o;return}else{c[p>>2]=Dy(c[k>>2]|0)|0;Tv(c[j>>2]|0,c[n>>2]|0,c[m>>2]|0,c[(c[p>>2]|0)+44>>2]|0,c[l>>2]|0)|0;ry(c[q>>2]|0,c[p>>2]|0);i=o;return}}function ry(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;e=d;g=d+4|0;c[f>>2]=a;c[e>>2]=b;c[g>>2]=c[(c[f>>2]|0)+8>>2];a=c[g>>2]|0;nf(a,-1,Ay(c[f>>2]|0,c[e>>2]|0)|0,-6);i=d;return}function sy(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+32>>2]|0}function ty(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;h=f+12|0;k=f;m=f+4|0;j=f+17|0;l=f+16|0;g=f+8|0;c[h>>2]=b;c[k>>2]=e;c[m>>2]=c[c[h>>2]>>2];a[j>>0]=a[(c[(c[(c[m>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;a[l>>0]=a[(c[m>>2]|0)+137>>0]|0;c[g>>2]=xh(c[m>>2]|0,a[j>>0]|0,c[k>>2]|0,d[l>>0]|0)|0;if((a[l>>0]|0)!=0){m=c[g>>2]|0;i=f;return m|0}if((c[g>>2]|0)!=0){if((c[(c[g>>2]|0)+12>>2]|0)!=0){m=c[g>>2]|0;i=f;return m|0}}c[g>>2]=Lw(c[h>>2]|0,a[j>>0]|0,c[g>>2]|0,c[k>>2]|0)|0;m=c[g>>2]|0;i=f;return m|0}function uy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;j=f;h=f+8|0;c[g>>2]=a;c[j>>2]=b;c[f+4>>2]=d;c[h>>2]=e;Tv(c[g>>2]|0,1,0,c[j>>2]|0,c[h>>2]|0)|0;nf(c[g>>2]|0,-1,24784,-5);gf(c[g>>2]|0,1);i=f;return}function vy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+64|0;n=k+16|0;f=k+40|0;o=k+48|0;j=k+24|0;m=k+44|0;h=k+32|0;g=k+36|0;e=k;l=k+8|0;c[f>>2]=a;c[k+28>>2]=b;c[o>>2]=d;c[j>>2]=Hd(c[c[o>>2]>>2]|0)|0;c[g>>2]=Sc((c[(c[j>>2]|0)+8>>2]|0)*25|0)|0;if((c[g>>2]|0)==0){ke(c[f>>2]|0);i=k;return}o=c[g>>2]|0;a=n;c[a>>2]=c[c[j>>2]>>2];c[a+4>>2]=0;yc(24,o,24840,n)|0;o=c[g>>2]|0;c[m>>2]=o+(Ub(c[g>>2]|0)|0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=((c[(c[j>>2]|0)+8>>2]|0)-1|0)){break}o=e;c[o>>2]=(c[(c[(c[j>>2]|0)+20>>2]|0)+(c[h>>2]<<2)>>2]|0)+1;c[o+4>>2]=0;o=e;o=dL(c[c[j>>2]>>2]|0,0,c[o>>2]|0,c[o+4>>2]|0)|0;o=$K(o|0,D|0,1,0)|0;d=e;d=oL(o|0,D|0,c[d>>2]|0,c[d+4>>2]|0)|0;o=l;c[o>>2]=d;c[o+4>>2]=D;o=c[m>>2]|0;d=l;b=c[d+4>>2]|0;a=n;c[a>>2]=c[d>>2];c[a+4>>2]=b;yc(24,o,24848,n)|0;o=Ub(c[m>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+o;c[h>>2]=(c[h>>2]|0)+1}ce(c[f>>2]|0,c[g>>2]|0,-1,13);i=k;return}function wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+32|0;j=f+4|0;g=f+8|0;e=f+12|0;h=f+16|0;c[f+20>>2]=a;c[f>>2]=b;c[j>>2]=d;c[e>>2]=Hd(c[c[j>>2]>>2]|0)|0;c[h>>2]=Od(c[(c[j>>2]|0)+4>>2]|0)|0;if((c[c[e>>2]>>2]|0)==0){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[e>>2]|0)+8>>2]|0)){break}c[(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<2)>>2]=1;c[g>>2]=(c[g>>2]|0)+1}j=c[e>>2]|0;a=c[j>>2]|0;a=a+1|0;c[j>>2]=a;i=f;return}xy(c[e>>2]|0,c[h>>2]|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[h>>2]|0)){break}j=(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<2)|0;c[j>>2]=(c[j>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=c[h>>2];while(1){if((c[g>>2]|0)>=(c[(c[e>>2]|0)+8>>2]|0)){break}j=(c[(c[e>>2]|0)+20>>2]|0)+(c[g>>2]<<2)|0;c[j>>2]=(c[j>>2]|0)+1;c[(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<2)>>2]=1;c[g>>2]=(c[g>>2]|0)+1}j=c[e>>2]|0;a=c[j>>2]|0;a=a+1|0;c[j>>2]=a;i=f;return}function xy(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return}function yy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+28|0;m=e+4|0;g=e+8|0;j=e+12|0;h=e+16|0;l=e+20|0;k=e+24|0;c[f>>2]=a;c[e>>2]=b;c[m>>2]=d;c[j>>2]=Od(c[c[m>>2]>>2]|0)|0;c[h>>2]=(c[j>>2]|0)+1&-2;c[l>>2]=52+(c[h>>2]<<2)+(c[h>>2]<<2);c[k>>2]=re(c[f>>2]|0)|0;c[g>>2]=ve(c[k>>2]|0,c[l>>2]|0)|0;if((c[g>>2]|0)==0){ke(c[f>>2]|0);i=e;return}else{c[(c[g>>2]|0)+48>>2]=c[k>>2];c[c[g>>2]>>2]=0;c[(c[g>>2]|0)+8>>2]=c[j>>2];c[(c[g>>2]|0)+20>>2]=(c[g>>2]|0)+52;c[(c[g>>2]|0)+16>>2]=(c[(c[g>>2]|0)+20>>2]|0)+(c[h>>2]<<2);Td(c[f>>2]|0,c[g>>2]|0,4,17);i=e;return}}function zy(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];cc(c[(c[d>>2]|0)+48>>2]|0,c[d>>2]|0);i=b;return}function Ay(b,f){b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;h=j+28|0;k=j;g=j+4|0;l=j+8|0;n=j+12|0;p=j+16|0;m=j+20|0;o=j+24|0;c[k>>2]=b;c[g>>2]=f;if((c[(c[k>>2]|0)+64>>2]|0)!=0){c[h>>2]=0;b=c[h>>2]|0;i=j;return b|0}if((c[(c[g>>2]|0)+40>>2]|0)!=0){if((c[(c[(c[g>>2]|0)+40>>2]|0)+12>>2]|0)!=(c[c[k>>2]>>2]|0)){Ch(c[(c[g>>2]|0)+40>>2]|0);c[(c[g>>2]|0)+40>>2]=0}}do{if((c[(c[g>>2]|0)+40>>2]|0)==0){c[n>>2]=e[(c[g>>2]|0)+52>>1]|0;c[p>>2]=e[(c[g>>2]|0)+50>>1]|0;f=c[c[k>>2]>>2]|0;if(((d[(c[g>>2]|0)+55>>0]|0)>>>3&1|0)!=0){c[m>>2]=By(f,c[p>>2]|0,(c[n>>2]|0)-(c[p>>2]|0)|0)|0}else{c[m>>2]=By(f,c[n>>2]|0,0)|0}if((c[m>>2]|0)!=0){c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[n>>2]|0)){break}c[o>>2]=c[(c[(c[g>>2]|0)+32>>2]|0)+(c[l>>2]<<2)>>2];if((YK(c[o>>2]|0,3640)|0)==0){p=0}else{p=ty(c[k>>2]|0,c[o>>2]|0)|0}c[(c[m>>2]|0)+20+(c[l>>2]<<2)>>2]=p;a[(c[(c[m>>2]|0)+16>>2]|0)+(c[l>>2]|0)>>0]=a[(c[(c[g>>2]|0)+28>>2]|0)+(c[l>>2]|0)>>0]|0;c[l>>2]=(c[l>>2]|0)+1}l=c[m>>2]|0;if((c[(c[k>>2]|0)+64>>2]|0)!=0){Ch(l);break}else{c[(c[g>>2]|0)+40>>2]=l;break}}}}while(0);c[h>>2]=Cy(c[(c[g>>2]|0)+40>>2]|0)|0;b=c[h>>2]|0;i=j;return b|0}function By(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;j=g+12|0;l=g;k=g+4|0;h=g+8|0;c[j>>2]=d;c[l>>2]=e;c[k>>2]=f;c[h>>2]=ve(0,24+(((c[l>>2]|0)+(c[k>>2]|0)|0)*5|0)|0)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+16>>2]=(c[h>>2]|0)+20+((c[l>>2]|0)+(c[k>>2]|0)<<2);b[(c[h>>2]|0)+6>>1]=c[l>>2];b[(c[h>>2]|0)+8>>1]=c[k>>2];a[(c[h>>2]|0)+4>>0]=a[(c[(c[(c[j>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;c[(c[h>>2]|0)+12>>2]=c[j>>2];c[c[h>>2]>>2]=1;d=c[h>>2]|0;i=g;return d|0}else{a[(c[j>>2]|0)+64>>0]=1;d=c[h>>2]|0;i=g;return d|0}return 0}function Cy(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;if((c[b>>2]|0)!=0){a=c[b>>2]|0;c[a>>2]=(c[a>>2]|0)+1}i=d;return c[b>>2]|0}function Dy(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;c[e>>2]=c[(c[f>>2]|0)+8>>2];while(1){if((c[e>>2]|0)==0){b=5;break}if(!((a[(c[e>>2]|0)+55>>0]&3|0)==2^1)){b=5;break}c[e>>2]=c[(c[e>>2]|0)+20>>2]}if((b|0)==5){i=d;return c[e>>2]|0}return 0}function Ey(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;h=e;j=e+4|0;f=e+8|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[f>>2]=Ot(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;if((c[f>>2]|0)!=0){j=c[f>>2]|0;i=e;return j|0}cc(c[g>>2]|0,c[h>>2]|0);j=c[f>>2]|0;i=e;return j|0}function Fy(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;f=j+16|0;h=j;l=j+4|0;g=j+8|0;k=j+12|0;c[f>>2]=d;c[h>>2]=e;c[k>>2]=((c[(c[f>>2]|0)+24>>2]&2|0)!=0^1)&1;c[g>>2]=0;a[(c[f>>2]|0)+137>>0]=1;c[l>>2]=0;while(1){if((c[g>>2]|0)!=0){break}if((c[l>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){break}if((b[(c[(c[(c[f>>2]|0)+16>>2]|0)+(c[l>>2]<<4)+12>>2]|0)+78>>1]&1|0)!=1){if((c[l>>2]|0)!=1){c[g>>2]=Gy(c[f>>2]|0,c[l>>2]|0,c[h>>2]|0)|0;if((c[g>>2]|0)!=0){Hy(c[f>>2]|0,c[l>>2]|0)}}}c[l>>2]=(c[l>>2]|0)+1}if((c[g>>2]|0)==0){if((c[(c[f>>2]|0)+20>>2]|0)>1){if((b[(c[(c[(c[f>>2]|0)+16>>2]|0)+28>>2]|0)+78>>1]&1|0)!=1){c[g>>2]=Gy(c[f>>2]|0,1,c[h>>2]|0)|0;if((c[g>>2]|0)!=0){Hy(c[f>>2]|0,1)}}}}a[(c[f>>2]|0)+137>>0]=0;if((c[g>>2]|0)!=0){d=c[g>>2]|0;i=j;return d|0}if((c[k>>2]|0)==0){d=c[g>>2]|0;i=j;return d|0}Iy(c[f>>2]|0);d=c[g>>2]|0;i=j;return d|0}function Gy(f,g,h){f=f|0;g=g|0;h=h|0;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;l=i;i=i+128|0;j=l;r=l+116|0;m=l+112|0;o=l+108|0;q=l+104|0;v=l+100|0;A=l+96|0;x=l+92|0;B=l+88|0;w=l+120|0;C=l+64|0;s=l+40|0;n=l+24|0;D=l+16|0;t=l+12|0;p=l+8|0;y=l+124|0;u=l+80|0;k=l+84|0;c[m>>2]=f;c[o>>2]=g;c[q>>2]=h;c[p>>2]=0;if((c[o>>2]|0)==1){c[D>>2]=25136}else{c[D>>2]=25032}c[t>>2]=(c[o>>2]|0)==1?21432:21456;c[C>>2]=c[t>>2];c[C+4>>2]=25256;c[C+8>>2]=c[D>>2];c[C+12>>2]=0;c[n>>2]=c[m>>2];c[n+8>>2]=c[o>>2];c[n+12>>2]=0;c[n+4>>2]=c[q>>2];Jy(n,3,C,0)|0;if((c[n+12>>2]|0)!=0){c[v>>2]=c[n+12>>2]}else{c[B>>2]=cw(c[m>>2]|0,c[t>>2]|0,c[(c[(c[m>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2]|0)|0;if((c[B>>2]|0)!=0){f=(c[B>>2]|0)+44|0;a[f>>0]=d[f>>0]|1}c[w>>2]=(c[(c[m>>2]|0)+16>>2]|0)+(c[o>>2]<<4);if((c[(c[w>>2]|0)+4>>2]|0)==0){if((c[o>>2]|0)==1){f=(c[(c[(c[m>>2]|0)+16>>2]|0)+28>>2]|0)+78|0;b[f>>1]=e[f>>1]|1}c[r>>2]=0;f=c[r>>2]|0;i=l;return f|0}Uc(c[(c[w>>2]|0)+4>>2]|0);do{if((Yc(c[(c[w>>2]|0)+4>>2]|0)|0)!=0){z=16}else{c[v>>2]=Wc(c[(c[w>>2]|0)+4>>2]|0,0)|0;if((c[v>>2]|0)!=0){g=c[q>>2]|0;f=c[m>>2]|0;c[j>>2]=ie(c[v>>2]|0)|0;$t(g,f,1768,j);break}else{c[p>>2]=1;z=16;break}}}while(0);a:do{if((z|0)==16){c[A>>2]=0;while(1){if((c[A>>2]|0)>=5){break}Xc(c[(c[w>>2]|0)+4>>2]|0,(c[A>>2]|0)+1|0,s+(c[A>>2]<<2)|0);c[A>>2]=(c[A>>2]|0)+1}c[c[(c[w>>2]|0)+12>>2]>>2]=c[s>>2];z=c[o>>2]|0;do{if((c[s+16>>2]|0)!=0){A=c[s+16>>2]|0;if((z|0)==0){f=A&255&3;a[y>>0]=f;a[y>>0]=(d[y>>0]|0)==0?1:f;a[(c[(c[(c[m>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]=a[y>>0]|0;break}if((A|0)!=(d[(c[(c[(c[m>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0)){$t(c[q>>2]|0,c[m>>2]|0,25264,j);c[v>>2]=1;break a}}else{f=(c[(c[(c[m>>2]|0)+16>>2]|0)+(z<<4)+12>>2]|0)+78|0;b[f>>1]=e[f>>1]|4}}while(0);a[(c[(c[w>>2]|0)+12>>2]|0)+77>>0]=a[(c[(c[(c[m>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;if((c[(c[(c[w>>2]|0)+12>>2]|0)+80>>2]|0)==0){f=Ky(c[s+8>>2]|0)|0;c[x>>2]=f;c[x>>2]=(c[x>>2]|0)==0?2e3:f;c[(c[(c[w>>2]|0)+12>>2]|0)+80>>2]=c[x>>2];Ly(c[(c[w>>2]|0)+4>>2]|0,c[(c[(c[w>>2]|0)+12>>2]|0)+80>>2]|0)|0}a[(c[(c[w>>2]|0)+12>>2]|0)+76>>0]=c[s+4>>2];if((d[(c[(c[w>>2]|0)+12>>2]|0)+76>>0]|0)==0){a[(c[(c[w>>2]|0)+12>>2]|0)+76>>0]=1}if((d[(c[(c[w>>2]|0)+12>>2]|0)+76>>0]|0)>4){$t(c[q>>2]|0,c[m>>2]|0,25336,j);c[v>>2]=1;break}if((c[o>>2]|0)==0){if((c[s+4>>2]|0)>=4){f=(c[m>>2]|0)+24|0;c[f>>2]=c[f>>2]&-32769}}f=c[m>>2]|0;g=c[t>>2]|0;c[j>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2];c[j+4>>2]=g;c[u>>2]=cf(f,25360,j)|0;c[k>>2]=c[(c[m>>2]|0)+276>>2];c[(c[m>>2]|0)+276>>2]=0;c[v>>2]=Bf(c[m>>2]|0,c[u>>2]|0,13,n,0)|0;c[(c[m>>2]|0)+276>>2]=c[k>>2];if((c[v>>2]|0)==0){c[v>>2]=c[n+12>>2]}cc(c[m>>2]|0,c[u>>2]|0);if((c[v>>2]|0)==0){My(c[m>>2]|0,c[o>>2]|0)|0}if((a[(c[m>>2]|0)+64>>0]|0)!=0){c[v>>2]=7;hd(c[m>>2]|0)}if((c[v>>2]|0)!=0){if((c[(c[m>>2]|0)+24>>2]&65536|0)==0){break}}f=(c[(c[(c[m>>2]|0)+16>>2]|0)+(c[o>>2]<<4)+12>>2]|0)+78|0;b[f>>1]=e[f>>1]|1;c[v>>2]=0}}while(0);if((c[p>>2]|0)!=0){Ny(c[(c[w>>2]|0)+4>>2]|0)|0}}if((c[v>>2]|0)==7|(c[v>>2]|0)==3082){a[(c[m>>2]|0)+64>>0]=1}c[r>>2]=c[v>>2];f=c[r>>2]|0;i=l;return f|0}function Hy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;c[e>>2]=a;c[g>>2]=b;c[f>>2]=(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<4);oo(c[(c[f>>2]|0)+12>>2]|0);if((c[g>>2]|0)==1){i=d;return}c[f>>2]=(c[(c[e>>2]|0)+16>>2]|0)+16;oo(c[(c[f>>2]|0)+12>>2]|0);i=d;return}function Iy(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(c[d>>2]|0)+24|0;c[a>>2]=c[a>>2]&-3;i=b;return}function Jy(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=i;i=i+48|0;k=o+40|0;s=o+36|0;l=o+28|0;m=o+20|0;j=o+12|0;q=o+8|0;p=o+4|0;n=o;r=o+16|0;c[s>>2]=d;c[o+32>>2]=f;c[l>>2]=g;c[o+24>>2]=h;c[m>>2]=c[s>>2];c[j>>2]=c[c[m>>2]>>2];c[q>>2]=c[(c[m>>2]|0)+8>>2];d=(c[(c[(c[j>>2]|0)+16>>2]|0)+(c[q>>2]<<4)+12>>2]|0)+78|0;b[d>>1]=e[d>>1]&-5;if((a[(c[j>>2]|0)+64>>0]|0)!=0){Ry(c[m>>2]|0,c[c[l>>2]>>2]|0,0);c[k>>2]=1;s=c[k>>2]|0;i=o;return s|0}if((c[l>>2]|0)==0){c[k>>2]=0;s=c[k>>2]|0;i=o;return s|0}do{if((c[(c[l>>2]|0)+4>>2]|0)==0){Ry(c[m>>2]|0,c[c[l>>2]>>2]|0,0)}else{if((c[(c[l>>2]|0)+8>>2]|0)!=0){if((a[c[(c[l>>2]|0)+8>>2]>>0]|0)!=0){a[(c[j>>2]|0)+136>>0]=c[q>>2];s=Vg(c[(c[l>>2]|0)+4>>2]|0)|0;c[(c[j>>2]|0)+132>>2]=s;a[(c[j>>2]|0)+138>>0]=0;Gf(c[j>>2]|0,c[(c[l>>2]|0)+8>>2]|0,-1,n,0)|0;c[p>>2]=c[(c[j>>2]|0)+52>>2];a[(c[j>>2]|0)+136>>0]=0;do{if(0!=(c[p>>2]|0)){if((a[(c[j>>2]|0)+138>>0]|0)==0){c[(c[m>>2]|0)+12>>2]=c[p>>2];if((c[p>>2]|0)==7){a[(c[j>>2]|0)+64>>0]=1;break}if((c[p>>2]|0)!=9){if((c[p>>2]&255|0)!=6){d=c[m>>2]|0;s=c[c[l>>2]>>2]|0;Ry(d,s,Ff(c[j>>2]|0)|0)}}}}}while(0);yd(c[n>>2]|0)|0;break}}if((c[c[l>>2]>>2]|0)==0){Ry(c[m>>2]|0,0,0);break}c[r>>2]=tw(c[j>>2]|0,c[c[l>>2]>>2]|0,c[(c[(c[j>>2]|0)+16>>2]|0)+(c[q>>2]<<4)>>2]|0)|0;if((c[r>>2]|0)!=0){if((Wg(c[(c[l>>2]|0)+4>>2]|0,(c[r>>2]|0)+44|0)|0)==0){Ry(c[m>>2]|0,c[c[l>>2]>>2]|0,25512)}}}}while(0);c[k>>2]=0;s=c[k>>2]|0;i=o;return s|0}function Ky(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;a=c[e>>2]|0;do{if((c[e>>2]|0)>=0){c[d>>2]=a}else{if((a|0)==-2147483648){c[d>>2]=2147483647;break}else{c[d>>2]=0-(c[e>>2]|0);break}}}while(0);i=b;return c[d>>2]|0}function Ly(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d;f=d+4|0;c[g>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[g>>2]|0)+4>>2];Uc(c[g>>2]|0);Bo(c[c[f>>2]>>2]|0,c[e>>2]|0);i=d;return 0}function My(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+48|0;l=f;k=f+28|0;h=f+24|0;m=f+20|0;e=f+32|0;n=f+8|0;j=f+4|0;g=f+12|0;o=f+16|0;c[h>>2]=b;c[m>>2]=d;c[n>>2]=c[(c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+12>>2]|0)+32>>2];while(1){if((c[n>>2]|0)==0){break}c[o>>2]=c[(c[n>>2]|0)+8>>2];Oy(c[o>>2]|0);c[n>>2]=c[c[n>>2]>>2]}c[e>>2]=c[h>>2];c[e+4>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)>>2];if((cw(c[h>>2]|0,24912,c[e+4>>2]|0)|0)==0){c[k>>2]=1;b=c[k>>2]|0;i=f;return b|0}b=c[h>>2]|0;c[l>>2]=c[e+4>>2];c[j>>2]=cf(b,25416,l)|0;if((c[j>>2]|0)==0){c[g>>2]=7}else{c[g>>2]=Bf(c[h>>2]|0,c[j>>2]|0,14,e,0)|0;cc(c[h>>2]|0,c[j>>2]|0)}if((c[g>>2]|0)==7){a[(c[h>>2]|0)+64>>0]=1}c[k>>2]=c[g>>2];b=c[k>>2]|0;i=f;return b|0}function Ny(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;Uc(c[e>>2]|0);c[d>>2]=sd(c[e>>2]|0,0)|0;if((c[d>>2]|0)!=0){e=c[d>>2]|0;i=b;return e|0}c[d>>2]=rd(c[e>>2]|0,0)|0;e=c[d>>2]|0;i=b;return e|0}function Oy(a){a=a|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+12|0;k=f+16|0;j=f+4|0;l=f+8|0;h=f;c[g>>2]=a;b[k+0>>1]=b[25496>>1]|0;b[k+2>>1]=b[25498>>1]|0;b[k+4>>1]=b[25500>>1]|0;b[k+6>>1]=b[25502>>1]|0;b[k+8>>1]=b[25504>>1]|0;c[j>>2]=c[(c[g>>2]|0)+8>>2];if(5<(e[(c[g>>2]|0)+50>>1]|0)){a=5}else{a=e[(c[g>>2]|0)+50>>1]|0}c[l>>2]=a;b[c[j>>2]>>1]=b[(c[(c[g>>2]|0)+12>>2]|0)+28>>1]|0;if((b[c[j>>2]>>1]|0)<33){b[c[j>>2]>>1]=33}fL((c[j>>2]|0)+2|0,k|0,c[l>>2]<<1|0)|0;c[h>>2]=(c[l>>2]|0)+1;while(1){if((c[h>>2]|0)>(e[(c[g>>2]|0)+50>>1]|0)){break}b[(c[j>>2]|0)+(c[h>>2]<<1)>>1]=23;c[h>>2]=(c[h>>2]|0)+1}if((d[(c[g>>2]|0)+54>>0]|0)==0){i=f;return}b[(c[j>>2]|0)+(e[(c[g>>2]|0)+50>>1]<<1)>>1]=0;i=f;return}function Py(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+96|0;n=j+92|0;q=j+88|0;o=j+80|0;p=j+72|0;l=j+8|0;m=j+4|0;k=j;h=j+16|0;c[q>>2]=a;c[j+84>>2]=d;c[o>>2]=f;c[j+76>>2]=g;c[p>>2]=c[q>>2];if((c[o>>2]|0)!=0){if((c[c[o>>2]>>2]|0)!=0){if((c[(c[o>>2]|0)+8>>2]|0)!=0){c[m>>2]=cw(c[c[p>>2]>>2]|0,c[c[o>>2]>>2]|0,c[(c[p>>2]|0)+4>>2]|0)|0;if((c[m>>2]|0)==0){c[n>>2]=0;q=c[n>>2]|0;i=j;return q|0}do{if((c[(c[o>>2]|0)+4>>2]|0)==0){c[l>>2]=0}else{if((Dc(c[c[o>>2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0)|0)==0){c[l>>2]=Dy(c[m>>2]|0)|0;break}else{c[l>>2]=tw(c[c[p>>2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0,c[(c[p>>2]|0)+4>>2]|0)|0;break}}}while(0);c[k>>2]=c[(c[o>>2]|0)+8>>2];if((c[l>>2]|0)!=0){Qy(c[k>>2]|0,(e[(c[l>>2]|0)+50>>1]|0)+1|0,0,c[(c[l>>2]|0)+8>>2]|0,c[l>>2]|0);if((c[(c[l>>2]|0)+36>>2]|0)==0){b[(c[m>>2]|0)+28>>1]=b[c[(c[l>>2]|0)+8>>2]>>1]|0}}else{b[h+48>>1]=b[(c[m>>2]|0)+42>>1]|0;Qy(c[k>>2]|0,1,0,(c[m>>2]|0)+28|0,h);b[(c[m>>2]|0)+42>>1]=b[h+48>>1]|0}c[n>>2]=0;q=c[n>>2]|0;i=j;return q|0}}}c[n>>2]=0;q=c[n>>2]|0;i=j;return q|0}function Qy(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+48|0;s=k+36|0;r=k+32|0;o=k+24|0;p=k+20|0;m=k+16|0;q=k+8|0;j=k+4|0;n=k;l=k+12|0;c[s>>2]=d;c[r>>2]=e;c[k+28>>2]=f;c[o>>2]=g;c[p>>2]=h;d=c[s>>2]|0;c[m>>2]=d;c[m>>2]=(c[m>>2]|0)==0?1784:d;c[j>>2]=0;while(1){if((a[c[m>>2]>>0]|0)==0){break}if((c[j>>2]|0)>=(c[r>>2]|0)){break}c[n>>2]=0;while(1){s=a[c[m>>2]>>0]|0;c[q>>2]=s;if((s|0)<48){break}if((c[q>>2]|0)>57){break}c[n>>2]=((c[n>>2]|0)*10|0)+(c[q>>2]|0)-48;c[m>>2]=(c[m>>2]|0)+1}s=Kw(c[n>>2]|0,0)|0;b[(c[o>>2]|0)+(c[j>>2]<<1)>>1]=s;if((a[c[m>>2]>>0]|0)==32){c[m>>2]=(c[m>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}if((YK(c[m>>2]|0,25464)|0)==0){s=(c[p>>2]|0)+55|0;a[s>>0]=a[s>>0]&-5|4;i=k;return}if((zf(25480,c[m>>2]|0)|0)!=0){i=k;return}c[l>>2]=0;Wg((c[m>>2]|0)+3|0,l)|0;s=c[l>>2]|0;s=Kw(s,((s|0)<0)<<31>>31)|0;b[(c[p>>2]|0)+48>>1]=s;i=k;return}function Ry(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;l=h;g=h+20|0;m=h+8|0;k=h+12|0;j=h+16|0;c[g>>2]=b;c[m>>2]=e;c[k>>2]=f;c[j>>2]=c[c[g>>2]>>2];if((a[(c[j>>2]|0)+64>>0]|0)==0){if((c[(c[j>>2]|0)+24>>2]&65536|0)==0){if((c[m>>2]|0)==0){c[m>>2]=8776}e=c[(c[g>>2]|0)+4>>2]|0;b=c[j>>2]|0;c[l>>2]=c[m>>2];$t(e,b,25536,l);if((c[k>>2]|0)!=0){e=c[j>>2]|0;b=c[c[(c[g>>2]|0)+4>>2]>>2]|0;m=c[k>>2]|0;c[l>>2]=c[c[(c[g>>2]|0)+4>>2]>>2];c[l+4>>2]=m;b=Sy(e,b,25568,l)|0;c[c[(c[g>>2]|0)+4>>2]>>2]=b}}}if((d[(c[j>>2]|0)+64>>0]|0)!=0){e=7;b=c[g>>2]|0;b=b+12|0;c[b>>2]=e;i=h;return}e=dq(99745)|0;b=c[g>>2]|0;b=b+12|0;c[b>>2]=e;i=h;return}function Sy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;j=g+28|0;h=g;l=g+4|0;k=g+8|0;f=g+24|0;c[j>>2]=a;c[h>>2]=b;c[l>>2]=d;c[k>>2]=e;c[f>>2]=iu(c[j>>2]|0,c[l>>2]|0,k)|0;cc(c[j>>2]|0,c[h>>2]|0);i=g;return c[f>>2]|0}function Ty(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;k=d+24|0;l=d;e=d+4|0;g=d+8|0;h=d+12|0;f=d+16|0;j=d+20|0;c[k>>2]=a;c[l>>2]=b;c[h>>2]=c[c[k>>2]>>2];c[g>>2]=0;c[e>>2]=c[(c[h>>2]|0)+16>>2];while(1){if((c[g>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[f>>2]=c[(c[(c[e>>2]|0)+12>>2]|0)+16>>2];while(1){if((c[f>>2]|0)==0){break}c[j>>2]=c[(c[f>>2]|0)+8>>2];Uy(c[k>>2]|0,c[j>>2]|0,c[l>>2]|0);c[f>>2]=c[c[f>>2]>>2]}c[g>>2]=(c[g>>2]|0)+1;c[e>>2]=(c[e>>2]|0)+16}i=d;return}function Uy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;j=f+16|0;k=f;g=f+4|0;h=f+8|0;l=f+12|0;c[j>>2]=a;c[k>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[k>>2]|0)+8>>2];while(1){if((c[h>>2]|0)==0){break}if((c[g>>2]|0)==0){e=5}else{if((Wz(c[g>>2]|0,c[h>>2]|0)|0)!=0){e=5}}if((e|0)==5){e=0;c[l>>2]=ef(c[c[j>>2]>>2]|0,c[(c[k>>2]|0)+68>>2]|0)|0;$v(c[j>>2]|0,0,c[l>>2]|0);Vy(c[j>>2]|0,c[h>>2]|0,-1)}c[h>>2]=c[(c[h>>2]|0)+20>>2]}i=f;return}function Vy(a,b,f){a=a|0;b=b|0;f=f|0;var g=0,h=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;r=i;i=i+80|0;q=r+64|0;p=r+60|0;u=r+56|0;x=r+52|0;w=r+48|0;g=r+44|0;m=r+40|0;v=r+36|0;l=r+32|0;s=r+24|0;y=r+20|0;j=r+16|0;o=r+12|0;n=r+8|0;z=r+4|0;t=r;k=r+28|0;c[q>>2]=a;c[p>>2]=b;c[u>>2]=f;c[x>>2]=c[(c[p>>2]|0)+12>>2];a=(c[q>>2]|0)+68|0;b=c[a>>2]|0;c[a>>2]=b+1;c[w>>2]=b;b=(c[q>>2]|0)+68|0;a=c[b>>2]|0;c[b>>2]=a+1;c[g>>2]=a;c[z>>2]=c[c[q>>2]>>2];c[t>>2]=ef(c[z>>2]|0,c[(c[p>>2]|0)+24>>2]|0)|0;if((Lv(c[q>>2]|0,27,c[c[p>>2]>>2]|0,0,c[(c[(c[z>>2]|0)+16>>2]|0)+(c[t>>2]<<4)>>2]|0)|0)!=0){i=r;return}py(c[q>>2]|0,c[t>>2]|0,c[(c[x>>2]|0)+32>>2]|0,1,c[c[x>>2]>>2]|0);c[j>>2]=Ov(c[q>>2]|0)|0;if((c[j>>2]|0)==0){i=r;return}if((c[u>>2]|0)>=0){c[s>>2]=c[u>>2]}else{c[s>>2]=c[(c[p>>2]|0)+44>>2]}c[o>>2]=Ay(c[q>>2]|0,c[p>>2]|0)|0;z=(c[q>>2]|0)+68|0;a=c[z>>2]|0;c[z>>2]=a+1;c[m>>2]=a;a=c[j>>2]|0;z=c[m>>2]|0;Sv(a,56,z,0,0,Cy(c[o>>2]|0)|0,-6)|0;qy(c[q>>2]|0,c[w>>2]|0,c[t>>2]|0,c[x>>2]|0,52);c[v>>2]=Qv(c[j>>2]|0,105,c[w>>2]|0,0)|0;c[n>>2]=Wv(c[q>>2]|0)|0;Wy(c[q>>2]|0,c[p>>2]|0,c[w>>2]|0,c[n>>2]|0,0,y,0,0)|0;Qv(c[j>>2]|0,106,c[m>>2]|0,c[n>>2]|0)|0;Xy(c[q>>2]|0,c[y>>2]|0);Qv(c[j>>2]|0,9,c[w>>2]|0,(c[v>>2]|0)+1|0)|0;jw(c[j>>2]|0,c[v>>2]|0);if((c[u>>2]|0)<0){Qv(c[j>>2]|0,115,c[s>>2]|0,c[t>>2]|0)|0}Sv(c[j>>2]|0,53,c[g>>2]|0,c[s>>2]|0,c[t>>2]|0,c[o>>2]|0,-6)|0;gf(c[j>>2]|0,(1|((c[u>>2]|0)>=0?2:0))&255);c[v>>2]=Qv(c[j>>2]|0,103,c[m>>2]|0,0)|0;if((d[(c[p>>2]|0)+54>>0]|0|0)!=0){if((c[o>>2]|0)!=0){c[k>>2]=(sy(c[j>>2]|0)|0)+3;Qv(c[j>>2]|0,16,0,c[k>>2]|0)|0;c[l>>2]=sy(c[j>>2]|0)|0;ff(c[j>>2]|0,84,c[m>>2]|0,c[k>>2]|0,c[n>>2]|0,(e[(c[o>>2]|0)+6>>1]|0)-(e[(c[p>>2]|0)+50>>1]|0)|0)|0;Yy(c[q>>2]|0,2,c[p>>2]|0)}else{h=11}}else{h=11}if((h|0)==11){c[l>>2]=sy(c[j>>2]|0)|0}Qv(c[j>>2]|0,95,c[m>>2]|0,c[n>>2]|0)|0;Tv(c[j>>2]|0,107,c[g>>2]|0,c[n>>2]|0,1)|0;gf(c[j>>2]|0,16);Xv(c[q>>2]|0,c[n>>2]|0);Qv(c[j>>2]|0,5,c[m>>2]|0,c[l>>2]|0)|0;jw(c[j>>2]|0,c[v>>2]|0);oy(c[j>>2]|0,58,c[w>>2]|0)|0;oy(c[j>>2]|0,58,c[g>>2]|0)|0;oy(c[j>>2]|0,58,c[m>>2]|0)|0;i=r;return}function Wy(a,e,f,g,h,j,k,l){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;q=i;i=i+64|0;y=q+48|0;v=q+44|0;m=q+40|0;s=q+36|0;z=q+32|0;A=q+28|0;t=q+24|0;w=q+16|0;r=q+12|0;u=q+8|0;x=q+4|0;o=q;p=q+20|0;c[y>>2]=a;c[v>>2]=e;c[m>>2]=f;c[s>>2]=g;c[z>>2]=h;c[A>>2]=j;c[t>>2]=k;c[w>>2]=l;c[r>>2]=c[(c[y>>2]|0)+8>>2];c[x>>2]=c[(c[v>>2]|0)+12>>2];do{if((c[A>>2]|0)!=0){if((c[(c[v>>2]|0)+36>>2]|0)!=0){a=cz(c[r>>2]|0)|0;c[c[A>>2]>>2]=a;c[(c[y>>2]|0)+96>>2]=c[m>>2];dz(c[y>>2]|0);ez(c[y>>2]|0,c[(c[v>>2]|0)+36>>2]|0,c[c[A>>2]>>2]|0,8);break}else{c[c[A>>2]>>2]=0;break}}}while(0);if((c[z>>2]|0)!=0){if(((d[(c[v>>2]|0)+55>>0]|0)>>>3&1|0)!=0){h=b[(c[v>>2]|0)+50>>1]|0}else{n=8}}else{n=8}if((n|0)==8){h=b[(c[v>>2]|0)+52>>1]|0}c[p>>2]=h&65535;c[o>>2]=fz(c[y>>2]|0,c[p>>2]|0)|0;do{if((c[t>>2]|0)!=0){if((c[o>>2]|0)==(c[w>>2]|0)){if((c[(c[t>>2]|0)+36>>2]|0)==0){break}}c[t>>2]=0}}while(0);c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[p>>2]|0)){break}if((c[t>>2]|0)!=0){if((b[(c[(c[t>>2]|0)+4>>2]|0)+(c[u>>2]<<1)>>1]|0)!=(b[(c[(c[v>>2]|0)+4>>2]|0)+(c[u>>2]<<1)>>1]|0)){n=17}}else{n=17}if((n|0)==17){n=0;gz(c[r>>2]|0,c[x>>2]|0,c[m>>2]|0,b[(c[(c[v>>2]|0)+4>>2]|0)+(c[u>>2]<<1)>>1]|0,(c[o>>2]|0)+(c[u>>2]|0)|0);hz(c[r>>2]|0,39)|0}c[u>>2]=(c[u>>2]|0)+1}if((c[s>>2]|0)==0){f=c[y>>2]|0;e=c[o>>2]|0;a=c[p>>2]|0;iz(f,e,a);a=c[o>>2]|0;i=q;return a|0}Tv(c[r>>2]|0,48,c[o>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;f=c[y>>2]|0;e=c[o>>2]|0;a=c[p>>2]|0;iz(f,e,a);a=c[o>>2]|0;i=q;return a|0}function Xy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}$y(c[(c[e>>2]|0)+8>>2]|0,c[f>>2]|0);az(c[e>>2]|0);i=d;return}function Yy(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+64|0;k=h+52|0;m=h;l=h+4|0;j=h+8|0;p=h+12|0;n=h+16|0;o=h+44|0;q=h+48|0;c[k>>2]=d;c[m>>2]=f;c[l>>2]=g;c[o>>2]=c[(c[l>>2]|0)+12>>2];tc(n,0,0,200);c[n>>2]=c[c[k>>2]>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>=(e[(c[l>>2]|0)+50>>1]|0)){break}c[q>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+((b[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>>2]<<1)>>1]|0)*24|0)>>2];if((c[p>>2]|0)!=0){Jt(n,25624,2)}Zy(n,c[c[o>>2]>>2]|0);Jt(n,25632,1);Zy(n,c[q>>2]|0);c[p>>2]=(c[p>>2]|0)+1}c[j>>2]=vc(n)|0;_y(c[k>>2]|0,(a[(c[l>>2]|0)+55>>0]&3|0)==2?1555:2067,c[m>>2]|0,c[j>>2]|0,-1,2);i=h;return}function Zy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;b=c[f>>2]|0;a=c[e>>2]|0;Jt(b,a,Ub(c[e>>2]|0)|0);i=d;return}function _y(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+32|0;q=p+16|0;m=p;n=p+4|0;o=p+8|0;j=p+21|0;l=p+20|0;k=p+12|0;c[q>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;a[j>>0]=g;a[l>>0]=h;c[k>>2]=Ov(c[q>>2]|0)|0;if((c[n>>2]|0)==2){xw(c[q>>2]|0)}Sv(c[k>>2]|0,24,c[m>>2]|0,c[n>>2]|0,0,c[o>>2]|0,a[j>>0]|0)|0;if((a[l>>0]|0)==0){i=p;return}gf(c[k>>2]|0,a[l>>0]|0);i=p;return}function $y(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=i;i=i+16|0;d=f+12|0;h=f;e=f+4|0;g=f+8|0;c[d>>2]=a;c[h>>2]=b;c[e>>2]=c[(c[d>>2]|0)+24>>2];c[g>>2]=-1-(c[h>>2]|0);if((c[g>>2]|0)>=0){if((c[(c[e>>2]|0)+112>>2]|0)!=0){c[(c[(c[e>>2]|0)+112>>2]|0)+(c[g>>2]<<2)>>2]=c[(c[d>>2]|0)+32>>2]}}c[(c[e>>2]|0)+88>>2]=(c[(c[d>>2]|0)+32>>2]|0)-1;i=f;return}function az(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+8|0;f=b;d=b+4|0;c[e>>2]=a;a=(c[e>>2]|0)+100|0;c[a>>2]=(c[a>>2]|0)+ -1;c[f>>2]=0;c[d>>2]=(c[e>>2]|0)+116;while(1){if((c[f>>2]|0)>=10){break}if((c[(c[d>>2]|0)+12>>2]|0)!=0){if((c[(c[d>>2]|0)+8>>2]|0)>(c[(c[e>>2]|0)+100>>2]|0)){bz(c[e>>2]|0,c[d>>2]|0);c[(c[d>>2]|0)+12>>2]=0}}c[f>>2]=(c[f>>2]|0)+1;c[d>>2]=(c[d>>2]|0)+20}i=b;return}function bz(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;h=f+4|0;g=f;c[h>>2]=b;c[g>>2]=e;if((a[(c[g>>2]|0)+6>>0]|0)==0){i=f;return}if((d[(c[h>>2]|0)+19>>0]|0)<8){e=c[(c[g>>2]|0)+12>>2]|0;j=(c[h>>2]|0)+19|0;b=a[j>>0]|0;a[j>>0]=b+1<<24>>24;c[(c[h>>2]|0)+24+((b&255)<<2)>>2]=e}a[(c[g>>2]|0)+6>>0]=0;i=f;return}function cz(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;e=d;b=d+4|0;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+24>>2];f=(c[e>>2]|0)+108|0;a=c[f>>2]|0;c[f>>2]=a+1;c[b>>2]=a;if((c[b>>2]&(c[b>>2]|0)-1|0)==0){f=Ey(c[c[e>>2]>>2]|0,c[(c[e>>2]|0)+112>>2]|0,(c[b>>2]<<1)+1<<2)|0;c[(c[e>>2]|0)+112>>2]=f}if((c[(c[e>>2]|0)+112>>2]|0)==0){f=c[b>>2]|0;f=-1-f|0;i=d;return f|0}c[(c[(c[e>>2]|0)+112>>2]|0)+(c[b>>2]<<2)>>2]=-1;f=c[b>>2]|0;f=-1-f|0;i=d;return f|0}function dz(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(c[d>>2]|0)+100|0;c[a>>2]=(c[a>>2]|0)+1;i=b;return}function ez(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;o=i;i=i+48|0;h=o+44|0;l=o+40|0;p=o+36|0;q=o+32|0;r=o+28|0;g=o+24|0;j=o+20|0;k=o+12|0;m=o+8|0;n=o+4|0;s=o;t=o+16|0;c[h>>2]=a;c[l>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=c[(c[h>>2]|0)+8>>2];c[g>>2]=0;c[j>>2]=0;c[k>>2]=0;if((c[r>>2]|0)==0){i=o;return}if((c[l>>2]|0)==0){i=o;return}c[g>>2]=((d[c[l>>2]>>0]|0)+0^1)-0;a:do{switch(d[c[l>>2]>>0]|0|0){case 79:case 78:case 83:case 80:case 81:case 82:{c[m>>2]=oz(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,j)|0;c[n>>2]=oz(c[h>>2]|0,c[(c[l>>2]|0)+16>>2]|0,k)|0;pz(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[g>>2]|0,c[m>>2]|0,c[n>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;break};case 72:{ez(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[p>>2]|0,c[q>>2]|0);dz(c[h>>2]|0);ez(c[h>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[p>>2]|0,c[q>>2]|0);az(c[h>>2]|0);break};case 71:{c[s>>2]=cz(c[r>>2]|0)|0;nz(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[s>>2]|0,c[q>>2]^8);dz(c[h>>2]|0);ez(c[h>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[p>>2]|0,c[q>>2]|0);$y(c[r>>2]|0,c[s>>2]|0);az(c[h>>2]|0);break};case 19:{nz(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[p>>2]|0,c[q>>2]|0);break};case 75:{if((c[q>>2]|0)!=0){rz(c[h>>2]|0,c[l>>2]|0,c[p>>2]|0,c[p>>2]|0);break a}else{c[t>>2]=cz(c[r>>2]|0)|0;rz(c[h>>2]|0,c[l>>2]|0,c[p>>2]|0,c[t>>2]|0);$y(c[r>>2]|0,c[t>>2]|0);break a}};case 148:case 73:{c[m>>2]=oz(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,j)|0;c[n>>2]=oz(c[h>>2]|0,c[(c[l>>2]|0)+16>>2]|0,k)|0;c[g>>2]=(d[c[l>>2]>>0]|0|0)==73?78:79;pz(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[g>>2]|0,c[m>>2]|0,c[n>>2]|0,c[p>>2]|0,128)|0;break};case 74:{qz(c[h>>2]|0,c[l>>2]|0,c[p>>2]|0,0,c[q>>2]|0);break};case 77:case 76:{c[m>>2]=oz(c[h>>2]|0,c[(c[l>>2]|0)+12>>2]|0,j)|0;Qv(c[r>>2]|0,c[g>>2]|0,c[m>>2]|0,c[p>>2]|0)|0;break};default:{if((Vx(c[l>>2]|0)|0)!=0){Qv(c[r>>2]|0,16,0,c[p>>2]|0)|0;break a}if((sz(c[l>>2]|0)|0)==0){c[m>>2]=oz(c[h>>2]|0,c[l>>2]|0,j)|0;Tv(c[r>>2]|0,45,c[m>>2]|0,c[p>>2]|0,(c[q>>2]|0)!=0&1)|0}}}}while(0);Xv(c[h>>2]|0,c[j>>2]|0);Xv(c[h>>2]|0,c[k>>2]|0);i=o;return}function fz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d+12|0;f=d;e=d+4|0;h=d+8|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=c[(c[g>>2]|0)+60>>2];c[h>>2]=c[(c[g>>2]|0)+56>>2];if((c[f>>2]|0)<=(c[h>>2]|0)){h=(c[g>>2]|0)+60|0;c[h>>2]=(c[h>>2]|0)+(c[f>>2]|0);h=(c[g>>2]|0)+56|0;c[h>>2]=(c[h>>2]|0)-(c[f>>2]|0);h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=(c[(c[g>>2]|0)+72>>2]|0)+1;h=(c[g>>2]|0)+72|0;c[h>>2]=(c[h>>2]|0)+(c[f>>2]|0);h=c[e>>2]|0;i=d;return h|0}return 0}function gz(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+32|0;l=q+24|0;m=q;p=q+4|0;n=q+8|0;o=q+12|0;j=q+16|0;r=q+20|0;c[l>>2]=d;c[m>>2]=e;c[p>>2]=f;c[n>>2]=g;c[o>>2]=h;if((c[n>>2]|0)<0){k=3}else{if((c[n>>2]|0)==(b[(c[m>>2]|0)+36>>1]|0)){k=3}else{c[j>>2]=(a[(c[m>>2]|0)+44>>0]&16|0)!=0?150:46;c[r>>2]=c[n>>2];if((a[(c[m>>2]|0)+44>>0]&32|0)!=0){d=Dy(c[m>>2]|0)|0;c[r>>2]=(kz(d,c[n>>2]&65535)|0)<<16>>16}Tv(c[l>>2]|0,c[j>>2]|0,c[p>>2]|0,c[r>>2]|0,c[o>>2]|0)|0}}if((k|0)==3){Qv(c[l>>2]|0,100,c[p>>2]|0,c[o>>2]|0)|0}if((c[n>>2]|0)<0){i=q;return}lz(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0);i=q;return}function hz(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+4|0;h=f;j=f+8|0;c[h>>2]=b;a[j>>0]=e;if(((c[(c[h>>2]|0)+32>>2]|0)-1|0)>(c[(c[(c[h>>2]|0)+24>>2]|0)+88>>2]|0)){if((d[(c[(c[h>>2]|0)+4>>2]|0)+(((c[(c[h>>2]|0)+32>>2]|0)-1|0)*20|0)>>0]|0|0)==(d[j>>0]|0|0)){of(c[h>>2]|0,(c[(c[h>>2]|0)+32>>2]|0)-1|0);c[g>>2]=1;b=c[g>>2]|0;i=f;return b|0}}c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}function iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;h=e;f=e+4|0;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;jz(c[g>>2]|0,c[h>>2]|0,c[f>>2]|0);if((c[f>>2]|0)<=(c[(c[g>>2]|0)+56>>2]|0)){i=e;return}c[(c[g>>2]|0)+56>>2]=c[f>>2];c[(c[g>>2]|0)+60>>2]=c[h>>2];i=e;return}function jz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+24|0;k=e;m=e+4|0;l=e+8|0;j=e+12|0;g=e+16|0;h=e+20|0;c[f>>2]=a;c[k>>2]=b;c[m>>2]=d;c[j>>2]=(c[k>>2]|0)+(c[m>>2]|0)-1;c[l>>2]=0;c[g>>2]=(c[f>>2]|0)+116;while(1){if((c[l>>2]|0)>=10){break}c[h>>2]=c[(c[g>>2]|0)+12>>2];if((c[h>>2]|0)>=(c[k>>2]|0)){if((c[h>>2]|0)<=(c[j>>2]|0)){bz(c[f>>2]|0,c[g>>2]|0);c[(c[g>>2]|0)+12>>2]=0}}c[l>>2]=(c[l>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+20}i=e;return}function kz(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;f=g+10|0;k=g;j=g+8|0;h=g+4|0;c[k>>2]=a;b[j>>1]=d;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(e[(c[k>>2]|0)+52>>1]|0)){h=6;break}d=c[h>>2]|0;if((b[j>>1]|0)==(b[(c[(c[k>>2]|0)+4>>2]|0)+(c[h>>2]<<1)>>1]|0)){h=4;break}c[h>>2]=d+1}if((h|0)==4){b[f>>1]=d;a=b[f>>1]|0;i=g;return a|0}else if((h|0)==6){b[f>>1]=-1;a=b[f>>1]|0;i=g;return a|0}return 0}function lz(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;h=m+20|0;k=m;l=m+4|0;j=m+8|0;g=m+12|0;n=m+24|0;o=m+16|0;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[j>>2]=f;if((c[(c[k>>2]|0)+12>>2]|0)!=0){i=m;return}c[g>>2]=0;a[n>>0]=a[(c[(c[(mz(c[h>>2]|0)|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;c[o>>2]=(c[(c[k>>2]|0)+4>>2]|0)+((c[l>>2]|0)*24|0);b=mz(c[h>>2]|0)|0;dw(b,c[(c[o>>2]|0)+4>>2]|0,a[n>>0]|0,a[(c[o>>2]|0)+21>>0]|0,g)|0;if((c[g>>2]|0)!=0){nf(c[h>>2]|0,-1,c[g>>2]|0,-8)}if((a[(c[(c[k>>2]|0)+4>>2]|0)+((c[l>>2]|0)*24|0)+21>>0]|0)!=101){i=m;return}oy(c[h>>2]|0,39,c[j>>2]|0)|0;i=m;return}function mz(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[c[b>>2]>>2]|0}function nz(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=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;p=i;i=i+64|0;h=p+48|0;j=p+44|0;k=p+40|0;l=p+36|0;o=p+32|0;g=p+28|0;m=p+24|0;s=p+16|0;n=p+12|0;t=p+8|0;u=p+4|0;q=p;r=p+20|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[o>>2]=c[(c[h>>2]|0)+8>>2];c[g>>2]=0;c[m>>2]=0;c[s>>2]=0;if((c[o>>2]|0)==0){i=p;return}if((c[j>>2]|0)==0){i=p;return}c[g>>2]=d[c[j>>2]>>0]|0;a:do{switch(c[g>>2]|0){case 19:{ez(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[k>>2]|0,c[l>>2]|0);break};case 77:case 76:{c[n>>2]=oz(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,m)|0;Qv(c[o>>2]|0,c[g>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;break};case 75:{c[q>>2]=cz(c[o>>2]|0)|0;c[r>>2]=(c[l>>2]|0)!=0?c[k>>2]|0:c[q>>2]|0;rz(c[h>>2]|0,c[j>>2]|0,c[q>>2]|0,c[r>>2]|0);Qv(c[o>>2]|0,16,0,c[k>>2]|0)|0;$y(c[o>>2]|0,c[q>>2]|0);break};case 79:case 78:case 83:case 80:case 81:case 82:{c[n>>2]=oz(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,m)|0;c[t>>2]=oz(c[h>>2]|0,c[(c[j>>2]|0)+16>>2]|0,s)|0;pz(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[(c[j>>2]|0)+16>>2]|0,c[g>>2]|0,c[n>>2]|0,c[t>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;break};case 148:case 73:{c[n>>2]=oz(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,m)|0;c[t>>2]=oz(c[h>>2]|0,c[(c[j>>2]|0)+16>>2]|0,s)|0;c[g>>2]=(c[g>>2]|0)==73?79:78;pz(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[(c[j>>2]|0)+16>>2]|0,c[g>>2]|0,c[n>>2]|0,c[t>>2]|0,c[k>>2]|0,128)|0;break};case 74:{qz(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,1,c[l>>2]|0);break};case 71:{nz(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[k>>2]|0,c[l>>2]|0);dz(c[h>>2]|0);nz(c[h>>2]|0,c[(c[j>>2]|0)+16>>2]|0,c[k>>2]|0,c[l>>2]|0);az(c[h>>2]|0);break};case 72:{c[u>>2]=cz(c[o>>2]|0)|0;ez(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[u>>2]|0,c[l>>2]^8);dz(c[h>>2]|0);nz(c[h>>2]|0,c[(c[j>>2]|0)+16>>2]|0,c[k>>2]|0,c[l>>2]|0);$y(c[o>>2]|0,c[u>>2]|0);az(c[h>>2]|0);break};default:{if((sz(c[j>>2]|0)|0)!=0){Qv(c[o>>2]|0,16,0,c[k>>2]|0)|0;break a}if((Vx(c[j>>2]|0)|0)==0){c[n>>2]=oz(c[h>>2]|0,c[j>>2]|0,m)|0;Tv(c[o>>2]|0,44,c[n>>2]|0,c[k>>2]|0,(c[l>>2]|0)!=0&1)|0}}}}while(0);Xv(c[h>>2]|0,c[m>>2]|0);Xv(c[h>>2]|0,c[s>>2]|0);i=p;return}function oz(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+48|0;l=m+32|0;n=m+28|0;j=m+24|0;p=m+20|0;h=m+16|0;o=m+8|0;f=m+4|0;k=m;q=m+12|0;c[n>>2]=a;c[j>>2]=b;c[p>>2]=e;c[j>>2]=Pw(c[j>>2]|0)|0;if((d[(c[n>>2]|0)+23>>0]|0|0)!=0){if((d[c[j>>2]>>0]|0|0)!=159){if((Vz(c[j>>2]|0)|0)!=0){c[o>>2]=c[(c[n>>2]|0)+316>>2];c[c[p>>2]>>2]=0;a:do{if((c[o>>2]|0)!=0){c[k>>2]=c[(c[o>>2]|0)+4>>2];c[f>>2]=c[c[o>>2]>>2];while(1){if((c[f>>2]|0)<=0){break a}if(((d[(c[k>>2]|0)+13>>0]|0)>>>2&1|0)!=0){if((jx(c[c[k>>2]>>2]|0,c[j>>2]|0,-1)|0)==0){break}}c[k>>2]=(c[k>>2]|0)+20;c[f>>2]=(c[f>>2]|0)+ -1}c[l>>2]=c[(c[k>>2]|0)+16>>2];a=c[l>>2]|0;i=m;return a|0}}while(0);b=(c[n>>2]|0)+72|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[h>>2]=a;Jz(c[n>>2]|0,c[j>>2]|0,c[h>>2]|0,1)}else{g=12}}else{g=12}}else{g=12}do{if((g|0)==12){c[q>>2]=Wv(c[n>>2]|0)|0;c[h>>2]=wz(c[n>>2]|0,c[j>>2]|0,c[q>>2]|0)|0;if((c[h>>2]|0)==(c[q>>2]|0)){c[c[p>>2]>>2]=c[q>>2];break}else{Xv(c[n>>2]|0,c[q>>2]|0);c[c[p>>2]>>2]=0;break}}}while(0);c[l>>2]=c[h>>2];a=c[l>>2]|0;i=m;return a|0}function pz(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;l=i;i=i+48|0;n=l+40|0;v=l+36|0;u=l+32|0;s=l+28|0;p=l+24|0;r=l+20|0;q=l+12|0;t=l+8|0;m=l+4|0;k=l;o=l+16|0;c[n>>2]=a;c[v>>2]=b;c[u>>2]=d;c[s>>2]=e;c[p>>2]=f;c[r>>2]=g;c[q>>2]=h;c[t>>2]=j;c[o>>2]=Iz(c[n>>2]|0,c[v>>2]|0,c[u>>2]|0)|0;c[m>>2]=(Uz(c[v>>2]|0,c[u>>2]|0,c[t>>2]|0)|0)&255;c[k>>2]=Sv(c[(c[n>>2]|0)+8>>2]|0,c[s>>2]|0,c[r>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,-4)|0;gf(c[(c[n>>2]|0)+8>>2]|0,c[m>>2]&255);i=l;return c[k>>2]|0}function qz(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+224|0;h=j+216|0;p=j+212|0;o=j+208|0;k=j+204|0;n=j+200|0;m=j+152|0;q=j+96|0;s=j+48|0;r=j;l=j+144|0;c[h>>2]=b;c[p>>2]=d;c[o>>2]=e;c[k>>2]=f;c[n>>2]=g;c[l>>2]=0;e=r+0|0;f=(c[(c[p>>2]|0)+12>>2]|0)+0|0;g=e+48|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));a[m>>0]=72;c[m+12>>2]=q;c[m+16>>2]=s;a[q>>0]=83;c[q+12>>2]=r;c[q+16>>2]=c[c[(c[(c[p>>2]|0)+20>>2]|0)+4>>2]>>2];a[s>>0]=81;c[s+12>>2]=r;c[s+16>>2]=c[(c[(c[(c[p>>2]|0)+20>>2]|0)+4>>2]|0)+20>>2];Fz(r,oz(c[h>>2]|0,r,l)|0);p=c[h>>2]|0;o=c[o>>2]|0;n=c[n>>2]|0;if((c[k>>2]|0)!=0){nz(p,m,o,n);d=c[h>>2]|0;b=c[l>>2]|0;Xv(d,b);i=j;return}else{ez(p,m,o,n);d=c[h>>2]|0;b=c[l>>2]|0;Xv(d,b);i=j;return}}function rz(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=i;i=i+48|0;l=m+40|0;j=m+36|0;q=m+32|0;p=m+28|0;o=m+24|0;r=m+44|0;s=m+20|0;k=m+12|0;n=m+8|0;t=m+4|0;g=m;h=m+16|0;c[l>>2]=b;c[j>>2]=d;c[q>>2]=e;c[p>>2]=f;c[o>>2]=0;c[n>>2]=c[(c[l>>2]|0)+8>>2];c[s>>2]=tz(c[l>>2]|0,c[j>>2]|0,o)|0;a[r>>0]=uz(c[j>>2]|0)|0;dz(c[l>>2]|0);c[k>>2]=Wv(c[l>>2]|0)|0;vz(c[l>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[k>>2]|0);e=c[n>>2]|0;f=c[k>>2]|0;if((c[p>>2]|0)==(c[q>>2]|0)){Qv(e,76,f,c[p>>2]|0)|0}else{c[t>>2]=oy(e,77,f)|0;Qv(c[n>>2]|0,105,c[(c[j>>2]|0)+28>>2]|0,c[q>>2]|0)|0;Qv(c[n>>2]|0,16,0,c[p>>2]|0)|0;jw(c[n>>2]|0,c[t>>2]|0)}f=c[n>>2]|0;t=c[k>>2]|0;if((c[s>>2]|0)==1){Qv(f,38,t,c[q>>2]|0)|0;Tv(c[n>>2]|0,67,c[(c[j>>2]|0)+28>>2]|0,c[q>>2]|0,c[k>>2]|0)|0;d=c[l>>2]|0;b=c[k>>2]|0;Xv(d,b);b=c[l>>2]|0;az(b);i=m;return}Sv(f,47,t,1,0,r,1)|0;if((c[o>>2]|0)!=0){if((c[q>>2]|0)!=(c[p>>2]|0)){c[g>>2]=ff(c[n>>2]|0,66,c[(c[j>>2]|0)+28>>2]|0,0,c[k>>2]|0,1)|0;Qv(c[n>>2]|0,44,c[o>>2]|0,c[p>>2]|0)|0;Qv(c[n>>2]|0,45,c[o>>2]|0,c[q>>2]|0)|0;c[h>>2]=ff(c[n>>2]|0,66,c[(c[j>>2]|0)+28>>2]|0,0,c[o>>2]|0,1)|0;Qv(c[n>>2]|0,25,0,c[o>>2]|0)|0;Qv(c[n>>2]|0,16,0,c[q>>2]|0)|0;jw(c[n>>2]|0,c[h>>2]|0);Qv(c[n>>2]|0,25,1,c[o>>2]|0)|0;Qv(c[n>>2]|0,16,0,c[p>>2]|0)|0;jw(c[n>>2]|0,c[g>>2]|0);d=c[l>>2]|0;b=c[k>>2]|0;Xv(d,b);b=c[l>>2]|0;az(b);i=m;return}}ff(c[n>>2]|0,65,c[(c[j>>2]|0)+28>>2]|0,c[q>>2]|0,c[k>>2]|0,1)|0;d=c[l>>2]|0;b=c[k>>2]|0;Xv(d,b);b=c[l>>2]|0;az(b);i=m;return}function sz(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;f=b;e=b+4|0;c[f>>2]=a;c[e>>2]=0;do{if((c[(c[f>>2]|0)+4>>2]&1|0)!=0){c[d>>2]=0}else{if((ex(c[f>>2]|0,e)|0)!=0){c[d>>2]=(c[e>>2]|0)!=0&1;break}else{c[d>>2]=0;break}}}while(0);i=b;return c[d>>2]|0}function tz(f,g,h){f=f|0;g=g|0;h=h|0;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;l=i;i=i+80|0;m=l+56|0;o=l+44|0;p=l+48|0;D=l+52|0;k=l+60|0;v=l+64|0;t=l+68|0;n=l+40|0;w=l;B=l+12|0;A=l+4|0;y=l+72|0;u=l+74|0;r=l+8|0;s=l+16|0;x=l+20|0;z=l+24|0;C=l+28|0;q=l+32|0;j=l+36|0;c[m>>2]=f;c[o>>2]=g;c[p>>2]=h;c[k>>2]=0;g=(c[m>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[v>>2]=f;c[t>>2]=(c[p>>2]|0)==0&1;c[n>>2]=Ov(c[m>>2]|0)|0;if((c[(c[o>>2]|0)+4>>2]&2048|0)!=0){h=c[(c[o>>2]|0)+20>>2]|0}else{h=0}c[D>>2]=h;a:do{if((c[(c[m>>2]|0)+64>>2]|0)==0){if((Sz(c[D>>2]|0)|0)!=0){c[w>>2]=c[c[m>>2]>>2];c[B>>2]=c[(c[(c[D>>2]|0)+32>>2]|0)+24>>2];c[A>>2]=c[c[(c[c[D>>2]>>2]|0)+4>>2]>>2];b[y>>1]=b[(c[A>>2]|0)+32>>1]|0;b[u>>1]=ef(c[w>>2]|0,c[(c[B>>2]|0)+68>>2]|0)|0;aw(c[m>>2]|0,b[u>>1]|0);py(c[m>>2]|0,b[u>>1]|0,c[(c[B>>2]|0)+32>>2]|0,0,c[c[B>>2]>>2]|0);D=c[m>>2]|0;if((b[y>>1]|0)<0){c[r>>2]=Gz(D)|0;qy(c[m>>2]|0,c[v>>2]|0,b[u>>1]|0,c[B>>2]|0,52);c[k>>2]=1;jw(c[n>>2]|0,c[r>>2]|0);break}c[x>>2]=Iz(D,c[(c[o>>2]|0)+12>>2]|0,c[A>>2]|0)|0;c[z>>2]=Tz(c[o>>2]|0,a[(c[(c[B>>2]|0)+4>>2]|0)+((b[y>>1]|0)*24|0)+21>>0]|0)|0;c[s>>2]=c[(c[B>>2]|0)+8>>2];while(1){if((c[s>>2]|0)==0){break a}if((c[k>>2]|0)!=0){break a}if((c[z>>2]|0)==0){break a}do{if((b[c[(c[s>>2]|0)+4>>2]>>1]|0)==(b[y>>1]|0)){f=xh(c[w>>2]|0,a[(c[(c[(c[w>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[c[(c[s>>2]|0)+32>>2]>>2]|0,0)|0;if((f|0)==(c[x>>2]|0)){if((c[t>>2]|0)!=0){if((e[(c[s>>2]|0)+50>>1]|0)!=1){break}if((d[(c[s>>2]|0)+54>>0]|0)==0){break}}c[C>>2]=Gz(c[m>>2]|0)|0;Tv(c[n>>2]|0,52,c[v>>2]|0,c[(c[s>>2]|0)+44>>2]|0,b[u>>1]|0)|0;ry(c[m>>2]|0,c[s>>2]|0);c[k>>2]=3+(d[c[(c[s>>2]|0)+28>>2]>>0]|0);if((c[p>>2]|0)!=0){if((a[(c[(c[B>>2]|0)+4>>2]|0)+((b[y>>1]|0)*24|0)+20>>0]|0)==0){g=(c[m>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[c[p>>2]>>2]=f;Qv(c[n>>2]|0,28,0,c[c[p>>2]>>2]|0)|0}}jw(c[n>>2]|0,c[C>>2]|0)}}}while(0);c[s>>2]=c[(c[s>>2]|0)+20>>2]}}}}while(0);if((c[k>>2]|0)!=0){c[(c[o>>2]|0)+28>>2]=c[v>>2];f=c[k>>2]|0;i=l;return f|0}c[q>>2]=c[(c[m>>2]|0)+424>>2];c[j>>2]=0;c[k>>2]=2;r=c[m>>2]|0;if((c[p>>2]|0)!=0){g=r+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[j>>2]=f;c[c[p>>2]>>2]=f;Qv(c[n>>2]|0,28,0,c[c[p>>2]>>2]|0)|0}else{c[r+424>>2]=0;if((b[(c[(c[o>>2]|0)+12>>2]|0)+32>>1]|0)<0){if((c[(c[o>>2]|0)+4>>2]&2048|0)==0){c[k>>2]=1}}}Ez(c[m>>2]|0,c[o>>2]|0,c[j>>2]|0,(c[k>>2]|0)==1&1)|0;c[(c[m>>2]|0)+424>>2]=c[q>>2];f=c[k>>2]|0;i=l;return f|0}function uz(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d;e=d+4|0;c[f>>2]=b;a[e>>0]=Iw(c[(c[f>>2]|0)+12>>2]|0)|0;b=c[f>>2]|0;if((c[(c[f>>2]|0)+16>>2]|0)!=0){a[e>>0]=Rz(c[b+16>>2]|0,a[e>>0]|0)|0;b=a[e>>0]|0;i=d;return b|0}if((c[b+4>>2]&2048|0)!=0){a[e>>0]=Rz(c[c[(c[c[(c[f>>2]|0)+20>>2]>>2]|0)+4>>2]>>2]|0,a[e>>0]|0)|0;b=a[e>>0]|0;i=d;return b|0}if((a[e>>0]|0)!=0){b=a[e>>0]|0;i=d;return b|0}a[e>>0]=98;b=a[e>>0]|0;i=d;return b|0}function vz(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f+12|0;h=f;g=f+4|0;k=f+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=e;if((c[h>>2]|0)!=0){if((d[c[h>>2]>>0]|0|0)==159){Qv(c[(c[j>>2]|0)+8>>2]|0,33,c[(c[h>>2]|0)+28>>2]|0,c[g>>2]|0)|0;i=f;return}}c[k>>2]=wz(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;if((c[k>>2]|0)==(c[g>>2]|0)){i=f;return}if((c[(c[j>>2]|0)+8>>2]|0)==0){i=f;return}Qv(c[(c[j>>2]|0)+8>>2]|0,34,c[k>>2]|0,c[g>>2]|0)|0;i=f;return} + + + +function Kk(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;o=i;i=i+48|0;h=o+40|0;q=o+36|0;k=o+32|0;n=o+28|0;r=o+24|0;s=o+20|0;l=o+12|0;j=o+8|0;t=o+4|0;m=o;p=o+16|0;c[q>>2]=a;c[k>>2]=b;c[n>>2]=e;c[r>>2]=f;c[s>>2]=g;c[t>>2]=c[(c[k>>2]|0)+4>>2];c[m>>2]=(d[(c[q>>2]|0)+231>>0]|0|0)!=0?49:50;c[j>>2]=Tj(c[q>>2]|0,c[k>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];a=c[h>>2]|0;i=o;return a|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[t>>2]|0)){break}c[p>>2]=c[(c[c[k>>2]>>2]|0)+(c[l>>2]<<2)>>2];if((c[(c[p>>2]|0)+40>>2]|0)==0){break}if((Uj(c[p>>2]|0,c[r>>2]|0,c[s>>2]|0)|0)!=0){break}c[l>>2]=(c[l>>2]|0)+1}c[(c[k>>2]|0)+8>>2]=c[l>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[k>>2]|0)+8>>2]|0)){p=13;break}c[j>>2]=Fj(c[q>>2]|0,c[(c[c[k>>2]>>2]|0)+(c[l>>2]<<2)>>2]|0)|0;if((c[j>>2]|0)!=0){p=11;break}c[l>>2]=(c[l>>2]|0)+1}if((p|0)==11){c[h>>2]=c[j>>2];a=c[h>>2]|0;i=o;return a|0}else if((p|0)==13){Cj(c[c[k>>2]>>2]|0,c[l>>2]|0,c[l>>2]|0,c[m>>2]|0);c[(c[k>>2]|0)+24>>2]=c[n>>2];c[h>>2]=0;a=c[h>>2]|0;i=o;return a|0}return 0}function Lk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;m=e+28|0;k=e;f=e+4|0;l=e+8|0;d=e+12|0;j=e+16|0;g=e+20|0;h=e+24|0;c[m>>2]=a;c[k>>2]=b;c[f>>2]=c[c[m>>2]>>2];c[d>>2]=0;c[l>>2]=0;while(1){if((c[d>>2]|0)!=0){f=8;break}if((c[l>>2]|0)>=(c[(c[k>>2]|0)+48>>2]|0)){f=8;break}c[j>>2]=(c[k>>2]|0)+56+((c[l>>2]|0)*24|0);if((c[(c[j>>2]|0)+20>>2]|0)!=0){c[g>>2]=0;c[h>>2]=0;c[d>>2]=Mk(c[f>>2]|0,c[j>>2]|0,c[(c[k>>2]|0)+52>>2]|0,g,h)|0;if((c[d>>2]|0)==0){Nk(c[f>>2]|0,c[k>>2]|0,c[l>>2]|0,c[h>>2]|0,c[g>>2]|0)}}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==8){i=e;return c[d>>2]|0}return 0}function Mk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+176|0;j=q+172|0;p=q+168|0;m=q+164|0;h=q+160|0;o=q+156|0;g=q+152|0;l=q+144|0;n=q+16|0;k=q;r=q+148|0;c[j>>2]=a;c[p>>2]=b;c[m>>2]=d;c[h>>2]=e;c[o>>2]=f;c[l>>2]=c[(c[p>>2]|0)+20>>2];e=n+0|0;f=e+128|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));c[k+12>>2]=3|((c[(c[p>>2]|0)+8>>2]|0)!=0?8:0)|((c[(c[p>>2]|0)+12>>2]|0)!=0?32:0)|((c[m>>2]|0)<(c[(c[j>>2]|0)+24>>2]|0)?4:0);c[k+8>>2]=c[m>>2];c[k>>2]=c[c[p>>2]>>2];c[k+4>>2]=c[(c[p>>2]|0)+4>>2];c[g>>2]=ej(c[j>>2]|0,c[l>>2]|0,k)|0;while(1){if(0!=(c[g>>2]|0)){break}a=fj(c[j>>2]|0,c[l>>2]|0)|0;c[g>>2]=a;if(100!=(a|0)){break}c[g>>2]=Rk(c[j>>2]|0,n,c[(c[l>>2]|0)+48>>2]|0,c[(c[l>>2]|0)+52>>2]|0)|0}if((c[g>>2]|0)==0){c[g>>2]=Sk(c[j>>2]|0,n)|0}if((c[g>>2]|0)==0){c[c[o>>2]>>2]=c[n>>2];c[c[h>>2]>>2]=c[n+64>>2];a=c[l>>2]|0;Tk(a);a=c[p>>2]|0;a=a+20|0;c[a>>2]=0;a=c[g>>2]|0;i=q;return a|0}c[r>>2]=0;while(1){if((c[r>>2]|0)>=16){break}oc(c[n+(c[r>>2]<<2)>>2]|0);c[r>>2]=(c[r>>2]|0)+1}a=c[l>>2]|0;Tk(a);a=c[p>>2]|0;a=a+20|0;c[a>>2]=0;a=c[g>>2]|0;i=q;return a|0}function Nk(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=i;i=i+48|0;h=q+36|0;k=q+32|0;n=q+28|0;m=q+24|0;l=q+20|0;p=q+16|0;r=q+8|0;j=q+4|0;s=q;o=q+12|0;c[h>>2]=a;c[k>>2]=b;c[n>>2]=e;c[m>>2]=f;c[l>>2]=g;g=c[k>>2]|0;do{if((c[m>>2]|0)==0){oc(c[g>>2]|0);c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+4>>2]=0}else{if((c[g+44>>2]|0)<0){c[c[k>>2]>>2]=c[m>>2];c[(c[k>>2]|0)+4>>2]=c[l>>2];break}if((c[c[k>>2]>>2]|0)==0){oc(c[m>>2]|0);break}g=c[c[k>>2]>>2]|0;if((c[(c[k>>2]|0)+44>>2]|0)<(c[n>>2]|0)){c[p>>2]=g;c[j>>2]=c[(c[k>>2]|0)+4>>2];c[r>>2]=c[m>>2];c[s>>2]=c[l>>2];c[o>>2]=(c[n>>2]|0)-(c[(c[k>>2]|0)+44>>2]|0)}else{c[r>>2]=g;c[s>>2]=c[(c[k>>2]|0)+4>>2];c[p>>2]=c[m>>2];c[j>>2]=c[l>>2];c[o>>2]=(c[(c[k>>2]|0)+44>>2]|0)-(c[n>>2]|0)}Ok(d[(c[h>>2]|0)+231>>0]|0,c[o>>2]|0,c[p>>2]|0,c[j>>2]|0,c[r>>2]|0,s);oc(c[p>>2]|0);c[c[k>>2]>>2]=c[r>>2];c[(c[k>>2]|0)+4>>2]=c[s>>2]}}while(0);if((c[n>>2]|0)<=(c[(c[k>>2]|0)+44>>2]|0)){i=q;return}c[(c[k>>2]|0)+44>>2]=c[n>>2];i=q;return}function Ok(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,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;k=i;i=i+112|0;t=k+96|0;m=k+92|0;B=k+88|0;C=k+84|0;A=k+80|0;j=k+76|0;s=k+8|0;x=k;o=k+24|0;y=k+72|0;z=k+48|0;u=k+52|0;v=k+40|0;l=k+44|0;q=k+56|0;h=k+60|0;w=k+16|0;n=k+64|0;p=k+32|0;r=k+68|0;c[t>>2]=a;c[m>>2]=b;c[B>>2]=d;c[C>>2]=e;c[A>>2]=f;c[j>>2]=g;a=s;c[a>>2]=0;c[a+4>>2]=0;a=x;c[a>>2]=0;c[a+4>>2]=0;a=o;c[a>>2]=0;c[a+4>>2]=0;c[y>>2]=(c[B>>2]|0)+(c[C>>2]|0);c[z>>2]=(c[A>>2]|0)+(c[c[j>>2]>>2]|0);c[u>>2]=c[B>>2];c[v>>2]=c[A>>2];c[q>>2]=0;c[h>>2]=c[A>>2];c[l>>2]=c[h>>2];Pk(u,c[y>>2]|0,0,s);Pk(v,c[z>>2]|0,0,x);while(1){if((c[u>>2]|0)==0){m=11;break}if((c[v>>2]|0)==0){m=11;break}C=(c[t>>2]|0)!=0?-1:1;A=s;B=x;B=$K(c[A>>2]|0,c[A+4>>2]|0,c[B>>2]|0,c[B+4>>2]|0)|0;B=nL(C|0,((C|0)<0)<<31>>31|0,B|0,D|0)|0;C=w;c[C>>2]=B;c[C+4>>2]=D;C=w;if((c[C>>2]|0)==0&(c[C+4>>2]|0)==0){c[n>>2]=c[l>>2];A=o;B=c[A+4>>2]|0;C=p;c[C>>2]=c[A>>2];c[C+4>>2]=B;c[r>>2]=c[q>>2];C=s;Qk(l,c[t>>2]|0,o,q,c[C>>2]|0,c[C+4>>2]|0);if(0==(Fk(l,c[m>>2]|0,0,1,u,v)|0)){c[l>>2]=c[n>>2];A=p;B=c[A+4>>2]|0;C=o;c[C>>2]=c[A>>2];c[C+4>>2]=B;c[q>>2]=c[r>>2]}Pk(u,c[y>>2]|0,c[t>>2]|0,s);Pk(v,c[z>>2]|0,c[t>>2]|0,x);continue}else{if((c[w+4>>2]|0)<0){Pj(0,u);Pk(u,c[y>>2]|0,c[t>>2]|0,s);continue}else{Pj(0,v);Pk(v,c[z>>2]|0,c[t>>2]|0,x);continue}}}if((m|0)==11){c[c[j>>2]>>2]=(c[l>>2]|0)-(c[h>>2]|0);i=k;return}}function Pk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;k=g+20|0;l=g+16|0;f=g+8|0;h=g+12|0;j=g;c[k>>2]=a;c[l>>2]=b;c[f>>2]=d;c[h>>2]=e;b=c[k>>2]|0;if((c[c[k>>2]>>2]|0)>>>0>=(c[l>>2]|0)>>>0){c[b>>2]=0;i=g;return}b=Kj(c[b>>2]|0,j)|0;k=c[k>>2]|0;c[k>>2]=(c[k>>2]|0)+b;k=c[j>>2]|0;j=c[j+4>>2]|0;h=c[h>>2]|0;b=h;d=c[b>>2]|0;b=c[b+4>>2]|0;if((c[f>>2]|0)!=0){a=$K(d|0,b|0,k|0,j|0)|0;l=h;c[l>>2]=a;c[l+4>>2]=D;i=g;return}else{a=dL(d|0,b|0,k|0,j|0)|0;l=h;c[l>>2]=a;c[l+4>>2]=D;i=g;return}}function Qk(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;k=h+28|0;p=h+24|0;m=h+20|0;n=h+16|0;l=h;o=h+8|0;c[k>>2]=a;c[p>>2]=b;c[m>>2]=d;c[n>>2]=e;a=l;c[a>>2]=f;c[a+4>>2]=g;if((c[p>>2]|0)==0){j=3}else{if((c[c[n>>2]>>2]|0)==0){j=3}else{p=c[m>>2]|0;a=l;a=$K(c[p>>2]|0,c[p+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;p=o;c[p>>2]=a;c[p+4>>2]=D}}if((j|0)==3){p=l;a=c[m>>2]|0;a=$K(c[p>>2]|0,c[p+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;p=o;c[p>>2]=a;c[p+4>>2]=D}a=o;a=uj(c[c[k>>2]>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;b=c[k>>2]|0;c[b>>2]=(c[b>>2]|0)+a;b=l;a=c[b+4>>2]|0;p=c[m>>2]|0;c[p>>2]=c[b>>2];c[p+4>>2]=a;c[c[n>>2]>>2]=1;i=h;return}function Rk(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+48|0;j=q+40|0;n=q+36|0;m=q+32|0;l=q+28|0;t=q+24|0;o=q+20|0;p=q+12|0;g=q+8|0;r=q+4|0;s=q;k=q+16|0;c[n>>2]=a;c[m>>2]=b;c[l>>2]=e;c[t>>2]=f;a:do{if((c[c[m>>2]>>2]|0)==0){a=mc(c[t>>2]|0)|0;c[c[m>>2]>>2]=a;c[(c[m>>2]|0)+64>>2]=c[t>>2];if((c[c[m>>2]>>2]|0)!=0){fL(c[c[m>>2]>>2]|0,c[l>>2]|0,c[t>>2]|0)|0;break}c[j>>2]=7;a=c[j>>2]|0;i=q;return a|0}else{c[o>>2]=c[l>>2];c[p>>2]=c[t>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>=16){break a}if((c[(c[m>>2]|0)+(c[g>>2]<<2)>>2]|0)==0){h=8;break}c[k>>2]=Uk(d[(c[n>>2]|0)+231>>0]|0,c[o>>2]|0,c[p>>2]|0,c[(c[m>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[m>>2]|0)+64+(c[g>>2]<<2)>>2]|0,r,s)|0;t=(c[o>>2]|0)!=(c[l>>2]|0);if((c[k>>2]|0)!=0){break}if(t){oc(c[o>>2]|0)}oc(c[(c[m>>2]|0)+(c[g>>2]<<2)>>2]|0);c[(c[m>>2]|0)+(c[g>>2]<<2)>>2]=0;c[o>>2]=c[r>>2];c[p>>2]=c[s>>2];if(((c[g>>2]|0)+1|0)==16){c[(c[m>>2]|0)+(c[g>>2]<<2)>>2]=c[o>>2];c[(c[m>>2]|0)+64+(c[g>>2]<<2)>>2]=c[p>>2]}c[g>>2]=(c[g>>2]|0)+1}if((h|0)==8){c[(c[m>>2]|0)+(c[g>>2]<<2)>>2]=c[o>>2];c[(c[m>>2]|0)+64+(c[g>>2]<<2)>>2]=c[p>>2];break}if(t){oc(c[o>>2]|0)}c[j>>2]=c[k>>2];a=c[j>>2]|0;i=q;return a|0}}while(0);c[j>>2]=0;a=c[j>>2]|0;i=q;return a|0}function Sk(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+48|0;g=h+32|0;m=h+28|0;e=h+24|0;j=h+20|0;f=h+16|0;l=h+8|0;o=h+4|0;n=h;k=h+12|0;c[m>>2]=a;c[e>>2]=b;c[j>>2]=0;c[f>>2]=0;c[l>>2]=0;a:while(1){if((c[l>>2]|0)>=16){l=10;break}do{if((c[(c[e>>2]|0)+(c[l>>2]<<2)>>2]|0)!=0){if((c[j>>2]|0)==0){c[j>>2]=c[(c[e>>2]|0)+(c[l>>2]<<2)>>2];c[f>>2]=c[(c[e>>2]|0)+64+(c[l>>2]<<2)>>2];c[(c[e>>2]|0)+(c[l>>2]<<2)>>2]=0;break}c[k>>2]=Uk(d[(c[m>>2]|0)+231>>0]|0,c[(c[e>>2]|0)+(c[l>>2]<<2)>>2]|0,c[(c[e>>2]|0)+64+(c[l>>2]<<2)>>2]|0,c[j>>2]|0,c[f>>2]|0,n,o)|0;if((c[k>>2]|0)!=0){l=7;break a}oc(c[(c[e>>2]|0)+(c[l>>2]<<2)>>2]|0);oc(c[j>>2]|0);c[(c[e>>2]|0)+(c[l>>2]<<2)>>2]=0;c[j>>2]=c[n>>2];c[f>>2]=c[o>>2]}}while(0);c[l>>2]=(c[l>>2]|0)+1}if((l|0)==7){oc(c[j>>2]|0);c[g>>2]=c[k>>2];a=c[g>>2]|0;i=h;return a|0}else if((l|0)==10){c[c[e>>2]>>2]=c[j>>2];c[(c[e>>2]|0)+64>>2]=c[f>>2];c[g>>2]=0;a=c[g>>2]|0;i=h;return a|0}return 0}function Tk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;lj(c[d>>2]|0);oc(c[d>>2]|0);i=b;return}function Uk(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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;t=i;i=i+96|0;k=t+56|0;q=t+64|0;C=t+68|0;A=t+72|0;B=t+88|0;z=t+84|0;m=t+80|0;o=t+76|0;r=t+16|0;s=t+8|0;v=t;x=t+60|0;y=t+52|0;p=t+48|0;u=t+44|0;n=t+40|0;l=t+36|0;w=t+32|0;j=t+24|0;c[q>>2]=a;c[C>>2]=b;c[A>>2]=d;c[B>>2]=e;c[z>>2]=f;c[m>>2]=g;c[o>>2]=h;a=r;c[a>>2]=0;c[a+4>>2]=0;a=s;c[a>>2]=0;c[a+4>>2]=0;a=v;c[a>>2]=0;c[a+4>>2]=0;c[x>>2]=(c[C>>2]|0)+(c[A>>2]|0);c[y>>2]=(c[B>>2]|0)+(c[z>>2]|0);c[p>>2]=c[C>>2];c[u>>2]=c[B>>2];c[w>>2]=0;c[c[m>>2]>>2]=0;c[c[o>>2]>>2]=0;c[l>>2]=mc((c[A>>2]|0)+(c[z>>2]|0)+10-1|0)|0;if((c[l>>2]|0)==0){c[k>>2]=7;C=c[k>>2]|0;i=t;return C|0}c[n>>2]=c[l>>2];Pk(p,c[x>>2]|0,0,r);Pk(u,c[y>>2]|0,0,s);a:while(1){if((c[p>>2]|0)==0){if((c[u>>2]|0)==0){break}}C=(c[q>>2]|0)!=0?-1:1;A=r;B=s;B=$K(c[A>>2]|0,c[A+4>>2]|0,c[B>>2]|0,c[B+4>>2]|0)|0;B=nL(C|0,((C|0)<0)<<31>>31|0,B|0,D|0)|0;C=j;c[C>>2]=B;c[C+4>>2]=D;if((c[u>>2]|0)!=0){if((c[p>>2]|0)!=0){C=j;if((c[C>>2]|0)==0&(c[C+4>>2]|0)==0){C=r;Qk(n,c[q>>2]|0,v,w,c[C>>2]|0,c[C+4>>2]|0);Vk(n,p,u);Pk(p,c[x>>2]|0,c[q>>2]|0,r);Pk(u,c[y>>2]|0,c[q>>2]|0,s);continue}}}do{if((c[u>>2]|0)!=0){if((c[p>>2]|0)!=0){if((c[j+4>>2]|0)<0){break}}C=s;Qk(n,c[q>>2]|0,v,w,c[C>>2]|0,c[C+4>>2]|0);Pj(n,u);Pk(u,c[y>>2]|0,c[q>>2]|0,s);continue a}}while(0);C=r;Qk(n,c[q>>2]|0,v,w,c[C>>2]|0,c[C+4>>2]|0);Pj(n,p);Pk(p,c[x>>2]|0,c[q>>2]|0,r)}c[c[m>>2]>>2]=c[l>>2];c[c[o>>2]>>2]=(c[n>>2]|0)-(c[l>>2]|0);c[k>>2]=0;C=c[k>>2]|0;i=t;return C|0}function Vk(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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;g=i;i=i+64|0;n=g+56|0;k=g+52|0;m=g+48|0;q=g+44|0;j=g+40|0;l=g+36|0;o=g+32|0;p=g+24|0;h=g+16|0;r=g+8|0;s=g;t=g+28|0;c[n>>2]=b;c[k>>2]=e;c[m>>2]=f;c[q>>2]=c[c[n>>2]>>2];c[j>>2]=c[c[k>>2]>>2];c[l>>2]=c[c[m>>2]>>2];a:while(1){if((a[c[j>>2]>>0]|0)==0){if((a[c[l>>2]>>0]|0)==0){break}}f=c[j>>2]|0;do{if((a[c[j>>2]>>0]|0)==1){e=(c[j>>2]|0)+1|0;if((a[f+1>>0]&128|0)!=0){Lj(e,o)|0;break}else{c[o>>2]=d[e>>0]|0;break}}else{if((a[f>>0]|0)==0){c[o>>2]=2147483647;break}else{c[o>>2]=0;break}}}while(0);f=c[l>>2]|0;do{if((a[c[l>>2]>>0]|0)==1){e=(c[l>>2]|0)+1|0;if((a[f+1>>0]&128|0)!=0){Lj(e,p)|0;break}else{c[p>>2]=d[e>>0]|0;break}}else{if((a[f>>0]|0)==0){c[p>>2]=2147483647;break}else{c[p>>2]=0;break}}}while(0);if((c[o>>2]|0)!=(c[p>>2]|0)){if((c[o>>2]|0)<(c[p>>2]|0)){b=Wk(q,c[o>>2]|0)|0;c[j>>2]=(c[j>>2]|0)+b;Jj(q,j);continue}else{b=Wk(q,c[p>>2]|0)|0;c[l>>2]=(c[l>>2]|0)+b;Jj(q,l);continue}}b=h;c[b>>2]=0;c[b+4>>2]=0;b=r;c[b>>2]=0;c[b+4>>2]=0;b=s;c[b>>2]=0;c[b+4>>2]=0;c[t>>2]=Wk(q,c[o>>2]|0)|0;c[j>>2]=(c[j>>2]|0)+(c[t>>2]|0);c[l>>2]=(c[l>>2]|0)+(c[t>>2]|0);Gk(j,h);Gk(l,r);while(1){e=h;u=c[e+4>>2]|0;f=r;b=c[f+4>>2]|0;f=(u|0)<(b|0)|((u|0)==(b|0)?(c[e>>2]|0)>>>0<(c[f>>2]|0)>>>0:0);e=h;b=r;Hk(q,s,f?c[e>>2]|0:c[b>>2]|0,f?c[e+4>>2]|0:c[b+4>>2]|0);b=s;b=$K(c[b>>2]|0,c[b+4>>2]|0,2,0)|0;e=s;c[e>>2]=b;c[e+4>>2]=D;e=h;b=r;do{if((c[e>>2]|0)==(c[b>>2]|0)?(c[e+4>>2]|0)==(c[b+4>>2]|0):0){Xk(j,h);Xk(l,r)}else{b=h;f=c[b+4>>2]|0;u=r;e=c[u+4>>2]|0;if((f|0)<(e|0)|((f|0)==(e|0)?(c[b>>2]|0)>>>0<(c[u>>2]|0)>>>0:0)){Xk(j,h);break}else{Xk(l,r);break}}}while(0);u=h;if((c[u>>2]|0)!=2147483647|(c[u+4>>2]|0)!=0){continue}u=r;if(!((c[u>>2]|0)!=2147483647|(c[u+4>>2]|0)!=0)){continue a}}}u=c[q>>2]|0;c[q>>2]=u+1;a[u>>0]=0;c[c[n>>2]>>2]=c[q>>2];c[c[k>>2]>>2]=(c[j>>2]|0)+1;c[c[m>>2]>>2]=(c[l>>2]|0)+1;i=g;return}function Wk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;j=e;f=e+4|0;h=e+8|0;c[g>>2]=b;c[j>>2]=d;c[f>>2]=0;if((c[j>>2]|0)==0){b=c[f>>2]|0;i=e;return b|0}c[h>>2]=c[c[g>>2]>>2];b=c[j>>2]|0;c[f>>2]=1+(uj((c[h>>2]|0)+1|0,b,((b|0)<0)<<31>>31)|0);a[c[h>>2]>>0]=1;c[c[g>>2]>>2]=(c[h>>2]|0)+(c[f>>2]|0);b=c[f>>2]|0;i=e;return b|0}function Xk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=b;c[f>>2]=d;if((a[c[c[g>>2]>>2]>>0]&254|0)!=0){Gk(c[g>>2]|0,c[f>>2]|0);b=c[f>>2]|0;g=b;g=$K(c[g>>2]|0,c[g+4>>2]|0,2,0)|0;c[b>>2]=g;c[b+4>>2]=D;i=e;return}else{b=c[f>>2]|0;c[b>>2]=2147483647;c[b+4>>2]=0;i=e;return}}function Yk(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;k=g+20|0;m=g;l=g+4|0;j=g+8|0;f=g+12|0;h=g+16|0;c[k>>2]=a;c[m>>2]=b;c[l>>2]=e;c[j>>2]=c[c[k>>2]>>2];c[f>>2]=0;if((d[(c[m>>2]|0)+34>>0]|0|0)!=0){if((c[c[(c[m>>2]|0)+8>>2]>>2]|0)!=1){c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[j>>2]|0)+24>>2]|0)){break}c[(c[l>>2]|0)+(((c[h>>2]|0)*3|0)+1<<2)>>2]=c[(c[k>>2]|0)+64>>2];c[(c[l>>2]|0)+(((c[h>>2]|0)*3|0)+2<<2)>>2]=c[(c[k>>2]|0)+64>>2];c[h>>2]=(c[h>>2]|0)+1}a=c[f>>2]|0;i=g;return a|0}}c[f>>2]=Zk(c[k>>2]|0,c[m>>2]|0)|0;if((c[f>>2]|0)!=0){a=c[f>>2]|0;i=g;return a|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[j>>2]|0)+24>>2]|0)){break}c[(c[l>>2]|0)+(((c[h>>2]|0)*3|0)+1<<2)>>2]=c[(c[(c[m>>2]|0)+36>>2]|0)+(((c[h>>2]|0)*3|0)+1<<2)>>2];c[(c[l>>2]|0)+(((c[h>>2]|0)*3|0)+2<<2)>>2]=c[(c[(c[m>>2]|0)+36>>2]|0)+(((c[h>>2]|0)*3|0)+2<<2)>>2];c[h>>2]=(c[h>>2]|0)+1}a=c[f>>2]|0;i=g;return a|0}function Zk(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+64|0;h=j+44|0;m=j+40|0;s=j+36|0;p=j+32|0;f=j+28|0;l=j+24|0;q=j+16|0;n=j+8|0;r=j;k=j+48|0;o=j+20|0;c[m>>2]=b;c[s>>2]=e;c[p>>2]=0;do{if((c[(c[s>>2]|0)+36>>2]|0)==0){c[f>>2]=c[c[m>>2]>>2];t=(c[m>>2]|0)+32|0;e=c[t+4>>2]|0;b=n;c[b>>2]=c[t>>2];c[b+4>>2]=e;c[l>>2]=c[s>>2];while(1){if((c[(c[l>>2]|0)+8>>2]|0)!=0){e=(c[c[(c[l>>2]|0)+8>>2]>>2]|0)==1}else{e=0}s=c[l>>2]|0;if(!e){break}c[l>>2]=c[s+8>>2]}e=s+24|0;b=c[e+4>>2]|0;t=r;c[t>>2]=c[e>>2];c[t+4>>2]=b;a[k>>0]=a[(c[l>>2]|0)+32>>0]|0;c[q>>2]=c[l>>2];while(1){if((c[q>>2]|0)==0){break}s=c[q>>2]|0;if((c[c[q>>2]>>2]|0)!=5){s=c[s+16>>2]|0}c[o>>2]=s;t=mc((c[(c[f>>2]|0)+24>>2]|0)*3<<2)|0;c[(c[o>>2]|0)+36>>2]=t;if((c[(c[o>>2]|0)+36>>2]|0)==0){g=12;break}aL(c[(c[o>>2]|0)+36>>2]|0,0,(c[(c[f>>2]|0)+24>>2]|0)*3<<2|0)|0;c[q>>2]=c[(c[q>>2]|0)+12>>2]}if((g|0)==12){c[h>>2]=7;t=c[h>>2]|0;i=j;return t|0}wk(c[m>>2]|0,c[l>>2]|0,p);while(1){if((d[(c[m>>2]|0)+6>>0]|0)!=0){break}if((c[p>>2]|0)!=0){break}do{if((d[(c[m>>2]|0)+7>>0]|0)==0){Cd(c[(c[m>>2]|0)+8>>2]|0)|0}xk(c[m>>2]|0,c[l>>2]|0,p);a[(c[m>>2]|0)+6>>0]=a[(c[l>>2]|0)+32>>0]|0;a[(c[m>>2]|0)+7>>0]=1;c[(c[m>>2]|0)+88>>2]=1;e=(c[l>>2]|0)+24|0;b=c[e+4>>2]|0;t=(c[m>>2]|0)+32|0;c[t>>2]=c[e>>2];c[t+4>>2]=b;if((d[(c[m>>2]|0)+6>>0]|0)!=0){break}if((c[c[l>>2]>>2]|0)!=1){break}}while((_k(c[m>>2]|0,p)|0)!=0);if((c[p>>2]|0)!=0){continue}if((d[(c[m>>2]|0)+6>>0]|0)!=0){continue}$k(c[l>>2]|0)}a[(c[m>>2]|0)+6>>0]=0;e=n;b=c[e+4>>2]|0;t=(c[m>>2]|0)+32|0;c[t>>2]=c[e>>2];c[t+4>>2]=b;if((a[k>>0]|0)!=0){a[(c[l>>2]|0)+32>>0]=a[k>>0]|0;break}wk(c[m>>2]|0,c[l>>2]|0,p);do{xk(c[m>>2]|0,c[l>>2]|0,p);b=(c[l>>2]|0)+24|0;t=r;if(!((c[b>>2]|0)!=(c[t>>2]|0)?1:(c[b+4>>2]|0)!=(c[t+4>>2]|0))){break}}while((c[p>>2]|0)==0);_k(c[m>>2]|0,p)|0}}while(0);c[h>>2]=c[p>>2];t=c[h>>2]|0;i=j;return t|0}function _k(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+12|0;h=d;e=d+4|0;g=d+8|0;c[f>>2]=a;c[h>>2]=b;c[e>>2]=c[c[h>>2]>>2];c[g>>2]=0;if((c[e>>2]|0)==0){if((c[(c[f>>2]|0)+24>>2]|0)!=0){c[e>>2]=al(0,c[f>>2]|0)|0;if((c[e>>2]|0)==0){c[e>>2]=bl(c[f>>2]|0)|0}}c[g>>2]=0==(cl(c[f>>2]|0,c[(c[f>>2]|0)+12>>2]|0,e)|0)&1;dl(c[f>>2]|0);c[c[h>>2]>>2]=c[e>>2]}if((c[e>>2]|0)!=0){a=0;a=a&1;i=d;return a|0}a=(c[g>>2]|0)!=0;a=a&1;i=d;return a|0}function $k(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;k=e+16|0;l=e;h=e+4|0;j=e+8|0;f=e+20|0;g=e+12|0;c[k>>2]=b;if((c[k>>2]|0)==0){i=e;return}c[l>>2]=c[(c[k>>2]|0)+20>>2];a:do{if((c[l>>2]|0)!=0){if((c[(c[l>>2]|0)+28>>2]|0)!=0){c[h>>2]=0;c[j>>2]=c[(c[l>>2]|0)+28>>2];while(1){a[f>>0]=0;c[g>>2]=0;while(1){if((254&(a[c[j>>2]>>0]|d[f>>0])|0)==0){break}if((a[f>>0]&128|0)==0){c[g>>2]=(c[g>>2]|0)+1}l=c[j>>2]|0;c[j>>2]=l+1;a[f>>0]=a[l>>0]&128}l=(c[(c[k>>2]|0)+36>>2]|0)+(((c[h>>2]|0)*3|0)+1<<2)|0;c[l>>2]=(c[l>>2]|0)+(c[g>>2]|0);l=(c[(c[k>>2]|0)+36>>2]|0)+(((c[h>>2]|0)*3|0)+2<<2)|0;c[l>>2]=(c[l>>2]|0)+((c[g>>2]|0)>0&1);if((a[c[j>>2]>>0]|0)==0){break a}c[j>>2]=(c[j>>2]|0)+1;b=c[j>>2]|0;if((a[c[j>>2]>>0]&128|0)!=0){b=Lj(b,h)|0}else{c[h>>2]=d[b>>0]|0;b=1}c[j>>2]=(c[j>>2]|0)+b}}}}while(0);$k(c[(c[k>>2]|0)+12>>2]|0);$k(c[(c[k>>2]|0)+16>>2]|0);i=e;return}function al(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;e=f+16|0;j=f;h=f+4|0;g=f+8|0;k=f+12|0;c[j>>2]=b;c[h>>2]=d;c[g>>2]=0;if((a[(c[h>>2]|0)+7>>0]|0)!=0){c[k>>2]=0;c[g>>2]=ml(c[h>>2]|0,k)|0;if((c[g>>2]|0)==0){b=(c[h>>2]|0)+32|0;Pe(c[(c[h>>2]|0)+8>>2]|0,1,c[b>>2]|0,c[b+4>>2]|0)|0;a[(c[h>>2]|0)+7>>0]=0;if(100==(le(c[(c[h>>2]|0)+8>>2]|0)|0)){c[e>>2]=0;b=c[e>>2]|0;i=f;return b|0}c[g>>2]=Cd(c[(c[h>>2]|0)+8>>2]|0)|0;if((c[g>>2]|0)==0){if((c[(c[c[h>>2]>>2]|0)+40>>2]|0)==0){c[g>>2]=267;a[(c[h>>2]|0)+6>>0]=1}}}}if((c[g>>2]|0)!=0){if((c[j>>2]|0)!=0){he(c[j>>2]|0,c[g>>2]|0)}}c[e>>2]=c[g>>2];b=c[e>>2]|0;i=f;return b|0}function bl(a){a=a|0;var b=0,e=0,f=0,g=0,h=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;n=i;i=i+80|0;h=n+64|0;f=n+60|0;s=n+56|0;v=n;g=n+52|0;r=n+48|0;u=n+44|0;o=n+40|0;t=n+36|0;j=n+28|0;p=n+24|0;k=n+20|0;l=n+16|0;m=n+8|0;b=n+12|0;q=n+32|0;c[h>>2]=a;c[f>>2]=0;if((c[(c[h>>2]|0)+24>>2]|0)==0){a=c[f>>2]|0;i=n;return a|0}c[r>>2]=c[c[h>>2]>>2];c[u>>2]=c[(c[r>>2]|0)+36>>2];c[o>>2]=c[c[u>>2]>>2];w=Ee(c[(c[h>>2]|0)+8>>2]|0,0)|0;a=v;c[a>>2]=w;c[a+4>>2]=D;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[(c[r>>2]|0)+24>>2]|0)){break}if((c[f>>2]|0)!=0){break}if((d[(c[(c[r>>2]|0)+32>>2]|0)+(c[s>>2]|0)>>0]|0|0)==0){c[t>>2]=Fe(c[(c[h>>2]|0)+8>>2]|0,(c[s>>2]|0)+1|0)|0;c[j>>2]=0;c[f>>2]=jl(c[u>>2]|0,c[(c[h>>2]|0)+16>>2]|0,c[t>>2]|0,-1,j)|0;a:while(1){if((c[f>>2]|0)!=0){break}c[k>>2]=0;c[l>>2]=0;c[m>>2]=0;c[b>>2]=0;c[f>>2]=tb[c[(c[o>>2]|0)+20>>2]&15](c[j>>2]|0,p,k,l,m,b)|0;c[g>>2]=c[(c[h>>2]|0)+24>>2];while(1){if((c[g>>2]|0)==0){continue a}if((c[f>>2]|0)!=0){continue a}c[q>>2]=c[c[g>>2]>>2];if((c[(c[g>>2]|0)+4>>2]|0)>=(c[(c[r>>2]|0)+24>>2]|0)){e=13}else{if((c[(c[g>>2]|0)+4>>2]|0)==(c[s>>2]|0)){e=13}}do{if((e|0)==13){e=0;if((c[(c[q>>2]|0)+12>>2]|0)!=0){if((c[b>>2]|0)!=0){break}}if((c[(c[q>>2]|0)+4>>2]|0)!=(c[k>>2]|0)){if((c[(c[q>>2]|0)+8>>2]|0)==0){break}if((c[(c[q>>2]|0)+4>>2]|0)>=(c[k>>2]|0)){break}}if(0==(XK(c[p>>2]|0,c[c[q>>2]>>2]|0,c[(c[q>>2]|0)+4>>2]|0)|0)){x=v;a=c[s>>2]|0;w=c[b>>2]|0;kl((c[g>>2]|0)+12|0,c[x>>2]|0,c[x+4>>2]|0,a,((a|0)<0)<<31>>31,w,((w|0)<0)<<31>>31,f)|0}}}while(0);c[g>>2]=c[(c[g>>2]|0)+8>>2]}}if((c[j>>2]|0)!=0){ub[c[(c[o>>2]|0)+16>>2]&63](c[j>>2]|0)|0}if((c[f>>2]|0)==101){c[f>>2]=0}}c[s>>2]=(c[s>>2]|0)+1}c[g>>2]=c[(c[h>>2]|0)+24>>2];while(1){if((c[g>>2]|0)==0){e=32;break}if((c[f>>2]|0)!=0){e=32;break}if((c[(c[g>>2]|0)+12>>2]|0)!=0){c[f>>2]=ll((c[g>>2]|0)+12|0,0,0)|0}c[g>>2]=c[(c[g>>2]|0)+8>>2]}if((e|0)==32){x=c[f>>2]|0;i=n;return x|0}return 0}function cl(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;j=h+28|0;l=h;o=h+4|0;g=h+8|0;k=h+12|0;p=h+16|0;n=h+20|0;m=h+24|0;c[j>>2]=b;c[l>>2]=e;c[o>>2]=f;c[g>>2]=1;if((c[c[o>>2]>>2]|0)!=0){b=c[g>>2]|0;i=h;return b|0}f=c[c[l>>2]>>2]|0;if((f|0)==4){c[p>>2]=cl(c[j>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[o>>2]|0)|0;c[n>>2]=cl(c[j>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[o>>2]|0)|0;if((c[p>>2]|0)!=0){j=1}else{j=(c[n>>2]|0)!=0}c[g>>2]=j&1;b=c[g>>2]|0;i=h;return b|0}else if((f|0)==2){if((cl(c[j>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[o>>2]|0)|0)!=0){j=(cl(c[j>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[o>>2]|0)|0)!=0^1}else{j=0}c[g>>2]=j&1;b=c[g>>2]|0;i=h;return b|0}else if((f|0)==3|(f|0)==1){if((cl(c[j>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[o>>2]|0)|0)!=0){if((cl(c[j>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[o>>2]|0)|0)!=0){m=(el(c[l>>2]|0,c[o>>2]|0)|0)!=0}else{m=0}}else{m=0}c[g>>2]=m&1;if((c[g>>2]|0)!=0){b=c[g>>2]|0;i=h;return b|0}if((c[c[l>>2]>>2]|0)!=1){b=c[g>>2]|0;i=h;return b|0}if((c[(c[l>>2]|0)+8>>2]|0)!=0){if((c[c[(c[l>>2]|0)+8>>2]>>2]|0)==1){b=c[g>>2]|0;i=h;return b|0}}c[k>>2]=c[l>>2];while(1){l=c[k>>2]|0;if((c[(c[k>>2]|0)+20>>2]|0)!=0){break}e=(c[l+16>>2]|0)+24|0;b=(c[j>>2]|0)+32|0;if((c[e>>2]|0)==(c[b>>2]|0)?(c[e+4>>2]|0)==(c[b+4>>2]|0):0){zk(c[(c[(c[k>>2]|0)+16>>2]|0)+20>>2]|0)}c[k>>2]=c[(c[k>>2]|0)+12>>2]}e=l+24|0;b=(c[j>>2]|0)+32|0;if(!((c[e>>2]|0)==(c[b>>2]|0)?(c[e+4>>2]|0)==(c[b+4>>2]|0):0)){b=c[g>>2]|0;i=h;return b|0}zk(c[(c[k>>2]|0)+20>>2]|0);b=c[g>>2]|0;i=h;return b|0}else{do{if((c[(c[j>>2]|0)+24>>2]|0)!=0){e=(c[l>>2]|0)+24|0;b=(c[j>>2]|0)+32|0;if(!((c[e>>2]|0)==(c[b>>2]|0)?(c[e+4>>2]|0)==(c[b+4>>2]|0):0)){if((d[(c[l>>2]|0)+34>>0]|0)==0){break}}c[m>>2]=c[(c[l>>2]|0)+20>>2];if((a[(c[l>>2]|0)+34>>0]|0)!=0){zk(c[m>>2]|0)}f=fl(c[j>>2]|0,c[m>>2]|0)|0;c[c[o>>2]>>2]=f;c[g>>2]=(c[(c[m>>2]|0)+28>>2]|0)!=0&1;f=(c[j>>2]|0)+32|0;e=c[f+4>>2]|0;b=(c[l>>2]|0)+24|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;b=c[g>>2]|0;i=h;return b|0}}while(0);if((d[(c[l>>2]|0)+32>>0]|0)==0){b=(c[l>>2]|0)+24|0;j=(c[j>>2]|0)+32|0;j=(c[b>>2]|0)==(c[j>>2]|0)?(c[b+4>>2]|0)==(c[j+4>>2]|0):0}else{j=0}c[g>>2]=j&1;b=c[g>>2]|0;i=h;return b|0}return 0}function dl(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[(c[e>>2]|0)+24>>2];while(1){if((c[d>>2]|0)==0){break}Wi(c[(c[d>>2]|0)+12>>2]|0);c[(c[d>>2]|0)+12>>2]=0;c[d>>2]=c[(c[d>>2]|0)+8>>2]}i=b;return}function el(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+48|0;n=k+44|0;p=k+40|0;l=k+36|0;h=k+32|0;q=k+28|0;g=k+24|0;e=k+20|0;m=k+12|0;r=k+8|0;o=k+4|0;j=k;f=k+16|0;c[n>>2]=a;c[p>>2]=b;c[l>>2]=1;if((c[c[p>>2]>>2]|0)!=0){a=c[l>>2]|0;i=k;return a|0}if((c[c[n>>2]>>2]|0)!=1){a=c[l>>2]|0;i=k;return a|0}if((d[(c[n>>2]|0)+32>>0]|0|0)!=0){a=c[l>>2]|0;i=k;return a|0}if((c[(c[n>>2]|0)+8>>2]|0)!=0){if((c[c[(c[n>>2]|0)+8>>2]>>2]|0)==1){a=c[l>>2]|0;i=k;return a|0}}c[q>>2]=0;c[h>>2]=c[n>>2];while(1){b=c[h>>2]|0;if((c[(c[h>>2]|0)+12>>2]|0)==0){break}c[q>>2]=(c[q>>2]|0)+(c[(c[(c[b+16>>2]|0)+20>>2]|0)+32>>2]|0);c[h>>2]=c[(c[h>>2]|0)+12>>2]}c[q>>2]=(c[q>>2]|0)+(c[(c[b+20>>2]|0)+32>>2]|0);if((c[q>>2]|0)==0){c[l>>2]=0;a=c[l>>2]|0;i=k;return a|0}c[g>>2]=mc(c[q>>2]<<1)|0;a:do{if((c[g>>2]|0)!=0){c[e>>2]=c[(c[(c[h>>2]|0)+20>>2]|0)+28>>2];c[m>>2]=c[(c[(c[h>>2]|0)+20>>2]|0)+48>>2];c[h>>2]=c[(c[h>>2]|0)+8>>2];while(1){if((c[l>>2]|0)==0){break}if((c[h>>2]|0)==0){break}if((c[c[h>>2]>>2]|0)!=1){break}c[r>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+20>>2];c[o>>2]=c[(c[h>>2]|0)+4>>2];c[l>>2]=hl(c[o>>2]|0,c[g>>2]|0,e,m,c[r>>2]|0)|0;c[h>>2]=c[(c[h>>2]|0)+8>>2]}c[e>>2]=c[(c[(c[(c[n>>2]|0)+16>>2]|0)+20>>2]|0)+28>>2];c[m>>2]=c[(c[(c[(c[n>>2]|0)+16>>2]|0)+20>>2]|0)+48>>2];c[h>>2]=c[(c[n>>2]|0)+12>>2];while(1){if((c[h>>2]|0)==0){break a}if((c[l>>2]|0)==0){break a}c[j>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+4>>2];n=c[h>>2]|0;if((c[c[h>>2]>>2]|0)==1){n=c[(c[n+16>>2]|0)+20>>2]|0}else{n=c[n+20>>2]|0}c[f>>2]=n;c[l>>2]=hl(c[j>>2]|0,c[g>>2]|0,e,m,c[f>>2]|0)|0;c[h>>2]=c[(c[h>>2]|0)+12>>2]}}else{c[c[p>>2]>>2]=7;c[l>>2]=0}}while(0);oc(c[g>>2]|0);a=c[l>>2]|0;i=k;return a|0}function fl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=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;p=i;i=i+80|0;q=p+76|0;j=p+72|0;g=p+68|0;v=p+64|0;f=p+60|0;h=p+56|0;o=p+52|0;y=p+48|0;x=p+44|0;w=p+40|0;r=p+36|0;e=p+12|0;s=p;t=p+4|0;u=p+8|0;n=p+16|0;d=p+20|0;l=p+24|0;m=p+28|0;k=p+32|0;c[j>>2]=a;c[g>>2]=b;c[f>>2]=0;c[h>>2]=0;c[o>>2]=-1;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[(c[g>>2]|0)+48>>2]|0)){r=14;break}c[y>>2]=(c[g>>2]|0)+56+((c[v>>2]|0)*24|0);c[x>>2]=c[(c[y>>2]|0)+16>>2];if((c[x>>2]|0)!=0){c[e>>2]=gl(c[x>>2]|0,w,r)|0;if((c[e>>2]|0)!=0){r=5;break}a=c[f>>2]|0;if((c[w>>2]|0)==0){r=7;break}b=c[w>>2]|0;if((a|0)==0){c[f>>2]=b;c[h>>2]=c[r>>2]}else{c[s>>2]=b;c[t>>2]=c[f>>2];c[u>>2]=c[s>>2];Fk(s,(c[v>>2]|0)-(c[o>>2]|0)|0,0,1,t,u)|0;oc(c[f>>2]|0);c[f>>2]=c[w>>2];c[h>>2]=(c[s>>2]|0)-(c[f>>2]|0);if((c[h>>2]|0)==0){r=11;break}}c[o>>2]=c[v>>2]}c[v>>2]=(c[v>>2]|0)+1}if((r|0)==5){c[q>>2]=c[e>>2];b=c[q>>2]|0;i=p;return b|0}else if((r|0)==7){oc(a);c[(c[g>>2]|0)+28>>2]=0;c[(c[g>>2]|0)+32>>2]=0;c[q>>2]=0;b=c[q>>2]|0;i=p;return b|0}else if((r|0)==11){oc(c[f>>2]|0);c[(c[g>>2]|0)+28>>2]=0;c[(c[g>>2]|0)+32>>2]=0;c[q>>2]=0;b=c[q>>2]|0;i=p;return b|0}else if((r|0)==14){do{if((c[o>>2]|0)>=0){c[n>>2]=c[(c[g>>2]|0)+44>>2];if((c[n>>2]|0)<0){c[(c[g>>2]|0)+28>>2]=c[f>>2];c[(c[g>>2]|0)+32>>2]=c[h>>2];y=(c[j>>2]|0)+32|0;a=c[y+4>>2]|0;b=(c[g>>2]|0)+16|0;c[b>>2]=c[y>>2];c[b+4>>2]=a;c[(c[g>>2]|0)+24>>2]=1;break}if((c[n>>2]|0)>(c[o>>2]|0)){c[l>>2]=c[f>>2];c[m>>2]=c[(c[g>>2]|0)+28>>2];c[d>>2]=(c[n>>2]|0)-(c[o>>2]|0)}else{c[l>>2]=c[(c[g>>2]|0)+28>>2];c[m>>2]=c[f>>2];c[d>>2]=(c[o>>2]|0)-(c[n>>2]|0)}c[k>>2]=mc((c[h>>2]|0)+8|0)|0;if((c[k>>2]|0)==0){oc(c[f>>2]|0);c[q>>2]=7;b=c[q>>2]|0;i=p;return b|0}c[(c[g>>2]|0)+28>>2]=c[k>>2];if((Fk(k,c[d>>2]|0,0,1,l,m)|0)!=0){c[(c[g>>2]|0)+24>>2]=1;c[(c[g>>2]|0)+32>>2]=(c[k>>2]|0)-(c[(c[g>>2]|0)+28>>2]|0)}else{oc(c[k>>2]|0);c[(c[g>>2]|0)+28>>2]=0;c[(c[g>>2]|0)+32>>2]=0}oc(c[f>>2]|0)}}while(0);c[q>>2]=0;b=c[q>>2]|0;i=p;return b|0}return 0}function gl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;l=e+8|0;j=e+12|0;k=e+16|0;h=e+20|0;c[g>>2]=a;c[l>>2]=b;c[j>>2]=d;c[c[l>>2]>>2]=0;c[c[j>>2]>>2]=0;if((c[(c[g>>2]|0)+12>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}c[k>>2]=mc(c[c[(c[g>>2]|0)+12>>2]>>2]|0)|0;if((c[k>>2]|0)!=0){c[h>>2]=Kj(c[(c[(c[g>>2]|0)+12>>2]|0)+4>>2]|0,e)|0;c[c[j>>2]>>2]=(c[c[(c[g>>2]|0)+12>>2]>>2]|0)-(c[h>>2]|0);c[c[l>>2]>>2]=c[k>>2];fL(c[k>>2]|0,(c[(c[(c[g>>2]|0)+12>>2]|0)+4>>2]|0)+(c[h>>2]|0)|0,c[c[j>>2]>>2]|0)|0;c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}else{c[f>>2]=7;a=c[f>>2]|0;i=e;return a|0}return 0}function hl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;m=i;i=i+48|0;s=m+40|0;r=m+36|0;g=m+32|0;n=m+28|0;k=m+24|0;q=m+20|0;p=m+12|0;l=m+8|0;o=m+4|0;j=m;h=m+16|0;c[s>>2]=a;c[r>>2]=b;c[g>>2]=d;c[n>>2]=e;c[k>>2]=f;c[q>>2]=(c[s>>2]|0)+(c[(c[k>>2]|0)+48>>2]|0);c[p>>2]=(c[s>>2]|0)+(c[c[n>>2]>>2]|0);a=c[(c[k>>2]|0)+28>>2]|0;c[j>>2]=a;c[o>>2]=a;c[h>>2]=il(j,c[r>>2]|0,c[q>>2]|0,c[p>>2]|0,c[g>>2]|0,o)|0;if((c[h>>2]|0)==0){s=c[h>>2]|0;i=m;return s|0}c[l>>2]=(c[j>>2]|0)-(c[(c[k>>2]|0)+28>>2]|0)-1;aL((c[(c[k>>2]|0)+28>>2]|0)+(c[l>>2]|0)|0,0,(c[(c[k>>2]|0)+32>>2]|0)-(c[l>>2]|0)|0)|0;c[(c[k>>2]|0)+32>>2]=c[l>>2];c[c[g>>2]>>2]=c[(c[k>>2]|0)+28>>2];c[c[n>>2]>>2]=c[(c[k>>2]|0)+48>>2];s=c[h>>2]|0;i=m;return s|0}function il(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;n=i;i=i+48|0;m=n+44|0;l=n+40|0;u=n+36|0;r=n+32|0;p=n+28|0;q=n+24|0;t=n+20|0;s=n+12|0;o=n+8|0;h=n+4|0;k=n;j=n+16|0;c[m>>2]=a;c[l>>2]=b;c[u>>2]=d;c[r>>2]=e;c[p>>2]=f;c[q>>2]=g;c[t>>2]=c[c[p>>2]>>2];c[s>>2]=c[c[q>>2]>>2];c[o>>2]=c[l>>2];c[j>>2]=1;Fk(o,c[u>>2]|0,0,0,c[p>>2]|0,c[q>>2]|0)|0;a=c[o>>2]|0;c[h>>2]=a;c[k>>2]=a;c[c[p>>2]>>2]=c[t>>2];c[c[q>>2]>>2]=c[s>>2];Fk(h,c[r>>2]|0,1,0,c[q>>2]|0,c[p>>2]|0)|0;if((c[o>>2]|0)!=(c[l>>2]|0)){if((c[h>>2]|0)!=(c[k>>2]|0)){Vk(c[m>>2]|0,l,k);u=c[j>>2]|0;i=n;return u|0}}if((c[o>>2]|0)!=(c[l>>2]|0)){Pj(c[m>>2]|0,l);u=c[j>>2]|0;i=n;return u|0}if((c[h>>2]|0)!=(c[k>>2]|0)){Pj(c[m>>2]|0,k);u=c[j>>2]|0;i=n;return u|0}else{c[j>>2]=0;u=c[j>>2]|0;i=n;return u|0}return 0}function jl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;n=j+28|0;g=j;p=j+4|0;o=j+8|0;h=j+12|0;l=j+16|0;m=j+20|0;k=j+24|0;c[n>>2]=a;c[g>>2]=b;c[p>>2]=d;c[o>>2]=e;c[h>>2]=f;c[l>>2]=c[c[n>>2]>>2];c[m>>2]=0;c[k>>2]=xb[c[(c[l>>2]|0)+12>>2]&31](c[n>>2]|0,c[p>>2]|0,c[o>>2]|0,m)|0;if((c[k>>2]|0)==0){c[c[m>>2]>>2]=c[n>>2];if((c[c[l>>2]>>2]|0)>=1){c[k>>2]=zb[c[(c[l>>2]|0)+24>>2]&127](c[m>>2]|0,c[g>>2]|0)|0;if((c[k>>2]|0)!=0){ub[c[(c[l>>2]|0)+16>>2]&63](c[m>>2]|0)|0;c[m>>2]=0}}}c[c[h>>2]>>2]=c[m>>2];i=j;return c[k>>2]|0}function kl(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=i;i=i+64|0;q=r+44|0;n=r+48|0;s=r+8|0;k=r+16|0;o=r;p=r+32|0;m=r+36|0;l=r+40|0;t=r+24|0;c[n>>2]=a;a=s;c[a>>2]=b;c[a+4>>2]=d;a=k;c[a>>2]=e;c[a+4>>2]=f;a=o;c[a>>2]=g;c[a+4>>2]=h;c[p>>2]=j;c[m>>2]=c[c[n>>2]>>2];c[l>>2]=0;if((c[m>>2]|0)!=0){b=(c[m>>2]|0)+16|0;a=s;if((c[b>>2]|0)!=(c[a>>2]|0)?1:(c[b+4>>2]|0)!=(c[a+4>>2]|0)){h=3}else{h=9}}else{h=3}if((h|0)==3){f=s;if((c[m>>2]|0)!=0){j=(c[m>>2]|0)+16|0;g=c[j>>2]|0;j=c[j+4>>2]|0}else{g=0;j=0}b=$K(c[f>>2]|0,c[f+4>>2]|0,g|0,j|0)|0;a=t;c[a>>2]=b;c[a+4>>2]=D;if((c[m>>2]|0)!=0){a=c[m>>2]|0;c[a>>2]=(c[a>>2]|0)+1}a=t;a=ll(m,c[a>>2]|0,c[a+4>>2]|0)|0;c[l>>2]=a;if(0==(a|0)){b=(c[m>>2]|0)+24|0;c[b>>2]=-1;c[b+4>>2]=-1;b=(c[m>>2]|0)+32|0;c[b>>2]=0;c[b+4>>2]=0;b=s;a=c[b+4>>2]|0;h=(c[m>>2]|0)+16|0;c[h>>2]=c[b>>2];c[h+4>>2]=a;h=9}}do{if((h|0)==9){a=k;b=c[a+4>>2]|0;if((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>0){b=(c[m>>2]|0)+24|0;a=k;if((c[b>>2]|0)!=(c[a>>2]|0)?1:(c[b+4>>2]|0)!=(c[a+4>>2]|0)){a=ll(m,1,0)|0;c[l>>2]=a;if(0!=(a|0)){break}a=k;a=ll(m,c[a>>2]|0,c[a+4>>2]|0)|0;c[l>>2]=a;if(0!=(a|0)){break}d=k;b=c[d+4>>2]|0;a=(c[m>>2]|0)+24|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;a=(c[m>>2]|0)+32|0;c[a>>2]=0;c[a+4>>2]=0}}a=k;b=c[a+4>>2]|0;if((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>=0){b=o;b=dL(2,0,c[b>>2]|0,c[b+4>>2]|0)|0;a=(c[m>>2]|0)+32|0;a=$K(b|0,D|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[l>>2]=ll(m,a,D)|0;if((c[l>>2]|0)==0){d=o;b=c[d+4>>2]|0;a=(c[m>>2]|0)+32|0;c[a>>2]=c[d>>2];c[a+4>>2]=b}}}}while(0);c[c[p>>2]>>2]=c[l>>2];if((c[m>>2]|0)!=(c[c[n>>2]>>2]|0)){c[c[n>>2]>>2]=c[m>>2];c[q>>2]=1;a=c[q>>2]|0;i=r;return a|0}else{c[q>>2]=0;a=c[q>>2]|0;i=r;return a|0}return 0}function ll(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+20|0;h=f+8|0;k=f;j=f+12|0;l=f+16|0;c[h>>2]=b;b=k;c[b>>2]=d;c[b+4>>2]=e;c[j>>2]=c[c[h>>2]>>2];do{if((c[j>>2]|0)!=0){if(((c[c[j>>2]>>2]|0)+11|0)>(c[(c[j>>2]|0)+8>>2]|0)){c[l>>2]=c[(c[j>>2]|0)+8>>2]<<1;c[j>>2]=qc(c[j>>2]|0,40+(c[l>>2]|0)|0)|0;if((c[j>>2]|0)!=0){c[(c[j>>2]|0)+8>>2]=c[l>>2];c[(c[j>>2]|0)+4>>2]=(c[j>>2]|0)+40;break}oc(c[c[h>>2]>>2]|0);c[c[h>>2]>>2]=0;c[g>>2]=7;b=c[g>>2]|0;i=f;return b|0}}else{c[j>>2]=mc(140)|0;if((c[j>>2]|0)!=0){c[(c[j>>2]|0)+8>>2]=100;c[(c[j>>2]|0)+4>>2]=(c[j>>2]|0)+40;c[c[j>>2]>>2]=0;break}c[g>>2]=7;b=c[g>>2]|0;i=f;return b|0}}while(0);d=k;d=uj((c[(c[j>>2]|0)+4>>2]|0)+(c[c[j>>2]>>2]|0)|0,c[d>>2]|0,c[d+4>>2]|0)|0;b=c[j>>2]|0;c[b>>2]=(c[b>>2]|0)+d;a[(c[(c[j>>2]|0)+4>>2]|0)+(c[c[j>>2]>>2]|0)>>0]=0;c[c[h>>2]>>2]=c[j>>2];c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}function ml(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;l=d;e=d+24|0;h=d+4|0;g=d+8|0;f=d+12|0;k=d+16|0;j=d+20|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=0;do{if((c[(c[h>>2]|0)+8>>2]|0)==0){c[k>>2]=c[c[h>>2]>>2];c[l>>2]=c[(c[k>>2]|0)+216>>2];c[j>>2]=wc(7024,l)|0;if((c[j>>2]|0)!=0){c[f>>2]=Df(c[(c[k>>2]|0)+12>>2]|0,c[j>>2]|0,-1,(c[h>>2]|0)+8|0,0)|0;oc(c[j>>2]|0);break}c[e>>2]=7;a=c[e>>2]|0;i=d;return a|0}}while(0);c[c[g>>2]>>2]=c[(c[h>>2]|0)+8>>2];c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}function nl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;f=k+20|0;h=k;l=k+4|0;j=k+8|0;g=k+12|0;m=k+16|0;c[f>>2]=a;c[h>>2]=b;c[l>>2]=d;c[j>>2]=e;c[m>>2]=c[c[f>>2]>>2];if((c[m>>2]|0)==5){c[g>>2]=pb[c[l>>2]&31](c[f>>2]|0,c[c[h>>2]>>2]|0,c[j>>2]|0)|0;a=c[h>>2]|0;c[a>>2]=(c[a>>2]|0)+1;a=c[g>>2]|0;i=k;return a|0}c[g>>2]=nl(c[(c[f>>2]|0)+12>>2]|0,c[h>>2]|0,c[l>>2]|0,c[j>>2]|0)|0;if((c[g>>2]|0)!=0){a=c[g>>2]|0;i=k;return a|0}if((c[m>>2]|0)==2){a=c[g>>2]|0;i=k;return a|0}c[g>>2]=nl(c[(c[f>>2]|0)+16>>2]|0,c[h>>2]|0,c[l>>2]|0,c[j>>2]|0)|0;a=c[g>>2]|0;i=k;return a|0}function ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e+12|0;f=e;j=e+4|0;g=e+8|0;c[h>>2]=a;c[f>>2]=b;c[j>>2]=d;c[g>>2]=c[j>>2];c[(c[g>>2]|0)+(c[f>>2]<<4)>>2]=c[h>>2];i=e;return 0}function pl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;e=b+16|0;f=b+8|0;g=b;d=b+12|0;c[e>>2]=a;c[f>>2]=c[(c[e>>2]|0)+8>>2];c[d>>2]=0;h=Kj(c[f>>2]|0,g)|0;c[f>>2]=(c[f>>2]|0)+h;h=g;a=g;if((c[h>>2]|0)==0&(c[h+4>>2]|0)==0|(c[a>>2]|0)==1&(c[a+4>>2]|0)==0){c[f>>2]=0;c[d>>2]=1;g=c[f>>2]|0;h=c[e>>2]|0;h=h+8|0;c[h>>2]=g;h=c[d>>2]|0;i=b;return h|0}else{h=g;h=$K(c[h>>2]|0,c[h+4>>2]|0,2,0)|0;g=(c[e>>2]|0)+12|0;c[g>>2]=(c[g>>2]|0)+h;g=c[f>>2]|0;h=c[e>>2]|0;h=h+8|0;c[h>>2]=g;h=c[d>>2]|0;i=b;return h|0}return 0}function ql(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;k=f+20|0;j=f+4|0;e=f+8|0;g=f+12|0;h=f+16|0;c[k>>2]=a;c[f>>2]=b;c[j>>2]=d;c[e>>2]=0;c[g>>2]=c[(c[k>>2]|0)+20>>2];c[h>>2]=c[j>>2];a=(c[h>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+1;a=(c[h>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+(c[(c[g>>2]|0)+48>>2]|0);i=f;return c[e>>2]|0}function rl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h+20|0;k=h;g=h+8|0;f=h+12|0;j=h+16|0;c[l>>2]=a;a=k;c[a>>2]=b;c[a+4>>2]=d;c[g>>2]=e;c[f>>2]=0;c[j>>2]=$i(c[l>>2]|0,21,f,0)|0;do{if((c[j>>2]|0)==0){l=k;Pe(c[f>>2]|0,1,c[l>>2]|0,c[l+4>>2]|0)|0;c[j>>2]=le(c[f>>2]|0)|0;if((c[j>>2]|0)==100){if((He(c[f>>2]|0,0)|0)==4){c[j>>2]=0;break}}l=Cd(c[f>>2]|0)|0;c[j>>2]=l;c[j>>2]=(c[j>>2]|0)==0?267:l;c[f>>2]=0}}while(0);c[c[g>>2]>>2]=c[f>>2];i=h;return c[j>>2]|0}function sl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=f+12|0;e=f;d=f+4|0;g=f+8|0;c[h>>2]=a;c[e>>2]=b;c[d>>2]=0;c[g>>2]=$i(c[h>>2]|0,22,d,0)|0;do{if((c[g>>2]|0)==0){Oe(c[d>>2]|0,1,0)|0;if((le(c[d>>2]|0)|0)==100){if((He(c[d>>2]|0,0)|0)==4){break}}h=Cd(c[d>>2]|0)|0;c[g>>2]=h;c[g>>2]=(c[g>>2]|0)==0?267:h;c[d>>2]=0}}while(0);c[c[e>>2]>>2]=c[d>>2];i=f;return c[g>>2]|0}function tl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[e>>2]=b;c[f>>2]=d;a=c[f>>2]|0;c[a>>2]=(c[a>>2]|0)+1;i=e;return 0}function ul(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;e=d+8|0;b=d;f=d+4|0;c[e>>2]=a;c[b>>2]=Bf(c[(c[e>>2]|0)+12>>2]|0,7168,0,0,0)|0;do{if((c[b>>2]|0)==0){c[b>>2]=vl(c[e>>2]|0,1)|0;a=c[(c[e>>2]|0)+12>>2]|0;if(!((c[b>>2]|0)==0|(c[b>>2]|0)==101)){Bf(a,7200,0,0,0)|0;Bf(c[(c[e>>2]|0)+12>>2]|0,7184,0,0,0)|0;break}c[f>>2]=Bf(a,7184,0,0,0)|0;if((c[f>>2]|0)!=0){c[b>>2]=c[f>>2]}}}while(0);jk(c[e>>2]|0);i=d;return c[b>>2]|0}function vl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+28|0;j=f;m=f+4|0;e=f+8|0;l=f+12|0;h=f+16|0;k=f+20|0;d=f+24|0;c[g>>2]=a;c[j>>2]=b;c[m>>2]=0;c[l>>2]=0;c[e>>2]=$i(c[g>>2]|0,27,l,0)|0;if((c[e>>2]|0)==0){Oe(c[l>>2]|0,1,c[(c[g>>2]|0)+248>>2]|0)|0;a:while(1){a=(le(c[l>>2]|0)|0)==100;b=c[l>>2]|0;if(!a){break}c[d>>2]=De(b,0)|0;c[k>>2]=0;while(1){if((c[e>>2]|0)!=0){continue a}if((c[k>>2]|0)>=(c[(c[g>>2]|0)+248>>2]|0)){continue a}c[e>>2]=_i(c[g>>2]|0,c[d>>2]|0,c[k>>2]|0,-2)|0;if((c[e>>2]|0)==101){c[m>>2]=1;c[e>>2]=0}c[k>>2]=(c[k>>2]|0)+1}}c[h>>2]=Cd(b)|0;if((c[e>>2]|0)==0){c[e>>2]=c[h>>2]}}jk(c[g>>2]|0);Vi(c[g>>2]|0);if((c[e>>2]|0)==0){if((c[j>>2]|0)!=0){if((c[m>>2]|0)!=0){a=101;i=f;return a|0}}}a=c[e>>2]|0;i=f;return a|0}function wl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=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;g=i;i=i+208|0;A=g+32|0;r=g+132|0;k=g+128|0;h=g+124|0;t=g+120|0;f=g+116|0;y=g+112|0;l=g+108|0;e=g+96|0;s=g;o=g+92|0;u=g+60|0;p=g+64|0;q=g+48|0;C=g+52|0;j=g+56|0;m=g+88|0;n=g+68|0;x=g+72|0;v=g+76|0;w=g+80|0;z=g+84|0;B=g+136|0;c[r>>2]=b;c[k>>2]=d;c[h>>2]=c[c[k>>2]>>2];c[t>>2]=c[c[(c[h>>2]|0)+36>>2]>>2];c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;if((c[(c[k>>2]|0)+12>>2]|0)==0){ce(c[r>>2]|0,1784,0,0);i=g;return}c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;c[s+24>>2]=0;c[s+28>>2]=0;c[f>>2]=pk(c[k>>2]|0,0,y)|0;a:do{if((c[f>>2]|0)==0){c[s+24>>2]=mc((c[y>>2]|0)*12|0)|0;if(0==(c[s+24>>2]|0)){c[f>>2]=7;break}D=(c[k>>2]|0)+32|0;d=c[D+4>>2]|0;b=s+16|0;c[b>>2]=c[D>>2];c[b+4>>2]=d;c[s>>2]=c[k>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[h>>2]|0)+24>>2]|0)){break a}c[p>>2]=0;c[q>>2]=0;c[C>>2]=0;c[j>>2]=0;c[s+4>>2]=c[l>>2];c[s+8>>2]=0;rk(c[(c[k>>2]|0)+12>>2]|0,26,s)|0;c[m>>2]=Fe(c[(c[k>>2]|0)+8>>2]|0,(c[l>>2]|0)+1|0)|0;c[n>>2]=Be(c[(c[k>>2]|0)+8>>2]|0,(c[l>>2]|0)+1|0)|0;if((c[m>>2]|0)==0){if((He(c[(c[k>>2]|0)+8>>2]|0,(c[l>>2]|0)+1|0)|0)!=5){break}}else{c[f>>2]=jl(c[(c[h>>2]|0)+36>>2]|0,c[(c[k>>2]|0)+16>>2]|0,c[m>>2]|0,c[n>>2]|0,o)|0;if((c[f>>2]|0)!=0){break a}c[f>>2]=tb[c[(c[t>>2]|0)+20>>2]&15](c[o>>2]|0,u,p,q,C,j)|0;while(1){if((c[f>>2]|0)!=0){break}c[v>>2]=2147483647;c[w>>2]=0;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[y>>2]|0)){break}c[z>>2]=(c[s+24>>2]|0)+((c[x>>2]|0)*12|0);if((c[c[z>>2]>>2]|0)!=0){if(((c[(c[z>>2]|0)+4>>2]|0)-(c[(c[z>>2]|0)+8>>2]|0)|0)<(c[v>>2]|0)){c[v>>2]=(c[(c[z>>2]|0)+4>>2]|0)-(c[(c[z>>2]|0)+8>>2]|0);c[w>>2]=c[z>>2]}}c[x>>2]=(c[x>>2]|0)+1}if((c[w>>2]|0)==0){c[f>>2]=101;continue}d=c[w>>2]|0;if(0==(254&a[c[c[w>>2]>>2]>>0]|0)){c[d>>2]=0}else{yl(d,(c[w>>2]|0)+4|0)}while(1){if((c[f>>2]|0)!=0){break}if((c[j>>2]|0)>=(c[v>>2]|0)){break}c[f>>2]=tb[c[(c[t>>2]|0)+20>>2]&15](c[o>>2]|0,u,p,q,C,j)|0}if((c[f>>2]|0)==0){d=((c[w>>2]|0)-(c[s+24>>2]|0)|0)/12|0;b=c[q>>2]|0;D=(c[C>>2]|0)-(c[q>>2]|0)|0;c[A>>2]=c[l>>2];c[A+4>>2]=d;c[A+8>>2]=b;c[A+12>>2]=D;yc(64,B,7224,A)|0;c[f>>2]=zl(e,B,-1)|0;continue}if((c[f>>2]|0)!=101){continue}if((c[(c[h>>2]|0)+40>>2]|0)!=0){continue}c[f>>2]=267}if((c[f>>2]|0)==101){c[f>>2]=0}ub[c[(c[t>>2]|0)+16>>2]&63](c[o>>2]|0)|0;if((c[f>>2]|0)!=0){break a}}c[l>>2]=(c[l>>2]|0)+1}c[f>>2]=7}}while(0);oc(c[s+24>>2]|0);jk(c[h>>2]|0);h=c[r>>2]|0;if((c[f>>2]|0)!=0){he(h,c[f>>2]|0);oc(c[e>>2]|0);i=g;return}else{ce(h,c[e>>2]|0,(c[e+4>>2]|0)-1|0,13);i=g;return}}function xl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+48|0;n=j+36|0;o=j+28|0;e=j+24|0;h=j+20|0;g=j+16|0;l=j+8|0;m=j+4|0;f=j;k=j+12|0;c[n>>2]=a;c[j+32>>2]=b;c[o>>2]=d;c[e>>2]=c[o>>2];c[m>>2]=0;c[f>>2]=uk(c[c[e>>2]>>2]|0,c[n>>2]|0,c[(c[e>>2]|0)+4>>2]|0,l)|0;c[h>>2]=c[(c[(c[n>>2]|0)+20>>2]|0)+48>>2];if((c[l>>2]|0)!=0){yl(l,m)}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[h>>2]|0)){break}n=(c[e>>2]|0)+8|0;o=c[n>>2]|0;c[n>>2]=o+1;c[k>>2]=(c[(c[e>>2]|0)+24>>2]|0)+(o*12|0);c[(c[k>>2]|0)+8>>2]=(c[h>>2]|0)-(c[g>>2]|0)-1;c[c[k>>2]>>2]=c[l>>2];c[(c[k>>2]|0)+4>>2]=c[m>>2];c[g>>2]=(c[g>>2]|0)+1}i=j;return c[f>>2]|0}function yl(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+8|0;h=f;g=f+4|0;c[j>>2]=b;c[h>>2]=e;e=c[c[j>>2]>>2]|0;if((a[c[c[j>>2]>>2]>>0]&128|0)!=0){e=Lj(e,g)|0}else{c[g>>2]=d[e>>0]|0;e=1}b=c[j>>2]|0;c[b>>2]=(c[b>>2]|0)+e;b=c[h>>2]|0;c[b>>2]=(c[b>>2]|0)+((c[g>>2]|0)-2);i=f;return}function zl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m+20|0;f=m;k=m+4|0;g=m+8|0;h=m+12|0;j=m+16|0;c[f>>2]=b;c[k>>2]=d;c[g>>2]=e;if((c[g>>2]|0)<0){c[g>>2]=cL(c[k>>2]|0)|0}do{if(((c[(c[f>>2]|0)+4>>2]|0)+(c[g>>2]|0)+1|0)>=(c[(c[f>>2]|0)+8>>2]|0)){c[h>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[g>>2]|0)+100;c[j>>2]=qc(c[c[f>>2]>>2]|0,c[h>>2]|0)|0;if((c[j>>2]|0)!=0){c[c[f>>2]>>2]=c[j>>2];c[(c[f>>2]|0)+8>>2]=c[h>>2];break}c[l>>2]=7;b=c[l>>2]|0;i=m;return b|0}}while(0);fL((c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)|0,c[k>>2]|0,c[g>>2]|0)|0;b=(c[f>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+(c[g>>2]|0);a[(c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)>>0]=0;c[l>>2]=0;b=c[l>>2]|0;i=m;return b|0}function Al(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;l=i;i=i+224|0;n=l+212|0;r=l+208|0;u=l+204|0;v=l+200|0;w=l+196|0;E=l+192|0;F=l+188|0;o=l+184|0;j=l+180|0;p=l+176|0;k=l+164|0;q=l+160|0;s=l+8|0;t=l+148|0;B=l+144|0;y=l;x=l+104|0;A=l+140|0;m=l+156|0;C=l+136|0;D=l+112|0;G=l+152|0;c[n>>2]=a;c[r>>2]=b;c[u>>2]=d;c[v>>2]=e;c[w>>2]=f;c[E>>2]=g;c[F>>2]=h;c[o>>2]=c[c[r>>2]>>2];c[j>>2]=0;c[k+0>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[q>>2]=0;c[t>>2]=-1;if((c[(c[r>>2]|0)+12>>2]|0)==0){ce(c[n>>2]|0,1784,0,0);i=l;return}c[q>>2]=1;a:while(1){h=y;c[h>>2]=0;c[h+4>>2]=0;h=x;c[h>>2]=0;c[h+4>>2]=0;h=c[F>>2]|0;if((c[F>>2]|0)>=0){c[t>>2]=(h+(c[q>>2]|0)-1|0)/(c[q>>2]|0)|0}else{c[t>>2]=$(-1,h)|0}c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[q>>2]|0)){break}c[A>>2]=-1;c[C>>2]=s+((c[B>>2]|0)*24|0);a=c[C>>2]|0;c[a+0>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[o>>2]|0)+24>>2]|0)){break}c[D+0>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;c[D+12>>2]=0;c[D+16>>2]=0;c[D+20>>2]=0;if((c[E>>2]|0)>=0){if((c[m>>2]|0)==(c[E>>2]|0)){z=13}}else{z=13}if((z|0)==13){z=0;a=y;c[j>>2]=Bl(c[t>>2]|0,c[r>>2]|0,c[m>>2]|0,c[a>>2]|0,c[a+4>>2]|0,x,D,G)|0;if((c[j>>2]|0)!=0){break a}if((c[G>>2]|0)>(c[A>>2]|0)){a=c[C>>2]|0;c[a+0>>2]=c[D+0>>2];c[a+4>>2]=c[D+4>>2];c[a+8>>2]=c[D+8>>2];c[a+12>>2]=c[D+12>>2];c[a+16>>2]=c[D+16>>2];c[a+20>>2]=c[D+20>>2];c[A>>2]=c[G>>2]}}c[m>>2]=(c[m>>2]|0)+1}d=(c[C>>2]|0)+8|0;e=y;b=c[e+4>>2]|c[d+4>>2];a=y;c[a>>2]=c[e>>2]|c[d>>2];c[a+4>>2]=b;c[B>>2]=(c[B>>2]|0)+1}b=x;a=y;if((c[b>>2]|0)==(c[a>>2]|0)?(c[b+4>>2]|0)==(c[a+4>>2]|0):0){z=21;break}if((c[q>>2]|0)==4){z=21;break}c[q>>2]=(c[q>>2]|0)+1}b:do{if((z|0)==21){c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[q>>2]|0)){break b}if((c[j>>2]|0)!=0){break b}c[j>>2]=Cl(c[r>>2]|0,s+((c[p>>2]|0)*24|0)|0,c[p>>2]|0,(c[p>>2]|0)==((c[q>>2]|0)-1|0)&1,c[t>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,k)|0;c[p>>2]=(c[p>>2]|0)+1}}}while(0);jk(c[o>>2]|0);m=c[n>>2]|0;if((c[j>>2]|0)!=0){he(m,c[j>>2]|0);oc(c[k>>2]|0);i=l;return}else{ce(m,c[k>>2]|0,-1,13);i=l;return}}function Bl(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;w=i;i=i+112|0;l=w+100|0;C=w+96|0;B=w+92|0;v=w+88|0;q=w;y=w+84|0;k=w+80|0;p=w+76|0;m=w+72|0;z=w+68|0;n=w+40|0;A=w+36|0;o=w+32|0;x=w+28|0;r=w+24|0;s=w+64|0;t=w+16|0;u=w+8|0;c[C>>2]=a;c[B>>2]=b;c[v>>2]=d;a=q;c[a>>2]=e;c[a+4>>2]=f;c[y>>2]=g;c[k>>2]=h;c[p>>2]=j;c[o>>2]=-1;c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[n+16>>2]=0;c[n+20>>2]=0;c[m>>2]=pk(c[B>>2]|0,z,0)|0;if((c[m>>2]|0)!=0){c[l>>2]=c[m>>2];a=c[l>>2]|0;i=w;return a|0}c[A>>2]=(c[z>>2]|0)*24;c[n+16>>2]=mc(c[A>>2]|0)|0;if((c[n+16>>2]|0)==0){c[l>>2]=7;a=c[l>>2]|0;i=w;return a|0}aL(c[n+16>>2]|0,0,c[A>>2]|0)|0;c[n>>2]=c[B>>2];c[n+4>>2]=c[v>>2];c[n+8>>2]=c[C>>2];c[n+12>>2]=c[z>>2];c[n+20>>2]=-1;rk(c[(c[B>>2]|0)+12>>2]|0,27,n)|0;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[z>>2]|0)){break}if((c[(c[n+16>>2]|0)+((c[x>>2]|0)*24|0)+12>>2]|0)!=0){d=bL(1,0,c[x>>2]|0)|0;a=c[y>>2]|0;e=a;b=c[e+4>>2]|D;c[a>>2]=c[e>>2]|d;c[a+4>>2]=b}c[x>>2]=(c[x>>2]|0)+1}c[c[k>>2]>>2]=c[v>>2];while(1){if(!((Fl(n)|0)!=0^1)){break}a=q;Gl(n,c[a>>2]|0,c[a+4>>2]|0,r,s,t,u);if((c[s>>2]|0)<=(c[o>>2]|0)){continue}c[(c[k>>2]|0)+4>>2]=c[r>>2];a=u;b=c[a+4>>2]|0;d=(c[k>>2]|0)+16|0;c[d>>2]=c[a>>2];c[d+4>>2]=b;d=t;b=c[d+4>>2]|0;a=(c[k>>2]|0)+8|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;c[o>>2]=c[s>>2]}oc(c[n+16>>2]|0);c[c[p>>2]>>2]=c[o>>2];c[l>>2]=0;a=c[l>>2]|0;i=w;return a|0}function Cl(a,b,d,e,f,g,h,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;F=i;i=i+128|0;n=F+112|0;I=F+108|0;P=F+104|0;L=F+100|0;o=F+96|0;J=F+92|0;N=F+88|0;p=F+84|0;M=F+80|0;t=F+76|0;H=F+72|0;q=F+68|0;u=F+64|0;l=F+60|0;w=F+56|0;v=F+24|0;E=F+12|0;x=F+8|0;K=F;O=F+16|0;r=F+20|0;s=F+28|0;C=F+32|0;y=F+36|0;z=F+40|0;A=F+44|0;B=F+48|0;G=F+52|0;c[I>>2]=a;c[P>>2]=b;c[L>>2]=d;c[o>>2]=e;c[J>>2]=f;c[N>>2]=g;c[p>>2]=h;c[M>>2]=j;c[t>>2]=k;c[H>>2]=c[c[I>>2]>>2];c[w>>2]=0;c[v>>2]=0;c[E>>2]=0;c[x>>2]=c[(c[P>>2]|0)+4>>2];d=(c[P>>2]|0)+16|0;g=c[d+4>>2]|0;a=K;c[a>>2]=c[d>>2];c[a+4>>2]=g;c[O>>2]=(c[c[P>>2]>>2]|0)+1;c[u>>2]=Fe(c[(c[I>>2]|0)+8>>2]|0,c[O>>2]|0)|0;a=c[(c[I>>2]|0)+8>>2]|0;g=c[O>>2]|0;if((c[u>>2]|0)==0){if((He(a,g)|0)!=5){c[n>>2]=7;P=c[n>>2]|0;i=F;return P|0}else{c[n>>2]=0;P=c[n>>2]|0;i=F;return P|0}}c[l>>2]=Be(a,g)|0;c[r>>2]=c[c[(c[H>>2]|0)+36>>2]>>2];c[q>>2]=jl(c[(c[H>>2]|0)+36>>2]|0,c[(c[I>>2]|0)+16>>2]|0,c[u>>2]|0,c[l>>2]|0,s)|0;if((c[q>>2]|0)!=0){c[n>>2]=c[q>>2];P=c[n>>2]|0;i=F;return P|0}while(1){if((c[q>>2]|0)!=0){break}c[y>>2]=-1;c[z>>2]=0;c[A>>2]=0;c[B>>2]=0;c[q>>2]=tb[c[(c[r>>2]|0)+20>>2]&15](c[s>>2]|0,C,y,z,A,w)|0;if((c[q>>2]|0)!=0){m=9;break}if((c[w>>2]|0)<(c[x>>2]|0)){continue}if((c[E>>2]|0)==0){c[G>>2]=(c[l>>2]|0)-(c[z>>2]|0);c[q>>2]=Dl(c[H>>2]|0,c[(c[I>>2]|0)+16>>2]|0,c[J>>2]|0,(c[u>>2]|0)+(c[z>>2]|0)|0,c[G>>2]|0,x,K)|0;c[E>>2]=1;do{if((c[q>>2]|0)==0){if((c[x>>2]|0)<=0){if((c[L>>2]|0)<=0){break}}c[q>>2]=zl(c[t>>2]|0,c[M>>2]|0,-1)|0}}while(0);if((c[q>>2]|0)!=0){continue}if((c[w>>2]|0)<(c[x>>2]|0)){continue}}if((c[w>>2]|0)>=((c[x>>2]|0)+(c[J>>2]|0)|0)){m=20;break}P=K;d=c[P>>2]|0;P=c[P+4>>2]|0;O=bL(1,0,(c[w>>2]|0)-(c[x>>2]|0)|0)|0;c[B>>2]=((d&O|0)!=0|(P&D|0)!=0)&1;if((c[w>>2]|0)>(c[x>>2]|0)){c[q>>2]=zl(c[t>>2]|0,(c[u>>2]|0)+(c[v>>2]|0)|0,(c[z>>2]|0)-(c[v>>2]|0)|0)|0}if((c[q>>2]|0)==0){if((c[B>>2]|0)!=0){c[q>>2]=zl(c[t>>2]|0,c[N>>2]|0,-1)|0}}if((c[q>>2]|0)==0){c[q>>2]=zl(c[t>>2]|0,(c[u>>2]|0)+(c[z>>2]|0)|0,(c[A>>2]|0)-(c[z>>2]|0)|0)|0}if((c[q>>2]|0)==0){if((c[B>>2]|0)!=0){c[q>>2]=zl(c[t>>2]|0,c[p>>2]|0,-1)|0}}c[v>>2]=c[A>>2]}if((m|0)==9){if((c[q>>2]|0)==101){c[q>>2]=zl(c[t>>2]|0,(c[u>>2]|0)+(c[v>>2]|0)|0,-1)|0}}else if((m|0)==20){if((c[o>>2]|0)!=0){c[q>>2]=zl(c[t>>2]|0,c[M>>2]|0,-1)|0}}ub[c[(c[r>>2]|0)+16>>2]&63](c[s>>2]|0)|0;c[n>>2]=c[q>>2];P=c[n>>2]|0;i=F;return P|0}function Dl(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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,E=0,F=0;k=i;i=i+96|0;j=k+84|0;z=k+80|0;A=k+76|0;q=k+72|0;B=k+68|0;C=k+64|0;l=k+60|0;o=k+56|0;n=k;E=k+52|0;F=k+12|0;v=k+20|0;m=k+8|0;p=k+16|0;r=k+24|0;t=k+28|0;u=k+32|0;y=k+36|0;w=k+40|0;x=k+44|0;s=k+48|0;c[z>>2]=a;c[A>>2]=b;c[q>>2]=d;c[B>>2]=e;c[C>>2]=f;c[l>>2]=g;c[o>>2]=h;d=c[o>>2]|0;b=c[d+4>>2]|0;a=n;c[a>>2]=c[d>>2];c[a+4>>2]=b;a=n;do{if((c[a>>2]|0)!=0|(c[a+4>>2]|0)!=0){c[E>>2]=0;while(1){a=n;d=c[a>>2]|0;a=c[a+4>>2]|0;b=bL(1,0,c[E>>2]|0)|0;if(!(((d&b|0)!=0|(a&D|0)!=0)^1)){break}c[E>>2]=(c[E>>2]|0)+1}c[F>>2]=0;while(1){a=n;d=c[a>>2]|0;a=c[a+4>>2]|0;b=bL(1,0,(c[q>>2]|0)-1-(c[F>>2]|0)|0)|0;if(!(((d&b|0)!=0|(a&D|0)!=0)^1)){break}c[F>>2]=(c[F>>2]|0)+1}c[v>>2]=((c[E>>2]|0)-(c[F>>2]|0)|0)/2|0;if((c[v>>2]|0)>0){c[p>>2]=0;c[t>>2]=c[c[(c[z>>2]|0)+36>>2]>>2];c[r>>2]=jl(c[(c[z>>2]|0)+36>>2]|0,c[A>>2]|0,c[B>>2]|0,c[C>>2]|0,u)|0;if((c[r>>2]|0)!=0){c[j>>2]=c[r>>2];a=c[j>>2]|0;i=k;return a|0}while(1){if((c[r>>2]|0)!=0){break}if((c[p>>2]|0)>=((c[q>>2]|0)+(c[v>>2]|0)|0)){break}c[w>>2]=0;c[x>>2]=0;c[s>>2]=0;c[r>>2]=tb[c[(c[t>>2]|0)+20>>2]&15](c[u>>2]|0,y,w,x,s,p)|0}ub[c[(c[t>>2]|0)+16>>2]&63](c[u>>2]|0)|0;s=c[r>>2]|0;if((c[r>>2]|0)!=0&(c[r>>2]|0)!=101){c[j>>2]=s;a=c[j>>2]|0;i=k;return a|0}else{c[m>>2]=((s|0)==101&1)+(c[p>>2]|0)-(c[q>>2]|0);if((c[m>>2]|0)<=0){break}b=c[l>>2]|0;c[b>>2]=(c[b>>2]|0)+(c[m>>2]|0);b=n;b=eL(c[b>>2]|0,c[b+4>>2]|0,c[m>>2]|0)|0;a=c[o>>2]|0;c[a>>2]=b;c[a+4>>2]=D;break}}}}while(0);c[j>>2]=0;a=c[j>>2]|0;i=k;return a|0}function El(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;l=e+28|0;m=e;n=e+4|0;k=e+8|0;j=e+12|0;h=e+16|0;f=e+20|0;g=e+24|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[k>>2]=c[n>>2];c[j>>2]=(c[(c[k>>2]|0)+16>>2]|0)+((c[m>>2]|0)*24|0);c[c[j>>2]>>2]=c[(c[(c[l>>2]|0)+20>>2]|0)+48>>2];c[f>>2]=uk(c[c[k>>2]>>2]|0,c[l>>2]|0,c[(c[k>>2]|0)+4>>2]|0,h)|0;if((c[h>>2]|0)==0){n=c[f>>2]|0;i=e;return n|0}c[g>>2]=0;c[(c[j>>2]|0)+4>>2]=c[h>>2];yl(h,g);c[(c[j>>2]|0)+12>>2]=c[h>>2];c[(c[j>>2]|0)+20>>2]=c[h>>2];c[(c[j>>2]|0)+8>>2]=c[g>>2];c[(c[j>>2]|0)+16>>2]=c[g>>2];n=c[f>>2]|0;i=e;return n|0}function Fl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;b=d+28|0;f=d;e=d+4|0;g=d+8|0;k=d+12|0;j=d+16|0;l=d+20|0;h=d+24|0;c[f>>2]=a;a:do{if((c[(c[f>>2]|0)+20>>2]|0)<0){c[(c[f>>2]|0)+20>>2]=0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+12>>2]|0)){break a}c[g>>2]=(c[(c[f>>2]|0)+16>>2]|0)+((c[e>>2]|0)*24|0);Hl((c[g>>2]|0)+12|0,(c[g>>2]|0)+8|0,c[(c[f>>2]|0)+8>>2]|0);c[e>>2]=(c[e>>2]|0)+1}}else{c[j>>2]=2147483647;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+12>>2]|0)){break}c[l>>2]=(c[(c[f>>2]|0)+16>>2]|0)+((c[e>>2]|0)*24|0);if((c[(c[l>>2]|0)+12>>2]|0)!=0){if((c[(c[l>>2]|0)+8>>2]|0)<(c[j>>2]|0)){c[j>>2]=c[(c[l>>2]|0)+8>>2]}}c[e>>2]=(c[e>>2]|0)+1}if((c[j>>2]|0)==2147483647){c[b>>2]=1;l=c[b>>2]|0;i=d;return l|0}l=(c[j>>2]|0)-(c[(c[f>>2]|0)+8>>2]|0)+1|0;c[k>>2]=l;c[(c[f>>2]|0)+20>>2]=l;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+12>>2]|0)){break a}c[h>>2]=(c[(c[f>>2]|0)+16>>2]|0)+((c[e>>2]|0)*24|0);Hl((c[h>>2]|0)+12|0,(c[h>>2]|0)+8|0,(c[j>>2]|0)+1|0);Hl((c[h>>2]|0)+20|0,(c[h>>2]|0)+16|0,c[k>>2]|0);c[e>>2]=(c[e>>2]|0)+1}}}while(0);c[b>>2]=0;l=c[b>>2]|0;i=d;return l|0}function Gl(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;s=i;i=i+96|0;l=s+84|0;A=s+32|0;t=s+80|0;n=s+76|0;p=s+72|0;r=s+68|0;w=s+64|0;m=s+60|0;x=s+48|0;o=s+8|0;q=s;k=s+40|0;u=s+52|0;v=s+44|0;B=s+56|0;y=s+24|0;z=s+16|0;c[l>>2]=b;b=A;c[b>>2]=d;c[b+4>>2]=e;c[t>>2]=f;c[n>>2]=g;c[p>>2]=h;c[r>>2]=j;c[w>>2]=c[(c[l>>2]|0)+20>>2];c[m>>2]=0;b=o;c[b>>2]=0;c[b+4>>2]=0;b=q;c[b>>2]=0;c[b+4>>2]=0;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0)){break}c[k>>2]=(c[(c[l>>2]|0)+16>>2]|0)+((c[x>>2]|0)*24|0);a:do{if((c[(c[k>>2]|0)+20>>2]|0)!=0){c[u>>2]=c[(c[k>>2]|0)+20>>2];c[v>>2]=c[(c[k>>2]|0)+16>>2];while(1){if((c[v>>2]|0)>=((c[w>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0)|0)){break a}e=bL(1,0,c[x>>2]|0)|0;d=y;c[d>>2]=e;c[d+4>>2]=D;d=bL(1,0,(c[v>>2]|0)-(c[w>>2]|0)|0)|0;e=z;c[e>>2]=d;c[e+4>>2]=D;e=o;d=A;b=y;j=c[m>>2]|0;if(((c[e>>2]|c[d>>2])&c[b>>2]|0)!=0?1:((c[e+4>>2]|c[d+4>>2])&c[b+4>>2]|0)!=0){c[m>>2]=j+1}else{c[m>>2]=j+1e3}e=y;f=o;d=c[f+4>>2]|c[e+4>>2];b=o;c[b>>2]=c[f>>2]|c[e>>2];c[b+4>>2]=d;c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[c[k>>2]>>2]|0)){break}e=z;e=eL(c[e>>2]|0,c[e+4>>2]|0,c[B>>2]|0)|0;f=q;d=c[f+4>>2]|D;b=q;c[b>>2]=c[f>>2]|e;c[b+4>>2]=d;c[B>>2]=(c[B>>2]|0)+1}if(0==(a[c[u>>2]>>0]&254|0)){break a}yl(u,v)}}}while(0);c[x>>2]=(c[x>>2]|0)+1}c[c[t>>2]>>2]=c[w>>2];c[c[n>>2]>>2]=c[m>>2];b=o;d=c[b+4>>2]|0;e=c[p>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=d;e=q;d=c[e+4>>2]|0;b=c[r>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;i=s;return}function Hl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;l=g+16|0;j=g;m=g+4|0;k=g+8|0;h=g+12|0;c[l>>2]=b;c[j>>2]=d;c[m>>2]=e;c[k>>2]=c[c[l>>2]>>2];if((c[k>>2]|0)==0){i=g;return}c[h>>2]=c[c[j>>2]>>2];while(1){if((c[h>>2]|0)>=(c[m>>2]|0)){break}if(0==(a[c[k>>2]>>0]&254|0)){f=5;break}yl(k,h)}if((f|0)==5){c[h>>2]=-1;c[k>>2]=0}c[c[j>>2]>>2]=c[h>>2];c[c[l>>2]>>2]=c[k>>2];i=g;return}function Il(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;j=d+16|0;f=d;e=d+4|0;g=d+8|0;h=d+12|0;c[j>>2]=a;c[f>>2]=b;c[g>>2]=0;c[h>>2]=0;c[e>>2]=$i(c[j>>2]|0,36,h,0)|0;if((c[e>>2]|0)!=0){a=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=a;j=c[e>>2]|0;i=d;return j|0}if(100==(le(c[h>>2]|0)|0)){c[g>>2]=De(c[h>>2]|0,0)|0}c[e>>2]=Cd(c[h>>2]|0)|0;a=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=a;j=c[e>>2]|0;i=d;return j|0}function Jl(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=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,E=0,F=0,G=0;t=i;i=i+128|0;h=t+112|0;r=t+108|0;G=t+104|0;A=t+100|0;j=t+96|0;B=t+92|0;n=t+88|0;f=t+84|0;k=t+80|0;o=t+76|0;q=t;l=t+64|0;m=t+60|0;F=t+32|0;x=t+8|0;z=t+24|0;p=t+28|0;s=t+36|0;u=t+40|0;v=t+16|0;w=t+44|0;y=t+48|0;C=t+52|0;E=t+56|0;c[r>>2]=a;c[G>>2]=b;c[A>>2]=e;c[B>>2]=c[G>>2];c[o>>2]=0;a=q;c[a>>2]=0;c[a+4>>2]=0;c[l+0>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[m>>2]=0;c[F>>2]=640;c[k>>2]=mc(640)|0;if((c[k>>2]|0)==0){c[h>>2]=7;G=c[h>>2]|0;i=t;return G|0}c[f>>2]=(c[k>>2]|0)+568;c[n>>2]=(c[f>>2]|0)+16;c[j>>2]=Kl(c[r>>2]|0,l)|0;while(1){if((c[j>>2]|0)!=0){break}if((c[B>>2]|0)<=0){break}F=c[(c[r>>2]|0)+248>>2]<<10;G=x;c[G>>2]=F;c[G+4>>2]=((F|0)<0)<<31>>31;c[z>>2]=0;c[p>>2]=0;c[s>>2]=0;c[j>>2]=$i(c[r>>2]|0,28,z,0)|0;Oe(c[z>>2]|0,1,c[A>>2]|0)|0;if((le(c[z>>2]|0)|0)==100){F=Ee(c[z>>2]|0,0)|0;G=q;c[G>>2]=F;c[G+4>>2]=D;c[o>>2]=c[A>>2]}else{c[o>>2]=-1}c[j>>2]=Cd(c[z>>2]|0)|0;do{if((c[j>>2]|0)==0){if((c[l+4>>2]|0)!=0){c[u>>2]=c[l+4>>2];G=v;c[G>>2]=0;c[G+4>>2]=0;c[w>>2]=0;c[j>>2]=Ll(l,v,w)|0;if((c[o>>2]|0)>=0){b=q;F=x;F=mL(c[b>>2]|0,c[b+4>>2]|0,c[F>>2]|0,c[F+4>>2]|0)|0;b=D;a=v;G=x;G=mL(c[a>>2]|0,c[a+4>>2]|0,c[G>>2]|0,c[G+4>>2]|0)|0;a=D;if(!((b|0)>(a|0)|(b|0)==(a|0)&F>>>0>=G>>>0)){c[l+4>>2]=c[u>>2];break}}a=v;F=c[a+4>>2]|0;G=q;c[G>>2]=c[a>>2];c[G+4>>2]=F;c[o>>2]=c[w>>2];c[p>>2]=1;c[m>>2]=1}}}while(0);if((c[o>>2]|0)<0){break}aL(c[k>>2]|0,0,640)|0;c[(c[f>>2]|0)+12>>2]=1;do{if((c[j>>2]|0)==0){G=q;c[j>>2]=Ml(c[r>>2]|0,c[G>>2]|0,c[G+4>>2]|0,s)|0;if((c[s>>2]|0)!=0){if((c[p>>2]|0)==0){break}if((c[s>>2]|0)!=1){break}}c[y>>2]=0;F=c[r>>2]|0;G=q;G=dL(c[G>>2]|0,c[G+4>>2]|0,1,0)|0;c[j>>2]=Nl(F,G,D,y)|0;if((c[y>>2]|0)!=0){G=(c[f>>2]|0)+12|0;c[G>>2]=c[G>>2]|2}}}while(0);if((c[j>>2]|0)==0){G=q;c[j>>2]=Ol(c[r>>2]|0,c[G>>2]|0,c[G+4>>2]|0,c[o>>2]|0,c[n>>2]|0)|0}if(0==(c[j>>2]|0)){if((c[(c[n>>2]|0)+4>>2]|0)==(c[o>>2]|0)){G=ej(c[r>>2]|0,c[n>>2]|0,c[f>>2]|0)|0;c[j>>2]=G;if(0==(G|0)){G=fj(c[r>>2]|0,c[n>>2]|0)|0;c[j>>2]=G;if(100==(G|0)){if((c[p>>2]|0)!=0){if((c[s>>2]|0)>0){c[C>>2]=c[(c[n>>2]|0)+40>>2];c[E>>2]=c[(c[n>>2]|0)+44>>2];G=q;c[j>>2]=Pl(c[r>>2]|0,c[G>>2]|0,c[G+4>>2]|0,(c[s>>2]|0)-1|0,c[C>>2]|0,c[E>>2]|0,c[k>>2]|0)|0}else{g=31}}else{g=31}if((g|0)==31){g=0;G=q;c[j>>2]=Ql(c[r>>2]|0,c[G>>2]|0,c[G+4>>2]|0,c[s>>2]|0,c[n>>2]|0,c[k>>2]|0)|0}if((c[j>>2]|0)==0){if((c[c[k>>2]>>2]|0)!=0){do{c[j>>2]=Rl(c[r>>2]|0,c[k>>2]|0,c[n>>2]|0)|0;if((c[j>>2]|0)==0){c[j>>2]=fj(c[r>>2]|0,c[n>>2]|0)|0}do{if((c[(c[k>>2]|0)+4>>2]|0)>=(c[B>>2]|0)){if((c[j>>2]|0)!=100){break}c[j>>2]=0}}while(0)}while((c[j>>2]|0)==100);if((c[j>>2]|0)==0){c[B>>2]=(c[B>>2]|0)-(1+(c[(c[k>>2]|0)+4>>2]|0));G=q;c[j>>2]=Sl(c[r>>2]|0,c[G>>2]|0,c[G+4>>2]|0,c[n>>2]|0,o)|0;if((c[o>>2]|0)!=0){c[m>>2]=1;G=q;Tl(l,c[G>>2]|0,c[G+4>>2]|0,c[o>>2]|0,j)}}}}if((c[o>>2]|0)!=0){F=(c[k>>2]|0)+40|0;F=nL(c[F>>2]|0,c[F+4>>2]|0,-1,-1)|0;G=(c[k>>2]|0)+40|0;c[G>>2]=F;c[G+4>>2]=D}Ul(c[r>>2]|0,c[k>>2]|0,j);if((c[o>>2]|0)==0){if((d[(c[k>>2]|0)+48>>0]|0|0)==0){a=c[r>>2]|0;F=q;F=dL(c[F>>2]|0,c[F+4>>2]|0,1,0)|0;G=(c[k>>2]|0)+40|0;jj(a,F,D,c[G>>2]|0,c[G+4>>2]|0)|0}}}}}}lj(c[n>>2]|0)}if((c[m>>2]|0)!=0){if((c[j>>2]|0)==0){c[j>>2]=Vl(c[r>>2]|0,l)|0}}oc(c[k>>2]|0);oc(c[l>>2]|0);c[h>>2]=c[j>>2];G=c[h>>2]|0;i=t;return G|0}function Kl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;l=d+24|0;h=d;f=d+4|0;e=d+8|0;g=d+12|0;j=d+16|0;k=d+20|0;c[l>>2]=a;c[h>>2]=b;c[f>>2]=0;c[(c[h>>2]|0)+4>>2]=0;c[e>>2]=$i(c[l>>2]|0,22,f,0)|0;if((c[e>>2]|0)!=0){l=c[e>>2]|0;i=d;return l|0}Oe(c[f>>2]|0,1,1)|0;if(100==(le(c[f>>2]|0)|0)){c[j>>2]=ye(c[f>>2]|0,0)|0;c[k>>2]=Be(c[f>>2]|0,0)|0;if((c[j>>2]|0)!=0){Wl(c[h>>2]|0,c[k>>2]|0,e);if((c[e>>2]|0)==0){fL(c[c[h>>2]>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;c[(c[h>>2]|0)+4>>2]=c[k>>2]}}}c[g>>2]=Cd(c[f>>2]|0)|0;if((c[e>>2]|0)!=0){l=c[e>>2]|0;i=d;return l|0}c[e>>2]=c[g>>2];l=c[e>>2]|0;i=d;return l|0}function Ll(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;k=g+20|0;m=g;n=g+4|0;l=g+8|0;j=g+12|0;h=g+16|0;c[m>>2]=b;c[n>>2]=e;c[l>>2]=f;c[j>>2]=c[(c[m>>2]|0)+4>>2];c[h>>2]=(c[(c[m>>2]|0)+4>>2]|0)-2;while(1){if((c[h>>2]|0)<=0){break}if((a[(c[c[m>>2]>>2]|0)+((c[h>>2]|0)-1)>>0]&128|0)==0){break}c[h>>2]=(c[h>>2]|0)+ -1}while(1){if((c[h>>2]|0)>0){e=(a[(c[c[m>>2]>>2]|0)+((c[h>>2]|0)-1)>>0]&128|0)!=0}else{e=0}f=c[h>>2]|0;if(!e){break}c[h>>2]=f+ -1}c[(c[m>>2]|0)+4>>2]=f;n=Kj((c[c[m>>2]>>2]|0)+(c[h>>2]|0)|0,c[n>>2]|0)|0;c[h>>2]=(c[h>>2]|0)+n;n=(c[c[m>>2]>>2]|0)+(c[h>>2]|0)|0;if((a[(c[c[m>>2]>>2]|0)+(c[h>>2]|0)>>0]&128|0)!=0){l=Lj(n,c[l>>2]|0)|0}else{c[c[l>>2]>>2]=d[n>>0]|0;l=1}c[h>>2]=(c[h>>2]|0)+l;if((c[h>>2]|0)!=(c[j>>2]|0)){c[k>>2]=267;b=c[k>>2]|0;i=g;return b|0}else{c[k>>2]=0;b=c[k>>2]|0;i=g;return b|0}return 0}function Ml(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+20|0;j=f;k=f+8|0;g=f+12|0;h=f+16|0;c[l>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;c[k>>2]=e;c[h>>2]=0;c[g>>2]=$i(c[l>>2]|0,8,h,0)|0;if((c[g>>2]|0)!=0){l=c[g>>2]|0;i=f;return l|0}a=c[h>>2]|0;l=j;l=dL(c[l>>2]|0,c[l+4>>2]|0,1,0)|0;Pe(a,1,l,D)|0;le(c[h>>2]|0)|0;l=De(c[h>>2]|0,0)|0;c[c[k>>2]>>2]=l;c[g>>2]=Cd(c[h>>2]|0)|0;l=c[g>>2]|0;i=f;return l|0}function Nl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+24|0;m=f+8|0;l=f;k=f+12|0;j=f+16|0;h=f+20|0;c[m>>2]=a;a=l;c[a>>2]=b;c[a+4>>2]=d;c[k>>2]=e;c[h>>2]=$i(c[m>>2]|0,15,j,0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];m=c[g>>2]|0;i=f;return m|0}m=c[j>>2]|0;a=l;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;Pe(m,1,a,D)|0;a=c[j>>2]|0;m=l;m=lL(c[m>>2]|0,c[m+4>>2]|0,1024,0)|0;m=dL(m|0,D|0,1,0)|0;m=nL(m|0,D|0,1024,0)|0;Pe(a,2,m,D)|0;c[c[k>>2]>>2]=0;if(100==(le(c[j>>2]|0)|0)){m=(He(c[j>>2]|0,0)|0)==5&1;c[c[k>>2]>>2]=m}c[g>>2]=Cd(c[j>>2]|0)|0;m=c[g>>2]|0;i=f;return m|0}function Ol(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;l=n+36|0;g=n;o=n+32|0;j=n+28|0;k=n+16|0;m=n+20|0;h=n+12|0;p=n+8|0;q=n+24|0;c[l>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;c[o>>2]=e;c[j>>2]=f;c[m>>2]=0;e=(c[j>>2]|0)+0|0;f=e+56|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));c[h>>2]=c[o>>2]<<2;a=mc(c[h>>2]|0)|0;c[c[j>>2]>>2]=a;if((c[c[j>>2]>>2]|0)==0){c[k>>2]=7}else{aL(c[c[j>>2]>>2]|0,0,c[h>>2]|0)|0;c[k>>2]=$i(c[l>>2]|0,12,m,0)|0}if((c[k>>2]|0)!=0){a=c[k>>2]|0;i=n;return a|0}a=g;Pe(c[m>>2]|0,1,c[a>>2]|0,c[a+4>>2]|0)|0;c[p>>2]=0;while(1){if((c[k>>2]|0)!=0){break}if((le(c[m>>2]|0)|0)!=100){break}if((c[p>>2]|0)>=(c[o>>2]|0)){break}r=c[p>>2]|0;g=Ee(c[m>>2]|0,1)|0;h=D;l=Ee(c[m>>2]|0,2)|0;f=D;e=Ee(c[m>>2]|0,3)|0;d=D;b=ye(c[m>>2]|0,4)|0;a=Be(c[m>>2]|0,4)|0;c[k>>2]=_j(r,0,g,h,l,f,e,d,b,a,(c[c[j>>2]>>2]|0)+(c[p>>2]<<2)|0)|0;a=(c[j>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+1}c[q>>2]=Cd(c[m>>2]|0)|0;if((c[k>>2]|0)!=0){r=c[k>>2]|0;i=n;return r|0}c[k>>2]=c[q>>2];r=c[k>>2]|0;i=n;return r|0}function Pl(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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,E=0,F=0,G=0,H=0,I=0,J=0,K=0;u=i;i=i+208|0;t=u+200|0;s=u+196|0;J=u+8|0;A=u+192|0;F=u+188|0;G=u+184|0;n=u+180|0;m=u+176|0;r=u+172|0;I=u+64|0;K=u;z=u+120|0;w=u+128|0;x=u+136|0;q=u+140|0;B=u+144|0;C=u+148|0;H=u+132|0;E=u+72|0;o=u+152|0;y=u+156|0;p=u+160|0;k=u+16|0;v=u+164|0;l=u+168|0;c[s>>2]=b;b=J;c[b>>2]=d;c[b+4>>2]=e;c[A>>2]=f;c[F>>2]=g;c[G>>2]=h;c[n>>2]=j;c[r>>2]=0;c[m>>2]=$i(c[s>>2]|0,32,r,0)|0;if((c[m>>2]|0)==0){j=I;c[j>>2]=0;c[j+4>>2]=0;j=K;c[j>>2]=0;c[j+4>>2]=0;j=z;c[j>>2]=0;c[j+4>>2]=0;c[w>>2]=0;c[x>>2]=0;c[B>>2]=0;j=c[r>>2]|0;b=J;b=dL(c[b>>2]|0,c[b+4>>2]|0,1,0)|0;Pe(j,1,b,D)|0;Oe(c[r>>2]|0,2,c[A>>2]|0)|0;b=(le(c[r>>2]|0)|0)==100;j=c[r>>2]|0;if(!b){c[t>>2]=Cd(j)|0;b=c[t>>2]|0;i=u;return b|0}b=Ee(j,1)|0;d=I;c[d>>2]=b;c[d+4>>2]=D;d=Ee(c[r>>2]|0,2)|0;b=K;c[b>>2]=d;c[b+4>>2]=D;oj(c[r>>2]|0,3,z,(c[n>>2]|0)+40|0);if((c[(c[n>>2]|0)+44>>2]|0)<0){d=(c[n>>2]|0)+40|0;d=nL(c[d>>2]|0,c[d+4>>2]|0,-1,-1)|0;b=(c[n>>2]|0)+40|0;c[b>>2]=d;c[b+4>>2]=D}b=(c[n>>2]|0)+40|0;a[(c[n>>2]|0)+48>>0]=(c[b>>2]|0)==0&(c[b+4>>2]|0)==0&1;c[x>>2]=Be(c[r>>2]|0,4)|0;c[w>>2]=ye(c[r>>2]|0,4)|0;b=z;c[m>>2]=gm(c[s>>2]|0,c[b>>2]|0,c[b+4>>2]|0,B)|0;if((c[m>>2]|0)==0){if((c[B>>2]|0)!=0){c[C>>2]=0;c[H>>2]=0;b=K;c[m>>2]=Sj(c[s>>2]|0,c[b>>2]|0,c[b+4>>2]|0,C,H,0)|0;if((c[m>>2]|0)==0){c[m>>2]=$l(E,c[C>>2]|0,c[H>>2]|0)|0;while(1){if((c[m>>2]|0)!=0){break}if((c[E>>2]|0)==0){break}c[m>>2]=dm(E)|0}if((am(c[F>>2]|0,c[G>>2]|0,c[E+24>>2]|0,c[E+28>>2]|0)|0)<=0){c[B>>2]=0}em(E)}oc(c[C>>2]|0)}}a:do{if((c[m>>2]|0)==0){if((c[B>>2]|0)!=0){c[y>>2]=a[c[w>>2]>>0]|0;d=z;e=I;e=$K(c[d>>2]|0,c[d+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;e=dL(e|0,D|0,1,0)|0;c[c[n>>2]>>2]=(e|0)/16|0;e=I;d=c[e+4>>2]|0;b=(c[n>>2]|0)+24|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;b=z;d=c[b+4>>2]|0;e=(c[n>>2]|0)+32|0;c[e>>2]=c[b>>2];c[e+4>>2]=d;e=J;d=c[e+4>>2]|0;b=(c[n>>2]|0)+8|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;c[(c[n>>2]|0)+16>>2]=c[A>>2];c[o>>2]=(c[y>>2]|0)+1;while(1){if((c[o>>2]|0)>=16){break}b=(c[n>>2]|0)+24|0;d=$(c[o>>2]|0,c[c[n>>2]>>2]|0)|0;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,((d|0)<0)<<31>>31|0)|0;b=(c[n>>2]|0)+56+(c[o>>2]<<5)|0;c[b>>2]=d;c[b+4>>2]=D;c[o>>2]=(c[o>>2]|0)+1}c[p>>2]=(c[n>>2]|0)+56+(c[y>>2]<<5);b=(c[n>>2]|0)+24|0;d=$(c[c[n>>2]>>2]|0,c[y>>2]|0)|0;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,((d|0)<0)<<31>>31|0)|0;b=c[p>>2]|0;c[b>>2]=d;c[b+4>>2]=D;if((c[x>>2]|0)>(c[(c[s>>2]|0)+224>>2]|0)){z=c[x>>2]|0}else{z=c[(c[s>>2]|0)+224>>2]|0}Wl((c[p>>2]|0)+20|0,z,m);if((c[m>>2]|0)==0){fL(c[(c[p>>2]|0)+20>>2]|0,c[w>>2]|0,c[x>>2]|0)|0;c[(c[p>>2]|0)+24>>2]=c[x>>2]}c[o>>2]=c[y>>2];while(1){if((c[o>>2]|0)<0){break a}if((c[m>>2]|0)!=0){break a}c[p>>2]=(c[n>>2]|0)+56+(c[o>>2]<<5);c[m>>2]=$l(k,c[(c[p>>2]|0)+20>>2]|0,c[(c[p>>2]|0)+24>>2]|0)|0;while(1){if((c[k>>2]|0)==0){break}if((c[m>>2]|0)!=0){break}c[m>>2]=dm(k)|0}Wl((c[p>>2]|0)+8|0,c[k+28>>2]|0,m);if((c[m>>2]|0)==0){fL(c[(c[p>>2]|0)+8>>2]|0,c[k+24>>2]|0,c[k+28>>2]|0)|0;c[(c[p>>2]|0)+12>>2]=c[k+28>>2];if((c[o>>2]|0)>0){c[v>>2]=0;c[l>>2]=0;c[p>>2]=(c[n>>2]|0)+56+((c[o>>2]|0)-1<<5);e=k+16|0;d=c[e+4>>2]|0;b=c[p>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=d;b=k+16|0;c[m>>2]=Sj(c[s>>2]|0,c[b>>2]|0,c[b+4>>2]|0,v,l,0)|0;if((c[l>>2]|0)>(c[(c[s>>2]|0)+224>>2]|0)){w=c[l>>2]|0}else{w=c[(c[s>>2]|0)+224>>2]|0}Wl((c[p>>2]|0)+20|0,w,m);if((c[m>>2]|0)==0){fL(c[(c[p>>2]|0)+20>>2]|0,c[v>>2]|0,c[l>>2]|0)|0;c[(c[p>>2]|0)+24>>2]=c[l>>2]}oc(c[v>>2]|0)}}em(k);c[o>>2]=(c[o>>2]|0)+ -1}}}}while(0);c[q>>2]=Cd(c[r>>2]|0)|0;if((c[m>>2]|0)==0){c[m>>2]=c[q>>2]}}c[t>>2]=c[m>>2];b=c[t>>2]|0;i=u;return b|0}function Ql(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+48|0;j=k+44|0;m=k+40|0;p=k;h=k+36|0;t=k+32|0;l=k+20|0;q=k+24|0;r=k+16|0;o=k+12|0;s=k+8|0;n=k+28|0;c[m>>2]=a;a=p;c[a>>2]=b;c[a+4>>2]=d;c[h>>2]=e;c[t>>2]=f;c[l>>2]=g;c[o>>2]=0;c[s>>2]=0;c[n>>2]=0;c[q>>2]=$i(c[m>>2]|0,29,s,0)|0;if((c[q>>2]|0)==0){a=p;Pe(c[s>>2]|0,1,c[a>>2]|0,c[a+4>>2]|0)|0;a=c[(c[t>>2]|0)+4>>2]|0;Pe(c[s>>2]|0,2,a,((a|0)<0)<<31>>31)|0;if(100==(le(c[s>>2]|0)|0)){c[o>>2]=De(c[s>>2]|0,0)|0}c[q>>2]=Cd(c[s>>2]|0)|0}if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];a=c[j>>2]|0;i=k;return a|0}c[q>>2]=$i(c[m>>2]|0,10,n,0)|0;if((c[q>>2]|0)==0){if(100==(le(c[n>>2]|0)|0)){b=Ee(c[n>>2]|0,0)|0;a=(c[l>>2]|0)+24|0;c[a>>2]=b;c[a+4>>2]=D;a=(c[l>>2]|0)+24|0;a=$K(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;b=(c[l>>2]|0)+32|0;c[b>>2]=a;c[b+4>>2]=D;b=c[o>>2]<<4;a=(c[l>>2]|0)+32|0;d=a;b=dL(c[d>>2]|0,c[d+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[a>>2]=b;c[a+4>>2]=D}c[q>>2]=Cd(c[n>>2]|0)|0}if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];a=c[j>>2]|0;i=k;return a|0}a=(c[l>>2]|0)+32|0;c[q>>2]=pj(c[m>>2]|0,c[a>>2]|0,c[a+4>>2]|0,0,0)|0;if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];a=c[j>>2]|0;i=k;return a|0}d=p;b=c[d+4>>2]|0;a=(c[l>>2]|0)+8|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;c[c[l>>2]>>2]=c[o>>2];c[(c[l>>2]|0)+16>>2]=c[h>>2];c[r>>2]=0;while(1){if((c[r>>2]|0)>=16){break}a=(c[l>>2]|0)+24|0;b=$(c[r>>2]|0,c[c[l>>2]>>2]|0)|0;b=dL(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=(c[l>>2]|0)+56+(c[r>>2]<<5)|0;c[a>>2]=b;c[a+4>>2]=D;c[r>>2]=(c[r>>2]|0)+1}c[j>>2]=0;a=c[j>>2]|0;i=k;return a|0}function Rl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+48|0;q=g+44|0;o=g+40|0;s=g+36|0;j=g+32|0;k=g+28|0;l=g+24|0;f=g+20|0;m=g+12|0;n=g+8|0;r=g+4|0;p=g;h=g+16|0;c[q>>2]=b;c[o>>2]=d;c[s>>2]=e;c[j>>2]=c[(c[s>>2]|0)+40>>2];c[k>>2]=c[(c[s>>2]|0)+44>>2];c[l>>2]=c[(c[s>>2]|0)+48>>2];c[f>>2]=c[(c[s>>2]|0)+52>>2];c[m>>2]=0;c[h>>2]=(c[o>>2]|0)+56;c[r>>2]=wj(c[(c[h>>2]|0)+8>>2]|0,c[(c[h>>2]|0)+12>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;c[p>>2]=(c[k>>2]|0)-(c[r>>2]|0);b=c[r>>2]|0;c[n>>2]=tj(b,((b|0)<0)<<31>>31)|0;b=c[p>>2]|0;b=tj(b,((b|0)<0)<<31>>31)|0;c[n>>2]=(c[n>>2]|0)+(b+(c[p>>2]|0));b=c[f>>2]|0;b=tj(b,((b|0)<0)<<31>>31)|0;c[n>>2]=(c[n>>2]|0)+(b+(c[f>>2]|0));if((c[(c[h>>2]|0)+24>>2]|0)>0){if(((c[(c[h>>2]|0)+24>>2]|0)+(c[n>>2]|0)|0)>(c[(c[q>>2]|0)+224>>2]|0)){s=c[h>>2]|0;c[m>>2]=pj(c[q>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[(c[h>>2]|0)+20>>2]|0,c[(c[h>>2]|0)+24>>2]|0)|0;s=(c[o>>2]|0)+4|0;c[s>>2]=(c[s>>2]|0)+1;if((c[m>>2]|0)==0){c[m>>2]=fm(c[q>>2]|0,c[o>>2]|0,c[j>>2]|0,(c[r>>2]|0)+1|0)|0}s=c[h>>2]|0;b=s;b=dL(c[b>>2]|0,c[b+4>>2]|0,1,0)|0;c[s>>2]=b;c[s+4>>2]=D;c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+24>>2]=0;c[p>>2]=c[k>>2];c[n>>2]=1;s=c[p>>2]|0;s=tj(s,((s|0)<0)<<31>>31)|0;c[n>>2]=(c[n>>2]|0)+(s+(c[p>>2]|0));s=c[f>>2]|0;s=tj(s,((s|0)<0)<<31>>31)|0;c[n>>2]=(c[n>>2]|0)+(s+(c[f>>2]|0))}}b=c[n>>2]|0;s=(c[o>>2]|0)+40|0;d=s;b=dL(c[d>>2]|0,c[d+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[s>>2]=b;c[s+4>>2]=D;Wl((c[h>>2]|0)+20|0,(c[(c[h>>2]|0)+24>>2]|0)+(c[n>>2]|0)|0,m);if((c[m>>2]|0)!=0){s=c[m>>2]|0;i=g;return s|0}if((c[(c[h>>2]|0)+24>>2]|0)==0){c[(c[h>>2]|0)+24>>2]=1;a[c[(c[h>>2]|0)+20>>2]>>0]=0}c[m>>2]=cm((c[h>>2]|0)+20|0,(c[h>>2]|0)+8|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[f>>2]|0)|0;s=c[m>>2]|0;i=g;return s|0}function Sl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+48|0;m=k+44|0;l=k;n=k+40|0;h=k+36|0;s=k+32|0;o=k+20|0;j=k+24|0;g=k+16|0;r=k+12|0;p=k+8|0;q=k+28|0;c[m>>2]=a;a=l;c[a>>2]=b;c[a+4>>2]=d;c[n>>2]=e;c[h>>2]=f;c[o>>2]=0;c[j>>2]=0;c[s>>2]=(c[(c[n>>2]|0)+4>>2]|0)-1;while(1){if((c[s>>2]|0)<0){break}if((c[j>>2]|0)!=0){break}c[g>>2]=0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[n>>2]|0)+4>>2]|0)){break}c[g>>2]=c[(c[c[n>>2]>>2]|0)+(c[r>>2]<<2)>>2];if((c[c[g>>2]>>2]|0)==(c[s>>2]|0)){break}c[r>>2]=(c[r>>2]|0)+1}if((c[(c[g>>2]|0)+40>>2]|0)==0){c[j>>2]=vj(c[m>>2]|0,c[g>>2]|0)|0;if((c[j>>2]|0)==0){a=l;c[j>>2]=Xl(c[m>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[c[g>>2]>>2]|0)|0}c[c[h>>2]>>2]=0}else{c[p>>2]=c[(c[g>>2]|0)+64>>2];c[q>>2]=c[(c[g>>2]|0)+60>>2];a=l;c[j>>2]=Yl(c[m>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[c[g>>2]>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+1}c[s>>2]=(c[s>>2]|0)+ -1}if((c[j>>2]|0)!=0){b=c[o>>2]|0;a=c[h>>2]|0;c[a>>2]=b;a=c[j>>2]|0;i=k;return a|0}if((c[o>>2]|0)==(c[(c[n>>2]|0)+4>>2]|0)){b=c[o>>2]|0;a=c[h>>2]|0;c[a>>2]=b;a=c[j>>2]|0;i=k;return a|0}b=l;c[j>>2]=Zl(c[m>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=c[o>>2]|0;a=c[h>>2]|0;c[a>>2]=b;a=c[j>>2]|0;i=k;return a|0}function Tl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;j=g+16|0;h=g;k=g+8|0;l=g+12|0;c[j>>2]=a;a=h;c[a>>2]=b;c[a+4>>2]=d;c[k>>2]=e;c[l>>2]=f;Wl(c[j>>2]|0,(c[(c[j>>2]|0)+4>>2]|0)+20|0,c[l>>2]|0);if((c[c[l>>2]>>2]|0)!=0){i=g;return}l=h;l=uj((c[c[j>>2]>>2]|0)+(c[(c[j>>2]|0)+4>>2]|0)|0,c[l>>2]|0,c[l+4>>2]|0)|0;a=(c[j>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+l;a=c[k>>2]|0;a=uj((c[c[j>>2]>>2]|0)+(c[(c[j>>2]|0)+4>>2]|0)|0,a,((a|0)<0)<<31>>31)|0;l=(c[j>>2]|0)+4|0;c[l>>2]=(c[l>>2]|0)+a;i=g;return}function Ul(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=i;i=i+48|0;q=l+36|0;j=l+32|0;g=l+28|0;m=l+24|0;n=l+20|0;k=l+16|0;h=l+8|0;r=l+4|0;p=l;o=l+12|0;c[q>>2]=b;c[j>>2]=e;c[g>>2]=f;c[h>>2]=c[c[g>>2]>>2];c[n>>2]=15;while(1){if((c[n>>2]|0)<0){break}c[r>>2]=(c[j>>2]|0)+56+(c[n>>2]<<5);if((c[(c[r>>2]|0)+24>>2]|0)>0){break}oc(c[(c[r>>2]|0)+20>>2]|0);oc(c[(c[r>>2]|0)+8>>2]|0);c[n>>2]=(c[n>>2]|0)+ -1}if((c[n>>2]|0)<0){i=l;return}if((c[n>>2]|0)==0){c[p>>2]=(c[j>>2]|0)+108;Wl(c[p>>2]|0,11,h);if((c[h>>2]|0)==0){a[c[c[p>>2]>>2]>>0]=1;b=(c[j>>2]|0)+56|0;b=1+(uj((c[c[p>>2]>>2]|0)+1|0,c[b>>2]|0,c[b+4>>2]|0)|0)|0;c[(c[p>>2]|0)+4>>2]=b}c[n>>2]=1}c[k>>2]=(c[j>>2]|0)+56+(c[n>>2]<<5);c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[n>>2]|0)){break}c[o>>2]=(c[j>>2]|0)+56+(c[m>>2]<<5);if((c[(c[o>>2]|0)+24>>2]|0)>0){if((c[h>>2]|0)==0){b=c[o>>2]|0;c[h>>2]=pj(c[q>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[(c[o>>2]|0)+20>>2]|0,c[(c[o>>2]|0)+24>>2]|0)|0}}oc(c[(c[o>>2]|0)+20>>2]|0);oc(c[(c[o>>2]|0)+8>>2]|0);c[m>>2]=(c[m>>2]|0)+1}if((c[h>>2]|0)==0){p=c[q>>2]|0;o=(c[j>>2]|0)+8|0;o=dL(c[o>>2]|0,c[o+4>>2]|0,1,0)|0;n=(c[j>>2]|0)+24|0;m=(c[j>>2]|0)+56|0;f=(c[j>>2]|0)+32|0;if((d[(c[j>>2]|0)+48>>0]|0|0)==0){q=(c[j>>2]|0)+40|0;r=c[q>>2]|0;q=c[q+4>>2]|0}else{r=0;q=0}c[h>>2]=rj(p,o,D,c[(c[j>>2]|0)+16>>2]|0,c[n>>2]|0,c[n+4>>2]|0,c[m>>2]|0,c[m+4>>2]|0,c[f>>2]|0,c[f+4>>2]|0,r,q,c[(c[k>>2]|0)+20>>2]|0,c[(c[k>>2]|0)+24>>2]|0)|0}oc(c[(c[k>>2]|0)+20>>2]|0);oc(c[(c[k>>2]|0)+8>>2]|0);c[c[g>>2]>>2]=c[h>>2];i=l;return}function Vl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;h=d+12|0;g=d;f=d+4|0;e=d+8|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=0;c[e>>2]=$i(c[h>>2]|0,23,f,0)|0;if((c[e>>2]|0)!=0){h=c[e>>2]|0;i=d;return h|0}Oe(c[f>>2]|0,1,1)|0;Ke(c[f>>2]|0,2,c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+4>>2]|0,0)|0;le(c[f>>2]|0)|0;c[e>>2]=Cd(c[f>>2]|0)|0;h=c[e>>2]|0;i=d;return h|0}function Wl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;g=e+16|0;k=e;j=e+4|0;f=e+8|0;h=e+12|0;c[g>>2]=a;c[k>>2]=b;c[j>>2]=d;if((c[c[j>>2]>>2]|0)!=0){i=e;return}if((c[k>>2]|0)<=(c[(c[g>>2]|0)+8>>2]|0)){i=e;return}c[f>>2]=c[k>>2];c[h>>2]=qc(c[c[g>>2]>>2]|0,c[f>>2]|0)|0;if((c[h>>2]|0)!=0){c[(c[g>>2]|0)+8>>2]=c[f>>2];c[c[g>>2]>>2]=c[h>>2];i=e;return}else{c[c[j>>2]>>2]=7;i=e;return}}function Xl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+20|0;h=f;k=f+8|0;g=f+12|0;j=f+16|0;c[l>>2]=a;a=h;c[a>>2]=b;c[a+4>>2]=d;c[k>>2]=e;c[j>>2]=0;c[g>>2]=$i(c[l>>2]|0,30,j,0)|0;if((c[g>>2]|0)!=0){l=c[g>>2]|0;i=f;return l|0}l=h;Pe(c[j>>2]|0,1,c[l>>2]|0,c[l+4>>2]|0)|0;Oe(c[j>>2]|0,2,c[k>>2]|0)|0;le(c[j>>2]|0)|0;c[g>>2]=Cd(c[j>>2]|0)|0;l=c[g>>2]|0;i=f;return l|0}function Yl(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,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;l=i;i=i+112|0;n=l+104|0;r=l;s=l+100|0;v=l+96|0;w=l+92|0;k=l+88|0;u=l+76|0;j=l+64|0;x=l+16|0;q=l+24|0;o=l+8|0;z=l+40|0;y=l+32|0;A=l+60|0;B=l+44|0;t=l+48|0;h=l+52|0;p=l+56|0;m=l+36|0;c[n>>2]=a;a=r;c[a>>2]=b;c[a+4>>2]=d;c[s>>2]=e;c[v>>2]=f;c[w>>2]=g;c[k>>2]=0;c[u+0>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[j+0>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;a=x;c[a>>2]=0;c[a+4>>2]=0;a=q;c[a>>2]=0;c[a+4>>2]=0;a=o;c[a>>2]=0;c[a+4>>2]=0;c[z>>2]=0;c[k>>2]=$i(c[n>>2]|0,32,z,0)|0;if((c[k>>2]|0)==0){a=r;Pe(c[z>>2]|0,1,c[a>>2]|0,c[a+4>>2]|0)|0;Oe(c[z>>2]|0,2,c[s>>2]|0)|0;if(100==(le(c[z>>2]|0)|0)){c[A>>2]=ye(c[z>>2]|0,4)|0;c[B>>2]=Be(c[z>>2]|0,4)|0;b=Ee(c[z>>2]|0,1)|0;a=o;c[a>>2]=b;c[a+4>>2]=D;c[k>>2]=_l(c[A>>2]|0,c[B>>2]|0,u,c[v>>2]|0,c[w>>2]|0,x)|0}c[y>>2]=Cd(c[z>>2]|0)|0;if((c[k>>2]|0)==0){c[k>>2]=c[y>>2]}}while(1){if((c[k>>2]|0)!=0){break}a=x;if(!((c[a>>2]|0)!=0|(c[a+4>>2]|0)!=0)){break}c[t>>2]=0;c[h>>2]=0;d=x;b=c[d+4>>2]|0;a=q;c[a>>2]=c[d>>2];c[a+4>>2]=b;a=x;c[k>>2]=Sj(c[n>>2]|0,c[a>>2]|0,c[a+4>>2]|0,t,h,0)|0;if((c[k>>2]|0)==0){c[k>>2]=_l(c[t>>2]|0,c[h>>2]|0,j,c[v>>2]|0,c[w>>2]|0,x)|0}if((c[k>>2]|0)==0){a=q;c[k>>2]=pj(c[n>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[j>>2]|0,c[j+4>>2]|0)|0}oc(c[t>>2]|0)}if((c[k>>2]|0)==0){a=q;if((c[a>>2]|0)!=0|(c[a+4>>2]|0)!=0){c[p>>2]=0;c[k>>2]=$i(c[n>>2]|0,17,p,0)|0;if((c[k>>2]|0)==0){b=o;Pe(c[p>>2]|0,1,c[b>>2]|0,c[b+4>>2]|0)|0;b=c[p>>2]|0;a=q;a=$K(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;Pe(b,2,a,D)|0;le(c[p>>2]|0)|0;c[k>>2]=Cd(c[p>>2]|0)|0}}}if((c[k>>2]|0)!=0){a=c[u>>2]|0;oc(a);a=c[j>>2]|0;oc(a);a=c[k>>2]|0;i=l;return a|0}c[m>>2]=0;c[k>>2]=$i(c[n>>2]|0,33,m,0)|0;if((c[k>>2]|0)!=0){a=c[u>>2]|0;oc(a);a=c[j>>2]|0;oc(a);a=c[k>>2]|0;i=l;return a|0}a=q;Pe(c[m>>2]|0,1,c[a>>2]|0,c[a+4>>2]|0)|0;Ke(c[m>>2]|0,2,c[u>>2]|0,c[u+4>>2]|0,0)|0;a=r;Pe(c[m>>2]|0,3,c[a>>2]|0,c[a+4>>2]|0)|0;Oe(c[m>>2]|0,4,c[s>>2]|0)|0;le(c[m>>2]|0)|0;c[k>>2]=Cd(c[m>>2]|0)|0;a=c[u>>2]|0;oc(a);a=c[j>>2]|0;oc(a);a=c[k>>2]|0;i=l;return a|0}function Zl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+48|0;o=j+44|0;f=j;k=j+40|0;h=j+36|0;n=j+32|0;r=j+20|0;m=j+24|0;q=j+16|0;l=j+12|0;p=j+8|0;s=j+28|0;c[o>>2]=b;b=f;c[b>>2]=d;c[b+4>>2]=e;c[h>>2]=0;c[n>>2]=0;c[r>>2]=0;c[q>>2]=0;c[l>>2]=0;c[k>>2]=$i(c[o>>2]|0,35,q,0)|0;if((c[k>>2]|0)==0){b=f;Pe(c[q>>2]|0,1,c[b>>2]|0,c[b+4>>2]|0)|0;while(1){if(100!=(le(c[q>>2]|0)|0)){break}if((c[n>>2]|0)>=(c[r>>2]|0)){c[r>>2]=(c[r>>2]|0)+16;c[s>>2]=qc(c[h>>2]|0,c[r>>2]<<2)|0;if((c[s>>2]|0)==0){g=6;break}c[h>>2]=c[s>>2]}d=De(c[q>>2]|0,0)|0;b=c[n>>2]|0;c[n>>2]=b+1;c[(c[h>>2]|0)+(b<<2)>>2]=d}if((g|0)==6){c[k>>2]=7}c[p>>2]=Cd(c[q>>2]|0)|0;if((c[k>>2]|0)==0){c[k>>2]=c[p>>2]}}if((c[k>>2]|0)==0){c[k>>2]=$i(c[o>>2]|0,31,l,0)|0}if((c[k>>2]|0)==0){b=f;Pe(c[l>>2]|0,2,c[b>>2]|0,c[b+4>>2]|0)|0}a[(c[o>>2]|0)+232>>0]=1;c[m>>2]=0;while(1){if((c[k>>2]|0)!=0){g=21;break}if((c[m>>2]|0)>=(c[n>>2]|0)){g=21;break}if((c[(c[h>>2]|0)+(c[m>>2]<<2)>>2]|0)!=(c[m>>2]|0)){Oe(c[l>>2]|0,3,c[(c[h>>2]|0)+(c[m>>2]<<2)>>2]|0)|0;Oe(c[l>>2]|0,1,c[m>>2]|0)|0;le(c[l>>2]|0)|0;c[k>>2]=Cd(c[l>>2]|0)|0}c[m>>2]=(c[m>>2]|0)+1}if((g|0)==21){a[(c[o>>2]|0)+232>>0]=0;oc(c[h>>2]|0);i=j;return c[k>>2]|0}return 0}function _l(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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;t=i;i=i+112|0;l=t+96|0;q=t+92|0;w=t+88|0;p=t+84|0;u=t+80|0;v=t+76|0;r=t+72|0;n=t;o=t+52|0;m=t+48|0;j=t+64|0;s=t+68|0;c[q>>2]=b;c[w>>2]=d;c[p>>2]=e;c[u>>2]=f;c[v>>2]=g;c[r>>2]=h;c[o+0>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[m>>2]=0;c[j>>2]=(a[c[q>>2]>>0]|0)==0&1;Wl(c[p>>2]|0,c[w>>2]|0,m);if((c[m>>2]|0)!=0){c[l>>2]=c[m>>2];b=c[l>>2]|0;i=t;return b|0}c[(c[p>>2]|0)+4>>2]=0;c[m>>2]=$l(n,c[q>>2]|0,c[w>>2]|0)|0;while(1){if((c[m>>2]|0)!=0){break}if((c[n>>2]|0)==0){break}do{if((c[(c[p>>2]|0)+4>>2]|0)==0){c[s>>2]=am(c[n+24>>2]|0,c[n+28>>2]|0,c[u>>2]|0,c[v>>2]|0)|0;if((c[s>>2]|0)>=0){if((c[j>>2]|0)==0){if((c[s>>2]|0)==0){break}}d=n+16|0;bm(c[p>>2]|0,a[c[q>>2]>>0]|0,c[d>>2]|0,c[d+4>>2]|0);d=n+16|0;b=c[d+4>>2]|0;k=c[r>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=b;k=11}}else{k=11}}while(0);if((k|0)==11){k=0;c[m>>2]=cm(c[p>>2]|0,o,c[n+24>>2]|0,c[n+28>>2]|0,c[n+36>>2]|0,c[n+40>>2]|0)|0;if((c[m>>2]|0)!=0){break}}c[m>>2]=dm(n)|0}if((c[(c[p>>2]|0)+4>>2]|0)==0){e=n+16|0;bm(c[p>>2]|0,a[c[q>>2]>>0]|0,c[e>>2]|0,c[e+4>>2]|0);e=n+16|0;d=c[e+4>>2]|0;b=c[r>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=d}em(n);oc(c[o>>2]|0);c[l>>2]=c[m>>2];b=c[l>>2]|0;i=t;return b|0}function $l(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;g=i;i=i+16|0;f=g+8|0;h=g;j=g+4|0;c[f>>2]=b;c[h>>2]=d;c[j>>2]=e;d=(c[f>>2]|0)+0|0;e=d+48|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));c[c[f>>2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[j>>2];h=c[f>>2]|0;if((a[c[c[f>>2]>>2]>>0]|0)!=0){b=1+(Kj((c[h>>2]|0)+1|0,(c[f>>2]|0)+16|0)|0)|0;c[(c[f>>2]|0)+8>>2]=b;b=c[f>>2]|0;b=dm(b)|0;i=g;return b|0}else{c[h+8>>2]=1;b=c[f>>2]|0;b=dm(b)|0;i=g;return b|0}return 0}function am(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;m=f+20|0;h=f;l=f+4|0;j=f+8|0;k=f+12|0;g=f+16|0;c[m>>2]=a;c[h>>2]=b;c[l>>2]=d;c[j>>2]=e;c[k>>2]=(c[h>>2]|0)<(c[j>>2]|0)?c[h>>2]|0:c[j>>2]|0;c[g>>2]=XK(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0)|0;if((c[g>>2]|0)!=0){m=c[g>>2]|0;i=f;return m|0}c[g>>2]=(c[h>>2]|0)-(c[j>>2]|0);m=c[g>>2]|0;i=f;return m|0}function bm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+16|0;h=g+12|0;k=g+8|0;j=g;c[h>>2]=b;c[k>>2]=d;b=j;c[b>>2]=e;c[b+4>>2]=f;a[c[c[h>>2]>>2]>>0]=c[k>>2];b=j;f=c[h>>2]|0;if((c[b>>2]|0)!=0|(c[b+4>>2]|0)!=0){k=j;k=1+(uj((c[f>>2]|0)+1|0,c[k>>2]|0,c[k+4>>2]|0)|0)|0;c[(c[h>>2]|0)+4>>2]=k;i=g;return}else{c[f+4>>2]=1;i=g;return}}function cm(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+48|0;j=q+40|0;m=q+36|0;r=q+32|0;p=q+28|0;s=q+24|0;n=q+20|0;l=q+12|0;k=q+8|0;t=q+4|0;h=q;o=q+16|0;c[m>>2]=a;c[r>>2]=b;c[p>>2]=d;c[s>>2]=e;c[n>>2]=f;c[l>>2]=g;c[k>>2]=0;c[t>>2]=(c[(c[r>>2]|0)+4>>2]|0)==0&1;Wl(c[r>>2]|0,c[s>>2]|0,k);if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];a=c[j>>2]|0;i=q;return a|0}c[h>>2]=wj(c[c[r>>2]>>2]|0,c[(c[r>>2]|0)+4>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;c[o>>2]=(c[s>>2]|0)-(c[h>>2]|0);fL(c[c[r>>2]>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;c[(c[r>>2]|0)+4>>2]=c[s>>2];if((c[t>>2]|0)==0){b=c[h>>2]|0;b=uj((c[c[m>>2]>>2]|0)+(c[(c[m>>2]|0)+4>>2]|0)|0,b,((b|0)<0)<<31>>31)|0;a=(c[m>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+b}b=c[o>>2]|0;b=uj((c[c[m>>2]>>2]|0)+(c[(c[m>>2]|0)+4>>2]|0)|0,b,((b|0)<0)<<31>>31)|0;a=(c[m>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+b;fL((c[c[m>>2]>>2]|0)+(c[(c[m>>2]|0)+4>>2]|0)|0,(c[p>>2]|0)+(c[h>>2]|0)|0,c[o>>2]|0)|0;a=(c[m>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+(c[o>>2]|0);if((c[n>>2]|0)!=0){b=c[l>>2]|0;b=uj((c[c[m>>2]>>2]|0)+(c[(c[m>>2]|0)+4>>2]|0)|0,b,((b|0)<0)<<31>>31)|0;a=(c[m>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+b;fL((c[c[m>>2]>>2]|0)+(c[(c[m>>2]|0)+4>>2]|0)|0,c[n>>2]|0,c[l>>2]|0)|0;a=(c[m>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+(c[l>>2]|0)}c[j>>2]=0;a=c[j>>2]|0;i=q;return a|0}function dm(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;k=f;h=f+4|0;j=f+8|0;e=f+12|0;c[g>>2]=b;c[k>>2]=(c[(c[g>>2]|0)+28>>2]|0)==0&1;c[h>>2]=0;c[j>>2]=0;c[e>>2]=0;b=(c[g>>2]|0)+16|0;if((c[b>>2]|0)!=0|(c[b+4>>2]|0)!=0){if((c[k>>2]|0)==0){b=(c[g>>2]|0)+16|0;l=b;l=dL(c[l>>2]|0,c[l+4>>2]|0,1,0)|0;c[b>>2]=l;c[b+4>>2]=D}}if((c[(c[g>>2]|0)+8>>2]|0)>=(c[(c[g>>2]|0)+4>>2]|0)){c[c[g>>2]>>2]=0;l=c[e>>2]|0;i=f;return l|0}if((c[k>>2]|0)==0){k=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0)|0;if((a[(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0)>>0]&128|0)!=0){k=Lj(k,h)|0}else{c[h>>2]=d[k>>0]|0;k=1}l=(c[g>>2]|0)+8|0;c[l>>2]=(c[l>>2]|0)+k}k=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0)|0;if((a[(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0)>>0]&128|0)!=0){k=Lj(k,j)|0}else{c[j>>2]=d[k>>0]|0;k=1}l=(c[g>>2]|0)+8|0;c[l>>2]=(c[l>>2]|0)+k;Wl((c[g>>2]|0)+24|0,(c[h>>2]|0)+(c[j>>2]|0)|0,e);if((c[e>>2]|0)!=0){l=c[e>>2]|0;i=f;return l|0}fL((c[(c[g>>2]|0)+24>>2]|0)+(c[h>>2]|0)|0,(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0)|0,c[j>>2]|0)|0;c[(c[g>>2]|0)+28>>2]=(c[h>>2]|0)+(c[j>>2]|0);l=(c[g>>2]|0)+8|0;c[l>>2]=(c[l>>2]|0)+(c[j>>2]|0);l=(c[g>>2]|0)+16|0;if(!((c[l>>2]|0)==0&(c[l+4>>2]|0)==0)){l=c[e>>2]|0;i=f;return l|0}h=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0)|0;if((a[(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0)>>0]&128|0)!=0){h=Lj(h,(c[g>>2]|0)+40|0)|0}else{c[(c[g>>2]|0)+40>>2]=d[h>>0]|0;h=1}l=(c[g>>2]|0)+8|0;c[l>>2]=(c[l>>2]|0)+h;c[(c[g>>2]|0)+36>>2]=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0);l=(c[g>>2]|0)+8|0;c[l>>2]=(c[l>>2]|0)+(c[(c[g>>2]|0)+40>>2]|0);l=c[e>>2]|0;i=f;return l|0}function em(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;oc(c[(c[d>>2]|0)+24>>2]|0);i=b;return}function fm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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;j=i;i=i+64|0;r=j+60|0;s=j+56|0;w=j+52|0;o=j+48|0;g=j+44|0;u=j;t=j+40|0;k=j+8|0;q=j+28|0;l=j+20|0;p=j+16|0;m=j+24|0;v=j+32|0;n=j+36|0;c[s>>2]=b;c[w>>2]=d;c[o>>2]=e;c[g>>2]=f;e=(c[w>>2]|0)+56|0;d=c[e+4>>2]|0;b=u;c[b>>2]=c[e>>2];c[b+4>>2]=d;c[t>>2]=1;while(1){if((c[t>>2]|0)>=16){h=17;break}b=k;c[b>>2]=0;c[b+4>>2]=0;c[q>>2]=(c[w>>2]|0)+56+(c[t>>2]<<5);c[l>>2]=0;c[p>>2]=wj(c[(c[q>>2]|0)+8>>2]|0,c[(c[q>>2]|0)+12>>2]|0,c[o>>2]|0,c[g>>2]|0)|0;c[m>>2]=(c[g>>2]|0)-(c[p>>2]|0);b=c[p>>2]|0;c[v>>2]=tj(b,((b|0)<0)<<31>>31)|0;b=c[m>>2]|0;b=tj(b,((b|0)<0)<<31>>31)|0;c[v>>2]=(c[v>>2]|0)+(b+(c[m>>2]|0));if((c[(c[q>>2]|0)+12>>2]|0)==0){h=5}else{if(((c[(c[q>>2]|0)+24>>2]|0)+(c[v>>2]|0)|0)<=(c[(c[s>>2]|0)+224>>2]|0)){h=5}else{d=c[q>>2]|0;c[l>>2]=pj(c[s>>2]|0,c[d>>2]|0,c[d+4>>2]|0,c[(c[q>>2]|0)+20>>2]|0,c[(c[q>>2]|0)+24>>2]|0)|0;a[c[(c[q>>2]|0)+20>>2]>>0]=c[t>>2];d=(c[(c[q>>2]|0)+20>>2]|0)+1|0;e=u;e=dL(c[e>>2]|0,c[e+4>>2]|0,1,0)|0;e=1+(uj(d,e,D)|0)|0;c[(c[q>>2]|0)+24>>2]=e;e=c[q>>2]|0;d=c[e+4>>2]|0;b=k;c[b>>2]=c[e>>2];c[b+4>>2]=d;b=c[q>>2]|0;d=b;d=dL(c[d>>2]|0,c[d+4>>2]|0,1,0)|0;c[b>>2]=d;c[b+4>>2]=D;c[(c[q>>2]|0)+12>>2]=0}}if((h|0)==5){h=0;c[n>>2]=(c[q>>2]|0)+20;if((c[(c[n>>2]|0)+4>>2]|0)==0){Wl(c[n>>2]|0,c[(c[s>>2]|0)+224>>2]|0,l);if((c[l>>2]|0)==0){a[c[c[n>>2]>>2]>>0]=c[t>>2];b=u;b=1+(uj((c[c[n>>2]>>2]|0)+1|0,c[b>>2]|0,c[b+4>>2]|0)|0)|0;c[(c[n>>2]|0)+4>>2]=b}}Wl(c[n>>2]|0,(c[(c[n>>2]|0)+4>>2]|0)+(c[v>>2]|0)|0,l);Wl((c[q>>2]|0)+8|0,c[g>>2]|0,l);if((c[l>>2]|0)==0){if((c[(c[q>>2]|0)+12>>2]|0)!=0){d=c[p>>2]|0;d=uj((c[c[n>>2]>>2]|0)+(c[(c[n>>2]|0)+4>>2]|0)|0,d,((d|0)<0)<<31>>31)|0;b=(c[n>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+d}d=c[m>>2]|0;d=uj((c[c[n>>2]>>2]|0)+(c[(c[n>>2]|0)+4>>2]|0)|0,d,((d|0)<0)<<31>>31)|0;b=(c[n>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+d;fL((c[c[n>>2]>>2]|0)+(c[(c[n>>2]|0)+4>>2]|0)|0,(c[o>>2]|0)+(c[p>>2]|0)|0,c[m>>2]|0)|0;b=(c[n>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+(c[m>>2]|0);fL(c[(c[q>>2]|0)+8>>2]|0,c[o>>2]|0,c[g>>2]|0)|0;c[(c[q>>2]|0)+12>>2]=c[g>>2]}}if((c[l>>2]|0)!=0){h=15;break}b=k;if((c[b>>2]|0)==0&(c[b+4>>2]|0)==0){h=15;break}e=k;d=c[e+4>>2]|0;b=u;c[b>>2]=c[e>>2];c[b+4>>2]=d;c[t>>2]=(c[t>>2]|0)+1}if((h|0)==15){c[r>>2]=c[l>>2];b=c[r>>2]|0;i=j;return b|0}else if((h|0)==17){c[r>>2]=0;b=c[r>>2]|0;i=j;return b|0}return 0}function gm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;m=f+24|0;l=f;h=f+8|0;j=f+12|0;k=f+16|0;g=f+20|0;c[m>>2]=a;a=l;c[a>>2]=b;c[a+4>>2]=d;c[h>>2]=e;c[j>>2]=0;c[k>>2]=0;c[g>>2]=$i(c[m>>2]|0,34,k,0)|0;if((c[g>>2]|0)!=0){a=c[j>>2]|0;m=c[h>>2]|0;c[m>>2]=a;m=c[g>>2]|0;i=f;return m|0}m=l;Pe(c[k>>2]|0,1,c[m>>2]|0,c[m+4>>2]|0)|0;if(100==(le(c[k>>2]|0)|0)){c[j>>2]=1}c[g>>2]=Cd(c[k>>2]|0)|0;a=c[j>>2]|0;m=c[h>>2]|0;c[m>>2]=a;m=c[g>>2]|0;i=f;return m|0}function hm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;l=i;i=i+64|0;u=l+48|0;r=l+44|0;n=l+40|0;o=l+36|0;p=l+32|0;j=l+28|0;q=l+24|0;s=l+16|0;k=l+12|0;g=l+8|0;h=l+4|0;m=l;t=l+20|0;c[u>>2]=b;c[r>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=c[u>>2];c[j>>2]=0;c[q>>2]=0;c[s>>2]=0;c[k>>2]=0;c[g>>2]=0;c[h>>2]=0;if((c[r>>2]|0)>1){if((Sd(c[c[n>>2]>>2]|0)|0)==5){if((Sd(c[(c[n>>2]|0)+((c[(c[p>>2]|0)+24>>2]|0)+2<<2)>>2]|0)|0)!=5){c[j>>2]=im(c[p>>2]|0,c[(c[n>>2]|0)+((c[(c[p>>2]|0)+24>>2]|0)+2<<2)>>2]|0)|0;u=c[k>>2]|0;oc(u);u=c[p>>2]|0;jk(u);u=c[j>>2]|0;i=l;return u|0}}}if((c[r>>2]|0)>1){if((Od(c[(c[n>>2]|0)+(4+(c[(c[p>>2]|0)+24>>2]|0)<<2)>>2]|0)|0)<0){c[j>>2]=19;u=c[k>>2]|0;oc(u);u=c[p>>2]|0;jk(u);u=c[j>>2]|0;i=l;return u|0}}c[k>>2]=mc((c[(c[p>>2]|0)+24>>2]|0)+1<<2<<1)|0;if((c[k>>2]|0)==0){c[j>>2]=7;u=c[k>>2]|0;oc(u);u=c[p>>2]|0;jk(u);u=c[j>>2]|0;i=l;return u|0}c[s>>2]=(c[k>>2]|0)+((c[(c[p>>2]|0)+24>>2]|0)+1<<2);aL(c[k>>2]|0,0,(c[(c[p>>2]|0)+24>>2]|0)+1<<2<<1|0)|0;c[j>>2]=jm(c[p>>2]|0)|0;if((c[j>>2]|0)!=0){u=c[k>>2]|0;oc(u);u=c[p>>2]|0;jk(u);u=c[j>>2]|0;i=l;return u|0}do{if((c[r>>2]|0)>1){if((c[(c[p>>2]|0)+40>>2]|0)==0){c[m>>2]=c[(c[n>>2]|0)+(3+(c[(c[p>>2]|0)+24>>2]|0)<<2)>>2];if((Sd(c[m>>2]|0)|0)==5){c[m>>2]=c[(c[n>>2]|0)+4>>2]}if((Sd(c[m>>2]|0)|0)!=5){if((Sd(c[c[n>>2]>>2]|0)|0)!=5){d=Qd(c[c[n>>2]>>2]|0)|0;u=D;b=Qd(c[m>>2]|0)|0;if(!((d|0)!=(b|0)|(u|0)!=(D|0))){break}}u=(Nf(c[(c[p>>2]|0)+12>>2]|0)|0)==5;f=c[p>>2]|0;if(u){c[j>>2]=km(f,c[m>>2]|0,g,c[k>>2]|0)|0;break}else{c[j>>2]=lm(f,c[n>>2]|0,c[o>>2]|0)|0;c[h>>2]=1;break}}}}}while(0);if((c[j>>2]|0)!=0){u=c[k>>2]|0;oc(u);u=c[p>>2]|0;jk(u);u=c[j>>2]|0;i=l;return u|0}if((Sd(c[c[n>>2]>>2]|0)|0)!=5){c[j>>2]=km(c[p>>2]|0,c[c[n>>2]>>2]|0,g,c[k>>2]|0)|0;c[q>>2]=1}if((c[r>>2]|0)>1){if((c[j>>2]|0)==0){c[t>>2]=Od(c[(c[n>>2]|0)+(4+(c[(c[p>>2]|0)+24>>2]|0)<<2)>>2]|0)|0;if((c[h>>2]|0)==0){c[j>>2]=lm(c[p>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;if((c[j>>2]|0)==19){if((c[(c[p>>2]|0)+40>>2]|0)==0){c[j>>2]=267}}}do{if((c[j>>2]|0)==0){if((c[q>>2]|0)!=0){b=c[o>>2]|0;u=(c[p>>2]|0)+264|0;if(!((c[b>>2]|0)!=(c[u>>2]|0)?1:(c[b+4>>2]|0)!=(c[u+4>>2]|0))){break}}u=c[o>>2]|0;c[j>>2]=mm(c[p>>2]|0,c[t>>2]|0,c[u>>2]|0,c[u+4>>2]|0)|0}}while(0);if((c[j>>2]|0)==0){c[j>>2]=nm(c[p>>2]|0,c[t>>2]|0,c[n>>2]|0,c[s>>2]|0)|0}if((a[(c[p>>2]|0)+230>>0]|0)!=0){om(j,c[p>>2]|0,c[s>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}}if((a[(c[p>>2]|0)+228>>0]|0)==0){u=c[k>>2]|0;oc(u);u=c[p>>2]|0;jk(u);u=c[j>>2]|0;i=l;return u|0}pm(j,c[p>>2]|0,c[s>>2]|0,c[k>>2]|0,c[g>>2]|0);u=c[k>>2]|0;oc(u);u=c[p>>2]|0;jk(u);u=c[j>>2]|0;i=l;return u|0}function im(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;h=e;l=e+4|0;g=e+8|0;j=e+12|0;k=e+16|0;c[h>>2]=a;c[l>>2]=b;c[j>>2]=Jd(c[l>>2]|0)|0;c[k>>2]=Kd(c[l>>2]|0)|0;if((c[j>>2]|0)==0){c[f>>2]=7;l=c[f>>2]|0;i=e;return l|0}if((c[k>>2]|0)==8){if(0==(Tb(c[j>>2]|0,3736,8)|0)){c[g>>2]=vl(c[h>>2]|0,0)|0}else{d=6}}else{d=6}do{if((d|0)==6){if((c[k>>2]|0)==7){if(0==(Tb(c[j>>2]|0,7320,7)|0)){c[g>>2]=zm(c[h>>2]|0)|0;break}}if((c[k>>2]|0)==15){if(0==(Tb(c[j>>2]|0,7328,15)|0)){c[g>>2]=Am(c[h>>2]|0)|0;break}}if((c[k>>2]|0)>6){if(0==(Tb(c[j>>2]|0,7344,6)|0)){c[g>>2]=Bm(c[h>>2]|0,(c[j>>2]|0)+6|0)|0;break}}if((c[k>>2]|0)>10){if(0==(Tb(c[j>>2]|0,7352,10)|0)){c[g>>2]=Cm(c[h>>2]|0,(c[j>>2]|0)+10|0)|0;break}}c[g>>2]=1}}while(0);c[f>>2]=c[g>>2];l=c[f>>2]|0;i=e;return l|0}function jm(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b;e=b+4|0;c[f>>2]=a;c[d>>2]=0;if((c[(c[f>>2]|0)+260>>2]|0)==0){c[d>>2]=$i(c[f>>2]|0,16,e,0)|0;if((c[d>>2]|0)==0){Qe(c[e>>2]|0,1)|0;le(c[e>>2]|0)|0;c[d>>2]=Cd(c[e>>2]|0)|0}}i=b;return c[d>>2]|0}function km(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;j=l+24|0;n=l;k=l+4|0;g=l+8|0;h=l+12|0;o=l+16|0;m=l+20|0;c[j>>2]=b;c[n>>2]=d;c[k>>2]=e;c[g>>2]=f;c[h>>2]=0;c[o>>2]=0;um(h,c[j>>2]|0,c[n>>2]|0,c[g>>2]|0,o);if((c[o>>2]|0)==0){o=c[h>>2]|0;i=l;return o|0}if((c[h>>2]|0)!=0){o=c[h>>2]|0;i=l;return o|0}c[m>>2]=0;c[h>>2]=vm(c[j>>2]|0,c[n>>2]|0,m)|0;if((c[h>>2]|0)!=0){o=c[h>>2]|0;i=l;return o|0}if((c[m>>2]|0)!=0){c[h>>2]=wm(c[j>>2]|0,1)|0;c[c[k>>2]>>2]=0;aL(c[g>>2]|0,0,(c[(c[j>>2]|0)+24>>2]|0)+1<<2<<1|0)|0;o=c[h>>2]|0;i=l;return o|0}c[c[k>>2]>>2]=(c[c[k>>2]>>2]|0)-1;if((c[(c[j>>2]|0)+40>>2]|0)==0){xm(h,c[j>>2]|0,0,n)}if((a[(c[j>>2]|0)+230>>0]|0)==0){o=c[h>>2]|0;i=l;return o|0}xm(h,c[j>>2]|0,19,n);o=c[h>>2]|0;i=l;return o|0}function lm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;k=f+24|0;l=f;j=f+4|0;h=f+8|0;e=f+12|0;m=f+16|0;g=f+20|0;c[l>>2]=a;c[j>>2]=b;c[h>>2]=d;d=c[l>>2]|0;if((c[(c[l>>2]|0)+40>>2]|0)!=0){c[g>>2]=c[(c[j>>2]|0)+((c[d+24>>2]|0)+3<<2)>>2];if((Sd(c[g>>2]|0)|0)==5){c[g>>2]=c[(c[j>>2]|0)+4>>2]}if((Sd(c[g>>2]|0)|0)!=1){c[k>>2]=19;a=c[k>>2]|0;i=f;return a|0}else{b=Qd(c[g>>2]|0)|0;a=c[h>>2]|0;c[a>>2]=b;c[a+4>>2]=D;c[k>>2]=0;a=c[k>>2]|0;i=f;return a|0}}c[e>>2]=$i(d,18,m,(c[j>>2]|0)+4|0)|0;if((c[e>>2]|0)==0){if((c[(c[l>>2]|0)+44>>2]|0)!=0){b=c[m>>2]|0;a=(c[(c[l>>2]|0)+24>>2]|0)+2|0;c[e>>2]=Oe(b,a,Od(c[(c[j>>2]|0)+((c[(c[l>>2]|0)+24>>2]|0)+4<<2)>>2]|0)|0)|0}}if((c[e>>2]|0)!=0){c[k>>2]=c[e>>2];a=c[k>>2]|0;i=f;return a|0}if(5!=(Sd(c[(c[j>>2]|0)+(3+(c[(c[l>>2]|0)+24>>2]|0)<<2)>>2]|0)|0)){if(5==(Sd(c[c[j>>2]>>2]|0)|0)){if(5!=(Sd(c[(c[j>>2]|0)+4>>2]|0)|0)){c[k>>2]=1;a=c[k>>2]|0;i=f;return a|0}}c[e>>2]=Se(c[m>>2]|0,1,c[(c[j>>2]|0)+(3+(c[(c[l>>2]|0)+24>>2]|0)<<2)>>2]|0)|0;if((c[e>>2]|0)!=0){c[k>>2]=c[e>>2];a=c[k>>2]|0;i=f;return a|0}}le(c[m>>2]|0)|0;c[e>>2]=Cd(c[m>>2]|0)|0;b=eg(c[(c[l>>2]|0)+12>>2]|0)|0;a=c[h>>2]|0;c[a>>2]=b;c[a+4>>2]=D;c[k>>2]=c[e>>2];a=c[k>>2]|0;i=f;return a|0}function mm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;h=j+20|0;f=j+12|0;m=j+8|0;k=j;l=j+16|0;c[f>>2]=a;c[m>>2]=b;b=k;c[b>>2]=d;c[b+4>>2]=e;b=k;e=c[b+4>>2]|0;a=(c[f>>2]|0)+264|0;d=c[a+4>>2]|0;if((e|0)<(d|0)|((e|0)==(d|0)?(c[b>>2]|0)>>>0<=(c[a>>2]|0)>>>0:0)){g=4}else{if((c[(c[f>>2]|0)+272>>2]|0)!=(c[m>>2]|0)){g=4}else{if((c[(c[f>>2]|0)+260>>2]|0)>(c[(c[f>>2]|0)+256>>2]|0)){g=4}}}if((g|0)==4){c[l>>2]=Yi(c[f>>2]|0)|0;if((c[l>>2]|0)!=0){c[h>>2]=c[l>>2];a=c[h>>2]|0;i=j;return a|0}}d=k;b=c[d+4>>2]|0;a=(c[f>>2]|0)+264|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;c[(c[f>>2]|0)+272>>2]=c[m>>2];c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}function nm(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+48|0;j=g+32|0;k=g+28|0;o=g+24|0;l=g+20|0;q=g+16|0;m=g+8|0;p=g+4|0;n=g;h=g+12|0;c[k>>2]=a;c[o>>2]=b;c[l>>2]=e;c[q>>2]=f;c[m>>2]=2;while(1){if((c[m>>2]|0)>=((c[(c[k>>2]|0)+24>>2]|0)+2|0)){k=8;break}c[p>>2]=(c[m>>2]|0)-2;if((d[(c[(c[k>>2]|0)+32>>2]|0)+(c[p>>2]|0)>>0]|0|0)==0){c[n>>2]=Jd(c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)|0;c[h>>2]=sm(c[k>>2]|0,c[o>>2]|0,c[n>>2]|0,c[p>>2]|0,(c[q>>2]|0)+(c[p>>2]<<2)|0)|0;if((c[h>>2]|0)!=0){k=5;break}b=Kd(c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)|0;a=(c[q>>2]|0)+(c[(c[k>>2]|0)+24>>2]<<2)|0;c[a>>2]=(c[a>>2]|0)+b}c[m>>2]=(c[m>>2]|0)+1}if((k|0)==5){c[j>>2]=c[h>>2];a=c[j>>2]|0;i=g;return a|0}else if((k|0)==8){c[j>>2]=0;a=c[j>>2]|0;i=g;return a|0}return 0}function om(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;f=j+24|0;g=j;h=j+4|0;e=j+8|0;k=j+12|0;l=j+16|0;m=j+20|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[c[f>>2]>>2]|0)!=0){i=j;return}c[e>>2]=mc((c[(c[g>>2]|0)+24>>2]|0)*10|0)|0;if((c[e>>2]|0)==0){c[c[f>>2]>>2]=7;i=j;return}rm(c[(c[g>>2]|0)+24>>2]|0,c[h>>2]|0,c[e>>2]|0,k);c[m>>2]=$i(c[g>>2]|0,20,l,0)|0;if((c[m>>2]|0)!=0){oc(c[e>>2]|0);c[c[f>>2]>>2]=c[m>>2];i=j;return}else{a=(c[g>>2]|0)+264|0;Pe(c[l>>2]|0,1,c[a>>2]|0,c[a+4>>2]|0)|0;Ke(c[l>>2]|0,2,c[e>>2]|0,c[k>>2]|0,13)|0;le(c[l>>2]|0)|0;a=Cd(c[l>>2]|0)|0;c[c[f>>2]>>2]=a;i=j;return}}function pm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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;r=i;i=i+64|0;j=r+48|0;p=r+44|0;t=r+40|0;u=r+36|0;v=r+32|0;n=r+28|0;o=r+24|0;k=r+16|0;q=r+12|0;g=r+8|0;l=r+4|0;m=r;s=r+20|0;c[j>>2]=a;c[p>>2]=b;c[t>>2]=d;c[u>>2]=e;c[v>>2]=f;c[m>>2]=(c[(c[p>>2]|0)+24>>2]|0)+2;if((c[c[j>>2]>>2]|0)!=0){i=r;return}c[k>>2]=mc((c[m>>2]|0)*14|0)|0;if((c[k>>2]|0)==0){c[c[j>>2]>>2]=7;i=r;return}c[n>>2]=(c[k>>2]|0)+(c[m>>2]<<2);c[l>>2]=$i(c[p>>2]|0,22,q,0)|0;if((c[l>>2]|0)!=0){oc(c[k>>2]|0);c[c[j>>2]>>2]=c[l>>2];i=r;return}Oe(c[q>>2]|0,1,0)|0;if((le(c[q>>2]|0)|0)==100){d=c[m>>2]|0;b=c[k>>2]|0;a=ye(c[q>>2]|0,0)|0;qm(d,b,a,Be(c[q>>2]|0,0)|0)}else{aL(c[k>>2]|0,0,c[m>>2]<<2|0)|0}c[l>>2]=Cd(c[q>>2]|0)|0;if((c[l>>2]|0)!=0){oc(c[k>>2]|0);c[c[j>>2]>>2]=c[l>>2];i=r;return}if((c[v>>2]|0)<0){if((c[c[k>>2]>>2]|0)>>>0<(0-(c[v>>2]|0)|0)>>>0){c[c[k>>2]>>2]=0}else{h=14}}else{h=14}if((h|0)==14){a=c[k>>2]|0;c[a>>2]=(c[a>>2]|0)+(c[v>>2]|0)}c[g>>2]=0;while(1){if((c[g>>2]|0)>=((c[(c[p>>2]|0)+24>>2]|0)+1|0)){break}c[s>>2]=c[(c[k>>2]|0)+((c[g>>2]|0)+1<<2)>>2];if(((c[s>>2]|0)+(c[(c[t>>2]|0)+(c[g>>2]<<2)>>2]|0)|0)>>>0<(c[(c[u>>2]|0)+(c[g>>2]<<2)>>2]|0)>>>0){c[s>>2]=0}else{c[s>>2]=(c[s>>2]|0)+(c[(c[t>>2]|0)+(c[g>>2]<<2)>>2]|0)-(c[(c[u>>2]|0)+(c[g>>2]<<2)>>2]|0)}c[(c[k>>2]|0)+((c[g>>2]|0)+1<<2)>>2]=c[s>>2];c[g>>2]=(c[g>>2]|0)+1}rm(c[m>>2]|0,c[k>>2]|0,c[n>>2]|0,o);c[l>>2]=$i(c[p>>2]|0,23,q,0)|0;if((c[l>>2]|0)!=0){oc(c[k>>2]|0);c[c[j>>2]>>2]=c[l>>2];i=r;return}else{Oe(c[q>>2]|0,1,0)|0;Ke(c[q>>2]|0,2,c[n>>2]|0,c[o>>2]|0,0)|0;le(c[q>>2]|0)|0;a=Cd(c[q>>2]|0)|0;c[c[j>>2]>>2]=a;oc(c[k>>2]|0);i=r;return}}function qm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;h=k+28|0;m=k+24|0;j=k+8|0;g=k+16|0;f=k+20|0;l=k;c[h>>2]=a;c[m>>2]=b;c[j>>2]=d;c[k+12>>2]=e;c[f>>2]=0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[h>>2]|0)){break}a=Kj((c[j>>2]|0)+(c[f>>2]|0)|0,l)|0;c[f>>2]=(c[f>>2]|0)+a;c[(c[m>>2]|0)+(c[g>>2]<<2)>>2]=c[l>>2];c[g>>2]=(c[g>>2]|0)+1}i=k;return}function rm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;k=g+20|0;m=g;f=g+4|0;l=g+8|0;j=g+12|0;h=g+16|0;c[k>>2]=a;c[m>>2]=b;c[f>>2]=d;c[l>>2]=e;c[h>>2]=0;c[j>>2]=0;while(1){e=c[h>>2]|0;if((c[j>>2]|0)>=(c[k>>2]|0)){break}a=uj((c[f>>2]|0)+e|0,c[(c[m>>2]|0)+(c[j>>2]<<2)>>2]|0,0)|0;c[h>>2]=(c[h>>2]|0)+a;c[j>>2]=(c[j>>2]|0)+1}c[c[l>>2]>>2]=e;i=g;return}function sm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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;u=i;i=i+80|0;j=u+72|0;p=u+68|0;A=u+64|0;B=u+60|0;q=u+56|0;k=u+52|0;l=u+48|0;w=u+44|0;x=u+40|0;r=u+36|0;o=u+12|0;s=u;t=u+4|0;z=u+8|0;m=u+16|0;n=u+20|0;v=u+24|0;g=u+28|0;y=u+32|0;c[p>>2]=a;c[A>>2]=b;c[B>>2]=d;c[q>>2]=e;c[k>>2]=f;c[w>>2]=0;c[x>>2]=0;c[r>>2]=0;c[o>>2]=0;c[t>>2]=0;c[z>>2]=c[(c[p>>2]|0)+36>>2];c[m>>2]=c[c[z>>2]>>2];if((c[B>>2]|0)==0){c[c[k>>2]>>2]=0;c[j>>2]=0;a=c[j>>2]|0;i=u;return a|0}c[l>>2]=jl(c[z>>2]|0,c[A>>2]|0,c[B>>2]|0,-1,n)|0;if((c[l>>2]|0)!=0){c[j>>2]=c[l>>2];a=c[j>>2]|0;i=u;return a|0}c[v>>2]=c[(c[m>>2]|0)+20>>2];a:while(1){if(0!=(c[l>>2]|0)){break}a=tb[c[v>>2]&15](c[n>>2]|0,s,t,w,x,r)|0;c[l>>2]=a;if(0!=(a|0)){break}if((c[r>>2]|0)>=(c[o>>2]|0)){c[o>>2]=(c[r>>2]|0)+1}if((c[r>>2]|0)<0){h=13;break}if((c[s>>2]|0)==0){h=13;break}if((c[t>>2]|0)<=0){h=13;break}c[l>>2]=tm(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,(c[(c[p>>2]|0)+252>>2]|0)+4|0,c[s>>2]|0,c[t>>2]|0)|0;c[g>>2]=1;while(1){if((c[l>>2]|0)!=0){continue a}if((c[g>>2]|0)>=(c[(c[p>>2]|0)+248>>2]|0)){continue a}c[y>>2]=(c[(c[p>>2]|0)+252>>2]|0)+((c[g>>2]|0)*24|0);if((c[t>>2]|0)>=(c[c[y>>2]>>2]|0)){c[l>>2]=tm(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,(c[y>>2]|0)+4|0,c[s>>2]|0,c[c[y>>2]>>2]|0)|0}c[g>>2]=(c[g>>2]|0)+1}}if((h|0)==13){c[l>>2]=1}ub[c[(c[m>>2]|0)+16>>2]&63](c[n>>2]|0)|0;a=c[k>>2]|0;c[a>>2]=(c[a>>2]|0)+(c[o>>2]|0);c[j>>2]=(c[l>>2]|0)==101?0:c[l>>2]|0;a=c[j>>2]|0;i=u;return a|0}function tm(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;h=j+28|0;p=j;q=j+4|0;l=j+8|0;m=j+12|0;n=j+16|0;k=j+20|0;o=j+24|0;c[h>>2]=a;c[p>>2]=b;c[q>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;c[k>>2]=pi(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if((c[k>>2]|0)!=0){a=(c[h>>2]|0)+260|0;c[a>>2]=(c[a>>2]|0)-((c[c[k>>2]>>2]|0)+(c[n>>2]|0)+20)}d=(c[h>>2]|0)+264|0;b=c[p>>2]|0;a=c[q>>2]|0;if((kl(k,c[d>>2]|0,c[d+4>>2]|0,b,((b|0)<0)<<31>>31,a,((a|0)<0)<<31>>31,o)|0)!=0){a=c[k>>2]|0;if((a|0)==(Yh(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[k>>2]|0)|0)){oc(c[k>>2]|0);c[o>>2]=7}}if((c[o>>2]|0)!=0){a=c[o>>2]|0;i=j;return a|0}a=(c[h>>2]|0)+260|0;c[a>>2]=(c[a>>2]|0)+((c[c[k>>2]>>2]|0)+(c[n>>2]|0)+20);a=c[o>>2]|0;i=j;return a|0}function um(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+48|0;k=q+40|0;p=q+36|0;t=q+32|0;r=q+28|0;m=q+24|0;n=q+20|0;l=q+12|0;h=q+8|0;j=q+4|0;s=q;o=q+16|0;c[k>>2]=a;c[p>>2]=b;c[t>>2]=e;c[r>>2]=f;c[m>>2]=g;if((c[c[k>>2]>>2]|0)!=0){i=q;return}c[n>>2]=$i(c[p>>2]|0,7,l,t)|0;g=c[l>>2]|0;if((c[n>>2]|0)==0){do{if(100==(le(g)|0)){c[j>>2]=ym(c[p>>2]|0,c[l>>2]|0)|0;e=c[p>>2]|0;b=c[j>>2]|0;a=Ee(c[l>>2]|0,0)|0;c[n>>2]=mm(e,b,a,D)|0;c[h>>2]=1;while(1){if((c[n>>2]|0)!=0){break}if((c[h>>2]|0)>(c[(c[p>>2]|0)+24>>2]|0)){break}c[s>>2]=(c[h>>2]|0)-1;if((d[(c[(c[p>>2]|0)+32>>2]|0)+(c[s>>2]|0)>>0]|0|0)==0){c[o>>2]=Fe(c[l>>2]|0,c[h>>2]|0)|0;c[n>>2]=sm(c[p>>2]|0,c[j>>2]|0,c[o>>2]|0,-1,(c[r>>2]|0)+(c[s>>2]<<2)|0)|0;b=Be(c[l>>2]|0,c[h>>2]|0)|0;a=(c[r>>2]|0)+(c[(c[p>>2]|0)+24>>2]<<2)|0;c[a>>2]=(c[a>>2]|0)+b}c[h>>2]=(c[h>>2]|0)+1}if((c[n>>2]|0)==0){c[c[m>>2]>>2]=1;break}Cd(c[l>>2]|0)|0;c[c[k>>2]>>2]=c[n>>2];i=q;return}}while(0);c[n>>2]=Cd(c[l>>2]|0)|0}else{Cd(g)|0}c[c[k>>2]>>2]=c[n>>2];i=q;return}function vm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;j=e+16|0;k=e;g=e+4|0;h=e+8|0;f=e+12|0;c[j>>2]=a;c[k>>2]=b;c[g>>2]=d;if((c[(c[j>>2]|0)+40>>2]|0)!=0){c[c[g>>2]>>2]=0;c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}c[f>>2]=$i(c[j>>2]|0,1,h,k)|0;if((c[f>>2]|0)!=0){a=c[f>>2]|0;i=e;return a|0}if(100==(le(c[h>>2]|0)|0)){a=De(c[h>>2]|0,0)|0;c[c[g>>2]>>2]=a}c[f>>2]=Cd(c[h>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}function wm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;g=f+8|0;h=f;e=f+4|0;c[g>>2]=b;c[h>>2]=d;c[e>>2]=0;Vi(c[g>>2]|0);if((c[h>>2]|0)!=0){xm(e,c[g>>2]|0,2,0)}xm(e,c[g>>2]|0,3,0);xm(e,c[g>>2]|0,4,0);if((a[(c[g>>2]|0)+230>>0]|0)!=0){xm(e,c[g>>2]|0,5,0)}if((a[(c[g>>2]|0)+229>>0]|0)==0){h=c[e>>2]|0;i=f;return h|0}xm(e,c[g>>2]|0,6,0);h=c[e>>2]|0;i=f;return h|0}function xm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;h=k+20|0;f=k;l=k+4|0;m=k+8|0;j=k+12|0;g=k+16|0;c[h>>2]=a;c[f>>2]=b;c[l>>2]=d;c[m>>2]=e;if((c[c[h>>2]>>2]|0)!=0){i=k;return}c[g>>2]=$i(c[f>>2]|0,c[l>>2]|0,j,c[m>>2]|0)|0;if((c[g>>2]|0)==0){le(c[j>>2]|0)|0;c[g>>2]=Cd(c[j>>2]|0)|0}c[c[h>>2]>>2]=c[g>>2];i=k;return}function ym(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=0;if((c[(c[g>>2]|0)+44>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[e>>2]=De(c[f>>2]|0,(c[(c[g>>2]|0)+24>>2]|0)+1|0)|0;a=c[e>>2]|0;i=d;return a|0}function zm(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=i;i=i+64|0;t=n;j=n+48|0;l=n+44|0;g=n+40|0;k=n+36|0;e=n+32|0;h=n+28|0;m=n+52|0;s=n+16|0;r=n+12|0;f=n+8|0;p=n+4|0;o=n+20|0;q=n+24|0;c[j>>2]=b;c[l>>2]=wm(c[j>>2]|0,0)|0;if((c[l>>2]|0)!=0){t=c[l>>2]|0;i=n;return t|0}c[g>>2]=0;c[k>>2]=0;c[e>>2]=0;c[h>>2]=0;c[m>>2]=0;c[t>>2]=c[(c[j>>2]|0)+216>>2];c[s>>2]=wc(7448,t)|0;if((c[s>>2]|0)!=0){c[l>>2]=Df(c[(c[j>>2]|0)+12>>2]|0,c[s>>2]|0,-1,h,0)|0;oc(c[s>>2]|0)}else{c[l>>2]=7}do{if((c[l>>2]|0)==0){c[r>>2]=((c[(c[j>>2]|0)+24>>2]|0)+1<<2)*3;c[g>>2]=mc(c[r>>2]|0)|0;if((c[g>>2]|0)==0){c[l>>2]=7;break}else{aL(c[g>>2]|0,0,c[r>>2]|0)|0;c[k>>2]=(c[g>>2]|0)+((c[(c[j>>2]|0)+24>>2]|0)+1<<2);c[e>>2]=(c[k>>2]|0)+((c[(c[j>>2]|0)+24>>2]|0)+1<<2);break}}}while(0);a:while(1){if((c[l>>2]|0)==0){b=100==(le(c[h>>2]|0)|0)}else{b=0}r=c[j>>2]|0;if(!b){break}c[p>>2]=ym(r,c[h>>2]|0)|0;b=c[j>>2]|0;s=c[p>>2]|0;t=Ee(c[h>>2]|0,0)|0;c[l>>2]=mm(b,s,t,D)|0;aL(c[g>>2]|0,0,(c[(c[j>>2]|0)+24>>2]|0)+1<<2|0)|0;c[f>>2]=0;while(1){if((c[l>>2]|0)!=0){break}if((c[f>>2]|0)>=(c[(c[j>>2]|0)+24>>2]|0)){break}if((d[(c[(c[j>>2]|0)+32>>2]|0)+(c[f>>2]|0)>>0]|0)==0){c[o>>2]=Fe(c[h>>2]|0,(c[f>>2]|0)+1|0)|0;c[l>>2]=sm(c[j>>2]|0,c[p>>2]|0,c[o>>2]|0,c[f>>2]|0,(c[g>>2]|0)+(c[f>>2]<<2)|0)|0;s=Be(c[h>>2]|0,(c[f>>2]|0)+1|0)|0;t=(c[g>>2]|0)+(c[(c[j>>2]|0)+24>>2]<<2)|0;c[t>>2]=(c[t>>2]|0)+s}c[f>>2]=(c[f>>2]|0)+1}if((a[(c[j>>2]|0)+230>>0]|0)!=0){om(l,c[j>>2]|0,c[g>>2]|0)}if((c[l>>2]|0)!=0){yd(c[h>>2]|0)|0;c[h>>2]=0;continue}c[m>>2]=(c[m>>2]|0)+1;c[f>>2]=0;while(1){if((c[f>>2]|0)>(c[(c[j>>2]|0)+24>>2]|0)){continue a}t=(c[k>>2]|0)+(c[f>>2]<<2)|0;c[t>>2]=(c[t>>2]|0)+(c[(c[g>>2]|0)+(c[f>>2]<<2)>>2]|0);c[f>>2]=(c[f>>2]|0)+1}}if((a[r+228>>0]|0)!=0){pm(l,c[j>>2]|0,c[k>>2]|0,c[e>>2]|0,c[m>>2]|0)}oc(c[g>>2]|0);if((c[h>>2]|0)==0){t=c[l>>2]|0;i=n;return t|0}c[q>>2]=yd(c[h>>2]|0)|0;if((c[l>>2]|0)!=0){t=c[l>>2]|0;i=n;return t|0}c[l>>2]=c[q>>2];t=c[l>>2]|0;i=n;return t|0}function Am(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b;e=b+4|0;c[f>>2]=a;c[e>>2]=0;c[d>>2]=Fm(c[f>>2]|0,e)|0;if((c[d>>2]|0)==0){if((c[e>>2]|0)==0){c[d>>2]=267}}i=b;return c[d>>2]|0}function Bm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;e=j+20|0;l=j;h=j+4|0;g=j+8|0;f=j+12|0;k=j+16|0;c[e>>2]=b;c[l>>2]=d;c[g>>2]=8;c[f>>2]=0;c[k>>2]=c[l>>2];c[f>>2]=Dm(k)|0;if((a[c[k>>2]>>0]|0)==44){if((a[(c[k>>2]|0)+1>>0]|0)!=0){c[k>>2]=(c[k>>2]|0)+1;c[g>>2]=Dm(k)|0}}if((a[c[k>>2]>>0]|0)==0){if((c[g>>2]|0)>=2){c[h>>2]=0;if((a[(c[e>>2]|0)+229>>0]|0)==0){Em(h,c[e>>2]|0)}if((c[h>>2]|0)==0){c[h>>2]=Jl(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0)|0}jk(c[e>>2]|0);l=c[h>>2]|0;i=j;return l|0}}c[h>>2]=1;l=c[h>>2]|0;i=j;return l|0}function Cm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;g=h+16|0;j=h;l=h+4|0;f=h+8|0;k=h+12|0;c[j>>2]=b;c[l>>2]=d;c[f>>2]=0;c[k>>2]=0;b=Dm(l)|0;c[(c[j>>2]|0)+48>>2]=b;if((c[(c[j>>2]|0)+48>>2]|0)==1){e=3}else{if((c[(c[j>>2]|0)+48>>2]|0)>16){e=3}}if((e|0)==3){c[(c[j>>2]|0)+48>>2]=8}if((a[(c[j>>2]|0)+229>>0]|0)==0){Em(f,c[j>>2]|0);if((c[f>>2]|0)!=0){c[g>>2]=c[f>>2];l=c[g>>2]|0;i=h;return l|0}}c[f>>2]=$i(c[j>>2]|0,23,k,0)|0;if((c[f>>2]|0)!=0){c[g>>2]=c[f>>2];l=c[g>>2]|0;i=h;return l|0}else{Oe(c[k>>2]|0,1,2)|0;Oe(c[k>>2]|0,2,c[(c[j>>2]|0)+48>>2]|0)|0;le(c[k>>2]|0)|0;c[f>>2]=Cd(c[k>>2]|0)|0;c[g>>2]=c[f>>2];l=c[g>>2]|0;i=h;return l|0}return 0}function Dm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;f=i;i=i+16|0;e=f+8|0;d=f;g=f+4|0;c[e>>2]=b;c[d>>2]=c[c[e>>2]>>2];c[g>>2]=0;while(1){if((a[c[d>>2]>>0]|0)<48){b=5;break}if((a[c[d>>2]>>0]|0)>57){b=5;break}h=(c[g>>2]|0)*10|0;b=c[d>>2]|0;c[d>>2]=b+1;c[g>>2]=h+(a[b>>0]|0)-48}if((b|0)==5){c[c[e>>2]>>2]=c[d>>2];i=f;return c[g>>2]|0}return 0}function Em(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e;g=e+12|0;f=e+8|0;c[g>>2]=b;c[f>>2]=d;d=c[g>>2]|0;b=c[(c[f>>2]|0)+12>>2]|0;j=c[(c[f>>2]|0)+20>>2]|0;c[h>>2]=c[(c[f>>2]|0)+16>>2];c[h+4>>2]=j;Zi(d,b,7368,h);if((c[c[g>>2]>>2]|0)!=0){i=e;return}a[(c[f>>2]|0)+229>>0]=1;i=e;return}function Fm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=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,E=0,F=0,G=0;h=i;i=i+128|0;z=h;k=h+108|0;f=h+104|0;g=h+100|0;t=h+8|0;r=h+16|0;A=h+96|0;B=h+92|0;E=h+88|0;C=h+84|0;v=h+80|0;l=h+76|0;y=h+112|0;j=h+24|0;m=h+40|0;n=h+52|0;o=h+36|0;p=h+48|0;q=h+44|0;w=h+72|0;d=h+56|0;s=h+60|0;e=h+64|0;u=h+68|0;x=h+32|0;c[k>>2]=a;c[f>>2]=b;c[g>>2]=0;a=t;c[a>>2]=0;c[a+4>>2]=0;a=r;c[a>>2]=0;c[a+4>>2]=0;c[A>>2]=0;c[g>>2]=$i(c[k>>2]|0,27,A,0)|0;if((c[g>>2]|0)==0){Oe(c[A>>2]|0,1,c[(c[k>>2]|0)+248>>2]|0)|0;a:while(1){if((c[g>>2]|0)==0){a=(le(c[A>>2]|0)|0)==100}else{a=0}b=c[A>>2]|0;if(!a){break}c[E>>2]=De(b,0)|0;c[C>>2]=0;while(1){if((c[C>>2]|0)>=(c[(c[k>>2]|0)+248>>2]|0)){continue a}b=t;G=c[b>>2]|0;b=c[b+4>>2]|0;F=Gm(c[k>>2]|0,c[E>>2]|0,c[C>>2]|0,g)|0;a=t;c[a>>2]=G^F;c[a+4>>2]=b^D;c[C>>2]=(c[C>>2]|0)+1}}c[B>>2]=Cd(b)|0;if((c[g>>2]|0)==0){c[g>>2]=c[B>>2]}}c[g>>2]=$i(c[k>>2]|0,27,A,0)|0;if((c[g>>2]|0)!=0){a=t;b=a;b=c[b>>2]|0;a=a+4|0;a=c[a>>2]|0;F=r;G=F;G=c[G>>2]|0;F=F+4|0;F=c[F>>2]|0;G=(b|0)==(G|0);F=(a|0)==(F|0);F=G&F;F=F&1;G=c[f>>2]|0;c[G>>2]=F;G=c[g>>2]|0;i=h;return G|0}c[v>>2]=c[c[(c[k>>2]|0)+36>>2]>>2];c[l>>2]=0;c[z>>2]=c[(c[k>>2]|0)+216>>2];c[y>>2]=wc(7448,z)|0;if((c[y>>2]|0)!=0){c[g>>2]=Df(c[(c[k>>2]|0)+12>>2]|0,c[y>>2]|0,-1,l,0)|0;oc(c[y>>2]|0)}else{c[g>>2]=7}b:while(1){if((c[g>>2]|0)==0){z=100==(le(c[l>>2]|0)|0)}else{z=0}y=c[l>>2]|0;if(!z){break}F=Ee(y,0)|0;G=j;c[G>>2]=F;c[G+4>>2]=D;c[m>>2]=ym(c[k>>2]|0,c[l>>2]|0)|0;c[n>>2]=0;while(1){if((c[g>>2]|0)!=0){continue b}if((c[n>>2]|0)>=(c[(c[k>>2]|0)+24>>2]|0)){continue b}c[o>>2]=Fe(c[l>>2]|0,(c[n>>2]|0)+1|0)|0;c[p>>2]=Be(c[l>>2]|0,(c[n>>2]|0)+1|0)|0;c[q>>2]=0;c[g>>2]=jl(c[(c[k>>2]|0)+36>>2]|0,c[m>>2]|0,c[o>>2]|0,c[p>>2]|0,q)|0;c:while(1){if((c[g>>2]|0)!=0){break}c[d>>2]=0;c[s>>2]=0;c[e>>2]=0;c[u>>2]=0;c[g>>2]=tb[c[(c[v>>2]|0)+20>>2]&15](c[q>>2]|0,w,d,s,e,u)|0;if((c[g>>2]|0)!=0){continue}F=r;b=c[F>>2]|0;F=c[F+4>>2]|0;a=j;a=Hm(c[w>>2]|0,c[d>>2]|0,c[m>>2]|0,0,c[a>>2]|0,c[a+4>>2]|0,c[n>>2]|0,c[u>>2]|0)|0;G=r;c[G>>2]=b^a;c[G+4>>2]=F^D;c[x>>2]=1;while(1){if((c[x>>2]|0)>=(c[(c[k>>2]|0)+248>>2]|0)){continue c}if((c[(c[(c[k>>2]|0)+252>>2]|0)+((c[x>>2]|0)*24|0)>>2]|0)<=(c[d>>2]|0)){F=r;b=c[F>>2]|0;F=c[F+4>>2]|0;a=j;a=Hm(c[w>>2]|0,c[(c[(c[k>>2]|0)+252>>2]|0)+((c[x>>2]|0)*24|0)>>2]|0,c[m>>2]|0,c[x>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[n>>2]|0,c[u>>2]|0)|0;G=r;c[G>>2]=b^a;c[G+4>>2]=F^D}c[x>>2]=(c[x>>2]|0)+1}}if((c[q>>2]|0)!=0){ub[c[(c[v>>2]|0)+16>>2]&63](c[q>>2]|0)|0}if((c[g>>2]|0)==101){c[g>>2]=0}c[n>>2]=(c[n>>2]|0)+1}}yd(y)|0;a=t;b=a;b=c[b>>2]|0;a=a+4|0;a=c[a>>2]|0;F=r;G=F;G=c[G>>2]|0;F=F+4|0;F=c[F>>2]|0;G=(b|0)==(G|0);F=(a|0)==(F|0);F=G&F;F=F&1;G=c[f>>2]|0;c[G>>2]=F;G=c[g>>2]|0;i=h;return G|0}function Gm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;o=i;i=i+144|0;n=o+52|0;h=o+40|0;j=o+44|0;m=o+48|0;u=o+64|0;k=o+88|0;l=o+80|0;f=o+32|0;p=o+60|0;g=o+56|0;r=o+16|0;s=o+8|0;q=o;t=o+24|0;c[n>>2]=a;c[h>>2]=b;c[j>>2]=d;c[m>>2]=e;d=f;c[d>>2]=0;c[d+4>>2]=0;c[u+0>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;d=k+0|0;e=d+56|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));c[u+12>>2]=3;a=u+12|0;c[a>>2]=c[a>>2]|16;c[l>>2]=aj(c[n>>2]|0,c[h>>2]|0,c[j>>2]|0,-2,0,0,0,1,k)|0;if((c[l>>2]|0)==0){c[l>>2]=ej(c[n>>2]|0,k,u)|0}if((c[l>>2]|0)!=0){lj(k);a=c[l>>2]|0;b=c[m>>2]|0;c[b>>2]=a;b=f;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=o;return a|0}a:while(1){a=fj(c[n>>2]|0,k)|0;c[l>>2]=a;if(100!=(a|0)){break}c[p>>2]=c[k+48>>2];c[g>>2]=(c[p>>2]|0)+(c[k+52>>2]|0);a=r;c[a>>2]=0;c[a+4>>2]=0;a=s;c[a>>2]=0;c[a+4>>2]=0;a=q;c[a>>2]=0;c[a+4>>2]=0;a=Kj(c[p>>2]|0,r)|0;c[p>>2]=(c[p>>2]|0)+a;while(1){if(!((c[p>>2]|0)>>>0<(c[g>>2]|0)>>>0)){continue a}a=t;c[a>>2]=0;c[a+4>>2]=0;a=Kj(c[p>>2]|0,t)|0;c[p>>2]=(c[p>>2]|0)+a;if(!((c[p>>2]|0)>>>0<(c[g>>2]|0)>>>0)){continue}b=t;a=t;if(!((c[b>>2]|0)==0&(c[b+4>>2]|0)==0|(c[a>>2]|0)==1&(c[a+4>>2]|0)==0)){e=t;e=$K(c[e>>2]|0,c[e+4>>2]|0,2,0)|0;b=q;e=dL(c[b>>2]|0,c[b+4>>2]|0,e|0,D|0)|0;b=q;c[b>>2]=e;c[b+4>>2]=D;b=f;e=c[b>>2]|0;b=c[b+4>>2]|0;d=r;d=Hm(c[k+40>>2]|0,c[k+44>>2]|0,c[h>>2]|0,c[j>>2]|0,c[d>>2]|0,c[d+4>>2]|0,c[s>>2]|0,c[q>>2]|0)|0;a=f;c[a>>2]=e^d;c[a+4>>2]=b^D;continue}a=s;c[a>>2]=0;c[a+4>>2]=0;a=q;c[a>>2]=0;c[a+4>>2]=0;a=t;u=c[p>>2]|0;if((c[a>>2]|0)!=0|(c[a+4>>2]|0)!=0){a=Kj(u,s)|0;c[p>>2]=(c[p>>2]|0)+a;continue}else{b=Kj(u,t)|0;c[p>>2]=(c[p>>2]|0)+b;b=t;a=r;b=dL(c[a>>2]|0,c[a+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;a=r;c[a>>2]=b;c[a+4>>2]=D;continue}}}lj(k);a=c[l>>2]|0;b=c[m>>2]|0;c[b>>2]=a;b=f;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=o;return a|0}function Hm(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;p=i;i=i+48|0;o=p+36|0;n=p+20|0;t=p+40|0;s=p+16|0;u=p+8|0;r=p+24|0;q=p+28|0;m=p+32|0;l=p;c[o>>2]=b;c[n>>2]=d;c[t>>2]=e;c[s>>2]=f;e=u;c[e>>2]=g;c[e+4>>2]=h;c[r>>2]=j;c[q>>2]=k;e=u;d=c[e+4>>2]|0;b=l;c[b>>2]=c[e>>2];c[b+4>>2]=d;b=l;b=bL(c[b>>2]|0,c[b+4>>2]|0,3)|0;d=c[t>>2]|0;d=dL(b|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;b=l;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,D|0)|0;b=l;c[b>>2]=d;c[b+4>>2]=D;b=l;b=bL(c[b>>2]|0,c[b+4>>2]|0,3)|0;d=c[s>>2]|0;d=dL(b|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;b=l;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,D|0)|0;b=l;c[b>>2]=d;c[b+4>>2]=D;b=l;b=bL(c[b>>2]|0,c[b+4>>2]|0,3)|0;d=c[r>>2]|0;d=dL(b|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;b=l;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,D|0)|0;b=l;c[b>>2]=d;c[b+4>>2]=D;b=l;b=bL(c[b>>2]|0,c[b+4>>2]|0,3)|0;d=c[q>>2]|0;d=dL(b|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;b=l;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,D|0)|0;b=l;c[b>>2]=d;c[b+4>>2]=D;c[m>>2]=0;while(1){h=l;j=c[h>>2]|0;h=c[h+4>>2]|0;if((c[m>>2]|0)>=(c[n>>2]|0)){break}u=bL(j|0,h|0,3)|0;t=a[(c[o>>2]|0)+(c[m>>2]|0)>>0]|0;t=dL(u|0,D|0,t|0,((t|0)<0)<<31>>31|0)|0;u=l;t=dL(c[u>>2]|0,c[u+4>>2]|0,t|0,D|0)|0;u=l;c[u>>2]=t;c[u+4>>2]=D;c[m>>2]=(c[m>>2]|0)+1}D=h;i=p;return j|0}function Im(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;h=g+8|0;f=g;j=g+4|0;c[h>>2]=b;c[f>>2]=0;c[j>>2]=c[(c[h>>2]|0)+12>>2];a:do{if((c[j>>2]|0)==0){a[(c[h>>2]|0)+6>>0]=1}else{do{if((d[(c[h>>2]|0)+7>>0]|0|0)==0){Cd(c[(c[h>>2]|0)+8>>2]|0)|0}xk(c[h>>2]|0,c[j>>2]|0,f);a[(c[h>>2]|0)+6>>0]=a[(c[j>>2]|0)+32>>0]|0;a[(c[h>>2]|0)+7>>0]=1;c[(c[h>>2]|0)+88>>2]=1;l=(c[j>>2]|0)+24|0;k=c[l+4>>2]|0;b=(c[h>>2]|0)+32|0;c[b>>2]=c[l>>2];c[b+4>>2]=k;if((d[(c[h>>2]|0)+6>>0]|0|0)!=0){break a}}while((_k(c[h>>2]|0,f)|0)!=0)}}while(0);if((c[f>>2]|0)!=0){l=c[f>>2]|0;i=g;return l|0}if((d[(c[h>>2]|0)+52>>0]|0|0)==0){k=(c[h>>2]|0)+32|0;j=c[k+4>>2]|0;l=(c[h>>2]|0)+80|0;b=c[l+4>>2]|0;if(!((j|0)>(b|0)|((j|0)==(b|0)?(c[k>>2]|0)>>>0>(c[l>>2]|0)>>>0:0))){e=10}}else{e=10}if((e|0)==10){if((d[(c[h>>2]|0)+52>>0]|0|0)==0){l=c[f>>2]|0;i=g;return l|0}k=(c[h>>2]|0)+32|0;j=c[k+4>>2]|0;l=(c[h>>2]|0)+72|0;b=c[l+4>>2]|0;if(!((j|0)<(b|0)|((j|0)==(b|0)?(c[k>>2]|0)>>>0<(c[l>>2]|0)>>>0:0))){l=c[f>>2]|0;i=g;return l|0}}a[(c[h>>2]|0)+6>>0]=1;l=c[f>>2]|0;i=g;return l|0}function Jm(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b;e=b+4|0;c[f>>2]=a;c[d>>2]=c[f>>2];while(1){if((c[d>>2]|0)==0){break}if((c[(c[d>>2]|0)+12>>2]|0)==0){if((c[(c[d>>2]|0)+16>>2]|0)==0){break}}a=c[d>>2]|0;if((c[(c[d>>2]|0)+12>>2]|0)!=0){a=c[a+12>>2]|0}else{a=c[a+16>>2]|0}c[d>>2]=a}a:while(1){if((c[d>>2]|0)==0){break}c[e>>2]=c[(c[d>>2]|0)+8>>2];hn(c[d>>2]|0);if((c[e>>2]|0)!=0){if((c[d>>2]|0)==(c[(c[e>>2]|0)+12>>2]|0)){if((c[(c[e>>2]|0)+16>>2]|0)!=0){c[d>>2]=c[(c[e>>2]|0)+16>>2];while(1){if((c[d>>2]|0)==0){continue a}if((c[(c[d>>2]|0)+12>>2]|0)==0){if((c[(c[d>>2]|0)+16>>2]|0)==0){continue a}}a=c[d>>2]|0;if((c[(c[d>>2]|0)+12>>2]|0)!=0){a=c[a+12>>2]|0}else{a=c[a+16>>2]|0}c[d>>2]=a}}}}c[d>>2]=c[e>>2]}i=b;return}function Km(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;f=e+8|0;g=e+20|0;h=e;j=e+16|0;c[g>>2]=a;a=h;c[a>>2]=b;c[a+4>>2]=d;if((c[g>>2]|0)!=0){c[j>>2]=Ye(c[g>>2]|0)|0;if((c[j>>2]|0)==1){a=Qd(c[g>>2]|0)|0;b=f;c[b>>2]=a;c[b+4>>2]=D;b=f;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=e;return a|0}}j=h;a=c[j+4>>2]|0;b=f;c[b>>2]=c[j>>2];c[b+4>>2]=a;b=f;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=e;return a|0}function Lm(a,b,d,e,f,g,h,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;m=i;i=i+48|0;n=m;y=m+40|0;x=m+36|0;w=m+32|0;v=m+28|0;u=m+24|0;t=m+44|0;p=m+12|0;s=m+8|0;q=m+4|0;o=m+16|0;r=m+20|0;c[y>>2]=a;c[x>>2]=b;c[w>>2]=d;c[v>>2]=e;c[u>>2]=f;c[t>>2]=g;c[p>>2]=h;c[s>>2]=j;c[q>>2]=k;c[o>>2]=l;c[r>>2]=Xm(c[y>>2]|0,c[x>>2]|0,c[w>>2]|0,c[v>>2]|0,c[u>>2]|0,c[t>>2]|0,c[p>>2]|0,c[s>>2]|0,c[q>>2]|0)|0;if((c[r>>2]|0)==0){if((c[c[q>>2]>>2]|0)!=0){c[r>>2]=Ym(c[q>>2]|0,12)|0;if((c[r>>2]|0)==0){c[r>>2]=Zm(c[c[q>>2]>>2]|0,12)|0}}}if((c[r>>2]|0)==0){y=c[r>>2]|0;i=m;return y|0}Jm(c[c[q>>2]>>2]|0);c[c[q>>2]>>2]=0;if((c[r>>2]|0)==18){c[n>>2]=12;y=wc(7512,n)|0;c[c[o>>2]>>2]=y;c[r>>2]=1;y=c[r>>2]|0;i=m;return y|0}if((c[r>>2]|0)!=1){y=c[r>>2]|0;i=m;return y|0}c[n>>2]=c[p>>2];y=wc(7568,n)|0;c[c[o>>2]>>2]=y;y=c[r>>2]|0;i=m;return y|0}function Mm(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+48|0;j=f+36|0;o=f+32|0;e=f+28|0;h=f+24|0;n=f+20|0;g=f+16|0;l=f+8|0;b=f+4|0;k=f;m=f+12|0;c[j>>2]=a;c[o>>2]=c[c[j>>2]>>2];c[e>>2]=0;c[h>>2]=0;c[n>>2]=0;Nm(c[j>>2]|0,c[(c[j>>2]|0)+12>>2]|0,h,n,e);do{if((c[e>>2]|0)==0){if((c[h>>2]|0)>1){if((d[(c[o>>2]|0)+228>>0]|0|0)!=0){c[g>>2]=mc(((c[h>>2]|0)*24|0)+(c[n>>2]<<2<<1)|0)|0;c[l>>2]=(c[g>>2]|0)+((c[h>>2]|0)*24|0);if((c[g>>2]|0)==0){c[e>>2]=7;break}c[k>>2]=c[g>>2];c[m>>2]=c[l>>2];Om(c[j>>2]|0,0,c[(c[j>>2]|0)+12>>2]|0,k,m,e);c[h>>2]=((c[k>>2]|0)-(c[g>>2]|0)|0)/24|0;c[n>>2]=((c[m>>2]|0)-(c[l>>2]|0)|0)/4|0;a:do{if((c[e>>2]|0)==0){c[e>>2]=Pm(c[j>>2]|0,0,c[g>>2]|0,c[h>>2]|0)|0;c[b>>2]=0;while(1){if((c[e>>2]|0)!=0){break a}if((c[b>>2]|0)>=(c[n>>2]|0)){break a}c[e>>2]=Pm(c[j>>2]|0,c[(c[l>>2]|0)+(c[b>>2]<<2)>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;c[b>>2]=(c[b>>2]|0)+1}}}while(0);oc(c[g>>2]|0)}}}}while(0);Qm(c[j>>2]|0,c[(c[j>>2]|0)+12>>2]|0,e);i=f;return c[e>>2]|0}function Nm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+48|0;n=j+32|0;g=j+28|0;o=j+24|0;m=j+20|0;h=j+16|0;p=j+8|0;q=j+4|0;l=j;k=j+12|0;c[n>>2]=a;c[g>>2]=b;c[o>>2]=d;c[m>>2]=e;c[h>>2]=f;if((c[g>>2]|0)==0){i=j;return}if(0!=(c[c[h>>2]>>2]|0)){i=j;return}f=c[g>>2]|0;if((c[c[g>>2]>>2]|0)!=5){a=c[m>>2]|0;c[a>>2]=(c[a>>2]|0)+((c[f>>2]|0)==4&1);Nm(c[n>>2]|0,c[(c[g>>2]|0)+12>>2]|0,c[o>>2]|0,c[m>>2]|0,c[h>>2]|0);Nm(c[n>>2]|0,c[(c[g>>2]|0)+16>>2]|0,c[o>>2]|0,c[m>>2]|0,c[h>>2]|0);i=j;return}c[q>>2]=c[(c[f+20>>2]|0)+48>>2];a=c[o>>2]|0;c[a>>2]=(c[a>>2]|0)+(c[q>>2]|0);c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[q>>2]|0)){l=9;break}c[l>>2]=(c[(c[g>>2]|0)+20>>2]|0)+56+((c[p>>2]|0)*24|0);c[k>>2]=Vm(c[n>>2]|0,c[c[l>>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0,c[(c[l>>2]|0)+8>>2]|0,(c[l>>2]|0)+20|0)|0;if((c[k>>2]|0)!=0){l=7;break}c[p>>2]=(c[p>>2]|0)+1}if((l|0)==7){c[c[h>>2]>>2]=c[k>>2];i=j;return}else if((l|0)==9){c[(c[(c[g>>2]|0)+20>>2]|0)+44>>2]=-1;i=j;return}}function Om(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;m=n+32|0;l=n+28|0;h=n+24|0;k=n+20|0;o=n+16|0;j=n+8|0;q=n+4|0;p=n;r=n+12|0;c[m>>2]=a;c[l>>2]=b;c[h>>2]=d;c[k>>2]=e;c[o>>2]=f;c[j>>2]=g;if((c[c[j>>2]>>2]|0)!=0){i=n;return}g=c[h>>2]|0;if((c[c[h>>2]>>2]|0)==5){c[q>>2]=c[g+20>>2];c[p>>2]=0;while(1){if((c[c[j>>2]>>2]|0)!=0){p=13;break}if((c[p>>2]|0)>=(c[(c[q>>2]|0)+48>>2]|0)){p=13;break}b=c[k>>2]|0;a=c[b>>2]|0;c[b>>2]=a+24;c[r>>2]=a;c[c[r>>2]>>2]=c[q>>2];c[(c[r>>2]|0)+4>>2]=c[p>>2];c[(c[r>>2]|0)+12>>2]=c[l>>2];c[(c[r>>2]|0)+8>>2]=(c[q>>2]|0)+56+((c[p>>2]|0)*24|0);c[(c[r>>2]|0)+20>>2]=c[(c[q>>2]|0)+52>>2];a=Um(c[m>>2]|0,c[(c[(c[r>>2]|0)+8>>2]|0)+20>>2]|0,(c[r>>2]|0)+16|0)|0;c[c[j>>2]>>2]=a;c[p>>2]=(c[p>>2]|0)+1}if((p|0)==13){i=n;return}}if((c[g>>2]|0)==2){i=n;return}if((c[c[h>>2]>>2]|0)==4){c[l>>2]=c[(c[h>>2]|0)+12>>2];c[c[c[o>>2]>>2]>>2]=c[l>>2];a=c[o>>2]|0;c[a>>2]=(c[a>>2]|0)+4}Om(c[m>>2]|0,c[l>>2]|0,c[(c[h>>2]|0)+12>>2]|0,c[k>>2]|0,c[o>>2]|0,c[j>>2]|0);if((c[c[h>>2]>>2]|0)==4){c[l>>2]=c[(c[h>>2]|0)+16>>2];c[c[c[o>>2]>>2]>>2]=c[l>>2];a=c[o>>2]|0;c[a>>2]=(c[a>>2]|0)+4}Om(c[m>>2]|0,c[l>>2]|0,c[(c[h>>2]|0)+16>>2]|0,c[k>>2]|0,c[o>>2]|0,c[j>>2]|0);i=n;return}function Pm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;t=i;i=i+80|0;h=t+76|0;m=t+72|0;f=t+68|0;r=t+64|0;u=t+60|0;z=t+56|0;p=t+52|0;j=t+48|0;q=t+44|0;B=t+40|0;v=t+36|0;n=t+12|0;o=t;s=t+4|0;k=t+8|0;l=t+16|0;w=t+20|0;x=t+24|0;y=t+28|0;A=t+32|0;c[m>>2]=a;c[f>>2]=b;c[r>>2]=d;c[u>>2]=e;c[z>>2]=c[c[m>>2]>>2];c[p>>2]=0;c[j>>2]=0;c[B>>2]=0;c[v>>2]=0;c[n>>2]=0;c[o>>2]=1;if((c[(c[z>>2]|0)+40>>2]|0)!=0){c[h>>2]=0;a=c[h>>2]|0;i=t;return a|0}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[u>>2]|0)){break}if((c[(c[r>>2]|0)+((c[q>>2]|0)*24|0)+12>>2]|0)==(c[f>>2]|0)){c[B>>2]=(c[B>>2]|0)+(c[(c[r>>2]|0)+((c[q>>2]|0)*24|0)+16>>2]|0);c[v>>2]=(c[v>>2]|0)+1}c[q>>2]=(c[q>>2]|0)+1}if((c[B>>2]|0)!=0){if((c[v>>2]|0)>=2){c[j>>2]=Rm(c[m>>2]|0,p)|0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[v>>2]|0)){break}if((c[j>>2]|0)!=0){break}c[k>>2]=0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[u>>2]|0)){break}do{if((c[(c[r>>2]|0)+((c[s>>2]|0)*24|0)+8>>2]|0)!=0){if((c[(c[r>>2]|0)+((c[s>>2]|0)*24|0)+12>>2]|0)==(c[f>>2]|0)){if((c[k>>2]|0)!=0){if((c[(c[r>>2]|0)+((c[s>>2]|0)*24|0)+16>>2]|0)>=(c[(c[k>>2]|0)+16>>2]|0)){break}}c[k>>2]=(c[r>>2]|0)+((c[s>>2]|0)*24|0)}}}while(0);c[s>>2]=(c[s>>2]|0)+1}if((c[q>>2]|0)!=0){if((c[(c[k>>2]|0)+16>>2]|0)>=($(((c[n>>2]|0)+((c[o>>2]|0)/4|0)-1|0)/((c[o>>2]|0)/4|0|0)|0,c[p>>2]|0)|0)){c[l>>2]=c[(c[k>>2]|0)+8>>2];c[j>>2]=Sm(c[m>>2]|0,c[l>>2]|0,c[(c[k>>2]|0)+20>>2]|0)|0;Tk(c[(c[l>>2]|0)+20>>2]|0);c[(c[l>>2]|0)+20>>2]=0}else{g=25}}else{g=25}do{if((g|0)==25){g=0;if((c[q>>2]|0)<12){c[o>>2]=c[o>>2]<<2}if((c[q>>2]|0)!=0){if((c[(c[c[k>>2]>>2]|0)+48>>2]|0)<=1){break}if((c[q>>2]|0)==((c[v>>2]|0)-1|0)){break}}c[w>>2]=c[(c[k>>2]|0)+8>>2];c[x>>2]=0;c[y>>2]=0;c[j>>2]=Mk(c[z>>2]|0,c[w>>2]|0,c[(c[k>>2]|0)+20>>2]|0,x,y)|0;if((c[j>>2]|0)==0){Nk(c[z>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0,c[y>>2]|0,c[x>>2]|0);c[A>>2]=Tm(c[c[c[k>>2]>>2]>>2]|0,c[(c[c[k>>2]>>2]|0)+4>>2]|0)|0;if((c[q>>2]|0)!=0){if((c[A>>2]|0)>=(c[n>>2]|0)){break}}c[n>>2]=c[A>>2]}}}while(0);c[(c[k>>2]|0)+8>>2]=0;c[q>>2]=(c[q>>2]|0)+1}c[h>>2]=c[j>>2];a=c[h>>2]|0;i=t;return a|0}}c[h>>2]=0;a=c[h>>2]|0;i=t;return a|0}function Qm(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;j=g+16|0;h=g;k=g+4|0;m=g+8|0;l=g+12|0;c[j>>2]=b;c[h>>2]=e;c[k>>2]=f;if((c[h>>2]|0)==0){i=g;return}if(0!=(c[c[k>>2]>>2]|0)){i=g;return}if((c[c[h>>2]>>2]|0)!=5){Qm(c[j>>2]|0,c[(c[h>>2]|0)+12>>2]|0,c[k>>2]|0);Qm(c[j>>2]|0,c[(c[h>>2]|0)+16>>2]|0,c[k>>2]|0);if((d[(c[(c[h>>2]|0)+12>>2]|0)+34>>0]|0|0)!=0){f=(d[(c[(c[h>>2]|0)+16>>2]|0)+34>>0]|0|0)!=0}else{f=0}a[(c[h>>2]|0)+34>>0]=f&1;i=g;return}c[l>>2]=c[(c[(c[h>>2]|0)+20>>2]|0)+48>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[l>>2]|0)){break}if((c[(c[(c[h>>2]|0)+20>>2]|0)+56+((c[m>>2]|0)*24|0)+16>>2]|0)==0){break}c[m>>2]=(c[m>>2]|0)+1}a[(c[h>>2]|0)+34>>0]=(c[m>>2]|0)==(c[l>>2]|0);b=Jk(c[j>>2]|0,1,c[(c[h>>2]|0)+20>>2]|0)|0;c[c[k>>2]>>2]=b;i=g;return}function Rm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+48|0;e=j+44|0;g=j+40|0;h=j+36|0;f=j+32|0;l=j+28|0;m=j+24|0;d=j+8|0;k=j;o=j+16|0;n=j+20|0;c[g>>2]=a;c[h>>2]=b;do{if((c[(c[g>>2]|0)+60>>2]|0)==0){c[l>>2]=c[c[g>>2]>>2];a=d;c[a>>2]=0;c[a+4>>2]=0;a=k;c[a>>2]=0;c[a+4>>2]=0;c[f>>2]=sl(c[l>>2]|0,m)|0;if((c[f>>2]|0)!=0){c[e>>2]=c[f>>2];a=c[e>>2]|0;i=j;return a|0}c[n>>2]=ye(c[m>>2]|0,0)|0;a=Be(c[m>>2]|0,0)|0;c[o>>2]=(c[n>>2]|0)+a;a=Kj(c[n>>2]|0,d)|0;c[n>>2]=(c[n>>2]|0)+a;while(1){if(!((c[n>>2]|0)>>>0<(c[o>>2]|0)>>>0)){break}a=Kj(c[n>>2]|0,k)|0;c[n>>2]=(c[n>>2]|0)+a}a=d;if(!((c[a>>2]|0)==0&(c[a+4>>2]|0)==0)){a=k;if(!((c[a>>2]|0)==0&(c[a+4>>2]|0)==0)){n=d;a=c[n+4>>2]|0;o=(c[g>>2]|0)+64|0;c[o>>2]=c[n>>2];c[o+4>>2]=a;o=k;a=d;a=lL(c[o>>2]|0,c[o+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;o=c[(c[l>>2]|0)+236>>2]|0;o=dL(a|0,D|0,o|0,((o|0)<0)<<31>>31|0)|0;a=c[(c[l>>2]|0)+236>>2]|0;a=lL(o|0,D|0,a|0,((a|0)<0)<<31>>31|0)|0;c[(c[g>>2]|0)+60>>2]=a;c[f>>2]=Cd(c[m>>2]|0)|0;if((c[f>>2]|0)==0){break}c[e>>2]=c[f>>2];a=c[e>>2]|0;i=j;return a|0}}Cd(c[m>>2]|0)|0;c[e>>2]=267;a=c[e>>2]|0;i=j;return a|0}}while(0);c[c[h>>2]>>2]=c[(c[g>>2]|0)+60>>2];c[e>>2]=0;a=c[e>>2]|0;i=j;return a|0}function Sm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;j=e;g=e+4|0;k=e+8|0;h=e+12|0;c[j>>2]=a;c[g>>2]=b;c[k>>2]=d;c[h>>2]=mc(16)|0;if((c[h>>2]|0)!=0){a=c[h>>2]|0;c[a+0>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[c[h>>2]>>2]=c[g>>2];c[(c[h>>2]|0)+8>>2]=c[(c[j>>2]|0)+24>>2];c[(c[h>>2]|0)+4>>2]=c[k>>2];c[(c[j>>2]|0)+24>>2]=c[h>>2];c[(c[g>>2]|0)+16>>2]=c[h>>2];c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}else{c[f>>2]=7;a=c[f>>2]|0;i=e;return a|0}return 0}function Tm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;j=e+16|0;k=e;f=e+4|0;h=e+8|0;g=e+12|0;c[j>>2]=b;c[k>>2]=d;c[f>>2]=0;if((c[j>>2]|0)==0){b=c[f>>2]|0;i=e;return b|0}c[h>>2]=(c[j>>2]|0)+(c[k>>2]|0);c[g>>2]=c[j>>2];while(1){if(!((c[g>>2]|0)>>>0<(c[h>>2]|0)>>>0)){break}c[f>>2]=(c[f>>2]|0)+1;do{b=c[g>>2]|0;c[g>>2]=b+1}while((a[b>>0]&128|0)!=0);Pj(0,g)}b=c[f>>2]|0;i=e;return b|0}function Um(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=i;i=i+48|0;r=g+44|0;k=g+40|0;f=g+36|0;o=g+32|0;j=g+28|0;n=g+24|0;h=g+16|0;q=g+12|0;l=g+8|0;m=g;p=g+20|0;c[r>>2]=a;c[k>>2]=b;c[f>>2]=e;c[o>>2]=c[c[r>>2]>>2];c[j>>2]=0;c[h>>2]=0;c[q>>2]=c[(c[o>>2]|0)+236>>2];c[n>>2]=0;while(1){if((c[h>>2]|0)!=0){k=13;break}if((c[n>>2]|0)>=(c[(c[k>>2]|0)+4>>2]|0)){k=13;break}c[l>>2]=c[(c[c[k>>2]>>2]|0)+(c[n>>2]<<2)>>2];a:do{if((c[(c[l>>2]|0)+56>>2]|0)==0){if((d[(c[l>>2]|0)+5>>0]|0|0)==0){b=(c[l>>2]|0)+8|0;a=c[b+4>>2]|0;r=m;c[r>>2]=c[b>>2];c[r+4>>2]=a;while(1){a=m;e=c[a+4>>2]|0;r=(c[l>>2]|0)+16|0;b=c[r+4>>2]|0;if(!((e|0)<(b|0)|((e|0)==(b|0)?(c[a>>2]|0)>>>0<=(c[r>>2]|0)>>>0:0))){break a}r=m;c[h>>2]=Sj(c[o>>2]|0,c[r>>2]|0,c[r+4>>2]|0,0,p,0)|0;if((c[h>>2]|0)!=0){break a}if(((c[p>>2]|0)+35|0)>(c[q>>2]|0)){c[j>>2]=(c[j>>2]|0)+(((c[p>>2]|0)+34|0)/(c[q>>2]|0)|0)}a=m;a=dL(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;r=m;c[r>>2]=a;c[r+4>>2]=D}}}}while(0);c[n>>2]=(c[n>>2]|0)+1}if((k|0)==13){c[c[f>>2]>>2]=c[j>>2];i=g;return c[h>>2]|0}return 0}function Vm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=i;i=i+48|0;n=o+36|0;p=o+32|0;q=o+28|0;r=o+24|0;j=o+20|0;k=o+16|0;h=o+8|0;g=o+4|0;l=o;m=o+12|0;c[n>>2]=a;c[p>>2]=b;c[q>>2]=d;c[r>>2]=e;c[j>>2]=f;c[h>>2]=7;c[k>>2]=mc(56)|0;if((c[k>>2]|0)==0){b=c[k>>2]|0;a=c[j>>2]|0;c[a>>2]=b;a=c[h>>2]|0;i=o;return a|0}c[l>>2]=0;c[m>>2]=c[c[n>>2]>>2];a:do{if((c[r>>2]|0)!=0){c[g>>2]=1;while(1){if((c[l>>2]|0)!=0){break}if((c[g>>2]|0)>=(c[(c[m>>2]|0)+248>>2]|0)){break}if((c[(c[(c[m>>2]|0)+252>>2]|0)+((c[g>>2]|0)*24|0)>>2]|0)==(c[q>>2]|0)){c[l>>2]=1;c[h>>2]=aj(c[m>>2]|0,c[(c[n>>2]|0)+16>>2]|0,c[g>>2]|0,-2,c[p>>2]|0,c[q>>2]|0,0,0,c[k>>2]|0)|0;c[(c[k>>2]|0)+36>>2]=1}c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=1;while(1){if((c[l>>2]|0)!=0){break a}if((c[g>>2]|0)>=(c[(c[m>>2]|0)+248>>2]|0)){break a}if((c[(c[(c[m>>2]|0)+252>>2]|0)+((c[g>>2]|0)*24|0)>>2]|0)==((c[q>>2]|0)+1|0)){c[l>>2]=1;c[h>>2]=aj(c[m>>2]|0,c[(c[n>>2]|0)+16>>2]|0,c[g>>2]|0,-2,c[p>>2]|0,c[q>>2]|0,1,0,c[k>>2]|0)|0;if((c[h>>2]|0)==0){c[h>>2]=Wm(c[m>>2]|0,c[(c[n>>2]|0)+16>>2]|0,c[p>>2]|0,c[q>>2]|0,c[k>>2]|0)|0}}c[g>>2]=(c[g>>2]|0)+1}}}while(0);if((c[l>>2]|0)!=0){b=c[k>>2]|0;a=c[j>>2]|0;c[a>>2]=b;a=c[h>>2]|0;i=o;return a|0}c[h>>2]=aj(c[m>>2]|0,c[(c[n>>2]|0)+16>>2]|0,0,-2,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,0,c[k>>2]|0)|0;c[(c[k>>2]|0)+36>>2]=((c[r>>2]|0)!=0^1)&1;b=c[k>>2]|0;a=c[j>>2]|0;c[a>>2]=b;a=c[h>>2]|0;i=o;return a|0}function Wm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+16|0;l=g;k=g+4|0;j=g+8|0;h=g+12|0;c[m>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;a=Vj(c[m>>2]|0,c[l>>2]|0,0,-2,c[k>>2]|0,c[j>>2]|0,0,0,c[h>>2]|0)|0;i=g;return a|0}function Xm(a,b,d,e,f,g,h,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;v=i;i=i+96|0;u=v+80|0;w=v+76|0;n=v+72|0;o=v+68|0;r=v+64|0;p=v+60|0;q=v+56|0;l=v+16|0;m=v+12|0;t=v+8|0;x=v+4|0;y=v;s=v+20|0;c[w>>2]=a;c[n>>2]=b;c[o>>2]=d;c[r>>2]=e;c[p>>2]=f;c[q>>2]=g;c[l>>2]=h;c[m>>2]=j;c[t>>2]=k;j=s+0|0;k=j+36|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0));c[s>>2]=c[w>>2];c[s+4>>2]=c[n>>2];c[s+8>>2]=c[o>>2];c[s+16>>2]=c[p>>2];c[s+20>>2]=c[q>>2];c[s+12>>2]=c[r>>2];if((c[l>>2]|0)==0){c[c[t>>2]>>2]=0;c[u>>2]=0;a=c[u>>2]|0;i=v;return a|0}if((c[m>>2]|0)<0){c[m>>2]=cL(c[l>>2]|0)|0}c[y>>2]=_m(s,c[l>>2]|0,c[m>>2]|0,c[t>>2]|0,x)|0;if((c[y>>2]|0)==0){if((c[s+32>>2]|0)!=0){c[y>>2]=1}}c[u>>2]=c[y>>2];a=c[u>>2]|0;i=v;return a|0}function Ym(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+48|0;q=r+44|0;k=r+40|0;m=r+36|0;h=r+32|0;l=r+28|0;n=r+24|0;f=r+20|0;j=r+12|0;g=r+8|0;p=r+4|0;o=r;d=r+16|0;c[q>>2]=a;c[k>>2]=b;c[m>>2]=0;c[h>>2]=c[c[q>>2]>>2];c[l>>2]=0;c[n>>2]=c[c[h>>2]>>2];if((c[k>>2]|0)==0){c[m>>2]=1}if((c[m>>2]|0)==0){if((c[n>>2]|0)==3|(c[n>>2]|0)==4){c[f>>2]=mc(c[k>>2]<<2)|0;if(0==(c[f>>2]|0)){c[m>>2]=7}else{aL(c[f>>2]|0,0,c[k>>2]<<2|0)|0}if((c[m>>2]|0)==0){c[g>>2]=c[h>>2];while(1){if((c[c[g>>2]>>2]|0)!=(c[n>>2]|0)){break}c[g>>2]=c[(c[g>>2]|0)+12>>2]}while(1){c[o>>2]=c[(c[g>>2]|0)+8>>2];c[(c[g>>2]|0)+8>>2]=0;if((c[o>>2]|0)!=0){c[(c[o>>2]|0)+12>>2]=0}else{c[h>>2]=0}c[m>>2]=Ym(g,(c[k>>2]|0)-1|0)|0;if((c[m>>2]|0)!=0){break}c[p>>2]=0;while(1){if((c[g>>2]|0)==0){break}if((c[p>>2]|0)>=(c[k>>2]|0)){break}if((c[(c[f>>2]|0)+(c[p>>2]<<2)>>2]|0)==0){c[(c[f>>2]|0)+(c[p>>2]<<2)>>2]=c[g>>2];c[g>>2]=0}else{c[(c[l>>2]|0)+12>>2]=c[(c[f>>2]|0)+(c[p>>2]<<2)>>2];c[(c[l>>2]|0)+16>>2]=c[g>>2];c[(c[(c[l>>2]|0)+12>>2]|0)+8>>2]=c[l>>2];c[(c[(c[l>>2]|0)+16>>2]|0)+8>>2]=c[l>>2];c[g>>2]=c[l>>2];c[l>>2]=c[(c[l>>2]|0)+8>>2];c[(c[g>>2]|0)+8>>2]=0;c[(c[f>>2]|0)+(c[p>>2]<<2)>>2]=0}c[p>>2]=(c[p>>2]|0)+1}if((c[g>>2]|0)!=0){e=24;break}if((c[o>>2]|0)==0){break}c[g>>2]=c[(c[o>>2]|0)+16>>2];while(1){if((c[c[g>>2]>>2]|0)!=(c[n>>2]|0)){break}c[g>>2]=c[(c[g>>2]|0)+12>>2]}c[(c[(c[o>>2]|0)+16>>2]|0)+8>>2]=c[(c[o>>2]|0)+8>>2];b=c[(c[o>>2]|0)+16>>2]|0;if((c[(c[o>>2]|0)+8>>2]|0)!=0){c[(c[(c[o>>2]|0)+8>>2]|0)+12>>2]=b}else{c[h>>2]=b}c[(c[o>>2]|0)+8>>2]=c[l>>2];c[l>>2]=c[o>>2]}if((e|0)==24){Jm(c[g>>2]|0);c[m>>2]=18}a:do{if((c[m>>2]|0)==0){c[g>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[k>>2]|0)){break}do{if((c[(c[f>>2]|0)+(c[j>>2]<<2)>>2]|0)!=0){if((c[g>>2]|0)==0){c[g>>2]=c[(c[f>>2]|0)+(c[j>>2]<<2)>>2];c[(c[g>>2]|0)+8>>2]=0;break}else{c[(c[l>>2]|0)+16>>2]=c[g>>2];c[(c[l>>2]|0)+12>>2]=c[(c[f>>2]|0)+(c[j>>2]<<2)>>2];c[(c[(c[l>>2]|0)+12>>2]|0)+8>>2]=c[l>>2];c[(c[(c[l>>2]|0)+16>>2]|0)+8>>2]=c[l>>2];c[g>>2]=c[l>>2];c[l>>2]=c[(c[l>>2]|0)+8>>2];c[(c[g>>2]|0)+8>>2]=0;break}}}while(0);c[j>>2]=(c[j>>2]|0)+1}c[h>>2]=c[g>>2]}else{c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[k>>2]|0)){break}Jm(c[(c[f>>2]|0)+(c[j>>2]<<2)>>2]|0);c[j>>2]=(c[j>>2]|0)+1}while(1){a=c[l>>2]|0;c[d>>2]=a;if((a|0)==0){break a}c[l>>2]=c[(c[d>>2]|0)+8>>2];oc(c[d>>2]|0)}}}while(0);oc(c[f>>2]|0)}}}if((c[m>>2]|0)==0){b=c[h>>2]|0;a=c[q>>2]|0;c[a>>2]=b;a=c[m>>2]|0;i=r;return a|0}Jm(c[h>>2]|0);c[h>>2]=0;b=c[h>>2]|0;a=c[q>>2]|0;c[a>>2]=b;a=c[m>>2]|0;i=r;return a|0}function Zm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;d=e+4|0;c[f>>2]=a;c[g>>2]=b;c[d>>2]=0;do{if((c[f>>2]|0)!=0){if((c[g>>2]|0)<0){c[d>>2]=18;break}c[d>>2]=Zm(c[(c[f>>2]|0)+12>>2]|0,(c[g>>2]|0)-1|0)|0;if((c[d>>2]|0)==0){c[d>>2]=Zm(c[(c[f>>2]|0)+16>>2]|0,(c[g>>2]|0)-1|0)|0}}}while(0);i=e;return c[d>>2]|0}function _m(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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;r=i;i=i+80|0;v=r+72|0;B=r+68|0;j=r+64|0;q=r+60|0;l=r+56|0;o=r+52|0;g=r+48|0;m=r+44|0;k=r+40|0;x=r+36|0;u=r+12|0;p=r;s=r+4|0;w=r+8|0;y=r+16|0;t=r+20|0;z=r+24|0;A=r+28|0;n=r+32|0;c[v>>2]=a;c[B>>2]=b;c[j>>2]=d;c[q>>2]=e;c[l>>2]=f;c[o>>2]=0;c[g>>2]=0;c[m>>2]=0;c[k>>2]=c[j>>2];c[x>>2]=c[B>>2];c[u>>2]=0;c[p>>2]=1;while(1){if((c[u>>2]|0)!=0){h=38;break}c[s>>2]=0;c[w>>2]=0;c[u>>2]=$m(c[v>>2]|0,c[x>>2]|0,c[k>>2]|0,s,w)|0;if((c[u>>2]|0)==0){if((c[s>>2]|0)!=0){if((c[c[s>>2]>>2]|0)==5){if((c[(c[v>>2]|0)+24>>2]|0)!=0){c[t>>2]=an(40)|0;if((c[t>>2]|0)==0){h=8;break}c[c[t>>2]>>2]=2;c[(c[t>>2]|0)+16>>2]=c[s>>2];c[(c[s>>2]|0)+8>>2]=c[t>>2];if((c[m>>2]|0)!=0){c[(c[t>>2]|0)+12>>2]=c[m>>2];c[(c[m>>2]|0)+8>>2]=c[t>>2]}c[m>>2]=c[t>>2];c[s>>2]=c[g>>2]}else{h=12}}else{h=12}if((h|0)==12){h=0;c[z>>2]=c[c[s>>2]>>2];if((c[z>>2]|0)==5){f=1}else{f=(c[(c[s>>2]|0)+12>>2]|0)!=0}c[y>>2]=f&1;if((c[y>>2]|0)==0){if((c[p>>2]|0)!=0){h=16;break}}if((c[y>>2]|0)!=0){if((c[p>>2]|0)==0){c[A>>2]=an(40)|0;if((c[A>>2]|0)==0){h=20;break}c[c[A>>2]>>2]=3;bn(o,c[g>>2]|0,c[A>>2]|0);c[g>>2]=c[A>>2]}}if((c[g>>2]|0)!=0){if((c[z>>2]|0)==1){if((c[y>>2]|0)==0){if((c[c[g>>2]>>2]|0)!=5){h=29;break}}}if((c[z>>2]|0)!=5){if((c[y>>2]|0)!=0){if((c[c[g>>2]>>2]|0)==1){h=29;break}}}}do{if((c[y>>2]|0)!=0){f=c[s>>2]|0;if((c[o>>2]|0)!=0){c[(c[g>>2]|0)+16>>2]=f;c[(c[s>>2]|0)+8>>2]=c[g>>2];break}else{c[o>>2]=f;break}}else{bn(o,c[g>>2]|0,c[s>>2]|0)}}while(0);c[p>>2]=((c[y>>2]|0)!=0^1)&1}c[g>>2]=c[s>>2]}}c[k>>2]=(c[k>>2]|0)-(c[w>>2]|0);c[x>>2]=(c[x>>2]|0)+(c[w>>2]|0)}if((h|0)==8){Jm(c[s>>2]|0);c[u>>2]=7}else if((h|0)==16){Jm(c[s>>2]|0);c[u>>2]=1}else if((h|0)==20){Jm(c[s>>2]|0);c[u>>2]=7}else if((h|0)==29){Jm(c[s>>2]|0);c[u>>2]=1}else if((h|0)==38){if((c[u>>2]|0)==101){if((c[o>>2]|0)!=0){if((c[p>>2]|0)!=0){c[u>>2]=1}}}do{if((c[u>>2]|0)==101){c[u>>2]=0;if((c[m>>2]|0)!=0){if((c[o>>2]|0)==0){c[u>>2]=1;break}c[n>>2]=c[m>>2];while(1){if((c[(c[n>>2]|0)+12>>2]|0)==0){break}c[n>>2]=c[(c[n>>2]|0)+12>>2]}c[(c[n>>2]|0)+12>>2]=c[o>>2];c[(c[o>>2]|0)+8>>2]=c[n>>2];c[o>>2]=c[m>>2]}}}while(0);c[c[l>>2]>>2]=(c[j>>2]|0)-(c[k>>2]|0)}if((c[u>>2]|0)==0){a=c[o>>2]|0;B=c[q>>2]|0;c[B>>2]=a;B=c[u>>2]|0;i=r;return B|0}Jm(c[o>>2]|0);Jm(c[m>>2]|0);c[o>>2]=0;a=c[o>>2]|0;B=c[q>>2]|0;c[B>>2]=a;B=c[u>>2]|0;i=r;return B|0}function $m(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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;l=i;i=i+80|0;x=l+68|0;m=l+64|0;q=l+60|0;v=l+56|0;p=l+52|0;r=l+48|0;o=l+44|0;t=l+40|0;u=l+36|0;w=l+32|0;D=l+24|0;n=l+20|0;s=l+16|0;C=l+12|0;B=l+8|0;z=l+4|0;A=l+72|0;y=l;j=l+28|0;c[m>>2]=b;c[q>>2]=e;c[v>>2]=f;c[p>>2]=g;c[r>>2]=h;c[D>>2]=0;c[n>>2]=c[q>>2];c[s>>2]=c[v>>2];c[(c[m>>2]|0)+24>>2]=0;while(1){if((c[s>>2]|0)>0){g=(dn(a[c[n>>2]>>0]|0)|0)!=0}else{g=0}h=c[s>>2]|0;if(!g){break}c[s>>2]=h+ -1;c[n>>2]=(c[n>>2]|0)+1}if((h|0)==0){c[x>>2]=101;b=c[x>>2]|0;i=l;return b|0}c[o>>2]=0;while(1){if((c[o>>2]|0)>=4){break}c[C>>2]=7608+(c[o>>2]<<3);if((d[(c[C>>2]|0)+5>>0]|0)==0){if((c[s>>2]|0)>=(d[(c[C>>2]|0)+4>>0]|0)){if(0==(XK(c[n>>2]|0,c[c[C>>2]>>2]|0,d[(c[C>>2]|0)+4>>0]|0)|0)){c[B>>2]=10;c[z>>2]=d[(c[C>>2]|0)+4>>0]|0;a:do{if((d[(c[C>>2]|0)+6>>0]|0)==1){if((a[(c[n>>2]|0)+4>>0]|0)==47){if((a[(c[n>>2]|0)+5>>0]|0)>=48){if((a[(c[n>>2]|0)+5>>0]|0)<=57){c[B>>2]=0;c[z>>2]=5;while(1){if((a[(c[n>>2]|0)+(c[z>>2]|0)>>0]|0)<48){break a}if((a[(c[n>>2]|0)+(c[z>>2]|0)>>0]|0)>57){break a}c[B>>2]=((c[B>>2]|0)*10|0)+((a[(c[n>>2]|0)+(c[z>>2]|0)>>0]|0)-48);c[z>>2]=(c[z>>2]|0)+1}}}}}}while(0);a[A>>0]=a[(c[n>>2]|0)+(c[z>>2]|0)>>0]|0;if((dn(a[A>>0]|0)|0)!=0){k=26;break}if((a[A>>0]|0)==34){k=26;break}if((a[A>>0]|0)==40){k=26;break}if((a[A>>0]|0)==41){k=26;break}if((a[A>>0]|0)==0){k=26;break}}}}c[o>>2]=(c[o>>2]|0)+1}if((k|0)==26){c[D>>2]=an(40)|0;if((c[D>>2]|0)!=0){c[c[D>>2]>>2]=d[(c[C>>2]|0)+6>>0]|0;c[(c[D>>2]|0)+4>>2]=c[B>>2];c[c[p>>2]>>2]=c[D>>2];c[c[r>>2]>>2]=(c[n>>2]|0)-(c[q>>2]|0)+(c[z>>2]|0);c[x>>2]=0;b=c[x>>2]|0;i=l;return b|0}else{c[x>>2]=7;b=c[x>>2]|0;i=l;return b|0}}if((a[c[n>>2]>>0]|0)==34){c[o>>2]=1;while(1){if((c[o>>2]|0)>=(c[s>>2]|0)){break}if((a[(c[n>>2]|0)+(c[o>>2]|0)>>0]|0)==34){break}c[o>>2]=(c[o>>2]|0)+1}c[c[r>>2]>>2]=(c[n>>2]|0)-(c[q>>2]|0)+(c[o>>2]|0)+1;if((c[o>>2]|0)==(c[s>>2]|0)){c[x>>2]=1;b=c[x>>2]|0;i=l;return b|0}else{c[x>>2]=en(c[m>>2]|0,(c[n>>2]|0)+1|0,(c[o>>2]|0)-1|0,c[p>>2]|0)|0;b=c[x>>2]|0;i=l;return b|0}}else{c[t>>2]=c[(c[m>>2]|0)+20>>2];c[u>>2]=0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[m>>2]|0)+16>>2]|0)){break}c[y>>2]=c[(c[(c[m>>2]|0)+8>>2]|0)+(c[o>>2]<<2)>>2];c[j>>2]=cL(c[y>>2]|0)|0;if((c[s>>2]|0)>(c[j>>2]|0)){if((a[(c[n>>2]|0)+(c[j>>2]|0)>>0]|0)==58){if((Tb(c[y>>2]|0,c[n>>2]|0,c[j>>2]|0)|0)==0){k=43;break}}}c[o>>2]=(c[o>>2]|0)+1}if((k|0)==43){c[t>>2]=c[o>>2];c[u>>2]=(c[n>>2]|0)-(c[q>>2]|0)+(c[j>>2]|0)+1}c[w>>2]=fn(c[m>>2]|0,c[t>>2]|0,(c[q>>2]|0)+(c[u>>2]|0)|0,(c[v>>2]|0)-(c[u>>2]|0)|0,c[p>>2]|0,c[r>>2]|0)|0;b=c[r>>2]|0;c[b>>2]=(c[b>>2]|0)+(c[u>>2]|0);c[x>>2]=c[w>>2];b=c[x>>2]|0;i=l;return b|0}return 0}function an(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=mc(c[e>>2]|0)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}aL(c[d>>2]|0,0,c[e>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}function bn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;h=g+12|0;j=g;f=g+4|0;e=g+8|0;c[h>>2]=a;c[j>>2]=b;c[f>>2]=d;c[e>>2]=c[j>>2];while(1){if((c[(c[e>>2]|0)+8>>2]|0)!=0){b=cn(c[(c[e>>2]|0)+8>>2]|0)|0;b=(b|0)<=(cn(c[f>>2]|0)|0)}else{b=0}d=c[(c[e>>2]|0)+8>>2]|0;if(!b){break}c[e>>2]=d}b=c[f>>2]|0;if((d|0)!=0){c[(c[(c[e>>2]|0)+8>>2]|0)+16>>2]=b;c[(c[f>>2]|0)+8>>2]=c[(c[e>>2]|0)+8>>2];j=c[e>>2]|0;a=c[f>>2]|0;a=a+12|0;c[a>>2]=j;a=c[f>>2]|0;j=c[e>>2]|0;j=j+8|0;c[j>>2]=a;i=g;return}else{c[c[h>>2]>>2]=b;j=c[e>>2]|0;a=c[f>>2]|0;a=a+12|0;c[a>>2]=j;a=c[f>>2]|0;j=c[e>>2]|0;j=j+8|0;c[j>>2]=a;i=g;return}}function cn(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;do{if((c[c[e>>2]>>2]|0)==1){c[d>>2]=1}else{if((c[c[e>>2]>>2]|0)==4){c[d>>2]=2;break}else{c[d>>2]=3;break}}}while(0);i=b;return c[d>>2]|0}function dn(b){b=b|0;var c=0,d=0;c=i;i=i+16|0;d=c;a[d>>0]=b;if((a[d>>0]|0)==32){b=1}else{if((a[d>>0]|0)==9){b=1}else{if((a[d>>0]|0)==10){b=1}else{if((a[d>>0]|0)==13){b=1}else{if((a[d>>0]|0)==11){b=1}else{b=(a[d>>0]|0)==12}}}}}i=c;return b&1|0}function en(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;o=i;i=i+96|0;n=o+88|0;t=o+84|0;g=o+80|0;B=o+76|0;l=o+72|0;E=o+68|0;v=o+64|0;m=o+60|0;k=o+56|0;j=o+52|0;r=o+48|0;s=o+44|0;u=o;x=o+4|0;z=o+8|0;A=o+12|0;C=o+20|0;w=o+24|0;D=o+28|0;y=o+32|0;p=o+36|0;q=o+40|0;c[t>>2]=b;c[g>>2]=d;c[B>>2]=e;c[l>>2]=f;c[E>>2]=c[c[t>>2]>>2];c[v>>2]=c[c[E>>2]>>2];c[k>>2]=0;c[j>>2]=0;c[r>>2]=0;c[s>>2]=0;c[o+16>>2]=120;c[u>>2]=0;c[m>>2]=jl(c[E>>2]|0,c[(c[t>>2]|0)+4>>2]|0,c[g>>2]|0,c[B>>2]|0,j)|0;a:do{if((c[m>>2]|0)==0){c[x>>2]=0;while(1){if((c[m>>2]|0)!=0){break}c[A>>2]=0;c[C>>2]=0;c[w>>2]=0;c[D>>2]=0;c[m>>2]=tb[c[(c[v>>2]|0)+20>>2]&15](c[j>>2]|0,z,A,C,w,D)|0;if((c[m>>2]|0)==0){c[k>>2]=gn(c[k>>2]|0,120+((c[x>>2]|0)*24|0)|0)|0;if((c[k>>2]|0)==0){break a}c[r>>2]=gn(c[r>>2]|0,(c[s>>2]|0)+(c[A>>2]|0)|0)|0;if((c[r>>2]|0)==0){break a}c[y>>2]=(c[k>>2]|0)+96+((c[x>>2]|0)*24|0);E=c[y>>2]|0;c[E+0>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;c[E+12>>2]=0;c[E+16>>2]=0;c[E+20>>2]=0;fL((c[r>>2]|0)+(c[s>>2]|0)|0,c[z>>2]|0,c[A>>2]|0)|0;c[s>>2]=(c[s>>2]|0)+(c[A>>2]|0);c[(c[y>>2]|0)+4>>2]=c[A>>2];if((c[w>>2]|0)<(c[B>>2]|0)){f=(a[(c[g>>2]|0)+(c[w>>2]|0)>>0]|0)==42}else{f=0}c[(c[y>>2]|0)+8>>2]=f&1;if((c[C>>2]|0)>0){f=(a[(c[g>>2]|0)+((c[C>>2]|0)-1)>>0]|0)==94}else{f=0}c[(c[y>>2]|0)+12>>2]=f&1;c[u>>2]=(c[x>>2]|0)+1}c[x>>2]=(c[x>>2]|0)+1}ub[c[(c[v>>2]|0)+16>>2]&63](c[j>>2]|0)|0;c[j>>2]=0;h=14}else{h=14}}while(0);do{if((h|0)==14){if((c[m>>2]|0)==101){c[q>>2]=0;c[k>>2]=gn(c[k>>2]|0,120+((c[u>>2]|0)*24|0)+(c[s>>2]|0)|0)|0;if((c[k>>2]|0)==0){break}aL(c[k>>2]|0,0,(c[k>>2]|0)+96-(c[k>>2]|0)|0)|0;c[c[k>>2]>>2]=5;c[(c[k>>2]|0)+20>>2]=(c[k>>2]|0)+40;c[(c[(c[k>>2]|0)+20>>2]|0)+52>>2]=c[(c[t>>2]|0)+20>>2];c[(c[(c[k>>2]|0)+20>>2]|0)+48>>2]=c[u>>2];c[q>>2]=(c[(c[k>>2]|0)+20>>2]|0)+56+((c[u>>2]|0)*24|0);if((c[r>>2]|0)!=0){fL(c[q>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;oc(c[r>>2]|0)}c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[(c[(c[k>>2]|0)+20>>2]|0)+48>>2]|0)){break}c[(c[(c[k>>2]|0)+20>>2]|0)+56+((c[p>>2]|0)*24|0)>>2]=c[q>>2];c[q>>2]=(c[q>>2]|0)+(c[(c[(c[k>>2]|0)+20>>2]|0)+56+((c[p>>2]|0)*24|0)+4>>2]|0);c[p>>2]=(c[p>>2]|0)+1}c[m>>2]=0}c[c[l>>2]>>2]=c[k>>2];c[n>>2]=c[m>>2];E=c[n>>2]|0;i=o;return E|0}}while(0);if((c[j>>2]|0)!=0){ub[c[(c[v>>2]|0)+16>>2]&63](c[j>>2]|0)|0}oc(c[r>>2]|0);oc(c[k>>2]|0);c[c[l>>2]>>2]=0;c[n>>2]=7;E=c[n>>2]|0;i=o;return E|0}function fn(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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;m=i;i=i+80|0;A=m+68|0;n=m+64|0;B=m+60|0;r=m+56|0;k=m+52|0;y=m+48|0;z=m+44|0;w=m+40|0;l=m+36|0;x=m+32|0;u=m+24|0;t=m+20|0;p=m+16|0;o=m+12|0;j=m+8|0;q=m+4|0;v=m;s=m+28|0;c[A>>2]=b;c[n>>2]=d;c[B>>2]=e;c[r>>2]=f;c[k>>2]=g;c[y>>2]=h;c[z>>2]=c[c[A>>2]>>2];c[w>>2]=c[c[z>>2]>>2];c[u>>2]=0;c[t>>2]=0;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[r>>2]|0)){break}if((a[(c[B>>2]|0)+(c[t>>2]|0)>>0]|0)==42){break}if((a[(c[B>>2]|0)+(c[t>>2]|0)>>0]|0)==34){break}c[t>>2]=(c[t>>2]|0)+1}c[c[y>>2]>>2]=c[t>>2];c[l>>2]=jl(c[z>>2]|0,c[(c[A>>2]|0)+4>>2]|0,c[B>>2]|0,c[t>>2]|0,x)|0;if((c[l>>2]|0)!=0){d=c[u>>2]|0;b=c[k>>2]|0;c[b>>2]=d;b=c[l>>2]|0;i=m;return b|0}c[o>>2]=0;c[j>>2]=0;c[q>>2]=0;c[v>>2]=0;c[l>>2]=tb[c[(c[w>>2]|0)+20>>2]&15](c[x>>2]|0,p,o,j,q,v)|0;if((c[l>>2]|0)==0){c[s>>2]=120+(c[o>>2]|0);c[u>>2]=an(c[s>>2]|0)|0;a:do{if((c[u>>2]|0)!=0){c[c[u>>2]>>2]=5;c[(c[u>>2]|0)+20>>2]=(c[u>>2]|0)+40;c[(c[(c[u>>2]|0)+20>>2]|0)+48>>2]=1;c[(c[(c[u>>2]|0)+20>>2]|0)+52>>2]=c[n>>2];c[(c[(c[u>>2]|0)+20>>2]|0)+60>>2]=c[o>>2];c[(c[(c[u>>2]|0)+20>>2]|0)+56>>2]=(c[(c[u>>2]|0)+20>>2]|0)+80;fL(c[(c[(c[u>>2]|0)+20>>2]|0)+56>>2]|0,c[p>>2]|0,c[o>>2]|0)|0;if((c[q>>2]|0)<(c[r>>2]|0)){if((a[(c[B>>2]|0)+(c[q>>2]|0)>>0]|0)==42){c[(c[(c[u>>2]|0)+20>>2]|0)+64>>2]=1;c[q>>2]=(c[q>>2]|0)+1}}while(1){if((c[j>>2]|0)>0){if((a[(c[B>>2]|0)+((c[j>>2]|0)-1)>>0]|0)==45){c[(c[A>>2]|0)+24>>2]=1;c[j>>2]=(c[j>>2]|0)+ -1;continue}}if((c[(c[A>>2]|0)+12>>2]|0)==0){break a}if((c[j>>2]|0)<=0){break a}if((a[(c[B>>2]|0)+((c[j>>2]|0)-1)>>0]|0)!=94){break a}c[(c[(c[u>>2]|0)+20>>2]|0)+68>>2]=1;c[j>>2]=(c[j>>2]|0)+ -1}}else{c[l>>2]=7}}while(0);c[c[y>>2]>>2]=c[q>>2]}else{if((c[t>>2]|0)!=0){if((c[l>>2]|0)==101){c[l>>2]=0}}}ub[c[(c[w>>2]|0)+16>>2]&63](c[x>>2]|0)|0;d=c[u>>2]|0;b=c[k>>2]|0;c[b>>2]=d;b=c[l>>2]|0;i=m;return b|0}function gn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=qc(c[f>>2]|0,c[g>>2]|0)|0;if((c[e>>2]|0)!=0){g=c[e>>2]|0;i=d;return g|0}oc(c[f>>2]|0);g=c[e>>2]|0;i=d;return g|0}function hn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jn(c[(c[d>>2]|0)+20>>2]|0);oc(c[(c[d>>2]|0)+36>>2]|0);oc(c[d>>2]|0);i=b;return}function jn(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((c[e>>2]|0)==0){i=b;return}oc(c[c[e>>2]>>2]|0);zk(c[e>>2]|0);f=(c[e>>2]|0)+0|0;a=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(a|0));c[d>>2]=0;while(1){if((c[d>>2]|0)>=(c[(c[e>>2]|0)+48>>2]|0)){break}Tk(c[(c[e>>2]|0)+56+((c[d>>2]|0)*24|0)+20>>2]|0);c[(c[e>>2]|0)+56+((c[d>>2]|0)*24|0)+20>>2]=0;c[d>>2]=(c[d>>2]|0)+1}i=b;return}function kn(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;b=d+8|0;e=d;f=d+4|0;c[b>>2]=a;c[e>>2]=c[(c[b>>2]|0)+24>>2];while(1){if((c[e>>2]|0)==0){break}c[f>>2]=c[(c[e>>2]|0)+8>>2];Wi(c[(c[e>>2]|0)+12>>2]|0);oc(c[e>>2]|0);c[e>>2]=c[f>>2]}c[(c[b>>2]|0)+24>>2]=0;i=d;return}function ln(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;c[g>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;if((Uf()|0)<3008002){i=e;return}b=c[f+4>>2]|0;a=(c[g>>2]|0)+48|0;c[a>>2]=c[f>>2];c[a+4>>2]=b;i=e;return}function mn(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0;l=i;i=i+256|0;N=l;J=l+236|0;U=l+232|0;da=l+228|0;Z=l+224|0;z=l+220|0;m=l+216|0;p=l+212|0;R=l+208|0;k=l+204|0;o=l+200|0;H=l+196|0;V=l+192|0;O=l+188|0;T=l+184|0;r=l+180|0;x=l+176|0;B=l+172|0;A=l+168|0;C=l+164|0;v=l+160|0;n=l+156|0;y=l+152|0;G=l+240|0;W=l+40|0;D=l+32|0;M=l+28|0;Q=l+24|0;P=l+20|0;E=l+36|0;F=l+8|0;s=l+4|0;I=l+12|0;ca=l+16|0;ba=l+144|0;Y=l+44|0;$=l+48|0;_=l+112|0;aa=l+116|0;X=l+120|0;S=l+124|0;w=l+128|0;u=l+132|0;q=l+136|0;t=l+140|0;L=l+148|0;c[J>>2]=b;c[U>>2]=d;c[da>>2]=e;c[Z>>2]=f;c[z>>2]=g;c[m>>2]=h;c[p>>2]=j;c[R>>2]=c[da>>2];c[k>>2]=0;c[o>>2]=0;c[T>>2]=0;c[r>>2]=0;c[C>>2]=(a[(c[c[z>>2]>>2]|0)+3>>0]|0)==52&1;c[n>>2]=0;c[G>>2]=0;c[W>>2]=0;c[D>>2]=0;c[M>>2]=0;c[Q>>2]=0;c[P>>2]=0;c[E>>2]=0;c[F>>2]=0;c[s>>2]=0;c[I>>2]=0;c[B>>2]=(cL(c[(c[z>>2]|0)+4>>2]|0)|0)+1;c[A>>2]=(cL(c[(c[z>>2]|0)+8>>2]|0)|0)+1;c[V>>2]=(c[Z>>2]|0)-2<<2;c[v>>2]=mc(c[V>>2]|0)|0;if((c[v>>2]|0)!=0){aL(c[v>>2]|0,0,c[V>>2]|0)|0;c[s>>2]=mc(c[V>>2]|0)|0}if((c[s>>2]|0)!=0){aL(c[s>>2]|0,0,c[V>>2]|0)|0}do{if((c[v>>2]|0)!=0){if((c[s>>2]|0)!=0){c[H>>2]=3;while(1){if((c[o>>2]|0)!=0){break}if((c[H>>2]|0)>=(c[Z>>2]|0)){break}c[ca>>2]=c[(c[z>>2]|0)+(c[H>>2]<<2)>>2];if((c[n>>2]|0)!=0){K=16}else{if((cL(c[ca>>2]|0)|0)>>>0>8){if(0==(Tb(c[ca>>2]|0,7872,8)|0)){if(0==(nn(a[(c[ca>>2]|0)+8>>0]|0)|0)){c[o>>2]=on(c[R>>2]|0,(c[ca>>2]|0)+9|0,n,c[p>>2]|0)|0}else{K=16}}else{K=16}}else{K=16}}do{if((K|0)==16){K=0;if((c[C>>2]|0)!=0){if((pn(c[ca>>2]|0,ba,Y)|0)!=0){g=$+0|0;h=7976|0;j=g+64|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(j|0));if((c[Y>>2]|0)==0){c[o>>2]=7;break}c[_>>2]=0;while(1){if((c[_>>2]|0)>=8){break}c[aa>>2]=$+(c[_>>2]<<3);if((c[ba>>2]|0)==(c[(c[aa>>2]|0)+4>>2]|0)){if((Tb(c[ca>>2]|0,c[c[aa>>2]>>2]|0,c[(c[aa>>2]|0)+4>>2]|0)|0)==0){break}}c[_>>2]=(c[_>>2]|0)+1}a:do{if((c[_>>2]|0)==8){c[N>>2]=c[ca>>2];da=wc(8040,N)|0;c[c[p>>2]>>2]=da;c[o>>2]=1}else{switch(c[_>>2]|0){case 7:{b=c[Y>>2]|0;da=c[I>>2]|0;c[I>>2]=da+1;c[(c[s>>2]|0)+(da<<2)>>2]=b;c[Y>>2]=0;break a};case 3:{oc(c[P>>2]|0);c[P>>2]=c[Y>>2];c[Y>>2]=0;break a};case 1:{oc(c[M>>2]|0);c[M>>2]=c[Y>>2];c[Y>>2]=0;break a};case 0:{if((cL(c[Y>>2]|0)|0)!=4){K=30}else{if((Tb(c[Y>>2]|0,3752,4)|0)!=0){K=30}}if((K|0)==30){K=0;c[N>>2]=c[Y>>2];da=wc(8072,N)|0;c[c[p>>2]>>2]=da;c[o>>2]=1}c[W>>2]=1;break a};case 2:{oc(c[Q>>2]|0);c[Q>>2]=c[Y>>2];c[Y>>2]=0;break a};case 6:{oc(c[F>>2]|0);c[F>>2]=c[Y>>2];c[Y>>2]=0;break a};case 4:{if((cL(c[Y>>2]|0)|0)!=3){K=37}else{if((Tb(c[Y>>2]|0,8104,3)|0)!=0){K=37}}do{if((K|0)==37){K=0;if((cL(c[Y>>2]|0)|0)==4){if((Tb(c[Y>>2]|0,8112,4)|0)==0){break}}c[N>>2]=c[Y>>2];da=wc(8120,N)|0;c[c[p>>2]>>2]=da;c[o>>2]=1}}while(0);if((a[c[Y>>2]>>0]|0)==100){j=1}else{j=(a[c[Y>>2]>>0]|0)==68}c[D>>2]=j&1;break a};case 5:{oc(c[E>>2]|0);c[E>>2]=c[Y>>2];c[Y>>2]=0;break a};default:{break a}}}}while(0);oc(c[Y>>2]|0);break}}b=(cL(c[ca>>2]|0)|0)+1|0;c[T>>2]=(c[T>>2]|0)+b;b=c[ca>>2]|0;da=c[r>>2]|0;c[r>>2]=da+1;c[(c[v>>2]|0)+(da<<2)>>2]=b}}while(0);c[H>>2]=(c[H>>2]|0)+1}b:do{if((c[o>>2]|0)==0){if((c[E>>2]|0)!=0){oc(c[Q>>2]|0);oc(c[P>>2]|0);c[Q>>2]=0;c[P>>2]=0;if((c[r>>2]|0)==0){oc(c[v>>2]|0);c[v>>2]=0;c[o>>2]=qn(c[U>>2]|0,c[(c[z>>2]|0)+4>>2]|0,c[E>>2]|0,v,r,T)|0;if((c[o>>2]|0)==0){if((c[F>>2]|0)!=0){c[X>>2]=0;while(1){if((c[X>>2]|0)>=(c[r>>2]|0)){break b}da=(Dc(c[F>>2]|0,c[(c[v>>2]|0)+(c[X>>2]<<2)>>2]|0)|0)==0;Y=c[X>>2]|0;if(da){break}c[X>>2]=Y+1}c[S>>2]=Y;while(1){if((c[S>>2]|0)>=(c[r>>2]|0)){break}c[(c[v>>2]|0)+(c[S>>2]<<2)>>2]=c[(c[v>>2]|0)+((c[S>>2]|0)+1<<2)>>2];c[S>>2]=(c[S>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+ -1}}}}}}while(0);if((c[o>>2]|0)==0){if((c[r>>2]|0)==0){c[c[v>>2]>>2]=7936;c[T>>2]=8;c[r>>2]=1}if((c[n>>2]|0)==0){c[o>>2]=on(c[R>>2]|0,3672,n,c[p>>2]|0)|0;if((c[o>>2]|0)!=0){break}}c[o>>2]=rn(c[M>>2]|0,y,G)|0;if((c[o>>2]|0)==1){c[N>>2]=c[M>>2];da=wc(8144,N)|0;c[c[p>>2]>>2]=da}if((c[o>>2]|0)==0){c[V>>2]=280+(c[r>>2]<<2)+((c[y>>2]|0)*24|0)+(c[r>>2]|0)+(c[A>>2]|0)+(c[B>>2]|0)+(c[T>>2]|0);c[k>>2]=mc(c[V>>2]|0)|0;if((c[k>>2]|0)==0){c[o>>2]=7;break}aL(c[k>>2]|0,0,c[V>>2]|0)|0;c[(c[k>>2]|0)+12>>2]=c[U>>2];c[(c[k>>2]|0)+24>>2]=c[r>>2];c[(c[k>>2]|0)+260>>2]=0;c[(c[k>>2]|0)+28>>2]=(c[k>>2]|0)+280;c[(c[k>>2]|0)+36>>2]=c[n>>2];c[(c[k>>2]|0)+256>>2]=1048576;if((c[C>>2]|0)!=0){R=(c[W>>2]|0)==0}else{R=0}a[(c[k>>2]|0)+230>>0]=R&1;a[(c[k>>2]|0)+229>>0]=c[C>>2];a[(c[k>>2]|0)+228>>0]=c[C>>2];a[(c[k>>2]|0)+231>>0]=c[D>>2];c[(c[k>>2]|0)+48>>2]=255;c[(c[k>>2]|0)+40>>2]=c[E>>2];c[(c[k>>2]|0)+44>>2]=c[F>>2];c[E>>2]=0;c[F>>2]=0;c[(c[k>>2]|0)+252>>2]=(c[(c[k>>2]|0)+28>>2]|0)+(c[r>>2]<<2);fL(c[(c[k>>2]|0)+252>>2]|0,c[G>>2]|0,(c[y>>2]|0)*24|0)|0;c[(c[k>>2]|0)+248>>2]=c[y>>2];c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[y>>2]|0)){break}Xh((c[(c[k>>2]|0)+252>>2]|0)+((c[H>>2]|0)*24|0)+4|0,1,1);c[H>>2]=(c[H>>2]|0)+1}c[(c[k>>2]|0)+32>>2]=(c[(c[k>>2]|0)+252>>2]|0)+((c[y>>2]|0)*24|0);c[x>>2]=(c[(c[k>>2]|0)+32>>2]|0)+(c[r>>2]|0);c[(c[k>>2]|0)+20>>2]=c[x>>2];fL(c[x>>2]|0,c[(c[z>>2]|0)+8>>2]|0,c[A>>2]|0)|0;c[x>>2]=(c[x>>2]|0)+(c[A>>2]|0);c[(c[k>>2]|0)+16>>2]=c[x>>2];fL(c[x>>2]|0,c[(c[z>>2]|0)+4>>2]|0,c[B>>2]|0)|0;c[x>>2]=(c[x>>2]|0)+(c[B>>2]|0);c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[r>>2]|0)){break}c[u>>2]=0;c[w>>2]=sn(c[(c[v>>2]|0)+(c[O>>2]<<2)>>2]|0,u)|0;fL(c[x>>2]|0,c[w>>2]|0,c[u>>2]|0)|0;a[(c[x>>2]|0)+(c[u>>2]|0)>>0]=0;yi(c[x>>2]|0);c[(c[(c[k>>2]|0)+28>>2]|0)+(c[O>>2]<<2)>>2]=c[x>>2];c[x>>2]=(c[x>>2]|0)+((c[u>>2]|0)+1);c[O>>2]=(c[O>>2]|0)+1}c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[r>>2]|0)){break}c[q>>2]=cL(c[(c[(c[k>>2]|0)+28>>2]|0)+(c[O>>2]<<2)>>2]|0)|0;c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[I>>2]|0)){break}c[t>>2]=c[(c[s>>2]|0)+(c[H>>2]<<2)>>2];do{if((c[t>>2]|0)!=0){da=c[q>>2]|0;if((da|0)==(cL(c[t>>2]|0)|0)){if(0!=(Tb(c[(c[(c[k>>2]|0)+28>>2]|0)+(c[O>>2]<<2)>>2]|0,c[t>>2]|0,c[q>>2]|0)|0)){break}a[(c[(c[k>>2]|0)+32>>2]|0)+(c[O>>2]|0)>>0]=1;oc(c[t>>2]|0);c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]=0}}}while(0);c[H>>2]=(c[H>>2]|0)+1}c[O>>2]=(c[O>>2]|0)+1}c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[I>>2]|0)){break}if((c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]|0)!=0){c[N>>2]=c[(c[s>>2]|0)+(c[H>>2]<<2)>>2];da=wc(8184,N)|0;c[c[p>>2]>>2]=da;c[o>>2]=1}c[H>>2]=(c[H>>2]|0)+1}if((c[o>>2]|0)==0){if(((c[Q>>2]|0)==0|0)!=((c[P>>2]|0)==0|0)){c[L>>2]=(c[Q>>2]|0)==0?7896:7912;c[o>>2]=1;c[N>>2]=c[L>>2];da=wc(8208,N)|0;c[c[p>>2]>>2]=da}}da=tn(c[k>>2]|0,c[P>>2]|0,o)|0;c[(c[k>>2]|0)+216>>2]=da;da=un(c[k>>2]|0,c[Q>>2]|0,o)|0;c[(c[k>>2]|0)+220>>2]=da;if((c[o>>2]|0)==0){if((c[J>>2]|0)!=0){c[o>>2]=vn(c[k>>2]|0)|0}if((c[C>>2]|0)==0){if((c[J>>2]|0)==0){a[(c[k>>2]|0)+229>>0]=2}}wn(o,c[k>>2]|0);c[(c[k>>2]|0)+224>>2]=(c[(c[k>>2]|0)+236>>2]|0)-35;xn(o,c[k>>2]|0)}}}}else{K=7}}else{K=7}}while(0);if((K|0)==7){c[o>>2]=7}oc(c[M>>2]|0);oc(c[G>>2]|0);oc(c[Q>>2]|0);oc(c[P>>2]|0);oc(c[E>>2]|0);oc(c[F>>2]|0);c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[I>>2]|0)){break}oc(c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]|0);c[H>>2]=(c[H>>2]|0)+1}oc(c[v>>2]|0);oc(c[s>>2]|0);p=c[k>>2]|0;if((c[o>>2]|0)==0){c[c[m>>2]>>2]=p;da=c[o>>2]|0;i=l;return da|0}if((p|0)!=0){Ci(c[k>>2]|0)|0;da=c[o>>2]|0;i=l;return da|0}if((c[n>>2]|0)==0){da=c[o>>2]|0;i=l;return da|0}ub[c[(c[c[n>>2]>>2]|0)+8>>2]&63](c[n>>2]|0)|0;da=c[o>>2]|0;i=l;return da|0}function nn(b){b=b|0;var c=0,d=0;c=i;i=i+16|0;d=c;a[d>>0]=b;if((a[d>>0]&128|0)!=0){d=1;d=d&1;i=c;return d|0}d=(a[8960+(a[d>>0]|0)>>0]|0)!=0;d=d&1;i=c;return d|0}function on(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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;r=i;i=i+64|0;v=r;j=r+56|0;x=r+52|0;y=r+48|0;n=r+44|0;w=r+40|0;o=r+36|0;g=r+32|0;s=r+60|0;u=r+20|0;t=r+16|0;k=r+12|0;m=r+8|0;l=r+4|0;p=r+24|0;q=r+28|0;c[x>>2]=b;c[y>>2]=d;c[n>>2]=e;c[w>>2]=f;c[g>>2]=c[y>>2];c[s>>2]=0;c[v>>2]=c[y>>2];c[u>>2]=wc(1768,v)|0;if((c[u>>2]|0)==0){c[j>>2]=7;y=c[j>>2]|0;i=r;return y|0}b=cL(c[u>>2]|0)|0;c[t>>2]=(c[u>>2]|0)+b;c[g>>2]=sn(c[u>>2]|0,s)|0;a[(c[g>>2]|0)+(c[s>>2]|0)>>0]=0;yi(c[g>>2]|0);b=c[x>>2]|0;y=c[g>>2]|0;c[k>>2]=pi(b,y,(cL(c[g>>2]|0)|0)+1|0)|0;if((c[k>>2]|0)!=0){c[m>>2]=0;c[l>>2]=0;c[g>>2]=(c[g>>2]|0)+((c[s>>2]|0)+1);while(1){if(!((c[g>>2]|0)>>>0<(c[t>>2]|0)>>>0)){break}y=sn(c[g>>2]|0,s)|0;c[g>>2]=y;if(0==(y|0)){break}c[p>>2]=(c[l>>2]|0)+1<<2;c[q>>2]=qc(c[m>>2]|0,c[p>>2]|0)|0;if((c[q>>2]|0)==0){h=9;break}c[m>>2]=c[q>>2];b=c[g>>2]|0;y=c[l>>2]|0;c[l>>2]=y+1;c[(c[m>>2]|0)+(y<<2)>>2]=b;a[(c[g>>2]|0)+(c[s>>2]|0)>>0]=0;yi(c[g>>2]|0);c[g>>2]=(c[g>>2]|0)+((c[s>>2]|0)+1)}if((h|0)==9){oc(c[u>>2]|0);oc(c[m>>2]|0);c[j>>2]=7;y=c[j>>2]|0;i=r;return y|0}c[o>>2]=pb[c[(c[k>>2]|0)+4>>2]&31](c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if((c[o>>2]|0)!=0){y=wc(8936,v)|0;c[c[w>>2]>>2]=y}else{c[c[c[n>>2]>>2]>>2]=c[k>>2]}oc(c[m>>2]|0)}else{c[v>>2]=c[g>>2];y=wc(4032,v)|0;c[c[w>>2]>>2]=y;c[o>>2]=1}oc(c[u>>2]|0);c[j>>2]=c[o>>2];y=c[j>>2]|0;i=r;return y|0}function pn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;o=k;j=k+24|0;l=k+4|0;f=k+8|0;h=k+12|0;m=k+16|0;n=k+20|0;c[l>>2]=b;c[f>>2]=d;c[h>>2]=e;c[n>>2]=c[l>>2];while(1){e=c[n>>2]|0;if((a[c[n>>2]>>0]|0)==61){break}if((a[e>>0]|0)==0){g=4;break}c[n>>2]=(c[n>>2]|0)+1}if((g|0)==4){c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}c[c[f>>2]>>2]=e-(c[l>>2]|0);c[o>>2]=(c[n>>2]|0)+1;c[m>>2]=wc(1768,o)|0;if((c[m>>2]|0)!=0){yi(c[m>>2]|0)}c[c[h>>2]>>2]=c[m>>2];c[j>>2]=1;b=c[j>>2]|0;i=k;return b|0}function qn(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,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;j=i;i=i+80|0;y=j;x=j+68|0;z=j+64|0;A=j+60|0;q=j+56|0;m=j+52|0;o=j+48|0;s=j+44|0;w=j+40|0;k=j+72|0;p=j+28|0;n=j+24|0;l=j+20|0;r=j+16|0;v=j+12|0;u=j+8|0;h=j+32|0;t=j+36|0;c[x>>2]=a;c[z>>2]=b;c[A>>2]=d;c[q>>2]=e;c[m>>2]=f;c[o>>2]=g;c[s>>2]=0;c[k>>2]=0;a=c[A>>2]|0;c[y>>2]=c[z>>2];c[y+4>>2]=a;c[w>>2]=wc(8912,y)|0;if((c[w>>2]|0)!=0){c[s>>2]=Gf(c[x>>2]|0,c[w>>2]|0,-1,k,0)|0}else{c[s>>2]=7}oc(c[w>>2]|0);if((c[s>>2]|0)!=0){A=c[s>>2]|0;i=j;return A|0}c[n>>2]=0;c[l>>2]=we(c[k>>2]|0)|0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[l>>2]|0)){break}c[v>>2]=Ie(c[k>>2]|0,c[r>>2]|0)|0;A=(cL(c[v>>2]|0)|0)+1|0;c[n>>2]=(c[n>>2]|0)+A;c[r>>2]=(c[r>>2]|0)+1}c[p>>2]=mc((c[l>>2]<<2)+(c[n>>2]|0)|0)|0;a:do{if((c[p>>2]|0)==0){c[s>>2]=7}else{c[u>>2]=(c[p>>2]|0)+(c[l>>2]<<2);c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[l>>2]|0)){break a}c[h>>2]=Ie(c[k>>2]|0,c[r>>2]|0)|0;c[t>>2]=(cL(c[h>>2]|0)|0)+1;fL(c[u>>2]|0,c[h>>2]|0,c[t>>2]|0)|0;c[(c[p>>2]|0)+(c[r>>2]<<2)>>2]=c[u>>2];c[u>>2]=(c[u>>2]|0)+(c[t>>2]|0);c[r>>2]=(c[r>>2]|0)+1}}}while(0);yd(c[k>>2]|0)|0;c[c[m>>2]>>2]=c[l>>2];c[c[o>>2]>>2]=c[n>>2];c[c[q>>2]>>2]=c[p>>2];A=c[s>>2]|0;i=j;return A|0}function rn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+48|0;m=g+36|0;f=g+32|0;p=g+28|0;o=g+24|0;n=g+20|0;l=g+16|0;q=g+8|0;h=g+4|0;k=g;j=g+12|0;c[f>>2]=b;c[p>>2]=d;c[o>>2]=e;c[l>>2]=1;a:do{if((c[f>>2]|0)!=0){if((a[c[f>>2]>>0]|0)!=0){c[l>>2]=(c[l>>2]|0)+1;c[q>>2]=c[f>>2];while(1){if((a[c[q>>2]>>0]|0)==0){break a}if((a[c[q>>2]>>0]|0)==44){c[l>>2]=(c[l>>2]|0)+1}c[q>>2]=(c[q>>2]|0)+1}}}}while(0);c[n>>2]=mc((c[l>>2]|0)*24|0)|0;c[c[o>>2]>>2]=c[n>>2];c[c[p>>2]>>2]=c[l>>2];if((c[n>>2]|0)==0){c[m>>2]=7;b=c[m>>2]|0;i=g;return b|0}aL(c[n>>2]|0,0,(c[l>>2]|0)*24|0)|0;b:do{if((c[f>>2]|0)!=0){c[h>>2]=c[f>>2];c[k>>2]=1;while(1){if((c[k>>2]|0)>=(c[l>>2]|0)){break b}if((An(h,j)|0)!=0){break}c[(c[n>>2]|0)+((c[k>>2]|0)*24|0)>>2]=c[j>>2];c[h>>2]=(c[h>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+1}c[m>>2]=1;b=c[m>>2]|0;i=g;return b|0}}while(0);c[m>>2]=0;b=c[m>>2]|0;i=g;return b|0}function sn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;g=h+16|0;l=h;f=h+4|0;e=h+8|0;j=h+12|0;k=h+20|0;c[l>>2]=b;c[f>>2]=d;c[j>>2]=0;c[e>>2]=c[l>>2];a:while(1){if((c[j>>2]|0)!=0){k=21;break}a[k>>0]=a[c[e>>2]>>0]|0;switch(a[k>>0]|0){case 0:{k=4;break a};case 91:{c[j>>2]=(c[e>>2]|0)+1;while(1){if((a[c[j>>2]>>0]|0)!=0){b=(a[c[j>>2]>>0]|0)!=93}else{b=0}d=c[j>>2]|0;if(!b){break}c[j>>2]=d+1}if((a[d>>0]|0)==0){continue a}c[j>>2]=(c[j>>2]|0)+1;continue a};case 96:case 34:case 39:{c[j>>2]=c[e>>2];while(1){l=(c[j>>2]|0)+1|0;c[j>>2]=l;if((a[l>>0]|0)==0){continue a}if((a[c[j>>2]>>0]|0)!=(a[k>>0]|0)){continue}l=(c[j>>2]|0)+1|0;c[j>>2]=l;if((a[l>>0]|0)!=(a[k>>0]|0)){continue a}}};default:{l=(nn(a[c[e>>2]>>0]|0)|0)!=0;d=(c[e>>2]|0)+1|0;if(!l){c[e>>2]=d;continue a}c[j>>2]=d;while(1){if((nn(a[c[j>>2]>>0]|0)|0)==0){continue a}c[j>>2]=(c[j>>2]|0)+1}}}}if((k|0)==4){c[g>>2]=0;l=c[g>>2]|0;i=h;return l|0}else if((k|0)==21){c[c[f>>2]>>2]=(c[j>>2]|0)-(c[e>>2]|0);c[g>>2]=c[e>>2];l=c[g>>2]|0;i=h;return l|0}return 0}function tn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;e=g;h=g+36|0;n=g+12|0;k=g+16|0;f=g+20|0;l=g+24|0;m=g+28|0;j=g+32|0;c[h>>2]=a;c[n>>2]=b;c[k>>2]=d;c[f>>2]=0;c[l>>2]=0;if((c[(c[h>>2]|0)+40>>2]|0)==0){if((c[n>>2]|0)!=0){a=yn(c[n>>2]|0)|0;c[m>>2]=a;c[l>>2]=a}else{c[m>>2]=1784}zn(c[k>>2]|0,f,8808,e);c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[h>>2]|0)+24>>2]|0)){break}a=c[k>>2]|0;n=c[j>>2]|0;b=c[(c[(c[h>>2]|0)+28>>2]|0)+(c[j>>2]<<2)>>2]|0;c[e>>2]=c[m>>2];c[e+4>>2]=n;c[e+8>>2]=b;zn(a,f,8816,e);c[j>>2]=(c[j>>2]|0)+1}if((c[(c[h>>2]|0)+44>>2]|0)!=0){a=c[k>>2]|0;c[e>>2]=8840;zn(a,f,8832,e)}oc(c[l>>2]|0)}else{zn(c[k>>2]|0,f,8848,e);c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[h>>2]|0)+24>>2]|0)){break}a=c[k>>2]|0;c[e>>2]=c[(c[(c[h>>2]|0)+28>>2]|0)+(c[j>>2]<<2)>>2];zn(a,f,8856,e);c[j>>2]=(c[j>>2]|0)+1}if((c[(c[h>>2]|0)+44>>2]|0)!=0){a=c[k>>2]|0;c[e>>2]=c[(c[h>>2]|0)+44>>2];zn(a,f,8832,e)}}j=c[k>>2]|0;k=c[(c[h>>2]|0)+16>>2]|0;l=c[h>>2]|0;if((c[(c[h>>2]|0)+40>>2]|0)!=0){n=c[l+40>>2]|0;b=c[h>>2]|0;b=b+40|0;b=c[b>>2]|0;b=(b|0)!=0;b=b?1784:8896;c[e>>2]=k;a=e+4|0;c[a>>2]=n;a=e+8|0;c[a>>2]=b;zn(j,f,8872,e);a=c[f>>2]|0;i=g;return a|0}else{n=c[l+20>>2]|0;b=c[h>>2]|0;b=b+40|0;b=c[b>>2]|0;b=(b|0)!=0;b=b?1784:8896;c[e>>2]=k;a=e+4|0;c[a>>2]=n;a=e+8|0;c[a>>2]=b;zn(j,f,8872,e);a=c[f>>2]|0;i=g;return a|0}return 0} + + + +function BG(d){d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=d;c[g>>2]=c[c[f>>2]>>2];Gd(c[f>>2]|0);d=$e(c[g>>2]|0,64)|0;c[(c[f>>2]|0)+36>>2]=d;if((a[(c[g>>2]|0)+64>>0]|0)!=0){b[(c[f>>2]|0)+28>>1]=1;i=e;return}else{h=c[g>>2]|0;d=c[(c[f>>2]|0)+36>>2]|0;g=HH(h,d,Vv(c[g>>2]|0,c[(c[f>>2]|0)+36>>2]|0)|0)|0;c[(c[f>>2]|0)+16>>2]=g;b[(c[f>>2]|0)+28>>1]=32;i=e;return}}function CG(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;k=g+16|0;h=g;l=g+8|0;j=g+12|0;c[k>>2]=a;a=h;c[a>>2]=d;c[a+4>>2]=f;c[l>>2]=EH(c[k>>2]|0)|0;if((c[l>>2]|0)==0){i=g;return}f=h;d=c[f+4>>2]|0;a=c[l>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=d;c[(c[l>>2]|0)+8>>2]=0;c[j>>2]=c[(c[k>>2]|0)+12>>2];if((c[j>>2]|0)!=0){if((b[(c[k>>2]|0)+26>>1]&1|0)!=0){d=h;f=c[d+4>>2]|0;a=c[j>>2]|0;h=c[a+4>>2]|0;if((f|0)<(h|0)|((f|0)==(h|0)?(c[d>>2]|0)>>>0<=(c[a>>2]|0)>>>0:0)){a=(c[k>>2]|0)+26|0;b[a>>1]=(e[a>>1]|0)&-2}}c[(c[j>>2]|0)+8>>2]=c[l>>2]}else{c[(c[k>>2]|0)+8>>2]=c[l>>2]}c[(c[k>>2]|0)+12>>2]=c[l>>2];i=g;return}function DG(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+8|0;g=f;h=f+4|0;c[g>>2]=a;c[h>>2]=d;if((b[(c[g>>2]|0)+26>>1]&2|0)==0){GH(c[g>>2]|0)}if((c[(c[g>>2]|0)+8>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=f;return a|0}j=c[(c[g>>2]|0)+8>>2]|0;d=c[j+4>>2]|0;a=c[h>>2]|0;c[a>>2]=c[j>>2];c[a+4>>2]=d;c[(c[g>>2]|0)+8>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2];if((c[(c[g>>2]|0)+8>>2]|0)==0){uF(c[g>>2]|0)}c[e>>2]=1;j=c[e>>2]|0;i=f;return j|0}function EG(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+48|0;l=h+36|0;q=h+32|0;n=h+28|0;k=h;j=h+16|0;m=h+20|0;o=h+8|0;r=h+12|0;s=h+24|0;c[q>>2]=a;c[n>>2]=d;a=k;c[a>>2]=f;c[a+4>>2]=g;if((c[n>>2]|0)!=(c[(c[q>>2]|0)+28>>2]|0)){c[j>>2]=c[(c[q>>2]|0)+8>>2];if((c[j>>2]|0)!=0){c[o>>2]=(c[q>>2]|0)+20;if((b[(c[q>>2]|0)+26>>1]&1|0)==0){c[j>>2]=AH(c[j>>2]|0)|0}c[m>>2]=c[(c[q>>2]|0)+20>>2];while(1){if((c[m>>2]|0)==0){break}c[o>>2]=(c[m>>2]|0)+8;if((c[(c[m>>2]|0)+12>>2]|0)==0){p=8;break}CH(c[(c[m>>2]|0)+12>>2]|0,r,s);c[(c[m>>2]|0)+12>>2]=0;c[j>>2]=DH(c[r>>2]|0,c[j>>2]|0)|0;c[m>>2]=c[(c[m>>2]|0)+8>>2]}if((p|0)==8){a=BH(c[j>>2]|0)|0;c[(c[m>>2]|0)+12>>2]=a}if((c[m>>2]|0)==0){a=EH(c[q>>2]|0)|0;c[m>>2]=a;c[c[o>>2]>>2]=a;if((c[m>>2]|0)!=0){a=c[m>>2]|0;c[a>>2]=0;c[a+4>>2]=0;c[(c[m>>2]|0)+8>>2]=0;a=BH(c[j>>2]|0)|0;c[(c[m>>2]|0)+12>>2]=a}}c[(c[q>>2]|0)+8>>2]=0;c[(c[q>>2]|0)+12>>2]=0;a=(c[q>>2]|0)+26|0;b[a>>1]=e[a>>1]|0|1}c[(c[q>>2]|0)+28>>2]=c[n>>2]}c[m>>2]=c[(c[q>>2]|0)+20>>2];a:while(1){if((c[m>>2]|0)==0){p=25;break}c[j>>2]=c[(c[m>>2]|0)+12>>2];while(1){if((c[j>>2]|0)==0){break}d=c[j>>2]|0;g=c[d+4>>2]|0;a=k;f=c[a+4>>2]|0;n=c[j>>2]|0;if((g|0)<(f|0)|((g|0)==(f|0)?(c[d>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)){c[j>>2]=c[n+8>>2];continue}d=n;g=c[d+4>>2]|0;a=k;f=c[a+4>>2]|0;if(!((g|0)>(f|0)|((g|0)==(f|0)?(c[d>>2]|0)>>>0>(c[a>>2]|0)>>>0:0))){p=23;break a}c[j>>2]=c[(c[j>>2]|0)+12>>2]}c[m>>2]=c[(c[m>>2]|0)+8>>2]}if((p|0)==23){c[l>>2]=1;a=c[l>>2]|0;i=h;return a|0}else if((p|0)==25){c[l>>2]=0;a=c[l>>2]|0;i=h;return a|0}return 0}function FG(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;e=b+4|0;f=b;c[f>>2]=a;if((d[(c[f>>2]|0)+16>>0]|0|0)>=3){c[e>>2]=0;f=c[e>>2]|0;i=b;return f|0}if((c[c[(c[f>>2]|0)+64>>2]>>2]|0)!=0){f=(c[f>>2]|0)+72|0;a=c[f+4>>2]|0;if((a|0)>0|(a|0)==0&(c[f>>2]|0)>>>0>0){c[e>>2]=0;f=c[e>>2]|0;i=b;return f|0}}c[e>>2]=1;f=c[e>>2]|0;i=b;return f|0}function GG(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;f=b+4|0;e=b;c[f>>2]=a;c[e>>2]=c[c[(c[f>>2]|0)+60>>2]>>2];if((d[(c[f>>2]|0)+4>>0]|0|0)!=0){f=1;f=f&1;i=b;return f|0}if((c[c[e>>2]>>2]|0)<2){f=0;f=f&1;i=b;return f|0}f=(c[(c[e>>2]|0)+52>>2]|0)!=0;f=f&1;i=b;return f|0}function HG(a){a=a|0;var b=0,e=0,f=0,g=0;g=i;i=i+16|0;e=g+8|0;b=g;f=g+4|0;c[e>>2]=a;c[b>>2]=0;if((c[(c[e>>2]|0)+208>>2]|0)==0){c[f>>2]=0;c[b>>2]=ar(c[e>>2]|0,1)|0;if((c[b>>2]|0)==0){c[b>>2]=op(c[c[e>>2]>>2]|0,c[(c[e>>2]|0)+212>>2]|0,0,f)|0}if((c[b>>2]|0)==0){if((c[f>>2]|0)!=0){c[b>>2]=vH(c[e>>2]|0)|0}}}if((c[b>>2]|0)!=0){f=c[b>>2]|0;i=g;return f|0}if((c[(c[e>>2]|0)+208>>2]|0)==0){f=c[b>>2]|0;i=g;return f|0}c[b>>2]=wH(c[e>>2]|0)|0;if((c[b>>2]|0)!=0){f=c[b>>2]|0;i=g;return f|0}c[b>>2]=Fo(c[(c[e>>2]|0)+208>>2]|0,d[(c[e>>2]|0)+9>>0]|0,c[(c[e>>2]|0)+152>>2]|0,c[(c[e>>2]|0)+200>>2]|0)|0;c[(c[e>>2]|0)+208>>2]=0;ih(c[e>>2]|0);f=c[b>>2]|0;i=g;return f|0}function IG(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+12|0;k=f;l=f+16|0;h=f+8|0;j=f+4|0;c[g>>2]=b;c[k>>2]=e;a[l>>0]=a[(c[g>>2]|0)+5>>0]|0;if((a[(c[g>>2]|0)+15>>0]|0)!=0){if((c[k>>2]|0)!=4&(c[k>>2]|0)!=2){c[k>>2]=d[l>>0]|0}}do{if((c[k>>2]|0)!=(d[l>>0]|0)){a[(c[g>>2]|0)+5>>0]=c[k>>2];if((a[(c[g>>2]|0)+4>>0]|0)==0){if((a[l>>0]&5|0)==1){if((c[k>>2]&1|0)==0){Ko(c[(c[g>>2]|0)+64>>2]|0)|0;if((d[(c[g>>2]|0)+17>>0]|0)>=2){So(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+172>>2]|0,0)|0;break}c[h>>2]=0;c[j>>2]=d[(c[g>>2]|0)+16>>0]|0;if((c[j>>2]|0)==0){c[h>>2]=nH(c[g>>2]|0)|0}if((d[(c[g>>2]|0)+16>>0]|0)==1){c[h>>2]=ar(c[g>>2]|0,2)|0}if((c[h>>2]|0)==0){So(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+172>>2]|0,0)|0}if((c[h>>2]|0)==0){if((c[j>>2]|0)==1){Yo(c[g>>2]|0,1)|0;break}}if((c[j>>2]|0)==0){Go(c[g>>2]|0)}}}}}}while(0);i=f;return d[(c[g>>2]|0)+5>>0]|0}function JG(b,e){b=b|0;e=e|0;var f=0,g=0,h=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;q=i;i=i+80|0;v=q;n=q+64|0;u=q+60|0;h=q+56|0;g=q+52|0;o=q+48|0;s=q+44|0;x=q+40|0;k=q+36|0;l=q+68|0;m=q+24|0;f=q+20|0;p=q+16|0;w=q+12|0;j=q+8|0;y=q+4|0;t=q+28|0;r=q+32|0;c[u>>2]=b;c[h>>2]=e;c[g>>2]=0;c[x>>2]=0;c[p>>2]=0;if((a[(c[h>>2]|0)+62>>0]|0)==0){$t(c[u>>2]|0,c[h>>2]|0,38552,v);c[n>>2]=1;b=c[n>>2]|0;i=q;return b|0}if((c[(c[h>>2]|0)+140>>2]|0)>1){$t(c[u>>2]|0,c[h>>2]|0,38592,v);c[n>>2]=1;b=c[n>>2]|0;i=q;return b|0}c[k>>2]=c[(c[h>>2]|0)+24>>2];c[l>>2]=c[(c[h>>2]|0)+80>>2];c[m>>2]=c[(c[h>>2]|0)+84>>2];c[f>>2]=c[(c[h>>2]|0)+164>>2];b=(c[h>>2]|0)+24|0;c[b>>2]=c[b>>2]|2107392;b=(c[h>>2]|0)+24|0;c[b>>2]=c[b>>2]&-655361;c[(c[h>>2]|0)+164>>2]=0;c[o>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+4>>2];c[w>>2]=gH(Zb(c[o>>2]|0)|0)|0;c[y>>2]=c[(c[h>>2]|0)+20>>2];if((po(c[h>>2]|0)|0)!=0){c[x>>2]=38640}else{c[x>>2]=38672}c[g>>2]=hH(c[h>>2]|0,c[u>>2]|0,c[x>>2]|0)|0;if((c[(c[h>>2]|0)+20>>2]|0)>(c[y>>2]|0)){c[p>>2]=(c[(c[h>>2]|0)+16>>2]|0)+((c[(c[h>>2]|0)+20>>2]|0)-1<<4)}a:do{if((c[g>>2]|0)==0){c[s>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+((c[(c[h>>2]|0)+20>>2]|0)-1<<4)+4>>2];Ny(c[s>>2]|0)|0;c[j>>2]=iH(c[o>>2]|0)|0;c[g>>2]=hH(c[h>>2]|0,c[u>>2]|0,38696)|0;if((c[g>>2]|0)==0){c[g>>2]=hH(c[h>>2]|0,c[u>>2]|0,38736)|0;if((c[g>>2]|0)==0){c[g>>2]=Wc(c[o>>2]|0,2)|0;if((c[g>>2]|0)==0){if((_c(Zb(c[o>>2]|0)|0)|0)==5){c[(c[h>>2]|0)+72>>2]=0}y=c[s>>2]|0;b=Zc(c[o>>2]|0)|0;do{if((Ig(y,b,c[j>>2]|0,0)|0)==0){if((c[w>>2]|0)==0){if((Ig(c[s>>2]|0,c[(c[h>>2]|0)+72>>2]|0,c[j>>2]|0,0)|0)!=0){break}}if((d[(c[h>>2]|0)+64>>0]|0)==0){v=c[s>>2]|0;if((a[(c[h>>2]|0)+66>>0]|0)>=0){e=a[(c[h>>2]|0)+66>>0]|0}else{e=xA(c[o>>2]|0)|0}zA(v,e)|0;c[g>>2]=jH(c[h>>2]|0,c[u>>2]|0,38744)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=jH(c[h>>2]|0,c[u>>2]|0,38896)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=jH(c[h>>2]|0,c[u>>2]|0,39e3)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=jH(c[h>>2]|0,c[u>>2]|0,39120)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=jH(c[h>>2]|0,c[u>>2]|0,39320)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=jH(c[h>>2]|0,c[u>>2]|0,39440)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=hH(c[h>>2]|0,c[u>>2]|0,39600)|0;if((c[g>>2]|0)!=0){break a}c[r>>2]=0;while(1){u=c[o>>2]|0;if((c[r>>2]|0)>=10){break}Xc(u,d[39784+(c[r>>2]|0)>>0]|0,t);c[g>>2]=gd(c[s>>2]|0,d[39784+(c[r>>2]|0)>>0]|0,(c[t>>2]|0)+(d[(c[r>>2]|0)+39785>>0]|0)|0)|0;if((c[g>>2]|0)!=0){break a}c[r>>2]=(c[r>>2]|0)+2}c[g>>2]=kH(u,c[s>>2]|0)|0;if((c[g>>2]|0)!=0){break a}c[g>>2]=Ny(c[s>>2]|0)|0;if((c[g>>2]|0)!=0){break a}y=c[o>>2]|0;zA(y,xA(c[s>>2]|0)|0)|0;y=c[o>>2]|0;b=Zc(c[s>>2]|0)|0;c[g>>2]=Ig(y,b,c[j>>2]|0,1)|0;break a}}}while(0);c[g>>2]=7}}}}}while(0);c[(c[h>>2]|0)+24>>2]=c[k>>2];c[(c[h>>2]|0)+80>>2]=c[l>>2];c[(c[h>>2]|0)+84>>2]=c[m>>2];c[(c[h>>2]|0)+164>>2]=c[f>>2];Ig(c[o>>2]|0,-1,-1,1)|0;a[(c[h>>2]|0)+62>>0]=1;if((c[p>>2]|0)!=0){zr(c[(c[p>>2]|0)+4>>2]|0)|0;c[(c[p>>2]|0)+4>>2]=0;c[(c[p>>2]|0)+12>>2]=0}hd(c[h>>2]|0);c[n>>2]=c[g>>2];b=c[n>>2]|0;i=q;return b|0}function KG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;k=d+20|0;e=d;f=d+4|0;h=d+8|0;j=d+12|0;g=d+16|0;c[k>>2]=b;c[f>>2]=c[(c[k>>2]|0)+4>>2];Uc(c[k>>2]|0);if((a[(c[f>>2]|0)+17>>0]|0)==0){c[e>>2]=101;k=c[e>>2]|0;i=d;return k|0}c[h>>2]=dD(c[f>>2]|0)|0;c[j>>2]=zo((c[(c[(c[f>>2]|0)+12>>2]|0)+56>>2]|0)+36|0)|0;c[g>>2]=WG(c[f>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;if((c[h>>2]|0)>>>0<(c[g>>2]|0)>>>0){c[e>>2]=dq(54318)|0;k=c[e>>2]|0;i=d;return k|0}if(!((c[j>>2]|0)>>>0>0)){c[e>>2]=101;k=c[e>>2]|0;i=d;return k|0}c[e>>2]=hF(c[f>>2]|0,0,0)|0;if((c[e>>2]|0)==0){XG(c[f>>2]|0);c[e>>2]=YG(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,0)|0}if((c[e>>2]|0)!=0){k=c[e>>2]|0;i=d;return k|0}c[e>>2]=ld(c[(c[(c[f>>2]|0)+12>>2]|0)+68>>2]|0)|0;Xq((c[(c[(c[f>>2]|0)+12>>2]|0)+56>>2]|0)+28|0,c[(c[f>>2]|0)+44>>2]|0);k=c[e>>2]|0;i=d;return k|0}function LG(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+16|0;j=g+8|0;k=g;m=g+13|0;h=g+4|0;l=g+12|0;c[j>>2]=b;c[k>>2]=e;a[m>>0]=f;c[h>>2]=0;if((a[(c[j>>2]|0)+9>>0]|0)==0){b=c[h>>2]|0;i=g;return b|0}a[l>>0]=1+(d[m>>0]|0);Uc(c[j>>2]|0);c[h>>2]=bF(c[j>>2]|0,c[k>>2]|0,a[l>>0]|0)|0;if((c[h>>2]|0)!=0){b=c[h>>2]|0;i=g;return b|0}c[h>>2]=VG(c[j>>2]|0,c[k>>2]|0,a[l>>0]|0)|0;b=c[h>>2]|0;i=g;return b|0}function MG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;h=e;k=e+4|0;j=e+8|0;l=e+12|0;g=e+16|0;c[h>>2]=a;c[k>>2]=b;c[j>>2]=0;if((c[(c[h>>2]|0)+296>>2]|0)>0){if((c[(c[h>>2]|0)+320>>2]|0)==0){c[f>>2]=6;a=c[f>>2]|0;i=e;return a|0}}if((c[k>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}c[l>>2]=c[c[(c[k>>2]|0)+8>>2]>>2];if((c[(c[l>>2]|0)+56>>2]|0)!=0){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[h>>2]|0)+296>>2]|0)){break}if((c[(c[(c[h>>2]|0)+320>>2]|0)+(c[g>>2]<<2)>>2]|0)==(c[k>>2]|0)){d=10;break}c[g>>2]=(c[g>>2]|0)+1}if((d|0)==10){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}c[j>>2]=TG(c[h>>2]|0)|0;if((c[j>>2]|0)==0){c[j>>2]=ub[c[(c[l>>2]|0)+56>>2]&63](c[(c[k>>2]|0)+8>>2]|0)|0;if((c[j>>2]|0)==0){UG(c[h>>2]|0,c[k>>2]|0)}}}c[f>>2]=c[j>>2];a=c[f>>2]|0;i=e;return a|0}function NG(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+48|0;m=g;h=g+28|0;o=g+24|0;p=g+20|0;k=g+32|0;l=g+8|0;j=g+4|0;f=g+12|0;n=g+16|0;c[h>>2]=a;c[o>>2]=b;c[p>>2]=d;c[k>>2]=e;c[l>>2]=0;c[j>>2]=cw(c[h>>2]|0,c[p>>2]|0,c[(c[(c[h>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2]|0)|0;c[n>>2]=c[c[(c[j>>2]|0)+56>>2]>>2];a=(c[h>>2]|0)+300|0;e=c[n>>2]|0;c[f>>2]=zh(a,e,Ub(c[n>>2]|0)|0)|0;e=c[h>>2]|0;if((c[f>>2]|0)!=0){c[l>>2]=fy(e,c[j>>2]|0,c[f>>2]|0,c[(c[c[f>>2]>>2]|0)+4>>2]|0,c[k>>2]|0)|0}else{c[m>>2]=c[n>>2];p=cf(e,24464,m)|0;c[c[k>>2]>>2]=p;c[l>>2]=1}if((c[l>>2]|0)!=0){p=c[l>>2]|0;i=g;return p|0}if((ww(c[h>>2]|0,c[j>>2]|0)|0)==0){p=c[l>>2]|0;i=g;return p|0}c[l>>2]=TG(c[h>>2]|0)|0;if((c[l>>2]|0)!=0){p=c[l>>2]|0;i=g;return p|0}p=c[h>>2]|0;UG(p,ww(c[h>>2]|0,c[j>>2]|0)|0);p=c[l>>2]|0;i=g;return p|0}function OG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;g=e+20|0;k=e;l=e+4|0;f=e+8|0;h=e+12|0;j=e+16|0;c[g>>2]=a;c[k>>2]=b;c[l>>2]=d;c[f>>2]=0;c[h>>2]=cw(c[g>>2]|0,c[l>>2]|0,c[(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<4)>>2]|0)|0;if((c[h>>2]|0)==0){l=c[f>>2]|0;i=e;return l|0}if((c[(c[h>>2]|0)+60>>2]|0)==0){l=c[f>>2]|0;i=e;return l|0}c[j>>2]=gF(c[g>>2]|0,c[h>>2]|0)|0;c[f>>2]=ub[c[(c[c[(c[j>>2]|0)+4>>2]>>2]|0)+20>>2]&63](c[(c[j>>2]|0)+8>>2]|0)|0;if((c[f>>2]|0)!=0){l=c[f>>2]|0;i=e;return l|0}c[(c[j>>2]|0)+8>>2]=0;c[(c[h>>2]|0)+60>>2]=0;Cr(c[j>>2]|0);l=c[f>>2]|0;i=e;return l|0}function PG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;d=e+4|0;c[g>>2]=a;c[f>>2]=b;Uc(c[g>>2]|0);c[d>>2]=SG(c[c[(c[g>>2]|0)+4>>2]>>2]|0,c[f>>2]|0)|0;i=e;return c[d>>2]|0}function QG(e,f){e=e|0;f=f|0;var g=0,j=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;g=i;i=i+240|0;s=g+40|0;p=g+116|0;t=g+112|0;r=g+108|0;n=g+104|0;o=g+100|0;l=g+96|0;m=g+88|0;y=g+120|0;q=g+80|0;j=g+52|0;z=g+48|0;w=g+92|0;u=g+124|0;v=g;x=g+84|0;c[p>>2]=e;c[t>>2]=f;c[n>>2]=0;c[o>>2]=1;c[r>>2]=c[c[p>>2]>>2];tc(j,g+128|0,100,c[(c[r>>2]|0)+88>>2]|0);c[j>>2]=c[r>>2];if((c[(c[r>>2]|0)+152>>2]|0)>1){while(1){if((a[c[t>>2]>>0]|0)==0){break}c[z>>2]=c[t>>2];do{e=c[t>>2]|0;c[t>>2]=e+1;if((a[e>>0]|0)==10){break}}while((a[c[t>>2]>>0]|0)!=0);Jt(j,38496,3);Jt(j,c[z>>2]|0,(c[t>>2]|0)-(c[z>>2]|0)|0)}e=vc(j)|0;i=g;return e|0}while(1){if((a[c[t>>2]>>0]|0)==0){l=31;break}c[l>>2]=RG(c[t>>2]|0,m)|0;Jt(j,c[t>>2]|0,c[l>>2]|0);c[t>>2]=(c[t>>2]|0)+(c[l>>2]|0);if((c[m>>2]|0)==0){l=31;break}do{if((a[c[t>>2]>>0]|0)==63){if((c[m>>2]|0)>1){Wg((c[t>>2]|0)+1|0,n)|0;break}else{c[n>>2]=c[o>>2];break}}else{c[n>>2]=We(c[p>>2]|0,c[t>>2]|0,c[m>>2]|0)|0}}while(0);c[t>>2]=(c[t>>2]|0)+(c[m>>2]|0);c[o>>2]=(c[n>>2]|0)+1;c[q>>2]=(c[(c[p>>2]|0)+60>>2]|0)+(((c[n>>2]|0)-1|0)*40|0);if((b[(c[q>>2]|0)+28>>1]&1|0)!=0){Jt(j,16376,4);continue}z=c[q>>2]|0;if((b[(c[q>>2]|0)+28>>1]&4|0)!=0){z=z+16|0;f=c[z+4>>2]|0;e=s;c[e>>2]=c[z>>2];c[e+4>>2]=f;Wt(j,0,15992,s);continue}f=c[q>>2]|0;if((b[z+28>>1]&8|0)!=0){h[k>>3]=+h[f+8>>3];c[s>>2]=c[k>>2];c[s+4>>2]=c[k+4>>2];Wt(j,0,16344,s);continue}if((b[f+28>>1]&2|0)!=0){a[u>>0]=a[(c[(c[(c[r>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;if((d[u>>0]|0)!=1){f=v+0|0;z=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(z|0));c[v>>2]=c[r>>2];Yd(v,c[(c[q>>2]|0)+4>>2]|0,c[(c[q>>2]|0)+24>>2]|0,a[u>>0]|0,0)|0;sr(v,1)|0;c[q>>2]=v}c[w>>2]=c[(c[q>>2]|0)+24>>2];e=c[(c[q>>2]|0)+4>>2]|0;c[s>>2]=c[w>>2];c[s+4>>2]=e;Wt(j,0,38504,s);if((d[u>>0]|0)==1){continue}Gd(v);continue}if((b[(c[q>>2]|0)+28>>1]&16384|0)!=0){c[s>>2]=c[(c[q>>2]|0)+16>>2];Wt(j,0,38512,s);continue}Jt(j,38528,2);c[x>>2]=c[(c[q>>2]|0)+24>>2];c[y>>2]=0;while(1){if((c[y>>2]|0)>=(c[x>>2]|0)){break}c[s>>2]=a[(c[(c[q>>2]|0)+4>>2]|0)+(c[y>>2]|0)>>0]&255;Wt(j,0,38536,s);c[y>>2]=(c[y>>2]|0)+1}Jt(j,38544,1)}if((l|0)==31){e=vc(j)|0;i=g;return e|0}return 0}function RG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;j=g+16|0;h=g;k=g+4|0;f=g+8|0;l=g+12|0;c[j>>2]=b;c[h>>2]=d;c[f>>2]=0;c[c[h>>2]>>2]=0;while(1){if((a[c[j>>2]>>0]|0)==0){e=6;break}c[l>>2]=et(c[j>>2]|0,k)|0;d=c[l>>2]|0;if((c[k>>2]|0)==135){break}c[f>>2]=(c[f>>2]|0)+d;c[j>>2]=(c[j>>2]|0)+(c[l>>2]|0)}if((e|0)==6){b=c[f>>2]|0;i=g;return b|0}c[c[h>>2]>>2]=d;b=c[f>>2]|0;i=g;return b|0}function SG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+4|0;f=e;c[d>>2]=a;c[f>>2]=b;if((c[f>>2]|0)>0){c[(c[d>>2]|0)+156>>2]=c[f>>2]}i=e;return c[(c[d>>2]|0)+156>>2]|0}function TG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+32|0;d=b+16|0;e=b;f=b+8|0;g=b+12|0;c[e>>2]=a;c[b+4>>2]=5;do{if(((c[(c[e>>2]|0)+296>>2]|0)%5|0|0)==0){c[g>>2]=(c[(c[e>>2]|0)+296>>2]|0)+5<<2;c[f>>2]=Ot(c[e>>2]|0,c[(c[e>>2]|0)+320>>2]|0,c[g>>2]|0)|0;if((c[f>>2]|0)!=0){g=(c[f>>2]|0)+(c[(c[e>>2]|0)+296>>2]<<2)|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[(c[e>>2]|0)+320>>2]=c[f>>2];break}c[d>>2]=7;g=c[d>>2]|0;i=b;return g|0}}while(0);c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}function UG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;b=c[e>>2]|0;g=(c[f>>2]|0)+296|0;a=c[g>>2]|0;c[g>>2]=a+1;c[(c[(c[f>>2]|0)+320>>2]|0)+(a<<2)>>2]=b;qF(c[e>>2]|0);i=d;return}function VG(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;g=o+20|0;l=o;k=o+4|0;n=o+24|0;m=o+12|0;j=o+16|0;p=o+8|0;c[l>>2]=b;c[k>>2]=e;a[n>>0]=f;c[m>>2]=c[(c[l>>2]|0)+4>>2];c[j>>2]=0;c[p>>2]=c[(c[m>>2]|0)+72>>2];while(1){if((c[p>>2]|0)==0){break}if((c[(c[p>>2]|0)+4>>2]|0)==(c[k>>2]|0)){if((c[c[p>>2]>>2]|0)==(c[l>>2]|0)){h=5;break}}c[p>>2]=c[(c[p>>2]|0)+12>>2]}if((h|0)==5){c[j>>2]=c[p>>2]}do{if((c[j>>2]|0)==0){c[j>>2]=Sc(16)|0;if((c[j>>2]|0)!=0){c[(c[j>>2]|0)+4>>2]=c[k>>2];c[c[j>>2]>>2]=c[l>>2];c[(c[j>>2]|0)+12>>2]=c[(c[m>>2]|0)+72>>2];c[(c[m>>2]|0)+72>>2]=c[j>>2];break}c[g>>2]=7;b=c[g>>2]|0;i=o;return b|0}}while(0);if((d[n>>0]|0|0)>(d[(c[j>>2]|0)+8>>0]|0|0)){a[(c[j>>2]|0)+8>>0]=a[n>>0]|0}c[g>>2]=0;b=c[g>>2]|0;i=o;return b|0}function WG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;g=e+20|0;h=e;k=e+4|0;l=e+8|0;j=e+12|0;f=e+16|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=((c[(c[g>>2]|0)+36>>2]|0)>>>0)/5|0;a=(c[k>>2]|0)-(c[h>>2]|0)|0;a=a+(sD(c[g>>2]|0,c[h>>2]|0)|0)|0;c[j>>2]=((a+(c[l>>2]|0)|0)>>>0)/((c[l>>2]|0)>>>0)|0;c[f>>2]=(c[h>>2]|0)-(c[k>>2]|0)-(c[j>>2]|0);if((c[h>>2]|0)>>>0>((((c[368]|0)>>>0)/((c[(c[g>>2]|0)+32>>2]|0)>>>0)|0)+1|0)>>>0){if((c[f>>2]|0)>>>0<((((c[368]|0)>>>0)/((c[(c[g>>2]|0)+32>>2]|0)>>>0)|0)+1|0)>>>0){c[f>>2]=(c[f>>2]|0)+ -1}}while(1){l=sD(c[g>>2]|0,c[f>>2]|0)|0;if((l|0)==(c[f>>2]|0)){b=1}else{b=(c[f>>2]|0)==((((c[368]|0)>>>0)/((c[(c[g>>2]|0)+32>>2]|0)>>>0)|0)+1|0)}d=c[f>>2]|0;if(!b){break}c[f>>2]=d+ -1}i=e;return d|0}function XG(b){b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=b;c[f>>2]=c[(c[g>>2]|0)+8>>2];while(1){if((c[f>>2]|0)==0){break}g=(c[f>>2]|0)+80|0;a[g>>0]=(d[g>>0]|0)&-5;c[f>>2]=c[(c[f>>2]|0)+8>>2]}i=e;return}function YG(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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=i;i=i+64|0;t=k+36|0;o=k+28|0;v=k+32|0;q=k+40|0;m=k+44|0;z=k+48|0;l=k+52|0;x=k+56|0;y=k+24|0;p=k+16|0;n=k+12|0;s=k+8|0;w=k+4|0;u=k+57|0;h=k;r=k+20|0;c[o>>2]=b;c[v>>2]=e;c[q>>2]=f;c[m>>2]=g;b=sD(c[o>>2]|0,c[q>>2]|0)|0;do{if((b|0)!=(c[q>>2]|0)){if((c[q>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[o>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){c[z>>2]=zo((c[(c[(c[o>>2]|0)+12>>2]|0)+56>>2]|0)+36|0)|0;if((c[z>>2]|0)==0){c[t>>2]=101;b=c[t>>2]|0;i=k;return b|0}c[l>>2]=tD(c[o>>2]|0,c[q>>2]|0,x,y)|0;if((c[l>>2]|0)!=0){c[t>>2]=c[l>>2];b=c[t>>2]|0;i=k;return b|0}if((d[x>>0]|0|0)==1){c[t>>2]=dq(54203)|0;b=c[t>>2]|0;i=k;return b|0}if((d[x>>0]|0|0)==2){if((c[m>>2]|0)!=0){break}c[l>>2]=ZG(c[o>>2]|0,n,p,c[q>>2]|0,1)|0;if((c[l>>2]|0)==0){Gr(c[n>>2]|0);break}c[t>>2]=c[l>>2];b=c[t>>2]|0;i=k;return b|0}a[u>>0]=0;c[h>>2]=0;c[l>>2]=eD(c[o>>2]|0,c[q>>2]|0,w,0)|0;if((c[l>>2]|0)!=0){c[t>>2]=c[l>>2];b=c[t>>2]|0;i=k;return b|0}if((c[m>>2]|0)==0){a[u>>0]=2;c[h>>2]=c[v>>2]}do{c[l>>2]=ZG(c[o>>2]|0,r,s,c[h>>2]|0,a[u>>0]|0)|0;if((c[l>>2]|0)!=0){j=19;break}Gr(c[r>>2]|0);if((c[m>>2]|0)==0){break}}while((c[s>>2]|0)>>>0>(c[v>>2]|0)>>>0);if((j|0)==19){Gr(c[w>>2]|0);c[t>>2]=c[l>>2];b=c[t>>2]|0;i=k;return b|0}c[l>>2]=_G(c[o>>2]|0,c[w>>2]|0,a[x>>0]|0,c[y>>2]|0,c[s>>2]|0,c[m>>2]|0)|0;Gr(c[w>>2]|0);if((c[l>>2]|0)!=0){c[t>>2]=c[l>>2];b=c[t>>2]|0;i=k;return b|0}}}}while(0);if((c[m>>2]|0)==0){while(1){c[q>>2]=(c[q>>2]|0)+ -1;if((c[q>>2]|0)==((((c[368]|0)>>>0)/((c[(c[o>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){continue}b=sD(c[o>>2]|0,c[q>>2]|0)|0;if((b|0)!=(c[q>>2]|0)){break}}a[(c[o>>2]|0)+19>>0]=1;c[(c[o>>2]|0)+44>>2]=c[q>>2]}c[t>>2]=0;b=c[t>>2]|0;i=k;return b|0}function ZG(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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,G=0,H=0,I=0,J=0,K=0,L=0;m=i;i=i+112|0;j=m+72|0;v=m+56|0;l=m+60|0;r=m+64|0;z=m+68|0;B=m+98|0;s=m+76|0;k=m+80|0;L=m+84|0;u=m+88|0;C=m+92|0;o=m+52|0;w=m+20|0;q=m;t=m+97|0;I=m+96|0;x=m+4|0;y=m+8|0;D=m+12|0;A=m+16|0;n=m+24|0;E=m+28|0;H=m+32|0;G=m+36|0;F=m+40|0;J=m+44|0;K=m+48|0;c[v>>2]=b;c[l>>2]=e;c[r>>2]=f;c[z>>2]=g;a[B>>0]=h;c[C>>2]=0;c[o>>2]=0;c[s>>2]=c[(c[v>>2]|0)+12>>2];c[w>>2]=dD(c[v>>2]|0)|0;c[L>>2]=zo((c[(c[s>>2]|0)+56>>2]|0)+36|0)|0;if((c[L>>2]|0)>>>0>=(c[w>>2]|0)>>>0){c[j>>2]=dq(56167)|0;b=c[j>>2]|0;i=m;return b|0}a:do{if((c[L>>2]|0)>>>0>0){a[t>>0]=0;do{if((d[B>>0]|0)==1){if((c[z>>2]|0)>>>0<=(c[w>>2]|0)>>>0){c[k>>2]=tD(c[v>>2]|0,c[z>>2]|0,I,0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}else{if((d[I>>0]|0)!=2){break}a[t>>0]=1;break}}}else{if((d[B>>0]|0)==2){a[t>>0]=1}}}while(0);c[k>>2]=ld(c[(c[s>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}Xq((c[(c[s>>2]|0)+56>>2]|0)+36|0,(c[L>>2]|0)-1|0);b:while(1){c[o>>2]=c[C>>2];if((c[o>>2]|0)!=0){c[q>>2]=zo(c[(c[o>>2]|0)+56>>2]|0)|0}else{c[q>>2]=zo((c[(c[s>>2]|0)+56>>2]|0)+32|0)|0}if((c[q>>2]|0)>>>0>(c[w>>2]|0)>>>0){c[k>>2]=dq(56216)|0}else{c[k>>2]=eD(c[v>>2]|0,c[q>>2]|0,C,0)|0}if((c[k>>2]|0)!=0){p=22;break}c[u>>2]=zo((c[(c[C>>2]|0)+56>>2]|0)+4|0)|0;if((c[u>>2]|0)==0){if((a[t>>0]|0)!=0){p=27}else{c[k>>2]=ld(c[(c[C>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){break a}c[c[r>>2]>>2]=c[q>>2];b=(c[(c[s>>2]|0)+56>>2]|0)+32|0;e=c[(c[C>>2]|0)+56>>2]|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0;c[c[l>>2]>>2]=c[C>>2];c[C>>2]=0}}else{p=27}c:do{if((p|0)==27){p=0;if((c[u>>2]|0)>>>0>((((c[(c[v>>2]|0)+36>>2]|0)>>>0)/4|0)-2|0)>>>0){p=28;break b}do{if((d[t>>0]|0)!=0){if((c[z>>2]|0)!=(c[q>>2]|0)){if(!((c[q>>2]|0)>>>0<(c[z>>2]|0)>>>0)){break}if((d[B>>0]|0)!=2){break}}c[c[r>>2]>>2]=c[q>>2];c[c[l>>2]>>2]=c[C>>2];a[t>>0]=0;c[k>>2]=ld(c[(c[C>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){break a}do{if((c[u>>2]|0)==0){if((c[o>>2]|0)==0){b=(c[(c[s>>2]|0)+56>>2]|0)+32|0;e=c[(c[C>>2]|0)+56>>2]|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0;break}c[k>>2]=ld(c[(c[o>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){break a}b=c[(c[o>>2]|0)+56>>2]|0;e=c[(c[C>>2]|0)+56>>2]|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0}else{c[y>>2]=zo((c[(c[C>>2]|0)+56>>2]|0)+8|0)|0;if((c[y>>2]|0)>>>0>(c[w>>2]|0)>>>0){p=40;break b}c[k>>2]=eD(c[v>>2]|0,c[y>>2]|0,x,0)|0;if((c[k>>2]|0)!=0){break a}c[k>>2]=ld(c[(c[x>>2]|0)+68>>2]|0)|0;f=c[x>>2]|0;if((c[k>>2]|0)!=0){p=43;break b}b=c[f+56>>2]|0;e=c[(c[C>>2]|0)+56>>2]|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0;Xq((c[(c[x>>2]|0)+56>>2]|0)+4|0,(c[u>>2]|0)-1|0);fL((c[(c[x>>2]|0)+56>>2]|0)+8|0,(c[(c[C>>2]|0)+56>>2]|0)+12|0,(c[u>>2]|0)-1<<2|0)|0;Gr(c[x>>2]|0);if((c[o>>2]|0)==0){Xq((c[(c[s>>2]|0)+56>>2]|0)+32|0,c[y>>2]|0);break}c[k>>2]=ld(c[(c[o>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){break a}Xq(c[(c[o>>2]|0)+56>>2]|0,c[y>>2]|0)}}while(0);c[C>>2]=0;break c}}while(0);if((c[u>>2]|0)>>>0>0){c[n>>2]=c[(c[C>>2]|0)+56>>2];b=(c[z>>2]|0)>>>0>0;c[D>>2]=0;d:do{if(b){if((d[B>>0]|0)==2){c[E>>2]=0;while(1){if(!((c[E>>2]|0)>>>0<(c[u>>2]|0)>>>0)){break d}c[A>>2]=zo((c[n>>2]|0)+(8+(c[E>>2]<<2))|0)|0;f=c[E>>2]|0;if((c[A>>2]|0)>>>0<=(c[z>>2]|0)>>>0){break}c[E>>2]=f+1}c[D>>2]=f;break}else{b=zo((c[n>>2]|0)+8|0)|0;c[H>>2]=Ky(b-(c[z>>2]|0)|0)|0;c[E>>2]=1;while(1){if(!((c[E>>2]|0)>>>0<(c[u>>2]|0)>>>0)){break d}b=zo((c[n>>2]|0)+(8+(c[E>>2]<<2))|0)|0;c[G>>2]=Ky(b-(c[z>>2]|0)|0)|0;if((c[G>>2]|0)<(c[H>>2]|0)){c[D>>2]=c[E>>2];c[H>>2]=c[G>>2]}c[E>>2]=(c[E>>2]|0)+1}}}}while(0);c[A>>2]=zo((c[n>>2]|0)+(8+(c[D>>2]<<2))|0)|0;if((c[A>>2]|0)>>>0>(c[w>>2]|0)>>>0){p=63;break b}if((a[t>>0]|0)!=0){if((c[A>>2]|0)!=(c[z>>2]|0)){if(!((c[A>>2]|0)>>>0<(c[z>>2]|0)>>>0)){break}if((d[B>>0]|0)!=2){break}}}c[c[r>>2]>>2]=c[A>>2];c[k>>2]=ld(c[(c[C>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){break a}if((c[D>>2]|0)>>>0<((c[u>>2]|0)-1|0)>>>0){b=(c[n>>2]|0)+(8+(c[D>>2]<<2))|0;e=(c[n>>2]|0)+(4+(c[u>>2]<<2))|0;a[b+0>>0]=a[e+0>>0]|0;a[b+1>>0]=a[e+1>>0]|0;a[b+2>>0]=a[e+2>>0]|0;a[b+3>>0]=a[e+3>>0]|0}Xq((c[n>>2]|0)+4|0,(c[u>>2]|0)-1|0);b=(fH(c[v>>2]|0,c[c[r>>2]>>2]|0)|0)!=0^1;c[F>>2]=b?1:0;c[k>>2]=eD(c[v>>2]|0,c[c[r>>2]>>2]|0,c[l>>2]|0,c[F>>2]|0)|0;do{if((c[k>>2]|0)==0){c[k>>2]=ld(c[(c[c[l>>2]>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)==0){break}Gr(c[c[l>>2]>>2]|0)}}while(0);a[t>>0]=0}}}while(0);Gr(c[o>>2]|0);c[o>>2]=0;if((a[t>>0]|0)==0){break a}}if((p|0)==22){c[C>>2]=0;break}else if((p|0)==28){c[k>>2]=dq(56244)|0;break}else if((p|0)==40){c[k>>2]=dq(56278)|0;break}else if((p|0)==43){Gr(f);break}else if((p|0)==63){c[k>>2]=dq(56343)|0;break}}else{c[J>>2]=0==(d[(c[v>>2]|0)+19>>0]|0)?1:0;c[k>>2]=ld(c[(c[(c[v>>2]|0)+12>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}b=(c[v>>2]|0)+44|0;c[b>>2]=(c[b>>2]|0)+1;if((c[(c[v>>2]|0)+44>>2]|0)==((((c[368]|0)>>>0)/((c[(c[v>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){b=(c[v>>2]|0)+44|0;c[b>>2]=(c[b>>2]|0)+1}do{if((d[(c[v>>2]|0)+17>>0]|0)!=0){b=sD(c[v>>2]|0,c[(c[v>>2]|0)+44>>2]|0)|0;if((b|0)==(c[(c[v>>2]|0)+44>>2]|0)){c[K>>2]=0;c[k>>2]=eD(c[v>>2]|0,c[(c[v>>2]|0)+44>>2]|0,K,c[J>>2]|0)|0;if((c[k>>2]|0)==0){c[k>>2]=ld(c[(c[K>>2]|0)+68>>2]|0)|0;Gr(c[K>>2]|0)}if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}else{b=(c[v>>2]|0)+44|0;c[b>>2]=(c[b>>2]|0)+1;if((c[(c[v>>2]|0)+44>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[v>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){break}b=(c[v>>2]|0)+44|0;c[b>>2]=(c[b>>2]|0)+1;break}}}}while(0);Xq((c[(c[(c[v>>2]|0)+12>>2]|0)+56>>2]|0)+28|0,c[(c[v>>2]|0)+44>>2]|0);c[c[r>>2]>>2]=c[(c[v>>2]|0)+44>>2];c[k>>2]=eD(c[v>>2]|0,c[c[r>>2]>>2]|0,c[l>>2]|0,c[J>>2]|0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}else{c[k>>2]=ld(c[(c[c[l>>2]>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)==0){break}Gr(c[c[l>>2]>>2]|0);break}}}while(0);Gr(c[C>>2]|0);Gr(c[o>>2]|0);n=c[l>>2]|0;do{if((c[k>>2]|0)==0){b=(Kq(c[(c[n>>2]|0)+68>>2]|0)|0)>1;n=c[c[l>>2]>>2]|0;if(!b){a[n>>0]=0;break}Gr(n);c[c[l>>2]>>2]=0;c[j>>2]=dq(56442)|0;b=c[j>>2]|0;i=m;return b|0}else{c[n>>2]=0}}while(0);c[j>>2]=c[k>>2];b=c[j>>2]|0;i=m;return b|0}function _G(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;r=i;i=i+48|0;l=r+40|0;n=r+36|0;v=r+32|0;q=r+44|0;o=r+28|0;k=r+24|0;w=r+20|0;p=r+12|0;s=r+8|0;x=r+4|0;m=r;u=r+16|0;c[n>>2]=b;c[v>>2]=e;a[q>>0]=f;c[o>>2]=g;c[k>>2]=h;c[w>>2]=j;c[s>>2]=c[(c[v>>2]|0)+72>>2];c[x>>2]=c[c[n>>2]>>2];c[m>>2]=$G(c[x>>2]|0,c[(c[v>>2]|0)+68>>2]|0,c[k>>2]|0,c[w>>2]|0)|0;if((c[m>>2]|0)!=0){c[l>>2]=c[m>>2];x=c[l>>2]|0;i=r;return x|0}c[(c[v>>2]|0)+72>>2]=c[k>>2];if((d[q>>0]|0|0)==5){t=5}else{if((d[q>>0]|0|0)==1){t=5}else{c[u>>2]=zo(c[(c[v>>2]|0)+56>>2]|0)|0;if((c[u>>2]|0)!=0){bH(c[n>>2]|0,c[u>>2]|0,4,c[k>>2]|0,m);if((c[m>>2]|0)!=0){c[l>>2]=c[m>>2];x=c[l>>2]|0;i=r;return x|0}}}}if((t|0)==5){c[m>>2]=aH(c[v>>2]|0)|0;if((c[m>>2]|0)!=0){c[l>>2]=c[m>>2];x=c[l>>2]|0;i=r;return x|0}}do{if((d[q>>0]|0|0)!=1){c[m>>2]=eD(c[n>>2]|0,c[o>>2]|0,p,0)|0;if((c[m>>2]|0)!=0){c[l>>2]=c[m>>2];x=c[l>>2]|0;i=r;return x|0}c[m>>2]=ld(c[(c[p>>2]|0)+68>>2]|0)|0;t=c[p>>2]|0;if((c[m>>2]|0)!=0){Gr(t);c[l>>2]=c[m>>2];x=c[l>>2]|0;i=r;return x|0}else{c[m>>2]=cH(t,c[s>>2]|0,c[k>>2]|0,a[q>>0]|0)|0;Gr(c[p>>2]|0);if((c[m>>2]|0)!=0){break}bH(c[n>>2]|0,c[k>>2]|0,a[q>>0]|0,c[o>>2]|0,m);break}}}while(0);c[l>>2]=c[m>>2];x=c[l>>2]|0;i=r;return x|0}function $G(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+48|0;k=q+36|0;n=q+32|0;m=q+28|0;o=q+24|0;t=q+20|0;p=q+16|0;j=q+8|0;l=q+4|0;r=q;s=q+12|0;c[n>>2]=d;c[m>>2]=f;c[o>>2]=g;c[t>>2]=h;c[j>>2]=0;if((a[(c[n>>2]|0)+15>>0]|0)!=0){c[l>>2]=ld(c[m>>2]|0)|0;if((c[l>>2]|0)!=0){c[k>>2]=c[l>>2];d=c[k>>2]|0;i=q;return d|0}}if((b[(c[m>>2]|0)+24>>1]&2|0)!=0){if((Qq(c[m>>2]|0)|0)!=0){d=Rq(c[m>>2]|0)|0;c[l>>2]=d;if(0!=(d|0)){c[k>>2]=c[l>>2];d=c[k>>2]|0;i=q;return d|0}}}if((b[(c[m>>2]|0)+24>>1]&4|0)!=0){if((c[t>>2]|0)==0){c[j>>2]=c[(c[m>>2]|0)+20>>2]}}d=(c[m>>2]|0)+24|0;b[d>>1]=e[d>>1]&-5;c[p>>2]=Ap(c[n>>2]|0,c[o>>2]|0)|0;do{if((c[p>>2]|0)!=0){h=(c[m>>2]|0)+24|0;b[h>>1]=e[h>>1]|b[(c[p>>2]|0)+24>>1]&4;h=c[p>>2]|0;if((a[(c[n>>2]|0)+15>>0]|0)!=0){eH(h,(c[(c[n>>2]|0)+24>>2]|0)+1|0);break}else{Wp(h);break}}}while(0);c[r>>2]=c[(c[m>>2]|0)+20>>2];eH(c[m>>2]|0,c[o>>2]|0);Cp(c[m>>2]|0);if((a[(c[n>>2]|0)+15>>0]|0)!=0){eH(c[p>>2]|0,c[r>>2]|0);Zp(c[p>>2]|0)}do{if((c[j>>2]|0)!=0){c[l>>2]=ad(c[n>>2]|0,c[j>>2]|0,s,0)|0;if((c[l>>2]|0)==0){d=(c[s>>2]|0)+24|0;b[d>>1]=e[d>>1]|4;Cp(c[s>>2]|0);Zp(c[s>>2]|0);break}if((c[j>>2]|0)>>>0<=(c[(c[n>>2]|0)+28>>2]|0)>>>0){th(c[(c[n>>2]|0)+56>>2]|0,c[j>>2]|0,c[(c[n>>2]|0)+200>>2]|0)}c[k>>2]=c[l>>2];d=c[k>>2]|0;i=q;return d|0}}while(0);c[k>>2]=0;d=c[k>>2]|0;i=q;return d|0}function aH(b){b=b|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+48|0;h=f+16|0;p=f+32|0;q=f+28|0;l=f+24|0;g=f+20|0;j=f+36|0;m=f+8|0;n=f+4|0;o=f;k=f+12|0;c[h>>2]=b;c[g>>2]=c[(c[h>>2]|0)+52>>2];a[j>>0]=a[c[h>>2]>>0]|0;c[m>>2]=c[(c[h>>2]|0)+72>>2];c[l>>2]=Lq(c[h>>2]|0)|0;if((c[l>>2]|0)!=0){q=a[j>>0]|0;b=c[h>>2]|0;a[b>>0]=q;b=c[l>>2]|0;i=f;return b|0}c[q>>2]=e[(c[h>>2]|0)+16>>1]|0;c[p>>2]=0;while(1){b=c[h>>2]|0;if((c[p>>2]|0)>=(c[q>>2]|0)){break}c[n>>2]=(c[b+56>>2]|0)+(e[(c[h>>2]|0)+18>>1]&(d[(c[(c[h>>2]|0)+64>>2]|0)+(c[p>>2]<<1)>>0]<<8|d[(c[(c[h>>2]|0)+64>>2]|0)+(c[p>>2]<<1)+1>>0]));dH(c[h>>2]|0,c[n>>2]|0,l);if((a[(c[h>>2]|0)+3>>0]|0)==0){c[o>>2]=zo(c[n>>2]|0)|0;bH(c[g>>2]|0,c[o>>2]|0,5,c[m>>2]|0,l)}c[p>>2]=(c[p>>2]|0)+1}if((a[b+3>>0]|0)!=0){q=a[j>>0]|0;b=c[h>>2]|0;a[b>>0]=q;b=c[l>>2]|0;i=f;return b|0}c[k>>2]=zo((c[(c[h>>2]|0)+56>>2]|0)+((d[(c[h>>2]|0)+5>>0]|0)+8)|0)|0;bH(c[g>>2]|0,c[k>>2]|0,5,c[m>>2]|0,l);q=a[j>>0]|0;b=c[h>>2]|0;a[b>>0]=q;b=c[l>>2]|0;i=f;return b|0}function bH(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+48|0;t=q+32|0;r=q+28|0;j=q+36|0;p=q+24|0;k=q+20|0;m=q+16|0;n=q+8|0;s=q+4|0;o=q;l=q+12|0;c[t>>2]=b;c[r>>2]=e;a[j>>0]=f;c[p>>2]=g;c[k>>2]=h;if((c[c[k>>2]>>2]|0)!=0){i=q;return}if((c[r>>2]|0)==0){b=dq(51976)|0;c[c[k>>2]>>2]=b;i=q;return}c[s>>2]=sD(c[t>>2]|0,c[r>>2]|0)|0;c[l>>2]=ad(c[c[t>>2]>>2]|0,c[s>>2]|0,m,0)|0;if((c[l>>2]|0)!=0){c[c[k>>2]>>2]=c[l>>2];i=q;return}c[o>>2]=((c[r>>2]|0)-(c[s>>2]|0)-1|0)*5;do{if((c[o>>2]|0)<0){b=dq(51987)|0;c[c[k>>2]>>2]=b}else{c[n>>2]=cd(c[m>>2]|0)|0;if((d[j>>0]|0|0)==(d[(c[n>>2]|0)+(c[o>>2]|0)>>0]|0|0)){b=zo((c[n>>2]|0)+((c[o>>2]|0)+1)|0)|0;if((b|0)==(c[p>>2]|0)){break}}b=ld(c[m>>2]|0)|0;c[l>>2]=b;c[c[k>>2]>>2]=b;if((c[l>>2]|0)==0){a[(c[n>>2]|0)+(c[o>>2]|0)>>0]=a[j>>0]|0;Xq((c[n>>2]|0)+((c[o>>2]|0)+1)|0,c[p>>2]|0)}}}while(0);dd(c[m>>2]|0);i=q;return}function cH(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;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;r=i;i=i+64|0;l=r+44|0;n=r+56|0;o=r+52|0;m=r+48|0;j=r+61|0;q=r+60|0;s=r+36|0;t=r+32|0;u=r+40|0;p=r;c[n>>2]=b;c[o>>2]=f;c[m>>2]=g;a[j>>0]=h;h=c[n>>2]|0;do{if((d[j>>0]|0|0)==4){b=zo(c[h+56>>2]|0)|0;if((b|0)==(c[o>>2]|0)){Xq(c[(c[n>>2]|0)+56>>2]|0,c[m>>2]|0);break}c[l>>2]=dq(54035)|0;b=c[l>>2]|0;i=r;return b|0}else{a[q>>0]=a[h>>0]|0;Lq(c[n>>2]|0)|0;c[t>>2]=e[(c[n>>2]|0)+16>>1]|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[t>>2]|0)){break}c[u>>2]=(c[(c[n>>2]|0)+56>>2]|0)+((e[(c[n>>2]|0)+18>>1]|0)&((d[(c[(c[n>>2]|0)+64>>2]|0)+(c[s>>2]<<1)>>0]|0)<<8|(d[(c[(c[n>>2]|0)+64>>2]|0)+(c[s>>2]<<1)+1>>0]|0)));if((d[j>>0]|0|0)==3){nD(c[n>>2]|0,c[u>>2]|0,p);if((e[p+24>>1]|0|0)!=0){if(((c[u>>2]|0)+(e[p+24>>1]|0)+3|0)>>>0<=((c[(c[n>>2]|0)+56>>2]|0)+(e[(c[n>>2]|0)+18>>1]|0)|0)>>>0){b=c[o>>2]|0;if((b|0)==(zo((c[u>>2]|0)+(e[p+24>>1]|0)|0)|0)){k=11;break}}}}else{b=zo(c[u>>2]|0)|0;if((b|0)==(c[o>>2]|0)){k=13;break}}c[s>>2]=(c[s>>2]|0)+1}if((k|0)==11){Xq((c[u>>2]|0)+(e[p+24>>1]|0)|0,c[m>>2]|0)}else if((k|0)==13){Xq(c[u>>2]|0,c[m>>2]|0)}do{if((c[s>>2]|0)==(c[t>>2]|0)){if((d[j>>0]|0|0)==5){b=zo((c[(c[n>>2]|0)+56>>2]|0)+((d[(c[n>>2]|0)+5>>0]|0)+8)|0)|0;if((b|0)==(c[o>>2]|0)){Xq((c[(c[n>>2]|0)+56>>2]|0)+((d[(c[n>>2]|0)+5>>0]|0)+8)|0,c[m>>2]|0);break}}c[l>>2]=dq(54069)|0;b=c[l>>2]|0;i=r;return b|0}}while(0);a[c[n>>2]>>0]=a[q>>0]|0}}while(0);c[l>>2]=0;b=c[l>>2]|0;i=r;return b|0}function dH(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+48|0;l=g+44|0;h=g+36|0;m=g+32|0;j=g;k=g+40|0;c[l>>2]=a;c[h>>2]=d;c[m>>2]=f;if((c[c[m>>2]>>2]|0)!=0){i=g;return}nD(c[l>>2]|0,c[h>>2]|0,j);if((b[j+24>>1]|0)==0){i=g;return}c[k>>2]=zo((c[h>>2]|0)+(e[j+24>>1]|0)|0)|0;bH(c[(c[l>>2]|0)+52>>2]|0,c[k>>2]|0,3,c[(c[l>>2]|0)+72>>2]|0,c[m>>2]|0);i=g;return}function eH(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[f>>2]=a;c[g>>2]=d;c[h>>2]=c[(c[f>>2]|0)+28>>2];Bb[c[45276>>2]&3](c[(c[h>>2]|0)+40>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+20>>2]|0,c[g>>2]|0);c[(c[f>>2]|0)+20>>2]=c[g>>2];if((b[(c[f>>2]|0)+24>>1]&2|0)==0){i=e;return}if((b[(c[f>>2]|0)+24>>1]&4|0)==0){i=e;return}oh(c[f>>2]|0);Ep(c[f>>2]|0);i=e;return}function fH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=c[(c[g>>2]|0)+60>>2];if((c[e>>2]|0)==0){g=0;g=g&1;i=d;return g|0}g=c[f>>2]|0;if(g>>>0>(vh(c[e>>2]|0)|0)>>>0){g=1;g=g&1;i=d;return g|0}g=(uh(c[e>>2]|0,c[f>>2]|0)|0)!=0;g=g&1;i=d;return g|0}function gH(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+15>>0]|0|0}function hH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+20|0;h=e+4|0;g=e+8|0;k=e+12|0;j=e+16|0;c[h>>2]=a;c[g>>2]=b;c[k>>2]=d;if((c[k>>2]|0)==0){c[f>>2]=7;a=c[f>>2]|0;i=e;return a|0}if(0!=(Gf(c[h>>2]|0,c[k>>2]|0,-1,j,0)|0)){b=c[g>>2]|0;a=c[h>>2]|0;$t(b,a,Ff(c[h>>2]|0)|0,e);c[f>>2]=Ef(c[h>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}else{le(c[j>>2]|0)|0;c[f>>2]=mH(c[h>>2]|0,c[j>>2]|0,c[g>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}return 0}function iH(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;Uc(c[e>>2]|0);c[b>>2]=(c[(c[(c[e>>2]|0)+4>>2]|0)+32>>2]|0)-(c[(c[(c[e>>2]|0)+4>>2]|0)+36>>2]|0);i=d;return c[b>>2]|0}function jH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;f=j+20|0;h=j;k=j+4|0;l=j+8|0;e=j+12|0;g=j+16|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[g>>2]=Gf(c[h>>2]|0,c[l>>2]|0,-1,e,0)|0;if((c[g>>2]|0)!=0){c[f>>2]=c[g>>2];l=c[f>>2]|0;i=j;return l|0}while(1){l=100==(le(c[e>>2]|0)|0);d=c[h>>2]|0;if(!l){b=6;break}l=c[k>>2]|0;c[g>>2]=hH(d,l,Fe(c[e>>2]|0,0)|0)|0;if((c[g>>2]|0)!=0){b=5;break}}if((b|0)==5){mH(c[h>>2]|0,c[e>>2]|0,c[k>>2]|0)|0;c[f>>2]=c[g>>2];l=c[f>>2]|0;i=j;return l|0}else if((b|0)==6){c[f>>2]=mH(d,c[e>>2]|0,c[k>>2]|0)|0;l=c[f>>2]|0;i=j;return l|0}return 0}function kH(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+80|0;f=k+68|0;h=k+64|0;g=k+8|0;m=k+12|0;j=k+16|0;l=k;c[f>>2]=a;c[h>>2]=d;Uc(c[f>>2]|0);Uc(c[h>>2]|0);c[m>>2]=jd(Zb(c[f>>2]|0)|0)|0;if((c[c[m>>2]>>2]|0)!=0){d=Zc(c[h>>2]|0)|0;d=nL(d|0,((d|0)<0)<<31>>31|0,$c(c[h>>2]|0)|0,0)|0;a=l;c[a>>2]=d;c[a+4>>2]=D;a=Hg(c[m>>2]|0,11,l)|0;c[g>>2]=a;c[g>>2]=(c[g>>2]|0)==12?0:a;if((c[g>>2]|0)!=0){a=c[g>>2]|0;i=k;return a|0}}l=j+0|0;d=l+48|0;do{c[l>>2]=0;l=l+4|0}while((l|0)<(d|0));c[j+20>>2]=c[c[h>>2]>>2];c[j+24>>2]=c[h>>2];c[j+4>>2]=c[f>>2];c[j+16>>2]=1;Tc(j,2147483647)|0;c[g>>2]=td(j)|0;if((c[g>>2]|0)==0){a=(c[(c[f>>2]|0)+4>>2]|0)+22|0;b[a>>1]=(e[a>>1]|0)&-3;a=c[g>>2]|0;i=k;return a|0}else{lH(Zb(c[j+4>>2]|0)|0);a=c[g>>2]|0;i=k;return a|0}return 0}function lH(b){b=b|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=b;if((a[(c[f>>2]|0)+15>>0]|0)!=0){i=e;return}if((d[(c[f>>2]|0)+12>>0]|0)!=0){i=e;return}fh(c[f>>2]|0);i=e;return}function mH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+16|0;j=e+4|0;g=e+8|0;f=e+12|0;c[h>>2]=a;c[j>>2]=b;c[g>>2]=d;c[f>>2]=Ad(c[j>>2]|0)|0;if((c[f>>2]|0)==0){j=c[f>>2]|0;i=e;return j|0}a=c[g>>2]|0;j=c[h>>2]|0;$t(a,j,Ff(c[h>>2]|0)|0,e);j=c[f>>2]|0;i=e;return j|0}function nH(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+64|0;e=g+16|0;h=g+32|0;f=g+28|0;q=g+24|0;m=g+20|0;n=g+12|0;o=g+8|0;p=g+4|0;l=g;j=g+40|0;c[h>>2]=b;c[f>>2]=0;if((d[(c[h>>2]|0)+15>>0]|0)!=0){if((c[(c[h>>2]|0)+40>>2]|0)!=0){c[e>>2]=c[(c[h>>2]|0)+40>>2];b=c[e>>2]|0;i=g;return b|0}}a:do{if((Uo(c[h>>2]|0)|0)!=0){k=37}else{if((d[(c[h>>2]|0)+16>>0]|0)==0){c[q>>2]=1;c[f>>2]=$q(c[h>>2]|0,1)|0;if((c[f>>2]|0)==0){if((d[(c[h>>2]|0)+17>>0]|0)<=1){c[f>>2]=oH(c[h>>2]|0,q)|0}if((c[f>>2]|0)==0){if((c[q>>2]|0)!=0){if((a[(c[h>>2]|0)+14>>0]|0)!=0){c[f>>2]=776;break}c[f>>2]=ar(c[h>>2]|0,4)|0;if((c[f>>2]|0)!=0){break}if((c[c[(c[h>>2]|0)+64>>2]>>2]|0)==0){c[m>>2]=c[c[h>>2]>>2];c[f>>2]=op(c[m>>2]|0,c[(c[h>>2]|0)+172>>2]|0,0,n)|0;if((c[f>>2]|0)==0){if((c[n>>2]|0)!=0){c[o>>2]=0;c[p>>2]=2050;c[f>>2]=wp(c[m>>2]|0,c[(c[h>>2]|0)+172>>2]|0,c[(c[h>>2]|0)+64>>2]|0,c[p>>2]|0,o)|0;if((c[f>>2]|0)==0){if((c[o>>2]&1|0)!=0){c[f>>2]=Bq(44932)|0;Ko(c[(c[h>>2]|0)+64>>2]|0)|0}}}}}m=c[h>>2]|0;if((c[c[(c[h>>2]|0)+64>>2]>>2]|0)!=0){c[f>>2]=Io(m)|0;if((c[f>>2]|0)==0){c[f>>2]=mp(c[h>>2]|0,1)|0;a[(c[h>>2]|0)+16>>0]=0}}else{if((a[m+4>>0]|0)==0){Yo(c[h>>2]|0,1)|0}}if((c[f>>2]|0)!=0){Ho(c[h>>2]|0,c[f>>2]|0)|0;break}}do{if((a[(c[h>>2]|0)+12>>0]|0)==0){if((c[(c[h>>2]|0)+88>>2]|0)==0){if((pH(c[(c[h>>2]|0)+204>>2]|0)|0)<=0){break}}c[l>>2]=0;c[f>>2]=qH(c[h>>2]|0,l)|0;if((c[f>>2]|0)!=0){break a}if((c[l>>2]|0)>>>0>0){c[f>>2]=xp(c[(c[h>>2]|0)+60>>2]|0,j,16,24,0)|0;if((c[f>>2]|0)!=0&(c[f>>2]|0)!=522){break a}}else{l=j+0|0;k=l+16|0;do{a[l>>0]=0;l=l+1|0}while((l|0)<(k|0))}if((XK((c[h>>2]|0)+100|0,j,16)|0)!=0){fh(c[h>>2]|0)}}}while(0);c[f>>2]=rH(c[h>>2]|0)|0;k=37}}}else{k=37}}}while(0);if((k|0)==37){if((Uo(c[h>>2]|0)|0)!=0){c[f>>2]=sH(c[h>>2]|0)|0}if((d[(c[h>>2]|0)+16>>0]|0)==0){if((c[f>>2]|0)==0){c[f>>2]=qH(c[h>>2]|0,(c[h>>2]|0)+24|0)|0}}}h=c[h>>2]|0;if((c[f>>2]|0)!=0){Go(h)}else{a[h+16>>0]=1}c[e>>2]=c[f>>2];b=c[e>>2]|0;i=g;return b|0}function oH(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+48|0;h=g+16|0;n=g+32|0;j=g+28|0;l=g+24|0;q=g+20|0;f=g+12|0;p=g+8|0;o=g+4|0;m=g;k=g+36|0;c[h>>2]=b;c[n>>2]=e;c[j>>2]=c[c[h>>2]>>2];c[l>>2]=0;c[q>>2]=1;c[f>>2]=((c[c[(c[h>>2]|0)+64>>2]>>2]|0)!=0^1^1)&1;c[c[n>>2]>>2]=0;if((c[f>>2]|0)==0){c[l>>2]=op(c[j>>2]|0,c[(c[h>>2]|0)+172>>2]|0,0,q)|0}if((c[l>>2]|0)!=0){b=c[l>>2]|0;i=g;return b|0}if((c[q>>2]|0)==0){b=c[l>>2]|0;i=g;return b|0}c[p>>2]=0;c[l>>2]=zH(c[(c[h>>2]|0)+60>>2]|0,p)|0;if((c[l>>2]|0)!=0){b=c[l>>2]|0;i=g;return b|0}if((c[p>>2]|0)!=0){b=c[l>>2]|0;i=g;return b|0}c[l>>2]=qH(c[h>>2]|0,o)|0;if((c[l>>2]|0)!=0){b=c[l>>2]|0;i=g;return b|0}if((c[o>>2]|0)==0){if((c[f>>2]|0)==0){Ih();if((ar(c[h>>2]|0,2)|0)==0){So(c[j>>2]|0,c[(c[h>>2]|0)+172>>2]|0,0)|0;if((a[(c[h>>2]|0)+4>>0]|0)==0){Yo(c[h>>2]|0,1)|0}}Jh();b=c[l>>2]|0;i=g;return b|0}}if((c[f>>2]|0)==0){c[m>>2]=2049;c[l>>2]=wp(c[j>>2]|0,c[(c[h>>2]|0)+172>>2]|0,c[(c[h>>2]|0)+64>>2]|0,c[m>>2]|0,m)|0}if((c[l>>2]|0)==0){a[k>>0]=0;b=xp(c[(c[h>>2]|0)+64>>2]|0,k,1,0,0)|0;c[l>>2]=b;c[l>>2]=(c[l>>2]|0)==522?0:b;if((c[f>>2]|0)==0){Ko(c[(c[h>>2]|0)+64>>2]|0)|0}c[c[n>>2]>>2]=(d[k>>0]|0)!=0&1;b=c[l>>2]|0;i=g;return b|0}else{if((c[l>>2]|0)!=14){b=c[l>>2]|0;i=g;return b|0}c[c[n>>2]>>2]=1;c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}return 0}function pH(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=0;if((c[(c[e>>2]|0)+40>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}c[d>>2]=ub[c[45264>>2]&63](c[(c[e>>2]|0)+40>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}function qH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;e=f+24|0;j=f+16|0;h=f+8|0;g=f+12|0;k=f;d=f+20|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=yH(c[(c[j>>2]|0)+208>>2]|0)|0;if((c[g>>2]|0)==0){a=k;c[a>>2]=0;c[a+4>>2]=0;if((c[c[(c[j>>2]|0)+60>>2]>>2]|0)!=0){c[d>>2]=dh(c[(c[j>>2]|0)+60>>2]|0,k)|0;if((c[d>>2]|0)!=0){c[e>>2]=c[d>>2];a=c[e>>2]|0;i=f;return a|0}}a=k;k=c[(c[j>>2]|0)+152>>2]|0;k=dL(c[a>>2]|0,c[a+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0;k=$K(k|0,D|0,1,0)|0;a=c[(c[j>>2]|0)+152>>2]|0;a=lL(k|0,D|0,a|0,((a|0)<0)<<31>>31|0)|0;c[g>>2]=a}if((c[g>>2]|0)>>>0>(c[(c[j>>2]|0)+156>>2]|0)>>>0){c[(c[j>>2]|0)+156>>2]=c[g>>2]}c[c[h>>2]>>2]=c[g>>2];c[e>>2]=0;a=c[e>>2]|0;i=f;return a|0}function rH(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;h=e;g=e+4|0;j=e+8|0;k=e+12|0;c[h>>2]=b;c[g>>2]=0;do{if((a[(c[h>>2]|0)+12>>0]|0)==0){c[g>>2]=qH(c[h>>2]|0,k)|0;if((c[g>>2]|0)!=0){c[f>>2]=c[g>>2];l=c[f>>2]|0;i=e;return l|0}l=c[c[h>>2]>>2]|0;b=c[(c[h>>2]|0)+212>>2]|0;if((c[k>>2]|0)==0){l=So(l,b,0)|0;c[g>>2]=l;c[g>>2]=(c[g>>2]|0)==5898?0:l;c[j>>2]=0}else{c[g>>2]=op(l,b,0,j)|0}if((c[g>>2]|0)==0){k=c[h>>2]|0;if((c[j>>2]|0)!=0){c[g>>2]=uH(k,0)|0;break}if((d[k+5>>0]|0)==5){a[(c[h>>2]|0)+5>>0]=0}}}}while(0);c[f>>2]=c[g>>2];l=c[f>>2]|0;i=e;return l|0}function sH(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+8|0;d=b;f=b+4|0;c[e>>2]=a;c[f>>2]=0;hq(c[(c[e>>2]|0)+208>>2]|0);c[d>>2]=tH(c[(c[e>>2]|0)+208>>2]|0,f)|0;if((c[d>>2]|0)==0){if((c[f>>2]|0)==0){f=c[d>>2]|0;i=b;return f|0}}fh(c[e>>2]|0);f=c[d>>2]|0;i=b;return f|0}function tH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;f=d+12|0;g=d;e=d+4|0;h=d+8|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=0;do{j=c[f>>2]|0;b=c[g>>2]|0;a=(c[h>>2]|0)+1|0;c[h>>2]=a;c[e>>2]=gr(j,b,0,a)|0}while((c[e>>2]|0)==-1);i=d;return c[e>>2]|0}function uH(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;g=h+12|0;k=h;j=h+4|0;f=h+8|0;c[k>>2]=b;c[j>>2]=d;c[f>>2]=0;do{if((a[(c[k>>2]|0)+12>>0]|0)!=0){e=7}else{if((c[(c[k>>2]|0)+208>>2]|0)!=0){e=7}else{if((GG(c[k>>2]|0)|0)!=0){Ko(c[(c[k>>2]|0)+64>>2]|0)|0;c[f>>2]=vH(c[k>>2]|0)|0;if((c[f>>2]|0)!=0){break}a[(c[k>>2]|0)+5>>0]=5;a[(c[k>>2]|0)+16>>0]=0;break}else{c[g>>2]=14;b=c[g>>2]|0;i=h;return b|0}}}}while(0);if((e|0)==7){c[c[j>>2]>>2]=1}c[g>>2]=c[f>>2];b=c[g>>2]|0;i=h;return b|0}function vH(b){b=b|0;var e=0,f=0,g=0;g=i;i=i+16|0;e=g+4|0;f=g;c[e>>2]=b;c[f>>2]=0;if((a[(c[e>>2]|0)+4>>0]|0)!=0){c[f>>2]=wH(c[e>>2]|0)|0}if((c[f>>2]|0)!=0){e=c[e>>2]|0;ih(e);f=c[f>>2]|0;i=g;return f|0}b=(c[e>>2]|0)+160|0;c[f>>2]=xH(c[c[e>>2]>>2]|0,c[(c[e>>2]|0)+60>>2]|0,c[(c[e>>2]|0)+212>>2]|0,d[(c[e>>2]|0)+4>>0]|0,c[b>>2]|0,c[b+4>>2]|0,(c[e>>2]|0)+208|0)|0;e=c[e>>2]|0;ih(e);f=c[f>>2]|0;i=g;return f|0}function wH(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=ar(c[e>>2]|0,4)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}Yo(c[e>>2]|0,1)|0;e=c[d>>2]|0;i=b;return e|0}function xH(d,e,f,g,h,j,k){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;t=i;i=i+48|0;m=t+44|0;l=t+40|0;p=t+36|0;v=t+32|0;w=t+28|0;u=t;s=t+16|0;n=t+12|0;o=t+8|0;r=t+20|0;q=t+24|0;c[l>>2]=d;c[p>>2]=e;c[v>>2]=f;c[w>>2]=g;d=u;c[d>>2]=h;c[d+4>>2]=j;c[s>>2]=k;c[c[s>>2]>>2]=0;c[o>>2]=Sc(112+(c[(c[l>>2]|0)+4>>2]|0)|0)|0;if((c[o>>2]|0)==0){c[m>>2]=7;d=c[m>>2]|0;i=t;return d|0}c[c[o>>2]>>2]=c[l>>2];c[(c[o>>2]|0)+8>>2]=(c[o>>2]|0)+112;c[(c[o>>2]|0)+4>>2]=c[p>>2];b[(c[o>>2]|0)+40>>1]=-1;f=u;e=c[f+4>>2]|0;d=(c[o>>2]|0)+16|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[(c[o>>2]|0)+100>>2]=c[v>>2];a[(c[o>>2]|0)+48>>0]=1;a[(c[o>>2]|0)+49>>0]=1;a[(c[o>>2]|0)+43>>0]=(c[w>>2]|0)!=0?2:0;c[r>>2]=524294;c[n>>2]=wp(c[l>>2]|0,c[v>>2]|0,c[(c[o>>2]|0)+8>>2]|0,c[r>>2]|0,r)|0;if((c[n>>2]|0)==0){if((c[r>>2]&1|0)!=0){a[(c[o>>2]|0)+46>>0]=1}}if((c[n>>2]|0)!=0){mq(c[o>>2]|0,0);Ko(c[(c[o>>2]|0)+8>>2]|0)|0;oc(c[o>>2]|0)}else{c[q>>2]=tp(c[p>>2]|0)|0;if((c[q>>2]&1024|0)!=0){a[(c[o>>2]|0)+48>>0]=0}if((c[q>>2]&4096|0)!=0){a[(c[o>>2]|0)+49>>0]=0}c[c[s>>2]>>2]=c[o>>2]}c[m>>2]=c[n>>2];d=c[m>>2]|0;i=t;return d|0}function yH(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=a;if((c[f>>2]|0)!=0){if((b[(c[f>>2]|0)+40>>1]|0)>=0){c[e>>2]=c[(c[f>>2]|0)+72>>2];f=c[e>>2]|0;i=d;return f|0}}c[e>>2]=0;f=c[e>>2]|0;i=d;return f|0}function zH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=zb[c[(c[c[f>>2]>>2]|0)+36>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function AH(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+176|0;d=b+168|0;e=b;g=b+4|0;f=b+8|0;c[d>>2]=a;aL(f|0,0,160)|0;while(1){if((c[d>>2]|0)==0){break}c[g>>2]=c[(c[d>>2]|0)+8>>2];c[(c[d>>2]|0)+8>>2]=0;c[e>>2]=0;while(1){if((c[f+(c[e>>2]<<2)>>2]|0)==0){break}c[d>>2]=DH(c[f+(c[e>>2]<<2)>>2]|0,c[d>>2]|0)|0;c[f+(c[e>>2]<<2)>>2]=0;c[e>>2]=(c[e>>2]|0)+1}c[f+(c[e>>2]<<2)>>2]=c[d>>2];c[d>>2]=c[g>>2]}c[d>>2]=0;c[e>>2]=0;while(1){a=c[d>>2]|0;if(!((c[e>>2]|0)>>>0<40)){break}c[d>>2]=DH(a,c[f+(c[e>>2]<<2)>>2]|0)|0;c[e>>2]=(c[e>>2]|0)+1}i=b;return a|0}function BH(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;e=b+12|0;g=b;d=b+4|0;f=b+8|0;c[e>>2]=a;c[d>>2]=c[e>>2];c[e>>2]=c[(c[d>>2]|0)+8>>2];c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+12>>2]=0;c[g>>2]=1;while(1){a=c[d>>2]|0;if((c[e>>2]|0)==0){break}c[f>>2]=a;c[d>>2]=c[e>>2];c[e>>2]=c[(c[d>>2]|0)+8>>2];c[(c[d>>2]|0)+12>>2]=c[f>>2];a=FH(e,c[g>>2]|0)|0;c[(c[d>>2]|0)+8>>2]=a;c[g>>2]=(c[g>>2]|0)+1}i=b;return a|0}function CH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;e=g+12|0;j=g;f=g+4|0;h=g+8|0;c[e>>2]=a;c[j>>2]=b;c[f>>2]=d;d=c[e>>2]|0;if((c[(c[e>>2]|0)+12>>2]|0)!=0){CH(c[d+12>>2]|0,c[j>>2]|0,h);c[(c[h>>2]|0)+8>>2]=c[e>>2]}else{c[c[j>>2]>>2]=d}h=c[e>>2]|0;if((c[(c[e>>2]|0)+8>>2]|0)!=0){CH(c[h+8>>2]|0,(c[e>>2]|0)+8|0,c[f>>2]|0);i=g;return}else{c[c[f>>2]>>2]=h;i=g;return}}function DH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;d=g+24|0;h=g+16|0;f=g;e=g+20|0;c[d>>2]=a;c[h>>2]=b;c[e>>2]=f;while(1){if((c[d>>2]|0)!=0){a=(c[h>>2]|0)!=0}else{a=0}b=c[d>>2]|0;if(!a){break}k=c[b+4>>2]|0;a=c[h>>2]|0;j=c[a+4>>2]|0;if((k|0)<(j|0)|((k|0)==(j|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)){c[(c[e>>2]|0)+8>>2]=c[d>>2];c[d>>2]=c[(c[d>>2]|0)+8>>2];c[e>>2]=c[(c[e>>2]|0)+8>>2];continue}j=c[h>>2]|0;b=c[j+4>>2]|0;k=c[d>>2]|0;a=c[k+4>>2]|0;if((b|0)<(a|0)|((b|0)==(a|0)?(c[j>>2]|0)>>>0<(c[k>>2]|0)>>>0:0)){c[(c[e>>2]|0)+8>>2]=c[h>>2];c[h>>2]=c[(c[h>>2]|0)+8>>2];c[e>>2]=c[(c[e>>2]|0)+8>>2];continue}else{c[d>>2]=c[(c[d>>2]|0)+8>>2];continue}}if((b|0)!=0){c[(c[e>>2]|0)+8>>2]=c[d>>2];k=f+8|0;k=c[k>>2]|0;i=g;return k|0}else{c[(c[e>>2]|0)+8>>2]=c[h>>2];k=f+8|0;k=c[k>>2]|0;i=g;return k|0}return 0}function EH(a){a=a|0;var d=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+8|0;g=d;h=d+4|0;c[g>>2]=a;do{if((e[(c[g>>2]|0)+24>>1]|0|0)==0){c[h>>2]=$e(c[(c[g>>2]|0)+4>>2]|0,1016)|0;if((c[h>>2]|0)!=0){c[c[h>>2]>>2]=c[c[g>>2]>>2];c[c[g>>2]>>2]=c[h>>2];c[(c[g>>2]|0)+16>>2]=(c[h>>2]|0)+8;b[(c[g>>2]|0)+24>>1]=63;break}c[f>>2]=0;h=c[f>>2]|0;i=d;return h|0}}while(0);h=(c[g>>2]|0)+24|0;b[h>>1]=(b[h>>1]|0)+ -1<<16>>16;g=(c[g>>2]|0)+16|0;h=c[g>>2]|0;c[g>>2]=h+16;c[f>>2]=h;h=c[f>>2]|0;i=d;return h|0}function FH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;g=d;h=d+4|0;f=d+8|0;j=d+12|0;c[g>>2]=a;c[h>>2]=b;if((c[c[g>>2]>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}b=c[g>>2]|0;if((c[h>>2]|0)==1){c[f>>2]=c[b>>2];c[c[g>>2]>>2]=c[(c[f>>2]|0)+8>>2];c[(c[f>>2]|0)+8>>2]=0;c[(c[f>>2]|0)+12>>2]=0;c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}c[j>>2]=FH(b,(c[h>>2]|0)-1|0)|0;c[f>>2]=c[c[g>>2]>>2];j=c[j>>2]|0;if((c[f>>2]|0)==0){c[e>>2]=j;a=c[e>>2]|0;i=d;return a|0}else{c[(c[f>>2]|0)+12>>2]=j;c[c[g>>2]>>2]=c[(c[f>>2]|0)+8>>2];a=FH(c[g>>2]|0,(c[h>>2]|0)-1|0)|0;c[(c[f>>2]|0)+8>>2]=a;c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}return 0}function GH(a){a=a|0;var d=0,f=0;d=i;i=i+16|0;f=d;c[f>>2]=a;if((b[(c[f>>2]|0)+26>>1]&1|0)==0){a=AH(c[(c[f>>2]|0)+8>>2]|0)|0;c[(c[f>>2]|0)+8>>2]=a}f=(c[f>>2]|0)+26|0;b[f>>1]=e[f>>1]|0|2;i=d;return}function HH(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g+12|0;k=g;h=g+4|0;f=g+8|0;c[j>>2]=a;c[k>>2]=d;c[h>>2]=e;c[f>>2]=c[k>>2];c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+4>>2]=c[j>>2];c[(c[f>>2]|0)+8>>2]=0;c[(c[f>>2]|0)+12>>2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+16>>2]=(c[f>>2]|0)+32;b[(c[f>>2]|0)+24>>1]=(((c[h>>2]|0)-32|0)>>>0)/16|0;b[(c[f>>2]|0)+26>>1]=1;c[(c[f>>2]|0)+28>>2]=0;i=g;return c[f>>2]|0}function IH(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=ch(c[(c[d>>2]|0)+204>>2]|0)|0;i=b;return a|0}function JH(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;h=f+4|0;g=f;c[h>>2]=b;c[g>>2]=e;b=(c[(c[h>>2]|0)+8>>2]|0)+(((c[g>>2]|0)>>>0)/8|0)|0;a[b>>0]=d[b>>0]|0|1<<(c[g>>2]&7);i=f;return}function KH(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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;p=i;i=i+64|0;m=p;o=p+52|0;t=p+48|0;q=p+44|0;l=p+40|0;n=p+36|0;v=p+56|0;j=p+24|0;k=p+20|0;s=p+16|0;u=p+12|0;r=p+28|0;w=p+32|0;c[o>>2]=b;c[t>>2]=e;c[q>>2]=f;c[l>>2]=g;c[n>>2]=h;c[j>>2]=c[l>>2];c[k>>2]=c[q>>2];while(1){b=c[l>>2]|0;c[l>>2]=b+ -1;if((b|0)<=0){r=24;break}if((c[(c[o>>2]|0)+16>>2]|0)==0){r=24;break}h=c[o>>2]|0;if((c[q>>2]|0)<1){r=5;break}if((PH(h,c[q>>2]|0,c[n>>2]|0)|0)!=0){r=24;break}if((ad(c[(c[o>>2]|0)+4>>2]|0,c[q>>2]|0,s,0)|0)!=0){r=8;break}c[u>>2]=cd(c[s>>2]|0)|0;do{if((c[t>>2]|0)!=0){c[r>>2]=zo((c[u>>2]|0)+4|0)|0;if((a[(c[c[o>>2]>>2]|0)+17>>0]|0)!=0){LH(c[o>>2]|0,c[q>>2]|0,2,0,c[n>>2]|0)}if((c[r>>2]|0)>(((c[(c[c[o>>2]>>2]|0)+36>>2]|0)/4|0)-2|0)){e=c[o>>2]|0;b=c[n>>2]|0;c[m>>2]=c[q>>2];OH(e,b,40848,m);c[l>>2]=(c[l>>2]|0)+ -1;break}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[r>>2]|0)){break}c[w>>2]=zo((c[u>>2]|0)+(8+(c[v>>2]<<2))|0)|0;if((a[(c[c[o>>2]>>2]|0)+17>>0]|0)!=0){LH(c[o>>2]|0,c[w>>2]|0,2,0,c[n>>2]|0)}PH(c[o>>2]|0,c[w>>2]|0,c[n>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+1}c[l>>2]=(c[l>>2]|0)-(c[r>>2]|0)}else{if((d[(c[c[o>>2]>>2]|0)+17>>0]|0)!=0){if((c[l>>2]|0)>0){c[v>>2]=zo(c[u>>2]|0)|0;LH(c[o>>2]|0,c[v>>2]|0,4,c[q>>2]|0,c[n>>2]|0)}}}}while(0);c[q>>2]=zo(c[u>>2]|0)|0;dd(c[s>>2]|0)}if((r|0)==5){b=c[n>>2]|0;f=c[j>>2]|0;e=c[k>>2]|0;c[m>>2]=(c[l>>2]|0)+1;c[m+4>>2]=f;c[m+8>>2]=e;OH(h,b,40760,m);i=p;return}else if((r|0)==8){e=c[o>>2]|0;b=c[n>>2]|0;c[m>>2]=c[q>>2];OH(e,b,40824,m);i=p;return}else if((r|0)==24){i=p;return}}function LH(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+48|0;m=n;p=n+36|0;l=n+32|0;r=n+45|0;q=n+40|0;k=n+20|0;o=n+24|0;s=n+44|0;j=n+28|0;c[p>>2]=b;c[l>>2]=e;a[r>>0]=f;c[q>>2]=g;c[k>>2]=h;c[o>>2]=tD(c[c[p>>2]>>2]|0,c[l>>2]|0,s,j)|0;if((c[o>>2]|0)!=0){if((c[o>>2]|0)==7|(c[o>>2]|0)==3082){c[(c[p>>2]|0)+24>>2]=1}e=c[p>>2]|0;b=c[k>>2]|0;c[m>>2]=c[l>>2];OH(e,b,40672,m);i=n;return}if((d[s>>0]|0|0)==(d[r>>0]|0|0)){if((c[j>>2]|0)==(c[q>>2]|0)){i=n;return}}e=c[p>>2]|0;b=c[k>>2]|0;p=d[r>>0]|0;r=c[q>>2]|0;g=d[s>>0]|0;f=c[j>>2]|0;c[m>>2]=c[l>>2];c[m+4>>2]=p;c[m+8>>2]=r;c[m+12>>2]=g;c[m+16>>2]=f;OH(e,b,40704,m);i=n;return}function MH(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;H=i;i=i+288|0;q=H+48|0;n=H+128|0;o=H+132|0;y=H+136|0;U=H+140|0;K=H+144|0;I=H+148|0;s=H+156|0;x=H+160|0;V=H+164|0;u=H+168|0;N=H+172|0;T=H+176|0;L=H+180|0;w=H+124|0;D=H+120|0;E=H+116|0;v=H+152|0;G=H+80|0;C=H+64|0;r=H+184|0;t=H+68|0;l=H;J=H+8|0;O=H+84|0;Q=H+88|0;R=H+16|0;S=H+96|0;P=H+100|0;F=H+104|0;z=H+108|0;A=H+92|0;B=H+76|0;M=H+72|0;p=H+112|0;c[o>>2]=f;c[y>>2]=g;c[U>>2]=h;c[K>>2]=j;c[I>>2]=k;c[t>>2]=0;f=l;c[f>>2]=0;c[f+4>>2]=0;f=J;c[f>>2]=0;c[f+4>>2]=0;c[q>>2]=c[y>>2];yc(100,r,39976,q)|0;c[G>>2]=c[c[o>>2]>>2];c[C>>2]=c[(c[G>>2]|0)+36>>2];if((c[y>>2]|0)==0){c[n>>2]=0;f=c[n>>2]|0;i=H;return f|0}if((PH(c[o>>2]|0,c[y>>2]|0,c[U>>2]|0)|0)!=0){c[n>>2]=0;f=c[n>>2]|0;i=H;return f|0}f=eD(c[G>>2]|0,c[y>>2]|0,s,0)|0;c[V>>2]=f;if((f|0)!=0){f=c[o>>2]|0;c[q>>2]=c[V>>2];OH(f,r,39992,q);c[n>>2]=0;f=c[n>>2]|0;i=H;return f|0}a[c[s>>2]>>0]=0;f=Lq(c[s>>2]|0)|0;c[V>>2]=f;if((f|0)!=0){f=c[o>>2]|0;c[q>>2]=c[V>>2];OH(f,r,40032,q);Gr(c[s>>2]|0);c[n>>2]=0;f=c[n>>2]|0;i=H;return f|0}c[u>>2]=0;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(e[(c[s>>2]|0)+16>>1]|0)){break}if((c[(c[o>>2]|0)+16>>2]|0)==0){break}f=c[x>>2]|0;c[q>>2]=c[y>>2];c[q+4>>2]=f;yc(100,r,40072,q)|0;c[O>>2]=(c[(c[s>>2]|0)+56>>2]|0)+(e[(c[s>>2]|0)+18>>1]&(d[(c[(c[s>>2]|0)+64>>2]|0)+(c[x>>2]<<1)>>0]<<8|d[(c[(c[s>>2]|0)+64>>2]|0)+(c[x>>2]<<1)+1>>0]));nD(c[s>>2]|0,c[O>>2]|0,R);c[Q>>2]=c[R+12>>2];do{if((a[(c[s>>2]|0)+2>>0]|0)!=0){U=R;V=c[U>>2]|0;U=c[U+4>>2]|0;if((c[x>>2]|0)==0){f=J;c[f>>2]=V;c[f+4>>2]=U;f=l;c[f>>2]=V;c[f+4>>2]=U;break}f=J;g=c[f+4>>2]|0;if((U|0)<(g|0)|((U|0)==(g|0)?V>>>0<=(c[f>>2]|0)>>>0:0)){f=c[o>>2]|0;V=R;k=c[V+4>>2]|0;h=J;j=c[h>>2]|0;h=c[h+4>>2]|0;g=q;c[g>>2]=c[V>>2];c[g+4>>2]=k;g=q+8|0;c[g>>2]=j;c[g+4>>2]=h;OH(f,r,40104,q)}h=R;g=c[h+4>>2]|0;f=J;c[f>>2]=c[h>>2];c[f+4>>2]=g}else{c[Q>>2]=(c[Q>>2]|0)+(c[R>>2]|0)}}while(0);if((c[Q>>2]|0)>>>0>(e[R+22>>1]|0)>>>0){if(((c[O>>2]|0)+(e[R+24>>1]|0)|0)>>>0<=((c[(c[s>>2]|0)+56>>2]|0)+(c[(c[G>>2]|0)+36>>2]|0)|0)>>>0){c[S>>2]=(((c[Q>>2]|0)-(e[R+22>>1]|0)+(c[C>>2]|0)-5|0)>>>0)/(((c[C>>2]|0)-4|0)>>>0)|0;c[P>>2]=zo((c[O>>2]|0)+(e[R+24>>1]|0)|0)|0;if((a[(c[G>>2]|0)+17>>0]|0)!=0){LH(c[o>>2]|0,c[P>>2]|0,3,c[y>>2]|0,r)}KH(c[o>>2]|0,0,c[P>>2]|0,c[S>>2]|0,r)}}if((a[(c[s>>2]|0)+3>>0]|0)==0){c[T>>2]=zo(c[O>>2]|0)|0;if((a[(c[G>>2]|0)+17>>0]|0)!=0){LH(c[o>>2]|0,c[T>>2]|0,5,c[y>>2]|0,r)}c[N>>2]=MH(c[o>>2]|0,c[T>>2]|0,r,l,(c[x>>2]|0)==0?0:J)|0;if((c[x>>2]|0)>0){if((c[N>>2]|0)!=(c[u>>2]|0)){OH(c[o>>2]|0,r,40152,q)}}c[u>>2]=c[N>>2]}c[x>>2]=(c[x>>2]|0)+1}if((a[(c[s>>2]|0)+3>>0]|0)==0){c[T>>2]=zo((c[(c[s>>2]|0)+56>>2]|0)+((d[(c[s>>2]|0)+5>>0]|0)+8)|0)|0;c[q>>2]=c[y>>2];yc(100,r,40184,q)|0;if((a[(c[G>>2]|0)+17>>0]|0)!=0){LH(c[o>>2]|0,c[T>>2]|0,5,c[y>>2]|0,r)}MH(c[o>>2]|0,c[T>>2]|0,r,0,(b[(c[s>>2]|0)+16>>1]|0)!=0?J:0)|0}do{if((d[(c[s>>2]|0)+3>>0]|0)!=0){if((d[(c[s>>2]|0)+2>>0]|0)!=0){N=(c[I>>2]|0)!=0;if((c[K>>2]|0)==0){if(!N){break}g=l;j=c[g+4>>2]|0;f=c[I>>2]|0;h=c[f+4>>2]|0;if(!((j|0)<(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0<=(c[f>>2]|0)>>>0:0))){break}f=c[o>>2]|0;V=l;k=c[V+4>>2]|0;h=c[I>>2]|0;j=c[h>>2]|0;h=c[h+4>>2]|0;g=q;c[g>>2]=c[V>>2];c[g+4>>2]=k;g=q+8|0;c[g>>2]=j;c[g+4>>2]=h;OH(f,r,40408,q);break}if(!N){g=J;j=c[g+4>>2]|0;f=c[K>>2]|0;h=c[f+4>>2]|0;if(!((j|0)>(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0>(c[f>>2]|0)>>>0:0))){break}f=c[o>>2]|0;V=J;k=c[V+4>>2]|0;h=c[K>>2]|0;j=c[h>>2]|0;h=c[h+4>>2]|0;g=q;c[g>>2]=c[V>>2];c[g+4>>2]=k;g=q+8|0;c[g>>2]=j;c[g+4>>2]=h;OH(f,r,40216,q);break}g=l;j=c[g+4>>2]|0;f=c[K>>2]|0;h=c[f+4>>2]|0;if((j|0)<(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0<=(c[f>>2]|0)>>>0:0)){f=c[o>>2]|0;V=l;k=c[V+4>>2]|0;h=c[K>>2]|0;j=c[h>>2]|0;h=c[h+4>>2]|0;g=q;c[g>>2]=c[V>>2];c[g+4>>2]=k;g=q+8|0;c[g>>2]=j;c[g+4>>2]=h;OH(f,r,40280,q)}g=J;j=c[g+4>>2]|0;f=c[I>>2]|0;h=c[f+4>>2]|0;if((j|0)>(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0>(c[f>>2]|0)>>>0:0)){f=c[o>>2]|0;V=J;k=c[V+4>>2]|0;h=c[I>>2]|0;j=c[h>>2]|0;h=c[h+4>>2]|0;g=q;c[g>>2]=c[V>>2];c[g+4>>2]=k;g=q+8|0;c[g>>2]=j;c[g+4>>2]=h;OH(f,r,40344,q)}h=J;g=c[h+4>>2]|0;f=c[K>>2]|0;c[f>>2]=c[h>>2];c[f+4>>2]=g}}}while(0);c[v>>2]=c[(c[s>>2]|0)+56>>2];c[w>>2]=d[(c[s>>2]|0)+5>>0]|0;c[t>>2]=eh(c[(c[G>>2]|0)+32>>2]|0)|0;if((c[t>>2]|0)==0){c[(c[o>>2]|0)+24>>2]=1}else{c[F>>2]=((d[(c[v>>2]|0)+((c[w>>2]|0)+5)>>0]<<8|d[(c[v>>2]|0)+((c[w>>2]|0)+5)+1>>0])-1&65535)+1;aL((c[t>>2]|0)+(c[F>>2]|0)|0,0,(c[C>>2]|0)-(c[F>>2]|0)|0)|0;aL(c[t>>2]|0,1,c[F>>2]|0)|0;c[E>>2]=d[(c[v>>2]|0)+((c[w>>2]|0)+3)>>0]<<8|d[(c[v>>2]|0)+((c[w>>2]|0)+3)+1>>0];c[D>>2]=(c[w>>2]|0)+12-(d[(c[s>>2]|0)+3>>0]<<2);c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[E>>2]|0)){break}c[z>>2]=d[(c[v>>2]|0)+((c[D>>2]|0)+(c[x>>2]<<1))>>0]<<8|d[(c[v>>2]|0)+((c[D>>2]|0)+(c[x>>2]<<1))+1>>0];c[A>>2]=65536;if((c[z>>2]|0)<=((c[C>>2]|0)-4|0)){c[A>>2]=(QH(c[s>>2]|0,(c[v>>2]|0)+(c[z>>2]|0)|0)|0)&65535}a:do{if(((c[z>>2]|0)+(c[A>>2]|0)-1|0)>=(c[C>>2]|0)){f=c[o>>2]|0;g=c[y>>2]|0;c[q>>2]=c[x>>2];c[q+4>>2]=g;OH(f,0,40472,q)}else{c[B>>2]=(c[z>>2]|0)+(c[A>>2]|0)-1;while(1){if((c[B>>2]|0)<(c[z>>2]|0)){break a}f=(c[t>>2]|0)+(c[B>>2]|0)|0;a[f>>0]=(a[f>>0]|0)+1<<24>>24;c[B>>2]=(c[B>>2]|0)+ -1}}}while(0);c[x>>2]=(c[x>>2]|0)+1}c[x>>2]=d[(c[v>>2]|0)+((c[w>>2]|0)+1)>>0]<<8|d[(c[v>>2]|0)+((c[w>>2]|0)+1)+1>>0];while(1){if((c[x>>2]|0)<=0){break}c[M>>2]=d[(c[v>>2]|0)+((c[x>>2]|0)+2)>>0]<<8|d[(c[v>>2]|0)+((c[x>>2]|0)+2)+1>>0];c[p>>2]=(c[x>>2]|0)+(c[M>>2]|0)-1;while(1){if((c[p>>2]|0)<(c[x>>2]|0)){break}f=(c[t>>2]|0)+(c[p>>2]|0)|0;a[f>>0]=(a[f>>0]|0)+1<<24>>24;c[p>>2]=(c[p>>2]|0)+ -1}c[p>>2]=d[(c[v>>2]|0)+(c[x>>2]|0)>>0]<<8|d[(c[v>>2]|0)+(c[x>>2]|0)+1>>0];c[x>>2]=c[p>>2]}c[L>>2]=0;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[C>>2]|0)){break}if((a[(c[t>>2]|0)+(c[x>>2]|0)>>0]|0)==0){c[L>>2]=(c[L>>2]|0)+1}else{if((a[(c[t>>2]|0)+(c[x>>2]|0)>>0]|0)>1){m=73;break}}c[x>>2]=(c[x>>2]|0)+1}if((m|0)==73){f=c[o>>2]|0;g=c[y>>2]|0;c[q>>2]=c[x>>2];c[q+4>>2]=g;OH(f,0,40520,q)}if((c[L>>2]|0)!=(d[(c[v>>2]|0)+((c[w>>2]|0)+7)>>0]|0)){f=c[o>>2]|0;h=d[(c[v>>2]|0)+((c[w>>2]|0)+7)>>0]|0;g=c[y>>2]|0;c[q>>2]=c[L>>2];c[q+4>>2]=h;c[q+8>>2]=g;OH(f,0,40560,q)}}gh(c[t>>2]|0);Gr(c[s>>2]|0);c[n>>2]=(c[u>>2]|0)+1;f=c[n>>2]|0;i=H;return f|0}function NH(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;g=i;i=i+16|0;f=g+4|0;e=g;c[f>>2]=a;c[e>>2]=b;i=g;return(d[(c[(c[f>>2]|0)+8>>2]|0)+(((c[e>>2]|0)>>>0)/8|0)>>0]|0)&1<<(c[e>>2]&7)|0}function OH(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;h=g+24|0;l=g;j=g+4|0;k=g+8|0;c[h>>2]=a;c[l>>2]=b;c[j>>2]=e;if((c[(c[h>>2]|0)+16>>2]|0)==0){i=g;return}a=(c[h>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+ -1;a=(c[h>>2]|0)+20|0;c[a>>2]=(c[a>>2]|0)+1;c[k>>2]=f;if((c[(c[h>>2]|0)+40>>2]|0)!=0){Jt((c[h>>2]|0)+28|0,39968,1)}if((c[l>>2]|0)!=0){Zy((c[h>>2]|0)+28|0,c[l>>2]|0)}uc((c[h>>2]|0)+28|0,1,c[j>>2]|0,k);if((d[(c[h>>2]|0)+53>>0]|0|0)!=1){i=g;return}c[(c[h>>2]|0)+24>>2]=1;i=g;return}function PH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;e=j;f=j+16|0;k=j+4|0;h=j+8|0;g=j+12|0;c[k>>2]=a;c[h>>2]=b;c[g>>2]=d;if((c[h>>2]|0)==0){c[f>>2]=1;a=c[f>>2]|0;i=j;return a|0}d=c[k>>2]|0;if((c[h>>2]|0)>>>0>(c[(c[k>>2]|0)+12>>2]|0)>>>0){a=c[g>>2]|0;c[e>>2]=c[h>>2];OH(d,a,40616,e);c[f>>2]=1;a=c[f>>2]|0;i=j;return a|0}a=(NH(d,c[h>>2]|0)|0)!=0;k=c[k>>2]|0;if(a){a=c[g>>2]|0;c[e>>2]=c[h>>2];OH(k,a,40640,e);c[f>>2]=1;a=c[f>>2]|0;i=j;return a|0}else{JH(k,c[h>>2]|0);c[f>>2]=0;a=c[f>>2]|0;i=j;return a|0}return 0}function QH(b,f){b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;l=k+20|0;h=k;m=k+4|0;j=k+8|0;n=k+12|0;g=k+16|0;c[l>>2]=b;c[h>>2]=f;c[m>>2]=(c[h>>2]|0)+(d[(c[l>>2]|0)+6>>0]|0);a:do{if((a[(c[l>>2]|0)+2>>0]|0)!=0){if((a[(c[l>>2]|0)+4>>0]|0)!=0){f=c[m>>2]|0;if((d[c[m>>2]>>0]|0)<128){c[j>>2]=d[f>>0]|0;f=1}else{f=(uD(f,j)|0)&255}c[m>>2]=(c[m>>2]|0)+(f&255)}else{c[j>>2]=0}c[n>>2]=(c[m>>2]|0)+9;do{b=c[m>>2]|0;c[m>>2]=b+1;if((a[b>>0]&128|0)==0){break a}}while((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0)}else{n=c[m>>2]|0;if((d[c[m>>2]>>0]|0)<128){c[j>>2]=d[n>>0]|0;n=1}else{n=(uD(n,j)|0)&255}c[m>>2]=(c[m>>2]|0)+(n&255)}}while(0);if(!((c[j>>2]|0)>>>0>(e[(c[l>>2]|0)+8>>1]|0)>>>0)){f=c[m>>2]|0;b=c[h>>2]|0;b=f-b|0;f=c[j>>2]|0;b=f+b|0;c[j>>2]=b;f=c[j>>2]|0;f=f>>>0<4;b=f?4:b;c[j>>2]=b;b=c[j>>2]|0;b=b&65535;i=k;return b|0}c[g>>2]=e[(c[l>>2]|0)+10>>1]|0;c[j>>2]=(c[g>>2]|0)+((((c[j>>2]|0)-(c[g>>2]|0)|0)>>>0)%(((c[(c[(c[l>>2]|0)+52>>2]|0)+36>>2]|0)-4|0)>>>0)|0);if((c[j>>2]|0)>>>0>(e[(c[l>>2]|0)+8>>1]|0)>>>0){c[j>>2]=c[g>>2]}c[j>>2]=(c[j>>2]|0)+4;f=c[m>>2]|0;b=c[h>>2]|0;b=f-b|0;f=c[j>>2]|0;b=f+b|0;c[j>>2]=b;f=c[j>>2]|0;f=f>>>0<4;b=f?4:b;c[j>>2]=b;b=c[j>>2]|0;b=b&65535;i=k;return b|0}function RH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;cc(c[f>>2]|0,c[(c[e>>2]|0)+28>>2]|0);cc(c[f>>2]|0,c[(c[e>>2]|0)+36>>2]|0);a=(c[e>>2]|0)+0|0;b=a+48|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));i=d;return}function SH(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=0;c[b>>2]=Ko(c[e>>2]|0)|0;oc(c[e>>2]|0);i=d;return c[b>>2]|0}function TH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d+12|0;h=d;e=d+4|0;f=d+8|0;c[g>>2]=a;c[h>>2]=b;c[e>>2]=c[h>>2];while(1){if((c[e>>2]|0)==0){break}c[f>>2]=c[(c[e>>2]|0)+8>>2];cc(c[g>>2]|0,c[e>>2]|0);c[e>>2]=c[f>>2]}i=d;return}function UH(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+20|0;j=g;k=g+8|0;h=g+12|0;l=g+16|0;c[m>>2]=b;b=j;c[b>>2]=d;c[b+4>>2]=e;c[k>>2]=f;c[l>>2]=c[(c[m>>2]|0)+4>>2];c[h>>2]=c[(c[l>>2]|0)+8>>2];while(1){if((c[h>>2]|0)==0){break}do{if((a[(c[h>>2]|0)+80>>0]&16|0)!=0){if((c[k>>2]|0)==0){l=(c[h>>2]|0)+24|0;m=j;if(!((c[l>>2]|0)==(c[m>>2]|0)?(c[l+4>>2]|0)==(c[m+4>>2]|0):0)){break}}a[(c[h>>2]|0)+81>>0]=0}}while(0);c[h>>2]=c[(c[h>>2]|0)+8>>2]}i=g;return}function VH(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;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;o=i;i=i+48|0;j=o+36|0;r=o+32|0;u=o+28|0;n=o+24|0;q=o+20|0;l=o+16|0;k=o+8|0;p=o+4|0;t=o;m=o+12|0;c[r>>2]=b;c[u>>2]=f;c[n>>2]=g;c[q>>2]=h;b=c[u>>2]|0;if(b>>>0>(dD(c[r>>2]|0)|0)>>>0){c[j>>2]=dq(58551)|0;b=c[j>>2]|0;i=o;return b|0}c[k>>2]=cD(c[r>>2]|0,c[u>>2]|0,l,0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];b=c[j>>2]|0;i=o;return b|0}c[m>>2]=d[(c[l>>2]|0)+5>>0]|0;c[t>>2]=0;while(1){u=c[l>>2]|0;if((c[t>>2]|0)>=(e[(c[l>>2]|0)+16>>1]|0)){s=11;break}c[p>>2]=(c[u+56>>2]|0)+(e[(c[l>>2]|0)+18>>1]&(d[(c[(c[l>>2]|0)+64>>2]|0)+(c[t>>2]<<1)>>0]<<8|d[(c[(c[l>>2]|0)+64>>2]|0)+(c[t>>2]<<1)+1>>0]));if((a[(c[l>>2]|0)+3>>0]|0)==0){f=c[r>>2]|0;b=zo(c[p>>2]|0)|0;c[k>>2]=VH(f,b,1,c[q>>2]|0)|0;if((c[k>>2]|0)!=0){break}}c[k>>2]=WH(c[l>>2]|0,c[p>>2]|0)|0;if((c[k>>2]|0)!=0){break}c[t>>2]=(c[t>>2]|0)+1}do{if((s|0)==11){if((a[u+3>>0]|0)!=0){if((c[q>>2]|0)!=0){b=c[q>>2]|0;c[b>>2]=(c[b>>2]|0)+(e[(c[l>>2]|0)+16>>1]|0)}}else{f=c[r>>2]|0;b=zo((c[(c[l>>2]|0)+56>>2]|0)+((c[m>>2]|0)+8)|0)|0;c[k>>2]=VH(f,b,1,c[q>>2]|0)|0;if((c[k>>2]|0)!=0){break}}p=c[l>>2]|0;if((c[n>>2]|0)!=0){XH(p,k);break}b=ld(c[p+68>>2]|0)|0;c[k>>2]=b;if((b|0)==0){YH(c[l>>2]|0,d[(c[(c[l>>2]|0)+56>>2]|0)+(c[m>>2]|0)>>0]|8)}}}while(0);Gr(c[l>>2]|0);c[j>>2]=c[k>>2];b=c[j>>2]|0;i=o;return b|0}function WH(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=i;i=i+80|0;f=l+68|0;q=l+64|0;n=l+60|0;g=l+56|0;o=l;h=l+44|0;d=l+48|0;m=l+36|0;p=l+32|0;k=l+40|0;j=l+52|0;c[q>>2]=a;c[n>>2]=b;c[g>>2]=c[(c[q>>2]|0)+52>>2];nD(c[q>>2]|0,c[n>>2]|0,o);if((e[o+24>>1]|0|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=l;return a|0}if(((c[n>>2]|0)+(e[o+24>>1]|0)+3|0)>>>0>((c[(c[q>>2]|0)+56>>2]|0)+(e[(c[q>>2]|0)+18>>1]|0)|0)>>>0){c[f>>2]=dq(56609)|0;a=c[f>>2]|0;i=l;return a|0}c[h>>2]=zo((c[n>>2]|0)+(e[o+24>>1]|0)|0)|0;c[p>>2]=(c[(c[g>>2]|0)+36>>2]|0)-4;c[m>>2]=(((c[o+16>>2]|0)-(e[o+22>>1]|0)+(c[p>>2]|0)-1|0)>>>0)/((c[p>>2]|0)>>>0)|0;while(1){a=c[m>>2]|0;c[m>>2]=a+ -1;if((a|0)==0){b=23;break}c[k>>2]=0;c[j>>2]=0;if((c[h>>2]|0)>>>0<2){b=9;break}a=c[h>>2]|0;if(a>>>0>(dD(c[g>>2]|0)|0)>>>0){b=9;break}if((c[m>>2]|0)!=0){c[d>>2]=rD(c[g>>2]|0,c[h>>2]|0,j,k)|0;if((c[d>>2]|0)!=0){b=12;break}}if((c[j>>2]|0)!=0){b=15}else{a=$H(c[g>>2]|0,c[h>>2]|0)|0;c[j>>2]=a;if((a|0)!=0){b=15}else{b=17}}if((b|0)==15){b=0;if((Kq(c[(c[j>>2]|0)+68>>2]|0)|0)!=1){c[d>>2]=dq(56643)|0}else{b=17}}if((b|0)==17){c[d>>2]=ZH(c[g>>2]|0,c[j>>2]|0,c[h>>2]|0)|0}if((c[j>>2]|0)!=0){dd(c[(c[j>>2]|0)+68>>2]|0)}if((c[d>>2]|0)!=0){b=21;break}c[h>>2]=c[k>>2]}if((b|0)==9){c[f>>2]=dq(56623)|0;a=c[f>>2]|0;i=l;return a|0}else if((b|0)==12){c[f>>2]=c[d>>2];a=c[f>>2]|0;i=l;return a|0}else if((b|0)==21){c[f>>2]=c[d>>2];a=c[f>>2]|0;i=l;return a|0}else if((b|0)==23){c[f>>2]=0;a=c[f>>2]|0;i=l;return a|0}return 0}function XH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[c[f>>2]>>2]|0)!=0){i=d;return}a=ZH(c[(c[e>>2]|0)+52>>2]|0,c[e>>2]|0,c[(c[e>>2]|0)+72>>2]|0)|0;c[c[f>>2]>>2]=a;i=d;return}function YH(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+12|0;n=h;m=h+4|0;k=h+8|0;o=h+18|0;l=h+16|0;c[j>>2]=f;c[n>>2]=g;c[m>>2]=c[(c[j>>2]|0)+56>>2];c[k>>2]=c[(c[j>>2]|0)+52>>2];a[o>>0]=a[(c[j>>2]|0)+5>>0]|0;if((b[(c[k>>2]|0)+22>>1]&4|0)!=0){aL((c[m>>2]|0)+(d[o>>0]|0)|0,0,(c[(c[k>>2]|0)+36>>2]|0)-(d[o>>0]|0)|0)|0}a[(c[m>>2]|0)+(d[o>>0]|0)>>0]=c[n>>2];b[l>>1]=(d[o>>0]|0)+((c[n>>2]&8|0)==0?12:8);f=(c[m>>2]|0)+((d[o>>0]|0)+1)|0;a[f+0>>0]=0;a[f+1>>0]=0;a[f+2>>0]=0;a[f+3>>0]=0;a[(c[m>>2]|0)+((d[o>>0]|0)+7)>>0]=0;a[(c[m>>2]|0)+((d[o>>0]|0)+5)>>0]=(c[(c[k>>2]|0)+36>>2]|0)>>>8;a[(c[m>>2]|0)+((d[o>>0]|0)+5)+1>>0]=c[(c[k>>2]|0)+36>>2];b[(c[j>>2]|0)+14>>1]=(c[(c[k>>2]|0)+36>>2]|0)-(e[l>>1]|0);Mq(c[j>>2]|0,c[n>>2]|0)|0;b[(c[j>>2]|0)+12>>1]=b[l>>1]|0;c[(c[j>>2]|0)+60>>2]=(c[m>>2]|0)+(c[(c[k>>2]|0)+36>>2]|0);c[(c[j>>2]|0)+64>>2]=(c[m>>2]|0)+(e[l>>1]|0);a[(c[j>>2]|0)+1>>0]=0;b[(c[j>>2]|0)+18>>1]=(c[(c[k>>2]|0)+32>>2]|0)-1;b[(c[j>>2]|0)+16>>1]=0;a[c[j>>2]>>0]=1;i=h;return}function ZH(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+48|0;j=q+36|0;r=q+32|0;k=q+28|0;o=q+24|0;g=q+20|0;m=q+16|0;n=q+8|0;l=q+4|0;h=q;p=q+12|0;c[j>>2]=d;c[r>>2]=e;c[k>>2]=f;c[o>>2]=0;c[g>>2]=0;c[m>>2]=c[(c[j>>2]|0)+12>>2];if((c[r>>2]|0)!=0){c[n>>2]=c[r>>2];_H(c[(c[n>>2]|0)+68>>2]|0)}else{c[n>>2]=$H(c[j>>2]|0,c[k>>2]|0)|0}c[l>>2]=ld(c[(c[m>>2]|0)+68>>2]|0)|0;do{if((c[l>>2]|0)==0){c[h>>2]=zo((c[(c[m>>2]|0)+56>>2]|0)+36|0)|0;Xq((c[(c[m>>2]|0)+56>>2]|0)+36|0,(c[h>>2]|0)+1|0);if((b[(c[j>>2]|0)+22>>1]&4|0)!=0){if((c[n>>2]|0)==0){d=eD(c[j>>2]|0,c[k>>2]|0,n,0)|0;c[l>>2]=d;if((d|0)!=0){break}}d=ld(c[(c[n>>2]|0)+68>>2]|0)|0;c[l>>2]=d;if((d|0)!=0){break}aL(c[(c[n>>2]|0)+56>>2]|0,0,c[(c[(c[n>>2]|0)+52>>2]|0)+32>>2]|0)|0}if((a[(c[j>>2]|0)+17>>0]|0)!=0){bH(c[j>>2]|0,c[k>>2]|0,2,0,l);if((c[l>>2]|0)!=0){break}}if((c[h>>2]|0)!=0){c[g>>2]=zo((c[(c[m>>2]|0)+56>>2]|0)+32|0)|0;c[l>>2]=eD(c[j>>2]|0,c[g>>2]|0,o,0)|0;if((c[l>>2]|0)!=0){break}c[p>>2]=zo((c[(c[o>>2]|0)+56>>2]|0)+4|0)|0;if((c[p>>2]|0)>>>0>((((c[(c[j>>2]|0)+36>>2]|0)>>>0)/4|0)-2|0)>>>0){c[l>>2]=dq(56528)|0;break}if((c[p>>2]|0)>>>0<((((c[(c[j>>2]|0)+36>>2]|0)>>>0)/4|0)-8|0)>>>0){c[l>>2]=ld(c[(c[o>>2]|0)+68>>2]|0)|0;if((c[l>>2]|0)!=0){break}Xq((c[(c[o>>2]|0)+56>>2]|0)+4|0,(c[p>>2]|0)+1|0);Xq((c[(c[o>>2]|0)+56>>2]|0)+(8+(c[p>>2]<<2))|0,c[k>>2]|0);if((c[n>>2]|0)!=0){if((b[(c[j>>2]|0)+22>>1]&4|0)==0){aI(c[(c[n>>2]|0)+68>>2]|0)}}c[l>>2]=bI(c[j>>2]|0,c[k>>2]|0)|0;break}}if((c[n>>2]|0)==0){d=eD(c[j>>2]|0,c[k>>2]|0,n,0)|0;c[l>>2]=d;if(0!=(d|0)){break}}c[l>>2]=ld(c[(c[n>>2]|0)+68>>2]|0)|0;if((c[l>>2]|0)==0){Xq(c[(c[n>>2]|0)+56>>2]|0,c[g>>2]|0);Xq((c[(c[n>>2]|0)+56>>2]|0)+4|0,0);Xq((c[(c[m>>2]|0)+56>>2]|0)+32|0,c[k>>2]|0)}}}while(0);if((c[n>>2]|0)==0){d=c[n>>2]|0;Gr(d);d=c[o>>2]|0;Gr(d);d=c[l>>2]|0;i=q;return d|0}a[c[n>>2]>>0]=0;d=c[n>>2]|0;Gr(d);d=c[o>>2]|0;Gr(d);d=c[l>>2]|0;i=q;return d|0}function _H(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;cI(c[d>>2]|0);i=b;return}function $H(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d;g=d+4|0;h=d+8|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=Up(c[c[f>>2]>>2]|0,c[g>>2]|0)|0;if((c[h>>2]|0)!=0){c[e>>2]=fD(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;a=c[e>>2]|0;i=d;return a|0}else{c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}return 0}function aI(a){a=a|0;var d=0,f=0,g=0;d=i;i=i+16|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=c[(c[f>>2]|0)+16>>2];if((b[(c[f>>2]|0)+24>>1]&2|0)==0){i=d;return}if((c[(c[g>>2]|0)+96>>2]|0)!=0){i=d;return}g=(c[f>>2]|0)+24|0;b[g>>1]=e[g>>1]|0|32;i=d;return}function bI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;d=e+4|0;c[g>>2]=a;c[f>>2]=b;c[d>>2]=0;if((c[(c[g>>2]|0)+60>>2]|0)==0){a=rh(c[(c[g>>2]|0)+44>>2]|0)|0;c[(c[g>>2]|0)+60>>2]=a;if((c[(c[g>>2]|0)+60>>2]|0)==0){c[d>>2]=7}}if((c[d>>2]|0)!=0){a=c[d>>2]|0;i=e;return a|0}a=c[f>>2]|0;if(!(a>>>0<=(vh(c[(c[g>>2]|0)+60>>2]|0)|0)>>>0)){a=c[d>>2]|0;i=e;return a|0}c[d>>2]=sh(c[(c[g>>2]|0)+60>>2]|0,c[f>>2]|0)|0;a=c[d>>2]|0;i=e;return a|0}function cI(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;a=(c[e>>2]|0)+26|0;b[a>>1]=(b[a>>1]|0)+1<<16>>16;i=d;return}function dI(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;g=m+32|0;n=m+28|0;o=m+24|0;p=m+20|0;h=m+16|0;j=m+8|0;k=m+4|0;l=m;f=m+12|0;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[j>>2]=0;c[k>>2]=c[(c[n>>2]|0)+4>>2];if((c[(c[k>>2]|0)+8>>2]|0)!=0){c[g>>2]=262;b=c[g>>2]|0;i=m;return b|0}c[h>>2]=eD(c[k>>2]|0,c[o>>2]|0,j,0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}c[h>>2]=uG(c[n>>2]|0,c[o>>2]|0,0)|0;if((c[h>>2]|0)!=0){Gr(c[j>>2]|0);c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}c[c[p>>2]>>2]=0;do{if((c[o>>2]|0)>>>0>1){if((a[(c[k>>2]|0)+17>>0]|0)==0){XH(c[j>>2]|0,h);Gr(c[j>>2]|0);break}Xc(c[n>>2]|0,4,l);e=c[j>>2]|0;do{if((c[o>>2]|0)==(c[l>>2]|0)){XH(e,h);Gr(c[j>>2]|0);if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}}else{Gr(e);c[h>>2]=eD(c[k>>2]|0,c[l>>2]|0,f,0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}c[h>>2]=_G(c[k>>2]|0,c[f>>2]|0,1,0,c[o>>2]|0,0)|0;Gr(c[f>>2]|0);if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}c[f>>2]=0;c[h>>2]=eD(c[k>>2]|0,c[l>>2]|0,f,0)|0;XH(c[f>>2]|0,h);Gr(c[f>>2]|0);if((c[h>>2]|0)==0){c[c[p>>2]>>2]=c[l>>2];break}c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}}while(0);c[l>>2]=(c[l>>2]|0)+ -1;while(1){if((c[l>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[k>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){b=sD(c[k>>2]|0,c[l>>2]|0)|0;if((b|0)!=(c[l>>2]|0)){break}}c[l>>2]=(c[l>>2]|0)+ -1}c[h>>2]=gd(c[n>>2]|0,4,c[l>>2]|0)|0}else{YH(c[j>>2]|0,9);Gr(c[j>>2]|0)}}while(0);c[g>>2]=c[h>>2];b=c[g>>2]|0;i=m;return b|0}function eI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+80|0;f=g+64|0;h=g+52|0;m=g+40|0;e=g+44|0;j=g+48|0;k=g;l=g+56|0;d=g+60|0;c[h>>2]=a;c[m>>2]=b;c[e>>2]=0;c[j>>2]=c[(c[m>>2]|0)+64>>2];a=k+0|0;b=a+40|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));if((c[(c[j>>2]|0)+16>>2]|0)==0){c[f>>2]=c[e>>2];a=c[f>>2]|0;i=g;return a|0}c[e>>2]=fI(c[m>>2]|0)|0;if((c[e>>2]|0)==0){if((c[(c[j>>2]|0)+44>>2]|0)==0){c[e>>2]=gI(c[h>>2]|0,(c[j>>2]|0)+44|0)|0}}if((c[e>>2]|0)==0){c[d>>2]=0;a=c[j>>2]|0;hI(c[h>>2]|0,c[(c[j>>2]|0)+44>>2]|0,k,c[a>>2]|0,c[a+4>>2]|0);a=(c[j>>2]|0)+24|0;c[a>>2]=(c[a>>2]|0)+1;a=c[(c[j>>2]|0)+16>>2]|0;iI(k,a,((a|0)<0)<<31>>31);c[l>>2]=c[(c[j>>2]|0)+48>>2];while(1){m=c[l>>2]|0;if((c[l>>2]|0)==0){break}c[d>>2]=c[m+8>>2];a=c[(c[l>>2]|0)+4>>2]|0;iI(k,a,((a|0)<0)<<31>>31);jI(k,c[c[l>>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0);cc(c[h>>2]|0,c[l>>2]|0);c[l>>2]=c[d>>2]}c[(c[j>>2]|0)+48>>2]=m;c[e>>2]=kI(c[h>>2]|0,k,c[j>>2]|0)|0}c[f>>2]=c[e>>2];a=c[f>>2]|0;i=g;return a|0}function fI(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+32|0;d=b+24|0;k=b;h=b+4|0;g=b+8|0;e=b+12|0;f=b+16|0;j=b+20|0;c[k>>2]=a;c[f>>2]=c[(c[k>>2]|0)+64>>2];c[g>>2]=Sc(256)|0;if((c[g>>2]|0)==0){c[d>>2]=7;k=c[d>>2]|0;i=b;return k|0}c[e>>2]=c[(c[f>>2]|0)+48>>2];while(1){if((c[e>>2]|0)==0){break}c[j>>2]=c[(c[e>>2]|0)+8>>2];c[(c[e>>2]|0)+8>>2]=0;c[h>>2]=0;while(1){if((c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]|0)==0){break}nI(c[k>>2]|0,c[e>>2]|0,c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]|0,e);c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]=0;c[h>>2]=(c[h>>2]|0)+1}c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]=c[e>>2];c[e>>2]=c[j>>2]}c[e>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=64){break}nI(c[k>>2]|0,c[e>>2]|0,c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]|0,e);c[h>>2]=(c[h>>2]|0)+1}c[(c[f>>2]|0)+48>>2]=c[e>>2];oc(c[g>>2]|0);c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}function gI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;e=d;c[f>>2]=a;c[e>>2]=b;a=mI(c[c[f>>2]>>2]|0,0,c[e>>2]|0,4126,d+4|0)|0;i=d;return a|0}function hI(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+20|0;l=g+12|0;j=g+8|0;k=g;h=g+16|0;c[m>>2]=a;c[l>>2]=b;c[j>>2]=d;a=k;c[a>>2]=e;c[a+4>>2]=f;c[h>>2]=Zc(c[(c[(c[m>>2]|0)+16>>2]|0)+4>>2]|0)|0;e=(c[j>>2]|0)+0|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));a=$e(c[m>>2]|0,c[h>>2]|0)|0;c[(c[j>>2]|0)+4>>2]=a;if((c[(c[j>>2]|0)+4>>2]|0)!=0){b=k;a=c[h>>2]|0;a=mL(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;c[(c[j>>2]|0)+12>>2]=a;c[(c[j>>2]|0)+16>>2]=a;a=k;b=c[(c[j>>2]|0)+12>>2]|0;b=$K(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=(c[j>>2]|0)+24|0;c[a>>2]=b;c[a+4>>2]=D;c[(c[j>>2]|0)+8>>2]=c[h>>2];c[(c[j>>2]|0)+32>>2]=c[l>>2];i=g;return}else{c[c[j>>2]>>2]=7;i=g;return}}function iI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+12|0;j=e;f=e+8|0;g=e+16|0;c[h>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;a=j;c[f>>2]=lI(g,c[a>>2]|0,c[a+4>>2]|0)|0;jI(c[h>>2]|0,g,c[f>>2]|0);i=e;return}function jI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+16|0;g=e;h=e+4|0;j=e+8|0;k=e+12|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[h>>2];while(1){if((c[j>>2]|0)<=0){d=9;break}if((c[c[f>>2]>>2]|0)!=0){d=9;break}c[k>>2]=c[j>>2];if((c[k>>2]|0)>((c[(c[f>>2]|0)+8>>2]|0)-(c[(c[f>>2]|0)+16>>2]|0)|0)){c[k>>2]=(c[(c[f>>2]|0)+8>>2]|0)-(c[(c[f>>2]|0)+16>>2]|0)}fL((c[(c[f>>2]|0)+4>>2]|0)+(c[(c[f>>2]|0)+16>>2]|0)|0,(c[g>>2]|0)+((c[h>>2]|0)-(c[j>>2]|0))|0,c[k>>2]|0)|0;a=(c[f>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+(c[k>>2]|0);if((c[(c[f>>2]|0)+16>>2]|0)==(c[(c[f>>2]|0)+8>>2]|0)){l=c[(c[f>>2]|0)+32>>2]|0;d=(c[(c[f>>2]|0)+4>>2]|0)+(c[(c[f>>2]|0)+12>>2]|0)|0;a=(c[(c[f>>2]|0)+16>>2]|0)-(c[(c[f>>2]|0)+12>>2]|0)|0;m=(c[f>>2]|0)+24|0;b=c[(c[f>>2]|0)+12>>2]|0;b=dL(c[m>>2]|0,c[m+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;b=nd(l,d,a,b,D)|0;c[c[f>>2]>>2]=b;c[(c[f>>2]|0)+16>>2]=0;c[(c[f>>2]|0)+12>>2]=0;b=c[(c[f>>2]|0)+8>>2]|0;a=(c[f>>2]|0)+24|0;d=a;b=dL(c[d>>2]|0,c[d+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[a>>2]=b;c[a+4>>2]=D}c[j>>2]=(c[j>>2]|0)-(c[k>>2]|0)}if((d|0)==9){i=e;return}}function kI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+16|0;j=e+12|0;g=e;h=e+4|0;f=e+8|0;c[j>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[c[g>>2]>>2]|0)==0){if((c[(c[g>>2]|0)+4>>2]|0)!=0){if((c[(c[g>>2]|0)+16>>2]|0)>(c[(c[g>>2]|0)+12>>2]|0)){k=c[(c[g>>2]|0)+32>>2]|0;d=(c[(c[g>>2]|0)+4>>2]|0)+(c[(c[g>>2]|0)+12>>2]|0)|0;b=(c[(c[g>>2]|0)+16>>2]|0)-(c[(c[g>>2]|0)+12>>2]|0)|0;l=(c[g>>2]|0)+24|0;a=c[(c[g>>2]|0)+12>>2]|0;a=dL(c[l>>2]|0,c[l+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;a=nd(k,d,b,a,D)|0;c[c[g>>2]>>2]=a}}}d=(c[g>>2]|0)+24|0;l=c[(c[g>>2]|0)+16>>2]|0;l=dL(c[d>>2]|0,c[d+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;d=c[h>>2]|0;c[d>>2]=l;c[d+4>>2]=D;cc(c[j>>2]|0,c[(c[g>>2]|0)+4>>2]|0);c[f>>2]=c[c[g>>2]>>2];g=(c[g>>2]|0)+0|0;d=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(d|0));i=e;return c[f>>2]|0}function lI(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;k=g+24|0;f=g+8|0;j=g;h=g+12|0;m=g+16|0;l=g+20|0;n=g+28|0;c[f>>2]=b;b=j;c[b>>2]=d;c[b+4>>2]=e;if(0!=0?1:(c[j+4>>2]&-16777216|0)!=0){a[(c[f>>2]|0)+8>>0]=c[j>>2];d=j;d=eL(c[d>>2]|0,c[d+4>>2]|0,8)|0;b=j;c[b>>2]=d;c[b+4>>2]=D;c[h>>2]=7;while(1){if((c[h>>2]|0)<0){break}a[(c[f>>2]|0)+(c[h>>2]|0)>>0]=c[j>>2]&127|128;d=j;d=eL(c[d>>2]|0,c[d+4>>2]|0,7)|0;b=j;c[b>>2]=d;c[b+4>>2]=D;c[h>>2]=(c[h>>2]|0)+ -1}c[k>>2]=9;b=c[k>>2]|0;i=g;return b|0}c[l>>2]=0;do{b=(c[j>>2]&127|128)&255;d=c[l>>2]|0;c[l>>2]=d+1;a[n+d>>0]=b;d=j;d=eL(c[d>>2]|0,c[d+4>>2]|0,7)|0;b=j;c[b>>2]=d;c[b+4>>2]=D;b=j}while((c[b>>2]|0)!=0|(c[b+4>>2]|0)!=0);a[n>>0]=a[n>>0]&127;c[h>>2]=0;c[m>>2]=(c[l>>2]|0)-1;while(1){if((c[m>>2]|0)<0){break}a[(c[f>>2]|0)+(c[h>>2]|0)>>0]=a[n+(c[m>>2]|0)>>0]|0;c[m>>2]=(c[m>>2]|0)+ -1;c[h>>2]=(c[h>>2]|0)+1}c[k>>2]=c[l>>2];b=c[k>>2]|0;i=g;return b|0}function mI(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;l=j+24|0;m=j;h=j+4|0;k=j+8|0;o=j+12|0;g=j+16|0;n=j+20|0;c[l>>2]=a;c[m>>2]=b;c[h>>2]=d;c[k>>2]=e;c[o>>2]=f;c[g>>2]=7;c[n>>2]=Sc(c[(c[l>>2]|0)+4>>2]|0)|0;if((c[n>>2]|0)==0){a=c[g>>2]|0;i=j;return a|0}c[g>>2]=wp(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[k>>2]|0,c[o>>2]|0)|0;k=c[n>>2]|0;if((c[g>>2]|0)!=0){oc(k);a=c[g>>2]|0;i=j;return a|0}else{c[c[h>>2]>>2]=k;a=c[g>>2]|0;i=j;return a|0}return 0}function nI(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;f=l+28|0;m=l;g=l+4|0;k=l+8|0;j=l+12|0;h=l+16|0;n=l+20|0;o=l+24|0;c[f>>2]=a;c[m>>2]=b;c[g>>2]=d;c[k>>2]=e;c[j>>2]=0;c[h>>2]=j;if((c[g>>2]|0)!=0){e=c[c[g>>2]>>2]|0}else{e=0}c[n>>2]=e;while(1){if((c[m>>2]|0)==0){break}if((c[g>>2]|0)==0){break}oI(c[f>>2]|0,0,c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+4>>2]|0,c[n>>2]|0,c[(c[g>>2]|0)+4>>2]|0,o);if((c[o>>2]|0)<=0){c[c[h>>2]>>2]=c[m>>2];c[h>>2]=(c[m>>2]|0)+8;c[m>>2]=c[(c[m>>2]|0)+8>>2];c[n>>2]=0;continue}c[c[h>>2]>>2]=c[g>>2];c[h>>2]=(c[g>>2]|0)+8;c[g>>2]=c[(c[g>>2]|0)+8>>2];if((c[g>>2]|0)==0){break}c[n>>2]=c[c[g>>2]>>2]}c[c[h>>2]>>2]=(c[m>>2]|0)!=0?c[m>>2]|0:c[g>>2]|0;c[c[k>>2]>>2]=c[j>>2];i=l;return}function oI(a,d,f,g,h,j,k){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=i;i=i+48|0;w=l+40|0;m=l+36|0;q=l+32|0;p=l+28|0;t=l+24|0;u=l+20|0;r=l+12|0;s=l+8|0;v=l+4|0;n=l;o=l+16|0;c[w>>2]=a;c[m>>2]=d;c[q>>2]=f;c[p>>2]=g;c[t>>2]=h;c[u>>2]=j;c[r>>2]=k;c[s>>2]=c[(c[w>>2]|0)+8>>2];c[v>>2]=c[(c[w>>2]|0)+64>>2];c[n>>2]=c[(c[v>>2]|0)+52>>2];if((c[t>>2]|0)!=0){iD(c[s>>2]|0,c[u>>2]|0,c[t>>2]|0,c[n>>2]|0)}a:do{if((c[m>>2]|0)!=0){b[(c[n>>2]|0)+4>>1]=(e[(c[s>>2]|0)+6>>1]|0)-(c[m>>2]|0);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(e[(c[n>>2]|0)+4>>1]|0|0)){break a}if((b[(c[(c[n>>2]|0)+8>>2]|0)+((c[o>>2]|0)*40|0)+28>>1]&1|0)!=0){break}c[o>>2]=(c[o>>2]|0)+1}c[c[r>>2]>>2]=-1;i=l;return}}while(0);w=xD(c[p>>2]|0,c[q>>2]|0,c[n>>2]|0,0)|0;c[c[r>>2]>>2]=w;i=l;return}function pI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;e=d+20|0;j=d+16|0;h=d+8|0;f=d+12|0;g=d;c[j>>2]=a;c[h>>2]=b;l=g;c[l>>2]=0;c[l+4>>2]=0;l=c[h>>2]|0;n=c[l+4>>2]|0;k=(c[h>>2]|0)+8|0;m=c[k+4>>2]|0;a=c[j>>2]|0;b=c[h>>2]|0;if((n|0)>(m|0)|((n|0)==(m|0)?(c[l>>2]|0)>>>0>=(c[k>>2]|0)>>>0:0)){RH(a,b);c[e>>2]=0;n=c[e>>2]|0;i=d;return n|0}c[f>>2]=qI(a,b,g)|0;if((c[f>>2]|0)==0){c[(c[h>>2]|0)+20>>2]=c[g>>2];c[f>>2]=rI(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0,(c[h>>2]|0)+32|0)|0}c[e>>2]=c[f>>2];n=c[e>>2]|0;i=d;return n|0}function qI(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+48|0;n=h+28|0;q=h+24|0;j=h+20|0;l=h+16|0;k=h+12|0;f=h+32|0;o=h+4|0;p=h;m=h+8|0;c[q>>2]=b;c[j>>2]=d;c[l>>2]=e;d=c[j>>2]|0;b=c[(c[j>>2]|0)+40>>2]|0;b=mL(c[d>>2]|0,c[d+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[k>>2]=b;if((c[k>>2]|0)!=0){if(((c[(c[j>>2]|0)+40>>2]|0)-(c[k>>2]|0)|0)>=9){d=(mD((c[(c[j>>2]|0)+36>>2]|0)+(c[k>>2]|0)|0,c[l>>2]|0)|0)&255;b=c[j>>2]|0;e=b;d=dL(c[e>>2]|0,c[e+4>>2]|0,d|0,0)|0;c[b>>2]=d;c[b+4>>2]=D}else{g=4}}else{g=4}do{if((g|0)==4){c[p>>2]=0;while(1){c[m>>2]=rI(c[q>>2]|0,c[j>>2]|0,1,o)|0;if((c[m>>2]|0)!=0){break}d=a[c[o>>2]>>0]|0;b=c[p>>2]|0;c[p>>2]=b+1;a[f+(b&15)>>0]=d;if((a[c[o>>2]>>0]&128|0)==0){g=8;break}}if((g|0)==8){mD(f,c[l>>2]|0)|0;break}c[n>>2]=c[m>>2];b=c[n>>2]|0;i=h;return b|0}}while(0);c[n>>2]=0;b=c[n>>2]|0;i=h;return b|0}function rI(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;j=i;i=i+64|0;h=j+52|0;o=j+48|0;k=j+44|0;n=j+40|0;m=j+36|0;l=j+32|0;t=j+28|0;v=j+24|0;q=j+16|0;s=j+12|0;u=j+8|0;r=j+4|0;p=j;f=j+20|0;c[o>>2]=a;c[k>>2]=b;c[n>>2]=d;c[m>>2]=e;b=c[k>>2]|0;a=c[(c[k>>2]|0)+40>>2]|0;a=mL(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;c[l>>2]=a;if((c[l>>2]|0)==0){w=(c[k>>2]|0)+8|0;b=c[k>>2]|0;b=$K(c[w>>2]|0,c[w+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;w=D;a=c[(c[k>>2]|0)+40>>2]|0;d=((a|0)<0)<<31>>31;e=c[k>>2]|0;if((w|0)>(d|0)|(w|0)==(d|0)&b>>>0>a>>>0){c[v>>2]=c[e+40>>2]}else{a=e+8|0;w=c[k>>2]|0;w=$K(c[a>>2]|0,c[a+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;c[v>>2]=w}w=c[k>>2]|0;c[q>>2]=xp(c[(c[k>>2]|0)+24>>2]|0,c[(c[k>>2]|0)+36>>2]|0,c[v>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;if((c[q>>2]|0)!=0){c[h>>2]=c[q>>2];w=c[h>>2]|0;i=j;return w|0}}c[t>>2]=(c[(c[k>>2]|0)+40>>2]|0)-(c[l>>2]|0);do{if((c[n>>2]|0)<=(c[t>>2]|0)){c[c[m>>2]>>2]=(c[(c[k>>2]|0)+36>>2]|0)+(c[l>>2]|0);a=c[n>>2]|0;w=c[k>>2]|0;b=w;a=dL(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;c[w>>2]=a;c[w+4>>2]=D}else{do{if((c[(c[k>>2]|0)+16>>2]|0)<(c[n>>2]|0)){c[u>>2]=c[(c[k>>2]|0)+16>>2]<<1;while(1){if((c[n>>2]|0)<=(c[u>>2]|0)){break}c[u>>2]=c[u>>2]<<1}w=Ey(c[o>>2]|0,c[(c[k>>2]|0)+28>>2]|0,c[u>>2]|0)|0;c[(c[k>>2]|0)+28>>2]=w;if((c[(c[k>>2]|0)+28>>2]|0)!=0){c[(c[k>>2]|0)+16>>2]=c[u>>2];break}c[h>>2]=7;w=c[h>>2]|0;i=j;return w|0}}while(0);fL(c[(c[k>>2]|0)+28>>2]|0,(c[(c[k>>2]|0)+36>>2]|0)+(c[l>>2]|0)|0,c[t>>2]|0)|0;a=c[t>>2]|0;w=c[k>>2]|0;b=w;a=dL(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;c[w>>2]=a;c[w+4>>2]=D;c[s>>2]=(c[n>>2]|0)-(c[t>>2]|0);while(1){if((c[s>>2]|0)<=0){g=23;break}c[p>>2]=c[s>>2];if((c[s>>2]|0)>(c[(c[k>>2]|0)+40>>2]|0)){c[p>>2]=c[(c[k>>2]|0)+40>>2]}c[r>>2]=rI(c[o>>2]|0,c[k>>2]|0,c[p>>2]|0,f)|0;if((c[r>>2]|0)!=0){break}fL((c[(c[k>>2]|0)+28>>2]|0)+((c[n>>2]|0)-(c[s>>2]|0))|0,c[f>>2]|0,c[p>>2]|0)|0;c[s>>2]=(c[s>>2]|0)-(c[p>>2]|0)}if((g|0)==23){c[c[m>>2]>>2]=c[(c[k>>2]|0)+28>>2];break}c[h>>2]=c[r>>2];w=c[h>>2]|0;i=j;return w|0}}while(0);c[h>>2]=0;w=c[h>>2]|0;i=j;return w|0}function sI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+48|0;n=f+32|0;j=f+24|0;e=f+8|0;l=f+12|0;g=f+16|0;k=f+20|0;h=f;m=f+28|0;c[n>>2]=a;c[j>>2]=b;c[e>>2]=d;c[l>>2]=c[(c[j>>2]|0)+64>>2];c[g>>2]=0;a=h;c[a>>2]=0;c[a+4>>2]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=16){break}c[m>>2]=(c[(c[l>>2]|0)+36>>2]|0)+((c[k>>2]|0)*48|0);d=(c[l>>2]|0)+8|0;c[g>>2]=tI(c[n>>2]|0,c[l>>2]|0,c[d>>2]|0,c[d+4>>2]|0,c[m>>2]|0,h)|0;d=(c[m>>2]|0)+8|0;b=c[d+4>>2]|0;a=(c[l>>2]|0)+8|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;if((c[g>>2]|0)!=0){break}b=(c[l>>2]|0)+8|0;o=c[b+4>>2]|0;a=c[l>>2]|0;d=c[a+4>>2]|0;if((o|0)>(d|0)|((o|0)==(d|0)?(c[b>>2]|0)>>>0>=(c[a>>2]|0)>>>0:0)){break}c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=(c[(c[l>>2]|0)+20>>2]|0)-1;while(1){if((c[g>>2]|0)!=0){j=10;break}if((c[k>>2]|0)<=0){j=10;break}c[g>>2]=uI(c[j>>2]|0,c[k>>2]|0)|0;c[k>>2]=(c[k>>2]|0)+ -1}if((j|0)==10){b=h;a=c[b+4>>2]|0;o=c[e>>2]|0;c[o>>2]=c[b>>2];c[o+4>>2]=a;i=f;return c[g>>2]|0}return 0}function tI(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+48|0;m=j+44|0;k=j+40|0;h=j;l=j+36|0;o=j+32|0;p=j+28|0;s=j+20|0;q=j+16|0;r=j+24|0;n=j+8|0;c[m>>2]=a;c[k>>2]=b;b=h;c[b>>2]=d;c[b+4>>2]=e;c[l>>2]=f;c[o>>2]=g;c[p>>2]=0;c[s>>2]=Zc(c[(c[(c[m>>2]|0)+16>>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+24>>2]=c[(c[k>>2]|0)+44>>2];d=h;b=c[d+4>>2]|0;a=c[l>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;c[(c[l>>2]|0)+16>>2]=128;a=$e(c[m>>2]|0,c[(c[l>>2]|0)+16>>2]|0)|0;c[(c[l>>2]|0)+28>>2]=a;c[(c[l>>2]|0)+40>>2]=c[s>>2];a=$e(c[m>>2]|0,c[s>>2]|0)|0;c[(c[l>>2]|0)+36>>2]=a;if((c[(c[l>>2]|0)+36>>2]|0)!=0){b=h;a=c[s>>2]|0;a=mL(c[b>>2]|0,c[b+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;c[q>>2]=a;if((c[q>>2]|0)!=0){c[r>>2]=(c[s>>2]|0)-(c[q>>2]|0);e=h;b=c[r>>2]|0;b=dL(c[e>>2]|0,c[e+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;e=D;a=c[k>>2]|0;d=c[a+4>>2]|0;if((e|0)>(d|0)|((e|0)==(d|0)?b>>>0>(c[a>>2]|0)>>>0:0)){b=c[k>>2]|0;a=h;a=$K(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[r>>2]=a}a=h;c[p>>2]=xp(c[(c[k>>2]|0)+44>>2]|0,(c[(c[l>>2]|0)+36>>2]|0)+(c[q>>2]|0)|0,c[r>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0}if((c[p>>2]|0)==0){d=c[k>>2]|0;a=c[d+4>>2]|0;b=(c[l>>2]|0)+8|0;c[b>>2]=c[d>>2];c[b+4>>2]=a;c[p>>2]=qI(c[m>>2]|0,c[l>>2]|0,n)|0;b=c[l>>2]|0;a=n;a=dL(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;b=(c[l>>2]|0)+8|0;c[b>>2]=a;c[b+4>>2]=D;b=n;a=c[o>>2]|0;d=a;b=dL(c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[a>>2]=b;c[a+4>>2]=D}}else{c[p>>2]=7}if((c[p>>2]|0)!=0){a=c[p>>2]|0;i=j;return a|0}c[p>>2]=pI(c[m>>2]|0,c[l>>2]|0)|0;a=c[p>>2]|0;i=j;return a|0}function uI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;k=g+32|0;f=g+28|0;e=g+24|0;d=g+20|0;h=g+16|0;j=g+8|0;l=g+4|0;m=g;n=g+12|0;c[k>>2]=a;c[f>>2]=b;c[e>>2]=c[(c[k>>2]|0)+64>>2];b=c[f>>2]|0;if((c[f>>2]|0)>=((c[(c[e>>2]|0)+20>>2]|0)/2|0|0)){c[d>>2]=b-((c[(c[e>>2]|0)+20>>2]|0)/2|0)<<1;c[h>>2]=(c[d>>2]|0)+1}else{c[d>>2]=c[(c[(c[e>>2]|0)+40>>2]|0)+(b<<1<<2)>>2];c[h>>2]=c[(c[(c[e>>2]|0)+40>>2]|0)+((c[f>>2]<<1)+1<<2)>>2]}c[l>>2]=(c[(c[e>>2]|0)+36>>2]|0)+((c[d>>2]|0)*48|0);c[m>>2]=(c[(c[e>>2]|0)+36>>2]|0)+((c[h>>2]|0)*48|0);do{if((c[(c[l>>2]|0)+24>>2]|0)==0){c[j>>2]=c[h>>2]}else{if((c[(c[m>>2]|0)+24>>2]|0)==0){c[j>>2]=c[d>>2];break}oI(c[k>>2]|0,0,c[(c[l>>2]|0)+32>>2]|0,c[(c[l>>2]|0)+20>>2]|0,c[(c[m>>2]|0)+32>>2]|0,c[(c[m>>2]|0)+20>>2]|0,n);if((c[n>>2]|0)<=0){c[j>>2]=c[d>>2];break}else{c[j>>2]=c[h>>2];break}}}while(0);c[(c[(c[e>>2]|0)+40>>2]|0)+(c[f>>2]<<2)>>2]=c[j>>2];i=g;return 0}function vI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;h=d+12|0;g=d;e=d+4|0;f=d+8|0;c[h>>2]=a;c[g>>2]=b;b=c[h>>2]|0;if((c[(c[h>>2]|0)+40>>2]|0)!=0){c[f>>2]=(c[(c[h>>2]|0)+36>>2]|0)+((c[(c[b+40>>2]|0)+4>>2]|0)*48|0);c[c[g>>2]>>2]=c[(c[f>>2]|0)+20>>2];c[e>>2]=c[(c[f>>2]|0)+32>>2];a=c[e>>2]|0;i=d;return a|0}else{c[c[g>>2]>>2]=c[(c[b+48>>2]|0)+4>>2];c[e>>2]=c[c[(c[h>>2]|0)+48>>2]>>2];a=c[e>>2]|0;i=d;return a|0}return 0}function wI(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+48|0;n=q+32|0;p=q+28|0;t=q+24|0;m=q+20|0;s=q+16|0;k=q+8|0;o=q+4|0;l=q;r=q+12|0;c[n>>2]=f;c[p>>2]=g;c[t>>2]=h;c[m>>2]=j;if((c[c[m>>2]>>2]|0)!=0){i=q;return}c[k>>2]=c[(c[n>>2]|0)+56>>2];c[o>>2]=(c[(c[n>>2]|0)+64>>2]|0)+(c[p>>2]<<1);c[s>>2]=(d[c[o>>2]>>0]|0)<<8|(d[(c[o>>2]|0)+1>>0]|0);c[r>>2]=d[(c[n>>2]|0)+5>>0]|0;if(!((c[s>>2]|0)>>>0<((d[(c[k>>2]|0)+((c[r>>2]|0)+5)>>0]|0)<<8|(d[(c[k>>2]|0)+((c[r>>2]|0)+5)+1>>0]|0))>>>0)){if(!(((c[s>>2]|0)+(c[t>>2]|0)|0)>>>0>(c[(c[(c[n>>2]|0)+52>>2]|0)+36>>2]|0)>>>0)){c[l>>2]=JI(c[n>>2]|0,c[s>>2]|0,c[t>>2]|0)|0;if((c[l>>2]|0)!=0){c[c[m>>2]>>2]=c[l>>2];i=q;return}else{f=(c[n>>2]|0)+16|0;b[f>>1]=(b[f>>1]|0)+ -1<<16>>16;gL(c[o>>2]|0,(c[o>>2]|0)+2|0,(e[(c[n>>2]|0)+16>>1]|0)-(c[p>>2]|0)<<1|0)|0;a[(c[k>>2]|0)+((c[r>>2]|0)+3)>>0]=(e[(c[n>>2]|0)+16>>1]|0)>>8;a[(c[k>>2]|0)+((c[r>>2]|0)+3)+1>>0]=b[(c[n>>2]|0)+16>>1];f=(c[n>>2]|0)+14|0;b[f>>1]=(e[f>>1]|0)+2;i=q;return}}}f=dq(56847)|0;c[c[m>>2]>>2]=f;i=q;return}function xI(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if((c[(c[e>>2]|0)+80>>2]|0)!=0){i=d;return}b=eh(c[(c[e>>2]|0)+32>>2]|0)|0;c[(c[e>>2]|0)+80>>2]=b;if((c[(c[e>>2]|0)+80>>2]|0)==0){i=d;return}e=c[(c[e>>2]|0)+80>>2]|0;a[e+0>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;a[e+3>>0]=0;i=d;return}function yI(f,g,h,j,k,l,m){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;x=i;i=i+64|0;q=x+56|0;z=x+52|0;v=x+48|0;r=x+44|0;B=x+40|0;w=x+36|0;p=x+32|0;t=x+28|0;C=x+20|0;y=x+16|0;A=x+12|0;n=x+8|0;s=x+4|0;u=x;o=x+24|0;c[q>>2]=f;c[z>>2]=g;c[v>>2]=h;c[r>>2]=j;c[B>>2]=k;c[w>>2]=l;c[p>>2]=m;c[t>>2]=0;c[u>>2]=(c[w>>2]|0)!=0?4:0;if((c[c[p>>2]>>2]|0)!=0){i=x;return}if((d[(c[q>>2]|0)+1>>0]|0)==0){if(((c[r>>2]|0)+2|0)<=(e[(c[q>>2]|0)+14>>1]|0)){c[o>>2]=ld(c[(c[q>>2]|0)+68>>2]|0)|0;if((c[o>>2]|0)!=0){c[c[p>>2]>>2]=c[o>>2];i=x;return}c[s>>2]=c[(c[q>>2]|0)+56>>2];c[n>>2]=e[(c[q>>2]|0)+12>>1]|0;c[y>>2]=(c[n>>2]|0)+(e[(c[q>>2]|0)+16>>1]<<1);c[A>>2]=(c[n>>2]|0)+(c[z>>2]<<1);c[o>>2]=GI(c[q>>2]|0,c[r>>2]|0,t)|0;if((c[o>>2]|0)!=0){c[c[p>>2]>>2]=c[o>>2];i=x;return}f=(c[q>>2]|0)+16|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;f=(c[q>>2]|0)+14|0;b[f>>1]=(e[f>>1]|0)-(2+(c[r>>2]|0)&65535);fL((c[s>>2]|0)+((c[t>>2]|0)+(c[u>>2]|0))|0,(c[v>>2]|0)+(c[u>>2]|0)|0,(c[r>>2]|0)-(c[u>>2]|0)|0)|0;if((c[w>>2]|0)!=0){Xq((c[s>>2]|0)+(c[t>>2]|0)|0,c[w>>2]|0)}gL((c[s>>2]|0)+((c[A>>2]|0)+2)|0,(c[s>>2]|0)+(c[A>>2]|0)|0,(c[y>>2]|0)-(c[A>>2]|0)|0)|0;a[(c[s>>2]|0)+(c[A>>2]|0)>>0]=c[t>>2]>>8;a[(c[s>>2]|0)+(c[A>>2]|0)+1>>0]=c[t>>2];a[(c[s>>2]|0)+((d[(c[q>>2]|0)+5>>0]|0)+3)>>0]=e[(c[q>>2]|0)+16>>1]>>8;a[(c[s>>2]|0)+((d[(c[q>>2]|0)+5>>0]|0)+3)+1>>0]=b[(c[q>>2]|0)+16>>1];if((a[(c[(c[q>>2]|0)+52>>2]|0)+17>>0]|0)==0){i=x;return}dH(c[q>>2]|0,c[v>>2]|0,c[p>>2]|0);i=x;return}}if((c[B>>2]|0)!=0){fL((c[B>>2]|0)+(c[u>>2]|0)|0,(c[v>>2]|0)+(c[u>>2]|0)|0,(c[r>>2]|0)-(c[u>>2]|0)|0)|0;c[v>>2]=c[B>>2]}if((c[w>>2]|0)!=0){Xq(c[v>>2]|0,c[w>>2]|0)}g=(c[q>>2]|0)+1|0;f=a[g>>0]|0;a[g>>0]=f+1<<24>>24;c[C>>2]=f&255;c[(c[q>>2]|0)+32+(c[C>>2]<<2)>>2]=c[v>>2];b[(c[q>>2]|0)+20+(c[C>>2]<<1)>>1]=c[z>>2];i=x;return}function zI(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=i;i=i+64|0;l=m+32|0;g=m+28|0;q=m+24|0;r=m+36|0;j=m+20|0;p=m+16|0;k=m+8|0;n=m+4|0;o=m;h=m+12|0;c[l>>2]=f;c[g>>2]=0;c[q>>2]=(c[(c[(c[l>>2]|0)+4>>2]|0)+36>>2]<<1>>>0)/3|0;c[j>>2]=0;do{c[p>>2]=b[(c[l>>2]|0)+84>>1]|0;c[k>>2]=c[(c[l>>2]|0)+128+(c[p>>2]<<2)>>2];f=a[(c[k>>2]|0)+1>>0]|0;if((c[p>>2]|0)==0){if(!(f<<24>>24!=0)){break}c[g>>2]=AI(c[k>>2]|0,(c[l>>2]|0)+132|0)|0;if((c[g>>2]|0)==0){b[(c[l>>2]|0)+84>>1]=1;b[(c[l>>2]|0)+86>>1]=0;b[(c[l>>2]|0)+88>>1]=0}}else{if((f&255|0)==0){if((e[(c[k>>2]|0)+14>>1]|0)<=(c[q>>2]|0)){break}}c[n>>2]=c[(c[l>>2]|0)+128+((c[p>>2]|0)-1<<2)>>2];c[o>>2]=e[(c[l>>2]|0)+86+((c[p>>2]|0)-1<<1)>>1]|0;c[g>>2]=ld(c[(c[n>>2]|0)+68>>2]|0)|0;do{if((c[g>>2]|0)==0){if((d[(c[k>>2]|0)+4>>0]|0)!=0){if((d[(c[k>>2]|0)+1>>0]|0)==1){if((e[(c[k>>2]|0)+20>>1]|0)==(e[(c[k>>2]|0)+16>>1]|0)){if((c[(c[n>>2]|0)+72>>2]|0)!=1){if((e[(c[n>>2]|0)+16>>1]|0)==(c[o>>2]|0)){c[g>>2]=BI(c[n>>2]|0,c[k>>2]|0,r)|0;break}}}}}c[h>>2]=eh(c[(c[(c[l>>2]|0)+4>>2]|0)+32>>2]|0)|0;c[g>>2]=CI(c[n>>2]|0,c[o>>2]|0,c[h>>2]|0,(c[p>>2]|0)==1&1,d[(c[l>>2]|0)+82>>0]|0)|0;if((c[j>>2]|0)!=0){gh(c[j>>2]|0)}c[j>>2]=c[h>>2]}}while(0);a[(c[k>>2]|0)+1>>0]=0;Gr(c[k>>2]|0);f=(c[l>>2]|0)+84|0;b[f>>1]=(b[f>>1]|0)+ -1<<16>>16}}while((c[g>>2]|0)==0);if((c[j>>2]|0)==0){f=c[g>>2]|0;i=m;return f|0}gh(c[j>>2]|0);f=c[g>>2]|0;i=m;return f|0}function AI(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;j=k+24|0;l=k;f=k+4|0;h=k+8|0;g=k+12|0;m=k+16|0;n=k+20|0;c[l>>2]=b;c[f>>2]=e;c[g>>2]=0;c[m>>2]=0;c[n>>2]=c[(c[l>>2]|0)+52>>2];c[h>>2]=ld(c[(c[l>>2]|0)+68>>2]|0)|0;if((c[h>>2]|0)==0){c[h>>2]=ZG(c[n>>2]|0,g,m,c[(c[l>>2]|0)+72>>2]|0,0)|0;FI(c[l>>2]|0,c[g>>2]|0,h);if((a[(c[n>>2]|0)+17>>0]|0)!=0){bH(c[n>>2]|0,c[m>>2]|0,5,c[(c[l>>2]|0)+72>>2]|0,h)}}if((c[h>>2]|0)!=0){c[c[f>>2]>>2]=0;Gr(c[g>>2]|0);c[j>>2]=c[h>>2];b=c[j>>2]|0;i=k;return b|0}else{fL((c[g>>2]|0)+20|0,(c[l>>2]|0)+20|0,d[(c[l>>2]|0)+1>>0]<<1|0)|0;fL((c[g>>2]|0)+32|0,(c[l>>2]|0)+32|0,d[(c[l>>2]|0)+1>>0]<<2|0)|0;a[(c[g>>2]|0)+1>>0]=a[(c[l>>2]|0)+1>>0]|0;YH(c[l>>2]|0,d[c[(c[g>>2]|0)+56>>2]>>0]&-9);Xq((c[(c[l>>2]|0)+56>>2]|0)+((d[(c[l>>2]|0)+5>>0]|0)+8)|0,c[m>>2]|0);c[c[f>>2]>>2]=c[g>>2];c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}return 0}function BI(f,g,h){f=f|0;g=g|0;h=h|0;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;q=i;i=i+48|0;k=q+40|0;n=q+36|0;r=q+32|0;u=q+28|0;l=q+24|0;j=q+16|0;o=q+12|0;m=q+8|0;v=q+4|0;s=q;p=q+44|0;t=q+20|0;c[n>>2]=f;c[r>>2]=g;c[u>>2]=h;c[l>>2]=c[(c[r>>2]|0)+52>>2];if((e[(c[r>>2]|0)+16>>1]|0)==0){c[k>>2]=dq(57050)|0;f=c[k>>2]|0;i=q;return f|0}c[o>>2]=ZG(c[l>>2]|0,j,m,0,0)|0;if((c[o>>2]|0)==0){c[v>>2]=(c[u>>2]|0)+4;c[s>>2]=c[(c[r>>2]|0)+32>>2];b[p>>1]=QH(c[r>>2]|0,c[s>>2]|0)|0;YH(c[j>>2]|0,13);EI(c[j>>2]|0,1,s,p);if((a[(c[l>>2]|0)+17>>0]|0)!=0){bH(c[l>>2]|0,c[m>>2]|0,5,c[(c[n>>2]|0)+72>>2]|0,o);if((e[p>>1]|0)>(e[(c[j>>2]|0)+10>>1]|0)){dH(c[j>>2]|0,c[s>>2]|0,o)}}c[s>>2]=(c[(c[r>>2]|0)+56>>2]|0)+(e[(c[r>>2]|0)+18>>1]&(d[(c[(c[r>>2]|0)+64>>2]|0)+((e[(c[r>>2]|0)+16>>1]|0)-1<<1)>>0]<<8|d[(c[(c[r>>2]|0)+64>>2]|0)+((e[(c[r>>2]|0)+16>>1]|0)-1<<1)+1>>0]));c[t>>2]=(c[s>>2]|0)+9;do{f=c[s>>2]|0;c[s>>2]=f+1;if((a[f>>0]&128|0)==0){break}}while((c[s>>2]|0)>>>0<(c[t>>2]|0)>>>0);c[t>>2]=(c[s>>2]|0)+9;do{f=c[s>>2]|0;c[s>>2]=f+1;f=a[f>>0]|0;g=c[v>>2]|0;c[v>>2]=g+1;a[g>>0]=f;if((f&128|0)==0){break}}while((c[s>>2]|0)>>>0<(c[t>>2]|0)>>>0);yI(c[n>>2]|0,e[(c[n>>2]|0)+16>>1]|0,c[u>>2]|0,(c[v>>2]|0)-(c[u>>2]|0)|0,0,c[(c[r>>2]|0)+72>>2]|0,o);Xq((c[(c[n>>2]|0)+56>>2]|0)+((d[(c[n>>2]|0)+5>>0]|0)+8)|0,c[m>>2]|0);Gr(c[j>>2]|0)}c[k>>2]=c[o>>2];f=c[k>>2]|0;i=q;return f|0}function CI(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0;m=i;i=i+352|0;I=m+300|0;R=m+296|0;wa=m+292|0;V=m+288|0;X=m+284|0;ba=m+280|0;u=m+276|0;H=m+268|0;ta=m+264|0;o=m+260|0;q=m+256|0;n=m+272|0;E=m+304|0;w=m+308|0;P=m+312|0;y=m+316|0;v=m+346|0;l=m+320|0;ia=m+324|0;M=m+328|0;ha=m+336|0;qa=m+332|0;N=m+252|0;ua=m+248|0;r=m+236|0;F=m+224|0;p=m+204|0;W=m+200|0;sa=m+192|0;z=m+80|0;ga=m+100|0;s=m+120|0;J=m+76|0;oa=m+72|0;aa=m+68|0;va=m+64|0;ka=m+60|0;ja=m+48|0;la=m+44|0;ma=m+344|0;na=m+342|0;pa=m+340|0;ra=m+40|0;ca=m+36|0;ea=m+32|0;fa=m+52|0;da=m+56|0;_=m+124|0;Z=m+128|0;Y=m+132|0;U=m+136|0;S=m+140|0;Q=m+144|0;K=m+148|0;O=m+152|0;T=m;L=m+156|0;x=m+160|0;D=m+164|0;C=m+168|0;G=m+172|0;A=m+176|0;B=m+180|0;t=m+184|0;c[R>>2]=f;c[wa>>2]=g;c[V>>2]=h;c[X>>2]=j;c[ba>>2]=k;c[H>>2]=0;c[ta>>2]=0;c[o>>2]=0;c[y>>2]=0;c[qa>>2]=0;c[N>>2]=0;c[s>>2]=0;c[u>>2]=c[(c[R>>2]|0)+52>>2];if((c[V>>2]|0)==0){c[I>>2]=7;f=c[I>>2]|0;i=m;return f|0}c[n>>2]=(d[(c[R>>2]|0)+1>>0]|0)+(e[(c[R>>2]|0)+16>>1]|0);if((c[n>>2]|0)<2){c[P>>2]=0}else{do{if((c[wa>>2]|0)==0){c[P>>2]=0}else{if((c[wa>>2]|0)==(c[n>>2]|0)){c[P>>2]=(c[n>>2]|0)-2+(c[ba>>2]|0);break}else{c[P>>2]=(c[wa>>2]|0)-1;break}}}while(0);c[n>>2]=2-(c[ba>>2]|0)}c[q>>2]=(c[n>>2]|0)+1;k=c[R>>2]|0;if(((c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)|0)==(e[(c[R>>2]|0)+16>>1]|0)){c[W>>2]=(c[(c[R>>2]|0)+56>>2]|0)+((d[k+5>>0]|0)+8)}else{c[W>>2]=(c[k+56>>2]|0)+(e[(c[R>>2]|0)+18>>1]&(d[(c[(c[R>>2]|0)+64>>2]|0)+((c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)<<1)>>0]<<8|d[(c[(c[R>>2]|0)+64>>2]|0)+((c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)<<1)+1>>0]))}c[aa>>2]=zo(c[W>>2]|0)|0;while(1){c[y>>2]=cD(c[u>>2]|0,c[aa>>2]|0,r+(c[n>>2]<<2)|0,0)|0;if((c[y>>2]|0)!=0){va=16;break}c[ta>>2]=(c[ta>>2]|0)+(1+(e[(c[r+(c[n>>2]<<2)>>2]|0)+16>>1]|0)+(d[(c[r+(c[n>>2]<<2)>>2]|0)+1>>0]|0));f=c[n>>2]|0;c[n>>2]=f+ -1;if((f|0)==0){va=26;break}if(((c[n>>2]|0)+(c[P>>2]|0)|0)==(e[(c[R>>2]|0)+20>>1]|0)){if((d[(c[R>>2]|0)+1>>0]|0)!=0){c[sa+(c[n>>2]<<2)>>2]=c[(c[R>>2]|0)+32>>2];c[aa>>2]=zo(c[sa+(c[n>>2]<<2)>>2]|0)|0;f=(QH(c[R>>2]|0,c[sa+(c[n>>2]<<2)>>2]|0)|0)&65535;c[ga+(c[n>>2]<<2)>>2]=f;a[(c[R>>2]|0)+1>>0]=0;continue}}c[sa+(c[n>>2]<<2)>>2]=(c[(c[R>>2]|0)+56>>2]|0)+(e[(c[R>>2]|0)+18>>1]&(d[(c[(c[R>>2]|0)+64>>2]|0)+((c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)<<1)>>0]<<8|d[(c[(c[R>>2]|0)+64>>2]|0)+((c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)<<1)+1>>0]));c[aa>>2]=zo(c[sa+(c[n>>2]<<2)>>2]|0)|0;f=(QH(c[R>>2]|0,c[sa+(c[n>>2]<<2)>>2]|0)|0)&65535;c[ga+(c[n>>2]<<2)>>2]=f;if((b[(c[u>>2]|0)+22>>1]&4|0)!=0){c[va>>2]=(c[sa+(c[n>>2]<<2)>>2]|0)-(c[(c[R>>2]|0)+56>>2]|0);if(((c[va>>2]|0)+(c[ga+(c[n>>2]<<2)>>2]|0)|0)>(c[(c[u>>2]|0)+36>>2]|0)){va=23;break}fL((c[V>>2]|0)+(c[va>>2]|0)|0,c[sa+(c[n>>2]<<2)>>2]|0,c[ga+(c[n>>2]<<2)>>2]|0)|0;c[sa+(c[n>>2]<<2)>>2]=(c[V>>2]|0)+((c[sa+(c[n>>2]<<2)>>2]|0)-(c[(c[R>>2]|0)+56>>2]|0))}wI(c[R>>2]|0,(c[n>>2]|0)+(c[P>>2]|0)-(d[(c[R>>2]|0)+1>>0]|0)|0,c[ga+(c[n>>2]<<2)>>2]|0,y)}a:do{if((va|0)==16){aL(r|0,0,(c[n>>2]|0)+1<<2|0)|0}else if((va|0)==23){c[y>>2]=dq(57387)|0;aL(r|0,0,(c[n>>2]|0)+1<<2|0)|0}else if((va|0)==26){c[ta>>2]=(c[ta>>2]|0)+3&-4;c[w>>2]=(c[(c[u>>2]|0)+32>>2]|0)+80;c[ua>>2]=(c[ta>>2]<<2)+(c[ta>>2]<<1)+(c[(c[u>>2]|0)+32>>2]|0)+($(c[w>>2]|0,c[q>>2]|0)|0);c[s>>2]=Kg(c[ua>>2]|0)|0;if((c[s>>2]|0)==0){c[y>>2]=7;break}c[J>>2]=(c[s>>2]|0)+(c[ta>>2]<<2);c[oa>>2]=(c[J>>2]|0)+(c[ta>>2]<<1);b[v>>1]=d[(c[r>>2]|0)+3>>0]<<2;c[l>>2]=d[(c[r>>2]|0)+4>>0]|0;c[n>>2]=0;while(1){ta=c[u>>2]|0;if((c[n>>2]|0)>=(c[q>>2]|0)){break}k=(c[ta+32>>2]|0)+($(c[w>>2]|0,c[n>>2]|0)|0)|0;k=(c[oa>>2]|0)+k|0;c[F+(c[n>>2]<<2)>>2]=k;c[ja>>2]=k;k=(c[ja>>2]|0)+0|0;ua=(c[r+(c[n>>2]<<2)>>2]|0)+0|0;ta=k+76|0;do{c[k>>2]=c[ua>>2];k=k+4|0;ua=ua+4|0}while((k|0)<(ta|0));c[(c[ja>>2]|0)+56>>2]=(c[ja>>2]|0)+76;fL(c[(c[ja>>2]|0)+56>>2]|0,c[(c[r+(c[n>>2]<<2)>>2]|0)+56>>2]|0,c[(c[u>>2]|0)+32>>2]|0)|0;c[ka>>2]=(e[(c[ja>>2]|0)+16>>1]|0)+(d[(c[ja>>2]|0)+1>>0]|0);b:do{if((d[(c[ja>>2]|0)+1>>0]|0)>0){c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[ka>>2]|0)){break b}f=DI(c[ja>>2]|0,c[E>>2]|0)|0;c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]=f;f=QH(c[ja>>2]|0,c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]|0)|0;b[(c[J>>2]|0)+(c[H>>2]<<1)>>1]=f;c[H>>2]=(c[H>>2]|0)+1;c[E>>2]=(c[E>>2]|0)+1}}else{c[la>>2]=c[(c[ja>>2]|0)+56>>2];b[ma>>1]=b[(c[ja>>2]|0)+18>>1]|0;b[na>>1]=b[(c[ja>>2]|0)+12>>1]|0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[ka>>2]|0)){break b}c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]=(c[la>>2]|0)+(e[ma>>1]&(d[(c[la>>2]|0)+((e[na>>1]|0)+(c[E>>2]<<1))>>0]<<8|d[(c[la>>2]|0)+((e[na>>1]|0)+(c[E>>2]<<1))+1>>0]));f=QH(c[ja>>2]|0,c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]|0)|0;b[(c[J>>2]|0)+(c[H>>2]<<1)>>1]=f;c[H>>2]=(c[H>>2]|0)+1;c[E>>2]=(c[E>>2]|0)+1}}}while(0);if((c[n>>2]|0)<((c[q>>2]|0)-1|0)){if((c[l>>2]|0)==0){b[pa>>1]=c[ga+(c[n>>2]<<2)>>2];b[(c[J>>2]|0)+(c[H>>2]<<1)>>1]=b[pa>>1]|0;c[ra>>2]=(c[oa>>2]|0)+(c[qa>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(e[pa>>1]|0);fL(c[ra>>2]|0,c[sa+(c[n>>2]<<2)>>2]|0,e[pa>>1]|0)|0;c[(c[s>>2]|0)+(c[H>>2]<<2)>>2]=(c[ra>>2]|0)+(e[v>>1]|0);b[(c[J>>2]|0)+(c[H>>2]<<1)>>1]=(e[(c[J>>2]|0)+(c[H>>2]<<1)>>1]|0)-(e[v>>1]|0);ta=c[H>>2]|0;if((a[(c[ja>>2]|0)+3>>0]|0)!=0){if((e[(c[J>>2]|0)+(ta<<1)>>1]|0)<4){b[(c[J>>2]|0)+(c[H>>2]<<1)>>1]=4}}else{f=c[(c[s>>2]|0)+(ta<<2)>>2]|0;g=(c[(c[ja>>2]|0)+56>>2]|0)+8|0;a[f+0>>0]=a[g+0>>0]|0;a[f+1>>0]=a[g+1>>0]|0;a[f+2>>0]=a[g+2>>0]|0;a[f+3>>0]=a[g+3>>0]|0}c[H>>2]=(c[H>>2]|0)+1}}c[n>>2]=(c[n>>2]|0)+1}c[ia>>2]=(c[ta+36>>2]|0)-12+(e[v>>1]|0);c[n>>2]=0;c[w>>2]=0;c[ha>>2]=0;while(1){if((c[n>>2]|0)>=(c[H>>2]|0)){break}c[ha>>2]=(c[ha>>2]|0)+((e[(c[J>>2]|0)+(c[n>>2]<<1)>>1]|0)+2);if((c[ha>>2]|0)>(c[ia>>2]|0)){c[ga+(c[w>>2]<<2)>>2]=(c[ha>>2]|0)-(e[(c[J>>2]|0)+(c[n>>2]<<1)>>1]|0);c[z+(c[w>>2]<<2)>>2]=c[n>>2];if((c[l>>2]|0)!=0){c[n>>2]=(c[n>>2]|0)+ -1}c[ha>>2]=0;c[w>>2]=(c[w>>2]|0)+1;if((c[w>>2]|0)>4){va=51;break}}c[n>>2]=(c[n>>2]|0)+1}if((va|0)==51){c[y>>2]=dq(57526)|0;break}c[ga+(c[w>>2]<<2)>>2]=c[ha>>2];c[z+(c[w>>2]<<2)>>2]=c[H>>2];c[w>>2]=(c[w>>2]|0)+1;c[n>>2]=(c[w>>2]|0)-1;while(1){if((c[n>>2]|0)<=0){break}c[ca>>2]=c[ga+(c[n>>2]<<2)>>2];c[ea>>2]=c[ga+((c[n>>2]|0)-1<<2)>>2];c[fa>>2]=(c[z+((c[n>>2]|0)-1<<2)>>2]|0)-1;c[da>>2]=(c[fa>>2]|0)+1-(c[l>>2]|0);while(1){if((c[ca>>2]|0)!=0){if((c[ba>>2]|0)!=0){break}if(((c[ca>>2]|0)+(e[(c[J>>2]|0)+(c[da>>2]<<1)>>1]|0)+2|0)>((c[ea>>2]|0)-((e[(c[J>>2]|0)+(c[fa>>2]<<1)>>1]|0)+2)|0)){break}}c[ca>>2]=(c[ca>>2]|0)+((e[(c[J>>2]|0)+(c[da>>2]<<1)>>1]|0)+2);c[ea>>2]=(c[ea>>2]|0)-((e[(c[J>>2]|0)+(c[fa>>2]<<1)>>1]|0)+2);f=z+((c[n>>2]|0)-1<<2)|0;c[f>>2]=(c[f>>2]|0)+ -1;c[fa>>2]=(c[z+((c[n>>2]|0)-1<<2)>>2]|0)-1;c[da>>2]=(c[fa>>2]|0)+1-(c[l>>2]|0)}c[ga+(c[n>>2]<<2)>>2]=c[ca>>2];c[ga+((c[n>>2]|0)-1<<2)>>2]=c[ea>>2];c[n>>2]=(c[n>>2]|0)+ -1}if((c[(c[r>>2]|0)+72>>2]|0)>>>0<=1){c[y>>2]=dq(57588)|0;break}c[M>>2]=d[c[(c[r>>2]|0)+56>>2]>>0]|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[w>>2]|0)){break}if((c[n>>2]|0)<(c[q>>2]|0)){f=c[r+(c[n>>2]<<2)>>2]|0;c[p+(c[n>>2]<<2)>>2]=f;c[_>>2]=f;c[r+(c[n>>2]<<2)>>2]=0;c[y>>2]=ld(c[(c[_>>2]|0)+68>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+1;if((c[y>>2]|0)!=0){break a}}else{c[y>>2]=ZG(c[u>>2]|0,_,aa,(c[ba>>2]|0)!=0?1:c[aa>>2]|0,0)|0;if((c[y>>2]|0)!=0){break a}c[p+(c[n>>2]<<2)>>2]=c[_>>2];c[o>>2]=(c[o>>2]|0)+1;if((a[(c[u>>2]|0)+17>>0]|0)!=0){bH(c[u>>2]|0,c[(c[_>>2]|0)+72>>2]|0,5,c[(c[R>>2]|0)+72>>2]|0,y);if((c[y>>2]|0)!=0){break a}}}c[n>>2]=(c[n>>2]|0)+1}while(1){if((c[n>>2]|0)>=(c[q>>2]|0)){break}XH(c[r+(c[n>>2]<<2)>>2]|0,y);if((c[y>>2]|0)!=0){break a}Gr(c[r+(c[n>>2]<<2)>>2]|0);c[r+(c[n>>2]<<2)>>2]=0;c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=0;while(1){if((c[n>>2]|0)>=((c[w>>2]|0)-1|0)){break}c[Z>>2]=c[(c[p+(c[n>>2]<<2)>>2]|0)+72>>2];c[Y>>2]=c[n>>2];c[E>>2]=(c[n>>2]|0)+1;while(1){if((c[E>>2]|0)>=(c[w>>2]|0)){break}if((c[(c[p+(c[E>>2]<<2)>>2]|0)+72>>2]|0)>>>0<(c[Z>>2]|0)>>>0){c[Y>>2]=c[E>>2];c[Z>>2]=c[(c[p+(c[E>>2]<<2)>>2]|0)+72>>2]}c[E>>2]=(c[E>>2]|0)+1}if((c[Y>>2]|0)>(c[n>>2]|0)){c[U>>2]=c[p+(c[n>>2]<<2)>>2];c[p+(c[n>>2]<<2)>>2]=c[p+(c[Y>>2]<<2)>>2];c[p+(c[Y>>2]<<2)>>2]=c[U>>2]}c[n>>2]=(c[n>>2]|0)+1}Xq(c[W>>2]|0,c[(c[p+((c[o>>2]|0)-1<<2)>>2]|0)+72>>2]|0);c[E>>2]=0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break}c[S>>2]=c[p+(c[n>>2]<<2)>>2];YH(c[S>>2]|0,c[M>>2]|0);EI(c[S>>2]|0,(c[z+(c[n>>2]<<2)>>2]|0)-(c[E>>2]|0)|0,(c[s>>2]|0)+(c[E>>2]<<2)|0,(c[J>>2]|0)+(c[E>>2]<<1)|0);c[E>>2]=c[z+(c[n>>2]<<2)>>2];if((c[E>>2]|0)<(c[H>>2]|0)){c[Q>>2]=c[(c[s>>2]|0)+(c[E>>2]<<2)>>2];c[O>>2]=(e[(c[J>>2]|0)+(c[E>>2]<<1)>>1]|0)+(e[v>>1]|0);c[K>>2]=(c[V>>2]|0)+(c[N>>2]|0);do{if((a[(c[S>>2]|0)+3>>0]|0)!=0){if((c[l>>2]|0)!=0){c[E>>2]=(c[E>>2]|0)+ -1;nD(c[S>>2]|0,c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0,T);c[Q>>2]=c[K>>2];f=T;c[O>>2]=4+(lI((c[Q>>2]|0)+4|0,c[f>>2]|0,c[f+4>>2]|0)|0);c[K>>2]=0;break}c[Q>>2]=(c[Q>>2]|0)+ -4;if((e[(c[J>>2]|0)+(c[E>>2]<<1)>>1]|0)==4){c[O>>2]=(QH(c[R>>2]|0,c[Q>>2]|0)|0)&65535}}else{f=(c[(c[S>>2]|0)+56>>2]|0)+8|0;g=c[Q>>2]|0;a[f+0>>0]=a[g+0>>0]|0;a[f+1>>0]=a[g+1>>0]|0;a[f+2>>0]=a[g+2>>0]|0;a[f+3>>0]=a[g+3>>0]|0}}while(0);c[N>>2]=(c[N>>2]|0)+(c[O>>2]|0);yI(c[R>>2]|0,c[P>>2]|0,c[Q>>2]|0,c[O>>2]|0,c[K>>2]|0,c[(c[S>>2]|0)+72>>2]|0,y);if((c[y>>2]|0)!=0){break a}c[E>>2]=(c[E>>2]|0)+1;c[P>>2]=(c[P>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}if((c[M>>2]&8|0)==0){c[L>>2]=(c[(c[F+((c[q>>2]|0)-1<<2)>>2]|0)+56>>2]|0)+8;f=(c[(c[p+((c[o>>2]|0)-1<<2)>>2]|0)+56>>2]|0)+8|0;g=c[L>>2]|0;a[f+0>>0]=a[g+0>>0]|0;a[f+1>>0]=a[g+1>>0]|0;a[f+2>>0]=a[g+2>>0]|0;a[f+3>>0]=a[g+3>>0]|0}if((c[X>>2]|0)!=0){if((e[(c[R>>2]|0)+16>>1]|0)==0){if((d[(c[R>>2]|0)+5>>0]|0)<=(e[(c[p>>2]|0)+14>>1]|0)){FI(c[p>>2]|0,c[R>>2]|0,y);XH(c[p>>2]|0,y);break}}}if((a[(c[u>>2]|0)+17>>0]|0)!=0){c[x>>2]=c[p>>2];c[D>>2]=c[F>>2];c[C>>2]=d[(c[D>>2]|0)+1>>0]|0;c[G>>2]=(e[(c[D>>2]|0)+16>>1]|0)+(c[C>>2]|0);if((c[C>>2]|0)!=0){K=e[(c[D>>2]|0)+20>>1]|0}else{K=-1}c[A>>2]=K;c[E>>2]=0;c[w>>2]=0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[H>>2]|0)){break}c[B>>2]=0;while(1){if((c[n>>2]|0)!=(c[G>>2]|0)){break}f=(c[E>>2]|0)+1|0;c[E>>2]=f;c[D>>2]=c[F+(f<<2)>>2];c[G>>2]=(c[n>>2]|0)+(((c[l>>2]|0)!=0^1)&1)+(e[(c[D>>2]|0)+16>>1]|0)+(d[(c[D>>2]|0)+1>>0]|0);if((a[(c[D>>2]|0)+1>>0]|0)!=0){c[C>>2]=d[(c[D>>2]|0)+1>>0]|0;c[A>>2]=(c[n>>2]|0)+(((c[l>>2]|0)!=0^1)&1)+(e[(c[D>>2]|0)+20>>1]|0)}c[B>>2]=((c[l>>2]|0)!=0^1)&1}if((c[n>>2]|0)==(c[A>>2]|0)){c[B>>2]=1;f=(c[C>>2]|0)+ -1|0;c[C>>2]=f;if((f|0)>0){c[A>>2]=(c[A>>2]|0)+1}}if((c[n>>2]|0)==(c[z+(c[w>>2]<<2)>>2]|0)){f=(c[w>>2]|0)+1|0;c[w>>2]=f;c[x>>2]=c[p+(f<<2)>>2];if((c[l>>2]|0)!=0){va=117}}else{va=117}do{if((va|0)==117){va=0;if((c[B>>2]|0)==0){if((c[(c[D>>2]|0)+72>>2]|0)==(c[(c[x>>2]|0)+72>>2]|0)){break}}if((b[v>>1]|0)==0){g=c[u>>2]|0;f=zo(c[(c[s>>2]|0)+(c[n>>2]<<2)>>2]|0)|0;bH(g,f,5,c[(c[x>>2]|0)+72>>2]|0,y)}if((e[(c[J>>2]|0)+(c[n>>2]<<1)>>1]|0)>(e[(c[x>>2]|0)+10>>1]|0)){dH(c[x>>2]|0,c[(c[s>>2]|0)+(c[n>>2]<<2)>>2]|0,y)}}}while(0);c[n>>2]=(c[n>>2]|0)+1}if((b[v>>1]|0)==0){c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break a}c[t>>2]=zo((c[(c[p+(c[n>>2]<<2)>>2]|0)+56>>2]|0)+8|0)|0;bH(c[u>>2]|0,c[t>>2]|0,5,c[(c[p+(c[n>>2]<<2)>>2]|0)+72>>2]|0,y);c[n>>2]=(c[n>>2]|0)+1}}}}}while(0);Lg(c[s>>2]|0);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[q>>2]|0)){break}Gr(c[r+(c[n>>2]<<2)>>2]|0);c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break}Gr(c[p+(c[n>>2]<<2)>>2]|0);c[n>>2]=(c[n>>2]|0)+1}c[I>>2]=c[y>>2];f=c[I>>2]|0;i=m;return f|0}function DI(a,b){a=a|0;b=b|0;var f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;h=j+16|0;f=j;g=j+4|0;k=j+8|0;l=j+12|0;c[f>>2]=a;c[g>>2]=b;c[k>>2]=(d[(c[f>>2]|0)+1>>0]|0)-1;while(1){if((c[k>>2]|0)<0){b=8;break}c[l>>2]=e[(c[f>>2]|0)+20+(c[k>>2]<<1)>>1]|0;if((c[l>>2]|0)<=(c[g>>2]|0)){if((c[l>>2]|0)==(c[g>>2]|0)){b=5;break}c[g>>2]=(c[g>>2]|0)+ -1}c[k>>2]=(c[k>>2]|0)+ -1}if((b|0)==5){c[h>>2]=c[(c[f>>2]|0)+32+(c[k>>2]<<2)>>2];a=c[h>>2]|0;i=j;return a|0}else if((b|0)==8){c[h>>2]=(c[(c[f>>2]|0)+56>>2]|0)+((e[(c[f>>2]|0)+18>>1]|0)&((d[(c[(c[f>>2]|0)+64>>2]|0)+(c[g>>2]<<1)>>0]|0)<<8|(d[(c[(c[f>>2]|0)+64>>2]|0)+(c[g>>2]<<1)+1>>0]|0)));a=c[h>>2]|0;i=j;return a|0}return 0}function EI(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;q=i;i=i+48|0;o=q+20|0;r=q+36|0;v=q+32|0;s=q+28|0;k=q+24|0;u=q+16|0;n=q+12|0;l=q+8|0;m=q+4|0;p=q;t=q+40|0;c[o>>2]=f;c[r>>2]=g;c[v>>2]=h;c[s>>2]=j;c[l>>2]=c[(c[o>>2]|0)+56>>2];c[m>>2]=d[(c[o>>2]|0)+5>>0]|0;c[p>>2]=c[(c[(c[o>>2]|0)+52>>2]|0)+36>>2];c[u>>2]=(c[(c[o>>2]|0)+64>>2]|0)+(c[r>>2]<<1);c[n>>2]=c[p>>2];c[k>>2]=(c[r>>2]|0)-1;while(1){if((c[k>>2]|0)<0){break}b[t>>1]=b[(c[s>>2]|0)+(c[k>>2]<<1)>>1]|0;c[u>>2]=(c[u>>2]|0)+ -2;c[n>>2]=(c[n>>2]|0)-(e[t>>1]|0);a[c[u>>2]>>0]=c[n>>2]>>8;a[(c[u>>2]|0)+1>>0]=c[n>>2];fL((c[l>>2]|0)+(c[n>>2]|0)|0,c[(c[v>>2]|0)+(c[k>>2]<<2)>>2]|0,e[t>>1]|0|0)|0;c[k>>2]=(c[k>>2]|0)+ -1}a[(c[l>>2]|0)+((c[m>>2]|0)+3)>>0]=c[r>>2]>>8;a[(c[l>>2]|0)+((c[m>>2]|0)+3)+1>>0]=c[r>>2];a[(c[l>>2]|0)+((c[m>>2]|0)+5)>>0]=c[n>>2]>>8;a[(c[l>>2]|0)+((c[m>>2]|0)+5)+1>>0]=c[n>>2];f=(c[o>>2]|0)+14|0;b[f>>1]=(e[f>>1]|0)-((c[r>>2]<<1)+(c[p>>2]|0)-(c[n>>2]|0));b[(c[o>>2]|0)+16>>1]=c[r>>2];i=q;return}function FI(b,f,g){b=b|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=i;i=i+48|0;n=o+36|0;l=o+32|0;k=o+28|0;m=o+24|0;h=o+20|0;p=o+16|0;q=o+8|0;r=o+4|0;j=o;s=o+12|0;c[n>>2]=b;c[l>>2]=f;c[k>>2]=g;if((c[c[k>>2]>>2]|0)!=0){i=o;return}c[m>>2]=c[(c[n>>2]|0)+52>>2];c[h>>2]=c[(c[n>>2]|0)+56>>2];c[p>>2]=c[(c[l>>2]|0)+56>>2];c[q>>2]=d[(c[n>>2]|0)+5>>0]|0;c[r>>2]=(c[(c[l>>2]|0)+72>>2]|0)==1?100:0;c[s>>2]=d[(c[h>>2]|0)+((c[q>>2]|0)+5)>>0]<<8|d[(c[h>>2]|0)+((c[q>>2]|0)+5)+1>>0];fL((c[p>>2]|0)+(c[s>>2]|0)|0,(c[h>>2]|0)+(c[s>>2]|0)|0,(c[(c[m>>2]|0)+36>>2]|0)-(c[s>>2]|0)|0)|0;fL((c[p>>2]|0)+(c[r>>2]|0)|0,(c[h>>2]|0)+(c[q>>2]|0)|0,(e[(c[n>>2]|0)+12>>1]|0)+(e[(c[n>>2]|0)+16>>1]<<1)|0)|0;a[c[l>>2]>>0]=0;c[j>>2]=Lq(c[l>>2]|0)|0;if((c[j>>2]|0)!=0){c[c[k>>2]>>2]=c[j>>2];i=o;return}if((a[(c[m>>2]|0)+17>>0]|0)==0){i=o;return}b=aH(c[l>>2]|0)|0;c[c[k>>2]>>2]=b;i=o;return}function GI(b,f,g){b=b|0;f=f|0;g=g|0;var h=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;s=i;i=i+64|0;k=s+56|0;r=s+52|0;m=s+48|0;u=s+44|0;p=s+40|0;o=s+36|0;w=s+32|0;n=s+28|0;l=s+20|0;q=s+16|0;y=s+12|0;h=s+8|0;v=s+4|0;x=s;t=s+24|0;c[r>>2]=b;c[m>>2]=f;c[u>>2]=g;c[p>>2]=d[(c[r>>2]|0)+5>>0]|0;c[o>>2]=c[(c[r>>2]|0)+56>>2];c[y>>2]=c[(c[(c[r>>2]|0)+52>>2]|0)+36>>2];c[w>>2]=d[(c[o>>2]|0)+((c[p>>2]|0)+7)>>0]|0;c[l>>2]=(e[(c[r>>2]|0)+12>>1]|0)+((e[(c[r>>2]|0)+16>>1]|0)<<1);c[n>>2]=(((d[(c[o>>2]|0)+((c[p>>2]|0)+5)>>0]|0)<<8|(d[(c[o>>2]|0)+((c[p>>2]|0)+5)+1>>0]|0))-1&65535)+1;if((c[l>>2]|0)>(c[n>>2]|0)){c[k>>2]=dq(52373)|0;b=c[k>>2]|0;i=s;return b|0}a:do{if((c[w>>2]|0)>=60){c[q>>2]=HI(c[r>>2]|0)|0;if((c[q>>2]|0)==0){c[n>>2]=(((d[(c[o>>2]|0)+((c[p>>2]|0)+5)>>0]|0)<<8|(d[(c[o>>2]|0)+((c[p>>2]|0)+5)+1>>0]|0))-1&65535)+1;break}c[k>>2]=c[q>>2];b=c[k>>2]|0;i=s;return b|0}else{if(((c[l>>2]|0)+2|0)<=(c[n>>2]|0)){c[v>>2]=(c[p>>2]|0)+1;while(1){b=(d[(c[o>>2]|0)+(c[v>>2]|0)>>0]|0)<<8|(d[(c[o>>2]|0)+(c[v>>2]|0)+1>>0]|0);c[h>>2]=b;if((b|0)<=0){break a}if((c[h>>2]|0)>((c[y>>2]|0)-4|0)){j=12;break}if((c[h>>2]|0)<((c[v>>2]|0)+4|0)){j=12;break}c[x>>2]=(d[(c[o>>2]|0)+((c[h>>2]|0)+2)>>0]|0)<<8|(d[(c[o>>2]|0)+((c[h>>2]|0)+2)+1>>0]|0);if((c[x>>2]|0)>=(c[m>>2]|0)){break}c[v>>2]=c[h>>2]}if((j|0)==12){c[k>>2]=dq(52392)|0;b=c[k>>2]|0;i=s;return b|0}c[t>>2]=(c[x>>2]|0)-(c[m>>2]|0);do{if((c[t>>2]|0)<4){b=(c[o>>2]|0)+(c[v>>2]|0)|0;f=(c[o>>2]|0)+(c[h>>2]|0)|0;a[b+0>>0]=a[f+0>>0]|0;a[b+1>>0]=a[f+1>>0]|0;a[(c[o>>2]|0)+((c[p>>2]|0)+7)>>0]=(c[w>>2]|0)+(c[t>>2]|0)}else{if(((c[x>>2]|0)+(c[h>>2]|0)|0)<=(c[y>>2]|0)){a[(c[o>>2]|0)+((c[h>>2]|0)+2)>>0]=c[t>>2]>>8;a[(c[o>>2]|0)+((c[h>>2]|0)+2)+1>>0]=c[t>>2];break}c[k>>2]=dq(52405)|0;b=c[k>>2]|0;i=s;return b|0}}while(0);c[c[u>>2]>>2]=(c[h>>2]|0)+(c[t>>2]|0);c[k>>2]=0;b=c[k>>2]|0;i=s;return b|0}}}while(0);do{if(((c[l>>2]|0)+2+(c[m>>2]|0)|0)>(c[n>>2]|0)){c[q>>2]=HI(c[r>>2]|0)|0;if((c[q>>2]|0)==0){c[n>>2]=(((d[(c[o>>2]|0)+((c[p>>2]|0)+5)>>0]|0)<<8|(d[(c[o>>2]|0)+((c[p>>2]|0)+5)+1>>0]|0))-1&65535)+1;break}c[k>>2]=c[q>>2];b=c[k>>2]|0;i=s;return b|0}}while(0);c[n>>2]=(c[n>>2]|0)-(c[m>>2]|0);a[(c[o>>2]|0)+((c[p>>2]|0)+5)>>0]=c[n>>2]>>8;a[(c[o>>2]|0)+((c[p>>2]|0)+5)+1>>0]=c[n>>2];c[c[u>>2]>>2]=c[n>>2];c[k>>2]=0;b=c[k>>2]|0;i=s;return b|0}function HI(b){b=b|0;var f=0,g=0,h=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;f=i;i=i+64|0;m=f+56|0;l=f+52|0;t=f+48|0;o=f+44|0;j=f+40|0;n=f+36|0;p=f+32|0;s=f+28|0;g=f+20|0;v=f+16|0;h=f+12|0;q=f+8|0;k=f+4|0;r=f;u=f+24|0;c[l>>2]=b;c[q>>2]=II(c[c[(c[l>>2]|0)+52>>2]>>2]|0)|0;c[h>>2]=c[(c[l>>2]|0)+56>>2];c[j>>2]=d[(c[l>>2]|0)+5>>0]|0;c[s>>2]=e[(c[l>>2]|0)+12>>1]|0;c[v>>2]=e[(c[l>>2]|0)+16>>1]|0;c[p>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+36>>2];c[g>>2]=(d[(c[h>>2]|0)+((c[j>>2]|0)+5)>>0]|0)<<8|(d[(c[h>>2]|0)+((c[j>>2]|0)+5)+1>>0]|0);fL((c[q>>2]|0)+(c[g>>2]|0)|0,(c[h>>2]|0)+(c[g>>2]|0)|0,(c[p>>2]|0)-(c[g>>2]|0)|0)|0;c[g>>2]=c[p>>2];c[k>>2]=(c[s>>2]|0)+(c[v>>2]<<1);c[r>>2]=(c[p>>2]|0)-4;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[v>>2]|0)){n=10;break}c[u>>2]=(c[h>>2]|0)+((c[s>>2]|0)+(c[t>>2]<<1));c[o>>2]=(d[c[u>>2]>>0]|0)<<8|(d[(c[u>>2]|0)+1>>0]|0);if((c[o>>2]|0)<(c[k>>2]|0)){n=5;break}if((c[o>>2]|0)>(c[r>>2]|0)){n=5;break}c[n>>2]=(QH(c[l>>2]|0,(c[q>>2]|0)+(c[o>>2]|0)|0)|0)&65535;c[g>>2]=(c[g>>2]|0)-(c[n>>2]|0);if((c[g>>2]|0)<(c[k>>2]|0)){n=8;break}if(((c[o>>2]|0)+(c[n>>2]|0)|0)>(c[p>>2]|0)){n=8;break}fL((c[h>>2]|0)+(c[g>>2]|0)|0,(c[q>>2]|0)+(c[o>>2]|0)|0,c[n>>2]|0)|0;a[c[u>>2]>>0]=c[g>>2]>>8;a[(c[u>>2]|0)+1>>0]=c[g>>2];c[t>>2]=(c[t>>2]|0)+1}if((n|0)==5){c[m>>2]=dq(52304)|0;v=c[m>>2]|0;i=f;return v|0}else if((n|0)==8){c[m>>2]=dq(52316)|0;v=c[m>>2]|0;i=f;return v|0}else if((n|0)==10){a[(c[h>>2]|0)+((c[j>>2]|0)+5)>>0]=c[g>>2]>>8;a[(c[h>>2]|0)+((c[j>>2]|0)+5)+1>>0]=c[g>>2];a[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]=0;a[(c[h>>2]|0)+((c[j>>2]|0)+2)>>0]=0;a[(c[h>>2]|0)+((c[j>>2]|0)+7)>>0]=0;aL((c[h>>2]|0)+(c[k>>2]|0)|0,0,(c[g>>2]|0)-(c[k>>2]|0)|0)|0;if(((c[g>>2]|0)-(c[k>>2]|0)|0)!=(e[(c[l>>2]|0)+14>>1]|0|0)){c[m>>2]=dq(52333)|0;v=c[m>>2]|0;i=f;return v|0}else{c[m>>2]=0;v=c[m>>2]|0;i=f;return v|0}}return 0}function II(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+200>>2]|0}function JI(f,g,h){f=f|0;g=g|0;h=h|0;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;l=i;i=i+64|0;t=l+52|0;x=l+48|0;v=l+44|0;w=l+40|0;s=l+36|0;o=l+32|0;n=l+28|0;y=l+24|0;m=l+16|0;q=l+12|0;r=l+8|0;u=l+4|0;j=l;p=l+20|0;c[x>>2]=f;c[v>>2]=g;c[w>>2]=h;c[m>>2]=c[(c[x>>2]|0)+56>>2];if((b[(c[(c[x>>2]|0)+52>>2]|0)+22>>1]&4|0)!=0){aL((c[m>>2]|0)+(c[v>>2]|0)|0,0,c[w>>2]|0)|0}c[n>>2]=d[(c[x>>2]|0)+5>>0]|0;c[s>>2]=(c[n>>2]|0)+1;c[y>>2]=(c[(c[(c[x>>2]|0)+52>>2]|0)+36>>2]|0)-4;while(1){f=(d[(c[m>>2]|0)+(c[s>>2]|0)>>0]|0)<<8|(d[(c[m>>2]|0)+(c[s>>2]|0)+1>>0]|0);c[o>>2]=f;if((f|0)<(c[v>>2]|0)){g=(c[o>>2]|0)>0}else{g=0}h=c[o>>2]|0;if(!g){break}if((h|0)<((c[s>>2]|0)+4|0)){k=8;break}c[s>>2]=c[o>>2]}if((k|0)==8){c[t>>2]=dq(52483)|0;f=c[t>>2]|0;i=l;return f|0}if((h|0)>(c[y>>2]|0)){c[t>>2]=dq(52488)|0;f=c[t>>2]|0;i=l;return f|0}a[(c[m>>2]|0)+(c[s>>2]|0)>>0]=c[v>>2]>>8;a[(c[m>>2]|0)+(c[s>>2]|0)+1>>0]=c[v>>2];a[(c[m>>2]|0)+(c[v>>2]|0)>>0]=c[o>>2]>>8;a[(c[m>>2]|0)+(c[v>>2]|0)+1>>0]=c[o>>2];a[(c[m>>2]|0)+((c[v>>2]|0)+2)>>0]=c[w>>2]>>8;a[(c[m>>2]|0)+((c[v>>2]|0)+2)+1>>0]=c[w>>2];b[(c[x>>2]|0)+14>>1]=(e[(c[x>>2]|0)+14>>1]|0)+(c[w>>2]&65535);c[s>>2]=(c[n>>2]|0)+1;while(1){f=(d[(c[m>>2]|0)+(c[s>>2]|0)>>0]|0)<<8|(d[(c[m>>2]|0)+(c[s>>2]|0)+1>>0]|0);c[o>>2]=f;if((f|0)<=0){break}c[q>>2]=(d[(c[m>>2]|0)+(c[o>>2]|0)>>0]|0)<<8|(d[(c[m>>2]|0)+(c[o>>2]|0)+1>>0]|0);c[r>>2]=(d[(c[m>>2]|0)+((c[o>>2]|0)+2)>>0]|0)<<8|(d[(c[m>>2]|0)+((c[o>>2]|0)+2)+1>>0]|0);if(!((c[q>>2]|0)>0?((c[o>>2]|0)+(c[r>>2]|0)+3|0)>=(c[q>>2]|0):0)){c[s>>2]=c[o>>2];continue}c[j>>2]=(c[q>>2]|0)-((c[o>>2]|0)+(c[r>>2]|0));if((c[j>>2]|0)<0){k=17;break}if((c[j>>2]|0)>(d[(c[m>>2]|0)+((c[n>>2]|0)+7)>>0]|0|0)){k=17;break}f=(c[m>>2]|0)+((c[n>>2]|0)+7)|0;a[f>>0]=(d[f>>0]|0)-(c[j>>2]&255);c[u>>2]=(d[(c[m>>2]|0)+(c[q>>2]|0)>>0]|0)<<8|(d[(c[m>>2]|0)+(c[q>>2]|0)+1>>0]|0);a[(c[m>>2]|0)+(c[o>>2]|0)>>0]=c[u>>2]>>8;a[(c[m>>2]|0)+(c[o>>2]|0)+1>>0]=c[u>>2];c[u>>2]=(c[q>>2]|0)+((d[(c[m>>2]|0)+((c[q>>2]|0)+2)>>0]|0)<<8|(d[(c[m>>2]|0)+((c[q>>2]|0)+2)+1>>0]|0))-(c[o>>2]|0);a[(c[m>>2]|0)+((c[o>>2]|0)+2)>>0]=c[u>>2]>>8;a[(c[m>>2]|0)+((c[o>>2]|0)+2)+1>>0]=c[u>>2]}if((k|0)==17){c[t>>2]=dq(52507)|0;f=c[t>>2]|0;i=l;return f|0}if((d[(c[m>>2]|0)+((c[n>>2]|0)+1)>>0]|0|0)==(d[(c[m>>2]|0)+((c[n>>2]|0)+5)>>0]|0|0)){if((d[(c[m>>2]|0)+((c[n>>2]|0)+2)>>0]|0|0)==(d[(c[m>>2]|0)+((c[n>>2]|0)+6)>>0]|0|0)){c[o>>2]=(d[(c[m>>2]|0)+((c[n>>2]|0)+1)>>0]|0)<<8|(d[(c[m>>2]|0)+((c[n>>2]|0)+1)+1>>0]|0);f=(c[m>>2]|0)+((c[n>>2]|0)+1)|0;g=(c[m>>2]|0)+(c[o>>2]|0)|0;a[f+0>>0]=a[g+0>>0]|0;a[f+1>>0]=a[g+1>>0]|0;c[p>>2]=((d[(c[m>>2]|0)+((c[n>>2]|0)+5)>>0]|0)<<8|(d[(c[m>>2]|0)+((c[n>>2]|0)+5)+1>>0]|0))+((d[(c[m>>2]|0)+((c[o>>2]|0)+2)>>0]|0)<<8|(d[(c[m>>2]|0)+((c[o>>2]|0)+2)+1>>0]|0));a[(c[m>>2]|0)+((c[n>>2]|0)+5)>>0]=c[p>>2]>>8;a[(c[m>>2]|0)+((c[n>>2]|0)+5)+1>>0]=c[p>>2]}}c[t>>2]=0;f=c[t>>2]|0;i=l;return f|0}function KI(b,f,g,h,j,k,l,m,n){b=b|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;r=i;i=i+144|0;q=r+60|0;L=r+124|0;z=r+120|0;I=r+116|0;H=r+32|0;D=r+112|0;K=r+108|0;M=r+104|0;y=r+100|0;u=r+96|0;E=r+92|0;G=r+88|0;v=r+84|0;p=r+64|0;w=r+56|0;J=r+48|0;o=r+40|0;C=r+44|0;N=r+52|0;B=r+68|0;F=r+72|0;A=r+76|0;x=r;s=r+80|0;t=r+128|0;c[L>>2]=b;c[z>>2]=f;c[I>>2]=g;b=H;c[b>>2]=h;c[b+4>>2]=j;c[D>>2]=k;c[K>>2]=l;c[M>>2]=m;c[y>>2]=n;c[J>>2]=0;c[o>>2]=0;c[B>>2]=c[(c[L>>2]|0)+52>>2];c[F>>2]=0;c[A>>2]=0;if((a[(c[L>>2]|0)+3>>0]|0)==0){c[A>>2]=(c[A>>2]|0)+4}if((a[(c[L>>2]|0)+4>>0]|0)!=0){if(((c[K>>2]|0)+(c[M>>2]|0)|0)>>>0<128){a[(c[z>>2]|0)+(c[A>>2]|0)>>0]=(c[K>>2]|0)+(c[M>>2]|0);n=1}else{n=UF((c[z>>2]|0)+(c[A>>2]|0)|0,(c[K>>2]|0)+(c[M>>2]|0)|0)|0}c[A>>2]=(c[A>>2]|0)+(n&255)}else{c[M>>2]=0;c[K>>2]=0}b=H;b=lI((c[z>>2]|0)+(c[A>>2]|0)|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[A>>2]=(c[A>>2]|0)+b;nD(c[L>>2]|0,c[z>>2]|0,x);c[u>>2]=(c[K>>2]|0)+(c[M>>2]|0);do{if((a[(c[L>>2]|0)+2>>0]|0)!=0){c[E>>2]=c[D>>2];c[G>>2]=c[K>>2];c[K>>2]=0}else{b=H;f=c[b+4>>2]|0;if(!((f|0)>0|(f|0)==0&(c[b>>2]|0)>>>0>2147483647)){if((c[I>>2]|0)!=0){c[u>>2]=(c[u>>2]|0)+(c[H>>2]|0);c[E>>2]=c[I>>2];c[G>>2]=c[H>>2];break}}c[q>>2]=dq(56721)|0;b=c[q>>2]|0;i=r;return b|0}}while(0);c[c[y>>2]>>2]=e[x+26>>1]|0;c[w>>2]=e[x+22>>1]|0;c[N>>2]=(c[z>>2]|0)+(c[A>>2]|0);c[C>>2]=(c[z>>2]|0)+(e[x+24>>1]|0);while(1){if((c[u>>2]|0)<=0){s=37;break}if((c[w>>2]|0)==0){c[s>>2]=c[F>>2];if((a[(c[B>>2]|0)+17>>0]|0)!=0){while(1){c[F>>2]=(c[F>>2]|0)+1;b=sD(c[B>>2]|0,c[F>>2]|0)|0;if((b|0)==(c[F>>2]|0)){continue}if((c[F>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[B>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){break}}}c[p>>2]=ZG(c[B>>2]|0,J,F,c[F>>2]|0,0)|0;if((d[(c[B>>2]|0)+17>>0]|0)!=0){if((c[p>>2]|0)==0){a[t>>0]=(c[s>>2]|0)!=0?4:3;bH(c[B>>2]|0,c[F>>2]|0,a[t>>0]|0,c[s>>2]|0,p);if((c[p>>2]|0)!=0){Gr(c[J>>2]|0)}}}if((c[p>>2]|0)!=0){s=26;break}Xq(c[C>>2]|0,c[F>>2]|0);Gr(c[o>>2]|0);c[o>>2]=c[J>>2];c[C>>2]=c[(c[J>>2]|0)+56>>2];Xq(c[C>>2]|0,0);c[N>>2]=(c[(c[J>>2]|0)+56>>2]|0)+4;c[w>>2]=(c[(c[B>>2]|0)+36>>2]|0)-4}c[v>>2]=c[u>>2];if((c[v>>2]|0)>(c[w>>2]|0)){c[v>>2]=c[w>>2]}if((c[G>>2]|0)>0){if((c[v>>2]|0)>(c[G>>2]|0)){c[v>>2]=c[G>>2]}fL(c[N>>2]|0,c[E>>2]|0,c[v>>2]|0)|0}else{aL(c[N>>2]|0,0,c[v>>2]|0)|0}c[u>>2]=(c[u>>2]|0)-(c[v>>2]|0);c[N>>2]=(c[N>>2]|0)+(c[v>>2]|0);c[E>>2]=(c[E>>2]|0)+(c[v>>2]|0);c[G>>2]=(c[G>>2]|0)-(c[v>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[v>>2]|0);if((c[G>>2]|0)!=0){continue}c[G>>2]=c[K>>2];c[E>>2]=c[D>>2]}if((s|0)==26){Gr(c[o>>2]|0);c[q>>2]=c[p>>2];b=c[q>>2]|0;i=r;return b|0}else if((s|0)==37){Gr(c[o>>2]|0);c[q>>2]=0;b=c[q>>2]|0;i=r;return b|0}return 0}function LI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;c[e>>2]=a;c[g>>2]=b;c[f>>2]=c[(c[g>>2]|0)+64>>2];if((c[f>>2]|0)==0){i=d;return}vG(c[e>>2]|0,c[f>>2]|0);cc(c[e>>2]|0,c[(c[f>>2]|0)+52>>2]|0);cc(c[e>>2]|0,c[f>>2]|0);c[(c[g>>2]|0)+64>>2]=0;i=d;return}function MI(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=i;i=i+64|0;j=k+44|0;o=k+40|0;v=k+36|0;n=k+32|0;g=k+28|0;l=k+24|0;p=k+20|0;q=k+12|0;m=k+8|0;t=k+4|0;u=k;r=k+48|0;s=k+16|0;c[o>>2]=b;c[v>>2]=e;c[n>>2]=f;c[g>>2]=c[(c[o>>2]|0)+4>>2];f=c[g>>2]|0;if((a[(c[g>>2]|0)+17>>0]|0)!=0){XG(f);Xc(c[o>>2]|0,4,p);c[p>>2]=(c[p>>2]|0)+1;while(1){b=c[p>>2]|0;if((b|0)!=(sD(c[g>>2]|0,c[p>>2]|0)|0)){if((c[p>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[g>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){break}}c[p>>2]=(c[p>>2]|0)+1}c[q>>2]=ZG(c[g>>2]|0,u,t,c[p>>2]|0,1)|0;if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}if((c[t>>2]|0)!=(c[p>>2]|0)){a[r>>0]=0;c[s>>2]=0;c[q>>2]=hF(c[g>>2]|0,0,0)|0;Gr(c[u>>2]|0);if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}c[q>>2]=eD(c[g>>2]|0,c[p>>2]|0,l,0)|0;if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}c[q>>2]=tD(c[g>>2]|0,c[p>>2]|0,r,s)|0;if((d[r>>0]|0)==1){h=15}else{if((d[r>>0]|0)==2){h=15}}if((h|0)==15){c[q>>2]=dq(58462)|0}if((c[q>>2]|0)!=0){Gr(c[l>>2]|0);c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}c[q>>2]=_G(c[g>>2]|0,c[l>>2]|0,a[r>>0]|0,c[s>>2]|0,c[t>>2]|0,0)|0;Gr(c[l>>2]|0);if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}c[q>>2]=eD(c[g>>2]|0,c[p>>2]|0,l,0)|0;if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}c[q>>2]=ld(c[(c[l>>2]|0)+68>>2]|0)|0;if((c[q>>2]|0)!=0){Gr(c[l>>2]|0);c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}}else{c[l>>2]=c[u>>2]}bH(c[g>>2]|0,c[p>>2]|0,1,0,q);if((c[q>>2]|0)!=0){Gr(c[l>>2]|0);c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}c[q>>2]=gd(c[o>>2]|0,4,c[p>>2]|0)|0;if((c[q>>2]|0)!=0){Gr(c[l>>2]|0);c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}}else{c[q>>2]=ZG(f,l,p,1,0)|0;if((c[q>>2]|0)!=0){c[j>>2]=c[q>>2];b=c[j>>2]|0;i=k;return b|0}}if((c[n>>2]&1|0)!=0){c[m>>2]=13}else{c[m>>2]=10}YH(c[l>>2]|0,c[m>>2]|0);dd(c[(c[l>>2]|0)+68>>2]|0);c[c[v>>2]>>2]=c[p>>2];c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}function NI(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+32|0;k=o+24|0;j=o;l=o+4|0;q=o+8|0;n=o+12|0;m=o+16|0;p=o+20|0;c[j>>2]=d;c[l>>2]=e;c[q>>2]=f;c[n>>2]=g;c[m>>2]=h;c[p>>2]=c[(c[j>>2]|0)+4>>2];if((c[q>>2]|0)!=0){if((b[(c[p>>2]|0)+22>>1]&1|0)!=0){c[k>>2]=8;d=c[k>>2]|0;i=o;return d|0}}if((c[l>>2]|0)==1){if((dD(c[p>>2]|0)|0)==0){c[l>>2]=0}}c[(c[m>>2]|0)+68>>2]=c[l>>2];b[(c[m>>2]|0)+84>>1]=-1;c[(c[m>>2]|0)+16>>2]=c[n>>2];c[c[m>>2]>>2]=c[j>>2];c[(c[m>>2]|0)+4>>2]=c[p>>2];a[(c[m>>2]|0)+80>>0]=c[q>>2];c[(c[m>>2]|0)+8>>2]=c[(c[p>>2]|0)+8>>2];if((c[(c[m>>2]|0)+8>>2]|0)!=0){c[(c[(c[m>>2]|0)+8>>2]|0)+12>>2]=c[m>>2]}c[(c[p>>2]|0)+8>>2]=c[m>>2];a[(c[m>>2]|0)+81>>0]=0;c[k>>2]=0;d=c[k>>2]|0;i=o;return d|0}function OI(){return 208}function PI(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;d=(c[d>>2]|0)+0|0;a=d+84|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));i=b;return}function QI(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;k=g+24|0;j=g;m=g+4|0;h=g+8|0;n=g+12|0;l=g+16|0;e=g+20|0;c[j>>2]=a;c[m>>2]=b;c[h>>2]=0;c[n>>2]=c[(c[j>>2]|0)+96>>2];a:do{if((c[m>>2]|0)>(c[n>>2]|0)){if((d[(c[j>>2]|0)+6>>0]|0|0)!=0){c[e>>2]=rc(c[(c[j>>2]|0)+92>>2]|0,(c[m>>2]|0)*48|0)|0;if((c[e>>2]|0)==0){c[k>>2]=7;a=c[k>>2]|0;i=g;return a|0}aL((c[e>>2]|0)+((c[n>>2]|0)*48|0)|0,0,((c[m>>2]|0)-(c[n>>2]|0)|0)*48|0)|0;c[(c[j>>2]|0)+92>>2]=c[e>>2];c[l>>2]=c[n>>2];while(1){if((c[l>>2]|0)>=(c[m>>2]|0)){break a}c[(c[e>>2]|0)+((c[l>>2]|0)*48|0)+20>>2]=c[(c[j>>2]|0)+24>>2];if((c[c[(c[j>>2]|0)+64>>2]>>2]|0)!=0){a=(c[j>>2]|0)+72|0;b=c[a+4>>2]|0;if((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>0){n=(c[j>>2]|0)+72|0;b=c[n+4>>2]|0;a=(c[e>>2]|0)+((c[l>>2]|0)*48|0)|0;c[a>>2]=c[n>>2];c[a+4>>2]=b}else{f=10}}else{f=10}if((f|0)==10){f=0;a=(c[e>>2]|0)+((c[l>>2]|0)*48|0)|0;c[a>>2]=c[(c[j>>2]|0)+148>>2];c[a+4>>2]=0}c[(c[e>>2]|0)+((c[l>>2]|0)*48|0)+24>>2]=c[(c[j>>2]|0)+52>>2];a=rh(c[(c[j>>2]|0)+24>>2]|0)|0;c[(c[e>>2]|0)+((c[l>>2]|0)*48|0)+16>>2]=a;if((c[(c[e>>2]|0)+((c[l>>2]|0)*48|0)+16>>2]|0)==0){break}if((Uo(c[j>>2]|0)|0)!=0){RI(c[(c[j>>2]|0)+208>>2]|0,(c[e>>2]|0)+((c[l>>2]|0)*48|0)+28|0)}c[(c[j>>2]|0)+96>>2]=(c[l>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=7;a=c[k>>2]|0;i=g;return a|0}}}while(0);c[k>>2]=c[h>>2];a=c[k>>2]|0;i=g;return a|0}function RI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;c[c[e>>2]>>2]=c[(c[f>>2]|0)+68>>2];c[(c[e>>2]|0)+4>>2]=c[(c[f>>2]|0)+76>>2];c[(c[e>>2]|0)+8>>2]=c[(c[f>>2]|0)+80>>2];c[(c[e>>2]|0)+12>>2]=c[(c[f>>2]|0)+104>>2];i=d;return}function SI(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+16|0;j=g;l=g+4|0;k=g+8|0;m=g+12|0;c[j>>2]=f;if((c[(c[j>>2]|0)+44>>2]|0)>>>0>0){c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}c[l>>2]=c[(c[j>>2]|0)+12>>2];c[k>>2]=c[(c[l>>2]|0)+56>>2];c[m>>2]=ld(c[(c[l>>2]|0)+68>>2]|0)|0;if((c[m>>2]|0)!=0){c[h>>2]=c[m>>2];n=c[h>>2]|0;i=g;return n|0}else{n=(c[k>>2]|0)+0|0;m=40888|0;f=n+16|0;do{a[n>>0]=a[m>>0]|0;n=n+1|0;m=m+1|0}while((n|0)<(f|0));a[(c[k>>2]|0)+16>>0]=(c[(c[j>>2]|0)+32>>2]|0)>>>8&255;a[(c[k>>2]|0)+17>>0]=(c[(c[j>>2]|0)+32>>2]|0)>>>16&255;a[(c[k>>2]|0)+18>>0]=1;a[(c[k>>2]|0)+19>>0]=1;a[(c[k>>2]|0)+20>>0]=(c[(c[j>>2]|0)+32>>2]|0)-(c[(c[j>>2]|0)+36>>2]|0);a[(c[k>>2]|0)+21>>0]=64;a[(c[k>>2]|0)+22>>0]=32;a[(c[k>>2]|0)+23>>0]=32;n=(c[k>>2]|0)+24|0;f=n+76|0;do{a[n>>0]=0;n=n+1|0}while((n|0)<(f|0));YH(c[l>>2]|0,13);n=(c[j>>2]|0)+22|0;b[n>>1]=e[n>>1]|0|2;Xq((c[k>>2]|0)+52|0,d[(c[j>>2]|0)+17>>0]|0);Xq((c[k>>2]|0)+64|0,d[(c[j>>2]|0)+18>>0]|0);c[(c[j>>2]|0)+44>>2]=1;a[(c[k>>2]|0)+31>>0]=1;c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}return 0}function TI(a,b){a=a|0;b=b|0;var d=0,f=0,g=0;f=i;i=i+16|0;d=f+4|0;g=f;c[d>>2]=a;c[g>>2]=b;c[c[g>>2]>>2]=e[(c[d>>2]|0)+46>>1]|0;i=f;return(c[(c[d>>2]|0)+32>>2]|0)+(e[(c[d>>2]|0)+44>>1]|0)|0}function UI(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;k=f;h=f+4|0;j=f+8|0;c[k>>2]=a;c[h>>2]=b;if((d[(c[k>>2]|0)+81>>0]|0|0)==1){c[c[h>>2]>>2]=0;c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}if((d[(c[k>>2]|0)+81>>0]|0|0)>=3){b=_C(c[k>>2]|0)|0}else{b=0}c[j>>2]=b;if((c[j>>2]|0)!=0){c[c[h>>2]>>2]=2;c[g>>2]=c[j>>2];a=c[g>>2]|0;i=f;return a|0}if((d[(c[k>>2]|0)+81>>0]|0|0)!=1){e=9}else{if((c[(c[k>>2]|0)+76>>2]|0)!=0){e=9}else{c[c[h>>2]>>2]=1}}if((e|0)==9){c[c[h>>2]>>2]=2}c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}function VI(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;d=b+16|0;h=b;g=b+4|0;f=b+8|0;e=b+12|0;c[d>>2]=a;if((c[(c[d>>2]|0)+176>>2]|0)!=0){c[h>>2]=c[(c[d>>2]|0)+176>>2];while(1){a=c[h>>2]|0;if((c[(c[h>>2]|0)+4>>2]|0)==0){break}c[h>>2]=c[a+4>>2]}CF(a)|0}c[(c[d>>2]|0)+176>>2]=0;c[(c[d>>2]|0)+184>>2]=0;a:do{if((c[(c[d>>2]|0)+56>>2]|0)!=0){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+36>>2]|0)){break a}c[f>>2]=c[(c[(c[d>>2]|0)+56>>2]|0)+(c[g>>2]<<2)>>2];if((c[f>>2]|0)!=0){eG(c[d>>2]|0,c[f>>2]|0);c[(c[(c[d>>2]|0)+56>>2]|0)+(c[g>>2]<<2)>>2]=0}c[g>>2]=(c[g>>2]|0)+1}}}while(0);if((c[(c[d>>2]|0)+8>>2]|0)!=0){NA((c[(c[d>>2]|0)+8>>2]|0)+40|0,c[(c[d>>2]|0)+28>>2]|0)}while(1){f=c[d>>2]|0;if((c[(c[d>>2]|0)+180>>2]|0)==0){break}c[e>>2]=c[f+180>>2];c[(c[d>>2]|0)+180>>2]=c[(c[e>>2]|0)+4>>2];bJ(c[e>>2]|0)}LF(f,-1,0);i=b;return}function WI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=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,E=0,F=0;g=i;i=i+112|0;v=g+8|0;f=g+100|0;h=g+96|0;F=g+92|0;m=g+88|0;z=g+84|0;s=g+80|0;C=g+76|0;E=g+72|0;B=g+68|0;A=g+64|0;l=g+60|0;o=g+104|0;j=g+28|0;y=g+24|0;k=g+16|0;q=g;w=g+20|0;d=g+52|0;u=g+32|0;t=g+36|0;r=g+40|0;p=g+44|0;n=g+48|0;x=g+56|0;c[h>>2]=a;c[F>>2]=b;c[z>>2]=0;c[s>>2]=0;c[C>>2]=0;c[s>>2]=XI(c[h>>2]|0,c[F>>2]|0)|0;c[m>>2]=0;while(1){if((c[s>>2]|0)!=0){break}if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[E>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((Ir(c[E>>2]|0)|0)!=0){c[C>>2]=1;if((c[m>>2]|0)!=1){c[z>>2]=(c[z>>2]|0)+1}Uc(c[E>>2]|0);c[s>>2]=Yq(Zb(c[E>>2]|0)|0)|0}c[m>>2]=(c[m>>2]|0)+1}if((c[s>>2]|0)!=0){c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}if((c[C>>2]|0)!=0){if((c[(c[h>>2]|0)+184>>2]|0)!=0){c[s>>2]=ub[c[(c[h>>2]|0)+184>>2]&63](c[(c[h>>2]|0)+180>>2]|0)|0;if((c[s>>2]|0)!=0){c[f>>2]=531;F=c[f>>2]|0;i=g;return F|0}}}if(0==(Ub(Qg(c[(c[(c[h>>2]|0)+16>>2]|0)+4>>2]|0)|0)|0)){e=17}else{if((c[z>>2]|0)<=1){e=17}else{c[l>>2]=c[c[h>>2]>>2];c[o>>2]=0;c[j>>2]=0;c[y>>2]=Qg(c[(c[(c[h>>2]|0)+16>>2]|0)+4>>2]|0)|0;c[k>>2]=0;F=q;c[F>>2]=0;c[F+4>>2]=0;c[d>>2]=0;c[u>>2]=Ub(c[y>>2]|0)|0;F=c[h>>2]|0;c[v>>2]=c[y>>2];c[j>>2]=cf(F,40904,v)|0;if((c[j>>2]|0)==0){c[f>>2]=7;F=c[f>>2]|0;i=g;return F|0}do{if((c[d>>2]|0)!=0){if((c[d>>2]|0)>100){e=35;break}if((c[d>>2]|0)==1){c[v>>2]=c[j>>2];zc(13,40936,v)}}c[d>>2]=(c[d>>2]|0)+1;Bc(4,t);F=(c[j>>2]|0)+(c[u>>2]|0)|0;a=c[t>>2]&255;c[v>>2]=(c[t>>2]|0)>>>8&16777215;c[v+4>>2]=a;yc(13,F,40952,v)|0;c[s>>2]=op(c[l>>2]|0,c[j>>2]|0,0,w)|0;if((c[s>>2]|0)!=0){break}}while((c[w>>2]|0)!=0);if((e|0)==35){c[v>>2]=c[j>>2];zc(13,40920,v);So(c[l>>2]|0,c[j>>2]|0,0)|0}if((c[s>>2]|0)==0){c[s>>2]=mI(c[l>>2]|0,c[j>>2]|0,k,16406,0)|0}if((c[s>>2]|0)!=0){cc(c[h>>2]|0,c[j>>2]|0);c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[r>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((Ir(c[r>>2]|0)|0)!=0){c[p>>2]=ZI(c[r>>2]|0)|0;if((c[p>>2]|0)!=0){if((c[o>>2]|0)==0){if((_I(c[r>>2]|0)|0)==0){c[o>>2]=1}}E=c[k>>2]|0;b=c[p>>2]|0;F=(Ub(c[p>>2]|0)|0)+1|0;a=q;c[s>>2]=nd(E,b,F,c[a>>2]|0,c[a+4>>2]|0)|0;a=(Ub(c[p>>2]|0)|0)+1|0;F=q;a=dL(c[F>>2]|0,c[F+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;F=q;c[F>>2]=a;c[F+4>>2]=D;if((c[s>>2]|0)!=0){e=52;break}}}c[m>>2]=(c[m>>2]|0)+1}if((e|0)==52){SH(c[k>>2]|0)|0;So(c[l>>2]|0,c[j>>2]|0,0)|0;cc(c[h>>2]|0,c[j>>2]|0);c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}if((c[o>>2]|0)!=0){if(0==((tp(c[k>>2]|0)|0)&1024|0)){F=cp(c[k>>2]|0,2)|0;c[s>>2]=F;if(0!=(F|0)){SH(c[k>>2]|0)|0;So(c[l>>2]|0,c[j>>2]|0,0)|0;cc(c[h>>2]|0,c[j>>2]|0);c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}}}c[m>>2]=0;while(1){if((c[s>>2]|0)!=0){break}if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[n>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((c[n>>2]|0)!=0){c[s>>2]=sd(c[n>>2]|0,c[j>>2]|0)|0}c[m>>2]=(c[m>>2]|0)+1}SH(c[k>>2]|0)|0;if((c[s>>2]|0)!=0){cc(c[h>>2]|0,c[j>>2]|0);c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}c[s>>2]=So(c[l>>2]|0,c[j>>2]|0,1)|0;cc(c[h>>2]|0,c[j>>2]|0);c[j>>2]=0;if((c[s>>2]|0)!=0){c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}Ih();c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[x>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((c[x>>2]|0)!=0){rd(c[x>>2]|0,1)|0}c[m>>2]=(c[m>>2]|0)+1}Jh();YI(c[h>>2]|0)|0}}if((e|0)==17){c[m>>2]=0;while(1){if((c[s>>2]|0)!=0){break}if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[B>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((c[B>>2]|0)!=0){c[s>>2]=sd(c[B>>2]|0,0)|0}c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[s>>2]|0)!=0){break}if((c[m>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}c[A>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+4>>2];if((c[A>>2]|0)!=0){c[s>>2]=rd(c[A>>2]|0,0)|0}c[m>>2]=(c[m>>2]|0)+1}if((c[s>>2]|0)==0){YI(c[h>>2]|0)|0}}c[f>>2]=c[s>>2];F=c[f>>2]|0;i=g;return F|0}function XI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;d=e+24|0;k=e;l=e+4|0;f=e+8|0;g=e+12|0;h=e+16|0;j=e+20|0;c[d>>2]=a;c[k>>2]=b;c[f>>2]=0;c[g>>2]=c[(c[d>>2]|0)+320>>2];c[(c[d>>2]|0)+320>>2]=0;c[l>>2]=0;while(1){if((c[f>>2]|0)!=0){h=8;break}if((c[l>>2]|0)>=(c[(c[d>>2]|0)+296>>2]|0)){h=8;break}c[j>>2]=c[(c[(c[g>>2]|0)+(c[l>>2]<<2)>>2]|0)+8>>2];if((c[j>>2]|0)!=0){a=c[(c[c[j>>2]>>2]|0)+60>>2]|0;c[h>>2]=a;if((a|0)!=0){c[f>>2]=ub[c[h>>2]&63](c[j>>2]|0)|0;lG(c[k>>2]|0,c[j>>2]|0)}}c[l>>2]=(c[l>>2]|0)+1}if((h|0)==8){c[(c[d>>2]|0)+320>>2]=c[g>>2];i=e;return c[f>>2]|0}return 0}function YI(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Kr(c[d>>2]|0,64);i=b;return 0}function ZI(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=aJ(c[c[(c[d>>2]|0)+4>>2]>>2]|0)|0;i=b;return a|0}function _I(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;e=d;b=d+4|0;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+4>>2];Uc(c[f>>2]|0);c[b>>2]=$I(c[c[e>>2]>>2]|0)|0;i=d;return c[b>>2]|0}function $I(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+7>>0]|0|0}function aJ(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+172>>2]|0}function bJ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+12|0;f=e;b=e+4|0;g=e+8|0;c[d>>2]=a;c[b>>2]=(c[d>>2]|0)+72;c[g>>2]=(c[b>>2]|0)+((c[(c[d>>2]|0)+60>>2]|0)*40|0);c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[d>>2]|0)+64>>2]|0)){break}eG(c[c[d>>2]>>2]|0,c[(c[g>>2]|0)+(c[f>>2]<<2)>>2]|0);c[f>>2]=(c[f>>2]|0)+1}NA(c[b>>2]|0,c[(c[d>>2]|0)+60>>2]|0);cc(c[c[c[d>>2]>>2]>>2]|0,c[d>>2]|0);i=e;return}function cJ(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[41080+(c[b>>2]<<2)>>2]|0}function dJ(d,f,g){d=d|0;f=f|0;g=g|0;var j=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;n=i;i=i+64|0;v=n;y=n+56|0;l=n+52|0;m=n+48|0;j=n+44|0;s=n+40|0;r=n+36|0;o=n+60|0;q=n+24|0;u=n+20|0;t=n+16|0;z=n+12|0;A=n+8|0;w=n+28|0;x=n+32|0;c[y>>2]=d;c[l>>2]=f;c[m>>2]=g;c[j>>2]=c[l>>2];do{switch(a[(c[y>>2]|0)+1>>0]|0){case-5:{c[A>>2]=c[(c[y>>2]|0)+16>>2];f=c[m>>2]|0;d=c[l>>2]|0;z=b[c[A>>2]>>1]|0;c[v>>2]=c[(c[A>>2]|0)+24>>2];c[v+4>>2]=z;yc(f,d,41016,v)|0;d=c[j>>2]|0;i=n;return d|0};case-15:{yc(c[m>>2]|0,c[l>>2]|0,41056,v)|0;d=c[j>>2]|0;i=n;return d|0};case-12:{f=c[m>>2]|0;d=c[l>>2]|0;h[k>>3]=+h[c[(c[y>>2]|0)+16>>2]>>3];c[v>>2]=c[k>>2];c[v+4>>2]=c[k+4>>2];yc(f,d,15984,v)|0;d=c[j>>2]|0;i=n;return d|0};case-6:{c[o>>2]=c[(c[y>>2]|0)+16>>2];f=c[m>>2]|0;d=c[l>>2]|0;c[v>>2]=e[(c[o>>2]|0)+6>>1]|0;yc(f,d,40976,v)|0;c[s>>2]=Ub(c[l>>2]|0)|0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(e[(c[o>>2]|0)+6>>1]|0)){break}c[q>>2]=c[(c[o>>2]|0)+20+(c[r>>2]<<2)>>2];if((c[q>>2]|0)!=0){v=c[c[q>>2]>>2]|0}else{v=40984}c[u>>2]=v;c[t>>2]=Ub(c[u>>2]|0)|0;if((c[t>>2]|0)==6){if((XK(c[u>>2]|0,3640,6)|0)==0){c[u>>2]=40992;c[t>>2]=1}}v=c[s>>2]|0;if(((c[s>>2]|0)+(c[t>>2]|0)|0)>((c[m>>2]|0)-6|0)){p=10;break}c[s>>2]=v+1;a[(c[l>>2]|0)+v>>0]=44;if((a[(c[(c[o>>2]|0)+16>>2]|0)+(c[r>>2]|0)>>0]|0)!=0){d=c[s>>2]|0;c[s>>2]=d+1;a[(c[l>>2]|0)+d>>0]=45}fL((c[l>>2]|0)+(c[s>>2]|0)|0,c[u>>2]|0,(c[t>>2]|0)+1|0)|0;c[s>>2]=(c[s>>2]|0)+(c[t>>2]|0);c[r>>2]=(c[r>>2]|0)+1}if((p|0)==10){d=(c[l>>2]|0)+v|0;a[d+0>>0]=a[41e3>>0]|0;a[d+1>>0]=a[41001>>0]|0;a[d+2>>0]=a[41002>>0]|0;a[d+3>>0]=a[41003>>0]|0}d=c[s>>2]|0;c[s>>2]=d+1;a[(c[l>>2]|0)+d>>0]=41;a[(c[l>>2]|0)+(c[s>>2]|0)>>0]=0;d=c[j>>2]|0;i=n;return d|0};case-10:{c[x>>2]=c[(c[(c[y>>2]|0)+16>>2]|0)+8>>2];f=c[m>>2]|0;d=c[l>>2]|0;A=c[c[x>>2]>>2]|0;c[v>>2]=c[x>>2];c[v+4>>2]=A;yc(f,d,41040,v)|0;d=c[j>>2]|0;i=n;return d|0};case-18:{yc(c[m>>2]|0,c[l>>2]|0,41072,v)|0;d=c[j>>2]|0;i=n;return d|0};case-14:{f=c[m>>2]|0;d=c[l>>2]|0;c[v>>2]=c[(c[y>>2]|0)+16>>2];yc(f,d,41024,v)|0;d=c[j>>2]|0;i=n;return d|0};case-8:{c[w>>2]=c[(c[y>>2]|0)+16>>2];o=c[w>>2]|0;if((b[(c[w>>2]|0)+28>>1]&2|0)!=0){c[j>>2]=c[o+4>>2];d=c[j>>2]|0;i=n;return d|0}if((b[o+28>>1]&4|0)!=0){f=c[m>>2]|0;d=c[l>>2]|0;y=(c[w>>2]|0)+16|0;z=c[y+4>>2]|0;A=v;c[A>>2]=c[y>>2];c[A+4>>2]=z;yc(f,d,15992,v)|0;d=c[j>>2]|0;i=n;return d|0}if((b[(c[w>>2]|0)+28>>1]&8|0)!=0){f=c[m>>2]|0;d=c[l>>2]|0;h[k>>3]=+h[(c[w>>2]|0)+8>>3];c[v>>2]=c[k>>2];c[v+4>>2]=c[k+4>>2];yc(f,d,15984,v)|0;d=c[j>>2]|0;i=n;return d|0}if((b[(c[w>>2]|0)+28>>1]&1|0)!=0){yc(c[m>>2]|0,c[l>>2]|0,16376,v)|0;d=c[j>>2]|0;i=n;return d|0}else{c[j>>2]=41032;d=c[j>>2]|0;i=n;return d|0}};case-19:{a[c[l>>2]>>0]=0;d=c[j>>2]|0;i=n;return d|0};case-13:{f=c[m>>2]|0;d=c[l>>2]|0;y=c[(c[y>>2]|0)+16>>2]|0;z=c[y+4>>2]|0;A=v;c[A>>2]=c[y>>2];c[A+4>>2]=z;yc(f,d,15992,v)|0;d=c[j>>2]|0;i=n;return d|0};case-4:{c[z>>2]=c[(c[y>>2]|0)+16>>2];f=c[m>>2]|0;d=c[l>>2]|0;c[v>>2]=c[c[z>>2]>>2];yc(f,d,41008,v)|0;d=c[j>>2]|0;i=n;return d|0};default:{c[j>>2]=c[(c[y>>2]|0)+16>>2];if((c[j>>2]|0)!=0){d=c[j>>2]|0;i=n;return d|0}c[j>>2]=c[l>>2];a[c[l>>2]>>0]=0;d=c[j>>2]|0;i=n;return d|0}}}while(0);return 0}function eJ(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;l=h+4|0;g=h;j=h+10|0;m=h+8|0;k=h+9|0;c[l>>2]=f;c[g>>2]=0;a[j>>0]=0;if((c[(c[l>>2]|0)+24>>2]|0)>1){a[m>>0]=a[c[(c[l>>2]|0)+4>>2]>>0]|0;a[k>>0]=a[(c[(c[l>>2]|0)+4>>2]|0)+1>>0]|0;if((d[m>>0]|0)==254){if((d[k>>0]|0)==255){a[j>>0]=3}}if((d[m>>0]|0)==255){if((d[k>>0]|0)==254){a[j>>0]=2}}}if((a[j>>0]|0)==0){m=c[g>>2]|0;i=h;return m|0}c[g>>2]=ur(c[l>>2]|0)|0;if((c[g>>2]|0)!=0){m=c[g>>2]|0;i=h;return m|0}m=(c[l>>2]|0)+24|0;c[m>>2]=(c[m>>2]|0)-2;gL(c[(c[l>>2]|0)+4>>2]|0,(c[(c[l>>2]|0)+4>>2]|0)+2|0,c[(c[l>>2]|0)+24>>2]|0)|0;a[(c[(c[l>>2]|0)+4>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0)>>0]=0;a[(c[(c[l>>2]|0)+4>>2]|0)+((c[(c[l>>2]|0)+24>>2]|0)+1)>>0]=0;m=(c[l>>2]|0)+28|0;b[m>>1]=e[m>>1]|512;a[(c[l>>2]|0)+30>>0]=a[j>>0]|0;m=c[g>>2]|0;i=h;return m|0}function fJ(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[c[d>>2]>>2];cc(c[e>>2]|0,c[(c[d>>2]|0)+44>>2]|0);c[(c[d>>2]|0)+44>>2]=0;c[(c[d>>2]|0)+20>>2]=0;i=b;return}function gJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;h=f+12|0;g=f;k=f+4|0;j=f+8|0;c[h>>2]=b;c[g>>2]=d;c[k>>2]=e;if((c[g>>2]|0)==0){d=c[h>>2]|0;b=c[g>>2]|0;cc(d,b);i=f;return}c[j>>2]=c[g>>2];while(1){if(!((c[j>>2]|0)>>>0<((c[g>>2]|0)+((c[k>>2]|0)*20|0)|0)>>>0)){break}oF(c[h>>2]|0,a[(c[j>>2]|0)+1>>0]|0,c[(c[j>>2]|0)+16>>2]|0);c[j>>2]=(c[j>>2]|0)+20}d=c[h>>2]|0;b=c[g>>2]|0;cc(d,b);i=f;return}function hJ(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;wh(c[(c[d>>2]|0)+60>>2]|0);c[(c[d>>2]|0)+60>>2]=0;i=b;return}function iJ(b){b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+4>>2];c[h>>2]=c[c[f>>2]>>2];a[(c[g>>2]|0)+19>>0]=0;if((d[(c[f>>2]|0)+8>>0]|0|0)>0){if((c[(c[h>>2]|0)+144>>2]|0)>1){jJ(c[f>>2]|0);a[(c[f>>2]|0)+8>>0]=1;i=e;return}}if((d[(c[f>>2]|0)+8>>0]|0|0)!=0){kJ(c[f>>2]|0);h=(c[g>>2]|0)+40|0;c[h>>2]=(c[h>>2]|0)+ -1;if(0==(c[(c[g>>2]|0)+40>>2]|0)){a[(c[g>>2]|0)+20>>0]=0}}a[(c[f>>2]|0)+8>>0]=0;Hr(c[g>>2]|0);i=e;return}function jJ(d){d=d|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+8|0;h=f;g=f+4|0;c[j>>2]=d;c[h>>2]=c[(c[j>>2]|0)+4>>2];if((c[(c[h>>2]|0)+76>>2]|0)!=(c[j>>2]|0)){i=f;return}c[(c[h>>2]|0)+76>>2]=0;j=(c[h>>2]|0)+22|0;b[j>>1]=(e[j>>1]|0)&-97;c[g>>2]=c[(c[h>>2]|0)+72>>2];while(1){if((c[g>>2]|0)==0){break}a[(c[g>>2]|0)+8>>0]=1;c[g>>2]=c[(c[g>>2]|0)+12>>2]}i=f;return}function kJ(a){a=a|0;var d=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;d=f;h=f+4|0;j=f+8|0;c[g>>2]=a;c[d>>2]=c[(c[g>>2]|0)+4>>2];c[h>>2]=(c[d>>2]|0)+72;while(1){if((c[c[h>>2]>>2]|0)==0){break}c[j>>2]=c[c[h>>2]>>2];a=(c[j>>2]|0)+12|0;if((c[c[j>>2]>>2]|0)!=(c[g>>2]|0)){c[h>>2]=a;continue}c[c[h>>2]>>2]=c[a>>2];if((c[(c[j>>2]|0)+4>>2]|0)==1){continue}oc(c[j>>2]|0)}h=c[d>>2]|0;if((c[(c[d>>2]|0)+76>>2]|0)==(c[g>>2]|0)){c[h+76>>2]=0;a=(c[d>>2]|0)+22|0;b[a>>1]=(e[a>>1]|0)&-97;i=f;return}if((c[h+40>>2]|0)!=2){i=f;return}a=(c[d>>2]|0)+22|0;b[a>>1]=(e[a>>1]|0)&-65;i=f;return}function lJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;d=e+28|0;g=e;f=e+4|0;k=e+8|0;h=e+12|0;j=e+16|0;l=e+20|0;m=e+24|0;c[g>>2]=b;c[f>>2]=0;c[k>>2]=c[c[g>>2]>>2];XG(c[g>>2]|0);do{if((a[(c[g>>2]|0)+18>>0]|0)==0){c[m>>2]=dD(c[g>>2]|0)|0;b=sD(c[g>>2]|0,c[m>>2]|0)|0;if((b|0)!=(c[m>>2]|0)){if((c[m>>2]|0)!=((((c[368]|0)>>>0)/((c[(c[g>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){c[j>>2]=zo((c[(c[(c[g>>2]|0)+12>>2]|0)+56>>2]|0)+36|0)|0;c[h>>2]=WG(c[g>>2]|0,c[m>>2]|0,c[j>>2]|0)|0;if((c[h>>2]|0)>>>0>(c[m>>2]|0)>>>0){c[d>>2]=dq(54371)|0;m=c[d>>2]|0;i=e;return m|0}if((c[h>>2]|0)>>>0<(c[m>>2]|0)>>>0){c[f>>2]=hF(c[g>>2]|0,0,0)|0}c[l>>2]=c[m>>2];while(1){if(!((c[l>>2]|0)>>>0>(c[h>>2]|0)>>>0)){break}if((c[f>>2]|0)!=0){break}c[f>>2]=YG(c[g>>2]|0,c[h>>2]|0,c[l>>2]|0,1)|0;c[l>>2]=(c[l>>2]|0)+ -1}if((c[f>>2]|0)==101|(c[f>>2]|0)==0){if((c[j>>2]|0)>>>0>0){c[f>>2]=ld(c[(c[(c[g>>2]|0)+12>>2]|0)+68>>2]|0)|0;Xq((c[(c[(c[g>>2]|0)+12>>2]|0)+56>>2]|0)+32|0,0);Xq((c[(c[(c[g>>2]|0)+12>>2]|0)+56>>2]|0)+36|0,0);Xq((c[(c[(c[g>>2]|0)+12>>2]|0)+56>>2]|0)+28|0,c[h>>2]|0);a[(c[g>>2]|0)+19>>0]=1;c[(c[g>>2]|0)+44>>2]=c[h>>2]}}if((c[f>>2]|0)==0){break}Mo(c[k>>2]|0)|0;break}}c[d>>2]=dq(54366)|0;m=c[d>>2]|0;i=e;return m|0}}while(0);c[d>>2]=c[f>>2];m=c[d>>2]|0;i=e;return m|0}function mJ(b){b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[g>>2]=b;c[h>>2]=0;b=c[g>>2]|0;if((c[(c[g>>2]|0)+40>>2]|0)!=0){c[f>>2]=c[b+40>>2];b=c[f>>2]|0;i=e;return b|0}if((d[b+16>>0]|0|0)==2){if((d[(c[g>>2]|0)+4>>0]|0|0)!=0){if((d[(c[g>>2]|0)+5>>0]|0|0)==1){a[(c[g>>2]|0)+16>>0]=1;c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}}}c[h>>2]=No(c[g>>2]|0,d[(c[g>>2]|0)+19>>0]|0,1)|0;c[f>>2]=Ho(c[g>>2]|0,c[h>>2]|0)|0;b=c[f>>2]|0;i=e;return b|0}function nJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+12|0;f=e+4|0;h=e+8|0;c[g>>2]=b;c[e>>2]=d;c[f>>2]=0;if((a[(c[g>>2]|0)+18>>0]|0)!=0){b=c[f>>2]|0;i=e;return b|0}if(!((c[(c[g>>2]|0)+24>>2]|0)>>>0>0)){b=c[f>>2]|0;i=e;return b|0}c[f>>2]=ad(c[g>>2]|0,1,h,0)|0;if((c[f>>2]|0)==0){c[f>>2]=ld(c[h>>2]|0)|0}if((c[f>>2]|0)==0){Wq(c[h>>2]|0);a[(c[g>>2]|0)+18>>0]=1}dd(c[h>>2]|0);b=c[f>>2]|0;i=e;return b|0}function oJ(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;l=m+36|0;g=m+28|0;o=m+24|0;j=m+16|0;k=m+20|0;f=m;h=m+8|0;n=m+32|0;c[g>>2]=b;c[o>>2]=e;c[n>>2]=0;if((c[o>>2]|0)!=0){if((d[(c[g>>2]|0)+5>>0]|0)!=4){if((c[c[(c[g>>2]|0)+64>>2]>>2]|0)!=0){a[(c[g>>2]|0)+19>>0]=1;c[k>>2]=0;while(1){if((a[(c[o>>2]|0)+(c[k>>2]|0)>>0]|0)==0){break}c[n>>2]=(c[n>>2]|0)+(a[(c[o>>2]|0)+(c[k>>2]|0)>>0]|0);c[k>>2]=(c[k>>2]|0)+1}if((a[(c[g>>2]|0)+8>>0]|0)!=0){e=Gp(c[g>>2]|0)|0;b=(c[g>>2]|0)+72|0;c[b>>2]=e;c[b+4>>2]=D}p=(c[g>>2]|0)+72|0;e=c[p+4>>2]|0;b=f;c[b>>2]=c[p>>2];c[b+4>>2]=e;b=f;b=ir(c[(c[g>>2]|0)+64>>2]|0,c[b>>2]|0,c[b+4>>2]|0,((c[368]|0)/(c[(c[g>>2]|0)+152>>2]|0)|0)+1|0)|0;c[j>>2]=b;if(0==(b|0)){e=c[(c[g>>2]|0)+64>>2]|0;o=c[o>>2]|0;b=c[k>>2]|0;p=f;p=dL(c[p>>2]|0,c[p+4>>2]|0,4,0)|0;p=nd(e,o,b,p,D)|0;c[j>>2]=p;if(0==(p|0)){b=c[(c[g>>2]|0)+64>>2]|0;o=f;o=dL(c[o>>2]|0,c[o+4>>2]|0,4,0)|0;p=c[k>>2]|0;p=dL(o|0,D|0,p|0,((p|0)<0)<<31>>31|0)|0;p=ir(b,p,D,c[k>>2]|0)|0;c[j>>2]=p;if(0==(p|0)){b=c[(c[g>>2]|0)+64>>2]|0;o=f;o=dL(c[o>>2]|0,c[o+4>>2]|0,4,0)|0;p=c[k>>2]|0;p=dL(o|0,D|0,p|0,((p|0)<0)<<31>>31|0)|0;p=dL(p|0,D|0,4,0)|0;p=ir(b,p,D,c[n>>2]|0)|0;c[j>>2]=p;if(0==(p|0)){b=c[(c[g>>2]|0)+64>>2]|0;o=f;o=dL(c[o>>2]|0,c[o+4>>2]|0,4,0)|0;p=c[k>>2]|0;p=dL(o|0,D|0,p|0,((p|0)<0)<<31>>31|0)|0;p=dL(p|0,D|0,8,0)|0;p=nd(b,10992,8,p,D)|0;c[j>>2]=p;if(0==(p|0)){b=(c[k>>2]|0)+20|0;p=(c[g>>2]|0)+72|0;o=p;b=dL(c[o>>2]|0,c[o+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;c[p>>2]=b;c[p+4>>2]=D;p=dh(c[(c[g>>2]|0)+64>>2]|0,h)|0;c[j>>2]=p;if(0==(p|0)){b=h;n=c[b+4>>2]|0;p=(c[g>>2]|0)+72|0;o=c[p+4>>2]|0;if((n|0)>(o|0)|((n|0)==(o|0)?(c[b>>2]|0)>>>0>(c[p>>2]|0)>>>0:0)){p=(c[g>>2]|0)+72|0;c[j>>2]=Qo(c[(c[g>>2]|0)+64>>2]|0,c[p>>2]|0,c[p+4>>2]|0)|0}}c[l>>2]=c[j>>2];p=c[l>>2]|0;i=m;return p|0}}}}}c[l>>2]=c[j>>2];p=c[l>>2]|0;i=m;return p|0}}}c[l>>2]=0;p=c[l>>2]|0;i=m;return p|0}function pJ(a){a=a|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+48|0;h=l+32|0;k=l+28|0;f=l+8|0;j=l+12|0;p=l+16|0;n=l+20|0;o=l+24|0;m=l;c[k>>2]=a;c[f>>2]=c[(c[k>>2]|0)+16>>2];c[j>>2]=0;if((d[(c[f>>2]|0)+16>>0]|0|0)==2){c[j>>2]=qJ(c[f>>2]|0)|0;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];a=c[h>>2]|0;i=l;return a|0}}Cp(c[k>>2]|0);c[p>>2]=rJ(c[f>>2]|0,c[k>>2]|0)|0;if((c[p>>2]|0)!=0){if((c[(c[f>>2]|0)+96>>2]|0)!=0){if((Qq(c[k>>2]|0)|0)!=0){g=7}}}else{g=7}if((g|0)==7){do{if((c[p>>2]|0)==0){if((Uo(c[f>>2]|0)|0)==0){if((c[(c[k>>2]|0)+20>>2]|0)>>>0<=(c[(c[f>>2]|0)+28>>2]|0)>>>0){if((c[c[(c[f>>2]|0)+64>>2]>>2]|0)!=0){g=(c[f>>2]|0)+72|0;p=c[g+4>>2]|0;a=m;c[a>>2]=c[g>>2];c[a+4>>2]=p;c[o>>2]=c[(c[k>>2]|0)+4>>2];c[n>>2]=zp(c[f>>2]|0,c[o>>2]|0)|0;a=(c[k>>2]|0)+24|0;b[a>>1]=e[a>>1]|0|4;a=m;c[j>>2]=ir(c[(c[f>>2]|0)+64>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[(c[k>>2]|0)+20>>2]|0)|0;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];a=c[h>>2]|0;i=l;return a|0}g=c[(c[f>>2]|0)+64>>2]|0;o=c[o>>2]|0;p=c[(c[f>>2]|0)+152>>2]|0;a=m;a=dL(c[a>>2]|0,c[a+4>>2]|0,4,0)|0;c[j>>2]=nd(g,o,p,a,D)|0;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];a=c[h>>2]|0;i=l;return a|0}p=c[(c[f>>2]|0)+64>>2]|0;o=m;a=c[(c[f>>2]|0)+152>>2]|0;a=dL(c[o>>2]|0,c[o+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;a=dL(a|0,D|0,4,0)|0;c[j>>2]=ir(p,a,D,c[n>>2]|0)|0;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];a=c[h>>2]|0;i=l;return a|0}p=8+(c[(c[f>>2]|0)+152>>2]|0)|0;a=(c[f>>2]|0)+72|0;o=a;p=dL(c[o>>2]|0,c[o+4>>2]|0,p|0,((p|0)<0)<<31>>31|0)|0;c[a>>2]=p;c[a+4>>2]=D;a=(c[f>>2]|0)+44|0;c[a>>2]=(c[a>>2]|0)+1;c[j>>2]=sh(c[(c[f>>2]|0)+56>>2]|0,c[(c[k>>2]|0)+20>>2]|0)|0;a=jr(c[f>>2]|0,c[(c[k>>2]|0)+20>>2]|0)|0;c[j>>2]=c[j>>2]|a;if((c[j>>2]|0)==0){break}c[h>>2]=c[j>>2];a=c[h>>2]|0;i=l;return a|0}}if((d[(c[f>>2]|0)+16>>0]|0|0)!=4){a=(c[k>>2]|0)+24|0;b[a>>1]=e[a>>1]|0|4}}}}while(0);if((c[(c[f>>2]|0)+96>>2]|0)>0){if((Qq(c[k>>2]|0)|0)!=0){c[j>>2]=Rq(c[k>>2]|0)|0}}}if((c[(c[f>>2]|0)+24>>2]|0)>>>0<(c[(c[k>>2]|0)+20>>2]|0)>>>0){c[(c[f>>2]|0)+24>>2]=c[(c[k>>2]|0)+20>>2]}c[h>>2]=c[j>>2];a=c[h>>2]|0;i=l;return a|0}function qJ(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;h=e;g=e+4|0;j=e+8|0;k=e+12|0;c[h>>2]=b;c[g>>2]=0;c[j>>2]=c[c[h>>2]>>2];b=c[h>>2]|0;if((c[(c[h>>2]|0)+40>>2]|0)!=0){c[f>>2]=c[b+40>>2];b=c[f>>2]|0;i=e;return b|0}if((Uo(b)|0)==0){if((d[(c[h>>2]|0)+5>>0]|0|0)!=2){b=rh(c[(c[h>>2]|0)+24>>2]|0)|0;c[(c[h>>2]|0)+56>>2]=b;if((c[(c[h>>2]|0)+56>>2]|0)==0){c[f>>2]=7;b=c[f>>2]|0;i=e;return b|0}do{if((c[c[(c[h>>2]|0)+64>>2]>>2]|0)==0){b=c[h>>2]|0;if((d[(c[h>>2]|0)+5>>0]|0|0)==4){jp(c[b+64>>2]|0);break}c[k>>2]=6|((d[b+12>>0]|0|0)!=0?4104:2048);c[g>>2]=sJ(c[h>>2]|0)|0;if((c[g>>2]|0)==0){c[g>>2]=wp(c[j>>2]|0,c[(c[h>>2]|0)+172>>2]|0,c[(c[h>>2]|0)+64>>2]|0,c[k>>2]|0,0)|0}}}while(0);if((c[g>>2]|0)==0){c[(c[h>>2]|0)+44>>2]=0;b=(c[h>>2]|0)+72|0;c[b>>2]=0;c[b+4>>2]=0;a[(c[h>>2]|0)+19>>0]=0;b=(c[h>>2]|0)+80|0;c[b>>2]=0;c[b+4>>2]=0;c[g>>2]=Zq(c[h>>2]|0)|0}}}j=c[h>>2]|0;if((c[g>>2]|0)!=0){wh(c[j+56>>2]|0);c[(c[h>>2]|0)+56>>2]=0}else{a[j+16>>0]=3}c[f>>2]=c[g>>2];b=c[f>>2]|0;i=e;return b|0}function rJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=uh(c[(c[f>>2]|0)+56>>2]|0,c[(c[e>>2]|0)+20>>2]|0)|0;i=d;return a|0}function sJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d;g=d+4|0;h=d+8|0;c[f>>2]=b;c[g>>2]=0;if((a[(c[f>>2]|0)+12>>0]|0)!=0){c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}if((c[(c[f>>2]|0)+24>>2]|0)==0){c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}c[h>>2]=Hg(c[(c[f>>2]|0)+60>>2]|0,20,g)|0;if((c[h>>2]|0)==12){c[h>>2]=0}else{if((c[h>>2]|0)==0){if((c[g>>2]|0)!=0){c[h>>2]=1032}}}c[e>>2]=c[h>>2];h=c[e>>2]|0;i=d;return h|0}function tJ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=i;i=i+32|0;h=g+12|0;c[g+16>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;c[g+8>>2]=e;c[h>>2]=f;c[c[h>>2]>>2]=0;i=g;return 0}function uJ(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;m=h+20|0;l=h;n=h+4|0;k=h+8|0;o=h+12|0;j=h+16|0;c[l>>2]=a;c[n>>2]=d;c[k>>2]=f;c[o>>2]=g;g=c[l>>2]|0;do{if((c[(c[l>>2]|0)+136>>2]|0)!=0){a=c[g+136>>2]|0;c[j>>2]=a;c[c[o>>2]>>2]=a;c[(c[l>>2]|0)+136>>2]=c[(c[j>>2]|0)+12>>2];c[(c[j>>2]|0)+12>>2]=0;aL(c[(c[j>>2]|0)+8>>2]|0,0,e[(c[l>>2]|0)+140>>1]|0|0)|0}else{a=Sc(40+(e[g+140>>1]|0)|0)|0;c[j>>2]=a;c[c[o>>2]>>2]=a;if((c[j>>2]|0)!=0){c[(c[j>>2]|0)+8>>2]=(c[j>>2]|0)+40;b[(c[j>>2]|0)+24>>1]=64;b[(c[j>>2]|0)+26>>1]=1;c[(c[j>>2]|0)+16>>2]=c[l>>2];break}d=c[(c[l>>2]|0)+60>>2]|0;a=c[(c[l>>2]|0)+152>>2]|0;a=nL((c[n>>2]|0)-1|0,0,a|0,((a|0)<0)<<31>>31|0)|0;aq(d,a,D,c[k>>2]|0)|0;c[m>>2]=7;a=c[m>>2]|0;i=h;return a|0}}while(0);c[(c[j>>2]|0)+20>>2]=c[n>>2];c[(c[j>>2]|0)+4>>2]=c[k>>2];a=(c[l>>2]|0)+120|0;c[a>>2]=(c[a>>2]|0)+1;c[m>>2]=0;a=c[m>>2]|0;i=h;return a|0}function vJ(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+48|0;g=k+40|0;j=k+36|0;r=k+32|0;h=k+28|0;l=k+24|0;s=k+20|0;m=k+8|0;q=k+4|0;n=k;p=k+16|0;c[j>>2]=f;c[s>>2]=0;c[r>>2]=nH(c[c[j>>2]>>2]|0)|0;if((c[r>>2]|0)!=0){c[g>>2]=c[r>>2];f=c[g>>2]|0;i=k;return f|0}c[r>>2]=eD(c[j>>2]|0,1,h,0)|0;if((c[r>>2]|0)!=0){c[g>>2]=c[r>>2];f=c[g>>2]|0;i=k;return f|0}f=zo((c[(c[h>>2]|0)+56>>2]|0)+28|0)|0;c[k+12>>2]=f;c[l>>2]=f;kd(c[c[j>>2]>>2]|0,s);if((c[l>>2]|0)==0){o=7}else{if((XK((c[(c[h>>2]|0)+56>>2]|0)+24|0,(c[(c[h>>2]|0)+56>>2]|0)+92|0,4)|0)!=0){o=7}}if((o|0)==7){c[l>>2]=c[s>>2]}a:do{if((c[l>>2]|0)>0){c[n>>2]=c[(c[h>>2]|0)+56>>2];c[r>>2]=26;b:do{if((XK(c[n>>2]|0,40888,16)|0)==0){if((d[(c[n>>2]|0)+18>>0]|0|0)>2){f=(c[j>>2]|0)+22|0;b[f>>1]=e[f>>1]|0|1}if((d[(c[n>>2]|0)+19>>0]|0|0)<=2){do{if((d[(c[n>>2]|0)+19>>0]|0|0)==2){if((b[(c[j>>2]|0)+22>>1]&16|0)==0){c[p>>2]=0;c[r>>2]=uH(c[c[j>>2]>>2]|0,p)|0;if((c[r>>2]|0)!=0){break b}if((c[p>>2]|0)!=0){c[r>>2]=26;break}Gr(c[h>>2]|0);c[g>>2]=0;f=c[g>>2]|0;i=k;return f|0}}}while(0);if((XK((c[n>>2]|0)+21|0,43600,3)|0)==0){c[m>>2]=(d[(c[n>>2]|0)+16>>0]|0)<<8|(d[(c[n>>2]|0)+17>>0]|0)<<16;if(!(((c[m>>2]|0)>>>0>65536?1:((c[m>>2]|0)-1&c[m>>2]|0)!=0)|(c[m>>2]|0)>>>0<=256)){c[q>>2]=(c[m>>2]|0)-(d[(c[n>>2]|0)+20>>0]|0);if((c[m>>2]|0)!=(c[(c[j>>2]|0)+32>>2]|0)){Gr(c[h>>2]|0);c[(c[j>>2]|0)+36>>2]=c[q>>2];c[(c[j>>2]|0)+32>>2]=c[m>>2];ah(c[j>>2]|0);c[r>>2]=bh(c[c[j>>2]>>2]|0,(c[j>>2]|0)+32|0,(c[m>>2]|0)-(c[q>>2]|0)|0)|0;c[g>>2]=c[r>>2];f=c[g>>2]|0;i=k;return f|0}if((c[(c[(c[j>>2]|0)+4>>2]|0)+24>>2]&65536|0)==0){if((c[l>>2]|0)>(c[s>>2]|0)){c[r>>2]=dq(53650)|0;break}}if(!((c[q>>2]|0)>>>0<480)){c[(c[j>>2]|0)+32>>2]=c[m>>2];c[(c[j>>2]|0)+36>>2]=c[q>>2];f=(zo((c[n>>2]|0)+52|0)|0)!=0;a[(c[j>>2]|0)+17>>0]=f?1:0;f=(zo((c[n>>2]|0)+64|0)|0)!=0;a[(c[j>>2]|0)+18>>0]=f?1:0;break a}}}}}}while(0);Gr(c[h>>2]|0);c[(c[j>>2]|0)+12>>2]=0;c[g>>2]=c[r>>2];f=c[g>>2]|0;i=k;return f|0}}while(0);b[(c[j>>2]|0)+24>>1]=(((c[(c[j>>2]|0)+36>>2]|0)-12<<6>>>0)/255|0)-23;b[(c[j>>2]|0)+26>>1]=(((c[(c[j>>2]|0)+36>>2]|0)-12<<5>>>0)/255|0)-23;b[(c[j>>2]|0)+28>>1]=(c[(c[j>>2]|0)+36>>2]|0)-35;b[(c[j>>2]|0)+30>>1]=(((c[(c[j>>2]|0)+36>>2]|0)-12<<5>>>0)/255|0)-23;m=c[j>>2]|0;if((e[(c[j>>2]|0)+24>>1]|0|0)>127){a[m+21>>0]=127}else{a[(c[j>>2]|0)+21>>0]=b[m+24>>1]}c[(c[j>>2]|0)+12>>2]=c[h>>2];c[(c[j>>2]|0)+44>>2]=c[l>>2];c[g>>2]=0;f=c[g>>2]|0;i=k;return f|0}function wJ(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;j=g;l=g+4|0;m=g+8|0;k=g+12|0;c[j>>2]=b;c[l>>2]=e;c[m>>2]=f;c[k>>2]=0;if((c[(c[j>>2]|0)+40>>2]|0)!=0){c[h>>2]=c[(c[j>>2]|0)+40>>2];b=c[h>>2]|0;i=g;return b|0}a[(c[j>>2]|0)+21>>0]=c[m>>2];if((d[(c[j>>2]|0)+16>>0]|0|0)==1){b=(Uo(c[j>>2]|0)|0)!=0;f=c[j>>2]|0;if(b){do{if((d[f+4>>0]|0|0)!=0){if((Xo(c[(c[j>>2]|0)+208>>2]|0,-1)|0)!=0){c[k>>2]=ar(c[j>>2]|0,4)|0;if((c[k>>2]|0)==0){Xo(c[(c[j>>2]|0)+208>>2]|0,1)|0;break}c[h>>2]=c[k>>2];b=c[h>>2]|0;i=g;return b|0}}}while(0);c[k>>2]=xJ(c[(c[j>>2]|0)+208>>2]|0)|0}else{c[k>>2]=ar(f,2)|0;if((c[k>>2]|0)==0){if((c[l>>2]|0)!=0){c[k>>2]=$q(c[j>>2]|0,4)|0}}}if((c[k>>2]|0)==0){a[(c[j>>2]|0)+16>>0]=2;c[(c[j>>2]|0)+36>>2]=c[(c[j>>2]|0)+24>>2];c[(c[j>>2]|0)+32>>2]=c[(c[j>>2]|0)+24>>2];c[(c[j>>2]|0)+28>>2]=c[(c[j>>2]|0)+24>>2];b=(c[j>>2]|0)+72|0;c[b>>2]=0;c[b+4>>2]=0}}c[h>>2]=c[k>>2];b=c[h>>2]|0;i=g;return b|0}function xJ(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;c[g>>2]=b;if((a[(c[g>>2]|0)+46>>0]|0)!=0){c[e>>2]=8;g=c[e>>2]|0;i=d;return g|0}c[f>>2]=oq(c[g>>2]|0,0,1)|0;if((c[f>>2]|0)!=0){c[e>>2]=c[f>>2];g=c[e>>2]|0;i=d;return g|0}a[(c[g>>2]|0)+44>>0]=1;b=(c[g>>2]|0)+52|0;if((XK(b,fq(c[g>>2]|0)|0,48)|0)!=0){bp(c[g>>2]|0,0,1);a[(c[g>>2]|0)+44>>0]=0;c[f>>2]=517}c[e>>2]=c[f>>2];g=c[e>>2]|0;i=d;return g|0}function yJ(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;be(c[d>>2]|0);i=b;return}function zJ(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 43608}function AJ(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+8|0;d=b;f=b+4|0;c[e>>2]=a;c[d>>2]=0;if((c[e>>2]|0)==0){f=c[d>>2]|0;i=b;return f|0}c[f>>2]=c[e>>2];HJ(c[e>>2]|0,0)|0;oc(c[(c[f>>2]|0)+24>>2]|0);c[d>>2]=oK(c[e>>2]|0)|0;f=c[d>>2]|0;i=b;return f|0}function BJ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;h=l+28|0;o=l+16|0;k=l+8|0;m=l+12|0;n=l;j=l+20|0;g=l+24|0;c[o>>2]=a;c[k>>2]=b;c[m>>2]=d;a=n;c[a>>2]=e;c[a+4>>2]=f;c[j>>2]=c[o>>2];a=n;c[g>>2]=nK(c[j>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;if((c[g>>2]|0)==(c[m>>2]|0)){c[h>>2]=0;o=c[h>>2]|0;i=l;return o|0}if((c[g>>2]|0)<0){c[h>>2]=266;o=c[h>>2]|0;i=l;return o|0}else{c[(c[j>>2]|0)+20>>2]=0;aL((c[k>>2]|0)+(c[g>>2]|0)|0,0,(c[m>>2]|0)-(c[g>>2]|0)|0)|0;c[h>>2]=522;o=c[h>>2]|0;i=l;return o|0}return 0}function CJ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;m=h+28|0;o=h+16|0;n=h+8|0;l=h+12|0;g=h;j=h+20|0;k=h+24|0;c[o>>2]=a;c[n>>2]=b;c[l>>2]=d;a=g;c[a>>2]=e;c[a+4>>2]=f;c[j>>2]=c[o>>2];c[k>>2]=0;while(1){if((c[l>>2]|0)<=0){break}o=g;o=kK(c[j>>2]|0,c[o>>2]|0,c[o+4>>2]|0,c[n>>2]|0,c[l>>2]|0)|0;c[k>>2]=o;if((o|0)<=0){break}c[l>>2]=(c[l>>2]|0)-(c[k>>2]|0);a=c[k>>2]|0;o=g;a=dL(c[o>>2]|0,c[o+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;o=g;c[o>>2]=a;c[o+4>>2]=D;c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0)}if((c[l>>2]|0)<=0){c[m>>2]=0;o=c[m>>2]|0;i=h;return o|0}if((c[k>>2]|0)<0){if((c[(c[j>>2]|0)+20>>2]|0)!=28){c[m>>2]=778;o=c[m>>2]|0;i=h;return o|0}}c[(c[j>>2]|0)+20>>2]=0;c[m>>2]=13;o=c[m>>2]|0;i=h;return o|0} + + + +function wF(f){f=f|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+5e3|0;c[(j+1328|0)>>2]=f;c[(j+1324|0)>>2]=0;c[(j+1320|0)>>2]=c[(c[(j+1328|0)>>2]|0)+4>>2];c[(j+1312|0)>>2]=0;c[(j+1308|0)>>2]=c[c[(j+1328|0)>>2]>>2];a[(j+1580|0)>>0]=0;a[(j+1581|0)>>0]=a[(c[(c[(c[(j+1308|0)>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;c[(j+1304|0)>>2]=0;c[(j+1300|0)>>2]=0;c[(j+1296|0)>>2]=0;c[(j+1292|0)>>2]=c[(c[(j+1328|0)>>2]|0)+8>>2];c[(j+1288|0)>>2]=0;c[(j+1284|0)>>2]=0;c[(j+1280|0)>>2]=0;c[(j+1276|0)>>2]=0;c[(j+1272|0)>>2]=0;p=(c[(j+1308|0)>>2]|0)+32|0;f=c[p+4>>2]|0;c[(j+88|0)>>2]=c[p>>2];c[(j+88|0)+4>>2]=f;a:do{f=1;if(f){f=0;if((c[(c[(j+1328|0)>>2]|0)+80>>2]|0)==7){m=900}else{f=1}}if(f){if(1){c[(c[(j+1328|0)>>2]|0)+80>>2]=0;p=(c[(j+1328|0)>>2]|0)+136|0;c[p>>2]=0;c[p+4>>2]=0;c[(c[(j+1328|0)>>2]|0)+20>>2]=0;c[(c[(j+1308|0)>>2]|0)+444>>2]=0;b:do{if((c[(c[(j+1308|0)>>2]|0)+232>>2]|0)==0){do{if((c[(c[(j+1308|0)>>2]|0)+284>>2]|0)!=0){c[(j+1296|0)>>2]=c[(c[(j+1328|0)>>2]|0)+124>>2];f=c[(c[(j+1308|0)>>2]|0)+292>>2]|0;if((c[(j+1296|0)>>2]|0)==0){c[(j+1296|0)>>2]=f;break}else{c[(j+1296|0)>>2]=((c[(j+1296|0)>>2]|0)>>>0)%(f>>>0)|0;break}}}while(0);c[(j+1324|0)>>2]=c[(c[(j+1328|0)>>2]|0)+76>>2];c:while(1){if((c[(j+1312|0)>>2]|0)!=0){break a}if((a[(c[(j+1308|0)>>2]|0)+64>>0]|0)!=0){m=900;break a}c[(j+1300|0)>>2]=(c[(j+1300|0)>>2]|0)+1;c[(j+1316|0)>>2]=(c[(j+1320|0)>>2]|0)+((c[(j+1324|0)>>2]|0)*20|0);if((a[(c[(j+1316|0)>>2]|0)+2>>0]&2|0)!=0){c[(j+1276|0)>>2]=(c[(j+1292|0)>>2]|0)+((c[(c[(j+1316|0)>>2]|0)+8>>2]|0)*40|0);if((b[(c[(j+1276|0)>>2]|0)+28>>1]&9312|0)!=0){te(c[(j+1276|0)>>2]|0)}b[(c[(j+1276|0)>>2]|0)+28>>1]=4}d:do{n=1;f=d[c[(j+1316|0)>>2]>>0]|0;if(n){n=0;switch(f|0){case 66:case 65:case 64:{c[(j+1400|0)>>2]=c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(j+1280|0)>>2]=(c[(j+1292|0)>>2]|0)+((c[(c[(j+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(j+1472|0)>>2]=0;o=c[(c[(j+1400|0)>>2]|0)+8>>2]|0;if((c[(c[(j+1316|0)>>2]|0)+16>>2]|0)>0){c[(j+700|0)>>2]=o;b[(j+700|0)+4>>1]=c[(c[(j+1316|0)>>2]|0)+16>>2];c[(j+700|0)+8>>2]=c[(j+1280|0)>>2];c[(j+1524|0)>>2]=0;while(1){if((c[(j+1524|0)>>2]|0)>=(e[(j+700|0)+4>>1]|0)){break}if((b[(c[(j+700|0)+8>>2]|0)+((c[(j+1524|0)>>2]|0)*40|0)+28>>1]&16384|0)!=0){Id((c[(j+700|0)+8>>2]|0)+((c[(j+1524|0)>>2]|0)*40|0)|0)|0}c[(j+1524|0)>>2]=(c[(j+1524|0)>>2]|0)+1}c[(j+1332|0)>>2]=j+700|0}else{c[(j+1332|0)>>2]=hD(o,j+1584|0,191,j+1472|0)|0;if((c[(j+1332|0)>>2]|0)==0){m=900;break a}iD(c[(c[(j+1400|0)>>2]|0)+8>>2]|0,c[(c[(j+1280|0)>>2]|0)+24>>2]|0,c[(c[(j+1280|0)>>2]|0)+4>>2]|0,c[(j+1332|0)>>2]|0)}a[(c[(j+1332|0)>>2]|0)+6>>0]=0;e:do{if((d[c[(j+1316|0)>>2]>>0]|0)==64){c[(j+1524|0)>>2]=0;while(1){if((c[(j+1524|0)>>2]|0)>=(e[(j+700|0)+4>>1]|0)){break e}if((b[(c[(j+700|0)+8>>2]|0)+((c[(j+1524|0)>>2]|0)*40|0)+28>>1]&1|0)!=0){break}c[(j+1524|0)>>2]=(c[(j+1524|0)>>2]|0)+1}c[(j+1324|0)>>2]=(c[(c[(j+1316|0)>>2]|0)+8>>2]|0)-1}}while(0);c[(j+1312|0)>>2]=jD(c[c[(j+1400|0)>>2]>>2]|0,c[(j+1332|0)>>2]|0,0,0,0,j+1464|0)|0;if((c[(c[(j+1316|0)>>2]|0)+16>>2]|0)==0){cc(c[(j+1308|0)>>2]|0,c[(j+1472|0)>>2]|0)}if((c[(j+1312|0)>>2]|0)==0){c[(c[(j+1400|0)>>2]|0)+12>>2]=c[(j+1464|0)>>2];c[(j+1532|0)>>2]=(c[(j+1464|0)>>2]|0)==0&1;a[(c[(j+1400|0)>>2]|0)+25>>0]=1-(c[(j+1532|0)>>2]|0);a[(c[(j+1400|0)>>2]|0)+27>>0]=0;c[(c[(j+1400|0)>>2]|0)+68>>2]=0;f=(c[(j+1532|0)>>2]|0)!=0;if((d[c[(j+1316|0)>>2]>>0]|0)==66){if(!f){break d}c[(j+1324|0)>>2]=(c[(c[(j+1316|0)>>2]|0)+8>>2]|0)-1;break d}else{if(f){break d}c[(j+1324|0)>>2]=(c[(c[(j+1316|0)>>2]|0)+8>>2]|0)-1;break d}}break};case 63:{c[(j+1476|0)>>2]=c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2];a[(c[(j+1476|0)>>2]|0)+25>>0]=0;c[(j+1284|0)>>2]=(c[(j+1292|0)>>2]|0)+((c[(c[(j+1316|0)>>2]|0)+8>>2]|0)*40|0);o=Pd(c[(j+1284|0)>>2]|0)|0;p=(c[(j+1476|0)>>2]|0)+48|0;c[p>>2]=o;c[p+4>>2]=D;a[(c[(j+1476|0)>>2]|0)+26>>0]=0;a[(c[(j+1476|0)>>2]|0)+27>>0]=1;break};case 58:{eG(c[(j+1328|0)>>2]|0,c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2]|0);c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2]=0;break};case 62:case 61:case 60:case 59:{c[(j+1460|0)>>2]=c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(j+1456|0)>>2]=d[c[(j+1316|0)>>2]>>0]|0;a[(c[(j+1460|0)>>2]|0)+25>>0]=0;o=c[(j+1316|0)>>2]|0;if(((d[(c[(j+1460|0)>>2]|0)+28>>0]|0)>>>2&1|0)!=0){c[(j+1280|0)>>2]=(c[(j+1292|0)>>2]|0)+((c[o+12>>2]|0)*40|0);Ze(c[(j+1280|0)>>2]|0);p=Pd(c[(j+1280|0)>>2]|0)|0;c[(j+408|0)>>2]=p;c[(j+408|0)+4>>2]=D;a[(c[(j+1460|0)>>2]|0)+26>>0]=0;do{if((b[(c[(j+1280|0)>>2]|0)+28>>1]&4|0)==0){if((b[(c[(j+1280|0)>>2]|0)+28>>1]&8|0)==0){c[(j+1324|0)>>2]=(c[(c[(j+1316|0)>>2]|0)+8>>2]|0)-1;break d}if(+h[(c[(j+1280|0)>>2]|0)+8>>3]<+((c[(j+408|0)>>2]|0)>>>0)+4294967296.0*+(c[(j+408|0)+4>>2]|0)){if((c[(j+1456|0)>>2]&1|0)!=0){break}c[(j+1456|0)>>2]=(c[(j+1456|0)>>2]|0)+ -1;break}if(+h[(c[(j+1280|0)>>2]|0)+8>>3]>+((c[(j+408|0)>>2]|0)>>>0)+4294967296.0*+(c[(j+408|0)+4>>2]|0)){if((c[(j+1456|0)>>2]&1|0)==1){c[(j+1456|0)>>2]=(c[(j+1456|0)>>2]|0)+1}}}}while(0);c[(j+1312|0)>>2]=jD(c[c[(j+1460|0)>>2]>>2]|0,0,c[(j+408|0)>>2]|0,c[(j+408|0)+4>>2]|0,0,j+1452|0)|0;if((c[(j+1312|0)>>2]|0)!=0){break c}if((c[(j+1452|0)>>2]|0)==0){a[(c[(j+1460|0)>>2]|0)+26>>0]=1;o=c[(j+408|0)+4>>2]|0;p=(c[(j+1460|0)>>2]|0)+56|0;c[p>>2]=c[(j+408|0)>>2];c[p+4>>2]=o}}else{c[(j+1380|0)>>2]=c[o+16>>2];c[(j+1360|0)>>2]=c[(c[(j+1460|0)>>2]|0)+8>>2];b[(j+1360|0)+4>>1]=c[(j+1380|0)>>2];a[(j+1360|0)+6>>0]=(1&(c[(j+1456|0)>>2]|0)-59|0)!=0?-1:1;c[(j+1360|0)+8>>2]=(c[(j+1292|0)>>2]|0)+((c[(c[(j+1316|0)>>2]|0)+12>>2]|0)*40|0);if((b[(c[(j+1360|0)+8>>2]|0)+28>>1]&16384|0)!=0){Id(c[(j+1360|0)+8>>2]|0)|0}c[(j+1312|0)>>2]=jD(c[c[(j+1460|0)>>2]>>2]|0,j+1360|0,0,0,0,j+1452|0)|0;if((c[(j+1312|0)>>2]|0)!=0){break c}a[(c[(j+1460|0)>>2]|0)+26>>0]=0}a[(c[(j+1460|0)>>2]|0)+27>>0]=0;c[(c[(j+1460|0)>>2]|0)+68>>2]=0;o=c[(j+1452|0)>>2]|0;f:do{if((c[(j+1456|0)>>2]|0)>=61){do{if((o|0)>=0){if((c[(j+1452|0)>>2]|0)==0){if((c[(j+1456|0)>>2]|0)==62){break}}c[(j+1452|0)>>2]=0;break f}}while(0);c[(j+1452|0)>>2]=0;c[(j+1312|0)>>2]=YC(c[c[(j+1460|0)>>2]>>2]|0,j+1452|0)|0;if((c[(j+1312|0)>>2]|0)!=0){break c}a[(c[(j+1460|0)>>2]|0)+26>>0]=0}else{do{if((o|0)<=0){if((c[(j+1452|0)>>2]|0)==0){if((c[(j+1456|0)>>2]|0)==59){break}}c[(j+1452|0)>>2]=fG(c[c[(j+1460|0)>>2]>>2]|0)|0;break f}}while(0);c[(j+1452|0)>>2]=0;c[(j+1312|0)>>2]=ZC(c[c[(j+1460|0)>>2]>>2]|0,j+1452|0)|0;if((c[(j+1312|0)>>2]|0)!=0){break c}a[(c[(j+1460|0)>>2]|0)+26>>0]=0}}while(0);if((c[(j+1452|0)>>2]|0)!=0){c[(j+1324|0)>>2]=(c[(c[(j+1316|0)>>2]|0)+8>>2]|0)-1}break};case 69:{c[(j+432|0)>>2]=0;c[(j+432|0)+4>>2]=0;c[(j+748|0)>>2]=0;c[(j+744|0)>>2]=c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2];if((c[c[(j+744|0)>>2]>>2]|0)!=0){do{if(((d[(c[(j+744|0)>>2]|0)+28>>0]|0)>>>1&1|0)==0){c[(j+1312|0)>>2]=gG(c[c[(j+744|0)>>2]>>2]|0,j+748|0)|0;if((c[(j+1312|0)>>2]|0)!=0){break c}if((c[(j+748|0)>>2]|0)!=0){c[(j+432|0)>>2]=1;c[(j+432|0)+4>>2]=0;break}c[(j+1312|0)>>2]=kF(c[c[(j+744|0)>>2]>>2]|0,j+432|0)|0;p=c[(j+432|0)+4>>2]|0;if((p|0)>2147483647|(p|0)==2147483647&(c[(j+432|0)>>2]|0)>>>0>=4294967295){p=(c[(j+744|0)>>2]|0)+28|0;a[p>>0]=a[p>>0]&-3|2;break}else{p=dL(c[(j+432|0)>>2]|0,c[(j+432|0)+4>>2]|0,1,0)|0;c[(j+432|0)>>2]=p;c[(j+432|0)+4>>2]=D;break}}}while(0);if((c[(c[(j+1316|0)>>2]|0)+12>>2]|0)!=0){if((c[(c[(j+1328|0)>>2]|0)+176>>2]|0)!=0){c[(j+760|0)>>2]=c[(c[(j+1328|0)>>2]|0)+176>>2];while(1){if((c[(c[(j+760|0)>>2]|0)+4>>2]|0)==0){break}c[(j+760|0)>>2]=c[(c[(j+760|0)>>2]|0)+4>>2]}c[(j+756|0)>>2]=(c[(c[(j+760|0)>>2]|0)+12>>2]|0)+((c[(c[(j+1316|0)>>2]|0)+12>>2]|0)*40|0)}else{c[(j+756|0)>>2]=(c[(j+1292|0)>>2]|0)+((c[(c[(j+1316|0)>>2]|0)+12>>2]|0)*40|0)}MF(c[(j+756|0)>>2]|0)|0;p=(c[(j+756|0)>>2]|0)+16|0;if((c[p>>2]|0)==-1?(c[p+4>>2]|0)==2147483647:0){m=572;break c}if(((d[(c[(j+744|0)>>2]|0)+28>>0]|0)>>>1&1|0)!=0){m=572;break c}o=c[(j+432|0)>>2]|0;r=c[(j+432|0)+4>>2]|0;p=(c[(j+756|0)>>2]|0)+16|0;p=dL(c[p>>2]|0,c[p+4>>2]|0,1,0)|0;q=D;if((r|0)<(q|0)|(r|0)==(q|0)&o>>>0

>>0){r=(c[(j+756|0)>>2]|0)+16|0;r=dL(c[r>>2]|0,c[r+4>>2]|0,1,0)|0;c[(j+432|0)>>2]=r;c[(j+432|0)+4>>2]=D}q=c[(j+432|0)+4>>2]|0;r=(c[(j+756|0)>>2]|0)+16|0;c[r>>2]=c[(j+432|0)>>2];c[r+4>>2]=q}if(((d[(c[(j+744|0)>>2]|0)+28>>0]|0)>>>1&1|0)!=0){r=c[(j+88|0)+4>>2]|0;c[(j+432|0)>>2]=c[(j+88|0)>>2];c[(j+432|0)+4>>2]=r;r=c[(j+432|0)+4>>2]&1073741823;c[(j+432|0)>>2]=c[(j+432|0)>>2];c[(j+432|0)+4>>2]=r;r=dL(c[(j+432|0)>>2]|0,c[(j+432|0)+4>>2]|0,1,0)|0;c[(j+432|0)>>2]=r;c[(j+432|0)+4>>2]=D;c[(j+752|0)>>2]=0;while(1){r=jD(c[c[(j+744|0)>>2]>>2]|0,0,c[(j+432|0)>>2]|0,c[(j+432|0)+4>>2]|0,0,j+748|0)|0;c[(j+1312|0)>>2]=r;if(!((r|0)==0&(c[(j+748|0)>>2]|0)==0)){break}r=(c[(j+752|0)>>2]|0)+1|0;c[(j+752|0)>>2]=r;if((r|0)>=100){break}Bc(8,j+432|0);p=c[(j+432|0)>>2]|0;o=c[(j+432|0)+4>>2]|0;if((c[(j+752|0)>>2]|0)<5){c[(j+432|0)>>2]=p&16777215;c[(j+432|0)+4>>2]=0}else{c[(j+432|0)>>2]=p;c[(j+432|0)+4>>2]=o&1073741823}r=dL(c[(j+432|0)>>2]|0,c[(j+432|0)+4>>2]|0,1,0)|0;c[(j+432|0)>>2]=r;c[(j+432|0)+4>>2]=D}if((c[(j+1312|0)>>2]|0)==0){if((c[(j+748|0)>>2]|0)==0){m=586;break c}}}a[(c[(j+744|0)>>2]|0)+26>>0]=0;a[(c[(j+744|0)>>2]|0)+27>>0]=0;c[(c[(j+744|0)>>2]|0)+68>>2]=0}q=c[(j+432|0)+4>>2]|0;r=(c[(j+1276|0)>>2]|0)+16|0;c[r>>2]=c[(j+432|0)>>2];c[r+4>>2]=q;break};case 73:case 70:{c[(j+764|0)>>2]=(c[(j+1292|0)>>2]|0)+((c[(c[(j+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(j+688|0)>>2]=c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2];o=c[(c[(j+1316|0)>>2]|0)+12>>2]|0;if((d[c[(j+1316|0)>>2]>>0]|0)==70){c[(j+720|0)>>2]=(c[(j+1292|0)>>2]|0)+(o*40|0);q=(c[(j+720|0)>>2]|0)+16|0;r=c[q+4>>2]|0;c[(j+416|0)>>2]=c[q>>2];c[(j+416|0)+4>>2]=r}else{c[(j+416|0)>>2]=o;c[(j+416|0)+4>>2]=((o|0)<0)<<31>>31}if((a[(c[(j+1316|0)>>2]|0)+3>>0]&1|0)!=0){r=(c[(j+1328|0)>>2]|0)+92|0;c[r>>2]=(c[r>>2]|0)+1}if((a[(c[(j+1316|0)>>2]|0)+3>>0]&2|0)!=0){p=c[(j+416|0)>>2]|0;q=c[(j+416|0)+4>>2]|0;c[(j+88|0)>>2]=p;c[(j+88|0)+4>>2]=q;r=(c[(j+1308|0)>>2]|0)+32|0;c[r>>2]=p;c[r+4>>2]=q}if((b[(c[(j+764|0)>>2]|0)+28>>1]&1|0)!=0){c[(c[(j+764|0)>>2]|0)+4>>2]=0;c[(c[(j+764|0)>>2]|0)+24>>2]=0}if((a[(c[(j+1316|0)>>2]|0)+3>>0]&16|0)!=0){o=c[(c[(j+688|0)>>2]|0)+12>>2]|0}else{o=0}c[(j+680|0)>>2]=o;if((b[(c[(j+764|0)>>2]|0)+28>>1]&16384|0)!=0){c[(j+684|0)>>2]=c[(c[(j+764|0)>>2]|0)+16>>2]}else{c[(j+684|0)>>2]=0}c[(j+1312|0)>>2]=hG(c[c[(j+688|0)>>2]>>2]|0,0,c[(j+416|0)>>2]|0,c[(j+416|0)+4>>2]|0,c[(c[(j+764|0)>>2]|0)+4>>2]|0,c[(c[(j+764|0)>>2]|0)+24>>2]|0,c[(j+684|0)>>2]|0,(a[(c[(j+1316|0)>>2]|0)+3>>0]&8|0)!=0&1,c[(j+680|0)>>2]|0)|0;a[(c[(j+688|0)>>2]|0)+26>>0]=0;a[(c[(j+688|0)>>2]|0)+27>>0]=0;c[(c[(j+688|0)>>2]|0)+68>>2]=0;if((c[(j+1312|0)>>2]|0)==0){if((c[(c[(j+1308|0)>>2]|0)+200>>2]|0)!=0){if((c[(c[(j+1316|0)>>2]|0)+16>>2]|0)!=0){c[(j+676|0)>>2]=c[(c[(c[(j+1308|0)>>2]|0)+16>>2]|0)+(a[(c[(j+688|0)>>2]|0)+24>>0]<<4)>>2];c[(j+672|0)>>2]=c[(c[(j+1316|0)>>2]|0)+16>>2];c[(j+664|0)>>2]=(a[(c[(j+1316|0)>>2]|0)+3>>0]&4|0)!=0?23:18;yb[c[(c[(j+1308|0)>>2]|0)+200>>2]&0](c[(c[(j+1308|0)>>2]|0)+196>>2]|0,c[(j+664|0)>>2]|0,c[(j+676|0)>>2]|0,c[(j+672|0)>>2]|0,c[(j+416|0)>>2]|0,c[(j+416|0)+4>>2]|0)}}}break};default:{n=1}}}c[j+4792>>2]=k;c[j+4800>>2]=m;c[j+4824>>2]=l;c[j+4840>>2]=n;c[j+4848>>2]=f;c[j+4864>>2]=0;c[j+4868>>2]=0;_sqlite3VdbeExec$1(j);k=c[j+4792>>2]|0;m=c[j+4800>>2]|0;l=c[j+4824>>2]|0;n=c[j+4840>>2]|0;B=c[j+4864>>2]|0;u=c[j+4868>>2]|0;C=+g[j+4868>>2];c[j+4864>>2]=0;c[j+4868>>2]=0;if((B|0)==1){break}if((B|0)==2){switch(u|0){case 54:{break d};case 50:{break c};case 49:{break a}}}c[j+4792>>2]=k;c[j+4800>>2]=m;c[j+4824>>2]=l;c[j+4840>>2]=n;c[j+4848>>2]=f;c[j+4856>>2]=0;c[j+4860>>2]=0;_sqlite3VdbeExec$0(j);k=c[j+4792>>2]|0;m=c[j+4800>>2]|0;l=c[j+4824>>2]|0;B=c[j+4856>>2]|0;u=c[j+4860>>2]|0;C=+g[j+4860>>2];c[j+4856>>2]=0;c[j+4860>>2]=0;if((B|0)==1){break}if((B|0)==2){switch(u|0){case 66:{break d};case 70:{break a};case 67:{break c}}}}while(0);if((m|0)==28){m=0;if((c[(c[(j+1316|0)>>2]|0)+4>>2]|0)!=0){m=33;break}if((c[(c[(j+1328|0)>>2]|0)+176>>2]|0)==0){m=33;break}c[(j+1252|0)>>2]=c[(c[(j+1328|0)>>2]|0)+176>>2];c[(c[(j+1328|0)>>2]|0)+176>>2]=c[(c[(j+1252|0)>>2]|0)+4>>2];q=(c[(j+1328|0)>>2]|0)+184|0;c[q>>2]=(c[q>>2]|0)+ -1;BF(c[(j+1308|0)>>2]|0,c[(c[(j+1328|0)>>2]|0)+92>>2]|0);c[(j+1324|0)>>2]=CF(c[(j+1252|0)>>2]|0)|0;q=(c[(j+1308|0)>>2]|0)+32|0;r=c[q+4>>2]|0;c[(j+88|0)>>2]=c[q>>2];c[(j+88|0)+4>>2]=r;if((c[(c[(j+1316|0)>>2]|0)+8>>2]|0)==4){c[(j+1324|0)>>2]=(c[(c[(c[(j+1328|0)>>2]|0)+4>>2]|0)+((c[(j+1324|0)>>2]|0)*20|0)+8>>2]|0)-1}c[(j+1320|0)>>2]=c[(c[(j+1328|0)>>2]|0)+4>>2];c[(j+1292|0)>>2]=c[(c[(j+1328|0)>>2]|0)+8>>2]}else if((m|0)==57){m=0;b[(c[(j+1276|0)>>2]|0)+28>>1]=2562;c[(c[(j+1276|0)>>2]|0)+4>>2]=c[(c[(j+1316|0)>>2]|0)+16>>2];c[(c[(j+1276|0)>>2]|0)+24>>2]=c[(c[(j+1316|0)>>2]|0)+4>>2];a[(c[(j+1276|0)>>2]|0)+30>>0]=a[(j+1581|0)>>0]|0}else if((m|0)==646){m=0;c[(j+460|0)>>2]=c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(j+456|0)>>2]=1;if((c[(c[(j+460|0)>>2]|0)+64>>2]|0)!=0){c[(j+1312|0)>>2]=mG(c[(j+1308|0)>>2]|0,c[(j+460|0)>>2]|0,j+456|0)|0}else{c[(j+468|0)>>2]=c[c[(j+460|0)>>2]>>2];c[(j+1312|0)>>2]=nG(c[(j+468|0)>>2]|0,j+456|0)|0;a[(c[(j+460|0)>>2]|0)+27>>0]=0;c[(c[(j+460|0)>>2]|0)+68>>2]=0;a[(c[(j+460|0)>>2]|0)+26>>0]=0}a[(c[(j+460|0)>>2]|0)+25>>0]=c[(j+456|0)>>2];if((c[(j+456|0)>>2]|0)!=0){c[(j+1324|0)>>2]=(c[(c[(j+1316|0)>>2]|0)+8>>2]|0)-1}}else if((m|0)==653){c[(j+464|0)>>2]=c[(c[(c[(j+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(j+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(j+472|0)>>2]=c[(c[(j+1316|0)>>2]|0)+12>>2];c[(j+1312|0)>>2]=zb[c[(c[(j+1316|0)>>2]|0)+16>>2]&127](c[c[(j+464|0)>>2]>>2]|0,j+472|0)|0;m=654}if((m|0)==654){c[(c[(j+464|0)>>2]|0)+68>>2]=0;m=(c[(j+464|0)>>2]|0)+25|0;if((c[(j+472|0)>>2]|0)==0){a[m>>0]=0;c[(j+1324|0)>>2]=(c[(c[(j+1316|0)>>2]|0)+8>>2]|0)-1;r=(c[(j+1328|0)>>2]|0)+108+(d[(c[(j+1316|0)>>2]|0)+3>>0]<<2)|0;c[r>>2]=(c[r>>2]|0)+1}else{a[m>>0]=1}a[(c[(j+464|0)>>2]|0)+26>>0]=0;m=16}if((m|0)==16){m=0;if((c[(c[(j+1308|0)>>2]|0)+232>>2]|0)!=0){break b}if((c[(c[(j+1308|0)>>2]|0)+284>>2]|0)!=0){if((c[(j+1300|0)>>2]|0)>>>0>=(c[(j+1296|0)>>2]|0)>>>0){c[(j+1296|0)>>2]=(c[(j+1300|0)>>2]|0)+(c[(c[(j+1308|0)>>2]|0)+292>>2]|0)-(((c[(j+1300|0)>>2]|0)>>>0)%((c[(c[(j+1308|0)>>2]|0)+292>>2]|0)>>>0)|0);if((ub[c[(c[(j+1308|0)>>2]|0)+284>>2]&63](c[(c[(j+1308|0)>>2]|0)+288>>2]|0)|0)!=0){m=20;break}}}}c[(j+1324|0)>>2]=(c[(j+1324|0)>>2]|0)+1}switch(m|0){case 20:{c[(j+1312|0)>>2]=9;break a};case 33:{c[(c[(j+1328|0)>>2]|0)+80>>2]=c[(c[(j+1316|0)>>2]|0)+4>>2];a[(c[(j+1328|0)>>2]|0)+86>>0]=c[(c[(j+1316|0)>>2]|0)+8>>2];c[(c[(j+1328|0)>>2]|0)+76>>2]=c[(j+1324|0)>>2];if((c[(c[(j+1328|0)>>2]|0)+80>>2]|0)!=0){if((a[(c[(j+1316|0)>>2]|0)+3>>0]|0)!=0){c[(j+1260|0)>>2]=c[37744+((d[(c[(j+1316|0)>>2]|0)+3>>0]|0)-1<<2)>>2]}else{c[(j+1260|0)>>2]=0}c[(j+1256|0)>>2]=37808;if((c[(j+1260|0)>>2]|0)!=0){if((c[(c[(j+1316|0)>>2]|0)+16>>2]|0)!=0){q=(c[(j+1328|0)>>2]|0)+44|0;r=c[(j+1308|0)>>2]|0;p=c[(c[(j+1316|0)>>2]|0)+16>>2]|0;c[(j+336|0)>>2]=c[(j+1260|0)>>2];c[(j+336|0)+4>>2]=p;$t(q,r,37832,j+336|0)}else{m=40}}else{m=40}do{if((m|0)==40){l=(c[(j+1328|0)>>2]|0)+44|0;k=c[(j+1308|0)>>2]|0;if((c[(c[(j+1316|0)>>2]|0)+16>>2]|0)!=0){c[(j+336|0)>>2]=c[(c[(j+1316|0)>>2]|0)+16>>2];$t(l,k,1768,j+336|0);break}else{c[(j+336|0)>>2]=c[(j+1260|0)>>2];$t(l,k,37864,j+336|0);break}}}while(0);q=c[(c[(j+1316|0)>>2]|0)+4>>2]|0;r=c[(j+1256|0)>>2]|0;o=c[(c[(j+1328|0)>>2]|0)+168>>2]|0;p=c[(c[(j+1328|0)>>2]|0)+44>>2]|0;c[(j+336|0)>>2]=c[(j+1324|0)>>2];c[(j+336|0)+4>>2]=o;c[(j+336|0)+8>>2]=p;zc(q,r,j+336|0)}c[(j+1312|0)>>2]=DF(c[(j+1328|0)>>2]|0)|0;if((c[(j+1312|0)>>2]|0)==5){c[(j+1312|0)>>2]=5;c[(c[(j+1328|0)>>2]|0)+80>>2]=5;r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0}else{c[(j+1312|0)>>2]=(c[(c[(j+1328|0)>>2]|0)+80>>2]|0)!=0?1:101;r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0}};case 80:{c[(j+1312|0)>>2]=9;break a};case 83:{c[(c[(j+1328|0)>>2]|0)+72>>2]=(c[(c[(j+1328|0)>>2]|0)+72>>2]|0)+2|1;r=(c[(j+1292|0)>>2]|0)+((c[(c[(j+1316|0)>>2]|0)+4>>2]|0)*40|0)|0;c[(c[(j+1328|0)>>2]|0)+20>>2]=r;c[(j+1220|0)>>2]=r;c[(j+1216|0)>>2]=0;while(1){if((c[(j+1216|0)>>2]|0)>=(c[(c[(j+1316|0)>>2]|0)+8>>2]|0)){break}if((b[(c[(j+1220|0)>>2]|0)+((c[(j+1216|0)>>2]|0)*40|0)+28>>1]&4096|0)!=0){if((ur((c[(j+1220|0)>>2]|0)+((c[(j+1216|0)>>2]|0)*40|0)|0)|0)!=0){m=900;break a}}HF((c[(j+1220|0)>>2]|0)+((c[(j+1216|0)>>2]|0)*40|0)|0)|0;c[(j+1216|0)>>2]=(c[(j+1216|0)>>2]|0)+1}if((a[(c[(j+1308|0)>>2]|0)+64>>0]|0)!=0){m=900;break a}c[(c[(j+1328|0)>>2]|0)+76>>2]=(c[(j+1324|0)>>2]|0)+1;c[(j+1312|0)>>2]=100;r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0};case 146:{Gd((j+184|0)+8|0);m=900;break a};case 177:{c[(j+1312|0)>>2]=20;break};case 395:{c[(c[(j+1328|0)>>2]|0)+76>>2]=c[(j+1324|0)>>2];a[(c[(j+1308|0)>>2]|0)+62>>0]=0;c[(j+1312|0)>>2]=5;c[(c[(j+1328|0)>>2]|0)+80>>2]=5;r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0};case 423:{if((c[(j+1396|0)>>2]|0)!=0){xr(c[(j+1308|0)>>2]|0,516);a[(c[(j+1308|0)>>2]|0)+62>>0]=1}else{r=FF(c[(j+1328|0)>>2]|0,1)|0;c[(j+1312|0)>>2]=r;if((r|0)!=0){r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0}a[(c[(j+1308|0)>>2]|0)+62>>0]=c[(j+1468|0)>>2];if((DF(c[(j+1328|0)>>2]|0)|0)==5){c[(c[(j+1328|0)>>2]|0)+76>>2]=c[(j+1324|0)>>2];a[(c[(j+1308|0)>>2]|0)+62>>0]=1-(c[(j+1468|0)>>2]|0);c[(j+1312|0)>>2]=5;c[(c[(j+1328|0)>>2]|0)+80>>2]=5;r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0}}yr(c[(j+1308|0)>>2]|0);if((c[(c[(j+1328|0)>>2]|0)+80>>2]|0)==0){c[(j+1312|0)>>2]=101;r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0}else{c[(j+1312|0)>>2]=1;r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0}};case 436:{c[(j+1312|0)>>2]=8;break};case 439:{c[(c[(j+1328|0)>>2]|0)+76>>2]=c[(j+1324|0)>>2];c[(j+1312|0)>>2]=5;c[(c[(j+1328|0)>>2]|0)+80>>2]=5;r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0};case 473:{c[(j+1312|0)>>2]=dq(70771)|0;break};case 572:{c[(j+1312|0)>>2]=13;break};case 586:{c[(j+1312|0)>>2]=13;break};case 898:{r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0};case 899:{$t((c[(j+1328|0)>>2]|0)+44|0,c[(j+1308|0)>>2]|0,1520,j+336|0);c[(j+1312|0)>>2]=18;break a}}if((a[(c[(j+1308|0)>>2]|0)+64>>0]|0)!=0){c[(j+1312|0)>>2]=7}if((c[(j+1312|0)>>2]|0)==3082){break a}q=(c[(j+1328|0)>>2]|0)+44|0;r=c[(j+1308|0)>>2]|0;c[(j+336|0)>>2]=ie(c[(j+1312|0)>>2]|0)|0;$t(q,r,1768,j+336|0);break a}}while(0);c[(j+1312|0)>>2]=9;c[(c[(j+1328|0)>>2]|0)+80>>2]=c[(j+1312|0)>>2];q=(c[(j+1328|0)>>2]|0)+44|0;r=c[(j+1308|0)>>2]|0;c[(j+336|0)>>2]=ie(c[(j+1312|0)>>2]|0)|0;$t(q,r,1768,j+336|0)}}}while(0);if((m|0)==900){a[(c[(j+1308|0)>>2]|0)+64>>0]=1;$t((c[(j+1328|0)>>2]|0)+44|0,c[(j+1308|0)>>2]|0,9112,j+336|0);c[(j+1312|0)>>2]=7}c[(c[(j+1328|0)>>2]|0)+80>>2]=c[(j+1312|0)>>2];r=c[(j+1312|0)>>2]|0;p=c[(c[(j+1328|0)>>2]|0)+168>>2]|0;q=c[(c[(j+1328|0)>>2]|0)+44>>2]|0;c[(j+336|0)>>2]=c[(j+1324|0)>>2];c[(j+336|0)+4>>2]=p;c[(j+336|0)+8>>2]=q;zc(r,38464,j+336|0);DF(c[(j+1328|0)>>2]|0)|0;if((c[(j+1312|0)>>2]|0)==3082){a[(c[(j+1308|0)>>2]|0)+64>>0]=1}c[(j+1312|0)>>2]=1;if((d[(j+1580|0)>>0]|0)<=0){r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0}Hy(c[(j+1308|0)>>2]|0,(d[(j+1580|0)>>0]|0)-1|0);r=j+88|0;o=r;o=c[o>>2]|0;r=r+4|0;r=c[r>>2]|0;q=c[(j+1308|0)>>2]|0;q=q+32|0;p=q;c[p>>2]=o;q=q+4|0;c[q>>2]=r;q=c[(j+1300|0)>>2]|0;r=c[(j+1328|0)>>2]|0;r=r+108|0;r=r+16|0;p=c[r>>2]|0;q=p+q|0;c[r>>2]=q;r=c[(j+1312|0)>>2]|0;i=j;return r|0}function xF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;g=b+16|0;d=b;h=b+4|0;e=b+8|0;f=b+12|0;c[g>>2]=a;c[d>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[g>>2]|0)+20>>2]|0)){break}c[e>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+4>>2];if((c[e>>2]|0)!=0){c[f>>2]=zF(Zb(c[e>>2]|0)|0)|0;if((c[(c[g>>2]|0)+204>>2]|0)!=0){if((c[f>>2]|0)>0){if((c[d>>2]|0)==0){c[d>>2]=xb[c[(c[g>>2]|0)+204>>2]&31](c[(c[g>>2]|0)+208>>2]|0,c[g>>2]|0,c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)>>2]|0,c[f>>2]|0)|0}}}}c[h>>2]=(c[h>>2]|0)+1}i=b;return c[d>>2]|0}function yF(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;g=d+12|0;f=d+4|0;e=d+8|0;h=d+16|0;c[g>>2]=b;c[f>>2]=c[c[g>>2]>>2];c[e>>2]=c[(c[g>>2]|0)+80>>2];b=c[f>>2]|0;if((c[(c[g>>2]|0)+44>>2]|0)==0){Rc(b,c[e>>2]|0,0,d);b=c[e>>2]|0;i=d;return b|0}a[h>>0]=a[b+64>>0]|0;Ih();if((c[(c[f>>2]|0)+224>>2]|0)==0){b=Pf(c[f>>2]|0)|0;c[(c[f>>2]|0)+224>>2]=b}Qf(c[(c[f>>2]|0)+224>>2]|0,-1,c[(c[g>>2]|0)+44>>2]|0,1,-1);Jh();a[(c[f>>2]|0)+64>>0]=a[h>>0]|0;c[(c[f>>2]|0)+52>>2]=c[e>>2];b=c[e>>2]|0;i=d;return b|0}function zF(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=AF(c[(c[d>>2]|0)+208>>2]|0)|0;i=b;return a|0}function AF(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=0;if((c[e>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}c[d>>2]=c[(c[e>>2]|0)+12>>2];c[(c[e>>2]|0)+12>>2]=0;e=c[d>>2]|0;i=b;return e|0}function BF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;c[(c[f>>2]|0)+80>>2]=c[e>>2];a=(c[f>>2]|0)+84|0;c[a>>2]=(c[a>>2]|0)+(c[e>>2]|0);i=d;return}function CF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=i;i=i+16|0;b=d+4|0;e=d;c[b>>2]=a;c[e>>2]=c[c[b>>2]>>2];c[(c[e>>2]|0)+200>>2]=c[(c[b>>2]|0)+16>>2];c[(c[e>>2]|0)+196>>2]=c[(c[b>>2]|0)+56>>2];c[(c[e>>2]|0)+4>>2]=c[(c[b>>2]|0)+8>>2];c[(c[e>>2]|0)+32>>2]=c[(c[b>>2]|0)+48>>2];c[(c[e>>2]|0)+8>>2]=c[(c[b>>2]|0)+12>>2];c[(c[e>>2]|0)+28>>2]=c[(c[b>>2]|0)+52>>2];c[(c[e>>2]|0)+56>>2]=c[(c[b>>2]|0)+20>>2];c[(c[e>>2]|0)+36>>2]=c[(c[b>>2]|0)+40>>2];g=(c[b>>2]|0)+32|0;f=c[g+4>>2]|0;a=(c[c[e>>2]>>2]|0)+32|0;c[a>>2]=c[g>>2];c[a+4>>2]=f;c[(c[e>>2]|0)+92>>2]=c[(c[b>>2]|0)+68>>2];i=d;return c[(c[b>>2]|0)+44>>2]|0}function DF(b){b=b|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;k=f+24|0;g=f;l=f+4|0;j=f+8|0;n=f+12|0;h=f+16|0;m=f+20|0;c[g>>2]=b;c[j>>2]=c[c[g>>2]>>2];if((a[(c[c[g>>2]>>2]|0)+64>>0]|0)!=0){c[(c[g>>2]|0)+80>>2]=7}if((c[(c[g>>2]|0)+200>>2]|0)!=0){aL(c[(c[g>>2]|0)+200>>2]|0,0,c[(c[g>>2]|0)+196>>2]|0)|0}VI(c[g>>2]|0);if((c[(c[g>>2]|0)+40>>2]|0)!=-1108210269){c[k>>2]=0;b=c[k>>2]|0;i=f;return b|0}if((c[(c[g>>2]|0)+76>>2]|0)>=0){if(((e[(c[g>>2]|0)+88>>1]|0)>>>9&1|0)!=0){c[h>>2]=0;c[n>>2]=c[(c[g>>2]|0)+80>>2]&255;if((c[n>>2]|0)==7|(c[n>>2]|0)==10|(c[n>>2]|0)==9){b=1}else{b=(c[n>>2]|0)==13}c[m>>2]=b&1;do{if((c[m>>2]|0)!=0){if(((e[(c[g>>2]|0)+88>>1]|0)>>>8&1|0)!=0){if((c[n>>2]|0)==9){break}}if((c[n>>2]|0)==7|(c[n>>2]|0)==13){if(((e[(c[g>>2]|0)+88>>1]|0)>>>7&1|0)!=0){c[h>>2]=2;break}}xr(c[j>>2]|0,516);yr(c[j>>2]|0);a[(c[j>>2]|0)+62>>0]=1}}while(0);if((c[(c[g>>2]|0)+80>>2]|0)==0){FF(c[g>>2]|0,0)|0}if((c[(c[j>>2]|0)+296>>2]|0)>0){if((c[(c[j>>2]|0)+320>>2]|0)==0){n=40}else{n=22}}else{n=22}if((n|0)==22){if((d[(c[j>>2]|0)+62>>0]|0)!=0){if((c[(c[j>>2]|0)+148>>2]|0)==(((e[(c[g>>2]|0)+88>>1]|0)>>>8&1|0)==0|0)){do{if((c[(c[g>>2]|0)+80>>2]|0)==0){n=27}else{if((d[(c[g>>2]|0)+86>>0]|0)==3){if((c[m>>2]|0)==0){n=27;break}}xr(c[j>>2]|0,0)}}while(0);do{if((n|0)==27){c[l>>2]=FF(c[g>>2]|0,1)|0;do{if((c[l>>2]|0)!=0){if(((e[(c[g>>2]|0)+88>>1]|0)>>>8&1|0)==0){c[l>>2]=787;break}c[k>>2]=1;b=c[k>>2]|0;i=f;return b|0}else{c[l>>2]=WI(c[j>>2]|0,c[g>>2]|0)|0}}while(0);if((c[l>>2]|0)==5){if(((e[(c[g>>2]|0)+88>>1]|0)>>>8&1|0)!=0){c[k>>2]=5;b=c[k>>2]|0;i=f;return b|0}}if((c[l>>2]|0)!=0){c[(c[g>>2]|0)+80>>2]=c[l>>2];xr(c[j>>2]|0,0);break}else{b=(c[j>>2]|0)+496|0;c[b>>2]=0;c[b+4>>2]=0;b=(c[j>>2]|0)+504|0;c[b>>2]=0;c[b+4>>2]=0;b=(c[j>>2]|0)+24|0;c[b>>2]=c[b>>2]&-16777217;Iy(c[j>>2]|0);break}}}while(0);c[(c[j>>2]|0)+492>>2]=0}else{n=40}}else{n=40}}do{if((n|0)==40){if((c[h>>2]|0)==0){if((c[(c[g>>2]|0)+80>>2]|0)!=0){if((d[(c[g>>2]|0)+86>>0]|0)!=3){if((d[(c[g>>2]|0)+86>>0]|0)==2){c[h>>2]=2;break}else{xr(c[j>>2]|0,516);yr(c[j>>2]|0);a[(c[j>>2]|0)+62>>0]=1;break}}}c[h>>2]=1}}}while(0);if((c[h>>2]|0)!=0){c[l>>2]=GF(c[g>>2]|0,c[h>>2]|0)|0;if((c[l>>2]|0)!=0){if((c[(c[g>>2]|0)+80>>2]|0)==0){n=51}else{if((c[(c[g>>2]|0)+80>>2]&255|0)==19){n=51}}if((n|0)==51){c[(c[g>>2]|0)+80>>2]=c[l>>2];cc(c[j>>2]|0,c[(c[g>>2]|0)+44>>2]|0);c[(c[g>>2]|0)+44>>2]=0}xr(c[j>>2]|0,516);yr(c[j>>2]|0);a[(c[j>>2]|0)+62>>0]=1}}if(((e[(c[g>>2]|0)+88>>1]|0)>>>4&1|0)!=0){l=c[j>>2]|0;if((c[h>>2]|0)!=2){BF(l,c[(c[g>>2]|0)+92>>2]|0)}else{BF(l,0)}c[(c[g>>2]|0)+92>>2]=0}}}if((c[(c[g>>2]|0)+76>>2]|0)>=0){b=(c[j>>2]|0)+140|0;c[b>>2]=(c[b>>2]|0)+ -1;if(((e[(c[g>>2]|0)+88>>1]|0)>>>8&1|0)==0){b=(c[j>>2]|0)+148|0;c[b>>2]=(c[b>>2]|0)+ -1}if(((e[(c[g>>2]|0)+88>>1]|0)>>>9&1|0)!=0){b=(c[j>>2]|0)+144|0;c[b>>2]=(c[b>>2]|0)+ -1}}c[(c[g>>2]|0)+40>>2]=1369188723;if((a[(c[c[g>>2]>>2]|0)+64>>0]|0)!=0){c[(c[g>>2]|0)+80>>2]=7}c[k>>2]=(c[(c[g>>2]|0)+80>>2]|0)==5?5:0;b=c[k>>2]|0;i=f;return b|0}function EF(a){a=a|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;c[g>>2]=a;if((b[(c[g>>2]|0)+28>>1]&18|0)==0){c[e>>2]=0;g=c[e>>2]|0;i=d;return g|0}c[f>>2]=c[(c[g>>2]|0)+24>>2];if((b[(c[g>>2]|0)+28>>1]&16384|0)!=0){c[f>>2]=(c[f>>2]|0)+(c[(c[g>>2]|0)+16>>2]|0)}c[e>>2]=(c[f>>2]|0)>(c[(c[c[g>>2]>>2]|0)+88>>2]|0)&1;g=c[e>>2]|0;i=d;return g|0}function FF(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;h=k;j=k+16|0;f=k+4|0;l=k+8|0;g=k+12|0;c[f>>2]=b;c[l>>2]=d;c[g>>2]=c[c[f>>2]>>2];if((c[l>>2]|0)!=0){d=(c[g>>2]|0)+496|0;b=(c[g>>2]|0)+504|0;b=dL(c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;d=D;if(!((d|0)>0|(d|0)==0&b>>>0>0)){e=3}}else{e=3}do{if((e|0)==3){if((c[l>>2]|0)==0){b=(c[f>>2]|0)+144|0;d=c[b+4>>2]|0;if((d|0)>0|(d|0)==0&(c[b>>2]|0)>>>0>0){break}}c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}}while(0);c[(c[f>>2]|0)+80>>2]=787;a[(c[f>>2]|0)+86>>0]=2;$t((c[f>>2]|0)+44|0,c[g>>2]|0,30856,h);c[j>>2]=1;b=c[j>>2]|0;i=k;return b|0}function GF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;g=h+28|0;d=h;f=h+4|0;e=h+8|0;k=h+12|0;m=h+16|0;j=h+20|0;l=h+24|0;c[g>>2]=a;c[d>>2]=b;c[f>>2]=c[c[g>>2]>>2];c[e>>2]=0;if((c[(c[f>>2]|0)+492>>2]|0)==0){a=c[e>>2]|0;i=h;return a|0}if((c[(c[g>>2]|0)+104>>2]|0)==0){a=c[e>>2]|0;i=h;return a|0}c[m>>2]=(c[(c[g>>2]|0)+104>>2]|0)-1;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){break}c[j>>2]=0;c[l>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(c[k>>2]<<4)+4>>2];if((c[l>>2]|0)!=0){if((c[d>>2]|0)==2){c[j>>2]=ZF(c[l>>2]|0,2,c[m>>2]|0)|0}if((c[j>>2]|0)==0){c[j>>2]=ZF(c[l>>2]|0,1,c[m>>2]|0)|0}if((c[e>>2]|0)==0){c[e>>2]=c[j>>2]}}c[k>>2]=(c[k>>2]|0)+1}a=(c[f>>2]|0)+492|0;c[a>>2]=(c[a>>2]|0)+ -1;c[(c[g>>2]|0)+104>>2]=0;if((c[e>>2]|0)==0){if((c[d>>2]|0)==2){c[e>>2]=XF(c[f>>2]|0,2,c[m>>2]|0)|0}if((c[e>>2]|0)==0){c[e>>2]=XF(c[f>>2]|0,1,c[m>>2]|0)|0}}if((c[d>>2]|0)!=2){a=c[e>>2]|0;i=h;return a|0}a=(c[g>>2]|0)+152|0;m=c[a+4>>2]|0;l=(c[f>>2]|0)+496|0;c[l>>2]=c[a>>2];c[l+4>>2]=m;l=(c[g>>2]|0)+160|0;m=c[l+4>>2]|0;a=(c[f>>2]|0)+504|0;c[a>>2]=c[l>>2];c[a+4>>2]=m;a=c[e>>2]|0;i=h;return a|0}function HF(d){d=d|0;var f=0,g=0,h=0;g=i;i=i+16|0;f=g+4|0;h=g;c[h>>2]=d;if((b[(c[h>>2]|0)+28>>1]&512|0)==0){if((b[(c[h>>2]|0)+28>>1]&2|0)!=0){if((ue(c[h>>2]|0,(c[(c[h>>2]|0)+24>>2]|0)+2|0,1)|0)!=0){c[f>>2]=7;h=c[f>>2]|0;i=g;return h|0}else{a[(c[(c[h>>2]|0)+4>>2]|0)+(c[(c[h>>2]|0)+24>>2]|0)>>0]=0;a[(c[(c[h>>2]|0)+4>>2]|0)+((c[(c[h>>2]|0)+24>>2]|0)+1)>>0]=0;h=(c[h>>2]|0)+28|0;b[h>>1]=e[h>>1]|0|512;c[f>>2]=0;h=c[f>>2]|0;i=g;return h|0}}}c[f>>2]=0;h=c[f>>2]|0;i=g;return h|0}function IF(d){d=d|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[h>>2]=d;d=e[(c[h>>2]|0)+28>>1]|0;if((b[(c[h>>2]|0)+28>>1]&12|0)!=0){b[g>>1]=d&12;d=b[g>>1]|0;i=f;return d|0}if((d&18|0)==0){b[g>>1]=0;d=b[g>>1]|0;i=f;return d|0}if((zt(c[(c[h>>2]|0)+4>>2]|0,(c[h>>2]|0)+8|0,c[(c[h>>2]|0)+24>>2]|0,a[(c[h>>2]|0)+30>>0]|0)|0)==0){b[g>>1]=0;d=b[g>>1]|0;i=f;return d|0}if((Pg(c[(c[h>>2]|0)+4>>2]|0,(c[h>>2]|0)+16|0,c[(c[h>>2]|0)+24>>2]|0,a[(c[h>>2]|0)+30>>0]|0)|0)==0){b[g>>1]=4;d=b[g>>1]|0;i=f;return d|0}else{b[g>>1]=8;d=b[g>>1]|0;i=f;return d|0}return 0}function JF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+12|0;h=e+8|0;g=e;c[h>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;a=g;d=c[h>>2]|0;if(!((c[a>>2]|0)==0?(c[a+4>>2]|0)==-2147483648:0)){a=g;a=$K(0,0,c[a>>2]|0,c[a+4>>2]|0)|0;c[f>>2]=Qt(d,a,D)|0;a=c[f>>2]|0;i=e;return a|0}a=d;b=c[a+4>>2]|0;if((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>=0){c[f>>2]=1;a=c[f>>2]|0;i=e;return a|0}else{b=g;a=c[h>>2]|0;d=a;b=$K(c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[a>>2]=b;c[a+4>>2]=D;c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}return 0}function KF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+64|0;k=f+56|0;h=f+60|0;m=f+48|0;o=f+40|0;n=f+32|0;j=f+16|0;l=f+8|0;e=f;g=f+24|0;c[h>>2]=a;a=m;c[a>>2]=b;c[a+4>>2]=d;b=c[h>>2]|0;d=c[b+4>>2]|0;a=o;c[a>>2]=c[b>>2];c[a+4>>2]=d;a=o;a=lL(c[a>>2]|0,c[a+4>>2]|0,0,1)|0;d=n;c[d>>2]=a;c[d+4>>2]=D;d=o;d=mL(c[d>>2]|0,c[d+4>>2]|0,0,1)|0;a=j;c[a>>2]=d;c[a+4>>2]=D;a=m;a=lL(c[a>>2]|0,c[a+4>>2]|0,0,1)|0;d=l;c[d>>2]=a;c[d+4>>2]=D;d=m;d=mL(c[d>>2]|0,c[d+4>>2]|0,0,1)|0;a=e;c[a>>2]=d;c[a+4>>2]=D;a=n;d=l;d=(c[d>>2]|0)==0&(c[d+4>>2]|0)==0;do{if((c[a>>2]|0)==0&(c[a+4>>2]|0)==0){if(!d){o=j;a=l;a=nL(c[o>>2]|0,c[o+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;o=g;c[o>>2]=a;c[o+4>>2]=D;break}a=m;o=c[h>>2]|0;b=o;a=nL(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[o>>2]=a;c[o+4>>2]=D;c[k>>2]=0;o=c[k>>2]|0;i=f;return o|0}else{if(d){o=n;a=e;a=nL(c[o>>2]|0,c[o+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;o=g;c[o>>2]=a;c[o+4>>2]=D;break}c[k>>2]=1;o=c[k>>2]|0;i=f;return o|0}}while(0);b=g;d=c[b+4>>2]|0;o=g;a=c[o+4>>2]|0;if((d|0)<-1|(d|0)==-1&(c[b>>2]|0)>>>0<2147483648|((a|0)>0|(a|0)==0&(c[o>>2]|0)>>>0>=2147483648)){c[k>>2]=1;o=c[k>>2]|0;i=f;return o|0}o=g;o=nL(c[o>>2]|0,c[o+4>>2]|0,0,1)|0;a=g;c[a>>2]=o;c[a+4>>2]=D;a=j;o=e;o=nL(c[a>>2]|0,c[a+4>>2]|0,c[o>>2]|0,c[o+4>>2]|0)|0;if((Qt(g,o,D)|0)!=0){c[k>>2]=1;o=c[k>>2]|0;i=f;return o|0}else{b=g;a=c[b+4>>2]|0;o=c[h>>2]|0;c[o>>2]=c[b>>2];c[o+4>>2]=a;c[k>>2]=0;o=c[k>>2]|0;i=f;return o|0}return 0}function LF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;j=e;g=e+4|0;h=e+8|0;f=e+12|0;c[k>>2]=a;c[j>>2]=b;c[g>>2]=d;c[h>>2]=(c[k>>2]|0)+204;a:while(1){if((c[c[h>>2]>>2]|0)==0){break}c[f>>2]=c[c[h>>2]>>2];do{if((c[j>>2]|0)>=0){if((c[c[f>>2]>>2]|0)==(c[j>>2]|0)){if((c[(c[f>>2]|0)+4>>2]|0)>31){break}if((c[g>>2]&1<>2]|0)+4>>2]|0)==0){break}}c[h>>2]=(c[f>>2]|0)+16;continue a}}while(0);if((c[(c[f>>2]|0)+12>>2]|0)!=0){rb[c[(c[f>>2]|0)+12>>2]&31](c[(c[f>>2]|0)+8>>2]|0)}c[c[h>>2]>>2]=c[(c[f>>2]|0)+16>>2];cc(c[c[k>>2]>>2]|0,c[f>>2]|0)}i=e;return}function MF(a){a=a|0;var d=0,f=0,g=0;d=i;i=i+16|0;f=d;c[f>>2]=a;g=Pd(c[f>>2]|0)|0;a=(c[f>>2]|0)+16|0;c[a>>2]=g;c[a+4>>2]=D;b[(c[f>>2]|0)+28>>1]=(e[(c[f>>2]|0)+28>>1]|0)&-16896|4;i=d;return 0}function NF(a){a=a|0;var d=0,f=0,g=0.0;d=i;i=i+16|0;f=d;c[f>>2]=a;g=+Nd(c[f>>2]|0);h[(c[f>>2]|0)+8>>3]=g;b[(c[f>>2]|0)+28>>1]=(e[(c[f>>2]|0)+28>>1]|0)&-16896|8;i=d;return 0}function OF(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;g=d;h=d+4|0;f=d+8|0;k=d+12|0;j=d+16|0;c[g>>2]=b;b=c[c[g>>2]>>2]|0;do{if((a[(c[g>>2]|0)+27>>0]|0)!=0){k=(c[g>>2]|0)+48|0;c[f>>2]=jD(b,0,c[k>>2]|0,c[k+4>>2]|0,0,h)|0;if((c[f>>2]|0)!=0){c[e>>2]=c[f>>2];b=c[e>>2]|0;i=d;return b|0}j=(c[g>>2]|0)+48|0;k=c[j+4>>2]|0;b=(c[g>>2]|0)+56|0;c[b>>2]=c[j>>2];c[b+4>>2]=k;if((c[h>>2]|0)==0){a[(c[g>>2]|0)+26>>0]=1;a[(c[g>>2]|0)+27>>0]=0;c[(c[g>>2]|0)+68>>2]=0;break}c[e>>2]=dq(64453)|0;b=c[e>>2]|0;i=d;return b|0}else{if((b|0)!=0){c[j>>2]=UI(c[c[g>>2]>>2]|0,k)|0;if((c[j>>2]|0)!=0){c[e>>2]=c[j>>2];b=c[e>>2]|0;i=d;return b|0}if((c[k>>2]|0)!=0){c[(c[g>>2]|0)+68>>2]=0;if((c[k>>2]|0)==2){a[(c[g>>2]|0)+25>>0]=1}}}}}while(0);c[e>>2]=0;b=c[e>>2]|0;i=d;return b|0}function PF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=TI(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function QF(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;h=i;i=i+16|0;k=h+8|0;j=h;l=h+4|0;c[k>>2]=f;c[j>>2]=g;if((e[(c[k>>2]|0)+50>>1]|0)!=0){l=c[k>>2]|0;l=l+24|0;l=l+12|0;l=c[l>>2]|0;f=c[j>>2]|0;c[f>>2]=l;i=h;return 0}c[l>>2]=b[(c[k>>2]|0)+84>>1]|0;pD(c[(c[k>>2]|0)+128+(c[l>>2]<<2)>>2]|0,e[(c[k>>2]|0)+86+(c[l>>2]<<1)>>1]|0,(c[k>>2]|0)+24|0);l=(c[k>>2]|0)+80|0;a[l>>0]=d[l>>0]|2;l=c[k>>2]|0;l=l+24|0;l=l+12|0;l=c[l>>2]|0;f=c[j>>2]|0;c[f>>2]=l;i=h;return 0}function RF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=TI(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function SF(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=i;i=i+32|0;p=m+28|0;o=m;k=m+4|0;n=m+8|0;j=m+12|0;r=m+16|0;q=m+20|0;l=m+24|0;c[p>>2]=d;c[o>>2]=e;c[k>>2]=f;c[n>>2]=g;c[j>>2]=h;c[q>>2]=0;c[l>>2]=0;g=c[p>>2]|0;if((c[n>>2]|0)!=0){c[r>>2]=PF(g,q)|0}else{c[r>>2]=RF(g,q)|0}g=c[j>>2]|0;if(((c[o>>2]|0)+(c[k>>2]|0)|0)>>>0<=(c[q>>2]|0)>>>0){Gd(g);c[(c[j>>2]|0)+4>>2]=(c[r>>2]|0)+(c[o>>2]|0);b[(c[j>>2]|0)+28>>1]=4112;c[(c[j>>2]|0)+24>>2]=c[k>>2];d=c[l>>2]|0;i=m;return d|0}d=ue(g,(c[k>>2]|0)+2|0,0)|0;c[l>>2]=d;if(0!=(d|0)){d=c[l>>2]|0;i=m;return d|0}p=c[p>>2]|0;r=c[o>>2]|0;q=c[k>>2]|0;o=c[(c[j>>2]|0)+4>>2]|0;if((c[n>>2]|0)!=0){c[l>>2]=lF(p,r,q,o)|0}else{c[l>>2]=vf(p,r,q,o)|0}if((c[l>>2]|0)==0){a[(c[(c[j>>2]|0)+4>>2]|0)+(c[k>>2]|0)>>0]=0;a[(c[(c[j>>2]|0)+4>>2]|0)+((c[k>>2]|0)+1)>>0]=0;b[(c[j>>2]|0)+28>>1]=528;c[(c[j>>2]|0)+24>>2]=c[k>>2];d=c[l>>2]|0;i=m;return d|0}else{Gd(c[j>>2]|0);d=c[l>>2]|0;i=m;return d|0}return 0}function TF(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+48|0;d=f+32|0;k=f+28|0;j=f+24|0;m=f+16|0;l=f+20|0;g=f;h=f+8|0;c[k>>2]=a;c[j>>2]=b;c[m>>2]=e[(c[k>>2]|0)+28>>1]|0;if((c[m>>2]&1|0)!=0){c[d>>2]=0;a=c[d>>2]|0;i=f;return a|0}if((c[m>>2]&4|0)==0){if((c[m>>2]&8|0)!=0){c[d>>2]=7;a=c[d>>2]|0;i=f;return a|0}c[l>>2]=c[(c[k>>2]|0)+24>>2];if((c[m>>2]&16384|0)!=0){c[l>>2]=(c[l>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)}c[d>>2]=(c[l>>2]<<1)+12+((c[m>>2]&2|0)!=0&1);a=c[d>>2]|0;i=f;return a|0}a=(c[k>>2]|0)+16|0;k=c[a+4>>2]|0;b=g;c[b>>2]=c[a>>2];c[b+4>>2]=k;b=g;k=c[b>>2]|0;b=c[b+4>>2]|0;do{if((c[g+4>>2]|0)<0){if(!((b|0)<-32768|(b|0)==-32768&k>>>0<1)){m=g;m=$K(0,0,c[m>>2]|0,c[m+4>>2]|0)|0;a=h;c[a>>2]=m;c[a+4>>2]=D;break}c[d>>2]=6;a=c[d>>2]|0;i=f;return a|0}else{a=h;c[a>>2]=k;c[a+4>>2]=b}}while(0);a=h;m=c[a+4>>2]|0;if(m>>>0<0|(m|0)==0&(c[a>>2]|0)>>>0<=127){a=g;if(0==(c[a+4>>2]|0)?(c[g>>2]&1|0)==(c[a>>2]|0):0){if((c[j>>2]|0)>=4){g=8+(c[h>>2]|0)|0}else{g=1}}else{g=1}c[d>>2]=g;a=c[d>>2]|0;i=f;return a|0}a=h;m=c[a+4>>2]|0;if(m>>>0<0|(m|0)==0&(c[a>>2]|0)>>>0<=32767){c[d>>2]=2;a=c[d>>2]|0;i=f;return a|0}a=h;m=c[a+4>>2]|0;if(m>>>0<0|(m|0)==0&(c[a>>2]|0)>>>0<=8388607){c[d>>2]=3;a=c[d>>2]|0;i=f;return a|0}a=h;m=c[a+4>>2]|0;if(m>>>0<0|(m|0)==0&(c[a>>2]|0)>>>0<=2147483647){c[d>>2]=4;a=c[d>>2]|0;i=f;return a|0}a=h;m=c[a+4>>2]|0;if(m>>>0<32767|(m|0)==32767&(c[a>>2]|0)>>>0<=4294967295){c[d>>2]=5;a=c[d>>2]|0;i=f;return a|0}else{c[d>>2]=6;a=c[d>>2]|0;i=f;return a|0}return 0}function UF(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[g>>2]=b;c[h>>2]=d;if((c[h>>2]&-16384|0)==0){a[c[g>>2]>>0]=(c[h>>2]|0)>>>7|128;a[(c[g>>2]|0)+1>>0]=c[h>>2]&127;c[f>>2]=2;b=c[f>>2]|0;i=e;return b|0}else{c[f>>2]=lI(c[g>>2]|0,c[h>>2]|0,0)|0;b=c[f>>2]|0;i=e;return b|0}return 0}function VF(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;g=l+28|0;k=l+20|0;j=l+8|0;n=l+12|0;h=l+16|0;m=l;f=l+24|0;c[k>>2]=b;c[j>>2]=d;c[n>>2]=e;e=c[n>>2]|0;if(!((c[n>>2]|0)>>>0<=7&(c[n>>2]|0)>>>0>0)){if(e>>>0>=12){c[h>>2]=c[(c[j>>2]|0)+24>>2];fL(c[k>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[h>>2]|0)|0;c[g>>2]=c[h>>2];b=c[g>>2]|0;i=l;return b|0}else{c[g>>2]=0;b=c[g>>2]|0;i=l;return b|0}}if((e|0)==7){b=(c[j>>2]|0)+8|0;c[m+0>>2]=c[b+0>>2];c[m+4>>2]=c[b+4>>2]}else{e=(c[j>>2]|0)+16|0;d=c[e+4>>2]|0;b=m;c[b>>2]=c[e>>2];c[b+4>>2]=d}b=yD(c[n>>2]|0)|0;c[f>>2]=b;c[h>>2]=b;while(1){b=c[f>>2]|0;c[f>>2]=b+ -1;if((b|0)==0){break}a[(c[k>>2]|0)+(c[f>>2]|0)>>0]=c[m>>2]&255;d=m;d=eL(c[d>>2]|0,c[d+4>>2]|0,8)|0;b=m;c[b>>2]=d;c[b+4>>2]=D}c[g>>2]=c[h>>2];b=c[g>>2]|0;i=l;return b|0}function WF(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+32|0;k=o+28|0;m=o+12|0;l=o+8|0;q=o;p=o+16|0;n=o+20|0;h=o+24|0;c[m>>2]=f;c[l>>2]=g;f=q;c[f>>2]=0;c[f+4>>2]=0;if((c[(c[m>>2]|0)+68>>2]|0)==0){f=c[l>>2]|0;c[f>>2]=0;c[f+4>>2]=0;c[k>>2]=0;f=c[k>>2]|0;i=o;return f|0}c[p>>2]=lD(c[m>>2]|0)|0;a:while(1){if((c[p>>2]|0)!=0){j=16;break}c[h>>2]=c[(c[m>>2]|0)+128+(b[(c[m>>2]|0)+84>>1]<<2)>>2];if((d[(c[h>>2]|0)+3>>0]|0)!=0){j=7}else{if((a[(c[h>>2]|0)+2>>0]|0)==0){j=7}}if((j|0)==7){j=0;g=q;g=dL(c[g>>2]|0,c[g+4>>2]|0,e[(c[h>>2]|0)+16>>1]|0,0)|0;f=q;c[f>>2]=g;c[f+4>>2]=D}if((a[(c[h>>2]|0)+3>>0]|0)!=0){do{if((b[(c[m>>2]|0)+84>>1]|0)==0){j=10;break a}bD(c[m>>2]|0)}while((e[(c[m>>2]|0)+86+(b[(c[m>>2]|0)+84>>1]<<1)>>1]|0)>=(e[(c[(c[m>>2]|0)+128+(b[(c[m>>2]|0)+84>>1]<<2)>>2]|0)+16>>1]|0));f=(c[m>>2]|0)+86+(b[(c[m>>2]|0)+84>>1]<<1)|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;c[h>>2]=c[(c[m>>2]|0)+128+(b[(c[m>>2]|0)+84>>1]<<2)>>2]}c[n>>2]=e[(c[m>>2]|0)+86+(b[(c[m>>2]|0)+84>>1]<<1)>>1]|0;f=c[m>>2]|0;g=c[h>>2]|0;if((c[n>>2]|0)==(e[(c[h>>2]|0)+16>>1]|0)){c[p>>2]=$C(f,zo((c[(c[h>>2]|0)+56>>2]|0)+((d[g+5>>0]|0)+8)|0)|0)|0;continue}else{c[p>>2]=$C(f,zo((c[g+56>>2]|0)+(e[(c[h>>2]|0)+18>>1]&(d[(c[(c[h>>2]|0)+64>>2]|0)+(c[n>>2]<<1)>>0]<<8|d[(c[(c[h>>2]|0)+64>>2]|0)+(c[n>>2]<<1)+1>>0]))|0)|0)|0;continue}}if((j|0)==10){g=c[q+4>>2]|0;f=c[l>>2]|0;c[f>>2]=c[q>>2];c[f+4>>2]=g;c[k>>2]=0;f=c[k>>2]|0;i=o;return f|0}else if((j|0)==16){c[k>>2]=c[p>>2];f=c[k>>2]|0;i=o;return f|0}return 0}function XF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;m=f+28|0;g=f;k=f+4|0;e=f+8|0;n=f+12|0;l=f+16|0;j=f+20|0;h=f+24|0;c[m>>2]=a;c[g>>2]=b;c[k>>2]=d;c[e>>2]=0;if((c[(c[m>>2]|0)+320>>2]|0)==0){a=c[e>>2]|0;i=f;return a|0}c[n>>2]=0;while(1){if((c[e>>2]|0)!=0){g=15;break}if((c[n>>2]|0)>=(c[(c[m>>2]|0)+296>>2]|0)){g=15;break}c[l>>2]=c[(c[(c[m>>2]|0)+320>>2]|0)+(c[n>>2]<<2)>>2];c[j>>2]=c[c[(c[l>>2]|0)+4>>2]>>2];if((c[(c[l>>2]|0)+8>>2]|0)!=0){if((c[c[j>>2]>>2]|0)>=2){d=c[g>>2]|0;if((d|0)==2){c[h>>2]=c[(c[j>>2]|0)+88>>2]}else if((d|0)==0){c[h>>2]=c[(c[j>>2]|0)+80>>2];c[(c[l>>2]|0)+20>>2]=(c[k>>2]|0)+1}else{c[h>>2]=c[(c[j>>2]|0)+84>>2]}if((c[h>>2]|0)!=0){if((c[(c[l>>2]|0)+20>>2]|0)>(c[k>>2]|0)){c[e>>2]=zb[c[h>>2]&127](c[(c[l>>2]|0)+8>>2]|0,c[k>>2]|0)|0}}}}c[n>>2]=(c[n>>2]|0)+1}if((g|0)==15){a=c[e>>2]|0;i=f;return a|0}return 0}function YF(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;h=f;g=f+4|0;j=f+8|0;c[k>>2]=d;c[h>>2]=e;if((c[k>>2]|0)==0){i=f;return}Uc(c[k>>2]|0);c[g>>2]=c[(c[(c[k>>2]|0)+4>>2]|0)+8>>2];while(1){if((c[g>>2]|0)==0){break}Fr(c[g>>2]|0);a[(c[g>>2]|0)+81>>0]=4;c[(c[g>>2]|0)+76>>2]=c[h>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>(b[(c[g>>2]|0)+84>>1]|0)){break}Gr(c[(c[g>>2]|0)+128+(c[j>>2]<<2)>>2]|0);c[(c[g>>2]|0)+128+(c[j>>2]<<2)>>2]=0;c[j>>2]=(c[j>>2]|0)+1}c[g>>2]=c[(c[g>>2]|0)+8>>2]}i=f;return}function ZF(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;j=g+16|0;l=g;m=g+4|0;h=g+8|0;k=g+12|0;c[j>>2]=a;c[l>>2]=e;c[m>>2]=f;c[h>>2]=0;if((c[j>>2]|0)==0){a=c[h>>2]|0;i=g;return a|0}if((d[(c[j>>2]|0)+8>>0]|0|0)!=2){a=c[h>>2]|0;i=g;return a|0}c[k>>2]=c[(c[j>>2]|0)+4>>2];Uc(c[j>>2]|0);c[h>>2]=lp(c[c[k>>2]>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if((c[h>>2]|0)!=0){a=c[h>>2]|0;i=g;return a|0}if((c[m>>2]|0)<0){if((b[(c[k>>2]|0)+22>>1]&8|0)!=0){c[(c[k>>2]|0)+44>>2]=0}}c[h>>2]=SI(c[k>>2]|0)|0;a=zo((c[(c[(c[k>>2]|0)+12>>2]|0)+56>>2]|0)+28|0)|0;c[(c[k>>2]|0)+44>>2]=a;a=c[h>>2]|0;i=g;return a|0}function _F(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+12|0;f=e;d=e+4|0;g=e+8|0;c[h>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[h>>2]|0)+4>>2];Uc(c[h>>2]|0);c[d>>2]=QI(c[c[g>>2]>>2]|0,c[f>>2]|0)|0;i=e;return c[d>>2]|0}function $F(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+32|0;q=j+28|0;r=j;l=j+4|0;k=j+8|0;m=j+12|0;n=j+16|0;p=j+20|0;o=j+24|0;c[q>>2]=d;c[r>>2]=e;c[l>>2]=f;c[k>>2]=g;c[m>>2]=h;c[n>>2]=(c[(c[q>>2]|0)+8>>2]|0)+(((c[(c[q>>2]|0)+28>>2]|0)-(c[r>>2]|0)|0)*40|0);c[o>>2]=0;g=96+(c[l>>2]<<3)|0;if((c[m>>2]|0)!=0){h=OI()|0}else{h=0}c[p>>2]=g+h;if((c[(c[(c[q>>2]|0)+56>>2]|0)+(c[r>>2]<<2)>>2]|0)!=0){eG(c[q>>2]|0,c[(c[(c[q>>2]|0)+56>>2]|0)+(c[r>>2]<<2)>>2]|0);c[(c[(c[q>>2]|0)+56>>2]|0)+(c[r>>2]<<2)>>2]=0}if(0!=(ue(c[n>>2]|0,c[p>>2]|0,0)|0)){d=c[o>>2]|0;i=j;return d|0}p=c[(c[n>>2]|0)+4>>2]|0;c[o>>2]=p;c[(c[(c[q>>2]|0)+56>>2]|0)+(c[r>>2]<<2)>>2]=p;q=(c[o>>2]|0)+0|0;p=q+96|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(p|0));a[(c[o>>2]|0)+24>>0]=c[k>>2];b[(c[o>>2]|0)+20>>1]=c[l>>2];if((c[m>>2]|0)==0){d=c[o>>2]|0;i=j;return d|0}c[c[o>>2]>>2]=(c[(c[n>>2]|0)+4>>2]|0)+(96+(c[l>>2]<<3));PI(c[c[o>>2]>>2]|0);d=c[o>>2]|0;i=j;return d|0}function aG(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;n=h+20|0;m=h;l=h+4|0;k=h+8|0;j=h+12|0;g=h+16|0;c[n>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;Uc(c[n>>2]|0);c[g>>2]=NI(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;i=h;return c[g>>2]|0}function bG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[(c[f>>2]|0)+82>>0]=c[g>>2];i=e;return}function cG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+12|0;h=f;g=f+4|0;e=f+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;Uc(c[j>>2]|0);c[e>>2]=MI(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return c[e>>2]|0}function dG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+24|0;f=d;k=d+4|0;g=d+8|0;j=d+12|0;h=d+16|0;c[f>>2]=a;c[k>>2]=b;a=ve(c[f>>2]|0,56)|0;c[h>>2]=a;c[(c[k>>2]|0)+64>>2]=a;if((c[h>>2]|0)==0){c[e>>2]=7;a=c[e>>2]|0;i=d;return a|0}a=hD(c[(c[k>>2]|0)+8>>2]|0,0,0,d+20|0)|0;c[(c[h>>2]|0)+52>>2]=a;if((c[(c[h>>2]|0)+52>>2]|0)==0){c[e>>2]=7;a=c[e>>2]|0;i=d;return a|0}if((po(c[f>>2]|0)|0)==0){c[g>>2]=Zc(c[(c[(c[f>>2]|0)+16>>2]|0)+4>>2]|0)|0;c[(c[h>>2]|0)+28>>2]=(c[g>>2]|0)*10;a=c[(c[(c[(c[f>>2]|0)+16>>2]|0)+12>>2]|0)+80>>2]|0;c[j>>2]=a;c[j>>2]=(c[j>>2]|0)<10?10:a;a=$(c[j>>2]|0,c[g>>2]|0)|0;c[(c[h>>2]|0)+32>>2]=a}c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}function eG(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;f=e;g=e+4|0;h=e+8|0;c[j>>2]=a;c[f>>2]=d;if((c[f>>2]|0)==0){i=e;return}LI(c[c[j>>2]>>2]|0,c[f>>2]|0);d=c[f>>2]|0;if((c[(c[f>>2]|0)+4>>2]|0)!=0){zr(c[d+4>>2]|0)|0}else{if((c[d>>2]|0)!=0){Dr(c[c[f>>2]>>2]|0)|0}}if((c[(c[f>>2]|0)+32>>2]|0)==0){i=e;return}c[g>>2]=c[(c[f>>2]|0)+32>>2];c[h>>2]=c[c[c[g>>2]>>2]>>2];a=(c[j>>2]|0)+88|0;b[a>>1]=b[a>>1]&-13|4;ub[c[(c[h>>2]|0)+28>>2]&63](c[g>>2]|0)|0;a=(c[j>>2]|0)+88|0;b[a>>1]=b[a>>1]&-13;i=e;return}function fG(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return 1!=(d[(c[b>>2]|0)+81>>0]|0|0)|0}function gG(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;j=f;k=f+4|0;h=f+8|0;c[j>>2]=b;c[k>>2]=e;if(1==(d[(c[j>>2]|0)+81>>0]|0|0)){if((a[(c[j>>2]|0)+80>>0]&8|0)!=0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}}c[h>>2]=lD(c[j>>2]|0)|0;do{if((c[h>>2]|0)==0){e=c[k>>2]|0;if(0==(d[(c[j>>2]|0)+81>>0]|0|0)){c[e>>2]=1;break}c[e>>2]=0;c[h>>2]=aD(c[j>>2]|0)|0;j=(c[j>>2]|0)+80|0;e=d[j>>0]|0;if((c[h>>2]|0)==0){a[j>>0]=e|8;break}else{a[j>>0]=e&-9;break}}}while(0);c[g>>2]=c[h>>2];b=c[g>>2]|0;i=f;return b|0}function hG(f,g,h,j,k,l,m,n,o){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0;C=i;i=i+80|0;q=C+12|0;r=C+72|0;w=C+68|0;t=C;x=C+64|0;y=C+60|0;z=C+56|0;p=C+52|0;J=C+48|0;s=C+44|0;E=C+28|0;A=C+8|0;F=C+16|0;u=C+24|0;H=C+20|0;B=C+32|0;G=C+36|0;v=C+40|0;I=C+76|0;c[r>>2]=f;c[w>>2]=g;f=t;c[f>>2]=h;c[f+4>>2]=j;c[x>>2]=k;c[y>>2]=l;c[z>>2]=m;c[p>>2]=n;c[J>>2]=o;c[E>>2]=c[J>>2];c[A>>2]=0;c[H>>2]=c[c[r>>2]>>2];c[B>>2]=c[(c[H>>2]|0)+4>>2];c[v>>2]=0;if((d[(c[r>>2]|0)+81>>0]|0)==4){c[q>>2]=c[(c[r>>2]|0)+76>>2];J=c[q>>2]|0;i=C;return J|0}c[s>>2]=hF(c[B>>2]|0,c[(c[r>>2]|0)+68>>2]|0,c[r>>2]|0)|0;if((c[s>>2]|0)!=0){c[q>>2]=c[s>>2];J=c[q>>2]|0;i=C;return J|0}if((c[(c[r>>2]|0)+16>>2]|0)==0){J=t;UH(c[H>>2]|0,c[J>>2]|0,c[J+4>>2]|0,0);if((a[(c[r>>2]|0)+80>>0]&2|0)!=0){J=t;f=c[J+4>>2]|0;if((f|0)>0|(f|0)==0&(c[J>>2]|0)>>>0>0){J=(c[r>>2]|0)+24|0;g=c[J>>2]|0;J=c[J+4>>2]|0;f=t;f=$K(c[f>>2]|0,c[f+4>>2]|0,1,0)|0;if((g|0)==(f|0)&(J|0)==(D|0)){c[E>>2]=-1}}}}if((c[E>>2]|0)==0){J=t;c[s>>2]=gD(c[r>>2]|0,c[w>>2]|0,c[J>>2]|0,c[J+4>>2]|0,c[p>>2]|0,E)|0;if((c[s>>2]|0)!=0){c[q>>2]=c[s>>2];J=c[q>>2]|0;i=C;return J|0}}c[u>>2]=c[(c[r>>2]|0)+128+(b[(c[r>>2]|0)+84>>1]<<2)>>2];xI(c[B>>2]|0);c[v>>2]=c[(c[B>>2]|0)+80>>2];if((c[v>>2]|0)==0){c[q>>2]=7;J=c[q>>2]|0;i=C;return J|0}J=t;c[s>>2]=KI(c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,c[J>>2]|0,c[J+4>>2]|0,c[x>>2]|0,c[y>>2]|0,c[z>>2]|0,A)|0;do{if((c[s>>2]|0)==0){c[F>>2]=e[(c[r>>2]|0)+86+(b[(c[r>>2]|0)+84>>1]<<1)>>1]|0;if((c[E>>2]|0)==0){c[s>>2]=ld(c[(c[u>>2]|0)+68>>2]|0)|0;if((c[s>>2]|0)!=0){break}c[G>>2]=(c[(c[u>>2]|0)+56>>2]|0)+(e[(c[u>>2]|0)+18>>1]&(d[(c[(c[u>>2]|0)+64>>2]|0)+(c[F>>2]<<1)>>0]<<8|d[(c[(c[u>>2]|0)+64>>2]|0)+(c[F>>2]<<1)+1>>0]));if((a[(c[u>>2]|0)+3>>0]|0)==0){J=c[v>>2]|0;f=c[G>>2]|0;a[J+0>>0]=a[f+0>>0]|0;a[J+1>>0]=a[f+1>>0]|0;a[J+2>>0]=a[f+2>>0]|0;a[J+3>>0]=a[f+3>>0]|0}b[I>>1]=QH(c[u>>2]|0,c[G>>2]|0)|0;c[s>>2]=WH(c[u>>2]|0,c[G>>2]|0)|0;wI(c[u>>2]|0,c[F>>2]|0,e[I>>1]|0,s);if((c[s>>2]|0)!=0){break}}else{if((c[E>>2]|0)<0){if((e[(c[u>>2]|0)+16>>1]|0)>0){f=(c[r>>2]|0)+86+(b[(c[r>>2]|0)+84>>1]<<1)|0;J=(b[f>>1]|0)+1<<16>>16;b[f>>1]=J;c[F>>2]=J&65535}}}yI(c[u>>2]|0,c[F>>2]|0,c[v>>2]|0,c[A>>2]|0,0,0,s);b[(c[r>>2]|0)+50>>1]=0;if((c[s>>2]|0)==0){if((d[(c[u>>2]|0)+1>>0]|0)!=0){J=(c[r>>2]|0)+80|0;a[J>>0]=d[J>>0]&-3;c[s>>2]=zI(c[r>>2]|0)|0;a[(c[(c[r>>2]|0)+128+(b[(c[r>>2]|0)+84>>1]<<2)>>2]|0)+1>>0]=0;a[(c[r>>2]|0)+81>>0]=0}}}}while(0);c[q>>2]=c[s>>2];J=c[q>>2]|0;i=C;return J|0}function iG(f){f=f|0;var g=0,h=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;h=i;i=i+64|0;g=h+52|0;j=h+48|0;m=h+44|0;p=h+40|0;k=h+36|0;o=h+32|0;s=h+28|0;n=h+24|0;l=h+16|0;q=h+12|0;r=h+8|0;u=h+4|0;t=h;v=h+20|0;c[j>>2]=f;c[m>>2]=c[c[j>>2]>>2];c[p>>2]=c[(c[m>>2]|0)+4>>2];if((e[(c[j>>2]|0)+86+(b[(c[j>>2]|0)+84>>1]<<1)>>1]|0)<(e[(c[(c[j>>2]|0)+128+(b[(c[j>>2]|0)+84>>1]<<2)>>2]|0)+16>>1]|0)){if((d[(c[j>>2]|0)+81>>0]|0)==1){c[l>>2]=b[(c[j>>2]|0)+84>>1]|0;c[n>>2]=e[(c[j>>2]|0)+86+(c[l>>2]<<1)>>1]|0;c[o>>2]=c[(c[j>>2]|0)+128+(c[l>>2]<<2)>>2];c[s>>2]=(c[(c[o>>2]|0)+56>>2]|0)+(e[(c[o>>2]|0)+18>>1]&(d[(c[(c[o>>2]|0)+64>>2]|0)+(c[n>>2]<<1)>>0]<<8|d[(c[(c[o>>2]|0)+64>>2]|0)+(c[n>>2]<<1)+1>>0]));if((a[(c[o>>2]|0)+3>>0]|0)==0){c[q>>2]=0;c[k>>2]=ZC(c[j>>2]|0,q)|0;if((c[k>>2]|0)!=0){c[g>>2]=c[k>>2];v=c[g>>2]|0;i=h;return v|0}}c[k>>2]=hF(c[p>>2]|0,c[(c[j>>2]|0)+68>>2]|0,c[j>>2]|0)|0;if((c[k>>2]|0)!=0){c[g>>2]=c[k>>2];v=c[g>>2]|0;i=h;return v|0}if((c[(c[j>>2]|0)+16>>2]|0)==0){q=(c[j>>2]|0)+24|0;UH(c[m>>2]|0,c[q>>2]|0,c[q+4>>2]|0,0)}c[k>>2]=ld(c[(c[o>>2]|0)+68>>2]|0)|0;if((c[k>>2]|0)!=0){c[g>>2]=c[k>>2];v=c[g>>2]|0;i=h;return v|0}c[k>>2]=WH(c[o>>2]|0,c[s>>2]|0)|0;f=c[o>>2]|0;q=c[n>>2]|0;wI(f,q,(QH(c[o>>2]|0,c[s>>2]|0)|0)&65535,k);if((c[k>>2]|0)!=0){c[g>>2]=c[k>>2];v=c[g>>2]|0;i=h;return v|0}if((a[(c[o>>2]|0)+3>>0]|0)==0){c[r>>2]=c[(c[j>>2]|0)+128+(b[(c[j>>2]|0)+84>>1]<<2)>>2];c[t>>2]=c[(c[(c[j>>2]|0)+128+((c[l>>2]|0)+1<<2)>>2]|0)+72>>2];c[s>>2]=(c[(c[r>>2]|0)+56>>2]|0)+(e[(c[r>>2]|0)+18>>1]&(d[(c[(c[r>>2]|0)+64>>2]|0)+((e[(c[r>>2]|0)+16>>1]|0)-1<<1)>>0]<<8|d[(c[(c[r>>2]|0)+64>>2]|0)+((e[(c[r>>2]|0)+16>>1]|0)-1<<1)+1>>0]));c[u>>2]=(QH(c[r>>2]|0,c[s>>2]|0)|0)&65535;xI(c[p>>2]|0);c[v>>2]=c[(c[p>>2]|0)+80>>2];c[k>>2]=ld(c[(c[r>>2]|0)+68>>2]|0)|0;yI(c[o>>2]|0,c[n>>2]|0,(c[s>>2]|0)+ -4|0,(c[u>>2]|0)+4|0,c[v>>2]|0,c[t>>2]|0,k);wI(c[r>>2]|0,(e[(c[r>>2]|0)+16>>1]|0)-1|0,c[u>>2]|0,k);if((c[k>>2]|0)!=0){c[g>>2]=c[k>>2];v=c[g>>2]|0;i=h;return v|0}}c[k>>2]=zI(c[j>>2]|0)|0;if((c[k>>2]|0)==0){if((b[(c[j>>2]|0)+84>>1]|0)>(c[l>>2]|0)){while(1){m=c[j>>2]|0;if((b[(c[j>>2]|0)+84>>1]|0)<=(c[l>>2]|0)){break}u=m+84|0;v=b[u>>1]|0;b[u>>1]=v+ -1<<16>>16;Gr(c[(c[j>>2]|0)+128+(v<<16>>16<<2)>>2]|0)}c[k>>2]=zI(m)|0}}if((c[k>>2]|0)==0){lD(c[j>>2]|0)|0}c[g>>2]=c[k>>2];v=c[g>>2]|0;i=h;return v|0}}c[g>>2]=1;v=c[g>>2]|0;i=h;return v|0}function jG(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;m=f+24|0;k=f;l=f+4|0;g=f+8|0;n=f+12|0;j=f+16|0;h=f+20|0;c[m>>2]=a;c[k>>2]=b;c[l>>2]=d;c[g>>2]=e;c[n>>2]=c[(c[m>>2]|0)+64>>2];c[j>>2]=vI(c[n>>2]|0,h)|0;oI(c[m>>2]|0,c[l>>2]|0,c[(c[k>>2]|0)+4>>2]|0,c[(c[k>>2]|0)+24>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0);i=f;return 0}function kG(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;m=f;k=f+4|0;l=f+8|0;j=f+12|0;h=f+16|0;c[m>>2]=a;c[k>>2]=d;c[l>>2]=c[(c[m>>2]|0)+64>>2];c[j>>2]=vI(c[l>>2]|0,h)|0;if((ue(c[k>>2]|0,c[h>>2]|0,0)|0)!=0){c[g>>2]=7;m=c[g>>2]|0;i=f;return m|0}else{c[(c[k>>2]|0)+24>>2]=c[h>>2];b[(c[k>>2]|0)+28>>1]=(e[(c[k>>2]|0)+28>>1]|0)&-16896|16;fL(c[(c[k>>2]|0)+4>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;c[g>>2]=0;m=c[g>>2]|0;i=f;return m|0}return 0}function lG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;e=d;g=d+4|0;c[f>>2]=a;c[e>>2]=b;c[g>>2]=c[c[f>>2]>>2];cc(c[g>>2]|0,c[(c[f>>2]|0)+44>>2]|0);a=pe(c[g>>2]|0,c[(c[e>>2]|0)+8>>2]|0)|0;c[(c[f>>2]|0)+44>>2]=a;oc(c[(c[e>>2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>>2]=0;i=d;return}function mG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=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;q=i;i=i+128|0;o=q+112|0;p=q+108|0;g=q+104|0;h=q+100|0;j=q+96|0;k=q+92|0;l=q+88|0;e=q;x=q+84|0;w=q+80|0;v=q+56|0;n=q+64|0;t=q+60|0;s=q+16|0;f=q+8|0;r=q+68|0;u=q+72|0;m=q+76|0;c[p>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[(c[g>>2]|0)+64>>2];c[l>>2]=0;a=e;c[a>>2]=0;c[a+4>>2]=0;c[v>>2]=2;if((c[(c[j>>2]|0)+24>>2]|0)==0){c[c[h>>2]>>2]=((c[(c[j>>2]|0)+48>>2]|0)!=0^1)&1;c[o>>2]=fI(c[g>>2]|0)|0;a=c[o>>2]|0;i=q;return a|0}c[k>>2]=eI(c[p>>2]|0,c[g>>2]|0)|0;if((c[k>>2]|0)!=0){c[o>>2]=c[k>>2];a=c[o>>2]|0;i=q;return a|0}a=c[(c[j>>2]|0)+24>>2]|0;c[x>>2]=a;c[x>>2]=(c[x>>2]|0)>16?16:a;while(1){d=c[v>>2]|0;if((c[v>>2]|0)>=(c[x>>2]|0)){break}c[v>>2]=(c[v>>2]|0)+d}c[w>>2]=d*52;a=ve(c[p>>2]|0,c[w>>2]|0)|0;c[(c[j>>2]|0)+36>>2]=a;if((c[(c[j>>2]|0)+36>>2]|0)==0){c[o>>2]=7;a=c[o>>2]|0;i=q;return a|0}c[(c[j>>2]|0)+40>>2]=(c[(c[j>>2]|0)+36>>2]|0)+((c[v>>2]|0)*48|0);c[(c[j>>2]|0)+20>>2]=c[v>>2];do{c[n>>2]=0;while(1){if((c[k>>2]|0)!=0){break}if((c[n>>2]<<4|0)>=(c[(c[j>>2]|0)+24>>2]|0)){break}w=s+0|0;v=w+40|0;do{c[w>>2]=0;w=w+4|0}while((w|0)<(v|0));c[k>>2]=sI(c[p>>2]|0,c[g>>2]|0,f)|0;if((c[k>>2]|0)!=0){break}if((c[(c[j>>2]|0)+24>>2]|0)<=16){break}if((c[l>>2]|0)==0){c[k>>2]=gI(c[p>>2]|0,l)|0}if((c[k>>2]|0)==0){c[r>>2]=0;a=e;hI(c[p>>2]|0,c[l>>2]|0,s,c[a>>2]|0,c[a+4>>2]|0);a=f;iI(s,c[a>>2]|0,c[a+4>>2]|0);while(1){if((c[k>>2]|0)!=0){break}if((c[r>>2]|0)!=0){break}c[u>>2]=(c[(c[j>>2]|0)+36>>2]|0)+((c[(c[(c[j>>2]|0)+40>>2]|0)+4>>2]|0)*48|0);a=c[(c[u>>2]|0)+20>>2]|0;iI(s,a,((a|0)<0)<<31>>31);jI(s,c[(c[u>>2]|0)+32>>2]|0,c[(c[u>>2]|0)+20>>2]|0);c[k>>2]=oG(c[p>>2]|0,c[g>>2]|0,r)|0}c[t>>2]=kI(c[p>>2]|0,s,e)|0;if((c[k>>2]|0)==0){c[k>>2]=c[t>>2]}}c[n>>2]=(c[n>>2]|0)+1}if((c[(c[j>>2]|0)+24>>2]|0)<=16){break}c[m>>2]=c[(c[j>>2]|0)+44>>2];c[(c[j>>2]|0)+24>>2]=c[n>>2];c[(c[j>>2]|0)+44>>2]=c[l>>2];c[l>>2]=c[m>>2];d=e;b=c[d+4>>2]|0;a=c[j>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;a=(c[j>>2]|0)+8|0;c[a>>2]=0;c[a+4>>2]=0;a=e;c[a>>2]=0;c[a+4>>2]=0}while((c[k>>2]|0)==0);if((c[l>>2]|0)!=0){SH(c[l>>2]|0)|0}c[c[h>>2]>>2]=(c[(c[(c[j>>2]|0)+36>>2]|0)+((c[(c[(c[j>>2]|0)+40>>2]|0)+4>>2]|0)*48|0)+24>>2]|0)==0&1;c[o>>2]=c[k>>2];a=c[o>>2]|0;i=q;return a|0}function nG(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;g=f+8|0;h=f;e=f+4|0;c[g>>2]=a;c[h>>2]=b;c[e>>2]=lD(c[g>>2]|0)|0;do{if((c[e>>2]|0)==0){b=c[h>>2]|0;if((d[(c[g>>2]|0)+81>>0]|0|0)==0){c[b>>2]=1;break}else{c[b>>2]=0;c[e>>2]=DD(c[g>>2]|0)|0;break}}}while(0);i=f;return c[e>>2]|0}function oG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;p=n+44|0;f=n+40|0;g=n+36|0;h=n+32|0;l=n+28|0;r=n+24|0;j=n+20|0;e=n+12|0;k=n+8|0;o=n+4|0;m=n;q=n+16|0;c[p>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[f>>2]|0)+64>>2];d=c[h>>2]|0;if((c[(c[h>>2]|0)+40>>2]|0)==0){c[q>>2]=c[d+48>>2];c[(c[h>>2]|0)+48>>2]=c[(c[q>>2]|0)+8>>2];c[(c[q>>2]|0)+8>>2]=0;TH(c[p>>2]|0,c[q>>2]|0);c[c[g>>2]>>2]=((c[(c[h>>2]|0)+48>>2]|0)!=0^1)&1;c[l>>2]=0;a=c[l>>2]|0;i=n;return a|0}c[r>>2]=c[(c[d+40>>2]|0)+4>>2];c[l>>2]=pI(c[p>>2]|0,(c[(c[h>>2]|0)+36>>2]|0)+((c[r>>2]|0)*48|0)|0)|0;if((c[l>>2]|0)!=0){a=c[l>>2]|0;i=n;return a|0}c[e>>2]=(c[(c[h>>2]|0)+36>>2]|0)+((c[r>>2]&65534)*48|0);c[k>>2]=(c[(c[h>>2]|0)+36>>2]|0)+((c[r>>2]|1)*48|0);c[o>>2]=c[(c[k>>2]|0)+32>>2];c[j>>2]=((c[(c[h>>2]|0)+20>>2]|0)+(c[r>>2]|0)|0)/2|0;while(1){if((c[j>>2]|0)<=0){break}do{if((c[(c[e>>2]|0)+24>>2]|0)==0){c[m>>2]=1}else{if((c[(c[k>>2]|0)+24>>2]|0)==0){c[m>>2]=-1;break}else{oI(c[f>>2]|0,0,c[(c[e>>2]|0)+32>>2]|0,c[(c[e>>2]|0)+20>>2]|0,c[o>>2]|0,c[(c[k>>2]|0)+20>>2]|0,m);break}}}while(0);p=c[e>>2]|0;if((c[m>>2]|0)<=0){c[(c[(c[h>>2]|0)+40>>2]|0)+(c[j>>2]<<2)>>2]=(p-(c[(c[h>>2]|0)+36>>2]|0)|0)/48|0;c[k>>2]=(c[(c[h>>2]|0)+36>>2]|0)+((c[(c[(c[h>>2]|0)+40>>2]|0)+((c[j>>2]^1)<<2)>>2]|0)*48|0);c[o>>2]=c[(c[k>>2]|0)+32>>2]}else{if((c[p+24>>2]|0)!=0){c[o>>2]=0}c[(c[(c[h>>2]|0)+40>>2]|0)+(c[j>>2]<<2)>>2]=((c[k>>2]|0)-(c[(c[h>>2]|0)+36>>2]|0)|0)/48|0;c[e>>2]=(c[(c[h>>2]|0)+36>>2]|0)+((c[(c[(c[h>>2]|0)+40>>2]|0)+((c[j>>2]^1)<<2)>>2]|0)*48|0)}c[j>>2]=(c[j>>2]|0)/2|0}c[c[g>>2]>>2]=(c[(c[(c[h>>2]|0)+36>>2]|0)+((c[(c[(c[h>>2]|0)+40>>2]|0)+4>>2]|0)*48|0)+24>>2]|0)==0&1;a=c[l>>2]|0;i=n;return a|0}function pG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;h=f+20|0;j=f;l=f+4|0;g=f+8|0;e=f+12|0;k=f+16|0;c[h>>2]=a;c[j>>2]=b;c[l>>2]=d;c[g>>2]=c[(c[j>>2]|0)+64>>2];c[e>>2]=0;b=c[(c[l>>2]|0)+24>>2]|0;b=BD(b,((b|0)<0)<<31>>31)|0;a=(c[g>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+(b+(c[(c[l>>2]|0)+24>>2]|0));c[k>>2]=$e(c[h>>2]|0,(c[(c[l>>2]|0)+24>>2]|0)+12|0)|0;if((c[k>>2]|0)==0){c[e>>2]=7}else{c[c[k>>2]>>2]=(c[k>>2]|0)+12;fL(c[c[k>>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0,c[(c[l>>2]|0)+24>>2]|0)|0;c[(c[k>>2]|0)+4>>2]=c[(c[l>>2]|0)+24>>2];c[(c[k>>2]|0)+8>>2]=c[(c[g>>2]|0)+48>>2];c[(c[g>>2]|0)+48>>2]=c[k>>2]}if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=f;return a|0}if((c[(c[g>>2]|0)+32>>2]|0)<=0){a=c[e>>2]|0;i=f;return a|0}if((c[(c[g>>2]|0)+16>>2]|0)<=(c[(c[g>>2]|0)+32>>2]|0)){if((c[(c[g>>2]|0)+16>>2]|0)<=(c[(c[g>>2]|0)+28>>2]|0)){a=c[e>>2]|0;i=f;return a|0}if((gs()|0)==0){a=c[e>>2]|0;i=f;return a|0}}c[e>>2]=eI(c[h>>2]|0,c[j>>2]|0)|0;c[(c[g>>2]|0)+16>>2]=0;a=c[e>>2]|0;i=f;return a|0}function qG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+128|0;k=f+116|0;p=f+108|0;n=f+104|0;o=f+40|0;q=f+92|0;m=f+96|0;l=f+88|0;g=f+100|0;h=f;j=f+48|0;c[f+112>>2]=a;c[p>>2]=b;c[n>>2]=e;b=o;c[b>>2]=0;c[b+4>>2]=0;kF(c[p>>2]|0,o)|0;b=h+0|0;e=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[q>>2]=SF(c[p>>2]|0,0,c[o>>2]|0,1,h)|0;if((c[q>>2]|0)!=0){c[k>>2]=c[q>>2];a=c[k>>2]|0;i=f;return a|0}o=c[h+4>>2]|0;if((d[c[h+4>>2]>>0]|0|0)<128){c[m>>2]=d[o>>0]|0}else{uD(o,m)|0}if(!((c[m>>2]|0)>>>0<3)){if((c[m>>2]|0)<=(c[h+24>>2]|0)){o=(c[h+4>>2]|0)+((c[m>>2]|0)-1)|0;if((d[(c[h+4>>2]|0)+((c[m>>2]|0)-1)>>0]|0|0)<128){c[l>>2]=d[o>>0]|0}else{uD(o,l)|0}if(!((c[l>>2]|0)>>>0<1|(c[l>>2]|0)>>>0>9|(c[l>>2]|0)==7)){c[g>>2]=yD(c[l>>2]|0)|0;if(!((c[h+24>>2]|0)>>>0<((c[m>>2]|0)+(c[g>>2]|0)|0)>>>0)){zD((c[h+4>>2]|0)+((c[h+24>>2]|0)-(c[g>>2]|0))|0,c[l>>2]|0,j)|0;e=j+16|0;b=c[e+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=b;Gd(h);c[k>>2]=0;a=c[k>>2]|0;i=f;return a|0}}}}Gd(h);c[k>>2]=dq(65606)|0;a=c[k>>2]|0;i=f;return a|0}function rG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+80|0;f=k+68|0;h=k+64|0;m=k+52|0;g=k+48|0;j=k;l=k+56|0;n=k+60|0;e=k+8|0;c[h>>2]=a;c[m>>2]=b;c[g>>2]=d;d=j;c[d>>2]=0;c[d+4>>2]=0;c[n>>2]=c[c[h>>2]>>2];kF(c[n>>2]|0,j)|0;d=j;n=c[d+4>>2]|0;a=j;b=c[a+4>>2]|0;if((n|0)<0|(n|0)==0&(c[d>>2]|0)>>>0<=0|((b|0)>0|(b|0)==0&(c[a>>2]|0)>>>0>2147483647)){c[c[g>>2]>>2]=0;c[f>>2]=dq(65637)|0;n=c[f>>2]|0;i=k;return n|0}b=e+0|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));c[l>>2]=SF(c[c[h>>2]>>2]|0,0,c[j>>2]|0,1,e)|0;if((c[l>>2]|0)!=0){c[f>>2]=c[l>>2];n=c[f>>2]|0;i=k;return n|0}else{n=xD(c[e+24>>2]|0,c[e+4>>2]|0,c[m>>2]|0,0)|0;c[c[g>>2]>>2]=n;Gd(e);c[f>>2]=0;n=c[f>>2]|0;i=k;return n|0}return 0}function sG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+12|0;h=f;g=f+4|0;e=f+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;Uc(c[j>>2]|0);c[e>>2]=dI(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return c[e>>2]|0}function tG(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+48|0;p=l+32|0;o=l+28|0;k=l+24|0;g=l+20|0;j=l+16|0;m=l+8|0;f=l+4|0;n=l;h=l+12|0;c[p>>2]=a;c[o>>2]=b;c[k>>2]=d;c[g>>2]=e;c[f>>2]=(c[(c[p>>2]|0)+16>>2]|0)+(c[o>>2]<<4);c[m>>2]=(c[(c[f>>2]|0)+12>>2]|0)+8;c[j>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break}c[n>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[n>>2]|0)+32>>2]|0)==(c[k>>2]|0)){c[(c[n>>2]|0)+32>>2]=c[g>>2]}c[j>>2]=c[c[j>>2]>>2]}c[m>>2]=(c[(c[f>>2]|0)+12>>2]|0)+24;c[j>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break}c[h>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[h>>2]|0)+44>>2]|0)==(c[k>>2]|0)){c[(c[h>>2]|0)+44>>2]=c[g>>2]}c[j>>2]=c[c[j>>2]>>2]}i=l;return}function uG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;g=e+16|0;j=e;k=e+4|0;f=e+8|0;h=e+12|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[h>>2]=c[(c[g>>2]|0)+4>>2];Uc(c[g>>2]|0);c[f>>2]=hF(c[h>>2]|0,c[j>>2]|0,0)|0;if(0!=(c[f>>2]|0)){a=c[f>>2]|0;i=e;return a|0}UH(c[g>>2]|0,0,0,1);c[f>>2]=VH(c[h>>2]|0,c[j>>2]|0,0,c[k>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}function vG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;e=f;g=f+4|0;c[d>>2]=a;c[e>>2]=b;if((c[(c[e>>2]|0)+36>>2]|0)!=0){c[g>>2]=0;while(1){b=c[d>>2]|0;if((c[g>>2]|0)>=(c[(c[e>>2]|0)+20>>2]|0)){break}RH(b,(c[(c[e>>2]|0)+36>>2]|0)+((c[g>>2]|0)*48|0)|0);c[g>>2]=(c[g>>2]|0)+1}cc(b,c[(c[e>>2]|0)+36>>2]|0);c[(c[e>>2]|0)+36>>2]=0}if((c[(c[e>>2]|0)+44>>2]|0)!=0){SH(c[(c[e>>2]|0)+44>>2]|0)|0;c[(c[e>>2]|0)+44>>2]=0}TH(c[d>>2]|0,c[(c[e>>2]|0)+48>>2]|0);c[(c[e>>2]|0)+48>>2]=0;a=c[e>>2]|0;c[a>>2]=0;c[a+4>>2]=0;a=(c[e>>2]|0)+8|0;c[a>>2]=0;c[a+4>>2]=0;c[(c[e>>2]|0)+16>>2]=0;c[(c[e>>2]|0)+20>>2]=0;c[(c[e>>2]|0)+24>>2]=0;c[(c[e>>2]|0)+40>>2]=0;i=f;return}function wG(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=uG(c[c[d>>2]>>2]|0,c[(c[d>>2]|0)+68>>2]|0,0)|0;i=b;return a|0}function xG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;k=e;h=e+4|0;g=e+8|0;j=e+12|0;c[f>>2]=a;c[k>>2]=b;c[h>>2]=d;c[j>>2]=(c[(c[f>>2]|0)+16>>2]|0)+(c[k>>2]<<4);b=(c[(c[j>>2]|0)+12>>2]|0)+8|0;a=c[h>>2]|0;c[g>>2]=Eh(b,a,Ub(c[h>>2]|0)|0,0)|0;ac(c[f>>2]|0,c[g>>2]|0);a=(c[f>>2]|0)+24|0;c[a>>2]=c[a>>2]|2;i=e;return}function yG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+24|0;m=e;k=e+4|0;g=e+8|0;j=e+12|0;l=e+16|0;h=e+20|0;c[f>>2]=a;c[m>>2]=b;c[k>>2]=d;c[l>>2]=(c[(c[(c[f>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+12>>2]|0)+24;c[j>>2]=Ub(c[k>>2]|0)|0;c[g>>2]=Eh(c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,0)|0;if((c[g>>2]|0)==0){m=c[f>>2]|0;m=m+24|0;l=c[m>>2]|0;l=l|2;c[m>>2]=l;i=e;return}d=c[g>>2]|0;if((c[(c[(c[g>>2]|0)+12>>2]|0)+8>>2]|0)==(c[g>>2]|0)){c[(c[(c[g>>2]|0)+12>>2]|0)+8>>2]=c[d+20>>2]}else{c[h>>2]=c[(c[d+12>>2]|0)+8>>2];while(1){if((c[h>>2]|0)!=0){b=(c[(c[h>>2]|0)+20>>2]|0)!=(c[g>>2]|0)}else{b=0}d=c[h>>2]|0;if(!b){break}c[h>>2]=c[d+20>>2]}if((d|0)!=0){if((c[(c[h>>2]|0)+20>>2]|0)==(c[g>>2]|0)){c[(c[h>>2]|0)+20>>2]=c[(c[g>>2]|0)+20>>2]}}}NE(c[f>>2]|0,c[g>>2]|0);m=c[f>>2]|0;m=m+24|0;l=c[m>>2]|0;l=l|2;c[m>>2]=l;i=e;return}function zG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;h=e+24|0;m=e;k=e+4|0;f=e+8|0;l=e+12|0;j=e+16|0;g=e+20|0;c[h>>2]=a;c[m>>2]=b;c[k>>2]=d;c[l>>2]=(c[(c[(c[h>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+12>>2]|0)+40;b=c[l>>2]|0;a=c[k>>2]|0;c[f>>2]=Eh(b,a,Ub(c[k>>2]|0)|0,0)|0;if((c[f>>2]|0)==0){i=e;return}if((c[(c[f>>2]|0)+20>>2]|0)==(c[(c[f>>2]|0)+24>>2]|0)){c[j>>2]=gA(c[f>>2]|0)|0;c[g>>2]=(c[j>>2]|0)+64;while(1){d=(c[c[g>>2]>>2]|0)+32|0;if((c[c[g>>2]>>2]|0)==(c[f>>2]|0)){break}c[g>>2]=d}c[c[g>>2]>>2]=c[d>>2]}$b(c[h>>2]|0,c[f>>2]|0);m=(c[h>>2]|0)+24|0;c[m>>2]=c[m>>2]|2;i=e;return}function AG(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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;p=i;i=i+208|0;q=p;k=p+96|0;u=p+92|0;r=p+88|0;s=p+84|0;t=p+80|0;l=p+76|0;j=p+68|0;m=p+64|0;o=p+8|0;n=p+72|0;c[u>>2]=b;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[l>>2]=h;c[n>>2]=c[(c[u>>2]|0)+4>>2];Uc(c[u>>2]|0);c[m>>2]=IH(c[c[n>>2]>>2]|0)|0;c[o>>2]=c[n>>2];c[o+4>>2]=c[c[n>>2]>>2];c[o+12>>2]=dD(c[o>>2]|0)|0;c[o+16>>2]=c[t>>2];c[o+20>>2]=0;c[o+24>>2]=0;c[c[l>>2]>>2]=0;if((c[o+12>>2]|0)==0){c[k>>2]=0;u=c[k>>2]|0;i=p;return u|0}c[o+8>>2]=Sc((((c[o+12>>2]|0)>>>0)/8|0)+1|0)|0;if((c[o+8>>2]|0)==0){c[c[l>>2]>>2]=1;c[k>>2]=0;u=c[k>>2]|0;i=p;return u|0}c[j>>2]=(((c[368]|0)>>>0)/((c[(c[n>>2]|0)+32>>2]|0)>>>0)|0)+1;if((c[j>>2]|0)>>>0<=(c[o+12>>2]|0)>>>0){JH(o,c[j>>2]|0)}tc(o+28|0,p+100|0,100,1e9);a[o+52>>0]=2;u=zo((c[(c[(c[n>>2]|0)+12>>2]|0)+56>>2]|0)+32|0)|0;KH(o,1,u,zo((c[(c[(c[n>>2]|0)+12>>2]|0)+56>>2]|0)+36|0)|0,39800);c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[s>>2]|0)){break}if((c[o+16>>2]|0)==0){break}if((c[(c[r>>2]|0)+(c[j>>2]<<2)>>2]|0)!=0){if((d[(c[n>>2]|0)+17>>0]|0)!=0){if((c[(c[r>>2]|0)+(c[j>>2]<<2)>>2]|0)>1){LH(o,c[(c[r>>2]|0)+(c[j>>2]<<2)>>2]|0,1,0,0)}}MH(o,c[(c[r>>2]|0)+(c[j>>2]<<2)>>2]|0,39816,0,0)|0}c[j>>2]=(c[j>>2]|0)+1}c[j>>2]=1;while(1){if(!((c[j>>2]|0)>>>0<=(c[o+12>>2]|0)>>>0)){break}if((c[o+16>>2]|0)==0){break}do{if((NH(o,c[j>>2]|0)|0)==0){u=sD(c[n>>2]|0,c[j>>2]|0)|0;if((u|0)==(c[j>>2]|0)){if((a[(c[n>>2]|0)+17>>0]|0)!=0){break}}c[q>>2]=c[j>>2];OH(o,0,39840,q)}}while(0);if((NH(o,c[j>>2]|0)|0)!=0){u=sD(c[n>>2]|0,c[j>>2]|0)|0;if((u|0)==(c[j>>2]|0)){if((d[(c[n>>2]|0)+17>>0]|0)!=0){c[q>>2]=c[j>>2];OH(o,0,39864,q)}}}c[j>>2]=(c[j>>2]|0)+1}u=c[m>>2]|0;if((u|0)!=(IH(c[c[n>>2]>>2]|0)|0)){t=c[m>>2]|0;u=IH(c[c[n>>2]>>2]|0)|0;c[q>>2]=t;c[q+4>>2]=u;OH(o,0,39904,q)}oc(c[o+8>>2]|0);if((c[o+24>>2]|0)!=0){Nt(o+28|0);c[c[l>>2]>>2]=(c[o+20>>2]|0)+1;c[k>>2]=0;u=c[k>>2]|0;i=p;return u|0}c[c[l>>2]>>2]=c[o+20>>2];if((c[o+20>>2]|0)==0){Nt(o+28|0)}c[k>>2]=vc(o+28|0)|0;u=c[k>>2]|0;i=p;return u|0}function _sqlite3VdbeExec$0(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=c[f+4792>>2]|0;i=c[f+4800>>2]|0;h=c[f+4824>>2]|0;j=c[f+4840>>2]|0;k=c[f+4848>>2]|0;a:do{if(j){j=0;switch(k|0){case 94:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1284|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);if(((e[(c[(f+1288|0)>>2]|0)+28>>1]|e[(c[(f+1284|0)>>2]|0)+28>>1])&1|0)!=0){be(c[(f+1276|0)>>2]|0);c[f+4856>>2]=2;c[f+4860>>2]=66;break a}if((b[(c[(f+1288|0)>>2]|0)+28>>1]&16384|0)!=0){if((Id(c[(f+1288|0)>>2]|0)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}}if((b[(c[(f+1284|0)>>2]|0)+28>>1]&16384|0)!=0){if((Id(c[(f+1284|0)>>2]|0)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}}if((b[(c[(f+1288|0)>>2]|0)+28>>1]&18|0)==0){if((sw(c[(f+1288|0)>>2]|0,d[(f+1581|0)>>0]|0)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}}if((b[(c[(f+1284|0)>>2]|0)+28>>1]&18|0)==0){if((sw(c[(f+1284|0)>>2]|0,d[(f+1581|0)>>0]|0)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}}m=(c[(c[(f+1288|0)>>2]|0)+24>>2]|0)+(c[(c[(f+1284|0)>>2]|0)+24>>2]|0)|0;c[(f+288|0)>>2]=m;c[(f+288|0)+4>>2]=((m|0)<0)<<31>>31;m=c[(f+288|0)+4>>2]|0;n=c[(c[(f+1308|0)>>2]|0)+88>>2]|0;if((m|0)>(((n|0)<0)<<31>>31|0)|((m|0)==(((n|0)<0)<<31>>31|0)?(c[(f+288|0)>>2]|0)>>>0>n>>>0:0)){i=899;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}if((ue(c[(f+1276|0)>>2]|0,(c[(f+288|0)>>2]|0)+2|0,(c[(f+1276|0)>>2]|0)==(c[(f+1284|0)>>2]|0)&1)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|2;if((c[(f+1276|0)>>2]|0)!=(c[(f+1284|0)>>2]|0)){fL(c[(c[(f+1276|0)>>2]|0)+4>>2]|0,c[(c[(f+1284|0)>>2]|0)+4>>2]|0,c[(c[(f+1284|0)>>2]|0)+24>>2]|0)|0}fL((c[(c[(f+1276|0)>>2]|0)+4>>2]|0)+(c[(c[(f+1284|0)>>2]|0)+24>>2]|0)|0,c[(c[(f+1288|0)>>2]|0)+4>>2]|0,c[(c[(f+1288|0)>>2]|0)+24>>2]|0)|0;a[(c[(c[(f+1276|0)>>2]|0)+4>>2]|0)+(c[(f+288|0)>>2]|0)>>0]=0;n=dL(c[(f+288|0)>>2]|0,c[(f+288|0)+4>>2]|0,1,0)|0;a[(c[(c[(f+1276|0)>>2]|0)+4>>2]|0)+n>>0]=0;n=(c[(f+1276|0)>>2]|0)+28|0;b[n>>1]=e[n>>1]|512;c[(c[(f+1276|0)>>2]|0)+24>>2]=c[(f+288|0)>>2];a[(c[(f+1276|0)>>2]|0)+30>>0]=a[(f+1581|0)>>0]|0;break};case 31:{c[(f+1244|0)>>2]=(c[(c[(f+1328|0)>>2]|0)+60>>2]|0)+(((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)-1|0)*40|0);if((EF(c[(f+1244|0)>>2]|0)|0)!=0){i=899;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}Vt(c[(f+1276|0)>>2]|0,c[(f+1244|0)>>2]|0,2048);break};case 32:{c[(f+1236|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2];c[(f+1232|0)>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+1228|0)>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(f+1232|0)>>2]|0)*40|0);c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(f+1228|0)>>2]|0)*40|0);do{if((b[(c[(f+1276|0)>>2]|0)+28>>1]&9312|0)!=0){te(c[(f+1276|0)>>2]|0)}c[(f+1240|0)>>2]=c[(c[(f+1276|0)>>2]|0)+36>>2];g=(c[(f+1276|0)>>2]|0)+0|0;l=(c[(f+1288|0)>>2]|0)+0|0;h=g+40|0;do{c[g>>2]=c[l>>2];g=g+4|0;l=l+4|0}while((g|0)<(h|0));b[(c[(f+1288|0)>>2]|0)+28>>1]=128;c[(c[(f+1288|0)>>2]|0)+32>>2]=0;c[(c[(f+1288|0)>>2]|0)+36>>2]=c[(f+1240|0)>>2];c[(f+1288|0)>>2]=(c[(f+1288|0)>>2]|0)+40;c[(f+1276|0)>>2]=(c[(f+1276|0)>>2]|0)+40;n=(c[(f+1236|0)>>2]|0)+ -1|0;c[(f+1236|0)>>2]=n}while((n|0)!=0);break};case 35:{if((c[(c[(f+1308|0)>>2]|0)+284>>2]|0)!=0){if((c[(f+1300|0)>>2]|0)>>>0>=(c[(f+1296|0)>>2]|0)>>>0){if((ub[c[(c[(f+1308|0)>>2]|0)+284>>2]&63](c[(c[(f+1308|0)>>2]|0)+288>>2]|0)|0)!=0){i=80;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}}}n=FF(c[(f+1328|0)>>2]|0,0)|0;c[(f+1312|0)>>2]=n;if(0==(n|0)){c[(f+1312|0)>>2]=GF(c[(f+1328|0)>>2]|0,1)|0;if((c[(f+1312|0)>>2]|0)==0){i=83;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}}break};case 30:{Yd(c[(f+1276|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,0,0)|0;a[(c[(f+1276|0)>>2]|0)+30>>0]=a[(f+1581|0)>>0]|0;break};case 33:{c[(f+1224|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2];c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);while(1){Vt(c[(f+1276|0)>>2]|0,c[(f+1288|0)>>2]|0,4096);if((b[(c[(f+1276|0)>>2]|0)+28>>1]&4096|0)!=0){if((ur(c[(f+1276|0)>>2]|0)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}}n=c[(f+1224|0)>>2]|0;c[(f+1224|0)>>2]=n+ -1;if((n|0)==0){c[f+4856>>2]=2;c[f+4860>>2]=66;break a}c[(f+1276|0)>>2]=(c[(f+1276|0)>>2]|0)+40;c[(f+1288|0)>>2]=(c[(f+1288|0)>>2]|0)+40}};case 34:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);Vt(c[(f+1276|0)>>2]|0,c[(f+1288|0)>>2]|0,4096);break};case 37:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);MF(c[(f+1288|0)>>2]|0)|0;m=c[(c[(f+1316|0)>>2]|0)+8>>2]|0;n=(c[(f+1288|0)>>2]|0)+16|0;m=dL(c[n>>2]|0,c[n+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;c[n>>2]=m;c[n+4>>2]=D;break};case 1:{c[(f+1200|0)>>2]=d[(c[(f+1316|0)>>2]|0)+3>>0]|0;c[(f+1204|0)>>2]=c[(c[(f+1328|0)>>2]|0)+12>>2];c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+1208|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(f+1212|0)>>2]=0;while(1){if((c[(f+1212|0)>>2]|0)>=(c[(f+1200|0)>>2]|0)){break}c[(c[(f+1204|0)>>2]|0)+(c[(f+1212|0)>>2]<<2)>>2]=c[(f+1208|0)>>2];if((b[(c[(f+1208|0)>>2]|0)+28>>1]&4096|0)!=0){if((ur(c[(f+1208|0)>>2]|0)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}}c[(f+1212|0)>>2]=(c[(f+1212|0)>>2]|0)+1;c[(f+1208|0)>>2]=(c[(f+1208|0)>>2]|0)+40}c[(f+184|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];c[(f+184|0)+60>>2]=c[(f+1324|0)>>2];c[(f+184|0)+56>>2]=c[(f+1328|0)>>2];g=(f+184|0)+8|0;l=(c[(f+1276|0)>>2]|0)+0|0;h=g+40|0;do{c[g>>2]=c[l>>2];g=g+4|0;l=l+4|0}while((g|0)<(h|0));b[(c[(f+1276|0)>>2]|0)+28>>1]=1;c[(c[(f+1276|0)>>2]|0)+32>>2]=0;c[(c[(f+1276|0)>>2]|0)+36>>2]=0;b[(f+184|0)+36>>1]=e[(f+184|0)+36>>1]&-16896|1;a[(f+184|0)+69>>0]=0;if((b[(c[(f+184|0)>>2]|0)+2>>1]&32|0)!=0){c[(f+184|0)+52>>2]=c[(c[(f+1316|0)>>2]|0)+ -20+16>>2]}n=c[(f+88|0)+4>>2]|0;m=(c[(f+1308|0)>>2]|0)+32|0;c[m>>2]=c[(f+88|0)>>2];c[m+4>>2]=n;vb[c[(c[(f+184|0)>>2]|0)+12>>2]&63](f+184|0,c[(f+1200|0)>>2]|0,c[(f+1204|0)>>2]|0);m=(c[(f+1308|0)>>2]|0)+32|0;n=c[m+4>>2]|0;c[(f+88|0)>>2]=c[m>>2];c[(f+88|0)+4>>2]=n;if((a[(c[(f+1308|0)>>2]|0)+64>>0]|0)!=0){i=146;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}if((a[(f+184|0)+69>>0]|0)!=0){if((c[(f+184|0)+64>>2]|0)!=0){m=(c[(f+1328|0)>>2]|0)+44|0;n=c[(f+1308|0)>>2]|0;c[(f+336|0)>>2]=Jd((f+184|0)+8|0)|0;$t(m,n,1768,f+336|0);c[(f+1312|0)>>2]=c[(f+184|0)+64>>2]}LF(c[(f+1328|0)>>2]|0,c[(f+1324|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0)}sr((f+184|0)+8|0,d[(f+1581|0)>>0]|0)|0;g=(c[(f+1276|0)>>2]|0)+0|0;l=(f+184|0)+8|0;h=g+40|0;do{c[g>>2]=c[l>>2];g=g+4|0;l=l+4|0}while((g|0)<(h|0));if((EF(c[(f+1276|0)>>2]|0)|0)!=0){i=899;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}break};case 38:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&4|0)==0){rw(c[(f+1288|0)>>2]|0,99,a[(f+1581|0)>>0]|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&4|0)==0){if((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)==0){i=177;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}}b[(c[(f+1288|0)>>2]|0)+28>>1]=e[(c[(f+1288|0)>>2]|0)+28>>1]&-16896|4;break};case 143:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)==0){n=(c[(f+1288|0)>>2]|0)+28|0;b[n>>1]=e[n>>1]|(b[(c[(f+1288|0)>>2]|0)+28>>1]&16)>>3;rw(c[(f+1288|0)>>2]|0,97,a[(f+1581|0)>>0]|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&16384|0)!=0){l=Id(c[(f+1288|0)>>2]|0)|0}else{l=0}c[(f+1312|0)>>2]=l;n=(c[(f+1288|0)>>2]|0)+28|0;b[n>>1]=e[n>>1]&-16413}break};case 36:{if((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)!=0){_d((c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0)|0,0,0)}break};case 88:case 87:case 86:case 85:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1284|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);if(((e[(c[(f+1288|0)>>2]|0)+28>>1]|e[(c[(f+1284|0)>>2]|0)+28>>1])&1|0)!=0){be(c[(f+1276|0)>>2]|0);c[f+4856>>2]=2;c[f+4860>>2]=66;break a}n=Pd(c[(f+1284|0)>>2]|0)|0;c[(f+176|0)>>2]=n;c[(f+176|0)+4>>2]=D;n=Pd(c[(f+1288|0)>>2]|0)|0;c[(f+72|0)>>2]=n;c[(f+72|0)+4>>2]=D;a[(f+1776|0)>>0]=a[c[(f+1316|0)>>2]>>0]|0;do{if((d[(f+1776|0)>>0]|0)==85){n=c[(f+176|0)+4>>2]&c[(f+72|0)+4>>2];c[(f+176|0)>>2]=c[(f+176|0)>>2]&c[(f+72|0)>>2];c[(f+176|0)+4>>2]=n}else{l=c[(f+72|0)>>2]|0;m=c[(f+72|0)+4>>2]|0;if((d[(f+1776|0)>>0]|0)==86){n=c[(f+176|0)+4>>2]|m;c[(f+176|0)>>2]=c[(f+176|0)>>2]|l;c[(f+176|0)+4>>2]=n;break}if((l|0)!=0|(m|0)!=0){if((c[(f+72|0)+4>>2]|0)<0){a[(f+1776|0)>>0]=175-(d[(f+1776|0)>>0]|0);n=c[(f+72|0)+4>>2]|0;if((n|0)>-1|(n|0)==-1&(c[(f+72|0)>>2]|0)>>>0>4294967232){m=$K(0,0,c[(f+72|0)>>2]|0,c[(f+72|0)+4>>2]|0)|0;l=D}else{m=64;l=0}c[(f+72|0)>>2]=m;c[(f+72|0)+4>>2]=l}n=c[(f+72|0)+4>>2]|0;if((n|0)>0|(n|0)==0&(c[(f+72|0)>>2]|0)>>>0>=64){n=c[(f+176|0)+4>>2]|0;if((n|0)>0|(n|0)==0&(c[(f+176|0)>>2]|0)>>>0>=0){l=1}else{l=(d[(f+1776|0)>>0]|0)==87}n=l?0:-1;c[(f+176|0)>>2]=n;c[(f+176|0)+4>>2]=((n|0)<0)<<31>>31;break}c[(f+80|0)+0>>2]=c[(f+176|0)+0>>2];c[(f+80|0)+4>>2]=c[(f+176|0)+4>>2];l=c[(f+72|0)>>2]|0;n=c[(f+80|0)>>2]|0;m=c[(f+80|0)+4>>2]|0;if((d[(f+1776|0)>>0]|0)==87){n=bL(n|0,m|0,l|0)|0;c[(f+80|0)>>2]=n;c[(f+80|0)+4>>2]=D}else{n=eL(n|0,m|0,l|0)|0;c[(f+80|0)>>2]=n;c[(f+80|0)+4>>2]=D;if((c[(f+176|0)+4>>2]|0)<0){m=$K(64,0,c[(f+72|0)>>2]|0,c[(f+72|0)+4>>2]|0)|0;m=bL(-1,-1,m|0)|0;n=c[(f+80|0)+4>>2]|D;c[(f+80|0)>>2]=c[(f+80|0)>>2]|m;c[(f+80|0)+4>>2]=n}}c[(f+176|0)+0>>2]=c[(f+80|0)+0>>2];c[(f+176|0)+4>>2]=c[(f+80|0)+4>>2]}}}while(0);m=c[(f+176|0)+4>>2]|0;n=(c[(f+1276|0)>>2]|0)+16|0;c[n>>2]=c[(f+176|0)>>2];c[n+4>>2]=m;b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|4;break};default:{j=1}}}if(j){j=0;switch(k|0){case 39:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&4|0)!=0){NF(c[(f+1288|0)>>2]|0)|0}break};case 71:case 72:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)!=0){c[(f+1088|0)>>2]=2}else{n=Pd(c[(f+1288|0)>>2]|0)|0;c[(f+1088|0)>>2]=((n|0)!=0|(D|0)!=0)&1}c[(f+1284|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);if((b[(c[(f+1284|0)>>2]|0)+28>>1]&1|0)!=0){c[(f+1084|0)>>2]=2}else{n=Pd(c[(f+1284|0)>>2]|0)|0;c[(f+1084|0)>>2]=((n|0)!=0|(D|0)!=0)&1}k=((c[(f+1088|0)>>2]|0)*3|0)+(c[(f+1084|0)>>2]|0)|0;if((d[c[(f+1316|0)>>2]>>0]|0)==72){c[(f+1088|0)>>2]=d[37888+k>>0]|0}else{c[(f+1088|0)>>2]=d[37904+k>>0]|0}c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);if((c[(f+1088|0)>>2]|0)==2){b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}else{m=c[(f+1088|0)>>2]|0;n=(c[(f+1276|0)>>2]|0)+16|0;c[n>>2]=m;c[n+4>>2]=((m|0)<0)<<31>>31;b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|4;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}};case 145:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);nw(c[(f+1288|0)>>2]|0)|0;break};case 83:case 80:case 81:case 82:case 78:case 79:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1280|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);b[(f+1576|0)>>1]=b[(c[(f+1288|0)>>2]|0)+28>>1]|0;b[(f+1578|0)>>1]=b[(c[(f+1280|0)>>2]|0)+28>>1]|0;l=d[(c[(f+1316|0)>>2]|0)+3>>0]|0;do{if(((e[(f+1576|0)>>1]|e[(f+1578|0)>>1])&1|0)!=0){if((l&128|0)==0){k=c[(f+1316|0)>>2]|0;if((a[(c[(f+1316|0)>>2]|0)+3>>0]&16|0)!=0){c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[k+8>>2]|0)*40|0);b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}if((a[k+3>>0]&8|0)==0){c[f+4856>>2]=2;c[f+4860>>2]=66;break a}c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}if((b[(f+1576|0)>>1]&1|0)!=0){if((b[(f+1578|0)>>1]&1|0)!=0){if((b[(f+1578|0)>>1]&256|0)==0){c[(f+1128|0)>>2]=0;break}}}c[(f+1128|0)>>2]=1}else{a[(f+1777|0)>>0]=l&103;if((a[(f+1777|0)>>0]|0)!=0){rw(c[(f+1288|0)>>2]|0,a[(f+1777|0)>>0]|0,a[(f+1581|0)>>0]|0);rw(c[(f+1280|0)>>2]|0,a[(f+1777|0)>>0]|0,a[(f+1581|0)>>0]|0);if((a[(c[(f+1308|0)>>2]|0)+64>>0]|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}}if((b[(c[(f+1288|0)>>2]|0)+28>>1]&16384|0)!=0){Id(c[(f+1288|0)>>2]|0)|0}if((b[(c[(f+1280|0)>>2]|0)+28>>1]&16384|0)!=0){Id(c[(f+1280|0)>>2]|0)|0}c[(f+1128|0)>>2]=Tt(c[(f+1280|0)>>2]|0,c[(f+1288|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0)|0}}while(0);switch(d[c[(f+1316|0)>>2]>>0]|0){case 79:{c[(f+1128|0)>>2]=(c[(f+1128|0)>>2]|0)==0&1;break};case 81:{c[(f+1128|0)>>2]=(c[(f+1128|0)>>2]|0)<=0&1;break};case 78:{c[(f+1128|0)>>2]=(c[(f+1128|0)>>2]|0)!=0&1;break};case 80:{c[(f+1128|0)>>2]=(c[(f+1128|0)>>2]|0)>0&1;break};case 82:{c[(f+1128|0)>>2]=(c[(f+1128|0)>>2]|0)<0&1;break};default:{c[(f+1128|0)>>2]=(c[(f+1128|0)>>2]|0)>=0&1}}if((a[(c[(f+1316|0)>>2]|0)+3>>0]&16|0)!=0){c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|4;m=c[(f+1128|0)>>2]|0;n=(c[(f+1276|0)>>2]|0)+16|0;c[n>>2]=m;c[n+4>>2]=((m|0)<0)<<31>>31}else{if((c[(f+1128|0)>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}}b[(c[(f+1288|0)>>2]|0)+28>>1]=e[(c[(f+1288|0)>>2]|0)+28>>1]&-512|b[(f+1576|0)>>1]&511;b[(c[(f+1280|0)>>2]|0)+28>>1]=e[(c[(f+1280|0)>>2]|0)+28>>1]&-512|b[(f+1578|0)>>1]&511;break};case 40:{c[(f+1272|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];break};case 144:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)==0){k=c[(f+1288|0)>>2]|0;if((b[(c[(f+1288|0)>>2]|0)+28>>1]&16|0)==0){rw(k,97,a[(f+1581|0)>>0]|0);b[(c[(f+1288|0)>>2]|0)+28>>1]=e[(c[(f+1288|0)>>2]|0)+28>>1]&-16896|16;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}else{b[(k+28|0)>>1]=e[(k+28|0)>>1]&-496;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}}break};case 147:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)==0){NF(c[(f+1288|0)>>2]|0)|0}break};case 146:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)==0){MF(c[(f+1288|0)>>2]|0)|0}break};case 41:{if((a[(c[(f+1316|0)>>2]|0)+3>>0]&1|0)==0){c[(f+1272|0)>>2]=0}c[(f+1124|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2];c[(f+1108|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];c[(f+1116|0)>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+1112|0)>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];c[(f+1120|0)>>2]=0;while(1){if((c[(f+1120|0)>>2]|0)>=(c[(f+1124|0)>>2]|0)){break}l=c[(f+1120|0)>>2]|0;if((c[(f+1272|0)>>2]|0)!=0){l=c[(c[(f+1272|0)>>2]|0)+(l<<2)>>2]|0}c[(f+1104|0)>>2]=l;c[(f+1100|0)>>2]=c[(c[(f+1108|0)>>2]|0)+20+(c[(f+1120|0)>>2]<<2)>>2];c[(f+1096|0)>>2]=d[(c[(c[(f+1108|0)>>2]|0)+16>>2]|0)+(c[(f+1120|0)>>2]|0)>>0]|0;c[(f+1304|0)>>2]=Tt((c[(f+1292|0)>>2]|0)+(((c[(f+1116|0)>>2]|0)+(c[(f+1104|0)>>2]|0)|0)*40|0)|0,(c[(f+1292|0)>>2]|0)+(((c[(f+1112|0)>>2]|0)+(c[(f+1104|0)>>2]|0)|0)*40|0)|0,c[(f+1100|0)>>2]|0)|0;if((c[(f+1304|0)>>2]|0)!=0){i=233;break}c[(f+1120|0)>>2]=(c[(f+1120|0)>>2]|0)+1}if((i|0)==233){i=0;if((c[(f+1096|0)>>2]|0)!=0){c[(f+1304|0)>>2]=0-(c[(f+1304|0)>>2]|0)}}c[(f+1272|0)>>2]=0;break};case 42:{if((c[(f+1304|0)>>2]|0)<0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+4>>2]|0)-1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}k=c[(f+1316|0)>>2]|0;if((c[(f+1304|0)>>2]|0)==0){c[(f+1324|0)>>2]=(c[k+8>>2]|0)-1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}else{c[(f+1324|0)>>2]=(c[k+12>>2]|0)-1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}};case 45:case 44:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)!=0){c[(f+1080|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2]}else{c[(f+1080|0)>>2]=+Nd(c[(f+1288|0)>>2]|0)!=0.0&1;if((d[c[(f+1316|0)>>2]>>0]|0)==45){c[(f+1080|0)>>2]=((c[(f+1080|0)>>2]|0)!=0^1)&1}}if((c[(f+1080|0)>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 96:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);k=c[(f+1276|0)>>2]|0;if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)!=0){be(k);c[f+4856>>2]=2;c[f+4860>>2]=66;break a}else{n=Pd(c[(f+1288|0)>>2]|0)|0;_d(k,~n,~D);c[f+4856>>2]=2;c[f+4860>>2]=66;break a}};default:{j=1}}}if(j){j=0;switch(k|0){case 46:{c[(f+1076|0)>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];c[(f+1144|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+1072|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+1092|0)>>2]=(c[(f+1072|0)>>2]|0)+88;c[(f+1132|0)>>2]=(c[(f+1092|0)>>2]|0)+(b[(c[(f+1072|0)>>2]|0)+20>>1]<<2);c[(f+1068|0)>>2]=c[c[(f+1072|0)>>2]>>2];c[(f+1312|0)>>2]=OF(c[(f+1072|0)>>2]|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4856>>2]=2;c[f+4860>>2]=67;break a}if((c[(c[(f+1072|0)>>2]|0)+68>>2]|0)!=(c[(c[(f+1328|0)>>2]|0)+72>>2]|0)){i=276}else{if((a[(c[(f+1316|0)>>2]|0)+3>>0]&32|0)!=0){i=276}else{i=295}}b:do{if((i|0)==276){i=0;do{if((a[(c[(f+1072|0)>>2]|0)+25>>0]|0)!=0){if((c[(f+1068|0)>>2]|0)==0){c[(f+1176|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1072|0)>>2]|0)+16>>2]|0)*40|0);n=c[(c[(f+1176|0)>>2]|0)+24>>2]|0;c[(f+1184|0)>>2]=n;c[(c[(f+1072|0)>>2]|0)+76>>2]=n;c[(c[(f+1072|0)>>2]|0)+72>>2]=n;c[(c[(f+1072|0)>>2]|0)+84>>2]=c[(c[(f+1176|0)>>2]|0)+4>>2];break}else{b[(c[(f+1144|0)>>2]|0)+28>>1]=e[(c[(f+1144|0)>>2]|0)+28>>1]&-16896|1;break b}}else{l=c[(f+1068|0)>>2]|0;if(((d[(c[(f+1072|0)>>2]|0)+28>>0]|0)>>>2&1|0)==0){kF(l,f+168|0)|0;n=PF(c[(f+1068|0)>>2]|0,f+1184|0)|0;c[(c[(f+1072|0)>>2]|0)+84>>2]=n;c[(c[(f+1072|0)>>2]|0)+72>>2]=c[(f+168|0)>>2]}else{QF(l,(c[(f+1072|0)>>2]|0)+72|0)|0;n=RF(c[(f+1068|0)>>2]|0,f+1184|0)|0;c[(c[(f+1072|0)>>2]|0)+84>>2]=n}if((c[(c[(f+1072|0)>>2]|0)+72>>2]|0)>>>0<=(c[(f+1184|0)>>2]|0)>>>0){c[(c[(f+1072|0)>>2]|0)+76>>2]=c[(c[(f+1072|0)>>2]|0)+72>>2]}else{c[(c[(f+1072|0)>>2]|0)+76>>2]=c[(f+1184|0)>>2]}if((c[(c[(f+1072|0)>>2]|0)+72>>2]|0)>>>0>(c[(c[(f+1308|0)>>2]|0)+88>>2]|0)>>>0){i=899;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}}}while(0);c[(c[(f+1072|0)>>2]|0)+68>>2]=c[(c[(f+1328|0)>>2]|0)+72>>2];l=c[(c[(f+1072|0)>>2]|0)+84>>2]|0;if((d[c[(c[(f+1072|0)>>2]|0)+84>>2]>>0]|0)<128){c[(f+1192|0)>>2]=d[l>>0]|0;l=1}else{l=(uD(l,f+1192|0)|0)&255}c[(c[(f+1072|0)>>2]|0)+80>>2]=l&255;b[(c[(f+1072|0)>>2]|0)+22>>1]=0;c[c[(f+1132|0)>>2]>>2]=c[(f+1192|0)>>2];if((c[(f+1184|0)>>2]|0)>>>0<(c[(f+1192|0)>>2]|0)>>>0){c[(c[(f+1072|0)>>2]|0)+84>>2]=0;c[(c[(f+1072|0)>>2]|0)+76>>2]=0}if(!((c[(f+1192|0)>>2]|0)>>>0>98307)){if(!((c[(f+1192|0)>>2]|0)>>>0>(c[(c[(f+1072|0)>>2]|0)+72>>2]|0)>>>0)){i=295;break}}c[(f+1312|0)>>2]=dq(69894)|0;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}}while(0);do{if((i|0)==295){i=0;if((e[(c[(f+1072|0)>>2]|0)+22>>1]|0)<=(c[(f+1076|0)>>2]|0)){c:do{if((c[(c[(f+1072|0)>>2]|0)+80>>2]|0)>>>0<(c[c[(f+1132|0)>>2]>>2]|0)>>>0){if((c[(c[(f+1072|0)>>2]|0)+84>>2]|0)==0){g=(f+296|0)+0|0;h=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[(f+1312|0)>>2]=SF(c[(f+1068|0)>>2]|0,0,c[c[(f+1132|0)>>2]>>2]|0,(((d[(c[(f+1072|0)>>2]|0)+28>>0]|0)>>>2&1|0)!=0^1)&1,f+296|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4856>>2]=2;c[f+4860>>2]=66;break a}c[(f+1148|0)>>2]=c[(f+296|0)+4>>2]}else{c[(f+1148|0)>>2]=c[(c[(f+1072|0)>>2]|0)+84>>2]}c[(f+1140|0)>>2]=e[(c[(f+1072|0)>>2]|0)+22>>1]|0;c[(f+1192|0)>>2]=c[(c[(f+1132|0)>>2]|0)+(c[(f+1140|0)>>2]<<2)>>2];c[(f+1168|0)>>2]=(c[(f+1148|0)>>2]|0)+(c[(c[(f+1072|0)>>2]|0)+80>>2]|0);c[(f+1196|0)>>2]=(c[(f+1148|0)>>2]|0)+(c[c[(f+1132|0)>>2]>>2]|0);do{l=c[(f+1168|0)>>2]|0;if((d[c[(f+1168|0)>>2]>>0]|0)<128){c[(f+1180|0)>>2]=d[l>>0]|0;c[(f+1168|0)>>2]=(c[(f+1168|0)>>2]|0)+1}else{n=(uD(l,f+1180|0)|0)&255;c[(f+1168|0)>>2]=(c[(f+1168|0)>>2]|0)+n}c[(c[(f+1092|0)>>2]|0)+(c[(f+1140|0)>>2]<<2)>>2]=c[(f+1180|0)>>2];c[(f+1188|0)>>2]=yD(c[(f+1180|0)>>2]|0)|0;c[(f+1192|0)>>2]=(c[(f+1192|0)>>2]|0)+(c[(f+1188|0)>>2]|0);if((c[(f+1192|0)>>2]|0)>>>0<(c[(f+1188|0)>>2]|0)>>>0){i=306;break}c[(f+1140|0)>>2]=(c[(f+1140|0)>>2]|0)+1;c[(c[(f+1132|0)>>2]|0)+(c[(f+1140|0)>>2]<<2)>>2]=c[(f+1192|0)>>2];if((c[(f+1140|0)>>2]|0)>(c[(f+1076|0)>>2]|0)){break}}while((c[(f+1168|0)>>2]|0)>>>0<(c[(f+1196|0)>>2]|0)>>>0);if((i|0)==306){i=0;c[(f+1168|0)>>2]=(c[(f+1196|0)>>2]|0)+1}b[(c[(f+1072|0)>>2]|0)+22>>1]=c[(f+1140|0)>>2];c[(c[(f+1072|0)>>2]|0)+80>>2]=(c[(f+1168|0)>>2]|0)-(c[(f+1148|0)>>2]|0);if((c[(c[(f+1072|0)>>2]|0)+84>>2]|0)==0){Gd(f+296|0);b[(f+296|0)+28>>1]=1}do{if(!((c[(f+1168|0)>>2]|0)>>>0>(c[(f+1196|0)>>2]|0)>>>0)){if((c[(f+1192|0)>>2]|0)>>>0>(c[(c[(f+1072|0)>>2]|0)+72>>2]|0)>>>0){break}if((c[(f+1168|0)>>2]|0)!=(c[(f+1196|0)>>2]|0)){break c}if((c[(f+1192|0)>>2]|0)==(c[(c[(f+1072|0)>>2]|0)+72>>2]|0)){break c}}}while(0);c[(f+1312|0)>>2]=dq(69960)|0;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}}while(0);if((e[(c[(f+1072|0)>>2]|0)+22>>1]|0)<=(c[(f+1076|0)>>2]|0)){l=c[(f+1144|0)>>2]|0;if((a[(c[(f+1316|0)>>2]|0)+1>>0]|0)==-8){Vt(l,c[(c[(f+1316|0)>>2]|0)+16>>2]|0,2048);break}else{b[(c[(f+1144|0)>>2]|0)+28>>1]=e[l+28>>1]&-16896|1;break}}}if((c[(c[(f+1072|0)>>2]|0)+76>>2]|0)>>>0>=(c[(c[(f+1132|0)>>2]|0)+((c[(f+1076|0)>>2]|0)+1<<2)>>2]|0)>>>0){if((b[(c[(f+1144|0)>>2]|0)+28>>1]&9312|0)!=0){te(c[(f+1144|0)>>2]|0)}zD((c[(c[(f+1072|0)>>2]|0)+84>>2]|0)+(c[(c[(f+1132|0)>>2]|0)+(c[(f+1076|0)>>2]<<2)>>2]|0)|0,c[(c[(f+1092|0)>>2]|0)+(c[(f+1076|0)>>2]<<2)>>2]|0,c[(f+1144|0)>>2]|0)|0}else{c[(f+1180|0)>>2]=c[(c[(f+1092|0)>>2]|0)+(c[(f+1076|0)>>2]<<2)>>2];do{if((a[(c[(f+1316|0)>>2]|0)+3>>0]&192|0)!=0){if((c[(f+1180|0)>>2]|0)>>>0>=12){if((c[(f+1180|0)>>2]&1|0)==0){i=329;break}}if((a[(c[(f+1316|0)>>2]|0)+3>>0]&128|0)!=0){i=329}else{i=328}}else{i=328}}while(0);if((i|0)==328){i=0;n=yD(c[(f+1180|0)>>2]|0)|0;c[(f+1136|0)>>2]=n;if((n|0)==0){i=329}else{g=(f+296|0)+0|0;h=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));rF(f+296|0,c[(f+1144|0)>>2]|0);c[(f+1312|0)>>2]=SF(c[(f+1068|0)>>2]|0,c[(c[(f+1132|0)>>2]|0)+(c[(f+1076|0)>>2]<<2)>>2]|0,c[(f+1136|0)>>2]|0,(((d[(c[(f+1072|0)>>2]|0)+28>>0]|0)>>>2&1|0)!=0^1)&1,f+296|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4856>>2]=2;c[f+4860>>2]=66;break a}c[(f+1148|0)>>2]=c[(f+296|0)+4>>2]}}if((i|0)==329){i=0;if((c[(f+1180|0)>>2]|0)>>>0<=13){l=f+168|0}else{l=0}c[(f+1148|0)>>2]=l;c[(f+296|0)+36>>2]=0}zD(c[(f+1148|0)>>2]|0,c[(f+1180|0)>>2]|0,c[(f+1144|0)>>2]|0)|0;if((c[(f+296|0)+36>>2]|0)!=0){n=(c[(f+1144|0)>>2]|0)+28|0;b[n>>1]=e[n>>1]&-6145;n=(c[(f+1144|0)>>2]|0)+28|0;b[n>>1]=e[n>>1]|512;c[(c[(f+1144|0)>>2]|0)+4>>2]=c[(f+296|0)+4>>2];c[(c[(f+1144|0)>>2]|0)+36>>2]=c[(f+296|0)+36>>2]}}a[(c[(f+1144|0)>>2]|0)+30>>0]=a[(f+1581|0)>>0]|0}}while(0);if((b[(c[(f+1144|0)>>2]|0)+28>>1]&4096|0)!=0){if((ur(c[(f+1144|0)>>2]|0)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}}break};case 19:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);k=c[(f+1276|0)>>2]|0;if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)!=0){be(k);c[f+4856>>2]=2;c[f+4860>>2]=66;break a}else{n=Pd(c[(f+1288|0)>>2]|0)|0;n=(((n|0)!=0|(D|0)!=0)^1)&1;_d(k,n,((n|0)<0)<<31>>31);c[f+4856>>2]=2;c[f+4860>>2]=66;break a}};case 77:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)==0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 43:{k=c[(f+1316|0)>>2]|0;if((a[(c[(c[(f+1328|0)>>2]|0)+200>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]|0)>>0]|0)!=0){c[(f+1324|0)>>2]=(c[k+8>>2]|0)-1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}else{a[(c[(c[(f+1328|0)>>2]|0)+200>>2]|0)+(c[k+4>>2]|0)>>0]=1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}};case 76:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&1|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 49:{c[(f+1496|0)>>2]=c[c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2]>>2];c[(f+368|0)>>2]=0;c[(f+368|0)+4>>2]=0;c[(f+1312|0)>>2]=WF(c[(f+1496|0)>>2]|0,f+368|0)|0;m=c[(f+368|0)+4>>2]|0;n=(c[(f+1276|0)>>2]|0)+16|0;c[n>>2]=c[(f+368|0)>>2];c[n+4>>2]=m;break};default:{j=1}}}if(j){j=0;switch(k|0){case 2:{c[(f+1528|0)>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+1564|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];if((c[(f+1528|0)>>2]|0)==0){if((c[(c[(f+1308|0)>>2]|0)+148>>2]|0)>0){$t((c[(f+1328|0)>>2]|0)+44|0,c[(f+1308|0)>>2]|0,37920,f+336|0);c[(f+1312|0)>>2]=5;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}c[(f+1560|0)>>2]=Ub(c[(f+1564|0)>>2]|0)|0;c[(f+1312|0)>>2]=XF(c[(f+1308|0)>>2]|0,0,(c[(c[(f+1308|0)>>2]|0)+492>>2]|0)+(c[(c[(f+1308|0)>>2]|0)+488>>2]|0)|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4856>>2]=2;c[f+4860>>2]=67;break a}c[(f+1556|0)>>2]=$e(c[(f+1308|0)>>2]|0,33+(c[(f+1560|0)>>2]|0)|0)|0;if((c[(f+1556|0)>>2]|0)==0){c[f+4856>>2]=2;c[f+4860>>2]=66;break a}c[c[(f+1556|0)>>2]>>2]=(c[(f+1556|0)>>2]|0)+32;fL(c[c[(f+1556|0)>>2]>>2]|0,c[(f+1564|0)>>2]|0,(c[(f+1560|0)>>2]|0)+1|0)|0;k=c[(f+1308|0)>>2]|0;if((a[(c[(f+1308|0)>>2]|0)+62>>0]|0)!=0){a[k+62>>0]=0;a[(c[(f+1308|0)>>2]|0)+69>>0]=1}else{c[(k+488|0)>>2]=(c[(k+488|0)>>2]|0)+1}c[(c[(f+1556|0)>>2]|0)+24>>2]=c[(c[(f+1308|0)>>2]|0)+480>>2];c[(c[(f+1308|0)>>2]|0)+480>>2]=c[(f+1556|0)>>2];n=(c[(f+1308|0)>>2]|0)+496|0;m=c[n+4>>2]|0;l=(c[(f+1556|0)>>2]|0)+8|0;c[l>>2]=c[n>>2];c[l+4>>2]=m;l=(c[(f+1308|0)>>2]|0)+504|0;m=c[l+4>>2]|0;n=(c[(f+1556|0)>>2]|0)+16|0;c[n>>2]=c[l>>2];c[n+4>>2]=m;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}c[(f+1548|0)>>2]=0;c[(f+1552|0)>>2]=c[(c[(f+1308|0)>>2]|0)+480>>2];while(1){if((c[(f+1552|0)>>2]|0)==0){break}if((Dc(c[c[(f+1552|0)>>2]>>2]|0,c[(f+1564|0)>>2]|0)|0)==0){break}c[(f+1548|0)>>2]=(c[(f+1548|0)>>2]|0)+1;c[(f+1552|0)>>2]=c[(c[(f+1552|0)>>2]|0)+24>>2]}if((c[(f+1552|0)>>2]|0)==0){m=(c[(f+1328|0)>>2]|0)+44|0;n=c[(f+1308|0)>>2]|0;c[(f+336|0)>>2]=c[(f+1564|0)>>2];$t(m,n,37976,f+336|0);c[(f+1312|0)>>2]=1;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}if((c[(c[(f+1308|0)>>2]|0)+148>>2]|0)>0){if((c[(f+1528|0)>>2]|0)==1){$t((c[(f+1328|0)>>2]|0)+44|0,c[(f+1308|0)>>2]|0,38e3,f+336|0);c[(f+1312|0)>>2]=5;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}}if((c[(c[(f+1552|0)>>2]|0)+24>>2]|0)==0){l=(d[(c[(f+1308|0)>>2]|0)+69>>0]|0)!=0}else{l=0}c[(f+1536|0)>>2]=l&1;if((c[(f+1536|0)>>2]|0)!=0){if((c[(f+1528|0)>>2]|0)==1){n=FF(c[(f+1328|0)>>2]|0,1)|0;c[(f+1312|0)>>2]=n;if((n|0)!=0){i=898;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}a[(c[(f+1308|0)>>2]|0)+62>>0]=1;if((DF(c[(f+1328|0)>>2]|0)|0)==5){i=395;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}a[(c[(f+1308|0)>>2]|0)+69>>0]=0;c[(f+1312|0)>>2]=c[(c[(f+1328|0)>>2]|0)+80>>2]}else{i=397}}else{i=397}if((i|0)==397){i=0;c[(f+1548|0)>>2]=(c[(c[(f+1308|0)>>2]|0)+488>>2]|0)-(c[(f+1548|0)>>2]|0)-1;d:do{if((c[(f+1528|0)>>2]|0)==2){c[(f+1540|0)>>2]=0;while(1){if((c[(f+1540|0)>>2]|0)>=(c[(c[(f+1308|0)>>2]|0)+20>>2]|0)){break d}YF(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(f+1540|0)>>2]<<4)+4>>2]|0,4);c[(f+1540|0)>>2]=(c[(f+1540|0)>>2]|0)+1}}}while(0);c[(f+1540|0)>>2]=0;while(1){if((c[(f+1540|0)>>2]|0)>=(c[(c[(f+1308|0)>>2]|0)+20>>2]|0)){break}c[(f+1312|0)>>2]=ZF(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(f+1540|0)>>2]<<4)+4>>2]|0,c[(f+1528|0)>>2]|0,c[(f+1548|0)>>2]|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4856>>2]=2;c[f+4860>>2]=67;break a}c[(f+1540|0)>>2]=(c[(f+1540|0)>>2]|0)+1}if((c[(f+1528|0)>>2]|0)==2){if((c[(c[(f+1308|0)>>2]|0)+24>>2]&2|0)!=0){yf(c[(f+1308|0)>>2]|0);hd(c[(f+1308|0)>>2]|0);c[(c[(f+1308|0)>>2]|0)+24>>2]=c[(c[(f+1308|0)>>2]|0)+24>>2]|2}}}while(1){if((c[(c[(f+1308|0)>>2]|0)+480>>2]|0)==(c[(f+1552|0)>>2]|0)){break}c[(f+1544|0)>>2]=c[(c[(f+1308|0)>>2]|0)+480>>2];c[(c[(f+1308|0)>>2]|0)+480>>2]=c[(c[(f+1544|0)>>2]|0)+24>>2];cc(c[(f+1308|0)>>2]|0,c[(f+1544|0)>>2]|0);n=(c[(f+1308|0)>>2]|0)+488|0;c[n>>2]=(c[n>>2]|0)+ -1}l=c[(f+1552|0)>>2]|0;if((c[(f+1528|0)>>2]|0)==1){c[(c[(f+1308|0)>>2]|0)+480>>2]=c[l+24>>2];cc(c[(f+1308|0)>>2]|0,c[(f+1552|0)>>2]|0);if((c[(f+1536|0)>>2]|0)==0){n=(c[(f+1308|0)>>2]|0)+488|0;c[n>>2]=(c[n>>2]|0)+ -1}}else{n=c[(l+8|0)+4>>2]|0;m=(c[(f+1308|0)>>2]|0)+496|0;c[m>>2]=c[(l+8|0)>>2];c[m+4>>2]=n;l=(c[(f+1552|0)>>2]|0)+16|0;m=c[l+4>>2]|0;n=(c[(f+1308|0)>>2]|0)+504|0;c[n>>2]=c[l>>2];c[n+4>>2]=m}if((c[(f+1536|0)>>2]|0)==0){c[(f+1312|0)>>2]=XF(c[(f+1308|0)>>2]|0,c[(f+1528|0)>>2]|0,c[(f+1548|0)>>2]|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4856>>2]=2;c[f+4860>>2]=67;break a}}break};case 47:{c[(f+1172|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);while(1){n=c[(f+1172|0)>>2]|0;c[(f+1172|0)>>2]=n+1;n=a[n>>0]|0;a[(f+1778|0)>>0]=n;if((n<<24>>24|0)==0){c[f+4856>>2]=2;c[f+4860>>2]=66;break a}rw(c[(f+1288|0)>>2]|0,a[(f+1778|0)>>0]|0,a[(f+1581|0)>>0]|0);c[(f+1288|0)>>2]=(c[(f+1288|0)>>2]|0)+40}};case 48:{c[(f+352|0)>>2]=0;c[(f+352|0)+4>>2]=0;c[(f+1156|0)>>2]=0;c[(f+1152|0)>>2]=0;c[(f+1504|0)>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+1500|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];c[(f+1512|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(f+1504|0)>>2]|0)*40|0);c[(f+1504|0)>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];c[(f+1508|0)>>2]=(c[(f+1512|0)>>2]|0)+(((c[(f+1504|0)>>2]|0)-1|0)*40|0);c[(f+1492|0)>>2]=d[(c[(f+1328|0)>>2]|0)+87>>0]|0;c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);if((c[(f+1500|0)>>2]|0)!=0){c[(f+1160|0)>>2]=c[(f+1512|0)>>2];do{m=c[(f+1160|0)>>2]|0;c[(f+1160|0)>>2]=m+40;n=c[(f+1500|0)>>2]|0;c[(f+1500|0)>>2]=n+1;rw(m,a[n>>0]|0,a[(f+1581|0)>>0]|0)}while((a[c[(f+1500|0)>>2]>>0]|0)!=0)}c[(f+1160|0)>>2]=c[(f+1508|0)>>2];do{c[(f+1516|0)>>2]=TF(c[(f+1160|0)>>2]|0,c[(f+1492|0)>>2]|0)|0;c[(f+1480|0)>>2]=yD(c[(f+1516|0)>>2]|0)|0;do{if((b[(c[(f+1160|0)>>2]|0)+28>>1]&16384|0)!=0){l=c[(f+1160|0)>>2]|0;if((c[(f+352|0)>>2]|0)!=0|(c[(f+352|0)+4>>2]|0)!=0){Id(l)|0;break}else{c[(f+1152|0)>>2]=(c[(f+1152|0)>>2]|0)+(c[l+16>>2]|0);c[(f+1480|0)>>2]=(c[(f+1480|0)>>2]|0)-(c[(c[(f+1160|0)>>2]|0)+16>>2]|0);break}}}while(0);n=c[(f+1480|0)>>2]|0;n=dL(c[(f+352|0)>>2]|0,c[(f+352|0)+4>>2]|0,n|0,((n|0)<0)<<31>>31|0)|0;c[(f+352|0)>>2]=n;c[(f+352|0)+4>>2]=D;if((c[(f+1516|0)>>2]|0)>>>0<=127){l=1}else{l=BD(c[(f+1516|0)>>2]|0,0)|0}c[(f+1156|0)>>2]=(c[(f+1156|0)>>2]|0)+l;n=(c[(f+1160|0)>>2]|0)+ -40|0;c[(f+1160|0)>>2]=n}while(n>>>0>=(c[(f+1512|0)>>2]|0)>>>0);l=c[(f+1156|0)>>2]|0;if((c[(f+1156|0)>>2]|0)<=126){c[(f+1156|0)>>2]=l+1}else{c[(f+1520|0)>>2]=BD(l,((l|0)<0)<<31>>31)|0;c[(f+1156|0)>>2]=(c[(f+1156|0)>>2]|0)+(c[(f+1520|0)>>2]|0);m=c[(f+1520|0)>>2]|0;n=c[(f+1156|0)>>2]|0;if((m|0)<(BD(n,((n|0)<0)<<31>>31)|0)){c[(f+1156|0)>>2]=(c[(f+1156|0)>>2]|0)+1}}m=c[(f+1156|0)>>2]|0;m=dL(m|0,((m|0)<0)<<31>>31|0,c[(f+352|0)>>2]|0,c[(f+352|0)+4>>2]|0)|0;c[(f+360|0)>>2]=m;c[(f+360|0)+4>>2]=D;m=c[(f+360|0)+4>>2]|0;n=c[(c[(f+1308|0)>>2]|0)+88>>2]|0;if((m|0)>(((n|0)<0)<<31>>31|0)|((m|0)==(((n|0)<0)<<31>>31|0)?(c[(f+360|0)>>2]|0)>>>0>n>>>0:0)){i=899;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}if((ue(c[(f+1276|0)>>2]|0,c[(f+360|0)>>2]|0,0)|0)!=0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}c[(f+1164|0)>>2]=c[(c[(f+1276|0)>>2]|0)+4>>2];if((c[(f+1156|0)>>2]|0)>>>0<128){a[c[(f+1164|0)>>2]>>0]=c[(f+1156|0)>>2];l=1}else{l=UF(c[(f+1164|0)>>2]|0,c[(f+1156|0)>>2]|0)|0}c[(f+1488|0)>>2]=l&255;c[(f+1484|0)>>2]=c[(f+1156|0)>>2];c[(f+1160|0)>>2]=c[(f+1512|0)>>2];do{c[(f+1516|0)>>2]=TF(c[(f+1160|0)>>2]|0,c[(f+1492|0)>>2]|0)|0;if((c[(f+1516|0)>>2]|0)>>>0<128){a[(c[(f+1164|0)>>2]|0)+(c[(f+1488|0)>>2]|0)>>0]=c[(f+1516|0)>>2];l=1}else{l=UF((c[(f+1164|0)>>2]|0)+(c[(f+1488|0)>>2]|0)|0,c[(f+1516|0)>>2]|0)|0}c[(f+1488|0)>>2]=(c[(f+1488|0)>>2]|0)+(l&255);n=VF((c[(f+1164|0)>>2]|0)+(c[(f+1484|0)>>2]|0)|0,c[(f+1160|0)>>2]|0,c[(f+1516|0)>>2]|0)|0;c[(f+1484|0)>>2]=(c[(f+1484|0)>>2]|0)+n;n=(c[(f+1160|0)>>2]|0)+40|0;c[(f+1160|0)>>2]=n}while(n>>>0<=(c[(f+1508|0)>>2]|0)>>>0);c[(c[(f+1276|0)>>2]|0)+24>>2]=c[(f+360|0)>>2];b[(c[(f+1276|0)>>2]|0)+28>>1]=16;c[(c[(f+1276|0)>>2]|0)+32>>2]=0;if((c[(f+1152|0)>>2]|0)!=0){c[(c[(f+1276|0)>>2]|0)+16>>2]=c[(f+1152|0)>>2];n=(c[(f+1276|0)>>2]|0)+28|0;b[n>>1]=e[n>>1]|16384}a[(c[(f+1276|0)>>2]|0)+30>>0]=1;break};case 3:{c[(f+1468|0)>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+1396|0)>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];if((c[(f+1468|0)>>2]|0)!=0){l=(a[(c[(f+1308|0)>>2]|0)+62>>0]|0)!=0^1}else{l=0}c[(f+1392|0)>>2]=l&1;if((c[(f+1392|0)>>2]|0)!=0){if((c[(f+1396|0)>>2]|0)==0){if((c[(c[(f+1308|0)>>2]|0)+148>>2]|0)>0){$t((c[(f+1328|0)>>2]|0)+44|0,c[(f+1308|0)>>2]|0,38056,f+336|0);c[(f+1312|0)>>2]=5;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}}}if((c[(f+1468|0)>>2]|0)!=(d[(c[(f+1308|0)>>2]|0)+62>>0]|0)){i=423;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}if((c[(f+1468|0)>>2]|0)!=0){l=(c[(f+1396|0)>>2]|0)!=0?38160:38208}else{l=38112}$t((c[(f+1328|0)>>2]|0)+44|0,c[(f+1308|0)>>2]|0,l,f+336|0);c[(f+1312|0)>>2]=1;break};case 57:{c[(f+1448|0)>>2]=$F(c[(f+1328|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+12>>2]|0,-1,0)|0;if((c[(f+1448|0)>>2]|0)==0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}a[(c[(f+1448|0)>>2]|0)+25>>0]=1;c[(c[(f+1448|0)>>2]|0)+16>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];n=(c[(f+1448|0)>>2]|0)+28|0;a[n>>0]=a[n>>0]&-5|4;break};default:{j=1}}}if(j){j=0;switch(k|0){case 4:{if((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)!=0){if((c[(c[(f+1308|0)>>2]|0)+24>>2]&33554432|0)!=0){i=436;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}}c[(f+1388|0)>>2]=c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4)+4>>2];if((c[(f+1388|0)>>2]|0)!=0){c[(f+1312|0)>>2]=Wc(c[(f+1388|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+8>>2]|0)|0;if((c[(f+1312|0)>>2]|0)==5){i=439;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}if((c[(f+1312|0)>>2]|0)!=0){c[f+4856>>2]=2;c[f+4860>>2]=67;break a}do{if((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)!=0){if(((e[(c[(f+1328|0)>>2]|0)+88>>1]|0)>>>7&1|0)!=0){if((d[(c[(f+1308|0)>>2]|0)+62>>0]|0)!=0){if((c[(c[(f+1308|0)>>2]|0)+144>>2]|0)<=1){break}}if((c[(c[(f+1328|0)>>2]|0)+104>>2]|0)==0){n=(c[(f+1308|0)>>2]|0)+492|0;c[n>>2]=(c[n>>2]|0)+1;c[(c[(f+1328|0)>>2]|0)+104>>2]=(c[(c[(f+1308|0)>>2]|0)+488>>2]|0)+(c[(c[(f+1308|0)>>2]|0)+492>>2]|0)}c[(f+1312|0)>>2]=XF(c[(f+1308|0)>>2]|0,0,(c[(c[(f+1328|0)>>2]|0)+104>>2]|0)-1|0)|0;if((c[(f+1312|0)>>2]|0)==0){c[(f+1312|0)>>2]=_F(c[(f+1388|0)>>2]|0,c[(c[(f+1328|0)>>2]|0)+104>>2]|0)|0}n=(c[(f+1308|0)>>2]|0)+496|0;m=c[n+4>>2]|0;l=(c[(f+1328|0)>>2]|0)+152|0;c[l>>2]=c[n>>2];c[l+4>>2]=m;l=(c[(f+1308|0)>>2]|0)+504|0;m=c[l+4>>2]|0;n=(c[(f+1328|0)>>2]|0)+160|0;c[n>>2]=c[l>>2];c[n+4>>2]=m}}}while(0);Xc(c[(f+1388|0)>>2]|0,1,f+1384|0);c[(f+1352|0)>>2]=c[(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4)+12>>2]|0)+4>>2]}else{c[(f+1384|0)>>2]=0;c[(f+1352|0)>>2]=0}if((d[(c[(f+1316|0)>>2]|0)+3>>0]|0)!=0){if((c[(f+1384|0)>>2]|0)==(c[(c[(f+1316|0)>>2]|0)+12>>2]|0)){if((c[(f+1352|0)>>2]|0)==(c[(c[(f+1316|0)>>2]|0)+16>>2]|0)){c[f+4856>>2]=2;c[f+4860>>2]=66;break a}}cc(c[(f+1308|0)>>2]|0,c[(c[(f+1328|0)>>2]|0)+44>>2]|0);n=pe(c[(f+1308|0)>>2]|0,12256)|0;c[(c[(f+1328|0)>>2]|0)+44>>2]=n;if((c[c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4)+12>>2]>>2]|0)!=(c[(f+1384|0)>>2]|0)){Hy(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0)}n=(c[(f+1328|0)>>2]|0)+88|0;b[n>>1]=b[n>>1]&-33|32;c[(f+1312|0)>>2]=17}break};case 53:case 52:{if(((e[(c[(f+1328|0)>>2]|0)+88>>1]|0)>>>5&1|0)!=0){c[(f+1312|0)>>2]=4;c[f+4856>>2]=2;c[f+4860>>2]=66;break a}c[(f+1356|0)>>2]=0;c[(f+1404|0)>>2]=0;c[(f+1408|0)>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];c[(f+1412|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2];c[(f+1428|0)>>2]=(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(f+1412|0)>>2]<<4);c[(f+1420|0)>>2]=c[(c[(f+1428|0)>>2]|0)+4>>2];if((d[c[(f+1316|0)>>2]>>0]|0)==53){c[(f+1416|0)>>2]=1;if((d[(c[(c[(f+1428|0)>>2]|0)+12>>2]|0)+76>>0]|0)<(d[(c[(f+1328|0)>>2]|0)+87>>0]|0)){a[(c[(f+1328|0)>>2]|0)+87>>0]=a[(c[(c[(f+1428|0)>>2]|0)+12>>2]|0)+76>>0]|0}}else{c[(f+1416|0)>>2]=0}if((a[(c[(f+1316|0)>>2]|0)+3>>0]&2|0)!=0){c[(f+1284|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(f+1408|0)>>2]|0)*40|0);MF(c[(f+1284|0)>>2]|0)|0;c[(f+1408|0)>>2]=c[(c[(f+1284|0)>>2]|0)+16>>2];if((c[(f+1408|0)>>2]|0)<2){i=473;c[f+4856>>2]=2;c[f+4860>>2]=67;break a}}k=c[(f+1316|0)>>2]|0;if((a[(c[(f+1316|0)>>2]|0)+1>>0]|0)==-6){c[(f+1404|0)>>2]=c[k+16>>2];c[(f+1356|0)>>2]=(e[(c[(f+1404|0)>>2]|0)+6>>1]|0)+(e[(c[(f+1404|0)>>2]|0)+8>>1]|0)}else{if((a[k+1>>0]|0)==-14){c[(f+1356|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2]}}c[(f+1424|0)>>2]=$F(c[(f+1328|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(f+1356|0)>>2]|0,c[(f+1412|0)>>2]|0,1)|0;if((c[(f+1424|0)>>2]|0)==0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}a[(c[(f+1424|0)>>2]|0)+25>>0]=1;n=(c[(f+1424|0)>>2]|0)+28|0;a[n>>0]=a[n>>0]&-9|8;c[(f+1312|0)>>2]=aG(c[(f+1420|0)>>2]|0,c[(f+1408|0)>>2]|0,c[(f+1416|0)>>2]|0,c[(f+1404|0)>>2]|0,c[c[(f+1424|0)>>2]>>2]|0)|0;c[(c[(f+1424|0)>>2]|0)+8>>2]=c[(f+1404|0)>>2];bG(c[c[(f+1424|0)>>2]>>2]|0,a[(c[(f+1316|0)>>2]|0)+3>>0]&1);n=(c[(f+1424|0)>>2]|0)+28|0;a[n>>0]=a[n>>0]&-5|((a[(c[(f+1316|0)>>2]|0)+1>>0]|0)!=-6&1)<<2&255;break};case 50:{c[(f+1344|0)>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+1340|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2];Xc(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(f+1344|0)>>2]<<4)+4>>2]|0,c[(f+1340|0)>>2]|0,f+1348|0);m=c[(f+1348|0)>>2]|0;n=(c[(f+1276|0)>>2]|0)+16|0;c[n>>2]=m;c[n+4>>2]=((m|0)<0)<<31>>31;break};case 55:case 54:{c[(f+1432|0)>>2]=$F(c[(f+1328|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+8>>2]|0,-1,1)|0;if((c[(f+1432|0)>>2]|0)==0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}a[(c[(f+1432|0)>>2]|0)+25>>0]=1;n=(c[(f+1432|0)>>2]|0)+28|0;a[n>>0]=a[n>>0]&-2|1;c[(f+1312|0)>>2]=Ph(c[c[(f+1308|0)>>2]>>2]|0,0,c[(f+1308|0)>>2]|0,(c[(f+1432|0)>>2]|0)+4|0,5|d[(c[(f+1316|0)>>2]|0)+3>>0],1054)|0;if((c[(f+1312|0)>>2]|0)==0){c[(f+1312|0)>>2]=Wc(c[(c[(f+1432|0)>>2]|0)+4>>2]|0,1)|0}do{if((c[(f+1312|0)>>2]|0)==0){n=c[(c[(f+1316|0)>>2]|0)+16>>2]|0;c[(f+1436|0)>>2]=n;k=c[(c[(f+1432|0)>>2]|0)+4>>2]|0;if((n|0)==0){c[(f+1312|0)>>2]=aG(k,1,1,0,c[c[(f+1432|0)>>2]>>2]|0)|0;n=(c[(f+1432|0)>>2]|0)+28|0;a[n>>0]=a[n>>0]&-5|4;break}c[(f+1312|0)>>2]=cG(k,f+1440|0,2|d[(c[(f+1316|0)>>2]|0)+3>>0])|0;if((c[(f+1312|0)>>2]|0)==0){c[(c[(f+1432|0)>>2]|0)+8>>2]=c[(f+1436|0)>>2];c[(f+1312|0)>>2]=aG(c[(c[(f+1432|0)>>2]|0)+4>>2]|0,c[(f+1440|0)>>2]|0,1,c[(f+1436|0)>>2]|0,c[c[(f+1432|0)>>2]>>2]|0)|0}n=(c[(f+1432|0)>>2]|0)+28|0;a[n>>0]=a[n>>0]&-5}}while(0);n=(c[(f+1432|0)>>2]|0)+28|0;a[n>>0]=a[n>>0]&-9|((d[(c[(f+1316|0)>>2]|0)+3>>0]|0)!=8&1)<<3&255;break};case 51:{c[(f+1336|0)>>2]=(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4);c[(f+1280|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);MF(c[(f+1280|0)>>2]|0)|0;c[(f+1312|0)>>2]=gd(c[(c[(f+1336|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+8>>2]|0,c[(c[(f+1280|0)>>2]|0)+16>>2]|0)|0;if((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)==1){c[c[(c[(f+1336|0)>>2]|0)+12>>2]>>2]=c[(c[(f+1280|0)>>2]|0)+16>>2];n=(c[(f+1308|0)>>2]|0)+24|0;c[n>>2]=c[n>>2]|2}else{if((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)==2){a[(c[(c[(f+1336|0)>>2]|0)+12>>2]|0)+76>>0]=c[(c[(f+1280|0)>>2]|0)+16>>2]}}if((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)==1){yf(c[(f+1308|0)>>2]|0);n=(c[(f+1328|0)>>2]|0)+88|0;b[n>>1]=b[n>>1]&-33}break};case 56:{c[(f+1444|0)>>2]=$F(c[(f+1328|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+8>>2]|0,-1,1)|0;if((c[(f+1444|0)>>2]|0)==0){i=900;c[f+4856>>2]=2;c[f+4860>>2]=70;break a}c[(c[(f+1444|0)>>2]|0)+8>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];c[(f+1312|0)>>2]=dG(c[(f+1308|0)>>2]|0,c[(f+1444|0)>>2]|0)|0;break};default:{}}}}while(0);c[f+4792>>2]=g;c[f+4800>>2]=i;c[f+4824>>2]=h;c[f+4840>>2]=j}function _sqlite3VdbeExec$1(f){f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;g=c[f+4792>>2]|0;j=c[f+4800>>2]|0;i=c[f+4824>>2]|0;k=c[f+4840>>2]|0;l=c[f+4848>>2]|0;a:do{if(k){k=0;switch(l|0){case 67:{c[(f+1280|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+724|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+728|0)>>2]=c[c[(f+724|0)>>2]>>2];c[(f+732|0)>>2]=0;n=(c[(f+1280|0)>>2]|0)+16|0;m=c[n+4>>2]|0;c[(f+424|0)>>2]=c[n>>2];c[(f+424|0)+4>>2]=m;c[(f+1312|0)>>2]=jD(c[(f+728|0)>>2]|0,0,c[(f+424|0)>>2]|0,c[(f+424|0)+4>>2]|0,0,f+732|0)|0;m=(c[(f+1280|0)>>2]|0)+16|0;n=c[m+4>>2]|0;o=(c[(f+724|0)>>2]|0)+56|0;c[o>>2]=c[m>>2];c[o+4>>2]=n;a[(c[(f+724|0)>>2]|0)+26>>0]=(c[(f+732|0)>>2]|0)==0?1:0;a[(c[(f+724|0)>>2]|0)+25>>0]=0;c[(c[(f+724|0)>>2]|0)+68>>2]=0;a[(c[(f+724|0)>>2]|0)+27>>0]=0;if((c[(f+732|0)>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}c[(c[(f+724|0)>>2]|0)+12>>2]=c[(f+732|0)>>2];break};case 68:{o=(c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2]|0)+40|0;m=c[o>>2]|0;n=c[o+4>>2]|0;p=dL(m|0,n|0,1,0)|0;c[o>>2]=p;c[o+4>>2]=D;o=(c[(f+1276|0)>>2]|0)+16|0;c[o>>2]=m;c[o+4>>2]=n;break};case 107:case 106:{c[(f+476|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+1284|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(f+480|0)>>2]=c[c[(f+476|0)>>2]>>2];if((a[(c[(f+1316|0)>>2]|0)+3>>0]&1|0)!=0){p=(c[(f+1328|0)>>2]|0)+92|0;c[p>>2]=(c[p>>2]|0)+1}if((b[(c[(f+1284|0)>>2]|0)+28>>1]&16384|0)!=0){m=Id(c[(f+1284|0)>>2]|0)|0}else{m=0}c[(f+1312|0)>>2]=m;if((c[(f+1312|0)>>2]|0)==0){if((c[(c[(f+476|0)>>2]|0)+64>>2]|0)!=0){c[(f+1312|0)>>2]=pG(c[(f+1308|0)>>2]|0,c[(f+476|0)>>2]|0,c[(f+1284|0)>>2]|0)|0;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}c[(f+484|0)>>2]=c[(c[(f+1284|0)>>2]|0)+24>>2];c[(f+488|0)>>2]=c[(c[(f+1284|0)>>2]|0)+4>>2];m=c[(f+484|0)>>2]|0;if((a[(c[(f+1316|0)>>2]|0)+3>>0]&16|0)!=0){n=c[(c[(f+476|0)>>2]|0)+12>>2]|0}else{n=0}c[(f+1312|0)>>2]=hG(c[(f+480|0)>>2]|0,c[(f+488|0)>>2]|0,m,((m|0)<0)<<31>>31,1784,0,0,c[(c[(f+1316|0)>>2]|0)+12>>2]|0,n)|0;c[(c[(f+476|0)>>2]|0)+68>>2]=0}break};case 99:case 98:{c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(f+636|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+632|0)>>2]=c[c[(f+636|0)>>2]>>2];c[(f+1312|0)>>2]=OF(c[(f+636|0)>>2]|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4864>>2]=2;c[f+4868>>2]=50;break a}m=c[(f+632|0)>>2]|0;if(((d[(c[(f+636|0)>>2]|0)+28>>0]|0)>>>2&1|0)==0){kF(m,f+392|0)|0;o=c[(f+392|0)+4>>2]|0;p=c[(c[(f+1308|0)>>2]|0)+88>>2]|0;if((o|0)>(((p|0)<0)<<31>>31|0)|((o|0)==(((p|0)<0)<<31>>31|0)?(c[(f+392|0)>>2]|0)>>>0>p>>>0:0)){j=899;c[f+4864>>2]=2;c[f+4868>>2]=50;break a}c[(f+628|0)>>2]=c[(f+392|0)>>2]}else{QF(m,f+628|0)|0;if((c[(f+628|0)>>2]|0)>>>0>(c[(c[(f+1308|0)>>2]|0)+88>>2]|0)>>>0){j=899;c[f+4864>>2]=2;c[f+4868>>2]=50;break a}}if((ue(c[(f+1276|0)>>2]|0,c[(f+628|0)>>2]|0,0)|0)!=0){j=900;c[f+4864>>2]=2;c[f+4868>>2]=49;break a}c[(c[(f+1276|0)>>2]|0)+24>>2]=c[(f+628|0)>>2];b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|16;m=c[(f+632|0)>>2]|0;n=c[(f+628|0)>>2]|0;o=c[(c[(f+1276|0)>>2]|0)+4>>2]|0;if(((d[(c[(f+636|0)>>2]|0)+28>>0]|0)>>>2&1|0)==0){c[(f+1312|0)>>2]=lF(m,0,n,o)|0}else{c[(f+1312|0)>>2]=vf(m,0,n,o)|0}a[(c[(f+1276|0)>>2]|0)+30>>0]=1;break};case 84:{c[(f+652|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+1280|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+644|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];c[(f+1312|0)>>2]=jG(c[(f+652|0)>>2]|0,c[(f+1280|0)>>2]|0,c[(f+644|0)>>2]|0,f+648|0)|0;if((c[(f+648|0)>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 100:{c[(f+624|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];if((a[(c[(f+624|0)>>2]|0)+25>>0]|0)!=0){b[(c[(f+1276|0)>>2]|0)+28>>1]=1;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}m=c[(f+624|0)>>2]|0;do{if((a[(c[(f+624|0)>>2]|0)+27>>0]|0)!=0){p=c[(m+48|0)+4>>2]|0;c[(f+384|0)>>2]=c[(m+48|0)>>2];c[(f+384|0)+4>>2]=p}else{n=c[(f+624|0)>>2]|0;if((c[m+32>>2]|0)!=0){c[(f+516|0)>>2]=c[c[n+32>>2]>>2];c[(f+508|0)>>2]=c[c[(f+516|0)>>2]>>2];c[(f+1312|0)>>2]=zb[c[(c[(f+508|0)>>2]|0)+48>>2]&127](c[(c[(f+624|0)>>2]|0)+32>>2]|0,f+384|0)|0;lG(c[(f+1328|0)>>2]|0,c[(f+516|0)>>2]|0);break}c[(f+1312|0)>>2]=OF(n)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4864>>2]=2;c[f+4868>>2]=50;break a}m=c[(f+624|0)>>2]|0;if((a[(c[(f+624|0)>>2]|0)+26>>0]|0)!=0){p=c[(m+56|0)+4>>2]|0;c[(f+384|0)>>2]=c[(m+56|0)>>2];c[(f+384|0)+4>>2]=p;break}else{c[(f+1312|0)>>2]=kF(c[m>>2]|0,f+384|0)|0;break}}}while(0);o=c[(f+384|0)+4>>2]|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=c[(f+384|0)>>2];c[p+4>>2]=o;break};case 102:{c[(f+500|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+496|0)>>2]=c[c[(f+500|0)>>2]>>2];c[(f+492|0)>>2]=0;c[(f+1312|0)>>2]=gG(c[(f+496|0)>>2]|0,f+492|0)|0;a[(c[(f+500|0)>>2]|0)+25>>0]=c[(f+492|0)>>2];a[(c[(f+500|0)>>2]|0)+27>>0]=0;a[(c[(f+500|0)>>2]|0)+26>>0]=0;c[(c[(f+500|0)>>2]|0)+68>>2]=0;if((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)>0){if((c[(f+492|0)>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}}break};case 5:{c[(f+464|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+472|0)>>2]=0;c[(f+1312|0)>>2]=oG(c[(f+1308|0)>>2]|0,c[(f+464|0)>>2]|0,f+472|0)|0;j=654;break};case 104:case 103:{j=(c[(f+1328|0)>>2]|0)+116|0;c[j>>2]=(c[j>>2]|0)+1;j=646;break};case 74:{c[(f+656|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];o=(c[(f+656|0)>>2]|0)+56|0;p=c[o+4>>2]|0;c[(f+400|0)>>2]=c[o>>2];c[(f+400|0)+4>>2]=p;c[(f+1312|0)>>2]=OF(c[(f+656|0)>>2]|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4864>>2]=2;c[f+4868>>2]=50;break a}c[(f+1312|0)>>2]=iG(c[c[(f+656|0)>>2]>>2]|0)|0;c[(c[(f+656|0)>>2]|0)+68>>2]=0;if((c[(f+1312|0)>>2]|0)==0){if((c[(c[(f+1308|0)>>2]|0)+200>>2]|0)!=0){if((c[(c[(f+1316|0)>>2]|0)+16>>2]|0)!=0){if(((d[(c[(f+656|0)>>2]|0)+28>>0]|0)>>>2&1|0)!=0){yb[c[(c[(f+1308|0)>>2]|0)+200>>2]&0](c[(c[(f+1308|0)>>2]|0)+196>>2]|0,9,c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(a[(c[(f+656|0)>>2]|0)+24>>0]<<4)>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0,c[(f+400|0)>>2]|0,c[(f+400|0)+4>>2]|0)}}}}if((c[(c[(f+1316|0)>>2]|0)+8>>2]&1|0)!=0){p=(c[(f+1328|0)>>2]|0)+92|0;c[p>>2]=(c[p>>2]|0)+1}break};case 105:{j=646;break};case 95:{c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(f+640|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+1312|0)>>2]=kG(c[(f+640|0)>>2]|0,c[(f+1276|0)>>2]|0)|0;break};case 75:{BF(c[(f+1308|0)>>2]|0,c[(c[(f+1328|0)>>2]|0)+92>>2]|0);c[(c[(f+1328|0)>>2]|0)+92>>2]=0;break};case 101:{c[(f+504|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];a[(c[(f+504|0)>>2]|0)+25>>0]=1;a[(c[(f+504|0)>>2]|0)+26>>0]=0;c[(c[(f+504|0)>>2]|0)+68>>2]=0;if((c[c[(f+504|0)>>2]>>2]|0)!=0){Fr(c[c[(f+504|0)>>2]>>2]|0)}break};case 7:case 6:{if((c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2]|0)!=0){j=653}break};case 9:case 8:{j=653;break};case 119:{c[(f+776|0)>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+780|0)>>2]=(c[(f+776|0)>>2]|0)==1?21432:21456;c[(f+800|0)>>2]=c[(f+1308|0)>>2];c[(f+800|0)+8>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+800|0)+4>>2]=(c[(f+1328|0)>>2]|0)+44;p=c[(f+1308|0)>>2]|0;n=c[(f+780|0)>>2]|0;o=c[(c[(f+1316|0)>>2]|0)+16>>2]|0;c[(f+336|0)>>2]=c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(f+776|0)>>2]<<4)>>2];c[(f+336|0)+4>>2]=n;c[(f+336|0)+8>>2]=o;c[(f+788|0)>>2]=cf(p,38256,f+336|0)|0;if((c[(f+788|0)>>2]|0)==0){c[(f+1312|0)>>2]=7}else{a[(c[(f+1308|0)>>2]|0)+137>>0]=1;c[(f+800|0)+12>>2]=0;c[(f+1312|0)>>2]=Bf(c[(f+1308|0)>>2]|0,c[(f+788|0)>>2]|0,13,f+800|0,0)|0;if((c[(f+1312|0)>>2]|0)==0){c[(f+1312|0)>>2]=c[(f+800|0)+12>>2]}cc(c[(f+1308|0)>>2]|0,c[(f+788|0)>>2]|0);a[(c[(f+1308|0)>>2]|0)+137>>0]=0}if((c[(f+1312|0)>>2]|0)!=0){hd(c[(f+1308|0)>>2]|0)}if((c[(f+1312|0)>>2]|0)==7){j=900;c[f+4864>>2]=2;c[f+4868>>2]=49;break a}break};case 122:{yG(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0);break};case 109:{c[(f+556|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+552|0)>>2]=c[c[(f+556|0)>>2]>>2];b[(c[(f+1276|0)>>2]|0)+28>>1]=1;c[(f+1312|0)>>2]=OF(c[(f+556|0)>>2]|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4864>>2]=2;c[f+4868>>2]=50;break a}if((a[(c[(f+556|0)>>2]|0)+25>>0]|0)==0){c[(f+376|0)>>2]=0;c[(f+376|0)+4>>2]=0;c[(f+1312|0)>>2]=qG(c[(f+1308|0)>>2]|0,c[(f+552|0)>>2]|0,f+376|0)|0;if((c[(f+1312|0)>>2]|0)!=0){c[f+4864>>2]=2;c[f+4868>>2]=50;break a}o=c[(f+376|0)+4>>2]|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=c[(f+376|0)>>2];c[p+4>>2]=o;b[(c[(f+1276|0)>>2]|0)+28>>1]=4}break};default:{k=1}}}if(k){k=0;switch(l|0){case 120:{c[(f+1312|0)>>2]=My(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0)|0;break};case 121:{xG(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0);break};case 123:{zG(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0);break};case 124:{c[(f+816|0)>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];c[(f+820|0)>>2]=$e(c[(f+1308|0)>>2]|0,(c[(f+816|0)>>2]|0)+1<<2)|0;if((c[(f+820|0)>>2]|0)==0){j=900;c[f+4864>>2]=2;c[f+4868>>2]=49;break a}c[(f+836|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+824|0)>>2]=0;while(1){m=c[(f+824|0)>>2]|0;if((c[(f+824|0)>>2]|0)>=(c[(f+816|0)>>2]|0)){break}p=Pd((c[(f+1288|0)>>2]|0)+(m*40|0)|0)|0;c[(c[(f+820|0)>>2]|0)+(c[(f+824|0)>>2]<<2)>>2]=p;c[(f+824|0)>>2]=(c[(f+824|0)>>2]|0)+1}c[(c[(f+820|0)>>2]|0)+(m<<2)>>2]=0;c[(f+832|0)>>2]=AG(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(d[(c[(f+1316|0)>>2]|0)+3>>0]<<4)+4>>2]|0,c[(f+820|0)>>2]|0,c[(f+816|0)>>2]|0,c[(c[(f+836|0)>>2]|0)+16>>2]|0,f+828|0)|0;cc(c[(f+1308|0)>>2]|0,c[(f+820|0)>>2]|0);o=c[(f+828|0)>>2]|0;p=(c[(f+836|0)>>2]|0)+16|0;o=$K(c[p>>2]|0,c[p+4>>2]|0,o|0,((o|0)<0)<<31>>31|0)|0;c[p>>2]=o;c[p+4>>2]=D;be(c[(f+1288|0)>>2]|0);if((c[(f+828|0)>>2]|0)!=0){if((c[(f+832|0)>>2]|0)==0){j=900;c[f+4864>>2]=2;c[f+4868>>2]=49;break a}Yd(c[(f+1288|0)>>2]|0,c[(f+832|0)>>2]|0,-1,1,13)|0}sr(c[(f+1288|0)>>2]|0,d[(f+1581|0)>>0]|0)|0;break};case 115:{c[(f+612|0)>>2]=0;c[(f+1312|0)>>2]=uG(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+8>>2]<<4)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,(c[(c[(f+1316|0)>>2]|0)+12>>2]|0)!=0?f+612|0:0)|0;if((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)!=0){p=(c[(f+1328|0)>>2]|0)+92|0;c[p>>2]=(c[p>>2]|0)+(c[(f+612|0)>>2]|0);if((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)>0){o=c[(f+612|0)>>2]|0;p=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0)+16|0;o=dL(c[p>>2]|0,c[p+4>>2]|0,o|0,((o|0)<0)<<31>>31|0)|0;c[p>>2]=o;c[p+4>>2]=D}}break};case 113:case 112:case 111:case 110:{c[(f+564|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+572|0)>>2]=c[(c[(f+564|0)>>2]|0)+8>>2];b[(f+572|0)+4>>1]=c[(c[(f+1316|0)>>2]|0)+16>>2];if((d[c[(f+1316|0)>>2]>>0]|0)<112){a[((f+572|0)+6|0)>>0]=-1}else{a[((f+572|0)+6|0)>>0]=0}c[(f+572|0)+8>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+568|0)>>2]=0;c[(f+1312|0)>>2]=rG(c[(f+564|0)>>2]|0,f+572|0,f+568|0)|0;m=c[(f+568|0)>>2]|0;if((a[c[(f+1316|0)>>2]>>0]&1|0)==0){c[(f+568|0)>>2]=0-m}else{c[(f+568|0)>>2]=m+1}if((c[(f+568|0)>>2]|0)>0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 118:case 117:{c[(f+620|0)>>2]=0;c[(f+772|0)>>2]=(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4);if((d[c[(f+1316|0)>>2]>>0]|0)==118){c[(f+768|0)>>2]=1}else{c[(f+768|0)>>2]=2}c[(f+1312|0)>>2]=cG(c[(c[(f+772|0)>>2]|0)+4>>2]|0,f+620|0,c[(f+768|0)>>2]|0)|0;o=c[(f+620|0)>>2]|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=o;c[p+4>>2]=((o|0)<0)<<31>>31;break};case 114:{c[(f+600|0)>>2]=0;c[(f+604|0)>>2]=c[(c[(f+1308|0)>>2]|0)+4>>2];while(1){if((c[(f+604|0)>>2]|0)==0){break}if((c[(c[(f+604|0)>>2]|0)+40>>2]|0)==-1108210269){if(((e[(c[(f+604|0)>>2]|0)+88>>1]|0)>>>9&1|0)!=0){if(((e[(c[(f+604|0)>>2]|0)+88>>1]|0)>>>2&3|0)<2){if((c[(c[(f+604|0)>>2]|0)+76>>2]|0)>=0){c[(f+600|0)>>2]=(c[(f+600|0)>>2]|0)+1}}}}c[(f+604|0)>>2]=c[(c[(f+604|0)>>2]|0)+52>>2]}b[(c[(f+1276|0)>>2]|0)+28>>1]=1;if((c[(f+600|0)>>2]|0)>1){c[(f+1312|0)>>2]=6;a[(c[(f+1328|0)>>2]|0)+86>>0]=2;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}c[(f+608|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2];c[(f+596|0)>>2]=0;c[(f+1312|0)>>2]=sG(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(f+608|0)>>2]<<4)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,f+596|0)|0;b[(c[(f+1276|0)>>2]|0)+28>>1]=4;o=c[(f+596|0)>>2]|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=o;c[p+4>>2]=((o|0)<0)<<31>>31;if((c[(f+1312|0)>>2]|0)==0){if((c[(f+596|0)>>2]|0)!=0){tG(c[(f+1308|0)>>2]|0,c[(f+608|0)>>2]|0,c[(f+596|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0);a[(f+1580|0)>>0]=(c[(f+608|0)>>2]|0)+1}}break};case 116:{c[(f+616|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];if((c[(c[(f+616|0)>>2]|0)+64>>2]|0)!=0){vG(c[(f+1308|0)>>2]|0,c[(c[(f+616|0)>>2]|0)+64>>2]|0);c[f+4864>>2]=2;c[f+4868>>2]=54;break a}else{c[(f+1312|0)>>2]=wG(c[c[(f+616|0)>>2]>>2]|0)|0;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}};case 108:{c[(f+520|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+524|0)>>2]=c[c[(f+520|0)>>2]>>2];c[(f+532|0)>>2]=c[(c[(f+520|0)>>2]|0)+8>>2];b[(f+532|0)+4>>1]=c[(c[(f+1316|0)>>2]|0)+12>>2];a[(f+532|0)+6>>0]=0;c[(f+532|0)+8>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(f+1312|0)>>2]=jD(c[(f+524|0)>>2]|0,f+532|0,0,0,0,f+528|0)|0;if((c[(f+1312|0)>>2]|0)==0){if((c[(f+528|0)>>2]|0)==0){c[(f+1312|0)>>2]=iG(c[(f+524|0)>>2]|0)|0}}c[(c[(f+520|0)>>2]|0)+68>>2]=0;break};case 134:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);p=(c[(f+1288|0)>>2]|0)+16|0;o=c[p+4>>2]|0;if((o|0)>0|(o|0)==0&(c[p>>2]|0)>>>0>0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 136:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);o=c[(c[(f+1316|0)>>2]|0)+12>>2]|0;p=(c[(f+1288|0)>>2]|0)+16|0;o=dL(c[p>>2]|0,c[p+4>>2]|0,o|0,((o|0)<0)<<31>>31|0)|0;c[p>>2]=o;c[p+4>>2]=D;p=(c[(f+1288|0)>>2]|0)+16|0;if((c[p>>2]|0)==0&(c[p+4>>2]|0)==0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 129:{c[(f+888|0)>>2]=c[(c[(f+1328|0)>>2]|0)+176>>2];c[(f+892|0)>>2]=(c[(c[(f+888|0)>>2]|0)+12>>2]|0)+(((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)+(c[(c[(c[(f+888|0)>>2]|0)+8>>2]|0)+((c[(c[(f+888|0)>>2]|0)+44>>2]|0)*20|0)+4>>2]|0)|0)*40|0);Vt(c[(f+1276|0)>>2]|0,c[(f+892|0)>>2]|0,4096);break};case 10:{c[(f+904|0)>>2]=d[(c[(f+1316|0)>>2]|0)+3>>0]|0;c[(f+916|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);c[(f+924|0)>>2]=c[(c[(f+1328|0)>>2]|0)+12>>2];c[(f+908|0)>>2]=0;while(1){if((c[(f+908|0)>>2]|0)>=(c[(f+904|0)>>2]|0)){break}c[(c[(f+924|0)>>2]|0)+(c[(f+908|0)>>2]<<2)>>2]=c[(f+916|0)>>2];c[(f+908|0)>>2]=(c[(f+908|0)>>2]|0)+1;c[(f+916|0)>>2]=(c[(f+916|0)>>2]|0)+40}c[f>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];p=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0)|0;c[(f+912|0)>>2]=p;c[f+48>>2]=p;p=(c[(f+912|0)>>2]|0)+24|0;c[p>>2]=(c[p>>2]|0)+1;b[f+36>>1]=1;c[f+12>>2]=0;c[f+44>>2]=0;c[f+40>>2]=0;c[f+8>>2]=c[(f+1308|0)>>2];c[f+64>>2]=0;c[f+52>>2]=0;a[f+68>>0]=0;if((b[(c[f>>2]|0)+2>>1]&32|0)!=0){c[f+52>>2]=c[(c[(f+1316|0)>>2]|0)+ -20+16>>2]}vb[c[(c[f>>2]|0)+16>>2]&63](f,c[(f+904|0)>>2]|0,c[(f+924|0)>>2]|0);if((c[f+64>>2]|0)!=0){o=(c[(f+1328|0)>>2]|0)+44|0;p=c[(f+1308|0)>>2]|0;c[(f+336|0)>>2]=Jd(f+8|0)|0;$t(o,p,1768,f+336|0);c[(f+1312|0)>>2]=c[f+64>>2]}if((a[f+68>>0]|0)!=0){c[(f+908|0)>>2]=c[(c[(f+1316|0)>>2]|0)+ -20+4>>2];if((c[(f+908|0)>>2]|0)!=0){_d((c[(f+1292|0)>>2]|0)+((c[(f+908|0)>>2]|0)*40|0)|0,1,0)}}Gd(f+8|0);break};case 135:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((c[(c[(f+1288|0)>>2]|0)+20>>2]|0)<0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 130:{l=c[(f+1316|0)>>2]|0;if((c[(c[(f+1308|0)>>2]|0)+24>>2]&16777216|0)!=0){o=c[l+8>>2]|0;p=(c[(f+1308|0)>>2]|0)+504|0;o=dL(c[p>>2]|0,c[p+4>>2]|0,o|0,((o|0)<0)<<31>>31|0)|0;c[p>>2]=o;c[p+4>>2]=D;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}m=c[(c[(f+1316|0)>>2]|0)+8>>2]|0;if((c[l+4>>2]|0)!=0){p=(c[(f+1308|0)>>2]|0)+496|0;o=dL(c[p>>2]|0,c[p+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;c[p>>2]=o;c[p+4>>2]=D;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}else{p=(c[(f+1328|0)>>2]|0)+144|0;o=dL(c[p>>2]|0,c[p+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;c[p>>2]=o;c[p+4>>2]=D;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}};case 126:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&32|0)!=0){if((DG(c[(c[(f+1288|0)>>2]|0)+16>>2]|0,f+440|0)|0)!=0){_d((c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0)|0,c[(f+440|0)>>2]|0,c[(f+440|0)+4>>2]|0);j=16;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}}be(c[(f+1288|0)>>2]|0);c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;j=16;break};default:{k=1}}}if(k){k=0;switch(l|0){case 131:{if((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)!=0){p=(c[(f+1308|0)>>2]|0)+496|0;if(!((c[p>>2]|0)==0&(c[p+4>>2]|0)==0)){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}p=(c[(f+1308|0)>>2]|0)+504|0;if(!((c[p>>2]|0)==0&(c[p+4>>2]|0)==0)){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}else{p=(c[(f+1328|0)>>2]|0)+144|0;if(!((c[p>>2]|0)==0&(c[p+4>>2]|0)==0)){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}p=(c[(f+1308|0)>>2]|0)+504|0;if(!((c[p>>2]|0)==0&(c[p+4>>2]|0)==0)){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}};case 125:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1284|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&32|0)==0){BG(c[(f+1288|0)>>2]|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&32|0)==0){j=900;c[f+4864>>2]=2;c[f+4868>>2]=49;break a}}p=(c[(f+1284|0)>>2]|0)+16|0;CG(c[(c[(f+1288|0)>>2]|0)+16>>2]|0,c[p>>2]|0,c[p+4>>2]|0);break};case 128:{c[(f+880|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];c[(f+864|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);if((a[(c[(f+1316|0)>>2]|0)+3>>0]|0)!=0){c[(f+884|0)>>2]=c[(c[(f+880|0)>>2]|0)+20>>2];c[(f+876|0)>>2]=c[(c[(f+1328|0)>>2]|0)+176>>2];while(1){if((c[(f+876|0)>>2]|0)==0){break}if((c[(c[(f+876|0)>>2]|0)+24>>2]|0)==(c[(f+884|0)>>2]|0)){break}c[(f+876|0)>>2]=c[(c[(f+876|0)>>2]|0)+4>>2]}if((c[(f+876|0)>>2]|0)!=0){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}}if((c[(c[(f+1328|0)>>2]|0)+184>>2]|0)>=(c[(c[(f+1308|0)>>2]|0)+128>>2]|0)){c[(f+1312|0)>>2]=1;$t((c[(f+1328|0)>>2]|0)+44|0,c[(f+1308|0)>>2]|0,38320,f+336|0);c[f+4864>>2]=2;c[f+4868>>2]=54;break a}b:do{if((b[(c[(f+864|0)>>2]|0)+28>>1]&64|0)==0){c[(f+852|0)>>2]=(c[(c[(f+880|0)>>2]|0)+8>>2]|0)+(c[(c[(f+880|0)>>2]|0)+12>>2]|0);c[(f+856|0)>>2]=72+((c[(f+852|0)>>2]|0)*40|0)+(c[(c[(f+880|0)>>2]|0)+12>>2]<<2)+(c[(c[(f+880|0)>>2]|0)+16>>2]|0);c[(f+876|0)>>2]=ve(c[(f+1308|0)>>2]|0,c[(f+856|0)>>2]|0)|0;if((c[(f+876|0)>>2]|0)==0){j=900;c[f+4864>>2]=2;c[f+4868>>2]=49;break a}Gd(c[(f+864|0)>>2]|0);b[(c[(f+864|0)>>2]|0)+28>>1]=64;c[(c[(f+864|0)>>2]|0)+16>>2]=c[(f+876|0)>>2];c[c[(f+876|0)>>2]>>2]=c[(f+1328|0)>>2];c[(c[(f+876|0)>>2]|0)+60>>2]=c[(f+852|0)>>2];c[(c[(f+876|0)>>2]|0)+64>>2]=c[(c[(f+880|0)>>2]|0)+12>>2];c[(c[(f+876|0)>>2]|0)+44>>2]=c[(f+1324|0)>>2];c[(c[(f+876|0)>>2]|0)+12>>2]=c[(c[(f+1328|0)>>2]|0)+8>>2];c[(c[(f+876|0)>>2]|0)+52>>2]=c[(c[(f+1328|0)>>2]|0)+28>>2];c[(c[(f+876|0)>>2]|0)+20>>2]=c[(c[(f+1328|0)>>2]|0)+56>>2];c[(c[(f+876|0)>>2]|0)+40>>2]=c[(c[(f+1328|0)>>2]|0)+36>>2];c[(c[(f+876|0)>>2]|0)+8>>2]=c[(c[(f+1328|0)>>2]|0)+4>>2];c[(c[(f+876|0)>>2]|0)+48>>2]=c[(c[(f+1328|0)>>2]|0)+32>>2];c[(c[(f+876|0)>>2]|0)+24>>2]=c[(c[(f+880|0)>>2]|0)+20>>2];c[(c[(f+876|0)>>2]|0)+16>>2]=c[(c[(f+1328|0)>>2]|0)+200>>2];c[(c[(f+876|0)>>2]|0)+56>>2]=c[(c[(f+1328|0)>>2]|0)+196>>2];c[(f+872|0)>>2]=(c[(f+876|0)>>2]|0)+72+((c[(c[(f+876|0)>>2]|0)+60>>2]|0)*40|0);c[(f+868|0)>>2]=(c[(f+876|0)>>2]|0)+72;while(1){if((c[(f+868|0)>>2]|0)==(c[(f+872|0)>>2]|0)){break b}b[(c[(f+868|0)>>2]|0)+28>>1]=128;c[c[(f+868|0)>>2]>>2]=c[(f+1308|0)>>2];c[(f+868|0)>>2]=(c[(f+868|0)>>2]|0)+40}}else{c[(f+876|0)>>2]=c[(c[(f+864|0)>>2]|0)+16>>2]}}while(0);o=(c[(f+1328|0)>>2]|0)+184|0;c[o>>2]=(c[o>>2]|0)+1;c[(c[(f+876|0)>>2]|0)+4>>2]=c[(c[(f+1328|0)>>2]|0)+176>>2];o=c[(f+88|0)+4>>2]|0;p=(c[(f+876|0)>>2]|0)+32|0;c[p>>2]=c[(f+88|0)>>2];c[p+4>>2]=o;c[(c[(f+876|0)>>2]|0)+68>>2]=c[(c[(f+1328|0)>>2]|0)+92>>2];c[(c[(f+1328|0)>>2]|0)+92>>2]=0;c[(c[(f+1328|0)>>2]|0)+176>>2]=c[(f+876|0)>>2];p=(c[(f+876|0)>>2]|0)+72+ -40|0;c[(f+1292|0)>>2]=p;c[(c[(f+1328|0)>>2]|0)+8>>2]=p;c[(c[(f+1328|0)>>2]|0)+28>>2]=c[(c[(f+876|0)>>2]|0)+60>>2];c[(c[(f+1328|0)>>2]|0)+36>>2]=c[(c[(f+876|0)>>2]|0)+64>>2]&65535;c[(c[(f+1328|0)>>2]|0)+56>>2]=(c[(f+1292|0)>>2]|0)+(((c[(c[(f+1328|0)>>2]|0)+28>>2]|0)+1|0)*40|0);p=c[c[(f+880|0)>>2]>>2]|0;c[(f+1320|0)>>2]=p;c[(c[(f+1328|0)>>2]|0)+4>>2]=p;c[(c[(f+1328|0)>>2]|0)+32>>2]=c[(c[(f+880|0)>>2]|0)+4>>2];c[(c[(f+1328|0)>>2]|0)+200>>2]=(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1328|0)>>2]|0)+36>>2]<<2);c[(c[(f+1328|0)>>2]|0)+196>>2]=c[(c[(f+880|0)>>2]|0)+16>>2];c[(f+1324|0)>>2]=-1;aL(c[(c[(f+1328|0)>>2]|0)+200>>2]|0,0,c[(c[(f+1328|0)>>2]|0)+196>>2]|0)|0;break};case 127:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1280|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+844|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];if((b[(c[(f+1288|0)>>2]|0)+28>>1]&32|0)==0){BG(c[(f+1288|0)>>2]|0);if((b[(c[(f+1288|0)>>2]|0)+28>>1]&32|0)==0){j=900;c[f+4864>>2]=2;c[f+4868>>2]=49;break a}}if((c[(f+844|0)>>2]|0)!=0){p=(c[(f+1280|0)>>2]|0)+16|0;c[(f+848|0)>>2]=EG(c[(c[(f+1288|0)>>2]|0)+16>>2]|0,c[(f+844|0)>>2]|0,c[p>>2]|0,c[p+4>>2]|0)|0;if((c[(f+848|0)>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}}if((c[(f+844|0)>>2]|0)>=0){p=(c[(f+1280|0)>>2]|0)+16|0;CG(c[(c[(f+1288|0)>>2]|0)+16>>2]|0,c[p>>2]|0,c[p+4>>2]|0)}break};case 132:{if((c[(c[(f+1328|0)>>2]|0)+176>>2]|0)!=0){c[(f+900|0)>>2]=c[(c[(f+1328|0)>>2]|0)+176>>2];while(1){if((c[(c[(f+900|0)>>2]|0)+4>>2]|0)==0){break}c[(f+900|0)>>2]=c[(c[(f+900|0)>>2]|0)+4>>2]}c[(f+1288|0)>>2]=(c[(c[(f+900|0)>>2]|0)+12>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0)}else{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0)}MF(c[(f+1288|0)>>2]|0)|0;c[(f+1284|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);MF(c[(f+1284|0)>>2]|0)|0;o=(c[(f+1288|0)>>2]|0)+16|0;m=c[o+4>>2]|0;p=(c[(f+1284|0)>>2]|0)+16|0;n=c[p+4>>2]|0;if((m|0)<(n|0)|((m|0)==(n|0)?(c[o>>2]|0)>>>0<(c[p>>2]|0)>>>0:0)){n=(c[(f+1284|0)>>2]|0)+16|0;o=c[n+4>>2]|0;p=(c[(f+1288|0)>>2]|0)+16|0;c[p>>2]=c[n>>2];c[p+4>>2]=o}break};case 137:{c[(f+928|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1312|0)>>2]=tF(c[(f+928|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0)|0;if((c[(f+1312|0)>>2]|0)!=0){o=(c[(f+1328|0)>>2]|0)+44|0;p=c[(f+1308|0)>>2]|0;c[(f+336|0)>>2]=Jd(c[(f+928|0)>>2]|0)|0;$t(o,p,1768,f+336|0)}sr(c[(f+928|0)>>2]|0,d[(f+1581|0)>>0]|0)|0;if((EF(c[(f+928|0)>>2]|0)|0)!=0){j=899;c[f+4864>>2]=2;c[f+4868>>2]=50;break a}break};case 11:{c[(f+936|0)>>2]=0;c[(f+936|0)+8>>2]=-1;c[(f+936|0)+4>>2]=-1;c[(f+1312|0)>>2]=yg(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+8>>2]|0,(f+936|0)+4|0,(f+936|0)+8|0)|0;if((c[(f+1312|0)>>2]|0)==5){c[(f+1312|0)>>2]=0;c[(f+936|0)>>2]=1}c[(f+932|0)>>2]=0;c[(f+948|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);while(1){if((c[(f+932|0)>>2]|0)>=3){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}p=c[(f+936|0)+(c[(f+932|0)>>2]<<2)>>2]|0;_d(c[(f+948|0)>>2]|0,p,((p|0)<0)<<31>>31);c[(f+932|0)>>2]=(c[(f+932|0)>>2]|0)+1;c[(f+948|0)>>2]=(c[(f+948|0)>>2]|0)+40}};case 138:{c[(f+984|0)>>2]=c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4)+4>>2];c[(f+1312|0)>>2]=KG(c[(f+984|0)>>2]|0)|0;if((c[(f+1312|0)>>2]|0)==101){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;c[(f+1312|0)>>2]=0}break};case 139:{if((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)!=0){p=(c[(f+1328|0)>>2]|0)+88|0;b[p>>1]=b[p>>1]&-33|32;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}else{yf(c[(f+1308|0)>>2]|0);c[f+4864>>2]=2;c[f+4868>>2]=54;break a}};case 141:{c[(f+1e3|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];c[(f+1312|0)>>2]=MG(c[(f+1308|0)>>2]|0,c[(f+1e3|0)>>2]|0)|0;if((c[(f+1e3|0)>>2]|0)!=0){lG(c[(f+1328|0)>>2]|0,c[(c[(f+1e3|0)>>2]|0)+8>>2]|0)}break};default:{k=1}}}if(k){k=0;switch(l|0){case 12:{c[(f+960|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2];c[(f+952|0)>>2]=c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4)+4>>2];c[(f+956|0)>>2]=Zb(c[(f+952|0)>>2]|0)|0;c[(f+964|0)>>2]=_c(c[(f+956|0)>>2]|0)|0;if((c[(f+960|0)>>2]|0)==-1){c[(f+960|0)>>2]=c[(f+964|0)>>2]}if((FG(c[(f+956|0)>>2]|0)|0)==0){c[(f+960|0)>>2]=c[(f+964|0)>>2]}c[(f+968|0)>>2]=Sg(c[(f+956|0)>>2]|0,1)|0;do{if((c[(f+960|0)>>2]|0)==5){if((Ub(c[(f+968|0)>>2]|0)|0)!=0){if((GG(c[(f+956|0)>>2]|0)|0)!=0){break}}c[(f+960|0)>>2]=c[(f+964|0)>>2]}}while(0);do{if((c[(f+960|0)>>2]|0)!=(c[(f+964|0)>>2]|0)){if((c[(f+964|0)>>2]|0)!=5){if((c[(f+960|0)>>2]|0)!=5){break}}if((a[(c[(f+1308|0)>>2]|0)+62>>0]|0)!=0){if((c[(c[(f+1308|0)>>2]|0)+144>>2]|0)<=1){do{if((c[(f+964|0)>>2]|0)==5){c[(f+1312|0)>>2]=HG(c[(f+956|0)>>2]|0)|0;if((c[(f+1312|0)>>2]|0)!=0){break}IG(c[(f+956|0)>>2]|0,c[(f+960|0)>>2]|0)|0}else{if((c[(f+964|0)>>2]|0)!=4){break}IG(c[(f+956|0)>>2]|0,2)|0}}while(0);if((c[(f+1312|0)>>2]|0)!=0){break}c[(f+1312|0)>>2]=id(c[(f+952|0)>>2]|0,(c[(f+960|0)>>2]|0)==5?2:1)|0;break}}c[(f+1312|0)>>2]=1;o=(c[(f+1328|0)>>2]|0)+44|0;p=c[(f+1308|0)>>2]|0;c[(f+336|0)>>2]=(c[(f+960|0)>>2]|0)==5?38416:38424;$t(o,p,38360,f+336|0);c[f+4864>>2]=2;c[f+4868>>2]=54;break a}}while(0);if((c[(f+1312|0)>>2]|0)!=0){c[(f+960|0)>>2]=c[(f+964|0)>>2]}c[(f+960|0)>>2]=IG(c[(f+956|0)>>2]|0,c[(f+960|0)>>2]|0)|0;c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);b[(c[(f+1276|0)>>2]|0)+28>>1]=2562;p=vA(c[(f+960|0)>>2]|0)|0;c[(c[(f+1276|0)>>2]|0)+4>>2]=p;p=Ub(c[(c[(f+1276|0)>>2]|0)+4>>2]|0)|0;c[(c[(f+1276|0)>>2]|0)+24>>2]=p;a[(c[(f+1276|0)>>2]|0)+30>>0]=1;sr(c[(f+1276|0)>>2]|0,d[(f+1581|0)>>0]|0)|0;break};case 148:{p=(c[(f+1328|0)>>2]|0)+88|0;b[p>>1]=b[p>>1]&-13|8;c[(f+1312|0)>>2]=OG(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0)|0;p=(c[(f+1328|0)>>2]|0)+88|0;b[p>>1]=b[p>>1]&-13;break};case 149:{c[(f+1020|0)>>2]=0;c[(f+1024|0)>>2]=0;c[(f+1028|0)>>2]=c[(c[(c[(f+1316|0)>>2]|0)+16>>2]|0)+8>>2];c[(f+1032|0)>>2]=c[c[(f+1028|0)>>2]>>2];c[(f+1312|0)>>2]=zb[c[(c[(f+1032|0)>>2]|0)+24>>2]&127](c[(f+1028|0)>>2]|0,f+1024|0)|0;lG(c[(f+1328|0)>>2]|0,c[(f+1028|0)>>2]|0);if(0==(c[(f+1312|0)>>2]|0)){c[c[(f+1024|0)>>2]>>2]=c[(f+1028|0)>>2];c[(f+1020|0)>>2]=$F(c[(f+1328|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,0,-1,0)|0;if((c[(f+1020|0)>>2]|0)!=0){c[(c[(f+1020|0)>>2]|0)+32>>2]=c[(f+1024|0)>>2];c[f+4864>>2]=2;c[f+4868>>2]=54;break a}else{a[(c[(f+1308|0)>>2]|0)+64>>0]=1;ub[c[(c[(f+1032|0)>>2]|0)+28>>2]&63](c[(f+1024|0)>>2]|0)|0;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}}break};case 140:{a[(f+1775|0)>>0]=c[(c[(f+1316|0)>>2]|0)+12>>2];if((d[(f+1775|0)>>0]|0)==0){if(0!=(c[(c[(f+1308|0)>>2]|0)+24>>2]&16384|0)){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}}c[(f+988|0)>>2]=c[(c[(f+1316|0)>>2]|0)+4>>2];c[(f+1312|0)>>2]=LG(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(f+988|0)>>2]<<4)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+8>>2]|0,a[(f+1775|0)>>0]|0)|0;if((c[(f+1312|0)>>2]&255|0)==6){c[(f+996|0)>>2]=c[(c[(f+1316|0)>>2]|0)+16>>2];o=(c[(f+1328|0)>>2]|0)+44|0;p=c[(f+1308|0)>>2]|0;c[(f+336|0)>>2]=c[(f+996|0)>>2];$t(o,p,38432,f+336|0)}break};case 142:{c[(f+1312|0)>>2]=NG(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+4>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0,(c[(f+1328|0)>>2]|0)+44|0)|0;break};case 13:{c[(f+1312|0)>>2]=JG((c[(f+1328|0)>>2]|0)+44|0,c[(f+1308|0)>>2]|0)|0;break};case 14:{c[(f+1052|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+1056|0)>>2]=(c[(f+1052|0)>>2]|0)+40;c[(f+1036|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+1060|0)>>2]=c[(c[(f+1036|0)>>2]|0)+32>>2];c[(f+1064|0)>>2]=c[c[(f+1060|0)>>2]>>2];c[(f+1048|0)>>2]=c[c[(f+1064|0)>>2]>>2];c[(f+1040|0)>>2]=c[(c[(f+1056|0)>>2]|0)+16>>2];c[(f+1044|0)>>2]=c[(c[(f+1052|0)>>2]|0)+16>>2];c[(f+1016|0)>>2]=0;c[(f+1008|0)>>2]=c[(c[(f+1328|0)>>2]|0)+12>>2];c[(f+1012|0)>>2]=0;while(1){if((c[(f+1012|0)>>2]|0)>=(c[(f+1040|0)>>2]|0)){break}c[(c[(f+1008|0)>>2]|0)+(c[(f+1012|0)>>2]<<2)>>2]=(c[(f+1056|0)>>2]|0)+(((c[(f+1012|0)>>2]|0)+1|0)*40|0);c[(f+1012|0)>>2]=(c[(f+1012|0)>>2]|0)+1}p=(c[(f+1328|0)>>2]|0)+88|0;b[p>>1]=b[p>>1]&-13|4;c[(f+1312|0)>>2]=Ab[c[(c[(f+1048|0)>>2]|0)+32>>2]&15](c[(f+1060|0)>>2]|0,c[(f+1044|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0,c[(f+1040|0)>>2]|0,c[(f+1008|0)>>2]|0)|0;p=(c[(f+1328|0)>>2]|0)+88|0;b[p>>1]=b[p>>1]&-13;lG(c[(f+1328|0)>>2]|0,c[(f+1064|0)>>2]|0);if((c[(f+1312|0)>>2]|0)==0){c[(f+1016|0)>>2]=ub[c[(c[(f+1048|0)>>2]|0)+40>>2]&63](c[(f+1060|0)>>2]|0)|0}if((c[(f+1016|0)>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}a[(c[(f+1036|0)>>2]|0)+25>>0]=0;break};case 151:{c[(f+896|0)>>2]=0;c[(f+860|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];if((a[(c[(f+860|0)>>2]|0)+25>>0]|0)==0){c[(f+972|0)>>2]=c[c[(c[(f+860|0)>>2]|0)+32>>2]>>2];c[(f+920|0)>>2]=c[c[(f+972|0)>>2]>>2];p=(c[(f+1328|0)>>2]|0)+88|0;b[p>>1]=b[p>>1]&-13|4;c[(f+1312|0)>>2]=ub[c[(c[(f+920|0)>>2]|0)+36>>2]&63](c[(c[(f+860|0)>>2]|0)+32>>2]|0)|0;p=(c[(f+1328|0)>>2]|0)+88|0;b[p>>1]=b[p>>1]&-13;lG(c[(f+1328|0)>>2]|0,c[(f+972|0)>>2]|0);if((c[(f+1312|0)>>2]|0)==0){c[(f+896|0)>>2]=ub[c[(c[(f+920|0)>>2]|0)+40>>2]&63](c[(c[(f+860|0)>>2]|0)+32>>2]|0)|0}if((c[(f+896|0)>>2]|0)!=0){j=16}else{c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;j=16}}break};case 153:{o=$c(c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4)+4>>2]|0)|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=o;c[p+4>>2]=0;break};case 150:{c[(f+976|0)>>2]=c[(c[(c[(f+1328|0)>>2]|0)+56>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<2)>>2];c[(f+980|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);if((a[(c[(f+976|0)>>2]|0)+25>>0]|0)!=0){be(c[(f+980|0)>>2]|0);c[f+4864>>2]=2;c[f+4868>>2]=54;break a}c[(f+1004|0)>>2]=c[c[(c[(f+976|0)>>2]|0)+32>>2]>>2];c[(f+992|0)>>2]=c[c[(f+1004|0)>>2]>>2];g=(f+96|0)+0|0;i=g+72|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(i|0));rF((f+96|0)+8|0,c[(f+980|0)>>2]|0);b[(f+96|0)+36>>1]=e[(f+96|0)+36>>1]&-16896|1;c[(f+1312|0)>>2]=pb[c[(c[(f+992|0)>>2]|0)+44>>2]&31](c[(c[(f+976|0)>>2]|0)+32>>2]|0,f+96|0,c[(c[(f+1316|0)>>2]|0)+8>>2]|0)|0;lG(c[(f+1328|0)>>2]|0,c[(f+1004|0)>>2]|0);if((c[(f+96|0)+64>>2]|0)!=0){c[(f+1312|0)>>2]=c[(f+96|0)+64>>2]}sr((f+96|0)+8|0,d[(f+1581|0)>>0]|0)|0;rF(c[(f+980|0)>>2]|0,(f+96|0)+8|0);if((EF(c[(f+980|0)>>2]|0)|0)!=0){j=899;c[f+4864>>2]=2;c[f+4868>>2]=50;break a}break};case 15:{c[(f+784|0)>>2]=c[(c[(c[(f+1316|0)>>2]|0)+16>>2]|0)+8>>2];c[(f+592|0)>>2]=c[c[(f+784|0)>>2]>>2];c[(f+560|0)>>2]=c[(c[(f+1316|0)>>2]|0)+8>>2];if((c[(c[(f+592|0)>>2]|0)+52>>2]|0)!=0){a[(f+1582|0)>>0]=a[(c[(f+1308|0)>>2]|0)+68>>0]|0;c[(f+660|0)>>2]=c[(c[(f+1328|0)>>2]|0)+12>>2];c[(f+668|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);c[(f+512|0)>>2]=0;while(1){if((c[(f+512|0)>>2]|0)>=(c[(f+560|0)>>2]|0)){break}c[(c[(f+660|0)>>2]|0)+(c[(f+512|0)>>2]<<2)>>2]=c[(f+668|0)>>2];c[(f+668|0)>>2]=(c[(f+668|0)>>2]|0)+40;c[(f+512|0)>>2]=(c[(f+512|0)>>2]|0)+1}a[(c[(f+1308|0)>>2]|0)+68>>0]=a[(c[(f+1316|0)>>2]|0)+3>>0]|0;c[(f+1312|0)>>2]=xb[c[(c[(f+592|0)>>2]|0)+52>>2]&31](c[(f+784|0)>>2]|0,c[(f+560|0)>>2]|0,c[(f+660|0)>>2]|0,f+448|0)|0;a[(c[(f+1308|0)>>2]|0)+68>>0]=a[(f+1582|0)>>0]|0;lG(c[(f+1328|0)>>2]|0,c[(f+784|0)>>2]|0);if((c[(f+1312|0)>>2]|0)==0){if((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)!=0){n=c[(f+448|0)>>2]|0;o=c[(f+448|0)+4>>2]|0;c[(f+88|0)>>2]=n;c[(f+88|0)+4>>2]=o;p=(c[(f+1308|0)>>2]|0)+32|0;c[p>>2]=n;c[p+4>>2]=o}}if((c[(f+1312|0)>>2]&255|0)==19){if((d[(c[(c[(f+1316|0)>>2]|0)+16>>2]|0)+16>>0]|0)!=0){if((d[(c[(f+1316|0)>>2]|0)+3>>0]|0)==4){c[(f+1312|0)>>2]=0;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}if((d[(c[(f+1316|0)>>2]|0)+3>>0]|0)==5){l=2}else{l=d[(c[(f+1316|0)>>2]|0)+3>>0]|0}a[(c[(f+1328|0)>>2]|0)+86>>0]=l;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}}p=(c[(f+1328|0)>>2]|0)+92|0;c[p>>2]=(c[p>>2]|0)+1}break};case 154:{c[(f+736|0)>>2]=c[(c[(c[(f+1308|0)>>2]|0)+16>>2]|0)+(c[(c[(f+1316|0)>>2]|0)+4>>2]<<4)+4>>2];c[(f+692|0)>>2]=0;if((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)!=0){c[(f+692|0)>>2]=$c(c[(f+736|0)>>2]|0)|0;if((c[(f+692|0)>>2]|0)>>>0<(c[(c[(f+1316|0)>>2]|0)+12>>2]|0)>>>0){c[(f+692|0)>>2]=c[(c[(f+1316|0)>>2]|0)+12>>2]}}o=PG(c[(f+736|0)>>2]|0,c[(f+692|0)>>2]|0)|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=o;c[p+4>>2]=((o|0)<0)<<31>>31;break};default:{k=1}}}if(k){k=0;switch(l|0){case 155:{if((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}if((c[(c[(f+1308|0)>>2]|0)+164>>2]|0)!=0){if(((e[(c[(f+1328|0)>>2]|0)+88>>1]|0)>>>11&1|0)==0){if((c[(c[(f+1316|0)>>2]|0)+16>>2]|0)!=0){l=c[(c[(f+1316|0)>>2]|0)+16>>2]|0}else{l=c[(c[(f+1328|0)>>2]|0)+168>>2]|0}c[(f+740|0)>>2]=l;if((l|0)!=0){c[(f+696|0)>>2]=QG(c[(f+1328|0)>>2]|0,c[(f+740|0)>>2]|0)|0;sb[c[(c[(f+1308|0)>>2]|0)+164>>2]&7](c[(c[(f+1308|0)>>2]|0)+168>>2]|0,c[(f+696|0)>>2]|0);cc(c[(f+1308|0)>>2]|0,c[(f+696|0)>>2]|0)}}}break};case 152:{c[(f+840|0)>>2]=c[(c[(c[(f+1316|0)>>2]|0)+16>>2]|0)+8>>2];c[(f+792|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1312|0)>>2]=sr(c[(f+792|0)>>2]|0,1)|0;if((c[(f+1312|0)>>2]|0)==0){c[(f+1312|0)>>2]=zb[c[(c[c[(f+840|0)>>2]>>2]|0)+76>>2]&127](c[(f+840|0)>>2]|0,c[(c[(f+792|0)>>2]|0)+4>>2]|0)|0;lG(c[(f+1328|0)>>2]|0,c[(f+840|0)>>2]|0);p=(c[(f+1328|0)>>2]|0)+88|0;b[p>>1]=b[p>>1]&-33}break};case 17:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);b[(c[(f+1288|0)>>2]|0)+28>>1]=4;o=c[(f+1324|0)>>2]|0;p=(c[(f+1288|0)>>2]|0)+16|0;c[p>>2]=o;c[p+4>>2]=((o|0)<0)<<31>>31;c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;break};case 21:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1268|0)>>2]=(c[(f+1320|0)>>2]|0)+((c[(c[(f+1288|0)>>2]|0)+16>>2]|0)*20|0);c[(f+1324|0)>>2]=(c[(c[(f+1268|0)>>2]|0)+8>>2]|0)-1;b[(c[(f+1288|0)>>2]|0)+28>>1]=128;break};case 133:{b[(c[(f+1276|0)>>2]|0)+28>>1]=8;h[(c[(f+1276|0)>>2]|0)+8>>3]=+h[c[(c[(f+1316|0)>>2]|0)+16>>2]>>3];break};case 23:{c[(f+1280|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);if((b[(c[(f+1280|0)>>2]|0)+28>>1]&1|0)!=0){j=28}break};case 24:{j=28;break};case 29:{c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);b[(c[(f+1276|0)>>2]|0)+28>>1]=(e[(c[(f+1276|0)>>2]|0)+28>>1]|1)&-129;break};case 27:{j=57;break};case 22:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);b[(c[(f+1288|0)>>2]|0)+28>>1]=4;c[(f+1264|0)>>2]=c[(c[(f+1288|0)>>2]|0)+16>>2];o=c[(f+1324|0)>>2]|0;p=(c[(f+1288|0)>>2]|0)+16|0;c[p>>2]=o;c[p+4>>2]=((o|0)<0)<<31>>31;c[(f+1324|0)>>2]=c[(f+1264|0)>>2];break};case 16:{c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1;j=16;break};case 18:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);c[(f+1324|0)>>2]=c[(c[(f+1288|0)>>2]|0)+16>>2];b[(c[(f+1288|0)>>2]|0)+28>>1]=128;break};case 25:{o=c[(c[(f+1316|0)>>2]|0)+4>>2]|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=o;c[p+4>>2]=((o|0)<0)<<31>>31;break};case 26:{n=c[(c[(f+1316|0)>>2]|0)+16>>2]|0;o=c[n+4>>2]|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=c[n>>2];c[p+4>>2]=o;break};case 28:{c[(f+1248|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+12>>2]|0)-(c[(c[(f+1316|0)>>2]|0)+8>>2]|0);p=((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)!=0?257:1)&65535;b[(f+1572|0)>>1]=p;b[(c[(f+1276|0)>>2]|0)+28>>1]=p;while(1){if((c[(f+1248|0)>>2]|0)<=0){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}c[(f+1276|0)>>2]=(c[(f+1276|0)>>2]|0)+40;if((b[(c[(f+1276|0)>>2]|0)+28>>1]&9312|0)!=0){te(c[(f+1276|0)>>2]|0)}b[(c[(f+1276|0)>>2]|0)+28>>1]=b[(f+1572|0)>>1]|0;c[(f+1248|0)>>2]=(c[(f+1248|0)>>2]|0)+ -1}};case 20:{c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);o=(c[(c[(f+1316|0)>>2]|0)+12>>2]|0)-1|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=o;c[p+4>>2]=((o|0)<0)<<31>>31;b[(c[(f+1276|0)>>2]|0)+28>>1]=4;if((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)!=0){c[(f+1324|0)>>2]=(c[(c[(f+1316|0)>>2]|0)+8>>2]|0)-1}break};case 97:{a[c[(f+1316|0)>>2]>>0]=27;p=Ub(c[(c[(f+1316|0)>>2]|0)+16>>2]|0)|0;c[(c[(f+1316|0)>>2]|0)+4>>2]=p;if((d[(f+1581|0)>>0]|0)!=1){c[(f+1312|0)>>2]=Yd(c[(f+1276|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0,-1,1,0)|0;if((c[(f+1312|0)>>2]|0)==18){j=899;c[f+4864>>2]=2;c[f+4868>>2]=50;break a}if(0!=(sr(c[(f+1276|0)>>2]|0,d[(f+1581|0)>>0]|0)|0)){j=900;c[f+4864>>2]=2;c[f+4868>>2]=49;break a}c[(c[(f+1276|0)>>2]|0)+36>>2]=0;p=(c[(f+1276|0)>>2]|0)+28|0;b[p>>1]=e[p>>1]|2048;if((a[(c[(f+1316|0)>>2]|0)+1>>0]|0)==-1){cc(c[(f+1308|0)>>2]|0,c[(c[(f+1316|0)>>2]|0)+16>>2]|0)}a[(c[(f+1316|0)>>2]|0)+1>>0]=-1;c[(c[(f+1316|0)>>2]|0)+16>>2]=c[(c[(f+1276|0)>>2]|0)+4>>2];c[(c[(f+1316|0)>>2]|0)+4>>2]=c[(c[(f+1276|0)>>2]|0)+24>>2]}if((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)>(c[(c[(f+1308|0)>>2]|0)+88>>2]|0)){j=899;c[f+4864>>2]=2;c[f+4868>>2]=50;break a}else{j=57}break};case 93:case 92:case 91:case 90:case 89:{c[(f+1288|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+4>>2]|0)*40|0);b[(f+1570|0)>>1]=IF(c[(f+1288|0)>>2]|0)|0;c[(f+1284|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+8>>2]|0)*40|0);b[(f+1574|0)>>1]=IF(c[(f+1284|0)>>2]|0)|0;c[(f+1276|0)>>2]=(c[(f+1292|0)>>2]|0)+((c[(c[(f+1316|0)>>2]|0)+12>>2]|0)*40|0);b[(f+1568|0)>>1]=e[(c[(f+1288|0)>>2]|0)+28>>1]|e[(c[(f+1284|0)>>2]|0)+28>>1];c:do{if((b[(f+1568|0)>>1]&1|0)==0){do{if((e[(f+1570|0)>>1]&e[(f+1574|0)>>1]&4|0)!=0){l=(c[(f+1288|0)>>2]|0)+16|0;p=c[l+4>>2]|0;c[(f+280|0)>>2]=c[l>>2];c[(f+280|0)+4>>2]=p;p=(c[(f+1284|0)>>2]|0)+16|0;l=c[p+4>>2]|0;c[(f+272|0)>>2]=c[p>>2];c[(f+272|0)+4>>2]=l;a[(f+1583|0)>>0]=1;l=d[c[(f+1316|0)>>2]>>0]|0;if((l|0)==89){if((Qt(f+272|0,c[(f+280|0)>>2]|0,c[(f+280|0)+4>>2]|0)|0)!=0){break}}else if((l|0)==90){if((JF(f+272|0,c[(f+280|0)>>2]|0,c[(f+280|0)+4>>2]|0)|0)!=0){break}}else if((l|0)==91){if((KF(f+272|0,c[(f+280|0)>>2]|0,c[(f+280|0)+4>>2]|0)|0)!=0){break}}else if((l|0)==92){if((c[(f+280|0)>>2]|0)==0&(c[(f+280|0)+4>>2]|0)==0){break c}if((c[(f+280|0)>>2]|0)==-1?(c[(f+280|0)+4>>2]|0)==-1:0){if((c[(f+272|0)>>2]|0)==0?(c[(f+272|0)+4>>2]|0)==-2147483648:0){break}}p=lL(c[(f+272|0)>>2]|0,c[(f+272|0)+4>>2]|0,c[(f+280|0)>>2]|0,c[(f+280|0)+4>>2]|0)|0;c[(f+272|0)>>2]=p;c[(f+272|0)+4>>2]=D}else{if((c[(f+280|0)>>2]|0)==0&(c[(f+280|0)+4>>2]|0)==0){break c}if((c[(f+280|0)>>2]|0)==-1?(c[(f+280|0)+4>>2]|0)==-1:0){c[(f+280|0)>>2]=1;c[(f+280|0)+4>>2]=0}p=mL(c[(f+272|0)>>2]|0,c[(f+272|0)+4>>2]|0,c[(f+280|0)>>2]|0,c[(f+280|0)+4>>2]|0)|0;c[(f+272|0)>>2]=p;c[(f+272|0)+4>>2]=D}o=c[(f+272|0)+4>>2]|0;p=(c[(f+1276|0)>>2]|0)+16|0;c[p>>2]=c[(f+272|0)>>2];c[p+4>>2]=o;b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|4;c[f+4864>>2]=2;c[f+4868>>2]=54;break a}else{a[(f+1583|0)>>0]=0}}while(0);h[(f+264|0)>>3]=+Nd(c[(f+1288|0)>>2]|0);h[(f+256|0)>>3]=+Nd(c[(f+1284|0)>>2]|0);l=d[c[(f+1316|0)>>2]>>0]|0;if((l|0)==89){h[(f+256|0)>>3]=+h[(f+256|0)>>3]+ +h[(f+264|0)>>3]}else if((l|0)==90){h[(f+256|0)>>3]=+h[(f+256|0)>>3]- +h[(f+264|0)>>3]}else if((l|0)==92){if(+h[(f+264|0)>>3]==0.0){break}h[(f+256|0)>>3]=+h[(f+256|0)>>3]/+h[(f+264|0)>>3]}else if((l|0)==91){h[(f+256|0)>>3]=+h[(f+256|0)>>3]*+h[(f+264|0)>>3]}else{q=+h[(f+264|0)>>3];p=+O(q)>=1.0?q>0.0?(ea(+N(q/4294967296.0),4294967295.0)|0)>>>0:~~+_((q- +(~~q>>>0))/4294967296.0)>>>0:0;c[(f+280|0)>>2]=~~q>>>0;c[(f+280|0)+4>>2]=p;q=+h[(f+256|0)>>3];p=+O(q)>=1.0?q>0.0?(ea(+N(q/4294967296.0),4294967295.0)|0)>>>0:~~+_((q- +(~~q>>>0))/4294967296.0)>>>0:0;c[(f+272|0)>>2]=~~q>>>0;c[(f+272|0)+4>>2]=p;if((c[(f+280|0)>>2]|0)==0&(c[(f+280|0)+4>>2]|0)==0){break}if((c[(f+280|0)>>2]|0)==-1?(c[(f+280|0)+4>>2]|0)==-1:0){c[(f+280|0)>>2]=1;c[(f+280|0)+4>>2]=0}p=mL(c[(f+272|0)>>2]|0,c[(f+272|0)+4>>2]|0,c[(f+280|0)>>2]|0,c[(f+280|0)+4>>2]|0)|0;h[(f+256|0)>>3]=+(p>>>0)+4294967296.0*+(D|0)}if((CD(+h[(f+256|0)>>3])|0)==0){h[(c[(f+1276|0)>>2]|0)+8>>3]=+h[(f+256|0)>>3];b[(c[(f+1276|0)>>2]|0)+28>>1]=e[(c[(f+1276|0)>>2]|0)+28>>1]&-16896|8;if(((e[(f+1570|0)>>1]|e[(f+1574|0)>>1])&8|0)!=0){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}if((a[(f+1583|0)>>0]|0)!=0){c[f+4864>>2]=2;c[f+4868>>2]=54;break a}pw(c[(f+1276|0)>>2]|0);c[f+4864>>2]=2;c[f+4868>>2]=54;break a}}}while(0);be(c[(f+1276|0)>>2]|0);break};default:{k=1}}}}while(0);c[f+4792>>2]=g;c[f+4800>>2]=j;c[f+4824>>2]=i;c[f+4840>>2]=k} + + + +function wz(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;q=i;i=i+320|0;M=q;p=q+216|0;j=q+212|0;F=q+208|0;o=q+204|0;n=q+196|0;ja=q+192|0;m=q+188|0;k=q+200|0;l=q+224|0;I=q+228|0;ka=q+232|0;Z=q+236|0;_=q+240|0;L=q+244|0;A=q+248|0;fa=q+296|0;ga=q+300|0;ca=q+184|0;Q=q+180|0;R=q+176|0;da=q+172|0;S=q+168|0;ea=q+164|0;ia=q+160|0;ha=q+48|0;T=q+56|0;B=q+220|0;C=q+40|0;G=q+36|0;P=q+32|0;N=q+52|0;D=q+20|0;K=q+16|0;O=q+304|0;H=q+12|0;J=q+8|0;E=q+305|0;U=q+24|0;V=q+28|0;W=q+156|0;X=q+60|0;Y=q+64|0;aa=q+68|0;ba=q+72|0;r=q+76|0;s=q+80|0;v=q+84|0;z=q+88|0;t=q+92|0;u=q+96|0;x=q+104|0;y=q+152|0;w=q+44|0;c[j>>2]=e;c[F>>2]=f;c[o>>2]=g;c[n>>2]=c[(c[j>>2]|0)+8>>2];c[m>>2]=c[o>>2];c[k>>2]=0;c[l>>2]=0;c[L>>2]=c[c[j>>2]>>2];if((c[n>>2]|0)==0){c[p>>2]=0;e=c[p>>2]|0;i=q;return e|0}if((c[F>>2]|0)==0){c[ja>>2]=101}else{c[ja>>2]=d[c[F>>2]>>0]|0}a:do{switch(c[ja>>2]|0){case 101:{Qv(c[n>>2]|0,28,0,c[o>>2]|0)|0;break};case 159:{c[m>>2]=c[(c[F>>2]|0)+28>>2];break};case 97:{Sv(c[n>>2]|0,97,0,c[o>>2]|0,0,c[(c[F>>2]|0)+8>>2]|0,0)|0;break};case 94:case 88:case 87:case 92:case 86:case 85:case 93:case 90:case 91:case 89:case 71:case 72:{c[I>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,k)|0;c[ka>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+16>>2]|0,l)|0;Tv(c[n>>2]|0,c[ja>>2]|0,c[ka>>2]|0,c[I>>2]|0,c[o>>2]|0)|0;break};case 157:{c[ia>>2]=c[(c[F>>2]|0)+12>>2];do{if((d[c[ia>>2]>>0]|0)==132){yz(c[j>>2]|0,c[ia>>2]|0,1,c[o>>2]|0)}else{if((d[c[ia>>2]>>0]|0)==133){zz(c[n>>2]|0,c[(c[ia>>2]|0)+8>>2]|0,1,c[o>>2]|0);break}else{a[A>>0]=-124;c[A+4>>2]=17408;c[A+8>>2]=0;c[I>>2]=oz(c[j>>2]|0,A,k)|0;c[ka>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,l)|0;Tv(c[n>>2]|0,90,c[ka>>2]|0,c[I>>2]|0,c[o>>2]|0)|0;break}}}while(0);c[m>>2]=c[o>>2];break};case 77:case 76:{Qv(c[n>>2]|0,25,1,c[o>>2]|0)|0;c[I>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,k)|0;c[ha>>2]=oy(c[n>>2]|0,c[ja>>2]|0,c[I>>2]|0)|0;Qv(c[n>>2]|0,37,c[o>>2]|0,-1)|0;jw(c[n>>2]|0,c[ha>>2]|0);break};case 156:{c[fa>>2]=c[(c[F>>2]|0)+40>>2];c[ga>>2]=(c[(c[fa>>2]|0)+28>>2]|0)+((b[(c[F>>2]|0)+34>>1]|0)*24|0);if((a[c[fa>>2]>>0]|0)==0){c[m>>2]=c[(c[ga>>2]|0)+16>>2];break a}if((a[(c[fa>>2]|0)+1>>0]|0)!=0){Tv(c[n>>2]|0,46,c[(c[fa>>2]|0)+8>>2]|0,c[(c[ga>>2]|0)+12>>2]|0,c[o>>2]|0)|0}else{h=11}break};case 38:{c[m>>2]=wz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,c[o>>2]|0)|0;c[S>>2]=(Qw(c[(c[F>>2]|0)+8>>2]|0,0)|0)<<24>>24;c[ea>>2]=(c[S>>2]|0)-97+143;if((c[m>>2]|0)!=(c[o>>2]|0)){Qv(c[n>>2]|0,34,c[m>>2]|0,c[o>>2]|0)|0;c[m>>2]=c[o>>2]}oy(c[n>>2]|0,c[ea>>2]|0,c[m>>2]|0)|0;Az(c[j>>2]|0,c[m>>2]|0,1);break};case 154:{h=11;break};case 148:case 73:{c[I>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,k)|0;c[ka>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+16>>2]|0,l)|0;c[ja>>2]=(c[ja>>2]|0)==73?79:78;pz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,c[(c[F>>2]|0)+16>>2]|0,c[ja>>2]|0,c[I>>2]|0,c[ka>>2]|0,c[m>>2]|0,144)|0;break};case 132:{yz(c[j>>2]|0,c[F>>2]|0,0,c[o>>2]|0);break};case 134:{c[R>>2]=(c[(c[F>>2]|0)+8>>2]|0)+2;c[Q>>2]=(Ub(c[R>>2]|0)|0)-1;c[da>>2]=ow(mz(c[n>>2]|0)|0,c[R>>2]|0,c[Q>>2]|0)|0;Sv(c[n>>2]|0,30,(c[Q>>2]|0)/2|0,c[o>>2]|0,0,c[da>>2]|0,-1)|0;break};case 133:{zz(c[n>>2]|0,c[(c[F>>2]|0)+8>>2]|0,0,c[o>>2]|0);break};case 79:case 78:case 83:case 80:case 81:case 82:{c[I>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,k)|0;c[ka>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+16>>2]|0,l)|0;pz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,c[(c[F>>2]|0)+16>>2]|0,c[ja>>2]|0,c[I>>2]|0,c[ka>>2]|0,c[m>>2]|0,16)|0;break};case 19:case 96:{c[I>>2]=oz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,k)|0;c[m>>2]=c[o>>2];Qv(c[n>>2]|0,c[ja>>2]|0,c[I>>2]|0,c[m>>2]|0)|0;break};case 24:{c[m>>2]=wz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,c[o>>2]|0)|0;break};case 153:{c[D>>2]=0;a[O>>0]=a[(c[(c[(c[L>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;c[H>>2]=0;if((c[(c[F>>2]|0)+4>>2]&16384|0)!=0){c[B>>2]=0}else{c[B>>2]=c[(c[F>>2]|0)+20>>2]}if((c[B>>2]|0)!=0){r=c[c[B>>2]>>2]|0}else{r=0}c[C>>2]=r;c[N>>2]=c[(c[F>>2]|0)+8>>2];c[P>>2]=Ub(c[N>>2]|0)|0;c[G>>2]=rg(c[L>>2]|0,c[N>>2]|0,c[P>>2]|0,c[C>>2]|0,a[O>>0]|0,0)|0;if((c[G>>2]|0)==0){e=c[j>>2]|0;f=c[N>>2]|0;c[M>>2]=c[P>>2];c[M+4>>2]=f;bf(e,25672,M);break a}if((b[(c[G>>2]|0)+2>>1]&512|0)!=0){c[J>>2]=cz(c[n>>2]|0)|0;vz(c[j>>2]|0,c[c[(c[B>>2]|0)+4>>2]>>2]|0,c[o>>2]|0);c[K>>2]=1;while(1){r=c[n>>2]|0;if((c[K>>2]|0)>=(c[C>>2]|0)){break}Qv(r,77,c[o>>2]|0,c[J>>2]|0)|0;jz(c[j>>2]|0,c[o>>2]|0,1);dz(c[j>>2]|0);vz(c[j>>2]|0,c[(c[(c[B>>2]|0)+4>>2]|0)+((c[K>>2]|0)*20|0)>>2]|0,c[o>>2]|0);az(c[j>>2]|0);c[K>>2]=(c[K>>2]|0)+1}$y(r,c[J>>2]|0);break a}if((b[(c[G>>2]|0)+2>>1]&1024|0)!=0){vz(c[j>>2]|0,c[c[(c[B>>2]|0)+4>>2]>>2]|0,c[o>>2]|0);break a}c[K>>2]=0;while(1){if((c[K>>2]|0)>=(c[C>>2]|0)){break}if((c[K>>2]|0)<32){if((Bz(c[(c[(c[B>>2]|0)+4>>2]|0)+((c[K>>2]|0)*20|0)>>2]|0)|0)!=0){c[D>>2]=c[D>>2]|1<>2]}}if((b[(c[G>>2]|0)+2>>1]&32|0)!=0){if((c[H>>2]|0)==0){c[H>>2]=Jw(c[j>>2]|0,c[(c[(c[B>>2]|0)+4>>2]|0)+((c[K>>2]|0)*20|0)>>2]|0)|0}}c[K>>2]=(c[K>>2]|0)+1}if((c[B>>2]|0)!=0){r=c[j>>2]|0;if((c[D>>2]|0)!=0){c[I>>2]=(c[r+72>>2]|0)+1;e=(c[j>>2]|0)+72|0;c[e>>2]=(c[e>>2]|0)+(c[C>>2]|0)}else{c[I>>2]=fz(r,c[C>>2]|0)|0}do{if((b[(c[G>>2]|0)+2>>1]&192|0)!=0){a[E>>0]=a[c[c[(c[B>>2]|0)+4>>2]>>2]>>0]|0;if((d[E>>0]|0)!=154){if((d[E>>0]|0)!=156){break}}a[(c[c[(c[B>>2]|0)+4>>2]>>2]|0)+38>>0]=b[(c[G>>2]|0)+2>>1]&192}}while(0);dz(c[j>>2]|0);Cz(c[j>>2]|0,c[B>>2]|0,c[I>>2]|0,3)|0;az(c[j>>2]|0)}else{c[I>>2]=0}if((c[C>>2]|0)>=2){if((c[(c[F>>2]|0)+4>>2]&128|0)!=0){c[G>>2]=Dz(c[L>>2]|0,c[G>>2]|0,c[C>>2]|0,c[(c[(c[B>>2]|0)+4>>2]|0)+20>>2]|0)|0}else{h=78}}else{h=78}if((h|0)==78){if((c[C>>2]|0)>0){c[G>>2]=Dz(c[L>>2]|0,c[G>>2]|0,c[C>>2]|0,c[c[(c[B>>2]|0)+4>>2]>>2]|0)|0}}if((b[(c[G>>2]|0)+2>>1]&32|0)!=0){if((c[H>>2]|0)==0){c[H>>2]=c[(c[L>>2]|0)+8>>2]}Sv(c[n>>2]|0,36,0,0,0,c[H>>2]|0,-4)|0}Sv(c[n>>2]|0,1,c[D>>2]|0,c[I>>2]|0,c[o>>2]|0,c[G>>2]|0,-5)|0;gf(c[n>>2]|0,c[C>>2]&255);if((c[C>>2]|0)!=0){if((c[D>>2]|0)==0){iz(c[j>>2]|0,c[I>>2]|0,c[C>>2]|0)}}break};case 155:{c[T>>2]=c[(c[F>>2]|0)+40>>2];if((c[T>>2]|0)==0){e=c[j>>2]|0;c[M>>2]=c[(c[F>>2]|0)+8>>2];bf(e,25640,M);break a}else{c[m>>2]=c[(c[(c[T>>2]|0)+40>>2]|0)+(b[(c[F>>2]|0)+34>>1]<<4)+8>>2];break a}};case 135:{Qv(c[n>>2]|0,31,b[(c[F>>2]|0)+32>>1]|0,c[o>>2]|0)|0;if((a[(c[(c[F>>2]|0)+8>>2]|0)+1>>0]|0)!=0){nf(c[n>>2]|0,-1,c[(c[(c[j>>2]|0)+472>>2]|0)+((b[(c[F>>2]|0)+32>>1]|0)-1<<2)>>2]|0,-2)}break};case 75:{c[U>>2]=cz(c[n>>2]|0)|0;c[V>>2]=cz(c[n>>2]|0)|0;Qv(c[n>>2]|0,28,0,c[o>>2]|0)|0;rz(c[j>>2]|0,c[F>>2]|0,c[U>>2]|0,c[V>>2]|0);Qv(c[n>>2]|0,25,1,c[o>>2]|0)|0;$y(c[n>>2]|0,c[U>>2]|0);Qv(c[n>>2]|0,37,c[o>>2]|0,0)|0;$y(c[n>>2]|0,c[V>>2]|0);break};case 158:case 95:{c[m>>2]=wz(c[j>>2]|0,c[(c[F>>2]|0)+12>>2]|0,c[o>>2]|0)|0;break};case 119:case 20:{c[m>>2]=Ez(c[j>>2]|0,c[F>>2]|0,0,0)|0;break};case 74:{c[W>>2]=c[(c[F>>2]|0)+12>>2];c[X>>2]=c[(c[(c[F>>2]|0)+20>>2]|0)+4>>2];c[Y>>2]=c[c[X>>2]>>2];c[I>>2]=oz(c[j>>2]|0,c[W>>2]|0,k)|0;c[ka>>2]=oz(c[j>>2]|0,c[Y>>2]|0,l)|0;c[Z>>2]=Wv(c[j>>2]|0)|0;c[_>>2]=Wv(c[j>>2]|0)|0;pz(c[j>>2]|0,c[W>>2]|0,c[Y>>2]|0,83,c[I>>2]|0,c[ka>>2]|0,c[Z>>2]|0,16)|0;c[X>>2]=(c[X>>2]|0)+20;c[Y>>2]=c[c[X>>2]>>2];Xv(c[j>>2]|0,c[l>>2]|0);c[ka>>2]=oz(c[j>>2]|0,c[Y>>2]|0,l)|0;pz(c[j>>2]|0,c[W>>2]|0,c[Y>>2]|0,81,c[I>>2]|0,c[ka>>2]|0,c[_>>2]|0,16)|0;Tv(c[n>>2]|0,72,c[Z>>2]|0,c[_>>2]|0,c[o>>2]|0)|0;Xv(c[j>>2]|0,c[Z>>2]|0);Xv(c[j>>2]|0,c[_>>2]|0);break};case 62:{c[aa>>2]=c[(c[F>>2]|0)+44>>2];e=($(c[(c[F>>2]|0)+28>>2]|0,(b[(c[aa>>2]|0)+38>>1]|0)+1|0)|0)+1|0;c[ba>>2]=e+(b[(c[F>>2]|0)+32>>1]|0);Qv(c[n>>2]|0,129,c[ba>>2]|0,c[o>>2]|0)|0;if((b[(c[F>>2]|0)+32>>1]|0)>=0){if((a[(c[(c[aa>>2]|0)+4>>2]|0)+((b[(c[F>>2]|0)+32>>1]|0)*24|0)+21>>0]|0)==101){oy(c[n>>2]|0,39,c[o>>2]|0)|0}}break};case 57:{if((c[(c[j>>2]|0)+412>>2]|0)==0){bf(c[j>>2]|0,25704,M);c[p>>2]=0;e=c[p>>2]|0;i=q;return e|0}if((a[(c[F>>2]|0)+1>>0]|0)==2){xw(c[j>>2]|0)}if((a[(c[F>>2]|0)+1>>0]|0)==4){Sv(c[n>>2]|0,24,0,4,0,c[(c[F>>2]|0)+8>>2]|0,0)|0;break a}else{_y(c[j>>2]|0,1811,a[(c[F>>2]|0)+1>>0]|0,c[(c[F>>2]|0)+8>>2]|0,0,0);break a}};default:{c[w>>2]=0;c[t>>2]=c[(c[F>>2]|0)+20>>2];c[u>>2]=c[(c[t>>2]|0)+4>>2];c[v>>2]=c[c[t>>2]>>2];c[r>>2]=cz(c[n>>2]|0)|0;e=c[(c[F>>2]|0)+12>>2]|0;c[y>>2]=e;if((e|0)!=0){D=A+0|0;C=(c[y>>2]|0)+0|0;B=D+48|0;do{c[D>>2]=c[C>>2];D=D+4|0;C=C+4|0}while((D|0)<(B|0));Fz(A,oz(c[j>>2]|0,c[y>>2]|0,k)|0);a[x>>0]=79;c[x+12>>2]=A;c[w>>2]=x;c[k>>2]=0}c[z>>2]=0;while(1){if((c[z>>2]|0)>=((c[v>>2]|0)-1|0)){break}dz(c[j>>2]|0);A=c[(c[u>>2]|0)+((c[z>>2]|0)*20|0)>>2]|0;if((c[y>>2]|0)!=0){c[x+16>>2]=A}else{c[w>>2]=A}c[s>>2]=cz(c[n>>2]|0)|0;ez(c[j>>2]|0,c[w>>2]|0,c[s>>2]|0,8);vz(c[j>>2]|0,c[(c[u>>2]|0)+(((c[z>>2]|0)+1|0)*20|0)>>2]|0,c[o>>2]|0);Qv(c[n>>2]|0,16,0,c[r>>2]|0)|0;az(c[j>>2]|0);$y(c[n>>2]|0,c[s>>2]|0);c[z>>2]=(c[z>>2]|0)+2}if((c[v>>2]&1|0)!=0){dz(c[j>>2]|0);vz(c[j>>2]|0,c[(c[(c[t>>2]|0)+4>>2]|0)+(((c[v>>2]|0)-1|0)*20|0)>>2]|0,c[o>>2]|0);az(c[j>>2]|0)}else{Qv(c[n>>2]|0,28,0,c[o>>2]|0)|0}$y(c[n>>2]|0,c[r>>2]|0)}}}while(0);b:do{if((h|0)==11){c[ca>>2]=c[(c[F>>2]|0)+28>>2];do{if((c[ca>>2]|0)<0){if((c[(c[j>>2]|0)+92>>2]|0)>0){c[m>>2]=(b[(c[F>>2]|0)+32>>1]|0)+(c[(c[j>>2]|0)+92>>2]|0);break b}else{c[ca>>2]=c[(c[j>>2]|0)+96>>2];break}}}while(0);c[m>>2]=xz(c[j>>2]|0,c[(c[F>>2]|0)+44>>2]|0,b[(c[F>>2]|0)+32>>1]|0,c[ca>>2]|0,c[o>>2]|0,a[(c[F>>2]|0)+38>>0]|0)|0}}while(0);Xv(c[j>>2]|0,c[k>>2]|0);Xv(c[j>>2]|0,c[l>>2]|0);c[p>>2]=c[m>>2];e=c[p>>2]|0;i=q;return e|0}function xz(d,e,f,g,h,j){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;n=i;i=i+48|0;m=n+32|0;q=n+28|0;k=n+24|0;s=n+20|0;r=n+12|0;t=n+8|0;p=n+36|0;o=n+4|0;v=n;u=n+16|0;c[q>>2]=d;c[k>>2]=e;c[s>>2]=f;c[r>>2]=g;c[t>>2]=h;a[p>>0]=j;c[o>>2]=c[(c[q>>2]|0)+8>>2];c[v>>2]=0;c[u>>2]=(c[q>>2]|0)+116;while(1){if((c[v>>2]|0)>=10){break}if((c[(c[u>>2]|0)+12>>2]|0)>0){if((c[c[u>>2]>>2]|0)==(c[r>>2]|0)){if((b[(c[u>>2]|0)+4>>1]|0)==(c[s>>2]|0)){l=6;break}}}c[v>>2]=(c[v>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+20}if((l|0)==6){e=(c[q>>2]|0)+104|0;d=c[e>>2]|0;c[e>>2]=d+1;c[(c[u>>2]|0)+16>>2]=d;Pz(c[q>>2]|0,c[(c[u>>2]|0)+12>>2]|0);c[m>>2]=c[(c[u>>2]|0)+12>>2];d=c[m>>2]|0;i=n;return d|0}gz(c[o>>2]|0,c[k>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0);if((a[p>>0]|0)!=0){gf(c[o>>2]|0,a[p>>0]|0)}else{Qz(c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0)}c[m>>2]=c[t>>2];d=c[m>>2]|0;i=n;return d|0}function yz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+48|0;q=h+40|0;p=h+36|0;m=h+32|0;g=h+28|0;j=h+24|0;l=h+20|0;n=h+12|0;f=h;o=h+8|0;k=h+16|0;c[q>>2]=a;c[p>>2]=b;c[m>>2]=d;c[g>>2]=e;c[j>>2]=c[(c[q>>2]|0)+8>>2];e=(c[p>>2]|0)+8|0;if((c[(c[p>>2]|0)+4>>2]&1024|0)!=0){c[l>>2]=c[e>>2];if((c[m>>2]|0)!=0){c[l>>2]=0-(c[l>>2]|0)}Qv(c[j>>2]|0,25,c[l>>2]|0,c[g>>2]|0)|0;i=h;return}c[o>>2]=c[e>>2];q=c[o>>2]|0;c[n>>2]=Pg(q,f,Ub(c[o>>2]|0)|0,1)|0;do{if((c[n>>2]|0)!=0){if((c[n>>2]|0)==2){if((c[m>>2]|0)!=0){break}}zz(c[j>>2]|0,c[o>>2]|0,c[m>>2]|0,c[g>>2]|0);i=h;return}}while(0);if((c[m>>2]|0)!=0){if((c[n>>2]|0)==2){m=0;l=-2147483648}else{m=f;m=$K(0,0,c[m>>2]|0,c[m+4>>2]|0)|0;l=D}q=f;c[q>>2]=m;c[q+4>>2]=l}c[k>>2]=Oz(c[j>>2]|0,f)|0;Sv(c[j>>2]|0,26,0,c[g>>2]|0,0,c[k>>2]|0,-13)|0;i=h;return}function zz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;g=l+24|0;m=l+16|0;n=l+8|0;f=l+12|0;j=l;k=l+20|0;c[g>>2]=a;c[m>>2]=b;c[n>>2]=d;c[f>>2]=e;if((c[m>>2]|0)==0){i=l;return}a=c[m>>2]|0;zt(a,j,Ub(c[m>>2]|0)|0,1)|0;if((c[n>>2]|0)!=0){h[j>>3]=-+h[j>>3]}c[k>>2]=Oz(c[g>>2]|0,j)|0;Sv(c[g>>2]|0,133,0,c[f>>2]|0,0,c[k>>2]|0,-12)|0;i=l;return}function Az(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;jz(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0);i=e;return}function Bz(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Lz(c[d>>2]|0,1)|0;i=b;return a|0}function Cz(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;r=i;i=i+48|0;l=r+36|0;v=r+28|0;n=r+32|0;q=r+40|0;p=r+24|0;o=r+16|0;k=r+12|0;t=r+41|0;m=r+8|0;u=r+4|0;s=r;h=r+20|0;c[l>>2]=b;c[v>>2]=e;c[n>>2]=f;a[q>>0]=g;a[t>>0]=(a[q>>0]&1|0)!=0?33:34;c[k>>2]=c[c[v>>2]>>2];if((a[(c[l>>2]|0)+23>>0]|0)==0){a[q>>0]=d[q>>0]&-3}c[p>>2]=c[(c[v>>2]|0)+4>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[k>>2]|0)){break}c[m>>2]=c[c[p>>2]>>2];if((a[q>>0]&2|0)!=0){if((Bz(c[m>>2]|0)|0)!=0){Jz(c[l>>2]|0,c[m>>2]|0,(c[n>>2]|0)+(c[o>>2]|0)|0,0)}else{j=8}}else{j=8}do{if((j|0)==8){j=0;c[u>>2]=wz(c[l>>2]|0,c[m>>2]|0,(c[n>>2]|0)+(c[o>>2]|0)|0)|0;if((c[u>>2]|0)!=((c[n>>2]|0)+(c[o>>2]|0)|0)){c[h>>2]=c[(c[l>>2]|0)+8>>2];if((d[t>>0]|0)==33){b=Kz(c[h>>2]|0,-1)|0;c[s>>2]=b;if((d[b>>0]|0)==33){if(((c[(c[s>>2]|0)+4>>2]|0)+(c[(c[s>>2]|0)+12>>2]|0)+1|0)==(c[u>>2]|0)){if(((c[(c[s>>2]|0)+8>>2]|0)+(c[(c[s>>2]|0)+12>>2]|0)+1|0)==((c[n>>2]|0)+(c[o>>2]|0)|0)){b=(c[s>>2]|0)+12|0;c[b>>2]=(c[b>>2]|0)+1;break}}}}Qv(c[h>>2]|0,d[t>>0]|0,c[u>>2]|0,(c[n>>2]|0)+(c[o>>2]|0)|0)|0}}}while(0);c[o>>2]=(c[o>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+20}i=r;return c[k>>2]|0}function Dz(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var 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;o=i;i=i+64|0;l=o+56|0;v=o+52|0;m=o+48|0;r=o+44|0;z=o+40|0;y=o+36|0;q=o+32|0;x=o+28|0;n=o+20|0;k=o+16|0;p=o+12|0;u=o+8|0;s=o+4|0;w=o;t=o+24|0;c[v>>2]=f;c[m>>2]=g;c[r>>2]=h;c[z>>2]=j;c[n>>2]=0;c[k>>2]=0;c[u>>2]=0;if((c[z>>2]|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}if((d[c[z>>2]>>0]|0)!=154){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}c[y>>2]=c[(c[z>>2]|0)+44>>2];if((c[y>>2]|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}if((a[(c[y>>2]|0)+44>>0]&16|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}c[q>>2]=c[(ww(c[v>>2]|0,c[y>>2]|0)|0)+8>>2];c[x>>2]=c[c[q>>2]>>2];if((c[(c[x>>2]|0)+72>>2]|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}c[s>>2]=pe(c[v>>2]|0,c[(c[m>>2]|0)+24>>2]|0)|0;if((c[s>>2]|0)!=0){c[w>>2]=c[s>>2];while(1){if((a[c[w>>2]>>0]|0)==0){break}a[c[w>>2]>>0]=a[784+(d[c[w>>2]>>0]|0)>>0]|0;c[w>>2]=(c[w>>2]|0)+1}z=c[(c[x>>2]|0)+72>>2]|0;h=c[q>>2]|0;g=c[r>>2]|0;f=c[s>>2]|0;c[t>>2]=n;c[u>>2]=Ab[z&15](h,g,f,c[t>>2]|0,k)|0;cc(c[v>>2]|0,c[s>>2]|0)}if((c[u>>2]|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}f=c[v>>2]|0;c[p>>2]=ve(f,37+(Ub(c[(c[m>>2]|0)+24>>2]|0)|0)|0)|0;if((c[p>>2]|0)==0){c[l>>2]=c[m>>2];f=c[l>>2]|0;i=o;return f|0}else{s=(c[p>>2]|0)+0|0;r=(c[m>>2]|0)+0|0;q=s+36|0;do{c[s>>2]=c[r>>2];s=s+4|0;r=r+4|0}while((s|0)<(q|0));c[(c[p>>2]|0)+24>>2]=(c[p>>2]|0)+36;g=c[(c[p>>2]|0)+24>>2]|0;f=c[(c[m>>2]|0)+24>>2]|0;fL(g|0,f|0,(Ub(c[(c[m>>2]|0)+24>>2]|0)|0)+1|0)|0;c[(c[p>>2]|0)+12>>2]=c[n>>2];c[(c[p>>2]|0)+4>>2]=c[k>>2];f=(c[p>>2]|0)+2|0;b[f>>1]=e[f>>1]|16;c[l>>2]=c[p>>2];f=c[l>>2]|0;i=o;return f|0}return 0}function Ez(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;A=i;i=i+144|0;I=A;k=A+100|0;l=A+104|0;r=A+108|0;F=A+112|0;z=A+120|0;o=A+124|0;m=A+128|0;n=A+132|0;J=A+136|0;u=A+140|0;p=A+96|0;E=A+92|0;q=A+116|0;B=A+28|0;D=A+24|0;t=A+12|0;C=A+16|0;h=A+20|0;v=A+68|0;w=A+48|0;s=A+52|0;y=A+56|0;x=A+60|0;H=A+64|0;G=A+72|0;c[l>>2]=b;c[r>>2]=e;c[F>>2]=f;c[z>>2]=g;c[o>>2]=-1;c[m>>2]=0;c[n>>2]=Ov(c[l>>2]|0)|0;if((c[n>>2]|0)==0){c[k>>2]=0;b=c[k>>2]|0;i=A;return b|0}dz(c[l>>2]|0);if((c[(c[r>>2]|0)+4>>2]&32|0)==0){c[o>>2]=Gz(c[l>>2]|0)|0}if((d[(c[l>>2]|0)+450>>0]|0)==2){b=c[c[l>>2]>>2]|0;f=(d[c[r>>2]>>0]|0)==75?25808:25816;e=c[(c[l>>2]|0)+468>>2]|0;c[I>>2]=(c[o>>2]|0)>=0?1784:25792;c[I+4>>2]=f;c[I+8>>2]=e;c[J>>2]=cf(b,25760,I)|0;Sv(c[n>>2]|0,157,c[(c[l>>2]|0)+464>>2]|0,0,0,c[J>>2]|0,-1)|0}I=c[r>>2]|0;do{if((d[c[r>>2]>>0]|0)==75){c[E>>2]=c[I+12>>2];c[q>>2]=0;if((c[F>>2]|0)!=0){Qv(c[n>>2]|0,28,0,c[F>>2]|0)|0}a[u>>0]=Iw(c[E>>2]|0)|0;e=(c[l>>2]|0)+68|0;b=c[e>>2]|0;c[e>>2]=b+1;c[(c[r>>2]|0)+28>>2]=b;c[p>>2]=Qv(c[n>>2]|0,55,c[(c[r>>2]|0)+28>>2]|0,((c[z>>2]|0)!=0^1)&1)|0;if((c[z>>2]|0)!=0){E=0}else{E=By(c[c[l>>2]>>2]|0,1,1)|0}c[q>>2]=E;E=c[r>>2]|0;do{if((c[(c[r>>2]|0)+4>>2]&2048|0)!=0){Hz(B,11,c[E+28>>2]|0);a[B+1>>0]=a[u>>0]|0;c[(c[(c[r>>2]|0)+20>>2]|0)+8>>2]=0;if((Mu(c[l>>2]|0,c[(c[r>>2]|0)+20>>2]|0,B)|0)==0){c[D>>2]=c[c[(c[r>>2]|0)+20>>2]>>2];b=Iz(c[l>>2]|0,c[(c[r>>2]|0)+12>>2]|0,c[c[(c[D>>2]|0)+4>>2]>>2]|0)|0;c[(c[q>>2]|0)+20>>2]=b;break}Ch(c[q>>2]|0);c[k>>2]=0;b=c[k>>2]|0;i=A;return b|0}else{if((c[E+20>>2]|0)!=0){c[C>>2]=c[(c[r>>2]|0)+20>>2];if((a[u>>0]|0)==0){a[u>>0]=98}if((c[q>>2]|0)!=0){b=Jw(c[l>>2]|0,c[(c[r>>2]|0)+12>>2]|0)|0;c[(c[q>>2]|0)+20>>2]=b}c[v>>2]=Wv(c[l>>2]|0)|0;c[w>>2]=Wv(c[l>>2]|0)|0;Qv(c[n>>2]|0,28,0,c[w>>2]|0)|0;c[t>>2]=c[c[C>>2]>>2];c[h>>2]=c[(c[C>>2]|0)+4>>2];while(1){if((c[t>>2]|0)<=0){break}c[y>>2]=c[c[h>>2]>>2];if((c[o>>2]|0)>=0){if((Bz(c[y>>2]|0)|0)==0){of(c[n>>2]|0,c[o>>2]|0);c[o>>2]=-1}}if((c[z>>2]|0)!=0){if((ex(c[y>>2]|0,x)|0)!=0){Tv(c[n>>2]|0,73,c[(c[r>>2]|0)+28>>2]|0,c[w>>2]|0,c[x>>2]|0)|0}else{j=29}}else{j=29}do{if((j|0)==29){j=0;c[s>>2]=wz(c[l>>2]|0,c[y>>2]|0,c[v>>2]|0)|0;C=c[n>>2]|0;B=c[s>>2]|0;if((c[z>>2]|0)!=0){Qv(C,38,B,(sy(c[n>>2]|0)|0)+2|0)|0;Tv(c[n>>2]|0,70,c[(c[r>>2]|0)+28>>2]|0,c[w>>2]|0,c[s>>2]|0)|0;break}else{Sv(C,48,B,1,c[w>>2]|0,u,1)|0;Az(c[l>>2]|0,c[s>>2]|0,1);Qv(c[n>>2]|0,107,c[(c[r>>2]|0)+28>>2]|0,c[w>>2]|0)|0;break}}}while(0);c[t>>2]=(c[t>>2]|0)+ -1;c[h>>2]=(c[h>>2]|0)+20}Xv(c[l>>2]|0,c[v>>2]|0);Xv(c[l>>2]|0,c[w>>2]|0)}}}while(0);if((c[q>>2]|0)!=0){nf(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,-6)}}else{c[H>>2]=c[I+20>>2];e=(c[l>>2]|0)+72|0;b=(c[e>>2]|0)+1|0;c[e>>2]=b;Hz(G,0,b);if((d[c[r>>2]>>0]|0)==119){a[G>>0]=10;Qv(c[n>>2]|0,28,0,c[G+4>>2]|0)|0}else{a[G>>0]=3;Qv(c[n>>2]|0,25,0,c[G+4>>2]|0)|0}gu(c[c[l>>2]>>2]|0,c[(c[H>>2]|0)+60>>2]|0);b=Bu(c[l>>2]|0,132,0,0,16688|0)|0;c[(c[H>>2]|0)+60>>2]=b;c[(c[H>>2]|0)+8>>2]=0;if((Mu(c[l>>2]|0,c[H>>2]|0,G)|0)==0){c[m>>2]=c[G+4>>2];break}c[k>>2]=0;b=c[k>>2]|0;i=A;return b|0}}while(0);if((c[o>>2]|0)>=0){jw(c[n>>2]|0,c[o>>2]|0)}az(c[l>>2]|0);c[k>>2]=c[m>>2];b=c[k>>2]|0;i=A;return b|0}function Fz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[(c[f>>2]|0)+38>>0]=a[c[f>>2]>>0]|0;a[c[f>>2]>>0]=-97;c[(c[f>>2]|0)+28>>2]=c[g>>2];b=(c[f>>2]|0)+4|0;c[b>>2]=c[b>>2]&-4097;i=e;return}function Gz(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=Ov(c[e>>2]|0)|0;d=c[d>>2]|0;e=(c[e>>2]|0)+80|0;a=c[e>>2]|0;c[e>>2]=a+1;a=oy(d,43,a)|0;i=b;return a|0}function Hz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;j=f;h=f+4|0;c[g>>2]=b;c[j>>2]=d;c[h>>2]=e;a[c[g>>2]>>0]=c[j>>2];c[(c[g>>2]|0)+4>>2]=c[h>>2];a[(c[g>>2]|0)+1>>0]=0;c[(c[g>>2]|0)+8>>2]=0;c[(c[g>>2]|0)+12>>2]=0;i=f;return}function Iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e+12|0;g=e;j=e+4|0;f=e+8|0;c[h>>2]=a;c[g>>2]=b;c[j>>2]=d;if((c[(c[g>>2]|0)+4>>2]&256|0)!=0){c[f>>2]=Jw(c[h>>2]|0,c[g>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}if((c[j>>2]|0)!=0){if((c[(c[j>>2]|0)+4>>2]&256|0)!=0){c[f>>2]=Jw(c[h>>2]|0,c[j>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}}c[f>>2]=Jw(c[h>>2]|0,c[g>>2]|0)|0;if((c[f>>2]|0)!=0){a=c[f>>2]|0;i=e;return a|0}c[f>>2]=Jw(c[h>>2]|0,c[j>>2]|0)|0;a=c[f>>2]|0;i=e;return a|0}function Jz(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+16|0;o=h;m=h+4|0;n=h+20|0;k=h+12|0;l=h+8|0;c[j>>2]=b;c[o>>2]=e;c[m>>2]=f;a[n>>0]=g;c[k>>2]=c[(c[j>>2]|0)+316>>2];c[o>>2]=hx(c[c[j>>2]>>2]|0,c[o>>2]|0,0)|0;c[k>>2]=Pu(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0)|0;if((c[k>>2]|0)==0){b=c[k>>2]|0;o=c[j>>2]|0;o=o+316|0;c[o>>2]=b;i=h;return}c[l>>2]=(c[(c[k>>2]|0)+4>>2]|0)+(((c[c[k>>2]>>2]|0)-1|0)*20|0);c[(c[l>>2]|0)+16>>2]=c[m>>2];b=(c[l>>2]|0)+13|0;a[b>>0]=a[b>>0]&-5|((d[n>>0]|0)&1)<<2&255;b=c[k>>2]|0;o=c[j>>2]|0;o=o+316|0;c[o>>2]=b;i=h;return}function Kz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;e=f+8|0;g=f;h=f+4|0;c[g>>2]=b;c[h>>2]=d;if((c[h>>2]|0)<0){c[h>>2]=(c[(c[g>>2]|0)+32>>2]|0)-1}if((a[(c[c[g>>2]>>2]|0)+64>>0]|0)!=0){c[e>>2]=25824;b=c[e>>2]|0;i=f;return b|0}else{c[e>>2]=(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*20|0);b=c[e>>2]|0;i=f;return b|0}return 0}function Lz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+48|0;f=e+32|0;g=e;d=e+8|0;c[f>>2]=a;c[g>>2]=b;c[d+0>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+20>>2]=c[g>>2];c[d>>2]=62;c[d+4>>2]=63;_w(d,c[f>>2]|0)|0;i=e;return c[d+20>>2]|0}function Mz(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;h=f;j=f+4|0;c[h>>2]=a;c[j>>2]=b;if((c[(c[h>>2]|0)+20>>2]|0)==3){if((c[(c[j>>2]|0)+4>>2]&1|0)!=0){c[(c[h>>2]|0)+20>>2]=0;c[g>>2]=2}else{e=4}}else{e=4}a:do{if((e|0)==4){switch(d[c[j>>2]>>0]|0|0){case 153:{e=5;break};case 156:case 155:case 154:case 27:{break};default:{c[g>>2]=0;break a}}do{if((e|0)==5){if((c[(c[h>>2]|0)+20>>2]|0)!=2){if((c[(c[j>>2]|0)+4>>2]&524288|0)==0){break}}c[g>>2]=0;break a}}while(0);c[(c[h>>2]|0)+20>>2]=0;c[g>>2]=2}}while(0);i=f;return c[g>>2]|0}function Nz(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d+4|0;c[e>>2]=a;c[d>>2]=b;c[(c[e>>2]|0)+20>>2]=0;i=d;return 2}function Oz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=b;c[g>>2]=d;c[f>>2]=$e(mz(c[h>>2]|0)|0,8)|0;if((c[f>>2]|0)==0){h=c[f>>2]|0;i=e;return h|0}h=c[f>>2]|0;b=c[g>>2]|0;a[h+0>>0]=a[b+0>>0]|0;a[h+1>>0]=a[b+1>>0]|0;a[h+2>>0]=a[b+2>>0]|0;a[h+3>>0]=a[b+3>>0]|0;a[h+4>>0]=a[b+4>>0]|0;a[h+5>>0]=a[b+5>>0]|0;a[h+6>>0]=a[b+6>>0]|0;a[h+7>>0]=a[b+7>>0]|0;h=c[f>>2]|0;i=e;return h|0}function Pz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;g=e;h=e+4|0;f=e+8|0;c[j>>2]=b;c[g>>2]=d;c[h>>2]=0;c[f>>2]=(c[j>>2]|0)+116;while(1){if((c[h>>2]|0)>=10){break}if((c[(c[f>>2]|0)+12>>2]|0)==(c[g>>2]|0)){a[(c[f>>2]|0)+6>>0]=0}c[h>>2]=(c[h>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+20}i=e;return}function Qz(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=i;i=i+32|0;k=p+28|0;n=p;o=p+4|0;h=p+8|0;q=p+12|0;r=p+16|0;l=p+20|0;m=p+24|0;c[k>>2]=d;c[n>>2]=e;c[o>>2]=f;c[h>>2]=g;if((b[(c[c[k>>2]>>2]|0)+60>>1]&2|0)!=0){i=p;return}c[q>>2]=0;c[m>>2]=(c[k>>2]|0)+116;while(1){if((c[q>>2]|0)>=10){break}if((c[(c[m>>2]|0)+12>>2]|0)==0){j=5;break}c[q>>2]=(c[q>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+20}if((j|0)==5){c[(c[m>>2]|0)+8>>2]=c[(c[k>>2]|0)+100>>2];c[c[m>>2]>>2]=c[n>>2];b[(c[m>>2]|0)+4>>1]=c[o>>2];c[(c[m>>2]|0)+12>>2]=c[h>>2];a[(c[m>>2]|0)+6>>0]=0;e=(c[k>>2]|0)+104|0;d=c[e>>2]|0;c[e>>2]=d+1;c[(c[m>>2]|0)+16>>2]=d;i=p;return}c[r>>2]=2147483647;c[l>>2]=-1;c[q>>2]=0;c[m>>2]=(c[k>>2]|0)+116;while(1){if((c[q>>2]|0)>=10){break}if((c[(c[m>>2]|0)+16>>2]|0)<(c[r>>2]|0)){c[l>>2]=c[q>>2];c[r>>2]=c[(c[m>>2]|0)+16>>2]}c[q>>2]=(c[q>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+20}if((c[l>>2]|0)<0){i=p;return}c[m>>2]=(c[k>>2]|0)+116+((c[l>>2]|0)*20|0);c[(c[m>>2]|0)+8>>2]=c[(c[k>>2]|0)+100>>2];c[c[m>>2]>>2]=c[n>>2];b[(c[m>>2]|0)+4>>1]=c[o>>2];c[(c[m>>2]|0)+12>>2]=c[h>>2];a[(c[m>>2]|0)+6>>0]=0;e=(c[k>>2]|0)+104|0;d=c[e>>2]|0;c[e>>2]=d+1;c[(c[m>>2]|0)+16>>2]=d;i=p;return}function Rz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+6|0;j=f;g=f+4|0;h=f+5|0;c[j>>2]=b;a[g>>0]=d;a[h>>0]=Iw(c[j>>2]|0)|0;if((a[h>>0]|0)!=0){if((a[g>>0]|0)!=0){if((a[h>>0]|0)<99){if((a[g>>0]|0)<99){a[e>>0]=98;j=a[e>>0]|0;i=f;return j|0}}a[e>>0]=99;j=a[e>>0]|0;i=f;return j|0}}if((a[h>>0]|0)==0){if((a[g>>0]|0)==0){a[e>>0]=98;j=a[e>>0]|0;i=f;return j|0}}a[e>>0]=(a[h>>0]|0)+(a[g>>0]|0);j=a[e>>0]|0;i=f;return j|0}function Sz(e){e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f;l=f+4|0;j=f+8|0;k=f+12|0;c[h>>2]=e;do{if((c[h>>2]|0)==0){c[g>>2]=0}else{if((c[(c[h>>2]|0)+52>>2]|0)!=0){c[g>>2]=0;break}if((b[(c[h>>2]|0)+6>>1]&5|0)!=0){c[g>>2]=0;break}if((c[(c[h>>2]|0)+60>>2]|0)!=0){c[g>>2]=0;break}if((c[(c[h>>2]|0)+36>>2]|0)!=0){c[g>>2]=0;break}c[l>>2]=c[(c[h>>2]|0)+32>>2];if((c[c[l>>2]>>2]|0)!=1){c[g>>2]=0;break}if((c[(c[l>>2]|0)+28>>2]|0)!=0){c[g>>2]=0;break}c[k>>2]=c[(c[l>>2]|0)+24>>2];if((c[k>>2]|0)==0){c[g>>2]=0;break}if((a[(c[k>>2]|0)+44>>0]&16|0)!=0){c[g>>2]=0;break}c[j>>2]=c[c[h>>2]>>2];if((c[c[j>>2]>>2]|0)!=1){c[g>>2]=0;break}if((d[c[c[(c[j>>2]|0)+4>>2]>>2]>>0]|0|0)!=154){c[g>>2]=0;break}else{c[g>>2]=1;break}}}while(0);i=f;return c[g>>2]|0}function Tz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+4|0;j=f;g=f+9|0;h=f+8|0;c[j>>2]=b;a[g>>0]=d;a[h>>0]=uz(c[j>>2]|0)|0;d=a[h>>0]|0;if((d|0)==98){c[e>>2]=1}else if((d|0)==97){c[e>>2]=(a[g>>0]|0)==97&1}else{c[e>>2]=(a[g>>0]|0)>=99&1}i=f;return c[e>>2]|0}function Uz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g+8|0;k=g;h=g+4|0;f=g+12|0;c[j>>2]=b;c[k>>2]=d;c[h>>2]=e;a[f>>0]=Iw(c[k>>2]|0)|0;b=(Rz(c[j>>2]|0,a[f>>0]|0)|0)&255;a[f>>0]=b|c[h>>2]&255;i=g;return a[f>>0]|0}function Vz(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Lz(c[d>>2]|0,3)|0;i=b;return a|0}function Wz(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;f=g+16|0;j=g;k=g+4|0;l=g+8|0;h=g+12|0;c[j>>2]=a;c[k>>2]=d;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(e[(c[k>>2]|0)+52>>1]|0)){d=7;break}c[h>>2]=c[(c[(c[k>>2]|0)+32>>2]|0)+(c[l>>2]<<2)>>2];if((b[(c[(c[k>>2]|0)+4>>2]|0)+(c[l>>2]<<1)>>1]|0)>=0){if(0==(Dc(c[h>>2]|0,c[j>>2]|0)|0)){d=5;break}}c[l>>2]=(c[l>>2]|0)+1}if((d|0)==5){c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}else if((d|0)==7){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}return 0}function Xz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+160|0;f=h;k=h+28|0;o=h+20|0;j=h+16|0;m=h+8|0;l=h+4|0;n=h+12|0;g=h+32|0;c[k>>2]=b;c[h+24>>2]=d;c[o>>2]=e;c[j>>2]=Jd(c[c[o>>2]>>2]|0)|0;c[m>>2]=re(c[k>>2]|0)|0;c[n>>2]=0;if((c[j>>2]|0)==0){c[j>>2]=1784}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[m>>2]|0)+20>>2]|0)){break}c[n>>2]=(c[(c[m>>2]|0)+16>>2]|0)+(c[l>>2]<<4);if((c[(c[n>>2]|0)+4>>2]|0)!=0){if((Dc(c[c[n>>2]>>2]|0,c[j>>2]|0)|0)==0){break}}c[l>>2]=(c[l>>2]|0)+1}do{if((c[l>>2]|0)>=(c[(c[m>>2]|0)+20>>2]|0)){c[f>>2]=c[j>>2];yc(128,g,25904,f)|0}else{if((c[l>>2]|0)<2){c[f>>2]=c[j>>2];yc(128,g,25928,f)|0;break}if((a[(c[m>>2]|0)+62>>0]|0)==0){yc(128,g,25960,f)|0;break}if((Yc(c[(c[n>>2]|0)+4>>2]|0)|0)==0){if((Lr(c[(c[n>>2]|0)+4>>2]|0)|0)==0){zr(c[(c[n>>2]|0)+4>>2]|0)|0;c[(c[n>>2]|0)+4>>2]=0;c[(c[n>>2]|0)+12>>2]=0;hd(c[m>>2]|0);i=h;return}}c[f>>2]=c[j>>2];yc(128,g,26008,f)|0}}while(0);Xd(c[k>>2]|0,g,-1);i=h;return}function Yz(a,e,f,g,h,j,k){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;q=i;i=i+96|0;r=q+80|0;v=q+76|0;u=q+72|0;y=q+68|0;n=q+64|0;o=q+60|0;p=q+56|0;x=q+48|0;z=q+16|0;s=q+8|0;w=q+4|0;t=q;l=q+52|0;c[r>>2]=a;c[v>>2]=e;c[u>>2]=f;c[y>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>>2]=k;c[w>>2]=c[c[r>>2]>>2];c[z+0>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;c[z+20>>2]=0;c[z+24>>2]=0;c[z+28>>2]=0;c[z>>2]=c[r>>2];a=Zz(z,c[n>>2]|0)|0;c[x>>2]=a;do{if(0!=(a|0)){m=4}else{a=Zz(z,c[o>>2]|0)|0;c[x>>2]=a;if(0!=(a|0)){m=4}else{a=Zz(z,c[p>>2]|0)|0;c[x>>2]=a;if(0!=(a|0)){m=4}else{if((c[y>>2]|0)!=0){if((d[c[y>>2]>>0]|0)==97){c[l>>2]=c[(c[y>>2]|0)+8>>2]}else{c[l>>2]=0}c[x>>2]=Lv(c[r>>2]|0,c[v>>2]|0,c[l>>2]|0,0,0)|0;if((c[x>>2]|0)!=0){break}}c[s>>2]=Ov(c[r>>2]|0)|0;c[t>>2]=fz(c[r>>2]|0,4)|0;vz(c[r>>2]|0,c[n>>2]|0,c[t>>2]|0);vz(c[r>>2]|0,c[o>>2]|0,(c[t>>2]|0)+1|0);vz(c[r>>2]|0,c[p>>2]|0,(c[t>>2]|0)+2|0);if((c[s>>2]|0)!=0){Tv(c[s>>2]|0,1,0,(c[t>>2]|0)+3-(b[c[u>>2]>>1]|0)|0,(c[t>>2]|0)+3|0)|0;gf(c[s>>2]|0,b[c[u>>2]>>1]&255);nf(c[s>>2]|0,-1,c[u>>2]|0,-5);oy(c[s>>2]|0,139,(c[v>>2]|0)==24&1)|0}}}}}while(0);if((m|0)==4){a=(c[r>>2]|0)+64|0;c[a>>2]=(c[a>>2]|0)+1}gu(c[w>>2]|0,c[n>>2]|0);gu(c[w>>2]|0,c[o>>2]|0);gu(c[w>>2]|0,c[p>>2]|0);i=q;return}function Zz(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;g=i;i=i+16|0;j=g+8|0;h=g;f=g+4|0;c[j>>2]=b;c[h>>2]=e;c[f>>2]=0;do{if((c[h>>2]|0)!=0){if((d[c[h>>2]>>0]|0|0)!=27){c[f>>2]=bx(c[j>>2]|0,c[h>>2]|0)|0;break}else{a[c[h>>2]>>0]=97;break}}}while(0);i=g;return c[f>>2]|0}function _z(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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=i;i=i+80|0;j=k;l=k+64|0;z=k+56|0;x=k+52|0;n=k+48|0;o=k+44|0;p=k+40|0;u=k+36|0;t=k+68|0;m=k+24|0;h=k+20|0;g=k+16|0;r=k+12|0;s=k+8|0;y=k+4|0;q=k+28|0;v=k+32|0;c[l>>2]=b;c[k+60>>2]=e;c[z>>2]=f;c[n>>2]=0;c[o>>2]=re(c[l>>2]|0)|0;c[t>>2]=0;c[m>>2]=0;c[r>>2]=0;c[u>>2]=Jd(c[c[z>>2]>>2]|0)|0;c[p>>2]=Jd(c[(c[z>>2]|0)+4>>2]|0)|0;if((c[u>>2]|0)==0){c[u>>2]=1784}if((c[p>>2]|0)==0){c[p>>2]=1784}f=c[o>>2]|0;do{if((c[(c[o>>2]|0)+20>>2]|0)>=((c[(c[o>>2]|0)+116>>2]|0)+2|0)){c[j>>2]=c[(c[o>>2]|0)+116>>2];c[r>>2]=cf(f,26088,j)|0}else{if((a[f+62>>0]|0)==0){c[r>>2]=cf(c[o>>2]|0,26128,j)|0;break}c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[(c[o>>2]|0)+20>>2]|0)){break}c[y>>2]=c[(c[(c[o>>2]|0)+16>>2]|0)+(c[x>>2]<<4)>>2];if((Dc(c[y>>2]|0,c[p>>2]|0)|0)==0){w=12;break}c[x>>2]=(c[x>>2]|0)+1}if((w|0)==12){z=c[o>>2]|0;c[j>>2]=c[p>>2];c[r>>2]=cf(z,26176,j)|0;break}w=c[o>>2]|0;do{if((c[(c[o>>2]|0)+16>>2]|0)==((c[o>>2]|0)+448|0)){c[g>>2]=$e(w,48)|0;if((c[g>>2]|0)==0){i=k;return}else{z=c[g>>2]|0;b=c[(c[o>>2]|0)+16>>2]|0;c[z+0>>2]=c[b+0>>2];c[z+4>>2]=c[b+4>>2];c[z+8>>2]=c[b+8>>2];c[z+12>>2]=c[b+12>>2];c[z+16>>2]=c[b+16>>2];c[z+20>>2]=c[b+20>>2];c[z+24>>2]=c[b+24>>2];c[z+28>>2]=c[b+28>>2];break}}else{c[g>>2]=Ot(w,c[(c[o>>2]|0)+16>>2]|0,(c[(c[o>>2]|0)+20>>2]|0)+1<<4)|0;if((c[g>>2]|0)==0){i=k;return}}}while(0);c[(c[o>>2]|0)+16>>2]=c[g>>2];c[g>>2]=(c[(c[o>>2]|0)+16>>2]|0)+(c[(c[o>>2]|0)+20>>2]<<4);z=c[g>>2]|0;c[z+0>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[h>>2]=c[(c[o>>2]|0)+48>>2];c[n>>2]=Oh(c[(c[c[o>>2]>>2]|0)+16>>2]|0,c[u>>2]|0,h,s,t,m)|0;if((c[n>>2]|0)!=0){if((c[n>>2]|0)==7){a[(c[o>>2]|0)+64>>0]=1}Xd(c[l>>2]|0,c[m>>2]|0,-1);oc(c[m>>2]|0);i=k;return}c[h>>2]=c[h>>2]|256;c[n>>2]=Ph(c[s>>2]|0,c[t>>2]|0,c[o>>2]|0,(c[g>>2]|0)+4|0,0,c[h>>2]|0)|0;oc(c[t>>2]|0);z=(c[o>>2]|0)+20|0;c[z>>2]=(c[z>>2]|0)+1;if((c[n>>2]|0)==19){c[n>>2]=1;c[r>>2]=cf(c[o>>2]|0,26208,j)|0}else{if((c[n>>2]|0)==0){z=Qh(c[o>>2]|0,c[(c[g>>2]|0)+4>>2]|0)|0;c[(c[g>>2]|0)+12>>2]=z;if((c[(c[g>>2]|0)+12>>2]|0)!=0){if((d[(c[(c[g>>2]|0)+12>>2]|0)+76>>0]|0)!=0){if((d[(c[(c[g>>2]|0)+12>>2]|0)+77>>0]|0)!=(d[(c[(c[(c[o>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0)){c[r>>2]=cf(c[o>>2]|0,25264,j)|0;c[n>>2]=1}}}else{c[n>>2]=7}c[q>>2]=Zb(c[(c[g>>2]|0)+4>>2]|0)|0;$z(c[q>>2]|0,d[(c[o>>2]|0)+65>>0]|0)|0;z=c[(c[g>>2]|0)+4>>2]|0;aA(z,aA(c[(c[(c[o>>2]|0)+16>>2]|0)+4>>2]|0,-1)|0)|0;bA(c[(c[g>>2]|0)+4>>2]|0,3|c[(c[o>>2]|0)+24>>2]&28)|0}}a[(c[g>>2]|0)+8>>0]=3;z=pe(c[o>>2]|0,c[p>>2]|0)|0;c[c[g>>2]>>2]=z;if((c[n>>2]|0)==0){if((c[c[g>>2]>>2]|0)==0){c[n>>2]=7}}if((c[n>>2]|0)==0){Yb(c[o>>2]|0);c[n>>2]=Fy(c[o>>2]|0,r)|0}if((c[n>>2]|0)==0){i=k;return}c[v>>2]=(c[(c[o>>2]|0)+20>>2]|0)-1;if((c[(c[(c[o>>2]|0)+16>>2]|0)+(c[v>>2]<<4)+4>>2]|0)!=0){zr(c[(c[(c[o>>2]|0)+16>>2]|0)+(c[v>>2]<<4)+4>>2]|0)|0;c[(c[(c[o>>2]|0)+16>>2]|0)+(c[v>>2]<<4)+4>>2]=0;c[(c[(c[o>>2]|0)+16>>2]|0)+(c[v>>2]<<4)+12>>2]=0}hd(c[o>>2]|0);c[(c[o>>2]|0)+20>>2]=c[v>>2];if((c[n>>2]|0)==7|(c[n>>2]|0)==3082){a[(c[o>>2]|0)+64>>0]=1;cc(c[o>>2]|0,c[r>>2]|0);c[r>>2]=cf(c[o>>2]|0,9112,j)|0;break}if((c[r>>2]|0)==0){z=c[o>>2]|0;c[j>>2]=c[u>>2];c[r>>2]=cf(z,26240,j)|0}}}while(0);if((c[r>>2]|0)!=0){Xd(c[l>>2]|0,c[r>>2]|0,-1);cc(c[o>>2]|0,c[r>>2]|0)}if((c[n>>2]|0)==0){i=k;return}he(c[l>>2]|0,c[n>>2]|0);i=k;return}function $z(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=b;c[h>>2]=e;if((c[h>>2]|0)>=0){if((a[(c[g>>2]|0)+12>>0]|0)==0){if((dA(c[(c[g>>2]|0)+208>>2]|0)|0)==0){a[(c[g>>2]|0)+4>>0]=c[h>>2]}}}i=f;return d[(c[g>>2]|0)+4>>0]|0}function aA(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f;j=f+4|0;k=f+8|0;c[h>>2]=a;c[j>>2]=d;if((c[h>>2]|0)==0){c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}Uc(c[h>>2]|0);if((c[j>>2]|0)>=0){a=(c[(c[h>>2]|0)+4>>2]|0)+22|0;b[a>>1]=(e[a>>1]|0)&-5;if((c[j>>2]|0)!=0){a=(c[(c[h>>2]|0)+4>>2]|0)+22|0;b[a>>1]=e[a>>1]|0|4}}c[k>>2]=(b[(c[(c[h>>2]|0)+4>>2]|0)+22>>1]&4|0)!=0&1;c[g>>2]=c[k>>2];a=c[g>>2]|0;i=f;return a|0}function bA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d;f=d+4|0;c[g>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[g>>2]|0)+4>>2];Uc(c[g>>2]|0);cA(c[c[f>>2]>>2]|0,c[e>>2]|0);i=d;return 0}function cA(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;g=i;i=i+16|0;h=g+8|0;f=g;j=g+4|0;c[h>>2]=b;c[f>>2]=e;c[j>>2]=c[f>>2]&3;if((c[j>>2]|0)==1){b=1}else{b=(d[(c[h>>2]|0)+12>>0]|0)!=0}a[(c[h>>2]|0)+7>>0]=b?1:0;if((c[j>>2]|0)==3){j=(a[(c[h>>2]|0)+12>>0]|0)!=0^1}else{j=0}a[(c[h>>2]|0)+8>>0]=j?1:0;do{if((a[(c[h>>2]|0)+7>>0]|0)!=0){a[(c[h>>2]|0)+11>>0]=0;a[(c[h>>2]|0)+9>>0]=0}else{if((c[f>>2]&4|0)!=0){a[(c[h>>2]|0)+11>>0]=3;a[(c[h>>2]|0)+9>>0]=3;break}e=(c[f>>2]&8|0)!=0;a[(c[h>>2]|0)+11>>0]=2;j=(c[h>>2]|0)+9|0;if(e){a[j>>0]=3;break}else{a[j>>0]=2;break}}}while(0);a[(c[h>>2]|0)+10>>0]=a[(c[h>>2]|0)+11>>0]|0;if((a[(c[h>>2]|0)+8>>0]|0)!=0){e=(c[h>>2]|0)+10|0;a[e>>0]=d[e>>0]|32}h=(c[h>>2]|0)+20|0;j=d[h>>0]|0;if((c[f>>2]&16|0)!=0){a[h>>0]=j&-2;i=g;return}else{a[h>>0]=j|1;i=g;return}}function dA(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;if((c[e>>2]|0)==0){e=0;e=e&1;i=b;return e|0}e=(d[(c[e>>2]|0)+43>>0]|0|0)==2;e=e&1;i=b;return e|0}function eA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;j=d+16|0;e=d;g=d+4|0;h=d+8|0;f=d+12|0;c[j>>2]=a;c[e>>2]=b;c[g>>2]=c[c[j>>2]>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[g>>2]|0)+20>>2]|0)){break}c[f>>2]=(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4);do{if((c[(c[f>>2]|0)+4>>2]|0)!=0){if((c[e>>2]|0)!=0){if(0!=(Dc(c[e>>2]|0,c[c[f>>2]>>2]|0)|0)){break}}aw(c[j>>2]|0,c[h>>2]|0)}}while(0);c[h>>2]=(c[h>>2]|0)+1}i=d;return}function fA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+48|0;e=j+36|0;d=j+32|0;n=j+28|0;g=j+24|0;o=j+20|0;f=j+16|0;m=j+8|0;l=j+4|0;k=j;h=j+12|0;c[e>>2]=a;c[d>>2]=b;c[o>>2]=c[c[e>>2]>>2];c[f>>2]=ef(c[c[e>>2]>>2]|0,c[(c[d>>2]|0)+20>>2]|0)|0;c[n>>2]=gA(c[d>>2]|0)|0;c[m>>2]=16;c[l>>2]=c[(c[(c[o>>2]|0)+16>>2]|0)+(c[f>>2]<<4)>>2];c[k>>2]=(c[f>>2]|0)==1?21432:21456;if((c[f>>2]|0)==1){c[m>>2]=14}if((Lv(c[e>>2]|0,c[m>>2]|0,c[c[d>>2]>>2]|0,c[c[n>>2]>>2]|0,c[l>>2]|0)|0)!=0){i=j;return}if((Lv(c[e>>2]|0,9,c[k>>2]|0,0,c[l>>2]|0)|0)!=0){i=j;return}o=Ov(c[e>>2]|0)|0;c[g>>2]=o;if((o|0)==0){i=j;return}$v(c[e>>2]|0,0,c[f>>2]|0);hA(c[e>>2]|0,c[f>>2]|0);c[h>>2]=hf(c[g>>2]|0,9,26296,0)|0;nf(c[g>>2]|0,(c[h>>2]|0)+1|0,c[c[d>>2]>>2]|0,0);nf(c[g>>2]|0,(c[h>>2]|0)+4|0,1808,-2);Pv(c[e>>2]|0,c[f>>2]|0);Qv(c[g>>2]|0,58,0,0)|0;Sv(c[g>>2]|0,123,c[f>>2]|0,0,0,c[c[d>>2]>>2]|0,0)|0;if((c[(c[e>>2]|0)+72>>2]|0)>=3){i=j;return}c[(c[e>>2]|0)+72>>2]=3;i=j;return}function gA(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=Ub(c[(c[e>>2]|0)+4>>2]|0)|0;a=zh((c[(c[e>>2]|0)+24>>2]|0)+8|0,c[(c[e>>2]|0)+4>>2]|0,c[d>>2]|0)|0;i=b;return a|0}function hA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d;g=d+4|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=Ov(c[e>>2]|0)|0;py(c[e>>2]|0,c[f>>2]|0,1,1,(c[f>>2]|0)==1?21432:21456);ff(c[g>>2]|0,53,0,1,c[f>>2]|0,5)|0;if((c[(c[e>>2]|0)+68>>2]|0)!=0){i=d;return}c[(c[e>>2]|0)+68>>2]=1;i=d;return}function iA(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+12|0;k=f+16|0;j=f+4|0;g=f+8|0;h=f;c[l>>2]=b;a[k>>0]=d;c[j>>2]=e;c[g>>2]=ve(c[l>>2]|0,40+(c[(c[j>>2]|0)+4>>2]|0)|0)|0;if((c[g>>2]|0)==0){l=c[g>>2]|0;i=f;return l|0}c[h>>2]=(c[g>>2]|0)+40;fL(c[h>>2]|0,c[c[j>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;c[(c[g>>2]|0)+12>>2]=c[h>>2];c[(c[g>>2]|0)+16>>2]=c[(c[j>>2]|0)+4>>2];a[c[g>>2]>>0]=a[k>>0]|0;l=c[g>>2]|0;i=f;return l|0}function jA(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;j=f;h=f+4|0;e=f+8|0;c[g>>2]=a;c[j>>2]=d;c[h>>2]=(c[j>>2]|0)+8;c[e>>2]=Zv(c[g>>2]|0,0,c[h>>2]|0)|0;ac(c[c[g>>2]>>2]|0,c[(c[h>>2]|0)+16>>2]|0);c[(c[h>>2]|0)+16>>2]=c[e>>2];if((c[e>>2]|0)!=0){j=(c[e>>2]|0)+40|0;b[j>>1]=(b[j>>1]|0)+1<<16>>16}if((Nx(c[g>>2]|0,c[h>>2]|0)|0)==0){j=c[e>>2]|0;i=f;return j|0}c[e>>2]=0;j=c[e>>2]|0;i=f;return j|0}function kA(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;n=g;j=g+4|0;l=g+8|0;k=g+12|0;m=g+16|0;c[h>>2]=a;c[n>>2]=b;c[j>>2]=d;c[l>>2]=e;c[k>>2]=f;c[m>>2]=c[c[n>>2]>>2];c[c[h>>2]>>2]=c[n>>2];c[(c[h>>2]|0)+12>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[j>>2]<<4)>>2];c[(c[h>>2]|0)+4>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[j>>2]<<4)+12>>2];c[(c[h>>2]|0)+16>>2]=c[l>>2];c[(c[h>>2]|0)+20>>2]=c[k>>2];c[(c[h>>2]|0)+8>>2]=(c[j>>2]|0)==1&1;i=g;return}function lA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+48|0;d=h;e=h+32|0;f=h+12|0;l=h+16|0;k=h+20|0;j=h+24|0;g=h+28|0;c[f>>2]=a;c[l>>2]=b;if((c[l>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=h;return a|0}c[j>>2]=c[(c[f>>2]|0)+12>>2];c[k>>2]=0;c[g>>2]=(c[l>>2]|0)+8;while(1){if((c[k>>2]|0)>=(c[c[l>>2]>>2]|0)){b=15;break}if((c[(c[f>>2]|0)+8>>2]|0)==0){if((c[(c[g>>2]|0)+4>>2]|0)!=0){if((Dc(c[(c[g>>2]|0)+4>>2]|0,c[j>>2]|0)|0)!=0){b=8;break}}cc(c[c[c[f>>2]>>2]>>2]|0,c[(c[g>>2]|0)+4>>2]|0);c[(c[g>>2]|0)+4>>2]=0;c[c[g>>2]>>2]=c[(c[f>>2]|0)+4>>2]}if((mA(c[f>>2]|0,c[(c[g>>2]|0)+20>>2]|0)|0)!=0){b=11;break}if((nA(c[f>>2]|0,c[(c[g>>2]|0)+44>>2]|0)|0)!=0){b=13;break}c[k>>2]=(c[k>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+72}if((b|0)==8){a=c[c[f>>2]>>2]|0;k=c[(c[f>>2]|0)+20>>2]|0;l=c[(c[g>>2]|0)+4>>2]|0;c[d>>2]=c[(c[f>>2]|0)+16>>2];c[d+4>>2]=k;c[d+8>>2]=l;bf(a,26608,d);c[e>>2]=1;a=c[e>>2]|0;i=h;return a|0}else if((b|0)==11){c[e>>2]=1;a=c[e>>2]|0;i=h;return a|0}else if((b|0)==13){c[e>>2]=1;a=c[e>>2]|0;i=h;return a|0}else if((b|0)==15){c[e>>2]=0;a=c[e>>2]|0;i=h;return a|0}return 0}function mA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d;g=d+4|0;c[f>>2]=a;c[g>>2]=b;while(1){if((c[g>>2]|0)==0){b=20;break}if((oA(c[f>>2]|0,c[c[g>>2]>>2]|0)|0)!=0){b=4;break}if((lA(c[f>>2]|0,c[(c[g>>2]|0)+32>>2]|0)|0)!=0){b=6;break}if((nA(c[f>>2]|0,c[(c[g>>2]|0)+36>>2]|0)|0)!=0){b=8;break}if((oA(c[f>>2]|0,c[(c[g>>2]|0)+40>>2]|0)|0)!=0){b=10;break}if((nA(c[f>>2]|0,c[(c[g>>2]|0)+44>>2]|0)|0)!=0){b=12;break}if((oA(c[f>>2]|0,c[(c[g>>2]|0)+48>>2]|0)|0)!=0){b=14;break}if((nA(c[f>>2]|0,c[(c[g>>2]|0)+60>>2]|0)|0)!=0){b=16;break}if((nA(c[f>>2]|0,c[(c[g>>2]|0)+64>>2]|0)|0)!=0){b=18;break}c[g>>2]=c[(c[g>>2]|0)+52>>2]}if((b|0)==4){c[e>>2]=1}else if((b|0)==6){c[e>>2]=1}else if((b|0)==8){c[e>>2]=1}else if((b|0)==10){c[e>>2]=1}else if((b|0)==12){c[e>>2]=1}else if((b|0)==14){c[e>>2]=1}else if((b|0)==16){c[e>>2]=1}else if((b|0)==18){c[e>>2]=1}else if((b|0)==20){c[e>>2]=0}i=d;return c[e>>2]|0}function nA(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g;f=g+12|0;h=g+4|0;k=g+8|0;c[h>>2]=b;c[k>>2]=e;while(1){if((c[k>>2]|0)==0){k=16;break}if((d[c[k>>2]>>0]|0)==135){if((a[(c[c[c[h>>2]>>2]>>2]|0)+137>>0]|0)==0){k=6;break}a[c[k>>2]>>0]=101}if((c[(c[k>>2]|0)+4>>2]&16384|0)!=0){k=16;break}b=c[h>>2]|0;e=(c[k>>2]|0)+20|0;if((c[(c[k>>2]|0)+4>>2]&2048|0)!=0){if((mA(b,c[e>>2]|0)|0)!=0){k=10;break}}else{if((oA(b,c[e>>2]|0)|0)!=0){k=12;break}}if((nA(c[h>>2]|0,c[(c[k>>2]|0)+16>>2]|0)|0)!=0){k=14;break}c[k>>2]=c[(c[k>>2]|0)+12>>2]}if((k|0)==6){b=c[c[h>>2]>>2]|0;c[j>>2]=c[(c[h>>2]|0)+16>>2];bf(b,26656,j);c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}else if((k|0)==10){c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}else if((k|0)==12){c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}else if((k|0)==14){c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}else if((k|0)==16){c[f>>2]=0;b=c[f>>2]|0;i=g;return b|0}return 0}function oA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d;j=d+4|0;h=d+8|0;g=d+12|0;c[f>>2]=a;c[j>>2]=b;if((c[j>>2]|0)==0){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[h>>2]=0;c[g>>2]=c[(c[j>>2]|0)+4>>2];while(1){if((c[h>>2]|0)>=(c[c[j>>2]>>2]|0)){b=8;break}if((nA(c[f>>2]|0,c[c[g>>2]>>2]|0)|0)!=0){b=6;break}c[h>>2]=(c[h>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+20}if((b|0)==6){c[e>>2]=1;a=c[e>>2]|0;i=d;return a|0}else if((b|0)==8){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}return 0}function pA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d;g=d+4|0;c[f>>2]=a;c[g>>2]=b;while(1){if((c[g>>2]|0)==0){b=10;break}if((mA(c[f>>2]|0,c[(c[g>>2]|0)+8>>2]|0)|0)!=0){b=4;break}if((nA(c[f>>2]|0,c[(c[g>>2]|0)+20>>2]|0)|0)!=0){b=6;break}if((oA(c[f>>2]|0,c[(c[g>>2]|0)+24>>2]|0)|0)!=0){b=8;break}c[g>>2]=c[(c[g>>2]|0)+32>>2]}if((b|0)==4){c[e>>2]=1}else if((b|0)==6){c[e>>2]=1}else if((b|0)==8){c[e>>2]=1}else if((b|0)==10){c[e>>2]=0}i=d;return c[e>>2]|0}function qA(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;a=(c[e>>2]|0)+88|0;b[a>>1]=b[a>>1]&-65|64;i=d;return}function rA(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;j=f+16|0;l=f;h=f+4|0;g=f+8|0;k=f+12|0;c[j>>2]=a;c[l>>2]=d;c[k>>2]=c[c[j>>2]>>2];NA(c[(c[j>>2]|0)+16>>2]|0,(e[(c[j>>2]|0)+84>>1]|0)<<1);cc(c[k>>2]|0,c[(c[j>>2]|0)+16>>2]|0);c[g>>2]=c[l>>2]<<1;b[(c[j>>2]|0)+84>>1]=c[l>>2];a=ve(c[k>>2]|0,(c[g>>2]|0)*40|0)|0;c[h>>2]=a;c[(c[j>>2]|0)+16>>2]=a;if((c[(c[j>>2]|0)+16>>2]|0)==0){i=f;return}while(1){l=c[g>>2]|0;c[g>>2]=l+ -1;if((l|0)<=0){break}b[(c[h>>2]|0)+28>>1]=1;c[c[h>>2]>>2]=c[c[j>>2]>>2];c[h>>2]=(c[h>>2]|0)+40}i=f;return}function sA(b,d,f,g,h){b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=i;i=i+32|0;k=p+28|0;j=p;r=p+4|0;q=p+8|0;n=p+12|0;m=p+16|0;l=p+20|0;o=p+24|0;c[j>>2]=b;c[r>>2]=d;c[q>>2]=f;c[n>>2]=g;c[m>>2]=h;if((a[(c[c[j>>2]>>2]|0)+64>>0]|0)!=0){c[k>>2]=7;b=c[k>>2]|0;i=p;return b|0}else{b=(c[r>>2]|0)+($(c[q>>2]|0,e[(c[j>>2]|0)+84>>1]|0)|0)|0;c[o>>2]=(c[(c[j>>2]|0)+16>>2]|0)+(b*40|0);c[l>>2]=Yd(c[o>>2]|0,c[n>>2]|0,-1,1,c[m>>2]|0)|0;c[k>>2]=c[l>>2];b=c[k>>2]|0;i=p;return b|0}return 0}function tA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;m=f+24|0;j=f+8|0;l=f;h=f+12|0;g=f+16|0;k=f+20|0;c[m>>2]=a;c[j>>2]=b;b=l;c[b>>2]=d;c[b+4>>2]=e;c[h>>2]=Ov(c[m>>2]|0)|0;b=(c[m>>2]|0)+72|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[g>>2]=a;c[k>>2]=$e(c[c[m>>2]>>2]|0,8)|0;if((c[k>>2]|0)!=0){m=c[k>>2]|0;c[m+0>>2]=c[l+0>>2];c[m+4>>2]=c[l+4>>2]}Sv(c[h>>2]|0,26,0,c[g>>2]|0,0,c[k>>2]|0,-13)|0;rA(c[h>>2]|0,1);sA(c[h>>2]|0,0,0,c[j>>2]|0,0)|0;Qv(c[h>>2]|0,35,c[g>>2]|0,1)|0;i=f;return}function uA(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=a;do{if((c[f>>2]|0)!=0){if(0==(Dc(c[f>>2]|0,27536)|0)){c[e>>2]=1;break}if(0==(Dc(c[f>>2]|0,27528)|0)){c[e>>2]=0}else{b=6}}else{b=6}}while(0);if((b|0)==6){c[e>>2]=-1}i=d;return c[e>>2]|0}function vA(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;if((c[e>>2]|0)==6){c[b>>2]=0}else{c[b>>2]=c[28688+(c[e>>2]<<2)>>2]}i=d;return c[b>>2]|0}function wA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;a=g;b=c[a+4>>2]|0;if(!((b|0)>-1|(b|0)==-1&(c[a>>2]|0)>>>0>=4294967295)){b=c[f>>2]|0;b=b+160|0;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=e;return a|0}d=g;a=c[d+4>>2]|0;b=(c[f>>2]|0)+160|0;c[b>>2]=c[d>>2];c[b+4>>2]=a;b=g;MA(c[(c[f>>2]|0)+208>>2]|0,c[b>>2]|0,c[b+4>>2]|0);b=c[f>>2]|0;b=b+160|0;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=e;return a|0}function xA(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;Uc(c[f>>2]|0);if((a[(c[(c[f>>2]|0)+4>>2]|0)+17>>0]|0)==0){f=0;c[e>>2]=f;f=c[e>>2]|0;i=d;return f|0}f=(a[(c[(c[f>>2]|0)+4>>2]|0)+18>>0]|0)!=0^1?1:2;c[e>>2]=f;f=c[e>>2]|0;i=d;return f|0}function yA(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b;f=b+4|0;c[e>>2]=a;do{if(0==(Dc(c[e>>2]|0,28664)|0)){c[d>>2]=0}else{if(0==(Dc(c[e>>2]|0,28384)|0)){c[d>>2]=1;break}if(0==(Dc(c[e>>2]|0,28672)|0)){c[d>>2]=2;break}else{c[f>>2]=Vg(c[e>>2]|0)|0;c[d>>2]=((c[f>>2]|0)>=0&(c[f>>2]|0)<=2?c[f>>2]|0:0)&255;break}}}while(0);i=b;return c[d>>2]|0}function zA(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;l=g+12|0;m=g;k=g+4|0;h=g+8|0;j=g+16|0;c[l>>2]=e;c[m>>2]=f;c[k>>2]=c[(c[l>>2]|0)+4>>2];c[h>>2]=0;a[j>>0]=c[m>>2];Uc(c[l>>2]|0);if((b[(c[k>>2]|0)+22>>1]&2|0)!=0){if((((d[j>>0]|0|0)!=0?1:0)|0)!=(d[(c[k>>2]|0)+17>>0]|0|0)){c[h>>2]=8;m=c[h>>2]|0;i=g;return m|0}}a[(c[k>>2]|0)+17>>0]=(d[j>>0]|0|0)!=0?1:0;a[(c[k>>2]|0)+18>>0]=(d[j>>0]|0|0)==2?1:0;m=c[h>>2]|0;i=g;return m|0}function AA(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;k=f;l=f+4|0;h=f+8|0;j=f+12|0;c[k>>2]=b;c[l>>2]=e;c[h>>2]=LA(c[l>>2]|0)|0;c[j>>2]=c[c[k>>2]>>2];if((d[(c[j>>2]|0)+63>>0]|0|0)==(c[h>>2]|0)){c[g>>2]=0;l=c[g>>2]|0;i=f;return l|0}if((BA(c[k>>2]|0)|0)!=0){c[g>>2]=1;l=c[g>>2]|0;i=f;return l|0}else{a[(c[j>>2]|0)+63>>0]=c[h>>2];c[g>>2]=0;l=c[g>>2]|0;i=f;return l|0}return 0}function BA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e;d=e+12|0;g=e+4|0;f=e+8|0;c[g>>2]=b;c[f>>2]=c[c[g>>2]>>2];do{if((c[(c[(c[f>>2]|0)+16>>2]|0)+20>>2]|0)!=0){if((a[(c[f>>2]|0)+62>>0]|0)!=0){if((Yc(c[(c[(c[f>>2]|0)+16>>2]|0)+20>>2]|0)|0)==0){zr(c[(c[(c[f>>2]|0)+16>>2]|0)+20>>2]|0)|0;c[(c[(c[f>>2]|0)+16>>2]|0)+20>>2]=0;hd(c[f>>2]|0);break}}bf(c[g>>2]|0,28600,h);c[d>>2]=1;h=c[d>>2]|0;i=e;return h|0}}while(0);c[d>>2]=0;h=c[d>>2]|0;i=e;return h|0}function CA(b){b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;f=e;h=e+4|0;c[g>>2]=b;if((a[(c[g>>2]|0)+62>>0]|0)==0){i=e;return}c[f>>2]=c[(c[g>>2]|0)+16>>2];c[h>>2]=c[(c[g>>2]|0)+20>>2];while(1){b=c[h>>2]|0;c[h>>2]=b+ -1;if((b|0)<=0){break}if((c[(c[f>>2]|0)+4>>2]|0)!=0){bA(c[(c[f>>2]|0)+4>>2]|0,d[(c[f>>2]|0)+8>>0]|c[(c[g>>2]|0)+24>>2]&28)|0}c[f>>2]=(c[f>>2]|0)+16}i=e;return}function DA(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+8|0;g=d+16|0;f=d;b[g>>1]=a;if((b[g>>1]|0)<10){a=e;c[a>>2]=1;c[a+4>>2]=0;a=e;h=a;h=c[h>>2]|0;a=a+4|0;a=c[a>>2]|0;D=a;i=d;return h|0}k=(b[g>>1]|0)%10|0;j=f;c[j>>2]=k;c[j+4>>2]=((k|0)<0)<<31>>31;b[g>>1]=(b[g>>1]|0)/10|0;j=f;k=c[j+4>>2]|0;a=f;h=c[a>>2]|0;a=c[a+4>>2]|0;if(k>>>0>0|(k|0)==0&(c[j>>2]|0)>>>0>=5){j=$K(h|0,a|0,2,0)|0;k=f;c[k>>2]=j;c[k+4>>2]=D}else{if(a>>>0>0|(a|0)==0&h>>>0>=1){j=f;j=$K(c[j>>2]|0,c[j+4>>2]|0,1,0)|0;k=f;c[k>>2]=j;c[k+4>>2]=D}}if((b[g>>1]|0)<3){k=f;k=dL(c[k>>2]|0,c[k+4>>2]|0,8,0)|0;k=eL(k|0,D|0,3-(b[g>>1]|0)|0)|0;j=e;c[j>>2]=k;c[j+4>>2]=D;j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}if((b[g>>1]|0)>60){g=-1;f=2147483647}else{f=dL(c[f>>2]|0,c[f+4>>2]|0,8,0)|0;g=bL(f|0,D|0,(b[g>>1]|0)-3|0)|0;f=D}j=e;c[j>>2]=g;c[j+4>>2]=f;j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}function EA(b){b=b|0;var e=0,f=0,g=0;f=i;i=i+16|0;g=f+4|0;e=f;a[g>>0]=b;b=d[g>>0]|0;if((b|0)==6){c[e>>2]=28568}else if((b|0)==7){c[e>>2]=28528}else if((b|0)==9){c[e>>2]=28560}else if((b|0)==8){c[e>>2]=28544}else{c[e>>2]=28584}i=f;return c[e>>2]|0}function FA(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;x=i;i=i+80|0;t=x;n=x+60|0;q=x+56|0;z=x+52|0;s=x+48|0;p=x+44|0;D=x+40|0;o=x+36|0;r=x+64|0;v=x+24|0;l=x+20|0;u=x+16|0;w=x+12|0;C=x+8|0;y=x+68|0;A=x+28|0;B=x+32|0;c[q>>2]=f;c[z>>2]=g;c[s>>2]=h;c[p>>2]=j;c[D>>2]=k;c[o>>2]=0;c[r>>2]=0;c[v>>2]=c[(c[s>>2]|0)+20>>2];c[l>>2]=c[(c[s>>2]|0)+40>>2];do{if((c[v>>2]|0)==1){if((b[(c[z>>2]|0)+36>>1]|0)>=0){if((c[l>>2]|0)==0){c[n>>2]=0;f=c[n>>2]|0;i=x;return f|0}if((Dc(c[(c[(c[z>>2]|0)+4>>2]|0)+((b[(c[z>>2]|0)+36>>1]|0)*24|0)>>2]|0,c[l>>2]|0)|0)==0){c[n>>2]=0;f=c[n>>2]|0;i=x;return f|0}}}else{if((c[D>>2]|0)!=0){c[r>>2]=$e(c[c[q>>2]>>2]|0,c[v>>2]<<2)|0;if((c[r>>2]|0)!=0){c[c[D>>2]>>2]=c[r>>2];break}c[n>>2]=1;f=c[n>>2]|0;i=x;return f|0}}}while(0);c[o>>2]=c[(c[z>>2]|0)+8>>2];a:while(1){if((c[o>>2]|0)==0){break}do{if((e[(c[o>>2]|0)+50>>1]|0)==(c[v>>2]|0)){if((d[(c[o>>2]|0)+54>>0]|0)!=0){if((c[l>>2]|0)==0){if((a[(c[o>>2]|0)+55>>0]&3|0)==2){m=17;break a}else{break}}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[v>>2]|0)){break}b[y>>1]=b[(c[(c[o>>2]|0)+4>>2]|0)+(c[w>>2]<<1)>>1]|0;f=c[(c[(c[z>>2]|0)+4>>2]|0)+((b[y>>1]|0)*24|0)+16>>2]|0;c[A>>2]=f;c[A>>2]=(c[A>>2]|0)!=0?f:3640;if((Dc(c[(c[(c[o>>2]|0)+32>>2]|0)+(c[w>>2]<<2)>>2]|0,c[A>>2]|0)|0)!=0){break}c[B>>2]=c[(c[(c[z>>2]|0)+4>>2]|0)+((b[y>>1]|0)*24|0)>>2];c[C>>2]=0;while(1){if((c[C>>2]|0)>=(c[v>>2]|0)){break}if((Dc(c[(c[s>>2]|0)+36+(c[C>>2]<<3)+4>>2]|0,c[B>>2]|0)|0)==0){m=27;break}c[C>>2]=(c[C>>2]|0)+1}if((m|0)==27){m=0;if((c[r>>2]|0)!=0){c[(c[r>>2]|0)+(c[w>>2]<<2)>>2]=c[(c[s>>2]|0)+36+(c[C>>2]<<3)>>2]}}if((c[C>>2]|0)==(c[v>>2]|0)){break}c[w>>2]=(c[w>>2]|0)+1}if((c[w>>2]|0)==(c[v>>2]|0)){break a}}}}while(0);c[o>>2]=c[(c[o>>2]|0)+20>>2]}b:do{if((m|0)==17){if((c[r>>2]|0)!=0){c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[v>>2]|0)){break b}c[(c[r>>2]|0)+(c[u>>2]<<2)>>2]=c[(c[s>>2]|0)+36+(c[u>>2]<<3)>>2];c[u>>2]=(c[u>>2]|0)+1}}}}while(0);if((c[o>>2]|0)!=0){c[c[p>>2]>>2]=c[o>>2];c[n>>2]=0;f=c[n>>2]|0;i=x;return f|0}if((a[(c[q>>2]|0)+438>>0]|0)==0){f=c[q>>2]|0;g=c[(c[s>>2]|0)+8>>2]|0;c[t>>2]=c[c[c[s>>2]>>2]>>2];c[t+4>>2]=g;bf(f,28480,t)}cc(c[c[q>>2]>>2]|0,c[r>>2]|0);c[n>>2]=1;f=c[n>>2]|0;i=x;return f|0}function GA(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;h=l+20|0;o=l;j=l+4|0;m=l+8|0;k=l+12|0;n=l+16|0;g=l+24|0;c[o>>2]=d;c[j>>2]=f;if((c[(c[j>>2]|0)+16>>2]|0)==0){c[k>>2]=c[(c[j>>2]|0)+12>>2];c[n>>2]=mz(c[o>>2]|0)|0;d=$e(0,(e[(c[j>>2]|0)+52>>1]|0)+1|0)|0;c[(c[j>>2]|0)+16>>2]=d;if((c[(c[j>>2]|0)+16>>2]|0)==0){a[(c[n>>2]|0)+64>>0]=1;c[h>>2]=0;d=c[h>>2]|0;i=l;return d|0}c[m>>2]=0;while(1){n=c[m>>2]|0;f=c[j>>2]|0;if((c[m>>2]|0)>=(e[(c[j>>2]|0)+52>>1]|0)){break}b[g>>1]=b[(c[f+4>>2]|0)+(n<<1)>>1]|0;if((b[g>>1]|0)<0){f=100}else{f=a[(c[(c[k>>2]|0)+4>>2]|0)+((b[g>>1]|0)*24|0)+21>>0]|0}a[(c[(c[j>>2]|0)+16>>2]|0)+(c[m>>2]|0)>>0]=f;c[m>>2]=(c[m>>2]|0)+1}a[(c[f+16>>2]|0)+n>>0]=0}c[h>>2]=c[(c[j>>2]|0)+16>>2];d=c[h>>2]|0;i=l;return d|0}function HA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;e=d;g=d+4|0;c[f>>2]=a;c[e>>2]=b;if((c[e>>2]|0)!=0){c[g>>2]=28472}else{c[g>>2]=15320}pg(c[f>>2]|0,15328,2,1,c[g>>2]|0,38,0,0,0)|0;pg(c[f>>2]|0,15328,3,1,c[g>>2]|0,38,0,0,0)|0;pg(c[f>>2]|0,15312,2,1,1776,38,0,0,0)|0;KA(c[f>>2]|0,15312,12);KA(c[f>>2]|0,15328,((c[e>>2]|0)!=0?12:4)&255);i=d;return}function IA(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;f=b;e=b+4|0;c[d>>2]=a;c[f>>2]=0;c[e>>2]=(c[d>>2]|0)+116;while(1){if((c[f>>2]|0)>=10){break}if((c[(c[e>>2]|0)+12>>2]|0)!=0){bz(c[d>>2]|0,c[e>>2]|0);c[(c[e>>2]|0)+12>>2]=0}c[f>>2]=(c[f>>2]|0)+1;c[e>>2]=(c[e>>2]|0)+20}i=b;return}function JA(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;x=i;i=i+64|0;n=x+52|0;s=x+48|0;v=x+44|0;y=x+40|0;r=x+36|0;t=x+32|0;p=x+28|0;A=x+24|0;q=x+16|0;l=x+12|0;z=x+8|0;w=x+4|0;o=x;u=x+20|0;c[s>>2]=b;c[v>>2]=e;c[y>>2]=f;c[r>>2]=g;c[t>>2]=h;c[p>>2]=j;c[A>>2]=k;if((a[(c[v>>2]|0)+44>>0]&16|0)!=0){c[c[p>>2]>>2]=0;c[c[A>>2]>>2]=1;c[n>>2]=0;b=c[n>>2]|0;i=x;return b|0}c[l>>2]=ef(c[c[s>>2]>>2]|0,c[(c[v>>2]|0)+68>>2]|0)|0;c[o>>2]=Ov(c[s>>2]|0)|0;if((c[r>>2]|0)<0){c[r>>2]=c[(c[s>>2]|0)+68>>2]}b=c[r>>2]|0;c[r>>2]=b+1;c[z>>2]=b;if((c[p>>2]|0)!=0){c[c[p>>2]>>2]=c[z>>2]}do{if((a[(c[v>>2]|0)+44>>0]&32|0)==0){if((c[t>>2]|0)!=0){if((d[c[t>>2]>>0]|0|0)==0){m=11;break}}qy(c[s>>2]|0,c[z>>2]|0,c[l>>2]|0,c[v>>2]|0,c[y>>2]|0)}else{m=11}}while(0);if((m|0)==11){py(c[s>>2]|0,c[l>>2]|0,c[(c[v>>2]|0)+32>>2]|0,(c[y>>2]|0)==53&255,c[c[v>>2]>>2]|0)}if((c[A>>2]|0)!=0){c[c[A>>2]>>2]=c[r>>2]}c[q>>2]=0;c[w>>2]=c[(c[v>>2]|0)+8>>2];while(1){z=c[r>>2]|0;if((c[w>>2]|0)==0){break}c[r>>2]=z+1;c[u>>2]=z;if((a[(c[w>>2]|0)+55>>0]&3|0)==2){if((a[(c[v>>2]|0)+44>>0]&32|0)!=0){if((c[p>>2]|0)!=0){c[c[p>>2]>>2]=c[u>>2]}}}if((c[t>>2]|0)==0){m=22}else{if((d[(c[t>>2]|0)+((c[q>>2]|0)+1)>>0]|0|0)!=0){m=22}}if((m|0)==22){m=0;Tv(c[o>>2]|0,c[y>>2]|0,c[u>>2]|0,c[(c[w>>2]|0)+44>>2]|0,c[l>>2]|0)|0;ry(c[s>>2]|0,c[w>>2]|0)}c[w>>2]=c[(c[w>>2]|0)+20>>2];c[q>>2]=(c[q>>2]|0)+1}if((z|0)>(c[(c[s>>2]|0)+68>>2]|0)){c[(c[s>>2]|0)+68>>2]=c[r>>2]}c[n>>2]=c[q>>2];b=c[n>>2]|0;i=x;return b|0}function KA(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;j=i;i=i+16|0;n=j+8|0;m=j;l=j+12|0;k=j+4|0;c[n>>2]=f;c[m>>2]=g;a[l>>0]=h;g=c[n>>2]|0;f=c[m>>2]|0;c[k>>2]=rg(g,f,Ub(c[m>>2]|0)|0,2,1,0)|0;if((c[k>>2]|0)==0){i=j;return}n=(c[k>>2]|0)+2|0;b[n>>1]=e[n>>1]|0|(d[l>>0]|0);i=j;return}function LA(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[g>>2]=b;if((a[c[g>>2]>>0]|0)>=48){if((a[c[g>>2]>>0]|0)<=50){c[f>>2]=(a[c[g>>2]>>0]|0)-48}else{d=4}}else{d=4}do{if((d|0)==4){if((Dc(c[g>>2]|0,27912)|0)==0){c[f>>2]=1;break}if((Dc(c[g>>2]|0,11400)|0)==0){c[f>>2]=2;break}else{c[f>>2]=0;break}}}while(0);i=e;return c[f>>2]|0}function MA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;c[g>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;if((c[g>>2]|0)==0){i=e;return}b=c[f+4>>2]|0;a=(c[g>>2]|0)+16|0;c[a>>2]=c[f>>2];c[a+4>>2]=b;i=e;return}function NA(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+12|0;l=f;k=f+4|0;h=f+8|0;j=f+16|0;c[g>>2]=d;c[l>>2]=e;if((c[g>>2]|0)==0){i=f;return}if((c[l>>2]|0)==0){i=f;return}c[h>>2]=c[c[g>>2]>>2];a[j>>0]=a[(c[h>>2]|0)+64>>0]|0;d=(c[(c[h>>2]|0)+512>>2]|0)!=0;c[k>>2]=(c[g>>2]|0)+((c[l>>2]|0)*40|0);if(d){while(1){if(!((c[g>>2]|0)>>>0<(c[k>>2]|0)>>>0)){break}cc(c[h>>2]|0,c[(c[g>>2]|0)+36>>2]|0);c[g>>2]=(c[g>>2]|0)+40}i=f;return}while(1){if(!((c[g>>2]|0)>>>0<(c[k>>2]|0)>>>0)){break}e=c[g>>2]|0;if((b[(c[g>>2]|0)+28>>1]&9312|0)!=0){Gd(e)}else{if((c[e+36>>2]|0)!=0){cc(c[h>>2]|0,c[(c[g>>2]|0)+36>>2]|0);c[(c[g>>2]|0)+36>>2]=0}}b[(c[g>>2]|0)+28>>1]=128;c[g>>2]=(c[g>>2]|0)+40}a[(c[h>>2]|0)+64>>0]=a[j>>0]|0;i=f;return}function OA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+64|0;f=l;g=l+36|0;o=l+16|0;h=l+20|0;j=l+24|0;n=l+28|0;k=l+32|0;m=l+40|0;c[g>>2]=a;c[o>>2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=c[(c[(c[c[g>>2]>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2];c[n>>2]=1;while(1){if((c[n>>2]|0)>4){break}c[f>>2]=c[n>>2];yc(24,m,29728,f)|0;if((cw(c[c[g>>2]>>2]|0,m,c[k>>2]|0)|0)!=0){o=c[g>>2]|0;b=c[h>>2]|0;a=c[j>>2]|0;c[f>>2]=c[k>>2];c[f+4>>2]=m;c[f+8>>2]=b;c[f+12>>2]=a;Nv(o,25e3,f)}c[n>>2]=(c[n>>2]|0)+1}i=l;return}function PA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+48|0;h=e;g=e+36|0;j=e+20|0;l=e+24|0;k=e+28|0;f=e+32|0;c[g>>2]=a;c[j>>2]=b;c[l>>2]=d;c[k>>2]=Ov(c[g>>2]|0)|0;c[f>>2]=Wv(c[g>>2]|0)|0;Tv(c[k>>2]|0,114,c[j>>2]|0,c[f>>2]|0,c[l>>2]|0)|0;xw(c[g>>2]|0);a=c[g>>2]|0;k=(c[l>>2]|0)==1?21432:21456;j=c[j>>2]|0;d=c[f>>2]|0;b=c[f>>2]|0;c[h>>2]=c[(c[(c[c[g>>2]>>2]|0)+16>>2]|0)+(c[l>>2]<<4)>>2];c[h+4>>2]=k;c[h+8>>2]=j;c[h+12>>2]=d;c[h+16>>2]=b;Nv(a,29672,h);Xv(c[g>>2]|0,c[f>>2]|0);i=e;return}function QA(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=i;i=i+48|0;n=h+36|0;r=h+32|0;o=h+28|0;k=h+24|0;g=h+20|0;l=h+16|0;m=h+8|0;j=h+4|0;q=h;p=h+12|0;c[r>>2]=a;c[o>>2]=b;c[k>>2]=d;c[g>>2]=e;c[l>>2]=f;c[j>>2]=c[c[g>>2]>>2];do{if((c[j>>2]&(c[j>>2]|0)-1|0)==0){if((c[j>>2]|0)==0){f=1}else{f=c[j>>2]<<1}c[q>>2]=f;c[p>>2]=Ot(c[r>>2]|0,c[o>>2]|0,$(c[q>>2]|0,c[k>>2]|0)|0)|0;if((c[p>>2]|0)!=0){c[o>>2]=c[p>>2];break}c[c[l>>2]>>2]=-1;c[n>>2]=c[o>>2];a=c[n>>2]|0;i=h;return a|0}}while(0);c[m>>2]=c[o>>2];a=$(c[j>>2]|0,c[k>>2]|0)|0;aL((c[m>>2]|0)+a|0,0,c[k>>2]|0)|0;c[c[l>>2]>>2]=c[j>>2];a=c[g>>2]|0;c[a>>2]=(c[a>>2]|0)+1;c[n>>2]=c[o>>2];a=c[n>>2]|0;i=h;return a|0}function RA(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+32|0;q=k+28|0;p=k;h=k+4|0;n=k+8|0;l=k+12|0;o=k+16|0;j=k+20|0;m=k+24|0;c[q>>2]=a;c[p>>2]=b;c[h>>2]=e;c[n>>2]=f;c[l>>2]=g;c[o>>2]=0;c[j>>2]=0;if((c[(c[c[q>>2]>>2]|0)+24>>2]&8388608|0)!=0){c[j>>2]=gw(c[q>>2]|0,c[p>>2]|0)|0}c[m>>2]=c[j>>2];while(1){if((c[m>>2]|0)==0){break}if((d[(c[m>>2]|0)+8>>0]|0|0)==(c[h>>2]|0)){if((GD(c[(c[m>>2]|0)+16>>2]|0,c[n>>2]|0)|0)!=0){c[o>>2]=c[o>>2]|(d[(c[m>>2]|0)+9>>0]|0)}}c[m>>2]=c[(c[m>>2]|0)+32>>2]}if((c[l>>2]|0)==0){b=c[o>>2]|0;b=(b|0)!=0;a=c[j>>2]|0;a=b?a:0;i=k;return a|0}c[c[l>>2]>>2]=c[o>>2];b=c[o>>2]|0;b=(b|0)!=0;a=c[j>>2]|0;a=b?a:0;i=k;return a|0}function SA(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;k=m;l=m+16|0;h=m+4|0;j=m+8|0;n=m+12|0;c[h>>2]=b;c[j>>2]=e;c[n>>2]=f;if((a[(c[j>>2]|0)+44>>0]&16|0)!=0){if((c[(c[c[(ww(c[c[h>>2]>>2]|0,c[j>>2]|0)|0)+4>>2]>>2]|0)+52>>2]|0)!=0){g=3}}else{g=3}do{if((g|0)==3){if((a[(c[j>>2]|0)+44>>0]&1|0)!=0){if((c[(c[c[h>>2]>>2]|0)+24>>2]&2048|0)==0){if((d[(c[h>>2]|0)+18>>0]|0|0)==0){break}}}if((c[n>>2]|0)==0){if((c[(c[j>>2]|0)+12>>2]|0)!=0){b=c[h>>2]|0;c[k>>2]=c[c[j>>2]>>2];bf(b,30936,k);c[l>>2]=1;b=c[l>>2]|0;i=m;return b|0}}c[l>>2]=0;b=c[l>>2]|0;i=m;return b|0}}while(0);b=c[h>>2]|0;c[k>>2]=c[c[j>>2]>>2];bf(b,30904,k);c[l>>2]=1;b=c[l>>2]|0;i=m;return b|0}function TA(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;a=(c[e>>2]|0)+88|0;b[a>>1]=b[a>>1]&-17|16;i=d;return}function UA(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;y=i;i=i+112|0;t=y+100|0;s=y+96|0;m=y+92|0;J=y+88|0;B=y+84|0;k=y+80|0;G=y+76|0;n=y+72|0;v=y+68|0;x=y+64|0;K=y+60|0;I=y+56|0;o=y+52|0;q=y+48|0;r=y+16|0;w=y;C=y+4|0;z=y+8|0;A=y+12|0;p=y+20|0;D=y+24|0;E=y+28|0;l=y+32|0;u=y+36|0;F=y+40|0;H=y+44|0;c[s>>2]=e;c[m>>2]=f;c[J>>2]=g;c[B>>2]=h;c[k>>2]=j;c[z>>2]=0;c[A>>2]=0;c[E>>2]=0;if((c[J>>2]|0)==0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[s>>2]|0)+532>>2]|0)==0){if((c[(c[J>>2]|0)+68>>2]|0)==0){if((gw(c[s>>2]|0,c[m>>2]|0)|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((a[(c[m>>2]|0)+44>>0]&16|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[B>>2]|0)==10){if((b[(c[m>>2]|0)+36>>1]|0)>=0){c[B>>2]=d[(c[m>>2]|0)+45>>0]|0}if((c[B>>2]|0)==10){c[B>>2]=2}}if((c[c[(c[J>>2]|0)+32>>2]>>2]|0)!=1){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[(c[J>>2]|0)+32>>2]|0)+28>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[J>>2]|0)+36>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[J>>2]|0)+48>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[J>>2]|0)+40>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[J>>2]|0)+60>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[J>>2]|0)+52>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((b[(c[J>>2]|0)+6>>1]&1|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}c[G>>2]=c[c[J>>2]>>2];if((c[c[G>>2]>>2]|0)!=1){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((d[c[c[(c[G>>2]|0)+4>>2]>>2]>>0]|0)!=116){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}c[K>>2]=(c[(c[J>>2]|0)+32>>2]|0)+8;c[n>>2]=Zv(c[s>>2]|0,0,c[K>>2]|0)|0;if((c[n>>2]|0)==0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[n>>2]|0)==(c[m>>2]|0)){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if(((a[(c[m>>2]|0)+44>>0]&32|0)==0|0)!=((a[(c[n>>2]|0)+44>>0]&32|0)==0|0)){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((a[(c[n>>2]|0)+44>>0]&16|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((c[(c[n>>2]|0)+12>>2]|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((b[(c[m>>2]|0)+38>>1]|0)!=(b[(c[n>>2]|0)+38>>1]|0)){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}if((b[(c[m>>2]|0)+36>>1]|0)!=(b[(c[n>>2]|0)+36>>1]|0)){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}c[I>>2]=0;a:while(1){if((c[I>>2]|0)>=(b[(c[m>>2]|0)+38>>1]|0)){F=64;break}c[F>>2]=(c[(c[m>>2]|0)+4>>2]|0)+((c[I>>2]|0)*24|0);c[H>>2]=(c[(c[n>>2]|0)+4>>2]|0)+((c[I>>2]|0)*24|0);if((a[(c[F>>2]|0)+21>>0]|0)!=(a[(c[H>>2]|0)+21>>0]|0)){F=52;break}if((HD(c[(c[F>>2]|0)+16>>2]|0,c[(c[H>>2]|0)+16>>2]|0)|0)==0){F=54;break}if((d[(c[F>>2]|0)+20>>0]|0)!=0){if((a[(c[H>>2]|0)+20>>0]|0)==0){F=57;break}}do{if((c[I>>2]|0)>0){if(((c[(c[F>>2]|0)+8>>2]|0)==0|0)!=((c[(c[H>>2]|0)+8>>2]|0)==0|0)){F=62;break a}if((c[(c[F>>2]|0)+8>>2]|0)==0){break}if((YK(c[(c[F>>2]|0)+8>>2]|0,c[(c[H>>2]|0)+8>>2]|0)|0)!=0){F=62;break a}}}while(0);c[I>>2]=(c[I>>2]|0)+1}if((F|0)==52){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}else if((F|0)==54){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}else if((F|0)==57){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}else if((F|0)==62){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}else if((F|0)==64){c[x>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[x>>2]|0)==0){break}if((d[(c[x>>2]|0)+54>>0]|0)!=0){c[E>>2]=1}c[v>>2]=c[(c[n>>2]|0)+8>>2];while(1){if((c[v>>2]|0)==0){break}if((ID(c[x>>2]|0,c[v>>2]|0)|0)!=0){break}c[v>>2]=c[(c[v>>2]|0)+20>>2]}if((c[v>>2]|0)==0){F=73;break}c[x>>2]=c[(c[x>>2]|0)+20>>2]}if((F|0)==73){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}do{if((c[(c[m>>2]|0)+24>>2]|0)!=0){if((kx(c[(c[n>>2]|0)+24>>2]|0,c[(c[m>>2]|0)+24>>2]|0,-1)|0)==0){break}c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}}while(0);do{if((c[(c[c[s>>2]>>2]|0)+24>>2]&524288|0)!=0){if((c[(c[m>>2]|0)+16>>2]|0)==0){break}c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}}while(0);if((c[(c[c[s>>2]>>2]|0)+24>>2]&128|0)!=0){c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}c[o>>2]=ef(c[c[s>>2]>>2]|0,c[(c[n>>2]|0)+68>>2]|0)|0;c[p>>2]=Ov(c[s>>2]|0)|0;aw(c[s>>2]|0,c[o>>2]|0);e=(c[s>>2]|0)+68|0;f=c[e>>2]|0;c[e>>2]=f+1;c[q>>2]=f;f=(c[s>>2]|0)+68|0;e=c[f>>2]|0;c[f>>2]=e+1;c[r>>2]=e;c[D>>2]=VA(c[s>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;c[l>>2]=Wv(c[s>>2]|0)|0;c[u>>2]=Wv(c[s>>2]|0)|0;qy(c[s>>2]|0,c[r>>2]|0,c[k>>2]|0,c[m>>2]|0,53);if((b[(c[m>>2]|0)+36>>1]|0)<0){if((c[(c[m>>2]|0)+8>>2]|0)!=0){F=87}else{F=85}}else{F=85}do{if((F|0)==85){if((c[E>>2]|0)!=0){F=87;break}if((c[B>>2]|0)!=2&(c[B>>2]|0)!=1){F=87}}}while(0);if((F|0)==87){c[w>>2]=Qv(c[p>>2]|0,105,c[r>>2]|0,0)|0;c[z>>2]=Qv(c[p>>2]|0,16,0,0)|0;jw(c[p>>2]|0,c[w>>2]|0)}E=c[s>>2]|0;if((a[(c[n>>2]|0)+44>>0]&32|0)==0){qy(E,c[q>>2]|0,c[o>>2]|0,c[n>>2]|0,52);c[A>>2]=Qv(c[p>>2]|0,105,c[q>>2]|0,0)|0;do{if((b[(c[m>>2]|0)+36>>1]|0)>=0){c[w>>2]=Qv(c[p>>2]|0,100,c[q>>2]|0,c[u>>2]|0)|0;c[C>>2]=Tv(c[p>>2]|0,67,c[r>>2]|0,0,c[u>>2]|0)|0;HC(c[s>>2]|0,c[B>>2]|0,c[m>>2]|0);jw(c[p>>2]|0,c[C>>2]|0);_A(c[s>>2]|0,c[D>>2]|0,c[u>>2]|0)}else{B=c[p>>2]|0;if((c[(c[m>>2]|0)+8>>2]|0)==0){c[w>>2]=Qv(B,69,c[r>>2]|0,c[u>>2]|0)|0;break}else{c[w>>2]=Qv(B,100,c[q>>2]|0,c[u>>2]|0)|0;break}}}while(0);Qv(c[p>>2]|0,99,c[q>>2]|0,c[l>>2]|0)|0;Tv(c[p>>2]|0,70,c[r>>2]|0,c[l>>2]|0,c[u>>2]|0)|0;gf(c[p>>2]|0,11);nf(c[p>>2]|0,-1,c[c[m>>2]>>2]|0,0);Qv(c[p>>2]|0,9,c[q>>2]|0,c[w>>2]|0)|0;Qv(c[p>>2]|0,58,c[q>>2]|0,0)|0;Qv(c[p>>2]|0,58,c[r>>2]|0,0)|0}else{py(E,c[k>>2]|0,c[(c[m>>2]|0)+32>>2]|0,1,c[c[m>>2]>>2]|0);py(c[s>>2]|0,c[o>>2]|0,c[(c[n>>2]|0)+32>>2]|0,0,c[c[n>>2]>>2]|0)}c[x>>2]=c[(c[m>>2]|0)+8>>2];while(1){if((c[x>>2]|0)==0){break}c[v>>2]=c[(c[n>>2]|0)+8>>2];while(1){if((c[v>>2]|0)==0){break}if((ID(c[x>>2]|0,c[v>>2]|0)|0)!=0){break}c[v>>2]=c[(c[v>>2]|0)+20>>2]}Tv(c[p>>2]|0,52,c[q>>2]|0,c[(c[v>>2]|0)+44>>2]|0,c[o>>2]|0)|0;ry(c[s>>2]|0,c[v>>2]|0);Tv(c[p>>2]|0,53,c[r>>2]|0,c[(c[x>>2]|0)+44>>2]|0,c[k>>2]|0)|0;ry(c[s>>2]|0,c[x>>2]|0);gf(c[p>>2]|0,1);c[w>>2]=Qv(c[p>>2]|0,105,c[q>>2]|0,0)|0;Qv(c[p>>2]|0,98,c[q>>2]|0,c[l>>2]|0)|0;Tv(c[p>>2]|0,107,c[r>>2]|0,c[l>>2]|0,1)|0;Qv(c[p>>2]|0,9,c[q>>2]|0,(c[w>>2]|0)+1|0)|0;jw(c[p>>2]|0,c[w>>2]|0);Qv(c[p>>2]|0,58,c[q>>2]|0,0)|0;Qv(c[p>>2]|0,58,c[r>>2]|0,0)|0;c[x>>2]=c[(c[x>>2]|0)+20>>2]}if((c[A>>2]|0)!=0){jw(c[p>>2]|0,c[A>>2]|0)}Xv(c[s>>2]|0,c[u>>2]|0);Xv(c[s>>2]|0,c[l>>2]|0);if((c[z>>2]|0)!=0){Qv(c[p>>2]|0,24,0,0)|0;jw(c[p>>2]|0,c[z>>2]|0);Qv(c[p>>2]|0,58,c[r>>2]|0,0)|0;c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}else{c[t>>2]=1;e=c[t>>2]|0;i=y;return e|0}}}}c[t>>2]=0;e=c[t>>2]|0;i=y;return e|0}function VA(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;g=h+24|0;n=h;f=h+4|0;l=h+8|0;m=h+12|0;k=h+16|0;j=h+20|0;c[n>>2]=b;c[f>>2]=d;c[l>>2]=e;c[m>>2]=0;if((a[(c[l>>2]|0)+44>>0]&8|0)!=0){e=c[n>>2]|0;if((c[(c[n>>2]|0)+408>>2]|0)!=0){e=c[e+408>>2]|0}c[k>>2]=e;c[j>>2]=c[(c[k>>2]|0)+404>>2];while(1){if((c[j>>2]|0)!=0){d=(c[(c[j>>2]|0)+4>>2]|0)!=(c[l>>2]|0)}else{d=0}e=c[j>>2]|0;if(!d){break}c[j>>2]=c[e>>2]}do{if((e|0)==0){c[j>>2]=$e(c[c[n>>2]>>2]|0,16)|0;if((c[j>>2]|0)!=0){c[c[j>>2]>>2]=c[(c[k>>2]|0)+404>>2];c[(c[k>>2]|0)+404>>2]=c[j>>2];c[(c[j>>2]|0)+4>>2]=c[l>>2];c[(c[j>>2]|0)+8>>2]=c[f>>2];d=(c[k>>2]|0)+72|0;c[d>>2]=(c[d>>2]|0)+1;d=(c[k>>2]|0)+72|0;b=(c[d>>2]|0)+1|0;c[d>>2]=b;c[(c[j>>2]|0)+12>>2]=b;b=(c[k>>2]|0)+72|0;c[b>>2]=(c[b>>2]|0)+1;break}c[g>>2]=0;b=c[g>>2]|0;i=h;return b|0}}while(0);c[m>>2]=c[(c[j>>2]|0)+12>>2]}c[g>>2]=c[m>>2];b=c[g>>2]|0;i=h;return b|0}function WA(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+48|0;h=g+40|0;s=g+36|0;m=g+32|0;n=g+28|0;p=g+24|0;q=g+20|0;r=g+12|0;k=g+8|0;o=g+4|0;j=g;l=g+16|0;c[s>>2]=b;c[m>>2]=e;c[n>>2]=f;c[p>>2]=Ov(c[s>>2]|0)|0;c[r>>2]=sy(c[p>>2]|0)|0;if((a[(c[n>>2]|0)+44>>0]&16|0)!=0){f=ww(c[c[s>>2]>>2]|0,c[n>>2]|0)|0}else{f=0}c[k>>2]=f;c[q>>2]=1;a:while(1){if((c[q>>2]|0)>=(c[r>>2]|0)){j=18;break}c[o>>2]=Kz(c[p>>2]|0,c[q>>2]|0)|0;b:do{if((d[c[o>>2]>>0]|0|0)==52){if((c[(c[o>>2]|0)+12>>2]|0)==(c[m>>2]|0)){c[l>>2]=c[(c[o>>2]|0)+8>>2];if((c[l>>2]|0)==(c[(c[n>>2]|0)+32>>2]|0)){j=8;break a}c[j>>2]=c[(c[n>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break b}if((c[l>>2]|0)==(c[(c[j>>2]|0)+44>>2]|0)){j=12;break a}c[j>>2]=c[(c[j>>2]|0)+20>>2]}}}}while(0);if((d[c[o>>2]>>0]|0|0)==149){if((c[(c[o>>2]|0)+16>>2]|0)==(c[k>>2]|0)){j=16;break}}c[q>>2]=(c[q>>2]|0)+1}if((j|0)==8){c[h>>2]=1;b=c[h>>2]|0;i=g;return b|0}else if((j|0)==12){c[h>>2]=1;b=c[h>>2]|0;i=g;return b|0}else if((j|0)==16){c[h>>2]=1;b=c[h>>2]|0;i=g;return b|0}else if((j|0)==18){c[h>>2]=0;b=c[h>>2]|0;i=g;return b|0}return 0}function XA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;g=e;h=e+4|0;j=e+8|0;f=e+12|0;c[k>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[(c[k>>2]|0)+8>>2];vz(c[k>>2]|0,c[g>>2]|0,c[h>>2]|0);b=(c[k>>2]|0)+72|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[f>>2]=a;Qv(c[j>>2]|0,33,c[h>>2]|0,c[f>>2]|0)|0;Fz(c[g>>2]|0,c[f>>2]|0);i=e;return}function YA(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+32|0;m=j+20|0;n=j;h=j+4|0;k=j+8|0;g=j+12|0;l=j+16|0;c[m>>2]=d;c[n>>2]=e;c[h>>2]=f;c[g>>2]=c[(c[n>>2]|0)+20>>2];if((c[g>>2]|0)==0){c[l>>2]=mz(c[m>>2]|0)|0;c[g>>2]=$e(0,(b[(c[n>>2]|0)+38>>1]|0)+1|0)|0;if((c[g>>2]|0)==0){a[(c[l>>2]|0)+64>>0]=1;i=j;return}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(b[(c[n>>2]|0)+38>>1]|0)){break}a[(c[g>>2]|0)+(c[k>>2]|0)>>0]=a[(c[(c[n>>2]|0)+4>>2]|0)+((c[k>>2]|0)*24|0)+21>>0]|0;c[k>>2]=(c[k>>2]|0)+1}do{d=c[k>>2]|0;c[k>>2]=d+ -1;a[(c[g>>2]|0)+d>>0]=0;if((c[k>>2]|0)<0){break}}while((a[(c[g>>2]|0)+(c[k>>2]|0)>>0]|0)==98);c[(c[n>>2]|0)+20>>2]=c[g>>2]}c[k>>2]=Ub(c[g>>2]|0)|0;if((c[k>>2]|0)==0){i=j;return}f=c[m>>2]|0;if((c[h>>2]|0)!=0){Sv(f,47,c[h>>2]|0,c[k>>2]|0,0,c[g>>2]|0,c[k>>2]|0)|0;i=j;return}else{nf(f,-1,c[g>>2]|0,c[k>>2]|0);i=j;return}}function ZA(a,b,e,f,g,h,j,k,l){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=i;i=i+48|0;n=u+36|0;w=u+32|0;v=u+28|0;t=u+24|0;m=u+20|0;p=u+16|0;q=u+8|0;r=u+4|0;s=u;o=u+12|0;c[n>>2]=a;c[w>>2]=b;c[v>>2]=e;c[t>>2]=f;c[m>>2]=g;c[p>>2]=h;c[q>>2]=j;c[r>>2]=k;c[s>>2]=l;c[o>>2]=c[w>>2];while(1){if((c[o>>2]|0)==0){break}if((d[(c[o>>2]|0)+8>>0]|0|0)==(c[v>>2]|0)){if((d[(c[o>>2]|0)+9>>0]|0|0)==(c[m>>2]|0)){if((GD(c[(c[o>>2]|0)+16>>2]|0,c[t>>2]|0)|0)!=0){QC(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0)}}}c[o>>2]=c[(c[o>>2]|0)+32>>2]}i=u;return}function _A(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[g>>2]|0)<=0){i=e;return}Qv(c[(c[f>>2]|0)+8>>2]|0,132,c[g>>2]|0,c[h>>2]|0)|0;i=e;return}function $A(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+8|0;h=f;g=f+4|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=e;if((d[(c[j>>2]|0)+23>>0]|0|0)!=0){if((Bz(c[h>>2]|0)|0)!=0){Jz(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0,0);i=f;return}}vz(c[j>>2]|0,c[h>>2]|0,c[g>>2]|0);i=f;return}function aB(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;m=j+20|0;h=j;g=j+4|0;l=j+8|0;e=j+12|0;k=j+16|0;c[m>>2]=b;c[h>>2]=d;d=c[m>>2]|0;if((c[(c[m>>2]|0)+408>>2]|0)!=0){d=c[d+408>>2]|0}c[g>>2]=d;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[g>>2]|0)+452>>2]|0)){break}if((c[h>>2]|0)==(c[(c[(c[g>>2]|0)+520>>2]|0)+(c[l>>2]<<2)>>2]|0)){f=10;break}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==10){i=j;return}c[e>>2]=(c[(c[g>>2]|0)+452>>2]|0)+1<<2;c[k>>2]=qc(c[(c[g>>2]|0)+520>>2]|0,c[e>>2]|0)|0;if((c[k>>2]|0)!=0){c[(c[g>>2]|0)+520>>2]=c[k>>2];b=c[h>>2]|0;d=(c[g>>2]|0)+452|0;m=c[d>>2]|0;c[d>>2]=m+1;c[(c[(c[g>>2]|0)+520>>2]|0)+(m<<2)>>2]=b;i=j;return}else{a[(c[c[g>>2]>>2]|0)+64>>0]=1;i=j;return}}function bB(f,g,h,j,k,l,m,n,o,p,q){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;X=i;i=i+176|0;ia=X;E=X+136|0;w=X+132|0;y=X+128|0;U=X+124|0;B=X+120|0;A=X+112|0;Y=X+108|0;M=X+174|0;N=X+175|0;Q=X+104|0;s=X+116|0;W=X+144|0;x=X+152|0;r=X+156|0;S=X+160|0;G=X+168|0;v=X+164|0;ha=X+148|0;L=X+100|0;ka=X+96|0;T=X+40|0;O=X+48|0;t=X+140|0;u=X+32|0;H=X+172|0;z=X+173|0;Z=X+28|0;ja=X+44|0;da=X+16|0;ca=X+12|0;ga=X+8|0;fa=X+20|0;ea=X+24|0;F=X+92|0;P=X+52|0;C=X+56|0;D=X+60|0;I=X+64|0;J=X+68|0;V=X+72|0;aa=X+76|0;$=X+80|0;K=X+84|0;_=X+88|0;R=X+36|0;c[E>>2]=f;c[w>>2]=g;c[y>>2]=h;c[U>>2]=j;c[B>>2]=k;c[A>>2]=l;c[Y>>2]=m;a[M>>0]=n;a[N>>0]=o;c[Q>>2]=p;c[s>>2]=q;c[r>>2]=0;c[T>>2]=0;c[t>>2]=0;c[u>>2]=0;a[z>>0]=0;c[Z>>2]=-1;a[H>>0]=(c[Y>>2]|0)!=0;c[S>>2]=c[c[E>>2]>>2];c[W>>2]=Ov(c[E>>2]|0)|0;c[ha>>2]=b[(c[w>>2]|0)+38>>1]|0;if((a[(c[w>>2]|0)+44>>0]&32|0)==0){c[r>>2]=0;c[O>>2]=1}else{c[r>>2]=Dy(c[w>>2]|0)|0;c[O>>2]=e[(c[r>>2]|0)+50>>1]|0}c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[ha>>2]|0)){break}do{if((c[G>>2]|0)!=(b[(c[w>>2]|0)+36>>1]|0)){c[L>>2]=d[(c[(c[w>>2]|0)+4>>2]|0)+((c[G>>2]|0)*24|0)+20>>0]|0;if((c[L>>2]|0)!=0){if((d[N>>0]|0)!=10){c[L>>2]=d[N>>0]|0}else{if((c[L>>2]|0)==10){c[L>>2]=2}}if((c[L>>2]|0)==5){if((c[(c[(c[w>>2]|0)+4>>2]|0)+((c[G>>2]|0)*24|0)+4>>2]|0)==0){c[L>>2]=2}}q=c[L>>2]|0;if((q|0)==4){Qv(c[W>>2]|0,76,(c[A>>2]|0)+1+(c[G>>2]|0)|0,c[Q>>2]|0)|0;break}else if((q|0)==2){xw(c[E>>2]|0)}else if(!((q|0)==3|(q|0)==1)){c[ka>>2]=oy(c[W>>2]|0,77,(c[A>>2]|0)+1+(c[G>>2]|0)|0)|0;vz(c[E>>2]|0,c[(c[(c[w>>2]|0)+4>>2]|0)+((c[G>>2]|0)*24|0)+4>>2]|0,(c[A>>2]|0)+1+(c[G>>2]|0)|0);jw(c[W>>2]|0,c[ka>>2]|0);break}f=c[S>>2]|0;g=c[(c[(c[w>>2]|0)+4>>2]|0)+((c[G>>2]|0)*24|0)>>2]|0;c[ia>>2]=c[c[w>>2]>>2];c[ia+4>>2]=g;c[ja>>2]=cf(f,23968,ia)|0;Sv(c[W>>2]|0,23,1299,c[L>>2]|0,(c[A>>2]|0)+1+(c[G>>2]|0)|0,c[ja>>2]|0,-1)|0;gf(c[W>>2]|0,1)}}}while(0);c[G>>2]=(c[G>>2]|0)+1}a:do{if((c[(c[w>>2]|0)+24>>2]|0)!=0){if((c[(c[S>>2]|0)+24>>2]&8192|0)==0){c[da>>2]=c[(c[w>>2]|0)+24>>2];c[(c[E>>2]|0)+92>>2]=(c[A>>2]|0)+1;if((d[N>>0]|0)!=10){ha=d[N>>0]|0}else{ha=2}c[L>>2]=ha;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[c[da>>2]>>2]|0)){break a}c[ca>>2]=cz(c[W>>2]|0)|0;nz(c[E>>2]|0,c[(c[(c[da>>2]|0)+4>>2]|0)+((c[G>>2]|0)*20|0)>>2]|0,c[ca>>2]|0,8);if((c[L>>2]|0)==4){Qv(c[W>>2]|0,16,0,c[Q>>2]|0)|0}else{c[ga>>2]=c[(c[(c[da>>2]|0)+4>>2]|0)+((c[G>>2]|0)*20|0)+4>>2];if((c[ga>>2]|0)==0){c[ga>>2]=c[c[w>>2]>>2]}if((c[L>>2]|0)==5){c[L>>2]=2}_y(c[E>>2]|0,275,c[L>>2]|0,c[ga>>2]|0,0,3)}$y(c[W>>2]|0,c[ca>>2]|0);c[G>>2]=(c[G>>2]|0)+1}}}}while(0);if((d[M>>0]|0)!=0){if((c[r>>2]|0)==0){c[fa>>2]=cz(c[W>>2]|0)|0;c[L>>2]=d[(c[w>>2]|0)+45>>0]|0;if((d[N>>0]|0)!=10){c[L>>2]=d[N>>0]|0}else{if((c[L>>2]|0)==10){c[L>>2]=2}}if((a[H>>0]|0)!=0){Tv(c[W>>2]|0,79,c[A>>2]|0,c[fa>>2]|0,c[Y>>2]|0)|0;gf(c[W>>2]|0,-120)}b:do{if((c[L>>2]|0)==5){if((d[N>>0]|0)!=5){c[x>>2]=c[(c[w>>2]|0)+8>>2];while(1){if((c[x>>2]|0)==0){break b}if((d[(c[x>>2]|0)+54>>0]|0)==4){break}if((d[(c[x>>2]|0)+54>>0]|0)==3){break}c[x>>2]=c[(c[x>>2]|0)+20>>2]}c[t>>2]=Yv(c[W>>2]|0,16)|0}}}while(0);Tv(c[W>>2]|0,67,c[U>>2]|0,c[fa>>2]|0,c[A>>2]|0)|0;switch(c[L>>2]|0){case 4:{Qv(c[W>>2]|0,16,0,c[Q>>2]|0)|0;break};case 3:case 2:case 1:{ba=53;break};case 5:{c[ea>>2]=0;if((c[(c[S>>2]|0)+24>>2]&262144|0)!=0){c[ea>>2]=RA(c[E>>2]|0,c[w>>2]|0,109,0,0)|0}if((c[ea>>2]|0)!=0){ba=58}else{if((IC(c[E>>2]|0,c[w>>2]|0,0,0)|0)!=0){ba=58}else{if((c[(c[w>>2]|0)+8>>2]|0)!=0){JC(c[E>>2]|0);LC(c[E>>2]|0,c[w>>2]|0,c[U>>2]|0,c[B>>2]|0,0)}}}if((ba|0)==58){JC(c[E>>2]|0);KC(c[E>>2]|0,c[w>>2]|0,c[ea>>2]|0,c[U>>2]|0,c[B>>2]|0,c[A>>2]|0,1,0,5,1)}c[T>>2]=1;break};default:{c[L>>2]=2;ba=53}}if((ba|0)==53){HC(c[E>>2]|0,c[L>>2]|0,c[w>>2]|0)}$y(c[W>>2]|0,c[fa>>2]|0);if((c[t>>2]|0)!=0){c[u>>2]=Yv(c[W>>2]|0,16)|0;jw(c[W>>2]|0,c[t>>2]|0)}}}c[v>>2]=0;c[x>>2]=c[(c[w>>2]|0)+8>>2];while(1){if((c[x>>2]|0)==0){break}do{if((c[(c[y>>2]|0)+(c[v>>2]<<2)>>2]|0)!=0){if((d[z>>0]|0)==0){YA(c[W>>2]|0,c[w>>2]|0,(c[A>>2]|0)+1|0);a[z>>0]=1}c[C>>2]=(c[B>>2]|0)+(c[v>>2]|0);c[D>>2]=cz(c[W>>2]|0)|0;if((c[(c[x>>2]|0)+36>>2]|0)!=0){Qv(c[W>>2]|0,28,0,c[(c[y>>2]|0)+(c[v>>2]<<2)>>2]|0)|0;c[(c[E>>2]|0)+92>>2]=(c[A>>2]|0)+1;ez(c[E>>2]|0,c[(c[x>>2]|0)+36>>2]|0,c[D>>2]|0,8);c[(c[E>>2]|0)+92>>2]=0}c[F>>2]=fz(c[E>>2]|0,e[(c[x>>2]|0)+52>>1]|0)|0;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(e[(c[x>>2]|0)+52>>1]|0)){break}c[I>>2]=b[(c[(c[x>>2]|0)+4>>2]|0)+(c[G>>2]<<1)>>1]|0;if((c[I>>2]|0)<0){ba=76}else{if((c[I>>2]|0)==(b[(c[w>>2]|0)+36>>1]|0)){ba=76}else{c[J>>2]=(c[I>>2]|0)+(c[A>>2]|0)+1;ba=81}}if((ba|0)==76){ba=0;if((c[Z>>2]|0)!=((c[F>>2]|0)+(c[G>>2]|0)|0)){c[J>>2]=c[A>>2];if((c[(c[x>>2]|0)+36>>2]|0)!=0){ba=-1}else{ba=(c[F>>2]|0)+(c[G>>2]|0)|0}c[Z>>2]=ba;ba=81}}if((ba|0)==81){ba=0;Qv(c[W>>2]|0,34,c[J>>2]|0,(c[F>>2]|0)+(c[G>>2]|0)|0)|0}c[G>>2]=(c[G>>2]|0)+1}Tv(c[W>>2]|0,48,c[F>>2]|0,e[(c[x>>2]|0)+52>>1]|0,c[(c[y>>2]|0)+(c[v>>2]<<2)>>2]|0)|0;Az(c[E>>2]|0,c[F>>2]|0,e[(c[x>>2]|0)+52>>1]|0);if((d[H>>0]|0)!=0){if((c[r>>2]|0)==(c[x>>2]|0)){if((d[M>>0]|0)==0){$y(c[W>>2]|0,c[D>>2]|0);break}}}c[L>>2]=d[(c[x>>2]|0)+54>>0]|0;if((c[L>>2]|0)==0){iz(c[E>>2]|0,c[F>>2]|0,e[(c[x>>2]|0)+52>>1]|0);$y(c[W>>2]|0,c[D>>2]|0);break}if((d[N>>0]|0)!=10){c[L>>2]=d[N>>0]|0}else{if((c[L>>2]|0)==10){c[L>>2]=2}}ff(c[W>>2]|0,64,c[C>>2]|0,c[D>>2]|0,c[F>>2]|0,e[(c[x>>2]|0)+50>>1]|0)|0;if((c[x>>2]|0)==(c[r>>2]|0)){ca=c[F>>2]|0}else{ca=fz(c[E>>2]|0,c[O>>2]|0)|0}c[P>>2]=ca;if((d[H>>0]|0)!=0){ba=98}else{if((c[L>>2]|0)==5){ba=98}}c:do{if((ba|0)==98){ba=0;if((a[(c[w>>2]|0)+44>>0]&32|0)==0){Qv(c[W>>2]|0,109,c[C>>2]|0,c[P>>2]|0)|0;if((a[H>>0]|0)==0){break}Tv(c[W>>2]|0,79,c[P>>2]|0,c[D>>2]|0,c[Y>>2]|0)|0;gf(c[W>>2]|0,-120);break}d:do{if((c[x>>2]|0)!=(c[r>>2]|0)){c[G>>2]=0;while(1){if((c[G>>2]|0)>=(e[(c[r>>2]|0)+50>>1]|0)){break d}c[V>>2]=(kz(c[x>>2]|0,b[(c[(c[r>>2]|0)+4>>2]|0)+(c[G>>2]<<1)>>1]|0)|0)<<16>>16;Tv(c[W>>2]|0,46,c[C>>2]|0,c[V>>2]|0,(c[P>>2]|0)+(c[G>>2]|0)|0)|0;c[G>>2]=(c[G>>2]|0)+1}}}while(0);if((a[H>>0]|0)!=0){f=sy(c[W>>2]|0)|0;c[aa>>2]=f+(e[(c[r>>2]|0)+50>>1]|0);c[$>>2]=78;c[K>>2]=(a[(c[x>>2]|0)+55>>0]&3|0)==2?c[F>>2]|0:c[P>>2]|0;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(e[(c[r>>2]|0)+50>>1]|0)){break c}c[_>>2]=ty(c[E>>2]|0,c[(c[(c[r>>2]|0)+32>>2]|0)+(c[G>>2]<<2)>>2]|0)|0;c[V>>2]=b[(c[(c[r>>2]|0)+4>>2]|0)+(c[G>>2]<<1)>>1]|0;if((c[G>>2]|0)==((e[(c[r>>2]|0)+50>>1]|0)-1|0)){c[aa>>2]=c[D>>2];c[$>>2]=79}Sv(c[W>>2]|0,c[$>>2]|0,(c[Y>>2]|0)+1+(c[V>>2]|0)|0,c[aa>>2]|0,(c[K>>2]|0)+(c[G>>2]|0)|0,c[_>>2]|0,-4)|0;gf(c[W>>2]|0,-120);c[G>>2]=(c[G>>2]|0)+1}}}}while(0);ca=c[L>>2]|0;if((ca|0)==4){Qv(c[W>>2]|0,16,0,c[Q>>2]|0)|0}else if((ca|0)==3|(ca|0)==2|(ca|0)==1){Yy(c[E>>2]|0,c[L>>2]|0,c[x>>2]|0)}else{c[R>>2]=0;JC(c[E>>2]|0);if((c[(c[S>>2]|0)+24>>2]&262144|0)!=0){c[R>>2]=RA(c[E>>2]|0,c[w>>2]|0,109,0,0)|0}KC(c[E>>2]|0,c[w>>2]|0,c[R>>2]|0,c[U>>2]|0,c[B>>2]|0,c[P>>2]|0,c[O>>2]&65535,0,5,(c[x>>2]|0)==(c[r>>2]|0)&255);c[T>>2]=1}$y(c[W>>2]|0,c[D>>2]|0);iz(c[E>>2]|0,c[F>>2]|0,e[(c[x>>2]|0)+52>>1]|0);if((c[P>>2]|0)!=(c[F>>2]|0)){iz(c[E>>2]|0,c[P>>2]|0,c[O>>2]|0)}}}while(0);c[x>>2]=c[(c[x>>2]|0)+20>>2];c[v>>2]=(c[v>>2]|0)+1}if((c[t>>2]|0)==0){g=c[T>>2]|0;f=c[s>>2]|0;c[f>>2]=g;i=X;return}Qv(c[W>>2]|0,16,0,(c[t>>2]|0)+1|0)|0;jw(c[W>>2]|0,c[u>>2]|0);g=c[T>>2]|0;f=c[s>>2]|0;c[f>>2]=g;i=X;return}function cB(e,f,g,h,j,k){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;D=i;i=i+112|0;o=D+104|0;p=D+100|0;z=D+96|0;y=D+92|0;t=D+88|0;u=D+84|0;n=D+80|0;q=D+76|0;A=D+72|0;K=D+68|0;v=D+64|0;B=D+60|0;C=D+56|0;I=D+52|0;l=D+20|0;J=D;E=D+4|0;H=D+8|0;L=D+12|0;M=D+16|0;N=D+24|0;G=D+28|0;F=D+32|0;r=D+36|0;w=D+40|0;s=D+44|0;x=D+48|0;c[o>>2]=e;c[p>>2]=f;c[z>>2]=g;c[y>>2]=h;c[t>>2]=j;c[u>>2]=k;c[n>>2]=c[c[o>>2]>>2];c[v>>2]=d[(c[o>>2]|0)+438>>0]|0;if((c[(c[n>>2]|0)+24>>2]&524288|0)==0){i=D;return}c[A>>2]=ef(c[n>>2]|0,c[(c[p>>2]|0)+68>>2]|0)|0;c[K>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[A>>2]<<4)>>2];c[q>>2]=c[(c[p>>2]|0)+16>>2];a:while(1){if((c[q>>2]|0)==0){m=38;break}c[C>>2]=0;c[I>>2]=0;c[H>>2]=0;if((c[t>>2]|0)!=0){if((Dc(c[c[p>>2]>>2]|0,c[(c[q>>2]|0)+8>>2]|0)|0)!=0){if((fB(c[p>>2]|0,c[q>>2]|0,c[t>>2]|0,c[u>>2]|0)|0)!=0){m=7}}else{m=7}}else{m=7}do{if((m|0)==7){m=0;if((a[(c[o>>2]|0)+438>>0]|0)!=0){c[B>>2]=cw(c[n>>2]|0,c[(c[q>>2]|0)+8>>2]|0,c[K>>2]|0)|0}else{c[B>>2]=af(c[o>>2]|0,0,c[(c[q>>2]|0)+8>>2]|0,c[K>>2]|0)|0}if((c[B>>2]|0)!=0){if((FA(c[o>>2]|0,c[B>>2]|0,c[q>>2]|0,C,I)|0)==0){if((c[I>>2]|0)!=0){c[l>>2]=c[I>>2]}else{c[J>>2]=c[(c[q>>2]|0)+36>>2];c[l>>2]=J}c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[(c[q>>2]|0)+20>>2]|0)){break}if((c[(c[l>>2]|0)+(c[E>>2]<<2)>>2]|0)==(b[(c[p>>2]|0)+36>>1]|0)){c[(c[l>>2]|0)+(c[E>>2]<<2)>>2]=-1}if((c[(c[n>>2]|0)+276>>2]|0)!=0){if((c[C>>2]|0)!=0){k=b[(c[(c[C>>2]|0)+4>>2]|0)+(c[E>>2]<<1)>>1]|0}else{k=b[(c[B>>2]|0)+36>>1]|0}c[F>>2]=c[(c[(c[B>>2]|0)+4>>2]|0)+((k<<16>>16)*24|0)>>2];c[G>>2]=Hx(c[o>>2]|0,c[c[B>>2]>>2]|0,c[F>>2]|0,c[A>>2]|0)|0;c[H>>2]=(c[G>>2]|0)==2&1}c[E>>2]=(c[E>>2]|0)+1}py(c[o>>2]|0,c[A>>2]|0,c[(c[B>>2]|0)+32>>2]|0,0,c[c[B>>2]>>2]|0);e=(c[o>>2]|0)+68|0;c[e>>2]=(c[e>>2]|0)+1;if((c[z>>2]|0)!=0){gB(c[o>>2]|0,c[A>>2]|0,c[B>>2]|0,c[C>>2]|0,c[q>>2]|0,c[l>>2]|0,c[z>>2]|0,-1,c[H>>2]|0)}if((c[y>>2]|0)!=0){gB(c[o>>2]|0,c[A>>2]|0,c[B>>2]|0,c[C>>2]|0,c[q>>2]|0,c[l>>2]|0,c[y>>2]|0,1,c[H>>2]|0)}cc(c[n>>2]|0,c[I>>2]|0);break}}if((c[v>>2]|0)==0){m=57;break a}if((d[(c[n>>2]|0)+64>>0]|0)!=0){m=57;break a}if((c[B>>2]|0)==0){c[L>>2]=Ov(c[o>>2]|0)|0;e=sy(c[L>>2]|0)|0;c[M>>2]=e+(c[(c[q>>2]|0)+20>>2]|0)+1;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[(c[q>>2]|0)+20>>2]|0)){break}c[N>>2]=(c[(c[q>>2]|0)+36+(c[E>>2]<<3)>>2]|0)+(c[z>>2]|0)+1;Qv(c[L>>2]|0,76,c[N>>2]|0,c[M>>2]|0)|0;c[E>>2]=(c[E>>2]|0)+1}Qv(c[L>>2]|0,130,d[(c[q>>2]|0)+24>>0]|0,-1)|0}}}while(0);c[q>>2]=c[(c[q>>2]|0)+4>>2]}if((m|0)==38){c[q>>2]=zw(c[p>>2]|0)|0;b:while(1){if((c[q>>2]|0)==0){m=57;break}c[r>>2]=0;c[s>>2]=0;if((c[t>>2]|0)!=0){if((hB(c[p>>2]|0,c[q>>2]|0,c[t>>2]|0,c[u>>2]|0)|0)!=0){m=42}}else{m=42}do{if((m|0)==42){m=0;if((a[(c[q>>2]|0)+24>>0]|0)==0){if((c[(c[n>>2]|0)+24>>2]&16777216|0)==0){if((c[(c[o>>2]|0)+408>>2]|0)==0){if((a[(c[o>>2]|0)+20>>0]|0)==0){break}}}}if((FA(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,r,s)|0)!=0){if((c[v>>2]|0)==0){m=57;break b}if((d[(c[n>>2]|0)+64>>0]|0)!=0){m=57;break b}else{break}}c[w>>2]=Vu(c[n>>2]|0,0,0,0)|0;if((c[w>>2]|0)!=0){c[x>>2]=(c[w>>2]|0)+8;c[(c[x>>2]|0)+16>>2]=c[c[q>>2]>>2];c[(c[x>>2]|0)+8>>2]=c[c[c[q>>2]>>2]>>2];f=(c[(c[x>>2]|0)+16>>2]|0)+40|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;f=(c[o>>2]|0)+68|0;e=c[f>>2]|0;c[f>>2]=e+1;c[(c[x>>2]|0)+40>>2]=e;if((c[y>>2]|0)!=0){iB(c[o>>2]|0,c[w>>2]|0,c[p>>2]|0,c[r>>2]|0,c[q>>2]|0,c[s>>2]|0,c[y>>2]|0,-1)}if((c[z>>2]|0)!=0){iB(c[o>>2]|0,c[w>>2]|0,c[p>>2]|0,c[r>>2]|0,c[q>>2]|0,c[s>>2]|0,c[z>>2]|0,1)}c[(c[x>>2]|0)+8>>2]=0;fu(c[n>>2]|0,c[w>>2]|0)}cc(c[n>>2]|0,c[s>>2]|0)}}while(0);c[q>>2]=c[(c[q>>2]|0)+12>>2]}if((m|0)==57){i=D;return}}else if((m|0)==57){i=D;return}}function dB(e,f,g,h,j,k,l,m,n){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var 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;A=i;i=i+64|0;t=A+20|0;z=A+52|0;q=A+48|0;B=A+44|0;s=A+40|0;D=A+36|0;x=A+32|0;w=A+24|0;v=A+28|0;p=A+16|0;E=A+12|0;u=A+57|0;y=A+8|0;r=A+4|0;C=A;o=A+56|0;c[t>>2]=e;c[z>>2]=f;c[q>>2]=g;c[B>>2]=h;c[s>>2]=j;c[D>>2]=k;c[x>>2]=l;c[w>>2]=m;c[v>>2]=n;a[o>>0]=0;c[p>>2]=Ov(c[t>>2]|0)|0;c[C>>2]=0;c[E>>2]=c[(c[z>>2]|0)+8>>2];while(1){if((c[E>>2]|0)==0){break}if((c[(c[D>>2]|0)+(c[C>>2]<<2)>>2]|0)!=0){a[o>>0]=1;if((c[(c[E>>2]|0)+36>>2]|0)!=0){f=c[p>>2]|0;e=c[(c[D>>2]|0)+(c[C>>2]<<2)>>2]|0;Qv(f,76,e,(sy(c[p>>2]|0)|0)+2|0)|0}Qv(c[p>>2]|0,107,(c[B>>2]|0)+(c[C>>2]|0)|0,c[(c[D>>2]|0)+(c[C>>2]<<2)>>2]|0)|0;a[u>>0]=0;a[u>>0]=(c[v>>2]|0)!=0?16:0;if((a[(c[E>>2]|0)+55>>0]&3|0)==2){if((a[(c[z>>2]|0)+44>>0]&32|0)!=0){a[u>>0]=d[u>>0]|1}}if((a[u>>0]|0)!=0){gf(c[p>>2]|0,a[u>>0]|0)}}c[E>>2]=c[(c[E>>2]|0)+20>>2];c[C>>2]=(c[C>>2]|0)+1}if((a[(c[z>>2]|0)+44>>0]&32|0)!=0){i=A;return}c[y>>2]=(c[s>>2]|0)+1;c[r>>2]=Wv(c[t>>2]|0)|0;Tv(c[p>>2]|0,48,c[y>>2]|0,b[(c[z>>2]|0)+38>>1]|0,c[r>>2]|0)|0;if((a[o>>0]|0)==0){YA(c[p>>2]|0,c[z>>2]|0,0)}Az(c[t>>2]|0,c[y>>2]|0,b[(c[z>>2]|0)+38>>1]|0);if((a[(c[t>>2]|0)+18>>0]|0)!=0){a[u>>0]=0}else{a[u>>0]=1;a[u>>0]=d[u>>0]|((c[x>>2]|0)!=0?4:2)}if((c[w>>2]|0)!=0){a[u>>0]=d[u>>0]|8}if((c[v>>2]|0)!=0){a[u>>0]=d[u>>0]|16}Tv(c[p>>2]|0,70,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;if((a[(c[t>>2]|0)+18>>0]|0)==0){nf(c[p>>2]|0,-1,c[c[z>>2]>>2]|0,0)}gf(c[p>>2]|0,a[u>>0]|0);i=A;return}function eB(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+32|0;h=b+28|0;d=b;k=b+4|0;e=b+8|0;f=b+12|0;l=b+16|0;j=b+20|0;g=b+24|0;c[h>>2]=a;c[k>>2]=c[(c[h>>2]|0)+8>>2];c[e>>2]=c[c[h>>2]>>2];c[d>>2]=c[(c[h>>2]|0)+404>>2];while(1){if((c[d>>2]|0)==0){break}c[f>>2]=(c[(c[e>>2]|0)+16>>2]|0)+(c[(c[d>>2]|0)+8>>2]<<4);c[g>>2]=c[(c[d>>2]|0)+12>>2];c[j>>2]=Wv(c[h>>2]|0)|0;qy(c[h>>2]|0,0,c[(c[d>>2]|0)+8>>2]|0,c[(c[(c[f>>2]|0)+12>>2]|0)+72>>2]|0,53);c[l>>2]=oy(c[k>>2]|0,77,(c[g>>2]|0)+1|0)|0;Qv(c[k>>2]|0,69,0,(c[g>>2]|0)+1|0)|0;jw(c[k>>2]|0,c[l>>2]|0);Tv(c[k>>2]|0,48,(c[g>>2]|0)-1|0,2,c[j>>2]|0)|0;Tv(c[k>>2]|0,70,0,c[j>>2]|0,(c[g>>2]|0)+1|0)|0;gf(c[k>>2]|0,8);Yv(c[k>>2]|0,58)|0;Xv(c[h>>2]|0,c[j>>2]|0);c[d>>2]=c[c[d>>2]>>2]}i=b;return}function fB(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+24|0;m=g;j=g+4|0;o=g+8|0;k=g+12|0;n=g+16|0;l=g+20|0;c[m>>2]=a;c[j>>2]=d;c[o>>2]=e;c[k>>2]=f;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[(c[j>>2]|0)+20>>2]|0)){j=9;break}c[l>>2]=c[(c[j>>2]|0)+36+(c[n>>2]<<3)>>2];if((c[(c[o>>2]|0)+(c[l>>2]<<2)>>2]|0)>=0){j=4;break}if((c[l>>2]|0)==(b[(c[m>>2]|0)+36>>1]|0)){if((c[k>>2]|0)!=0){j=7;break}}c[n>>2]=(c[n>>2]|0)+1}if((j|0)==4){c[h>>2]=1;a=c[h>>2]|0;i=g;return a|0}else if((j|0)==7){c[h>>2]=1;a=c[h>>2]|0;i=g;return a|0}else if((j|0)==9){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}return 0}function gB(e,f,g,h,j,k,l,m,n){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;t=i;i=i+96|0;u=t+84|0;w=t+80|0;z=t+76|0;E=t+72|0;s=t+68|0;A=t+64|0;y=t+60|0;r=t+56|0;J=t+52|0;v=t+48|0;p=t+44|0;o=t+40|0;q=t+12|0;K=t;x=t+4|0;I=t+8|0;C=t+16|0;B=t+20|0;D=t+24|0;H=t+28|0;F=t+32|0;G=t+36|0;c[u>>2]=e;c[w>>2]=f;c[z>>2]=g;c[E>>2]=h;c[s>>2]=j;c[A>>2]=k;c[y>>2]=l;c[r>>2]=m;c[J>>2]=n;c[p>>2]=Ov(c[u>>2]|0)|0;c[o>>2]=(c[(c[u>>2]|0)+68>>2]|0)-1;c[q>>2]=cz(c[p>>2]|0)|0;if((c[r>>2]|0)<0){Qv(c[p>>2]|0,131,d[(c[s>>2]|0)+24>>0]|0,c[q>>2]|0)|0}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[(c[s>>2]|0)+20>>2]|0)){break}c[K>>2]=(c[(c[A>>2]|0)+(c[v>>2]<<2)>>2]|0)+(c[y>>2]|0)+1;Qv(c[p>>2]|0,76,c[K>>2]|0,c[q>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+1}do{if((c[J>>2]|0)==0){if((c[E>>2]|0)==0){c[I>>2]=Wv(c[u>>2]|0)|0;Qv(c[p>>2]|0,34,(c[c[A>>2]>>2]|0)+1+(c[y>>2]|0)|0,c[I>>2]|0)|0;c[x>>2]=Qv(c[p>>2]|0,38,c[I>>2]|0,0)|0;if((c[z>>2]|0)==(c[c[s>>2]>>2]|0)){if((c[r>>2]|0)==1){Tv(c[p>>2]|0,79,c[y>>2]|0,c[q>>2]|0,c[I>>2]|0)|0;gf(c[p>>2]|0,-120)}}qy(c[u>>2]|0,c[o>>2]|0,c[w>>2]|0,c[z>>2]|0,52);Tv(c[p>>2]|0,67,c[o>>2]|0,0,c[I>>2]|0)|0;Qv(c[p>>2]|0,16,0,c[q>>2]|0)|0;e=c[p>>2]|0;jw(e,(sy(c[p>>2]|0)|0)-2|0);jw(c[p>>2]|0,c[x>>2]|0);Xv(c[u>>2]|0,c[I>>2]|0);break}c[C>>2]=c[(c[s>>2]|0)+20>>2];c[B>>2]=fz(c[u>>2]|0,c[C>>2]|0)|0;c[D>>2]=Wv(c[u>>2]|0)|0;Tv(c[p>>2]|0,52,c[o>>2]|0,c[(c[E>>2]|0)+44>>2]|0,c[w>>2]|0)|0;ry(c[u>>2]|0,c[E>>2]|0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[C>>2]|0)){break}Qv(c[p>>2]|0,33,(c[(c[A>>2]|0)+(c[v>>2]<<2)>>2]|0)+1+(c[y>>2]|0)|0,(c[B>>2]|0)+(c[v>>2]|0)|0)|0;c[v>>2]=(c[v>>2]|0)+1}if((c[z>>2]|0)==(c[c[s>>2]>>2]|0)){if((c[r>>2]|0)==1){e=sy(c[p>>2]|0)|0;c[H>>2]=e+(c[C>>2]|0)+1;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[C>>2]|0)){break}c[F>>2]=(c[(c[A>>2]|0)+(c[v>>2]<<2)>>2]|0)+1+(c[y>>2]|0);c[G>>2]=(b[(c[(c[E>>2]|0)+4>>2]|0)+(c[v>>2]<<1)>>1]|0)+1+(c[y>>2]|0);if((b[(c[(c[E>>2]|0)+4>>2]|0)+(c[v>>2]<<1)>>1]|0)==(b[(c[z>>2]|0)+36>>1]|0)){c[G>>2]=c[y>>2]}Tv(c[p>>2]|0,78,c[F>>2]|0,c[H>>2]|0,c[G>>2]|0)|0;gf(c[p>>2]|0,8);c[v>>2]=(c[v>>2]|0)+1}Qv(c[p>>2]|0,16,0,c[q>>2]|0)|0}}j=c[p>>2]|0;h=c[B>>2]|0;g=c[C>>2]|0;f=c[D>>2]|0;e=GA(c[p>>2]|0,c[E>>2]|0)|0;Sv(j,48,h,g,f,e,c[C>>2]|0)|0;ff(c[p>>2]|0,66,c[o>>2]|0,c[q>>2]|0,c[D>>2]|0,0)|0;Xv(c[u>>2]|0,c[D>>2]|0);iz(c[u>>2]|0,c[B>>2]|0,c[C>>2]|0)}}while(0);if((a[(c[s>>2]|0)+24>>0]|0)==0){if((c[(c[c[u>>2]>>2]|0)+24>>2]&16777216|0)==0){if((c[(c[u>>2]|0)+408>>2]|0)==0){if((a[(c[u>>2]|0)+20>>0]|0)==0){_y(c[u>>2]|0,787,2,0,-2,4);e=c[p>>2]|0;f=c[q>>2]|0;$y(e,f);f=c[p>>2]|0;e=c[o>>2]|0;oy(f,58,e)|0;i=t;return}}}}if((c[r>>2]|0)>0){if((d[(c[s>>2]|0)+24>>0]|0)==0){v=c[u>>2]|0;if((c[(c[u>>2]|0)+408>>2]|0)!=0){v=c[v+408>>2]|0}a[v+21>>0]=1}}Qv(c[p>>2]|0,130,d[(c[s>>2]|0)+24>>0]|0,c[r>>2]|0)|0;e=c[p>>2]|0;f=c[q>>2]|0;$y(e,f);f=c[p>>2]|0;e=c[o>>2]|0;oy(f,58,e)|0;i=t;return}function hB(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+48|0;q=k+32|0;m=k+28|0;n=k+24|0;h=k+20|0;r=k+16|0;o=k+8|0;p=k+4|0;l=k;s=k+12|0;c[m>>2]=d;c[n>>2]=e;c[h>>2]=f;c[r>>2]=g;c[o>>2]=0;a:while(1){if((c[o>>2]|0)>=(c[(c[n>>2]|0)+20>>2]|0)){j=15;break}c[p>>2]=c[(c[n>>2]|0)+36+(c[o>>2]<<3)+4>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=(b[(c[m>>2]|0)+38>>1]|0)){break}if((c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0)>=0){j=8}else{if((c[l>>2]|0)==(b[(c[m>>2]|0)+36>>1]|0)){if((c[r>>2]|0)!=0){j=8}}}do{if((j|0)==8){j=0;c[s>>2]=(c[(c[m>>2]|0)+4>>2]|0)+((c[l>>2]|0)*24|0);g=c[s>>2]|0;if((c[p>>2]|0)!=0){if(0==(Dc(c[g>>2]|0,c[p>>2]|0)|0)){j=10;break a}else{break}}else{if((a[g+23>>0]&1|0)!=0){j=12;break a}else{break}}}}while(0);c[l>>2]=(c[l>>2]|0)+1}c[o>>2]=(c[o>>2]|0)+1}if((j|0)==10){c[q>>2]=1;d=c[q>>2]|0;i=k;return d|0}else if((j|0)==12){c[q>>2]=1;d=c[q>>2]|0;i=k;return d|0}else if((j|0)==15){c[q>>2]=0;d=c[q>>2]|0;i=k;return d|0}return 0}function iB(f,g,h,j,k,l,m,n){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;v=i;i=i+144|0;w=v+48|0;J=v+112|0;z=v+120|0;G=v+116|0;t=v+124|0;M=v+108|0;A=v+104|0;o=v+100|0;q=v+96|0;E=v+92|0;r=v+88|0;H=v+56|0;p=v+52|0;s=v+44|0;u=v+16|0;L=v;O=v+4|0;P=v+8|0;K=v+130|0;N=v+12|0;y=v+20|0;B=v+24|0;x=v+28|0;I=v+32|0;D=v+36|0;F=v+40|0;C=v+128|0;c[w>>2]=f;c[J>>2]=g;c[z>>2]=h;c[G>>2]=j;c[t>>2]=k;c[M>>2]=l;c[A>>2]=m;c[o>>2]=n;c[q>>2]=c[c[w>>2]>>2];c[r>>2]=0;c[s>>2]=0;c[u>>2]=Ov(c[w>>2]|0)|0;if((c[o>>2]|0)<0){c[s>>2]=Qv(c[u>>2]|0,131,d[(c[t>>2]|0)+24>>0]|0,0)|0}c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[(c[t>>2]|0)+20>>2]|0)){break}if((c[G>>2]|0)!=0){n=b[(c[(c[G>>2]|0)+4>>2]|0)+(c[E>>2]<<1)>>1]|0}else{n=-1}b[K>>1]=n;c[L>>2]=jB(c[w>>2]|0,c[z>>2]|0,c[A>>2]|0,b[K>>1]|0)|0;if((c[M>>2]|0)!=0){n=c[(c[M>>2]|0)+(c[E>>2]<<2)>>2]|0}else{n=c[(c[t>>2]|0)+36>>2]|0}b[K>>1]=n;c[N>>2]=c[(c[(c[c[t>>2]>>2]|0)+4>>2]|0)+((b[K>>1]|0)*24|0)>>2];c[O>>2]=Su(c[q>>2]|0,27,c[N>>2]|0)|0;c[P>>2]=Bu(c[w>>2]|0,79,c[L>>2]|0,c[O>>2]|0,0)|0;c[r>>2]=Ux(c[q>>2]|0,c[r>>2]|0,c[P>>2]|0)|0;c[E>>2]=(c[E>>2]|0)+1}if((c[z>>2]|0)==(c[c[t>>2]>>2]|0)){if((c[o>>2]|0)>0){if((a[(c[z>>2]|0)+44>>0]&32|0)==0){c[B>>2]=jB(c[w>>2]|0,c[z>>2]|0,c[A>>2]|0,-1)|0;c[x>>2]=kB(c[q>>2]|0,c[z>>2]|0,c[(c[J>>2]|0)+48>>2]|0,-1)|0;c[y>>2]=Bu(c[w>>2]|0,78,c[B>>2]|0,c[x>>2]|0,0)|0}else{c[D>>2]=0;c[F>>2]=Dy(c[z>>2]|0)|0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(e[(c[F>>2]|0)+50>>1]|0)){break}b[C>>1]=b[(c[(c[G>>2]|0)+4>>2]|0)+(c[E>>2]<<1)>>1]|0;c[B>>2]=jB(c[w>>2]|0,c[z>>2]|0,c[A>>2]|0,b[C>>1]|0)|0;c[x>>2]=kB(c[q>>2]|0,c[z>>2]|0,c[(c[J>>2]|0)+48>>2]|0,b[C>>1]|0)|0;c[I>>2]=Bu(c[w>>2]|0,79,c[B>>2]|0,c[x>>2]|0,0)|0;c[D>>2]=Ux(c[q>>2]|0,c[D>>2]|0,c[I>>2]|0)|0;c[E>>2]=(c[E>>2]|0)+1}c[y>>2]=Bu(c[w>>2]|0,19,c[D>>2]|0,0,0)|0}c[r>>2]=Ux(c[q>>2]|0,c[r>>2]|0,c[y>>2]|0)|0}}c[H+0>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;c[H+12>>2]=0;c[H+16>>2]=0;c[H+20>>2]=0;c[H+24>>2]=0;c[H+28>>2]=0;c[H+4>>2]=c[J>>2];c[H>>2]=c[w>>2];bx(H,c[r>>2]|0)|0;c[p>>2]=lB(c[w>>2]|0,c[J>>2]|0,c[r>>2]|0,0,0,0,0)|0;if((c[o>>2]|0)>0){if((d[(c[t>>2]|0)+24>>0]|0)==0){x=c[w>>2]|0;if((c[(c[w>>2]|0)+408>>2]|0)!=0){x=c[x+408>>2]|0}a[x+21>>0]=1}}Qv(c[u>>2]|0,130,d[(c[t>>2]|0)+24>>0]|0,c[o>>2]|0)|0;if((c[p>>2]|0)!=0){mB(c[p>>2]|0)}gu(c[q>>2]|0,c[r>>2]|0);if((c[s>>2]|0)==0){i=v;return}jw(c[u>>2]|0,c[s>>2]|0);i=v;return}function jB(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+32|0;k=n+24|0;h=n;q=n+4|0;o=n+28|0;j=n+12|0;p=n+16|0;l=n+20|0;m=n+8|0;c[k>>2]=d;c[h>>2]=e;c[q>>2]=f;b[o>>1]=g;c[m>>2]=c[c[k>>2]>>2];c[j>>2]=Su(c[m>>2]|0,159,0)|0;if((c[j>>2]|0)==0){d=c[j>>2]|0;i=n;return d|0}if((b[o>>1]|0)>=0){if((b[o>>1]|0)!=(b[(c[h>>2]|0)+36>>1]|0)){c[p>>2]=(c[(c[h>>2]|0)+4>>2]|0)+((b[o>>1]|0)*24|0);c[(c[j>>2]|0)+28>>2]=(c[q>>2]|0)+(b[o>>1]|0)+1;a[(c[j>>2]|0)+1>>0]=a[(c[p>>2]|0)+21>>0]|0;c[l>>2]=c[(c[p>>2]|0)+16>>2];if((c[l>>2]|0)==0){c[l>>2]=c[c[(c[m>>2]|0)+8>>2]>>2]}c[j>>2]=ux(c[k>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;d=c[j>>2]|0;i=n;return d|0}}c[(c[j>>2]|0)+28>>2]=c[q>>2];a[(c[j>>2]|0)+1>>0]=100;d=c[j>>2]|0;i=n;return d|0}function kB(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;m=g+12|0;j=g;k=g+4|0;l=g+16|0;h=g+8|0;c[m>>2]=a;c[j>>2]=d;c[k>>2]=e;b[l>>1]=f;c[h>>2]=Su(c[m>>2]|0,154,0)|0;if((c[h>>2]|0)==0){m=c[h>>2]|0;i=g;return m|0}c[(c[h>>2]|0)+44>>2]=c[j>>2];c[(c[h>>2]|0)+28>>2]=c[k>>2];b[(c[h>>2]|0)+32>>1]=b[l>>1]|0;m=c[h>>2]|0;i=g;return m|0}function lB(f,g,h,j,k,l,m){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0;r=i;i=i+176|0;Z=r+16|0;q=r+164|0;L=r+160|0;E=r+156|0;X=r+152|0;U=r+148|0;Q=r+144|0;C=r+172|0;W=r+140|0;Y=r+136|0;H=r+132|0;s=r+128|0;u=r+124|0;I=r+8|0;n=r+104|0;P=r+100|0;F=r+96|0;v=r+92|0;G=r+168|0;t=r+52|0;V=r+32|0;O=r+24|0;N=r+48|0;M=r+36|0;w=r+40|0;A=r+44|0;y=r+84|0;x=r+56|0;z=r+60|0;B=r+64|0;J=r;K=r+68|0;R=r+72|0;T=r+76|0;S=r+80|0;p=r+88|0;c[L>>2]=f;c[E>>2]=g;c[X>>2]=h;c[U>>2]=j;c[Q>>2]=k;b[C>>1]=l;c[W>>2]=m;c[u>>2]=c[(c[L>>2]|0)+8>>2];c[t>>2]=c[c[L>>2]>>2];c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[n+16>>2]=0;if((c[U>>2]|0)!=0){if((c[c[U>>2]>>2]|0)>=64){c[U>>2]=0}}c[n+8>>2]=c[U>>2];if((b[(c[t>>2]|0)+60>>1]&32|0)!=0){b[C>>1]=e[C>>1]&-1025}if((c[c[E>>2]>>2]|0)>64){f=c[L>>2]|0;c[Z>>2]=64;bf(f,29960,Z);c[q>>2]=0;f=c[q>>2]|0;i=r;return f|0}if((b[C>>1]&64|0)!=0){j=1}else{j=c[c[E>>2]>>2]|0}c[H>>2]=j;c[Y>>2]=815+(((c[H>>2]|0)-1|0)*72|0)&-8;c[s>>2]=ve(c[t>>2]|0,(c[Y>>2]|0)+72|0)|0;a:do{if((a[(c[t>>2]|0)+64>>0]|0)!=0){cc(c[t>>2]|0,c[s>>2]|0);c[s>>2]=0}else{c[(c[s>>2]|0)+64>>2]=-1;c[(c[s>>2]|0)+60>>2]=-1;a[(c[s>>2]|0)+41>>0]=c[H>>2];c[c[s>>2]>>2]=c[L>>2];c[(c[s>>2]|0)+4>>2]=c[E>>2];c[(c[s>>2]|0)+8>>2]=c[U>>2];c[(c[s>>2]|0)+12>>2]=c[Q>>2];f=cz(c[u>>2]|0)|0;c[(c[s>>2]|0)+48>>2]=f;c[(c[s>>2]|0)+52>>2]=f;b[(c[s>>2]|0)+34>>1]=b[C>>1]|0;c[(c[s>>2]|0)+56>>2]=c[(c[L>>2]|0)+424>>2];c[P>>2]=(c[s>>2]|0)+68;c[n>>2]=c[s>>2];c[n+4>>2]=(c[s>>2]|0)+328;c[n+12>>2]=(c[s>>2]|0)+(c[Y>>2]|0);sB(c[n+12>>2]|0);c[c[P>>2]>>2]=0;vB((c[s>>2]|0)+328|0,c[s>>2]|0);wB((c[s>>2]|0)+328|0,c[X>>2]|0,72);c[G>>2]=0;while(1){X=(c[H>>2]|0)==0;if((c[G>>2]|0)>=(c[(c[n+4>>2]|0)+12>>2]|0)){break}if(X){o=16}else{if((Vz(c[(c[(c[n+4>>2]|0)+20>>2]|0)+((c[G>>2]|0)*48|0)>>2]|0)|0)!=0){o=16}}if((o|0)==16){o=0;ez(c[L>>2]|0,c[(c[(c[n+4>>2]|0)+20>>2]|0)+((c[G>>2]|0)*48|0)>>2]|0,c[(c[s>>2]|0)+52>>2]|0,8);f=(c[(c[n+4>>2]|0)+20>>2]|0)+((c[G>>2]|0)*48|0)+20|0;a[f>>0]=d[f>>0]|4}c[G>>2]=(c[G>>2]|0)+1}if(X){if((c[U>>2]|0)!=0){a[(c[s>>2]|0)+36>>0]=c[c[U>>2]>>2]}if((b[C>>1]&1024|0)!=0){a[(c[s>>2]|0)+40>>0]=1}}c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[c[E>>2]>>2]|0)){break}xB(c[P>>2]|0,c[(c[E>>2]|0)+8+((c[G>>2]|0)*72|0)+40>>2]|0);c[G>>2]=(c[G>>2]|0)+1}yB(c[E>>2]|0,(c[s>>2]|0)+328|0);if((a[(c[t>>2]|0)+64>>0]|0)==0){do{if((b[C>>1]&1024|0)!=0){if((zB(c[L>>2]|0,c[E>>2]|0,(c[s>>2]|0)+328|0,c[Q>>2]|0)|0)!=0){a[(c[s>>2]|0)+40>>0]=1;break}if((c[U>>2]|0)==0){f=(c[s>>2]|0)+34|0;b[f>>1]=e[f>>1]|512;c[(c[s>>2]|0)+8>>2]=c[Q>>2]}}}while(0);if((c[H>>2]|0)!=1){o=34}else{if((AB(n)|0)==0){o=34}}if((o|0)==34){c[V>>2]=BB(n)|0;if((c[V>>2]|0)!=0){break}CB(c[s>>2]|0,0)|0;if((a[(c[t>>2]|0)+64>>0]|0)!=0){break}if((c[(c[s>>2]|0)+8>>2]|0)!=0){CB(c[s>>2]|0,(b[(c[s>>2]|0)+32>>1]|0)+1&65535)|0;if((a[(c[t>>2]|0)+64>>0]|0)!=0){break}}}if((c[(c[s>>2]|0)+8>>2]|0)==0){if((c[(c[t>>2]|0)+24>>2]&131072|0)!=0){f=(c[s>>2]|0)+24|0;c[f>>2]=-1;c[f+4>>2]=-1}}if((c[(c[L>>2]|0)+64>>2]|0)==0){if((d[(c[t>>2]|0)+64>>0]|0)==0){b:do{if((d[(c[s>>2]|0)+41>>0]|0)>=2){if((c[Q>>2]|0)!=0){if((b[(c[t>>2]|0)+60>>1]&1024|0)==0){g=DB(c[P>>2]|0,c[Q>>2]|0)|0;f=O;c[f>>2]=g;c[f+4>>2]=D;if((c[n+8>>2]|0)!=0){h=DB(c[P>>2]|0,c[n+8>>2]|0)|0;Z=O;g=c[Z+4>>2]|D;f=O;c[f>>2]=c[Z>>2]|h;c[f+4>>2]=g}while(1){if((d[(c[s>>2]|0)+41>>0]|0)<2){break b}c[v>>2]=c[(c[s>>2]|0)+736+(((d[(c[s>>2]|0)+41>>0]|0)-1|0)*72|0)+56>>2];if((a[(c[(c[s>>2]|0)+4>>2]|0)+8+((d[(c[v>>2]|0)+16>>0]|0)*72|0)+36>>0]&8|0)==0){break b}if((b[C>>1]&1024|0)==0){if((c[(c[v>>2]|0)+36>>2]&4096|0)==0){break b}}g=O;f=(c[v>>2]|0)+8|0;if((c[g>>2]&c[f>>2]|0)!=0?1:(c[g+4>>2]&c[f+4>>2]|0)!=0){break b}c[M>>2]=(c[(c[n+4>>2]|0)+20>>2]|0)+((c[(c[n+4>>2]|0)+12>>2]|0)*48|0);c[N>>2]=c[(c[n+4>>2]|0)+20>>2];while(1){if(!((c[N>>2]|0)>>>0<(c[M>>2]|0)>>>0)){break}g=(c[N>>2]|0)+40|0;f=(c[v>>2]|0)+8|0;if((c[g>>2]&c[f>>2]|0)!=0?1:(c[g+4>>2]&c[f+4>>2]|0)!=0){if((c[(c[c[N>>2]>>2]|0)+4>>2]&1|0)==0){break}}c[N>>2]=(c[N>>2]|0)+48}if((c[N>>2]|0)>>>0<(c[M>>2]|0)>>>0){break b}f=(c[s>>2]|0)+41|0;a[f>>0]=(a[f>>0]|0)+ -1<<24>>24;c[H>>2]=(c[H>>2]|0)+ -1}}}}}while(0);f=(c[c[s>>2]>>2]|0)+424|0;c[f>>2]=(c[f>>2]|0)+(b[(c[s>>2]|0)+32>>1]|0);if((b[C>>1]&4|0)!=0){if((c[(c[(c[s>>2]|0)+792>>2]|0)+36>>2]&4096|0)!=0){a[(c[s>>2]|0)+38>>0]=1;if((a[(c[(c[E>>2]|0)+24>>2]|0)+44>>0]&32|0)==0){f=(c[(c[s>>2]|0)+792>>2]|0)+36|0;c[f>>2]=c[f>>2]&-65}}}f=I;c[f>>2]=-1;c[f+4>>2]=-1;c[G>>2]=0;c[F>>2]=(c[s>>2]|0)+736;while(1){if((c[G>>2]|0)>=(c[H>>2]|0)){break}c[y>>2]=(c[E>>2]|0)+8+((d[(c[F>>2]|0)+36>>0]|0)*72|0);c[w>>2]=c[(c[y>>2]|0)+16>>2];c[A>>2]=ef(c[t>>2]|0,c[(c[w>>2]|0)+68>>2]|0)|0;c[v>>2]=c[(c[F>>2]|0)+56>>2];c:do{if((a[(c[w>>2]|0)+44>>0]&2|0)==0){if((c[(c[w>>2]|0)+12>>2]|0)==0){if((c[(c[v>>2]|0)+36>>2]&1024|0)!=0){c[x>>2]=ww(c[t>>2]|0,c[w>>2]|0)|0;c[z>>2]=c[(c[y>>2]|0)+40>>2];Sv(c[u>>2]|0,149,c[z>>2]|0,0,0,c[x>>2]|0,-10)|0;break}if((a[(c[w>>2]|0)+44>>0]&16|0)!=0){break}do{if((c[(c[v>>2]|0)+36>>2]&64|0)==0){if((b[C>>1]&16|0)!=0){break}c[B>>2]=52;if((a[(c[s>>2]|0)+38>>0]|0)!=0){c[B>>2]=53;c[(c[s>>2]|0)+60>>2]=c[(c[y>>2]|0)+40>>2]}qy(c[L>>2]|0,c[(c[y>>2]|0)+40>>2]|0,c[A>>2]|0,c[w>>2]|0,c[B>>2]|0);if((a[(c[s>>2]|0)+38>>0]|0)!=0){break c}if((b[(c[w>>2]|0)+38>>1]|0)>=64){break c}if((a[(c[w>>2]|0)+44>>0]&32|0)!=0){break c}h=(c[y>>2]|0)+56|0;g=c[h+4>>2]|0;f=J;c[f>>2]=c[h>>2];c[f+4>>2]=g;c[K>>2]=0;while(1){f=J;if(!((c[f>>2]|0)!=0|(c[f+4>>2]|0)!=0)){break}g=J;g=eL(c[g>>2]|0,c[g+4>>2]|0,1)|0;f=J;c[f>>2]=g;c[f+4>>2]=D;c[K>>2]=(c[K>>2]|0)+1}g=c[u>>2]|0;f=(sy(c[u>>2]|0)|0)-1|0;nf(g,f,c[K>>2]|0,-14);break c}}while(0);py(c[L>>2]|0,c[A>>2]|0,c[(c[w>>2]|0)+32>>2]|0,0,c[c[w>>2]>>2]|0)}}}while(0);do{if((c[(c[v>>2]|0)+36>>2]&512|0)!=0){c[R>>2]=c[(c[v>>2]|0)+28>>2];c[S>>2]=52;do{if((a[(c[w>>2]|0)+44>>0]&32|0)==0){o=88}else{if((a[(c[R>>2]|0)+55>>0]&3|0)!=2){o=88;break}if((b[C>>1]&64|0)==0){o=88;break}c[T>>2]=c[(c[F>>2]|0)+4>>2];c[S>>2]=0}}while(0);d:do{if((o|0)==88){o=0;if((a[(c[s>>2]|0)+38>>0]|0)==0){do{if((c[W>>2]|0)!=0){if((b[C>>1]&64|0)==0){break}c[T>>2]=c[W>>2];break d}}while(0);g=(c[L>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[T>>2]=f;break}c[p>>2]=c[(c[(c[y>>2]|0)+16>>2]|0)+8>>2];c[T>>2]=c[W>>2];while(1){if((c[p>>2]|0)==0){break}if((c[p>>2]|0)==(c[R>>2]|0)){break}c[T>>2]=(c[T>>2]|0)+1;c[p>>2]=c[(c[p>>2]|0)+20>>2]}c[S>>2]=53;c[(c[s>>2]|0)+64>>2]=c[T>>2]}}while(0);c[(c[F>>2]|0)+8>>2]=c[T>>2];if((c[S>>2]|0)==0){break}Tv(c[u>>2]|0,c[S>>2]|0,c[T>>2]|0,c[(c[R>>2]|0)+44>>2]|0,c[A>>2]|0)|0;ry(c[L>>2]|0,c[R>>2]|0)}}while(0);if((c[A>>2]|0)>=0){aw(c[L>>2]|0,c[A>>2]|0)}h=EB((c[s>>2]|0)+68|0,c[(c[y>>2]|0)+40>>2]|0)|0;Z=I;g=c[Z+4>>2]&~D;f=I;c[f>>2]=c[Z>>2]&~h;c[f+4>>2]=g;c[G>>2]=(c[G>>2]|0)+1;c[F>>2]=(c[F>>2]|0)+72}f=sy(c[u>>2]|0)|0;c[(c[s>>2]|0)+44>>2]=f;if((a[(c[t>>2]|0)+64>>0]|0)==0){f=I;c[f>>2]=-1;c[f+4>>2]=-1;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[H>>2]|0)){break}c[F>>2]=(c[s>>2]|0)+736+((c[G>>2]|0)*72|0);if((c[(c[(c[F>>2]|0)+56>>2]|0)+36>>2]&16384|0)!=0){f=I;FB(c[L>>2]|0,(c[s>>2]|0)+328|0,(c[E>>2]|0)+8+((d[(c[F>>2]|0)+36>>0]|0)*72|0)|0,c[f>>2]|0,c[f+4>>2]|0,c[F>>2]|0);if((a[(c[t>>2]|0)+64>>0]|0)!=0){break a}}GB(c[L>>2]|0,c[E>>2]|0,c[F>>2]|0,c[G>>2]|0,d[(c[F>>2]|0)+36>>0]|0,b[C>>1]|0);g=sy(c[u>>2]|0)|0;c[(c[F>>2]|0)+32>>2]=g;g=I;g=HB(c[s>>2]|0,c[G>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;f=I;c[f>>2]=g;c[f+4>>2]=D;c[(c[s>>2]|0)+48>>2]=c[(c[F>>2]|0)+24>>2];c[G>>2]=(c[G>>2]|0)+1}c[q>>2]=c[s>>2];f=c[q>>2]|0;i=r;return f|0}}}}}}while(0);if((c[s>>2]|0)!=0){c[(c[L>>2]|0)+424>>2]=c[(c[s>>2]|0)+56>>2];nB(c[t>>2]|0,c[s>>2]|0)}c[q>>2]=0;f=c[q>>2]|0;i=r;return f|0}function mB(e){e=e|0;var f=0,g=0,h=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;k=i;i=i+80|0;u=k+76|0;h=k+72|0;n=k+68|0;v=k+64|0;o=k+60|0;f=k+56|0;r=k+52|0;j=k+48|0;z=k+44|0;B=k+40|0;A=k+36|0;l=k+12|0;m=k;p=k+4|0;q=k+8|0;s=k+16|0;t=k+20|0;w=k+24|0;x=k+28|0;y=k+32|0;c[u>>2]=e;c[h>>2]=c[c[u>>2]>>2];c[n>>2]=c[(c[h>>2]|0)+8>>2];c[r>>2]=c[(c[u>>2]|0)+4>>2];c[j>>2]=c[c[h>>2]>>2];IA(c[h>>2]|0);c[v>>2]=(d[(c[u>>2]|0)+41>>0]|0)-1;while(1){if((c[v>>2]|0)<0){break}c[o>>2]=(c[u>>2]|0)+736+((c[v>>2]|0)*72|0);c[f>>2]=c[(c[o>>2]|0)+56>>2];$y(c[n>>2]|0,c[(c[o>>2]|0)+24>>2]|0);if((d[(c[o>>2]|0)+37>>0]|0)!=156){Tv(c[n>>2]|0,d[(c[o>>2]|0)+37>>0]|0,c[(c[o>>2]|0)+40>>2]|0,c[(c[o>>2]|0)+44>>2]|0,d[(c[o>>2]|0)+38>>0]|0)|0;gf(c[n>>2]|0,a[(c[o>>2]|0)+39>>0]|0)}if((c[(c[f>>2]|0)+36>>2]&2048|0)!=0){if((c[(c[o>>2]|0)+48>>2]|0)>0){$y(c[n>>2]|0,c[(c[o>>2]|0)+16>>2]|0);c[A>>2]=c[(c[o>>2]|0)+48>>2];c[B>>2]=(c[(c[o>>2]|0)+52>>2]|0)+(((c[A>>2]|0)-1|0)*12|0);while(1){if((c[A>>2]|0)<=0){break}jw(c[n>>2]|0,(c[(c[B>>2]|0)+4>>2]|0)+1|0);Qv(c[n>>2]|0,d[(c[B>>2]|0)+8>>0]|0,c[c[B>>2]>>2]|0,c[(c[B>>2]|0)+4>>2]|0)|0;jw(c[n>>2]|0,(c[(c[B>>2]|0)+4>>2]|0)-1|0);c[A>>2]=(c[A>>2]|0)+ -1;c[B>>2]=(c[B>>2]|0)+ -12}cc(c[j>>2]|0,c[(c[o>>2]|0)+52>>2]|0)}}$y(c[n>>2]|0,c[(c[o>>2]|0)+12>>2]|0);if((c[(c[o>>2]|0)+20>>2]|0)!=0){Qv(c[n>>2]|0,16,0,c[(c[o>>2]|0)+20>>2]|0)|0;jw(c[n>>2]|0,c[(c[o>>2]|0)+20>>2]|0);jw(c[n>>2]|0,(c[(c[o>>2]|0)+20>>2]|0)-2|0)}if((c[c[o>>2]>>2]|0)!=0){c[z>>2]=oy(c[n>>2]|0,134,c[c[o>>2]>>2]|0)|0;if((c[(c[f>>2]|0)+36>>2]&64|0)==0){oy(c[n>>2]|0,101,c[(c[r>>2]|0)+8+((c[v>>2]|0)*72|0)+40>>2]|0)|0}if((c[(c[f>>2]|0)+36>>2]&512|0)!=0){oy(c[n>>2]|0,101,c[(c[o>>2]|0)+8>>2]|0)|0}C=c[n>>2]|0;e=c[o>>2]|0;if((d[(c[o>>2]|0)+37>>0]|0)==18){Qv(C,17,c[e+40>>2]|0,c[(c[o>>2]|0)+28>>2]|0)|0}else{Qv(C,16,0,c[e+28>>2]|0)|0}jw(c[n>>2]|0,c[z>>2]|0)}c[v>>2]=(c[v>>2]|0)+ -1}$y(c[n>>2]|0,c[(c[u>>2]|0)+52>>2]|0);c[v>>2]=0;c[o>>2]=(c[u>>2]|0)+736;while(1){if((c[v>>2]|0)>=(d[(c[u>>2]|0)+41>>0]|0)){break}c[q>>2]=0;c[s>>2]=(c[r>>2]|0)+8+((d[(c[o>>2]|0)+36>>0]|0)*72|0);c[t>>2]=c[(c[s>>2]|0)+16>>2];c[f>>2]=c[(c[o>>2]|0)+56>>2];a:do{if(((d[(c[s>>2]|0)+37>>0]|0)>>>2&1|0)!=0){if((a[(c[j>>2]|0)+64>>0]|0)!=0){g=35}else{c[m>>2]=sy(c[n>>2]|0)|0;c[l>>2]=c[(c[o>>2]|0)+32>>2];c[p>>2]=Kz(c[n>>2]|0,c[l>>2]|0)|0;while(1){if((c[l>>2]|0)>=(c[m>>2]|0)){break a}do{if((c[(c[p>>2]|0)+4>>2]|0)==(c[(c[o>>2]|0)+4>>2]|0)){z=c[p>>2]|0;if((d[c[p>>2]>>0]|0)==46){a[z>>0]=33;c[(c[p>>2]|0)+4>>2]=(c[(c[p>>2]|0)+8>>2]|0)+(c[(c[s>>2]|0)+32>>2]|0);c[(c[p>>2]|0)+8>>2]=c[(c[p>>2]|0)+12>>2];c[(c[p>>2]|0)+12>>2]=0;break}if((d[z>>0]|0)==100){a[c[p>>2]>>0]=28;c[(c[p>>2]|0)+4>>2]=0;c[(c[p>>2]|0)+12>>2]=0}}}while(0);c[l>>2]=(c[l>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+20}}}else{g=35}}while(0);b:do{if((g|0)==35){g=0;if((a[(c[t>>2]|0)+44>>0]&2|0)==0){if((c[(c[t>>2]|0)+12>>2]|0)==0){if((b[(c[u>>2]|0)+34>>1]&16|0)==0){c[w>>2]=c[(c[f>>2]|0)+36>>2];if((a[(c[u>>2]|0)+38>>0]|0)==0){if((c[w>>2]&64|0)==0){oy(c[n>>2]|0,58,c[(c[s>>2]|0)+40>>2]|0)|0}}if((c[w>>2]&512|0)!=0){if((c[w>>2]&16640|0)==0){if((c[(c[o>>2]|0)+8>>2]|0)!=(c[(c[u>>2]|0)+64>>2]|0)){oy(c[n>>2]|0,58,c[(c[o>>2]|0)+8>>2]|0)|0}}}}}}z=c[f>>2]|0;if((c[(c[f>>2]|0)+36>>2]&576|0)!=0){c[q>>2]=c[z+28>>2]}else{if((c[z+36>>2]&8192|0)!=0){c[q>>2]=c[(c[o>>2]|0)+48>>2]}}if((c[q>>2]|0)!=0){if((a[(c[j>>2]|0)+64>>0]|0)==0){c[m>>2]=sy(c[n>>2]|0)|0;c[l>>2]=c[(c[o>>2]|0)+32>>2];c[p>>2]=Kz(c[n>>2]|0,c[l>>2]|0)|0;while(1){if((c[l>>2]|0)>=(c[m>>2]|0)){break b}do{if((c[(c[p>>2]|0)+4>>2]|0)==(c[(c[o>>2]|0)+4>>2]|0)){z=c[p>>2]|0;if((d[c[p>>2]>>0]|0)!=46){if((d[z>>0]|0)!=100){break}c[(c[p>>2]|0)+4>>2]=c[(c[o>>2]|0)+8>>2];a[c[p>>2]>>0]=109;break}c[x>>2]=c[z+8>>2];if((a[(c[t>>2]|0)+44>>0]&32|0)!=0){c[y>>2]=Dy(c[t>>2]|0)|0;c[x>>2]=b[(c[(c[y>>2]|0)+4>>2]|0)+(c[x>>2]<<1)>>1]|0}c[x>>2]=(kz(c[q>>2]|0,c[x>>2]&65535)|0)<<16>>16;if((c[x>>2]|0)>=0){c[(c[p>>2]|0)+8>>2]=c[x>>2];c[(c[p>>2]|0)+4>>2]=c[(c[o>>2]|0)+8>>2]}}}while(0);c[l>>2]=(c[l>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+20}}}}}while(0);c[v>>2]=(c[v>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+72}c[(c[h>>2]|0)+424>>2]=c[(c[u>>2]|0)+56>>2];nB(c[j>>2]|0,c[u>>2]|0);i=k;return}function nB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d;g=d+4|0;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}oB((c[f>>2]|0)+328|0);while(1){if((c[(c[f>>2]|0)+16>>2]|0)==0){break}c[g>>2]=c[(c[f>>2]|0)+16>>2];c[(c[f>>2]|0)+16>>2]=c[(c[g>>2]|0)+48>>2];pB(c[e>>2]|0,c[g>>2]|0)}cc(c[e>>2]|0,c[f>>2]|0);i=d;return}function oB(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+12|0;h=d;g=d+4|0;e=d+8|0;c[f>>2]=b;c[e>>2]=c[c[c[c[f>>2]>>2]>>2]>>2];c[h>>2]=(c[(c[f>>2]|0)+12>>2]|0)-1;c[g>>2]=c[(c[f>>2]|0)+20>>2];while(1){if((c[h>>2]|0)<0){break}if((a[(c[g>>2]|0)+20>>0]&1|0)!=0){gu(c[e>>2]|0,c[c[g>>2]>>2]|0)}if((a[(c[g>>2]|0)+20>>0]&16|0)!=0){tB(c[e>>2]|0,c[(c[g>>2]|0)+12>>2]|0)}else{if((a[(c[g>>2]|0)+20>>0]&32|0)!=0){uB(c[e>>2]|0,c[(c[g>>2]|0)+12>>2]|0)}}c[h>>2]=(c[h>>2]|0)+ -1;c[g>>2]=(c[g>>2]|0)+48}if((c[(c[f>>2]|0)+20>>2]|0)==((c[f>>2]|0)+24|0)){i=d;return}cc(c[e>>2]|0,c[(c[f>>2]|0)+20>>2]|0);i=d;return}function pB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;qB(c[f>>2]|0,c[e>>2]|0);cc(c[f>>2]|0,c[e>>2]|0);i=d;return}function qB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;if((c[(c[e>>2]|0)+44>>2]|0)!=((c[e>>2]|0)+52|0)){cc(c[f>>2]|0,c[(c[e>>2]|0)+44>>2]|0)}rB(c[f>>2]|0,c[e>>2]|0);sB(c[e>>2]|0);i=d;return}function rB(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;h=f+4|0;g=f;c[h>>2]=b;c[g>>2]=e;if((c[(c[g>>2]|0)+36>>2]&17408|0)==0){i=f;return}if((c[(c[g>>2]|0)+36>>2]&1024|0)!=0){if((d[(c[g>>2]|0)+28>>0]|0|0)!=0){oc(c[(c[g>>2]|0)+32>>2]|0);a[(c[g>>2]|0)+28>>0]=0;c[(c[g>>2]|0)+32>>2]=0;i=f;return}}if((c[(c[g>>2]|0)+36>>2]&16384|0)==0){i=f;return}if((c[(c[g>>2]|0)+28>>2]|0)==0){i=f;return}cc(c[h>>2]|0,c[(c[(c[g>>2]|0)+28>>2]|0)+16>>2]|0);Ch(c[(c[(c[g>>2]|0)+28>>2]|0)+40>>2]|0);cc(c[h>>2]|0,c[(c[g>>2]|0)+28>>2]|0);c[(c[g>>2]|0)+28>>2]=0;i=f;return}function sB(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;c[(c[e>>2]|0)+44>>2]=(c[e>>2]|0)+52;b[(c[e>>2]|0)+40>>1]=0;b[(c[e>>2]|0)+42>>1]=4;c[(c[e>>2]|0)+36>>2]=0;i=d;return}function tB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;oB(c[e>>2]|0);cc(c[f>>2]|0,c[e>>2]|0);i=d;return}function uB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;oB(c[e>>2]|0);cc(c[f>>2]|0,c[e>>2]|0);i=d;return}function vB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[c[e>>2]>>2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=0;c[(c[e>>2]|0)+16>>2]=8;c[(c[e>>2]|0)+20>>2]=(c[e>>2]|0)+24;i=d;return}function wB(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g+4|0;k=g;h=g+8|0;c[j>>2]=b;c[k>>2]=e;a[h>>0]=f;a[(c[j>>2]|0)+8>>0]=a[h>>0]|0;if((c[k>>2]|0)==0){i=g;return}e=c[j>>2]|0;f=c[k>>2]|0;if((d[c[k>>2]>>0]|0|0)!=(d[h>>0]|0|0)){yC(e,f,0)|0;i=g;return}else{wB(e,c[f+12>>2]|0,a[h>>0]|0);wB(c[j>>2]|0,c[(c[k>>2]|0)+16>>2]|0,a[h>>0]|0);i=g;return}}function xB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=c[f>>2]|0;f=c[e>>2]|0;a=c[f>>2]|0;c[f>>2]=a+1;c[(c[e>>2]|0)+4+(a<<2)>>2]=b;i=d;return}function yB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;g=d;e=d+4|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=(c[(c[g>>2]|0)+12>>2]|0)-1;while(1){if((c[e>>2]|0)<0){break}vC(c[f>>2]|0,c[g>>2]|0,c[e>>2]|0);c[e>>2]=(c[e>>2]|0)+ -1}i=d;return}function zB(a,f,g,h){a=a|0;f=f|0;g=g|0;h=h|0;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;s=i;i=i+48|0;l=s+40|0;o=s+36|0;w=s+32|0;t=s+28|0;p=s+24|0;u=s+16|0;n=s+12|0;m=s+8|0;q=s+4|0;v=s;j=s+44|0;r=s+20|0;c[o>>2]=a;c[w>>2]=f;c[t>>2]=g;c[p>>2]=h;if((c[c[w>>2]>>2]|0)!=1){c[l>>2]=0;a=c[l>>2]|0;i=s;return a|0}c[q>>2]=c[(c[w>>2]|0)+48>>2];c[u>>2]=c[(c[w>>2]|0)+24>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[c[p>>2]>>2]|0)){break}c[v>>2]=Pw(c[(c[(c[p>>2]|0)+4>>2]|0)+((c[m>>2]|0)*20|0)>>2]|0)|0;if((d[c[v>>2]>>0]|0)==154){if((c[(c[v>>2]|0)+28>>2]|0)==(c[q>>2]|0)){if((b[(c[v>>2]|0)+32>>1]|0)<0){k=8;break}}}c[m>>2]=(c[m>>2]|0)+1}if((k|0)==8){c[l>>2]=1;a=c[l>>2]|0;i=s;return a|0}c[n>>2]=c[(c[u>>2]|0)+8>>2];while(1){if((c[n>>2]|0)==0){k=22;break}if((d[(c[n>>2]|0)+54>>0]|0)!=0){c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[(c[n>>2]|0)+50>>1]|0)){break}b[j>>1]=b[(c[(c[n>>2]|0)+4>>2]|0)+(c[m>>2]<<1)>>1]|0;if(0==(OB(c[t>>2]|0,c[q>>2]|0,b[j>>1]|0,-1,-1,2,c[n>>2]|0)|0)){c[r>>2]=uC(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[n>>2]|0,c[m>>2]|0)|0;if((c[r>>2]|0)<0){break}if((d[(c[(c[u>>2]|0)+4>>2]|0)+((b[j>>1]|0)*24|0)+20>>0]|0)==0){break}}c[m>>2]=(c[m>>2]|0)+1}if((c[m>>2]|0)==(e[(c[n>>2]|0)+50>>1]|0)){k=20;break}}c[n>>2]=c[(c[n>>2]|0)+20>>2]}if((k|0)==20){c[l>>2]=1;a=c[l>>2]|0;i=s;return a|0}else if((k|0)==22){c[l>>2]=0;a=c[l>>2]|0;i=s;return a|0}return 0}function AB(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;o=i;i=i+48|0;j=o+40|0;t=o+36|0;s=o+32|0;m=o+28|0;p=o+24|0;l=o+20|0;k=o+12|0;q=o+8|0;g=o+4|0;r=o;n=o+16|0;c[t>>2]=f;c[s>>2]=c[c[t>>2]>>2];if((b[(c[s>>2]|0)+34>>1]&32|0)!=0){c[j>>2]=0;f=c[j>>2]|0;i=o;return f|0}c[m>>2]=(c[(c[s>>2]|0)+4>>2]|0)+8;c[r>>2]=c[(c[m>>2]|0)+16>>2];if((a[(c[r>>2]|0)+44>>0]&16|0)!=0){c[j>>2]=0;f=c[j>>2]|0;i=o;return f|0}if((c[(c[m>>2]|0)+64>>2]|0)!=0){c[j>>2]=0;f=c[j>>2]|0;i=o;return f|0}c[q>>2]=c[(c[m>>2]|0)+40>>2];c[p>>2]=(c[s>>2]|0)+328;c[k>>2]=c[(c[t>>2]|0)+12>>2];c[(c[k>>2]|0)+36>>2]=0;b[(c[k>>2]|0)+26>>1]=0;c[l>>2]=OB(c[p>>2]|0,c[q>>2]|0,-1,0,0,2,0)|0;a:do{if((c[l>>2]|0)!=0){c[(c[k>>2]|0)+36>>2]=4353;c[c[(c[k>>2]|0)+44>>2]>>2]=c[l>>2];b[(c[k>>2]|0)+40>>1]=1;b[(c[k>>2]|0)+24>>1]=1;b[(c[k>>2]|0)+20>>1]=33}else{c[n>>2]=c[(c[r>>2]|0)+8>>2];while(1){if((c[n>>2]|0)==0){break a}if((d[(c[n>>2]|0)+54>>0]|0)!=0){if((c[(c[n>>2]|0)+36>>2]|0)==0){if((e[(c[n>>2]|0)+50>>1]|0)<=4){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(e[(c[n>>2]|0)+50>>1]|0)){break}c[l>>2]=OB(c[p>>2]|0,c[q>>2]|0,b[(c[(c[n>>2]|0)+4>>2]|0)+(c[g>>2]<<1)>>1]|0,0,0,2,c[n>>2]|0)|0;if((c[l>>2]|0)==0){break}c[(c[(c[k>>2]|0)+44>>2]|0)+(c[g>>2]<<2)>>2]=c[l>>2];c[g>>2]=(c[g>>2]|0)+1}if((c[g>>2]|0)==(e[(c[n>>2]|0)+50>>1]|0)){break}}}}c[n>>2]=c[(c[n>>2]|0)+20>>2]}c[(c[k>>2]|0)+36>>2]=4609;if(((d[(c[n>>2]|0)+55>>0]|0)>>>5&1|0)!=0){h=21}else{f=(c[m>>2]|0)+56|0;r=c[f>>2]|0;f=c[f+4>>2]|0;t=mC(c[n>>2]|0)|0;if((r&~t|0)==0&(f&~D|0)==0){h=21}}if((h|0)==21){f=(c[k>>2]|0)+36|0;c[f>>2]=c[f>>2]|64}b[(c[k>>2]|0)+40>>1]=c[g>>2];b[(c[k>>2]|0)+24>>1]=c[g>>2];c[(c[k>>2]|0)+28>>2]=c[n>>2];b[(c[k>>2]|0)+20>>1]=39}}while(0);if((c[(c[k>>2]|0)+36>>2]|0)==0){c[j>>2]=0;f=c[j>>2]|0;i=o;return f|0}b[(c[k>>2]|0)+22>>1]=1;c[(c[s>>2]|0)+792>>2]=c[k>>2];t=EB((c[s>>2]|0)+68|0,c[q>>2]|0)|0;f=(c[k>>2]|0)+8|0;c[f>>2]=t;c[f+4>>2]=D;c[(c[s>>2]|0)+740>>2]=c[q>>2];b[(c[s>>2]|0)+32>>1]=1;if((c[(c[s>>2]|0)+8>>2]|0)!=0){a[(c[s>>2]|0)+36>>0]=c[c[(c[s>>2]|0)+8>>2]>>2]}if((b[(c[s>>2]|0)+34>>1]&1024|0)!=0){a[(c[s>>2]|0)+40>>0]=1}c[j>>2]=1;f=c[j>>2]|0;i=o;return f|0}function BB(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+64|0;j=e+48|0;p=e+44|0;k=e;m=e+8|0;o=e+40|0;s=e+36|0;l=e+32|0;h=e+24|0;q=e+20|0;f=e+16|0;n=e+52|0;g=e+28|0;c[j>>2]=b;c[p>>2]=c[c[j>>2]>>2];r=k;c[r>>2]=0;c[r+4>>2]=0;r=m;c[r>>2]=0;c[r+4>>2]=0;c[s>>2]=c[(c[p>>2]|0)+4>>2];c[h>>2]=c[c[c[p>>2]>>2]>>2];c[q>>2]=d[(c[p>>2]|0)+41>>0]|0;c[f>>2]=0;a[n>>0]=0;c[g>>2]=c[(c[j>>2]|0)+12>>2];sB(c[g>>2]|0);c[o>>2]=0;c[l>>2]=(c[s>>2]|0)+8;while(1){if((c[o>>2]|0)>=(c[q>>2]|0)){j=13;break}a[(c[g>>2]|0)+16>>0]=c[o>>2];r=EB((c[p>>2]|0)+68|0,c[(c[l>>2]|0)+40>>2]|0)|0;s=(c[g>>2]|0)+8|0;c[s>>2]=r;c[s+4>>2]=D;if(((d[(c[l>>2]|0)+36>>0]|0|(d[n>>0]|0))&10|0)!=0){b=m;r=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=r}a[n>>0]=a[(c[l>>2]|0)+36>>0]|0;b=c[j>>2]|0;s=k;r=c[s>>2]|0;s=c[s+4>>2]|0;if((a[(c[(c[l>>2]|0)+16>>2]|0)+44>>0]&16|0)!=0){c[f>>2]=$B(b,r,s)|0}else{c[f>>2]=aC(b,r,s)|0}if((c[f>>2]|0)==0){s=k;c[f>>2]=bC(c[j>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0}b=(c[g>>2]|0)+8|0;t=m;r=c[t+4>>2]|c[b+4>>2];s=m;c[s>>2]=c[t>>2]|c[b>>2];c[s+4>>2]=r;if((c[f>>2]|0)!=0){j=13;break}if((d[(c[h>>2]|0)+64>>0]|0|0)!=0){j=13;break}c[o>>2]=(c[o>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+72}if((j|0)==13){qB(c[h>>2]|0,c[g>>2]|0);i=e;return c[f>>2]|0}return 0}function CB(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;n=i;i=i+160|0;x=n;g=n+116|0;l=n+112|0;q=n+138|0;O=n+108|0;m=n+104|0;D=n+100|0;h=n+96|0;t=n+84|0;A=n+88|0;J=n+92|0;Q=n+124|0;L=n+128|0;G=n+136|0;H=n+140|0;P=n+142|0;R=n+144|0;C=n+48|0;B=n+120|0;z=n+64|0;w=n+44|0;k=n+60|0;K=n+56|0;v=n+52|0;S=n+80|0;j=n+68|0;I=n+24|0;E=n+8|0;F=n+146|0;M=n+132|0;N=n+134|0;u=n+72|0;r=n+16|0;s=n+76|0;o=n+32|0;p=n+40|0;c[l>>2]=e;b[q>>1]=f;c[Q>>2]=0;b[P>>1]=0;b[R>>1]=0;c[D>>2]=c[c[l>>2]>>2];c[h>>2]=c[c[D>>2]>>2];c[m>>2]=d[(c[l>>2]|0)+41>>0]|0;if((c[m>>2]|0)<=1){f=1}else{f=(c[m>>2]|0)==2?5:10}c[O>>2]=f;c[A>>2]=($(32+(c[m>>2]<<2)|0,c[O>>2]|0)|0)<<1;c[j>>2]=$e(c[h>>2]|0,c[A>>2]|0)|0;if((c[j>>2]|0)==0){c[g>>2]=7;e=c[g>>2]|0;i=n;return e|0}c[w>>2]=c[j>>2];c[z>>2]=(c[w>>2]|0)+(c[O>>2]<<5);e=c[z>>2]|0;c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0;c[S>>2]=(c[z>>2]|0)+(c[O>>2]<<5);c[A>>2]=c[O>>2]<<1;c[k>>2]=c[w>>2];while(1){if((c[A>>2]|0)<=0){break}c[(c[k>>2]|0)+24>>2]=c[S>>2];c[A>>2]=(c[A>>2]|0)+ -1;c[k>>2]=(c[k>>2]|0)+32;c[S>>2]=(c[S>>2]|0)+(c[m>>2]<<2)}if((c[(c[D>>2]|0)+424>>2]|0)>>>0<46){S=c[(c[D>>2]|0)+424>>2]|0}else{S=46}b[(c[z>>2]|0)+16>>1]=S;c[B>>2]=1;if((c[(c[l>>2]|0)+8>>2]|0)==0){y=12}else{if((b[q>>1]|0)==0){y=12}else{a[(c[z>>2]|0)+20>>0]=(c[m>>2]|0)>0?-1:1;c[L>>2]=c[c[(c[l>>2]|0)+8>>2]>>2]}}if((y|0)==12){a[(c[z>>2]|0)+20>>0]=0;c[L>>2]=0}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[m>>2]|0)){break}c[C>>2]=0;c[A>>2]=0;c[k>>2]=c[z>>2];while(1){if((c[A>>2]|0)>=(c[B>>2]|0)){break}c[v>>2]=c[(c[l>>2]|0)+16>>2];while(1){if((c[v>>2]|0)==0){break}f=E;c[f>>2]=0;c[f+4>>2]=0;a[F>>0]=a[(c[k>>2]|0)+20>>0]|0;f=c[v>>2]|0;e=c[k>>2]|0;a:do{if(!((c[f>>2]&~c[e>>2]|0)!=0?1:(c[f+4>>2]&~c[e+4>>2]|0)!=0)){f=(c[v>>2]|0)+8|0;e=c[k>>2]|0;if(!((c[f>>2]&c[e>>2]|0)!=0?1:(c[f+4>>2]&c[e+4>>2]|0)!=0)){b[G>>1]=YB(b[(c[v>>2]|0)+18>>1]|0,(b[(c[v>>2]|0)+20>>1]|0)+(b[(c[k>>2]|0)+16>>1]|0)&65535)|0;b[G>>1]=YB(b[G>>1]|0,b[(c[k>>2]|0)+18>>1]|0)|0;b[H>>1]=(b[(c[k>>2]|0)+16>>1]|0)+(b[(c[v>>2]|0)+22>>1]|0);T=c[k>>2]|0;S=(c[v>>2]|0)+8|0;f=c[T+4>>2]|c[S+4>>2];e=I;c[e>>2]=c[T>>2]|c[S>>2];c[e+4>>2]=f;if((a[F>>0]|0)<0){a[F>>0]=ZB(c[l>>2]|0,c[(c[l>>2]|0)+8>>2]|0,c[k>>2]|0,b[(c[l>>2]|0)+34>>1]|0,c[t>>2]&65535,c[v>>2]|0,E)|0;if((a[F>>0]|0)>=0){if((a[F>>0]|0)<(c[L>>2]|0)){T=(((c[L>>2]|0)-(a[F>>0]|0)|0)*100|0)/(c[L>>2]|0)|0;b[M>>1]=((Kw(T,((T|0)<0)<<31>>31)|0)<<16>>16)-66;T=b[q>>1]|0;T=T+((_B(b[q>>1]|0)|0)<<16>>16)|0;b[N>>1]=T+(b[M>>1]|0)+16;if((b[(c[l>>2]|0)+34>>1]&1024|0)!=0){b[N>>1]=(b[N>>1]|0)+16}b[G>>1]=YB(b[G>>1]|0,b[N>>1]|0)|0}}}else{f=(c[k>>2]|0)+8|0;e=c[f+4>>2]|0;T=E;c[T>>2]=c[f>>2];c[T+4>>2]=e}c[J>>2]=0;c[K>>2]=c[w>>2];b:while(1){if((c[J>>2]|0)>=(c[C>>2]|0)){break}e=c[K>>2]|0;T=I;do{if((c[e>>2]|0)==(c[T>>2]|0)?(c[e+4>>2]|0)==(c[T+4>>2]|0):0){if(((a[(c[K>>2]|0)+20>>0]^a[F>>0])&80|0)==0){if((b[(c[K>>2]|0)+18>>1]|0)<=(b[G>>1]|0)){if((b[(c[K>>2]|0)+16>>1]|0)<=(b[H>>1]|0)){break b}}if((b[(c[K>>2]|0)+18>>1]|0)<(b[G>>1]|0)){break}if((b[(c[K>>2]|0)+16>>1]|0)>=(b[H>>1]|0)){break b}}}}while(0);c[J>>2]=(c[J>>2]|0)+1;c[K>>2]=(c[K>>2]|0)+32}if((c[J>>2]|0)>=(c[C>>2]|0)){if((c[C>>2]|0)>=(c[O>>2]|0)){if((b[G>>1]|0)>=(b[P>>1]|0)){break}}if((c[C>>2]|0)<(c[O>>2]|0)){T=c[C>>2]|0;c[C>>2]=T+1;c[J>>2]=T}else{c[J>>2]=c[Q>>2]}c[K>>2]=(c[w>>2]|0)+(c[J>>2]<<5)}else{if((b[(c[K>>2]|0)+18>>1]|0)<=(b[G>>1]|0)){if((b[(c[K>>2]|0)+16>>1]|0)<=(b[H>>1]|0)){break}}}S=c[k>>2]|0;T=(c[v>>2]|0)+8|0;e=c[S+4>>2]|c[T+4>>2];f=c[K>>2]|0;c[f>>2]=c[S>>2]|c[T>>2];c[f+4>>2]=e;f=E;e=c[f+4>>2]|0;T=(c[K>>2]|0)+8|0;c[T>>2]=c[f>>2];c[T+4>>2]=e;b[(c[K>>2]|0)+16>>1]=b[H>>1]|0;b[(c[K>>2]|0)+18>>1]=b[G>>1]|0;a[(c[K>>2]|0)+20>>0]=a[F>>0]|0;fL(c[(c[K>>2]|0)+24>>2]|0,c[(c[k>>2]|0)+24>>2]|0,c[t>>2]<<2|0)|0;c[(c[(c[K>>2]|0)+24>>2]|0)+(c[t>>2]<<2)>>2]=c[v>>2];if((c[C>>2]|0)>=(c[O>>2]|0)){c[Q>>2]=0;b[P>>1]=b[(c[w>>2]|0)+18>>1]|0;b[R>>1]=b[(c[w>>2]|0)+16>>1]|0;c[J>>2]=1;c[K>>2]=(c[w>>2]|0)+32;while(1){if((c[J>>2]|0)>=(c[O>>2]|0)){break a}do{if((b[(c[K>>2]|0)+18>>1]|0)>(b[P>>1]|0)){y=53}else{if((b[(c[K>>2]|0)+18>>1]|0)!=(b[P>>1]|0)){break}if((b[(c[K>>2]|0)+16>>1]|0)>(b[R>>1]|0)){y=53}}}while(0);if((y|0)==53){y=0;b[P>>1]=b[(c[K>>2]|0)+18>>1]|0;b[R>>1]=b[(c[K>>2]|0)+16>>1]|0;c[Q>>2]=c[J>>2]}c[J>>2]=(c[J>>2]|0)+1;c[K>>2]=(c[K>>2]|0)+32}}}}}while(0);c[v>>2]=c[(c[v>>2]|0)+48>>2]}c[A>>2]=(c[A>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+32}c[k>>2]=c[w>>2];c[w>>2]=c[z>>2];c[z>>2]=c[k>>2];c[B>>2]=c[C>>2];c[t>>2]=(c[t>>2]|0)+1}if((c[B>>2]|0)==0){bf(c[D>>2]|0,30488,x);cc(c[h>>2]|0,c[j>>2]|0);c[g>>2]=1;T=c[g>>2]|0;i=n;return T|0}c[k>>2]=c[z>>2];c[A>>2]=1;while(1){if((c[A>>2]|0)>=(c[B>>2]|0)){break}if((b[(c[k>>2]|0)+18>>1]|0)>(b[(c[z>>2]|0)+(c[A>>2]<<5)+18>>1]|0)){c[k>>2]=(c[z>>2]|0)+(c[A>>2]<<5)}c[A>>2]=(c[A>>2]|0)+1}c[t>>2]=0;while(1){w=c[l>>2]|0;if((c[t>>2]|0)>=(c[m>>2]|0)){break}c[u>>2]=w+736+((c[t>>2]|0)*72|0);T=c[(c[(c[k>>2]|0)+24>>2]|0)+(c[t>>2]<<2)>>2]|0;c[v>>2]=T;c[(c[u>>2]|0)+56>>2]=T;a[(c[u>>2]|0)+36>>0]=a[(c[v>>2]|0)+16>>0]|0;c[(c[u>>2]|0)+4>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+8+((d[(c[u>>2]|0)+36>>0]|0)*72|0)+40>>2];c[t>>2]=(c[t>>2]|0)+1}if((b[w+34>>1]&1024|0)!=0){if((b[(c[l>>2]|0)+34>>1]&512|0)==0){if((d[(c[l>>2]|0)+40>>0]|0)==0){if((b[q>>1]|0)!=0){c[s>>2]=(ZB(c[l>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[k>>2]|0,512,(c[m>>2]|0)-1&65535,c[(c[(c[k>>2]|0)+24>>2]|0)+((c[m>>2]|0)-1<<2)>>2]|0,r)|0)<<24>>24;if((c[s>>2]|0)==(c[c[(c[l>>2]|0)+12>>2]>>2]|0)){a[(c[l>>2]|0)+40>>0]=2}}}}}if((c[(c[l>>2]|0)+8>>2]|0)!=0){q=a[(c[k>>2]|0)+20>>0]|0;if((b[(c[l>>2]|0)+34>>1]&512|0)!=0){if((q<<24>>24|0)==(c[c[(c[l>>2]|0)+8>>2]>>2]|0)){a[(c[l>>2]|0)+40>>0]=2}}else{a[(c[l>>2]|0)+36>>0]=q;if((a[(c[l>>2]|0)+36>>0]|0)<0){a[(c[l>>2]|0)+36>>0]=0}f=(c[k>>2]|0)+8|0;e=c[f+4>>2]|0;T=(c[l>>2]|0)+24|0;c[T>>2]=c[f>>2];c[T+4>>2]=e}if((b[(c[l>>2]|0)+34>>1]&2048|0)!=0){if((a[(c[l>>2]|0)+36>>0]|0)==(c[c[(c[l>>2]|0)+8>>2]>>2]|0)){T=o;c[T>>2]=0;c[T+4>>2]=0;c[p>>2]=(ZB(c[l>>2]|0,c[(c[l>>2]|0)+8>>2]|0,c[k>>2]|0,0,(c[m>>2]|0)-1&65535,c[(c[(c[k>>2]|0)+24>>2]|0)+((c[m>>2]|0)-1<<2)>>2]|0,o)|0)<<24>>24;a[(c[l>>2]|0)+37>>0]=(c[p>>2]|0)==(c[c[(c[l>>2]|0)+8>>2]>>2]|0)}}}b[(c[l>>2]|0)+32>>1]=b[(c[k>>2]|0)+16>>1]|0;cc(c[h>>2]|0,c[j>>2]|0);c[g>>2]=0;T=c[g>>2]|0;i=n;return T|0}function DB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;h=d+16|0;g=d+12|0;f=d+8|0;e=d;c[h>>2]=a;c[g>>2]=b;a=e;c[a>>2]=0;c[a+4>>2]=0;if((c[g>>2]|0)==0){h=e;a=h;a=c[a>>2]|0;h=h+4|0;h=c[h>>2]|0;D=h;i=d;return a|0}c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[g>>2]>>2]|0)){break}j=WB(c[h>>2]|0,c[(c[(c[g>>2]|0)+4>>2]|0)+((c[f>>2]|0)*20|0)>>2]|0)|0;k=e;b=c[k+4>>2]|D;a=e;c[a>>2]=c[k>>2]|j;c[a+4>>2]=b;c[f>>2]=(c[f>>2]|0)+1}j=e;k=j;k=c[k>>2]|0;j=j+4|0;j=c[j>>2]|0;D=j;i=d;return k|0}function EB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+32|0;d=e;g=e+16|0;h=e+8|0;f=e+12|0;c[g>>2]=a;c[h>>2]=b;c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[g>>2]>>2]|0)){f=6;break}b=c[f>>2]|0;if((c[(c[g>>2]|0)+4+(c[f>>2]<<2)>>2]|0)==(c[h>>2]|0)){f=4;break}c[f>>2]=b+1}if((f|0)==4){a=bL(1,0,b|0)|0;b=d;c[b>>2]=a;c[b+4>>2]=D;b=d;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=e;return a|0}else if((f|0)==6){b=d;c[b>>2]=0;c[b+4>>2]=0;b=d;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=e;return a|0}return 0}function FB(d,e,f,g,h,j){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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,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=i;i=i+144|0;O=F;o=F+128|0;J=F+124|0;v=F+120|0;l=F+24|0;p=F+116|0;r=F+112|0;y=F+108|0;G=F+104|0;m=F+100|0;q=F+96|0;u=F+92|0;H=F+88|0;s=F+84|0;t=F+132|0;n=F+64|0;x=F+48|0;k=F+52|0;C=F+60|0;I=F+56|0;K=F+68|0;B=F+32|0;w=F+8|0;P=F+136|0;N=F+76|0;M=F+16|0;E=F+72|0;A=F+40|0;z=F+80|0;c[o>>2]=d;c[J>>2]=e;c[v>>2]=f;d=l;c[d>>2]=g;c[d+4>>2]=h;c[p>>2]=j;a[P>>0]=0;c[q>>2]=c[(c[o>>2]|0)+8>>2];c[u>>2]=Gz(c[o>>2]|0)|0;c[r>>2]=0;c[H>>2]=c[(c[v>>2]|0)+16>>2];c[G>>2]=(c[(c[J>>2]|0)+20>>2]|0)+((c[(c[J>>2]|0)+12>>2]|0)*48|0);c[I>>2]=c[(c[p>>2]|0)+56>>2];h=B;c[h>>2]=0;c[h+4>>2]=0;c[y>>2]=c[(c[J>>2]|0)+20>>2];while(1){if(!((c[y>>2]|0)>>>0<(c[G>>2]|0)>>>0)){break}h=l;if((TB(c[y>>2]|0,c[v>>2]|0,c[h>>2]|0,c[h+4>>2]|0)|0)!=0){c[N>>2]=c[(c[y>>2]|0)+12>>2];if((c[N>>2]|0)>=64){g=0;j=-2147483648}else{g=bL(1,0,c[N>>2]|0)|0;j=D}h=M;c[h>>2]=g;c[h+4>>2]=j;if((a[P>>0]|0)==0){h=c[(c[(c[H>>2]|0)+4>>2]|0)+((c[N>>2]|0)*24|0)>>2]|0;c[O>>2]=c[c[H>>2]>>2];c[O+4>>2]=h;zc(284,30440,O);a[P>>0]=1}d=B;h=M;if((c[d>>2]&c[h>>2]|0)==0?(c[d+4>>2]&c[h+4>>2]|0)==0:0){if((UB(c[c[o>>2]>>2]|0,c[I>>2]|0,(c[r>>2]|0)+1|0)|0)!=0){L=42;break}f=c[y>>2]|0;e=c[r>>2]|0;c[r>>2]=e+1;c[(c[(c[I>>2]|0)+44>>2]|0)+(e<<2)>>2]=f;e=M;f=B;d=c[f+4>>2]|c[e+4>>2];h=B;c[h>>2]=c[f>>2]|c[e>>2];c[h+4>>2]=d}}c[y>>2]=(c[y>>2]|0)+48}if((L|0)==42){i=F;return}f=c[r>>2]&65535;b[(c[I>>2]|0)+40>>1]=f;b[(c[I>>2]|0)+24>>1]=f;c[(c[I>>2]|0)+36>>2]=16961;f=(c[v>>2]|0)+56|0;e=B;d=c[f+4>>2]&(~c[e+4>>2]|-2147483648);h=w;c[h>>2]=c[f>>2]&~c[e>>2];c[h+4>>2]=d;if((b[(c[H>>2]|0)+38>>1]|0)>=63){L=63}else{L=b[(c[H>>2]|0)+38>>1]|0}c[k>>2]=L;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[k>>2]|0)){break}h=w;e=c[h>>2]|0;h=c[h+4>>2]|0;d=bL(1,0,c[x>>2]|0)|0;if((e&d|0)!=0|(h&D|0)!=0){c[r>>2]=(c[r>>2]|0)+1}c[x>>2]=(c[x>>2]|0)+1}if(0!=0?1:(c[(c[v>>2]|0)+60>>2]&-2147483648|0)!=0){c[r>>2]=(c[r>>2]|0)+((b[(c[H>>2]|0)+38>>1]|0)-64+1)}h=(c[I>>2]|0)+36|0;c[h>>2]=c[h>>2]|65;c[m>>2]=VB(c[c[o>>2]>>2]|0,(c[r>>2]|0)+1&65535,0,K)|0;if((c[m>>2]|0)==0){i=F;return}c[(c[I>>2]|0)+28>>2]=c[m>>2];c[c[m>>2]>>2]=30472;c[(c[m>>2]|0)+12>>2]=c[H>>2];c[n>>2]=0;h=B;c[h>>2]=0;c[h+4>>2]=0;c[y>>2]=c[(c[J>>2]|0)+20>>2];while(1){if(!((c[y>>2]|0)>>>0<(c[G>>2]|0)>>>0)){break}h=l;if((TB(c[y>>2]|0,c[v>>2]|0,c[h>>2]|0,c[h+4>>2]|0)|0)!=0){c[E>>2]=c[(c[y>>2]|0)+12>>2];if((c[E>>2]|0)>=64){J=0;I=-2147483648}else{J=bL(1,0,c[E>>2]|0)|0;I=D}d=A;c[d>>2]=J;c[d+4>>2]=I;d=B;h=A;if((c[d>>2]&c[h>>2]|0)==0?(c[d+4>>2]&c[h+4>>2]|0)==0:0){c[z>>2]=c[c[y>>2]>>2];e=A;f=B;d=c[f+4>>2]|c[e+4>>2];h=B;c[h>>2]=c[f>>2]|c[e>>2];c[h+4>>2]=d;b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]=c[(c[y>>2]|0)+12>>2];c[C>>2]=Iz(c[o>>2]|0,c[(c[z>>2]|0)+12>>2]|0,c[(c[z>>2]|0)+16>>2]|0)|0;if((c[C>>2]|0)!=0){I=c[c[C>>2]>>2]|0}else{I=3640}c[(c[(c[m>>2]|0)+32>>2]|0)+(c[n>>2]<<2)>>2]=I;c[n>>2]=(c[n>>2]|0)+1}}c[y>>2]=(c[y>>2]|0)+48}c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[k>>2]|0)){break}h=w;e=c[h>>2]|0;h=c[h+4>>2]|0;d=bL(1,0,c[x>>2]|0)|0;if((e&d|0)!=0|(h&D|0)!=0){b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]=c[x>>2];c[(c[(c[m>>2]|0)+32>>2]|0)+(c[n>>2]<<2)>>2]=3640;c[n>>2]=(c[n>>2]|0)+1}c[x>>2]=(c[x>>2]|0)+1}a:do{if(0!=0?1:(c[(c[v>>2]|0)+60>>2]&-2147483648|0)!=0){c[x>>2]=63;while(1){if((c[x>>2]|0)>=(b[(c[H>>2]|0)+38>>1]|0)){break a}b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]=c[x>>2];c[(c[(c[m>>2]|0)+32>>2]|0)+(c[n>>2]<<2)>>2]=3640;c[n>>2]=(c[n>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+1}}}while(0);b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]=-1;c[(c[(c[m>>2]|0)+32>>2]|0)+(c[n>>2]<<2)>>2]=3640;d=(c[o>>2]|0)+68|0;h=c[d>>2]|0;c[d>>2]=h+1;c[(c[p>>2]|0)+8>>2]=h;Qv(c[q>>2]|0,54,c[(c[p>>2]|0)+8>>2]|0,(c[r>>2]|0)+1|0)|0;ry(c[o>>2]|0,c[m>>2]|0);c[s>>2]=oy(c[q>>2]|0,105,c[(c[p>>2]|0)+4>>2]|0)|0;c[t>>2]=Wv(c[o>>2]|0)|0;Wy(c[o>>2]|0,c[m>>2]|0,c[(c[p>>2]|0)+4>>2]|0,c[t>>2]|0,0,0,0,0)|0;Qv(c[q>>2]|0,107,c[(c[p>>2]|0)+8>>2]|0,c[t>>2]|0)|0;gf(c[q>>2]|0,16);Qv(c[q>>2]|0,9,c[(c[p>>2]|0)+4>>2]|0,(c[s>>2]|0)+1|0)|0;gf(c[q>>2]|0,3);jw(c[q>>2]|0,c[s>>2]|0);Xv(c[o>>2]|0,c[t>>2]|0);jw(c[q>>2]|0,c[u>>2]|0);i=F;return}function GB(f,g,h,j,k,l){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;A=i;i=i+80|0;p=A;E=A+68|0;F=A+64|0;D=A+60|0;s=A+56|0;m=A+52|0;C=A+76|0;y=A+48|0;q=A+44|0;t=A+72|0;o=A+32|0;r=A+28|0;B=A+24|0;x=A+20|0;z=A+16|0;u=A+12|0;v=A+36|0;w=A+40|0;c[E>>2]=f;c[F>>2]=g;c[D>>2]=h;c[s>>2]=j;c[m>>2]=k;b[C>>1]=l;if((d[(c[E>>2]|0)+450>>0]|0|0)!=2){i=A;return}c[y>>2]=(c[F>>2]|0)+8+((d[(c[D>>2]|0)+36>>0]|0)*72|0);c[q>>2]=c[(c[E>>2]|0)+8>>2];c[t>>2]=c[c[E>>2]>>2];c[r>>2]=c[(c[E>>2]|0)+464>>2];c[x>>2]=c[(c[D>>2]|0)+56>>2];c[z>>2]=c[(c[x>>2]|0)+36>>2];if((c[z>>2]&8192|0)!=0){i=A;return}if((b[C>>1]&64|0)!=0){i=A;return}do{if((c[z>>2]&48|0)!=0){h=1}else{if((c[z>>2]&1024|0)==0){if((e[(c[x>>2]|0)+24>>1]|0|0)>0){h=1;break}}h=(b[C>>1]&3|0)!=0}}while(0);c[B>>2]=h&1;h=c[t>>2]|0;c[p>>2]=(c[B>>2]|0)!=0?30032:30040;c[o>>2]=cf(h,1768,p)|0;h=c[t>>2]|0;B=c[o>>2]|0;C=c[o>>2]|0;D=c[y>>2]|0;if((c[(c[y>>2]|0)+20>>2]|0)!=0){f=d[D+38>>0]|0;c[p>>2]=C;c[p+4>>2]=f;c[o>>2]=Sy(h,B,30048,p)|0}else{f=c[D+8>>2]|0;c[p>>2]=C;c[p+4>>2]=f;c[o>>2]=Sy(h,B,30064,p)|0}if((c[(c[y>>2]|0)+12>>2]|0)!=0){g=c[t>>2]|0;f=c[o>>2]|0;F=c[(c[y>>2]|0)+12>>2]|0;c[p>>2]=c[o>>2];c[p+4>>2]=F;c[o>>2]=Sy(g,f,30080,p)|0}if((c[z>>2]&1280|0)==0){if((c[(c[x>>2]|0)+28>>2]|0)!=0){c[v>>2]=c[(c[x>>2]|0)+28>>2];c[w>>2]=RB(c[t>>2]|0,c[x>>2]|0,c[(c[y>>2]|0)+16>>2]|0)|0;if((a[(c[(c[y>>2]|0)+16>>2]|0)+44>>0]&32|0)==0){n=18}else{if((a[(c[v>>2]|0)+55>>0]&3|0)==2){c[u>>2]=(c[w>>2]|0)!=0?30096:30128}else{n=18}}do{if((n|0)==18){if((c[z>>2]&16384|0)!=0){c[u>>2]=30144;break}if((c[z>>2]&64|0)!=0){c[u>>2]=30184;break}else{c[u>>2]=30216;break}}}while(0);F=c[t>>2]|0;g=c[o>>2]|0;f=c[u>>2]|0;k=c[c[v>>2]>>2]|0;j=c[w>>2]|0;c[p>>2]=c[o>>2];c[p+4>>2]=k;c[p+8>>2]=j;c[o>>2]=Sy(F,g,f,p)|0;cc(c[t>>2]|0,c[w>>2]|0)}else{n=24}}else{n=24}do{if((n|0)==24){if((c[z>>2]&256|0)!=0){if((c[z>>2]&15|0)!=0){g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Sy(g,f,30240,p)|0;if((c[z>>2]&5|0)!=0){g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Sy(g,f,30272,p)|0;break}if((c[z>>2]&48|0)==48){g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Sy(g,f,30288,p)|0;break}if((c[z>>2]&32|0)!=0){g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Sy(g,f,30320,p)|0;break}if((c[z>>2]&16|0)==0){break}g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Sy(g,f,30336,p)|0;break}}if((c[z>>2]&1024|0)!=0){g=c[t>>2]|0;f=c[o>>2]|0;j=c[(c[x>>2]|0)+24>>2]|0;F=c[(c[x>>2]|0)+32>>2]|0;c[p>>2]=c[o>>2];c[p+4>>2]=j;c[p+8>>2]=F;c[o>>2]=Sy(g,f,30352,p)|0}}}while(0);g=c[t>>2]|0;f=c[o>>2]|0;c[p>>2]=c[o>>2];c[o>>2]=Sy(g,f,1768,p)|0;Sv(c[q>>2]|0,157,c[r>>2]|0,c[s>>2]|0,c[m>>2]|0,c[o>>2]|0,-1)|0;i=A;return}function HB(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var 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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0;q=i;i=i+368|0;p=q+8|0;y=q+276|0;P=q+272|0;v=q;o=q+268|0;B=q+264|0;w=q+260|0;wa=q+256|0;za=q+252|0;C=q+248|0;t=q+244|0;E=q+240|0;m=q+216|0;n=q+204|0;s=q+208|0;r=q+212|0;A=q+220|0;Da=q+224|0;Ia=q+228|0;x=q+232|0;xa=q+236|0;Va=q+284|0;Wa=q+288|0;Ga=q+292|0;Ea=q+296|0;Fa=q+300|0;Ha=q+304|0;Na=q+308|0;Oa=q+312|0;Ra=q+316|0;Ma=q+320|0;Pa=q+324|0;Sa=q+328|0;Ua=q+332|0;Ta=q+336|0;Qa=q+340|0;ma=q+348|0;na=q+344|0;va=q+200|0;la=q+196|0;sa=q+192|0;Aa=q+188|0;ta=q+92|0;Ca=q+96|0;pa=q+48|0;ga=q+280|0;Ka=q+84|0;Ba=q+80|0;oa=q+76|0;ka=q+352|0;qa=q+351|0;ja=q+350|0;La=q+72|0;Ja=q+353|0;ra=q+68|0;ua=q+64|0;ya=q+60|0;V=q+100|0;ea=q+32|0;U=q+28|0;S=q+16|0;ca=q+20|0;aa=q+24|0;_=q+52|0;R=q+36|0;ba=q+40|0;Q=q+44|0;Y=q+56|0;X=q+184|0;F=q+104|0;fa=q+108|0;ha=q+112|0;$=q+116|0;Z=q+120|0;W=q+124|0;T=q+128|0;O=q+132|0;L=q+136|0;M=q+140|0;N=q+144|0;K=q+148|0;J=q+152|0;ia=q+156|0;H=q+160|0;G=q+164|0;da=q+168|0;z=q+172|0;u=q+176|0;k=q+180|0;l=q+88|0;c[y>>2]=f;c[P>>2]=g;g=v;c[g>>2]=h;c[g+4>>2]=j;c[xa>>2]=0;c[Va>>2]=0;c[s>>2]=c[c[y>>2]>>2];c[A>>2]=c[(c[s>>2]|0)+8>>2];c[m>>2]=(c[y>>2]|0)+328;c[r>>2]=c[c[s>>2]>>2];c[t>>2]=(c[y>>2]|0)+736+((c[P>>2]|0)*72|0);c[E>>2]=c[(c[t>>2]|0)+56>>2];c[Da>>2]=(c[(c[y>>2]|0)+4>>2]|0)+8+((d[(c[t>>2]|0)+36>>0]|0)*72|0);c[w>>2]=c[(c[Da>>2]|0)+40>>2];g=v;j=c[g>>2]|0;g=c[g+4>>2]|0;h=EB((c[y>>2]|0)+68|0,c[w>>2]|0)|0;f=(c[t>>2]|0)+64|0;c[f>>2]=j&~h;c[f+4>>2]=g&~D;f=(c[y>>2]|0)+24|0;f=eL(c[f>>2]|0,c[f+4>>2]|0,c[P>>2]|0)|0;c[C>>2]=f&1;if((c[(c[E>>2]|0)+36>>2]&64|0)!=0){j=(b[(c[y>>2]|0)+34>>1]&32|0)==0}else{j=0}c[za>>2]=j&1;f=cz(c[A>>2]|0)|0;c[(c[t>>2]|0)+16>>2]=f;c[(c[t>>2]|0)+12>>2]=f;c[Ia>>2]=f;f=cz(c[A>>2]|0)|0;c[(c[t>>2]|0)+24>>2]=f;c[x>>2]=f;if((d[(c[t>>2]|0)+36>>0]|0)>0){if((a[(c[Da>>2]|0)+36>>0]&8|0)!=0){g=(c[s>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[c[t>>2]>>2]=f;Qv(c[A>>2]|0,25,0,c[c[t>>2]>>2]|0)|0}}do{if(((d[(c[Da>>2]|0)+37>>0]|0)>>>2&1|0)!=0){c[Wa>>2]=c[(c[Da>>2]|0)+28>>2];Tv(c[A>>2]|0,20,c[Wa>>2]|0,0,c[(c[Da>>2]|0)+24>>2]|0)|0;f=Qv(c[A>>2]|0,22,c[Wa>>2]|0,c[Ia>>2]|0)|0;c[(c[t>>2]|0)+44>>2]=f;a[(c[t>>2]|0)+37>>0]=16}else{Wa=c[E>>2]|0;if((c[(c[E>>2]|0)+36>>2]&1024|0)!=0){c[Fa>>2]=e[Wa+40>>1]|0;dz(c[s>>2]|0);c[Ga>>2]=fz(c[s>>2]|0,(c[Fa>>2]|0)+2|0)|0;c[Ea>>2]=c[(c[t>>2]|0)+12>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[Fa>>2]|0)){break}c[Ha>>2]=(c[Ga>>2]|0)+(c[o>>2]|0)+2;c[n>>2]=c[(c[(c[E>>2]|0)+44>>2]|0)+(c[o>>2]<<2)>>2];do{if((c[n>>2]|0)!=0){B=c[s>>2]|0;F=c[n>>2]|0;if((b[(c[n>>2]|0)+18>>1]&1|0)!=0){IB(B,F,c[t>>2]|0,c[o>>2]|0,c[C>>2]|0,c[Ha>>2]|0)|0;c[Ea>>2]=c[(c[t>>2]|0)+16>>2];break}else{vz(B,c[(c[F>>2]|0)+16>>2]|0,c[Ha>>2]|0);break}}}while(0);c[o>>2]=(c[o>>2]|0)+1}Qv(c[A>>2]|0,25,c[(c[E>>2]|0)+24>>2]|0,c[Ga>>2]|0)|0;Qv(c[A>>2]|0,25,c[Fa>>2]|0,(c[Ga>>2]|0)+1|0)|0;Sv(c[A>>2]|0,14,c[w>>2]|0,c[Ea>>2]|0,c[Ga>>2]|0,c[(c[E>>2]|0)+32>>2]|0,(d[(c[E>>2]|0)+28>>0]|0)!=0?-11:-2)|0;a[(c[E>>2]|0)+28>>0]=0;c[o>>2]=0;while(1){if(!((c[o>>2]|0)<16?(c[o>>2]|0)<(c[Fa>>2]|0):0)){break}if((e[(c[E>>2]|0)+30>>1]>>c[o>>2]&1|0)!=0){JB(c[t>>2]|0,c[(c[(c[E>>2]|0)+44>>2]|0)+(c[o>>2]<<2)>>2]|0)}c[o>>2]=(c[o>>2]|0)+1}a[(c[t>>2]|0)+37>>0]=-105;c[(c[t>>2]|0)+40>>2]=c[w>>2];f=sy(c[A>>2]|0)|0;c[(c[t>>2]|0)+44>>2]=f;iz(c[s>>2]|0,c[Ga>>2]|0,(c[Fa>>2]|0)+2|0);az(c[s>>2]|0);break}if((c[Wa+36>>2]&256|0)!=0){if((c[(c[E>>2]|0)+36>>2]&5|0)!=0){c[n>>2]=c[c[(c[E>>2]|0)+44>>2]>>2];g=(c[s>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[Va>>2]=f;c[xa>>2]=IB(c[s>>2]|0,c[n>>2]|0,c[t>>2]|0,0,c[C>>2]|0,c[Va>>2]|0)|0;if((c[xa>>2]|0)!=(c[Va>>2]|0)){Xv(c[s>>2]|0,c[Va>>2]|0)}c[wa>>2]=c[(c[t>>2]|0)+16>>2];Qv(c[A>>2]|0,38,c[xa>>2]|0,c[wa>>2]|0)|0;Tv(c[A>>2]|0,67,c[w>>2]|0,c[wa>>2]|0,c[xa>>2]|0)|0;Az(c[s>>2]|0,c[xa>>2]|0,1);Qz(c[s>>2]|0,c[w>>2]|0,-1,c[xa>>2]|0);a[(c[t>>2]|0)+37>>0]=-100;break}}if((c[(c[E>>2]|0)+36>>2]&256|0)!=0){if((c[(c[E>>2]|0)+36>>2]&2|0)!=0){c[Na>>2]=156;c[Ra>>2]=0;c[o>>2]=0;c[Pa>>2]=0;c[Ma>>2]=0;if((c[(c[E>>2]|0)+36>>2]&32|0)!=0){f=c[o>>2]|0;c[o>>2]=f+1;c[Ma>>2]=c[(c[(c[E>>2]|0)+44>>2]|0)+(f<<2)>>2]}if((c[(c[E>>2]|0)+36>>2]&16|0)!=0){f=c[o>>2]|0;c[o>>2]=f+1;c[Pa>>2]=c[(c[(c[E>>2]|0)+44>>2]|0)+(f<<2)>>2]}if((c[C>>2]|0)!=0){c[n>>2]=c[Ma>>2];c[Ma>>2]=c[Pa>>2];c[Pa>>2]=c[n>>2]}if((c[Ma>>2]|0)!=0){c[Sa>>2]=c[c[Ma>>2]>>2];c[Ua>>2]=oz(c[s>>2]|0,c[(c[Sa>>2]|0)+16>>2]|0,Ta)|0;Tv(c[A>>2]|0,d[29992+((d[c[Sa>>2]>>0]|0)-80)>>0]|0,c[w>>2]|0,c[Ia>>2]|0,c[Ua>>2]|0)|0;Az(c[s>>2]|0,c[Ua>>2]|0,1);Xv(c[s>>2]|0,c[Ta>>2]|0);JB(c[t>>2]|0,c[Ma>>2]|0)}else{Qv(c[A>>2]|0,(c[C>>2]|0)!=0?102:105,c[w>>2]|0,c[Ia>>2]|0)|0}if((c[Pa>>2]|0)!=0){c[Qa>>2]=c[c[Pa>>2]>>2];g=(c[s>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[Ra>>2]=f;vz(c[s>>2]|0,c[(c[Qa>>2]|0)+16>>2]|0,c[Ra>>2]|0);if((d[c[Qa>>2]>>0]|0)==82){I=41}else{if((d[c[Qa>>2]>>0]|0)==80){I=41}else{c[Na>>2]=(c[C>>2]|0)!=0?82:80}}if((I|0)==41){c[Na>>2]=(c[C>>2]|0)!=0?81:83}JB(c[t>>2]|0,c[Pa>>2]|0)}c[Oa>>2]=sy(c[A>>2]|0)|0;a[(c[t>>2]|0)+37>>0]=(c[C>>2]|0)!=0?8:9;c[(c[t>>2]|0)+40>>2]=c[w>>2];c[(c[t>>2]|0)+44>>2]=c[Oa>>2];if((c[Na>>2]|0)==156){break}g=(c[s>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[xa>>2]=f;Qv(c[A>>2]|0,100,c[w>>2]|0,c[xa>>2]|0)|0;Qz(c[s>>2]|0,c[w>>2]|0,-1,c[xa>>2]|0);Tv(c[A>>2]|0,c[Na>>2]|0,c[Ra>>2]|0,c[Ia>>2]|0,c[xa>>2]|0)|0;gf(c[A>>2]|0,107);break}}Ea=c[E>>2]|0;if((c[(c[E>>2]|0)+36>>2]&512|0)!=0){b[ma>>1]=b[Ea+24>>1]|0;c[va>>2]=0;c[la>>2]=0;c[Ka>>2]=0;a[ka>>0]=0;a[qa>>0]=0;a[ja>>0]=0;c[pa>>2]=c[(c[E>>2]|0)+28>>2];c[ga>>2]=c[(c[t>>2]|0)+8>>2];if((b[(c[y>>2]|0)+34>>1]&1|0)!=0){if((a[(c[y>>2]|0)+36>>0]|0)>0){if((e[(c[pa>>2]|0)+50>>1]|0)>(e[ma>>1]|0)){a[qa>>0]=1;c[Ka>>2]=1}}}c[o>>2]=e[ma>>1]|0;if((c[(c[E>>2]|0)+36>>2]&32|0)!=0){f=c[o>>2]|0;c[o>>2]=f+1;c[va>>2]=c[(c[(c[E>>2]|0)+44>>2]|0)+(f<<2)>>2];c[Ka>>2]=1}if((c[(c[E>>2]|0)+36>>2]&16|0)!=0){f=c[o>>2]|0;c[o>>2]=f+1;c[la>>2]=c[(c[(c[E>>2]|0)+44>>2]|0)+(f<<2)>>2];c[Ka>>2]=1;if((c[va>>2]|0)==0){f=b[(c[(c[pa>>2]|0)+4>>2]|0)+(e[ma>>1]<<1)>>1]|0;c[o>>2]=f;if((f|0)>=0){if((d[(c[(c[(c[pa>>2]|0)+12>>2]|0)+4>>2]|0)+((c[o>>2]|0)*24|0)+20>>0]|0)==0){a[qa>>0]=1}}}}c[na>>2]=KB(c[s>>2]|0,c[t>>2]|0,c[C>>2]|0,c[Ka>>2]|0,oa)|0;if((c[oa>>2]|0)!=0){a[ka>>0]=a[(c[oa>>2]|0)+(e[ma>>1]|0)>>0]|0}c[wa>>2]=c[(c[t>>2]|0)+16>>2];if((e[ma>>1]|0)<(e[(c[pa>>2]|0)+50>>1]|0)){if((c[C>>2]|0)==((d[(c[(c[pa>>2]|0)+28>>2]|0)+(e[ma>>1]|0)>>0]|0)==0|0)){I=64}else{I=62}}else{I=62}if((I|0)==62){if((c[C>>2]|0)!=0){if((e[(c[pa>>2]|0)+50>>1]|0)==(e[ma>>1]|0)){I=64}}}if((I|0)==64){c[La>>2]=c[la>>2];c[la>>2]=c[va>>2];c[va>>2]=c[La>>2];a[Ja>>0]=a[qa>>0]|0;a[qa>>0]=a[ja>>0]|0;a[ja>>0]=a[Ja>>0]|0}if((c[va>>2]|0)!=0){F=(b[(c[va>>2]|0)+18>>1]&40|0)!=0}else{F=1}c[sa>>2]=F&1;if((c[la>>2]|0)!=0){F=(b[(c[la>>2]|0)+18>>1]&40|0)!=0}else{F=1}c[Aa>>2]=F&1;if((c[va>>2]|0)!=0){F=1}else{F=(e[ma>>1]|0)>0}c[ta>>2]=F&1;c[Ca>>2]=e[ma>>1]|0;if((c[va>>2]|0)!=0){c[ra>>2]=c[(c[c[va>>2]>>2]|0)+16>>2];vz(c[s>>2]|0,c[ra>>2]|0,(c[na>>2]|0)+(e[ma>>1]|0)|0);do{if((a[(c[va>>2]|0)+20>>0]&0|0)==0){if((LB(c[ra>>2]|0)|0)==0){break}Qv(c[A>>2]|0,76,(c[na>>2]|0)+(e[ma>>1]|0)|0,c[wa>>2]|0)|0}}while(0);do{if((c[oa>>2]|0)!=0){if(((Rz(c[ra>>2]|0,a[(c[oa>>2]|0)+(e[ma>>1]|0)>>0]|0)|0)<<24>>24|0)==98){a[(c[oa>>2]|0)+(e[ma>>1]|0)>>0]=98}if((MB(c[ra>>2]|0,a[(c[oa>>2]|0)+(e[ma>>1]|0)>>0]|0)|0)==0){break}a[(c[oa>>2]|0)+(e[ma>>1]|0)>>0]=98}}while(0);c[Ca>>2]=(c[Ca>>2]|0)+1}else{if((a[qa>>0]|0)!=0){Qv(c[A>>2]|0,28,0,(c[na>>2]|0)+(e[ma>>1]|0)|0)|0;c[Ca>>2]=(c[Ca>>2]|0)+1;c[sa>>2]=0;c[ta>>2]=1}}NB(c[s>>2]|0,c[na>>2]|0,(c[Ca>>2]|0)-(d[qa>>0]|0)|0,c[oa>>2]|0);c[Ba>>2]=d[3e4+((c[ta>>2]<<2)+(c[sa>>2]<<1)+(c[C>>2]|0))>>0]|0;ff(c[A>>2]|0,c[Ba>>2]|0,c[ga>>2]|0,c[wa>>2]|0,c[na>>2]|0,c[Ca>>2]|0)|0;c[Ca>>2]=e[ma>>1]|0;do{if((c[la>>2]|0)!=0){c[ua>>2]=c[(c[c[la>>2]>>2]|0)+16>>2];jz(c[s>>2]|0,(c[na>>2]|0)+(e[ma>>1]|0)|0,1);vz(c[s>>2]|0,c[ua>>2]|0,(c[na>>2]|0)+(e[ma>>1]|0)|0);do{if((a[(c[la>>2]|0)+20>>0]&0|0)==0){if((LB(c[ua>>2]|0)|0)==0){break}Qv(c[A>>2]|0,76,(c[na>>2]|0)+(e[ma>>1]|0)|0,c[wa>>2]|0)|0}}while(0);do{if(((Rz(c[ua>>2]|0,a[ka>>0]|0)|0)<<24>>24|0)!=98){if((MB(c[ua>>2]|0,a[ka>>0]|0)|0)!=0){break}NB(c[s>>2]|0,(c[na>>2]|0)+(e[ma>>1]|0)|0,1,ka)}}while(0);c[Ca>>2]=(c[Ca>>2]|0)+1}else{if((a[ja>>0]|0)==0){break}Qv(c[A>>2]|0,28,0,(c[na>>2]|0)+(e[ma>>1]|0)|0)|0;c[Aa>>2]=0;c[Ca>>2]=(c[Ca>>2]|0)+1}}while(0);cc(c[r>>2]|0,c[oa>>2]|0);f=sy(c[A>>2]|0)|0;c[(c[t>>2]|0)+44>>2]=f;if((c[Ca>>2]|0)!=0){c[Ba>>2]=d[30008+((c[C>>2]<<1)+(c[Aa>>2]|0))>>0]|0;ff(c[A>>2]|0,c[Ba>>2]|0,c[ga>>2]|0,c[wa>>2]|0,c[na>>2]|0,c[Ca>>2]|0)|0}JB(c[t>>2]|0,c[va>>2]|0);JB(c[t>>2]|0,c[la>>2]|0);do{if((c[za>>2]|0)==0){if((a[(c[(c[pa>>2]|0)+12>>2]|0)+44>>0]&32|0)==0){g=(c[s>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[xa>>2]=f;Qv(c[A>>2]|0,109,c[ga>>2]|0,c[xa>>2]|0)|0;Qz(c[s>>2]|0,c[w>>2]|0,-1,c[xa>>2]|0);Qv(c[A>>2]|0,63,c[w>>2]|0,c[xa>>2]|0)|0;break}if((c[w>>2]|0)==(c[ga>>2]|0)){break}c[ya>>2]=Dy(c[(c[pa>>2]|0)+12>>2]|0)|0;c[xa>>2]=fz(c[s>>2]|0,e[(c[ya>>2]|0)+50>>1]|0)|0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(e[(c[ya>>2]|0)+50>>1]|0)){break}c[B>>2]=(kz(c[pa>>2]|0,b[(c[(c[ya>>2]|0)+4>>2]|0)+(c[o>>2]<<1)>>1]|0)|0)<<16>>16;Tv(c[A>>2]|0,46,c[ga>>2]|0,c[B>>2]|0,(c[xa>>2]|0)+(c[o>>2]|0)|0)|0;c[o>>2]=(c[o>>2]|0)+1}ff(c[A>>2]|0,65,c[w>>2]|0,c[x>>2]|0,c[xa>>2]|0,e[(c[ya>>2]|0)+50>>1]|0)|0}}while(0);do{if((c[(c[E>>2]|0)+36>>2]&4096|0)!=0){a[(c[t>>2]|0)+37>>0]=-100}else{B=(c[t>>2]|0)+37|0;if((c[C>>2]|0)!=0){a[B>>0]=8;break}else{a[B>>0]=9;break}}}while(0);c[(c[t>>2]|0)+40>>2]=c[ga>>2];a[(c[t>>2]|0)+38>>0]=(c[(c[E>>2]|0)+36>>2]&65536|0)!=0?1:0;if((c[(c[E>>2]|0)+36>>2]&15|0)!=0){break}a[(c[t>>2]|0)+39>>0]=1;break}if((c[Ea+36>>2]&8192|0)==0){if(((d[(c[Da>>2]|0)+37>>0]|0)>>>3&1|0)!=0){a[(c[t>>2]|0)+37>>0]=-100;break}else{a[(c[t>>2]|0)+37>>0]=a[30016+(c[C>>2]|0)>>0]|0;c[(c[t>>2]|0)+40>>2]=c[w>>2];f=1+(Qv(c[A>>2]|0,d[30024+(c[C>>2]|0)>>0]|0,c[w>>2]|0,c[Ia>>2]|0)|0)|0;c[(c[t>>2]|0)+44>>2]=f;a[(c[t>>2]|0)+39>>0]=1;break}}c[U>>2]=0;C=(c[s>>2]|0)+68|0;f=c[C>>2]|0;c[C>>2]=f+1;c[S>>2]=f;f=(c[s>>2]|0)+72|0;C=(c[f>>2]|0)+1|0;c[f>>2]=C;c[ca>>2]=C;c[aa>>2]=0;c[_>>2]=0;c[R>>2]=cz(c[A>>2]|0)|0;c[Q>>2]=0;c[X>>2]=0;c[F>>2]=c[(c[Da>>2]|0)+16>>2];c[n>>2]=c[c[(c[E>>2]|0)+44>>2]>>2];c[V>>2]=c[(c[n>>2]|0)+12>>2];a[(c[t>>2]|0)+37>>0]=18;c[(c[t>>2]|0)+40>>2]=c[ca>>2];C=c[y>>2]|0;a:do{if((d[(c[y>>2]|0)+41>>0]|0)>1){c[fa>>2]=(d[C+41>>0]|0)-(c[P>>2]|0)-1;c[ea>>2]=$e(c[r>>2]|0,80+((c[fa>>2]|0)*72|0)|0)|0;if((c[ea>>2]|0)==0){h=v;f=c[h+4>>2]|0;g=p;c[g>>2]=c[h>>2];c[g+4>>2]=f;g=p;f=g;f=c[f>>2]|0;g=g+4|0;g=c[g>>2]|0;D=g;i=q;return f|0}c[(c[ea>>2]|0)+4>>2]=(c[fa>>2]|0)+1&255;c[c[ea>>2]>>2]=c[(c[ea>>2]|0)+4>>2];C=(c[ea>>2]|0)+8|0;ga=(c[Da>>2]|0)+0|0;E=C+72|0;do{c[C>>2]=c[ga>>2];C=C+4|0;ga=ga+4|0}while((C|0)<(E|0));c[ha>>2]=(c[(c[y>>2]|0)+4>>2]|0)+8;c[B>>2]=1;while(1){if((c[B>>2]|0)>(c[fa>>2]|0)){break a}C=(c[ea>>2]|0)+8+((c[B>>2]|0)*72|0)+0|0;ga=(c[ha>>2]|0)+((d[(c[t>>2]|0)+((c[B>>2]|0)*72|0)+36>>0]|0)*72|0)+0|0;E=C+72|0;do{c[C>>2]=c[ga>>2];C=C+4|0;ga=ga+4|0}while((C|0)<(E|0));c[B>>2]=(c[B>>2]|0)+1}}else{c[ea>>2]=c[C+4>>2]}}while(0);if((b[(c[y>>2]|0)+34>>1]&8|0)==0){if((a[(c[F>>2]|0)+44>>0]&32|0)==0){g=(c[s>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[aa>>2]=f;Qv(c[A>>2]|0,28,0,c[aa>>2]|0)|0}else{c[$>>2]=Dy(c[F>>2]|0)|0;g=(c[s>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[aa>>2]=f;Qv(c[A>>2]|0,55,c[aa>>2]|0,e[(c[$>>2]|0)+50>>1]|0)|0;ry(c[s>>2]|0,c[$>>2]|0)}g=(c[s>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[_>>2]=f}c[ba>>2]=Qv(c[A>>2]|0,25,0,c[ca>>2]|0)|0;if((c[(c[m>>2]|0)+12>>2]|0)>1){c[Z>>2]=0;while(1){if((c[Z>>2]|0)>=(c[(c[m>>2]|0)+12>>2]|0)){break}c[W>>2]=c[(c[(c[m>>2]|0)+20>>2]|0)+((c[Z>>2]|0)*48|0)>>2];if(((c[(c[m>>2]|0)+20>>2]|0)+((c[Z>>2]|0)*48|0)|0)!=(c[n>>2]|0)){if((c[(c[W>>2]|0)+4>>2]&1|0)==0){if((a[(c[(c[m>>2]|0)+20>>2]|0)+((c[Z>>2]|0)*48|0)+20>>0]&18|0)==0){if((b[(c[(c[m>>2]|0)+20>>2]|0)+((c[Z>>2]|0)*48|0)+18>>1]&4095|0)!=0){c[W>>2]=hx(c[r>>2]|0,c[W>>2]|0,0)|0;c[X>>2]=Ux(c[r>>2]|0,c[X>>2]|0,c[W>>2]|0)|0}}}}c[Z>>2]=(c[Z>>2]|0)+1}if((c[X>>2]|0)!=0){c[X>>2]=Bu(c[s>>2]|0,72,0,c[X>>2]|0,0)|0}}c[Y>>2]=0;while(1){if((c[Y>>2]|0)>=(c[(c[V>>2]|0)+12>>2]|0)){break}c[T>>2]=(c[(c[V>>2]|0)+20>>2]|0)+((c[Y>>2]|0)*48|0);if((c[(c[T>>2]|0)+8>>2]|0)==(c[w>>2]|0)){I=138}else{if((b[(c[T>>2]|0)+18>>1]&512|0)!=0){I=138}}if((I|0)==138){I=0;c[L>>2]=c[c[T>>2]>>2];c[M>>2]=0;if((c[X>>2]|0)!=0){if((c[(c[L>>2]|0)+4>>2]&1|0)==0){c[(c[X>>2]|0)+12>>2]=c[L>>2];c[L>>2]=c[X>>2]}}c[O>>2]=lB(c[s>>2]|0,c[ea>>2]|0,c[L>>2]|0,0,0,240,c[S>>2]|0)|0;if((c[O>>2]|0)!=0){GB(c[s>>2]|0,c[ea>>2]|0,(c[O>>2]|0)+736|0,c[P>>2]|0,d[(c[t>>2]|0)+36>>0]|0,0);do{if((b[(c[y>>2]|0)+34>>1]&8|0)==0){c[J>>2]=(c[Y>>2]|0)==((c[(c[V>>2]|0)+12>>2]|0)-1|0)?-1:c[Y>>2]|0;if((a[(c[F>>2]|0)+44>>0]&32|0)==0){c[K>>2]=xz(c[s>>2]|0,c[F>>2]|0,-1,c[w>>2]|0,c[_>>2]|0,0)|0;c[M>>2]=ff(c[A>>2]|0,127,c[aa>>2]|0,0,c[K>>2]|0,c[J>>2]|0)|0;break}c[ia>>2]=Dy(c[F>>2]|0)|0;c[H>>2]=e[(c[ia>>2]|0)+50>>1]|0;c[K>>2]=fz(c[s>>2]|0,c[H>>2]|0)|0;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[H>>2]|0)){break}c[da>>2]=b[(c[(c[ia>>2]|0)+4>>2]|0)+(c[G>>2]<<1)>>1]|0;xz(c[s>>2]|0,c[F>>2]|0,c[da>>2]|0,c[w>>2]|0,(c[K>>2]|0)+(c[G>>2]|0)|0,0)|0;c[G>>2]=(c[G>>2]|0)+1}if((c[J>>2]|0)!=0){c[M>>2]=ff(c[A>>2]|0,66,c[aa>>2]|0,0,c[K>>2]|0,c[H>>2]|0)|0}do{if((c[J>>2]|0)>=0){Tv(c[A>>2]|0,48,c[K>>2]|0,c[H>>2]|0,c[_>>2]|0)|0;Tv(c[A>>2]|0,107,c[aa>>2]|0,c[_>>2]|0,0)|0;if((c[J>>2]|0)==0){break}gf(c[A>>2]|0,16)}}while(0);iz(c[s>>2]|0,c[K>>2]|0,c[H>>2]|0)}}while(0);Qv(c[A>>2]|0,17,c[ca>>2]|0,c[R>>2]|0)|0;if((c[M>>2]|0)!=0){jw(c[A>>2]|0,c[M>>2]|0)}if((a[(c[O>>2]|0)+39>>0]|0)!=0){c[Q>>2]=1}c[N>>2]=c[(c[O>>2]|0)+792>>2];do{if((c[(c[N>>2]|0)+36>>2]&512|0)!=0){if((c[Y>>2]|0)!=0){if((c[(c[N>>2]|0)+28>>2]|0)!=(c[U>>2]|0)){I=164;break}}if((a[(c[F>>2]|0)+44>>0]&32|0)!=0){if((a[(c[(c[N>>2]|0)+28>>2]|0)+55>>0]&3|0)==2){I=164;break}}c[U>>2]=c[(c[N>>2]|0)+28>>2]}else{I=164}}while(0);if((I|0)==164){I=0;c[U>>2]=0}mB(c[O>>2]|0)}}c[Y>>2]=(c[Y>>2]|0)+1}c[(c[t>>2]|0)+48>>2]=c[U>>2];if((c[U>>2]|0)!=0){c[(c[t>>2]|0)+8>>2]=c[S>>2]}if((c[X>>2]|0)!=0){c[(c[X>>2]|0)+12>>2]=0;gu(c[r>>2]|0,c[X>>2]|0)}g=c[A>>2]|0;f=c[ba>>2]|0;kf(g,f,sy(c[A>>2]|0)|0);Qv(c[A>>2]|0,16,0,c[(c[t>>2]|0)+12>>2]|0)|0;$y(c[A>>2]|0,c[R>>2]|0);if((d[(c[y>>2]|0)+41>>0]|0)>1){cc(c[r>>2]|0,c[ea>>2]|0)}if((c[Q>>2]|0)==0){JB(c[t>>2]|0,c[n>>2]|0)}}}while(0);c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>>2]=c[(c[m>>2]|0)+12>>2];while(1){if((c[o>>2]|0)<=0){break}do{if((a[(c[n>>2]|0)+20>>0]&6|0)==0){g=(c[n>>2]|0)+40|0;f=(c[t>>2]|0)+64|0;if((c[g>>2]&c[f>>2]|0)!=0?1:(c[g+4>>2]&c[f+4>>2]|0)!=0){a[(c[y>>2]|0)+39>>0]=1;break}c[z>>2]=c[c[n>>2]>>2];if((c[c[t>>2]>>2]|0)!=0){if((c[(c[z>>2]|0)+4>>2]&1|0)==0){break}}ez(c[s>>2]|0,c[z>>2]|0,c[x>>2]|0,8);f=(c[n>>2]|0)+20|0;a[f>>0]=d[f>>0]|4}}while(0);c[o>>2]=(c[o>>2]|0)+ -1;c[n>>2]=(c[n>>2]|0)+48}c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>>2]=c[(c[m>>2]|0)+12>>2];while(1){if((c[o>>2]|0)<=0){break}if((a[(c[n>>2]|0)+20>>0]&6|0)==0){if((e[(c[n>>2]|0)+18>>1]|0)==1026){if((c[(c[n>>2]|0)+8>>2]|0)==(c[w>>2]|0)){if((c[c[t>>2]>>2]|0)==0){c[u>>2]=c[c[n>>2]>>2];f=v;c[l>>2]=OB(c[m>>2]|0,c[w>>2]|0,c[(c[n>>2]|0)+12>>2]|0,c[f>>2]|0,c[f+4>>2]|0,3,0)|0;if((c[l>>2]|0)!=0){if((a[(c[l>>2]|0)+20>>0]&4|0)==0){c[k>>2]=$e(c[r>>2]|0,48)|0;if((c[k>>2]|0)!=0){C=(c[k>>2]|0)+0|0;ga=(c[c[l>>2]>>2]|0)+0|0;E=C+48|0;do{c[C>>2]=c[ga>>2];C=C+4|0;ga=ga+4|0}while((C|0)<(E|0));c[(c[k>>2]|0)+12>>2]=c[(c[u>>2]|0)+12>>2];ez(c[s>>2]|0,c[k>>2]|0,c[x>>2]|0,8);cc(c[r>>2]|0,c[k>>2]|0)}}}}}}}c[o>>2]=(c[o>>2]|0)+ -1;c[n>>2]=(c[n>>2]|0)+48}b:do{if((c[c[t>>2]>>2]|0)!=0){f=sy(c[A>>2]|0)|0;c[(c[t>>2]|0)+28>>2]=f;Qv(c[A>>2]|0,25,1,c[c[t>>2]>>2]|0)|0;IA(c[s>>2]|0);c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[m>>2]|0)+12>>2]|0)){break b}if((a[(c[n>>2]|0)+20>>0]&6|0)==0){g=(c[n>>2]|0)+40|0;f=(c[t>>2]|0)+64|0;if(!((c[g>>2]&c[f>>2]|0)!=0?1:(c[g+4>>2]&c[f+4>>2]|0)!=0)){ez(c[s>>2]|0,c[c[n>>2]>>2]|0,c[x>>2]|0,8);f=(c[n>>2]|0)+20|0;a[f>>0]=d[f>>0]|4}}c[o>>2]=(c[o>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+48}}}while(0);h=(c[t>>2]|0)+64|0;f=c[h+4>>2]|0;g=p;c[g>>2]=c[h>>2];c[g+4>>2]=f;g=p;f=g;f=c[f>>2]|0;g=g+4|0;g=c[g>>2]|0;D=g;i=q;return f|0}function IB(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;q=i;i=i+64|0;w=q+48|0;m=q+44|0;n=q+40|0;x=q+36|0;p=q+32|0;t=q+28|0;u=q+24|0;o=q+16|0;l=q+12|0;k=q+8|0;s=q+4|0;r=q;v=q+20|0;c[w>>2]=b;c[m>>2]=e;c[n>>2]=f;c[x>>2]=g;c[p>>2]=h;c[t>>2]=j;c[u>>2]=c[c[m>>2]>>2];c[o>>2]=c[(c[w>>2]|0)+8>>2];if((d[c[u>>2]>>0]|0|0)==79){c[l>>2]=wz(c[w>>2]|0,c[(c[u>>2]|0)+16>>2]|0,c[t>>2]|0)|0;e=c[n>>2]|0;b=c[m>>2]|0;JB(e,b);b=c[l>>2]|0;i=q;return b|0}if((d[c[u>>2]>>0]|0|0)==76){c[l>>2]=c[t>>2];Qv(c[o>>2]|0,28,0,c[l>>2]|0)|0;e=c[n>>2]|0;b=c[m>>2]|0;JB(e,b);b=c[l>>2]|0;i=q;return b|0}c[v>>2]=c[(c[n>>2]|0)+56>>2];if((c[(c[v>>2]|0)+36>>2]&1024|0)==0){if((c[(c[v>>2]|0)+28>>2]|0)!=0){if((d[(c[(c[(c[v>>2]|0)+28>>2]|0)+28>>2]|0)+(c[x>>2]|0)>>0]|0|0)!=0){c[p>>2]=((c[p>>2]|0)!=0^1)&1}}}c[l>>2]=c[t>>2];c[k>>2]=tz(c[w>>2]|0,c[u>>2]|0,0)|0;if((c[k>>2]|0)==4){c[p>>2]=((c[p>>2]|0)!=0^1)&1}c[s>>2]=c[(c[u>>2]|0)+28>>2];Qv(c[o>>2]|0,(c[p>>2]|0)!=0?102:105,c[s>>2]|0,0)|0;b=(c[v>>2]|0)+36|0;c[b>>2]=c[b>>2]|2048;if((c[(c[n>>2]|0)+48>>2]|0)==0){b=cz(c[o>>2]|0)|0;c[(c[n>>2]|0)+16>>2]=b}t=(c[n>>2]|0)+48|0;c[t>>2]=(c[t>>2]|0)+1;t=Ey(c[c[w>>2]>>2]|0,c[(c[n>>2]|0)+52>>2]|0,(c[(c[n>>2]|0)+48>>2]|0)*12|0)|0;c[(c[n>>2]|0)+52>>2]=t;c[r>>2]=c[(c[n>>2]|0)+52>>2];t=(c[n>>2]|0)+48|0;if((c[r>>2]|0)==0){c[t>>2]=0;e=c[n>>2]|0;b=c[m>>2]|0;JB(e,b);b=c[l>>2]|0;i=q;return b|0}c[r>>2]=(c[r>>2]|0)+(((c[t>>2]|0)-1|0)*12|0);c[c[r>>2]>>2]=c[s>>2];t=c[o>>2]|0;u=c[s>>2]|0;s=c[l>>2]|0;if((c[k>>2]|0)==1){b=Qv(t,100,u,s)|0;c[(c[r>>2]|0)+4>>2]=b}else{b=Tv(t,46,u,0,s)|0;c[(c[r>>2]|0)+4>>2]=b}a[(c[r>>2]|0)+8>>0]=(c[p>>2]|0)!=0?6:7;oy(c[o>>2]|0,76,c[l>>2]|0)|0;e=c[n>>2]|0;b=c[m>>2]|0;JB(e,b);b=c[l>>2]|0;i=q;return b|0}function JB(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;h=f;j=f+4|0;c[g>>2]=b;c[h>>2]=e;if((c[h>>2]|0)==0){i=f;return}if((a[(c[h>>2]|0)+20>>0]&4|0)!=0){i=f;return}if((c[c[g>>2]>>2]|0)!=0){if((c[(c[c[h>>2]>>2]|0)+4>>2]&1|0)==0){i=f;return}}e=(c[g>>2]|0)+64|0;b=(c[h>>2]|0)+40|0;if(!((c[e>>2]&c[b>>2]|0)==0?(c[e+4>>2]&c[b+4>>2]|0)==0:0)){i=f;return}b=(c[h>>2]|0)+20|0;a[b>>0]=d[b>>0]|0|4;if((c[(c[h>>2]|0)+4>>2]|0)<0){i=f;return}c[j>>2]=(c[(c[(c[h>>2]|0)+24>>2]|0)+20>>2]|0)+((c[(c[h>>2]|0)+4>>2]|0)*48|0);h=(c[j>>2]|0)+21|0;b=(a[h>>0]|0)+ -1<<24>>24;a[h>>0]=b;if((b&255|0)!=0){i=f;return}JB(c[g>>2]|0,c[j>>2]|0);i=f;return} + + + +function Mr(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;d=e+16|0;h=e;f=e+4|0;g=e+8|0;j=e+12|0;c[d>>2]=b;Yb(c[d>>2]|0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[d>>2]|0)+20>>2]|0)){break}c[f>>2]=c[(c[(c[d>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2];a:do{if((c[(c[(c[d>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]|0)!=0){c[g>>2]=c[(c[f>>2]|0)+16>>2];while(1){if((c[g>>2]|0)==0){break a}c[j>>2]=c[(c[g>>2]|0)+8>>2];if((a[(c[j>>2]|0)+44>>0]&16|0)!=0){Nr(c[d>>2]|0,c[j>>2]|0)}c[g>>2]=c[c[g>>2]>>2]}}}while(0);c[h>>2]=(c[h>>2]|0)+1}Ar(c[d>>2]|0);i=e;return}function Nr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e+12|0;j=e;g=e+4|0;f=e+8|0;c[h>>2]=a;c[j>>2]=b;c[g>>2]=(c[j>>2]|0)+60;while(1){if((c[c[g>>2]>>2]|0)==0){d=6;break}b=c[c[g>>2]>>2]|0;if((c[c[c[g>>2]>>2]>>2]|0)==(c[h>>2]|0)){break}c[g>>2]=b+24}if((d|0)==6){i=e;return}c[f>>2]=b;c[c[g>>2]>>2]=c[(c[f>>2]|0)+24>>2];Cr(c[f>>2]|0);i=e;return}function Or(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[d>>2]|0)+40>>2]|0)==0){i=b;return}rb[c[45288>>2]&31](c[(c[d>>2]|0)+40>>2]|0);i=b;return}function Pr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;c[b>>2]=a;d=3456|0;a=d+68|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));if((c[45140>>2]|0)!=0){c[864]=8;c[3508>>2]=8}c[3468>>2]=10;c[3484>>2]=1;i=b;return 0}function Qr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;c[b>>2]=a;d=3456|0;a=d+68|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));i=b;return}function Rr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;h=e+24|0;j=e;k=e+4|0;f=e+8|0;g=e+12|0;l=e+16|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[e+20>>2]=0;c[l>>2]=48;c[f>>2]=Sc(c[l>>2]|0)|0;if((c[f>>2]|0)==0){l=c[f>>2]|0;i=e;return l|0}c[g>>2]=3456;c[c[f>>2]>>2]=c[g>>2];c[(c[f>>2]|0)+4>>2]=c[h>>2];c[(c[f>>2]|0)+8>>2]=c[j>>2];c[(c[f>>2]|0)+12>>2]=(c[k>>2]|0)!=0?1:0;if((c[k>>2]|0)==0){l=c[f>>2]|0;i=e;return l|0}c[(c[f>>2]|0)+16>>2]=10;l=(c[g>>2]|0)+8|0;c[l>>2]=(c[l>>2]|0)+(c[(c[f>>2]|0)+16>>2]|0);c[(c[g>>2]|0)+12>>2]=(c[(c[g>>2]|0)+4>>2]|0)+10-(c[(c[g>>2]|0)+8>>2]|0);l=c[f>>2]|0;i=e;return l|0}function Sr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;h=d+12|0;g=d;e=d+4|0;f=d+8|0;c[h>>2]=a;c[g>>2]=b;c[e>>2]=c[h>>2];if((c[(c[e>>2]|0)+12>>2]|0)==0){i=d;return}c[f>>2]=c[c[e>>2]>>2];h=(c[f>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+((c[g>>2]|0)-(c[(c[e>>2]|0)+20>>2]|0));c[(c[f>>2]|0)+12>>2]=(c[(c[f>>2]|0)+4>>2]|0)+10-(c[(c[f>>2]|0)+8>>2]|0);c[(c[e>>2]|0)+20>>2]=c[g>>2];c[(c[e>>2]|0)+24>>2]=(((c[(c[e>>2]|0)+20>>2]|0)*9|0)>>>0)/10|0;_r(c[f>>2]|0);i=d;return}function Tr(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;b=d;e=d+4|0;c[f>>2]=a;c[e>>2]=c[f>>2];c[b>>2]=c[(c[e>>2]|0)+36>>2];i=d;return c[b>>2]|0}function Ur(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+48|0;q=o+36|0;f=o+32|0;k=o+28|0;n=o+24|0;j=o+20|0;g=o+16|0;l=o+8|0;p=o+4|0;h=o;m=o+12|0;c[q>>2]=b;c[f>>2]=d;c[k>>2]=e;c[j>>2]=c[q>>2];c[l>>2]=0;a:do{if((c[(c[j>>2]|0)+40>>2]|0)>>>0>0){c[p>>2]=((c[f>>2]|0)>>>0)%((c[(c[j>>2]|0)+40>>2]|0)>>>0)|0;c[l>>2]=c[(c[(c[j>>2]|0)+44>>2]|0)+(c[p>>2]<<2)>>2];while(1){if((c[l>>2]|0)==0){break a}if((c[(c[l>>2]|0)+8>>2]|0)==(c[f>>2]|0)){break a}c[l>>2]=c[(c[l>>2]|0)+16>>2]}}}while(0);do{if((c[l>>2]|0)!=0){if((a[(c[l>>2]|0)+12>>0]|0)==0){$r(c[l>>2]|0)}}else{if((c[k>>2]|0)!=0){c[g>>2]=c[c[j>>2]>>2];c[n>>2]=(c[(c[j>>2]|0)+36>>2]|0)-(c[(c[j>>2]|0)+32>>2]|0);if((c[k>>2]|0)==1){if((c[n>>2]|0)>>>0>=(c[(c[g>>2]|0)+12>>2]|0)>>>0){break}if((c[n>>2]|0)>>>0>=(c[(c[j>>2]|0)+24>>2]|0)>>>0){break}if((ds(c[j>>2]|0)|0)!=0){break}}if((c[(c[j>>2]|0)+36>>2]|0)>>>0>=(c[(c[j>>2]|0)+40>>2]|0)>>>0){if((es(c[j>>2]|0)|0)!=0){break}}do{if((c[(c[j>>2]|0)+12>>2]|0)!=0){if((c[(c[g>>2]|0)+24>>2]|0)!=0){if(!(((c[(c[j>>2]|0)+36>>2]|0)+1|0)>>>0>=(c[(c[j>>2]|0)+20>>2]|0)>>>0)){if(!((c[(c[g>>2]|0)+16>>2]|0)>>>0>=(c[(c[g>>2]|0)+4>>2]|0)>>>0)){if((ds(c[j>>2]|0)|0)==0){break}}}c[l>>2]=c[(c[g>>2]|0)+24>>2];as(c[l>>2]|0);$r(c[l>>2]|0);c[h>>2]=c[(c[l>>2]|0)+20>>2];if(((c[(c[h>>2]|0)+4>>2]|0)+(c[(c[h>>2]|0)+8>>2]|0)|0)!=((c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0)|0)){bs(c[l>>2]|0);c[l>>2]=0;break}else{q=(c[g>>2]|0)+16|0;c[q>>2]=(c[q>>2]|0)-((c[(c[h>>2]|0)+12>>2]|0)-(c[(c[j>>2]|0)+12>>2]|0));break}}}}while(0);if((c[l>>2]|0)==0){if((c[k>>2]|0)==1){Ih()}c[l>>2]=fs(c[j>>2]|0)|0;if((c[k>>2]|0)==1){Jh()}}if((c[l>>2]|0)!=0){c[m>>2]=((c[f>>2]|0)>>>0)%((c[(c[j>>2]|0)+40>>2]|0)>>>0)|0;q=(c[j>>2]|0)+36|0;c[q>>2]=(c[q>>2]|0)+1;c[(c[l>>2]|0)+8>>2]=c[f>>2];c[(c[l>>2]|0)+16>>2]=c[(c[(c[j>>2]|0)+44>>2]|0)+(c[m>>2]<<2)>>2];c[(c[l>>2]|0)+20>>2]=c[j>>2];c[(c[l>>2]|0)+28>>2]=0;c[(c[l>>2]|0)+24>>2]=0;a[(c[l>>2]|0)+12>>0]=1;c[c[(c[l>>2]|0)+4>>2]>>2]=0;c[(c[(c[j>>2]|0)+44>>2]|0)+(c[m>>2]<<2)>>2]=c[l>>2]}}}}while(0);if((c[l>>2]|0)==0){q=c[l>>2]|0;i=o;return q|0}if(!((c[f>>2]|0)>>>0>(c[(c[j>>2]|0)+28>>2]|0)>>>0)){q=c[l>>2]|0;i=o;return q|0}c[(c[j>>2]|0)+28>>2]=c[f>>2];q=c[l>>2]|0;i=o;return q|0}function Vr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;m=h+20|0;l=h;k=h+4|0;f=h+8|0;g=h+12|0;j=h+16|0;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[f>>2]=c[m>>2];c[g>>2]=c[l>>2];c[j>>2]=c[c[f>>2]>>2];if((c[k>>2]|0)==0){if(!((c[(c[j>>2]|0)+16>>2]|0)>>>0>(c[(c[j>>2]|0)+4>>2]|0)>>>0)){d=c[g>>2]|0;e=c[j>>2]|0;if((c[(c[j>>2]|0)+20>>2]|0)!=0){c[(c[e+20>>2]|0)+28>>2]=d;c[(c[g>>2]|0)+24>>2]=c[(c[j>>2]|0)+20>>2];c[(c[j>>2]|0)+20>>2]=c[g>>2]}else{c[e+24>>2]=d;c[(c[j>>2]|0)+20>>2]=c[g>>2]}m=(c[f>>2]|0)+32|0;c[m>>2]=(c[m>>2]|0)+1;a[(c[g>>2]|0)+12>>0]=0;i=h;return}}as(c[g>>2]|0);bs(c[g>>2]|0);i=h;return}function Wr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;o=f+28|0;n=f;m=f+4|0;j=f+8|0;k=f+12|0;g=f+16|0;h=f+20|0;l=f+24|0;c[o>>2]=a;c[n>>2]=b;c[m>>2]=d;c[j>>2]=e;c[k>>2]=c[o>>2];c[g>>2]=c[n>>2];c[l>>2]=((c[m>>2]|0)>>>0)%((c[(c[k>>2]|0)+40>>2]|0)>>>0)|0;c[h>>2]=(c[(c[k>>2]|0)+44>>2]|0)+(c[l>>2]<<2);while(1){if((c[c[h>>2]>>2]|0)==(c[g>>2]|0)){break}c[h>>2]=(c[c[h>>2]>>2]|0)+16}c[c[h>>2]>>2]=c[(c[g>>2]|0)+16>>2];c[l>>2]=((c[j>>2]|0)>>>0)%((c[(c[k>>2]|0)+40>>2]|0)>>>0)|0;c[(c[g>>2]|0)+8>>2]=c[j>>2];c[(c[g>>2]|0)+16>>2]=c[(c[(c[k>>2]|0)+44>>2]|0)+(c[l>>2]<<2)>>2];c[(c[(c[k>>2]|0)+44>>2]|0)+(c[l>>2]<<2)>>2]=c[g>>2];if(!((c[j>>2]|0)>>>0>(c[(c[k>>2]|0)+28>>2]|0)>>>0)){i=f;return}c[(c[k>>2]|0)+28>>2]=c[j>>2];i=f;return}function Xr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=c[g>>2];if(!((c[f>>2]|0)>>>0<=(c[(c[e>>2]|0)+28>>2]|0)>>>0)){i=d;return}cs(c[e>>2]|0,c[f>>2]|0);c[(c[e>>2]|0)+28>>2]=(c[f>>2]|0)-1;i=d;return}function Yr(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;f=b+8|0;d=b;e=b+4|0;c[f>>2]=a;c[d>>2]=c[f>>2];c[e>>2]=c[c[d>>2]>>2];cs(c[d>>2]|0,0);a=(c[e>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)-(c[(c[d>>2]|0)+20>>2]|0);a=(c[e>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)-(c[(c[d>>2]|0)+16>>2]|0);c[(c[e>>2]|0)+12>>2]=(c[(c[e>>2]|0)+4>>2]|0)+10-(c[(c[e>>2]|0)+8>>2]|0);_r(c[e>>2]|0);oc(c[(c[d>>2]|0)+44>>2]|0);oc(c[d>>2]|0);i=b;return}function Zr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;g=b+12|0;d=b;e=b+4|0;f=b+8|0;c[g>>2]=a;c[d>>2]=c[g>>2];if((c[(c[d>>2]|0)+12>>2]|0)==0){i=b;return}c[e>>2]=c[c[d>>2]>>2];c[f>>2]=c[(c[e>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2]=0;_r(c[e>>2]|0);c[(c[e>>2]|0)+4>>2]=c[f>>2];i=b;return}function _r(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;while(1){if(!((c[(c[d>>2]|0)+16>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0)){a=5;break}if((c[(c[d>>2]|0)+24>>2]|0)==0){a=5;break}c[e>>2]=c[(c[d>>2]|0)+24>>2];$r(c[e>>2]|0);as(c[e>>2]|0);bs(c[e>>2]|0)}if((a|0)==5){i=b;return}}function $r(b){b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;e=f;g=f+4|0;c[d>>2]=b;c[e>>2]=c[(c[d>>2]|0)+20>>2];c[g>>2]=c[c[e>>2]>>2];b=c[(c[d>>2]|0)+24>>2]|0;if((c[(c[d>>2]|0)+28>>2]|0)!=0){c[(c[(c[d>>2]|0)+28>>2]|0)+24>>2]=b}else{c[(c[g>>2]|0)+20>>2]=b}b=c[(c[d>>2]|0)+28>>2]|0;if((c[(c[d>>2]|0)+24>>2]|0)!=0){c[(c[(c[d>>2]|0)+24>>2]|0)+28>>2]=b}else{c[(c[g>>2]|0)+24>>2]=b}c[(c[d>>2]|0)+24>>2]=0;c[(c[d>>2]|0)+28>>2]=0;a[(c[d>>2]|0)+12>>0]=1;b=(c[e>>2]|0)+32|0;c[b>>2]=(c[b>>2]|0)+ -1;i=f;return}function as(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+12|0;g=e;d=e+4|0;b=e+8|0;c[f>>2]=a;c[d>>2]=c[(c[f>>2]|0)+20>>2];c[g>>2]=((c[(c[f>>2]|0)+8>>2]|0)>>>0)%((c[(c[d>>2]|0)+40>>2]|0)>>>0)|0;c[b>>2]=(c[(c[d>>2]|0)+44>>2]|0)+(c[g>>2]<<2);while(1){a=(c[c[b>>2]>>2]|0)+16|0;if((c[c[b>>2]>>2]|0)==(c[f>>2]|0)){break}c[b>>2]=a}c[c[b>>2]>>2]=c[a>>2];g=(c[d>>2]|0)+36|0;c[g>>2]=(c[g>>2]|0)+ -1;i=e;return}function bs(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((c[e>>2]|0)==0){i=b;return}c[d>>2]=c[(c[e>>2]|0)+20>>2];jh(c[c[e>>2]>>2]|0)|0;if((c[(c[d>>2]|0)+12>>2]|0)==0){i=b;return}e=(c[c[d>>2]>>2]|0)+16|0;c[e>>2]=(c[e>>2]|0)+ -1;i=b;return}function cs(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;h=e+16|0;k=e;j=e+4|0;f=e+8|0;g=e+12|0;c[h>>2]=b;c[k>>2]=d;c[j>>2]=0;while(1){if(!((c[j>>2]|0)>>>0<(c[(c[h>>2]|0)+40>>2]|0)>>>0)){break}c[f>>2]=(c[(c[h>>2]|0)+44>>2]|0)+(c[j>>2]<<2);while(1){b=c[c[f>>2]>>2]|0;c[g>>2]=b;if((b|0)==0){break}if(!((c[(c[g>>2]|0)+8>>2]|0)>>>0>=(c[k>>2]|0)>>>0)){c[f>>2]=(c[g>>2]|0)+16;continue}b=(c[h>>2]|0)+36|0;c[b>>2]=(c[b>>2]|0)+ -1;c[c[f>>2]>>2]=c[(c[g>>2]|0)+16>>2];if((a[(c[g>>2]|0)+12>>0]|0)==0){$r(c[g>>2]|0)}bs(c[g>>2]|0)}c[j>>2]=(c[j>>2]|0)+1}i=e;return}function ds(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;if((c[3492>>2]|0)!=0){if(((c[(c[e>>2]|0)+4>>2]|0)+(c[(c[e>>2]|0)+8>>2]|0)|0)<=(c[3488>>2]|0)){c[d>>2]=c[3520>>2];e=c[d>>2]|0;i=b;return e|0}}c[d>>2]=gs()|0;e=c[d>>2]|0;i=b;return e|0}function es(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;b=d+24|0;e=d;f=d+4|0;j=d+8|0;h=d+12|0;g=d+16|0;k=d+20|0;c[b>>2]=a;a=c[(c[b>>2]|0)+40>>2]<<1;c[f>>2]=a;c[f>>2]=(c[f>>2]|0)>>>0<256?256:a;if((c[(c[b>>2]|0)+40>>2]|0)!=0){Ih()}c[e>>2]=Sc(c[f>>2]<<2)|0;if((c[(c[b>>2]|0)+40>>2]|0)!=0){Jh()}if((c[e>>2]|0)==0){k=c[b>>2]|0;k=k+44|0;k=c[k>>2]|0;k=(k|0)!=0;k=k?0:7;i=d;return k|0}c[j>>2]=0;while(1){if(!((c[j>>2]|0)>>>0<(c[(c[b>>2]|0)+40>>2]|0)>>>0)){break}c[g>>2]=c[(c[(c[b>>2]|0)+44>>2]|0)+(c[j>>2]<<2)>>2];while(1){a=c[g>>2]|0;c[h>>2]=a;if((a|0)==0){break}c[k>>2]=((c[(c[h>>2]|0)+8>>2]|0)>>>0)%((c[f>>2]|0)>>>0)|0;c[g>>2]=c[(c[h>>2]|0)+16>>2];c[(c[h>>2]|0)+16>>2]=c[(c[e>>2]|0)+(c[k>>2]<<2)>>2];c[(c[e>>2]|0)+(c[k>>2]<<2)>>2]=c[h>>2]}c[j>>2]=(c[j>>2]|0)+1}oc(c[(c[b>>2]|0)+44>>2]|0);c[(c[b>>2]|0)+44>>2]=c[e>>2];c[(c[b>>2]|0)+40>>2]=c[f>>2];k=c[b>>2]|0;k=k+44|0;k=c[k>>2]|0;k=(k|0)!=0;k=k?0:7;i=d;return k|0}function fs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;f=b;e=b+4|0;g=b+8|0;c[f>>2]=a;c[e>>2]=0;c[g>>2]=qh(32+(c[(c[f>>2]|0)+4>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)|0)|0;c[e>>2]=(c[g>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0);if((c[g>>2]|0)==0){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}c[c[e>>2]>>2]=c[g>>2];c[(c[e>>2]|0)+4>>2]=(c[e>>2]|0)+32;if((c[(c[f>>2]|0)+12>>2]|0)!=0){g=(c[c[f>>2]>>2]|0)+16|0;c[g>>2]=(c[g>>2]|0)+1}c[d>>2]=c[e>>2];g=c[d>>2]|0;i=b;return g|0}function gs(){return c[516>>2]|0}function hs(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b;f=b+8|0;d=b+4|0;c[f>>2]=a;c[f>>2]=(c[f>>2]|0)+7&-8;c[d>>2]=QK((c[f>>2]|0)+8|0)|0;a=c[f>>2]|0;if((c[d>>2]|0)!=0){f=c[d>>2]|0;c[f>>2]=a;c[f+4>>2]=((a|0)<0)<<31>>31;c[d>>2]=(c[d>>2]|0)+8;f=c[d>>2]|0;i=b;return f|0}else{c[e>>2]=a;zc(7,12784,e);f=c[d>>2]|0;i=b;return f|0}return 0}function is(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];c[d>>2]=(c[d>>2]|0)+ -8;RK(c[d>>2]|0);i=b;return}function js(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;g=d;h=d+16|0;f=d+8|0;e=d+12|0;c[h>>2]=a;c[f>>2]=b;c[e>>2]=c[h>>2];c[e>>2]=(c[e>>2]|0)+ -8;c[e>>2]=SK(c[e>>2]|0,(c[f>>2]|0)+8|0)|0;if((c[e>>2]|0)!=0){h=c[f>>2]|0;a=c[e>>2]|0;c[a>>2]=h;c[a+4>>2]=((h|0)<0)<<31>>31;c[e>>2]=(c[e>>2]|0)+8;a=c[e>>2]|0;i=d;return a|0}else{h=ks(c[h>>2]|0)|0;a=c[f>>2]|0;c[g>>2]=h;c[g+4>>2]=a;zc(7,12744,g);a=c[e>>2]|0;i=d;return a|0}return 0}function ks(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;f=b;e=b+4|0;c[f>>2]=a;if((c[f>>2]|0)==0){c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}else{c[e>>2]=c[f>>2];c[e>>2]=(c[e>>2]|0)+ -8;c[d>>2]=c[c[e>>2]>>2];f=c[d>>2]|0;i=b;return f|0}return 0}function ls(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return(c[b>>2]|0)+7&-8|0}function ms(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function ns(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return}function os(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;p=i;i=i+64|0;s=p+52|0;v=p+48|0;u=p+44|0;m=p+40|0;h=p+36|0;q=p+32|0;j=p+28|0;k=p+24|0;g=p+16|0;n=p+12|0;l=p+8|0;t=p+4|0;o=p;r=p+20|0;c[s>>2]=b;c[v>>2]=e;c[u>>2]=f;c[g>>2]=0;c[n>>2]=0;if((Sd(c[c[u>>2]>>2]|0)|0)==5){i=p;return}c[m>>2]=Jd(c[c[u>>2]>>2]|0)|0;if((c[m>>2]|0)==0){i=p;return}c[q>>2]=Kd(c[c[u>>2]>>2]|0)|0;a:do{if((c[v>>2]|0)==1){c[l>>2]=1;c[g>>2]=16432;c[n>>2]=16440;c[h>>2]=0}else{b=Jd(c[(c[u>>2]|0)+4>>2]|0)|0;c[h>>2]=b;if((b|0)==0){i=p;return}c[t>>2]=c[h>>2];c[l>>2]=0;while(1){if((a[c[t>>2]>>0]|0)==0){break}b=c[t>>2]|0;c[t>>2]=b+1;b:do{if((d[b>>0]|0)>=192){while(1){if((a[c[t>>2]>>0]&192|0)!=128){break b}c[t>>2]=(c[t>>2]|0)+1}}}while(0);c[l>>2]=(c[l>>2]|0)+1}if((c[l>>2]|0)>0){e=c[s>>2]|0;b=c[l>>2]|0;b=nL(b|0,((b|0)<0)<<31>>31|0,5,0)|0;c[n>>2]=Rt(e,b,D)|0;if((c[n>>2]|0)==0){i=p;return}c[g>>2]=(c[n>>2]|0)+(c[l>>2]<<2);c[t>>2]=c[h>>2];c[l>>2]=0;while(1){if((a[c[t>>2]>>0]|0)==0){break a}c[(c[n>>2]|0)+(c[l>>2]<<2)>>2]=c[t>>2];b=c[t>>2]|0;c[t>>2]=b+1;c:do{if((d[b>>0]|0)>=192){while(1){if((a[c[t>>2]>>0]&192|0)!=128){break c}c[t>>2]=(c[t>>2]|0)+1}}}while(0);a[(c[g>>2]|0)+(c[l>>2]|0)>>0]=(c[t>>2]|0)-(c[(c[n>>2]|0)+(c[l>>2]<<2)>>2]|0);c[l>>2]=(c[l>>2]|0)+1}}}}while(0);if((c[l>>2]|0)>0){c[j>>2]=qe(c[s>>2]|0)|0;d:do{if((c[j>>2]&1|0)!=0){while(1){if((c[q>>2]|0)<=0){break d}c[o>>2]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[l>>2]|0)){break}c[o>>2]=d[(c[g>>2]|0)+(c[k>>2]|0)>>0]|0;if((c[o>>2]|0)<=(c[q>>2]|0)){if((XK(c[m>>2]|0,c[(c[n>>2]|0)+(c[k>>2]<<2)>>2]|0,c[o>>2]|0)|0)==0){break}}c[k>>2]=(c[k>>2]|0)+1}if((c[k>>2]|0)>=(c[l>>2]|0)){break d}c[m>>2]=(c[m>>2]|0)+(c[o>>2]|0);c[q>>2]=(c[q>>2]|0)-(c[o>>2]|0)}}}while(0);e:do{if((c[j>>2]&2|0)!=0){while(1){if((c[q>>2]|0)<=0){break e}c[r>>2]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[l>>2]|0)){break}c[r>>2]=d[(c[g>>2]|0)+(c[k>>2]|0)>>0]|0;if((c[r>>2]|0)<=(c[q>>2]|0)){if((XK((c[m>>2]|0)+((c[q>>2]|0)-(c[r>>2]|0))|0,c[(c[n>>2]|0)+(c[k>>2]<<2)>>2]|0,c[r>>2]|0)|0)==0){break}}c[k>>2]=(c[k>>2]|0)+1}if((c[k>>2]|0)>=(c[l>>2]|0)){break e}c[q>>2]=(c[q>>2]|0)-(c[r>>2]|0)}}}while(0);if((c[h>>2]|0)!=0){oc(c[n>>2]|0)}}ce(c[s>>2]|0,c[m>>2]|0,c[q>>2]|0,-1);i=p;return}function ps(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;g=l+24|0;n=l;h=l+4|0;k=l+8|0;m=l+12|0;j=l+16|0;e=l+20|0;c[g>>2]=a;c[n>>2]=b;c[h>>2]=d;a=(qe(c[g>>2]|0)|0)==0;c[m>>2]=a?0:-1;c[e>>2]=St(c[g>>2]|0)|0;c[j>>2]=0;if((Sd(c[c[h>>2]>>2]|0)|0)==5){i=l;return}c[k>>2]=1;while(1){if((c[k>>2]|0)>=(c[n>>2]|0)){break}if((Sd(c[(c[h>>2]|0)+(c[k>>2]<<2)>>2]|0)|0)==5){f=9;break}a=Tt(c[(c[h>>2]|0)+(c[j>>2]<<2)>>2]|0,c[(c[h>>2]|0)+(c[k>>2]<<2)>>2]|0,c[e>>2]|0)|0;if((a^c[m>>2]|0)>=0){c[j>>2]=c[k>>2]}c[k>>2]=(c[k>>2]|0)+1}if((f|0)==9){i=l;return}de(c[g>>2]|0,c[(c[h>>2]|0)+(c[j>>2]<<2)>>2]|0);i=l;return}function qs(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;h=m+28|0;o=m+4|0;k=m+8|0;j=m+12|0;n=m+16|0;l=m+20|0;f=m+24|0;c[h>>2]=a;c[m>>2]=d;c[o>>2]=e;c[k>>2]=c[c[o>>2]>>2];c[j>>2]=se(c[h>>2]|0,40)|0;if((c[j>>2]|0)==0){i=m;return}a=(Sd(c[c[o>>2]>>2]|0)|0)==5;o=(b[(c[j>>2]|0)+28>>1]|0)!=0;if(a){if(!o){i=m;return}Xt(c[h>>2]|0);i=m;return}if(!o){ee(c[j>>2]|0,c[k>>2]|0)|0;i=m;return}c[f>>2]=St(c[h>>2]|0)|0;c[n>>2]=(qe(c[h>>2]|0)|0)!=0&1;c[l>>2]=Tt(c[j>>2]|0,c[k>>2]|0,c[f>>2]|0)|0;if((c[n>>2]|0)!=0){if((c[l>>2]|0)>=0){g=8}}else{g=8}do{if((g|0)==8){if((c[n>>2]|0)==0){if((c[l>>2]|0)>0){break}}Xt(c[h>>2]|0);i=m;return}}while(0);ee(c[j>>2]|0,c[k>>2]|0)|0;i=m;return}function rs(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=se(c[f>>2]|0,0)|0;if((c[e>>2]|0)==0){i=d;return}if((b[(c[e>>2]|0)+28>>1]|0)!=0){de(c[f>>2]|0,c[e>>2]|0)}Gd(c[e>>2]|0);i=d;return}function ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+12|0;h=e+4|0;f=e+8|0;c[g>>2]=a;c[e>>2]=b;c[h>>2]=d;c[f>>2]=0;d=Sd(c[c[h>>2]>>2]|0)|0;if((d|0)==3){c[f>>2]=16400}else if((d|0)==4){c[f>>2]=16416}else if((d|0)==2){c[f>>2]=16408}else if((d|0)==1){c[f>>2]=16392}else{c[f>>2]=16424}ce(c[g>>2]|0,c[f>>2]|0,-1,0);i=e;return}function ts(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;h=g+16|0;l=g+4|0;j=g+8|0;k=g+12|0;c[h>>2]=b;c[g>>2]=e;c[l>>2]=f;f=Sd(c[c[l>>2]>>2]|0)|0;if((f|0)==3){c[k>>2]=Jd(c[c[l>>2]>>2]|0)|0;if((c[k>>2]|0)==0){i=g;return}c[j>>2]=0;a:while(1){if((a[c[k>>2]>>0]|0)==0){break}c[j>>2]=(c[j>>2]|0)+1;b=c[k>>2]|0;c[k>>2]=b+1;if((d[b>>0]|0)<192){continue}while(1){if((a[c[k>>2]>>0]&192|0)!=128){continue a}c[k>>2]=(c[k>>2]|0)+1}}Zd(c[h>>2]|0,c[j>>2]|0);i=g;return}else if((f|0)==2|(f|0)==1|(f|0)==4){b=c[h>>2]|0;Zd(b,Kd(c[c[l>>2]>>2]|0)|0);i=g;return}else{ae(c[h>>2]|0);i=g;return}}function us(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;h=n+40|0;p=n+32|0;m=n+28|0;o=n+24|0;l=n+20|0;k=n+12|0;r=n+8|0;q=n+4|0;j=n;f=n+16|0;c[h>>2]=b;c[n+36>>2]=d;c[p>>2]=e;c[j>>2]=1;c[r>>2]=Sd(c[c[p>>2]>>2]|0)|0;c[q>>2]=Sd(c[(c[p>>2]|0)+4>>2]|0)|0;if((c[r>>2]|0)==5){i=n;return}if((c[q>>2]|0)==5){i=n;return}c[l>>2]=Kd(c[c[p>>2]>>2]|0)|0;c[k>>2]=Kd(c[(c[p>>2]|0)+4>>2]|0)|0;if((c[r>>2]|0)==4){if((c[q>>2]|0)==4){c[m>>2]=Hd(c[c[p>>2]>>2]|0)|0;c[o>>2]=Hd(c[(c[p>>2]|0)+4>>2]|0)|0;c[f>>2]=0}else{g=6}}else{g=6}if((g|0)==6){c[m>>2]=Jd(c[c[p>>2]>>2]|0)|0;c[o>>2]=Jd(c[(c[p>>2]|0)+4>>2]|0)|0;c[f>>2]=1}a:while(1){if((c[k>>2]|0)>(c[l>>2]|0)){break}if((XK(c[m>>2]|0,c[o>>2]|0,c[k>>2]|0)|0)==0){break}c[j>>2]=(c[j>>2]|0)+1;while(1){c[l>>2]=(c[l>>2]|0)+ -1;c[m>>2]=(c[m>>2]|0)+1;if((c[f>>2]|0)==0){continue a}if((a[c[m>>2]>>0]&192|0)!=128){continue a}}}if((c[k>>2]|0)>(c[l>>2]|0)){c[j>>2]=0}Zd(c[h>>2]|0,c[j>>2]|0);i=n;return}function vs(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+48|0;h=k+44|0;n=k+40|0;o=k+36|0;l=k+32|0;g=k+28|0;p=k+24|0;q=k+16|0;j=k+8|0;m=k;r=k+20|0;c[h>>2]=b;c[n>>2]=e;c[o>>2]=f;c[r>>2]=0;if((Sd(c[(c[o>>2]|0)+4>>2]|0)|0)==5){i=k;return}if((c[n>>2]|0)==3){if((Sd(c[(c[o>>2]|0)+8>>2]|0)|0)==5){i=k;return}}c[q>>2]=Sd(c[c[o>>2]>>2]|0)|0;b=Od(c[(c[o>>2]|0)+4>>2]|0)|0;f=j;c[f>>2]=b;c[f+4>>2]=((b|0)<0)<<31>>31;f=c[c[o>>2]>>2]|0;a:do{if((c[q>>2]|0)==4){c[p>>2]=Kd(f)|0;c[l>>2]=Hd(c[c[o>>2]>>2]|0)|0;if((c[l>>2]|0)==0){i=k;return}}else{c[l>>2]=Jd(f)|0;if((c[l>>2]|0)==0){i=k;return}c[p>>2]=0;if((c[j+4>>2]|0)<0){c[g>>2]=c[l>>2];while(1){if((a[c[g>>2]>>0]|0)==0){break a}b=c[g>>2]|0;c[g>>2]=b+1;b:do{if((d[b>>0]|0)>=192){while(1){if((a[c[g>>2]>>0]&192|0)!=128){break b}c[g>>2]=(c[g>>2]|0)+1}}}while(0);c[p>>2]=(c[p>>2]|0)+1}}}}while(0);if((c[n>>2]|0)==3){e=Od(c[(c[o>>2]|0)+8>>2]|0)|0;b=m;c[b>>2]=e;c[b+4>>2]=((e|0)<0)<<31>>31;if((c[m+4>>2]|0)<0){e=m;e=$K(0,0,c[e>>2]|0,c[e+4>>2]|0)|0;b=m;c[b>>2]=e;c[b+4>>2]=D;c[r>>2]=1}}else{e=c[(re(c[h>>2]|0)|0)+88>>2]|0;b=m;c[b>>2]=e;c[b+4>>2]=((e|0)<0)<<31>>31}do{if((c[j+4>>2]|0)<0){e=c[p>>2]|0;b=j;e=dL(c[b>>2]|0,c[b+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;b=j;c[b>>2]=e;c[b+4>>2]=D;if((c[j+4>>2]|0)<0){o=j;e=m;o=dL(c[e>>2]|0,c[e+4>>2]|0,c[o>>2]|0,c[o+4>>2]|0)|0;e=D;f=m;c[f>>2]=o;c[f+4>>2]=e;f=(c[m+4>>2]|0)<0;b=m;c[b>>2]=f?0:o;c[b+4>>2]=f?0:e;b=j;c[b>>2]=0;c[b+4>>2]=0}}else{b=j;e=c[b+4>>2]|0;if((e|0)>0|(e|0)==0&(c[b>>2]|0)>>>0>0){e=j;e=dL(c[e>>2]|0,c[e+4>>2]|0,-1,-1)|0;b=j;c[b>>2]=e;c[b+4>>2]=D;break}b=m;e=c[b+4>>2]|0;if((e|0)>0|(e|0)==0&(c[b>>2]|0)>>>0>0){e=m;e=dL(c[e>>2]|0,c[e+4>>2]|0,-1,-1)|0;b=m;c[b>>2]=e;c[b+4>>2]=D}}}while(0);if((c[r>>2]|0)!=0){e=m;b=j;e=$K(c[b>>2]|0,c[b+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;b=j;c[b>>2]=e;c[b+4>>2]=D;if((c[j+4>>2]|0)<0){e=j;b=m;e=dL(c[b>>2]|0,c[b+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;b=m;c[b>>2]=e;c[b+4>>2]=D;b=j;c[b>>2]=0;c[b+4>>2]=0}}if((c[q>>2]|0)==4){r=j;e=m;e=dL(c[r>>2]|0,c[r+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;r=D;b=c[p>>2]|0;f=((b|0)<0)<<31>>31;if((r|0)>(f|0)|(r|0)==(f|0)&e>>>0>b>>>0){e=c[p>>2]|0;r=j;r=$K(e|0,((e|0)<0)<<31>>31|0,c[r>>2]|0,c[r+4>>2]|0)|0;e=D;f=m;c[f>>2]=r;c[f+4>>2]=e;f=(c[m+4>>2]|0)<0;b=m;c[b>>2]=f?0:r;c[b+4>>2]=f?0:e}Td(c[h>>2]|0,(c[l>>2]|0)+(c[j>>2]|0)|0,c[m>>2]|0,-1);i=k;return}while(1){if((d[c[l>>2]>>0]|0)!=0){o=j;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0}else{o=0}n=c[l>>2]|0;if(!o){break}c[l>>2]=n+1;c:do{if((d[n>>0]|0)>=192){while(1){if((a[c[l>>2]>>0]&192|0)!=128){break c}c[l>>2]=(c[l>>2]|0)+1}}}while(0);e=j;e=dL(c[e>>2]|0,c[e+4>>2]|0,-1,-1)|0;b=j;c[b>>2]=e;c[b+4>>2]=D}c[g>>2]=n;while(1){if((d[c[g>>2]>>0]|0)==0){break}b=m;if(!((c[b>>2]|0)!=0|(c[b+4>>2]|0)!=0)){break}b=c[g>>2]|0;c[g>>2]=b+1;d:do{if((d[b>>0]|0)>=192){while(1){if((a[c[g>>2]>>0]&192|0)!=128){break d}c[g>>2]=(c[g>>2]|0)+1}}}while(0);e=m;e=dL(c[e>>2]|0,c[e+4>>2]|0,-1,-1)|0;b=m;c[b>>2]=e;c[b+4>>2]=D}ce(c[h>>2]|0,c[l>>2]|0,(c[g>>2]|0)-(c[l>>2]|0)|0,-1);i=k;return}function ws(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+64|0;m=k;e=k+60|0;f=k+4|0;h=k+8|0;g=k+12|0;j=k+24|0;l=k+52|0;n=k+56|0;c[e>>2]=a;c[f>>2]=b;c[h>>2]=d;if((c[f>>2]|0)<1){i=k;return}a=Jd(c[c[h>>2]>>2]|0)|0;c[l>>2]=a;if((a|0)==0){i=k;return}c[g>>2]=(c[f>>2]|0)-1;c[g+4>>2]=0;c[g+8>>2]=(c[h>>2]|0)+4;tc(j,0,0,1e9);c[j>>2]=re(c[e>>2]|0)|0;b=c[l>>2]|0;c[m>>2]=g;Wt(j,2,b,m);c[n>>2]=c[j+12>>2];b=c[e>>2]|0;a=vc(j)|0;ce(b,a,c[n>>2]|0,39);i=k;return}function xs(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;j=f+4|0;h=f+8|0;c[g>>2]=a;c[f>>2]=b;c[j>>2]=e;c[h>>2]=Jd(c[c[j>>2]>>2]|0)|0;if((c[h>>2]|0)==0){i=f;return}if((d[c[h>>2]>>0]|0|0)==0){i=f;return}j=c[g>>2]|0;Zd(j,It(h)|0);i=f;return}function ys(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;g=m+32|0;o=m+24|0;k=m+8|0;h=m+12|0;j=m+16|0;l=m+20|0;f=m;n=m+28|0;c[g>>2]=b;c[o>>2]=d;c[k>>2]=e;b=mc((c[o>>2]<<2)+1|0)|0;c[h>>2]=b;c[j>>2]=b;if((c[h>>2]|0)==0){ke(c[g>>2]|0);i=m;return}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[o>>2]|0)){break}p=Qd(c[(c[k>>2]|0)+(c[l>>2]<<2)>>2]|0)|0;b=D;e=f;c[e>>2]=p;c[e+4>>2]=b;e=f;d=c[e+4>>2]|0;e=(c[f+4>>2]|0)<0|((d|0)>0|(d|0)==0&(c[e>>2]|0)>>>0>1114111);d=f;c[d>>2]=e?65533:p;c[d+4>>2]=e?0:b;c[n>>2]=c[f>>2]&2097151;d=c[n>>2]|0;do{if((c[n>>2]|0)>>>0<128){p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=d&255}else{e=c[n>>2]|0;if(d>>>0<2048){b=c[j>>2]|0;c[j>>2]=b+1;a[b>>0]=192+(e>>>6&31&255);b=128+(c[n>>2]&63&255)&255;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=b;break}d=c[n>>2]|0;if(e>>>0<65536){p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=224+(d>>>12&15&255);p=128+((c[n>>2]|0)>>>6&63&255)&255;b=c[j>>2]|0;c[j>>2]=b+1;a[b>>0]=p;b=128+(c[n>>2]&63&255)&255;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=b;break}else{b=c[j>>2]|0;c[j>>2]=b+1;a[b>>0]=240+(d>>>18&7&255);b=128+((c[n>>2]|0)>>>12&63&255)&255;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=b;p=128+((c[n>>2]|0)>>>6&63&255)&255;b=c[j>>2]|0;c[j>>2]=b+1;a[b>>0]=p;b=128+(c[n>>2]&63&255)&255;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=b;break}}}while(0);c[l>>2]=(c[l>>2]|0)+1}ce(c[g>>2]|0,c[h>>2]|0,(c[j>>2]|0)-(c[h>>2]|0)|0,13);i=m;return}function zs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+32|0;f=e+24|0;j=e+16|0;g=e;k=e+8|0;c[f>>2]=a;c[e+20>>2]=b;c[j>>2]=d;d=Sd(c[c[j>>2]>>2]|0)|0;if((d|0)==5){ae(c[f>>2]|0);i=e;return}else if((d|0)==1){b=Qd(c[c[j>>2]>>2]|0)|0;a=g;c[a>>2]=b;c[a+4>>2]=D;do{if((c[g+4>>2]|0)<0){a=g;if(!((c[a>>2]|0)==0?(c[a+4>>2]|0)==-2147483648:0)){b=g;b=$K(0,0,c[b>>2]|0,c[b+4>>2]|0)|0;a=g;c[a>>2]=b;c[a+4>>2]=D;break}Xd(c[f>>2]|0,16320,-1);i=e;return}}while(0);a=g;$d(c[f>>2]|0,c[a>>2]|0,c[a+4>>2]|0);i=e;return}else{h[k>>3]=+Md(c[c[j>>2]>>2]|0);if(+h[k>>3]<0.0){h[k>>3]=-+h[k>>3]}Vd(c[f>>2]|0,+h[k>>3]);i=e;return}}function As(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0.0;m=i;i=i+48|0;e=m+8|0;g=m+36|0;p=m+28|0;o=m+20|0;l=m+24|0;j=m;n=m+32|0;c[g>>2]=a;c[p>>2]=b;c[o>>2]=d;c[l>>2]=0;do{if((c[p>>2]|0)==2){if(5==(Sd(c[(c[o>>2]|0)+4>>2]|0)|0)){i=m;return}else{p=Od(c[(c[o>>2]|0)+4>>2]|0)|0;c[l>>2]=p;p=(c[l>>2]|0)>30?30:p;c[l>>2]=p;c[l>>2]=(c[l>>2]|0)<0?0:p;break}}}while(0);if((Sd(c[c[o>>2]>>2]|0)|0)==5){i=m;return}h[j>>3]=+Md(c[c[o>>2]>>2]|0);if((c[l>>2]|0)==0){if(+h[j>>3]>=0.0&+h[j>>3]<9223372036854776000.0){q=+h[j>>3]+.5;h[j>>3]=+(~~q>>>0>>>0)+4294967296.0*+((+O(q)>=1.0?q>0.0?(ea(+N(q/4294967296.0),4294967295.0)|0)>>>0:~~+_((q- +(~~q>>>0))/4294967296.0)>>>0:0)|0)}else{f=8}}else{f=8}do{if((f|0)==8){if((c[l>>2]|0)==0){if(+h[j>>3]<0.0){if(-+h[j>>3]<9223372036854776000.0){q=-+h[j>>3]+.5;h[j>>3]=-(+(~~q>>>0>>>0)+4294967296.0*+((+O(q)>=1.0?q>0.0?(ea(+N(q/4294967296.0),4294967295.0)|0)>>>0:~~+_((q- +(~~q>>>0))/4294967296.0)>>>0:0)|0));break}}}q=+h[j>>3];c[e>>2]=c[l>>2];p=e+4|0;h[k>>3]=q;c[p>>2]=c[k>>2];c[p+4>>2]=c[k+4>>2];c[n>>2]=wc(16384,e)|0;if((c[n>>2]|0)!=0){p=c[n>>2]|0;zt(p,j,Ub(c[n>>2]|0)|0,1)|0;oc(c[n>>2]|0);break}ke(c[g>>2]|0);i=m;return}}while(0);Vd(c[g>>2]|0,+h[j>>3]);i=m;return}function Bs(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+24|0;n=g+4|0;j=g+8|0;m=g+12|0;l=g+16|0;k=g+20|0;c[h>>2]=b;c[g>>2]=e;c[n>>2]=f;c[m>>2]=Jd(c[c[n>>2]>>2]|0)|0;c[k>>2]=Kd(c[c[n>>2]>>2]|0)|0;if((c[m>>2]|0)==0){i=g;return}b=c[h>>2]|0;n=c[k>>2]|0;n=dL(n|0,((n|0)<0)<<31>>31|0,1,0)|0;c[j>>2]=Rt(b,n,D)|0;if((c[j>>2]|0)==0){i=g;return}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[k>>2]|0)){break}a[(c[j>>2]|0)+(c[l>>2]|0)>>0]=a[(c[m>>2]|0)+(c[l>>2]|0)>>0]&~(a[136+(d[(c[m>>2]|0)+(c[l>>2]|0)>>0]|0)>>0]&32);c[l>>2]=(c[l>>2]|0)+1}ce(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,13);i=g;return}function Cs(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+24|0;n=g+4|0;j=g+8|0;m=g+12|0;l=g+16|0;k=g+20|0;c[h>>2]=b;c[g>>2]=e;c[n>>2]=f;c[m>>2]=Jd(c[c[n>>2]>>2]|0)|0;c[k>>2]=Kd(c[c[n>>2]>>2]|0)|0;if((c[m>>2]|0)==0){i=g;return}b=c[h>>2]|0;n=c[k>>2]|0;n=dL(n|0,((n|0)<0)<<31>>31|0,1,0)|0;c[j>>2]=Rt(b,n,D)|0;if((c[j>>2]|0)==0){i=g;return}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[k>>2]|0)){break}a[(c[j>>2]|0)+(c[l>>2]|0)>>0]=a[784+(d[(c[m>>2]|0)+(c[l>>2]|0)>>0]|0)>>0]|0;c[l>>2]=(c[l>>2]|0)+1}ce(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,13);i=g;return}function Ds(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e>>2]=b;c[e+4>>2]=d;a=c[f>>2]|0;ce(a,Sf()|0,-1,0);i=e;return}function Es(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+48|0;j=l+16|0;p=l+24|0;m=l+20|0;g=l+12|0;n=l+8|0;k=l+4|0;h=l;o=l+32|0;c[j>>2]=b;c[l+28>>2]=e;c[p>>2]=f;c[n>>2]=Hd(c[c[p>>2]>>2]|0)|0;c[g>>2]=Kd(c[c[p>>2]>>2]|0)|0;e=c[j>>2]|0;b=c[g>>2]|0;b=nL(b|0,((b|0)<0)<<31>>31|0,2,0)|0;b=dL(b|0,D|0,1,0)|0;b=Rt(e,b,D)|0;c[k>>2]=b;c[h>>2]=b;if((c[k>>2]|0)==0){i=l;return}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[g>>2]|0)){break}a[o>>0]=a[c[n>>2]>>0]|0;p=a[16360+((d[o>>0]|0)>>4&15)>>0]|0;b=c[h>>2]|0;c[h>>2]=b+1;a[b>>0]=p;b=a[16360+(a[o>>0]&15)>>0]|0;p=c[h>>2]|0;c[h>>2]=p+1;a[p>>0]=b;c[m>>2]=(c[m>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+1}a[c[h>>2]>>0]=0;ce(c[j>>2]|0,c[k>>2]|0,c[g>>2]<<1,13);i=l;return}function Fs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+32|0;f=e+16|0;g=e;c[f>>2]=a;c[e+12>>2]=b;c[e+8>>2]=d;Bc(8,g);if((c[g+4>>2]|0)<0){b=g;b=$K(0,0,c[b>>2]|0,c[b+4>>2]&2147483647|0)|0;a=g;c[a>>2]=b;c[a+4>>2]=D}a=g;$d(c[f>>2]|0,c[a>>2]|0,c[a+4>>2]|0);i=e;return}function Gs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+16|0;j=e+4|0;f=e+8|0;g=e+12|0;c[h>>2]=a;c[e>>2]=b;c[j>>2]=d;a=Od(c[c[j>>2]>>2]|0)|0;c[f>>2]=a;c[f>>2]=(c[f>>2]|0)<1?1:a;a=c[f>>2]|0;c[g>>2]=Rt(c[h>>2]|0,a,((a|0)<0)<<31>>31)|0;if((c[g>>2]|0)==0){i=e;return}Bc(c[f>>2]|0,c[g>>2]|0);Td(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0,13);i=e;return}function Hs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+12|0;g=e+4|0;h=e+8|0;c[f>>2]=a;c[e>>2]=b;c[g>>2]=d;c[h>>2]=St(c[f>>2]|0)|0;if((Tt(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+4>>2]|0,c[h>>2]|0)|0)==0){i=e;return}de(c[f>>2]|0,c[c[g>>2]>>2]|0);i=e;return}function Is(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e>>2]=b;c[e+4>>2]=d;a=c[f>>2]|0;ce(a,Tf()|0,-1,0);i=e;return}function Js(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e;g=e+8|0;c[e+12>>2]=a;c[e+4>>2]=b;c[g>>2]=d;a=Od(c[c[g>>2]>>2]|0)|0;c[f>>2]=Jd(c[(c[g>>2]|0)+4>>2]|0)|0;zc(a,1768,f);i=e;return}function Ks(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+12|0;h=e+4|0;g=e+8|0;c[f>>2]=a;c[e>>2]=b;c[h>>2]=d;a=Jd(c[c[h>>2]>>2]|0)|0;c[g>>2]=a;if((a|0)==0){i=e;return}h=c[f>>2]|0;Zd(h,Sb(c[g>>2]|0)|0);i=e;return}function Ls(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+12|0;h=e+4|0;f=e+8|0;c[g>>2]=a;c[e>>2]=b;c[h>>2]=d;c[f>>2]=Od(c[c[h>>2]>>2]|0)|0;a=c[g>>2]|0;ce(a,Vb(c[f>>2]|0)|0,-1,0);i=e;return}function Ms(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,j=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;s=i;i=i+128|0;j=s;m=s+68|0;p=s+60|0;g=s+16|0;t=s+24|0;q=s+76|0;r=s+56|0;o=s+72|0;l=s+48|0;n=s+40|0;v=s+36|0;w=s+52|0;x=s+8|0;y=s+32|0;u=s+44|0;c[m>>2]=b;c[s+64>>2]=e;c[p>>2]=f;f=Sd(c[c[p>>2]>>2]|0)|0;if((f|0)==4){c[r>>2]=0;c[o>>2]=Hd(c[c[p>>2]>>2]|0)|0;c[l>>2]=Kd(c[c[p>>2]>>2]|0)|0;e=c[m>>2]|0;b=c[l>>2]|0;b=nL(2,0,b|0,((b|0)<0)<<31>>31|0)|0;b=dL(b|0,D|0,4,0)|0;c[r>>2]=Rt(e,b,D)|0;if((c[r>>2]|0)==0){i=s;return}c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[l>>2]|0)){break}a[(c[r>>2]|0)+((c[n>>2]<<1)+2)>>0]=a[16360+(a[(c[o>>2]|0)+(c[n>>2]|0)>>0]>>4&15)>>0]|0;a[(c[r>>2]|0)+((c[n>>2]<<1)+3)>>0]=a[16360+(a[(c[o>>2]|0)+(c[n>>2]|0)>>0]&15)>>0]|0;c[n>>2]=(c[n>>2]|0)+1}a[(c[r>>2]|0)+((c[l>>2]<<1)+2)>>0]=39;a[(c[r>>2]|0)+((c[l>>2]<<1)+3)>>0]=0;a[c[r>>2]>>0]=88;a[(c[r>>2]|0)+1>>0]=39;ce(c[m>>2]|0,c[r>>2]|0,-1,-1);oc(c[r>>2]|0);i=s;return}else if((f|0)==2){h[g>>3]=+Md(c[c[p>>2]>>2]|0);h[k>>3]=+h[g>>3];c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];yc(50,q,16344,j)|0;zt(q,t,20,1)|0;if(+h[g>>3]!=+h[t>>3]){h[k>>3]=+h[g>>3];c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];yc(50,q,16352,j)|0}ce(c[m>>2]|0,q,-1,-1);i=s;return}else if((f|0)==3){c[y>>2]=Jd(c[c[p>>2]>>2]|0)|0;if((c[y>>2]|0)==0){i=s;return}c[v>>2]=0;b=x;c[b>>2]=0;c[b+4>>2]=0;while(1){if((a[(c[y>>2]|0)+(c[v>>2]|0)>>0]|0)==0){break}if((d[(c[y>>2]|0)+(c[v>>2]|0)>>0]|0)==39){e=x;e=dL(c[e>>2]|0,c[e+4>>2]|0,1,0)|0;b=x;c[b>>2]=e;c[b+4>>2]=D}c[v>>2]=(c[v>>2]|0)+1}e=c[m>>2]|0;f=c[v>>2]|0;b=x;b=dL(f|0,((f|0)<0)<<31>>31|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=dL(b|0,D|0,3,0)|0;c[u>>2]=Rt(e,b,D)|0;if((c[u>>2]|0)==0){i=s;return}a[c[u>>2]>>0]=39;c[v>>2]=0;c[w>>2]=1;while(1){if((a[(c[y>>2]|0)+(c[v>>2]|0)>>0]|0)==0){break}e=a[(c[y>>2]|0)+(c[v>>2]|0)>>0]|0;b=c[w>>2]|0;c[w>>2]=b+1;a[(c[u>>2]|0)+b>>0]=e;if((d[(c[y>>2]|0)+(c[v>>2]|0)>>0]|0)==39){b=c[w>>2]|0;c[w>>2]=b+1;a[(c[u>>2]|0)+b>>0]=39}c[v>>2]=(c[v>>2]|0)+1}b=c[w>>2]|0;c[w>>2]=b+1;a[(c[u>>2]|0)+b>>0]=39;a[(c[u>>2]|0)+(c[w>>2]|0)>>0]=0;ce(c[m>>2]|0,c[u>>2]|0,c[w>>2]|0,13);i=s;return}else if((f|0)==1){de(c[m>>2]|0,c[c[p>>2]>>2]|0);i=s;return}else{ce(c[m>>2]|0,16376,4,0);i=s;return}}function Ns(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+12|0;f=e+8|0;c[g>>2]=a;c[e>>2]=b;c[e+4>>2]=d;c[f>>2]=re(c[g>>2]|0)|0;b=c[g>>2]|0;a=eg(c[f>>2]|0)|0;$d(b,a,D);i=e;return}function Os(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+12|0;f=e+8|0;c[g>>2]=a;c[e>>2]=b;c[e+4>>2]=d;c[f>>2]=re(c[g>>2]|0)|0;a=c[g>>2]|0;Zd(a,fg(c[f>>2]|0)|0);i=e;return}function Ps(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+12|0;f=e+8|0;c[g>>2]=a;c[e>>2]=b;c[e+4>>2]=d;c[f>>2]=re(c[g>>2]|0)|0;a=c[g>>2]|0;Zd(a,gg(c[f>>2]|0)|0);i=e;return}function Qs(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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;r=i;i=i+80|0;j=r+64|0;k=r+56|0;u=r+52|0;v=r+48|0;n=r+44|0;l=r+40|0;x=r+36|0;q=r+32|0;o=r+24|0;s=r;w=r+16|0;p=r+12|0;m=r+8|0;g=r+20|0;t=r+28|0;c[j>>2]=b;c[r+60>>2]=e;c[k>>2]=f;c[u>>2]=Jd(c[c[k>>2]>>2]|0)|0;if((c[u>>2]|0)==0){i=r;return}c[x>>2]=Kd(c[c[k>>2]>>2]|0)|0;c[v>>2]=Jd(c[(c[k>>2]|0)+4>>2]|0)|0;if((c[v>>2]|0)==0){i=r;return}if((d[c[v>>2]>>0]|0|0)==0){de(c[j>>2]|0,c[c[k>>2]>>2]|0);i=r;return}c[q>>2]=Kd(c[(c[k>>2]|0)+4>>2]|0)|0;c[n>>2]=Jd(c[(c[k>>2]|0)+8>>2]|0)|0;if((c[n>>2]|0)==0){i=r;return}c[o>>2]=Kd(c[(c[k>>2]|0)+8>>2]|0)|0;e=(c[x>>2]|0)+1|0;b=s;c[b>>2]=e;c[b+4>>2]=((e|0)<0)<<31>>31;b=s;c[l>>2]=Rt(c[j>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;if((c[l>>2]|0)==0){i=r;return}c[w>>2]=(c[x>>2]|0)-(c[q>>2]|0);c[m>>2]=0;c[p>>2]=0;while(1){if((c[p>>2]|0)>(c[w>>2]|0)){h=18;break}if((d[(c[u>>2]|0)+(c[p>>2]|0)>>0]|0|0)!=(d[c[v>>2]>>0]|0|0)){h=11}else{if((XK((c[u>>2]|0)+(c[p>>2]|0)|0,c[v>>2]|0,c[q>>2]|0)|0)!=0){h=11}else{c[t>>2]=re(c[j>>2]|0)|0;k=(c[o>>2]|0)-(c[q>>2]|0)|0;e=s;k=dL(c[e>>2]|0,c[e+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0;e=s;c[e>>2]=k;c[e+4>>2]=D;e=s;e=$K(c[e>>2]|0,c[e+4>>2]|0,1,0)|0;k=D;b=c[(c[t>>2]|0)+88>>2]|0;f=((b|0)<0)<<31>>31;if((k|0)>(f|0)|(k|0)==(f|0)&e>>>0>b>>>0){h=13;break}c[g>>2]=c[l>>2];c[l>>2]=qc(c[l>>2]|0,c[s>>2]|0)|0;if((c[l>>2]|0)==0){h=15;break}fL((c[l>>2]|0)+(c[m>>2]|0)|0,c[n>>2]|0,c[o>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+(c[o>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[q>>2]|0)-1)}}if((h|0)==11){h=0;e=a[(c[u>>2]|0)+(c[p>>2]|0)>>0]|0;b=c[m>>2]|0;c[m>>2]=b+1;a[(c[l>>2]|0)+b>>0]=e}c[p>>2]=(c[p>>2]|0)+1}if((h|0)==13){je(c[j>>2]|0);oc(c[l>>2]|0);i=r;return}else if((h|0)==15){ke(c[j>>2]|0);oc(c[g>>2]|0);i=r;return}else if((h|0)==18){fL((c[l>>2]|0)+(c[m>>2]|0)|0,(c[u>>2]|0)+(c[p>>2]|0)|0,(c[x>>2]|0)-(c[p>>2]|0)|0)|0;c[m>>2]=(c[m>>2]|0)+((c[x>>2]|0)-(c[p>>2]|0));a[(c[l>>2]|0)+(c[m>>2]|0)>>0]=0;ce(c[j>>2]|0,c[l>>2]|0,c[m>>2]|0,13);i=r;return}}function Rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;j=e+20|0;h=e+8|0;f=e;g=e+16|0;c[j>>2]=a;c[e+12>>2]=b;c[h>>2]=d;c[g>>2]=re(c[j>>2]|0)|0;h=Qd(c[c[h>>2]>>2]|0)|0;b=f;c[b>>2]=h;c[b+4>>2]=D;b=f;h=c[b+4>>2]|0;a=c[(c[g>>2]|0)+88>>2]|0;g=((a|0)<0)<<31>>31;d=c[j>>2]|0;if((h|0)>(g|0)|((h|0)==(g|0)?(c[b>>2]|0)>>>0>a>>>0:0)){je(d);i=e;return}else{fe(d,c[f>>2]|0);i=e;return}}function Ss(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0.0;g=i;i=i+32|0;n=g+24|0;m=g+8|0;j=g+12|0;l=g+16|0;k=g;c[n>>2]=b;c[g+20>>2]=e;c[m>>2]=f;c[j>>2]=se(c[n>>2]|0,32)|0;c[l>>2]=Ye(c[c[m>>2]>>2]|0)|0;if((c[j>>2]|0)==0){i=g;return}if((c[l>>2]|0)==5){i=g;return}f=(c[j>>2]|0)+16|0;n=f;n=dL(c[n>>2]|0,c[n+4>>2]|0,1,0)|0;c[f>>2]=n;c[f+4>>2]=D;f=c[c[m>>2]>>2]|0;if((c[l>>2]|0)!=1){o=+Md(f);n=c[j>>2]|0;h[n>>3]=+h[n>>3]+o;a[(c[j>>2]|0)+25>>0]=1;i=g;return}n=Qd(f)|0;b=k;c[b>>2]=n;c[b+4>>2]=D;b=k;n=c[j>>2]|0;h[n>>3]=+h[n>>3]+(+((c[b>>2]|0)>>>0)+4294967296.0*+(c[b+4>>2]|0));if((d[(c[j>>2]|0)+25>>0]|0|(d[(c[j>>2]|0)+24>>0]|0)|0)!=0){i=g;return}n=k;if((Qt((c[j>>2]|0)+8|0,c[n>>2]|0,c[n+4>>2]|0)|0)==0){i=g;return}a[(c[j>>2]|0)+24>>0]=1;i=g;return}function Ts(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;c[e>>2]=se(c[f>>2]|0,0)|0;if((c[e>>2]|0)==0){i=d;return}b=(c[e>>2]|0)+16|0;g=c[b+4>>2]|0;if(!((g|0)>0|(g|0)==0&(c[b>>2]|0)>>>0>0)){i=d;return}if((a[(c[e>>2]|0)+24>>0]|0)!=0){Xd(c[f>>2]|0,16320,-1);i=d;return}f=c[f>>2]|0;b=c[e>>2]|0;if((a[(c[e>>2]|0)+25>>0]|0)!=0){Vd(f,+h[b>>3]);i=d;return}else{g=b+8|0;$d(f,c[g>>2]|0,c[g+4>>2]|0);i=d;return}}function Us(a){a=a|0;var b=0,d=0,e=0,f=0.0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=se(c[e>>2]|0,0)|0;a=c[e>>2]|0;if((c[d>>2]|0)==0){f=0.0;Vd(a,f);i=b;return}f=+h[c[d>>2]>>3];Vd(a,f);i=b;return}function Vs(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=se(c[e>>2]|0,0)|0;if((c[d>>2]|0)==0){i=b;return}a=(c[d>>2]|0)+16|0;f=c[a+4>>2]|0;if(!((f|0)>0|(f|0)==0&(c[a>>2]|0)>>>0>0)){i=b;return}f=(c[d>>2]|0)+16|0;Vd(c[e>>2]|0,+h[c[d>>2]>>3]/(+((c[f>>2]|0)>>>0)+4294967296.0*+(c[f+4>>2]|0)));i=b;return}function Ws(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;h=e;g=e+4|0;f=e+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[f>>2]=se(c[j>>2]|0,8)|0;if((c[h>>2]|0)!=0){if(5==(Sd(c[c[g>>2]>>2]|0)|0)){i=e;return}}if((c[f>>2]|0)==0){i=e;return}j=c[f>>2]|0;h=j;h=dL(c[h>>2]|0,c[h+4>>2]|0,1,0)|0;c[j>>2]=h;c[j+4>>2]=D;i=e;return}function Xs(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=se(c[e>>2]|0,0)|0;a=c[e>>2]|0;if((c[d>>2]|0)==0){d=0;e=0;$d(a,d,e);i=b;return}e=c[d>>2]|0;d=c[e>>2]|0;e=c[e+4>>2]|0;$d(a,d,e);i=b;return}function Ys(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;o=n+36|0;l=n+32|0;h=n+28|0;m=n+24|0;q=n+20|0;j=n+16|0;g=n+8|0;k=n+4|0;p=n;r=n+12|0;c[o>>2]=b;c[l>>2]=e;c[h>>2]=f;if((Sd(c[c[h>>2]>>2]|0)|0)==5){i=n;return}c[q>>2]=se(c[o>>2]|0,28)|0;if((c[q>>2]|0)==0){i=n;return}c[p>>2]=re(c[o>>2]|0)|0;c[r>>2]=(d[(c[q>>2]|0)+24>>0]|0|0)==0&1;a[(c[q>>2]|0)+24>>0]=2;c[(c[q>>2]|0)+20>>2]=c[(c[p>>2]|0)+88>>2];if((c[r>>2]|0)==0){if((c[l>>2]|0)==2){c[j>>2]=Jd(c[(c[h>>2]|0)+4>>2]|0)|0;c[k>>2]=Kd(c[(c[h>>2]|0)+4>>2]|0)|0}else{c[j>>2]=16312;c[k>>2]=1}if((c[k>>2]|0)!=0){Jt(c[q>>2]|0,c[j>>2]|0,c[k>>2]|0)}}c[m>>2]=Jd(c[c[h>>2]>>2]|0)|0;c[g>>2]=Kd(c[c[h>>2]>>2]|0)|0;if((c[m>>2]|0)==0){i=n;return}Jt(c[q>>2]|0,c[m>>2]|0,c[g>>2]|0);i=n;return}function Zs(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;f=b+4|0;e=b;c[f>>2]=a;c[e>>2]=se(c[f>>2]|0,0)|0;if((c[e>>2]|0)==0){i=b;return}if((d[(c[e>>2]|0)+25>>0]|0|0)==2){je(c[f>>2]|0);i=b;return}a=c[f>>2]|0;if((d[(c[e>>2]|0)+25>>0]|0|0)==1){ke(a);i=b;return}else{ce(a,vc(c[e>>2]|0)|0,-1,13);i=b;return}}function _s(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=i;i=i+48|0;f=k+36|0;n=k+32|0;l=k+28|0;h=k+24|0;g=k+20|0;e=k+16|0;p=k+8|0;o=k+4|0;j=k;m=k+12|0;c[f>>2]=a;c[n>>2]=b;c[l>>2]=d;c[e>>2]=0;c[o>>2]=re(c[f>>2]|0)|0;c[g>>2]=Jd(c[c[l>>2]>>2]|0)|0;c[h>>2]=Jd(c[(c[l>>2]|0)+4>>2]|0)|0;c[p>>2]=Kd(c[c[l>>2]>>2]|0)|0;if((c[p>>2]|0)>(c[(c[o>>2]|0)+120>>2]|0)){Xd(c[f>>2]|0,16224,-1);i=k;return}do{if((c[n>>2]|0)==3){c[j>>2]=Jd(c[(c[l>>2]|0)+8>>2]|0)|0;if((c[j>>2]|0)==0){i=k;return}if((Ht(c[j>>2]|0,-1)|0)==1){c[e>>2]=It(j)|0;break}Xd(c[f>>2]|0,16264,-1);i=k;return}}while(0);if((c[h>>2]|0)==0){i=k;return}if((c[g>>2]|0)==0){i=k;return}c[m>>2]=qe(c[f>>2]|0)|0;p=c[f>>2]|0;Zd(p,Af(c[g>>2]|0,c[h>>2]|0,c[m>>2]|0,c[e>>2]|0)|0);i=k;return}function $s(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;b=a+8|0;d=a;e=a+4|0;c[d>>2]=1896;c[e>>2]=15552;c[b>>2]=0;while(1){if((c[b>>2]|0)>=8){break}rr(c[d>>2]|0,(c[e>>2]|0)+((c[b>>2]|0)*36|0)|0);c[b>>2]=(c[b>>2]|0)+1}i=a;return}function at(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;b=a+8|0;d=a;e=a+4|0;c[d>>2]=1896;c[e>>2]=15336;c[b>>2]=0;while(1){if((c[b>>2]|0)>=3){break}rr(c[d>>2]|0,(c[e>>2]|0)+((c[b>>2]|0)*36|0)|0);c[b>>2]=(c[b>>2]|0)+1}i=a;return}function bt(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+64|0;m=n;o=n+56|0;s=n+48|0;j=n+44|0;k=n+40|0;p=n+60|0;l=n+24|0;q=n+20|0;r=n+16|0;f=n+32|0;h=n+36|0;c[o>>2]=b;c[n+52>>2]=d;c[s>>2]=e;c[j>>2]=Jd(c[c[s>>2]>>2]|0)|0;c[k>>2]=Jd(c[(c[s>>2]|0)+4>>2]|0)|0;c[q>>2]=c[j>>2];c[r>>2]=0;c[h>>2]=re(c[o>>2]|0)|0;if((c[j>>2]|0)==0){i=n;return}do{if((a[c[q>>2]>>0]|0)==0){g=7;break}c[l>>2]=c[q>>2];c[l+4>>2]=c[r>>2];do{c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0);c[r>>2]=et(c[q>>2]|0,p)|0}while((c[p>>2]|0)==151)}while((c[p>>2]|0)!=22&(c[p>>2]|0)!=125);if((g|0)==7){i=n;return}s=c[h>>2]|0;e=c[j>>2]|0;d=c[k>>2]|0;b=(c[l>>2]|0)+(c[l+4>>2]|0)|0;c[m>>2]=(c[l>>2]|0)-(c[j>>2]|0);c[m+4>>2]=e;c[m+8>>2]=d;c[m+12>>2]=b;c[f>>2]=cf(s,15536,m)|0;ce(c[o>>2]|0,c[f>>2]|0,-1,39);i=n;return}function ct(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;o=i;i=i+80|0;q=o;s=o+64|0;t=o+56|0;f=o+52|0;p=o+48|0;j=o+68|0;m=o+32|0;h=o+24|0;k=o+20|0;l=o+16|0;r=o+40|0;n=o+44|0;c[s>>2]=b;c[o+60>>2]=d;c[t>>2]=e;c[f>>2]=Jd(c[c[t>>2]>>2]|0)|0;c[p>>2]=Jd(c[(c[t>>2]|0)+4>>2]|0)|0;c[h>>2]=3;c[k>>2]=c[f>>2];c[l>>2]=0;c[n>>2]=re(c[s>>2]|0)|0;if((c[f>>2]|0)==0){i=o;return}while(1){if((a[c[k>>2]>>0]|0)==0){g=8;break}c[m>>2]=c[k>>2];c[m+4>>2]=c[l>>2];do{c[k>>2]=(c[k>>2]|0)+(c[l>>2]|0);c[l>>2]=et(c[k>>2]|0,j)|0}while((c[j>>2]|0)==151);t=(c[h>>2]|0)+1|0;c[h>>2]=t;c[h>>2]=(c[j>>2]|0)==122|(c[j>>2]|0)==107?0:t;if((c[h>>2]|0)!=2){continue}if(!((c[j>>2]|0)!=137&(c[j>>2]|0)!=46&(c[j>>2]|0)!=5)){break}}if((g|0)==8){i=o;return}t=c[n>>2]|0;e=c[f>>2]|0;d=c[p>>2]|0;b=(c[m>>2]|0)+(c[m+4>>2]|0)|0;c[q>>2]=(c[m>>2]|0)-(c[f>>2]|0);c[q+4>>2]=e;c[q+8>>2]=d;c[q+12>>2]=b;c[r>>2]=cf(t,15536,q)|0;ce(c[s>>2]|0,c[r>>2]|0,-1,39);i=o;return}function dt(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;n=i;i=i+80|0;k=n;m=n+64|0;u=n+56|0;g=n+52|0;j=n+48|0;l=n+44|0;h=n+68|0;s=n+32|0;o=n+28|0;f=n+24|0;q=n+20|0;t=n+16|0;r=n+36|0;p=n+40|0;c[m>>2]=b;c[n+60>>2]=d;c[u>>2]=e;c[g>>2]=re(c[m>>2]|0)|0;c[j>>2]=0;c[h>>2]=Jd(c[c[u>>2]>>2]|0)|0;c[s>>2]=Jd(c[(c[u>>2]|0)+4>>2]|0)|0;c[o>>2]=Jd(c[(c[u>>2]|0)+8>>2]|0)|0;if((c[h>>2]|0)==0){i=n;return}if((c[s>>2]|0)==0){i=n;return}c[f>>2]=c[h>>2];while(1){if((a[c[f>>2]>>0]|0)==0){break}c[q>>2]=et(c[f>>2]|0,t)|0;if((c[t>>2]|0)==105){do{c[f>>2]=(c[f>>2]|0)+(c[q>>2]|0);c[q>>2]=et(c[f>>2]|0,t)|0}while((c[t>>2]|0)==151);c[r>>2]=ft(c[g>>2]|0,c[f>>2]|0,c[q>>2]|0)|0;if((c[r>>2]|0)==0){break}gt(c[r>>2]|0)|0;if(0==(Dc(c[s>>2]|0,c[r>>2]|0)|0)){u=c[g>>2]|0;e=(c[f>>2]|0)-(c[h>>2]|0)|0;d=c[h>>2]|0;b=c[o>>2]|0;c[k>>2]=(c[j>>2]|0)!=0?c[j>>2]|0:1784;c[k+4>>2]=e;c[k+8>>2]=d;c[k+12>>2]=b;c[p>>2]=cf(u,15520,k)|0;cc(c[g>>2]|0,c[j>>2]|0);c[j>>2]=c[p>>2];c[h>>2]=(c[f>>2]|0)+(c[q>>2]|0)}cc(c[g>>2]|0,c[r>>2]|0)}c[f>>2]=(c[f>>2]|0)+(c[q>>2]|0)}u=c[g>>2]|0;b=c[h>>2]|0;c[k>>2]=(c[j>>2]|0)!=0?c[j>>2]|0:1784;c[k+4>>2]=b;c[l>>2]=cf(u,8800,k)|0;ce(c[m>>2]|0,c[l>>2]|0,-1,39);cc(c[g>>2]|0,c[j>>2]|0);i=n;return}function et(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;f=g+24|0;h=g;m=g+4|0;j=g+8|0;k=g+12|0;n=g+16|0;o=g+20|0;c[h>>2]=b;c[m>>2]=e;do{switch(d[c[h>>2]>>0]|0){case 61:{c[c[m>>2]>>2]=79;c[f>>2]=1+((d[(c[h>>2]|0)+1>>0]|0)==61&1);b=c[f>>2]|0;i=g;return b|0};case 41:{c[c[m>>2]>>2]=23;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 40:{c[c[m>>2]>>2]=22;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 43:{c[c[m>>2]>>2]=89;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 60:{b=d[(c[h>>2]|0)+1>>0]|0;c[k>>2]=b;if((b|0)==61){c[c[m>>2]>>2]=81;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}if((c[k>>2]|0)==62){c[c[m>>2]>>2]=78;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}h=c[m>>2]|0;if((c[k>>2]|0)==60){c[h>>2]=87;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}else{c[h>>2]=82;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}};case 38:{c[c[m>>2]>>2]=85;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 47:{if((d[(c[h>>2]|0)+1>>0]|0)==42){if((d[(c[h>>2]|0)+2>>0]|0)!=0){c[j>>2]=3;c[k>>2]=d[(c[h>>2]|0)+2>>0]|0;while(1){if((c[k>>2]|0)==42){if((d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==47){break}}b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}if((c[k>>2]|0)!=0){c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=151;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0}}c[c[m>>2]>>2]=92;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 13:case 12:case 10:case 9:case 32:{c[j>>2]=1;while(1){if((a[136+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&1|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=151;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0};case 126:{c[c[m>>2]>>2]=96;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 45:{if((d[(c[h>>2]|0)+1>>0]|0)!=45){c[c[m>>2]>>2]=90;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}c[j>>2]=2;while(1){b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}if((c[k>>2]|0)==10){break}c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=151;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0};case 44:{c[c[m>>2]>>2]=26;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 34:case 39:case 96:{c[n>>2]=d[c[h>>2]>>0]|0;c[j>>2]=1;while(1){b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}if((c[k>>2]|0)==(c[n>>2]|0)){if((d[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]|0)!=(c[n>>2]|0)){break}c[j>>2]=(c[j>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}if((c[k>>2]|0)==39){c[c[m>>2]>>2]=97;c[f>>2]=(c[j>>2]|0)+1;b=c[f>>2]|0;i=g;return b|0}h=c[m>>2]|0;if((c[k>>2]|0)!=0){c[h>>2]=27;c[f>>2]=(c[j>>2]|0)+1;b=c[f>>2]|0;i=g;return b|0}else{c[h>>2]=150;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0}};case 33:{j=c[m>>2]|0;if((d[(c[h>>2]|0)+1>>0]|0)!=61){c[j>>2]=150;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}else{c[j>>2]=78;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}};case 124:{j=c[m>>2]|0;if((d[(c[h>>2]|0)+1>>0]|0)!=124){c[j>>2]=86;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}else{c[j>>2]=94;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}};case 46:{if((a[136+(d[(c[h>>2]|0)+1>>0]|0)>>0]&4|0)==0){c[c[m>>2]>>2]=122;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}break};case 62:{b=d[(c[h>>2]|0)+1>>0]|0;c[k>>2]=b;if((b|0)==61){c[c[m>>2]>>2]=83;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}h=c[m>>2]|0;if((c[k>>2]|0)==62){c[h>>2]=88;c[f>>2]=2;b=c[f>>2]|0;i=g;return b|0}else{c[h>>2]=80;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}};case 42:{c[c[m>>2]>>2]=91;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 37:{c[c[m>>2]>>2]=93;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 59:{c[c[m>>2]>>2]=1;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0};case 88:case 120:{if((d[(c[h>>2]|0)+1>>0]|0)==39){c[c[m>>2]>>2]=134;c[j>>2]=2;while(1){k=c[j>>2]|0;if((a[136+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&8|0)==0){break}c[j>>2]=k+1}if((d[(c[h>>2]|0)+k>>0]|0)!=39){l=120}else{if(((c[j>>2]|0)%2|0|0)!=0){l=120}}a:do{if((l|0)==120){c[c[m>>2]>>2]=150;while(1){if((d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==0){break a}if((d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==39){break a}c[j>>2]=(c[j>>2]|0)+1}}}while(0);if((a[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)!=0){c[j>>2]=(c[j>>2]|0)+1}c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0}else{l=127}break};case 91:{c[j>>2]=1;c[k>>2]=d[c[h>>2]>>0]|0;while(1){if((c[k>>2]|0)==93){break}b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=(c[k>>2]|0)==93?27:150;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0};case 63:{c[c[m>>2]>>2]=135;c[j>>2]=1;while(1){k=c[j>>2]|0;if((a[136+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&4|0)==0){break}c[j>>2]=k+1}c[f>>2]=k;b=c[f>>2]|0;i=g;return b|0};case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{break};case 58:case 35:case 64:case 36:{c[o>>2]=0;c[c[m>>2]>>2]=135;c[j>>2]=1;while(1){b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}if((a[136+(c[k>>2]&255)>>0]&70|0)!=0){c[o>>2]=(c[o>>2]|0)+1}else{if((c[k>>2]|0)==40){if((c[o>>2]|0)>0){l=101;break}}if((c[k>>2]|0)!=58){break}if((d[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]|0)!=58){break}c[j>>2]=(c[j>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}do{if((l|0)==101){while(1){c[j>>2]=(c[j>>2]|0)+1;b=d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0;c[k>>2]=b;if((b|0)==0){break}if((a[136+(c[k>>2]&255)>>0]&1|0)!=0){break}if((c[k>>2]|0)!=41){l=101}else{break}}if((c[k>>2]|0)==41){c[j>>2]=(c[j>>2]|0)+1;break}else{c[c[m>>2]>>2]=150;break}}}while(0);if((c[o>>2]|0)==0){c[c[m>>2]>>2]=150}c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0};default:{l=127}}}while(0);if((l|0)==127){if((a[136+(d[c[h>>2]>>0]|0)>>0]&70|0)==0){c[c[m>>2]>>2]=150;c[f>>2]=1;b=c[f>>2]|0;i=g;return b|0}c[j>>2]=1;while(1){if((a[136+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&70|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}b=$g(c[h>>2]|0,c[j>>2]|0)|0;c[c[m>>2]>>2]=b;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0}c[c[m>>2]>>2]=132;c[j>>2]=0;while(1){k=c[j>>2]|0;if((a[136+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&4|0)==0){break}c[j>>2]=k+1}if((d[(c[h>>2]|0)+k>>0]|0)==46){c[j>>2]=(c[j>>2]|0)+1;while(1){if((a[136+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&4|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=133}if((d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==101){l=75}else{if((d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)==69){l=75}}do{if((l|0)==75){if((a[136+(d[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]|0)>>0]&4|0)==0){if((d[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]|0)!=43){if((d[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]|0)!=45){break}}if((a[136+(d[(c[h>>2]|0)+((c[j>>2]|0)+2)>>0]|0)>>0]&4|0)==0){break}}c[j>>2]=(c[j>>2]|0)+2;while(1){if((a[136+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&4|0)==0){break}c[j>>2]=(c[j>>2]|0)+1}c[c[m>>2]>>2]=133}}while(0);while(1){if((a[136+(d[(c[h>>2]|0)+(c[j>>2]|0)>>0]|0)>>0]&70|0)==0){break}c[c[m>>2]>>2]=150;c[j>>2]=(c[j>>2]|0)+1}c[f>>2]=c[j>>2];b=c[f>>2]|0;i=g;return b|0}function ft(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;l=f;j=f+4|0;k=f+8|0;h=f+12|0;c[l>>2]=b;c[j>>2]=d;c[k>>2]=e;if((c[j>>2]|0)==0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}c[h>>2]=$e(c[l>>2]|0,(c[k>>2]|0)+1|0)|0;if((c[h>>2]|0)!=0){fL(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;a[(c[h>>2]|0)+(c[k>>2]|0)>>0]=0}c[g>>2]=c[h>>2];b=c[g>>2]|0;i=f;return b|0}function gt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+12|0;g=d;h=d+16|0;f=d+8|0;j=d+4|0;c[g>>2]=b;if((c[g>>2]|0)==0){c[e>>2]=-1;b=c[e>>2]|0;i=d;return b|0}a[h>>0]=a[c[g>>2]>>0]|0;b=a[h>>0]|0;if((b|0)==91){a[h>>0]=93}else if(!((b|0)==96|(b|0)==34|(b|0)==39)){c[e>>2]=-1;b=c[e>>2]|0;i=d;return b|0}c[f>>2]=1;c[j>>2]=0;while(1){b=c[f>>2]|0;if((a[(c[g>>2]|0)+(c[f>>2]|0)>>0]|0)==(a[h>>0]|0)){if((a[(c[g>>2]|0)+(b+1)>>0]|0)!=(a[h>>0]|0)){break}k=a[h>>0]|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[g>>2]|0)+b>>0]=k;c[f>>2]=(c[f>>2]|0)+1}else{b=a[(c[g>>2]|0)+b>>0]|0;k=c[j>>2]|0;c[j>>2]=k+1;a[(c[g>>2]|0)+k>>0]=b}c[f>>2]=(c[f>>2]|0)+1}a[(c[g>>2]|0)+(c[j>>2]|0)>>0]=0;c[e>>2]=c[j>>2];k=c[e>>2]|0;i=d;return k|0}function ht(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+64|0;g=e+56|0;j=e+52|0;h=e+48|0;f=e;c[g>>2]=a;c[j>>2]=b;c[h>>2]=d;if((pt(c[g>>2]|0,c[j>>2]|0,c[h>>2]|0,f)|0)!=0){i=e;return}qt(f);j=f;Vd(c[g>>2]|0,(+((c[j>>2]|0)>>>0)+4294967296.0*+(c[j+4>>2]|0))/864.0e5);i=e;return}function it(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+176|0;g=e+48|0;j=e+68|0;l=e+64|0;k=e+60|0;f=e;h=e+72|0;c[j>>2]=a;c[l>>2]=b;c[k>>2]=d;if((pt(c[j>>2]|0,c[l>>2]|0,c[k>>2]|0,f)|0)!=0){i=e;return}st(f);k=c[f+12>>2]|0;l=c[f+16>>2]|0;c[g>>2]=c[f+8>>2];c[g+4>>2]=k;c[g+8>>2]=l;yc(100,h,16208,g)|0;ce(c[j>>2]|0,h,-1,-1);i=e;return}function jt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0;e=i;i=i+176|0;g=e+48|0;k=e+68|0;m=e+64|0;l=e+60|0;f=e;j=e+72|0;c[k>>2]=a;c[m>>2]=b;c[l>>2]=d;if((pt(c[k>>2]|0,c[m>>2]|0,c[l>>2]|0,f)|0)!=0){i=e;return}tt(f);l=c[f+24>>2]|0;m=~~+h[f+32>>3];c[g>>2]=c[f+20>>2];c[g+4>>2]=l;c[g+8>>2]=m;yc(100,j,16192,g)|0;ce(c[k>>2]|0,j,-1,-1);i=e;return}function kt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0;e=i;i=i+192|0;g=e+48|0;k=e+80|0;m=e+76|0;l=e+72|0;f=e;j=e+84|0;c[k>>2]=a;c[m>>2]=b;c[l>>2]=d;if((pt(c[k>>2]|0,c[m>>2]|0,c[l>>2]|0,f)|0)!=0){i=e;return}rt(f);d=c[f+12>>2]|0;b=c[f+16>>2]|0;a=c[f+20>>2]|0;l=c[f+24>>2]|0;m=~~+h[f+32>>3];c[g>>2]=c[f+8>>2];c[g+4>>2]=d;c[g+8>>2]=b;c[g+12>>2]=a;c[g+16>>2]=l;c[g+20>>2]=m;yc(100,j,16160,g)|0;ce(c[k>>2]|0,j,-1,-1);i=e;return}function lt(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=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;t=i;i=i+272|0;q=t+112|0;l=t+152|0;y=t+148|0;z=t+144|0;p=t+64|0;x=t+48|0;n=t+140|0;j=t+136|0;o=t+156|0;w=t+124|0;f=t+120|0;m=t+160|0;r=t+56|0;g=t+128|0;s=t;u=t+132|0;c[l>>2]=b;c[y>>2]=d;c[z>>2]=e;c[f>>2]=Jd(c[c[z>>2]>>2]|0)|0;if((c[f>>2]|0)==0){i=t;return}if((pt(c[l>>2]|0,(c[y>>2]|0)-1|0,(c[z>>2]|0)+4|0,p)|0)!=0){i=t;return}c[w>>2]=re(c[l>>2]|0)|0;c[n>>2]=0;b=x;c[b>>2]=1;c[b+4>>2]=0;a:while(1){if((a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0)==0){break}if((a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0)==37){switch(a[(c[f>>2]|0)+((c[n>>2]|0)+1)>>0]|0){case 102:{d=x;b=x;c[b>>2]=dL(c[d>>2]|0,c[d+4>>2]|0,8,0)|0;c[b+4>>2]=D;break};case 87:case 83:case 77:case 109:case 72:case 100:{d=x;b=x;c[b>>2]=dL(c[d>>2]|0,c[d+4>>2]|0,1,0)|0;c[b+4>>2]=D;break};case 106:{d=x;b=x;c[b>>2]=dL(c[d>>2]|0,c[d+4>>2]|0,3,0)|0;c[b+4>>2]=D;break};case 74:case 115:{d=x;b=x;c[b>>2]=dL(c[d>>2]|0,c[d+4>>2]|0,50,0)|0;c[b+4>>2]=D;break};case 37:case 119:{break};case 89:{d=x;b=x;c[b>>2]=dL(c[d>>2]|0,c[d+4>>2]|0,8,0)|0;c[b+4>>2]=D;break};default:{v=43;break a}}c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1;d=x;d=dL(c[d>>2]|0,c[d+4>>2]|0,1,0)|0;b=x;c[b>>2]=d;c[b+4>>2]=D}if((v|0)==43){i=t;return}b=x;d=c[b+4>>2]|0;if(d>>>0<0|(d|0)==0&(c[b>>2]|0)>>>0<100){c[o>>2]=m}else{d=x;z=c[d+4>>2]|0;b=c[(c[w>>2]|0)+88>>2]|0;e=((b|0)<0)<<31>>31;if(z>>>0>e>>>0|((z|0)==(e|0)?(c[d>>2]|0)>>>0>b>>>0:0)){je(c[l>>2]|0);i=t;return}c[o>>2]=$e(c[w>>2]|0,c[x>>2]|0)|0;if((c[o>>2]|0)==0){ke(c[l>>2]|0);i=t;return}}qt(p);rt(p);c[j>>2]=0;c[n>>2]=0;while(1){if((a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0)==0){break}v=c[n>>2]|0;b:do{if((a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0)!=37){d=a[(c[f>>2]|0)+v>>0]|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[o>>2]|0)+b>>0]=d}else{c[n>>2]=v+1;do{switch(a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0){case 89:{b=(c[o>>2]|0)+(c[j>>2]|0)|0;c[q>>2]=c[p+8>>2];yc(5,b,16e3,q)|0;c[j>>2]=(Ub((c[o>>2]|0)+(c[j>>2]|0)|0)|0)+(c[j>>2]|0);break b};case 77:{b=(c[o>>2]|0)+(c[j>>2]|0)|0;c[q>>2]=c[p+24>>2];yc(3,b,15960,q)|0;c[j>>2]=(c[j>>2]|0)+2;break b};case 119:{d=p;d=mL(lL(dL(c[d>>2]|0,c[d+4>>2]|0,1296e5,0)|0,D|0,864e5,0)|0,D|0,7,0)|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[o>>2]|0)+b>>0]=((d&255)<<24>>24)+48;break b};case 115:{b=(c[o>>2]|0)+(c[j>>2]|0)|0;e=p;d=q;c[d>>2]=$K(lL(c[e>>2]|0,c[e+4>>2]|0,1e3,0)|0,D|0,413362496,49)|0;c[d+4>>2]=D;yc(30,b,15992,q)|0;c[j>>2]=(Ub((c[o>>2]|0)+(c[j>>2]|0)|0)|0)+(c[j>>2]|0);break b};case 100:{b=(c[o>>2]|0)+(c[j>>2]|0)|0;c[q>>2]=c[p+16>>2];yc(3,b,15960,q)|0;c[j>>2]=(c[j>>2]|0)+2;break b};case 102:{h[r>>3]=+h[p+32>>3];if(+h[r>>3]>59.999){h[r>>3]=59.999}b=(c[o>>2]|0)+(c[j>>2]|0)|0;h[k>>3]=+h[r>>3];c[q>>2]=c[k>>2];c[q+4>>2]=c[k+4>>2];yc(7,b,15968,q)|0;c[j>>2]=(Ub((c[o>>2]|0)+(c[j>>2]|0)|0)|0)+(c[j>>2]|0);break b};case 72:{b=(c[o>>2]|0)+(c[j>>2]|0)|0;c[q>>2]=c[p+20>>2];yc(3,b,15960,q)|0;c[j>>2]=(c[j>>2]|0)+2;break b};case 106:case 87:{x=s+0|0;w=p+0|0;v=x+48|0;do{c[x>>2]=c[w>>2];x=x+4|0;w=w+4|0}while((x|0)<(v|0));a[s+42>>0]=0;c[s+12>>2]=1;c[s+16>>2]=1;qt(s);d=p;b=s;c[g>>2]=lL(dL($K(c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0,D|0,432e5,0)|0,D|0,864e5,0)|0;if((a[(c[f>>2]|0)+(c[n>>2]|0)>>0]|0)==87){b=p;b=dL(c[b>>2]|0,c[b+4>>2]|0,432e5,0)|0;b=lL(b|0,D|0,864e5,0)|0;b=mL(b|0,D|0,7,0)|0;c[u>>2]=b;b=(c[o>>2]|0)+(c[j>>2]|0)|0;c[q>>2]=((c[g>>2]|0)+7-(c[u>>2]|0)|0)/7|0;yc(3,b,15960,q)|0;c[j>>2]=(c[j>>2]|0)+2;break b}else{b=(c[o>>2]|0)+(c[j>>2]|0)|0;c[q>>2]=(c[g>>2]|0)+1;yc(4,b,15976,q)|0;c[j>>2]=(c[j>>2]|0)+3;break b}};case 74:{b=(c[o>>2]|0)+(c[j>>2]|0)|0;d=p;h[k>>3]=(+((c[d>>2]|0)>>>0)+4294967296.0*+(c[d+4>>2]|0))/864.0e5;c[q>>2]=c[k>>2];c[q+4>>2]=c[k+4>>2];yc(20,b,15984,q)|0;c[j>>2]=(Ub((c[o>>2]|0)+(c[j>>2]|0)|0)|0)+(c[j>>2]|0);break b};case 109:{b=(c[o>>2]|0)+(c[j>>2]|0)|0;c[q>>2]=c[p+12>>2];yc(3,b,15960,q)|0;c[j>>2]=(c[j>>2]|0)+2;break b};case 83:{b=(c[o>>2]|0)+(c[j>>2]|0)|0;c[q>>2]=~~+h[p+32>>3];yc(3,b,15960,q)|0;c[j>>2]=(c[j>>2]|0)+2;break b};default:{b=c[j>>2]|0;c[j>>2]=b+1;a[(c[o>>2]|0)+b>>0]=37;break b}}}while(0)}}while(0);c[n>>2]=(c[n>>2]|0)+1}a[(c[o>>2]|0)+(c[j>>2]|0)>>0]=0;ce(c[l>>2]|0,c[o>>2]|0,-1,(c[o>>2]|0)==(m|0)?-1:39);i=t;return}function mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e>>2]=b;c[e+4>>2]=d;jt(c[f>>2]|0,0,0);i=e;return}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e>>2]=b;c[e+4>>2]=d;kt(c[f>>2]|0,0,0);i=e;return}function ot(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e>>2]=b;c[e+4>>2]=d;it(c[f>>2]|0,0,0);i=e;return}function pt(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;n=i;i=i+32|0;m=n+28|0;k=n;j=n+4|0;o=n+8|0;l=n+12|0;p=n+16|0;q=n+20|0;g=n+24|0;c[k>>2]=b;c[j>>2]=d;c[o>>2]=e;c[l>>2]=f;e=(c[l>>2]|0)+0|0;f=e+48|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));if((c[j>>2]|0)==0){c[m>>2]=ut(c[k>>2]|0,c[l>>2]|0)|0;b=c[m>>2]|0;i=n;return b|0}b=Sd(c[c[o>>2]>>2]|0)|0;c[g>>2]=b;do{if((b|0)==2){h=5}else{if((c[g>>2]|0)==1){h=5}else{c[q>>2]=Jd(c[c[o>>2]>>2]|0)|0;if((c[q>>2]|0)!=0){if((vt(c[k>>2]|0,c[q>>2]|0,c[l>>2]|0)|0)==0){break}}c[m>>2]=1;b=c[m>>2]|0;i=n;return b|0}}}while(0);if((h|0)==5){r=+Md(c[c[o>>2]>>2]|0)*864.0e5+.5;d=+O(r)>=1.0?r>0.0?(ea(+N(r/4294967296.0),4294967295.0)|0)>>>0:~~+_((r- +(~~r>>>0))/4294967296.0)>>>0:0;b=c[l>>2]|0;c[b>>2]=~~r>>>0;c[b+4>>2]=d;a[(c[l>>2]|0)+42>>0]=1}c[p>>2]=1;while(1){if((c[p>>2]|0)>=(c[j>>2]|0)){h=15;break}c[q>>2]=Jd(c[(c[o>>2]|0)+(c[p>>2]<<2)>>2]|0)|0;if((c[q>>2]|0)==0){h=13;break}if((wt(c[k>>2]|0,c[q>>2]|0,c[l>>2]|0)|0)!=0){h=13;break}c[p>>2]=(c[p>>2]|0)+1}if((h|0)==13){c[m>>2]=1;b=c[m>>2]|0;i=n;return b|0}else if((h|0)==15){c[m>>2]=0;b=c[m>>2]|0;i=n;return b|0}return 0}function qt(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0;d=i;i=i+32|0;n=d+28|0;e=d;k=d+4|0;m=d+8|0;f=d+12|0;g=d+16|0;j=d+20|0;l=d+24|0;c[n>>2]=b;if((a[(c[n>>2]|0)+42>>0]|0)!=0){i=d;return}if((a[(c[n>>2]|0)+40>>0]|0)!=0){c[e>>2]=c[(c[n>>2]|0)+8>>2];c[k>>2]=c[(c[n>>2]|0)+12>>2];c[m>>2]=c[(c[n>>2]|0)+16>>2]}else{c[e>>2]=2e3;c[k>>2]=1;c[m>>2]=1}if((c[k>>2]|0)<=2){c[e>>2]=(c[e>>2]|0)+ -1;c[k>>2]=(c[k>>2]|0)+12}c[f>>2]=(c[e>>2]|0)/100|0;c[g>>2]=2-(c[f>>2]|0)+((c[f>>2]|0)/4|0);c[j>>2]=(((c[e>>2]|0)+4716|0)*36525|0)/100|0;c[l>>2]=(((c[k>>2]|0)+1|0)*306001|0)/1e4|0;o=(+((c[j>>2]|0)+(c[l>>2]|0)+(c[m>>2]|0)+(c[g>>2]|0)|0)-1524.5)*864.0e5;l=+O(o)>=1.0?o>0.0?(ea(+N(o/4294967296.0),4294967295.0)|0)>>>0:~~+_((o- +(~~o>>>0))/4294967296.0)>>>0:0;m=c[n>>2]|0;c[m>>2]=~~o>>>0;c[m+4>>2]=l;a[(c[n>>2]|0)+42>>0]=1;if((a[(c[n>>2]|0)+41>>0]|0)==0){i=d;return}l=$(c[(c[n>>2]|0)+20>>2]|0,36e5)|0;l=l+((c[(c[n>>2]|0)+24>>2]|0)*6e4|0)|0;o=+h[(c[n>>2]|0)+32>>3]*1.0e3;l=dL(l|0,((l|0)<0)<<31>>31|0,~~o>>>0|0,(+O(o)>=1.0?o>0.0?(ea(+N(o/4294967296.0),4294967295.0)|0)>>>0:~~+_((o- +(~~o>>>0))/4294967296.0)>>>0:0)|0)|0;m=c[n>>2]|0;k=m;l=dL(c[k>>2]|0,c[k+4>>2]|0,l|0,D|0)|0;c[m>>2]=l;c[m+4>>2]=D;if((a[(c[n>>2]|0)+43>>0]|0)==0){i=d;return}l=(c[(c[n>>2]|0)+28>>2]|0)*6e4|0;m=c[n>>2]|0;k=m;l=$K(c[k>>2]|0,c[k+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;c[m>>2]=l;c[m+4>>2]=D;a[(c[n>>2]|0)+40>>0]=0;a[(c[n>>2]|0)+41>>0]=0;a[(c[n>>2]|0)+43>>0]=0;i=d;return}function rt(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;st(c[d>>2]|0);tt(c[d>>2]|0);i=b;return}function st(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;e=h+28|0;f=h;g=h+4|0;d=h+8|0;j=h+12|0;k=h+16|0;l=h+20|0;m=h+24|0;c[e>>2]=b;if((a[(c[e>>2]|0)+40>>0]|0)!=0){i=h;return}b=c[e>>2]|0;if((a[(c[e>>2]|0)+42>>0]|0)!=0){b=dL(c[b>>2]|0,c[b+4>>2]|0,432e5,0)|0;b=lL(b|0,D|0,864e5,0)|0;c[f>>2]=b;c[g>>2]=~~((+(c[f>>2]|0)-1867216.25)/36524.25);c[g>>2]=(c[f>>2]|0)+1+(c[g>>2]|0)-((c[g>>2]|0)/4|0);c[d>>2]=(c[g>>2]|0)+1524;c[j>>2]=~~((+(c[d>>2]|0)-122.1)/365.25);c[k>>2]=((c[j>>2]|0)*36525|0)/100|0;c[l>>2]=~~(+((c[d>>2]|0)-(c[k>>2]|0)|0)/30.6001);c[m>>2]=~~(+(c[l>>2]|0)*30.6001);c[(c[e>>2]|0)+16>>2]=(c[d>>2]|0)-(c[k>>2]|0)-(c[m>>2]|0);b=c[l>>2]|0;c[(c[e>>2]|0)+12>>2]=(c[l>>2]|0)<14?b-1|0:b-13|0;b=c[j>>2]|0;c[(c[e>>2]|0)+8>>2]=(c[(c[e>>2]|0)+12>>2]|0)>2?b-4716|0:b-4715|0}else{c[b+8>>2]=2e3;c[(c[e>>2]|0)+12>>2]=1;c[(c[e>>2]|0)+16>>2]=1}a[(c[e>>2]|0)+40>>0]=1;i=h;return}function tt(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;if((a[(c[e>>2]|0)+41>>0]|0)!=0){i=d;return}qt(c[e>>2]|0);b=c[e>>2]|0;b=dL(c[b>>2]|0,c[b+4>>2]|0,432e5,0)|0;b=mL(b|0,D|0,864e5,0)|0;c[f>>2]=b;h[(c[e>>2]|0)+32>>3]=+(c[f>>2]|0)/1.0e3;c[f>>2]=~~+h[(c[e>>2]|0)+32>>3];b=(c[e>>2]|0)+32|0;h[b>>3]=+h[b>>3]- +(c[f>>2]|0);c[(c[e>>2]|0)+20>>2]=(c[f>>2]|0)/3600|0;c[f>>2]=(c[f>>2]|0)-((c[(c[e>>2]|0)+20>>2]|0)*3600|0);c[(c[e>>2]|0)+24>>2]=(c[f>>2]|0)/60|0;b=(c[e>>2]|0)+32|0;h[b>>3]=+h[b>>3]+ +((c[f>>2]|0)-((c[(c[e>>2]|0)+24>>2]|0)*60|0)|0);a[(c[e>>2]|0)+41>>0]=1;i=d;return}function ut(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e;g=e+4|0;c[h>>2]=b;c[g>>2]=d;d=Ft(c[h>>2]|0)|0;b=c[g>>2]|0;c[b>>2]=d;c[b+4>>2]=D;b=c[g>>2]|0;d=c[b+4>>2]|0;if((d|0)>0|(d|0)==0&(c[b>>2]|0)>>>0>0){a[(c[g>>2]|0)+42>>0]=1;c[f>>2]=0;h=c[f>>2]|0;i=e;return h|0}else{c[f>>2]=1;h=c[f>>2]|0;i=e;return h|0}return 0}function vt(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0.0;f=i;i=i+32|0;g=f+20|0;j=f+16|0;l=f+8|0;k=f+12|0;m=f;c[j>>2]=b;c[l>>2]=d;c[k>>2]=e;if((Et(c[l>>2]|0,c[k>>2]|0)|0)==0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}if((At(c[l>>2]|0,c[k>>2]|0)|0)==0){c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}if((Dc(c[l>>2]|0,16152)|0)==0){c[g>>2]=ut(c[j>>2]|0,c[k>>2]|0)|0;b=c[g>>2]|0;i=f;return b|0}b=c[l>>2]|0;if((zt(b,m,Ub(c[l>>2]|0)|0,1)|0)!=0){n=+h[m>>3]*864.0e5+.5;d=+O(n)>=1.0?n>0.0?(ea(+N(n/4294967296.0),4294967295.0)|0)>>>0:~~+_((n- +(~~n>>>0))/4294967296.0)>>>0:0;b=c[k>>2]|0;c[b>>2]=~~n>>>0;c[b+4>>2]=d;a[(c[k>>2]|0)+42>>0]=1;c[g>>2]=0;b=c[g>>2]|0;i=f;return b|0}else{c[g>>2]=1;b=c[g>>2]|0;i=f;return b|0}return 0}function wt(b,e,f){b=b|0;e=e|0;f=f|0;var g=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.0;g=i;i=i+160|0;z=g+124|0;y=g+120|0;j=g+116|0;l=g+112|0;t=g+108|0;u=g+8|0;k=g+104|0;w=g+80|0;x=g+72|0;p=g;m=g+96|0;n=g+24|0;o=g+16|0;r=g+100|0;q=g+88|0;s=g+92|0;c[z>>2]=b;c[y>>2]=e;c[j>>2]=f;c[l>>2]=1;c[k>>2]=g+128;c[t>>2]=0;while(1){if((c[t>>2]|0)<29){e=(a[(c[y>>2]|0)+(c[t>>2]|0)>>0]|0)!=0}else{e=0}f=c[t>>2]|0;if(!e){break}a[(c[k>>2]|0)+(c[t>>2]|0)>>0]=a[784+(d[(c[y>>2]|0)+f>>0]|0)>>0]|0;c[t>>2]=(c[t>>2]|0)+1}a[(c[k>>2]|0)+f>>0]=0;switch(a[c[k>>2]>>0]|0){case 119:{if((ZK(c[k>>2]|0,16048,8)|0)!=0){b=c[l>>2]|0;i=g;return b|0}if((zt((c[k>>2]|0)+8|0,u,Ub((c[k>>2]|0)+8|0)|0,1)|0)==0){b=c[l>>2]|0;i=g;return b|0}b=~~+h[u>>3];c[t>>2]=b;if(!(+(b|0)==+h[u>>3])){b=c[l>>2]|0;i=g;return b|0}if((c[t>>2]|0)<0){b=c[l>>2]|0;i=g;return b|0}if(!(+h[u>>3]<7.0)){b=c[l>>2]|0;i=g;return b|0}rt(c[j>>2]|0);a[(c[j>>2]|0)+43>>0]=0;a[(c[j>>2]|0)+42>>0]=0;qt(c[j>>2]|0);z=c[j>>2]|0;e=x;c[e>>2]=mL(lL(dL(c[z>>2]|0,c[z+4>>2]|0,1296e5,0)|0,D|0,864e5,0)|0,D|0,7,0)|0;c[e+4>>2]=D;e=x;z=c[e+4>>2]|0;b=c[t>>2]|0;f=((b|0)<0)<<31>>31;if((z|0)>(f|0)|((z|0)==(f|0)?(c[e>>2]|0)>>>0>b>>>0:0)){e=x;e=$K(c[e>>2]|0,c[e+4>>2]|0,7,0)|0;b=x;c[b>>2]=e;c[b+4>>2]=D}b=c[t>>2]|0;e=x;e=nL($K(b|0,((b|0)<0)<<31>>31|0,c[e>>2]|0,c[e+4>>2]|0)|0,D|0,864e5,0)|0;b=c[j>>2]|0;f=b;c[b>>2]=dL(c[f>>2]|0,c[f+4>>2]|0,e|0,D|0)|0;c[b+4>>2]=D;yt(c[j>>2]|0);c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0};case 108:{if((YK(c[k>>2]|0,16008)|0)!=0){b=c[l>>2]|0;i=g;return b|0}qt(c[j>>2]|0);e=xt(c[j>>2]|0,c[z>>2]|0,l)|0;b=c[j>>2]|0;f=b;c[b>>2]=dL(c[f>>2]|0,c[f+4>>2]|0,e|0,D|0)|0;c[b+4>>2]=D;yt(c[j>>2]|0);b=c[l>>2]|0;i=g;return b|0};case 115:{if((ZK(c[k>>2]|0,16064,9)|0)!=0){b=c[l>>2]|0;i=g;return b|0}c[k>>2]=(c[k>>2]|0)+9;st(c[j>>2]|0);a[(c[j>>2]|0)+41>>0]=1;c[(c[j>>2]|0)+24>>2]=0;c[(c[j>>2]|0)+20>>2]=0;h[(c[j>>2]|0)+32>>3]=0.0;a[(c[j>>2]|0)+43>>0]=0;a[(c[j>>2]|0)+42>>0]=0;if((YK(c[k>>2]|0,16080)|0)==0){c[(c[j>>2]|0)+16>>2]=1;c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}if((YK(c[k>>2]|0,16088)|0)==0){st(c[j>>2]|0);c[(c[j>>2]|0)+12>>2]=1;c[(c[j>>2]|0)+16>>2]=1;c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}if((YK(c[k>>2]|0,16096)|0)!=0){b=c[l>>2]|0;i=g;return b|0}c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0};case 117:{if((YK(c[k>>2]|0,16024)|0)==0){if((a[(c[j>>2]|0)+42>>0]|0)!=0){e=c[j>>2]|0;e=dL(c[e>>2]|0,c[e+4>>2]|0,43200,0)|0;e=lL(e|0,D|0,86400,0)|0;e=dL(e|0,D|0,1045635584,49096)|0;b=c[j>>2]|0;c[b>>2]=e;c[b+4>>2]=D;yt(c[j>>2]|0);c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}}if((YK(c[k>>2]|0,16040)|0)!=0){b=c[l>>2]|0;i=g;return b|0}qt(c[j>>2]|0);b=w;c[b>>2]=xt(c[j>>2]|0,c[z>>2]|0,l)|0;c[b+4>>2]=D;if((c[l>>2]|0)!=0){b=c[l>>2]|0;i=g;return b|0}b=w;e=c[j>>2]|0;f=e;c[e>>2]=$K(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;c[e+4>>2]=D;yt(c[j>>2]|0);e=w;b=c[e>>2]|0;e=c[e+4>>2]|0;e=$K(b|0,e|0,xt(c[j>>2]|0,c[z>>2]|0,l)|0,D|0)|0;b=c[j>>2]|0;f=b;c[b>>2]=dL(c[f>>2]|0,c[f+4>>2]|0,e|0,D|0)|0;c[b+4>>2]=D;b=c[l>>2]|0;i=g;return b|0};case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:case 45:case 43:{c[t>>2]=1;while(1){if((a[(c[k>>2]|0)+(c[t>>2]|0)>>0]|0)==0){break}if((a[(c[k>>2]|0)+(c[t>>2]|0)>>0]|0)==58){break}if(!((a[136+(d[(c[k>>2]|0)+(c[t>>2]|0)>>0]|0)>>0]&1|0)!=0^1)){break}c[t>>2]=(c[t>>2]|0)+1}if((zt(c[k>>2]|0,u,c[t>>2]|0,1)|0)==0){c[l>>2]=1;b=c[l>>2]|0;i=g;return b|0}if((a[(c[k>>2]|0)+(c[t>>2]|0)>>0]|0)==58){c[m>>2]=c[k>>2];if((a[136+(d[c[m>>2]>>0]|0)>>0]&4|0)==0){c[m>>2]=(c[m>>2]|0)+1}q=n+0|0;p=q+48|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(p|0));if((At(c[m>>2]|0,n)|0)!=0){b=c[l>>2]|0;i=g;return b|0}qt(n);e=n;e=$K(c[e>>2]|0,c[e+4>>2]|0,432e5,0)|0;b=n;c[b>>2]=e;c[b+4>>2]=D;b=n;b=lL(c[b>>2]|0,c[b+4>>2]|0,864e5,0)|0;e=o;c[e>>2]=b;c[e+4>>2]=D;e=o;e=nL(c[e>>2]|0,c[e+4>>2]|0,864e5,0)|0;b=n;e=$K(c[b>>2]|0,c[b+4>>2]|0,e|0,D|0)|0;b=n;c[b>>2]=e;c[b+4>>2]=D;if((a[c[k>>2]>>0]|0)==45){e=n;e=$K(0,0,c[e>>2]|0,c[e+4>>2]|0)|0;b=n;c[b>>2]=e;c[b+4>>2]=D}qt(c[j>>2]|0);yt(c[j>>2]|0);e=n;b=c[j>>2]|0;f=b;e=dL(c[f>>2]|0,c[f+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;c[b>>2]=e;c[b+4>>2]=D;c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}c[k>>2]=(c[k>>2]|0)+(c[t>>2]|0);while(1){m=c[k>>2]|0;if((a[136+(d[c[k>>2]>>0]|0)>>0]&1|0)==0){break}c[k>>2]=m+1}c[t>>2]=Ub(m)|0;if((c[t>>2]|0)>10|(c[t>>2]|0)<3){b=c[l>>2]|0;i=g;return b|0}if((a[(c[k>>2]|0)+((c[t>>2]|0)-1)>>0]|0)==115){a[(c[k>>2]|0)+((c[t>>2]|0)-1)>>0]=0;c[t>>2]=(c[t>>2]|0)+ -1}qt(c[j>>2]|0);c[l>>2]=0;h[p>>3]=+h[u>>3]<0.0?-.5:.5;if((c[t>>2]|0)==3){if((YK(c[k>>2]|0,16096)|0)==0){A=+h[u>>3]*864.0e5+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=dL(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D}else{v=53}}else{v=53}do{if((v|0)==53){if((c[t>>2]|0)==4){if((YK(c[k>>2]|0,16104)|0)==0){A=+h[u>>3]*36.0e5+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=dL(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D;break}}if((c[t>>2]|0)==6){if((YK(c[k>>2]|0,16112)|0)==0){A=+h[u>>3]*6.0e4+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=dL(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D;break}}if((c[t>>2]|0)==6){if((YK(c[k>>2]|0,16120)|0)==0){A=+h[u>>3]*1.0e3+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=dL(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D;break}}if((c[t>>2]|0)==5){if((YK(c[k>>2]|0,16080)|0)==0){rt(c[j>>2]|0);b=(c[j>>2]|0)+12|0;c[b>>2]=(c[b>>2]|0)+~~+h[u>>3];b=c[(c[j>>2]|0)+12>>2]|0;c[r>>2]=(((c[(c[j>>2]|0)+12>>2]|0)>0?b-1|0:b-12|0)|0)/12|0;b=(c[j>>2]|0)+8|0;c[b>>2]=(c[b>>2]|0)+(c[r>>2]|0);b=(c[j>>2]|0)+12|0;c[b>>2]=(c[b>>2]|0)-((c[r>>2]|0)*12|0);a[(c[j>>2]|0)+42>>0]=0;qt(c[j>>2]|0);c[q>>2]=~~+h[u>>3];if(!(+(c[q>>2]|0)!=+h[u>>3])){break}A=(+h[u>>3]- +(c[q>>2]|0))*30.0*864.0e5+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=dL(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D;break}}if((c[t>>2]|0)==4){if((YK(c[k>>2]|0,16088)|0)==0){c[s>>2]=~~+h[u>>3];rt(c[j>>2]|0);b=(c[j>>2]|0)+8|0;c[b>>2]=(c[b>>2]|0)+(c[s>>2]|0);a[(c[j>>2]|0)+42>>0]=0;qt(c[j>>2]|0);if(!(+(c[s>>2]|0)!=+h[u>>3])){break}A=(+h[u>>3]- +(c[s>>2]|0))*365.0*864.0e5+ +h[p>>3];e=+O(A)>=1.0?A>0.0?(ea(+N(A/4294967296.0),4294967295.0)|0)>>>0:~~+_((A- +(~~A>>>0))/4294967296.0)>>>0:0;b=c[j>>2]|0;f=b;e=dL(c[f>>2]|0,c[f+4>>2]|0,~~A>>>0|0,e|0)|0;c[b>>2]=e;c[b+4>>2]=D;break}}c[l>>2]=1}}while(0);yt(c[j>>2]|0);b=c[l>>2]|0;i=g;return b|0};default:{b=c[l>>2]|0;i=g;return b|0}}return 0}function xt(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=i;i=i+176|0;q=p+96|0;r=p+108|0;o=p+104|0;f=p+164|0;j=p+48|0;k=p;m=p+112|0;n=p+116|0;l=p+160|0;c[r>>2]=b;c[o>>2]=d;c[f>>2]=e;d=n+0|0;e=d+44|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));d=j+0|0;r=(c[r>>2]|0)+0|0;e=d+48|0;do{c[d>>2]=c[r>>2];d=d+4|0;r=r+4|0}while((d|0)<(e|0));rt(j);if((c[j+8>>2]|0)<1971){g=3}else{if((c[j+8>>2]|0)>=2038){g=3}else{c[l>>2]=~~(+h[j+32>>3]+.5);h[j+32>>3]=+(c[l>>2]|0)}}if((g|0)==3){c[j+8>>2]=2e3;c[j+12>>2]=1;c[j+16>>2]=1;c[j+20>>2]=0;c[j+24>>2]=0;h[j+32>>3]=0.0}c[j+28>>2]=0;a[j+42>>0]=0;qt(j);b=j;b=lL(c[b>>2]|0,c[b+4>>2]|0,1e3,0)|0;b=$K(b|0,D|0,413362496,49)|0;c[m>>2]=b;if((Dt(m,n)|0)!=0){Xd(c[o>>2]|0,16128,-1);c[c[f>>2]>>2]=1;d=q;c[d>>2]=0;c[d+4>>2]=0;d=q;b=d;b=c[b>>2]|0;d=d+4|0;d=c[d>>2]|0;D=d;i=p;return b|0}else{c[k+8>>2]=(c[n+20>>2]|0)+1900;c[k+12>>2]=(c[n+16>>2]|0)+1;c[k+16>>2]=c[n+12>>2];c[k+20>>2]=c[n+8>>2];c[k+24>>2]=c[n+4>>2];h[k+32>>3]=+(c[n>>2]|0);a[k+40>>0]=1;a[k+41>>0]=1;a[k+42>>0]=0;a[k+43>>0]=0;qt(k);c[c[f>>2]>>2]=0;d=k;b=j;b=$K(c[d>>2]|0,c[d+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;d=q;c[d>>2]=b;c[d+4>>2]=D;d=q;b=d;b=c[b>>2]|0;d=d+4|0;d=c[d>>2]|0;D=d;i=p;return b|0}return 0}function yt(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;a[(c[e>>2]|0)+40>>0]=0;a[(c[e>>2]|0)+41>>0]=0;a[(c[e>>2]|0)+43>>0]=0;i=d;return}function zt(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0.0,G=0.0;k=i;i=i+96|0;j=k+76|0;q=k+72|0;p=k+68|0;C=k+64|0;E=k+80|0;x=k+60|0;r=k+56|0;z=k+52|0;y=k;w=k+48|0;s=k+36|0;v=k+32|0;m=k+28|0;o=k+8|0;l=k+40|0;n=k+44|0;B=k+24|0;u=k+16|0;c[q>>2]=b;c[p>>2]=e;c[C>>2]=f;a[E>>0]=g;c[r>>2]=(c[q>>2]|0)+(c[C>>2]|0);c[z>>2]=1;b=y;c[b>>2]=0;c[b+4>>2]=0;c[w>>2]=0;c[s>>2]=1;c[v>>2]=0;c[m>>2]=1;c[l>>2]=0;c[n>>2]=0;h[c[p>>2]>>3]=0.0;if((d[E>>0]|0)==1){c[x>>2]=1}else{c[x>>2]=2;c[B>>2]=3-(d[E>>0]|0);while(1){if((c[B>>2]|0)>=(c[C>>2]|0)){break}if((a[(c[q>>2]|0)+(c[B>>2]|0)>>0]|0)!=0){break}c[B>>2]=(c[B>>2]|0)+2}c[n>>2]=(c[B>>2]|0)<(c[C>>2]|0)&1;c[r>>2]=(c[q>>2]|0)+(c[B>>2]|0)+(d[E>>0]|0)+ -3;c[q>>2]=(c[q>>2]|0)+(a[E>>0]&1)}while(1){if(!((c[q>>2]|0)>>>0<(c[r>>2]|0)>>>0)){break}if((a[136+(d[c[q>>2]>>0]|0)>>0]&1|0)==0){break}c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0)}if((c[q>>2]|0)>>>0>=(c[r>>2]|0)>>>0){c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}if((a[c[q>>2]>>0]|0)==45){c[z>>2]=-1;c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0)}else{if((a[c[q>>2]>>0]|0)==43){c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0)}}while(1){if(!((c[q>>2]|0)>>>0<(c[r>>2]|0)>>>0)){break}if((a[c[q>>2]>>0]|0)!=48){break}c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0);c[l>>2]=(c[l>>2]|0)+1}while(1){if(!((c[q>>2]|0)>>>0<(c[r>>2]|0)>>>0)){break}if((a[136+(d[c[q>>2]>>0]|0)>>0]&4|0)==0){break}b=y;e=c[b+4>>2]|0;if(!((e|0)<214748364|(e|0)==214748364&(c[b>>2]|0)>>>0<3435973835)){break}b=y;b=nL(c[b>>2]|0,c[b+4>>2]|0,10,0)|0;e=(a[c[q>>2]>>0]|0)-48|0;e=dL(b|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;b=y;c[b>>2]=e;c[b+4>>2]=D;c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0);c[l>>2]=(c[l>>2]|0)+1}while(1){if(!((c[q>>2]|0)>>>0<(c[r>>2]|0)>>>0)){break}if((a[136+(d[c[q>>2]>>0]|0)>>0]&4|0)==0){break}c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0);c[l>>2]=(c[l>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1}a:do{if(!((c[q>>2]|0)>>>0>=(c[r>>2]|0)>>>0)){b:do{if((a[c[q>>2]>>0]|0)==46){c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0);while(1){if(!((c[q>>2]|0)>>>0<(c[r>>2]|0)>>>0)){break}if((a[136+(d[c[q>>2]>>0]|0)>>0]&4|0)==0){break}b=y;e=c[b+4>>2]|0;if(!((e|0)<214748364|(e|0)==214748364&(c[b>>2]|0)>>>0<3435973835)){break}b=y;b=nL(c[b>>2]|0,c[b+4>>2]|0,10,0)|0;e=(a[c[q>>2]>>0]|0)-48|0;e=dL(b|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;b=y;c[b>>2]=e;c[b+4>>2]=D;c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0);c[l>>2]=(c[l>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+ -1}while(1){if(!((c[q>>2]|0)>>>0<(c[r>>2]|0)>>>0)){break b}if((a[136+(d[c[q>>2]>>0]|0)>>0]&4|0)==0){break b}c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0);c[l>>2]=(c[l>>2]|0)+1}}}while(0);if(!((c[q>>2]|0)>>>0>=(c[r>>2]|0)>>>0)){if((a[c[q>>2]>>0]|0)==101){A=40}else{if((a[c[q>>2]>>0]|0)==69){A=40}}c:do{if((A|0)==40){c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0);c[m>>2]=0;if((c[q>>2]|0)>>>0>=(c[r>>2]|0)>>>0){break a}if((a[c[q>>2]>>0]|0)==45){c[s>>2]=-1;c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0)}else{if((a[c[q>>2]>>0]|0)==43){c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0)}}while(1){if(!((c[q>>2]|0)>>>0<(c[r>>2]|0)>>>0)){break c}if((a[136+(d[c[q>>2]>>0]|0)>>0]&4|0)==0){break c}if((c[v>>2]|0)<1e4){A=((c[v>>2]|0)*10|0)+((a[c[q>>2]>>0]|0)-48)|0}else{A=1e4}c[v>>2]=A;c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0);c[m>>2]=1}}}while(0);if((c[l>>2]|0)!=0){if((c[m>>2]|0)!=0){while(1){if(!((c[q>>2]|0)>>>0<(c[r>>2]|0)>>>0)){break a}if((a[136+(d[c[q>>2]>>0]|0)>>0]&1|0)==0){break a}c[q>>2]=(c[q>>2]|0)+(c[x>>2]|0)}}}}}}while(0);b=$(c[v>>2]|0,c[s>>2]|0)|0;c[v>>2]=b+(c[w>>2]|0);if((c[v>>2]|0)<0){c[s>>2]=-1;c[v>>2]=$(c[v>>2]|0,-1)|0}else{c[s>>2]=1}b=y;do{if((c[b>>2]|0)!=0|(c[b+4>>2]|0)!=0){d:do{if((c[s>>2]|0)>0){while(1){b=y;e=c[b+4>>2]|0;if(!((e|0)<214748364|(e|0)==214748364&(c[b>>2]|0)>>>0<3435973836)){break d}if((c[v>>2]|0)<=0){break d}c[v>>2]=(c[v>>2]|0)+ -1;e=y;e=nL(c[e>>2]|0,c[e+4>>2]|0,10,0)|0;b=y;c[b>>2]=e;c[b+4>>2]=D}}else{while(1){b=y;b=mL(c[b>>2]|0,c[b+4>>2]|0,10,0)|0;if((b|0)!=0|(D|0)!=0){break d}if((c[v>>2]|0)<=0){break d}c[v>>2]=(c[v>>2]|0)+ -1;e=y;e=lL(c[e>>2]|0,c[e+4>>2]|0,10,0)|0;b=y;c[b>>2]=e;c[b+4>>2]=D}}}while(0);f=(c[z>>2]|0)<0;e=y;g=c[e>>2]|0;e=c[e+4>>2]|0;E=$K(0,0,g|0,e|0)|0;b=y;c[b>>2]=f?E:g;c[b+4>>2]=f?D:e;if((c[v>>2]|0)==0){b=y;h[o>>3]=+((c[b>>2]|0)>>>0)+4294967296.0*+(c[b+4>>2]|0);break}h[u>>3]=1.0;if((c[v>>2]|0)>307&(c[v>>2]|0)<342){while(1){if(((c[v>>2]|0)%308|0|0)==0){break}h[u>>3]=+h[u>>3]*10.0;c[v>>2]=(c[v>>2]|0)-1}b=y;F=+((c[b>>2]|0)>>>0)+4294967296.0*+(c[b+4>>2]|0);G=+h[u>>3];if((c[s>>2]|0)<0){h[o>>3]=F/G;h[o>>3]=+h[o>>3]/1.0e+308;break}else{h[o>>3]=F*G;h[o>>3]=+h[o>>3]*1.0e+308;break}}if((c[v>>2]|0)>=342){b=y;F=+((c[b>>2]|0)>>>0)+4294967296.0*+(c[b+4>>2]|0);if((c[s>>2]|0)<0){h[o>>3]=0.0*F;break}else{h[o>>3]=t*F;break}}while(1){if(((c[v>>2]|0)%22|0|0)==0){break}h[u>>3]=+h[u>>3]*10.0;c[v>>2]=(c[v>>2]|0)-1}while(1){if((c[v>>2]|0)<=0){break}h[u>>3]=+h[u>>3]*1.0e+22;c[v>>2]=(c[v>>2]|0)-22}b=y;F=+((c[b>>2]|0)>>>0)+4294967296.0*+(c[b+4>>2]|0);G=+h[u>>3];if((c[s>>2]|0)<0){h[o>>3]=F/G;break}else{h[o>>3]=F*G;break}}else{if((c[z>>2]|0)<0){s=(c[l>>2]|0)!=0}else{s=0}h[o>>3]=s?-0.0:0.0}}while(0);h[c[p>>2]>>3]=+h[o>>3];if((c[q>>2]|0)>>>0>=(c[r>>2]|0)>>>0){if((c[l>>2]|0)>0){if((c[m>>2]|0)!=0){l=(c[n>>2]|0)==0}else{l=0}}else{l=0}}else{l=0}c[j>>2]=l&1;b=c[j>>2]|0;i=k;return b|0}function At(b,e){b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+80|0;q=m+16|0;g=m+68|0;k=m+56|0;l=m+76|0;f=m+72|0;n=m+60|0;o=m+64|0;p=m;j=m+8|0;c[k>>2]=b;c[l>>2]=e;h[p>>3]=0.0;b=c[k>>2]|0;c[q>>2]=2;c[q+4>>2]=0;c[q+8>>2]=24;c[q+12>>2]=58;c[q+16>>2]=f;c[q+20>>2]=2;c[q+24>>2]=0;c[q+28>>2]=59;c[q+32>>2]=0;c[q+36>>2]=n;if((Bt(b,q)|0)!=2){c[g>>2]=1;b=c[g>>2]|0;i=m;return b|0}c[k>>2]=(c[k>>2]|0)+5;if((a[c[k>>2]>>0]|0)==58){c[k>>2]=(c[k>>2]|0)+1;b=c[k>>2]|0;c[q>>2]=2;c[q+4>>2]=0;c[q+8>>2]=59;c[q+12>>2]=0;c[q+16>>2]=o;if((Bt(b,q)|0)!=1){c[g>>2]=1;b=c[g>>2]|0;i=m;return b|0}c[k>>2]=(c[k>>2]|0)+2;if((a[c[k>>2]>>0]|0)==46){if((a[136+(d[(c[k>>2]|0)+1>>0]|0)>>0]&4|0)!=0){h[j>>3]=1.0;c[k>>2]=(c[k>>2]|0)+1;while(1){if((a[136+(d[c[k>>2]>>0]|0)>>0]&4|0)==0){break}h[p>>3]=+h[p>>3]*10.0+ +(a[c[k>>2]>>0]|0)-48.0;h[j>>3]=+h[j>>3]*10.0;c[k>>2]=(c[k>>2]|0)+1}h[p>>3]=+h[p>>3]/+h[j>>3]}}}else{c[o>>2]=0}a[(c[l>>2]|0)+42>>0]=0;a[(c[l>>2]|0)+41>>0]=1;c[(c[l>>2]|0)+20>>2]=c[f>>2];c[(c[l>>2]|0)+24>>2]=c[n>>2];h[(c[l>>2]|0)+32>>3]=+(c[o>>2]|0)+ +h[p>>3];if((Ct(c[k>>2]|0,c[l>>2]|0)|0)!=0){c[g>>2]=1;b=c[g>>2]|0;i=m;return b|0}else{a[(c[l>>2]|0)+43>>0]=(c[(c[l>>2]|0)+28>>2]|0)!=0?1:0;c[g>>2]=0;b=c[g>>2]|0;i=m;return b|0}return 0}function Bt(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+64|0;k=g+48|0;p=g+32|0;l=g+24|0;o=g+20|0;n=g+16|0;m=g+8|0;j=g+4|0;h=g;f=g+12|0;c[k>>2]=b;c[f>>2]=0;c[p>>2]=e;a:while(1){e=c[p>>2]|0;b=c[e>>2]|0;c[p>>2]=e+4;c[o>>2]=b;b=c[p>>2]|0;e=c[b>>2]|0;c[p>>2]=b+4;c[n>>2]=e;e=c[p>>2]|0;b=c[e>>2]|0;c[p>>2]=e+4;c[m>>2]=b;b=c[p>>2]|0;e=c[b>>2]|0;c[p>>2]=b+4;c[j>>2]=e;e=c[p>>2]|0;b=c[e>>2]|0;c[p>>2]=e+4;c[h>>2]=b;c[l>>2]=0;while(1){b=c[o>>2]|0;c[o>>2]=b+ -1;if((b|0)==0){break}if((a[136+(d[c[k>>2]>>0]|0)>>0]&4|0)==0){h=11;break a}c[l>>2]=((c[l>>2]|0)*10|0)+(a[c[k>>2]>>0]|0)-48;c[k>>2]=(c[k>>2]|0)+1}if((c[l>>2]|0)<(c[n>>2]|0)){h=11;break}if((c[l>>2]|0)>(c[m>>2]|0)){h=11;break}if((c[j>>2]|0)!=0){if((c[j>>2]|0)!=(a[c[k>>2]>>0]|0)){h=11;break}}c[c[h>>2]>>2]=c[l>>2];c[k>>2]=(c[k>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+1;if((c[j>>2]|0)==0){h=11;break}}if((h|0)==11){i=g;return c[f>>2]|0}return 0}function Ct(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+80|0;o=f;h=f+64|0;g=f+40|0;n=f+44|0;k=f+48|0;j=f+52|0;l=f+56|0;p=f+60|0;c[g>>2]=b;c[n>>2]=e;c[k>>2]=0;while(1){if((a[136+(d[c[g>>2]>>0]|0)>>0]&1|0)==0){break}c[g>>2]=(c[g>>2]|0)+1}c[(c[n>>2]|0)+28>>2]=0;c[p>>2]=a[c[g>>2]>>0]|0;do{if((c[p>>2]|0)==45){c[k>>2]=-1;m=11}else{if((c[p>>2]|0)==43){c[k>>2]=1;m=11;break}if((c[p>>2]|0)==90|(c[p>>2]|0)==122){c[g>>2]=(c[g>>2]|0)+1;break}c[h>>2]=(c[p>>2]|0)!=0&1;b=c[h>>2]|0;i=f;return b|0}}while(0);do{if((m|0)==11){c[g>>2]=(c[g>>2]|0)+1;b=c[g>>2]|0;c[o>>2]=2;c[o+4>>2]=0;c[o+8>>2]=14;c[o+12>>2]=58;c[o+16>>2]=j;c[o+20>>2]=2;c[o+24>>2]=0;c[o+28>>2]=59;c[o+32>>2]=0;c[o+36>>2]=l;if((Bt(b,o)|0)==2){c[g>>2]=(c[g>>2]|0)+5;b=$(c[k>>2]|0,(c[l>>2]|0)+((c[j>>2]|0)*60|0)|0)|0;c[(c[n>>2]|0)+28>>2]=b;break}c[h>>2]=1;b=c[h>>2]|0;i=f;return b|0}}while(0);while(1){j=c[g>>2]|0;if((a[136+(d[c[g>>2]>>0]|0)>>0]&1|0)==0){break}c[g>>2]=j+1}c[h>>2]=(a[j>>0]|0)!=0&1;b=c[h>>2]|0;i=f;return b|0}function Dt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=f+12|0;g=f;e=f+4|0;d=f+8|0;c[h>>2]=a;c[g>>2]=b;a=nb(c[h>>2]|0)|0;c[d>>2]=a;c[d>>2]=(c[45400>>2]|0)!=0?0:a;if((c[d>>2]|0)!=0){a=(c[g>>2]|0)+0|0;g=(c[d>>2]|0)+0|0;b=a+44|0;do{c[a>>2]=c[g>>2];a=a+4|0;g=g+4|0}while((a|0)<(b|0))}c[e>>2]=(c[d>>2]|0)==0&1;i=f;return c[e>>2]|0}function Et(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+96|0;o=g;l=g+84|0;h=g+60|0;j=g+64|0;k=g+68|0;m=g+72|0;n=g+76|0;f=g+80|0;c[h>>2]=b;c[j>>2]=e;if((a[c[h>>2]>>0]|0)==45){c[h>>2]=(c[h>>2]|0)+1;c[f>>2]=1}else{c[f>>2]=0}b=c[h>>2]|0;c[o>>2]=4;c[o+4>>2]=0;c[o+8>>2]=9999;c[o+12>>2]=45;c[o+16>>2]=k;c[o+20>>2]=2;c[o+24>>2]=1;c[o+28>>2]=12;c[o+32>>2]=45;c[o+36>>2]=m;c[o+40>>2]=2;c[o+44>>2]=1;c[o+48>>2]=31;c[o+52>>2]=0;c[o+56>>2]=n;if((Bt(b,o)|0)!=3){c[l>>2]=1;b=c[l>>2]|0;i=g;return b|0}c[h>>2]=(c[h>>2]|0)+10;while(1){if((a[136+(d[c[h>>2]>>0]|0)>>0]&1|0)!=0){o=1}else{o=84==(d[c[h>>2]>>0]|0)}e=c[h>>2]|0;if(!o){break}c[h>>2]=e+1}do{if((At(e,c[j>>2]|0)|0)!=0){if((a[c[h>>2]>>0]|0)==0){a[(c[j>>2]|0)+41>>0]=0;break}c[l>>2]=1;b=c[l>>2]|0;i=g;return b|0}}while(0);a[(c[j>>2]|0)+42>>0]=0;a[(c[j>>2]|0)+40>>0]=1;b=c[k>>2]|0;c[(c[j>>2]|0)+8>>2]=(c[f>>2]|0)!=0?0-b|0:b;c[(c[j>>2]|0)+12>>2]=c[m>>2];c[(c[j>>2]|0)+16>>2]=c[n>>2];if((a[(c[j>>2]|0)+43>>0]|0)!=0){qt(c[j>>2]|0)}c[l>>2]=0;b=c[l>>2]|0;i=g;return b|0}function Ft(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+8|0;b=d;e=d+4|0;c[f>>2]=a;c[b>>2]=c[(c[f>>2]|0)+56>>2];a=(c[b>>2]|0)+136|0;if((c[a>>2]|0)==0&(c[a+4>>2]|0)==0){c[e>>2]=Gt(c[c[(c[f>>2]|0)+8>>2]>>2]|0,(c[b>>2]|0)+136|0)|0;if((c[e>>2]|0)!=0){f=(c[b>>2]|0)+136|0;c[f>>2]=0;c[f+4>>2]=0}}f=(c[b>>2]|0)+136|0;D=c[f+4>>2]|0;i=d;return c[f>>2]|0}function Gt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0.0;d=i;i=i+32|0;g=d+16|0;f=d+12|0;e=d+8|0;j=d;c[g>>2]=a;c[f>>2]=b;if((c[c[g>>2]>>2]|0)>=2){if((c[(c[g>>2]|0)+72>>2]|0)!=0){c[e>>2]=zb[c[(c[g>>2]|0)+72>>2]&127](c[g>>2]|0,c[f>>2]|0)|0;a=c[e>>2]|0;i=d;return a|0}}c[e>>2]=zb[c[(c[g>>2]|0)+64>>2]&127](c[g>>2]|0,j)|0;k=+h[j>>3]*864.0e5;j=+O(k)>=1.0?k>0.0?(ea(+N(k/4294967296.0),4294967295.0)|0)>>>0:~~+_((k- +(~~k>>>0))/4294967296.0)>>>0:0;a=c[f>>2]|0;c[a>>2]=~~k>>>0;c[a+4>>2]=j;a=c[e>>2]|0;i=d;return a|0}function Ht(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;l=f+16|0;k=f;g=f+4|0;h=f+8|0;j=f+12|0;c[l>>2]=b;c[k>>2]=e;c[g>>2]=0;c[h>>2]=c[l>>2];if((c[k>>2]|0)>=0){c[j>>2]=(c[h>>2]|0)+(c[k>>2]|0)}else{c[j>>2]=-1}while(1){if((d[c[h>>2]>>0]|0|0)==0){e=10;break}if(!((c[h>>2]|0)>>>0<(c[j>>2]|0)>>>0)){e=10;break}l=c[h>>2]|0;c[h>>2]=l+1;a:do{if((d[l>>0]|0|0)>=192){while(1){if((a[c[h>>2]>>0]&192|0)!=128){break a}c[h>>2]=(c[h>>2]|0)+1}}}while(0);c[g>>2]=(c[g>>2]|0)+1}if((e|0)==10){i=f;return c[g>>2]|0}return 0}function It(b){b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=b;h=c[g>>2]|0;b=c[h>>2]|0;c[h>>2]=b+1;c[f>>2]=d[b>>0]|0;if(!((c[f>>2]|0)>>>0>=192)){h=c[f>>2]|0;i=e;return h|0}c[f>>2]=d[11592+((c[f>>2]|0)-192)>>0]|0;while(1){b=c[f>>2]|0;if((a[c[c[g>>2]>>2]>>0]&192|0)!=128){break}j=c[g>>2]|0;h=c[j>>2]|0;c[j>>2]=h+1;c[f>>2]=(b<<6)+(63&(d[h>>0]|0))}if(!(b>>>0<128)){if((c[f>>2]&-2048|0)!=55296){if((c[f>>2]&-2|0)!=65534){j=c[f>>2]|0;i=e;return j|0}}}c[f>>2]=65533;j=c[f>>2]|0;i=e;return j|0}function Jt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e;f=e+4|0;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;d=c[h>>2]|0;if(((c[(c[h>>2]|0)+12>>2]|0)+(c[f>>2]|0)|0)>=(c[(c[h>>2]|0)+16>>2]|0)){Kt(d,c[g>>2]|0,c[f>>2]|0);i=e;return}else{fL((c[(c[h>>2]|0)+8>>2]|0)+(c[d+12>>2]|0)|0,c[g>>2]|0,c[f>>2]|0)|0;a=(c[h>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+(c[f>>2]|0);i=e;return}}function Kt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[h>>2]=Lt(c[f>>2]|0,c[h>>2]|0)|0;if((c[h>>2]|0)<=0){i=e;return}fL((c[(c[f>>2]|0)+8>>2]|0)+(c[(c[f>>2]|0)+12>>2]|0)|0,c[g>>2]|0,c[h>>2]|0)|0;a=(c[f>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+(c[h>>2]|0);i=e;return}function Lt(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;g=k+24|0;h=k+20|0;j=k+8|0;l=k+12|0;f=k+16|0;m=k;c[h>>2]=b;c[j>>2]=e;if((a[(c[h>>2]|0)+25>>0]|0)!=0){c[g>>2]=0;b=c[g>>2]|0;i=k;return b|0}e=c[h>>2]|0;if((a[(c[h>>2]|0)+24>>0]|0)==0){c[j>>2]=(c[e+16>>2]|0)-(c[(c[h>>2]|0)+12>>2]|0)-1;Mt(c[h>>2]|0,2);c[g>>2]=c[j>>2];b=c[g>>2]|0;i=k;return b|0}if((c[e+8>>2]|0)==(c[(c[h>>2]|0)+4>>2]|0)){e=0}else{e=c[(c[h>>2]|0)+8>>2]|0}c[f>>2]=e;e=c[(c[h>>2]|0)+12>>2]|0;o=m;c[o>>2]=e;c[o+4>>2]=((e|0)<0)<<31>>31;o=(c[j>>2]|0)+1|0;e=m;o=dL(c[e>>2]|0,c[e+4>>2]|0,o|0,((o|0)<0)<<31>>31|0)|0;e=m;c[e>>2]=o;c[e+4>>2]=D;e=m;o=c[e+4>>2]|0;b=c[(c[h>>2]|0)+20>>2]|0;n=((b|0)<0)<<31>>31;if((o|0)>(n|0)|((o|0)==(n|0)?(c[e>>2]|0)>>>0>b>>>0:0)){Nt(c[h>>2]|0);Mt(c[h>>2]|0,2);c[g>>2]=0;o=c[g>>2]|0;i=k;return o|0}c[(c[h>>2]|0)+16>>2]=c[m>>2];if((d[(c[h>>2]|0)+24>>0]|0)==1){c[l>>2]=Ot(c[c[h>>2]>>2]|0,c[f>>2]|0,c[(c[h>>2]|0)+16>>2]|0)|0}else{c[l>>2]=qc(c[f>>2]|0,c[(c[h>>2]|0)+16>>2]|0)|0}if((c[l>>2]|0)==0){Nt(c[h>>2]|0);Mt(c[h>>2]|0,1);c[g>>2]=0;o=c[g>>2]|0;i=k;return o|0}if((c[f>>2]|0)==0){if((c[(c[h>>2]|0)+12>>2]|0)>0){fL(c[l>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[(c[h>>2]|0)+12>>2]|0)|0}}c[(c[h>>2]|0)+8>>2]=c[l>>2];c[g>>2]=c[j>>2];o=c[g>>2]|0;i=k;return o|0}function Mt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e;g=e+4|0;c[f>>2]=b;a[g>>0]=d;a[(c[f>>2]|0)+25>>0]=a[g>>0]|0;c[(c[f>>2]|0)+16>>2]=0;i=e;return}function Nt(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;do{if((c[(c[e>>2]|0)+8>>2]|0)!=(c[(c[e>>2]|0)+4>>2]|0)){a=c[e>>2]|0;if((d[(c[e>>2]|0)+24>>0]|0|0)==1){cc(c[a>>2]|0,c[(c[e>>2]|0)+8>>2]|0);break}else{oc(c[a+8>>2]|0);break}}}while(0);c[(c[e>>2]|0)+8>>2]=0;i=b;return}function Ot(b,f,g){b=b|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h+16|0;n=h;m=h+4|0;k=h+8|0;l=h+12|0;c[n>>2]=b;c[m>>2]=f;c[k>>2]=g;c[l>>2]=0;do{if((d[(c[n>>2]|0)+64>>0]|0|0)==0){g=c[n>>2]|0;if((c[m>>2]|0)==0){c[j>>2]=$e(g,c[k>>2]|0)|0;b=c[j>>2]|0;i=h;return b|0}if((Pt(g,c[m>>2]|0)|0)==0){c[l>>2]=qc(c[m>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)!=0){break}a[(c[n>>2]|0)+64>>0]=1;break}if((c[k>>2]|0)<=(e[(c[n>>2]|0)+240>>1]|0|0)){c[j>>2]=c[m>>2];b=c[j>>2]|0;i=h;return b|0}else{c[l>>2]=$e(c[n>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)==0){break}fL(c[l>>2]|0,c[m>>2]|0,e[(c[n>>2]|0)+240>>1]|0|0)|0;cc(c[n>>2]|0,c[m>>2]|0);break}}}while(0);c[j>>2]=c[l>>2];b=c[j>>2]|0;i=h;return b|0}function Pt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;if(!((c[e>>2]|0)>>>0>=(c[(c[f>>2]|0)+268>>2]|0)>>>0)){a=0;a=a&1;i=d;return a|0}a=(c[e>>2]|0)>>>0<(c[(c[f>>2]|0)+272>>2]|0)>>>0;a=a&1;i=d;return a|0}function Qt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+20|0;h=e+16|0;g=e;j=e+8|0;c[h>>2]=a;k=g;c[k>>2]=b;c[k+4>>2]=d;d=c[h>>2]|0;k=c[d+4>>2]|0;a=j;c[a>>2]=c[d>>2];c[a+4>>2]=k;a=g;k=c[a+4>>2]|0;d=j;b=c[d+4>>2]|0;if((k|0)>0|(k|0)==0&(c[a>>2]|0)>>>0>=0){if((b|0)>0|(b|0)==0&(c[d>>2]|0)>>>0>0){a=j;a=$K(-1,2147483647,c[a>>2]|0,c[a+4>>2]|0)|0;d=D;k=g;b=c[k+4>>2]|0;if((d|0)<(b|0)|((d|0)==(b|0)?a>>>0<(c[k>>2]|0)>>>0:0)){c[f>>2]=1;k=c[f>>2]|0;i=e;return k|0}}}else{if((b|0)<0){a=j;a=dL(c[a>>2]|0,c[a+4>>2]|0,-1,2147483647)|0;a=$K(0,0,a|0,D|0)|0;d=D;k=g;k=dL(c[k>>2]|0,c[k+4>>2]|0,1,0)|0;b=D;if((d|0)>(b|0)|(d|0)==(b|0)&a>>>0>k>>>0){c[f>>2]=1;k=c[f>>2]|0;i=e;return k|0}}}a=g;k=c[h>>2]|0;b=k;a=dL(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;c[k>>2]=a;c[k+4>>2]=D;c[f>>2]=0;k=c[f>>2]|0;i=e;return k|0}function Rt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;g=e+16|0;h=e;f=e+8|0;k=e+12|0;c[g>>2]=a;j=h;c[j>>2]=b;c[j+4>>2]=d;c[k>>2]=re(c[g>>2]|0)|0;b=h;j=c[b+4>>2]|0;a=c[(c[k>>2]|0)+88>>2]|0;d=((a|0)<0)<<31>>31;if((j|0)>(d|0)|((j|0)==(d|0)?(c[b>>2]|0)>>>0>a>>>0:0)){je(c[g>>2]|0);c[f>>2]=0;k=c[f>>2]|0;i=e;return k|0}c[f>>2]=nc(c[h>>2]|0)|0;if((c[f>>2]|0)!=0){k=c[f>>2]|0;i=e;return k|0}ke(c[g>>2]|0);k=c[f>>2]|0;i=e;return k|0}function St(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+52>>2]|0}function Tt(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+48|0;f=k+44|0;g=k+40|0;j=k+36|0;m=k+32|0;l=k+28|0;n=k+24|0;o=k+16|0;p=k+20|0;r=k;q=k+8|0;c[g>>2]=a;c[j>>2]=b;c[m>>2]=d;c[n>>2]=e[(c[g>>2]|0)+28>>1]|0;c[o>>2]=e[(c[j>>2]|0)+28>>1]|0;c[p>>2]=c[n>>2]|c[o>>2];if((c[p>>2]&1|0)!=0){c[f>>2]=(c[o>>2]&1)-(c[n>>2]&1);a=c[f>>2]|0;i=k;return a|0}if((c[p>>2]&12|0)==0){if((c[p>>2]&2|0)!=0){if((c[n>>2]&2|0)==0){c[f>>2]=1;a=c[f>>2]|0;i=k;return a|0}if((c[o>>2]&2|0)==0){c[f>>2]=-1;a=c[f>>2]|0;i=k;return a|0}if((c[m>>2]|0)!=0){c[f>>2]=Ut(c[g>>2]|0,c[j>>2]|0,c[m>>2]|0)|0;a=c[f>>2]|0;i=k;return a|0}}if((c[(c[g>>2]|0)+24>>2]|0)>(c[(c[j>>2]|0)+24>>2]|0)){m=c[(c[j>>2]|0)+24>>2]|0}else{m=c[(c[g>>2]|0)+24>>2]|0}c[l>>2]=XK(c[(c[g>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,m)|0;if((c[l>>2]|0)==0){c[l>>2]=(c[(c[g>>2]|0)+24>>2]|0)-(c[(c[j>>2]|0)+24>>2]|0)}c[f>>2]=c[l>>2];a=c[f>>2]|0;i=k;return a|0}if((c[n>>2]&c[o>>2]&4|0)!=0){b=(c[g>>2]|0)+16|0;q=c[b+4>>2]|0;a=(c[j>>2]|0)+16|0;r=c[a+4>>2]|0;if((q|0)<(r|0)|((q|0)==(r|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)){c[f>>2]=-1;a=c[f>>2]|0;i=k;return a|0}b=(c[g>>2]|0)+16|0;q=c[b+4>>2]|0;a=(c[j>>2]|0)+16|0;r=c[a+4>>2]|0;if((q|0)>(r|0)|((q|0)==(r|0)?(c[b>>2]|0)>>>0>(c[a>>2]|0)>>>0:0)){c[f>>2]=1;a=c[f>>2]|0;i=k;return a|0}else{c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}}do{if((c[n>>2]&8|0)!=0){h[r>>3]=+h[(c[g>>2]|0)+8>>3]}else{if((c[n>>2]&4|0)!=0){a=(c[g>>2]|0)+16|0;h[r>>3]=+((c[a>>2]|0)>>>0)+4294967296.0*+(c[a+4>>2]|0);break}c[f>>2]=1;a=c[f>>2]|0;i=k;return a|0}}while(0);do{if((c[o>>2]&8|0)!=0){h[q>>3]=+h[(c[j>>2]|0)+8>>3]}else{if((c[o>>2]&4|0)!=0){a=(c[j>>2]|0)+16|0;h[q>>3]=+((c[a>>2]|0)>>>0)+4294967296.0*+(c[a+4>>2]|0);break}c[f>>2]=-1;a=c[f>>2]|0;i=k;return a|0}}while(0);if(+h[r>>3]<+h[q>>3]){c[f>>2]=-1;a=c[f>>2]|0;i=k;return a|0}if(+h[r>>3]>+h[q>>3]){c[f>>2]=1;a=c[f>>2]|0;i=k;return a|0}else{c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}return 0}function Ut(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=i;i=i+128|0;n=p+112|0;r=p+108|0;s=p+104|0;l=p+100|0;q=p+96|0;o=p+92|0;k=p+84|0;h=p+80|0;j=p+88|0;g=p;m=p+40|0;c[r>>2]=b;c[s>>2]=e;c[l>>2]=f;if((d[(c[r>>2]|0)+30>>0]|0|0)==(d[(c[l>>2]|0)+4>>0]|0|0)){c[n>>2]=Ab[c[(c[l>>2]|0)+12>>2]&15](c[(c[l>>2]|0)+8>>2]|0,c[(c[r>>2]|0)+24>>2]|0,c[(c[r>>2]|0)+4>>2]|0,c[(c[s>>2]|0)+24>>2]|0,c[(c[s>>2]|0)+4>>2]|0)|0;b=c[n>>2]|0;i=p;return b|0}e=g+0|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));e=m+0|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));Vt(g,c[r>>2]|0,4096);Vt(m,c[s>>2]|0,4096);c[o>>2]=Rd(g,a[(c[l>>2]|0)+4>>0]|0)|0;if((c[o>>2]|0)==0){r=0}else{r=c[g+24>>2]|0}c[h>>2]=r;c[k>>2]=Rd(m,a[(c[l>>2]|0)+4>>0]|0)|0;if((c[k>>2]|0)==0){r=0}else{r=c[m+24>>2]|0}c[j>>2]=r;c[q>>2]=Ab[c[(c[l>>2]|0)+12>>2]&15](c[(c[l>>2]|0)+8>>2]|0,c[h>>2]|0,c[o>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;Gd(g);Gd(m);c[n>>2]=c[q>>2];b=c[n>>2]|0;i=p;return b|0}function Vt(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0;j=i;i=i+16|0;g=j+8|0;h=j;k=j+4|0;c[g>>2]=a;c[h>>2]=d;c[k>>2]=f;if((b[(c[g>>2]|0)+28>>1]&9312|0)!=0){te(c[g>>2]|0)}a=(c[g>>2]|0)+0|0;d=(c[h>>2]|0)+0|0;f=a+36|0;do{c[a>>2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(f|0));c[(c[g>>2]|0)+32>>2]=0;if((b[(c[h>>2]|0)+28>>1]&2048|0)!=0){i=j;return}a=(c[g>>2]|0)+28|0;b[a>>1]=(e[a>>1]|0)&-7169;a=(c[g>>2]|0)+28|0;b[a>>1]=e[a>>1]|0|c[k>>2];i=j;return}function Wt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;k=f+24|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;uc(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,g);i=f;return}function Xt(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;a[(c[e>>2]|0)+68>>0]=1;i=d;return}function Yt(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=ub[c[e>>2]&63](1612)|0;if((c[d>>2]|0)==0){e=c[d>>2]|0;i=b;return e|0}c[c[d>>2]>>2]=-1;e=c[d>>2]|0;i=b;return e|0}function Zt(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+48|0;j=h+32|0;p=h;k=h+4|0;o=h+8|0;n=h+12|0;m=h+24|0;l=h+28|0;c[p>>2]=d;c[k>>2]=e;c[o>>2]=g;c[l>>2]=c[p>>2];if((c[c[l>>2]>>2]|0)<0){c[c[l>>2]>>2]=0;c[(c[l>>2]|0)+4>>2]=-1;b[(c[l>>2]|0)+12>>1]=0;a[(c[l>>2]|0)+14>>0]=0}c[n+0>>2]=c[f+0>>2];c[n+4>>2]=c[f+4>>2];c[(c[l>>2]|0)+8>>2]=c[o>>2];while(1){c[m>>2]=mu(c[l>>2]|0,c[k>>2]&255)|0;do{if((c[m>>2]|0)<642){nu(c[l>>2]|0,c[m>>2]|0,c[k>>2]|0,n);p=(c[l>>2]|0)+4|0;c[p>>2]=(c[p>>2]|0)+ -1;c[k>>2]=254}else{f=c[l>>2]|0;if((c[m>>2]|0)<969){ou(f,(c[m>>2]|0)-642|0);break}else{p=c[k>>2]|0;c[j+0>>2]=c[n+0>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];pu(f,p,j);ku(c[l>>2]|0,c[k>>2]&255,n);c[k>>2]=254;break}}}while(0);if((c[k>>2]|0)==254){j=11;break}if((c[c[l>>2]>>2]|0)<0){j=11;break}}if((j|0)==11){i=h;return}}function _t(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d;f=d+4|0;c[g>>2]=a;c[e>>2]=b;c[f>>2]=c[g>>2];if((c[f>>2]|0)==0){i=d;return}while(1){if((c[c[f>>2]>>2]|0)<0){break}ju(c[f>>2]|0)|0}rb[c[e>>2]&31](c[f>>2]|0);i=d;return}function $t(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+28|0;j=f;l=f+4|0;k=f+8|0;h=f+24|0;c[g>>2]=a;c[j>>2]=b;c[l>>2]=d;c[k>>2]=e;c[h>>2]=iu(c[j>>2]|0,c[l>>2]|0,k)|0;cc(c[j>>2]|0,c[c[g>>2]>>2]|0);c[c[g>>2]>>2]=c[h>>2];i=f;return}function au(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[d>>2]|0)==0){i=b;return}c[e>>2]=c[c[d>>2]>>2];bc(c[e>>2]|0,c[d>>2]|0);a=c[(c[d>>2]|0)+52>>2]|0;if((c[(c[d>>2]|0)+48>>2]|0)!=0){c[(c[(c[d>>2]|0)+48>>2]|0)+52>>2]=a}else{c[(c[e>>2]|0)+4>>2]=a}if((c[(c[d>>2]|0)+52>>2]|0)!=0){c[(c[(c[d>>2]|0)+52>>2]|0)+48>>2]=c[(c[d>>2]|0)+48>>2]}c[(c[d>>2]|0)+40>>2]=-1241070648;c[c[d>>2]>>2]=0;cc(c[e>>2]|0,c[d>>2]|0);i=b;return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d;g=d+4|0;h=d+8|0;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[c[f>>2]>>2]|0)){break}c[h>>2]=(c[f>>2]|0)+8+(c[g>>2]<<4);cu(c[e>>2]|0,c[(c[h>>2]|0)+4>>2]|0);du(c[e>>2]|0,c[(c[h>>2]|0)+8>>2]|0);cc(c[e>>2]|0,c[c[h>>2]>>2]|0);c[g>>2]=(c[g>>2]|0)+1}cc(c[e>>2]|0,c[f>>2]|0);i=d;return}function cu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+12|0;e=d;g=d+4|0;h=d+8|0;c[f>>2]=a;c[e>>2]=b;if((c[e>>2]|0)==0){i=d;return}c[h>>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=0;while(1){b=c[f>>2]|0;if((c[g>>2]|0)>=(c[c[e>>2]>>2]|0)){break}gu(b,c[c[h>>2]>>2]|0);cc(c[f>>2]|0,c[(c[h>>2]|0)+4>>2]|0);cc(c[f>>2]|0,c[(c[h>>2]|0)+8>>2]|0);c[g>>2]=(c[g>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+20}cc(b,c[(c[e>>2]|0)+4>>2]|0);cc(c[f>>2]|0,c[e>>2]|0);i=d;return}function du(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}eu(c[e>>2]|0,c[f>>2]|0);cc(c[e>>2]|0,c[f>>2]|0);i=d;return}function eu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;cu(c[f>>2]|0,c[c[e>>2]>>2]|0);fu(c[f>>2]|0,c[(c[e>>2]|0)+32>>2]|0);gu(c[f>>2]|0,c[(c[e>>2]|0)+36>>2]|0);cu(c[f>>2]|0,c[(c[e>>2]|0)+40>>2]|0);gu(c[f>>2]|0,c[(c[e>>2]|0)+44>>2]|0);cu(c[f>>2]|0,c[(c[e>>2]|0)+48>>2]|0);du(c[f>>2]|0,c[(c[e>>2]|0)+52>>2]|0);gu(c[f>>2]|0,c[(c[e>>2]|0)+60>>2]|0);gu(c[f>>2]|0,c[(c[e>>2]|0)+64>>2]|0);bu(c[f>>2]|0,c[(c[e>>2]|0)+68>>2]|0);i=d;return}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+12|0;e=d;g=d+4|0;h=d+8|0;c[f>>2]=a;c[e>>2]=b;if((c[e>>2]|0)==0){i=d;return}c[h>>2]=(c[e>>2]|0)+8;c[g>>2]=0;while(1){b=c[f>>2]|0;if((c[g>>2]|0)>=(c[c[e>>2]>>2]|0)){break}cc(b,c[(c[h>>2]|0)+4>>2]|0);cc(c[f>>2]|0,c[(c[h>>2]|0)+8>>2]|0);cc(c[f>>2]|0,c[(c[h>>2]|0)+12>>2]|0);cc(c[f>>2]|0,c[(c[h>>2]|0)+64>>2]|0);ac(c[f>>2]|0,c[(c[h>>2]|0)+16>>2]|0);du(c[f>>2]|0,c[(c[h>>2]|0)+20>>2]|0);gu(c[f>>2]|0,c[(c[h>>2]|0)+44>>2]|0);hu(c[f>>2]|0,c[(c[h>>2]|0)+48>>2]|0);c[g>>2]=(c[g>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+72}cc(b,c[e>>2]|0);i=d;return}function gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}do{if((c[(c[f>>2]|0)+4>>2]&16384|0)==0){gu(c[e>>2]|0,c[(c[f>>2]|0)+12>>2]|0);gu(c[e>>2]|0,c[(c[f>>2]|0)+16>>2]|0);if((c[(c[f>>2]|0)+4>>2]&65536|0)!=0){cc(c[e>>2]|0,c[(c[f>>2]|0)+8>>2]|0)}a=c[e>>2]|0;b=(c[f>>2]|0)+20|0;if((c[(c[f>>2]|0)+4>>2]&2048|0)!=0){du(a,c[b>>2]|0);break}else{cu(a,c[b>>2]|0);break}}}while(0);if((c[(c[f>>2]|0)+4>>2]&32768|0)!=0){i=d;return}cc(c[e>>2]|0,c[f>>2]|0);i=d;return}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+8|0;e=d;g=d+4|0;c[f>>2]=a;c[e>>2]=b;if((c[e>>2]|0)==0){i=d;return}c[g>>2]=0;while(1){b=c[f>>2]|0;if((c[g>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){break}cc(b,c[(c[c[e>>2]>>2]|0)+(c[g>>2]<<3)>>2]|0);c[g>>2]=(c[g>>2]|0)+1}cc(b,c[c[e>>2]>>2]|0);cc(c[f>>2]|0,c[e>>2]|0);i=d;return}function iu(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+128|0;j=g+40|0;m=g;l=g+4|0;h=g+8|0;k=g+12|0;c[j>>2]=b;c[m>>2]=e;c[l>>2]=f;tc(k,g+44|0,70,c[(c[j>>2]|0)+88>>2]|0);c[k>>2]=c[j>>2];uc(k,1,c[m>>2]|0,c[l>>2]|0);c[h>>2]=vc(k)|0;if((d[k+25>>0]|0|0)!=1){m=c[h>>2]|0;i=g;return m|0}a[(c[j>>2]|0)+64>>0]=1;m=c[h>>2]|0;i=g;return m|0}function ju(b){b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+8|0;h=e;g=e+12|0;j=e+4|0;c[h>>2]=b;c[j>>2]=(c[h>>2]|0)+12+(c[c[h>>2]>>2]<<4);if((c[c[h>>2]>>2]|0)<0){c[f>>2]=0;j=c[f>>2]|0;i=e;return j|0}else{a[g>>0]=a[(c[j>>2]|0)+2>>0]|0;ku(c[h>>2]|0,a[g>>0]|0,(c[j>>2]|0)+4|0);j=c[h>>2]|0;c[j>>2]=(c[j>>2]|0)+ -1;c[f>>2]=d[g>>0]|0;j=c[f>>2]|0;i=e;return j|0}return 0}function ku(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;l=g+8|0;k=g+12|0;h=g+4|0;j=g;c[l>>2]=b;a[k>>0]=e;c[h>>2]=f;c[j>>2]=c[(c[l>>2]|0)+8>>2];do{switch(d[k>>0]|0|0){case 175:case 174:{gu(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 243:case 238:case 229:case 227:case 216:case 204:case 202:{gu(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 236:{hu(c[c[j>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0);i=g;return};case 252:case 197:{bu(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 223:case 219:case 217:{hu(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 228:case 221:case 220:case 210:case 209:case 208:case 205:case 203:case 200:case 188:case 179:{cu(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 239:case 234:{lu(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 207:case 196:case 195:case 163:{du(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};case 213:case 212:case 201:case 194:{fu(c[c[j>>2]>>2]|0,c[c[h>>2]>>2]|0);i=g;return};default:{i=g;return}}}while(0)}function lu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d;f=d+4|0;c[g>>2]=a;c[e>>2]=b;while(1){if((c[e>>2]|0)==0){break}c[f>>2]=c[e>>2];c[e>>2]=c[(c[e>>2]|0)+32>>2];gu(c[g>>2]|0,c[(c[f>>2]|0)+20>>2]|0);cu(c[g>>2]|0,c[(c[f>>2]|0)+24>>2]|0);du(c[g>>2]|0,c[(c[f>>2]|0)+8>>2]|0);hu(c[g>>2]|0,c[(c[f>>2]|0)+28>>2]|0);cc(c[g>>2]|0,c[f>>2]|0)}i=d;return}function mu(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=i;i=i+32|0;j=k+16|0;p=k;l=k+21|0;h=k+8|0;o=k+12|0;m=k+20|0;n=k+4|0;c[p>>2]=f;a[l>>0]=g;c[o>>2]=e[(c[p>>2]|0)+12+(c[c[p>>2]>>2]<<4)>>1]|0;if((c[o>>2]|0)<=429){f=b[33640+(c[o>>2]<<1)>>1]|0;c[h>>2]=f;if(!((f|0)==-86)){c[h>>2]=(c[h>>2]|0)+(d[l>>0]|0);if(!((c[h>>2]|0)<0|(c[h>>2]|0)>=1497)){if((d[35792+(c[h>>2]|0)>>0]|0)==(d[l>>0]|0)){c[j>>2]=e[18248+(c[h>>2]<<1)>>1]|0;f=c[j>>2]|0;i=k;return f|0}}if((d[l>>0]|0)>0){if((d[l>>0]|0)>>>0<70){f=a[37296+(d[l>>0]|0)>>0]|0;a[m>>0]=f;if((f&255|0)!=0){c[j>>2]=mu(c[p>>2]|0,a[m>>0]|0)|0;f=c[j>>2]|0;i=k;return f|0}}c[n>>2]=(c[h>>2]|0)-(d[l>>0]|0)+70;if((c[n>>2]|0)>=0){if((d[35792+(c[n>>2]|0)>>0]|0)==70){c[j>>2]=e[18248+(c[n>>2]<<1)>>1]|0;f=c[j>>2]|0;i=k;return f|0}}}c[j>>2]=e[34504+(c[o>>2]<<1)>>1]|0;f=c[j>>2]|0;i=k;return f|0}}c[j>>2]=e[34504+(c[o>>2]<<1)>>1]|0;f=c[j>>2]|0;i=k;return f|0}function nu(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;n=m+16|0;h=m;l=m+4|0;j=m+8|0;k=m+12|0;c[n>>2]=d;c[h>>2]=e;c[l>>2]=f;c[j>>2]=g;g=c[n>>2]|0;c[g>>2]=(c[g>>2]|0)+1;g=c[n>>2]|0;if((c[c[n>>2]>>2]|0)>=100){YE(g,c[j>>2]|0);i=m;return}else{c[k>>2]=(c[n>>2]|0)+12+(c[g>>2]<<4);b[c[k>>2]>>1]=c[h>>2];a[(c[k>>2]|0)+2>>0]=c[l>>2];d=(c[k>>2]|0)+4|0;e=c[j>>2]|0;c[d+0>>2]=c[e+0>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];i=m;return}}function ou(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0;n=i;i=i+240|0;r=n;p=n+220|0;o=n+216|0;m=n+212|0;l=n+208|0;h=n+196|0;j=n+192|0;k=n+188|0;q=n+184|0;u=n+172|0;S=n+160|0;D=n+140|0;H=n+136|0;L=n+132|0;K=n+128|0;I=n+124|0;J=n+120|0;v=n+116|0;x=n+112|0;w=n+104|0;y=n+96|0;z=n+224|0;F=n+44|0;G=n+36|0;E=n+32|0;B=n+28|0;C=n+24|0;A=n+40|0;N=n+12|0;M=n+8|0;P=n+16|0;R=n+20|0;Q=n+84|0;O=n+48|0;U=n+52|0;T=n+56|0;V=n+60|0;X=n+64|0;t=n+68|0;W=n+72|0;Z=n+76|0;_=n+80|0;Y=n+88|0;c[p>>2]=f;c[o>>2]=g;c[q>>2]=c[(c[p>>2]|0)+8>>2];c[j>>2]=(c[p>>2]|0)+12+(c[c[p>>2]>>2]<<4);c[h+0>>2]=c[33600>>2];c[h+4>>2]=c[33604>>2];c[h+8>>2]=c[33608>>2];a:do{switch(c[o>>2]|0){case 18:case 17:{tu(c[q>>2]|0);break};case 62:{Eu(c[q>>2]|0,0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0);break};case 65:{Hu(c[q>>2]|0,0,(c[j>>2]|0)+ -32+4|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 66:{Iu(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 78:{c[h>>2]=9;break};case 79:{c[h>>2]=6;break};case 80:{c[h>>2]=0;break};case 103:case 100:case 98:case 82:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 86:{c[h+4>>2]=0;c[h>>2]=0;break};case 19:{uu(c[q>>2]|0);break};case 27:{a[(c[c[q>>2]>>2]|0)+242>>0]=0;f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];break};case 8:{ru(c[q>>2]|0);break};case 87:{f=(c[j>>2]|0)+ -16+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];break};case 90:{c[(c[q>>2]|0)+324>>2]=0;break};case 279:case 263:case 262:case 261:case 260:case 259:case 258:case 257:case 256:case 247:case 150:case 141:case 131:case 130:case 48:case 45:case 42:case 41:case 40:{f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];break};case 93:{Eu(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,0);break};case 7:{qu(c[q>>2]|0,2);break};case 33:{xu(c[q>>2]|0,0,0,0,c[(c[j>>2]|0)+4>>2]|0);du(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 94:{Fu(c[q>>2]|0,0,0,0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,0,0,0,0)|0;break};case 5:{qu(c[q>>2]|0,0);break};case 23:{vu(c[q>>2]|0,1,(c[j>>2]|0)+4|0);break};case 35:{if((c[(c[j>>2]|0)+8>>2]|0)==5){if((Tb(c[(c[j>>2]|0)+4>>2]|0,8848,5)|0)==0){a[h>>0]=32;break a}}a[h>>0]=0;f=c[q>>2]|0;g=c[(c[j>>2]|0)+4>>2]|0;c[r>>2]=c[(c[j>>2]|0)+8>>2];c[r+4>>2]=g;bf(f,16528,r);break};case 6:{qu(c[q>>2]|0,1);break};case 9:{su(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 32:{xu(c[q>>2]|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+ -16+4|0,a[(c[j>>2]|0)+4>>0]|0,0);break};case 22:{vu(c[q>>2]|0,0,(c[j>>2]|0)+4|0);break};case 38:{c[h>>2]=c[(c[j>>2]|0)+ -32+4>>2];c[h+4>>2]=(c[(c[q>>2]|0)+504>>2]|0)-(c[(c[j>>2]|0)+ -32+4>>2]|0)+(c[(c[q>>2]|0)+508>>2]|0);break};case 44:{zu(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 49:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];c[h+4>>2]=(c[(c[j>>2]|0)+8>>2]|0)+((c[(c[j>>2]|0)+4>>2]|0)-(c[(c[j>>2]|0)+ -16+4>>2]|0));break};case 92:case 54:{f=(c[q>>2]|0)+320|0;g=(c[j>>2]|0)+4|0;c[f+0>>2]=c[g+0>>2];c[f+4>>2]=c[g+4>>2];break};case 57:case 55:{Au(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 46:{c[h>>2]=c[(c[j>>2]|0)+ -48+4>>2];c[h+4>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+ -48+4>>2]|0);break};case 56:{Au(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0);break};case 39:{yu(c[q>>2]|0,(c[j>>2]|0)+4|0);f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];c[(c[q>>2]|0)+324>>2]=0;break};case 59:{Cu(S,c[q>>2]|0,97,(c[j>>2]|0)+4|0);Au(c[q>>2]|0,S);break};case 61:{Du(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 222:case 219:case 107:case 84:case 69:case 30:case 29:{c[h>>2]=1;break};case 67:{Ju(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 221:case 218:case 108:case 97:case 85:case 83:case 81:case 68:case 31:case 28:{c[h>>2]=0;break};case 58:{c[u>>2]=Bu(c[q>>2]|0,157,c[(c[j>>2]|0)+4>>2]|0,0,0)|0;c[u+4>>2]=c[(c[j>>2]|0)+ -16+4>>2];c[u+8>>2]=c[(c[j>>2]|0)+12>>2];Au(c[q>>2]|0,u);break};case 26:{wu(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0,c[(c[j>>2]|0)+ -64+4>>2]|0,0,0,c[(c[j>>2]|0)+ -32+4>>2]|0);break};case 70:{c[h>>2]=0;break};case 73:case 72:{c[h>>2]=0;c[h+4>>2]=0;break};case 74:{c[h>>2]=c[(c[j>>2]|0)+4>>2];c[h+4>>2]=255;break};case 47:{c[h>>2]=c[(c[j>>2]|0)+ -80+4>>2];c[h+4>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+ -80+4>>2]|0);break};case 75:{c[h>>2]=c[(c[j>>2]|0)+4>>2]<<8;c[h+4>>2]=65280;break};case 76:{c[h>>2]=7;break};case 13:{c[h>>2]=7;break};case 34:{a[h>>0]=0;break};case 63:{Fu(c[q>>2]|0,0,0,0,0,c[(c[j>>2]|0)+4>>2]|0,0,0,0,0)|0;break};case 71:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2]&~c[(c[j>>2]|0)+8>>2]|c[(c[j>>2]|0)+4>>2];break};case 77:{c[h>>2]=8;break};case 24:{vu(c[q>>2]|0,2,(c[j>>2]|0)+4|0);break};case 64:{Gu(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 117:case 115:case 16:case 15:case 14:{c[h>>2]=d[(c[j>>2]|0)+2>>0]|0;break};case 124:case 123:{b[h>>1]=0;break};case 132:{c[h+4>>2]=0;break};case 138:{c[h>>2]=Nu(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,0,0,(c[j>>2]|0)+ -32+4|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 101:{a[h>>0]=10;break};case 99:{c[h>>2]=10;break};case 114:{c[v>>2]=c[(c[j>>2]|0)+4>>2];if((c[v>>2]|0)!=0){if((c[(c[v>>2]|0)+52>>2]|0)!=0){c[w+4>>2]=0;c[x>>2]=Nu(c[q>>2]|0,0,0,0,w,c[v>>2]|0,0,0)|0;c[v>>2]=Ou(c[q>>2]|0,0,c[x>>2]|0,0,0,0,0,0,0,0)|0}}if((c[v>>2]|0)!=0){a[(c[v>>2]|0)+4>>0]=c[(c[j>>2]|0)+ -16+4>>2];c[(c[v>>2]|0)+52>>2]=c[(c[j>>2]|0)+ -32+4>>2];if((c[(c[j>>2]|0)+ -16+4>>2]|0)!=116){a[(c[q>>2]|0)+22>>0]=1}}else{du(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0)}c[h>>2]=c[v>>2];break};case 110:{Ku(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,1,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 96:{Hu(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,(c[j>>2]|0)+ -48+4|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);Iu(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 121:{c[y>>2]=Ou(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,0,0,0,0,0,128,0,0)|0;if((c[y>>2]|0)!=0){a[(c[y>>2]|0)+4>>0]=116;c[(c[y>>2]|0)+52>>2]=c[(c[j>>2]|0)+ -64+4>>2];c[h>>2]=c[y>>2];break a}else{c[h>>2]=c[(c[j>>2]|0)+ -64+4>>2];break a}};case 127:{c[h>>2]=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0;if((c[(c[j>>2]|0)+8>>2]|0)>>>0>0){Qu(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+4|0,1)}Ru(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -16+4|0);break};case 128:{c[z>>2]=Su(c[c[q>>2]>>2]|0,116,0)|0;c[h>>2]=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[z>>2]|0)|0;break};case 134:{c[h>>2]=c[(c[j>>2]|0)+4>>2];Tu(c[h>>2]|0);break};case 136:{c[h>>2]=0;break};case 106:{Ku(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,0,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 139:{if((c[(c[j>>2]|0)+ -96+4>>2]|0)==0){if((c[(c[j>>2]|0)+ -32+8>>2]|0)==0){if((c[(c[j>>2]|0)+ -16+4>>2]|0)==0){if((c[(c[j>>2]|0)+4>>2]|0)==0){c[h>>2]=c[(c[j>>2]|0)+ -64+4>>2];break a}}}}if((c[c[(c[j>>2]|0)+ -64+4>>2]>>2]|0)!=1){Tu(c[(c[j>>2]|0)+ -64+4>>2]|0);c[A>>2]=Ou(c[q>>2]|0,0,c[(c[j>>2]|0)+ -64+4>>2]|0,0,0,0,0,512,0,0)|0;c[h>>2]=Nu(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,0,0,(c[j>>2]|0)+ -32+4|0,c[A>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break a}c[h>>2]=Nu(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,0,0,(c[j>>2]|0)+ -32+4|0,0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;if((c[h>>2]|0)!=0){c[B>>2]=(c[h>>2]|0)+8+(((c[c[h>>2]>>2]|0)-1|0)*72|0);c[C>>2]=(c[(c[j>>2]|0)+ -64+4>>2]|0)+8;c[(c[B>>2]|0)+8>>2]=c[(c[C>>2]|0)+8>>2];c[(c[B>>2]|0)+4>>2]=c[(c[C>>2]|0)+4>>2];c[(c[B>>2]|0)+20>>2]=c[(c[C>>2]|0)+20>>2];c[(c[C>>2]|0)+4>>2]=0;c[(c[C>>2]|0)+8>>2]=0;c[(c[C>>2]|0)+20>>2]=0}fu(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0);break};case 242:case 236:case 161:case 154:case 126:{c[h>>2]=0;break};case 133:{c[h>>2]=ve(c[c[q>>2]>>2]|0,80)|0;break};case 111:{c[D+0>>2]=c[16560>>2];c[D+4>>2]=c[16564>>2];c[D+8>>2]=c[16568>>2];c[D+12>>2]=c[16572>>2];c[D+16>>2]=c[16576>>2];Mu(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,D)|0;du(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 116:{c[h>>2]=116;break};case 118:{c[h>>2]=Ou(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,c[(c[j>>2]|0)+ -80+4>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,b[(c[j>>2]|0)+ -112+4>>1]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0;break};case 243:case 125:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];break};case 120:{c[h>>2]=Ou(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,0,0,0,0,0,128,0,0)|0;break};case 95:{Gu(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0);break};case 102:{a[h>>0]=c[(c[j>>2]|0)+4>>2];break};case 104:{c[h>>2]=4;break};case 137:{c[h>>2]=Nu(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,(c[j>>2]|0)+ -80+4|0,(c[j>>2]|0)+ -64+4|0,(c[j>>2]|0)+ -48+4|0,0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;Uu(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -32+4|0);break};case 129:{c[F>>2]=Bu(c[q>>2]|0,116,0,0,(c[j>>2]|0)+4|0)|0;c[G>>2]=Bu(c[q>>2]|0,27,0,0,(c[j>>2]|0)+ -32+4|0)|0;c[E>>2]=Bu(c[q>>2]|0,122,c[G>>2]|0,c[F>>2]|0,0)|0;c[h>>2]=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,c[E>>2]|0)|0;break};case 135:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];if((c[h>>2]|0)!=0){if((c[c[h>>2]>>2]|0)>0){a[(c[h>>2]|0)+8+(((c[c[h>>2]>>2]|0)-1|0)*72|0)+36>>0]=c[(c[j>>2]|0)+4>>2]}}break};case 122:{b[h>>1]=1;break};case 119:case 113:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 109:{Lu(c[q>>2]|0,(c[j>>2]|0)+ -112+4|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -32+4|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0);break};case 105:{c[h>>2]=5;break};case 112:{c[H>>2]=c[(c[j>>2]|0)+4>>2];if((c[H>>2]|0)!=0){c[I>>2]=0;c[(c[H>>2]|0)+68>>2]=c[(c[j>>2]|0)+ -16+4>>2];if((c[(c[H>>2]|0)+52>>2]|0)!=0){c[L>>2]=0;c[K>>2]=c[H>>2];while(1){if((c[K>>2]|0)==0){break}c[(c[K>>2]|0)+56>>2]=c[L>>2];f=(c[K>>2]|0)+6|0;b[f>>1]=e[f>>1]|4096;c[L>>2]=c[K>>2];c[K>>2]=c[(c[K>>2]|0)+52>>2];c[I>>2]=(c[I>>2]|0)+1}c[J>>2]=c[(c[c[q>>2]>>2]|0)+104>>2];if((c[J>>2]|0)!=0){if((c[I>>2]|0)>(c[J>>2]|0)){bf(c[q>>2]|0,16584,r)}}}}else{bu(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}c[h>>2]=c[H>>2];break};case 159:{c[h>>2]=1;break};case 196:{c[h>>2]=ev(c[q>>2]|0,0,(c[j>>2]|0)+ -48+4|0)|0;bv(h,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+4|0);break};case 193:{c[h>>2]=dv(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,(c[j>>2]|0)+4|0)|0;c[h+4>>2]=c[(c[j>>2]|0)+ -32+8>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 197:{c[h>>2]=ev(c[q>>2]|0,0,(c[j>>2]|0)+4|0)|0;bv(h,(c[j>>2]|0)+4|0,(c[j>>2]|0)+4|0);break};case 184:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];bv(h,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0);break};case 183:{f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];break};case 205:case 204:case 203:case 202:case 201:case 200:case 199:case 198:{fv(h,c[q>>2]|0,d[(c[j>>2]|0)+ -16+2>>0]|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0);break};case 156:{c[h>>2]=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0;if((c[h>>2]|0)!=0){a[(c[(c[h>>2]|0)+4>>2]|0)+(((c[c[h>>2]>>2]|0)-1|0)*20|0)+12>>0]=c[(c[j>>2]|0)+4>>2]}break};case 174:{c[h>>2]=Pu(c[q>>2]|0,0,c[(c[j>>2]|0)+4>>2]|0)|0;Qu(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -32+4|0,1);break};case 206:{f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=0;break};case 168:{c[h+4>>2]=c[(c[j>>2]|0)+ -32+4>>2];c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 176:{Xu(c[q>>2]|0,c[(c[j>>2]|0)+ -96+4>>2]|0,1);$u(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,0,c[(c[j>>2]|0)+ -32+4>>2]|0,d[(c[j>>2]|0)+ -80+4>>0]|0);break};case 169:{Xu(c[q>>2]|0,c[(c[j>>2]|0)+ -80+4>>2]|0,1);Uu(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,(c[j>>2]|0)+ -16+4|0);Yu(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 178:{a[h>>0]=5;break};case 234:case 232:case 170:case 163:case 148:{c[h>>2]=0;break};case 188:{c[N>>2]=Bu(c[q>>2]|0,27,0,0,(c[j>>2]|0)+ -32+4|0)|0;c[M>>2]=Bu(c[q>>2]|0,27,0,0,(c[j>>2]|0)+4|0)|0;c[h>>2]=Bu(c[q>>2]|0,122,c[N>>2]|0,c[M>>2]|0,0)|0;bv(h,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0);break};case 189:{c[P>>2]=Bu(c[q>>2]|0,27,0,0,(c[j>>2]|0)+ -64+4|0)|0;c[R>>2]=Bu(c[q>>2]|0,27,0,0,(c[j>>2]|0)+ -32+4|0)|0;c[Q>>2]=Bu(c[q>>2]|0,27,0,0,(c[j>>2]|0)+4|0)|0;c[O>>2]=Bu(c[q>>2]|0,122,c[R>>2]|0,c[Q>>2]|0,0)|0;c[h>>2]=Bu(c[q>>2]|0,122,c[P>>2]|0,c[O>>2]|0,0)|0;bv(h,(c[j>>2]|0)+ -64+4|0,(c[j>>2]|0)+4|0);break};case 143:{c[h>>2]=1;break};case 181:{c[h>>2]=av(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,(c[j>>2]|0)+4|0)|0;break};case 173:{c[h>>2]=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;Qu(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -32+4|0,1);break};case 192:{do{if((c[(c[j>>2]|0)+8>>2]|0)>>>0>=2){if((a[c[(c[j>>2]|0)+4>>2]>>0]|0)==35){if((a[136+(d[(c[(c[j>>2]|0)+4>>2]|0)+1>>0]|0)>>0]&4|0)!=0){t=c[q>>2]|0;u=(c[j>>2]|0)+4|0;if((d[(c[q>>2]|0)+18>>0]|0)==0){c[r>>2]=u;bf(t,16504,r);c[h>>2]=0;break}c[h>>2]=Bu(t,159,0,0,u)|0;if((c[h>>2]|0)!=0){Wg((c[(c[j>>2]|0)+4>>2]|0)+1|0,(c[h>>2]|0)+28|0)|0}}else{s=170}}else{s=170}}else{s=170}}while(0);if((s|0)==170){Cu(h,c[q>>2]|0,135,(c[j>>2]|0)+4|0);cv(c[q>>2]|0,c[h>>2]|0)}bv(h,(c[j>>2]|0)+4|0,(c[j>>2]|0)+4|0);break};case 151:{c[h>>2]=0;c[h+4>>2]=1;break};case 177:{a[h>>0]=a[(c[j>>2]|0)+4>>0]|0;break};case 149:case 140:{c[h>>2]=0;c[h+4>>2]=0;break};case 146:{c[h>>2]=Wu(c[q>>2]|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+ -16+4|0)|0;break};case 180:case 152:{c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];break};case 167:{c[h>>2]=c[(c[j>>2]|0)+ -32+4>>2];c[h+4>>2]=c[(c[j>>2]|0)+4>>2];break};case 191:case 190:case 185:{Cu(h,c[q>>2]|0,d[(c[j>>2]|0)+2>>0]|0,(c[j>>2]|0)+4|0);break};case 179:case 153:{c[h>>2]=0;break};case 172:{Xu(c[q>>2]|0,c[(c[j>>2]|0)+ -112+4>>2]|0,1);Uu(c[q>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,(c[j>>2]|0)+ -48+4|0);Zu(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,16624);_u(c[q>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,d[(c[j>>2]|0)+ -80+4>>0]|0);break};case 175:{Xu(c[q>>2]|0,c[(c[j>>2]|0)+ -80+4>>2]|0,1);$u(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,d[(c[j>>2]|0)+ -64+4>>0]|0);break};case 195:{if((c[(c[j>>2]|0)+ -16+4>>2]|0)!=0){if((c[c[(c[j>>2]|0)+ -16+4>>2]>>2]|0)>(c[(c[c[q>>2]>>2]|0)+112>>2]|0)){f=c[q>>2]|0;c[r>>2]=(c[j>>2]|0)+ -64+4;bf(f,16640,r)}}c[h>>2]=ev(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,(c[j>>2]|0)+ -64+4|0)|0;bv(h,(c[j>>2]|0)+ -64+4|0,(c[j>>2]|0)+4|0);if((e[(c[j>>2]|0)+ -32+4>>1]|0)!=0){if((c[h>>2]|0)!=0){f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|16}}break};case 145:{c[h>>2]=Wu(c[q>>2]|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+ -16+4|0,0)|0;break};case 194:{c[h>>2]=Bu(c[q>>2]|0,38,c[(c[j>>2]|0)+ -48+4>>2]|0,0,(c[j>>2]|0)+ -16+4|0)|0;bv(h,(c[j>>2]|0)+ -80+4|0,(c[j>>2]|0)+4|0);break};case 160:case 158:{c[h>>2]=0;break};case 182:{c[h>>2]=av(c[c[q>>2]>>2]|0,0,(c[j>>2]|0)+4|0)|0;break};case 157:{c[h>>2]=Pu(c[q>>2]|0,0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0;if((c[h>>2]|0)!=0){if((c[(c[h>>2]|0)+4>>2]|0)!=0){a[(c[(c[h>>2]|0)+4>>2]|0)+12>>0]=c[(c[j>>2]|0)+4>>2]}}break};case 165:{c[h>>2]=0;c[h+4>>2]=0;break};case 166:{c[h>>2]=c[(c[j>>2]|0)+4>>2];c[h+4>>2]=0;break};case 142:{c[h>>2]=Vu(c[c[q>>2]>>2]|0,0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0)|0;break};case 144:{c[h>>2]=Wu(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0,0,0)|0;break};case 233:case 231:case 171:case 164:case 147:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 187:case 186:{Cu(h,c[q>>2]|0,27,(c[j>>2]|0)+4|0);break};case 235:case 162:case 155:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 210:{gv(h,c[q>>2]|0,d[(c[j>>2]|0)+2>>0]|0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0);break};case 224:{c[h>>2]=Bu(c[q>>2]|0,119,0,0,0)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+20>>2]=c[(c[j>>2]|0)+ -16+4>>2];f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|2048;jv(c[q>>2]|0,c[h>>2]|0)}else{du(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}c[h+4>>2]=c[(c[j>>2]|0)+ -32+4>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 207:{f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=1;break};case 226:{c[t>>2]=Vu(c[c[q>>2]>>2]|0,0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0)|0;c[h>>2]=Bu(c[q>>2]|0,75,c[(c[j>>2]|0)+ -48+4>>2]|0,0,0)|0;r=c[q>>2]|0;if((c[h>>2]|0)!=0){f=Ou(r,0,c[t>>2]|0,0,0,0,0,0,0,0)|0;c[(c[h>>2]|0)+20>>2]=f;f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|2048;jv(c[q>>2]|0,c[h>>2]|0)}else{fu(c[r>>2]|0,c[t>>2]|0)}if((c[(c[j>>2]|0)+ -32+4>>2]|0)!=0){c[h>>2]=Bu(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}c[h+4>>2]=c[(c[j>>2]|0)+ -48+8>>2];q=c[j>>2]|0;if((c[(c[j>>2]|0)+4>>2]|0)!=0){q=(c[(c[j>>2]|0)+4>>2]|0)+(c[q+8>>2]|0)|0}else{q=(c[(c[j>>2]|0)+ -16+4>>2]|0)+(c[q+ -16+8>>2]|0)|0}c[h+8>>2]=q;break};case 216:{iv(h,c[q>>2]|0,157,(c[j>>2]|0)+4|0,(c[j>>2]|0)+ -16+4|0);break};case 209:{c[T>>2]=Pu(c[q>>2]|0,0,c[(c[j>>2]|0)+ -32+4>>2]|0)|0;c[T>>2]=Pu(c[q>>2]|0,c[T>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0)|0;c[T>>2]=Pu(c[q>>2]|0,c[T>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;c[h>>2]=ev(c[q>>2]|0,c[T>>2]|0,(c[j>>2]|0)+ -48+4|0)|0;if((c[(c[j>>2]|0)+ -48+12>>2]|0)!=0){c[h>>2]=Bu(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}c[h+4>>2]=c[(c[j>>2]|0)+ -64+8>>2];c[h+8>>2]=c[(c[j>>2]|0)+12>>2];if((c[h>>2]|0)!=0){f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|128}break};case 208:{c[U>>2]=Pu(c[q>>2]|0,0,c[(c[j>>2]|0)+4>>2]|0)|0;c[U>>2]=Pu(c[q>>2]|0,c[U>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0)|0;c[h>>2]=ev(c[q>>2]|0,c[U>>2]|0,(c[j>>2]|0)+ -16+4|0)|0;if((c[(c[j>>2]|0)+ -16+12>>2]|0)!=0){c[h>>2]=Bu(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}c[h+4>>2]=c[(c[j>>2]|0)+ -32+8>>2];c[h+8>>2]=c[(c[j>>2]|0)+12>>2];if((c[h>>2]|0)!=0){f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|128}break};case 228:{c[h>>2]=Bu(c[q>>2]|0,136,c[(c[j>>2]|0)+ -48+4>>2]|0,0,0)|0;if((c[h>>2]|0)!=0){if((c[(c[j>>2]|0)+ -16+4>>2]|0)!=0){r=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0}else{r=c[(c[j>>2]|0)+ -32+4>>2]|0}c[(c[h>>2]|0)+20>>2]=r;jv(c[q>>2]|0,c[h>>2]|0)}else{cu(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0);gu(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}c[h+4>>2]=c[(c[j>>2]|0)+ -64+4>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 217:{iv(h,c[q>>2]|0,158,(c[j>>2]|0)+4|0,(c[j>>2]|0)+ -16+4|0);break};case 215:case 214:{iv(h,c[q>>2]|0,d[(c[j>>2]|0)+ -16+2>>0]|0,(c[j>>2]|0)+4|0,(c[j>>2]|0)+ -16+4|0);break};case 220:{c[V>>2]=Pu(c[q>>2]|0,0,c[(c[j>>2]|0)+ -32+4>>2]|0)|0;c[V>>2]=Pu(c[q>>2]|0,c[V>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;c[h>>2]=Bu(c[q>>2]|0,74,c[(c[j>>2]|0)+ -64+4>>2]|0,0,0)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+20>>2]=c[V>>2]}else{cu(c[c[q>>2]>>2]|0,c[V>>2]|0)}if((c[(c[j>>2]|0)+ -48+4>>2]|0)!=0){c[h>>2]=Bu(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}c[h+4>>2]=c[(c[j>>2]|0)+ -64+8>>2];c[h+8>>2]=c[(c[j>>2]|0)+12>>2];break};case 227:{f=Bu(c[q>>2]|0,20,0,0,0)|0;c[h>>2]=f;c[W>>2]=f;if((c[W>>2]|0)!=0){c[(c[W>>2]|0)+20>>2]=c[(c[j>>2]|0)+ -16+4>>2];f=(c[W>>2]|0)+4|0;c[f>>2]=c[f>>2]|2048;jv(c[q>>2]|0,c[W>>2]|0)}else{du(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}c[h+4>>2]=c[(c[j>>2]|0)+ -48+4>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 212:{fv(h,c[q>>2]|0,73,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0);hv(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[h>>2]|0,76);break};case 213:{fv(h,c[q>>2]|0,148,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+4|0);hv(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[h>>2]|0,77);break};case 211:{gv(h,c[q>>2]|0,77,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0);break};case 223:{do{if((c[(c[j>>2]|0)+ -16+4>>2]|0)==0){c[h>>2]=Bu(c[q>>2]|0,132,0,0,16680+(c[(c[j>>2]|0)+ -48+4>>2]<<3)|0)|0;gu(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0)}else{if((c[c[(c[j>>2]|0)+ -16+4>>2]>>2]|0)==1){c[X>>2]=c[c[(c[(c[j>>2]|0)+ -16+4>>2]|0)+4>>2]>>2];c[c[(c[(c[j>>2]|0)+ -16+4>>2]|0)+4>>2]>>2]=0;cu(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);if((c[X>>2]|0)!=0){f=(c[X>>2]|0)+4|0;c[f>>2]=c[f>>2]&-257;f=(c[X>>2]|0)+4|0;c[f>>2]=c[f>>2]|512}c[h>>2]=Bu(c[q>>2]|0,(c[(c[j>>2]|0)+ -48+4>>2]|0)!=0?78:79,c[(c[j>>2]|0)+ -64+4>>2]|0,c[X>>2]|0,0)|0;break}c[h>>2]=Bu(c[q>>2]|0,75,c[(c[j>>2]|0)+ -64+4>>2]|0,0,0)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+20>>2]=c[(c[j>>2]|0)+ -16+4>>2];jv(c[q>>2]|0,c[h>>2]|0)}else{cu(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}if((c[(c[j>>2]|0)+ -48+4>>2]|0)!=0){c[h>>2]=Bu(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}}}while(0);c[h+4>>2]=c[(c[j>>2]|0)+ -64+8>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 225:{c[h>>2]=Bu(c[q>>2]|0,75,c[(c[j>>2]|0)+ -64+4>>2]|0,0,0)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+20>>2]=c[(c[j>>2]|0)+ -16+4>>2];f=(c[h>>2]|0)+4|0;c[f>>2]=c[f>>2]|2048;jv(c[q>>2]|0,c[h>>2]|0)}else{du(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)}if((c[(c[j>>2]|0)+ -48+4>>2]|0)!=0){c[h>>2]=Bu(c[q>>2]|0,19,c[h>>2]|0,0,0)|0}c[h+4>>2]=c[(c[j>>2]|0)+ -64+8>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 305:{zv(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 229:{c[h>>2]=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0)|0;c[h>>2]=Pu(c[q>>2]|0,c[h>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 237:{c[h>>2]=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 241:{c[h>>2]=0;break};case 239:{Fu(c[q>>2]|0,(c[j>>2]|0)+ -112+4|0,(c[j>>2]|0)+ -96+4|0,Vu(c[c[q>>2]>>2]|0,0,(c[j>>2]|0)+ -64+4|0,0)|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+ -160+4>>2]|0,(c[j>>2]|0)+ -176+4|0,c[(c[j>>2]|0)+4>>2]|0,0,c[(c[j>>2]|0)+ -128+4>>2]|0)|0;break};case 253:{mv(c[q>>2]|0,(c[j>>2]|0)+ -64+4|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -16+4|0,0);break};case 269:case 266:{c[h>>2]=35;break};case 246:{c[h>>2]=0;c[h+4>>2]=0;break};case 297:case 276:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 264:{c[Y>>2]=c[(c[j>>2]|0)+ -48+4>>2];c[Y+4>>2]=(c[(c[j>>2]|0)+4>>2]|0)-(c[(c[j>>2]|0)+ -48+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);nv(c[q>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,Y);break};case 295:{vv(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 280:{f=(c[j>>2]|0)+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];bf(c[q>>2]|0,16704,r);break};case 309:{Bv(c[q>>2]|0,0);break};case 244:{c[Z>>2]=dv(c[q>>2]|0,0,(c[j>>2]|0)+ -16+4|0)|0;c[h>>2]=Pu(c[q>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[Z>>2]|0)|0;Qu(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -32+4|0,1);Zu(c[q>>2]|0,c[h>>2]|0,16696);if((c[h>>2]|0)!=0){a[(c[(c[h>>2]|0)+4>>2]|0)+(((c[c[h>>2]>>2]|0)-1|0)*20|0)+12>>0]=c[(c[j>>2]|0)+4>>2]}break};case 245:{c[_>>2]=dv(c[q>>2]|0,0,(c[j>>2]|0)+ -16+4|0)|0;c[h>>2]=Pu(c[q>>2]|0,0,c[_>>2]|0)|0;Qu(c[q>>2]|0,c[h>>2]|0,(c[j>>2]|0)+ -32+4|0,1);Zu(c[q>>2]|0,c[h>>2]|0,16696);if((c[h>>2]|0)!=0){a[(c[(c[h>>2]|0)+4>>2]|0)+(((c[c[h>>2]>>2]|0)-1|0)*20|0)+12>>0]=c[(c[j>>2]|0)+4>>2]}break};case 255:{mv(c[q>>2]|0,(c[j>>2]|0)+ -64+4|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -16+4|0,1);break};case 301:{wv(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0);break};case 310:{Bv(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 311:{Cv(c[q>>2]|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0,c[(c[j>>2]|0)+ -64+4>>2]|0);break};case 314:{Dv(c[q>>2]|0);break};case 286:{c[h>>2]=rv(c[c[q>>2]>>2]|0,(c[j>>2]|0)+ -32+4|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 272:{c[h>>2]=110;c[h+4>>2]=c[(c[j>>2]|0)+4>>2];break};case 287:{c[h>>2]=sv(c[c[q>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 230:{c[h>>2]=Pu(c[q>>2]|0,0,c[(c[j>>2]|0)+ -32+4>>2]|0)|0;c[h>>2]=Pu(c[q>>2]|0,c[h>>2]|0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 254:{mv(c[q>>2]|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0,1);break};case 288:{c[h>>2]=Bu(c[q>>2]|0,57,0,0,0)|0;if((c[h>>2]|0)!=0){a[(c[h>>2]|0)+1>>0]=4}c[h+4>>2]=c[(c[j>>2]|0)+ -48+4>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 318:case 317:case 316:{Ev(c[q>>2]|0,(c[j>>2]|0)+4|0);break};case 292:{c[h>>2]=3;break};case 277:{c[(c[(c[(c[j>>2]|0)+ -32+4>>2]|0)+36>>2]|0)+32>>2]=c[(c[j>>2]|0)+ -16+4>>2];c[(c[(c[j>>2]|0)+ -32+4>>2]|0)+36>>2]=c[(c[j>>2]|0)+ -16+4>>2];c[h>>2]=c[(c[j>>2]|0)+ -32+4>>2];break};case 248:{kv(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 265:{ov(c[q>>2]|0,(c[j>>2]|0)+ -112+4|0,(c[j>>2]|0)+ -96+4|0,c[(c[j>>2]|0)+ -80+4>>2]|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -64+8>>2]|0,c[(c[j>>2]|0)+ -32+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -160+4>>2]|0,c[(c[j>>2]|0)+ -128+4>>2]|0);q=c[j>>2]|0;if((c[(c[j>>2]|0)+ -96+8>>2]|0)==0){f=q+ -112+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];break a}else{f=q+ -96+4|0;c[h+0>>2]=c[f+0>>2];c[h+4>>2]=c[f+4>>2];break a}};case 278:{c[(c[(c[j>>2]|0)+ -16+4>>2]|0)+36>>2]=c[(c[j>>2]|0)+ -16+4>>2];c[h>>2]=c[(c[j>>2]|0)+ -16+4>>2];break};case 294:{uv(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 268:{c[h>>2]=49;break};case 284:{c[h>>2]=pv(c[c[q>>2]>>2]|0,(c[j>>2]|0)+ -64+4|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,a[(c[j>>2]|0)+ -80+4>>0]|0)|0;break};case 289:{c[h>>2]=Bu(c[q>>2]|0,57,0,0,(c[j>>2]|0)+ -16+4|0)|0;if((c[h>>2]|0)!=0){a[(c[h>>2]|0)+1>>0]=c[(c[j>>2]|0)+ -48+4>>2]}c[h+4>>2]=c[(c[j>>2]|0)+ -80+4>>2];c[h+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);break};case 250:case 249:{lv(c[q>>2]|0);break};case 252:{mv(c[q>>2]|0,(c[j>>2]|0)+ -48+4|0,(c[j>>2]|0)+ -32+4|0,(c[j>>2]|0)+4|0,0);break};case 271:case 270:{c[h>>2]=d[(c[j>>2]|0)+2>>0]|0;c[h+4>>2]=0;break};case 290:{c[h>>2]=1;break};case 302:{xv(c[q>>2]|0,0,0);break};case 300:{wv(c[q>>2]|0,0,0);break};case 303:{xv(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0);break};case 251:{mv(c[q>>2]|0,(c[j>>2]|0)+ -16+4|0,(c[j>>2]|0)+4|0,0,0);break};case 304:{yv(c[q>>2]|0,c[(c[j>>2]|0)+ -48+4>>2]|0,(c[j>>2]|0)+4|0);break};case 282:{bf(c[q>>2]|0,16800,r);break};case 296:case 275:{c[h>>2]=0;break};case 306:{a[(c[c[q>>2]>>2]|0)+242>>0]=0;Av(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0);break};case 291:case 240:{c[h>>2]=2;break};case 267:{c[h>>2]=31;break};case 283:{bf(c[q>>2]|0,16888,r);break};case 285:{c[h>>2]=qv(c[c[q>>2]>>2]|0,(c[j>>2]|0)+ -32+4|0,c[(c[j>>2]|0)+ -16+4>>2]|0,c[(c[j>>2]|0)+4>>2]|0,a[(c[j>>2]|0)+ -64+4>>0]|0)|0;break};case 293:{tv(c[q>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0);break};case 238:{c[h>>2]=Pu(c[q>>2]|0,0,c[(c[j>>2]|0)+4>>2]|0)|0;break};case 326:{c[h>>2]=Fv(c[q>>2]|0,c[(c[j>>2]|0)+ -112+4>>2]|0,(c[j>>2]|0)+ -80+4|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0;break};case 324:case 323:{c[h>>2]=c[(c[j>>2]|0)+4>>2];break};case 322:{c[h>>2]=0;break};case 325:{c[h>>2]=Fv(c[q>>2]|0,0,(c[j>>2]|0)+ -80+4|0,c[(c[j>>2]|0)+ -64+4>>2]|0,c[(c[j>>2]|0)+ -16+4>>2]|0)|0;break};default:{}}}while(0);c[m>>2]=d[16976+(c[o>>2]<<1)>>0]|0;c[k>>2]=d[16977+(c[o>>2]<<1)>>0]|0;f=c[p>>2]|0;c[f>>2]=(c[f>>2]|0)-(c[k>>2]|0);c[l>>2]=Gv(e[(c[j>>2]|0)+(0-(c[k>>2]|0)<<4)>>1]|0,c[m>>2]&255)|0;if((c[l>>2]|0)>=642){Hv(c[p>>2]|0);i=n;return}o=c[p>>2]|0;if((c[k>>2]|0)!=0){c[o>>2]=(c[o>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+(0-((c[k>>2]|0)-1)<<4);b[c[j>>2]>>1]=c[l>>2];a[(c[j>>2]|0)+2>>0]=c[m>>2];f=(c[j>>2]|0)+4|0;c[f+0>>2]=c[h+0>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];i=n;return}else{nu(o,c[l>>2]|0,c[m>>2]|0,h);i=n;return}}function pu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e;f=e+12|0;g=e+8|0;c[f>>2]=a;c[e+4>>2]=b;c[g>>2]=c[(c[f>>2]|0)+8>>2];a=c[g>>2]|0;c[h>>2]=d;bf(a,16504,h);c[(c[f>>2]|0)+8>>2]=c[g>>2];i=e;return}function qu(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[(c[f>>2]|0)+450>>0]=c[g>>2];c[(c[f>>2]|0)+440>>2]=0;i=e;return}function ru(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;h=k+28|0;e=k;g=k+4|0;n=k+8|0;m=k+12|0;j=k+16|0;l=k+20|0;o=k+24|0;c[h>>2]=b;c[e>>2]=c[c[h>>2]>>2];if((a[(c[e>>2]|0)+64>>0]|0)!=0){i=k;return}if((a[(c[h>>2]|0)+18>>0]|0)!=0){i=k;return}if((c[(c[h>>2]|0)+64>>2]|0)!=0){i=k;return}c[g>>2]=Ov(c[h>>2]|0)|0;do{if((c[g>>2]|0)!=0){do{}while((hz(c[g>>2]|0,58)|0)!=0);Yv(c[g>>2]|0,24)|0;if((d[(c[e>>2]|0)+64>>0]|0)==0){if((c[(c[h>>2]|0)+332>>2]|0)==0){if((c[(c[h>>2]|0)+316>>2]|0)==0){break}}jw(c[g>>2]|0,0);c[m>>2]=0;c[n>>2]=1;while(1){if((c[m>>2]|0)>=(c[(c[e>>2]|0)+20>>2]|0)){break}if((c[n>>2]&c[(c[h>>2]|0)+332>>2]|0)!=0){jf(c[g>>2]|0,c[m>>2]|0);ff(c[g>>2]|0,4,c[m>>2]|0,(c[n>>2]&c[(c[h>>2]|0)+328>>2]|0)!=0&1,c[(c[h>>2]|0)+336+(c[m>>2]<<2)>>2]|0,c[(c[(c[(c[e>>2]|0)+16>>2]|0)+(c[m>>2]<<4)+12>>2]|0)+4>>2]|0)|0;if((d[(c[e>>2]|0)+137>>0]|0)==0){gf(c[g>>2]|0,1)}}c[n>>2]=c[n>>2]<<1;c[m>>2]=(c[m>>2]|0)+1}c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[h>>2]|0)+452>>2]|0)){break}c[l>>2]=ww(c[e>>2]|0,c[(c[(c[h>>2]|0)+520>>2]|0)+(c[j>>2]<<2)>>2]|0)|0;Sv(c[g>>2]|0,141,0,0,0,c[l>>2]|0,-10)|0;c[j>>2]=(c[j>>2]|0)+1}c[(c[h>>2]|0)+452>>2]=0;WE(c[h>>2]|0);XE(c[h>>2]|0);a:do{if((c[(c[h>>2]|0)+316>>2]|0)!=0){c[o>>2]=c[(c[h>>2]|0)+316>>2];a[(c[h>>2]|0)+23>>0]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[c[o>>2]>>2]|0)){break a}vz(c[h>>2]|0,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[j>>2]|0)*20|0)>>2]|0,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[j>>2]|0)*20|0)+16>>2]|0);c[j>>2]=(c[j>>2]|0)+1}}}while(0);Qv(c[g>>2]|0,16,0,1)|0}}}while(0);if((c[g>>2]|0)!=0){if((c[(c[h>>2]|0)+64>>2]|0)==0){if((a[(c[e>>2]|0)+64>>0]|0)!=0){f=30}else{if((c[(c[h>>2]|0)+404>>2]|0)!=0){if((c[(c[h>>2]|0)+68>>2]|0)==0){c[(c[h>>2]|0)+68>>2]=1}}pf(c[g>>2]|0,c[h>>2]|0);c[(c[h>>2]|0)+12>>2]=101;a[(c[h>>2]|0)+16>>0]=0}}else{f=30}}else{f=30}if((f|0)==30){c[(c[h>>2]|0)+12>>2]=1}c[(c[h>>2]|0)+68>>2]=0;c[(c[h>>2]|0)+72>>2]=0;c[(c[h>>2]|0)+76>>2]=0;c[(c[h>>2]|0)+440>>2]=0;c[(c[h>>2]|0)+332>>2]=0;i=k;return}function su(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;j=d+16|0;h=d;f=d+4|0;g=d+8|0;e=d+12|0;c[j>>2]=a;c[h>>2]=b;c[f>>2]=c[c[j>>2]>>2];if((Lv(c[j>>2]|0,22,33560,0,0)|0)!=0){i=d;return}c[g>>2]=Ov(c[j>>2]|0)|0;if((c[g>>2]|0)==0){i=d;return}a:do{if((c[h>>2]|0)!=7){c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+20>>2]|0)){break a}Qv(c[g>>2]|0,4,c[e>>2]|0,((c[h>>2]|0)==9&1)+1|0)|0;jf(c[g>>2]|0,c[e>>2]|0);c[e>>2]=(c[e>>2]|0)+1}}}while(0);Qv(c[g>>2]|0,3,0,0)|0;i=d;return}function tu(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((Lv(c[e>>2]|0,22,33592,0,0)|0)!=0){i=b;return}c[d>>2]=Ov(c[e>>2]|0)|0;if((c[d>>2]|0)==0){i=b;return}Qv(c[d>>2]|0,3,1,0)|0;i=b;return}function uu(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;if((Lv(c[e>>2]|0,22,33576,0,0)|0)!=0){i=b;return}c[d>>2]=Ov(c[e>>2]|0)|0;if((c[d>>2]|0)==0){i=b;return}Qv(c[d>>2]|0,3,1,1)|0;i=b;return}function vu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;j=e+16|0;g=e;k=e+4|0;h=e+8|0;f=e+12|0;c[j>>2]=a;c[g>>2]=b;c[k>>2]=d;c[h>>2]=Iv(c[c[j>>2]>>2]|0,c[k>>2]|0)|0;if((c[h>>2]|0)==0){i=e;return}c[f>>2]=Ov(c[j>>2]|0)|0;if((c[f>>2]|0)!=0){if((Lv(c[j>>2]|0,32,c[33544+(c[g>>2]<<2)>>2]|0,c[h>>2]|0,0)|0)==0){Sv(c[f>>2]|0,2,c[g>>2]|0,0,0,c[h>>2]|0,-1)|0;i=e;return}}cc(c[c[j>>2]>>2]|0,c[h>>2]|0);i=e;return}function wu(e,f,g,h,j,k,l){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;s=i;i=i+96|0;m=s;u=s+80|0;J=s+76|0;I=s+72|0;H=s+68|0;G=s+64|0;A=s+60|0;r=s+56|0;w=s+52|0;o=s+48|0;n=s+44|0;z=s+84|0;p=s+16|0;q=s+12|0;x=s+4|0;y=s+8|0;C=s+36|0;E=s+20|0;F=s+24|0;B=s+28|0;t=s+32|0;D=s+40|0;c[u>>2]=e;c[J>>2]=f;c[I>>2]=g;c[H>>2]=h;c[G>>2]=j;c[A>>2]=k;c[r>>2]=l;c[o>>2]=0;c[n>>2]=c[c[u>>2]>>2];c[p>>2]=ky(c[u>>2]|0,c[J>>2]|0,c[I>>2]|0,q)|0;if((c[p>>2]|0)<0){i=s;return}if((c[H>>2]|0)!=0){if((c[(c[I>>2]|0)+4>>2]|0)>>>0>0){if((c[p>>2]|0)!=1){bf(c[u>>2]|0,33432,m);i=s;return}}}if((c[H>>2]|0)!=0){c[p>>2]=1}J=(c[u>>2]|0)+496|0;e=c[q>>2]|0;c[J+0>>2]=c[e+0>>2];c[J+4>>2]=c[e+4>>2];c[o>>2]=Iv(c[n>>2]|0,c[q>>2]|0)|0;if((c[o>>2]|0)==0){i=s;return}a:do{if(0==(uw(c[u>>2]|0,c[o>>2]|0)|0)){if((d[(c[n>>2]|0)+136>>0]|0)==1){c[H>>2]=1}c[y>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[p>>2]<<4)>>2];if((Lv(c[u>>2]|0,18,(c[H>>2]|0)==1?21432:21456,0,c[y>>2]|0)|0)==0){h=(c[H>>2]|0)!=0;do{if((c[G>>2]|0)!=0){if(h){c[x>>2]=6;break}else{c[x>>2]=8;break}}else{if(h){c[x>>2]=4;break}else{c[x>>2]=2;break}}}while(0);if((c[A>>2]|0)==0){if((Lv(c[u>>2]|0,c[x>>2]|0,c[o>>2]|0,0,c[y>>2]|0)|0)!=0){break}}do{if((a[(c[u>>2]|0)+451>>0]|0)==0){c[C>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[p>>2]<<4)>>2];if(0!=(gy(c[u>>2]|0)|0)){break a}c[w>>2]=cw(c[n>>2]|0,c[o>>2]|0,c[C>>2]|0)|0;if((c[w>>2]|0)==0){if((tw(c[n>>2]|0,c[o>>2]|0,c[C>>2]|0)|0)==0){break}J=c[u>>2]|0;c[m>>2]=c[o>>2];bf(J,33504,m);break a}t=c[u>>2]|0;if((c[r>>2]|0)!=0){aw(t,c[p>>2]|0);break a}else{c[m>>2]=c[q>>2];bf(t,33480,m);break a}}}while(0);c[w>>2]=ve(c[n>>2]|0,76)|0;if((c[w>>2]|0)==0){a[(c[n>>2]|0)+64>>0]=1;c[(c[u>>2]|0)+12>>2]=7;J=(c[u>>2]|0)+64|0;c[J>>2]=(c[J>>2]|0)+1;break}c[c[w>>2]>>2]=c[o>>2];b[(c[w>>2]|0)+36>>1]=-1;c[(c[w>>2]|0)+68>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[p>>2]<<4)+12>>2];b[(c[w>>2]|0)+40>>1]=1;b[(c[w>>2]|0)+28>>1]=200;c[(c[u>>2]|0)+484>>2]=c[w>>2];if((a[(c[u>>2]|0)+18>>0]|0)==0){if((YK(c[o>>2]|0,22680)|0)==0){c[(c[(c[w>>2]|0)+68>>2]|0)+72>>2]=c[w>>2]}}if((a[(c[n>>2]|0)+137>>0]|0)!=0){i=s;return}J=Ov(c[u>>2]|0)|0;c[z>>2]=J;if((J|0)==0){i=s;return}$v(c[u>>2]|0,0,c[p>>2]|0);if((c[A>>2]|0)!=0){Yv(c[z>>2]|0,141)|0}e=(c[u>>2]|0)+72|0;J=(c[e>>2]|0)+1|0;c[e>>2]=J;c[(c[u>>2]|0)+384>>2]=J;c[B>>2]=J;J=(c[u>>2]|0)+72|0;e=(c[J>>2]|0)+1|0;c[J>>2]=e;c[(c[u>>2]|0)+388>>2]=e;c[t>>2]=e;e=(c[u>>2]|0)+72|0;J=(c[e>>2]|0)+1|0;c[e>>2]=J;c[D>>2]=J;Tv(c[z>>2]|0,50,c[p>>2]|0,c[D>>2]|0,2)|0;jf(c[z>>2]|0,c[p>>2]|0);c[E>>2]=oy(c[z>>2]|0,44,c[D>>2]|0)|0;c[F>>2]=(c[(c[n>>2]|0)+24>>2]&32768|0)!=0?1:4;Qv(c[z>>2]|0,25,c[F>>2]|0,c[D>>2]|0)|0;Tv(c[z>>2]|0,51,c[p>>2]|0,2,c[D>>2]|0)|0;Qv(c[z>>2]|0,25,d[(c[(c[(c[n>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[D>>2]|0)|0;Tv(c[z>>2]|0,51,c[p>>2]|0,5,c[D>>2]|0)|0;jw(c[z>>2]|0,c[E>>2]|0);if((c[G>>2]|0)!=0){v=41}else{if((c[A>>2]|0)!=0){v=41}else{J=Qv(c[z>>2]|0,118,c[p>>2]|0,c[t>>2]|0)|0;c[(c[u>>2]|0)+416>>2]=J}}if((v|0)==41){Qv(c[z>>2]|0,25,0,c[t>>2]|0)|0}hA(c[u>>2]|0,c[p>>2]|0);Qv(c[z>>2]|0,69,0,c[B>>2]|0)|0;Qv(c[z>>2]|0,28,0,c[D>>2]|0)|0;Tv(c[z>>2]|0,70,0,c[D>>2]|0,c[B>>2]|0)|0;gf(c[z>>2]|0,8);Yv(c[z>>2]|0,58)|0;i=s;return}}}while(0);cc(c[n>>2]|0,c[o>>2]|0);i=s;return}function xu(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;y=i;i=i+144|0;m=y;u=y+124|0;C=y+120|0;x=y+116|0;D=y+132|0;E=y+112|0;r=y+108|0;n=y+104|0;o=y+100|0;H=y+96|0;k=y+92|0;q=y+128|0;s=y+64|0;v=y+60|0;t=y+32|0;G=y+36|0;F=y+56|0;w=y+84|0;p=y+68|0;A=y+72|0;z=y+76|0;B=y+80|0;l=y+88|0;c[u>>2]=e;c[C>>2]=f;c[x>>2]=g;a[D>>0]=h;c[E>>2]=j;c[n>>2]=c[c[u>>2]>>2];if((c[x>>2]|0)==0){if((c[E>>2]|0)==0){i=y;return}}if((d[(c[n>>2]|0)+64>>0]|0)!=0){i=y;return}c[r>>2]=c[(c[u>>2]|0)+484>>2];if((c[r>>2]|0)==0){i=y;return}if((a[(c[n>>2]|0)+137>>0]|0)!=0){c[(c[r>>2]|0)+32>>2]=c[(c[n>>2]|0)+132>>2]}do{if((a[D>>0]&32|0)!=0){if((a[(c[r>>2]|0)+44>>0]&8|0)!=0){bf(c[u>>2]|0,33040,m);i=y;return}if((a[(c[r>>2]|0)+44>>0]&4|0)==0){e=c[u>>2]|0;c[m>>2]=c[c[r>>2]>>2];bf(e,33096,m);break}else{e=(c[r>>2]|0)+44|0;a[e>>0]=d[e>>0]|32;QE(c[u>>2]|0,c[r>>2]|0);break}}}while(0);c[o>>2]=ef(c[n>>2]|0,c[(c[r>>2]|0)+68>>2]|0)|0;if((c[(c[r>>2]|0)+24>>2]|0)!=0){KE(c[u>>2]|0,c[r>>2]|0,4,0,c[(c[r>>2]|0)+24>>2]|0)}RE(c[r>>2]|0);c[H>>2]=c[(c[r>>2]|0)+8>>2];while(1){if((c[H>>2]|0)==0){break}ME(c[H>>2]|0);c[H>>2]=c[(c[H>>2]|0)+20>>2]}if((a[(c[n>>2]|0)+137>>0]|0)==0){c[q>>2]=Ov(c[u>>2]|0)|0;if((c[q>>2]|0)==0){i=y;return}oy(c[q>>2]|0,58,0)|0;if((c[(c[r>>2]|0)+12>>2]|0)==0){c[s>>2]=27864;c[v>>2]=33128}else{c[s>>2]=31936;c[v>>2]=33136}do{if((c[E>>2]|0)!=0){Tv(c[q>>2]|0,53,1,c[(c[u>>2]|0)+388>>2]|0,c[o>>2]|0)|0;gf(c[q>>2]|0,2);c[(c[u>>2]|0)+68>>2]=2;Hz(G,14,1);Mu(c[u>>2]|0,c[E>>2]|0,G)|0;oy(c[q>>2]|0,58,1)|0;if((c[(c[u>>2]|0)+64>>2]|0)==0){c[F>>2]=Dw(c[u>>2]|0,c[E>>2]|0)|0;if((c[F>>2]|0)==0){i=y;return}else{b[(c[r>>2]|0)+38>>1]=b[(c[F>>2]|0)+38>>1]|0;c[(c[r>>2]|0)+4>>2]=c[(c[F>>2]|0)+4>>2];b[(c[F>>2]|0)+38>>1]=0;c[(c[F>>2]|0)+4>>2]=0;ac(c[n>>2]|0,c[F>>2]|0);break}}}}while(0);if((c[E>>2]|0)!=0){c[t>>2]=SE(c[n>>2]|0,c[r>>2]|0)|0}else{if((d[D>>0]|0)!=0){D=(c[u>>2]|0)+504|0}else{D=c[x>>2]|0}c[w>>2]=D;c[k>>2]=(c[c[w>>2]>>2]|0)-(c[(c[u>>2]|0)+496>>2]|0);if((a[c[c[w>>2]>>2]>>0]|0)!=59){c[k>>2]=(c[k>>2]|0)+(c[(c[w>>2]|0)+4>>2]|0)}e=c[n>>2]|0;g=c[k>>2]|0;f=c[(c[u>>2]|0)+496>>2]|0;c[m>>2]=c[v>>2];c[m+4>>2]=g;c[m+8>>2]=f;c[t>>2]=cf(e,33144,m)|0}e=c[u>>2]|0;F=(c[o>>2]|0)==1?21432:21456;G=c[s>>2]|0;H=c[c[r>>2]>>2]|0;j=c[c[r>>2]>>2]|0;h=c[(c[u>>2]|0)+388>>2]|0;g=c[t>>2]|0;f=c[(c[u>>2]|0)+384>>2]|0;c[m>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2];c[m+4>>2]=F;c[m+8>>2]=G;c[m+12>>2]=H;c[m+16>>2]=j;c[m+20>>2]=h;c[m+24>>2]=g;c[m+28>>2]=f;Nv(e,33160,m);cc(c[n>>2]|0,c[t>>2]|0);Pv(c[u>>2]|0,c[o>>2]|0);if((a[(c[r>>2]|0)+44>>0]&8|0)!=0){c[p>>2]=(c[(c[n>>2]|0)+16>>2]|0)+(c[o>>2]<<4);if((c[(c[(c[p>>2]|0)+12>>2]|0)+72>>2]|0)==0){e=c[u>>2]|0;c[m>>2]=c[c[p>>2]>>2];Nv(e,33248,m)}}g=c[q>>2]|0;f=c[o>>2]|0;e=c[n>>2]|0;c[m>>2]=c[c[r>>2]>>2];Rv(g,f,cf(e,33296,m)|0)}if((a[(c[n>>2]|0)+137>>0]|0)==0){i=y;return}c[z>>2]=c[(c[r>>2]|0)+68>>2];g=(c[z>>2]|0)+8|0;f=c[c[r>>2]>>2]|0;e=Ub(c[c[r>>2]>>2]|0)|0;c[A>>2]=Eh(g,f,e,c[r>>2]|0)|0;if((c[A>>2]|0)!=0){a[(c[n>>2]|0)+64>>0]=1;i=y;return}c[(c[u>>2]|0)+484>>2]=0;e=(c[n>>2]|0)+24|0;c[e>>2]=c[e>>2]|2;if((c[(c[r>>2]|0)+12>>2]|0)!=0){i=y;return}c[B>>2]=c[(c[u>>2]|0)+496>>2];if((c[c[C>>2]>>2]|0)==0){c[C>>2]=c[x>>2]}c[l>>2]=(c[c[C>>2]>>2]|0)-(c[B>>2]|0);e=13+(Ht(c[B>>2]|0,c[l>>2]|0)|0)|0;c[(c[r>>2]|0)+48>>2]=e;i=y;return}function yu(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;l=n;j=n+28|0;r=n+24|0;k=n+20|0;q=n+32|0;p=n+8|0;o=n+4|0;m=n+12|0;g=n+16|0;c[j>>2]=e;c[r>>2]=f;c[m>>2]=c[c[j>>2]>>2];e=c[(c[j>>2]|0)+484>>2]|0;c[k>>2]=e;if((e|0)==0){i=n;return}if(((b[(c[k>>2]|0)+38>>1]|0)+1|0)>(c[(c[m>>2]|0)+96>>2]|0)){e=c[j>>2]|0;c[l>>2]=c[c[k>>2]>>2];bf(e,32984,l);i=n;return}c[p>>2]=Iv(c[m>>2]|0,c[r>>2]|0)|0;if((c[p>>2]|0)==0){i=n;return}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(b[(c[k>>2]|0)+38>>1]|0)){break}if((d[784+(d[c[p>>2]>>0]|0)>>0]|0)==(d[784+(d[c[(c[(c[k>>2]|0)+4>>2]|0)+((c[q>>2]|0)*24|0)>>2]>>0]|0)>>0]|0)){if((Dc((c[p>>2]|0)+1|0,(c[(c[(c[k>>2]|0)+4>>2]|0)+((c[q>>2]|0)*24|0)>>2]|0)+1|0)|0)==0){h=9;break}}c[q>>2]=(c[q>>2]|0)+1}if((h|0)==9){e=c[j>>2]|0;c[l>>2]=c[p>>2];bf(e,33008,l);cc(c[m>>2]|0,c[p>>2]|0);i=n;return}do{if((b[(c[k>>2]|0)+38>>1]&7|0)==0){c[g>>2]=Ot(c[m>>2]|0,c[(c[k>>2]|0)+4>>2]|0,((b[(c[k>>2]|0)+38>>1]|0)+8|0)*24|0)|0;if((c[g>>2]|0)!=0){c[(c[k>>2]|0)+4>>2]=c[g>>2];break}cc(c[m>>2]|0,c[p>>2]|0);i=n;return}}while(0);c[o>>2]=(c[(c[k>>2]|0)+4>>2]|0)+((b[(c[k>>2]|0)+38>>1]|0)*24|0);e=c[o>>2]|0;c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[c[o>>2]>>2]=c[p>>2];a[(c[o>>2]|0)+21>>0]=98;a[(c[o>>2]|0)+22>>0]=1;e=(c[k>>2]|0)+38|0;b[e>>1]=(b[e>>1]|0)+1<<16>>16;i=n;return}function zu(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f+12|0;k=f;g=f+4|0;h=f+8|0;c[j>>2]=d;c[k>>2]=e;c[g>>2]=c[(c[j>>2]|0)+484>>2];if((c[g>>2]|0)==0){i=f;return}if((b[(c[g>>2]|0)+38>>1]|0)<1){i=f;return}c[h>>2]=(c[(c[g>>2]|0)+4>>2]|0)+(((b[(c[g>>2]|0)+38>>1]|0)-1|0)*24|0);d=Iv(c[c[j>>2]>>2]|0,c[k>>2]|0)|0;c[(c[h>>2]|0)+12>>2]=d;d=Qw(c[(c[h>>2]|0)+12>>2]|0,(c[h>>2]|0)+22|0)|0;a[(c[h>>2]|0)+21>>0]=d;i=f;return}function Au(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;k=e;j=e+20|0;f=e+4|0;l=e+8|0;h=e+12|0;g=e+16|0;c[j>>2]=a;c[f>>2]=d;c[g>>2]=c[c[j>>2]>>2];c[l>>2]=c[(c[j>>2]|0)+484>>2];if((c[l>>2]|0)==0){l=c[g>>2]|0;a=c[f>>2]|0;a=c[a>>2]|0;gu(l,a);i=e;return}c[h>>2]=(c[(c[l>>2]|0)+4>>2]|0)+(((b[(c[l>>2]|0)+38>>1]|0)-1|0)*24|0);if((PE(c[c[f>>2]>>2]|0)|0)!=0){gu(c[g>>2]|0,c[(c[h>>2]|0)+4>>2]|0);l=hx(c[g>>2]|0,c[c[f>>2]>>2]|0,1)|0;c[(c[h>>2]|0)+4>>2]=l;cc(c[g>>2]|0,c[(c[h>>2]|0)+8>>2]|0);l=ft(c[g>>2]|0,c[(c[f>>2]|0)+4>>2]|0,(c[(c[f>>2]|0)+8>>2]|0)-(c[(c[f>>2]|0)+4>>2]|0)|0)|0;c[(c[h>>2]|0)+8>>2]=l;l=c[g>>2]|0;a=c[f>>2]|0;a=c[a>>2]|0;gu(l,a);i=e;return}else{l=c[j>>2]|0;c[k>>2]=c[c[h>>2]>>2];bf(l,32936,k);l=c[g>>2]|0;a=c[f>>2]|0;a=c[a>>2]|0;gu(l,a);i=e;return}}function Bu(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;k=j+20|0;g=j;l=j+4|0;m=j+8|0;o=j+12|0;n=j+16|0;c[k>>2]=a;c[g>>2]=b;c[l>>2]=d;c[m>>2]=e;c[o>>2]=f;if((c[g>>2]|0)==72){if((c[l>>2]|0)!=0){if((c[m>>2]|0)!=0){c[n>>2]=Ux(c[c[k>>2]>>2]|0,c[l>>2]|0,c[m>>2]|0)|0}else{h=5}}else{h=5}}else{h=5}if((h|0)==5){c[n>>2]=Wx(c[c[k>>2]>>2]|0,c[g>>2]|0,c[o>>2]|0,1)|0;Xx(c[c[k>>2]>>2]|0,c[n>>2]|0,c[l>>2]|0,c[m>>2]|0)}if((c[n>>2]|0)==0){a=c[n>>2]|0;i=j;return a|0}wx(c[k>>2]|0,c[(c[n>>2]|0)+24>>2]|0)|0;a=c[n>>2]|0;i=j;return a|0}function Cu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;k=f;j=f+4|0;h=f+8|0;c[g>>2]=a;c[k>>2]=b;c[j>>2]=d;c[h>>2]=e;a=Bu(c[k>>2]|0,c[j>>2]|0,0,0,c[h>>2]|0)|0;c[c[g>>2]>>2]=a;c[(c[g>>2]|0)+4>>2]=c[c[h>>2]>>2];c[(c[g>>2]|0)+8>>2]=(c[c[h>>2]>>2]|0)+(c[(c[h>>2]|0)+4>>2]|0);i=f;return}function Du(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+8|0;g=f;h=f+4|0;c[j>>2]=d;c[g>>2]=e;c[h>>2]=c[(c[j>>2]|0)+484>>2];if((c[h>>2]|0)==0){i=f;return}if((b[(c[h>>2]|0)+38>>1]|0)<1){i=f;return}a[(c[(c[h>>2]|0)+4>>2]|0)+(((b[(c[h>>2]|0)+38>>1]|0)-1|0)*24|0)+20>>0]=c[g>>2];i=f;return}function Eu(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;r=i;i=i+64|0;m=r;l=r+44|0;k=r+40|0;n=r+36|0;o=r+32|0;p=r+28|0;u=r+48|0;t=r+16|0;w=r+12|0;y=r+8|0;x=r+4|0;q=r+20|0;s=r+24|0;c[l>>2]=e;c[k>>2]=f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[u>>2]=c[(c[l>>2]|0)+484>>2];c[t>>2]=0;c[w>>2]=-1;if((c[u>>2]|0)==0){f=c[l>>2]|0;f=c[f>>2]|0;e=c[k>>2]|0;cu(f,e);i=r;return}if((d[(c[l>>2]|0)+451>>0]|0)!=0){f=c[l>>2]|0;f=c[f>>2]|0;e=c[k>>2]|0;cu(f,e);i=r;return}if((a[(c[u>>2]|0)+44>>0]&4|0)!=0){f=c[l>>2]|0;c[m>>2]=c[c[u>>2]>>2];bf(f,32832,m);f=c[l>>2]|0;f=c[f>>2]|0;e=c[k>>2]|0;cu(f,e);i=r;return}e=(c[u>>2]|0)+44|0;a[e>>0]=d[e>>0]|4;a:do{if((c[k>>2]|0)==0){c[w>>2]=(b[(c[u>>2]|0)+38>>1]|0)-1;e=(c[(c[u>>2]|0)+4>>2]|0)+((c[w>>2]|0)*24|0)+23|0;a[e>>0]=d[e>>0]|1;c[t>>2]=c[(c[(c[u>>2]|0)+4>>2]|0)+((c[w>>2]|0)*24|0)+12>>2];c[x>>2]=1}else{c[x>>2]=c[c[k>>2]>>2];c[y>>2]=0;while(1){if((c[y>>2]|0)>=(c[x>>2]|0)){break a}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(b[(c[u>>2]|0)+38>>1]|0)){break}e=(Dc(c[(c[(c[k>>2]|0)+4>>2]|0)+((c[y>>2]|0)*20|0)+4>>2]|0,c[(c[(c[u>>2]|0)+4>>2]|0)+((c[w>>2]|0)*24|0)>>2]|0)|0)==0;j=c[w>>2]|0;if(e){v=12;break}c[w>>2]=j+1}if((v|0)==12){v=0;e=(c[(c[u>>2]|0)+4>>2]|0)+(j*24|0)+23|0;a[e>>0]=d[e>>0]|1;c[t>>2]=c[(c[(c[u>>2]|0)+4>>2]|0)+((c[w>>2]|0)*24|0)+12>>2]}c[y>>2]=(c[y>>2]|0)+1}}}while(0);if((c[x>>2]|0)==1){if((c[t>>2]|0)!=0){if((Dc(c[t>>2]|0,22944)|0)==0){if((c[p>>2]|0)==0){b[(c[u>>2]|0)+36>>1]=c[w>>2];a[(c[u>>2]|0)+45>>0]=c[n>>2];e=(c[u>>2]|0)+44|0;a[e>>0]=d[e>>0]|c[o>>2]<<3;if((c[k>>2]|0)==0){f=c[l>>2]|0;f=c[f>>2]|0;e=c[k>>2]|0;cu(f,e);i=r;return}a[(c[l>>2]|0)+448>>0]=a[(c[(c[k>>2]|0)+4>>2]|0)+12>>0]|0;f=c[l>>2]|0;f=c[f>>2]|0;e=c[k>>2]|0;cu(f,e);i=r;return}}}}t=c[l>>2]|0;if((c[o>>2]|0)!=0){bf(t,32880,m);f=c[l>>2]|0;f=c[f>>2]|0;e=c[k>>2]|0;cu(f,e);i=r;return}c[q>>2]=c[t+8>>2];if((c[q>>2]|0)!=0){e=Yv(c[q>>2]|0,156)|0;c[(c[l>>2]|0)+420>>2]=e}c[s>>2]=Fu(c[l>>2]|0,0,0,0,c[k>>2]|0,c[n>>2]|0,0,0,c[p>>2]|0,0)|0;if((c[s>>2]|0)!=0){e=(c[s>>2]|0)+55|0;a[e>>0]=a[e>>0]&-4|2;if((c[q>>2]|0)!=0){jw(c[q>>2]|0,c[(c[l>>2]|0)+420>>2]|0)}}c[k>>2]=0;f=c[l>>2]|0;f=c[f>>2]|0;e=c[k>>2]|0;cu(f,e);i=r;return} + + + +function KB(d,f,g,h,j){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;m=i;i=i+80|0;s=m+60|0;t=m+44|0;k=m+56|0;C=m+52|0;l=m+48|0;w=m+64|0;x=m+66|0;y=m+40|0;B=m+36|0;r=m+32|0;p=m+24|0;q=m+20|0;n=m+16|0;o=m+12|0;u=m+8|0;z=m+4|0;v=m;A=m+28|0;c[s>>2]=d;c[t>>2]=f;c[k>>2]=g;c[C>>2]=h;c[l>>2]=j;c[y>>2]=c[(c[s>>2]|0)+8>>2];c[p>>2]=c[(c[t>>2]|0)+56>>2];b[w>>1]=b[(c[p>>2]|0)+24>>1]|0;b[x>>1]=b[(c[p>>2]|0)+26>>1]|0;c[B>>2]=c[(c[p>>2]|0)+28>>2];c[n>>2]=(c[(c[s>>2]|0)+72>>2]|0)+1;c[o>>2]=(e[(c[p>>2]|0)+24>>1]|0)+(c[C>>2]|0);d=(c[s>>2]|0)+72|0;c[d>>2]=(c[d>>2]|0)+(c[o>>2]|0);d=c[c[s>>2]>>2]|0;c[u>>2]=pe(d,GA(c[y>>2]|0,c[B>>2]|0)|0)|0;if((c[u>>2]|0)==0){a[(c[c[s>>2]>>2]|0)+64>>0]=1}a:do{if((b[x>>1]|0)!=0){c[z>>2]=c[(c[t>>2]|0)+8>>2];oy(c[y>>2]|0,(c[k>>2]|0)!=0?102:105,c[z>>2]|0)|0;c[q>>2]=Yv(c[y>>2]|0,16)|0;C=ff(c[y>>2]|0,(c[k>>2]|0)!=0?59:62,c[z>>2]|0,0,c[n>>2]|0,e[x>>1]|0)|0;c[(c[t>>2]|0)+20>>2]=C;jw(c[y>>2]|0,c[q>>2]|0);c[q>>2]=0;while(1){if((c[q>>2]|0)>=(e[x>>1]|0)){break a}Tv(c[y>>2]|0,46,c[z>>2]|0,c[q>>2]|0,(c[n>>2]|0)+(c[q>>2]|0)|0)|0;c[q>>2]=(c[q>>2]|0)+1}}}while(0);c[q>>2]=e[x>>1]|0;while(1){if((c[q>>2]|0)>=(e[w>>1]|0)){break}c[r>>2]=c[(c[(c[p>>2]|0)+44>>2]|0)+(c[q>>2]<<2)>>2];c[v>>2]=IB(c[s>>2]|0,c[r>>2]|0,c[t>>2]|0,c[q>>2]|0,c[k>>2]|0,(c[n>>2]|0)+(c[q>>2]|0)|0)|0;do{if((c[v>>2]|0)!=((c[n>>2]|0)+(c[q>>2]|0)|0)){if((c[o>>2]|0)==1){Xv(c[s>>2]|0,c[n>>2]|0);c[n>>2]=c[v>>2];break}else{Qv(c[y>>2]|0,34,c[v>>2]|0,(c[n>>2]|0)+(c[q>>2]|0)|0)|0;break}}}while(0);if((b[(c[r>>2]|0)+18>>1]&129|0)==0){c[A>>2]=c[(c[c[r>>2]>>2]|0)+16>>2];if((LB(c[A>>2]|0)|0)!=0){Qv(c[y>>2]|0,76,(c[n>>2]|0)+(c[q>>2]|0)|0,c[(c[t>>2]|0)+12>>2]|0)|0}if((c[u>>2]|0)!=0){if(((Rz(c[A>>2]|0,a[(c[u>>2]|0)+(c[q>>2]|0)>>0]|0)|0)<<24>>24|0)==98){a[(c[u>>2]|0)+(c[q>>2]|0)>>0]=98}if((MB(c[A>>2]|0,a[(c[u>>2]|0)+(c[q>>2]|0)>>0]|0)|0)!=0){a[(c[u>>2]|0)+(c[q>>2]|0)>>0]=98}}}c[q>>2]=(c[q>>2]|0)+1}c[c[l>>2]>>2]=c[u>>2];i=m;return c[n>>2]|0}function LB(b){b=b|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+4|0;h=f;g=f+8|0;c[h>>2]=b;while(1){if((d[c[h>>2]>>0]|0|0)==158){j=1}else{j=(d[c[h>>2]>>0]|0|0)==157}b=c[h>>2]|0;if(!j){break}c[h>>2]=c[b+12>>2]}a[g>>0]=a[b>>0]|0;if((d[g>>0]|0|0)==159){a[g>>0]=a[(c[h>>2]|0)+38>>0]|0}j=d[g>>0]|0;if((j|0)==134|(j|0)==133|(j|0)==97|(j|0)==132){c[e>>2]=0;j=c[e>>2]|0;i=f;return j|0}else{c[e>>2]=1;j=c[e>>2]|0;i=f;return j|0}return 0}function MB(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;h=i;i=i+16|0;g=h+4|0;k=h;j=h+9|0;l=h+8|0;c[k>>2]=e;a[j>>0]=f;a:do{if((a[j>>0]|0)==98){c[g>>2]=1}else{while(1){if((d[c[k>>2]>>0]|0)==158){f=1}else{f=(d[c[k>>2]>>0]|0)==157}e=c[k>>2]|0;if(!f){break}c[k>>2]=c[e+12>>2]}a[l>>0]=a[e>>0]|0;if((d[l>>0]|0)==159){a[l>>0]=a[(c[k>>2]|0)+38>>0]|0}switch(d[l>>0]|0){case 97:{c[g>>2]=(a[j>>0]|0)==97&1;break a};case 133:{if((a[j>>0]|0)==101){j=1}else{j=(a[j>>0]|0)==99}c[g>>2]=j&1;break a};case 134:{c[g>>2]=1;break a};case 132:{if((a[j>>0]|0)==100){j=1}else{j=(a[j>>0]|0)==99}c[g>>2]=j&1;break a};case 154:{if((b[(c[k>>2]|0)+32>>1]|0)<0){if((a[j>>0]|0)==100){j=1}else{j=(a[j>>0]|0)==99}}else{j=0}c[g>>2]=j&1;break a};default:{c[g>>2]=0;break a}}}}while(0);i=h;return c[g>>2]|0}function NB(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;g=m+16|0;j=m;k=m+4|0;l=m+8|0;h=m+12|0;c[g>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[h>>2]=c[(c[g>>2]|0)+8>>2];if((c[l>>2]|0)==0){i=m;return}while(1){if((c[k>>2]|0)<=0){break}if((a[c[l>>2]>>0]|0)!=98){break}c[k>>2]=(c[k>>2]|0)+ -1;c[j>>2]=(c[j>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}while(1){if((c[k>>2]|0)>1){e=(a[(c[l>>2]|0)+((c[k>>2]|0)-1)>>0]|0)==98}else{e=0}f=c[k>>2]|0;if(!e){break}c[k>>2]=f+ -1}if((f|0)<=0){i=m;return}Qv(c[h>>2]|0,47,c[j>>2]|0,c[k>>2]|0)|0;nf(c[h>>2]|0,-1,c[l>>2]|0,c[k>>2]|0);Az(c[g>>2]|0,c[j>>2]|0,c[k>>2]|0);i=m;return}function OB(a,d,e,f,g,h,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;l=i;i=i+160|0;k=l+152|0;u=l+148|0;t=l+144|0;s=l+140|0;o=l;r=l+136|0;q=l+12|0;n=l+8|0;m=l+16|0;p=l+24|0;c[u>>2]=a;c[t>>2]=d;c[s>>2]=e;a=o;c[a>>2]=f;c[a+4>>2]=g;c[r>>2]=h;c[q>>2]=j;c[n>>2]=0;c[m>>2]=PB(p,c[u>>2]|0,c[t>>2]|0,c[s>>2]|0,c[r>>2]|0,c[q>>2]|0)|0;while(1){if((c[m>>2]|0)==0){h=10;break}t=(c[m>>2]|0)+32|0;u=o;if((c[t>>2]&c[u>>2]|0)==0?(c[t+4>>2]&c[u+4>>2]|0)==0:0){u=(c[m>>2]|0)+32|0;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){if((b[(c[m>>2]|0)+18>>1]&2|0)!=0){h=6;break}}if((c[n>>2]|0)==0){c[n>>2]=c[m>>2]}}c[m>>2]=QB(p)|0}if((h|0)==6){c[k>>2]=c[m>>2];u=c[k>>2]|0;i=l;return u|0}else if((h|0)==10){c[k>>2]=c[n>>2];u=c[k>>2]|0;i=l;return u|0}return 0}function PB(d,f,g,h,j,k){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;r=i;i=i+32|0;q=r+28|0;n=r;u=r+4|0;o=r+8|0;p=r+12|0;t=r+16|0;l=r+20|0;s=r+24|0;c[n>>2]=d;c[u>>2]=f;c[o>>2]=g;c[p>>2]=h;c[t>>2]=j;c[l>>2]=k;c[c[n>>2]>>2]=c[u>>2];c[(c[n>>2]|0)+4>>2]=c[u>>2];do{if((c[l>>2]|0)!=0){if((c[p>>2]|0)>=0){a[(c[n>>2]|0)+12>>0]=a[(c[(c[(c[l>>2]|0)+12>>2]|0)+4>>2]|0)+((c[p>>2]|0)*24|0)+21>>0]|0;c[s>>2]=0;while(1){j=c[s>>2]|0;k=c[l>>2]|0;if((b[(c[(c[l>>2]|0)+4>>2]|0)+(c[s>>2]<<1)>>1]|0)==(c[p>>2]|0)){m=8;break}if((j|0)>=(e[k+50>>1]|0)){break}c[s>>2]=(c[s>>2]|0)+1}if((m|0)==8){c[(c[n>>2]|0)+8>>2]=c[(c[k+32>>2]|0)+(j<<2)>>2];break}c[q>>2]=0;u=c[q>>2]|0;i=r;return u|0}else{m=9}}else{m=9}}while(0);if((m|0)==9){a[(c[n>>2]|0)+12>>0]=0;c[(c[n>>2]|0)+8>>2]=0}c[(c[n>>2]|0)+16>>2]=c[t>>2];c[(c[n>>2]|0)+20>>2]=0;c[(c[n>>2]|0)+24>>2]=c[o>>2];c[(c[n>>2]|0)+28>>2]=c[p>>2];a[(c[n>>2]|0)+13>>0]=2;a[(c[n>>2]|0)+14>>0]=2;c[q>>2]=QB(c[n>>2]|0)|0;u=c[q>>2]|0;i=r;return u|0}function QB(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+48|0;k=h+40|0;j=h+36|0;m=h+32|0;n=h+28|0;p=h+24|0;o=h+20|0;l=h+12|0;g=h+8|0;q=h+4|0;s=h;r=h+16|0;c[j>>2]=f;c[g>>2]=c[(c[j>>2]|0)+20>>2];a:while(1){if((d[(c[j>>2]|0)+14>>0]|0)>(d[(c[j>>2]|0)+13>>0]|0)){m=35;break}c[m>>2]=c[(c[j>>2]|0)+24+((d[(c[j>>2]|0)+14>>0]|0)-2<<2)>>2];c[n>>2]=c[(c[j>>2]|0)+24+((d[(c[j>>2]|0)+14>>0]|0)-1<<2)>>2];while(1){f=c[(c[j>>2]|0)+4>>2]|0;c[o>>2]=f;if((f|0)==0){break}c[l>>2]=(c[(c[o>>2]|0)+20>>2]|0)+((c[g>>2]|0)*48|0);while(1){if((c[g>>2]|0)>=(c[(c[o>>2]|0)+12>>2]|0)){break}do{if((c[(c[l>>2]|0)+8>>2]|0)==(c[m>>2]|0)){if((c[(c[l>>2]|0)+12>>2]|0)==(c[n>>2]|0)){if((d[(c[j>>2]|0)+14>>0]|0)>2){if((c[(c[c[l>>2]>>2]|0)+4>>2]&1|0)!=0){break}}if((b[(c[l>>2]|0)+18>>1]&1024|0)!=0){if((d[(c[j>>2]|0)+13>>0]|0)<22){c[p>>2]=Pw(c[(c[c[l>>2]>>2]|0)+16>>2]|0)|0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(d[(c[j>>2]|0)+13>>0]|0)){break}if((c[(c[j>>2]|0)+24+(c[q>>2]<<2)>>2]|0)==(c[(c[p>>2]|0)+28>>2]|0)){if((c[(c[j>>2]|0)+24+((c[q>>2]|0)+1<<2)>>2]|0)==(b[(c[p>>2]|0)+32>>1]|0)){break}}c[q>>2]=(c[q>>2]|0)+2}if((c[q>>2]|0)==(d[(c[j>>2]|0)+13>>0]|0)){c[(c[j>>2]|0)+24+(c[q>>2]<<2)>>2]=c[(c[p>>2]|0)+28>>2];c[(c[j>>2]|0)+24+((c[q>>2]|0)+1<<2)>>2]=b[(c[p>>2]|0)+32>>1]|0;f=(c[j>>2]|0)+13|0;a[f>>0]=(d[f>>0]|0)+2}}}if((e[(c[l>>2]|0)+18>>1]&c[(c[j>>2]|0)+16>>2]|0)!=0){if((c[(c[j>>2]|0)+8>>2]|0)!=0){if((b[(c[l>>2]|0)+18>>1]&128|0)==0){c[r>>2]=c[c[c[o>>2]>>2]>>2];c[p>>2]=c[c[l>>2]>>2];if((Tz(c[p>>2]|0,a[(c[j>>2]|0)+12>>0]|0)|0)==0){break}c[s>>2]=Iz(c[r>>2]|0,c[(c[p>>2]|0)+12>>2]|0,c[(c[p>>2]|0)+16>>2]|0)|0;if((c[s>>2]|0)==0){c[s>>2]=c[(c[c[r>>2]>>2]|0)+8>>2]}if((Dc(c[c[s>>2]>>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0)!=0){break}}}if((b[(c[l>>2]|0)+18>>1]&2|0)==0){m=31;break a}f=c[(c[c[l>>2]>>2]|0)+16>>2]|0;c[p>>2]=f;if((d[f>>0]|0)!=154){m=31;break a}if((c[(c[p>>2]|0)+28>>2]|0)!=(c[(c[j>>2]|0)+24>>2]|0)){m=31;break a}if((b[(c[p>>2]|0)+32>>1]|0)!=(c[(c[j>>2]|0)+28>>2]|0)){m=31;break a}}}}}while(0);c[g>>2]=(c[g>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+48}c[(c[j>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+4>>2]|0)+4>>2];c[g>>2]=0}c[(c[j>>2]|0)+4>>2]=c[c[j>>2]>>2];c[g>>2]=0;f=(c[j>>2]|0)+14|0;a[f>>0]=(d[f>>0]|0)+2}if((m|0)==31){c[(c[j>>2]|0)+20>>2]=(c[g>>2]|0)+1;c[k>>2]=c[l>>2];s=c[k>>2]|0;i=h;return s|0}else if((m|0)==35){c[k>>2]=0;s=c[k>>2]|0;i=h;return s|0}return 0}function RB(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=i;i=i+80|0;j=l+72|0;v=l+56|0;n=l+68|0;w=l+64|0;m=l+60|0;u=l+76|0;t=l+78|0;k=l+52|0;r=l+44|0;o=l+40|0;q=l+36|0;h=l+8|0;s=l+4|0;p=l;g=l+48|0;c[v>>2]=a;c[n>>2]=d;c[w>>2]=f;c[m>>2]=c[(c[n>>2]|0)+28>>2];b[u>>1]=b[(c[n>>2]|0)+24>>1]|0;b[t>>1]=b[(c[n>>2]|0)+26>>1]|0;c[o>>2]=c[(c[w>>2]|0)+4>>2];c[q>>2]=c[(c[m>>2]|0)+4>>2];if((e[u>>1]|0)==0){if((c[(c[n>>2]|0)+36>>2]&48|0)==0){c[j>>2]=0;w=c[j>>2]|0;i=l;return w|0}}tc(h,0,0,1e9);c[h>>2]=c[v>>2];Jt(h,30384,2);c[k>>2]=0;while(1){f=c[k>>2]|0;if((c[k>>2]|0)>=(e[u>>1]|0)){break}if((f|0)==(e[(c[m>>2]|0)+50>>1]|0)){f=8848}else{f=c[(c[o>>2]|0)+((b[(c[q>>2]|0)+(c[k>>2]<<1)>>1]|0)*24|0)>>2]|0}c[s>>2]=f;f=c[k>>2]|0;if((c[k>>2]|0)>=(e[t>>1]|0)){SB(h,f,c[s>>2]|0,30392)}else{if((f|0)!=0){Jt(h,30400,5)}Jt(h,30408,4);Zy(h,c[s>>2]|0);Jt(h,30416,1)}c[k>>2]=(c[k>>2]|0)+1}c[r>>2]=f;if((c[(c[n>>2]|0)+36>>2]&32|0)!=0){if((c[r>>2]|0)==(e[(c[m>>2]|0)+50>>1]|0)){s=8848}else{s=c[(c[o>>2]|0)+((b[(c[q>>2]|0)+(c[r>>2]<<1)>>1]|0)*24|0)>>2]|0}c[p>>2]=s;w=c[k>>2]|0;c[k>>2]=w+1;SB(h,w,c[p>>2]|0,30424)}if((c[(c[n>>2]|0)+36>>2]&16|0)!=0){if((c[r>>2]|0)==(e[(c[m>>2]|0)+50>>1]|0)){m=8848}else{m=c[(c[o>>2]|0)+((b[(c[q>>2]|0)+(c[r>>2]<<1)>>1]|0)*24|0)>>2]|0}c[g>>2]=m;SB(h,c[k>>2]|0,c[g>>2]|0,30432)}Jt(h,30416,1);c[j>>2]=vc(h)|0;w=c[j>>2]|0;i=l;return w|0}function SB(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;k=f;j=f+4|0;h=f+8|0;c[g>>2]=a;c[k>>2]=b;c[j>>2]=d;c[h>>2]=e;if((c[k>>2]|0)!=0){Jt(c[g>>2]|0,30400,5)}Zy(c[g>>2]|0,c[j>>2]|0);Jt(c[g>>2]|0,c[h>>2]|0,1);Jt(c[g>>2]|0,8776,1);i=f;return}function TB(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h+16|0;l=h+12|0;k=h+8|0;n=h;m=h+20|0;c[l>>2]=d;c[k>>2]=e;d=n;c[d>>2]=f;c[d+4>>2]=g;if((c[(c[l>>2]|0)+8>>2]|0)!=(c[(c[k>>2]|0)+40>>2]|0)){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}if((b[(c[l>>2]|0)+18>>1]&2|0)==0){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}e=(c[l>>2]|0)+32|0;d=n;if((c[e>>2]&c[d>>2]|0)!=0?1:(c[e+4>>2]&c[d+4>>2]|0)!=0){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}if((c[(c[l>>2]|0)+12>>2]|0)<0){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}a[m>>0]=a[(c[(c[(c[k>>2]|0)+16>>2]|0)+4>>2]|0)+((c[(c[l>>2]|0)+12>>2]|0)*24|0)+21>>0]|0;if((Tz(c[c[l>>2]>>2]|0,a[m>>0]|0)|0)!=0){c[j>>2]=1;d=c[j>>2]|0;i=h;return d|0}else{c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}return 0}function UB(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;m=g;k=g+4|0;l=g+8|0;j=g+12|0;c[m>>2]=a;c[k>>2]=d;c[l>>2]=f;if((e[(c[k>>2]|0)+42>>1]|0|0)>=(c[l>>2]|0)){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}c[l>>2]=(c[l>>2]|0)+7&-8;c[j>>2]=$e(c[m>>2]|0,c[l>>2]<<2)|0;if((c[j>>2]|0)==0){c[h>>2]=7;a=c[h>>2]|0;i=g;return a|0}fL(c[j>>2]|0,c[(c[k>>2]|0)+44>>2]|0,(e[(c[k>>2]|0)+42>>1]|0)<<2|0)|0;if((c[(c[k>>2]|0)+44>>2]|0)!=((c[k>>2]|0)+52|0)){cc(c[m>>2]|0,c[(c[k>>2]|0)+44>>2]|0)}c[(c[k>>2]|0)+44>>2]=c[j>>2];b[(c[k>>2]|0)+42>>1]=c[l>>2];c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}function VB(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;o=g+20|0;k=g+24|0;n=g+4|0;m=g+8|0;h=g+12|0;l=g+16|0;j=g;c[o>>2]=a;b[k>>1]=d;c[n>>2]=e;c[m>>2]=f;c[l>>2]=56+((b[k>>1]<<2)+7&-8)+(((b[k>>1]|0)+1<<1)+(b[k>>1]<<1)+(b[k>>1]|0)+7&-8);c[h>>2]=ve(c[o>>2]|0,(c[l>>2]|0)+(c[n>>2]|0)|0)|0;if((c[h>>2]|0)==0){o=c[h>>2]|0;i=g;return o|0}c[j>>2]=(c[h>>2]|0)+56;c[(c[h>>2]|0)+32>>2]=c[j>>2];c[j>>2]=(c[j>>2]|0)+((b[k>>1]<<2)+7&-8);c[(c[h>>2]|0)+8>>2]=c[j>>2];c[j>>2]=(c[j>>2]|0)+((b[k>>1]|0)+1<<1);c[(c[h>>2]|0)+4>>2]=c[j>>2];c[j>>2]=(c[j>>2]|0)+(b[k>>1]<<1);c[(c[h>>2]|0)+28>>2]=c[j>>2];b[(c[h>>2]|0)+52>>1]=b[k>>1]|0;b[(c[h>>2]|0)+50>>1]=(b[k>>1]|0)-1;c[c[m>>2]>>2]=(c[h>>2]|0)+(c[l>>2]|0);o=c[h>>2]|0;i=g;return o|0}function WB(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;f=h+8|0;j=h+20|0;e=h+16|0;g=h;c[j>>2]=a;c[e>>2]=b;a=g;c[a>>2]=0;c[a+4>>2]=0;if((c[e>>2]|0)==0){b=f;c[b>>2]=0;c[b+4>>2]=0;b=f;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=h;return a|0}a=c[j>>2]|0;b=c[e>>2]|0;if((d[c[e>>2]>>0]|0|0)==154){a=EB(a,c[b+28>>2]|0)|0;j=g;c[j>>2]=a;c[j+4>>2]=D;j=g;a=c[j+4>>2]|0;b=f;c[b>>2]=c[j>>2];c[b+4>>2]=a;b=f;a=b;a=c[a>>2]|0;b=b+4|0;b=c[b>>2]|0;D=b;i=h;return a|0}l=WB(a,c[b+16>>2]|0)|0;k=g;c[k>>2]=l;c[k+4>>2]=D;k=WB(c[j>>2]|0,c[(c[e>>2]|0)+12>>2]|0)|0;l=g;a=c[l+4>>2]|D;b=g;c[b>>2]=c[l>>2]|k;c[b+4>>2]=a;b=c[j>>2]|0;j=(c[e>>2]|0)+20|0;if((c[(c[e>>2]|0)+4>>2]&2048|0)!=0){a=XB(b,c[j>>2]|0)|0;b=g;k=c[b+4>>2]|D;l=g;c[l>>2]=c[b>>2]|a;c[l+4>>2]=k}else{a=DB(b,c[j>>2]|0)|0;b=g;k=c[b+4>>2]|D;l=g;c[l>>2]=c[b>>2]|a;c[l+4>>2]=k}a=g;l=c[a+4>>2]|0;k=f;c[k>>2]=c[a>>2];c[k+4>>2]=l;k=f;l=k;l=c[l>>2]|0;k=k+4|0;k=c[k>>2]|0;D=k;i=h;return l|0}function XB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;j=e+20|0;g=e+8|0;d=e;h=e+12|0;f=e+16|0;c[j>>2]=a;c[g>>2]=b;a=d;c[a>>2]=0;c[a+4>>2]=0;while(1){if((c[g>>2]|0)==0){break}c[h>>2]=c[(c[g>>2]|0)+32>>2];k=DB(c[j>>2]|0,c[c[g>>2]>>2]|0)|0;l=d;b=c[l+4>>2]|D;a=d;c[a>>2]=c[l>>2]|k;c[a+4>>2]=b;a=DB(c[j>>2]|0,c[(c[g>>2]|0)+40>>2]|0)|0;b=d;k=c[b+4>>2]|D;l=d;c[l>>2]=c[b>>2]|a;c[l+4>>2]=k;l=DB(c[j>>2]|0,c[(c[g>>2]|0)+48>>2]|0)|0;k=d;a=c[k+4>>2]|D;b=d;c[b>>2]=c[k>>2]|l;c[b+4>>2]=a;b=WB(c[j>>2]|0,c[(c[g>>2]|0)+36>>2]|0)|0;a=d;l=c[a+4>>2]|D;k=d;c[k>>2]=c[a>>2]|b;c[k+4>>2]=l;k=WB(c[j>>2]|0,c[(c[g>>2]|0)+44>>2]|0)|0;l=d;b=c[l+4>>2]|D;a=d;c[a>>2]=c[l>>2]|k;c[a+4>>2]=b;a:do{if((c[h>>2]|0)!=0){c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[h>>2]>>2]|0)){break a}k=XB(c[j>>2]|0,c[(c[h>>2]|0)+8+((c[f>>2]|0)*72|0)+20>>2]|0)|0;l=d;b=c[l+4>>2]|D;a=d;c[a>>2]=c[l>>2]|k;c[a+4>>2]=b;a=WB(c[j>>2]|0,c[(c[h>>2]|0)+8+((c[f>>2]|0)*72|0)+44>>2]|0)|0;b=d;k=c[b+4>>2]|D;l=d;c[l>>2]=c[b>>2]|a;c[l+4>>2]=k;c[f>>2]=(c[f>>2]|0)+1}}}while(0);c[g>>2]=c[(c[g>>2]|0)+52>>2]}l=d;D=c[l+4>>2]|0;i=e;return c[l>>2]|0}function YB(a,c){a=a|0;c=c|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+4|0;g=e;h=e+2|0;b[g>>1]=a;b[h>>1]=c;if((b[g>>1]|0)>=(b[h>>1]|0)){c=b[g>>1]|0;if((b[g>>1]|0)>((b[h>>1]|0)+49|0)){b[f>>1]=c;a=b[f>>1]|0;i=e;return a|0}a=b[g>>1]|0;if((c<<16>>16|0)>((b[h>>1]|0)+31|0)){b[f>>1]=a+1;a=b[f>>1]|0;i=e;return a|0}else{b[f>>1]=a+(d[30512+((b[g>>1]|0)-(b[h>>1]|0))>>0]|0);a=b[f>>1]|0;i=e;return a|0}}else{c=b[h>>1]|0;if((b[h>>1]|0)>((b[g>>1]|0)+49|0)){b[f>>1]=c;a=b[f>>1]|0;i=e;return a|0}a=b[h>>1]|0;if((c<<16>>16|0)>((b[g>>1]|0)+31|0)){b[f>>1]=a+1;a=b[f>>1]|0;i=e;return a|0}else{b[f>>1]=a+(d[30512+((b[h>>1]|0)-(b[g>>1]|0))>>0]|0);a=b[f>>1]|0;i=e;return a|0}}return 0}function ZB(f,g,h,j,k,l,m){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;s=i;i=i+144|0;o=s+135|0;K=s+104|0;M=s+108|0;Q=s+112|0;_=s+126|0;T=s+124|0;S=s+116|0;Z=s+120|0;A=s+141|0;B=s+140|0;Y=s+139|0;u=s+138|0;C=s+137|0;X=s+136|0;F=s+132|0;z=s+130|0;N=s+128|0;R=s+100|0;p=s+68|0;y=s+72|0;P=s+76|0;W=s+80|0;w=s+60|0;L=s+52|0;t=s+48|0;G=s+56|0;E=s+64|0;J=s+96|0;r=s;v=s+32|0;x=s+16|0;O=s+24|0;I=s+84|0;H=s+88|0;$=s+134|0;U=s+92|0;V=s+40|0;q=s+8|0;c[K>>2]=f;c[M>>2]=g;c[Q>>2]=h;b[_>>1]=j;b[T>>1]=k;c[S>>2]=l;c[Z>>2]=m;c[w>>2]=0;c[J>>2]=c[c[c[K>>2]>>2]>>2];f=r;c[f>>2]=0;c[f+4>>2]=0;if((e[T>>1]|0)!=0){if((b[(c[J>>2]|0)+60>>1]&128|0)!=0){a[o>>0]=0;f=a[o>>0]|0;i=s;return f|0}}b[N>>1]=c[c[M>>2]>>2];if((e[N>>1]|0)>63){a[o>>0]=0;f=a[o>>0]|0;i=s;return f|0}a[u>>0]=1;g=bL(1,0,e[N>>1]|0)|0;g=$K(g|0,D|0,1,0)|0;f=v;c[f>>2]=g;c[f+4>>2]=D;f=x;c[f>>2]=0;c[f+4>>2]=0;f=O;c[f>>2]=0;c[f+4>>2]=0;c[R>>2]=0;while(1){if((d[u>>0]|0)==0){break}g=r;j=c[g+4>>2]|0;f=v;h=c[f+4>>2]|0;if(!(j>>>0>>0|((j|0)==(h|0)?(c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0:0))){break}if((c[R>>2]|0)>(e[T>>1]|0)){break}if((c[R>>2]|0)>0){h=(c[w>>2]|0)+8|0;j=O;g=c[j+4>>2]|c[h+4>>2];f=O;c[f>>2]=c[j>>2]|c[h>>2];c[f+4>>2]=g}if((c[R>>2]|0)<(e[T>>1]|0)){m=c[(c[(c[Q>>2]|0)+24>>2]|0)+(c[R>>2]<<2)>>2]|0}else{m=c[S>>2]|0}c[w>>2]=m;m=c[w>>2]|0;if((c[(c[w>>2]|0)+36>>2]&1024|0)!=0){n=16;break}c[P>>2]=c[(c[(c[K>>2]|0)+4>>2]|0)+8+((d[m+16>>0]|0)*72|0)+40>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>=(e[N>>1]|0)){break}g=bL(1,0,c[p>>2]|0)|0;f=r;do{if(!((g&c[f>>2]|0)!=0?1:(D&c[f+4>>2]|0)!=0)){c[t>>2]=Pw(c[(c[(c[M>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;if((d[c[t>>2]>>0]|0)==154){if((c[(c[t>>2]|0)+28>>2]|0)==(c[P>>2]|0)){f=O;c[L>>2]=OB((c[K>>2]|0)+328|0,c[P>>2]|0,b[(c[t>>2]|0)+32>>1]|0,~c[f>>2],~c[f+4>>2],130,0)|0;if((c[L>>2]|0)!=0){if((b[(c[L>>2]|0)+18>>1]&2|0)!=0){if((b[(c[t>>2]|0)+32>>1]|0)>=0){c[G>>2]=Jw(c[c[K>>2]>>2]|0,c[(c[(c[M>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;if((c[G>>2]|0)==0){c[G>>2]=c[(c[J>>2]|0)+8>>2]}c[I>>2]=c[c[G>>2]>>2];c[G>>2]=Jw(c[c[K>>2]>>2]|0,c[c[L>>2]>>2]|0)|0;if((c[G>>2]|0)==0){c[G>>2]=c[(c[J>>2]|0)+8>>2]}c[H>>2]=c[c[G>>2]>>2];if((Dc(c[I>>2]|0,c[H>>2]|0)|0)!=0){break}}}h=bL(1,0,c[p>>2]|0)|0;j=r;g=c[j+4>>2]|D;f=r;c[f>>2]=c[j>>2]|h;c[f+4>>2]=g}}}}}while(0);c[p>>2]=(c[p>>2]|0)+1}if((c[(c[w>>2]|0)+36>>2]&4096|0)==0){if((c[(c[w>>2]|0)+36>>2]&256|0)!=0){c[E>>2]=0;b[F>>1]=0;b[z>>1]=1}else{f=c[(c[w>>2]|0)+28>>2]|0;c[E>>2]=f;if((f|0)==0){n=38;break}if(((d[(c[E>>2]|0)+55>>0]|0)>>>2&1|0)!=0){n=38;break}b[F>>1]=b[(c[E>>2]|0)+50>>1]|0;b[z>>1]=b[(c[E>>2]|0)+52>>1]|0;a[u>>0]=(d[(c[E>>2]|0)+54>>0]|0)!=0}a[A>>0]=0;a[B>>0]=0;a[C>>0]=0;c[y>>2]=0;while(1){if((c[y>>2]|0)>=(e[z>>1]|0)){break}if((c[y>>2]|0)<(e[(c[w>>2]|0)+24>>1]|0)){if((e[(c[w>>2]|0)+26>>1]|0)==0){f=e[(c[(c[(c[w>>2]|0)+44>>2]|0)+(c[y>>2]<<2)>>2]|0)+18>>1]|0;c[p>>2]=f;if((f&130|0)!=0){if((c[p>>2]&128|0)!=0){a[u>>0]=0}}else{n=47}}else{n=47}}else{n=47}if((n|0)==47){n=0;if((c[E>>2]|0)!=0){c[W>>2]=b[(c[(c[E>>2]|0)+4>>2]|0)+(c[y>>2]<<1)>>1]|0;a[Y>>0]=a[(c[(c[E>>2]|0)+28>>2]|0)+(c[y>>2]|0)>>0]|0;if((c[W>>2]|0)==(b[(c[(c[E>>2]|0)+12>>2]|0)+36>>1]|0)){c[W>>2]=-1}}else{c[W>>2]=-1;a[Y>>0]=0}do{if((d[u>>0]|0)!=0){if((c[W>>2]|0)>=0){if((c[y>>2]|0)<(e[(c[w>>2]|0)+24>>1]|0)){break}if((d[(c[(c[(c[E>>2]|0)+12>>2]|0)+4>>2]|0)+((c[W>>2]|0)*24|0)+20>>0]|0)!=0){break}a[u>>0]=0}}}while(0);a[$>>0]=1;a[X>>0]=0;c[p>>2]=0;a:while(1){if((d[$>>0]|0)==0){break}if((c[p>>2]|0)>=(e[N>>1]|0)){break}g=bL(1,0,c[p>>2]|0)|0;f=r;do{if(!((g&c[f>>2]|0)!=0?1:(D&c[f+4>>2]|0)!=0)){c[t>>2]=Pw(c[(c[(c[M>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;if((b[_>>1]&768|0)==0){a[$>>0]=0}if((d[c[t>>2]>>0]|0)!=154){break}if((c[(c[t>>2]|0)+28>>2]|0)!=(c[P>>2]|0)){break}if((b[(c[t>>2]|0)+32>>1]|0)!=(c[W>>2]|0)){break}if((c[W>>2]|0)<0){n=69;break a}c[G>>2]=Jw(c[c[K>>2]>>2]|0,c[(c[(c[M>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;if((c[G>>2]|0)==0){c[G>>2]=c[(c[J>>2]|0)+8>>2]}if((Dc(c[c[G>>2]>>2]|0,c[(c[(c[E>>2]|0)+32>>2]|0)+(c[y>>2]<<2)>>2]|0)|0)==0){n=69;break a}}}while(0);c[p>>2]=(c[p>>2]|0)+1}if((n|0)==69){n=0;a[X>>0]=1}do{if((d[X>>0]|0)!=0){if((b[(c[K>>2]|0)+34>>1]&256|0)!=0){break}if((a[A>>0]|0)!=0){if((d[B>>0]^d[Y>>0]|0)==(d[(c[(c[M>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)+12>>0]|0)){break}a[X>>0]=0;break}a[B>>0]=d[Y>>0]^d[(c[(c[M>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)+12>>0];if((a[B>>0]|0)!=0){h=bL(1,0,c[R>>2]|0)|0;f=c[Z>>2]|0;j=f;g=c[j+4>>2]|D;c[f>>2]=c[j>>2]|h;c[f+4>>2]=g}a[A>>0]=1}}while(0);if((a[X>>0]|0)==0){n=83;break}if((c[W>>2]|0)<0){a[C>>0]=1}h=bL(1,0,c[p>>2]|0)|0;j=r;g=c[j+4>>2]|D;f=r;c[f>>2]=c[j>>2]|h;c[f+4>>2]=g}c[y>>2]=(c[y>>2]|0)+1}do{if((n|0)==83){n=0;if((c[y>>2]|0)!=0){if((c[y>>2]|0)>=(e[F>>1]|0)){break}}a[u>>0]=0}}while(0);if((a[C>>0]|0)!=0){a[u>>0]=1}}b:do{if((a[u>>0]|0)!=0){h=(c[w>>2]|0)+8|0;j=x;g=c[j+4>>2]|c[h+4>>2];f=x;c[f>>2]=c[j>>2]|c[h>>2];c[f+4>>2]=g;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(e[N>>1]|0)){break b}g=bL(1,0,c[p>>2]|0)|0;f=r;do{if(!((g&c[f>>2]|0)!=0?1:(D&c[f+4>>2]|0)!=0)){c[U>>2]=c[(c[(c[M>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2];g=WB((c[K>>2]|0)+68|0,c[U>>2]|0)|0;f=V;c[f>>2]=g;c[f+4>>2]=D;f=V;if((c[f>>2]|0)==0&(c[f+4>>2]|0)==0){if((Bz(c[U>>2]|0)|0)==0){break}}g=V;f=x;if((c[g>>2]&~c[f>>2]|0)==0?(c[g+4>>2]&~c[f+4>>2]|0)==0:0){h=bL(1,0,c[p>>2]|0)|0;j=r;g=c[j+4>>2]|D;f=r;c[f>>2]=c[j>>2]|h;c[f+4>>2]=g}}}while(0);c[p>>2]=(c[p>>2]|0)+1}}}while(0);c[R>>2]=(c[R>>2]|0)+1}if((n|0)==16){if((a[m+29>>0]|0)!=0){h=v;g=c[h+4>>2]|0;f=r;c[f>>2]=c[h>>2];c[f+4>>2]=g}}else if((n|0)==38){a[o>>0]=0;f=a[o>>0]|0;i=s;return f|0}g=r;f=v;if((c[g>>2]|0)==(c[f>>2]|0)?(c[g+4>>2]|0)==(c[f+4>>2]|0):0){a[o>>0]=b[N>>1];f=a[o>>0]|0;i=s;return f|0}if((a[u>>0]|0)!=0){a[o>>0]=-1;f=a[o>>0]|0;i=s;return f|0}c[p>>2]=(e[N>>1]|0)-1;while(1){if((c[p>>2]|0)<=0){n=107;break}g=bL(1,0,c[p>>2]|0)|0;g=$K(g|0,D|0,1,0)|0;h=q;c[h>>2]=g;c[h+4>>2]=D;h=r;g=q;f=q;t=c[p>>2]|0;if((c[h>>2]&c[g>>2]|0)==(c[f>>2]|0)?(c[h+4>>2]&c[g+4>>2]|0)==(c[f+4>>2]|0):0){n=105;break}c[p>>2]=t+ -1}if((n|0)==105){a[o>>0]=t;f=a[o>>0]|0;i=s;return f|0}else if((n|0)==107){a[o>>0]=0;f=a[o>>0]|0;i=s;return f|0}return 0}function _B(a){a=a|0;var c=0,d=0,e=0;c=i;i=i+16|0;e=c+2|0;d=c;b[e>>1]=a;a=b[e>>1]|0;b[d>>1]=Kw(a,((a|0)<0)<<31>>31)|0;if((b[d>>1]|0)<=33){e=0;e=e&65535;i=c;return e|0}e=(b[d>>1]|0)-33|0;e=e&65535;i=c;return e|0}function $B(f,g,j){f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;y=i;i=i+112|0;H=y+8|0;m=y+92|0;r=y+88|0;u=y;J=y+84|0;w=y+80|0;A=y+76|0;I=y+72|0;x=y+68|0;n=y+64|0;o=y+60|0;t=y+56|0;k=y+96|0;B=y+28|0;v=y+24|0;z=y+12|0;G=y+16|0;s=y+20|0;F=y+48|0;D=y+32|0;E=y+36|0;C=y+40|0;q=y+44|0;p=y+52|0;c[r>>2]=f;f=u;c[f>>2]=g;c[f+4>>2]=j;c[D>>2]=0;c[E>>2]=0;c[p>>2]=0;c[J>>2]=c[c[r>>2]>>2];c[w>>2]=c[c[J>>2]>>2];c[n>>2]=c[c[w>>2]>>2];c[A>>2]=c[(c[r>>2]|0)+4>>2];c[q>>2]=c[(c[r>>2]|0)+12>>2];c[I>>2]=(c[(c[J>>2]|0)+4>>2]|0)+8+((d[(c[q>>2]|0)+16>>0]|0)*72|0);c[x>>2]=c[(c[I>>2]|0)+16>>2];c[o>>2]=rC(c[w>>2]|0,c[A>>2]|0,c[I>>2]|0,c[(c[r>>2]|0)+8>>2]|0)|0;if((c[o>>2]|0)==0){c[m>>2]=7;J=c[m>>2]|0;i=y;return J|0}J=c[q>>2]|0;c[J>>2]=0;c[J+4>>2]=0;b[(c[q>>2]|0)+18>>1]=0;c[(c[q>>2]|0)+36>>2]=1024;b[(c[q>>2]|0)+40>>1]=0;a[(c[q>>2]|0)+28>>0]=0;c[k>>2]=c[(c[o>>2]|0)+16>>2];c[F>>2]=c[c[o>>2]>>2];if((UB(c[n>>2]|0,c[q>>2]|0,c[F>>2]|0)|0)!=0){cc(c[n>>2]|0,c[o>>2]|0);c[m>>2]=7;J=c[m>>2]|0;i=y;return J|0}c[C>>2]=0;a:while(1){if((c[C>>2]|0)>3){break}if((c[D>>2]|0)==0){if((c[C>>2]&1|0)!=0){c[C>>2]=(c[C>>2]|0)+1;if((c[C>>2]|0)>3){break}}}if((c[E>>2]|0)==0){if((c[C>>2]|0)>1){break}}c[t>>2]=c[(c[o>>2]|0)+4>>2];c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[o>>2]>>2]|0)){break}c[z>>2]=c[(c[t>>2]|0)+8>>2];c[B>>2]=(c[(c[A>>2]|0)+20>>2]|0)+((c[z>>2]|0)*48|0);j=c[C>>2]|0;do{if((j|0)==1){J=(c[B>>2]|0)+32|0;a[(c[t>>2]|0)+5>>0]=(c[J>>2]|0)==0&(c[J+4>>2]|0)==0&1}else if((j|0)==2){a[(c[t>>2]|0)+5>>0]=(b[(c[B>>2]|0)+18>>1]&1|0)==0}else if((j|0)==0){a[(c[t>>2]|0)+5>>0]=0;if((b[(c[B>>2]|0)+18>>1]&1|0)!=0){c[D>>2]=1}J=(c[B>>2]|0)+32|0;if((c[J>>2]|0)!=0|(c[J+4>>2]|0)!=0){c[E>>2]=1;break}if((b[(c[B>>2]|0)+18>>1]&1|0)==0){a[(c[t>>2]|0)+5>>0]=1}}else{a[(c[t>>2]|0)+5>>0]=1}}while(0);c[v>>2]=(c[v>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+12}aL(c[k>>2]|0,0,c[c[o>>2]>>2]<<3|0)|0;if((c[(c[o>>2]|0)+28>>2]|0)!=0){oc(c[(c[o>>2]|0)+24>>2]|0)}c[(c[o>>2]|0)+24>>2]=0;c[(c[o>>2]|0)+20>>2]=0;c[(c[o>>2]|0)+28>>2]=0;c[(c[o>>2]|0)+32>>2]=0;h[(c[o>>2]|0)+40>>3]=5.0e+98;J=(c[o>>2]|0)+48|0;c[J>>2]=25;c[J+4>>2]=0;c[p>>2]=sC(c[w>>2]|0,c[x>>2]|0,c[o>>2]|0)|0;if((c[p>>2]|0)!=0){break}c[t>>2]=c[(c[o>>2]|0)+4>>2];f=u;I=c[f+4>>2]|0;J=c[q>>2]|0;c[J>>2]=c[f>>2];c[J+4>>2]=I;c[s>>2]=-1;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[F>>2]|0)){break}c[(c[(c[q>>2]|0)+44>>2]|0)+(c[v>>2]<<2)>>2]=0;c[v>>2]=(c[v>>2]|0)+1}b[(c[q>>2]|0)+30>>1]=0;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[F>>2]|0)){break}J=(c[(c[k>>2]|0)+(c[v>>2]<<3)>>2]|0)-1|0;c[G>>2]=J;if((J|0)>=0){c[z>>2]=c[(c[t>>2]|0)+8>>2];if((c[G>>2]|0)>=(c[F>>2]|0)){l=38;break a}if((c[z>>2]|0)<0){l=38;break a}if((c[z>>2]|0)>=(c[(c[A>>2]|0)+12>>2]|0)){l=38;break a}if((c[(c[(c[q>>2]|0)+44>>2]|0)+(c[G>>2]<<2)>>2]|0)!=0){l=38;break a}c[B>>2]=(c[(c[A>>2]|0)+20>>2]|0)+((c[z>>2]|0)*48|0);f=(c[B>>2]|0)+32|0;J=c[q>>2]|0;g=J;I=c[g+4>>2]|c[f+4>>2];c[J>>2]=c[g>>2]|c[f>>2];c[J+4>>2]=I;c[(c[(c[q>>2]|0)+44>>2]|0)+(c[G>>2]<<2)>>2]=c[B>>2];if((c[G>>2]|0)>(c[s>>2]|0)){c[s>>2]=c[G>>2]}if((c[G>>2]|0)<16){if((d[(c[k>>2]|0)+(c[v>>2]<<3)+4>>0]|0)!=0){J=(c[q>>2]|0)+30|0;b[J>>1]=e[J>>1]|1<>2]}}if((b[(c[B>>2]|0)+18>>1]&1|0)!=0){if((d[(c[k>>2]|0)+(c[v>>2]<<3)+4>>0]|0)==0){break}c[(c[o>>2]|0)+32>>2]=0}}c[v>>2]=(c[v>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+12}if((c[v>>2]|0)>=(c[F>>2]|0)){b[(c[q>>2]|0)+40>>1]=(c[s>>2]|0)+1;c[(c[q>>2]|0)+24>>2]=c[(c[o>>2]|0)+20>>2];a[(c[q>>2]|0)+28>>0]=c[(c[o>>2]|0)+28>>2];c[(c[o>>2]|0)+28>>2]=0;c[(c[q>>2]|0)+32>>2]=c[(c[o>>2]|0)+24>>2];if((c[(c[o>>2]|0)+32>>2]|0)!=0){j=c[(c[o>>2]|0)+8>>2]|0}else{j=0}a[(c[q>>2]|0)+29>>0]=j;b[(c[q>>2]|0)+18>>1]=0;J=tC(+h[(c[o>>2]|0)+40>>3])|0;b[(c[q>>2]|0)+20>>1]=J;J=(c[o>>2]|0)+48|0;J=Kw(c[J>>2]|0,c[J+4>>2]|0)|0;b[(c[q>>2]|0)+22>>1]=J;eC(c[r>>2]|0,c[q>>2]|0)|0;if((a[(c[q>>2]|0)+28>>0]|0)!=0){oc(c[(c[q>>2]|0)+32>>2]|0);a[(c[q>>2]|0)+28>>0]=0}}c[C>>2]=(c[C>>2]|0)+1}if((l|0)==38){c[p>>2]=1;J=c[w>>2]|0;c[H>>2]=c[c[x>>2]>>2];bf(J,30544,H)}if((c[(c[o>>2]|0)+28>>2]|0)!=0){oc(c[(c[o>>2]|0)+24>>2]|0)}cc(c[n>>2]|0,c[o>>2]|0);c[m>>2]=c[p>>2];J=c[m>>2]|0;i=y;return J|0}function aC(e,f,g){e=e|0;f=f|0;g=g|0;var h=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,E=0,F=0;z=i;i=i+144|0;r=z+128|0;q=z;y=z+60|0;l=z+64|0;A=z+72|0;C=z+132|0;B=z+136|0;F=z+56|0;s=z+52|0;v=z+48|0;m=z+44|0;h=z+20|0;w=z+28|0;p=z+140|0;o=z+138|0;k=z+16|0;u=z+24|0;E=z+40|0;n=z+32|0;t=z+36|0;x=z+8|0;c[r>>2]=e;e=q;c[e>>2]=f;c[e+4>>2]=g;b[B>>1]=-1;c[m>>2]=0;c[h>>2]=1;c[v>>2]=c[(c[r>>2]|0)+12>>2];c[y>>2]=c[c[r>>2]>>2];c[F>>2]=c[(c[y>>2]|0)+4>>2];c[s>>2]=(c[F>>2]|0)+8+((d[(c[v>>2]|0)+16>>0]|0)*72|0);c[u>>2]=c[(c[s>>2]|0)+16>>2];c[k>>2]=c[(c[r>>2]|0)+4>>2];do{if((c[(c[s>>2]|0)+68>>2]|0)!=0){c[l>>2]=c[(c[s>>2]|0)+68>>2]}else{if((a[(c[u>>2]|0)+44>>0]&32|0)!=0){c[l>>2]=c[(c[u>>2]|0)+8>>2];break}f=A+0|0;g=f+56|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));b[A+50>>1]=1;c[A+4>>2]=B;c[A+8>>2]=C;a[A+54>>0]=5;c[A+12>>2]=c[u>>2];b[A+48>>1]=b[(c[u>>2]|0)+42>>1]|0;b[C>>1]=b[(c[u>>2]|0)+28>>1]|0;b[C+2>>1]=0;c[E>>2]=c[(c[(c[s>>2]|0)+16>>2]|0)+8>>2];if((a[(c[s>>2]|0)+37>>0]&1|0)==0){c[A+20>>2]=c[E>>2]}c[l>>2]=A}}while(0);b[p>>1]=b[(c[u>>2]|0)+28>>1]|0;b[o>>1]=_B(b[p>>1]|0)|0;a:do{if((c[(c[r>>2]|0)+16>>2]|0)==0){if((c[(c[c[c[y>>2]>>2]>>2]|0)+24>>2]&1048576|0)!=0){if((c[(c[s>>2]|0)+68>>2]|0)==0){if(((d[(c[s>>2]|0)+37>>0]|0)>>>2&1|0)==0){if((a[(c[s>>2]|0)+37>>0]&1|0)==0){if((a[(c[u>>2]|0)+44>>0]&32|0)==0){if(((d[(c[s>>2]|0)+37>>0]|0)>>>1&1|0)==0){if(((d[(c[s>>2]|0)+37>>0]|0)>>>3&1|0)==0){c[t>>2]=(c[(c[k>>2]|0)+20>>2]|0)+((c[(c[k>>2]|0)+12>>2]|0)*48|0);c[n>>2]=c[(c[k>>2]|0)+20>>2];while(1){if((c[m>>2]|0)!=0){break a}if(!((c[n>>2]|0)>>>0<(c[t>>2]|0)>>>0)){break a}e=(c[n>>2]|0)+32|0;F=(c[v>>2]|0)+8|0;if(!((c[e>>2]&c[F>>2]|0)!=0?1:(c[e+4>>2]&c[F+4>>2]|0)!=0)){if((TB(c[n>>2]|0,c[s>>2]|0,0,0)|0)!=0){b[(c[v>>2]|0)+24>>1]=1;b[(c[v>>2]|0)+26>>1]=0;c[(c[v>>2]|0)+28>>2]=0;b[(c[v>>2]|0)+40>>1]=1;c[c[(c[v>>2]|0)+44>>2]>>2]=c[n>>2];b[(c[v>>2]|0)+18>>1]=(b[o>>1]|0)+(b[p>>1]|0)+28;b[(c[v>>2]|0)+22>>1]=43;g=YB(b[o>>1]|0,b[(c[v>>2]|0)+22>>1]|0)|0;b[(c[v>>2]|0)+20>>1]=g;c[(c[v>>2]|0)+36>>2]=16384;g=q;f=(c[n>>2]|0)+32|0;e=c[g+4>>2]|c[f+4>>2];F=c[v>>2]|0;c[F>>2]=c[g>>2]|c[f>>2];c[F+4>>2]=e;c[m>>2]=eC(c[r>>2]|0,c[v>>2]|0)|0}}c[n>>2]=(c[n>>2]|0)+48}}}}}}}}}}while(0);b:while(1){if((c[m>>2]|0)!=0){j=45;break}if((c[l>>2]|0)==0){j=45;break}if((c[(c[l>>2]|0)+36>>2]|0)!=0){if((jC(d[(c[v>>2]|0)+16>>0]|0,c[k>>2]|0,c[(c[l>>2]|0)+36>>2]|0)|0)!=0){j=27}}else{j=27}if((j|0)==27){j=0;b[p>>1]=b[c[(c[l>>2]|0)+8>>2]>>1]|0;b[(c[v>>2]|0)+24>>1]=0;b[(c[v>>2]|0)+26>>1]=0;b[(c[v>>2]|0)+40>>1]=0;a[(c[v>>2]|0)+17>>0]=0;b[(c[v>>2]|0)+18>>1]=0;f=q;e=c[f+4>>2]|0;F=c[v>>2]|0;c[F>>2]=c[f>>2];c[F+4>>2]=e;b[(c[v>>2]|0)+22>>1]=b[p>>1]|0;c[(c[v>>2]|0)+28>>2]=c[l>>2];c[w>>2]=kC(c[r>>2]|0,c[l>>2]|0,c[(c[s>>2]|0)+40>>2]|0)|0;do{if((c[(c[l>>2]|0)+44>>2]|0)<=0){c[(c[v>>2]|0)+36>>2]=256;a[(c[v>>2]|0)+17>>0]=(c[w>>2]|0)!=0?c[h>>2]|0:0;b[(c[v>>2]|0)+20>>1]=(b[p>>1]|0)+16;lC(c[k>>2]|0,c[v>>2]|0);c[m>>2]=eC(c[r>>2]|0,c[v>>2]|0)|0;b[(c[v>>2]|0)+22>>1]=b[p>>1]|0;if((c[m>>2]|0)!=0){j=45;break b}}else{if(((d[(c[l>>2]|0)+55>>0]|0)>>>5&1|0)!=0){c[(c[v>>2]|0)+36>>2]=576;F=x;c[F>>2]=0;c[F+4>>2]=0}else{e=(c[s>>2]|0)+56|0;g=c[e>>2]|0;e=c[e+4>>2]|0;f=mC(c[l>>2]|0)|0;F=x;c[F>>2]=g&~f;c[F+4>>2]=e&~D;F=x;c[(c[v>>2]|0)+36>>2]=(c[F>>2]|0)==0&(c[F+4>>2]|0)==0?576:512}if((c[w>>2]|0)==0){if((a[(c[u>>2]|0)+44>>0]&32|0)==0){F=x;if(!((c[F>>2]|0)==0&(c[F+4>>2]|0)==0)){break}if(((d[(c[l>>2]|0)+55>>0]|0)>>>2&1|0)!=0){break}if((b[(c[l>>2]|0)+48>>1]|0)>=(b[(c[u>>2]|0)+42>>1]|0)){break}if((b[(c[y>>2]|0)+34>>1]&4|0)!=0){break}if((c[45152>>2]|0)==0){break}if((b[(c[c[c[y>>2]>>2]>>2]|0)+60>>1]&64|0)!=0){break}}}a[(c[v>>2]|0)+17>>0]=(c[w>>2]|0)!=0?c[h>>2]|0:0;b[(c[v>>2]|0)+20>>1]=(b[p>>1]|0)+1+(((b[(c[l>>2]|0)+48>>1]|0)*15|0)/(b[(c[u>>2]|0)+42>>1]|0)|0);F=x;if((c[F>>2]|0)!=0|(c[F+4>>2]|0)!=0){F=YB(b[(c[v>>2]|0)+20>>1]|0,(b[p>>1]|0)+16&65535)|0;b[(c[v>>2]|0)+20>>1]=F}lC(c[k>>2]|0,c[v>>2]|0);c[m>>2]=eC(c[r>>2]|0,c[v>>2]|0)|0;b[(c[v>>2]|0)+22>>1]=b[p>>1]|0;if((c[m>>2]|0)!=0){j=45;break b}}}while(0);c[m>>2]=nC(c[r>>2]|0,c[s>>2]|0,c[l>>2]|0,0)|0;if((c[(c[s>>2]|0)+68>>2]|0)!=0){j=45;break}}c[l>>2]=c[(c[l>>2]|0)+20>>2];c[h>>2]=(c[h>>2]|0)+1}if((j|0)==45){i=z;return c[m>>2]|0}return 0}function bC(f,g,h){f=f|0;g=g|0;h=h|0;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,G=0;z=i;i=i+672|0;l=z+664|0;x=z+660|0;m=z+576|0;G=z+656|0;q=z+652|0;n=z+648|0;r=z+644|0;s=z+640|0;t=z+636|0;p=z+632|0;B=z;y=z+588|0;D=z+464|0;j=z+408|0;o=z+612|0;u=z+616|0;v=z+608|0;A=z+624|0;w=z+628|0;C=z+620|0;E=z+584|0;F=z+520|0;c[x>>2]=f;f=m;c[f>>2]=g;c[f+4>>2]=h;c[G>>2]=c[c[x>>2]>>2];c[t>>2]=0;c[q>>2]=c[(c[x>>2]|0)+4>>2];if((b[(c[G>>2]|0)+34>>1]&128|0)!=0){c[l>>2]=0;f=c[l>>2]|0;i=z;return f|0}c[s>>2]=(c[(c[q>>2]|0)+20>>2]|0)+((c[(c[q>>2]|0)+12>>2]|0)*48|0);c[n>>2]=c[(c[x>>2]|0)+12>>2];g=D+0|0;h=g+56|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[o>>2]=(c[(c[G>>2]|0)+4>>2]|0)+8+((d[(c[n>>2]|0)+16>>0]|0)*72|0);c[p>>2]=c[(c[o>>2]|0)+40>>2];c[r>>2]=c[(c[q>>2]|0)+20>>2];while(1){if(!((c[r>>2]|0)>>>0<(c[s>>2]|0)>>>0)){break}if((c[t>>2]|0)!=0){break}a:do{if((b[(c[r>>2]|0)+18>>1]&256|0)!=0){g=(c[(c[r>>2]|0)+12>>2]|0)+408|0;f=(c[n>>2]|0)+8|0;if((c[g>>2]&c[f>>2]|0)!=0?1:(c[g+4>>2]&c[f+4>>2]|0)!=0){c[u>>2]=c[(c[r>>2]|0)+12>>2];c[v>>2]=(c[(c[u>>2]|0)+20>>2]|0)+((c[(c[u>>2]|0)+12>>2]|0)*48|0);c[w>>2]=1;f=c[x>>2]|0;c[y+0>>2]=c[f+0>>2];c[y+4>>2]=c[f+4>>2];c[y+8>>2]=c[f+8>>2];c[y+12>>2]=c[f+12>>2];c[y+16>>2]=c[f+16>>2];c[y+8>>2]=0;c[y+16>>2]=j;c[A>>2]=c[(c[u>>2]|0)+20>>2];b:while(1){if(!((c[A>>2]|0)>>>0<(c[v>>2]|0)>>>0)){break}G=c[A>>2]|0;if((b[(c[A>>2]|0)+18>>1]&512|0)!=0){c[y+4>>2]=c[G+12>>2];k=14}else{if((c[G+8>>2]|0)==(c[p>>2]|0)){c[B>>2]=c[c[q>>2]>>2];c[B+4>>2]=c[q>>2];a[B+8>>0]=72;c[B+12>>2]=1;c[B+20>>2]=c[A>>2];c[y+4>>2]=B;k=14}}c:do{if((k|0)==14){k=0;b[j>>1]=0;G=m;h=c[G>>2]|0;G=c[G+4>>2]|0;if((a[(c[(c[o>>2]|0)+16>>2]|0)+44>>0]&16|0)!=0){c[t>>2]=$B(y,h,G)|0}else{c[t>>2]=aC(y,h,G)|0}if((e[j>>1]|0)==0){k=18;break b}if((c[w>>2]|0)!=0){cC(D,j);c[w>>2]=0;break}cC(F,D);b[D>>1]=0;c[C>>2]=0;while(1){if((c[C>>2]|0)>=(e[F>>1]|0)){break c}c[E>>2]=0;while(1){G=c[C>>2]|0;if((c[E>>2]|0)>=(e[j>>1]|0)){break}f=F+8+(G<<4)|0;g=j+8+(c[E>>2]<<4)|0;h=c[f>>2]|c[g>>2];g=c[f+4>>2]|c[g+4>>2];f=YB(b[F+8+(c[C>>2]<<4)+8>>1]|0,b[j+8+(c[E>>2]<<4)+8>>1]|0)|0;dC(D,h,g,f,YB(b[F+8+(c[C>>2]<<4)+10>>1]|0,b[j+8+(c[E>>2]<<4)+10>>1]|0)|0)|0;c[E>>2]=(c[E>>2]|0)+1}c[C>>2]=G+1}}}while(0);c[A>>2]=(c[A>>2]|0)+48}if((k|0)==18){k=0;b[D>>1]=0}b[(c[n>>2]|0)+40>>1]=1;c[c[(c[n>>2]|0)+44>>2]>>2]=c[r>>2];c[(c[n>>2]|0)+36>>2]=8192;b[(c[n>>2]|0)+18>>1]=0;a[(c[n>>2]|0)+17>>0]=0;f=(c[n>>2]|0)+24|0;c[f+0>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[C>>2]=0;while(1){if((c[t>>2]|0)!=0){break a}if((c[C>>2]|0)>=(e[D>>1]|0)){break a}b[(c[n>>2]|0)+20>>1]=(b[D+8+(c[C>>2]<<4)+8>>1]|0)+1;b[(c[n>>2]|0)+22>>1]=b[D+8+(c[C>>2]<<4)+10>>1]|0;h=D+8+(c[C>>2]<<4)|0;g=c[h+4>>2]|0;f=c[n>>2]|0;c[f>>2]=c[h>>2];c[f+4>>2]=g;c[t>>2]=eC(c[x>>2]|0,c[n>>2]|0)|0;c[C>>2]=(c[C>>2]|0)+1}}}}while(0);c[r>>2]=(c[r>>2]|0)+48}c[l>>2]=c[t>>2];f=c[l>>2]|0;i=z;return f|0}function cC(a,d){a=a|0;d=d|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=a;c[h>>2]=d;b[c[g>>2]>>1]=b[c[h>>2]>>1]|0;fL((c[g>>2]|0)+8|0,(c[h>>2]|0)+8|0,(e[c[g>>2]>>1]|0)<<4|0)|0;i=f;return}function dC(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+32|0;q=k+16|0;p=k+8|0;n=k;o=k+24|0;l=k+22|0;j=k+20|0;m=k+12|0;c[p>>2]=a;a=n;c[a>>2]=d;c[a+4>>2]=f;b[o>>1]=g;b[l>>1]=h;b[j>>1]=b[c[p>>2]>>1]|0;c[m>>2]=(c[p>>2]|0)+8;while(1){if((e[j>>1]|0)<=0){r=9;break}if((b[o>>1]|0)<=(b[(c[m>>2]|0)+8>>1]|0)){f=n;d=c[m>>2]|0;a=n;if((c[f>>2]&c[d>>2]|0)==(c[a>>2]|0)?(c[f+4>>2]&c[d+4>>2]|0)==(c[a+4>>2]|0):0){break}}if((b[(c[m>>2]|0)+8>>1]|0)<=(b[o>>1]|0)){f=c[m>>2]|0;d=n;a=c[m>>2]|0;if((c[f>>2]&c[d>>2]|0)==(c[a>>2]|0)?(c[f+4>>2]&c[d+4>>2]|0)==(c[a+4>>2]|0):0){r=7;break}}b[j>>1]=(b[j>>1]|0)+ -1<<16>>16;c[m>>2]=(c[m>>2]|0)+16}if((r|0)==7){c[q>>2]=0;a=c[q>>2]|0;i=k;return a|0}do{if((r|0)==9){r=c[p>>2]|0;if((e[c[p>>2]>>1]|0)<3){a=b[r>>1]|0;b[r>>1]=a+1<<16>>16;c[m>>2]=(c[p>>2]|0)+8+((a&65535)<<4);b[(c[m>>2]|0)+10>>1]=b[l>>1]|0;break}c[m>>2]=r+8;b[j>>1]=1;while(1){r=b[(c[m>>2]|0)+8>>1]|0;if((e[j>>1]|0)>=(e[c[p>>2]>>1]|0)){break}if((r|0)>(b[(c[p>>2]|0)+8+(e[j>>1]<<4)+8>>1]|0)){c[m>>2]=(c[p>>2]|0)+8+(e[j>>1]<<4)}b[j>>1]=(b[j>>1]|0)+1<<16>>16}if((r|0)<=(b[o>>1]|0)){c[q>>2]=0;a=c[q>>2]|0;i=k;return a|0}}}while(0);f=n;d=c[f+4>>2]|0;a=c[m>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=d;b[(c[m>>2]|0)+8>>1]=b[o>>1]|0;if((b[(c[m>>2]|0)+10>>1]|0)>(b[l>>1]|0)){b[(c[m>>2]|0)+10>>1]=b[l>>1]|0}c[q>>2]=1;a=c[q>>2]|0;i=k;return a|0}function eC(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=i;i=i+48|0;f=k+36|0;h=k+32|0;g=k+28|0;l=k+24|0;e=k+20|0;p=k+16|0;j=k+8|0;n=k+4|0;o=k;m=k+12|0;c[h>>2]=a;c[g>>2]=d;c[p>>2]=c[c[h>>2]>>2];c[j>>2]=c[c[c[p>>2]>>2]>>2];if((c[(c[h>>2]|0)+16>>2]|0)!=0){a=c[g>>2]|0;dC(c[(c[h>>2]|0)+16>>2]|0,c[a>>2]|0,c[a+4>>2]|0,b[(c[g>>2]|0)+20>>1]|0,b[(c[g>>2]|0)+22>>1]|0)|0;c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}fC(c[(c[p>>2]|0)+16>>2]|0,c[g>>2]|0);c[l>>2]=gC((c[p>>2]|0)+16|0,c[g>>2]|0)|0;if((c[l>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}c[e>>2]=c[c[l>>2]>>2];a:do{if((c[e>>2]|0)==0){a=$e(c[j>>2]|0,72)|0;c[e>>2]=a;c[c[l>>2]>>2]=a;if((c[e>>2]|0)!=0){sB(c[e>>2]|0);c[(c[e>>2]|0)+48>>2]=0;break}c[f>>2]=7;a=c[f>>2]|0;i=k;return a|0}else{c[n>>2]=(c[e>>2]|0)+48;while(1){if((c[c[n>>2]>>2]|0)==0){break a}c[n>>2]=gC(c[n>>2]|0,c[g>>2]|0)|0;if((c[n>>2]|0)==0){break a}c[o>>2]=c[c[n>>2]>>2];if((c[o>>2]|0)==0){break a}c[c[n>>2]>>2]=c[(c[o>>2]|0)+48>>2];pB(c[j>>2]|0,c[o>>2]|0)}}}while(0);hC(c[j>>2]|0,c[e>>2]|0,c[g>>2]|0)|0;if((c[(c[e>>2]|0)+36>>2]&1024|0)==0){c[m>>2]=c[(c[e>>2]|0)+28>>2];if((c[m>>2]|0)!=0){if((c[(c[m>>2]|0)+44>>2]|0)==0){c[(c[e>>2]|0)+28>>2]=0}}}c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}function fC(a,e){a=a|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=a;c[h>>2]=e;if((c[(c[h>>2]|0)+36>>2]&512|0)==0){i=f;return}if((c[(c[h>>2]|0)+36>>2]&32768|0)!=0){i=f;return}while(1){if((c[g>>2]|0)==0){break}do{if((d[(c[g>>2]|0)+16>>0]|0)==(d[(c[h>>2]|0)+16>>0]|0)){if((c[(c[g>>2]|0)+36>>2]&512|0)!=0){if((c[(c[g>>2]|0)+36>>2]&32768|0)==0){if((iC(c[g>>2]|0,c[h>>2]|0)|0)!=0){b[(c[h>>2]|0)+20>>1]=b[(c[g>>2]|0)+20>>1]|0;b[(c[h>>2]|0)+22>>1]=(b[(c[g>>2]|0)+22>>1]|0)-1;break}if((iC(c[h>>2]|0,c[g>>2]|0)|0)!=0){b[(c[h>>2]|0)+20>>1]=b[(c[g>>2]|0)+20>>1]|0;b[(c[h>>2]|0)+22>>1]=(b[(c[g>>2]|0)+22>>1]|0)+1}}}}}while(0);c[g>>2]=c[(c[g>>2]|0)+48>>2]}i=f;return}function gC(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+16|0;g=h+12|0;f=h;k=h+4|0;j=h+8|0;c[f>>2]=a;c[k>>2]=e;c[j>>2]=c[c[f>>2]>>2];while(1){if((c[j>>2]|0)==0){e=14;break}if((d[(c[j>>2]|0)+16>>0]|0)==(d[(c[k>>2]|0)+16>>0]|0)){if((d[(c[j>>2]|0)+17>>0]|0)==(d[(c[k>>2]|0)+17>>0]|0)){l=c[j>>2]|0;e=c[k>>2]|0;a=c[j>>2]|0;if((c[l>>2]&c[e>>2]|0)==(c[a>>2]|0)?(c[l+4>>2]&c[e+4>>2]|0)==(c[a+4>>2]|0):0){if((b[(c[j>>2]|0)+18>>1]|0)<=(b[(c[k>>2]|0)+18>>1]|0)){if((b[(c[j>>2]|0)+20>>1]|0)<=(b[(c[k>>2]|0)+20>>1]|0)){if((b[(c[j>>2]|0)+22>>1]|0)<=(b[(c[k>>2]|0)+22>>1]|0)){e=9;break}}}}e=c[j>>2]|0;a=c[k>>2]|0;l=c[k>>2]|0;if((c[e>>2]&c[a>>2]|0)==(c[l>>2]|0)?(c[e+4>>2]&c[a+4>>2]|0)==(c[l+4>>2]|0):0){if((b[(c[j>>2]|0)+20>>1]|0)>=(b[(c[k>>2]|0)+20>>1]|0)){if((b[(c[j>>2]|0)+22>>1]|0)>=(b[(c[k>>2]|0)+22>>1]|0)){e=14;break}}}}}c[f>>2]=(c[j>>2]|0)+48;c[j>>2]=c[c[f>>2]>>2]}if((e|0)==9){c[g>>2]=0;l=c[g>>2]|0;i=h;return l|0}else if((e|0)==14){c[g>>2]=c[f>>2];l=c[g>>2]|0;i=h;return l|0}return 0}function hC(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+16|0;h=k+12|0;n=k;l=k+4|0;j=k+8|0;c[n>>2]=d;c[l>>2]=f;c[j>>2]=g;rB(c[n>>2]|0,c[l>>2]|0);n=(UB(c[n>>2]|0,c[l>>2]|0,e[(c[j>>2]|0)+40>>1]|0)|0)!=0;d=c[l>>2]|0;if(n){n=d+24|0;c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[h>>2]=7;n=c[h>>2]|0;i=k;return n|0}f=c[j>>2]|0;n=d+0|0;m=f+0|0;g=n+40|0;do{c[n>>2]=c[m>>2];n=n+4|0;m=m+4|0}while((n|0)<(g|0));b[d+40>>1]=b[f+40>>1]|0;fL(c[(c[l>>2]|0)+44>>2]|0,c[(c[j>>2]|0)+44>>2]|0,(e[(c[l>>2]|0)+40>>1]|0)<<2|0)|0;l=c[j>>2]|0;if((c[(c[j>>2]|0)+36>>2]&1024|0)!=0){a[l+28>>0]=0}else{if((c[l+36>>2]&16384|0)!=0){c[(c[j>>2]|0)+28>>2]=0}}c[h>>2]=0;n=c[h>>2]|0;i=k;return n|0}function iC(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f;k=f+4|0;j=f+8|0;l=f+12|0;c[h>>2]=a;c[k>>2]=d;if((e[(c[h>>2]|0)+40>>1]|0)>=(e[(c[k>>2]|0)+40>>1]|0)){c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}if((b[(c[h>>2]|0)+20>>1]|0)>=(b[(c[k>>2]|0)+20>>1]|0)){if((b[(c[h>>2]|0)+20>>1]|0)>(b[(c[k>>2]|0)+20>>1]|0)){c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}if((b[(c[h>>2]|0)+22>>1]|0)>(b[(c[k>>2]|0)+22>>1]|0)){c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}}c[j>>2]=(e[(c[h>>2]|0)+40>>1]|0)-1;while(1){if((c[j>>2]|0)<0){d=17;break}c[l>>2]=(e[(c[k>>2]|0)+40>>1]|0)-1;while(1){if((c[l>>2]|0)<0){break}if((c[(c[(c[k>>2]|0)+44>>2]|0)+(c[l>>2]<<2)>>2]|0)==(c[(c[(c[h>>2]|0)+44>>2]|0)+(c[j>>2]<<2)>>2]|0)){break}c[l>>2]=(c[l>>2]|0)+ -1}if((c[l>>2]|0)<0){d=15;break}c[j>>2]=(c[j>>2]|0)+ -1}if((d|0)==15){c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}else if((d|0)==17){c[g>>2]=1;a=c[g>>2]|0;i=f;return a|0}return 0}function jC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e;l=e+4|0;j=e+8|0;k=e+12|0;h=e+16|0;c[g>>2]=a;c[l>>2]=b;c[j>>2]=d;c[k>>2]=0;c[h>>2]=c[(c[l>>2]|0)+20>>2];while(1){if((c[k>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0)){g=6;break}if((qC(c[c[h>>2]>>2]|0,c[j>>2]|0,c[g>>2]|0)|0)!=0){g=4;break}c[k>>2]=(c[k>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+48}if((g|0)==4){c[f>>2]=1;a=c[f>>2]|0;i=e;return a|0}else if((g|0)==6){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}return 0}function kC(a,f,g){a=a|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;h=j+28|0;q=j;m=j+4|0;k=j+8|0;o=j+12|0;p=j+16|0;l=j+20|0;n=j+24|0;c[q>>2]=a;c[m>>2]=f;c[k>>2]=g;if(((d[(c[m>>2]|0)+55>>0]|0)>>>2&1|0)!=0){c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}a=c[(c[c[q>>2]>>2]|0)+8>>2]|0;c[o>>2]=a;if((a|0)==0){c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}c[p>>2]=0;a:while(1){if((c[p>>2]|0)>=(c[c[o>>2]>>2]|0)){k=16;break}c[n>>2]=Pw(c[(c[(c[o>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)|0;if((d[c[n>>2]>>0]|0)!=154){k=8;break}b:do{if((c[(c[n>>2]|0)+28>>2]|0)==(c[k>>2]|0)){c[l>>2]=0;while(1){if((c[l>>2]|0)>=(e[(c[m>>2]|0)+50>>1]|0)){break b}if((b[(c[n>>2]|0)+32>>1]|0)==(b[(c[(c[m>>2]|0)+4>>2]|0)+(c[l>>2]<<1)>>1]|0)){k=13;break a}c[l>>2]=(c[l>>2]|0)+1}}}while(0);c[p>>2]=(c[p>>2]|0)+1}if((k|0)==8){c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}else if((k|0)==13){c[h>>2]=1;a=c[h>>2]|0;i=j;return a|0}else if((k|0)==16){c[h>>2]=0;a=c[h>>2]|0;i=j;return a|0}return 0}function lC(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;k=g+28|0;h=g+16|0;m=g+8|0;l=g+12|0;n=g;o=g+20|0;j=g+24|0;c[k>>2]=d;c[h>>2]=f;q=c[h>>2]|0;p=(c[h>>2]|0)+8|0;f=~(c[q+4>>2]|c[p+4>>2]);d=n;c[d>>2]=~(c[q>>2]|c[p>>2]);c[d+4>>2]=f;if((b[(c[c[c[c[k>>2]>>2]>>2]>>2]|0)+60>>1]&4096|0)!=0){i=g;return}c[o>>2]=c[(c[k>>2]|0)+12>>2];c[m>>2]=c[(c[k>>2]|0)+20>>2];while(1){if((c[o>>2]|0)<=0){h=19;break}if((a[(c[m>>2]|0)+20>>0]&2|0)!=0){h=19;break}p=(c[m>>2]|0)+40|0;q=(c[h>>2]|0)+8|0;if(!((c[p>>2]&c[q>>2]|0)==0?(c[p+4>>2]&c[q+4>>2]|0)==0:0)){p=(c[m>>2]|0)+40|0;q=n;if(!((c[p>>2]&c[q>>2]|0)!=0?1:(c[p+4>>2]&c[q+4>>2]|0)!=0)){c[j>>2]=(e[(c[h>>2]|0)+40>>1]|0)-1;while(1){if((c[j>>2]|0)<0){break}c[l>>2]=c[(c[(c[h>>2]|0)+44>>2]|0)+(c[j>>2]<<2)>>2];if((c[l>>2]|0)!=0){if((c[l>>2]|0)==(c[m>>2]|0)){break}if((c[(c[l>>2]|0)+4>>2]|0)>=0){if(((c[(c[k>>2]|0)+20>>2]|0)+((c[(c[l>>2]|0)+4>>2]|0)*48|0)|0)==(c[m>>2]|0)){break}}}c[j>>2]=(c[j>>2]|0)+ -1}if((c[j>>2]|0)<0){if((b[(c[m>>2]|0)+16>>1]|0)<=0){f=b[(c[m>>2]|0)+16>>1]|0}else{f=-1}q=(c[h>>2]|0)+22|0;b[q>>1]=(b[q>>1]|0)+f}}}c[o>>2]=(c[o>>2]|0)+ -1;c[m>>2]=(c[m>>2]|0)+48}if((h|0)==19){i=g;return}}function mC(a){a=a|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+16|0;d=f;h=f+8|0;j=f+12|0;c[g>>2]=a;a=d;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=(e[(c[g>>2]|0)+52>>1]|0)-1;while(1){if((c[h>>2]|0)<0){break}c[j>>2]=b[(c[(c[g>>2]|0)+4>>2]|0)+(c[h>>2]<<1)>>1]|0;if((c[j>>2]|0)>=0&(c[j>>2]|0)<63){l=bL(1,0,c[j>>2]|0)|0;m=d;k=c[m+4>>2]|D;a=d;c[a>>2]=c[m>>2]|l;c[a+4>>2]=k}c[h>>2]=(c[h>>2]|0)+ -1}m=d;D=c[m+4>>2]|0;i=f;return c[m>>2]|0}function nC(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;B=i;i=i+224|0;y=B+16|0;k=B+188|0;z=B+176|0;x=B+164|0;A=B+192|0;O=B+168|0;H=B+180|0;l=B+172|0;n=B+184|0;u=B+12|0;N=B+8|0;C=B+24|0;m=B;s=B+210|0;o=B+208|0;p=B+202|0;q=B+20|0;r=B+206|0;D=B+136|0;t=B+140|0;G=B+204|0;J=B+144|0;I=B+148|0;M=B+196|0;v=B+198|0;F=B+200|0;E=B+194|0;w=B+152|0;L=B+156|0;K=B+160|0;c[k>>2]=f;c[z>>2]=g;c[x>>2]=h;b[A>>1]=j;c[O>>2]=c[c[k>>2]>>2];c[H>>2]=c[c[O>>2]>>2];c[l>>2]=c[c[H>>2]>>2];c[t>>2]=0;c[J>>2]=0;c[I>>2]=0;c[n>>2]=c[(c[k>>2]|0)+12>>2];if((a[(c[l>>2]|0)+64>>0]|0)!=0){c[y>>2]=7;O=c[y>>2]|0;i=B;return O|0}do{if((c[(c[n>>2]|0)+36>>2]&32|0)!=0){c[N>>2]=24}else{if((c[(c[x>>2]|0)+44>>2]|0)>0){if((a[(c[z>>2]|0)+36>>0]&8|0)==0){c[N>>2]=191;break}}c[N>>2]=63}}while(0);if(((d[(c[x>>2]|0)+55>>0]|0)>>>2&1|0)!=0){c[N>>2]=c[N>>2]&-61}if((e[(c[n>>2]|0)+24>>1]|0)<(e[(c[x>>2]|0)+50>>1]|0)){c[D>>2]=b[(c[(c[x>>2]|0)+4>>2]|0)+(e[(c[n>>2]|0)+24>>1]<<1)>>1]|0}else{c[D>>2]=-1}c[u>>2]=PB(C,c[(c[k>>2]|0)+4>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[D>>2]|0,c[N>>2]|0,c[x>>2]|0)|0;b[o>>1]=b[(c[n>>2]|0)+24>>1]|0;b[p>>1]=b[(c[n>>2]|0)+26>>1]|0;b[s>>1]=b[(c[n>>2]|0)+40>>1]|0;c[q>>2]=c[(c[n>>2]|0)+36>>2];g=c[n>>2]|0;f=c[g+4>>2]|0;O=m;c[O>>2]=c[g>>2];c[O+4>>2]=f;b[r>>1]=b[(c[n>>2]|0)+22>>1]|0;b[(c[n>>2]|0)+18>>1]=0;b[G>>1]=_B(b[c[(c[x>>2]|0)+8>>2]>>1]|0)|0;if((c[u>>2]|0)==0){if((e[o>>1]|0)==(e[p>>1]|0)){if(((e[o>>1]|0)+1|0)<(e[(c[x>>2]|0)+50>>1]|0)){if((b[(c[(c[x>>2]|0)+8>>2]|0)+((e[o>>1]|0)+1<<1)>>1]|0)>=42){O=UB(c[l>>2]|0,c[n>>2]|0,(e[(c[n>>2]|0)+40>>1]|0)+1|0)|0;c[t>>2]=O;if((O|0)==0){f=(c[n>>2]|0)+24|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;f=(c[n>>2]|0)+26|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;f=(c[n>>2]|0)+40|0;O=b[f>>1]|0;b[f>>1]=O+1<<16>>16;c[(c[(c[n>>2]|0)+44>>2]|0)+((O&65535)<<2)>>2]=0;O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|32768;b[M>>1]=(b[(c[(c[x>>2]|0)+8>>2]|0)+(e[o>>1]<<1)>>1]|0)-(b[(c[(c[x>>2]|0)+8>>2]|0)+((e[o>>1]|0)+1<<1)>>1]|0);O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)-(b[M>>1]|0);nC(c[k>>2]|0,c[z>>2]|0,c[x>>2]|0,(b[M>>1]|0)+(b[A>>1]|0)&65535)|0;b[(c[n>>2]|0)+22>>1]=b[r>>1]|0}}}}}while(1){if((c[t>>2]|0)!=0){break}if((c[u>>2]|0)==0){break}b[v>>1]=b[(c[u>>2]|0)+18>>1]|0;c[w>>2]=0;if((e[v>>1]|0)==128){j=24}else{if((a[(c[u>>2]|0)+20>>0]&0|0)!=0){j=24}else{j=26}}if((j|0)==24){j=0;if((c[D>>2]|0)>=0){if((d[(c[(c[(c[z>>2]|0)+16>>2]|0)+4>>2]|0)+((c[D>>2]|0)*24|0)+20>>0]|0)==0){j=26}}}if((j|0)==26){f=(c[u>>2]|0)+32|0;O=(c[n>>2]|0)+8|0;if(!((c[f>>2]&c[O>>2]|0)!=0?1:(c[f+4>>2]&c[O+4>>2]|0)!=0)){c[(c[n>>2]|0)+36>>2]=c[q>>2];b[(c[n>>2]|0)+24>>1]=b[o>>1]|0;b[(c[n>>2]|0)+40>>1]=b[s>>1]|0;if((UB(c[l>>2]|0,c[n>>2]|0,(e[(c[n>>2]|0)+40>>1]|0)+1|0)|0)!=0){break}h=c[u>>2]|0;g=(c[n>>2]|0)+40|0;N=b[g>>1]|0;b[g>>1]=N+1<<16>>16;c[(c[(c[n>>2]|0)+44>>2]|0)+((N&65535)<<2)>>2]=h;N=m;h=(c[u>>2]|0)+32|0;g=(c[n>>2]|0)+8|0;f=(c[N+4>>2]|c[h+4>>2])&~c[g+4>>2];O=c[n>>2]|0;c[O>>2]=(c[N>>2]|c[h>>2])&~c[g>>2];c[O+4>>2]=f;do{if((b[v>>1]&1|0)!=0){c[L>>2]=c[c[u>>2]>>2];O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|4;if((c[(c[L>>2]|0)+4>>2]&2048|0)!=0){c[w>>2]=46;break}if((c[(c[L>>2]|0)+20>>2]|0)!=0){if((c[c[(c[L>>2]|0)+20>>2]>>2]|0)!=0){O=c[c[(c[L>>2]|0)+20>>2]>>2]|0;c[w>>2]=(Kw(O,((O|0)<0)<<31>>31)|0)<<16>>16}}}else{if((b[v>>1]&2|0)!=0){O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|1;if((c[D>>2]|0)>=0){if((b[A>>1]|0)!=0){break}if((e[(c[n>>2]|0)+24>>1]|0)!=((e[(c[x>>2]|0)+50>>1]|0)-1|0)){break}}if((c[D>>2]|0)>=0){if((d[(c[x>>2]|0)+54>>0]|0)==0){O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|65536;break}}O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|4096;break}else{if((b[v>>1]&128|0)!=0){O=(c[n>>2]|0)+36|0;c[O>>2]=c[O>>2]|8;break}j=(c[n>>2]|0)+36|0;M=c[j>>2]|0;if((b[v>>1]&36|0)!=0){c[j>>2]=M|34;c[I>>2]=c[u>>2];c[J>>2]=0;break}c[j>>2]=M|18;c[J>>2]=c[u>>2];if((c[(c[n>>2]|0)+36>>2]&32|0)!=0){j=c[(c[(c[n>>2]|0)+44>>2]|0)+((e[(c[n>>2]|0)+40>>1]|0)-2<<2)>>2]|0}else{j=0}c[I>>2]=j;break}}}while(0);do{if((c[(c[n>>2]|0)+36>>2]&2|0)!=0){oC(c[H>>2]|0,c[k>>2]|0,c[I>>2]|0,c[J>>2]|0,c[n>>2]|0)|0}else{f=(c[n>>2]|0)+24|0;O=(b[f>>1]|0)+1<<16>>16;b[f>>1]=O;c[K>>2]=O&65535;if((b[(c[u>>2]|0)+16>>1]|0)<=0){if((c[D>>2]|0)>=0){O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)+(b[(c[u>>2]|0)+16>>1]|0);O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)-(c[w>>2]|0);break}}O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)+((b[(c[(c[x>>2]|0)+8>>2]|0)+(c[K>>2]<<1)>>1]|0)-(b[(c[(c[x>>2]|0)+8>>2]|0)+((c[K>>2]|0)-1<<1)>>1]|0));if((b[v>>1]&128|0)!=0){O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)+10}}}while(0);b[F>>1]=(b[(c[n>>2]|0)+22>>1]|0)+1+(((b[(c[x>>2]|0)+48>>1]|0)*15|0)/(b[(c[(c[z>>2]|0)+16>>2]|0)+42>>1]|0)|0);O=YB(b[G>>1]|0,b[F>>1]|0)|0;b[(c[n>>2]|0)+20>>1]=O;if((c[(c[n>>2]|0)+36>>2]&320|0)==0){O=YB(b[(c[n>>2]|0)+20>>1]|0,(b[(c[n>>2]|0)+22>>1]|0)+16&65535)|0;b[(c[n>>2]|0)+20>>1]=O}b[E>>1]=b[(c[n>>2]|0)+22>>1]|0;O=(c[n>>2]|0)+20|0;b[O>>1]=(b[O>>1]|0)+((b[A>>1]|0)+(c[w>>2]|0));O=(c[n>>2]|0)+22|0;b[O>>1]=(b[O>>1]|0)+((b[A>>1]|0)+(c[w>>2]|0));lC(c[(c[k>>2]|0)+4>>2]|0,c[n>>2]|0);c[t>>2]=eC(c[k>>2]|0,c[n>>2]|0)|0;if((c[(c[n>>2]|0)+36>>2]&2|0)!=0){b[(c[n>>2]|0)+22>>1]=b[r>>1]|0}else{b[(c[n>>2]|0)+22>>1]=b[E>>1]|0}if((c[(c[n>>2]|0)+36>>2]&16|0)==0){if((e[(c[n>>2]|0)+24>>1]|0)<((e[(c[x>>2]|0)+50>>1]|0)+((c[c[x>>2]>>2]|0)!=0&1)|0)){nC(c[k>>2]|0,c[z>>2]|0,c[x>>2]|0,(b[A>>1]|0)+(c[w>>2]|0)&65535)|0}}b[(c[n>>2]|0)+22>>1]=b[r>>1]|0}}c[u>>2]=QB(C)|0}g=m;f=c[g+4>>2]|0;O=c[n>>2]|0;c[O>>2]=c[g>>2];c[O+4>>2]=f;b[(c[n>>2]|0)+24>>1]=b[o>>1]|0;b[(c[n>>2]|0)+26>>1]=b[p>>1]|0;c[(c[n>>2]|0)+36>>2]=c[q>>2];b[(c[n>>2]|0)+22>>1]=b[r>>1]|0;b[(c[n>>2]|0)+40>>1]=b[s>>1]|0;c[y>>2]=c[t>>2];O=c[y>>2]|0;i=B;return O|0}function oC(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;h=l+4|0;o=l+8|0;j=l+12|0;k=l+16|0;n=l+20|0;m=l+28|0;c[l+24>>2]=a;c[l>>2]=d;c[h>>2]=e;c[o>>2]=f;c[j>>2]=g;c[k>>2]=0;c[n>>2]=b[(c[j>>2]|0)+22>>1]|0;b[m>>1]=pC(c[h>>2]|0,c[n>>2]&65535)|0;b[m>>1]=pC(c[o>>2]|0,b[m>>1]|0)|0;if((c[h>>2]|0)!=0){if((c[o>>2]|0)!=0){b[m>>1]=(b[m>>1]|0)-20}}c[n>>2]=(c[n>>2]|0)-(((c[h>>2]|0)!=0&1)+((c[o>>2]|0)!=0&1));if((b[m>>1]|0)<10){b[m>>1]=10}if((b[m>>1]|0)>=(c[n>>2]|0)){d=c[n>>2]|0;d=d&65535;a=c[j>>2]|0;a=a+22|0;b[a>>1]=d;a=c[k>>2]|0;i=l;return a|0}c[n>>2]=b[m>>1]|0;d=c[n>>2]|0;d=d&65535;a=c[j>>2]|0;a=a+22|0;b[a>>1]=d;a=c[k>>2]|0;i=l;return a|0}function pC(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;g=i;i=i+16|0;h=g;j=g+6|0;f=g+4|0;c[h>>2]=d;b[j>>1]=e;b[f>>1]=b[j>>1]|0;do{if((c[h>>2]|0)!=0){e=c[h>>2]|0;if((b[(c[h>>2]|0)+16>>1]|0)<=0){b[f>>1]=(b[f>>1]|0)+(b[e+16>>1]|0);break}if((a[e+20>>0]&0|0)==0){b[f>>1]=(b[f>>1]|0)-20}}}while(0);i=g;return b[f>>1]|0}function qC(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f;j=f+4|0;k=f+8|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=e;if((jx(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0)==0){c[g>>2]=1;a=c[g>>2]|0;i=f;return a|0}do{if((d[c[j>>2]>>0]|0|0)==71){if((qC(c[h>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[k>>2]|0)|0)==0){if((qC(c[h>>2]|0,c[(c[j>>2]|0)+16>>2]|0,c[k>>2]|0)|0)==0){break}}c[g>>2]=1;a=c[g>>2]|0;i=f;return a|0}}while(0);if((d[c[j>>2]>>0]|0|0)==77){if((jx(c[(c[h>>2]|0)+12>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[k>>2]|0)|0)==0){if((d[c[h>>2]>>0]|0|0)!=76){if((d[c[h>>2]>>0]|0|0)!=73){c[g>>2]=1;a=c[g>>2]|0;i=f;return a|0}}}}c[g>>2]=0;a=c[g>>2]|0;i=f;return a|0}function rC(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var 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;n=i;i=i+80|0;l=n;m=n+64|0;v=n+60|0;u=n+56|0;t=n+52|0;C=n+48|0;o=n+44|0;r=n+40|0;w=n+36|0;q=n+68|0;x=n+24|0;z=n+20|0;p=n+16|0;y=n+12|0;k=n+8|0;A=n+4|0;B=n+28|0;s=n+72|0;D=n+32|0;c[v>>2]=f;c[u>>2]=g;c[t>>2]=h;c[C>>2]=j;c[w>>2]=0;c[o>>2]=0;c[p>>2]=c[(c[u>>2]|0)+20>>2];while(1){if((c[o>>2]|0)>=(c[(c[u>>2]|0)+12>>2]|0)){break}if((c[(c[p>>2]|0)+8>>2]|0)==(c[(c[t>>2]|0)+40>>2]|0)){if((e[(c[p>>2]|0)+18>>1]&-1153|0)!=0){if((a[(c[p>>2]|0)+20>>0]&0|0)==0){c[w>>2]=(c[w>>2]|0)+1}}}c[o>>2]=(c[o>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+48}c[y>>2]=0;if((c[C>>2]|0)!=0){c[A>>2]=c[c[C>>2]>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[A>>2]|0)){break}c[B>>2]=c[(c[(c[C>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0)>>2];if((d[c[B>>2]>>0]|0)!=154){break}if((c[(c[B>>2]|0)+28>>2]|0)!=(c[(c[t>>2]|0)+40>>2]|0)){break}c[o>>2]=(c[o>>2]|0)+1}if((c[o>>2]|0)==(c[A>>2]|0)){c[y>>2]=c[A>>2]}}c[k>>2]=ve(c[c[v>>2]>>2]|0,56+((c[w>>2]|0)*20|0)+(c[y>>2]<<3)|0)|0;if((c[k>>2]|0)==0){bf(c[v>>2]|0,9112,l);c[m>>2]=0;f=c[m>>2]|0;i=n;return f|0}c[q>>2]=(c[k>>2]|0)+56;c[x>>2]=(c[q>>2]|0)+((c[w>>2]|0)*12|0);c[z>>2]=(c[x>>2]|0)+(c[y>>2]<<3);c[c[k>>2]>>2]=c[w>>2];c[(c[k>>2]|0)+8>>2]=c[y>>2];c[(c[k>>2]|0)+4>>2]=c[q>>2];c[(c[k>>2]|0)+12>>2]=c[x>>2];c[(c[k>>2]|0)+16>>2]=c[z>>2];c[r>>2]=0;c[o>>2]=0;c[p>>2]=c[(c[u>>2]|0)+20>>2];while(1){if((c[o>>2]|0)>=(c[(c[u>>2]|0)+12>>2]|0)){break}if((c[(c[p>>2]|0)+8>>2]|0)==(c[(c[t>>2]|0)+40>>2]|0)){if((e[(c[p>>2]|0)+18>>1]&-1153|0)!=0){if((a[(c[p>>2]|0)+20>>0]&0|0)==0){c[(c[q>>2]|0)+((c[r>>2]|0)*12|0)>>2]=c[(c[p>>2]|0)+12>>2];c[(c[q>>2]|0)+((c[r>>2]|0)*12|0)+8>>2]=c[o>>2];f=b[(c[p>>2]|0)+18>>1]&255&255;a[s>>0]=f;a[s>>0]=(d[s>>0]|0)==1?2:f;a[(c[q>>2]|0)+((c[r>>2]|0)*12|0)+4>>0]=a[s>>0]|0;c[r>>2]=(c[r>>2]|0)+1}}}c[o>>2]=(c[o>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+48}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[y>>2]|0)){break}c[D>>2]=c[(c[(c[C>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0)>>2];c[(c[x>>2]|0)+(c[o>>2]<<3)>>2]=b[(c[D>>2]|0)+32>>1]|0;a[(c[x>>2]|0)+(c[o>>2]<<3)+4>>0]=a[(c[(c[C>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0)+12>>0]|0;c[o>>2]=(c[o>>2]|0)+1}c[m>>2]=c[k>>2];f=c[m>>2]|0;i=n;return f|0}function sC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;j=l;g=l+24|0;h=l+4|0;k=l+8|0;m=l+12|0;f=l+16|0;n=l+20|0;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[m>>2]=c[(ww(c[c[g>>2]>>2]|0,c[h>>2]|0)|0)+8>>2];c[n>>2]=zb[c[(c[c[m>>2]>>2]|0)+12>>2]&127](c[m>>2]|0,c[k>>2]|0)|0;do{if((c[n>>2]|0)!=0){if((c[n>>2]|0)==7){a[(c[c[g>>2]>>2]|0)+64>>0]=1;break}e=c[g>>2]|0;if((c[(c[m>>2]|0)+8>>2]|0)!=0){c[j>>2]=c[(c[m>>2]|0)+8>>2];bf(e,1768,j);break}else{c[j>>2]=ie(c[n>>2]|0)|0;bf(e,1768,j);break}}}while(0);oc(c[(c[m>>2]|0)+8>>2]|0);c[(c[m>>2]|0)+8>>2]=0;c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[k>>2]>>2]|0)){break}if((a[(c[(c[k>>2]|0)+4>>2]|0)+((c[f>>2]|0)*12|0)+5>>0]|0)==0){if((c[(c[(c[k>>2]|0)+16>>2]|0)+(c[f>>2]<<3)>>2]|0)>0){b=c[g>>2]|0;c[j>>2]=c[c[h>>2]>>2];bf(b,30576,j)}}c[f>>2]=(c[f>>2]|0)+1}i=l;return c[(c[g>>2]|0)+64>>2]|0}function tC(a){a=+a;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+32|0;e=d+18|0;f=d;g=d+8|0;j=d+16|0;h[f>>3]=a;if(+h[f>>3]<=1.0){b[e>>1]=0;j=b[e>>1]|0;i=d;return j|0}if(+h[f>>3]<=2.0e9){a=+h[f>>3];b[e>>1]=Kw(~~a>>>0,+O(a)>=1.0?a>0.0?(ea(+N(a/4294967296.0),4294967295.0)|0)>>>0:~~+_((a- +(~~a>>>0))/4294967296.0)>>>0:0)|0;j=b[e>>1]|0;i=d;return j|0}else{c[g+0>>2]=c[f+0>>2];c[g+4>>2]=c[f+4>>2];g=eL(c[g>>2]|0,c[g+4>>2]|0,52)|0;g=$K(g|0,D|0,1022,0)|0;b[j>>1]=g;b[e>>1]=(b[j>>1]|0)*10;j=b[e>>1]|0;i=d;return j|0}return 0}function uC(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+48|0;l=j+36|0;p=j+32|0;q=j+28|0;r=j+24|0;s=j+20|0;t=j+16|0;k=j+8|0;o=j+4|0;m=j;n=j+12|0;c[p>>2]=a;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;c[t>>2]=h;c[o>>2]=c[(c[(c[s>>2]|0)+32>>2]|0)+(c[t>>2]<<2)>>2];c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[c[q>>2]>>2]|0)){m=10;break}c[m>>2]=Pw(c[(c[(c[q>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)>>2]|0)|0;if((d[c[m>>2]>>0]|0)==154){if((b[(c[m>>2]|0)+32>>1]|0)==(b[(c[(c[s>>2]|0)+4>>2]|0)+(c[t>>2]<<1)>>1]|0)){if((c[(c[m>>2]|0)+28>>2]|0)==(c[r>>2]|0)){c[n>>2]=Jw(c[p>>2]|0,c[(c[(c[q>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)>>2]|0)|0;if((c[n>>2]|0)!=0){if(0==(Dc(c[c[n>>2]>>2]|0,c[o>>2]|0)|0)){m=8;break}}}}}c[k>>2]=(c[k>>2]|0)+1}if((m|0)==8){c[l>>2]=c[k>>2];a=c[l>>2]|0;i=j;return a|0}else if((m|0)==10){c[l>>2]=-1;a=c[l>>2]|0;i=j;return a|0}return 0}function vC(f,g,h){f=f|0;g=g|0;h=h|0;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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0;I=i;i=i+208|0;L=I+84|0;r=I+188|0;E=I+156|0;aa=I+136|0;z=I+140|0;V=I+144|0;n=I+148|0;u=I+32|0;w=I+24|0;v=I+40|0;o=I+152|0;p=I+160|0;q=I+164|0;O=I+168|0;m=I+172|0;G=I+176|0;$=I+16|0;s=I+180|0;H=I+184|0;y=I+192|0;t=I+132|0;l=I+128|0;x=I+194|0;C=I+88|0;Q=I+92|0;P=I+80|0;R=I+76|0;S=I+60|0;A=I+56|0;B=I+52|0;J=I+68|0;M=I+64|0;K=I+72|0;N=I+48|0;k=I+96|0;j=I+196|0;F=I+104|0;Y=I+108|0;T=I+112|0;U=I+116|0;_=I+120|0;X=I+8|0;W=I;Z=I+124|0;c[L>>2]=f;c[r>>2]=g;c[E>>2]=h;c[aa>>2]=c[c[r>>2]>>2];f=v;c[f>>2]=0;c[f+4>>2]=0;c[o>>2]=0;c[p>>2]=0;c[q>>2]=0;c[m>>2]=c[c[aa>>2]>>2];c[G>>2]=c[c[m>>2]>>2];if((a[(c[G>>2]|0)+64>>0]|0)!=0){i=I;return}c[z>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[E>>2]|0)*48|0);c[V>>2]=(c[aa>>2]|0)+68;c[n>>2]=c[c[z>>2]>>2];g=WB(c[V>>2]|0,c[(c[n>>2]|0)+12>>2]|0)|0;f=u;c[f>>2]=g;c[f+4>>2]=D;c[O>>2]=d[c[n>>2]>>0]|0;do{if((c[O>>2]|0)==75){aa=c[V>>2]|0;h=(c[n>>2]|0)+20|0;if((c[(c[n>>2]|0)+4>>2]&2048|0)!=0){g=XB(aa,c[h>>2]|0)|0;f=(c[z>>2]|0)+32|0;c[f>>2]=g;c[f+4>>2]=D;break}else{g=DB(aa,c[h>>2]|0)|0;f=(c[z>>2]|0)+32|0;c[f>>2]=g;c[f+4>>2]=D;break}}else{if((c[O>>2]|0)==76){f=(c[z>>2]|0)+32|0;c[f>>2]=0;c[f+4>>2]=0;break}else{g=WB(c[V>>2]|0,c[(c[n>>2]|0)+16>>2]|0)|0;f=(c[z>>2]|0)+32|0;c[f>>2]=g;c[f+4>>2]=D;break}}}while(0);g=WB(c[V>>2]|0,c[n>>2]|0)|0;f=w;c[f>>2]=g;c[f+4>>2]=D;if((c[(c[n>>2]|0)+4>>2]&1|0)!=0){h=EB(c[V>>2]|0,b[(c[n>>2]|0)+36>>1]|0)|0;aa=$;c[aa>>2]=h;c[aa+4>>2]=D;aa=$;h=w;f=c[h+4>>2]|c[aa+4>>2];g=w;c[g>>2]=c[h>>2]|c[aa>>2];c[g+4>>2]=f;g=$;g=$K(c[g>>2]|0,c[g+4>>2]|0,1,0)|0;f=v;c[f>>2]=g;c[f+4>>2]=D}g=w;$=c[g+4>>2]|0;f=(c[z>>2]|0)+40|0;c[f>>2]=c[g>>2];c[f+4>>2]=$;c[(c[z>>2]|0)+8>>2]=-1;c[(c[z>>2]|0)+4>>2]=-1;b[(c[z>>2]|0)+18>>1]=0;f=(wC(c[O>>2]|0)|0)!=0;$=c[n>>2]|0;do{if(f){c[s>>2]=Pw(c[$+12>>2]|0)|0;c[H>>2]=Pw(c[(c[n>>2]|0)+16>>2]|0)|0;g=(c[z>>2]|0)+32|0;f=u;b[y>>1]=((c[g>>2]&c[f>>2]|0)==0?(c[g+4>>2]&c[f+4>>2]|0)==0:0)?4095:1024;if((d[c[s>>2]>>0]|0)==154){c[(c[z>>2]|0)+8>>2]=c[(c[s>>2]|0)+28>>2];c[(c[z>>2]|0)+12>>2]=b[(c[s>>2]|0)+32>>1]|0;f=(xC(c[O>>2]|0)|0)&65535;b[(c[z>>2]|0)+18>>1]=f&e[y>>1]}if((c[H>>2]|0)!=0){if((d[c[H>>2]>>0]|0)==154){b[x>>1]=0;if((c[(c[z>>2]|0)+8>>2]|0)>=0){c[l>>2]=hx(c[G>>2]|0,c[n>>2]|0,0)|0;if((a[(c[G>>2]|0)+64>>0]|0)!=0){gu(c[G>>2]|0,c[l>>2]|0);i=I;return}c[C>>2]=yC(c[r>>2]|0,c[l>>2]|0,3)|0;if((c[C>>2]|0)==0){i=I;return}c[t>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[C>>2]|0)*48|0);c[(c[t>>2]|0)+4>>2]=c[E>>2];c[z>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[E>>2]|0)*48|0);a[(c[z>>2]|0)+21>>0]=1;f=(c[z>>2]|0)+20|0;a[f>>0]=d[f>>0]|8;if((d[c[n>>2]>>0]|0)==79){if((c[(c[n>>2]|0)+4>>2]&1|0)==0){if((b[(c[G>>2]|0)+60>>1]&512|0)==0){f=(c[z>>2]|0)+18|0;b[f>>1]=e[f>>1]|1024;b[x>>1]=1024}}}}else{c[l>>2]=c[n>>2];c[t>>2]=c[z>>2]}zC(c[m>>2]|0,c[l>>2]|0);c[s>>2]=Pw(c[(c[l>>2]|0)+12>>2]|0)|0;c[(c[t>>2]|0)+8>>2]=c[(c[s>>2]|0)+28>>2];c[(c[t>>2]|0)+12>>2]=b[(c[s>>2]|0)+32>>1]|0;h=u;f=v;g=c[h+4>>2]|c[f+4>>2];aa=(c[t>>2]|0)+32|0;c[aa>>2]=c[h>>2]|c[f>>2];c[aa+4>>2]=g;aa=w;g=c[aa+4>>2]|0;f=(c[t>>2]|0)+40|0;c[f>>2]=c[aa>>2];c[f+4>>2]=g;f=(xC(d[c[l>>2]>>0]|0)|0)&65535;b[(c[t>>2]|0)+18>>1]=f+(e[x>>1]|0)&e[y>>1]}}}else{if((d[$>>0]|0)==74){if((d[(c[r>>2]|0)+8>>0]|0)==72){c[Q>>2]=c[(c[n>>2]|0)+20>>2];c[P>>2]=0;while(1){if((c[P>>2]|0)>=2){break}aa=c[m>>2]|0;g=d[30624+(c[P>>2]|0)>>0]|0;f=hx(c[G>>2]|0,c[(c[n>>2]|0)+12>>2]|0,0)|0;c[R>>2]=Bu(aa,g,f,hx(c[G>>2]|0,c[(c[(c[Q>>2]|0)+4>>2]|0)+((c[P>>2]|0)*20|0)>>2]|0,0)|0,0)|0;AC(c[R>>2]|0,c[n>>2]|0);c[S>>2]=yC(c[r>>2]|0,c[R>>2]|0,3)|0;vC(c[L>>2]|0,c[r>>2]|0,c[S>>2]|0);c[z>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[E>>2]|0)*48|0);c[(c[(c[r>>2]|0)+20>>2]|0)+((c[S>>2]|0)*48|0)+4>>2]=c[E>>2];c[P>>2]=(c[P>>2]|0)+1}a[(c[z>>2]|0)+21>>0]=2;break}}if((d[c[n>>2]>>0]|0)==71){BC(c[L>>2]|0,c[r>>2]|0,c[E>>2]|0);c[z>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[E>>2]|0)*48|0)}}}while(0);if((d[(c[r>>2]|0)+8>>0]|0)==72){if((CC(c[m>>2]|0,c[n>>2]|0,o,p,q)|0)!=0){c[A>>2]=c[(c[(c[(c[n>>2]|0)+20>>2]|0)+4>>2]|0)+20>>2];c[B>>2]=hx(c[G>>2]|0,c[o>>2]|0,0)|0;if((a[(c[G>>2]|0)+64>>0]|0)==0){f=(Ub(c[(c[B>>2]|0)+8>>2]|0)|0)-1|0;c[F>>2]=(c[(c[B>>2]|0)+8>>2]|0)+f;a[j>>0]=a[c[F>>2]>>0]|0;if((c[q>>2]|0)!=0){if((d[j>>0]|0)==64){c[p>>2]=0}a[j>>0]=a[784+(d[j>>0]|0)>>0]|0}a[c[F>>2]>>0]=(d[j>>0]|0)+1}c[k>>2]=(c[q>>2]|0)!=0?3656:3640;c[k+4>>2]=6;c[J>>2]=hx(c[G>>2]|0,c[A>>2]|0,0)|0;f=c[m>>2]|0;g=dv(c[m>>2]|0,c[J>>2]|0,k)|0;c[J>>2]=Bu(f,83,g,c[o>>2]|0,0)|0;AC(c[J>>2]|0,c[n>>2]|0);c[K>>2]=yC(c[r>>2]|0,c[J>>2]|0,3)|0;vC(c[L>>2]|0,c[r>>2]|0,c[K>>2]|0);c[M>>2]=hx(c[G>>2]|0,c[A>>2]|0,0)|0;g=c[m>>2]|0;f=dv(c[m>>2]|0,c[M>>2]|0,k)|0;c[M>>2]=Bu(g,82,f,c[B>>2]|0,0)|0;AC(c[M>>2]|0,c[n>>2]|0);c[N>>2]=yC(c[r>>2]|0,c[M>>2]|0,3)|0;vC(c[L>>2]|0,c[r>>2]|0,c[N>>2]|0);c[z>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[E>>2]|0)*48|0);if((c[p>>2]|0)!=0){c[(c[(c[r>>2]|0)+20>>2]|0)+((c[K>>2]|0)*48|0)+4>>2]=c[E>>2];c[(c[(c[r>>2]|0)+20>>2]|0)+((c[N>>2]|0)*48|0)+4>>2]=c[E>>2];a[(c[z>>2]|0)+21>>0]=2}}}if((DC(c[n>>2]|0)|0)!=0){c[T>>2]=c[c[(c[(c[n>>2]|0)+20>>2]|0)+4>>2]>>2];c[U>>2]=c[(c[(c[(c[n>>2]|0)+20>>2]|0)+4>>2]|0)+20>>2];g=WB(c[V>>2]|0,c[T>>2]|0)|0;f=W;c[f>>2]=g;c[f+4>>2]=D;f=WB(c[V>>2]|0,c[U>>2]|0)|0;g=X;c[g>>2]=f;c[g+4>>2]=D;g=W;f=X;if((c[g>>2]&c[f>>2]|0)==0?(c[g+4>>2]&c[f+4>>2]|0)==0:0){f=c[m>>2]|0;c[Z>>2]=Bu(f,51,0,hx(c[G>>2]|0,c[T>>2]|0,0)|0,0)|0;c[Y>>2]=yC(c[r>>2]|0,c[Z>>2]|0,3)|0;c[_>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[Y>>2]|0)*48|0);f=W;g=c[f+4>>2]|0;aa=(c[_>>2]|0)+32|0;c[aa>>2]=c[f>>2];c[aa+4>>2]=g;c[(c[_>>2]|0)+8>>2]=c[(c[U>>2]|0)+28>>2];c[(c[_>>2]|0)+12>>2]=b[(c[U>>2]|0)+32>>1]|0;b[(c[_>>2]|0)+18>>1]=64;c[(c[_>>2]|0)+4>>2]=c[E>>2];c[z>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[E>>2]|0)*48|0);a[(c[z>>2]|0)+21>>0]=1;aa=(c[z>>2]|0)+20|0;a[aa>>0]=d[aa>>0]|8;aa=(c[z>>2]|0)+40|0;g=c[aa+4>>2]|0;f=(c[_>>2]|0)+40|0;c[f>>2]=c[aa>>2];c[f+4>>2]=g}}aa=v;f=(c[z>>2]|0)+32|0;h=f;g=c[h+4>>2]|c[aa+4>>2];c[f>>2]=c[h>>2]|c[aa>>2];c[f+4>>2]=g;i=I;return}function wC(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==75){a=1}else{if((c[d>>2]|0)>=79&(c[d>>2]|0)<=83){a=1}else{a=(c[d>>2]|0)==76}}i=b;return a&1|0}function xC(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d;e=d+4|0;c[f>>2]=a;do{if((c[f>>2]|0)==75){b[e>>1]=1}else{if((c[f>>2]|0)==76){b[e>>1]=128;break}else{b[e>>1]=2<<(c[f>>2]|0)-79;break}}}while(0);i=d;return b[e>>1]|0}function yC(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+32|0;g=o+24|0;l=o;n=o+4|0;k=o+28|0;j=o+12|0;m=o+16|0;q=o+20|0;p=o+8|0;c[l>>2]=d;c[n>>2]=e;a[k>>0]=f;do{if((c[(c[l>>2]|0)+12>>2]|0)>=(c[(c[l>>2]|0)+16>>2]|0)){c[q>>2]=c[(c[l>>2]|0)+20>>2];c[p>>2]=c[c[c[c[l>>2]>>2]>>2]>>2];d=$e(c[p>>2]|0,(c[(c[l>>2]|0)+16>>2]|0)*48<<1)|0;c[(c[l>>2]|0)+20>>2]=d;if((c[(c[l>>2]|0)+20>>2]|0)!=0){fL(c[(c[l>>2]|0)+20>>2]|0,c[q>>2]|0,(c[(c[l>>2]|0)+12>>2]|0)*48|0)|0;if((c[q>>2]|0)!=((c[l>>2]|0)+24|0)){cc(c[p>>2]|0,c[q>>2]|0)}d=((Vv(c[p>>2]|0,c[(c[l>>2]|0)+20>>2]|0)|0)>>>0)/48|0;c[(c[l>>2]|0)+16>>2]=d;break}if((a[k>>0]&1|0)!=0){gu(c[p>>2]|0,c[n>>2]|0)}c[(c[l>>2]|0)+20>>2]=c[q>>2];c[g>>2]=0;d=c[g>>2]|0;i=o;return d|0}}while(0);e=(c[l>>2]|0)+12|0;d=c[e>>2]|0;c[e>>2]=d+1;c[m>>2]=d;c[j>>2]=(c[(c[l>>2]|0)+20>>2]|0)+(d*48|0);if((c[n>>2]|0)!=0){if((c[(c[n>>2]|0)+4>>2]&262144|0)!=0){d=c[(c[n>>2]|0)+28>>2]|0;d=((Kw(d,((d|0)<0)<<31>>31)|0)<<16>>16)-99&65535;b[(c[j>>2]|0)+16>>1]=d}else{h=12}}else{h=12}if((h|0)==12){b[(c[j>>2]|0)+16>>1]=1}d=Pw(c[n>>2]|0)|0;c[c[j>>2]>>2]=d;a[(c[j>>2]|0)+20>>0]=a[k>>0]|0;c[(c[j>>2]|0)+24>>2]=c[l>>2];c[(c[j>>2]|0)+4>>2]=-1;c[g>>2]=c[m>>2];d=c[g>>2]|0;i=o;return d|0}function zC(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+16|0;l=h+8|0;j=h;m=h+14|0;n=h+12|0;k=h+4|0;c[l>>2]=f;c[j>>2]=g;b[m>>1]=c[(c[(c[j>>2]|0)+16>>2]|0)+4>>2]&256;b[n>>1]=c[(c[(c[j>>2]|0)+12>>2]|0)+4>>2]&256;do{if((e[m>>1]|0)==(e[n>>1]|0)){if((b[m>>1]|0)!=0){n=(c[(c[j>>2]|0)+16>>2]|0)+4|0;c[n>>2]=c[n>>2]&-257;break}if((Jw(c[l>>2]|0,c[(c[j>>2]|0)+12>>2]|0)|0)!=0){n=(c[(c[j>>2]|0)+12>>2]|0)+4|0;c[n>>2]=c[n>>2]|256}}}while(0);c[k>>2]=c[(c[j>>2]|0)+16>>2];c[(c[j>>2]|0)+16>>2]=c[(c[j>>2]|0)+12>>2];c[(c[j>>2]|0)+12>>2]=c[k>>2];if((d[c[j>>2]>>0]|0)<80){i=h;return}a[c[j>>2]>>0]=((d[c[j>>2]>>0]|0)-80^2)+80;i=h;return}function AC(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=d;if((c[f>>2]|0)==0){i=e;return}a=(c[f>>2]|0)+4|0;c[a>>2]=c[a>>2]|c[(c[g>>2]|0)+4>>2]&1;b[(c[f>>2]|0)+36>>1]=b[(c[g>>2]|0)+36>>1]|0;i=e;return}function BC(e,f,g){e=e|0;f=f|0;g=g|0;var h=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;B=i;i=i+144|0;p=B+140|0;n=B+136|0;q=B+132|0;x=B+128|0;v=B+124|0;s=B+120|0;r=B+116|0;l=B+112|0;y=B+108|0;z=B+104|0;w=B+100|0;O=B+96|0;h=B+24|0;J=B;I=B+92|0;L=B+88|0;M=B+32|0;K=B+44|0;N=B+8|0;P=B+16|0;Q=B+36|0;A=B+40|0;F=B+48|0;C=B+52|0;E=B+56|0;H=B+60|0;G=B+64|0;u=B+68|0;m=B+72|0;t=B+76|0;k=B+80|0;o=B+84|0;c[p>>2]=e;c[n>>2]=f;c[q>>2]=g;c[x>>2]=c[c[n>>2]>>2];c[v>>2]=c[c[x>>2]>>2];c[s>>2]=c[c[v>>2]>>2];c[r>>2]=(c[(c[n>>2]|0)+20>>2]|0)+((c[q>>2]|0)*48|0);c[l>>2]=c[c[r>>2]>>2];e=ve(c[s>>2]|0,416)|0;c[O>>2]=e;c[(c[r>>2]|0)+12>>2]=e;if((c[O>>2]|0)==0){i=B;return}e=(c[r>>2]|0)+20|0;a[e>>0]=d[e>>0]|16;c[z>>2]=c[O>>2];vB(c[z>>2]|0,c[x>>2]|0);wB(c[z>>2]|0,c[l>>2]|0,71);yB(c[p>>2]|0,c[z>>2]|0);if((a[(c[s>>2]|0)+64>>0]|0)!=0){i=B;return}e=J;c[e>>2]=-1;c[e+4>>2]=-1;e=h;c[e>>2]=-1;c[e+4>>2]=-1;c[y>>2]=(c[(c[z>>2]|0)+12>>2]|0)-1;c[w>>2]=c[(c[z>>2]|0)+20>>2];while(1){if((c[y>>2]|0)<0){break}e=J;if(!((c[e>>2]|0)!=0|(c[e+4>>2]|0)!=0)){break}do{if((b[(c[w>>2]|0)+18>>1]&255|0)==0){e=h;c[e>>2]=0;c[e+4>>2]=0;c[I>>2]=$e(c[s>>2]|0,408)|0;if((c[I>>2]|0)!=0){e=N;c[e>>2]=0;c[e+4>>2]=0;c[(c[w>>2]|0)+12>>2]=c[I>>2];e=(c[w>>2]|0)+20|0;a[e>>0]=d[e>>0]|32;b[(c[w>>2]|0)+18>>1]=512;c[L>>2]=c[I>>2];vB(c[L>>2]|0,c[c[n>>2]>>2]|0);wB(c[L>>2]|0,c[c[w>>2]>>2]|0,72);yB(c[p>>2]|0,c[L>>2]|0);c[(c[L>>2]|0)+4>>2]=c[n>>2];a:do{if((a[(c[s>>2]|0)+64>>0]|0)==0){c[K>>2]=0;c[M>>2]=c[(c[L>>2]|0)+20>>2];while(1){if((c[K>>2]|0)>=(c[(c[L>>2]|0)+12>>2]|0)){break a}if((wC(d[c[c[M>>2]>>2]>>0]|0)|0)!=0){g=EB((c[x>>2]|0)+68|0,c[(c[M>>2]|0)+8>>2]|0)|0;R=N;f=c[R+4>>2]|D;e=N;c[e>>2]=c[R>>2]|g;c[e+4>>2]=f}c[K>>2]=(c[K>>2]|0)+1;c[M>>2]=(c[M>>2]|0)+48}}}while(0);f=N;g=J;e=c[g+4>>2]&c[f+4>>2];R=J;c[R>>2]=c[g>>2]&c[f>>2];c[R+4>>2]=e}}else{if((a[(c[w>>2]|0)+20>>0]&8|0)==0){e=EB((c[x>>2]|0)+68|0,c[(c[w>>2]|0)+8>>2]|0)|0;R=P;c[R>>2]=e;c[R+4>>2]=D;if((a[(c[w>>2]|0)+20>>0]&2|0)!=0){c[Q>>2]=(c[(c[z>>2]|0)+20>>2]|0)+((c[(c[w>>2]|0)+4>>2]|0)*48|0);f=EB((c[x>>2]|0)+68|0,c[(c[Q>>2]|0)+8>>2]|0)|0;g=P;e=c[g+4>>2]|D;R=P;c[R>>2]=c[g>>2]|f;c[R+4>>2]=e}f=P;g=J;e=c[g+4>>2]&c[f+4>>2];R=J;c[R>>2]=c[g>>2]&c[f>>2];c[R+4>>2]=e;if((b[(c[w>>2]|0)+18>>1]&2|0)==0){R=h;c[R>>2]=0;c[R+4>>2]=0;break}else{f=P;g=h;e=c[g+4>>2]&c[f+4>>2];R=h;c[R>>2]=c[g>>2]&c[f>>2];c[R+4>>2]=e;break}}}}while(0);c[y>>2]=(c[y>>2]|0)+ -1;c[w>>2]=(c[w>>2]|0)+48}f=J;e=c[f+4>>2]|0;R=(c[O>>2]|0)+408|0;c[R>>2]=c[f>>2];c[R+4>>2]=e;R=J;b[(c[r>>2]|0)+18>>1]=(c[R>>2]|0)==0&(c[R+4>>2]|0)==0?0:256;R=h;if(!((c[R>>2]|0)!=0|(c[R+4>>2]|0)!=0)){i=B;return}c[A>>2]=0;c[F>>2]=-1;c[C>>2]=-1;c[E>>2]=0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=2){break}if(!((c[A>>2]|0)!=0^1)){break}c[w>>2]=c[(c[z>>2]|0)+20>>2];c[y>>2]=(c[(c[z>>2]|0)+12>>2]|0)-1;while(1){if((c[y>>2]|0)<0){break}R=(c[w>>2]|0)+20|0;a[R>>0]=d[R>>0]&-65;if((c[(c[w>>2]|0)+8>>2]|0)!=(c[C>>2]|0)){R=h;f=c[R>>2]|0;R=c[R+4>>2]|0;e=EB((c[x>>2]|0)+68|0,c[(c[w>>2]|0)+8>>2]|0)|0;if(!((f&e|0)==0&(R&D|0)==0)){j=30;break}}c[y>>2]=(c[y>>2]|0)+ -1;c[w>>2]=(c[w>>2]|0)+48}if((j|0)==30){j=0;c[F>>2]=c[(c[w>>2]|0)+12>>2];c[C>>2]=c[(c[w>>2]|0)+8>>2]}if((c[y>>2]|0)<0){break}c[A>>2]=1;while(1){if((c[y>>2]|0)<0){break}if((c[A>>2]|0)==0){break}I=c[w>>2]|0;do{if((c[(c[w>>2]|0)+8>>2]|0)!=(c[C>>2]|0)){R=I+20|0;a[R>>0]=d[R>>0]&-65}else{if((c[I+12>>2]|0)!=(c[F>>2]|0)){c[A>>2]=0;break}c[G>>2]=(Iw(c[(c[c[w>>2]>>2]|0)+16>>2]|0)|0)<<24>>24;c[H>>2]=(Iw(c[(c[c[w>>2]>>2]|0)+12>>2]|0)|0)<<24>>24;if((c[G>>2]|0)!=0){if((c[G>>2]|0)!=(c[H>>2]|0)){c[A>>2]=0;break}}R=(c[w>>2]|0)+20|0;a[R>>0]=d[R>>0]|64}}while(0);c[y>>2]=(c[y>>2]|0)+ -1;c[w>>2]=(c[w>>2]|0)+48}c[E>>2]=(c[E>>2]|0)+1}if((c[A>>2]|0)==0){i=B;return}c[m>>2]=0;c[t>>2]=0;c[y>>2]=(c[(c[z>>2]|0)+12>>2]|0)-1;c[w>>2]=c[(c[z>>2]|0)+20>>2];while(1){if((c[y>>2]|0)<0){break}if((a[(c[w>>2]|0)+20>>0]&64|0)!=0){c[u>>2]=hx(c[s>>2]|0,c[(c[c[w>>2]>>2]|0)+16>>2]|0,0)|0;c[m>>2]=Pu(c[c[x>>2]>>2]|0,c[m>>2]|0,c[u>>2]|0)|0;c[t>>2]=c[(c[c[w>>2]>>2]|0)+12>>2]}c[y>>2]=(c[y>>2]|0)+ -1;c[w>>2]=(c[w>>2]|0)+48}c[u>>2]=hx(c[s>>2]|0,c[t>>2]|0,0)|0;c[k>>2]=Bu(c[v>>2]|0,75,c[u>>2]|0,0,0)|0;if((c[k>>2]|0)!=0){AC(c[k>>2]|0,c[l>>2]|0);c[(c[k>>2]|0)+20>>2]=c[m>>2];c[o>>2]=yC(c[n>>2]|0,c[k>>2]|0,3)|0;vC(c[p>>2]|0,c[n>>2]|0,c[o>>2]|0);c[r>>2]=(c[(c[n>>2]|0)+20>>2]|0)+((c[q>>2]|0)*48|0);c[(c[(c[n>>2]|0)+20>>2]|0)+((c[o>>2]|0)*48|0)+4>>2]=c[q>>2];a[(c[r>>2]|0)+21>>0]=1}else{cu(c[s>>2]|0,c[m>>2]|0)}b[(c[r>>2]|0)+18>>1]=2048;i=B;return}function CC(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;u=i;i=i+96|0;s=u+60|0;w=u+48|0;E=u+52|0;n=u+56|0;q=u+64|0;F=u+68|0;k=u+72|0;t=u+76|0;D=u+44|0;C=u+40|0;z=u+36|0;p=u+12|0;y=u+80|0;r=u;v=u+4|0;o=u+8|0;B=u+16|0;A=u+20|0;m=u+24|0;l=u+28|0;x=u+32|0;c[w>>2]=e;c[E>>2]=f;c[n>>2]=g;c[q>>2]=h;c[F>>2]=j;c[k>>2]=0;c[r>>2]=c[c[w>>2]>>2];c[v>>2]=0;if((EC(c[r>>2]|0,c[E>>2]|0,c[F>>2]|0,y)|0)==0){c[s>>2]=0;F=c[s>>2]|0;i=u;return F|0}c[C>>2]=c[(c[E>>2]|0)+20>>2];c[D>>2]=c[(c[(c[C>>2]|0)+4>>2]|0)+20>>2];if((d[c[D>>2]>>0]|0)==154){if(((Iw(c[D>>2]|0)|0)<<24>>24|0)==97){if((a[(c[(c[D>>2]|0)+44>>2]|0)+44>>0]&16|0)==0){c[t>>2]=Pw(c[c[(c[C>>2]|0)+4>>2]>>2]|0)|0;c[o>>2]=d[c[t>>2]>>0]|0;if((c[o>>2]|0)==135){c[B>>2]=c[(c[w>>2]|0)+476>>2];c[A>>2]=b[(c[t>>2]|0)+32>>1]|0;c[v>>2]=FC(c[B>>2]|0,c[A>>2]|0,98)|0;if((c[v>>2]|0)!=0){if((Sd(c[v>>2]|0)|0)==3){c[k>>2]=Jd(c[v>>2]|0)|0}}GC(c[(c[w>>2]|0)+8>>2]|0,c[A>>2]|0)}else{if((c[o>>2]|0)==97){c[k>>2]=c[(c[t>>2]|0)+8>>2]}}do{if((c[k>>2]|0)!=0){c[p>>2]=0;while(1){F=a[(c[k>>2]|0)+(c[p>>2]|0)>>0]|0;c[z>>2]=F;if((F|0)!=0){if((c[z>>2]|0)!=(a[y>>0]|0)){if((c[z>>2]|0)!=(a[y+1>>0]|0)){B=(c[z>>2]|0)!=(a[y+2>>0]|0)}else{B=0}}else{B=0}}else{B=0}A=c[p>>2]|0;if(!B){break}c[p>>2]=A+1}if((A|0)!=0){if(255!=(d[(c[k>>2]|0)+((c[p>>2]|0)-1)>>0]|0)){if((c[z>>2]|0)==(a[y>>0]|0)){y=(a[(c[k>>2]|0)+((c[p>>2]|0)+1)>>0]|0)==0}else{y=0}c[c[q>>2]>>2]=y&1;c[m>>2]=Su(c[r>>2]|0,97,c[k>>2]|0)|0;if((c[m>>2]|0)!=0){a[(c[(c[m>>2]|0)+8>>2]|0)+(c[p>>2]|0)>>0]=0}c[c[n>>2]>>2]=c[m>>2];if((c[o>>2]|0)!=135){break}c[l>>2]=c[(c[w>>2]|0)+8>>2];GC(c[l>>2]|0,b[(c[t>>2]|0)+32>>1]|0);if((c[c[q>>2]>>2]|0)==0){break}if((a[(c[(c[t>>2]|0)+8>>2]|0)+1>>0]|0)==0){break}c[x>>2]=Wv(c[w>>2]|0)|0;wz(c[w>>2]|0,c[t>>2]|0,c[x>>2]|0)|0;F=c[l>>2]|0;mf(F,(sy(c[l>>2]|0)|0)-1|0,0);Xv(c[w>>2]|0,c[x>>2]|0);break}}c[k>>2]=0}}while(0);Rf(c[v>>2]|0);c[s>>2]=(c[k>>2]|0)!=0&1;F=c[s>>2]|0;i=u;return F|0}}}c[s>>2]=0;F=c[s>>2]|0;i=u;return F|0}function DC(a){a=a|0;var b=0,e=0,f=0,g=0;b=i;i=i+16|0;e=b+8|0;g=b;f=b+4|0;c[g>>2]=a;do{if((d[c[g>>2]>>0]|0|0)!=153){c[e>>2]=0}else{if((Dc(c[(c[g>>2]|0)+8>>2]|0,27976)|0)!=0){c[e>>2]=0;break}c[f>>2]=c[(c[g>>2]|0)+20>>2];if((c[c[f>>2]>>2]|0)!=2){c[e>>2]=0;break}if((d[c[(c[(c[f>>2]|0)+4>>2]|0)+20>>2]>>0]|0|0)!=154){c[e>>2]=0;break}else{c[e>>2]=1;break}}}while(0);i=b;return c[e>>2]|0}function EC(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;m=j+20|0;o=j;p=j+4|0;l=j+8|0;n=j+12|0;k=j+16|0;c[o>>2]=e;c[p>>2]=f;c[l>>2]=g;c[n>>2]=h;if((d[c[p>>2]>>0]|0|0)==153){if((c[(c[p>>2]|0)+20>>2]|0)!=0){if((c[c[(c[p>>2]|0)+20>>2]>>2]|0)==2){f=c[o>>2]|0;e=c[(c[p>>2]|0)+8>>2]|0;c[k>>2]=rg(f,e,Ub(c[(c[p>>2]|0)+8>>2]|0)|0,2,1,0)|0;if((c[k>>2]|0)!=0){if((b[(c[k>>2]|0)+2>>1]&4|0)!=0){e=c[n>>2]|0;f=c[(c[k>>2]|0)+4>>2]|0;a[e+0>>0]=a[f+0>>0]|0;a[e+1>>0]=a[f+1>>0]|0;a[e+2>>0]=a[f+2>>0]|0;c[c[l>>2]>>2]=(b[(c[k>>2]|0)+2>>1]&8|0)==0&1;c[m>>2]=1;e=c[m>>2]|0;i=j;return e|0}}c[m>>2]=0;e=c[m>>2]|0;i=j;return e|0}}}c[m>>2]=0;e=c[m>>2]|0;i=j;return e|0}function FC(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+32|0;h=j+16|0;m=j;n=j+4|0;l=j+20|0;k=j+12|0;g=j+8|0;c[m>>2]=d;c[n>>2]=e;a[l>>0]=f;if((c[m>>2]|0)!=0){c[k>>2]=(c[(c[m>>2]|0)+60>>2]|0)+(((c[n>>2]|0)-1|0)*40|0);if(0==(b[(c[k>>2]|0)+28>>1]&1|0)){c[g>>2]=Pf(c[c[m>>2]>>2]|0)|0;if((c[g>>2]|0)!=0){ee(c[g>>2]|0,c[k>>2]|0)|0;mw(c[g>>2]|0,a[l>>0]|0,1)}c[h>>2]=c[g>>2];d=c[h>>2]|0;i=j;return d|0}}c[h>>2]=0;d=c[h>>2]|0;i=j;return d|0}function GC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)>32){c[(c[e>>2]|0)+188>>2]=-1;i=d;return}else{a=(c[e>>2]|0)+188|0;c[a>>2]=c[a>>2]|1<<(c[f>>2]|0)-1;i=d;return}}function HC(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l;k=l+24|0;h=l+8|0;m=l+12|0;g=l+16|0;j=l+20|0;c[k>>2]=a;c[h>>2]=d;c[m>>2]=e;e=c[c[k>>2]>>2]|0;d=c[c[m>>2]>>2]|0;if((b[(c[m>>2]|0)+36>>1]|0)>=0){m=c[(c[(c[m>>2]|0)+4>>2]|0)+((b[(c[m>>2]|0)+36>>1]|0)*24|0)>>2]|0;c[f>>2]=d;c[f+4>>2]=m;c[g>>2]=cf(e,23968,f)|0;c[j>>2]=1555;m=c[k>>2]|0;e=c[j>>2]|0;d=c[h>>2]|0;a=c[g>>2]|0;_y(m,e,d,a,-1,2);i=l;return}else{c[f>>2]=d;c[g>>2]=cf(e,30888,f)|0;c[j>>2]=2579;m=c[k>>2]|0;e=c[j>>2]|0;d=c[h>>2]|0;a=c[g>>2]|0;_y(m,e,d,a,-1,2);i=l;return}}function IC(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+20|0;n=f;j=f+4|0;l=f+8|0;m=f+12|0;k=f+16|0;c[n>>2]=a;c[j>>2]=b;c[l>>2]=d;c[m>>2]=e;a:do{if((c[(c[c[n>>2]>>2]|0)+24>>2]&524288|0)!=0){e=c[j>>2]|0;if((c[l>>2]|0)==0){if((zw(e)|0)!=0){h=1}else{h=(c[(c[j>>2]|0)+16>>2]|0)!=0}c[g>>2]=h&1;n=c[g>>2]|0;i=f;return n|0}c[k>>2]=c[e+16>>2];while(1){e=c[j>>2]|0;if((c[k>>2]|0)==0){break}if((fB(e,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)!=0){h=9;break}c[k>>2]=c[(c[k>>2]|0)+4>>2]}if((h|0)==9){c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}c[k>>2]=zw(e)|0;while(1){if((c[k>>2]|0)==0){break a}if((hB(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)!=0){break}c[k>>2]=c[(c[k>>2]|0)+12>>2]}c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}}while(0);c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}function JC(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;b=c[f>>2]|0;if((c[(c[f>>2]|0)+408>>2]|0)!=0){b=c[b+408>>2]|0}c[e>>2]=b;a[(c[e>>2]|0)+20>>0]=1;i=d;return}function KC(e,f,g,h,j,k,l,m,n,o){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;x=i;i=i+64|0;D=x+24|0;r=x+32|0;t=x+28|0;y=x+44|0;z=x+40|0;C=x+36|0;p=x+48|0;A=x+53|0;u=x+51|0;H=x+52|0;w=x+16|0;s=x+12|0;v=x+8|0;B=x+50|0;F=x+4|0;G=x;E=x+20|0;c[D>>2]=e;c[r>>2]=f;c[t>>2]=g;c[y>>2]=h;c[z>>2]=j;c[C>>2]=k;b[p>>1]=l;a[A>>0]=m;a[u>>0]=n;a[H>>0]=o;c[w>>2]=c[(c[D>>2]|0)+8>>2];c[s>>2]=0;c[v>>2]=cz(c[w>>2]|0)|0;a[B>>0]=(a[(c[r>>2]|0)+44>>0]&32|0)==0?67:65;if((a[H>>0]|0)==0){ff(c[w>>2]|0,d[B>>0]|0,c[y>>2]|0,c[v>>2]|0,c[C>>2]|0,b[p>>1]|0)|0}if((IC(c[D>>2]|0,c[r>>2]|0,0,0)|0)!=0){q=5}else{if((c[t>>2]|0)!=0){q=5}}if((q|0)==5){c[F>>2]=MC(c[D>>2]|0,c[t>>2]|0,0,0,3,c[r>>2]|0,d[u>>0]|0)|0;H=NC(c[D>>2]|0,c[r>>2]|0)|0;c[F>>2]=c[F>>2]|H;c[s>>2]=(c[(c[D>>2]|0)+72>>2]|0)+1;H=(c[D>>2]|0)+72|0;c[H>>2]=(c[H>>2]|0)+(1+(b[(c[r>>2]|0)+38>>1]|0));Qv(c[w>>2]|0,33,c[C>>2]|0,c[s>>2]|0)|0;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(b[(c[r>>2]|0)+38>>1]|0)){break}if((c[F>>2]|0)==-1){q=10}else{if((c[G>>2]|0)<=31){if((c[F>>2]&1<>2]|0)!=0){q=10}}}if((q|0)==10){q=0;gz(c[w>>2]|0,c[r>>2]|0,c[y>>2]|0,c[G>>2]|0,(c[s>>2]|0)+(c[G>>2]|0)+1|0)}c[G>>2]=(c[G>>2]|0)+1}c[E>>2]=sy(c[w>>2]|0)|0;ZA(c[D>>2]|0,c[t>>2]|0,109,0,1,c[r>>2]|0,c[s>>2]|0,d[u>>0]|0,c[v>>2]|0);H=c[E>>2]|0;if((H|0)<(sy(c[w>>2]|0)|0)){ff(c[w>>2]|0,d[B>>0]|0,c[y>>2]|0,c[v>>2]|0,c[C>>2]|0,b[p>>1]|0)|0}cB(c[D>>2]|0,c[r>>2]|0,c[s>>2]|0,0,0,0)}if((c[(c[r>>2]|0)+12>>2]|0)!=0){g=c[D>>2]|0;h=c[r>>2]|0;j=c[s>>2]|0;OC(g,h,0,j,0,0);j=c[D>>2]|0;h=c[t>>2]|0;g=c[r>>2]|0;f=c[s>>2]|0;H=a[u>>0]|0;H=H&255;e=c[v>>2]|0;ZA(j,h,109,0,2,g,f,H,e);e=c[w>>2]|0;H=c[v>>2]|0;$y(e,H);i=x;return}LC(c[D>>2]|0,c[r>>2]|0,c[y>>2]|0,c[z>>2]|0,0);Qv(c[w>>2]|0,74,c[y>>2]|0,(d[A>>0]|0)!=0?1:0)|0;if((a[A>>0]|0)==0){g=c[D>>2]|0;h=c[r>>2]|0;j=c[s>>2]|0;OC(g,h,0,j,0,0);j=c[D>>2]|0;h=c[t>>2]|0;g=c[r>>2]|0;f=c[s>>2]|0;H=a[u>>0]|0;H=H&255;e=c[v>>2]|0;ZA(j,h,109,0,2,g,f,H,e);e=c[w>>2]|0;H=c[v>>2]|0;$y(e,H);i=x;return}nf(c[w>>2]|0,-1,c[c[r>>2]>>2]|0,0);g=c[D>>2]|0;h=c[r>>2]|0;j=c[s>>2]|0;OC(g,h,0,j,0,0);j=c[D>>2]|0;h=c[t>>2]|0;g=c[r>>2]|0;f=c[s>>2]|0;H=a[u>>0]|0;H=H&255;e=c[v>>2]|0;ZA(j,h,109,0,2,g,f,H,e);e=c[w>>2]|0;H=c[v>>2]|0;$y(e,H);i=x;return}function LC(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;v=i;i=i+48|0;s=v+44|0;x=v+40|0;k=v+36|0;q=v+32|0;m=v+28|0;n=v+24|0;r=v+20|0;t=v+12|0;o=v+8|0;u=v+4|0;p=v;w=v+16|0;c[s>>2]=e;c[x>>2]=f;c[k>>2]=g;c[q>>2]=h;c[m>>2]=j;c[r>>2]=-1;c[u>>2]=0;c[p>>2]=c[(c[s>>2]|0)+8>>2];if((a[(c[x>>2]|0)+44>>0]&32|0)==0){j=0}else{j=Dy(c[x>>2]|0)|0}c[w>>2]=j;c[n>>2]=0;c[o>>2]=c[(c[x>>2]|0)+8>>2];while(1){if((c[o>>2]|0)==0){break}if((c[m>>2]|0)!=0){if((c[(c[m>>2]|0)+(c[n>>2]<<2)>>2]|0)!=0){l=7}}else{l=7}if((l|0)==7){l=0;if((c[o>>2]|0)!=(c[w>>2]|0)){c[r>>2]=Wy(c[s>>2]|0,c[o>>2]|0,c[k>>2]|0,0,1,t,c[u>>2]|0,c[r>>2]|0)|0;x=c[o>>2]|0;if(((d[(c[o>>2]|0)+55>>0]|0)>>>3&1|0)!=0){x=b[x+50>>1]|0}else{x=b[x+52>>1]|0}Tv(c[p>>2]|0,108,(c[q>>2]|0)+(c[n>>2]|0)|0,c[r>>2]|0,x&65535)|0;Xy(c[s>>2]|0,c[t>>2]|0);c[u>>2]=c[o>>2]}}c[n>>2]=(c[n>>2]|0)+1;c[o>>2]=c[(c[o>>2]|0)+20>>2]}i=v;return}function MC(a,b,e,f,g,h,j){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;s=i;i=i+48|0;o=s+40|0;v=s+36|0;k=s+32|0;n=s+28|0;t=s+24|0;q=s+20|0;r=s+12|0;u=s+8|0;l=s+4|0;p=s;m=s+16|0;c[o>>2]=a;c[v>>2]=b;c[k>>2]=e;c[n>>2]=f;c[t>>2]=g;c[q>>2]=h;c[r>>2]=j;c[u>>2]=(c[k>>2]|0)!=0?110:109;c[l>>2]=0;c[p>>2]=c[v>>2];while(1){if((c[p>>2]|0)==0){break}if((d[(c[p>>2]|0)+8>>0]|0|0)==(c[u>>2]|0)){if((c[t>>2]&(d[(c[p>>2]|0)+9>>0]|0)|0)!=0){if((GD(c[(c[p>>2]|0)+16>>2]|0,c[k>>2]|0)|0)!=0){c[m>>2]=RC(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;if((c[m>>2]|0)!=0){c[l>>2]=c[l>>2]|c[(c[m>>2]|0)+16+(c[n>>2]<<2)>>2]}}}}c[p>>2]=c[(c[p>>2]|0)+32>>2]}i=s;return c[l>>2]|0}function NC(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;j=k+20|0;f=k;g=k+4|0;l=k+8|0;m=k+12|0;h=k+16|0;c[j>>2]=a;c[f>>2]=d;c[g>>2]=0;if((c[(c[c[j>>2]>>2]|0)+24>>2]&524288|0)==0){a=c[g>>2]|0;i=k;return a|0}c[l>>2]=c[(c[f>>2]|0)+16>>2];while(1){if((c[l>>2]|0)==0){break}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[l>>2]|0)+20>>2]|0)){break}if((c[(c[l>>2]|0)+36+(c[m>>2]<<3)>>2]|0)>31){d=-1}else{d=1<>2]|0)+36+(c[m>>2]<<3)>>2]}c[g>>2]=c[g>>2]|d;c[m>>2]=(c[m>>2]|0)+1}c[l>>2]=c[(c[l>>2]|0)+4>>2]}c[l>>2]=zw(c[f>>2]|0)|0;while(1){if((c[l>>2]|0)==0){break}c[h>>2]=0;FA(c[j>>2]|0,c[f>>2]|0,c[l>>2]|0,h,0)|0;a:do{if((c[h>>2]|0)!=0){c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[(c[h>>2]|0)+50>>1]|0)){break a}if((b[(c[(c[h>>2]|0)+4>>2]|0)+(c[m>>2]<<1)>>1]|0)>31){d=-1}else{d=1<>2]|0)+4>>2]|0)+(c[m>>2]<<1)>>1]}c[g>>2]=c[g>>2]|d;c[m>>2]=(c[m>>2]|0)+1}}}while(0);c[l>>2]=c[(c[l>>2]|0)+12>>2]}a=c[g>>2]|0;i=k;return a|0}function OC(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+32|0;o=q+28|0;k=q;r=q+4|0;h=q+8|0;m=q+12|0;n=q+16|0;l=q+20|0;p=q+24|0;c[o>>2]=a;c[k>>2]=b;c[r>>2]=d;c[h>>2]=e;c[m>>2]=f;c[n>>2]=g;if((c[(c[c[o>>2]>>2]|0)+24>>2]&524288|0)==0){i=q;return}c[l>>2]=zw(c[k>>2]|0)|0;while(1){if((c[l>>2]|0)==0){break}if((c[m>>2]|0)==0){j=6}else{if((hB(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0)!=0){j=6}}if((j|0)==6){j=0;c[p>>2]=PC(c[o>>2]|0,c[k>>2]|0,c[l>>2]|0,c[r>>2]|0)|0;if((c[p>>2]|0)!=0){QC(c[o>>2]|0,c[p>>2]|0,c[k>>2]|0,c[h>>2]|0,2,0)}}c[l>>2]=c[(c[l>>2]|0)+12>>2]}i=q;return}function PC(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;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,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;l=i;i=i+160|0;p=l+120|0;v=l+108|0;q=l+112|0;j=l+116|0;r=l+124|0;D=l+128|0;C=l+132|0;n=l+136|0;m=l+140|0;B=l+144|0;x=l+104|0;w=l+100|0;L=l+96|0;E=l+92|0;o=l+88|0;y=l+84|0;H=l+32|0;u=l;M=l+4|0;t=l+8|0;F=l+16|0;s=l+24|0;K=l+40|0;G=l+48|0;J=l+56|0;I=l+60|0;N=l+64|0;O=l+68|0;A=l+72|0;z=l+80|0;c[v>>2]=e;c[q>>2]=f;c[j>>2]=g;c[r>>2]=h;c[D>>2]=c[c[v>>2]>>2];c[m>>2]=(c[r>>2]|0)!=0&1;c[C>>2]=d[(c[j>>2]|0)+25+(c[m>>2]|0)>>0]|0;c[n>>2]=c[(c[j>>2]|0)+28+(c[m>>2]<<2)>>2];if((c[C>>2]|0)!=0){if((c[n>>2]|0)==0){c[L>>2]=0;c[E>>2]=0;c[o>>2]=0;c[y>>2]=0;c[H>>2]=0;c[u>>2]=0;c[t>>2]=0;if((FA(c[v>>2]|0,c[q>>2]|0,c[j>>2]|0,L,E)|0)!=0){c[p>>2]=0;e=c[p>>2]|0;i=l;return e|0}c[M>>2]=0;while(1){if((c[M>>2]|0)>=(c[(c[j>>2]|0)+20>>2]|0)){break}c[F+0>>2]=c[30832>>2];c[F+4>>2]=c[30836>>2];c[s+0>>2]=c[30840>>2];c[s+4>>2]=c[30844>>2];if((c[E>>2]|0)!=0){h=c[(c[E>>2]|0)+(c[M>>2]<<2)>>2]|0}else{h=c[(c[j>>2]|0)+36>>2]|0}c[J>>2]=h;if((c[L>>2]|0)!=0){h=c[(c[(c[q>>2]|0)+4>>2]|0)+((b[(c[(c[L>>2]|0)+4>>2]|0)+(c[M>>2]<<1)>>1]|0)*24|0)>>2]|0}else{h=30848}c[G>>2]=h;c[K>>2]=c[(c[(c[c[j>>2]>>2]|0)+4>>2]|0)+((c[J>>2]|0)*24|0)>>2];c[G+4>>2]=Ub(c[G>>2]|0)|0;c[K+4>>2]=Ub(c[K>>2]|0)|0;f=c[v>>2]|0;g=c[v>>2]|0;e=Bu(c[v>>2]|0,27,0,0,F)|0;e=Bu(g,122,e,Bu(c[v>>2]|0,27,0,0,G)|0,0)|0;c[I>>2]=Bu(f,79,e,Bu(c[v>>2]|0,27,0,0,K)|0,0)|0;c[y>>2]=Ux(c[D>>2]|0,c[y>>2]|0,c[I>>2]|0)|0;if((c[r>>2]|0)!=0){h=c[v>>2]|0;f=c[v>>2]|0;g=Bu(c[v>>2]|0,27,0,0,F)|0;g=Bu(f,122,g,Bu(c[v>>2]|0,27,0,0,G)|0,0)|0;f=c[v>>2]|0;e=Bu(c[v>>2]|0,27,0,0,s)|0;c[I>>2]=Bu(h,73,g,Bu(f,122,e,Bu(c[v>>2]|0,27,0,0,G)|0,0)|0,0)|0;c[t>>2]=Ux(c[D>>2]|0,c[t>>2]|0,c[I>>2]|0)|0}do{if((c[C>>2]|0)!=6){if((c[C>>2]|0)==9){if((c[r>>2]|0)==0){break}}do{if((c[C>>2]|0)==9){f=c[v>>2]|0;e=Bu(c[v>>2]|0,27,0,0,s)|0;c[N>>2]=Bu(f,122,e,Bu(c[v>>2]|0,27,0,0,G)|0,0)|0}else{if((c[C>>2]|0)!=8){c[N>>2]=Bu(c[v>>2]|0,101,0,0,0)|0;break}c[O>>2]=c[(c[(c[c[j>>2]>>2]|0)+4>>2]|0)+((c[J>>2]|0)*24|0)+4>>2];if((c[O>>2]|0)!=0){c[N>>2]=hx(c[D>>2]|0,c[O>>2]|0,0)|0;break}else{c[N>>2]=Bu(c[v>>2]|0,101,0,0,0)|0;break}}}while(0);c[H>>2]=Pu(c[v>>2]|0,c[H>>2]|0,c[N>>2]|0)|0;Qu(c[v>>2]|0,c[H>>2]|0,K,0)}}while(0);c[M>>2]=(c[M>>2]|0)+1}cc(c[D>>2]|0,c[E>>2]|0);c[x>>2]=c[c[c[j>>2]>>2]>>2];c[w>>2]=Ub(c[x>>2]|0)|0;if((c[C>>2]|0)==6){c[A>>2]=c[x>>2];c[A+4>>2]=c[w>>2];c[z>>2]=Su(c[D>>2]|0,57,30856)|0;if((c[z>>2]|0)!=0){a[(c[z>>2]|0)+1>>0]=2}g=c[v>>2]|0;f=Pu(c[v>>2]|0,0,c[z>>2]|0)|0;e=Vu(c[D>>2]|0,0,A,0)|0;c[u>>2]=Ou(g,f,e,c[y>>2]|0,0,0,0,0,0,0)|0;c[y>>2]=0}a[B>>0]=a[(c[D>>2]|0)+242>>0]|0;a[(c[D>>2]|0)+242>>0]=0;c[n>>2]=ve(c[D>>2]|0,77+(c[w>>2]|0)|0)|0;if((c[n>>2]|0)!=0){e=(c[n>>2]|0)+36|0;c[(c[n>>2]|0)+28>>2]=e;c[o>>2]=e;c[(c[o>>2]|0)+12>>2]=(c[o>>2]|0)+40;c[(c[o>>2]|0)+16>>2]=c[w>>2];fL(c[(c[o>>2]|0)+12>>2]|0,c[x>>2]|0,c[w>>2]|0)|0;e=hx(c[D>>2]|0,c[y>>2]|0,1)|0;c[(c[o>>2]|0)+20>>2]=e;e=px(c[D>>2]|0,c[H>>2]|0,1)|0;c[(c[o>>2]|0)+24>>2]=e;e=Bw(c[D>>2]|0,c[u>>2]|0,1)|0;c[(c[o>>2]|0)+8>>2]=e;if((c[t>>2]|0)!=0){c[t>>2]=Bu(c[v>>2]|0,19,c[t>>2]|0,0,0)|0;e=hx(c[D>>2]|0,c[t>>2]|0,1)|0;c[(c[n>>2]|0)+12>>2]=e}}a[(c[D>>2]|0)+242>>0]=a[B>>0]|0;gu(c[D>>2]|0,c[y>>2]|0);gu(c[D>>2]|0,c[t>>2]|0);cu(c[D>>2]|0,c[H>>2]|0);du(c[D>>2]|0,c[u>>2]|0);if((d[(c[D>>2]|0)+64>>0]|0)==1){FD(c[D>>2]|0,c[n>>2]|0);c[p>>2]=0;e=c[p>>2]|0;i=l;return e|0}s=c[C>>2]|0;if((s|0)==6){a[c[o>>2]>>0]=119}else if((s|0)==9){if((c[r>>2]|0)!=0){k=39}else{a[c[o>>2]>>0]=109}}else{k=39}if((k|0)==39){a[c[o>>2]>>0]=110}c[(c[o>>2]|0)+4>>2]=c[n>>2];c[(c[n>>2]|0)+20>>2]=c[(c[q>>2]|0)+68>>2];c[(c[n>>2]|0)+24>>2]=c[(c[q>>2]|0)+68>>2];c[(c[j>>2]|0)+28+(c[m>>2]<<2)>>2]=c[n>>2];a[(c[n>>2]|0)+8>>0]=(c[r>>2]|0)!=0?110:109}}c[p>>2]=c[n>>2];e=c[p>>2]|0;i=l;return e|0}function QC(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=i;i=i+48|0;n=o+32|0;p=o+28|0;r=o+24|0;l=o+20|0;q=o+16|0;m=o+8|0;k=o+4|0;h=o;j=o+12|0;c[n>>2]=a;c[p>>2]=b;c[r>>2]=d;c[l>>2]=e;c[q>>2]=f;c[m>>2]=g;c[k>>2]=Ov(c[n>>2]|0)|0;c[h>>2]=RC(c[n>>2]|0,c[p>>2]|0,c[r>>2]|0,c[q>>2]|0)|0;if((c[h>>2]|0)==0){i=o;return}if((c[c[p>>2]>>2]|0)!=0){g=0==(c[(c[c[n>>2]>>2]|0)+24>>2]&262144|0)}else{g=0}c[j>>2]=g&1;b=c[k>>2]|0;a=c[l>>2]|0;q=c[m>>2]|0;d=(c[n>>2]|0)+72|0;r=(c[d>>2]|0)+1|0;c[d>>2]=r;Tv(b,128,a,q,r)|0;nf(c[k>>2]|0,-1,c[(c[h>>2]|0)+8>>2]|0,-18);gf(c[k>>2]|0,c[j>>2]&255);i=o;return}function RC(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+20|0;j=g;k=g+4|0;f=g+8|0;m=g+12|0;l=g+16|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[f>>2]=e;e=c[h>>2]|0;if((c[(c[h>>2]|0)+408>>2]|0)!=0){e=c[e+408>>2]|0}c[m>>2]=e;c[l>>2]=c[(c[m>>2]|0)+528>>2];while(1){if((c[l>>2]|0)==0){break}if((c[c[l>>2]>>2]|0)==(c[j>>2]|0)){if((c[(c[l>>2]|0)+12>>2]|0)==(c[f>>2]|0)){break}}c[l>>2]=c[(c[l>>2]|0)+4>>2]}if((c[l>>2]|0)!=0){a=c[l>>2]|0;i=g;return a|0}c[l>>2]=SC(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[f>>2]|0)|0;a=c[l>>2]|0;i=g;return a|0}function SC(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;q=i;i=i+96|0;j=q;s=q+80|0;w=q+76|0;l=q+72|0;u=q+68|0;p=q+64|0;v=q+60|0;k=q+84|0;t=q+48|0;m=q+44|0;r=q+40|0;n=q+8|0;x=q+4|0;o=q+52|0;h=q+56|0;c[w>>2]=b;c[l>>2]=e;c[u>>2]=f;c[p>>2]=g;g=c[w>>2]|0;if((c[(c[w>>2]|0)+408>>2]|0)!=0){g=c[g+408>>2]|0}c[v>>2]=g;c[k>>2]=c[c[w>>2]>>2];c[m>>2]=0;c[x>>2]=0;c[h>>2]=0;c[t>>2]=ve(c[k>>2]|0,24)|0;if((c[t>>2]|0)==0){c[s>>2]=0;b=c[s>>2]|0;i=q;return b|0}c[(c[t>>2]|0)+4>>2]=c[(c[v>>2]|0)+528>>2];c[(c[v>>2]|0)+528>>2]=c[t>>2];b=ve(c[k>>2]|0,28)|0;c[x>>2]=b;c[(c[t>>2]|0)+8>>2]=b;if((c[x>>2]|0)==0){c[s>>2]=0;b=c[s>>2]|0;i=q;return b|0}TC(c[(c[v>>2]|0)+8>>2]|0,c[x>>2]|0);c[c[t>>2]>>2]=c[l>>2];c[(c[t>>2]|0)+12>>2]=c[p>>2];c[(c[t>>2]|0)+16>>2]=-1;c[(c[t>>2]|0)+20>>2]=-1;c[o>>2]=ve(c[k>>2]|0,536)|0;if((c[o>>2]|0)==0){c[s>>2]=0;b=c[s>>2]|0;i=q;return b|0}c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[n+16>>2]=0;c[n+20>>2]=0;c[n+24>>2]=0;c[n+28>>2]=0;c[n>>2]=c[o>>2];c[c[o>>2]>>2]=c[k>>2];c[(c[o>>2]|0)+412>>2]=c[u>>2];c[(c[o>>2]|0)+408>>2]=c[v>>2];c[(c[o>>2]|0)+492>>2]=c[c[l>>2]>>2];a[(c[o>>2]|0)+436>>0]=a[(c[l>>2]|0)+8>>0]|0;c[(c[o>>2]|0)+424>>2]=c[(c[w>>2]|0)+424>>2];c[r>>2]=Ov(c[o>>2]|0)|0;if((c[r>>2]|0)!=0){e=c[r>>2]|0;b=c[k>>2]|0;c[j>>2]=c[c[l>>2]>>2];nf(e,-1,cf(b,30632,j)|0,-1);if((c[(c[l>>2]|0)+12>>2]|0)!=0){c[m>>2]=hx(c[k>>2]|0,c[(c[l>>2]|0)+12>>2]|0,0)|0;if(0==(bx(n,c[m>>2]|0)|0)){if((d[(c[k>>2]|0)+64>>0]|0|0)==0){c[h>>2]=cz(c[r>>2]|0)|0;ez(c[o>>2]|0,c[m>>2]|0,c[h>>2]|0,8)}}gu(c[k>>2]|0,c[m>>2]|0)}UC(c[o>>2]|0,c[(c[l>>2]|0)+28>>2]|0,c[p>>2]|0)|0;if((c[h>>2]|0)!=0){$y(c[r>>2]|0,c[h>>2]|0)}Yv(c[r>>2]|0,24)|0;VC(c[w>>2]|0,c[o>>2]|0);if((d[(c[k>>2]|0)+64>>0]|0|0)==0){b=WC(c[r>>2]|0,(c[x>>2]|0)+4|0,(c[v>>2]|0)+392|0)|0;c[c[x>>2]>>2]=b}c[(c[x>>2]|0)+8>>2]=c[(c[o>>2]|0)+72>>2];c[(c[x>>2]|0)+12>>2]=c[(c[o>>2]|0)+68>>2];c[(c[x>>2]|0)+16>>2]=c[(c[o>>2]|0)+80>>2];c[(c[x>>2]|0)+20>>2]=c[l>>2];c[(c[t>>2]|0)+16>>2]=c[(c[o>>2]|0)+428>>2];c[(c[t>>2]|0)+20>>2]=c[(c[o>>2]|0)+432>>2];au(c[r>>2]|0)}rf(c[o>>2]|0);cc(c[k>>2]|0,c[o>>2]|0);c[s>>2]=c[t>>2];b=c[s>>2]|0;i=q;return b|0}function TC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[f>>2]|0)+24>>2]=c[(c[e>>2]|0)+192>>2];c[(c[e>>2]|0)+192>>2]=c[f>>2];i=d;return}function UC(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;k=m+44|0;p=m;o=m+4|0;j=m+8|0;h=m+12|0;l=m+16|0;n=m+20|0;g=m+40|0;c[k>>2]=b;c[p>>2]=e;c[o>>2]=f;c[h>>2]=c[(c[k>>2]|0)+8>>2];c[l>>2]=c[c[k>>2]>>2];c[j>>2]=c[p>>2];while(1){if((c[j>>2]|0)==0){break}if((c[o>>2]|0)==10){f=a[(c[j>>2]|0)+1>>0]|0}else{f=c[o>>2]&255}a[(c[k>>2]|0)+437>>0]=f&255;f=d[c[j>>2]>>0]|0;if((f|0)==109){b=c[k>>2]|0;p=ED(c[k>>2]|0,c[j>>2]|0)|0;Yu(b,p,hx(c[l>>2]|0,c[(c[j>>2]|0)+20>>2]|0,0)|0)}else if((f|0)==108){f=c[k>>2]|0;e=ED(c[k>>2]|0,c[j>>2]|0)|0;b=Bw(c[l>>2]|0,c[(c[j>>2]|0)+8>>2]|0,0)|0;p=ey(c[l>>2]|0,c[(c[j>>2]|0)+28>>2]|0)|0;$u(f,e,b,p,d[(c[k>>2]|0)+437>>0]|0)}else if((f|0)==110){f=c[k>>2]|0;e=ED(c[k>>2]|0,c[j>>2]|0)|0;b=px(c[l>>2]|0,c[(c[j>>2]|0)+24>>2]|0,0)|0;p=hx(c[l>>2]|0,c[(c[j>>2]|0)+20>>2]|0,0)|0;_u(f,e,b,p,d[(c[k>>2]|0)+437>>0]|0)}else{c[g>>2]=Bw(c[l>>2]|0,c[(c[j>>2]|0)+8>>2]|0,0)|0;Hz(n,4,0);Mu(c[k>>2]|0,c[g>>2]|0,n)|0;du(c[l>>2]|0,c[g>>2]|0)}if((d[c[j>>2]>>0]|0|0)!=119){Yv(c[h>>2]|0,75)|0}c[j>>2]=c[(c[j>>2]|0)+32>>2]}i=m;return 0}function VC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=c[f>>2]|0;if((c[(c[e>>2]|0)+64>>2]|0)==0){c[(c[e>>2]|0)+4>>2]=c[b+4>>2];c[(c[e>>2]|0)+64>>2]=c[(c[f>>2]|0)+64>>2];i=d;return}else{cc(c[b>>2]|0,c[(c[f>>2]|0)+4>>2]|0);i=d;return}}function WC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;h=f;j=f+4|0;e=f+8|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[e>>2]=c[(c[g>>2]|0)+4>>2];XC(c[g>>2]|0,c[j>>2]|0);c[c[h>>2]>>2]=c[(c[g>>2]|0)+32>>2];c[(c[g>>2]|0)+4>>2]=0;i=f;return c[e>>2]|0}function XC(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=i;i=i+48|0;n=m+28|0;l=m+24|0;r=m+20|0;k=m+16|0;o=m+12|0;j=m+4|0;g=m;q=m+32|0;p=m+8|0;c[n>>2]=e;c[l>>2]=f;c[k>>2]=c[c[l>>2]>>2];c[j>>2]=c[(c[n>>2]|0)+24>>2];c[g>>2]=c[(c[j>>2]|0)+112>>2];e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-257|256;e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-513;c[o>>2]=c[(c[n>>2]|0)+4>>2];c[r>>2]=(c[(c[n>>2]|0)+32>>2]|0)-1;while(1){if((c[r>>2]|0)<0){break}a[q>>0]=a[c[o>>2]>>0]|0;switch(d[q>>0]|0|0){case 12:case 13:case 11:{e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-257;e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-513|512;break};case 10:case 1:{if((d[(c[o>>2]|0)+3>>0]|0|0)>(c[k>>2]|0)){c[k>>2]=d[(c[o>>2]|0)+3>>0]|0}break};case 4:{if((c[(c[o>>2]|0)+8>>2]|0)!=0){h=(c[n>>2]|0)+88|0;b[h>>1]=b[h>>1]&-257;h=8}else{h=8}break};case 15:{if((c[(c[o>>2]|0)+8>>2]|0)>(c[k>>2]|0)){c[k>>2]=c[(c[o>>2]|0)+8>>2]}break};case 14:{c[p>>2]=c[(c[o>>2]|0)+ -20+4>>2];if((c[p>>2]|0)>(c[k>>2]|0)){c[k>>2]=c[p>>2]}break};case 5:case 7:case 9:{c[(c[o>>2]|0)+16>>2]=64;a[(c[o>>2]|0)+1>>0]=-19;break};case 2:case 3:{h=8;break};case 6:case 8:{c[(c[o>>2]|0)+16>>2]=65;a[(c[o>>2]|0)+1>>0]=-19;break};default:{}}if((h|0)==8){h=0;e=(c[n>>2]|0)+88|0;b[e>>1]=b[e>>1]&-513|512}a[(c[o>>2]|0)+2>>0]=a[30648+(d[q>>0]|0)>>0]|0;if((a[(c[o>>2]|0)+2>>0]&1|0)!=0){if((c[(c[o>>2]|0)+8>>2]|0)<0){c[(c[o>>2]|0)+8>>2]=c[(c[g>>2]|0)+(-1-(c[(c[o>>2]|0)+8>>2]|0)<<2)>>2]}}c[r>>2]=(c[r>>2]|0)+ -1;c[o>>2]=(c[o>>2]|0)+20}cc(c[c[n>>2]>>2]|0,c[(c[j>>2]|0)+112>>2]|0);c[(c[j>>2]|0)+112>>2]=0;c[(c[j>>2]|0)+108>>2]=0;c[c[l>>2]>>2]=c[k>>2];i=m;return}function YC(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+32|0;l=m+20|0;h=m;n=m+4|0;k=m+8|0;p=m+12|0;o=m+16|0;c[h>>2]=f;c[n>>2]=g;if((d[(c[h>>2]|0)+81>>0]|0)!=1){f=(c[h>>2]|0)+80|0;a[f>>0]=d[f>>0]&-5;if((d[(c[h>>2]|0)+81>>0]|0)>=3){g=_C(c[h>>2]|0)|0}else{g=0}c[k>>2]=g;if((c[k>>2]|0)!=0){c[c[n>>2]>>2]=0;c[l>>2]=c[k>>2];f=c[l>>2]|0;i=m;return f|0}if(0==(d[(c[h>>2]|0)+81>>0]|0)){c[c[n>>2]>>2]=1;c[l>>2]=0;f=c[l>>2]|0;i=m;return f|0}if((c[(c[h>>2]|0)+76>>2]|0)!=0){a[(c[h>>2]|0)+81>>0]=1;f=(c[(c[h>>2]|0)+76>>2]|0)>0;c[(c[h>>2]|0)+76>>2]=0;if(f){c[c[n>>2]>>2]=0;c[l>>2]=0;f=c[l>>2]|0;i=m;return f|0}}}c[o>>2]=c[(c[h>>2]|0)+128+(b[(c[h>>2]|0)+84>>1]<<2)>>2];g=(c[h>>2]|0)+86+(b[(c[h>>2]|0)+84>>1]<<1)|0;f=(b[g>>1]|0)+1<<16>>16;b[g>>1]=f;c[p>>2]=f&65535;b[(c[h>>2]|0)+50>>1]=0;f=(c[h>>2]|0)+80|0;a[f>>0]=d[f>>0]&-7;if((c[p>>2]|0)<(e[(c[o>>2]|0)+16>>1]|0)){c[c[n>>2]>>2]=0;if((a[(c[o>>2]|0)+3>>0]|0)!=0){c[l>>2]=0;f=c[l>>2]|0;i=m;return f|0}else{c[k>>2]=DD(c[h>>2]|0)|0;c[l>>2]=c[k>>2];f=c[l>>2]|0;i=m;return f|0}}if((a[(c[o>>2]|0)+3>>0]|0)==0){f=c[h>>2]|0;c[k>>2]=$C(f,zo((c[(c[o>>2]|0)+56>>2]|0)+((d[(c[o>>2]|0)+5>>0]|0)+8)|0)|0)|0;if((c[k>>2]|0)!=0){c[c[n>>2]>>2]=0;c[l>>2]=c[k>>2];f=c[l>>2]|0;i=m;return f|0}else{c[k>>2]=DD(c[h>>2]|0)|0;c[c[n>>2]>>2]=0;c[l>>2]=c[k>>2];f=c[l>>2]|0;i=m;return f|0}}do{if((b[(c[h>>2]|0)+84>>1]|0)==0){j=17;break}bD(c[h>>2]|0);c[o>>2]=c[(c[h>>2]|0)+128+(b[(c[h>>2]|0)+84>>1]<<2)>>2]}while((e[(c[h>>2]|0)+86+(b[(c[h>>2]|0)+84>>1]<<1)>>1]|0)>=(e[(c[o>>2]|0)+16>>1]|0));if((j|0)==17){c[c[n>>2]>>2]=1;a[(c[h>>2]|0)+81>>0]=0;c[l>>2]=0;f=c[l>>2]|0;i=m;return f|0}c[c[n>>2]>>2]=0;if((a[(c[o>>2]|0)+2>>0]|0)!=0){c[k>>2]=YC(c[h>>2]|0,c[n>>2]|0)|0}else{c[k>>2]=0}c[l>>2]=c[k>>2];f=c[l>>2]|0;i=m;return f|0}function ZC(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+32|0;k=l+20|0;m=l;n=l+4|0;j=l+8|0;o=l+12|0;p=l+16|0;c[m>>2]=f;c[n>>2]=g;f=(c[m>>2]|0)+80|0;a[f>>0]=d[f>>0]&-13;if((d[(c[m>>2]|0)+81>>0]|0)!=1){if((d[(c[m>>2]|0)+81>>0]|0)>=3){c[j>>2]=_C(c[m>>2]|0)|0;if((c[j>>2]|0)!=0){c[c[n>>2]>>2]=0;c[k>>2]=c[j>>2];f=c[k>>2]|0;i=l;return f|0}}if(0==(d[(c[m>>2]|0)+81>>0]|0)){c[c[n>>2]>>2]=1;c[k>>2]=0;f=c[k>>2]|0;i=l;return f|0}if((c[(c[m>>2]|0)+76>>2]|0)!=0){a[(c[m>>2]|0)+81>>0]=1;f=(c[(c[m>>2]|0)+76>>2]|0)<0;c[(c[m>>2]|0)+76>>2]=0;if(f){c[c[n>>2]>>2]=0;c[k>>2]=0;f=c[k>>2]|0;i=l;return f|0}}}c[o>>2]=c[(c[m>>2]|0)+128+(b[(c[m>>2]|0)+84>>1]<<2)>>2];do{if((a[(c[o>>2]|0)+3>>0]|0)!=0){while(1){p=c[m>>2]|0;if((e[(c[m>>2]|0)+86+(b[(c[m>>2]|0)+84>>1]<<1)>>1]|0)!=0){break}g=c[m>>2]|0;if((b[p+84>>1]|0)==0){h=16;break}bD(g)}if((h|0)==16){a[g+81>>0]=0;c[c[n>>2]>>2]=1;c[k>>2]=0;f=c[k>>2]|0;i=l;return f|0}b[p+50>>1]=0;f=(c[m>>2]|0)+80|0;a[f>>0]=d[f>>0]&-7;f=(c[m>>2]|0)+86+(b[(c[m>>2]|0)+84>>1]<<1)|0;b[f>>1]=(b[f>>1]|0)+ -1<<16>>16;c[o>>2]=c[(c[m>>2]|0)+128+(b[(c[m>>2]|0)+84>>1]<<2)>>2];if((d[(c[o>>2]|0)+2>>0]|0)!=0){if((a[(c[o>>2]|0)+3>>0]|0)==0){c[j>>2]=ZC(c[m>>2]|0,c[n>>2]|0)|0;break}}c[j>>2]=0}else{c[p>>2]=e[(c[m>>2]|0)+86+(b[(c[m>>2]|0)+84>>1]<<1)>>1]|0;f=c[m>>2]|0;c[j>>2]=$C(f,zo((c[(c[o>>2]|0)+56>>2]|0)+(e[(c[o>>2]|0)+18>>1]&(d[(c[(c[o>>2]|0)+64>>2]|0)+(c[p>>2]<<1)>>0]<<8|d[(c[(c[o>>2]|0)+64>>2]|0)+(c[p>>2]<<1)+1>>0]))|0)|0)|0;if((c[j>>2]|0)==0){c[j>>2]=aD(c[m>>2]|0)|0;break}c[c[n>>2]>>2]=0;c[k>>2]=c[j>>2];f=c[k>>2]|0;i=l;return f|0}}while(0);c[c[n>>2]>>2]=0;c[k>>2]=c[j>>2];f=c[k>>2]|0;i=l;return f|0}function _C(b){b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[g>>2]=b;b=c[g>>2]|0;if((d[(c[g>>2]|0)+81>>0]|0|0)==4){c[f>>2]=c[b+76>>2];b=c[f>>2]|0;i=e;return b|0}a[b+81>>0]=0;b=(c[g>>2]|0)+56|0;c[h>>2]=gD(c[g>>2]|0,c[(c[g>>2]|0)+64>>2]|0,c[b>>2]|0,c[b+4>>2]|0,0,(c[g>>2]|0)+76|0)|0;if((c[h>>2]|0)==0){oc(c[(c[g>>2]|0)+64>>2]|0);c[(c[g>>2]|0)+64>>2]=0;if((c[(c[g>>2]|0)+76>>2]|0)!=0){if((d[(c[g>>2]|0)+81>>0]|0|0)==1){a[(c[g>>2]|0)+81>>0]=2}}}c[f>>2]=c[h>>2];b=c[f>>2]|0;i=e;return b|0}function $C(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;j=h+24|0;m=h;p=h+4|0;k=h+8|0;n=h+12|0;l=h+16|0;o=h+20|0;c[m>>2]=f;c[p>>2]=g;c[n>>2]=b[(c[m>>2]|0)+84>>1]|0;c[o>>2]=c[(c[m>>2]|0)+4>>2];if((b[(c[m>>2]|0)+84>>1]|0)>=19){c[j>>2]=dq(55422)|0;f=c[j>>2]|0;i=h;return f|0}c[k>>2]=cD(c[o>>2]|0,c[p>>2]|0,l,(a[(c[m>>2]|0)+80>>0]&1|0)==0?2:0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];f=c[j>>2]|0;i=h;return f|0}c[(c[m>>2]|0)+128+((c[n>>2]|0)+1<<2)>>2]=c[l>>2];b[(c[m>>2]|0)+86+((c[n>>2]|0)+1<<1)>>1]=0;f=(c[m>>2]|0)+84|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;b[(c[m>>2]|0)+50>>1]=0;f=(c[m>>2]|0)+80|0;a[f>>0]=d[f>>0]&-7;if((e[(c[l>>2]|0)+16>>1]|0)>=1){if((d[(c[l>>2]|0)+2>>0]|0)==(d[(c[(c[m>>2]|0)+128+(c[n>>2]<<2)>>2]|0)+2>>0]|0)){c[j>>2]=0;f=c[j>>2]|0;i=h;return f|0}}c[j>>2]=dq(55434)|0;f=c[j>>2]|0;i=h;return f|0}function aD(f){f=f|0;var g=0,h=0,j=0,k=0,l=0;h=i;i=i+16|0;k=h+12|0;l=h;g=h+4|0;j=h+8|0;c[k>>2]=f;c[g>>2]=0;c[j>>2]=0;while(1){if((c[g>>2]|0)!=0){break}f=c[(c[k>>2]|0)+128+(b[(c[k>>2]|0)+84>>1]<<2)>>2]|0;c[j>>2]=f;if(!((a[f+3>>0]|0)!=0^1)){break}c[l>>2]=zo((c[(c[j>>2]|0)+56>>2]|0)+((d[(c[j>>2]|0)+5>>0]|0)+8)|0)|0;b[(c[k>>2]|0)+86+(b[(c[k>>2]|0)+84>>1]<<1)>>1]=b[(c[j>>2]|0)+16>>1]|0;c[g>>2]=$C(c[k>>2]|0,c[l>>2]|0)|0}if((c[g>>2]|0)!=0){l=c[g>>2]|0;i=h;return l|0}b[(c[k>>2]|0)+86+(b[(c[k>>2]|0)+84>>1]<<1)>>1]=(e[(c[j>>2]|0)+16>>1]|0)-1;b[(c[k>>2]|0)+50>>1]=0;l=(c[k>>2]|0)+80|0;a[l>>0]=d[l>>0]&-3;l=c[g>>2]|0;i=h;return l|0}function bD(e){e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f;c[g>>2]=e;Gr(c[(c[g>>2]|0)+128+(b[(c[g>>2]|0)+84>>1]<<2)>>2]|0);e=(c[g>>2]|0)+84|0;b[e>>1]=(b[e>>1]|0)+ -1<<16>>16;b[(c[g>>2]|0)+50>>1]=0;e=(c[g>>2]|0)+80|0;a[e>>0]=d[e>>0]&-7;i=f;return}function cD(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;m=h+16|0;l=h;j=h+4|0;k=h+8|0;g=h+12|0;c[m>>2]=a;c[l>>2]=b;c[j>>2]=e;c[k>>2]=f;a=c[l>>2]|0;if(a>>>0>(dD(c[m>>2]|0)|0)>>>0){c[g>>2]=dq(52811)|0}else{c[g>>2]=eD(c[m>>2]|0,c[l>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if((c[g>>2]|0)==0){if((d[c[c[j>>2]>>2]>>0]|0|0)==0){c[g>>2]=Lq(c[c[j>>2]>>2]|0)|0;if((c[g>>2]|0)!=0){Gr(c[c[j>>2]>>2]|0)}}}}i=h;return c[g>>2]|0}function dD(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+44>>2]|0}function eD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;g=k+24|0;f=k;l=k+4|0;j=k+8|0;n=k+12|0;h=k+16|0;m=k+20|0;c[f>>2]=a;c[l>>2]=b;c[j>>2]=d;c[n>>2]=e;c[h>>2]=ad(c[c[f>>2]>>2]|0,c[l>>2]|0,m,c[n>>2]|0)|0;if((c[h>>2]|0)!=0){c[g>>2]=c[h>>2];n=c[g>>2]|0;i=k;return n|0}else{n=fD(c[m>>2]|0,c[l>>2]|0,c[f>>2]|0)|0;c[c[j>>2]>>2]=n;c[g>>2]=0;n=c[g>>2]|0;i=k;return n|0}return 0}function fD(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;k=g+12|0;h=g;j=g+4|0;f=g+8|0;c[k>>2]=b;c[h>>2]=d;c[j>>2]=e;c[f>>2]=Jq(c[k>>2]|0)|0;b=cd(c[k>>2]|0)|0;c[(c[f>>2]|0)+56>>2]=b;c[(c[f>>2]|0)+68>>2]=c[k>>2];c[(c[f>>2]|0)+52>>2]=c[j>>2];c[(c[f>>2]|0)+72>>2]=c[h>>2];a[(c[f>>2]|0)+5>>0]=(c[(c[f>>2]|0)+72>>2]|0)==1?100:0;i=g;return c[f>>2]|0}function gD(a,b,d,f,g,h){a=a|0;b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=i;i=i+240|0;k=q+36|0;l=q+32|0;s=q+28|0;n=q;p=q+24|0;j=q+20|0;r=q+8|0;o=q+12|0;m=q+16|0;c[l>>2]=a;c[s>>2]=b;a=n;c[a>>2]=d;c[a+4>>2]=f;c[p>>2]=g;c[j>>2]=h;c[m>>2]=0;if((c[s>>2]|0)!=0){c[o>>2]=hD(c[(c[l>>2]|0)+16>>2]|0,q+40|0,200,m)|0;if((c[o>>2]|0)==0){c[k>>2]=7;a=c[k>>2]|0;i=q;return a|0}iD(c[(c[l>>2]|0)+16>>2]|0,c[n>>2]|0,c[s>>2]|0,c[o>>2]|0);if((e[(c[o>>2]|0)+4>>1]|0|0)==0){cc(c[(c[(c[l>>2]|0)+16>>2]|0)+12>>2]|0,c[m>>2]|0);c[k>>2]=dq(51847)|0;a=c[k>>2]|0;i=q;return a|0}}else{c[o>>2]=0}a=n;c[r>>2]=jD(c[l>>2]|0,c[o>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[p>>2]|0,c[j>>2]|0)|0;if((c[m>>2]|0)!=0){cc(c[(c[(c[l>>2]|0)+16>>2]|0)+12>>2]|0,c[m>>2]|0)}c[k>>2]=c[r>>2];a=c[k>>2]|0;i=q;return a|0}function hD(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+32|0;j=n+28|0;l=n;p=n+4|0;q=n+8|0;m=n+12|0;k=n+16|0;o=n+20|0;h=n+24|0;c[l>>2]=a;c[p>>2]=d;c[q>>2]=f;c[m>>2]=g;c[o>>2]=8-(c[p>>2]&7)&7;c[h>>2]=24+(((e[(c[l>>2]|0)+6>>1]|0)+1|0)*40|0);if((c[h>>2]|0)>((c[q>>2]|0)+(c[o>>2]|0)|0)){c[k>>2]=$e(c[(c[l>>2]|0)+12>>2]|0,c[h>>2]|0)|0;c[c[m>>2]>>2]=c[k>>2];if((c[k>>2]|0)==0){c[j>>2]=0;q=c[j>>2]|0;i=n;return q|0}}else{c[k>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[c[m>>2]>>2]=0}c[(c[k>>2]|0)+8>>2]=(c[k>>2]|0)+24;c[c[k>>2]>>2]=c[l>>2];b[(c[k>>2]|0)+4>>1]=(e[(c[l>>2]|0)+6>>1]|0)+1;c[j>>2]=c[k>>2];q=c[j>>2]|0;i=n;return q|0}function iD(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=i;i=i+48|0;p=k+36|0;r=k+32|0;v=k+28|0;l=k+24|0;o=k+20|0;q=k+16|0;n=k+8|0;m=k+40|0;s=k+4|0;u=k;t=k+12|0;c[p>>2]=f;c[r>>2]=g;c[v>>2]=h;c[l>>2]=j;c[o>>2]=c[v>>2];c[u>>2]=c[(c[l>>2]|0)+8>>2];a[(c[l>>2]|0)+6>>0]=0;j=c[o>>2]|0;if((d[c[o>>2]>>0]|0|0)<128){c[s>>2]=d[j>>0]|0;j=1}else{j=(uD(j,s)|0)&255}c[n>>2]=j&255;c[q>>2]=c[s>>2];b[m>>1]=0;while(1){if(!((c[n>>2]|0)>>>0<(c[s>>2]|0)>>>0)){n=12;break}if((e[m>>1]|0|0)>=(e[(c[l>>2]|0)+4>>1]|0|0)){n=12;break}if((c[q>>2]|0)>(c[r>>2]|0)){n=12;break}j=(c[o>>2]|0)+(c[n>>2]|0)|0;if((d[(c[o>>2]|0)+(c[n>>2]|0)>>0]|0|0)<128){c[t>>2]=d[j>>0]|0;j=1}else{j=(uD(j,t)|0)&255}c[n>>2]=(c[n>>2]|0)+(j&255);a[(c[u>>2]|0)+30>>0]=a[(c[p>>2]|0)+4>>0]|0;c[c[u>>2]>>2]=c[(c[p>>2]|0)+12>>2];c[(c[u>>2]|0)+36>>2]=0;v=zD((c[o>>2]|0)+(c[q>>2]|0)|0,c[t>>2]|0,c[u>>2]|0)|0;c[q>>2]=(c[q>>2]|0)+v;c[u>>2]=(c[u>>2]|0)+40;b[m>>1]=(b[m>>1]|0)+1<<16>>16}if((n|0)==12){b[(c[l>>2]|0)+4>>1]=b[m>>1]|0;i=k;return}}function jD(f,g,h,j,k,l){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;o=i;i=i+96|0;w=o+80|0;B=o+76|0;n=o+72|0;s=o;C=o+68|0;z=o+64|0;p=o+60|0;x=o+56|0;v=o+52|0;m=o+20|0;u=o+36|0;A=o+16|0;F=o+32|0;t=o+28|0;q=o+24|0;r=o+8|0;y=o+40|0;E=o+44|0;D=o+48|0;c[B>>2]=f;c[n>>2]=g;f=s;c[f>>2]=h;c[f+4>>2]=j;c[C>>2]=k;c[z>>2]=l;if((d[(c[B>>2]|0)+81>>0]|0)==1){if((a[(c[B>>2]|0)+80>>0]&2|0)!=0){if((d[(c[(c[B>>2]|0)+128>>2]|0)+2>>0]|0)!=0){g=(c[B>>2]|0)+24|0;f=s;if((c[g>>2]|0)==(c[f>>2]|0)?(c[g+4>>2]|0)==(c[f+4>>2]|0):0){c[c[z>>2]>>2]=0;c[w>>2]=0;f=c[w>>2]|0;i=o;return f|0}if((a[(c[B>>2]|0)+80>>0]&8|0)!=0){g=(c[B>>2]|0)+24|0;j=c[g+4>>2]|0;f=s;h=c[f+4>>2]|0;if((j|0)<(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0:0)){c[c[z>>2]>>2]=-1;c[w>>2]=0;f=c[w>>2]|0;i=o;return f|0}}}}}if((c[n>>2]|0)!=0){c[x>>2]=kD(c[n>>2]|0)|0;a[(c[n>>2]|0)+7>>0]=0}else{c[x>>2]=0}c[p>>2]=lD(c[B>>2]|0)|0;if((c[p>>2]|0)!=0){c[w>>2]=c[p>>2];f=c[w>>2]|0;i=o;return f|0}if((d[(c[B>>2]|0)+81>>0]|0)==0){c[c[z>>2]>>2]=-1;c[w>>2]=0;f=c[w>>2]|0;i=o;return f|0}a:do{c[t>>2]=c[(c[B>>2]|0)+128+(b[(c[B>>2]|0)+84>>1]<<2)>>2];c[v>>2]=0;c[m>>2]=(e[(c[t>>2]|0)+16>>1]|0)-1;c[u>>2]=c[m>>2]>>1-(c[C>>2]|0);b[(c[B>>2]|0)+86+(b[(c[B>>2]|0)+84>>1]<<1)>>1]=c[u>>2];b:do{if((c[x>>2]|0)==0){while(1){c[q>>2]=(c[(c[t>>2]|0)+56>>2]|0)+(e[(c[t>>2]|0)+18>>1]&(d[(c[(c[t>>2]|0)+64>>2]|0)+(c[u>>2]<<1)>>0]<<8|d[(c[(c[t>>2]|0)+64>>2]|0)+(c[u>>2]<<1)+1>>0]))+(d[(c[t>>2]|0)+6>>0]|0);c:do{if((a[(c[t>>2]|0)+4>>0]|0)!=0){while(1){f=c[q>>2]|0;c[q>>2]=f+1;if(128>(d[f>>0]|0)){break c}if((c[q>>2]|0)>>>0>=(c[(c[t>>2]|0)+60>>2]|0)>>>0){l=20;break a}}}}while(0);mD(c[q>>2]|0,r)|0;g=r;j=c[g+4>>2]|0;f=s;h=c[f+4>>2]|0;if((j|0)<(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0:0)){c[v>>2]=(c[u>>2]|0)+1;if((c[v>>2]|0)>(c[m>>2]|0)){l=23;break}}else{g=r;j=c[g+4>>2]|0;f=s;h=c[f+4>>2]|0;if(!((j|0)>(h|0)|((j|0)==(h|0)?(c[g>>2]|0)>>>0>(c[f>>2]|0)>>>0:0))){l=27;break}c[m>>2]=(c[u>>2]|0)-1;if((c[v>>2]|0)>(c[m>>2]|0)){l=26;break}}c[u>>2]=(c[v>>2]|0)+(c[m>>2]|0)>>1}if((l|0)==23){c[A>>2]=-1;l=49;break}else if((l|0)==26){c[A>>2]=1;l=49;break}else if((l|0)==27){l=0;h=(c[B>>2]|0)+80|0;a[h>>0]=d[h>>0]|2;h=r;g=c[h+4>>2]|0;f=(c[B>>2]|0)+24|0;c[f>>2]=c[h>>2];c[f+4>>2]=g;b[(c[B>>2]|0)+86+(b[(c[B>>2]|0)+84>>1]<<1)>>1]=c[u>>2];if((a[(c[t>>2]|0)+3>>0]|0)!=0){l=29;break a}c[v>>2]=c[u>>2];break}}else{while(1){c[q>>2]=(c[(c[t>>2]|0)+56>>2]|0)+(e[(c[t>>2]|0)+18>>1]&(d[(c[(c[t>>2]|0)+64>>2]|0)+(c[u>>2]<<1)>>0]<<8|d[(c[(c[t>>2]|0)+64>>2]|0)+(c[u>>2]<<1)+1>>0]))+(d[(c[t>>2]|0)+6>>0]|0);c[y>>2]=d[c[q>>2]>>0]|0;do{if((c[y>>2]|0)<=(d[(c[t>>2]|0)+7>>0]|0)){c[A>>2]=xb[c[x>>2]&31](c[y>>2]|0,(c[q>>2]|0)+1|0,c[n>>2]|0,0)|0}else{if((a[(c[q>>2]|0)+1>>0]&128|0)==0){f=((c[y>>2]&127)<<7)+(d[(c[q>>2]|0)+1>>0]|0)|0;c[y>>2]=f;if((f|0)<=(e[(c[t>>2]|0)+8>>1]|0)){c[A>>2]=xb[c[x>>2]&31](c[y>>2]|0,(c[q>>2]|0)+2|0,c[n>>2]|0,0)|0;break}}c[D>>2]=(c[q>>2]|0)+(0-(d[(c[t>>2]|0)+6>>0]|0));nD(c[t>>2]|0,c[D>>2]|0,(c[B>>2]|0)+24|0);c[y>>2]=c[(c[B>>2]|0)+24>>2];c[E>>2]=nc(c[y>>2]|0)|0;if((c[E>>2]|0)==0){l=37;break a}b[(c[B>>2]|0)+86+(b[(c[B>>2]|0)+84>>1]<<1)>>1]=c[u>>2];c[p>>2]=oD(c[B>>2]|0,0,c[y>>2]|0,c[E>>2]|0,2)|0;if((c[p>>2]|0)!=0){l=39;break a}c[A>>2]=xb[c[x>>2]&31](c[y>>2]|0,c[E>>2]|0,c[n>>2]|0,0)|0;oc(c[E>>2]|0)}}while(0);if((c[A>>2]|0)<0){c[v>>2]=(c[u>>2]|0)+1}else{if((c[A>>2]|0)<=0){l=45;break a}c[m>>2]=(c[u>>2]|0)-1}if((c[v>>2]|0)>(c[m>>2]|0)){l=49;break b}c[u>>2]=(c[v>>2]|0)+(c[m>>2]|0)>>1}}}while(0);if((l|0)==49){l=0;if((a[(c[t>>2]|0)+3>>0]|0)!=0){l=50;break}}k=c[t>>2]|0;if((c[v>>2]|0)>=(e[(c[t>>2]|0)+16>>1]|0)){c[F>>2]=zo((c[(c[t>>2]|0)+56>>2]|0)+((d[k+5>>0]|0)+8)|0)|0}else{c[F>>2]=zo((c[k+56>>2]|0)+(e[(c[t>>2]|0)+18>>1]&(d[(c[(c[t>>2]|0)+64>>2]|0)+(c[v>>2]<<1)>>0]<<8|d[(c[(c[t>>2]|0)+64>>2]|0)+(c[v>>2]<<1)+1>>0]))|0)|0}b[(c[B>>2]|0)+86+(b[(c[B>>2]|0)+84>>1]<<1)>>1]=c[v>>2];c[p>>2]=$C(c[B>>2]|0,c[F>>2]|0)|0}while((c[p>>2]|0)==0);if((l|0)==20){c[w>>2]=dq(55807)|0;f=c[w>>2]|0;i=o;return f|0}else if((l|0)==29){c[c[z>>2]>>2]=0;c[p>>2]=0}else if((l|0)==37){c[p>>2]=7}else if((l|0)==39){oc(c[E>>2]|0)}else if((l|0)==45){c[c[z>>2]>>2]=0;c[p>>2]=0;b[(c[B>>2]|0)+86+(b[(c[B>>2]|0)+84>>1]<<1)>>1]=c[u>>2];if((a[(c[n>>2]|0)+7>>0]|0)!=0){c[p>>2]=11}}else if((l|0)==50){b[(c[B>>2]|0)+86+(b[(c[B>>2]|0)+84>>1]<<1)>>1]=c[u>>2];c[c[z>>2]>>2]=c[A>>2];c[p>>2]=0}b[(c[B>>2]|0)+50>>1]=0;f=(c[B>>2]|0)+80|0;a[f>>0]=d[f>>0]&-7;c[w>>2]=c[p>>2];f=c[w>>2]|0;i=o;return f|0}function kD(b){b=b|0;var d=0,f=0,g=0,h=0;f=i;i=i+16|0;d=f+8|0;g=f;h=f+4|0;c[g>>2]=b;if(((e[(c[c[g>>2]>>2]|0)+6>>1]|0)+(e[(c[c[g>>2]>>2]|0)+8>>1]|0)|0)<=13){c[h>>2]=e[(c[(c[g>>2]|0)+8>>2]|0)+28>>1]|0;b=(c[g>>2]|0)+12|0;if((a[c[(c[c[g>>2]>>2]|0)+16>>2]>>0]|0)!=0){c[b>>2]=1;c[(c[g>>2]|0)+16>>2]=-1}else{c[b>>2]=-1;c[(c[g>>2]|0)+16>>2]=1}if((c[h>>2]&4|0)!=0){c[d>>2]=15;b=c[d>>2]|0;i=f;return b|0}if((c[h>>2]&25|0)==0){if((c[(c[c[g>>2]>>2]|0)+20>>2]|0)==0){c[d>>2]=16;b=c[d>>2]|0;i=f;return b|0}}}c[d>>2]=17;b=c[d>>2]|0;i=f;return b|0}function lD(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;j=i;i=i+32|0;h=j+16|0;k=j;l=j+4|0;g=j+8|0;m=j+12|0;c[k>>2]=f;c[g>>2]=0;do{if((d[(c[k>>2]|0)+81>>0]|0)>=3){f=c[k>>2]|0;if((d[(c[k>>2]|0)+81>>0]|0)!=4){Fr(f);break}c[h>>2]=c[f+76>>2];f=c[h>>2]|0;i=j;return f|0}}while(0);a:do{if((b[(c[k>>2]|0)+84>>1]|0)>=0){while(1){if((b[(c[k>>2]|0)+84>>1]|0)==0){break a}n=(c[k>>2]|0)+84|0;f=b[n>>1]|0;b[n>>1]=f+ -1<<16>>16;Gr(c[(c[k>>2]|0)+128+(f<<16>>16<<2)>>2]|0)}}else{f=c[k>>2]|0;if((c[(c[k>>2]|0)+68>>2]|0)==0){a[f+81>>0]=0;c[h>>2]=0;n=c[h>>2]|0;i=j;return n|0}c[g>>2]=cD(c[(c[f>>2]|0)+4>>2]|0,c[(c[k>>2]|0)+68>>2]|0,(c[k>>2]|0)+128|0,(a[(c[k>>2]|0)+80>>0]&1|0)==0?2:0)|0;f=c[k>>2]|0;if((c[g>>2]|0)==0){b[f+84>>1]=0;break}a[f+81>>0]=0;c[h>>2]=c[g>>2];n=c[h>>2]|0;i=j;return n|0}}while(0);c[l>>2]=c[(c[k>>2]|0)+128>>2];if((d[c[l>>2]>>0]|0)!=0){if(((c[(c[k>>2]|0)+16>>2]|0)==0|0)==(d[(c[l>>2]|0)+2>>0]|0)){b[(c[k>>2]|0)+86>>1]=0;b[(c[k>>2]|0)+50>>1]=0;n=(c[k>>2]|0)+80|0;a[n>>0]=d[n>>0]&-15;do{if((e[(c[l>>2]|0)+16>>1]|0)>0){a[(c[k>>2]|0)+81>>0]=1}else{if((a[(c[l>>2]|0)+3>>0]|0)!=0){a[(c[k>>2]|0)+81>>0]=0;break}if((c[(c[l>>2]|0)+72>>2]|0)==1){c[m>>2]=zo((c[(c[l>>2]|0)+56>>2]|0)+((d[(c[l>>2]|0)+5>>0]|0)+8)|0)|0;a[(c[k>>2]|0)+81>>0]=1;c[g>>2]=$C(c[k>>2]|0,c[m>>2]|0)|0;break}c[h>>2]=dq(55570)|0;n=c[h>>2]|0;i=j;return n|0}}while(0);c[h>>2]=c[g>>2];n=c[h>>2]|0;i=j;return n|0}}c[h>>2]=dq(55559)|0;n=c[h>>2]|0;i=j;return n|0}function mD(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;g=k+20|0;m=k;j=k+4|0;h=k+8|0;f=k+12|0;l=k+16|0;c[m>>2]=b;c[j>>2]=e;c[h>>2]=d[c[m>>2]>>0]|0;if((c[h>>2]&128|0)==0){b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=0;a[g>>0]=1;b=a[g>>0]|0;i=k;return b|0}c[m>>2]=(c[m>>2]|0)+1;c[f>>2]=d[c[m>>2]>>0]|0;if((c[f>>2]&128|0)==0){c[h>>2]=c[h>>2]&127;c[h>>2]=c[h>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=0;a[g>>0]=2;b=a[g>>0]|0;i=k;return b|0}c[m>>2]=(c[m>>2]|0)+1;c[h>>2]=c[h>>2]<<14;c[h>>2]=c[h>>2]|(d[c[m>>2]>>0]|0);b=(c[h>>2]&128|0)!=0;c[h>>2]=c[h>>2]&2080895;if(!b){c[f>>2]=c[f>>2]&127;c[f>>2]=c[f>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=0;a[g>>0]=3;b=a[g>>0]|0;i=k;return b|0}c[m>>2]=(c[m>>2]|0)+1;c[f>>2]=c[f>>2]<<14;c[f>>2]=c[f>>2]|(d[c[m>>2]>>0]|0);b=(c[f>>2]&128|0)!=0;c[f>>2]=c[f>>2]&2080895;e=c[h>>2]|0;if(!b){c[h>>2]=e<<7;c[h>>2]=c[h>>2]|c[f>>2];b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=0;a[g>>0]=4;b=a[g>>0]|0;i=k;return b|0}c[l>>2]=e;c[m>>2]=(c[m>>2]|0)+1;c[h>>2]=c[h>>2]<<14;c[h>>2]=c[h>>2]|(d[c[m>>2]>>0]|0);if((c[h>>2]&128|0)==0){c[f>>2]=c[f>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];c[l>>2]=(c[l>>2]|0)>>>18;e=c[l>>2]|0;b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=e;a[g>>0]=5;b=a[g>>0]|0;i=k;return b|0}c[l>>2]=c[l>>2]<<7;c[l>>2]=c[l>>2]|c[f>>2];c[m>>2]=(c[m>>2]|0)+1;c[f>>2]=c[f>>2]<<14;c[f>>2]=c[f>>2]|(d[c[m>>2]>>0]|0);if((c[f>>2]&128|0)==0){c[h>>2]=c[h>>2]&2080895;c[h>>2]=c[h>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];c[l>>2]=(c[l>>2]|0)>>>18;e=c[l>>2]|0;b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=e;a[g>>0]=6;b=a[g>>0]|0;i=k;return b|0}c[m>>2]=(c[m>>2]|0)+1;c[h>>2]=c[h>>2]<<14;c[h>>2]=c[h>>2]|(d[c[m>>2]>>0]|0);e=c[h>>2]|0;if((c[h>>2]&128|0)==0){c[h>>2]=e&-266354561;c[f>>2]=c[f>>2]&2080895;c[f>>2]=c[f>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];c[l>>2]=(c[l>>2]|0)>>>11;e=c[l>>2]|0;b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=e;a[g>>0]=7;b=a[g>>0]|0;i=k;return b|0}c[h>>2]=e&2080895;c[m>>2]=(c[m>>2]|0)+1;c[f>>2]=c[f>>2]<<14;c[f>>2]=c[f>>2]|(d[c[m>>2]>>0]|0);if((c[f>>2]&128|0)!=0){c[m>>2]=(c[m>>2]|0)+1;c[h>>2]=c[h>>2]<<15;c[h>>2]=c[h>>2]|(d[c[m>>2]>>0]|0);c[f>>2]=c[f>>2]&2080895;c[f>>2]=c[f>>2]<<8;c[h>>2]=c[h>>2]|c[f>>2];c[l>>2]=c[l>>2]<<4;c[f>>2]=d[(c[m>>2]|0)+ -4>>0]|0;c[f>>2]=c[f>>2]&127;c[f>>2]=(c[f>>2]|0)>>>3;c[l>>2]=c[l>>2]|c[f>>2];e=c[l>>2]|0;b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=e;a[g>>0]=9;b=a[g>>0]|0;i=k;return b|0}else{c[f>>2]=c[f>>2]&-266354561;c[h>>2]=c[h>>2]<<7;c[h>>2]=c[h>>2]|c[f>>2];c[l>>2]=(c[l>>2]|0)>>>4;e=c[l>>2]|0;b=c[j>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=e;a[g>>0]=8;b=a[g>>0]|0;i=k;return b|0}return 0}function nD(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=i;i=i+32|0;n=l+24|0;r=l;k=l+4|0;m=l+28|0;q=l+12|0;o=l+16|0;p=l+20|0;j=l+8|0;c[n>>2]=f;c[r>>2]=g;c[k>>2]=h;c[(c[k>>2]|0)+8>>2]=c[r>>2];b[m>>1]=d[(c[n>>2]|0)+6>>0]|0;if((a[(c[n>>2]|0)+2>>0]|0)!=0){if((a[(c[n>>2]|0)+4>>0]|0)!=0){h=c[r>>2]|0;if((d[c[r>>2]>>0]|0)<128){c[q>>2]=d[h>>0]|0;h=1}else{h=(uD(h,q)|0)&255}b[m>>1]=h&255}else{c[q>>2]=0}f=(mD((c[r>>2]|0)+(e[m>>1]|0)|0,c[k>>2]|0)|0)&255;b[m>>1]=(e[m>>1]|0)+f;c[(c[k>>2]|0)+12>>2]=c[q>>2]}else{c[(c[k>>2]|0)+12>>2]=0;h=(c[r>>2]|0)+(e[m>>1]|0)|0;if((d[(c[r>>2]|0)+(e[m>>1]|0)>>0]|0)<128){c[q>>2]=d[h>>0]|0;r=1}else{r=(uD(h,q)|0)&255}b[m>>1]=(e[m>>1]|0)+(r&255);f=c[k>>2]|0;c[f>>2]=c[q>>2];c[f+4>>2]=0}c[(c[k>>2]|0)+16>>2]=c[q>>2];b[(c[k>>2]|0)+20>>1]=b[m>>1]|0;if((c[q>>2]|0)>>>0<=(e[(c[n>>2]|0)+8>>1]|0)>>>0){f=(e[m>>1]|0)+(c[q>>2]|0)&65535;b[(c[k>>2]|0)+26>>1]=f;if((f&65535|0)<4){b[(c[k>>2]|0)+26>>1]=4}b[(c[k>>2]|0)+22>>1]=c[q>>2];b[(c[k>>2]|0)+24>>1]=0;i=l;return}c[o>>2]=e[(c[n>>2]|0)+10>>1]|0;c[p>>2]=e[(c[n>>2]|0)+8>>1]|0;c[j>>2]=(c[o>>2]|0)+((((c[q>>2]|0)-(c[o>>2]|0)|0)>>>0)%(((c[(c[(c[n>>2]|0)+52>>2]|0)+36>>2]|0)-4|0)>>>0)|0);if((c[j>>2]|0)<=(c[p>>2]|0)){b[(c[k>>2]|0)+22>>1]=c[j>>2]}else{b[(c[k>>2]|0)+22>>1]=c[o>>2]}b[(c[k>>2]|0)+24>>1]=(e[(c[k>>2]|0)+22>>1]|0)+(e[m>>1]|0);b[(c[k>>2]|0)+26>>1]=(e[(c[k>>2]|0)+24>>1]|0)+4;i=l;return}function oD(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;D=i;i=i+80|0;C=D+76|0;o=D+72|0;x=D+68|0;t=D+64|0;y=D+60|0;m=D+56|0;w=D+52|0;r=D+48|0;E=D+44|0;n=D+40|0;A=D+36|0;l=D+12|0;F=D;z=D+4|0;v=D+8|0;p=D+16|0;q=D+20|0;s=D+24|0;u=D+28|0;B=D+32|0;c[o>>2]=f;c[x>>2]=g;c[t>>2]=h;c[y>>2]=j;c[m>>2]=k;c[r>>2]=0;c[n>>2]=0;c[A>>2]=c[(c[o>>2]|0)+128+(b[(c[o>>2]|0)+84>>1]<<2)>>2];c[l>>2]=c[(c[o>>2]|0)+4>>2];if((e[(c[o>>2]|0)+50>>1]|0)==0){c[F>>2]=b[(c[o>>2]|0)+84>>1]|0;pD(c[(c[o>>2]|0)+128+(c[F>>2]<<2)>>2]|0,e[(c[o>>2]|0)+86+(c[F>>2]<<1)>>1]|0,(c[o>>2]|0)+24|0);f=(c[o>>2]|0)+80|0;a[f>>0]=d[f>>0]|2}c[w>>2]=(c[(c[o>>2]|0)+32>>2]|0)+(e[(c[o>>2]|0)+44>>1]|0);if((d[(c[A>>2]|0)+2>>0]|0)!=0){k=0}else{k=c[(c[o>>2]|0)+24>>2]|0}c[E>>2]=k;if(!(((c[x>>2]|0)+(c[t>>2]|0)|0)>>>0>((c[E>>2]|0)+(c[(c[o>>2]|0)+36>>2]|0)|0)>>>0)){if(!(((c[w>>2]|0)+(e[(c[o>>2]|0)+46>>1]|0)|0)>>>0>((c[(c[A>>2]|0)+56>>2]|0)+(c[(c[l>>2]|0)+36>>2]|0)|0)>>>0)){if((c[x>>2]|0)>>>0<(e[(c[o>>2]|0)+46>>1]|0)>>>0){c[z>>2]=c[t>>2];if(((c[z>>2]|0)+(c[x>>2]|0)|0)>>>0>(e[(c[o>>2]|0)+46>>1]|0)>>>0){c[z>>2]=(e[(c[o>>2]|0)+46>>1]|0)-(c[x>>2]|0)}c[r>>2]=qD((c[w>>2]|0)+(c[x>>2]|0)|0,c[y>>2]|0,c[z>>2]|0,c[m>>2]&1,c[(c[A>>2]|0)+68>>2]|0)|0;c[x>>2]=0;c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0);c[t>>2]=(c[t>>2]|0)-(c[z>>2]|0)}else{c[x>>2]=(c[x>>2]|0)-(e[(c[o>>2]|0)+46>>1]|0)}a:do{if((c[r>>2]|0)==0){if((c[t>>2]|0)>>>0>0){c[v>>2]=(c[(c[l>>2]|0)+36>>2]|0)-4;c[p>>2]=zo((c[w>>2]|0)+(e[(c[o>>2]|0)+46>>1]|0)|0)|0;if((c[m>>2]|0)!=2){if((a[(c[o>>2]|0)+80>>0]&4|0)==0){c[q>>2]=(((c[(c[o>>2]|0)+40>>2]|0)-(e[(c[o>>2]|0)+46>>1]|0)+(c[v>>2]|0)-1|0)>>>0)/((c[v>>2]|0)>>>0)|0;do{if((c[q>>2]|0)>(c[(c[o>>2]|0)+72>>2]|0)){c[s>>2]=Ot(c[c[c[o>>2]>>2]>>2]|0,c[(c[o>>2]|0)+20>>2]|0,c[q>>2]<<1<<2)|0;if((c[s>>2]|0)==0){c[r>>2]=7;break}else{c[(c[o>>2]|0)+72>>2]=c[q>>2]<<1;c[(c[o>>2]|0)+20>>2]=c[s>>2];break}}}while(0);if((c[r>>2]|0)==0){aL(c[(c[o>>2]|0)+20>>2]|0,0,c[q>>2]<<2|0)|0;f=(c[o>>2]|0)+80|0;a[f>>0]=d[f>>0]|4}}}if((a[(c[o>>2]|0)+80>>0]&4|0)!=0){if((c[(c[(c[o>>2]|0)+20>>2]|0)+((((c[x>>2]|0)>>>0)/((c[v>>2]|0)>>>0)|0)<<2)>>2]|0)!=0){c[n>>2]=((c[x>>2]|0)>>>0)/((c[v>>2]|0)>>>0)|0;c[p>>2]=c[(c[(c[o>>2]|0)+20>>2]|0)+(c[n>>2]<<2)>>2];c[x>>2]=((c[x>>2]|0)>>>0)%((c[v>>2]|0)>>>0)|0}}while(1){if((c[r>>2]|0)!=0){break a}if(!((c[t>>2]|0)>>>0>0)){break a}if((c[p>>2]|0)==0){break a}if((a[(c[o>>2]|0)+80>>0]&4|0)!=0){c[(c[(c[o>>2]|0)+20>>2]|0)+(c[n>>2]<<2)>>2]=c[p>>2]}if((c[x>>2]|0)>>>0>=(c[v>>2]|0)>>>0){if((c[(c[(c[o>>2]|0)+20>>2]|0)+((c[n>>2]|0)+1<<2)>>2]|0)!=0){c[p>>2]=c[(c[(c[o>>2]|0)+20>>2]|0)+((c[n>>2]|0)+1<<2)>>2]}else{c[r>>2]=rD(c[l>>2]|0,c[p>>2]|0,0,p)|0}c[x>>2]=(c[x>>2]|0)-(c[v>>2]|0)}else{c[u>>2]=c[t>>2];if(((c[u>>2]|0)+(c[x>>2]|0)|0)>>>0>(c[v>>2]|0)>>>0){c[u>>2]=(c[v>>2]|0)-(c[x>>2]|0)}c[r>>2]=ad(c[c[l>>2]>>2]|0,c[p>>2]|0,B,(c[m>>2]&1|0)==0?2:0)|0;if((c[r>>2]|0)==0){c[w>>2]=cd(c[B>>2]|0)|0;c[p>>2]=zo(c[w>>2]|0)|0;c[r>>2]=qD((c[w>>2]|0)+((c[x>>2]|0)+4)|0,c[y>>2]|0,c[u>>2]|0,c[m>>2]&1,c[B>>2]|0)|0;dd(c[B>>2]|0);c[x>>2]=0}c[t>>2]=(c[t>>2]|0)-(c[u>>2]|0);c[y>>2]=(c[y>>2]|0)+(c[u>>2]|0)}c[n>>2]=(c[n>>2]|0)+1}}}}while(0);if((c[r>>2]|0)==0){if((c[t>>2]|0)>>>0>0){c[C>>2]=dq(55292)|0;f=c[C>>2]|0;i=D;return f|0}}c[C>>2]=c[r>>2];f=c[C>>2]|0;i=D;return f|0}}c[C>>2]=dq(55144)|0;f=c[C>>2]|0;i=D;return f|0}function pD(a,b,f){a=a|0;b=b|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+16|0;k=g+8|0;j=g;h=g+4|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=f;nD(c[k>>2]|0,(c[(c[k>>2]|0)+56>>2]|0)+((e[(c[k>>2]|0)+18>>1]|0)&((d[(c[(c[k>>2]|0)+64>>2]|0)+(c[j>>2]<<1)>>0]|0)<<8|(d[(c[(c[k>>2]|0)+64>>2]|0)+(c[j>>2]<<1)+1>>0]|0)))|0,c[h>>2]|0);i=g;return}function qD(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+32|0;h=m+24|0;l=m;k=m+4|0;j=m+8|0;o=m+12|0;n=m+16|0;g=m+20|0;c[l>>2]=a;c[k>>2]=b;c[j>>2]=d;c[o>>2]=e;c[n>>2]=f;do{if((c[o>>2]|0)!=0){c[g>>2]=ld(c[n>>2]|0)|0;if((c[g>>2]|0)==0){fL(c[l>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;break}c[h>>2]=c[g>>2];o=c[h>>2]|0;i=m;return o|0}else{fL(c[k>>2]|0,c[l>>2]|0,c[j>>2]|0)|0}}while(0);c[h>>2]=0;o=c[h>>2]|0;i=m;return o|0}function rD(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+48|0;q=h+16|0;n=h+32|0;j=h+28|0;l=h+24|0;o=h+20|0;m=h+12|0;k=h+8|0;p=h+4|0;s=h;r=h+36|0;c[q>>2]=b;c[n>>2]=e;c[j>>2]=f;c[l>>2]=g;c[o>>2]=0;c[m>>2]=0;c[k>>2]=0;if((a[(c[q>>2]|0)+17>>0]|0)!=0){c[s>>2]=(c[n>>2]|0)+1;while(1){b=sD(c[q>>2]|0,c[s>>2]|0)|0;if((b|0)==(c[s>>2]|0)){f=1}else{f=(c[s>>2]|0)==((((c[368]|0)>>>0)/((c[(c[q>>2]|0)+32>>2]|0)>>>0)|0)+1|0)}g=c[s>>2]|0;if(!f){break}c[s>>2]=g+1}if(g>>>0<=(dD(c[q>>2]|0)|0)>>>0){c[k>>2]=tD(c[q>>2]|0,c[s>>2]|0,r,p)|0;if((c[k>>2]|0)==0){if((d[r>>0]|0)==4){if((c[p>>2]|0)==(c[n>>2]|0)){c[o>>2]=c[s>>2];c[k>>2]=101}}}}}if((c[k>>2]|0)==0){c[k>>2]=eD(c[q>>2]|0,c[n>>2]|0,m,(c[j>>2]|0)==0?2:0)|0;if((c[k>>2]|0)==0){c[o>>2]=zo(c[(c[m>>2]|0)+56>>2]|0)|0}}c[c[l>>2]>>2]=c[o>>2];l=c[m>>2]|0;if((c[j>>2]|0)!=0){c[c[j>>2]>>2]=l;e=c[k>>2]|0;e=(e|0)==101;b=c[k>>2]|0;b=e?0:b;i=h;return b|0}else{Gr(l);e=c[k>>2]|0;e=(e|0)==101;b=c[k>>2]|0;b=e?0:b;i=h;return b|0}return 0}function sD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;g=d;j=d+4|0;h=d+8|0;k=d+12|0;f=d+16|0;c[g>>2]=a;c[j>>2]=b;if((c[j>>2]|0)>>>0<2){c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}c[h>>2]=(((c[(c[g>>2]|0)+36>>2]|0)>>>0)/5|0)+1;c[k>>2]=(((c[j>>2]|0)-2|0)>>>0)/((c[h>>2]|0)>>>0)|0;c[f>>2]=($(c[k>>2]|0,c[h>>2]|0)|0)+2;if((c[f>>2]|0)==((((c[368]|0)>>>0)/((c[(c[g>>2]|0)+32>>2]|0)>>>0)|0)+1|0)){c[f>>2]=(c[f>>2]|0)+1}c[e>>2]=c[f>>2];a=c[e>>2]|0;i=d;return a|0}function tD(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=i;i=i+48|0;j=o+36|0;s=o+32|0;q=o+28|0;h=o+24|0;p=o+20|0;l=o+16|0;r=o+8|0;m=o+4|0;n=o;k=o+12|0;c[s>>2]=b;c[q>>2]=e;c[h>>2]=f;c[p>>2]=g;c[r>>2]=sD(c[s>>2]|0,c[q>>2]|0)|0;c[k>>2]=ad(c[c[s>>2]>>2]|0,c[r>>2]|0,l,0)|0;if((c[k>>2]|0)!=0){c[j>>2]=c[k>>2];s=c[j>>2]|0;i=o;return s|0}c[m>>2]=cd(c[l>>2]|0)|0;c[n>>2]=((c[q>>2]|0)-(c[r>>2]|0)-1|0)*5;if((c[n>>2]|0)<0){dd(c[l>>2]|0);c[j>>2]=dq(52032)|0;s=c[j>>2]|0;i=o;return s|0}a[c[h>>2]>>0]=a[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0;if((c[p>>2]|0)!=0){s=zo((c[m>>2]|0)+((c[n>>2]|0)+1)|0)|0;c[c[p>>2]>>2]=s}dd(c[l>>2]|0);if((d[c[h>>2]>>0]|0|0)>=1){if((d[c[h>>2]>>0]|0|0)<=5){c[j>>2]=0;s=c[j>>2]|0;i=o;return s|0}}c[j>>2]=dq(52040)|0;s=c[j>>2]|0;i=o;return s|0}function uD(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+25|0;l=f+20|0;h=f+8|0;k=f+12|0;j=f+16|0;m=f;n=f+24|0;c[l>>2]=b;c[h>>2]=e;c[k>>2]=d[c[l>>2]>>0]|0;c[l>>2]=(c[l>>2]|0)+1;c[j>>2]=d[c[l>>2]>>0]|0;if((c[j>>2]&128|0)==0){c[k>>2]=c[k>>2]&127;c[k>>2]=c[k>>2]<<7;c[c[h>>2]>>2]=c[k>>2]|c[j>>2];a[g>>0]=2;b=a[g>>0]|0;i=f;return b|0}c[l>>2]=(c[l>>2]|0)+1;c[k>>2]=c[k>>2]<<14;c[k>>2]=c[k>>2]|(d[c[l>>2]>>0]|0);if((c[k>>2]&128|0)==0){c[k>>2]=c[k>>2]&2080895;c[j>>2]=c[j>>2]&127;c[j>>2]=c[j>>2]<<7;c[c[h>>2]>>2]=c[k>>2]|c[j>>2];a[g>>0]=3;b=a[g>>0]|0;i=f;return b|0}c[l>>2]=(c[l>>2]|0)+ -2;a[n>>0]=mD(c[l>>2]|0,m)|0;b=m;if(0!=(c[b+4>>2]|0)?1:(c[m>>2]|0)!=(c[b>>2]|0)){c[c[h>>2]>>2]=-1}else{c[c[h>>2]>>2]=c[m>>2]}a[g>>0]=a[n>>0]|0;b=a[g>>0]|0;i=f;return b|0}function vD(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;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;k=i;i=i+64|0;j=k+56|0;m=k+52|0;n=k+48|0;l=k+44|0;r=k+36|0;u=k+32|0;o=k+24|0;s=k+28|0;t=k+8|0;q=k;p=k+16|0;c[m>>2]=b;c[n>>2]=f;c[l>>2]=g;c[k+40>>2]=h;c[r>>2]=(c[n>>2]|0)+(a[c[n>>2]>>0]&63);c[u>>2]=d[(c[n>>2]|0)+1>>0]|0;g=(c[(c[l>>2]|0)+8>>2]|0)+16|0;f=c[g+4>>2]|0;b=q;c[b>>2]=c[g>>2];c[b+4>>2]=f;do{switch(c[u>>2]|0){case 2:{b=a[c[r>>2]>>0]<<8|d[(c[r>>2]|0)+1>>0];u=p;c[u>>2]=b;c[u+4>>2]=((b|0)<0)<<31>>31;break};case 3:{b=a[c[r>>2]>>0]<<16|d[(c[r>>2]|0)+1>>0]<<8|d[(c[r>>2]|0)+2>>0];u=p;c[u>>2]=b;c[u+4>>2]=((b|0)<0)<<31>>31;break};case 5:{b=a[c[r>>2]>>0]<<8|d[(c[r>>2]|0)+1>>0];u=p;c[u>>2]=dL(d[(c[r>>2]|0)+2>>0]<<24|d[(c[r>>2]|0)+3>>0]<<16|d[(c[r>>2]|0)+4>>0]<<8|d[(c[r>>2]|0)+5>>0]|0,0,nL(0,1,b|0,((b|0)<0)<<31>>31|0)|0,D|0)|0;c[u+4>>2]=D;break};case 9:{u=p;c[u>>2]=1;c[u+4>>2]=0;break};case 7:case 0:{c[j>>2]=xD(c[m>>2]|0,c[n>>2]|0,c[l>>2]|0,0)|0;u=c[j>>2]|0;i=k;return u|0};case 4:{c[s>>2]=d[c[r>>2]>>0]<<24|d[(c[r>>2]|0)+1>>0]<<16|d[(c[r>>2]|0)+2>>0]<<8|d[(c[r>>2]|0)+3>>0];b=c[s>>2]|0;u=p;c[u>>2]=b;c[u+4>>2]=((b|0)<0)<<31>>31;break};case 8:{u=p;c[u>>2]=0;c[u+4>>2]=0;break};case 1:{b=a[c[r>>2]>>0]|0;u=p;c[u>>2]=b;c[u+4>>2]=((b|0)<0)<<31>>31;break};case 6:{b=t;c[b>>2]=d[c[r>>2]>>0]<<24|d[(c[r>>2]|0)+1>>0]<<16|d[(c[r>>2]|0)+2>>0]<<8|d[(c[r>>2]|0)+3>>0];c[b+4>>2]=0;b=c[t>>2]|0;f=t;c[f>>2]=d[(c[r>>2]|0)+4>>0]<<24|d[(c[r>>2]|0)+5>>0]<<16|d[(c[r>>2]|0)+6>>0]<<8|d[(c[r>>2]|0)+7>>0];c[f+4>>2]=b;f=t;b=c[f+4>>2]|0;u=p;c[u>>2]=c[f>>2];c[u+4>>2]=b;break};default:{c[j>>2]=xD(c[m>>2]|0,c[n>>2]|0,c[l>>2]|0,0)|0;u=c[j>>2]|0;i=k;return u|0}}}while(0);b=q;g=c[b+4>>2]|0;u=p;f=c[u+4>>2]|0;do{if((g|0)>(f|0)|((g|0)==(f|0)?(c[b>>2]|0)>>>0>(c[u>>2]|0)>>>0:0)){c[o>>2]=c[(c[l>>2]|0)+12>>2]}else{b=q;g=c[b+4>>2]|0;u=p;f=c[u+4>>2]|0;p=c[l>>2]|0;if((g|0)<(f|0)|((g|0)==(f|0)?(c[b>>2]|0)>>>0<(c[u>>2]|0)>>>0:0)){c[o>>2]=c[p+16>>2];break}if((e[p+4>>1]|0)>1){c[o>>2]=xD(c[m>>2]|0,c[n>>2]|0,c[l>>2]|0,1)|0;break}else{c[o>>2]=a[(c[l>>2]|0)+6>>0]|0;break}}}while(0);c[j>>2]=c[o>>2];u=c[j>>2]|0;i=k;return u|0}function wD(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+48|0;k=j+40|0;n=j+36|0;m=j+32|0;r=j+28|0;o=j+20|0;t=j+12|0;l=j+8|0;q=j+4|0;p=j;s=j+16|0;c[n>>2]=b;c[m>>2]=f;c[r>>2]=g;c[j+24>>2]=h;c[o>>2]=c[m>>2];h=(c[o>>2]|0)+1|0;if((d[(c[o>>2]|0)+1>>0]|0)<128){c[t>>2]=d[h>>0]|0}else{uD(h,t)|0}do{if((c[t>>2]|0)<12){c[l>>2]=c[(c[r>>2]|0)+12>>2]}else{if((c[t>>2]&1|0)==0){c[l>>2]=c[(c[r>>2]|0)+16>>2];break}c[s>>2]=d[c[o>>2]>>0]|0;c[p>>2]=((c[t>>2]|0)-12|0)/2|0;if(((c[s>>2]|0)+(c[p>>2]|0)|0)>(c[n>>2]|0)){b=(dq(65455)|0)&255;a[(c[r>>2]|0)+7>>0]=b;c[k>>2]=0;b=c[k>>2]|0;i=j;return b|0}if((c[(c[(c[r>>2]|0)+8>>2]|0)+24>>2]|0)<(c[p>>2]|0)){t=c[(c[(c[r>>2]|0)+8>>2]|0)+24>>2]|0}else{t=c[p>>2]|0}c[q>>2]=t;c[l>>2]=XK((c[o>>2]|0)+(c[s>>2]|0)|0,c[(c[(c[r>>2]|0)+8>>2]|0)+4>>2]|0,c[q>>2]|0)|0;if((c[l>>2]|0)!=0){m=c[r>>2]|0;if((c[l>>2]|0)>0){c[l>>2]=c[m+16>>2];break}else{c[l>>2]=c[m+12>>2];break}}c[l>>2]=(c[p>>2]|0)-(c[(c[(c[r>>2]|0)+8>>2]|0)+24>>2]|0);if((c[l>>2]|0)==0){if((e[(c[r>>2]|0)+4>>1]|0)>1){c[l>>2]=xD(c[n>>2]|0,c[m>>2]|0,c[r>>2]|0,1)|0;break}else{c[l>>2]=a[(c[r>>2]|0)+6>>0]|0;break}}else{m=c[r>>2]|0;if((c[l>>2]|0)>0){c[l>>2]=c[m+16>>2];break}else{c[l>>2]=c[m+12>>2];break}}}}while(0);c[k>>2]=c[l>>2];b=c[k>>2]|0;i=j;return b|0}function xD(f,g,j,k){f=f|0;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;p=i;i=i+160|0;o=p+148|0;B=p+144|0;K=p+140|0;n=p+136|0;J=p+132|0;G=p+128|0;E=p+124|0;q=p+120|0;H=p+116|0;m=p+112|0;w=p+108|0;l=p+104|0;u=p+100|0;s=p+32|0;I=p+88|0;C=p+84|0;t=p;v=p+8|0;r=p+16|0;y=p+24|0;x=p+72|0;F=p+96|0;A=p+80|0;z=p+92|0;c[B>>2]=f;c[K>>2]=g;c[n>>2]=j;c[J>>2]=k;c[m>>2]=0;c[w>>2]=c[(c[n>>2]|0)+8>>2];c[l>>2]=c[c[n>>2]>>2];c[u>>2]=c[K>>2];k=c[u>>2]|0;do{if((c[J>>2]|0)!=0){j=(c[u>>2]|0)+1|0;if((d[k+1>>0]|0)<128){c[I>>2]=d[j>>0]|0;k=1}else{k=(uD(j,I)|0)&255}c[H>>2]=1+(k&255);c[q>>2]=d[c[u>>2]>>0]|0;K=c[q>>2]|0;c[G>>2]=K+(yD(c[I>>2]|0)|0);c[E>>2]=1;c[w>>2]=(c[w>>2]|0)+40}else{I=c[u>>2]|0;if((d[k>>0]|0)<128){c[q>>2]=d[I>>0]|0;I=1}else{I=(uD(I,q)|0)&255}c[H>>2]=I&255;c[G>>2]=c[q>>2];if(!((c[G>>2]|0)>>>0>(c[B>>2]|0)>>>0)){c[E>>2]=0;break}K=(dq(65169)|0)&255;a[(c[n>>2]|0)+7>>0]=K;c[o>>2]=0;K=c[o>>2]|0;i=p;return K|0}}while(0);a:while(1){do{if((b[(c[w>>2]|0)+28>>1]&4|0)!=0){c[C>>2]=d[(c[u>>2]|0)+(c[H>>2]|0)>>0]|0;if((c[C>>2]|0)>>>0>=12){c[m>>2]=1;break}if((c[C>>2]|0)==0){c[m>>2]=-1;break}if((c[C>>2]|0)==7){K=(c[w>>2]|0)+16|0;h[t>>3]=+((c[K>>2]|0)>>>0)+4294967296.0*+(c[K+4>>2]|0);zD((c[u>>2]|0)+(c[G>>2]|0)|0,c[C>>2]|0,s)|0;if(+h[s+8>>3]<+h[t>>3]){c[m>>2]=-1;break}if(!(+h[s+8>>3]>+h[t>>3])){break}c[m>>2]=1;break}else{g=AD(c[C>>2]|0,(c[u>>2]|0)+(c[G>>2]|0)|0)|0;K=v;c[K>>2]=g;c[K+4>>2]=D;K=(c[w>>2]|0)+16|0;g=c[K+4>>2]|0;J=r;c[J>>2]=c[K>>2];c[J+4>>2]=g;J=v;g=c[J+4>>2]|0;K=r;f=c[K+4>>2]|0;if((g|0)<(f|0)|((g|0)==(f|0)?(c[J>>2]|0)>>>0<(c[K>>2]|0)>>>0:0)){c[m>>2]=-1;break}J=v;g=c[J+4>>2]|0;K=r;f=c[K+4>>2]|0;if(!((g|0)>(f|0)|((g|0)==(f|0)?(c[J>>2]|0)>>>0>(c[K>>2]|0)>>>0:0))){break}c[m>>2]=1;break}}else{if((b[(c[w>>2]|0)+28>>1]&8|0)!=0){c[C>>2]=d[(c[u>>2]|0)+(c[H>>2]|0)>>0]|0;if((c[C>>2]|0)>>>0>=12){c[m>>2]=1;break}if((c[C>>2]|0)==0){c[m>>2]=-1;break}h[y>>3]=+h[(c[w>>2]|0)+8>>3];zD((c[u>>2]|0)+(c[G>>2]|0)|0,c[C>>2]|0,s)|0;if((c[C>>2]|0)==7){h[x>>3]=+h[s+8>>3]}else{K=s+16|0;h[x>>3]=+((c[K>>2]|0)>>>0)+4294967296.0*+(c[K+4>>2]|0)}if(+h[x>>3]<+h[y>>3]){c[m>>2]=-1;break}if(!(+h[x>>3]>+h[y>>3])){break}c[m>>2]=1;break}if((b[(c[w>>2]|0)+28>>1]&2|0)==0){k=d[(c[u>>2]|0)+(c[H>>2]|0)>>0]|0;if((b[(c[w>>2]|0)+28>>1]&16|0)==0){c[C>>2]=k;c[m>>2]=(c[C>>2]|0)!=0&1;break}I=(c[u>>2]|0)+(c[H>>2]|0)|0;if((k|0)<128){c[C>>2]=d[I>>0]|0}else{uD(I,C)|0}if(!((c[C>>2]|0)>>>0<12)){if((c[C>>2]&1|0)==0){c[A>>2]=(((c[C>>2]|0)-12|0)>>>0)/2|0;if(((c[G>>2]|0)+(c[A>>2]|0)|0)>>>0>(c[B>>2]|0)>>>0){q=63;break a}if((c[A>>2]|0)<(c[(c[w>>2]|0)+24>>2]|0)){I=c[A>>2]|0}else{I=c[(c[w>>2]|0)+24>>2]|0}c[z>>2]=I;c[m>>2]=XK((c[u>>2]|0)+(c[G>>2]|0)|0,c[(c[w>>2]|0)+4>>2]|0,c[z>>2]|0)|0;if((c[m>>2]|0)!=0){break}c[m>>2]=(c[A>>2]|0)-(c[(c[w>>2]|0)+24>>2]|0);break}}c[m>>2]=-1;break}I=(c[u>>2]|0)+(c[H>>2]|0)|0;if((d[(c[u>>2]|0)+(c[H>>2]|0)>>0]|0)<128){c[C>>2]=d[I>>0]|0}else{uD(I,C)|0}if((c[C>>2]|0)>>>0<12){c[m>>2]=-1;break}if((c[C>>2]&1|0)==0){c[m>>2]=1;break}c[s+24>>2]=(((c[C>>2]|0)-12|0)>>>0)/2|0;if(((c[G>>2]|0)+(c[s+24>>2]|0)|0)>>>0>(c[B>>2]|0)>>>0){q=47;break a}if((c[(c[l>>2]|0)+20+(c[E>>2]<<2)>>2]|0)!=0){a[s+30>>0]=a[(c[l>>2]|0)+4>>0]|0;c[s>>2]=c[(c[l>>2]|0)+12>>2];b[s+28>>1]=2;c[s+4>>2]=(c[u>>2]|0)+(c[G>>2]|0);c[m>>2]=Ut(s,c[w>>2]|0,c[(c[l>>2]|0)+20+(c[E>>2]<<2)>>2]|0)|0;break}if((c[s+24>>2]|0)<(c[(c[w>>2]|0)+24>>2]|0)){I=c[s+24>>2]|0}else{I=c[(c[w>>2]|0)+24>>2]|0}c[F>>2]=I;c[m>>2]=XK((c[u>>2]|0)+(c[G>>2]|0)|0,c[(c[w>>2]|0)+4>>2]|0,c[F>>2]|0)|0;if((c[m>>2]|0)==0){c[m>>2]=(c[s+24>>2]|0)-(c[(c[w>>2]|0)+24>>2]|0)}}}while(0);I=c[E>>2]|0;if((c[m>>2]|0)!=0){q=71;break}c[E>>2]=I+1;c[w>>2]=(c[w>>2]|0)+40;K=yD(c[C>>2]|0)|0;c[G>>2]=(c[G>>2]|0)+K;K=BD(c[C>>2]|0,0)|0;c[H>>2]=(c[H>>2]|0)+K;if(!((c[H>>2]|0)>>>0<(c[q>>2]|0)>>>0)){q=77;break}if((c[E>>2]|0)>=(e[(c[n>>2]|0)+4>>1]|0)){q=77;break}if(!((c[G>>2]|0)>>>0<=(c[B>>2]|0)>>>0)){q=77;break}}if((q|0)==47){K=(dq(65248)|0)&255;a[(c[n>>2]|0)+7>>0]=K;c[o>>2]=0;K=c[o>>2]|0;i=p;return K|0}else if((q|0)==63){K=(dq(65275)|0)&255;a[(c[n>>2]|0)+7>>0]=K;c[o>>2]=0;K=c[o>>2]|0;i=p;return K|0}else if((q|0)==71){if((a[(c[(c[l>>2]|0)+16>>2]|0)+I>>0]|0)!=0){c[m>>2]=0-(c[m>>2]|0)}c[o>>2]=c[m>>2];K=c[o>>2]|0;i=p;return K|0}else if((q|0)==77){c[o>>2]=a[(c[n>>2]|0)+6>>0]|0;K=c[o>>2]|0;i=p;return K|0}return 0}function yD(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;e=b+4|0;f=b;c[f>>2]=a;a=c[f>>2]|0;if((c[f>>2]|0)>>>0>=12){c[e>>2]=((a-12|0)>>>0)/2|0;f=c[e>>2]|0;i=b;return f|0}else{c[e>>2]=d[30816+a>>0]|0;f=c[e>>2]|0;i=b;return f|0}return 0}function zD(e,f,g){e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+32|0;k=n+28|0;j=n+16|0;p=n+8|0;l=n+12|0;o=n;m=n+20|0;q=n+24|0;c[j>>2]=e;c[p>>2]=f;c[l>>2]=g;switch(c[p>>2]|0){case 0:case 11:case 10:{b[(c[l>>2]|0)+28>>1]=1;c[k>>2]=0;e=c[k>>2]|0;i=n;return e|0};case 4:{c[m>>2]=d[c[j>>2]>>0]<<24|d[(c[j>>2]|0)+1>>0]<<16|d[(c[j>>2]|0)+2>>0]<<8|d[(c[j>>2]|0)+3>>0];f=c[m>>2]|0;e=(c[l>>2]|0)+16|0;c[e>>2]=f;c[e+4>>2]=((f|0)<0)<<31>>31;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=4;e=c[k>>2]|0;i=n;return e|0};case 5:{e=d[(c[j>>2]|0)+2>>0]<<24|d[(c[j>>2]|0)+3>>0]<<16|d[(c[j>>2]|0)+4>>0]<<8|d[(c[j>>2]|0)+5>>0];f=a[c[j>>2]>>0]<<8|d[(c[j>>2]|0)+1>>0];f=dL(e|0,0,nL(0,1,f|0,((f|0)<0)<<31>>31|0)|0,D|0)|0;e=(c[l>>2]|0)+16|0;c[e>>2]=f;c[e+4>>2]=D;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=6;e=c[k>>2]|0;i=n;return e|0};case 7:case 6:{f=o;c[f>>2]=d[c[j>>2]>>0]<<24|d[(c[j>>2]|0)+1>>0]<<16|d[(c[j>>2]|0)+2>>0]<<8|d[(c[j>>2]|0)+3>>0];c[f+4>>2]=0;c[m>>2]=d[(c[j>>2]|0)+4>>0]<<24|d[(c[j>>2]|0)+5>>0]<<16|d[(c[j>>2]|0)+6>>0]<<8|d[(c[j>>2]|0)+7>>0];f=c[o>>2]|0;e=o;c[e>>2]=c[m>>2];c[e+4>>2]=f;if((c[p>>2]|0)==6){q=o;f=c[q+4>>2]|0;e=(c[l>>2]|0)+16|0;c[e>>2]=c[q>>2];c[e+4>>2]=f;b[(c[l>>2]|0)+28>>1]=4}else{e=(c[l>>2]|0)+8|0;c[e+0>>2]=c[o+0>>2];c[e+4>>2]=c[o+4>>2];e=(CD(+h[(c[l>>2]|0)+8>>3])|0)!=0;b[(c[l>>2]|0)+28>>1]=e?1:8}c[k>>2]=8;e=c[k>>2]|0;i=n;return e|0};case 2:{f=a[c[j>>2]>>0]<<8|d[(c[j>>2]|0)+1>>0];e=(c[l>>2]|0)+16|0;c[e>>2]=f;c[e+4>>2]=((f|0)<0)<<31>>31;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=2;e=c[k>>2]|0;i=n;return e|0};case 3:{f=a[c[j>>2]>>0]<<16|d[(c[j>>2]|0)+1>>0]<<8|d[(c[j>>2]|0)+2>>0];e=(c[l>>2]|0)+16|0;c[e>>2]=f;c[e+4>>2]=((f|0)<0)<<31>>31;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=3;e=c[k>>2]|0;i=n;return e|0};case 9:case 8:{e=(c[l>>2]|0)+16|0;c[e>>2]=(c[p>>2]|0)-8;c[e+4>>2]=0;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=0;e=c[k>>2]|0;i=n;return e|0};case 1:{f=a[c[j>>2]>>0]|0;e=(c[l>>2]|0)+16|0;c[e>>2]=f;c[e+4>>2]=((f|0)<0)<<31>>31;b[(c[l>>2]|0)+28>>1]=4;c[k>>2]=1;e=c[k>>2]|0;i=n;return e|0};default:{c[q>>2]=(((c[p>>2]|0)-12|0)>>>0)/2|0;c[(c[l>>2]|0)+4>>2]=c[j>>2];c[(c[l>>2]|0)+24>>2]=c[q>>2];c[(c[l>>2]|0)+32>>2]=0;b[(c[l>>2]|0)+28>>1]=b[30808+((c[p>>2]&1)<<1)>>1]|0;c[k>>2]=c[q>>2];e=c[k>>2]|0;i=n;return e|0}}return 0}function AD(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;f=g+8|0;l=g+24|0;h=g+20|0;j=g+16|0;k=g;c[l>>2]=b;c[h>>2]=e;switch(c[l>>2]|0){case 5:{k=d[(c[h>>2]|0)+2>>0]<<24|d[(c[h>>2]|0)+3>>0]<<16|d[(c[h>>2]|0)+4>>0]<<8|d[(c[h>>2]|0)+5>>0];l=a[c[h>>2]>>0]<<8|d[(c[h>>2]|0)+1>>0];b=f;c[b>>2]=dL(k|0,0,nL(0,1,l|0,((l|0)<0)<<31>>31|0)|0,D|0)|0;c[b+4>>2]=D;break};case 4:{c[j>>2]=d[c[h>>2]>>0]<<24|d[(c[h>>2]|0)+1>>0]<<16|d[(c[h>>2]|0)+2>>0]<<8|d[(c[h>>2]|0)+3>>0];l=c[j>>2]|0;b=f;c[b>>2]=l;c[b+4>>2]=((l|0)<0)<<31>>31;break};case 1:case 0:{l=a[c[h>>2]>>0]|0;b=f;c[b>>2]=l;c[b+4>>2]=((l|0)<0)<<31>>31;break};case 6:{b=k;c[b>>2]=d[c[h>>2]>>0]<<24|d[(c[h>>2]|0)+1>>0]<<16|d[(c[h>>2]|0)+2>>0]<<8|d[(c[h>>2]|0)+3>>0];c[b+4>>2]=0;b=c[k>>2]|0;l=k;c[l>>2]=d[(c[h>>2]|0)+4>>0]<<24|d[(c[h>>2]|0)+5>>0]<<16|d[(c[h>>2]|0)+6>>0]<<8|d[(c[h>>2]|0)+7>>0];c[l+4>>2]=b;l=c[k+4>>2]|0;b=f;c[b>>2]=c[k>>2];c[b+4>>2]=l;break};case 3:{l=a[c[h>>2]>>0]<<16|d[(c[h>>2]|0)+1>>0]<<8|d[(c[h>>2]|0)+2>>0];b=f;c[b>>2]=l;c[b+4>>2]=((l|0)<0)<<31>>31;break};case 2:{l=a[c[h>>2]>>0]<<8|d[(c[h>>2]|0)+1>>0];b=f;c[b>>2]=l;c[b+4>>2]=((l|0)<0)<<31>>31;break};default:{b=f;c[b>>2]=(c[l>>2]|0)-8;c[b+4>>2]=0}}b=f;D=c[b+4>>2]|0;i=g;return c[b>>2]|0}function BD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d;e=d+8|0;g=f;c[g>>2]=a;c[g+4>>2]=b;c[e>>2]=0;while(1){c[e>>2]=(c[e>>2]|0)+1;a=f;a=eL(c[a>>2]|0,c[a+4>>2]|0,7)|0;g=f;c[g>>2]=a;c[g+4>>2]=D;g=f;if(!((c[g>>2]|0)!=0|(c[g+4>>2]|0)!=0)){b=4;break}if((c[e>>2]|0)>=9){b=4;break}}if((b|0)==4){i=d;return c[e>>2]|0}return 0}function CD(a){a=+a;var b=0,d=0,e=0,f=0,g=0;d=i;i=i+32|0;g=d+16|0;b=d+24|0;f=d+8|0;e=d;h[g>>3]=a;h[f>>3]=+h[g>>3];h[e>>3]=+h[f>>3];c[b>>2]=+h[f>>3]!=+h[e>>3]&1;i=d;return c[b>>2]|0}function DD(f){f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;j=g+12|0;l=g;h=g+4|0;k=g+8|0;c[j>>2]=f;c[h>>2]=0;while(1){if((c[h>>2]|0)!=0){f=5;break}f=c[(c[j>>2]|0)+128+(b[(c[j>>2]|0)+84>>1]<<2)>>2]|0;c[k>>2]=f;if(!((a[f+3>>0]|0)!=0^1)){f=5;break}c[l>>2]=zo((c[(c[k>>2]|0)+56>>2]|0)+(e[(c[k>>2]|0)+18>>1]&(d[(c[(c[k>>2]|0)+64>>2]|0)+(e[(c[j>>2]|0)+86+(b[(c[j>>2]|0)+84>>1]<<1)>>1]<<1)>>0]<<8|d[(c[(c[k>>2]|0)+64>>2]|0)+(e[(c[j>>2]|0)+86+(b[(c[j>>2]|0)+84>>1]<<1)>>1]<<1)+1>>0]))|0)|0;c[h>>2]=$C(c[j>>2]|0,c[l>>2]|0)|0}if((f|0)==5){i=g;return c[h>>2]|0}return 0}function ED(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;f=d+16|0;j=d;h=d+4|0;e=d+8|0;g=d+12|0;c[f>>2]=a;c[j>>2]=b;c[e>>2]=Vu(c[c[f>>2]>>2]|0,0,(c[j>>2]|0)+12|0,0)|0;if((c[e>>2]|0)==0){a=c[e>>2]|0;i=d;return a|0}c[h>>2]=ef(c[c[f>>2]>>2]|0,c[(c[(c[j>>2]|0)+4>>2]|0)+20>>2]|0)|0;if(!((c[h>>2]|0)==0|(c[h>>2]|0)>=2)){a=c[e>>2]|0;i=d;return a|0}c[g>>2]=c[c[f>>2]>>2];a=pe(c[g>>2]|0,c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)>>2]|0)|0;c[(c[e>>2]|0)+8+(((c[c[e>>2]>>2]|0)-1|0)*72|0)+4>>2]=a;a=c[e>>2]|0;i=d;return a|0}function FD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d;f=d+4|0;c[g>>2]=a;c[e>>2]=b;if((c[e>>2]|0)==0){i=d;return}c[f>>2]=c[(c[e>>2]|0)+28>>2];gu(c[g>>2]|0,c[(c[f>>2]|0)+20>>2]|0);cu(c[g>>2]|0,c[(c[f>>2]|0)+24>>2]|0);du(c[g>>2]|0,c[(c[f>>2]|0)+8>>2]|0);gu(c[g>>2]|0,c[(c[e>>2]|0)+12>>2]|0);cc(c[g>>2]|0,c[e>>2]|0);i=d;return}function GD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;d=e+12|0;f=e;g=e+4|0;h=e+8|0;c[f>>2]=a;c[g>>2]=b;if((c[f>>2]|0)!=0){if((c[g>>2]|0)!=0){c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[c[g>>2]>>2]|0)){b=9;break}if((Qx(c[f>>2]|0,c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*20|0)+4>>2]|0)|0)>=0){b=7;break}c[h>>2]=(c[h>>2]|0)+1}if((b|0)==7){c[d>>2]=1;a=c[d>>2]|0;i=e;return a|0}else if((b|0)==9){c[d>>2]=0;a=c[d>>2]|0;i=e;return a|0}}}c[d>>2]=1;a=c[d>>2]|0;i=e;return a|0}function HD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;g=d;f=d+4|0;c[g>>2]=a;c[f>>2]=b;b=(c[f>>2]|0)==0;do{if((c[g>>2]|0)==0){c[e>>2]=b&1}else{if(b){c[e>>2]=0;break}else{c[e>>2]=(Dc(c[g>>2]|0,c[f>>2]|0)|0)==0&1;break}}}while(0);i=d;return c[e>>2]|0}function ID(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;h=g+12|0;k=g;j=g+4|0;l=g+8|0;c[k>>2]=a;c[j>>2]=f;if((e[(c[k>>2]|0)+50>>1]|0)!=(e[(c[j>>2]|0)+50>>1]|0)){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}if((d[(c[k>>2]|0)+54>>0]|0)!=(d[(c[j>>2]|0)+54>>0]|0)){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(e[(c[j>>2]|0)+50>>1]|0)){f=14;break}if((b[(c[(c[j>>2]|0)+4>>2]|0)+(c[l>>2]<<1)>>1]|0)!=(b[(c[(c[k>>2]|0)+4>>2]|0)+(c[l>>2]<<1)>>1]|0)){f=8;break}if((d[(c[(c[j>>2]|0)+28>>2]|0)+(c[l>>2]|0)>>0]|0)!=(d[(c[(c[k>>2]|0)+28>>2]|0)+(c[l>>2]|0)>>0]|0)){f=10;break}if((HD(c[(c[(c[j>>2]|0)+32>>2]|0)+(c[l>>2]<<2)>>2]|0,c[(c[(c[k>>2]|0)+32>>2]|0)+(c[l>>2]<<2)>>2]|0)|0)==0){f=12;break}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==8){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}else if((f|0)==10){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}else if((f|0)==12){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}else if((f|0)==14){if((jx(c[(c[j>>2]|0)+36>>2]|0,c[(c[k>>2]|0)+36>>2]|0,-1)|0)!=0){c[h>>2]=0;a=c[h>>2]|0;i=g;return a|0}else{c[h>>2]=1;a=c[h>>2]|0;i=g;return a|0}}return 0}function JD(a,d,e,f,g,h,j,k){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;l=i;i=i+96|0;z=l+88|0;y=l+84|0;v=l+80|0;C=l+76|0;A=l+72|0;D=l+68|0;m=l+64|0;q=l+60|0;n=l+56|0;x=l+52|0;u=l+12|0;E=l;r=l+4|0;w=l+8|0;s=l+16|0;o=l+20|0;t=l+24|0;p=l+28|0;B=l+32|0;c[z>>2]=a;c[y>>2]=d;c[v>>2]=e;c[C>>2]=f;c[A>>2]=g;c[D>>2]=h;c[m>>2]=j;c[q>>2]=k;c[n>>2]=c[(c[z>>2]|0)+8>>2];c[x>>2]=0;c[u>>2]=0;c[t>>2]=c[c[z>>2]>>2];c[p>>2]=ww(c[t>>2]|0,c[v>>2]|0)|0;a=c[z>>2]|0;c[x>>2]=Pu(a,0,Su(c[t>>2]|0,27,30992)|0)|0;if((c[A>>2]|0)!=0){d=c[z>>2]|0;a=c[x>>2]|0;c[x>>2]=Pu(d,a,hx(c[t>>2]|0,c[A>>2]|0,0)|0)|0}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(b[(c[v>>2]|0)+38>>1]|0)){break}j=c[t>>2]|0;k=c[w>>2]|0;if((c[(c[D>>2]|0)+(c[w>>2]<<2)>>2]|0)>=0){c[E>>2]=hx(j,c[(c[(c[C>>2]|0)+4>>2]|0)+((c[(c[D>>2]|0)+(k<<2)>>2]|0)*20|0)>>2]|0,0)|0}else{c[E>>2]=Su(j,27,c[(c[(c[v>>2]|0)+4>>2]|0)+(k*24|0)>>2]|0)|0}c[x>>2]=Pu(c[z>>2]|0,c[x>>2]|0,c[E>>2]|0)|0;c[w>>2]=(c[w>>2]|0)+1}c[u>>2]=Ou(c[z>>2]|0,c[x>>2]|0,c[y>>2]|0,c[m>>2]|0,0,0,0,0,0,0)|0;a=(c[z>>2]|0)+68|0;d=c[a>>2]|0;c[a>>2]=d+1;c[r>>2]=d;Qv(c[n>>2]|0,55,c[r>>2]|0,(b[(c[v>>2]|0)+38>>1]|0)+1+((c[A>>2]|0)!=0&1)|0)|0;gf(c[n>>2]|0,8);Hz(B,14,c[r>>2]|0);Mu(c[z>>2]|0,c[u>>2]|0,B)|0;d=(c[z>>2]|0)+72|0;a=(c[d>>2]|0)+1|0;c[d>>2]=a;c[o>>2]=a;a=(c[z>>2]|0)+72|0;c[a>>2]=(c[a>>2]|0)+((b[(c[v>>2]|0)+38>>1]|0)+1);c[s>>2]=Qv(c[n>>2]|0,105,c[r>>2]|0,0)|0;Tv(c[n>>2]|0,46,c[r>>2]|0,0,c[o>>2]|0)|0;Tv(c[n>>2]|0,46,c[r>>2]|0,(c[A>>2]|0)!=0?1:0,(c[o>>2]|0)+1|0)|0;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(b[(c[v>>2]|0)+38>>1]|0)){break}Tv(c[n>>2]|0,46,c[r>>2]|0,(c[w>>2]|0)+1+((c[A>>2]|0)!=0&1)|0,(c[o>>2]|0)+2+(c[w>>2]|0)|0)|0;c[w>>2]=(c[w>>2]|0)+1}aB(c[z>>2]|0,c[v>>2]|0);Sv(c[n>>2]|0,15,0,(b[(c[v>>2]|0)+38>>1]|0)+2|0,c[o>>2]|0,c[p>>2]|0,-10)|0;gf(c[n>>2]|0,((c[q>>2]|0)==10?2:c[q>>2]|0)&255);xw(c[z>>2]|0);Qv(c[n>>2]|0,9,c[r>>2]|0,(c[s>>2]|0)+1|0)|0;jw(c[n>>2]|0,c[s>>2]|0);Qv(c[n>>2]|0,58,c[r>>2]|0,0)|0;du(c[t>>2]|0,c[u>>2]|0);i=l;return}function KD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e;g=e+4|0;c[f>>2]=a;c[h>>2]=b;c[g>>2]=d;c[(c[h>>2]|0)+4>>2]=c[f>>2];c[c[h>>2]>>2]=c[(c[f>>2]|0)+492>>2];c[(c[f>>2]|0)+492>>2]=c[g>>2];i=e;return}function LD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+64|0;k=m+48|0;p=m+44|0;f=m+40|0;l=m+36|0;j=m+16|0;g=m+8|0;n=m+4|0;h=m;o=m+12|0;c[k>>2]=a;c[p>>2]=b;c[f>>2]=d;c[l>>2]=e;c[h>>2]=c[c[k>>2]>>2];c[o>>2]=ef(c[h>>2]|0,c[(c[p>>2]|0)+68>>2]|0)|0;c[f>>2]=hx(c[h>>2]|0,c[f>>2]|0,0)|0;c[n>>2]=Vu(c[h>>2]|0,0,0,0)|0;if((c[n>>2]|0)!=0){a=pe(c[h>>2]|0,c[c[p>>2]>>2]|0)|0;c[(c[n>>2]|0)+16>>2]=a;a=pe(c[h>>2]|0,c[(c[(c[h>>2]|0)+16>>2]|0)+(c[o>>2]<<4)>>2]|0)|0;c[(c[n>>2]|0)+12>>2]=a}c[g>>2]=Ou(c[k>>2]|0,0,c[n>>2]|0,c[f>>2]|0,0,0,0,0,0,0)|0;Hz(j,12,c[l>>2]|0);Mu(c[k>>2]|0,c[g>>2]|0,j)|0;du(c[h>>2]|0,c[g>>2]|0);i=m;return}function MD(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;f=i;i=i+16|0;e=f+4|0;g=f;c[e>>2]=a;c[g>>2]=b;a=c[g>>2]|0;b=(c[e>>2]|0)+60|0;c[a+0>>2]=c[b+0>>2];c[a+4>>2]=c[b+4>>2];i=f;return d[(c[e>>2]|0)+38>>0]|0|0}function ND(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[d>>2]|0)+4>>2]|0)==0){i=b;return}c[(c[(c[d>>2]|0)+4>>2]|0)+492>>2]=c[c[d>>2]>>2];c[(c[d>>2]|0)+4>>2]=0;i=b;return}function OD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+48|0;f=g+32|0;o=g+28|0;l=g+24|0;k=g+20|0;j=g+16|0;h=g+8|0;m=g+4|0;p=g;n=g+12|0;c[o>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;do{if(((c[c[l>>2]>>2]|0)+(c[k>>2]|0)|0)>>>0>(c[(c[l>>2]|0)+4>>2]|0)>>>0){c[p>>2]=(c[c[l>>2]>>2]|0)+(c[k>>2]|0);c[m>>2]=Ot(c[o>>2]|0,c[l>>2]|0,80+(((c[p>>2]|0)-1|0)*72|0)|0)|0;if((c[m>>2]|0)!=0){c[l>>2]=c[m>>2];c[n>>2]=((((Vv(c[o>>2]|0,c[m>>2]|0)|0)-80|0)>>>0)/72|0)+1;c[(c[l>>2]|0)+4>>2]=c[n>>2];break}c[f>>2]=c[l>>2];a=c[f>>2]|0;i=g;return a|0}}while(0);c[h>>2]=(c[c[l>>2]>>2]|0)-1;while(1){if((c[h>>2]|0)<(c[j>>2]|0)){break}e=(c[l>>2]|0)+8+(((c[h>>2]|0)+(c[k>>2]|0)|0)*72|0)+0|0;n=(c[l>>2]|0)+8+((c[h>>2]|0)*72|0)+0|0;m=e+72|0;do{c[e>>2]=c[n>>2];e=e+4|0;n=n+4|0}while((e|0)<(m|0));c[h>>2]=(c[h>>2]|0)+ -1}a=c[l>>2]|0;c[a>>2]=(c[a>>2]|0)+(c[k>>2]|0);aL((c[l>>2]|0)+8+((c[j>>2]|0)*72|0)|0,0,(c[k>>2]|0)*72|0)|0;c[h>>2]=c[j>>2];while(1){if((c[h>>2]|0)>=((c[j>>2]|0)+(c[k>>2]|0)|0)){break}c[(c[l>>2]|0)+8+((c[h>>2]|0)*72|0)+40>>2]=-1;c[h>>2]=(c[h>>2]|0)+1}c[f>>2]=c[l>>2];a=c[f>>2]|0;i=g;return a|0}function PD(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;h=f;g=f+20|0;j=f+4|0;m=f+8|0;l=f+12|0;k=f+16|0;c[j>>2]=a;c[m>>2]=b;c[l>>2]=e;c[k>>2]=d[c[m>>2]>>0]|0;if((c[l>>2]|0)>1){if((c[k>>2]|0)==10|(c[k>>2]|0)==11){bf(c[j>>2]|0,31824,h);c[g>>2]=1;m=c[g>>2]|0;i=f;return m|0}}c[g>>2]=0;m=c[g>>2]|0;i=f;return m|0}function QD(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=0;_x(c[e>>2]|0,b);i=d;return c[b>>2]|0} + + + +function Fu(f,g,h,j,k,l,m,n,o,p){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0;q=i;i=i+240|0;D=q;L=q+232|0;la=q+228|0;ja=q+224|0;t=q+220|0;x=q+216|0;A=q+212|0;$=q+208|0;w=q+204|0;ma=q+200|0;W=q+196|0;r=q+192|0;E=q+188|0;u=q+184|0;s=q+180|0;S=q+176|0;Y=q+172|0;da=q+168|0;ha=q+144|0;I=q+136|0;v=q+132|0;F=q+128|0;C=q+124|0;U=q+120|0;H=q+236|0;O=q+64|0;M=q+56|0;V=q+52|0;ea=q+48|0;ca=q+44|0;ia=q+60|0;ka=q+32|0;ga=q+28|0;fa=q+24|0;N=q+36|0;J=q+40|0;G=q+112|0;K=q+68|0;X=q+72|0;P=q+76|0;R=q+80|0;T=q+84|0;Q=q+88|0;B=q+92|0;_=q+96|0;ba=q+100|0;Z=q+104|0;aa=q+108|0;z=q+116|0;c[L>>2]=f;c[la>>2]=g;c[ja>>2]=h;c[t>>2]=j;c[x>>2]=k;c[A>>2]=l;c[$>>2]=m;c[w>>2]=n;c[ma>>2]=o;c[W>>2]=p;c[r>>2]=0;c[E>>2]=0;c[u>>2]=0;c[s>>2]=0;c[v>>2]=c[c[L>>2]>>2];c[U>>2]=0;c[M>>2]=0;c[ea>>2]=0;c[ca>>2]=0;a:do{if((d[(c[v>>2]|0)+64>>0]|0)==0){if((d[(c[L>>2]|0)+451>>0]|0)==0){if(0==(gy(c[L>>2]|0)|0)){g=c[L>>2]|0;if((c[t>>2]|0)!=0){c[C>>2]=ky(g,c[la>>2]|0,c[ja>>2]|0,U)|0;if((c[C>>2]|0)<0){break}if((a[(c[v>>2]|0)+137>>0]|0)==0){c[E>>2]=jA(c[L>>2]|0,c[t>>2]|0)|0;if((c[(c[ja>>2]|0)+4>>2]|0)==0){if((c[E>>2]|0)!=0){if((c[(c[E>>2]|0)+68>>2]|0)==(c[(c[(c[v>>2]|0)+16>>2]|0)+28>>2]|0)){c[C>>2]=1}}}}kA(ha,c[L>>2]|0,c[C>>2]|0,16696,c[U>>2]|0);lA(ha,c[t>>2]|0)|0;c[E>>2]=Zv(c[L>>2]|0,0,(c[t>>2]|0)+8|0)|0;if((c[E>>2]|0)==0){break}if((c[C>>2]|0)==1){if((c[(c[(c[v>>2]|0)+16>>2]|0)+(c[C>>2]<<4)+12>>2]|0)!=(c[(c[E>>2]|0)+68>>2]|0)){f=c[L>>2]|0;c[D>>2]=c[c[E>>2]>>2];bf(f,32376,D);break}}if((a[(c[E>>2]|0)+44>>0]&32|0)!=0){c[ca>>2]=Dy(c[E>>2]|0)|0}}else{c[E>>2]=c[g+484>>2];if((c[E>>2]|0)==0){break}c[C>>2]=ef(c[v>>2]|0,c[(c[E>>2]|0)+68>>2]|0)|0}c[F>>2]=(c[(c[v>>2]|0)+16>>2]|0)+(c[C>>2]<<4);if((Tb(c[c[E>>2]>>2]|0,21672,7)|0)==0){if((Tb((c[c[E>>2]>>2]|0)+7|0,32432,9)|0)!=0){f=c[L>>2]|0;c[D>>2]=c[c[E>>2]>>2];bf(f,32448,D);break}}if((c[(c[E>>2]|0)+12>>2]|0)!=0){bf(c[L>>2]|0,32480,D);break}if((a[(c[E>>2]|0)+44>>0]&16|0)!=0){bf(c[L>>2]|0,32512,D);break}if((c[U>>2]|0)!=0){c[s>>2]=Iv(c[v>>2]|0,c[U>>2]|0)|0;if((c[s>>2]|0)==0){break}if(0!=(uw(c[L>>2]|0,c[s>>2]|0)|0)){break}if((a[(c[v>>2]|0)+137>>0]|0)==0){if((cw(c[v>>2]|0,c[s>>2]|0,0)|0)!=0){f=c[L>>2]|0;c[D>>2]=c[s>>2];bf(f,32552,D);break}}if((tw(c[v>>2]|0,c[s>>2]|0,c[c[F>>2]>>2]|0)|0)!=0){y=c[L>>2]|0;if((c[W>>2]|0)!=0){aw(y,c[C>>2]|0);break}else{c[D>>2]=c[s>>2];bf(y,32592,D);break}}}else{c[ka>>2]=c[(c[E>>2]|0)+8>>2];c[ia>>2]=1;while(1){if((c[ka>>2]|0)==0){break}c[ka>>2]=c[(c[ka>>2]|0)+20>>2];c[ia>>2]=(c[ia>>2]|0)+1}f=c[v>>2]|0;o=c[ia>>2]|0;c[D>>2]=c[c[E>>2]>>2];c[D+4>>2]=o;c[s>>2]=cf(f,32616,D)|0;if((c[s>>2]|0)==0){break}}c[ga>>2]=c[c[F>>2]>>2];if((Lv(c[L>>2]|0,18,(c[C>>2]|0)==1?21432:21456,0,c[ga>>2]|0)|0)==0){c[Y>>2]=1;c[Y>>2]=(c[C>>2]|0)==1?3:1;if((Lv(c[L>>2]|0,c[Y>>2]|0,c[s>>2]|0,c[c[E>>2]>>2]|0,c[ga>>2]|0)|0)==0){if((c[x>>2]|0)==0){c[x>>2]=Pu(c[L>>2]|0,0,0)|0;if((c[x>>2]|0)==0){break}f=pe(c[c[L>>2]>>2]|0,c[(c[(c[E>>2]|0)+4>>2]|0)+(((b[(c[E>>2]|0)+38>>1]|0)-1|0)*24|0)>>2]|0)|0;c[(c[(c[x>>2]|0)+4>>2]|0)+4>>2]=f;a[(c[(c[x>>2]|0)+4>>2]|0)+12>>0]=c[ma>>2]}c[Y>>2]=0;while(1){if((c[Y>>2]|0)>=(c[c[x>>2]>>2]|0)){break}c[fa>>2]=c[(c[(c[x>>2]|0)+4>>2]|0)+((c[Y>>2]|0)*20|0)>>2];if((c[fa>>2]|0)!=0){f=1+(Ub(c[(c[fa>>2]|0)+8>>2]|0)|0)|0;c[M>>2]=(c[M>>2]|0)+f}c[Y>>2]=(c[Y>>2]|0)+1}c[S>>2]=Ub(c[s>>2]|0)|0;if((c[ca>>2]|0)!=0){W=e[(c[ca>>2]|0)+50>>1]|0}else{W=1}c[V>>2]=W;c[u>>2]=VB(c[v>>2]|0,(c[c[x>>2]>>2]|0)+(c[V>>2]|0)&65535,(c[S>>2]|0)+(c[M>>2]|0)+1|0,ea)|0;if((a[(c[v>>2]|0)+64>>0]|0)==0){c[c[u>>2]>>2]=c[ea>>2];c[ea>>2]=(c[ea>>2]|0)+((c[S>>2]|0)+1);fL(c[c[u>>2]>>2]|0,c[s>>2]|0,(c[S>>2]|0)+1|0)|0;c[(c[u>>2]|0)+12>>2]=c[E>>2];a[(c[u>>2]|0)+54>>0]=c[A>>2];f=(c[u>>2]|0)+55|0;a[f>>0]=a[f>>0]&-9|((c[A>>2]|0)!=0&1)<<3&255;f=(c[u>>2]|0)+55|0;a[f>>0]=a[f>>0]&-4|((c[U>>2]|0)!=0?0:1)&3;c[(c[u>>2]|0)+24>>2]=c[(c[(c[v>>2]|0)+16>>2]|0)+(c[C>>2]<<4)+12>>2];b[(c[u>>2]|0)+50>>1]=c[c[x>>2]>>2];if((c[w>>2]|0)!=0){KE(c[L>>2]|0,c[E>>2]|0,16,c[w>>2]|0,0);c[(c[u>>2]|0)+36>>2]=c[w>>2];c[w>>2]=0}if((d[(c[(c[F>>2]|0)+12>>2]|0)+76>>0]|0)>=4){c[I>>2]=-1}else{c[I>>2]=0}c[Y>>2]=0;c[H>>2]=c[(c[x>>2]|0)+4>>2];while(1){if((c[Y>>2]|0)>=(c[c[x>>2]>>2]|0)){break}c[N>>2]=c[(c[H>>2]|0)+4>>2];c[da>>2]=0;c[O>>2]=c[(c[E>>2]|0)+4>>2];while(1){if((c[da>>2]|0)>=(b[(c[E>>2]|0)+38>>1]|0)){break}if((Dc(c[N>>2]|0,c[c[O>>2]>>2]|0)|0)==0){break}c[da>>2]=(c[da>>2]|0)+1;c[O>>2]=(c[O>>2]|0)+24}if((c[da>>2]|0)>=(b[(c[E>>2]|0)+38>>1]|0)){y=65;break}b[(c[(c[u>>2]|0)+4>>2]|0)+(c[Y>>2]<<1)>>1]=c[da>>2];if((c[c[H>>2]>>2]|0)!=0){c[G>>2]=c[(c[c[H>>2]>>2]|0)+8>>2];c[K>>2]=(Ub(c[G>>2]|0)|0)+1;fL(c[ea>>2]|0,c[G>>2]|0,c[K>>2]|0)|0;c[G>>2]=c[ea>>2];c[ea>>2]=(c[ea>>2]|0)+(c[K>>2]|0);c[M>>2]=(c[M>>2]|0)-(c[K>>2]|0)}else{f=c[(c[(c[E>>2]|0)+4>>2]|0)+((c[da>>2]|0)*24|0)+16>>2]|0;c[G>>2]=f;c[G>>2]=(c[G>>2]|0)!=0?f:3640}if((a[(c[v>>2]|0)+137>>0]|0)==0){if((ty(c[L>>2]|0,c[G>>2]|0)|0)==0){break a}}c[(c[(c[u>>2]|0)+32>>2]|0)+(c[Y>>2]<<2)>>2]=c[G>>2];c[J>>2]=d[(c[H>>2]|0)+12>>0]&c[I>>2];a[(c[(c[u>>2]|0)+28>>2]|0)+(c[Y>>2]|0)>>0]=c[J>>2];if((d[(c[(c[E>>2]|0)+4>>2]|0)+((c[da>>2]|0)*24|0)+20>>0]|0)==0){f=(c[u>>2]|0)+55|0;a[f>>0]=a[f>>0]&-9}c[Y>>2]=(c[Y>>2]|0)+1;c[H>>2]=(c[H>>2]|0)+20}if((y|0)==65){f=c[L>>2]|0;o=c[N>>2]|0;c[D>>2]=c[c[E>>2]>>2];c[D+4>>2]=o;bf(f,32640,D);a[(c[L>>2]|0)+17>>0]=1;break}b:do{if((c[ca>>2]|0)!=0){c[da>>2]=0;while(1){if((c[da>>2]|0)>=(e[(c[ca>>2]|0)+50>>1]|0)){break b}c[X>>2]=b[(c[(c[ca>>2]|0)+4>>2]|0)+(c[da>>2]<<1)>>1]|0;if((LE(c[(c[u>>2]|0)+4>>2]|0,e[(c[u>>2]|0)+50>>1]|0,c[X>>2]|0)|0)!=0){f=(c[u>>2]|0)+52|0;b[f>>1]=(b[f>>1]|0)+ -1<<16>>16}else{b[(c[(c[u>>2]|0)+4>>2]|0)+(c[Y>>2]<<1)>>1]=c[X>>2];c[(c[(c[u>>2]|0)+32>>2]|0)+(c[Y>>2]<<2)>>2]=c[(c[(c[ca>>2]|0)+32>>2]|0)+(c[da>>2]<<2)>>2];a[(c[(c[u>>2]|0)+28>>2]|0)+(c[Y>>2]|0)>>0]=a[(c[(c[ca>>2]|0)+28>>2]|0)+(c[da>>2]|0)>>0]|0;c[Y>>2]=(c[Y>>2]|0)+1}c[da>>2]=(c[da>>2]|0)+1}}else{b[(c[(c[u>>2]|0)+4>>2]|0)+(c[Y>>2]<<1)>>1]=-1;c[(c[(c[u>>2]|0)+32>>2]|0)+(c[Y>>2]<<2)>>2]=3640}}while(0);Oy(c[u>>2]|0);if((c[(c[L>>2]|0)+484>>2]|0)==0){ME(c[u>>2]|0)}c:do{if((c[E>>2]|0)==(c[(c[L>>2]|0)+484>>2]|0)){c[P>>2]=c[(c[E>>2]|0)+8>>2];while(1){if((c[P>>2]|0)==0){break c}if((e[(c[P>>2]|0)+50>>1]|0)==(e[(c[u>>2]|0)+50>>1]|0)){c[R>>2]=0;while(1){if((c[R>>2]|0)>=(e[(c[P>>2]|0)+50>>1]|0)){break}if((b[(c[(c[P>>2]|0)+4>>2]|0)+(c[R>>2]<<1)>>1]|0)!=(b[(c[(c[u>>2]|0)+4>>2]|0)+(c[R>>2]<<1)>>1]|0)){break}c[T>>2]=c[(c[(c[P>>2]|0)+32>>2]|0)+(c[R>>2]<<2)>>2];c[Q>>2]=c[(c[(c[u>>2]|0)+32>>2]|0)+(c[R>>2]<<2)>>2];if((c[T>>2]|0)!=(c[Q>>2]|0)){if((Dc(c[T>>2]|0,c[Q>>2]|0)|0)!=0){break}}c[R>>2]=(c[R>>2]|0)+1}if((c[R>>2]|0)==(e[(c[P>>2]|0)+50>>1]|0)){break}}c[P>>2]=c[(c[P>>2]|0)+20>>2]}if((d[(c[P>>2]|0)+54>>0]|0)==(d[(c[u>>2]|0)+54>>0]|0)){break a}do{if((d[(c[P>>2]|0)+54>>0]|0)!=10){if((d[(c[u>>2]|0)+54>>0]|0)==10){break}f=c[L>>2]|0;c[D>>2]=0;bf(f,32672,D)}}while(0);if((d[(c[P>>2]|0)+54>>0]|0)!=10){break a}a[(c[P>>2]|0)+54>>0]=a[(c[u>>2]|0)+54>>0]|0;break a}}while(0);do{if((a[(c[v>>2]|0)+137>>0]|0)!=0){o=(c[(c[u>>2]|0)+24>>2]|0)+24|0;f=c[c[u>>2]>>2]|0;C=Ub(c[c[u>>2]>>2]|0)|0;c[B>>2]=Eh(o,f,C,c[u>>2]|0)|0;C=c[v>>2]|0;if((c[B>>2]|0)!=0){a[C+64>>0]=1;break a}f=C+24|0;c[f>>2]=c[f>>2]|2;if((c[t>>2]|0)==0){break}c[(c[u>>2]|0)+44>>2]=c[(c[v>>2]|0)+132>>2]}else{if((c[(c[L>>2]|0)+64>>2]|0)!=0){break}if((a[(c[E>>2]|0)+44>>0]&32|0)!=0){if((c[t>>2]|0)==0){break}}o=(c[L>>2]|0)+72|0;f=(c[o>>2]|0)+1|0;c[o>>2]=f;c[Z>>2]=f;c[_>>2]=Ov(c[L>>2]|0)|0;if((c[_>>2]|0)==0){break a}$v(c[L>>2]|0,1,c[C>>2]|0);Qv(c[_>>2]|0,117,c[C>>2]|0,c[Z>>2]|0)|0;if((c[$>>2]|0)!=0){c[aa>>2]=(c[(c[L>>2]|0)+504>>2]|0)-(c[c[U>>2]>>2]|0)+(c[(c[L>>2]|0)+508>>2]|0);if((a[(c[c[U>>2]>>2]|0)+((c[aa>>2]|0)-1)>>0]|0)==59){c[aa>>2]=(c[aa>>2]|0)+ -1}f=c[v>>2]|0;h=c[aa>>2]|0;o=c[c[U>>2]>>2]|0;c[D>>2]=(c[A>>2]|0)==0?1784:32744;c[D+4>>2]=h;c[D+8>>2]=o;c[ba>>2]=cf(f,32720,D)|0}else{c[ba>>2]=0}f=c[L>>2]|0;l=(c[C>>2]|0)==1?21432:21456;k=c[c[u>>2]>>2]|0;j=c[c[E>>2]>>2]|0;h=c[Z>>2]|0;o=c[ba>>2]|0;c[D>>2]=c[(c[(c[v>>2]|0)+16>>2]|0)+(c[C>>2]<<4)>>2];c[D+4>>2]=l;c[D+8>>2]=k;c[D+12>>2]=j;c[D+16>>2]=h;c[D+20>>2]=o;Nv(f,32752,D);cc(c[v>>2]|0,c[ba>>2]|0);if((c[t>>2]|0)==0){break}Vy(c[L>>2]|0,c[u>>2]|0,c[Z>>2]|0);Pv(c[L>>2]|0,c[C>>2]|0);h=c[_>>2]|0;o=c[C>>2]|0;f=c[v>>2]|0;c[D>>2]=c[c[u>>2]>>2];Rv(h,o,cf(f,32800,D)|0);oy(c[_>>2]|0,139,0)|0}}while(0);if((d[(c[v>>2]|0)+137>>0]|0)==0){if((c[t>>2]|0)!=0){break}}do{if((c[A>>2]|0)!=5){y=123}else{if((c[(c[E>>2]|0)+8>>2]|0)==0){y=123;break}if((d[(c[(c[E>>2]|0)+8>>2]|0)+54>>0]|0)==5){y=123;break}c[z>>2]=c[(c[E>>2]|0)+8>>2];while(1){if((c[(c[z>>2]|0)+20>>2]|0)!=0){B=(d[(c[(c[z>>2]|0)+20>>2]|0)+54>>0]|0)!=5}else{B=0}A=c[(c[z>>2]|0)+20>>2]|0;if(!B){break}c[z>>2]=A}c[(c[u>>2]|0)+20>>2]=A;c[(c[z>>2]|0)+20>>2]=c[u>>2]}}while(0);if((y|0)==123){c[(c[u>>2]|0)+20>>2]=c[(c[E>>2]|0)+8>>2];c[(c[E>>2]|0)+8>>2]=c[u>>2]}c[r>>2]=c[u>>2];c[u>>2]=0}}}}}}}while(0);if((c[u>>2]|0)==0){f=c[v>>2]|0;o=c[w>>2]|0;gu(f,o);o=c[v>>2]|0;f=c[x>>2]|0;cu(o,f);f=c[v>>2]|0;o=c[t>>2]|0;fu(f,o);o=c[v>>2]|0;f=c[s>>2]|0;cc(o,f);f=c[r>>2]|0;i=q;return f|0}NE(c[v>>2]|0,c[u>>2]|0);f=c[v>>2]|0;o=c[w>>2]|0;gu(f,o);o=c[v>>2]|0;f=c[x>>2]|0;cu(o,f);f=c[v>>2]|0;o=c[t>>2]|0;fu(f,o);o=c[v>>2]|0;f=c[s>>2]|0;cc(o,f);f=c[r>>2]|0;i=q;return f|0}function Gu(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;h=j;g=j+4|0;k=j+8|0;c[f>>2]=b;c[h>>2]=e;c[g>>2]=c[(c[f>>2]|0)+484>>2];c[k>>2]=c[c[f>>2]>>2];if((c[g>>2]|0)!=0){if((a[(c[f>>2]|0)+451>>0]|0)==0){if((Rg(c[(c[(c[k>>2]|0)+16>>2]|0)+(d[(c[k>>2]|0)+136>>0]<<4)+4>>2]|0)|0)==0){b=Pu(c[f>>2]|0,c[(c[g>>2]|0)+24>>2]|0,c[h>>2]|0)|0;c[(c[g>>2]|0)+24>>2]=b;if((c[(c[f>>2]|0)+324>>2]|0)==0){i=j;return}Qu(c[f>>2]|0,c[(c[g>>2]|0)+24>>2]|0,(c[f>>2]|0)+320|0,1);i=j;return}}}gu(c[c[f>>2]>>2]|0,c[h>>2]|0);i=j;return}function Hu(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;p=i;i=i+80|0;u=p;q=p+64|0;n=p+60|0;C=p+56|0;o=p+52|0;z=p+48|0;w=p+44|0;m=p+40|0;t=p+68|0;s=p+28|0;A=p+24|0;k=p+20|0;x=p+16|0;y=p+12|0;B=p+8|0;v=p+32|0;r=p+36|0;c[q>>2]=e;c[n>>2]=f;c[C>>2]=g;c[o>>2]=h;c[z>>2]=j;c[w>>2]=c[c[q>>2]>>2];c[m>>2]=0;c[s>>2]=c[(c[q>>2]|0)+484>>2];a:do{if((c[s>>2]|0)!=0){if((d[(c[q>>2]|0)+451>>0]|0)==0){if((c[n>>2]|0)==0){c[B>>2]=(b[(c[s>>2]|0)+38>>1]|0)-1;if((c[B>>2]|0)<0){break}if((c[o>>2]|0)!=0){if((c[c[o>>2]>>2]|0)!=1){e=c[q>>2]|0;f=c[C>>2]|0;c[u>>2]=c[(c[(c[s>>2]|0)+4>>2]|0)+((c[B>>2]|0)*24|0)>>2];c[u+4>>2]=f;bf(e,32168,u);break}}c[x>>2]=1}else{if((c[o>>2]|0)!=0){if((c[c[o>>2]>>2]|0)!=(c[c[n>>2]>>2]|0)){bf(c[q>>2]|0,32232,u);break}}c[x>>2]=c[c[n>>2]>>2]}c[A>>2]=44+((c[x>>2]|0)-1<<3)+(c[(c[C>>2]|0)+4>>2]|0)+1;b:do{if((c[o>>2]|0)!=0){c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[c[o>>2]>>2]|0)){break b}e=(Ub(c[(c[(c[o>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)+4>>2]|0)|0)+1|0;c[A>>2]=(c[A>>2]|0)+e;c[k>>2]=(c[k>>2]|0)+1}}}while(0);c[m>>2]=ve(c[w>>2]|0,c[A>>2]|0)|0;if((c[m>>2]|0)!=0){c[c[m>>2]>>2]=c[s>>2];c[(c[m>>2]|0)+4>>2]=c[(c[s>>2]|0)+16>>2];c[y>>2]=(c[m>>2]|0)+36+(c[x>>2]<<3);c[(c[m>>2]|0)+8>>2]=c[y>>2];fL(c[y>>2]|0,c[c[C>>2]>>2]|0,c[(c[C>>2]|0)+4>>2]|0)|0;a[(c[y>>2]|0)+(c[(c[C>>2]|0)+4>>2]|0)>>0]=0;gt(c[y>>2]|0)|0;c[y>>2]=(c[y>>2]|0)+((c[(c[C>>2]|0)+4>>2]|0)+1);c[(c[m>>2]|0)+20>>2]=c[x>>2];c:do{if((c[n>>2]|0)==0){c[(c[m>>2]|0)+36>>2]=(b[(c[s>>2]|0)+38>>1]|0)-1}else{c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[x>>2]|0)){break c}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}e=(Dc(c[(c[(c[s>>2]|0)+4>>2]|0)+((c[v>>2]|0)*24|0)>>2]|0,c[(c[(c[n>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)+4>>2]|0)|0)==0;A=c[v>>2]|0;if(e){l=25;break}c[v>>2]=A+1}if((l|0)==25){l=0;c[(c[m>>2]|0)+36+(c[k>>2]<<3)>>2]=A}if((c[v>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}c[k>>2]=(c[k>>2]|0)+1}e=c[q>>2]|0;c[u>>2]=c[(c[(c[n>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)+4>>2];bf(e,32328,u);break a}}while(0);d:do{if((c[o>>2]|0)!=0){c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[x>>2]|0)){break d}c[r>>2]=Ub(c[(c[(c[o>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)+4>>2]|0)|0;c[(c[m>>2]|0)+36+(c[k>>2]<<3)+4>>2]=c[y>>2];fL(c[y>>2]|0,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[k>>2]|0)*20|0)+4>>2]|0,c[r>>2]|0)|0;a[(c[y>>2]|0)+(c[r>>2]|0)>>0]=0;c[y>>2]=(c[y>>2]|0)+((c[r>>2]|0)+1);c[k>>2]=(c[k>>2]|0)+1}}}while(0);a[(c[m>>2]|0)+24>>0]=0;a[(c[m>>2]|0)+25>>0]=c[z>>2]&255;a[(c[m>>2]|0)+26>>0]=c[z>>2]>>8&255;g=(c[(c[s>>2]|0)+68>>2]|0)+56|0;f=c[(c[m>>2]|0)+8>>2]|0;e=Ub(c[(c[m>>2]|0)+8>>2]|0)|0;c[t>>2]=Eh(g,f,e,c[m>>2]|0)|0;if((c[t>>2]|0)==(c[m>>2]|0)){a[(c[w>>2]|0)+64>>0]=1;break}if((c[t>>2]|0)!=0){c[(c[m>>2]|0)+12>>2]=c[t>>2];c[(c[t>>2]|0)+16>>2]=c[m>>2]}c[(c[s>>2]|0)+16>>2]=c[m>>2];c[m>>2]=0}}}}while(0);cc(c[w>>2]|0,c[m>>2]|0);cu(c[w>>2]|0,c[n>>2]|0);cu(c[w>>2]|0,c[o>>2]|0);i=p;return}function Iu(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e+12|0;f=e;h=e+4|0;g=e+8|0;c[j>>2]=b;c[f>>2]=d;b=c[(c[j>>2]|0)+484>>2]|0;c[h>>2]=b;if((b|0)==0){i=e;return}j=c[(c[h>>2]|0)+16>>2]|0;c[g>>2]=j;if((j|0)==0){i=e;return}a[(c[g>>2]|0)+24>>0]=c[f>>2];i=e;return}function Ju(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;k=j+24|0;m=j;g=j+4|0;h=j+8|0;f=j+12|0;l=j+16|0;e=j+20|0;c[k>>2]=a;c[m>>2]=d;a=c[(c[k>>2]|0)+484>>2]|0;c[g>>2]=a;if((a|0)==0){i=j;return}c[h>>2]=(b[(c[g>>2]|0)+38>>1]|0)-1;c[l>>2]=c[c[k>>2]>>2];c[f>>2]=Iv(c[l>>2]|0,c[m>>2]|0)|0;if((c[f>>2]|0)==0){i=j;return}a=(ty(c[k>>2]|0,c[f>>2]|0)|0)!=0;d=c[l>>2]|0;if(!a){cc(d,c[f>>2]|0);i=j;return}cc(d,c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*24|0)+16>>2]|0);c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*24|0)+16>>2]=c[f>>2];c[e>>2]=c[(c[g>>2]|0)+8>>2];while(1){if((c[e>>2]|0)==0){break}if((b[c[(c[e>>2]|0)+4>>2]>>1]|0)==(c[h>>2]|0)){c[c[(c[e>>2]|0)+32>>2]>>2]=c[(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*24|0)+16>>2]}c[e>>2]=c[(c[e>>2]|0)+20>>2]}i=j;return}function Ku(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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;j=i;i=i+64|0;s=j;k=j+44|0;h=j+40|0;n=j+36|0;l=j+32|0;m=j+28|0;u=j+48|0;p=j+16|0;r=j+12|0;g=j+8|0;t=j+4|0;o=j+20|0;q=j+24|0;c[k>>2]=b;c[h>>2]=d;c[n>>2]=e;c[l>>2]=f;c[p>>2]=c[c[k>>2]>>2];do{if((a[(c[p>>2]|0)+64>>0]|0)==0){if((c[l>>2]|0)!=0){b=(c[p>>2]|0)+67|0;a[b>>0]=(a[b>>0]|0)+1<<24>>24}c[m>>2]=Zv(c[k>>2]|0,c[n>>2]|0,(c[h>>2]|0)+8|0)|0;if((c[l>>2]|0)!=0){b=(c[p>>2]|0)+67|0;a[b>>0]=(a[b>>0]|0)+ -1<<24>>24}if((c[m>>2]|0)==0){if((c[l>>2]|0)==0){break}eA(c[k>>2]|0,c[(c[h>>2]|0)+12>>2]|0);break}c[r>>2]=ef(c[p>>2]|0,c[(c[m>>2]|0)+68>>2]|0)|0;if((a[(c[m>>2]|0)+44>>0]&16|0)!=0){if((vw(c[k>>2]|0,c[m>>2]|0)|0)!=0){break}}c[t>>2]=(c[r>>2]|0)==1?21432:21456;c[o>>2]=c[(c[(c[p>>2]|0)+16>>2]|0)+(c[r>>2]<<4)>>2];c[q>>2]=0;if((Lv(c[k>>2]|0,9,c[t>>2]|0,0,c[o>>2]|0)|0)==0){do{if((c[n>>2]|0)!=0){if((c[r>>2]|0)==1){c[g>>2]=15;break}else{c[g>>2]=17;break}}else{if((a[(c[m>>2]|0)+44>>0]&16|0)!=0){c[g>>2]=30;c[q>>2]=c[(c[(ww(c[p>>2]|0,c[m>>2]|0)|0)+4>>2]|0)+4>>2];break}if((c[r>>2]|0)==1){c[g>>2]=13;break}else{c[g>>2]=11;break}}}while(0);if((Lv(c[k>>2]|0,c[g>>2]|0,c[c[m>>2]>>2]|0,c[q>>2]|0,c[o>>2]|0)|0)==0){if((Lv(c[k>>2]|0,9,c[c[m>>2]>>2]|0,0,c[o>>2]|0)|0)==0){if((Tb(c[c[m>>2]>>2]|0,21672,7)|0)==0){if((Tb(c[c[m>>2]>>2]|0,31944,11)|0)!=0){b=c[k>>2]|0;c[s>>2]=c[c[m>>2]>>2];bf(b,31960,s);break}}if((c[n>>2]|0)!=0){if((c[(c[m>>2]|0)+12>>2]|0)==0){b=c[k>>2]|0;c[s>>2]=c[c[m>>2]>>2];bf(b,31992,s);break}}if((c[n>>2]|0)==0){if((c[(c[m>>2]|0)+12>>2]|0)!=0){b=c[k>>2]|0;c[s>>2]=c[c[m>>2]>>2];bf(b,32032,s);break}}c[u>>2]=Ov(c[k>>2]|0)|0;if((c[u>>2]|0)!=0){$v(c[k>>2]|0,1,c[r>>2]|0);OA(c[k>>2]|0,c[r>>2]|0,24688,c[c[m>>2]>>2]|0);FE(c[k>>2]|0,c[h>>2]|0,c[m>>2]|0);GE(c[k>>2]|0,c[m>>2]|0,c[r>>2]|0,c[n>>2]|0)}}}}}}while(0);fu(c[p>>2]|0,c[h>>2]|0);i=j;return}function Lu(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;p=i;i=i+96|0;o=p+80|0;s=p+76|0;u=p+72|0;v=p+68|0;t=p+64|0;z=p+60|0;A=p+56|0;q=p+84|0;m=p+44|0;n=p+40|0;l=p+32|0;y=p+8|0;w=p+4|0;x=p+48|0;r=p+52|0;c[o>>2]=b;c[s>>2]=e;c[u>>2]=f;c[v>>2]=g;c[t>>2]=h;c[z>>2]=j;c[A>>2]=k;c[w>>2]=0;c[r>>2]=c[c[o>>2]>>2];k=c[o>>2]|0;if((c[(c[o>>2]|0)+440>>2]|0)>0){bf(k,31896,p);du(c[r>>2]|0,c[t>>2]|0);i=p;return}wu(k,c[u>>2]|0,c[v>>2]|0,c[z>>2]|0,1,0,c[A>>2]|0);c[q>>2]=c[(c[o>>2]|0)+484>>2];if((c[q>>2]|0)!=0){if((c[(c[o>>2]|0)+64>>2]|0)==0){ky(c[o>>2]|0,c[u>>2]|0,c[v>>2]|0,w)|0;c[x>>2]=ef(c[r>>2]|0,c[(c[q>>2]|0)+68>>2]|0)|0;kA(y,c[o>>2]|0,c[x>>2]|0,31936,c[w>>2]|0);b=(mA(y,c[t>>2]|0)|0)!=0;v=c[r>>2]|0;u=c[t>>2]|0;if(b){du(v,u);i=p;return}b=Bw(v,u,1)|0;c[(c[q>>2]|0)+12>>2]=b;du(c[r>>2]|0,c[t>>2]|0);if((a[(c[r>>2]|0)+64>>0]|0)!=0){i=p;return}if((a[(c[r>>2]|0)+137>>0]|0)==0){vw(c[o>>2]|0,c[q>>2]|0)|0}b=(c[o>>2]|0)+504|0;c[l+0>>2]=c[b+0>>2];c[l+4>>2]=c[b+4>>2];if((a[c[l>>2]>>0]|0)!=0){if((a[c[l>>2]>>0]|0)!=59){c[l>>2]=(c[l>>2]|0)+(c[l+4>>2]|0)}}c[l+4>>2]=0;c[m>>2]=(c[l>>2]|0)-(c[c[s>>2]>>2]|0);c[n>>2]=c[c[s>>2]>>2];while(1){if((c[m>>2]|0)>0){r=(a[136+(d[(c[n>>2]|0)+((c[m>>2]|0)-1)>>0]|0)>>0]&1|0)!=0}else{r=0}q=c[m>>2]|0;if(!r){break}c[m>>2]=q+ -1}c[l>>2]=(c[n>>2]|0)+(q-1);c[l+4>>2]=1;xu(c[o>>2]|0,0,l,0,0);i=p;return}}du(c[r>>2]|0,c[t>>2]|0);i=p;return}function Mu(f,g,h){f=f|0;g=g|0;h=h|0;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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0;N=i;i=i+400|0;L=N+136|0;o=N+236|0;n=N+232|0;l=N+228|0;v=N+224|0;U=N+220|0;B=N+216|0;u=N+212|0;wa=N+208|0;r=N+200|0;q=N+196|0;ca=N+192|0;x=N+188|0;y=N+184|0;t=N+204|0;z=N+240|0;p=N+252|0;C=N+280|0;A=N+328|0;m=N+332|0;s=N+336|0;xa=N+340|0;ra=N+344|0;ya=N+364|0;za=N+368|0;qa=N+372|0;pa=N+376|0;Aa=N+380|0;sa=N+384|0;ta=N+388|0;va=N+392|0;ma=N+152|0;O=N+144|0;P=N+140|0;J=N+132|0;I=N+60|0;S=N+56|0;E=N+52|0;T=N+48|0;V=N+44|0;W=N+40|0;na=N+36|0;oa=N+32|0;Q=N+28|0;R=N+20|0;G=N+16|0;F=N+12|0;H=N+8|0;M=N+4|0;j=N;K=N+24|0;k=N+64|0;Y=N+68|0;X=N+72|0;Z=N+76|0;w=N+80|0;$=N+84|0;_=N+88|0;aa=N+92|0;ia=N+96|0;ea=N+100|0;ba=N+104|0;da=N+108|0;ja=N+112|0;ga=N+116|0;fa=N+120|0;ha=N+124|0;ka=N+128|0;la=N+394|0;c[o>>2]=f;c[n>>2]=g;c[l>>2]=h;c[t>>2]=1;c[s>>2]=c[(c[o>>2]|0)+464>>2];g=(c[o>>2]|0)+468|0;f=c[g>>2]|0;c[g>>2]=f+1;c[(c[o>>2]|0)+464>>2]=f;c[m>>2]=c[c[o>>2]>>2];if((c[n>>2]|0)!=0){if((d[(c[m>>2]|0)+64>>0]|0)==0){if((c[(c[o>>2]|0)+64>>2]|0)==0){if((Lv(c[o>>2]|0,21,0,0,0)|0)!=0){c[L>>2]=1;f=c[L>>2]|0;i=N;return f|0}g=C+0|0;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((d[c[l>>2]>>0]|0)<=8){cu(c[m>>2]|0,c[(c[n>>2]|0)+48>>2]|0);c[(c[n>>2]|0)+48>>2]=0;f=(c[n>>2]|0)+6|0;b[f>>1]=e[f>>1]&-2}Ew(c[o>>2]|0,c[n>>2]|0,0);c[p+0>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16>>2]=0;c[p+20>>2]=0;c[p+24>>2]=0;c[p>>2]=c[(c[n>>2]|0)+48>>2];c[q>>2]=c[(c[n>>2]|0)+32>>2];c[r>>2]=c[c[n>>2]>>2];a:do{if((c[(c[o>>2]|0)+64>>2]|0)==0){if((d[(c[m>>2]|0)+64>>0]|0)==0){c[wa>>2]=(b[(c[n>>2]|0)+6>>1]&4|0)!=0&1;c[u>>2]=Ov(c[o>>2]|0)|0;if((c[u>>2]|0)!=0){if((PD(c[o>>2]|0,c[l>>2]|0,c[c[r>>2]>>2]|0)|0)==0){c[v>>2]=0;while(1){if((c[(c[n>>2]|0)+52>>2]|0)!=0){break}if((c[v>>2]|0)>=(c[c[q>>2]>>2]|0)){break}c[xa>>2]=(c[q>>2]|0)+8+((c[v>>2]|0)*72|0);c[ya>>2]=c[(c[xa>>2]|0)+20>>2];do{if((c[ya>>2]|0)!=0){if((c[(c[xa>>2]|0)+24>>2]|0)!=0){if(((d[(c[xa>>2]|0)+37>>0]|0)>>>2&1|0)!=0){break}Qv(c[u>>2]|0,17,c[(c[xa>>2]|0)+28>>2]|0,c[(c[xa>>2]|0)+24>>2]|0)|0;break}g=QD(c[n>>2]|0)|0;f=(c[o>>2]|0)+460|0;c[f>>2]=(c[f>>2]|0)+g;c[za>>2]=(b[(c[ya>>2]|0)+6>>1]&4|0)!=0&1;b:do{if((RD(c[o>>2]|0,c[n>>2]|0,c[v>>2]|0,c[wa>>2]|0,c[za>>2]|0)|0)!=0){if((c[za>>2]|0)!=0){c[wa>>2]=1;f=(c[n>>2]|0)+6|0;b[f>>1]=e[f>>1]|4}c[v>>2]=-1}else{do{if((c[c[q>>2]>>2]|0)==1){if((b[(c[m>>2]|0)+60>>1]&256|0)!=0){break}c[qa>>2]=(sy(c[u>>2]|0)|0)+1;g=(c[o>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[(c[xa>>2]|0)+28>>2]=f;Tv(c[u>>2]|0,20,c[(c[xa>>2]|0)+28>>2]|0,0,c[qa>>2]|0)|0;c[(c[xa>>2]|0)+24>>2]=c[qa>>2];Hz(ra,13,c[(c[xa>>2]|0)+28>>2]|0);a[(c[xa>>2]|0)+38>>0]=c[(c[o>>2]|0)+468>>2];Mu(c[o>>2]|0,c[ya>>2]|0,ra)|0;f=(c[ya>>2]|0)+24|0;f=Kw(c[f>>2]|0,c[f+4>>2]|0)|0;b[(c[(c[xa>>2]|0)+16>>2]|0)+28>>1]=f;f=(c[xa>>2]|0)+37|0;a[f>>0]=a[f>>0]&-5|4;c[(c[xa>>2]|0)+32>>2]=c[ra+8>>2];oy(c[u>>2]|0,21,c[(c[xa>>2]|0)+28>>2]|0)|0;jw(c[u>>2]|0,(c[qa>>2]|0)-1|0);SD(c[o>>2]|0);break b}}while(0);c[Aa>>2]=0;g=(c[o>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[(c[xa>>2]|0)+28>>2]=f;c[pa>>2]=Qv(c[u>>2]|0,25,0,c[(c[xa>>2]|0)+28>>2]|0)|0;c[(c[xa>>2]|0)+24>>2]=(c[pa>>2]|0)+1;if(((d[(c[xa>>2]|0)+37>>0]|0)>>>1&1|0)==0){c[Aa>>2]=Gz(c[o>>2]|0)|0}Hz(ra,12,c[(c[xa>>2]|0)+40>>2]|0);a[(c[xa>>2]|0)+38>>0]=c[(c[o>>2]|0)+468>>2];Mu(c[o>>2]|0,c[ya>>2]|0,ra)|0;f=(c[ya>>2]|0)+24|0;f=Kw(c[f>>2]|0,c[f+4>>2]|0)|0;b[(c[(c[xa>>2]|0)+16>>2]|0)+28>>1]=f;if((c[Aa>>2]|0)!=0){jw(c[u>>2]|0,c[Aa>>2]|0)}c[sa>>2]=oy(c[u>>2]|0,18,c[(c[xa>>2]|0)+28>>2]|0)|0;kf(c[u>>2]|0,c[pa>>2]|0,c[sa>>2]|0);SD(c[o>>2]|0)}}while(0);if((a[(c[m>>2]|0)+64>>0]|0)!=0){break a}g=QD(c[n>>2]|0)|0;f=(c[o>>2]|0)+460|0;c[f>>2]=(c[f>>2]|0)-g;c[q>>2]=c[(c[n>>2]|0)+32>>2];if((d[c[l>>2]>>0]|0)>8){c[p>>2]=c[(c[n>>2]|0)+48>>2]}}}while(0);c[v>>2]=(c[v>>2]|0)+1}c[r>>2]=c[c[n>>2]>>2];c[ca>>2]=c[(c[n>>2]|0)+36>>2];c[x>>2]=c[(c[n>>2]|0)+40>>2];c[y>>2]=c[(c[n>>2]|0)+44>>2];a[z>>0]=(b[(c[n>>2]|0)+6>>1]&1|0)!=0;if((c[(c[n>>2]|0)+52>>2]|0)!=0){c[t>>2]=TD(c[o>>2]|0,c[n>>2]|0,c[l>>2]|0)|0;c[(c[o>>2]|0)+464>>2]=c[s>>2];c[L>>2]=c[t>>2];f=c[L>>2]|0;i=N;return f|0}if((b[(c[n>>2]|0)+6>>1]&5|0)==1){if((kx(c[p>>2]|0,c[c[n>>2]>>2]|0,-1)|0)==0){f=(c[n>>2]|0)+6|0;b[f>>1]=e[f>>1]&-2;f=px(c[m>>2]|0,c[c[n>>2]>>2]|0,0)|0;c[(c[n>>2]|0)+40>>2]=f;c[x>>2]=c[(c[n>>2]|0)+40>>2];c[p>>2]=0}}if((c[p>>2]|0)!=0){c[ta>>2]=UD(c[o>>2]|0,c[p>>2]|0,0,0)|0;g=(c[o>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[p+8>>2]=f;c[p+20>>2]=Sv(c[u>>2]|0,55,c[p+8>>2]|0,(c[c[p>>2]>>2]|0)+2|0,0,c[ta>>2]|0,-6)|0}else{c[p+20>>2]=-1}if((d[c[l>>2]>>0]|0)==12){Qv(c[u>>2]|0,55,c[(c[l>>2]|0)+4>>2]|0,c[c[r>>2]>>2]|0)|0}c[A>>2]=cz(c[u>>2]|0)|0;f=(c[n>>2]|0)+24|0;c[f>>2]=-1;c[f+4>>2]=2147483647;VD(c[o>>2]|0,c[n>>2]|0,c[A>>2]|0);if((c[(c[n>>2]|0)+8>>2]|0)==0){if((c[p+20>>2]|0)>=0){a[(Kz(c[u>>2]|0,c[p+20>>2]|0)|0)>>0]=56;f=p+24|0;a[f>>0]=d[f>>0]|1}}if((b[(c[n>>2]|0)+6>>1]&1|0)!=0){f=(c[o>>2]|0)+68|0;g=c[f>>2]|0;c[f>>2]=g+1;c[z+4>>2]=g;g=c[u>>2]|0;f=c[z+4>>2]|0;c[z+8>>2]=Sv(g,55,f,0,0,UD(c[o>>2]|0,c[c[n>>2]>>2]|0,0,0)|0,-6)|0;gf(c[u>>2]|0,8);a[z+1>>0]=3}else{a[z+1>>0]=0}if((c[wa>>2]|0)!=0){ua=67}else{if((c[x>>2]|0)==0){b[va>>1]=(d[z>>0]|0)!=0?1024:0;c[B>>2]=lB(c[o>>2]|0,c[q>>2]|0,c[ca>>2]|0,c[p>>2]|0,c[c[n>>2]>>2]|0,b[va>>1]|0,0)|0;if((c[B>>2]|0)==0){break}g=WD(c[B>>2]|0)|0;Aa=D;f=(c[n>>2]|0)+24|0;h=c[f+4>>2]|0;if(Aa>>>0>>0|((Aa|0)==(h|0)?g>>>0<(c[f>>2]|0)>>>0:0)){g=WD(c[B>>2]|0)|0;f=(c[n>>2]|0)+24|0;c[f>>2]=g;c[f+4>>2]=D}do{if((d[z>>0]|0)!=0){if((XD(c[B>>2]|0)|0)==0){break}a[z+1>>0]=XD(c[B>>2]|0)|0}}while(0);do{if((c[p>>2]|0)!=0){c[p+4>>2]=YD(c[B>>2]|0)|0;if((c[p+4>>2]|0)!=(c[c[p>>2]>>2]|0)){break}c[p>>2]=0}}while(0);do{if((c[p+20>>2]|0)>=0){if((c[p>>2]|0)!=0){break}of(c[u>>2]|0,c[p+20>>2]|0)}}while(0);za=c[o>>2]|0;Aa=c[n>>2]|0;h=c[r>>2]|0;g=c[l>>2]|0;f=_D(c[B>>2]|0)|0;ZD(za,Aa,h,-1,p,z,g,f,$D(c[B>>2]|0)|0);mB(c[B>>2]|0)}else{ua=67}}if((ua|0)==67){c[T>>2]=0;c[V>>2]=0;c[W>>2]=0;pa=c[n>>2]|0;do{if((c[x>>2]|0)!=0){c[na>>2]=c[c[pa>>2]>>2];c[oa>>2]=c[(c[c[n>>2]>>2]|0)+4>>2];while(1){if((c[na>>2]|0)<=0){break}b[(c[oa>>2]|0)+18>>1]=0;c[na>>2]=(c[na>>2]|0)+ -1;c[oa>>2]=(c[oa>>2]|0)+20}c[na>>2]=c[c[x>>2]>>2];c[oa>>2]=c[(c[x>>2]|0)+4>>2];while(1){if((c[na>>2]|0)<=0){break}b[(c[oa>>2]|0)+18>>1]=0;c[na>>2]=(c[na>>2]|0)+ -1;c[oa>>2]=(c[oa>>2]|0)+20}f=(c[n>>2]|0)+24|0;g=c[f+4>>2]|0;if(!(g>>>0>0|(g|0)==0&(c[f>>2]|0)>>>0>100)){break}f=(c[n>>2]|0)+24|0;c[f>>2]=100;c[f+4>>2]=0}else{f=pa+24|0;c[f>>2]=1;c[f+4>>2]=0}}while(0);if((kx(c[x>>2]|0,c[p>>2]|0,-1)|0)==0){c[W>>2]=1}c[E>>2]=cz(c[u>>2]|0)|0;c[ma+0>>2]=0;c[ma+4>>2]=0;c[ma+8>>2]=0;c[ma+12>>2]=0;c[ma+16>>2]=0;c[ma+20>>2]=0;c[ma+24>>2]=0;c[ma+28>>2]=0;c[ma>>2]=c[o>>2];c[ma+4>>2]=c[q>>2];c[ma+12>>2]=C;c[C+16>>2]=(c[(c[o>>2]|0)+72>>2]|0)+1;if((c[x>>2]|0)!=0){na=(c[c[x>>2]>>2]|0)+1|0}else{na=0}c[C+12>>2]=na;c[C+24>>2]=c[x>>2];aE(ma,c[r>>2]|0);aE(ma,c[p>>2]|0);if((c[y>>2]|0)!=0){bE(ma,c[y>>2]|0)}c[C+36>>2]=c[C+32>>2];c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[C+44>>2]|0)){break}f=ma+28|0;a[f>>0]=d[f>>0]|8;aE(ma,c[(c[(c[C+40>>2]|0)+(c[v>>2]<<4)>>2]|0)+20>>2]|0);f=ma+28|0;a[f>>0]=d[f>>0]&-9;c[v>>2]=(c[v>>2]|0)+1}c[C+20>>2]=c[(c[o>>2]|0)+72>>2];if((a[(c[m>>2]|0)+64>>0]|0)!=0){break}if((c[x>>2]|0)!=0){g=(c[o>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[C+4>>2]=f;c[Q>>2]=UD(c[o>>2]|0,c[x>>2]|0,0,0)|0;c[j>>2]=Sv(c[u>>2]|0,56,c[C+4>>2]|0,c[C+12>>2]|0,0,c[Q>>2]|0,-6)|0;f=(c[o>>2]|0)+72|0;g=(c[f>>2]|0)+1|0;c[f>>2]=g;c[J>>2]=g;g=(c[o>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[I>>2]=f;f=(c[o>>2]|0)+72|0;g=(c[f>>2]|0)+1|0;c[f>>2]=g;c[F>>2]=g;c[G>>2]=cz(c[u>>2]|0)|0;g=(c[o>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[k>>2]=f;c[K>>2]=cz(c[u>>2]|0)|0;c[O>>2]=(c[(c[o>>2]|0)+72>>2]|0)+1;f=(c[o>>2]|0)+72|0;c[f>>2]=(c[f>>2]|0)+(c[c[x>>2]>>2]|0);c[P>>2]=(c[(c[o>>2]|0)+72>>2]|0)+1;f=(c[o>>2]|0)+72|0;c[f>>2]=(c[f>>2]|0)+(c[c[x>>2]>>2]|0);Qv(c[u>>2]|0,25,0,c[I>>2]|0)|0;Qv(c[u>>2]|0,25,0,c[J>>2]|0)|0;Tv(c[u>>2]|0,28,0,c[O>>2]|0,(c[O>>2]|0)+(c[c[x>>2]>>2]|0)-1|0)|0;Qv(c[u>>2]|0,17,c[k>>2]|0,c[K>>2]|0)|0;c[B>>2]=lB(c[o>>2]|0,c[q>>2]|0,c[ca>>2]|0,c[x>>2]|0,0,(256|((c[W>>2]|0)!=0?2048:0))&65535,0)|0;if((c[B>>2]|0)==0){break}f=YD(c[B>>2]|0)|0;if((f|0)==(c[c[x>>2]>>2]|0)){c[S>>2]=0}else{if((d[z>>0]|0)!=0){ba=(b[(c[n>>2]|0)+6>>1]&1|0)==0}else{ba=0}cE(c[o>>2]|0,ba?31264:31280);c[S>>2]=1;c[w>>2]=c[c[x>>2]>>2];c[Z>>2]=(c[w>>2]|0)+1;c[U>>2]=(c[w>>2]|0)+1;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[C+32>>2]|0)){break}if((c[(c[C+28>>2]|0)+((c[v>>2]|0)*24|0)+12>>2]|0)>=(c[U>>2]|0)){c[Z>>2]=(c[Z>>2]|0)+1;c[U>>2]=(c[U>>2]|0)+1}c[v>>2]=(c[v>>2]|0)+1}c[Y>>2]=fz(c[o>>2]|0,c[Z>>2]|0)|0;IA(c[o>>2]|0);Cz(c[o>>2]|0,c[x>>2]|0,c[Y>>2]|0,0)|0;Qv(c[u>>2]|0,68,c[C+4>>2]|0,(c[Y>>2]|0)+(c[w>>2]|0)|0)|0;c[U>>2]=(c[w>>2]|0)+1;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[C+32>>2]|0)){break}c[$>>2]=(c[C+28>>2]|0)+((c[v>>2]|0)*24|0);if((c[(c[$>>2]|0)+12>>2]|0)>=(c[U>>2]|0)){c[_>>2]=(c[U>>2]|0)+(c[Y>>2]|0);c[aa>>2]=xz(c[o>>2]|0,c[c[$>>2]>>2]|0,c[(c[$>>2]|0)+8>>2]|0,c[(c[$>>2]|0)+4>>2]|0,c[_>>2]|0,0)|0;if((c[_>>2]|0)!=(c[aa>>2]|0)){Qv(c[u>>2]|0,34,c[aa>>2]|0,c[_>>2]|0)|0}c[U>>2]=(c[U>>2]|0)+1}c[v>>2]=(c[v>>2]|0)+1}c[X>>2]=Wv(c[o>>2]|0)|0;Tv(c[u>>2]|0,48,c[Y>>2]|0,c[Z>>2]|0,c[X>>2]|0)|0;Qv(c[u>>2]|0,106,c[C+4>>2]|0,c[X>>2]|0)|0;Xv(c[o>>2]|0,c[X>>2]|0);iz(c[o>>2]|0,c[Y>>2]|0,c[Z>>2]|0);mB(c[B>>2]|0);g=(c[o>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[T>>2]=f;c[C+8>>2]=f;c[V>>2]=Wv(c[o>>2]|0)|0;Tv(c[u>>2]|0,57,c[T>>2]|0,c[V>>2]|0,c[Z>>2]|0)|0;Qv(c[u>>2]|0,103,c[C+4>>2]|0,c[E>>2]|0)|0;a[C+1>>0]=1;IA(c[o>>2]|0)}do{if((c[W>>2]|0)!=0){if((b[(c[m>>2]|0)+60>>1]&4|0)!=0){break}if((c[S>>2]|0)==0){if((dE(c[B>>2]|0)|0)==0){break}}c[p>>2]=0;of(c[u>>2]|0,c[p+20>>2]|0)}}while(0);c[M>>2]=sy(c[u>>2]|0)|0;IA(c[o>>2]|0);if((c[S>>2]|0)!=0){Qv(c[u>>2]|0,95,c[C+4>>2]|0,c[V>>2]|0)|0}c[U>>2]=0;while(1){if((c[U>>2]|0)>=(c[c[x>>2]>>2]|0)){break}do{if((c[S>>2]|0)!=0){Tv(c[u>>2]|0,46,c[T>>2]|0,c[U>>2]|0,(c[P>>2]|0)+(c[U>>2]|0)|0)|0;if((c[U>>2]|0)!=0){break}gf(c[u>>2]|0,32)}else{a[C>>0]=1;vz(c[o>>2]|0,c[(c[(c[x>>2]|0)+4>>2]|0)+((c[U>>2]|0)*20|0)>>2]|0,(c[P>>2]|0)+(c[U>>2]|0)|0)}}while(0);c[U>>2]=(c[U>>2]|0)+1}Aa=c[u>>2]|0;h=c[O>>2]|0;g=c[P>>2]|0;f=c[c[x>>2]>>2]|0;Sv(Aa,41,h,g,f,Cy(c[Q>>2]|0)|0,-6)|0;c[R>>2]=sy(c[u>>2]|0)|0;Tv(c[u>>2]|0,42,(c[R>>2]|0)+1|0,0,(c[R>>2]|0)+1|0)|0;eE(c[o>>2]|0,c[P>>2]|0,c[O>>2]|0,c[c[x>>2]>>2]|0);Qv(c[u>>2]|0,17,c[F>>2]|0,c[G>>2]|0)|0;Qv(c[u>>2]|0,134,c[I>>2]|0,c[E>>2]|0)|0;Qv(c[u>>2]|0,17,c[k>>2]|0,c[K>>2]|0)|0;jw(c[u>>2]|0,c[R>>2]|0);fE(c[o>>2]|0,C);Qv(c[u>>2]|0,25,1,c[J>>2]|0)|0;if((c[S>>2]|0)!=0){Qv(c[u>>2]|0,5,c[C+4>>2]|0,c[M>>2]|0)|0}else{mB(c[B>>2]|0);of(c[u>>2]|0,c[j>>2]|0)}Qv(c[u>>2]|0,17,c[F>>2]|0,c[G>>2]|0)|0;Qv(c[u>>2]|0,16,0,c[E>>2]|0)|0;c[H>>2]=sy(c[u>>2]|0)|0;Qv(c[u>>2]|0,25,1,c[I>>2]|0)|0;oy(c[u>>2]|0,18,c[F>>2]|0)|0;$y(c[u>>2]|0,c[G>>2]|0);c[G>>2]=sy(c[u>>2]|0)|0;Qv(c[u>>2]|0,134,c[J>>2]|0,(c[G>>2]|0)+2|0)|0;oy(c[u>>2]|0,18,c[F>>2]|0)|0;gE(c[o>>2]|0,C);ez(c[o>>2]|0,c[y>>2]|0,(c[G>>2]|0)+1|0,8);ZD(c[o>>2]|0,c[n>>2]|0,c[c[n>>2]>>2]|0,-1,p,z,c[l>>2]|0,(c[G>>2]|0)+1|0,c[H>>2]|0);oy(c[u>>2]|0,18,c[F>>2]|0)|0;$y(c[u>>2]|0,c[K>>2]|0);hE(c[o>>2]|0,C);oy(c[u>>2]|0,18,c[k>>2]|0)|0}else{c[ia>>2]=0;f=iE(c[n>>2]|0,C)|0;c[ea>>2]=f;if((f|0)!=0){c[ba>>2]=ef(c[c[o>>2]>>2]|0,c[(c[ea>>2]|0)+68>>2]|0)|0;g=(c[o>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[da>>2]=f;c[ga>>2]=0;c[fa>>2]=0;c[ha>>2]=c[(c[ea>>2]|0)+32>>2];aw(c[o>>2]|0,c[ba>>2]|0);py(c[o>>2]|0,c[ba>>2]|0,c[(c[ea>>2]|0)+32>>2]|0,0,c[c[ea>>2]>>2]|0);if((a[(c[ea>>2]|0)+44>>0]&32|0)!=0){c[fa>>2]=Dy(c[ea>>2]|0)|0}c[ja>>2]=c[(c[ea>>2]|0)+8>>2];while(1){if((c[ja>>2]|0)==0){break}do{if(((d[(c[ja>>2]|0)+55>>0]|0)>>>2&1|0)==0){if((b[(c[ja>>2]|0)+48>>1]|0)>=(b[(c[ea>>2]|0)+42>>1]|0)){break}if((c[(c[ja>>2]|0)+36>>2]|0)!=0){break}if((c[fa>>2]|0)!=0){if((b[(c[ja>>2]|0)+48>>1]|0)>=(b[(c[fa>>2]|0)+48>>1]|0)){break}}c[fa>>2]=c[ja>>2]}}while(0);c[ja>>2]=c[(c[ja>>2]|0)+20>>2]}if((c[fa>>2]|0)!=0){c[ha>>2]=c[(c[fa>>2]|0)+44>>2];c[ga>>2]=Ay(c[o>>2]|0,c[fa>>2]|0)|0}ff(c[u>>2]|0,52,c[da>>2]|0,c[ha>>2]|0,c[ba>>2]|0,1)|0;if((c[ga>>2]|0)!=0){nf(c[u>>2]|0,-1,c[ga>>2]|0,-6)}Qv(c[u>>2]|0,49,c[da>>2]|0,c[(c[C+40>>2]|0)+8>>2]|0)|0;oy(c[u>>2]|0,58,c[da>>2]|0)|0;jE(c[o>>2]|0,c[ea>>2]|0,c[fa>>2]|0)}else{c[ka>>2]=0;a[la>>0]=0;if((c[(c[n>>2]|0)+44>>2]|0)==0){a[la>>0]=kE(C,ka)|0}do{if((a[la>>0]|0)!=0){c[ka>>2]=px(c[m>>2]|0,c[ka>>2]|0,0)|0;c[ia>>2]=c[ka>>2];if((c[ka>>2]|0)==0){break}if((a[(c[m>>2]|0)+64>>0]|0)!=0){break}a[(c[(c[ka>>2]|0)+4>>2]|0)+12>>0]=(d[la>>0]|0)!=1?1:0;a[c[c[(c[ka>>2]|0)+4>>2]>>2]>>0]=-102}}while(0);hE(c[o>>2]|0,C);c[B>>2]=lB(c[o>>2]|0,c[q>>2]|0,c[ca>>2]|0,c[ka>>2]|0,0,d[la>>0]|0,0)|0;if((c[B>>2]|0)==0){cu(c[m>>2]|0,c[ia>>2]|0);break}fE(c[o>>2]|0,C);if((YD(c[B>>2]|0)|0)>0){f=c[u>>2]|0;Qv(f,16,0,$D(c[B>>2]|0)|0)|0}mB(c[B>>2]|0);gE(c[o>>2]|0,C)}c[p>>2]=0;ez(c[o>>2]|0,c[y>>2]|0,c[E>>2]|0,8);ZD(c[o>>2]|0,c[n>>2]|0,c[c[n>>2]>>2]|0,-1,0,0,c[l>>2]|0,c[E>>2]|0,c[E>>2]|0);cu(c[m>>2]|0,c[ia>>2]|0)}$y(c[u>>2]|0,c[E>>2]|0)}if((d[z+1>>0]|0)==3){cE(c[o>>2]|0,31264)}if((c[p>>2]|0)!=0){cE(c[o>>2]|0,(c[p+4>>2]|0)>0?31296:31320);lE(c[o>>2]|0,c[n>>2]|0,p,c[c[r>>2]>>2]|0,c[l>>2]|0)}$y(c[u>>2]|0,c[A>>2]|0);c[t>>2]=0}}}}}while(0);c[(c[o>>2]|0)+464>>2]=c[s>>2];if((c[t>>2]|0)==0){if((d[c[l>>2]>>0]|0)==9){mE(c[o>>2]|0,c[q>>2]|0,c[r>>2]|0)}}cc(c[m>>2]|0,c[C+28>>2]|0);cc(c[m>>2]|0,c[C+40>>2]|0);c[L>>2]=c[t>>2];f=c[L>>2]|0;i=N;return f|0}}}c[L>>2]=1;f=c[L>>2]|0;i=N;return f|0}function Nu(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;t=i;i=i+48|0;x=t;s=t+40|0;w=t+36|0;v=t+32|0;u=t+28|0;k=t+24|0;n=t+44|0;r=t+12|0;p=t+8|0;q=t+4|0;m=t+16|0;o=t+20|0;c[w>>2]=a;c[v>>2]=b;c[u>>2]=d;c[k>>2]=e;c[n>>2]=f;c[r>>2]=g;c[p>>2]=h;c[q>>2]=j;c[o>>2]=c[c[w>>2]>>2];do{if((c[v>>2]|0)!=0){l=5}else{if((c[p>>2]|0)==0){if((c[q>>2]|0)==0){l=5;break}}a=c[w>>2]|0;c[x>>2]=(c[p>>2]|0)!=0?31248:31256;bf(a,31208,x)}}while(0);if((l|0)==5){c[v>>2]=Vu(c[o>>2]|0,c[v>>2]|0,c[u>>2]|0,c[k>>2]|0)|0;if((c[v>>2]|0)!=0){if((c[c[v>>2]>>2]|0)!=0){c[m>>2]=(c[v>>2]|0)+8+(((c[c[v>>2]>>2]|0)-1|0)*72|0);if((c[(c[n>>2]|0)+4>>2]|0)!=0){a=Iv(c[o>>2]|0,c[n>>2]|0)|0;c[(c[m>>2]|0)+12>>2]=a}c[(c[m>>2]|0)+20>>2]=c[r>>2];c[(c[m>>2]|0)+44>>2]=c[p>>2];c[(c[m>>2]|0)+48>>2]=c[q>>2];c[s>>2]=c[v>>2];a=c[s>>2]|0;i=t;return a|0}}}gu(c[o>>2]|0,c[p>>2]|0);hu(c[o>>2]|0,c[q>>2]|0);du(c[o>>2]|0,c[r>>2]|0);c[s>>2]=0;a=c[s>>2]|0;i=t;return a|0}function Ou(d,e,f,g,h,j,k,l,m,n){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var 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;p=i;i=i+128|0;v=p+112|0;A=p+108|0;s=p+104|0;t=p+100|0;u=p+96|0;o=p+92|0;w=p+88|0;x=p+116|0;y=p+80|0;z=p+76|0;r=p+72|0;B=p;q=p+84|0;c[v>>2]=d;c[A>>2]=e;c[s>>2]=f;c[t>>2]=g;c[u>>2]=h;c[o>>2]=j;c[w>>2]=k;b[x>>1]=l;c[y>>2]=m;c[z>>2]=n;c[q>>2]=c[c[v>>2]>>2];c[r>>2]=ve(c[q>>2]|0,72)|0;if((c[r>>2]|0)==0){c[r>>2]=B;m=(c[r>>2]|0)+0|0;n=m+72|0;do{c[m>>2]=0;m=m+4|0}while((m|0)<(n|0))}if((c[A>>2]|0)==0){d=c[v>>2]|0;c[A>>2]=Pu(d,0,Su(c[q>>2]|0,116,0)|0)|0}c[c[r>>2]>>2]=c[A>>2];if((c[s>>2]|0)==0){c[s>>2]=ve(c[q>>2]|0,80)|0}c[(c[r>>2]|0)+32>>2]=c[s>>2];c[(c[r>>2]|0)+36>>2]=c[t>>2];c[(c[r>>2]|0)+40>>2]=c[u>>2];c[(c[r>>2]|0)+44>>2]=c[o>>2];c[(c[r>>2]|0)+48>>2]=c[w>>2];b[(c[r>>2]|0)+6>>1]=b[x>>1]|0;a[(c[r>>2]|0)+4>>0]=119;c[(c[r>>2]|0)+60>>2]=c[y>>2];c[(c[r>>2]|0)+64>>2]=c[z>>2];c[(c[r>>2]|0)+16>>2]=-1;c[(c[r>>2]|0)+20>>2]=-1;if((a[(c[q>>2]|0)+64>>0]|0)==0){d=c[r>>2]|0;i=p;return d|0}eu(c[q>>2]|0,c[r>>2]|0);if((c[r>>2]|0)!=(B|0)){cc(c[q>>2]|0,c[r>>2]|0)}c[r>>2]=0;d=c[r>>2]|0;i=p;return d|0}function Pu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;f=j+24|0;m=j;g=j+4|0;e=j+8|0;h=j+12|0;l=j+16|0;k=j+20|0;c[m>>2]=a;c[g>>2]=b;c[e>>2]=d;c[h>>2]=c[c[m>>2]>>2];if((c[g>>2]|0)==0){c[g>>2]=ve(c[h>>2]|0,8)|0;if((c[g>>2]|0)==0){d=8}else{m=$e(c[h>>2]|0,20)|0;c[(c[g>>2]|0)+4>>2]=m;if((c[(c[g>>2]|0)+4>>2]|0)==0){d=8}else{d=7}}}else{if((c[c[g>>2]>>2]&(c[c[g>>2]>>2]|0)-1|0)==0){c[l>>2]=Ot(c[h>>2]|0,c[(c[g>>2]|0)+4>>2]|0,(c[c[g>>2]>>2]<<1)*20|0)|0;if((c[l>>2]|0)==0){d=8}else{c[(c[g>>2]|0)+4>>2]=c[l>>2];d=7}}else{d=7}}if((d|0)==7){a=c[g>>2]|0;m=c[a>>2]|0;c[a>>2]=m+1;c[k>>2]=(c[(c[g>>2]|0)+4>>2]|0)+(m*20|0);m=c[k>>2]|0;c[m+0>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[c[k>>2]>>2]=c[e>>2];c[f>>2]=c[g>>2];m=c[f>>2]|0;i=j;return m|0}else if((d|0)==8){gu(c[h>>2]|0,c[e>>2]|0);cu(c[h>>2]|0,c[g>>2]|0);c[f>>2]=0;m=c[f>>2]|0;i=j;return m|0}return 0}function Qu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;j=f+16|0;h=f;k=f+4|0;l=f+8|0;g=f+12|0;c[j>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;if((c[h>>2]|0)==0){i=f;return}c[g>>2]=(c[(c[h>>2]|0)+4>>2]|0)+(((c[c[h>>2]>>2]|0)-1|0)*20|0);a=ft(c[c[j>>2]>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0;c[(c[g>>2]|0)+4>>2]=a;if((c[l>>2]|0)==0){i=f;return}if((c[(c[g>>2]|0)+4>>2]|0)==0){i=f;return}gt(c[(c[g>>2]|0)+4>>2]|0)|0;i=f;return}function Ru(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;k=e+16|0;f=e;j=e+4|0;h=e+8|0;g=e+12|0;c[k>>2]=a;c[f>>2]=b;c[j>>2]=d;c[h>>2]=c[c[k>>2]>>2];if((c[f>>2]|0)==0){i=e;return}c[g>>2]=(c[(c[f>>2]|0)+4>>2]|0)+(((c[c[f>>2]>>2]|0)-1|0)*20|0);cc(c[h>>2]|0,c[(c[g>>2]|0)+8>>2]|0);k=ft(c[h>>2]|0,c[(c[j>>2]|0)+4>>2]|0,(c[(c[j>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+4>>2]|0)|0)|0;c[(c[g>>2]|0)+8>>2]=k;i=e;return}function Su(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;h=e+16|0;g=e;j=e+4|0;f=e+8|0;c[h>>2]=a;c[g>>2]=b;c[j>>2]=d;c[f>>2]=c[j>>2];if((c[j>>2]|0)!=0){d=Ub(c[j>>2]|0)|0}else{d=0}c[f+4>>2]=d;a=Wx(c[h>>2]|0,c[g>>2]|0,f,0)|0;i=e;return a|0}function Tu(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;if((c[e>>2]|0)==0){i=d;return}c[f>>2]=(c[c[e>>2]>>2]|0)-1;while(1){if((c[f>>2]|0)<=0){break}a[(c[e>>2]|0)+8+((c[f>>2]|0)*72|0)+36>>0]=a[(c[e>>2]|0)+8+(((c[f>>2]|0)-1|0)*72|0)+36>>0]|0;c[f>>2]=(c[f>>2]|0)+ -1}a[(c[e>>2]|0)+44>>0]=0;i=d;return}function Uu(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;h=f+12|0;k=f;g=f+4|0;j=f+8|0;c[h>>2]=b;c[k>>2]=d;c[g>>2]=e;if((c[k>>2]|0)==0){i=f;return}if((c[c[k>>2]>>2]|0)<=0){i=f;return}c[j>>2]=(c[k>>2]|0)+8+(((c[c[k>>2]>>2]|0)-1|0)*72|0);if((c[(c[g>>2]|0)+4>>2]|0)==1){if((c[c[g>>2]>>2]|0)==0){b=(c[j>>2]|0)+37|0;a[b>>0]=a[b>>0]&-2|1;i=f;return}}b=Iv(c[c[h>>2]>>2]|0,c[g>>2]|0)|0;c[(c[j>>2]|0)+64>>2]=b;i=f;return}function Vu(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;j=k+24|0;m=k;h=k+4|0;n=k+8|0;l=k+12|0;o=k+16|0;g=k+20|0;c[m>>2]=b;c[h>>2]=d;c[n>>2]=e;c[l>>2]=f;do{if((c[h>>2]|0)==0){c[h>>2]=ve(c[m>>2]|0,80)|0;if((c[h>>2]|0)!=0){c[(c[h>>2]|0)+4>>2]=1;break}c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}}while(0);c[h>>2]=OD(c[m>>2]|0,c[h>>2]|0,1,c[c[h>>2]>>2]|0)|0;if((a[(c[m>>2]|0)+64>>0]|0)!=0){fu(c[m>>2]|0,c[h>>2]|0);c[j>>2]=0;b=c[j>>2]|0;i=k;return b|0}c[o>>2]=(c[h>>2]|0)+8+(((c[c[h>>2]>>2]|0)-1|0)*72|0);if((c[l>>2]|0)!=0){if((c[c[l>>2]>>2]|0)==0){c[l>>2]=0}}if((c[l>>2]|0)!=0){c[g>>2]=c[l>>2];c[l>>2]=c[n>>2];c[n>>2]=c[g>>2]}b=Iv(c[m>>2]|0,c[n>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=b;b=Iv(c[m>>2]|0,c[l>>2]|0)|0;c[(c[o>>2]|0)+4>>2]=b;c[j>>2]=c[h>>2];b=c[j>>2]|0;i=k;return b|0}function Wu(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+64|0;l=j;k=j+56|0;g=j+52|0;o=j+48|0;n=j+44|0;p=j+60|0;q=j+24|0;s=j+20|0;r=j+16|0;t=j+36|0;m=j+40|0;c[k>>2]=a;c[g>>2]=b;c[o>>2]=e;c[n>>2]=f;c[p>>2]=0;c[q>>2]=c[g>>2];c[q+4>>2]=c[o>>2];c[q+8>>2]=c[n>>2];c[r>>2]=0;while(1){if((c[r>>2]|0)>=3){break}if((c[q+(c[r>>2]<<2)>>2]|0)==0){break}c[s>>2]=c[q+(c[r>>2]<<2)>>2];c[t>>2]=0;while(1){if((c[t>>2]|0)>=7){break}if((c[(c[s>>2]|0)+4>>2]|0)==(d[31081+((c[t>>2]|0)*3|0)>>0]|0|0)){if((Tb(c[c[s>>2]>>2]|0,31040+(d[31080+((c[t>>2]|0)*3|0)>>0]|0)|0,c[(c[s>>2]|0)+4>>2]|0)|0)==0){h=8;break}}c[t>>2]=(c[t>>2]|0)+1}if((h|0)==8){h=0;c[p>>2]=c[p>>2]|(d[31082+((c[t>>2]|0)*3|0)>>0]|0)}if((c[t>>2]|0)>=7){h=11;break}c[r>>2]=(c[r>>2]|0)+1}if((h|0)==11){c[p>>2]=c[p>>2]|64}if((c[p>>2]&33|0)!=33){if((c[p>>2]&64|0)==0){if((c[p>>2]&32|0)==0){a=c[p>>2]|0;i=j;return a|0}if((c[p>>2]&24|0)==8){a=c[p>>2]|0;i=j;return a|0}bf(c[k>>2]|0,31152,l);c[p>>2]=1;a=c[p>>2]|0;i=j;return a|0}}c[m>>2]=16448;if((c[n>>2]|0)==0){c[m>>2]=(c[m>>2]|0)+1}a=c[k>>2]|0;f=c[o>>2]|0;e=c[m>>2]|0;b=c[n>>2]|0;c[l>>2]=c[g>>2];c[l+4>>2]=f;c[l+8>>2]=e;c[l+12>>2]=b;bf(a,31104,l);c[p>>2]=1;a=c[p>>2]|0;i=j;return a|0}function Xu(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+4|0;h=f;j=f+8|0;c[g>>2]=b;c[h>>2]=d;a[j>>0]=e;if((c[h>>2]|0)==0){i=f;return}c[(c[h>>2]|0)+4>>2]=c[(c[g>>2]|0)+532>>2];c[(c[g>>2]|0)+532>>2]=c[h>>2];a[(c[g>>2]|0)+449>>0]=a[j>>0]|0;i=f;return}function Yu(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;n=i;i=i+192|0;x=n+152|0;k=n+132|0;l=n+136|0;p=n+140|0;q=n+144|0;U=n+148|0;j=n+156|0;I=n+160|0;o=n+164|0;J=n+168|0;y=n+172|0;z=n+128|0;P=n+124|0;t=n+120|0;r=n+112|0;T=n+80|0;K=n+76|0;h=n+32|0;S=n;E=n+4|0;O=n+8|0;m=n+16|0;w=n+20|0;R=n+24|0;Q=n+176|0;D=n+28|0;F=n+178|0;u=n+36|0;H=n+40|0;A=n+44|0;v=n+48|0;M=n+52|0;N=n+56|0;s=n+60|0;B=n+64|0;G=n+68|0;C=n+72|0;c[x>>2]=e;c[k>>2]=f;c[l>>2]=g;c[h>>2]=-1;c[m>>2]=0;c[R>>2]=0;b[Q>>1]=1;c[u>>2]=0;c[H>>2]=0;c[A>>2]=0;c[v>>2]=0;c[M>>2]=0;c[N>>2]=0;c[r+0>>2]=0;c[r+4>>2]=0;c[t>>2]=c[c[x>>2]>>2];a:do{if((c[(c[x>>2]|0)+64>>2]|0)==0){if((d[(c[t>>2]|0)+64>>0]|0)==0){c[q>>2]=jA(c[x>>2]|0,c[k>>2]|0)|0;if((c[q>>2]|0)!=0){c[B>>2]=RA(c[x>>2]|0,c[q>>2]|0,109,0,0)|0;c[s>>2]=(c[(c[q>>2]|0)+12>>2]|0)!=0&1;if((vw(c[x>>2]|0,c[q>>2]|0)|0)==0){if((SA(c[x>>2]|0,c[q>>2]|0,(c[B>>2]|0)!=0?1:0)|0)==0){c[K>>2]=ef(c[t>>2]|0,c[(c[q>>2]|0)+68>>2]|0)|0;c[U>>2]=c[(c[(c[t>>2]|0)+16>>2]|0)+(c[K>>2]<<4)>>2];c[S>>2]=Lv(c[x>>2]|0,9,c[c[q>>2]>>2]|0,0,c[U>>2]|0)|0;if((c[S>>2]|0)!=1){f=(c[x>>2]|0)+68|0;e=c[f>>2]|0;c[f>>2]=e+1;c[(c[k>>2]|0)+48>>2]=e;c[J>>2]=e;c[P>>2]=0;c[o>>2]=c[(c[q>>2]|0)+8>>2];while(1){if((c[o>>2]|0)==0){break}e=(c[x>>2]|0)+68|0;c[e>>2]=(c[e>>2]|0)+1;c[o>>2]=c[(c[o>>2]|0)+20>>2];c[P>>2]=(c[P>>2]|0)+1}if((c[s>>2]|0)!=0){KD(c[x>>2]|0,r,c[c[q>>2]>>2]|0)}c[p>>2]=Ov(c[x>>2]|0)|0;if((c[p>>2]|0)!=0){if((d[(c[x>>2]|0)+18>>0]|0)==0){TA(c[p>>2]|0)}$v(c[x>>2]|0,1,c[K>>2]|0);if((c[s>>2]|0)!=0){LD(c[x>>2]|0,c[q>>2]|0,c[l>>2]|0,c[J>>2]|0);e=c[J>>2]|0;c[z>>2]=e;c[y>>2]=e}c[T+0>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;c[T+16>>2]=0;c[T+20>>2]=0;c[T+24>>2]=0;c[T+28>>2]=0;c[T>>2]=c[x>>2];c[T+4>>2]=c[k>>2];if((bx(T,c[l>>2]|0)|0)==0){if((c[(c[t>>2]|0)+24>>2]&128|0)!=0){f=(c[x>>2]|0)+72|0;e=(c[f>>2]|0)+1|0;c[f>>2]=e;c[h>>2]=e;Qv(c[p>>2]|0,25,0,c[h>>2]|0)|0}b:do{if((c[S>>2]|0)==0){if((c[l>>2]|0)==0){if((c[B>>2]|0)!=0){L=30}else{if((a[(c[q>>2]|0)+44>>0]&16|0)!=0){L=30}else{if(0==(IC(c[x>>2]|0,c[q>>2]|0,0,0)|0)){py(c[x>>2]|0,c[K>>2]|0,c[(c[q>>2]|0)+32>>2]|0,1,c[c[q>>2]>>2]|0);if((a[(c[q>>2]|0)+44>>0]&32|0)==0){Sv(c[p>>2]|0,115,c[(c[q>>2]|0)+32>>2]|0,c[K>>2]|0,c[h>>2]|0,c[c[q>>2]>>2]|0,-2)|0}c[o>>2]=c[(c[q>>2]|0)+8>>2];while(1){if((c[o>>2]|0)==0){break b}Qv(c[p>>2]|0,115,c[(c[o>>2]|0)+44>>2]|0,c[K>>2]|0)|0;c[o>>2]=c[(c[o>>2]|0)+20>>2]}}else{L=30}}}}else{L=30}}else{L=30}}while(0);c:do{if((L|0)==30){if((a[(c[q>>2]|0)+44>>0]&32|0)==0){c[w>>2]=0;b[Q>>1]=1;f=(c[x>>2]|0)+72|0;e=(c[f>>2]|0)+1|0;c[f>>2]=e;c[H>>2]=e;Qv(c[p>>2]|0,28,0,c[H>>2]|0)|0}else{c[w>>2]=Dy(c[q>>2]|0)|0;b[Q>>1]=b[(c[w>>2]|0)+50>>1]|0;c[R>>2]=(c[(c[x>>2]|0)+72>>2]|0)+1;f=(c[x>>2]|0)+72|0;c[f>>2]=(c[f>>2]|0)+(b[Q>>1]|0);f=(c[x>>2]|0)+68|0;e=c[f>>2]|0;c[f>>2]=e+1;c[u>>2]=e;c[N>>2]=Qv(c[p>>2]|0,55,c[u>>2]|0,b[Q>>1]|0)|0;ry(c[x>>2]|0,c[w>>2]|0)}c[I>>2]=lB(c[x>>2]|0,c[k>>2]|0,c[l>>2]|0,0,0,12,(c[J>>2]|0)+1|0)|0;if((c[I>>2]|0)==0){break a}c[E>>2]=MD(c[I>>2]|0,O)|0;if((c[(c[t>>2]|0)+24>>2]&128|0)!=0){Qv(c[p>>2]|0,37,c[h>>2]|0,1)|0}do{if((c[w>>2]|0)!=0){c[j>>2]=0;while(1){if((c[j>>2]|0)>=(b[Q>>1]|0)){break}gz(c[p>>2]|0,c[q>>2]|0,c[J>>2]|0,b[(c[(c[w>>2]|0)+4>>2]|0)+(c[j>>2]<<1)>>1]|0,(c[R>>2]|0)+(c[j>>2]|0)|0);c[j>>2]=(c[j>>2]|0)+1}c[D>>2]=c[R>>2]}else{c[D>>2]=(c[(c[x>>2]|0)+72>>2]|0)+1;c[D>>2]=xz(c[x>>2]|0,c[q>>2]|0,-1,c[J>>2]|0,c[D>>2]|0,0)|0;if((c[D>>2]|0)<=(c[(c[x>>2]|0)+72>>2]|0)){break}c[(c[x>>2]|0)+72>>2]=c[D>>2]}}while(0);do{if((c[E>>2]|0)!=0){b[F>>1]=b[Q>>1]|0;c[m>>2]=$e(c[t>>2]|0,(c[P>>2]|0)+2|0)|0;if((c[m>>2]|0)==0){mB(c[I>>2]|0);break a}aL(c[m>>2]|0,1,(c[P>>2]|0)+1|0)|0;a[(c[m>>2]|0)+((c[P>>2]|0)+1)>>0]=0;if((c[O>>2]|0)>=0){a[(c[m>>2]|0)+((c[O>>2]|0)-(c[J>>2]|0))>>0]=0}if((c[O+4>>2]|0)>=0){a[(c[m>>2]|0)+((c[O+4>>2]|0)-(c[J>>2]|0))>>0]=0}if((c[N>>2]|0)!=0){of(c[p>>2]|0,c[N>>2]|0)}c[M>>2]=Yv(c[p>>2]|0,16)|0}else{if((c[w>>2]|0)!=0){U=(c[x>>2]|0)+72|0;T=(c[U>>2]|0)+1|0;c[U>>2]=T;c[D>>2]=T;b[F>>1]=0;T=c[p>>2]|0;U=c[R>>2]|0;g=b[Q>>1]|0;f=c[D>>2]|0;e=GA(c[p>>2]|0,c[w>>2]|0)|0;Sv(T,48,U,g,f,e,b[Q>>1]|0)|0;Qv(c[p>>2]|0,107,c[u>>2]|0,c[D>>2]|0)|0;break}else{b[F>>1]=1;Qv(c[p>>2]|0,125,c[H>>2]|0,c[D>>2]|0)|0;break}}}while(0);mB(c[I>>2]|0);if((c[E>>2]|0)!=0){c[A>>2]=cz(c[p>>2]|0)|0;Qv(c[p>>2]|0,16,0,c[A>>2]|0)|0;jw(c[p>>2]|0,c[M>>2]|0)}if((c[s>>2]|0)==0){JA(c[x>>2]|0,c[q>>2]|0,53,c[J>>2]|0,c[m>>2]|0,y,z)|0}do{if((c[E>>2]|0)!=0){if((a[(c[m>>2]|0)+((c[y>>2]|0)-(c[J>>2]|0))>>0]|0)==0){break}ff(c[p>>2]|0,65,c[y>>2]|0,c[A>>2]|0,c[D>>2]|0,b[F>>1]|0)|0}else{I=c[p>>2]|0;if((c[w>>2]|0)!=0){c[v>>2]=oy(I,105,c[u>>2]|0)|0;Qv(c[p>>2]|0,98,c[u>>2]|0,c[D>>2]|0)|0;break}else{c[v>>2]=Tv(I,126,c[H>>2]|0,0,c[D>>2]|0)|0;break}}}while(0);if((a[(c[q>>2]|0)+44>>0]&16|0)!=0){c[G>>2]=ww(c[t>>2]|0,c[q>>2]|0)|0;aB(c[x>>2]|0,c[q>>2]|0);Sv(c[p>>2]|0,15,0,1,c[D>>2]|0,c[G>>2]|0,-10)|0;gf(c[p>>2]|0,2);xw(c[x>>2]|0)}else{c[C>>2]=(d[(c[x>>2]|0)+18>>0]|0)==0&1;KC(c[x>>2]|0,c[q>>2]|0,c[B>>2]|0,c[y>>2]|0,c[z>>2]|0,c[D>>2]|0,b[F>>1]|0,c[C>>2]&255,10,c[E>>2]&255)}do{if((c[E>>2]|0)!=0){$y(c[p>>2]|0,c[A>>2]|0)}else{A=c[p>>2]|0;if((c[w>>2]|0)!=0){Qv(A,9,c[u>>2]|0,(c[v>>2]|0)+1|0)|0;jw(c[p>>2]|0,c[v>>2]|0);break}else{Qv(A,16,0,c[v>>2]|0)|0;jw(c[p>>2]|0,c[v>>2]|0);break}}}while(0);if((c[s>>2]|0)!=0){break}if((a[(c[q>>2]|0)+44>>0]&16|0)!=0){break}if((c[w>>2]|0)==0){oy(c[p>>2]|0,58,c[y>>2]|0)|0}c[j>>2]=0;c[o>>2]=c[(c[q>>2]|0)+8>>2];while(1){if((c[o>>2]|0)==0){break c}oy(c[p>>2]|0,58,(c[z>>2]|0)+(c[j>>2]|0)|0)|0;c[j>>2]=(c[j>>2]|0)+1;c[o>>2]=c[(c[o>>2]|0)+20>>2]}}}while(0);if((d[(c[x>>2]|0)+18>>0]|0)==0){if((c[(c[x>>2]|0)+412>>2]|0)==0){eB(c[x>>2]|0)}}if((c[(c[t>>2]|0)+24>>2]&128|0)!=0){if((a[(c[x>>2]|0)+18>>0]|0)==0){if((c[(c[x>>2]|0)+412>>2]|0)==0){Qv(c[p>>2]|0,35,c[h>>2]|0,1)|0;rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,31024,0)|0}}}}}}}}}}}}while(0);ND(r);fu(c[t>>2]|0,c[k>>2]|0);gu(c[t>>2]|0,c[l>>2]|0);cc(c[t>>2]|0,c[m>>2]|0);i=n;return}function Zu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;h=e;f=e+16|0;j=e+4|0;g=e+8|0;k=e+12|0;c[f>>2]=a;c[j>>2]=b;c[g>>2]=d;c[k>>2]=c[(c[c[f>>2]>>2]|0)+96>>2];if((c[j>>2]|0)==0){i=e;return}if((c[c[j>>2]>>2]|0)<=(c[k>>2]|0)){i=e;return}a=c[f>>2]|0;c[h>>2]=c[g>>2];bf(a,31e3,h);i=e;return}function _u(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0;D=i;i=i+272|0;ma=D;t=D+176|0;p=D+172|0;o=D+168|0;v=D+164|0;Q=D+160|0;E=D+156|0;Y=D+148|0;s=D+144|0;B=D+140|0;ha=D+136|0;u=D+132|0;w=D+152|0;x=D+216|0;ia=D+220|0;ea=D+224|0;y=D+228|0;C=D+232|0;n=D+236|0;I=D+240|0;q=D+244|0;z=D+248|0;$=D+256|0;V=D+254|0;N=D+255|0;aa=D+128|0;r=D+120|0;ja=D+184|0;ka=D+56|0;P=D+48|0;S=D+44|0;l=D+40|0;F=D+36|0;T=D+32|0;R=D+52|0;_=D+12|0;X=D+8|0;A=D+4|0;J=D+16|0;ga=D+24|0;m=D+108|0;H=D+60|0;M=D+64|0;U=D+68|0;Z=D+72|0;ba=D+76|0;G=D+80|0;na=D+84|0;la=D+88|0;fa=D+92|0;ca=D+252|0;da=D+96|0;W=D+100|0;L=D+104|0;O=D+112|0;c[t>>2]=f;c[p>>2]=g;c[o>>2]=h;c[v>>2]=j;c[Q>>2]=k;c[B>>2]=0;c[I>>2]=0;c[q>>2]=0;c[aa>>2]=0;c[A>>2]=0;c[J>>2]=0;c[m>>2]=0;c[Z>>2]=0;c[ba>>2]=0;c[G>>2]=0;c[r+0>>2]=0;c[r+4>>2]=0;c[n>>2]=c[c[t>>2]>>2];if((c[(c[t>>2]|0)+64>>2]|0)!=0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}if((d[(c[n>>2]|0)+64>>0]|0)!=0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}c[s>>2]=jA(c[t>>2]|0,c[p>>2]|0)|0;if((c[s>>2]|0)==0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}c[ka>>2]=ef(c[c[t>>2]>>2]|0,c[(c[s>>2]|0)+68>>2]|0)|0;c[R>>2]=RA(c[t>>2]|0,c[s>>2]|0,110,c[o>>2]|0,_)|0;c[T>>2]=(c[(c[s>>2]|0)+12>>2]|0)!=0&1;if((vw(c[t>>2]|0,c[s>>2]|0)|0)!=0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}if((SA(c[t>>2]|0,c[s>>2]|0,c[_>>2]|0)|0)!=0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}f=(c[t>>2]|0)+68|0;j=c[f>>2]|0;c[f>>2]=j+1;c[y>>2]=j;c[ea>>2]=j;c[(c[p>>2]|0)+48>>2]=j;c[C>>2]=(c[y>>2]|0)+1;if((a[(c[s>>2]|0)+44>>0]&32|0)==0){k=0}else{k=Dy(c[s>>2]|0)|0}c[x>>2]=k;c[ia>>2]=0;c[w>>2]=c[(c[s>>2]|0)+8>>2];while(1){if((c[w>>2]|0)==0){break}if((a[(c[w>>2]|0)+55>>0]&3|0)==2){if((c[x>>2]|0)!=0){c[y>>2]=c[(c[t>>2]|0)+68>>2];c[(c[p>>2]|0)+48>>2]=c[y>>2]}}j=(c[t>>2]|0)+68|0;c[j>>2]=(c[j>>2]|0)+1;c[w>>2]=c[(c[w>>2]|0)+20>>2];c[ia>>2]=(c[ia>>2]|0)+1}c[q>>2]=$e(c[n>>2]|0,((b[(c[s>>2]|0)+38>>1]|0)+(c[ia>>2]|0)<<2)+(c[ia>>2]|0)+2|0)|0;if((c[q>>2]|0)==0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}c[I>>2]=(c[q>>2]|0)+(b[(c[s>>2]|0)+38>>1]<<2);c[z>>2]=(c[I>>2]|0)+(c[ia>>2]<<2);aL(c[z>>2]|0,1,(c[ia>>2]|0)+1|0)|0;a[(c[z>>2]|0)+((c[ia>>2]|0)+1)>>0]=0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}c[(c[q>>2]|0)+(c[E>>2]<<2)>>2]=-1;c[E>>2]=(c[E>>2]|0)+1}c[ja+0>>2]=0;c[ja+4>>2]=0;c[ja+8>>2]=0;c[ja+12>>2]=0;c[ja+16>>2]=0;c[ja+20>>2]=0;c[ja+24>>2]=0;c[ja+28>>2]=0;c[ja>>2]=c[t>>2];c[ja+4>>2]=c[p>>2];a[$>>0]=0;a[V>>0]=0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[c[o>>2]>>2]|0)){K=42;break}if((bx(ja,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)>>2]|0)|0)!=0){K=193;break}c[Y>>2]=0;while(1){if((c[Y>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}j=(Dc(c[(c[(c[s>>2]|0)+4>>2]|0)+((c[Y>>2]|0)*24|0)>>2]|0,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)+4>>2]|0)|0)==0;k=c[Y>>2]|0;if(j){K=24;break}c[Y>>2]=k+1}if((K|0)==24){K=0;if((k|0)==(b[(c[s>>2]|0)+36>>1]|0)){a[V>>0]=1;c[aa>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)>>2]}else{if((c[x>>2]|0)!=0){if((a[(c[(c[s>>2]|0)+4>>2]|0)+((c[Y>>2]|0)*24|0)+23>>0]&1|0)!=0){a[$>>0]=1}}}c[(c[q>>2]|0)+(c[Y>>2]<<2)>>2]=c[E>>2]}if((c[Y>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){if((c[x>>2]|0)!=0){K=35;break}if((Fx(c[(c[(c[o>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)+4>>2]|0)|0)==0){K=35;break}c[Y>>2]=-1;a[V>>0]=1;c[aa>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)>>2]}if((c[Y>>2]|0)<0){k=23816}else{k=c[(c[(c[s>>2]|0)+4>>2]|0)+((c[Y>>2]|0)*24|0)>>2]|0}c[na>>2]=Lv(c[t>>2]|0,23,c[c[s>>2]>>2]|0,k,c[(c[(c[n>>2]|0)+16>>2]|0)+(c[ka>>2]<<4)>>2]|0)|0;if((c[na>>2]|0)==1){K=193;break}if((c[na>>2]|0)==2){c[(c[q>>2]|0)+(c[Y>>2]<<2)>>2]=-1}c[E>>2]=(c[E>>2]|0)+1}if((K|0)==35){j=c[t>>2]|0;c[ma>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+((c[E>>2]|0)*20|0)+4>>2];bf(j,8184,ma);a[(c[t>>2]|0)+17>>0]=1;ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}else if((K|0)==42){a[N>>0]=(d[V>>0]|0)+(d[$>>0]|0);j=(c[p>>2]|0)+64|0;c[j>>2]=0;c[j+4>>2]=0;c[S>>2]=IC(c[t>>2]|0,c[s>>2]|0,c[q>>2]|0,d[N>>0]|0)|0;c[Y>>2]=0;c[w>>2]=c[(c[s>>2]|0)+8>>2];while(1){if((c[w>>2]|0)==0){break}a:do{if((d[N>>0]|0)!=0){K=48}else{if((c[S>>2]|0)!=0){K=48}else{if((c[(c[w>>2]|0)+36>>2]|0)!=0){K=48}else{if((c[w>>2]|0)==(c[x>>2]|0)){K=48}else{c[la>>2]=0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(e[(c[w>>2]|0)+50>>1]|0)){break a}if((c[(c[q>>2]|0)+(b[(c[(c[w>>2]|0)+4>>2]|0)+(c[E>>2]<<1)>>1]<<2)>>2]|0)>=0){break}c[E>>2]=(c[E>>2]|0)+1}f=(c[t>>2]|0)+72|0;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[la>>2]=j}}}}}while(0);if((K|0)==48){K=0;f=(c[t>>2]|0)+72|0;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[la>>2]=j}if((c[la>>2]|0)==0){a[(c[z>>2]|0)+((c[Y>>2]|0)+1)>>0]=0}c[(c[I>>2]|0)+(c[Y>>2]<<2)>>2]=c[la>>2];c[w>>2]=c[(c[w>>2]|0)+20>>2];c[Y>>2]=(c[Y>>2]|0)+1}c[u>>2]=Ov(c[t>>2]|0)|0;if((c[u>>2]|0)==0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}if((d[(c[t>>2]|0)+18>>0]|0)==0){TA(c[u>>2]|0)}$v(c[t>>2]|0,1,c[ka>>2]|0);ka=c[t>>2]|0;if((a[(c[s>>2]|0)+44>>0]&16|0)!=0){JD(ka,c[p>>2]|0,c[s>>2]|0,c[o>>2]|0,c[aa>>2]|0,c[q>>2]|0,c[v>>2]|0,c[Q>>2]|0);c[v>>2]=0;c[p>>2]=0;ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}j=ka+72|0;f=(c[j>>2]|0)+1|0;c[j>>2]=f;c[ba>>2]=f;f=(c[t>>2]|0)+72|0;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[M>>2]=j;c[H>>2]=j;if((d[$>>0]|0)!=0){K=65}else{if((c[R>>2]|0)!=0){K=65}else{if((c[S>>2]|0)!=0){K=65}}}if((K|0)==65){c[Z>>2]=(c[(c[t>>2]|0)+72>>2]|0)+1;j=(c[t>>2]|0)+72|0;c[j>>2]=(c[j>>2]|0)+(b[(c[s>>2]|0)+38>>1]|0)}if((d[N>>0]|0)!=0){K=69}else{if((c[R>>2]|0)!=0){K=69}else{if((c[S>>2]|0)!=0){K=69}}}if((K|0)==69){f=(c[t>>2]|0)+72|0;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[M>>2]=j}c[U>>2]=(c[(c[t>>2]|0)+72>>2]|0)+1;j=(c[t>>2]|0)+72|0;c[j>>2]=(c[j>>2]|0)+(b[(c[s>>2]|0)+38>>1]|0);if((c[T>>2]|0)!=0){KD(c[t>>2]|0,r,c[c[s>>2]>>2]|0)}if((c[T>>2]|0)!=0){LD(c[t>>2]|0,c[s>>2]|0,c[v>>2]|0,c[y>>2]|0)}if((bx(ja,c[v>>2]|0)|0)!=0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}if((a[(c[s>>2]|0)+44>>0]&32|0)==0){Tv(c[u>>2]|0,28,0,c[ba>>2]|0,c[H>>2]|0)|0;c[ha>>2]=lB(c[t>>2]|0,c[p>>2]|0,c[v>>2]|0,0,0,4,c[C>>2]|0)|0;if((c[ha>>2]|0)==0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}c[P>>2]=MD(c[ha>>2]|0,ga)|0;Qv(c[u>>2]|0,100,c[y>>2]|0,c[H>>2]|0)|0;if((c[P>>2]|0)==0){Qv(c[u>>2]|0,125,c[ba>>2]|0,c[H>>2]|0)|0}mB(c[ha>>2]|0)}else{b[ca>>1]=b[(c[x>>2]|0)+50>>1]|0;c[fa>>2]=(c[(c[t>>2]|0)+72>>2]|0)+1;j=(c[t>>2]|0)+72|0;c[j>>2]=(c[j>>2]|0)+(b[ca>>1]|0);j=(c[t>>2]|0)+72|0;f=(c[j>>2]|0)+1|0;c[j>>2]=f;c[G>>2]=f;f=(c[t>>2]|0)+68|0;j=c[f>>2]|0;c[f>>2]=j+1;c[A>>2]=j;Qv(c[u>>2]|0,28,0,c[fa>>2]|0)|0;c[da>>2]=Qv(c[u>>2]|0,55,c[A>>2]|0,b[ca>>1]|0)|0;ry(c[t>>2]|0,c[x>>2]|0);c[ha>>2]=lB(c[t>>2]|0,c[p>>2]|0,c[v>>2]|0,0,0,4,c[C>>2]|0)|0;if((c[ha>>2]|0)==0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}c[P>>2]=MD(c[ha>>2]|0,ga)|0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(b[ca>>1]|0)){break}gz(c[u>>2]|0,c[s>>2]|0,c[y>>2]|0,b[(c[(c[x>>2]|0)+4>>2]|0)+(c[E>>2]<<1)>>1]|0,(c[fa>>2]|0)+(c[E>>2]|0)|0);c[E>>2]=(c[E>>2]|0)+1}ja=c[u>>2]|0;if((c[P>>2]|0)!=0){of(ja,c[da>>2]|0);c[J>>2]=b[ca>>1]|0;c[G>>2]=c[fa>>2]}else{h=c[fa>>2]|0;g=b[ca>>1]|0;f=c[G>>2]|0;j=GA(c[u>>2]|0,c[x>>2]|0)|0;Sv(ja,48,h,g,f,j,b[ca>>1]|0)|0;Qv(c[u>>2]|0,107,c[A>>2]|0,c[G>>2]|0)|0}mB(c[ha>>2]|0)}if((c[(c[n>>2]|0)+24>>2]&128|0)!=0){if((c[(c[t>>2]|0)+412>>2]|0)==0){f=(c[t>>2]|0)+72|0;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[m>>2]=j;Qv(c[u>>2]|0,25,0,c[m>>2]|0)|0}}c[l>>2]=cz(c[u>>2]|0)|0;if((c[T>>2]|0)==0){b:do{if((c[Q>>2]|0)==5){aL(c[z>>2]|0,1,(c[ia>>2]|0)+1|0)|0}else{c[w>>2]=c[(c[s>>2]|0)+8>>2];while(1){if((c[w>>2]|0)==0){break b}if((d[(c[w>>2]|0)+54>>0]|0)==5){break}c[w>>2]=c[(c[w>>2]|0)+20>>2]}aL(c[z>>2]|0,1,(c[ia>>2]|0)+1|0)|0}}while(0);do{if((c[P>>2]|0)!=0){if((c[ga>>2]|0)>=0){a[(c[z>>2]|0)+((c[ga>>2]|0)-(c[ea>>2]|0))>>0]=0}if((c[ga+4>>2]|0)<0){break}a[(c[z>>2]|0)+((c[ga+4>>2]|0)-(c[ea>>2]|0))>>0]=0}}while(0);JA(c[t>>2]|0,c[s>>2]|0,53,c[ea>>2]|0,c[z>>2]|0,0,0)|0}do{if((c[P>>2]|0)!=0){if((a[(c[z>>2]|0)+((c[y>>2]|0)-(c[ea>>2]|0))>>0]|0)!=0){ff(c[u>>2]|0,65,c[y>>2]|0,c[l>>2]|0,c[G>>2]|0,c[J>>2]|0)|0}c[F>>2]=c[l>>2];Qv(c[u>>2]|0,76,(c[x>>2]|0)!=0?c[G>>2]|0:c[H>>2]|0,c[l>>2]|0)|0}else{ca=c[u>>2]|0;if((c[x>>2]|0)!=0){c[F>>2]=cz(ca)|0;Qv(c[u>>2]|0,105,c[A>>2]|0,c[l>>2]|0)|0;c[B>>2]=Qv(c[u>>2]|0,98,c[A>>2]|0,c[G>>2]|0)|0;ff(c[u>>2]|0,65,c[y>>2]|0,c[F>>2]|0,c[G>>2]|0,0)|0;break}else{c[F>>2]=Tv(ca,126,c[ba>>2]|0,c[l>>2]|0,c[H>>2]|0)|0;Tv(c[u>>2]|0,67,c[y>>2]|0,c[F>>2]|0,c[H>>2]|0)|0;break}}}while(0);if((a[V>>0]|0)!=0){vz(c[t>>2]|0,c[aa>>2]|0,c[M>>2]|0);oy(c[u>>2]|0,38,c[M>>2]|0)|0}do{if((d[$>>0]|0)!=0){K=117}else{if((c[S>>2]|0)!=0){K=117;break}if((c[R>>2]|0)!=0){K=117}}}while(0);do{if((K|0)==117){if((c[S>>2]|0)!=0){$=NC(c[t>>2]|0,c[s>>2]|0)|0}else{$=0}c[W>>2]=$;j=MC(c[t>>2]|0,c[R>>2]|0,c[o>>2]|0,0,3,c[s>>2]|0,c[Q>>2]|0)|0;c[W>>2]=c[W>>2]|j;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}do{if((c[W>>2]|0)==-1){K=125}else{if((c[E>>2]|0)<32){if((c[W>>2]&1<>2]|0)!=0){K=125;break}}if((a[(c[(c[s>>2]|0)+4>>2]|0)+((c[E>>2]|0)*24|0)+23>>0]&1|0)!=0){K=125;break}Qv(c[u>>2]|0,28,0,(c[Z>>2]|0)+(c[E>>2]|0)|0)|0}}while(0);if((K|0)==125){K=0;gz(c[u>>2]|0,c[s>>2]|0,c[y>>2]|0,c[E>>2]|0,(c[Z>>2]|0)+(c[E>>2]|0)|0)}c[E>>2]=(c[E>>2]|0)+1}if((d[V>>0]|0)!=0){break}if((c[x>>2]|0)!=0){break}Qv(c[u>>2]|0,33,c[H>>2]|0,c[M>>2]|0)|0}}while(0);c[X>>2]=MC(c[t>>2]|0,c[R>>2]|0,c[o>>2]|0,1,1,c[s>>2]|0,c[Q>>2]|0)|0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break}c:do{if((c[E>>2]|0)==(b[(c[s>>2]|0)+36>>1]|0)){Qv(c[u>>2]|0,28,0,(c[U>>2]|0)+(c[E>>2]|0)|0)|0}else{c[Y>>2]=c[(c[q>>2]|0)+(c[E>>2]<<2)>>2];if((c[Y>>2]|0)>=0){vz(c[t>>2]|0,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[Y>>2]|0)*20|0)>>2]|0,(c[U>>2]|0)+(c[E>>2]|0)|0);break}do{if(0!=(c[_>>2]&1|0)){if((c[E>>2]|0)>31){break}if((c[X>>2]&1<>2]|0)!=0){break}Qv(c[u>>2]|0,28,0,(c[U>>2]|0)+(c[E>>2]|0)|0)|0;break c}}while(0);gz(c[u>>2]|0,c[s>>2]|0,c[y>>2]|0,c[E>>2]|0,(c[U>>2]|0)+(c[E>>2]|0)|0)}}while(0);c[E>>2]=(c[E>>2]|0)+1}d:do{if((c[_>>2]&1|0)!=0){YA(c[u>>2]|0,c[s>>2]|0,c[U>>2]|0);ZA(c[t>>2]|0,c[R>>2]|0,110,c[o>>2]|0,1,c[s>>2]|0,c[H>>2]|0,c[Q>>2]|0,c[F>>2]|0);X=c[u>>2]|0;W=c[y>>2]|0;V=c[F>>2]|0;if((c[x>>2]|0)!=0){ff(X,65,W,V,c[G>>2]|0,c[J>>2]|0)|0}else{Tv(X,67,W,V,c[H>>2]|0)|0}c[E>>2]=0;while(1){if((c[E>>2]|0)>=(b[(c[s>>2]|0)+38>>1]|0)){break d}do{if((c[(c[q>>2]|0)+(c[E>>2]<<2)>>2]|0)<0){if((c[E>>2]|0)==(b[(c[s>>2]|0)+36>>1]|0)){break}gz(c[u>>2]|0,c[s>>2]|0,c[y>>2]|0,c[E>>2]|0,(c[U>>2]|0)+(c[E>>2]|0)|0)}}while(0);c[E>>2]=(c[E>>2]|0)+1}}}while(0);do{if((c[T>>2]|0)==0){c[L>>2]=0;c[O>>2]=0;bB(c[t>>2]|0,c[s>>2]|0,c[I>>2]|0,c[y>>2]|0,c[C>>2]|0,c[M>>2]|0,c[H>>2]|0,a[N>>0]|0,c[Q>>2]&255,c[F>>2]|0,O);if((c[S>>2]|0)!=0){cB(c[t>>2]|0,c[s>>2]|0,c[H>>2]|0,0,c[q>>2]|0,d[N>>0]|0)}if((c[O>>2]|0)!=0){K=158}else{if((d[N>>0]|0)!=0){K=158}}do{if((K|0)==158){U=c[u>>2]|0;T=c[y>>2]|0;if((c[x>>2]|0)!=0){c[L>>2]=ff(U,65,T,0,c[G>>2]|0,c[J>>2]|0)|0;break}else{c[L>>2]=Tv(U,67,T,0,c[H>>2]|0)|0;break}}}while(0);LC(c[t>>2]|0,c[s>>2]|0,c[y>>2]|0,c[C>>2]|0,c[I>>2]|0);do{if((c[S>>2]|0)!=0){K=164}else{if((d[N>>0]|0)!=0){K=164;break}if((c[x>>2]|0)!=0){K=164}}}while(0);if((K|0)==164){Qv(c[u>>2]|0,74,c[y>>2]|0,0)|0}if((c[O>>2]|0)!=0){K=167}else{if((d[N>>0]|0)!=0){K=167}}if((K|0)==167){jw(c[u>>2]|0,c[L>>2]|0)}if((c[S>>2]|0)!=0){cB(c[t>>2]|0,c[s>>2]|0,0,c[M>>2]|0,c[q>>2]|0,d[N>>0]|0)}dB(c[t>>2]|0,c[s>>2]|0,c[y>>2]|0,c[C>>2]|0,c[M>>2]|0,c[I>>2]|0,1,0,0);if((c[S>>2]|0)==0){break}OC(c[t>>2]|0,c[s>>2]|0,c[o>>2]|0,c[H>>2]|0,c[q>>2]|0,d[N>>0]|0)}}while(0);do{if((c[(c[n>>2]|0)+24>>2]&128|0)!=0){if((c[(c[t>>2]|0)+412>>2]|0)!=0){break}Qv(c[u>>2]|0,37,c[m>>2]|0,1)|0}}while(0);ZA(c[t>>2]|0,c[R>>2]|0,110,c[o>>2]|0,2,c[s>>2]|0,c[H>>2]|0,c[Q>>2]|0,c[F>>2]|0);do{if((c[P>>2]|0)==0){G=c[u>>2]|0;F=c[F>>2]|0;if((c[x>>2]|0)!=0){$y(G,F);Qv(c[u>>2]|0,9,c[A>>2]|0,c[B>>2]|0)|0;break}else{Qv(G,16,0,F)|0;break}}}while(0);$y(c[u>>2]|0,c[l>>2]|0);c[E>>2]=0;c[w>>2]=c[(c[s>>2]|0)+8>>2];while(1){if((c[w>>2]|0)==0){break}if((a[(c[z>>2]|0)+((c[E>>2]|0)+1)>>0]|0)!=0){Qv(c[u>>2]|0,58,(c[C>>2]|0)+(c[E>>2]|0)|0,0)|0}c[w>>2]=c[(c[w>>2]|0)+20>>2];c[E>>2]=(c[E>>2]|0)+1}if((c[y>>2]|0)<(c[C>>2]|0)){Qv(c[u>>2]|0,58,c[y>>2]|0,0)|0}do{if((d[(c[t>>2]|0)+18>>0]|0)==0){if((c[(c[t>>2]|0)+412>>2]|0)!=0){break}eB(c[t>>2]|0)}}while(0);if((c[(c[n>>2]|0)+24>>2]&128|0)==0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}if((c[(c[t>>2]|0)+412>>2]|0)!=0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}if((a[(c[t>>2]|0)+18>>0]|0)!=0){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}Qv(c[u>>2]|0,35,c[m>>2]|0,1)|0;rA(c[u>>2]|0,1);sA(c[u>>2]|0,0,0,30976,0)|0;ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}else if((K|0)==193){ND(r);j=c[n>>2]|0;f=c[q>>2]|0;cc(j,f);f=c[n>>2]|0;j=c[p>>2]|0;fu(f,j);j=c[n>>2]|0;f=c[o>>2]|0;cu(j,f);f=c[n>>2]|0;j=c[v>>2]|0;gu(f,j);i=D;return}}function $u(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0;r=i;i=i+272|0;_=r;Q=r+212|0;m=r+216|0;o=r+192|0;p=r+188|0;v=r+184|0;H=r+180|0;u=r+176|0;ma=r+172|0;oa=r+168|0;N=r+160|0;O=r+156|0;B=r+152|0;s=r+148|0;A=r+224|0;L=r+164|0;P=r+196|0;l=r+200|0;U=r+204|0;F=r+264|0;M=r+260|0;E=r+256|0;S=r+252|0;T=r+248|0;X=r+228|0;ka=r+220|0;na=r+208|0;J=r+271|0;D=r+268|0;ba=r+270|0;ia=r+269|0;n=r+60|0;k=r+52|0;R=r+48|0;t=r+44|0;K=r+40|0;G=r+36|0;y=r+56|0;q=r+24|0;z=r+20|0;w=r+16|0;ca=r+28|0;ga=r+32|0;ha=r+140|0;ja=r+64|0;da=r+68|0;ea=r+72|0;fa=r+76|0;aa=r+80|0;W=r+112|0;Z=r+116|0;Y=r+120|0;$=r+124|0;I=r+128|0;C=r+132|0;x=r+136|0;V=r+144|0;c[Q>>2]=e;c[m>>2]=f;c[o>>2]=g;c[p>>2]=h;c[v>>2]=j;c[P>>2]=0;c[l>>2]=0;c[U>>2]=0;c[F>>2]=-1;c[E>>2]=0;c[S>>2]=0;c[T>>2]=0;a[J>>0]=0;a[D>>0]=0;a[ia>>0]=1;c[n>>2]=0;c[k>>2]=0;c[R>>2]=0;c[t>>2]=0;c[q>>2]=0;c[H>>2]=c[c[Q>>2]>>2];c[X+0>>2]=0;c[X+4>>2]=0;c[X+8>>2]=0;c[X+12>>2]=0;c[X+16>>2]=0;a:do{if((c[(c[Q>>2]|0)+64>>2]|0)==0){if((d[(c[H>>2]|0)+64>>0]|0)==0){if((c[o>>2]|0)!=0){if((b[(c[o>>2]|0)+6>>1]&128|0)!=0){if((c[(c[o>>2]|0)+52>>2]|0)==0){c[n>>2]=c[c[o>>2]>>2];c[c[o>>2]>>2]=0;du(c[H>>2]|0,c[o>>2]|0);c[o>>2]=0}}}c[ma>>2]=c[(c[m>>2]|0)+16>>2];if((c[ma>>2]|0)!=0){c[u>>2]=jA(c[Q>>2]|0,c[m>>2]|0)|0;if((c[u>>2]|0)!=0){c[ka>>2]=ef(c[H>>2]|0,c[(c[u>>2]|0)+68>>2]|0)|0;c[na>>2]=(c[(c[H>>2]|0)+16>>2]|0)+(c[ka>>2]<<4);c[oa>>2]=c[c[na>>2]>>2];if((Lv(c[Q>>2]|0,18,c[c[u>>2]>>2]|0,0,c[oa>>2]|0)|0)==0){a[ba>>0]=((a[(c[u>>2]|0)+44>>0]&32|0)==0^1)&1;c[w>>2]=RA(c[Q>>2]|0,c[u>>2]|0,108,0,ca)|0;c[z>>2]=(c[(c[u>>2]|0)+12>>2]|0)!=0&1;if((vw(c[Q>>2]|0,c[u>>2]|0)|0)==0){if((SA(c[Q>>2]|0,c[u>>2]|0,c[ca>>2]|0)|0)==0){c[s>>2]=Ov(c[Q>>2]|0)|0;if((c[s>>2]|0)!=0){if((d[(c[Q>>2]|0)+18>>0]|0)==0){TA(c[s>>2]|0)}if((c[o>>2]|0)!=0){f=1}else{f=(c[w>>2]|0)!=0}$v(c[Q>>2]|0,f&1,c[ka>>2]|0);if((c[p>>2]|0)==0){if((UA(c[Q>>2]|0,c[u>>2]|0,c[o>>2]|0,c[v>>2]|0,c[ka>>2]|0)|0)==0){la=19}}else{la=19}b:do{if((la|0)==19){c[R>>2]=VA(c[Q>>2]|0,c[ka>>2]|0,c[u>>2]|0)|0;e=(c[(c[Q>>2]|0)+72>>2]|0)+1|0;c[K>>2]=e;c[G>>2]=e;e=(c[Q>>2]|0)+72|0;c[e>>2]=(c[e>>2]|0)+((b[(c[u>>2]|0)+38>>1]|0)+1);if((a[(c[u>>2]|0)+44>>0]&16|0)!=0){c[G>>2]=(c[G>>2]|0)+1;e=(c[Q>>2]|0)+72|0;c[e>>2]=(c[e>>2]|0)+1}c[y>>2]=(c[G>>2]|0)+1;c:do{if((c[p>>2]|0)!=0){c[N>>2]=0;while(1){if((c[N>>2]|0)>=(c[(c[p>>2]|0)+4>>2]|0)){break}c[(c[c[p>>2]>>2]|0)+(c[N>>2]<<3)+4>>2]=-1;c[N>>2]=(c[N>>2]|0)+1}c[N>>2]=0;while(1){if((c[N>>2]|0)>=(c[(c[p>>2]|0)+4>>2]|0)){break c}c[O>>2]=0;while(1){if((c[O>>2]|0)>=(b[(c[u>>2]|0)+38>>1]|0)){break}e=(Dc(c[(c[c[p>>2]>>2]|0)+(c[N>>2]<<3)>>2]|0,c[(c[(c[u>>2]|0)+4>>2]|0)+((c[O>>2]|0)*24|0)>>2]|0)|0)==0;f=c[O>>2]|0;if(e){la=30;break}c[O>>2]=f+1}do{if((la|0)==30){la=0;c[(c[c[p>>2]>>2]|0)+(c[N>>2]<<3)+4>>2]=f;if((c[N>>2]|0)!=(c[O>>2]|0)){a[ia>>0]=0}if((c[O>>2]|0)!=(b[(c[u>>2]|0)+36>>1]|0)){break}c[F>>2]=c[N>>2]}}while(0);if((c[O>>2]|0)>=(b[(c[u>>2]|0)+38>>1]|0)){if((Fx(c[(c[c[p>>2]>>2]|0)+(c[N>>2]<<3)>>2]|0)|0)==0){break}if((a[ba>>0]|0)!=0){break}c[F>>2]=c[N>>2];a[ia>>0]=0}c[N>>2]=(c[N>>2]|0)+1}e=c[Q>>2]|0;oa=c[(c[c[p>>2]>>2]|0)+(c[N>>2]<<3)>>2]|0;c[_>>2]=c[m>>2];c[_+4>>2]=0;c[_+8>>2]=oa;bf(e,29824,_);a[(c[Q>>2]|0)+17>>0]=1;break a}}while(0);d:do{if((c[o>>2]|0)!=0){oa=(c[Q>>2]|0)+72|0;e=(c[oa>>2]|0)+1|0;c[oa>>2]=e;c[ga>>2]=e;c[ha>>2]=(sy(c[s>>2]|0)|0)+1;Tv(c[s>>2]|0,20,c[ga>>2]|0,0,c[ha>>2]|0)|0;Hz(X,13,c[ga>>2]|0);c[X+8>>2]=(d[ia>>0]|0)!=0?c[y>>2]|0:0;c[X+12>>2]=b[(c[u>>2]|0)+38>>1]|0;c[ja>>2]=Mu(c[Q>>2]|0,c[o>>2]|0,X)|0;c[k>>2]=c[X+8>>2];if((c[ja>>2]|0)!=0){break a}if((d[(c[H>>2]|0)+64>>0]|0)!=0){break a}oy(c[s>>2]|0,21,c[ga>>2]|0)|0;jw(c[s>>2]|0,(c[ha>>2]|0)-1|0);c[L>>2]=c[c[c[o>>2]>>2]>>2];if((c[w>>2]|0)!=0){la=46}else{if((WA(c[Q>>2]|0,c[ka>>2]|0,c[u>>2]|0)|0)!=0){la=46}}if((la|0)==46){a[J>>0]=1}if((a[J>>0]|0)==0){break}oa=(c[Q>>2]|0)+68|0;e=c[oa>>2]|0;c[oa>>2]=e+1;c[E>>2]=e;c[da>>2]=Wv(c[Q>>2]|0)|0;c[ea>>2]=Wv(c[Q>>2]|0)|0;Qv(c[s>>2]|0,55,c[E>>2]|0,c[L>>2]|0)|0;c[fa>>2]=oy(c[s>>2]|0,22,c[X+4>>2]|0)|0;Tv(c[s>>2]|0,48,c[k>>2]|0,c[L>>2]|0,c[da>>2]|0)|0;Qv(c[s>>2]|0,69,c[E>>2]|0,c[ea>>2]|0)|0;Tv(c[s>>2]|0,70,c[E>>2]|0,c[da>>2]|0,c[ea>>2]|0)|0;Qv(c[s>>2]|0,16,0,c[fa>>2]|0)|0;jw(c[s>>2]|0,c[fa>>2]|0);Xv(c[Q>>2]|0,c[da>>2]|0);Xv(c[Q>>2]|0,c[ea>>2]|0)}else{c[aa+0>>2]=0;c[aa+4>>2]=0;c[aa+8>>2]=0;c[aa+12>>2]=0;c[aa+16>>2]=0;c[aa+20>>2]=0;c[aa+24>>2]=0;c[aa+28>>2]=0;c[aa>>2]=c[Q>>2];c[E>>2]=-1;if((c[n>>2]|0)!=0){da=c[c[n>>2]>>2]|0}else{da=0}c[L>>2]=da;c[N>>2]=0;while(1){if((c[N>>2]|0)>=(c[L>>2]|0)){break d}if((bx(aa,c[(c[(c[n>>2]|0)+4>>2]|0)+((c[N>>2]|0)*20|0)>>2]|0)|0)!=0){break a}c[N>>2]=(c[N>>2]|0)+1}}}while(0);if((c[p>>2]|0)==0){if((c[L>>2]|0)>0){c[F>>2]=b[(c[u>>2]|0)+36>>1]|0}}e:do{if((a[(c[u>>2]|0)+44>>0]&16|0)!=0){c[N>>2]=0;while(1){if((c[N>>2]|0)>=(b[(c[u>>2]|0)+38>>1]|0)){break e}c[P>>2]=(c[P>>2]|0)+((a[(c[(c[u>>2]|0)+4>>2]|0)+((c[N>>2]|0)*24|0)+23>>0]&2|0)!=0?1:0);c[N>>2]=(c[N>>2]|0)+1}}}while(0);do{if((c[p>>2]|0)==0){if((c[L>>2]|0)==0){break}if((c[L>>2]|0)==((b[(c[u>>2]|0)+38>>1]|0)-(c[P>>2]|0)|0)){break}e=c[Q>>2]|0;g=(b[(c[u>>2]|0)+38>>1]|0)-(c[P>>2]|0)|0;oa=c[L>>2]|0;c[_>>2]=c[m>>2];c[_+4>>2]=0;c[_+8>>2]=g;c[_+12>>2]=oa;bf(e,29856,_);break a}}while(0);do{if((c[p>>2]|0)!=0){if((c[L>>2]|0)==(c[(c[p>>2]|0)+4>>2]|0)){break}e=c[Q>>2]|0;oa=c[(c[p>>2]|0)+4>>2]|0;c[_>>2]=c[L>>2];c[_+4>>2]=oa;bf(e,29912,_);break a}}while(0);if((c[(c[H>>2]|0)+24>>2]&128|0)!=0){oa=(c[Q>>2]|0)+72|0;e=(c[oa>>2]|0)+1|0;c[oa>>2]=e;c[t>>2]=e;Qv(c[s>>2]|0,25,0,c[t>>2]|0)|0}f:do{if((c[z>>2]|0)==0){c[W>>2]=JA(c[Q>>2]|0,c[u>>2]|0,53,-1,0,l,U)|0;c[q>>2]=$e(c[H>>2]|0,(c[W>>2]|0)+1<<2)|0;if((c[q>>2]|0)==0){break a}c[N>>2]=0;while(1){if((c[N>>2]|0)>=(c[W>>2]|0)){break f}oa=(c[Q>>2]|0)+72|0;e=(c[oa>>2]|0)+1|0;c[oa>>2]=e;c[(c[q>>2]|0)+(c[N>>2]<<2)>>2]=e;c[N>>2]=(c[N>>2]|0)+1}}}while(0);do{if((a[J>>0]|0)!=0){c[S>>2]=oy(c[s>>2]|0,105,c[E>>2]|0)|0;c[T>>2]=sy(c[s>>2]|0)|0}else{if((c[o>>2]|0)==0){break}e=oy(c[s>>2]|0,22,c[X+4>>2]|0)|0;c[T>>2]=e;c[S>>2]=e}}while(0);c[M>>2]=cz(c[s>>2]|0)|0;if((c[ca>>2]&1|0)!=0){c[Z>>2]=fz(c[Q>>2]|0,(b[(c[u>>2]|0)+38>>1]|0)+1|0)|0;if((c[F>>2]|0)<0){Qv(c[s>>2]|0,25,-1,c[Z>>2]|0)|0}else{if((a[J>>0]|0)!=0){Tv(c[s>>2]|0,46,c[E>>2]|0,c[F>>2]|0,c[Z>>2]|0)|0}else{vz(c[Q>>2]|0,c[(c[(c[n>>2]|0)+4>>2]|0)+((c[F>>2]|0)*20|0)>>2]|0,c[Z>>2]|0)}c[Y>>2]=oy(c[s>>2]|0,77,c[Z>>2]|0)|0;Qv(c[s>>2]|0,25,-1,c[Z>>2]|0)|0;jw(c[s>>2]|0,c[Y>>2]|0);oy(c[s>>2]|0,38,c[Z>>2]|0)|0}c[N>>2]=0;while(1){if((c[N>>2]|0)>=(b[(c[u>>2]|0)+38>>1]|0)){break}g:do{if((c[p>>2]|0)==0){c[O>>2]=c[N>>2]}else{c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[(c[p>>2]|0)+4>>2]|0)){break g}if((c[(c[c[p>>2]>>2]|0)+(c[O>>2]<<3)+4>>2]|0)==(c[N>>2]|0)){break g}c[O>>2]=(c[O>>2]|0)+1}}}while(0);if((a[J>>0]|0)!=0){la=97}else{if((c[n>>2]|0)!=0){la=97}else{la=99}}do{if((la|0)==97){la=0;if((c[p>>2]|0)!=0){if((c[O>>2]|0)>=(c[(c[p>>2]|0)+4>>2]|0)){la=99;break}}if((a[J>>0]|0)!=0){Tv(c[s>>2]|0,46,c[E>>2]|0,c[O>>2]|0,(c[Z>>2]|0)+(c[N>>2]|0)+1|0)|0;break}else{XA(c[Q>>2]|0,c[(c[(c[n>>2]|0)+4>>2]|0)+((c[O>>2]|0)*20|0)>>2]|0,(c[Z>>2]|0)+(c[N>>2]|0)+1|0);break}}}while(0);if((la|0)==99){vz(c[Q>>2]|0,c[(c[(c[u>>2]|0)+4>>2]|0)+((c[N>>2]|0)*24|0)+4>>2]|0,(c[Z>>2]|0)+(c[N>>2]|0)+1|0)}c[N>>2]=(c[N>>2]|0)+1}if((c[z>>2]|0)==0){YA(c[s>>2]|0,c[u>>2]|0,(c[Z>>2]|0)+1|0)}ZA(c[Q>>2]|0,c[w>>2]|0,108,0,1,c[u>>2]|0,(c[Z>>2]|0)-(b[(c[u>>2]|0)+38>>1]|0)-1|0,c[v>>2]|0,c[M>>2]|0);iz(c[Q>>2]|0,c[Z>>2]|0,(b[(c[u>>2]|0)+38>>1]|0)+1|0)}do{if((c[z>>2]|0)==0){if((a[(c[u>>2]|0)+44>>0]&16|0)!=0){Qv(c[s>>2]|0,28,0,c[K>>2]|0)|0}h:do{if((c[F>>2]|0)>=0){do{if((a[J>>0]|0)!=0){Tv(c[s>>2]|0,46,c[E>>2]|0,c[F>>2]|0,c[G>>2]|0)|0}else{if((c[o>>2]|0)!=0){Qv(c[s>>2]|0,33,(c[k>>2]|0)+(c[F>>2]|0)|0,c[G>>2]|0)|0;break}vz(c[Q>>2]|0,c[(c[(c[n>>2]|0)+4>>2]|0)+((c[F>>2]|0)*20|0)>>2]|0,c[G>>2]|0);c[$>>2]=Kz(c[s>>2]|0,-1)|0;if((c[$>>2]|0)==0){break}if((d[c[$>>2]>>0]|0)!=28){break}if((a[(c[u>>2]|0)+44>>0]&16|0)!=0){break}a[D>>0]=1;a[c[$>>2]>>0]=69;c[(c[$>>2]|0)+4>>2]=c[l>>2];c[(c[$>>2]|0)+8>>2]=c[G>>2];c[(c[$>>2]|0)+12>>2]=c[R>>2]}}while(0);if((a[D>>0]|0)!=0){break}W=c[s>>2]|0;if((a[(c[u>>2]|0)+44>>0]&16|0)!=0){c[I>>2]=sy(W)|0;Qv(c[s>>2]|0,76,c[G>>2]|0,(c[I>>2]|0)+2|0)|0}else{c[I>>2]=oy(W,77,c[G>>2]|0)|0;Tv(c[s>>2]|0,69,c[l>>2]|0,c[G>>2]|0,c[R>>2]|0)|0;jw(c[s>>2]|0,c[I>>2]|0)}oy(c[s>>2]|0,38,c[G>>2]|0)|0}else{do{if((a[(c[u>>2]|0)+44>>0]&16|0)==0){if((d[ba>>0]|0)!=0){break}Tv(c[s>>2]|0,69,c[l>>2]|0,c[G>>2]|0,c[R>>2]|0)|0;a[D>>0]=1;break h}}while(0);Qv(c[s>>2]|0,28,0,c[G>>2]|0)|0}}while(0);_A(c[Q>>2]|0,c[R>>2]|0,c[G>>2]|0);c[P>>2]=0;c[N>>2]=0;while(1){if((c[N>>2]|0)>=(b[(c[u>>2]|0)+38>>1]|0)){break}c[C>>2]=(c[G>>2]|0)+1+(c[N>>2]|0);i:do{if((c[N>>2]|0)==(b[(c[u>>2]|0)+36>>1]|0)){oy(c[s>>2]|0,29,c[C>>2]|0)|0}else{j:do{if((c[p>>2]|0)==0){if((a[(c[(c[u>>2]|0)+4>>2]|0)+((c[N>>2]|0)*24|0)+23>>0]&2|0)!=0){c[O>>2]=-1;c[P>>2]=(c[P>>2]|0)+1;break}else{c[O>>2]=(c[N>>2]|0)-(c[P>>2]|0);break}}else{c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[(c[p>>2]|0)+4>>2]|0)){break j}if((c[(c[c[p>>2]>>2]|0)+(c[O>>2]<<3)+4>>2]|0)==(c[N>>2]|0)){break j}c[O>>2]=(c[O>>2]|0)+1}}}while(0);do{if((c[O>>2]|0)>=0){if((c[L>>2]|0)==0){break}if((c[p>>2]|0)!=0){if((c[O>>2]|0)>=(c[(c[p>>2]|0)+4>>2]|0)){break}}if((a[J>>0]|0)!=0){Tv(c[s>>2]|0,46,c[E>>2]|0,c[O>>2]|0,c[C>>2]|0)|0;break i}if((c[o>>2]|0)==0){vz(c[Q>>2]|0,c[(c[(c[n>>2]|0)+4>>2]|0)+((c[O>>2]|0)*20|0)>>2]|0,c[C>>2]|0);break i}if((c[k>>2]|0)==(c[y>>2]|0)){break i}Qv(c[s>>2]|0,34,(c[k>>2]|0)+(c[O>>2]|0)|0,c[C>>2]|0)|0;break i}}while(0);$A(c[Q>>2]|0,c[(c[(c[u>>2]|0)+4>>2]|0)+((c[N>>2]|0)*24|0)+4>>2]|0,c[C>>2]|0)}}while(0);c[N>>2]=(c[N>>2]|0)+1}if((a[(c[u>>2]|0)+44>>0]&16|0)!=0){c[x>>2]=ww(c[H>>2]|0,c[u>>2]|0)|0;aB(c[Q>>2]|0,c[u>>2]|0);Sv(c[s>>2]|0,15,1,(b[(c[u>>2]|0)+38>>1]|0)+2|0,c[K>>2]|0,c[x>>2]|0,-10)|0;gf(c[s>>2]|0,((c[v>>2]|0)==10?2:c[v>>2]|0)&255);xw(c[Q>>2]|0);break}else{bB(c[Q>>2]|0,c[u>>2]|0,c[q>>2]|0,c[l>>2]|0,c[U>>2]|0,c[K>>2]|0,0,(c[F>>2]|0)>=0&255,c[v>>2]&255,c[M>>2]|0,V);cB(c[Q>>2]|0,c[u>>2]|0,0,c[K>>2]|0,0,0);dB(c[Q>>2]|0,c[u>>2]|0,c[l>>2]|0,c[U>>2]|0,c[K>>2]|0,c[q>>2]|0,0,d[D>>0]|0,(c[V>>2]|0)==0&1);break}}}while(0);if((c[(c[H>>2]|0)+24>>2]&128|0)!=0){Qv(c[s>>2]|0,37,c[t>>2]|0,1)|0}if((c[w>>2]|0)!=0){ZA(c[Q>>2]|0,c[w>>2]|0,108,0,2,c[u>>2]|0,(c[y>>2]|0)-2-(b[(c[u>>2]|0)+38>>1]|0)|0,c[v>>2]|0,c[M>>2]|0)}$y(c[s>>2]|0,c[M>>2]|0);do{if((a[J>>0]|0)!=0){Qv(c[s>>2]|0,9,c[E>>2]|0,c[T>>2]|0)|0;jw(c[s>>2]|0,c[S>>2]|0);oy(c[s>>2]|0,58,c[E>>2]|0)|0}else{if((c[o>>2]|0)==0){break}Qv(c[s>>2]|0,16,0,c[T>>2]|0)|0;jw(c[s>>2]|0,c[S>>2]|0)}}while(0);if((a[(c[u>>2]|0)+44>>0]&16|0)!=0){break}if((c[z>>2]|0)!=0){break}if((c[l>>2]|0)<(c[U>>2]|0)){oy(c[s>>2]|0,58,c[l>>2]|0)|0}c[B>>2]=0;c[A>>2]=c[(c[u>>2]|0)+8>>2];while(1){if((c[A>>2]|0)==0){break b}oy(c[s>>2]|0,58,(c[B>>2]|0)+(c[U>>2]|0)|0)|0;c[A>>2]=c[(c[A>>2]|0)+20>>2];c[B>>2]=(c[B>>2]|0)+1}}}while(0);if((d[(c[Q>>2]|0)+18>>0]|0)==0){if((c[(c[Q>>2]|0)+412>>2]|0)==0){eB(c[Q>>2]|0)}}if((c[(c[H>>2]|0)+24>>2]&128|0)!=0){if((a[(c[Q>>2]|0)+18>>0]|0)==0){if((c[(c[Q>>2]|0)+412>>2]|0)==0){Qv(c[s>>2]|0,35,c[t>>2]|0,1)|0;rA(c[s>>2]|0,1);sA(c[s>>2]|0,0,0,29944,0)|0}}}}}}}}}}}}while(0);fu(c[H>>2]|0,c[m>>2]|0);cu(c[H>>2]|0,c[n>>2]|0);du(c[H>>2]|0,c[o>>2]|0);hu(c[H>>2]|0,c[p>>2]|0);cc(c[H>>2]|0,c[q>>2]|0);i=r;return}function av(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;k=e;g=e+4|0;h=e+8|0;j=e+12|0;c[k>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[g>>2]|0)==0){c[g>>2]=ve(c[k>>2]|0,8)|0;if((c[g>>2]|0)==0){c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}}d=QA(c[k>>2]|0,c[c[g>>2]>>2]|0,8,(c[g>>2]|0)+4|0,j)|0;c[c[g>>2]>>2]=d;d=c[k>>2]|0;if((c[j>>2]|0)<0){hu(d,c[g>>2]|0);c[f>>2]=0;a=c[f>>2]|0;i=e;return a|0}else{a=Iv(d,c[h>>2]|0)|0;c[(c[c[g>>2]>>2]|0)+(c[j>>2]<<3)>>2]=a;c[f>>2]=c[g>>2];a=c[f>>2]|0;i=e;return a|0}return 0}function bv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e;g=e+4|0;c[f>>2]=a;c[h>>2]=b;c[g>>2]=d;c[(c[f>>2]|0)+4>>2]=c[c[h>>2]>>2];c[(c[f>>2]|0)+8>>2]=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0);i=e;return}function cv(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+48|0;j=n+8|0;h=n+36|0;l=n+32|0;k=n+28|0;f=n+24|0;m=n+40|0;o=n+12|0;q=n;r=n+16|0;s=n+42|0;p=n+20|0;c[h>>2]=d;c[l>>2]=e;c[k>>2]=c[c[h>>2]>>2];if((c[l>>2]|0)==0){i=n;return}c[f>>2]=c[(c[l>>2]|0)+8>>2];do{if((a[(c[f>>2]|0)+1>>0]|0)==0){e=(c[h>>2]|0)+440|0;d=(c[e>>2]|0)+1|0;c[e>>2]=d;b[(c[l>>2]|0)+32>>1]=d}else{b[m>>1]=0;c[o>>2]=Ub(c[f>>2]|0)|0;if((a[c[f>>2]>>0]|0)==63){c[r>>2]=0==(Pg((c[f>>2]|0)+1|0,q,(c[o>>2]|0)-1|0,1)|0)&1;d=c[q>>2]&65535;b[m>>1]=d;b[(c[l>>2]|0)+32>>1]=d;if((c[r>>2]|0)==0){g=8}else{d=q;e=c[d+4>>2]|0;if((e|0)<0|(e|0)==0&(c[d>>2]|0)>>>0<1){g=8}else{e=q;r=c[e+4>>2]|0;d=c[(c[k>>2]|0)+124>>2]|0;s=((d|0)<0)<<31>>31;if((r|0)>(s|0)|((r|0)==(s|0)?(c[e>>2]|0)>>>0>d>>>0:0)){g=8}}}if((g|0)==8){d=c[h>>2]|0;c[j>>2]=c[(c[k>>2]|0)+124>>2];bf(d,29752,j);b[m>>1]=0}e=q;r=c[e+4>>2]|0;d=c[(c[h>>2]|0)+440>>2]|0;s=((d|0)<0)<<31>>31;if((r|0)>(s|0)|((r|0)==(s|0)?(c[e>>2]|0)>>>0>d>>>0:0)){c[(c[h>>2]|0)+440>>2]=c[q>>2]}}else{b[s>>1]=0;while(1){if((b[s>>1]|0)>=(c[(c[h>>2]|0)+444>>2]|0)){break}if((c[(c[(c[h>>2]|0)+472>>2]|0)+(b[s>>1]<<2)>>2]|0)!=0){if((YK(c[(c[(c[h>>2]|0)+472>>2]|0)+(b[s>>1]<<2)>>2]|0,c[f>>2]|0)|0)==0){g=15;break}}b[s>>1]=(b[s>>1]|0)+1<<16>>16}if((g|0)==15){d=(b[s>>1]|0)+1&65535;b[m>>1]=d;b[(c[l>>2]|0)+32>>1]=d}if((b[m>>1]|0)==0){e=(c[h>>2]|0)+440|0;d=(c[e>>2]|0)+1|0;c[e>>2]=d;d=d&65535;b[(c[l>>2]|0)+32>>1]=d;b[m>>1]=d}}if((b[m>>1]|0)>0){do{if((b[m>>1]|0)>(c[(c[h>>2]|0)+444>>2]|0)){c[p>>2]=Ot(c[k>>2]|0,c[(c[h>>2]|0)+472>>2]|0,b[m>>1]<<2)|0;if((c[p>>2]|0)==0){i=n;return}else{c[(c[h>>2]|0)+472>>2]=c[p>>2];aL((c[p>>2]|0)+(c[(c[h>>2]|0)+444>>2]<<2)|0,0,(b[m>>1]|0)-(c[(c[h>>2]|0)+444>>2]|0)<<2|0)|0;c[(c[h>>2]|0)+444>>2]=b[m>>1]|0;break}}}while(0);if((a[c[f>>2]>>0]|0)==63){if((c[(c[(c[h>>2]|0)+472>>2]|0)+((b[m>>1]|0)-1<<2)>>2]|0)!=0){break}}cc(c[k>>2]|0,c[(c[(c[h>>2]|0)+472>>2]|0)+((b[m>>1]|0)-1<<2)>>2]|0);d=ft(c[k>>2]|0,c[f>>2]|0,c[o>>2]|0)|0;c[(c[(c[h>>2]|0)+472>>2]|0)+((b[m>>1]|0)-1<<2)>>2]=d}}}while(0);if((c[(c[h>>2]|0)+64>>2]|0)!=0){i=n;return}if((c[(c[h>>2]|0)+440>>2]|0)<=(c[(c[k>>2]|0)+124>>2]|0)){i=n;return}bf(c[h>>2]|0,29800,j);i=n;return}function dv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;h=e+12|0;f=e;j=e+4|0;g=e+8|0;c[h>>2]=a;c[f>>2]=b;c[j>>2]=d;if(!((c[(c[j>>2]|0)+4>>2]|0)>>>0>0)){a=c[f>>2]|0;i=e;return a|0}c[g>>2]=Wx(c[c[h>>2]>>2]|0,95,c[j>>2]|0,1)|0;if((c[g>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}c[(c[g>>2]|0)+12>>2]=c[f>>2];a=(c[g>>2]|0)+4|0;c[a>>2]=c[a>>2]|4352;c[f>>2]=c[g>>2];a=c[f>>2]|0;i=e;return a|0}function ev(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;k=e;g=e+4|0;l=e+8|0;j=e+12|0;h=e+16|0;c[k>>2]=a;c[g>>2]=b;c[l>>2]=d;c[h>>2]=c[c[k>>2]>>2];c[j>>2]=Wx(c[h>>2]|0,153,c[l>>2]|0,1)|0;if((c[j>>2]|0)==0){cu(c[h>>2]|0,c[g>>2]|0);c[f>>2]=0;l=c[f>>2]|0;i=e;return l|0}else{c[(c[j>>2]|0)+20>>2]=c[g>>2];jv(c[k>>2]|0,c[j>>2]|0);c[f>>2]=c[j>>2];l=c[f>>2]|0;i=e;return l|0}return 0}function fv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;m=g;l=g+4|0;k=g+8|0;j=g+12|0;c[h>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;a=Bu(c[m>>2]|0,c[l>>2]|0,c[c[k>>2]>>2]|0,c[c[j>>2]>>2]|0,0)|0;c[c[h>>2]>>2]=a;c[(c[h>>2]|0)+4>>2]=c[(c[k>>2]|0)+4>>2];c[(c[h>>2]|0)+8>>2]=c[(c[j>>2]|0)+8>>2];i=g;return}function gv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;m=g;l=g+4|0;k=g+8|0;j=g+12|0;c[h>>2]=a;c[m>>2]=b;c[l>>2]=d;c[k>>2]=e;c[j>>2]=f;a=Bu(c[m>>2]|0,c[l>>2]|0,c[c[k>>2]>>2]|0,0,0)|0;c[c[h>>2]>>2]=a;c[(c[h>>2]|0)+4>>2]=c[(c[k>>2]|0)+4>>2];c[(c[h>>2]|0)+8>>2]=(c[c[j>>2]>>2]|0)+(c[(c[j>>2]|0)+4>>2]|0);i=g;return}function hv(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;n=h+16|0;m=h;k=h+4|0;j=h+8|0;l=h+12|0;c[n>>2]=b;c[m>>2]=e;c[k>>2]=f;c[j>>2]=g;c[l>>2]=c[c[n>>2]>>2];if((d[(c[l>>2]|0)+64>>0]|0|0)!=0){i=h;return}if((d[c[m>>2]>>0]|0|0)!=101){i=h;return}a[c[k>>2]>>0]=c[j>>2];gu(c[l>>2]|0,c[(c[k>>2]|0)+16>>2]|0);c[(c[k>>2]|0)+16>>2]=0;i=h;return}function iv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;m=g;l=g+4|0;j=g+8|0;k=g+12|0;c[h>>2]=a;c[m>>2]=b;c[l>>2]=d;c[j>>2]=e;c[k>>2]=f;a=Bu(c[m>>2]|0,c[l>>2]|0,c[c[j>>2]>>2]|0,0,0)|0;c[c[h>>2]>>2]=a;c[(c[h>>2]|0)+4>>2]=c[c[k>>2]>>2];c[(c[h>>2]|0)+8>>2]=c[(c[j>>2]|0)+8>>2];i=g;return}function jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;Yx(c[e>>2]|0);wx(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0)|0;i=d;return}function kv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=i;i=i+64|0;j=l;h=l+48|0;f=l+44|0;k=l+40|0;m=l+36|0;n=l+32|0;g=l+52|0;r=l+20|0;o=l+16|0;p=l+12|0;q=l+24|0;s=l+28|0;c[h>>2]=b;c[f>>2]=d;c[k>>2]=e;c[g>>2]=c[c[h>>2]>>2];if((a[(c[g>>2]|0)+64>>0]|0)!=0){d=c[g>>2]|0;b=c[f>>2]|0;fu(d,b);i=l;return}if(0!=(gy(c[h>>2]|0)|0)){d=c[g>>2]|0;b=c[f>>2]|0;fu(d,b);i=l;return}c[m>>2]=tw(c[g>>2]|0,c[(c[f>>2]|0)+16>>2]|0,c[(c[f>>2]|0)+12>>2]|0)|0;if((c[m>>2]|0)==0){n=c[h>>2]|0;m=c[f>>2]|0;if((c[k>>2]|0)!=0){eA(n,c[m+12>>2]|0)}else{c[j>>2]=m;c[j+4>>2]=0;bf(n,29512,j)}a[(c[h>>2]|0)+17>>0]=1;d=c[g>>2]|0;b=c[f>>2]|0;fu(d,b);i=l;return}if((a[(c[m>>2]|0)+55>>0]&3|0)!=0){d=c[h>>2]|0;c[j>>2]=0;bf(d,29536,j);d=c[g>>2]|0;b=c[f>>2]|0;fu(d,b);i=l;return}c[r>>2]=ef(c[g>>2]|0,c[(c[m>>2]|0)+24>>2]|0)|0;c[o>>2]=10;c[p>>2]=c[(c[m>>2]|0)+12>>2];c[q>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[r>>2]<<4)>>2];c[s>>2]=(c[r>>2]|0)==1?21432:21456;if((Lv(c[h>>2]|0,9,c[s>>2]|0,0,c[q>>2]|0)|0)!=0){d=c[g>>2]|0;b=c[f>>2]|0;fu(d,b);i=l;return}if((c[r>>2]|0)!=0){c[o>>2]=12}if((Lv(c[h>>2]|0,c[o>>2]|0,c[c[m>>2]>>2]|0,c[c[p>>2]>>2]|0,c[q>>2]|0)|0)!=0){d=c[g>>2]|0;b=c[f>>2]|0;fu(d,b);i=l;return}c[n>>2]=Ov(c[h>>2]|0)|0;if((c[n>>2]|0)==0){d=c[g>>2]|0;b=c[f>>2]|0;fu(d,b);i=l;return}$v(c[h>>2]|0,1,c[r>>2]|0);d=c[h>>2]|0;s=(c[r>>2]|0)==1?21432:21456;b=c[c[m>>2]>>2]|0;c[j>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[r>>2]<<4)>>2];c[j+4>>2]=s;c[j+8>>2]=b;Nv(d,29616,j);OA(c[h>>2]|0,c[r>>2]|0,24680,c[c[m>>2]>>2]|0);Pv(c[h>>2]|0,c[r>>2]|0);PA(c[h>>2]|0,c[(c[m>>2]|0)+44>>2]|0,c[r>>2]|0);Sv(c[n>>2]|0,122,c[r>>2]|0,0,0,c[c[m>>2]>>2]|0,0)|0;d=c[g>>2]|0;b=c[f>>2]|0;fu(d,b);i=l;return}function lv(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=Ov(c[e>>2]|0)|0;if((c[d>>2]|0)==0){i=b;return}Qv(c[d>>2]|0,13,0,0)|0;jf(c[d>>2]|0,0);i=b;return}function mv(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0;o=i;i=i+512|0;t=o;q=o+268|0;yb=o+328|0;kb=o+356|0;wb=o+260|0;vb=o+496|0;l=o+492|0;m=o+488|0;F=o+484|0;xb=o+480|0;ub=o+464|0;s=o+460|0;db=o+456|0;eb=o+452|0;Ca=o+448|0;ua=o+444|0;n=o+440|0;hb=o+436|0;p=o+432|0;tb=o+428|0;wa=o+424|0;va=o+420|0;ta=o+416|0;na=o+412|0;sa=o+408|0;ra=o+404|0;lb=o+400|0;u=o+396|0;fb=o+392|0;gb=o+388|0;ib=o+384|0;jb=o+380|0;Ua=o+376|0;Ta=o+372|0;Va=o+368|0;cb=o+364|0;ya=o+360|0;xa=o+16|0;Qa=o+352|0;Sa=o+348|0;Ra=o+344|0;Aa=o+340|0;Ba=o+336|0;Fa=o+332|0;za=o+8|0;Ea=o+324|0;ma=o+320|0;ia=o+316|0;ka=o+312|0;ha=o+308|0;la=o+304|0;ja=o+300|0;ga=o+296|0;Ma=o+292|0;Ka=o+288|0;La=o+284|0;Ga=o+280|0;Ia=o+276|0;Da=o+272|0;Ha=o+500|0;Oa=o+264|0;Na=o+256|0;Pa=o+140|0;Ja=o+136|0;ob=o+132|0;mb=o+128|0;nb=o+124|0;qb=o+120|0;qa=o+116|0;rb=o+112|0;pb=o+108|0;sb=o+104|0;oa=o+100|0;pa=o+96|0;L=o+92|0;G=o+88|0;M=o+84|0;N=o+52|0;K=o+32|0;$=o+36|0;H=o+40|0;ea=o+44|0;J=o+48|0;T=o+56|0;I=o+60|0;P=o+64|0;R=o+68|0;Q=o+72|0;S=o+76|0;Y=o+80|0;E=o+144|0;V=o+148|0;W=o+152|0;Z=o+156|0;ba=o+160|0;aa=o+164|0;X=o+168|0;O=o+172|0;U=o+176|0;C=o+180|0;B=o+184|0;ca=o+188|0;z=o+192|0;_=o+196|0;da=o+200|0;x=o+204|0;y=o+208|0;w=o+212|0;A=o+216|0;v=o+220|0;fa=o+224|0;Wa=o+228|0;Ya=o+232|0;Xa=o+236|0;$a=o+240|0;ab=o+244|0;Za=o+248|0;_a=o+252|0;bb=o+24|0;c[q>>2]=f;c[yb>>2]=g;c[kb>>2]=h;c[wb>>2]=j;c[vb>>2]=k;c[l>>2]=0;c[m>>2]=0;c[F>>2]=0;c[n>>2]=c[c[q>>2]>>2];c[p>>2]=Ov(c[q>>2]|0)|0;if((c[p>>2]|0)==0){i=o;return}qA(c[p>>2]|0);c[(c[q>>2]|0)+72>>2]=2;c[s>>2]=ky(c[q>>2]|0,c[yb>>2]|0,c[kb>>2]|0,xb)|0;if((c[s>>2]|0)<0){i=o;return}c[hb>>2]=(c[(c[n>>2]|0)+16>>2]|0)+(c[s>>2]<<4);if((c[s>>2]|0)==1){if((bw(c[q>>2]|0)|0)!=0){i=o;return}}c[l>>2]=Iv(c[n>>2]|0,c[xb>>2]|0)|0;if((c[l>>2]|0)==0){i=o;return}k=c[n>>2]|0;wb=c[wb>>2]|0;if((c[vb>>2]|0)!=0){c[t>>2]=wb;c[m>>2]=cf(k,26776,t)|0}else{c[m>>2]=Iv(k,wb)|0}if((c[(c[kb>>2]|0)+4>>2]|0)>>>0>0){vb=c[c[hb>>2]>>2]|0}else{vb=0}c[F>>2]=vb;a:do{if((Lv(c[q>>2]|0,19,c[l>>2]|0,c[m>>2]|0,c[F>>2]|0)|0)==0){c[ub>>2]=0;c[ub+4>>2]=c[l>>2];c[ub+8>>2]=c[m>>2];c[ub+12>>2]=0;c[(c[n>>2]|0)+444>>2]=0;c[ua>>2]=Fg(c[n>>2]|0,c[F>>2]|0,14,ub)|0;if((c[ua>>2]|0)==0){if((c[ub>>2]|0)==0){break}yb=(c[q>>2]|0)+72|0;h=(c[yb>>2]|0)+1|0;c[yb>>2]=h;c[tb>>2]=h;Sv(c[p>>2]|0,97,0,c[tb>>2]|0,0,c[ub>>2]|0,0)|0;rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,26784,0)|0;Qv(c[p>>2]|0,35,c[tb>>2]|0,1)|0;oc(c[ub>>2]|0);break}if((c[ua>>2]|0)!=12){if((c[ub>>2]|0)!=0){h=c[q>>2]|0;c[t>>2]=c[ub>>2];bf(h,1768,t);oc(c[ub>>2]|0)}h=(c[q>>2]|0)+64|0;c[h>>2]=(c[h>>2]|0)+1;c[(c[q>>2]|0)+12>>2]=c[ua>>2];break}c[db>>2]=0;c[eb>>2]=53;while(1){if((c[db>>2]|0)>(c[eb>>2]|0)){break}c[Ca>>2]=((c[db>>2]|0)+(c[eb>>2]|0)|0)/2|0;c[ua>>2]=Dc(c[l>>2]|0,c[26792+((c[Ca>>2]|0)*12|0)>>2]|0)|0;if((c[ua>>2]|0)==0){break}tb=c[Ca>>2]|0;if((c[ua>>2]|0)<0){c[eb>>2]=tb-1;continue}else{c[db>>2]=tb+1;continue}}if((c[db>>2]|0)<=(c[eb>>2]|0)){if((a[26797+((c[Ca>>2]|0)*12|0)>>0]&1|0)!=0){if((gy(c[q>>2]|0)|0)!=0){break}}do{switch(d[26796+((c[Ca>>2]|0)*12|0)>>0]|0){case 22:{aw(c[q>>2]|0,c[s>>2]|0);r=(c[q>>2]|0)+72|0;q=(c[r>>2]|0)+1|0;c[r>>2]=q;c[u>>2]=q;q=c[p>>2]|0;r=c[s>>2]|0;s=c[u>>2]|0;if((d[784+(d[c[l>>2]>>0]|0)>>0]|0)==112){Qv(q,153,r,s)|0}else{Tv(q,154,r,s,Ky(Vg(c[m>>2]|0)|0)|0)|0}Qv(c[p>>2]|0,35,c[u>>2]|0,1)|0;rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,c[l>>2]|0,-1)|0;break a};case 21:{c[fb>>2]=27528;c[gb>>2]=uA(c[m>>2]|0)|0;if((c[(c[kb>>2]|0)+4>>2]|0)==0){if((c[gb>>2]|0)==-1){c[gb>>2]=d[(c[n>>2]|0)+65>>0]|0}else{r=53}}else{r=53}if((r|0)==53){if((c[(c[kb>>2]|0)+4>>2]|0)==0){c[jb>>2]=2;while(1){if((c[jb>>2]|0)>=(c[(c[n>>2]|0)+20>>2]|0)){break}c[ib>>2]=Zb(c[(c[(c[n>>2]|0)+16>>2]|0)+(c[jb>>2]<<4)+4>>2]|0)|0;$z(c[ib>>2]|0,c[gb>>2]|0)|0;c[jb>>2]=(c[jb>>2]|0)+1}a[(c[n>>2]|0)+65>>0]=c[gb>>2]}c[ib>>2]=Zb(c[(c[hb>>2]|0)+4>>2]|0)|0;c[gb>>2]=$z(c[ib>>2]|0,c[gb>>2]|0)|0}if((c[gb>>2]|0)==1){c[fb>>2]=27536}rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,27552,0)|0;Sv(c[p>>2]|0,97,0,1,0,c[fb>>2]|0,0)|0;Qv(c[p>>2]|0,35,1,1)|0;break a};case 25:{c[sa>>2]=c[(c[hb>>2]|0)+4>>2];c[ra>>2]=-1;if((c[m>>2]|0)!=0){c[ra>>2]=(Og(c[m>>2]|0,0)|0)&255}b:do{if((c[(c[kb>>2]|0)+4>>2]|0)==0){if((c[ra>>2]|0)>=0){c[lb>>2]=0;while(1){if((c[lb>>2]|0)>=(c[(c[n>>2]|0)+20>>2]|0)){break b}aA(c[(c[(c[n>>2]|0)+16>>2]|0)+(c[lb>>2]<<4)+4>>2]|0,c[ra>>2]|0)|0;c[lb>>2]=(c[lb>>2]|0)+1}}}}while(0);c[ra>>2]=aA(c[sa>>2]|0,c[ra>>2]|0)|0;h=c[ra>>2]|0;tA(c[q>>2]|0,27512,h,((h|0)<0)<<31>>31);break a};case 24:{c[ta>>2]=c[(c[hb>>2]|0)+4>>2];if((c[m>>2]|0)!=0){h=Vg(c[m>>2]|0)|0;c[(c[n>>2]|0)+72>>2]=h;if(7!=(Ig(c[ta>>2]|0,c[(c[n>>2]|0)+72>>2]|0,-1,0)|0)){break a}a[(c[n>>2]|0)+64>>0]=1;break a}if((c[ta>>2]|0)!=0){p=Zc(c[ta>>2]|0)|0}else{p=0}c[na>>2]=p;h=c[na>>2]|0;tA(c[q>>2]|0,27496,h,((h|0)<0)<<31>>31);break a};case 10:{jf(c[p>>2]|0,c[s>>2]|0);if((c[m>>2]|0)!=0){c[va>>2]=Ky(Vg(c[m>>2]|0)|0)|0;$v(c[q>>2]|0,0,c[s>>2]|0);Qv(c[p>>2]|0,25,c[va>>2]|0,1)|0;Tv(c[p>>2]|0,51,c[s>>2]|0,3,1)|0;c[(c[(c[hb>>2]|0)+12>>2]|0)+80>>2]=c[va>>2];Ly(c[(c[hb>>2]|0)+4>>2]|0,c[(c[(c[hb>>2]|0)+12>>2]|0)+80>>2]|0)|0;break a}else{rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,27480,0)|0;h=(c[q>>2]|0)+72|0;c[h>>2]=(c[h>>2]|0)+2;c[wa>>2]=hf(c[p>>2]|0,9,27440,0)|0;kf(c[p>>2]|0,c[wa>>2]|0,c[s>>2]|0);kf(c[p>>2]|0,(c[wa>>2]|0)+1|0,c[s>>2]|0);kf(c[p>>2]|0,(c[wa>>2]|0)+6|0,2e3);break a}};case 19:{c[ya>>2]=Zb(c[(c[hb>>2]|0)+4>>2]|0)|0;h=xa;c[h>>2]=-2;c[h+4>>2]=-1;if((c[m>>2]|0)!=0){h=c[m>>2]|0;Pg(h,xa,Ub(c[m>>2]|0)|0,1)|0;h=xa;yb=c[h+4>>2]|0;if((yb|0)<-1|(yb|0)==-1&(c[h>>2]|0)>>>0<4294967295){h=xa;c[h>>2]=-1;c[h+4>>2]=-1}}yb=xa;h=xa;c[h>>2]=wA(c[ya>>2]|0,c[yb>>2]|0,c[yb+4>>2]|0)|0;c[h+4>>2]=D;h=xa;tA(c[q>>2]|0,27584,c[h>>2]|0,c[h+4>>2]|0);break a};case 23:{h=za;c[h>>2]=0;c[h+4>>2]=0;c[ua>>2]=0;if((c[ua>>2]|0)==0){h=za;tA(c[q>>2]|0,27648,c[h>>2]|0,c[h+4>>2]|0);break a}if((c[ua>>2]|0)==12){break a}h=(c[q>>2]|0)+64|0;c[h>>2]=(c[h>>2]|0)+1;c[(c[q>>2]|0)+12>>2]=c[ua>>2];break a};case 14:{if((c[m>>2]|0)==0){r=92}else{h=(Wg(c[m>>2]|0,Aa)|0)==0;if(h|(c[Aa>>2]|0)<=0){r=92}}if((r|0)==92){c[Aa>>2]=2147483647}$v(c[q>>2]|0,0,c[s>>2]|0);Qv(c[p>>2]|0,25,c[Aa>>2]|0,1)|0;c[Ba>>2]=oy(c[p>>2]|0,138,c[s>>2]|0)|0;oy(c[p>>2]|0,35,1)|0;Qv(c[p>>2]|0,37,1,-1)|0;Qv(c[p>>2]|0,134,1,c[Ba>>2]|0)|0;jw(c[p>>2]|0,c[Ba>>2]|0);break a};case 29:{if((c[m>>2]|0)==0){h=(d[(c[hb>>2]|0)+8>>0]|0)-1|0;tA(c[q>>2]|0,27736,h,((h|0)<0)<<31>>31);break a}if((a[(c[n>>2]|0)+62>>0]|0)!=0){h=((Ug(c[m>>2]|0,0,1)|0)&255)+1&255;a[(c[hb>>2]|0)+8>>0]=h;CA(c[n>>2]|0);break a}else{bf(c[q>>2]|0,27752,t);break a}};case 2:{if((c[m>>2]|0)==0){h=(c[(c[n>>2]|0)+24>>2]&c[26800+((c[Ca>>2]|0)*12|0)>>2]|0)!=0&1;tA(c[q>>2]|0,c[26792+((c[Ca>>2]|0)*12|0)>>2]|0,h,((h|0)<0)<<31>>31);break a}c[ma>>2]=c[26800+((c[Ca>>2]|0)*12|0)>>2];if((d[(c[n>>2]|0)+62>>0]|0)==0){c[ma>>2]=c[ma>>2]&-524289}h=(Og(c[m>>2]|0,0)|0)<<24>>24!=0;q=c[ma>>2]|0;if(h){h=(c[n>>2]|0)+24|0;c[h>>2]=c[h>>2]|q}else{h=(c[n>>2]|0)+24|0;c[h>>2]=c[h>>2]&~q;if((c[ma>>2]|0)==16777216){h=(c[n>>2]|0)+504|0;c[h>>2]=0;c[h+4>>2]=0}}Qv(c[p>>2]|0,139,0,0)|0;CA(c[n>>2]|0);break a};case 31:{p=c[q>>2]|0;if((c[m>>2]|0)!=0){AA(p,c[m>>2]|0)|0;break a}else{tA(p,27664,d[(c[n>>2]|0)+63>>0]|0,0);break a}};case 32:{if((c[m>>2]|0)==0){if((c[472]|0)==0){break a}rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,27680,0)|0;Sv(c[p>>2]|0,97,0,1,0,c[472]|0,0)|0;Qv(c[p>>2]|0,35,1,1)|0;break a}do{if((a[c[m>>2]>>0]|0)!=0){c[ua>>2]=op(c[c[n>>2]>>2]|0,c[m>>2]|0,1,Ea)|0;if((c[ua>>2]|0)==0){if((c[Ea>>2]|0)!=0){break}}bf(c[q>>2]|0,27704,t);break a}}while(0);if((d[(c[n>>2]|0)+63>>0]|0)<=1){BA(c[q>>2]|0)|0}oc(c[472]|0);if((a[c[m>>2]>>0]|0)!=0){c[t>>2]=c[m>>2];c[472]=wc(1768,t)|0;break a}else{c[472]=0;break a}};case 4:{if((c[m>>2]|0)!=0){c[Fa>>2]=Vg(c[m>>2]|0)|0;c[(c[(c[hb>>2]|0)+12>>2]|0)+80>>2]=c[Fa>>2];Ly(c[(c[hb>>2]|0)+4>>2]|0,c[(c[(c[hb>>2]|0)+12>>2]|0)+80>>2]|0)|0;break a}else{h=c[(c[(c[hb>>2]|0)+12>>2]|0)+80>>2]|0;tA(c[q>>2]|0,27480,h,((h|0)<0)<<31>>31);break a}};case 1:{c[Qa>>2]=c[(c[hb>>2]|0)+4>>2];if((c[m>>2]|0)==0){yb=c[q>>2]|0;h=xA(c[Qa>>2]|0)|0;tA(yb,27608,h,((h|0)<0)<<31>>31);break a}c[Sa>>2]=yA(c[m>>2]|0)|0;a[(c[n>>2]|0)+66>>0]=c[Sa>>2];c[ua>>2]=zA(c[Qa>>2]|0,c[Sa>>2]|0)|0;if((c[ua>>2]|0)!=0){break a}if(!((c[Sa>>2]|0)==1|(c[Sa>>2]|0)==2)){break a}c[Ra>>2]=hf(c[p>>2]|0,6,27624,0)|0;kf(c[p>>2]|0,c[Ra>>2]|0,c[s>>2]|0);kf(c[p>>2]|0,(c[Ra>>2]|0)+1|0,c[s>>2]|0);lf(c[p>>2]|0,(c[Ra>>2]|0)+2|0,(c[Ra>>2]|0)+4|0);kf(c[p>>2]|0,(c[Ra>>2]|0)+4|0,(c[Sa>>2]|0)-1|0);kf(c[p>>2]|0,(c[Ra>>2]|0)+5|0,c[s>>2]|0);jf(c[p>>2]|0,c[s>>2]|0);break a};case 18:{rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,27568,0)|0;if((c[m>>2]|0)==0){c[Ua>>2]=-1}else{c[cb>>2]=Ub(c[m>>2]|0)|0;c[Ua>>2]=0;while(1){h=vA(c[Ua>>2]|0)|0;c[Va>>2]=h;if((h|0)==0){break}if((Tb(c[m>>2]|0,c[Va>>2]|0,c[cb>>2]|0)|0)==0){break}c[Ua>>2]=(c[Ua>>2]|0)+1}if((c[Va>>2]|0)==0){c[Ua>>2]=-1}}if((c[Ua>>2]|0)==-1){if((c[(c[kb>>2]|0)+4>>2]|0)==0){c[s>>2]=0;c[(c[kb>>2]|0)+4>>2]=1}}c[Ta>>2]=(c[(c[n>>2]|0)+20>>2]|0)-1;while(1){if((c[Ta>>2]|0)<0){break}do{if((c[(c[(c[n>>2]|0)+16>>2]|0)+(c[Ta>>2]<<4)+4>>2]|0)!=0){if((c[Ta>>2]|0)!=(c[s>>2]|0)){if((c[(c[kb>>2]|0)+4>>2]|0)!=0){break}}jf(c[p>>2]|0,c[Ta>>2]|0);Tv(c[p>>2]|0,12,c[Ta>>2]|0,1,c[Ua>>2]|0)|0}}while(0);c[Ta>>2]=(c[Ta>>2]|0)+ -1}Qv(c[p>>2]|0,35,1,1)|0;break a};case 30:{if((c[m>>2]|0)==0){break a}c[ia>>2]=cw(c[n>>2]|0,c[m>>2]|0,c[F>>2]|0)|0;if((c[ia>>2]|0)==0){break a}c[la>>2]=0;c[ga>>2]=Dy(c[ia>>2]|0)|0;rA(c[p>>2]|0,6);c[(c[q>>2]|0)+72>>2]=6;aw(c[q>>2]|0,c[s>>2]|0);sA(c[p>>2]|0,0,0,27808,0)|0;sA(c[p>>2]|0,1,0,27816,0)|0;sA(c[p>>2]|0,2,0,27824,0)|0;sA(c[p>>2]|0,3,0,27832,0)|0;sA(c[p>>2]|0,4,0,27840,0)|0;sA(c[p>>2]|0,5,0,27856,0)|0;vw(c[q>>2]|0,c[ia>>2]|0)|0;c[ka>>2]=0;c[ja>>2]=c[(c[ia>>2]|0)+4>>2];while(1){if((c[ka>>2]|0)>=(b[(c[ia>>2]|0)+38>>1]|0)){break a}if((a[(c[ja>>2]|0)+23>>0]&2|0)!=0){c[la>>2]=(c[la>>2]|0)+1}else{Qv(c[p>>2]|0,25,(c[ka>>2]|0)-(c[la>>2]|0)|0,1)|0;Sv(c[p>>2]|0,97,0,2,0,c[c[ja>>2]>>2]|0,0)|0;if((c[(c[ja>>2]|0)+12>>2]|0)!=0){q=c[(c[ja>>2]|0)+12>>2]|0}else{q=1784}Sv(c[p>>2]|0,97,0,3,0,q,0)|0;Qv(c[p>>2]|0,25,(d[(c[ja>>2]|0)+20>>0]|0)!=0?1:0,4)|0;q=c[p>>2]|0;if((c[(c[ja>>2]|0)+8>>2]|0)!=0){Sv(q,97,0,5,0,c[(c[ja>>2]|0)+8>>2]|0,0)|0}else{Qv(q,28,0,5)|0}c:do{if((a[(c[ja>>2]|0)+23>>0]&1|0)==0){c[ha>>2]=0}else{h=(c[ga>>2]|0)==0;c[ha>>2]=1;if(h){break}while(1){if((c[ha>>2]|0)>(b[(c[ia>>2]|0)+38>>1]|0)){break c}if((b[(c[(c[ga>>2]|0)+4>>2]|0)+((c[ha>>2]|0)-1<<1)>>1]|0)==(c[ka>>2]|0)){break c}c[ha>>2]=(c[ha>>2]|0)+1}}}while(0);Qv(c[p>>2]|0,25,c[ha>>2]|0,6)|0;Qv(c[p>>2]|0,35,1,6)|0}c[ka>>2]=(c[ka>>2]|0)+1;c[ja>>2]=(c[ja>>2]|0)+24}};case 6:{c[ob>>2]=0;rA(c[p>>2]|0,2);c[(c[q>>2]|0)+72>>2]=2;sA(c[p>>2]|0,0,0,27896,0)|0;sA(c[p>>2]|0,1,0,27816,0)|0;c[mb>>2]=c[(c[n>>2]|0)+428>>2];while(1){if((c[mb>>2]|0)==0){break a}c[nb>>2]=c[(c[mb>>2]|0)+8>>2];yb=c[p>>2]|0;h=c[ob>>2]|0;c[ob>>2]=h+1;Qv(yb,25,h,1)|0;Sv(c[p>>2]|0,97,0,2,0,c[c[nb>>2]>>2]|0,0)|0;Qv(c[p>>2]|0,35,1,2)|0;c[mb>>2]=c[c[mb>>2]>>2]}};case 13:{if((c[m>>2]|0)==0){break a}c[qa>>2]=cw(c[n>>2]|0,c[m>>2]|0,c[F>>2]|0)|0;if((c[qa>>2]|0)==0){break a}c[p>>2]=Ov(c[q>>2]|0)|0;c[qb>>2]=c[(c[qa>>2]|0)+16>>2];if((c[qb>>2]|0)==0){break a}c[rb>>2]=0;rA(c[p>>2]|0,8);c[(c[q>>2]|0)+72>>2]=8;aw(c[q>>2]|0,c[s>>2]|0);sA(c[p>>2]|0,0,0,27920,0)|0;sA(c[p>>2]|0,1,0,27896,0)|0;sA(c[p>>2]|0,2,0,27864,0)|0;sA(c[p>>2]|0,3,0,27928,0)|0;sA(c[p>>2]|0,4,0,27936,0)|0;sA(c[p>>2]|0,5,0,27944,0)|0;sA(c[p>>2]|0,6,0,27960,0)|0;sA(c[p>>2]|0,7,0,27976,0)|0;while(1){if((c[qb>>2]|0)==0){break a}c[pb>>2]=0;while(1){if((c[pb>>2]|0)>=(c[(c[qb>>2]|0)+20>>2]|0)){break}c[sb>>2]=c[(c[qb>>2]|0)+36+(c[pb>>2]<<3)+4>>2];c[oa>>2]=EA(a[(c[qb>>2]|0)+25>>0]|0)|0;c[pa>>2]=EA(a[(c[qb>>2]|0)+26>>0]|0)|0;Qv(c[p>>2]|0,25,c[rb>>2]|0,1)|0;Qv(c[p>>2]|0,25,c[pb>>2]|0,2)|0;Sv(c[p>>2]|0,97,0,3,0,c[(c[qb>>2]|0)+8>>2]|0,0)|0;Sv(c[p>>2]|0,97,0,4,0,c[(c[(c[qa>>2]|0)+4>>2]|0)+((c[(c[qb>>2]|0)+36+(c[pb>>2]<<3)>>2]|0)*24|0)>>2]|0,0)|0;Sv(c[p>>2]|0,(c[sb>>2]|0)!=0?97:28,0,5,0,c[sb>>2]|0,0)|0;Sv(c[p>>2]|0,97,0,6,0,c[pa>>2]|0,0)|0;Sv(c[p>>2]|0,97,0,7,0,c[oa>>2]|0,0)|0;Sv(c[p>>2]|0,97,0,8,0,27984,0)|0;Qv(c[p>>2]|0,35,1,8)|0;c[pb>>2]=(c[pb>>2]|0)+1}c[rb>>2]=(c[rb>>2]|0)+1;c[qb>>2]=c[(c[qb>>2]|0)+4>>2]}};case 12:{c[J>>2]=(c[(c[q>>2]|0)+72>>2]|0)+1;h=(c[q>>2]|0)+72|0;c[h>>2]=(c[h>>2]|0)+4;h=(c[q>>2]|0)+72|0;yb=(c[h>>2]|0)+1|0;c[h>>2]=yb;c[T>>2]=yb;yb=(c[q>>2]|0)+72|0;h=(c[yb>>2]|0)+1|0;c[yb>>2]=h;c[I>>2]=h;c[p>>2]=Ov(c[q>>2]|0)|0;rA(c[p>>2]|0,4);sA(c[p>>2]|0,0,0,27864,0)|0;sA(c[p>>2]|0,1,0,8848,0)|0;sA(c[p>>2]|0,2,0,27992,0)|0;sA(c[p>>2]|0,3,0,28e3,0)|0;aw(c[q>>2]|0,c[s>>2]|0);c[H>>2]=c[(c[(c[(c[n>>2]|0)+16>>2]|0)+(c[s>>2]<<4)+12>>2]|0)+16>>2];while(1){if((c[H>>2]|0)==0){break a}if((c[m>>2]|0)!=0){c[G>>2]=af(c[q>>2]|0,0,c[m>>2]|0,c[F>>2]|0)|0;c[H>>2]=0}else{c[G>>2]=c[(c[H>>2]|0)+8>>2];c[H>>2]=c[c[H>>2]>>2]}if((c[G>>2]|0)==0){continue}if((c[(c[G>>2]|0)+16>>2]|0)==0){continue}py(c[q>>2]|0,c[s>>2]|0,c[(c[G>>2]|0)+32>>2]|0,0,c[c[G>>2]>>2]|0);if(((b[(c[G>>2]|0)+38>>1]|0)+(c[I>>2]|0)|0)>(c[(c[q>>2]|0)+72>>2]|0)){c[(c[q>>2]|0)+72>>2]=(b[(c[G>>2]|0)+38>>1]|0)+(c[I>>2]|0)}qy(c[q>>2]|0,0,c[s>>2]|0,c[G>>2]|0,52);Sv(c[p>>2]|0,97,0,c[J>>2]|0,0,c[c[G>>2]>>2]|0,0)|0;c[K>>2]=1;c[L>>2]=c[(c[G>>2]|0)+16>>2];d:while(1){if((c[L>>2]|0)==0){break}c[M>>2]=cw(c[n>>2]|0,c[(c[L>>2]|0)+8>>2]|0,c[F>>2]|0)|0;do{if((c[M>>2]|0)!=0){c[N>>2]=0;py(c[q>>2]|0,c[s>>2]|0,c[(c[M>>2]|0)+32>>2]|0,0,c[c[M>>2]>>2]|0);c[ea>>2]=FA(c[q>>2]|0,c[M>>2]|0,c[L>>2]|0,N,0)|0;if((c[ea>>2]|0)!=0){r=198;break d}if((c[N>>2]|0)==0){qy(c[q>>2]|0,c[K>>2]|0,c[s>>2]|0,c[M>>2]|0,52);break}else{Tv(c[p>>2]|0,52,c[K>>2]|0,c[(c[N>>2]|0)+44>>2]|0,c[s>>2]|0)|0;ry(c[q>>2]|0,c[N>>2]|0);break}}}while(0);c[K>>2]=(c[K>>2]|0)+1;c[L>>2]=c[(c[L>>2]|0)+4>>2]}if((r|0)==198){r=0;c[H>>2]=0}if((c[L>>2]|0)!=0){break a}if((c[(c[q>>2]|0)+68>>2]|0)<(c[K>>2]|0)){c[(c[q>>2]|0)+68>>2]=c[K>>2]}c[P>>2]=oy(c[p>>2]|0,105,0)|0;c[K>>2]=1;c[L>>2]=c[(c[G>>2]|0)+16>>2];while(1){if((c[L>>2]|0)==0){break}c[M>>2]=cw(c[n>>2]|0,c[(c[L>>2]|0)+8>>2]|0,c[F>>2]|0)|0;c[N>>2]=0;c[Q>>2]=0;if((c[M>>2]|0)!=0){c[ea>>2]=FA(c[q>>2]|0,c[M>>2]|0,c[L>>2]|0,N,Q)|0}c[R>>2]=cz(c[p>>2]|0)|0;do{if((c[M>>2]|0)!=0){if((c[N>>2]|0)!=0){r=213;break}c[S>>2]=c[(c[L>>2]|0)+36>>2];t=c[p>>2]|0;if((c[S>>2]|0)!=(b[(c[G>>2]|0)+36>>1]|0)){Tv(t,46,0,c[S>>2]|0,c[I>>2]|0)|0;lz(c[p>>2]|0,c[G>>2]|0,c[S>>2]|0,c[I>>2]|0);Qv(c[p>>2]|0,76,c[I>>2]|0,c[R>>2]|0)|0;yb=c[p>>2]|0;h=c[I>>2]|0;Qv(yb,38,h,(sy(c[p>>2]|0)|0)+3|0)|0}else{Qv(t,100,0,c[I>>2]|0)|0}Tv(c[p>>2]|0,67,c[K>>2]|0,0,c[I>>2]|0)|0;Qv(c[p>>2]|0,16,0,c[R>>2]|0)|0;h=c[p>>2]|0;jw(h,(sy(c[p>>2]|0)|0)-2|0)}else{r=213}}while(0);do{if((r|0)==213){r=0;c[$>>2]=0;while(1){if((c[$>>2]|0)>=(c[(c[L>>2]|0)+20>>2]|0)){break}t=c[$>>2]|0;if((c[Q>>2]|0)!=0){t=c[(c[Q>>2]|0)+(t<<2)>>2]|0}else{t=c[(c[L>>2]|0)+36+(t<<3)>>2]|0}gz(c[p>>2]|0,c[G>>2]|0,0,t,(c[I>>2]|0)+(c[$>>2]|0)|0);Qv(c[p>>2]|0,76,(c[I>>2]|0)+(c[$>>2]|0)|0,c[R>>2]|0)|0;c[$>>2]=(c[$>>2]|0)+1}if((c[M>>2]|0)==0){break}xb=c[p>>2]|0;g=c[I>>2]|0;f=c[(c[L>>2]|0)+20>>2]|0;yb=c[T>>2]|0;h=GA(c[p>>2]|0,c[N>>2]|0)|0;Sv(xb,48,g,f,yb,h,c[(c[L>>2]|0)+20>>2]|0)|0;ff(c[p>>2]|0,66,c[K>>2]|0,c[R>>2]|0,c[T>>2]|0,0)|0}}while(0);Qv(c[p>>2]|0,100,0,(c[J>>2]|0)+1|0)|0;Sv(c[p>>2]|0,97,0,(c[J>>2]|0)+2|0,0,c[(c[L>>2]|0)+8>>2]|0,0)|0;Qv(c[p>>2]|0,25,(c[K>>2]|0)-1|0,(c[J>>2]|0)+3|0)|0;Qv(c[p>>2]|0,35,c[J>>2]|0,4)|0;$y(c[p>>2]|0,c[R>>2]|0);cc(c[n>>2]|0,c[Q>>2]|0);c[K>>2]=(c[K>>2]|0)+1;c[L>>2]=c[(c[L>>2]|0)+4>>2]}Qv(c[p>>2]|0,9,0,(c[P>>2]|0)+1|0)|0;jw(c[p>>2]|0,c[P>>2]|0)}};case 15:{if((c[m>>2]|0)==0){break a}c[Ga>>2]=tw(c[n>>2]|0,c[m>>2]|0,c[F>>2]|0)|0;if((c[Ga>>2]|0)==0){break a}c[Ia>>2]=c[(c[Ga>>2]|0)+12>>2];rA(c[p>>2]|0,3);c[(c[q>>2]|0)+72>>2]=3;aw(c[q>>2]|0,c[s>>2]|0);sA(c[p>>2]|0,0,0,27888,0)|0;sA(c[p>>2]|0,1,0,27808,0)|0;sA(c[p>>2]|0,2,0,27816,0)|0;c[Da>>2]=0;while(1){if((c[Da>>2]|0)>=(e[(c[Ga>>2]|0)+50>>1]|0)){break a}b[Ha>>1]=b[(c[(c[Ga>>2]|0)+4>>2]|0)+(c[Da>>2]<<1)>>1]|0;Qv(c[p>>2]|0,25,c[Da>>2]|0,1)|0;Qv(c[p>>2]|0,25,b[Ha>>1]|0,2)|0;Sv(c[p>>2]|0,97,0,3,0,c[(c[(c[Ia>>2]|0)+4>>2]|0)+((b[Ha>>1]|0)*24|0)>>2]|0,0)|0;Qv(c[p>>2]|0,35,1,3)|0;c[Da>>2]=(c[Da>>2]|0)+1}};case 9:{rA(c[p>>2]|0,3);c[(c[q>>2]|0)+72>>2]=3;sA(c[p>>2]|0,0,0,27896,0)|0;sA(c[p>>2]|0,1,0,27816,0)|0;sA(c[p>>2]|0,2,0,27912,0)|0;c[Ja>>2]=0;while(1){if((c[Ja>>2]|0)>=(c[(c[n>>2]|0)+20>>2]|0)){break a}if((c[(c[(c[n>>2]|0)+16>>2]|0)+(c[Ja>>2]<<4)+4>>2]|0)!=0){Qv(c[p>>2]|0,25,c[Ja>>2]|0,1)|0;Sv(c[p>>2]|0,97,0,2,0,c[(c[(c[n>>2]|0)+16>>2]|0)+(c[Ja>>2]<<4)>>2]|0,0)|0;h=c[p>>2]|0;Sv(h,97,0,3,0,Qg(c[(c[(c[n>>2]|0)+16>>2]|0)+(c[Ja>>2]<<4)+4>>2]|0)|0,0)|0;Qv(c[p>>2]|0,35,1,3)|0}c[Ja>>2]=(c[Ja>>2]|0)+1}};case 28:{c[p>>2]=Ov(c[q>>2]|0)|0;rA(c[p>>2]|0,4);c[(c[q>>2]|0)+72>>2]=4;aw(c[q>>2]|0,c[s>>2]|0);sA(c[p>>2]|0,0,0,27864,0)|0;sA(c[p>>2]|0,1,0,16696,0)|0;sA(c[p>>2]|0,2,0,27872,0)|0;sA(c[p>>2]|0,3,0,27880,0)|0;c[Ka>>2]=c[(c[(c[hb>>2]|0)+12>>2]|0)+16>>2];while(1){if((c[Ka>>2]|0)==0){break a}c[La>>2]=c[(c[Ka>>2]|0)+8>>2];Sv(c[p>>2]|0,97,0,1,0,c[c[La>>2]>>2]|0,0)|0;Qv(c[p>>2]|0,28,0,2)|0;h=c[p>>2]|0;yb=DA(b[(c[La>>2]|0)+42>>1]|0)|0;Qv(h,25,yb,3)|0;yb=c[p>>2]|0;h=DA(b[(c[La>>2]|0)+28>>1]|0)|0;Qv(yb,25,h,4)|0;Qv(c[p>>2]|0,35,1,4)|0;c[Ma>>2]=c[(c[La>>2]|0)+8>>2];while(1){if((c[Ma>>2]|0)==0){break}Sv(c[p>>2]|0,97,0,2,0,c[c[Ma>>2]>>2]|0,0)|0;h=c[p>>2]|0;yb=DA(b[(c[Ma>>2]|0)+48>>1]|0)|0;Qv(h,25,yb,3)|0;yb=c[p>>2]|0;h=DA(b[c[(c[Ma>>2]|0)+8>>2]>>1]|0)|0;Qv(yb,25,h,4)|0;Qv(c[p>>2]|0,35,1,4)|0;c[Ma>>2]=c[(c[Ma>>2]|0)+20>>2]}c[Ka>>2]=c[c[Ka>>2]>>2]}};case 16:{if((c[m>>2]|0)==0){break a}c[Na>>2]=cw(c[n>>2]|0,c[m>>2]|0,c[F>>2]|0)|0;if((c[Na>>2]|0)==0){break a}c[p>>2]=Ov(c[q>>2]|0)|0;rA(c[p>>2]|0,3);c[(c[q>>2]|0)+72>>2]=3;aw(c[q>>2]|0,c[s>>2]|0);sA(c[p>>2]|0,0,0,27896,0)|0;sA(c[p>>2]|0,1,0,27816,0)|0;sA(c[p>>2]|0,2,0,27904,0)|0;c[Oa>>2]=c[(c[Na>>2]|0)+8>>2];c[Pa>>2]=0;while(1){if((c[Oa>>2]|0)==0){break a}Qv(c[p>>2]|0,25,c[Pa>>2]|0,1)|0;Sv(c[p>>2]|0,97,0,2,0,c[c[Oa>>2]>>2]|0,0)|0;Qv(c[p>>2]|0,25,(d[(c[Oa>>2]|0)+54>>0]|0)!=0&1,3)|0;Qv(c[p>>2]|0,35,1,3)|0;c[Oa>>2]=c[(c[Oa>>2]|0)+20>>2];c[Pa>>2]=(c[Pa>>2]|0)+1}};case 17:{c[Z>>2]=(d[784+(d[c[l>>2]>>0]|0)>>0]|0)==113&1;if((c[c[kb>>2]>>2]|0)==0){c[s>>2]=-1}c[(c[q>>2]|0)+72>>2]=6;rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,28024,0)|0;c[W>>2]=100;if((c[m>>2]|0)!=0){Wg(c[m>>2]|0,W)|0;if((c[W>>2]|0)<=0){c[W>>2]=100}}Qv(c[p>>2]|0,25,c[W>>2]|0,1)|0;c[Y>>2]=0;while(1){if((c[Y>>2]|0)>=(c[(c[n>>2]|0)+20>>2]|0)){break}c[X>>2]=0;if((c[s>>2]|0)>=0){if((c[Y>>2]|0)==(c[s>>2]|0)){r=234}}else{r=234}e:do{if((r|0)==234){r=0;aw(c[q>>2]|0,c[Y>>2]|0);c[V>>2]=oy(c[p>>2]|0,134,1)|0;Qv(c[p>>2]|0,24,0,0)|0;jw(c[p>>2]|0,c[V>>2]|0);c[aa>>2]=(c[(c[(c[n>>2]|0)+16>>2]|0)+(c[Y>>2]<<4)+12>>2]|0)+8;c[ba>>2]=c[(c[aa>>2]|0)+8>>2];while(1){if((c[ba>>2]|0)==0){break}c[O>>2]=c[(c[ba>>2]|0)+8>>2];if((a[(c[O>>2]|0)+44>>0]&32|0)==0){Qv(c[p>>2]|0,25,c[(c[O>>2]|0)+32>>2]|0,2+(c[X>>2]|0)|0)|0;c[X>>2]=(c[X>>2]|0)+1}c[U>>2]=c[(c[O>>2]|0)+8>>2];while(1){if((c[U>>2]|0)==0){break}Qv(c[p>>2]|0,25,c[(c[U>>2]|0)+44>>2]|0,2+(c[X>>2]|0)|0)|0;c[X>>2]=(c[X>>2]|0)+1;c[U>>2]=c[(c[U>>2]|0)+20>>2]}c[ba>>2]=c[c[ba>>2]>>2]}if((c[(c[q>>2]|0)+72>>2]|0)>((c[X>>2]|0)+8|0)){u=c[(c[q>>2]|0)+72>>2]|0}else{u=(c[X>>2]|0)+8|0}c[(c[q>>2]|0)+72>>2]=u;Tv(c[p>>2]|0,124,2,c[X>>2]|0,1)|0;gf(c[p>>2]|0,c[Y>>2]&255);c[V>>2]=oy(c[p>>2]|0,76,2)|0;yb=c[p>>2]|0;h=c[n>>2]|0;c[t>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[Y>>2]<<4)>>2];Sv(yb,97,0,3,0,cf(h,28040,t)|0,-1)|0;Tv(c[p>>2]|0,32,2,4,1)|0;Tv(c[p>>2]|0,94,4,3,2)|0;Qv(c[p>>2]|0,35,2,1)|0;jw(c[p>>2]|0,c[V>>2]|0);c[ba>>2]=c[(c[aa>>2]|0)+8>>2];while(1){if((c[ba>>2]|0)==0){break e}if(!((c[Z>>2]|0)!=0^1)){break e}c[C>>2]=c[(c[ba>>2]|0)+8>>2];c[z>>2]=0;c[y>>2]=-1;f:do{if((c[(c[C>>2]|0)+8>>2]|0)!=0){if((a[(c[C>>2]|0)+44>>0]&32|0)==0){u=0}else{u=Dy(c[C>>2]|0)|0}c[ca>>2]=u;c[V>>2]=oy(c[p>>2]|0,134,1)|0;Qv(c[p>>2]|0,24,0,0)|0;jw(c[p>>2]|0,c[V>>2]|0);IA(c[q>>2]|0);JA(c[q>>2]|0,c[C>>2]|0,52,1,0,da,x)|0;Qv(c[p>>2]|0,25,0,7)|0;c[E>>2]=0;c[B>>2]=c[(c[C>>2]|0)+8>>2];while(1){if((c[B>>2]|0)==0){break}Qv(c[p>>2]|0,25,0,8+(c[E>>2]|0)|0)|0;c[B>>2]=c[(c[B>>2]|0)+20>>2];c[E>>2]=(c[E>>2]|0)+1}if((c[(c[q>>2]|0)+72>>2]|0)>(8+(c[E>>2]|0)|0)){u=c[(c[q>>2]|0)+72>>2]|0}else{u=8+(c[E>>2]|0)|0}c[(c[q>>2]|0)+72>>2]=u;Qv(c[p>>2]|0,105,c[da>>2]|0,0)|0;c[_>>2]=Qv(c[p>>2]|0,37,7,1)|0;c[E>>2]=0;c[B>>2]=c[(c[C>>2]|0)+8>>2];while(1){if((c[B>>2]|0)==0){break}if((c[ca>>2]|0)!=(c[B>>2]|0)){c[y>>2]=Wy(c[q>>2]|0,c[B>>2]|0,c[da>>2]|0,0,0,A,c[z>>2]|0,c[y>>2]|0)|0;c[z>>2]=c[B>>2];Qv(c[p>>2]|0,37,8+(c[E>>2]|0)|0,1)|0;c[w>>2]=ff(c[p>>2]|0,66,(c[x>>2]|0)+(c[E>>2]|0)|0,0,c[y>>2]|0,e[(c[B>>2]|0)+52>>1]|0)|0;Qv(c[p>>2]|0,37,1,-1)|0;Sv(c[p>>2]|0,97,0,3,0,28064,-2)|0;Tv(c[p>>2]|0,94,7,3,3)|0;Sv(c[p>>2]|0,97,0,4,0,28072,-2)|0;Tv(c[p>>2]|0,94,4,3,3)|0;Sv(c[p>>2]|0,97,0,4,0,c[c[B>>2]>>2]|0,0)|0;Tv(c[p>>2]|0,94,4,3,3)|0;Qv(c[p>>2]|0,35,3,1)|0;c[v>>2]=oy(c[p>>2]|0,134,1)|0;Yv(c[p>>2]|0,24)|0;jw(c[p>>2]|0,c[v>>2]|0);jw(c[p>>2]|0,c[w>>2]|0);Xy(c[q>>2]|0,c[A>>2]|0)}c[B>>2]=c[(c[B>>2]|0)+20>>2];c[E>>2]=(c[E>>2]|0)+1}Qv(c[p>>2]|0,9,c[da>>2]|0,c[_>>2]|0)|0;jw(c[p>>2]|0,(c[_>>2]|0)-1|0);Sv(c[p>>2]|0,97,0,2,0,28096,-2)|0;c[E>>2]=0;c[B>>2]=c[(c[C>>2]|0)+8>>2];while(1){if((c[B>>2]|0)==0){break f}if((c[ca>>2]|0)!=(c[B>>2]|0)){c[V>>2]=sy(c[p>>2]|0)|0;Qv(c[p>>2]|0,134,1,(c[V>>2]|0)+2|0)|0;Qv(c[p>>2]|0,24,0,0)|0;Qv(c[p>>2]|0,49,(c[x>>2]|0)+(c[E>>2]|0)|0,3)|0;Tv(c[p>>2]|0,79,8+(c[E>>2]|0)|0,(c[V>>2]|0)+8|0,3)|0;gf(c[p>>2]|0,-120);Qv(c[p>>2]|0,37,1,-1)|0;Sv(c[p>>2]|0,97,0,3,0,c[c[B>>2]>>2]|0,0)|0;Tv(c[p>>2]|0,94,3,2,7)|0;Qv(c[p>>2]|0,35,7,1)|0}c[B>>2]=c[(c[B>>2]|0)+20>>2];c[E>>2]=(c[E>>2]|0)+1}}}while(0);c[ba>>2]=c[c[ba>>2]>>2]}}}while(0);c[Y>>2]=(c[Y>>2]|0)+1}c[V>>2]=hf(c[p>>2]|0,4,28008,0)|0;lf(c[p>>2]|0,c[V>>2]|0,0-(c[W>>2]|0)|0);jw(c[p>>2]|0,(c[V>>2]|0)+1|0);nf(c[p>>2]|0,(c[V>>2]|0)+2|0,28128,-2);break a};case 5:{if((c[m>>2]|0)==0){break a}h=c[n>>2]|0;HA(h,(Og(c[m>>2]|0,0)|0)&255);break a};case 11:{if((c[m>>2]|0)==0){if((gy(c[q>>2]|0)|0)!=0){break a}rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,28288,0)|0;Qv(c[p>>2]|0,97,0,1)|0;nf(c[p>>2]|0,-1,c[28136+(d[(c[(c[(c[c[q>>2]>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]<<3)>>2]|0,-2);Qv(c[p>>2]|0,35,1,1)|0;break a}if((b[(c[(c[(c[n>>2]|0)+16>>2]|0)+12>>2]|0)+78>>1]&1|0)==1){if((b[(c[(c[(c[n>>2]|0)+16>>2]|0)+12>>2]|0)+78>>1]&4|0)!=4){break a}}c[fa>>2]=28136;while(1){if((c[c[fa>>2]>>2]|0)==0){break}h=0==(Dc(c[m>>2]|0,c[c[fa>>2]>>2]|0)|0);p=c[fa>>2]|0;if(h){r=278;break}c[fa>>2]=p+8}if((r|0)==278){if((d[p+4>>0]|0)!=0){p=d[(c[fa>>2]|0)+4>>0]|0}else{p=(a[1480]|0)==0?3:2}a[(c[(c[(c[c[q>>2]>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]=p}if((c[c[fa>>2]>>2]|0)!=0){break a}h=c[q>>2]|0;c[t>>2]=c[m>>2];bf(h,28304,t);break a};case 0:{jf(c[p>>2]|0,c[s>>2]|0);switch(a[c[l>>2]>>0]|0){case 70:case 102:{c[Wa>>2]=0;break};case 83:case 115:{c[Wa>>2]=1;break};case 65:case 97:{c[Wa>>2]=8;break};default:{c[Wa>>2]=6}}if((c[m>>2]|0)!=0){if((c[Wa>>2]|0)!=0){c[Ya>>2]=hf(c[p>>2]|0,3,28336,0)|0;kf(c[p>>2]|0,c[Ya>>2]|0,c[s>>2]|0);yb=c[p>>2]|0;h=(c[Ya>>2]|0)+1|0;kf(yb,h,Vg(c[m>>2]|0)|0);kf(c[p>>2]|0,(c[Ya>>2]|0)+2|0,c[s>>2]|0);lf(c[p>>2]|0,(c[Ya>>2]|0)+2|0,c[Wa>>2]|0);break a}}c[Xa>>2]=hf(c[p>>2]|0,3,28352,0)|0;kf(c[p>>2]|0,c[Xa>>2]|0,c[s>>2]|0);kf(c[p>>2]|0,(c[Xa>>2]|0)+1|0,c[s>>2]|0);mf(c[p>>2]|0,(c[Xa>>2]|0)+1|0,c[Wa>>2]|0);rA(c[p>>2]|0,1);sA(c[p>>2]|0,0,0,c[l>>2]|0,-1)|0;break a};case 34:{c[Za>>2]=(c[c[kb>>2]>>2]|0)!=0?c[s>>2]|0:10;c[_a>>2]=0;do{if((c[m>>2]|0)!=0){if((Dc(c[m>>2]|0,28384)|0)==0){c[_a>>2]=1;break}if((Dc(c[m>>2]|0,28392)|0)==0){c[_a>>2]=2}}}while(0);rA(c[p>>2]|0,3);c[(c[q>>2]|0)+72>>2]=3;sA(c[p>>2]|0,0,0,28400,0)|0;sA(c[p>>2]|0,1,0,9424,0)|0;sA(c[p>>2]|0,2,0,28408,0)|0;Tv(c[p>>2]|0,11,c[Za>>2]|0,c[_a>>2]|0,1)|0;Qv(c[p>>2]|0,35,1,3)|0;break a};case 7:{c[$a>>2]=0;rA(c[p>>2]|0,1);c[(c[q>>2]|0)+72>>2]=1;sA(c[p>>2]|0,0,0,28368,0)|0;while(1){h=c[$a>>2]|0;c[$a>>2]=h+1;h=Vb(h)|0;c[ab>>2]=h;if((h|0)==0){break a}Sv(c[p>>2]|0,97,0,1,0,c[ab>>2]|0,0)|0;Qv(c[p>>2]|0,35,1,1)|0}};case 33:{if((c[m>>2]|0)!=0){h=c[n>>2]|0;tg(h,Vg(c[m>>2]|0)|0)|0}if((c[(c[n>>2]|0)+204>>2]|0)==10){p=c[(c[n>>2]|0)+208>>2]|0}else{p=0}tA(c[q>>2]|0,28424,p,((p|0)<0)<<31>>31);break a};case 27:{if((c[m>>2]|0)!=0){if((Pg(c[m>>2]|0,bb,1e6,1)|0)==0){h=bb;jc(c[h>>2]|0,c[h+4>>2]|0)|0}}yb=c[q>>2]|0;h=jc(-1,-1)|0;tA(yb,28456,h,D);break a};case 26:{bg(c[n>>2]|0)|0;break a};default:{if((c[m>>2]|0)!=0){h=c[n>>2]|0;lg(h,Vg(c[m>>2]|0)|0)|0}h=c[(c[n>>2]|0)+484>>2]|0;tA(c[q>>2]|0,28448,h,((h|0)<0)<<31>>31);break a}}}while(0)}}}while(0);cc(c[n>>2]|0,c[l>>2]|0);cc(c[n>>2]|0,c[m>>2]|0);i=o;return}function nv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;j=i;i=i+112|0;r=j;f=j+100|0;h=j+96|0;g=j+92|0;o=j+88|0;n=j+84|0;p=j+80|0;v=j+56|0;l=j+104|0;w=j+40|0;s=j+32|0;q=j+28|0;k=j+24|0;m=j+20|0;u=j+48|0;t=j+52|0;c[f>>2]=b;c[h>>2]=d;c[g>>2]=e;c[o>>2]=c[(c[f>>2]|0)+488>>2];c[p>>2]=c[c[f>>2]>>2];c[(c[f>>2]|0)+488>>2]=0;do{if((c[(c[f>>2]|0)+64>>2]|0)==0){if((c[o>>2]|0)!=0){c[n>>2]=c[c[o>>2]>>2];c[l>>2]=ef(c[c[f>>2]>>2]|0,c[(c[o>>2]|0)+20>>2]|0)|0;c[(c[o>>2]|0)+28>>2]=c[h>>2];while(1){e=c[o>>2]|0;if((c[h>>2]|0)==0){break}c[(c[h>>2]|0)+4>>2]=e;c[h>>2]=c[(c[h>>2]|0)+32>>2]}c[w>>2]=c[e>>2];c[w+4>>2]=Ub(c[w>>2]|0)|0;kA(v,c[f>>2]|0,c[l>>2]|0,1808,w);if((pA(v,c[(c[o>>2]|0)+28>>2]|0)|0)==0){if((nA(v,c[(c[o>>2]|0)+12>>2]|0)|0)==0){if((a[(c[p>>2]|0)+137>>0]|0)==0){c[s>>2]=Ov(c[f>>2]|0)|0;if((c[s>>2]|0)==0){break}$v(c[f>>2]|0,0,c[l>>2]|0);c[q>>2]=ft(c[p>>2]|0,c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+4>>2]|0)|0;e=c[f>>2]|0;v=(c[l>>2]|0)==1?21432:21456;w=c[n>>2]|0;b=c[(c[o>>2]|0)+4>>2]|0;d=c[q>>2]|0;c[r>>2]=c[(c[(c[p>>2]|0)+16>>2]|0)+(c[l>>2]<<4)>>2];c[r+4>>2]=v;c[r+8>>2]=w;c[r+12>>2]=b;c[r+16>>2]=d;Nv(e,26680,r);cc(c[p>>2]|0,c[q>>2]|0);Pv(c[f>>2]|0,c[l>>2]|0);e=c[s>>2]|0;d=c[l>>2]|0;b=c[p>>2]|0;c[r>>2]=c[n>>2];Rv(e,d,cf(b,26744,r)|0)}if((a[(c[p>>2]|0)+137>>0]|0)!=0){c[k>>2]=c[o>>2];c[m>>2]=(c[(c[(c[p>>2]|0)+16>>2]|0)+(c[l>>2]<<4)+12>>2]|0)+40;e=c[m>>2]|0;d=c[n>>2]|0;b=Ub(c[n>>2]|0)|0;c[o>>2]=Eh(e,d,b,c[o>>2]|0)|0;if((c[o>>2]|0)!=0){a[(c[p>>2]|0)+64>>0]=1;break}if((c[(c[k>>2]|0)+20>>2]|0)==(c[(c[k>>2]|0)+24>>2]|0)){c[t>>2]=Ub(c[(c[k>>2]|0)+4>>2]|0)|0;c[u>>2]=zh((c[(c[k>>2]|0)+24>>2]|0)+8|0,c[(c[k>>2]|0)+4>>2]|0,c[t>>2]|0)|0;c[(c[k>>2]|0)+32>>2]=c[(c[u>>2]|0)+64>>2];c[(c[u>>2]|0)+64>>2]=c[k>>2]}}}}}}}while(0);$b(c[p>>2]|0,c[o>>2]|0);lu(c[p>>2]|0,c[h>>2]|0);i=j;return}function ov(b,e,f,g,h,j,k,l,m,n){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;w=i;i=i+128|0;G=w;u=w+112|0;K=w+108|0;J=w+104|0;B=w+100|0;I=w+96|0;s=w+92|0;r=w+88|0;t=w+84|0;x=w+80|0;A=w+76|0;p=w+116|0;C=w+24|0;q=w+20|0;o=w+12|0;v=w+16|0;z=w+68|0;L=w+32|0;D=w+56|0;E=w+60|0;F=w+64|0;H=w+72|0;c[u>>2]=b;c[K>>2]=e;c[J>>2]=f;c[B>>2]=g;c[I>>2]=h;c[s>>2]=j;c[r>>2]=k;c[t>>2]=l;c[x>>2]=m;c[A>>2]=n;c[p>>2]=0;c[q>>2]=0;c[o>>2]=c[c[u>>2]>>2];do{if((c[x>>2]|0)!=0){if((c[(c[J>>2]|0)+4>>2]|0)>>>0>0){bf(c[u>>2]|0,26336,G);break}else{c[v>>2]=1;c[z>>2]=c[K>>2];y=6;break}}else{c[v>>2]=ky(c[u>>2]|0,c[K>>2]|0,c[J>>2]|0,z)|0;if((c[v>>2]|0)>=0){y=6}}}while(0);do{if((y|0)==6){if((c[r>>2]|0)!=0){if((d[(c[o>>2]|0)+64>>0]|0)==0){if((d[(c[o>>2]|0)+137>>0]|0)!=0){if((c[v>>2]|0)!=1){cc(c[o>>2]|0,c[(c[r>>2]|0)+12>>2]|0);c[(c[r>>2]|0)+12>>2]=0}}c[C>>2]=jA(c[u>>2]|0,c[r>>2]|0)|0;if((d[(c[o>>2]|0)+137>>0]|0)==0){if((c[(c[J>>2]|0)+4>>2]|0)==0){if((c[C>>2]|0)!=0){if((c[(c[C>>2]|0)+68>>2]|0)==(c[(c[(c[o>>2]|0)+16>>2]|0)+28>>2]|0)){c[v>>2]=1}}}}if((a[(c[o>>2]|0)+64>>0]|0)==0){kA(L,c[u>>2]|0,c[v>>2]|0,1808,c[z>>2]|0);if((lA(L,c[r>>2]|0)|0)==0){c[C>>2]=jA(c[u>>2]|0,c[r>>2]|0)|0;if((c[C>>2]|0)==0){if((d[(c[o>>2]|0)+136>>0]|0)!=1){break}a[(c[o>>2]|0)+138>>0]=1;break}if((a[(c[C>>2]|0)+44>>0]&16|0)!=0){bf(c[u>>2]|0,26384,G);break}c[q>>2]=Iv(c[o>>2]|0,c[z>>2]|0)|0;if((c[q>>2]|0)!=0){if(0==(uw(c[u>>2]|0,c[q>>2]|0)|0)){e=(c[(c[(c[o>>2]|0)+16>>2]|0)+(c[v>>2]<<4)+12>>2]|0)+40|0;b=c[q>>2]|0;if((zh(e,b,Ub(c[q>>2]|0)|0)|0)!=0){x=c[u>>2]|0;if((c[A>>2]|0)!=0){aw(x,c[v>>2]|0);break}else{c[G>>2]=c[z>>2];bf(x,26432,G);break}}if((Tb(c[c[C>>2]>>2]|0,21672,7)|0)==0){bf(c[u>>2]|0,26464,G);b=(c[u>>2]|0)+64|0;c[b>>2]=(c[b>>2]|0)+1;break}if((c[(c[C>>2]|0)+12>>2]|0)!=0){if((c[B>>2]|0)!=49){b=c[u>>2]|0;e=c[r>>2]|0;c[G>>2]=(c[B>>2]|0)==35?26544:26552;c[G+4>>2]=e;c[G+8>>2]=0;bf(b,26504,G);break}}if((c[(c[C>>2]|0)+12>>2]|0)==0){if((c[B>>2]|0)==49){b=c[u>>2]|0;c[G>>2]=c[r>>2];c[G+4>>2]=0;bf(b,26560,G);break}}c[D>>2]=ef(c[o>>2]|0,c[(c[C>>2]|0)+68>>2]|0)|0;c[E>>2]=7;c[F>>2]=c[(c[(c[o>>2]|0)+16>>2]|0)+(c[D>>2]<<4)>>2];if((c[x>>2]|0)!=0){z=c[(c[(c[o>>2]|0)+16>>2]|0)+16>>2]|0}else{z=c[F>>2]|0}c[H>>2]=z;if((c[D>>2]|0)==1){y=42}else{if((c[x>>2]|0)!=0){y=42}}if((y|0)==42){c[E>>2]=5}if((Lv(c[u>>2]|0,c[E>>2]|0,c[q>>2]|0,c[c[C>>2]>>2]|0,c[H>>2]|0)|0)==0){if((Lv(c[u>>2]|0,18,(c[D>>2]|0)==1?21432:21456,0,c[F>>2]|0)|0)==0){if((c[B>>2]|0)==49){c[B>>2]=35}c[p>>2]=ve(c[o>>2]|0,36)|0;if((c[p>>2]|0)==0){break}c[c[p>>2]>>2]=c[q>>2];c[q>>2]=0;b=pe(c[o>>2]|0,c[(c[r>>2]|0)+16>>2]|0)|0;c[(c[p>>2]|0)+4>>2]=b;c[(c[p>>2]|0)+20>>2]=c[(c[(c[o>>2]|0)+16>>2]|0)+(c[v>>2]<<4)+12>>2];c[(c[p>>2]|0)+24>>2]=c[(c[C>>2]|0)+68>>2];a[(c[p>>2]|0)+8>>0]=c[I>>2];a[(c[p>>2]|0)+9>>0]=(c[B>>2]|0)==35?1:2;b=hx(c[o>>2]|0,c[t>>2]|0,1)|0;c[(c[p>>2]|0)+12>>2]=b;b=ey(c[o>>2]|0,c[s>>2]|0)|0;c[(c[p>>2]|0)+16>>2]=b;c[(c[u>>2]|0)+488>>2]=c[p>>2]}}}}}}}}}}while(0);cc(c[o>>2]|0,c[q>>2]|0);fu(c[o>>2]|0,c[r>>2]|0);hu(c[o>>2]|0,c[s>>2]|0);gu(c[o>>2]|0,c[t>>2]|0);if((c[(c[u>>2]|0)+488>>2]|0)!=0){i=w;return}$b(c[o>>2]|0,c[p>>2]|0);i=w;return}function pv(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;l=j+16|0;o=j;h=j+4|0;k=j+8|0;n=j+20|0;m=j+12|0;c[l>>2]=b;c[o>>2]=d;c[h>>2]=e;c[k>>2]=f;a[n>>0]=g;c[m>>2]=iA(c[l>>2]|0,110,c[o>>2]|0)|0;if((c[m>>2]|0)!=0){o=px(c[l>>2]|0,c[h>>2]|0,1)|0;c[(c[m>>2]|0)+24>>2]=o;o=hx(c[l>>2]|0,c[k>>2]|0,1)|0;c[(c[m>>2]|0)+20>>2]=o;a[(c[m>>2]|0)+1>>0]=a[n>>0]|0}cu(c[l>>2]|0,c[h>>2]|0);gu(c[l>>2]|0,c[k>>2]|0);i=j;return c[m>>2]|0}function qv(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;l=n+16|0;o=n;h=n+4|0;k=n+8|0;m=n+20|0;j=n+12|0;c[l>>2]=b;c[o>>2]=d;c[h>>2]=e;c[k>>2]=f;a[m>>0]=g;c[j>>2]=iA(c[l>>2]|0,108,c[o>>2]|0)|0;g=c[l>>2]|0;if((c[j>>2]|0)!=0){b=Bw(g,c[k>>2]|0,1)|0;c[(c[j>>2]|0)+8>>2]=b;c[(c[j>>2]|0)+28>>2]=c[h>>2];a[(c[j>>2]|0)+1>>0]=a[m>>0]|0;b=c[l>>2]|0;o=c[k>>2]|0;du(b,o);o=c[j>>2]|0;i=n;return o|0}else{hu(g,c[h>>2]|0);b=c[l>>2]|0;o=c[k>>2]|0;du(b,o);o=c[j>>2]|0;i=n;return o|0}return 0}function rv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;j=g+12|0;k=g;h=g+4|0;f=g+8|0;c[j>>2]=b;c[k>>2]=d;c[h>>2]=e;c[f>>2]=iA(c[j>>2]|0,109,c[k>>2]|0)|0;if((c[f>>2]|0)!=0){k=hx(c[j>>2]|0,c[h>>2]|0,1)|0;c[(c[f>>2]|0)+20>>2]=k;a[(c[f>>2]|0)+1>>0]=10}gu(c[j>>2]|0,c[h>>2]|0);i=g;return c[f>>2]|0}function sv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;h=e;g=e+4|0;j=e+8|0;c[h>>2]=b;c[g>>2]=d;c[j>>2]=ve(c[h>>2]|0,40)|0;if((c[j>>2]|0)==0){du(c[h>>2]|0,c[g>>2]|0);c[f>>2]=0;b=c[f>>2]|0;i=e;return b|0}else{a[c[j>>2]>>0]=119;c[(c[j>>2]|0)+8>>2]=c[g>>2];a[(c[j>>2]|0)+1>>0]=10;c[f>>2]=c[j>>2];b=c[f>>2]|0;i=e;return b|0}return 0}function tv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;m=i;i=i+48|0;l=m;j=m+40|0;g=m+36|0;f=m+32|0;n=m+28|0;q=m+44|0;k=m+16|0;r=m+12|0;s=m+8|0;h=m+20|0;p=m+24|0;c[j>>2]=b;c[g>>2]=d;c[f>>2]=e;c[n>>2]=0;c[h>>2]=c[c[j>>2]>>2];if((a[(c[h>>2]|0)+64>>0]|0)!=0){d=c[h>>2]|0;b=c[g>>2]|0;fu(d,b);i=m;return}if(0!=(gy(c[j>>2]|0)|0)){d=c[h>>2]|0;b=c[g>>2]|0;fu(d,b);i=m;return}c[k>>2]=c[(c[g>>2]|0)+12>>2];c[r>>2]=c[(c[g>>2]|0)+16>>2];c[s>>2]=Ub(c[r>>2]|0)|0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[(c[h>>2]|0)+20>>2]|0)){break}b=c[q>>2]|0;c[p>>2]=(c[q>>2]|0)<2?b^1:b;if((c[k>>2]|0)!=0){if((Dc(c[(c[(c[h>>2]|0)+16>>2]|0)+(c[p>>2]<<4)>>2]|0,c[k>>2]|0)|0)==0){o=7}}else{o=7}if((o|0)==7){o=0;c[n>>2]=zh((c[(c[(c[h>>2]|0)+16>>2]|0)+(c[p>>2]<<4)+12>>2]|0)+40|0,c[r>>2]|0,c[s>>2]|0)|0;if((c[n>>2]|0)!=0){break}}c[q>>2]=(c[q>>2]|0)+1}if((c[n>>2]|0)!=0){fA(c[j>>2]|0,c[n>>2]|0);d=c[h>>2]|0;b=c[g>>2]|0;fu(d,b);i=m;return}n=c[j>>2]|0;if((c[f>>2]|0)!=0){eA(n,c[k>>2]|0)}else{c[l>>2]=c[g>>2];c[l+4>>2]=0;bf(n,26272,l)}a[(c[j>>2]|0)+17>>0]=1;d=c[h>>2]|0;b=c[g>>2]|0;fu(d,b);i=m;return}function uv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;Yz(c[k>>2]|0,24,26032,c[j>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0);i=f;return}function vv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;Yz(c[f>>2]|0,25,25848,c[e>>2]|0,0,0,c[e>>2]|0);i=d;return}function wv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;k=i;i=i+64|0;j=k;f=k+44|0;r=k+40|0;s=k+36|0;u=k+32|0;p=k+28|0;l=k+48|0;n=k+16|0;h=k+12|0;g=k+8|0;o=k+4|0;q=k+20|0;t=k+24|0;c[f>>2]=b;c[r>>2]=d;c[s>>2]=e;c[o>>2]=c[c[f>>2]>>2];if(0!=(gy(c[f>>2]|0)|0)){i=k;return}if((c[r>>2]|0)==0){Ty(c[f>>2]|0,0);i=k;return}if((c[s>>2]|0)==0){m=6}else{if((c[c[s>>2]>>2]|0)==0){m=6}}do{if((m|0)==6){c[t>>2]=Iv(c[c[f>>2]>>2]|0,c[r>>2]|0)|0;if((c[t>>2]|0)==0){i=k;return}c[u>>2]=xh(c[o>>2]|0,a[(c[(c[(c[o>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0,c[t>>2]|0,0)|0;if((c[u>>2]|0)==0){cc(c[o>>2]|0,c[t>>2]|0);break}Ty(c[f>>2]|0,c[t>>2]|0);cc(c[o>>2]|0,c[t>>2]|0);i=k;return}}while(0);c[g>>2]=ky(c[f>>2]|0,c[r>>2]|0,c[s>>2]|0,q)|0;if((c[g>>2]|0)<0){i=k;return}c[p>>2]=Iv(c[o>>2]|0,c[q>>2]|0)|0;if((c[p>>2]|0)==0){i=k;return}c[l>>2]=c[(c[(c[o>>2]|0)+16>>2]|0)+(c[g>>2]<<4)>>2];c[n>>2]=cw(c[o>>2]|0,c[p>>2]|0,c[l>>2]|0)|0;if((c[n>>2]|0)!=0){Uy(c[f>>2]|0,c[n>>2]|0,0);cc(c[o>>2]|0,c[p>>2]|0);i=k;return}c[h>>2]=tw(c[o>>2]|0,c[p>>2]|0,c[l>>2]|0)|0;cc(c[o>>2]|0,c[p>>2]|0);l=c[f>>2]|0;if((c[h>>2]|0)!=0){$v(l,0,c[g>>2]|0);Vy(c[f>>2]|0,c[h>>2]|0,-1);i=k;return}else{bf(l,25576,j);i=k;return}}function xv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+48|0;f=k+40|0;p=k+36|0;q=k+32|0;g=k+28|0;n=k+24|0;m=k+20|0;j=k+12|0;l=k+8|0;e=k+4|0;h=k;o=k+16|0;c[f>>2]=a;c[p>>2]=b;c[q>>2]=d;c[g>>2]=c[c[f>>2]>>2];if(0!=(gy(c[f>>2]|0)|0)){i=k;return}if((c[p>>2]|0)==0){c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[g>>2]|0)+20>>2]|0)){break}if((c[m>>2]|0)!=1){hy(c[f>>2]|0,c[m>>2]|0)}c[m>>2]=(c[m>>2]|0)+1}i=k;return}if((c[(c[q>>2]|0)+4>>2]|0)!=0){c[n>>2]=ky(c[f>>2]|0,c[p>>2]|0,c[q>>2]|0,o)|0;if((c[n>>2]|0)<0){i=k;return}c[l>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[n>>2]<<4)>>2];c[j>>2]=Iv(c[g>>2]|0,c[o>>2]|0)|0;if((c[j>>2]|0)==0){i=k;return}a=tw(c[g>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;c[h>>2]=a;m=c[f>>2]|0;if((a|0)!=0){jy(m,c[(c[h>>2]|0)+12>>2]|0,c[h>>2]|0)}else{a=af(m,0,c[j>>2]|0,c[l>>2]|0)|0;c[e>>2]=a;if((a|0)!=0){jy(c[f>>2]|0,c[e>>2]|0,0)}}cc(c[g>>2]|0,c[j>>2]|0);i=k;return}c[n>>2]=iy(c[g>>2]|0,c[p>>2]|0)|0;if((c[n>>2]|0)>=0){hy(c[f>>2]|0,c[n>>2]|0);i=k;return}c[j>>2]=Iv(c[g>>2]|0,c[p>>2]|0)|0;if((c[j>>2]|0)==0){i=k;return}a=tw(c[g>>2]|0,c[j>>2]|0,0)|0;c[h>>2]=a;l=c[f>>2]|0;if((a|0)!=0){jy(l,c[(c[h>>2]|0)+12>>2]|0,c[h>>2]|0)}else{a=af(l,0,c[j>>2]|0,0)|0;c[e>>2]=a;if((a|0)!=0){jy(c[f>>2]|0,c[e>>2]|0,0)}}cc(c[g>>2]|0,c[j>>2]|0);i=k;return}function yv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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=i;i=i+112|0;m=k;n=k+96|0;p=k+92|0;y=k+88|0;g=k+84|0;f=k+80|0;l=k+76|0;h=k+72|0;q=k+68|0;r=k+100|0;s=k+56|0;v=k+52|0;o=k+48|0;w=k+44|0;j=k+40|0;u=k+36|0;t=k+60|0;x=k+64|0;c[n>>2]=b;c[p>>2]=d;c[y>>2]=e;c[h>>2]=0;c[q>>2]=c[c[n>>2]>>2];c[o>>2]=0;c[w>>2]=0;c[j>>2]=c[(c[q>>2]|0)+24>>2];do{if((a[(c[q>>2]|0)+64>>0]|0)==0){c[l>>2]=Zv(c[n>>2]|0,0,(c[p>>2]|0)+8|0)|0;if((c[l>>2]|0)!=0){c[g>>2]=ef(c[c[n>>2]>>2]|0,c[(c[l>>2]|0)+68>>2]|0)|0;c[f>>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+(c[g>>2]<<4)>>2];b=(c[q>>2]|0)+24|0;c[b>>2]=c[b>>2]|2097152;c[h>>2]=Iv(c[q>>2]|0,c[y>>2]|0)|0;if((c[h>>2]|0)!=0){if((cw(c[q>>2]|0,c[h>>2]|0,c[f>>2]|0)|0)==0){if((tw(c[q>>2]|0,c[h>>2]|0,c[f>>2]|0)|0)==0){if(0!=(_v(c[n>>2]|0,c[c[l>>2]>>2]|0)|0)){break}if(0!=(uw(c[n>>2]|0,c[h>>2]|0)|0)){break}e=c[n>>2]|0;if((c[(c[l>>2]|0)+12>>2]|0)!=0){c[m>>2]=c[c[l>>2]>>2];bf(e,22192,m);break}if((Lv(e,26,c[f>>2]|0,c[c[l>>2]>>2]|0,0)|0)!=0){break}if((vw(c[n>>2]|0,c[l>>2]|0)|0)!=0){break}if((a[(c[l>>2]|0)+44>>0]&16|0)!=0){c[w>>2]=ww(c[q>>2]|0,c[l>>2]|0)|0;if((c[(c[c[(c[w>>2]|0)+8>>2]>>2]|0)+76>>2]|0)==0){c[w>>2]=0}}c[v>>2]=Ov(c[n>>2]|0)|0;if((c[v>>2]|0)==0){break}$v(c[n>>2]|0,(c[w>>2]|0)!=0&1,c[g>>2]|0);Pv(c[n>>2]|0,c[g>>2]|0);if((c[w>>2]|0)!=0){d=(c[n>>2]|0)+72|0;b=(c[d>>2]|0)+1|0;c[d>>2]=b;c[u>>2]=b;Sv(c[v>>2]|0,97,0,c[u>>2]|0,0,c[h>>2]|0,0)|0;Sv(c[v>>2]|0,152,c[u>>2]|0,0,0,c[w>>2]|0,-10)|0;xw(c[n>>2]|0)}c[s>>2]=c[c[l>>2]>>2];c[r>>2]=Ht(c[s>>2]|0,-1)|0;if((c[(c[q>>2]|0)+24>>2]&524288|0)!=0){b=yw(c[n>>2]|0,c[l>>2]|0)|0;c[o>>2]=b;if((b|0)!=0){b=c[n>>2]|0;w=(c[g>>2]|0)==1?21432:21456;e=c[s>>2]|0;y=c[h>>2]|0;d=c[o>>2]|0;c[m>>2]=c[f>>2];c[m+4>>2]=w;c[m+8>>2]=e;c[m+12>>2]=y;c[m+16>>2]=d;Nv(b,22224,m);cc(c[q>>2]|0,c[o>>2]|0)}}b=c[n>>2]|0;z=(c[g>>2]|0)==1?21432:21456;g=c[h>>2]|0;u=c[h>>2]|0;v=c[h>>2]|0;w=c[h>>2]|0;e=c[h>>2]|0;y=c[r>>2]|0;d=c[s>>2]|0;c[m>>2]=c[f>>2];c[m+4>>2]=z;c[m+8>>2]=g;c[m+12>>2]=u;c[m+16>>2]=v;c[m+20>>2]=w;c[m+24>>2]=e;c[m+28>>2]=y;c[m+32>>2]=d;Nv(b,22296,m);if((cw(c[q>>2]|0,22680,c[f>>2]|0)|0)!=0){z=c[n>>2]|0;d=c[h>>2]|0;b=c[c[l>>2]>>2]|0;c[m>>2]=c[f>>2];c[m+4>>2]=d;c[m+8>>2]=b;Nv(z,22696,m)}z=hw(c[n>>2]|0,c[l>>2]|0)|0;c[o>>2]=z;if((z|0)!=0){z=c[n>>2]|0;d=c[h>>2]|0;b=c[o>>2]|0;c[m>>2]=c[h>>2];c[m+4>>2]=d;c[m+8>>2]=b;Nv(z,22760,m);cc(c[q>>2]|0,c[o>>2]|0)}a:do{if((c[(c[q>>2]|0)+24>>2]&524288|0)!=0){c[t>>2]=zw(c[l>>2]|0)|0;while(1){if((c[t>>2]|0)==0){break a}c[x>>2]=c[c[t>>2]>>2];if((c[x>>2]|0)!=(c[l>>2]|0)){fw(c[n>>2]|0,c[c[t>>2]>>2]|0,c[c[x>>2]>>2]|0)}c[t>>2]=c[(c[t>>2]|0)+12>>2]}}}while(0);fw(c[n>>2]|0,c[l>>2]|0,c[h>>2]|0);break}}z=c[n>>2]|0;c[m>>2]=c[h>>2];bf(z,22128,m)}}}}while(0);fu(c[q>>2]|0,c[p>>2]|0);cc(c[q>>2]|0,c[h>>2]|0);c[(c[q>>2]|0)+24>>2]=c[j>>2];i=k;return}function zv(e,f){e=e|0;f=f|0;var g=0,h=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;p=i;i=i+80|0;j=p;h=p+72|0;g=p+68|0;o=p+64|0;w=p+60|0;t=p+56|0;u=p+52|0;v=p+76|0;q=p+40|0;n=p+36|0;k=p+32|0;m=p+28|0;l=p+24|0;r=p+44|0;s=p+48|0;c[h>>2]=e;c[g>>2]=f;c[m>>2]=c[c[h>>2]>>2];if((c[(c[h>>2]|0)+64>>2]|0)!=0){i=p;return}if((d[(c[m>>2]|0)+64>>0]|0)!=0){i=p;return}c[o>>2]=c[(c[h>>2]|0)+484>>2];c[t>>2]=ef(c[m>>2]|0,c[(c[o>>2]|0)+68>>2]|0)|0;c[u>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[t>>2]<<4)>>2];c[v>>2]=(c[c[o>>2]>>2]|0)+16;c[n>>2]=(c[(c[o>>2]|0)+4>>2]|0)+(((b[(c[o>>2]|0)+38>>1]|0)-1|0)*24|0);c[k>>2]=c[(c[n>>2]|0)+4>>2];c[w>>2]=cw(c[m>>2]|0,c[v>>2]|0,c[u>>2]|0)|0;if((Lv(c[h>>2]|0,26,c[u>>2]|0,c[c[w>>2]>>2]|0,0)|0)!=0){i=p;return}if((c[k>>2]|0)!=0){if((d[c[k>>2]>>0]|0)==101){c[k>>2]=0}}if((a[(c[n>>2]|0)+23>>0]&1|0)!=0){bf(c[h>>2]|0,21712,j);i=p;return}if((c[(c[o>>2]|0)+8>>2]|0)!=0){bf(c[h>>2]|0,21744,j);i=p;return}if((c[(c[m>>2]|0)+24>>2]&524288|0)!=0){if((c[(c[o>>2]|0)+16>>2]|0)!=0){if((c[k>>2]|0)!=0){bf(c[h>>2]|0,21776,j);i=p;return}}}if((d[(c[n>>2]|0)+20>>0]|0)!=0){if((c[k>>2]|0)==0){bf(c[h>>2]|0,21840,j);i=p;return}}do{if((c[k>>2]|0)!=0){c[l>>2]=0;if((dw(c[m>>2]|0,c[k>>2]|0,1,98,l)|0)!=0){a[(c[m>>2]|0)+64>>0]=1;i=p;return}if((c[l>>2]|0)!=0){Rf(c[l>>2]|0);break}bf(c[h>>2]|0,21896,j);i=p;return}}while(0);c[q>>2]=ft(c[m>>2]|0,c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+4>>2]|0)|0;if((c[q>>2]|0)!=0){c[r>>2]=(c[q>>2]|0)+((c[(c[g>>2]|0)+4>>2]|0)-1);c[s>>2]=c[(c[m>>2]|0)+24>>2];while(1){if(!((c[r>>2]|0)>>>0>(c[q>>2]|0)>>>0)){break}if((a[c[r>>2]>>0]|0)!=59){if((a[136+(d[c[r>>2]>>0]|0)>>0]&1|0)==0){break}}e=c[r>>2]|0;c[r>>2]=e+ -1;a[e>>0]=0}e=(c[m>>2]|0)+24|0;c[e>>2]=c[e>>2]|2097152;e=c[h>>2]|0;f=(c[t>>2]|0)==1?21432:21456;l=c[(c[o>>2]|0)+48>>2]|0;n=c[q>>2]|0;r=(c[(c[o>>2]|0)+48>>2]|0)+1|0;v=c[v>>2]|0;c[j>>2]=c[u>>2];c[j+4>>2]=f;c[j+8>>2]=l;c[j+12>>2]=n;c[j+16>>2]=r;c[j+20>>2]=v;Nv(e,21944,j);cc(c[m>>2]|0,c[q>>2]|0);c[(c[m>>2]|0)+24>>2]=c[s>>2]}ew(c[h>>2]|0,c[t>>2]|0,(c[k>>2]|0)!=0?3:2);fw(c[h>>2]|0,c[w>>2]|0,c[c[w>>2]>>2]|0);i=p;return}function Av(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+48|0;k=f;j=f+36|0;m=f+32|0;g=f+28|0;n=f+24|0;o=f+40|0;l=f+12|0;p=f+8|0;r=f+4|0;h=f+16|0;q=f+20|0;c[j>>2]=d;c[m>>2]=e;c[h>>2]=c[c[j>>2]>>2];if((a[(c[h>>2]|0)+64>>0]|0)!=0){e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}c[n>>2]=Zv(c[j>>2]|0,0,(c[m>>2]|0)+8|0)|0;if((c[n>>2]|0)==0){e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}if((a[(c[n>>2]|0)+44>>0]&16|0)!=0){bf(c[j>>2]|0,21504,k);e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}e=c[j>>2]|0;if((c[(c[n>>2]|0)+12>>2]|0)!=0){bf(e,21544,k);e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}if(0!=(_v(e,c[c[n>>2]>>2]|0)|0)){e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}c[l>>2]=ef(c[h>>2]|0,c[(c[n>>2]|0)+68>>2]|0)|0;c[g>>2]=ve(c[h>>2]|0,76)|0;if((c[g>>2]|0)==0){e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}c[(c[j>>2]|0)+484>>2]=c[g>>2];b[(c[g>>2]|0)+40>>1]=1;b[(c[g>>2]|0)+38>>1]=b[(c[n>>2]|0)+38>>1]|0;c[r>>2]=((((b[(c[g>>2]|0)+38>>1]|0)-1|0)/8|0)<<3)+8;d=ve(c[h>>2]|0,(c[r>>2]|0)*24|0)|0;c[(c[g>>2]|0)+4>>2]=d;d=c[h>>2]|0;c[k>>2]=c[c[n>>2]>>2];d=cf(d,21576,k)|0;c[c[g>>2]>>2]=d;if((c[(c[g>>2]|0)+4>>2]|0)!=0){if((c[c[g>>2]>>2]|0)!=0){fL(c[(c[g>>2]|0)+4>>2]|0,c[(c[n>>2]|0)+4>>2]|0,(b[(c[g>>2]|0)+38>>1]|0)*24|0)|0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(b[(c[g>>2]|0)+38>>1]|0)){break}c[q>>2]=(c[(c[g>>2]|0)+4>>2]|0)+((c[p>>2]|0)*24|0);d=pe(c[h>>2]|0,c[c[q>>2]>>2]|0)|0;c[c[q>>2]>>2]=d;c[(c[q>>2]|0)+16>>2]=0;c[(c[q>>2]|0)+12>>2]=0;c[(c[q>>2]|0)+4>>2]=0;c[(c[q>>2]|0)+8>>2]=0;c[p>>2]=(c[p>>2]|0)+1}c[(c[g>>2]|0)+68>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+(c[l>>2]<<4)+12>>2];c[(c[g>>2]|0)+48>>2]=c[(c[n>>2]|0)+48>>2];b[(c[g>>2]|0)+40>>1]=1;$v(c[j>>2]|0,0,c[l>>2]|0);c[o>>2]=Ov(c[j>>2]|0)|0;if((c[o>>2]|0)==0){e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}Pv(c[j>>2]|0,c[l>>2]|0);e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}}a[(c[h>>2]|0)+64>>0]=1;e=c[h>>2]|0;d=c[m>>2]|0;fu(e,d);i=f;return}function Bv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;m=i;i=i+80|0;h=m;g=m+64|0;o=m+60|0;k=m+56|0;f=m+52|0;j=m+48|0;n=m+68|0;l=m+36|0;e=m+32|0;s=m+28|0;p=m+24|0;q=m+40|0;r=m+44|0;c[g>>2]=b;c[o>>2]=d;c[k>>2]=c[(c[g>>2]|0)+484>>2];c[f>>2]=c[c[g>>2]>>2];if((c[k>>2]|0)==0){i=m;return}Jv(c[g>>2]|0);c[(c[g>>2]|0)+512>>2]=0;if((c[(c[k>>2]|0)+52>>2]|0)<1){i=m;return}if((a[(c[f>>2]|0)+137>>0]|0)==0){if((c[o>>2]|0)!=0){c[(c[g>>2]|0)+500>>2]=(c[c[o>>2]>>2]|0)-(c[(c[g>>2]|0)+496>>2]|0)+(c[(c[o>>2]|0)+4>>2]|0)}r=c[f>>2]|0;c[h>>2]=(c[g>>2]|0)+496;c[j>>2]=cf(r,21320,h)|0;c[l>>2]=ef(c[f>>2]|0,c[(c[k>>2]|0)+68>>2]|0)|0;r=c[g>>2]|0;o=(c[l>>2]|0)==1?21432:21456;p=c[c[k>>2]>>2]|0;q=c[c[k>>2]>>2]|0;b=c[j>>2]|0;s=c[(c[g>>2]|0)+384>>2]|0;c[h>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(c[l>>2]<<4)>>2];c[h+4>>2]=o;c[h+8>>2]=p;c[h+12>>2]=q;c[h+16>>2]=b;c[h+20>>2]=s;Nv(r,21344,h);cc(c[f>>2]|0,c[j>>2]|0);c[e>>2]=Ov(c[g>>2]|0)|0;Pv(c[g>>2]|0,c[l>>2]|0);Qv(c[e>>2]|0,139,0,0)|0;r=c[f>>2]|0;c[h>>2]=c[c[k>>2]>>2];c[n>>2]=cf(r,21472,h)|0;Rv(c[e>>2]|0,c[l>>2]|0,c[n>>2]|0);r=c[e>>2]|0;s=c[l>>2]|0;b=c[c[k>>2]>>2]|0;Sv(r,142,s,0,0,b,(Ub(c[c[k>>2]>>2]|0)|0)+1|0)|0;i=m;return}c[p>>2]=c[(c[k>>2]|0)+68>>2];c[q>>2]=c[c[k>>2]>>2];c[r>>2]=Ub(c[q>>2]|0)|0;c[s>>2]=Eh((c[p>>2]|0)+8|0,c[q>>2]|0,c[r>>2]|0,c[k>>2]|0)|0;if((c[s>>2]|0)!=0){a[(c[f>>2]|0)+64>>0]=1;i=m;return}else{c[(c[g>>2]|0)+484>>2]=0;i=m;return}}function Cv(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=i;i=i+32|0;k=o+28|0;p=o;r=o+4|0;j=o+8|0;q=o+12|0;m=o+16|0;l=o+20|0;n=o+24|0;c[k>>2]=b;c[p>>2]=e;c[r>>2]=f;c[j>>2]=g;c[q>>2]=h;wu(c[k>>2]|0,c[p>>2]|0,c[r>>2]|0,0,0,1,c[q>>2]|0);c[l>>2]=c[(c[k>>2]|0)+484>>2];if((c[l>>2]|0)==0){i=o;return}c[n>>2]=c[c[k>>2]>>2];c[m>>2]=ef(c[n>>2]|0,c[(c[l>>2]|0)+68>>2]|0)|0;r=(c[l>>2]|0)+44|0;a[r>>0]=d[r>>0]|0|16;c[(c[l>>2]|0)+52>>2]=0;r=c[n>>2]|0;q=c[l>>2]|0;Kv(r,q,Iv(c[n>>2]|0,c[j>>2]|0)|0);Kv(c[n>>2]|0,c[l>>2]|0,0);q=c[n>>2]|0;r=c[l>>2]|0;Kv(q,r,pe(c[n>>2]|0,c[c[l>>2]>>2]|0)|0);c[(c[k>>2]|0)+500>>2]=(c[c[j>>2]>>2]|0)+(c[(c[j>>2]|0)+4>>2]|0)-(c[c[p>>2]>>2]|0);if((c[(c[l>>2]|0)+56>>2]|0)==0){i=o;return}Lv(c[k>>2]|0,29,c[c[l>>2]>>2]|0,c[c[(c[l>>2]|0)+56>>2]>>2]|0,c[(c[(c[c[k>>2]>>2]|0)+16>>2]|0)+(c[m>>2]<<4)>>2]|0)|0;i=o;return}function Dv(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Jv(c[d>>2]|0);c[(c[d>>2]|0)+512>>2]=0;c[(c[d>>2]|0)+516>>2]=0;i=b;return}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;c[e>>2]=(c[g>>2]|0)+512;b=c[f>>2]|0;if((c[c[e>>2]>>2]|0)==0){c[c[e>>2]>>2]=c[b>>2];c[(c[e>>2]|0)+4>>2]=c[(c[f>>2]|0)+4>>2];i=d;return}else{c[(c[e>>2]|0)+4>>2]=(c[c[f>>2]>>2]|0)+(c[b+4>>2]|0)-(c[c[e>>2]>>2]|0);i=d;return}}function Fv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+48|0;q=n;p=n+36|0;l=n+32|0;s=n+28|0;h=n+24|0;j=n+40|0;o=n+12|0;m=n+8|0;k=n+4|0;r=n+16|0;g=n+20|0;c[p>>2]=a;c[l>>2]=b;c[s>>2]=d;c[h>>2]=e;c[j>>2]=f;c[o>>2]=c[c[p>>2]>>2];c[k>>2]=Iv(c[c[p>>2]>>2]|0,c[s>>2]|0)|0;a:do{if((c[k>>2]|0)!=0){if((c[l>>2]|0)!=0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[c[l>>2]>>2]|0)){break a}if((Dc(c[k>>2]|0,c[(c[l>>2]|0)+8+(c[r>>2]<<4)>>2]|0)|0)==0){s=c[p>>2]|0;c[q>>2]=c[k>>2];bf(s,21248,q)}c[r>>2]=(c[r>>2]|0)+1}}}}while(0);if((c[l>>2]|0)!=0){c[g>>2]=24+(c[c[l>>2]>>2]<<4);c[m>>2]=Ot(c[o>>2]|0,c[l>>2]|0,c[g>>2]|0)|0}else{c[m>>2]=ve(c[o>>2]|0,24)|0}if((c[m>>2]|0)==0){cu(c[o>>2]|0,c[h>>2]|0);du(c[o>>2]|0,c[j>>2]|0);cc(c[o>>2]|0,c[k>>2]|0);c[m>>2]=c[l>>2];s=c[m>>2]|0;i=n;return s|0}else{c[(c[m>>2]|0)+8+(c[c[m>>2]>>2]<<4)+8>>2]=c[j>>2];c[(c[m>>2]|0)+8+(c[c[m>>2]>>2]<<4)+4>>2]=c[h>>2];c[(c[m>>2]|0)+8+(c[c[m>>2]>>2]<<4)>>2]=c[k>>2];c[(c[m>>2]|0)+8+(c[c[m>>2]>>2]<<4)+12>>2]=0;s=c[m>>2]|0;c[s>>2]=(c[s>>2]|0)+1;s=c[m>>2]|0;i=n;return s|0}return 0}function Gv(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;j=i;i=i+16|0;l=j+4|0;k=j+8|0;h=j;c[l>>2]=f;a[k>>0]=g;c[h>>2]=b[17632+(c[l>>2]<<1)>>1]|0;c[h>>2]=(c[h>>2]|0)+(d[k>>0]|0);i=j;return e[18248+(c[h>>2]<<1)>>1]|0}function Hv(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;d=e+4|0;b=e;c[d>>2]=a;c[b>>2]=c[(c[d>>2]|0)+8>>2];while(1){if((c[c[d>>2]>>2]|0)<0){break}ju(c[d>>2]|0)|0}c[(c[d>>2]|0)+8>>2]=c[b>>2];i=e;return}function Iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=b;if((c[f>>2]|0)!=0){c[e>>2]=ft(c[g>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;gt(c[e>>2]|0)|0;a=c[e>>2]|0;i=d;return a|0}else{c[e>>2]=0;a=c[e>>2]|0;i=d;return a|0}return 0}function Jv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b;f=b+4|0;g=b+8|0;c[d>>2]=a;if((c[(c[d>>2]|0)+512>>2]|0)==0){i=b;return}if((c[(c[d>>2]|0)+484>>2]|0)==0){i=b;return}c[e>>2]=c[(c[d>>2]|0)+512>>2];c[f>>2]=c[(c[d>>2]|0)+516>>2];c[g>>2]=c[c[d>>2]>>2];a=c[g>>2]|0;d=c[(c[d>>2]|0)+484>>2]|0;Kv(a,d,ft(c[g>>2]|0,c[e>>2]|0,c[f>>2]|0)|0);i=b;return}function Kv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+32|0;k=j+24|0;f=j;e=j+4|0;h=j+8|0;m=j+12|0;g=j+16|0;l=j+20|0;c[k>>2]=a;c[f>>2]=b;c[e>>2]=d;b=(c[f>>2]|0)+52|0;a=c[b>>2]|0;c[b>>2]=a+1;c[h>>2]=a;c[m>>2]=1+(c[(c[f>>2]|0)+52>>2]|0)<<2;c[g>>2]=Ot(c[k>>2]|0,c[(c[f>>2]|0)+56>>2]|0,c[m>>2]|0)|0;if((c[g>>2]|0)!=0){c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]=c[e>>2];c[(c[g>>2]|0)+((c[h>>2]|0)+1<<2)>>2]=0;a=c[g>>2]|0;m=c[f>>2]|0;m=m+56|0;c[m>>2]=a;i=j;return}c[l>>2]=0;while(1){d=c[k>>2]|0;if((c[l>>2]|0)>=(c[h>>2]|0)){break}cc(d,c[(c[(c[f>>2]|0)+56>>2]|0)+(c[l>>2]<<2)>>2]|0);c[l>>2]=(c[l>>2]|0)+1}cc(d,c[e>>2]|0);cc(c[k>>2]|0,c[(c[f>>2]|0)+56>>2]|0);c[(c[f>>2]|0)+52>>2]=0;a=c[g>>2]|0;m=c[f>>2]|0;m=m+56|0;c[m>>2]=a;i=j;return}function Lv(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+48|0;l=j;o=j+28|0;k=j+24|0;h=j+20|0;p=j+32|0;q=j+8|0;r=j+4|0;n=j+12|0;m=j+16|0;c[k>>2]=a;c[h>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[n>>2]=c[c[k>>2]>>2];if((d[(c[n>>2]|0)+137>>0]|0|0)==0){if((d[(c[k>>2]|0)+451>>0]|0|0)==0){if((c[(c[n>>2]|0)+276>>2]|0)==0){c[o>>2]=0;a=c[o>>2]|0;i=j;return a|0}c[m>>2]=tb[c[(c[n>>2]|0)+276>>2]&15](c[(c[n>>2]|0)+280>>2]|0,c[h>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[(c[k>>2]|0)+492>>2]|0)|0;if((c[m>>2]|0)==1){bf(c[k>>2]|0,21280,l);c[(c[k>>2]|0)+12>>2]=23}else{if((c[m>>2]|0)!=0&(c[m>>2]|0)!=2){c[m>>2]=1;Mv(c[k>>2]|0)}}c[o>>2]=c[m>>2];a=c[o>>2]|0;i=j;return a|0}}c[o>>2]=0;a=c[o>>2]|0;i=j;return a|0}function Mv(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b+4|0;c[d>>2]=a;bf(c[d>>2]|0,21296,b);c[(c[d>>2]|0)+12>>2]=1;i=b;return}function Nv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+144|0;f=l+36|0;n=l;m=l+8|0;g=l+24|0;h=l+28|0;j=l+32|0;k=l+40|0;c[f>>2]=b;c[n>>2]=d;c[h>>2]=0;c[j>>2]=c[c[f>>2]>>2];if((c[(c[f>>2]|0)+64>>2]|0)!=0){i=l;return}c[m>>2]=e;c[g>>2]=iu(c[j>>2]|0,c[n>>2]|0,m)|0;if((c[g>>2]|0)==0){i=l;return}n=(c[f>>2]|0)+18|0;a[n>>0]=(a[n>>0]|0)+1<<24>>24;n=k+0|0;e=(c[f>>2]|0)+440|0;m=n+96|0;do{a[n>>0]=a[e>>0]|0;n=n+1|0;e=e+1|0}while((n|0)<(m|0));n=(c[f>>2]|0)+440|0;m=n+96|0;do{c[n>>2]=0;n=n+4|0}while((n|0)<(m|0));Mf(c[f>>2]|0,c[g>>2]|0,h)|0;cc(c[j>>2]|0,c[h>>2]|0);cc(c[j>>2]|0,c[g>>2]|0);n=(c[f>>2]|0)+440|0;e=k+0|0;m=n+96|0;do{a[n>>0]=a[e>>0]|0;n=n+1|0;e=e+1|0}while((n|0)<(m|0));b=(c[f>>2]|0)+18|0;a[b>>0]=(a[b>>0]|0)+ -1<<24>>24;i=l;return}function Ov(d){d=d|0;var e=0,f=0,g=0;f=i;i=i+16|0;e=f+4|0;g=f;c[e>>2]=d;c[g>>2]=c[(c[e>>2]|0)+8>>2];if((c[g>>2]|0)==0){d=df(c[e>>2]|0)|0;c[(c[e>>2]|0)+8>>2]=d;c[g>>2]=d;if((c[g>>2]|0)!=0){Yv(c[g>>2]|0,155)|0}if((c[(c[e>>2]|0)+408>>2]|0)==0){if((b[(c[c[e>>2]>>2]|0)+60>>1]&8|0)==0){a[(c[e>>2]|0)+23>>0]=1}}}i=f;return c[g>>2]|0}function Pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;f=d+16|0;g=d;e=d+4|0;j=d+8|0;h=d+12|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=Wv(c[f>>2]|0)|0;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[f>>2]|0)+8>>2];Qv(c[h>>2]|0,25,(c[c[(c[(c[j>>2]|0)+16>>2]|0)+(c[g>>2]<<4)+12>>2]>>2]|0)+1|0,c[e>>2]|0)|0;Tv(c[h>>2]|0,51,c[g>>2]|0,1,c[e>>2]|0)|0;Xv(c[f>>2]|0,c[e>>2]|0);i=d;return}function Qv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=Tv(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0,0)|0;i=f;return a|0}function Rv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;g=e+16|0;k=e;h=e+4|0;f=e+8|0;j=e+12|0;c[g>>2]=a;c[k>>2]=b;c[h>>2]=d;c[j>>2]=Tv(c[g>>2]|0,119,c[k>>2]|0,0,0)|0;nf(c[g>>2]|0,c[j>>2]|0,c[h>>2]|0,-1);c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[c[g>>2]>>2]|0)+20>>2]|0)){break}jf(c[g>>2]|0,c[f>>2]|0);c[f>>2]=(c[f>>2]|0)+1}i=e;return}function Sv(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+32|0;n=k+28|0;r=k;q=k+4|0;p=k+8|0;o=k+12|0;m=k+16|0;l=k+20|0;j=k+24|0;c[n>>2]=a;c[r>>2]=b;c[q>>2]=d;c[p>>2]=e;c[o>>2]=f;c[m>>2]=g;c[l>>2]=h;c[j>>2]=Tv(c[n>>2]|0,c[r>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0)|0;nf(c[n>>2]|0,c[j>>2]|0,c[m>>2]|0,c[l>>2]|0);i=k;return c[j>>2]|0}function Tv(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+32|0;j=o+28|0;k=o;n=o+4|0;h=o+8|0;p=o+12|0;q=o+16|0;l=o+20|0;m=o+24|0;c[k>>2]=b;c[n>>2]=d;c[h>>2]=e;c[p>>2]=f;c[q>>2]=g;c[l>>2]=c[(c[k>>2]|0)+32>>2];if((c[(c[(c[k>>2]|0)+24>>2]|0)+84>>2]|0)<=(c[l>>2]|0)){if((Uv(c[k>>2]|0)|0)!=0){c[j>>2]=1;b=c[j>>2]|0;i=o;return b|0}}b=(c[k>>2]|0)+32|0;c[b>>2]=(c[b>>2]|0)+1;c[m>>2]=(c[(c[k>>2]|0)+4>>2]|0)+((c[l>>2]|0)*20|0);a[c[m>>2]>>0]=c[n>>2];a[(c[m>>2]|0)+3>>0]=0;c[(c[m>>2]|0)+4>>2]=c[h>>2];c[(c[m>>2]|0)+8>>2]=c[p>>2];c[(c[m>>2]|0)+12>>2]=c[q>>2];c[(c[m>>2]|0)+16>>2]=0;a[(c[m>>2]|0)+1>>0]=0;c[j>>2]=c[l>>2];b=c[j>>2]|0;i=o;return b|0}function Uv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=i;i=i+16|0;f=d+12|0;b=d;e=d+4|0;g=d+8|0;c[f>>2]=a;c[e>>2]=c[(c[f>>2]|0)+24>>2];if((c[(c[e>>2]|0)+84>>2]|0)!=0){a=c[(c[e>>2]|0)+84>>2]<<1}else{a=51}c[g>>2]=a;c[b>>2]=Ot(c[c[e>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0,(c[g>>2]|0)*20|0)|0;if((c[b>>2]|0)==0){a=c[b>>2]|0;a=(a|0)!=0;a=a?0:7;i=d;return a|0}a=((Vv(c[c[e>>2]>>2]|0,c[b>>2]|0)|0)>>>0)/20|0;c[(c[e>>2]|0)+84>>2]=a;c[(c[f>>2]|0)+4>>2]=c[b>>2];a=c[b>>2]|0;a=(a|0)!=0;a=a?0:7;i=d;return a|0}function Vv(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+8|0;g=d;h=d+4|0;c[g>>2]=a;c[h>>2]=b;if((Pt(c[g>>2]|0,c[h>>2]|0)|0)!=0){c[f>>2]=e[(c[g>>2]|0)+240>>1]|0;a=c[f>>2]|0;i=d;return a|0}else{c[f>>2]=ub[c[45184>>2]&63](c[h>>2]|0)|0;a=c[f>>2]|0;i=d;return a|0}return 0}function Wv(b){b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+4|0;g=e;c[g>>2]=b;b=c[g>>2]|0;if((d[(c[g>>2]|0)+19>>0]|0|0)==0){g=b+72|0;b=(c[g>>2]|0)+1|0;c[g>>2]=b;c[f>>2]=b;b=c[f>>2]|0;i=e;return b|0}else{h=b+19|0;b=(a[h>>0]|0)+ -1<<24>>24;a[h>>0]=b;c[f>>2]=c[(c[g>>2]|0)+24+((b&255)<<2)>>2];b=c[f>>2]|0;i=e;return b|0}return 0}function Xv(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;j=f+12|0;h=f;k=f+4|0;g=f+8|0;c[j>>2]=b;c[h>>2]=e;if((c[h>>2]|0)==0){i=f;return}if((d[(c[j>>2]|0)+19>>0]|0|0)>=8){i=f;return}c[k>>2]=0;c[g>>2]=(c[j>>2]|0)+116;while(1){if((c[k>>2]|0)>=10){e=8;break}if((c[(c[g>>2]|0)+12>>2]|0)==(c[h>>2]|0)){e=6;break}c[k>>2]=(c[k>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+20}if((e|0)==6){a[(c[g>>2]|0)+6>>0]=1;i=f;return}else if((e|0)==8){k=c[h>>2]|0;e=(c[j>>2]|0)+19|0;b=a[e>>0]|0;a[e>>0]=b+1<<24>>24;c[(c[j>>2]|0)+24+((b&255)<<2)>>2]=k;i=f;return}}function Yv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=Tv(c[f>>2]|0,c[e>>2]|0,0,0,0)|0;i=d;return a|0} + + + +function RD(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;A=i;i=i+128|0;w=A+108|0;H=A+104|0;G=A+100|0;x=A+96|0;v=A+92|0;z=A+88|0;P=A+84|0;y=A+80|0;q=A+76|0;t=A+72|0;u=A+68|0;B=A+64|0;o=A+60|0;D=A+56|0;s=A+52|0;p=A+20|0;n=A;l=A+4|0;O=A+8|0;I=A+12|0;J=A+16|0;K=A+24|0;L=A+28|0;M=A+32|0;F=A+36|0;E=A+40|0;C=A+44|0;m=A+112|0;r=A+48|0;c[H>>2]=f;c[G>>2]=g;c[x>>2]=h;c[v>>2]=j;c[z>>2]=k;c[P>>2]=c[(c[H>>2]|0)+492>>2];c[l>>2]=c[c[H>>2]>>2];if((b[(c[l>>2]|0)+60>>1]&1|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}c[u>>2]=c[(c[G>>2]|0)+32>>2];c[n>>2]=(c[u>>2]|0)+8+((c[x>>2]|0)*72|0);c[D>>2]=c[(c[n>>2]|0)+40>>2];c[q>>2]=c[(c[n>>2]|0)+20>>2];if((c[v>>2]|0)!=0){if((c[z>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((c[z>>2]|0)!=0){if((c[c[u>>2]>>2]|0)>1){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}c[B>>2]=c[(c[q>>2]|0)+32>>2];if((c[(c[q>>2]|0)+60>>2]|0)!=0){if((c[(c[G>>2]|0)+60>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((c[(c[q>>2]|0)+64>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}if((b[(c[G>>2]|0)+6>>1]&4096|0)!=0){if((c[(c[q>>2]|0)+60>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((c[c[B>>2]>>2]|0)==0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}if((b[(c[q>>2]|0)+6>>1]&1|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}do{if((c[(c[q>>2]|0)+60>>2]|0)!=0){if((c[c[u>>2]>>2]|0)<=1){if((c[v>>2]|0)==0){break}}c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}while(0);if((b[(c[G>>2]|0)+6>>1]&1|0)!=0){if((c[z>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((c[(c[G>>2]|0)+48>>2]|0)!=0){if((c[(c[q>>2]|0)+48>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((c[v>>2]|0)!=0){if((c[(c[q>>2]|0)+48>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((c[(c[q>>2]|0)+60>>2]|0)!=0){if((c[(c[G>>2]|0)+36>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((c[(c[q>>2]|0)+60>>2]|0)!=0){if((b[(c[G>>2]|0)+6>>1]&1|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((b[(c[q>>2]|0)+6>>1]&2048|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}if((b[(c[G>>2]|0)+6>>1]&2048|0)!=0){if((c[(c[q>>2]|0)+52>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}if((a[(c[n>>2]|0)+36>>0]&32|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}a:do{if((c[(c[q>>2]|0)+52>>2]|0)!=0){if((c[(c[q>>2]|0)+48>>2]|0)!=0){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}do{if((c[v>>2]|0)==0){if((b[(c[G>>2]|0)+6>>1]&1|0)!=0){break}if((c[c[u>>2]>>2]|0)!=1){break}c[t>>2]=c[q>>2];while(1){if((c[t>>2]|0)==0){break}if((b[(c[t>>2]|0)+6>>1]&5|0)!=0){N=61;break}if((c[(c[t>>2]|0)+52>>2]|0)!=0){if((d[(c[t>>2]|0)+4>>0]|0)!=116){N=61;break}}if((c[c[(c[t>>2]|0)+32>>2]>>2]|0)<1){N=61;break}if((c[c[c[q>>2]>>2]>>2]|0)!=(c[c[c[t>>2]>>2]>>2]|0)){N=61;break}c[t>>2]=c[(c[t>>2]|0)+52>>2]}if((N|0)==61){c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}if((c[(c[G>>2]|0)+48>>2]|0)==0){break a}c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[c[(c[G>>2]|0)+48>>2]>>2]|0)){break a}if((e[(c[(c[(c[G>>2]|0)+48>>2]|0)+4>>2]|0)+((c[O>>2]|0)*20|0)+16>>1]|0)==0){break}c[O>>2]=(c[O>>2]|0)+1}c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}while(0);c[w>>2]=0;P=c[w>>2]|0;i=A;return P|0}}while(0);c[(c[H>>2]|0)+492>>2]=c[(c[n>>2]|0)+8>>2];Lv(c[H>>2]|0,21,0,0,0)|0;c[(c[H>>2]|0)+492>>2]=c[P>>2];c[q>>2]=c[(c[q>>2]|0)+52>>2];while(1){if((c[q>>2]|0)==0){break}c[J>>2]=c[(c[G>>2]|0)+48>>2];c[K>>2]=c[(c[G>>2]|0)+60>>2];c[L>>2]=c[(c[G>>2]|0)+64>>2];c[M>>2]=c[(c[G>>2]|0)+52>>2];c[(c[G>>2]|0)+48>>2]=0;c[(c[G>>2]|0)+32>>2]=0;c[(c[G>>2]|0)+52>>2]=0;c[(c[G>>2]|0)+60>>2]=0;c[(c[G>>2]|0)+64>>2]=0;c[I>>2]=Bw(c[l>>2]|0,c[G>>2]|0,0)|0;c[(c[G>>2]|0)+64>>2]=c[L>>2];c[(c[G>>2]|0)+60>>2]=c[K>>2];c[(c[G>>2]|0)+48>>2]=c[J>>2];c[(c[G>>2]|0)+32>>2]=c[u>>2];a[(c[G>>2]|0)+4>>0]=116;f=c[M>>2]|0;if((c[I>>2]|0)==0){c[(c[G>>2]|0)+52>>2]=f}else{c[(c[I>>2]|0)+52>>2]=f;if((c[M>>2]|0)!=0){c[(c[M>>2]|0)+56>>2]=c[I>>2]}c[(c[I>>2]|0)+56>>2]=c[G>>2];c[(c[G>>2]|0)+52>>2]=c[I>>2]}if((a[(c[l>>2]|0)+64>>0]|0)!=0){N=77;break}c[q>>2]=c[(c[q>>2]|0)+52>>2]}if((N|0)==77){c[w>>2]=1;P=c[w>>2]|0;i=A;return P|0}P=c[(c[n>>2]|0)+20>>2]|0;c[t>>2]=P;c[q>>2]=P;cc(c[l>>2]|0,c[(c[n>>2]|0)+4>>2]|0);cc(c[l>>2]|0,c[(c[n>>2]|0)+8>>2]|0);cc(c[l>>2]|0,c[(c[n>>2]|0)+12>>2]|0);c[(c[n>>2]|0)+4>>2]=0;c[(c[n>>2]|0)+8>>2]=0;c[(c[n>>2]|0)+12>>2]=0;c[(c[n>>2]|0)+20>>2]=0;if((c[(c[n>>2]|0)+16>>2]|0)!=0){c[F>>2]=c[(c[n>>2]|0)+16>>2];if((e[(c[F>>2]|0)+40>>1]|0)==1){I=c[H>>2]|0;if((c[(c[H>>2]|0)+408>>2]|0)!=0){I=c[I+408>>2]|0}c[E>>2]=I;c[(c[F>>2]|0)+72>>2]=c[(c[E>>2]|0)+524>>2];c[(c[E>>2]|0)+524>>2]=c[F>>2]}else{P=(c[F>>2]|0)+40|0;b[P>>1]=(b[P>>1]|0)+ -1<<16>>16}c[(c[n>>2]|0)+16>>2]=0}c[y>>2]=c[G>>2];while(1){if((c[y>>2]|0)==0){break}a[m>>0]=0;c[B>>2]=c[(c[q>>2]|0)+32>>2];c[C>>2]=c[c[B>>2]>>2];c[u>>2]=c[(c[y>>2]|0)+32>>2];if((c[u>>2]|0)!=0){a[m>>0]=a[(c[n>>2]|0)+36>>0]|0}else{P=Vu(c[l>>2]|0,0,0,0)|0;c[(c[y>>2]|0)+32>>2]=P;c[u>>2]=P;if((c[u>>2]|0)==0){break}}if((c[C>>2]|0)>1){P=OD(c[l>>2]|0,c[u>>2]|0,(c[C>>2]|0)-1|0,(c[x>>2]|0)+1|0)|0;c[u>>2]=P;c[(c[y>>2]|0)+32>>2]=P;if((a[(c[l>>2]|0)+64>>0]|0)!=0){break}}c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[C>>2]|0)){break}hu(c[l>>2]|0,c[(c[u>>2]|0)+8+(((c[s>>2]|0)+(c[x>>2]|0)|0)*72|0)+48>>2]|0);G=(c[u>>2]|0)+8+(((c[s>>2]|0)+(c[x>>2]|0)|0)*72|0)+0|0;F=(c[B>>2]|0)+8+((c[s>>2]|0)*72|0)+0|0;E=G+72|0;do{c[G>>2]=c[F>>2];G=G+4|0;F=F+4|0}while((G|0)<(E|0));G=(c[B>>2]|0)+8+((c[s>>2]|0)*72|0)+0|0;E=G+72|0;do{c[G>>2]=0;G=G+4|0}while((G|0)<(E|0));c[s>>2]=(c[s>>2]|0)+1}a[(c[u>>2]|0)+8+((c[x>>2]|0)*72|0)+36>>0]=a[m>>0]|0;c[o>>2]=c[c[y>>2]>>2];c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[c[o>>2]>>2]|0)){break}if((c[(c[(c[o>>2]|0)+4>>2]|0)+((c[s>>2]|0)*20|0)+4>>2]|0)==0){c[r>>2]=pe(c[l>>2]|0,c[(c[(c[o>>2]|0)+4>>2]|0)+((c[s>>2]|0)*20|0)+8>>2]|0)|0;gt(c[r>>2]|0)|0;c[(c[(c[o>>2]|0)+4>>2]|0)+((c[s>>2]|0)*20|0)+4>>2]=c[r>>2]}c[s>>2]=(c[s>>2]|0)+1}CE(c[l>>2]|0,c[c[y>>2]>>2]|0,c[D>>2]|0,c[c[q>>2]>>2]|0);if((c[v>>2]|0)!=0){CE(c[l>>2]|0,c[(c[y>>2]|0)+40>>2]|0,c[D>>2]|0,c[c[q>>2]>>2]|0);P=DE(c[l>>2]|0,c[(c[y>>2]|0)+44>>2]|0,c[D>>2]|0,c[c[q>>2]>>2]|0)|0;c[(c[y>>2]|0)+44>>2]=P}do{if((c[(c[q>>2]|0)+48>>2]|0)!=0){c[(c[y>>2]|0)+48>>2]=c[(c[q>>2]|0)+48>>2];c[(c[q>>2]|0)+48>>2]=0}else{if((c[(c[y>>2]|0)+48>>2]|0)==0){break}CE(c[l>>2]|0,c[(c[y>>2]|0)+48>>2]|0,c[D>>2]|0,c[c[q>>2]>>2]|0)}}while(0);if((c[(c[q>>2]|0)+36>>2]|0)!=0){c[p>>2]=hx(c[l>>2]|0,c[(c[q>>2]|0)+36>>2]|0,0)|0}else{c[p>>2]=0}if((c[z>>2]|0)!=0){c[(c[y>>2]|0)+44>>2]=c[(c[y>>2]|0)+36>>2];c[(c[y>>2]|0)+36>>2]=c[p>>2];g=DE(c[l>>2]|0,c[(c[y>>2]|0)+44>>2]|0,c[D>>2]|0,c[c[q>>2]>>2]|0)|0;c[(c[y>>2]|0)+44>>2]=g;g=c[l>>2]|0;P=c[(c[y>>2]|0)+44>>2]|0;P=Ux(g,P,hx(c[l>>2]|0,c[(c[q>>2]|0)+44>>2]|0,0)|0)|0;c[(c[y>>2]|0)+44>>2]=P;P=px(c[l>>2]|0,c[(c[q>>2]|0)+40>>2]|0,0)|0;c[(c[y>>2]|0)+40>>2]=P}else{P=DE(c[l>>2]|0,c[(c[y>>2]|0)+36>>2]|0,c[D>>2]|0,c[c[q>>2]>>2]|0)|0;c[(c[y>>2]|0)+36>>2]=P;P=Ux(c[l>>2]|0,c[(c[y>>2]|0)+36>>2]|0,c[p>>2]|0)|0;c[(c[y>>2]|0)+36>>2]=P}P=(c[y>>2]|0)+6|0;b[P>>1]=e[P>>1]|b[(c[q>>2]|0)+6>>1]&1;if((c[(c[q>>2]|0)+60>>2]|0)!=0){c[(c[y>>2]|0)+60>>2]=c[(c[q>>2]|0)+60>>2];c[(c[q>>2]|0)+60>>2]=0}c[y>>2]=c[(c[y>>2]|0)+52>>2];c[q>>2]=c[(c[q>>2]|0)+52>>2]}du(c[l>>2]|0,c[t>>2]|0);c[w>>2]=1;P=c[w>>2]|0;i=A;return P|0}function SD(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;a[(c[e>>2]|0)+19>>0]=0;c[(c[e>>2]|0)+56>>2]=0;i=d;return}function TD(f,g,h){f=f|0;g=g|0;h=h|0;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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;n=i;i=i+224|0;G=n;m=n+120|0;s=n+124|0;o=n+128|0;p=n+132|0;l=n+136|0;L=n+140|0;B=n+144|0;q=n+168|0;k=n+188|0;j=n+192|0;z=n+196|0;A=n+200|0;P=n+204|0;Q=n+208|0;F=n+212|0;M=n+216|0;K=n+116|0;I=n+112|0;J=n+108|0;O=n+104|0;N=n+148|0;E=n+40|0;C=n+32|0;r=n+28|0;H=n+24|0;T=n+20|0;W=n+36|0;S=n+8|0;R=n+4|0;V=n+12|0;Y=n+16|0;Z=n+96|0;_=n+44|0;$=n+48|0;U=n+68|0;X=n+72|0;u=n+76|0;t=n+80|0;v=n+84|0;x=n+88|0;y=n+92|0;w=n+100|0;c[s>>2]=f;c[o>>2]=g;c[p>>2]=h;c[l>>2]=0;c[k>>2]=0;c[z>>2]=0;c[A>>2]=0;c[j>>2]=c[c[s>>2]>>2];c[L>>2]=c[(c[o>>2]|0)+52>>2];f=c[p>>2]|0;c[q+0>>2]=c[f+0>>2];c[q+4>>2]=c[f+4>>2];c[q+8>>2]=c[f+8>>2];c[q+12>>2]=c[f+12>>2];c[q+16>>2]=c[f+16>>2];a:do{if((c[(c[L>>2]|0)+48>>2]|0)!=0){f=c[s>>2]|0;c[G>>2]=vE(d[(c[o>>2]|0)+4>>0]|0)|0;bf(f,31480,G);c[l>>2]=1}else{h=c[s>>2]|0;if((c[(c[L>>2]|0)+60>>2]|0)!=0){c[G>>2]=vE(d[(c[o>>2]|0)+4>>0]|0)|0;bf(h,31528,G);c[l>>2]=1;break}c[B>>2]=Ov(h)|0;if((d[q>>0]|0|0)==12){Qv(c[B>>2]|0,55,c[q+4>>2]|0,c[c[c[o>>2]>>2]>>2]|0)|0;gf(c[B>>2]|0,8);a[q>>0]=14}h=e[(c[o>>2]|0)+6>>1]|0;if((c[c[c[o>>2]>>2]>>2]|0)!=(c[c[c[L>>2]>>2]>>2]|0)){r=c[s>>2]|0;if((h&128|0)!=0){bf(r,31576,G)}else{c[G>>2]=vE(d[(c[o>>2]|0)+4>>0]|0)|0;bf(r,31624,G)}c[l>>2]=1;break}do{if((h&2048|0)!=0){wE(c[s>>2]|0,c[o>>2]|0,q)}else{if((c[(c[o>>2]|0)+48>>2]|0)!=0){c[m>>2]=xE(c[s>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;f=c[m>>2]|0;i=n;return f|0}G=d[(c[o>>2]|0)+4>>0]|0;if((G|0)==115|(G|0)==117){a[M>>0]=0;c[K>>2]=1;if((d[q>>0]|0|0)==(c[K>>2]|0)){c[F>>2]=c[q+4>>2]}else{g=(c[s>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[F>>2]=f;c[O>>2]=Qv(c[B>>2]|0,55,c[F>>2]|0,0)|0;c[(c[o>>2]|0)+16>>2]=c[O>>2];f=(Lx(c[o>>2]|0)|0)+6|0;b[f>>1]=e[f>>1]|0|8}Hz(N,c[K>>2]|0,c[F>>2]|0);c[z>>2]=c[(c[s>>2]|0)+468>>2];c[l>>2]=Mu(c[s>>2]|0,c[L>>2]|0,N)|0;if((c[l>>2]|0)!=0){break a}if((d[(c[o>>2]|0)+4>>0]|0|0)==117){a[M>>0]=2}else{a[M>>0]=1}c[(c[o>>2]|0)+52>>2]=0;c[I>>2]=c[(c[o>>2]|0)+60>>2];c[(c[o>>2]|0)+60>>2]=0;c[J>>2]=c[(c[o>>2]|0)+64>>2];c[(c[o>>2]|0)+64>>2]=0;a[N>>0]=a[M>>0]|0;c[A>>2]=c[(c[s>>2]|0)+468>>2];c[l>>2]=Mu(c[s>>2]|0,c[o>>2]|0,N)|0;cu(c[j>>2]|0,c[(c[o>>2]|0)+48>>2]|0);c[k>>2]=c[(c[o>>2]|0)+52>>2];c[(c[o>>2]|0)+52>>2]=c[L>>2];c[(c[o>>2]|0)+48>>2]=0;if((d[(c[o>>2]|0)+4>>0]|0|0)==115){g=(c[L>>2]|0)+24|0;f=(c[o>>2]|0)+24|0;h=f;g=dL(c[h>>2]|0,c[h+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;c[f>>2]=g;c[f+4>>2]=D}gu(c[j>>2]|0,c[(c[o>>2]|0)+60>>2]|0);c[(c[o>>2]|0)+60>>2]=c[I>>2];c[(c[o>>2]|0)+64>>2]=c[J>>2];c[(c[o>>2]|0)+8>>2]=0;c[(c[o>>2]|0)+12>>2]=0;if((d[q>>0]|0|0)==(c[K>>2]|0)){break}if((d[q>>0]|0|0)==9){c[H>>2]=c[o>>2];while(1){if((c[(c[H>>2]|0)+52>>2]|0)==0){break}c[H>>2]=c[(c[H>>2]|0)+52>>2]}mE(c[s>>2]|0,0,c[c[H>>2]>>2]|0)}c[C>>2]=cz(c[B>>2]|0)|0;c[E>>2]=cz(c[B>>2]|0)|0;VD(c[s>>2]|0,c[o>>2]|0,c[C>>2]|0);Qv(c[B>>2]|0,105,c[F>>2]|0,c[C>>2]|0)|0;c[r>>2]=sy(c[B>>2]|0)|0;ZD(c[s>>2]|0,c[o>>2]|0,c[c[o>>2]>>2]|0,c[F>>2]|0,0,0,q,c[E>>2]|0,c[C>>2]|0);$y(c[B>>2]|0,c[E>>2]|0);Qv(c[B>>2]|0,9,c[F>>2]|0,c[r>>2]|0)|0;$y(c[B>>2]|0,c[C>>2]|0);Qv(c[B>>2]|0,58,c[F>>2]|0,0)|0;break}else if((G|0)==116){c[P>>2]=0;c[(c[L>>2]|0)+8>>2]=c[(c[o>>2]|0)+8>>2];c[(c[L>>2]|0)+12>>2]=c[(c[o>>2]|0)+12>>2];c[(c[L>>2]|0)+60>>2]=c[(c[o>>2]|0)+60>>2];c[(c[L>>2]|0)+64>>2]=c[(c[o>>2]|0)+64>>2];c[z>>2]=c[(c[s>>2]|0)+468>>2];c[l>>2]=Mu(c[s>>2]|0,c[L>>2]|0,q)|0;c[(c[o>>2]|0)+60>>2]=0;c[(c[o>>2]|0)+64>>2]=0;if((c[l>>2]|0)!=0){break a}c[(c[o>>2]|0)+52>>2]=0;c[(c[o>>2]|0)+8>>2]=c[(c[L>>2]|0)+8>>2];c[(c[o>>2]|0)+12>>2]=c[(c[L>>2]|0)+12>>2];if((c[(c[o>>2]|0)+8>>2]|0)!=0){c[P>>2]=oy(c[B>>2]|0,136,c[(c[o>>2]|0)+8>>2]|0)|0}c[A>>2]=c[(c[s>>2]|0)+468>>2];c[l>>2]=Mu(c[s>>2]|0,c[o>>2]|0,q)|0;c[k>>2]=c[(c[o>>2]|0)+52>>2];c[(c[o>>2]|0)+52>>2]=c[L>>2];g=(c[L>>2]|0)+24|0;f=(c[o>>2]|0)+24|0;h=f;g=dL(c[h>>2]|0,c[h+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;c[f>>2]=g;c[f+4>>2]=D;if((c[(c[L>>2]|0)+60>>2]|0)!=0){f=(ex(c[(c[L>>2]|0)+60>>2]|0,Q)|0)!=0;if(f&(c[Q>>2]|0)>0){g=(c[o>>2]|0)+24|0;$=c[g+4>>2]|0;f=c[Q>>2]|0;h=((f|0)<0)<<31>>31;if($>>>0>h>>>0|(($|0)==(h|0)?(c[g>>2]|0)>>>0>f>>>0:0)){g=c[Q>>2]|0;f=(c[o>>2]|0)+24|0;c[f>>2]=g;c[f+4>>2]=((g|0)<0)<<31>>31}}}if((c[P>>2]|0)==0){break}jw(c[B>>2]|0,c[P>>2]|0);break}else{f=(c[s>>2]|0)+68|0;g=c[f>>2]|0;c[f>>2]=g+1;c[T>>2]=g;g=(c[s>>2]|0)+68|0;f=c[g>>2]|0;c[g>>2]=f+1;c[W>>2]=f;c[_>>2]=Qv(c[B>>2]|0,55,c[T>>2]|0,0)|0;c[(c[o>>2]|0)+16>>2]=c[_>>2];f=(Lx(c[o>>2]|0)|0)+6|0;b[f>>1]=e[f>>1]|0|8;Hz($,1,c[T>>2]|0);c[z>>2]=c[(c[s>>2]|0)+468>>2];c[l>>2]=Mu(c[s>>2]|0,c[L>>2]|0,$)|0;if((c[l>>2]|0)!=0){break a}c[_>>2]=Qv(c[B>>2]|0,55,c[W>>2]|0,0)|0;c[(c[o>>2]|0)+20>>2]=c[_>>2];c[(c[o>>2]|0)+52>>2]=0;c[Y>>2]=c[(c[o>>2]|0)+60>>2];c[(c[o>>2]|0)+60>>2]=0;c[Z>>2]=c[(c[o>>2]|0)+64>>2];c[(c[o>>2]|0)+64>>2]=0;c[$+4>>2]=c[W>>2];c[A>>2]=c[(c[s>>2]|0)+468>>2];c[l>>2]=Mu(c[s>>2]|0,c[o>>2]|0,$)|0;c[k>>2]=c[(c[o>>2]|0)+52>>2];c[(c[o>>2]|0)+52>>2]=c[L>>2];g=(c[o>>2]|0)+24|0;$=c[g+4>>2]|0;f=(c[L>>2]|0)+24|0;h=c[f+4>>2]|0;if($>>>0>h>>>0|(($|0)==(h|0)?(c[g>>2]|0)>>>0>(c[f>>2]|0)>>>0:0)){h=(c[L>>2]|0)+24|0;g=c[h+4>>2]|0;f=(c[o>>2]|0)+24|0;c[f>>2]=c[h>>2];c[f+4>>2]=g}gu(c[j>>2]|0,c[(c[o>>2]|0)+60>>2]|0);c[(c[o>>2]|0)+60>>2]=c[Y>>2];c[(c[o>>2]|0)+64>>2]=c[Z>>2];if((d[q>>0]|0|0)==9){c[X>>2]=c[o>>2];while(1){if((c[(c[X>>2]|0)+52>>2]|0)==0){break}c[X>>2]=c[(c[X>>2]|0)+52>>2]}mE(c[s>>2]|0,0,c[c[X>>2]>>2]|0)}c[R>>2]=cz(c[B>>2]|0)|0;c[S>>2]=cz(c[B>>2]|0)|0;VD(c[s>>2]|0,c[o>>2]|0,c[R>>2]|0);Qv(c[B>>2]|0,105,c[T>>2]|0,c[R>>2]|0)|0;c[U>>2]=Wv(c[s>>2]|0)|0;c[V>>2]=Qv(c[B>>2]|0,98,c[T>>2]|0,c[U>>2]|0)|0;ff(c[B>>2]|0,65,c[W>>2]|0,c[S>>2]|0,c[U>>2]|0,0)|0;Xv(c[s>>2]|0,c[U>>2]|0);ZD(c[s>>2]|0,c[o>>2]|0,c[c[o>>2]>>2]|0,c[T>>2]|0,0,0,q,c[S>>2]|0,c[R>>2]|0);$y(c[B>>2]|0,c[S>>2]|0);Qv(c[B>>2]|0,9,c[T>>2]|0,c[V>>2]|0)|0;$y(c[B>>2]|0,c[R>>2]|0);Qv(c[B>>2]|0,58,c[W>>2]|0,0)|0;Qv(c[B>>2]|0,58,c[T>>2]|0,0)|0;break}}}while(0);yE(c[s>>2]|0,d[(c[o>>2]|0)+4>>0]|0,c[z>>2]|0,c[A>>2]|0,(d[(c[o>>2]|0)+4>>0]|0|0)!=116&1);if((b[(c[o>>2]|0)+6>>1]&8|0)!=0){c[y>>2]=c[c[c[o>>2]>>2]>>2];c[t>>2]=By(c[j>>2]|0,c[y>>2]|0,1)|0;if((c[t>>2]|0)==0){c[l>>2]=7;break}c[u>>2]=0;c[x>>2]=(c[t>>2]|0)+20;while(1){if((c[u>>2]|0)>=(c[y>>2]|0)){break}f=zE(c[s>>2]|0,c[o>>2]|0,c[u>>2]|0)|0;c[c[x>>2]>>2]=f;if(0==(c[c[x>>2]>>2]|0)){c[c[x>>2]>>2]=c[(c[j>>2]|0)+8>>2]}c[u>>2]=(c[u>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+4}c[v>>2]=c[o>>2];while(1){if((c[v>>2]|0)==0){break}c[u>>2]=0;while(1){if((c[u>>2]|0)>=2){break}c[w>>2]=c[(c[v>>2]|0)+16+(c[u>>2]<<2)>>2];if((c[w>>2]|0)<0){break}lf(c[B>>2]|0,c[w>>2]|0,c[y>>2]|0);g=c[B>>2]|0;f=c[w>>2]|0;nf(g,f,Cy(c[t>>2]|0)|0,-6);c[(c[v>>2]|0)+16+(c[u>>2]<<2)>>2]=-1;c[u>>2]=(c[u>>2]|0)+1}c[v>>2]=c[(c[v>>2]|0)+52>>2]}Ch(c[t>>2]|0)}}}while(0);c[(c[p>>2]|0)+8>>2]=c[q+8>>2];c[(c[p>>2]|0)+12>>2]=c[q+12>>2];du(c[j>>2]|0,c[k>>2]|0);c[m>>2]=c[l>>2];f=c[m>>2]|0;i=n;return f|0}function UD(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=i;i=i+48|0;l=n+36|0;q=n+32|0;p=n+28|0;r=n+24|0;o=n+20|0;h=n+16|0;m=n+8|0;j=n+4|0;g=n;k=n+12|0;c[l>>2]=b;c[q>>2]=d;c[p>>2]=e;c[r>>2]=f;c[j>>2]=c[c[l>>2]>>2];c[o>>2]=c[c[q>>2]>>2];c[h>>2]=By(c[j>>2]|0,(c[o>>2]|0)+(c[r>>2]|0)-(c[p>>2]|0)|0,1)|0;if((c[h>>2]|0)==0){r=c[h>>2]|0;i=n;return r|0}c[g>>2]=c[p>>2];c[m>>2]=(c[(c[q>>2]|0)+4>>2]|0)+((c[p>>2]|0)*20|0);while(1){if((c[g>>2]|0)>=(c[o>>2]|0)){break}c[k>>2]=Jw(c[l>>2]|0,c[c[m>>2]>>2]|0)|0;if((c[k>>2]|0)==0){c[k>>2]=c[(c[j>>2]|0)+8>>2]}c[(c[h>>2]|0)+20+((c[g>>2]|0)-(c[p>>2]|0)<<2)>>2]=c[k>>2];a[(c[(c[h>>2]|0)+16>>2]|0)+((c[g>>2]|0)-(c[p>>2]|0))>>0]=a[(c[m>>2]|0)+12>>0]|0;c[g>>2]=(c[g>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+20}r=c[h>>2]|0;i=n;return r|0}function VD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;l=k+28|0;f=k;h=k+4|0;g=k+8|0;e=k+12|0;m=k+16|0;n=k+20|0;j=k+24|0;c[l>>2]=a;c[f>>2]=b;c[h>>2]=d;c[g>>2]=0;c[e>>2]=0;if((c[(c[f>>2]|0)+8>>2]|0)!=0){i=k;return}IA(c[l>>2]|0);if((c[(c[f>>2]|0)+60>>2]|0)==0){i=k;return}b=(c[l>>2]|0)+72|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[e>>2]=a;c[(c[f>>2]|0)+8>>2]=a;c[g>>2]=Ov(c[l>>2]|0)|0;do{if((ex(c[(c[f>>2]|0)+60>>2]|0,j)|0)!=0){Qv(c[g>>2]|0,25,c[j>>2]|0,c[e>>2]|0)|0;if((c[j>>2]|0)==0){Qv(c[g>>2]|0,16,0,c[h>>2]|0)|0;break}if((c[j>>2]|0)>=0){b=(c[f>>2]|0)+24|0;d=c[b+4>>2]|0;a=c[j>>2]|0;h=((a|0)<0)<<31>>31;if(d>>>0>h>>>0|((d|0)==(h|0)?(c[b>>2]|0)>>>0>a>>>0:0)){b=c[j>>2]|0;a=(c[f>>2]|0)+24|0;c[a>>2]=b;c[a+4>>2]=((b|0)<0)<<31>>31}}}else{vz(c[l>>2]|0,c[(c[f>>2]|0)+60>>2]|0,c[e>>2]|0);oy(c[g>>2]|0,38,c[e>>2]|0)|0;Qv(c[g>>2]|0,136,c[e>>2]|0,c[h>>2]|0)|0}}while(0);if((c[(c[f>>2]|0)+64>>2]|0)==0){i=k;return}b=(c[l>>2]|0)+72|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[m>>2]=a;c[(c[f>>2]|0)+12>>2]=a;a=(c[l>>2]|0)+72|0;c[a>>2]=(c[a>>2]|0)+1;vz(c[l>>2]|0,c[(c[f>>2]|0)+64>>2]|0,c[m>>2]|0);oy(c[g>>2]|0,38,c[m>>2]|0)|0;c[n>>2]=oy(c[g>>2]|0,134,c[m>>2]|0)|0;Qv(c[g>>2]|0,25,0,c[m>>2]|0)|0;jw(c[g>>2]|0,c[n>>2]|0);Tv(c[g>>2]|0,89,c[e>>2]|0,c[m>>2]|0,(c[m>>2]|0)+1|0)|0;c[n>>2]=oy(c[g>>2]|0,134,c[e>>2]|0)|0;Qv(c[g>>2]|0,25,-1,(c[m>>2]|0)+1|0)|0;jw(c[g>>2]|0,c[n>>2]|0);i=k;return}function WD(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;a=DA(b[(c[e>>2]|0)+32>>1]|0)|0;i=d;return a|0}function XD(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+40>>0]|0|0}function YD(b){b=b|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=b;i=e;return a[(c[d>>2]|0)+36>>0]|0}function ZD(b,f,g,h,j,k,l,m,n){b=b|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;p=i;i=i+128|0;v=p+124|0;r=p+120|0;O=p+116|0;U=p+112|0;s=p+108|0;R=p+104|0;w=p+100|0;I=p+96|0;o=p+92|0;q=p+88|0;H=p+84|0;T=p+80|0;t=p+76|0;B=p+72|0;u=p+68|0;z=p+64|0;S=p+60|0;J=p+24|0;N=p;L=p+4|0;P=p+8|0;A=p+12|0;M=p+16|0;y=p+20|0;E=p+28|0;Q=p+32|0;x=p+36|0;F=p+40|0;G=p+44|0;K=p+48|0;C=p+52|0;D=p+56|0;c[v>>2]=b;c[r>>2]=f;c[O>>2]=g;c[U>>2]=h;c[s>>2]=j;c[R>>2]=k;c[w>>2]=l;c[I>>2]=m;c[o>>2]=n;c[q>>2]=c[(c[v>>2]|0)+8>>2];c[B>>2]=d[c[w>>2]>>0]|0;c[u>>2]=c[(c[w>>2]|0)+4>>2];if((c[R>>2]|0)!=0){n=d[(c[R>>2]|0)+1>>0]|0}else{n=0}c[T>>2]=n;if((c[s>>2]|0)!=0){if((c[c[s>>2]>>2]|0)==0){c[s>>2]=0}}if((c[s>>2]|0)==0){if((c[T>>2]|0)==0){oE(c[q>>2]|0,c[(c[r>>2]|0)+12>>2]|0,c[I>>2]|0)}}c[z>>2]=c[c[O>>2]>>2];if((c[(c[w>>2]|0)+8>>2]|0)==0){c[(c[w>>2]|0)+8>>2]=(c[(c[v>>2]|0)+72>>2]|0)+1;b=(c[v>>2]|0)+72|0;c[b>>2]=(c[b>>2]|0)+(c[z>>2]|0)}else{if(((c[(c[w>>2]|0)+8>>2]|0)+(c[z>>2]|0)|0)>(c[(c[v>>2]|0)+72>>2]|0)){b=(c[v>>2]|0)+72|0;c[b>>2]=(c[b>>2]|0)+(c[z>>2]|0)}}c[(c[w>>2]|0)+12>>2]=c[z>>2];c[t>>2]=c[(c[w>>2]|0)+8>>2];a:do{if((c[U>>2]|0)>=0){c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[z>>2]|0)){break a}Tv(c[q>>2]|0,46,c[U>>2]|0,c[H>>2]|0,(c[t>>2]|0)+(c[H>>2]|0)|0)|0;c[H>>2]=(c[H>>2]|0)+1}}else{if((c[B>>2]|0)!=3){if((c[B>>2]|0)==9){U=1}else{U=(c[B>>2]|0)==13}Cz(c[v>>2]|0,c[O>>2]|0,c[t>>2]|0,(U?1:0)&255)|0}}}while(0);if((c[T>>2]|0)!=0){T=d[(c[R>>2]|0)+1>>0]|0;if((T|0)==2){c[N>>2]=(c[(c[v>>2]|0)+72>>2]|0)+1;b=(c[v>>2]|0)+72|0;c[b>>2]=(c[b>>2]|0)+(c[z>>2]|0);of(c[q>>2]|0,c[(c[R>>2]|0)+8>>2]|0);c[S>>2]=Kz(c[q>>2]|0,c[(c[R>>2]|0)+8>>2]|0)|0;a[c[S>>2]>>0]=28;c[(c[S>>2]|0)+4>>2]=1;c[(c[S>>2]|0)+8>>2]=c[N>>2];b=sy(c[q>>2]|0)|0;c[J>>2]=b+(c[z>>2]|0);c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[z>>2]|0)){break}c[L>>2]=Jw(c[v>>2]|0,c[(c[(c[O>>2]|0)+4>>2]|0)+((c[H>>2]|0)*20|0)>>2]|0)|0;S=c[q>>2]|0;R=(c[t>>2]|0)+(c[H>>2]|0)|0;if((c[H>>2]|0)<((c[z>>2]|0)-1|0)){Tv(S,78,R,c[J>>2]|0,(c[N>>2]|0)+(c[H>>2]|0)|0)|0}else{Tv(S,79,R,c[I>>2]|0,(c[N>>2]|0)+(c[H>>2]|0)|0)|0}nf(c[q>>2]|0,-1,c[L>>2]|0,-4);gf(c[q>>2]|0,-128);c[H>>2]=(c[H>>2]|0)+1}Tv(c[q>>2]|0,33,c[t>>2]|0,c[N>>2]|0,(c[z>>2]|0)-1|0)|0}else if((T|0)==1){of(c[q>>2]|0,c[(c[R>>2]|0)+8>>2]|0)}else{pE(c[v>>2]|0,c[(c[R>>2]|0)+4>>2]|0,c[I>>2]|0,c[z>>2]|0,c[t>>2]|0)}if((c[s>>2]|0)==0){oE(c[q>>2]|0,c[(c[r>>2]|0)+12>>2]|0,c[I>>2]|0)}}b:do{switch(c[B>>2]|0){case 1:{c[P>>2]=Wv(c[v>>2]|0)|0;Tv(c[q>>2]|0,48,c[t>>2]|0,c[z>>2]|0,c[P>>2]|0)|0;Qv(c[q>>2]|0,107,c[u>>2]|0,c[P>>2]|0)|0;Xv(c[v>>2]|0,c[P>>2]|0);break};case 2:{Tv(c[q>>2]|0,108,c[u>>2]|0,c[t>>2]|0,c[z>>2]|0)|0;break};case 3:{Qv(c[q>>2]|0,25,1,c[u>>2]|0)|0;break};case 11:{x=Rz(c[c[(c[O>>2]|0)+4>>2]>>2]|0,a[(c[w>>2]|0)+1>>0]|0)|0;a[(c[w>>2]|0)+1>>0]=x;x=c[v>>2]|0;if((c[s>>2]|0)!=0){uE(x,c[s>>2]|0,c[r>>2]|0,c[t>>2]|0);break b}else{c[E>>2]=Wv(x)|0;Sv(c[q>>2]|0,48,c[t>>2]|0,1,c[E>>2]|0,(c[w>>2]|0)+1|0,1)|0;Az(c[v>>2]|0,c[t>>2]|0,1);Qv(c[q>>2]|0,107,c[u>>2]|0,c[E>>2]|0)|0;Xv(c[v>>2]|0,c[E>>2]|0);break b}};case 12:case 14:case 6:case 5:{c[A>>2]=Wv(c[v>>2]|0)|0;Tv(c[q>>2]|0,48,c[t>>2]|0,c[z>>2]|0,c[A>>2]|0)|0;if((c[B>>2]|0)==6){c[M>>2]=(sy(c[q>>2]|0)|0)+4;ff(c[q>>2]|0,66,(c[u>>2]|0)+1|0,c[M>>2]|0,c[A>>2]|0,0)|0;Qv(c[q>>2]|0,107,(c[u>>2]|0)+1|0,c[A>>2]|0)|0}t=c[v>>2]|0;if((c[s>>2]|0)!=0){uE(t,c[s>>2]|0,c[r>>2]|0,c[A>>2]|0)}else{c[y>>2]=Wv(t)|0;Qv(c[q>>2]|0,69,c[u>>2]|0,c[y>>2]|0)|0;Tv(c[q>>2]|0,70,c[u>>2]|0,c[A>>2]|0,c[y>>2]|0)|0;gf(c[q>>2]|0,8);Xv(c[v>>2]|0,c[y>>2]|0)}Xv(c[v>>2]|0,c[A>>2]|0);break};case 10:{v=c[v>>2]|0;if((c[s>>2]|0)!=0){uE(v,c[s>>2]|0,c[r>>2]|0,c[t>>2]|0);break b}else{eE(v,c[t>>2]|0,c[u>>2]|0,1);break b}};case 9:case 13:{if((c[s>>2]|0)!=0){c[Q>>2]=Wv(c[v>>2]|0)|0;Tv(c[q>>2]|0,48,c[t>>2]|0,c[z>>2]|0,c[Q>>2]|0)|0;uE(c[v>>2]|0,c[s>>2]|0,c[r>>2]|0,c[Q>>2]|0);Xv(c[v>>2]|0,c[Q>>2]|0);break b}u=c[q>>2]|0;if((c[B>>2]|0)==13){oy(u,22,c[(c[w>>2]|0)+4>>2]|0)|0;break b}else{Qv(u,35,c[t>>2]|0,c[z>>2]|0)|0;Az(c[v>>2]|0,c[t>>2]|0,c[z>>2]|0);break b}};case 7:case 8:{c[C>>2]=0;c[D>>2]=c[(c[w>>2]|0)+16>>2];c[x>>2]=c[c[D>>2]>>2];c[F>>2]=Wv(c[v>>2]|0)|0;c[G>>2]=fz(c[v>>2]|0,(c[x>>2]|0)+2|0)|0;c[K>>2]=(c[G>>2]|0)+(c[x>>2]|0)+1;if((c[B>>2]|0)==8){c[C>>2]=ff(c[q>>2]|0,66,(c[u>>2]|0)+1|0,0,c[t>>2]|0,c[z>>2]|0)|0}Tv(c[q>>2]|0,48,c[t>>2]|0,c[z>>2]|0,c[K>>2]|0)|0;if((c[B>>2]|0)==8){Qv(c[q>>2]|0,107,(c[u>>2]|0)+1|0,c[K>>2]|0)|0;gf(c[q>>2]|0,16)}c[H>>2]=0;while(1){w=c[q>>2]|0;if((c[H>>2]|0)>=(c[x>>2]|0)){break}Qv(w,34,(c[t>>2]|0)+(e[(c[(c[D>>2]|0)+4>>2]|0)+((c[H>>2]|0)*20|0)+16>>1]|0)-1|0,(c[G>>2]|0)+(c[H>>2]|0)|0)|0;c[H>>2]=(c[H>>2]|0)+1}Qv(w,68,c[u>>2]|0,(c[G>>2]|0)+(c[x>>2]|0)|0)|0;Tv(c[q>>2]|0,48,c[G>>2]|0,(c[x>>2]|0)+2|0,c[F>>2]|0)|0;Qv(c[q>>2]|0,107,c[u>>2]|0,c[F>>2]|0)|0;if((c[C>>2]|0)!=0){jw(c[q>>2]|0,c[C>>2]|0)}Xv(c[v>>2]|0,c[F>>2]|0);iz(c[v>>2]|0,c[G>>2]|0,(c[x>>2]|0)+2|0);break};default:{}}}while(0);if((c[s>>2]|0)!=0){i=p;return}if((c[(c[r>>2]|0)+8>>2]|0)==0){i=p;return}Tv(c[q>>2]|0,136,c[(c[r>>2]|0)+8>>2]|0,c[o>>2]|0,-1)|0;i=p;return}function _D(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+48>>2]|0}function $D(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+52>>2]|0}function aE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;g=d+12|0;f=d;h=d+4|0;e=d+8|0;c[g>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==0){i=d;return}c[h>>2]=c[(c[f>>2]|0)+4>>2];c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[c[f>>2]>>2]|0)){break}bE(c[g>>2]|0,c[c[h>>2]>>2]|0);c[e>>2]=(c[e>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+20}i=d;return}function bE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+48|0;g=d+32|0;e=d;f=d+8|0;c[g>>2]=a;c[e>>2]=b;c[f+0>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f>>2]=66;c[f+4>>2]=67;c[f+20>>2]=c[g>>2];_w(f,c[e>>2]|0)|0;i=d;return}function cE(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;j=e;f=e+16|0;h=e+4|0;g=e+8|0;k=e+12|0;c[f>>2]=a;c[h>>2]=b;if((d[(c[f>>2]|0)+450>>0]|0|0)!=2){i=e;return}c[g>>2]=c[(c[f>>2]|0)+8>>2];a=c[c[f>>2]>>2]|0;c[j>>2]=c[h>>2];c[k>>2]=cf(a,31456,j)|0;Sv(c[g>>2]|0,157,c[(c[f>>2]|0)+464>>2]|0,0,0,c[k>>2]|0,-1)|0;i=e;return}function dE(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;i=e;return d[(c[b>>2]|0)+37>>0]|0|0}function eE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;n=k+24|0;j=k;h=k+4|0;l=k+8|0;m=k+12|0;g=k+16|0;f=k+20|0;c[n>>2]=a;c[j>>2]=b;c[h>>2]=d;c[l>>2]=e;Tv(c[(c[n>>2]|0)+8>>2]|0,32,c[j>>2]|0,c[h>>2]|0,c[l>>2]|0)|0;c[m>>2]=0;c[g>>2]=(c[n>>2]|0)+116;while(1){if((c[m>>2]|0)>=10){break}c[f>>2]=c[(c[g>>2]|0)+12>>2];if((c[f>>2]|0)>=(c[j>>2]|0)){if((c[f>>2]|0)<((c[j>>2]|0)+(c[l>>2]|0)|0)){n=(c[g>>2]|0)+12|0;c[n>>2]=(c[n>>2]|0)+((c[h>>2]|0)-(c[j>>2]|0))}}c[m>>2]=(c[m>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+20}i=k;return}function fE(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;o=i;i=i+64|0;h=o+56|0;g=o+52|0;m=o+48|0;k=o+44|0;n=o+40|0;j=o+36|0;p=o+32|0;l=o+28|0;q=o+20|0;r=o+16|0;f=o+12|0;v=o+8|0;s=o+4|0;u=o;t=o+24|0;c[h>>2]=d;c[g>>2]=e;c[m>>2]=c[(c[h>>2]|0)+8>>2];c[n>>2]=0;c[j>>2]=0;a[c[g>>2]>>0]=1;c[k>>2]=0;c[p>>2]=c[(c[g>>2]|0)+40>>2];while(1){if((c[k>>2]|0)>=(c[(c[g>>2]|0)+44>>2]|0)){break}c[r>>2]=0;c[v>>2]=c[(c[c[p>>2]>>2]|0)+20>>2];if((c[v>>2]|0)!=0){c[q>>2]=c[c[v>>2]>>2];c[f>>2]=fz(c[h>>2]|0,c[q>>2]|0)|0;Cz(c[h>>2]|0,c[v>>2]|0,c[f>>2]|0,1)|0}else{c[q>>2]=0;c[f>>2]=0}if((c[(c[p>>2]|0)+12>>2]|0)>=0){c[r>>2]=cz(c[m>>2]|0)|0;pE(c[h>>2]|0,c[(c[p>>2]|0)+12>>2]|0,c[r>>2]|0,1,c[f>>2]|0)}if((b[(c[(c[p>>2]|0)+4>>2]|0)+2>>1]&32|0)!=0){c[s>>2]=0;c[t>>2]=0;c[u>>2]=c[(c[v>>2]|0)+4>>2];while(1){if((c[s>>2]|0)!=0){break}if((c[t>>2]|0)>=(c[q>>2]|0)){break}c[s>>2]=Jw(c[h>>2]|0,c[c[u>>2]>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+20}if((c[s>>2]|0)==0){c[s>>2]=c[(c[c[h>>2]>>2]|0)+8>>2]}if((c[n>>2]|0)==0){if((c[(c[g>>2]|0)+36>>2]|0)!=0){e=(c[h>>2]|0)+72|0;d=(c[e>>2]|0)+1|0;c[e>>2]=d;c[n>>2]=d}}Sv(c[m>>2]|0,36,c[n>>2]|0,0,0,c[s>>2]|0,-4)|0}Sv(c[m>>2]|0,10,0,c[f>>2]|0,c[(c[p>>2]|0)+8>>2]|0,c[(c[p>>2]|0)+4>>2]|0,-5)|0;gf(c[m>>2]|0,c[q>>2]&255);Az(c[h>>2]|0,c[f>>2]|0,c[q>>2]|0);iz(c[h>>2]|0,c[f>>2]|0,c[q>>2]|0);if((c[r>>2]|0)!=0){$y(c[m>>2]|0,c[r>>2]|0);IA(c[h>>2]|0)}c[k>>2]=(c[k>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+16}if((c[n>>2]|0)!=0){c[j>>2]=oy(c[m>>2]|0,44,c[n>>2]|0)|0}IA(c[h>>2]|0);c[k>>2]=0;c[l>>2]=c[(c[g>>2]|0)+28>>2];while(1){if((c[k>>2]|0)>=(c[(c[g>>2]|0)+36>>2]|0)){break}vz(c[h>>2]|0,c[(c[l>>2]|0)+20>>2]|0,c[(c[l>>2]|0)+16>>2]|0);c[k>>2]=(c[k>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+24}a[c[g>>2]>>0]=0;IA(c[h>>2]|0);if((c[j>>2]|0)==0){i=o;return}jw(c[m>>2]|0,c[j>>2]|0);i=o;return}function gE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;k=d+20|0;h=d;j=d+4|0;g=d+8|0;e=d+12|0;f=d+16|0;c[k>>2]=a;c[h>>2]=b;c[j>>2]=c[(c[k>>2]|0)+8>>2];c[g>>2]=0;c[e>>2]=c[(c[h>>2]|0)+40>>2];while(1){if((c[g>>2]|0)>=(c[(c[h>>2]|0)+44>>2]|0)){break}c[f>>2]=c[(c[c[e>>2]>>2]|0)+20>>2];if((c[f>>2]|0)!=0){b=c[c[f>>2]>>2]|0}else{b=0}Sv(c[j>>2]|0,137,c[(c[e>>2]|0)+8>>2]|0,b,0,c[(c[e>>2]|0)+4>>2]|0,-5)|0;c[g>>2]=(c[g>>2]|0)+1;c[e>>2]=(c[e>>2]|0)+16}i=d;return}function hE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+48|0;k=h;j=h+28|0;d=h+24|0;m=h+20|0;g=h+32|0;f=h+8|0;n=h+4|0;e=h+12|0;l=h+16|0;c[j>>2]=a;c[d>>2]=b;c[m>>2]=c[(c[j>>2]|0)+8>>2];c[n>>2]=(c[(c[d>>2]|0)+44>>2]|0)+(c[(c[d>>2]|0)+32>>2]|0);if((c[n>>2]|0)==0){i=h;return}Tv(c[m>>2]|0,28,0,c[(c[d>>2]|0)+16>>2]|0,c[(c[d>>2]|0)+20>>2]|0)|0;c[f>>2]=c[(c[d>>2]|0)+40>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+44>>2]|0)){break}do{if((c[(c[f>>2]|0)+12>>2]|0)>=0){c[e>>2]=c[c[f>>2]>>2];if((c[(c[e>>2]|0)+20>>2]|0)!=0){if((c[c[(c[e>>2]|0)+20>>2]>>2]|0)==1){c[l>>2]=UD(c[j>>2]|0,c[(c[e>>2]|0)+20>>2]|0,0,0)|0;Sv(c[m>>2]|0,55,c[(c[f>>2]|0)+12>>2]|0,0,0,c[l>>2]|0,-6)|0;break}}bf(c[j>>2]|0,31400,k);c[(c[f>>2]|0)+12>>2]=-1}}while(0);c[g>>2]=(c[g>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+16}i=h;return}function iE(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;g=h+16|0;l=h;j=h+4|0;m=h+8|0;k=h+12|0;c[l>>2]=e;c[j>>2]=f;if((c[(c[l>>2]|0)+36>>2]|0)==0){if((c[c[c[l>>2]>>2]>>2]|0)==1){if((c[c[(c[l>>2]|0)+32>>2]>>2]|0)==1){if((c[(c[(c[l>>2]|0)+32>>2]|0)+28>>2]|0)==0){c[m>>2]=c[(c[(c[l>>2]|0)+32>>2]|0)+24>>2];c[k>>2]=c[c[(c[c[l>>2]>>2]|0)+4>>2]>>2];if((a[(c[m>>2]|0)+44>>0]&16|0)!=0){c[g>>2]=0;e=c[g>>2]|0;i=h;return e|0}if((d[c[k>>2]>>0]|0|0)!=155){c[g>>2]=0;e=c[g>>2]|0;i=h;return e|0}if((c[(c[j>>2]|0)+44>>2]|0)==0){c[g>>2]=0;e=c[g>>2]|0;i=h;return e|0}if((b[(c[(c[(c[j>>2]|0)+40>>2]|0)+4>>2]|0)+2>>1]&256|0)==0){c[g>>2]=0;e=c[g>>2]|0;i=h;return e|0}if((c[(c[k>>2]|0)+4>>2]&16|0)!=0){c[g>>2]=0;e=c[g>>2]|0;i=h;return e|0}else{c[g>>2]=c[m>>2];e=c[g>>2]|0;i=h;return e|0}}}}}c[g>>2]=0;e=c[g>>2]|0;i=h;return e|0}function jE(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;k=l;h=l+28|0;j=l+12|0;m=l+16|0;n=l+20|0;g=l+24|0;c[h>>2]=b;c[j>>2]=e;c[m>>2]=f;if((d[(c[h>>2]|0)+450>>0]|0|0)!=2){i=l;return}if((c[m>>2]|0)!=0){if((a[(c[j>>2]|0)+44>>0]&32|0)==0){f=1}else{f=(a[(c[m>>2]|0)+55>>0]&3|0)==2^1}}else{f=0}c[n>>2]=f&1;e=c[c[h>>2]>>2]|0;f=(c[n>>2]|0)!=0?31376:1784;if((c[n>>2]|0)!=0){m=c[c[m>>2]>>2]|0}else{m=1784}c[k>>2]=c[c[j>>2]>>2];c[k+4>>2]=f;c[k+8>>2]=m;c[g>>2]=cf(e,31352,k)|0;Sv(c[(c[h>>2]|0)+8>>2]|0,157,c[(c[h>>2]|0)+464>>2]|0,0,0,c[g>>2]|0,-1)|0;i=l;return}function kE(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;l=e+20|0;h=e;f=e+4|0;j=e+8|0;g=e+12|0;k=e+16|0;c[l>>2]=a;c[h>>2]=b;c[f>>2]=0;c[c[h>>2]>>2]=0;do{if((c[(c[l>>2]|0)+44>>2]|0)==1){c[j>>2]=c[c[(c[l>>2]|0)+40>>2]>>2];c[g>>2]=c[(c[j>>2]|0)+20>>2];if((c[g>>2]|0)!=0){if((c[c[g>>2]>>2]|0)==1){if((d[c[c[(c[g>>2]|0)+4>>2]>>2]>>0]|0|0)==156){c[k>>2]=c[(c[j>>2]|0)+8>>2];if((Dc(c[k>>2]|0,14864)|0)==0){c[f>>2]=1;c[c[h>>2]>>2]=c[g>>2];break}if((Dc(c[k>>2]|0,14872)|0)==0){c[f>>2]=2;c[c[h>>2]>>2]=c[g>>2]}}}}}}while(0);i=e;return c[f>>2]&255|0}function lE(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;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;j=i;i=i+96|0;u=j+80|0;D=j+76|0;k=j+72|0;t=j+68|0;v=j+64|0;l=j+60|0;m=j+56|0;p=j+52|0;n=j+48|0;C=j+44|0;o=j+40|0;x=j+12|0;E=j;r=j+4|0;y=j+8|0;s=j+16|0;q=j+20|0;B=j+24|0;z=j+28|0;A=j+32|0;w=j+36|0;c[u>>2]=b;c[D>>2]=e;c[k>>2]=f;c[t>>2]=g;c[v>>2]=h;c[l>>2]=c[(c[u>>2]|0)+8>>2];c[m>>2]=cz(c[l>>2]|0)|0;c[p>>2]=cz(c[l>>2]|0)|0;c[C>>2]=0;c[x>>2]=0;c[E>>2]=c[c[k>>2]>>2];c[r>>2]=d[c[v>>2]>>0]|0;c[y>>2]=c[(c[v>>2]|0)+4>>2];if((c[(c[k>>2]|0)+16>>2]|0)!=0){Qv(c[l>>2]|0,17,c[(c[k>>2]|0)+12>>2]|0,c[(c[k>>2]|0)+16>>2]|0)|0;Qv(c[l>>2]|0,16,0,c[m>>2]|0)|0;$y(c[l>>2]|0,c[(c[k>>2]|0)+16>>2]|0);c[C>>2]=Gz(c[u>>2]|0)|0}c[o>>2]=c[(c[k>>2]|0)+8>>2];c[s>>2]=Wv(c[u>>2]|0)|0;h=c[u>>2]|0;if((c[r>>2]|0)==9|(c[r>>2]|0)==13){e=h+68|0;b=c[e>>2]|0;c[e>>2]=b+1;c[x>>2]=b;Tv(c[l>>2]|0,57,c[x>>2]|0,c[s>>2]|0,c[t>>2]|0)|0;c[q>>2]=0}else{c[q>>2]=Wv(h)|0}c[B>>2]=(c[c[E>>2]>>2]|0)-(c[(c[k>>2]|0)+4>>2]|0);if((a[(c[k>>2]|0)+24>>0]&1|0)!=0){b=(c[u>>2]|0)+72|0;e=(c[b>>2]|0)+1|0;c[b>>2]=e;c[z>>2]=e;e=(c[u>>2]|0)+68|0;b=c[e>>2]|0;c[e>>2]=b+1;c[A>>2]=b;Tv(c[l>>2]|0,57,c[A>>2]|0,c[z>>2]|0,(c[B>>2]|0)+2|0)|0;if((c[C>>2]|0)!=0){jw(c[l>>2]|0,c[C>>2]|0)}c[n>>2]=1+(Qv(c[l>>2]|0,103,c[o>>2]|0,c[m>>2]|0)|0);oE(c[l>>2]|0,c[(c[D>>2]|0)+12>>2]|0,c[p>>2]|0);Qv(c[l>>2]|0,95,c[o>>2]|0,c[z>>2]|0)|0;Tv(c[l>>2]|0,46,c[A>>2]|0,(c[B>>2]|0)+1|0,c[s>>2]|0)|0;gf(c[l>>2]|0,32)}else{if((c[C>>2]|0)!=0){jw(c[l>>2]|0,c[C>>2]|0)}c[n>>2]=1+(Qv(c[l>>2]|0,104,c[o>>2]|0,c[m>>2]|0)|0);oE(c[l>>2]|0,c[(c[D>>2]|0)+12>>2]|0,c[p>>2]|0);Tv(c[l>>2]|0,46,c[o>>2]|0,(c[B>>2]|0)+1|0,c[s>>2]|0)|0}z=c[r>>2]|0;do{if((z|0)==11){Sv(c[l>>2]|0,48,c[s>>2]|0,1,c[q>>2]|0,(c[v>>2]|0)+1|0,1)|0;Az(c[u>>2]|0,c[s>>2]|0,1);Qv(c[l>>2]|0,107,c[y>>2]|0,c[q>>2]|0)|0}else if((z|0)==10){eE(c[u>>2]|0,c[s>>2]|0,c[y>>2]|0,1)}else if((z|0)==12|(z|0)==14){Qv(c[l>>2]|0,69,c[y>>2]|0,c[q>>2]|0)|0;Tv(c[l>>2]|0,70,c[y>>2]|0,c[s>>2]|0,c[q>>2]|0)|0;gf(c[l>>2]|0,8)}else{c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[t>>2]|0)){break}Tv(c[l>>2]|0,46,c[x>>2]|0,c[w>>2]|0,(c[(c[v>>2]|0)+8>>2]|0)+(c[w>>2]|0)|0)|0;if((c[w>>2]|0)==0){gf(c[l>>2]|0,32)}c[w>>2]=(c[w>>2]|0)+1}x=c[l>>2]|0;w=c[v>>2]|0;if((c[r>>2]|0)==9){Qv(x,35,c[w+8>>2]|0,c[t>>2]|0)|0;Az(c[u>>2]|0,c[(c[v>>2]|0)+8>>2]|0,c[t>>2]|0);break}else{oy(x,22,c[w+4>>2]|0)|0;break}}}while(0);Xv(c[u>>2]|0,c[s>>2]|0);Xv(c[u>>2]|0,c[q>>2]|0);$y(c[l>>2]|0,c[p>>2]|0);p=c[l>>2]|0;o=c[o>>2]|0;n=c[n>>2]|0;if((a[(c[k>>2]|0)+24>>0]&1|0)!=0){Qv(p,5,o,n)|0}else{Qv(p,9,o,n)|0}if((c[(c[k>>2]|0)+12>>2]|0)==0){e=c[l>>2]|0;b=c[m>>2]|0;$y(e,b);i=j;return}oy(c[l>>2]|0,18,c[(c[k>>2]|0)+12>>2]|0)|0;e=c[l>>2]|0;b=c[m>>2]|0;$y(e,b);i=j;return}function mE(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;u=i;i=i+80|0;t=u;k=u+64|0;l=u+60|0;m=u+56|0;q=u+52|0;n=u+48|0;A=u+44|0;s=u+40|0;h=u+68|0;y=u+28|0;o=u+24|0;p=u+20|0;x=u+16|0;w=u+12|0;z=u+8|0;v=u+32|0;r=u+36|0;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[q>>2]=c[(c[k>>2]|0)+8>>2];c[s>>2]=c[c[k>>2]>>2];if((a[(c[k>>2]|0)+450>>0]|0)!=0){i=u;return}if((d[(c[k>>2]|0)+16>>0]|0)!=0){i=u;return}if((c[q>>2]|0)==0){i=u;return}if((d[(c[s>>2]|0)+64>>0]|0)!=0){i=u;return}a[(c[k>>2]|0)+16>>0]=1;c[h>>2]=(c[(c[s>>2]|0)+24>>2]&32|0)!=0&1;c[y>>2]=(c[(c[s>>2]|0)+24>>2]&64|0)!=0&1;rA(c[q>>2]|0,c[c[m>>2]>>2]|0);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[c[m>>2]>>2]|0)){break}c[o>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+((c[n>>2]|0)*20|0)>>2];do{if((c[o>>2]|0)!=0){if((c[(c[(c[m>>2]|0)+4>>2]|0)+((c[n>>2]|0)*20|0)+4>>2]|0)!=0){c[p>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+((c[n>>2]|0)*20|0)+4>>2];sA(c[q>>2]|0,c[n>>2]|0,0,c[p>>2]|0,-1)|0;break}if((d[c[o>>2]>>0]|0)==154){j=12}else{if((d[c[o>>2]>>0]|0)==156){j=12}}if((j|0)==12){j=0;if((c[l>>2]|0)!=0){c[z>>2]=b[(c[o>>2]|0)+32>>1]|0;c[A>>2]=0;while(1){if((c[A>>2]|0)>=(c[c[l>>2]>>2]|0)){break}if((c[(c[l>>2]|0)+8+((c[A>>2]|0)*72|0)+40>>2]|0)==(c[(c[o>>2]|0)+28>>2]|0)){break}c[A>>2]=(c[A>>2]|0)+1}c[x>>2]=c[(c[l>>2]|0)+8+((c[A>>2]|0)*72|0)+16>>2];if((c[z>>2]|0)<0){c[z>>2]=b[(c[x>>2]|0)+36>>1]|0}if((c[z>>2]|0)<0){c[w>>2]=8848}else{c[w>>2]=c[(c[(c[x>>2]|0)+4>>2]|0)+((c[z>>2]|0)*24|0)>>2]}if((c[y>>2]|0)==0){if((c[h>>2]|0)==0){f=c[q>>2]|0;e=c[n>>2]|0;sA(f,e,0,pe(c[s>>2]|0,c[(c[(c[m>>2]|0)+4>>2]|0)+((c[n>>2]|0)*20|0)+8>>2]|0)|0,39)|0;break}}if((c[h>>2]|0)!=0){c[v>>2]=0;e=c[s>>2]|0;f=c[w>>2]|0;c[t>>2]=c[c[x>>2]>>2];c[t+4>>2]=f;c[v>>2]=cf(e,23968,t)|0;sA(c[q>>2]|0,c[n>>2]|0,0,c[v>>2]|0,39)|0;break}else{sA(c[q>>2]|0,c[n>>2]|0,0,c[w>>2]|0,-1)|0;break}}}c[r>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+((c[n>>2]|0)*20|0)+8>>2];g=c[s>>2]|0;if((c[r>>2]|0)==0){c[t>>2]=(c[n>>2]|0)+1;g=cf(g,31336,t)|0}else{g=pe(g,c[r>>2]|0)|0}c[r>>2]=g;sA(c[q>>2]|0,c[n>>2]|0,0,c[r>>2]|0,39)|0}}while(0);c[n>>2]=(c[n>>2]|0)+1}nE(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0);i=u;return}function nE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+64|0;m=e+56|0;n=e;g=e+4|0;l=e+8|0;f=e+12|0;j=e+16|0;h=e+48|0;k=e+52|0;c[m>>2]=a;c[n>>2]=b;c[g>>2]=d;c[l>>2]=c[(c[m>>2]|0)+8>>2];c[j+4>>2]=c[n>>2];c[j>>2]=c[m>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[g>>2]>>2]|0)){break}c[h>>2]=c[(c[(c[g>>2]|0)+4>>2]|0)+((c[f>>2]|0)*20|0)>>2];c[k>>2]=Hw(j,c[h>>2]|0,0)|0;sA(c[l>>2]|0,c[f>>2]|0,1,c[k>>2]|0,-1)|0;c[f>>2]=(c[f>>2]|0)+1}i=e;return}function oE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e;j=e+4|0;h=e+8|0;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;if((c[g>>2]|0)<=0){i=e;return}Qv(c[f>>2]|0,37,c[g>>2]|0,-1)|0;c[h>>2]=oy(c[f>>2]|0,135,c[g>>2]|0)|0;Qv(c[f>>2]|0,16,0,c[j>>2]|0)|0;jw(c[f>>2]|0,c[h>>2]|0);i=e;return}function pE(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;j=g+24|0;k=g;o=g+4|0;m=g+8|0;n=g+12|0;l=g+16|0;h=g+20|0;c[j>>2]=a;c[k>>2]=b;c[o>>2]=d;c[m>>2]=e;c[n>>2]=f;c[l>>2]=c[(c[j>>2]|0)+8>>2];c[h>>2]=Wv(c[j>>2]|0)|0;ff(c[l>>2]|0,66,c[k>>2]|0,c[o>>2]|0,c[n>>2]|0,c[m>>2]|0)|0;Tv(c[l>>2]|0,48,c[n>>2]|0,c[m>>2]|0,c[h>>2]|0)|0;Qv(c[l>>2]|0,107,c[k>>2]|0,c[h>>2]|0)|0;Xv(c[j>>2]|0,c[h>>2]|0);i=g;return}function qE(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;h=i;i=i+80|0;l=h+32|0;y=h+64|0;j=h+60|0;m=h+56|0;z=h+52|0;k=h+48|0;v=h+44|0;g=h+40|0;w=h+36|0;q=h+28|0;p=h+24|0;t=h+20|0;u=h+16|0;x=h+12|0;r=h+8|0;s=h+4|0;o=h;n=h+68|0;c[y>>2]=e;c[j>>2]=f;c[z>>2]=c[(c[y>>2]|0)+20>>2];c[k>>2]=c[c[z>>2]>>2];c[v>>2]=c[(c[z>>2]|0)+4>>2];c[g>>2]=c[(c[z>>2]|0)+12>>2];f=d[c[j>>2]>>0]|0;if((f|0)==154|(f|0)==156){a:do{if((c[v>>2]|0)!=0){c[w>>2]=(c[v>>2]|0)+8;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[c[v>>2]>>2]|0)){break a}if((c[(c[j>>2]|0)+28>>2]|0)==(c[(c[w>>2]|0)+40>>2]|0)){break}c[m>>2]=(c[m>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+72}c[q>>2]=c[(c[g>>2]|0)+28>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[(c[g>>2]|0)+32>>2]|0)){break}if((c[(c[q>>2]|0)+4>>2]|0)==(c[(c[j>>2]|0)+28>>2]|0)){if((c[(c[q>>2]|0)+8>>2]|0)==(b[(c[j>>2]|0)+32>>1]|0)){break}}c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+24}if((c[p>>2]|0)>=(c[(c[g>>2]|0)+32>>2]|0)){e=sE(c[c[k>>2]>>2]|0,c[g>>2]|0)|0;c[p>>2]=e;if((e|0)>=0){c[q>>2]=(c[(c[g>>2]|0)+28>>2]|0)+((c[p>>2]|0)*24|0);c[c[q>>2]>>2]=c[(c[j>>2]|0)+44>>2];c[(c[q>>2]|0)+4>>2]=c[(c[j>>2]|0)+28>>2];c[(c[q>>2]|0)+8>>2]=b[(c[j>>2]|0)+32>>1]|0;f=(c[k>>2]|0)+72|0;e=(c[f>>2]|0)+1|0;c[f>>2]=e;c[(c[q>>2]|0)+16>>2]=e;c[(c[q>>2]|0)+12>>2]=-1;c[(c[q>>2]|0)+20>>2]=c[j>>2];b:do{if((c[(c[g>>2]|0)+24>>2]|0)!=0){c[x>>2]=c[(c[g>>2]|0)+24>>2];c[r>>2]=c[(c[x>>2]|0)+4>>2];c[u>>2]=c[c[x>>2]>>2];c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[u>>2]|0)){break b}c[s>>2]=c[c[r>>2]>>2];if((d[c[s>>2]>>0]|0)==154){if((c[(c[s>>2]|0)+28>>2]|0)==(c[(c[j>>2]|0)+28>>2]|0)){if((b[(c[s>>2]|0)+32>>1]|0)==(b[(c[j>>2]|0)+32>>1]|0)){break}}}c[t>>2]=(c[t>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+20}c[(c[q>>2]|0)+12>>2]=c[t>>2]}}while(0);if((c[(c[q>>2]|0)+12>>2]|0)<0){f=(c[g>>2]|0)+12|0;e=c[f>>2]|0;c[f>>2]=e+1;c[(c[q>>2]|0)+12>>2]=e}}}c[(c[j>>2]|0)+40>>2]=c[g>>2];a[c[j>>2]>>0]=-100;b[(c[j>>2]|0)+34>>1]=c[p>>2]}}while(0);c[l>>2]=1;e=c[l>>2]|0;i=h;return e|0}else if((f|0)==155){if((a[(c[z>>2]|0)+28>>0]&8|0)==0){if((c[(c[y>>2]|0)+16>>2]|0)==(d[(c[j>>2]|0)+38>>0]|0)){c[o>>2]=c[(c[g>>2]|0)+40>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[g>>2]|0)+44>>2]|0)){break}if((jx(c[c[o>>2]>>2]|0,c[j>>2]|0,-1)|0)==0){break}c[m>>2]=(c[m>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+16}do{if((c[m>>2]|0)>=(c[(c[g>>2]|0)+44>>2]|0)){a[n>>0]=a[(c[(c[(c[c[k>>2]>>2]|0)+16>>2]|0)+12>>2]|0)+77>>0]|0;c[m>>2]=tE(c[c[k>>2]>>2]|0,c[g>>2]|0)|0;if((c[m>>2]|0)>=0){c[o>>2]=(c[(c[g>>2]|0)+40>>2]|0)+(c[m>>2]<<4);c[c[o>>2]>>2]=c[j>>2];q=(c[k>>2]|0)+72|0;p=(c[q>>2]|0)+1|0;c[q>>2]=p;c[(c[o>>2]|0)+8>>2]=p;p=c[c[k>>2]>>2]|0;q=c[(c[j>>2]|0)+8>>2]|0;r=Ub(c[(c[j>>2]|0)+8>>2]|0)|0;if((c[(c[j>>2]|0)+20>>2]|0)!=0){s=c[c[(c[j>>2]|0)+20>>2]>>2]|0}else{s=0}e=rg(p,q,r,s,a[n>>0]|0,0)|0;c[(c[o>>2]|0)+4>>2]=e;if((c[(c[j>>2]|0)+4>>2]&16|0)!=0){f=(c[k>>2]|0)+68|0;e=c[f>>2]|0;c[f>>2]=e+1;c[(c[o>>2]|0)+12>>2]=e;break}else{c[(c[o>>2]|0)+12>>2]=-1;break}}}}while(0);b[(c[j>>2]|0)+34>>1]=c[m>>2];c[(c[j>>2]|0)+40>>2]=c[g>>2];c[l>>2]=1;e=c[l>>2]|0;i=h;return e|0}}c[l>>2]=0;e=c[l>>2]|0;i=h;return e|0}else{c[l>>2]=0;e=c[l>>2]|0;i=h;return e|0}return 0}function rE(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function sE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;d=e+4|0;c[g>>2]=a;c[f>>2]=b;a=QA(c[g>>2]|0,c[(c[f>>2]|0)+28>>2]|0,24,(c[f>>2]|0)+32|0,d)|0;c[(c[f>>2]|0)+28>>2]=a;i=e;return c[d>>2]|0}function tE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;g=e+8|0;f=e;d=e+4|0;c[g>>2]=a;c[f>>2]=b;a=QA(c[g>>2]|0,c[(c[f>>2]|0)+40>>2]|0,16,(c[f>>2]|0)+44|0,d)|0;c[(c[f>>2]|0)+40>>2]=a;i=e;return c[d>>2]|0}function uE(b,d,f,g){b=b|0;d=d|0;f=f|0;g=g|0;var h=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;o=i;i=i+80|0;v=o+72|0;m=o+68|0;n=o+64|0;B=o+60|0;h=o+56|0;A=o+52|0;r=o+48|0;p=o+44|0;x=o+40|0;q=o+36|0;t=o+12|0;u=o;s=o+4|0;w=o+8|0;z=o+16|0;y=o+20|0;k=o+24|0;l=o+28|0;j=o+32|0;c[v>>2]=b;c[m>>2]=d;c[n>>2]=f;c[B>>2]=g;c[h>>2]=c[(c[v>>2]|0)+8>>2];c[A>>2]=c[c[c[m>>2]>>2]>>2];d=(c[v>>2]|0)+72|0;b=(c[d>>2]|0)+1|0;c[d>>2]=b;c[r>>2]=b;c[p>>2]=(c[(c[v>>2]|0)+72>>2]|0)+1;c[x>>2]=c[(c[m>>2]|0)+4>>2];b=(c[v>>2]|0)+72|0;c[b>>2]=(c[b>>2]|0)+((c[A>>2]|0)+2);IA(c[v>>2]|0);Cz(c[v>>2]|0,c[c[m>>2]>>2]|0,c[p>>2]|0,0)|0;Qv(c[h>>2]|0,68,c[(c[m>>2]|0)+8>>2]|0,(c[p>>2]|0)+(c[A>>2]|0)|0)|0;eE(c[v>>2]|0,c[B>>2]|0,(c[p>>2]|0)+(c[A>>2]|0)+1|0,1);Tv(c[h>>2]|0,48,(c[p>>2]|0)+(c[x>>2]|0)|0,(c[A>>2]|0)+2-(c[x>>2]|0)|0,c[r>>2]|0)|0;do{if((c[x>>2]|0)>0){c[t>>2]=(c[(c[v>>2]|0)+72>>2]|0)+1;B=(c[v>>2]|0)+72|0;c[B>>2]=(c[B>>2]|0)+(c[(c[m>>2]|0)+4>>2]|0);c[z>>2]=(c[A>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)+1;c[u>>2]=oy(c[h>>2]|0,45,(c[p>>2]|0)+(c[A>>2]|0)|0)|0;Tv(c[h>>2]|0,41,c[t>>2]|0,c[p>>2]|0,c[(c[m>>2]|0)+4>>2]|0)|0;c[w>>2]=Kz(c[h>>2]|0,c[(c[m>>2]|0)+20>>2]|0)|0;if((a[(c[c[v>>2]>>2]|0)+64>>0]|0)!=0){i=o;return}else{c[(c[w>>2]|0)+8>>2]=(c[z>>2]|0)+1;c[y>>2]=c[(c[w>>2]|0)+16>>2];aL(c[(c[y>>2]|0)+16>>2]|0,0,e[(c[y>>2]|0)+6>>1]|0)|0;nf(c[h>>2]|0,-1,c[y>>2]|0,-6);b=UD(c[v>>2]|0,c[c[m>>2]>>2]|0,c[x>>2]|0,1)|0;c[(c[w>>2]|0)+16>>2]=b;c[s>>2]=sy(c[h>>2]|0)|0;Tv(c[h>>2]|0,42,(c[s>>2]|0)+1|0,0,(c[s>>2]|0)+1|0)|0;b=cz(c[h>>2]|0)|0;c[(c[m>>2]|0)+16>>2]=b;b=(c[v>>2]|0)+72|0;B=(c[b>>2]|0)+1|0;c[b>>2]=B;c[(c[m>>2]|0)+12>>2]=B;Qv(c[h>>2]|0,17,c[(c[m>>2]|0)+12>>2]|0,c[(c[m>>2]|0)+16>>2]|0)|0;oy(c[h>>2]|0,116,c[(c[m>>2]|0)+8>>2]|0)|0;jw(c[h>>2]|0,c[u>>2]|0);Tv(c[h>>2]|0,32,c[p>>2]|0,c[t>>2]|0,c[(c[m>>2]|0)+4>>2]|0)|0;jw(c[h>>2]|0,c[s>>2]|0);break}}}while(0);if((a[(c[m>>2]|0)+24>>0]&1|0)!=0){c[q>>2]=106}else{c[q>>2]=107}Qv(c[h>>2]|0,c[q>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[r>>2]|0)|0;if((c[(c[n>>2]|0)+8>>2]|0)==0){i=o;return}p=c[n>>2]|0;if((c[(c[n>>2]|0)+12>>2]|0)!=0){c[j>>2]=(c[p+12>>2]|0)+1}else{c[j>>2]=c[p+8>>2]}c[k>>2]=oy(c[h>>2]|0,136,c[j>>2]|0)|0;Qv(c[h>>2]|0,37,c[j>>2]|0,-1)|0;c[l>>2]=Yv(c[h>>2]|0,16)|0;jw(c[h>>2]|0,c[k>>2]|0);oy(c[h>>2]|0,102,c[(c[m>>2]|0)+8>>2]|0)|0;oy(c[h>>2]|0,74,c[(c[m>>2]|0)+8>>2]|0)|0;jw(c[h>>2]|0,c[l>>2]|0);i=o;return}function vE(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;a=c[e>>2]|0;if((a|0)==116){c[b>>2]=31776}else if((a|0)==118){c[b>>2]=31792}else if((a|0)==117){c[b>>2]=31808}else{c[b>>2]=31816}i=d;return c[b>>2]|0}function wE(a,f,g){a=a|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;x=i;i=i+112|0;n=x+108|0;o=x+104|0;q=x+100|0;H=x+96|0;D=x+92|0;t=x+88|0;y=x+84|0;v=x+80|0;l=x+76|0;r=x+72|0;p=x+68|0;u=x+64|0;k=x+60|0;B=x+32|0;E=x;z=x+4|0;G=x+24|0;A=x+28|0;h=x+36|0;w=x+40|0;j=x+44|0;s=x+48|0;m=x+52|0;C=x+56|0;c[n>>2]=a;c[o>>2]=f;c[q>>2]=g;c[H>>2]=c[(c[o>>2]|0)+32>>2];c[D>>2]=c[c[c[o>>2]>>2]>>2];c[t>>2]=c[(c[n>>2]|0)+8>>2];c[y>>2]=c[(c[o>>2]|0)+52>>2];c[p>>2]=0;c[B>>2]=0;c[E>>2]=5;if((Lv(c[n>>2]|0,33,0,0,0)|0)!=0){i=x;return}c[r>>2]=cz(c[t>>2]|0)|0;VD(c[n>>2]|0,c[o>>2]|0,c[r>>2]|0);c[w>>2]=c[(c[o>>2]|0)+60>>2];c[j>>2]=c[(c[o>>2]|0)+64>>2];c[s>>2]=c[(c[o>>2]|0)+8>>2];c[m>>2]=c[(c[o>>2]|0)+12>>2];c[(c[o>>2]|0)+64>>2]=0;c[(c[o>>2]|0)+60>>2]=0;c[(c[o>>2]|0)+12>>2]=0;c[(c[o>>2]|0)+8>>2]=0;c[h>>2]=c[(c[o>>2]|0)+48>>2];c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[c[H>>2]>>2]|0)){break}g=c[G>>2]|0;if(((d[(c[H>>2]|0)+8+((c[G>>2]|0)*72|0)+37>>0]|0)>>>3&1|0)!=0){F=5;break}c[G>>2]=g+1}if((F|0)==5){c[p>>2]=c[(c[H>>2]|0)+8+(g*72|0)+40>>2]}a=(c[n>>2]|0)+68|0;F=c[a>>2]|0;c[a>>2]=F+1;c[k>>2]=F;F=(c[h>>2]|0)!=0;if((d[(c[o>>2]|0)+4>>0]|0|0)==115){c[E>>2]=F?8:6;f=(c[n>>2]|0)+68|0;a=c[f>>2]|0;c[f>>2]=a+1;c[B>>2]=a}else{c[E>>2]=F?7:5}Hz(z,c[E>>2]|0,c[k>>2]|0);f=(c[n>>2]|0)+72|0;a=(c[f>>2]|0)+1|0;c[f>>2]=a;c[u>>2]=a;Tv(c[t>>2]|0,57,c[p>>2]|0,c[u>>2]|0,c[D>>2]|0)|0;if((c[h>>2]|0)!=0){c[C>>2]=AE(c[n>>2]|0,c[o>>2]|0,1)|0;Sv(c[t>>2]|0,55,c[k>>2]|0,(c[c[h>>2]>>2]|0)+2|0,0,c[C>>2]|0,-6)|0;c[z+16>>2]=c[h>>2]}else{Qv(c[t>>2]|0,55,c[k>>2]|0,c[D>>2]|0)|0}if((c[B>>2]|0)!=0){a=Qv(c[t>>2]|0,55,c[B>>2]|0,0)|0;c[(c[o>>2]|0)+16>>2]=a;a=(c[o>>2]|0)+6|0;b[a>>1]=e[a>>1]|0|8}c[(c[o>>2]|0)+48>>2]=0;c[(c[y>>2]|0)+56>>2]=0;c[A>>2]=Mu(c[n>>2]|0,c[y>>2]|0,z)|0;c[(c[y>>2]|0)+56>>2]=c[o>>2];if((c[A>>2]|0)==0){c[v>>2]=Qv(c[t>>2]|0,105,c[k>>2]|0,c[r>>2]|0)|0;oy(c[t>>2]|0,101,c[p>>2]|0)|0;B=c[t>>2]|0;A=c[k>>2]|0;if((c[h>>2]|0)!=0){Tv(B,46,A,(c[c[h>>2]>>2]|0)+1|0,c[u>>2]|0)|0}else{Qv(B,99,A,c[u>>2]|0)|0}oy(c[t>>2]|0,74,c[k>>2]|0)|0;c[l>>2]=cz(c[t>>2]|0)|0;oE(c[t>>2]|0,c[m>>2]|0,c[l>>2]|0);ZD(c[n>>2]|0,c[o>>2]|0,c[c[o>>2]>>2]|0,c[p>>2]|0,0,0,c[q>>2]|0,c[l>>2]|0,c[r>>2]|0);if((c[s>>2]|0)!=0){Tv(c[t>>2]|0,136,c[s>>2]|0,c[r>>2]|0,-1)|0}$y(c[t>>2]|0,c[l>>2]|0);c[(c[o>>2]|0)+52>>2]=0;Mu(c[n>>2]|0,c[o>>2]|0,z)|0;c[(c[o>>2]|0)+52>>2]=c[y>>2];Qv(c[t>>2]|0,16,0,c[v>>2]|0)|0;$y(c[t>>2]|0,c[r>>2]|0)}cu(c[c[n>>2]>>2]|0,c[(c[o>>2]|0)+48>>2]|0);c[(c[o>>2]|0)+48>>2]=c[h>>2];c[(c[o>>2]|0)+60>>2]=c[w>>2];c[(c[o>>2]|0)+64>>2]=c[j>>2];i=x;return}function xE(f,g,h){f=f|0;g=g|0;h=h|0;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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0;T=i;i=i+224|0;U=T+212|0;E=T+208|0;u=T+204|0;G=T+200|0;aa=T+196|0;ca=T+192|0;t=T+188|0;n=T+184|0;J=T+164|0;F=T+144|0;q=T+140|0;B=T+136|0;j=T+132|0;O=T+128|0;o=T+124|0;z=T+120|0;p=T+116|0;A=T+112|0;r=T+108|0;y=T+104|0;v=T+100|0;K=T+96|0;l=T+92|0;w=T+88|0;M=T+36|0;R=T+32|0;H=T+28|0;P=T+24|0;Q=T+20|0;s=T+16|0;x=T+8|0;L=T+4|0;m=T;C=T+12|0;W=T+40|0;I=T+44|0;da=T+48|0;X=T+52|0;Y=T+56|0;N=T+60|0;S=T+64|0;Z=T+68|0;ba=T+72|0;_=T+76|0;$=T+80|0;V=T+84|0;c[E>>2]=f;c[u>>2]=g;c[G>>2]=h;c[A>>2]=0;c[C>>2]=0;c[I>>2]=c[c[E>>2]>>2];c[n>>2]=c[(c[E>>2]|0)+8>>2];c[x>>2]=cz(c[n>>2]|0)|0;c[s>>2]=cz(c[n>>2]|0)|0;c[m>>2]=d[(c[u>>2]|0)+4>>0]|0;c[t>>2]=c[(c[u>>2]|0)+52>>2];c[da>>2]=c[(c[u>>2]|0)+48>>2];c[X>>2]=c[c[da>>2]>>2];a:do{if((c[m>>2]|0)!=116){c[aa>>2]=1;while(1){if((d[(c[I>>2]|0)+64>>0]|0|0)!=0){break a}if((c[aa>>2]|0)>(c[c[c[u>>2]>>2]>>2]|0)){break a}c[ca>>2]=0;c[Z>>2]=c[(c[da>>2]|0)+4>>2];while(1){if((c[ca>>2]|0)>=(c[X>>2]|0)){break}if((e[(c[Z>>2]|0)+16>>1]|0|0)==(c[aa>>2]|0)){break}c[ca>>2]=(c[ca>>2]|0)+1;c[Z>>2]=(c[Z>>2]|0)+20}if((c[ca>>2]|0)==(c[X>>2]|0)){c[ba>>2]=Su(c[I>>2]|0,132,0)|0;if((c[ba>>2]|0)==0){break}f=(c[ba>>2]|0)+4|0;c[f>>2]=c[f>>2]|1024;c[(c[ba>>2]|0)+8>>2]=c[aa>>2];c[da>>2]=Pu(c[E>>2]|0,c[da>>2]|0,c[ba>>2]|0)|0;if((c[da>>2]|0)!=0){g=c[aa>>2]&65535;f=c[X>>2]|0;c[X>>2]=f+1;b[(c[(c[da>>2]|0)+4>>2]|0)+(f*20|0)+16>>1]=g}}c[aa>>2]=(c[aa>>2]|0)+1}c[U>>2]=7;f=c[U>>2]|0;i=T;return f|0}}while(0);c[Y>>2]=$e(c[I>>2]|0,c[X>>2]<<2)|0;if((c[Y>>2]|0)!=0){c[aa>>2]=0;c[_>>2]=c[(c[da>>2]|0)+4>>2];while(1){if((c[aa>>2]|0)>=(c[X>>2]|0)){break}c[(c[Y>>2]|0)+(c[aa>>2]<<2)>>2]=(e[(c[_>>2]|0)+16>>1]|0)-1;c[aa>>2]=(c[aa>>2]|0)+1;c[_>>2]=(c[_>>2]|0)+20}c[W>>2]=AE(c[E>>2]|0,c[u>>2]|0,1)|0}else{c[W>>2]=0}c[(c[u>>2]|0)+48>>2]=c[da>>2];f=px(c[c[E>>2]>>2]|0,c[da>>2]|0,0)|0;c[(c[t>>2]|0)+48>>2]=f;b:do{if((c[m>>2]|0)==116){c[H>>2]=0}else{c[$>>2]=c[c[c[u>>2]>>2]>>2];c[H>>2]=(c[(c[E>>2]|0)+72>>2]|0)+1;f=(c[E>>2]|0)+72|0;c[f>>2]=(c[f>>2]|0)+((c[$>>2]|0)+1);Qv(c[n>>2]|0,25,0,c[H>>2]|0)|0;c[C>>2]=By(c[I>>2]|0,c[$>>2]|0,1)|0;if((c[C>>2]|0)!=0){c[aa>>2]=0;while(1){if((c[aa>>2]|0)>=(c[$>>2]|0)){break b}f=zE(c[E>>2]|0,c[u>>2]|0,c[aa>>2]|0)|0;c[(c[C>>2]|0)+20+(c[aa>>2]<<2)>>2]=f;a[(c[(c[C>>2]|0)+16>>2]|0)+(c[aa>>2]|0)>>0]=0;c[aa>>2]=(c[aa>>2]|0)+1}}}}while(0);c[(c[u>>2]|0)+52>>2]=0;c[(c[t>>2]|0)+56>>2]=0;rx(c[E>>2]|0,c[u>>2]|0,c[(c[u>>2]|0)+48>>2]|0,23008)|0;if((c[(c[t>>2]|0)+52>>2]|0)==0){rx(c[E>>2]|0,c[t>>2]|0,c[(c[t>>2]|0)+48>>2]|0,23008)|0}VD(c[E>>2]|0,c[u>>2]|0,c[x>>2]|0);if((c[(c[u>>2]|0)+8>>2]|0)!=0){if((c[m>>2]|0)==116){Z=(c[E>>2]|0)+72|0;f=(c[Z>>2]|0)+1|0;c[Z>>2]=f;c[M>>2]=f;f=(c[E>>2]|0)+72|0;Z=(c[f>>2]|0)+1|0;c[f>>2]=Z;c[R>>2]=Z;Z=c[u>>2]|0;if((c[(c[u>>2]|0)+12>>2]|0)!=0){Z=(c[Z+12>>2]|0)+1|0}else{Z=c[Z+8>>2]|0}Qv(c[n>>2]|0,33,Z,c[M>>2]|0)|0;Qv(c[n>>2]|0,33,c[M>>2]|0,c[R>>2]|0)|0}else{k=35}}else{k=35}if((k|0)==35){c[R>>2]=0;c[M>>2]=0}gu(c[I>>2]|0,c[(c[u>>2]|0)+60>>2]|0);c[(c[u>>2]|0)+60>>2]=0;gu(c[I>>2]|0,c[(c[u>>2]|0)+64>>2]|0);c[(c[u>>2]|0)+64>>2]=0;f=(c[E>>2]|0)+72|0;g=(c[f>>2]|0)+1|0;c[f>>2]=g;c[q>>2]=g;g=(c[E>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[B>>2]=f;f=(c[E>>2]|0)+72|0;g=(c[f>>2]|0)+1|0;c[f>>2]=g;c[o>>2]=g;g=(c[E>>2]|0)+72|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[z>>2]=f;Hz(J,13,c[q>>2]|0);Hz(F,13,c[B>>2]|0);c[j>>2]=(sy(c[n>>2]|0)|0)+1;c[L>>2]=Tv(c[n>>2]|0,20,c[q>>2]|0,0,c[j>>2]|0)|0;c[(c[t>>2]|0)+8>>2]=c[M>>2];c[N>>2]=c[(c[E>>2]|0)+468>>2];Mu(c[E>>2]|0,c[t>>2]|0,J)|0;oy(c[n>>2]|0,21,c[q>>2]|0)|0;jw(c[n>>2]|0,c[L>>2]|0);c[O>>2]=(sy(c[n>>2]|0)|0)+1;c[L>>2]=Tv(c[n>>2]|0,20,c[B>>2]|0,0,c[O>>2]|0)|0;c[P>>2]=c[(c[u>>2]|0)+8>>2];c[Q>>2]=c[(c[u>>2]|0)+12>>2];c[(c[u>>2]|0)+8>>2]=c[R>>2];c[(c[u>>2]|0)+12>>2]=0;c[S>>2]=c[(c[E>>2]|0)+468>>2];Mu(c[E>>2]|0,c[u>>2]|0,F)|0;c[(c[u>>2]|0)+8>>2]=c[P>>2];c[(c[u>>2]|0)+12>>2]=c[Q>>2];oy(c[n>>2]|0,21,c[B>>2]|0)|0;c[p>>2]=BE(c[E>>2]|0,c[u>>2]|0,J,c[G>>2]|0,c[o>>2]|0,c[H>>2]|0,c[C>>2]|0,c[x>>2]|0)|0;if((c[m>>2]|0)==116|(c[m>>2]|0)==115){c[A>>2]=BE(c[E>>2]|0,c[u>>2]|0,F,c[G>>2]|0,c[z>>2]|0,c[H>>2]|0,c[C>>2]|0,c[x>>2]|0)|0}Ch(c[C>>2]|0);if((c[m>>2]|0)==117|(c[m>>2]|0)==118){f=c[x>>2]|0;c[r>>2]=f;c[y>>2]=f}else{c[r>>2]=Qv(c[n>>2]|0,17,c[z>>2]|0,c[A>>2]|0)|0;c[y>>2]=Qv(c[n>>2]|0,22,c[B>>2]|0,c[x>>2]|0)|0;Qv(c[n>>2]|0,16,0,c[r>>2]|0)|0;g=(c[t>>2]|0)+24|0;f=(c[u>>2]|0)+24|0;h=f;g=dL(c[h>>2]|0,c[h+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;c[f>>2]=g;c[f+4>>2]=D}if((c[m>>2]|0)==118){c[v>>2]=c[r>>2];g=(c[u>>2]|0)+24|0;da=c[g+4>>2]|0;f=(c[t>>2]|0)+24|0;h=c[f+4>>2]|0;if(da>>>0>h>>>0|((da|0)==(h|0)?(c[g>>2]|0)>>>0>(c[f>>2]|0)>>>0:0)){h=(c[t>>2]|0)+24|0;g=c[h+4>>2]|0;f=(c[u>>2]|0)+24|0;c[f>>2]=c[h>>2];c[f+4>>2]=g}}else{c[v>>2]=Qv(c[n>>2]|0,17,c[o>>2]|0,c[p>>2]|0)|0;Qv(c[n>>2]|0,22,c[q>>2]|0,c[x>>2]|0)|0;Qv(c[n>>2]|0,16,0,c[v>>2]|0)|0}c[K>>2]=Qv(c[n>>2]|0,17,c[o>>2]|0,c[p>>2]|0)|0;Qv(c[n>>2]|0,22,c[q>>2]|0,c[r>>2]|0)|0;Qv(c[n>>2]|0,16,0,c[s>>2]|0)|0;do{if((c[m>>2]|0)==116){c[l>>2]=c[K>>2]}else{if((c[m>>2]|0)==118){c[l>>2]=c[K>>2];c[K>>2]=(c[K>>2]|0)+1;break}else{c[l>>2]=Qv(c[n>>2]|0,22,c[q>>2]|0,c[r>>2]|0)|0;Qv(c[n>>2]|0,16,0,c[s>>2]|0)|0;break}}}while(0);c[w>>2]=sy(c[n>>2]|0)|0;if((c[m>>2]|0)==116|(c[m>>2]|0)==115){Qv(c[n>>2]|0,17,c[z>>2]|0,c[A>>2]|0)|0}Qv(c[n>>2]|0,22,c[B>>2]|0,c[v>>2]|0)|0;Qv(c[n>>2]|0,16,0,c[s>>2]|0)|0;jw(c[n>>2]|0,c[L>>2]|0);Qv(c[n>>2]|0,22,c[q>>2]|0,c[y>>2]|0)|0;Qv(c[n>>2]|0,22,c[B>>2]|0,c[v>>2]|0)|0;$y(c[n>>2]|0,c[s>>2]|0);Sv(c[n>>2]|0,40,0,0,0,c[Y>>2]|0,-15)|0;Sv(c[n>>2]|0,41,c[J+8>>2]|0,c[F+8>>2]|0,c[X>>2]|0,c[W>>2]|0,-6)|0;gf(c[n>>2]|0,1);Tv(c[n>>2]|0,42,c[K>>2]|0,c[l>>2]|0,c[w>>2]|0)|0;$y(c[n>>2]|0,c[x>>2]|0);if((d[c[G>>2]>>0]|0|0)==9){c[V>>2]=c[t>>2];while(1){if((c[(c[V>>2]|0)+52>>2]|0)==0){break}c[V>>2]=c[(c[V>>2]|0)+52>>2]}mE(c[E>>2]|0,0,c[c[V>>2]>>2]|0)}if((c[(c[u>>2]|0)+52>>2]|0)!=0){du(c[I>>2]|0,c[(c[u>>2]|0)+52>>2]|0)}c[(c[u>>2]|0)+52>>2]=c[t>>2];c[(c[t>>2]|0)+56>>2]=c[u>>2];yE(c[E>>2]|0,d[(c[u>>2]|0)+4>>0]|0,c[N>>2]|0,c[S>>2]|0,0);c[U>>2]=0;f=c[U>>2]|0;i=T;return f|0}function yE(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+48|0;p=o;j=o+40|0;h=o+16|0;l=o+20|0;m=o+24|0;n=o+28|0;k=o+32|0;q=o+36|0;c[j>>2]=a;c[h>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;if((d[(c[j>>2]|0)+450>>0]|0|0)!=2){i=o;return}c[k>>2]=c[(c[j>>2]|0)+8>>2];a=c[c[j>>2]>>2]|0;l=c[l>>2]|0;f=c[m>>2]|0;e=(c[n>>2]|0)!=0?31752:1784;b=vE(c[h>>2]|0)|0;c[p>>2]=l;c[p+4>>2]=f;c[p+8>>2]=e;c[p+12>>2]=b;c[q>>2]=cf(a,31712,p)|0;Sv(c[k>>2]|0,157,c[(c[j>>2]|0)+464>>2]|0,0,0,c[q>>2]|0,-1)|0;i=o;return}function zE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+12|0;h=f;j=f+4|0;e=f+8|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if((c[(c[h>>2]|0)+52>>2]|0)!=0){c[e>>2]=zE(c[g>>2]|0,c[(c[h>>2]|0)+52>>2]|0,c[j>>2]|0)|0}else{c[e>>2]=0}if((c[e>>2]|0)!=0){a=c[e>>2]|0;i=f;return a|0}if((c[j>>2]|0)>=(c[c[c[h>>2]>>2]>>2]|0)){a=c[e>>2]|0;i=f;return a|0}c[e>>2]=Jw(c[g>>2]|0,c[(c[(c[c[h>>2]>>2]|0)+4>>2]|0)+((c[j>>2]|0)*20|0)>>2]|0)|0;a=c[e>>2]|0;i=f;return a|0}function AE(b,d,f){b=b|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=i;i=i+48|0;p=n+40|0;l=n+36|0;s=n+32|0;h=n+28|0;q=n+24|0;r=n+20|0;m=n+12|0;o=n+8|0;g=n+4|0;j=n;k=n+16|0;c[p>>2]=b;c[l>>2]=d;c[s>>2]=f;c[h>>2]=c[(c[l>>2]|0)+48>>2];c[q>>2]=c[c[(c[l>>2]|0)+48>>2]>>2];c[r>>2]=c[c[p>>2]>>2];c[m>>2]=By(c[r>>2]|0,(c[q>>2]|0)+(c[s>>2]|0)|0,1)|0;if((c[m>>2]|0)==0){s=c[m>>2]|0;i=n;return s|0}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[q>>2]|0)){break}c[g>>2]=(c[(c[h>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0);c[j>>2]=c[c[g>>2]>>2];f=c[p>>2]|0;if((c[(c[j>>2]|0)+4>>2]&256|0)!=0){c[k>>2]=Jw(f,c[j>>2]|0)|0}else{c[k>>2]=zE(f,c[l>>2]|0,(e[(c[g>>2]|0)+16>>1]|0)-1|0)|0;if((c[k>>2]|0)==0){c[k>>2]=c[(c[r>>2]|0)+8>>2]}s=ux(c[p>>2]|0,c[j>>2]|0,c[c[k>>2]>>2]|0)|0;c[(c[(c[h>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0)>>2]=s}c[(c[m>>2]|0)+20+(c[o>>2]<<2)>>2]=c[k>>2];a[(c[(c[m>>2]|0)+16>>2]|0)+(c[o>>2]|0)>>0]=a[(c[(c[h>>2]|0)+4>>2]|0)+((c[o>>2]|0)*20|0)+12>>0]|0;c[o>>2]=(c[o>>2]|0)+1}s=c[m>>2]|0;i=n;return s|0}function BE(b,e,f,g,h,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;n=i;i=i+80|0;y=n+64|0;v=n+60|0;o=n+56|0;x=n+52|0;u=n+48|0;s=n+44|0;A=n+40|0;D=n+36|0;q=n+32|0;p=n+24|0;r=n+20|0;t=n+16|0;B=n+12|0;C=n+8|0;m=n+4|0;z=n;w=n+28|0;c[v>>2]=b;c[o>>2]=e;c[x>>2]=f;c[u>>2]=g;c[s>>2]=h;c[A>>2]=j;c[D>>2]=k;c[q>>2]=l;c[p>>2]=c[(c[v>>2]|0)+8>>2];c[t>>2]=sy(c[p>>2]|0)|0;c[r>>2]=cz(c[p>>2]|0)|0;if((c[A>>2]|0)!=0){c[B>>2]=oy(c[p>>2]|0,45,c[A>>2]|0)|0;g=c[p>>2]|0;f=c[(c[x>>2]|0)+8>>2]|0;e=(c[A>>2]|0)+1|0;b=c[(c[x>>2]|0)+12>>2]|0;c[C>>2]=Sv(g,41,f,e,b,Cy(c[D>>2]|0)|0,-6)|0;Tv(c[p>>2]|0,42,(c[C>>2]|0)+2|0,c[r>>2]|0,(c[C>>2]|0)+2|0)|0;jw(c[p>>2]|0,c[B>>2]|0);Tv(c[p>>2]|0,33,c[(c[x>>2]|0)+8>>2]|0,(c[A>>2]|0)+1|0,(c[(c[x>>2]|0)+12>>2]|0)-1|0)|0;Qv(c[p>>2]|0,25,1,c[A>>2]|0)|0}if((a[(c[c[v>>2]>>2]|0)+64>>0]|0)!=0){c[y>>2]=0;b=c[y>>2]|0;i=n;return b|0}oE(c[p>>2]|0,c[(c[o>>2]|0)+12>>2]|0,c[r>>2]|0);switch(d[c[u>>2]>>0]|0){case 11:{b=Rz(c[c[(c[c[o>>2]>>2]|0)+4>>2]>>2]|0,a[(c[u>>2]|0)+1>>0]|0)|0;a[(c[u>>2]|0)+1>>0]=b;c[w>>2]=Wv(c[v>>2]|0)|0;Sv(c[p>>2]|0,48,c[(c[x>>2]|0)+8>>2]|0,1,c[w>>2]|0,(c[u>>2]|0)+1|0,1)|0;Az(c[v>>2]|0,c[(c[x>>2]|0)+8>>2]|0,1);Qv(c[p>>2]|0,107,c[(c[u>>2]|0)+4>>2]|0,c[w>>2]|0)|0;Xv(c[v>>2]|0,c[w>>2]|0);break};case 13:{if((c[(c[u>>2]|0)+8>>2]|0)==0){b=fz(c[v>>2]|0,c[(c[x>>2]|0)+12>>2]|0)|0;c[(c[u>>2]|0)+8>>2]=b;c[(c[u>>2]|0)+12>>2]=c[(c[x>>2]|0)+12>>2]}eE(c[v>>2]|0,c[(c[x>>2]|0)+8>>2]|0,c[(c[u>>2]|0)+8>>2]|0,c[(c[u>>2]|0)+12>>2]|0);oy(c[p>>2]|0,22,c[(c[u>>2]|0)+4>>2]|0)|0;break};case 12:case 14:{c[m>>2]=Wv(c[v>>2]|0)|0;c[z>>2]=Wv(c[v>>2]|0)|0;Tv(c[p>>2]|0,48,c[(c[x>>2]|0)+8>>2]|0,c[(c[x>>2]|0)+12>>2]|0,c[m>>2]|0)|0;Qv(c[p>>2]|0,69,c[(c[u>>2]|0)+4>>2]|0,c[z>>2]|0)|0;Tv(c[p>>2]|0,70,c[(c[u>>2]|0)+4>>2]|0,c[m>>2]|0,c[z>>2]|0)|0;gf(c[p>>2]|0,8);Xv(c[v>>2]|0,c[z>>2]|0);Xv(c[v>>2]|0,c[m>>2]|0);break};case 10:{eE(c[v>>2]|0,c[(c[x>>2]|0)+8>>2]|0,c[(c[u>>2]|0)+4>>2]|0,1);break};default:{Qv(c[p>>2]|0,35,c[(c[x>>2]|0)+8>>2]|0,c[(c[x>>2]|0)+12>>2]|0)|0;Az(c[v>>2]|0,c[(c[x>>2]|0)+8>>2]|0,c[(c[x>>2]|0)+12>>2]|0)}}if((c[(c[o>>2]|0)+8>>2]|0)!=0){Tv(c[p>>2]|0,136,c[(c[o>>2]|0)+8>>2]|0,c[q>>2]|0,-1)|0}$y(c[p>>2]|0,c[r>>2]|0);oy(c[p>>2]|0,18,c[s>>2]|0)|0;c[y>>2]=c[t>>2];b=c[y>>2]|0;i=n;return b|0}function CE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;j=f+16|0;h=f;k=f+4|0;l=f+8|0;g=f+12|0;c[j>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;if((c[h>>2]|0)==0){i=f;return}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[c[h>>2]>>2]|0)){break}a=DE(c[j>>2]|0,c[(c[(c[h>>2]|0)+4>>2]|0)+((c[g>>2]|0)*20|0)>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;c[(c[(c[h>>2]|0)+4>>2]|0)+((c[g>>2]|0)*20|0)>>2]=a;c[g>>2]=(c[g>>2]|0)+1}i=f;return}function DE(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+32|0;k=n+20|0;q=n;l=n+4|0;j=n+8|0;m=n+12|0;p=n+16|0;c[q>>2]=e;c[l>>2]=f;c[j>>2]=g;c[m>>2]=h;if((c[l>>2]|0)==0){c[k>>2]=0;e=c[k>>2]|0;i=n;return e|0}do{if((d[c[l>>2]>>0]|0)==154){if((c[(c[l>>2]|0)+28>>2]|0)==(c[j>>2]|0)){if((b[(c[l>>2]|0)+32>>1]|0)<0){a[c[l>>2]>>0]=101;break}else{c[p>>2]=hx(c[q>>2]|0,c[(c[(c[m>>2]|0)+4>>2]|0)+((b[(c[l>>2]|0)+32>>1]|0)*20|0)>>2]|0,0)|0;gu(c[q>>2]|0,c[l>>2]|0);c[l>>2]=c[p>>2];break}}else{o=8}}else{o=8}}while(0);do{if((o|0)==8){p=DE(c[q>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[j>>2]|0,c[m>>2]|0)|0;c[(c[l>>2]|0)+12>>2]=p;p=DE(c[q>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[j>>2]|0,c[m>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=p;p=c[q>>2]|0;o=(c[l>>2]|0)+20|0;if((c[(c[l>>2]|0)+4>>2]&2048|0)!=0){EE(p,c[o>>2]|0,c[j>>2]|0,c[m>>2]|0);break}else{CE(p,c[o>>2]|0,c[j>>2]|0,c[m>>2]|0);break}}}while(0);c[k>>2]=c[l>>2];e=c[k>>2]|0;i=n;return e|0}function EE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;h=l+24|0;n=l;k=l+4|0;f=l+8|0;m=l+12|0;j=l+16|0;g=l+20|0;c[h>>2]=a;c[n>>2]=b;c[k>>2]=d;c[f>>2]=e;if((c[n>>2]|0)==0){i=l;return}CE(c[h>>2]|0,c[c[n>>2]>>2]|0,c[k>>2]|0,c[f>>2]|0);CE(c[h>>2]|0,c[(c[n>>2]|0)+40>>2]|0,c[k>>2]|0,c[f>>2]|0);CE(c[h>>2]|0,c[(c[n>>2]|0)+48>>2]|0,c[k>>2]|0,c[f>>2]|0);a=DE(c[h>>2]|0,c[(c[n>>2]|0)+44>>2]|0,c[k>>2]|0,c[f>>2]|0)|0;c[(c[n>>2]|0)+44>>2]=a;a=DE(c[h>>2]|0,c[(c[n>>2]|0)+36>>2]|0,c[k>>2]|0,c[f>>2]|0)|0;c[(c[n>>2]|0)+36>>2]=a;EE(c[h>>2]|0,c[(c[n>>2]|0)+52>>2]|0,c[k>>2]|0,c[f>>2]|0);c[m>>2]=c[(c[n>>2]|0)+32>>2];if((c[m>>2]|0)==0){i=l;return}c[g>>2]=c[c[m>>2]>>2];c[j>>2]=(c[m>>2]|0)+8;while(1){if((c[g>>2]|0)<=0){break}EE(c[h>>2]|0,c[(c[j>>2]|0)+20>>2]|0,c[k>>2]|0,c[f>>2]|0);c[g>>2]=(c[g>>2]|0)+ -1;c[j>>2]=(c[j>>2]|0)+72}i=l;return}function FE(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;l=i;i=i+32|0;k=l+24|0;m=l;h=l+4|0;g=l+8|0;n=l+12|0;o=l+16|0;j=l+20|0;c[k>>2]=b;c[m>>2]=e;c[h>>2]=f;c[g>>2]=c[c[k>>2]>>2];if((c[(c[g>>2]|0)+24>>2]&524288|0)==0){i=l;return}if((a[(c[h>>2]|0)+44>>0]&16|0)!=0){i=l;return}if((c[(c[h>>2]|0)+12>>2]|0)!=0){i=l;return}c[n>>2]=0;c[o>>2]=Ov(c[k>>2]|0)|0;do{if((zw(c[h>>2]|0)|0)==0){c[j>>2]=c[(c[h>>2]|0)+16>>2];while(1){if((c[j>>2]|0)==0){break}if((d[(c[j>>2]|0)+24>>0]|0|0)!=0){break}if((c[(c[g>>2]|0)+24>>2]&16777216|0)!=0){break}c[j>>2]=c[(c[j>>2]|0)+4>>2]}if((c[j>>2]|0)!=0){c[n>>2]=cz(c[o>>2]|0)|0;Qv(c[o>>2]|0,131,1,c[n>>2]|0)|0;break}else{i=l;return}}}while(0);a[(c[k>>2]|0)+438>>0]=1;b=c[k>>2]|0;Yu(b,cy(c[g>>2]|0,c[m>>2]|0,0)|0,0);a[(c[k>>2]|0)+438>>0]=0;if((c[(c[g>>2]|0)+24>>2]&16777216|0)==0){b=c[o>>2]|0;Qv(b,131,0,(sy(c[o>>2]|0)|0)+2|0)|0;_y(c[k>>2]|0,787,2,0,-2,4)}if((c[n>>2]|0)==0){i=l;return}$y(c[o>>2]|0,c[n>>2]|0);i=l;return}function GE(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=i;i=i+48|0;o=m;h=m+36|0;n=m+32|0;k=m+28|0;p=m+40|0;j=m+16|0;l=m+12|0;q=m+20|0;g=m+24|0;c[h>>2]=b;c[n>>2]=d;c[k>>2]=e;c[p>>2]=f;c[l>>2]=c[c[h>>2]>>2];c[g>>2]=(c[(c[l>>2]|0)+16>>2]|0)+(c[k>>2]<<4);c[j>>2]=Ov(c[h>>2]|0)|0;$v(c[h>>2]|0,1,c[k>>2]|0);if((a[(c[n>>2]|0)+44>>0]&16|0)!=0){Yv(c[j>>2]|0,141)|0}c[q>>2]=gw(c[h>>2]|0,c[n>>2]|0)|0;while(1){if((c[q>>2]|0)==0){break}fA(c[h>>2]|0,c[q>>2]|0);c[q>>2]=c[(c[q>>2]|0)+32>>2]}if((a[(c[n>>2]|0)+44>>0]&8|0)!=0){b=c[h>>2]|0;d=c[c[n>>2]>>2]|0;c[o>>2]=c[c[g>>2]>>2];c[o+4>>2]=d;Nv(b,32064,o)}b=c[h>>2]|0;e=(c[k>>2]|0)==1?21432:21456;d=c[c[n>>2]>>2]|0;c[o>>2]=c[c[g>>2]>>2];c[o+4>>2]=e;c[o+8>>2]=d;Nv(b,32112,o);if((c[p>>2]|0)==0){if((a[(c[n>>2]|0)+44>>0]&16|0)==0){HE(c[h>>2]|0,c[n>>2]|0)}}if((a[(c[n>>2]|0)+44>>0]&16|0)==0){e=c[j>>2]|0;d=c[k>>2]|0;b=c[n>>2]|0;b=c[b>>2]|0;Sv(e,121,d,0,0,b,0)|0;b=c[h>>2]|0;d=c[k>>2]|0;Pv(b,d);d=c[l>>2]|0;b=c[k>>2]|0;IE(d,b);i=m;return}Sv(c[j>>2]|0,148,c[k>>2]|0,0,0,c[c[n>>2]>>2]|0,0)|0;e=c[j>>2]|0;d=c[k>>2]|0;b=c[n>>2]|0;b=c[b>>2]|0;Sv(e,121,d,0,0,b,0)|0;b=c[h>>2]|0;d=c[k>>2]|0;Pv(b,d);d=c[l>>2]|0;b=c[k>>2]|0;IE(d,b);i=m;return}function HE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;m=k+28|0;d=k;l=k+4|0;h=k+8|0;j=k+12|0;f=k+16|0;g=k+20|0;n=k+24|0;c[m>>2]=a;c[d>>2]=b;c[l>>2]=c[(c[d>>2]|0)+32>>2];c[h>>2]=0;while(1){c[f>>2]=0;if((c[h>>2]|0)==0){e=4}else{if((c[l>>2]|0)<(c[h>>2]|0)){e=4}}if((e|0)==4){e=0;c[f>>2]=c[l>>2]}c[j>>2]=c[(c[d>>2]|0)+8>>2];while(1){if((c[j>>2]|0)==0){break}c[g>>2]=c[(c[j>>2]|0)+44>>2];if((c[h>>2]|0)==0){e=9}else{if((c[g>>2]|0)<(c[h>>2]|0)){e=9}}if((e|0)==9){e=0;if((c[g>>2]|0)>(c[f>>2]|0)){c[f>>2]=c[g>>2]}}c[j>>2]=c[(c[j>>2]|0)+20>>2]}if((c[f>>2]|0)==0){break}c[n>>2]=ef(c[c[m>>2]>>2]|0,c[(c[d>>2]|0)+68>>2]|0)|0;PA(c[m>>2]|0,c[f>>2]|0,c[n>>2]|0);c[h>>2]=c[f>>2]}i=k;return}function IE(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f;j=f+4|0;k=f+8|0;c[g>>2]=a;c[h>>2]=d;if((b[(c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]|0)+78>>1]&2|0)!=2){i=f;return}c[j>>2]=c[(c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]|0)+16>>2];while(1){if((c[j>>2]|0)==0){break}c[k>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[k>>2]|0)+12>>2]|0)!=0){JE(c[g>>2]|0,c[k>>2]|0);c[(c[k>>2]|0)+4>>2]=0;b[(c[k>>2]|0)+38>>1]=0}c[j>>2]=c[c[j>>2]>>2]}a=(c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]|0)+78|0;b[a>>1]=(e[a>>1]|0)&-3;i=f;return}function JE(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+12|0;f=e;h=e+4|0;j=e+8|0;c[g>>2]=a;c[f>>2]=d;a=c[(c[f>>2]|0)+4>>2]|0;c[j>>2]=a;if((a|0)==0){i=e;return}c[h>>2]=0;while(1){d=c[g>>2]|0;if((c[h>>2]|0)>=(b[(c[f>>2]|0)+38>>1]|0)){break}cc(d,c[c[j>>2]>>2]|0);gu(c[g>>2]|0,c[(c[j>>2]|0)+4>>2]|0);cc(c[g>>2]|0,c[(c[j>>2]|0)+8>>2]|0);cc(c[g>>2]|0,c[(c[j>>2]|0)+12>>2]|0);cc(c[g>>2]|0,c[(c[j>>2]|0)+16>>2]|0);c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+24}cc(d,c[(c[f>>2]|0)+4>>2]|0);i=e;return}function KE(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+144|0;l=h+132|0;k=h+92|0;n=h+80|0;o=h+84|0;j=h+88|0;p=h;m=h+96|0;q=h+128|0;c[l>>2]=b;c[k>>2]=d;c[n>>2]=e;c[o>>2]=f;c[j>>2]=g;c[m+0>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[m+20>>2]=0;c[m+24>>2]=0;c[m+28>>2]=0;f=p+0|0;g=f+80|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[p>>2]=1;c[p+16>>2]=c[c[k>>2]>>2];c[p+24>>2]=c[k>>2];c[p+48>>2]=-1;c[m>>2]=c[l>>2];c[m+4>>2]=p;a[m+28>>0]=c[n>>2];if((bx(m,c[o>>2]|0)|0)!=0){i=h;return}if((c[j>>2]|0)==0){i=h;return}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[c[j>>2]>>2]|0)){j=7;break}if((bx(m,c[(c[(c[j>>2]|0)+4>>2]|0)+((c[q>>2]|0)*20|0)>>2]|0)|0)!=0){j=7;break}c[q>>2]=(c[q>>2]|0)+1}if((j|0)==7){i=h;return}}function LE(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;g=i;i=i+16|0;f=g+12|0;j=g;k=g+4|0;h=g+8|0;c[j>>2]=a;c[k>>2]=d;c[h>>2]=e;while(1){a=c[k>>2]|0;c[k>>2]=a+ -1;if((a|0)<=0){e=5;break}d=c[h>>2]|0;a=c[j>>2]|0;c[j>>2]=a+2;if((d|0)==(b[a>>1]|0)){e=4;break}}if((e|0)==4){c[f>>2]=1;a=c[f>>2]|0;i=g;return a|0}else if((e|0)==5){c[f>>2]=0;a=c[f>>2]|0;i=g;return a|0}return 0}function ME(a){a=a|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;g=h+12|0;f=h;k=h+4|0;j=h+8|0;l=h+16|0;c[g>>2]=a;c[f>>2]=0;c[j>>2]=c[(c[(c[g>>2]|0)+12>>2]|0)+4>>2];c[k>>2]=0;while(1){if((c[k>>2]|0)>=(e[(c[g>>2]|0)+52>>1]|0)){break}b[l>>1]=b[(c[(c[g>>2]|0)+4>>2]|0)+(c[k>>2]<<1)>>1]|0;if((b[l>>1]|0)<0){a=1}else{a=d[(c[j>>2]|0)+((b[(c[(c[g>>2]|0)+4>>2]|0)+(c[k>>2]<<1)>>1]|0)*24|0)+22>>0]|0}c[f>>2]=(c[f>>2]|0)+a;c[k>>2]=(c[k>>2]|0)+1}a=Kw(c[f>>2]<<2,0)|0;b[(c[g>>2]|0)+48>>1]=a;i=h;return}function NE(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;OE(c[f>>2]|0,c[g>>2]|0);if((c[f>>2]|0)==0){e=3}else{if((c[(c[f>>2]|0)+512>>2]|0)==0){e=3}}if((e|0)==3){Ch(c[(c[g>>2]|0)+40>>2]|0)}gu(c[f>>2]|0,c[(c[g>>2]|0)+36>>2]|0);cc(c[f>>2]|0,c[(c[g>>2]|0)+16>>2]|0);if(((d[(c[g>>2]|0)+55>>0]|0)>>>4&1|0)==0){b=c[f>>2]|0;a=c[g>>2]|0;cc(b,a);i=h;return}cc(c[f>>2]|0,c[(c[g>>2]|0)+32>>2]|0);b=c[f>>2]|0;a=c[g>>2]|0;cc(b,a);i=h;return}function OE(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return}function PE(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Lz(c[d>>2]|0,2)|0;i=b;return a|0}function QE(f,g){f=f|0;g=g|0;var h=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;p=i;i=i+48|0;r=p+40|0;q=p+36|0;l=p+32|0;m=p+28|0;o=p+24|0;n=p+20|0;t=p+12|0;h=p+8|0;u=p+4|0;s=p;k=p+16|0;c[r>>2]=f;c[q>>2]=g;c[h>>2]=c[c[r>>2]>>2];c[u>>2]=c[(c[r>>2]|0)+8>>2];if((c[(c[r>>2]|0)+416>>2]|0)!=0){a[(Kz(c[u>>2]|0,c[(c[r>>2]|0)+416>>2]|0)|0)>>0]=117}if((c[(c[r>>2]|0)+420>>2]|0)!=0){a[(Kz(c[u>>2]|0,c[(c[r>>2]|0)+420>>2]|0)|0)>>0]=16}do{if((b[(c[q>>2]|0)+36>>1]|0)>=0){c[s>>2]=Pu(c[r>>2]|0,0,0)|0;if((c[s>>2]|0)==0){i=p;return}f=pe(c[c[r>>2]>>2]|0,c[(c[(c[q>>2]|0)+4>>2]|0)+((b[(c[q>>2]|0)+36>>1]|0)*24|0)>>2]|0)|0;c[(c[(c[s>>2]|0)+4>>2]|0)+4>>2]=f;a[(c[(c[s>>2]|0)+4>>2]|0)+12>>0]=a[(c[r>>2]|0)+448>>0]|0;c[m>>2]=Fu(c[r>>2]|0,0,0,0,c[s>>2]|0,d[(c[q>>2]|0)+45>>0]|0,0,0,0,0)|0;if((c[m>>2]|0)==0){i=p;return}else{f=(c[m>>2]|0)+55|0;a[f>>0]=a[f>>0]&-4|2;b[(c[q>>2]|0)+36>>1]=-1;break}}else{c[m>>2]=Dy(c[q>>2]|0)|0}}while(0);f=(c[m>>2]|0)+55|0;a[f>>0]=a[f>>0]&-33|32;c[o>>2]=e[(c[m>>2]|0)+50>>1]|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break}a[(c[(c[q>>2]|0)+4>>2]|0)+((b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]|0)*24|0)+20>>0]=1;c[n>>2]=(c[n>>2]|0)+1}f=(c[m>>2]|0)+55|0;a[f>>0]=a[f>>0]&-9|8;c[(c[m>>2]|0)+44>>2]=c[(c[q>>2]|0)+32>>2];c[l>>2]=c[(c[q>>2]|0)+8>>2];a:while(1){if((c[l>>2]|0)==0){break}b:do{if((a[(c[l>>2]|0)+55>>0]&3|0)!=2){c[k>>2]=0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break}if((LE(c[(c[l>>2]|0)+4>>2]|0,e[(c[l>>2]|0)+50>>1]|0,b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]|0)|0)==0){c[k>>2]=(c[k>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}if((c[k>>2]|0)==0){b[(c[l>>2]|0)+52>>1]=b[(c[l>>2]|0)+50>>1]|0;break}if((VE(c[h>>2]|0,c[l>>2]|0,(e[(c[l>>2]|0)+50>>1]|0)+(c[k>>2]|0)|0)|0)!=0){j=38;break a}c[n>>2]=0;c[t>>2]=e[(c[l>>2]|0)+50>>1]|0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0)){break b}if((LE(c[(c[l>>2]|0)+4>>2]|0,e[(c[l>>2]|0)+50>>1]|0,b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]|0)|0)==0){b[(c[(c[l>>2]|0)+4>>2]|0)+(c[t>>2]<<1)>>1]=b[(c[(c[m>>2]|0)+4>>2]|0)+(c[n>>2]<<1)>>1]|0;c[(c[(c[l>>2]|0)+32>>2]|0)+(c[t>>2]<<2)>>2]=c[(c[(c[m>>2]|0)+32>>2]|0)+(c[n>>2]<<2)>>2];c[t>>2]=(c[t>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}}}while(0);c[l>>2]=c[(c[l>>2]|0)+20>>2]}if((j|0)==38){i=p;return}if((c[o>>2]|0)>=(b[(c[q>>2]|0)+38>>1]|0)){b[(c[m>>2]|0)+52>>1]=b[(c[q>>2]|0)+38>>1]|0;i=p;return}if((VE(c[h>>2]|0,c[m>>2]|0,b[(c[q>>2]|0)+38>>1]|0)|0)!=0){i=p;return}c[n>>2]=0;c[t>>2]=c[o>>2];while(1){if((c[n>>2]|0)>=(b[(c[q>>2]|0)+38>>1]|0)){break}if((LE(c[(c[m>>2]|0)+4>>2]|0,c[t>>2]|0,c[n>>2]|0)|0)==0){b[(c[(c[m>>2]|0)+4>>2]|0)+(c[t>>2]<<1)>>1]=c[n>>2];c[(c[(c[m>>2]|0)+32>>2]|0)+(c[t>>2]<<2)>>2]=3640;c[t>>2]=(c[t>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}i=p;return}function RE(a){a=a|0;var e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;f=g+12|0;e=g;j=g+4|0;h=g+8|0;c[f>>2]=a;c[e>>2]=0;c[h>>2]=b[(c[f>>2]|0)+38>>1]|0;c[j>>2]=c[(c[f>>2]|0)+4>>2];while(1){if((c[h>>2]|0)<=0){break}c[e>>2]=(c[e>>2]|0)+(d[(c[j>>2]|0)+22>>0]|0);c[h>>2]=(c[h>>2]|0)+ -1;c[j>>2]=(c[j>>2]|0)+24}if((b[(c[f>>2]|0)+36>>1]|0)>=0){h=c[e>>2]|0;h=h<<2;h=Kw(h,0)|0;j=c[f>>2]|0;j=j+42|0;b[j>>1]=h;i=g;return}c[e>>2]=(c[e>>2]|0)+1;h=c[e>>2]|0;h=h<<2;h=Kw(h,0)|0;j=c[f>>2]|0;j=j+42|0;b[j>>1]=h;i=g;return}function SE(d,e){d=d|0;e=e|0;var f=0,g=0,h=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;h=i;i=i+64|0;k=h;n=h+48|0;u=h+44|0;o=h+40|0;g=h+36|0;f=h+32|0;m=h+28|0;l=h+52|0;p=h+16|0;q=h+12|0;j=h+8|0;r=h+4|0;t=h+20|0;s=h+24|0;c[u>>2]=d;c[o>>2]=e;c[m>>2]=0;c[r>>2]=c[(c[o>>2]|0)+4>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>=(b[(c[o>>2]|0)+38>>1]|0)){break}d=(TE(c[c[r>>2]>>2]|0)|0)+5|0;c[m>>2]=(c[m>>2]|0)+d;c[g>>2]=(c[g>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+24}d=TE(c[c[o>>2]>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+d;if((c[m>>2]|0)<50){c[p>>2]=1784;c[q>>2]=16312;c[j>>2]=30416}else{c[p>>2]=33336;c[q>>2]=33344;c[j>>2]=33352}c[m>>2]=(c[m>>2]|0)+(35+((b[(c[o>>2]|0)+38>>1]|0)*6|0));c[l>>2]=$e(0,c[m>>2]|0)|0;if((c[l>>2]|0)==0){a[(c[u>>2]|0)+64>>0]=1;c[n>>2]=0;d=c[n>>2]|0;i=h;return d|0}yc(c[m>>2]|0,c[l>>2]|0,33360,k)|0;c[f>>2]=Ub(c[l>>2]|0)|0;UE(c[l>>2]|0,f,c[c[o>>2]>>2]|0);d=c[f>>2]|0;c[f>>2]=d+1;a[(c[l>>2]|0)+d>>0]=40;c[r>>2]=c[(c[o>>2]|0)+4>>2];c[g>>2]=0;while(1){e=(c[m>>2]|0)-(c[f>>2]|0)|0;u=(c[l>>2]|0)+(c[f>>2]|0)|0;if((c[g>>2]|0)>=(b[(c[o>>2]|0)+38>>1]|0)){break}yc(e,u,c[p>>2]|0,k)|0;d=Ub((c[l>>2]|0)+(c[f>>2]|0)|0)|0;c[f>>2]=(c[f>>2]|0)+d;c[p>>2]=c[q>>2];UE(c[l>>2]|0,f,c[c[r>>2]>>2]|0);c[s>>2]=c[33376+((a[(c[r>>2]|0)+21>>0]|0)-97<<2)>>2];c[t>>2]=Ub(c[s>>2]|0)|0;fL((c[l>>2]|0)+(c[f>>2]|0)|0,c[s>>2]|0,c[t>>2]|0)|0;c[f>>2]=(c[f>>2]|0)+(c[t>>2]|0);c[g>>2]=(c[g>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+24}c[k>>2]=c[j>>2];yc(e,u,1768,k)|0;c[n>>2]=c[l>>2];d=c[n>>2]|0;i=h;return d|0}function TE(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=b;c[e>>2]=0;while(1){if((a[c[f>>2]>>0]|0)==0){break}if((a[c[f>>2]>>0]|0)==34){c[e>>2]=(c[e>>2]|0)+1}c[e>>2]=(c[e>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+1}i=d;return(c[e>>2]|0)+2|0}function UE(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;h=k+24|0;j=k;o=k+4|0;m=k+8|0;l=k+12|0;n=k+16|0;g=k+20|0;c[h>>2]=b;c[j>>2]=e;c[o>>2]=f;c[m>>2]=c[o>>2];c[l>>2]=c[c[j>>2]>>2];c[n>>2]=0;while(1){if((a[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)==0){break}if((a[136+(d[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)>>0]&6|0)==0){if((d[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)!=95){break}}c[n>>2]=(c[n>>2]|0)+1}if((a[136+(d[c[m>>2]>>0]|0)>>0]&4|0)!=0){f=1}else{if((Jg(c[m>>2]|0,c[n>>2]|0)|0)!=27){f=1}else{if((d[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)!=0){f=1}else{f=(c[n>>2]|0)==0}}}c[g>>2]=f&1;if((c[g>>2]|0)!=0){o=c[l>>2]|0;c[l>>2]=o+1;a[(c[h>>2]|0)+o>>0]=34}c[n>>2]=0;while(1){if((a[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)==0){break}b=a[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0;o=c[l>>2]|0;c[l>>2]=o+1;a[(c[h>>2]|0)+o>>0]=b;if((d[(c[m>>2]|0)+(c[n>>2]|0)>>0]|0)==34){o=c[l>>2]|0;c[l>>2]=o+1;a[(c[h>>2]|0)+o>>0]=34}c[n>>2]=(c[n>>2]|0)+1}if((c[g>>2]|0)==0){b=c[l>>2]|0;o=c[h>>2]|0;b=o+b|0;a[b>>0]=0;b=c[l>>2]|0;o=c[j>>2]|0;c[o>>2]=b;i=k;return}b=c[l>>2]|0;c[l>>2]=b+1;a[(c[h>>2]|0)+b>>0]=34;b=c[l>>2]|0;o=c[h>>2]|0;b=o+b|0;a[b>>0]=0;b=c[l>>2]|0;o=c[j>>2]|0;c[o>>2]=b;i=k;return}function VE(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+20|0;o=h;l=h+4|0;m=h+8|0;k=h+12|0;n=h+16|0;c[o>>2]=d;c[l>>2]=f;c[m>>2]=g;if((e[(c[l>>2]|0)+52>>1]|0|0)>=(c[m>>2]|0)){c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}c[n>>2]=(c[m>>2]|0)*7;c[k>>2]=ve(c[o>>2]|0,c[n>>2]|0)|0;if((c[k>>2]|0)==0){c[j>>2]=7;d=c[j>>2]|0;i=h;return d|0}else{fL(c[k>>2]|0,c[(c[l>>2]|0)+32>>2]|0,(e[(c[l>>2]|0)+52>>1]|0)<<2|0)|0;c[(c[l>>2]|0)+32>>2]=c[k>>2];c[k>>2]=(c[k>>2]|0)+(c[m>>2]<<2);fL(c[k>>2]|0,c[(c[l>>2]|0)+4>>2]|0,(e[(c[l>>2]|0)+52>>1]|0)<<1|0)|0;c[(c[l>>2]|0)+4>>2]=c[k>>2];c[k>>2]=(c[k>>2]|0)+(c[m>>2]<<1);fL(c[k>>2]|0,c[(c[l>>2]|0)+28>>2]|0,e[(c[l>>2]|0)+52>>1]|0|0)|0;c[(c[l>>2]|0)+28>>2]=c[k>>2];b[(c[l>>2]|0)+52>>1]=c[m>>2];d=(c[l>>2]|0)+55|0;a[d>>0]=a[d>>0]&-17|16;c[j>>2]=0;d=c[j>>2]|0;i=h;return d|0}return 0}function WE(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;f=b+16|0;e=b;j=b+4|0;g=b+8|0;h=b+12|0;c[f>>2]=a;c[j>>2]=Ov(c[f>>2]|0)|0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+396>>2]|0)){break}c[g>>2]=(c[(c[f>>2]|0)+400>>2]|0)+(c[e>>2]<<4);c[h>>2]=c[c[g>>2]>>2];Sv(c[j>>2]|0,140,c[h>>2]|0,c[(c[g>>2]|0)+4>>2]|0,d[(c[g>>2]|0)+8>>0]|0,c[(c[g>>2]|0)+12>>2]|0,-2)|0;c[e>>2]=(c[e>>2]|0)+1}i=b;return}function XE(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+32|0;h=b+24|0;d=b;e=b+4|0;f=b+8|0;g=b+12|0;k=b+16|0;j=b+20|0;c[h>>2]=a;c[e>>2]=c[c[h>>2]>>2];c[j>>2]=c[(c[h>>2]|0)+8>>2];c[d>>2]=c[(c[h>>2]|0)+404>>2];while(1){if((c[d>>2]|0)==0){break}c[f>>2]=(c[(c[e>>2]|0)+16>>2]|0)+(c[(c[d>>2]|0)+8>>2]<<4);c[g>>2]=c[(c[d>>2]|0)+12>>2];qy(c[h>>2]|0,0,c[(c[d>>2]|0)+8>>2]|0,c[(c[(c[f>>2]|0)+12>>2]|0)+72>>2]|0,52);Tv(c[j>>2]|0,28,0,c[g>>2]|0,(c[g>>2]|0)+1|0)|0;c[k>>2]=sy(c[j>>2]|0)|0;Sv(c[j>>2]|0,97,0,(c[g>>2]|0)-1|0,0,c[c[(c[d>>2]|0)+4>>2]>>2]|0,0)|0;Qv(c[j>>2]|0,105,0,(c[k>>2]|0)+9|0)|0;Tv(c[j>>2]|0,46,0,0,c[g>>2]|0)|0;Tv(c[j>>2]|0,78,(c[g>>2]|0)-1|0,(c[k>>2]|0)+7|0,c[g>>2]|0)|0;gf(c[j>>2]|0,8);Qv(c[j>>2]|0,100,0,(c[g>>2]|0)+1|0)|0;Tv(c[j>>2]|0,46,0,1,c[g>>2]|0)|0;Qv(c[j>>2]|0,16,0,(c[k>>2]|0)+9|0)|0;Qv(c[j>>2]|0,9,0,(c[k>>2]|0)+2|0)|0;Qv(c[j>>2]|0,25,0,c[g>>2]|0)|0;Yv(c[j>>2]|0,58)|0;c[d>>2]=c[c[d>>2]>>2]}i=b;return}function YE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;e=g;f=g+12|0;d=g+8|0;c[f>>2]=a;c[g+4>>2]=b;c[d>>2]=c[(c[f>>2]|0)+8>>2];a=c[f>>2]|0;c[a>>2]=(c[a>>2]|0)+ -1;while(1){if((c[c[f>>2]>>2]|0)<0){break}ju(c[f>>2]|0)|0}bf(c[d>>2]|0,33616,e);c[(c[f>>2]|0)+8>>2]=c[d>>2];i=g;return}function ZE(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;r=i;i=i+80|0;o=r;l=r+72|0;s=r+68|0;B=r+64|0;t=r+60|0;F=r+56|0;z=r+52|0;D=r+48|0;m=r+44|0;n=r+40|0;p=r+76|0;u=r+16|0;G=r+12|0;E=r+4|0;A=r+8|0;C=r+32|0;w=r+20|0;v=r+24|0;x=r+28|0;q=r+36|0;c[l>>2]=b;c[s>>2]=e;c[B>>2]=f;c[t>>2]=g;c[F>>2]=h;c[z>>2]=j;c[D>>2]=k;c[n>>2]=0;c[p>>2]=0;c[m>>2]=ve(c[l>>2]|0,536)|0;if((c[m>>2]|0)==0){c[p>>2]=7;b=c[m>>2]|0;rf(b);b=c[l>>2]|0;e=c[m>>2]|0;cc(b,e);e=c[l>>2]|0;b=c[p>>2]|0;b=Bd(e,b)|0;c[p>>2]=b;b=c[p>>2]|0;i=r;return b|0}c[(c[m>>2]|0)+476>>2]=c[F>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[(c[l>>2]|0)+20>>2]|0)){break}c[G>>2]=c[(c[(c[l>>2]|0)+16>>2]|0)+(c[u>>2]<<4)+4>>2];if((c[G>>2]|0)!=0){c[p>>2]=_E(c[G>>2]|0)|0;if((c[p>>2]|0)!=0){y=7;break}}c[u>>2]=(c[u>>2]|0)+1}if((y|0)==7){c[E>>2]=c[(c[(c[l>>2]|0)+16>>2]|0)+(c[u>>2]<<4)>>2];e=c[l>>2]|0;b=c[p>>2]|0;c[o>>2]=c[E>>2];Rc(e,b,37368,o);b=c[m>>2]|0;rf(b);b=c[l>>2]|0;e=c[m>>2]|0;cc(b,e);e=c[l>>2]|0;b=c[p>>2]|0;b=Bd(e,b)|0;c[p>>2]=b;b=c[p>>2]|0;i=r;return b|0}Ar(c[l>>2]|0);c[c[m>>2]>>2]=c[l>>2];c[(c[m>>2]|0)+424>>2]=0;do{if((c[B>>2]|0)>=0){if((c[B>>2]|0)!=0){if((a[(c[s>>2]|0)+((c[B>>2]|0)-1)>>0]|0)==0){y=17;break}}c[C>>2]=c[(c[l>>2]|0)+92>>2];f=c[l>>2]|0;if((c[B>>2]|0)>(c[C>>2]|0)){Rc(f,18,37400,o);c[p>>2]=Bd(c[l>>2]|0,18)|0;b=c[m>>2]|0;rf(b);b=c[l>>2]|0;e=c[m>>2]|0;cc(b,e);e=c[l>>2]|0;b=c[p>>2]|0;b=Bd(e,b)|0;c[p>>2]=b;b=c[p>>2]|0;i=r;return b|0}c[A>>2]=ft(f,c[s>>2]|0,c[B>>2]|0)|0;if((c[A>>2]|0)!=0){Mf(c[m>>2]|0,c[A>>2]|0,n)|0;cc(c[l>>2]|0,c[A>>2]|0);c[(c[m>>2]|0)+480>>2]=(c[s>>2]|0)+((c[(c[m>>2]|0)+480>>2]|0)-(c[A>>2]|0));break}else{c[(c[m>>2]|0)+480>>2]=(c[s>>2]|0)+(c[B>>2]|0);break}}else{y=17}}while(0);if((y|0)==17){Mf(c[m>>2]|0,c[s>>2]|0,n)|0}if((a[(c[l>>2]|0)+64>>0]|0)!=0){c[(c[m>>2]|0)+12>>2]=7}if((c[(c[m>>2]|0)+12>>2]|0)==101){c[(c[m>>2]|0)+12>>2]=0}if((a[(c[m>>2]|0)+17>>0]|0)!=0){$E(c[m>>2]|0)}if((a[(c[l>>2]|0)+64>>0]|0)!=0){c[(c[m>>2]|0)+12>>2]=7}if((c[D>>2]|0)!=0){c[c[D>>2]>>2]=c[(c[m>>2]|0)+480>>2]}c[p>>2]=c[(c[m>>2]|0)+12>>2];a:do{if((c[p>>2]|0)==0){if((c[(c[m>>2]|0)+8>>2]|0)!=0){if((d[(c[m>>2]|0)+450>>0]|0)!=0){A=c[(c[m>>2]|0)+8>>2]|0;if((d[(c[m>>2]|0)+450>>0]|0)==2){rA(A,4);c[w>>2]=8;c[v>>2]=12}else{rA(A,8);c[w>>2]=0;c[v>>2]=8}c[u>>2]=c[w>>2];while(1){if((c[u>>2]|0)>=(c[v>>2]|0)){break a}sA(c[(c[m>>2]|0)+8>>2]|0,(c[u>>2]|0)-(c[w>>2]|0)|0,0,c[37424+(c[u>>2]<<2)>>2]|0,0)|0;c[u>>2]=(c[u>>2]|0)+1}}}}}while(0);if((d[(c[l>>2]|0)+137>>0]|0)==0){c[x>>2]=c[(c[m>>2]|0)+8>>2];aF(c[x>>2]|0,c[s>>2]|0,(c[(c[m>>2]|0)+480>>2]|0)-(c[s>>2]|0)|0,c[t>>2]|0)}do{if((c[(c[m>>2]|0)+8>>2]|0)!=0){if((c[p>>2]|0)==0){if((d[(c[l>>2]|0)+64>>0]|0)==0){y=43;break}}Ad(c[(c[m>>2]|0)+8>>2]|0)|0}else{y=43}}while(0);if((y|0)==43){c[c[z>>2]>>2]=c[(c[m>>2]|0)+8>>2]}t=c[l>>2]|0;s=c[p>>2]|0;if((c[n>>2]|0)!=0){c[o>>2]=c[n>>2];Rc(t,s,1768,o);cc(c[l>>2]|0,c[n>>2]|0)}else{Rc(t,s,0,o)}while(1){if((c[(c[m>>2]|0)+528>>2]|0)==0){break}c[q>>2]=c[(c[m>>2]|0)+528>>2];c[(c[m>>2]|0)+528>>2]=c[(c[q>>2]|0)+4>>2];cc(c[l>>2]|0,c[q>>2]|0)}b=c[m>>2]|0;rf(b);b=c[l>>2]|0;e=c[m>>2]|0;cc(b,e);e=c[l>>2]|0;b=c[p>>2]|0;b=Bd(e,b)|0;c[p>>2]=b;b=c[p>>2]|0;i=r;return b|0}function _E(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;Uc(c[e>>2]|0);c[b>>2]=bF(c[e>>2]|0,1,1)|0;i=d;return c[b>>2]|0}function $E(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;l=d+24|0;g=d;h=d+4|0;k=d+8|0;f=d+12|0;j=d+16|0;e=d+20|0;c[l>>2]=b;c[g>>2]=c[c[l>>2]>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[g>>2]|0)+20>>2]|0)){b=14;break}c[j>>2]=0;c[e>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+4>>2];if((c[e>>2]|0)!=0){if((Yc(c[e>>2]|0)|0)==0){c[k>>2]=Wc(c[e>>2]|0,0)|0;if((c[k>>2]|0)==7|(c[k>>2]|0)==3082){a[(c[g>>2]|0)+64>>0]=1}if((c[k>>2]|0)!=0){b=14;break}c[j>>2]=1}Xc(c[e>>2]|0,1,f);if((c[f>>2]|0)!=(c[c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<4)+12>>2]>>2]|0)){Hy(c[g>>2]|0,c[h>>2]|0);c[(c[l>>2]|0)+12>>2]=17}if((c[j>>2]|0)!=0){Ny(c[e>>2]|0)|0}}c[h>>2]=(c[h>>2]|0)+1}if((b|0)==14){i=d;return}}function aF(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;h=g+12|0;j=g;k=g+4|0;l=g+8|0;c[h>>2]=a;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;if((c[h>>2]|0)==0){i=g;return}a=ft(c[c[h>>2]>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;c[(c[h>>2]|0)+168>>2]=a;a=(c[h>>2]|0)+88|0;b[a>>1]=b[a>>1]&-1025|(c[l>>2]&255&1)<<10&65535;i=g;return}function bF(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+32|0;l=o+16|0;p=o;j=o+4|0;n=o+20|0;q=o+12|0;m=o+8|0;c[p>>2]=f;c[j>>2]=g;a[n>>0]=h;c[q>>2]=c[(c[p>>2]|0)+4>>2];if((a[(c[p>>2]|0)+9>>0]|0)==0){c[l>>2]=0;f=c[l>>2]|0;i=o;return f|0}if((c[(c[q>>2]|0)+76>>2]|0)!=(c[p>>2]|0)){if((b[(c[q>>2]|0)+22>>1]&32|0)!=0){c[l>>2]=262;f=c[l>>2]|0;i=o;return f|0}}c[m>>2]=c[(c[q>>2]|0)+72>>2];while(1){if((c[m>>2]|0)==0){k=15;break}if((c[c[m>>2]>>2]|0)!=(c[p>>2]|0)){if((c[(c[m>>2]|0)+4>>2]|0)==(c[j>>2]|0)){if((d[(c[m>>2]|0)+8>>0]|0)!=(d[n>>0]|0)){break}}}c[m>>2]=c[(c[m>>2]|0)+12>>2]}if((k|0)==15){c[l>>2]=0;f=c[l>>2]|0;i=o;return f|0}if((d[n>>0]|0)==2){f=(c[q>>2]|0)+22|0;b[f>>1]=e[f>>1]|64}c[l>>2]=262;f=c[l>>2]|0;i=o;return f|0}function cF(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+224|0;g=f+220|0;h=f+208|0;l=f;k=f+212|0;j=f+216|0;c[g>>2]=a;c[h>>2]=d;fL(l|0,c[g>>2]|0,208)|0;fL(c[g>>2]|0,c[h>>2]|0,208)|0;fL(c[h>>2]|0,l|0,208)|0;c[k>>2]=c[(c[g>>2]|0)+52>>2];c[(c[g>>2]|0)+52>>2]=c[(c[h>>2]|0)+52>>2];c[(c[h>>2]|0)+52>>2]=c[k>>2];c[k>>2]=c[(c[g>>2]|0)+48>>2];c[(c[g>>2]|0)+48>>2]=c[(c[h>>2]|0)+48>>2];c[(c[h>>2]|0)+48>>2]=c[k>>2];c[j>>2]=c[(c[g>>2]|0)+168>>2];c[(c[g>>2]|0)+168>>2]=c[(c[h>>2]|0)+168>>2];c[(c[h>>2]|0)+168>>2]=c[j>>2];a=(c[h>>2]|0)+88|0;b[a>>1]=b[a>>1]&-1025|((e[(c[g>>2]|0)+88>>1]|0)>>>10&1&1)<<10&65535;i=f;return}function dF(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[(c[d>>2]|0)+80>>2]=0;i=b;return}function eF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;f=k+20|0;d=k;g=k+4|0;h=k+8|0;l=k+12|0;j=k+16|0;c[f>>2]=a;c[d>>2]=b;c[g>>2]=c[(c[d>>2]|0)+16>>2];while(1){if((c[g>>2]|0)==0){break}if((c[f>>2]|0)!=0){if((c[(c[f>>2]|0)+512>>2]|0)==0){e=5}}else{e=5}if((e|0)==5){e=0;b=c[(c[g>>2]|0)+12>>2]|0;if((c[(c[g>>2]|0)+16>>2]|0)!=0){c[(c[(c[g>>2]|0)+16>>2]|0)+12>>2]=b}else{c[l>>2]=b;b=c[g>>2]|0;if((c[l>>2]|0)!=0){b=c[(c[b+12>>2]|0)+8>>2]|0}else{b=c[b+8>>2]|0}c[j>>2]=b;m=(c[(c[d>>2]|0)+68>>2]|0)+56|0;b=c[j>>2]|0;a=Ub(c[j>>2]|0)|0;Eh(m,b,a,c[l>>2]|0)|0}if((c[(c[g>>2]|0)+12>>2]|0)!=0){c[(c[(c[g>>2]|0)+12>>2]|0)+16>>2]=c[(c[g>>2]|0)+16>>2]}}FD(c[f>>2]|0,c[(c[g>>2]|0)+28>>2]|0);FD(c[f>>2]|0,c[(c[g>>2]|0)+32>>2]|0);c[h>>2]=c[(c[g>>2]|0)+4>>2];cc(c[f>>2]|0,c[g>>2]|0);c[g>>2]=c[h>>2]}i=k;return}function fF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[f>>2]=a;c[g>>2]=b;if((c[f>>2]|0)!=0){if((c[(c[f>>2]|0)+512>>2]|0)==0){d=3}}else{d=3}if((d|0)==3){gF(0,c[g>>2]|0)|0}if((c[(c[g>>2]|0)+56>>2]|0)==0){i=e;return}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[g>>2]|0)+52>>2]|0)){break}if((c[h>>2]|0)!=1){cc(c[f>>2]|0,c[(c[(c[g>>2]|0)+56>>2]|0)+(c[h>>2]<<2)>>2]|0)}c[h>>2]=(c[h>>2]|0)+1}cc(c[f>>2]|0,c[(c[g>>2]|0)+56>>2]|0);i=e;return}function gF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;k=d+20|0;g=d;e=d+4|0;f=d+8|0;h=d+12|0;j=d+16|0;c[k>>2]=a;c[g>>2]=b;c[e>>2]=0;c[f>>2]=c[(c[g>>2]|0)+60>>2];c[(c[g>>2]|0)+60>>2]=0;while(1){if((c[f>>2]|0)==0){break}c[h>>2]=c[c[f>>2]>>2];c[j>>2]=c[(c[f>>2]|0)+24>>2];if((c[h>>2]|0)==(c[k>>2]|0)){c[e>>2]=c[f>>2];c[(c[g>>2]|0)+60>>2]=c[e>>2];c[(c[e>>2]|0)+24>>2]=0}else{c[(c[f>>2]|0)+24>>2]=c[(c[h>>2]|0)+324>>2];c[(c[h>>2]|0)+324>>2]=c[f>>2]}c[f>>2]=c[j>>2]}i=d;return c[e>>2]|0}function hF(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;m=f;k=f+4|0;j=f+8|0;l=f+12|0;h=f+16|0;c[m>>2]=a;c[k>>2]=b;c[j>>2]=e;c[l>>2]=c[(c[m>>2]|0)+8>>2];a:while(1){if((c[l>>2]|0)==0){j=11;break}do{if((c[l>>2]|0)!=(c[j>>2]|0)){if(0!=(c[k>>2]|0)){if((c[(c[l>>2]|0)+68>>2]|0)!=(c[k>>2]|0)){break}}e=c[l>>2]|0;if((d[(c[l>>2]|0)+81>>0]|0|0)==1){c[h>>2]=iF(e)|0;if(0!=(c[h>>2]|0)){j=8;break a}else{break}}else{jF(e);break}}}while(0);c[l>>2]=c[(c[l>>2]|0)+8>>2]}if((j|0)==8){c[g>>2]=c[h>>2];m=c[g>>2]|0;i=f;return m|0}else if((j|0)==11){c[g>>2]=0;m=c[g>>2]|0;i=f;return m|0}return 0}function iF(b){b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;f=g;h=g+4|0;c[e>>2]=b;c[f>>2]=kF(c[e>>2]|0,(c[e>>2]|0)+56|0)|0;do{if(0==(d[(c[(c[e>>2]|0)+128>>2]|0)+2>>0]|0|0)){c[h>>2]=nc(c[(c[e>>2]|0)+56>>2]|0)|0;if((c[h>>2]|0)==0){c[f>>2]=7;break}c[f>>2]=lF(c[e>>2]|0,0,c[(c[e>>2]|0)+56>>2]|0,c[h>>2]|0)|0;b=c[h>>2]|0;if((c[f>>2]|0)==0){c[(c[e>>2]|0)+64>>2]=b;break}else{oc(b);break}}}while(0);if((c[f>>2]|0)!=0){h=c[e>>2]|0;h=h+80|0;b=a[h>>0]|0;b=b&255;b=b&-5;b=b&255;a[h>>0]=b;h=c[f>>2]|0;i=g;return h|0}jF(c[e>>2]|0);a[(c[e>>2]|0)+81>>0]=3;h=c[e>>2]|0;h=h+80|0;b=a[h>>0]|0;b=b&255;b=b&-5;b=b&255;a[h>>0]=b;h=c[f>>2]|0;i=g;return h|0}function jF(a){a=a|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+4|0;f=e;c[d>>2]=a;c[f>>2]=0;while(1){if((c[f>>2]|0)>(b[(c[d>>2]|0)+84>>1]|0)){break}Gr(c[(c[d>>2]|0)+128+(c[f>>2]<<2)>>2]|0);c[(c[d>>2]|0)+128+(c[f>>2]<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)+1}b[(c[d>>2]|0)+84>>1]=-1;i=e;return}function kF(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;h=i;i=i+16|0;k=h+8|0;j=h;l=h+4|0;c[k>>2]=f;c[j>>2]=g;if((d[(c[k>>2]|0)+81>>0]|0)!=1){f=c[j>>2]|0;c[f>>2]=0;c[f+4>>2]=0;i=h;return 0}if((e[(c[k>>2]|0)+50>>1]|0)==0){c[l>>2]=b[(c[k>>2]|0)+84>>1]|0;pD(c[(c[k>>2]|0)+128+(c[l>>2]<<2)>>2]|0,e[(c[k>>2]|0)+86+(c[l>>2]<<1)>>1]|0,(c[k>>2]|0)+24|0);f=(c[k>>2]|0)+80|0;a[f>>0]=d[f>>0]|2}k=(c[k>>2]|0)+24|0;l=c[k+4>>2]|0;f=c[j>>2]|0;c[f>>2]=c[k>>2];c[f+4>>2]=l;i=h;return 0}function lF(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f;h=f+4|0;g=f+8|0;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=oD(c[k>>2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0,0)|0;i=f;return a|0}function mF(b){b=b|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=b;b=(c[f>>2]|0)+80|0;a[b>>0]=d[b>>0]|0|16;i=e;return}function nF(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;h=m+20|0;j=m;l=m+4|0;k=m+8|0;n=m+12|0;g=m+16|0;c[j>>2]=a;c[l>>2]=b;c[k>>2]=d;c[n>>2]=e;c[g>>2]=f;if((c[j>>2]|0)!=0){c[h>>2]=c[j>>2];a=c[h>>2]|0;i=m;return a|0}c[l>>2]=(c[l>>2]|0)+7&-8;if(((c[c[k>>2]>>2]|0)+(c[l>>2]|0)|0)>>>0<=(c[n>>2]|0)>>>0){c[j>>2]=c[c[k>>2]>>2];a=c[k>>2]|0;c[a>>2]=(c[a>>2]|0)+(c[l>>2]|0)}else{a=c[g>>2]|0;c[a>>2]=(c[a>>2]|0)+(c[l>>2]|0)}c[h>>2]=c[j>>2];a=c[h>>2]|0;i=m;return a|0}function oF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;j=e;h=e+4|0;g=e+8|0;c[f>>2]=a;c[j>>2]=b;c[h>>2]=d;a:do{if((c[h>>2]|0)!=0){switch(c[j>>2]|0){case-10:{if((c[(c[f>>2]|0)+512>>2]|0)!=0){break a}Cr(c[h>>2]|0);break a};case-11:{if((c[(c[f>>2]|0)+512>>2]|0)!=0){break a}oc(c[h>>2]|0);break a};case-15:case-1:case-13:case-12:{cc(c[f>>2]|0,c[h>>2]|0);break a};case-8:{d=c[h>>2]|0;if((c[(c[f>>2]|0)+512>>2]|0)==0){Rf(d);break a}else{c[g>>2]=d;cc(c[f>>2]|0,c[(c[g>>2]|0)+36>>2]|0);cc(c[f>>2]|0,c[g>>2]|0);break a}};case-6:{if((c[(c[f>>2]|0)+512>>2]|0)!=0){break a}Ch(c[h>>2]|0);break a};case-5:{pF(c[f>>2]|0,c[h>>2]|0);break a};default:{break a}}}}while(0);i=e;return}function pF(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=d;if((c[g>>2]|0)==0){i=e;return}if((b[(c[g>>2]|0)+2>>1]&16|0)==0){i=e;return}cc(c[f>>2]|0,c[g>>2]|0);i=e;return}function qF(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(c[d>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+1;i=b;return}function rF(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+16|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=d;Gd(c[g>>2]|0);g=(c[g>>2]|0)+0|0;a=(c[e>>2]|0)+0|0;d=g+40|0;do{c[g>>2]=c[a>>2];g=g+4|0;a=a+4|0}while((g|0)<(d|0));b[(c[e>>2]|0)+28>>1]=1;c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+36>>2]=0;i=f;return}function sF(){return 37704}function tF(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+96|0;h=e+80|0;j=e+76|0;f=e+72|0;g=e;c[h>>2]=a;c[j>>2]=d;c[f>>2]=0;if((c[j>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}if((c[(c[j>>2]|0)+20>>2]|0)==0){a=c[f>>2]|0;i=e;return a|0}a=g+0|0;d=a+72|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(d|0));b[g+36>>1]=1;c[g+8>>2]=c[c[h>>2]>>2];c[g+48>>2]=c[h>>2];c[g>>2]=c[j>>2];rb[c[(c[j>>2]|0)+20>>2]&31](g);cc(c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+36>>2]|0);a=(c[h>>2]|0)+0|0;h=g+8|0;d=a+40|0;do{c[a>>2]=c[h>>2];a=a+4|0;h=h+4|0}while((a|0)<(d|0));c[f>>2]=c[g+64>>2];a=c[f>>2]|0;i=e;return a|0}function uF(a){a=a|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+8|0;f=e;g=e+4|0;c[d>>2]=a;c[f>>2]=c[c[d>>2]>>2];while(1){if((c[f>>2]|0)==0){break}c[g>>2]=c[c[f>>2]>>2];cc(c[(c[d>>2]|0)+4>>2]|0,c[f>>2]|0);c[f>>2]=c[g>>2]}c[c[d>>2]>>2]=0;b[(c[d>>2]|0)+24>>1]=0;c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+12>>2]=0;c[(c[d>>2]|0)+20>>2]=0;b[(c[d>>2]|0)+26>>1]=1;i=e;return}function vF(f){f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;l=i;i=i+64|0;k=l;g=l+56|0;j=l+52|0;w=l+48|0;p=l+44|0;s=l+40|0;t=l+36|0;q=l+32|0;u=l+60|0;h=l+20|0;n=l+16|0;o=l+12|0;m=l+8|0;v=l+4|0;x=l+24|0;r=l+28|0;c[j>>2]=f;c[p>>2]=0;c[s>>2]=0;c[t>>2]=0;c[q>>2]=c[c[j>>2]>>2];c[h>>2]=0;c[n>>2]=(c[(c[j>>2]|0)+8>>2]|0)+40;NA(c[n>>2]|0,8);c[(c[j>>2]|0)+20>>2]=0;if((c[(c[j>>2]|0)+80>>2]|0)==7){a[(c[q>>2]|0)+64>>0]=1;c[g>>2]=1;x=c[g>>2]|0;i=l;return x|0}c[w>>2]=c[(c[j>>2]|0)+32>>2];a:do{if((b[(c[j>>2]|0)+88>>1]&3|0)==1){c[t>>2]=(c[(c[j>>2]|0)+8>>2]|0)+360;if((b[(c[t>>2]|0)+28>>1]&16|0)!=0){c[p>>2]=((c[(c[t>>2]|0)+24>>2]|0)>>>0)/4|0;c[s>>2]=c[(c[t>>2]|0)+4>>2]}c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[p>>2]|0)){break a}c[w>>2]=(c[w>>2]|0)+(c[(c[(c[s>>2]|0)+(c[u>>2]<<2)>>2]|0)+4>>2]|0);c[u>>2]=(c[u>>2]|0)+1}}}while(0);do{y=(c[j>>2]|0)+76|0;f=c[y>>2]|0;c[y>>2]=f+1;c[u>>2]=f;if((c[u>>2]|0)>=(c[w>>2]|0)){break}if((b[(c[j>>2]|0)+88>>1]&3|0)!=2){break}}while((d[(c[(c[j>>2]|0)+4>>2]|0)+((c[u>>2]|0)*20|0)>>0]|0)!=157);do{if((c[u>>2]|0)>=(c[w>>2]|0)){c[(c[j>>2]|0)+80>>2]=0;c[h>>2]=101}else{if((c[(c[q>>2]|0)+232>>2]|0)!=0){c[(c[j>>2]|0)+80>>2]=9;c[h>>2]=1;x=(c[j>>2]|0)+44|0;y=c[q>>2]|0;c[k>>2]=ie(c[(c[j>>2]|0)+80>>2]|0)|0;$t(x,y,1768,k);break}if((c[u>>2]|0)<(c[(c[j>>2]|0)+32>>2]|0)){c[m>>2]=(c[(c[j>>2]|0)+4>>2]|0)+((c[u>>2]|0)*20|0)}else{c[u>>2]=(c[u>>2]|0)-(c[(c[j>>2]|0)+32>>2]|0);c[v>>2]=0;while(1){if((c[u>>2]|0)<(c[(c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]|0)+4>>2]|0)){break}c[u>>2]=(c[u>>2]|0)-(c[(c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]|0)+4>>2]|0);c[v>>2]=(c[v>>2]|0)+1}c[m>>2]=(c[c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]>>2]|0)+((c[u>>2]|0)*20|0)}if((b[(c[j>>2]|0)+88>>1]&3|0)==1){b[(c[n>>2]|0)+28>>1]=4;w=c[u>>2]|0;y=(c[n>>2]|0)+16|0;c[y>>2]=w;c[y+4>>2]=((w|0)<0)<<31>>31;c[n>>2]=(c[n>>2]|0)+40;b[(c[n>>2]|0)+28>>1]=2562;y=cJ(d[c[m>>2]>>0]|0)|0;c[(c[n>>2]|0)+4>>2]=y;y=Ub(c[(c[n>>2]|0)+4>>2]|0)|0;c[(c[n>>2]|0)+24>>2]=y;a[(c[n>>2]|0)+30>>0]=1;c[n>>2]=(c[n>>2]|0)+40;if((a[(c[m>>2]|0)+1>>0]|0)==-18){c[x>>2]=(c[p>>2]|0)+1<<2;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[p>>2]|0)){break}if((c[(c[s>>2]|0)+(c[r>>2]<<2)>>2]|0)==(c[(c[m>>2]|0)+16>>2]|0)){break}c[r>>2]=(c[r>>2]|0)+1}if((c[r>>2]|0)==(c[p>>2]|0)){if(0==(ue(c[t>>2]|0,c[x>>2]|0,(c[p>>2]|0)!=0&1)|0)){c[s>>2]=c[(c[t>>2]|0)+4>>2];x=c[(c[m>>2]|0)+16>>2]|0;y=c[p>>2]|0;c[p>>2]=y+1;c[(c[s>>2]|0)+(y<<2)>>2]=x;y=(c[t>>2]|0)+28|0;b[y>>1]=e[y>>1]|16;c[(c[t>>2]|0)+24>>2]=c[p>>2]<<2}}}}b[(c[n>>2]|0)+28>>1]=4;x=c[(c[m>>2]|0)+4>>2]|0;y=(c[n>>2]|0)+16|0;c[y>>2]=x;c[y+4>>2]=((x|0)<0)<<31>>31;c[n>>2]=(c[n>>2]|0)+40;b[(c[n>>2]|0)+28>>1]=4;y=c[(c[m>>2]|0)+8>>2]|0;x=(c[n>>2]|0)+16|0;c[x>>2]=y;c[x+4>>2]=((y|0)<0)<<31>>31;c[n>>2]=(c[n>>2]|0)+40;b[(c[n>>2]|0)+28>>1]=4;x=c[(c[m>>2]|0)+12>>2]|0;y=(c[n>>2]|0)+16|0;c[y>>2]=x;c[y+4>>2]=((x|0)<0)<<31>>31;c[n>>2]=(c[n>>2]|0)+40;if((ue(c[n>>2]|0,32,0)|0)!=0){c[g>>2]=1;y=c[g>>2]|0;i=l;return y|0}b[(c[n>>2]|0)+28>>1]=514;c[o>>2]=dJ(c[m>>2]|0,c[(c[n>>2]|0)+4>>2]|0,32)|0;p=c[n>>2]|0;if((c[o>>2]|0)!=(c[(c[n>>2]|0)+4>>2]|0)){Yd(p,c[o>>2]|0,-1,1,0)|0}else{y=Ub(c[p+4>>2]|0)|0;c[(c[n>>2]|0)+24>>2]=y;a[(c[n>>2]|0)+30>>0]=1}c[n>>2]=(c[n>>2]|0)+40;do{if((b[(c[j>>2]|0)+88>>1]&3|0)==1){if((ue(c[n>>2]|0,4,0)|0)==0){b[(c[n>>2]|0)+28>>1]=514;c[(c[n>>2]|0)+24>>2]=2;y=c[(c[n>>2]|0)+4>>2]|0;c[k>>2]=d[(c[m>>2]|0)+3>>0]|0;yc(3,y,40968,k)|0;a[(c[n>>2]|0)+30>>0]=1;c[n>>2]=(c[n>>2]|0)+40;b[(c[n>>2]|0)+28>>1]=1;break}c[g>>2]=1;y=c[g>>2]|0;i=l;return y|0}}while(0);b[(c[j>>2]|0)+84>>1]=8-((b[(c[j>>2]|0)+88>>1]&3)-1<<2);c[(c[j>>2]|0)+20>>2]=(c[(c[j>>2]|0)+8>>2]|0)+40;c[(c[j>>2]|0)+80>>2]=0;c[h>>2]=100}}while(0);c[g>>2]=c[h>>2];y=c[g>>2]|0;i=l;return y|0} + + + +function DJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;f=g+20|0;k=g+8|0;h=g;e=g+12|0;j=g+16|0;c[k>>2]=a;a=h;c[a>>2]=b;c[a+4>>2]=d;c[e>>2]=c[k>>2];if((c[(c[e>>2]|0)+40>>2]|0)>0){k=h;a=c[(c[e>>2]|0)+40>>2]|0;a=dL(c[k>>2]|0,c[k+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;a=$K(a|0,D|0,1,0)|0;k=c[(c[e>>2]|0)+40>>2]|0;k=lL(a|0,D|0,k|0,((k|0)<0)<<31>>31|0)|0;a=c[(c[e>>2]|0)+40>>2]|0;a=nL(k|0,D|0,a|0,((a|0)<0)<<31>>31|0)|0;k=h;c[k>>2]=a;c[k+4>>2]=D}k=c[h>>2]|0;c[j>>2]=eK(c[(c[e>>2]|0)+12>>2]|0,k,((k|0)<0)<<31>>31)|0;if((c[j>>2]|0)!=0){k=c[(ab()|0)>>2]|0;c[(c[e>>2]|0)+20>>2]=k;c[f>>2]=XJ(1546,44064,c[(c[e>>2]|0)+32>>2]|0,27527)|0;k=c[f>>2]|0;i=g;return k|0}else{c[f>>2]=0;k=c[f>>2]|0;i=g;return k|0}return 0}function EJ(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+28|0;p=g;o=g+4|0;l=g+8|0;j=g+12|0;m=g+16|0;n=g+20|0;k=g+24|0;c[p>>2]=a;c[o>>2]=d;c[j>>2]=c[p>>2];c[m>>2]=c[o>>2]&16;c[n>>2]=(c[o>>2]&15|0)==3&1;c[l>>2]=mK(c[(c[j>>2]|0)+12>>2]|0,c[n>>2]|0,c[m>>2]|0)|0;if((c[l>>2]|0)!=0){p=c[(ab()|0)>>2]|0;c[(c[j>>2]|0)+20>>2]=p;c[h>>2]=XJ(1034,44520,c[(c[j>>2]|0)+32>>2]|0,27483)|0;p=c[h>>2]|0;i=g;return p|0}if((b[(c[j>>2]|0)+18>>1]&8|0)!=0){c[l>>2]=zb[c[43896>>2]&127](c[(c[j>>2]|0)+32>>2]|0,k)|0;if((c[l>>2]|0)==0){if((c[k>>2]|0)>=0){mK(c[k>>2]|0,0,0)|0;WJ(c[j>>2]|0,c[k>>2]|0,27497)}else{f=7}}else{f=7}if((f|0)==7){if((c[l>>2]|0)==14){c[l>>2]=0}}p=(c[j>>2]|0)+18|0;b[p>>1]=(e[p>>1]|0)&-9}c[h>>2]=c[l>>2];p=c[h>>2]|0;i=g;return p|0}function FJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+96|0;e=d+88|0;f=d;g=d+4|0;j=d+8|0;h=d+12|0;c[f>>2]=a;c[g>>2]=b;c[j>>2]=zb[c[43752>>2]&127](c[(c[f>>2]|0)+12>>2]|0,h)|0;if((c[j>>2]|0)!=0){j=c[(ab()|0)>>2]|0;c[(c[f>>2]|0)+20>>2]=j;c[e>>2]=1802;j=c[e>>2]|0;i=d;return j|0}a=c[h+36>>2]|0;j=c[g>>2]|0;c[j>>2]=a;c[j+4>>2]=((a|0)<0)<<31>>31;j=c[g>>2]|0;if((c[j>>2]|0)==1&(c[j+4>>2]|0)==0){j=c[g>>2]|0;c[j>>2]=0;c[j+4>>2]=0}c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}function GJ(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;n=f;k=f+4|0;j=f+8|0;h=f+12|0;l=f+16|0;m=f+20|0;c[n>>2]=b;c[k>>2]=e;c[j>>2]=c[n>>2];c[h>>2]=c[(c[j>>2]|0)+24>>2];c[l>>2]=0;if((d[(c[j>>2]|0)+16>>0]|0|0)>0){a[(c[j>>2]|0)+16>>0]=c[k>>2];Fa(c[h>>2]|0,0)|0;c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}c[l>>2]=zb[c[43908>>2]&127](c[h>>2]|0,511)|0;if((c[l>>2]|0)>=0){a[(c[j>>2]|0)+16>>0]=c[k>>2];c[g>>2]=c[l>>2];n=c[g>>2]|0;i=f;return n|0}c[m>>2]=c[(ab()|0)>>2];if(17==(c[m>>2]|0)){c[l>>2]=5}else{c[l>>2]=lK(c[m>>2]|0,3850)|0;if((c[l>>2]|0)!=0&(c[l>>2]|0)!=5){c[(c[j>>2]|0)+20>>2]=c[m>>2]}}c[g>>2]=c[l>>2];n=c[g>>2]|0;i=f;return n|0}function HJ(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;n=f;m=f+4|0;h=f+8|0;k=f+12|0;j=f+16|0;l=f+20|0;c[n>>2]=b;c[m>>2]=e;c[h>>2]=c[n>>2];c[k>>2]=c[(c[h>>2]|0)+24>>2];if((d[(c[h>>2]|0)+16>>0]|0|0)==(c[m>>2]|0)){c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}if((c[m>>2]|0)==1){a[(c[h>>2]|0)+16>>0]=1;c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}c[j>>2]=ub[c[43920>>2]&63](c[k>>2]|0)|0;if((c[j>>2]|0)<0){if((c[(ab()|0)>>2]|0)==20){c[j>>2]=ub[c[43884>>2]&63](c[k>>2]|0)|0}}if((c[j>>2]|0)>=0){a[(c[h>>2]|0)+16>>0]=0;c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}c[l>>2]=c[(ab()|0)>>2];c[j>>2]=0;c[j>>2]=2!=(c[l>>2]|0)?2058:0;if((c[j>>2]|0)!=0&(c[j>>2]|0)!=5){c[(c[h>>2]|0)+20>>2]=c[l>>2]}c[g>>2]=c[j>>2];n=c[g>>2]|0;i=f;return n|0}function IJ(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;l=e+20|0;g=e;f=e+4|0;h=e+8|0;k=e+12|0;j=e+16|0;c[l>>2]=a;c[g>>2]=b;c[f>>2]=0;c[h>>2]=0;c[k>>2]=c[l>>2];if((d[(c[k>>2]|0)+16>>0]|0|0)>1){c[h>>2]=1;a=c[h>>2]|0;l=c[g>>2]|0;c[l>>2]=a;l=c[f>>2]|0;i=e;return l|0}else{c[j>>2]=c[(c[k>>2]|0)+24>>2];c[h>>2]=(zb[c[43716>>2]&127](c[j>>2]|0,0)|0)==0&1;a=c[h>>2]|0;l=c[g>>2]|0;c[l>>2]=a;l=c[f>>2]|0;i=e;return l|0}return 0}function JJ(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;m=f;g=f+28|0;o=f+4|0;n=f+8|0;k=f+12|0;j=f+16|0;h=f+20|0;l=f+24|0;c[o>>2]=a;c[n>>2]=b;c[k>>2]=e;c[j>>2]=c[o>>2];do{switch(c[n>>2]|0){case 5:{o=c[k>>2]|0;c[h>>2]=fK(c[j>>2]|0,c[o>>2]|0,c[o+4>>2]|0)|0;c[g>>2]=c[h>>2];break};case 16:{c[l>>2]=mc(c[(c[(c[j>>2]|0)+4>>2]|0)+8>>2]|0)|0;if((c[l>>2]|0)!=0){hK(c[(c[(c[j>>2]|0)+4>>2]|0)+8>>2]|0,c[l>>2]|0)|0;c[c[k>>2]>>2]=c[l>>2]}c[g>>2]=0;break};case 13:{gK(c[j>>2]|0,16,c[k>>2]|0);c[g>>2]=0;break};case 20:{o=iK(c[j>>2]|0)|0;c[c[k>>2]>>2]=o;c[g>>2]=0;break};case 10:{gK(c[j>>2]|0,4,c[k>>2]|0);c[g>>2]=0;break};case 4:{c[c[k>>2]>>2]=c[(c[j>>2]|0)+20>>2];c[g>>2]=0;break};case 6:{c[(c[j>>2]|0)+40>>2]=c[c[k>>2]>>2];c[g>>2]=0;break};case 1:{c[c[k>>2]>>2]=d[(c[j>>2]|0)+16>>0]|0;c[g>>2]=0;break};case 12:{c[m>>2]=c[(c[(c[j>>2]|0)+4>>2]|0)+16>>2];o=wc(1768,m)|0;c[c[k>>2]>>2]=o;c[g>>2]=0;break};default:{c[g>>2]=12}}}while(0);i=f;return c[g>>2]|0}function KJ(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 4096}function LJ(a){a=a|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;f=d;e=d+4|0;c[g>>2]=a;c[f>>2]=c[g>>2];c[e>>2]=0;if((b[(c[f>>2]|0)+18>>1]&16|0)==0){g=c[e>>2]|0;i=d;return g|0}c[e>>2]=c[e>>2]|4096;g=c[e>>2]|0;i=d;return g|0}function MJ(a,f,g,h,j){a=a|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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;p=i;i=i+160|0;k=p+148|0;E=p+144|0;n=p+140|0;t=p+136|0;B=p+132|0;o=p+128|0;C=p+124|0;D=p+120|0;m=p+116|0;l=p+112|0;v=p+108|0;w=p+84|0;q=p;z=p+4|0;A=p+8|0;y=p+88|0;x=p+92|0;s=p+96|0;r=p+100|0;u=p+104|0;c[E>>2]=a;c[n>>2]=f;c[t>>2]=g;c[B>>2]=h;c[o>>2]=j;c[C>>2]=c[E>>2];c[l>>2]=0;c[v>>2]=VJ()|0;if((c[(c[C>>2]|0)+36>>2]|0)==0){c[l>>2]=cK(c[C>>2]|0)|0;if((c[l>>2]|0)!=0){c[k>>2]=c[l>>2];E=c[k>>2]|0;i=p;return E|0}}c[D>>2]=c[(c[C>>2]|0)+36>>2];c[m>>2]=c[c[D>>2]>>2];c[w>>2]=$(((c[n>>2]|0)+(c[v>>2]|0)|0)/(c[v>>2]|0)|0,c[v>>2]|0)|0;a:do{if((e[(c[m>>2]|0)+20>>1]|0|0)<(c[w>>2]|0)){c[z>>2]=$(c[w>>2]|0,c[t>>2]|0)|0;c[(c[m>>2]|0)+16>>2]=c[t>>2];b:do{if((c[(c[m>>2]|0)+12>>2]|0)>=0){if((zb[c[43752>>2]&127](c[(c[m>>2]|0)+12>>2]|0,A)|0)!=0){c[l>>2]=4874;break a}if((c[A+36>>2]|0)<(c[z>>2]|0)){if((c[B>>2]|0)==0){break a}c[y>>2]=(c[A+36>>2]|0)/4096|0;while(1){if((c[y>>2]|0)>=((c[z>>2]|0)/4096|0|0)){break b}E=(c[y>>2]<<12)+4096-1|0;if((dK(c[(c[m>>2]|0)+12>>2]|0,E,((E|0)<0)<<31>>31,1784,1,0)|0)!=1){break}c[y>>2]=(c[y>>2]|0)+1}c[x>>2]=c[(c[m>>2]|0)+8>>2];c[l>>2]=XJ(4874,44112,c[x>>2]|0,28353)|0;break a}}}while(0);c[q>>2]=qc(c[(c[m>>2]|0)+24>>2]|0,c[w>>2]<<2)|0;if((c[q>>2]|0)==0){c[l>>2]=3082;break}c[(c[m>>2]|0)+24>>2]=c[q>>2];while(1){if((e[(c[m>>2]|0)+20>>1]|0|0)>=(c[w>>2]|0)){break a}c[s>>2]=$(c[t>>2]|0,c[v>>2]|0)|0;if((c[(c[m>>2]|0)+12>>2]|0)>=0){h=c[43944>>2]|0;g=c[s>>2]|0;f=(d[(c[m>>2]|0)+22>>0]|0|0)!=0?1:3;a=c[(c[m>>2]|0)+12>>2]|0;E=c[t>>2]|0;E=nL(E|0,((E|0)<0)<<31>>31|0,e[(c[m>>2]|0)+20>>1]|0|0,0)|0;c[u>>2]=tb[h&15](0,g,f,1,a,E)|0;if((c[u>>2]|0)==(-1|0)){q=21;break}}else{c[u>>2]=mc(c[t>>2]|0)|0;if((c[u>>2]|0)==0){q=23;break}aL(c[u>>2]|0,0,c[t>>2]|0)|0}c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[v>>2]|0)){break}E=$(c[t>>2]|0,c[r>>2]|0)|0;c[(c[(c[m>>2]|0)+24>>2]|0)+((e[(c[m>>2]|0)+20>>1]|0)+(c[r>>2]|0)<<2)>>2]=(c[u>>2]|0)+E;c[r>>2]=(c[r>>2]|0)+1}E=(c[m>>2]|0)+20|0;b[E>>1]=(e[E>>1]|0)+(c[v>>2]|0)}if((q|0)==21){c[l>>2]=XJ(5386,44216,c[(c[m>>2]|0)+8>>2]|0,28380)|0;break}else if((q|0)==23){c[l>>2]=7;break}}}while(0);if((e[(c[m>>2]|0)+20>>1]|0|0)>(c[n>>2]|0)){c[c[o>>2]>>2]=c[(c[(c[m>>2]|0)+24>>2]|0)+(c[n>>2]<<2)>>2]}else{c[c[o>>2]>>2]=0}if((d[(c[m>>2]|0)+22>>0]|0|0)!=0){if((c[l>>2]|0)==0){c[l>>2]=8}}c[k>>2]=c[l>>2];E=c[k>>2]|0;i=p;return E|0}function NJ(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=i;i=i+48|0;v=k+8|0;m=k+32|0;n=k+28|0;t=k+24|0;u=k+12|0;r=k+16|0;h=k+20|0;l=k+4|0;q=k;o=k+40|0;p=k+36|0;s=k+38|0;c[v>>2]=a;c[m>>2]=d;c[n>>2]=f;c[t>>2]=g;c[u>>2]=c[v>>2];c[r>>2]=c[(c[u>>2]|0)+36>>2];c[l>>2]=c[c[r>>2]>>2];c[q>>2]=0;b[o>>1]=(1<<(c[m>>2]|0)+(c[n>>2]|0))-(1<>2]);if((c[t>>2]&1|0)!=0){b[p>>1]=0;c[h>>2]=c[(c[l>>2]|0)+32>>2];while(1){if((c[h>>2]|0)==0){break}if((c[h>>2]|0)!=(c[r>>2]|0)){b[p>>1]=e[p>>1]|0|(e[(c[h>>2]|0)+10>>1]|0)}c[h>>2]=c[(c[h>>2]|0)+4>>2]}if(((e[o>>1]|0)&(e[p>>1]|0)|0)==0){c[q>>2]=bK(c[l>>2]|0,2,(c[m>>2]|0)+120|0,c[n>>2]|0)|0}else{c[q>>2]=0}if((c[q>>2]|0)!=0){v=c[q>>2]|0;i=k;return v|0}v=(c[r>>2]|0)+12|0;b[v>>1]=(e[v>>1]|0)&~(e[o>>1]|0);v=(c[r>>2]|0)+10|0;b[v>>1]=(e[v>>1]|0)&~(e[o>>1]|0);v=c[q>>2]|0;i=k;return v|0}if((c[t>>2]&4|0)==0){c[h>>2]=c[(c[l>>2]|0)+32>>2];while(1){if((c[h>>2]|0)==0){break}if(((e[(c[h>>2]|0)+12>>1]|0)&(e[o>>1]|0)|0)!=0){j=28;break}if(((e[(c[h>>2]|0)+10>>1]|0)&(e[o>>1]|0)|0)!=0){j=28;break}c[h>>2]=c[(c[h>>2]|0)+4>>2]}if((j|0)==28){c[q>>2]=5}if((c[q>>2]|0)!=0){v=c[q>>2]|0;i=k;return v|0}c[q>>2]=bK(c[l>>2]|0,1,(c[m>>2]|0)+120|0,c[n>>2]|0)|0;if((c[q>>2]|0)!=0){v=c[q>>2]|0;i=k;return v|0}v=(c[r>>2]|0)+12|0;b[v>>1]=e[v>>1]|0|(e[o>>1]|0);v=c[q>>2]|0;i=k;return v|0}b[s>>1]=0;c[h>>2]=c[(c[l>>2]|0)+32>>2];while(1){if((c[h>>2]|0)==0){break}if(((e[(c[h>>2]|0)+12>>1]|0)&(e[o>>1]|0)|0)!=0){j=16;break}b[s>>1]=e[s>>1]|0|(e[(c[h>>2]|0)+10>>1]|0);c[h>>2]=c[(c[h>>2]|0)+4>>2]}if((j|0)==16){c[q>>2]=5}do{if((c[q>>2]|0)==0){if(((e[s>>1]|0)&(e[o>>1]|0)|0)==0){c[q>>2]=bK(c[l>>2]|0,0,(c[m>>2]|0)+120|0,c[n>>2]|0)|0;break}else{c[q>>2]=0;break}}}while(0);if((c[q>>2]|0)!=0){v=c[q>>2]|0;i=k;return v|0}v=(c[r>>2]|0)+10|0;b[v>>1]=e[v>>1]|0|(e[o>>1]|0);v=c[q>>2]|0;i=k;return v|0}function OJ(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;SJ();UJ();i=b;return}function PJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+24|0;l=d;f=d+4|0;g=d+8|0;k=d+12|0;h=d+16|0;j=d+20|0;c[l>>2]=a;c[f>>2]=b;c[j>>2]=c[l>>2];c[g>>2]=c[(c[j>>2]|0)+36>>2];if((c[g>>2]|0)==0){c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[k>>2]=c[c[g>>2]>>2];c[h>>2]=(c[k>>2]|0)+32;while(1){if((c[c[h>>2]>>2]|0)==(c[g>>2]|0)){break}c[h>>2]=(c[c[h>>2]>>2]|0)+4}c[c[h>>2]>>2]=c[(c[g>>2]|0)+4>>2];oc(c[g>>2]|0);c[(c[j>>2]|0)+36>>2]=0;SJ();l=(c[k>>2]|0)+28|0;c[l>>2]=(c[l>>2]|0)+ -1;if((c[(c[k>>2]|0)+28>>2]|0)==0){if((c[f>>2]|0)!=0){if((c[(c[k>>2]|0)+12>>2]|0)>=0){ub[c[43884>>2]&63](c[(c[k>>2]|0)+8>>2]|0)|0}}TJ(c[j>>2]|0)}UJ();c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}function QJ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=i;i=i+32|0;h=g+12|0;c[g+16>>2]=a;a=g;c[a>>2]=b;c[a+4>>2]=d;c[g+8>>2]=e;c[h>>2]=f;c[c[h>>2]>>2]=0;i=g;return 0}function RJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=i;i=i+16|0;c[f+12>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;c[f+8>>2]=e;i=f;return 0}function SJ(){return}function TJ(a){a=a|0;var b=0,d=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;f=b;h=b+4|0;g=b+8|0;c[d>>2]=a;c[f>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+20>>2];if((c[f>>2]|0)==0){i=b;return}if((c[(c[f>>2]|0)+28>>2]|0)!=0){i=b;return}c[h>>2]=VJ()|0;c[g>>2]=0;while(1){a=c[f>>2]|0;if((c[g>>2]|0)>=(e[(c[f>>2]|0)+20>>1]|0|0)){break}if((c[a+12>>2]|0)>=0){zb[c[43956>>2]&127](c[(c[(c[f>>2]|0)+24>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[f>>2]|0)+16>>2]|0)|0}else{oc(c[(c[(c[f>>2]|0)+24>>2]|0)+(c[g>>2]<<2)>>2]|0)}c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)}oc(c[a+24>>2]|0);if((c[(c[f>>2]|0)+12>>2]|0)>=0){WJ(c[d>>2]|0,c[(c[f>>2]|0)+12>>2]|0,28094);c[(c[f>>2]|0)+12>>2]=-1}c[(c[c[f>>2]>>2]|0)+20>>2]=0;oc(c[f>>2]|0);i=b;return}function UJ(){return}function VJ(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;b=a+8|0;d=a;e=a+4|0;c[d>>2]=32768;c[e>>2]=qb[c[43980>>2]&1]()|0;if((c[e>>2]|0)<(c[d>>2]|0)){c[b>>2]=1;e=c[b>>2]|0;i=a;return e|0}else{c[b>>2]=(c[e>>2]|0)/(c[d>>2]|0)|0;e=c[b>>2]|0;i=a;return e|0}return 0}function WJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;h=e;f=e+4|0;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;if((ub[c[43704>>2]&63](c[h>>2]|0)|0)==0){i=e;return}if((c[g>>2]|0)!=0){d=c[(c[g>>2]|0)+32>>2]|0}else{d=0}XJ(4106,43992,d,c[f>>2]|0)|0;i=e;return}function XJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;h=g;l=g+40|0;m=g+20|0;f=g+24|0;j=g+28|0;k=g+32|0;n=g+36|0;c[l>>2]=a;c[m>>2]=b;c[f>>2]=d;c[j>>2]=e;c[n>>2]=c[(ab()|0)>>2];c[k>>2]=jb(c[n>>2]|0)|0;if((c[f>>2]|0)==0){c[f>>2]=1784}a=c[l>>2]|0;e=c[n>>2]|0;n=c[m>>2]|0;d=c[f>>2]|0;b=c[k>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=e;c[h+8>>2]=n;c[h+12>>2]=d;c[h+16>>2]=b;zc(a,44e3,h);i=g;return c[l>>2]|0}function YJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e;j=e+12|0;h=e+4|0;g=e+8|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;b=c[j>>2]|0;a=c[h>>2]|0;c[f>>2]=c[g>>2];a=Ma(b|0,a|0,f|0)|0;i=e;return a|0}function ZJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+544|0;k=e;l=e+16|0;g=e+4|0;j=e+8|0;f=e+12|0;h=e+20|0;c[l>>2]=b;c[g>>2]=d;c[f>>2]=-1;c[k>>2]=c[l>>2];yc(512,h,1768,k)|0;c[j>>2]=cL(h|0)|0;while(1){if((c[j>>2]|0)<=1){break}if((a[h+(c[j>>2]|0)>>0]|0)==47){break}c[j>>2]=(c[j>>2]|0)+ -1}if((c[j>>2]|0)>0){a[h+(c[j>>2]|0)>>0]=0;c[f>>2]=aK(h,0,0)|0}c[c[g>>2]>>2]=c[f>>2];if((c[f>>2]|0)>=0){l=0;i=e;return l|0}l=XJ(Bq(27442)|0,44032,h,27442)|0;i=e;return l|0}function _J(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;h=e+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((db()|0)!=0){a=0;i=e;return a|0}a=eb(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return a|0}function $J(){var a=0,b=0;b=i;a=Sa(30)|0;i=b;return a|0}function aK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+112|0;e=l;f=l+100|0;g=l+8|0;k=l+12|0;j=l+16|0;h=l+20|0;m=l+24|0;c[f>>2]=a;c[g>>2]=b;c[k>>2]=d;c[h>>2]=(c[k>>2]|0)!=0?c[k>>2]|0:420;while(1){c[j>>2]=pb[c[43692>>2]&31](c[f>>2]|0,c[g>>2]|524288,c[h>>2]|0)|0;if((c[j>>2]|0)<0){if((c[(ab()|0)>>2]|0)==4){continue}else{break}}if((c[j>>2]|0)>=3){break}ub[c[43704>>2]&63](c[j>>2]|0)|0;a=c[j>>2]|0;c[e>>2]=c[f>>2];c[e+4>>2]=a;zc(28,44256,e);c[j>>2]=-1;if((pb[c[43692>>2]&31](44304,c[g>>2]|0,c[k>>2]|0)|0)<0){break}}if((c[j>>2]|0)<0){a=c[j>>2]|0;i=l;return a|0}if((c[k>>2]|0)==0){a=c[j>>2]|0;i=l;return a|0}if((zb[c[43752>>2]&127](c[j>>2]|0,m)|0)!=0){a=c[j>>2]|0;i=l;return a|0}if((c[m+36>>2]|0)!=0){a=c[j>>2]|0;i=l;return a|0}if((c[m+12>>2]&511|0)==(c[k>>2]|0)){a=c[j>>2]|0;i=l;return a|0}zb[c[43860>>2]&127](c[j>>2]|0,c[k>>2]|0)|0;a=c[j>>2]|0;i=l;return a|0}function bK(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+48|0;o=m;n=m+36|0;k=m+4|0;l=m+8|0;g=m+12|0;j=m+16|0;h=m+32|0;c[n>>2]=a;c[k>>2]=d;c[l>>2]=e;c[g>>2]=f;c[h>>2]=0;if((c[(c[n>>2]|0)+12>>2]|0)<0){a=c[h>>2]|0;i=m;return a|0}c[j+0>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;b[j>>1]=c[k>>2];b[j+2>>1]=0;c[j+4>>2]=c[l>>2];c[j+8>>2]=c[g>>2];d=c[43776>>2]|0;a=c[(c[n>>2]|0)+12>>2]|0;c[o>>2]=j;c[h>>2]=pb[d&31](a,13,o)|0;c[h>>2]=(c[h>>2]|0)!=-1?0:5;a=c[h>>2]|0;i=m;return a|0}function cK(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=i;i=i+128|0;r=m;g=m+108|0;h=m+104|0;j=m+100|0;e=m+96|0;k=m+112|0;l=m+12|0;n=m+8|0;q=m+4|0;p=m+16|0;o=m+92|0;c[h>>2]=b;c[j>>2]=0;c[j>>2]=mc(16)|0;if((c[j>>2]|0)==0){c[g>>2]=7;b=c[g>>2]|0;i=m;return b|0}b=c[j>>2]|0;c[b+0>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;SJ();c[l>>2]=c[(c[h>>2]|0)+8>>2];c[e>>2]=c[(c[l>>2]|0)+20>>2];a:do{if((c[e>>2]|0)==0){if((zb[c[43752>>2]&127](c[(c[h>>2]|0)+12>>2]|0,p)|0)!=0){if((d[(c[l>>2]|0)+13>>0]|0|0)==0){c[k>>2]=1802}else{f=7}}else{f=7}do{if((f|0)==7){c[q>>2]=6+(cL(c[(c[h>>2]|0)+32>>2]|0)|0);c[e>>2]=mc(36+(c[q>>2]|0)|0)|0;if((c[e>>2]|0)==0){c[k>>2]=7;break}aL(c[e>>2]|0,0,36+(c[q>>2]|0)|0)|0;b=(c[e>>2]|0)+36|0;c[(c[e>>2]|0)+8>>2]=b;c[n>>2]=b;q=c[q>>2]|0;b=c[n>>2]|0;c[r>>2]=c[(c[h>>2]|0)+32>>2];yc(q,b,44320,r)|0;c[(c[e>>2]|0)+12>>2]=-1;c[(c[(c[h>>2]|0)+8>>2]|0)+20>>2]=c[e>>2];c[c[e>>2]>>2]=c[(c[h>>2]|0)+8>>2];c[(c[e>>2]|0)+4>>2]=8;if((c[(c[e>>2]|0)+4>>2]|0)==0){c[k>>2]=7;break}if((d[(c[l>>2]|0)+13>>0]|0|0)!=0){break a}c[o>>2]=66;if((Ng(c[(c[h>>2]|0)+32>>2]|0,44328,0)|0)!=0){c[o>>2]=0;a[(c[e>>2]|0)+22>>0]=1}b=aK(c[n>>2]|0,c[o>>2]|0,c[p+12>>2]&511)|0;c[(c[e>>2]|0)+12>>2]=b;if((c[(c[e>>2]|0)+12>>2]|0)<0){b=Bq(28206)|0;c[k>>2]=XJ(b,44032,c[n>>2]|0,28206)|0;break}pb[c[43932>>2]&31](c[(c[e>>2]|0)+12>>2]|0,c[p+20>>2]|0,c[p+24>>2]|0)|0;c[k>>2]=0;if((bK(c[e>>2]|0,1,128,1)|0)==0){if((eK(c[(c[e>>2]|0)+12>>2]|0,0,0)|0)!=0){c[k>>2]=XJ(4618,44064,c[n>>2]|0,28222)|0}}if((c[k>>2]|0)==0){c[k>>2]=bK(c[e>>2]|0,0,128,1)|0}if((c[k>>2]|0)==0){break a}}}while(0);TJ(c[h>>2]|0);oc(c[j>>2]|0);UJ();c[g>>2]=c[k>>2];b=c[g>>2]|0;i=m;return b|0}}while(0);c[c[j>>2]>>2]=c[e>>2];b=(c[e>>2]|0)+28|0;c[b>>2]=(c[b>>2]|0)+1;c[(c[h>>2]|0)+36>>2]=c[j>>2];UJ();c[(c[j>>2]|0)+4>>2]=c[(c[e>>2]|0)+32>>2];c[(c[e>>2]|0)+32>>2]=c[j>>2];c[g>>2]=0;b=c[g>>2]|0;i=m;return b|0}function dK(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+48|0;h=j+36|0;n=j+32|0;r=j;o=j+16|0;p=j+20|0;k=j+24|0;l=j+28|0;q=j+8|0;c[n>>2]=a;a=r;c[a>>2]=b;c[a+4>>2]=d;c[o>>2]=e;c[p>>2]=f;c[k>>2]=g;c[l>>2]=0;c[p>>2]=c[p>>2]&131071;while(1){a=xa(c[n>>2]|0,c[r>>2]|0,0)|0;b=q;c[b>>2]=a;c[b+4>>2]=((a|0)<0)<<31>>31;b=q;a=r;if((c[b>>2]|0)!=(c[a>>2]|0)?1:(c[b+4>>2]|0)!=(c[a+4>>2]|0)){break}c[l>>2]=pb[c[43824>>2]&31](c[n>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if((c[l>>2]|0)>=0){m=10;break}if((c[(ab()|0)>>2]|0)!=4){m=10;break}}if((m|0)==10){if((c[l>>2]|0)<0){if((c[k>>2]|0)!=0){a=c[(ab()|0)>>2]|0;c[c[k>>2]>>2]=a}}c[h>>2]=c[l>>2];a=c[h>>2]|0;i=j;return a|0}if((c[k>>2]|0)!=0){a=q;if((c[a>>2]|0)==-1?(c[a+4>>2]|0)==-1:0){l=c[(ab()|0)>>2]|0}else{l=0}c[c[k>>2]>>2]=l}c[h>>2]=-1;a=c[h>>2]|0;i=j;return a|0}function eK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+12|0;h=e;f=e+8|0;c[g>>2]=a;a=h;c[a>>2]=b;c[a+4>>2]=d;while(1){c[f>>2]=zb[c[43764>>2]&127](c[g>>2]|0,c[h>>2]|0)|0;if((c[f>>2]|0)>=0){d=4;break}if((c[(ab()|0)>>2]|0)!=4){d=4;break}}if((d|0)==4){i=e;return c[f>>2]|0}return 0}function fK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+128|0;f=k+112|0;g=k+104|0;n=k+8|0;e=k;l=k+24|0;m=k+100|0;h=k+16|0;j=k+108|0;c[g>>2]=a;a=n;c[a>>2]=b;c[a+4>>2]=d;a:do{if((c[(c[g>>2]|0)+40>>2]|0)>0){if((zb[c[43752>>2]&127](c[(c[g>>2]|0)+12>>2]|0,l)|0)!=0){c[f>>2]=1802;a=c[f>>2]|0;i=k;return a|0}b=n;d=c[(c[g>>2]|0)+40>>2]|0;d=dL(c[b>>2]|0,c[b+4>>2]|0,d|0,((d|0)<0)<<31>>31|0)|0;d=$K(d|0,D|0,1,0)|0;b=c[(c[g>>2]|0)+40>>2]|0;b=lL(d|0,D|0,b|0,((b|0)<0)<<31>>31|0)|0;d=c[(c[g>>2]|0)+40>>2]|0;d=nL(b|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;b=e;c[b>>2]=d;c[b+4>>2]=D;b=e;d=c[b+4>>2]|0;a=c[l+36>>2]|0;n=((a|0)<0)<<31>>31;if((d|0)>(n|0)|((d|0)==(n|0)?(c[b>>2]|0)>>>0>a>>>0:0)){c[m>>2]=c[l+40>>2];a=e;if((eK(c[(c[g>>2]|0)+12>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0)!=0){a=c[(ab()|0)>>2]|0;c[(c[g>>2]|0)+20>>2]=a;c[f>>2]=XJ(1546,44064,c[(c[g>>2]|0)+32>>2]|0,27628)|0;a=c[f>>2]|0;i=k;return a|0}b=($(((c[l+36>>2]|0)+(c[m>>2]<<1)-1|0)/(c[m>>2]|0)|0,c[m>>2]|0)|0)-1|0;a=h;c[a>>2]=b;c[a+4>>2]=((b|0)<0)<<31>>31;while(1){b=h;l=c[b+4>>2]|0;a=e;n=c[a+4>>2]|0;if(!((l|0)<(n|0)|((l|0)==(n|0)?(c[b>>2]|0)>>>0<(c[a>>2]|0)>>>0:0))){break a}a=h;c[j>>2]=kK(c[g>>2]|0,c[a>>2]|0,c[a+4>>2]|0,1784,1)|0;if((c[j>>2]|0)!=1){break}b=c[m>>2]|0;a=h;b=dL(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=h;c[a>>2]=b;c[a+4>>2]=D}c[f>>2]=778;a=c[f>>2]|0;i=k;return a|0}}}while(0);c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}function gK(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;j=i;i=i+16|0;l=j+4|0;m=j+8|0;k=j;c[l>>2]=f;a[m>>0]=g;c[k>>2]=h;if((c[c[k>>2]>>2]|0)<0){c[c[k>>2]>>2]=((e[(c[l>>2]|0)+18>>1]|0)&(d[m>>0]|0)|0)!=0&1;i=j;return}h=d[m>>0]|0;if((c[c[k>>2]>>2]|0)==0){f=(c[l>>2]|0)+18|0;b[f>>1]=(e[f>>1]|0)&~h;i=j;return}else{f=(c[l>>2]|0)+18|0;b[f>>1]=e[f>>1]|0|h;i=j;return}}function hK(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;n=k;g=k+24|0;l=k+4|0;h=k+8|0;f=k+12|0;j=k+16|0;m=k+20|0;c[l>>2]=b;c[h>>2]=e;b=jK()|0;c[m>>2]=b;c[m>>2]=(c[m>>2]|0)==0?25632:b;b=(cL(c[m>>2]|0)|0)+25|0;if(b>>>0>=(c[l>>2]|0)>>>0){c[g>>2]=1;b=c[g>>2]|0;i=k;return b|0}do{e=(c[l>>2]|0)-18|0;b=c[h>>2]|0;c[n>>2]=c[m>>2];yc(e,b,44408,n)|0;c[j>>2]=cL(c[h>>2]|0)|0;Bc(15,(c[h>>2]|0)+(c[j>>2]|0)|0);c[f>>2]=0;while(1){e=(c[h>>2]|0)+(c[j>>2]|0)|0;if(!((c[f>>2]|0)>>>0<15)){break}a[(c[h>>2]|0)+(c[j>>2]|0)>>0]=a[44344+(((d[e>>0]|0)>>>0)%62|0)>>0]|0;c[f>>2]=(c[f>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1}a[e>>0]=0;a[(c[h>>2]|0)+((c[j>>2]|0)+1)>>0]=0}while((zb[c[43716>>2]&127](c[h>>2]|0,0)|0)==0);c[g>>2]=0;b=c[g>>2]|0;i=k;return b|0}function iK(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+80|0;e=b+76|0;d=b;c[e>>2]=a;if((c[(c[e>>2]|0)+8>>2]|0)==0){e=0;e=e&1;i=b;return e|0}if((zb[c[43740>>2]&127](c[(c[e>>2]|0)+32>>2]|0,d)|0)!=0){e=1;e=e&1;i=b;return e|0}e=(c[d+72>>2]|0)!=(c[(c[(c[e>>2]|0)+8>>2]|0)+4>>2]|0);e=e&1;i=b;return e|0}function jK(){var a=0,b=0,d=0,e=0,f=0;a=i;i=i+96|0;e=a+80|0;d=a;b=a+76|0;c[b>>2]=0;c[11106]=c[472];if((c[44428>>2]|0)==0){c[44428>>2]=Za(44496)|0}if((c[44432>>2]|0)==0){c[44432>>2]=Za(44512)|0}c[e>>2]=0;while(1){if(!((c[e>>2]|0)>>>0<7)){d=12;break}if((c[b>>2]|0)!=0){if((zb[c[43740>>2]&127](c[b>>2]|0,d)|0)==0){if((c[d+12>>2]&61440|0)==16384){if((zb[c[43716>>2]&127](c[b>>2]|0,7)|0)==0){d=12;break}}}}f=c[e>>2]|0;c[e>>2]=f+1;c[b>>2]=c[44424+(f<<2)>>2]}if((d|0)==12){i=a;return c[b>>2]|0}return 0}function kK(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;h=g+16|0;l=g;k=g+8|0;j=g+12|0;c[h>>2]=a;a=l;c[a>>2]=b;c[a+4>>2]=d;c[k>>2]=e;c[j>>2]=f;a=l;a=dK(c[(c[h>>2]|0)+12>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[k>>2]|0,c[j>>2]|0,(c[h>>2]|0)+20|0)|0;i=g;return a|0}function lK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e;g=e+4|0;c[h>>2]=a;c[g>>2]=b;switch(c[h>>2]|0){case 13:{if((c[g>>2]|0)==3850|(c[g>>2]|0)==2058|(c[g>>2]|0)==2314|(c[g>>2]|0)==3594){c[f>>2]=5}else{d=5}break};case 1:{d=5;break};case 37:case 4:case 16:case 110:case 11:{c[f>>2]=5;break};default:{c[f>>2]=c[g>>2]}}if((d|0)==5){c[f>>2]=3}i=e;return c[f>>2]|0}function mK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;e=f+8|0;c[g>>2]=a;c[f>>2]=b;c[f+4>>2]=d;c[e>>2]=$a(c[g>>2]|0)|0;i=f;return c[e>>2]|0}function nK(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+48|0;o=j+36|0;k=j+32|0;p=j;q=j+16|0;g=j+20|0;m=j+24|0;n=j+28|0;l=j+8|0;c[k>>2]=a;a=p;c[a>>2]=b;c[a+4>>2]=d;c[q>>2]=e;c[g>>2]=f;c[n>>2]=0;c[g>>2]=c[g>>2]&131071;do{a=xa(c[(c[k>>2]|0)+12>>2]|0,c[p>>2]|0,0)|0;b=l;c[b>>2]=a;c[b+4>>2]=((a|0)<0)<<31>>31;b=l;a=p;if((c[b>>2]|0)!=(c[a>>2]|0)?1:(c[b+4>>2]|0)!=(c[a+4>>2]|0)){h=3;break}c[m>>2]=pb[c[43788>>2]&31](c[(c[k>>2]|0)+12>>2]|0,c[q>>2]|0,c[g>>2]|0)|0;if((c[m>>2]|0)==(c[g>>2]|0)){break}if((c[m>>2]|0)<0){if((c[(ab()|0)>>2]|0)!=4){h=11;break}c[m>>2]=1}else{if((c[m>>2]|0)>0){c[g>>2]=(c[g>>2]|0)-(c[m>>2]|0);b=c[m>>2]|0;a=p;b=dL(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=p;c[a>>2]=b;c[a+4>>2]=D;c[n>>2]=(c[n>>2]|0)+(c[m>>2]|0);c[q>>2]=(c[q>>2]|0)+(c[m>>2]|0)}}}while((c[m>>2]|0)>0);if((h|0)==3){a=l;if((c[a>>2]|0)==-1?(c[a+4>>2]|0)==-1:0){a=c[(ab()|0)>>2]|0;c[(c[k>>2]|0)+20>>2]=a}else{c[(c[k>>2]|0)+20>>2]=0}c[o>>2]=-1;a=c[o>>2]|0;i=j;return a|0}else if((h|0)==11){c[n>>2]=0;a=c[(ab()|0)>>2]|0;c[(c[k>>2]|0)+20>>2]=a}c[o>>2]=(c[m>>2]|0)+(c[n>>2]|0);a=c[o>>2]|0;i=j;return a|0}function oK(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];if((c[(c[d>>2]|0)+12>>2]|0)>=0){WJ(c[d>>2]|0,c[(c[d>>2]|0)+12>>2]|0,25838);c[(c[d>>2]|0)+12>>2]=-1}oc(c[(c[d>>2]|0)+28>>2]|0);d=(c[d>>2]|0)+0|0;a=d+44|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));i=b;return 0}function pK(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 44536}function qK(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=oK(c[d>>2]|0)|0;i=b;return a|0}function rK(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function sK(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function tK(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[d+4>>2]=a;c[e>>2]=b;c[c[e>>2]>>2]=0;i=d;return 0}function uK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+96|0;k=d+92|0;j=d;e=d+4|0;h=d+8|0;f=d+84|0;g=d+88|0;c[k>>2]=a;c[j>>2]=b;c[e>>2]=0;if(0!=(zb[c[43740>>2]&127](c[k>>2]|0,h)|0)){k=c[e>>2]|0;i=d;return k|0}SJ();c[f>>2]=c[11218];while(1){if((c[f>>2]|0)!=0){if((c[c[f>>2]>>2]|0)!=(c[h>>2]|0)){a=1}else{a=(c[(c[f>>2]|0)+4>>2]|0)!=(c[h+72>>2]|0)}}else{a=0}b=c[f>>2]|0;if(!a){break}c[f>>2]=c[b+32>>2]}if((b|0)!=0){c[g>>2]=(c[f>>2]|0)+28;while(1){if((c[c[g>>2]>>2]|0)==0){break}if((c[(c[c[g>>2]>>2]|0)+4>>2]|0)==(c[j>>2]|0)){break}c[g>>2]=(c[c[g>>2]>>2]|0)+8}c[e>>2]=c[c[g>>2]>>2];if((c[e>>2]|0)!=0){c[c[g>>2]>>2]=c[(c[e>>2]|0)+8>>2]}}UJ();k=c[e>>2]|0;i=d;return k|0}function vK(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=i;i=i+624|0;q=o+100|0;l=o+96|0;k=o+92|0;n=o+88|0;h=o+84|0;j=o+4|0;p=o+104|0;r=o;m=o+8|0;c[q>>2]=b;c[l>>2]=d;c[k>>2]=e;c[n>>2]=f;c[h>>2]=g;c[j>>2]=0;c[c[k>>2]>>2]=0;c[c[n>>2]>>2]=0;c[c[h>>2]>>2]=0;if((c[l>>2]&526336|0)==0){if((c[l>>2]&8|0)==0){b=c[j>>2]|0;i=o;return b|0}c[c[k>>2]>>2]=384;b=c[j>>2]|0;i=o;return b|0}c[r>>2]=(Ub(c[q>>2]|0)|0)-1;while(1){if((a[(c[q>>2]|0)+(c[r>>2]|0)>>0]|0)==45){break}c[r>>2]=(c[r>>2]|0)+ -1}fL(p|0,c[q>>2]|0,c[r>>2]|0)|0;a[p+(c[r>>2]|0)>>0]=0;if(0==(zb[c[43740>>2]&127](p,m)|0)){c[c[k>>2]>>2]=c[m+12>>2]&511;c[c[n>>2]>>2]=c[m+20>>2];c[c[h>>2]>>2]=c[m+24>>2];b=c[j>>2]|0;i=o;return b|0}else{c[j>>2]=1802;b=c[j>>2]|0;i=o;return b|0}return 0}function wK(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;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;r=i;i=i+48|0;p=r;s=r+36|0;l=r+32|0;u=r+28|0;o=r+24|0;t=r+40|0;j=r+12|0;q=r+8|0;k=r+4|0;m=r+16|0;n=r+20|0;c[s>>2]=a;c[l>>2]=d;c[u>>2]=f;c[o>>2]=g;c[t>>2]=h;c[q>>2]=c[u>>2];c[k>>2]=0;c[(c[q>>2]|0)+12>>2]=c[l>>2];c[(c[q>>2]|0)+4>>2]=c[s>>2];c[(c[q>>2]|0)+32>>2]=c[o>>2];b[(c[q>>2]|0)+18>>1]=c[t>>2]&255;if((Ng((c[t>>2]&64|0)!=0?c[o>>2]|0:0,44656,1)|0)!=0){u=(c[q>>2]|0)+18|0;b[u>>1]=e[u>>1]|0|16}if((YK(c[(c[s>>2]|0)+16>>2]|0,1456)|0)==0){u=(c[q>>2]|0)+18|0;b[u>>1]=e[u>>1]|0|1}if((c[t>>2]&128|0)!=0){c[j>>2]=44536}else{c[j>>2]=zb[c[c[(c[s>>2]|0)+20>>2]>>2]&127](c[o>>2]|0,c[q>>2]|0)|0}if((c[j>>2]|0)==44664){SJ();c[k>>2]=xK(c[q>>2]|0,(c[q>>2]|0)+8|0)|0;if((c[k>>2]|0)!=0){WJ(c[q>>2]|0,c[l>>2]|0,29201);c[l>>2]=-1}UJ()}else{if((c[j>>2]|0)==43608){c[n>>2]=(cL(c[o>>2]|0)|0)+6;c[m>>2]=mc(c[n>>2]|0)|0;if((c[m>>2]|0)==0){c[k>>2]=7}else{a=c[n>>2]|0;u=c[m>>2]|0;c[p>>2]=c[o>>2];yc(a,u,44744,p)|0}c[(c[q>>2]|0)+24>>2]=c[m>>2]}}c[(c[q>>2]|0)+20>>2]=0;if((c[k>>2]|0)==0){c[c[q>>2]>>2]=c[j>>2];yK(c[q>>2]|0);u=c[k>>2]|0;i=r;return u|0}if((c[l>>2]|0)<0){u=c[k>>2]|0;i=r;return u|0}WJ(c[q>>2]|0,c[l>>2]|0,29286);u=c[k>>2]|0;i=r;return u|0}function xK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+112|0;e=h+104|0;j=h;g=h+4|0;l=h+8|0;m=h+12|0;d=h+16|0;k=h+24|0;f=h+100|0;c[j>>2]=a;c[g>>2]=b;c[f>>2]=0;c[m>>2]=c[(c[j>>2]|0)+12>>2];c[l>>2]=zb[c[43752>>2]&127](c[m>>2]|0,k)|0;if((c[l>>2]|0)!=0){m=c[(ab()|0)>>2]|0;c[(c[j>>2]|0)+20>>2]=m;if((c[(c[j>>2]|0)+20>>2]|0)==75){c[e>>2]=22;m=c[e>>2]|0;i=h;return m|0}else{c[e>>2]=10;m=c[e>>2]|0;i=h;return m|0}}c[d+0>>2]=0;c[d+4>>2]=0;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+72>>2];c[f>>2]=c[11218];while(1){if((c[f>>2]|0)!=0){b=(XK(d,c[f>>2]|0,8)|0)!=0}else{b=0}j=c[f>>2]|0;if(!b){break}c[f>>2]=c[j+32>>2]}if((j|0)==0){c[f>>2]=mc(40)|0;if((c[f>>2]|0)==0){c[e>>2]=7;m=c[e>>2]|0;i=h;return m|0}b=(c[f>>2]|0)+0|0;j=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(j|0));m=c[f>>2]|0;c[m+0>>2]=c[d+0>>2];c[m+4>>2]=c[d+4>>2];c[(c[f>>2]|0)+16>>2]=1;c[(c[f>>2]|0)+32>>2]=c[11218];c[(c[f>>2]|0)+36>>2]=0;if((c[11218]|0)!=0){c[(c[11218]|0)+36>>2]=c[f>>2]}c[11218]=c[f>>2]}else{m=(c[f>>2]|0)+16|0;c[m>>2]=(c[m>>2]|0)+1}c[c[g>>2]>>2]=c[f>>2];c[e>>2]=0;m=c[e>>2]|0;i=h;return m|0}function yK(a){a=a|0;var d=0,f=0,g=0,h=0,j=0;d=i;i=i+96|0;g=d;f=d+84|0;h=d+4|0;j=d+80|0;c[f>>2]=a;if((b[(c[f>>2]|0)+18>>1]&256|0)!=0){i=d;return}c[j>>2]=zb[c[43752>>2]&127](c[(c[f>>2]|0)+12>>2]|0,h)|0;if((c[j>>2]|0)!=0){c[g>>2]=c[(c[f>>2]|0)+32>>2];zc(28,44752,g);j=(c[f>>2]|0)+18|0;b[j>>1]=e[j>>1]|0|256;i=d;return}if((c[h+16>>2]|0)==0){if((b[(c[f>>2]|0)+18>>1]&32|0)==0){c[g>>2]=c[(c[f>>2]|0)+32>>2];zc(28,44776,g);j=(c[f>>2]|0)+18|0;b[j>>1]=e[j>>1]|0|256;i=d;return}}a=c[f>>2]|0;if((c[h+16>>2]|0)>>>0>1){c[g>>2]=c[a+32>>2];zc(28,44808,g);j=(c[f>>2]|0)+18|0;b[j>>1]=e[j>>1]|0|256;i=d;return}if((iK(a)|0)==0){i=d;return}c[g>>2]=c[(c[f>>2]|0)+32>>2];zc(28,44840,g);j=(c[f>>2]|0)+18|0;b[j>>1]=e[j>>1]|0|256;i=d;return}function zK(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16|0;d=f+8|0;e=f;b=f+4|0;c[d>>2]=a;c[e>>2]=0;c[b>>2]=c[d>>2];yK(c[b>>2]|0);BK(c[d>>2]|0,0)|0;SJ();if((c[(c[b>>2]|0)+8>>2]|0)!=0){if((c[(c[(c[b>>2]|0)+8>>2]|0)+24>>2]|0)!=0){GK(c[b>>2]|0)}}HK(c[b>>2]|0);c[e>>2]=oK(c[d>>2]|0)|0;UJ();i=f;return c[e>>2]|0}function AK(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=i;i=i+48|0;g=l+44|0;q=l;j=l+4|0;h=l+8|0;m=l+12|0;k=l+16|0;n=l+24|0;o=l+40|0;c[q>>2]=e;c[j>>2]=f;c[h>>2]=0;c[m>>2]=c[q>>2];c[o>>2]=0;if((d[(c[m>>2]|0)+16>>0]|0|0)>=(c[j>>2]|0)){c[g>>2]=0;q=c[g>>2]|0;i=l;return q|0}SJ();c[k>>2]=c[(c[m>>2]|0)+8>>2];do{if((d[(c[m>>2]|0)+16>>0]|0|0)!=(d[(c[k>>2]|0)+12>>0]|0|0)){if((d[(c[k>>2]|0)+12>>0]|0|0)<3){if((c[j>>2]|0)<=1){p=7;break}}c[h>>2]=5}else{p=7}}while(0);a:do{if((p|0)==7){do{if((c[j>>2]|0)==1){if((d[(c[k>>2]|0)+12>>0]|0|0)!=1){if((d[(c[k>>2]|0)+12>>0]|0|0)!=2){break}}a[(c[m>>2]|0)+16>>0]=1;q=(c[k>>2]|0)+8|0;c[q>>2]=(c[q>>2]|0)+1;q=(c[k>>2]|0)+24|0;c[q>>2]=(c[q>>2]|0)+1;break a}}while(0);c[n+8>>2]=1;b[n+2>>1]=0;if((c[j>>2]|0)==1){p=14}else{if((c[j>>2]|0)==4){if((d[(c[m>>2]|0)+16>>0]|0|0)<3){p=14}}}if((p|0)==14){b[n>>1]=(c[j>>2]|0)==1?0:1;c[n+4>>2]=c[368];if((EK(c[m>>2]|0,n)|0)!=0){c[o>>2]=c[(ab()|0)>>2];c[h>>2]=lK(c[o>>2]|0,3850)|0;if((c[h>>2]|0)==5){break}c[(c[m>>2]|0)+20>>2]=c[o>>2];break}}do{if((c[j>>2]|0)==1){c[n+4>>2]=(c[368]|0)+2;c[n+8>>2]=510;if((EK(c[m>>2]|0,n)|0)!=0){c[o>>2]=c[(ab()|0)>>2];c[h>>2]=lK(c[o>>2]|0,3850)|0}c[n+4>>2]=c[368];c[n+8>>2]=1;b[n>>1]=2;if((EK(c[m>>2]|0,n)|0)!=0){if((c[h>>2]|0)==0){c[o>>2]=c[(ab()|0)>>2];c[h>>2]=2058}}if((c[h>>2]|0)==0){a[(c[m>>2]|0)+16>>0]=1;q=(c[k>>2]|0)+24|0;c[q>>2]=(c[q>>2]|0)+1;c[(c[k>>2]|0)+8>>2]=1;break}if((c[h>>2]|0)==5){break a}c[(c[m>>2]|0)+20>>2]=c[o>>2];break a}else{if((c[j>>2]|0)==4){if((c[(c[k>>2]|0)+8>>2]|0)>1){c[h>>2]=5;break}}b[n>>1]=1;p=c[368]|0;if((c[j>>2]|0)==2){c[n+4>>2]=p+1;c[n+8>>2]=1}else{c[n+4>>2]=p+2;c[n+8>>2]=510}if((EK(c[m>>2]|0,n)|0)!=0){c[o>>2]=c[(ab()|0)>>2];c[h>>2]=lK(c[o>>2]|0,3850)|0;if((c[h>>2]|0)!=5){c[(c[m>>2]|0)+20>>2]=c[o>>2]}}}}while(0);n=c[j>>2]|0;if((c[h>>2]|0)==0){a[(c[m>>2]|0)+16>>0]=n;a[(c[k>>2]|0)+12>>0]=c[j>>2];break}if((n|0)==4){a[(c[m>>2]|0)+16>>0]=3;a[(c[k>>2]|0)+12>>0]=3}}}while(0);UJ();c[g>>2]=c[h>>2];q=c[g>>2]|0;i=l;return q|0}function BK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=DK(c[f>>2]|0,c[e>>2]|0,0)|0;i=d;return a|0}function CK(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;m=i;i=i+48|0;j=m;o=m+40|0;l=m+4|0;n=m+8|0;k=m+12|0;h=m+16|0;g=m+24|0;c[o>>2]=e;c[l>>2]=f;c[n>>2]=0;c[k>>2]=0;c[h>>2]=c[o>>2];SJ();if((d[(c[(c[h>>2]|0)+8>>2]|0)+12>>0]|0)>1){c[k>>2]=1}do{if((c[k>>2]|0)==0){if((a[(c[(c[h>>2]|0)+8>>2]|0)+13>>0]|0)==0){b[g+2>>1]=0;c[g+4>>2]=(c[368]|0)+1;c[g+8>>2]=1;b[g>>1]=1;e=c[43776>>2]|0;o=c[(c[h>>2]|0)+12>>2]|0;c[j>>2]=g;if((pb[e&31](o,12,j)|0)!=0){c[n>>2]=3594;o=c[(ab()|0)>>2]|0;c[(c[h>>2]|0)+20>>2]=o;break}if((b[g>>1]|0)!=2){c[k>>2]=1}}}}while(0);UJ();c[c[l>>2]>>2]=c[k>>2];i=m;return c[n>>2]|0}function DK(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+48|0;k=n+44|0;q=n;l=n+4|0;m=n+12|0;o=n+16|0;p=n+24|0;h=n+40|0;c[q>>2]=e;c[l>>2]=f;c[n+8>>2]=g;c[m>>2]=c[q>>2];c[h>>2]=0;if((d[(c[m>>2]|0)+16>>0]|0|0)<=(c[l>>2]|0)){c[k>>2]=0;q=c[k>>2]|0;i=n;return q|0}SJ();c[o>>2]=c[(c[m>>2]|0)+8>>2];do{if((d[(c[m>>2]|0)+16>>0]|0|0)>1){if((c[l>>2]|0)==1){b[p>>1]=0;b[p+2>>1]=0;c[p+4>>2]=(c[368]|0)+2;c[p+8>>2]=510;if((EK(c[m>>2]|0,p)|0)!=0){c[h>>2]=2314;q=c[(ab()|0)>>2]|0;c[(c[m>>2]|0)+20>>2]=q;break}}b[p>>1]=2;b[p+2>>1]=0;c[p+4>>2]=c[368];c[p+8>>2]=2;if((EK(c[m>>2]|0,p)|0)==0){a[(c[o>>2]|0)+12>>0]=1;j=10;break}else{c[h>>2]=2058;q=c[(ab()|0)>>2]|0;c[(c[m>>2]|0)+20>>2]=q;break}}else{j=10}}while(0);if((j|0)==10){if((c[l>>2]|0)==0){q=(c[o>>2]|0)+8|0;c[q>>2]=(c[q>>2]|0)+ -1;do{if((c[(c[o>>2]|0)+8>>2]|0)==0){b[p>>1]=2;b[p+2>>1]=0;c[p+8>>2]=0;c[p+4>>2]=0;if((EK(c[m>>2]|0,p)|0)==0){a[(c[o>>2]|0)+12>>0]=0;break}else{c[h>>2]=2058;q=c[(ab()|0)>>2]|0;c[(c[m>>2]|0)+20>>2]=q;a[(c[o>>2]|0)+12>>0]=0;a[(c[m>>2]|0)+16>>0]=0;break}}}while(0);q=(c[o>>2]|0)+24|0;c[q>>2]=(c[q>>2]|0)+ -1;if((c[(c[o>>2]|0)+24>>2]|0)==0){FK(c[m>>2]|0)}}}UJ();if((c[h>>2]|0)==0){a[(c[m>>2]|0)+16>>0]=c[l>>2]}c[k>>2]=c[h>>2];q=c[k>>2]|0;i=n;return q|0}function EK(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+48|0;n=j;h=j+40|0;m=j+4|0;o=j+8|0;l=j+12|0;k=j+16|0;g=j+24|0;c[m>>2]=e;c[o>>2]=f;c[k>>2]=c[(c[m>>2]|0)+8>>2];if((b[(c[m>>2]|0)+18>>1]&1|0)!=0){f=3}else{if((d[(c[k>>2]|0)+13>>0]|0|0)!=0){f=3}else{f=9}}do{if((f|0)==3){if((b[(c[m>>2]|0)+18>>1]&2|0)==0){if((d[(c[k>>2]|0)+13>>0]|0|0)!=0){c[l>>2]=0;break}b[g+2>>1]=0;c[g+4>>2]=(c[368]|0)+2;c[g+8>>2]=510;b[g>>1]=1;o=c[43776>>2]|0;e=c[(c[m>>2]|0)+12>>2]|0;c[n>>2]=g;c[l>>2]=pb[o&31](e,13,n)|0;if((c[l>>2]|0)>=0){a[(c[k>>2]|0)+13>>0]=1;e=(c[k>>2]|0)+24|0;c[e>>2]=(c[e>>2]|0)+1;break}c[h>>2]=c[l>>2];e=c[h>>2]|0;i=j;return e|0}else{f=9}}}while(0);if((f|0)==9){f=c[43776>>2]|0;e=c[(c[m>>2]|0)+12>>2]|0;c[n>>2]=c[o>>2];c[l>>2]=pb[f&31](e,13,n)|0}c[h>>2]=c[l>>2];e=c[h>>2]|0;i=j;return e|0}function FK(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+12|0;b=d;e=d+4|0;f=d+8|0;c[g>>2]=a;c[b>>2]=c[(c[g>>2]|0)+8>>2];c[e>>2]=c[(c[b>>2]|0)+28>>2];while(1){if((c[e>>2]|0)==0){break}c[f>>2]=c[(c[e>>2]|0)+8>>2];WJ(c[g>>2]|0,c[c[e>>2]>>2]|0,25104);oc(c[e>>2]|0);c[e>>2]=c[f>>2]}c[(c[b>>2]|0)+28>>2]=0;i=d;return}function GK(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b;f=b+4|0;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+8>>2];c[f>>2]=c[(c[d>>2]|0)+28>>2];c[(c[f>>2]|0)+8>>2]=c[(c[e>>2]|0)+28>>2];c[(c[e>>2]|0)+28>>2]=c[f>>2];c[(c[d>>2]|0)+12>>2]=-1;c[(c[d>>2]|0)+28>>2]=0;i=b;return}function HK(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[(c[e>>2]|0)+8>>2];if((c[d>>2]|0)==0){i=b;return}a=(c[d>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+ -1;if((c[(c[d>>2]|0)+16>>2]|0)!=0){i=b;return}FK(c[e>>2]|0);a=c[(c[d>>2]|0)+32>>2]|0;if((c[(c[d>>2]|0)+36>>2]|0)!=0){c[(c[(c[d>>2]|0)+36>>2]|0)+32>>2]=a}else{c[11218]=a}if((c[(c[d>>2]|0)+32>>2]|0)!=0){c[(c[(c[d>>2]|0)+32>>2]|0)+36>>2]=c[(c[d>>2]|0)+36>>2]}oc(c[d>>2]|0);i=b;return}function IK(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 44664}function JK(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b;e=b+8|0;c[e>>2]=a;if((c[c[e>>2]>>2]|0)<=(c[(c[e>>2]|0)+4>>2]|0)){e=d;c[e>>2]=0;c[e+4>>2]=0;e=d;e=c[e>>2]|0;d=d+4|0;d=c[d>>2]|0;D=d;i=b;return e|0}else{f=(c[e>>2]|0)+4|0;a=c[f>>2]|0;c[f>>2]=a+1;a=Qd(c[(c[(c[e>>2]|0)+8>>2]|0)+(a<<2)>>2]|0)|0;e=d;c[e>>2]=a;c[e+4>>2]=D;e=d;e=c[e>>2]|0;d=d+4|0;d=c[d>>2]|0;D=d;i=b;return e|0}return 0}function KK(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0;b=i;i=i+16|0;d=b;e=b+8|0;c[e>>2]=a;if((c[c[e>>2]>>2]|0)<=(c[(c[e>>2]|0)+4>>2]|0)){h[d>>3]=0.0;f=+h[d>>3];i=b;return+f}else{g=(c[e>>2]|0)+4|0;a=c[g>>2]|0;c[g>>2]=a+1;h[d>>3]=+Md(c[(c[(c[e>>2]|0)+8>>2]|0)+(a<<2)>>2]|0);f=+h[d>>3];i=b;return+f}return 0.0}function LK(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;j=e+16|0;l=e+8|0;g=e+12|0;k=e;c[j>>2]=b;c[l>>2]=d;if((c[c[l>>2]>>2]|0)<=0){a[f>>0]=48;b=a[f>>0]|0;i=e;return b|0}else{b=c[l>>2]|0;c[b>>2]=(c[b>>2]|0)+ -1;c[g>>2]=~~+h[c[j>>2]>>3];h[k>>3]=+(c[g>>2]|0);c[g>>2]=(c[g>>2]|0)+48;h[c[j>>2]>>3]=(+h[c[j>>2]>>3]- +h[k>>3])*10.0;a[f>>0]=c[g>>2];b=a[f>>0]|0;i=e;return b|0}return 0}function MK(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;if((c[c[e>>2]>>2]|0)<=(c[(c[e>>2]|0)+4>>2]|0)){c[d>>2]=0;e=c[d>>2]|0;i=b;return e|0}else{f=(c[e>>2]|0)+4|0;a=c[f>>2]|0;c[f>>2]=a+1;c[d>>2]=Jd(c[(c[(c[e>>2]|0)+8>>2]|0)+(a<<2)>>2]|0)|0;e=c[d>>2]|0;i=b;return e|0}return 0}function NK(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;g=e+4|0;f=e;c[g>>2]=b;c[f>>2]=d;if(((c[(c[g>>2]|0)+12>>2]|0)+(c[f>>2]|0)|0)>=(c[(c[g>>2]|0)+16>>2]|0)){b=Lt(c[g>>2]|0,c[f>>2]|0)|0;c[f>>2]=b;if((b|0)<=0){i=e;return}}while(1){b=c[f>>2]|0;c[f>>2]=b+ -1;if((b|0)<=0){break}d=(c[g>>2]|0)+12|0;b=c[d>>2]|0;c[d>>2]=b+1;a[(c[(c[g>>2]|0)+8>>2]|0)+b>>0]=32}i=e;return}function OK(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;f=i;i=i+944|0;k=f+680|0;j=f+424|0;l=f;g=f+232|0;b=$(d,b)|0;if((b|0)==0){i=f;return}n=b-d|0;c[g+4>>2]=d;c[g>>2]=d;p=d;o=d;m=2;while(1){p=p+d+o|0;c[g+(m<<2)>>2]=p;if(p>>>0>>0){B=o;o=p;m=m+1|0;p=B}else{break}}b=0-d|0;m=a+n|0;if((n|0)>0){q=(d|0)==0;n=d>>>0>256?256:d;o=(n|0)==(d|0);p=m;r=1;s=0;t=1;do{do{if((r&3|0)==3){c[l>>2]=a;a:do{if((t|0)>1){v=t;A=a;z=a;y=1;while(1){x=A+b|0;w=v+ -2|0;A=A+(0-((c[g+(w<<2)>>2]|0)+d))|0;if((zb[e&127](z,A)|0)>-1){if((zb[e&127](z,x)|0)>-1){u=y;break}}u=y+1|0;y=l+(y<<2)|0;if((zb[e&127](A,x)|0)>-1){c[y>>2]=A;x=A;v=v+ -1|0}else{c[y>>2]=x;v=w}if((v|0)<=1){break}A=x;z=c[l>>2]|0;y=u}if((u|0)>=2){x=l+(u<<2)|0;c[x>>2]=j;if(!q){if((u|0)>0){w=d;y=j}else{u=c[l>>2]|0;fL(j|0,u|0,n|0)|0;if(o){break}else{v=d;w=n}while(1){v=v-w|0;w=v>>>0>256?256:v;fL(j|0,u|0,w|0)|0;if((v|0)==(w|0)){break a}}}while(1){v=w>>>0>256?256:w;z=c[l>>2]|0;fL(y|0,z|0,v|0)|0;y=0;do{B=y;y=y+1|0;A=z;z=c[l+(y<<2)>>2]|0;fL(A|0,z|0,v|0)|0;c[l+(B<<2)>>2]=A+v}while((y|0)!=(u|0));if((w|0)==(v|0)){break a}w=w-v|0;y=c[x>>2]|0}}}}}while(0);u=r>>>2|s<<30;s=s>>>2;t=t+2|0}else{u=t+ -1|0;b:do{if((c[g+(u<<2)>>2]|0)>>>0<(p-a|0)>>>0){c[l>>2]=a;if((t|0)>1){w=t;A=a;z=a;B=1;while(1){y=A+b|0;x=w+ -2|0;A=A+(0-((c[g+(x<<2)>>2]|0)+d))|0;if((zb[e&127](z,A)|0)>-1){if((zb[e&127](z,y)|0)>-1){v=B;break}}v=B+1|0;z=l+(B<<2)|0;if((zb[e&127](A,y)|0)>-1){c[z>>2]=A;y=A;w=w+ -1|0}else{c[z>>2]=y;w=x}if((w|0)<=1){break}A=y;z=c[l>>2]|0;B=v}if((v|0)>=2){x=l+(v<<2)|0;c[x>>2]=k;if(!q){if((v|0)>0){w=d;z=k}else{x=c[l>>2]|0;fL(k|0,x|0,n|0)|0;if(o){break}else{w=d;v=n}while(1){w=w-v|0;v=w>>>0>256?256:w;fL(k|0,x|0,v|0)|0;if((w|0)==(v|0)){break b}}}while(1){y=w>>>0>256?256:w;A=c[l>>2]|0;fL(z|0,A|0,y|0)|0;z=0;do{B=z;z=z+1|0;C=A;A=c[l+(z<<2)>>2]|0;fL(C|0,A|0,y|0)|0;c[l+(B<<2)>>2]=C+y}while((z|0)!=(v|0));if((w|0)==(y|0)){break b}w=w-y|0;z=c[x>>2]|0}}}}}else{PK(a,d,e,r,s,t,0,g)}}while(0);if((t|0)==1){u=r<<1;s=r>>>31|s<<1;t=0;break}else{C=u>>>0>31;B=C?0:r;t=C?t+ -33|0:u;u=B<>>(32-t|0)|(C?r:s)<>>0>>0)}else{s=0;r=1;t=1}PK(a,d,e,r,s,t,0,g);while(1){if((t|0)==1){if((r|0)==1){if((s|0)==0){break}else{h=52}}}else{h=52}if((h|0)==52){h=0;if((t|0)>=2){A=r>>>30;C=t+ -2|0;z=(r<<1&2147483646|A<<31)^3;B=(A|s<<2)>>>1;PK(a+(0-((c[g+(C<<2)>>2]|0)+d))|0,d,e,z,B,t+ -1|0,1,g);A=B<<1|A&1;z=z<<1|1;B=a+b|0;PK(B,d,e,z,A,C,1,g);r=z;s=A;a=B;t=C;continue}}j=r+ -1|0;if((j|0)==0){k=32;h=62}else{if((j&1|0)==0){k=0;do{k=k+1|0;j=j>>>1}while((j&1|0)==0);if((k|0)==0){h=57}}else{h=57}if((h|0)==57){h=0;if((s|0)==0){k=32}else{if((s&1|0)==0){j=s;k=0;do{k=k+1|0;j=j>>>1}while((j&1|0)==0)}else{k=0}}k=(k|0)==0?0:k+32|0}if(k>>>0>31){h=62}else{j=k}}if((h|0)==62){h=0;j=k+ -32|0;r=s;s=0}r=s<<32-j|r>>>j;s=s>>>j;a=a+b|0;t=k+t|0}i=f;return}function PK(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+720|0;l=k+456|0;m=k;o=k+228|0;c[o>>2]=a;n=0-b|0;a:do{if((e|0)==1&(f|0)==0){q=1;p=18}else{r=a;t=a;s=1;while(1){a=r+(0-(c[j+(g<<2)>>2]|0))|0;if((zb[d&127](a,t)|0)<1){a=r;q=s;p=18;break a}if((h|0)==0&(g|0)>1){q=c[j+(g+ -2<<2)>>2]|0;if((zb[d&127](r+n|0,a)|0)>-1){a=r;q=s;break a}if((zb[d&127](r+(0-(q+b))|0,a)|0)>-1){a=r;q=s;break a}}q=s+1|0;c[o+(s<<2)>>2]=a;r=e+ -1|0;if((r|0)==0){h=32;p=15}else{if((r&1|0)==0){h=0;do{h=h+1|0;r=r>>>1}while((r&1|0)==0);if((h|0)==0){p=10}}else{p=10}if((p|0)==10){p=0;if((f|0)==0){h=32}else{if((f&1|0)==0){r=f;h=0;do{h=h+1|0;r=r>>>1}while((r&1|0)==0)}else{h=0}}h=(h|0)==0?0:h+32|0}if(h>>>0>31){p=15}else{r=h}}if((p|0)==15){p=0;r=h+ -32|0;e=f;f=0}e=f<<32-r|e>>>r;f=f>>>r;g=h+g|0;if((e|0)==1&(f|0)==0){break a}r=a;h=0;t=c[o>>2]|0;s=q}}}while(0);if((p|0)==18){if((h|0)!=0){i=k;return}}b:do{if((q|0)>=2){p=o+(q<<2)|0;c[p>>2]=l;if((b|0)!=0){if((q|0)>0){e=b;r=l}else{p=b>>>0>256?256:b;q=c[o>>2]|0;fL(l|0,q|0,p|0)|0;if((p|0)==(b|0)){break}else{o=b}while(1){o=o-p|0;p=o>>>0>256?256:o;fL(l|0,q|0,p|0)|0;if((o|0)==(p|0)){break b}}}while(1){f=e>>>0>256?256:e;h=c[o>>2]|0;fL(r|0,h|0,f|0)|0;r=h;h=0;do{t=h;h=h+1|0;s=r;r=c[o+(h<<2)>>2]|0;fL(s|0,r|0,f|0)|0;c[o+(t<<2)>>2]=s+f}while((h|0)!=(q|0));if((e|0)==(f|0)){break b}e=e-f|0;r=c[p>>2]|0}}}}while(0);c[m>>2]=a;c:do{if((g|0)>1){f=a;e=1;while(1){q=f+n|0;p=g+ -2|0;f=f+(0-((c[j+(p<<2)>>2]|0)+b))|0;if((zb[d&127](a,f)|0)>-1){if((zb[d&127](a,q)|0)>-1){o=e;break}}o=e+1|0;a=m+(e<<2)|0;if((zb[d&127](f,q)|0)>-1){c[a>>2]=f;q=f;g=g+ -1|0}else{c[a>>2]=q;g=p}if((g|0)<=1){break}f=q;a=c[m>>2]|0;e=o}if((o|0)>=2){n=m+(o<<2)|0;c[n>>2]=l;if((b|0)!=0){if((o|0)>0){d=l}else{n=b>>>0>256?256:b;m=c[m>>2]|0;fL(l|0,m|0,n|0)|0;if((n|0)==(b|0)){break}while(1){b=b-n|0;n=b>>>0>256?256:b;fL(l|0,m|0,n|0)|0;if((b|0)==(n|0)){break c}}}while(1){j=b>>>0>256?256:b;p=c[m>>2]|0;fL(d|0,p|0,j|0)|0;d=p;p=0;do{t=p;p=p+1|0;s=d;d=c[m+(p<<2)>>2]|0;fL(s|0,d|0,j|0)|0;c[m+(t<<2)>>2]=s+j}while((p|0)!=(o|0));if((b|0)==(j|0)){break c}b=b-j|0;d=c[n>>2]|0}}}}}while(0);i=k;return}function QK(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=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;b=i;do{if(a>>>0<245){if(a>>>0<11){a=16}else{a=a+11&-8}o=a>>>3;n=c[11382]|0;p=n>>>o;if((p&3|0)!=0){f=(p&1^1)+o|0;e=f<<1;j=45568+(e<<2)|0;e=45568+(e+2<<2)|0;g=c[e>>2]|0;h=g+8|0;d=c[h>>2]|0;do{if((j|0)==(d|0)){c[11382]=n&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}k=d+12|0;if((c[k>>2]|0)==(g|0)){c[k>>2]=j;c[e>>2]=d;break}else{gb()}}}while(0);z=f<<3;c[g+4>>2]=z|3;z=g+(z|4)|0;c[z>>2]=c[z>>2]|1;z=h;i=b;return z|0}if(a>>>0>(c[45536>>2]|0)>>>0){if((p|0)!=0){j=2<>>12&16;j=j>>>d;h=j>>>5&8;j=j>>>h;g=j>>>2&4;j=j>>>g;f=j>>>1&2;j=j>>>f;e=j>>>1&1;e=(h|d|g|f|e)+(j>>>e)|0;j=e<<1;f=45568+(j<<2)|0;j=45568+(j+2<<2)|0;g=c[j>>2]|0;d=g+8|0;h=c[d>>2]|0;do{if((f|0)==(h|0)){c[11382]=n&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}k=h+12|0;if((c[k>>2]|0)==(g|0)){c[k>>2]=f;c[j>>2]=h;break}else{gb()}}}while(0);h=e<<3;e=h-a|0;c[g+4>>2]=a|3;f=g+a|0;c[g+(a|4)>>2]=e|1;c[g+h>>2]=e;h=c[45536>>2]|0;if((h|0)!=0){g=c[45548>>2]|0;k=h>>>3;l=k<<1;h=45568+(l<<2)|0;j=c[11382]|0;k=1<>2]|0;if(k>>>0<(c[45544>>2]|0)>>>0){gb()}else{u=j;v=k}}c[u>>2]=g;c[v+12>>2]=g;c[g+8>>2]=v;c[g+12>>2]=h}c[45536>>2]=e;c[45548>>2]=f;z=d;i=b;return z|0}n=c[45532>>2]|0;if((n|0)!=0){d=(n&0-n)+ -1|0;y=d>>>12&16;d=d>>>y;x=d>>>5&8;d=d>>>x;z=d>>>2&4;d=d>>>z;f=d>>>1&2;d=d>>>f;e=d>>>1&1;e=c[45832+((x|y|z|f|e)+(d>>>e)<<2)>>2]|0;d=(c[e+4>>2]&-8)-a|0;f=e;while(1){g=c[f+16>>2]|0;if((g|0)==0){g=c[f+20>>2]|0;if((g|0)==0){break}}f=(c[g+4>>2]&-8)-a|0;z=f>>>0>>0;d=z?f:d;f=g;e=z?g:e}h=c[45544>>2]|0;if(e>>>0>>0){gb()}f=e+a|0;if(!(e>>>0>>0)){gb()}g=c[e+24>>2]|0;k=c[e+12>>2]|0;do{if((k|0)==(e|0)){k=e+20|0;j=c[k>>2]|0;if((j|0)==0){k=e+16|0;j=c[k>>2]|0;if((j|0)==0){t=0;break}}while(1){m=j+20|0;l=c[m>>2]|0;if((l|0)!=0){j=l;k=m;continue}m=j+16|0;l=c[m>>2]|0;if((l|0)==0){break}else{j=l;k=m}}if(k>>>0>>0){gb()}else{c[k>>2]=0;t=j;break}}else{j=c[e+8>>2]|0;if(j>>>0>>0){gb()}l=j+12|0;if((c[l>>2]|0)!=(e|0)){gb()}h=k+8|0;if((c[h>>2]|0)==(e|0)){c[l>>2]=k;c[h>>2]=j;t=k;break}else{gb()}}}while(0);do{if((g|0)!=0){j=c[e+28>>2]|0;h=45832+(j<<2)|0;if((e|0)==(c[h>>2]|0)){c[h>>2]=t;if((t|0)==0){c[45532>>2]=c[45532>>2]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}h=g+16|0;if((c[h>>2]|0)==(e|0)){c[h>>2]=t}else{c[g+20>>2]=t}if((t|0)==0){break}}if(t>>>0<(c[45544>>2]|0)>>>0){gb()}c[t+24>>2]=g;g=c[e+16>>2]|0;do{if((g|0)!=0){if(g>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[t+16>>2]=g;c[g+24>>2]=t;break}}}while(0);g=c[e+20>>2]|0;if((g|0)!=0){if(g>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[t+20>>2]=g;c[g+24>>2]=t;break}}}}while(0);if(d>>>0<16){z=d+a|0;c[e+4>>2]=z|3;z=e+(z+4)|0;c[z>>2]=c[z>>2]|1}else{c[e+4>>2]=a|3;c[e+(a|4)>>2]=d|1;c[e+(d+a)>>2]=d;h=c[45536>>2]|0;if((h|0)!=0){g=c[45548>>2]|0;k=h>>>3;l=k<<1;h=45568+(l<<2)|0;j=c[11382]|0;k=1<>2]|0;if(j>>>0<(c[45544>>2]|0)>>>0){gb()}else{s=k;r=j}}c[s>>2]=g;c[r+12>>2]=g;c[g+8>>2]=r;c[g+12>>2]=h}c[45536>>2]=d;c[45548>>2]=f}z=e+8|0;i=b;return z|0}}}else{if(a>>>0>4294967231){a=-1}else{r=a+11|0;a=r&-8;t=c[45532>>2]|0;if((t|0)!=0){s=0-a|0;r=r>>>8;if((r|0)==0){u=0}else{if(a>>>0>16777215){u=31}else{y=(r+1048320|0)>>>16&8;z=r<>>16&4;z=z<>>16&2;u=14-(x|y|u)+(z<>>15)|0;u=a>>>(u+7|0)&1|u<<1}}v=c[45832+(u<<2)>>2]|0;a:do{if((v|0)==0){x=0;r=0}else{if((u|0)==31){r=0}else{r=25-(u>>>1)|0}x=0;w=a<>2]&-8;y=z-a|0;if(y>>>0>>0){if((z|0)==(a|0)){s=y;x=v;r=v;break a}else{s=y;r=v}}z=c[v+20>>2]|0;v=c[v+(w>>>31<<2)+16>>2]|0;x=(z|0)==0|(z|0)==(v|0)?x:z;if((v|0)==0){break}else{w=w<<1}}}}while(0);if((x|0)==0&(r|0)==0){z=2<>>12&16;z=z>>>v;u=z>>>5&8;z=z>>>u;w=z>>>2&4;z=z>>>w;y=z>>>1&2;z=z>>>y;x=z>>>1&1;x=c[45832+((u|v|w|y|x)+(z>>>x)<<2)>>2]|0}if((x|0)!=0){while(1){z=(c[x+4>>2]&-8)-a|0;t=z>>>0>>0;s=t?z:s;r=t?x:r;t=c[x+16>>2]|0;if((t|0)!=0){x=t;continue}x=c[x+20>>2]|0;if((x|0)==0){break}}}if((r|0)!=0){if(s>>>0<((c[45536>>2]|0)-a|0)>>>0){f=c[45544>>2]|0;if(r>>>0>>0){gb()}d=r+a|0;if(!(r>>>0>>0)){gb()}e=c[r+24>>2]|0;g=c[r+12>>2]|0;do{if((g|0)==(r|0)){h=r+20|0;g=c[h>>2]|0;if((g|0)==0){h=r+16|0;g=c[h>>2]|0;if((g|0)==0){q=0;break}}while(1){k=g+20|0;j=c[k>>2]|0;if((j|0)!=0){g=j;h=k;continue}k=g+16|0;j=c[k>>2]|0;if((j|0)==0){break}else{g=j;h=k}}if(h>>>0>>0){gb()}else{c[h>>2]=0;q=g;break}}else{h=c[r+8>>2]|0;if(h>>>0>>0){gb()}j=h+12|0;if((c[j>>2]|0)!=(r|0)){gb()}f=g+8|0;if((c[f>>2]|0)==(r|0)){c[j>>2]=g;c[f>>2]=h;q=g;break}else{gb()}}}while(0);do{if((e|0)!=0){g=c[r+28>>2]|0;f=45832+(g<<2)|0;if((r|0)==(c[f>>2]|0)){c[f>>2]=q;if((q|0)==0){c[45532>>2]=c[45532>>2]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}f=e+16|0;if((c[f>>2]|0)==(r|0)){c[f>>2]=q}else{c[e+20>>2]=q}if((q|0)==0){break}}if(q>>>0<(c[45544>>2]|0)>>>0){gb()}c[q+24>>2]=e;e=c[r+16>>2]|0;do{if((e|0)!=0){if(e>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[q+16>>2]=e;c[e+24>>2]=q;break}}}while(0);e=c[r+20>>2]|0;if((e|0)!=0){if(e>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[q+20>>2]=e;c[e+24>>2]=q;break}}}}while(0);b:do{if(s>>>0<16){z=s+a|0;c[r+4>>2]=z|3;z=r+(z+4)|0;c[z>>2]=c[z>>2]|1}else{c[r+4>>2]=a|3;c[r+(a|4)>>2]=s|1;c[r+(s+a)>>2]=s;f=s>>>3;if(s>>>0<256){g=f<<1;e=45568+(g<<2)|0;h=c[11382]|0;f=1<>2]|0;if(!(f>>>0<(c[45544>>2]|0)>>>0)){p=g;o=f;break}gb()}}while(0);c[p>>2]=d;c[o+12>>2]=d;c[r+(a+8)>>2]=o;c[r+(a+12)>>2]=e;break}e=s>>>8;if((e|0)==0){e=0}else{if(s>>>0>16777215){e=31}else{y=(e+1048320|0)>>>16&8;z=e<>>16&4;z=z<>>16&2;e=14-(x|y|e)+(z<>>15)|0;e=s>>>(e+7|0)&1|e<<1}}f=45832+(e<<2)|0;c[r+(a+28)>>2]=e;c[r+(a+20)>>2]=0;c[r+(a+16)>>2]=0;h=c[45532>>2]|0;g=1<>2]=h|g;c[f>>2]=d;c[r+(a+24)>>2]=f;c[r+(a+12)>>2]=d;c[r+(a+8)>>2]=d;break}f=c[f>>2]|0;if((e|0)==31){e=0}else{e=25-(e>>>1)|0}c:do{if((c[f+4>>2]&-8|0)==(s|0)){n=f}else{e=s<>>31<<2)+16|0;h=c[g>>2]|0;if((h|0)==0){break}if((c[h+4>>2]&-8|0)==(s|0)){n=h;break c}else{e=e<<1;f=h}}if(g>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[g>>2]=d;c[r+(a+24)>>2]=f;c[r+(a+12)>>2]=d;c[r+(a+8)>>2]=d;break b}}}while(0);e=n+8|0;f=c[e>>2]|0;g=c[45544>>2]|0;if(n>>>0>>0){gb()}if(f>>>0>>0){gb()}else{c[f+12>>2]=d;c[e>>2]=d;c[r+(a+8)>>2]=f;c[r+(a+12)>>2]=n;c[r+(a+24)>>2]=0;break}}}while(0);z=r+8|0;i=b;return z|0}}}}}}while(0);n=c[45536>>2]|0;if(!(a>>>0>n>>>0)){e=n-a|0;d=c[45548>>2]|0;if(e>>>0>15){c[45548>>2]=d+a;c[45536>>2]=e;c[d+(a+4)>>2]=e|1;c[d+n>>2]=e;c[d+4>>2]=a|3}else{c[45536>>2]=0;c[45548>>2]=0;c[d+4>>2]=n|3;z=d+(n+4)|0;c[z>>2]=c[z>>2]|1}z=d+8|0;i=b;return z|0}n=c[45540>>2]|0;if(a>>>0>>0){y=n-a|0;c[45540>>2]=y;z=c[45552>>2]|0;c[45552>>2]=z+a;c[z+(a+4)>>2]=y|1;c[z+4>>2]=a|3;z=z+8|0;i=b;return z|0}do{if((c[11500]|0)==0){n=Sa(30)|0;if((n+ -1&n|0)==0){c[46008>>2]=n;c[46004>>2]=n;c[46012>>2]=-1;c[46016>>2]=-1;c[46020>>2]=0;c[45972>>2]=0;c[11500]=(hb(0)|0)&-16^1431655768;break}else{gb()}}}while(0);q=a+48|0;o=c[46008>>2]|0;r=a+47|0;n=o+r|0;o=0-o|0;p=n&o;if(!(p>>>0>a>>>0)){z=0;i=b;return z|0}s=c[45968>>2]|0;if((s|0)!=0){y=c[45960>>2]|0;z=y+p|0;if(z>>>0<=y>>>0|z>>>0>s>>>0){z=0;i=b;return z|0}}d:do{if((c[45972>>2]&4|0)==0){t=c[45552>>2]|0;e:do{if((t|0)==0){m=182}else{u=45976|0;while(1){v=c[u>>2]|0;if(!(v>>>0>t>>>0)){s=u+4|0;if((v+(c[s>>2]|0)|0)>>>0>t>>>0){break}}u=c[u+8>>2]|0;if((u|0)==0){m=182;break e}}if((u|0)==0){m=182}else{o=n-(c[45540>>2]|0)&o;if(o>>>0<2147483647){n=Oa(o|0)|0;m=(n|0)==((c[u>>2]|0)+(c[s>>2]|0)|0);s=n;t=o;n=m?n:-1;o=m?o:0;m=191}else{o=0}}}}while(0);do{if((m|0)==182){n=Oa(0)|0;if((n|0)==(-1|0)){o=0}else{s=n;t=c[46004>>2]|0;o=t+ -1|0;if((o&s|0)==0){o=p}else{o=p-s+(o+s&0-t)|0}t=c[45960>>2]|0;u=t+o|0;if(o>>>0>a>>>0&o>>>0<2147483647){s=c[45968>>2]|0;if((s|0)!=0){if(u>>>0<=t>>>0|u>>>0>s>>>0){o=0;break}}s=Oa(o|0)|0;m=(s|0)==(n|0);t=o;n=m?n:-1;o=m?o:0;m=191}else{o=0}}}}while(0);f:do{if((m|0)==191){m=0-t|0;if((n|0)!=(-1|0)){m=202;break d}do{if((s|0)!=(-1|0)&t>>>0<2147483647&t>>>0>>0){n=c[46008>>2]|0;n=r-t+n&0-n;if(n>>>0<2147483647){if((Oa(n|0)|0)==(-1|0)){Oa(m|0)|0;break f}else{t=n+t|0;break}}}}while(0);if((s|0)!=(-1|0)){n=s;o=t;m=202;break d}}}while(0);c[45972>>2]=c[45972>>2]|4;m=199}else{o=0;m=199}}while(0);if((m|0)==199){if(p>>>0<2147483647){n=Oa(p|0)|0;p=Oa(0)|0;if((p|0)!=(-1|0)&(n|0)!=(-1|0)&n>>>0

>>0){p=p-n|0;q=p>>>0>(a+40|0)>>>0;if(q){o=q?p:o;m=202}}}}if((m|0)==202){p=(c[45960>>2]|0)+o|0;c[45960>>2]=p;if(p>>>0>(c[45964>>2]|0)>>>0){c[45964>>2]=p}p=c[45552>>2]|0;g:do{if((p|0)==0){z=c[45544>>2]|0;if((z|0)==0|n>>>0>>0){c[45544>>2]=n}c[45976>>2]=n;c[45980>>2]=o;c[45988>>2]=0;c[45564>>2]=c[11500];c[45560>>2]=-1;d=0;do{z=d<<1;y=45568+(z<<2)|0;c[45568+(z+3<<2)>>2]=y;c[45568+(z+2<<2)>>2]=y;d=d+1|0}while((d|0)!=32);d=n+8|0;if((d&7|0)==0){d=0}else{d=0-d&7}z=o+ -40-d|0;c[45552>>2]=n+d;c[45540>>2]=z;c[n+(d+4)>>2]=z|1;c[n+(o+ -36)>>2]=40;c[45556>>2]=c[46016>>2]}else{t=45976|0;do{q=c[t>>2]|0;r=t+4|0;s=c[r>>2]|0;if((n|0)==(q+s|0)){m=214;break}t=c[t+8>>2]|0}while((t|0)!=0);if((m|0)==214){if((c[t+12>>2]&8|0)==0){if(p>>>0>=q>>>0&p>>>0>>0){c[r>>2]=s+o;d=(c[45540>>2]|0)+o|0;e=p+8|0;if((e&7|0)==0){e=0}else{e=0-e&7}z=d-e|0;c[45552>>2]=p+e;c[45540>>2]=z;c[p+(e+4)>>2]=z|1;c[p+(d+4)>>2]=40;c[45556>>2]=c[46016>>2];break}}}if(n>>>0<(c[45544>>2]|0)>>>0){c[45544>>2]=n}q=n+o|0;r=45976|0;do{if((c[r>>2]|0)==(q|0)){m=224;break}r=c[r+8>>2]|0}while((r|0)!=0);if((m|0)==224){if((c[r+12>>2]&8|0)==0){c[r>>2]=n;h=r+4|0;c[h>>2]=(c[h>>2]|0)+o;h=n+8|0;if((h&7|0)==0){h=0}else{h=0-h&7}j=n+(o+8)|0;if((j&7|0)==0){p=0}else{p=0-j&7}q=n+(p+o)|0;j=h+a|0;k=n+j|0;m=q-(n+h)-a|0;c[n+(h+4)>>2]=a|3;h:do{if((q|0)==(c[45552>>2]|0)){z=(c[45540>>2]|0)+m|0;c[45540>>2]=z;c[45552>>2]=k;c[n+(j+4)>>2]=z|1}else{if((q|0)==(c[45548>>2]|0)){z=(c[45536>>2]|0)+m|0;c[45536>>2]=z;c[45548>>2]=k;c[n+(j+4)>>2]=z|1;c[n+(z+j)>>2]=z;break}r=o+4|0;t=c[n+(r+p)>>2]|0;if((t&3|0)==1){a=t&-8;s=t>>>3;i:do{if(t>>>0<256){g=c[n+((p|8)+o)>>2]|0;r=c[n+(o+12+p)>>2]|0;t=45568+(s<<1<<2)|0;do{if((g|0)!=(t|0)){if(g>>>0<(c[45544>>2]|0)>>>0){gb()}if((c[g+12>>2]|0)==(q|0)){break}gb()}}while(0);if((r|0)==(g|0)){c[11382]=c[11382]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}s=r+8|0;if((c[s>>2]|0)==(q|0)){l=s;break}gb()}}while(0);c[g+12>>2]=r;c[l>>2]=g}else{l=c[n+((p|24)+o)>>2]|0;u=c[n+(o+12+p)>>2]|0;do{if((u|0)==(q|0)){u=p|16;t=n+(r+u)|0;s=c[t>>2]|0;if((s|0)==0){t=n+(u+o)|0;s=c[t>>2]|0;if((s|0)==0){g=0;break}}while(1){v=s+20|0;u=c[v>>2]|0;if((u|0)!=0){s=u;t=v;continue}v=s+16|0;u=c[v>>2]|0;if((u|0)==0){break}else{s=u;t=v}}if(t>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[t>>2]=0;g=s;break}}else{s=c[n+((p|8)+o)>>2]|0;if(s>>>0<(c[45544>>2]|0)>>>0){gb()}t=s+12|0;if((c[t>>2]|0)!=(q|0)){gb()}v=u+8|0;if((c[v>>2]|0)==(q|0)){c[t>>2]=u;c[v>>2]=s;g=u;break}else{gb()}}}while(0);if((l|0)==0){break}s=c[n+(o+28+p)>>2]|0;t=45832+(s<<2)|0;do{if((q|0)==(c[t>>2]|0)){c[t>>2]=g;if((g|0)!=0){break}c[45532>>2]=c[45532>>2]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}s=l+16|0;if((c[s>>2]|0)==(q|0)){c[s>>2]=g}else{c[l+20>>2]=g}if((g|0)==0){break i}}}while(0);if(g>>>0<(c[45544>>2]|0)>>>0){gb()}c[g+24>>2]=l;q=p|16;l=c[n+(q+o)>>2]|0;do{if((l|0)!=0){if(l>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[g+16>>2]=l;c[l+24>>2]=g;break}}}while(0);l=c[n+(r+q)>>2]|0;if((l|0)==0){break}if(l>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[g+20>>2]=l;c[l+24>>2]=g;break}}}while(0);q=n+((a|p)+o)|0;m=a+m|0}g=q+4|0;c[g>>2]=c[g>>2]&-2;c[n+(j+4)>>2]=m|1;c[n+(m+j)>>2]=m;g=m>>>3;if(m>>>0<256){a=g<<1;d=45568+(a<<2)|0;l=c[11382]|0;g=1<>2]|0;if(!(g>>>0<(c[45544>>2]|0)>>>0)){e=l;f=g;break}gb()}}while(0);c[e>>2]=k;c[f+12>>2]=k;c[n+(j+8)>>2]=f;c[n+(j+12)>>2]=d;break}e=m>>>8;do{if((e|0)==0){e=0}else{if(m>>>0>16777215){e=31;break}y=(e+1048320|0)>>>16&8;z=e<>>16&4;z=z<>>16&2;e=14-(x|y|e)+(z<>>15)|0;e=m>>>(e+7|0)&1|e<<1}}while(0);l=45832+(e<<2)|0;c[n+(j+28)>>2]=e;c[n+(j+20)>>2]=0;c[n+(j+16)>>2]=0;f=c[45532>>2]|0;g=1<>2]=f|g;c[l>>2]=k;c[n+(j+24)>>2]=l;c[n+(j+12)>>2]=k;c[n+(j+8)>>2]=k;break}l=c[l>>2]|0;if((e|0)==31){e=0}else{e=25-(e>>>1)|0}j:do{if((c[l+4>>2]&-8|0)==(m|0)){d=l}else{e=m<>>31<<2)+16|0;f=c[g>>2]|0;if((f|0)==0){break}if((c[f+4>>2]&-8|0)==(m|0)){d=f;break j}else{e=e<<1;l=f}}if(g>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[g>>2]=k;c[n+(j+24)>>2]=l;c[n+(j+12)>>2]=k;c[n+(j+8)>>2]=k;break h}}}while(0);f=d+8|0;e=c[f>>2]|0;g=c[45544>>2]|0;if(d>>>0>>0){gb()}if(e>>>0>>0){gb()}else{c[e+12>>2]=k;c[f>>2]=k;c[n+(j+8)>>2]=e;c[n+(j+12)>>2]=d;c[n+(j+24)>>2]=0;break}}}while(0);z=n+(h|8)|0;i=b;return z|0}}g=45976|0;while(1){e=c[g>>2]|0;if(!(e>>>0>p>>>0)){f=c[g+4>>2]|0;d=e+f|0;if(d>>>0>p>>>0){break}}g=c[g+8>>2]|0}g=e+(f+ -39)|0;if((g&7|0)==0){g=0}else{g=0-g&7}e=e+(f+ -47+g)|0;e=e>>>0<(p+16|0)>>>0?p:e;f=e+8|0;g=n+8|0;if((g&7|0)==0){g=0}else{g=0-g&7}z=o+ -40-g|0;c[45552>>2]=n+g;c[45540>>2]=z;c[n+(g+4)>>2]=z|1;c[n+(o+ -36)>>2]=40;c[45556>>2]=c[46016>>2];c[e+4>>2]=27;c[f+0>>2]=c[45976>>2];c[f+4>>2]=c[45980>>2];c[f+8>>2]=c[45984>>2];c[f+12>>2]=c[45988>>2];c[45976>>2]=n;c[45980>>2]=o;c[45988>>2]=0;c[45984>>2]=f;f=e+28|0;c[f>>2]=7;if((e+32|0)>>>0>>0){do{z=f;f=f+4|0;c[f>>2]=7}while((z+8|0)>>>0>>0)}if((e|0)!=(p|0)){d=e-p|0;e=p+(d+4)|0;c[e>>2]=c[e>>2]&-2;c[p+4>>2]=d|1;c[p+d>>2]=d;e=d>>>3;if(d>>>0<256){g=e<<1;d=45568+(g<<2)|0;f=c[11382]|0;e=1<>2]|0;if(!(f>>>0<(c[45544>>2]|0)>>>0)){j=e;k=f;break}gb()}}while(0);c[j>>2]=p;c[k+12>>2]=p;c[p+8>>2]=k;c[p+12>>2]=d;break}e=d>>>8;if((e|0)==0){e=0}else{if(d>>>0>16777215){e=31}else{y=(e+1048320|0)>>>16&8;z=e<>>16&4;z=z<>>16&2;e=14-(x|y|e)+(z<>>15)|0;e=d>>>(e+7|0)&1|e<<1}}f=45832+(e<<2)|0;c[p+28>>2]=e;c[p+20>>2]=0;c[p+16>>2]=0;g=c[45532>>2]|0;j=1<>2]=g|j;c[f>>2]=p;c[p+24>>2]=f;c[p+12>>2]=p;c[p+8>>2]=p;break}f=c[f>>2]|0;if((e|0)==31){e=0}else{e=25-(e>>>1)|0}k:do{if((c[f+4>>2]&-8|0)==(d|0)){h=f}else{e=d<>>31<<2)+16|0;j=c[g>>2]|0;if((j|0)==0){break}if((c[j+4>>2]&-8|0)==(d|0)){h=j;break k}else{e=e<<1;f=j}}if(g>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[g>>2]=p;c[p+24>>2]=f;c[p+12>>2]=p;c[p+8>>2]=p;break g}}}while(0);e=h+8|0;f=c[e>>2]|0;d=c[45544>>2]|0;if(h>>>0>>0){gb()}if(f>>>0>>0){gb()}else{c[f+12>>2]=p;c[e>>2]=p;c[p+8>>2]=f;c[p+12>>2]=h;c[p+24>>2]=0;break}}}}while(0);d=c[45540>>2]|0;if(d>>>0>a>>>0){y=d-a|0;c[45540>>2]=y;z=c[45552>>2]|0;c[45552>>2]=z+a;c[z+(a+4)>>2]=y|1;c[z+4>>2]=a|3;z=z+8|0;i=b;return z|0}}c[(ab()|0)>>2]=12;z=0;i=b;return z|0}function RK(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=i;if((a|0)==0){i=b;return}q=a+ -8|0;r=c[45544>>2]|0;if(q>>>0>>0){gb()}o=c[a+ -4>>2]|0;n=o&3;if((n|0)==1){gb()}j=o&-8;h=a+(j+ -8)|0;do{if((o&1|0)==0){u=c[q>>2]|0;if((n|0)==0){i=b;return}q=-8-u|0;o=a+q|0;n=u+j|0;if(o>>>0>>0){gb()}if((o|0)==(c[45548>>2]|0)){d=a+(j+ -4)|0;if((c[d>>2]&3|0)!=3){d=o;m=n;break}c[45536>>2]=n;c[d>>2]=c[d>>2]&-2;c[a+(q+4)>>2]=n|1;c[h>>2]=n;i=b;return}t=u>>>3;if(u>>>0<256){d=c[a+(q+8)>>2]|0;m=c[a+(q+12)>>2]|0;p=45568+(t<<1<<2)|0;if((d|0)!=(p|0)){if(d>>>0>>0){gb()}if((c[d+12>>2]|0)!=(o|0)){gb()}}if((m|0)==(d|0)){c[11382]=c[11382]&~(1<>>0>>0){gb()}p=m+8|0;if((c[p>>2]|0)==(o|0)){s=p}else{gb()}}c[d+12>>2]=m;c[s>>2]=d;d=o;m=n;break}s=c[a+(q+24)>>2]|0;t=c[a+(q+12)>>2]|0;do{if((t|0)==(o|0)){u=a+(q+20)|0;t=c[u>>2]|0;if((t|0)==0){u=a+(q+16)|0;t=c[u>>2]|0;if((t|0)==0){p=0;break}}while(1){w=t+20|0;v=c[w>>2]|0;if((v|0)!=0){t=v;u=w;continue}v=t+16|0;w=c[v>>2]|0;if((w|0)==0){break}else{t=w;u=v}}if(u>>>0>>0){gb()}else{c[u>>2]=0;p=t;break}}else{u=c[a+(q+8)>>2]|0;if(u>>>0>>0){gb()}r=u+12|0;if((c[r>>2]|0)!=(o|0)){gb()}v=t+8|0;if((c[v>>2]|0)==(o|0)){c[r>>2]=t;c[v>>2]=u;p=t;break}else{gb()}}}while(0);if((s|0)==0){d=o;m=n}else{t=c[a+(q+28)>>2]|0;r=45832+(t<<2)|0;if((o|0)==(c[r>>2]|0)){c[r>>2]=p;if((p|0)==0){c[45532>>2]=c[45532>>2]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}r=s+16|0;if((c[r>>2]|0)==(o|0)){c[r>>2]=p}else{c[s+20>>2]=p}if((p|0)==0){d=o;m=n;break}}if(p>>>0<(c[45544>>2]|0)>>>0){gb()}c[p+24>>2]=s;r=c[a+(q+16)>>2]|0;do{if((r|0)!=0){if(r>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[p+16>>2]=r;c[r+24>>2]=p;break}}}while(0);q=c[a+(q+20)>>2]|0;if((q|0)==0){d=o;m=n}else{if(q>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[p+20>>2]=q;c[q+24>>2]=p;d=o;m=n;break}}}}else{d=q;m=j}}while(0);if(!(d>>>0>>0)){gb()}n=a+(j+ -4)|0;o=c[n>>2]|0;if((o&1|0)==0){gb()}if((o&2|0)==0){if((h|0)==(c[45552>>2]|0)){w=(c[45540>>2]|0)+m|0;c[45540>>2]=w;c[45552>>2]=d;c[d+4>>2]=w|1;if((d|0)!=(c[45548>>2]|0)){i=b;return}c[45548>>2]=0;c[45536>>2]=0;i=b;return}if((h|0)==(c[45548>>2]|0)){w=(c[45536>>2]|0)+m|0;c[45536>>2]=w;c[45548>>2]=d;c[d+4>>2]=w|1;c[d+w>>2]=w;i=b;return}m=(o&-8)+m|0;n=o>>>3;do{if(o>>>0<256){k=c[a+j>>2]|0;j=c[a+(j|4)>>2]|0;a=45568+(n<<1<<2)|0;if((k|0)!=(a|0)){if(k>>>0<(c[45544>>2]|0)>>>0){gb()}if((c[k+12>>2]|0)!=(h|0)){gb()}}if((j|0)==(k|0)){c[11382]=c[11382]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}a=j+8|0;if((c[a>>2]|0)==(h|0)){l=a}else{gb()}}c[k+12>>2]=j;c[l>>2]=k}else{l=c[a+(j+16)>>2]|0;o=c[a+(j|4)>>2]|0;do{if((o|0)==(h|0)){o=a+(j+12)|0;n=c[o>>2]|0;if((n|0)==0){o=a+(j+8)|0;n=c[o>>2]|0;if((n|0)==0){k=0;break}}while(1){q=n+20|0;p=c[q>>2]|0;if((p|0)!=0){n=p;o=q;continue}q=n+16|0;p=c[q>>2]|0;if((p|0)==0){break}else{n=p;o=q}}if(o>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[o>>2]=0;k=n;break}}else{q=c[a+j>>2]|0;if(q>>>0<(c[45544>>2]|0)>>>0){gb()}p=q+12|0;if((c[p>>2]|0)!=(h|0)){gb()}n=o+8|0;if((c[n>>2]|0)==(h|0)){c[p>>2]=o;c[n>>2]=q;k=o;break}else{gb()}}}while(0);if((l|0)!=0){o=c[a+(j+20)>>2]|0;n=45832+(o<<2)|0;if((h|0)==(c[n>>2]|0)){c[n>>2]=k;if((k|0)==0){c[45532>>2]=c[45532>>2]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}n=l+16|0;if((c[n>>2]|0)==(h|0)){c[n>>2]=k}else{c[l+20>>2]=k}if((k|0)==0){break}}if(k>>>0<(c[45544>>2]|0)>>>0){gb()}c[k+24>>2]=l;h=c[a+(j+8)>>2]|0;do{if((h|0)!=0){if(h>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[k+16>>2]=h;c[h+24>>2]=k;break}}}while(0);h=c[a+(j+12)>>2]|0;if((h|0)!=0){if(h>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[k+20>>2]=h;c[h+24>>2]=k;break}}}}}while(0);c[d+4>>2]=m|1;c[d+m>>2]=m;if((d|0)==(c[45548>>2]|0)){c[45536>>2]=m;i=b;return}}else{c[n>>2]=o&-2;c[d+4>>2]=m|1;c[d+m>>2]=m}h=m>>>3;if(m>>>0<256){k=h<<1;e=45568+(k<<2)|0;j=c[11382]|0;h=1<>2]|0;if(h>>>0<(c[45544>>2]|0)>>>0){gb()}else{f=j;g=h}}c[f>>2]=d;c[g+12>>2]=d;c[d+8>>2]=g;c[d+12>>2]=e;i=b;return}f=m>>>8;if((f|0)==0){f=0}else{if(m>>>0>16777215){f=31}else{v=(f+1048320|0)>>>16&8;w=f<>>16&4;w=w<>>16&2;f=14-(u|v|f)+(w<>>15)|0;f=m>>>(f+7|0)&1|f<<1}}g=45832+(f<<2)|0;c[d+28>>2]=f;c[d+20>>2]=0;c[d+16>>2]=0;j=c[45532>>2]|0;h=1<>2]=j|h;c[g>>2]=d;c[d+24>>2]=g;c[d+12>>2]=d;c[d+8>>2]=d}else{g=c[g>>2]|0;if((f|0)==31){f=0}else{f=25-(f>>>1)|0}b:do{if((c[g+4>>2]&-8|0)==(m|0)){e=g}else{f=m<>>31<<2)+16|0;h=c[j>>2]|0;if((h|0)==0){break}if((c[h+4>>2]&-8|0)==(m|0)){e=h;break b}else{f=f<<1;g=h}}if(j>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[j>>2]=d;c[d+24>>2]=g;c[d+12>>2]=d;c[d+8>>2]=d;break a}}}while(0);g=e+8|0;f=c[g>>2]|0;h=c[45544>>2]|0;if(e>>>0>>0){gb()}if(f>>>0>>0){gb()}else{c[f+12>>2]=d;c[g>>2]=d;c[d+8>>2]=f;c[d+12>>2]=e;c[d+24>>2]=0;break}}}while(0);w=(c[45560>>2]|0)+ -1|0;c[45560>>2]=w;if((w|0)==0){d=45984|0}else{i=b;return}while(1){d=c[d>>2]|0;if((d|0)==0){break}else{d=d+8|0}}c[45560>>2]=-1;i=b;return}function SK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;do{if((a|0)==0){e=QK(b)|0}else{if(b>>>0>4294967231){c[(ab()|0)>>2]=12;e=0;break}if(b>>>0<11){e=16}else{e=b+11&-8}e=TK(a+ -8|0,e)|0;if((e|0)!=0){e=e+8|0;break}e=QK(b)|0;if((e|0)==0){e=0}else{f=c[a+ -4>>2]|0;f=(f&-8)-((f&3|0)==0?8:4)|0;fL(e|0,a|0,(f>>>0>>0?f:b)|0)|0;RK(a)}}}while(0);i=d;return e|0}function TK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;e=a+4|0;g=c[e>>2]|0;j=g&-8;f=a+j|0;l=c[45544>>2]|0;if(a>>>0>>0){gb()}n=g&3;if(!((n|0)!=1&a>>>0>>0)){gb()}h=a+(j|4)|0;o=c[h>>2]|0;if((o&1|0)==0){gb()}if((n|0)==0){if(b>>>0<256){q=0;i=d;return q|0}if(!(j>>>0<(b+4|0)>>>0)){if(!((j-b|0)>>>0>c[46008>>2]<<1>>>0)){q=a;i=d;return q|0}}q=0;i=d;return q|0}if(!(j>>>0>>0)){f=j-b|0;if(!(f>>>0>15)){q=a;i=d;return q|0}c[e>>2]=g&1|b|2;c[a+(b+4)>>2]=f|3;c[h>>2]=c[h>>2]|1;UK(a+b|0,f);q=a;i=d;return q|0}if((f|0)==(c[45552>>2]|0)){f=(c[45540>>2]|0)+j|0;if(!(f>>>0>b>>>0)){q=0;i=d;return q|0}q=f-b|0;c[e>>2]=g&1|b|2;c[a+(b+4)>>2]=q|1;c[45552>>2]=a+b;c[45540>>2]=q;q=a;i=d;return q|0}if((f|0)==(c[45548>>2]|0)){h=(c[45536>>2]|0)+j|0;if(h>>>0>>0){q=0;i=d;return q|0}f=h-b|0;if(f>>>0>15){c[e>>2]=g&1|b|2;c[a+(b+4)>>2]=f|1;c[a+h>>2]=f;q=a+(h+4)|0;c[q>>2]=c[q>>2]&-2;b=a+b|0}else{c[e>>2]=g&1|h|2;b=a+(h+4)|0;c[b>>2]=c[b>>2]|1;b=0;f=0}c[45536>>2]=f;c[45548>>2]=b;q=a;i=d;return q|0}if((o&2|0)!=0){q=0;i=d;return q|0}h=(o&-8)+j|0;if(h>>>0>>0){q=0;i=d;return q|0}g=h-b|0;n=o>>>3;do{if(o>>>0<256){k=c[a+(j+8)>>2]|0;j=c[a+(j+12)>>2]|0;o=45568+(n<<1<<2)|0;if((k|0)!=(o|0)){if(k>>>0>>0){gb()}if((c[k+12>>2]|0)!=(f|0)){gb()}}if((j|0)==(k|0)){c[11382]=c[11382]&~(1<>>0>>0){gb()}l=j+8|0;if((c[l>>2]|0)==(f|0)){m=l}else{gb()}}c[k+12>>2]=j;c[m>>2]=k}else{m=c[a+(j+24)>>2]|0;o=c[a+(j+12)>>2]|0;do{if((o|0)==(f|0)){o=a+(j+20)|0;n=c[o>>2]|0;if((n|0)==0){o=a+(j+16)|0;n=c[o>>2]|0;if((n|0)==0){k=0;break}}while(1){q=n+20|0;p=c[q>>2]|0;if((p|0)!=0){n=p;o=q;continue}q=n+16|0;p=c[q>>2]|0;if((p|0)==0){break}else{n=p;o=q}}if(o>>>0>>0){gb()}else{c[o>>2]=0;k=n;break}}else{n=c[a+(j+8)>>2]|0;if(n>>>0>>0){gb()}p=n+12|0;if((c[p>>2]|0)!=(f|0)){gb()}l=o+8|0;if((c[l>>2]|0)==(f|0)){c[p>>2]=o;c[l>>2]=n;k=o;break}else{gb()}}}while(0);if((m|0)!=0){n=c[a+(j+28)>>2]|0;l=45832+(n<<2)|0;if((f|0)==(c[l>>2]|0)){c[l>>2]=k;if((k|0)==0){c[45532>>2]=c[45532>>2]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}l=m+16|0;if((c[l>>2]|0)==(f|0)){c[l>>2]=k}else{c[m+20>>2]=k}if((k|0)==0){break}}if(k>>>0<(c[45544>>2]|0)>>>0){gb()}c[k+24>>2]=m;f=c[a+(j+16)>>2]|0;do{if((f|0)!=0){if(f>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[k+16>>2]=f;c[f+24>>2]=k;break}}}while(0);f=c[a+(j+20)>>2]|0;if((f|0)!=0){if(f>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[k+20>>2]=f;c[f+24>>2]=k;break}}}}}while(0);if(g>>>0<16){c[e>>2]=h|c[e>>2]&1|2;q=a+(h|4)|0;c[q>>2]=c[q>>2]|1;q=a;i=d;return q|0}else{c[e>>2]=c[e>>2]&1|b|2;c[a+(b+4)>>2]=g|3;q=a+(h|4)|0;c[q>>2]=c[q>>2]|1;UK(a+b|0,g);q=a;i=d;return q|0}return 0}function UK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=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;d=i;h=a+b|0;l=c[a+4>>2]|0;do{if((l&1|0)==0){p=c[a>>2]|0;if((l&3|0)==0){i=d;return}l=a+(0-p)|0;m=p+b|0;q=c[45544>>2]|0;if(l>>>0>>0){gb()}if((l|0)==(c[45548>>2]|0)){e=a+(b+4)|0;if((c[e>>2]&3|0)!=3){e=l;n=m;break}c[45536>>2]=m;c[e>>2]=c[e>>2]&-2;c[a+(4-p)>>2]=m|1;c[h>>2]=m;i=d;return}s=p>>>3;if(p>>>0<256){e=c[a+(8-p)>>2]|0;n=c[a+(12-p)>>2]|0;o=45568+(s<<1<<2)|0;if((e|0)!=(o|0)){if(e>>>0>>0){gb()}if((c[e+12>>2]|0)!=(l|0)){gb()}}if((n|0)==(e|0)){c[11382]=c[11382]&~(1<>>0>>0){gb()}o=n+8|0;if((c[o>>2]|0)==(l|0)){r=o}else{gb()}}c[e+12>>2]=n;c[r>>2]=e;e=l;n=m;break}r=c[a+(24-p)>>2]|0;t=c[a+(12-p)>>2]|0;do{if((t|0)==(l|0)){u=16-p|0;t=a+(u+4)|0;s=c[t>>2]|0;if((s|0)==0){t=a+u|0;s=c[t>>2]|0;if((s|0)==0){o=0;break}}while(1){u=s+20|0;v=c[u>>2]|0;if((v|0)!=0){s=v;t=u;continue}v=s+16|0;u=c[v>>2]|0;if((u|0)==0){break}else{s=u;t=v}}if(t>>>0>>0){gb()}else{c[t>>2]=0;o=s;break}}else{s=c[a+(8-p)>>2]|0;if(s>>>0>>0){gb()}u=s+12|0;if((c[u>>2]|0)!=(l|0)){gb()}q=t+8|0;if((c[q>>2]|0)==(l|0)){c[u>>2]=t;c[q>>2]=s;o=t;break}else{gb()}}}while(0);if((r|0)==0){e=l;n=m}else{q=c[a+(28-p)>>2]|0;s=45832+(q<<2)|0;if((l|0)==(c[s>>2]|0)){c[s>>2]=o;if((o|0)==0){c[45532>>2]=c[45532>>2]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}q=r+16|0;if((c[q>>2]|0)==(l|0)){c[q>>2]=o}else{c[r+20>>2]=o}if((o|0)==0){e=l;n=m;break}}if(o>>>0<(c[45544>>2]|0)>>>0){gb()}c[o+24>>2]=r;q=16-p|0;p=c[a+q>>2]|0;do{if((p|0)!=0){if(p>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[o+16>>2]=p;c[p+24>>2]=o;break}}}while(0);p=c[a+(q+4)>>2]|0;if((p|0)==0){e=l;n=m}else{if(p>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[o+20>>2]=p;c[p+24>>2]=o;e=l;n=m;break}}}}else{e=a;n=b}}while(0);l=c[45544>>2]|0;if(h>>>0>>0){gb()}m=a+(b+4)|0;o=c[m>>2]|0;if((o&2|0)==0){if((h|0)==(c[45552>>2]|0)){v=(c[45540>>2]|0)+n|0;c[45540>>2]=v;c[45552>>2]=e;c[e+4>>2]=v|1;if((e|0)!=(c[45548>>2]|0)){i=d;return}c[45548>>2]=0;c[45536>>2]=0;i=d;return}if((h|0)==(c[45548>>2]|0)){v=(c[45536>>2]|0)+n|0;c[45536>>2]=v;c[45548>>2]=e;c[e+4>>2]=v|1;c[e+v>>2]=v;i=d;return}n=(o&-8)+n|0;m=o>>>3;do{if(o>>>0<256){j=c[a+(b+8)>>2]|0;a=c[a+(b+12)>>2]|0;b=45568+(m<<1<<2)|0;if((j|0)!=(b|0)){if(j>>>0>>0){gb()}if((c[j+12>>2]|0)!=(h|0)){gb()}}if((a|0)==(j|0)){c[11382]=c[11382]&~(1<>>0>>0){gb()}b=a+8|0;if((c[b>>2]|0)==(h|0)){k=b}else{gb()}}c[j+12>>2]=a;c[k>>2]=j}else{k=c[a+(b+24)>>2]|0;m=c[a+(b+12)>>2]|0;do{if((m|0)==(h|0)){o=a+(b+20)|0;m=c[o>>2]|0;if((m|0)==0){o=a+(b+16)|0;m=c[o>>2]|0;if((m|0)==0){j=0;break}}while(1){q=m+20|0;p=c[q>>2]|0;if((p|0)!=0){m=p;o=q;continue}q=m+16|0;p=c[q>>2]|0;if((p|0)==0){break}else{m=p;o=q}}if(o>>>0>>0){gb()}else{c[o>>2]=0;j=m;break}}else{o=c[a+(b+8)>>2]|0;if(o>>>0>>0){gb()}p=o+12|0;if((c[p>>2]|0)!=(h|0)){gb()}l=m+8|0;if((c[l>>2]|0)==(h|0)){c[p>>2]=m;c[l>>2]=o;j=m;break}else{gb()}}}while(0);if((k|0)!=0){l=c[a+(b+28)>>2]|0;m=45832+(l<<2)|0;if((h|0)==(c[m>>2]|0)){c[m>>2]=j;if((j|0)==0){c[45532>>2]=c[45532>>2]&~(1<>>0<(c[45544>>2]|0)>>>0){gb()}l=k+16|0;if((c[l>>2]|0)==(h|0)){c[l>>2]=j}else{c[k+20>>2]=j}if((j|0)==0){break}}if(j>>>0<(c[45544>>2]|0)>>>0){gb()}c[j+24>>2]=k;h=c[a+(b+16)>>2]|0;do{if((h|0)!=0){if(h>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[j+16>>2]=h;c[h+24>>2]=j;break}}}while(0);h=c[a+(b+20)>>2]|0;if((h|0)!=0){if(h>>>0<(c[45544>>2]|0)>>>0){gb()}else{c[j+20>>2]=h;c[h+24>>2]=j;break}}}}}while(0);c[e+4>>2]=n|1;c[e+n>>2]=n;if((e|0)==(c[45548>>2]|0)){c[45536>>2]=n;i=d;return}}else{c[m>>2]=o&-2;c[e+4>>2]=n|1;c[e+n>>2]=n}a=n>>>3;if(n>>>0<256){b=a<<1;h=45568+(b<<2)|0;j=c[11382]|0;a=1<>2]|0;if(a>>>0<(c[45544>>2]|0)>>>0){gb()}else{g=b;f=a}}c[g>>2]=e;c[f+12>>2]=e;c[e+8>>2]=f;c[e+12>>2]=h;i=d;return}f=n>>>8;if((f|0)==0){f=0}else{if(n>>>0>16777215){f=31}else{u=(f+1048320|0)>>>16&8;v=f<>>16&4;v=v<>>16&2;f=14-(t|u|f)+(v<>>15)|0;f=n>>>(f+7|0)&1|f<<1}}g=45832+(f<<2)|0;c[e+28>>2]=f;c[e+20>>2]=0;c[e+16>>2]=0;a=c[45532>>2]|0;h=1<>2]=a|h;c[g>>2]=e;c[e+24>>2]=g;c[e+12>>2]=e;c[e+8>>2]=e;i=d;return}g=c[g>>2]|0;if((f|0)==31){f=0}else{f=25-(f>>>1)|0}a:do{if((c[g+4>>2]&-8|0)!=(n|0)){f=n<>>31<<2)+16|0;g=c[h>>2]|0;if((g|0)==0){break}if((c[g+4>>2]&-8|0)==(n|0)){break a}else{f=f<<1;a=g}}if(h>>>0<(c[45544>>2]|0)>>>0){gb()}c[h>>2]=e;c[e+24>>2]=a;c[e+12>>2]=e;c[e+8>>2]=e;i=d;return}}while(0);h=g+8|0;a=c[h>>2]|0;f=c[45544>>2]|0;if(g>>>0>>0){gb()}if(a>>>0>>0){gb()}c[a+12>>2]=e;c[h>>2]=e;c[e+8>>2]=a;c[e+12>>2]=g;c[e+24>>2]=0;i=d;return}function VK(a){a=a|0;return(a+ -65|0)>>>0<26|0}function WK(a){a=a|0;var b=0,c=0;c=i;b=(VK(a)|0)==0;i=c;return(b?a:a|32)|0}function XK(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=i;a:do{if((d|0)==0){d=0}else{while(1){f=a[b>>0]|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>>24)){break}d=d+ -1|0;if((d|0)==0){d=0;break a}else{b=b+1|0;c=c+1|0}}d=(f&255)-(g&255)|0}}while(0);i=e;return d|0}function YK(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;d=i;f=a[b>>0]|0;e=a[c>>0]|0;if((f<<24>>24==0?1:f<<24>>24!=e<<24>>24)|e<<24>>24==0){c=f;f=e;e=c&255;f=f&255;f=e-f|0;i=d;return f|0}do{b=b+1|0;c=c+1|0;f=a[b>>0]|0;e=a[c>>0]|0}while(!((f<<24>>24==0?1:f<<24>>24!=e<<24>>24)|e<<24>>24==0));c=f&255;f=e&255;f=c-f|0;i=d;return f|0}function ZK(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;f=i;if((e|0)==0){b=0;i=f;return b|0}g=a[b>>0]|0;a:do{if(g<<24>>24==0){g=0}else{while(1){e=e+ -1|0;h=a[c>>0]|0;if(!((e|0)!=0&h<<24>>24!=0&g<<24>>24==h<<24>>24)){break a}b=b+1|0;c=c+1|0;g=a[b>>0]|0;if(g<<24>>24==0){g=0;break}}}}while(0);h=(g&255)-(d[c>>0]|0)|0;i=f;return h|0}function _K(){}function $K(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=b-d-(c>>>0>a>>>0|0)>>>0;return(D=b,a-c>>>0|0)|0}function aL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+e|0;if((e|0)>=20){d=d&255;i=b&3;h=d|d<<8|d<<16|d<<24;g=f&~3;if(i){i=b+4-i|0;while((b|0)<(i|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=h;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return b-e|0}function bL(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b<>>32-c;return a<>0]|0){c=c+1|0}return c-b|0}function dL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return(D=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function eL(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b>>>c;return a>>>c|(b&(1<>>c-32|0}function fL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=4096)return Qa(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if((e|0)==0)return f|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}while((e|0)>=4){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0;e=e-4|0}}while((e|0)>0){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}return f|0}function gL(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else{fL(b,c,d)|0}return b|0}function hL(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b>>c;return a>>>c|(b&(1<>c-32|0}function iL(b){b=b|0;var c=0;c=a[n+(b>>>24)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+16|0;return(a[n+(b&255)>>0]|0)+24|0}function jL(b){b=b|0;var c=0;c=a[m+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[m+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[m+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return(a[m+(b>>>24)>>0]|0)+24|0}function kL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;d=b&65535;c=$(d,f)|0;e=a>>>16;d=(c>>>16)+($(d,e)|0)|0;b=b>>>16;a=$(b,f)|0;return(D=(d>>>16)+($(b,e)|0)+(((d&65535)+a|0)>>>16)|0,d+a<<16|c&65535|0)|0}function lL(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;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=$K(j^a,i^b,j,i)|0;g=D;b=f^j;a=e^i;a=$K((qL(h,g,$K(f^c,e^d,f,e)|0,D,0)|0)^b,D^a,b,a)|0;return a|0}function mL(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+8|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;l=e>>31|((e|0)<0?-1:0)<<1;k=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;b=$K(h^a,g^b,h,g)|0;a=D;qL(b,a,$K(l^d,k^e,l,k)|0,D,j)|0;a=$K(c[j>>2]^h,c[j+4>>2]^g,h,g)|0;b=D;i=f;return(D=b,a)|0}function nL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;a=kL(e,f)|0;c=D;return(D=($(b,f)|0)+($(d,e)|0)+c|c&0,a|0|0)|0}function oL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=qL(a,b,c,d,0)|0;return a|0}function pL(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+8|0;f=g|0;qL(a,b,d,e,f)|0;i=g;return(D=c[f+4>>2]|0,c[f>>2]|0)|0}function qL(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=a;j=b;i=j;l=d;g=e;k=g;if((i|0)==0){g=(f|0)!=0;if((k|0)==0){if(g){c[f>>2]=(h>>>0)%(l>>>0);c[f+4>>2]=0}k=0;m=(h>>>0)/(l>>>0)>>>0;return(D=k,m)|0}else{if(!g){l=0;m=0;return(D=l,m)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;l=0;m=0;return(D=l,m)|0}}m=(k|0)==0;do{if((l|0)==0){if(m){if((f|0)!=0){c[f>>2]=(i>>>0)%(l>>>0);c[f+4>>2]=0}k=0;m=(i>>>0)/(l>>>0)>>>0;return(D=k,m)|0}if((h|0)==0){if((f|0)!=0){c[f>>2]=0;c[f+4>>2]=(i>>>0)%(k>>>0)}l=0;m=(i>>>0)/(k>>>0)>>>0;return(D=l,m)|0}l=k-1|0;if((l&k|0)==0){if((f|0)!=0){c[f>>2]=a|0;c[f+4>>2]=l&i|b&0}l=0;m=i>>>((jL(k|0)|0)>>>0);return(D=l,m)|0}k=(iL(k|0)|0)-(iL(i|0)|0)|0;if(k>>>0<=30){j=k+1|0;l=31-k|0;a=j;b=i<>>(j>>>0);j=i>>>(j>>>0);k=0;l=h<>2]=a|0;c[f+4>>2]=j|b&0;l=0;m=0;return(D=l,m)|0}else{if(!m){k=(iL(k|0)|0)-(iL(i|0)|0)|0;if(k>>>0<=31){m=k+1|0;l=31-k|0;j=k-31>>31;a=m;b=h>>>(m>>>0)&j|i<>>(m>>>0)&j;k=0;l=h<>2]=a|0;c[f+4>>2]=j|b&0;l=0;m=0;return(D=l,m)|0}k=l-1|0;if((k&l|0)!=0){l=(iL(l|0)|0)+33-(iL(i|0)|0)|0;p=64-l|0;m=32-l|0;n=m>>31;o=l-32|0;j=o>>31;a=l;b=m-1>>31&i>>>(o>>>0)|(i<>>(l>>>0))&j;j=j&i>>>(l>>>0);k=h<>>(o>>>0))&n|h<>31;break}if((f|0)!=0){c[f>>2]=k&h;c[f+4>>2]=0}if((l|0)==1){o=j|b&0;p=a|0|0;return(D=o,p)|0}else{p=jL(l|0)|0;o=i>>>(p>>>0)|0;p=i<<32-p|h>>>(p>>>0)|0;return(D=o,p)|0}}}while(0);if((a|0)==0){g=l;e=0;i=0}else{h=d|0|0;g=g|e&0;d=dL(h,g,-1,-1)|0;e=D;i=0;do{m=l;l=k>>>31|l<<1;k=i|k<<1;m=b<<1|m>>>31|0;n=b>>>31|j<<1|0;$K(d,e,m,n)|0;p=D;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;b=$K(m,n,o&h,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&g)|0;j=D;a=a-1|0}while((a|0)!=0);g=l;e=0}h=0;if((f|0)!=0){c[f>>2]=b;c[f+4>>2]=j}o=(k|0)>>>31|(g|h)<<1|(h<<1|k>>>31)&0|e;p=(k<<1|0>>>31)&-2|i;return(D=o,p)|0}function rL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return pb[a&31](b|0,c|0,d|0)|0}function sL(a){a=a|0;return qb[a&1]()|0}function tL(a,b){a=a|0;b=b|0;rb[a&31](b|0)}function uL(a,b,c){a=a|0;b=b|0;c=c|0;sb[a&7](b|0,c|0)}function vL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return tb[a&15](b|0,c|0,d|0,e|0,f|0,g|0)|0}function wL(a,b){a=a|0;b=b|0;return ub[a&63](b|0)|0}function xL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vb[a&63](b|0,c|0,d|0)}function yL(a){a=a|0;wb[a&0]()}function zL(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return xb[a&31](b|0,c|0,d|0,e|0)|0}function AL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;yb[a&0](b|0,c|0,d|0,e|0,f|0,g|0)}function BL(a,b,c){a=a|0;b=b|0;c=c|0;return zb[a&127](b|0,c|0)|0}function CL(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Ab[a&15](b|0,c|0,d|0,e|0,f|0)|0}function DL(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Bb[a&3](b|0,c|0,d|0,e|0)}function EL(a,b,c){a=a|0;b=b|0;c=c|0;aa(0);return 0}function FL(a,b,c){a=a|0;b=b|0;c=c|0;return Pa(a|0,b|0,c|0)|0}function GL(a,b,c){a=a|0;b=b|0;c=c|0;return fb(a|0,b|0,c|0)|0}function HL(a,b,c){a=a|0;b=b|0;c=c|0;return _a(a|0,b|0,c|0)|0}function IL(){aa(1);return 0}function JL(a){a=a|0;aa(2)}function KL(a,b){a=a|0;b=b|0;aa(3)}function LL(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;aa(4);return 0}function ML(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return mb(a|0,b|0,c|0,d|0,e|0,f|0)|0}function NL(a){a=a|0;aa(5);return 0}function OL(a){a=a|0;return Ua(a|0)|0}function PL(a){a=a|0;return Ra(a|0)|0}function QL(a){a=a|0;return Ca(a|0)|0}function RL(a,b,c){a=a|0;b=b|0;c=c|0;aa(6)}function SL(){aa(7)}function TL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;aa(8);return 0}function UL(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;aa(9)}function VL(a,b){a=a|0;b=b|0;aa(10);return 0}function WL(a,b){a=a|0;b=b|0;return za(a|0,b|0)|0}function XL(a,b){a=a|0;b=b|0;return va(a|0,b|0)|0}function YL(a,b){a=a|0;b=b|0;return bb(a|0,b|0)|0}function ZL(a,b){a=a|0;b=b|0;return Aa(a|0,b|0)|0}function _L(a,b){a=a|0;b=b|0;return Va(a|0,b|0)|0}function $L(a,b){a=a|0;b=b|0;return Ta(a|0,b|0)|0}function aM(a,b){a=a|0;b=b|0;return lb(a|0,b|0)|0}function bM(a,b){a=a|0;b=b|0;return Xa(a|0,b|0)|0}function cM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;aa(11);return 0}function dM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;aa(12)} + + + + +// EMSCRIPTEN_END_FUNCS +var pb=[EL,Nb,Gc,Jc,Mc,Oc,Ji,ki,Gn,Wn,ko,gp,Rr,Ur,DJ,JJ,YJ,FL,GL,HL,_J,tl,sk,tk,ql,ol,xl,El,EL,EL,EL,EL];var qb=[IL,$J];var rb=[JL,Qr,Yr,Zr,is,ns,rs,Ts,Us,Vs,Xs,Zs,OJ,oc,to,oo,_h,zy,JL,JL,JL,JL,JL,JL,JL,JL,JL,JL,JL,JL,JL,JL];var sb=[KL,Sr,Xr,Kx,Uw,KL,KL,KL];var tb=[LL,Rb,zi,Ai,ci,Kn,_n,bo,ML,LL,LL,LL,LL,LL,LL,LL];var ub=[NL,Ob,Qb,Ci,Di,Fi,Hi,Ii,Mi,Ni,Oi,Pi,ei,gi,ii,ji,Hn,Jn,Xn,Zn,eo,go,io,jo,dp,Pr,Tr,hs,ks,ls,ms,AJ,KJ,LJ,OL,PL,QL,qK,zK,_b,Jd,nc,xo,On,Pn,Tn,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL,NL];var vb=[RL,bk,ck,dk,ek,Vr,os,ps,qs,ss,ts,us,vs,ws,xs,ys,zs,As,Bs,Cs,Ds,Es,Fs,Gs,Hs,Is,Js,Ks,Ls,Ms,Ns,Os,Ps,Qs,Rs,Ss,Ws,Ys,_s,bt,ct,dt,ht,it,jt,kt,lt,mt,nt,ot,yy,wy,vy,Xz,_z,sg,Bn,RL,RL,RL,RL,RL,RL,RL];var wb=[SL];var xb=[TL,Pb,Hc,Ic,Li,In,Yn,NJ,RJ,vf,vg,ui,vi,Jy,Py,vD,wD,xD,TL,TL,TL,TL,TL,TL,TL,TL,TL,TL,TL,TL,TL,TL];var yb=[UL];var zb=[VL,Kc,Lc,Nc,Pc,Qc,IK,pK,zJ,Bi,Ei,Ki,Ri,Si,Ti,Ui,di,fi,li,co,fo,lo,hp,ip,js,EJ,FJ,GJ,HJ,IJ,PJ,WL,XL,YL,ZL,_L,$L,ZJ,aM,bM,rK,sK,tK,AK,BK,CK,mg,wi,xi,yj,zj,Dj,ak,Pq,Qp,Vw,Ix,Jx,$w,ax,vx,Cx,Mz,Nz,YC,ZC,qE,rE,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL,VL];var Ab=[cM,Fc,Gi,Qi,hi,ho,ep,fp,BJ,CJ,MJ,QJ,Mh,Nh,cM,cM];var Bb=[dM,Wr,kc,dM];return{_strlen:cL,_sqlite3_column_name:Ie,_sqlite3_reset:Cd,_sqlite3_column_type:He,_sqlite3_exec:Bf,_sqlite3_step:le,_bitshift64Lshr:eL,_sqlite3_prepare_v2:Df,_sqlite3_close_v2:jg,_sqlite3_open:Bg,_bitshift64Shl:bL,_sqlite3_column_bytes:Be,_sqlite3_bind_int:Oe,_sqlite3_bind_blob:Ke,_memset:aL,_memcpy:fL,_sqlite3_column_blob:ye,_sqlite3_bind_parameter_index:Ve,_i64Subtract:$K,_sqlite3_column_text:Fe,_realloc:SK,_i64Add:dL,_sqlite3_data_count:xe,_sqlite3_column_double:Ce,_sqlite3_errmsg:Ff,_sqlite3_finalize:yd,_sqlite3_bind_text:Re,_sqlite3_bind_double:Me,_free:RK,_memmove:gL,_register_character_tokenizer:Lb,_sqlite3_free:oc,_sqlite3_clear_bindings:Fd,_malloc:QK,runPostSets:_K,stackAlloc:Cb,stackSave:Db,stackRestore:Eb,setThrew:Fb,setTempRet0:Ib,getTempRet0:Jb,dynCall_iiii:rL,dynCall_i:sL,dynCall_vi:tL,dynCall_vii:uL,dynCall_iiiiiii:vL,dynCall_ii:wL,dynCall_viii:xL,dynCall_v:yL,dynCall_iiiii:zL,dynCall_viiiiii:AL,dynCall_iii:BL,dynCall_iiiiii:CL,dynCall_viiii:DL} +// EMSCRIPTEN_END_ASM + +})({Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array},{abort:la,assert:v,asmPrintInt:function(a,b){r.print("int "+a+","+b)},asmPrintFloat:function(a,b){r.print("float "+a+","+b)},min:za,invoke_iiii:function(a,b,c,d){try{return r.dynCall_iiii(a,b,c,d)}catch(e){"number"!==typeof e&&"longjmp"!==e&&f(e),U.setThrew(1,0)}},invoke_i:function(a){try{return r.dynCall_i(a)}catch(b){"number"!== +typeof b&&"longjmp"!==b&&f(b),U.setThrew(1,0)}},invoke_vi:function(a,b){try{r.dynCall_vi(a,b)}catch(c){"number"!==typeof c&&"longjmp"!==c&&f(c),U.setThrew(1,0)}},invoke_vii:function(a,b,c){try{r.dynCall_vii(a,b,c)}catch(d){"number"!==typeof d&&"longjmp"!==d&&f(d),U.setThrew(1,0)}},invoke_iiiiiii:function(a,b,c,d,e,g,h){try{return r.dynCall_iiiiiii(a,b,c,d,e,g,h)}catch(m){"number"!==typeof m&&"longjmp"!==m&&f(m),U.setThrew(1,0)}},invoke_ii:function(a,b){try{return r.dynCall_ii(a,b)}catch(c){"number"!== +typeof c&&"longjmp"!==c&&f(c),U.setThrew(1,0)}},invoke_viii:function(a,b,c,d){try{r.dynCall_viii(a,b,c,d)}catch(e){"number"!==typeof e&&"longjmp"!==e&&f(e),U.setThrew(1,0)}},invoke_v:function(a){try{r.dynCall_v(a)}catch(b){"number"!==typeof b&&"longjmp"!==b&&f(b),U.setThrew(1,0)}},invoke_iiiii:function(a,b,c,d,e){try{return r.dynCall_iiiii(a,b,c,d,e)}catch(g){"number"!==typeof g&&"longjmp"!==g&&f(g),U.setThrew(1,0)}},invoke_viiiiii:function(a,b,c,d,e,g,h){try{r.dynCall_viiiiii(a,b,c,d,e,g,h)}catch(m){"number"!== +typeof m&&"longjmp"!==m&&f(m),U.setThrew(1,0)}},invoke_iii:function(a,b,c){try{return r.dynCall_iii(a,b,c)}catch(d){"number"!==typeof d&&"longjmp"!==d&&f(d),U.setThrew(1,0)}},invoke_iiiiii:function(a,b,c,d,e,g){try{return r.dynCall_iiiiii(a,b,c,d,e,g)}catch(h){"number"!==typeof h&&"longjmp"!==h&&f(h),U.setThrew(1,0)}},invoke_viiii:function(a,b,c,d,e){try{r.dynCall_viiii(a,b,c,d,e)}catch(g){"number"!==typeof g&&"longjmp"!==g&&f(g),U.setThrew(1,0)}},_getgid:qc,_sleep:function(a){return nc(1E6*a)},_send:function(a, +b,c){return!T.qc(a)?(L(J.H),-1):tc(a,b,c)},_getcwd:function(a,b){if(0==b)return L(J.A),0;if(2>b)return L(J.Ub),0;ab("/",a);return a},_chown:function(a){"string"!==typeof a&&(a=w(a));try{return Wb(a),0}catch(b){return R(b),-1}},_lseek:function(a,b,c){a=P[a];if(!a)return L(J.H),-1;try{return ac(a,b,c)}catch(d){return R(d),-1}},___setErrNo:L,_access:function(a,b){a=w(a);if(b&-8)return L(J.A),-1;var c;try{c=S(a,{sa:j}).k}catch(d){return R(d),-1}var e="";b&4&&(e+="r");b&2&&(e+="w");b&1&&(e+="x");return e&& +Fb(c,e)?(L(J.jb),-1):0},_fstat:function(a,b){var c=P[a];return!c?(L(J.H),-1):lc(c.path,b)},_chmod:function(a,b){a="string"!==typeof a?w(a):a;try{return Vb(a,b),0}catch(c){return R(c),-1}},_rmdir:function(a){a=w(a);try{var b=S(a,{parent:j}).k,c=lb(a),d=ub(b,c),e=Kb(b,c,j);e&&f(new M(e));b.n.fb||f(new M(J.S));d.va&&f(new M(J.Ea));try{Q.willDeletePath&&Q.willDeletePath(a)}catch(g){console.log("FS.trackingDelegate['willDeletePath']('"+a+"') threw an exception: "+g.message)}b.n.fb(b,c);Eb(d);try{if(Q.onDeletePath)Q.onDeletePath(a)}catch(h){console.log("FS.trackingDelegate['onDeletePath']('"+ +a+"') threw an exception: "+h.message)}return 0}catch(m){return R(m),-1}},_truncate:function(a,b){"string"!==typeof a&&(a=w(a));try{return Xb(a,b),0}catch(c){return R(c),-1}},_usleep:nc,_utimes:function(){f("utimes not implemented")},___buildEnvironment:Uc,_fflush:n(),_pwrite:function(a,b,c,d){a=P[a];if(!a)return L(J.H),-1;try{return cc(a,z,b,c,d)}catch(e){return R(e),-1}},_strerror_r:ad,_localtime_r:Qc,_tzset:Pc,_open:function(a,b,c){c=C[c>>2];a=w(a);try{return Yb(a,b,c).O}catch(d){return R(d),-1}}, +_getpid:function(){return qc.apply(k,arguments)},_sbrk:Zc,_fcntl:function(a,b,c){a=P[a];if(!a)return L(J.H),-1;switch(b){case 0:b=C[c>>2];if(0>b)return L(J.A),-1;var d;try{d=Yb(a.path,a.J,0,b)}catch(e){return R(e),-1}return d.O;case 1:case 2:return 0;case 3:return a.J;case 4:return b=C[c>>2],a.J|=b,0;case 12:case 12:return b=C[c>>2],xa[b+0>>1]=2,0;case 13:case 14:case 13:case 14:return 0;case 8:case 9:return L(J.A),-1;default:return L(J.A),-1}},_emscripten_memcpy_big:function(a,b,c){G.set(G.subarray(b, +b+c),a);return a},_unlink:function(a){a=w(a);try{return Tb(a),0}catch(b){return R(b),-1}},_sysconf:function(a){switch(a){case 30:return 4096;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 79:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1; +case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1E3;case 89:return 700;case 71:return 256; +case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"===typeof navigator?navigator.hardwareConcurrency||1:1}L(J.A);return-1},_fchmod:function(a,b){try{var c=P[a];c||f(new M(J.H));Vb(c.k,b);return 0}catch(d){return R(d),-1}},_close:function(a){a=P[a];if(!a)return L(J.H),-1;try{return $b(a),0}catch(b){return R(b),-1}},_ftruncate:function(a,b){try{var c=P[a];c||f(new M(J.H));0===(c.J&2097155)&&f(new M(J.A)); +Xb(c.k,b);return 0}catch(d){return R(d),-1}},_gettimeofday:function(a){var b=Date.now();C[a>>2]=Math.floor(b/1E3);C[a+4>>2]=Math.floor(1E3*(b-1E3*Math.floor(b/1E3)));return 0},_munmap:function(a,b){cd.ua||(cd.ua={});var c=cd.ua[a];if(!c)return 0;b==c.Ud&&(cd.ua[a]=k,c.qb&&Xc(c.Nd));return 0},_pread:function(a,b,c,d){a=P[a];if(!a)return L(J.H),-1;try{return bc(a,b,c,d)}catch(e){return R(e),-1}},_getenv:Wc,_write:tc,_fsync:function(a){if(P[a])return 0;L(J.H);return-1},___errno_location:function(){return ib}, +_stat:lc,_recv:function(a,b,c){return!T.qc(a)?(L(J.H),-1):Sc(a,b,c)},_geteuid:function(){return qc.apply(k,arguments)},_fchown:function(a){try{var b=P[a];b||f(new M(J.H));Wb(b.k);return 0}catch(c){return R(c),-1}},_read:Sc,_abort:function(){r.abort()},_time:function(a){var b=Math.floor(Date.now()/1E3);a&&(C[a>>2]=b);return b},_mkport:sc,_strerror:bd,_mknod:function(a,b,c){a=w(a);switch(b&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return L(J.A),-1}try{return Ob(a,b,c), +0}catch(d){return R(d),-1}},_mkdir:function(a,b){a=w(a);"/"===a[a.length-1]&&(a=a.substr(0,a.length-1));try{return Qb(a,b),0}catch(c){return R(c),-1}},_mmap:cd,_localtime:function(a){return Qc(a,Kc)},STACKTOP:s,STACK_MAX:Oa,tempDoublePtr:gb,ABORT:oa,cttz_i8:hd,ctlz_i8:gd,NaN:NaN,Infinity:Infinity},H),oc=r._strlen=U._strlen;r._sqlite3_column_name=U._sqlite3_column_name;r._sqlite3_reset=U._sqlite3_reset;r._sqlite3_column_type=U._sqlite3_column_type;r._sqlite3_exec=U._sqlite3_exec;r._sqlite3_step=U._sqlite3_step; +var Rc=r._bitshift64Lshr=U._bitshift64Lshr;r._sqlite3_prepare_v2=U._sqlite3_prepare_v2;r._sqlite3_close_v2=U._sqlite3_close_v2;r._sqlite3_open=U._sqlite3_open;var mc=r._bitshift64Shl=U._bitshift64Shl;r._sqlite3_column_bytes=U._sqlite3_column_bytes;r._sqlite3_bind_int=U._sqlite3_bind_int;r._sqlite3_bind_blob=U._sqlite3_bind_blob;var kc=r._memset=U._memset,Yc=r._memcpy=U._memcpy;r._sqlite3_column_blob=U._sqlite3_column_blob;r._sqlite3_bind_parameter_index=U._sqlite3_bind_parameter_index; +var jc=r._i64Subtract=U._i64Subtract;r._sqlite3_column_text=U._sqlite3_column_text;r._realloc=U._realloc;var pc=r._i64Add=U._i64Add;r._sqlite3_data_count=U._sqlite3_data_count;r._sqlite3_column_double=U._sqlite3_column_double;r._sqlite3_errmsg=U._sqlite3_errmsg;r._sqlite3_finalize=U._sqlite3_finalize;r._sqlite3_bind_text=U._sqlite3_bind_text;r._sqlite3_bind_double=U._sqlite3_bind_double;var Xc=r._free=U._free,$c=r._memmove=U._memmove;r._register_character_tokenizer=U._register_character_tokenizer; +r._sqlite3_free=U._sqlite3_free;r._sqlite3_clear_bindings=U._sqlite3_clear_bindings;Ha=r._malloc=U._malloc;r.runPostSets=U.runPostSets;r.dynCall_iiii=U.dynCall_iiii;r.dynCall_i=U.dynCall_i;r.dynCall_vi=U.dynCall_vi;r.dynCall_vii=U.dynCall_vii;r.dynCall_iiiiiii=U.dynCall_iiiiiii;r.dynCall_ii=U.dynCall_ii;r.dynCall_viii=U.dynCall_viii;r.dynCall_v=U.dynCall_v;r.dynCall_iiiii=U.dynCall_iiiii;r.dynCall_viiiiii=U.dynCall_viiiiii;r.dynCall_iii=U.dynCall_iii;r.dynCall_iiiiii=U.dynCall_iiiiii; +r.dynCall_viiii=U.dynCall_viiii;u.Ma=U.stackAlloc;u.Nb=U.stackSave;u.Fc=U.stackRestore;u.de=U.setTempRet0;u.Ad=U.getTempRet0;function V(a,b){a!=k&&("number"==typeof a?this.Q(a):b==k&&"string"!=typeof a?this.K(a,256):this.K(a,b))}function id(){return new V(k)}function jd(a,b){var c=kd[a.charCodeAt(b)];return c==k?-1:c}function ld(a){var b=id();b.ga(a);return b}function W(a,b){this.C=a|0;this.G=b|0}W.Xb={}; +W.ga=function(a){if(-128<=a&&128>a){var b=W.Xb[a];if(b)return b}b=new W(a|0,0>a?-1:0);-128<=a&&128>a&&(W.Xb[a]=b);return b};W.Q=function(a){return isNaN(a)||!isFinite(a)?W.ZERO:a<=-W.Zb?W.MIN_VALUE:a+1>=W.Zb?W.MAX_VALUE:0>a?W.Q(-a).D():new W(a%W.ea|0,a/W.ea|0)};W.ca=function(a,b){return new W(a,b)}; +W.K=function(a,b){0==a.length&&f(Error("number format error: empty string"));var c=b||10;(2>c||36h?(h=W.Q(Math.pow(c,h)),e=e.multiply(h).add(W.Q(m))):(e=e.multiply(d),e=e.add(W.Q(m)))}return e};W.nb=65536; +W.Ag=16777216;W.ea=W.nb*W.nb;W.Bg=W.ea/2;W.Cg=W.ea*W.nb;W.Xc=W.ea*W.ea;W.Zb=W.Xc/2;W.ZERO=W.ga(0);W.ONE=W.ga(1);W.Yb=W.ga(-1);W.MAX_VALUE=W.ca(-1,2147483647);W.MIN_VALUE=W.ca(0,-2147483648);W.Wc=W.ga(16777216);q=W.prototype;q.hb=function(){return this.G*W.ea+this.wd()}; +q.toString=function(a){a=a||10;(2>a||36g.length;)g="0"+g;d=""+g+d}};q.wd=function(){return 0<=this.C?this.C:W.ea+this.C}; +q.la=function(){return 0==this.G&&0==this.C};q.N=function(){return 0>this.G};q.wc=function(){return 1==(this.C&1)};q.P=function(a){return this.G==a.G&&this.C==a.C};q.yc=function(){return 0>this.vb(W.Wc)};q.Dd=function(a){return 0>>16,c=this.G&65535,d=this.C>>>16,e=a.G>>>16,g=a.G&65535,h=a.C>>>16,m;m=0+((this.C&65535)+(a.C&65535));a=0+(m>>>16);a+=d+h;d=0+(a>>>16);d+=c+g;c=0+(d>>>16);c=c+(b+e)&65535;return W.ca((a&65535)<<16|m&65535,c<<16|d&65535)};q.Na=function(a){return this.add(a.D())}; +q.multiply=function(a){if(this.la()||a.la())return W.ZERO;if(this.P(W.MIN_VALUE))return a.wc()?W.MIN_VALUE:W.ZERO;if(a.P(W.MIN_VALUE))return this.wc()?W.MIN_VALUE:W.ZERO;if(this.N())return a.N()?this.D().multiply(a.D()):this.D().multiply(a).D();if(a.N())return this.multiply(a.D()).D();if(this.yc()&&a.yc())return W.Q(this.hb()*a.hb());var b=this.G>>>16,c=this.G&65535,d=this.C>>>16,e=this.C&65535,g=a.G>>>16,h=a.G&65535,m=a.C>>>16,a=a.C&65535,t,p,D,B;B=0+e*a;D=0+(B>>>16);D+=d*a;p=0+(D>>>16);D=(D&65535)+ +e*m;p+=D>>>16;D&=65535;p+=c*a;t=0+(p>>>16);p=(p&65535)+d*m;t+=p>>>16;p&=65535;p+=e*h;t+=p>>>16;p&=65535;t=t+(b*a+c*m+d*h+e*g)&65535;return W.ca(D<<16|B&65535,t<<16|p)}; +q.ka=function(a){a.la()&&f(Error("division by zero"));if(this.la())return W.ZERO;if(this.P(W.MIN_VALUE)){if(a.P(W.ONE)||a.P(W.Yb))return W.MIN_VALUE;if(a.P(W.MIN_VALUE))return W.ONE;var b=this.ee().ka(a).shiftLeft(1);if(b.P(W.ZERO))return a.N()?W.ONE:W.Yb;var c=this.Na(a.multiply(b));return b.add(c.ka(a))}if(a.P(W.MIN_VALUE))return W.ZERO;if(this.N())return a.N()?this.D().ka(a.D()):this.D().ka(a).D();if(a.N())return this.ka(a.D()).D();for(var d=W.ZERO,c=this;c.Ed(a);){for(var b=Math.max(1,Math.floor(c.hb()/ +a.hb())),e=Math.ceil(Math.log(b)/Math.LN2),e=48>=e?1:Math.pow(2,e-48),g=W.Q(b),h=g.multiply(a);h.N()||h.Dd(c);)b-=e,g=W.Q(b),h=g.multiply(a);g.la()&&(g=W.ONE);d=d.add(g);c=c.Na(h)}return d};q.Td=function(){return W.ca(~this.C,~this.G)};q.shiftLeft=function(a){a&=63;if(0==a)return this;var b=this.C;return 32>a?W.ca(b<>>32-a):W.ca(0,b<a?W.ca(this.C>>>a|b<<32-a,b>>a):W.ca(b>>a-32,0<=b?0:-1)};q=V.prototype; +q.sb=function(a,b,c,d){for(var e=0,g=0;0<=--d;){var h=a*this[e++]+b[c]+g,g=Math.floor(h/67108864);b[c++]=h&67108863}return g};q.u=26;q.Z=67108863;q.Ca=67108864;q.Rc=Math.pow(2,52);q.Vb=26;q.Wb=0;var kd=[],md,X;md=48;for(X=0;9>=X;++X)kd[md++]=X;md=97;for(X=10;36>X;++X)kd[md++]=X;md=65;for(X=10;36>X;++X)kd[md++]=X;q=V.prototype;q.copyTo=function(a){for(var b=this.e-1;0<=b;--b)a[b]=this[b];a.e=this.e;a.p=this.p};q.ga=function(a){this.e=1;this.p=0>a?-1:0;0a?this[0]=a+DV:this.e=0}; +q.K=function(a,b){var c;if(16==b)c=4;else if(8==b)c=3;else if(256==b)c=8;else if(2==b)c=1;else if(32==b)c=5;else if(4==b)c=2;else{this.td(a,b);return}this.p=this.e=0;for(var d=a.length,e=l,g=0;0<=--d;){var h=8==c?a[d]&255:jd(a,d);0>h?"-"==a.charAt(d)&&(e=j):(e=l,0==g?this[this.e++]=h:g+c>this.u?(this[this.e-1]|=(h&(1<>this.u-g):this[this.e-1]|=h<=this.u&&(g-=this.u))}8==c&&0!=(a[0]&128)&&(this.p=-1,0>d|h,h=(this[m]&e)<=this.e)b.e=0;else{var d=a%this.u,e=this.u-d,g=(1<>d;for(var h=c+1;h>d;0>=this.u;if(a.e>=this.u;d+=this.p}else{for(d+=this.p;c>=this.u;d-=a.p}b.p=0>d?-1:0;-1>d?b[c++]=this.Ca+d:0=d.e)){var e=this.abs();if(e.e>>16))m=p,t+=16;if(0!=(p=m>>8))m=p,t+=8;if(0!=(p=m>>4))m=p,t+=4;if(0!=(p=m>>2))m=p,t+=2;0!=m>>1&&(t+=1);m=this.u-t;0>this.Wb:0);t=this.Rc/p;p=(1<h&&V.ZERO.Y(c,c)}}}}; +q.toString=function(a){if(0>this.p)return"-"+this.D().toString(a);if(16==a)a=4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.fe(a);var b=(1<>h))d=j,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c);for(;0<=g;)h>(h+=this.u-a)):(c=this[g]>>(h-=a)&b,0>=h&&(h+=this.u,--g)),0this.p?this.D():this};q.Va=function(a){var b=this.p-a.p;if(0!=b)return b;var c=this.e,b=c-a.e;if(0!=b)return 0>this.p?-b:b;for(;0<=--c;)if(0!=(b=this[c]-a[c]))return b;return 0};V.ZERO=ld(0);V.ONE=ld(1);q=V.prototype; +q.td=function(a,b){this.ga(0);b==k&&(b=10);for(var c=this.Ta(b),d=Math.pow(b,c),e=l,g=0,h=0,m=0;mt?"-"==a.charAt(m)&&0==this.Mb()&&(e=j):(h=b*h+t,++g>=c&&(this.hc(d),this.gc(h),h=g=0))}0this.p?-1:0>=this.e||1==this.e&&0>=this[0]?0:1};q.hc=function(a){this[this.e]=this.sb(a-1,this,0,this.e);++this.e;this.fa()}; +q.gc=function(a){var b=0;if(0!=a){for(;this.e<=b;)this[this.e++]=0;for(this[b]+=a;this[b]>=this.Ca;)this[b]-=this.Ca,++b>=this.e&&(this[this.e++]=0),++this[b]}};q.fe=function(a){a==k&&(a=10);if(0==this.Mb()||2>a||36this.p){if(1==this.e)return this[0]-this.Ca;if(0==this.e)return-1}else{if(1==this.e)return this[0];if(0==this.e)return 0}return(this[1]&(1<<32-this.u)-1)<>=this.u;if(a.e>=this.u;d+=this.p}else{for(d+=this.p;c>=this.u;d+=a.p}b.p=0>d?-1:0;0d&&(b[c++]=this.Ca+d);b.e=c;b.fa()}; +var Y={abs:function(a,b){var c=new W(a,b),c=c.N()?c.D():c;C[gb>>2]=c.C;C[gb+4>>2]=c.G},jc:function(){Y.rd||(Y.rd=j,Y.Hc=new V,Y.Hc.K("4294967296",10),Y.Pb=new V,Y.Pb.K("18446744073709551616",10),Y.ih=new V,Y.jh=new V)},$g:function(a,b){var c=new V;c.K(b.toString(),10);var d=new V;c.Rd(d);c=new V;c.K(a.toString(),10);var e=new V;c.pb(d,e);return e},stringify:function(a,b,c){a=(new W(a,b)).toString();c&&"-"==a[0]&&(Y.jc(),c=new V,c.K(a,10),a=new V,Y.Pb.pb(c,a),a=a.toString(10));return a},K:function(a, +b,c,d,e){Y.jc();var g=new V;g.K(a,b);a=new V;a.K(c,10);c=new V;c.K(d,10);e&&0>g.Va(V.ZERO)&&(d=new V,g.pb(Y.Pb,d),g=d);d=l;0>g.Va(a)?(g=a,d=j):0>2]=g.C;C[gb+4>>2]=g.G;d&&f("range error")}};function nd(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}nd.prototype=Error();var od,pd=k,db=function qd(){!r.calledRun&&rd&&sd();r.calledRun||(db=qd)}; +r.callMain=r.Mg=function(a){function b(){for(var a=0;3>a;a++)d.push(0)}v(0==bb,"cannot call main when async dependencies remain! (listen on __ATMAIN__)");v(0==Ta.length,"cannot call main when preRun functions remain to be called");a=a||[];Ya||(Ya=j,Sa(Ua));var c=a.length+1,d=[F(I(r.thisProgram||"/bin/this.program"),"i8",Fa)];b();for(var e=0;ed;a=0<=d?++e:--e)c[a]=z[b+a];return c}; +$.prototype.get=function(a){var b,c,d;a!=k&&this.bind(a)&&this.step();d=[];a=b=0;for(c=Ld(this.F);0<=c?bc;a=0<=c?++b:--b)switch(Kd(this.F,a)){case Z.Sc:case Z.FLOAT:d.push(this.yd(a));break;case Z.Vc:d.push(this.zd(a));break;case Z.Ic:d.push(this.getBlob(a));break;default:d.push(k)}return d};$.prototype.getColumnNames=function(){var a,b,c,d;d=[];a=b=0;for(c=Ld(this.F);0<=c?bc;a=0<=c?++b:--b)d.push(Id(this.F,a));return d}; +$.prototype.getAsObject=function(a){var b,c,d,e,g,h;e=this.get(a);c=this.getColumnNames();d={};a=g=0;for(h=c.length;g>>0);a!=k&&gc("/",this.filename,a,j,j);this.handleError(Pd(this.filename,vd));this.db=Ea(vd,"i32");this.Ob={}}Td.prototype.run=function(a,b){var c;this.db||f("Database closed");b?(c=this.prepare(a,b),c.step(),c.free()):this.handleError(Nd(this.db,a,0,0,vd));return this};Td.prototype.register_character_tokenizer=function(){this.db||f("Database closed");return xd(this.db)}; +Td.prototype.exec=function(a){var b,c,d,e,g;this.db||f("Database closed");c=[];g=a.split(";");a=0;for(e=g.length;a